ZGlmZiAtLWdpdCBhL01ha2VmaWxlIGIvTWFrZWZpbGUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTNiOWZlYQotLS0gL2Rldi9udWxsCisrKyBiL01ha2VmaWxlCkBAIC0wLDAgKzEsMTA4IEBACisjCisjICAgIENvcHlyaWdodCAoYykgMjAxMSBOZXN0IExhYnMsIEluYy4KKyMgICAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyMKKyMgICAgVGhpcyBkb2N1bWVudCBpcyB0aGUgcHJvcGVydHkgb2YgTmVzdC4gSXQgaXMgY29uc2lkZXJlZAorIyAgICBjb25maWRlbnRpYWwgYW5kIHByb3ByaWV0YXJ5IGluZm9ybWF0aW9uLgorIworIyAgICBUaGlzIGRvY3VtZW50IG1heSBub3QgYmUgcmVwcm9kdWNlZCBvciB0cmFuc21pdHRlZCBpbiBhbnkgZm9ybSwKKyMgICAgaW4gd2hvbGUgb3IgaW4gcGFydCwgd2l0aG91dCB0aGUgZXhwcmVzcyB3cml0dGVuIHBlcm1pc3Npb24gb2YKKyMgICAgTmVzdC4KKyMKKyMgICAgRGVzY3JpcHRpb246CisjICAgICAgVGhpcyBmaWxlIGlzIHRoZSBtYWtlZmlsZSBmb3IgZHBrZywgdGhlIERlYmlhbiBwYWNrYWdlIG1hbmFnZW1lbnQsCisjICAgICAgc3lzdGVtIHdoaWNoIGluY2x1ZGVzIHJhbmRvbSBidXQgaW1wb3J0YW50IHV0aWxpdGllcyBzdWNoIGFzCisjICAgICAgc3RhcnQtc3RvcC1kYWVtb24uCisjCisKK0J1aWxkQ29uZmlnU3BlY2lhbGl6ZWQJOj0gTm8KK0J1aWxkUHJvZHVjdFNwZWNpYWxpemVkCTo9IE5vCisKK2luY2x1ZGUgcHJlLm1haworCitQYWNrYWdlTmFtZQkJOj0gZHBrZworCitQYWNrYWdlRXh0ZW5zaW9uCTo9IHRhci5iejIKK1BhY2thZ2VTZXBhcmF0b3IJOj0gLQorCitQYWNrYWdlUGF0Y2hBcmdzCTo9IC1wMQorCitQYWNrYWdlQXJjaGl2ZQkJOj0gJChQYWNrYWdlTmFtZSkuJChQYWNrYWdlRXh0ZW5zaW9uKQorUGFja2FnZVNvdXJjZURpcgk6PSAkKFBhY2thZ2VOYW1lKSQoUGFja2FnZVNlcGFyYXRvcikkKFBhY2thZ2VWZXJzaW9uKQorCitQYWNrYWdlQnVpbGRNYWtlZmlsZQk9ICQoY2FsbCBHZW5lcmF0ZUJ1aWxkUGF0aHMsTWFrZWZpbGUpCisKK0xpY2Vuc2VTb3VyY2VGaWxlCTo9ICQoUGFja2FnZVNvdXJjZURpcikvQ09QWUlORworCitDbGVhblBhdGhzCQkrPSAkKFBhY2thZ2VMaWNlbnNlRmlsZSkKKworYWxsOiAkKFBhY2thZ2VEZWZhdWx0R29hbCkKKworIyBHZW5lcmF0ZSB0aGUgcGFja2FnZSBsaWNlbnNlIGNvbnRlbnRzLgorCiskKExpY2Vuc2VTb3VyY2VGaWxlKTogc291cmNlCisKKyQoUGFja2FnZUxpY2Vuc2VGaWxlKTogJChMaWNlbnNlU291cmNlRmlsZSkKKwkkKGNvcHktcmVzdWx0KQorCisjIEV4dHJhY3QgdGhlIHNvdXJjZSBmcm9tIHRoZSBhcmNoaXZlIGFuZCBhcHBseSBwYXRjaGVzLCBpZiBhbnkuCisKKyQoUGFja2FnZVNvdXJjZURpcik6ICQoUGFja2FnZUFyY2hpdmUpICQoUGFja2FnZVBhdGNoUGF0aHMpCisJJChleHBhbmQtYW5kLXBhdGNoLXBhY2thZ2UpCisKKyMgUHJlcGFyZSB0aGUgc291cmNlcy4KKworLlBIT05ZOiBzb3VyY2UKK3NvdXJjZTogfCAkKFBhY2thZ2VTb3VyY2VEaXIpCisKKyMgUGF0Y2ggdGhlIHNvdXJjZXMsIGlmIG5lY2Vzc2FyeS4KKworLlBIT05ZOiBwYXRjaAorcGF0Y2g6IHNvdXJjZQorCisjIEdlbmVyYXRlIHRoZSBwYWNrYWdlIGJ1aWxkIG1ha2VmaWxlLgorCiskKFBhY2thZ2VCdWlsZE1ha2VmaWxlKTogfCAkKFBhY2thZ2VTb3VyY2VEaXIpICQoQnVpbGREaXJlY3RvcnkpICQoUmVzdWx0RGlyZWN0b3J5KQorCSQoVmVyYm9zZSljZCAkKEJ1aWxkRGlyZWN0b3J5KSAmJiBcCisJJChDVVJESVIpLyQoUGFja2FnZVNvdXJjZURpcikvY29uZmlndXJlIFwKKwlDQz0iJChDQykiIENYWD0iJChDWFgpIiBBUj0kKEFSKSBOTT0kKE5NKSBSQU5MSUI9JChSQU5MSUIpIFNUUklQPSQoU1RSSVApIFwKKwlJTlNUQUxMPSIkKElOU1RBTEwpICQoSU5TVEFMTEZMQUdTKSIgXAorCS0tYnVpbGQ9JChIb3N0VHVwbGUpIFwKKwktLWhvc3Q9JChUYXJnZXRUdXBsZSkgXAorCS0tcHJlZml4PS91c3IgXAorCS0tc3lzY29uZmRpcj0vZXRjIFwKKwktLWxvY2Fsc3RhdGVkaXI9L3ZhciBcCisJLS13aXRob3V0LWRzZWxlY3QKKworIyBDb25maWd1cmUgdGhlIHNvdXJjZSBmb3IgYnVpbGRpbmcuCisKKy5QSE9OWTogY29uZmlndXJlCitjb25maWd1cmU6IHNvdXJjZSAkKFBhY2thZ2VCdWlsZE1ha2VmaWxlKQorCisjIEJ1aWxkIHRoZSBzb3VyY2UuCisjCisjIFdlIGhhdmUgdG8gdW5zZXQgTUFLRUZMQUdTIHNpbmNlIHRoZXkgY29uZnVzZSB0aGUgcGFja2FnZSBidWlsZCBvdGhlcndpc2UuCisKKy5QSE9OWTogYnVpbGQKK2J1aWxkOiBjb25maWd1cmUKKwkkKFZlcmJvc2UpdW5zZXQgTUFLRUZMQUdTICYmIFwKKwkkKE1BS0UpICQoSk9CU0ZMQUcpIC1DICQoQnVpbGREaXJlY3RvcnkpIFwKKwlhbGwKKworIyBTdGFnZSB0aGUgYnVpbGQgdG8gYSB0ZW1wb3JhcnkgaW5zdGFsbGF0aW9uIGFyZWEuCisjCisjIFdlIGhhdmUgdG8gdW5zZXQgTUFLRUZMQUdTIHNpbmNlIHRoZXkgY29uZnVzZSB0aGUgcGFja2FnZSBidWlsZCBvdGhlcndpc2UuCisKKy5QSE9OWTogc3RhZ2UKK3N0YWdlOiBidWlsZCB8ICQoUmVzdWx0RGlyZWN0b3J5KQorCSQoVmVyYm9zZSl1bnNldCBNQUtFRkxBR1MgJiYgXAorCSQoTUFLRSkgJChKT0JTRkxBRykgLUMgJChCdWlsZERpcmVjdG9yeSkgXAorCURFU1RESVI9JChSZXN1bHREaXJlY3RvcnkpIFwKKwlpbnN0YWxsCisKK2NsZWFuOgorCSQoVmVyYm9zZSkkKFJNKSAkKFJNRkxBR1MpIC1yICQoUGFja2FnZVNvdXJjZURpcikKKwkkKFZlcmJvc2UpJChSTSkgJChSTUZMQUdTKSAtciAkKEJ1aWxkRGlyZWN0b3J5KQorCSQoVmVyYm9zZSkkKFJNKSAkKFJNRkxBR1MpIC1yICQoUmVzdWx0RGlyZWN0b3J5KQorCitpbmNsdWRlIHBvc3QubWFrCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xLy5kaXN0LXZlcnNpb24gYi9kcGtnLTEuMTYuMS4xLy5kaXN0LXZlcnNpb24KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzQwNzkwNgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvLmRpc3QtdmVyc2lvbgpAQCAtMCwwICsxIEBACisxLjE2LjEuMQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS8ubWFpbG1hcCBiL2Rwa2ctMS4xNi4xLjEvLm1haWxtYXAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzIwY2ExNAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvLm1haWxtYXAKQEAgLTAsMCArMSwyMCBAQAorIyBTcGVsbCBuYW1lcyBwcm9wZXJseQorUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorTmljb2xhcyBGcmFuw6dvaXMgPG5la3JhbC1ndWVzdEB1c2Vycy5hbGlvdGguZGViaWFuLm9yZz4KK0phdmllciBGZXJuw6FuZGV6LVNhbmd1aW5vIFBlw7FhIDxqZnNAZGViaWFuLm9yZz4gPGpmc0BqYXZpZnNwLm5vLWlwLm9yZz4KK0phdmllciBGZXJuw6FuZGV6LVNhbmd1aW5vIFBlw7FhIDxqZnNAZGViaWFuLm9yZz4KK0VkZHkgUGV0cmnImW9yIDxlZGR5cC1ndWVzdEB1c2Vycy5hbGlvdGguZGViaWFuLm9yZz4KK0ppxZnDrSBQYWxlxI1layA8anBhbGVjZWtAd2ViLmRlPgorIyBVc2UgZnVsbCBuYW1lcworTWFyY29zIEFsdmFyZXogQ29zdGFsZXMgPG1hcmNvcy5hbHZhcmV6LmNvc3RhbGVzQGdtYWlsLmNvbT4KK0tlbnNoaSBNdXRvIDxrbXV0b0BkZWJpYW4ub3JnPgorIyBIYW5kbGUgYWxpYXMgZGlzcGFyaXR5CitGZWxpcGUgQXVndXN0byB2YW4gZGUgV2llbCA8ZmF3QGRlYmlhbi5vcmc+CitCYXJ0IENvcm5lbGlzIDxjb2JhY29Ac2tvbGVsaW51eC5ubz4gPGNvYmFjby1ndWVzdEB1c2Vycy5hbGlvdGguZGViaWFuLm9yZz4KKyMgTmFtZSBjaGFuZ2VzCitQZXRlciBLcmVmdGluZyA8cGV0ZXJAc29mdHdvbHZlcy5wcC5zZT4gPHBldGVyQHN2YXJ0ZW4uaW50ZXJuLnNvZnR3b2x2ZXMucHAuc2U+CitQZXRlciBLcmVmdGluZyA8cGV0ZXJAc29mdHdvbHZlcy5wcC5zZT4KK1BldGVyIEtyZWZ0aW5nIDxwZXRlcmtAZGViaWFuLm9yZz4KKyMgVXNlIHJlYWwgbWFpbCBhZGRyZXNzZXMKKzxlbG1pZ0BkZWJpYW5wdC5vcmc+IDxlbG1pZ0BkdjI1ODVlcC4obm9uZSk+Cis8cm9iZXJ0QGRlYmlhbi5vcmc+IDxyb2JlcnRAdm94LnJvYmJvLmhvbWU+CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL0FCT1VULU5MUyBiL2Rwa2ctMS4xNi4xLjEvQUJPVVQtTkxTCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjRmNTBmYjUKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL0FCT1VULU5MUwpAQCAtMCwwICsxLDEzMjcgQEAKKzEgTm90ZXMgb24gdGhlIEZyZWUgVHJhbnNsYXRpb24gUHJvamVjdAorKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisKK0ZyZWUgc29mdHdhcmUgaXMgZ29pbmcgaW50ZXJuYXRpb25hbCEgIFRoZSBGcmVlIFRyYW5zbGF0aW9uIFByb2plY3QgaXMKK2Egd2F5IHRvIGdldCBtYWludGFpbmVycyBvZiBmcmVlIHNvZnR3YXJlLCB0cmFuc2xhdG9ycywgYW5kIHVzZXJzIGFsbAordG9nZXRoZXIsIHNvIHRoYXQgZnJlZSBzb2Z0d2FyZSB3aWxsIGdyYWR1YWxseSBiZWNvbWUgYWJsZSB0byBzcGVhayBtYW55CitsYW5ndWFnZXMuICBBIGZldyBwYWNrYWdlcyBhbHJlYWR5IHByb3ZpZGUgdHJhbnNsYXRpb25zIGZvciB0aGVpcgorbWVzc2FnZXMuCisKKyAgIElmIHlvdSBmb3VuZCB0aGlzIGBBQk9VVC1OTFMnIGZpbGUgaW5zaWRlIGEgZGlzdHJpYnV0aW9uLCB5b3UgbWF5Cithc3N1bWUgdGhhdCB0aGUgZGlzdHJpYnV0ZWQgcGFja2FnZSBkb2VzIHVzZSBHTlUgYGdldHRleHQnIGludGVybmFsbHksCitpdHNlbGYgYXZhaWxhYmxlIGF0IHlvdXIgbmVhcmVzdCBHTlUgYXJjaGl2ZSBzaXRlLiAgQnV0IHlvdSBkbyBfbm90XworbmVlZCB0byBpbnN0YWxsIEdOVSBgZ2V0dGV4dCcgcHJpb3IgdG8gY29uZmlndXJpbmcsIGluc3RhbGxpbmcgb3IgdXNpbmcKK3RoaXMgcGFja2FnZSB3aXRoIG1lc3NhZ2VzIHRyYW5zbGF0ZWQuCisKKyAgIEluc3RhbGxlcnMgd2lsbCBmaW5kIGhlcmUgc29tZSB1c2VmdWwgaGludHMuICBUaGVzZSBub3RlcyBhbHNvCitleHBsYWluIGhvdyB1c2VycyBzaG91bGQgcHJvY2VlZCBmb3IgZ2V0dGluZyB0aGUgcHJvZ3JhbXMgdG8gdXNlIHRoZQorYXZhaWxhYmxlIHRyYW5zbGF0aW9ucy4gIFRoZXkgdGVsbCBob3cgcGVvcGxlIHdhbnRpbmcgdG8gY29udHJpYnV0ZSBhbmQKK3dvcmsgb24gdHJhbnNsYXRpb25zIGNhbiBjb250YWN0IHRoZSBhcHByb3ByaWF0ZSB0ZWFtLgorCisgICBXaGVuIHJlcG9ydGluZyBidWdzIGluIHRoZSBgaW50bC8nIGRpcmVjdG9yeSBvciBidWdzIHdoaWNoIG1heSBiZQorcmVsYXRlZCB0byBpbnRlcm5hdGlvbmFsaXphdGlvbiwgeW91IHNob3VsZCB0ZWxsIGFib3V0IHRoZSB2ZXJzaW9uIG9mCitgZ2V0dGV4dCcgd2hpY2ggaXMgdXNlZC4gIFRoZSBpbmZvcm1hdGlvbiBjYW4gYmUgZm91bmQgaW4gdGhlCitgaW50bC9WRVJTSU9OJyBmaWxlLCBpbiBpbnRlcm5hdGlvbmFsaXplZCBwYWNrYWdlcy4KKworMS4xIFF1aWNrIGNvbmZpZ3VyYXRpb24gYWR2aWNlCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworSWYgeW91IHdhbnQgdG8gZXhwbG9pdCB0aGUgZnVsbCBwb3dlciBvZiBpbnRlcm5hdGlvbmFsaXphdGlvbiwgeW91CitzaG91bGQgY29uZmlndXJlIGl0IHVzaW5nCisKKyAgICAgLi9jb25maWd1cmUgLS13aXRoLWluY2x1ZGVkLWdldHRleHQKKwordG8gZm9yY2UgdXNhZ2Ugb2YgaW50ZXJuYXRpb25hbGl6aW5nIHJvdXRpbmVzIHByb3ZpZGVkIHdpdGhpbiB0aGlzCitwYWNrYWdlLCBkZXNwaXRlIHRoZSBleGlzdGVuY2Ugb2YgaW50ZXJuYXRpb25hbGl6aW5nIGNhcGFiaWxpdGllcyBpbiB0aGUKK29wZXJhdGluZyBzeXN0ZW0gd2hlcmUgdGhpcyBwYWNrYWdlIGlzIGJlaW5nIGluc3RhbGxlZC4gIFNvIGZhciwgb25seQordGhlIGBnZXR0ZXh0JyBpbXBsZW1lbnRhdGlvbiBpbiB0aGUgR05VIEMgbGlicmFyeSB2ZXJzaW9uIDIgcHJvdmlkZXMgYXMKK21hbnkgZmVhdHVyZXMgKHN1Y2ggYXMgbG9jYWxlIGFsaWFzLCBtZXNzYWdlIGluaGVyaXRhbmNlLCBhdXRvbWF0aWMKK2NoYXJzZXQgY29udmVyc2lvbiBvciBwbHVyYWwgZm9ybSBoYW5kbGluZykgYXMgdGhlIGltcGxlbWVudGF0aW9uIGhlcmUuCitJdCBpcyBhbHNvIG5vdCBwb3NzaWJsZSB0byBvZmZlciB0aGlzIGFkZGl0aW9uYWwgZnVuY3Rpb25hbGl0eSBvbiB0b3AKK29mIGEgYGNhdGdldHMnIGltcGxlbWVudGF0aW9uLiAgRnV0dXJlIHZlcnNpb25zIG9mIEdOVSBgZ2V0dGV4dCcgd2lsbAordmVyeSBsaWtlbHkgY29udmV5IGV2ZW4gbW9yZSBmdW5jdGlvbmFsaXR5LiAgU28gaXQgbWlnaHQgYmUgYSBnb29kIGlkZWEKK3RvIGNoYW5nZSB0byBHTlUgYGdldHRleHQnIGFzIHNvb24gYXMgcG9zc2libGUuCisKKyAgIFNvIHlvdSBuZWVkIF9ub3RfIHByb3ZpZGUgdGhpcyBvcHRpb24gaWYgeW91IGFyZSB1c2luZyBHTlUgbGliYyAyIG9yCit5b3UgaGF2ZSBpbnN0YWxsZWQgYSByZWNlbnQgY29weSBvZiB0aGUgR05VIGdldHRleHQgcGFja2FnZSB3aXRoIHRoZQoraW5jbHVkZWQgYGxpYmludGwnLgorCisxLjIgSU5TVEFMTCBNYXR0ZXJzCis9PT09PT09PT09PT09PT09PT09CisKK1NvbWUgcGFja2FnZXMgYXJlICJsb2NhbGl6YWJsZSIgd2hlbiBwcm9wZXJseSBpbnN0YWxsZWQ7IHRoZSBwcm9ncmFtcwordGhleSBjb250YWluIGNhbiBiZSBtYWRlIHRvIHNwZWFrIHlvdXIgb3duIG5hdGl2ZSBsYW5ndWFnZS4gIE1vc3Qgc3VjaAorcGFja2FnZXMgdXNlIEdOVSBgZ2V0dGV4dCcuICBPdGhlciBwYWNrYWdlcyBoYXZlIHRoZWlyIG93biB3YXlzIHRvCitpbnRlcm5hdGlvbmFsaXphdGlvbiwgcHJlZGF0aW5nIEdOVSBgZ2V0dGV4dCcuCisKKyAgIEJ5IGRlZmF1bHQsIHRoaXMgcGFja2FnZSB3aWxsIGJlIGluc3RhbGxlZCB0byBhbGxvdyB0cmFuc2xhdGlvbiBvZgorbWVzc2FnZXMuICBJdCB3aWxsIGF1dG9tYXRpY2FsbHkgZGV0ZWN0IHdoZXRoZXIgdGhlIHN5c3RlbSBhbHJlYWR5Citwcm92aWRlcyB0aGUgR05VIGBnZXR0ZXh0JyBmdW5jdGlvbnMuICBJZiBub3QsIHRoZSBpbmNsdWRlZCBHTlUKK2BnZXR0ZXh0JyBsaWJyYXJ5IHdpbGwgYmUgdXNlZC4gIFRoaXMgbGlicmFyeSBpcyB3aG9sbHkgY29udGFpbmVkCit3aXRoaW4gdGhpcyBwYWNrYWdlLCB1c3VhbGx5IGluIHRoZSBgaW50bC8nIHN1YmRpcmVjdG9yeSwgc28gcHJpb3IKK2luc3RhbGxhdGlvbiBvZiB0aGUgR05VIGBnZXR0ZXh0JyBwYWNrYWdlIGlzIF9ub3RfIHJlcXVpcmVkLgorSW5zdGFsbGVycyBtYXkgdXNlIHNwZWNpYWwgb3B0aW9ucyBhdCBjb25maWd1cmF0aW9uIHRpbWUgZm9yIGNoYW5naW5nCit0aGUgZGVmYXVsdCBiZWhhdmlvdXIuICBUaGUgY29tbWFuZHM6CisKKyAgICAgLi9jb25maWd1cmUgLS13aXRoLWluY2x1ZGVkLWdldHRleHQKKyAgICAgLi9jb25maWd1cmUgLS1kaXNhYmxlLW5scworCit3aWxsLCByZXNwZWN0aXZlbHksIGJ5cGFzcyBhbnkgcHJlLWV4aXN0aW5nIGBnZXR0ZXh0JyB0byB1c2UgdGhlCitpbnRlcm5hdGlvbmFsaXppbmcgcm91dGluZXMgcHJvdmlkZWQgd2l0aGluIHRoaXMgcGFja2FnZSwgb3IgZWxzZSwKK190b3RhbGx5XyBkaXNhYmxlIHRyYW5zbGF0aW9uIG9mIG1lc3NhZ2VzLgorCisgICBXaGVuIHlvdSBhbHJlYWR5IGhhdmUgR05VIGBnZXR0ZXh0JyBpbnN0YWxsZWQgb24geW91ciBzeXN0ZW0gYW5kIHJ1bgorY29uZmlndXJlIHdpdGhvdXQgYW4gb3B0aW9uIGZvciB5b3VyIG5ldyBwYWNrYWdlLCBgY29uZmlndXJlJyB3aWxsCitwcm9iYWJseSBkZXRlY3QgdGhlIHByZXZpb3VzbHkgYnVpbHQgYW5kIGluc3RhbGxlZCBgbGliaW50bC5hJyBmaWxlIGFuZAord2lsbCBkZWNpZGUgdG8gdXNlIHRoaXMuICBUaGlzIG1pZ2h0IG5vdCBiZSBkZXNpcmFibGUuICBZb3Ugc2hvdWxkIHVzZQordGhlIG1vcmUgcmVjZW50IHZlcnNpb24gb2YgdGhlIEdOVSBgZ2V0dGV4dCcgbGlicmFyeS4gIEkuZS4gaWYgdGhlIGZpbGUKK2BpbnRsL1ZFUlNJT04nIHNob3dzIHRoYXQgdGhlIGxpYnJhcnkgd2hpY2ggY29tZXMgd2l0aCB0aGlzIHBhY2thZ2UgaXMKK21vcmUgcmVjZW50LCB5b3Ugc2hvdWxkIHVzZQorCisgICAgIC4vY29uZmlndXJlIC0td2l0aC1pbmNsdWRlZC1nZXR0ZXh0CisKK3RvIHByZXZlbnQgYXV0by1kZXRlY3Rpb24uCisKKyAgIFRoZSBjb25maWd1cmF0aW9uIHByb2Nlc3Mgd2lsbCBub3QgdGVzdCBmb3IgdGhlIGBjYXRnZXRzJyBmdW5jdGlvbgorYW5kIHRoZXJlZm9yZSBpdCB3aWxsIG5vdCBiZSB1c2VkLiAgVGhlIHJlYXNvbiBpcyB0aGF0IGV2ZW4gYW4KK2VtdWxhdGlvbiBvZiBgZ2V0dGV4dCcgb24gdG9wIG9mIGBjYXRnZXRzJyBjb3VsZCBub3QgcHJvdmlkZSBhbGwgdGhlCitleHRlbnNpb25zIG9mIHRoZSBHTlUgYGdldHRleHQnIGxpYnJhcnkuCisKKyAgIEludGVybmF0aW9uYWxpemVkIHBhY2thZ2VzIHVzdWFsbHkgaGF2ZSBtYW55IGBwby9MTC5wbycgZmlsZXMsIHdoZXJlCitMTCBnaXZlcyBhbiBJU08gNjM5IHR3by1sZXR0ZXIgY29kZSBpZGVudGlmeWluZyB0aGUgbGFuZ3VhZ2UuICBVbmxlc3MKK3RyYW5zbGF0aW9ucyBoYXZlIGJlZW4gZm9yYmlkZGVuIGF0IGBjb25maWd1cmUnIHRpbWUgYnkgdXNpbmcgdGhlCitgLS1kaXNhYmxlLW5scycgc3dpdGNoLCBhbGwgYXZhaWxhYmxlIHRyYW5zbGF0aW9ucyBhcmUgaW5zdGFsbGVkCit0b2dldGhlciB3aXRoIHRoZSBwYWNrYWdlLiAgSG93ZXZlciwgdGhlIGVudmlyb25tZW50IHZhcmlhYmxlIGBMSU5HVUFTJworbWF5IGJlIHNldCwgcHJpb3IgdG8gY29uZmlndXJhdGlvbiwgdG8gbGltaXQgdGhlIGluc3RhbGxlZCBzZXQuCitgTElOR1VBUycgc2hvdWxkIHRoZW4gY29udGFpbiBhIHNwYWNlIHNlcGFyYXRlZCBsaXN0IG9mIHR3by1sZXR0ZXIKK2NvZGVzLCBzdGF0aW5nIHdoaWNoIGxhbmd1YWdlcyBhcmUgYWxsb3dlZC4KKworMS4zIFVzaW5nIFRoaXMgUGFja2FnZQorPT09PT09PT09PT09PT09PT09PT09PQorCitBcyBhIHVzZXIsIGlmIHlvdXIgbGFuZ3VhZ2UgaGFzIGJlZW4gaW5zdGFsbGVkIGZvciB0aGlzIHBhY2thZ2UsIHlvdQorb25seSBoYXZlIHRvIHNldCB0aGUgYExBTkcnIGVudmlyb25tZW50IHZhcmlhYmxlIHRvIHRoZSBhcHByb3ByaWF0ZQorYExMX0NDJyBjb21iaW5hdGlvbi4gIElmIHlvdSBoYXBwZW4gdG8gaGF2ZSB0aGUgYExDX0FMTCcgb3Igc29tZSBvdGhlcgorYExDX3h4eCcgZW52aXJvbm1lbnQgdmFyaWFibGVzIHNldCwgeW91IHNob3VsZCB1bnNldCB0aGVtIGJlZm9yZQorc2V0dGluZyBgTEFORycsIG90aGVyd2lzZSB0aGUgc2V0dGluZyBvZiBgTEFORycgd2lsbCBub3QgaGF2ZSB0aGUKK2Rlc2lyZWQgZWZmZWN0LiAgSGVyZSBgTEwnIGlzIGFuIElTTyA2MzkgdHdvLWxldHRlciBsYW5ndWFnZSBjb2RlLCBhbmQKK2BDQycgaXMgYW4gSVNPIDMxNjYgdHdvLWxldHRlciBjb3VudHJ5IGNvZGUuICBGb3IgZXhhbXBsZSwgbGV0J3MKK3N1cHBvc2UgdGhhdCB5b3Ugc3BlYWsgR2VybWFuIGFuZCBsaXZlIGluIEdlcm1hbnkuICBBdCB0aGUgc2hlbGwKK3Byb21wdCwgbWVyZWx5IGV4ZWN1dGUgYHNldGVudiBMQU5HIGRlX0RFJyAoaW4gYGNzaCcpLAorYGV4cG9ydCBMQU5HOyBMQU5HPWRlX0RFJyAoaW4gYHNoJykgb3IgYGV4cG9ydCBMQU5HPWRlX0RFJyAoaW4gYGJhc2gnKS4KK1RoaXMgY2FuIGJlIGRvbmUgZnJvbSB5b3VyIGAubG9naW4nIG9yIGAucHJvZmlsZScgZmlsZSwgb25jZSBhbmQgZm9yCithbGwuCisKKyAgIFlvdSBtaWdodCB0aGluayB0aGF0IHRoZSBjb3VudHJ5IGNvZGUgc3BlY2lmaWNhdGlvbiBpcyByZWR1bmRhbnQuCitCdXQgaW4gZmFjdCwgc29tZSBsYW5ndWFnZXMgaGF2ZSBkaWFsZWN0cyBpbiBkaWZmZXJlbnQgY291bnRyaWVzLiAgRm9yCitleGFtcGxlLCBgZGVfQVQnIGlzIHVzZWQgZm9yIEF1c3RyaWEsIGFuZCBgcHRfQlInIGZvciBCcmF6aWwuICBUaGUKK2NvdW50cnkgY29kZSBzZXJ2ZXMgdG8gZGlzdGluZ3Vpc2ggdGhlIGRpYWxlY3RzLgorCisgICBUaGUgbG9jYWxlIG5hbWluZyBjb252ZW50aW9uIG9mIGBMTF9DQycsIHdpdGggYExMJyBkZW5vdGluZyB0aGUKK2xhbmd1YWdlIGFuZCBgQ0MnIGRlbm90aW5nIHRoZSBjb3VudHJ5LCBpcyB0aGUgb25lIHVzZSBvbiBzeXN0ZW1zIGJhc2VkCitvbiBHTlUgbGliYy4gIE9uIG90aGVyIHN5c3RlbXMsIHNvbWUgdmFyaWF0aW9ucyBvZiB0aGlzIHNjaGVtZSBhcmUKK3VzZWQsIHN1Y2ggYXMgYExMJyBvciBgTExfQ0MuRU5DT0RJTkcnLiAgWW91IGNhbiBnZXQgdGhlIGxpc3Qgb2YKK2xvY2FsZXMgc3VwcG9ydGVkIGJ5IHlvdXIgc3lzdGVtIGZvciB5b3VyIGxhbmd1YWdlIGJ5IHJ1bm5pbmcgdGhlCitjb21tYW5kIGBsb2NhbGUgLWEgfCBncmVwICdeTEwnJy4KKworICAgTm90IGFsbCBwcm9ncmFtcyBoYXZlIHRyYW5zbGF0aW9ucyBmb3IgYWxsIGxhbmd1YWdlcy4gIEJ5IGRlZmF1bHQsIGFuCitFbmdsaXNoIG1lc3NhZ2UgaXMgc2hvd24gaW4gcGxhY2Ugb2YgYSBub25leGlzdGVudCB0cmFuc2xhdGlvbi4gIElmIHlvdQordW5kZXJzdGFuZCBvdGhlciBsYW5ndWFnZXMsIHlvdSBjYW4gc2V0IHVwIGEgcHJpb3JpdHkgbGlzdCBvZiBsYW5ndWFnZXMuCitUaGlzIGlzIGRvbmUgdGhyb3VnaCBhIGRpZmZlcmVudCBlbnZpcm9ubWVudCB2YXJpYWJsZSwgY2FsbGVkCitgTEFOR1VBR0UnLiAgR05VIGBnZXR0ZXh0JyBnaXZlcyBwcmVmZXJlbmNlIHRvIGBMQU5HVUFHRScgb3ZlciBgTEFORycKK2ZvciB0aGUgcHVycG9zZSBvZiBtZXNzYWdlIGhhbmRsaW5nLCBidXQgeW91IHN0aWxsIG5lZWQgdG8gaGF2ZSBgTEFORycKK3NldCB0byB0aGUgcHJpbWFyeSBsYW5ndWFnZTsgdGhpcyBpcyByZXF1aXJlZCBieSBvdGhlciBwYXJ0cyBvZiB0aGUKK3N5c3RlbSBsaWJyYXJpZXMuICBGb3IgZXhhbXBsZSwgc29tZSBTd2VkaXNoIHVzZXJzIHdobyB3b3VsZCByYXRoZXIKK3JlYWQgdHJhbnNsYXRpb25zIGluIEdlcm1hbiB0aGFuIEVuZ2xpc2ggZm9yIHdoZW4gU3dlZGlzaCBpcyBub3QKK2F2YWlsYWJsZSwgc2V0IGBMQU5HVUFHRScgdG8gYHN2OmRlJyB3aGlsZSBsZWF2aW5nIGBMQU5HJyB0byBgc3ZfU0UnLgorCisgICBTcGVjaWFsIGFkdmljZSBmb3IgTm9yd2VnaWFuIHVzZXJzOiBUaGUgbGFuZ3VhZ2UgY29kZSBmb3IgTm9yd2VnaWFuCitib2ttYSpsIGNoYW5nZWQgZnJvbSBgbm8nIHRvIGBuYicgcmVjZW50bHkgKGluIDIwMDMpLiAgRHVyaW5nIHRoZQordHJhbnNpdGlvbiBwZXJpb2QsIHdoaWxlIHNvbWUgbWVzc2FnZSBjYXRhbG9ncyBmb3IgdGhpcyBsYW5ndWFnZSBhcmUKK2luc3RhbGxlZCB1bmRlciBgbmInIGFuZCBzb21lIG9sZGVyIG9uZXMgdW5kZXIgYG5vJywgaXQncyByZWNvbW1lbmRlZAorZm9yIE5vcndlZ2lhbiB1c2VycyB0byBzZXQgYExBTkdVQUdFJyB0byBgbmI6bm8nIHNvIHRoYXQgYm90aCBuZXdlciBhbmQKK29sZGVyIHRyYW5zbGF0aW9ucyBhcmUgdXNlZC4KKworICAgSW4gdGhlIGBMQU5HVUFHRScgZW52aXJvbm1lbnQgdmFyaWFibGUsIGJ1dCBub3QgaW4gdGhlIGBMQU5HJworZW52aXJvbm1lbnQgdmFyaWFibGUsIGBMTF9DQycgY29tYmluYXRpb25zIGNhbiBiZSBhYmJyZXZpYXRlZCBhcyBgTEwnCit0byBkZW5vdGUgdGhlIGxhbmd1YWdlJ3MgbWFpbiBkaWFsZWN0LiAgRm9yIGV4YW1wbGUsIGBkZScgaXMgZXF1aXZhbGVudAordG8gYGRlX0RFJyAoR2VybWFuIGFzIHNwb2tlbiBpbiBHZXJtYW55KSwgYW5kIGBwdCcgdG8gYHB0X1BUJworKFBvcnR1Z3Vlc2UgYXMgc3Bva2VuIGluIFBvcnR1Z2FsKSBpbiB0aGlzIGNvbnRleHQuCisKKzEuNCBUcmFuc2xhdGluZyBUZWFtcworPT09PT09PT09PT09PT09PT09PT09CisKK0ZvciB0aGUgRnJlZSBUcmFuc2xhdGlvbiBQcm9qZWN0IHRvIGJlIGEgc3VjY2Vzcywgd2UgbmVlZCBpbnRlcmVzdGVkCitwZW9wbGUgd2hvIGxpa2UgdGhlaXIgb3duIGxhbmd1YWdlIGFuZCB3cml0ZSBpdCB3ZWxsLCBhbmQgd2hvIGFyZSBhbHNvCithYmxlIHRvIHN5bmVyZ2l6ZSB3aXRoIG90aGVyIHRyYW5zbGF0b3JzIHNwZWFraW5nIHRoZSBzYW1lIGxhbmd1YWdlLgorRWFjaCB0cmFuc2xhdGlvbiB0ZWFtIGhhcyBpdHMgb3duIG1haWxpbmcgbGlzdC4gIFRoZSB1cC10by1kYXRlIGxpc3Qgb2YKK3RlYW1zIGNhbiBiZSBmb3VuZCBhdCB0aGUgRnJlZSBUcmFuc2xhdGlvbiBQcm9qZWN0J3MgaG9tZXBhZ2UsCitgaHR0cDovL3RyYW5zbGF0aW9ucHJvamVjdC5vcmcvJywgaW4gdGhlICJUZWFtcyIgYXJlYS4KKworICAgSWYgeW91J2QgbGlrZSB0byB2b2x1bnRlZXIgdG8gX3dvcmtfIGF0IHRyYW5zbGF0aW5nIG1lc3NhZ2VzLCB5b3UKK3Nob3VsZCBiZWNvbWUgYSBtZW1iZXIgb2YgdGhlIHRyYW5zbGF0aW5nIHRlYW0gZm9yIHlvdXIgb3duIGxhbmd1YWdlLgorVGhlIHN1YnNjcmliaW5nIGFkZHJlc3MgaXMgX25vdF8gdGhlIHNhbWUgYXMgdGhlIGxpc3QgaXRzZWxmLCBpdCBoYXMKK2AtcmVxdWVzdCcgYXBwZW5kZWQuICBGb3IgZXhhbXBsZSwgc3BlYWtlcnMgb2YgU3dlZGlzaCBjYW4gc2VuZCBhCittZXNzYWdlIHRvIGBzdi1yZXF1ZXN0QGxpLm9yZycsIGhhdmluZyB0aGlzIG1lc3NhZ2UgYm9keToKKworICAgICBzdWJzY3JpYmUKKworICAgS2VlcCBpbiBtaW5kIHRoYXQgdGVhbSBtZW1iZXJzIGFyZSBleHBlY3RlZCB0byBwYXJ0aWNpcGF0ZQorX2FjdGl2ZWx5XyBpbiB0cmFuc2xhdGlvbnMsIG9yIGF0IHNvbHZpbmcgdHJhbnNsYXRpb25hbCBkaWZmaWN1bHRpZXMsCityYXRoZXIgdGhhbiBtZXJlbHkgbHVya2luZyBhcm91bmQuICBJZiB5b3VyIHRlYW0gZG9lcyBub3QgZXhpc3QgeWV0IGFuZAoreW91IHdhbnQgdG8gc3RhcnQgb25lLCBvciBpZiB5b3UgYXJlIHVuc3VyZSBhYm91dCB3aGF0IHRvIGRvIG9yIGhvdyB0bworZ2V0IHN0YXJ0ZWQsIHBsZWFzZSB3cml0ZSB0byBgY29vcmRpbmF0b3JAdHJhbnNsYXRpb25wcm9qZWN0Lm9yZycgdG8KK3JlYWNoIHRoZSBjb29yZGluYXRvciBmb3IgYWxsIHRyYW5zbGF0b3IgdGVhbXMuCisKKyAgIFRoZSBFbmdsaXNoIHRlYW0gaXMgc3BlY2lhbC4gIEl0IHdvcmtzIGF0IGltcHJvdmluZyBhbmQgdW5pZm9ybWl6aW5nCit0aGUgdGVybWlub2xvZ3kgaW4gdXNlLiAgUHJvdmVuIGxpbmd1aXN0aWMgc2tpbGxzIGFyZSBwcmFpc2VkIG1vcmUgdGhhbgorcHJvZ3JhbW1pbmcgc2tpbGxzLCBoZXJlLgorCisxLjUgQXZhaWxhYmxlIFBhY2thZ2VzCis9PT09PT09PT09PT09PT09PT09PT09CisKK0xhbmd1YWdlcyBhcmUgbm90IGVxdWFsbHkgc3VwcG9ydGVkIGluIGFsbCBwYWNrYWdlcy4gIFRoZSBmb2xsb3dpbmcKK21hdHJpeCBzaG93cyB0aGUgY3VycmVudCBzdGF0ZSBvZiBpbnRlcm5hdGlvbmFsaXphdGlvbiwgYXMgb2YgTWF5IDIwMTAuCitUaGUgbWF0cml4IHNob3dzLCBpbiByZWdhcmQgb2YgZWFjaCBwYWNrYWdlLCBmb3Igd2hpY2ggbGFuZ3VhZ2VzIFBPCitmaWxlcyBoYXZlIGJlZW4gc3VibWl0dGVkIHRvIHRyYW5zbGF0aW9uIGNvb3JkaW5hdGlvbiwgd2l0aCBhCit0cmFuc2xhdGlvbiBwZXJjZW50YWdlIG9mIGF0IGxlYXN0IDUwJS4KKworICAgICBSZWFkeSBQTyBmaWxlcyAgICAgICBhZiBhbSBhciBhcyBhc3QgYXogYmUgYmVAbGF0aW4gYmcgYm5fSU4gYnMgY2EgY3JoCisgICAgICAgICAgICAgICAgICAgICAgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgICBhMnBzICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgICAgICAgW10gICAgIHwKKyAgICAgYWVnaXMgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIGFudC1waG9uZSAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBhbnViaXMgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgYXNwZWxsICAgICAgICAgICAgIHwgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICB8CisgICAgIGJhc2ggICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBiZmQgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgYmlic2hlbGYgICAgICAgICAgIHwgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIGJpbnV0aWxzICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBiaXNvbiAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgYmlzb24tcnVudGltZSAgICAgIHwgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIGJsdWV6LXBpbiAgICAgICAgICB8IFtdICAgICAgICAgIFtdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBib21ib25vLWR2ZCAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgYnV6enRhcmQgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIGNmbG93ICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBjbGlzcCAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgY29yZXV0aWxzICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICAgIFtdICAgICB8CisgICAgIGNwaW8gICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBjcHBpICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgY3BwbGliICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICB8CisgICAgIGNyeXB0c2V0dXAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBkZmFyYyAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZGlhbG9nICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICAgICAgICAgIFtdICAgICB8CisgICAgIGRpY28gICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBkaWZmdXRpbHMgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgIHwKKyAgICAgZGluayAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIGRvb2RsZSAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBlMmZzcHJvZ3MgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgIHwKKyAgICAgZW5zY3JpcHQgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICB8CisgICAgIGV4aWYgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBmZXRjaG1haWwgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgIHwKKyAgICAgZmluZHV0aWxzICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICAgICAgICAgICB8CisgICAgIGZsZXggICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgfAorICAgICBmcmVlZGluayAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZ2FzICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIGdhd2sgICAgICAgICAgICAgICB8ICAgICAgICAgICAgIFtdICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgfAorICAgICBnY2FsICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgIHwKKyAgICAgZ2NjICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIGdldHRleHQtZXhhbXBsZXMgICB8IFtdICAgICAgICAgIFtdICAgICAgICAgICAgICAgICBbXSAgICAgICAgICBbXSAgICAgfAorICAgICBnZXR0ZXh0LXJ1bnRpbWUgICAgfCAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgW10gICAgICAgICAgW10gICAgIHwKKyAgICAgZ2V0dGV4dC10b29scyAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICAgIFtdICAgICB8CisgICAgIGdpcCAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgfAorICAgICBnamF5ICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZ2xpdiAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICAgICAgICAgICB8CisgICAgIGdsdW5hcmNsb2NrICAgICAgICB8ICAgICAgICAgICAgIFtdICAgICAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgfAorICAgICBnbnViaWZmICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZ251Y2FzaCAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICB8CisgICAgIGdudWVkdSAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBnbnVsaWIgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZ251bmV0ICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIGdudW5ldC1ndGsgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBnbnV0bHMgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZ29sZCAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIGdwZS1hZXJpYWwgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBncGUtYmVhbSAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZ3BlLWJsdWV0b290aCAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIGdwZS1jYWxlbmRhciAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBncGUtY2xvY2sgICAgICAgICAgfCAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZ3BlLWNvbmYgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIGdwZS1jb250YWN0cyAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBncGUtZWRpdCAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZ3BlLWZpbGVtYW5hZ2VyICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIGdwZS1nbyAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBncGUtbG9naW4gICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZ3BlLW93bmVyaW5mbyAgICAgIHwgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIGdwZS1wYWNrYWdlICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBncGUtc2tldGNoYm9vayAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZ3BlLXN1ICAgICAgICAgICAgIHwgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIGdwZS10YXNrbWFuYWdlciAgICB8ICAgICAgICAgICAgIFtdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBncGUtdGltZXNoZWV0ICAgICAgfCAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZ3BlLXRvZGF5ICAgICAgICAgIHwgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIGdwZS10b2RvICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBncGhvdG8yICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZ3Byb2YgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICAgICAgICAgICB8CisgICAgIGdwc2RyaXZlICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBncmFtYWRvaXIgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZ3JlcCAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIGdydWIgICAgICAgICAgICAgICB8ICAgICAgICAgICAgIFtdICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgfAorICAgICBnc2FzbCAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZ3NzICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIGdzdC1wbHVnaW5zLWJhZCAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgfAorICAgICBnc3QtcGx1Z2lucy1iYXNlICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgIHwKKyAgICAgZ3N0LXBsdWdpbnMtZ29vZCAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICAgICAgICAgICB8CisgICAgIGdzdC1wbHVnaW5zLXVnbHkgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgfAorICAgICBnc3RyZWFtZXIgICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgW10gICAgIHwKKyAgICAgZ3RpY2sgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIGd0a2FtICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBndGtvcnBoYW4gICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgIHwKKyAgICAgZ3Rrc3BlbGwgICAgICAgICAgIHwgW10gICAgICAgICAgW10gICAgIFtdICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIGd1dGVucHJpbnQgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBoZWxsbyAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgIHwKKyAgICAgaGVscDJtYW4gICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIGh5bGFmYXggICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBpZHV0aWxzICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgaW5kZW50ICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICAgIFtdICAgICB8CisgICAgIGlzb18xNTkyNCAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBpc29fMzE2NiAgICAgICAgICAgfCBbXSAgICAgICBbXSAgICAgICAgW10gICAgICAgICAgW10gIFtdICAgW10gW10gW10gIHwKKyAgICAgaXNvXzMxNjZfMiAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIGlzb180MjE3ICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBpc29fNjM5ICAgICAgICAgICAgfCAgICAgICAgICBbXSBbXSAgICAgW10gICAgICAgICAgICAgIFtdICAgICAgICAgW10gIHwKKyAgICAgaXNvXzYzOV8zICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtdICB8CisgICAgIGp3aG9pcyAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBrYmQgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAga2V5dG91Y2ggICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICB8CisgICAgIGtleXRvdWNoLWVkaXRvciAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBrZXl0b3VjaC1rZXlib2EuLi4gfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgIHwKKyAgICAga2xhdmFybyAgICAgICAgICAgIHwgICAgICAgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIGxhdHJpbmUgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBsZCAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgIHwKKyAgICAgbGVhZnBhZCAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICAgIFtdICAgICB8CisgICAgIGxpYmMgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICBbXSAgICAgfAorICAgICBsaWJleGlmICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgKCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgbGliZXh0cmFjdG9yICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIGxpYmdudXRscyAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBsaWJncGV3aWRnZXQgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgbGliZ3BnLWVycm9yICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIGxpYmdwaG90bzIgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBsaWJncGhvdG8yX3BvcnQgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgbGliZ3Nhc2wgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIGxpYmljb252ICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgfAorICAgICBsaWJpZG4gICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgbGlmZWxpbmVzICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIGxpZmVyZWEgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgICBbXSAgICAgfAorICAgICBsaWx5cG9uZCAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgbGlua2RyICAgICAgICAgICAgIHwgICAgICAgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIGxvcmRzYXdhciAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBscHJuZyAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgbHlueCAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICB8CisgICAgIG00ICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBtYWlsZnJvbWQgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgbWFpbHV0aWxzICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIG1ha2UgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBtYW4tZGIgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgbWFuLWRiLW1hbnBhZ2VzICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIG1pbmljb20gICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBta2lzb2ZzICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgbXlzZXJ2ZXIgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIG5hbm8gICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICBbXSAgICAgfAorICAgICBvcGNvZGVzICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgcGFydGVkICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIHBpZXMgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBwb3B0ICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgcHNtaXNjICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIHBzcHAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgfAorICAgICBwd2R1dGlscyAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgcmFkaXVzICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICB8CisgICAgIHJlY29kZSAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgfAorICAgICByb3NlZ2FyZGVuICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgcnBtICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIHJ1c2ggICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBzYXJnICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgc2NyZWVtICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIHNjcm9sbGtlZXBlciAgICAgICB8ICAgICAgICAgICAgICAgICBbXSBbXSAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgfAorICAgICBzZWQgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgIHwKKyAgICAgc2hhcnV0aWxzICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICAgIFtdICAgICB8CisgICAgIHNoaXNoaSAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBza2VuY2lsICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgc29sZmVnZSAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIHNvbGZlZ2UtbWFudWFsICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBzb3VuZHRyYWNrZXIgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgc3AgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIHN5c3N0YXQgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICB0YXIgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgIHwKKyAgICAgdGV4aW5mbyAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIHRpbiAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICB1bmljb2RlLWhhbi10cmEuLi4gfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgdW5pY29kZS10cmFuc2xhLi4uIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIHV0aWwtbGludXgtbmcgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgfAorICAgICB2aWNlICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgdm1tICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIHZvcmJpcy10b29scyAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICB3YXN0ZXNlZGdlICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgd2RpZmYgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIHdnZXQgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgfAorICAgICB3eXNsaWotcG8gICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgeGNoYXQgICAgICAgICAgICAgIHwgICAgICAgICAgICAgW10gICAgIFtdICAgICAgICAgIFtdICAgICAgICAgIFtdICAgICB8CisgICAgIHhkZy11c2VyLWRpcnMgICAgICB8IFtdICAgICAgIFtdIFtdICAgICBbXSAgICBbXSAgICBbXSAgW10gICAgICBbXSBbXSAgfAorICAgICB4a2V5Ym9hcmQtY29uZmlnICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgW10gW10gIHwKKyAgICAgICAgICAgICAgICAgICAgICAgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICAgICAgICAgICAgICAgICAgICAgICAgIGFmIGFtIGFyIGFzIGFzdCBheiBiZSBiZUBsYXRpbiBiZyBibl9JTiBicyBjYSBjcmgKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIDYgIDAgIDIgIDMgMTkgICAxIDExICAgICAzICAgIDI4ICAgMyAgICAxIDM4ICA1CisKKyAgICAgICAgICAgICAgICAgICAgICAgICAgY3MgZGEgIGRlICBlbCBlbiBlbl9HQiBlbl9aQSBlbyBlcyBldCBldSBmYSBmaQorICAgICAgICAgICAgICAgICAgICAgICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICAgIGEycHMgICAgICAgICAgICAgICB8IFtdIFtdICBbXSAgW10gICAgIFtdICAgICAgICAgICAgW10gW10gICAgICAgW10gIHwKKyAgICAgYWVnaXMgICAgICAgICAgICAgIHwgICAgW10gIFtdICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgfAorICAgICBhbnQtcGhvbmUgICAgICAgICAgfCAgICBbXSAgKCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIGFudWJpcyAgICAgICAgICAgICB8ICAgIFtdICBbXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gIHwKKyAgICAgYXNwZWxsICAgICAgICAgICAgIHwgW10gW10gIFtdICAgICAgICAgW10gICAgICAgICAgICBbXSAgICAgICAgICAgICAgfAorICAgICBiYXNoICAgICAgICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgICAgICAgICAgIFtdIFtdICAgICAgICAgIFtdICB8CisgICAgIGJmZCAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgW10gIHwKKyAgICAgYmlic2hlbGYgICAgICAgICAgIHwgICAgW10gIFtdICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICBbXSAgfAorICAgICBiaW51dGlscyAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICAgIFtdICB8CisgICAgIGJpc29uICAgICAgICAgICAgICB8ICAgICAgICBbXSAgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gIHwKKyAgICAgYmlzb24tcnVudGltZSAgICAgIHwgICAgW10gIFtdICBbXSAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICBbXSAgfAorICAgICBibHVlei1waW4gICAgICAgICAgfCBbXSBbXSAgW10gIFtdICAgICAgICAgICAgICAgIFtdIFtdICAgICAgICAgIFtdICB8CisgICAgIGJvbWJvbm8tZHZkICAgICAgICB8ICAgIFtdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gIHwKKyAgICAgYnV6enRhcmQgICAgICAgICAgIHwgW10gW10gIFtdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBjZmxvdyAgICAgICAgICAgICAgfCAgICBbXSAgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtdICB8CisgICAgIGNsaXNwICAgICAgICAgICAgICB8ICAgIFtdICBbXSAgICAgW10gICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgIHwKKyAgICAgY29yZXV0aWxzICAgICAgICAgIHwgW10gW10gIFtdICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICAgfAorICAgICBjcGlvICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtdICB8CisgICAgIGNwcGkgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gIHwKKyAgICAgY3BwbGliICAgICAgICAgICAgIHwgICAgW10gIFtdICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgfAorICAgICBjcnlwdHNldHVwICAgICAgICAgfCAgICAgICAgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIGRmYXJjICAgICAgICAgICAgICB8ICAgIFtdICBbXSAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgW10gIHwKKyAgICAgZGlhbG9nICAgICAgICAgICAgIHwgICAgW10gIFtdICAgICAgICAgICAgICAgICAgICBbXSBbXSAgICBbXSAgICAgICAgfAorICAgICBkaWNvICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIGRpZmZ1dGlscyAgICAgICAgICB8IFtdIFtdICBbXSAgW10gICAgICAgICAgICAgICAgW10gW10gICAgICAgICAgW10gIHwKKyAgICAgZGluayAgICAgICAgICAgICAgIHwgICAgW10gIFtdICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgfAorICAgICBkb29kbGUgICAgICAgICAgICAgfCAgICAgICAgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIGUyZnNwcm9ncyAgICAgICAgICB8IFtdICAgICBbXSAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgIHwKKyAgICAgZW5zY3JpcHQgICAgICAgICAgIHwgICAgW10gIFtdICAgICAgICAgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBleGlmICAgICAgICAgICAgICAgfCAoKSBbXSAgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtdICB8CisgICAgIGZldGNobWFpbCAgICAgICAgICB8IFtdIFtdICAoKSAgW10gICAgIFtdICAgICAgICAgICAgW10gICAgICAgICAgICAgIHwKKyAgICAgZmluZHV0aWxzICAgICAgICAgIHwgW10gW10gIFtdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgfAorICAgICBmbGV4ICAgICAgICAgICAgICAgfCAgICAgICAgW10gICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICAgIFtdICB8CisgICAgIGZyZWVkaW5rICAgICAgICAgICB8ICAgIFtdICBbXSAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgW10gIHwKKyAgICAgZ2FzICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgfAorICAgICBnYXdrICAgICAgICAgICAgICAgfCAgICBbXSAgW10gICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICAgICAgICB8CisgICAgIGdjYWwgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgIHwKKyAgICAgZ2NjICAgICAgICAgICAgICAgIHwgICAgICAgIFtdICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgfAorICAgICBnZXR0ZXh0LWV4YW1wbGVzICAgfCAgICAgICAgW10gIFtdICAgICAgICAgICAgICAgIFtdIFtdICAgICAgICAgIFtdICB8CisgICAgIGdldHRleHQtcnVudGltZSAgICB8ICAgIFtdICBbXSAgICAgICAgICAgICAgICAgICAgW10gW10gICAgICAgICAgW10gIHwKKyAgICAgZ2V0dGV4dC10b29scyAgICAgIHwgICAgICAgIFtdICAgICAgICAgICAgICAgICAgICAgICBbXSAgICBbXSAgICAgICAgfAorICAgICBnaXAgICAgICAgICAgICAgICAgfCAgICBbXSAgW10gICAgICAgICAgICAgICAgICAgICAgIFtdICAgIFtdICAgIFtdICB8CisgICAgIGdqYXkgICAgICAgICAgICAgICB8ICAgICAgICBbXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gIHwKKyAgICAgZ2xpdiAgICAgICAgICAgICAgIHwgW10gW10gIFtdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgfAorICAgICBnbHVuYXJjbG9jayAgICAgICAgfCAgICBbXSAgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtdICB8CisgICAgIGdudWJpZmYgICAgICAgICAgICB8ICAgICAgICAoKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZ251Y2FzaCAgICAgICAgICAgIHwgW10gICAgICgpICAoKSAgICAgKCkgICAgICAgICAgICAoKSAgICAgICAgICAoKSAgfAorICAgICBnbnVlZHUgICAgICAgICAgICAgfCAgICBbXSAgICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICAgICAgICB8CisgICAgIGdudWxpYiAgICAgICAgICAgICB8ICAgICAgICBbXSAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgW10gIHwKKyAgICAgZ251bmV0ICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBnbnVuZXQtZ3RrICAgICAgICAgfCAgICBbXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIGdudXRscyAgICAgICAgICAgICB8IFtdICAgICBbXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZ29sZCAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICBbXSAgfAorICAgICBncGUtYWVyaWFsICAgICAgICAgfCBbXSBbXSAgW10gICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICAgIFtdICB8CisgICAgIGdwZS1iZWFtICAgICAgICAgICB8IFtdIFtdICBbXSAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgW10gIHwKKyAgICAgZ3BlLWJsdWV0b290aCAgICAgIHwgICAgW10gIFtdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgfAorICAgICBncGUtY2FsZW5kYXIgICAgICAgfCAgICBbXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtdICB8CisgICAgIGdwZS1jbG9jayAgICAgICAgICB8IFtdIFtdICBbXSAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgW10gIHwKKyAgICAgZ3BlLWNvbmYgICAgICAgICAgIHwgW10gW10gIFtdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgfAorICAgICBncGUtY29udGFjdHMgICAgICAgfCAgICBbXSAgW10gICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICAgIFtdICB8CisgICAgIGdwZS1lZGl0ICAgICAgICAgICB8ICAgIFtdICBbXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gIHwKKyAgICAgZ3BlLWZpbGVtYW5hZ2VyICAgIHwgICAgW10gIFtdICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICBbXSAgfAorICAgICBncGUtZ28gICAgICAgICAgICAgfCBbXSBbXSAgW10gICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICAgIFtdICB8CisgICAgIGdwZS1sb2dpbiAgICAgICAgICB8ICAgIFtdICBbXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gIHwKKyAgICAgZ3BlLW93bmVyaW5mbyAgICAgIHwgW10gW10gIFtdICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICBbXSAgfAorICAgICBncGUtcGFja2FnZSAgICAgICAgfCAgICBbXSAgW10gICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICAgIFtdICB8CisgICAgIGdwZS1za2V0Y2hib29rICAgICB8IFtdIFtdICBbXSAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgW10gIHwKKyAgICAgZ3BlLXN1ICAgICAgICAgICAgIHwgW10gW10gIFtdICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICBbXSAgfAorICAgICBncGUtdGFza21hbmFnZXIgICAgfCBbXSBbXSAgW10gICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICAgIFtdICB8CisgICAgIGdwZS10aW1lc2hlZXQgICAgICB8IFtdIFtdICBbXSAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgW10gIHwKKyAgICAgZ3BlLXRvZGF5ICAgICAgICAgIHwgW10gW10gIFtdICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICBbXSAgfAorICAgICBncGUtdG9kbyAgICAgICAgICAgfCAgICBbXSAgW10gICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICAgIFtdICB8CisgICAgIGdwaG90bzIgICAgICAgICAgICB8IFtdIFtdICAoKSAgICAgICAgIFtdICAgICAgICAgICAgW10gICAgW10gICAgW10gIHwKKyAgICAgZ3Byb2YgICAgICAgICAgICAgIHwgICAgW10gIFtdICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICBbXSAgfAorICAgICBncHNkcml2ZSAgICAgICAgICAgfCAgICBbXSAgICAgICAgICAgICAgICAgICAgICAgICAgIFtdIFtdICAgICAgICAgICB8CisgICAgIGdyYW1hZG9pciAgICAgICAgICB8ICAgIFtdICBbXSAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgIHwKKyAgICAgZ3JlcCAgICAgICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgfAorICAgICBncnViICAgICAgICAgICAgICAgfCAgICBbXSAgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtdICB8CisgICAgIGdzYXNsICAgICAgICAgICAgICB8ICAgICAgICBbXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gIHwKKyAgICAgZ3NzICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgfAorICAgICBnc3QtcGx1Z2lucy1iYWQgICAgfCBbXSBbXSAgW10gICAgICAgICAgICAgICAgICAgICAgIFtdICAgIFtdICAgIFtdICB8CisgICAgIGdzdC1wbHVnaW5zLWJhc2UgICB8IFtdIFtdICBbXSAgICAgICAgICAgICAgICAgICAgICAgW10gICAgW10gICAgW10gIHwKKyAgICAgZ3N0LXBsdWdpbnMtZ29vZCAgIHwgW10gW10gIFtdICBbXSAgICAgICAgICAgICAgICAgICBbXSAgICBbXSAgICBbXSAgfAorICAgICBnc3QtcGx1Z2lucy11Z2x5ICAgfCBbXSBbXSAgW10gIFtdICAgICAgICAgICAgICAgICAgIFtdICAgIFtdICAgIFtdICB8CisgICAgIGdzdHJlYW1lciAgICAgICAgICB8IFtdIFtdICBbXSAgICAgICAgICAgICAgICAgICAgICAgW10gICAgW10gICAgW10gIHwKKyAgICAgZ3RpY2sgICAgICAgICAgICAgIHwgICAgW10gICgpICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICAgICBbXSAgfAorICAgICBndGthbSAgICAgICAgICAgICAgfCBbXSBbXSAgKCkgICAgICAgICAgICAgICAgICAgIFtdIFtdICAgICAgICAgICAgICB8CisgICAgIGd0a29ycGhhbiAgICAgICAgICB8IFtdIFtdICBbXSAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgIHwKKyAgICAgZ3Rrc3BlbGwgICAgICAgICAgIHwgW10gW10gIFtdICBbXSAgICAgICAgICAgICAgICBbXSBbXSAgICBbXSAgICBbXSAgfAorICAgICBndXRlbnByaW50ICAgICAgICAgfCAgICBbXSAgW10gICAgICAgICBbXSAgICAgICAgICAgICAgICAgICAgICAgIFtdICB8CisgICAgIGhlbGxvICAgICAgICAgICAgICB8ICAgIFtdICBbXSAgICAgICAgICAgICAgICAgICAgW10gW10gICAgICAgICAgW10gIHwKKyAgICAgaGVscDJtYW4gICAgICAgICAgIHwgICAgICAgIFtdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgfAorICAgICBoeWxhZmF4ICAgICAgICAgICAgfCAgICAgICAgW10gICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICAgICAgICB8CisgICAgIGlkdXRpbHMgICAgICAgICAgICB8ICAgIFtdICBbXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gIHwKKyAgICAgaW5kZW50ICAgICAgICAgICAgIHwgW10gW10gIFtdICAgICAgICAgICAgICAgICAgICBbXSBbXSBbXSBbXSAgICBbXSAgfAorICAgICBpc29fMTU5MjQgICAgICAgICAgfCAgICBbXSAgICAgICgpICAgICAgICAgICAgICAgIFtdIFtdICAgICAgICAgIFtdICB8CisgICAgIGlzb18zMTY2ICAgICAgICAgICB8IFtdIFtdICBbXSAgKCkgICAgICAgICAgICAgICAgW10gW10gW10gKCkgICAgW10gIHwKKyAgICAgaXNvXzMxNjZfMiAgICAgICAgIHwgICAgICAgICAgICAoKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBpc29fNDIxNyAgICAgICAgICAgfCBbXSBbXSAgW10gICgpICAgICAgICAgICAgICAgICAgIFtdIFtdICAgICAgIFtdICB8CisgICAgIGlzb182MzkgICAgICAgICAgICB8IFtdIFtdICBbXSAgKCkgICAgICAgICAgICAgICAgW10gW10gICAgICAgICAgW10gIHwKKyAgICAgaXNvXzYzOV8zICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBqd2hvaXMgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICAgIFtdICB8CisgICAgIGtiZCAgICAgICAgICAgICAgICB8IFtdIFtdICBbXSAgW10gICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgIHwKKyAgICAga2V5dG91Y2ggICAgICAgICAgIHwgICAgW10gIFtdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgfAorICAgICBrZXl0b3VjaC1lZGl0b3IgICAgfCAgICBbXSAgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtdICB8CisgICAgIGtleXRvdWNoLWtleWJvYS4uLiB8ICAgIFtdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gIHwKKyAgICAga2xhdmFybyAgICAgICAgICAgIHwgW10gW10gIFtdICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgfAorICAgICBsYXRyaW5lICAgICAgICAgICAgfCAgICBbXSAgKCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtdICB8CisgICAgIGxkICAgICAgICAgICAgICAgICB8ICAgIFtdICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgW10gIHwKKyAgICAgbGVhZnBhZCAgICAgICAgICAgIHwgW10gW10gIFtdICBbXSAgICAgICAgICAgICAgICAgICBbXSAgICBbXSAgICBbXSAgfAorICAgICBsaWJjICAgICAgICAgICAgICAgfCBbXSBbXSAgW10gICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICAgIFtdICB8CisgICAgIGxpYmV4aWYgICAgICAgICAgICB8ICAgIFtdICBbXSAgICAgICAgICgpICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgbGliZXh0cmFjdG9yICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBsaWJnbnV0bHMgICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIGxpYmdwZXdpZGdldCAgICAgICB8ICAgIFtdICBbXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gIHwKKyAgICAgbGliZ3BnLWVycm9yICAgICAgIHwgW10gICAgIFtdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBsaWJncGhvdG8yICAgICAgICAgfCAgICBbXSAgKCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIGxpYmdwaG90bzJfcG9ydCAgICB8ICAgIFtdICAoKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgIHwKKyAgICAgbGliZ3Nhc2wgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgfAorICAgICBsaWJpY29udiAgICAgICAgICAgfCBbXSBbXSAgW10gICAgICAgICAgICAgICAgICAgIFtdICAgIFtdICAgICAgIFtdICB8CisgICAgIGxpYmlkbiAgICAgICAgICAgICB8IFtdICAgICBbXSAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgW10gIHwKKyAgICAgbGlmZWxpbmVzICAgICAgICAgIHwgICAgW10gICgpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBsaWZlcmVhICAgICAgICAgICAgfCBbXSAgICAgW10gIFtdICAgICAgICAgICAgICAgICAgIFtdICAgIFtdICAgICAgICB8CisgICAgIGxpbHlwb25kICAgICAgICAgICB8IFtdICAgICBbXSAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgW10gIHwKKyAgICAgbGlua2RyICAgICAgICAgICAgIHwgICAgW10gIFtdICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICBbXSAgfAorICAgICBsb3Jkc2F3YXIgICAgICAgICAgfCAgICBbXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIGxwcm5nICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgbHlueCAgICAgICAgICAgICAgIHwgW10gW10gIFtdICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICAgfAorICAgICBtNCAgICAgICAgICAgICAgICAgfCBbXSBbXSAgW10gIFtdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtdICB8CisgICAgIG1haWxmcm9tZCAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgbWFpbHV0aWxzICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgfAorICAgICBtYWtlICAgICAgICAgICAgICAgfCAgICBbXSAgW10gICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICAgIFtdICB8CisgICAgIG1hbi1kYiAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgbWFuLWRiLW1hbnBhZ2VzICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBtaW5pY29tICAgICAgICAgICAgfCBbXSBbXSAgW10gICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICAgIFtdICB8CisgICAgIG1raXNvZnMgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gIHwKKyAgICAgbXlzZXJ2ZXIgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBuYW5vICAgICAgICAgICAgICAgfCAgICAgICAgW10gICAgICAgICAgICAgICAgICAgICAgIFtdICAgIFtdICAgIFtdICB8CisgICAgIG9wY29kZXMgICAgICAgICAgICB8ICAgICAgICBbXSAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgW10gIHwKKyAgICAgcGFydGVkICAgICAgICAgICAgIHwgW10gICAgIFtdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBwaWVzICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIHBvcHQgICAgICAgICAgICAgICB8IFtdIFtdICBbXSAgICAgICAgICAgICAgICAgICAgW10gW10gICAgICAgICAgW10gIHwKKyAgICAgcHNtaXNjICAgICAgICAgICAgIHwgW10gICAgIFtdICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgICBbXSAgfAorICAgICBwc3BwICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICAgICAgICB8CisgICAgIHB3ZHV0aWxzICAgICAgICAgICB8ICAgIFtdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgcmFkaXVzICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgfAorICAgICByZWNvZGUgICAgICAgICAgICAgfCBbXSBbXSAgW10gIFtdICAgICAgICAgICAgICAgIFtdIFtdICAgICAgICAgIFtdICB8CisgICAgIHJvc2VnYXJkZW4gICAgICAgICB8ICgpICAgICAoKSAgICAgICAgICAgICAgICAgICAgICAgKCkgICAgICAgICAgKCkgIHwKKyAgICAgcnBtICAgICAgICAgICAgICAgIHwgICAgW10gIFtdICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgfAorICAgICBydXNoICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIHNhcmcgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgc2NyZWVtICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBzY3JvbGxrZWVwZXIgICAgICAgfCBbXSBbXSAgW10gICAgICAgICBbXSAgICAgICAgICAgIFtdICAgICAgICAgIFtdICB8CisgICAgIHNlZCAgICAgICAgICAgICAgICB8IFtdICAgICBbXSAgW10gICAgICAgICAgICAgICAgW10gW10gW10gICAgICAgW10gIHwKKyAgICAgc2hhcnV0aWxzICAgICAgICAgIHwgICAgW10gIFtdICAgICAgICAgICAgICAgICAgICAgICBbXSBbXSAgICAgICBbXSAgfAorICAgICBzaGlzaGkgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIHNrZW5jaWwgICAgICAgICAgICB8ICAgIFtdICAoKSAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgIHwKKyAgICAgc29sZmVnZSAgICAgICAgICAgIHwgICAgICAgIFtdICAgICAgICAgICAgICAgICAgICBbXSAgICBbXSAgICAgICBbXSAgfAorICAgICBzb2xmZWdlLW1hbnVhbCAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgIFtdICAgICAgICAgICB8CisgICAgIHNvdW5kdHJhY2tlciAgICAgICB8ICAgIFtdICBbXSAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgIHwKKyAgICAgc3AgICAgICAgICAgICAgICAgIHwgICAgICAgIFtdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBzeXNzdGF0ICAgICAgICAgICAgfCAgICBbXSAgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgIFtdICB8CisgICAgIHRhciAgICAgICAgICAgICAgICB8IFtdICAgICBbXSAgICAgICAgICAgICAgICAgICAgICAgICAgW10gW10gICAgW10gIHwKKyAgICAgdGV4aW5mbyAgICAgICAgICAgIHwgICAgICAgIFtdICAgICAgICAgICAgICAgICAgICBbXSBbXSAgICAgICAgICAgICAgfAorICAgICB0aW4gICAgICAgICAgICAgICAgfCAgICAgICAgW10gICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICAgICB8CisgICAgIHVuaWNvZGUtaGFuLXRyYS4uLiB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgdW5pY29kZS10cmFuc2xhLi4uIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICB1dGlsLWxpbnV4LW5nICAgICAgfCBbXSBbXSAgW10gICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICAgIFtdICB8CisgICAgIHZpY2UgICAgICAgICAgICAgICB8ICAgICgpICAoKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgdm1tICAgICAgICAgICAgICAgIHwgICAgICAgIFtdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICB2b3JiaXMtdG9vbHMgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICAgICAgICAgICB8CisgICAgIHdhc3Rlc2VkZ2UgICAgICAgICB8ICAgIFtdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgd2RpZmYgICAgICAgICAgICAgIHwgICAgICAgIFtdICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICBbXSAgfAorICAgICB3Z2V0ICAgICAgICAgICAgICAgfCBbXSAgICAgW10gICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgIFtdICB8CisgICAgIHd5c2xpai1wbyAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gIHwKKyAgICAgeGNoYXQgICAgICAgICAgICAgIHwgW10gICAgIFtdICBbXSAgICAgICAgICAgICAgICAgICBbXSBbXSAgICAgICBbXSAgfAorICAgICB4ZGctdXNlci1kaXJzICAgICAgfCBbXSBbXSAgW10gIFtdICAgICAgICAgICAgICAgIFtdIFtdIFtdIFtdICAgIFtdICB8CisgICAgIHhrZXlib2FyZC1jb25maWcgICB8IFtdIFtdICBbXSAgICAgICAgICAgICAgICAgICAgW10gW10gICAgICAgICAgW10gIHwKKyAgICAgICAgICAgICAgICAgICAgICAgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgICAgICAgICAgICAgICAgICAgICAgICBjcyBkYSAgZGUgIGVsIGVuIGVuX0dCIGVuX1pBIGVvIGVzIGV0IGV1IGZhIGZpCisgICAgICAgICAgICAgICAgICAgICAgICAgIDY0IDEwNSAxMTcgMTggIDEgICA4ICAgICAwICAgMjggODkgMTggMTkgIDAgMTA0CisKKyAgICAgICAgICAgICAgICAgICAgICAgICAgZnIgIGdhIGdsIGd1IGhlIGhpIGhyIGh1IGh5IGlkICBpcyBpdCBqYSBrYSBrbgorICAgICAgICAgICAgICAgICAgICAgICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgICAgYTJwcyAgICAgICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICBbXSAgICAgICB8CisgICAgIGFlZ2lzICAgICAgICAgICAgICB8IFtdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgfAorICAgICBhbnQtcGhvbmUgICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICAgIHwKKyAgICAgYW51YmlzICAgICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICBbXSAgICAgICAgICB8CisgICAgIGFzcGVsbCAgICAgICAgICAgICB8IFtdICBbXSAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgW10gICAgICAgICAgfAorICAgICBiYXNoICAgICAgICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgIFtdICAgICAgIHwKKyAgICAgYmZkICAgICAgICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICAgICAgICAgICB8CisgICAgIGJpYnNoZWxmICAgICAgICAgICB8IFtdICBbXSAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgW10gICAgICAgICAgfAorICAgICBiaW51dGlscyAgICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgIHwKKyAgICAgYmlzb24gICAgICAgICAgICAgIHwgW10gIFtdICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICAgICAgICAgICB8CisgICAgIGJpc29uLXJ1bnRpbWUgICAgICB8IFtdICBbXSAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgW10gW10gICAgICAgfAorICAgICBibHVlei1waW4gICAgICAgICAgfCBbXSAgW10gICAgICAgICAgICAgICAgW10gW10gW10gIFtdICAgIFtdICAgICAgIHwKKyAgICAgYm9tYm9uby1kdmQgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIGJ1enp0YXJkICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgfAorICAgICBjZmxvdyAgICAgICAgICAgICAgfCAgICAgW10gICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgIHwKKyAgICAgY2xpc3AgICAgICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIGNvcmV1dGlscyAgICAgICAgICB8IFtdICBbXSAgICAgICAgICAgICAgICBbXSAgICBbXSAgICAgW10gICAgICAgICAgfAorICAgICBjcGlvICAgICAgICAgICAgICAgfCBbXSAgW10gICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgIHwKKyAgICAgY3BwaSAgICAgICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIGNwcGxpYiAgICAgICAgICAgICB8IFtdICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgfAorICAgICBjcnlwdHNldHVwICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgIFtdICAgICAgICAgIHwKKyAgICAgZGZhcmMgICAgICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICB8CisgICAgIGRpYWxvZyAgICAgICAgICAgICB8IFtdICBbXSBbXSAgICAgICAgICAgICAgICAgICBbXSAgW10gW10gW10gICAgICAgfAorICAgICBkaWNvICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZGlmZnV0aWxzICAgICAgICAgIHwgW10gIFtdIFtdICAgIFtdICAgICAgIFtdICAgIFtdICAgICBbXSBbXSAgICAgICB8CisgICAgIGRpbmsgICAgICAgICAgICAgICB8IFtdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBkb29kbGUgICAgICAgICAgICAgfCAgICAgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICAgIHwKKyAgICAgZTJmc3Byb2dzICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICAgICAgICAgICB8CisgICAgIGVuc2NyaXB0ICAgICAgICAgICB8IFtdICBbXSAgICAgICAgICAgICBbXSAgICAgICBbXSAgICAgICAgICAgICAgICAgfAorICAgICBleGlmICAgICAgICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgICAgICAgICAgW10gIFtdIFtdIFtdICAgICAgIHwKKyAgICAgZmV0Y2htYWlsICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICBbXSBbXSAgICAgICB8CisgICAgIGZpbmR1dGlscyAgICAgICAgICB8IFtdICBbXSAgICAgICAgICAgICAgICBbXSAgICBbXSAgICAgW10gICAgICAgICAgfAorICAgICBmbGV4ICAgICAgICAgICAgICAgfCBbXSAgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZnJlZWRpbmsgICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICAgICAgICAgICB8CisgICAgIGdhcyAgICAgICAgICAgICAgICB8IFtdICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgfAorICAgICBnYXdrICAgICAgICAgICAgICAgfCBbXSAgW10gICAgICAgW10gICAgICAgICAgICAgW10gICAgICgpIFtdICAgICAgIHwKKyAgICAgZ2NhbCAgICAgICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIGdjYyAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgfAorICAgICBnZXR0ZXh0LWV4YW1wbGVzICAgfCBbXSAgW10gICAgICAgICAgICAgICAgW10gICAgW10gICAgIFtdIFtdICAgICAgIHwKKyAgICAgZ2V0dGV4dC1ydW50aW1lICAgIHwgW10gIFtdICAgICAgICAgICAgICAgICAgICAgIFtdICAgICBbXSBbXSAgICAgICB8CisgICAgIGdldHRleHQtdG9vbHMgICAgICB8IFtdICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgW10gW10gICAgICAgfAorICAgICBnaXAgICAgICAgICAgICAgICAgfCBbXSAgW10gW10gICAgICAgICAgICAgICAgICAgW10gICAgICAgIFtdICAgICAgIHwKKyAgICAgZ2pheSAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIGdsaXYgICAgICAgICAgICAgICB8ICgpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBnbHVuYXJjbG9jayAgICAgICAgfCAgICAgW10gICAgICAgICAgICAgICAgW10gICAgW10gICAgICAgICAgICAgICAgIHwKKyAgICAgZ251YmlmZiAgICAgICAgICAgIHwgKCkgICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAoKSAgICAgICAgICB8CisgICAgIGdudWNhc2ggICAgICAgICAgICB8ICgpICAgICAgICAgICAoKSAgICAgICAoKSAgICAgICAgICAgKCkgW10gICAgICAgfAorICAgICBnbnVlZHUgICAgICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICAgIHwKKyAgICAgZ251bGliICAgICAgICAgICAgIHwgW10gIFtdICAgICAgICAgICAgICAgIFtdICAgICAgICAgICBbXSBbXSAgICAgICB8CisgICAgIGdudW5ldCAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBnbnVuZXQtZ3RrICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZ251dGxzICAgICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICB8CisgICAgIGdvbGQgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgfAorICAgICBncGUtYWVyaWFsICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgIHwKKyAgICAgZ3BlLWJlYW0gICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICBbXSAgICAgICB8CisgICAgIGdwZS1ibHVldG9vdGggICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgW10gW10gICAgICAgfAorICAgICBncGUtY2FsZW5kYXIgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgIHwKKyAgICAgZ3BlLWNsb2NrICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgICAgIFtdICAgIFtdICAgICAgICBbXSAgICAgICB8CisgICAgIGdwZS1jb25mICAgICAgICAgICB8IFtdICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgW10gICAgICAgfAorICAgICBncGUtY29udGFjdHMgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgIFtdICAgICAgIHwKKyAgICAgZ3BlLWVkaXQgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICBbXSAgICAgICB8CisgICAgIGdwZS1maWxlbWFuYWdlciAgICB8ICAgICAgICAgICAgICAgICAgICAgICBbXSAgICBbXSAgICAgICAgW10gICAgICAgfAorICAgICBncGUtZ28gICAgICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgICAgW10gICAgW10gICAgICAgIFtdICAgICAgIHwKKyAgICAgZ3BlLWxvZ2luICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICBbXSAgICAgICB8CisgICAgIGdwZS1vd25lcmluZm8gICAgICB8IFtdICAgICAgICAgICAgICAgICAgICBbXSAgICBbXSAgICAgICAgW10gICAgICAgfAorICAgICBncGUtcGFja2FnZSAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgIFtdICAgICAgIHwKKyAgICAgZ3BlLXNrZXRjaGJvb2sgICAgIHwgW10gICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICBbXSAgICAgICB8CisgICAgIGdwZS1zdSAgICAgICAgICAgICB8IFtdICAgICBbXSAgICAgICAgICAgICBbXSAgICBbXSAgICAgICAgW10gICAgICAgfAorICAgICBncGUtdGFza21hbmFnZXIgICAgfCBbXSAgICAgICAgICAgICAgICAgICAgW10gICAgW10gICAgICAgIFtdICAgICAgIHwKKyAgICAgZ3BlLXRpbWVzaGVldCAgICAgIHwgW10gIFtdICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICBbXSAgICAgICB8CisgICAgIGdwZS10b2RheSAgICAgICAgICB8IFtdICBbXSBbXSAgICAgICAgICAgICBbXSAgICBbXSAgICAgICAgW10gICAgICAgfAorICAgICBncGUtdG9kbyAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgIFtdICAgICAgIHwKKyAgICAgZ3Bob3RvMiAgICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgICAgIFtdICAgIFtdICAgICBbXSBbXSAgICAgICB8CisgICAgIGdwcm9mICAgICAgICAgICAgICB8IFtdICBbXSAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgfAorICAgICBncHNkcml2ZSAgICAgICAgICAgfCAgICAgICAgW10gICAgICAgICAgICAgICAgICAgW10gICAgIFtdICAgICAgICAgIHwKKyAgICAgZ3JhbWFkb2lyICAgICAgICAgIHwgW10gIFtdICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICAgICAgICAgICB8CisgICAgIGdyZXAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgfAorICAgICBncnViICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgW10gICAgW10gICAgIFtdICAgICAgICAgIHwKKyAgICAgZ3Nhc2wgICAgICAgICAgICAgIHwgW10gIFtdICAgICAgICAgICAgICAgICAgICAgIFtdICAgICBbXSAgICAgICAgICB8CisgICAgIGdzcyAgICAgICAgICAgICAgICB8IFtdICBbXSAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgW10gICAgICAgICAgfAorICAgICBnc3QtcGx1Z2lucy1iYWQgICAgfCBbXSAgICAgICAgICAgICAgICAgICAgW10gICAgW10gICAgIFtdICAgICAgICAgIHwKKyAgICAgZ3N0LXBsdWdpbnMtYmFzZSAgIHwgW10gICAgICAgICAgICAgICAgICAgIFtdICAgIFtdICAgICBbXSBbXSAgICAgICB8CisgICAgIGdzdC1wbHVnaW5zLWdvb2QgICB8IFtdICAgICAgICAgICAgICAgICAgICBbXSAgICBbXSAgICAgW10gW10gICAgICAgfAorICAgICBnc3QtcGx1Z2lucy11Z2x5ICAgfCBbXSAgICAgICAgICAgICAgICAgICAgW10gICAgW10gICAgIFtdIFtdICAgICAgIHwKKyAgICAgZ3N0cmVhbWVyICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgICAgIFtdICAgIFtdICAgICBbXSAgICAgICAgICB8CisgICAgIGd0aWNrICAgICAgICAgICAgICB8IFtdICBbXSAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgW10gICAgICAgICAgfAorICAgICBndGthbSAgICAgICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgICAgW10gICAgW10gICAgIFtdIFtdICAgICAgIHwKKyAgICAgZ3Rrb3JwaGFuICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICBbXSAgICAgICAgICB8CisgICAgIGd0a3NwZWxsICAgICAgICAgICB8IFtdICBbXSBbXSAgICAgICAgICAgICBbXSBbXSBbXSAgICAgW10gW10gICAgICAgfAorICAgICBndXRlbnByaW50ICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgIFtdICAgICAgICAgIHwKKyAgICAgaGVsbG8gICAgICAgICAgICAgIHwgICAgIFtdICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICAgICAgICAgICB8CisgICAgIGhlbHAybWFuICAgICAgICAgICB8IFtdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBoeWxhZmF4ICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgIHwKKyAgICAgaWR1dGlscyAgICAgICAgICAgIHwgW10gIFtdICAgICAgICAgICAgICAgIFtdICAgIFtdICAgICBbXSAgICAgICAgICB8CisgICAgIGluZGVudCAgICAgICAgICAgICB8IFtdICBbXSBbXSAgICAgICAgICAgICBbXSAgICBbXSAgICAgW10gW10gICAgICAgfAorICAgICBpc29fMTU5MjQgICAgICAgICAgfCAoKSAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgIFtdICAgICAgICAgIHwKKyAgICAgaXNvXzMxNjYgICAgICAgICAgIHwgKCkgIFtdIFtdIFtdIFtdIFtdIFtdIFtdICAgIFtdICAgICBbXSBbXSAgICAgICB8CisgICAgIGlzb18zMTY2XzIgICAgICAgICB8ICgpICAgICAgICAgICAgICAgICAgICBbXSAgICBbXSAgICAgW10gICAgICAgICAgfAorICAgICBpc29fNDIxNyAgICAgICAgICAgfCAoKSAgICAgICAgICAgICAgICAgICAgW10gICAgW10gICAgIFtdIFtdICAgICAgIHwKKyAgICAgaXNvXzYzOSAgICAgICAgICAgIHwgKCkgIFtdICAgIFtdICAgICAgICAgIFtdICAgIFtdICAgICBbXSBbXSAgICBbXSB8CisgICAgIGlzb182MzlfMyAgICAgICAgICB8ICgpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgW10gfAorICAgICBqd2hvaXMgICAgICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgICAgW10gICAgW10gICAgIFtdICAgICAgICAgIHwKKyAgICAga2JkICAgICAgICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICAgICAgICAgICB8CisgICAgIGtleXRvdWNoICAgICAgICAgICB8IFtdICBbXSAgICAgICAgICAgICAgICBbXSAgICBbXSAgICAgW10gICAgICAgICAgfAorICAgICBrZXl0b3VjaC1lZGl0b3IgICAgfCAgICAgW10gICAgICAgICAgICAgICAgW10gICAgW10gICAgIFtdICAgICAgICAgIHwKKyAgICAga2V5dG91Y2gta2V5Ym9hLi4uIHwgICAgIFtdICAgICAgICAgICAgICAgIFtdICAgIFtdICAgICBbXSAgICAgICAgICB8CisgICAgIGtsYXZhcm8gICAgICAgICAgICB8ICAgICAgICBbXSAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBsYXRyaW5lICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgIFtdICAgICAgICAgIHwKKyAgICAgbGQgICAgICAgICAgICAgICAgIHwgW10gIFtdICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICAgICAgICAgICB8CisgICAgIGxlYWZwYWQgICAgICAgICAgICB8IFtdICBbXSAgICAgICBbXSAgICAgICBbXSAgICBbXSAgICAgW10gKCkgICAgICAgfAorICAgICBsaWJjICAgICAgICAgICAgICAgfCBbXSAgICAgW10gICAgICAgICAgICAgICAgICAgW10gICAgICAgIFtdICAgICAgIHwKKyAgICAgbGliZXhpZiAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIGxpYmV4dHJhY3RvciAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBsaWJnbnV0bHMgICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICAgIHwKKyAgICAgbGliZ3Bld2lkZ2V0ICAgICAgIHwgICAgIFtdICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICBbXSAgICAgICB8CisgICAgIGxpYmdwZy1lcnJvciAgICAgICB8IFtdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgfAorICAgICBsaWJncGhvdG8yICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtdIFtdICAgICAgIHwKKyAgICAgbGliZ3Bob3RvMl9wb3J0ICAgIHwgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXSBbXSAgICAgICB8CisgICAgIGxpYmdzYXNsICAgICAgICAgICB8IFtdICBbXSAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgW10gICAgICAgICAgfAorICAgICBsaWJpY29udiAgICAgICAgICAgfCBbXSAgW10gICAgICAgICAgICAgICAgICAgICAgW10gICAgIFtdIFtdICAgICAgIHwKKyAgICAgbGliaWRuICAgICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICBbXSAgICAgICAgICB8CisgICAgIGxpZmVsaW5lcyAgICAgICAgICB8ICgpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBsaWZlcmVhICAgICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgIFtdIFtdICAgICAgIHwKKyAgICAgbGlseXBvbmQgICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIGxpbmtkciAgICAgICAgICAgICB8ICAgICAgICAgICAgICBbXSAgICBbXSBbXSAgICAgICAgICAgW10gICAgICAgICAgfAorICAgICBsb3Jkc2F3YXIgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgbHBybmcgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICAgICAgICAgICB8CisgICAgIGx5bnggICAgICAgICAgICAgICB8IFtdICAgICAgICAgICAgICAgICAgICBbXSAgICBbXSAgICAgW10gW10gICAgICAgfAorICAgICBtNCAgICAgICAgICAgICAgICAgfCBbXSAgW10gW10gICAgICAgICAgICAgICAgICAgW10gICAgICAgIFtdICAgICAgIHwKKyAgICAgbWFpbGZyb21kICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIG1haWx1dGlscyAgICAgICAgICB8IFtdICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgfAorICAgICBtYWtlICAgICAgICAgICAgICAgfCBbXSAgW10gW10gICAgW10gICAgW10gICAgICAgW10gICAgIFtdIFtdICAgICAgIHwKKyAgICAgbWFuLWRiICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICBbXSAgICAgICAgICB8CisgICAgIG1hbi1kYi1tYW5wYWdlcyAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgfAorICAgICBtaW5pY29tICAgICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgICAgW10gICAgW10gICAgICAgIFtdICAgICAgIHwKKyAgICAgbWtpc29mcyAgICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICBbXSAgICAgICAgICB8CisgICAgIG15c2VydmVyICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBuYW5vICAgICAgICAgICAgICAgfCBbXSAgW10gW10gICAgICAgICAgICAgW10gICAgICAgICAgIFtdICAgICAgICAgIHwKKyAgICAgb3Bjb2RlcyAgICAgICAgICAgIHwgW10gIFtdICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICAgICAgICAgICB8CisgICAgIHBhcnRlZCAgICAgICAgICAgICB8IFtdICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgW10gW10gICAgICAgfAorICAgICBwaWVzICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgcG9wdCAgICAgICAgICAgICAgIHwgW10gIFtdIFtdICAgICAgICAgICAgIFtdICAgIFtdICBbXSBbXSBbXSAgICAgICB8CisgICAgIHBzbWlzYyAgICAgICAgICAgICB8IFtdICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgfAorICAgICBwc3BwICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgcHdkdXRpbHMgICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICAgICAgICAgICB8CisgICAgIHJhZGl1cyAgICAgICAgICAgICB8IFtdICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgfAorICAgICByZWNvZGUgICAgICAgICAgICAgfCBbXSAgW10gW10gICAgW10gICAgICAgW10gICAgW10gICAgIFtdICAgICAgICAgIHwKKyAgICAgcm9zZWdhcmRlbiAgICAgICAgIHwgKCkgICAgICAgICAgICAgICAgICAgICAgICAgICgpICAgICAoKSAoKSAgICAgICB8CisgICAgIHJwbSAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgW10gICAgICAgfAorICAgICBydXNoICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgc2FyZyAgICAgICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIHNjcmVlbSAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gW10gICAgICAgfAorICAgICBzY3JvbGxrZWVwZXIgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgW10gICAgW10gICAgIFtdICAgICAgICAgIHwKKyAgICAgc2VkICAgICAgICAgICAgICAgIHwgW10gIFtdIFtdICAgICAgICAgICAgIFtdICAgIFtdICAgICBbXSBbXSAgICAgICB8CisgICAgIHNoYXJ1dGlscyAgICAgICAgICB8IFtdICBbXSAgICAgICAgICAgICAgICBbXSAgICBbXSAgICAgW10gW10gICAgICAgfAorICAgICBzaGlzaGkgICAgICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgc2tlbmNpbCAgICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIHNvbGZlZ2UgICAgICAgICAgICB8IFtdICAgICBbXSAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgfAorICAgICBzb2xmZWdlLW1hbnVhbCAgICAgfCBbXSAgICAgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgc291bmR0cmFja2VyICAgICAgIHwgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICB8CisgICAgIHNwICAgICAgICAgICAgICAgICB8IFtdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKCkgICAgICAgfAorICAgICBzeXNzdGF0ICAgICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgIFtdIFtdICAgICAgIHwKKyAgICAgdGFyICAgICAgICAgICAgICAgIHwgW10gIFtdICAgICAgICAgICAgICAgIFtdICAgIFtdICAgICBbXSBbXSAgICAgICB8CisgICAgIHRleGluZm8gICAgICAgICAgICB8IFtdICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgW10gW10gICAgICAgfAorICAgICB0aW4gICAgICAgICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgdW5pY29kZS1oYW4tdHJhLi4uIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIHVuaWNvZGUtdHJhbnNsYS4uLiB8IFtdICBbXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICB1dGlsLWxpbnV4LW5nICAgICAgfCBbXSAgICAgICAgICAgICAgICAgICAgW10gICAgW10gICAgIFtdIFtdICAgICAgIHwKKyAgICAgdmljZSAgICAgICAgICAgICAgIHwgKCkgICAgICAgICAgICAgICAgICAgICgpICAgICAgICAgICAoKSAgICAgICAgICB8CisgICAgIHZtbSAgICAgICAgICAgICAgICB8IFtdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICB2b3JiaXMtdG9vbHMgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgIHwKKyAgICAgd2FzdGVzZWRnZSAgICAgICAgIHwgKCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKSAgICAgICAgICB8CisgICAgIHdkaWZmICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICB3Z2V0ICAgICAgICAgICAgICAgfCBbXSAgW10gICAgICAgICAgICAgW10gW10gICAgW10gICAgIFtdIFtdICAgICAgIHwKKyAgICAgd3lzbGlqLXBvICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICAgICAgICAgICB8CisgICAgIHhjaGF0ICAgICAgICAgICAgICB8IFtdICAgICAgICBbXSAgICBbXSAgICBbXSAgICBbXSAgICAgW10gW10gICAgW10gfAorICAgICB4ZGctdXNlci1kaXJzICAgICAgfCBbXSAgW10gW10gW10gW10gICAgICAgW10gICAgW10gIFtdIFtdIFtdICAgIFtdIHwKKyAgICAgeGtleWJvYXJkLWNvbmZpZyAgIHwgW10gICAgICAgICAgICAgICAgICAgIFtdICAgIFtdICAgICBbXSAgICAgICAgICB8CisgICAgICAgICAgICAgICAgICAgICAgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgICAgICAgICAgICAgICAgICAgICAgICBmciAgZ2EgZ2wgZ3UgaGUgaGkgaHIgaHUgaHkgaWQgIGlzIGl0IGphIGthIGtuCisgICAgICAgICAgICAgICAgICAgICAgICAgIDEyMSA1MyAyMCAgNCAgOCAgMiAgNSA1MyAgMiAxMjAgIDUgODMgNjYgIDAgIDQKKworICAgICAgICAgICAgICAgICAgICAgICAgICBrbyBrdSBreSBsZyBsdCBsdiBtayBtbCBtbiBtciBtcyBtdCBuYiBuZHMgbmUKKyAgICAgICAgICAgICAgICAgICAgICAgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgICAgYTJwcyAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgIHwKKyAgICAgYWVnaXMgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgYW50LXBob25lICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgYW51YmlzICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgW10gICAgICAgIHwKKyAgICAgYXNwZWxsICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgICAgIHwKKyAgICAgYmFzaCAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgYmZkICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgYmlic2hlbGYgICAgICAgICAgIHwgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgW10gICAgICAgICAgICAgIHwKKyAgICAgYmludXRpbHMgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgYmlzb24gICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgIHwKKyAgICAgYmlzb24tcnVudGltZSAgICAgIHwgICAgICAgW10gICAgW10gW10gICAgICAgICAgICAgW10gICAgW10gICAgICAgIHwKKyAgICAgYmx1ZXotcGluICAgICAgICAgIHwgICAgW10gW10gICAgW10gW10gICAgICAgICAgICAgW10gICAgICAgICAgICAgIHwKKyAgICAgYm9tYm9uby1kdmQgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgYnV6enRhcmQgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgY2Zsb3cgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgY2xpc3AgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgY29yZXV0aWxzICAgICAgICAgIHwgICAgICAgICAgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgY3BpbyAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgY3BwaSAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgY3BwbGliICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgY3J5cHRzZXR1cCAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZGZhcmMgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZGlhbG9nICAgICAgICAgICAgIHwgICAgW10gICAgICAgW10gW10gICAgICAgICAgICAgW10gICAgW10gICAgICAgIHwKKyAgICAgZGljbyAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZGlmZnV0aWxzICAgICAgICAgIHwgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgW10gICAgICAgICAgICAgIHwKKyAgICAgZGluayAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZG9vZGxlICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZTJmc3Byb2dzICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZW5zY3JpcHQgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZXhpZiAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZmV0Y2htYWlsICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZmluZHV0aWxzICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZmxleCAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZnJlZWRpbmsgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgIHwKKyAgICAgZ2FzICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZ2F3ayAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZ2NhbCAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZ2NjICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZ2V0dGV4dC1leGFtcGxlcyAgIHwgICAgICAgW10gICAgICAgW10gICAgICAgICAgICAgW10gW10gICAgICAgICAgIHwKKyAgICAgZ2V0dGV4dC1ydW50aW1lICAgIHwgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZ2V0dGV4dC10b29scyAgICAgIHwgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZ2lwICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgW10gICAgICAgICAgICAgIHwKKyAgICAgZ2pheSAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZ2xpdiAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZ2x1bmFyY2xvY2sgICAgICAgIHwgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZ251YmlmZiAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZ251Y2FzaCAgICAgICAgICAgIHwgKCkgICAgICAgICAgKCkgICAgICAgICAgICAgICAgICAgICAgKCkgICAgICgpIHwKKyAgICAgZ251ZWR1ICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZ251bGliICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZ251bmV0ICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZ251bmV0LWd0ayAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZ251dGxzICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgIHwKKyAgICAgZ29sZCAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZ3BlLWFlcmlhbCAgICAgICAgIHwgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZ3BlLWJlYW0gICAgICAgICAgIHwgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZ3BlLWJsdWV0b290aCAgICAgIHwgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgW10gICAgICAgICAgIHwKKyAgICAgZ3BlLWNhbGVuZGFyICAgICAgIHwgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZ3BlLWNsb2NrICAgICAgICAgIHwgW10gICAgW10gICAgICAgW10gICAgICAgICAgICAgW10gW10gICAgICAgICAgIHwKKyAgICAgZ3BlLWNvbmYgICAgICAgICAgIHwgW10gICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZ3BlLWNvbnRhY3RzICAgICAgIHwgW10gICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZ3BlLWVkaXQgICAgICAgICAgIHwgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZ3BlLWZpbGVtYW5hZ2VyICAgIHwgW10gICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZ3BlLWdvICAgICAgICAgICAgIHwgW10gICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgW10gICAgICAgICAgIHwKKyAgICAgZ3BlLWxvZ2luICAgICAgICAgIHwgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZ3BlLW93bmVyaW5mbyAgICAgIHwgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgW10gICAgICAgICAgICAgIHwKKyAgICAgZ3BlLXBhY2thZ2UgICAgICAgIHwgW10gICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZ3BlLXNrZXRjaGJvb2sgICAgIHwgW10gICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZ3BlLXN1ICAgICAgICAgICAgIHwgW10gICAgW10gICAgICAgW10gICAgICAgICAgICAgW10gW10gW10gICAgICAgIHwKKyAgICAgZ3BlLXRhc2ttYW5hZ2VyICAgIHwgW10gW10gW10gICAgICAgW10gICAgICAgICAgICAgW10gW10gICAgICAgICAgIHwKKyAgICAgZ3BlLXRpbWVzaGVldCAgICAgIHwgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgW10gICAgICAgICAgICAgIHwKKyAgICAgZ3BlLXRvZGF5ICAgICAgICAgIHwgICAgICAgW10gICAgICAgW10gICAgICAgICAgICAgW10gW10gICAgICAgICAgIHwKKyAgICAgZ3BlLXRvZG8gICAgICAgICAgIHwgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgICAgW10gICAgICAgIHwKKyAgICAgZ3Bob3RvMiAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZ3Byb2YgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgIHwKKyAgICAgZ3BzZHJpdmUgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZ3JhbWFkb2lyICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZ3JlcCAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZ3J1YiAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZ3Nhc2wgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZ3NzICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZ3N0LXBsdWdpbnMtYmFkICAgIHwgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgW10gICAgICAgICAgIHwKKyAgICAgZ3N0LXBsdWdpbnMtYmFzZSAgIHwgICAgICAgICAgICAgW10gW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZ3N0LXBsdWdpbnMtZ29vZCAgIHwgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgW10gICAgICAgICAgIHwKKyAgICAgZ3N0LXBsdWdpbnMtdWdseSAgIHwgICAgICAgICAgICAgW10gW10gICAgICAgICAgICAgW10gW10gW10gICAgICAgIHwKKyAgICAgZ3N0cmVhbWVyICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZ3RpY2sgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZ3RrYW0gICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgIHwKKyAgICAgZ3Rrb3JwaGFuICAgICAgICAgIHwgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgICAgICAgW10gICAgIHwKKyAgICAgZ3Rrc3BlbGwgICAgICAgICAgIHwgICAgICAgW10gICAgW10gW10gICAgICAgW10gICAgW10gICAgW10gW10gICAgIHwKKyAgICAgZ3V0ZW5wcmludCAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgaGVsbG8gICAgICAgICAgICAgIHwgW10gICAgICAgICAgICAgW10gICAgICAgICAgICAgW10gICAgICAgICAgICAgIHwKKyAgICAgaGVscDJtYW4gICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgaHlsYWZheCAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgaWR1dGlscyAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgaW5kZW50ICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgaXNvXzE1OTI0ICAgICAgICAgIHwgICAgICAgICAgICAgW10gW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgaXNvXzMxNjYgICAgICAgICAgIHwgW10gW10gICAgICAgKCkgW10gW10gW10gICAgW10gICAgICAgW10gICAgICAgIHwKKyAgICAgaXNvXzMxNjZfMiAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgaXNvXzQyMTcgICAgICAgICAgIHwgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgIHwKKyAgICAgaXNvXzYzOSAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgW10gICAgW10gICAgICAgICAgICAgICAgIHwKKyAgICAgaXNvXzYzOV8zICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgIHwKKyAgICAgandob2lzICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAga2JkICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAga2V5dG91Y2ggICAgICAgICAgIHwgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAga2V5dG91Y2gtZWRpdG9yICAgIHwgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAga2V5dG91Y2gta2V5Ym9hLi4uIHwgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAga2xhdmFybyAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgIHwKKyAgICAgbGF0cmluZSAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgbGQgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgbGVhZnBhZCAgICAgICAgICAgIHwgW10gICAgICAgICAgW10gW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgbGliYyAgICAgICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgbGliZXhpZiAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgbGliZXh0cmFjdG9yICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgbGliZ251dGxzICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgIHwKKyAgICAgbGliZ3Bld2lkZ2V0ICAgICAgIHwgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgW10gICAgICAgICAgICAgIHwKKyAgICAgbGliZ3BnLWVycm9yICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgbGliZ3Bob3RvMiAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgbGliZ3Bob3RvMl9wb3J0ICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgbGliZ3Nhc2wgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgbGliaWNvbnYgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgbGliaWRuICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgbGlmZWxpbmVzICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgbGlmZXJlYSAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgbGlseXBvbmQgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgbGlua2RyICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgbG9yZHNhd2FyICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgbHBybmcgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgbHlueCAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgbTQgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgbWFpbGZyb21kICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgbWFpbHV0aWxzICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgbWFrZSAgICAgICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgbWFuLWRiICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgbWFuLWRiLW1hbnBhZ2VzICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgbWluaWNvbSAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgIHwKKyAgICAgbWtpc29mcyAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgbXlzZXJ2ZXIgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgbmFubyAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgW10gICAgICAgIHwKKyAgICAgb3Bjb2RlcyAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgcGFydGVkICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgcGllcyAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgcG9wdCAgICAgICAgICAgICAgIHwgW10gICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgICAgW10gICAgICAgIHwKKyAgICAgcHNtaXNjICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgcHNwcCAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgcHdkdXRpbHMgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgcmFkaXVzICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgcmVjb2RlICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgcm9zZWdhcmRlbiAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgcnBtICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgcnVzaCAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgc2FyZyAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgc2NyZWVtICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgc2Nyb2xsa2VlcGVyICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgIFtdIHwKKyAgICAgc2VkICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgc2hhcnV0aWxzICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgc2hpc2hpICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgc2tlbmNpbCAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgc29sZmVnZSAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgIHwKKyAgICAgc29sZmVnZS1tYW51YWwgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgc291bmR0cmFja2VyICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgc3AgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgc3lzc3RhdCAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgdGFyICAgICAgICAgICAgICAgIHwgICAgICAgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgdGV4aW5mbyAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgIHwKKyAgICAgdGluICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgdW5pY29kZS1oYW4tdHJhLi4uIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgdW5pY29kZS10cmFuc2xhLi4uIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgdXRpbC1saW51eC1uZyAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgdmljZSAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgdm1tICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgdm9yYmlzLXRvb2xzICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgd2FzdGVzZWRnZSAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgd2RpZmYgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgd2dldCAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgd3lzbGlqLXBvICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgeGNoYXQgICAgICAgICAgICAgIHwgW10gICAgICAgICAgICAgW10gW10gICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgeGRnLXVzZXItZGlycyAgICAgIHwgW10gW10gICAgICAgW10gW10gW10gICAgICAgW10gICAgICAgW10gW10gICAgIHwKKyAgICAgeGtleWJvYXJkLWNvbmZpZyAgIHwgW10gICAgW10gICAgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgICAgICAgICAgICAgICAgICAgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgICAgICAgICAgICAgICAgICAgICAgICAga28ga3Uga3kgbGcgbHQgbHYgbWsgbWwgbW4gbXIgbXMgbXQgbmIgbmRzIG5lCisgICAgICAgICAgICAgICAgICAgICAgICAgIDIwICA1IDEwICAxIDEyIDQ4ICA0ICAyICAyICA0IDI0IDEwIDE5ICAzICAgMQorCisgICAgICAgICAgICAgICAgICAgICAgICAgIG5sICBubiBvciBwYSBwbCAgcHMgcHQgcHRfQlIgcm8gcnUgcncgc2sgc2wgc3Egc3IKKyAgICAgICAgICAgICAgICAgICAgICAgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICAgIGEycHMgICAgICAgICAgICAgICB8IFtdICAgICAgICAgICBbXSAgICAgW10gIFtdICAgW10gW10gICAgICAgW10gICAgW10gfAorICAgICBhZWdpcyAgICAgICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgIFtdICAgICAgICAgICAgICAgIHwKKyAgICAgYW50LXBob25lICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgW10gICBbXSAgICAgICAgICAgICAgICAgICB8CisgICAgIGFudWJpcyAgICAgICAgICAgICB8IFtdICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgfAorICAgICBhc3BlbGwgICAgICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgICAgICAgICAgIFtdIFtdICAgIFtdIFtdICAgICAgIHwKKyAgICAgYmFzaCAgICAgICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICB8CisgICAgIGJmZCAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgfAorICAgICBiaWJzaGVsZiAgICAgICAgICAgfCBbXSAgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgYmludXRpbHMgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgICBbXSAgICAgICAgICB8CisgICAgIGJpc29uICAgICAgICAgICAgICB8IFtdICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgfAorICAgICBiaXNvbi1ydW50aW1lICAgICAgfCBbXSAgICAgICAgICAgW10gICAgIFtdICBbXSAgIFtdIFtdICAgICAgIFtdICAgICAgIHwKKyAgICAgYmx1ZXotcGluICAgICAgICAgIHwgW10gICAgICAgICAgIFtdICAgICAgICAgW10gICBbXSBbXSAgICBbXSBbXSAgICBbXSB8CisgICAgIGJvbWJvbm8tZHZkICAgICAgICB8ICAgICBbXSAgICAgICAgICAgICAgICAgICAgICAgICAgKCkgICAgICAgICAgICAgICAgfAorICAgICBidXp6dGFyZCAgICAgICAgICAgfCBbXSAgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgY2Zsb3cgICAgICAgICAgICAgIHwgICAgICAgICAgICAgIFtdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIGNsaXNwICAgICAgICAgICAgICB8IFtdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgfAorICAgICBjb3JldXRpbHMgICAgICAgICAgfCBbXSAgICAgICAgICAgW10gICAgIFtdICBbXSAgICAgIFtdICAgICAgIFtdICAgICAgIHwKKyAgICAgY3BpbyAgICAgICAgICAgICAgIHwgW10gICAgICAgICAgIFtdICAgICAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgICB8CisgICAgIGNwcGkgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBjcHBsaWIgICAgICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgY3J5cHRzZXR1cCAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIGRmYXJjICAgICAgICAgICAgICB8ICAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBkaWFsb2cgICAgICAgICAgICAgfCBbXSAgICAgICAgICAgW10gICAgICAgICBbXSAgICAgIFtdICAgICAgICAgICAgICAgIHwKKyAgICAgZGljbyAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgIFtdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIGRpZmZ1dGlscyAgICAgICAgICB8IFtdICAgICAgICAgICBbXSAgICAgICAgIFtdICAgW10gW10gICAgICAgICAgICAgW10gfAorICAgICBkaW5rICAgICAgICAgICAgICAgfCAoKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZG9vZGxlICAgICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgICB8CisgICAgIGUyZnNwcm9ncyAgICAgICAgICB8IFtdICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBlbnNjcmlwdCAgICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgICAgICBbXSAgIFtdIFtdICAgICAgIFtdICAgICAgIHwKKyAgICAgZXhpZiAgICAgICAgICAgICAgIHwgW10gICAgICAgICAgIFtdICAgICAgICAgICAgICBbXSAoKSAgICBbXSAgICAgICAgICB8CisgICAgIGZldGNobWFpbCAgICAgICAgICB8IFtdICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgW10gICAgICAgICAgW10gICAgfAorICAgICBmaW5kdXRpbHMgICAgICAgICAgfCBbXSAgICAgICAgICAgW10gICAgIFtdICAgICAgICAgIFtdICAgICAgIFtdICAgICAgIHwKKyAgICAgZmxleCAgICAgICAgICAgICAgIHwgW10gICAgICAgICAgIFtdICAgICAgICAgW10gICBbXSBbXSAgICAgICAgICAgICAgICB8CisgICAgIGZyZWVkaW5rICAgICAgICAgICB8IFtdICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBnYXMgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZ2F3ayAgICAgICAgICAgICAgIHwgW10gICAgICAgICAgIFtdICAgICAgICAgW10gICBbXSAgICAgICAgICAgICAgICAgICB8CisgICAgIGdjYWwgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBnY2MgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtdIHwKKyAgICAgZ2V0dGV4dC1leGFtcGxlcyAgIHwgW10gICAgICAgICAgIFtdICAgICBbXSAgICAgICBbXSBbXSAgICBbXSBbXSAgICBbXSB8CisgICAgIGdldHRleHQtcnVudGltZSAgICB8IFtdICBbXSAgICAgICBbXSAgICAgW10gICAgICAgW10gW10gICAgW10gW10gICAgW10gfAorICAgICBnZXR0ZXh0LXRvb2xzICAgICAgfCAgICAgICAgICAgICAgW10gICAgICAgICAgICAgIFtdIFtdICAgIFtdIFtdICAgIFtdIHwKKyAgICAgZ2lwICAgICAgICAgICAgICAgIHwgW10gICAgICAgICAgIFtdICAgICAgICAgICAgICAgICBbXSAgICBbXSAgICAgICBbXSB8CisgICAgIGdqYXkgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBnbGl2ICAgICAgICAgICAgICAgfCBbXSAgICAgICAgICAgW10gICAgICAgICBbXSAgIFtdIFtdICAgIFtdICAgICAgICAgIHwKKyAgICAgZ2x1bmFyY2xvY2sgICAgICAgIHwgW10gICAgICAgICAgICAgICAgICAgICAgW10gICBbXSAgICAgICBbXSAgICAgICBbXSB8CisgICAgIGdudWJpZmYgICAgICAgICAgICB8IFtdICAgICAgICAgICAgICAgICAgICAgICAgICAgKCkgICAgICAgICAgICAgICAgICAgfAorICAgICBnbnVjYXNoICAgICAgICAgICAgfCBbXSAgICAgICAgICAgKCkgICAgICAgICAoKSAgICAgICgpICAgICAgICAgICAgICAgIHwKKyAgICAgZ251ZWR1ICAgICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIGdudWxpYiAgICAgICAgICAgICB8IFtdICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgW10gICAgICAgW10gICAgICAgfAorICAgICBnbnVuZXQgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZ251bmV0LWd0ayAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIGdudXRscyAgICAgICAgICAgICB8IFtdICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBnb2xkICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZ3BlLWFlcmlhbCAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgICBbXSAgW10gICBbXSBbXSAgICAgICBbXSAgICBbXSB8CisgICAgIGdwZS1iZWFtICAgICAgICAgICB8IFtdICAgICAgICAgICAgICAgICAgW10gIFtdICAgW10gW10gICAgICAgW10gICAgW10gfAorICAgICBncGUtYmx1ZXRvb3RoICAgICAgfCBbXSAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZ3BlLWNhbGVuZGFyICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICBbXSAgICAgICBbXSAgICBbXSB8CisgICAgIGdwZS1jbG9jayAgICAgICAgICB8IFtdICAgICAgICAgICAgICAgICAgW10gIFtdICAgW10gW10gICAgW10gW10gICAgW10gfAorICAgICBncGUtY29uZiAgICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgIFtdICBbXSAgIFtdIFtdICAgIFtdIFtdICAgICAgIHwKKyAgICAgZ3BlLWNvbnRhY3RzICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgW10gICBbXSBbXSAgICAgICBbXSAgICBbXSB8CisgICAgIGdwZS1lZGl0ICAgICAgICAgICB8IFtdICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgfAorICAgICBncGUtZmlsZW1hbmFnZXIgICAgfCBbXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgIFtdICAgICAgIHwKKyAgICAgZ3BlLWdvICAgICAgICAgICAgIHwgW10gICAgICAgICAgIFtdICAgICAgICAgW10gICBbXSBbXSAgICBbXSBbXSAgICBbXSB8CisgICAgIGdwZS1sb2dpbiAgICAgICAgICB8IFtdICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBncGUtb3duZXJpbmZvICAgICAgfCBbXSAgICAgICAgICAgICAgICAgIFtdICBbXSAgIFtdIFtdICAgIFtdIFtdICAgIFtdIHwKKyAgICAgZ3BlLXBhY2thZ2UgICAgICAgIHwgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICB8CisgICAgIGdwZS1za2V0Y2hib29rICAgICB8IFtdICAgICAgICAgICAgICAgICAgW10gIFtdICAgW10gW10gICAgICAgW10gICAgW10gfAorICAgICBncGUtc3UgICAgICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgIFtdICBbXSAgIFtdIFtdICAgIFtdIFtdICAgIFtdIHwKKyAgICAgZ3BlLXRhc2ttYW5hZ2VyICAgIHwgW10gICAgICAgICAgICAgICAgICBbXSAgW10gICBbXSBbXSAgICBbXSBbXSAgICBbXSB8CisgICAgIGdwZS10aW1lc2hlZXQgICAgICB8IFtdICAgICAgICAgICAgICAgICAgW10gIFtdICAgW10gW10gICAgW10gW10gICAgW10gfAorICAgICBncGUtdG9kYXkgICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgIFtdICBbXSAgIFtdIFtdICAgIFtdIFtdICAgIFtdIHwKKyAgICAgZ3BlLXRvZG8gICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgICAgICAgW10gICAgICBbXSAgICAgICBbXSAgICBbXSB8CisgICAgIGdwaG90bzIgICAgICAgICAgICB8IFtdICAgICAgICBbXSBbXSAgICAgICAgIFtdICAgW10gW10gICAgW10gICAgICAgW10gfAorICAgICBncHJvZiAgICAgICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgICAgICBbXSAgIFtdICAgICAgICAgICAgICAgICAgIHwKKyAgICAgZ3BzZHJpdmUgICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgICB8CisgICAgIGdyYW1hZG9pciAgICAgICAgICB8IFtdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgfAorICAgICBncmVwICAgICAgICAgICAgICAgfCBbXSAgICAgICAgICAgW10gICAgICAgICAgICAgICAgIFtdICAgIFtdICAgICAgICAgIHwKKyAgICAgZ3J1YiAgICAgICAgICAgICAgIHwgW10gICAgICAgICAgIFtdICAgICAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgICB8CisgICAgIGdzYXNsICAgICAgICAgICAgICB8IFtdICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgW10gfAorICAgICBnc3MgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgW10gICAgICAgICAgICAgIFtdICAgICAgIFtdICAgICAgICAgIHwKKyAgICAgZ3N0LXBsdWdpbnMtYmFkICAgIHwgW10gICAgICAgICAgIFtdICAgICAgICAgW10gICAgICBbXSAgICBbXSAgICAgICAgICB8CisgICAgIGdzdC1wbHVnaW5zLWJhc2UgICB8IFtdICAgICAgICAgICBbXSAgICAgICAgIFtdICAgICAgW10gICAgW10gICAgICAgICAgfAorICAgICBnc3QtcGx1Z2lucy1nb29kICAgfCBbXSAgICAgICAgICAgW10gICAgICAgICBbXSAgICAgIFtdICAgIFtdICAgICAgICAgIHwKKyAgICAgZ3N0LXBsdWdpbnMtdWdseSAgIHwgW10gICAgICAgICAgIFtdICAgICAgICAgW10gICAgICBbXSAgICBbXSBbXSAgICAgICB8CisgICAgIGdzdHJlYW1lciAgICAgICAgICB8IFtdICAgICAgICAgICBbXSAgICAgICAgIFtdICAgICAgW10gICAgW10gICAgICAgICAgfAorICAgICBndGljayAgICAgICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgIFtdICAgICAgICAgIHwKKyAgICAgZ3RrYW0gICAgICAgICAgICAgIHwgW10gICAgICAgIFtdIFtdICAgICAgICAgW10gICAgICBbXSAgICBbXSAgICAgICAgICB8CisgICAgIGd0a29ycGhhbiAgICAgICAgICB8IFtdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBndGtzcGVsbCAgICAgICAgICAgfCBbXSAgICAgICAgICAgW10gICAgIFtdICBbXSAgIFtdIFtdICAgIFtdIFtdIFtdIFtdIHwKKyAgICAgZ3V0ZW5wcmludCAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgICB8CisgICAgIGhlbGxvICAgICAgICAgICAgICB8IFtdICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgICAgICAgW10gW10gICAgICAgfAorICAgICBoZWxwMm1hbiAgICAgICAgICAgfCAgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgIFtdICAgICAgICAgICAgICAgIHwKKyAgICAgaHlsYWZheCAgICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIGlkdXRpbHMgICAgICAgICAgICB8IFtdICAgICAgICAgICBbXSAgICAgICAgIFtdICAgW10gW10gICAgICAgICAgICAgICAgfAorICAgICBpbmRlbnQgICAgICAgICAgICAgfCBbXSAgICAgICAgICAgW10gICAgICAgICBbXSAgIFtdIFtdICAgIFtdICAgICAgIFtdIHwKKyAgICAgaXNvXzE1OTI0ICAgICAgICAgIHwgW10gICAgICAgICAgIFtdICAgICAgICAgICAgICAgICBbXSAgICAgICBbXSAgICAgICB8CisgICAgIGlzb18zMTY2ICAgICAgICAgICB8IFtdICBbXSBbXSBbXSBbXSAgICAgKCkgIFtdICAgW10gW10gW10gW10gW10gW10gW10gfAorICAgICBpc29fMzE2Nl8yICAgICAgICAgfCBbXSAgICAgICAgICAgW10gICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgIHwKKyAgICAgaXNvXzQyMTcgICAgICAgICAgIHwgW10gIFtdICAgICAgIFtdICAgICBbXSAgICAgICAgICBbXSBbXSAgICBbXSAgICBbXSB8CisgICAgIGlzb182MzkgICAgICAgICAgICB8IFtdICAgICBbXSBbXSBbXSAgICAgICAgICAgICAgICAgW10gW10gW10gW10gICAgW10gfAorICAgICBpc29fNjM5XzMgICAgICAgICAgfCAgICAgICAgW10gW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgandob2lzICAgICAgICAgICAgIHwgW10gICAgICAgICAgIFtdICAgICAgICAgW10gICBbXSAgICAgICAgICAgICAgICAgICB8CisgICAgIGtiZCAgICAgICAgICAgICAgICB8IFtdICAgICAgICAgICBbXSAgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgICAgfAorICAgICBrZXl0b3VjaCAgICAgICAgICAgfCBbXSAgICAgICAgICAgW10gICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICAgIHwKKyAgICAga2V5dG91Y2gtZWRpdG9yICAgIHwgW10gICAgICAgICAgIFtdICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICB8CisgICAgIGtleXRvdWNoLWtleWJvYS4uLiB8IFtdICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgfAorICAgICBrbGF2YXJvICAgICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgbGF0cmluZSAgICAgICAgICAgIHwgICAgICAgICAgICAgIFtdICAgICAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgICB8CisgICAgIGxkICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBsZWFmcGFkICAgICAgICAgICAgfCBbXSAgW10gICAgICAgW10gICAgIFtdICBbXSAgICAgIFtdICAgIFtdIFtdICAgIFtdIHwKKyAgICAgbGliYyAgICAgICAgICAgICAgIHwgW10gICAgICAgICAgIFtdICAgICAgICAgICAgICAgICBbXSAgICBbXSAgICAgICAgICB8CisgICAgIGxpYmV4aWYgICAgICAgICAgICB8IFtdICAgICAgICAgICBbXSAgICAgICAgICgpICAgICAgICAgICAgW10gICAgICAgICAgfAorICAgICBsaWJleHRyYWN0b3IgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgbGliZ251dGxzICAgICAgICAgIHwgW10gICAgICAgICAgIFtdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIGxpYmdwZXdpZGdldCAgICAgICB8IFtdICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgfAorICAgICBsaWJncGctZXJyb3IgICAgICAgfCAgICAgICAgICAgICAgW10gICAgICAgICAgICAgIFtdICAgICAgICAgICAgICAgICAgIHwKKyAgICAgbGliZ3Bob3RvMiAgICAgICAgIHwgW10gICAgICAgICAgIFtdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIGxpYmdwaG90bzJfcG9ydCAgICB8IFtdICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgW10gICAgW10gICAgICAgICAgfAorICAgICBsaWJnc2FzbCAgICAgICAgICAgfCBbXSAgICAgICAgICAgW10gICAgICAgICAgICAgIFtdICAgICAgIFtdICAgICAgIFtdIHwKKyAgICAgbGliaWNvbnYgICAgICAgICAgIHwgW10gICAgICAgICAgIFtdICAgICAgICAgICAgICAgICAgICAgICBbXSBbXSAgICBbXSB8CisgICAgIGxpYmlkbiAgICAgICAgICAgICB8IFtdICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBsaWZlbGluZXMgICAgICAgICAgfCBbXSAgICAgICAgICAgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgbGlmZXJlYSAgICAgICAgICAgIHwgW10gICAgICAgICAgIFtdICAgICBbXSAgW10gICBbXSAoKSAgICAoKSAgICBbXSAgICB8CisgICAgIGxpbHlwb25kICAgICAgICAgICB8IFtdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBsaW5rZHIgICAgICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgIFtdICAgICAgICAgIFtdICAgICAgICAgICAgICAgIHwKKyAgICAgbG9yZHNhd2FyICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIGxwcm5nICAgICAgICAgICAgICB8ICAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBseW54ICAgICAgICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgIFtdICAgICAgICAgICAgICAgIHwKKyAgICAgbTQgICAgICAgICAgICAgICAgIHwgW10gICAgICAgICAgIFtdICAgICAgICAgW10gICBbXSBbXSAgICAgICAgICAgICAgICB8CisgICAgIG1haWxmcm9tZCAgICAgICAgICB8ICAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBtYWlsdXRpbHMgICAgICAgICAgfCAgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgbWFrZSAgICAgICAgICAgICAgIHwgW10gICAgICAgICAgIFtdICAgICAgICAgW10gICAgICBbXSAgICAgICAgICAgICAgICB8CisgICAgIG1hbi1kYiAgICAgICAgICAgICB8IFtdICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgfAorICAgICBtYW4tZGItbWFucGFnZXMgICAgfCBbXSAgICAgICAgICAgW10gICAgICAgICAgICAgICAgIFtdICAgICAgICAgICAgICAgIHwKKyAgICAgbWluaWNvbSAgICAgICAgICAgIHwgICAgICAgICAgICAgIFtdICAgICAgICAgW10gICBbXSBbXSAgICAgICAgICAgICAgICB8CisgICAgIG1raXNvZnMgICAgICAgICAgICB8IFtdICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgfAorICAgICBteXNlcnZlciAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgbmFubyAgICAgICAgICAgICAgIHwgW10gICAgICAgICAgIFtdICAgICAgICAgW10gICAgICBbXSAgICAgICAgICAgICAgICB8CisgICAgIG9wY29kZXMgICAgICAgICAgICB8IFtdICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgICAgfAorICAgICBwYXJ0ZWQgICAgICAgICAgICAgfCBbXSAgICAgICAgICAgW10gICAgICAgICAgICAgICAgIFtdICAgIFtdICAgICAgICAgIHwKKyAgICAgcGllcyAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgIFtdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIHBvcHQgICAgICAgICAgICAgICB8IFtdICAgICAgICAgICBbXSAgICAgW10gICAgICAgICAgW10gICAgICAgICAgICAgICAgfAorICAgICBwc21pc2MgICAgICAgICAgICAgfCBbXSAgICAgICAgICAgW10gICAgICAgICAgICAgICAgIFtdICAgICAgICAgICAgICAgIHwKKyAgICAgcHNwcCAgICAgICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIHB3ZHV0aWxzICAgICAgICAgICB8ICAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICByYWRpdXMgICAgICAgICAgICAgfCBbXSAgICAgICAgICAgW10gICAgICAgICAgICAgICAgIFtdICAgICAgICAgICAgICAgIHwKKyAgICAgcmVjb2RlICAgICAgICAgICAgIHwgW10gICAgICAgICAgIFtdICAgICBbXSAgW10gICBbXSBbXSAgICBbXSBbXSAgICAgICB8CisgICAgIHJvc2VnYXJkZW4gICAgICAgICB8ICAgICAgICAgICAgICAoKSAgICAgICAgICAgICAgICAgKCkgICAgICAgICAgICAgICAgfAorICAgICBycG0gICAgICAgICAgICAgICAgfCBbXSAgICAgICAgICAgW10gICAgIFtdICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgcnVzaCAgICAgICAgICAgICAgIHwgW10gICAgICAgICAgIFtdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIHNhcmcgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBzY3JlZW0gICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgc2Nyb2xsa2VlcGVyICAgICAgIHwgW10gIFtdICAgICAgIFtdICAgICAgICAgICAgICBbXSBbXSAgICBbXSAgICBbXSBbXSB8CisgICAgIHNlZCAgICAgICAgICAgICAgICB8IFtdICAgICAgICAgICBbXSAgICAgW10gIFtdICAgW10gW10gICAgW10gW10gICAgW10gfAorICAgICBzaGFydXRpbHMgICAgICAgICAgfCBbXSAgICAgICAgICAgW10gICAgICAgICAgICAgICAgIFtdICAgICAgICAgICAgIFtdIHwKKyAgICAgc2hpc2hpICAgICAgICAgICAgIHwgICAgICAgICAgICAgIFtdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIHNrZW5jaWwgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgW10gIFtdICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICBzb2xmZWdlICAgICAgICAgICAgfCBbXSAgICAgICAgICAgW10gICAgICAgICBbXSAgICAgIFtdICAgICAgICAgICAgICAgIHwKKyAgICAgc29sZmVnZS1tYW51YWwgICAgIHwgW10gICAgICAgICAgIFtdICAgICAgICAgW10gICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIHNvdW5kdHJhY2tlciAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgfAorICAgICBzcCAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgc3lzc3RhdCAgICAgICAgICAgIHwgW10gICAgICAgICAgIFtdICAgICAgICAgW10gICAgICBbXSAgICAgICAgICAgICAgICB8CisgICAgIHRhciAgICAgICAgICAgICAgICB8IFtdICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgW10gICAgICAgW10gICAgICAgfAorICAgICB0ZXhpbmZvICAgICAgICAgICAgfCBbXSAgICAgICAgICAgW10gICAgICAgICAgICAgIFtdIFtdICAgICAgICAgICAgICAgIHwKKyAgICAgdGluICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgICB8CisgICAgIHVuaWNvZGUtaGFuLXRyYS4uLiB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICB1bmljb2RlLXRyYW5zbGEuLi4gfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgdXRpbC1saW51eC1uZyAgICAgIHwgW10gICAgICAgICAgIFtdICAgICAgICAgW10gICAgICBbXSAgICAgICBbXSAgICAgICB8CisgICAgIHZpY2UgICAgICAgICAgICAgICB8IFtdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICB2bW0gICAgICAgICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgdm9yYmlzLXRvb2xzICAgICAgIHwgW10gICAgICAgICAgIFtdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgIHdhc3Rlc2VkZ2UgICAgICAgICB8IFtdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICB3ZGlmZiAgICAgICAgICAgICAgfCBbXSAgICAgICAgICAgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICAgd2dldCAgICAgICAgICAgICAgIHwgW10gICAgICAgICAgIFtdICAgICBbXSAgW10gICAgICBbXSAgICBbXSBbXSAgICAgICB8CisgICAgIHd5c2xpai1wbyAgICAgICAgICB8IFtdICBbXSAgICAgICBbXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICB4Y2hhdCAgICAgICAgICAgICAgfCBbXSAgICAgICAgW10gW10gICAgIFtdICAgICAgICAgIFtdICAgIFtdIFtdIFtdIFtdIHwKKyAgICAgeGRnLXVzZXItZGlycyAgICAgIHwgW10gIFtdIFtdIFtdIFtdICBbXSBbXSAgW10gICBbXSBbXSAgICBbXSBbXSBbXSBbXSB8CisgICAgIHhrZXlib2FyZC1jb25maWcgICB8IFtdICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgW10gICAgW10gW10gICAgICAgfAorICAgICAgICAgICAgICAgICAgICAgICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgbmwgIG5uIG9yIHBhIHBsICBwcyBwdCBwdF9CUiBybyBydSBydyBzayBzbCBzcSBzcgorICAgICAgICAgICAgICAgICAgICAgICAgICAxMzUgMTAgIDQgIDcgMTA1ICAxIDI5ICA2MSAgIDQ3IDkxICAzIDU1IDQ3ICA4IDM3CisKKyAgICAgICAgICAgICAgICAgICAgICAgICAgc3YgIHN3IHRhIHRlIHRnIHRoIHRyIHVrIHZpICB3YSB6aF9DTiB6aF9ISyB6aF9UVworICAgICAgICAgICAgICAgICAgICAgICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgICAgYTJwcyAgICAgICAgICAgICAgIHwgW10gICAgICAgICAgICAgIFtdIFtdIFtdIFtdICAgICAgICAgICAgICAgICAgICAgICB8IDI3CisgICAgIGFlZ2lzICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgICAgICAgfCAgOQorICAgICBhbnQtcGhvbmUgICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgW10gICAgW10gICAgICBbXSAgICAgICAgICAgICAgIHwgIDkKKyAgICAgYW51YmlzICAgICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgIFtdIFtdIFtdICAgICAgICAgICAgICAgICAgICAgICB8IDE1CisgICAgIGFzcGVsbCAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICBbXSBbXSAgW10gICAgICAgICAgICAgICAgICAgfCAyMAorICAgICBiYXNoICAgICAgICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgICAgICAgIHwgMTEKKyAgICAgYmZkICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICAgICAgICAgICAgICAgICB8ICA2CisgICAgIGJpYnNoZWxmICAgICAgICAgICB8IFtdICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgIFtdICAgICAgICAgICAgICAgfCAxNgorICAgICBiaW51dGlscyAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgW10gW10gICAgICAgICAgICAgICAgICAgICAgIHwgIDgKKyAgICAgYmlzb24gICAgICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICAgICAgICAgICAgICAgICB8IDEyCisgICAgIGJpc29uLXJ1bnRpbWUgICAgICB8IFtdICAgICAgICAgICAgICBbXSAgICBbXSBbXSAgICAgIFtdICAgICAgICAgIFtdICAgfCAyOQorICAgICBibHVlei1waW4gICAgICAgICAgfCBbXSAgICAgICAgICAgICAgW10gW10gW10gW10gIFtdICBbXSAgICAgICAgICBbXSAgIHwgMzcKKyAgICAgYm9tYm9uby1kdmQgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICAgICAgICAgICAgICAgICB8ICA0CisgICAgIGJ1enp0YXJkICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgICAgICAgfCAgNworICAgICBjZmxvdyAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgW10gW10gICAgICBbXSAgICAgICAgICAgICAgIHwgIDkKKyAgICAgY2xpc3AgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IDEwCisgICAgIGNvcmV1dGlscyAgICAgICAgICB8IFtdICAgICAgICAgICAgICAgICAgICBbXSBbXSAgICAgIFtdICAgICAgICAgICAgICAgfCAyMgorICAgICBjcGlvICAgICAgICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgW10gW10gW10gICAgICBbXSAgICAgICAgICBbXSAgIHwgMTMKKyAgICAgY3BwaSAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgIFtdIFtdICAgICAgICAgICAgICAgICAgICAgICB8ICA1CisgICAgIGNwcGxpYiAgICAgICAgICAgICB8IFtdICAgICAgICAgICAgICAgICBbXSBbXSBbXSAgICAgIFtdICAgICAgICAgIFtdICAgfCAxMworICAgICBjcnlwdHNldHVwICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgICAgICAgIHwgIDcKKyAgICAgZGZhcmMgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICAgICAgICAgICAgICAgICB8ICA5CisgICAgIGRpYWxvZyAgICAgICAgICAgICB8IFtdICBbXSAgICAgICAgICBbXSAgICAgICBbXSAgW10gIFtdICAgICAgICAgIFtdICAgfCAzMAorICAgICBkaWNvICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDIKKyAgICAgZGlmZnV0aWxzICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgIFtdIFtdIFtdICAgICAgW10gICAgICAgICAgW10gICB8IDMwCisgICAgIGRpbmsgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgNAorICAgICBkb29kbGUgICAgICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgICAgICAgIHwgIDcKKyAgICAgZTJmc3Byb2dzICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgIFtdICAgIFtdICAgICAgICAgICAgICAgICAgICAgICB8IDExCisgICAgIGVuc2NyaXB0ICAgICAgICAgICB8IFtdICAgICAgICAgICAgICAgICBbXSBbXSBbXSAgICAgICAgICAgICAgICAgICAgICAgfCAxNworICAgICBleGlmICAgICAgICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICBbXSAgICAgICAgICAgICAgIHwgMTYKKyAgICAgZmV0Y2htYWlsICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgIFtdICAgIFtdICAgICAgW10gICAgICAgICAgICAgICB8IDE3CisgICAgIGZpbmR1dGlscyAgICAgICAgICB8IFtdICAgICAgICAgICAgICAgICBbXSBbXSBbXSAgICAgIFtdICAgICAgICAgICAgICAgfCAyMAorICAgICBmbGV4ICAgICAgICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgW10gICAgW10gICAgICAgICAgICAgICAgICBbXSAgIHwgMTUKKyAgICAgZnJlZWRpbmsgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICAgICAgICAgICAgICAgICB8IDEwCisgICAgIGdhcyAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgNAorICAgICBnYXdrICAgICAgICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgW10gICAgW10gICAgICBbXSAgICAgICAgICAgICAgIHwgMTgKKyAgICAgZ2NhbCAgICAgICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgIFtdICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICA1CisgICAgIGdjYyAgICAgICAgICAgICAgICB8IFtdICAgICAgICAgICAgICAgICBbXSAgICAgICAgICAgIFtdICAgICAgICAgICAgICAgfCAgNworICAgICBnZXR0ZXh0LWV4YW1wbGVzICAgfCBbXSAgICAgICAgICAgICAgICAgW10gW10gW10gICAgICBbXSAgICBbXSAgICBbXSAgIHwgMzQKKyAgICAgZ2V0dGV4dC1ydW50aW1lICAgIHwgW10gICAgICAgICAgICAgICAgIFtdIFtdIFtdICAgICAgW10gICAgW10gICAgW10gICB8IDMwCisgICAgIGdldHRleHQtdG9vbHMgICAgICB8IFtdICAgICAgICAgICAgICAgICBbXSBbXSBbXSAgICAgIFtdICAgICAgICAgIFtdICAgfCAyMgorICAgICBnaXAgICAgICAgICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICBbXSAgICAgICAgICBbXSAgIHwgMjIKKyAgICAgZ2pheSAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICAgICAgICAgICAgICAgICB8ICAzCisgICAgIGdsaXYgICAgICAgICAgICAgICB8IFtdICAgICAgICAgICAgICAgICBbXSAgICBbXSAgICAgICAgICAgICAgICAgICAgICAgfCAxNAorICAgICBnbHVuYXJjbG9jayAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgICAgICAgW10gIFtdICBbXSAgICAgICAgICBbXSAgIHwgMTkKKyAgICAgZ251YmlmZiAgICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICAgICAgICAgICAgICAgICB8ICA0CisgICAgIGdudWNhc2ggICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAoKSBbXSAoKSAgICAgICAgICAgICAgICAgICgpICAgfCAgOQorICAgICBnbnVlZHUgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgICBbXSAgIHwgIDcKKyAgICAgZ251bGliICAgICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgICAgIFtdIFtdICAgICAgW10gICAgICAgICAgICAgICB8IDE2CisgICAgIGdudW5ldCAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgICAgICAgfCAgMQorICAgICBnbnVuZXQtZ3RrICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgW10gICAgW10gICAgICAgICAgICAgICAgICAgICAgIHwgIDUKKyAgICAgZ251dGxzICAgICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgW10gICAgICAgICAgICAgICB8IDEwCisgICAgIGdvbGQgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgICAgICAgfCAgNAorICAgICBncGUtYWVyaWFsICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICBbXSAgICAgICAgICAgICAgIHwgMTgKKyAgICAgZ3BlLWJlYW0gICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgW10gICAgICAgICAgICAgICB8IDE5CisgICAgIGdwZS1ibHVldG9vdGggICAgICB8IFtdICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgIFtdICAgICAgICAgICAgICAgfCAxMworICAgICBncGUtY2FsZW5kYXIgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgICAgICAgW10gIFtdICBbXSAgICAgICAgICAgICAgIHwgMTIKKyAgICAgZ3BlLWNsb2NrICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgIFtdICAgIFtdICBbXSAgW10gICAgICAgICAgICAgICB8IDI4CisgICAgIGdwZS1jb25mICAgICAgICAgICB8IFtdICAgICAgICAgICAgICAgICAgICAgICBbXSAgW10gIFtdICAgICAgICAgICAgICAgfCAyMAorICAgICBncGUtY29udGFjdHMgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICBbXSAgICAgICAgICAgICAgIHwgMTcKKyAgICAgZ3BlLWVkaXQgICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgW10gICAgICAgICAgICAgICB8IDEyCisgICAgIGdwZS1maWxlbWFuYWdlciAgICB8IFtdICAgICAgICAgICAgICAgICAgICAgICBbXSAgW10gIFtdICAgICAgICAgICAgICAgfCAxNgorICAgICBncGUtZ28gICAgICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgW10gICAgW10gIFtdICBbXSAgICAgICAgICAgICAgIHwgMjUKKyAgICAgZ3BlLWxvZ2luICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgW10gICAgICAgICAgICAgICB8IDExCisgICAgIGdwZS1vd25lcmluZm8gICAgICB8IFtdICAgICAgICAgICAgICAgICBbXSAgICBbXSAgICAgIFtdICAgICAgICAgIFtdICAgfCAyNQorICAgICBncGUtcGFja2FnZSAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICBbXSAgICAgICAgICAgICAgIHwgMTMKKyAgICAgZ3BlLXNrZXRjaGJvb2sgICAgIHwgW10gICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgW10gICAgICAgICAgICAgICB8IDIwCisgICAgIGdwZS1zdSAgICAgICAgICAgICB8IFtdICAgICAgICAgICAgICAgICBbXSAgICBbXSAgW10gIFtdICAgICAgICAgICAgICAgfCAzMAorICAgICBncGUtdGFza21hbmFnZXIgICAgfCBbXSAgICAgICAgICAgICAgICAgW10gICAgW10gIFtdICBbXSAgICAgICAgICAgICAgIHwgMjkKKyAgICAgZ3BlLXRpbWVzaGVldCAgICAgIHwgW10gICAgICAgICAgICAgICAgIFtdICAgIFtdICAgICAgW10gICAgICAgICAgW10gICB8IDI1CisgICAgIGdwZS10b2RheSAgICAgICAgICB8IFtdICAgICAgICAgICAgICAgICBbXSAgICBbXSAgW10gIFtdICAgICAgICAgIFtdICAgfCAzMAorICAgICBncGUtdG9kbyAgICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgICAgICAgW10gIFtdICBbXSAgICAgICAgICAgICAgIHwgMTcKKyAgICAgZ3Bob3RvMiAgICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgICAgIFtdIFtdICAgICAgW10gICAgICAgICAgW10gICB8IDI0CisgICAgIGdwcm9mICAgICAgICAgICAgICB8IFtdICAgICAgICAgICAgICAgICBbXSAgICBbXSAgICAgICAgICAgICAgICAgICAgICAgfCAxNQorICAgICBncHNkcml2ZSAgICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICBbXSAgICAgICAgICAgICAgIHwgMTEKKyAgICAgZ3JhbWFkb2lyICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgW10gICAgICAgICAgICAgICB8IDExCisgICAgIGdyZXAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICBbXSAgICAgICBbXSAgICAgIFtdICAgICAgICAgICAgICAgfCAxMAorICAgICBncnViICAgICAgICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICBbXSAgICAgICAgICAgICAgIHwgMTQKKyAgICAgZ3Nhc2wgICAgICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgW10gICAgICAgICAgW10gICB8IDE0CisgICAgIGdzcyAgICAgICAgICAgICAgICB8IFtdICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgIFtdICAgICAgICAgICAgICAgfCAxMQorICAgICBnc3QtcGx1Z2lucy1iYWQgICAgfCBbXSAgICAgICAgICAgICAgICAgW10gICAgW10gICAgICBbXSAgICAgICAgICAgICAgIHwgMjIKKyAgICAgZ3N0LXBsdWdpbnMtYmFzZSAgIHwgW10gICAgICAgICAgICAgICAgIFtdIFtdIFtdICAgICAgW10gICAgICAgICAgICAgICB8IDI0CisgICAgIGdzdC1wbHVnaW5zLWdvb2QgICB8IFtdICAgICAgICAgICAgICAgICBbXSBbXSBbXSAgICAgIFtdICAgICAgICAgICAgICAgfCAyNQorICAgICBnc3QtcGx1Z2lucy11Z2x5ICAgfCBbXSAgICAgICAgICAgICAgICAgW10gW10gW10gICAgICBbXSAgICAgICAgICAgICAgIHwgMjkKKyAgICAgZ3N0cmVhbWVyICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgICAgIFtdIFtdICAgICAgW10gICAgICAgICAgICAgICB8IDIyCisgICAgIGd0aWNrICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICBbXSBbXSAgICAgIFtdICAgICAgICAgICAgICAgfCAxMworICAgICBndGthbSAgICAgICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICBbXSAgICAgICAgICAgICAgIHwgMjAKKyAgICAgZ3Rrb3JwaGFuICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgW10gICAgICAgICAgICAgICB8IDE0CisgICAgIGd0a3NwZWxsICAgICAgICAgICB8IFtdICAgICAgICAgICAgICBbXSBbXSBbXSBbXSAgW10gIFtdICAgIFtdICAgIFtdICAgfCA0NQorICAgICBndXRlbnByaW50ICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgMTAKKyAgICAgaGVsbG8gICAgICAgICAgICAgIHwgW10gICAgICAgICAgICAgIFtdIFtdICAgIFtdICAgICAgW10gICAgICAgICAgW10gICB8IDIxCisgICAgIGhlbHAybWFuICAgICAgICAgICB8IFtdICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgICAgICAgfCAgNworICAgICBoeWxhZmF4ICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgICAgICAgIHwgIDUKKyAgICAgaWR1dGlscyAgICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgIFtdICAgIFtdICAgICAgW10gICAgICAgICAgICAgICB8IDE3CisgICAgIGluZGVudCAgICAgICAgICAgICB8IFtdICAgICAgICAgICAgICAgICBbXSBbXSBbXSAgICAgIFtdICAgICAgICAgIFtdICAgfCAzMAorICAgICBpc29fMTU5MjQgICAgICAgICAgfCAgICAgICAgICAgICAgICAgKCkgICAgW10gKCkgICAgICBbXSAgICAgICAgICBbXSAgIHwgMTYKKyAgICAgaXNvXzMxNjYgICAgICAgICAgIHwgW10gICAgICAgIFtdICAgICgpIFtdIFtdICgpICBbXSAgW10gICAgW10gICAgKCkgICB8IDUzCisgICAgIGlzb18zMTY2XzIgICAgICAgICB8ICAgICAgICAgICAgICAgICAoKSAgICBbXSAoKSAgICAgIFtdICAgICAgICAgICAgICAgfCAgOQorICAgICBpc29fNDIxNyAgICAgICAgICAgfCBbXSAgICAgICAgICAgICAgKCkgW10gW10gKCkgICAgICBbXSAgICBbXSAgICAgICAgIHwgMjYKKyAgICAgaXNvXzYzOSAgICAgICAgICAgIHwgW10gICAgIFtdIFtdICAgICgpICAgIFtdICgpICBbXSAgW10gICAgW10gICAgW10gICB8IDM4CisgICAgIGlzb182MzlfMyAgICAgICAgICB8ICAgICAgICBbXSAgICAgICAgICAgICAgICAoKSAgICAgICAgICAgICAgICAgICAgICAgfCAgOAorICAgICBqd2hvaXMgICAgICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgW10gICAgW10gICAgICBbXSAgICAgICAgICBbXSAgIHwgMTYKKyAgICAga2JkICAgICAgICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgIFtdIFtdIFtdICAgICAgW10gICAgICAgICAgICAgICB8IDE1CisgICAgIGtleXRvdWNoICAgICAgICAgICB8IFtdICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgIFtdICAgICAgICAgICAgICAgfCAxNgorICAgICBrZXl0b3VjaC1lZGl0b3IgICAgfCBbXSAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICBbXSAgICAgICAgICAgICAgIHwgMTQKKyAgICAga2V5dG91Y2gta2V5Ym9hLi4uIHwgW10gICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgW10gICAgICAgICAgICAgICB8IDE0CisgICAgIGtsYXZhcm8gICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgICAgICAgfCAxMQorICAgICBsYXRyaW5lICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgW10gICAgW10gICAgICBbXSAgICAgICAgICAgICAgIHwgMTAKKyAgICAgbGQgICAgICAgICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgIFtdICAgIFtdICAgICAgICAgICAgICAgICAgW10gICB8IDExCisgICAgIGxlYWZwYWQgICAgICAgICAgICB8IFtdICAgICAgICAgICAgICAgICBbXSBbXSBbXSAgICAgIFtdICAgICAgICAgIFtdICAgfCAzMworICAgICBsaWJjICAgICAgICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgW10gICAgW10gICAgICBbXSAgICAgICAgICBbXSAgIHwgMjEKKyAgICAgbGliZXhpZiAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgKCkgICAgICAgICAgICAgICB8ICA2CisgICAgIGxpYmV4dHJhY3RvciAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgICAgICAgfCAgMQorICAgICBsaWJnbnV0bHMgICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICBbXSAgICAgICAgICAgICAgIHwgIDkKKyAgICAgbGliZ3Bld2lkZ2V0ICAgICAgIHwgW10gICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgW10gICAgICAgICAgICAgICB8IDE0CisgICAgIGxpYmdwZy1lcnJvciAgICAgICB8IFtdICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgIFtdICAgICAgICAgICAgICAgfCAgOQorICAgICBsaWJncGhvdG8yICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgW10gW10gICAgICAgICAgICAgICAgICAgICAgIHwgIDgKKyAgICAgbGliZ3Bob3RvMl9wb3J0ICAgIHwgW10gICAgICAgICAgICAgICAgICAgIFtdIFtdICAgICAgICAgICAgICAgICAgW10gICB8IDEzCisgICAgIGxpYmdzYXNsICAgICAgICAgICB8IFtdICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgIFtdICAgICAgICAgICAgICAgfCAxMworICAgICBsaWJpY29udiAgICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgICAgICAgW10gIFtdICBbXSAgICAgICAgICAgICAgIHwgMjEKKyAgICAgbGliaWRuICAgICAgICAgICAgIHwgKCkgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgW10gICAgICAgICAgICAgICB8IDExCisgICAgIGxpZmVsaW5lcyAgICAgICAgICB8IFtdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgNAorICAgICBsaWZlcmVhICAgICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgW10gICAgICAgICAgICBbXSAgICAgICAgICAgICAgIHwgMjEKKyAgICAgbGlseXBvbmQgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICAgICAgICAgICAgICAgICB8ICA3CisgICAgIGxpbmtkciAgICAgICAgICAgICB8IFtdICAgICAgICAgICAgICAgICBbXSAgICBbXSAgICAgIFtdICAgICAgICAgIFtdICAgfCAxNworICAgICBsb3Jkc2F3YXIgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDEKKyAgICAgbHBybmcgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICAgICAgICAgICAgICAgICB8ICAzCisgICAgIGx5bnggICAgICAgICAgICAgICB8IFtdICAgICAgICAgICAgICAgICBbXSBbXSBbXSAgICAgICAgICAgICAgICAgICAgICAgfCAxNworICAgICBtNCAgICAgICAgICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICBbXSAgICAgICAgICBbXSAgIHwgMTkKKyAgICAgbWFpbGZyb21kICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgIFtdIFtdICAgICAgICAgICAgICAgICAgICAgICB8ICAzCisgICAgIG1haWx1dGlscyAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgICAgICAgfCAgNQorICAgICBtYWtlICAgICAgICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgW10gICAgW10gICAgICBbXSAgICAgICAgICAgICAgIHwgMjEKKyAgICAgbWFuLWRiICAgICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgW10gICAgICAgICAgICAgICB8ICA4CisgICAgIG1hbi1kYi1tYW5wYWdlcyAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgNAorICAgICBtaW5pY29tICAgICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgICAgICAgIHwgMTYKKyAgICAgbWtpc29mcyAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgW10gICAgICAgICAgICAgICB8ICA5CisgICAgIG15c2VydmVyICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMAorICAgICBuYW5vICAgICAgICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICBbXSAgICAgICAgICBbXSAgIHwgMjEKKyAgICAgb3Bjb2RlcyAgICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgIFtdICAgIFtdICAgICAgICAgICAgICAgICAgICAgICB8IDExCisgICAgIHBhcnRlZCAgICAgICAgICAgICB8IFtdICAgICAgICAgICAgICAgICBbXSBbXSBbXSAgICAgICAgICAgICAgICAgIFtdICAgfCAxNQorICAgICBwaWVzICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgW10gW10gICAgICAgICAgICAgICAgICAgICAgIHwgIDMKKyAgICAgcG9wdCAgICAgICAgICAgICAgIHwgW10gICAgICAgICAgICAgIFtdIFtdICAgIFtdICAgICAgW10gICAgICAgICAgW10gICB8IDI3CisgICAgIHBzbWlzYyAgICAgICAgICAgICB8IFtdICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgICAgICAgfCAxMQorICAgICBwc3BwICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDQKKyAgICAgcHdkdXRpbHMgICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICAgICAgICAgICAgICAgICB8ICA2CisgICAgIHJhZGl1cyAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICBbXSBbXSAgICAgICAgICAgICAgICAgICAgICAgfCAgOQorICAgICByZWNvZGUgICAgICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgW10gICAgW10gICAgICBbXSAgICAgICAgICAgICAgIHwgMjgKKyAgICAgcm9zZWdhcmRlbiAgICAgICAgIHwgKCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAwCisgICAgIHJwbSAgICAgICAgICAgICAgICB8IFtdICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgIFtdICAgfCAxMQorICAgICBydXNoICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgW10gW10gICAgICAgICAgICAgICAgICAgICAgIHwgIDQKKyAgICAgc2FyZyAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAxCisgICAgIHNjcmVlbSAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgICAgICAgfCAgMworICAgICBzY3JvbGxrZWVwZXIgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgW10gW10gW10gICAgICAgICAgICAgICAgICBbXSAgIHwgMjcKKyAgICAgc2VkICAgICAgICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgIFtdICAgIFtdICAgICAgW10gICAgICAgICAgW10gICB8IDMwCisgICAgIHNoYXJ1dGlscyAgICAgICAgICB8IFtdICAgICAgICAgICAgICAgICBbXSAgICBbXSAgICAgIFtdICAgICAgICAgIFtdICAgfCAyMgorICAgICBzaGlzaGkgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgICAgICAgIHwgIDMKKyAgICAgc2tlbmNpbCAgICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgICAgICAgIFtdICAgICAgICAgICAgICAgICAgICAgICB8ICA3CisgICAgIHNvbGZlZ2UgICAgICAgICAgICB8IFtdICAgICAgICAgICAgICAgICBbXSAgICBbXSAgICAgIFtdICAgICAgICAgICAgICAgfCAxNgorICAgICBzb2xmZWdlLW1hbnVhbCAgICAgfCAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDgKKyAgICAgc291bmR0cmFja2VyICAgICAgIHwgW10gICAgICAgICAgICAgICAgIFtdICAgIFtdICAgICAgICAgICAgICAgICAgICAgICB8ICA5CisgICAgIHNwICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMworICAgICBzeXNzdGF0ICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICBbXSAgICAgICAgICAgICAgIHwgMTUKKyAgICAgdGFyICAgICAgICAgICAgICAgIHwgW10gICAgICAgICAgICAgICAgIFtdIFtdIFtdICAgICAgW10gICAgICAgICAgW10gICB8IDIzCisgICAgIHRleGluZm8gICAgICAgICAgICB8IFtdICAgICAgICAgICAgICAgICBbXSAgICBbXSAgICAgIFtdICAgICAgICAgICAgICAgfCAxNgorICAgICB0aW4gICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDQKKyAgICAgdW5pY29kZS1oYW4tdHJhLi4uIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAwCisgICAgIHVuaWNvZGUtdHJhbnNsYS4uLiB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMgorICAgICB1dGlsLWxpbnV4LW5nICAgICAgfCBbXSAgICAgICAgICAgICAgICAgW10gW10gW10gICAgICAgICAgICAgICAgICAgICAgIHwgMjAKKyAgICAgdmljZSAgICAgICAgICAgICAgIHwgKCkgICAgICAgICAgICAgICAgICgpICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAxCisgICAgIHZtbSAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgICAgICAgfCAgNAorICAgICB2b3JiaXMtdG9vbHMgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgW10gICAgICAgICAgICAgICAgICAgICAgIHwgIDYKKyAgICAgd2FzdGVzZWRnZSAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAyCisgICAgIHdkaWZmICAgICAgICAgICAgICB8IFtdICAgICAgICAgICAgICAgICAgICAgICBbXSAgICAgICAgICAgICAgICAgICAgICAgfCAgNworICAgICB3Z2V0ICAgICAgICAgICAgICAgfCBbXSAgICAgICAgICAgICAgICAgW10gICAgW10gICAgICBbXSAgICAgICAgICBbXSAgIHwgMjYKKyAgICAgd3lzbGlqLXBvICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgIFtdIFtdICAgICAgICAgICAgICAgICAgICAgICB8ICA4CisgICAgIHhjaGF0ICAgICAgICAgICAgICB8IFtdICAgICAgICAgICAgICBbXSAgICBbXSBbXSAgICAgIFtdICAgICAgICAgIFtdICAgfCAzNgorICAgICB4ZGctdXNlci1kaXJzICAgICAgfCBbXSAgICAgW10gICAgICAgW10gW10gW10gW10gICAgICBbXSAgICBbXSAgICBbXSAgIHwgNjAKKyAgICAgeGtleWJvYXJkLWNvbmZpZyAgIHwgW10gICAgICAgICAgICAgICAgIFtdIFtdIFtdICAgICAgICAgICAgICAgICAgICAgICB8IDI1CisgICAgICAgICAgICAgICAgICAgICAgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgICAgIDg0IHRlYW1zICAgICAgICAgICBzdiAgc3cgdGEgdGUgdGcgdGggdHIgdWsgdmkgIHdhIHpoX0NOIHpoX0hLIHpoX1RXCisgICAgICAxNzggZG9tYWlucyAgICAgICAgIDExOSAgMSAgMyAgMiAgMCAxMCA2NiA1MCAxNTUgMTcgIDk3ICAgICA3ICAgIDQxICAgIDI2MTAKKworICAgU29tZSBjb3VudGVycyBpbiB0aGUgcHJlY2VkaW5nIG1hdHJpeCBhcmUgaGlnaGVyIHRoYW4gdGhlIG51bWJlciBvZgordmlzaWJsZSBibG9ja3MgbGV0IHVzIGV4cGVjdC4gIFRoaXMgaXMgYmVjYXVzZSBhIGZldyBleHRyYSBQTyBmaWxlcyBhcmUKK3VzZWQgZm9yIGltcGxlbWVudGluZyByZWdpb25hbCB2YXJpYW50cyBvZiBsYW5ndWFnZXMsIG9yIGxhbmd1YWdlCitkaWFsZWN0cy4KKworICAgRm9yIGEgUE8gZmlsZSBpbiB0aGUgbWF0cml4IGFib3ZlIHRvIGJlIGVmZmVjdGl2ZSwgdGhlIHBhY2thZ2UgdG8KK3doaWNoIGl0IGFwcGxpZXMgc2hvdWxkIGFsc28gaGF2ZSBiZWVuIGludGVybmF0aW9uYWxpemVkIGFuZAorZGlzdHJpYnV0ZWQgYXMgc3VjaCBieSBpdHMgbWFpbnRhaW5lci4gIFRoZXJlIG1pZ2h0IGJlIGFuIG9ic2VydmFibGUKK2xhZyBiZXR3ZWVuIHRoZSBtZXJlIGV4aXN0ZW5jZSBhIFBPIGZpbGUgYW5kIGl0cyB3aWRlIGF2YWlsYWJpbGl0eSBpbiBhCitkaXN0cmlidXRpb24uCisKKyAgIElmIE1heSAyMDEwIHNlZW1zIHRvIGJlIG9sZCwgeW91IG1heSBmZXRjaCBhIG1vcmUgcmVjZW50IGNvcHkgb2YKK3RoaXMgYEFCT1VULU5MUycgZmlsZSBvbiBtb3N0IEdOVSBhcmNoaXZlIHNpdGVzLiAgVGhlIG1vc3QgdXAtdG8tZGF0ZQorbWF0cml4IHdpdGggZnVsbCBwZXJjZW50YWdlIGRldGFpbHMgY2FuIGJlIGZvdW5kIGF0CitgaHR0cDovL3RyYW5zbGF0aW9ucHJvamVjdC5vcmcvZXh0cmEvbWF0cml4Lmh0bWwnLgorCisxLjYgVXNpbmcgYGdldHRleHQnIGluIG5ldyBwYWNrYWdlcworPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworSWYgeW91IGFyZSB3cml0aW5nIGEgZnJlZWx5IGF2YWlsYWJsZSBwcm9ncmFtIGFuZCB3YW50IHRvCitpbnRlcm5hdGlvbmFsaXplIGl0IHlvdSBhcmUgd2VsY29tZSB0byB1c2UgR05VIGBnZXR0ZXh0JyBpbiB5b3VyCitwYWNrYWdlLiAgT2YgY291cnNlIHlvdSBoYXZlIHRvIHJlc3BlY3QgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljCitMaWNlbnNlIHdoaWNoIGNvdmVycyB0aGUgdXNlIG9mIHRoZSBHTlUgYGdldHRleHQnIGxpYnJhcnkuICBUaGlzIG1lYW5zCitpbiBwYXJ0aWN1bGFyIHRoYXQgZXZlbiBub24tZnJlZSBwcm9ncmFtcyBjYW4gdXNlIGBsaWJpbnRsJyBhcyBhIHNoYXJlZAorbGlicmFyeSwgd2hlcmVhcyBvbmx5IGZyZWUgc29mdHdhcmUgY2FuIHVzZSBgbGliaW50bCcgYXMgYSBzdGF0aWMKK2xpYnJhcnkgb3IgdXNlIG1vZGlmaWVkIHZlcnNpb25zIG9mIGBsaWJpbnRsJy4KKworICAgT25jZSB0aGUgc291cmNlcyBhcmUgY2hhbmdlZCBhcHByb3ByaWF0ZWx5IGFuZCB0aGUgc2V0dXAgY2FuIGhhbmRsZQordGhlIHVzZSBvZiBgZ2V0dGV4dCcgdGhlIG9ubHkgdGhpbmcgbWlzc2luZyBhcmUgdGhlIHRyYW5zbGF0aW9ucy4gIFRoZQorRnJlZSBUcmFuc2xhdGlvbiBQcm9qZWN0IGlzIGFsc28gYXZhaWxhYmxlIGZvciBwYWNrYWdlcyB3aGljaCBhcmUgbm90CitkZXZlbG9wZWQgaW5zaWRlIHRoZSBHTlUgcHJvamVjdC4gIFRoZXJlZm9yZSB0aGUgaW5mb3JtYXRpb24gZ2l2ZW4gYWJvdmUKK2FwcGxpZXMgYWxzbyBmb3IgZXZlcnkgb3RoZXIgRnJlZSBTb2Z0d2FyZSBQcm9qZWN0LiAgQ29udGFjdAorYGNvb3JkaW5hdG9yQHRyYW5zbGF0aW9ucHJvamVjdC5vcmcnIHRvIG1ha2UgdGhlIGAucG90JyBmaWxlcyBhdmFpbGFibGUKK3RvIHRoZSB0cmFuc2xhdGlvbiB0ZWFtcy4KKwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9BVVRIT1JTIGIvZHBrZy0xLjE2LjEuMS9BVVRIT1JTCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjA5Nzg2MTAKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL0FVVEhPUlMKQEAgLTAsMCArMSwzNyBAQAorVGhlIEMgaW1wbGVtZW50YXRpb24gb2YgZHBrZyB3YXMgb3JpZ2luYWxseSB3cml0dGVuIGJ5OgorCisJSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuZ3JlZW5lbmQub3JnLnVrPgorCitiYXNlZCBvbiB0aGUgUGVybCBpbXBsZW1lbnRhdGlvbiBieToKKworCU1hdHQgV2Vsc2ggPG1kd0BzdW5zaXRlLnVuYy5lZHU+CisJQ2FybCBTdHJlZXRlciA8c3RyZWV0ZXJAY2FlLndpc2MuZWR1PgorCUlhbiBNdXJkb2NrIDxpbXVyZG9ja0BkZWJpYW4ub3JnPgorCisKK0l0IGlzIGN1cnJlbnRseSBtYWludGFpbmVkIGJ5OgorCisJR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCVJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KKwlDaHJpc3RpYW4gUGVycmllciA8YnVidWxsZUBkZWJpYW4ub3JnPiAodHJhbnNsYXRpb24gY29vcmRpbmF0b3IpCisKK2FuZCBoYXMgcHJldmlvdXNseSBiZWVuIG1haW50YWluZWQgYnk6CisKKwlGcmFuayBMaWNodGVuaGVsZCA8ZGpwaWdAZGViaWFuLm9yZz4gKDIwMDYtMjAwOSkKKwlCcmVuZGFuIE8nRGVhIDxib2RAZGViaWFuLm9yZz4gKDIwMDYtMjAwNykKKwlTY290dCBKYW1lcyBSZW1uYW50IDxzY290dEBuZXRzcGxpdC5jb20+ICgyMDA0LTIwMDUpCisJQWRhbSBIZWF0aCA8ZG9vZ2llQGJyYWluZm9vZC5jb20+ICgyMDAxLTIwMDMpCisJV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4gKDE5OTktMjAwMykKKwlCZW4gQ29sbGlucyA8YmNvbGxpbnNAZGViaWFuLm9yZz4gKDE5OTktMjAwMSkKKwlEYW5pZWwgSmFjb2Jvd2l0eiA8ZGFuQGRlYmlhbi5vcmc+ICgxOTk4KQorCUouSC5NLiBEYXNzZW4gKFJheSkgPGpkYXNzZW5Ad2kuTGVpZGVuVW5pdi5ubD4gKDE5OTgpCisJSmFtZXMgVHJvdXAgPGpqdHJvdXBAY29tcC5icmFkLmFjLnVrPiAoMTk5OCkKKwlOaWxzIFJlbm5lYmFydGggPG5pbHNAZGViaWFuLm9yZz4gKDE5OTgpCisJS2xlZSBEaWVuZXMgPGtsZWVAZGViaWFuLm9yZz4gKDE5OTcpCisJR3V5IE1hb3IgPG1hb3JAZWNlLnV0ZXhhcy5lZHU+ICgxOTk3KQorCUhlaWtvIFNjaGxpdHRlcm1hbm4gPGhlaWtvQGxvdHRlLnNheC5kZT4gKDE5OTYpCisKKworQ291bnRsZXNzIG90aGVyIHBlb3BsZSBoYXZlIGNvbnRyaWJ1dGVkIHRvIGRwa2cgKHNlZSBUSEFOS1MpIGFuZCBwcm92aWRlZAorY29kZSBmb3Igd2hpY2ggdGhleSBjbGFpbSBjb3B5cmlnaHQgKHNlZSBkZWJpYW4vY29weXJpZ2h0KS4gIE1hbnkgdGhhbmtzCit0byB0aGVtIGFsbC4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvQ09QWUlORyBiL2Rwa2ctMS4xNi4xLjEvQ09QWUlORwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kNTExOTA1Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9DT1BZSU5HCkBAIC0wLDAgKzEsMzM5IEBACisJCSAgICBHTlUgR0VORVJBTCBQVUJMSUMgTElDRU5TRQorCQkgICAgICAgVmVyc2lvbiAyLCBKdW5lIDE5OTEKKworIENvcHlyaWdodCAoQykgMTk4OSwgMTk5MSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4sCisgNTEgRnJhbmtsaW4gU3RyZWV0LCBGaWZ0aCBGbG9vciwgQm9zdG9uLCBNQSAwMjExMC0xMzAxIFVTQQorIEV2ZXJ5b25lIGlzIHBlcm1pdHRlZCB0byBjb3B5IGFuZCBkaXN0cmlidXRlIHZlcmJhdGltIGNvcGllcworIG9mIHRoaXMgbGljZW5zZSBkb2N1bWVudCwgYnV0IGNoYW5naW5nIGl0IGlzIG5vdCBhbGxvd2VkLgorCisJCQkgICAgUHJlYW1ibGUKKworICBUaGUgbGljZW5zZXMgZm9yIG1vc3Qgc29mdHdhcmUgYXJlIGRlc2lnbmVkIHRvIHRha2UgYXdheSB5b3VyCitmcmVlZG9tIHRvIHNoYXJlIGFuZCBjaGFuZ2UgaXQuICBCeSBjb250cmFzdCwgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYworTGljZW5zZSBpcyBpbnRlbmRlZCB0byBndWFyYW50ZWUgeW91ciBmcmVlZG9tIHRvIHNoYXJlIGFuZCBjaGFuZ2UgZnJlZQorc29mdHdhcmUtLXRvIG1ha2Ugc3VyZSB0aGUgc29mdHdhcmUgaXMgZnJlZSBmb3IgYWxsIGl0cyB1c2Vycy4gIFRoaXMKK0dlbmVyYWwgUHVibGljIExpY2Vuc2UgYXBwbGllcyB0byBtb3N0IG9mIHRoZSBGcmVlIFNvZnR3YXJlCitGb3VuZGF0aW9uJ3Mgc29mdHdhcmUgYW5kIHRvIGFueSBvdGhlciBwcm9ncmFtIHdob3NlIGF1dGhvcnMgY29tbWl0IHRvCit1c2luZyBpdC4gIChTb21lIG90aGVyIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiBzb2Z0d2FyZSBpcyBjb3ZlcmVkIGJ5Cit0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGluc3RlYWQuKSAgWW91IGNhbiBhcHBseSBpdCB0bworeW91ciBwcm9ncmFtcywgdG9vLgorCisgIFdoZW4gd2Ugc3BlYWsgb2YgZnJlZSBzb2Z0d2FyZSwgd2UgYXJlIHJlZmVycmluZyB0byBmcmVlZG9tLCBub3QKK3ByaWNlLiAgT3VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2VzIGFyZSBkZXNpZ25lZCB0byBtYWtlIHN1cmUgdGhhdCB5b3UKK2hhdmUgdGhlIGZyZWVkb20gdG8gZGlzdHJpYnV0ZSBjb3BpZXMgb2YgZnJlZSBzb2Z0d2FyZSAoYW5kIGNoYXJnZSBmb3IKK3RoaXMgc2VydmljZSBpZiB5b3Ugd2lzaCksIHRoYXQgeW91IHJlY2VpdmUgc291cmNlIGNvZGUgb3IgY2FuIGdldCBpdAoraWYgeW91IHdhbnQgaXQsIHRoYXQgeW91IGNhbiBjaGFuZ2UgdGhlIHNvZnR3YXJlIG9yIHVzZSBwaWVjZXMgb2YgaXQKK2luIG5ldyBmcmVlIHByb2dyYW1zOyBhbmQgdGhhdCB5b3Uga25vdyB5b3UgY2FuIGRvIHRoZXNlIHRoaW5ncy4KKworICBUbyBwcm90ZWN0IHlvdXIgcmlnaHRzLCB3ZSBuZWVkIHRvIG1ha2UgcmVzdHJpY3Rpb25zIHRoYXQgZm9yYmlkCithbnlvbmUgdG8gZGVueSB5b3UgdGhlc2UgcmlnaHRzIG9yIHRvIGFzayB5b3UgdG8gc3VycmVuZGVyIHRoZSByaWdodHMuCitUaGVzZSByZXN0cmljdGlvbnMgdHJhbnNsYXRlIHRvIGNlcnRhaW4gcmVzcG9uc2liaWxpdGllcyBmb3IgeW91IGlmIHlvdQorZGlzdHJpYnV0ZSBjb3BpZXMgb2YgdGhlIHNvZnR3YXJlLCBvciBpZiB5b3UgbW9kaWZ5IGl0LgorCisgIEZvciBleGFtcGxlLCBpZiB5b3UgZGlzdHJpYnV0ZSBjb3BpZXMgb2Ygc3VjaCBhIHByb2dyYW0sIHdoZXRoZXIKK2dyYXRpcyBvciBmb3IgYSBmZWUsIHlvdSBtdXN0IGdpdmUgdGhlIHJlY2lwaWVudHMgYWxsIHRoZSByaWdodHMgdGhhdAoreW91IGhhdmUuICBZb3UgbXVzdCBtYWtlIHN1cmUgdGhhdCB0aGV5LCB0b28sIHJlY2VpdmUgb3IgY2FuIGdldCB0aGUKK3NvdXJjZSBjb2RlLiAgQW5kIHlvdSBtdXN0IHNob3cgdGhlbSB0aGVzZSB0ZXJtcyBzbyB0aGV5IGtub3cgdGhlaXIKK3JpZ2h0cy4KKworICBXZSBwcm90ZWN0IHlvdXIgcmlnaHRzIHdpdGggdHdvIHN0ZXBzOiAoMSkgY29weXJpZ2h0IHRoZSBzb2Z0d2FyZSwgYW5kCisoMikgb2ZmZXIgeW91IHRoaXMgbGljZW5zZSB3aGljaCBnaXZlcyB5b3UgbGVnYWwgcGVybWlzc2lvbiB0byBjb3B5LAorZGlzdHJpYnV0ZSBhbmQvb3IgbW9kaWZ5IHRoZSBzb2Z0d2FyZS4KKworICBBbHNvLCBmb3IgZWFjaCBhdXRob3IncyBwcm90ZWN0aW9uIGFuZCBvdXJzLCB3ZSB3YW50IHRvIG1ha2UgY2VydGFpbgordGhhdCBldmVyeW9uZSB1bmRlcnN0YW5kcyB0aGF0IHRoZXJlIGlzIG5vIHdhcnJhbnR5IGZvciB0aGlzIGZyZWUKK3NvZnR3YXJlLiAgSWYgdGhlIHNvZnR3YXJlIGlzIG1vZGlmaWVkIGJ5IHNvbWVvbmUgZWxzZSBhbmQgcGFzc2VkIG9uLCB3ZQord2FudCBpdHMgcmVjaXBpZW50cyB0byBrbm93IHRoYXQgd2hhdCB0aGV5IGhhdmUgaXMgbm90IHRoZSBvcmlnaW5hbCwgc28KK3RoYXQgYW55IHByb2JsZW1zIGludHJvZHVjZWQgYnkgb3RoZXJzIHdpbGwgbm90IHJlZmxlY3Qgb24gdGhlIG9yaWdpbmFsCithdXRob3JzJyByZXB1dGF0aW9ucy4KKworICBGaW5hbGx5LCBhbnkgZnJlZSBwcm9ncmFtIGlzIHRocmVhdGVuZWQgY29uc3RhbnRseSBieSBzb2Z0d2FyZQorcGF0ZW50cy4gIFdlIHdpc2ggdG8gYXZvaWQgdGhlIGRhbmdlciB0aGF0IHJlZGlzdHJpYnV0b3JzIG9mIGEgZnJlZQorcHJvZ3JhbSB3aWxsIGluZGl2aWR1YWxseSBvYnRhaW4gcGF0ZW50IGxpY2Vuc2VzLCBpbiBlZmZlY3QgbWFraW5nIHRoZQorcHJvZ3JhbSBwcm9wcmlldGFyeS4gIFRvIHByZXZlbnQgdGhpcywgd2UgaGF2ZSBtYWRlIGl0IGNsZWFyIHRoYXQgYW55CitwYXRlbnQgbXVzdCBiZSBsaWNlbnNlZCBmb3IgZXZlcnlvbmUncyBmcmVlIHVzZSBvciBub3QgbGljZW5zZWQgYXQgYWxsLgorCisgIFRoZSBwcmVjaXNlIHRlcm1zIGFuZCBjb25kaXRpb25zIGZvciBjb3B5aW5nLCBkaXN0cmlidXRpb24gYW5kCittb2RpZmljYXRpb24gZm9sbG93LgorCisJCSAgICBHTlUgR0VORVJBTCBQVUJMSUMgTElDRU5TRQorICAgVEVSTVMgQU5EIENPTkRJVElPTlMgRk9SIENPUFlJTkcsIERJU1RSSUJVVElPTiBBTkQgTU9ESUZJQ0FUSU9OCisKKyAgMC4gVGhpcyBMaWNlbnNlIGFwcGxpZXMgdG8gYW55IHByb2dyYW0gb3Igb3RoZXIgd29yayB3aGljaCBjb250YWlucworYSBub3RpY2UgcGxhY2VkIGJ5IHRoZSBjb3B5cmlnaHQgaG9sZGVyIHNheWluZyBpdCBtYXkgYmUgZGlzdHJpYnV0ZWQKK3VuZGVyIHRoZSB0ZXJtcyBvZiB0aGlzIEdlbmVyYWwgUHVibGljIExpY2Vuc2UuICBUaGUgIlByb2dyYW0iLCBiZWxvdywKK3JlZmVycyB0byBhbnkgc3VjaCBwcm9ncmFtIG9yIHdvcmssIGFuZCBhICJ3b3JrIGJhc2VkIG9uIHRoZSBQcm9ncmFtIgorbWVhbnMgZWl0aGVyIHRoZSBQcm9ncmFtIG9yIGFueSBkZXJpdmF0aXZlIHdvcmsgdW5kZXIgY29weXJpZ2h0IGxhdzoKK3RoYXQgaXMgdG8gc2F5LCBhIHdvcmsgY29udGFpbmluZyB0aGUgUHJvZ3JhbSBvciBhIHBvcnRpb24gb2YgaXQsCitlaXRoZXIgdmVyYmF0aW0gb3Igd2l0aCBtb2RpZmljYXRpb25zIGFuZC9vciB0cmFuc2xhdGVkIGludG8gYW5vdGhlcgorbGFuZ3VhZ2UuICAoSGVyZWluYWZ0ZXIsIHRyYW5zbGF0aW9uIGlzIGluY2x1ZGVkIHdpdGhvdXQgbGltaXRhdGlvbiBpbgordGhlIHRlcm0gIm1vZGlmaWNhdGlvbiIuKSAgRWFjaCBsaWNlbnNlZSBpcyBhZGRyZXNzZWQgYXMgInlvdSIuCisKK0FjdGl2aXRpZXMgb3RoZXIgdGhhbiBjb3B5aW5nLCBkaXN0cmlidXRpb24gYW5kIG1vZGlmaWNhdGlvbiBhcmUgbm90Citjb3ZlcmVkIGJ5IHRoaXMgTGljZW5zZTsgdGhleSBhcmUgb3V0c2lkZSBpdHMgc2NvcGUuICBUaGUgYWN0IG9mCitydW5uaW5nIHRoZSBQcm9ncmFtIGlzIG5vdCByZXN0cmljdGVkLCBhbmQgdGhlIG91dHB1dCBmcm9tIHRoZSBQcm9ncmFtCitpcyBjb3ZlcmVkIG9ubHkgaWYgaXRzIGNvbnRlbnRzIGNvbnN0aXR1dGUgYSB3b3JrIGJhc2VkIG9uIHRoZQorUHJvZ3JhbSAoaW5kZXBlbmRlbnQgb2YgaGF2aW5nIGJlZW4gbWFkZSBieSBydW5uaW5nIHRoZSBQcm9ncmFtKS4KK1doZXRoZXIgdGhhdCBpcyB0cnVlIGRlcGVuZHMgb24gd2hhdCB0aGUgUHJvZ3JhbSBkb2VzLgorCisgIDEuIFlvdSBtYXkgY29weSBhbmQgZGlzdHJpYnV0ZSB2ZXJiYXRpbSBjb3BpZXMgb2YgdGhlIFByb2dyYW0ncworc291cmNlIGNvZGUgYXMgeW91IHJlY2VpdmUgaXQsIGluIGFueSBtZWRpdW0sIHByb3ZpZGVkIHRoYXQgeW91Citjb25zcGljdW91c2x5IGFuZCBhcHByb3ByaWF0ZWx5IHB1Ymxpc2ggb24gZWFjaCBjb3B5IGFuIGFwcHJvcHJpYXRlCitjb3B5cmlnaHQgbm90aWNlIGFuZCBkaXNjbGFpbWVyIG9mIHdhcnJhbnR5OyBrZWVwIGludGFjdCBhbGwgdGhlCitub3RpY2VzIHRoYXQgcmVmZXIgdG8gdGhpcyBMaWNlbnNlIGFuZCB0byB0aGUgYWJzZW5jZSBvZiBhbnkgd2FycmFudHk7CithbmQgZ2l2ZSBhbnkgb3RoZXIgcmVjaXBpZW50cyBvZiB0aGUgUHJvZ3JhbSBhIGNvcHkgb2YgdGhpcyBMaWNlbnNlCithbG9uZyB3aXRoIHRoZSBQcm9ncmFtLgorCitZb3UgbWF5IGNoYXJnZSBhIGZlZSBmb3IgdGhlIHBoeXNpY2FsIGFjdCBvZiB0cmFuc2ZlcnJpbmcgYSBjb3B5LCBhbmQKK3lvdSBtYXkgYXQgeW91ciBvcHRpb24gb2ZmZXIgd2FycmFudHkgcHJvdGVjdGlvbiBpbiBleGNoYW5nZSBmb3IgYSBmZWUuCisKKyAgMi4gWW91IG1heSBtb2RpZnkgeW91ciBjb3B5IG9yIGNvcGllcyBvZiB0aGUgUHJvZ3JhbSBvciBhbnkgcG9ydGlvbgorb2YgaXQsIHRodXMgZm9ybWluZyBhIHdvcmsgYmFzZWQgb24gdGhlIFByb2dyYW0sIGFuZCBjb3B5IGFuZAorZGlzdHJpYnV0ZSBzdWNoIG1vZGlmaWNhdGlvbnMgb3Igd29yayB1bmRlciB0aGUgdGVybXMgb2YgU2VjdGlvbiAxCithYm92ZSwgcHJvdmlkZWQgdGhhdCB5b3UgYWxzbyBtZWV0IGFsbCBvZiB0aGVzZSBjb25kaXRpb25zOgorCisgICAgYSkgWW91IG11c3QgY2F1c2UgdGhlIG1vZGlmaWVkIGZpbGVzIHRvIGNhcnJ5IHByb21pbmVudCBub3RpY2VzCisgICAgc3RhdGluZyB0aGF0IHlvdSBjaGFuZ2VkIHRoZSBmaWxlcyBhbmQgdGhlIGRhdGUgb2YgYW55IGNoYW5nZS4KKworICAgIGIpIFlvdSBtdXN0IGNhdXNlIGFueSB3b3JrIHRoYXQgeW91IGRpc3RyaWJ1dGUgb3IgcHVibGlzaCwgdGhhdCBpbgorICAgIHdob2xlIG9yIGluIHBhcnQgY29udGFpbnMgb3IgaXMgZGVyaXZlZCBmcm9tIHRoZSBQcm9ncmFtIG9yIGFueQorICAgIHBhcnQgdGhlcmVvZiwgdG8gYmUgbGljZW5zZWQgYXMgYSB3aG9sZSBhdCBubyBjaGFyZ2UgdG8gYWxsIHRoaXJkCisgICAgcGFydGllcyB1bmRlciB0aGUgdGVybXMgb2YgdGhpcyBMaWNlbnNlLgorCisgICAgYykgSWYgdGhlIG1vZGlmaWVkIHByb2dyYW0gbm9ybWFsbHkgcmVhZHMgY29tbWFuZHMgaW50ZXJhY3RpdmVseQorICAgIHdoZW4gcnVuLCB5b3UgbXVzdCBjYXVzZSBpdCwgd2hlbiBzdGFydGVkIHJ1bm5pbmcgZm9yIHN1Y2gKKyAgICBpbnRlcmFjdGl2ZSB1c2UgaW4gdGhlIG1vc3Qgb3JkaW5hcnkgd2F5LCB0byBwcmludCBvciBkaXNwbGF5IGFuCisgICAgYW5ub3VuY2VtZW50IGluY2x1ZGluZyBhbiBhcHByb3ByaWF0ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCBhCisgICAgbm90aWNlIHRoYXQgdGhlcmUgaXMgbm8gd2FycmFudHkgKG9yIGVsc2UsIHNheWluZyB0aGF0IHlvdSBwcm92aWRlCisgICAgYSB3YXJyYW50eSkgYW5kIHRoYXQgdXNlcnMgbWF5IHJlZGlzdHJpYnV0ZSB0aGUgcHJvZ3JhbSB1bmRlcgorICAgIHRoZXNlIGNvbmRpdGlvbnMsIGFuZCB0ZWxsaW5nIHRoZSB1c2VyIGhvdyB0byB2aWV3IGEgY29weSBvZiB0aGlzCisgICAgTGljZW5zZS4gIChFeGNlcHRpb246IGlmIHRoZSBQcm9ncmFtIGl0c2VsZiBpcyBpbnRlcmFjdGl2ZSBidXQKKyAgICBkb2VzIG5vdCBub3JtYWxseSBwcmludCBzdWNoIGFuIGFubm91bmNlbWVudCwgeW91ciB3b3JrIGJhc2VkIG9uCisgICAgdGhlIFByb2dyYW0gaXMgbm90IHJlcXVpcmVkIHRvIHByaW50IGFuIGFubm91bmNlbWVudC4pCisKK1RoZXNlIHJlcXVpcmVtZW50cyBhcHBseSB0byB0aGUgbW9kaWZpZWQgd29yayBhcyBhIHdob2xlLiAgSWYKK2lkZW50aWZpYWJsZSBzZWN0aW9ucyBvZiB0aGF0IHdvcmsgYXJlIG5vdCBkZXJpdmVkIGZyb20gdGhlIFByb2dyYW0sCithbmQgY2FuIGJlIHJlYXNvbmFibHkgY29uc2lkZXJlZCBpbmRlcGVuZGVudCBhbmQgc2VwYXJhdGUgd29ya3MgaW4KK3RoZW1zZWx2ZXMsIHRoZW4gdGhpcyBMaWNlbnNlLCBhbmQgaXRzIHRlcm1zLCBkbyBub3QgYXBwbHkgdG8gdGhvc2UKK3NlY3Rpb25zIHdoZW4geW91IGRpc3RyaWJ1dGUgdGhlbSBhcyBzZXBhcmF0ZSB3b3Jrcy4gIEJ1dCB3aGVuIHlvdQorZGlzdHJpYnV0ZSB0aGUgc2FtZSBzZWN0aW9ucyBhcyBwYXJ0IG9mIGEgd2hvbGUgd2hpY2ggaXMgYSB3b3JrIGJhc2VkCitvbiB0aGUgUHJvZ3JhbSwgdGhlIGRpc3RyaWJ1dGlvbiBvZiB0aGUgd2hvbGUgbXVzdCBiZSBvbiB0aGUgdGVybXMgb2YKK3RoaXMgTGljZW5zZSwgd2hvc2UgcGVybWlzc2lvbnMgZm9yIG90aGVyIGxpY2Vuc2VlcyBleHRlbmQgdG8gdGhlCitlbnRpcmUgd2hvbGUsIGFuZCB0aHVzIHRvIGVhY2ggYW5kIGV2ZXJ5IHBhcnQgcmVnYXJkbGVzcyBvZiB3aG8gd3JvdGUgaXQuCisKK1RodXMsIGl0IGlzIG5vdCB0aGUgaW50ZW50IG9mIHRoaXMgc2VjdGlvbiB0byBjbGFpbSByaWdodHMgb3IgY29udGVzdAoreW91ciByaWdodHMgdG8gd29yayB3cml0dGVuIGVudGlyZWx5IGJ5IHlvdTsgcmF0aGVyLCB0aGUgaW50ZW50IGlzIHRvCitleGVyY2lzZSB0aGUgcmlnaHQgdG8gY29udHJvbCB0aGUgZGlzdHJpYnV0aW9uIG9mIGRlcml2YXRpdmUgb3IKK2NvbGxlY3RpdmUgd29ya3MgYmFzZWQgb24gdGhlIFByb2dyYW0uCisKK0luIGFkZGl0aW9uLCBtZXJlIGFnZ3JlZ2F0aW9uIG9mIGFub3RoZXIgd29yayBub3QgYmFzZWQgb24gdGhlIFByb2dyYW0KK3dpdGggdGhlIFByb2dyYW0gKG9yIHdpdGggYSB3b3JrIGJhc2VkIG9uIHRoZSBQcm9ncmFtKSBvbiBhIHZvbHVtZSBvZgorYSBzdG9yYWdlIG9yIGRpc3RyaWJ1dGlvbiBtZWRpdW0gZG9lcyBub3QgYnJpbmcgdGhlIG90aGVyIHdvcmsgdW5kZXIKK3RoZSBzY29wZSBvZiB0aGlzIExpY2Vuc2UuCisKKyAgMy4gWW91IG1heSBjb3B5IGFuZCBkaXN0cmlidXRlIHRoZSBQcm9ncmFtIChvciBhIHdvcmsgYmFzZWQgb24gaXQsCit1bmRlciBTZWN0aW9uIDIpIGluIG9iamVjdCBjb2RlIG9yIGV4ZWN1dGFibGUgZm9ybSB1bmRlciB0aGUgdGVybXMgb2YKK1NlY3Rpb25zIDEgYW5kIDIgYWJvdmUgcHJvdmlkZWQgdGhhdCB5b3UgYWxzbyBkbyBvbmUgb2YgdGhlIGZvbGxvd2luZzoKKworICAgIGEpIEFjY29tcGFueSBpdCB3aXRoIHRoZSBjb21wbGV0ZSBjb3JyZXNwb25kaW5nIG1hY2hpbmUtcmVhZGFibGUKKyAgICBzb3VyY2UgY29kZSwgd2hpY2ggbXVzdCBiZSBkaXN0cmlidXRlZCB1bmRlciB0aGUgdGVybXMgb2YgU2VjdGlvbnMKKyAgICAxIGFuZCAyIGFib3ZlIG9uIGEgbWVkaXVtIGN1c3RvbWFyaWx5IHVzZWQgZm9yIHNvZnR3YXJlIGludGVyY2hhbmdlOyBvciwKKworICAgIGIpIEFjY29tcGFueSBpdCB3aXRoIGEgd3JpdHRlbiBvZmZlciwgdmFsaWQgZm9yIGF0IGxlYXN0IHRocmVlCisgICAgeWVhcnMsIHRvIGdpdmUgYW55IHRoaXJkIHBhcnR5LCBmb3IgYSBjaGFyZ2Ugbm8gbW9yZSB0aGFuIHlvdXIKKyAgICBjb3N0IG9mIHBoeXNpY2FsbHkgcGVyZm9ybWluZyBzb3VyY2UgZGlzdHJpYnV0aW9uLCBhIGNvbXBsZXRlCisgICAgbWFjaGluZS1yZWFkYWJsZSBjb3B5IG9mIHRoZSBjb3JyZXNwb25kaW5nIHNvdXJjZSBjb2RlLCB0byBiZQorICAgIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSB0ZXJtcyBvZiBTZWN0aW9ucyAxIGFuZCAyIGFib3ZlIG9uIGEgbWVkaXVtCisgICAgY3VzdG9tYXJpbHkgdXNlZCBmb3Igc29mdHdhcmUgaW50ZXJjaGFuZ2U7IG9yLAorCisgICAgYykgQWNjb21wYW55IGl0IHdpdGggdGhlIGluZm9ybWF0aW9uIHlvdSByZWNlaXZlZCBhcyB0byB0aGUgb2ZmZXIKKyAgICB0byBkaXN0cmlidXRlIGNvcnJlc3BvbmRpbmcgc291cmNlIGNvZGUuICAoVGhpcyBhbHRlcm5hdGl2ZSBpcworICAgIGFsbG93ZWQgb25seSBmb3Igbm9uY29tbWVyY2lhbCBkaXN0cmlidXRpb24gYW5kIG9ubHkgaWYgeW91CisgICAgcmVjZWl2ZWQgdGhlIHByb2dyYW0gaW4gb2JqZWN0IGNvZGUgb3IgZXhlY3V0YWJsZSBmb3JtIHdpdGggc3VjaAorICAgIGFuIG9mZmVyLCBpbiBhY2NvcmQgd2l0aCBTdWJzZWN0aW9uIGIgYWJvdmUuKQorCitUaGUgc291cmNlIGNvZGUgZm9yIGEgd29yayBtZWFucyB0aGUgcHJlZmVycmVkIGZvcm0gb2YgdGhlIHdvcmsgZm9yCittYWtpbmcgbW9kaWZpY2F0aW9ucyB0byBpdC4gIEZvciBhbiBleGVjdXRhYmxlIHdvcmssIGNvbXBsZXRlIHNvdXJjZQorY29kZSBtZWFucyBhbGwgdGhlIHNvdXJjZSBjb2RlIGZvciBhbGwgbW9kdWxlcyBpdCBjb250YWlucywgcGx1cyBhbnkKK2Fzc29jaWF0ZWQgaW50ZXJmYWNlIGRlZmluaXRpb24gZmlsZXMsIHBsdXMgdGhlIHNjcmlwdHMgdXNlZCB0bworY29udHJvbCBjb21waWxhdGlvbiBhbmQgaW5zdGFsbGF0aW9uIG9mIHRoZSBleGVjdXRhYmxlLiAgSG93ZXZlciwgYXMgYQorc3BlY2lhbCBleGNlcHRpb24sIHRoZSBzb3VyY2UgY29kZSBkaXN0cmlidXRlZCBuZWVkIG5vdCBpbmNsdWRlCithbnl0aGluZyB0aGF0IGlzIG5vcm1hbGx5IGRpc3RyaWJ1dGVkIChpbiBlaXRoZXIgc291cmNlIG9yIGJpbmFyeQorZm9ybSkgd2l0aCB0aGUgbWFqb3IgY29tcG9uZW50cyAoY29tcGlsZXIsIGtlcm5lbCwgYW5kIHNvIG9uKSBvZiB0aGUKK29wZXJhdGluZyBzeXN0ZW0gb24gd2hpY2ggdGhlIGV4ZWN1dGFibGUgcnVucywgdW5sZXNzIHRoYXQgY29tcG9uZW50CitpdHNlbGYgYWNjb21wYW5pZXMgdGhlIGV4ZWN1dGFibGUuCisKK0lmIGRpc3RyaWJ1dGlvbiBvZiBleGVjdXRhYmxlIG9yIG9iamVjdCBjb2RlIGlzIG1hZGUgYnkgb2ZmZXJpbmcKK2FjY2VzcyB0byBjb3B5IGZyb20gYSBkZXNpZ25hdGVkIHBsYWNlLCB0aGVuIG9mZmVyaW5nIGVxdWl2YWxlbnQKK2FjY2VzcyB0byBjb3B5IHRoZSBzb3VyY2UgY29kZSBmcm9tIHRoZSBzYW1lIHBsYWNlIGNvdW50cyBhcworZGlzdHJpYnV0aW9uIG9mIHRoZSBzb3VyY2UgY29kZSwgZXZlbiB0aG91Z2ggdGhpcmQgcGFydGllcyBhcmUgbm90Citjb21wZWxsZWQgdG8gY29weSB0aGUgc291cmNlIGFsb25nIHdpdGggdGhlIG9iamVjdCBjb2RlLgorCisgIDQuIFlvdSBtYXkgbm90IGNvcHksIG1vZGlmeSwgc3VibGljZW5zZSwgb3IgZGlzdHJpYnV0ZSB0aGUgUHJvZ3JhbQorZXhjZXB0IGFzIGV4cHJlc3NseSBwcm92aWRlZCB1bmRlciB0aGlzIExpY2Vuc2UuICBBbnkgYXR0ZW1wdAorb3RoZXJ3aXNlIHRvIGNvcHksIG1vZGlmeSwgc3VibGljZW5zZSBvciBkaXN0cmlidXRlIHRoZSBQcm9ncmFtIGlzCit2b2lkLCBhbmQgd2lsbCBhdXRvbWF0aWNhbGx5IHRlcm1pbmF0ZSB5b3VyIHJpZ2h0cyB1bmRlciB0aGlzIExpY2Vuc2UuCitIb3dldmVyLCBwYXJ0aWVzIHdobyBoYXZlIHJlY2VpdmVkIGNvcGllcywgb3IgcmlnaHRzLCBmcm9tIHlvdSB1bmRlcgordGhpcyBMaWNlbnNlIHdpbGwgbm90IGhhdmUgdGhlaXIgbGljZW5zZXMgdGVybWluYXRlZCBzbyBsb25nIGFzIHN1Y2gKK3BhcnRpZXMgcmVtYWluIGluIGZ1bGwgY29tcGxpYW5jZS4KKworICA1LiBZb3UgYXJlIG5vdCByZXF1aXJlZCB0byBhY2NlcHQgdGhpcyBMaWNlbnNlLCBzaW5jZSB5b3UgaGF2ZSBub3QKK3NpZ25lZCBpdC4gIEhvd2V2ZXIsIG5vdGhpbmcgZWxzZSBncmFudHMgeW91IHBlcm1pc3Npb24gdG8gbW9kaWZ5IG9yCitkaXN0cmlidXRlIHRoZSBQcm9ncmFtIG9yIGl0cyBkZXJpdmF0aXZlIHdvcmtzLiAgVGhlc2UgYWN0aW9ucyBhcmUKK3Byb2hpYml0ZWQgYnkgbGF3IGlmIHlvdSBkbyBub3QgYWNjZXB0IHRoaXMgTGljZW5zZS4gIFRoZXJlZm9yZSwgYnkKK21vZGlmeWluZyBvciBkaXN0cmlidXRpbmcgdGhlIFByb2dyYW0gKG9yIGFueSB3b3JrIGJhc2VkIG9uIHRoZQorUHJvZ3JhbSksIHlvdSBpbmRpY2F0ZSB5b3VyIGFjY2VwdGFuY2Ugb2YgdGhpcyBMaWNlbnNlIHRvIGRvIHNvLCBhbmQKK2FsbCBpdHMgdGVybXMgYW5kIGNvbmRpdGlvbnMgZm9yIGNvcHlpbmcsIGRpc3RyaWJ1dGluZyBvciBtb2RpZnlpbmcKK3RoZSBQcm9ncmFtIG9yIHdvcmtzIGJhc2VkIG9uIGl0LgorCisgIDYuIEVhY2ggdGltZSB5b3UgcmVkaXN0cmlidXRlIHRoZSBQcm9ncmFtIChvciBhbnkgd29yayBiYXNlZCBvbiB0aGUKK1Byb2dyYW0pLCB0aGUgcmVjaXBpZW50IGF1dG9tYXRpY2FsbHkgcmVjZWl2ZXMgYSBsaWNlbnNlIGZyb20gdGhlCitvcmlnaW5hbCBsaWNlbnNvciB0byBjb3B5LCBkaXN0cmlidXRlIG9yIG1vZGlmeSB0aGUgUHJvZ3JhbSBzdWJqZWN0IHRvCit0aGVzZSB0ZXJtcyBhbmQgY29uZGl0aW9ucy4gIFlvdSBtYXkgbm90IGltcG9zZSBhbnkgZnVydGhlcgorcmVzdHJpY3Rpb25zIG9uIHRoZSByZWNpcGllbnRzJyBleGVyY2lzZSBvZiB0aGUgcmlnaHRzIGdyYW50ZWQgaGVyZWluLgorWW91IGFyZSBub3QgcmVzcG9uc2libGUgZm9yIGVuZm9yY2luZyBjb21wbGlhbmNlIGJ5IHRoaXJkIHBhcnRpZXMgdG8KK3RoaXMgTGljZW5zZS4KKworICA3LiBJZiwgYXMgYSBjb25zZXF1ZW5jZSBvZiBhIGNvdXJ0IGp1ZGdtZW50IG9yIGFsbGVnYXRpb24gb2YgcGF0ZW50CitpbmZyaW5nZW1lbnQgb3IgZm9yIGFueSBvdGhlciByZWFzb24gKG5vdCBsaW1pdGVkIHRvIHBhdGVudCBpc3N1ZXMpLAorY29uZGl0aW9ucyBhcmUgaW1wb3NlZCBvbiB5b3UgKHdoZXRoZXIgYnkgY291cnQgb3JkZXIsIGFncmVlbWVudCBvcgorb3RoZXJ3aXNlKSB0aGF0IGNvbnRyYWRpY3QgdGhlIGNvbmRpdGlvbnMgb2YgdGhpcyBMaWNlbnNlLCB0aGV5IGRvIG5vdAorZXhjdXNlIHlvdSBmcm9tIHRoZSBjb25kaXRpb25zIG9mIHRoaXMgTGljZW5zZS4gIElmIHlvdSBjYW5ub3QKK2Rpc3RyaWJ1dGUgc28gYXMgdG8gc2F0aXNmeSBzaW11bHRhbmVvdXNseSB5b3VyIG9ibGlnYXRpb25zIHVuZGVyIHRoaXMKK0xpY2Vuc2UgYW5kIGFueSBvdGhlciBwZXJ0aW5lbnQgb2JsaWdhdGlvbnMsIHRoZW4gYXMgYSBjb25zZXF1ZW5jZSB5b3UKK21heSBub3QgZGlzdHJpYnV0ZSB0aGUgUHJvZ3JhbSBhdCBhbGwuICBGb3IgZXhhbXBsZSwgaWYgYSBwYXRlbnQKK2xpY2Vuc2Ugd291bGQgbm90IHBlcm1pdCByb3lhbHR5LWZyZWUgcmVkaXN0cmlidXRpb24gb2YgdGhlIFByb2dyYW0gYnkKK2FsbCB0aG9zZSB3aG8gcmVjZWl2ZSBjb3BpZXMgZGlyZWN0bHkgb3IgaW5kaXJlY3RseSB0aHJvdWdoIHlvdSwgdGhlbgordGhlIG9ubHkgd2F5IHlvdSBjb3VsZCBzYXRpc2Z5IGJvdGggaXQgYW5kIHRoaXMgTGljZW5zZSB3b3VsZCBiZSB0bworcmVmcmFpbiBlbnRpcmVseSBmcm9tIGRpc3RyaWJ1dGlvbiBvZiB0aGUgUHJvZ3JhbS4KKworSWYgYW55IHBvcnRpb24gb2YgdGhpcyBzZWN0aW9uIGlzIGhlbGQgaW52YWxpZCBvciB1bmVuZm9yY2VhYmxlIHVuZGVyCithbnkgcGFydGljdWxhciBjaXJjdW1zdGFuY2UsIHRoZSBiYWxhbmNlIG9mIHRoZSBzZWN0aW9uIGlzIGludGVuZGVkIHRvCithcHBseSBhbmQgdGhlIHNlY3Rpb24gYXMgYSB3aG9sZSBpcyBpbnRlbmRlZCB0byBhcHBseSBpbiBvdGhlcgorY2lyY3Vtc3RhbmNlcy4KKworSXQgaXMgbm90IHRoZSBwdXJwb3NlIG9mIHRoaXMgc2VjdGlvbiB0byBpbmR1Y2UgeW91IHRvIGluZnJpbmdlIGFueQorcGF0ZW50cyBvciBvdGhlciBwcm9wZXJ0eSByaWdodCBjbGFpbXMgb3IgdG8gY29udGVzdCB2YWxpZGl0eSBvZiBhbnkKK3N1Y2ggY2xhaW1zOyB0aGlzIHNlY3Rpb24gaGFzIHRoZSBzb2xlIHB1cnBvc2Ugb2YgcHJvdGVjdGluZyB0aGUKK2ludGVncml0eSBvZiB0aGUgZnJlZSBzb2Z0d2FyZSBkaXN0cmlidXRpb24gc3lzdGVtLCB3aGljaCBpcworaW1wbGVtZW50ZWQgYnkgcHVibGljIGxpY2Vuc2UgcHJhY3RpY2VzLiAgTWFueSBwZW9wbGUgaGF2ZSBtYWRlCitnZW5lcm91cyBjb250cmlidXRpb25zIHRvIHRoZSB3aWRlIHJhbmdlIG9mIHNvZnR3YXJlIGRpc3RyaWJ1dGVkCit0aHJvdWdoIHRoYXQgc3lzdGVtIGluIHJlbGlhbmNlIG9uIGNvbnNpc3RlbnQgYXBwbGljYXRpb24gb2YgdGhhdAorc3lzdGVtOyBpdCBpcyB1cCB0byB0aGUgYXV0aG9yL2Rvbm9yIHRvIGRlY2lkZSBpZiBoZSBvciBzaGUgaXMgd2lsbGluZwordG8gZGlzdHJpYnV0ZSBzb2Z0d2FyZSB0aHJvdWdoIGFueSBvdGhlciBzeXN0ZW0gYW5kIGEgbGljZW5zZWUgY2Fubm90CitpbXBvc2UgdGhhdCBjaG9pY2UuCisKK1RoaXMgc2VjdGlvbiBpcyBpbnRlbmRlZCB0byBtYWtlIHRob3JvdWdobHkgY2xlYXIgd2hhdCBpcyBiZWxpZXZlZCB0bworYmUgYSBjb25zZXF1ZW5jZSBvZiB0aGUgcmVzdCBvZiB0aGlzIExpY2Vuc2UuCisKKyAgOC4gSWYgdGhlIGRpc3RyaWJ1dGlvbiBhbmQvb3IgdXNlIG9mIHRoZSBQcm9ncmFtIGlzIHJlc3RyaWN0ZWQgaW4KK2NlcnRhaW4gY291bnRyaWVzIGVpdGhlciBieSBwYXRlbnRzIG9yIGJ5IGNvcHlyaWdodGVkIGludGVyZmFjZXMsIHRoZQorb3JpZ2luYWwgY29weXJpZ2h0IGhvbGRlciB3aG8gcGxhY2VzIHRoZSBQcm9ncmFtIHVuZGVyIHRoaXMgTGljZW5zZQorbWF5IGFkZCBhbiBleHBsaWNpdCBnZW9ncmFwaGljYWwgZGlzdHJpYnV0aW9uIGxpbWl0YXRpb24gZXhjbHVkaW5nCit0aG9zZSBjb3VudHJpZXMsIHNvIHRoYXQgZGlzdHJpYnV0aW9uIGlzIHBlcm1pdHRlZCBvbmx5IGluIG9yIGFtb25nCitjb3VudHJpZXMgbm90IHRodXMgZXhjbHVkZWQuICBJbiBzdWNoIGNhc2UsIHRoaXMgTGljZW5zZSBpbmNvcnBvcmF0ZXMKK3RoZSBsaW1pdGF0aW9uIGFzIGlmIHdyaXR0ZW4gaW4gdGhlIGJvZHkgb2YgdGhpcyBMaWNlbnNlLgorCisgIDkuIFRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24gbWF5IHB1Ymxpc2ggcmV2aXNlZCBhbmQvb3IgbmV3IHZlcnNpb25zCitvZiB0aGUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmcm9tIHRpbWUgdG8gdGltZS4gIFN1Y2ggbmV3IHZlcnNpb25zIHdpbGwKK2JlIHNpbWlsYXIgaW4gc3Bpcml0IHRvIHRoZSBwcmVzZW50IHZlcnNpb24sIGJ1dCBtYXkgZGlmZmVyIGluIGRldGFpbCB0bworYWRkcmVzcyBuZXcgcHJvYmxlbXMgb3IgY29uY2VybnMuCisKK0VhY2ggdmVyc2lvbiBpcyBnaXZlbiBhIGRpc3Rpbmd1aXNoaW5nIHZlcnNpb24gbnVtYmVyLiAgSWYgdGhlIFByb2dyYW0KK3NwZWNpZmllcyBhIHZlcnNpb24gbnVtYmVyIG9mIHRoaXMgTGljZW5zZSB3aGljaCBhcHBsaWVzIHRvIGl0IGFuZCAiYW55CitsYXRlciB2ZXJzaW9uIiwgeW91IGhhdmUgdGhlIG9wdGlvbiBvZiBmb2xsb3dpbmcgdGhlIHRlcm1zIGFuZCBjb25kaXRpb25zCitlaXRoZXIgb2YgdGhhdCB2ZXJzaW9uIG9yIG9mIGFueSBsYXRlciB2ZXJzaW9uIHB1Ymxpc2hlZCBieSB0aGUgRnJlZQorU29mdHdhcmUgRm91bmRhdGlvbi4gIElmIHRoZSBQcm9ncmFtIGRvZXMgbm90IHNwZWNpZnkgYSB2ZXJzaW9uIG51bWJlciBvZgordGhpcyBMaWNlbnNlLCB5b3UgbWF5IGNob29zZSBhbnkgdmVyc2lvbiBldmVyIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQorRm91bmRhdGlvbi4KKworICAxMC4gSWYgeW91IHdpc2ggdG8gaW5jb3Jwb3JhdGUgcGFydHMgb2YgdGhlIFByb2dyYW0gaW50byBvdGhlciBmcmVlCitwcm9ncmFtcyB3aG9zZSBkaXN0cmlidXRpb24gY29uZGl0aW9ucyBhcmUgZGlmZmVyZW50LCB3cml0ZSB0byB0aGUgYXV0aG9yCit0byBhc2sgZm9yIHBlcm1pc3Npb24uICBGb3Igc29mdHdhcmUgd2hpY2ggaXMgY29weXJpZ2h0ZWQgYnkgdGhlIEZyZWUKK1NvZnR3YXJlIEZvdW5kYXRpb24sIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IHdlIHNvbWV0aW1lcworbWFrZSBleGNlcHRpb25zIGZvciB0aGlzLiAgT3VyIGRlY2lzaW9uIHdpbGwgYmUgZ3VpZGVkIGJ5IHRoZSB0d28gZ29hbHMKK29mIHByZXNlcnZpbmcgdGhlIGZyZWUgc3RhdHVzIG9mIGFsbCBkZXJpdmF0aXZlcyBvZiBvdXIgZnJlZSBzb2Z0d2FyZSBhbmQKK29mIHByb21vdGluZyB0aGUgc2hhcmluZyBhbmQgcmV1c2Ugb2Ygc29mdHdhcmUgZ2VuZXJhbGx5LgorCisJCQkgICAgTk8gV0FSUkFOVFkKKworICAxMS4gQkVDQVVTRSBUSEUgUFJPR1JBTSBJUyBMSUNFTlNFRCBGUkVFIE9GIENIQVJHRSwgVEhFUkUgSVMgTk8gV0FSUkFOVFkKK0ZPUiBUSEUgUFJPR1JBTSwgVE8gVEhFIEVYVEVOVCBQRVJNSVRURUQgQlkgQVBQTElDQUJMRSBMQVcuICBFWENFUFQgV0hFTgorT1RIRVJXSVNFIFNUQVRFRCBJTiBXUklUSU5HIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQvT1IgT1RIRVIgUEFSVElFUworUFJPVklERSBUSEUgUFJPR1JBTSAiQVMgSVMiIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVJVEhFUiBFWFBSRVNTRUQKK09SIElNUExJRUQsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GCitNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgVEhFIEVOVElSRSBSSVNLIEFTCitUTyBUSEUgUVVBTElUWSBBTkQgUEVSRk9STUFOQ0UgT0YgVEhFIFBST0dSQU0gSVMgV0lUSCBZT1UuICBTSE9VTEQgVEhFCitQUk9HUkFNIFBST1ZFIERFRkVDVElWRSwgWU9VIEFTU1VNRSBUSEUgQ09TVCBPRiBBTEwgTkVDRVNTQVJZIFNFUlZJQ0lORywKK1JFUEFJUiBPUiBDT1JSRUNUSU9OLgorCisgIDEyLiBJTiBOTyBFVkVOVCBVTkxFU1MgUkVRVUlSRUQgQlkgQVBQTElDQUJMRSBMQVcgT1IgQUdSRUVEIFRPIElOIFdSSVRJTkcKK1dJTEwgQU5ZIENPUFlSSUdIVCBIT0xERVIsIE9SIEFOWSBPVEhFUiBQQVJUWSBXSE8gTUFZIE1PRElGWSBBTkQvT1IKK1JFRElTVFJJQlVURSBUSEUgUFJPR1JBTSBBUyBQRVJNSVRURUQgQUJPVkUsIEJFIExJQUJMRSBUTyBZT1UgRk9SIERBTUFHRVMsCitJTkNMVURJTkcgQU5ZIEdFTkVSQUwsIFNQRUNJQUwsIElOQ0lERU5UQUwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIEFSSVNJTkcKK09VVCBPRiBUSEUgVVNFIE9SIElOQUJJTElUWSBUTyBVU0UgVEhFIFBST0dSQU0gKElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQKK1RPIExPU1MgT0YgREFUQSBPUiBEQVRBIEJFSU5HIFJFTkRFUkVEIElOQUNDVVJBVEUgT1IgTE9TU0VTIFNVU1RBSU5FRCBCWQorWU9VIE9SIFRISVJEIFBBUlRJRVMgT1IgQSBGQUlMVVJFIE9GIFRIRSBQUk9HUkFNIFRPIE9QRVJBVEUgV0lUSCBBTlkgT1RIRVIKK1BST0dSQU1TKSwgRVZFTiBJRiBTVUNIIEhPTERFUiBPUiBPVEhFUiBQQVJUWSBIQVMgQkVFTiBBRFZJU0VEIE9GIFRIRQorUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0VTLgorCisJCSAgICAgRU5EIE9GIFRFUk1TIEFORCBDT05ESVRJT05TCisKKwkgICAgSG93IHRvIEFwcGx5IFRoZXNlIFRlcm1zIHRvIFlvdXIgTmV3IFByb2dyYW1zCisKKyAgSWYgeW91IGRldmVsb3AgYSBuZXcgcHJvZ3JhbSwgYW5kIHlvdSB3YW50IGl0IHRvIGJlIG9mIHRoZSBncmVhdGVzdAorcG9zc2libGUgdXNlIHRvIHRoZSBwdWJsaWMsIHRoZSBiZXN0IHdheSB0byBhY2hpZXZlIHRoaXMgaXMgdG8gbWFrZSBpdAorZnJlZSBzb2Z0d2FyZSB3aGljaCBldmVyeW9uZSBjYW4gcmVkaXN0cmlidXRlIGFuZCBjaGFuZ2UgdW5kZXIgdGhlc2UgdGVybXMuCisKKyAgVG8gZG8gc28sIGF0dGFjaCB0aGUgZm9sbG93aW5nIG5vdGljZXMgdG8gdGhlIHByb2dyYW0uICBJdCBpcyBzYWZlc3QKK3RvIGF0dGFjaCB0aGVtIHRvIHRoZSBzdGFydCBvZiBlYWNoIHNvdXJjZSBmaWxlIHRvIG1vc3QgZWZmZWN0aXZlbHkKK2NvbnZleSB0aGUgZXhjbHVzaW9uIG9mIHdhcnJhbnR5OyBhbmQgZWFjaCBmaWxlIHNob3VsZCBoYXZlIGF0IGxlYXN0Cit0aGUgImNvcHlyaWdodCIgbGluZSBhbmQgYSBwb2ludGVyIHRvIHdoZXJlIHRoZSBmdWxsIG5vdGljZSBpcyBmb3VuZC4KKworICAgIDxvbmUgbGluZSB0byBnaXZlIHRoZSBwcm9ncmFtJ3MgbmFtZSBhbmQgYSBicmllZiBpZGVhIG9mIHdoYXQgaXQgZG9lcy4+CisgICAgQ29weXJpZ2h0IChDKSA8eWVhcj4gIDxuYW1lIG9mIGF1dGhvcj4KKworICAgIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisgICAgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAgICB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICAgIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisKKyAgICBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAgICBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICAgIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAgICBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorCisgICAgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYWxvbmcKKyAgICB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuLAorICAgIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxvb3IsIEJvc3RvbiwgTUEgMDIxMTAtMTMwMSBVU0EuCisKK0Fsc28gYWRkIGluZm9ybWF0aW9uIG9uIGhvdyB0byBjb250YWN0IHlvdSBieSBlbGVjdHJvbmljIGFuZCBwYXBlciBtYWlsLgorCitJZiB0aGUgcHJvZ3JhbSBpcyBpbnRlcmFjdGl2ZSwgbWFrZSBpdCBvdXRwdXQgYSBzaG9ydCBub3RpY2UgbGlrZSB0aGlzCit3aGVuIGl0IHN0YXJ0cyBpbiBhbiBpbnRlcmFjdGl2ZSBtb2RlOgorCisgICAgR25vbW92aXNpb24gdmVyc2lvbiA2OSwgQ29weXJpZ2h0IChDKSB5ZWFyIG5hbWUgb2YgYXV0aG9yCisgICAgR25vbW92aXNpb24gY29tZXMgd2l0aCBBQlNPTFVURUxZIE5PIFdBUlJBTlRZOyBmb3IgZGV0YWlscyB0eXBlIGBzaG93IHcnLgorICAgIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZSwgYW5kIHlvdSBhcmUgd2VsY29tZSB0byByZWRpc3RyaWJ1dGUgaXQKKyAgICB1bmRlciBjZXJ0YWluIGNvbmRpdGlvbnM7IHR5cGUgYHNob3cgYycgZm9yIGRldGFpbHMuCisKK1RoZSBoeXBvdGhldGljYWwgY29tbWFuZHMgYHNob3cgdycgYW5kIGBzaG93IGMnIHNob3VsZCBzaG93IHRoZSBhcHByb3ByaWF0ZQorcGFydHMgb2YgdGhlIEdlbmVyYWwgUHVibGljIExpY2Vuc2UuICBPZiBjb3Vyc2UsIHRoZSBjb21tYW5kcyB5b3UgdXNlIG1heQorYmUgY2FsbGVkIHNvbWV0aGluZyBvdGhlciB0aGFuIGBzaG93IHcnIGFuZCBgc2hvdyBjJzsgdGhleSBjb3VsZCBldmVuIGJlCittb3VzZS1jbGlja3Mgb3IgbWVudSBpdGVtcy0td2hhdGV2ZXIgc3VpdHMgeW91ciBwcm9ncmFtLgorCitZb3Ugc2hvdWxkIGFsc28gZ2V0IHlvdXIgZW1wbG95ZXIgKGlmIHlvdSB3b3JrIGFzIGEgcHJvZ3JhbW1lcikgb3IgeW91cgorc2Nob29sLCBpZiBhbnksIHRvIHNpZ24gYSAiY29weXJpZ2h0IGRpc2NsYWltZXIiIGZvciB0aGUgcHJvZ3JhbSwgaWYKK25lY2Vzc2FyeS4gIEhlcmUgaXMgYSBzYW1wbGU7IGFsdGVyIHRoZSBuYW1lczoKKworICBZb3lvZHluZSwgSW5jLiwgaGVyZWJ5IGRpc2NsYWltcyBhbGwgY29weXJpZ2h0IGludGVyZXN0IGluIHRoZSBwcm9ncmFtCisgIGBHbm9tb3Zpc2lvbicgKHdoaWNoIG1ha2VzIHBhc3NlcyBhdCBjb21waWxlcnMpIHdyaXR0ZW4gYnkgSmFtZXMgSGFja2VyLgorCisgIDxzaWduYXR1cmUgb2YgVHkgQ29vbj4sIDEgQXByaWwgMTk4OQorICBUeSBDb29uLCBQcmVzaWRlbnQgb2YgVmljZQorCitUaGlzIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZG9lcyBub3QgcGVybWl0IGluY29ycG9yYXRpbmcgeW91ciBwcm9ncmFtIGludG8KK3Byb3ByaWV0YXJ5IHByb2dyYW1zLiAgSWYgeW91ciBwcm9ncmFtIGlzIGEgc3Vicm91dGluZSBsaWJyYXJ5LCB5b3UgbWF5Citjb25zaWRlciBpdCBtb3JlIHVzZWZ1bCB0byBwZXJtaXQgbGlua2luZyBwcm9wcmlldGFyeSBhcHBsaWNhdGlvbnMgd2l0aCB0aGUKK2xpYnJhcnkuICBJZiB0aGlzIGlzIHdoYXQgeW91IHdhbnQgdG8gZG8sIHVzZSB0aGUgR05VIExlc3NlciBHZW5lcmFsCitQdWJsaWMgTGljZW5zZSBpbnN0ZWFkIG9mIHRoaXMgTGljZW5zZS4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvQ2hhbmdlTG9nIGIvZHBrZy0xLjE2LjEuMS9DaGFuZ2VMb2cKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uM2YzNDc3MAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvQ2hhbmdlTG9nCkBAIC0wLDAgKzEsMzU2ODggQEAKK2NvbW1pdCA5YmFiZDJkNjI3MDlkZDY5NGM3NGZkNzE2NTQzYzU1NjFlMTY5MDM4CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIE9jdCAxNCAwNzowODo0MCAyMDExICswMjAwCisKKyAgICBSZWxlYXNlIDEuMTYuMS4xCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgNCArKy0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAzNDNjNDkzNWI4YjdmNTcyODE1NjQ2NTlhYTZmZjBkM2M5MjVkNWFiCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IE9jdCAxMyAxMDoyODo1OCAyMDExICswMjAwCisKKyAgICBkcGtnLWJ1aWxkZmxhZ3M6IERpc2FibGUgYmluZG5vdyBpZiByZWxybyBpcyBub3QgdXNlZAorICAgIAorICAgIFRoZXJlIGlzIG5vIHBvaW50IGluIGVuYWJsaW5nIGZ1bGwgcmVscm8gKGFrYSBiaW5kbm93KSBpZiByZWxybyBpcworICAgIG5vdCBlbmFibGVkLiBJdCBqdXN0IGJyaW5ncyBpdHMgZGlzYWR2YW50YWdlcyBhbmQgbm9uZSBvZiBpdHMgcG9zc2libGUKKyAgICBhZHZhbnRhZ2VzLgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICAgfCAgICAxICsKKyBzY3JpcHRzL0Rwa2cvVmVuZG9yL0RlYmlhbi5wbSB8ICAgIDMgKysrCisgMiBmaWxlcyBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA0NGFhNzY0ZWIxN2E3NjY1YzI5MWI0MjRkZGMzYTRiNmVmNWEwNzU0CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIE9jdCAxMCAxMDo1MDowMiAyMDExICswMjAwCisKKyAgICBzY3JpcHRzL21rOiBmaXggYnVpbGRmbGFncy5tayB0byBtYWtlIHVzZSBvZiB0aGUgREVCXypfTUFJTlRfKiB2YXJpYWJsZXMKKyAgICAKKyAgICBNYWtlIGRvZXMgbm90IGV4cG9ydCBpdHMgb3duIHZhcmlhYmxlcyAoZXZlbiB0aG9zZSB3aGljaCBoYXZlIGJlZW4KKyAgICBleHBvcnRlZCBleHBsaWNpdGx5KSB0byBzdWItc2hlbGxzIGV4ZWN1dGVkIHdpdGggJChzaGVsbCDigKYpLiBTaW5jZQorICAgIGRwa2ctYnVpbGRmbGFncyBpcyBjYWxsZWQgdGhhdCB3YXksIHdlIGhhdmUgdG8gbW9kaWZ5IHRoZSBjb21tYW5kCisgICAgbGluZSB0byBlbWJlZCB2YXJpYWJsZSBpbml0aWFsaXphdGlvbnMgdG8gZW5zdXJlIHRoYXQgd2UgZm9yd2FyZCB0aGUKKyAgICB2YXJpYWJsZXMgdGhhdCBoYXZlIGJlZW4gc2V0IGJ5IHRoZSBtYWludGFpbmVyIGluIGRlYmlhbi9ydWxlcy4KKyAgICAKKyAgICBTaW5jZSB0aGlzIGNvZGUgcmVxdWlyZWQgdG8gbG9vcCBvdmVyIGFsbCBwb3NzaWJsZSBmbGFncywgSSB0b29rCisgICAgdGhlIG9wcG9ydHVuaXR5IHRvIGFsc28gc2V0IHRoZSBvdXRwdXQgdmFyaWFibGVzIHdpdGhpbiBhIGxvb3AgY29uc3RydWN0CisgICAgdXNpbmcgYSBzaW5nbGUgdGVtcGxhdGUgKGF2b2lkcyBjb3B5JnBhc3RlIG1pc3Rha2VzKS4KKyAgICAKKyAgICBSZXBvcnRlZC1ieTogUGllcnJlIENoaWZmbGllciA8cG9sbHV4QGRlYmlhbi5vcmc+CisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgfCAgICAyICsrCisgc2NyaXB0cy9tay9idWlsZGZsYWdzLm1rIHwgICAyNCArKysrKysrKysrKysrKysrKystLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDIwIGluc2VydGlvbnMoKyksIDYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBjZWI5MzlkMjc4Njg5NjM0MDM3MTE1YTcyOGZkN2MwODNkMGU0YTM5CitBdXRob3I6IFRob3JzdGVuIEdsYXNlciA8dGdAbWlyYnNkLm9yZz4KK0RhdGU6ICAgU2F0IE9jdCA4IDE3OjI1OjA4IDIwMTEgKzAwMDAKKworICAgIHNjcmlwdHMvbWs6IEZpeCB0eXBvIGJ5IHNldHRpbmcgREVCXypfQVJDSF9CSVRTIGluc3RlYWQgb2YgREVCXypfQVJDSAorICAgIAorICAgIFNpZ25lZC1vZmYtYnk6IFRob3JzdGVuIEdsYXNlciA8dGdAbWlyYnNkLm9yZz4KKyAgICBTaWduZWQtb2ZmLWJ5OiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICB8ICAgIDIgKysKKyBzY3JpcHRzL21rL2FyY2hpdGVjdHVyZS5tayB8ICAgIDQgKystLQorIDIgZmlsZXMgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgZjE4YzE5NzkzMWUyODBmZjM1OTRkZDA2NTg1YWQxYTE1ZTI0YmMyOAorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBPY3QgNiAxNjo1NDo1NyAyMDExICswMjAwCisKKyAgICBkcGtnLXNvdXJjZTogaWdub3JlIGNoYW5nZXMgb24gZGViaWFuL3BhdGNoZXMvLmRwa2ctc291cmNlLWFwcGxpZWQKKyAgICAKKyAgICBXaXRoIDIuMCBzb3VyY2UgcGFja2FnZXMsIGRwa2ctc291cmNlIHJlY29yZHMgYXMgYSBjb21tZW50IGluCisgICAgZGViaWFuL3BhdGNoZXMvLmRwa2ctc291cmNlLWFwcGxpZWQgd2hldGhlciB0aGUgcGF0Y2hlcyBoYXZlCisgICAgYmVlbiBhcHBsaWVkIGF0IGJ1aWxkIHRpbWUgb3IgYXQgdW5wYWNrIHRpbWUuCisgICAgCisgICAgVGhpcyBjYW4gbGVhZCB0byBkaWZmZXJlbmNlcyBiZXR3ZWVuIHRoZSBmaWxlIGluIHRoZSBidWlsZCB0cmVlCisgICAgYW5kIHRoZSBmaWxlIGluIHRoZSByZWZlcmVuY2UgdHJlZSB1c2VkIHRvIGNoZWNrIGZvciBjaGFuZ2VzLgorICAgIFRodXMgd2UgbmVlZCB0byBpZ25vcmUgdGhhdCBmaWxlIGluIHRoZSBkaWZmIHByb2Nlc3Mgb3IgdGhlIGJ1aWxkCisgICAgbWlnaHQgZmFpbCBjb25zaWRlcmluZyB0aGlzIGRpZmZlcmVuY2UgYXMgYSBsb2NhbCBjaGFuZ2UgdGhhdAorICAgIGhhcyBub3QgYmVlbiByZWNvcmRlZCBpbiBhIHBhdGNoLgorICAgIAorICAgIFJlcG9ydGVkLWJ5OiBKYWt1YiBXaWxrIDxqd2lsa0BkZWJpYW4ub3JnPgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICAgICAgIHwgICAgMiArKworIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbSB8ICAgIDMgKystCisgMiBmaWxlcyBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyY2VjZTVlYjVkNjFkZjkxZTdlNzc0NTExYzE5Nzg1YWZlMjZmNTk2CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IE9jdCA2IDE2OjE3OjAyIDIwMTEgKzAyMDAKKworICAgIFVwZGFkZSBjaGFuZ2Vsb2cgdG8gaW5jbHVkZSBzb21lIG1pc3NpbmcgYnVnIGNsb3N1cmVzCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMyArKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDY2N2JhZTMxNmEzMDJjMGY2MmU1ZTM4YTZjNzkxYTYyNzg1YWY0YjIKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgT2N0IDYgMTU6MzI6MzYgMjAxMSArMDIwMAorCisgICAgZHBrZzogZml4IHRyaWdnZXIgc2V0dXAgY29kZSB0byBub3QgcmVzZXQgdGhlIHN0YXR1cyBvZiB1bmNvbmZpZ3VyZWQgcGFja2FnZXMKKyAgICAKKyAgICBUaGUgY2hhbmdlIGluIGNvbW1pdCBhMzZjYWRiYTQxYjE5ZDU5MDhiZGZjYjY1OGNmMDFhZjA3YzE0MzZhIHdhcyB3cm9uZ2x5CisgICAgYXNzdW1pbmcgdGhhdCBhbGwgcGFja2FnZXMgd291bGQgYmUgaW4gb25lIG9mIHRoZSBzdGF0ZXMKKyAgICB0cmlnZ2Vycy1hd2FpdGVkLCB0cmlnZ2Vycy1wZW5kaW5nIG9yIGluc3RhbGxlZCB3aGVuCisgICAgdHJpZ190cmFuc2l0aW9uYWxfYWN0aXZhdGUga2lja3MgaW4uCisgICAgCisgICAgVGhhdCBpcyBub3QgdGhlIGNhc2UgYW5kIHRoZSBzdGF0dXMgcmVzZXQgc2hvdWxkIGhlbmNlIG9ubHkgYmUgZG9uZSB3aGVuCisgICAgdGhlIGN1cnJlbnQgc3RhdHVzIGlzIGFscmVhZHkgc3VjaCB0aGF0IHRoZSB0cmlnZ2VyIGluZm9ybWF0aW9uIGFyZQorICAgIG1lYW5pbmdmdWwuIHRyYW5zaXRpb25hbF9pbnRlcmVzdF9jYWxsYmFja19ybygpIGlzIGFscmVhZHkgdGFraW5nIGNhcmUKKyAgICB0byBub3QgYWRkIGFueXRoaW5nIGluIHRoZSBUcmlnZ2Vycy1QZW5kaW5nIGZpZWxkIHdoZW4gdGhlIHN0YXR1cworICAgIGlzIHN1Y2ggdGhhdCBpdCB3b3VsZCBub3QgbWFrZSBzZW5zZS4KKyAgICAKKyAgICBSZXBvcnRlZC1ieTogSGVjdG9yIE9yb24gPGhlY3Rvci5vcm9uQGdtYWlsLmNvbT4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAzICsrKworIHNyYy90cmlncHJvYy5jICAgfCAgICAyICsrCisgMiBmaWxlcyBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAxMjhlY2UyNDQ0NmI1ZTdhNzAxZjk0ZDliZGNjNGM2YTNjODQxMGUzCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIE9jdCAyIDA5OjQ0OjE0IDIwMTEgKzAyMDAKKworICAgIGRwa2ctYnVpbGRwYWNrYWdlOiBubyBsb25nZXIgb3V0cHV0IHRoZSBidWlsZCBmbGFncworICAgIAorICAgIEJlY2F1c2UgZHBrZy1idWlsZHBhY2thZ2UgaXMgbm8gbG9uZ2VyIHNldHRpbmcgdGhlIGNvcnJlc3BvbmRpbmcKKyAgICBlbnZpcm9ubWVudCB2YXJpYWJsZXMsIGFuZCBiZWNhdXNlIGl0IGNvbmZ1c2VzIG1haW50YWluZXJzCisgICAgd2hvIGFyZSBvdmVycmlkaW5nIHRoZW0gdmlhIGRlYmlhbi9ydWxlcyBhbmQgd2hvIGFyZSBub3Qgc2VlaW5nCisgICAgdGhlIGV4cGVjdGVkIHZhbHVlcyBpbiB0aGVpciBidWlsZCBsb2cuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgIHwgICAgMyArKysKKyBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsIHwgICAgOCAtLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCA4IGRlbGV0aW9ucygtKQorCitjb21taXQgZmVhYzFmOTgzY2UzZmI0NTI2NjI4M2JhMDc0ODNlMDI5MDk1YjAyMgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBPY3QgMiAwOTowNjo1MyAyMDExICswMjAwCisKKyAgICBkcGtnLWJ1aWxkZmxhZ3M6IFNldCBwcmVwcm9jZXNzb3Igb3B0aW9uIC1EX0ZPUlRJRllfU09VUkNFPTIgaW4gQ1BQRkxBR1MKKyAgICAKKyAgICBJbnN0ZWFkIG9mIHNldHRpbmcgaXQgaW4gdGhlIENGTEFHUyBhbmQgQ1hYRkxBR1MgdmFyaWFibGVzLgorICAgIAorICAgIENsb3NlczogIzY0MjUyMSwgIzY0MzYzMgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICAgfCAgICA1ICsrKysrCisgc2NyaXB0cy9EcGtnL1ZlbmRvci9EZWJpYW4ucG0gfCAgICAzICstLQorIDIgZmlsZXMgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgNTcwODg2ODA5ZWZkMWI1NTEwNzJmZTUyY2NmZDRlNTBhNDE3NTM3NQorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBTZXAgMjkgMTQ6MjM6MjQgMjAxMSArMDIwMAorCisgICAgZHBrZy1idWlsZGZsYWdzKDEpOiBkcm9wIHRoZSBxdW90ZXMgd2hlbiBzZXR0aW5nIERFQl9CVUlMRF9NQUlOVF9PUFRJT05TCisgICAgCisgICAgREVCX0JVSUxEX01BSU5UX09QVElPTlMgaXMgdXN1YWxseSBzZXQgaW4gYSBNYWtlZmlsZSBhbmQgbWFrZSBwdXRzIHRoZQorICAgIHF1b3RlcyBpbiB0aGUgdmFyaWFibGUgdmFsdWUgKGkuZS4gaXQgZG9lc24ndCB1c2UgdGhlbSB0byBkZWxpbWl0IHRoZQorICAgIHZhbHVlKS4gVGhpcyBpcyBvYnZpb3VzbHkgbm90IHdhbnRlZCBzbyBsZXQncyBmaXggdGhlIGV4YW1wbGVzLgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgIHwgICAgMiArKworIG1hbi9kcGtnLWJ1aWxkZmxhZ3MuMSB8ICAgIDQgKystLQorIDIgZmlsZXMgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgZGQ0ODNhZDhlNDQ4NGU0NjZmOThlM2QyZGVjY2FhYTc1Y2FlMDk5ZgorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBTZXAgMjkgMTQ6MTM6NDcgMjAxMSArMDIwMAorCisgICAgZHBrZy1idWlsZGZsYWdzOiBmaXggLS1kdW1wIHRvIHJldHVybiAwIGFzIGV4aXQgY29kZQorICAgIAorICAgIFJlcG9ydGVkLWJ5OiBZdmVzLUFsZXhpcyBQZXJleiA8Y29yc2FjQGRlYmlhbi5vcmc+CisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICB8ICAgIDEgKworIHNjcmlwdHMvZHBrZy1idWlsZGZsYWdzLnBsIHwgICAgMSArCisgMiBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBiZDRjMDU1NTYyYTNjYmZhMWM3NGI1NTM0OGU1NDViMmZjZGQzMzkzCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIFNlcCAyNyAwOTowMTo1MiAyMDExICswMjAwCisKKyAgICBkcGtnLXNvdXJjZTogbGV0IC0tY29tbWl0IGNyZWF0ZSBkZWJpYW4vcGF0Y2hlcyB3aGVuIHJlcXVpcmVkCisgICAgCisgICAgUmVwb3J0ZWQtYnk6IEpha3ViIFdpbGsgPGp3aWxrQGRlYmlhbi5vcmc+CisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICAgICAgfCAgICAxICsKKyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG0gfCAgICAxICsKKyAyIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDY2OWUwZmY0OTZlNjg3MGMwNmRlODJkYTExMWJhMDY5MjYzYTA0NTYKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgU2VwIDI3IDA4OjQ0OjEyIDIwMTEgKzAyMDAKKworICAgIGRwa2ctc291cmNlOiBkbyBub3QgaWdub3JlIHRoZSBhdXRvbWF0aWMgcGF0Y2ggd2hlbiBjaGVja2luZyBmb3IgdW5yZWNvcmRlZCBjaGFuZ2VzCisgICAgCisgICAgVGhlIGZvcm1lciBiZWhhdmlvdXIgdG8gYWx3YXlzIGdlbmVyYXRlIHRoZSBhdXRvbWF0aWMgcGF0Y2ggcmVxdWlyZWQgdG8KKyAgICBub3QgYXBwbHkgaXQgb24gdGhlIHRyZWUgdXNlZCBhcyBhIGJhc2lzIGZvciB0aGUgcGF0Y2ggZ2VuZXJhdGlvbi4gVGhhdAorICAgIHdheSBpdCBjb3VsZCBiZSB1cGRhdGVkIGF0IGVhY2ggYnVpbGQuCisgICAgCisgICAgV2l0aCB0aGUgbmV3IGJlaGF2aW91ciB0byBmYWlsIG9uIGFueSBuZXcgY2hhbmdlLCB3ZSBzaG91bGQgbm8gbG9uZ2VyCisgICAgaWdub3JlIGl0LiBJdCBtdXN0IGJlIGFwcGxpZWQgb24gdGhlIHJlZmVyZW5jZSB0cmVlIGV4Y2VwdCB3aGVuCisgICAgLS1hdXRvLWNvbW1pdCBpcyBvbi4KKyAgICAKKyAgICBUaGlzIHNob3VsZCBmaXggMjI3IChzb3VyY2UgcGFja2FnZSkgYnVpbGQgZmFpbHVyZXMgaW4gRGViaWFuIHVuc3RhYmxlLgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICAgICAgIHwgICAgNyArKysrKysrCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtIHwgICAxOCArKysrKysrKysrKy0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDE4IGluc2VydGlvbnMoKyksIDcgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA0MzdmOGI1MzkxMGMwYjU5ZGY2MTgyZmMyM2ExNDg1Zjg2MzhjNzQ1CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIFNlcCAyMyAwNjowMDoxOCAyMDExICswMjAwCisKKyAgICBSZWxlYXNlIDEuMTYuMQorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDYgKysrLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBlNjRhYjM0Y2QwMjJiMmQ0MzgxYzg1NjQzZWYyOWEwZjBkZjQyMzk0CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIFNlcCAyMyAwNTo1OToyNiAyMDExICswMjAwCisKKyAgICBBZGQgZGViaWFuL2NoYW5nZWxvZyBlbnRyeSBmb3IgLmRlYiBsYXJnZSBmaWxlIHN1cHBvcnQgKExGUykgZml4ZXMKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAyICsrCisgMSBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA3NTkwOWUwY2I2NDNlZTE2NTkyOWY0MDVjY2E2YzgyZWI2MjQyYjA0CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIFNlcCAyMyAwMzo0OTo1MyAyMDExICswMjAwCisKKyAgICBSZWdlbmVyYXRlIC5wb3QgZmlsZXMgYW5kIG1lcmdlIC5wbyBmaWxlcyB3aXRoIHRoZW0KKworIGRzZWxlY3QvcG8vYnMucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vY2EucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vY3MucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vZGEucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vZGUucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vZHNlbGVjdC5wb3QgIHwgICAgNCArLQorIGRzZWxlY3QvcG8vZWwucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vZXMucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vZXQucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vZXUucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vZnIucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vZ2wucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vaHUucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vaWQucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vaXQucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vamEucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8va28ucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vbmIucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vbmwucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vbm4ucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vcGwucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vcHQucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vcHRfQlIucG8gICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vcm8ucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vcnUucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vc2sucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vc3YucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vdGwucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vdmkucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vemhfQ04ucG8gICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vemhfVFcucG8gICAgIHwgICAgMiArLQorIG1hbi9wby9kZS5wbyAgICAgICAgICAgIHwgICAyMiArLQorIG1hbi9wby9kcGtnLW1hbi5wb3QgICAgIHwgIDQ1NCArKysrKysrKysrKysrKy0tLS0tLS0KKyBtYW4vcG8vZXMucG8gICAgICAgICAgICB8ICA0NDcgKysrKysrKysrKysrKysrLS0tLS0KKyBtYW4vcG8vZnIucG8gICAgICAgICAgICB8ICA0NzkgKysrKysrKysrKysrKysrKystLS0tLQorIG1hbi9wby9odS5wbyAgICAgICAgICAgIHwgIDM5OCArKysrKysrKysrKysrLS0tLS0KKyBtYW4vcG8vamEucG8gICAgICAgICAgICB8ICA0MDUgKysrKysrKysrKysrKystLS0tLQorIG1hbi9wby9wbC5wbyAgICAgICAgICAgIHwgIDQ0NSArKysrKysrKysrKysrKystLS0tLS0KKyBtYW4vcG8vcHRfQlIucG8gICAgICAgICB8ICAzOTUgKysrKysrKysrKysrKy0tLS0tCisgbWFuL3BvL3J1LnBvICAgICAgICAgICAgfCAgNDAxICsrKysrKysrKysrKystLS0tLQorIG1hbi9wby9zdi5wbyAgICAgICAgICAgIHwgIDExNCArLS0tLS0KKyBwby9hc3QucG8gICAgICAgICAgICAgICB8IDEwMjEgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2JzLnBvICAgICAgICAgICAgICAgIHwgIDk3NiArKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2NhLnBvICAgICAgICAgICAgICAgIHwgMTAzOCArKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vY3MucG8gICAgICAgICAgICAgICAgfCAxMDM4ICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9kYS5wbyAgICAgICAgICAgICAgICB8IDEwMzggKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2RlLnBvICAgICAgICAgICAgICAgIHwgIDQxMiArKysrKysrKysrLS0tLS0tLS0tCisgcG8vZHBrZy5wb3QgICAgICAgICAgICAgfCAgOTc4ICsrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vZHoucG8gICAgICAgICAgICAgICAgfCAxMDEzICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2VsLnBvICAgICAgICAgICAgICAgIHwgMTAxNSArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9lby5wbyAgICAgICAgICAgICAgICB8IDEwMzggKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2VzLnBvICAgICAgICAgICAgICAgIHwgMTAzOCArKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vZXQucG8gICAgICAgICAgICAgICAgfCAxMDA5ICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2V1LnBvICAgICAgICAgICAgICAgIHwgMTAzOCArKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vZnIucG8gICAgICAgICAgICAgICAgfCAxMDQzICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9nbC5wbyAgICAgICAgICAgICAgICB8IDEwMTUgKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vaHUucG8gICAgICAgICAgICAgICAgfCAxMDE1ICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2lkLnBvICAgICAgICAgICAgICAgIHwgMTAzOCArKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vaXQucG8gICAgICAgICAgICAgICAgfCAxMDQ1ICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9qYS5wbyAgICAgICAgICAgICAgICB8IDEwNDIgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2ttLnBvICAgICAgICAgICAgICAgIHwgMTAxMyArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9rby5wbyAgICAgICAgICAgICAgICB8IDEwMzggKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2t1LnBvICAgICAgICAgICAgICAgIHwgIDk3OCArKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2x0LnBvICAgICAgICAgICAgICAgIHwgMTAwMSArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9tci5wbyAgICAgICAgICAgICAgICB8IDEwMDEgKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vbmIucG8gICAgICAgICAgICAgICAgfCAxMDM4ICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9uZS5wbyAgICAgICAgICAgICAgICB8IDEwMTMgKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vbmwucG8gICAgICAgICAgICAgICAgfCAxMDE1ICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL25uLnBvICAgICAgICAgICAgICAgIHwgIDk5NSArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9wYS5wbyAgICAgICAgICAgICAgICB8IDEwMTQgKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vcGwucG8gICAgICAgICAgICAgICAgfCAxMDIxICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9wdC5wbyAgICAgICAgICAgICAgICB8IDEwMzggKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL3B0X0JSLnBvICAgICAgICAgICAgIHwgMTAxNSArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9yby5wbyAgICAgICAgICAgICAgICB8IDEwMzggKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL3J1LnBvICAgICAgICAgICAgICAgIHwgMTAzOCArKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vc2sucG8gICAgICAgICAgICAgICAgfCAxMDM4ICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9zdi5wbyAgICAgICAgICAgICAgICB8ICA0NDMgKysrKysrKysrKy0tLS0tLS0tLS0tCisgcG8vdGgucG8gICAgICAgICAgICAgICAgfCAxMDM4ICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby90bC5wbyAgICAgICAgICAgICAgICB8ICA5OTUgKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vdmkucG8gICAgICAgICAgICAgICAgfCAxMDM4ICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby96aF9DTi5wbyAgICAgICAgICAgICB8IDEwMzggKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL3poX1RXLnBvICAgICAgICAgICAgIHwgMTAxMyArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBzY3JpcHRzL3BvL2NhLnBvICAgICAgICB8ICAxMTEgKysrLS0tCisgc2NyaXB0cy9wby9kZS5wbyAgICAgICAgfCAgICA1ICstCisgc2NyaXB0cy9wby9kcGtnLWRldi5wb3QgfCAgMTExICsrKy0tLQorIHNjcmlwdHMvcG8vZXMucG8gICAgICAgIHwgIDExNyArKystLS0KKyBzY3JpcHRzL3BvL2ZyLnBvICAgICAgICB8ICAxMjQgKysrKy0tLQorIHNjcmlwdHMvcG8vcGwucG8gICAgICAgIHwgIDExNiArKystLS0KKyBzY3JpcHRzL3BvL3J1LnBvICAgICAgICB8ICAxMTcgKysrLS0tCisgc2NyaXB0cy9wby9zdi5wbyAgICAgICAgfCAgICA1ICstCisgOTAgZmlsZXMgY2hhbmdlZCwgMjM5MTcgaW5zZXJ0aW9ucygrKSwgMjExMjIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBlNzBkZWNhYWJlMGViMGVjZWM1OTVhNTZlYzRiMDYzMTg0NTRmNDc4CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIFNlcCAyMSAyMToxMzo0NyAyMDExICswMjAwCisKKyAgICBBZGQgcHJvamVjdCBkb2N1bWVudGF0aW9uIHRvIHRoZSB0b3AgbGV2ZWwgUkVBRE1FCisgICAgCisgICAgVGhpcyB3aWxsIGhlbHAgcGVvcGxlIGdldHRpbmcgdGhlIHNvdXJjZSBmcm9tIGdpdCwgb3IgZG93bnN0cmVhbQorICAgIHBhY2thZ2VycyBvbiBob3cgdG8gYnVpbGQgZnJvbSBzb3VyY2Ugb3IgaW50ZXJhY3Qgd2l0aCB0aGUKKyAgICBtYWludGFpbmVycy4KKworIFJFQURNRSB8ICAxMTMgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLQorIDEgZmlsZXMgY2hhbmdlZCwgMTEwIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA3YWY4ZmIyZjAxZGYxMGZmZDY1YjczMzc3MmZkM2VmODhmODA4Y2MzCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIFNlcCAxMyAwODo0Nzo1OCAyMDExICswMjAwCisKKyAgICBkcGtnLWJ1aWxkZmxhZ3M6IERpc2FibGUgYmluZCBub3cgYnkgZGVmYXVsdAorICAgIAorICAgIFRoaXMgb3B0aW9uIGhhcyBhIHN0YXJ0dXAgcGVyZm9ybWFuY2UgaGl0IG9uIHNsb3cgc3lzdGVtcywgcGFydGljdWxhcmx5CisgICAgZHVlIHRvIHNsb3cgSS9PLCB0aGUgZWZmZWN0cyBvZiB3aGljaCBjYW5ub3QgYmUgcmV2ZXJ0ZWQgZXhjZXB0IGZvciBhCisgICAgcmVidWlsZC4gSXQgbWlnaHQgbWFrZSBzZW5zZSBmb3IgbG9uZyBydW5uaW5nIHByb2Nlc3NlcyB3aGVyZSB0aGUKKyAgICBzdGFydHVwIHRpbWUgaXMgbm90IHRoYXQgaW1wb3J0YW50LCBhbmQgdGhlIHNlY3VyaXR5IGltcHJvdmVtZW50cyBkbworICAgIGFjdHVhbGx5IG1hdHRlci4gQW5vdGhlciBvcHRpb24gaXMgdG8gc2V0IHRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZQorICAgIExEX0JJTkRfTk9XPTEgZm9yIHRoZSBsb25nIHJ1bm5pbmcgcHJvY2Vzcywgc28gdGhhdCB0aGUgc3lzYWRtaW4gY2FuCisgICAgZGlzYWJsZSBpdCBpZiBkZXNpcmVkLgorCisgbWFuL2Rwa2ctYnVpbGRmbGFncy4xICAgICAgICAgfCAgICA0ICsrLS0KKyBzY3JpcHRzL0Rwa2cvVmVuZG9yL0RlYmlhbi5wbSB8ICAgIDIgKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworY29tbWl0IDdjZGFlYjhhMWNmNWQ2OWRhZmNhMTA3YWIzMGRmYWQzZWNlMWVlMTYKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgU2VwIDIyIDA0OjE4OjA1IDIwMTEgKzAyMDAKKworICAgIHNjcmlwdHMvbWs6IFNpbXBsaWZ5IHNlZCBleHByZXNzaW9uIGZvciBERUJfRElTVFJJQlVUSU9OCisKKyBzY3JpcHRzL21rL3BrZy1pbmZvLm1rIHwgICAgMiArLQorIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgY2ZiYTliODBmZWE2ODBkNTYxNjcxNzEzYjc4MDQ0YzM2NWExNDkyNAorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBTZXAgMjEgMjI6NDQ6MDAgMjAxMSArMDIwMAorCisgICAgc2NyaXB0cy9tay9wa2ctaW5mby5tazogREVCX0RJU1RSSUJVVElPTiByZXR1cm5zIGFsbCBsaXN0ZWQgZGlzdHJpYnV0aW9ucworICAgIAorICAgIFVwZGF0ZSBERUJfRElTVFJJQlVUSU9OIHRvIHJldHVybiBhbGwgZGlzdHJpYnV0aW9ucyBsaXN0ZWQgaW4gdGhlIGN1cnJlbnQKKyAgICBjaGFuZ2Vsb2cgZW50cnkgaW5zdGVhZCBvZiBvbmx5IHRoZSBmaXJzdCBvbmUuCisKKyBzY3JpcHRzL21rL3BrZy1pbmZvLm1rIHwgICAgNCArKy0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBjMTA1MTdlNjZhOWQ2MmI0YTJiZTliMDhmN2QzZjQyMzc4YzQ2ZmY5CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIFNlcCAyMSAwODo0ODozNyAyMDExICswMjAwCisKKyAgICBzY3JpcHRzL21rL3BrZy1pbmZvLm1rOiBhZGp1c3QgdmFyaWFibGUgbmFtZXMKKyAgICAKKyAgICBSZW5hbWUgREVCX1ZFUlNJT05fTk9SRVYgYW5kIERFQl9WRVJTSU9OX05PRVBPQ0ggdG8KKyAgICBERUJfVkVSU0lPTl9FUE9DSF9VUFNUUkVBTSBhbmQgREVCX1ZFUlNJT05fVVBTVFJFQU1fUkVWSVNJT04gdG8gZGVmaW5lCisgICAgdGhlbSBieSBpbmNsdXNpb24gcmF0aGVyIHRoYW4gYnkgZXhjbHVzaW9uLgorICAgIAorICAgIFJlbmFtZSBERUJfU09VUkNFX1BBQ0tBR0UgaW50byB0aGUgbGVzcyB2ZXJib3NlIERFQl9TT1VSQ0UuCisgICAgCisgICAgU3VnZ2VzdGVkLWJ5OiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKyBzY3JpcHRzL21rL3BrZy1pbmZvLm1rIHwgICAxNiArKysrKysrKy0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA4IGluc2VydGlvbnMoKyksIDggZGVsZXRpb25zKC0pCisKK2NvbW1pdCA5NjZhNGY2YmQyZWY3MzNhYmE0NjNlMWM4OWE2YTVhZWJmYzM0OTllCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIFNlcCAxOSAxNzo0MDowNCAyMDExICswMjAwCisKKyAgICBidWlsZDogUGFjayBbdHlwZTptYW5dIGVudHJpZXMgaW4gcG80YS5jZmcKKyAgICAKKyAgICBUaGVyZSdzIGEgaHVnZSBhbW91bnQgb2YgYmxhbmsgbGluZXMgd2hpY2ggbW9zdGx5IGRpc3RyYWN0IGZyb20gdGhlCisgICAgYWN0dWFsIGNvbnRlbnQsIHJlbW92ZSB0aGVtIGFuZCBmb2xkIHRoZSBsaW5lcyByZWZlcnJpbmcgdG8gdGhlIG1hbgorICAgIHBhZ2UgaW50byBhIHNpbmdsZSBsaW5lIGFuZCBsZWF2ZSB0aGUgYWRkZW5kdW0gbGluZSBvbiBpdHMgb3duLgorCisgbWFuL3BvL3BvNGEuY2ZnIHwgIDE2NSArKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA0MSBpbnNlcnRpb25zKCspLCAxMjQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAwZWQ5MGRhN2Y0ZWM2ODI4ZDg1ZGM3OGE5OGIzYzhkMzJmNTUxNTFiCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIFNlcCAxOSAxNzoxMjo1NiAyMDExICswMjAwCisKKyAgICBidWlsZDogTWVyZ2UgUE80QV9DT01NT05fT1BUUyBhbmQgUE80QV9CVUlMRF9PUFRTIGludG8gUE80QV9PUFRTCisKKyBtYW4vTWFrZWZpbGUuYW0gfCAgICA3ICsrKy0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKKworY29tbWl0IDgyMmVhODVjN2MxNmQ0NWY5MzJmOWM4NmY1YWMwYTA0YThjMzA0YzIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gU2VwIDE5IDE3OjAxOjIzIDIwMTEgKzAyMDAKKworICAgIGJ1aWxkOiBVc2UgcG80YSAtLXNyY2RpciBhbmQgLS1idWlsZGRpcgorICAgIAorICAgIFRoaXMgYXZvaWRzIHRoZSBhYnNvbHV0ZSBwYXRocyBpbiB0aGUgcG80YSBEaXNjYXJkIG91dHB1dCBtZXNzYWdlcywKKyAgICBhbmQgc2ltcGxpZmllcyB0aGUgYnVpbGQgaW5mcmFzdHJ1Y3R1cmUgYnkgbm90IG5lZWRpbmcgdGhlIGNoYW5nZQorICAgIGRpcmVjdG9yeSBneW1uYXN0aWNzIGFuZCBidWlsZGRpciBwbzRhIHZhcmlhYmxlIGluIHRoZSBwbzRhLmNmZyBmaWxlLgorICAgIAorICAgIEl0J3MgYmVlbiBlbm91Z2ggdGltZSBub3cgc2luY2UgIzUzODEzNiB3YXMgZmlsZWQgcHJlY2lzZWx5IGZvciBkcGtnCisgICAgbmVlZHMsIHRvIHJlbHkgb24gdGhlc2Ug4oCcbmV34oCdIG9wdGlvbnMuCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMiArCisgZGViaWFuL2NvbnRyb2wgICB8ICAgIDIgKy0KKyBtYW4vTWFrZWZpbGUuYW0gIHwgICAgOCArKy0tLQorIG1hbi9wby9wbzRhLmNmZyAgfCAgIDgyICsrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDQgZmlsZXMgY2hhbmdlZCwgNDcgaW5zZXJ0aW9ucygrKSwgNDcgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA1NzJjYWY1MjQ1N2JjNDE1OGY2NDQzYWE0NTU0MTRlMWQ1ZTg2MWRkCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIFNlcCAxOSAxNjo0ODo1MSAyMDExICswMjAwCisKKyAgICBidWlsZDogVXNlIHJtIGluc3RlYWQgb2YgcG80YSBvbiBtYWtlIGNsZWFuIHRvIG5vdCBjaGFuZ2UgdGhlIC5wb3QgZmlsZQorICAgIAorICAgIFRoZXJlJ3Mgbm8gd2F5IHRvIGludm9rZSBwbzRhIGZvciB0aGUgY2xlYW4gdGFyZ2V0IHcvbyBpdCBwb3NzaWJseQorICAgIG1vZGlmeWluZyB0aGUgLnBvdCBmaWxlLCB3aGljaCBtYWtlcyB0aGUgZGlzdGNoZWNrIHRhcmdldCBmYWlsIGluCisgICAgdGhhdCBjYXNlLgorCisgbWFuL01ha2VmaWxlLmFtIHwgICAgOCArLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCA3IGRlbGV0aW9ucygtKQorCitjb21taXQgMzA4MWFmODcwNTQ2ZDc5MjBkNTZhNDQ2MTFiN2JjMTg1Mjg2YmRhOAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBTZXAgMTkgMTY6MzQ6MTQgMjAxMSArMDIwMAorCisgICAgYnVpbGQ6IFBsYWNlIGFsbCBtYW4gcnVsZXMgYXQgdGhlIGVuZCBvZiB0aGUgTWFrZWZpbGUuYW0KKworIG1hbi9NYWtlZmlsZS5hbSB8ICAxNDYgKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgNzQgaW5zZXJ0aW9ucygrKSwgNzIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA1ZmM5MDg0ZmQ3YzQzOWJiYzczYTM2MjhiNTEzZTAyOGM5ODRhYzI5CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIFNlcCAxOCAxOToyMjo1OSAyMDExICswMjAwCisKKyAgICBkcGtnOiBEZXN0cm95IHRoZSBkcGtnX2Vycm9yIHZhcmlhYmxlcyBvbiB3YXJuaW5ncworICAgIAorICAgIFRoZSBsZWFrIG9uIGNtcHZlcnNpb25zKCkgZG9lcyBub3QgcG9zZSBhbnkgaXNzdWUgb24gbm9ybWFsIG9wZXJhdGlvbiBhcworICAgIHRoZSBwcm9ncmFtIHdpbGwgZXhpdCBpbW1lZGlhdGVseSBhbmQgdGhlIG1lbW9yeSB3aWxsIGJlIGZyZWVkIGJ5IHRoZQorICAgIHN5c3RlbSwgYnV0IG9uY2UgLS1jb21tYW5kLWZkIGlzIGVuYWJsZWQsIGl0IGNvdWxkIGFjdHVhbGx5IGJlIGEgcHJvYmxlbQorICAgIGR1ZSB0byBhIGxvbmcgcnVubmluZyBkcGtnIHByb2Nlc3MgbGVha2luZyByZXBlYXRlZGx5LgorICAgIAorICAgIFRoZSBsZWFrIG9uIHBhcnNlX2RiX3ZlcnNpb24oKSBpcyBhY3R1YWxseSBwcm9ibGVtYXRpYyBhcyBpdCBjYW4gYWN0CisgICAgcmVwZWF0ZWRseSBpZiB0aGVyZSdzIHRvbnMgb2Ygd2FybmluZ3Mgd2hlbiBwYXJzaW5nLgorICAgIAorICAgIFJlZ3Jlc3Npb24gaW50cm9kdWNlZCBpbiBjb21taXQgY2NjMjYzOTlmMmYwZTI5NWRhMTIwNmM1Y2U4MWZlODFhNWRjMGUyMS4KKyAgICAKKyAgICBSZXBvcnRlZC1ieTogTmllbHMgVGh5a2llciA8bmllbHNAdGh5a2llci5uZXQ+CisKKyBsaWIvZHBrZy9wYXJzZWhlbHAuYyB8ICAgIDIgKysKKyBzcmMvZW5xdWlyeS5jICAgICAgICB8ICAgIDIgKysKKyAyIGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IGUyZjk1ZDhhYmVlOTk3OGY0ODBjOGUxZTRhMzFlZDQyMDkwMDUwOWMKK0F1dGhvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitEYXRlOiAgIFN1biBTZXAgMTggMDk6NDI6NDggMjAxMSArMDIwMAorCisgICAgVXBkYXRlIEdlcm1hbiB0cmFuc2xhdGlvbiBvZiBtYW51YWwgcGFnZXMKKyAgICAKKyAgICBVcGRhdGUgdG8gMjA2NHQuCisKKyBtYW4vcG8vZGUucG8gfCAgIDQ2ICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDIzIGluc2VydGlvbnMoKyksIDIzIGRlbGV0aW9ucygtKQorCitjb21taXQgOTZmMjFiZDZkOGNhYzljZTc1NzI2YmEyNjI2ZmJhYzg2OTMzYmY5ZgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBTZXAgMTYgMjM6Mzk6MDkgMjAxMSArMDIwMAorCisgICAgYnVpbGQ6IElnbm9yZSBwZXJsIHRlc3QgcHJvZ3JhbXMgZm9yIGNvdmVyYWdlIHJlcG9ydAorCisgc2NyaXB0cy9NYWtlZmlsZS5hbSB8ICAgIDQgKysrLQorIDEgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgYzI0ZThlYmEzYjRmYTY4N2U3NzI1OTgyMmU5YWU5MTczNWFjMTk0MQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBTZXAgMTYgMjI6MTc6MDkgMjAxMSArMDIwMAorCisgICAgcy1zLWQoOCk6IERvY3VtZW50IHRoZSBvcHRpb25hbCDigJw6Z3JvdXB8Z2lk4oCdIGFyZ3VtZW50IGZvciAtLWNodWlkCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICB8ICAgIDEgKworIG1hbi9zdGFydC1zdG9wLWRhZW1vbi44IHwgICAgMiArLQorIDIgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgNDlhZDE4MDA3NGRkNTkzMzc2MjJjNTY4MzkxNzcwOTM2Y2Y5MTJjNAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBTZXAgMTYgMTk6NDE6MzEgMjAxMSArMDIwMAorCisgICAgcy1zLWQ6IFJlc2V0IHRoZSB1c2VyIGFuZCBncm91cCBuYW1lcyBmcm9tIHRoZSBwYXNzd29yZCBlbnRyeSBvbiAtLWNodWlkCisgICAgCisgICAgVGhpcyBndWFyYW50ZWVzIHRoZSBpbml0Z3JvdXBzKCkgY2FsbCB3aWxsIG5vdCBmYWlsIHdoZW4gdGhlIHVzZXIKKyAgICBzcGVjaWZpZWQgdGhlIHVzZXIgdG8gY2hhbmdlIHRvIGFzIGEgdWlkIGluc3RlYWQgb2YgYSB1c2VybmFtZS4KKyAgICAKKyAgICBDbG9zZXM6ICM2NDE4MzQKKyAgICAKKyAgICBSZXBvcnRlZC1ieTogQW5kcmVhcyBQcmV0enNjaCA8YXByQGNuLWVuZy5kZT4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgfCAgICAyICsrCisgdXRpbHMvc3RhcnQtc3RvcC1kYWVtb24uYyB8ICAgIDIgKysKKyAyIGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IGY4MmMyM2E3NmQwMjhjM2I3ZDRkZjQxZDUxYThlYWFjYjUxNjJiODgKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgU2VwIDE1IDA0OjQxOjMwIDIwMTEgKzAyMDAKKworICAgIHMtcy1kOiBGaXggZG9fcHJvY2luaXQoKSBvbiBPU0h1cmQsIE9TaHB1eCBhbmQgSEFWRV9LVk1fSAorICAgIAorICAgIFRoZSBmdW5jdGlvbiBvbiB0aG9zZSBzeXN0ZW1zIGRpZCBub3QgaGF2ZSB0aGVpciByZXR1cm4gY29kZSB1cGRhdGVkCisgICAgZm9yIHRoZSBzdGF0dXMgY29kZS4KKworIHV0aWxzL3N0YXJ0LXN0b3AtZGFlbW9uLmMgfCAgIDI0ICsrKysrKysrKysrKysrKysrKystLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMTkgaW5zZXJ0aW9ucygrKSwgNSBkZWxldGlvbnMoLSkKKworY29tbWl0IDk4MDVlZjIwZWJmNzE0MWM0MTkzNzZhZjY4ZTc0NzZiNWMwZGQ1YzAKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgU2VwIDE0IDIzOjMyOjQzIDIwMTEgKzAyMDAKKworICAgIHMtcy1kOiBDYXN0IHByb2Nfc3RhdF9vd25lcl91aWQoKSB0byB1aWRfdCB0byBmaXggYSB3YXJuaW5nCisKKyB1dGlscy9zdGFydC1zdG9wLWRhZW1vbi5jIHwgICAgMiArLQorIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgOGU1NTg1ZmYwYzcwYmUyMDcwMTkwZGVmYTZjMmQwNDAzOWMzZmNiNAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBTZXAgMTMgMDg6NTA6MDMgMjAxMSArMDIwMAorCisgICAgZHBrZy1idWlsZGZsYWdzKDEpOiBGaXggbGQgb3B0aW9uIG5hbWUgZnJvbSAteixiaW5kbm93IHRvIC16LG5vdworCisgbWFuL2Rwa2ctYnVpbGRmbGFncy4xIHwgICAgMiArLQorIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgODJmNDQ5N2YzYmJlNDFkNTJmZTY5Nzg2OGQ1MzczMmJiMzU1ZGE4MQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBTZXAgMTMgMDU6MTk6NTAgMjAxMSArMDIwMAorCisgICAgdS1hOiBGcmVlIHN0cnVjdCBhbHRlcm5hdGl2ZV9tYXAgdmFyaWFibGVzCisgICAgCisgICAgVGFrZSByZWZlcmVuY2VzIHdoZW4gYWRkaW5nIGR1cGxpY2F0ZSBlbnRyaWVzIG9mIHRoZSBzYW1lIGFsdGVybmF0aXZlCisgICAgb24gbG9hZCwgYW5kIGFkZCBhIG5ldyBhbHRlcm5hdGl2ZV9tYXBfZnJlZSgpIGZ1bmN0aW9uIHRvIGZyZWUgYW4KKyAgICBhbHRlcm5hdGl2ZV9tYXAgdmFyaWFibGUuCisKKyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmMgfCAgIDIzICsrKysrKysrKysrKysrKysrKysrKysrCisgMSBmaWxlcyBjaGFuZ2VkLCAyMyBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgM2IyYjlhZWE1MThmM2UzYTU2MmE1N2E5ZDdjYWEyNjIzYjQ4NzZmZgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBTZXAgMTMgMDU6MTc6MzQgMjAxMSArMDIwMAorCisgICAgdS1hOiBBZGQgcmVmIGNvdW50aW5nIHN1cHBvcnQgdG8gc3RydWN0IGFsdGVybmF0aXZlCisgICAgCisgICAgVGhpcyB3aWxsIGFsbG93IHRvIHByb3Blcmx5IGZyZWUgYW4gYWx0ZXJuYXRpdmUgbWFwIHdoaWNoIGNvbnRhaW5zCisgICAgZHVwbGljYXRlZCByZWZlcmVuY2VzIHRvIHRoZSBzYW1lIGFsdGVybmF0aXZlIHN0cnVjdC4KKworIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYyB8ICAgMTcgKysrKysrKysrKysrKysrKysKKyAxIGZpbGVzIGNoYW5nZWQsIDE3IGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBkOTE4ZDAyNWYxZWYxYzE1Yjc2ZWIyZmNjMTRkNTgzMDUxNDkzN2E5CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIFNlcCAxOCAwNzoxMTo0OCAyMDExICswMjAwCisKKyAgICBkcGtnOiBEbyBub3QgZmFpbCBvbiB2ZXJzaW9uIHBhcnNpbmcgd2FybmluZ3MgaW4gLS1jb21wYXJlLXZlcnNpb25zCisgICAgCisgICAgVGhlIGJvZ3VzIHZlcnNpb25zIG1pZ2h0IGdldCBmZWQgaW50byDCq2Rwa2cgLS1jb21wYXJlLXZlcnNpb25zwrsgYnkKKyAgICB3YXkgb2YgbWFpbnRhaW5lciBzY3JpcHRzLCB3aGljaCB3b3VsZCBnZXQgdGhlIGJvZ3VzIHZlcnNpb25zIGZyb20KKyAgICB0aGUgZGF0YWJhc2UsIHNvbWV3aGVyZSBkcGtnIHN0aWxsIGFsbG93cyB0aG9zZSB0byBleGlzdC4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAzICsrKworIHNyYy9lbnF1aXJ5LmMgICAgfCAgIDE2ICsrKysrKysrKysrKy0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDE1IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBjY2MyNjM5OWYyZjBlMjk1ZGExMjA2YzVjZTgxZmU4MWE1ZGMwZTIxCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIFNlcCAxNCAwNDoxODo0NyAyMDExICswMjAwCisKKyAgICBsaWJkcGtnOiBTd2l0Y2ggcGFyc2V2ZXJzaW9uKCkgdG8gdXNlIGRwa2dfZXJyb3IKKyAgICAKKyAgICBUaGlzIGFsbG93cyB0byBtZXJnZSBiYWNrIHRoZSBwYXJzZXZlcnNpb25fbGF4KCkgYW5kCisgICAgdmVyc2lvbl9zdHJpY3RfY2hlY2soKSBmdW5jdGlvbnMgaW50byBhIHNpbmdsZSBwYXJzZXZlcnNpb24oKSwgd2hpY2gKKyAgICBwZXJmb3JtcyBhbGwgdGhlIHZhbGlkYXRpb24sIGJ1dCBpc3N1ZXMgZGlmZmVyZW50IHR5cGVzIG9mIGRwa2dfZXJyb3IKKyAgICBtZXNzYWdlcyBvbiBlcnJvci4gV2hpY2ggc2ltcGxpZmllcyBwYXJzZV9kYl92ZXJzaW9uKCkgYW5kIHdpbGwgYWxsb3cKKyAgICBmb3IgY2FsbGVycyB0byBkaXN0aW5ndWlzaCB0aGUgZXJyb3IgY29uZGl0aW9ucyBhbmQgaGFuZGxlIHRoZW0gYXMKKyAgICB0aGV5IHNlZSBmaXQuCisKKyBsaWIvZHBrZy9kcGtnLWRiLmggICAgICAgIHwgICAgNSArKy0KKyBsaWIvZHBrZy9wYXJzZWhlbHAuYyAgICAgIHwgIDEwMCArKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBsaWIvZHBrZy90ZXN0L3QtdmVyc2lvbi5jIHwgICA2OSArKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tCisgc3JjL2VucXVpcnkuYyAgICAgICAgICAgICB8ICAgMTIgKystLS0KKyA0IGZpbGVzIGNoYW5nZWQsIDk0IGluc2VydGlvbnMoKyksIDkyIGRlbGV0aW9ucygtKQorCitjb21taXQgYjAzZjIxMmQzYTI5YmVmMmJlMmYyNjlmMDY1NmU0ODJiYjllNTZhZAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBNYXkgMTAgMTk6NTA6MTUgMjAxMSArMDIwMAorCisgICAgbGliZHBrZzogQWRkIG5ldyBlcnJvciBtb2R1bGUKKyAgICAKKyAgICBUaGlzIG5ldyBtb2R1bGUgcHJvdmlkZXMgZXJyb3IgcmVwb3J0aW5nIGluZnJhc3RydWN0dXJlLCB3aGljaCB3aWxsCisgICAgYmUgdXNlZCB0byByZXBvcnQgYmFjayBlcnJvciBpbmZvcm1hdGlvbiBmcm9tIGlubmVyIGZ1bmN0aW9ucyB0aGF0CisgICAgYXJlIG5vdCBzdXBwb3NlZCB0byBvaHNoaXQoKSBkaXJlY3RseSwgdGhlIGNhbGxlciBzaG91bGQgYmUKKyAgICByZXNwb25zaWJsZSBmb3IgdGhlIG91dGNvbWUsIGluY2x1ZGluZyBqdXN0IGZvcndhcmRpbmcgdGhlIGVycm9yCisgICAgdG8gaXRzIG93biBjYWxsZXIuCisKKyBsaWIvZHBrZy9NYWtlZmlsZS5hbSB8ICAgIDIgKworIGxpYi9kcGtnL2Vycm9yLmMgICAgIHwgICA5MyArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKworIGxpYi9kcGtnL2Vycm9yLmggICAgIHwgICA0OSArKysrKysrKysrKysrKysrKysrKysrKysrKworIDMgZmlsZXMgY2hhbmdlZCwgMTQ0IGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAwN2E4ZjZkODgyYzAxOWVkMDM5NDQyMjM3YzUzZDgzMzNkYzljNGE1CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIFNlcCAxNiAxNzoyMzo1MyAyMDExICswMjAwCisKKyAgICBsaWJkcGtnOiBBZGQgbW9yZSB0ZXN0IGNhc2VzIGZvciB2ZXJzaW9uIHBhcnNpbmcgZmFpbHVyZXMKKworIGxpYi9kcGtnL3Rlc3QvdC12ZXJzaW9uLmMgfCAgICA5ICsrKysrKysrKworIDEgZmlsZXMgY2hhbmdlZCwgOSBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgMTFiYjg2ZmU4YWEyMDhkZTQ0NTM1ODlkYTMxY2Y1YzYyNjQ5ZjA5MQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBTZXAgMTQgMDU6MDc6MTkgMjAxMSArMDIwMAorCisgICAgbGliZHBrZzogUmVuYW1lIGVyciB2YXJpYWJsZXMgdG8gel9lcnJudW0gYW5kIGJ6X2Vycm51bQorICAgIAorICAgIE1ha2UgdGhlIHZhcmlhYmxlcyBtb3JlIHNwZWNpZmljIGFuZCBjbGVhciBhYm91dCB0aGVpciBpbnRlbmRlZCBwdXJwb3NlLgorCisgbGliL2Rwa2cvY29tcHJlc3MuYyB8ICAgMzggKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDE5IGluc2VydGlvbnMoKyksIDE5IGRlbGV0aW9ucygtKQorCitjb21taXQgMzlhNTM1NjQ2ZmUxN2Y0ZjlkOWRiODgyOTVlNDA2NDQzZDFiYzQwYQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBNYXkgMTAgMTA6MTQ6NDAgMjAxMSArMDIwMAorCisgICAgbGliZHBrZzogTW92ZSBvaHNoaXRlIGNhbGxzIGludG8gdGhlIGJ1ZmZlcl9jb3B5IGxvb3AKKworIGxpYi9kcGtnL2J1ZmZlci5jIHwgICAgOCArKy0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCA2IGRlbGV0aW9ucygtKQorCitjb21taXQgNDlhMDAyMmI3MmRmMzM1ODlmYzQxNmMzMGRjMzNhODJmNWY1OGVhNgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBTZXAgMTcgMTU6NTg6NTEgMjAxMSArMDIwMAorCisgICAgbGliZHBrZzogUmVmYWN0b3IgcGF0aCBiYXNlbmFtZSBjb2RlIGludG8gbmV3IHBhdGhfYmFzZW5hbWUgZnVuY3Rpb24KKyAgICAKKyAgICBUaGlzIGZ1bmN0aW9uIGlzIGFuIGVxdWl2YWxlbnQgb2YgdGhlIEdOVSBiYXNlbmFtZSwgYnV0IHRoaXMgb25lIHdpbGwKKyAgICB3b3JrIGNvbnNpc3RlbnRseSBvbiBhbnkgc3lzdGVtIHJlZ2FyZGxlc3Mgb2YgbGliYyB1c2VkLgorCisgZHBrZy1zcGxpdC9zcGxpdC5jICAgICB8ICAgIDggKysrLS0tLS0KKyBsaWIvZHBrZy9jb21tYW5kLmMgICAgIHwgICAxMSArKysrKy0tLS0tLQorIGxpYi9kcGtnL3BhdGguYyAgICAgICAgfCAgIDIxICsrKysrKysrKysrKysrKysrKysrLQorIGxpYi9kcGtnL3BhdGguaCAgICAgICAgfCAgICAzICsrLQorIGxpYi9kcGtnL3Byb2duYW1lLmMgICAgfCAgIDEwICsrLS0tLS0tLS0KKyBsaWIvZHBrZy90ZXN0L3QtcGF0aC5jIHwgICAxMyArKysrKysrKysrKysrCisgc3JjL2NvbmZpZ3VyZS5jICAgICAgICB8ICAgIDUgKystLS0KKyA3IGZpbGVzIGNoYW5nZWQsIDQ3IGluc2VydGlvbnMoKyksIDI0IGRlbGV0aW9ucygtKQorCitjb21taXQgYjZiMjNhODI1OTQwMTlkMDhkY2RhZjRmOGIyYTIzOGRjZTc4Yzk0NQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBTZXAgMTcgMDU6MDk6NTYgMjAxMSArMDIwMAorCisgICAgbGliZHBrZzogQWRkIG5ldyBtb2QtZGIsIHByb2duYW1lIGFuZCBzdWJwcm9jIG1vZHVsZXMgdGVzdCBjYXNlcworCisgbGliL2Rwa2cvdGVzdC8uZ2l0aWdub3JlICAgfCAgICAzICsKKyBsaWIvZHBrZy90ZXN0L01ha2VmaWxlLmFtICB8ICAgIDYgKystCisgbGliL2Rwa2cvdGVzdC90LW1vZC1kYi5jICAgfCAgIDU2ICsrKysrKysrKysrKysrKysrKysrKysrKysrKworIGxpYi9kcGtnL3Rlc3QvdC1wcm9nbmFtZS5jIHwgICA0NiArKysrKysrKysrKysrKysrKysrKysrCisgbGliL2Rwa2cvdGVzdC90LXN1YnByb2MuYyAgfCAgIDkxICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCisgNSBmaWxlcyBjaGFuZ2VkLCAyMDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDdlMjZhY2QwMDhkMzhmNmQ1NmMyNmU2YTU5NTQzMDYzNmVhNDAyMTEKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgU2VwIDE3IDA1OjA3OjEzIDIwMTEgKzAyMDAKKworICAgIGxpYmRwa2c6IEFkZCBtaXNzaW5nIHRlc3QgY2FzZXMgZm9yIHRoZSBjb21tYW5kIGFuZCB2YXJidWYgbW9kdWxlcworCisgbGliL2Rwa2cvdGVzdC90LWNvbW1hbmQuYyB8ICAgMjIgKysrKysrKysrKysrKysrKysrKysrLQorIGxpYi9kcGtnL3Rlc3QvdC12YXJidWYuYyAgfCAgIDI0ICsrKysrKysrKysrKysrKysrKysrKysrKworIDIgZmlsZXMgY2hhbmdlZCwgNDUgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDAyYjQ4ZWZkNTk0MTZiNzlhNTFlOWEwOGVmNTc2ZGY2MTEwZjRmOGEKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgU2VwIDE2IDE5OjQ2OjM3IDIwMTEgKzAyMDAKKworICAgIGxpYmRwa2c6IFVuaWZ5IHRlc3RfdmFyYnVmX2FkZCBmdW5jdGlvbiBuYW1pbmcKKworIGxpYi9kcGtnL3Rlc3QvdC12YXJidWYuYyB8ICAgIDggKysrKy0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKKworY29tbWl0IDRhYWRmZTc0YzVjY2U1YTZhY2M0NWUxNTI3ZDY0NTgzZWUxYjRkNDUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gU2VwIDExIDA1OjE0OjMwIDIwMTEgKzAyMDAKKworICAgIGRwa2ctc3BsaXQ6IERvIG5vdCBpbmNsdWRlIHRyYWlsaW5nIHNsYXNoIGluIFBBUlRTRElSCisKKyBkcGtnLXNwbGl0L2Rwa2ctc3BsaXQuaCB8ICAgIDIgKy0KKyBkcGtnLXNwbGl0L21haW4uYyAgICAgICB8ICAgMTAgLS0tLS0tLS0tLQorIGRwa2ctc3BsaXQvcXVldWUuYyAgICAgIHwgICAgOSArKysrLS0tLS0KKyAzIGZpbGVzIGNoYW5nZWQsIDUgaW5zZXJ0aW9ucygrKSwgMTYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAxNzJiNmJjY2EwZTVhNzU3ZTBlMGJkMTMyYzMxOWFiZTQ0N2YzZTAxCitBdXRob3I6IFBldGVyIEtyZWZ0aW5nIDxwZXRlcmtAZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIFNlcCAxNCAwNzozOTo1MSAyMDExICswMTAwCisKKyAgICBGaXhlZCB0eXBvIGluIFN3ZWRpc2ggbWFuIHBhZ2UgdHJhbnNsYXRpb24uCisKKyBtYW4vcG8vc3YucG8gfCAgICA0ICsrLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDkyNjFhNmI0ZjA4NWM4ZTJjZjg3ZjY0ZDM2MzI4M2Y2ZDg0ZTViMjkKK0F1dGhvcjogUGV0ZXIgS3JlZnRpbmcgPHBldGVya0BkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgU2VwIDEzIDA4OjMwOjE0IDIwMTEgKzAxMDAKKworICAgIFVwZGF0ZSBTd2VkaXNoIHRyYW5zbGF0aW9uLgorICAgIAorICAgIG1hbi9wby9zdi5wbzogMjA2NHQwZjB1LgorCisgbWFuL3BvL3N2LnBvIHwgICA4NyArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDc2IGluc2VydGlvbnMoKyksIDExIGRlbGV0aW9ucygtKQorCitjb21taXQgMzYwOWI1MmNjYTI0MGVlYTU4NzM1OTA3ZDk4MTA0ODZmNTYwZTVmZQorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBTZXAgMTIgMTA6NTc6MzggMjAxMSArMDIwMAorCisgICAgdXBkYXRlLWFsdGVybmF0aXZlczogcHJvcGVybHkgaGFuZGxlIHN0YXQoKS9sc3RhdCgpIGZhaWx1cmVzCisgICAgCisgICAgRml4IHVwZGF0ZS1hbHRlcm5hdGl2ZXMgdG8gYWx3YXlzIGZhaWwgd2hlbiBsc3RhdCgpIG9yIHN0YXQoKSBmYWlscworICAgIHdpdGggc29tZXRoaW5nIGVsc2UgdGhhbiBFTk9FTlQuIFRoZXJlIHdlcmUgbWFueSBwbGFjZXMgdGVzdGluZworICAgIHRoZSBleGlzdGVuY2Ugb2YgZmlsZXMgd2l0aCDigJxzdGF0KCkgPT0gMOKAnSBhbmQg4oCcc3RhdCgpID09IC0xICYmIGVycm5vID09CisgICAgRU5PRU5U4oCdIHdyb25nbHkgYXNzdW1pbmcgdGhhdCB0aGUgb25seSBmYWlsdXJlIGNhdXNlIGlzIEVOT0VOVC4KKworIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYyB8ICAgMzQgKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMjUgaW5zZXJ0aW9ucygrKSwgOSBkZWxldGlvbnMoLSkKKworY29tbWl0IGJmOWNlZmViN2FiZDRiYjA0NDViM2EzOWE3NGQ1NTk0ZTI0N2NkOGUKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gU2VwIDEyIDEwOjIwOjA1IDIwMTEgKzAyMDAKKworICAgIHVwZGF0ZS1hbHRlcm5hdGl2ZXM6IHVzZSBhbHRlcm5hdGl2ZV9wYXRoX2NsYXNzaWZ5KCkgbW9yZSBleHRlbnNpdmVseQorICAgIAorICAgIENvbnN0cnVjdHMgbGlrZSDigJxsc3RhdChmb28sICZzdCkgPT0gMCAmJiBTX0lTTE5LKHN0LnN0X21vZGUp4oCdIGRvIG5vdAorICAgIGZhaWwgd2hlbiBsc3RhdCgpIGZhaWxzIGFuZCB0aGV5IHNob3VsZCByZWFsbHkgZmFpbCBleGNlcHQgd2hlbgorICAgIHRoZSBmYWlsdXJlIGlzIGR1ZSB0byBhIG1pc3NpbmcgZm9vIChFTk9FTlQpLgorICAgIAorICAgIFVzaW5nIGFsdGVybmF0aXZlX3BhdGhfY2xhc3NpZnkoKSBhY2hpZXZlcyB0aGlzLgorCisgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jIHwgICAgNiArKystLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworY29tbWl0IDlkY2I1MGE1OTQxNGUxZmUwZTZhOGE0YzhlZTlmNTlkMTA3MDYzOTYKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gU2VwIDEyIDA5OjQyOjExIDIwMTEgKzAyMDAKKworICAgIHVwZGF0ZS1hbHRlcm5hdGl2ZXM6IG5ldyBub24tcmVncmVzc2lvbiB0ZXN0CisgICAgCisgICAgVGhpcyBvbmUgY2F0Y2hlcyB0aGUgcmVncmVzc2lvbiBpbnRyb2R1Y2VkIGluCisgICAgNmM0ODFlMTlhNTMyMDgwNjQzZTNjZjVjNzY3NjBkZjgwMDllYTJjNyBhbmQgZml4ZWQgaW4KKyAgICA5ZGNlYWMwMDVhMDMzMWNlYjg0MGY5YzgyNzNjN2ZkMTk1NDEzNTE2LgorICAgIAorICAgIEl0IHNob3VsZCBhbHNvIGNhdGNoIHRoZSBmb3JtZXIgcHJvYmxlbSBvZiBwYXNzaW5nIE5VTEwgdG8gc3RhdCgpICh2aWEKKyAgICBuZXdfZmlsZSkuIEJ1dCB0aGlzIGRpZCBub3QgdHJpZ2dlciBhbnkgc2VnZmF1bHQsIG1lcmVseSBhIGZhaWx1cmUKKyAgICB3aXRoIEVGQVVMVC4KKworIHV0aWxzL3QvMTAwX3VwZGF0ZV9hbHRlcm5hdGl2ZXMudCB8ICAgMTAgKysrKysrKysrLQorIDEgZmlsZXMgY2hhbmdlZCwgOSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgOWRjZWFjMDA1YTAzMzFjZWI4NDBmOWM4MjczYzdmZDE5NTQxMzUxNgorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBTZXAgMTIgMDk6MTg6MDYgMjAxMSArMDIwMAorCisgICAgUmV2ZXJ0ICJ1LWE6IFVzZSB4cmVhZGxpbmsoKSBpbnN0ZWFkIG9mIGFyZWFkbGluaygpIGluIGFsdGVybmF0aXZlX2V2b2x2ZSgpIgorICAgIAorICAgIFRoaXMgcmV2ZXJ0cyBjb21taXQgNmM0ODFlMTlhNTMyMDgwNjQzZTNjZjVjNzY3NjBkZjgwMDllYTJjNyBhbmQKKyAgICBjaGFuZ2VzIHRoZSBzdXJyb3VuZGluZyBjb2RlIHRvIGRlYWwgY29ycmVjdGx5IHdpdGggdGhlIGNhc2Ugd2hlcmUKKyAgICBhcmVhZGxpbmsoKSByZXR1cm5zIE5VTEwuCisgICAgCisgICAgVGhpcyBwYXJ0IG9mIHRoZSBjb2RlIHJlYWxseSBoYWQgdG8gY29wZSB3aXRoIGEgbm9uLWV4aXN0aW5nCisgICAgL2V0Yy9hbHRlcm5hdGl2ZXMvc2xhdmUuCisgICAgCisgICAgUmVwb3J0ZWQtYnk6IFN2ZW4gSm9hY2hpbSA8c3ZlbmpvYWNAZ214LmRlPgorCisgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jIHwgICAgNCArKy0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA0ZDVkMDIyYzhiMWI0MTgyNDgyZjQ3YzZkYzljYWZkZmRlYTE4YzY2CitBdXRob3I6IEhlbGdlIEtyZXV0em1hbm4gPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorRGF0ZTogICBTdW4gU2VwIDExIDE1OjE5OjM1IDIwMTEgKzAyMDAKKworICAgIFNvcnQgbGFuZ3VhZ2UgbmFtZXMgcHJvcGVybHkKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICA0ICsrLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IGU4NDE2MWZjY2VlMDMzZDM2NTY4ODAxN2M3MDA2OTcwY2NkNjk0MWIKK0F1dGhvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitEYXRlOiAgIFN1biBTZXAgMTEgMTU6MTg6MjYgMjAxMSArMDIwMAorCisgICAgVXBkYXRlIEdlcm1hbiB0cmFuc2xhdGlvbiBvZiBtYW51YWwgcGFnZXMKKyAgICAKKyAgICBVcGRhdGUgdG8gMjA2NHQuCisKKyBtYW4vcG8vZGUucG8gfCAgIDU1ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDUzIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA5ZTNlNjJiYTI4N2MwMmJjMmRkY2U3NzM0NDU2MjQ0YmUyYWI3MzU2CitBdXRob3I6IFBldGVyIEtyZWZ0aW5nIDxwZXRlcmtAZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIFNlcCAxMSAxMDowMzoxMSAyMDExICswMTAwCisKKyAgICBVcGRhdGUgU3dlZGlzaCB0cmFuc2xhdGlvbjoKKyAgICAKKyAgICBwby9zdi5wbzogMTAyM3QwZjB1LgorICAgIHNjcmlwdHMvcG8vc3YucG86IDUyNXQwZjB1LgorICAgIG1hbi9wby9zdi5wbzogMjA0M3QyZjE5dSAoaGFyZGVuaW5nIHNlY3Rpb24gbm90IHRyYW5zbGF0ZWQpLgorCisgbWFuL3BvL3N2LnBvICAgICB8ICA3OTIgKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9zdi5wbyAgICAgICAgIHwgIDk2NyArKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBzY3JpcHRzL3BvL3N2LnBvIHwgIDE2NSArKysrLS0tLS0tCisgMyBmaWxlcyBjaGFuZ2VkLCAxMDIwIGluc2VydGlvbnMoKyksIDkwNCBkZWxldGlvbnMoLSkKKworY29tbWl0IDI1ZTdmNTBlODdiZjkwMWE4Y2QyMmMzOWNlMGY1N2M5NjY2MWE4YmEKK0F1dGhvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitEYXRlOiAgIFNhdCBTZXAgMTAgMjA6MTE6NTUgMjAxMSArMDIwMAorCisgICAgVXBkYXRlIEdlcm1hbiB0cmFuc2xhdGlvbiBvZiBtYW51YWwgcGFnZXMKKyAgICAKKyAgICBVcGRhdGUgdG8gMjA1NnQwZjh1LgorCisgbWFuL3BvL2RlLnBvIHwgIDI1MCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDI0MSBpbnNlcnRpb25zKCspLCA5IGRlbGV0aW9ucygtKQorCitjb21taXQgZmE1MDMzM2JkMGY5ZTMzOTEyZTA0ZTMwYjBhNjc3YWFmNzQ2MGM0NgorQXV0aG9yOiBIZWxnZSBLcmV1dHptYW5uIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KK0RhdGU6ICAgU2F0IFNlcCAxMCAxOToxMTo0NCAyMDExICswMjAwCisKKyAgICBVcGRhdGUgR2VybWFuIHNjcmlwdHMgdHJhbnNsYXRpb24KKyAgICAKKyAgICBVcGRhdGUgdG8gNTI1dC4KKworIHNjcmlwdHMvcG8vZGUucG8gfCAgMTA5ICsrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA1OCBpbnNlcnRpb25zKCspLCA1MSBkZWxldGlvbnMoLSkKKworY29tbWl0IDNkMTQ2ZTQzNzY4MTMyM2QwNWFlNWM4MzQ1ZDg1NTc5YTNjZmZmZmUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgU2VwIDEwIDE4OjMyOjMwIDIwMTEgKzAyMDAKKworICAgIEZpeCBidWcgY2xvc3VyZSBmb3Ig4oCcZHBrZy1kZWI6IERvIG5vdCB3YXJuIG9uIHN0cmFuZ2UgdGltZXN0YW1wc+KAnQorICAgIAorICAgIFNwb3R0ZWQtYnk6IENhcmwgRsO8cnN0ZW5iZXJnIDxhemF0b3RoQGdtYWlsLmNvbT4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAyICstCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyMjY2ZmRjNmRmNzYyZmE5ZDIzNzE0MTFkZTNlMGM3YWRmYmMwZmQyCitBdXRob3I6IFN2ZW4gSm9hY2hpbSA8c3ZlbmpvYWNAZ214LmRlPgorRGF0ZTogICBGcmkgU2VwIDkgMTE6MzU6MTggMjAxMSArMDIwMAorCisgICAgR2VybWFuIGRwa2cgdHJhbnNsYXRpb24gdXBkYXRlCisgICAgCisgICAgVXBkYXRlIHRvIDEwMjJ0LgorCisgcG8vZGUucG8gfCAgNjMwICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAzMTcgaW5zZXJ0aW9ucygrKSwgMzEzIGRlbGV0aW9ucygtKQorCitjb21taXQgMmNjZDM3YmNhZGY0YWI5NWE4MTViMDk1MmY5MzNkM2U3MzU1NTM2NgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBTZXAgOSAwOTowMjoyNyAyMDExICswMjAwCisKKyAgICBidWlsZDogU2hpcCBkZWJpYW4vZHBrZy5wcmVybSBpbiB0aGUgZGlzdCB0YXJiYWxsCisgICAgCisgICAgUmVncmVzc2lvbiBpbnRyb2R1Y2VkIGluIGNvbW1pdCBjZjZiOThkMzczOGQxZmU4YjMxMTliNzFmZDgzMjFjMTJmZWI2MThjLgorCisgTWFrZWZpbGUuYW0gfCAgICAxICsKKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDk3MjA5NWJlYTVmNmJjZjNhMTRmM2IzMTUxY2EzY2E1NmVmZjY3NDQKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgU2VwIDkgMDY6MjQ6MTkgMjAxMSArMDIwMAorCisgICAgZHBrZy1idWlsZGZsYWdzKDEpOiBFc2NhcGUgbWludXMgc2lnbgorCisgbWFuL2Rwa2ctYnVpbGRmbGFncy4xIHwgICAgNCArKy0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAxZTVjZGNjZDEwNGExZmU4MTliNTAxYWUwYzNmZjYzMTcwNjE3ZjcwCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIFNlcCA5IDA1OjU1OjM3IDIwMTEgKzAyMDAKKworICAgIGxpYmRwa2c6IERvIG5vdCBnZW5lcmF0ZSB0aGUgdW51c2VkIGluZm9kaXIgaW4gbW9kc3RhdGRiX2luaXQoKQorCisgbGliL2Rwa2cvZGJtb2RpZnkuYyB8ICAgIDIgLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDAgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDI1ZjM2OGNiOTc1NmY0ZmUyMzhhZmY5ZjBmN2VlM2IxNWUyZTg2YTQKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgU2VwIDcgMDY6Mzg6NDEgMjAxMSArMDIwMAorCisgICAgZHBrZzogUmVmYWN0b3IgY29udHJvbCBkaXJlY3RvcnkgY3JlYXRpb24gb24gdW5wYWNrCisKKyBzcmMvcHJvY2Vzc2FyYy5jIHwgICA3NCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgNDMgaW5zZXJ0aW9ucygrKSwgMzEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAwZTYzZWEzZWUxYTI0N2U1ODFlZWYwZmRlZTQ1M2QwOWY3YTM1OGY3CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIFNlcCA3IDA2OjIwOjQzIDIwMTEgKzAyMDAKKworICAgIERvIG5vdCBpbmNsdWRlIHRyYWlsaW5nIHNsYXNoIGZvciBkaXJlY3Rvcnkgc3RyaW5nIGxpdGVyYWxzCisgICAgCisgICAgVGhpcyBtYWtlcyBpdCBtb3JlIG5hdHVyYWwgdG8gbWFuYWdlIHRoZSBkaXJlY3RvcnkgbmFtZXMsIGFuZCBhdm9pZHMKKyAgICBzb21lIGRvdWJsZWQgc2xhc2hlcy4KKworIGxpYi9kcGtnL2Rwa2cuaCAgICAgICAgIHwgICAgNiArKystLS0KKyBsaWIvZHBrZy90cmlnZGVmZXJyZWQubCB8ICAgIDEgKworIGxpYi9kcGtnL3RyaWdsaWIuYyAgICAgIHwgICAgMSArCisgc3JjL2ZpbGVzZGIuYyAgICAgICAgICAgfCAgICAxICsKKyBzcmMvaW5mb2RiLmMgICAgICAgICAgICB8ICAgIDEgKworIHNyYy9wcm9jZXNzYXJjLmMgICAgICAgIHwgICAgOCArKystLS0tLQorIDYgZmlsZXMgY2hhbmdlZCwgMTAgaW5zZXJ0aW9ucygrKSwgOCBkZWxldGlvbnMoLSkKKworY29tbWl0IGFmNGE1ZGQ4YmIyZTg4YzBkOTc2NDZiNjk3ZjYwZjllOWQyNjVmZGYKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gU2VwIDUgMTY6MDg6NTEgMjAxMSArMDIwMAorCisgICAgbGliZHBrZzogTW92ZSB0cmlnZ2VyIG5vdGUgc3VwcG9ydCB0byBhIG5ldyB0cmlnbm90ZSBtb2R1bGUKKyAgICAKKyAgICBUaGlzIGRldGFuZ2xlcyB0aGUgdHJpZ2dlciBub3RlIHN1cHBvcnQgZnJvbSB0cmlnbGliIGFuZCBhdm9pZHMgY29kZQorICAgIHVzaW5nIHBhcnNlZGIoKSB0byBlbmQgdXAgcHVsbGluZyB0aGUgdHJpZ2xpYiBhbmQgZGJtb2RpZnkgbW9kdWxlcy4KKyAgICBUaGlzIHJlZHVjZXMgdGhlIGRwa2ctZGViIGJpbmFyeSBzaXplLgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgfCAgICAyICsKKyBsaWIvZHBrZy9NYWtlZmlsZS5hbSB8ICAgIDEgKworIGxpYi9kcGtnL3RyaWdsaWIuYyAgIHwgICA5OSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIGxpYi9kcGtnL3RyaWdub3RlLmMgIHwgIDEyOCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKworIDQgZmlsZXMgY2hhbmdlZCwgMTMxIGluc2VydGlvbnMoKyksIDk5IGRlbGV0aW9ucygtKQorCitjb21taXQgYTQyOThlNmZmMjQ1NTA1YTVhOTYzYTA4ZmUyZDQwZWNhZDljNTk1ZQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBTZXAgNiAwNTo1OToxMyAyMDExICswMjAwCisKKyAgICBsaWJkcGtnOiBSZWZhY3RvciB0cmlnX2F3YWl0ZWRfcGVuZF9oZWFkIHByb2Nlc3NpbmcgaW50byBuZXcgZnVuY3Rpb25zCisgICAgCisgICAgVGhpcyB3aWxsIGFsbG93IGFjY2Vzc2luZyB0cmlnX2F3YWl0ZWRfcGVuZF9oZWFkIGZyb20gYSBkaWZmZXJlbnQKKyAgICBtb2R1bGUsIHcvbyBuZWVkaW5nIHRvIHB1bGwgaW4gdHJpZ2xpYi4KKworIGxpYi9kcGtnL3RyaWdsaWIuYyB8ICAgMjggKysrKysrKysrKysrKysrKysrKystLS0tLS0tLQorIGxpYi9kcGtnL3RyaWdsaWIuaCB8ICAgIDUgKysrKysKKyAyIGZpbGVzIGNoYW5nZWQsIDI1IGluc2VydGlvbnMoKyksIDggZGVsZXRpb25zKC0pCisKK2NvbW1pdCBmM2RjZjkxNDIwM2E0MmM5MDgwZjEyOGQ3ZTgyNjNlOGEwZmI3ZmZhCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIFNlcCA2IDA1OjU0OjM2IDIwMTEgKzAyMDAKKworICAgIGxpYmRwa2c6IFJlbmFtZSB0cmlnX2VucXVldWVfYXdhaXRlZF9wZW5kIHRvIHRyaWdfYXdhaXRlZF9wZW5kX2VucXVldWUKKworIGxpYi9kcGtnL2ZpZWxkcy5jICB8ICAgIDIgKy0KKyBsaWIvZHBrZy90cmlnbGliLmMgfCAgICAyICstCisgbGliL2Rwa2cvdHJpZ2xpYi5oIHwgICAgMiArLQorIDMgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQorCitjb21taXQgMmU5YTIwOTAxYTE2YTFiM2YyYjM5MmFkMTRjMzIxNzEyMDczYjNmMQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBTZXAgNSAxNjowMzoyMSAyMDExICswMjAwCisKKyAgICBsaWJkcGtnOiBNb3ZlIHRyaWdfbmFtZV9pc19pbGxlZ2FsIHRvIGEgbmV3IHRyaWduYW1lIG1vZHVsZQorICAgIAorICAgIFRoaXMgZGV0YW5nbGVzIHRoZSBmdW5jdGlvbiBmcm9tIHRoZSB0cmlnbGliIG1vZHVsZSwgYXZvaWRpbmcKKyAgICBkcGtnLXRyaWdnZXIgdG8gcHVsbCBpdCwgYW5kIHJlZHVjaW5nIGl0cyBzaXplLgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgfCAgICAyICsrCisgbGliL2Rwa2cvTWFrZWZpbGUuYW0gfCAgICAxICsKKyBsaWIvZHBrZy90cmlnbGliLmMgICB8ICAgMTYgLS0tLS0tLS0tLS0tLS0tLQorIGxpYi9kcGtnL3RyaWduYW1lLmMgIHwgICA0MiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKKyBwby9QT1RGSUxFUy5pbiAgICAgICB8ICAgIDEgKworIDUgZmlsZXMgY2hhbmdlZCwgNDYgaW5zZXJ0aW9ucygrKSwgMTYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA4ZWQyZTA0YzJiMWJmYTI0N2UzNGRhMDFjMGU4NDYxMmNlN2RjODRiCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIFNlcCA0IDE2OjA3OjI5IDIwMTEgKzAyMDAKKworICAgIGRwa2ctZGViOiBEbyBub3Qgd2FybiBvbiBzdHJhbmdlIHRpbWVzdGFtcHMKKyAgICAKKyAgICBUaGUgZXh0ZXJuYWwgZXh0cmFjdG9yIGlzIG9ubHkgdXNlZCBvbiBkcGtnLWRlYiAteCAoYW5kIGZyaWVuZHMpLCB3aGljaAorICAgIGlzIG9ubHkgdXNlZCBieSBkcGtnIHdoZW4gZXh0cmFjdGluZyB0aGUgY29udHJvbCBtZW1iZXIuIFRoZSBpbnRlcm5hbAorICAgIGRwa2cgdGFyIGV4dHJhY3RvciBuZXZlciB3YXJucyBvbiB0aW1lc3RhbXBzLCBhbmQgdGhlcmUncyBubyBwb2ludCBmb3IKKyAgICBkcGtnIHRvIGluZHVjZSB0aG9zZSB3YXJuaW5ncyBvbiB0aGUgY29udHJvbCBleHRyYWN0aW9uIGVpdGhlci4KKyAgICAKKyAgICBDbG9zZXM6ICM2NDAyOTgKKworIGRlYmlhbi9jaGFuZ2Vsb2cgICB8ICAgIDIgKysKKyBkcGtnLWRlYi9leHRyYWN0LmMgfCAgICAyICstCisgMiBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA5MjA1OTZkYTI2M2VkMTM0MjY2OGE5ZmU1YjU5ZjhiYmI1MjQ0NWRkCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IFNlcCAxIDE1OjE3OjM1IDIwMTEgKzAyMDAKKworICAgIGRwa2c6IEZpeCBkb3VibGUg4oCcZXJyb3I64oCdIHN0cmluZyBpbiBtaXNzaW5nIFBBVEggZXJyb3Igb3V0cHV0CisgICAgCisgICAgQ2xvc2VzOiAjNjM5OTk3CisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMiArKworIHNyYy9oZWxwLmMgICAgICAgfCAgICAyICstCisgMiBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAwNWNlMDJmODk3ZmJlMmE0NTVjYWNiMDY0ZmQ1YmM1YTZiZjE4MmQ5CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEF1ZyAxOSAxODowNzoxMyAyMDExICswMjAwCisKKyAgICB1LWE6IFVwZGF0ZSBhbHRlcm5hdGl2ZSBsaW5rcyBvbmx5IGlmIHRoZXkgY2hhbmdlCisgICAgCisgICAgVGhlcmUncyBubyBwb2ludCBpbiBjaGFuZ2luZyB0aGUgbGlua3MgdG8gdGhlIHNhbWUgdGFyZ2V0LiBUaGlzIGFsc28KKyAgICBoZWxwcyB3aGVuIHN5c3RlbXMgbWlnaHQgaGF2ZSBhIHJlYWQtb25seSBmaWxlIHN5c3RlbSBtb3VudGVkLCBidXQgYQorICAgIHdyaXRhYmxlIGRhdGFiYXNlLgorICAgIAorICAgIENsb3NlczogIzYzNjcwMAorICAgIAorICAgIEJhc2VkLW9uLXBhdGNoLWJ5OiBTYWx2YXRvcmUgQm9uYWNjb3JzbyA8Y2FybmlsQGRlYmlhbi5vcmc+CisgICAgU2lnbmVkLW9mZi1ieTogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgIHwgICAgMyArKysKKyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmMgfCAgIDMyICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAzMiBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQorCitjb21taXQgMzUxOGU0ZDE1OTQxMmMzMWMyZGU0MTNiN2JjMzU4ODcwYjZjNWMwMgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBTZXAgOCAxMDoxOToyOCAyMDExICswMjAwCisKKyAgICB1LWE6IFJlZmFjdG9yIGFsdGVybmF0aXZlX3BhdGhfY2xhc3NpZnkgZnJvbSBhbHRlcm5hdGl2ZV9jYW5fcmVwbGFjZV9wYXRoCisKKyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmMgfCAgIDMyICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyMyBpbnNlcnRpb25zKCspLCA5IGRlbGV0aW9ucygtKQorCitjb21taXQgYzkyMmE4ZjY4MWRjMjcxMzU5NDdlYmRhZmY2OGZjMzE1ODYxNDgwNworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBTZXAgOCAxOToxMjoyMCAyMDExICswMjAwCisKKyAgICB1LWE6IERvIG5vdCB0cnkgdG8gcmVhZGxpbmsoKSBhIG5vbi1zeW1saW5rCisgICAgCisgICAgUmV0dXJuIGVhcmx5IGluIGNhc2UgdGhlIHBhdGggaXMgbm90IGEgc3ltbGluaywgdGhlcmUncyBubyBwb2ludCBpbgorICAgIGNhbGxpbmcgcmVhZGxpbmsoKSBpZiB3ZSBrbm93IGl0J3MgZ29pbmcgdG8gZmFpbC4KKworIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYyB8ICAgIDYgKysrKysrCisgMSBmaWxlcyBjaGFuZ2VkLCA2IGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA2YzQ4MWUxOWE1MzIwODA2NDNlM2NmNWM3Njc2MGRmODAwOWVhMmM3CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IFNlcCA4IDEwOjEwOjA2IDIwMTEgKzAyMDAKKworICAgIHUtYTogVXNlIHhyZWFkbGluaygpIGluc3RlYWQgb2YgYXJlYWRsaW5rKCkgaW4gYWx0ZXJuYXRpdmVfZXZvbHZlKCkKKyAgICAKKyAgICBUaGUgZnVuY3Rpb24gZG9lcyBub3QgZXhwZWN0IHRoZSByZWFkbGluayBjYWxsIHRvIGZhaWwuCisKKyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmMgfCAgICAyICstCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBjN2M3NTIyZGQzZTI5YWY1ODJlZGRkYTdiMTBiNTIxMzM3YTdiMjFjCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIFNlcCA2IDA0OjE5OjAzIDIwMTEgKzAyMDAKKworICAgIHUtYTogU3BsaXQgeHJlYWRsaW5rKCkgYWxsb2NhdGlvbiBjb2RlIGludG8gYXJlYWRsaW5rKCkKKyAgICAKKyAgICBVc2luZyBhIGJvb2wgYXMgYW4gYXJndW1lbnQgZm9yIGEgZnVuY3Rpb24gYWxyZWFkeSB0YWtpbmcgc2V2ZXJhbAorICAgIGFyZ3VtZW50cyBpcyBhbG1vc3QgbmV2ZXIgYSBnb29kIGludGVyZmFjZSwgaXQncyBub3QgY2xlYXIgZnJvbQorICAgIHRoZSBjYWxsIHNpdGVzIHdoYXQgaXQgcmVmZXJzIHRvIGFuZCBhcyBzdWNoIHByb25lIHRvIGNvbmZ1c2lvbi4KKyAgICAKKyAgICBTcGxpdCB0aGUgbWFpbiB4cmVhZGxpbmsoKSBjb2RlIGludG8gYSBmdW5jdGlvbiB0aGF0IGFsbG9jYXRlcyBidXQKKyAgICBjYW4gcmV0dXJuIE5VTEwsIGFuZCBtYWtlIHhyZWFkbGluaygpIHVzZSB0aGUgY29tbW9uIHNlbWFudGljcyBvZgorICAgIG5ldmVyIGZhaWxpbmcuCisKKyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmMgfCAgIDQyICsrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMjYgaW5zZXJ0aW9ucygrKSwgMTYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA1ZjQwYWUwNjQ0Y2YyNjZmNTMzZDYzY2RjODY0MzE2NGY0ZDZiM2MzCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IEF1ZyAyNSAyMDo0MDo0MiAyMDExICswMjAwCisKKyAgICBkcGtnOiBQcmludCBhIG1lc3NhZ2UgaW5zdGVhZCBvZiBhc3NlcnRpbmcgb24gcmVhZGxpbmsvc3RhdCBzaXplIGRpc2NyZXBhbmN5CisgICAgCisgICAgVGhpcyB3aWxsIGhlbHAgdGhlIHVzZXIgZGlhZ25vc2Ugd2hpY2ggZmlsZSB3YXMgYWZmZWN0ZWQgYW5kIGluCisgICAgY29ycmVjdGluZyB0aGUgc2l0dWF0aW9uLCB3aGljaCBpbiBtb3N0IGNhc2VzIGlzIGR1ZSB0byBmaWxlIHN5c3RlbQorICAgIGJyZWFrYWdlLCBvciBub24gUE9TSVggY29tcGxpYW5jZS4KKyAgICAKKyAgICBDbG9zZXM6ICM2MzkyMjkKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAyICsrCisgc3JjL2FyY2hpdmVzLmMgICB8ICAgIDQgKysrLQorIHNyYy9jb25maWd1cmUuYyAgfCAgICA2ICsrKysrLQorIDMgZmlsZXMgY2hhbmdlZCwgMTAgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IGEyM2M3NGU3MDg5NzJjN2U1NjZlYTgyNTU3MjgxODQzOTM5NjM4MjUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgQXVnIDI1IDIwOjQwOjAyIDIwMTEgKzAyMDAKKworICAgIGRwa2c6IENoYW5nZSB0eXBlIG9mIHZhcmlhYmxlIHIgZnJvbSBpbnQgdG8gc3NpemVfdCBpbiBjb25mZmRlcmVmKCkKKworIHNyYy9jb25maWd1cmUuYyB8ICAgIDQgKystLQorIDEgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgMmI4MjRhZmE2YmIwNmI3Y2I3NTc0MjNiMjQ4ZjY5MDdlOTkxOWU4NgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBNYXkgMiAyMTo1MTo0NyAyMDExICswMjAwCisKKyAgICBsaWJkcGtnOiBEZXRhbmdsZSBidWZmZXIgZmlsdGVyIGxvZ2ljIGZyb20gd3JpdGUgbG9naWMKKworIGxpYi9kcGtnL2J1ZmZlci5jIHwgICA1MSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0KKyBsaWIvZHBrZy9idWZmZXIuaCB8ICAgMzEgKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgNjAgaW5zZXJ0aW9ucygrKSwgMjIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyY2QzMTY0MDFmYTI0NTFlMjY2NTYyY2Y2ODliZGZjN2I0YzUwMWU4CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIE1heSAyIDIxOjUxOjQ3IDIwMTEgKzAyMDAKKworICAgIGxpYmRwa2c6IEFkZCBuZXcgQlVGRkVSX0ZJTFRFUl9OVUxMIGZpbHRlciBhY3Rpb24KKworIGxpYi9kcGtnL2J1ZmZlci5jIHwgICAgNSArKysrKworIGxpYi9kcGtnL2J1ZmZlci5oIHwgICAgMiArKworIDIgZmlsZXMgY2hhbmdlZCwgNyBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgM2M4M2Y1NGJmZTFmN2QxN2M4NzhjMDg5N2Y5NzYyZWE4YWRjNjRkYworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBKdW4gMTcgMTQ6MTE6NDMgMjAxMSArMDIwMAorCisgICAgbGliZHBrZzogUmVuYW1lIEJVRkZFUl9XUklURV9NRDUgdG8gQlVGRkVSX0ZJTFRFUl9NRDUKKworIGxpYi9kcGtnL2J1ZmZlci5jIHwgICAgNiArKystLS0KKyBsaWIvZHBrZy9idWZmZXIuaCB8ICAgIDYgKysrLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCA2IGluc2VydGlvbnMoKyksIDYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA3NTg1ZmFhOTIwMDlmMTViMDZlMzQ2Y2RkYWE1ZTRjZTkyZGY3MDc5CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIE1heSAyIDEwOjI1OjM4IDIwMTEgKzAyMDAKKworICAgIGxpYmRwa2c6IE5hbWVzcGFjZSBidWZmZXIgaW5pdCBhbmQgZG9uZSBmdW5jdGlvbnMgd2l0aCBidWZmZXJfZmlsdGVyXworICAgIAorICAgIFRoaXMgbWFrZXMgaXQgY2xlYXIgdGhlc2UgZnVuY3Rpb25zIGFyZSBub3QgdG8gaW5pdGlhbGl6ZSBub3JtYWwKKyAgICBidWZmZXIgb3BlcmF0aW9ucywgYnV0IGp1c3QgZm9yIHdoZW4gYSBmaWx0ZXIgaXMgaW4gcGxhY2UuCisKKyBsaWIvZHBrZy9idWZmZXIuYyB8ICAgMTIgKysrKysrLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA2IGluc2VydGlvbnMoKyksIDYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAzNjUwYTY2OWZiMDE3Mzc0NDQ2NTY5MTZhNmE3YTA5ZTgyODAwNjc5CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIE1heSAzIDEwOjU1OjQ1IDIwMTEgKzAyMDAKKworICAgIGxpYmRwa2c6IFJlbmFtZSBmZF9udWxsX2NvcHkoKSB0byBmZF9za2lwKCkKKworIGRwa2ctZGViL2V4dHJhY3QuYyB8ICAgMTIgKysrKysrLS0tLS0tCisgZHBrZy1zcGxpdC9qb2luLmMgIHwgICAgMiArLQorIGxpYi9kcGtnL2J1ZmZlci5oICB8ICAgIDIgKy0KKyBzcmMvYXJjaGl2ZXMuYyAgICAgfCAgICA2ICsrKy0tLQorIHNyYy9wcm9jZXNzYXJjLmMgICB8ICAgIDIgKy0KKyA1IGZpbGVzIGNoYW5nZWQsIDEyIGluc2VydGlvbnMoKyksIDEyIGRlbGV0aW9ucygtKQorCitjb21taXQgMzQxNmYxZDVjN2E3OGU0OWE1MmYwNzliMWUyYTg1NzYwMjU2NTBjYgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBTZXAgOSAwNzoxOToyNyAyMDExICswMjAwCisKKyAgICBsaWJkcGtnOiBBZGQgYSB0ZXN0IGNhc2UgZm9yIGZkX21kNSgpCisKKyBsaWIvZHBrZy90ZXN0L3QtYnVmZmVyLmMgfCAgIDQyICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMzcgaW5zZXJ0aW9ucygrKSwgNSBkZWxldGlvbnMoLSkKKworY29tbWl0IGQxYWJiNmU4MGQ3MmFjZmZhYmVjZDM1MjI5MGRjMTAxMjFmMmMwODUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgU2VwIDcgMDQ6NTM6MjUgMjAxMSArMDIwMAorCisgICAgQ29udmVydCB0cmFuc2xhdGlvbiBmaWxlcyB0byBVVEYtOAorICAgIAorICAgIENvbnNvbGlkYXRpbmcgdGhlIGNoYXJzZXQgdXNlZCBmb3IgYWxsIGZpbGVzIGluIHRoZSByZXBvc2l0b3J5IG1ha2VzCisgICAgZGlmZiBhY3R1YWxseSB1c2VmdWwsIG90aGVyd2lzZSB3aGVuIHNob3dpbmcgYSBwYXRjaCBpbnZvbHZpbmcgZGlzdGluY3QKKyAgICBjaGFyc2V0cyBpdCdzIG5vdCBwb3NzaWJsZSB0byBkaXNwbGF5IHRoZW0gY29ycmVjdGx5IGR1ZSB0byB0aGUgbWl4dHVyZS4KKworIGRzZWxlY3QvcG8vZGEucG8gfCAgNDU4ICsrKysrKysrKysrKy0tLS0tLS0tLS0tLQorIG1hbi9wby9mci5hZGQgICAgfCAgICA0ICstCisgbWFuL3BvL2h1LmFkZCAgICB8ICAgIDIgKy0KKyBtYW4vcG8vcGwuYWRkICAgIHwgICAgNCArLQorIG1hbi9wby9wbzRhLmNmZyAgfCAgIDEyICstCisgbWFuL3BvL3B0X0JSLnBvICB8IDEwODQgKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgbWFuL3BvL3J1LmFkZCAgICB8ICAgIDggKy0KKyBtYW4vcG8vc3YuYWRkICAgIHwgICAgMiArLQorIDggZmlsZXMgY2hhbmdlZCwgNzg3IGluc2VydGlvbnMoKyksIDc4NyBkZWxldGlvbnMoLSkKKworY29tbWl0IDkyODhlNTczYjBkMTA2OWY0YTU2Y2FhOTU4MzhmMDE1N2YxYTIzZTcKK0F1dGhvcjogS2VlcyBDb29rIDxrZWVzQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBTZXAgNSAyMzozNDo0OSAyMDExIC0wNzAwCisKKyAgICBkcGtnLWJ1aWxkZmxhZ3MoMSk6IGFkZCBpbml0aWFsIGhhcmRlbmluZyBkb2N1bWVudGF0aW9uCisgICAgCisgICAgRG9jdW1lbnQgdGhlIHZhcmlvdXMgaGFyZGVuaW5nIG9wdGlvbnMgdGhhdCBjYW4gYmUgZW5hYmxlZC9kaXNhYmxlZAorICAgIHZpYSBERUJfQlVJTERfTUFJTlRfT1BUSU9OUy4KKyAgICAKKyAgICBJbXByb3ZlZC1ieTogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorICAgIFNpZ25lZC1vZmYtYnk6IEtlZXMgQ29vayA8a2Vlc0BkZWJpYW4ub3JnPgorICAgIFNpZ25lZC1vZmYtYnk6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworIG1hbi9kcGtnLWJ1aWxkZmxhZ3MuMSB8ICAxMDkgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLQorIDEgZmlsZXMgY2hhbmdlZCwgMTA4IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBmM2JiN2Q0OTM5YWU5NWNmNDRjODllOGY1OTllN2VkNWRhNDMxZTU3CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIEp1bCAyNyAyMjoxMDo0OSAyMDExICswMjAwCisKKyAgICBkcGtnLWJ1aWxkZmxhZ3M6IGVtaXQgaGFyZGVuaW5nIGJ1aWxkIGZsYWdzIGJ5IGRlZmF1bHQKKyAgICAKKyAgICBBbGwgdGhlIGhhcmRlbmluZyBidWlsZCBmbGFncyBzdXBwb3J0ZWQgYnkgaGFyZGVuaW5nLWluY2x1ZGVzCisgICAgYXJlIHN1cHBvcnRlZCBleGNlcHQgdGhhdCBQSUUgaXMgbm90IGVuYWJsZWQgYnkgZGVmYXVsdCAoanVzdCBsaWtlCisgICAgdGhlIGNvcnJlc3BvbmRpbmcgZ2NjIHBhdGNoIGRvZXNuJ3QgZW5hYmxlIGl0IGJ5IGRlZmF1bHQpLgorICAgIAorICAgIEluc3BpcmVkIGJ5IHRoZSB3b3JrIG9mIEtlZXMgQ29vayA8a2Vlc0BkZWJpYW4ub3JnPi4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgICAgIHwgICAgMyArCisgc2NyaXB0cy9EcGtnL0J1aWxkRmxhZ3MucG0gICAgfCAgICAxICsKKyBzY3JpcHRzL0Rwa2cvVmVuZG9yL0RlYmlhbi5wbSB8ICAgODggKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0KKyBzY3JpcHRzL0Rwa2cvVmVuZG9yL1VidW50dS5wbSB8ICAgIDQgKysKKyA0IGZpbGVzIGNoYW5nZWQsIDk1IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBlZDg0YTkzMzk0NTJiOTM0ZjRlNzQwZTM4OTgyMGU4NTJhOGJjZDMxCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIEF1ZyAyIDE0OjE1OjE3IDIwMTEgKzAyMDAKKworICAgIERwa2c6OkJ1aWxkT3B0aW9uczogZW5hYmxlIHVzYWdlIG9mIGFsdGVybmF0aXZlIHZhcmlhYmxlIG5hbWVzCisKKyBzY3JpcHRzL0Rwa2cvQnVpbGRPcHRpb25zLnBtICAgICAgfCAgIDI2ICsrKysrKysrKysrKysrKysrKy0tLS0tLS0tCisgc2NyaXB0cy90LzMwMF9EcGtnX0J1aWxkT3B0aW9ucy50IHwgICAgNiArKysrKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDIzIGluc2VydGlvbnMoKyksIDkgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAwODgwOGMyODUwMGU3ZTAyN2U1OGQzMmU0MzRhM2RjMDgyZTQzZTdkCitBdXRob3I6IEhlbGdlIEtyZXV0em1hbm4gPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorRGF0ZTogICBUaHUgU2VwIDggMTc6NTM6MTMgMjAxMSArMDIwMAorCisgICAgVXBkYXRlIEdlcm1hbiB0cmFuc2xhdGlvbiBvZiBtYW51YWwgcGFnZXMKKyAgICAKKyAgICBVcGRhdGUgdG8gMjAzOHQuCisKKyBtYW4vcG8vZGUucG8gfCAgIDc0ICsrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMjQgaW5zZXJ0aW9ucygrKSwgNTAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBiY2Q1Yzg5YWIxNjIxMjY0ZTA5ZTUyNTgyNmIyMTMyNDkwZjM1ZTA3CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IFNlcCAzIDE0OjM0OjMxIDIwMTEgKzAyMDAKKworICAgIGRwa2ctc291cmNlKDEpOiBhZGQgZXhhbXBsZSBvZiBleHRlbmQtZGlmZi1pZ25vcmUncyB1c2FnZQorICAgIAorICAgIFN1Z2dlc3RlZC1ieTogQ2hyaXN0b3BoIEJlcmcgPG15b25AZGViaWFuLm9yZz4KKyAgICBDbG9zZXM6ICM2NDAxOTgKKworIGRlYmlhbi9jaGFuZ2Vsb2cgIHwgICAgMiArKworIG1hbi9kcGtnLXNvdXJjZS4xIHwgICAgMiArKworIDIgZmlsZXMgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgY2IwZmE5Y2RiYzhkMDgxZWRiMmQ0MDQ0ZGJmMWNmZTRlODhkYmEwZgorQXV0aG9yOiBQZXRlciBLcmVmdGluZyA8cGV0ZXJrQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBTZXAgNCAxODo1NzoyMyAyMDExICswMTAwCisKKyAgICBVcGRhdGUgU3dlZGlzaCB0cmFuc2xhdGlvbi4KKyAgICAKKyAgICBtYW4vcG8vc3YucG86IDIwNDR0MGYwdS4KKworIG1hbi9wby9zdi5wbyB8ICAyNjkgKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMTI1IGluc2VydGlvbnMoKyksIDE0NCBkZWxldGlvbnMoLSkKKworY29tbWl0IGVhNTBmOWE0MDI3ZGViMTA1YTYwNjdjZGQ3MDYzMjg5Y2I4OTk2N2IKK0F1dGhvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitEYXRlOiAgIFdlZCBBdWcgMjQgMTk6MzU6MzggMjAxMSArMDIwMAorCisgICAgVXBkYXRlIEdlcm1hbiB0cmFuc2xhdGlvbiBvZiBtYW51YWwgcGFnZXMKKyAgICAKKyAgICBVcGRhdGUgdG8gMjAzOHQuCisKKyBtYW4vcG8vZGUucG8gfCAgIDE4ICsrKysrKysrKy0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgOSBpbnNlcnRpb25zKCspLCA5IGRlbGV0aW9ucygtKQorCitjb21taXQgZjM0MTgxODZmNmIwOTMxNjJkOWU2YjQ3ZTczZDAxZDc5NWMyZWY5OAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBBdWcgMjMgMDU6MjQ6MzkgMjAxMSArMDIwMAorCisgICAgZHBrZy1zb3VyY2U6IE1ha2Ugc2luZ2xlLWRlYmlhbi1wYXRjaCBub3QgYWJvcnQgb24gdXBzdHJlYW0gY2hhbmdlcworICAgIAorICAgIFRoZSBzaW5nbGUtZGViaWFuLXBhdGNoIG9wdGlvbiB1c2FnZSBpbiBEcGtnOjpTb3VyY2U6OlBhY2thZ2U6OlYyCisgICAgd2FzIHR5cG9lZCBhcyBzaW5nbGVfZGViaWFuX3BhdGNoLCBhbmQgdGh1cyBub3QgYXZvaWRpbmcgYWJvcnRpbmcKKyAgICBvbiB1cHN0cmVhbSBjaGFuZ2VzLiBJbnN0ZWFkIG9mIGZpeGluZyB0aGUgdHlwbywgbGV0J3MganVzdCBub3QKKyAgICBleHBvc2Ugc2luZ2xlLWRlYmlhbi1wYXRjaCBpbiBEcGtnOjpTb3VyY2U6OlBhY2thZ2U6OlYyLCBhcyBpdCdzCisgICAgRHBrZzo6U291cmNlOjpQYWNrYWdlOjpWMzo6cXVpbHQgc3BlY2lmaWMgYW5kIGFzIHN1Y2ggYSBsYXllcgorICAgIHZpb2xhdGlvbiwgdGhlIGNvZGUgd2lsbCBqdXN0IHNldCBhdXRvX2NvbW1pdCB3aGVuIHNpbmdsZS1kZWJpYW4tcGF0Y2gKKyAgICBpcyBzcGVjaWZpZWQsIHdoaWNoIGlzIHRoZSBhY3R1YWwgaW50ZW5kZWQgYmVoYXZpb3VyLiBSZWZsZWN0IHRoaXMKKyAgICBleHBsaWNpdGx5IGluIHRoZSBtYW4gcGFnZS4KKyAgICAKKyAgICBSZWdyZXNzaW9uIGludHJvZHVjZWQgaW4gY29tbWl0IDQ2YjY4OGU0ODI0ZjAwODQyNTY4YjUxN2IxMTllZWMzNGE1ZjcyODYuCisgICAgCisgICAgUmVwb3J0ZWQtYnk6IEJlcm5oYXJkIFIuIExpbmsgPGJybGlua0BkZWJpYW4ub3JnPgorCisgbWFuL2Rwa2ctc291cmNlLjEgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMiArLQorIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbSAgICAgICB8ICAgIDMgKy0tCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtIHwgICAgMiArKworIDMgZmlsZXMgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQorCitjb21taXQgZDk3MTYxYzI5ODYyNWM4NDc1YjBiM2QyZDllODllNjBhZTU2YTVmZgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBBdWcgMjMgMDM6NTU6MjcgMjAxMSArMDIwMAorCisgICAgRHBrZzo6U291cmNlOjpQYWNrYWdlOiBVc2Ug4oCcLXrigJ0gaW5zdGVhZCBvZiDigJxub3QgLXPigJ0KKworIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbSAgICAgICB8ICAgIDIgKy0KKyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG0gfCAgICAyICstCisgMiBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBhNTk2YWI4ZWYzNmFkZTI3NDNkYmQ0NDJkNjYwYjM2MTQ2NTc0NjI0CitBdXRob3I6IEhlbGdlIEtyZXV0em1hbm4gPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorRGF0ZTogICBNb24gQXVnIDIyIDIwOjU3OjE0IDIwMTEgKzAyMDAKKworICAgIFVwZGF0ZSBHZXJtYW4gc2NyaXB0cyB0cmFuc2xhdGlvbgorICAgIAorICAgIFVwZGF0ZSB0byA1MjN0LgorCisgc2NyaXB0cy9wby9kZS5wbyB8ICAgNzAgKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDM0IGluc2VydGlvbnMoKyksIDM2IGRlbGV0aW9ucygtKQorCitjb21taXQgNTEzYWQzMjBhOTY3Nzc2NmY1MGFhMjc0MWQyMzk4N2JjZTViOTJhNQorQXV0aG9yOiBIZWxnZSBLcmV1dHptYW5uIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KK0RhdGU6ICAgTW9uIEF1ZyAyMiAyMDozMzoxOCAyMDExICswMjAwCisKKyAgICBVcGRhdGUgR2VybWFuIHRyYW5zbGF0aW9uIG9mIG1hbnVhbCBwYWdlcworICAgIAorICAgIFVwZGF0ZSB0byAyMDM4dC4KKworIG1hbi9wby9kZS5wbyB8ICAyMDMgKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgOTAgaW5zZXJ0aW9ucygrKSwgMTEzIGRlbGV0aW9ucygtKQorCitjb21taXQgMjc3ZTU3MmZhY2YzMDAwMWQ1OWJkYWRmZTNlM2M5ZTRkYjM3YWUxYgorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBBdWcgMjEgMTE6MTE6MDIgMjAxMSArMDIwMAorCisgICAgZHBrZzogY29ycmVjdGx5IGhhbmRsZSBhIGhhcmRsaW5rIHBvaW50aW5nIHRvIGEgY29uZmZpbGUKKyAgICAKKyAgICBOb3JtYWwgZmlsZXMgdGFnZ2VkIGFzIGEgY29uZmZpbGUgYXJlIG5vdCB0YWdnZWQgd2l0aAorICAgIGZubmZfZGVmZXJyZWRfcmVuYW1lIGFuZCBkdWUgdG8gdGhpcyB0aGUgaGFyZGxpbmtpbmcgY29kZQorICAgIHdhcyBhc3N1bWluZyB0aGF0IHRoZSB0YXJnZXQgaXMgaW4gaXRzIGZpbmFsIGxvY2F0aW9uCisgICAgYWxyZWFkeS4gVGhpcyBpcyBvYnZpb3VzbHkgbm90IHRoZSBjYXNlIGZvciBhIGNvbmZmaWxlLgorICAgIAorICAgIEZpeCB0aGUgY29kZSBzbyB0aGF0IHRoZSBoYXJkbGlua2luZyBsb2dpYyB0YWtlcyBpbnRvIGFjY291bnQKKyAgICB0aGUgZmFjdCB0aGF0IGNvbmZmaWxlcyBhcmUgdW5wYWNrZWQgaW4gLmRwa2ctbmV3IGFuZCBzdGF5CisgICAgdGhlcmUgdW50aWwgdGhlIGNvbmZpZ3VyYXRpb24gcGhhc2UuCisgICAgCisgICAgUmVwb3J0ZWQtYnk6IElnb3IgUGFzaGV2IDxwYXNoZXYuaWdvckBnbWFpbC5jb20+CisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMSArCisgc3JjL2FyY2hpdmVzLmMgICB8ICAgIDIgKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGM2NDAwMTA4ZTI5N2IzZmFjOGU4ODc1NTFiNmEzMWVkYjUxNDA4ZjIKK0F1dGhvcjogU3ZlbiBKb2FjaGltIDxzdmVuam9hY0BnbXguZGU+CitEYXRlOiAgIFN1biBBdWcgMjEgMTg6Mzc6NTAgMjAxMSArMDIwMAorCisgICAgR2VybWFuIGRwa2cgdHJhbnNsYXRpb24gdXBkYXRlCisgICAgCisgICAgVXBkYXRlIHRvIDEwMjJ0LgorCisgcG8vZGUucG8gfCAgNDc5ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyNDEgaW5zZXJ0aW9ucygrKSwgMjM4IGRlbGV0aW9ucygtKQorCitjb21taXQgMzcxMGY5MmU1YzMyYmJjYjc2NjE1MWRmNDFlNWE5OWVkM2RlMjIxMQorQXV0aG9yOiBQZXRlciBLcmVmdGluZyA8cGV0ZXJrQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBBdWcgMjAgMjI6MDg6MDkgMjAxMSArMDEwMAorCisgICAgVXBkYXRlIFN3ZWRpc2ggdHJhbnNsYXRpb24uCisgICAgCisgICAgbWFuL3BvL3N2LnBvOiAxOTc4dDUwZjE2dSAoV0lQKS4KKworIG1hbi9wby9zdi5wbyB8IDExODQgKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMzg0IGluc2VydGlvbnMoKyksIDgwMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDg5OTczYzViYjllZWQ3OTAyNDJhN2QxZDM1NTY0ZmQ5NTRlZGY1NTQKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgQXVnIDIwIDE1OjM2OjAwIDIwMTEgKzAyMDAKKworICAgIHUtYTogRG8gbm90IGJ1aWxkIHN0cmluZ3MgZnJvbSBwYXJ0cyBpbiBhbHRlcm5hdGl2ZV9jaGVja19pbnN0YWxsX2FyZ3MKKyAgICAKKyAgICBUaGlzIG1ha2VzIHRoZSB3b3JrIG9mIHRyYW5zbGF0b3JzIGhhcmRlci4KKworIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYyB8ICAgMTQgKysrKysrKy0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDcgaW5zZXJ0aW9ucygrKSwgNyBkZWxldGlvbnMoLSkKKworY29tbWl0IDUyNTA3NTA0ZTY5ZDY2MjEyNjJkZTgyMDk2OTg3ZmRmYjgyMWJmOGQKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgQXVnIDIwIDEyOjU1OjMzIDIwMTEgKzAyMDAKKworICAgIHUtYTogUmVmYWN0b3IgYWx0ZXJuYXRpdmUgYXJndW1lbnQgY2hlY2tzIGludG8gbmV3IGZ1bmN0aW9uCisKKyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmMgfCAgIDQxICsrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAxOSBpbnNlcnRpb25zKCspLCAyMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDQ2YWFkYWQzNTlhOWU0MjA0Y2ZlNzA3ZjQ3ZTNjZmNlZWY0N2U3MDkKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgQXVnIDE5IDIyOjU5OjUzIDIwMTEgKzAyMDAKKworICAgIHUtYTogUmVmYWN0b3IgLS1pbnN0YWxsIGFyZ3VtZW50IGNoZWNraW5nIGludG8gYSBuZXcgZnVuY3Rpb24KKworIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYyB8ICAyMDQgKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMTA0IGluc2VydGlvbnMoKyksIDEwMCBkZWxldGlvbnMoLSkKKworY29tbWl0IGFiZGE0N2ZiZTgxZTUzZGE3ZDBhNDYyMzc4OTViZDIyNTM3M2QwMjIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgQXVnIDE5IDIyOjMyOjE5IDIwMTEgKzAyMDAKKworICAgIHUtYTogTW92ZSBhbHRlcm5hdGl2ZSBtYXAgbG9hZGluZyB0byB0aGUgYWN0aW9ucyB0aGF0IG1ha2UgdXNlIG9mIHRoZW0KKyAgICAKKyAgICBUaGlzIHdpbGwgcmVkdWNlIHN0YXJ0IHVwIHRpbWUsIGJ5IG5vdCBkb2luZyB1bm5lZWRlZCBvcGVyYXRpb25zLgorCisgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jIHwgICAyNSArKysrKysrKysrKysrKystLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAxNSBpbnNlcnRpb25zKCspLCAxMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDc3NGU5MTg3NTRiYzdkODAxZTgwMmVhNmNjYmQ5YjU2NzM3OTlkOGMKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgQXVnIDE5IDE4OjM4OjEwIDIwMTEgKzAyMDAKKworICAgIHUtYTogU3BsaXQgYWx0ZXJuYXRpdmUgbWFwIGxvYWRpbmcgaW50byB0d28gZnVuY3Rpb25zCisgICAgCisgICAgVGhpcyB3aWxsIGFsbG93IG9ubHkgbG9hZGluZyB0aGVtIHdoZW4gbmVlZGVkLCBpbnN0ZWFkIG9mIGRvaW5nIGl0CisgICAgZm9yIGFueSBhY3Rpb24uCisKKyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmMgfCAgIDY5ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgNDkgaW5zZXJ0aW9ucygrKSwgMjAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBjYTlhMmI3OWY4NWE4ZWQ3MjMwOGI1YTI4NzdjYThjZmJkYTBiMjQzCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IEF1ZyAyMCAxMjoyMToyMiAyMDExICswMjAwCisKKyAgICB1LWE6IFJlZmFjdG9yIHNjYW5kaXIoKSBuYW1lbGlzdCBmcmVlIGludG8gbmV3IGFsdGRiX2ZyZWVfbmFtZWxpc3QoKQorCisgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jIHwgICAxNiArKysrKysrKysrLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAxMCBpbnNlcnRpb25zKCspLCA2IGRlbGV0aW9ucygtKQorCitjb21taXQgMzEyNDJlMWFhYWJlNzc1MGIyYjY4ZWU5NjMwNmUyY2JkZmQ3NjdiYgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBBdWcgMjAgMTI6MzA6MzUgMjAxMSArMDIwMAorCisgICAgdS1hOiBSZW5hbWUgZ2V0X2FsbF9hbHRlcm5hdGl2ZXMoKSB0byBhbHRkYl9nZXRfbmFtZWxpc3QoKQorICAgIAorICAgIFRoaXMgbWFrZXMgaXQgY2xlYXIgd2UgYXJlIHJlZmVycmluZyB0byB0aGUgZmlsZW5hbWVzIGluIHRoZSBkYXRhYmFzZQorICAgIGRpcmVjdG9yeS4KKworIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYyB8ICAgIDYgKysrLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA4MTQxMmU2NDQ1YmYyMzE1MjFmZGZiNWI4NzYwOTg4NjA1MTQ5MTgxCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEF1ZyAxOSAxNzo1MDoyNSAyMDExICswMjAwCisKKyAgICB1LWE6IERvIG5vdCBjaGVjayBpZiBsaW5rbmFtZXMgY2FuIGJlIHVwZGF0ZWQgaWYgLS1mb3JjZSBpcyBpbiB1c2UKKyAgICAKKyAgICBUaGUgYWN0aW9uIGlzIGdvaW5nIHRvIHByb2NlZWQgaW4gYW55IGNhc2UsIG5vIHBvaW50IHdhc3RpbmcgcmVzb3VyY2VzCisgICAgZG9pbmcgdGhlIGNoZWNrcy4gQWxzbyB0aGlzIHJlbW92ZXMgYSBwb3NzaWJsZSBwb2ludCBvZiBub24tb3ZlcnJpZGFibGUKKyAgICBmYWlsdXJlLgorCisgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jIHwgICAgNSArKysrLQorIDEgZmlsZXMgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgMzY5NTRjMzZhYmUzY2U4ZTQyYjNjMjMxNTc5ZWY5ZTQ5N2YwZGE2ZAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBBdWcgMTkgMTI6NTk6MzUgMjAxMSArMDIwMAorCisgICAgRHBrZzo6Q29tcHJlc3Npb246IENoYW5nZSBkZWZhdWx0IHZhbHVlcyBkZXBlbmRpbmcgb24gdGhlIGNvbXByZXNzb3IgdXNlZAorICAgIAorICAgIFRoaXMgbWFrZXMgZHBrZy1zb3VyY2UgdXNlIG1vcmUgYXBwcm9wcmlhdGUgZGVmYXVsdCBjb21wcmVzc2lvbiB2YWx1ZXMKKyAgICBkZXBlbmRpbmcgb24gdGhlIGNvbXByZXNzb3IgdXNlZC4KKyAgICAKKyAgICBQcm9tcHRlZC1ieTogVGltbyBKdWhhbmkgTGluZGZvcnMgPHRpbW8ubGluZGZvcnNAaWtpLmZpPgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICAgICAgfCAgICAzICsrKworIG1hbi9kcGtnLXNvdXJjZS4xICAgICAgICAgICAgICAgIHwgICAgMiArLQorIHNjcmlwdHMvRHBrZy9Db21wcmVzc2lvbi5wbSAgICAgIHwgICAyNSArKysrKysrKysrKysrKysrKy0tLS0tLS0tCisgc2NyaXB0cy90Lzg1MF9EcGtnX0NvbXByZXNzaW9uLnQgfCAgIDEyICsrKysrKysrKysrLQorIDQgZmlsZXMgY2hhbmdlZCwgMzIgaW5zZXJ0aW9ucygrKSwgMTAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBhMjdhOGUxOTg5YjA5MzdlOWVlZTE4YzIxNTM1MjRjNzU1YWJhMDU4CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IEF1ZyAyMCAwOTo1MToxMyAyMDExICswMjAwCisKKyAgICBEbyBub3QgdXNlIHBvc3Nlc3NpdmUgwqsnc8K7IGFmdGVyIOKAmHPigJkgb3Ig4oCYeOKAmQorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICB8ICAgIDQgKystLQorIG1hbi9kcGtnLXNobGliZGVwcy4xICAgICAgfCAgICA0ICsrLS0KKyB1dGlscy9zdGFydC1zdG9wLWRhZW1vbi5jIHwgICAgNCArKy0tCisgMyBmaWxlcyBjaGFuZ2VkLCA2IGluc2VydGlvbnMoKyksIDYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBkYmU3NDJiN2RiODNkMTA4ZTFlYTE0M2YyNjg4Y2E1NDQ0MDA3YmE5CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIEF1ZyAxNyAxNjo0NDoxOCAyMDExICswMjAwCisKKyAgICBGaXggc3BlbGxpbmcgZXJyb3JzCisgICAgCisgICAgRm91bmQgYnkgY29kZXNwZWxsLgorCisgQ2hhbmdlTG9nLm9sZCAgICAgICAgICAgICAgICAgICAgICAgfCAgIDY2ICsrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0KKyBUT0RPICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDIgKy0KKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICAgICAgICB8ICAgMzIgKysrKysrKystLS0tLS0tLQorIGRvYy9Eb3h5ZmlsZS5pbiAgICAgICAgICAgICAgICAgICAgIHwgICAgMiArLQorIGRvYy9SRUFETUUuZmVhdHVyZS1yZW1vdmFsLXNjaGVkdWxlIHwgICAgMiArLQorIGRvYy9jb2Rpbmctc3R5bGUudHh0ICAgICAgICAgICAgICAgIHwgICAgMiArLQorIGRvYy90cmlnZ2Vycy50eHQgICAgICAgICAgICAgICAgICAgIHwgICAgNiArKy0tCisgZHNlbGVjdC9tZXRob2RzL2Z0cC9pbnN0YWxsICAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9pdC5wbyAgICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvZmlsZS5jICAgICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvcHJvZ25hbWUuYyAgICAgICAgICAgICAgICAgfCAgICAyICstCisgbWFuL2Rwa2ctc291cmNlLjEgICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgbWFuL3BvL2RlLnBvICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgbWFuL3BvL2Rwa2ctbWFuLnBvdCAgICAgICAgICAgICAgICAgfCAgICAyICstCisgbWFuL3BvL2VzLnBvICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgbWFuL3BvL2ZyLnBvICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgbWFuL3BvL2h1LnBvICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgbWFuL3BvL2phLnBvICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgbWFuL3BvL3BsLnBvICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgbWFuL3BvL3B0X0JSLnBvICAgICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgbWFuL3BvL3J1LnBvICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgbWFuL3BvL3N2LnBvICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgcG8vQ2hhbmdlTG9nLm9sZCAgICAgICAgICAgICAgICAgICAgfCAgICA0ICstCisgc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbSAgICAgICAgICAgfCAgICAyICstCisgc2NyaXB0cy9jaGFuZ2Vsb2cvZGViaWFuLnBsICAgICAgICAgfCAgICA0ICstCisgc2NyaXB0cy9wby9jYS5wbyAgICAgICAgICAgICAgICAgICAgfCAgICA0ICstCisgc2NyaXB0cy9wby9kZS5wbyAgICAgICAgICAgICAgICAgICAgfCAgICA0ICstCisgc2NyaXB0cy9wby9kcGtnLWRldi5wb3QgICAgICAgICAgICAgfCAgICA0ICstCisgc2NyaXB0cy9wby9lcy5wbyAgICAgICAgICAgICAgICAgICAgfCAgICA0ICstCisgc2NyaXB0cy9wby9mci5wbyAgICAgICAgICAgICAgICAgICAgfCAgICA0ICstCisgc2NyaXB0cy9wby9wbC5wbyAgICAgICAgICAgICAgICAgICAgfCAgICA0ICstCisgc2NyaXB0cy9wby9ydS5wbyAgICAgICAgICAgICAgICAgICAgfCAgICA0ICstCisgc2NyaXB0cy9wby9zdi5wbyAgICAgICAgICAgICAgICAgICAgfCAgICA0ICstCisgc2NyaXB0cy90LzE5MF9EcGtnX1NobGlic19DcHBmaWx0LnQgfCAgICAyICstCisgc2NyaXB0cy90LzIwMF9EcGtnX1NobGlicy50ICAgICAgICAgfCAgICAyICstCisgc2NyaXB0cy90LzYwMF9EcGtnX0NoYW5nZWxvZy9zaGFkb3cgfCAgIDIwICsrKysrLS0tLS0KKyBzcmMvZmlsZXNkYi5oICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDIgKy0KKyB1dGlscy9zdGFydC1zdG9wLWRhZW1vbi5jICAgICAgICAgICB8ICAgIDQgKy0KKyB1dGlscy90LzEwMF91cGRhdGVfYWx0ZXJuYXRpdmVzLnQgICB8ICAgIDIgKy0KKyAzOSBmaWxlcyBjaGFuZ2VkLCAxMDggaW5zZXJ0aW9ucygrKSwgMTA4IGRlbGV0aW9ucygtKQorCitjb21taXQgMzEyMjUzODMwNDQ4OTI2MTUyMDIwYzhjZTBmNzgzNGI4NDUyYTVkOQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBBdWcgMTUgMDA6MDM6MDAgMjAxMSArMDIwMAorCisgICAgZHBrZzogQ2xhcmlmeSAtLXVwZGF0ZS1hdmFpbCB1c2FnZSBlcnJvciBtZXNzYWdlCisgICAgCisgICAgVW5pZnkgdGhlIHJlZmVyZW5jZSB0byB0aGUgUGFja2FnZXMtZmlsZSB0byBtYXRjaCB0aGUgb25lIHVzZWQgb24gdGhlCisgICAgbWFuIHBhZ2VzIGFuZCBvbiB0aGUgLS1oZWxwIG91dHB1dC4KKyAgICAKKyAgICBDbG9zZXM6ICM2MjgwNTUKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAxICsKKyBzcmMvdXBkYXRlLmMgICAgIHwgICAgMyArKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDRmZGJkNjlkN2I4Y2EyZmZmMzk3OThhNmU2ZmM1ZmEzZTIyOWM2NmIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gQXVnIDE1IDAwOjAxOjUzIDIwMTEgKzAyMDAKKworICAgIGRwa2ctcGFyc2VjaGFuZ2Vsb2c6IFJlbW92ZSBkdXBsaWNhdGUgcHJvZ3JhbSBuYW1lIGZyb20gdXNhZ2UgZXJyb3Igb3V0cHV0CisKKyBzY3JpcHRzL2Rwa2ctcGFyc2VjaGFuZ2Vsb2cucGwgfCAgICAyICstCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA2MjQ0OWEwYTI3YWIxMjMxZWQ4MTI2N2Y3ZWU1NDIxYjlmN2ZjYjBjCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIEF1ZyAxNCAyMzo0NTozNiAyMDExICswMjAwCisKKyAgICBFeHBhbmQgbnVtZXJpYyBsaXRlcmFscyBhbmQgd29yZCBhYmJyZXZpYXRpb24gaW4gdXNhZ2UgZXJyb3Igb3V0cHV0CisgICAgCisgICAgVGhpcyBhdm9pZHMgdW5uZWVkZWQgYWJicmV2aWF0aW9ucywgdXNlcyBjb3JyZWN0IGVuZ2xpc2gsIGFuZCBzaG91bGQKKyAgICBoZWxwIHRyYW5zbGF0b3JzLgorCisgc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbCB8ICAgIDIgKy0KKyBzY3JpcHRzL2Rwa2ctc2NhbnNvdXJjZXMucGwgIHwgICAgMiArLQorIDIgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgNWM2YmU5NmIxYzg4YzQwZDAwMmEyNTI5NTg5MWVjODFkODc2NGY5MAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBBdWcgMTQgMjM6Mjg6MDcgMjAxMSArMDIwMAorCisgICAgZHBrZy1kZWIoMSk6IENsYXJpZnkgdGhlIGRlZmF1bHQgY29tcHJlc3Npb24tbGV2ZWxzCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMSArCisgbWFuL2Rwa2ctZGViLjEgICB8ICAgIDQgKystLQorIDIgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgZmZjNjg4OGM1NzIxZTVlNDQ1MWQ4MTM1ODI3OTM2ZmNhNzYxYjE1NworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBBdWcgMTQgMjI6NDU6MjAgMjAxMSArMDIwMAorCisgICAgZGViLXNyYy1jb250cm9sKDUpOiBVc2UgbGludXgtYW55IGluIGV4YW1wbGUgY29udHJvbCBzdGFuemEKKyAgICAKKyAgICBJbnN0ZWFkIG9mIHVzaW5nIHRoZSBuZWdhdGVkIGxpc3Qgb2Ygbm90IHN1cHBvcnRlZCBhcmNoaXRlY3R1cmVzLCBqdXN0CisgICAgdXNlIHRoZSBwb3NpdGl2ZSBmb3JtLCB3aGljaCBzaG91bGQgYmUgY29uc2lkZXJlZCBjdXJyZW50IGJlc3QgcHJhY3RpY2UuCisKKyBtYW4vZGViLXNyYy1jb250cm9sLjUgfCAgICAyICstCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAxODcwMjU2MjhkNDZiZDczN2JkMjIyNDJiODU3YWU5MWU2OTIyMTAzCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIEF1ZyAxNCAyMjo0MzowNSAyMDExICswMjAwCisKKyAgICBkc2VsZWN0KDEpOiBDb3JyZWN0IGNvbmZpZ3VyYXRpb24gZGlyZWN0b3J5IHJlZmVyZW5jZQorICAgIAorICAgIFVzZSAvZXRjL2Rwa2cvZHNlbGVjdC5jZmcuZC8gaW5zdGVhZCBvZiAvZXRjL2Rwa2cvZHBrZy5jZmcuZC8uCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMiArKworIG1hbi9kc2VsZWN0LjEgICAgfCAgICA0ICsrLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IGVkM2VjNjY5ZDI1M2FjOWQ2OWYxMzRhOTNmNTcwMjUxZWQ2ODdkOTgKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gQXVnIDE0IDIyOjQxOjE2IDIwMTEgKzAyMDAKKworICAgIG1hbjogVXNlIG1pbnVzIHNpZ25zIGFuZCBoeXBoZW5zIGNvbnNpc3RlbnRseQorICAgIAorICAgIEFueSBzdHJpbmcgdGhhdCBjYW4gYmUgY29weSAmIHBhc3RlZCBpbnRvIGNvbnRyb2wgZmlsZXMgb3IgaW50byBhCisgICAgdGVybWluYWwsIGZvciBleGFtcGxlLCBuZWVkcyB0byBjb3JyZWN0bHkgdXNlIG1pbnVzIHNpZ25zIChlc2NhcGVkCisgICAgZGFzaGVzKSwgaW5zdGVhZCBvZiB0aGUgZGVmYXVsdCBoeXBoZW4uCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICB8ICAgIDEgKworIG1hbi9kZWItY29udHJvbC41ICAgICAgICAgICAgIHwgICAgNiArKy0tCisgbWFuL2RlYi1vbGQuNSAgICAgICAgICAgICAgICAgfCAgICA2ICsrLS0KKyBtYW4vZGViLW92ZXJyaWRlLjUgICAgICAgICAgICB8ICAgIDQgKy0KKyBtYW4vZGViLXNyYy1jb250cm9sLjUgICAgICAgICB8ICAgMzYgKysrKysrKysrLS0tLS0tLS0tCisgbWFuL2RlYi1zeW1ib2xzLjUgICAgICAgICAgICAgfCAgIDEwICsrKy0tLQorIG1hbi9kZWItdHJpZ2dlcnMuNSAgICAgICAgICAgIHwgICAxNiArKysrLS0tLQorIG1hbi9kZWItdmVyc2lvbi41ICAgICAgICAgICAgIHwgICAgNiArKy0tCisgbWFuL2RlYi41ICAgICAgICAgICAgICAgICAgICAgfCAgIDEyICsrKy0tLQorIG1hbi9kcGtnLWFyY2hpdGVjdHVyZS4xICAgICAgIHwgICAyNiArKysrKysrLS0tLS0tLQorIG1hbi9kcGtnLWJ1aWxkZmxhZ3MuMSAgICAgICAgIHwgICAgOCArKy0tCisgbWFuL2Rwa2ctYnVpbGRwYWNrYWdlLjEgICAgICAgfCAgIDM0ICsrKysrKysrKy0tLS0tLS0tLQorIG1hbi9kcGtnLWRlYi4xICAgICAgICAgICAgICAgIHwgICAgNCArLQorIG1hbi9kcGtnLWRpdmVydC44ICAgICAgICAgICAgIHwgICAxMCArKystLS0KKyBtYW4vZHBrZy1nZW5jaGFuZ2VzLjEgICAgICAgICB8ICAgIDQgKy0KKyBtYW4vZHBrZy1nZW5jb250cm9sLjEgICAgICAgICB8ICAgIDggKystLQorIG1hbi9kcGtnLWdlbnN5bWJvbHMuMSAgICAgICAgIHwgICAyMCArKysrKy0tLS0tCisgbWFuL2Rwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjEgfCAgICA4ICsrLS0KKyBtYW4vZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMSAgICB8ICAgMTQgKysrKy0tLS0KKyBtYW4vZHBrZy1uYW1lLjEgICAgICAgICAgICAgICB8ICAgIDYgKystLQorIG1hbi9kcGtnLXBhcnNlY2hhbmdlbG9nLjEgICAgIHwgICAgNCArLQorIG1hbi9kcGtnLXF1ZXJ5LjEgICAgICAgICAgICAgIHwgICAgNiArKy0tCisgbWFuL2Rwa2ctc2NhbnBhY2thZ2VzLjEgICAgICAgfCAgICA4ICsrLS0KKyBtYW4vZHBrZy1zY2Fuc291cmNlcy4xICAgICAgICB8ICAgIDYgKystLQorIG1hbi9kcGtnLXNobGliZGVwcy4xICAgICAgICAgIHwgICAzMiArKysrKysrKy0tLS0tLS0tCisgbWFuL2Rwa2ctc291cmNlLjEgICAgICAgICAgICAgfCAgIDc4ICsrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBtYW4vZHBrZy10cmlnZ2VyLjEgICAgICAgICAgICB8ICAgIDcgKystLQorIG1hbi9kcGtnLjEgICAgICAgICAgICAgICAgICAgIHwgICAgNCArLQorIG1hbi91cGRhdGUtYWx0ZXJuYXRpdmVzLjggICAgIHwgICAgOCArKy0tCisgMjkgZmlsZXMgY2hhbmdlZCwgMTk3IGluc2VydGlvbnMoKyksIDE5NSBkZWxldGlvbnMoLSkKKworY29tbWl0IDhmYmE1MWQ0ZjMyN2E5OWM5OTQwNjhlNThiYzc2ZGU3NzAyNDdhN2YKK0F1dGhvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitEYXRlOiAgIFNhdCBBdWcgMjAgMDg6MzE6MzcgMjAxMSArMDIwMAorCisgICAgUmVnZW5lcmF0ZSAucG90IGZpbGVzIGFuZCBtZXJnZSAucG8gZmlsZXMgd2l0aCB0aGVtCisKKyBtYW4vcG8vZXMucG8gICAgfCAgMTQ0ICsrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0KKyBtYW4vcG8vZnIucG8gICAgfCAgMTQ0ICsrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0KKyBtYW4vcG8vaHUucG8gICAgfCAgMTM0ICsrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tCisgbWFuL3BvL2phLnBvICAgIHwgIDEzOSArKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLQorIG1hbi9wby9wbC5wbyAgICB8ICAxNDIgKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tCisgbWFuL3BvL3B0X0JSLnBvIHwgIDEyOSArKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tCisgbWFuL3BvL3J1LnBvICAgIHwgIDEyOSArKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tCisgbWFuL3BvL3N2LnBvICAgIHwgIDIzNSArKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgOCBmaWxlcyBjaGFuZ2VkLCA2NjIgaW5zZXJ0aW9ucygrKSwgNTM0IGRlbGV0aW9ucygtKQorCitjb21taXQgZjQxMmM2N2I1NWQ0NWZmNGY1OTVlOGM1MGIzNWQ4ZjE3MjU0MGE0MAorQXV0aG9yOiBQZXRlciBLcmVmdGluZyA8cGV0ZXJrQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBBdWcgMTcgMjA6NTk6MzcgMjAxMSArMDEwMAorCisgICAgVXBkYXRlIFN3ZWRpc2ggdHJhbnNsYXRpb24uCisgICAgCisgICAgcG8vc3YucG86IDEwMjN0MGYwdS4KKyAgICBtYW4vcG8vc3YucG86IDE4MjR0MTgwZjQwdSAoV0lQKS4KKyAgICBzY3JpcHRzL3BvL3N2LnBvOiA1MjR0MGYwdQorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDEgKworIG1hbi9wby9zdi5wbyAgICAgfCAgMzU2ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL3N2LnBvICAgICAgICAgfCAgIDYxICsrKysrLS0tLS0KKyBzY3JpcHRzL3BvL3N2LnBvIHwgICA4NyArKysrKysrLS0tLS0tLQorIDQgZmlsZXMgY2hhbmdlZCwgMjkxIGluc2VydGlvbnMoKyksIDIxNCBkZWxldGlvbnMoLSkKKworY29tbWl0IGVmY2YyNzlhNTBhYmEzMzY5YjI0ZDA2MjAxN2Q1ODEwMDZkNDdkOWIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgQXVnIDEzIDAzOjE5OjI0IDIwMTEgKzAyMDAKKworICAgIGRwa2c6IERlZmVyIGhhcmRsaW5rIHJlbmFtZXMgdG8gYXZvaWQgYnJlYWthZ2Ugb24gdW5wYWNrCisgICAgCisgICAgVGhpcyBmaXhlcyB0d28gaXNzdWVzIHJlbGF0ZWQgdG8gbWFraW5nIHRoZSBuZXcgZmlsZSBjb250ZW50cyBhdmFpbGFibGUKKyAgICB0aHJvdWdoIGFuIGFsdGVybmF0aXZlIGJ1dCBmaW5hbCBwYXRoIGJlZm9yZQorICAgIAorICAgIDEpIHRoZSBvbmUgImNhcnJ5aW5nIiB0aGUgY29udGVudCBoYXMgYmVlbiBmc3luYygpZWQsIHRvIGF2b2lkIGdldHRpbmcKKyAgICBnYXJiYWdlIG9uIHN5c3RlbSBmYWlsdXJlLgorICAgIAorICAgIDIpIHRoZSBkZWZlcnJlZCBmc3luYygpIG9uIHRoZSBtYWluIHBhdGggaGFzIGJlZW4gcGVyZm9ybWVkLCBhdm9pZGluZworICAgIGEgcG9zc2libGUgZXJyb3Igd2hlbiByZW9wZW5pbmcgdGhlIGZpbGUgZm9yIHdyaXRpbmcgaWYgaXQncyBjdXJyZW50bHkKKyAgICB1bmRlciBleGVjdXRpb24uCisgICAgCisgICAgRGVmZXJyaW5nIHRoZSBoYXJkbGluayBpcyBzYWZlIGFzIHRoZXkgYXJlIGFsd2F5cyBhZnRlciB0aGUgdGFyIGVudHJ5CisgICAgY29udGFpbmluZyB0aGUgYWN0dWFsIGZpbGUgZGF0YS4KKyAgICAKKyAgICBSZWdyZXNzaW9uIGludHJvZHVjZWQgaW4gY29tbWl0IDljZDQxZmRkYTFjMjcxNjljNTJkNzNiM2IzY2U3MTk5MWQ3MjQ5OTQuCisgICAgCisgICAgQ2xvc2VzOiAjNjM1NjgzCisgICAgCisgICAgUmVwb3J0ZWQtYnk6IE5pa28gVHluaSA8bnR5bmlAZGViaWFuLm9yZz4KKyAgICBCYXNlZC1vbi1wYXRjaC1ieTogSm9uYXRoYW4gTmllZGVyIDxqcm5pZWRlckBnbWFpbC5jb20+CisgICAgU2lnbmVkLW9mZi1ieTogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDUgKysrKysKKyBzcmMvYXJjaGl2ZXMuYyAgIHwgICAgMyArKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDcgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDVjMWRhM2Y4YzI4MDY0OTBmOWE3YmVkMzJjMGE1YjNhMjRkMDZkNTUKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgQXVnIDEyIDIyOjM1OjQ2IDIwMTEgKzAyMDAKKworICAgIERwa2c6OkRlcHM6IGZpeCBzaW1wbGlmaWNhdGlvbiBsb2dpYyBvZiB1bmlvbiBkZXBlbmRlbmNpZXMKKyAgICAKKyAgICBUaGUgY29kZSBtZXJnaW5nIGRlcGVuZGVuY2llcyB3YXMgd3JvbmdseSB1cGRhdGluZyB0aGUgZGVwZW5kZW5jeSB0aGF0J3MKKyAgICBub3QgaW50ZWdyYXRlZCBpbiB0aGUgcmVzdWx0aW5nIGZpZWxkLgorICAgIAorICAgIFJlcG9ydGVkLWJ5OiBBbmRyZWFzIE1ldHpsZXIgPGFtZXR6bGVyQGRvd25oaWxsLmF0LmV1Lm9yZz4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgfCAgICAxICsKKyBzY3JpcHRzL0Rwa2cvRGVwcy5wbSAgICAgIHwgICAgNiArKystLS0KKyBzY3JpcHRzL3QvNDAwX0Rwa2dfRGVwcy50IHwgICAgNiArKysrKy0KKyAzIGZpbGVzIGNoYW5nZWQsIDkgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKKworY29tbWl0IGU4NGM0N2FhMjk4ZTliZDUwMWYyZWEzNTNiNDQ4M2YwMmMyNDllYjgKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgQXVnIDkgMDc6MTk6MDkgMjAxMSArMDIwMAorCisgICAgbGliZHBrZzogVXNlIGEgZ2VuZXJpYyBwb2ludGVyIHRvIHBhc3MgdGhlIHBhcnNlZCBvYmplY3QgZGF0YSBhcm91bmQKKyAgICAKKyAgICBUaGlzIHdpbGwgYWxsb3cgY29kZSBub3QgcGFyc2luZyBiaW5hcnkgcGFja2FnZSBjb250cm9sIGZpbGVzIHRvIGJlCisgICAgYWJsZSB0byBlYXNpbHkgcmV1c2UgdGhlIHBhcnNlciwgYnkgc3VwcGx5aW5nIHRoZWlyIG93biBvYmplY3QKKyAgICBzdHJ1Y3R1cmUuCisgICAgCisgICAgVW5mb3J0dW5hdGVseSB0aGlzIHNhY3JpZmljZXMgdGhlIHR5cGUtc2FmZXR5IG9mIHRoZSBwYXJzZV9zdGFuemEoKQorICAgIGFuZCBwYXJzZV9maWVsZCgpIGZ1bmN0aW9ucywgYnV0IHRoYXQgb25seSBhZmZlY3RzIG9uZSB2YXJpYWJsZSwKKyAgICB3aGljaCBzaG91bGQgYmUgYW4gYWNjZXB0YWJsZSB0cmFkZW9mZiBnaXZlbiB0aGUgZ2FpbiBpbiBjb2RlIHJldXNlLgorCisgbGliL2Rwa2cvcGFyc2UuYyAgICAgfCAgIDI5ICsrKysrKysrKysrKysrKysrKysrKystLS0tLS0tCisgbGliL2Rwa2cvcGFyc2VkdW1wLmggfCAgICA1ICsrLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAyNCBpbnNlcnRpb25zKCspLCAxMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDg1ZGNmODJjNmVkNzIyZDljZmI2NjRhODdhNDEzMTU3OTFjYmIzYjQKK0F1dGhvcjogQ2hyaXN0aWFuIFBFUlJJRVIgPGJ1YnVsbGVAZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIEF1ZyA4IDIwOjI5OjEzIDIwMTEgKzAyMDAKKworICAgIENoYW5nZWxvZyBmb3IgRnJlbmNoIHRyYW5zbGF0aW9uIHVwZGF0ZQorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDIgKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGMyMmI4MzQ2Njc2NmJmYzE0NjE3OWZiOTM4ODRmMWY5Mzc0YjA0NTMKK0F1dGhvcjogQ2hyaXN0aWFuIFBFUlJJRVIgPGJ1YnVsbGVAZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIEF1ZyA4IDIwOjI3OjQwIDIwMTEgKzAyMDAKKworICAgIEZpeCBTeWx2ZXN0cmUncyB0cmFuc2xhdGlvbgorCisgc2NyaXB0cy9wby9mci5wbyB8ICAgIDIgKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGJmZmJlZjM4YWZmZTVkYmFlM2YxNWUwN2E0ZjE5ZDY4NmUxYzBiZDYKK0F1dGhvcjogU3lsdmVzdHJlIExlZHJ1IDxzeWx2ZXN0cmUubGVkcnVAc2NpbGFiLm9yZz4KK0RhdGU6ICAgTW9uIEF1ZyA4IDE1OjQ0OjAxIDIwMTEgKzAyMDAKKworICAgIFVwZGF0ZSBvZiB0aGUgZnJlbmNoIGxvY2FsaXphdGlvbgorCisgc2NyaXB0cy9wby9mci5wbyB8ICAgMTAgKysrKystLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCA1IGRlbGV0aW9ucygtKQorCitjb21taXQgOThmNWY2YWQyYTljZmYyNjg0MjcxYjM5OWVjNTFkNDg0MWY5MWY1OQorQXV0aG9yOiBTeWx2ZXN0cmUgTGVkcnUgPHN5bHZlc3RyZS5sZWRydUBzY2lsYWIub3JnPgorRGF0ZTogICBNb24gQXVnIDggMTU6NDI6NTYgMjAxMSArMDIwMAorCisgICAgRml4IGEgZnJlbmNoIHR5cG8KKworIHNjcmlwdHMvcG8vZnIucG8gfCAgICAyICstCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBmYjE4NzgzY2UyNjBhMDdkM2YzYTVmNWEzYTgxNjQwYTQ1YTlkMDg5CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEF1ZyA1IDA2OjIzOjU5IDIwMTEgKzAyMDAKKworICAgIGxpYmRwa2c6IEluaXRpYWxpemUgcHMtPnBrZyBhbmQgcHMtPnBrZ2JpbiB0byBOVUxMIGluIHBhcnNlX29wZW4oKQorICAgIAorICAgIFRoaXMgZ3VhcmFudGVlcyB0aGUgcGFyc2VkYl9zdGF0ZSB2YXJpYWJsZSBpcyBpbiBhIHNhbmUgc3RhdGUgYWZ0ZXIKKyAgICB0aGUgcGFyc2Vfb3BlbigpIGNhbGwuCisKKyBsaWIvZHBrZy9wYXJzZS5jIHwgICAgMiArKworIDEgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgNmVlNWU4YWY5ZGJjZDJlZjE2MWUxMTc0ODI3ZWE0ZTQ4ZGEwOTg3MAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBBdWcgNSAwNToyMTowMSAyMDExICswMjAwCisKKyAgICBsaWJkcGtnOiBSZWZhY3RvciBwYXJzZV9vcGVuKCkgYW5kIHBhcnNlX2Nsb3NlKCkgZnJvbSBwYXJzZWRiKCkKKyAgICAKKyAgICBUaGlzIHdpbGwgYWxsb3cgY29kZSB1c2luZyBwYXJzZV9zdGFuemEoKSB0byBhdm9pZCBoYXZpbmcgdG8gcmVpbXBsZW1lbnQKKyAgICB0aGUgb3BlbmluZyBhbmQgY2xvc2luZyBsb2dpYy4KKworIGxpYi9kcGtnL3BhcnNlLmMgICAgIHwgIDExMCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tCisgbGliL2Rwa2cvcGFyc2VkdW1wLmggfCAgICA1ICsrCisgMiBmaWxlcyBjaGFuZ2VkLCA3MiBpbnNlcnRpb25zKCspLCA0MyBkZWxldGlvbnMoLSkKKworY29tbWl0IDI1MGFmNDMwYmM1Y2VjMDljMmU0ZWIyMjNmOTM1ODkxZTBkOTZmNDUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgQXVnIDUgMDY6MDM6MDIgMjAxMSArMDIwMAorCisgICAgbGliZHBrZzogQ2xvc2UgdGhlIGZpbGUgZGVzY3JpcHRvciBqdXN0IGFmdGVyIHNsdXJwaW5nIGl0IGluIHBhcnNlZGIoKQorCisgbGliL2Rwa2cvcGFyc2UuYyB8ICAgIDYgKysrKy0tCisgMSBmaWxlcyBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyZGVlNDcwMGFjOTRmZmVkYjI3MzY2ZTY1MGNkMmZlZDM4M2U0MGUxCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IEF1ZyA0IDIxOjMzOjIzIDIwMTEgKzAyMDAKKworICAgIGRwa2ctc291cmNlOiBzaW1wbGlmeSBtZXNzYWdlIHBvaW50aW5nIHRvIGRwa2ctc291cmNlIC0tY29tbWl0CisgICAgCisgICAgVGhlIHN1cHBsZW1lbnRhcnkgYXJndW1lbnRzIHN1Z2dlc3RlZCBhcmUgYXdrd2FyZCBhbmQgYXJlIGdlbmVyYWxseSBub3QKKyAgICBuZWVkZWQgdW5sZXNzIHlvdXIgcGFja2FnZSBpcyBodWdlIGFuZCB0YWtlcyBhIGxvbmcgdGltZSB0byB1bmNvbXByZXNzCisgICAgYW5kIGRpZmYuCisgICAgCisgICAgVGhlIGJlc3QgYWR2aWNlIGlzIHRodXMg4oCcZHBrZy1zb3VyY2UgLS1jb21taXTigJ0gd2l0aG91dCBhbnkgcGFyYW1ldGVyLgorICAgIE1haW50YWluZXJzIG9mIGJpZyBwYWNrYWdlcyB3aWxsIHJlYWQgdGhlIG1hbnVhbCBwYWNrYWdlIGFuZCBsZWFybgorICAgIGJ5IHRoZW1zZWx2ZXMgaG93IHRvIHJldXNlIHRoZSBnZW5lcmF0ZWQgcGF0Y2guCisKKyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG0gfCAgICAyICstCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA0NWM4MzE3NWI2NTQ0YTU0YWQ3OWRjNjcxYTc3YTU5YmY3OWY3NjkwCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIEF1ZyAzIDIyOjAyOjMzIDIwMTEgKzAyMDAKKworICAgIGRwa2ctc291cmNlOiBkb24ndCBhbHdheXMgcHJpbnQgImxvY2FsIGNoYW5nZXMgaGF2ZSBiZWVuIHJlY29yZGVkIGluIGEgbmV3IHBhdGNoIgorICAgIAorICAgIFRoZSBtZXNzYWdlIHNob3VsZCBvbmx5IGJlIHByaW50ZWQgaWYgc3VjaCBhIHBhdGNoIGhhcyByZWFsbHkKKyAgICBiZWVuIGNyZWF0ZWQuCisgICAgCisgICAgUmVwb3J0ZWQtYnk6IFN2ZW4gSm9hY2hpbQorCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtIHwgICAgMyArKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDE3M2NiZTcxZWI4MDBkYmVmNTJhNmQ4OTRhMWRmZmQ2NDk5NzYxMGEKK0F1dGhvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitEYXRlOiAgIFdlZCBBdWcgMyAyMToxOTozOCAyMDExICswMjAwCisKKyAgICBGaXggdHlwbworCisgbWFuL3BvL2RlLnBvIHwgICAgNSArKy0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQorCitjb21taXQgYjk2NGRiZTU5OTVmYTEzNjA0MmIzMzhlYTk0NDY1NWY5YjI2MzE3MgorQXV0aG9yOiBIZWxnZSBLcmV1dHptYW5uIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KK0RhdGU6ICAgV2VkIEF1ZyAzIDIxOjE0OjQxIDIwMTEgKzAyMDAKKworICAgIFVwZGF0ZSBHZXJtYW4gdHJhbnNsYXRpb24gb2YgbWFudWFsIHBhZ2VzCisgICAgCisgICAgVXBkYXRlIHRvIDIwNDd0LgorCisgbWFuL3BvL2RlLnBvIHwgICA5MSArKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDM4IGluc2VydGlvbnMoKyksIDUzIGRlbGV0aW9ucygtKQorCitjb21taXQgYWY3ODhkM2FiZjQyYTM1YjI0YWFkMTljNzM5M2U0Y2Y5Y2NiNjIzOAorQXV0aG9yOiBIZWxnZSBLcmV1dHptYW5uIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KK0RhdGU6ICAgVHVlIEF1ZyAyIDIxOjU1OjUwIDIwMTEgKzAyMDAKKworICAgIFVwZGF0ZSBHZXJtYW4gdHJhbnNsYXRpb24gb2YgbWFudWFsIHBhZ2VzCisgICAgCisgICAgVXBkYXRlIHRvIDIwMzd0N2YzdS4KKworIG1hbi9wby9kZS5wbyB8ICAyNTUgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMTMyIGluc2VydGlvbnMoKyksIDEyMyBkZWxldGlvbnMoLSkKKworY29tbWl0IDljYjRiZDRmY2YyNTEyMTI1MzRmNDAxMGQ1OWZmNzdhOWVlNGNkZDYKK0F1dGhvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitEYXRlOiAgIFR1ZSBBdWcgMiAxOTozMjo1NyAyMDExICswMjAwCisKKyAgICBVcGRhdGUgR2VybWFuIHNjcmlwdHMgdHJhbnNsYXRpb24KKyAgICAKKyAgICBVcGRhdGUgdG8gNTI0dC4KKworIHNjcmlwdHMvcG8vZGUucG8gfCAgIDc5ICsrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMjUgaW5zZXJ0aW9ucygrKSwgNTQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBjNTY3ODQzNGI0ODUyODRjMzUyYTFkZTNhMjg2MjcyNmJhODUzOTNjCitBdXRob3I6IFN2ZW4gSm9hY2hpbSA8c3ZlbmpvYWNAZ214LmRlPgorRGF0ZTogICBUdWUgQXVnIDIgMTE6NTc6MTcgMjAxMSArMDIwMAorCisgICAgR2VybWFuIGRwa2cgdHJhbnNsYXRpb24gdXBkYXRlCisgICAgCisgICAgVXBkYXRlIHRvIDEwMjN0LgorCisgcG8vZGUucG8gfCAgMTg4ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA5NyBpbnNlcnRpb25zKCspLCA5MSBkZWxldGlvbnMoLSkKKworY29tbWl0IDdjMmRmODk4NDQ2MTdiNzA4ODNhYjc2YjFjMjM5YTJmMDg4Y2MyMzIKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgQXVnIDIgMTE6MjA6NTQgMjAxMSArMDIwMAorCisgICAgZHBrZy1zb3VyY2U6IGNsZWFuIHVwIHRlbXBvcmFyeSBmaWxlIGluIGNhc2Ugb2YgaW50ZXJydXB0aW9uCisgICAgCisgICAgTmF2aXRlIHBhY2thZ2VzIChib3RoICIxLjAiIGFuZCAiMy4wIChuYXRpdmUpIikgZmFpbGVkIHRvIHJlbW92ZQorICAgIHRoZSB0ZW1wb3JhcnkgdGFyYmFsbCBpZiB0aGUgcHJvY2VzcyBpcyBpbnRlcnJ1cHRlZCBkdXJpbmcgaXRzCisgICAgZ2VuZXJhdGlvbi4KKyAgICAKKyAgICBSZXBvcnRlZC1ieTogQ3lyaWwgQnJ1bGVib2lzIDxraWJpQGRlYmlhbi5vcmc+CisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMiArKworIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9uYXRpdmUucG0gfCAgICAzICsrKworIDIgZmlsZXMgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgM2NkNDlmY2QzOTE0NjYzNzBkOWQ3ZjQ3NmY3ZjhhY2YwMjY3ZDI5ZQorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBBdWcgMiAxMTowNjoxMSAyMDExICswMjAwCisKKyAgICBNb3ZlIGNoYW5nZWxvZyBlbnRyeSB0byBhdHRyaWJ1dGUgaXQgY29ycmVjdGx5IHRvIG1lCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMiArLQorIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgZjNhOGVhNTI0NTYwOGUyM2M5MzYwMGZmMzNmMDVkMmFmMjA1Y2I2NAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBBdWcgMiAwNTowNTozMCAyMDExICswMjAwCisKKyAgICBsaWJkcGtnOiBSZW1vdmUgb2Jzb2xldGUgdmFyaWFibGUgcmVmZXJlbmNlcyBpbiBwYXJzZWRiKCkgY29tbWVudAorICAgIAorICAgIFRoZSB3YXJudG8gYW5kIHdhcm5jb3VudCB2YXJpYWJsZXMgd2VyZSByZW1vdmVkIGluIGNvbW1pdHMKKyAgICBiYTkwODc4M2UzMDZiYTM4NDU3YTg0ZmQ2ZDk3NWNhNjllMzUxZTU2IGFuZAorICAgIDg0NTEwNjVjZjg1Y2I4YTE3ZGNkMTdlMGNkMmNhMWZkZWY3Y2I3NDkgcmVzcGVjdGl2ZWx5LgorCisgbGliL2Rwa2cvcGFyc2UuYyB8ICAgIDIgKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDk4YWVhMTUxMzJjMDg1YmUzOTAxOTU2OTg2YWZhYTQ2YmYwNDU2YjEKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgQXVnIDIgMDQ6NTQ6NDIgMjAxMSArMDIwMAorCisgICAgbGliZHBrZzogTWFrZSBwYXJzZV9zdGFuemEoKSBhIHB1YmxpYyBmdW5jdGlvbgorICAgIAorICAgIE1ha2UgcHVibGljIGFsc28gdGhlIHJlcXVpcmVkIHBhcnNlIGhlbHBlciBtYWNyb3MgYW5kIHN0cnVjdHVyZXMuIEF0CisgICAgbGVhc3QgcGFyc2VfRU9GKCkgd2lsbCBiZSBuZWVkZWQgZm9yIG90aGVyIGNhbGxlcnMgdG8gZ2V0IG91dCBvZiB0aGUKKyAgICBsb29wIHdoZW4gcGFyc2luZyBtdWx0aS1zdGFuemEgZmlsZXMuCisKKyBsaWIvZHBrZy9wYXJzZS5jICAgICB8ICAgMTggKy0tLS0tLS0tLS0tLS0tLS0tCisgbGliL2Rwa2cvcGFyc2VkdW1wLmggfCAgIDIwICsrKysrKysrKysrKysrKysrKysrCisgMiBmaWxlcyBjaGFuZ2VkLCAyMSBpbnNlcnRpb25zKCspLCAxNyBkZWxldGlvbnMoLSkKKworY29tbWl0IGVmMThhYzg4YjAyOWIwZGJhNDI3MmQzYjJkYWE5MTMwMTQ2ZDI2OTcKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgQXVnIDIgMDQ6NTA6MDkgMjAxMSArMDIwMAorCisgICAgbGliZHBrZzogRGV0YW5nbGUgZmllbGRpbmZvcyBmcm9tIHN0cnVjdCBmaWVsZF9zdGF0ZQorICAgIAorICAgIERlZmluZSB0aGUgZmllbGRlbmNvdW50ZXJlZCBhcnJheSBpbiB0aGUgc3RhY2ssIGFuZCBzd2l0Y2ggdGhlIGFycmF5CisgICAgaW4gc3RydWN0IGZpZWxkX3N0YXRlIHRvIGJlIGEgcG9pbnRlciB0byB0aGF0IGFycmF5LiBUaGlzIHdheSB3ZSBkbyBub3QKKyAgICBwdWxsIHRoZSBmaWVsZGluZm9zIHN5bWJvbCAoc3BlY2lmaWMgdG8gdGhlIHBhcnNlZGIoKSBmdW5jdGlvbikgdG8gdGhlCisgICAgbm93IGdlbmVyaWMgc3RydWN0IGZpZWxkX3N0YXRlLgorCisgbGliL2Rwa2cvcGFyc2UuYyB8ICAgIDYgKysrKy0tCisgMSBmaWxlcyBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA3MjU2NzVkZGMxMDc5MDdlYTY4ZGI1YWNlZjg2ODg5NmNmMzkxNWQyCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIEF1ZyAyIDA0OjI0OjEwIDIwMTEgKzAyMDAKKworICAgIGxpYmRwa2c6IFJlbmFtZSBwYXJzZSBoZWxwZXIgKl9tbWFwIGZ1bmN0aW9ucyB0byBwYXJzZV8qCisgICAgCisgICAgVGhpcyBhYnN0cmFjdHMgdGhlIG1ldGhvZCB1c2VkIHRvIGxvYWQgdGhlIGZpbGUgY29udGVudHMsIGFuZCBpdCBhbHNvCisgICAgbmFtZXNwYWNlcyBpdCBmb3IgdGhlIHBhcnNlci4KKworIGxpYi9kcGtnL3BhcnNlLmMgfCAgIDQ0ICsrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyMiBpbnNlcnRpb25zKCspLCAyMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDdkMDZlYTU2NmJhZmU1ZDI5MTRhZGJmYTQ4MjAzNDJmMzU4MjlhMzcKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgSnVsIDE0IDE3OjIxOjU1IDIwMTEgKzAyMDAKKworICAgIGxpYmRwa2c6IFJlZmFjdG9yIFJGQy04MjIgc3RhbnphIHBhcnNpbmcgaW50byBuZXcgcGFyc2Vfc3RhbnphKCkKKyAgICAKKyAgICBUaGlzIGdlbmVyYWxpemVzIHRoZSBzdGFuemEgcGFyc2luZyBzbyB0aGF0IGl0IGNhbiBiZSB1c2VkIGJ5IG90aGVyCisgICAgcGFydHMgb2YgdGhlIGNvZGUuCisKKyBsaWIvZHBrZy9wYXJzZS5jIHwgIDIxNCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDEyMyBpbnNlcnRpb25zKCspLCA5MSBkZWxldGlvbnMoLSkKKworY29tbWl0IDNkODk1MWZkZjVjYzJmZTMyMDk1NDBiYzQzYzQ4OTIwOGRiOGMzMDYKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgSnVsIDE0IDA0OjM3OjMxIDIwMTEgKzAyMDAKKworICAgIGxpYmRwa2c6IE1vdmUgZGF0YXB0ciBhbmQgZW5kcHRyIGZyb20gcGFyc2VkYigpIHRvIHN0cnVjdCBwYXJzZWRiX3N0YXRlCisKKyBsaWIvZHBrZy9wYXJzZS5jICAgICB8ICAgNzUgKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBsaWIvZHBrZy9wYXJzZWR1bXAuaCB8ICAgIDIgKworIDIgZmlsZXMgY2hhbmdlZCwgNDQgaW5zZXJ0aW9ucygrKSwgMzMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA5MjZhMjA0YzE2MDlkMzVkZTNhNjUwMGY4ZTk2YzlkYjBjMzE1ZGU0CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IEp1bCAxNCAwMzo1ODo0NSAyMDExICswMjAwCisKKyAgICBsaWJkcGtnOiBBZGQgcGtnIGFuZCBwa2diaW4gdG8gc3RydWN0IHBhcnNlZGJfc3RhdGUKKyAgICAKKyAgICBXZSBhcmUgcGFzc2luZyB0aGVzZSB2YXJpYWJsZXMgYXMgYXJndW1lbnRzIG1vc3Qgb2YgdGhlIHRpbWUgZm9yCisgICAgcGFyc2VfZXJyb3IoKSBhbmQgcGFyc2Vfd2FybigpIGNhbGxzIHdoaWNoIGFyZSBub3QgcnVuLXRpbWUgZnJlcXVlbnQsCisgICAgdGhpcyBhbHNvIHVudGllcyBzb21ld2hhdCB0aGUgY29kZSBmcm9tIHRoZSBwYWNrYWdlIHN0cnVjdHVyZXMuCisKKyBsaWIvZHBrZy9maWVsZHMuYyAgICB8ICAgOTMgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIGxpYi9kcGtnL3BhcnNlLmMgICAgIHwgICA0OSArKysrKysrKysrKysrKy0tLS0tLS0tLS0tLQorIGxpYi9kcGtnL3BhcnNlZHVtcC5oIHwgICAxNiArKysrLS0tLQorIGxpYi9kcGtnL3BhcnNlaGVscC5jIHwgICAzNyArKysrKysrKy0tLS0tLS0tLS0tLQorIDQgZmlsZXMgY2hhbmdlZCwgOTUgaW5zZXJ0aW9ucygrKSwgMTAwIGRlbGV0aW9ucygtKQorCitjb21taXQgODQyZTY2YWU2NzkwODA1ZDg3YjUxMTI5YjU2MGQxYTZiMGU1MjZiMworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBBdWcgMiAwNDo1NjowMCAyMDExICswMjAwCisKKyAgICBsaWJkcGtnOiBSZW1vdmUgdHJhaWxpbmcgc2VtaWNvbG9ucyBmcm9tIGdldGNfbW1hcCBhbmQgdW5nZXRjX21tYXAKKyAgICAKKyAgICBUaG9zZSBhcmUgdW5uZWNlc3NhcnkgYXMgdGhlc2UgYXJlIGZ1bmN0aW9uIG1hY3JvcyB3aGljaCBuZWVkIHRvIGJlCisgICAgZm9sbG93ZWQgYnkgc2VtaWNvbG9ucyBvbiB0aGUgY2FsbCBzaXRlcy4KKworIGxpYi9kcGtnL3BhcnNlLmMgfCAgICA0ICsrLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDAyYzI4YzYzYTM0ZTI1MmQ3NWY4OTNjYjA4NjlmOTQ4MGY2MDM4MjIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgQXByIDI2IDA3OjM1OjE2IDIwMTEgKzAyMDAKKworICAgIGRwa2ctZGViOiBBZGQgLS1yYXctZXh0cmFjdCBvcHRpb24gY29tYmluaW5nIC0tY29udHJvbCBhbmQgLS1leHRyYWN0CisgICAgCisgICAgVGhpcyBhbGxvd3MgdG8gZXh0cmFjdCB0aGUgY29udHJvbCBhbmQgZmlsZSBzeXN0ZW0gbWVtYmVycyBvZiBhIC5kZWIKKyAgICBpbnRvIGEgc2luZ2xlIGRpcmVjdG9yeSB1c2luZyB0aGUgc2FtZSBsYXlvdXQgZHBrZy1kZWIgLWIgZXhwZWN0cyBmb3IKKyAgICBidWlsZGluZyBhIHBhY2thZ2UuCisgICAgCisgICAgQ2xvc2VzOiAjNTUyMTIzCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgIHwgICAgMiArKworIGRwa2ctZGViL2Rwa2ctZGViLmggfCAgICAxICsKKyBkcGtnLWRlYi9leHRyYWN0LmMgIHwgICAzMiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKworIGRwa2ctZGViL21haW4uYyAgICAgfCAgICAzICsrKworIG1hbi9kcGtnLWRlYi4xICAgICAgfCAgICA3ICsrKysrKysKKyA1IGZpbGVzIGNoYW5nZWQsIDQ1IGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA4NTYxZWViNDgyOTJhMDQ5NWQxMzMzNWQ3ZjA4OGZlNjZlOGVhMTY3CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIEp1biAyMCAxOToxMToyMCAyMDExICswMjAwCisKKyAgICBkcGtnLWRlYjogQWRkIG5ldyAtdiwgLS12ZXJib3NlIG9wdGlvbgorICAgIAorICAgIENoYW5nZSAtLWV4dHJhY3QgdG8gaG9ub3VyIC0tdmVyYm9zZSBhbmQgYmVoYXZlIGFzIC0tdmV4dHJhY3QuCisgICAgCisgICAgQ2xvc2VzOiAjMjkzMjgwCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgIHwgICAgMiArKworIGRwa2ctZGViL2Rwa2ctZGViLmggfCAgICAxICsKKyBkcGtnLWRlYi9leHRyYWN0LmMgIHwgICAgOSArKysrKysrLS0KKyBkcGtnLWRlYi9tYWluLmMgICAgIHwgICAgMyArKysKKyBtYW4vZHBrZy1kZWIuMSAgICAgIHwgICAgOCArKysrKysrLQorIDUgZmlsZXMgY2hhbmdlZCwgMjAgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworY29tbWl0IGNkMzQ5MjI0NWQ4MWM5NzY2YzlmZjA5ZGM2NmY1ODIyNzUxY2Y3MWMKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gQXVnIDEgMjI6Mjc6MDggMjAxMSArMDIwMAorCisgICAgUmVnZW5lcmF0ZSAucG90IGZpbGVzIGFuZCBtZXJnZSAucG8gZmlsZXMgd2l0aCB0aGVtCisKKyBkc2VsZWN0L3BvL2JzLnBvICAgICAgICB8ICAxMDggKy0KKyBkc2VsZWN0L3BvL2NhLnBvICAgICAgICB8ICAxMDggKy0KKyBkc2VsZWN0L3BvL2NzLnBvICAgICAgICB8ICAxMDggKy0KKyBkc2VsZWN0L3BvL2RhLnBvICAgICAgICB8ICAxMDggKy0KKyBkc2VsZWN0L3BvL2RlLnBvICAgICAgICB8ICAxMDggKy0KKyBkc2VsZWN0L3BvL2RzZWxlY3QucG90ICB8ICAxMTAgKy0KKyBkc2VsZWN0L3BvL2VsLnBvICAgICAgICB8ICAxMDggKy0KKyBkc2VsZWN0L3BvL2VzLnBvICAgICAgICB8ICAxMDggKy0KKyBkc2VsZWN0L3BvL2V0LnBvICAgICAgICB8ICAxMDggKy0KKyBkc2VsZWN0L3BvL2V1LnBvICAgICAgICB8ICAxMDggKy0KKyBkc2VsZWN0L3BvL2ZyLnBvICAgICAgICB8ICAxMDggKy0KKyBkc2VsZWN0L3BvL2dsLnBvICAgICAgICB8ICAxMDggKy0KKyBkc2VsZWN0L3BvL2h1LnBvICAgICAgICB8ICAxMDggKy0KKyBkc2VsZWN0L3BvL2lkLnBvICAgICAgICB8ICAxMDggKy0KKyBkc2VsZWN0L3BvL2l0LnBvICAgICAgICB8ICAxMDggKy0KKyBkc2VsZWN0L3BvL2phLnBvICAgICAgICB8ICAxMDggKy0KKyBkc2VsZWN0L3BvL2tvLnBvICAgICAgICB8ICAxMDggKy0KKyBkc2VsZWN0L3BvL25iLnBvICAgICAgICB8ICAxMDggKy0KKyBkc2VsZWN0L3BvL25sLnBvICAgICAgICB8ICAxMDggKy0KKyBkc2VsZWN0L3BvL25uLnBvICAgICAgICB8ICAxMDggKy0KKyBkc2VsZWN0L3BvL3BsLnBvICAgICAgICB8ICAxMDggKy0KKyBkc2VsZWN0L3BvL3B0LnBvICAgICAgICB8ICAxMDggKy0KKyBkc2VsZWN0L3BvL3B0X0JSLnBvICAgICB8ICAxMDggKy0KKyBkc2VsZWN0L3BvL3JvLnBvICAgICAgICB8ICAxMDggKy0KKyBkc2VsZWN0L3BvL3J1LnBvICAgICAgICB8ICAxMDggKy0KKyBkc2VsZWN0L3BvL3NrLnBvICAgICAgICB8ICAxMDggKy0KKyBkc2VsZWN0L3BvL3N2LnBvICAgICAgICB8ICAxMDggKy0KKyBkc2VsZWN0L3BvL3RsLnBvICAgICAgICB8ICAxMDggKy0KKyBkc2VsZWN0L3BvL3ZpLnBvICAgICAgICB8ICAxMDggKy0KKyBkc2VsZWN0L3BvL3poX0NOLnBvICAgICB8ICAxMDggKy0KKyBkc2VsZWN0L3BvL3poX1RXLnBvICAgICB8ICAxMDggKy0KKyBtYW4vcG8vZGUucG8gICAgICAgICAgICB8IDEwNTMgKysrKysrKystLS0tLS0KKyBtYW4vcG8vZHBrZy1tYW4ucG90ICAgICB8IDM5MTMgKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBtYW4vcG8vZXMucG8gICAgICAgICAgICB8ICA5NzkgKysrKysrKy0tLS0tCisgbWFuL3BvL2ZyLnBvICAgICAgICAgICAgfCAxNTA2ICsrKysrKysrKy0tLS0tLS0tLS0KKyBtYW4vcG8vaHUucG8gICAgICAgICAgICB8ICA5MzAgKysrKysrLS0tLS0KKyBtYW4vcG8vamEucG8gICAgICAgICAgICB8ICA5MjIgKysrKysrLS0tLS0KKyBtYW4vcG8vcGwucG8gICAgICAgICAgICB8ICA5NDQgKysrKysrKy0tLS0tCisgbWFuL3BvL3B0X0JSLnBvICAgICAgICAgfCAgOTIxICsrKysrKy0tLS0tCisgbWFuL3BvL3J1LnBvICAgICAgICAgICAgfCAgOTIyICsrKysrKy0tLS0tCisgbWFuL3BvL3N2LnBvICAgICAgICAgICAgfCAgOTgwICsrKysrKystLS0tLQorIHBvL2FzdC5wbyAgICAgICAgICAgICAgIHwgMTYwNiArKysrKysrKysrLS0tLS0tLS0tLQorIHBvL2JzLnBvICAgICAgICAgICAgICAgIHwgMTUyOCArKysrKysrKysrLS0tLS0tLS0tCisgcG8vY2EucG8gICAgICAgICAgICAgICAgfCAxNTk3ICsrKysrKysrKystLS0tLS0tLS0tCisgcG8vY3MucG8gICAgICAgICAgICAgICAgfCAxNTk3ICsrKysrKysrKystLS0tLS0tLS0tCisgcG8vZGEucG8gICAgICAgICAgICAgICAgfCAxNTk3ICsrKysrKysrKystLS0tLS0tLS0tCisgcG8vZGUucG8gICAgICAgICAgICAgICAgfCAgIDg0ICstCisgcG8vZHBrZy5wb3QgICAgICAgICAgICAgfCAxNTIzICsrKysrKysrKy0tLS0tLS0tLQorIHBvL2R6LnBvICAgICAgICAgICAgICAgIHwgMTU5OCArKysrKysrKysrLS0tLS0tLS0tLQorIHBvL2VsLnBvICAgICAgICAgICAgICAgIHwgMTYwMCArKysrKysrKysrLS0tLS0tLS0tLQorIHBvL2VvLnBvICAgICAgICAgICAgICAgIHwgMTU5NyArKysrKysrKysrLS0tLS0tLS0tLQorIHBvL2VzLnBvICAgICAgICAgICAgICAgIHwgMTYwNCArKysrKysrKysrLS0tLS0tLS0tLQorIHBvL2V0LnBvICAgICAgICAgICAgICAgIHwgMTU4NiArKysrKysrKysrLS0tLS0tLS0tLQorIHBvL2V1LnBvICAgICAgICAgICAgICAgIHwgMTU5NyArKysrKysrKysrLS0tLS0tLS0tLQorIHBvL2ZyLnBvICAgICAgICAgICAgICAgIHwgMTgyNiArKysrKysrKysrKy0tLS0tLS0tLS0tLQorIHBvL2dsLnBvICAgICAgICAgICAgICAgIHwgMTYwNCArKysrKysrKysrLS0tLS0tLS0tLQorIHBvL2h1LnBvICAgICAgICAgICAgICAgIHwgMTU5OCArKysrKysrKysrLS0tLS0tLS0tLQorIHBvL2lkLnBvICAgICAgICAgICAgICAgIHwgMTU5NyArKysrKysrKysrLS0tLS0tLS0tLQorIHBvL2l0LnBvICAgICAgICAgICAgICAgIHwgMTU5OSArKysrKysrKysrLS0tLS0tLS0tLQorIHBvL2phLnBvICAgICAgICAgICAgICAgIHwgMTU5NyArKysrKysrKysrLS0tLS0tLS0tLQorIHBvL2ttLnBvICAgICAgICAgICAgICAgIHwgMTU5OCArKysrKysrKysrLS0tLS0tLS0tLQorIHBvL2tvLnBvICAgICAgICAgICAgICAgIHwgMTU5NyArKysrKysrKysrLS0tLS0tLS0tLQorIHBvL2t1LnBvICAgICAgICAgICAgICAgIHwgMTU0MSArKysrKysrKysrLS0tLS0tLS0tCisgcG8vbHQucG8gICAgICAgICAgICAgICAgfCAxNTc3ICsrKysrKysrKystLS0tLS0tLS0tCisgcG8vbXIucG8gICAgICAgICAgICAgICAgfCAxNTg2ICsrKysrKysrKystLS0tLS0tLS0tCisgcG8vbmIucG8gICAgICAgICAgICAgICAgfCAxNTk3ICsrKysrKysrKystLS0tLS0tLS0tCisgcG8vbmUucG8gICAgICAgICAgICAgICAgfCAxNTk4ICsrKysrKysrKystLS0tLS0tLS0tCisgcG8vbmwucG8gICAgICAgICAgICAgICAgfCAxNTk4ICsrKysrKysrKystLS0tLS0tLS0tCisgcG8vbm4ucG8gICAgICAgICAgICAgICAgfCAxNTc3ICsrKysrKysrKystLS0tLS0tLS0KKyBwby9wYS5wbyAgICAgICAgICAgICAgICB8IDE1NjEgKysrKysrKysrKy0tLS0tLS0tLQorIHBvL3BsLnBvICAgICAgICAgICAgICAgIHwgMTYxMCArKysrKysrKysrLS0tLS0tLS0tLQorIHBvL3B0LnBvICAgICAgICAgICAgICAgIHwgMTU5OSArKysrKysrKysrLS0tLS0tLS0tLQorIHBvL3B0X0JSLnBvICAgICAgICAgICAgIHwgMTYwMSArKysrKysrKysrLS0tLS0tLS0tLQorIHBvL3JvLnBvICAgICAgICAgICAgICAgIHwgMTU5NyArKysrKysrKysrLS0tLS0tLS0tLQorIHBvL3J1LnBvICAgICAgICAgICAgICAgIHwgMTU5NyArKysrKysrKysrLS0tLS0tLS0tLQorIHBvL3NrLnBvICAgICAgICAgICAgICAgIHwgMTU5NyArKysrKysrKysrLS0tLS0tLS0tLQorIHBvL3N2LnBvICAgICAgICAgICAgICAgIHwgMTc4MyArKysrKysrKysrLS0tLS0tLS0tLS0tCisgcG8vdGgucG8gICAgICAgICAgICAgICAgfCAxNTk3ICsrKysrKysrKystLS0tLS0tLS0tCisgcG8vdGwucG8gICAgICAgICAgICAgICAgfCAxNTc3ICsrKysrKysrKystLS0tLS0tLS0KKyBwby92aS5wbyAgICAgICAgICAgICAgICB8IDE2MDEgKysrKysrKysrKy0tLS0tLS0tLS0KKyBwby96aF9DTi5wbyAgICAgICAgICAgICB8IDE1OTUgKysrKysrKysrKy0tLS0tLS0tLQorIHBvL3poX1RXLnBvICAgICAgICAgICAgIHwgMTYwMCArKysrKysrKysrLS0tLS0tLS0tLQorIHNjcmlwdHMvcG8vY2EucG8gICAgICAgIHwgIDU1NyArKysrLS0tCisgc2NyaXB0cy9wby9kZS5wbyAgICAgICAgfCAgNDI5ICsrKy0tLQorIHNjcmlwdHMvcG8vZHBrZy1kZXYucG90IHwgIDUyNCArKysrLS0tCisgc2NyaXB0cy9wby9lcy5wbyAgICAgICAgfCAgNjA1ICsrKysrLS0tCisgc2NyaXB0cy9wby9mci5wbyAgICAgICAgfCAgNjE2ICsrKysrLS0tCisgc2NyaXB0cy9wby9wbC5wbyAgICAgICAgfCAgNTQ5ICsrKystLS0KKyBzY3JpcHRzL3BvL3J1LnBvICAgICAgICB8ICA2MDMgKysrKystLS0KKyBzY3JpcHRzL3BvL3N2LnBvICAgICAgICB8ICA2MTYgKysrKystLS0KKyA5MCBmaWxlcyBjaGFuZ2VkLCA0NDM2NSBpbnNlcnRpb25zKCspLCA0MDY3MyBkZWxldGlvbnMoLSkKKworY29tbWl0IDlmMmM0OGZmOGQzYzExM2Q2MjdlNzk5NjUwZTk3YjZmNzM0ZTZmOTMKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gQXVnIDEgMjI6MDE6MjAgMjAxMSArMDIwMAorCisgICAgUmV2ZXJ0ICJkcGtnLWJ1aWxkcGFja2FnZTogc3VwcG9ydCBmb3IgQnVpbGQtRmVhdHVyZXM6IGJ1aWxkLWFyY2giCisgICAgCisgICAgVGhpcyByZXZlcnRzIGNvbW1pdCAxNGQ0OGVmOWFiYzJjZTJkMzk0ZTlhZTRkNjlkNGJhNjhiNTUxNjIwLiBHaXZlbgorICAgIHRoYXQgR3VpbGxlbSBkb2VzIG5vdCB3YW50IHRoaXMgZmllbGQgYW5kIHRoYXQgdGhlIHRlY2huaWNhbCBjb21taXR0ZWUKKyAgICBoYXMgbm90IHlldCBkZWNpZGVkIG9uIHRoZSBwcm9wZXIgYXBwcm9hY2ggdG8gZW5hYmxlCisgICAgYnVpbGQtYXJjaC9idWlsZC1pbmRlcCwgaXQncyBzYWZlciB0byByZXZlcnQgdGhpcyBjaGFuZ2UgZm9yIG5vdyBhbmQgYWxsb3cKKyAgICB1cyB0byBwcm9jZWVkIHdpdGggYSByZWxlYXNlLgorICAgIAorICAgIENvbmZsaWN0czoKKyAgICAKKyAgICAJbWFuL2RlYi1zcmMtY29udHJvbC41CisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICAgfCAgICA2IC0tLQorIG1hbi9kZWItc3JjLWNvbnRyb2wuNSAgICAgICAgICB8ICAgIDcgLS0tCisgbWFuL2Rwa2ctYnVpbGRwYWNrYWdlLjEgICAgICAgIHwgICAxMyArKy0tLS0KKyBzY3JpcHRzL0Rwa2cvQnVpbGRGZWF0dXJlcy5wbSAgfCAgIDg0IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBzY3JpcHRzL0Rwa2cvQ29udHJvbC9GaWVsZHMucG0gfCAgICAzIC0KKyBzY3JpcHRzL01ha2VmaWxlLmFtICAgICAgICAgICAgfCAgICAxIC0KKyBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsICAgfCAgIDEwICstLS0tCisgc2NyaXB0cy9wby9QT1RGSUxFUy5pbiAgICAgICAgIHwgICAgMSAtCisgOCBmaWxlcyBjaGFuZ2VkLCA2IGluc2VydGlvbnMoKyksIDExOSBkZWxldGlvbnMoLSkKKworY29tbWl0IDlmMjQyMGFhNmZlZTg0OGFjYjMwZTg4YjEyN2NiNmU5YTE3ZDdjMTMKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgSnVsIDI3IDIzOjIwOjAwIDIwMTEgKzAyMDAKKworICAgIGRlYmlhbi9ydWxlczogdXNlIHRoZSBpbi10cmVlIGRwa2ctYnVpbGRmbGFncyB0byBpbmplY3QgYnVpbGQgZmxhZ3MKKyAgICAKKyAgICBOb3RlIHRoYXQgJChzaGVsbCAuLi4pIGRvZXMgbm90IHJlY2VpdmUgdmFyaWFibGVzIGRlZmluZWQKKyAgICB3aXRoaW4gbWFrZSB3aXRoICJleHBvcnQgVkFSPWZvbyIgc28gdGhhdCB3ZSBoYXZlIHRvIGluY2x1ZGUKKyAgICBERUJfQ0ZMQUdTX01BSU5UX0FQUEVORCBpbiB0aGUgY29tbWFuZC1saW5lLgorCisgZGViaWFuL3J1bGVzIHwgICAxNSArKystLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMTIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA0ODQ2ODM5N2FmZDUxNDA0ZWUzZWZjYzk2NzNlNTMxMTU1ZTk5OWEyCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIEp1bCAyNyAxOToxODowNCAyMDExICswMjAwCisKKyAgICBkcGtnLWJ1aWxkZmxhZ3M6IHN1cHBvcnQgYSAic3RyaXAiIG9wZXJhdGlvbgorICAgIAorICAgIFRoZSBzdHJpcCBvcGVyYXRpb24gaXMgdXNlZnVsIHRvIGRyb3Agc29tZSBvcHRpb25zIGZyb20gdGhlCisgICAgcmV0dXJuZWQgYnVpbGQgZmxhZ3MuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICB8ICAgIDMgKystCisgbWFuL2Rwa2ctYnVpbGRmbGFncy4xICAgICAgfCAgIDEwICsrKysrKysrKysKKyBzY3JpcHRzL0Rwa2cvQnVpbGRGbGFncy5wbSB8ICAgMzAgKysrKysrKysrKysrKysrKysrKysrKysrKysrKystCisgMyBmaWxlcyBjaGFuZ2VkLCA0MSBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgYTE3NGE5ZWQ0YmVhNmRhMjA5ODQ1NGJjZjE4ZDAxZGQ0MzhiZjE2YQorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBKdWwgMjcgMTg6NDk6NDYgMjAxMSArMDIwMAorCisgICAgZHBrZy1idWlsZGZsYWdzOiBpbXBsZW1lbnQgc3VwcG9ydCBvZiBERUJfPGZsYWc+X01BSU5UXzxvcD4gZW52IHZhcmlhYmxlcworICAgIAorICAgIFRob3NlIHZhcmlhYmxlcyBhcmUgbWVhbnQgdG8gYmUgdXNlZCBieSB0aGUgcGFja2FnZSBtYWludGFpbmVyIHdpdGhpbgorICAgIGRlYmlhbi9ydWxlcyB0byBhbHRlciB0aGUgcmVzdWx0aW5nIGJ1aWxkIGZsYWdzIGlmIG5lZWRlZC4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgIHwgICAgMyArLQorIG1hbi9kcGtnLWJ1aWxkZmxhZ3MuMSAgICAgIHwgICAyMSArKysrKysrKysrKysrKystLS0KKyBzY3JpcHRzL0Rwa2cvQnVpbGRGbGFncy5wbSB8ICAgNDcgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLQorIDMgZmlsZXMgY2hhbmdlZCwgNTggaW5zZXJ0aW9ucygrKSwgMTMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyNTBmOTliMDczYjQ3MWI5ZGNkODJkNjFmZjRkNjFkZDU5NGE4ZGZlCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIEp1bCAyNyAxNzo0NTo0MCAyMDExICswMjAwCisKKyAgICBkcGtnLWJ1aWxkZmxhZ3M6IGltcGxlbWVudCAtLWV4cG9ydD1jb25maWd1cmUKKyAgICAKKyAgICBUaGUgZ29hbCBpcyB0byBtYWtlIGl0IGVhc3kgdG8gc2V0IGNvbXBpbGF0aW9uIGZsYWdzIG9uIGEgLi9jb25maWd1cmUKKyAgICBjb21tYW5kIGxpbmUgZm9yIGV4YW1wbGUgbGlrZSB0aGlzOgorICAgIC4vY29uZmlndXJlICQoc2hlbGwgZHBrZy1idWlsZGZsYWdzIC0tZXhwb3J0PWNvbmZpZ3VyZSkKKyAgICAKKyAgICBUaGUgb3V0cHV0IHRodXMgbG9va3MgbGlrZSB0aGlzOgorICAgIENGTEFHUz0iLWcgLU8yIiBDUFBGTEFHUz0iIiBDWFhGTEFHUz0iLWcgLU8yIiBGRkxBR1M9Ii1nIC1PMiIgTERGTEFHUz0iIgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgfCAgICAzICsrKworIG1hbi9kcGtnLWJ1aWxkZmxhZ3MuMSAgICAgIHwgICAgNCArKystCisgc2NyaXB0cy9kcGtnLWJ1aWxkZmxhZ3MucGwgfCAgIDEwICsrKysrKystLS0KKyAzIGZpbGVzIGNoYW5nZWQsIDEzIGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA3ZjRmYjg1NzZlOWM5ZThhMmM5NTliMzgyNGZlNjFhOTU0MTFmNjk3CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIEp1bCAyNyAxMzoyMTo1MyAyMDExICswMjAwCisKKyAgICBSZXZlcnQgImRwa2ctYnVpbGRmbGFnczogc3VwcG9ydCBkZWJpYW4vYnVpbGRmbGFncyIKKyAgICAKKyAgICBUaGlzIHJldmVydHMgY29tbWl0IDMxNmRmMGE3NmYyZWY5MWJhZGJjY2I2ZmVmMGJmYTdhZTIzZmFjNTkuCisgICAgQSByZWNlbnQgZGlzY3Vzc2lvbiBjb25jbHVkZWQgdGhhdCBpdCB3YXMgbm90IGEgcHJvcGVyIGludGVyZmFjZQorICAgIGZvciBtYWludGFpbmVycyB0byBvdmVycmlkZS9leHRlbmQgYnVpbGQgZmxhZ3MuCisgICAgCisgICAgU2VlIGh0dHA6Ly9saXN0cy5kZWJpYW4ub3JnL2RlYmlhbi1kcGtnLzIwMTEvMDcvbXNnMDAwMzMuaHRtbAorICAgIAorICAgIENvbmZsaWN0czoKKyAgICAKKyAgICAJc2NyaXB0cy9EcGtnL0J1aWxkRmxhZ3MucG0KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgIHwgICAgMyAtLS0KKyBtYW4vZHBrZy1idWlsZGZsYWdzLjEgICAgICB8ICAgIDkgLS0tLS0tLS0tCisgc2NyaXB0cy9EcGtnL0J1aWxkRmxhZ3MucG0gfCAgIDM3ICsrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAzIGZpbGVzIGNoYW5nZWQsIDggaW5zZXJ0aW9ucygrKSwgNDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA5ZTAzZTIxYmY0MzhmODUxM2EyOTkzYzBiZTRlYTRlMjI2ODFhZjcyCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEp1bCAyOSAxNjoxODo1MiAyMDExICswMjAwCisKKyAgICBQcm92aWRlIGEgbmV3IG1ha2VmaWxlIHNuaXBwZXQgZXhwb3J0aW5nIGJhc2ljIHBhY2thZ2UgaW5mb3JtYXRpb24KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgfCAgICA0ICsrLS0KKyBzY3JpcHRzL21rL01ha2VmaWxlLmFtIHwgICAgMSArCisgc2NyaXB0cy9tay9kZWZhdWx0Lm1rICB8ICAgIDEgKworIHNjcmlwdHMvbWsvcGtnLWluZm8ubWsgfCAgIDE3ICsrKysrKysrKysrKysrKysrCisgNCBmaWxlcyBjaGFuZ2VkLCAyMSBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgNDZiNjg4ZTQ4MjRmMDA4NDI1NjhiNTE3YjExOWVlYzM0YTVmNzI4NgorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBKdWwgMTQgMjA6MzE6MzMgMjAxMSArMDIwMAorCisgICAgZHBrZy1zb3VyY2U6IGltcGxlbWVudCAtLWNvbW1pdCBhbmQgZmFpbCB3aXRoIHVucmVjb3JkZWQgY2hhbmdlcworICAgIAorICAgIEZvcm1hdHMgIjIuMCIgYW5kICIzLjAgKHF1aWx0KSIgbm93IGZhaWwgYnkgZGVmYXVsdCBpbiBwcmVzZW5jZSBvZgorICAgIGNoYW5nZXMgdG8gdXBzdHJlYW0gZmlsZXMgdGhhdCBhcmUgbm90IG1hbmFnZWQgYnkgdGhlaXIgcmVzcGVjdGl2ZSBwYXRjaAorICAgIHN5c3RlbS4gVGhlIHVzZXIgaXMgaW52aXRlZCB0byBydW4gZHBrZy1zb3VyY2UgLS1jb21taXQgaWYgaGUKKyAgICB3YW50cyB0byBrZWVwIHRoZSBjaGFuZ2VzLgorICAgIAorICAgIFRoaXMgd2lsbCBhdm9pZCB0aGF0IG1haW50YWluZXJzIHVwbG9hZCBwYWNrYWdlcyB3aXRoIHVuZXhwZWN0ZWQgY2hhbmdlcy4KKyAgICBUaGUgb2xkIGJlaGF2aW91ciBjYW4gYmUga2VwdCB3aXRoIHRoZSBvcHRpb24gLS1hdXRvLWNvbW1pdC4gVGhlIG9wdGlvbgorICAgIC0tYWJvcnQtb24tdXBzdHJlYW0tY2hhbmdlcyBpcyBub3cgdXNlbGVzcyB3aXRoIGZvcm1hdHMgIjIuMCIgYW5kICIzLjAKKyAgICAocXVpbHQpIiBleGNlcHQgdG8gY2FuY2VsIHRoZSBlZmZlY3Qgb2YgYSBmb3JtZXIgLS1hdXRvLWNvbW1pdC4KKyAgICAKKyAgICBTZWUgaHR0cDovL2xpc3RzLmRlYmlhbi5vcmcvMjAxMTA1MjkwODUzMDMuR0ExNzcwN0ByaXZlbmRlbGwuaG9tZS5vdWF6YS5jb20KKyAgICBmb3IgdGhlIGRpc2N1c3Npb24gdGhhdCBlbnRlcmluZWQgdGhpcyBjaGFuZ2UuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICAgICAgfCAgICA2ICsrKworIG1hbi9kcGtnLXNvdXJjZS4xICAgICAgICAgICAgICAgICB8ICAgMzIgKysrKysrKysrKysrKysrKy0tCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtICAgIHwgICAgOCArKysrLQorIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbSB8ICAgNjggKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLQorIHNjcmlwdHMvZHBrZy1zb3VyY2UucGwgICAgICAgICAgICB8ICAgMjIgKysrKysrKysrLS0tCisgNSBmaWxlcyBjaGFuZ2VkLCAxMTcgaW5zZXJ0aW9ucygrKSwgMTkgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA5OWNkODc1ODQwMmNjN2Y3OTBmNTYyYzUyMmQ4MWY0MGM0NjAyMzNhCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IEp1bCAyOCAxNzoxNDo1NSAyMDExICswMjAwCisKKyAgICBEcGtnOjpTb3VyY2U6OlBhY2thZ2U6OlYyOiBjbGVhbnVwIGdlbmVyYXRlX3BhdGNoKCkKKyAgICAKKyAgICBEcm9wIGFsbCByZWZlcmVuY2VzIHRvICRhdXRvcGF0Y2ggd2hpY2ggaGFzIG5vdGhpbmcgdG8gZG8gd2l0aAorICAgIGdlbmVyYXRpbmcgYSBwYXRjaC4gTW92ZSB0aGUgbWVzc2FnZSBleHBsYWluaW5nIHdoZXJlIHRoZQorICAgIGNoYW5nZXMgaGF2ZSBiZWVuIHJlY29yZGVkIG91dHNpZGUgb2YgdGhlIGZ1bmN0aW9uLgorICAgIAorICAgIERyb3AgdW51c2VkIHBhcmFtZXRlciB0byBnZXRfcGF0Y2hfaGVhZGVyKCkuCisgICAgCisgICAgRHJvcCBpbnRlcm1lZGlhcnkgdmFyaWFibGVzIHdoaWNoIGFyZSBvbmx5IHVzZWQgb25jZS4KKworIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbSB8ICAgMTUgKysrKysrLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA2IGluc2VydGlvbnMoKyksIDkgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAzYjdmNDk3YzRlOTc2NmE4YWE2MDMxN2NmNDM0MDZkZTJiODE2ZTRiCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IEp1bCAyOCAxNjoyNjo1MSAyMDExICswMjAwCisKKyAgICBEcGtnOjpTb3VyY2U6OlBhY2thZ2U6OlYyOiBtb3ZlIGxvZ2ljIHRvIGNyZWF0ZSBwYXRjaGVzIGluIGEgc2VwYXJhdGUgZnVuY3Rpb24KKyAgICAKKyAgICBUaGlzIGNvbW1pdCBleHRyYWN0cyB0aGUgbG9naWMgdG8gY3JlYXRlIGF1dG9tYXRpYyBwYXRjaGVzIGluIGEgbmV3CisgICAgZ2VuZXJhdGVfcGF0Y2goKSBtZXRob2QuIEl0J3MgZXhwZWN0ZWQgdGhhdCB0aGlzIGZ1bmN0aW9uIHdpbGwgYmUKKyAgICByZXVzZWQgdG8gaW1wbGVtZW50IGRwa2ctc291cmNlIC0tY29tbWl0LgorICAgIAorICAgIFRoZSBjb2RlIGlzIG1haW5seSBtb3ZlZCBhcm91bmQgYXMtaXMgdG8gc2ltcGxpZnkgcmV2aWV3cy4gQWxsCisgICAgZGVzaXJlZCBjaGFuZ2VzIGhhdmUgYmVlbiBsZWZ0IGZvciBmdXJ0aGVyIGNvbW1pdHMuCisKKyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG0gfCAgIDkxICsrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDU1IGluc2VydGlvbnMoKyksIDM2IGRlbGV0aW9ucygtKQorCitjb21taXQgYjg0MDdiMWRiZDE1MmMxNzkwMzllMzhlOWMwNDkyZWEwNWY0MDZiNQorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBKdWwgMjggMTU6MTA6NDMgMjAxMSArMDIwMAorCisgICAgRHBrZzo6U291cmNlOjpQYWNrYWdlOiByZXBsYWNlIHJlZ2lzdGVyX2F1dG9wYXRjaCgpIHdpdGggcmVnaXN0ZXJfcGF0Y2goKQorICAgIAorICAgIFdoaWxlIHJlZ2lzdGVyX2F1dG9wYXRjaCgpIGlzIG9ubHkgYWJsZSB0byByZWdpc3RlciBhIHBhdGNoIGFzIHRoZQorICAgIGF1dG9tYXRpYyBwYXRjaCwgcmVnaXN0ZXJfcGF0Y2goKSBjYW4gcmVnaXN0ZXIgYSBwYXRjaCB1bmRlciBhbnkKKyAgICBkZXNpcmVkIHBhdGNoIG5hbWUuCisgICAgCisgICAgQWxzbyBpdCBkb2Vzbid0IG5vdCBkcm9wIHRoZSBpbnB1dCBwYXRjaCBmaWxlLCBsZWF2aW5nIHRoYXQgcmVzcG9uc2liaWxpdHkKKyAgICB0byB3aG9ldmVyIGNhbGxlZCBpdC4gSG93ZXZlciBpZiB0aGUgaW5wdXQgcGF0Y2ggZmlsZSBpcyBlbXB0eSwgaXQgd2lsbAorICAgIHJlbW92ZSB0aGUgdGFyZ2V0IHBhdGNoIGZyb20gdGhlIGRlYmlhbiBzb3VyY2UgcGFja2FnZS4KKworIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbSAgICAgICB8ICAgNDAgKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtIHwgICAzNiArKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDQyIGluc2VydGlvbnMoKyksIDM0IGRlbGV0aW9ucygtKQorCitjb21taXQgYmUxMjhjOGY3OTYwZjA1ZDNiZTcyNzQ3OGM4MDc4YWYxYzFiZmQ3MgorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBKdWwgMTQgMTk6MDI6NDkgMjAxMSArMDIwMAorCisgICAgZHBrZy1zb3VyY2U6IHVuaWZvcm0gaGFuZGxpbmcgb2YgdGhlIHBhdGNoIGhlYWRlcgorICAgIAorICAgIEZvcm1hdHMgIjIuMCIgYW5kICIzLjAgKHF1aWx0KSIgbm93IGdlbmVyYXRlIHRoZSBwYXRjaCBoZWFkZXIKKyAgICB3aXRoIHRoZSBzYW1lIGNvZGUuIERyb3Agc29tZSB1c2VsZXNzIGR1cGxpY2F0aW9uLgorCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtICAgICAgIHwgICAzOSArKysrKysrKysrKysrKysrKysrLS0tCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtIHwgICA1MiArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDM1IGluc2VydGlvbnMoKyksIDU2IGRlbGV0aW9ucygtKQorCitjb21taXQgYTdmMTZiZTg2Njg5ZWU0NmY0YjJlNDQ1ZTVmMDhhNjNmNDQ3Y2RlYgorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBKdWwgMTQgMTg6NTY6MzAgMjAxMSArMDIwMAorCisgICAgZHBrZy1zb3VyY2U6IGFjY2VwdCAiLiIgYXMgdGhlIGRpcmVjdG9yeSBwYXJhbWV0ZXIKKyAgICAKKyAgICBkcGtnLXNvdXJjZSBzaG91bGQgbmV2ZXIgYmUgY2FsbGVkIGZyb20gd2l0aGluIHRoZSB1bnBhY2tlZCBzb3VyY2UKKyAgICB0cmVlLCB0aGUgcmVzdWx0IGlzIHVzdWFsbHkgbm90IHdoYXQgb25lIHdvdWxkIGV4cGVjdC4gRml4IHRoaXMKKyAgICBieSBhdXRvbWF0aWNhbGx5IGNvbnZlcnRpbmcgdGhlIGRpcmVjdG9yeSBuYW1lIGFuZCBieSBjaGFuZ2luZyB0aGUKKyAgICBjdXJyZW50IGRpcmVjdG9yeSB0byB0aGUgcGFyZW50IG9uZS4KKyAgICAKKyAgICBUaGlzIGlzIHBhcnRpY3VsYXJseSBpbnRlcmVzdGluZyBmb3IgdGhlIHVwY29taW5nIC0tcmVjb3JkLWNoYW5nZXMKKyAgICBvcHRpb24uCisKKyBzY3JpcHRzL2Rwa2ctc291cmNlLnBsIHwgICAgOSArKysrKysrKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDggaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGRjYzFhMDIzNDNhNDVlZGJlMjA5YzBjMDdmMDk3OTA0MTg2MDg3MjMKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gQXVnIDEgMjI6MjY6NTYgMjAxMSArMDIwMAorCisgICAgRml4IG1hcmt1cCBpbiBGcmVuY2ggdHJhbnNsYXRpb24KKworIG1hbi9wby9mci5wbyB8ICAgIDMgKy0tCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBkZTk5ODkxMWQ0YWY0ZWZmYzhiZTYwY2FiNzhhMjQ0ZjU5NTFiZmUyCitBdXRob3I6IENocmlzdGlhbiBQRVJSSUVSIDxidWJ1bGxlQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBBdWcgMSAwOTozMjo0OCAyMDExICswMjAwCisKKyAgICBVcGRhdGVkIGZyZW5jaCB0cmFuc2xhdGlvbiBvZiBtYW5wYWdlcworICAgIAorICAgIFVwZGF0ZWQgdG8gMTg0MHQxNTlmMzJ1CisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMSArCisgbWFuL3BvL2ZyLnBvICAgICB8ICA2NzcgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCA0NjAgaW5zZXJ0aW9ucygrKSwgMjE4IGRlbGV0aW9ucygtKQorCitjb21taXQgNzczZTZkY2MwZThmY2JkMGYxODVmOTVkMjcxODRlOTk3OWEyNDExZQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBKdWwgMzAgMTg6MzU6MDMgMjAxMSArMDIwMAorCisgICAgYnVpbGQ6IEVycm9yIG91dCBpZiB0aGUgaG9zdCBkcGtnIGFyY2hpdGVjdHVyZSBjYW5ub3QgYmUgZGV0ZXJtaW5lZAorICAgIAorICAgIENvbnRpbnVpbmcgd2lsbCBvbmx5IHByb2R1Y2UgYSBidWdneSBkcGtnLgorCisgbTQvZHBrZy1hcmNoLm00IHwgICAgNiArKysrKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDUgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDk5Yjg5MGMyZWI2YmZlOTU1ZDg1YWVkZDQwODQxMzY2ODI2YzJmNzMKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgSnVsIDMwIDE4OjI3OjM5IDIwMTEgKzAyMDAKKworICAgIGJ1aWxkOiBVc2UgdGhlIGRldGVjdGVkIHBlcmwgdG8gaW52b2tlIGRwa2ctYXJjaGl0ZWN0dXJlLnBsCisgICAgCisgICAgVGhpcyB3aWxsIGhlbHAgYnVpbGRpbmcgZHBrZyBvbiBzeXN0ZW1zIHdoZXJlIHBlcmwgaXMgbm90IGF0CisgICAgL3Vzci9iaW4vcGVybCwgd2hpY2ggd2Ugd2VyZSBhbHJlYWR5IHRha2luZyBpbnRvIGNvbnNpZGVyYXRpb24gZm9yIHRoZQorICAgIHJlc3VsdGluZyBzY3JpcHRzIGJ1dCBub3QgZHVyaW5nIGJ1aWxkLgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDIgKysKKyBtNC9kcGtnLWFyY2gubTQgIHwgICAgMyArKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGM5MGI2MjBjZDhjMjgzNmEzZjUwNThkZmExNTI3ZjlkN2I1Y2Y0NmUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgSnVsIDMwIDE4OjE0OjI3IDIwMTEgKzAyMDAKKworICAgIGJ1aWxkOiBNb3ZlIERQS0dfQVJDSElURUNUVVJFIG1hY3JvIGNhbGwgdG8gdGhlIGVuZAorICAgIAorICAgIFRoaXMgcHV0cyB0b2dldGhlciBhbGwgYnVpbGQgbWFjaGluZXJ5IGNoZWNrcywgYW5kIHdpbGwgYWxsb3cKKyAgICBEUEtHX0FSQ0hJVEVDVFVSRSB0byB1c2UgdGhlIGRldGVjdGVkIHBlcmwgaW50ZXJwcmV0ZXIgdy9vIG5lZWRpbmcKKyAgICB0byBjYWxsIERQS0dfUFJPR19QRVJMIHJlYWxseSBlYXJseSBpbiB0aGUgY29uZmlndXJlIHNjcmlwdC4KKworIGNvbmZpZ3VyZS5hYyB8ICAgIDMgKystCisgMSBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBlMDNhODMyNWNhZjFiMDJkY2E2OTA4Y2RlOTZmM2ZjZmY1MGQwMDFhCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEp1bCAyOSAxMTozODo1NSAyMDExICswMjAwCisKKyAgICBkcGtnLW1lcmdlY2hhbmdlbG9nczogZml4IHRlc3Qtc3VpdGUKKyAgICAKKyAgICBJbiBjb21taXQgNWMyMzMwMTljYzc3MGZiNTk2NzEwOTBkNGE5NDYyYWRiMTQ5OTIxZiBJIGZvcmdvdCB0bworICAgIHVwZGF0ZSB0aGUgdGVzdC1zdWl0ZSB0byBtYXRjaCBmb3IgdGhlIGNoYW5nZSBvZiBjb25mbGljdCBtYXJrZXJzLgorICAgIERvaW5nIHRoaXMgd2l0aCB0aGlzIGNvbW1pdC4KKworIHNjcmlwdHMvdC85MTBfbWVyZ2VfY2hhbmdlbG9ncy9jaC1tZXJnZWQgICAgICAgICAgfCAgIDE4ICsrKystLS0tCisgc2NyaXB0cy90LzkxMF9tZXJnZV9jaGFuZ2Vsb2dzL2NoLW1lcmdlZC1iYXNpYyAgICB8ICAgMzAgKysrKysrKy0tLS0tLS0KKyBzY3JpcHRzL3QvOTEwX21lcmdlX2NoYW5nZWxvZ3MvY2gtbWVyZ2VkLXByICAgICAgIHwgICAyNCArKysrKystLS0tLS0KKyBzY3JpcHRzL3QvOTEwX21lcmdlX2NoYW5nZWxvZ3MvY2gtbWVyZ2VkLXByLWJhc2ljIHwgICA0MiArKysrKysrKysrLS0tLS0tLS0tLQorIDQgZmlsZXMgY2hhbmdlZCwgNTcgaW5zZXJ0aW9ucygrKSwgNTcgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA1YzIzMzAxOWNjNzcwZmI1OTY3MTA5MGQ0YTk0NjJhZGIxNDk5MjFmCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEp1bCAyOSAwMDo1MzozMCAyMDExICswMjAwCisKKyAgICBkcGtnLW1lcmdlY2hhbmdlbG9nczogdXNlIDcgY2hhcmFjdGVycyBmb3IgY29uZmxpY3QgbWFya2VycworICAgIAorICAgIFJlcG9ydGVkLWJ5OiBBbmRyZXcgQmVubmV0dHMgPGFuZHJldy5iZW5uZXR0c0BjYW5vbmljYWwuY29tPgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICAgICB8ICAgIDIgKysKKyBzY3JpcHRzL2Rwa2ctbWVyZ2VjaGFuZ2Vsb2dzLnBsIHwgICAgMiArLQorIDIgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgYTM3MmI2YTE2NWRlODg3NjQzNDgyOGQyZjc4ODRiNmU4ODQwMzQ5YgorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBKdWwgMjcgMjA6MTA6MjQgMjAxMSArMDIwMAorCisgICAgZGViaWFuL3J1bGVzOiBpbnRyb2R1Y2UgYSBtYWludGFpbmVyIGJ1aWxkIG1vZGUKKyAgICAKKyAgICBBZGRpbmcgIm1haW50YWluZXItYnVpbGQiIHRvIERFQl9CVUlMRF9PUFRTIGNoYW5nZXMgc29tZSBjb21waWxhdGlvbgorICAgIHNldHRpbmdzIHRvIG1ha2UgdGhlIGJ1aWxkIG1vcmUgdXNlZnVsIGZvciBtYWludGFpbmVycy4gRm9yIGluc3RhbmNlCisgICAgaXQgZW5hYmxlcyB0aGUgc2lsZW50IHJ1bGVzIHNvIHRoYXQgaXQncyBlYXNpZXIgdG8gc3BvdCB0aGUgd2FybmluZ3MuCisgICAgCisgICAgSXQgd291bGQgYmUgbmljZSB0byBhbHNvIGVuYWJsZSAtV2Vycm9yIGJ1dCB0aGF0IHJlcXVpcmVzIGZ1cnRoZXIKKyAgICBpbnZlc3RpZ2F0aW9uIHNpbmNlIGVuYWJsaW5nIHRoaXMgb3B0aW9uIHJlc3VsdHMgaW4gLi9jb25maWd1cmUgbm90CisgICAgd29ya2luZyBhbnkgbW9yZSBkdWUgdG8gd2FybmluZ3MgZ2VuZXJhdGVkIGJ5IHNldmVyYWwgb2YgdGhlCisgICAgdGVzdCBwcm9ncmFtcyBjb21waWxlZCBieSAuL2NvbmZpZ3VyZSBpdHNlbGYuCisKKyBkZWJpYW4vcnVsZXMgfCAgICA1ICsrKy0tCisgMSBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA4NGYzMTU0YWVlMDlmNjQ5ZTc4ZTc4ZjBmMGFmZmUxNjBkNzMyOTZlCitBdXRob3I6IFN2ZW4gSm9hY2hpbSA8c3ZlbmpvYWNAZ214LmRlPgorRGF0ZTogICBXZWQgSnVsIDI3IDE3OjA1OjI3IDIwMTEgKzAyMDAKKworICAgIEdlcm1hbiBkcGtnIHRyYW5zbGF0aW9uIHVwZGF0ZQorICAgIAorICAgIFVwZGF0ZSB0byAxMDIzdC4KKworIHBvL2RlLnBvIHwgICAgOSArKysrKy0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDUgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKKworY29tbWl0IDdlMTdkM2JmYzQ4OWMwMTQxMmY2YTdlZGM5MmMwYTQ2YmVmYzg1ZWUKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgSnVsIDI3IDEzOjA4OjU5IDIwMTEgKzAyMDAKKworICAgIGRwa2ctZGl2ZXJ0OiBmaXggdGhlIHRlc3Qtc3VpdGUgdG8gYWxzbyBza2lwIHRlc3RzIHRoYXQgd291bGQgZmFpbCBpZiBydW4gYXMgcm9vdAorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgfCAgICAyICsrCisgc3JjL3QvMTAwX2Rwa2dfZGl2ZXJ0LnQgfCAgICA2ICsrKy0tLQorIDIgZmlsZXMgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQorCitjb21taXQgNmYxNDIyM2JkNGEyN2Q5Y2Y0MGJkODMwYzY5MTg3ZTNjNjQwNjk4MgorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBKdWwgMjYgMTE6MTA6MjQgMjAxMSArMDIwMAorCisgICAgVXBkYXRlIGNoYW5nZWxvZyB0byBjbG9zZSBhIGJ1ZyByZXBvcnRpbmcgYSBwcm9ibGVtIGFscmVhZHkgZml4ZWQKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAxICsKKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDViOWVjYzFiOTUzYzc4NjE0YjJhZWU0OTY4N2JlYzIxNmRlNzQ4ZjcKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gSnVsIDI1IDA1OjEyOjM1IDIwMTEgKzAyMDAKKworICAgIEFkZCBidWlsZC1pbmRlcCBhbmQgYnVpbGQtYXJjaCB0YXJnZXRzIGFzIGFsaWFzZXMgZm9yIGJ1aWxkCisgICAgCisgICAgVGhlIGN1cnJlbnQgYnVpbGQgdGFyZ2V0IGlzIHJlc3BvbnNpYmxlIGZvciB0aGUgZ2VuZXJhdGlvbiBvZgorICAgIGFyY2hpdGVjdHVyZSBkZXBlbmRlbnQgYW5kIGluZGVwZW5kZW50IGZpbGVzLiBUaGUgYXJjaGl0ZWN0dXJlCisgICAgaW5kZXBlbmRlbnQgZmlsZXMgYXJlIGp1c3Qgc2VkJ2VkIGFuZCBhcyBzdWNoIHRoZXkgdGFrZSBpbnNpZ25pZmljYW50CisgICAgYnVpbGQgdGltZSwgc28gc3BsaXR0aW5nIHRoYXQgZnJvbSB0aGUgZ2VuZXJhbCBidWlsZCBwcm9jZXNzIGRvZXMgbm90CisgICAgc2VlbSB3b3J0aCB0aGUgdHJvdWJsZSBvciBjb21wbGV4aXR5LiBSZW5hbWluZyB0aGUgY3VycmVudCBidWlsZAorICAgIHRhcmdldCB0byBidWlsZC1hcmNoIHRob3VnaCB3b3VsZCBiZSBpbmNvcnJlY3QuCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMiArKworIGRlYmlhbi9ydWxlcyAgICAgfCAgICAyICstCisgMiBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA5YjIyNzQ1ZjBhNzEyN2I3YTE3MTMwOGY3M2UzMDc5YzUzNTkyM2Y3CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IEp1bCA3IDE5OjE4OjA0IDIwMTEgKzAyMDAKKworICAgIGRwa2ctZGViOiBDb25zdHJ1Y3QgY29udHJvbCBjb21wb25lbnRzIHBhdGhzIHdpdGggcHJpbnRmIHZhcmlhbnRzCisgICAgCisgICAgVGhlIG91dHB1dCBvZiBkcGtnLWRlYiAtSSwgLWYgYW5kIC1XIGlzIG5vdCBwZXJmb3JtYW5jZSBjcml0aWNhbCwgYW5kCisgICAgY29kZSBzaW1wbGljaXR5IHRydW1wcyBvdmVyIHRoZSB0aW55IHBlcmZvcm1hbmNlIGltcHJvdmVtZW50cyB0aGF0IHVzaW5nCisgICAgdGhlIGV4cGxpY2l0IHN0cmluZyBmdW5jdGlvbnMgb3Iga2VlcGluZyB0aGUgZXh0cmFjdGVkIGNvbnRyb2wgZGlyZWN0b3J5CisgICAgaW4gdGhlIHZhcmJ1ZiBtaWdodCBpbXBseSBpbiB0aGVzZSBjYXNlcy4KKworIGRwa2ctZGViL2luZm8uYyB8ICAgNDMgKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMTUgaW5zZXJ0aW9ucygrKSwgMjggZGVsZXRpb25zKC0pCisKK2NvbW1pdCBkYWM4MDJiY2UyZTdmYTkwOWRhYzA5ZDg3ZjZmYWRiNjA3NGI5MDk3CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IEp1bCA3IDE5OjA4OjE4IDIwMTEgKzAyMDAKKworICAgIGRwa2ctZGViOiBVc2UgQ09OVFJPTEZJTEUgaW5zdGVhZCBvZiBhIGxpdGVyYWwgc3RyaW5nCisKKyBkcGtnLWRlYi9pbmZvLmMgfCAgIDEwICsrKysrLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDUgaW5zZXJ0aW9ucygrKSwgNSBkZWxldGlvbnMoLSkKKworY29tbWl0IDA0YmNmZmMxNTY1NDE3YTc3YTU0NWFkYzY0M2Q4NmI4MjU1OWI0YTEKK0F1dGhvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitEYXRlOiAgIFNhdCBKdWwgMjMgMTA6Mzc6MDEgMjAxMSArMDIwMAorCisgICAgVXBkYXRlIEdlcm1hbiBzY3JpcHRzIHRyYW5zbGF0aW9uCisgICAgCisgICAgVXBkYXRlIHRvIDUxN3QKKworIHNjcmlwdHMvcG8vZGUucG8gfCAgIDY0ICsrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAzMyBpbnNlcnRpb25zKCspLCAzMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGI4NThlMDdiZGRlYzI4YzViODZjMzlkNDI1YTAyZjA4ZDliZDIwNWEKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gSnVsIDExIDEwOjM3OjQxIDIwMTEgKzAyMDAKKworICAgIGRwa2ctZGV2OiBhZGQgc29tZSBjb21tb24gbWFrZWZpbGUgc25pcHBldHMgZm9yIHVzZSBpbiBydWxlcyBmaWxlcworICAgIAorICAgIGRhdGEvYXJjaGl0ZWN0dXJlLm1rOiB2YXJpYWJsZXMgcmVsYXRlZCB0byBkcGtnLWFyY2hpdGVjdHVyZQorICAgIGRhdGEvYnVpbGRmbGFncy5tazogdmFyaWFibGVzIHJlbGF0ZWQgdG8gZHBrZy1idWlsZmxhZ3MKKyAgICBkYXRhL3ZlbmRvci5tazogdmFyaWFibGVzIHJlbGF0ZWQgdG8gZHBrZy12ZW5kb3IKKyAgICBkYXRhL2RlZmF1bHQubWs6IGFsbCBvZiB0aGUgYWJvdmUKKworIGNvbmZpZ3VyZS5hYyAgICAgICAgICAgICAgIHwgICAgMSArCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgfCAgICAzICsrKworIGRlYmlhbi9kcGtnLWRldi5pbnN0YWxsICAgIHwgICAgMSArCisgZGViaWFuL2Rwa2cuaW5zdGFsbCAgICAgICAgfCAgICAyICstCisgc2NyaXB0cy9NYWtlZmlsZS5hbSAgICAgICAgfCAgICAyICstCisgc2NyaXB0cy9tay9NYWtlZmlsZS5hbSAgICAgfCAgIDE2ICsrKysrKysrKysrKysrKysKKyBzY3JpcHRzL21rL2FyY2hpdGVjdHVyZS5tayB8ICAgMjUgKysrKysrKysrKysrKysrKysrKysrKysrKworIHNjcmlwdHMvbWsvYnVpbGRmbGFncy5tayAgIHwgICAyNSArKysrKysrKysrKysrKysrKysrKysrKysrCisgc2NyaXB0cy9tay9kZWZhdWx0Lm1rICAgICAgfCAgICA3ICsrKysrKysKKyBzY3JpcHRzL21rL3ZlbmRvci5tayAgICAgICB8ICAgMTggKysrKysrKysrKysrKysrKysrCisgMTAgZmlsZXMgY2hhbmdlZCwgOTggaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IGUxMzVhZmRiMzVkMGFjMTc5NjU3ZGVmOTAxOTY1YTQ0ODExNWE5ODEKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgSnVsIDIwIDA4OjI5OjA1IDIwMTEgKzAyMDAKKworICAgIGRwa2c6IGZpeCBwb3NzaWJsZSBzZWdmYXVsdCBpbiBmaW5kYnJlYWtjeWNsZSgpLgorICAgIAorICAgIFRoZSBjaXJjdW1zdGFuY2VzIGFyZSBub3QgZW50aXJlbHkgY2xlYXIgYmVjYXVzZSBjbGVhcl9pc3RvYmVzKCkgaXMKKyAgICBjYWxsZWQgZWFybGllciBpbiB0aGUgY29kZSBhbmQgc2hvdWxkIGFscmVhZHkgZW5zdXJlIHRoYXQgY2xpZW50ZGF0YQorICAgIGlzIGFsbG9jYXRlZCBmb3IgYWxsIHBhY2thZ2VzIGluIHRoZSBkYXRhYmFzZSBidXQgdGhlIHN0YWNrIHRyYWNlCisgICAgcmVwb3J0ZWQgbGVhdmVzIG5vIHJvb20gZm9yIGFueSBvdGhlciBpbnRlcnByZXRhdGlvbi4gV2UgbXVzdCBwcm90ZWN0CisgICAgdGhlIGFjY2VzcyB0byB0cGtnLT5jbGllbnRkYXRhIGluIGZpbmRicmVha2N5Y2xlKCkgd2l0aAorICAgIGVuc3VyZV9wYWNrYWdlX2NsaWVudGRhdGEodHBrZykuCisgICAgCisgICAgUHJvYmFibHkgdGhhdCBzb21lIG90aGVyIHBhcnRzIG9mIHRoZSBjb2RlIG1pZ2h0IGNyZWF0ZSBuZXcgcGFja2FnZXMgaW4gdGhlCisgICAgaW4tbWVtb3J5IGRhdGFiYXNlIGRlcGVuZGluZyBvbiBzb21lIHNwZWNpZmljIGNvbmRpdGlvbnMuIEl0IG1pZ2h0IGJlIHRoYXQKKyAgICB0aG9zZSBjb25kaXRpb25zIG9ubHkgaG9sZCBmb3IgYSBtdWx0aWFyY2gtZW5hYmxlZCBkcGtnIGZvciBleGFtcGxlIGlmCisgICAgdGhlIGNvZGUgbG9va3MgdXAgYSBwYWNrYWdlIGVudHJ5IGZvciBhbiBhbHRlcm5hdGl2ZSBhcmNoaXRlY3R1cmUgYW5kCisgICAgd291bGQgdGh1cyBjcmVhdGUgdGhlIHBhY2thZ2Ugb24gdGhlIGZseS4KKyAgICAKKyAgICBUaGlzIGlzIHB1cmUgc3BlY3VsYXRpb24gYmVjYXVzZSBJIGRpZCBub3QgcHVzaCB0aGUgaW52ZXN0aWdhdGlvbnMgdGhhdAorICAgIGZhci4gSXQgbWlnaHQgYmUgc29tZXRoaW5nIGVudGlyZWx5IGRpZmZlcmVudCBidXQgaXQgZG9lc24ndCBtYXR0ZXIgbXVjaAorICAgIGJlY2F1c2UgdGhlIHByb3Bvc2VkIGZpeCBpcyB0aGUgc2FtZSBhbmQganVzdCBlbnN1cmVzIHRoYXQgd2UgcmVzcGVjdAorICAgIG91ciBBUEkgYnkgcHJvdGVjdGluZyB0aGUgYWNjZXNzIHRvIGNsaWVudGRhdGEuCisgICAgCisgICAgU2VlIGh0dHBzOi8vYnVncy5sYXVuY2hwYWQubmV0L3VidW50dS8rc291cmNlL2Rwa2cvK2J1Zy83MzM0MTQgZm9yCisgICAgZGV0YWlscy4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAxICsKKyBzcmMvZGVwY29uLmMgICAgIHwgICAgMiArKworIDIgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgZTZiNzY4NWE1NDBjMjRkYTFmNjM1N2ZlODg2OTYwMmQ4NDQ0NGFlZQorTWVyZ2U6IGQ1YWVkZjcgNzYyN2Q4MAorQXV0aG9yOiBDaHJpc3RpYW4gUEVSUklFUiA8YnVidWxsZUBkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgSnVsIDE5IDA5OjQ5OjA2IDIwMTEgKzAyMDAKKworICAgIE1lcmdlIGJyYW5jaCAnbWFzdGVyJyBvZiBzc2g6Ly9naXQuZGViaWFuLm9yZy9naXQvZHBrZy9kcGtnCisKK2NvbW1pdCA3NjI3ZDgwMjc0ODJiMjhhNDBjODg1OTliZTk4MDhjZTg1ZTU4YTA0CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIEp1bCAxOSAwODoxNjoyNSAyMDExICswMjAwCisKKyAgICBkcGtnLXNvdXJjZTogaW1wcm92ZSB0aGUgZXJyb3IgbWVzc2FnZSAibm8gb3JpZy50YXIgZmlsZSBmb3VuZCIKKyAgICAKKyAgICBOb3cgd2UgaW5jbHVkZSB0aGUgdGVtcGxhdGUgY29ycmVzcG9uZGluZyB0byBmaWxlcyB0aGF0IHdlIHRyeSB0byBsb29rCisgICAgZm9yLgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICAgICAgIHwgICAgMiArKworIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbSB8ICAgMTUgKysrKysrKysrKysrKy0tCisgMiBmaWxlcyBjaGFuZ2VkLCAxNSBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgZDVhZWRmN2ZkZmY0ZGZlYjhkMzI5YWE0NTQ4NjQ2NGQ0NTk2ZWM3YQorQXV0aG9yOiBDaHJpc3RpYW4gUEVSUklFUiA8YnVidWxsZUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gSnVsIDE4IDE5OjQyOjAxIDIwMTEgKzAyMDAKKworICAgIEZyZW5jaCB0cmFuc2xhdGlvbiBvZiBzY3JpcHRzIGNvbXBsZXRlZAorICAgIAorICAgIDUxNHQKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAxICsKKyBzY3JpcHRzL3BvL2ZyLnBvIHwgICAyNyArKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDE0IGluc2VydGlvbnMoKyksIDE0IGRlbGV0aW9ucygtKQorCitjb21taXQgMTg5ZWFhMjdkNGQzZTdjN2JiYmIxOTMzZGZjZGJkYzU5N2E1ODQ3NgorQXV0aG9yOiBDaHJpc3RpYW4gUEVSUklFUiA8YnVidWxsZUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gSnVsIDE4IDE5OjM4OjQwIDIwMTEgKzAyMDAKKworICAgIFVwZGF0ZWQgRnJlbmNoIHRyYW5zbGF0aW9uIG9mIHByb2dyYW1zCisgICAgCisgICAgMTAyMnQKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAxICsKKyBwby9mci5wbyAgICAgICAgIHwgIDUwMCArKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDI1NyBpbnNlcnRpb25zKCspLCAyNDQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBiZGNkZTJiYjM2OTUzMTU2OWMwMTRiZWE4YzBjNmY2ZGY1ZDM4YTJlCitBdXRob3I6IFN2ZW4gSm9hY2hpbSA8c3ZlbmpvYWNAZ214LmRlPgorRGF0ZTogICBTdW4gSnVsIDE3IDE1OjI2OjA2IDIwMTEgKzAyMDAKKworICAgIE1pbm9yIGZpeGVzCisKKyBzY3JpcHRzL3BvL2RlLnBvIHwgICAxMCArKysrKystLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA2IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA4NDQ5OTI1Yjk5OTI2YmE1NTY1MWY5NGQyMWMxNzQ4MjJhNmFmNjMxCitBdXRob3I6IFN2ZW4gSm9hY2hpbSA8c3ZlbmpvYWNAZ214LmRlPgorRGF0ZTogICBTdW4gSnVsIDE3IDEzOjQ3OjMxIDIwMTEgKzAyMDAKKworICAgIEdlcm1hbiBkcGtnIHRyYW5zbGF0aW9uIHVwZGF0ZQorICAgIAorICAgIFVwZGF0ZSB0byAxMDIydDFmLgorCisgcG8vZGUucG8gfCAxMjA5ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA2MjEgaW5zZXJ0aW9ucygrKSwgNTg4IGRlbGV0aW9ucygtKQorCitjb21taXQgMTYwNWVlNjY1ZTY0MzYxMzU5N2U1ZDkxMDA4MzhmZTZiM2NkYzJhMQorQXV0aG9yOiBIZWxnZSBLcmV1dHptYW5uIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KK0RhdGU6ICAgU3VuIEp1bCAxNyAxMDowMTozNSAyMDExICswMjAwCisKKyAgICBSZWdlbmVyYXRlIC5wb3QgZmlsZXMgYW5kIG1lcmdlIC5wbyBmaWxlcyB3aXRoIHRoZW0KKworIG1hbi9wby9lcy5wbyAgICB8IDQ5NTUgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIG1hbi9wby9mci5wbyAgICB8IDQ5NjMgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIG1hbi9wby9odS5wbyAgICB8IDQxNjkgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIG1hbi9wby9qYS5wbyAgICB8IDQzNjEgKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgbWFuL3BvL3BsLnBvICAgIHwgNDg2MSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBtYW4vcG8vcHRfQlIucG8gfCA0MjIyICsrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgbWFuL3BvL3J1LnBvICAgIHwgNDIwNyArKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIG1hbi9wby9zdi5wbyAgICB8IDQ5NTAgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgOCBmaWxlcyBjaGFuZ2VkLCAyMDcwNyBpbnNlcnRpb25zKCspLCAxNTk4MSBkZWxldGlvbnMoLSkKKworY29tbWl0IGEwYWZmYmM0ZTM0N2YwMDk5MmY5MWU5ZDYyZjg4ODU0MTk3N2QzZDcKK0F1dGhvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitEYXRlOiAgIFN1biBKdWwgMTcgMDk6NTg6NDkgMjAxMSArMDIwMAorCisgICAgVXBkYXRlIEdlcm1hbiB0cmFuc2xhdGlvbiBvZiBtYW51YWwgcGFnZXMKKyAgICAKKyAgICBVcGRhdGUgdG8gMjAyOHQzZi4KKyAgICBSZW1vdmUgb3V0ZGF0ZSAiIyB0eXBlIiAod2l0aG91dCBkb3QpIGNvbW1lbnRzCisKKyBtYW4vcG8vZGUucG8gfCAgMTQxICsrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDEyIGluc2VydGlvbnMoKyksIDEyOSBkZWxldGlvbnMoLSkKKworY29tbWl0IDRlNGQyZTM5MDhhYjEzMmU4NDBhNzE1MDhlNWEzNzk4OTU1MDdmYWMKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgSnVsIDE2IDIwOjUzOjQ5IDIwMTEgKzAyMDAKKworICAgIHVwZGF0ZS1hbHRlcm5hdGl2ZXM6IGNhbl9yZXBsYWNlX2xpbmsoKSDihpIgY2FuX3JlcGxhY2VfcGF0aCgpCisgICAgCisgICAgYWx0ZXJuYXRpdmVfY2FuX3JlcGxhY2VfcGF0aCgpIGlzIGNsZWFyZXIgdGhhbgorICAgIGFsdGVybmF0aXZlX2Nhbl9yZXBsYWNlX2xpbmsoKSBzaW5jZSB0aGUgZnVuY3Rpb24gY2FuIGFsc28gYWxsb3cgcmVwbGFjaW5nCisgICAgZmlsZXMgd2hpY2ggYXJlbid0IGxpbmtzLgorCisgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jIHwgICAxMCArKysrKy0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDUgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyNDRlYmMyMTIyNjEwMzBlM2RhNmMyODkxMDhkNGI1ZWQ3MWFhODY3CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IEp1bCAxNiAyMDo0ODozMyAyMDExICswMjAwCisKKyAgICB1cGRhdGUtYWx0ZXJuYXRpdmVzOiBjbGFyaWZ5IHJvbGUgb2YgLS1mb3JjZSBjb25jZXJuaW5nIHJlbW92YWwgb2YgbGlua3MKKyAgICAKKyAgICBNb2RpZnkgdXBkYXRlLWFsdGVybmF0aXZlcyAtLXJlbW92ZS1hbGwgdG8gcmVtb3ZlIGZpbGVzIGluc3RhbGxlZCBpbgorICAgIHBsYWNlIG9mIGxpbmtzIGlmIC0tZm9yY2UgaXMgdXNlZC4gQWRkIHRoZSBjb3JyZXNwb25kaW5nIG5vbi1yZWdyZXNzaW9uCisgICAgdGVzdC4KKworIG1hbi91cGRhdGUtYWx0ZXJuYXRpdmVzLjggICAgICAgICB8ICAgIDQgKystLQorIHV0aWxzL3QvMTAwX3VwZGF0ZV9hbHRlcm5hdGl2ZXMudCB8ICAgMTYgKysrKysrKysrKysrLS0tLQorIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYyAgICAgICB8ICAgIDUgKystLS0KKyAzIGZpbGVzIGNoYW5nZWQsIDE2IGluc2VydGlvbnMoKyksIDkgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA5MWRiMTYxMDEzNDc5YWQwM2VmOTVlN2YwY2EyZjQxM2M1ZTU3OTI1CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEp1bCAxNSAyMjowNjozOCAyMDExICswMjAwCisKKyAgICB1cGRhdGUtYWx0ZXJuYXRpdmVzOiBmaXggcmVncmVzc2lvbiB3aGVuIGRyb3BwaW5nIHNsYXZlIGFsdGVybmF0aXZlcworICAgIAorICAgIFdoZW4gdGhlIGFsdGVybmF0aXZlIGlzIGNoYW5nZWQsIGl0IG1pZ2h0IGhhdmUgdG8gZHJvcCBhIHNsYXZlIGFsdGVybmF0aXZlCisgICAgdGhhdCdzIG5vIGxvbmdlciBwcm92aWRlIGJ5IHRoZSBuZXcgY2hvaWNlLiBUaGlzIG11c3Qgb25seSByZW1vdmUgdGhlIHNsYXZlCisgICAgbGluayBpZiBpdCdzIGFjdHVhbGx5IGEgbGluay4gSWYgaXQncyBhIGZpbGUsIGl0IG11c3QgYmUga2VwdCBleGNlcHQgaWYKKyAgICAtLWZvcmNlIGlzIGdpdmVuLgorICAgIAorICAgIFRoZSBub24tcmVncmVzc2lvbiB0ZXN0cyBoYXZlIGJlZW4gY29udHJpYnV0ZWQgYnkgQW5kcmVhcyBCZWNrbWFubi4KKyAgICAKKyAgICBSZXBvcnRlZC1ieTogQW5kcmVhcyBCZWNrbWFubiA8ZGViaWFuQGFiZWNrbWFubi5kZT4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgICAgICAgICB8ICAgIDMgKysKKyB1dGlscy90LzEwMF91cGRhdGVfYWx0ZXJuYXRpdmVzLnQgfCAgIDQ3ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLQorIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYyAgICAgICB8ICAgMzYgKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLQorIDMgZmlsZXMgY2hhbmdlZCwgNzEgaW5zZXJ0aW9ucygrKSwgMTUgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBlZDBlYjc1N2I2NTliOGE3ZTQ3MjhlMjMwYjlkMGRiODEzMjk0ZjE1CitBdXRob3I6IEhlbGdlIEtyZXV0em1hbm4gPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorRGF0ZTogICBNb24gSnVsIDExIDE5OjIwOjE2IDIwMTEgKzAyMDAKKworICAgIFVwZGF0ZSBHZXJtYW4gdHJhbnNsYXRpb24gb2YgbWFudWFsIHBhZ2VzCisgICAgCisgICAgVXBkYXRlIHRvIDIwMjh0M2YuCisKKyBtYW4vcG8vZGUucG8gfCAgNDMyICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDI2MiBpbnNlcnRpb25zKCspLCAxNzAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBlM2M1ZTI2YTQ1Zjc1MWZhNDJhNGI5NjM2OWNiY2UyYjEyYzI5MmJkCitBdXRob3I6IEhlbGdlIEtyZXV0em1hbm4gPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorRGF0ZTogICBNb24gSnVsIDExIDE4OjU1OjI4IDIwMTEgKzAyMDAKKworICAgIFVwZGF0ZSBHZXJtYW4gc2NyaXB0cyB0cmFuc2xhdGlvbgorICAgIAorICAgIFVwZGF0ZSB0byA1MTd0CisKKyBzY3JpcHRzL3BvL2RlLnBvIHwgIDEwMCArKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgNTEgaW5zZXJ0aW9ucygrKSwgNDkgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAwMDZlMGY5M2EyYWYxNjczYTcxNTNjODIyY2U3NGI2OWZkOGIyZDI2CitBdXRob3I6IE5pZWxzIFRoeWtpZXIgPG5pZWxzQHRoeWtpZXIubmV0PgorRGF0ZTogICBNb24gSnVsIDExIDEzOjU5OjEwIDIwMTEgKzAyMDAKKworICAgIGRwa2ctZGV2OiBmYWlsIHdoZW4gY2xvc2luZyBhbiBvdXRwdXQgaGFuZGxlIGZhaWxzCisgICAgCisgICAgVGhpcyBwYXRjaCBtYWtlcyBkcGtnLWdlbmNvbnRyb2wgYW5kIGRwa2ctc2hsaWJkZXBzIGZhaWwgaWYgdGhlaXIKKyAgICBjYWxsIHRvIGNsb3NlIChvbiBvdXRwdXQgaGFuZGxlcykgc3VnZ2VzdHMgYW4gaXNzdWUuICBUaGlzIHByZXZlbnRzCisgICAgdGhlbSBmcm9tIHNpbGVudGx5IHByb2R1Y2luZyBpbmNvbXBsZXRlIGZpbGVzIGFuZCBtYXkgcHJvdmlkZSBhCisgICAgYmV0dGVyIGVycm9yIHRoYW4gdGhlIGZvbGxvd2luZyByZW5hbWUgZmFpbGluZy4KKyAgICAKKyAgICBTaWduZWQtb2ZmLWJ5OiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICB8ICAgIDEgKworIHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsIHwgICAgMiArLQorIHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGwgIHwgICAgMiArLQorIDMgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgNjRkYzcxYjg0ZjhhNDQwMzAyODYzMWY4ZjQyZTQxM2YzNzhlN2Q3NworQXV0aG9yOiBOaWVscyBUaHlraWVyIDxuaWVsc0B0aHlraWVyLm5ldD4KK0RhdGU6ICAgTW9uIEp1bCAxMSAxMzoyNzo0NCAyMDExICswMjAwCisKKyAgICBkcGtnLW1lcmdlY2hhbmdlbG9nczogZmFpbCBpZiBpdCBjYW5ub3QgY2xvc2UgdGhlIG91dHB1dCBmaWxlCisgICAgCisgICAgTWFkZSBkcGtnLW1lcmdlY2hhbmdlbG9ncyBjaGVjayB0aGUgcmV0dXJuIHZhbHVlIG9mIGNsb3NlIGFuZCBmYWlsCisgICAgaWYgaXQgd2FzIG5vdCBzdWNjZXNzZnVsLiAgUHJldmlvdXNseSBkcGtnLW1lcmdlY2hhbmdlbG9ncyB3b3VsZAorICAgIHNpbGVudGx5IGZhaWwgdG8gd3JpdGUgYSBmaWxlIGlmIChlLmcuKSB0aGUgZGV2aWNlIHdhcyBmdWxsLgorICAgIAorICAgIFNpZ25lZC1vZmYtYnk6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgICAgICAgfCAgICAyICsrCisgc2NyaXB0cy9kcGtnLW1lcmdlY2hhbmdlbG9ncy5wbCB8ICAgIDIgKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGQ0MTVjMzg4ZDMxZTljNGI3ZWZmOGI3NzcxMWE0YzE1YjNiODUyMDgKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gSnVsIDExIDA5OjIwOjIwIDIwMTEgKzAyMDAKKworICAgIGRwa2ctYnVpbGRmbGFnczogbmV3IC0tZHVtcCBhY3Rpb24sIG1ha2UgaXQgdGhlIGRlZmF1bHQKKyAgICAKKyAgICBUaGUgLS1leHBvcnQgY29tbWFuZCBpcyB1c2VmdWwgdG8gcmV0cmlldmUgdGhlIGNvbXBpbGF0aW9uIGZsYWdzCisgICAgaW4gYSBzaGVsbCBzY3JpcHQgb3IgaW4gYSBtYWtlZmlsZSwgYW5kIHRvIGV4cG9ydCB0aGVtIGluIHRoZSBlbnZpcm9ubWVudCwKKyAgICBidXQgaXQncyBub3Qgd2VsbCBzdWl0ZWQgZm9yIHBhcnNpbmcgYnkgYW5vdGhlciBzY3JpcHQgKG9yIGV2ZW4gYnkgYQorICAgIGh1bWFuKS4KKyAgICAKKyAgICBUaGUgbmV3IC0tZHVtcCBvcHRpb24gYmVjb21lcyB0aGUgZGVmYXVsdCBhY3Rpb24gYW5kIHByaW50cworICAgIHRoZSBmbGFncyBhbmQgdGhlaXIgdmFsdWVzIGZvbGxvd2luZyBhIGRvY3VtZW50ZWQgdGVtcGxhdGU6ICJmbGFnPXZhbHVlIi4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgIHwgICAgMiArKworIG1hbi9kcGtnLWJ1aWxkZmxhZ3MuMSAgICAgIHwgICAgNyArKysrKystCisgc2NyaXB0cy9kcGtnLWJ1aWxkZmxhZ3MucGwgfCAgIDE2ICsrKysrKysrKysrKystLS0KKyAzIGZpbGVzIGNoYW5nZWQsIDIxIGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA4OTA0MTk2ZDViYzMxM2Q4MDkxN2I0YjI1Zjc3ZjUyZTAyMjdmNjk4CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IEp1bCA3IDEyOjI2OjEyIDIwMTEgKzAyMDAKKworICAgIGRwa2ctYnVpbGRmbGFnczogc3VwcG9ydHMgYSBwcmVwZW5kIGNvbW1hbmQKKyAgICAKKyAgICBUaGlzIGNvbW1hbmQgaXMgcGFydGljdWxhcmx5IHVzZWZ1bCBmb3IgcGFja2FnZSBtYWludGFpbmVycyB3aG8gZG9uJ3Qgd2FudAorICAgIHRoZWlyIHN1cHBsZW1lbnRhcnkgZmxhZ3MgdG8gdGFrZSBwcmVjZWRlbmNlIG92ZXIgdXNlciBzdWJtaXR0ZWQgZmxhZ3MuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICB8ICAgIDQgKysrKworIG1hbi9kcGtnLWJ1aWxkZmxhZ3MuMSAgICAgIHwgICAxMCArKysrKysrKystCisgc2NyaXB0cy9EcGtnL0J1aWxkRmxhZ3MucG0gfCAgIDI5ICsrKysrKysrKysrKysrKysrKysrKysrKysrKystCisgMyBmaWxlcyBjaGFuZ2VkLCA0MSBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgMzE2ZGYwYTc2ZjJlZjkxYmFkYmNjYjZmZWYwYmZhN2FlMjNmYWM1OQorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBKdWwgNyAxMTo0NTozNyAyMDExICswMjAwCisKKyAgICBkcGtnLWJ1aWxkZmxhZ3M6IHN1cHBvcnQgZGViaWFuL2J1aWxkZmxhZ3MKKyAgICAKKyAgICBUaGlzIGZpbGUgaXMgZm9yIHVzZSBieSBwYWNrYWdlIG1haW50YWluZXJzLiBTaW5jZSB0aGUgY2FsbCB0bworICAgIGRwa2ctYnVpbGRmbGFncyBtaWdodCBiZSBoaWRkZW4gYnkgcGFja2FnaW5nIGhlbHBlcnMsIGl0J3MgYSBnb29kCisgICAgaWRlYSB0byBvZmZlciBhIHNpbXBsZSB3YXkgZm9yIHBhY2thZ2UgbWFpbnRhaW5lcnMgdG8gZXh0ZW5kCisgICAgdGhlIHNldCBvZiBmbGFncyByZXR1cm5lZC4gT3RoZXJ3aXNlIGVhY2ggcGFja2FnZSBoZWxwZXIgbXVzdCBwcm92aWRlCisgICAgaXRzIG93biB3YXkgdG8gZXh0ZW5kIHRoZSBjb21waWxhdGlvbiBmbGFncy4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgIHwgICAgMyArKworIG1hbi9kcGtnLWJ1aWxkZmxhZ3MuMSAgICAgIHwgICAxMyArKysrKysrKysrLQorIHNjcmlwdHMvRHBrZy9CdWlsZEZsYWdzLnBtIHwgICA0NSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tCisgMyBmaWxlcyBjaGFuZ2VkLCA0OSBpbnNlcnRpb25zKCspLCAxMiBkZWxldGlvbnMoLSkKKworY29tbWl0IGViNGJiMjY4YWI5NTQ3NDhkMDE1NjI2YTIxNmY0NmY2MzJmMjM3MWEKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgSnVsIDcgMTE6MTU6NDAgMjAxMSArMDIwMAorCisgICAgRHBrZzo6UGF0aDogbmV3IGZpbmRfYnVpbGRfZmlsZSgpIGZ1bmN0aW9uCisgICAgCisgICAgVXNlZnVsIHRvIGFsbG93IGFyY2hpdGVjdHVyZS1zcGVjaWZpYyB2YXJpYW50cyBvZiBhIGZpbGUgYW5kIHBpY2sgdGhlCisgICAgcmlnaHQgb25lIGJhc2VkIG9uIHRoZSBjdXJyZW50IGhvc3QgYXJjaGl0ZWN0dXJlLgorCisgc2NyaXB0cy9EcGtnL1BhdGgucG0gfCAgIDQ1ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLQorIDEgZmlsZXMgY2hhbmdlZCwgNDQgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDE0ZjEzNGQ0MDNjMDIyMDQ2ZDM4YTZhYmI4YmUwZmVlN2ZiNjMzNTUKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgSnVsIDcgMTA6MzA6MjAgMjAxMSArMDIwMAorCisgICAgZHBrZy1idWlsZHBhY2thZ2U6IG5vIGxvbmdlciBleHBvcnRzIHRoZSBjb21waWxlciBmbGFncworICAgIAorICAgIFBhY2thZ2VzIG11c3QgZGlyZWN0bHkgY2FsbCBkcGtnLWJ1aWxkZmxhZ3MgdG8gcmV0cmlldmUgdGhlbS4KKyAgICAKKyAgICBkcGtnLWJ1aWxkcGFja2FnZSBzdGlsbCBwcmludHMgdGhlIGZsYWdzIHRoYXQgYXJlIHJldHVybmVkIGJ5CisgICAgZHBrZy1idWlsZGZsYWdzIGJlY2F1c2UgaXQncyB1c2VmdWwgZm9yIGRlYnVnZ2luZyBwdXJwb3NlIGFuZCBmb3IKKyAgICBpZGVudGlmeWluZyBhbiB1bmNsZWFuIGJ1aWxkIGVudmlyb25tZW50LgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICB8ICAgIDIgKysKKyBtYW4vZHBrZy1idWlsZHBhY2thZ2UuMSAgICAgIHwgICAxMyArKysrKysrLS0tLS0tCisgc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbCB8ICAgIDUgKystLS0KKyAzIGZpbGVzIGNoYW5nZWQsIDExIGluc2VydGlvbnMoKyksIDkgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBjNzA5MDhmZmM3NTFhNmE4NGJmZmNlY2ZhN2ZhNzUyYWFkZDQyNDgxCitBdXRob3I6IEZsbyA8c2Vuc29yZmxvQGdtYWlsLmNvbT4KK0RhdGU6ICAgU2F0IEp1bCA5IDExOjEwOjM5IDIwMTEgKzAyMDAKKworICAgIEltcHJvdmUgZGVzY3JpcHRpb24gb2YgcGFja2FnZSBzdGF0ZXMgaW4gbWFuIHBhZ2UKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAyICstCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBkOTY2MWMyMjNlMWFjOGM5ODkyZGU2YTQ1YTBkYWEzZmUzNzE1OTM2CitBdXRob3I6IEZsbyA8c2Vuc29yZmxvQGdtYWlsLmNvbT4KK0RhdGU6ICAgU2F0IEp1bCA5IDExOjA4OjExIDIwMTEgKzAyMDAKKworICAgIEltcHJvdmUgZGVzY3JpcHRpb24gb2YgcGFja2FnZSBzdGF0ZXMgaW4gbWFuIHBhZ2UKKworIG1hbi9wby9kZS5wbyB8ICAgIDcgKysrLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQorCitjb21taXQgZmFhMGZhNTBmMWQ5Zjg1YzFjOTc2NTk2MTI0ODcwMWMxMWFkN2FiZgorQXV0aG9yOiBIZWxnZSBLcmV1dHptYW5uIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KK0RhdGU6ICAgU2F0IEp1bCA5IDExOjAwOjE0IDIwMTEgKzAyMDAKKworICAgIFVwZGF0ZSBHZXJtYW4gdHJhbnNsYXRpb24gb2YgbWFudWFsIHBhZ2VzCisgICAgCisgICAgVXBkYXRlIHRvIDIwMTd0M2YuCisKKyBtYW4vcG8vZGUucG8gfCAgIDM5ICsrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMjIgaW5zZXJ0aW9ucygrKSwgMTcgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBjZDVjNGI1YmQ2YjUwMzk5YWY3OGRkNDJiZGEwNDA4NTU0YWM2Njg5CitBdXRob3I6IEhlbGdlIEtyZXV0em1hbm4gPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorRGF0ZTogICBGcmkgSnVsIDggMTY6NTQ6NDkgMjAxMSArMDIwMAorCisgICAgVXBkYXRlIEdlcm1hbiB0cmFuc2xhdGlvbiBvZiBtYW51YWwgcGFnZXMKKyAgICAKKyAgICBVcGRhdGUgdG8gMjAxMnQ1ZjN1LgorCisgbWFuL3BvL2RlLnBvIHwgIDkyNyArKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyMjQgaW5zZXJ0aW9ucygrKSwgNzAzIGRlbGV0aW9ucygtKQorCitjb21taXQgMzc2MmY1YmYzOWY5YWYwYTkzN2Y0OTExMmI1YWE5ODJjNDlmM2UyYworQXV0aG9yOiBIZWxnZSBLcmV1dHptYW5uIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KK0RhdGU6ICAgVGh1IEp1bCA3IDIzOjA4OjExIDIwMTEgKzAyMDAKKworICAgIFVwZGF0ZSBHZXJtYW4gdHJhbnNsYXRpb24gb2YgbWFudWFsIHBhZ2VzCisgICAgCisgICAgVXBkYXRlIHRvIDE4Nzd0MTQwZjN1LgorCisgbWFuL3BvL2RlLnBvIHwgMzM5OCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAxOTU1IGluc2VydGlvbnMoKyksIDE0NDMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAwMWYwODFmMjhlODhiYzUyYTY2MDljZDUzZmYxNzc2Yzk1YTkxYzZkCitBdXRob3I6IEhlbGdlIEtyZXV0em1hbm4gPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorRGF0ZTogICBUaHUgSnVsIDcgMjI6NDI6MDMgMjAxMSArMDIwMAorCisgICAgVXBkYXRlIEdlcm1hbiBzY3JpcHRzIHRyYW5zbGF0aW9uCisgICAgCisgICAgVXBkYXRlIHRvIDUxOHQKKworIHNjcmlwdHMvcG8vZGUucG8gfCAgMTU0ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgODUgaW5zZXJ0aW9ucygrKSwgNjkgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA5YzM5Yjg1M2ZlNDM1NDQ3NjcxNGYzNGEyZWE1MmYwMzA1MDBiYmM2CitBdXRob3I6IFN2ZW4gSm9hY2hpbSA8c3ZlbmpvYWNAZ214LmRlPgorRGF0ZTogICBUaHUgSnVsIDcgMjA6MTE6NTAgMjAxMSArMDIwMAorCisgICAgYnVpbGQ6IFVwZGF0ZSBwby9QT1RGSUxFUy5pbiBmb3IgcmVuYW1lZCBzb3VyY2UgZmlsZQorICAgIAorICAgIENvbW1pdCBjZjIyY2Y2MTE4MDM1YWI4ZWU1Y2MyNWU1Mjk4YTk4NzA3M2M4ZGM4IGJyb2tlICdtYWtlIHVwZGF0ZS1wbycuCisKKyBwby9QT1RGSUxFUy5pbiB8ICAgIDIgKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDJkMjMzMjY5Y2JmOGNjMTUyOWUwYzQ5YThjMDNhOGIyMjI3ZDQ5ZmYKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgSnVsIDcgMTY6NDk6MzIgMjAxMSArMDIwMAorCisgICAgZHBrZy1zb3VyY2UoMSk6IGltcHJvdmUgdGhlIGRlc2NyaXB0aW9uIG9mIC0tYmVmb3JlLWJ1aWxkICYgLS1hZnRlci1idWlsZAorCisgZGViaWFuL2NoYW5nZWxvZyAgfCAgICAyICsrCisgbWFuL2Rwa2ctc291cmNlLjEgfCAgIDIzICsrKysrKysrKysrKy0tLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAxNCBpbnNlcnRpb25zKCspLCAxMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGUwY2U5YjRhYzM1MWE5MjFkZTEyYmYwMzAyY2ZhOTdmMWM3MjUxZTIKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgSnVsIDcgMTY6MDk6MzMgMjAxMSArMDIwMAorCisgICAgZHBrZy1zb3VyY2UoMSk6IGZpeCBhIHNtYWxsIHR5cG8KKyAgICAKKyAgICBSZXBsYWNlICIsIHVuZGVyIGFzIiB3aXRoICJ1bmRlciIuIEFkZCBtaXNzaW5nIGRvdCBhdCB0aGUgZW5kIG9mIHRoZQorICAgIHNlbnRlbmNlLgorICAgIAorICAgIFJlcG9ydGVkLWJ5OiAiQmFyYWsgQS4gUGVhcmxtdXR0ZXIiIDxiYXBAZGViaWFuLm9yZz4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgfCAgICAxICsKKyBtYW4vZHBrZy1zb3VyY2UuMSAgIHwgICAgNCArKy0tCisgbWFuL3BvL2RlLnBvICAgICAgICB8ICAgIDQgKystLQorIG1hbi9wby9kcGtnLW1hbi5wb3QgfCAgICA0ICsrLS0KKyBtYW4vcG8vZXMucG8gICAgICAgIHwgICAgNCArKy0tCisgbWFuL3BvL2ZyLnBvICAgICAgICB8ICAgIDQgKystLQorIG1hbi9wby9odS5wbyAgICAgICAgfCAgICA0ICsrLS0KKyBtYW4vcG8vamEucG8gICAgICAgIHwgICAgNCArKy0tCisgbWFuL3BvL3BsLnBvICAgICAgICB8ICAgIDQgKystLQorIG1hbi9wby9wdF9CUi5wbyAgICAgfCAgICA0ICsrLS0KKyBtYW4vcG8vcnUucG8gICAgICAgIHwgICAgNCArKy0tCisgbWFuL3BvL3N2LnBvICAgICAgICB8ICAgIDQgKystLQorIDEyIGZpbGVzIGNoYW5nZWQsIDIzIGluc2VydGlvbnMoKyksIDIyIGRlbGV0aW9ucygtKQorCitjb21taXQgMjUzM2ViYzc1NWRjMGUxOTdkNTFlN2Q1MGJlYWFjMmVjM2E3MGUyMgorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBKdWwgNyAxNToxODozMSAyMDExICswMjAwCisKKyAgICBkcGtnLWRlYjogYWRqdXN0IGNvZGUgbm93IHRoYXQgZXh0cmFjdGhhbGYoKSBubyBsb25nZXIgY2hkaXIoKSBhcyBhIHNpZGUtZWZmZWN0CisgICAgCisgICAgZHBrZy1kZWIgLUksIC1mLCAtVyB3ZXJlIG5vIGxvbmdlciB3b3JraW5nIGJlY2F1c2UgdGhleSByZWxpZWQgb24gdGhlIGZhY3QKKyAgICB0aGF0IGV4dHJhY3RoYWxmKCkgY2hhbmdlZCB0aGUgY3VycmVudCBkaXJlY3RvcnkgdG8gdGhlIGV4dHJhY3RlZAorICAgIG9uZS4KKyAgICAKKyAgICBSZWdyZXNzaW9uIGludHJvZHVjZWQgaW4gY29tbWl0IDg3ODA5MTYzMzMxYTMyMGY5NTYyZDc1NTkxZmNjNmM5NTRiOWY4MGMuCisKKyBkcGtnLWRlYi9pbmZvLmMgfCAgIDQyICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMzUgaW5zZXJ0aW9ucygrKSwgNyBkZWxldGlvbnMoLSkKKworY29tbWl0IGM4MTlhNDAwYWE1OTZlNTEzY2E4YjI4NzEwYWI5ZTJjNjJmY2FjZDIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgSnVsIDcgMDY6MjQ6MzcgMjAxMSArMDIwMAorCisgICAgZHBrZy1tYWludHNjcmlwdC1oZWxwZXI6IFVuaWZ5IHNvbWV3aGF0IC0taGVscCBvdXRwdXQgd2l0aCBvdGhlciBjb21tYW5kcworCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICAgICAgICB8ICAgIDEgKworIHNjcmlwdHMvZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuc2ggfCAgIDE4ICsrKysrKy0tLS0tLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgNyBpbnNlcnRpb25zKCspLCAxMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDI4MjUzNzAxMjBkM2FkZjNjMWVmMGMxYjE2ZDA5YmIyNjM3ZmYzNTgKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgSnVsIDcgMDY6MTU6NTcgMjAxMSArMDIwMAorCisgICAgbWFuOiBDb3JyZWN0bHkgZm9ybWF0IHRleHQgd2l0aCBib2xkIGFuZCBpdGFsaWNzCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICB8ICAgIDEgKworIG1hbi9kZWItY29udHJvbC41ICAgICAgICAgICAgIHwgICAyNSArKysrKysrKysrKysrLS0tLS0tLS0tLS0tCisgbWFuL2RlYi1zaGxpYnMuNSAgICAgICAgICAgICAgfCAgICAyICstCisgbWFuL2RlYi1zcGxpdC41ICAgICAgICAgICAgICAgfCAgICA4ICsrKystLS0tCisgbWFuL2RlYi1zcmMtY29udHJvbC41ICAgICAgICAgfCAgIDI0ICsrKysrKysrKysrKystLS0tLS0tLS0tLQorIG1hbi9kZWItc3ltYm9scy41ICAgICAgICAgICAgIHwgICAgMiArLQorIG1hbi9kZWItdmVyc2lvbi41ICAgICAgICAgICAgIHwgICAgMiArLQorIG1hbi9kcGtnLWFyY2hpdGVjdHVyZS4xICAgICAgIHwgICAgMiArLQorIG1hbi9kcGtnLWNoZWNrYnVpbGRkZXBzLjEgICAgIHwgICAgMiArLQorIG1hbi9kcGtnLWRpdmVydC44ICAgICAgICAgICAgIHwgICAgMiArLQorIG1hbi9kcGtnLW1haW50c2NyaXB0LWhlbHBlci4xIHwgICAgNiArKystLS0KKyBtYW4vZHBrZy1uYW1lLjEgICAgICAgICAgICAgICB8ICAgIDMgKy0tCisgbWFuL2Rwa2ctc2hsaWJkZXBzLjEgICAgICAgICAgfCAgICAyICstCisgbWFuL2Rwa2ctc3BsaXQuMSAgICAgICAgICAgICAgfCAgICA0ICsrLS0KKyBtYW4vZHBrZy10cmlnZ2VyLjEgICAgICAgICAgICB8ICAgIDggKysrKy0tLS0KKyBtYW4vZHBrZy12ZW5kb3IuMSAgICAgICAgICAgICB8ICAgIDggKysrKy0tLS0KKyBtYW4vdXBkYXRlLWFsdGVybmF0aXZlcy44ICAgICB8ICAgMTYgKysrKysrKystLS0tLS0tLQorIDE3IGZpbGVzIGNoYW5nZWQsIDYwIGluc2VydGlvbnMoKyksIDU3IGRlbGV0aW9ucygtKQorCitjb21taXQgOWM3NTdiZjRjMDBmNzc3ZjA4OWUwYWI2ZjgzZjEwZWRkNTg5MjY3OQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBKdWwgNiAxNzoxOTozOCAyMDExICswMjAwCisKKyAgICBtYW46IFVzZSBpdGFsaWNzIG9yIGJvbGQgaW5zdGVhZCBvZiBzdXJyb3VuZGluZyB0aGUgdGV4dCB3aXRoIDw+CisgICAgCisgICAgVXNpbmcgPD4gdG8gZGVsaW1pdCBwYXJ0cyBvZiB0ZXh0IGlzIG5lY2Vzc2FyeSB3aGVuIHVzaW5nIHBsYWluIHRleHQKKyAgICBvdXRwdXQsIGJ1dCBub3Qgd2hlbiB3ZSBoYXZlIHNvbWUgZm9ybWF0dGluZyBhdmFpbGFibGUgYXJvdW5kLCB3aGljaAorICAgIGlzIHRoZSBjYXNlIHdpdGggdGhlIG1hbiBwYWdlcywgYnV0IG5vdCB3aXRoIHRoZSBwcm9ncmFtIG91dHB1dC4KKworIFRPRE8gICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMSAtCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICAgfCAgICAxICsKKyBtYW4vZGViLWNvbnRyb2wuNSAgICAgICAgICAgICB8ICAgNTkgKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLQorIG1hbi9kZWItc3JjLWNvbnRyb2wuNSAgICAgICAgIHwgICA3OCArKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tCisgbWFuL2RlYi1zeW1ib2xzLjUgICAgICAgICAgICAgfCAgIDE4ICsrKysrLS0tLS0KKyBtYW4vZHBrZy1kaXZlcnQuOCAgICAgICAgICAgICB8ICAgIDQgKy0KKyBtYW4vZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMSB8ICAgIDQgKy0KKyBtYW4vZHBrZy1uYW1lLjEgICAgICAgICAgICAgICB8ICAgMTggKysrKystLS0tCisgbWFuL2Rwa2ctcGFyc2VjaGFuZ2Vsb2cuMSAgICAgfCAgIDE2ICsrKystLS0tCisgbWFuL2Rwa2cuMSAgICAgICAgICAgICAgICAgICAgfCAgIDI0ICsrKysrKy0tLS0tLQorIG1hbi9kc2VsZWN0LjEgICAgICAgICAgICAgICAgIHwgICAgNiArKy0tCisgbWFuL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuOCAgICAgfCAgIDE0ICsrKystLS0tCisgMTIgZmlsZXMgY2hhbmdlZCwgMTIzIGluc2VydGlvbnMoKyksIDEyMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDUxOTBlZDJjNmI1YzNkOWU0ZjIxZGIyY2JkZmRkZWNhNmFjZTJkNDYKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gSnVsIDQgMTk6MDY6MzggMjAxMSArMDIwMAorCisgICAgbWFuOiBVc2UgW29wdGlvbi4uLl0gaW5zdGVhZCBvZiBbb3B0aW9uc10gYW5kIGZyaWVuZHMKKworIFRPRE8gICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMSAtCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICAgfCAgICAxICsKKyBtYW4vZHBrZy1hcmNoaXRlY3R1cmUuMSAgICAgICB8ICAgIDUgKystLS0KKyBtYW4vZHBrZy1idWlsZHBhY2thZ2UuMSAgICAgICB8ICAgIDQgKystLQorIG1hbi9kcGtnLWNoZWNrYnVpbGRkZXBzLjEgICAgIHwgICAgNCArKy0tCisgbWFuL2Rwa2ctZGViLjEgICAgICAgICAgICAgICAgfCAgICA1ICsrLS0tCisgbWFuL2Rwa2ctZGlzdGFkZGZpbGUuMSAgICAgICAgfCAgICA0ICsrLS0KKyBtYW4vZHBrZy1kaXZlcnQuOCAgICAgICAgICAgICB8ICAgIDQgKystLQorIG1hbi9kcGtnLWdlbmNoYW5nZXMuMSAgICAgICAgIHwgICAgNCArKy0tCisgbWFuL2Rwa2ctZ2VuY29udHJvbC4xICAgICAgICAgfCAgICA0ICsrLS0KKyBtYW4vZHBrZy1nZW5zeW1ib2xzLjEgICAgICAgICB8ICAgIDQgKystLQorIG1hbi9kcGtnLW1haW50c2NyaXB0LWhlbHBlci4xIHwgICAgNCArKy0tCisgbWFuL2Rwa2ctbmFtZS4xICAgICAgICAgICAgICAgfCAgICA2ICsrKy0tLQorIG1hbi9kcGtnLXBhcnNlY2hhbmdlbG9nLjEgICAgIHwgICAgNCArKy0tCisgbWFuL2Rwa2ctc2NhbnBhY2thZ2VzLjEgICAgICAgfCAgICA1ICsrLS0tCisgbWFuL2Rwa2ctc2NhbnNvdXJjZXMuMSAgICAgICAgfCAgICA1ICsrLS0tCisgbWFuL2Rwa2ctc2hsaWJkZXBzLjEgICAgICAgICAgfCAgICA2ICsrLS0tLQorIG1hbi9kcGtnLXNvdXJjZS4xICAgICAgICAgICAgIHwgICAgNSArKy0tLQorIG1hbi9kcGtnLXNwbGl0LjEgICAgICAgICAgICAgIHwgICAgNSArKy0tLQorIG1hbi9kcGtnLXN0YXRvdmVycmlkZS44ICAgICAgIHwgICAgNSArKy0tLQorIG1hbi9kcGtnLjEgICAgICAgICAgICAgICAgICAgIHwgICAgMiArLQorIG1hbi9kc2VsZWN0LjEgICAgICAgICAgICAgICAgIHwgICAxMiArKy0tLS0tLS0tLS0KKyBtYW4vc3RhcnQtc3RvcC1kYWVtb24uOCAgICAgICB8ICAgIDUgKystLS0KKyBtYW4vdXBkYXRlLWFsdGVybmF0aXZlcy44ICAgICB8ICAgIDUgKystLS0KKyAyNCBmaWxlcyBjaGFuZ2VkLCA0NSBpbnNlcnRpb25zKCspLCA2NCBkZWxldGlvbnMoLSkKKworY29tbWl0IDllNTNmY2M1NGJkZGJiYWI1M2U5NjRmMzMzOWJkNzEyZTQxODA2ZTUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gSnVsIDQgMTg6NTU6MDMgMjAxMSArMDIwMAorCisgICAgUmVmZXIgdG8gU291cmNlcyBhbmQgUGFja2FnZXMgZmlsZXMgYXMgcGFydCBvZiBhIHJlcG9zaXRvcnkKKyAgICAKKyAgICBJbnN0ZWFkIG9mIGFzIGJlaW5nIG9mIGV4Y2x1c2l2ZSB1c2Ugb3Igb3duZWQgYnkgQVBULCB3aGljaCBoYXMgbmV2ZXIKKyAgICBiZWVuIHRoZSBjYXNlLiBUaG9zZSBmaWxlcyBleGlzdGVkIGxvbmcgYmVmb3JlIEFQVCBldmVuIGV4aXN0ZWQuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICB8ICAgIDIgKysKKyBtYW4vZHBrZy1xdWVyeS4xICAgICAgICAgICAgICB8ICAgIDQgKystLQorIHNjcmlwdHMvRHBrZy9Db250cm9sLnBtICAgICAgIHwgICAgOCArKysrLS0tLQorIHNjcmlwdHMvRHBrZy9Db250cm9sL1R5cGVzLnBtIHwgICAgNCArKy0tCisgNCBmaWxlcyBjaGFuZ2VkLCAxMCBpbnNlcnRpb25zKCspLCA4IGRlbGV0aW9ucygtKQorCitjb21taXQgODY4Y2NjYzc4Njg0Y2QwOThlNGNhNmY4Nzk0OTI4NDJlMjRlYjlhNgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBKdWwgNiAxNjo0Njo1NCAyMDExICswMjAwCisKKyAgICBkcGtnLXF1ZXJ5KDEpOiBDbGFyaWZ5IHRoYXQgc2V2ZXJhbCBmaWVsZHMgYXJlIG5vdCBkc2VsZWN0IHNwZWNpZmljCisgICAgCisgICAgVGhlc2UgYXBwbHkgdG8gbW9zdCBkcGtnIGZyb250LWVuZHMgbm90IGp1c3QgZHNlbGVjdC4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAyICsrCisgbWFuL2Rwa2ctcXVlcnkuMSB8ICAgIDggKysrKy0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDYgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKKworY29tbWl0IDdmMzg5MmYxODRkOWFjY2QyNTA2MDBkZmM1NDE3M2E2NDM2YTVkM2EKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgSnVsIDYgMTY6NDY6MjYgMjAxMSArMDIwMAorCisgICAgZHBrZy1zaGxpYmRlcHMoMSk6IEFkZCBtaXNzaW5nIOKAnHdpdGjigJ0KKworIG1hbi9kcGtnLXNobGliZGVwcy4xIHwgICAgMiArLQorIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgMGE5NTg2MjEzMDg2NzIzYzU5NjJiYmZhNjY1OWRmMjQwYzc3NDMzYworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBKdWwgNyAwNjoxOTowMiAyMDExICswMjAwCisKKyAgICBtYW46IFVzZSBkYXNoZXMgaW5zdGVhZCBvZiB1bmRlcnNjb3JlcyBmb3IgdmFyaWFibGUgdGV4dAorICAgIAorICAgIFRoaXMgbWFrZXMgdGhlIHRleHQgbW9yZSBjbGVhciBieSBhdm9pZGluZyB0aGUgY2xhc2hlcyB3aGVuIGl0YWxpY3MKKyAgICBhcmUgcmVuZGVyZWQgYXMgdW5kZXJsaW5lZCB0ZXh0LgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgIHwgICAgMSArCisgbWFuL2RlYi1jb250cm9sLjUgICAgIHwgICAgMiArLQorIG1hbi9kZWItc3JjLWNvbnRyb2wuNSB8ICAgIDIgKy0KKyBtYW4vZGViLXZlcnNpb24uNSAgICAgfCAgIDM2ICsrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLQorIG1hbi9kcGtnLWRlYi4xICAgICAgICB8ICAgIDQgKystLQorIG1hbi9kcGtnLWdlbnN5bWJvbHMuMSB8ICAgIDQgKystLQorIG1hbi9kcGtnLW5hbWUuMSAgICAgICB8ICAgIDQgKystLQorIG1hbi9kcGtnLjEgICAgICAgICAgICB8ICAgMTQgKysrKysrKy0tLS0tLS0KKyA4IGZpbGVzIGNoYW5nZWQsIDM0IGluc2VydGlvbnMoKyksIDMzIGRlbGV0aW9ucygtKQorCitjb21taXQgN2RjZDg3NWUwODQyMTNmYTY1YzA5Y2QyM2EzZTQ1ZWRmYmZjYjk0YgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBKdWwgNyAwNjoxNzoxOSAyMDExICswMjAwCisKKyAgICBkZWItY29udHJvbCg1KTogQWRkIG1pc3NpbmcgZXNjYXBpbmcgdG8gZmllbGQgZGFzaGVzCisKKyBkZWJpYW4vY2hhbmdlbG9nICB8ICAgIDEgKworIG1hbi9kZWItY29udHJvbC41IHwgICAgNCArKy0tCisgMiBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA5NzFlMGJkMjAwNWIwNmFiNzE4YTkwZTc3MDY3ZjdjNmZmMDFjMGIzCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIEp1bCA2IDE2OjQ1OjI2IDIwMTEgKzAyMDAKKworICAgIGRzZWxlY3QoMSk6IEFkZCBtaXNzaW5nIGJ1aWx0LWluIG1ldGhvZHMKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAxICsKKyBtYW4vZHNlbGVjdC4xICAgIHwgICAgOCArKysrLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQorCitjb21taXQgMzdiMDEyNjlhMzczNWEzMjEzZDVmZTVmY2UzNzdkNTM2MGY1NWZmNworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBKdWwgNyAwNTo0MTowNiAyMDExICswMjAwCisKKyAgICBkc2VsZWN0KDEpOiBSZW5hbWUgVVNBR0Ugc2VjdGlvbiB0byBBQ1RJT05TCisgICAgCisgICAgRG9jdW1lbnQgdGhlIHdheXMgYWN0aW9ucyBjYW4gYmUgcGVyZm9ybWVkLCBlaXRoZXIgaW50ZXJhY3RpdmVseSBvciBmcm9tCisgICAgdGhlIGNvbW1hbmQgbGluZS4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAzICsrKworIG1hbi9kc2VsZWN0LjEgICAgfCAgICA3ICsrKystLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDcgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworY29tbWl0IGUzNDJhOGZjM2JjNzc3OTcxZjc2YWZmMGY4OWI4YjEyMTg3NmE1MzIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gSnVsIDMgMjE6Mjk6NDMgMjAxMSArMDIwMAorCisgICAgVXNlIOKAnGNvbW1hbmQgbGluZeKAnSBpbnN0ZWFkIG9mIGNvbW1hbmRsaW5lIG9yIGNvbW1hbmQtbGluZQorCisgVE9ETyAgICAgICAgICAgICAgfCAgICAxIC0KKyBkZWJpYW4vdXNlcnRhZ3MgICB8ICAgIDQgKystLQorIGRvYy9SRUFETUUuYXBpICAgIHwgICAgMiArLQorIGRvYy90cmlnZ2Vycy50eHQgIHwgICAgMiArLQorIG1hbi9kcGtnLXNvdXJjZS4xIHwgICAgNCArKy0tCisgbWFuL2RzZWxlY3QuMSAgICAgfCAgICA4ICsrKystLS0tCisgbWFuL2RzZWxlY3QuY2ZnLjUgfCAgICA0ICsrLS0KKyA3IGZpbGVzIGNoYW5nZWQsIDEyIGluc2VydGlvbnMoKyksIDEzIGRlbGV0aW9ucygtKQorCitjb21taXQgMjNjZDM5YWFlMDFmMWIzYjFhZWU4MzRiZWZhMDIyMDFlODgyNDgxOQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBKdWwgNyAwOTowNDozMiAyMDExICswMjAwCisKKyAgICBsaWJkcGtnOiBSZW5hbWUgY2F0Y2hfc2lnbmFscyB0byBzaWdub19pZ25vcmVzIGluIHN1YnByb2MgbW9kdWxlCisKKyBsaWIvZHBrZy9zdWJwcm9jLmMgfCAgIDE2ICsrKysrKysrLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDggaW5zZXJ0aW9ucygrKSwgOCBkZWxldGlvbnMoLSkKKworY29tbWl0IDY2OGFiMGQ4YWI5OWRjYzdhNjNkNThiYzFkODU5ZDg1N2UzZTkzOWUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gSnVsIDQgMDQ6MTA6MzIgMjAxMSArMDIwMAorCisgICAgbGliZHBrZzogUmVuYW1lIHNpZ2FjdGlvbiB2YXJpYWJsZXMgaW4gc3VicHJvYyBtb2R1bGUgdG8gc2EgYW5kIHNhX3NhdmUKKworIGxpYi9kcGtnL3N1YnByb2MuYyB8ICAgMTcgKysrKysrKysrLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDkgaW5zZXJ0aW9ucygrKSwgOCBkZWxldGlvbnMoLSkKKworY29tbWl0IGI4MWVjMGEzOWI3Y2NiYTkyNWZiMGZiOGYwNjY0YTA2NzFkYmMyZGMKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gSnVsIDQgMDM6MTk6MDQgMjAxMSArMDIwMAorCisgICAgbGliZHBrZzogUmVuYW1lIHZhcmlhYmxlIHIgdG8gcGlkIGluIHN1YnByb2NfZm9yaygpCisKKyBsaWIvZHBrZy9zdWJwcm9jLmMgfCAgIDEyICsrKysrKy0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCA2IGRlbGV0aW9ucygtKQorCitjb21taXQgY2YyMmNmNjExODAzNWFiOGVlNWNjMjVlNTI5OGE5ODcwNzNjOGRjOAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBKdWwgMyAwMzoyMzoxMSAyMDExICswMjAwCisKKyAgICBsaWJkcGtnOiBSZW5hbWUgbXlvcHQgbW9kdWxlIHRvIG9wdGlvbnMKKworIGRwa2ctZGViL2J1aWxkLmMgICAgICAgICAgICAgICAgfCAgICAyICstCisgZHBrZy1kZWIvZXh0cmFjdC5jICAgICAgICAgICAgICB8ICAgIDIgKy0KKyBkcGtnLWRlYi9pbmZvLmMgICAgICAgICAgICAgICAgIHwgICAgMiArLQorIGRwa2ctZGViL21haW4uYyAgICAgICAgICAgICAgICAgfCAgICAyICstCisgZHBrZy1zcGxpdC9pbmZvLmMgICAgICAgICAgICAgICB8ICAgIDIgKy0KKyBkcGtnLXNwbGl0L2pvaW4uYyAgICAgICAgICAgICAgIHwgICAgMiArLQorIGRwa2ctc3BsaXQvbWFpbi5jICAgICAgICAgICAgICAgfCAgICAyICstCisgZHBrZy1zcGxpdC9xdWV1ZS5jICAgICAgICAgICAgICB8ICAgIDIgKy0KKyBkcGtnLXNwbGl0L3NwbGl0LmMgICAgICAgICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvbWFpbi5jYyAgICAgICAgICAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvTWFrZWZpbGUuYW0gICAgICAgICAgICB8ICAgIDQgKystLQorIGxpYi9kcGtnL3tteW9wdC5jID0+IG9wdGlvbnMuY30gfCAgICA0ICsrLS0KKyBsaWIvZHBrZy97bXlvcHQuaCA9PiBvcHRpb25zLmh9IHwgICAgOCArKysrLS0tLQorIHNyYy9hcmNoaXZlcy5jICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgc3JjL2NsZWFudXAuYyAgICAgICAgICAgICAgICAgICB8ICAgIDIgKy0KKyBzcmMvZGl2ZXJ0Y21kLmMgICAgICAgICAgICAgICAgIHwgICAgMiArLQorIHNyYy9lbnF1aXJ5LmMgICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgc3JjL2Vycm9ycy5jICAgICAgICAgICAgICAgICAgICB8ICAgIDIgKy0KKyBzcmMvbWFpbi5jICAgICAgICAgICAgICAgICAgICAgIHwgICAgMiArLQorIHNyYy9wYWNrYWdlcy5jICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgc3JjL3Byb2Nlc3NhcmMuYyAgICAgICAgICAgICAgICB8ICAgIDIgKy0KKyBzcmMvcXVlcnljbWQuYyAgICAgICAgICAgICAgICAgIHwgICAgMiArLQorIHNyYy9yZW1vdmUuYyAgICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgc3JjL3NlbGVjdC5jICAgICAgICAgICAgICAgICAgICB8ICAgIDIgKy0KKyBzcmMvc3RhdGNtZC5jICAgICAgICAgICAgICAgICAgIHwgICAgMiArLQorIHNyYy90cmlnY21kLmMgICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgc3JjL3VwZGF0ZS5jICAgICAgICAgICAgICAgICAgICB8ICAgIDIgKy0KKyAyNyBmaWxlcyBjaGFuZ2VkLCAzMiBpbnNlcnRpb25zKCspLCAzMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDE2MzU0YTk2MWNlODY3NzhhM2UwY2E1NmYyZmE1MzE0ODU1Y2NmM2MKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gSnVsIDMgMDM6MTI6NDAgMjAxMSArMDIwMAorCisgICAgRml4IHByaW50Zm9yaGVscCBzdHJpbmcgaW4gZHBrZy1kaXZlcnQgYW5kIGRwa2ctc3RhdG92ZXJyaWRlCisKKyBzcmMvZGl2ZXJ0Y21kLmMgfCAgICAyICstCisgc3JjL3N0YXRjbWQuYyAgIHwgICAgMiArLQorIDIgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgMDFkOWJhOWRmYTE2OTVhYjEyYmQ0YTA5ZjlmMzVhNmUxOGMwOTc4OAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBKdWwgMiAwMjoyMzoyNyAyMDExICswMjAwCisKKyAgICBGaXggY29tbWVudCBoZWFkZXIgbGluZXMgZGVzY3JpYmluZyB0aGUgc3VicHJvamVjdAorCisgZHNlbGVjdC9iaW5kaW5ncy5oICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvZHNlbGVjdC1jdXJzZXMuaCB8ICAgIDIgKy0KKyBkc2VsZWN0L2RzZWxlY3QuaCAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wa2dsaXN0LmggICAgICAgIHwgICAgMiArLQorIGxpYi9kcGtnL2RibW9kaWZ5LmMgICAgICB8ICAgIDIgKy0KKyBsaWIvZHBrZy9mZGlvLmMgICAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvZmRpby5oICAgICAgICAgIHwgICAgMiArLQorIGxpYi9kcGtnL2dsb2IuYyAgICAgICAgICB8ICAgIDIgKy0KKyBsaWIvZHBrZy9nbG9iLmggICAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvbG9nLmMgICAgICAgICAgIHwgICAgMiArLQorIGxpYi9kcGtnL3BrZy1hcnJheS5jICAgICB8ICAgIDIgKy0KKyBsaWIvZHBrZy9wa2ctYXJyYXkuaCAgICAgfCAgICAyICstCisgbGliL2Rwa2cvcGtnLWxpc3QuYyAgICAgIHwgICAgMiArLQorIGxpYi9kcGtnL3BrZy1saXN0LmggICAgICB8ICAgIDIgKy0KKyBsaWIvZHBrZy9wa2ctcXVldWUuYyAgICAgfCAgICAyICstCisgbGliL2Rwa2cvcGtnLXF1ZXVlLmggICAgIHwgICAgMiArLQorIGxpYi9kcGtnL3BrZy1zaG93LmMgICAgICB8ICAgIDIgKy0KKyBsaWIvZHBrZy9wa2ctc2hvdy5oICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvcGtnLmMgICAgICAgICAgIHwgICAgMiArLQorIGxpYi9kcGtnL3BrZy5oICAgICAgICAgICB8ICAgIDIgKy0KKyBsaWIvZHBrZy9wcm9ncmVzcy5jICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvcHJvZ3Jlc3MuaCAgICAgIHwgICAgMiArLQorIGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sICB8ICAgIDIgKy0KKyAyMyBmaWxlcyBjaGFuZ2VkLCAyMyBpbnNlcnRpb25zKCspLCAyMyBkZWxldGlvbnMoLSkKKworY29tbWl0IDlmZTBhMWIxNmQzMDQ1NTM0Zjc4NjNhZWQyZTM1ZjUxNzcxNTZhMTUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgSnVsIDIgMDI6MDA6NTEgMjAxMSArMDIwMAorCisgICAgVXNlIG5ldyBkcGtnX3NldF9wcm9nbmFtZSBhbmQgZHBrZ19nZXRfcHJvZ25hbWUgaW5zdGVhZCBvZiB0aGlzbmFtZQorICAgIAorICAgIFRoZSBjdXJyZW50IGltcGxlbWVudGF0aW9uIGRlbWFuZGVkIGxpYmRwa2cgdXNlcnMgdG8gZGVmaW5lIHRoaXNuYW1lCisgICAgdGhlbXNlbHZlcywgd2hpY2ggaXMgbm90IHJlYWxseSBhIG5pY2UgaW50ZXJmYWNlIHRvIG9mZmVyIHRvIHByb2dyYW1zLgorICAgIAorICAgIENsb3NlczogIzYzMTc1NworCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICB8ICAgIDMgKysrCisgZHBrZy1kZWIvbWFpbi5jICAgICAgICAgICB8ICAgIDIgKy0KKyBkcGtnLXNwbGl0L21haW4uYyAgICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvbWFpbi5jYyAgICAgICAgICAgfCAgICAzICsrLQorIGxpYi9kcGtnL2Rwa2cuaCAgICAgICAgICAgfCAgICAxICsKKyBsaWIvZHBrZy9laGFuZGxlLmMgICAgICAgIHwgICAxNiArKysrKysrKystLS0tLS0tCisgbGliL2Rwa2cvZWhhbmRsZS5oICAgICAgICB8ICAgIDMgLS0tCisgbGliL2Rwa2cvbGliZHBrZy5WZXJzaW9ucyB8ICAgIDEgLQorIGxpYi9kcGtnL3N1YnByb2MuYyAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvdGVzdC5oICAgICAgICAgICB8ICAgIDIgLS0KKyBzcmMvZGl2ZXJ0Y21kLmMgICAgICAgICAgIHwgICAgNyArKysrLS0tCisgc3JjL2Vycm9ycy5jICAgICAgICAgICAgICB8ICAgIDYgKysrLS0tCisgc3JjL21haW4uYyAgICAgICAgICAgICAgICB8ICAgIDIgKy0KKyBzcmMvcXVlcnljbWQuYyAgICAgICAgICAgIHwgICAgNiArKystLS0KKyBzcmMvc3RhdGNtZC5jICAgICAgICAgICAgIHwgICAgNyArKysrLS0tCisgc3JjL3RyaWdjbWQuYyAgICAgICAgICAgICB8ICAgMTEgKysrKystLS0tLS0KKyBzcmMvdHJpZ3Byb2MuYyAgICAgICAgICAgIHwgICAgMiArLQorIDE3IGZpbGVzIGNoYW5nZWQsIDM5IGluc2VydGlvbnMoKyksIDM3IGRlbGV0aW9ucygtKQorCitjb21taXQgZWMyMDZiZjM0YmUzNzMzYTY2NTg0MDQzMmY3MGZhZjE0OWYyYzAwOAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBKdWwgMiAwMTo1ODozMyAyMDExICswMjAwCisKKyAgICBsaWJkcGtnOiBBZGQgbmV3IHByb2duYW1lIG1vZHVsZSBoYW5kbGluZyBmdW5jdGlvbnMKKworIGNvbmZpZ3VyZS5hYyAgICAgICAgICAgICAgfCAgICAzICstCisgbGliL2Rwa2cvTWFrZWZpbGUuYW0gICAgICB8ICAgIDIgKworIGxpYi9kcGtnL2xpYmRwa2cuVmVyc2lvbnMgfCAgICA0ICsrCisgbGliL2Rwa2cvcHJvZ25hbWUuYyAgICAgICB8ICAgODMgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCisgbGliL2Rwa2cvcHJvZ25hbWUuaCAgICAgICB8ICAgMzMgKysrKysrKysrKysrKysrKysrCisgbTQvZHBrZy1mdW5jcy5tNCAgICAgICAgICB8ICAgMjMgKysrKysrKysrKysrCisgNiBmaWxlcyBjaGFuZ2VkLCAxNDcgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGNkOTJjYzc3ZTUxMDNiMzFjZTE1Yjc0NmJkNzEwOTViODU5YWMwOGIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgSnVsIDIgMDI6MDQ6MjggMjAxMSArMDIwMAorCisgICAgbGliZHBrZzogQWRkIG1pc3NpbmcgbWFjcm9zIGZvciBwcm9ncmFtIG5hbWVzCisgICAgCisgICAgU3BlY2lmaWNhbGx5IGZvciBkcGtnLWRpdmVydCwgZHBrZy1zdGF0b3ZlcnJpZGUgYW5kIGRwa2ctdHJpZ2dlci4KKworIGxpYi9kcGtnL2Rwa2cuaCB8ICAgIDUgKysrKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDBmYzBkNmQ1OThjMDQ1Yzc3ZDA1NmI0MDQ0NjIwODQ0OGI5ZWM2ZTIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgSnVsIDEgMDQ6MjI6NTEgMjAxMSArMDIwMAorCisgICAgbGliZHBrZzogRG8gbm90IHJlcXVpcmUgcHJvZ3JhbXMgdG8gZGVmaW5lIHByaW50Zm9yaGVscAorICAgIAorICAgIEluc3RlYWQgZGVmaW5lIGl0IGluIG15b3B0LmMgYW5kIGluaXRpYWxpemUgaXQgdGhyb3VnaCBhIG5ldyBhcmd1bWVudCB0bworICAgIG15b3B0KCkuCisKKyBkcGtnLWRlYi9tYWluLmMgICAgICAgICAgIHwgICAgNCArKy0tCisgZHBrZy1zcGxpdC9tYWluLmMgICAgICAgICB8ICAgIDQgKystLQorIGRzZWxlY3QvbWFpbi5jYyAgICAgICAgICAgfCAgICA0ICsrLS0KKyBsaWIvZHBrZy9saWJkcGtnLlZlcnNpb25zIHwgICAgMSAtCisgbGliL2Rwa2cvbXlvcHQuYyAgICAgICAgICB8ICAgIDkgKysrKysrKystCisgbGliL2Rwa2cvbXlvcHQuaCAgICAgICAgICB8ICAgIDUgKystLS0KKyBzcmMvZGl2ZXJ0Y21kLmMgICAgICAgICAgIHwgICAgNSArKystLQorIHNyYy9tYWluLmMgICAgICAgICAgICAgICAgfCAgICA2ICsrKy0tLQorIHNyYy9xdWVyeWNtZC5jICAgICAgICAgICAgfCAgICA1ICsrKy0tCisgc3JjL3N0YXRjbWQuYyAgICAgICAgICAgICB8ICAgIDUgKysrLS0KKyBzcmMvdHJpZ2NtZC5jICAgICAgICAgICAgIHwgICAgNCArKy0tCisgMTEgZmlsZXMgY2hhbmdlZCwgMzAgaW5zZXJ0aW9ucygrKSwgMjIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA0ZGE0Yzg5NDcxOWM3ZDMzYTNlNDQ2NDU2MzBmNjMxNzJjZmQ0Yzk5CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIE1heSA0IDAyOjAyOjU3IDIwMTEgKzAyMDAKKworICAgIGxpYmRwa2c6IEFkZCBtaXNzaW5nIHN5bWJvbHMgdG8gdGhlIHZlcnNpb24gc2NyaXB0CisKKyBsaWIvZHBrZy9saWJkcGtnLlZlcnNpb25zIHwgICAgNSArKysrKworIDEgZmlsZXMgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgODc4MDkxNjMzMzFhMzIwZjk1NjJkNzU1OTFmY2M2Yzk1NGI5ZjgwYworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBKdW4gMTcgMTc6MDA6MzAgMjAxMSArMDIwMAorCisgICAgZHBrZy1kZWI6IEFsd2F5cyBjaGRpcigyKSBpbiB0aGUgY2hpbGRzIHRvIG5vdCBjaGFuZ2UgdGhlIGdsb2JhbCBzdGF0ZQorICAgIAorICAgIFRvIG5vdCBkaXN0dXJiIHRoZSBnbG9iYWwgcHJvZ3JhbSBzdGF0ZSB3ZSBzaG91bGQgYWx3YXlzIGNoZGlyKDIpIGluIHRoZQorICAgIGNoaWxkcyB0aGF0IGFjdHVhbGx5IG5lZWQgaXQuIFRoaXMgd2lsbCBhbGxvdyBpbiB0aGUgZnV0dXJlIHRvIHN3aXRjaAorICAgIHRoaXMgY29kZSB0byBiZSBwYXJ0IG9mIGEgbGlicmFyeS4KKworIGRwa2ctZGViL2V4dHJhY3QuYyB8ICAgMjUgKysrKysrKysrKysrLS0tLS0tLS0tLS0tLQorIGRwa2ctZGViL2luZm8uYyAgICB8ICAgIDQgKystLQorIDIgZmlsZXMgY2hhbmdlZCwgMTQgaW5zZXJ0aW9ucygrKSwgMTUgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA2YWI1MDJiNmE3YTM3MThiNjk3ZTdjMTAyMGZjZDVkN2Y5ZmQyZDY3CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IEp1bCA3IDA3OjExOjA2IDIwMTEgKzAyMDAKKworICAgIGRwa2c6IFVzZSBicmFjZXMgb24g4oCYaWbigJkgdG8gYXZvaWQgYW1iaWd1b3VzIOKAmGVsc2XigJkKKyAgICAKKyAgICBXYXJuaW5nIGludHJvZHVjZWQgaW4gY29tbWl0IGZjNjI1ZDE2MTM4MmFiYzQxYjk4NGNhOWVlMWUzMmFkNGYyOTVjNjcuCisKKyBzcmMvYXJjaGl2ZXMuYyB8ICAgIDMgKystCisgMSBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAxZWEwZGE1YWM5MDc5YTM4YWFlNTBjY2JlNzhjZWMwMDNlN2FlOTVhCitBdXRob3I6IFN2ZW4gSm9hY2hpbSA8c3ZlbmpvYWNAZ214LmRlPgorRGF0ZTogICBUdWUgSnVsIDUgMDk6NDQ6NDkgMjAxMSArMDIwMAorCisgICAgZHBrZzogTWFyayBlcnJvciBtZXNzYWdlIGZvciB0cmFuc2xhdGlvbgorICAgIAorICAgIE1pc3NlZCBpbiBjb21taXQgZmM2MjVkMTYxMzgyYWJjNDFiOTg0Y2E5ZWUxZTMyYWQ0ZjI5NWM2Ny4KKworIHNyYy9hcmNoaXZlcy5jIHwgICAgMiArLQorIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgYTkzNDU4OTliZDNhZDc2ZTYwODFiZWFlZmJiMWE1Y2UwNzU4ZWJhZAorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBKdW4gMzAgMTQ6MDg6NDQgMjAxMSArMDIwMAorCisgICAgZHBrZy1zb3VyY2U6IGltcHJvdmUgdGhlIGxvZ2ljIHRvIGlkZW50aWZ5IGlnbm9yZWQgZmlsZXMKKyAgICAKKyAgICBUaGUgbGlzdCBvZiBpZ25vcmVkIGZpbGVzIHdhcyBvbmx5IGdlbmVyYXRlZCBieSBleHBhbmRpbmcgdGhlIHBhdHRlcm5zCisgICAgcmVsYXRpdmUgdG8gdGhlIGN1cnJlbnQgZGlyZWN0b3J5ICh3aGljaCB1c3VhbGx5IGlzIHRoZSBkaXJlY3RvcnkgYWJvdmUKKyAgICB0aGUgc291cmNlIHBhY2thZ2UpLiBJbnN0ZWFkIHdoYXQgd2Ugd2FudCBpcyB0byBleHBhbmQgdGhlbSBhdCB0aGUKKyAgICB0b3AtbGV2ZWwgZGlyZWN0b3J5IG9mIHRoZSBzb3VyY2UgcGFja2FnZSBhbmQgYXQgdGhlIGRpcmVjdG9yeSBiZWluZworICAgIGluc3BlY3RlZC4KKyAgICAKKyAgICBSZXBvcnRlZC1ieTogSm9hY2hpbSBCcmVpdG5lciA8bm9tZWF0YUBkZWJpYW4ub3JnPgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICAgICAgIHwgICAgMSArCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtIHwgICAxMiArKysrKysrKystLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDEwIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBmYzYyNWQxNjEzODJhYmM0MWI5ODRjYTllZTFlMzJhZDRmMjk1YzY3CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIEp1biAyOCAwOTozOTo0NiAyMDExICswMjAwCisKKyAgICBkcGtnOiBhZGQgdGhlIG1pc3Npbmcgb2hzaGl0ZSgpIG9uIGEgZmFpbGVkIHN5c2NhbGwKKworIHNyYy9hcmNoaXZlcy5jIHwgICAgMiArKworIDEgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgYjZjYTliY2RiNTg4N2UzMGZlNjVlY2QyMTA1ZGE5ZGNkNTVhMzUxYworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBKdW4gMjkgMDQ6MTE6MzIgMjAxMSArMDIwMAorCisgICAgZHBrZzogVW5wYWNrIG1pc3Npbmcgc2hhcmVkIGRpcmVjdG9yaWVzIHdoZW4gdGhlIHBhY2thZ2UgaXMgcmVwbGFjZWQKKyAgICAKKyAgICBXaGVuIHVucGFja2luZyBhIGRpcmVjdG9yeSBtaXNzaW5nIGluIHRoZSBmaWxlIHN5c3RlbSB3aXRoIHRoYXQgcGF0aAorICAgIHNoYXJlZCBieSBhdCBsZWFzdCBvbmUgb3RoZXIgcGFja2FnZSwgZnJvbSBhIHBhY2thZ2UgdGhhdCBpcyBSZXBsYWNlZAorICAgIGJ5IG90aGVyIHBhY2thZ2VzLCBhc3N1bWUgdGhlIG1pc3NpbmcgcGF0aCBpcyBhIHNoYXJlZCBkaXJlY3RvcnkgYW5kCisgICAgYXZvaWQgc2V0dGluZyDigJhrZWVwZXhpc3RpbmfigJkgYW5kIGFzIHN1Y2ggcmV0dXJuaW5nIHByZW1hdHVyZWx5IGZyb20KKyAgICB0YXJvYmplY3QoKSwgYmVjYXVzZSBpbiB0aGF0IGNhc2Ugd2UgbmVlZCB0byByZWNyZWF0ZSB0aGUgbG9zdAorICAgIGRpcmVjdG9yeS4gQXMgYSBzaWRlIGVmZmVjdCB0aGlzIGFsc28gcHJldmVudHMgcHJpbnRpbmcgdGhlIG1lc3NhZ2UKKyAgICDigJxSZXBsYWNlZCBieSBmaWxlcyBpbiBpbnN0YWxsZWQgcGFja2FnZeKAnSB3aGljaCBpcyBib2d1cyBpbiB0aGlzIGNhc2UsCisgICAgYXMgZGlyZWN0b3JpZXMgYXJlIGFsd2F5cyBzaGFyZWQuCisgICAgCisgICAgUmVncmVzc2lvbiBpbnRyb2R1Y2VkIGluIGNvbW1pdCAwMGU1NjQwYTk5YmUwM2FiYTQwYzllMDhhNjYzYjkwZDhmOGFhNzk3LgorICAgIAorICAgIENsb3NlczogIzYzMTgwOAorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDIgKysKKyBzcmMvYXJjaGl2ZXMuYyAgIHwgICAyNiArKysrKysrKysrKysrKysrLS0tLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgMTggaW5zZXJ0aW9ucygrKSwgMTAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA2MzhlMjU5ZjY5YzFmM2MwZTEwMDA5NzkyNzQ1NjJmOGZmYWQ0ZGY5CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIEp1biAyOCAwOTozNDo1MiAyMDExICswMjAwCisKKyAgICB1cGRhdGUtYWx0ZXJuYXRpdmVzOiBkbyBub3QgYWxsb3cgdG8gcmV1c2UgYSBzbGF2ZSBsaW5rIGluIGFub3RoZXIgc2xhdmUgYWx0ZXJuYXRpdmUKKyAgICAKKyAgICB1cGRhdGUtYWx0ZXJuYXRpdmVzIGVycm9uZW91c2x5IGFsbG93ZWQgdG8gcmV1c2UgYSBsaW5rIGluIGFub3RoZXIgc2xhdmUKKyAgICBhbHRlcm5hdGl2ZS4gR2l2ZW4gdGhlIHBhcnNpbmcgY29kZSBhbHJlYWR5IGNhdGNoZWQgdGhpcyBlcnJvciwgaXQgd291bGQKKyAgICBpbW1lZGlhdGVseSByZXN1bHQgaW4gdXBkYXRlLWFsdGVybmF0aXZlcyBiZWluZyB1bnVzYWJsZSB0byBtYW5pcHVsYXRlIHRoZQorICAgIGJyb2tlbiBhbHRlcm5hdGl2ZS4KKyAgICAKKyAgICBSZXBvcnRlZC1ieTogQW5kcmVhcyBCZWNrbWFubiA8ZGViaWFuQGFiZWNrbWFubi5kZT4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgICAgICAgICB8ICAgIDIgKysKKyB1dGlscy90LzEwMF91cGRhdGVfYWx0ZXJuYXRpdmVzLnQgfCAgICA3ICsrKysrKy0KKyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmMgICAgICAgfCAgIDExICsrKysrKysrKysrCisgMyBmaWxlcyBjaGFuZ2VkLCAxOSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgOGVlNzIyMjM0ZTM1ZThmY2EwZmQ2MGFhYzM1ZjkyNjNkNjJmM2Y5NQorQXV0aG9yOiBQZXRlciBLcmVmdGluZyA8cGV0ZXJrQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBKdW4gMjcgMTk6MjQ6NDUgMjAxMSArMDEwMAorCisgICAgRml4IHNvbWUgZGFtYWdlIGludHJvZHVjZWQgYnkgZ3RyYW5zbGF0b3IuCisKKyBwby9zdi5wbyAgICAgICAgIHwgICAgNiArKystLS0KKyBzY3JpcHRzL3BvL3N2LnBvIHwgICAgNiArKystLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDYgaW5zZXJ0aW9ucygrKSwgNiBkZWxldGlvbnMoLSkKKworY29tbWl0IDQ2ZGRlNTA4NDZjNjY5OGIyOGUyNTVjOGYxZjA2MGUxZWM3YTcxNzkKK0F1dGhvcjogUGV0ZXIgS3JlZnRpbmcgPHBldGVya0BkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gSnVuIDI3IDE5OjIyOjExIDIwMTEgKzAxMDAKKworICAgIFVwZGF0ZSBTd2VkaXNoIHRyYW5zbGF0aW9uLgorICAgIAorICAgIHBvL3N2LnBvOiAxMDIydDBmMHUuCisgICAgc2NyaXB0cy9wby9zdi5wbzogNTE0dDBmMHUuCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMiArCisgcG8vc3YucG8gICAgICAgICB8ICA1MTIgKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgc2NyaXB0cy9wby9zdi5wbyB8ICAgMzcgKystLQorIDMgZmlsZXMgY2hhbmdlZCwgMjY5IGluc2VydGlvbnMoKyksIDI4MiBkZWxldGlvbnMoLSkKKworY29tbWl0IDg2ZjY4OWMxM2JlOTEwNzk3ZWIyMmY3YzJhNjNmMmQ0OTI5ODY0MWQKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gSnVuIDI3IDA5OjM2OjU5IDIwMTEgKzAyMDAKKworICAgIGRwa2ctYnVpbGRmbGFncygxKTogREVCXypfKFNFVHxBUFBFTkQpIGFyZSBtZWFudCBmb3IgdXNlcnMKKyAgICAKKyAgICBNYWtlIGl0IGNsZWFyIHRoYXQgdGhlIHBvc3NpYmlsaXR5IHRvIG92ZXJyaWRlIHRoZSBjb21waWxhdGlvbiBmbGFncworICAgIHdpdGggZW52aXJvbm1lbnQgdmFyaWFibGVzIERFQl8qX1NFVCBhbmQgREVCXypfQVBQRU5EIGlzIHJlc3RyaWN0ZWQKKyAgICB0byB1c2VycyBhbmQgdGhhdCBwYWNrYWdlcyBzaG91bGQgbm90IHNldCB0aG9zZSB2YXJpYWJsZXMuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgfCAgICAyICsrCisgbWFuL2Rwa2ctYnVpbGRmbGFncy4xIHwgICAgNSArKysrLQorIDIgZmlsZXMgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgZjY0YThkNjZjMGMzYjNhNDQ5MjdhNmViNGQ1YmQ1N2VmOGQ2MDU5NAorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBGZWIgMjEgMTY6MzI6NTcgMjAxMSArMDEwMAorCisgICAgRml4IGJhZCBpbmRlbnRhdGlvbiBpbiB2YXJpb3VzIHBhcnRzIG9mIHRoZSBjb2RlCisKKyBsaWIvZHBrZy9kYm1vZGlmeS5jIHwgICAgNiArKystLS0KKyBzcmMvYXJjaGl2ZXMuYyAgICAgIHwgICAgNiArKystLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDYgaW5zZXJ0aW9ucygrKSwgNiBkZWxldGlvbnMoLSkKKworY29tbWl0IGUyZDkxMGVlMDgwNWE1NmY4NzQxNmFhYjM1NWNhNjhhMjY0ZTA3N2IKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gSnVuIDI2IDEwOjIxOjI4IDIwMTEgKzAyMDAKKworICAgIEFkZCBtaXNzaW5nIGNoYW5nZWxvZyBlbnRyeSBmb3IgbmV3IHRyaWdnZXIgZGlyZWN0aXZlcworCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDIgKysKKyAxIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IGNmNmI5OGQzNzM4ZDFmZThiMzExOWI3MWZkODMyMWMxMmZlYjYxOGMKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gTWF5IDE1IDAxOjM5OjMxIDIwMTEgKzAyMDAKKworICAgIGRwa2c6IGltcGxlbWVudCAiaW50ZXJlc3Qtbm9hd2FpdCIgYW5kICJhY3RpdmF0ZS1ub2F3YWl0IiB0cmlnZ2VyIGNvbW1hbmRzCisgICAgCisgICAgVGhvc2UgdmFyaWFudHMgZG8gbm90IHB1dCB0cmlnZ2VyaW5nIHBhY2thZ2VzIGluIHRyaWdnZXJzLWF3YWl0ZWQgc3RhdHVzCisgICAgYW5kIHRodXMgZG8gbm90IHJlY29yZCB0aGUgcGFja2FnZSB3aXRoIHRoZSBjb3JyZXNwb25kaW5nIHBlbmRpbmcgdHJpZ2dlcnMKKyAgICBpbiB0aGUgVHJpZ2dlcnMtQXdhaXRlZCBmaWVsZC4KKyAgICAKKyAgICBUaGlzIHNob3VsZCBiZSB1c2VkIGZvciB0cmlnZ2VycyB3aGljaCBkbyBub3QgcHJvdmlkZSBlc3NlbnRpYWwKKyAgICBmdW5jdGlvbmFsaXR5IHdoZW4gd2UgY2FuIHNhZmVseSBjb25zaWRlciB0aGF0IHRoZSB0cmlnZ2VyaW5nIHBhY2thZ2VzCisgICAgYXJlIGFibGUgdG8gc2F0aXNmeSBkZXBlbmRlbmNpZXMgZXZlbiBpZiB0aGUgdHJpZ2dlciBwcm9jZXNzaW5nCisgICAgaGFzIG5vdCB5ZXQgaGFwcGVuZWQuCisKKyBkZWJpYW4vZHBrZy5wcmVybSAgfCAgIDgxICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKKyBkb2MvdHJpZ2dlcnMudHh0ICAgfCAgICAzICstCisgbGliL2Rwa2cvdHJpZ2xpYi5jIHwgICA3OCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLQorIGxpYi9kcGtnL3RyaWdsaWIuaCB8ICAgMTUgKysrKysrKy0tCisgbWFuL2RlYi10cmlnZ2Vycy41IHwgICAyMCArKysrKysrKysrKystCisgc3JjL3RyaWdwcm9jLmMgICAgIHwgICAxMCArKysrLS0KKyA2IGZpbGVzIGNoYW5nZWQsIDE3NCBpbnNlcnRpb25zKCspLCAzMyBkZWxldGlvbnMoLSkKKworY29tbWl0IDlkM2VjMGY1YTcyN2Q0MzljM2NiYzg4ODViY2JjNzhmN2EzNGRkMGIKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgSnVuIDE4IDIxOjM2OjQwIDIwMTEgKzAyMDAKKworICAgIGRwa2c6IGRvIG5vdCBmYWxsYmFjayB0byAibmV3LXByZXJtIGZhaWxlZC11cGdyYWRlIiBmb3IgZG93bmdyYWRlcworICAgIAorICAgIElmICJpbnN0YWxsZWQtcHJlcm0gdXBncmFkZSIgZmFpbHMsIGRwa2cgdHJpZXMgdG8gcnVuICJuZXctcHJlcm0KKyAgICBmYWlsZWQtdXBncmFkZSIgc28gdGhhdCBuZXdlciB2ZXJzaW9ucyBvZiBwYWNrYWdlcyBjYW4gd29yay1hcm91bmQKKyAgICBhIGJ1ZyBpbiB0aGUgcHJlcm0gb2YgdGhlIGluc3RhbGxlZCBwYWNrYWdlLgorICAgIAorICAgIEluIHRoZSBjYXNlIG9mIGRvd25ncmFkZSB0aGlzIGxvZ2ljIGRvZXNuJ3QgbWFrZSBhbnkgc2Vuc2Ugc2luY2UKKyAgICB0aGUgb2xkZXN0IHZlcnNpb24gY2FuJ3QgYmUgYXdhcmUgb2YgdGhlIGJ1ZyBpbiB0aGUgbmV3ZXN0IHZlcnNpb24KKyAgICAodGhhdCBkaWQgbm90IGV4aXN0IHdoZW4gdGhlIHByZXJtIG9mIHRoZSBvbGRlc3QgdmVyc2lvbiB3YXMKKyAgICB3cml0dGVuKS4KKyAgICAKKyAgICBUaHVzIHdlJ3JlIGRpc2FibGluZyB0aGUgZmFsbGJhY2sgaW4gY2FzZSBvZiBhIGRvd25ncmFkZSBvciBhCisgICAgcmVpbnN0YWxsYXRpb24gb2YgdGhlIHNhbWUgdmVyc2lvbi4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAzICsrKworIHNyYy9wcm9jZXNzYXJjLmMgfCAgIDEwICsrKysrKysrLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDExIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBiYmU1NGQ4MzZjNTI1MzNjOTIzNDg0ZjNlYWYyMTYwMTE1NTEzMzdhCitBdXRob3I6IEN5cmlsIEJydWxlYm9pcyA8a2liaUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gSnVuIDEzIDIzOjIzOjA5IDIwMTEgKzAyMDAKKworICAgIGRwa2ctZ2Vuc3ltYm9sczogY29wZSB3aXRoIGVtcHR5IGxpbmVzCisgICAgCisgICAgRW1wdHkgbGluZXMgYXJlIHF1aXRlIHVzZWZ1bCBhcyAodmlzdWFsKSBkZWxpbWl0ZXJzIGJldHdlZW4gc2VjdGlvbnMgaW4KKyAgICBzeW1ib2xzIGZpbGVzLCBmb3IgZXhhbXBsZSB3aGVuIGxpYmZvbzAgY29udGFpbnMgbGliZm9vLWJhci5zby4wIGFuZAorICAgIGxpYmZvby1iYXouc28uMC4gQ29uc2lkZXIgdGhlbSBsaWtlIGNvbW1lbnRzOiBpZ25vcmUgdGhlbS4gVGhpcyBnZXRzIHVzCisgICAgcmlkIG9mIHN1Y2ggd2FybmluZ3MgKHdoaWNoIGJ5IHRoZSB3YXkgYXJlIG1pc3NpbmcgbGluZSBudW1iZXJzKToKKyAgICB8IGRwa2ctZ2Vuc3ltYm9sczogd2FybmluZzogRmFpbGVkIHRvIHBhcnNlIGEgbGluZSBpbiBkZWJpYW4vbGliZm9vMC5zeW1ib2xzOgorICAgIHwgZHBrZy1nZW5zeW1ib2xzOiB3YXJuaW5nOiBGYWlsZWQgdG8gcGFyc2UgYSBsaW5lIGluIGRlYmlhbi9saWJmb28wLnN5bWJvbHM6CisgICAgCisgICAgU2lnbmVkLW9mZi1ieTogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICAgICAgIHwgICAgMiArKworIHNjcmlwdHMvRHBrZy9TaGxpYnMvU3ltYm9sRmlsZS5wbSB8ICAgIDQgKystLQorIDIgZmlsZXMgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgMmJlNjE4YTgwZGUyZGUwMDY0MjhjMWY5MmJmYWZhOTBiYjk2M2FkZgorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBKdW4gMjUgMTA6MTc6NTMgMjAxMSArMDIwMAorCisgICAgZHBrZy1nZW5zeW1ib2xzKDEpOiBkb2N1bWVudCBzeW50YXggb2YgY29tbWVudHMKKyAgICAKKyAgICBSZXBvcnRlZC1ieTogU3ZlbiBKb2FjaGltIDxzdmVuam9hY0BnbXguZGU+CisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgfCAgICAxICsKKyBtYW4vZHBrZy1nZW5zeW1ib2xzLjEgfCAgICA1ICsrKysrCisgMiBmaWxlcyBjaGFuZ2VkLCA2IGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAxYzE2NTNlZjRkN2E2ZDQ2MWQ0YzIxNjhkOGEwNzhhOGExMTU5NmRiCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IEp1biAyNSAxMDowODowMyAyMDExICswMjAwCisKKyAgICBkcGtnLXNvdXJjZTogYWRkIHNvbWUgc3VwcGxlbWVudGFyeSBjaGVja3Mgb2YgZGViaWFuL2NvbnRyb2wKKyAgICAKKyAgICBXZSdyZSBub3cgZW5zdXJpbmcgdGhhdCBkZWJpYW4vY29udHJvbCBjb250YWlucyBhIHNvdXJjZSBlbnRyeQorICAgIGFuZCBhdCBsZWFzdCBvbmUgZW50cnkgZm9yIGEgYmluYXJ5IHBhY2thZ2UuIEFuZCB3ZSBhbHNvIGVuc3VyZQorICAgIHRoYXQgdGhlIEFyY2hpdGVjdHVyZSBmaWVsZCBpcyBwcmVzZW50LiBUaGlzIGEgbmV3IHJlc3RyaWN0aW9uCisgICAgYnV0IGl0J3MgcmVhbGx5IGluLWxpbmUgd2l0aCB0aGUgY2hhbmdlIG1hZGUgaW4gZHBrZyB3aGVyZSB3ZQorICAgIGNvbXBsYWluIG9mIHRoZSBsYWNrIG9mIHRoaXMgZmllbGQuCisgICAgCisgICAgUmVwb3J0ZWQtYnk6IE5pZWxzIFRoeWtpZXIgPG5pZWxzQHRoeWtpZXIubmV0PgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICAgICAgICAgIHwgICAgMiArKworIHNjcmlwdHMvRHBrZy9Db250cm9sL0luZm8ucG0gICAgICAgICB8ICAgIDYgKysrKystCisgc2NyaXB0cy9kcGtnLXNvdXJjZS5wbCAgICAgICAgICAgICAgIHwgICAgNSArKysrKworIHNjcmlwdHMvdC83MDBfRHBrZ19Db250cm9sLnQgICAgICAgICB8ICAgIDQgKysrKworIHNjcmlwdHMvdC83MDBfRHBrZ19Db250cm9sL2NvbnRyb2wtMSB8ICAgIDMgKysrCisgNSBmaWxlcyBjaGFuZ2VkLCAxOSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgOGVlZDFmZmVmOWI4NWNjZjcxMTkwY2I3ZjM2Nzg4ZjI5OTQyMjJlZAorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBKdW4gMjUgMDk6NTM6MDIgMjAxMSArMDIwMAorCisgICAgRHBrZzo6RXJyb3JIYW5kbGluZzo6c3ludGF4ZXJyKCk6IGhhbmRsZSBzdXBwbGVtZW50YXJ5IHBhcmFtZXRlcnMgbGlrZSByZXBvcnQoKQorICAgIAorICAgIFRoYXQgaXMgY29uc2lkZXIgdGhhdCB0aGUgc3RyaW5nIGlzIGEgZm9ybWF0IHN0cmluZyB0aGF0IG5lZWRzIHRvIGJlCisgICAgcHJvY2Vzc2VkIHdpdGggc3ByaW50ZigpLgorCisgc2NyaXB0cy9EcGtnL0Vycm9ySGFuZGxpbmcucG0gfCAgICA0ICsrKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDAyZTA0NWY5YjJmNmE3NTcxMWE3YTlmMjk3NjZhODM1ZTk3MWJlM2EKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgSnVuIDI1IDA4OjU5OjI0IDIwMTEgKzAyMDAKKworICAgIGRwa2ctc291cmNlKDEpOiB3b3JkaW5nIGltcHJvdmVtZW50CisgICAgCisgICAgVXNlICJzcGVjaWFsIiBpbnN0ZWFkIG9mICJwYXJ0aWN1bGFyIiB0byBxdWFsaWZ5IHRoZSAiMy4wIChjdXN0b20pIgorICAgIGZvcm1hdC4KKyAgICAKKyAgICBSZXBvcnRlZC1ieTogQmVuIFBmYWZmIDxibHBAbmljaXJhLmNvbT4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgIHwgICAgMiArKworIG1hbi9kcGtnLXNvdXJjZS4xIHwgICAgMiArLQorIDIgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgM2MzZGNlMjQ4NDdkMDA0MDU0N2FhMmEyYmQ5ZGE1ZGNjYTJkZjBjNworQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBKdW4gMTcgMjM6NTM6MzIgMjAxMSArMDIwMAorCisgICAgZHBrZzogZW5zdXJlIHRoYXQgcG9zdF9wb3N0aW5zdF90YXNrcygpIGRvZXNuJ3QgaW50cm9kdWNlIGJhZCBkYXRhCisgICAgCisgICAgVGhlIHBlbmRpbmcgdHJpZ2dlcnMgd2VyZSByZW1vdmVkIGJlY2F1c2UgdGhlIHBvc3RpbnN0IGhhcyBqdXN0IGJlZW4KKyAgICBydW4sIHVuZm9ydHVuYXRlbHkgaW4gc29tZSBjYXNlcyBpdCB3b3VsZCByZXN0b3JlIHRoZSBzdGF0dXMgdG8KKyAgICBwZW5kaW5nLXRyaWdnZXJzLiBUaGlzIGlzIG5vdGFibHkgdGhlIGNhc2Ugd2hlbiBhIHBhY2thZ2UgaXMKKyAgICByZW1vdmVkIHdoaWxlIGJlaW5nIGluIHRyaWdnZXJzLXBlbmRpbmcgYW5kIHdoZW4gdGhlIHByZXJtIGZhaWxzLgorICAgIAorICAgIEluIGZhY3QgaXQgd2FzIG5vdCBjb3JyZWN0IHRvIHJlbW92ZSB0aGUgcGVuZGluZyB0cmlnZ2VycyBpbiB0aGlzCisgICAgZnVuY3Rpb24gYmVjYXVzZSBvbmx5ICJwb3N0aW5zdCBjb25maWd1cmUiIHNob3VsZCBjbGVhciB0aGUgcGVuZGluZworICAgIHRyaWdnZXJzLiBUaHVzIG1vdmUgdGhlIHJlbW92YWwgb2YgdGhlIHBlbmRpbmcgdHJpZ2dlcnMgdG8KKyAgICBkZWZlcnJlZF9jb25maWd1cmUoKSBpbiBzcmMvY29uZmlndXJlLmMgYW5kIHJlc2V0IHRoZSBzdGF0dXMKKyAgICB0byBpdHMgIm5vcm1hbCIgdmFsdWUgd2hlbiB0aGUgdGFyZ2V0IHN0YXR1cyBpcyBvbmUgb2YgdHJpZ2dlcnMtYXdhaXRlZCwKKyAgICB0cmlnZ2Vycy1wZW5kaW5nIG9yIGluc3RhbGxlZC4KKyAgICAKKyAgICBXaXRoIHRoaXMgY2hhbmdlLCBpdCdzIG5vIGxvbmdlciBwb3NzaWJsZSB0byBoYXZlIGEgc3RhdHVzIG9mCisgICAgdHJpZ2dlcnMtcGVuZGluZyB3aXRob3V0IGFueSBwZW5kaW5nIHRyaWdnZXIgaW4gdHJpZ3BlbmRfaGVhZC4KKyAgICAKKyAgICBOb3RlIHRoYXQgZGVzcGl0ZSB0aGlzIGNoYW5nZSwgdGhlIHBlbmRpbmcgdHJpZ2dlcnMgYXJlIGxvc3QKKyAgICBkdXJpbmcgYSBmYWlsZWQgcmVtb3ZhbCBiZWNhdXNlIGRwa2cgc3dpdGNoZXMgdGhlIHBhY2thZ2UgdG8KKyAgICBoYWxmY29uZmlndXJlZCBiZWZvcmUgcnVubmluZyAicHJlcm0gcmVtb3ZlIiBhbmQgbW9kc3RhdGRiX25vdGUoKQorICAgIGRyb3BzIHRoZSBwZW5kaW5nIHRyaWdnZXJzIGluIHRoYXQgc2l0dWF0aW9uLgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDQgKystLQorIHNyYy9jb25maWd1cmUuYyAgfCAgICAxICsKKyBzcmMvaGVscC5jICAgICAgIHwgICAgNyArKysrKy0tCisgMyBmaWxlcyBjaGFuZ2VkLCA4IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBhMzZjYWRiYTQxYjE5ZDU5MDhiZGZjYjY1OGNmMDFhZjA3YzE0MzZhCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEp1biAxNyAyMzoyMjo1NSAyMDExICswMjAwCisKKyAgICBkcGtnOiBlbnN1cmUgdGhhdCB0cmlnX3RyYW5zaXRpb25hbF9hY3RpdmF0ZSgpIGRvZXNuJ3QgaW50cm9kdWNlIGJhZCBkYXRhCisgICAgCisgICAgdHJpZ190cmFuc2l0aW9uYWxfYWN0aXZhdGUoKSBpcyBlbXB0eWluZyBUcmlnZ2Vycy1QZW5kaW5nIHdpdGhvdXQKKyAgICBlbnN1cmluZyB0aGF0IHRoZSBzdGF0dXMgaXMgc2V0IGJhY2sgdG8gc29tZXRoaW5nIHdoaWNoIGlzIG5vdAorICAgIHRyaWdnZXJzLXBlbmRpbmcuIEluIHRoZW9yeSBpdCdzIG9rIGJlY2F1c2UgdGhlIHRyaWdfcGFyc2VfY2koKQorICAgIGNhbGwgaXMgc3VwcG9zZWQgdG8gcmVhY3RpdmF0ZSBhbGwgdGhlIHRyaWdnZXJzLiBCdXQgaWYgdGhlcmUncyBubworICAgIHRyaWdnZXJzIGZpbGUgYW55IG1vcmUgdGhlbiB3ZSdyZSBlZmZlY3RpdmVseSBpbnRyb2R1Y2luZyBhIHNrZXcKKyAgICB3aGljaCBpcyBnb2luZyB0byBiZSBmYXRhbCB0aGUgbmV4dCB0aW1lIHdlIHRyeSB0byB3cml0ZSBkb3duCisgICAgdGhlIHN0YXR1cyBmaWxlLgorICAgIAorICAgIFRoZSBkaXNwYXJpdGlvbiBvZiB0aGUgdHJpZ2dlcnMgZmlsZSBjYW4gaGFwcGVuIHdpdGggZmlsZSBzeXN0ZW0gcHJvYmxlbXMsCisgICAgYmFkIHVzZXIgbWFuaXB1bGF0aW9uIG9yIGV2ZW4gYW4gb2xkIGRwa2cgYnVnIHRoYXQga2VwdCB0cmlnZ2VycyBhbGl2ZQorICAgIHdoZW4gaW4gZmFjdCB0aGUgdHJpZ2dlciB3YXMgZHJvcHBlZCBmcm9tIHRoZSBwYWNrYWdlLiBPciB0aGUgdHJpZ2dlcnMKKyAgICBmaWxlIGhhcyBlZmZlY3RpdmVseSBiZWVuIHJlbW92ZWQgaW4gdGhlIHBhY2thZ2UgYnV0IHRoZSB1c2VyIGhhcyByZXN0b3JlZAorICAgIGFuIG9sZCBzdGF0dXMgZmlsZSB3aXRoIGEgdHJpZ2dlcnMtcGVuZGluZyBzdGF0dXMgdGhhdCB0aGUgY3VycmVudCBwYWNrYWdlCisgICAgc2hvdWxkIG5vIGxvbmdlciBiZSBhYmxlIHRvIGdlbmVyYXRlLgorICAgIAorICAgIEluIG90aGVyIHdvcmRzLCBwcm9wZXJseSByZXNldHRpbmcgdGhlIHN0YXR1cyBpbgorICAgIHRyaWdfdHJhbnNpdGlvbmFsX2FjdGl2YXRlKCkgbWFrZXMgZHBrZyBtb3JlIHJvYnVzdC4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAyICsrCisgc3JjL3RyaWdwcm9jLmMgICB8ICAgIDcgKysrKysrKworIDIgZmlsZXMgY2hhbmdlZCwgOSBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgMTE2NWY2ODIxNjgxMDc1ZWVlZDY2Y2E5Y2YxZTg4OWEwNTdmNjM2YworQXV0aG9yOiBMdWRvdmljIEJyZW50YSA8bHVkb3ZpY0BsdWRvdmljLWJyZW50YS5vcmc+CitEYXRlOiAgIFdlZCBKdW4gMTUgMDY6NDg6MTAgMjAxMSArMDIwMAorCisgICAgZHBrZy1nZW5jb250cm9sOiBSdW4gZHUgd2l0aCAtLWFwcGFyZW50LXNpemUgZm9yIHRoZSBJbnN0YWxsZWQtU2l6ZSBmaWVsZAorICAgIAorICAgIFRoaXMgd2lsbCBnaXZlIGNvbnNpc3RlbnQgcmVzdWx0cyBpbmRlcGVuZGVudCBvZiBidWlsZCBzeXN0ZW0uCisgICAgCisgICAgRXZlbiB0aG91Z2ggdGhpcyB3aWxsIGtlZXAgbm90IHByb3ZpZGluZyBhY2N1cmF0ZSBlbm91Z2ggaW5mb3JtYXRpb24KKyAgICBmb3IgdGhlIGZpZWxkJ3MgcHVycG9zZSBhbmQgYXMgc3VjaCBzb21lIHRpbWVzIHRoZSBzaXplIHJlcG9ydGVkIHdpbGwKKyAgICBiZSBsZXNzIHRoYW4gdGhlIHNwYWNlIGV2ZW50dWFsbHkgdXNlZCwgaGF2aW5nIHRoZSB2YWx1ZSBjaGFuZ2luZworICAgIGRlcGVuZGluZyBvbiB0aGUgYnVpbGQgc3lzdGVtIGlzIGp1c3QgYm9ndXMuCisgICAgCisgICAgQ2xvc2VzOiAjNjMwNTMzCisgICAgCisgICAgU2lnbmVkLW9mZi1ieTogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgfCAgICAzICsrKworIHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsIHwgICAgMyArKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDUgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGY3MjA1ZjQ5MWMxZjY4YTM2ZjYzZDY1MGViNzgwNDM2ZjFmYzdmZTcKK0F1dGhvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitEYXRlOiAgIFN1biBKdW4gMTIgMTQ6MjU6NTAgMjAxMSArMDIwMAorCisgICAgVXBkYXRlIEdlcm1hbiB0cmFuc2xhdGlvbiBvZiBtYW51YWwgcGFnZXMKKyAgICAKKyAgICBVcGRhdGUgdG8gMjAyOXQxZjB1LgorCisgbWFuL3BvL2RlLnBvIHwgIDMxNSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAxNTggaW5zZXJ0aW9ucygrKSwgMTU3IGRlbGV0aW9ucygtKQorCitjb21taXQgOGE5MmU5MWI2YmU4YzVlZjBkM2FlZThlMzQwZDE4YjgyYjhhNDBjNQorQXV0aG9yOiBIZWxnZSBLcmV1dHptYW5uIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KK0RhdGU6ICAgU3VuIEp1biAxMiAxNDowNTowMyAyMDExICswMjAwCisKKyAgICBVcGRhdGUgR2VybWFuIHNjcmlwdHMgdHJhbnNsYXRpb24KKyAgICAKKyAgICBVcGRhdGUgdG8gNTE2dAorCisgc2NyaXB0cy9wby9kZS5wbyB8ICAzMjAgKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAxNTkgaW5zZXJ0aW9ucygrKSwgMTYxIGRlbGV0aW9ucygtKQorCitjb21taXQgOWM1OTA2NTFkYzZhNGQ2NDFmNGFiZGIxMjAwZGE3MWMyMWY1YmQ3MgorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBKdW4gMTIgMTE6NDE6MjMgMjAxMSArMDIwMAorCisgICAgZHBrZy1zb3VyY2U6IHVuYXBwbGllZCBwYXRjaGVzIGRvIG5vdCB3YXJyYW50IGEgd2FybmluZworICAgIAorICAgIFRoZXJlIGFyZSBwZXJmZWN0bHkgbGVnaXRpbWF0ZSBjYXNlcyB3aGVyZSB0aGUgcGF0Y2hlcyBhcmUgbm90IGFwcGxpZWQKKyAgICBhbmQgdGhlcmUncyBubyBuZWVkIHRvIG91dHB1dCBhIGxvbmcgd2FybmluZyBhYm91dCB0aGlzLiBBIGJyaWVmIG1lc3NhZ2UKKyAgICBpcyBtb3JlIHRoYW4gZW5vdWdoLgorCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtICAgICAgIHwgICAgMiArLQorIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbSB8ICAgIDMgKy0tCisgMiBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBlNjA3MThiZTU2NzQ1OGU4NGY2ZDNmNjUwYTRmMmIxM2RkMjFmMWQ2CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIEp1biAxMiAxMToyNzoyOCAyMDExICswMjAwCisKKyAgICBkcGtnLXNvdXJjZTogLS1hZnRlci1idWlsZCB1bmFwcGxpZXMgcGF0Y2hlcyBhcHBsaWVkIGR1cmluZyAtLWJlZm9yZS1idWlsZAorICAgIAorICAgIEltcGxlbWVudCB0aGlzIGxvZ2ljIGZvciB0aGUgIjIuMCIgYW5kICIzLjAgKHF1aWx0KSIgc291cmNlIGZvcm1hdHMuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAyICsrCisgbWFuL2Rwa2ctc291cmNlLjEgICAgICAgICAgICAgICAgICAgICAgIHwgICAzMSArKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtICAgICAgIHwgICAxMyArKysrKysrKysrKystCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtIHwgICAxOCArKysrKysrKysrKysrKysrKysKKyA0IGZpbGVzIGNoYW5nZWQsIDQ0IGluc2VydGlvbnMoKyksIDIwIGRlbGV0aW9ucygtKQorCitjb21taXQgZTIxNWVkZWJmODljYjM0MjcxOGIwZDlhMWZhZGE2OGU0MTRlMTc5OAorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBKdW4gMTIgMDk6NTc6MTggMjAxMSArMDIwMAorCisgICAgRml4IHR5cG8gaW4gRnJlbmNoIHRyYW5zbGF0aW9uIG9mIGRwa2ctc291cmNlKDEpLgorCisgbWFuL3BvL2ZyLnBvIHwgICAgMiArLQorIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgNDZkNjE5MmQ0MDcwYjAzMjRiODM3MTA1ZTk5NTlhNTAxZTY1NDMzZAorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBKdW4gMTEgMjI6NDk6NTMgMjAxMSArMDIwMAorCisgICAgZHBrZy1zb3VyY2U6IHN1cHBvcnQgZGViaWFuL3NvdXJjZS9sb2NhbC1wYXRjaC1oZWFkZXIKKyAgICAKKyAgICBVc2VmdWwgdG8gdXNlIGluIGNvbWJpbmF0aW9uIHdpdGggYSAtLXNpbmdsZS1kZWJpYW4tcGF0Y2ggb3B0aW9uCisgICAgaW4gZGViaWFuL3NvdXJjZS9sb2NhbC1vcHRpb25zLgorICAgIAorICAgIFRoZSBjb21taXQgYWxzbyBjaGFuZ2VzIHRoZSBwbGFjZSB3aGVyZSB0aGUgbG9jYWwtb3B0aW9ucyBmaWxlIGlzIGlnbm9yZWQuCisgICAgSW5zdGVhZCBvZiB1c2luZyB0aGUgZGVmYXVsdCBkaWZmX2lnbm9yZSByZWdleHAsIGl0J3MgaGFyZGNvZGVkIGluIHRoZQorICAgIGluaXRpYWxpemF0aW9uIGZ1bmN0aW9uIGluIGNhc2UgdGhlIGRlZmF1bHQgcmVnZXhwIGlzIG5vdCB1c2VkLgorICAgIAorICAgIFN1Z2dlc3RlZC1ieTogUnVzcyBBbGxiZXJ5IDxycmFAZGViaWFuLm9yZz4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDMgKysrCisgbWFuL2Rwa2ctc291cmNlLjEgICAgICAgICAgICAgICAgICAgICAgIHwgICAxMSArKysrKysrLS0tLQorIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbSAgICAgICAgICB8ICAgIDYgKysrLS0tCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtICAgICAgIHwgICAgNyArKysrLS0tCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtICAgICAgIHwgICAgNSArKysrLQorIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbSB8ICAgIDUgKysrKy0KKyA2IGZpbGVzIGNoYW5nZWQsIDI1IGluc2VydGlvbnMoKyksIDEyIGRlbGV0aW9ucygtKQorCitjb21taXQgNGUyNDZmOWUzZTMxNTU0NDdmM2FhYThiYWI3ZDA3OWVlMDA2NGM1YgorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBKdW4gMTEgMTk6MDU6MjYgMjAxMSArMDIwMAorCisgICAgRHBrZzo6QnVpbGRGbGFnczogYXZvaWQgYSBQZXJsIHdhcm5pbmcgd2hlbiBIT01FIGlzIG5vdCBzZXQKKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgIHwgICAgMSArCisgc2NyaXB0cy9EcGtnL0J1aWxkRmxhZ3MucG0gfCAgICA3ICsrKysrLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDYgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IGNiZjEzZjg2YTk5YjdlZDJkM2M4OWE5Yzk5OTk2ZGZhMjYyNTc4MmUKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgSnVuIDExIDEyOjAyOjMzIDIwMTEgKzAyMDAKKworICAgIERwa2c6OlZlbmRvcjogYWRkIHRoZSBtb2R1bGUgdGhlIHN1cHBvcnRlZCBQZXJsIEFQSQorICAgIAorICAgIEJ1bXAgaXRzIHZlcnNpb24gdG8gMS4wMC4KKyAgICAKKyAgICBMaW50aWFuIHdvdWxkIGxpa2UgdG8gdXNlIGl0IHdoZW4gZHBrZy1kZXYgaXMgYWJzZW50IHRvIHByb3ZpZGUgc29tZQorICAgIHZlbmRvciBzcGVjaWZpYyBiZWhhdmlvdXIuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgIHwgICAgMiArKworIHNjcmlwdHMvRHBrZy9WZW5kb3IucG0gfCAgICAyICstCisgMiBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBiNWMzMzljMTU1YjIxY2MzOTNjYzdlYzdlNGM1NTc5ZGM1ZjAzZjZmCitBdXRob3I6IEhlbGdlIEtyZXV0em1hbm4gPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorRGF0ZTogICBUdWUgSnVuIDcgMTE6NDY6MDggMjAxMSArMDIwMAorCisgICAgVXBkYXRlIEdlcm1hbiB0cmFuc2xhdGlvbiBvZiBtYW51YWwgcGFnZXMKKyAgICAKKyAgICBVcGRhdGUgdG8gMjAyOHQxZjB1LgorCisgbWFuL3BvL2RlLnBvIHwgIDM0NiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDE4OCBpbnNlcnRpb25zKCspLCAxNTggZGVsZXRpb25zKC0pCisKK2NvbW1pdCBkYzkyN2EwMTgzZjkyNTY0NmEwNmIxMTk4ZjgzMWUyNzBmZWQ3NWQzCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIEp1biA2IDE1OjAwOjM1IDIwMTEgKzAyMDAKKworICAgIEZpeCB0eXBvIGluIGRlYmlhbi9jaGFuZ2Vsb2cgc3BvdHRlZCBieSBsaW50aWFuCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMiArLQorIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgMTRkNDhlZjlhYmMyY2UyZDM5NGU5YWU0ZDY5ZDRiYTY4YjU1MTYyMAorQXV0aG9yOiBCaWxsIEFsbG9tYmVydCA8QmlsbC5BbGxvbWJlcnRAbWF0aC51LWJvcmRlYXV4LmZyPgorRGF0ZTogICBTdW4gU2VwIDYgMTM6MTg6NTAgMjAwOSArMDIwMAorCisgICAgZHBrZy1idWlsZHBhY2thZ2U6IHN1cHBvcnQgZm9yIEJ1aWxkLUZlYXR1cmVzOiBidWlsZC1hcmNoCisgICAgCisgICAgV2l0aCB0aGlzIGZsYWcgc2V0IGluIGRlYmlhbi9jb250cm9sLCBkcGtnLWJ1aWxkcGFja2FnZSB3aWxsIHVzZQorICAgICJkZWJpYW4vcnVsZXMgYnVpbGQtYXJjaCIgb3IgImRlYmlhbi9ydWxlcyBidWlsZC1pbmRlcCIgd2hlbgorICAgIGFwcHJvcHJpYXRlLgorICAgIAorICAgIEltcHJvdmVkLWJ5OiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisgICAgU2lnbmVkLW9mZi1ieTogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICAgIHwgICAgNiArKysKKyBtYW4vZGViLXNyYy1jb250cm9sLjUgICAgICAgICAgfCAgICA3ICsrKworIG1hbi9kcGtnLWJ1aWxkcGFja2FnZS4xICAgICAgICB8ICAgMTMgKysrKy0tCisgc2NyaXB0cy9EcGtnL0J1aWxkRmVhdHVyZXMucG0gIHwgICA4NCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCisgc2NyaXB0cy9EcGtnL0NvbnRyb2wvRmllbGRzLnBtIHwgICAgMyArCisgc2NyaXB0cy9NYWtlZmlsZS5hbSAgICAgICAgICAgIHwgICAgMSArCisgc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbCAgIHwgICAxMCArKysrLQorIHNjcmlwdHMvcG8vUE9URklMRVMuaW4gICAgICAgICB8ICAgIDEgKworIDggZmlsZXMgY2hhbmdlZCwgMTE5IGluc2VydGlvbnMoKyksIDYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBiM2QwYmI0YTRjYjhhOTk0ZDM4NDE5MTJkY2NkMTE2MjI0NDk4ZjMyCitBdXRob3I6IE5pZWxzIFRoeWtpZXIgPG5pZWxzQHRoeWtpZXIubmV0PgorRGF0ZTogICBTdW4gSnVuIDUgMDA6MzE6NDkgMjAxMSArMDIwMAorCisgICAgZHBrZy12ZW5kb3I6IGZhaWwgb24gbWlzc2luZyBwYXJhbWV0ZXJzIGZvciByZXF1aXJlZCBhcmd1bWVudHMKKyAgICAKKyAgICBTaWduZWQtb2ZmLWJ5OiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgIHwgICAgMiArKworIHNjcmlwdHMvZHBrZy12ZW5kb3IucGwgfCAgICAyICsrCisgMiBmaWxlcyBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA1M2FmN2U0ODZhMTk0ZmIwMDViZWIyNDg3M2U1ZmIyNzZlODRiNDJjCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIE1heSAyOSAwOTo0MzoyMiAyMDExICswMjAwCisKKyAgICBEcGtnOjpTb3VyY2U6OlBhY2thZ2U6IGFkZCBleHRyYWN0aW9uIGZ1bmN0aW9ucyB0byB0aGUgc3VwcG9ydGVkIEFQSQorICAgIAorICAgIEFkZCB0aGUgZXh0cmFjdGlvbiBwYXJ0IG9mIERwa2c6OlNvdXJjZTo6UGFja2FnZSB0byB0aGUgc3VwcG9ydGVkIEFQSS4KKyAgICBJdCdzIHVzZWZ1bCB0byBleHRyYWN0IHNvdXJjZSBwYWNrYWdlcyB3aXRob3V0IGhhdmluZyB0byBkZXBlbmQgb24KKyAgICBkcGtnLXNvdXJjZSAoYW5kIGhlbmNlIGRwa2ctZGV2KS4KKyAgICAKKyAgICBTdWdnZXN0ZWQtYnk6IE5pZWxzIFRoeWtpZXIKKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgICAgICB8ICAgIDMgKworIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbSB8ICAxMDcgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLQorIDIgZmlsZXMgY2hhbmdlZCwgMTA5IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAzYWFkNjU3NTc0YzE0YzBlYzEzMzM4ZDEzY2I0ZDZlZWE5NGIzOTI2CitBdXRob3I6IEhlbGdlIEtyZXV0em1hbm4gPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorRGF0ZTogICBTYXQgTWF5IDI4IDE1OjIyOjIzIDIwMTEgKzAyMDAKKworICAgIFVwZGF0ZSBHZXJtYW4gc2NyaXB0cyB0cmFuc2xhdGlvbgorICAgIAorICAgIFVwZGF0ZSB0byA1MTZ0CisKKyBzY3JpcHRzL3BvL2RlLnBvIHwgICA5OCArKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDUxIGluc2VydGlvbnMoKyksIDQ3IGRlbGV0aW9ucygtKQorCitjb21taXQgOGJiZDc2Y2M5ODM2MGMyMGZmOGNhNjYwYWIxZDUzMjM0NjA4ZmY5MgorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBNYXkgMjggMTU6MTI6NTggMjAxMSArMDIwMAorCisgICAgZHBrZy1zb3VyY2U6IHJlZW5hYmxlIHRoZSBQYWNrYWdlLUxpc3QgZmllbGQKKyAgICAKKyAgICBCdXQgZHJvcCB0aGUgQXJjaGl0ZWN0dXJlIGNvbHVtbiBzaW5jZSB3ZSBoYXZlIG5vIGNsZWFyIHVzZSBjYXNlIHlldC4gSXQKKyAgICBjYW4gYWx3YXlzIGJlIGFkZGVkIGxhdGVyIG9uLiBQYXJzZXJzIHNob3VsZCB0cmVhdCB0aGUgZmllbGQgYXMgYW4KKyAgICBleHRlbmRhYmxlIG9uZS4gVGhleSBzaGFsbCBpZ25vcmUgc3VwcGxlbWVudGFyeSBjb2x1bW5zIHRoYXQgdGhleSBkbworICAgIG5vdCBrbm93LgorICAgIAorICAgIEFsc28gZHJvcCB0aGUgc291cmNlIGxpbmUsIGl0J3Mgbm90IG5lZWRlZCBzaW5jZSB0aGUgZHNjIGZpbGUgZGVzY3JpYmVzCisgICAgdGhlIHNvdXJjZSBwYWNrYWdlIGFscmVhZHkgKHNvdXJjZSBzZWN0aW9uIGFuZCBwcmlvcml0eSBhcmUgbm90IGN1cnJlbnRseQorICAgIGV4cG9ydGVkIGluIGRlZGljYXRlZCBmaWVsZHMgYnV0IHRoZXkgY2FuIGJlIGFkZGVkIGxhdGVyIGlmIHdlIHN0YXJ0CisgICAgaGF2aW5nIGEgbmVlZCBmb3IgdGhpcyBpbmZvcm1hdGlvbikuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgIHwgICAgNCArKysrCisgc2NyaXB0cy9kcGtnLXNvdXJjZS5wbCB8ICAgMTAgKystLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCA4IGRlbGV0aW9ucygtKQorCitjb21taXQgNTg3YTFlMTdmZjQyNGVlODdkNTAxMTc5NWM1MThkYTIzODE4OWU5ZgorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBNYXkgMjggMTQ6NTY6NDkgMjAxMSArMDIwMAorCisgICAgZHBrZy1nZW5zeW1ib2xzOiB3YXJuIHdoZW4gdGhlIGdlbmVyYXRlZCBzeW1ib2xzIGZpbGVzIGlzIGVtcHR5CisgICAgCisgICAgSXQgaW5kaXJlY3RseSBhdm9pZHMgYSBwZXJsIHdhcm5pbmcgaW4gZHBrZy1nZW5zeW1ib2xzIHdoZW4gbm8gc3ltYm9scworICAgIGZpbGUgaGFzIGJlZW4gZ2VuZXJhdGVkIChiZWNhdXNlIGl0IHdvdWxkIGhhdmUgYmVlbiBlbXB0eSkuCisgICAgCisgICAgUmVwb3J0ZWQtYnk6IE5pZWxzIFRoeWtpZXIgPG5pZWxzQHRoeWtpZXIubmV0PgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgfCAgICAyICsrCisgc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGwgfCAgICA0ICsrKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDUgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDBkNTVmMDIyNzVjMDQzOTYyMmJiNThmM2IzYzY2NThhZWY1MWZiMTEKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgTWF5IDI1IDA4OjUxOjUwIDIwMTEgKzAyMDAKKworICAgIGxpYmRwa2c6IEZpeCBmZF9mZF9maWx0ZXIgdG8gZXhlY3V0ZSB0aGUgZmlsdGVyIG9uIHRoZSBjaGlsZAorICAgIAorICAgIFRoZXJlIHdhcyBhIGxvZ2ljIGVycm9yIGluIHRoZSBwaWQgY2hlY2ssIGFuZCB0aGUgZmlsdGVyIGNvZGUgd2FzIGJlaW5nCisgICAgZXhlY3V0ZWQgaW4gdGhlIHBhcmVudCBpbnN0ZWFkIG9mIHRoZSBjaGlsZC4KKyAgICAKKyAgICBSZWdyZXNzaW9uIGludHJvZHVjZWQgaW4gY29tbWl0IDI2OWJiZWU5NzNjNDZlMWJlMGFhZWY4MmNiN2UxOWJiYzlhOTVhYTcuCisgICAgCisgICAgUmVwb3J0ZWQtYnk6IFN2ZW4gSm9hY2hpbSA8c3ZlbmpvYWNAZ214LmRlPgorCisgbGliL2Rwa2cvY29tcHJlc3MuYyB8ICAgIDIgKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDJlZDBhNDJjYjM4NjNlMmNlMDE5OWUxMzI0MmZhM2I3NjljYTc3M2QKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgTWF5IDI0IDA2OjE5OjI4IDIwMTEgKzAyMDAKKworICAgIGxpYmRwa2c6IERvIG5vdCB3YXJuIG9uIG1pc3NpbmcgQXJjaGl0ZWN0dXJlIGluIGNvbmZpZy1maWxlcyBzdGF0ZQorICAgIAorICAgIGRwa2cgYmVmb3JlIGNvbW1pdCAyZWY0MmIwMjdlNDI2NzQzMmE0MTM0M2UyOGYxMDJiMWRhZTY2OGQyICh2ZXJzaW9ucworICAgIG9sZGVyIHRoYW4gMS4xMC4xOSkgZGlkIG5vdCBrZWVwIHRoZSBBcmNoaXRlY3R1cmUgZmllbGQgaW4gdGhlIHN0YXR1cworICAgIGZpbGUsIGFuZCBhcyBzdWNoIHJlbW92ZWQgKGJ1dCBub3QgcHVyZ2VkKSBwYWNrYWdlcyBtaWdodCBzdGlsbCBiZQorICAgIGFyb3VuZCBpbiBsaXZlIHN5c3RlbXMgbGFja2luZyB0aGUgQXJjaGl0ZWN0dXJlIGZpZWxkLiBMZXQncyBzaHV0IHVwCisgICAgdGhlIHdhcm5pbmcgZm9yIG5vdy4KKyAgICAKKyAgICBDbG9zZXM6ICM2MDQyNDEKKyAgICAKKyAgICBBbmFseXNpcy1ieTogUmFwaGFlbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisgICAgU2lnbmVkLW9mZi1ieTogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDIgKysKKyBsaWIvZHBrZy9wYXJzZS5jIHwgICAgOCArKysrKysrKworIDIgZmlsZXMgY2hhbmdlZCwgMTAgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IGU0Y2IxMmE3MTA0NTdiMTAzYTc1NDRjNGRlNWU5ZmMxYjJiZDI0ZDgKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgTWF5IDIxIDEwOjM4OjMyIDIwMTEgKzAyMDAKKworICAgIGxpYmRwa2c6IERvIG5vdCBhbGxvdyBibGFuayBsaW5lcyBpbiBmaWVsZCB2YWx1ZXMKKyAgICAKKyAgICBCbGFuayBsaW5lcyBpbiB0aGlzIGNhc2UgbWVhbiwgbGluZXMgY29udGFpbmluZyBvbmx5IHNwYWNlcyBhbmQgdGFicy4KKyAgICBUaGlzIGVuc3VyZSB0aGUgUGVybCBhbmQgQyBwYXJzZXJzIG1hdGNoLCBhbmQgaXQgZm9sbG93cyBSRkMtMjgyMiBzdHlsZQorICAgIGZvcm1hdCwgYW5kIERlYmlhbiBwb2xpY3kuCisgICAgCisgICAgQ2xvc2VzOiAjMzA4MDgyCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMSArCisgbGliL2Rwa2cvcGFyc2UuYyB8ICAgMTggKysrKysrKysrKysrKysrKy0tCisgMiBmaWxlcyBjaGFuZ2VkLCAxNyBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgNTg4MDc3ZmRiYzM1MGQwNzMzY2U1Y2I4YTI5OGQzMTdjZmRhMTkyNgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBNYXkgMjEgMDY6NTk6NDQgMjAxMSArMDIwMAorCisgICAgRHBrZzo6U291cmNlOjpQYWNrYWdlOiBBZGQg4oCYLmhnc2lnc+KAmSB0byB0aGUgZGVmYXVsdCBpZ25vcmUgbGlzdHMKKyAgICAKKyAgICBDbG9zZXM6ICM2Mjc0NjIKKyAgICAKKyAgICBCYXNlZC1vbi1wYXRjaC1ieTogSmFrdWIgV2lsayA8andpbGtAZGViaWFuLm9yZz4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgICAgICB8ICAgIDIgKysKKyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG0gfCAgICAzICsrLQorIDIgZmlsZXMgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgYjgwMzhlZjQ3MjFkNTNiYjAzNzU4M2I5MzU1YTFmMDBkYmNkYzc0MAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBNYXkgMjIgMTY6MTE6NDAgMjAxMSArMDIwMAorCisgICAgbGliZHBrZzogUHJvcGVybHkgcmVzZXQgZmlsZXRyaWdnZXJzX2VkaXRlZCBpbiB0cmlnX2ZpbGVfaW50ZXJlc3RzX3NhdmUKKyAgICAKKyAgICBUaGUgZnVuY3Rpb24gd2FzIG5vdCByZXNldHRpbmcgZmlsZXRyaWdnZXJzX2VkaXRlZCB3aGVuIG5vIHRyaWdnZXJzIHdlcmUKKyAgICBsZWZ0LCBhbmQgZHVwbGljYXRlZCBwYXJ0IG9mIHRoZSBleGlzdGluZyBmdW5jdGlvbmFsaXR5LgorICAgIAorICAgIFJlZmFjdG9yIGludG8gdHJpZ19maWxlX2ludGVyZXN0c19yZW1vdmUoKSBhbmQKKyAgICB0cmlnX2ZpbGVfaW50ZXJlc3RzX3VwZGF0ZSgpIHRvIG1ha2UgdGhlbSB1c2UgdGhlIHNhbWUgbWFpbiBjb2RlIHBhdGguCisgICAgCisgICAgUmVncmVzc2lvbiBpbnRyb2R1Y2VkIGluIGNvbW1pdCA4M2I1OTEzNDBlYzkyY2YwZTk4MTRlODQwM2RhNzcxMWNiYmM2YjQ2LgorCisgbGliL2Rwa2cvdHJpZ2xpYi5jIHwgICAzNCArKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyMSBpbnNlcnRpb25zKCspLCAxMyBkZWxldGlvbnMoLSkKKworY29tbWl0IDEwNDg4MmY3ZmVmMDJkNTNlMWI4NjhlNzQ2YjhlOWZmMzEzZWIxZjUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgTWF5IDI0IDA2OjU1OjM0IDIwMTEgKzAyMDAKKworICAgIGxpYmRwa2c6IERvIG5vdCBmYWlsIG9uIGN1cnJlbnQgZmlsZSByZW1vdmFsIGluIHRya19leHBsaWNpdF9pbnRlcmVzdF9jaGFuZ2UKKyAgICAKKyAgICBJbiBjYXNlIHRoZSBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGlzIGVtcHR5IGFuZCBhcyBzdWNoIG5vdCBuZWVkZWQKKyAgICBhbnkgbG9uZ2VyLCBkbyBub3QgZmFpbCBpZiB0aGUgY3VycmVudCBmaWxlIGlzIG5vdCBwcmVzZW50LgorICAgIAorICAgIFJlZ3Jlc3Npb24gaW50cm9kdWNlZCBpbiBjb21taXQgODNiNTkxMzQwZWM5MmNmMGU5ODE0ZTg0MDNkYTc3MTFjYmJjNmI0Ni4KKworIGxpYi9kcGtnL3RyaWdsaWIuYyB8ICAgIDIgKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDVjMzJmMGMwZTRjNTM3ZmMwMGJmM2NjYWNlODc5OWZlMjdhNTIyYWEKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gTWF5IDIyIDE2OjA3OjQ5IDIwMTEgKzAyMDAKKworICAgIGxpYmRwa2c6IFByb3Blcmx5IHBvcCB0aGUgY2xlYW51cCBoYW5kbGVyIGluIHRya19leHBsaWNpdF9pbnRlcmVzdF9jaGFuZ2UKKyAgICAKKyAgICBJbiBjYXNlIG9mIGVycm9yIGFsbCBjbGVhbnVwIGhhbmRsZXJzIHdpbGwgZ2V0IGNhbGxlZCBidXQgdGhlIG5mIEZJTEUKKyAgICB2YXJpYWJsZSBtaWdodCBoYXZlIGJlZW4gYWxyZWFkeSBjbG9zZWQsIHdoaWNoIHdvdWxkIGNhdXNlIHRoZQorICAgIHN1YnNlcXVlbnQgZmNsb3NlKCkgdG8gZmFpbCwgdGhpcyB3aWxsIG5vdCBiZSBmYXRhbCBhcyB0aGUgcmV0dXJuCisgICAgdmFsdWUgZm9yIGZjbG9zZSgpIGluIHRoZSBjbGVhbnVwIGhhbmRsZXIgaXMgbm90IGNoZWNrZWQsIGJ1dCBpdCdzCisgICAgc3RpbGwgbm90IGNvcnJlY3QuCisgICAgCisgICAgUmVmYWN0b3IgdHJrX2V4cGxpY2l0X2ludGVyZXN0X2NoYW5nZSgpIGludG8KKyAgICB0cmtfZXhwbGljaXRfaW50ZXJlc3RfcmVtb3ZlKCksIHRya19leHBsaWNpdF9pbnRlcmVzdF9mbHVzaCgpIGFuZAorICAgIHRya19leHBsaWNpdF9pbnRlcmVzdF9jb21taXQoKSB0byByZWZsb3cgdGhlIGZ1bmN0aW9uIGFuZCBtYWtlIGl0CisgICAgY2xlYXJlciBieSBzaGFyaW5nIHRoZSBtYWluIGNvZGUgcGF0aC4KKyAgICAKKyAgICBSZWdyZXNzaW9uIGludHJvZHVjZWQgaW4gY29tbWl0IDgzYjU5MTM0MGVjOTJjZjBlOTgxNGU4NDAzZGE3NzExY2JiYzZiNDYuCisKKyBsaWIvZHBrZy90cmlnbGliLmMgfCAgIDU5ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMzcgaW5zZXJ0aW9ucygrKSwgMjIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA4M2I1OTEzNDBlYzkyY2YwZTk4MTRlODQwM2RhNzcxMWNiYmM2YjQ2CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIE1heSAxOCAxMDoxMDowNCAyMDExICswMjAwCisKKyAgICBkcGtnOiBwcm9wZXJseSByZW1vdmUgdHJpZ2dlcnMgaW5mb3JtYXRpb24gZHVyaW5nIHBhY2thZ2UgcmVtb3ZhbAorICAgIAorICAgIEJlZm9yZSB0aGlzIGNoYW5nZSwgYSBwYWNrYWdlIHJlbW92YWwgd291bGQgbm90IHJlbW92ZSB0aGUgdHJpZ2dlcnMKKyAgICBpbmZvcm1hdGlvbiBmcm9tIHRoZSBpbnRlcm5hbCBmaWxlcy4gV2hlbiB5b3UgcmVpbnN0YWxsZWQgdGhlIHNhbWUKKyAgICBwYWNrYWdlIHdpdGhvdXQgYW55IHRyaWdnZXIsIGRwa2cgd291bGQgaW1wcm9wZXJseSBiZWxpZXZlIHRoYXQKKyAgICB0aGUgcGFja2FnZSBpbXBsZW1lbnRlZCBzb21lIHRyaWdnZXJzLgorICAgIAorICAgIEhvd2V2ZXIgdGhlIHRyaWdnZXJzIHdlcmUgY29ycmVjdGx5IHVucmVnaXN0ZXJlZCBkdXJpbmcgYSBwYWNrYWdlCisgICAgdXBncmFkZSB0aGF0IGRyb3BwZWQgdGhlIHRyaWdnZXJzLgorICAgIAorICAgIFdpdGggdGhpcyBjb21taXQsIHdlIGFsc28gcmVtb3ZlIHRyaWdnZXJzIGludGVyZXN0IGZpbGUgdGhhdCBhcmUgZW1wdHkgYW5kCisgICAgdGh1cyBubyBsb25nZXIgbmVlZGVkLgorCisgZGViaWFuL2NoYW5nZWxvZyAgIHwgICAgMiArKworIGxpYi9kcGtnL3RyaWdsaWIuYyB8ICAgMjUgKysrKysrKysrKysrKysrKysrKysrKysrLQorIHNyYy9yZW1vdmUuYyAgICAgICB8ICAgIDQgKysrKworIDMgZmlsZXMgY2hhbmdlZCwgMzAgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDc5OWQzODU5OWMxMzI2YzJlNGMwYjkzNjBiMTk3MjFjMDVmOGM1NWYKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgTWF5IDYgMDY6MDg6MzAgMjAxMSArMDIwMAorCisgICAgZHBrZzogS2VlcCBwYXJlbnQgZGlyZWN0b3JpZXMgb2YgZGlyZWN0b3JpZXMga2VwdCBkdXJpbmcgcmVtb3ZhbAorICAgIAorICAgIFdoZW4gYSBkaXJlY3RvcnkgaXMga2VwdCBkdXJpbmcgcmVtb3ZhbCB0byBiZSBsYXRlciBkZWFsdCB3aXRoIGR1cmluZworICAgIHB1cmdlLCBkdWUgdG8gdGhlIGRpcmVjdG9yeSBjb250YWluaW5nIGNvbmZmaWxlcyBmcm9tIHRoZSBzYW1lIHBhY2thZ2UsCisgICAgaXQgbm90IGJlaW5nIGVtcHR5LCBldGMsIHdlIHNob3VsZCBrZWVwIGFsbCBpdHMgcGFyZW50IHRvIG1ha2Ugc3VyZQorICAgIHdoZW4gdGhlIHN1YnNlcXVlbnQgdHJpYWwgaXMgcGVyZm9ybWVkIHRoZXkgYXJlIHByb3Blcmx5IGNsZWFuZWQgdXAuCisgICAgCisgICAgQ2xvc2VzOiAjNDU0Njk0CisgICAgCisgICAgQmFzZWQtb24tcGF0Y2gtYnk6IE9uZMWZZWogU3Vyw70gPG9uZHJlakBkZWJpYW4ub3JnPgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDMgKysrCisgc3JjL2hlbHAuYyAgICAgICB8ICAgMzEgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKworIHNyYy9tYWluLmggICAgICAgfCAgICAyICsrCisgc3JjL3JlbW92ZS5jICAgICB8ICAgIDggKysrKysrKysKKyA0IGZpbGVzIGNoYW5nZWQsIDQ0IGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBlNjdlMDcxZTU4MzZjN2JkNzliYjVhMTU2MWVjZGE3NjBmMDlhMDFmCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIE1heSAxNSAxNzozODoxOCAyMDExICswMjAwCisKKyAgICBkcGtnOiBPbiBwdXJnZSByZW1vdmUgdGhlIGNvbmZmaWxlcyBmcm9tIHRoZSBmaWxlIGxpc3QgZmlsZQorICAgIAorICAgIFRoaXMgbWFrZXMgc3VyZSB0aGUgZmlsZXMgbGlzdCBpcyBjb3JyZWN0IGFmdGVyIHRoZSBjb25mZmlsZXMgaGF2ZSBiZWVuCisgICAgcmVtb3ZlZCBmcm9tIGRpc2sgYW5kIHRoZSBzdGF0dXMgZGIgaGFzIGJlZW4gdXBkYXRlZC4KKworIHNyYy9yZW1vdmUuYyB8ICAgIDYgKysrKysrCisgMSBmaWxlcyBjaGFuZ2VkLCA2IGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBhZDA3NjI5NzU3NTk5ZjhmMjdlYzYzODY0YjBjMzRmZDc1MTU4ODJjCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIE1heSAxNSAxNzozMzoxNCAyMDExICswMjAwCisKKyAgICBkcGtnOiBEbyBub3QgcHJlc2VydmUgYW5kIGNoZWNrIGZvciBjb25mZmlsZXMgb24gbGVmdG92ZXIgZGlyIHJlbW92YWwKKyAgICAKKyAgICBUaGUgZnVuY3Rpb24gcmVtb3ZhbF9idWxrX3JlbW92ZV9sZWZ0b3Zlcl9kaXJzKCkgd2FzIHN1cHBvc2VkIHRvIGJlCisgICAgY2FsbGVkIG9ubHkgdy8gbGVmdCBvdmVyIGRpcnMsIGJ1dCByZW1vdmFsX2J1bGtfcmVtb3ZlX2NvbmZpZ2ZpbGVzKCkKKyAgICBkb2VzIG5vdCByZW1vdmUgdGhlbSBmcm9tIHRoZSBmaWxlIGxpc3Qgd2hlbiB1bmxpbmtpbmcuCisgICAgCisgICAgRG8gbm90IGNoZWNrIGlmIHRoZSBkaXJlY3RvcnkgbmVlZHMgdG8gYmUgcHJlc2VydmVkIGlmIHRoZSBwYWNrYWdlIGhhcworICAgIGNvbmZmaWxlcyBpbnNpZGUsIGJlY2F1c2UgaXQgc2hvdWxkIGhhdmUgbm9uZSwgYWx0aG91Z2ggaXQgd291bGQgbWF0Y2gKKyAgICBnaXZlbiB0aGF0IHRoZSBmaWxlIGxpc3Qgc3RpbGwgY29udGFpbnMgY29uZmZpbGVzLgorICAgIAorICAgIERvIG5vdCBwcmVzZXJ2ZSBhbnkgbGluZ2VyaW5nIGNvbmZmaWxlcyBpbiB0aGUgZmlsZSBsaXN0IGFzIHRoZXkgYXJlCisgICAgbm8gbG9uZ2VyIG9uIGRpc2sgYW55d2F5LgorCisgc3JjL3JlbW92ZS5jIHwgICAgOSArKysrLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgNSBkZWxldGlvbnMoLSkKKworY29tbWl0IDA1ODI2NDVjMjgzZjM5YTYwMjIwMWRjMGNmMGZjOGE2ZTk4NmZlNzYKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gTWF5IDE1IDE3OjA3OjUzIDIwMTEgKzAyMDAKKworICAgIGRwa2c6IENoYW5nZSB3cml0ZV9maWxlbGlzdF9leGNlcHQoKSB0byB0YWtlIGEgbWFzayBpbnRlYWQgb2YgYSBib29sCisgICAgCisgICAgVGhpcyBnZW5lcmFsaXplcyB0aGUgZnVuY3Rpb24gdG8gZXhjbHVkZSBhbnkgZGVzaXJlZCBmaWxlIG5hbWVub2RlCisgICAgZmxhZyBhbmQgbm90IGp1c3QgZm5uZl9lbGlkZV9vdGhlcl9saXN0cy4gSXQgYWxzbyBnZXRzIHJpZCBvZiB0aGUKKyAgICBib29sIHZhcmlhYmxlIHdoaWNoIGlzIGdlbmVyYWxseSBhIGJhZCBpbnRlcmZhY2UgdG8gY2hhbmdlIGZ1bmN0aW9uCisgICAgYmVoYXZpb3VyIHdoZW4gaXQgc2hvdWxkIHJlYWxseSBiZSBhIG5hbWVkIGZsYWcgb3IgYSBtYXNrLgorCisgc3JjL2ZpbGVzZGIuYyAgICB8ICAgIDggKysrKy0tLS0KKyBzcmMvZmlsZXNkYi5oICAgIHwgICAgMiArLQorIHNyYy9wcm9jZXNzYXJjLmMgfCAgICAzICsrLQorIDMgZmlsZXMgY2hhbmdlZCwgNyBpbnNlcnRpb25zKCspLCA2IGRlbGV0aW9ucygtKQorCitjb21taXQgZjY1MzE2YTVlYzQ4OGE1MmNiN2Q1ZmE5ODgyNGMyMTYyOWRlMjZiNgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBNYXkgMTUgMDM6Mzk6MzUgMjAxMSArMDIwMAorCisgICAgbGliZHBrZzogVXNlIG5ldyB3cml0ZWRiIGZsYWdzIGluc3RlYWQgb2YgaW5kZXBlbmRlbnQgYm9vbCB2YXJpYWJsZXMKKyAgICAKKyAgICBVc2luZyBib29sIHRvIHBhc3MgZmxhZ3MgdG8gYSBmdW5jdGlvbiBhbHJlYWR5IHRha2luZyBzZXZlcmFsIGFyZ3VtZW50cworICAgIGlzIGdlbmVyYWxseSBhIGJhZCBpbnRlcmZhY2UsIGFzIGl0J3Mgbm90IGNsZWFyIGZyb20gdGhlIGNhbGwgc2l0ZXMgd2hhdAorICAgIGVhY2ggb2YgdGhlbSByZWZlciB0by4gU3dpdGNoIHRvIGEgcHJvcGVyIGVudW0gd2l0aCBuYW1lZCBmbGFncyBpbnN0ZWFkLgorCisgbGliL2Rwa2cvZGJtb2RpZnkuYyB8ICAgIDYgKysrLS0tCisgbGliL2Rwa2cvZHBrZy1kYi5oICB8ICAgIDkgKysrKysrKystCisgbGliL2Rwa2cvZHVtcC5jICAgICB8ICAgMTAgKysrKystLS0tLQorIHNyYy91cGRhdGUuYyAgICAgICAgfCAgICAyICstCisgNCBmaWxlcyBjaGFuZ2VkLCAxNyBpbnNlcnRpb25zKCspLCAxMCBkZWxldGlvbnMoLSkKKworY29tbWl0IGQ2ZjE3NmI0YjhhZDVmZGY3N2YwNTcwNGVlNGMxYWJiM2ZhMjNhYjQKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gTWF5IDE1IDAzOjMzOjUzIDIwMTEgKzAyMDAKKworICAgIGRwa2c6IE1ha2UgZmQgdmFyaWFibGUgcGFzc2VkIHRvIGN1X2Nsb3NlZmQgc3RhdGljCisgICAgCisgICAgVGhlIHB1c2hfY2xlYW51cCgpIGNhbGwgdGFrZXMgYSBwb2ludGVyIHRvIHRoZSBmZCB2YXJpYWJsZSB3aGljaCByZXNpZGVzCisgICAgaW4gdGhlIHN0YWNrLiBJbiBjYXNlIG9mIGVycm9yIGFuZCBzdGFjayB1bndpbmRpbmcgZHVlIHRvIGxvbmdqbXAsIHRoZQorICAgIHZhbHVlIG9mIGZkIG1pZ2h0IGdldCBvdmVyd3JpdHRlbiBieSBzdWJzZXF1ZW50IHN0YWNrIHVzYWdlLiBUaHVzIHRoaXMKKyAgICBraW5kIG9mIHZhcmlhYmxlcyBuZWVkIHRvIGJlIHN0YXRpYyBzbyB0aGF0IHRoZWlyIHZhbHVlIGNhbm5vdCBjaGFuZ2UKKyAgICBvbiBzdGFjayByb2xsYmFjay4KKworIHNyYy9maWxlc2RiLmMgfCAgICAyICstCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA3MzM3NDQ3NzA0ZDY5YTU1M2NmNDRmNDYyYWQ3YzIyZTQwMjY2NDZjCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIE1heSAxNSAwMzozMjozMiAyMDExICswMjAwCisKKyAgICBsaWJkcGtnOiBSZW5hbWUgY3VfY2xvc2VmaWxlIHRvIGN1X2Nsb3Nlc3RyZWFtCisgICAgCisgICAgVGhpcyBzaG91bGQgbWFrZSBpdCBjbGVhciB3ZSBhcmUgcmVmZXJyaW5nIHRvIGEgc3RkaW8gc3RyZWFtLCBhbmQgbm90CisgICAgdGhlIGZ1dHVyZSBwbGFubmVkIOKAmHN0cnVjdCBmaWxl4oCZLgorCisgbGliL2Rwa2cvY2xlYW51cC5jIHwgICAgMiArLQorIGxpYi9kcGtnL2Rwa2cuaCAgICB8ICAgIDIgKy0KKyBsaWIvZHBrZy90cmlnbGliLmMgfCAgICA4ICsrKystLS0tCisgc3JjL2ZpbGVzZGIuYyAgICAgIHwgICAgMiArLQorIHNyYy9wcm9jZXNzYXJjLmMgICB8ICAgIDIgKy0KKyA1IGZpbGVzIGNoYW5nZWQsIDggaW5zZXJ0aW9ucygrKSwgOCBkZWxldGlvbnMoLSkKKworY29tbWl0IDIxNmI3YTMwYmFiMzE4MTdkY2EwOWJhMmM3YzYyOTg4M2NlZTFlZmEKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgTWF5IDEyIDAyOjU3OjMwIDIwMTEgKzAyMDAKKworICAgIGRwa2c6IE9uIHB1cmdlIGNvcnJlY3RseSByZW1vdmUgYSBzeW1saW5rIHBvaW50aW5nIHRvIGEgZGlyZWN0b3J5CisgICAgCisgICAgVGhlIGNvZGUgd2FzIHRyZWF0aW5nIHN5bWxpbmtzIHRvIGRpcmVjdG9yaWVzIGFzIGRpcmVjdG9yaWVzLCBidXQgdGhlbgorICAgIGl0IHdhcyB0cnlpbmcgdG8gcm1kaXIoMikgdGhlbSwgd2hpY2ggZmFpbGVkLiBJbiBzdWNoIGNhc2UganVzdCB2ZXJpZnkKKyAgICBpdCdzIGEgc3ltbGluayBhbmQgdW5saW5rKDIpIHRoZW0gaW5zdGVhZC4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAyICsrCisgc3JjL3JlbW92ZS5jICAgICB8ICAgIDkgKysrKysrKysrCisgMiBmaWxlcyBjaGFuZ2VkLCAxMSBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgZWE4MWIyYjE0NGY3MGRlN2EwNjUyYjY1NGRlNGQyZmU3NjVmZjMyNworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBNYXkgMTIgMDI6NTI6MTcgMjAxMSArMDIwMAorCisgICAgZHBrZzogQWRkIGRlYnVnIG91dHB1dCBvbiBtYXRjaCBpbiBkaXJfaXNfdXNlZF9ieV9vdGhlcnMoKQorICAgIAorICAgIFRoZSBkZWJ1ZyBvdXRwdXQgd2FzIG5vdCBiYWxhbmNlZCwgYW5kIHdhcyBvbmx5IHByaW50aW5nIHdoZW4gbm8gbWF0Y2gKKyAgICBoYXBwZW5lZCwgbWFraW5nIHRoZSBvdXRwdXQgY29uZnVzaW5nLgorCisgc3JjL2hlbHAuYyB8ICAgIDIgKysKKyAxIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDgwNzQ0NTljZmExMzUwMmE0MjQ1NDU1NDJkYzg1ODA4ZTdlYzFkYzAKK0F1dGhvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitEYXRlOiAgIFN1biBNYXkgMTUgMTA6NTc6MTkgMjAxMSArMDIwMAorCisgICAgRml4IGNvcHlyaWdodCB5ZWFyIGluIGhlYWRlcgorCisgc2NyaXB0cy9wby9kZS5wbyB8ICAgIDQgKystLQorIDEgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgNDcxMjY3MzNiYjA4ZWE1ZTljYmRmODhlODY1YTBjZjc1OWQ3NDQ5YgorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBNYXkgMTUgMDk6NDk6MDkgMjAxMSArMDIwMAorCisgICAgZHBrZy1zb3VyY2U6IGVuc3VyZSAiYW55IiBkb2Vzbid0IGhpZGUgImFsbCIgaW4gdGhlIEFyY2hpdGVjdHVyZSBmaWVsZAorICAgIAorICAgICJhbnkiIGRvZXNuJ3QgaW1wbHkgImFsbCIgc28gd2Ugc2hvdWxkIGtlZXAgYm90aCB2YWx1ZXMgaW4gdGhlIGZpZWxkLiBUaGlzCisgICAgaXMgaW1wb3J0YW50IHNvIHRoYXQgd2FubmEtYnVpbGQgY2FuIGtub3cgd2hhdCBuZWVkcyB0byBiZSBzY2hlZHVsZWQgZm9yCisgICAgdGhlIGJ1aWxkZCB0aGF0IGRlYWxzIHdpdGggQXJjaGl0ZWN0dXJlOiBhbGwgcGFja2FnZXMuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgIHwgICAgMSArCisgc2NyaXB0cy9kcGtnLXNvdXJjZS5wbCB8ICAgIDkgKysrKysrKy0tCisgMiBmaWxlcyBjaGFuZ2VkLCA4IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBmZGRiMTY0M2JjMjIxZjIwZjZlNjA3Nzc2YzFiODIzNGRiZWJlMzI4CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IE1heSAxNCAyMzowMjoyMiAyMDExICswMjAwCisKKyAgICBsaWJkcGtnOiBrZWVwIENvbmZpZy1WZXJzaW9uIGluIHRyaWdnZXJzLWF3YWl0ZWQgc3RhdGUKKyAgICAKKyAgICBBIHBhY2thZ2UgaXMgcmVhbGx5IGZ1bGx5IGNvbmZpZ3VyZWQgYW5kIGNhbiB0aHVzIHNhdGlzZnkgZGVwZW5kZW5jaWVzCisgICAgb25seSB3aGVuIG5vIHRyaWdnZXJzIGFyZSBhd2FpdGVkLiBUaHVzIHdlIHNob3VsZCBub3QgZHJvcCBDb25maWctVmVyc2lvbgorICAgIHdoaWxlIGEgcGFja2FnZSBpcyBzdGlsbCBpbiB0cmlnZ2Vycy1hd2FpdGVkLgorCisgbGliL2Rwa2cvZHVtcC5jIHwgICAgMyArLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IGE5NDY4OTRmN2EwYjZjZTlkNzc5Yjk5MjU3MjQ2YzcwMDM3MTgyNjkKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgTWF5IDE0IDEwOjM4OjU5IDIwMTEgKzAyMDAKKworICAgIGRwa2c6IGltcHJvdmUgcHJlLWRlcGVuZGVuY3kgY2hlY2sgb24gdW5wYWNrCisgICAgCisgICAgV2hlbiBhIHByZS1kZXBlbmRlbmN5IGlzIG5vdCBzYXRpc2ZpZWQgZHVlIHRvIGEgcGFja2FnZSBpbgorICAgIHRyaWdnZXJzLWF3YWl0ZWQgc3RhdGUsIGltbWVkaWF0ZWx5IHJ1biB0aGUgdHJpZ2dlciBwcm9jZXNzaW5nCisgICAgYW5kIGNvbnRpbnVlIHdpdGhvdXQgZXJyb3JzLgorICAgIAorICAgIFRoaXMgbWFrZSBpdCBwb3NzaWJsZSB0byBibGluZGx5IHVzZSAtLW5vLXRyaWdnZXJzIGFuZCBub3QgYnJlYWsKKyAgICB3aGVuIHlvdSdyZSBub3QgZnVsbHkgY29uZmlndXJpbmcgYSBwcmUtZGVwZW5kZW5jeS4KKyAgICAKKyAgICBTZWUgdGVzdCBjYXNlIHQtcHJlZGVwZW5kcy1uby10cmlnZ2Vycy4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAyICsrCisgc3JjL3Byb2Nlc3NhcmMuYyB8ICAgMjAgKysrKysrKysrKysrKy0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDE1IGluc2VydGlvbnMoKyksIDcgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyYjhjZmE1MDcwOTU1ODcwOWQ1ZTI0ZDdhM2ZhMjdiOTI1YmNlNzRkCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IE1heSAxNCAxMDoyNjoyMyAyMDExICswMjAwCisKKyAgICBkcGtnOiBkZXBpc29rKCkgY2FuIG5vdyBzdWdnZXN0IHRvIHByb2Nlc3MgYXdhaXRlZCB0cmlnZ2VycyBmb3IgYSBwYWNrYWdlCisgICAgCisgICAgUGFja2FnZSBpbiB0cmlnZ2Vycy1hd2FpdGVkIHN0YXRlIGRvIG5vdCBzYXRpc2Z5IGRlcGVuZGVuY2llcyBidXQgdGhleQorICAgIGNvdWxkIGVhc2lseSBpZiB0aGVpciBhd2FpdGVkIHRyaWdnZXJzIHdlcmUgcHJvY2Vzc2VkLiBTbyB3ZSBlbmhhbmNlIHRoZQorICAgIGZ1bmN0aW9uIHRvIHJldHVybiBzdWNoIGEgaGludCB3aGVuIHBvc3NpYmxlLgorICAgIAorICAgIEFsbCB0aGUgY2FsbGVycyBwYXNzIE5VTEwgdG8gdGhlIG5ldyBwYXJhbWV0ZXIgc28gdGhhdCB0aGlzIGNvbW1pdAorICAgIHNob3VsZCBub3QgY2hhbmdlIHRoZSBjdXJyZW50IGJlaGF2aW91ci4KKworIHNyYy9hcmNoaXZlcy5jICAgfCAgICA4ICsrKystLS0tCisgc3JjL2RlcGNvbi5jICAgICB8ICAgMTggKysrKysrKysrKysrKysrKy0tCisgc3JjL2VucXVpcnkuYyAgICB8ICAgIDQgKystLQorIHNyYy9tYWluLmggICAgICAgfCAgICAzICsrLQorIHNyYy9wcm9jZXNzYXJjLmMgfCAgICA2ICsrKy0tLQorIDUgZmlsZXMgY2hhbmdlZCwgMjcgaW5zZXJ0aW9ucygrKSwgMTIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBmOTUxNzdmZGFjZGQ1OGUxYzI1ZmE3MjIyMTM0NzdiZDdmNTdkZjI2CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IE1heSAxNCAyMjoxMDo0MiAyMDExICswMjAwCisKKyAgICBkcGtnOiB1c2UgdGhlIGNvcnJlY3QgdmVyc2lvbiBpbiAicGtnLWZvbyBpcyB1bnBhY2tlZCwgYnV0IGlzIHZlcnNpb24gPHY+IgorICAgIAorICAgIFRoZSBlcnJvciBtZXNzYWdlIHVzZWQgd2hpbGUgYW5hbHl6aW5nIHByZS1kZXBlbmRlbmNpZXMgZGlkIGltcHJvcGVybHkKKyAgICB1c2UgdGhlIGF2YWlsYWJsZSB2ZXJzaW9uIGluc3RlYWQgb2YgdGhlIGluc3RhbGxlZCB2ZXJzaW9uLgorCisgc3JjL2RlcGNvbi5jIHwgICAgMiArLQorIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgNWY0OGI0Y2ZlMTg4NDhmYjExZWY5NmEzNGVmNTgyNmExZjM3NTdiMgorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBNYXkgMTQgMjE6MzU6MDMgMjAxMSArMDIwMAorCisgICAgZHBrZzogc21hbGwgYnVnZml4IGluIHRoZSBkZXBlbmRlbmN5IGNoZWNraW5nIGNvZGUgZm9yIHZpcnR1YWwgcGFja2FnZXMKKyAgICAKKyAgICBBIGRlcGVuZGVuY3kgb24gYSB2aXJ0dWFsIHBhY2thZ2UgcHJvdmlkZWQgYnkgYSBwYWNrYWdlIGluCisgICAgdHJpZ2dlcnMtcGVuZGluZyBzdGF0dXMgaXMgbm93IGNvcnJlY3RseSBjb25zaWRlcmVkIGFzIHNhdGlzZmllZC4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAyICsrCisgc3JjL2RlcGNvbi5jICAgICB8ICAgIDMgKystCisgMiBmaWxlcyBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAwZTBmNTlhODgyY2UzMjlkZTg4MGQ0YTc1ZjMwNzg3ZTI2MWUyY2IzCitBdXRob3I6IEpvbmF0aGFuIE5pZWRlciA8anJuaWVkZXJAZ21haWwuY29tPgorRGF0ZTogICBTYXQgTWF5IDcgMTE6MzM6NDIgMjAxMSArMDIwMAorCisgICAgbGliZHBrZzogVXNlIG5ldyBEUEtHX0JVRkZFUl9TSVpFIG1hY3JvIGluc3RlYWQgb2YgaGFyZC1jb2RlZCBsaXRlcmFsCisgICAgCisgICAgU2lnbmVkLW9mZi1ieTogSm9uYXRoYW4gTmllZGVyIDxqcm5pZWRlckBnbWFpbC5jb20+CisgICAgU2lnbmVkLW9mZi1ieTogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisgbGliL2Rwa2cvYnVmZmVyLmggICB8ICAgIDIgKysKKyBsaWIvZHBrZy9jb21wcmVzcy5jIHwgICAgOCArKysrLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQorCitjb21taXQgZThjMWE1ODYzNTcyZWFjNzE5ZTM2YjJlNDA5MDAyODcxZTZlZWU0YQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBNYXkgMSAwODowNjo1MyAyMDExICswMjAwCisKKyAgICBsaWJkcGtnOiBBZGQgbmV3IGJ1ZmZlcl9za2lwX0ludCgpIGFuZCBzd2l0Y2ggZmRfbnVsbF9jb3B5KCkgdG8gaXQKKyAgICAKKyAgICBBZGQgYSBuZXcgYnVmZmVyX3NraXAoKSBmdW5jdGlvbiBhbmQgdGhlIGV4dGVybmFsbHkgdmlzaWJsZQorICAgIGJ1ZmZlcl9za2lwX0ludCgpLCB0aGlzIHdheSB3ZSBoaWRlIHRoZSBpbXBsZW1lbnRhdGlvbiBkZXRhaWxzCisgICAgb2YgZmRfbnVsbF9jb3B5KCkuCisKKyBsaWIvZHBrZy9idWZmZXIuYyB8ICAgNDMgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKworIGxpYi9kcGtnL2J1ZmZlci5oIHwgICAxMiArKystLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDQ2IGluc2VydGlvbnMoKyksIDkgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA3NTFjMzk5ZTUwYTA4N2ZiNWM2MzY3Y2JmZDVhNTUxZTNhYzY3NmM5CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIE1heSA5IDE5OjU5OjIxIDIwMTEgKzAyMDAKKworICAgIGxpYmRwa2c6IFJlbW92ZSB1bm5lZWRlZCBjaGVja3Mgb24gYnVmZmVyX2NvcHkgbG9vcCB0ZXJtaW5hdGlvbgorICAgIAorICAgIFRoZSB3aGlsZSBsb29wIGNoZWNrcyB1bm5lY2Vzc2FyaWx5IGZvciBieXRlc3JlYWQgYW5kIGJ5dGVzd3JpdHRlbgorICAgIGJlaW5nID49IDAsIGJ1dCB0aGF0J3MgYWx3YXlzIGdvaW5nIHRvIGJlIHRydWUsIGFzIGluIGNhc2Ugb2YgcmVhZCBvcgorICAgIHdyaXRlIGVycm9yIHRoZSBjb2RlIGJyZWFrcyBvdXQgb2YgdGhlIGxvb3AuCisKKyBsaWIvZHBrZy9idWZmZXIuYyB8ICAgIDIgKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGZiYzkzMDk2OGUzOTY2OTRiMjkzZWUzNTE3N2M5MzA1ZjQwN2NmMzAKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gTWF5IDIgMjE6NTM6MzUgMjAxMSArMDIwMAorCisgICAgbGliZHBrZzogUmVuYW1lIHN0cnVjdCBidWZmZXJfd3JpdGVfbWQ1Y3R4IHRvIGJ1ZmZlcl9tZDVfY3R4CisKKyBsaWIvZHBrZy9idWZmZXIuYyB8ICAgMTIgKysrKysrLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA2IGluc2VydGlvbnMoKyksIDYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA3ZTcyMzZmN2UxOWYxYjRlMjM4MzU5ZDg4Nzc1NmU3MDQ0MzI4ODkxCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIE1heSAzIDEwOjI4OjI2IDIwMTEgKzAyMDAKKworICAgIGxpYmRwa2c6IEV4cGFuZCBidWZmZXJfY29weV9UWVBFIG1hY3JvIGluc3RhbmNlcworICAgIAorICAgIFRoaXMgbWFrZXMgdGhlIGNvZGUgZWFzaWVyIHRvIGRlYnVnLCBhcyBpdCB3aWxsIGJlIGFibGUgdG8gdHJhY2sKKyAgICBjb3JyZWN0IGNvZGUgbGluZXMsIGl0IGFsc28gYWxsb3dzIHRvIG1vcmUgZWFzaWx5IHNlZSB0aGUgY29kZQorICAgIGR1cGxpY2F0aW9uIGV4cGxpY2l0bHksIGFuZCBtYWtlcyB0aGUgY29kZSBzbGlnaHRseSBtb3JlIGNsZWFyIGFzCisgICAgaXQncyB1c2luZyB0aGUgcmVhbCBzdHJ1Y3R1cmUgbWVtYmVyIGFuZCB0eXBlIG5hbWVzLgorCisgbGliL2Rwa2cvYnVmZmVyLmMgfCAgIDY0ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA0MSBpbnNlcnRpb25zKCspLCAyMyBkZWxldGlvbnMoLSkKKworY29tbWl0IDI2OWJiZWU5NzNjNDZlMWJlMGFhZWY4MmNiN2UxOWJiYzlhOTVhYTcKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgTWF5IDcgMTE6Mjc6MDYgMjAxMSArMDIwMAorCisgICAgbGliZHBrZzogU3dpdGNoIHRoZSBjb21wcmVzc2lvbiBmaWx0ZXIgZnVuY3Rpb25zIHRvIGFsd2F5cyByZXR1cm4KKyAgICAKKyAgICBUaGlzIG1ha2VzIHRoZSBjb21wcmVzc2lvbiBhbmQgZGVjb21wcmVzc2lvbiBmdW5jdGlvbnMgYmUgY2xvc2VyIHRvIHRoZQorICAgIGJ1ZmZlciBhcGksIHdoaWNoIGFsd2F5cyByZXR1cm4uIEZvciBub24tYmxvY2tpbmcgSS9PLCB0aGUgY2FsbGVyIGhhcyB0bworICAgIHNldHVwIGEgY2hpbGQgcHJvY2Vzcy4KKyAgICAKKyAgICBXaGVuIHVzaW5nIGV4dGVybmFsIGJpbmFyaWVzLCB3ZSBtYWtlIHRoZSBmaWx0ZXIgZnVuY3Rpb25zIHNldHVwIHRoYXQKKyAgICBjaGlsZCBwcm9jZXNzIHRyYW5zcGFyZW50bHkgc28gdGhhdCB0aGUgQVBJIGlzIHVuaWZvcm0uCisKKyBkcGtnLWRlYi9idWlsZC5jICAgIHwgICAgMiArCisgZHBrZy1kZWIvZXh0cmFjdC5jICB8ICAgIDEgKworIGxpYi9kcGtnL2NvbXByZXNzLmMgfCAgIDc4ICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIGxpYi9kcGtnL2NvbXByZXNzLmggfCAgIDEwICsrLS0tLQorIDQgZmlsZXMgY2hhbmdlZCwgNDIgaW5zZXJ0aW9ucygrKSwgNDkgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBlYzU2MTVjZGQxMzQ2NTRkMGU3MDQ5Y2RkNTkyNWFhOWE4MzAzNGJhCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IE1heSA3IDExOjE2OjA4IDIwMTEgKzAyMDAKKworICAgIGRwa2ctZGViOiBQYXNzIHRoZSByZWFsIGZpbGUgZGVzY3JpcHRvcnMgdG8gY29tcHJlc3Npb24gZnVuY3Rpb25zCisgICAgCisgICAgSW5zdGVhZCBvZiBkdXBpbmcgdGhlbSB0byB0aGUgc3RkaW4gYW5kIHN0ZG91dCBmaWxlIGRlc2NyaXB0b3JzLCBwYXNzCisgICAgdGhlbSBkaXJlY3RseS4gSWYgdGhlIGNvbXByZXNzaW9uIGZ1bmN0aW9ucyBuZWVkIHRoZSBmaWxlIGRlc2NyaXB0b3JzCisgICAgb24gc3RkaW4gYW5kIHN0ZG91dCwgdGhlbiB0aGV5IHdpbGwgdGFrZSBjYXJlIG9mIHNldHRpbmcgdGhlbSB1cC4gVGhpcworICAgIGlzIG9ubHkgdGhlIGNhc2Ugd2hlbiB1c2luZyB0aGUgZXh0ZXJuYWwgY29tcHJlc3Npb24gYmluYXJpZXMuCisKKyBkcGtnLWRlYi9idWlsZC5jICAgfCAgIDIyICsrKysrKysrKysrKy0tLS0tLS0tLS0KKyBkcGtnLWRlYi9leHRyYWN0LmMgfCAgIDE1ICsrKysrKysrKystLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgMjIgaW5zZXJ0aW9ucygrKSwgMTUgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyZjAwMzY4NmZkZDQ2ZWI1MjRhMDg3MTVjOGE4OTg4YzZkMTNjZWEzCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IE1heSA3IDEyOjI3OjI3IDIwMTEgKzAyMDAKKworICAgIEdyb3VwIEJ1aWxkLURlcGVuZHMgbGluZXMgYnkgcHVycG9zZQorICAgIAorICAgIEJ1aWxkIHRvb2xzLCBpMThuIHRvb2xzLCBjb21wcmVzc2lvbiwgc2VjdXJpdHkgYW5kIFVJIGxpYnJhcmllcywgYW5kCisgICAgcGVybCBwYWNrYWdlcyBmb3IgdGhlIHRlc3Qgc3VpdGUuCisKKyBkZWJpYW4vY29udHJvbCB8ICAgIDUgKysrLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDIzZjM4YmM1ZTY3ODE2NTc2OTcxZTIxYWFjMGIxZjhkMjEzNDJlYTIKK0F1dGhvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitEYXRlOiAgIEZyaSBNYXkgNiAyMDoyNTo0NSAyMDExICswMjAwCisKKyAgICBVcGRhdGUgR2VybWFuIHRyYW5zbGF0aW9uIG9mIG1hbnVhbCBwYWdlcworICAgIAorICAgIFVwZGF0ZSB0byAyMDI3dC4KKworIG1hbi9wby9kZS5wbyB8ICAgMjYgKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDEzIGluc2VydGlvbnMoKyksIDEzIGRlbGV0aW9ucygtKQorCitjb21taXQgNzY2NWY3ZDhhZWRjOTljNzQwYzUzMDE2MmE5MTRmOWUwYWU1ZDNmYQorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBNYXkgNiAwOToxMTozMyAyMDExICswMjAwCisKKyAgICBkcGtnLXNvdXJjZTogZml4IGJlaGF2aW91ciBvZiAtLWV4dGVuZC1kaWZmLWlnbm9yZSBpZiB1c2VkIGFmdGVyIC0tZGlmZi1pZ25vcmUKKyAgICAKKyAgICBVcCB0byBub3cgLS1leHRlbmQtZGlmZi1pZ25vcmUgd2FzIG9ubHkgZXh0ZW5kaW5nIHRoZSBkZWZhdWx0IGRpZmYtaWdub3JlLgorICAgIFRoaXMgaXMgdXN1YWxseSBlbm91Z2ggYXMgdGhpcyBvcHRpb24gaXMgdXN1YWxseSBwdXQgaW4KKyAgICBkZWJpYW4vc291cmNlL29wdGlvbnMgYW5kIGludGVycHJldGVkIGVhcmx5IGVub3VnaCBiZWZvcmUgYW55IG90aGVyIC1pCisgICAgb3B0aW9uICh0aGF0IGFjdGl2YXRlcyB0aGUgdXNhZ2Ugb2YgdGhlIGRlZmF1bHQgZGlmZi1pZ25vcmUgcmVnZXhwKS4KKyAgICAKKyAgICBTaG91bGQgLS1leHRlbmQtZGlmZi1pZ25vcmUgYXBwZWFyIGFmdGVyIC1pLCBpdCBzaG91bGQgc3RpbGwgZXh0ZW5kCisgICAgdGhlIHJlZ2V4cCB0aGF0IHdlJ3JlIGdvaW5nIHRvIHVzZS4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgfCAgICAyICsrCisgbWFuL2Rwa2ctc291cmNlLjEgICAgICB8ICAgMTAgKysrKystLS0tLQorIHNjcmlwdHMvZHBrZy1zb3VyY2UucGwgfCAgICAzICsrKworIDMgZmlsZXMgY2hhbmdlZCwgMTAgaW5zZXJ0aW9ucygrKSwgNSBkZWxldGlvbnMoLSkKKworY29tbWl0IGZmNmUzMmQzNTg4Y2YxMTI1OGE3ZDBhMjMxMTQ2MTk3MWFiZTUxZjMKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgTWF5IDYgMDU6MDY6NTQgMjAxMSArMDIwMAorCisgICAgZHBrZzogUmVuYW1lIGlzZGlyZWN0b3J5aW51c2UoKSB0byBkaXJfaXNfdXNlZF9ieV9vdGhlcnMoKQorICAgIAorICAgIFRoaXMgY2xhcmlmaWVzIHRoZSBhY3Rpb24gcGVyZm9ybWVkIGJ5IHRoZSBmdW5jdGlvbiwgd2hpY2ggY291bGQgYmUKKyAgICBlYXNpbHkgY29uZnVzZWQgYXMgYmVpbmcgdXNlZCBieSB0aGUgZ2l2ZW4gcGFja2FnZSwgaW5zdGVhZCBvZiBieSBvdGhlcgorICAgIHBhY2thZ2VzLgorCisgc3JjL2hlbHAuYyAgICAgICB8ICAgIDggKysrKy0tLS0KKyBzcmMvbWFpbi5oICAgICAgIHwgICAgMiArLQorIHNyYy9wcm9jZXNzYXJjLmMgfCAgICAzICsrLQorIHNyYy9yZW1vdmUuYyAgICAgfCAgICA2ICsrKystLQorIDQgZmlsZXMgY2hhbmdlZCwgMTEgaW5zZXJ0aW9ucygrKSwgOCBkZWxldGlvbnMoLSkKKworY29tbWl0IGZkYTIxZjgyOWJlYmVkMTJlMWE0ZWMwZGNjYWM3NDM0YTY0M2M2YjUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgTWF5IDYgMDU6MDU6NTEgMjAxMSArMDIwMAorCisgICAgZHBrZzogUmVuYW1lIGhhc2RpcmVjdG9yeWNvbmZmaWxlcygpIHRvIGRpcl9oYXNfY29uZmZpbGVzKCkKKworIHNyYy9oZWxwLmMgICB8ICAgIDYgKysrLS0tCisgc3JjL21haW4uaCAgIHwgICAgMiArLQorIHNyYy9yZW1vdmUuYyB8ICAgIDQgKystLQorIDMgZmlsZXMgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCA2IGRlbGV0aW9ucygtKQorCitjb21taXQgMmM5YTM0MmRjNGUxYWQzZTllNThhYzg5OTU3YjkwNjg2NjRkMTkzMAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBNYXkgNSAxNDo0OTo0OSAyMDExICswMjAwCisKKyAgICBkcGtnOiBGaXggd3JvbmcgbWF0Y2hpbmcgZm9yIGNoZWNrIG9uIGRpcmVjdG9yeSBjb250YWluaW5nIGNvbmZmaWxlcworICAgIAorICAgIE9uIHBhY2thZ2UgcmVtb3ZhbCwga2VlcCBvbmx5IGRpcmVjdG9yaWVzIGFjdHVhbGx5IGNvbnRhaW5pbmcgY29uZmZpbGVzLAorICAgIGFuZCBub3QgZGlyZWN0b3JpZXMganVzdCBtYXRjaGluZyB0aGUgc3Vic3RyaW5nIGluIHRoZSBjb25mZmlsZSBvciB0aGUKKyAgICBkaXJlY3RvcnkgaXRzZWxmLiBUaGUgZGlyZWN0b3J5IGl0c2VsZiBpcyBub3QgbWF0Y2hlZCBlaXRoZXIgYXMgc3RyaWN0bHkKKyAgICBzcGVha2luZyBpdCBpcyBub3QgY29udGFpbmVkIGluIGl0c2VsZiwgYW5kIGl0IHNob3VsZCBhbHJlYWR5IGJlIGluIHRoZQorICAgIGxlZnRvdmVyIGxpc3RzLgorICAgIAorICAgIFByZXZpb3VzbHkgd2hlbiBjaGVja2luZyBmb3IgZGlyZWN0b3J5IOKAmC9mb2/igJkgdGhlIGZvbGxvd2luZyBjb25mZmlsZXMKKyAgICB3b3VsZCBtYXRjaDoKKyAgICAKKyAgICAgIC9mb28KKyAgICAgIC9mb29iYXIKKyAgICAgIC9mb28vYmFyCisgICAgCisgICAgTm93IG9ubHkgdGhlIGZvbGxvd2luZyB3aWxsIG1hdGNoOgorICAgIAorICAgICAgL2Zvby9iYXIKKyAgICAKKyAgICBTcG90dGVkLWJ5OiBPbmTFmWVqIFN1csO9IDxvbmRyZWpAZGViaWFuLm9yZz4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAzICsrKworIHNyYy9oZWxwLmMgICAgICAgfCAgICAzICsrLQorIDIgZmlsZXMgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgY2JkZTdmYTg2MWZhNjg1MWNkYmM1NmFlNzBiNzMzMzJhYjlkYjkzNQorTWVyZ2U6IDE0MDUyN2YgYmQxZDZjZAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBNYXkgNCAxMTowMDoxMSAyMDExICswMjAwCisKKyAgICBNZXJnZSBicmFuY2ggJ3NpZCcgKHRocm91Z2ggdGFnICcxLjE2LjAuMycpCisgICAgCisgICAgQ29uZmxpY3RzOgorICAgIAlkZWJpYW4vY2hhbmdlbG9nCisKK2NvbW1pdCBiZDFkNmNkMjQ3ZjhlNWViN2YyNDY1YzBkNjg2Y2JhMzYzYzY0YTU3CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIE1heSA0IDEwOjAxOjQ0IDIwMTEgKzAyMDAKKworICAgIFJlbGVhc2UgMS4xNi4wLjMKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICA0ICsrLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IGQ4NGIzNmE4MTA4ODcyMWIzNDBlNTI2NjRhYTJjMzM3OWZlYTJhOWEKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgTWF5IDQgMDk6NDE6MzcgMjAxMSArMDIwMAorCisgICAgbGliZHBrZzogQWxsb3cgYWdhaW4gdW5rbm93biBQcmlvcml0eSBmaWVsZCB2YWx1ZXMKKyAgICAKKyAgICBUaGUgY29kZSB3YXMgbm90IHByb3Blcmx5IGFkdmFuY2luZyB0aGUgZW5kIG9mIHRoZSB2YWx1ZSBzdHJpbmcgd2hlbgorICAgIHJlYWNoaW5nIHRoZSBmYWxsYmFjayBjYXNlIChvbiB2YWx1ZXMgbm90IGtub3duIGZvciB0aGUgUHJpb3JpdHkgZmllbGQpLAorICAgIGFuZCB0aGUgdmFsaWRhdGlvbiBmb3IganVuayBhZnRlciB0aGUgZmlyc3Qgd29yZCB3YXMgZmFpbGluZyBvbiB0aGUKKyAgICBhY3R1YWwgZmlyc3Qgd29yZC4KKyAgICAKKyAgICBUaGlzIGNoYW5nZSByZXZlcnRzIHRvIHRoZSBwcmV2aW91cyBiZWhhdmlvdXIgb2YgYmxpbmRseSBhY2NlcHRpbmcgdGhlCisgICAgd2hvbGUgdmFsdWUgc3RyaW5nIGZvciBhIGZpZWxkLCByZWdhcmRsZXNzIG9mIGl0IGJlaW5nIG11bHRpd29yZCwgd2hlbgorICAgIGl0J3MgdGhlIGZhbGxiYWNrIGNhc2UuCisgICAgCisgICAgUmVncmVzc2lvbiBpbnRyb2R1Y2VkIGluIGNvbW1pdCBiM2Y2NjkwMzlmMTI4ZDcxNWFjN2FjNzFhYmFlYWM4NmYwOTU0MTEyLgorICAgIAorICAgIEFuYWx5c2lzLWJ5OiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisgICAgQW5hbHlzaXMtYnk6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgIHwgICAgNyArKysrKysrCisgbGliL2Rwa2cvZmllbGRzLmMgfCAgIDEzICsrKysrKysrKy0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDE2IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAxNDA1MjdmYzYxMjlmMGU0ZjJhN2M2NGYyOGQ4ZDE5ZmU1ZTYwYjNmCitBdXRob3I6IFN2ZW4gSm9hY2hpbSA8c3ZlbmpvYWNAZ214LmRlPgorRGF0ZTogICBNb24gTWF5IDIgMTI6MTQ6MjIgMjAxMSArMDIwMAorCisgICAgR2VybWFuIGRwa2cgdHJhbnNsYXRpb24gdXBkYXRlCisgICAgCisgICAgVXBkYXRlIHRvIDEwMTZ0LgorICAgIENoYW5nZSB0cmFuc2xhdGlvbiBvZiBkb3duZ3JhZGUgbWVzc2FnZXMgKENsb3NlczogIzYyMDMxMikuCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMyArCisgcG8vZGUucG8gICAgICAgICB8ICA4MzAgKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCA0MjAgaW5zZXJ0aW9ucygrKSwgNDEzIGRlbGV0aW9ucygtKQorCitjb21taXQgOWIyY2M3YWEzMTg3MDkxYmYyY2JiYjczNGZiNzdhN2M1MmJlYzk2OQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBBcHIgMzAgMjE6MDM6MTYgMjAxMSArMDIwMAorCisgICAgZHNlbGVjdDogTWFyayDigJh54oCZIHZhcmlhYmxlcyBhcyB1bnVzZWQgZm9yIGdldHl4KCkgYW5kIGdldG1heHl4KCkKKyAgICAKKyAgICBUaGUgbmN1cnNlcyBsaWJyYXJ5IGRvZXMgbm90IHByb3ZpZGUgYSB3YXkgdG8gb25seSByZXRyaWV2ZSB0aGUg4oCYeOKAmQorICAgIHZhcmlhYmxlLCBzbyB3ZSBoYXZlIHRvIHBhc3MgYSBkdW1teSDigJh54oCZIHdoaWNoIHdlIGFyZSBub3QgZ29pbmcgdG8KKyAgICB1c2UsIGZvciB3aGljaCB0aGUgY29tcGlsZXIgZW1pdHMgYSB3YXJuaW5nLgorCisgZHNlbGVjdC9iYXNlY21kcy5jYyAgIHwgICAgNCArKystCisgZHNlbGVjdC9iYXNlbGlzdC5jYyAgIHwgICAgMyArKy0KKyBkc2VsZWN0L21haW4uY2MgICAgICAgfCAgICA0ICsrLS0KKyBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2MgfCAgICAyICstCisgNCBmaWxlcyBjaGFuZ2VkLCA4IGluc2VydGlvbnMoKyksIDUgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyZWNhZWE5Njc3ZTlkNDMwN2FhYmZiZWNjMDBhNzdlOTlhMDU0NTdiCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IEFwciAzMCAyMTowMToyNyAyMDExICswMjAwCisKKyAgICBzLXMtZDogUmV0dXJuIHN0YXR1c191bmtub3duIG9uIGVycm9yIHJlYWRpbmcgZnJvbSB0aGUgcGlkIGZpbGUKKyAgICAKKyAgICBPdGhlcndpc2UgdGhlIHZhcmlhYmxlIHdhcyB1bmluaXRpYWxpemVkLgorCisgdXRpbHMvc3RhcnQtc3RvcC1kYWVtb24uYyB8ICAgIDIgKysKKyAxIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IGNmZTJmMWVlMWZjYmIxNmQ0NjFkYmQwMjdjYzZlOWE5ZmFiNjI4YmUKK0F1dGhvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitEYXRlOiAgIFNhdCBBcHIgMzAgMTM6NTY6MjkgMjAxMSArMDIwMAorCisgICAgVXBkYXRlIEdlcm1hbiB0cmFuc2xhdGlvbiBvZiBtYW51YWwgcGFnZXMKKyAgICAKKyAgICBVcGRhdGUgdG8gMjAyN3QuCisKKyBtYW4vcG8vZGUucG8gfCAgMTY3ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDg3IGluc2VydGlvbnMoKyksIDgwIGRlbGV0aW9ucygtKQorCitjb21taXQgYWI3NzZjYmQ4Nzg4MGYzNzEyYThmNDRhYTFmMmJiNjMwOTYwZDBiNQorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBBcHIgMjkgMjI6MTU6MTcgMjAxMSArMDIwMAorCisgICAgZGViLXNyYy1jb250cm9sKDUpLCBzdGFydC1zdG9wLWRhZW1vbig4KTogc21hbGwgaW1wcm92ZW1lbnRzCisgICAgCisgICAgLSBDbGFyaWZ5IHRoYXQgdGhlIEFyY2hpdGVjdHVyZSBmaWVsZCBjYW4gY29udGFpbiBhcmNoaXRlY3R1cmUgd2lsZGNhcmRzLgorICAgIC0gQ2xhcmlmeSB3aGVuIHN0YXJ0LXN0b3AtZGFlbW9uIGNhbiBleGl0IDAgd2hlbiAtLW9rbm9kbyBpcyB1c2VkLgorICAgIC0gRHJvcCBhIHNlbnRlbmNlIHRoYXQgd2FzIHJlcGVhdGluZyBzb21ldGhpbmcgYWxyZWFkeSBzYWlkIGVhcmxpZXIuCisgICAgCisgICAgUmVwb3J0ZWQtYnk6IEhlbGdlIEtyZXV0em1hbm4gPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorCisgbWFuL2RlYi1zcmMtY29udHJvbC41ICAgfCAgIDExICsrKysrKystLS0tCisgbWFuL3N0YXJ0LXN0b3AtZGFlbW9uLjggfCAgICA3ICsrKystLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDExIGluc2VydGlvbnMoKyksIDcgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBjMTAyZTdmZjgxYmJhODRmN2UxOGVmYWUwNjI2MmRlZTA4ZDQ0ZGUwCitBdXRob3I6IEhlbGdlIEtyZXV0em1hbm4gPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorRGF0ZTogICBGcmkgQXByIDI5IDE5OjM1OjU0IDIwMTEgKzAyMDAKKworICAgIFVwZGF0ZSBHZXJtYW4gdHJhbnNsYXRpb24gb2YgbWFudWFsIHBhZ2VzCisgICAgCisgICAgVXBkYXRlIHRvIDIwMjZ0MGYxdS4KKworIG1hbi9wby9kZS5wbyB8IDExMDEgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgNjAyIGluc2VydGlvbnMoKyksIDQ5OSBkZWxldGlvbnMoLSkKKworY29tbWl0IGZhNDA2ZmE4NTZkOWVjODk4ZDE3MWU1MWE2ZTZjNWU1Yzk2NzdkMDAKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgQXByIDI5IDA5OjMxOjM5IDIwMTEgKzAyMDAKKworICAgIGRwa2c6IE1vdmUgPGRwa2cvdGFyZm4uaD4gaW5jbHVzaW9uIGZyb20gY2xlYW51cC5jIHRvIGFyY2hpdmVzLmgKKyAgICAKKyAgICBUaGUgZm9ybWVyIGlzIG5vdCB1c2luZyBhbnkgZGVjbGFyYXRpb25zIGZyb20gdGFyZm4uaCwgYnV0IHRoZSBsYXR0ZXIKKyAgICBpcy4KKworIHNyYy9hcmNoaXZlcy5oIHwgICAgMiArKworIHNyYy9jbGVhbnVwLmMgIHwgICAgMSAtCisgMiBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyMjI5OTZmOGM2NGU2MjYzMzg0YWUzNTMzMWVkMGQwNGNjZTNjYmNjCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEFwciAyOSAwNzoxOToyOSAyMDExICswMjAwCisKKyAgICBsaWJkcGtnOiBNb3ZlIGluZm9ybWF0aXZldmVyc2lvbigpIHRvIHRoZSB2ZXJzaW9uIG1vZHVsZQorCisgbGliL2Rwa2cvZHBrZy1kYi5oICAgfCAgICAyIC0tCisgbGliL2Rwa2cvcGFyc2VoZWxwLmMgfCAgICA4IC0tLS0tLS0tCisgbGliL2Rwa2cvdmVyc2lvbi5jICAgfCAgICA4ICsrKysrKysrCisgbGliL2Rwa2cvdmVyc2lvbi5oICAgfCAgICAzICsrKworIDQgZmlsZXMgY2hhbmdlZCwgMTEgaW5zZXJ0aW9ucygrKSwgMTAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBkMTRjNzJmZmVlM2ZmZDk4YjhlY2IwYjE4OWYxOTdiNDA0YjU2YTllCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEFwciAyOSAwNzoyMDo1MyAyMDExICswMjAwCisKKyAgICBsaWJkcGtnOiBNb3ZlIHZlcnNpb24gbW9kdWxlIGRlY2xhcmF0aW9ucyB0byBhIG5ldyB2ZXJzaW9uLmgKKworIGxpYi9kcGtnL01ha2VmaWxlLmFtICAgICAgICAgICAgICB8ICAgIDMgKystCisgbGliL2Rwa2cvZHBrZy1kYi5oICAgICAgICAgICAgICAgIHwgICAgOCArLS0tLS0tLQorIGxpYi9kcGtnL3ZlcnNpb24uYyAgICAgICAgICAgICAgICB8ICAgIDIgKy0KKyBsaWIvZHBrZy97dmVyc2lvbi5jID0+IHZlcnNpb24uaH0gfCAgIDMwICsrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLQorIDQgZmlsZXMgY2hhbmdlZCwgMjIgaW5zZXJ0aW9ucygrKSwgMjEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA2ZGUwNjRmMDgzMTE3ZWQ2OTQ0ZDYyOWJhZjdiNTQzODE4ZWRjZjMwCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IEFwciAyOCAwOTo0NDoyMCAyMDExICswMjAwCisKKyAgICBzLXMtZDogQWRkIHByb2Nlc3MgbmFtZSBrZXJuZWwgbGltaXRzIGZvciBzZXZlcmFsIHN5c3RlbXMKKyAgICAKKyAgICBTcGVjaWZpY2FsbHk6IFNvbGFyaXMsIE5ldEJTRCwgT3BlbkJTRCwgRnJlZUJTRCBhbmQgRGFyd2luLgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICB8ICAgIDIgKysKKyB1dGlscy9zdGFydC1zdG9wLWRhZW1vbi5jIHwgICAxMCArKysrKysrKysrCisgMiBmaWxlcyBjaGFuZ2VkLCAxMiBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgNWJjZWQ5ZmMzYmM3NTdiYTVlNDY0MmQxMTQyMjU5NjY2NzYyNWRjZQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBBcHIgMjggMDk6MTE6MjggMjAxMSArMDIwMAorCisgICAgcy1zLWQ6IEFkZCBMU0IgLS1zdGF0dXMgY29tbWFuZCB0byBjaGVjayBmb3IgcHJvY2VzcyBzdGF0dXMKKyAgICAKKyAgICBUaGUgbmV3IGNvbW1hbmQgZm9sbG93cyB0aGUgTFNCIEluaXQgU2NyaXB0IHN0YXR1cyBhY3Rpb24gc3BlY2lmaWNhdGlvbiwKKyAgICBhbmQgcmV0dXJucyBleGl0IGNvZGVzIGFjY29yZGluZ2x5LgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICB8ICAgIDIgKworIG1hbi9zdGFydC1zdG9wLWRhZW1vbi44ICAgfCAgIDE5ICsrKysrKysrKworIHV0aWxzL3N0YXJ0LXN0b3AtZGFlbW9uLmMgfCAgIDk4ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tCisgMyBmaWxlcyBjaGFuZ2VkLCA5NCBpbnNlcnRpb25zKCspLCAyNSBkZWxldGlvbnMoLSkKKworY29tbWl0IGFkMTg4ZWVlMTU3YWM3MWE3ZTJhOWJlMzFlYjZjNjFhZjdhZGFlOTQKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgQXByIDI4IDA4OjIzOjEyIDIwMTEgKzAyMDAKKworICAgIG1hbjogQ2xhcmlmeSDigJxFWElUIFNUQVRVU+KAnSBzZWN0aW9ucyBieSB1c2luZyBib2xkIGFuZCBhIHRhYmxlCisgICAgCisgICAgQ2hhbmdlIHRoZSBzdGF0dXMgY29kZXMgdG8gYm9sZCBhbmQgbGlzdCB0aGVtIHdpdGggYSB0YWJsZSB0byBtYWtlcworICAgIGl0IGVhc2llciB0byB2aXN1YWxseSBkaXN0aW5ndWlzaCB0aGVtLgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICB8ICAgIDEgKworIG1hbi9kcGtnLXF1ZXJ5LjEgICAgICAgICAgfCAgICA4ICsrKysrLS0tCisgbWFuL2Rwa2ctc3BsaXQuMSAgICAgICAgICB8ICAgMTcgKysrKysrKysrKy0tLS0tLS0KKyBtYW4vc3RhcnQtc3RvcC1kYWVtb24uOCAgIHwgICAyMiArKysrKysrKysrKysrKysrLS0tLS0tCisgbWFuL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuOCB8ICAgIDggKysrKystLS0KKyA1IGZpbGVzIGNoYW5nZWQsIDM3IGluc2VydGlvbnMoKyksIDE5IGRlbGV0aW9ucygtKQorCitjb21taXQgYTQxZmI0ZTMzNjRlYWU0N2QzMzc5YTY5ZTNlMDQxODQzZjA2NGY3OAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBBcHIgMjggMDc6MjU6NTkgMjAxMSArMDIwMAorCisgICAgQ2xhcmlmeSBleGl0IHN0YXR1cyBpbiBkcGtnLXNwbGl0IGFuZCBzdGFydC1zdG9wLWRhZW1vbiAtLWhlbHAgb3V0cHV0CisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgIHwgICAgMSArCisgZHBrZy1zcGxpdC9tYWluLmMgICAgICAgICB8ICAgMTEgKysrKysrKystLS0KKyB1dGlscy9zdGFydC1zdG9wLWRhZW1vbi5jIHwgICAgNyArKysrKy0tCisgMyBmaWxlcyBjaGFuZ2VkLCAxNCBpbnNlcnRpb25zKCspLCA1IGRlbGV0aW9ucygtKQorCitjb21taXQgYWM0MWI1ZmVmNDI2ODNiNDY0MGIwYmI3NDY4ODkxMDBmYjhhOWEyMAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBBcHIgMjggMDQ6MjI6MjggMjAxMSArMDIwMAorCisgICAgcy1zLWQ6IFVzZSBhIHNpbmdsZSBhY3Rpb24gdmFyaWFibGUgdG8gdHJhY2sgdGhlIGNvbW1hbmQgbGluZSBhY3Rpb25zCisgICAgCisgICAgVGhpcyBtYWtlcyBpdCBlYXNpZXIgdG8gYWRkIG5ldyBjb21tYW5kcyB3L28gaGF2aW5nIHRvIGNoZWNrIGZvciB0aGUKKyAgICBzZXR0aW5nIG9mIGFueSBvZiB0aGUgb3RoZXIgYWN0aW9uIHZhcmlhYmxlcyBhZ2FpbnN0IGVhY2ggb3RoZXIuCisKKyB1dGlscy9zdGFydC1zdG9wLWRhZW1vbi5jIHwgICAzNiArKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDI2IGluc2VydGlvbnMoKyksIDEwIGRlbGV0aW9ucygtKQorCitjb21taXQgOGI5MzE1MjE5ZDdhNGRiYjg1MjA0MjdjZWNjZDAwY2RmYWM1NWE3NworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBBcHIgMjggMDM6Mzg6MTAgMjAxMSArMDIwMAorCisgICAgZHBrZzogVXNlIOKAnHVuc2VsZWN0ZWTigJ0gYXMgYW4gYWRqZWN0aXZlIGluc3RlYWQgb2Yg4oCcZGVzZWxlY3RlZOKAnQorICAgIAorICAgIFdoZW4gYmVpbmcgdXNlZCBhcyBhbiBhZGplY3RpdmUg4oCcdW5zZWxlY3RlZOKAnSBpcyB0aGUgY29ycmVjdCB3b3JkIHRvIHVzZS4KKyAgICAKKyAgICBDbG9zZXM6ICMyMzEwODkKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAyICsrCisgbGliL2Rwa2cvcGFyc2UuYyB8ICAgIDIgKy0KKyBzcmMvYXJjaGl2ZXMuYyAgIHwgICAgNCArKy0tCisgMyBmaWxlcyBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBiYjE5ZDk0NDUwMmQzMGI5NjZkYzVlYzE2NjRhMTlhMDg3MjgwMGYyCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IEFwciAyOCAwMzoyMjozOCAyMDExICswMjAwCisKKyAgICBGaXggdHlwb3MgaW4gVmlldG5hbWVzZSB0cmFuc2xhdGlvbiAoZGVzZWxlY3Qg4oaSIGRzZWxlY3QpCisKKyBwby92aS5wbyB8ICAgIDYgKysrLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA2NWVjZWI4ZWFiYzNlMTU0NzE0OGFmMTA3MmQ2OTUwNDRlY2U5N2FhCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIEFwciAyNyAwODoxMDoyMyAyMDExICswMjAwCisKKyAgICBkcGtnKDEpOiBDbGFyaWZ5IHRoZSBjdXJyZW50IGRwa2cgYmVoYXZpb3VyIHdoZW4gcnVubmluZyB0aGUgYmFjay1lbmRzCisgICAgCisgICAgV2hlbiBydW5uaW5nIHRoZSBkcGtnLWRlYiBhbmQgZHBrZy1xdWVyeSBiYWNrLWVuZHMsIGRwa2cgZG9lcyBub3QgcGFzcworICAgIHRocm91Z2ggYmFjay1lbmQgc3BlY2lmaWMgb3B0aW9ucy4KKyAgICAKKyAgICBDbG9zZXM6ICM2MTA5NDAKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAzICsrKworIG1hbi9kcGtnLjEgICAgICAgfCAgIDIzICsrKysrKystLS0tLS0tLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAxMCBpbnNlcnRpb25zKCspLCAxNiBkZWxldGlvbnMoLSkKKworY29tbWl0IDQ4N2E3YTg1YTQ0ZTc1ZDNiY2Q0MGU0ZTczNmUwOTNlYjc0ZTA2MTIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgQXByIDI3IDA3OjU2OjExIDIwMTEgKzAyMDAKKworICAgIGRwa2coMSk6IFJlbW92ZSByZWZlcmVuY2UgdG8gLS1ub2NoZWNrIGRwa2ctZGViIG9wdGlvbgorICAgIAorICAgIGRwa2cgZG9lcyBub3QgcGFzcyB0aGlzIG9wdGlvbiB3aGVuIHJ1bm5pbmcgZHBrZy1kZWIuCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMiArKworIG1hbi9kcGtnLjEgICAgICAgfCAgICA0IC0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKKworY29tbWl0IDE0MzQwMjEzYzhkZjYyMTU3MDhmNmIxZGQwMWQ3ZGVhNGU1OGZkMTQKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgQXByIDI3IDA3OjUwOjU5IDIwMTEgKzAyMDAKKworICAgIGRwa2c6IFJlbW92ZSAtLW5ldyBhbmQgLS1vbGQgZHBrZy1kZWIgb3B0aW9uIGhhbmRsaW5nCisgICAgCisgICAgVGhlc2UgaGF2ZSBiZWVuIG5vbi1mdW5jdGlvbmFsIGZvciBhIGxvbmcgdGltZSwgYW5kIHdlcmUgYmVpbmcgdHJlYXRlZAorICAgIGFzIGRwa2cgY29tbWFuZHMgd2hpY2ggd291bGQgY29uZmxpY3Qgd2l0aCB0aGUgZHBrZy1kZWIgY29tbWFuZHMuCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMiArKworIG1hbi9kcGtnLjEgICAgICAgfCAgICA0IC0tLS0KKyBzcmMvbWFpbi5jICAgICAgIHwgICAgMiAtLQorIDMgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCA2IGRlbGV0aW9ucygtKQorCitjb21taXQgNTMxYzgxMDk3ZDdhYTU3OTlmMGE5NWQwMzUzYjFmMWIzMzRhNjA0MgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBBcHIgMTggMDY6MzQ6MDYgMjAxMSArMDIwMAorCisgICAgZHBrZzogUmVmYWN0b3IgZm9yY2UgZmxhZ3MgdG8gcGFyc2VkYiBmbGFncyBpbnRvIHBhcnNlZGJfZm9yY2VfZmxhZ3MoKQorICAgIAorICAgIFRoaXMgd2lsbCBtYWtlIGl0IGVhc2llciB0byBjb252ZXJ0IG5ldyBmbGFncyBpbiB0aGUgZnV0dXJlLgorCisgc3JjL3Byb2Nlc3NhcmMuYyB8ICAgMTMgKysrKysrKysrKysrLQorIDEgZmlsZXMgY2hhbmdlZCwgMTIgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDFjNDc3MWE0NDI5OWMzZmI1MjhmMGRhZTkyMDA4OWY2N2ZkMjgyMGQKK0F1dGhvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitEYXRlOiAgIFR1ZSBBcHIgMjYgMTk6MTQ6MTEgMjAxMSArMDIwMAorCisgICAgVXBkYXRlIEdlcm1hbiB0cmFuc2xhdGlvbiBvZiBtYW51YWwgcGFnZXMKKyAgICAKKyAgICBVcGRhdGUgdG8gMjAyMHQuCisKKyBtYW4vcG8vZGUucG8gfCAgNDY3ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDI0MSBpbnNlcnRpb25zKCspLCAyMjYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBkZDQ2NzM3MWI2OWZmMzI3NTkyZjM1YzIyY2U1MjU2ZjcwNDA4Njg5CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIEFwciAyNiAwNjoyMzowNSAyMDExICswMjAwCisKKyAgICBkcGtnLWRlYigxKTogLS1mc3lzLXRhcmZpbGUgd2lsbCBhbHdheXMgcHJvY2VzcyB0aGUgYXJjaGl2ZSBzZXF1ZW50aWFsbHkKKyAgICAKKyAgICBDbG9zZXM6ICM2MTY2MDkKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAyICsrCisgbWFuL2Rwa2ctZGViLjEgICB8ICAgIDMgKystCisgMiBmaWxlcyBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBlODk3ZmRiYTRlYmI2NzkwMmFkMjhjNjNiYWZhZWE4ZGZlYjM4NWFiCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIEFwciAyNiAwNjowMDozMiAyMDExICswMjAwCisKKyAgICBkcGtnOiBEbyBub3QgZmFpbCB3aGVuIHVucGFja2luZyBhIGRpdmVydGVkIGhhcmRsaW5rCisgICAgCisgICAgQ2xvc2VzOiAjMjQ1MzIyCisgICAgCisgICAgQmFzZWQtb24tcGF0Y2gtYnk6IENocmlzdG9waGVyIEJhaW5lcyA8Y2JhaW5lczhAZ21haWwuY29tPgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDIgKysKKyBzcmMvYXJjaGl2ZXMuYyAgIHwgICAgMiArLQorIDIgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgNmQ1MGE1YWM2YWU1NGY0Mzc0MDcwZTU4NDkwNzA1MzBhNmQ1N2E0OQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBBcHIgMTggMDY6MzQ6MDYgMjAxMSArMDIwMAorCisgICAgQWRkIC0tZm9yY2UtYmFkLXZlcnNpb24gdG8gYWxsb3cgaW5zdGFsbGluZyBwYWNrYWdlcyB3aXRoIGJvZ3VzIHZlcnNpb25zCisgICAgCisgICAgVGhpcyBhbGxvd3MgdG8gaW5zdGFsbCBvbGQgcGFja2FnZXMgd2l0aCBzdWNoIHZlcnNpb25zLCB0byBlYXNlCisgICAgZGVidWdnaW5nLCB0ZXN0aW5nLCBldGMuCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMiArKworIG1hbi9kcGtnLjEgICAgICAgfCAgICAzICsrKworIHNyYy9tYWluLmMgICAgICAgfCAgICAzICsrKworIHNyYy9tYWluLmggICAgICAgfCAgICAxICsKKyBzcmMvcHJvY2Vzc2FyYy5jIHwgICAgNCArKy0tCisgNSBmaWxlcyBjaGFuZ2VkLCAxMSBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgZjlmYWMyODBiNzgwNTE2NTgxOWVjZTMyOTgwODQxYjdmNmEzOTMzMworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBBcHIgMTUgMTE6MDY6MDkgMjAxMSArMDIwMAorCisgICAgbGliZHBrZzogUmVuYW1lIGFuZCBhbGlhcyBwZGJfbGF4X3BhcnNlciB0byBwZGJfbGF4X3ZlcnNpb25fcGFyc2VyCisgICAgCisgICAgVGhpcyB3YXkgd2UgZ2V0IGEgbW9yZSBmaW5lLWdyYWluZWQgYW5kIGFjY3VyYXRlIGNvbnRyb2wgb3ZlciB3aGF0IHdlCisgICAgd2FudCB0byByZWxheCB3aGlsZSBwYXJzaW5nLgorCisgbGliL2Rwa2cvZHBrZy1kYi5oIHwgICAgNCArKystCisgMSBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA5ODBkYTZkOWI1ZjdmNzA1N2ZiY2M2N2QwOWExMjgzOTNlMWQ1ZDY2CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEFwciAxNSAwODowOTo0MSAyMDExICswMjAwCisKKyAgICBTdXBwb3J0IGNvbmZmaWxlcyB3aXRoIHNwYWNlcyB3aGVuIGRpZmZpbmcgdGhlbQorICAgIAorICAgIENsb3NlczogIzE0NzU4MworCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDEgKworIHNyYy9jb25maWd1cmUuYyAgfCAgICAzICsrLQorIDIgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgODU3OGU3OWQwMzA3ZjdhMzQwOGY3ZTAwZjQ1NjUyODZiYWJkYTYxYQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBBcHIgMTUgMDg6MDk6NDEgMjAxMSArMDIwMAorCisgICAgbGliZHBrZzogQWRkIG5ldyBzdHJfcXVvdGVfbWV0YSgpIGZ1bmN0aW9uCisKKyBsaWIvZHBrZy9zdHJpbmcuYyAgICAgICAgfCAgIDMwICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKworIGxpYi9kcGtnL3N0cmluZy5oICAgICAgICB8ICAgIDEgKworIGxpYi9kcGtnL3Rlc3QvdC1zdHJpbmcuYyB8ICAgMjAgKysrKysrKysrKysrKysrKysrKysKKyAzIGZpbGVzIGNoYW5nZWQsIDUxIGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBiMTU3NjVhNWI2MGZkNmNkNjdmNGZmYTI4MDM0ZmRhZTYyYWU4MjUyCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIEFwciAxOCAwNToyMjo1OSAyMDExICswMjAwCisKKyAgICBzLXMtZDogQ2hhbmdlIGRvX3N0b3AoKSB0byBhbHdheXMgb2JleSBnbG9iYWwgcXVpZXRtb2RlCisgICAgCisgICAgVGhlIG9ubHkgYmVoYXZpb3VyIGNoYW5nZSB3YXMgYWZmZWN0aW5nIHRoZSBuZXcgZG9fc3RvcF9zdW1tYXJ5KCksIHdoaWNoCisgICAgaXMgbm90IGFsd2F5cyBjYWxsZWQgbm93IGFmdGVyIGRvX3N0b3AoKSwgdG8gY2F0dGVyIGZvciB0aGUgZm9yY2VkIHF1aWV0CisgICAgbW9kZSB3aGVuIHNlbmRpbmcgc2lnbmFsIDAuIFRoZSBvdGhlciB2ZXJib3NlIHN0YXRlbWVudCB3aGljaCBiZWZvcmUKKyAgICBjb21taXQgNWZlZjkwYTI5NjAwNTNlOWIyNDMwNGUyYTI2NjNmYjFlZDdkYWZiMSB3YXMgbm90IGJlaW5nIHByaW50ZWQgaW4KKyAgICBzb21lIGNhc2VzLCBhY3R1YWxseSBtYWtlcyBzZW5zZSB0byBwcmludCBhbHdheXMuCisKKyB1dGlscy9zdGFydC1zdG9wLWRhZW1vbi5jIHwgICAgOCArKysrLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQorCitjb21taXQgOGRiYTJmODA2NDJlMTdiNzhjMmM1NTY3ODFmNDIwNGQyYzQzNWI1ZgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBBcHIgMTggMDU6MjI6NTkgMjAxMSArMDIwMAorCisgICAgcy1zLWQ6IFJlZmFjdG9yIGRvX3N0b3Bfc3VtbWFyeSgpIG91dCBmcm9tIGRvX3N0b3AoKQorCisgdXRpbHMvc3RhcnQtc3RvcC1kYWVtb24uYyB8ICAgMzYgKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyMyBpbnNlcnRpb25zKCspLCAxMyBkZWxldGlvbnMoLSkKKworY29tbWl0IGU3MWFlMmVhYzU0MjJlYWU0ZTg5ZDFjMDllMzAyOTM1ZWYxN2MwMWYKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgQXByIDE1IDA3OjQ1OjA1IDIwMTEgKzAyMDAKKworICAgIGRwa2ctc3BsaXQ6IEdlbmVyYXRlIGZpbGVuYW1lcyBmb2xsb3dpbmcgY3VycmVudCBjb252ZW50aW9ucyBvbiAtLWpvaW4KKyAgICAKKyAgICBLZWVwIHRoZSBhcmNoaXRlY3R1cmUgaW4gdGhlIGRlYmlhbi1zcGxpdCBtZW1iZXIgb2YgdGhlIHBhcnQgZmlsZSBzbworICAgIHRoYXQgd2UgY2FuIHJldXNlIGl0IHdoZW4gcHV0dGluZyBiYWNrIHRvZ2V0aGVyIHRoZSBqb2luZWQgYmluYXJ5CisgICAgcGFja2FnZS4gVXNlIHVuZGVyc2NvcmVzIHRvIHNlcGFyYXRlIGVhY2ggZmlsZW5hbWUgcGFydC4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgIHwgICAgMyArKysKKyBkcGtnLXNwbGl0L2Rwa2ctc3BsaXQuaCB8ICAgIDEgKworIGRwa2ctc3BsaXQvaW5mby5jICAgICAgIHwgICAgOSArKysrKysrKysKKyBkcGtnLXNwbGl0L2pvaW4uYyAgICAgICB8ICAgIDQgKysrLQorIGRwa2ctc3BsaXQvbWFpbi5jICAgICAgIHwgICAgMyArKy0KKyBkcGtnLXNwbGl0L3F1ZXVlLmMgICAgICB8ICAgIDEgKworIGRwa2ctc3BsaXQvc3BsaXQuYyAgICAgIHwgICAgOCArKysrKy0tLQorIG1hbi9kZWItc3BsaXQuNSAgICAgICAgIHwgICAgNCArKystCisgbWFuL2Rwa2ctc3BsaXQuMSAgICAgICAgfCAgIDEyICsrLS0tLS0tLS0tLQorIDkgZmlsZXMgY2hhbmdlZCwgMjkgaW5zZXJ0aW9ucygrKSwgMTYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA5Y2NjOTYxNTE4N2E4YzdjNTExMWM4MmQ2MDYxYjI5ZWMzZmJhZTYyCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IEFwciAyMyAwNzozODo1NyAyMDExICswMjAwCisKKyAgICB1LWE6IEZsdXNoIHRoZSBhbHRlcm5hdGl2ZXMgZGF0YWJhc2UgZmlsZSBzdHJlYW0gYmVmb3JlIGZzeW5jKClpbmcgaXQKKyAgICAKKyAgICBGb3Igc3RyZWFtIEkvTyB0aGUgYnVmZmVycyBoYXZlIHRvIGJlIGZsdXNoZWQgYmVmb3JlIHRoZXkgYXJlIGZzeW5jKCllZAorICAgIHRvIGd1YXJhbnRlZSB0aGUgZGF0YSBoYXMgYmVlbiB3cml0dGVuLCBhbmQgYXMgc3VjaCBmc3luYygpIGNhbiBkbyBpdHMKKyAgICBqb2IuCisgICAgCisgICAgTWlzc2VkIGluIGNvbW1pdCAwZTBlMjZjYjhlOWUzYjhlM2E2MGMzMjlkOGVhMGM2ZTU0NDU3NDJjLgorCisgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jIHwgICAgMiArKworIDEgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgYmYxM2FlNGM2OGJiMmJlY2M1OTFiMjM5OTU4NTMzNThiN2U0MjNjNAorQXV0aG9yOiBIZWxnZSBLcmV1dHptYW5uIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KK0RhdGU6ICAgRnJpIEFwciAyMiAxOToxNjo1MCAyMDExICswMjAwCisKKyAgICBVcGRhdGUgR2VybWFuIHRyYW5zbGF0aW9uIG9mIG1hbnVhbCBwYWdlcworICAgIAorICAgIFVwZGF0ZSB0byAyMDE5dC4KKworIG1hbi9wby9kZS5wbyB8ICAyNDIgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMTYwIGluc2VydGlvbnMoKyksIDgyIGRlbGV0aW9ucygtKQorCitjb21taXQgMTI0ZmVmYmM4ZTA4MmFlYjk0ZjU0OTI3MzkxNWI1YzYxYjBhNzI5YgorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBBcHIgMjIgMTc6MDE6MjIgMjAxMSArMDIwMAorCisgICAgZHBrZy1zb3VyY2U6IHRpZ2h0ZW4gdGhlIHJlZ2V4cCB1c2VkIHRvIGlnbm9yZSB0aGUgLnBjIGRpcmVjdG9yeSBvZiBxdWlsdAorICAgIAorICAgIFRoZSAiLiIgd2FzIG5vdCBlc2NhcGVkIGFuZCB0aGUgcmVnZXggaW5jb3JyZWN0bHkgbWF0Y2hlZCBhbiAiaXBjIgorICAgIGRpcmVjdG9yeSBmb3IgZXhhbXBsZS4KKyAgICAKKyAgICBSZXBvcnRlZC1ieTogTWlrZSBIb21tZXkgPGdsYW5kaXVtQGRlYmlhbi5vcmc+CisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAyICsrCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtIHwgICAgMiArLQorIDIgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgMGUwZTI2Y2I4ZTllM2I4ZTNhNjBjMzI5ZDhlYTBjNmU1NDQ1NzQyYworQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBBcHIgMjIgMTE6NTY6NDMgMjAxMSArMDIwMAorCisgICAgdXBkYXRlLWFsdGVybmF0aXZlczogZnN5bmMgdGhlIGFkbWluaXN0cmF0aXZlIGZpbGVzIGJlZm9yZSBpbnN0YWxsYXRpb24KKyAgICAKKyAgICBUaGlzIGlzIGZvciBmaWxlc3lzdGVtcyB0aGF0IGRvIG5vdCBwdXQgYW4gaW1wbGljaXQgd3JpdGUgYmFycmllcgorICAgIHdoZW4gcmVuYW1pbmcgZmlsZXMuIFRoYXQgd2F5IHdlIGVuc3VyZSB0aGF0IHdlJ2xsIG5ldmVyCisgICAgaGF2ZSBlbXB0eSBmaWxlcy4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgICB8ICAgIDMgKysrCisgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jIHwgICAgMiArKworIDIgZmlsZXMgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgYzI4ZWFkYjE5ZjEzNGNkNjUyZDc0ZGE2NjcwZjM1ODZiMzkzOGNjYworQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBBcHIgMjIgMTE6NTA6MTUgMjAxMSArMDIwMAorCisgICAgdXBkYXRlLWFsdGVybmF0aXZlczogbmV3IHN5c2VycigpIGZ1bmN0aW9uCisgICAgCisgICAgVGhpcyBmdW5jdGlvbiBpcyB0byBiZSB1c2VkIHdoZW4gYSBzeXNjYWxsIGZhaWxlZCBhbmQgd2hlbiB3ZSB3YW50CisgICAgdG8gcHJpbnQgc3RyZXJyb3IoZXJybm8pIGFmdGVyIHRoZSBlcnJvciBtZXNzYWdlLgorICAgIAorICAgIFVwZGF0ZSBhbGwgdGhlIGNvZGUgdG8gdXNlIHRoaXMgZnVuY3Rpb24uIFRoaXMgYWxsb3dzIHRvIHJlZHVjZSB0aGUKKyAgICBudW1iZXIgb2Ygc3RyaW5ncyB0byB0cmFuc2xhdGUgYXMgd2UncmUgbm93IHJldXNpbmcgdGhlIHNhbWUgc3RyaW5ncworICAgIHRoYW4gdGhvc2UgcGFzc2VkIHRvIG9zaGl0ZSgpIGluIGRwa2cuCisKKyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmMgfCAgIDU4ICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMzMgaW5zZXJ0aW9ucygrKSwgMjUgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA1N2NhNzk1ZTY4Yzk4ODg0M2E4NDIxYThlODZjYzhmYzRmYmQyNThiCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEFwciAxNSAwODoxNToxMiAyMDExICswMjAwCisKKyAgICBCdW1wIFN0YW5kYXJkcy1WZXJzaW9uIHRvIDMuOS4yIChubyBjaGFuZ2VzIG5lZWRlZCkKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAxICsKKyBkZWJpYW4vY29udHJvbCAgIHwgICAgMiArLQorIDIgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgYTkxNzA5YzQwNGRlZTExOGE3ZjRmYzYyOTViMDM0YmE5NjIxYWRiMAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBBcHIgMTUgMDg6MDQ6MzUgMjAxMSArMDIwMAorCisgICAgVXNlIGRoX3ByZXAgaW5zdGVhZCBvZiBkZXByZWNhdGVkIOKAnGRoX2NsZWFuIC1r4oCdCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMSArCisgZGViaWFuL3J1bGVzICAgICB8ICAgIDIgKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDFiN2ZlYjMyNDBiYzdmMWU3ZjE0OTAzMTUzODkxZTI4OTU2MWJjZTQKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgQXByIDE1IDA4OjAxOjI4IDIwMTEgKzAyMDAKKworICAgIFN3aXRjaCB0byBkZWJoZWxwZXIgY29tcGF0aWJpbGl0eSBsZXZlbCA3CisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMSArCisgZGViaWFuL2NvbXBhdCAgICB8ICAgIDIgKy0KKyBkZWJpYW4vY29udHJvbCAgIHwgICAgMiArLQorIDMgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgOGJjN2JhNjhmZjhiZDBhY2Q2ZjZlNmY5ZjcxNDU3NDY2NzFlZGZmNgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBBcHIgMTUgMDU6MDE6NTkgMjAxMSArMDIwMAorCisgICAgbWFuOiBDaGFuZ2UgZGViaWFuLXNwbGl0IG1lbWJlciBpbnRlcm5hbCBkZXNjcmlwdGlvbiB0byBhIGxpc3QKKyAgICAKKyAgICBUaGlzIG1ha2VzIGl0IGVhc2llciB0byBzZWUgd2hhdCBlYWNoIGxpbmUgY29udGFpbnMuCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMiArKworIG1hbi9kZWItc3BsaXQuNSAgfCAgIDI2ICsrKysrKysrKysrKysrKysrKy0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAyMCBpbnNlcnRpb25zKCspLCA4IGRlbGV0aW9ucygtKQorCitjb21taXQgZDJlZTNmZGNjZjRmMGQ4OTJjM2VkNzdhOWNhYmFhZGJmYTEwNWQ4MQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBBcHIgMTkgMDg6MzE6MTQgMjAxMSArMDIwMAorCisgICAgbGliZHBrZzogTW92ZSBuaWNrbmFtZXMgdGFibGUgZnJvbSBwYXJzZWhlbHAuYyB0byBwYXJzZS5jCisgICAgCisgICAgVGhpcyB0YWJsZSBpcyBvbmx5IGV2ZXIgZ29pbmcgdG8gYmUgdXNlZCBhdCBwYXJzZSB0aW1lIHdoZW4gbm9ybWFsaXppbmcKKyAgICB0aGUgaW5wdXQuCisKKyBsaWIvZHBrZy9wYXJzZS5jICAgICB8ICAgMTIgKysrKysrKysrKystCisgbGliL2Rwa2cvcGFyc2VkdW1wLmggfCAgICAxIC0KKyBsaWIvZHBrZy9wYXJzZWhlbHAuYyB8ICAgMTAgLS0tLS0tLS0tLQorIDMgZmlsZXMgY2hhbmdlZCwgMTEgaW5zZXJ0aW9ucygrKSwgMTIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBjZjcxNWFlOTNhNmRjZmIzMTgzOGFiYzU3N2NlMzMwMGMwM2VkYWFkCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIEFwciAxMiAwNTozMDozNCAyMDExICswMjAwCisKKyAgICB1LWE6IFJlbW92ZSB1bnVzZWQgbmV3X2Nob2ljZSBhc3NpZ25tZW50CisKKyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmMgfCAgICAyICstCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBkNDhkZDI2MTYwNTVhZjAxZWY4NGEwYzNmMTI4NDVkOWQ0NTk5MGY2CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIEFwciA2IDAzOjI3OjA3IDIwMTEgKzAyMDAKKworICAgIGRwa2c6IFJlbW92ZSB1bnVzZWQgZm9yY2VfY29uZmZfbmV3KCkgYW5kIGZvcmNlX2NvbmZmX21pc3MoKSBkZWNsYXJhdGlvbnMKKworIHNyYy9tYWluLmggfCAgICAyIC0tCisgMSBmaWxlcyBjaGFuZ2VkLCAwIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBlNjU0Y2I1YjZkMmViN2Y4MDI1NWZjOTc2YTZjY2JiOGQ2OTRiZDQzCitBdXRob3I6IEpvbmF0aGFuIE5pZWRlciA8anJuaWVkZXJAZ21haWwuY29tPgorRGF0ZTogICBTdW4gQXByIDEwIDA0OjA2OjU2IDIwMTEgLTA1MDAKKworICAgIGxpYmRwa2c6IFVzZSBleGVjdnAoMykgdW5jb25kaXRpb25hbGx5IGluIGNvbW1hbmRfZXhlYygpCisgICAgCisgICAgZXhlY3ZwKDMpIGFscmVhZHkgY2hlY2tzIGlmIGl0cyBmaWxlIGFyZ3VtZW50IGNvbnRhaW5zIGEgJy8nOyBzaW1wbGlmeQorICAgIGJ5IG5vdCBjaGVja2luZyBhZ2FpbiBmb3IgdGhlIHNhbWUgdGhpbmcuCisgICAgCisgICAgVGhlIHJlYWwgbW90aXZhdGlvbiBpcyB0byBhdm9pZCBjb25mdXNpbmcgYmVoYXZpb3IgaW4gYW4gZWRnZSBjYXNlOgorICAgIHdoZW4gZXhlY3ZlKDIpIGZhaWxzIHdpdGggRU5PRVhFQywgZXhlY3ZwIHdpbGwgcnVuIHRoZSBzY3JpcHQgdXNpbmcgdGhlCisgICAgc3lzdGVtIHNoZWxsIGJ1dCBleGVjdiB3aWxsIGVycm9yIG91dC4KKyAgICAKKyAgICBDbG9zZXM6ICM2MjIwOTQKKyAgICAKKyAgICBTaWduZWQtb2ZmLWJ5OiBKb25hdGhhbiBOaWVkZXIgPGpybmllZGVyQGdtYWlsLmNvbT4KKyAgICBTaWduZWQtb2ZmLWJ5OiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKyBkZWJpYW4vY2hhbmdlbG9nICAgfCAgICA0ICsrKysKKyBsaWIvZHBrZy9jb21tYW5kLmMgfCAgICA1ICstLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAzNzEyZjZhNGRkYzc1YzY5ZmNjZDJiM2RmYjE5NjFmZjA3NzcxODI1CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEFwciAxNSAwODowMjowNyAyMDExICswMjAwCisKKyAgICBDaGFuZ2Vsb2cgcG9saWNlCisgICAgCisgICAgUmVtb3ZlIHNwdXJpb3VzIHNwYWNlcy4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICA0ICsrLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IGNlOWQ5NmJjZjMzNTAwYjNmNWRiNTFkNzA3NzIwNjI1NjBmYmEyMzQKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgQXByIDIxIDAwOjA4OjAwIDIwMTEgKzAyMDAKKworICAgIGRwa2ctcXVlcnkoMSk6IGRvY3VtZW50IGVtcHR5IGxpbmVzIGFzIHNlcGFyYXRvciBmb3IgLS1zdGF0dXMgYW5kIC0tcHJpbnQtYXZhaWwgdG9vCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMyArKy0KKyBtYW4vZHBrZy1xdWVyeS4xIHwgICAxNSArKysrKysrKysrLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDEyIGluc2VydGlvbnMoKyksIDYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBlNmI2ZmYwODg3ZTMyOGYzNzlmMWZmMTU0ODRkM2JmZmM5YjY0NWI0CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIEFwciAyMCAyMzo0MToyMiAyMDExICswMjAwCisKKyAgICBtYW46IE9uIGRwa2ctcXVlcnkgLUwgZWFjaCBsaXN0IG9mIGZpbGVzIHBlciBwYWNrYWdlIGlzIHNlcGFyYXRlZCBieSBibGFuayBsaW5lcworCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDIgKysKKyBtYW4vZHBrZy1xdWVyeS4xIHwgICAgNSArKystLQorIDIgZmlsZXMgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgMzk4YTYwMTY3MThhYWMyYzk3Yjc1N2IyMzY0YTlhZWJjYTgwMDA1MgorTWVyZ2U6IGIwMGVmM2EgMGJmZDgxYgorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBBcHIgMjAgMjM6Mzg6MzEgMjAxMSArMDIwMAorCisgICAgTWVyZ2UgY29tbWl0ICcxLjE2LjAuMicKKworY29tbWl0IDBiZmQ4MWI5NzdlZDBhM2Q0ZmNhMWMyMWU5ZjRlNjVjOTJjM2ZlOWUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgQXByIDE2IDAwOjE3OjEwIDIwMTEgKzAyMDAKKworICAgIFJlbGVhc2UgMS4xNi4wLjIKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICA0ICsrLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDU4YzY0ODZjZGY0ODVkMDNmODQzYjI3ZDFmNjBlMzdlZWQ2Yjc3ZTUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgQXByIDE1IDIzOjMzOjM1IDIwMTEgKzAyMDAKKworICAgIGxpYmRwa2c6IEluY2x1ZGUgPGxvY2FsZS5oPiBmcm9tIDxpMThuLmg+IHRvIGZpeCB1bm9wdGltaXplZCBidWlsZHMKKyAgICAKKyAgICBUaGUgcGdldHRleHQoKSBtYWNyb3MgaW4gZ2V0dGV4dC5oIG1ha2UgdXNlIG9mIExDX01FU1NBR0VTLCB3aGljaCBnZXQKKyAgICBub3JtYWxseSBwdWxsZWQgZnJvbSA8bG9jYWxlLmg+IHRocm91Z2ggPGxpYmludGwuaD4sIGJ1dCB0aGF0IG9ubHkKKyAgICBoYXBwZW5zIG9uIG9wdGltaXplZCBidWlsZHMuIEFzIHRoaXMgaXMgYW4gaW1wbGVtZW50YXRpb24gZGV0YWlsLAorICAgIHBnZXR0ZXh0KCkgdXNlcnMgKHRocm91Z2ggdGhlIGxvY2FsIENfKCkgbWFjcm8pIHNob3VsZCBub3QgbmVlZCB0bworICAgIGtub3cgdGhleSBoYXZlIHRvIGluY2x1ZGUgPGxvY2FsZS5oPi4gQXJndWFibHkgdGhpcyBpcyBhIGRlZmljaWVuY3kKKyAgICBpbiBnZXR0ZXh0Lmggd2hpY2ggd2UgYXJlIHdvcmtpbmcgYXJvdW5kIGhlcmUuCisgICAgCisgICAgUmVwb3J0ZWQtYnk6IFN0ZXZlIExhbmdhc2VrIDxzdGV2ZS5sYW5nYXNla0B1YnVudHUuY29tPgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDIgKysKKyBsaWIvZHBrZy9pMThuLmggIHwgICAgNiArKysrKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDcgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDQzOGU1ODEzY2FhNzU5YTFjNmRiZmEyODJlNjhhYjQ1MWI0MjVlNzUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgQXByIDE1IDA3OjA5OjE0IDIwMTEgKzAyMDAKKworICAgIGRwa2ctc3BsaXQ6IENvcnJlY3RseSBzZXQgdGhlIGxhc3QgcGFydCBzcGxpdCBzaXplCisgICAgCisgICAgVGhlIHBhcnRzaXplIGZvciBlYWNoIHBhcnQgc2hvdWxkIGJlIHRoZSBzYW1lLCB0aGUgY29kZSB3YXMgd3JvbmdseQorICAgIHNldHRpbmcgdGhlIHBhcnRzaXplIHRvIHRoZSByZWFsIHNpemUgb2YgdGhlIGRhdGEgYmVpbmcgd3JpdHRlbi4KKyAgICAKKyAgICBSZWdyZXNzaW9uIGludHJvZHVjZWQgaW4gY29tbWl0IDUwNmRkMjdiNTZhNTcwZTAxOWU5MDk3NGVhMjg1ZmU0ZmQyZjhiZjguCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgfCAgICAxICsKKyBkcGtnLXNwbGl0L3NwbGl0LmMgfCAgIDEwICsrKysrKy0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDcgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKKworY29tbWl0IDk5MzgwNjY4NTkwYjM3MzRmYzEwNTUwNGVmMjU2OWQwMjZjNjMyMDkKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgQXByIDE1IDA3OjA0OjQ0IDIwMTEgKzAyMDAKKworICAgIGRwa2ctc3BsaXQ6IEZpeCAtLWF1dG8gdG8gbm90IGZhaWwgd2hlbiBvcGVuaW5nIHRoZSBuZXcgZGVwb3QgZmlsZQorICAgIAorICAgIFRoZSBjb2RlIHdhcyB3cm9uZ2x5IGNoZWNraW5nIGZvciBub24temVybyBmaWxlIGRlc2NyaXB0b3JzIHJldHVybmVkCisgICAgZnJvbSBjcmVhdCgyKSwgd2hpY2ggd2FzIG1ha2luZyBpdCBhbHdheXMgZmFpbC4KKyAgICAKKyAgICBSZWdyZXNzaW9uIGludHJvZHVjZWQgaW4gY29tbWl0IDEwMmFlZjI0ZTQzOGI3YWJhOWNmOTBhYjlmYzc1ZDNjMTNjNmM3Y2YuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgfCAgICA2ICsrKysrKworIGRwa2ctc3BsaXQvcXVldWUuYyB8ICAgIDIgKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDcgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGIwMGVmM2FhMzVlNzZlNzJmZTgxNDcyN2M1ZTVhZTI4YTZhNjg2MzkKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgQXByIDkgMDE6NTU6MzQgMjAxMSArMDIwMAorCisgICAgZHBrZy1kZWI6IGZpeCBlcnJvciBtZXNzYWdlIG91dHB1dCBieSByZWFkX2ZhaWwoKQorICAgIAorICAgIHJlYWRfZmFpbCgpIHNob3VsZCBvbmx5IGFzc3VtZSBhIHN5c3RlbSBlcnJvciBpZiByYyA8IDAuIEFueSBwb3NpdGl2ZQorICAgIHZhbHVlIG1lYW5zIHRoYXQgd2UgZGlkIG5vdCBtYW5hZ2UgdG8gcmVhZCBhcyBtdWNoIGRhdGEgYXMgd2Ugd2FudGVkCisgICAgYW5kIHNob3VsZCByZXN1bHQgaW4gdGhlICJ1bmV4cGVjdGVkIGVuZCBvZiBmaWxlIiBtZXNzYWdlLgorCisgZHBrZy1kZWIvZXh0cmFjdC5jIHwgICAgMiArLQorIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgMjdiODcyZmIwYTI2YjkyZmE5MDhmZDY5MWRiZTZhYmUyNjA1ZWQ4OQorQXV0aG9yOiBIZWxnZSBLcmV1dHptYW5uIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KK0RhdGU6ICAgVGh1IEFwciA3IDIxOjM4OjM1IDIwMTEgKzAyMDAKKworICAgIFVwZGF0ZSBHZXJtYW4gdHJhbnNsYXRpb24gb2YgbWFudWFsIHBhZ2VzCisgICAgCisgICAgVXBkYXRlIHRvIDIwMTB0LgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDUgKysrKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDkwMjNkYTE1MzMxODQ0MzlkNzUzYmNiYTZiODliNGFhNGVkYzkxZjAKK0F1dGhvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitEYXRlOiAgIFRodSBBcHIgNyAyMTozNzozNiAyMDExICswMjAwCisKKyAgICBVcGRhdGUgR2VybWFuIHRyYW5zbGF0aW9uIG9mIG1hbnVhbCBwYWdlcworICAgIAorICAgIFVwZGF0ZSB0byAyMDEwdC4KKworIG1hbi9wby9kZS5wbyB8ICAgMTkgKysrKysrKysrKy0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMTAgaW5zZXJ0aW9ucygrKSwgOSBkZWxldGlvbnMoLSkKKworY29tbWl0IDlkYzZlYTI5YjU5MDUwYWYxZmQwNmM2YzM0OGFmYWNjNDI4ZGU4ZjQKK0F1dGhvcjogTGFycyBCdWl0aW5jayA8bGFyc21hbnNAZ21haWwuY29tPgorRGF0ZTogICBXZWQgQXByIDYgMTQ6MDk6MDAgMjAxMSArMDIwMAorCisgICAgZHBrZy1xdWVyeSgxKTogaW1wcm92ZSBkZXNjcmlwdGlvbiBvZiAtLXNlYXJjaAorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDIgKysKKyBtYW4vZHBrZy1xdWVyeS4xIHwgICAgOCArKysrLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQorCitjb21taXQgNjY4MTBhNWVmMzZkZmE4YzU3NmRjNDEyNWFmYzNiOTgzNjlmODUzOAorTWVyZ2U6IDIzOTMxOTMgZmU2OWFlNAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBBcHIgNSAwNzo0MTozMyAyMDExICswMjAwCisKKyAgICBNZXJnZSBicmFuY2ggJ3NpZCcgKHRocm91Z2ggdGFnICcxLjE2LjAuMScpCisgICAgCisgICAgQ29uZmxpY3RzOgorICAgIAlkZWJpYW4vY2hhbmdlbG9nCisKK2NvbW1pdCBmZTY5YWU0ODc0OTE5MzE0YzdmMDc1N2JiMTU1YmFlMzhlN2YyMTFiCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIEFwciA1IDA3OjI5OjI0IDIwMTEgKzAyMDAKKworICAgIFJlbGVhc2UgMS4xNi4wLjEKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICA0ICsrLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDIzOTMxOTNjMjdlYjgwNmVhODFkNTRjOGE4ZjA2NjQxN2Y0ZTRkZmQKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gQXByIDMgMTc6MzI6MjUgMjAxMSArMDIwMAorCisgICAgZHBrZzogUmVuYW1lIHNldF9zZWxpbnV4X3BhdGhfY29udGV4dCgpIHRvIHRhcm9iamVjdF9zZXRfc2VfY29udGV4dCgpCisgICAgCisgICAgVGhpcyBwdXRzIGl0IGluIGxpbmUgd2l0aCB0aGUgcmVzdCBvZiB0YXJvYmplY3QgZmlsZXN5c3RlbSBtZXRhZGF0YQorICAgIHNldHRlcnMuCisKKyBzcmMvYXJjaGl2ZXMuYyB8ICAgIDYgKysrLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA4ODhhNWJiYmQ5MTZkNGEyZjNhNTE5YzFjNDU1MTllODYxNGQxNzgyCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIEFwciAzIDE1OjI3OjIxIDIwMTEgKzAyMDAKKworICAgIGRwa2c6IGRvbid0IG9oc2hpdGUgaWYgbHV0aW1lcygpIGZhaWxzIHdpdGggRU5PU1lTCisgICAgCisgICAgR2xpYmMgaW1wbGVtZW50cyBsdXRpbWVzKCkgb24gdG9wIG9mIHV0aW1lbnNhdCgpIHdoaWNoIGlzIG9ubHkgcHJvdmlkZWQKKyAgICBieSBMaW51eCA+PSAyLjYuMjIuIFdpdGggb2xkZXIga2VybmVscyBpdCByZXR1cm5zIEVOT1NZUy4KKyAgICAKKyAgICBUaGlzIHJlZ3Jlc3Npb24gd2FzIGludHJvZHVjZWQgYnkgY29tbWl0CisgICAgYjNlYjU5Y2Y0M2MyODZiYjZjOTA2YzAwZWYxY2RjMGVjMjFmNDc0ZCB3aGljaCBpbXBsZW1lbnRlZCBzdXBwb3J0IGZvcgorICAgIHNldHRpbmcgdGltZXN0YW1wcyBvZiBzeW1saW5rcy4KKyAgICAKKyAgICBSZXBvcnRlZC1ieTogTWljaGFlbCBQcm9rb3AgPG1pa2FAZGViaWFuLm9yZz4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAyICsrCisgc3JjL2FyY2hpdmVzLmMgICB8ICAgIDIgKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGZkZGJhMzBkNzQ4NTZlMmQ1YzNmMjg3MzQzNTY5ZmMyNTk3MjliYzAKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gQXByIDMgMTQ6NTg6MDYgMjAxMSArMDIwMAorCisgICAgZHBrZzogZml4IHJlZ3Jlc3Npb24gd2hlbiB1c2luZyAtUiBvcHRpb24KKyAgICAKKyAgICBUaGUgcmVncmVzc2lvbiB3YXMgaW50cm9kdWNlZCBpbiBjb21taXQKKyAgICAyODBhYzkxNGNjNTJlZTVkZTA3OWMwODMzYmIxZGY1MDA1YzFlN2FiLiBUaGUgdmFyaWFibGUgdXNlZCBmb3IgdGhlIGxvb3AKKyAgICBnb3QgaW5jcmVtZW50ZWQgdHdpY2UgZm9yIGVhY2ggaXRlcmF0aW9uLCB0aGUgbmV0IHJlc3VsdCBpcyB0aGF0IHRoZSBsaXN0CisgICAgb2YgZmlsZW5hbWVzIGNvbnRhaW5zIHJhbmRvbSBkYXRhIG9uIGhhbGYgb2YgdGhlIGVudHJpZXMuCisgICAgCisgICAgUmVwb3J0ZWQtYnk6IENyYWlnIFNhbmRlcnMgPGNhc0B0YXoubmV0LmF1PgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDcgKysrKysrKworIHNyYy9hcmNoaXZlcy5jICAgfCAgICAyICstCisgMiBmaWxlcyBjaGFuZ2VkLCA4IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBiN2U0YzRjMmQ3ZDRlOWViNzQ0YzRlZmRhYjM0M2Y1NDc4ZTAwNDc5CitBdXRob3I6IEhlbGdlIEtyZXV0em1hbm4gPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorRGF0ZTogICBTdW4gQXByIDMgMTI6MjI6MjQgMjAxMSArMDIwMAorCisgICAgVXBkYXRlIEdlcm1hbiBzY3JpcHRzIHRyYW5zbGF0aW9uCisgICAgCisgICAgVXBkYXRlIHRvIDUxNXQKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAzICsrKworIHNjcmlwdHMvcG8vZGUucG8gfCAgIDQ4ICsrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgMjkgaW5zZXJ0aW9ucygrKSwgMjIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAwY2FjYjBjM2ExZDFmODM3Yzk1N2YzOTE3YTA0MGFjZTZkNjBmOWU3CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIEFwciAzIDA5OjUyOjMzIDIwMTEgKzAyMDAKKworICAgIERwa2c6OlZlcnNpb246IHVwZGF0ZSB2ZXJzaW9uX2NoZWNrIHRvIGZvcmJpZCB2ZXJzaW9ucyBzdGFydGluZyB3aXRoIG5vbiBkaWdpdHMKKyAgICAKKyAgICBBZGFwdGVkIHRoZSBjb2RlIHRvIHJlbHkgb24gdGhlIHBhcnNpbmcgZG9uZSBieSB0aGUgY29uc3RydWN0b3IgdG8gc3BsaXQKKyAgICB0aGUgdmVyc2lvbiBudW1iZXIgcHJvcGVybHkgaW5zdGVhZCBvZiByZWRvaW5nIHNpbWlsYXIgcmVnZXhlcyBpbgorICAgIHZlcnNpb25fY2hlY2soKS4KKyAgICAKKyAgICBVcGRhdGVkIHRoZSB0ZXN0IHN1aXRlIGFjY29yZGluZ2x5LgorCisgc2NyaXB0cy9EcGtnL1ZlcnNpb24ucG0gICAgICB8ICAgMjUgKysrKysrKysrKysrKysrKy0tLS0tLS0tLQorIHNjcmlwdHMvdC8xMDBfRHBrZ19WZXJzaW9uLnQgfCAgICA2ICsrKysrLQorIDIgZmlsZXMgY2hhbmdlZCwgMjEgaW5zZXJ0aW9ucygrKSwgMTAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBmYTk4NTI0YjU4N2ZkMWQ4YzM3NmMwMGNiZDUxZWVlZTc1ZDFjMTk3CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIEFwciAzIDA5OjQ1OjIwIDIwMTEgKzAyMDAKKworICAgIGxpYmRwa2c6IGFkZCBub24tcmVncmVzc2lvbiB0ZXN0IGZvciB2ZXJzaW9uIG51bWJlciBzdGFydGluZyB3aXRoIG5vbi1kaWdpdAorICAgIAorICAgIEFuZCB1cGRhdGUgdGhlIG5vbi1yZWdyZXNzaW9uIHRlc3QgZm9yIGludmFsaWQgY2hhcmFjdGVycyB0byBwdXQKKyAgICB0aGUgaW52YWxpZCBjaGFyYWN0ZXIgYXMgdGhlIHNlY29uZCBjaGFyYWN0ZXIgYW5kIG5vdCB0aGUgZmlyc3QgKHdoaWNoCisgICAgd291bGQgYmUgY2F1Z2h0IGJ5IHRoZSBtb3JlIHN0cmljdCBub24tZGlnaXQgY2hlY2spLgorCisgbGliL2Rwa2cvdGVzdC90LXZlcnNpb24uYyB8ICAgIDcgKysrKystLQorIDEgZmlsZXMgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgMTA2YzIxZmM2Y2E1MDNkYTkyYWRkYjliODdkYjA5NGE1NTdkZTkyMgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBBcHIgMiAxNjo1NTo0MCAyMDExICswMjAwCisKKyAgICBEcGtnOjpTb3VyY2U6OlBhY2thZ2U6IEFkZCDigJguZ2l0bW9kdWxlc+KAmSB0byB0aGUgZGVmYXVsdCBpZ25vcmUgbGlzdHMKKyAgICAKKyAgICBDbG9zZXM6ICM2MjA0OTAKKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgICAgICB8ICAgIDEgKworIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbSB8ICAgIDQgKysrLQorIDIgZmlsZXMgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgODgyMDZhZWI1MWQ3MTNiY2ZjNmEwYTRkZDFkYWQ2YjAxM2Y1MTQ4MgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBBcHIgMiAxNjo0MzoxNCAyMDExICswMjAwCisKKyAgICBJbnN0YWxsIGRlYi1zcmMtY29udHJvbCg1KSBtYW4gcGFnZXMgaW4gZHBrZy1kZXYKKyAgICAKKyAgICBDbG9zZXM6ICM2MjA1MjAKKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgIHwgICAgMyArKysKKyBkZWJpYW4vZHBrZy1kZXYuaW5zdGFsbCB8ICAgIDEgKworIDIgZmlsZXMgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgMTJmMmNhYjQ1YjY5YzI0MmI1OGFkYWMyMjA4MzBkZmMzNmZjNzlhMgorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBBcHIgMiAxMDowMjozMyAyMDExICswMjAwCisKKyAgICBEcGtnOjpEZXBzOiBzb21lIHR5cG8gYW5kIGNvbnNpc3RlbmN5IGZpeGVzIGluIHRoZSBQT0QgZG9jdW1lbnRhdGlvbgorCisgc2NyaXB0cy9EcGtnL0RlcHMucG0gfCAgIDM1ICsrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAxOCBpbnNlcnRpb25zKCspLCAxNyBkZWxldGlvbnMoLSkKKworY29tbWl0IDA5YmM2MmNhOWRjNzlkZjM3NmJkYWU0NGRhNzkyMDk5NmU2Nzc3YzYKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgQXByIDIgMDk6NDY6NDkgMjAxMSArMDIwMAorCisgICAgRHBrZzo6RGVwczogSW1wbGVtZW50IG5ldyAicmVzZXQiIG1ldGhvZAorICAgIAorICAgIEJ1bXAgbW9kdWxlIHZlcnNpb24gdG8gMS4wMSBkdWUgdG8gdGhpcy4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgIHwgICAgNCArKy0KKyBzY3JpcHRzL0Rwa2cvRGVwcy5wbSB8ICAgNTIgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgMzggaW5zZXJ0aW9ucygrKSwgMTggZGVsZXRpb25zKC0pCisKK2NvbW1pdCA1N2Q5NThiYjM3OThiYjlhOWE3MjdhOTcwMGFlMGJmZDA1ZjIzYzcyCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IEFwciAyIDA5OjIyOjAxIDIwMTEgKzAyMDAKKworICAgIEFkZCBuZXcgY2hhbmdlbG9nIGVudHJ5IGZvciAxLjE2LjEKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICA2ICsrKysrKworIDEgZmlsZXMgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgZDM2ODZiNTU1MmYyOGEzNTdkNjc4YjQ1M2E4NjliOWQxMGYxYWM0ZgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBBcHIgMSAyMzo1NzowNiAyMDExICswMjAwCisKKyAgICBSZWxlYXNlIDEuMTYuMAorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDQgKystLQorIDEgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgZWI0OGRhN2FhZTk3OTNhYzI5ZGFhNzE5N2QyOGM4MzBmYTZmMzIzNQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBBcHIgMSAxOToyNjo1MSAyMDExICswMjAwCisKKyAgICBDb3JyZWN0IGFuZCBjbGFyaWZ5IGNoYW5nZWxvZyBlbnRyaWVzCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMyArLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDBmZDQxZTJiYjk2OTZlZjkxZTVmMThhYTA3YjJhY2M3ODU2M2MzNTUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgQXByIDEgMjI6MTM6NTUgMjAxMSArMDIwMAorCisgICAgUmVnZW5lcmF0ZSAucG90IGZpbGVzIGFuZCBtZXJnZSAucG8gZmlsZXMgd2l0aCB0aGVtCisKKyBkc2VsZWN0L3BvL2JzLnBvICAgICAgICB8ICAxMTYgKystLQorIGRzZWxlY3QvcG8vY2EucG8gICAgICAgIHwgIDExNiArKy0tCisgZHNlbGVjdC9wby9jcy5wbyAgICAgICAgfCAgMTE2ICsrLS0KKyBkc2VsZWN0L3BvL2RhLnBvICAgICAgICB8ICAxMTYgKystLQorIGRzZWxlY3QvcG8vZGUucG8gICAgICAgIHwgIDExNiArKy0tCisgZHNlbGVjdC9wby9kc2VsZWN0LnBvdCAgfCAgMTE4ICsrLS0KKyBkc2VsZWN0L3BvL2VsLnBvICAgICAgICB8ICAxMTYgKystLQorIGRzZWxlY3QvcG8vZXMucG8gICAgICAgIHwgIDExNiArKy0tCisgZHNlbGVjdC9wby9ldC5wbyAgICAgICAgfCAgMTE2ICsrLS0KKyBkc2VsZWN0L3BvL2V1LnBvICAgICAgICB8ICAxMTYgKystLQorIGRzZWxlY3QvcG8vZnIucG8gICAgICAgIHwgIDExNiArKy0tCisgZHNlbGVjdC9wby9nbC5wbyAgICAgICAgfCAgMTE2ICsrLS0KKyBkc2VsZWN0L3BvL2h1LnBvICAgICAgICB8ICAxMTYgKystLQorIGRzZWxlY3QvcG8vaWQucG8gICAgICAgIHwgIDExNiArKy0tCisgZHNlbGVjdC9wby9pdC5wbyAgICAgICAgfCAgMTE2ICsrLS0KKyBkc2VsZWN0L3BvL2phLnBvICAgICAgICB8ICAxMTYgKystLQorIGRzZWxlY3QvcG8va28ucG8gICAgICAgIHwgIDExNiArKy0tCisgZHNlbGVjdC9wby9uYi5wbyAgICAgICAgfCAgMTE2ICsrLS0KKyBkc2VsZWN0L3BvL25sLnBvICAgICAgICB8ICAxMTYgKystLQorIGRzZWxlY3QvcG8vbm4ucG8gICAgICAgIHwgIDExNiArKy0tCisgZHNlbGVjdC9wby9wbC5wbyAgICAgICAgfCAgMTE2ICsrLS0KKyBkc2VsZWN0L3BvL3B0LnBvICAgICAgICB8ICAxMTYgKystLQorIGRzZWxlY3QvcG8vcHRfQlIucG8gICAgIHwgIDExNiArKy0tCisgZHNlbGVjdC9wby9yby5wbyAgICAgICAgfCAgMTE2ICsrLS0KKyBkc2VsZWN0L3BvL3J1LnBvICAgICAgICB8ICAxMTYgKystLQorIGRzZWxlY3QvcG8vc2sucG8gICAgICAgIHwgIDExNiArKy0tCisgZHNlbGVjdC9wby9zdi5wbyAgICAgICAgfCAgMTE2ICsrLS0KKyBkc2VsZWN0L3BvL3RsLnBvICAgICAgICB8ICAxMTYgKystLQorIGRzZWxlY3QvcG8vdmkucG8gICAgICAgIHwgIDExNiArKy0tCisgZHNlbGVjdC9wby96aF9DTi5wbyAgICAgfCAgMTE2ICsrLS0KKyBkc2VsZWN0L3BvL3poX1RXLnBvICAgICB8ICAxMTYgKystLQorIG1hbi9wby9kcGtnLW1hbi5wb3QgICAgIHwgIDE5MCArKysrLS0tCisgbWFuL3BvL2VzLnBvICAgICAgICAgICAgfCAgMTk5ICsrKystLS0KKyBtYW4vcG8vZnIucG8gICAgICAgICAgICB8ICAxOTkgKysrKy0tLQorIG1hbi9wby9odS5wbyAgICAgICAgICAgIHwgIDE5MyArKysrLS0tCisgbWFuL3BvL2phLnBvICAgICAgICAgICAgfCAgMTkzICsrKystLS0KKyBtYW4vcG8vcGwucG8gICAgICAgICAgICB8ICAxOTkgKysrKy0tLQorIG1hbi9wby9wdF9CUi5wbyAgICAgICAgIHwgIDE5MiArKysrLS0tCisgbWFuL3BvL3J1LnBvICAgICAgICAgICAgfCAgMTkzICsrKystLS0KKyBtYW4vcG8vc3YucG8gICAgICAgICAgICB8ICAxOTkgKysrKy0tLQorIHBvL2FzdC5wbyAgICAgICAgICAgICAgIHwgMTUxMiArKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vYnMucG8gICAgICAgICAgICAgICAgfCAxNDM0ICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vY2EucG8gICAgICAgICAgICAgICAgfCAxNTMxICsrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vY3MucG8gICAgICAgICAgICAgICAgfCAxNTE1ICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9kYS5wbyAgICAgICAgICAgICAgICB8IDE1MDUgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2RlLnBvICAgICAgICAgICAgICAgIHwgIDUwMiArKysrKysrKy0tLS0tLS0tCisgcG8vZHBrZy5wb3QgICAgICAgICAgICAgfCAxNDMxICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vZHoucG8gICAgICAgICAgICAgICAgfCAxNTE0ICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9lbC5wbyAgICAgICAgICAgICAgICB8IDE1MTQgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2VvLnBvICAgICAgICAgICAgICAgIHwgMTUwMiArKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vZXMucG8gICAgICAgICAgICAgICAgfCAxNTE2ICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9ldC5wbyAgICAgICAgICAgICAgICB8IDE0ODkgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2V1LnBvICAgICAgICAgICAgICAgIHwgMTUwMiArKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vZnIucG8gICAgICAgICAgICAgICAgfCAxNTE3ICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9nbC5wbyAgICAgICAgICAgICAgICB8IDE1MTQgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2h1LnBvICAgICAgICAgICAgICAgIHwgMTUwOCArKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vaWQucG8gICAgICAgICAgICAgICAgfCAxNTAyICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9pdC5wbyAgICAgICAgICAgICAgICB8IDE1MDQgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2phLnBvICAgICAgICAgICAgICAgIHwgMTUwMiArKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8va20ucG8gICAgICAgICAgICAgICAgfCAxNTE0ICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9rby5wbyAgICAgICAgICAgICAgICB8IDE1MDIgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2t1LnBvICAgICAgICAgICAgICAgIHwgMTQ2MyArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9sdC5wbyAgICAgICAgICAgICAgICB8IDE0ODAgKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vbXIucG8gICAgICAgICAgICAgICAgfCAxNDk2ICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9uYi5wbyAgICAgICAgICAgICAgICB8IDE1MTUgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL25lLnBvICAgICAgICAgICAgICAgIHwgMTUxNCArKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vbmwucG8gICAgICAgICAgICAgICAgfCAxNTE2ICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9ubi5wbyAgICAgICAgICAgICAgICB8IDE1MTIgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL3BhLnBvICAgICAgICAgICAgICAgIHwgMTQ5MyArKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vcGwucG8gICAgICAgICAgICAgICAgfCAxNDk3ICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9wdC5wbyAgICAgICAgICAgICAgICB8IDE1MTUgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL3B0X0JSLnBvICAgICAgICAgICAgIHwgMTUxNiArKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vcm8ucG8gICAgICAgICAgICAgICAgfCAxNTAyICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9ydS5wbyAgICAgICAgICAgICAgICB8IDE1MDIgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL3NrLnBvICAgICAgICAgICAgICAgIHwgMTUwMiArKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vc3YucG8gICAgICAgICAgICAgICAgfCAxNTE1ICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby90aC5wbyAgICAgICAgICAgICAgICB8IDE1MTUgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL3RsLnBvICAgICAgICAgICAgICAgIHwgMTUxMiArKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vdmkucG8gICAgICAgICAgICAgICAgfCAxNTAyICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby96aF9DTi5wbyAgICAgICAgICAgICB8IDE1MDIgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL3poX1RXLnBvICAgICAgICAgICAgIHwgMTUxNCArKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgc2NyaXB0cy9wby9jYS5wbyAgICAgICAgfCAgMTIyICsrLS0KKyBzY3JpcHRzL3BvL2RlLnBvICAgICAgICB8ICAxMjIgKystLQorIHNjcmlwdHMvcG8vZHBrZy1kZXYucG90IHwgIDEyNCArKy0tCisgc2NyaXB0cy9wby9lcy5wbyAgICAgICAgfCAgMTIyICsrLS0KKyBzY3JpcHRzL3BvL2ZyLnBvICAgICAgICB8ICAxMjIgKystLQorIHNjcmlwdHMvcG8vcGwucG8gICAgICAgIHwgIDEyMiArKy0tCisgc2NyaXB0cy9wby9ydS5wbyAgICAgICAgfCAgMTIyICsrLS0KKyBzY3JpcHRzL3BvL3N2LnBvICAgICAgICB8ICAxMjIgKystLQorIDg5IGZpbGVzIGNoYW5nZWQsIDM1MDQ2IGluc2VydGlvbnMoKyksIDMxOTAwIGRlbGV0aW9ucygtKQorCitjb21taXQgOTIyMDkzYjVmYjcxNTU1NDQ1NmVmNDRiYjRjZTcwZTg5ZGM0ZTMzNworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBBcHIgMSAyMzo0OToyNCAyMDExICswMjAwCisKKyAgICBkcGtnLWRpdmVydDogVW5saW5rIHRoZSBzb3VyY2UgZmlsZSB3aGVuIG1vdmluZyBhY3Jvc3MgZmlsZXN5c3RlbXMKKyAgICAKKyAgICBPdGhlcndpc2Ugd2UgbWlnaHQgbGVhdmUgY3J1ZnQgYmVoaW5kLgorICAgIAorICAgIFJlZ3Jlc3Npb24gaW50cm9kdWNlZCBpbiBjb21taXQgMDJiMTJkNzVmMWVmZjdjMTg0ZmFmYjVhNjYzYTA0MjFlOWE2NDVlYS4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAyICsrCisgc3JjL2RpdmVydGNtZC5jICB8ICAgIDQgKysrKworIDIgZmlsZXMgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgMTYyNDQ2NmMzZDNjODgyYjU1MWYwYjVkZWFlOGRiNDAxNjMzMmU1YQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBBcHIgMSAyMzozODoyMCAyMDExICswMjAwCisKKyAgICBkcGtnLWRpdmVydDogSW5saW5lIHJlbmFtZV9tdigpIGludG8gZmlsZV9yZW5hbWUoKQorCisgc3JjL2RpdmVydGNtZC5jIHwgICAxNyArKysrKy0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCAxMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDFjZmE5OTFkYWMzNjNjMzQ5NGVkYmI4YTkxNGIzNjljYmYzNzRkMDQKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgQXByIDEgMjM6MzM6MTUgMjAxMSArMDIwMAorCisgICAgZHBrZy1kaXZlcnQ6IE1vdmUgYXRvbWljIHJlbmFtZSBsb2dpYyBmcm9tIHJlbmFtZV9tdigpIHRvIGZpbGVfY29weSgpCisgICAgCisgICAgVGhpcyBtYWtlcyBmaWxlX2NvcHkoKSBzYWZlIHRvIHVzZSBieSBpdHNlbGYsIGFuZCB3aWxsIGFsbG93IHRvIHB1bGwgaXQKKyAgICBvdXQgYW5kIHVzZSBpdCBpbiBvdGhlciBwbGFjZXMgaW4gdGhlIGZ1dHVyZS4KKworIHNyYy9kaXZlcnRjbWQuYyB8ICAgMjAgKysrKysrKysrLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDkgaW5zZXJ0aW9ucygrKSwgMTEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBkMWFkMzNmMDU3ZDBhYTc2ZDY2NDM0ZjQwZGVkZjY3NDczMDk1OTE4CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEFwciAxIDIzOjE4OjA1IDIwMTEgKzAyMDAKKworICAgIGRwa2ctZGl2ZXJ0OiBDaGFuZ2UgZmlsZV9jb3B5KCkgYW5kIHJlbmFtZV9tdigpIHRvIG9oc2hpdGUoKSBvbiBlcnJvcgorICAgIAorICAgIFRoaXMgaGFzIHNldmVyYWwgY29uc2VxdWVuY2VzLCB0aGUgY29kZSB3aWxsIG5vdCB0cmlnZ2VyIGxlYWsgZGV0ZWN0b3JzCisgICAgbGlrZSBjcHBjaGVjayBkdWUgdG8gb2hzaGl0ZSgpIGJlaW5nIG1hcmtlZCBub24tcmV0dXJuaW5nLCBhbmQgdGhlIGVycm9yCisgICAgbWVzc2FnZXMgYXJlIGdvaW5nIHRvIGJlIG1vcmUgZGVzY3JpcHRpdmUuCisgICAgCisgICAgQ2xvc2VzOiAjNjIwMzgwCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMyArKysKKyBzcmMvZGl2ZXJ0Y21kLmMgIHwgICAyNyArKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDEzIGluc2VydGlvbnMoKyksIDE3IGRlbGV0aW9ucygtKQorCitjb21taXQgMDQ4OWQxM2NiMDQ2OWFkNjRkNGIzNDVhY2MyYzAzNzJhNTU4OGJkMAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBBcHIgMSAyMjo1MzoyMSAyMDExICswMjAwCisKKyAgICBSZXZlcnQgImRwa2ctZGl2ZXJ0OiBmaXggbWlub3IgZmlsZSBkZXNjcmlwdG9yIGxlYWsgZm91bmQgYnkgY3BwY2hlY2siCisgICAgCisgICAgVGhpcyByZXZlcnRzIGNvbW1pdCBiZGNlZTMxOWE5MGVlZTQ5NGFmNzBlNjcyNWZlZDhiNGU4ZjE2NTg0LgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDEgLQorIHNyYy9kaXZlcnRjbWQuYyAgfCAgICA0ICstLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKKworY29tbWl0IDlhNTEwM2M3YmQ5NmQzMmQ2ODVhYzlmNWJiMzhiMGI0ZjBhOWQwMzAKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgTWFyIDI0IDAzOjIxOjEzIDIwMTEgKzAxMDAKKworICAgIGRwa2ctZ2VuY2hhbmdlczogRG8gbm90IHdhcm4gd2hlbiBhZGRpbmcgZmlsZXMgdy9vIG1hdGNoaW5nIGFyY2hpdGVjdHVyZQorICAgIAorICAgIEZpeCB1bmRlZmluZWQgdmFsdWUgdXNlYWdlIHdoZW4gYWRkaW5nIGZpbGVzIHcvbyBhIG1hdGNoaW5nIGFyY2hpdGVjdHVyZSwKKyAgICBiZWNhdXNlIHRoZXkgYXJlIG5vdCBwcmVzZW50IGluIGRlYmlhbi9jb250cm9sLCB0aGlzIGlzIG1vc3QgY29tbW9ubHkgdGhlCisgICAgY2FzZSBkdWUgdG8gZHBrZy1kaXN0YWRkZmlsZS4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgIHwgICAgMyArKysKKyBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbCB8ICAgIDYgKysrKy0tCisgMiBmaWxlcyBjaGFuZ2VkLCA3IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBkNTcxZjllZWZmYWQwMWFjMWUyODFjODNhYzNlYWU0Nzk0NmNmYzdiCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEFwciAxIDAxOjI3OjMwIDIwMTEgKzAyMDAKKworICAgIGxpYmRwa2c6IE1ha2UgYnVmZmVyX2luaXQoKSBhbmQgYnVmZmVyX2RvbmUoKSB0YWtlIG9ubHkgb25lIGFyZ3VtZW50CisgICAgCisgICAgVGhlc2UgZnVuY3Rpb25zIG9ubHkgaGFuZGxlIHRoZSBvdXRwdXQgYnVmZmVyX2RhdGEgYW5kIHRodXMgdGhlCisgICAgcmVhZF9kYXRhIGFyZ3VtZW50IHdpbGwgbmV2ZXIgZ2V0IHVzZWQuCisKKyBsaWIvZHBrZy9idWZmZXIuYyB8ICAgMjAgKysrKysrKysrKy0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDEwIGluc2VydGlvbnMoKyksIDEwIGRlbGV0aW9ucygtKQorCitjb21taXQgYjNlYjU5Y2Y0M2MyODZiYjZjOTA2YzAwZWYxY2RjMGVjMjFmNDc0ZAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBNYXIgMzEgMjA6MTM6NTUgMjAxMSArMDIwMAorCisgICAgZHBrZzogU2V0IHRoZSBtb2RpZmljYXRpb24gdGltZSBmb3IgdW5wYWNrZWQgc3ltbGlua3MgaWYgcG9zc2libGUKKyAgICAKKyAgICBVc2UgbHV0aW1lcygpIGNvbmRpdGlvbmFsbHkgYXMgaXQgbWlnaHQgbm90IGJlIHdpZGVseSBhdmFpbGFibGUuCisKKyBjb25maWd1cmUuYWMgICAgIHwgICAgMiArLQorIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAxICsKKyBzcmMvYXJjaGl2ZXMuYyAgIHwgICAxNCArKysrKysrKystLS0tLQorIDMgZmlsZXMgY2hhbmdlZCwgMTEgaW5zZXJ0aW9ucygrKSwgNiBkZWxldGlvbnMoLSkKKworY29tbWl0IGU0OWVmY2JiYjkzZDE4MTM4ZGEzMWNkY2MxMTRjYTFiYWE2N2Q1NmMKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgTWFyIDMxIDIwOjExOjU0IDIwMTEgKzAyMDAKKworICAgIGRwa2c6IE1vdmUgbGNob3duKCkgY2FsbCBmcm9tIHRhcm9iamVjdCgpIHRvIHRhcm9iamVjdF9zZXRfcGVybXMoKQorICAgIAorICAgIFRoaXMgdW5pZmllcyBhIGJpdCBtb3JlIHRoZSB0YXJvYmplY3QgcGVybWlzc2lvbiBoYW5kbGluZyBpbnRvIGEgc2luZ2xlCisgICAgcGxhY2UuCisKKyBzcmMvYXJjaGl2ZXMuYyB8ICAgMTggKysrKysrKysrLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA5IGluc2VydGlvbnMoKyksIDkgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA2MzIwNDhhMGExY2QzODE1YTczN2Y0ZDBiZjVmZGRjZjZiZGNlZmQ2CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIE1hciAyMSAxODozMTo1NSAyMDExICswMjAwCisKKyAgICBsaWJkcGtnOiBNb3ZlIG10aW1lIGZyb20gZmlsZV9zdGF0IGJhY2sgdG8gdGFyX2luZm8KKyAgICAKKyAgICBUaGVyZSdzIG5ldmVyIGEgcmVhc29uIHRvIG92ZXJyaWRlIHRoZSBtdGltZSwgbm8gcG9pbnQgaW4gY2FycnlpbmcgYW5kCisgICAgY29weWluZyBpdCBhcm91bmQgaW4gZmlsZV9zdGF0IGZvciBub3cuCisKKyBsaWIvZHBrZy9maWxlLmggIHwgICAgMSAtCisgbGliL2Rwa2cvdGFyZm4uYyB8ICAgIDIgKy0KKyBsaWIvZHBrZy90YXJmbi5oIHwgICAgMSArCisgc3JjL2FyY2hpdmVzLmMgICB8ICAgMTIgKysrKystLS0tLS0tCisgNCBmaWxlcyBjaGFuZ2VkLCA3IGluc2VydGlvbnMoKyksIDkgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBiNWU0YzkzZjgyYTRhOTE1ZjU4ZGYwMzM1ZmZlY2JhOWY5OGY2NzViCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IE1hciAzMSAxOTo0ODoyNSAyMDExICswMjAwCisKKyAgICBkcGtnOiBVc2UgdXRpbWVzKDIpIGluc3RlYWQgb2Ygb2Jzb2xldGUgdXRpbWUoMikKKyAgICAKKyAgICBQT1NJWC4xLTIwMDggbWFya2VkIHV0aW1lKDIpIGFzIG9ic29sZXRlLiBJZGVhbGx5IHdlJ2Qgc3dpdGNoIHRvIHVzZQorICAgIHV0aW1lbnNhdCgyKSwgd2hpY2ggd291bGQgc2ltcGxpZnkgcXVpdGUgYSBiaXQgdGhlIGNvZGUsIGJ1dCBpdCdzIG5vdAorICAgIHlldCB3aWRlbHkgYXZhaWxhYmxlLCBhbmQgdXNpbmcgaXQgd291bGQgaW1wbHkgaGF2aW5nIHRvIHN1cHBvcnQKKyAgICBmYWxsYmFjayBjb2RlIGF0IGNvbXBpbGF0aW9uIGFuZCBydW4tdGltZS4gVGhpcyBjYW4gYmUgZG9uZSBsYXRlciBvbgorICAgIG9uY2Ugd2UgdXAgdGhlIFBPU0lYIGJhc2VsaW5lLgorCisgc3JjL2FyY2hpdmVzLmMgfCAgIDEzICsrKysrKysrLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDggaW5zZXJ0aW9ucygrKSwgNSBkZWxldGlvbnMoLSkKKworY29tbWl0IDM2YTM4ODNlZTE1ZTZjMzlhYjU0NzUwYjEzNjVkMjE3YWE0OGJmNzUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgTWFyIDMxIDE5OjM3OjE0IDIwMTEgKzAyMDAKKworICAgIGRwa2c6IE1vdmUgY29uZGl0aW9uYWxzIHRvIHRhcm9iamVjdF9zZXRfKigpIGZ1bmN0aW9ucworICAgIAorICAgIFRoaXMgd2lsbCBhbGxvdyB0byBoYW5kbGUgdGhlIGRpZmZlcmVudCBjYXNlcyB0cmFuc3BhcmVudGx5LiBQYXNzIGEKKyAgICB0YXJfZW50cnkgdG8gZWFjaCBvZiB0aGUgZnVuY3Rpb25zLgorCisgc3JjL2FyY2hpdmVzLmMgfCAgIDIwICsrKysrKysrKysrKysrLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAxNCBpbnNlcnRpb25zKCspLCA2IGRlbGV0aW9ucygtKQorCitjb21taXQgZjI4MWJjMGZkNjRjNTYzZTQ1MjA1MDE0NWMwYTVjMmI2Mjk0MTA1ZAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBNYXIgMzEgMTU6MTc6MTAgMjAxMSArMDIwMAorCisgICAgZHBrZzogUmVuYW1lIG5ld3Rhcm9iamVjdF9hbGxtb2RlcygpIHRvIHRhcm9iamVjdF9zZXRfcGVybXMoKQorCisgc3JjL2FyY2hpdmVzLmMgfCAgICA0ICsrLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDM3ZDg2ZjJiNzcyZDZhYWY4ZDI1OTcyZTMyZTE5ZjM4YTI5ZTY3NmYKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgTWFyIDMxIDE1OjE2OjQ4IDIwMTEgKzAyMDAKKworICAgIGRwa2c6IFJlbmFtZSBuZXd0YXJvYmplY3RfdXRpbWUoKSB0byB0YXJvYmplY3Rfc2V0X210aW1lKCkKKworIHNyYy9hcmNoaXZlcy5jIHwgICAgNCArKy0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA1ZTUwYTkyNmIyMTdlZDAxZGEzNWI2ZWNjZDY1NmJhN2VjNDdkMWU5CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IE1hciAzMSAxNTowNToxMSAyMDExICswMjAwCisKKyAgICBkcGtnOiBGYWN0b3Igb3V0IG5ld3Rhcm9iamVjdF9hbGxtb2RlcygpIGNhbGwKKworIHNyYy9hcmNoaXZlcy5jIHwgICAgNyArKy0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDUgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBiMWVmOTExNjE1YzlmZWMxMTYzY2UyYjlkNmZkYjljYjQ2YjQzMzc3CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIE1hciAyMSAxODozMDo0MCAyMDExICswMjAwCisKKyAgICBkcGtnOiBNb3ZlIG5ld3Rhcm9iamVjdF91dGltZSgpIGNhbGwgb3V0IG9mIG5ld3Rhcm9iamVjdF9hbGxtb2RlcygpCisgICAgCisgICAgQWx3YXlzIGNhbGwgbmV3dGFyb2JqZWN0X3V0aW1lKCkgZm9yIGFsbCB0YXIgb2JqZWN0IHR5cGVzLCBleGNlcHQKKyAgICBzeW1saW5rcy4KKworIHNyYy9hcmNoaXZlcy5jIHwgICAgNCArKy0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAwN2JiYjczZmNkOGVlMGE5MTE1MzVkNmRiZTUzYjA3ZThmZjk5ZjNiCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IE1hciAzMSAxNDowMTozMiAyMDExICswMjAwCisKKyAgICBkcGtnOiBGaXggdHlwbyBpbiBjb21tZW50IOKAmGNoZWNoZWTigJkg4oaSIOKAmGNoZWNrZWTigJkKKworIHNyYy9hcmNoaXZlcy5jIHwgICAgMiArLQorIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgNWIwM2UxZTk5MGYyMjYwZTBlODUyZTUwOTg2ZmU0OTJmYzVlOGY3MAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBNYXIgMjEgMTg6MTE6MzIgMjAxMSArMDIwMAorCisgICAgbGliZHBrZzogVXBkYXRlIE1ENSBpbXBsZW1lbnRhdGlvbiB3aXRoIHRoZSBvbmUgZnJvbSBPcGVuQlNECisgICAgCisgICAgQWRkIDxjb25maWcuaD4gYW5kIDxjb21wYXQuaD4gaW5jbHVkZXMuIENoYW5nZSA8bWQ1Lmg+IGluY2x1ZGUgdG8KKyAgICAibWQ1LmgiLiBDaGFuZ2UgQllURV9PUkRFUiBjaGVjayB0byBXT1JEU19CSUdFTkRJQU4uIFJlbW92ZSBfX2JvdW5kZWRfXworICAgIGdjYyBhdHRyaWJ1dGVzIG9uIGZ1bmN0aW9uIGRlY2xhcmF0aW9ucy4gUmVtb3ZlIGZpbGUgaGVscGVyCisgICAgZGVjbGFyYXRpb25zLgorCisgbGliL2Rwa2cvbWQ1LmMgfCAgMjkxICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgbGliL2Rwa2cvbWQ1LmggfCAgIDUxICsrKystLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDE3MCBpbnNlcnRpb25zKCspLCAxNzIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBiZmI0M2U4YWFlYzk1YjY5MTg0YmZmYWNlYjA5OTgxOWFkOTc3MjFkCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIE1hciAxNiAxNDozMzowOSAyMDExICswMTAwCisKKyAgICBSZW5hbWUgc3RydWN0IGNtZGluZm8gbWVtYmVyIGFyZ19mdW5jIHRvIGFjdGlvbiBhbmQgY2FsbCBpdCBkaXJlY3RseQorICAgIAorICAgIFRoaXMgYXZvaWRzIGEgdGVtcG9yYXJ5IHZhcmlhYmxlLCBnaXZlbiB0aGF0IG5vdyB0aGUgZnVuY3Rpb24gaXMKKyAgICBzdHJvbmdseSBwcm90b3R5cGVkLgorCisgZHBrZy1kZWIvbWFpbi5jICAgfCAgICA1ICsrLS0tCisgZHBrZy1zcGxpdC9tYWluLmMgfCAgICA1ICsrLS0tCisgbGliL2Rwa2cvbXlvcHQuaCAgfCAgICAzICsrLQorIHNyYy9kaXZlcnRjbWQuYyAgIHwgICAgNSArLS0tLQorIHNyYy9tYWluLmMgICAgICAgIHwgICAgOSArKy0tLS0tLS0KKyBzcmMvcXVlcnljbWQuYyAgICB8ICAgIDUgKy0tLS0KKyBzcmMvc3RhdGNtZC5jICAgICB8ICAgIDQgKy0tLQorIDcgZmlsZXMgY2hhbmdlZCwgMTEgaW5zZXJ0aW9ucygrKSwgMjUgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAxMmQxZTVhMWE0MmVlMDg1Yjc5ZDFhM2JiM2E5NGE5YjAxNjVhZmZmCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIE1hciAxNiAxNDoyMjozNiAyMDExICswMTAwCisKKyAgICBVc2UgbmV3IGFjdGlvbl9mdW5jIHR5cGVkZWYgaW5zdGVhZCBvZiBhZC1ob2MgZnVuY3Rpb24gY2FzdHMKKworIGRwa2ctZGViL2Rwa2ctZGViLmggICAgIHwgICAxMyArKysrKysrKystLS0tCisgZHBrZy1kZWIvbWFpbi5jICAgICAgICAgfCAgICA0ICsrLS0KKyBkcGtnLXNwbGl0L2Rwa2ctc3BsaXQuaCB8ICAgIDkgKysrKysrLS0tCisgZHBrZy1zcGxpdC9tYWluLmMgICAgICAgfCAgICA0ICsrLS0KKyBsaWIvZHBrZy9teW9wdC5oICAgICAgICB8ICAgIDYgKysrLS0tCisgc3JjL2RpdmVydGNtZC5jICAgICAgICAgfCAgICA0ICsrLS0KKyBzcmMvbWFpbi5jICAgICAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIHNyYy9xdWVyeWNtZC5jICAgICAgICAgIHwgICAgNCArKy0tCisgc3JjL3N0YXRjbWQuYyAgICAgICAgICAgfCAgICA0ICsrLS0KKyA5IGZpbGVzIGNoYW5nZWQsIDMzIGluc2VydGlvbnMoKyksIDI1IGRlbGV0aW9ucygtKQorCitjb21taXQgYmEzNzJhOGM1NTRkZmU2ZmE0ZjBlMTI5NjFlZmFiNmIxMGFhZjZiZAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBNYXIgMTYgMTQ6MjI6MzQgMjAxMSArMDEwMAorCisgICAgTWFrZSBhbGwgY29tbWFuZCBsaW5lIGFjdGlvbiBmdW5jdGlvbnMgcmV0dXJuIGludAorICAgIAorICAgIFRoaXMgd2lsbCBhbGxvdyB1c2luZyB0eXBlLXNhZmUgZnVuY3Rpb24gcG9pbnRlcnMgaW5zdGVhZCBvZiBjYXN0aW5nCisgICAgdGhlbSBhcm91bmQuIFJlcGxhY2UgYWxsIGV4aXQoMykgY2FsbHMgd2l0aCByZXR1cm4gc3RhdGVtZW50cy4gUmVtb3ZlCisgICAgRFBLR19BVFRSX05PUkVUIGZyb20gZnVuY3Rpb24gZGVjbGFyYXRpb25zLCBhbGwgZnVuY3Rpb25zIGFyZSBleHBlY3RlZAorICAgIHRvIHJldHVybiBub3cuCisKKyBkcGtnLWRlYi9idWlsZC5jICAgICAgICB8ICAgIDYgKystCisgZHBrZy1kZWIvZHBrZy1kZWIuaCAgICAgfCAgICA0ICstCisgZHBrZy1kZWIvZXh0cmFjdC5jICAgICAgfCAgIDM1ICsrKysrKysrKysrKysrKy0tLS0KKyBkcGtnLWRlYi9pbmZvLmMgICAgICAgICB8ICAgMjUgKysrKysrKysrKy0tLQorIGRwa2ctZGViL21haW4uYyAgICAgICAgIHwgICAgNyArKystCisgZHBrZy1zcGxpdC9kcGtnLXNwbGl0LmggfCAgICA0ICstCisgZHBrZy1zcGxpdC9pbmZvLmMgICAgICAgfCAgICA2ICsrKy0KKyBkcGtnLXNwbGl0L2pvaW4uYyAgICAgICB8ICAgIDYgKysrLQorIGRwa2ctc3BsaXQvbWFpbi5jICAgICAgIHwgICAgNiArKy0KKyBkcGtnLXNwbGl0L3F1ZXVlLmMgICAgICB8ICAgMjAgKysrKysrKystLQorIGRwa2ctc3BsaXQvc3BsaXQuYyAgICAgIHwgICAgNCArLQorIHNyYy9hcmNoaXZlcy5jICAgICAgICAgIHwgICAgNiArKystCisgc3JjL2VucXVpcnkuYyAgICAgICAgICAgfCAgIDg5ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0KKyBzcmMvbWFpbi5jICAgICAgICAgICAgICB8ICAgMzAgKysrKysrKysrKy0tLS0tLQorIHNyYy9tYWluLmggICAgICAgICAgICAgIHwgICAzNCArKysrKysrKystLS0tLS0tLS0KKyBzcmMvcGFja2FnZXMuYyAgICAgICAgICB8ICAgIDQgKystCisgc3JjL3NlbGVjdC5jICAgICAgICAgICAgfCAgIDE3ICsrKysrKystLQorIHNyYy9zdGF0Y21kLmMgICAgICAgICAgIHwgICAgNCArLQorIHNyYy91cGRhdGUuYyAgICAgICAgICAgIHwgICAxMiArKysrKy0KKyAxOSBmaWxlcyBjaGFuZ2VkLCAyMjUgaW5zZXJ0aW9ucygrKSwgOTQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBmNjYwMGZmYTE2MmU2ZjJmMDRmNmExMGQ5NjIyYmVlM2JjODc4MWExCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IE1hciAyNCAwMzo1Nzo0NCAyMDExICswMTAwCisKKyAgICBkcGtnOiBQYXNzIGRlZmF1bHQgcmV0dXJuIHZhbHVlIHRvIHJlcG9ydGJyb2tlbl9yZXRleGl0c3RhdHVzKCkKKyAgICAKKyAgICBUaGlzIHdpbGwgYWxsb3cgdG8gcGFzcyBhcmJpdHJhcnkgdmFsdWVzIGZyb20gdGhlIGNvbW1hbmQgYWN0aW9ucyB3aGVuCisgICAgdGhlcmUncyBub3QgYmVlbiBhbnkgcmVwb3J0ZWQgZXJyb3IuCisKKyBzcmMvZXJyb3JzLmMgfCAgICA2ICsrKystLQorIHNyYy9tYWluLmMgICB8ICAgIDIgKy0KKyBzcmMvbWFpbi5oICAgfCAgICAyICstCisgMyBmaWxlcyBjaGFuZ2VkLCA2IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAxMDU5YTlmNmVkODU2ODAzMmFlNjRhYmE3MmVmMThjMjg5ZDQyZGFlCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEFwciAxIDIxOjI2OjAyIDIwMTEgKzAyMDAKKworICAgIGRwa2ctc291cmNlOiB0ZW1wb3JhcmlseSBkcm9wIFBhY2thZ2UtTGlzdCBmaWVsZCBnZW5lcmF0aW9uCisgICAgCisgICAgVGhhdCB3YXkgd2UgY2FuIGRpc2N1c3MgaXQgZnVydGhlciB1bnRpbCB0aGVyZSdzIGNvbnNlbnN1cyBvbiBpdHMgZGVzaWduCisgICAgYW5kIHVwbG9hZCAxLjE2LjAgaW1tZWRpYXRlbHkuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgIHwgICAgMyAtLS0KKyBzY3JpcHRzL2Rwa2ctc291cmNlLnBsIHwgICAgMSArCisgMiBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBiZGNlZTMxOWE5MGVlZTQ5NGFmNzBlNjcyNWZlZDhiNGU4ZjE2NTg0CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEFwciAxIDIwOjQ1OjQ2IDIwMTEgKzAyMDAKKworICAgIGRwa2ctZGl2ZXJ0OiBmaXggbWlub3IgZmlsZSBkZXNjcmlwdG9yIGxlYWsgZm91bmQgYnkgY3BwY2hlY2sKKyAgICAKKyAgICBSZXBvcnRlZC1ieTogTmllbHMgVGh5a2llciA8bmllbHNAdGh5a2llci5uZXQ+CisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMSArCisgc3JjL2RpdmVydGNtZC5jICB8ICAgIDQgKysrLQorIDIgZmlsZXMgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgZTNhOTA4M2ZjYWRjYjFjZmY2NGEyYjM5ODBiMjY3OWU3Mzk2ZmI5OQorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBNYXIgMjYgMDk6MjQ6NTggMjAxMSArMDEwMAorCisgICAgZHBrZy1zb3VyY2U6IGV4dGVuZCB0aGUgUGFja2FnZS1MaXN0IGZpZWxkIGJhc2VkIG9uIHRoZSBmZWVkYmFjayByZWNlaXZlZAorICAgIAorICAgIEludGVncmF0ZSB0aGUgYXJjaGl0ZWN0dXJlIGZpZWxkIHdpdGggc3BhY2VzIHJlcGxhY2VkIGJ5IGNvbW1hcy4gSXQgd2lsbAorICAgIGJlIHVzZWQgYnkgdGhlIHdhbm5hLWJ1aWxkIHRlYW0gdG8gc2VlIGlmIHRoZSBzb3VyY2UgcGFja2FnZSBidWlsZHMKKyAgICBBcmNoaXRlY3R1cmU6IGFsbCBwYWNrYWdlcy4gVGhlIHJlcHJlcHJvIG1haW50YWluZXIgYWxzbyBoYWQgYSBzaW1pbGFyCisgICAgdXNlIGNhc2UgZm9yIHRoaXMgaW5mb3JtYXRpb24uCisgICAgCisgICAgUHV0IHRoZSB0eXBlIG9mIHRoZSBwYWNrYWdlIGluIGEgZGVkaWNhdGVkIGZpZWxkIHJhdGhlciB0aGFuIGEgcHJlZml4IG9mCisgICAgdGhlIHBhY2thZ2UgbmFtZS4gU3VnZ2VzdGVkIGJ5IEJhc3RpYW4gQmxhbmsuCisgICAgCisgICAgU2VlIGZlZWRiYWNrIGF0CisgICAgaHR0cDovL2xpc3RzLmRlYmlhbi5vcmcvZGViaWFuLXBvbGljeS8yMDExLzAzL3RocmVhZHMuaHRtbCMwMDE1NQorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICB8ICAgIDIgKy0KKyBzY3JpcHRzL2Rwa2ctc291cmNlLnBsIHwgICAxMiArKysrKysrLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDggaW5zZXJ0aW9ucygrKSwgNiBkZWxldGlvbnMoLSkKKworY29tbWl0IDdlYTIwNjRjNDZiNzczOThhNjNkN2Y3YTU0M2ViY2YwOGY3Yzc0ZDIKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgTWFyIDI0IDIzOjUzOjM3IDIwMTEgKzAxMDAKKworICAgIERwa2c6OlNvdXJjZTo6UGF0Y2g6IGRvbid0IGNob2tlIG9uIGVtcHR5IHBhdGNoZXMKKyAgICAKKyAgICBDb21taXQgMjU1ZTczZTExZDEzNjVmYmIxZThkNzgyODdmYWQ3NTFhOGViYzZlNSBpbnRyb2R1Y2VkIGEgcmVncmVzc2lvbgorICAgIHdpdGggZW1wdHkgcGF0Y2hlcyBieSBhc3N1bWluZyB0aGF0IGEgcGF0Y2ggYW5hbHlzaXMgd291bGQgYWx3YXlzIGdpdmUKKyAgICBiYWNrIGF0IGxlYXN0IG9uZSBmaWxlbmFtZS4KKyAgICAKKyAgICBSZXBvcnRlZC1ieTogTmllbHMgVGh5a2llciA8bmllbHNAdGh5a2llci5uZXQ+CisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgIHwgICAgMiArKworIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG0gfCAgICAyICstCisgMiBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA4OTNhMDRiYTk0ZjIxZWEwNjhhYTE4YTdiNzE1NzY5Mjc1Yjk4ODkyCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IE1hciAyNCAxNjowNDozMCAyMDExICswMTAwCisKKyAgICBEcGtnOjpDaGFuZ2Vsb2c6OkRlYmlhbjo6RW50cnk6IGlnbm9yZSB3aGl0ZXNwYWNlcyBhZnRlciBvcHRpb25zIGluIGhlYWRlcgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICAgICAgICAgICAgfCAgICAyICsrCisgc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9FbnRyeS9EZWJpYW4ucG0gfCAgICAyICstCisgMiBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA4NGU5MzIyNDQ4YjNiOWIyMjdkODBiNjY3ZWYxMjc0NDUyZDZmYjNlCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IE1hciAyNCAxNTo0NToyMiAyMDExICswMTAwCisKKyAgICBkcGtnLXNvdXJjZTogc3RyaXAgc3BhY2VzIGFyb3VuZCBuZXdsaW5lcyBpbiBVcGxvYWRlcnMKKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgfCAgICAyICsrCisgc2NyaXB0cy9kcGtnLXNvdXJjZS5wbCB8ICAgIDIgKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGM1MmNiNTlkNmJjOTlkYzAyYTBhNjNmZDJjODBmZTU0NGJmNmQ2OTEKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgTWFyIDI0IDE1OjI5OjU0IDIwMTEgKzAxMDAKKworICAgIGRwa2coMSk6IHJlbW92ZSBhIGR1cGxpY2F0ZSB3b3JkIGluIHRoZSBnZXJtYW4gdHJhbnNsYXRpb24KKyAgICAKKyAgICBDb25jZXJucyB0aGUgZXhwbGFuYXRpb24gb2YgLS1nZXQtc2VsZWN0aW9ucy4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAxICsKKyBtYW4vcG8vZGUucG8gICAgIHwgICAgMiArLQorIDIgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgNzUwNDAyMmNkODkyMmJmN2E2OTU3MjEwNmIxYjRhN2ExYzA1MjY3NQorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBNYXIgMjQgMTU6MjY6MDQgMjAxMSArMDEwMAorCisgICAgRml4IHR3byB0eXBvcyBpbiBjaGFuZ2Vsb2cKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICA0ICsrLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDAxNDY3MjQzMjQ1MmE2ZjZhMThjNDRlNzMzZmVjZTc5Mzg2ODUzNzAKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgTWFyIDI0IDE0OjM5OjU2IDIwMTEgKzAxMDAKKworICAgIGRwa2ctc291cmNlOiBhZGQgbmV3IFBhY2thZ2UtTGlzdCBmaWVsZCB0byAuZHNjIGZpbGVzCisgICAgCisgICAgVGhpcyBmaWVsZCBoYXMgYmVlbiByZXF1ZXN0ZWQgYnkgZnRwbWFzdGVycyBzbyB0aGF0IHRoZXkgY2FuIGluc3RhbGwKKyAgICBvdmVycmlkZXMgZm9yIGFsbCBiaW5hcnkgcGFja2FnZXMgYXMgc29vbiBhcyB0aGV5IGhhdmUgYXBwcm92ZWQKKyAgICB0aGUgc291cmNlIHBhY2thZ2UuIEl0IGNvbnRhaW5zIGEgdGhlIGxpc3Qgb2YgcGFja2FnZXMgdGhhdCB0aGUgc291cmNlCisgICAgY2FuIGJ1aWxkIGFsb25nIHdpdGggdGhlaXIgc2VjdGlvbnMgYW5kIHByaW9yaXRpZXMuCisgICAgCisgICAgSXQgbG9va3MgbGlrZSB0aGlzOgorICAgIAorICAgICAgUGFja2FnZS1MaXN0OgorICAgICAgIHNyYzpmb28gYWRtaW4gb3B0aW9uYWwKKyAgICAgICBmb28gYWRtaW4gb3B0aW9uYWwKKyAgICAgICBmb28tY29tbW9uIGFkbWluIG9wdGlvbmFsCisgICAgICAgdWRlYjpmb28tdWRlYiBkZWJpYW4taW5zdGFsbGVyIGV4dHJhCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICAgfCAgICAzICsrKworIHNjcmlwdHMvRHBrZy9Db250cm9sL0ZpZWxkcy5wbSB8ICAgIDYgKysrKystCisgc2NyaXB0cy9kcGtnLXNvdXJjZS5wbCAgICAgICAgIHwgICAxMiArKysrKysrKysrKysKKyAzIGZpbGVzIGNoYW5nZWQsIDIwIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBkMjkxYTk4YmNlOWVjZjA0YWU3ZjM1MjYyNDUzYjAzOGRjMTdjZjA0CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IE1hciAyNCAxMjoxODo1MCAyMDExICswMTAwCisKKyAgICBEcGtnOjpDb250cm9sOjpGaWVsZHM6IGRlZmluZSB0aGUgcGxhY2Ugb2YgdGhlIEJ1aWx0LVVzaW5nIGZpZWxkCisgICAgCisgICAgQ29tbWl0IGE4Y2I5MjdlZGI3ZGJkNjdjN2E2MDg0Njg1OTk4ODE4YjgxMWNhZWMgZm9yZ290IHRvIGFkZCB0aGUKKyAgICBCdWlsdC1Vc2luZyBmaWVsZCBpbiAlRklFTERfT1JERVIuCisKKyBzY3JpcHRzL0Rwa2cvQ29udHJvbC9GaWVsZHMucG0gfCAgICA0ICsrLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IGNkNDIzN2NjODgyOGE2MDliZTYyNjBkMzM3OWY2MGQ5YzQ2OTQzOTMKK0F1dGhvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitEYXRlOiAgIFdlZCBNYXIgMjMgMTk6NDM6MzQgMjAxMSArMDEwMAorCisgICAgVXBkYXRlIEdlcm1hbiB0cmFuc2xhdGlvbiBvZiBtYW51YWwgcGFnZXMKKyAgICAKKyAgICBVcGRhdGUgdG8gMjAxMHQuCisKKyBtYW4vcG8vZGUucG8gfCAgIDUxICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMzkgaW5zZXJ0aW9ucygrKSwgMTIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBhOGNiOTI3ZWRiN2RiZDY3YzdhNjA4NDY4NTk5ODgxOGI4MTFjYWVjCitBdXRob3I6IE1hcmsgSHltZXJzIDxtaHlAZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIE1hciAyMiAxNTo1MDoxNiAyMDExICswMDAwCisKKyAgICBkcGtnLWdlbmNvbnRyb2w6IGFkZCBzdXBwb3J0IGZvciBCdWlsdC1Vc2luZyBmaWVsZAorICAgIAorICAgIEFuZCB0ZWFjaCBkcGtnLWRlYiB0byBub3QgY29tcGxhaW4gYWJvdXQgaXQuCisgICAgCisgICAgU2lnbmVkLW9mZi1ieTogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICAgIHwgICAgMyArKysKKyBkcGtnLWRlYi9idWlsZC5jICAgICAgICAgICAgICAgfCAgICAxICsKKyBtYW4vZGViLWNvbnRyb2wuNSAgICAgICAgICAgICAgfCAgIDExICsrKysrKysrKysrCisgbWFuL2RlYi1zcmMtY29udHJvbC41ICAgICAgICAgIHwgICAgMyArKysKKyBzY3JpcHRzL0Rwa2cvQ29udHJvbC9GaWVsZHMucG0gfCAgICA1ICsrKysrCisgNSBmaWxlcyBjaGFuZ2VkLCAyMyBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgNmE3YTIwYzcyMzI1YTU3NzYyZTM0ZjVkYmI5Zjc5YmE3M2I1ZDQ5NgorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBNYXIgMjEgMDg6MjM6NDkgMjAxMSArMDEwMAorCisgICAgZHBrZzogdXNlIHRoZSBjb3JyZWN0IG10aW1lIHdoZW4gaW5zdGFsbGluZyBhIGZpbGUgd2l0aCBzdGF0b3ZlcnJpZGVzCisgICAgCisgICAgUmVncmVzc2lvbiBpbnRyb2R1Y2VkIGJ5IGNvbW1pdCBjZWIwN2IwOGRhZDRkNWVlYWQ2MzAwNjRmNDVjN2U3ZGVkMDBhMzQxLgorICAgIAorICAgIFJlcG9ydGVkLWJ5OiBNYXJjIEEuIERvbmdlcworCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDIgKysKKyBzcmMvYXJjaGl2ZXMuYyAgIHwgICAgNiArKysrLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDYgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IGI1YTc5NjI5Zjg0OWZhZjI3YmYyMGYwODhhZjE0ODdmYTVlMmJjMTQKK0F1dGhvcjogU3ZlbiBKb2FjaGltIDxzdmVuam9hY0BnbXguZGU+CitEYXRlOiAgIFRodSBNYXIgMTcgMTY6MjE6MTMgMjAxMSArMDEwMAorCisgICAgRml4IG1pbm9yIGVycm9yIGluIEdlcm1hbiBkcGtnIHRyYW5zbGF0aW9uCisKKyBwby9kZS5wbyB8ICAgIDMgKystCisgMSBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAwODNmMmVkOGE2ZDEyNWVhN2I4OGU1OGZlZDAzNDc0MmFlZmIwMjFlCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IE1hciAxNyAxNDozNTo1MyAyMDExICswMTAwCisKKyAgICBkcGtnLWRpdmVydDogZml4IHJldHVybiB2YWx1ZSBvZiByZW5hbWVfbXYKKyAgICAKKyAgICBUaGlzIGlzIGEgcmVncmVzc2lvbiBpbnRyb2R1Y2VkIGJ5IHRoZSBDIHJld3JpdGUgb2YgZHBrZy1kaXZlcnQKKyAgICAoY29tbWl0IDAyYjEyZDc1ZjFlZmY3YzE4NGZhZmI1YTY2M2EwNDIxZTlhNjQ1ZWEpIHRoYXQgbWFkZSBpdCB1bmFibGUgdG8KKyAgICByZW5hbWUgZmlsZXMgd2hlbiB0aGF0IHJlbmFtZSBpbXBsaWVzIGEgY29weSBvbiBhbm90aGVyIGZpbGUgc3lzdGVtLgorICAgIAorICAgIFRoZSBjb2RlIGhhcyBwcm92aXNpb24gdG8gZG8gYSBjb3B5IHdoZW4gYSBzaW1wbGUgcmVuYW1lIGlzIG5vdCBlbm91Z2gKKyAgICBidXQgdGhlIGFzc29jaWF0ZWQgZnVuY3Rpb24gZXJyb25lb3VzbHkgcmV0dXJuZWQgYSBmYWlsdXJlIHZhbHVlIHdoZW4KKyAgICB0aGF0IG9wZXJhdGlvbiB3YXMgcGVyZm9ybWVkLgorICAgIAorICAgIFJlcG9ydGVkLWJ5OiBEdXJrIFN0cm9vaXNtYQorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDMgKysrCisgc3JjL2RpdmVydGNtZC5jICB8ICAgIDIgKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGIxMDBiODFiZmRhMzY5YmQxM2NmZmRkYzk5Yjc5YWUzYTk2NjNjMDUKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgTWFyIDE2IDA4OjAwOjQ0IDIwMTEgKzAxMDAKKworICAgIHBrZ19wYXJzZV9jb3B5KCk6IGZpeCByZWZlcmVuY2VzIHRvIHZhcmlhYmxlcyBpbiBhIGNvbW1lbnQKKyAgICAKKyAgICBUaGUgY29tbWVudCBzdGlsbCB1c2VkIHRoZSBvbGQgbmFtZXMgb2YgdmFyaWFibGVzIGZyb20gYmVmb3JlIHRoZSBjb2RlIGhhZAorICAgIGJlZW4gZmFjdG9yZWQgaW4gYSBzZXBhcmF0ZSBmdW5jdGlvbiAoaW4gY29tbWl0CisgICAgNThkZjAyZjlkMzljMWU3YjFjN2Y0OTAyNmE2NDlmMTI1Yjg3MTQwZCkuCisKKyBsaWIvZHBrZy9wYXJzZS5jIHwgICAgNCArKy0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBmM2FjMDIzNTcyNzZmZmUyZWQyOWIzNTBhOThmMGUxNGUxNjI0NjNhCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIE1hciAxNiAwMDo1NDoxMyAyMDExICswMTAwCisKKyAgICBsaWJkcGtnOiBEbyBub3QgbG9zZSByZXZlcnNlIGRlcGVuZGVuY2llcyB3aGVuIHBhcnNpbmcgY29udHJvbCBkYXRhCisgICAgCisgICAgUmVncmVzc2lvbiBpbnRyb2R1Y2VkIGluIGNvbW1pdCA1OGRmMDJmOWQzOWMxZTdiMWM3ZjQ5MDI2YTY0OWYxMjViODcxNDBkLgorCisgbGliL2Rwa2cvcGFyc2UuYyB8ICAgIDIgKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDYwOTNhZGFmNDQ3ZTk4NDk2ZGM0NDEzMjc3ZjQ3NGEzNzlmZGM5MTIKK0F1dGhvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitEYXRlOiAgIFR1ZSBNYXIgMTUgMTc6MDA6MjcgMjAxMSArMDEwMAorCisgICAgVXBkYXRlIEdlcm1hbiB0cmFuc2xhdGlvbiBvZiBtYW51YWwgcGFnZXMKKyAgICAKKyAgICBVcGRhdGUgdG8gMjAwOHQwZjB1LgorCisgbWFuL3BvL2RlLnBvIHwgIDE2MiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA5NiBpbnNlcnRpb25zKCspLCA2NiBkZWxldGlvbnMoLSkKKworY29tbWl0IDg4YjBjMzA0M2E2NTFhNDIyY2QwYzQzYzM4YWI2ZDU1M2UyMjE0ZWEKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgTWFyIDE1IDAxOjI0OjI4IDIwMTEgKzAxMDAKKworICAgIEFkZCBhcm1oZiBzdXBwb3J0IHRvIG9zdGFibGUgYW5kIHRyaXBsZXR0YWJsZQorICAgIAorICAgIENsb3NlczogIzU5NDE3OQorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDEgKworIG9zdGFibGUgICAgICAgICAgfCAgICAxICsKKyB0cmlwbGV0dGFibGUgICAgIHwgICAgMSArCisgMyBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBkOTEzMGYyZGVmZjhhNzhjODgxM2JiMWQ2ZDI1MDRkMzc3M2E2YTZlCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIE1hciAxNCAxNDo0OToyNiAyMDExICswMTAwCisKKyAgICBkcGtnLXNwbGl0OiBmaXggYSBnY2Mgd2FybmluZworICAgIAorICAgIFRoZSByZWZhY3RvcmluZyBtYWRlIGluIGNvbW1pdCA4NmNiZjU3NWIxM2QwNDk1MDQ0MDJmNzJkMjIxZmExNTM4YzJlNTNiCisgICAgd2FzIHN1cHBvc2VkIHRvIGFkZCB0aGUgY2FzdCBmb3IgdGhlIGFyZ3VtZW50IG1hdGNoaW5nCisgICAgdGhlICVqeCBzcGVjaWZpZXIgKGFuZCBub3QgJXMpLgorCisgZHBrZy1zcGxpdC9xdWV1ZS5jIHwgICAgNCArKy0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyMGM1NjhkY2NhZTFkMWE4YjEwOGVhYmI2ZTlkZjU3ZDgyZDM4MzRjCitBdXRob3I6IFN2ZW4gSm9hY2hpbSA8c3ZlbmpvYWNAZ214LmRlPgorRGF0ZTogICBNb24gTWFyIDE0IDEzOjA5OjE4IDIwMTEgKzAxMDAKKworICAgIEdlcm1hbiBkcGtnIHRyYW5zbGF0aW9uIHVwZGF0ZQorICAgIAorICAgIFVwZGF0ZSB0byAxMDIwdC4KKworIHBvL2RlLnBvIHwgMTMxNyArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgNjY3IGluc2VydGlvbnMoKyksIDY1MCBkZWxldGlvbnMoLSkKKworY29tbWl0IDNiZmIyZTg4NDViMjc3ZjRjZWNkNzIwYzNhZWYwYTFkNjYwNGQ4OTUKK0F1dGhvcjogU3ZlbiBKb2FjaGltIDxzdmVuam9hY0BnbXguZGU+CitEYXRlOiAgIE1vbiBNYXIgMTQgMTM6MDg6NDUgMjAxMSArMDEwMAorCisgICAgYnVpbGQ6IFVwZGF0ZSBwby9QT1RGSUxFUy5pbiBmb3IgbmV3L3JlbmFtZWQgc291cmNlIGZpbGVzCisgICAgCisgICAgbGliL2Rwa2cvZGlyLmMgKGNvbW1pdCAyMGZkYjM5NWNjNzIxYTUwNjBjNTYyM2VkYTk1NmQ3M2VhODQwYTIxKQorICAgIHNyYy9pbmZvZGIuYyAoY29tbWl0IDlmN2YyYTk1ODMyMWQ0MTcyNWMwYWU3ZjQ2YzQzNGZlNGNiZjNjNmEpCisgICAgCisgICAgbGliL2Rwa2cvZGF0YWJhc2UuYyDihpIgbGliL2Rwa2cvcGtnLWRiLmMgKGNvbW1pdAorICAgIGNlZDVlYzAyNzI4NWRlM2YyMDdjMGJiN2EyNmUzNDU1NTAzZTdlMjkpCisKKyBwby9QT1RGSUxFUy5pbiB8ICAgIDQgKysrLQorIDEgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgYjhkOGQwMmU0YWZkN2IzNzdiYWQzZDgxYWZkY2M0OGQ1YzZmMzkzOAorQXV0aG9yOiBTdmVuIEpvYWNoaW0gPHN2ZW5qb2FjQGdteC5kZT4KK0RhdGU6ICAgTW9uIE1hciAxNCAxMzowODoyMSAyMDExICswMTAwCisKKyAgICBkcGtnLXNwbGl0OiBGaXggdHlwbworCisgZHBrZy1zcGxpdC9xdWV1ZS5jIHwgICAgMiArLQorIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgODZjYmY1NzViMTNkMDQ5NTA0NDAyZjcyZDIyMWZhMTUzOGMyZTUzYgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBNYXIgMTQgMDI6MTU6MzggMjAxMSArMDEwMAorCisgICAgVXNlIG9mZl90IGFuZCAlamQgb3IgJWp4IHRvIGhhbmRsZSBmaWxlIHNpemVzIGFuZCBvZmZzZXRzCisgICAgCisgICAgVGhpcyBhbGxvd3MgdG8gc3VwcG9ydCBsYXJnZSBmaWxlcyBvbiAzMi1iaXQgc3lzdGVtcyB3ZXJlIGEg4oCYbG9uZyBpbnTigJkKKyAgICB0eXBlIG1pZ2h0IG5vdCBiZSBvZiBhdCBsZWFzdCA2NC1iaXRzLiBGb3IgcHJpbnRpbmcgJWpkIG9yICVqeCBpcyB1c2VkLAorICAgIGFuZCB0aGUgdmFsdWUgaXMgY2FzdCB0byBpbnRtYXhfdC4KKworIGRwa2ctZGViL2J1aWxkLmMgICAgICAgIHwgICAgNSArKystLQorIGRwa2ctZGViL2V4dHJhY3QuYyAgICAgIHwgICAxOCArKysrKysrKysrLS0tLS0tLS0KKyBkcGtnLWRlYi9pbmZvLmMgICAgICAgICB8ICAgIDUgKysrLS0KKyBkcGtnLXNwbGl0L2Rwa2ctc3BsaXQuaCB8ICAgMTIgKysrKysrLS0tLS0tCisgZHBrZy1zcGxpdC9pbmZvLmMgICAgICAgfCAgIDIwICsrKysrKysrKystLS0tLS0tLS0tCisgZHBrZy1zcGxpdC9tYWluLmMgICAgICAgfCAgICA0ICsrLS0KKyBkcGtnLXNwbGl0L3F1ZXVlLmMgICAgICB8ICAgIDkgKysrKystLS0tCisgZHBrZy1zcGxpdC9zcGxpdC5jICAgICAgfCAgIDEwICsrKysrKy0tLS0KKyBsaWIvZHBrZy9hci5jICAgICAgICAgICB8ICAgIDcgKysrKy0tLQorIGxpYi9kcGtnL2FyLmggICAgICAgICAgIHwgICAgMiArLQorIGxpYi9kcGtnL2J1ZmZlci5jICAgICAgIHwgICAgMiArLQorIGxpYi9kcGtnL3RhcmZuLmMgICAgICAgIHwgICAgMiArLQorIGxpYi9kcGtnL3RhcmZuLmggICAgICAgIHwgICAgMiArLQorIHNyYy9hcmNoaXZlcy5jICAgICAgICAgIHwgICAgNSArKystLQorIHNyYy9wcm9jZXNzYXJjLmMgICAgICAgIHwgICAgMyArKy0KKyAxNSBmaWxlcyBjaGFuZ2VkLCA1OCBpbnNlcnRpb25zKCspLCA0OCBkZWxldGlvbnMoLSkKKworY29tbWl0IDc0ZGM1MGIzNGQ0NWU5MDZlY2RmNjY0NjM0YWQ0OTFmMmZmYWM0M2UKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gTWFyIDE0IDAzOjAxOjQzIDIwMTEgKzAxMDAKKworICAgIFVzZSBzaXplX3QgYW5kICV6dSB0byBoYW5kbGUgbWVtb3J5IHNpemVzIGFuZCBvZmZzZXRzCisKKyBkc2VsZWN0L21ldGhwYXJzZS5jYyAgICAgICAgfCAgICA2ICsrKy0tLQorIGxpYi9kcGtnL21saWIuYyAgICAgICAgICAgICB8ICAgIDYgKysrKy0tCisgbGliL2Rwa2cvcGtnLWZvcm1hdC5jICAgICAgIHwgICAgMiArLQorIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYyB8ICAgIDIgKy0KKyA0IGZpbGVzIGNoYW5nZWQsIDkgaW5zZXJ0aW9ucygrKSwgNyBkZWxldGlvbnMoLSkKKworY29tbWl0IDA3ZWVlMGRiNTY0NzJhNTkzMjI0OWMwNGI5NDBiOWM4ZmUwMWJiNWYKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gTWFyIDE0IDAyOjU4OjI4IDIwMTEgKzAxMDAKKworICAgIGxpYmRwa2c6IFJlcGxhY2UgT3RvTCgpIHdpdGggT3RvTSgpIGNvbnZlcnRpbmcgdG8gaW50bWF4X3QKKyAgICAKKyAgICBUaGlzIGFsbG93cyBzdG9yaW5nIGF0IGxlYXN0IDY0LWJpdCBpbnRlZ2VycyBvbiAzMi1iaXQgc3lzdGVtcywgYW5kIHRodXMKKyAgICBsYXJnZSBmaWxlIHN1cHBvcnQuCisKKyBsaWIvZHBrZy90YXJmbi5jIHwgICAyNSArKysrKysrKysrKysrLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAxMyBpbnNlcnRpb25zKCspLCAxMiBkZWxldGlvbnMoLSkKKworY29tbWl0IGY5YWFhZTQzOTZhMDQ2NWRjZTBmOGMwNWU5ZTE2MDhiZDk0MjVlODEKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gTWFyIDE0IDA1OjIxOjQ5IDIwMTEgKzAxMDAKKworICAgIGRwa2ctc3BsaXQ6IE1ha2UgZGVjb21wb3NlX2ZpbGVuYW1lKCkgYW5kIHNldHBhcnRzaXplKCkgdXNlIHN0cnRvaW1heCgpCisgICAgCisgICAgVGhpcyB3aWxsIGFsbG93IHBhcnNpbmcgbGFyZ2UgbnVtYmVycywgcmVxdWlyZWQgZm9yIGxhcmdlIGZpbGUgc3VwcG9ydC4KKworIGRwa2ctc3BsaXQvbWFpbi5jICB8ICAgIDMgKystCisgZHBrZy1zcGxpdC9xdWV1ZS5jIHwgICAgMyArKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDc1ZDZiY2Y3M2JhODhlNDQzYzJmZDFhNjUwMThiYjdmNDBkNzZmZjEKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gTWFyIDE0IDAyOjEyOjU3IDIwMTEgKzAxMDAKKworICAgIGRwa2ctc3BsaXQ6IFJlcGxhY2UgdW5zaWduZWRsb25nKCkgd2l0aCBwYXJzZV9pbnRtYXgoKQorCisgY29uZmlndXJlLmFjICAgICAgfCAgICAyICstCisgZHBrZy1zcGxpdC9pbmZvLmMgfCAgIDIwICsrKysrKysrKysrKy0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAxMyBpbnNlcnRpb25zKCspLCA5IGRlbGV0aW9ucygtKQorCitjb21taXQgNzY2ZGUxOTk5NzQxN2ZjNjczYzBiMDdlOWZlZjJjZmZiMjVkNWIyNQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBNYXIgMTQgMDE6NTU6NTAgMjAxMSArMDEwMAorCisgICAgYnVpbGQ6IENoZWNrIGZvciAlaiBhbmQgJXogZm9ybWF0IG1vZGlmaWVycyBzdXBwb3J0CisgICAgCisgICAgV2UgdXNlIHRob3NlIHRvIGNyZWF0ZSBiaW5hcnkgb3V0cHV0LCBzbyB3ZSByZXF1aXJlIHRoZW0gdG8gYmUgd29ya2luZy4KKworIG00L2Rwa2ctY29tcGlsZXIubTQgfCAgIDEyICsrKysrKysrKysrKworIDEgZmlsZXMgY2hhbmdlZCwgMTIgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IGRmNmE2MDkxYjNlNDIwYjEyMjg2ZGJkZTU2ZWY4NmNmMDIzMGMyYjQKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gTWFyIDEzIDIzOjMyOjMwIDIwMTEgKzAxMDAKKworICAgIGRwa2ctc3BsaXQ6IFVzZSBhIGNvbnN0YW50IGV4cHJlc3Npb24gdG8gZGVjbGFyZSBhbiBhcnJheQorICAgIAorICAgIEFsdGhvdWdoIHVzdWFsbHkgdGhlIGNvbXBpbGVyIHNob3VsZCByZXBsYWNlIHN0cmxlbihsaXRlcmFsKSB3aXRoIGEKKyAgICBidWlsdC1pbiwgaXQgbWlnaHQgbm90LCBhbmQgaXQncyBtb3JlIHByZWRpY3RhYmxlIHRvIHVzZSBhIGNvbnN0YW50CisgICAgZXhwcmVzc2lvbiB1c2luZyBzaXplb2YoKSBpbnN0ZWFkIHRvIGF2b2lkIG1ha2luZyBpdCBhIHZhcmlhYmxlCisgICAgbGVuZ3RoIGFycmF5LiBUaGlzIGZpeGVzIGEgd2FybmluZyB3aXRoIGxhdGVzdCBnY2MgYW5kIC1XdmxhLgorCisgZHBrZy1zcGxpdC9pbmZvLmMgfCAgICAyICstCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA3OWE2N2U5MDFlMGNlODI5NDRkMzNmMTNkMDgzMGZlMjU2ZjlhMzljCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIE1hciAxNCAwNzoxNjozMSAyMDExICswMTAwCisKKyAgICBJbmxpbmUgcmVycigpIGludG8gaXRzIG9ubHkgY3VycmVudCBjYWxsIHNpdGUKKworIGRwa2ctc3BsaXQvZHBrZy1zcGxpdC5oIHwgICAgMSAtCisgZHBrZy1zcGxpdC9pbmZvLmMgICAgICAgfCAgICA1ICsrKystCisgZHBrZy1zcGxpdC9tYWluLmMgICAgICAgfCAgICA0IC0tLS0KKyAzIGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgNiBkZWxldGlvbnMoLSkKKworY29tbWl0IDI2OTk4OTcxYzNlODRlMzNhNDYwMmUzZDk3YTZhOGM5YTA1OGZhMTYKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gTWFyIDEzIDIzOjMwOjE5IDIwMTEgKzAxMDAKKworICAgIElubGluZSB3ZXJyKCkgaW50byBpdHMgb25seSBjdXJyZW50IGNhbGwgc2l0ZQorCisgZHBrZy1kZWIvYnVpbGQuYyAgICAgICAgICB8ICAgIDIgKy0KKyBsaWIvZHBrZy9laGFuZGxlLmMgICAgICAgIHwgICAgNCAtLS0tCisgbGliL2Rwa2cvZWhhbmRsZS5oICAgICAgICB8ICAgIDIgLS0KKyBsaWIvZHBrZy9saWJkcGtnLlZlcnNpb25zIHwgICAgMSAtCisgNCBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDggZGVsZXRpb25zKC0pCisKK2NvbW1pdCBmZGM0MDFhYTdkMzVkODc5YWQwZmI5MDkwMDQ5NjkxZjI2MzhhZjQxCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIE1hciAxMyAyMzoxMDoyOCAyMDExICswMTAwCisKKyAgICBkcGtnLWRlYjogVXNlIGZkaW8gaW5zdGVhZCBvZiBzdGRpbworICAgIAorICAgIFByZWZlciBmZGlvIGZvciBiaW5hcnkgZGF0YS4KKworIGRwa2ctZGViL2J1aWxkLmMgfCAgIDM0ICsrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDE4IGluc2VydGlvbnMoKyksIDE2IGRlbGV0aW9ucygtKQorCitjb21taXQgMTAyYWVmMjRlNDM4YjdhYmE5Y2Y5MGFiOWZjNzVkM2MxM2M2YzdjZgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBNYXIgMTMgMjM6MDU6NTQgMjAxMSArMDEwMAorCisgICAgZHBrZy1zcGxpdDogRG8gbm90IHNsdXJwIGludG8gbWVtb3J5IHRoZSB3aG9sZSBwYWNrYWdlIHBhcnRzCisgICAgCisgICAgVXNlIGJ1ZmZlcmVkIEkvTyB3aGVuIHJlYXNzZW1ibGluZyBzcGxpdCBwYWNrYWdlcy4gVGhpcyB3aWxsIG1ha2UKKyAgICBwb3NzaWJsZSB0byBoYW5kbGUgcGFydHMgPiAyIEdpQiBvbiAzMiBiaXQgc3lzdGVtcy4KKworIGRwa2ctc3BsaXQvam9pbi5jICB8ICAgNDUgKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgZHBrZy1zcGxpdC9xdWV1ZS5jIHwgICAzNiArKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDM0IGluc2VydGlvbnMoKyksIDQ3IGRlbGV0aW9ucygtKQorCitjb21taXQgOTk4MGU0NTA4NjFiNzgyMDkzNTcyZWNjMjNiZmJkYzhlZTMyNjA4NworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBNYXIgMTMgMjI6Mzg6MzggMjAxMSArMDEwMAorCisgICAgbGliZHBrZzogQWRkIG1pc3NpbmcgPGVycm5vLmg+IG5lZWRlZCBieSBmZF9udWxsX2NvcHkoKQorCisgbGliL2Rwa2cvYnVmZmVyLmggfCAgICAyICsrCisgMSBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA2NWQyZWQ1YzIxNTY1N2UwZTBmNjA1MDAxNDhiNDdiZDg0MzZlMjgyCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIE1hciAxMyAyMTo1Njo0MiAyMDExICswMTAwCisKKyAgICB1LWE6IERvIG5vdCB1bm5lZWRpbmdseSBpbml0aWFsaXplIHZhcmlhYmxlcyB0byBOVUxMCisgICAgCisgICAgVGhvc2UgZ2V0IGluaXRpYWxpemVkIHVuY29uZGl0aW9uYWxseSBsYXRlciBvbiBpbiB0aGUgY29kZS4KKyAgICAKKyAgICBUaGlzIHdhcyBzcG90dGVkIGJ5IGEgcnVuIHdpdGggdGhlIGNsYW5nIHN0YXRpYyBhbmFseXplci4KKworIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYyB8ICAgIDEgLQorIDEgZmlsZXMgY2hhbmdlZCwgMCBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgYWFiNzJiZTNiZTE5ODExMTA1YmFmN2MyMmUzYWMzNzA0MjNmOTYzNgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBNYXIgMTMgMjE6NTE6MjEgMjAxMSArMDEwMAorCisgICAgZHBrZy1xdWVyeTogUmV0dXJuIGEgdmFsaWQgd2lkdGggZXZlbiBpZiBvcGVuaW5nIC9kZXYvdHR5IGZhaWxlZAorICAgIAorICAgIFRoaXMgd2FzIHNwb3R0ZWQgYnkgYSBydW4gd2l0aCB0aGUgY2xhbmcgc3RhdGljIGFuYWx5emVyLgorCisgc3JjL3F1ZXJ5Y21kLmMgfCAgICA5ICsrKysrKy0tLQorIDEgZmlsZXMgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQorCitjb21taXQgOWFjYmFkZmM5NjdkNzRjNzkzMDkxMmJmODllNTA4YjE0ZmY1MDlkOQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBNYXIgMTMgMjE6NDE6MDEgMjAxMSArMDEwMAorCisgICAgYnVpbGQ6IEFkZCAtV2Zvcm1hdC1zZWN1cml0eSBhbmQgLVdwb2ludGVyLWFyaXRoIHRvIGRlZmF1bHQgd2FybmluZ3MKKworIG00L2Rwa2ctY29tcGlsZXIubTQgfCAgICAxICsKKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDRjM2ZhZWRlOTc0NmYxZTg1ZjU0NGIzMTlkMDdiMmEyYzEyZjY3ZDQKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gTWFyIDEzIDIxOjQxOjM4IDIwMTEgKzAxMDAKKworICAgIGRzZWxlY3Q6IFVzZSBhIGZvcm1hdCBzdHJpbmcgaW4gcHJpbnRmKCkgaW5zdGVhZCBvZiBvbmx5IGEgdmFyaWFibGUKKyAgICAKKyAgICBUaGlzIGZpeGVzIGEgd2FybmluZyB3aXRoIC1XZm9ybWF0LXNlY3VyaXR5LgorCisgZHNlbGVjdC9tYWluLmNjIHwgICAgMiArLQorIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgYTQ2OGMxMDgwMWJiN2NlZTIwZTE1ZDA0ZTUwMmU2N2FhOTVhMGY3ZQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBNYXIgMTMgMTg6Mzg6MjEgMjAxMSArMDEwMAorCisgICAgZHBrZzogQWRkIGNvbW1lbnQgYWJvdXQgd2h5IHdyaXRlYmFjayBjb2RlIGlnbm9yZXMgcmV0dXJuIHZhbHVlcworICAgIAorICAgIFN1Z2dlc3RlZC1ieTogU3ZlbiBNdWVsbGVyIDxzdmVuQGRlYmlhbi5vcmc+CisKKyBzcmMvYXJjaGl2ZXMuYyB8ICAgIDYgKysrKysrCisgMSBmaWxlcyBjaGFuZ2VkLCA2IGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA1NTc3NjVkYmVkNjU2YzM3MThjNjUzNTJmMWNiOTk1ZmNjOGI4N2I5CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIE1hciAxMyAxODoyNzo1NiAyMDExICswMTAwCisKKyAgICBNb3ZlIHBrZ2FkbWluZGlyKCkgYW5kIHBrZ2FkbWluZmlsZSgpIHRvIHRoZSBmaWxlc2RiIG1vZHVsZQorICAgIAorICAgIFRoZXNlIGZ1bmN0aW9ucyBhcmUgbm90IHJlYWxseSBwYXJ0IG9mIHRoZSBtb2RzdGF0ZGIgbW9kdWxlLCBhbmQgYnkKKyAgICBtb3ZpbmcgdGhlbSBvdXQgdGhleSBnZXQgZGV0YW5nbGVkIGFuZCB3aWxsIG1ha2UgaXQgcG9zc2libGUgdG8gZXh0ZW5kCisgICAgdGhlbSB3L28gcHVsbGluZyBhZGRpdGlvbmFsIGNvZGUgaW50byBiaW5hcmllcyBub3QgdXNpbmcgdGhlIGZ1bmN0aW9ucy4KKworIGxpYi9kcGtnL2RibW9kaWZ5LmMgICAgICAgfCAgIDE2IC0tLS0tLS0tLS0tLS0tLS0KKyBsaWIvZHBrZy9kcGtnLWRiLmggICAgICAgIHwgICAgMyAtLS0KKyBsaWIvZHBrZy9saWJkcGtnLlZlcnNpb25zIHwgICAgMiAtLQorIHNyYy9maWxlc2RiLmMgICAgICAgICAgICAgfCAgIDQwICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKKyBzcmMvZmlsZXNkYi5oICAgICAgICAgICAgIHwgICAgMyArKysKKyBzcmMvaW5mb2RiLmMgICAgICAgICAgICAgIHwgICAgMSArCisgNiBmaWxlcyBjaGFuZ2VkLCA0NCBpbnNlcnRpb25zKCspLCAyMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGRjYWMwOWZhZGVhZWE0MjAyNjdjODVkNDMwZWQ3NjY4ZjNlMzdiYTcKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gTWFyIDEzIDE5OjU2OjAxIDIwMTEgKzAxMDAKKworICAgIE1ha2UgYWRtaW5kaXIgZmlsZSBsb2NhbCBldmVyeXdoZXJlCisgICAgCisgICAgVGhlIGludGVyZmFjZSB0byBnZXQgYW5kIHNldCB0aGUgZGF0YWJhc2UgZGlyZWN0b3J5IGlzIGRwa2dfZGJfZ2V0X2RpcigpCisgICAgYW5kIGRwa2dfZGJfc2V0X2RpcigpLgorCisgZHNlbGVjdC9kc2VsZWN0LmggfCAgICAxIC0KKyBkc2VsZWN0L21haW4uY2MgICB8ICAgIDMgKystCisgZHNlbGVjdC9tZXRob2QuY2MgfCAgIDEwICsrKysrLS0tLS0KKyBzcmMvZGl2ZXJ0Y21kLmMgICB8ICAgIDIgKy0KKyBzcmMvaGVscC5jICAgICAgICB8ICAgIDEgKworIHNyYy9tYWluLmMgICAgICAgIHwgICAgMiArLQorIHNyYy9tYWluLmggICAgICAgIHwgICAgMSAtCisgc3JjL3Byb2Nlc3NhcmMuYyAgfCAgICAyICsrCisgc3JjL3F1ZXJ5Y21kLmMgICAgfCAgICAyICstCisgc3JjL3N0YXRjbWQuYyAgICAgfCAgICA0ICsrLS0KKyBzcmMvdXBkYXRlLmMgICAgICB8ICAgIDIgKy0KKyAxMSBmaWxlcyBjaGFuZ2VkLCAxNiBpbnNlcnRpb25zKCspLCAxNCBkZWxldGlvbnMoLSkKKworY29tbWl0IGUwYWU3OTZkOGNkZTM2MGM1YmY5YjQ2YjQ5OTk4ZjZlZmEzYjhjODIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gTWFyIDEzIDA4OjQ1OjI1IDIwMTEgKzAxMDAKKworICAgIERvIG5vdCBwYXNzIGFkbWluZGlyIHRvIGRhdGFiYXNlIGluaXRpYWxpemF0aW9uIGZ1bmN0aW9ucworICAgIAorICAgIFVzZSBkcGtnX2RiX2dldF9kaXIoKSBhbmQgZHBrZ19kYl9nZXRfcGF0aCgpIHRvIGdsb2JhbGx5IHJldHJpZXZlIHRoZQorICAgIGRhdGFiYXNlIGRpcmVjdG9yeSBpbnN0ZWFkIG9mIHBhc3NpbmcgaXQgYXJvdW5kLgorCisgZHNlbGVjdC9tYWluLmNjICAgICAgICAgfCAgICA2ICsrKy0tLQorIGxpYi9kcGtnL2RibW9kaWZ5LmMgICAgIHwgICAxMCArKysrKy0tLS0tCisgbGliL2Rwa2cvZHBrZy1kYi5oICAgICAgfCAgICA0ICsrLS0KKyBsaWIvZHBrZy90cmlnZGVmZXJyZWQuaCB8ICAgIDMgKy0tCisgbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmwgfCAgICAyICstCisgbGliL2Rwa2cvdHJpZ2xpYi5jICAgICAgfCAgICA2ICsrKy0tLQorIGxpYi9kcGtnL3RyaWdsaWIuaCAgICAgIHwgICAgMiArLQorIHNyYy9hcmNoaXZlcy5jICAgICAgICAgIHwgICAgMyArLS0KKyBzcmMvZW5xdWlyeS5jICAgICAgICAgICB8ICAgIDggKysrKy0tLS0KKyBzcmMvaGVscC5jICAgICAgICAgICAgICB8ICAgIDQgKystLQorIHNyYy9wYWNrYWdlcy5jICAgICAgICAgIHwgICAgMyArLS0KKyBzcmMvcXVlcnljbWQuYyAgICAgICAgICB8ICAgMTYgKysrKysrKystLS0tLS0tLQorIHNyYy9zZWxlY3QuYyAgICAgICAgICAgIHwgICAgNiArKystLS0KKyBzcmMvdHJpZ2NtZC5jICAgICAgICAgICB8ICAgIDQgKystLQorIHNyYy91cGRhdGUuYyAgICAgICAgICAgIHwgICAgMiArLQorIDE1IGZpbGVzIGNoYW5nZWQsIDM4IGluc2VydGlvbnMoKyksIDQxIGRlbGV0aW9ucygtKQorCitjb21taXQgMDZjZDU4ZWVkM2MzYzliNmQ1NzY0NzczNDI4YjJkZDMxZDUyMzNhMworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBNYXIgMTMgMjI6MTM6MDQgMjAxMSArMDEwMAorCisgICAgbGliZHBrZzogVXNlIGRwa2dfZGJfZ2V0X3BhdGgoKSBpbnN0ZWFkIG9mIHRyaWdfZ2V0X3RyaWdnZXJzZGlyKCkKKyAgICAKKyAgICBSZW1vdmUgbm93IHVudXNlZCB0cmlnX2dldF90cmlnZ2Vyc2RpcigpLgorCisgbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmwgfCAgICAyICstCisgbGliL2Rwa2cvdHJpZ2xpYi5jICAgICAgfCAgIDEyICstLS0tLS0tLS0tLQorIGxpYi9kcGtnL3RyaWdsaWIuaCAgICAgIHwgICAgMiAtLQorIDMgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAxNCBkZWxldGlvbnMoLSkKKworY29tbWl0IGY2NzY2NWU4ZjVlYjQ2YjNhMGI5MGQyYTkwMDAxYjNkMzNmOTRlZjkKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gTWFyIDEzIDE5OjE3OjU1IDIwMTEgKzAxMDAKKworICAgIFVzZSBkcGtnX2RiX3NldF9kaXIoKSBpbnN0ZWFkIG9mIHBrZ2FkbWluZGlyX2luaXQoKQorICAgIAorICAgIFJlbW92ZSBub3cgdW51c2VkIHBrZ2FkbWluZGlyX2luaXQoKS4KKworIGRzZWxlY3QvbWFpbi5jYyAgICAgfCAgICAyICsrCisgbGliL2Rwa2cvZGJtb2RpZnkuYyB8ICAgMTIgLS0tLS0tLS0tLS0tCisgbGliL2Rwa2cvZHBrZy1kYi5oICB8ICAgIDEgLQorIHNyYy9kaXZlcnRjbWQuYyAgICAgfCAgICA0ICsrLS0KKyBzcmMvbWFpbi5jICAgICAgICAgIHwgICAgMiArKworIHNyYy9xdWVyeWNtZC5jICAgICAgfCAgICA0ICsrLS0KKyBzcmMvc3RhdGNtZC5jICAgICAgIHwgICAgNCArKy0tCisgc3JjL3RyaWdjbWQuYyAgICAgICB8ICAgIDQgKystLQorIDggZmlsZXMgY2hhbmdlZCwgMTIgaW5zZXJ0aW9ucygrKSwgMjEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBhZGRjZjA3MTdlN2E2MDc2ZjQwYTU3ZDhhYTlhMDE2NDg2OGQ0NmJhCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIE1hciAxMyAxOTo1MzoyOCAyMDExICswMTAwCisKKyAgICBVc2UgZHBrZ19kYl9nZXRfcGF0aCgpIGluc3RlYWQgb2YgdXNpbmcgbV9hc3ByaW50ZigpIGFuZCBhZG1pbmRpcgorCisgZHNlbGVjdC9tZXRob2QuY2MgICAgfCAgICAyICstCisgZHNlbGVjdC9tZXRocGFyc2UuY2MgfCAgICAyICstCisgbGliL2Rwa2cvZGJtb2RpZnkuYyAgfCAgICAyICstCisgc3JjL2RpdmVydGNtZC5jICAgICAgfCAgICAyICstCisgc3JjL3Byb2Nlc3NhcmMuYyAgICAgfCAgICAyICstCisgc3JjL3N0YXRjbWQuYyAgICAgICAgfCAgICAyICstCisgNiBmaWxlcyBjaGFuZ2VkLCA2IGluc2VydGlvbnMoKyksIDYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA4ZWNkMzQxNGViY2YwYTgxYTRmMjNiNjcxYzEzNDcyOWRjNjAwYTNhCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIE1hciAxMyAxOTo1MTo1NSAyMDExICswMTAwCisKKyAgICBVc2UgZHBrZ19kYl9nZXRfcGF0aCgpIGluc3RlYWQgb2YgYWQtaG9jIGJ1aWxkaW5nIHRoZSBzdHJpbmcgd2l0aCB2YXJidWYKKworIHNyYy9kaXZlcnRkYi5jIHwgICAyMCArKysrKysrKystLS0tLS0tLS0tLQorIHNyYy9zdGF0ZGIuYyAgIHwgICAxNiArKysrKysrLS0tLS0tLS0tCisgc3JjL3VwZGF0ZS5jICAgfCAgIDEyICsrKysrKy0tLS0tLQorIDMgZmlsZXMgY2hhbmdlZCwgMjIgaW5zZXJ0aW9ucygrKSwgMjYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAxOGQxZGFhN2JmZmZkYjAwYWY0OTAzYWQ4OTUxNTFmZTYwZTc3ZWJmCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIE1hciAxMyAwODo0NToyNSAyMDExICswMTAwCisKKyAgICBsaWJkcGtnOiBBZGQgbmV3IGRiZGlyIG1vZHVsZQorCisgbGliL2Rwa2cvTWFrZWZpbGUuYW0gfCAgICAyICsKKyBsaWIvZHBrZy9kYmRpci5jICAgICB8ICAgOTIgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKKyBsaWIvZHBrZy9kcGtnLWRiLmggICB8ICAgIDYgKysrCisgMyBmaWxlcyBjaGFuZ2VkLCAxMDAgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IGFkMmYyYjhjYTJhYmYyZTIxZTU1YWI3NDI1ZjE5ZGQyN2NhZDk2ZDgKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gTWFyIDEzIDA3OjQxOjMwIDIwMTEgKzAxMDAKKworICAgIGRzZWxlY3Q6IFVzZSBtb2RzdGF0ZGJfY2FuX2xvY2soKSBpbiByZWZyZXNobWVudSgpIGluc3RlYWQgb2YgYWQtaG9jIGNvZGUKKworIGRzZWxlY3QvbWFpbi5jYyB8ICAgMTEgKysrLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgOCBkZWxldGlvbnMoLSkKKworY29tbWl0IDYyYjkxZDQ2Nzg1ZGFlNWQ3ZWFiNzk2ZjBjZWI0MzI5NWYxYzU0YjgKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gTWFyIDEzIDA3OjQwOjA5IDIwMTEgKzAxMDAKKworICAgIGxpYmRwa2c6IFJlZmFjdG9yIG1vZHN0YXRkYl9jYW5fbG9jaygpIG91dCBmcm9tIG1vZHN0YXRkYl9sb2NrKCkKKworIGxpYi9kcGtnL2RibW9kaWZ5LmMgICAgICAgfCAgIDI1ICsrKysrKysrKysrKysrKysrKy0tLS0tLS0KKyBsaWIvZHBrZy9kcGtnLWRiLmggICAgICAgIHwgICAgMSArCisgbGliL2Rwa2cvbGliZHBrZy5WZXJzaW9ucyB8ICAgIDEgKworIDMgZmlsZXMgY2hhbmdlZCwgMjAgaW5zZXJ0aW9ucygrKSwgNyBkZWxldGlvbnMoLSkKKworY29tbWl0IDJlZDY3Y2VkYWM2ZTViOGRmYWU5MGM1NmY5NmM4YTQ0YWNjYzkzMDIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gTWFyIDEzIDIyOjAyOjAxIDIwMTEgKzAxMDAKKworICAgIGxpYmRwa2c6IEhhbmRsZSBFQUNDRVMgYXMgYSBwZXJtaXNzaW9uIGVycm9yIGluIG1vZHN0YXRkYl9sb2NrKCkKKyAgICAKKyAgICBUaGUgY3VycmVudCBjb2RlIG9ubHkgY29uc2lkZXJzIEVQRVJNLCBidXQgRUFDQ0VTIGlzIGFsc28gYSB2YWxpZCBlcnJvcgorICAgIGNvbmNlcm5pbmcgcGVybWlzc2lvbiBpc3N1ZXMgZnJvbSBvcGVuKDIpLgorCisgbGliL2Rwa2cvZGJtb2RpZnkuYyB8ICAgIDIgKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDg2MTllNmQzMTQ4NmI4NzRmOGYyZjJjZGIzNGU2NjcwNGQyNmE2YTAKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gTWFyIDEzIDA3OjM4OjAzIDIwMTEgKzAxMDAKKworICAgIGxpYmRwa2c6IFJlc2V0IGRibG9ja2ZkIG9uIG1vZHN0YXRkYl91bmxvY2soKQorICAgIAorICAgIFRoaXMgd2lsbCBhbGxvdyBsb2NraW5nIGFnYWluIHRoZSBkYXRhYmFzZSBhZnRlciBoYXZpbmcgcHJldmlvdXNseQorICAgIHVubG9ja2VkIGl0LgorCisgbGliL2Rwa2cvZGJtb2RpZnkuYyB8ICAgIDIgKysKKyAxIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDZjOTA5Mzc3N2Y2MTIxZGM4YzJlZTNiZTQ0ZDI5Mzc0MDJmM2MwMjgKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gTWFyIDEzIDA2OjQ4OjI3IDIwMTEgKzAxMDAKKworICAgIE1ha2UgbW9kc3RhdGRiIGxvY2tpbmcgZnVuY3Rpb25zIG5vdCB0YWtlIGFuIGFkbWluZGlyIGFyZ3VtZW50CisgICAgCisgICAgSW5pdGlhbGl6ZSB0aGUgbG9ja2ZpbGUgb24gbW9kc3RhdGRiX2luaXQoKSB2aWEgdGhlIGZuaXMgYXJyYXkuIE1ha2UKKyAgICBzdXJlIHdlIGNhbGwgbW9kc3RhdGRiX2luaXQoKSBhbmQgbW9kc3RhdGRiX2RvbmUoKSBpbiBjYXNlIHdlIGFyZSBub3QKKyAgICBjYWxsaW5nIG1vZHN0YXRkYl9vcGVuKCkgYW5kIG1vZHN0YXRkYl9zaHV0ZG93bigpLgorCisgbGliL2Rwa2cvZGJtb2RpZnkuYyB8ICAgMjMgKysrKysrKy0tLS0tLS0tLS0tLS0tLS0KKyBsaWIvZHBrZy9kcGtnLWRiLmggIHwgICAgNCArKy0tCisgc3JjL2VucXVpcnkuYyAgICAgICB8ICAgIDIgKy0KKyBzcmMvdXBkYXRlLmMgICAgICAgIHwgICAgNiArKysrKy0KKyA0IGZpbGVzIGNoYW5nZWQsIDE1IGluc2VydGlvbnMoKyksIDIwIGRlbGV0aW9ucygtKQorCitjb21taXQgYmU1OTZmYWNjNDViMGI5MjEzMjJhYmQwZDg4NWJlYWQ4MjI2MzlmNAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBNYXIgMTMgMDY6Mjk6MDggMjAxMSArMDEwMAorCisgICAgbGliZHBrZzogUmVmYWN0b3IgbW9kc3RhdGRiIGluaXQvZG9uZSBzZXF1ZW5jZSBpbnRvIG5ldyBmdW5jdGlvbnMKKyAgICAKKyAgICBNb3ZlIHZhcmlhYmxlIHBhdGggaW5pdGlhbGl6YXRpb24gYW5kIGRlc3RydWN0aW9uIGNvZGUgdG8gdGhlIG5ldworICAgIG1vZHN0YXRkYl9pbml0KCkgYW5kIG1vZHN0YXRkYl9kb25lKCkuIEFkZCBhIGJvb2xlYW4gdmFyaWFibGUgdG8gcHJvdGVjdAorICAgIHRoZSBmdW50aW9ucyBmcm9tIHJlaXRlcmF0ZWQgY2FsbHMuCisKKyBsaWIvZHBrZy9kYm1vZGlmeS5jICAgICAgIHwgICA1OSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0KKyBsaWIvZHBrZy9kcGtnLWRiLmggICAgICAgIHwgICAgMiArCisgbGliL2Rwa2cvbGliZHBrZy5WZXJzaW9ucyB8ICAgIDEgKworIDMgZmlsZXMgY2hhbmdlZCwgNDUgaW5zZXJ0aW9ucygrKSwgMTcgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA3YTE0ZmQ3ZDY2MDRkNWI4ZGU1OGUwZTMzZGRkOGVlODAyNmJmZjYyCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIE1hciAxMyAwNjoyOTowOCAyMDExICswMTAwCisKKyAgICBsaWJkcGtnOiBSZW5hbWUgbW9kc3RhdGRiX2luaXQoKSB0byBtb2RzdGF0ZGJfb3BlbigpCisgICAgCisgICAgV2UnbGwgbmVlZCB0byByZXVzZSB0aGUgbW9kc3RhdGRiX2luaXQoKSBmdW5jdGlvbiBuYW1lIGZvciBmdXJ0aGVyCisgICAgcmVmYWN0b3JpbmcuCisKKyBkc2VsZWN0L21haW4uY2MgICAgICAgICAgIHwgICAgMiArLQorIGxpYi9kcGtnL2RibW9kaWZ5LmMgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvZHBrZy1kYi5oICAgICAgICB8ICAgIDIgKy0KKyBsaWIvZHBrZy9saWJkcGtnLlZlcnNpb25zIHwgICAgMSArCisgc3JjL2FyY2hpdmVzLmMgICAgICAgICAgICB8ICAgIDIgKy0KKyBzcmMvZW5xdWlyeS5jICAgICAgICAgICAgIHwgICAgOCArKysrLS0tLQorIHNyYy9wYWNrYWdlcy5jICAgICAgICAgICAgfCAgICAyICstCisgc3JjL3F1ZXJ5Y21kLmMgICAgICAgICAgICB8ICAgMTYgKysrKysrKystLS0tLS0tLQorIHNyYy9zZWxlY3QuYyAgICAgICAgICAgICAgfCAgICA2ICsrKy0tLQorIDkgZmlsZXMgY2hhbmdlZCwgMjEgaW5zZXJ0aW9ucygrKSwgMjAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBjZWQ1ZWMwMjcyODVkZTNmMjA3YzBiYjdhMjZlMzQ1NTUwM2U3ZTI5CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIE1hciAxMyAwNjowOToxMCAyMDExICswMTAwCisKKyAgICBsaWJkcGtnOiBSZW5hbWUgZGF0YWJhc2UgbW9kdWxlIHRvIHBrZy1kYgorICAgIAorICAgIFRoaXMgbWF0Y2hlcyB0aGUgbmFtZXNwYWNlIGZvciB0aGUgcHJvdmlkZWQgZnVuY3Rpb25zLCBhbmQgZGlzYW1iaWd1YXRlcworICAgIHdoYXQga2luZCBvZiBkYXRhYmFzZSBpdCdzIHJlZmVyaW5nIHRvLgorCisgbGliL2Rwa2cvTWFrZWZpbGUuYW0gICAgICAgICAgICAgIHwgICAgMiArLQorIGxpYi9kcGtnL3tkYXRhYmFzZS5jID0+IHBrZy1kYi5jfSB8ICAgIDIgKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDFhOGMyZjg0MDAzMjRkYzA0ZTFmYTY2NDIzOWMzYmJjNjM5OWU2YjAKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gTWFyIDEzIDA2OjA2OjMzIDIwMTEgKzAxMDAKKworICAgIGxpYmRwa2c6IFJlbmFtZSBoYXNocmVwb3J0KCkgdG8gcGtnX2RiX3JlcG9ydCgpCisKKyBsaWIvZHBrZy9kYXRhYmFzZS5jIHwgICAgNCArKystCisgbGliL2Rwa2cvZHBrZy1kYi5oICB8ICAgIDIgKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDY5YTJjNzA4YzA1ZDdhODEwNDFlMGIyZmJkZjc5NDFjNDBhZDMxMTMKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gTWFyIDEzIDA2OjAxOjM5IDIwMTEgKzAxMDAKKworICAgIGxpYmRwa2c6IE1vdmUgbm9uIHBrZ19kYiByZWxhdGVkIGZ1bmN0aW9ucyB0byB0aGUgcGtnIG1vZHVsZQorICAgIAorICAgIFRoZSBwa2diaW5fYmxhbmssIHBrZ19ibGFuayBhbmQgcGtnX2lzX2luZm9ybWF0aXZlIGFyZSBub3Qgc3RyaWN0bHkKKyAgICBwYXJ0IG9mIHRoZSBwa2dfZGIgbW9kdWxlLCBhbmQgY2FuIGJlIHVzZWQgdy9vIHRoZSBsYXR0ZXIuCisKKyBsaWIvZHBrZy9kYXRhYmFzZS5jIHwgICA2NSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgbGliL2Rwa2cvcGtnLmMgICAgICB8ICAgNzcgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCisgMiBmaWxlcyBjaGFuZ2VkLCA3NyBpbnNlcnRpb25zKCspLCA2NSBkZWxldGlvbnMoLSkKKworY29tbWl0IDE5MGEwZjg4ZWY3MjU4YjZhMzVhMzQ2ZmYxYTNjMjFjNjhjM2Y2ZTQKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gTWFyIDEzIDA1OjUzOjM3IDIwMTEgKzAxMDAKKworICAgIGxpYmRwa2c6IE1vdmUgYmxhbmt2ZXJzaW9uKCkgdG8gbmV3IHZlcnNpb24gbW9kdWxlCisKKyBsaWIvZHBrZy9NYWtlZmlsZS5hbSB8ICAgIDMgKystCisgbGliL2Rwa2cvZGF0YWJhc2UuYyAgfCAgICA1IC0tLS0tCisgbGliL2Rwa2cvdmVyc2lvbi5jICAgfCAgIDMyICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCisgMyBmaWxlcyBjaGFuZ2VkLCAzNCBpbnNlcnRpb25zKCspLCA2IGRlbGV0aW9ucygtKQorCitjb21taXQgOTQzZGU2YzBlMDk3NjBhZjFmOGFkOGMxZTM2NGZjNGJjZmJiMTQxOAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBNYXIgMTMgMDU6NDA6NDMgMjAxMSArMDEwMAorCisgICAgbGliZHBrZzogQ2hhbmdlIGZpbGVfdW5sb2NrKCkgdG8gYWN0IGRpcmVjdGx5IG9uIGl0cyBuZXcgYXJndW1lbnRzCisgICAgCisgICAgVGhpcyBzd2l0Y2hlcyB0aGUgZnVuY3Rpb24gZnJvbSB1bmxvY2tpbmcgdGhlIGZpbGUgdmlhIHRoZSBwb3BwZWQKKyAgICBjbGVhbnVwIHRvIGRvIHRoZSBhY3Rpb24gaXRzZWxmLgorCisgbGliL2Rwa2cvZGJtb2RpZnkuYyB8ICAgIDMgKystCisgbGliL2Rwa2cvZmlsZS5jICAgICB8ICAgMjEgKysrKysrKysrKystLS0tLS0tLS0tCisgbGliL2Rwa2cvZmlsZS5oICAgICB8ICAgIDIgKy0KKyAzIGZpbGVzIGNoYW5nZWQsIDE0IGluc2VydGlvbnMoKyksIDEyIGRlbGV0aW9ucygtKQorCitjb21taXQgNTVmOTcwNGU0MGYwN2E5NWE0MDllMWZiYTM4YmIyMWQ3MDA0MTg3MgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBNYXIgMTMgMDU6MDQ6MTEgMjAxMSArMDEwMAorCisgICAgbGliZHBrZzogRG8gbm90IGxlYWsgdHJpZ2dlcnNkaXIKKworIGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sIHwgICAgNSArKysrLQorIDEgZmlsZXMgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgYzBmMDBkZGY5YTMyNThkMjhhYTNhZDMwNmFkYWJjM2ViMzQ0NzZkOQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBNYXIgMTMgMDQ6MjU6MDIgMjAxMSArMDEwMAorCisgICAgZHNlbGVjdDogVXNlIG1fYXNwcmludGYoKSBpbnN0ZWFkIG9mIGFkLWhvYyBzdHJpbmcgY29uc3RydWN0aW9uCisKKyBkc2VsZWN0L21ldGhvZC5jYyAgICB8ICAgMTAgKysrLS0tLS0tLQorIGRzZWxlY3QvbWV0aHBhcnNlLmNjIHwgICAgOSArKy0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDUgaW5zZXJ0aW9ucygrKSwgMTQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA2NzYxZjMyYTZiOTQ3NmNkNjNmODc0ZThmYmJiOTM0NjA2ODA0OWMzCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IE1hciAxMCAwNTo0OTo0NiAyMDExICswMTAwCisKKyAgICBNYWtlIG1vZHN0YXRkYiBhdmFpbGFibGUgZmlsZSBvcHRpb25zIGV4cGxpY2l0CisgICAgCisgICAgVGhlIG9wdGlvbnMgd2VyZSBlaXRoZXIgZXhwbGljaXQgb3IgZGVwZW5kZW50IG9uIHRoZSBtYWluIHN0YXR1cworICAgIG9wdGlvbnMsIG5vdyB0aGV5IGFyZSBhbHdheXMgZXhwbGljaXQuIFRoaXMgZGV0YW5nbGVzIHRoZSBhY3Rpb25zCisgICAgb24gdGhlIGF2YWlsYWJsZSBmaWxlIGZyb20gdGhlIG9uZXMgb24gdGhlIHN0YXR1cyBmaWxlLiBSZW5hbWUgdGhlCisgICAgZW51bSBmbGFncyBhY2NvcmRpbmdseS4KKworIGxpYi9kcGtnL2RibW9kaWZ5LmMgfCAgIDEyICsrKysrKystLS0tLQorIGxpYi9kcGtnL2Rwa2ctZGIuaCAgfCAgICA2ICsrKy0tLQorIHNyYy9hcmNoaXZlcy5jICAgICAgfCAgICA0ICsrLS0KKyBzcmMvZW5xdWlyeS5jICAgICAgIHwgICAgMiArLQorIHNyYy9xdWVyeWNtZC5jICAgICAgfCAgICA2ICsrKy0tLQorIDUgZmlsZXMgY2hhbmdlZCwgMTYgaW5zZXJ0aW9ucygrKSwgMTQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBhZjMxNTNkMDlhYTNlZDU1OTdkNmQ0MTVlNWFiN2NjM2JhOTcyZTdjCitBdXRob3I6IFN0ZXZlIExhbmdhc2VrIDxzdGV2ZS5sYW5nYXNla0BsaW5hcm8ub3JnPgorRGF0ZTogICBXZWQgTWFyIDkgMTE6NDM6MDUgMjAxMSAtMDgwMAorCisgICAgQWRkIG5ldyB2YXJpYWJsZXMsIERFQl9IT1NUX01VTFRJQVJDSCBhbmQgREVCX0JVSUxEX01VTFRJQVJDSAorICAgIAorICAgIEFkZCBuZXcgdmFyaWFibGVzIHRoYXQgcmV0dXJuIHRoZSAiaWRlYWwiIEdOVSB0cmlwbGV0IGZvciBlYWNoIGFyY2hpdGVjdHVyZQorICAgIHdoaWNoIHNob3VsZCBiZSB1c2VkIGFzIHRoZSBwYXRoIGNvbXBvbmVudCBmb3IgbGlicmFyeSBpbnN0YWxsYXRpb24uCisgICAgCisgICAgU2lnbmVkLW9mZi1ieTogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICB8ICAgIDYgKysrKysrCisgbWFuL2Rwa2ctYXJjaGl0ZWN0dXJlLjEgICAgICB8ICAgIDYgKysrKysrCisgc2NyaXB0cy9EcGtnL0FyY2gucG0gICAgICAgICB8ICAgMjIgKysrKysrKysrKysrKysrKysrKysrLQorIHNjcmlwdHMvZHBrZy1hcmNoaXRlY3R1cmUucGwgfCAgIDEwICsrKysrKysrLS0KKyA0IGZpbGVzIGNoYW5nZWQsIDQxIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA4YTkxMGJjN2FhZGQwNTI1ZmUyNGIxNGM4ZDYyNDlmNzdiYmExNWI3CitBdXRob3I6IEl2YW4gR2FnaXMgPGlnYWdpc0BnbWFpbC5jb20+CitEYXRlOiAgIFdlZCBNYXIgOSAwNToxODowOSAyMDExICswMTAwCisKKyAgICBkcGtnLW5hbWU6IEZpeCB0eXBvIGluIC0tb3ZlcndyaXRlIGFyZ3VtZW50IHBhcnNpbmcKKyAgICAKKyAgICBUaGlzIGZpeGVzIHRoZSBvcHRpb24gc28gdGhhdCBpdCBhY3R1YWxseSB3b3JrcyBhdCBhbGwuCisgICAgCisgICAgTFA6ICM3Mjg3MDgKKyAgICAKKyAgICBTaWduZWQtb2ZmLWJ5OiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICB8ICAgIDIgKysKKyBzY3JpcHRzL2Rwa2ctbmFtZS5wbCB8ICAgIDIgKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDcyMjFkNTMzZTkzZGUwZDczNzE2ZTRmNjlmMWYwMWQ3M2NjZThmOTUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgTWFyIDggMTQ6MTU6MTkgMjAxMSArMDEwMAorCisgICAgdS1hOiBGaXggbWVtb3J5IGxlYWtzIGR1ZSB0byBzY2FuZGlyKCkgcmV0dXJuIHZhbHVlCisKKyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmMgfCAgICAzICsrKworIDEgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgOWMwMWIzNzMwMDlhYzQ2MmFmYmRiOTM3NWFiZDJjN2I5YWJjMTlkNQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBNYXIgNSAwNToyMjoxMCAyMDExICswMTAwCisKKyAgICBEbyBub3Qgd3JpdGUgdGhlIGF2YWlsYWJsZSBmaWxlIHVubmVjZXNzYXJpbHkKKyAgICAKKyAgICBTb21lIHRpbWVzIHdlIG5lZWQgdG8gd3JpdGUgYmFjayB0aGUgc3RhdHVzIGZpbGUsIGJ1dCBub3QgdGhlIGF2YWlsYWJsZQorICAgIGZpbGUuIEFkZCBhIG5ldyBmbGFnIHRvIGhhbmRsZSB0aG9zZSBjYXNlcy4KKyAgICAKKyAgICBCYXNlZC1vbi1wYXRjaC1ieTogTWljaGVsIExlc3BpbmFzc2UgPHdhbGtlbkB6b3kub3JnPgorCisgZGViaWFuL2NoYW5nZWxvZyAgICB8ICAgIDIgKy0KKyBkc2VsZWN0L21haW4uY2MgICAgIHwgICAgMiArLQorIGxpYi9kcGtnL2RibW9kaWZ5LmMgfCAgICAyICstCisgbGliL2Rwa2cvZHBrZy1kYi5oICB8ICAgIDEgKworIHNyYy9zZWxlY3QuYyAgICAgICAgfCAgICAyICstCisgNSBmaWxlcyBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBmYjQ5ZTEzMWVmMzIwMzkyNzdjNTM4Zjc1OWFiMTljMWZmMjJlOGZkCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIE1hciA0IDE2OjE1OjUxIDIwMTEgKzAxMDAKKworICAgIERvIG5vdCByZWFkIHRoZSBhdmFpbGFibGUgZmlsZSB1bm5lY2Vzc2FyaWx5CisgICAgCisgICAgRm9yIGNvbW1hbmRzIHRoYXQgb25seSBtYWtlIHVzZSBvZiBpbmZvcm1hdGlvbiBmcm9tIHRoZSBzdGF0dXMgZmlsZSwKKyAgICB0aGVyZSdzIG5vIG5lZWQgdG8gbWFrZSB0aGVtIHJlYWQgYW5kIHBhcnNlIHRoZSBhdmFpbGFibGUgZmlsZS4gVGhpcworICAgIGNoYW5nZSBkb2VzIG5vdCBhbHRlciB0aGUgY3VycmVudCBiZWhhdmlvdXIsIGFuZCBjb21tYW5kcyB0aGF0IHdlcmUKKyAgICBwcmV2aW91c2x5IHVwZGF0aW5nIHRoZSBhdmFpbGFibGUgZmlsZSB3aWxsIGNvbnRpbnVlIGRvaW5nIHNvLgorICAgIAorICAgIFJlbW92aW5nIGZ1cnRoZXIgYWNjZXNzIHRvIGl0IGlzIHBlbmRpbmcgYSBkZWNpc2lvbiBvbiBob3cgdG8gdHJlYXQKKyAgICBnbG9iYWxseSB0aGUgYXZhaWxhYmxlIGZpbGUsIHdoaWNoIG5lZWRzIGludGVyYWN0aW9uIHdpdGggdGhlIHBhY2thZ2UKKyAgICBtYW5hZ2VyIGZyb250ZW5kIGRldmVsb3BlcnMuCisgICAgCisgICAgQ2xvc2VzOiAjMzk3MTIxCisgICAgCisgICAgQmFzZWQtb24tcGF0Y2gtYnk6IE1pY2hlbCBMZXNwaW5hc3NlIDx3YWxrZW5Aem95Lm9yZz4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgfCAgICAyICsrCisgbGliL2Rwa2cvZGJtb2RpZnkuYyB8ICAgIDMgKystCisgc3JjL2FyY2hpdmVzLmMgICAgICB8ICAgIDQgKystLQorIHNyYy9lbnF1aXJ5LmMgICAgICAgfCAgICAyICstCisgc3JjL3BhY2thZ2VzLmMgICAgICB8ICAgIDYgKysrLS0tCisgc3JjL3F1ZXJ5Y21kLmMgICAgICB8ICAgMTYgKysrKysrKysrKystLS0tLQorIHNyYy9zZWxlY3QuYyAgICAgICAgfCAgICA0ICsrLS0KKyA3IGZpbGVzIGNoYW5nZWQsIDIzIGluc2VydGlvbnMoKyksIDE0IGRlbGV0aW9ucygtKQorCitjb21taXQgOGU1N2Y0ZjQyMjRmYzRmNmYwM2EzYWVlZjg5OGUyNWYzZmY4ODFkNQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBNYXIgNSAwNDo1NTo0MSAyMDExICswMTAwCisKKyAgICBTd2l0Y2ggdGhlIGxvZ2ljIGZyb20gbXNkYnJ3X25vYXZhaWwgdG8gbXNkYnJ3X2F2YWlsYWJsZQorCisgZHNlbGVjdC9tYWluLmNjICAgICB8ICAgIDMgKystCisgbGliL2Rwa2cvZGJtb2RpZnkuYyB8ICAgIDIgKy0KKyBsaWIvZHBrZy9kcGtnLWRiLmggIHwgICAgMiArLQorIHNyYy9hcmNoaXZlcy5jICAgICAgfCAgICA5ICsrKysrLS0tLQorIHNyYy9lbnF1aXJ5LmMgICAgICAgfCAgICA4ICsrKystLS0tCisgc3JjL3BhY2thZ2VzLmMgICAgICB8ICAgIDYgKysrLS0tCisgc3JjL3F1ZXJ5Y21kLmMgICAgICB8ICAgMTIgKysrKysrLS0tLS0tCisgc3JjL3NlbGVjdC5jICAgICAgICB8ICAgIDYgKysrLS0tCisgOCBmaWxlcyBjaGFuZ2VkLCAyNSBpbnNlcnRpb25zKCspLCAyMyBkZWxldGlvbnMoLSkKKworY29tbWl0IDg5ODkzNjEyMGU5ODdkOWZhZjI3MDAyZTJkMDE4NDRlZGJmYmI1MzgKK0F1dGhvcjogUm9nZXIgTGVpZ2ggPHJsZWlnaEBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgTWFyIDEyIDE2OjA0OjMxIDIwMTEgKzAwMDAKKworICAgIERwa2c6OkNvbnRyb2w6Okhhc2g6IGFjY2VwdCBQR1Agc2lnbmF0dXJlIGFzIGVuZCBvZiBibG9jaworICAgIAorICAgIEltcHJvdmVkLWJ5OiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgIHwgICAgMyArKysKKyBzY3JpcHRzL0Rwa2cvQ29udHJvbC9IYXNoLnBtIHwgICAgMiArLQorIDIgZmlsZXMgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgMmJmZDUxMDJiNDEzZDNhMGI5N2FhOTNlNTA0NjdmNDFiMjQ0OGVjZgorQXV0aG9yOiBIZWxnZSBLcmV1dHptYW5uIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KK0RhdGU6ICAgTW9uIE1hciA3IDExOjI5OjIxIDIwMTEgKzAxMDAKKworICAgIFVwZGF0ZSBHZXJtYW4gc2NyaXB0cyB0cmFuc2xhdGlvbgorICAgIAorICAgIFVwZGF0ZSB0byA1MTR0CisKKyBzY3JpcHRzL3BvL2RlLnBvIHwgICAgNyArKystLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBkZjgwNjJkMjAyMDE2MTE0YjZjMTY3Y2QwY2YyM2U4OTU1ODcwNTljCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIE1hciA3IDA5OjMyOjE0IDIwMTEgKzAxMDAKKworICAgIGRwa2ctc291cmNlOiBiZSBhIGJpdCBsZXNzIHN0cmljdCB3aGVuIHBhcnNpbmcgcGF0Y2hlcworICAgIAorICAgIEl0IHdpbGwgbm93IGFjY2VwdCBzZWVpbmcgdGhlIHNhbWUgZmlsZSB0d2ljZQorICAgIAorICAgIFJlcG9ydGVkLWJ5OiBCYXN0aWFuIEJsYW5rIDx3YWxkaUBkZWJpYW4ub3JnPgorICAgIAorICAgIEl0IHdpbGwgbm8gbG9uZ2VyIG1hdGNoIG9uIHRoZSBFbmdsaXNoIHRleHQgIk5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUiIGFzCisgICAgaXQgbWlnaHQgYmUgdHJhbnNsYXRlZCBpbiBzb21lIGNhc2VzLiBJdCB3aWxsIG9ubHkgY29uc2lkZXIgdGhlIGludGlhbAorICAgICJcICIuCisgICAgCisgICAgUmVwb3J0ZWQtYnk6IEphbi1NYXJlayBHbG9nb3dza2kgPGdsb2dvd0BmYmlob21lLmRlPgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICB8ICAgIDQgKysrKworIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG0gfCAgIDE0ICsrKysrKysrLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAxMiBpbnNlcnRpb25zKCspLCA2IGRlbGV0aW9ucygtKQorCitjb21taXQgNDNmNTQzMzc2OWEwZjhlZWNjM2MxY2M3YTIwOGQ2ZTE0MTcxYWQ2MAorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBNYXIgNiAxMDo0NjoyOCAyMDExICswMTAwCisKKyAgICBSZWdlbmVyYXRlIC5wb3QgZmlsZXMgYW5kIG1lcmdlIC5wbyBmaWxlcyB3aXRoIHRoZW0KKworIGRzZWxlY3QvcG8vYnMucG8gICAgICAgIHwgIDMyNSArKy0tLQorIGRzZWxlY3QvcG8vY2EucG8gICAgICAgIHwgIDM0MCArKystLS0KKyBkc2VsZWN0L3BvL2NzLnBvICAgICAgICB8ICAzNDAgKysrLS0tCisgZHNlbGVjdC9wby9kYS5wbyAgICAgICAgfCAgMzQwICsrKy0tLQorIGRzZWxlY3QvcG8vZGUucG8gICAgICAgIHwgIDM0MCArKystLS0KKyBkc2VsZWN0L3BvL2RzZWxlY3QucG90ICB8ICAzMjcgKystLS0KKyBkc2VsZWN0L3BvL2VsLnBvICAgICAgICB8ICAzNDAgKysrLS0tCisgZHNlbGVjdC9wby9lcy5wbyAgICAgICAgfCAgMzQwICsrKy0tLQorIGRzZWxlY3QvcG8vZXQucG8gICAgICAgIHwgIDMzNCArKystLS0KKyBkc2VsZWN0L3BvL2V1LnBvICAgICAgICB8ICAzNDAgKysrLS0tCisgZHNlbGVjdC9wby9mci5wbyAgICAgICAgfCAgMzQwICsrKy0tLQorIGRzZWxlY3QvcG8vZ2wucG8gICAgICAgIHwgIDM0MCArKystLS0KKyBkc2VsZWN0L3BvL2h1LnBvICAgICAgICB8ICAzMzQgKysrLS0tCisgZHNlbGVjdC9wby9pZC5wbyAgICAgICAgfCAgMzQwICsrKy0tLQorIGRzZWxlY3QvcG8vaXQucG8gICAgICAgIHwgIDM0MCArKystLS0KKyBkc2VsZWN0L3BvL2phLnBvICAgICAgICB8ICAzNDAgKysrLS0tCisgZHNlbGVjdC9wby9rby5wbyAgICAgICAgfCAgMzQwICsrKy0tLQorIGRzZWxlY3QvcG8vbmIucG8gICAgICAgIHwgIDM0MCArKystLS0KKyBkc2VsZWN0L3BvL25sLnBvICAgICAgICB8ICAzNDAgKysrLS0tCisgZHNlbGVjdC9wby9ubi5wbyAgICAgICAgfCAgMzQwICsrKy0tLQorIGRzZWxlY3QvcG8vcGwucG8gICAgICAgIHwgIDM0MCArKystLS0KKyBkc2VsZWN0L3BvL3B0LnBvICAgICAgICB8ICAzNDAgKysrLS0tCisgZHNlbGVjdC9wby9wdF9CUi5wbyAgICAgfCAgMzQwICsrKy0tLQorIGRzZWxlY3QvcG8vcm8ucG8gICAgICAgIHwgIDM0MCArKystLS0KKyBkc2VsZWN0L3BvL3J1LnBvICAgICAgICB8ICAzNDIgKysrLS0tCisgZHNlbGVjdC9wby9zay5wbyAgICAgICAgfCAgMzQwICsrKy0tLQorIGRzZWxlY3QvcG8vc3YucG8gICAgICAgIHwgIDM0MCArKystLS0KKyBkc2VsZWN0L3BvL3RsLnBvICAgICAgICB8ICAzNDAgKysrLS0tCisgZHNlbGVjdC9wby92aS5wbyAgICAgICAgfCAgMzQwICsrKy0tLQorIGRzZWxlY3QvcG8vemhfQ04ucG8gICAgIHwgIDM0MCArKystLS0KKyBkc2VsZWN0L3BvL3poX1RXLnBvICAgICB8ICAzNDAgKysrLS0tCisgbWFuL3BvL2Rwa2ctbWFuLnBvdCAgICAgfCAgOTM4ICsrKysrKysrKystLS0KKyBtYW4vcG8vZXMucG8gICAgICAgICAgICB8IDEyMzIgKysrKysrKysrKysrKy0tLS0KKyBtYW4vcG8vZnIucG8gICAgICAgICAgICB8IDEyMzYgKysrKysrKysrKysrKy0tLS0KKyBtYW4vcG8vaHUucG8gICAgICAgICAgICB8IDExMjUgKysrKysrKysrKysrLS0tLQorIG1hbi9wby9qYS5wbyAgICAgICAgICAgIHwgMTEzNiArKysrKysrKysrKystLS0tCisgbWFuL3BvL3BsLnBvICAgICAgICAgICAgfCAxMjMyICsrKysrKysrKysrKystLS0tCisgbWFuL3BvL3B0X0JSLnBvICAgICAgICAgfCAxMDU4ICsrKysrKysrKysrLS0tLQorIG1hbi9wby9ydS5wbyAgICAgICAgICAgIHwgMTEyNiArKysrKysrKysrKystLS0tCisgbWFuL3BvL3N2LnBvICAgICAgICAgICAgfCAxMjM0ICsrKysrKysrKysrKystLS0tCisgcG8vYXN0LnBvICAgICAgICAgICAgICAgfCAzNDM1ICsrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9icy5wbyAgICAgICAgICAgICAgICB8IDI3NTAgKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2NhLnBvICAgICAgICAgICAgICAgIHwgMzQ3MyArKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vY3MucG8gICAgICAgICAgICAgICAgfCAzNDEwICsrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2RhLnBvICAgICAgICAgICAgICAgIHwgMzQ5NiArKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vZGUucG8gICAgICAgICAgICAgICAgfCAgNjQ0ICsrKysrLS0tLS0KKyBwby9kcGtnLnBvdCAgICAgICAgICAgICB8IDI3NDIgKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2R6LnBvICAgICAgICAgICAgICAgIHwgMzI2MiArKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vZWwucG8gICAgICAgICAgICAgICAgfCAzMzg1ICsrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2VvLnBvICAgICAgICAgICAgICAgIHwgMzQzMiArKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vZXMucG8gICAgICAgICAgICAgICAgfCAzNTE3ICsrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vZXQucG8gICAgICAgICAgICAgICAgfCAyODk0ICsrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2V1LnBvICAgICAgICAgICAgICAgIHwgMzQ0MiArKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vZnIucG8gICAgICAgICAgICAgICAgfCAzNDk0ICsrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9nbC5wbyAgICAgICAgICAgICAgICB8IDMzNzQgKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vaHUucG8gICAgICAgICAgICAgICAgfCAzMjA4ICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9pZC5wbyAgICAgICAgICAgICAgICB8IDM0MTQgKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vaXQucG8gICAgICAgICAgICAgICAgfCAzNDg5ICsrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9qYS5wbyAgICAgICAgICAgICAgICB8IDM0MzkgKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2ttLnBvICAgICAgICAgICAgICAgIHwgMzIxMiArKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8va28ucG8gICAgICAgICAgICAgICAgfCAzNDYxICsrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9rdS5wbyAgICAgICAgICAgICAgICB8IDI4MTAgKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9sdC5wbyAgICAgICAgICAgICAgICB8IDMwMjUgKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL21yLnBvICAgICAgICAgICAgICAgIHwgMzIxNiArKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vbmIucG8gICAgICAgICAgICAgICAgfCAzNDEzICsrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL25lLnBvICAgICAgICAgICAgICAgIHwgMzIyMSArKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vbmwucG8gICAgICAgICAgICAgICAgfCAzMzY1ICsrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL25uLnBvICAgICAgICAgICAgICAgIHwgMzE2OSArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9wYS5wbyAgICAgICAgICAgICAgICB8IDMwMjEgKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9wbC5wbyAgICAgICAgICAgICAgICB8IDMzNzEgKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vcHQucG8gICAgICAgICAgICAgICAgfCAzNDYzICsrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9wdF9CUi5wbyAgICAgICAgICAgICB8IDMzNzggKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vcm8ucG8gICAgICAgICAgICAgICAgfCAzNTM4ICsrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vcnUucG8gICAgICAgICAgICAgICAgfCAzNDUzICsrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9zay5wbyAgICAgICAgICAgICAgICB8IDM0MzAgKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL3N2LnBvICAgICAgICAgICAgICAgIHwgMzQyMSArKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby90aC5wbyAgICAgICAgICAgICAgICB8IDMzODcgKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vdGwucG8gICAgICAgICAgICAgICAgfCAzMjE2ICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby92aS5wbyAgICAgICAgICAgICAgICB8IDM0NzkgKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL3poX0NOLnBvICAgICAgICAgICAgIHwgMzM4NCArKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby96aF9UVy5wbyAgICAgICAgICAgICB8IDMzMDMgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBzY3JpcHRzL3BvL2NhLnBvICAgICAgICB8ICA0NDUgKysrLS0tCisgc2NyaXB0cy9wby9kZS5wbyAgICAgICAgfCAgMzIzICsrKy0tLQorIHNjcmlwdHMvcG8vZHBrZy1kZXYucG90IHwgIDQzMyArKystLS0KKyBzY3JpcHRzL3BvL2VzLnBvICAgICAgICB8ICA0NzkgKysrKy0tLQorIHNjcmlwdHMvcG8vZnIucG8gICAgICAgIHwgIDQ4MyArKysrLS0tCisgc2NyaXB0cy9wby9wbC5wbyAgICAgICAgfCAgNDc2ICsrKystLS0KKyBzY3JpcHRzL3BvL3J1LnBvICAgICAgICB8ICA0NzAgKysrKy0tLQorIHNjcmlwdHMvcG8vc3YucG8gICAgICAgIHwgIDQ3MSArKysrLS0tCisgODkgZmlsZXMgY2hhbmdlZCwgODk2NTYgaW5zZXJ0aW9ucygrKSwgNjc3NzkgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBkNWM1ZDhmODY1MWViMmNjZGI2MTg0N2UyYmQwMThmODBmY2Q4NGNiCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIE1hciA2IDEwOjQ0OjIyIDIwMTEgKzAxMDAKKworICAgIGRwa2ctc291cmNlOiByZW1vdmUgcXVpbHQncyAucGMgZGlyZWN0b3J5IHdoZW4gLS11bmFwcGx5LXBhdGNoZXMgaXMgaW4gdXNlCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAyICsrCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtIHwgICAgMiArLQorIDIgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgMzRkOTIyZWVmMWVjZjAzZmJjY2MzYjAyMmZkYmU1OGE4MTc5MmJlNgorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBNYXIgNiAxMDowODo0MyAyMDExICswMTAwCisKKyAgICBEbyBub3QgcHJpbnQgd2FybmluZ3MgcmVzdWx0aW5nIGZyb20gdGhlIGF1dG9wYXRjaCBhbmFseXNpcworICAgIAorICAgIENvbGluJ3MgY2hhbmdlIGluIDQwZGNmMjQ2MzI2ODRlYzcyNjIxMGRkNDQzN2ZkZWRiZGJlNjEzNGUgbWVhbnQgdGhhdCB0aGUKKyAgICBhdXRvcGF0Y2ggaXMgcGFyc2VkIHdoaWxlIGl0J3MgYWxyZWFkeSBhcHBsaWVkIGFuZCB0aGlzIGNhbiB0cmlnZ2VyIHNvbWUKKyAgICB1bmR1ZSB3YXJuaW5ncy4KKyAgICAKKyAgICBUaGlzIHBhdGNoIHNpbGVuY2VzIHRoZW0uIEFuZCBhbHNvIGRlYWxzIHdpdGggc2ltaWxhciBjYXNlcyB0aGF0IHdlcmUKKyAgICB1bm5vdGljZWQgdXAgdG8gbm93LgorCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtICAgICAgIHwgICAgNCArKy0tCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtIHwgICAgNCArKystCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbSAgICAgICAgICAgIHwgICAxNSArKysrKysrKysrLS0tLS0KKyAzIGZpbGVzIGNoYW5nZWQsIDE1IGluc2VydGlvbnMoKyksIDggZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyNTVlNzNlMTFkMTM2NWZiYjFlOGQ3ODI4N2ZhZDc1MWE4ZWJjNmU1CitBdXRob3I6IEpvbmF0aGFuIE5pZWRlciA8anJuaWVkZXJAZ21haWwuY29tPgorRGF0ZTogICBNb24gRmViIDE0IDA2OjM5OjAzIDIwMTEgLTA2MDAKKworICAgIGRwa2ctc291cmNlOiB1c2Ugc2VydmVyLXNpZGUgY2xvY2sgZm9yIHBhdGNoZWQgZmlsZSB0aW1lc3RhbXAgb24gTkZTCisgICAgCisgICAgU2luY2UgMS4xMy4xNH4yMCAoMjAwNi0wMi0xMCksIGRwa2ctc291cmNlIHRvdWNoZXMgdGhlIGZpbGVzIGl0CisgICAgcGF0Y2hlcyB3aGVuIHVucGFja2luZywgd2l0aCBhIHNpbmdsZSBkYXRlLiAgVGhpcyB3YXksIHRoZSBvcmRlciBvZgorICAgIG10aW1lcyBkb2VzIG5vdCBkZXBlbmQgb24gdGhlIG9yZGVyIGluIHdoaWNoIHRoZSBmaWxlcyB3ZXJlIHBhdGNoZWQsCisgICAgd2hpY2ggaXMgY29udmVuaWVudCB3aGVuIGUuZy4gY29uZmlndXJlLmluIGFuZCBjb25maWd1cmUgYXJlIHBhdGNoZWQuCisgICAgCisgICAgTW9yZSBwcmVjaXNlbHksIGRwa2ctc291cmNlIGRvZXMgc29tZXRoaW5nIGxpa2UgdGhlIGZvbGxvd2luZzoKKyAgICAKKyAgICAJbXkgJG5vdyA9IHRpbWUoKTsKKyAgICAJZm9yZWFjaCBteSAkZm4gKEBwYXRjaGVkX2ZpbGVzKSB7CisgICAgCQl1dGltZSgkbm93LCAkbm93LCAkZm4pOworICAgIAl9CisgICAgCisgICAgVW5mb3J0dW5hdGVseSB3aGVuIHRoZSBmaWxlc3lzdGVtIGlzIE5GUywgInRvdWNoIiBhbmQgbm9ybWFsCisgICAgbW9kaWZpY2F0aW9uIHNldCBtdGltZSBhbmQgYXRpbWUgdG8gdGhlIGN1cnJlbnQgdGltZSBvbiB0aGUgc2VydmVyCisgICAgc2lkZSwgd2hpbGUgdGltZSgpIHJldHVybnMgdGhlIGN1cnJlbnQgdGltZSBvbiB0aGUgY2xpZW50IHNpZGUuCisgICAgVGhlIHR3byBjbG9ja3MgY2FuIGRpc2FncmVlLCBwcm9kdWNpbmcgYnJlYWthZ2UuCisgICAgCisgICAgU28gdW5sZXNzIGEgdGltZXN0YW1wIGhhcyBiZWVuIHBhc3NlZCBleHBsaWNpdGx5LCB1c2UgdXRpbWUodW5kZWYsCisgICAgdW5kZWYsICRmbikgdG8gc2V0IG10aW1lIGZvciB0aGUgZmlyc3QgZmlsZSB0byB0aGUgc2VydmVyIHNpZGUgdGltZQorICAgIGFuZCBjb3B5IGl0IChyb3VuZGVkIGRvd24gdG8gYSBudW1iZXIgb2Ygc2Vjb25kcykgdG8gYWxsIHBhdGNoZWQKKyAgICBmaWxlcy4KKyAgICAKKyAgICBSZXBvcnRlZC1ieTogU3TDqXBoYW5lIEdsb25kdSA8Z2xvbmR1QGRlYmlhbi5vcmc+CisgICAgU2lnbmVkLW9mZi1ieTogSm9uYXRoYW4gTmllZGVyIDxqcm5pZWRlckBnbWFpbC5jb20+CisgICAgSW1wcm92ZWQtYnk6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KKyAgICBTaWduZWQtb2ZmLWJ5OiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA1ICsrKysrCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9GdW5jdGlvbnMucG0gICAgICAgIHwgICAyNiArKysrKysrKysrKysrKysrKysrKysrKysrLQorIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbSAgICAgICB8ICAgIDMgKy0tCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtICAgICAgIHwgICAgNiArKystLS0KKyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG0gfCAgICA4ICsrKystLS0tCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbSAgICAgICAgICAgIHwgICAgNyArKysrKy0tCisgNiBmaWxlcyBjaGFuZ2VkLCA0MyBpbnNlcnRpb25zKCspLCAxMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDQwZGNmMjQ2MzI2ODRlYzcyNjIxMGRkNDQzN2ZkZWRiZGJlNjEzNGUKK0F1dGhvcjogQ29saW4gV2F0c29uIDxjandhdHNvbkB1YnVudHUuY29tPgorRGF0ZTogICBNb24gRGVjIDYgMDk6NDI6MTcgMjAxMCArMDAwMAorCisgICAgZHBrZy1zb3VyY2U6IGtlZXAgZmlsZSBvcmRlciBzdGFibGUgd2hlbiByZWdlbmVyYXRpbmcgYXV0b3BhdGNoZXMuCisgICAgCisgICAgU2lnbmVkLW9mZi1ieTogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICAgICAgIHwgICAgMyArCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtIHwgICAgMyArLQorIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG0gICAgICB8ICAgODIgKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tCisgMyBmaWxlcyBjaGFuZ2VkLCA2MiBpbnNlcnRpb25zKCspLCAyNiBkZWxldGlvbnMoLSkKKworY29tbWl0IDQyMjVkYTY3MTc5Y2FlMmJlNDRhNzZkM2MzN2M2Yzg1OWM4NjU5YzUKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgTWFyIDUgMDk6NTI6NDkgMjAxMSArMDEwMAorCisgICAgRml4IGVuZ2xpc2ggbWlzdGFrZSBjYXRjaGVkIGJ5IGxpbnRpYW4KKworIG1hbi9kcGtnLWdlbnN5bWJvbHMuMSB8ICAgIDIgKy0KKyBtYW4vcG8vZGUucG8gICAgICAgICAgfCAgICAyICstCisgbWFuL3BvL2VzLnBvICAgICAgICAgIHwgICAgMiArLQorIG1hbi9wby9mci5wbyAgICAgICAgICB8ICAgIDIgKy0KKyBtYW4vcG8vaHUucG8gICAgICAgICAgfCAgICAyICstCisgbWFuL3BvL2phLnBvICAgICAgICAgIHwgICAgMiArLQorIG1hbi9wby9wbC5wbyAgICAgICAgICB8ICAgIDIgKy0KKyBtYW4vcG8vcHRfQlIucG8gICAgICAgfCAgICAyICstCisgbWFuL3BvL3J1LnBvICAgICAgICAgIHwgICAgMiArLQorIG1hbi9wby9zdi5wbyAgICAgICAgICB8ICAgIDIgKy0KKyAxMCBmaWxlcyBjaGFuZ2VkLCAxMCBpbnNlcnRpb25zKCspLCAxMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDk0YmY5NjZmMDRhNmM0YjI2MjU0NGY0Y2Y2Zjg0NDIzNzljODIxZDEKK0F1dGhvcjogTWFydGluIERvcmV5IDxtZG9yZXlAYmx1ZWFyYy5jb20+CitEYXRlOiAgIFNhdCBNYXIgNSAwOTo0NDowMCAyMDExICswMTAwCisKKyAgICBGaXggT3RvTCgpIHRvIGFjY3VtdWxhdGUgZGF0YSBpbiBhIGxvbmcgaW5zdGVhZCBvZiBhbiBpbnQKKyAgICAKKyAgICBPbiA2NC1iaXQgYXJjaGl0ZWN0dXJlcyB3aGVyZSB0aGUgbG9uZyBpcyBiaWdnZXIgdGhhbiB0aGUgaW50LCBpdCBtYWtlcworICAgIGl0IHBvc3NpYmxlIHRvIGhhdmUgZmlsZXMgYmlnZ2VyIHRoYW4gMkdCLgorICAgIAorICAgIFJldmlld2VkLWJ5OiBKb25hdGhhbiBOaWVkZXIgPGpybmllZGVyQGdtYWlsLmNvbT4KKyAgICBTaWduZWQtb2ZmLWJ5OiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMiArKworIGxpYi9kcGtnL3RhcmZuLmMgfCAgICAyICstCisgMiBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA5MDhmZGEwYjEwM2Y3ODQzOTkyYjdlYzg2MDk0NDdkMWVmZGQxMWI5CitBdXRob3I6IEhlbGdlIEtyZXV0em1hbm4gPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorRGF0ZTogICBGcmkgTWFyIDQgMTM6MzA6MDAgMjAxMSArMDEwMAorCisgICAgVXBkYXRlIEdlcm1hbiB0cmFuc2xhdGlvbiBvZiBtYW51YWwgcGFnZXMKKyAgICAKKyAgICBVcGRhdGUgdG8gMjAwNHQwZjB1LgorCisgbWFuL3BvL2RlLnBvIHwgICA2OCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDM2IGluc2VydGlvbnMoKyksIDMyIGRlbGV0aW9ucygtKQorCitjb21taXQgNWFhYzY1NTNhN2Y0MGM3M2RhMDQ2MzAxYmY5NjE3NWI5OThmOTIyMQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBNYXIgNCAwMzozNzowNSAyMDExICswMTAwCisKKyAgICBkcGtnOiBDYWxsIGdldHRleHQoKSBvbiBmb3JjZSBvcHRpb24gZGVzY3JpcHRpb24gcHJpbnRpbmcKKyAgICAKKyAgICBSZWdyZXNzaW9uIGludHJvZHVjZWQgaW4gY29tbWl0IDk3MjA1YzFiYWIyZDVmZDE4ZTlkZDMzZjUzMjlkYjIwOWI4NjY2MzQuCisKKyBzcmMvbWFpbi5jIHwgICAgMyArKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDdmYmI2Yjk4YTczYzhiNWZiYmJkOWEyNzViZjY2ODU2MjVhZTQ4N2MKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgTWFyIDQgMDI6NTI6MzggMjAxMSArMDEwMAorCisgICAgbWFuOiBBZGQgbWlzc2luZyBxdW90ZXMgYW5kIGVzY2FwaW5nCisKKyBtYW4vZHBrZy1zaGxpYmRlcHMuMSAgICAgIHwgICAxMCArKysrKy0tLS0tCisgbWFuL2Rwa2ctc291cmNlLjEgICAgICAgICB8ICAgIDQgKystLQorIG1hbi9zdGFydC1zdG9wLWRhZW1vbi44ICAgfCAgICA2ICsrKy0tLQorIG1hbi91cGRhdGUtYWx0ZXJuYXRpdmVzLjggfCAgICA0ICsrLS0KKyA0IGZpbGVzIGNoYW5nZWQsIDEyIGluc2VydGlvbnMoKyksIDEyIGRlbGV0aW9ucygtKQorCitjb21taXQgN2E4NmU0MjMxNzUwYTczYjM3ZjdhZmE4ZDFjODk0NDU3NGQ5YzdmYworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBNYXIgMyAxODo0MTo1OCAyMDExICswMTAwCisKKyAgICBkcGtnLXF1ZXJ5OiBEb2N1bWVudCB0aGF0IC0tbGlzdCBhbmQgLS1zaG93IGFyZ3VtZW50cyBhcmUgb3B0aW9uYWwKKyAgICAKKyAgICBEbyB0aGF0IGluIHRoZSAtLWhlbHAgb3V0cHV0IGFuZCBpbiB0aGUgbWFuIHBhZ2UuCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMiArKworIG1hbi9kcGtnLXF1ZXJ5LjEgfCAgICA0ICsrLS0KKyBzcmMvcXVlcnljbWQuYyAgIHwgICAgMiArLQorIDMgZmlsZXMgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQorCitjb21taXQgNDdhN2QzMzhjNzdiMzZjOTJmYmZkZWI2ZGNkN2QyNzVkZWQ5NGY1NgorQXV0aG9yOiBIZWxnZSBLcmV1dHptYW5uIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KK0RhdGU6ICAgVGh1IE1hciAzIDE3OjU2OjMxIDIwMTEgKzAxMDAKKworICAgIFVwZGF0ZSBHZXJtYW4gdHJhbnNsYXRpb24gb2YgbWFudWFsIHBhZ2VzCisgICAgCisgICAgVXBkYXRlIHRvIDIwMDZ0MGYwdS4KKworIG1hbi9wby9kZS5wbyB8ICAgNTAgKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDI1IGluc2VydGlvbnMoKyksIDI1IGRlbGV0aW9ucygtKQorCitjb21taXQgYmQ4ZGRiMmZjYWQ1MjIzNmI1ODQ0NTMxNTgzZTdhM2QxYjE2OTI1OQorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBNYXIgMiAxMjozMjozOCAyMDExICswMTAwCisKKyAgICBkcGtnLXNobGliZGVwczogaW1wcm92ZSBwYXJzaW5nIG9mIG91dHB1dCBvZiBkcGtnIC0tc2VhcmNoCisgICAgCisgICAgVGhlIHJldHVybmVkIHBhY2thZ2UgbmFtZXMgY2FuIGluY2x1ZGUgIjoiIHdpdGggZm9yZWlnbiBwYWNrYWdlcy4KKyAgICBNb2RpZnkgdGhlIHJlZ2V4IHRvIGFsbG93IHRoaXMgYnV0IGFsc28gdGlnaHRlbiBpdCB0byBtYXRjaCBvbmx5CisgICAgY2hhcmFjdGVycyBhbGxvd2VkIGluIHBhY2thZ2UgbmFtZXMgKHBsdXMgIiwgIiB1c2VkIGFzIHNlcGFyYXRvcikuCisgICAgCisgICAgQW5kIGFuY2hvciB0aGUgbWF0Y2ggb24gdGhlIGZpbGVuYW1lIHdpdGggdGhlIGluaXRpYWwgIi8iIGFzCisgICAgYSBzYWZldHkgbWVhc3VyZS4KKyAgICAKKyAgICBTcG9uc29yZWQtYnk6IExpbmFybyBMaW1pdGVkCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgIHwgICAgMSArCisgc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbCB8ICAgIDIgKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDMwNWQ4MDkwY2FmOTBlMTZhOTYzY2ZiOTYyZWE3OGZhMTg1YjU4NDkKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgTWFyIDIgMTI6MTg6MzIgMjAxMSArMDEwMAorCisgICAgZHBrZy1zaGxpYmRlcHM6IHVzZSBnZXRfY29udHJvbF9wYXRoKCkKKyAgICAKKyAgICBEbyBub3QgaGFyZGNvZGUgdGhlIGxvY2F0aW9uIG9mIHNobGlicy9zeW1ib2xzIGZpbGVzLiBUaGV5IGFyZSB1bmRlciB0aGUKKyAgICBjb250cm9sIG9mIGRwa2cuIEJ5IHVzaW5nIGRwa2ctcXVlcnkgLS1jb250cm9sLXBhdGggd2UgZW5zdXJlIHRoYXQgd2UKKyAgICBhbHdheXMgdXNlIHRoZSBjb3JyZWN0IGxvY2F0aW9uLgorICAgIAorICAgIFNwb25zb3JlZC1ieTogTGluYXJvIExpbWl0ZWQKKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgfCAgICAyICsrCisgbWFuL2Rwa2ctc2hsaWJkZXBzLjEgICAgICB8ICAgIDggKysrKy0tLS0KKyBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsIHwgICAxMSArKysrKysrLS0tLQorIDMgZmlsZXMgY2hhbmdlZCwgMTMgaW5zZXJ0aW9ucygrKSwgOCBkZWxldGlvbnMoLSkKKworY29tbWl0IDAwYWU0NmZhMjA4MTk0ZmViMzZiZGNlZDkwN2VjOGI3YThkNjJmM2YKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgTWFyIDIgMTI6MTM6MzggMjAxMSArMDEwMAorCisgICAgRHBrZzo6UGF0aDo6Z2V0X2NvbnRyb2xfcGF0aCgpOiB3cmFwcGVyIGFyb3VuZCBkcGtnLXF1ZXJ5IC0tY29udHJvbC1wYXRoCisgICAgCisgICAgU3BvbnNvcmVkLWJ5OiBMaW5hcm8gTGltaXRlZAorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgfCAgICAyICsrCisgc2NyaXB0cy9EcGtnL1BhdGgucG0gfCAgIDM2ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLQorIDIgZmlsZXMgY2hhbmdlZCwgMzUgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworY29tbWl0IDg3M2MwZDdkNzE3YWU5N2VhM2NjNDMwOWMxZGY2OTkzMTM3YjNlMjEKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgTWFyIDIgMDY6MDY6MzMgMjAxMSArMDEwMAorCisgICAgZHBrZzogUGFzcyBjb3JyZWN0IERQS0dfQURNSU5ESVIgdG8gbWFpbnRhaW5lciBzY3JpcHRzIHdpdGggLS1yb290CisgICAgCisgICAgV2hlbiBwYXNzaW5nIHRoZSBEUEtHX0FETUlORElSIGVudmlyb25tZW50IHZhcmlhYmxlIHRvIHRoZSBtYWludGFpbmVyCisgICAgc2NyaXB0cyB3ZSBuZWVkIHRvIHRyaW0gdGhlIGluc3RhbGxhdGlvbiBkaXJlY3RvcnkgbmFtZSBmcm9tIGFkbWluZGlyLAorICAgIG90aGVyd2lzZSB0aGUgZGlyZWN0b3J5IHdvbid0IGJlIGZvdW5kLgorICAgIAorICAgIFJlZ3Jlc3Npb24gaW50cm9kdWNlZCBpbiBjb21taXQgZTYzZTFmYTRhNGFmZGY5ODg0N2YxM2YyNTA2YTBhZWVhNjhjMzNjNy4KKyAgICAKKyAgICBCYXNlZC1vbi1wYXRjaC1ieTogU3RldmUgTGFuZ2FzZWsgPHN0ZXZlLmxhbmdhc2VrQGxpbmFyby5vcmc+CisgICAgSW1wcm92ZWQtYnk6IEpvbmF0aGFuIE5pZWRlciA8anJuaWVkZXJAZ21haWwuY29tPgorCisgc3JjL2hlbHAuYyB8ICAgMTEgKysrKysrLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDYgaW5zZXJ0aW9ucygrKSwgNSBkZWxldGlvbnMoLSkKKworY29tbWl0IDhmYzk3YmM5NGMwOGY0ZGEyZjE4YzNmNGFhNDNkYjE0OGJkOGY2ZTIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgTWFyIDIgMDE6Mzc6MjggMjAxMSArMDEwMAorCisgICAgZHBrZy1kaXZlcnQ6IEhvbm91ciAtLWxvY2FsIHdoZW4gRFBLR19NQUlOVFNDUklQVF9QQUNLQUdFIGlzIHByZXNlbnQKKyAgICAKKyAgICBSZWdyZXNzaW9uIGludHJvZHVjZWQgaW4gY29tbWl0IGRjOTgyNjE5ODA3NjdmMjU4MDQ2ZjhhNGMyZTAyMGZjZGM5MmM4YjYtCisgICAgCisgICAgUmVwb3J0ZWQtYnk6IE1hcnRpbiBQaXR0IDxtYXJ0aW4ucGl0dEB1YnVudHUuY29tPgorICAgIFN1Z2dlc3RlZC1ieTogQ29saW4gV2F0c29uIDxjandhdHNvbkB1YnVudHUuY29tPgorCisgc3JjL2RpdmVydGNtZC5jIHwgICAgMiArLQorIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgNTk4ZDYwNTIwMjQxM2FmZmI3NDlhOTZiYWI4YTM5ZDYwZTY5MDJmZgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBGZWIgMjcgMDk6MTk6MjAgMjAxMSArMDEwMAorCisgICAgZHBrZzogUmVmYWN0b3IgaW5mb2RiIHVwZGF0ZSBvbiB1bnBhY2sgaW50byBuZXcgcGtnX2luZm9kYl91cGRhdGUoKQorCisgc3JjL3Byb2Nlc3NhcmMuYyB8ICAxNjQgKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDkwIGluc2VydGlvbnMoKyksIDc0IGRlbGV0aW9ucygtKQorCitjb21taXQgYTJhY2QxN2QzYzVhNjk4MGNmNDUxNmY2ZjVjNWY5M2U2NzgzMjg4MgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBGZWIgMjYgMTc6MTI6MDggMjAxMSArMDEwMAorCisgICAgZHBrZzogUmVmYWN0b3IgaW5mb2RiIGRpcmVjdG9yeSB0cmF2ZXJzYWwgaW50byBuZXcgcGtnX2luZm9kYl9mb3JlYWNoKCkKKyAgICAKKyAgICBNb3ZlIHRoZSBjb21tb24gY29kZSBpbnRvIGEgbmV3IGZ1bmN0aW9uIHdoaWNoIHdpbGwgY2FsbCBhbiBhY3Rpb24KKyAgICBwb2ludGVyIGZ1bmN0aW9uIG9uIG1hdGNoZWQgZmlsZXMgdG8gcGVyZm9ybSB0aGUgc3BlY2lmaWMgbG9naWMuCisKKyBzcmMvTWFrZWZpbGUuYW0gIHwgICAgMSArCisgc3JjL2luZm9kYi5jICAgICB8ICAgNTYgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKworIHNyYy9pbmZvZGIuaCAgICAgfCAgICA0ICsrKworIHNyYy9wcm9jZXNzYXJjLmMgfCAgIDYxICsrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgc3JjL3F1ZXJ5Y21kLmMgICB8ICAgNTIgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgc3JjL3JlbW92ZS5jICAgICB8ICAgMjkgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDYgZmlsZXMgY2hhbmdlZCwgNjkgaW5zZXJ0aW9ucygrKSwgMTM0IGRlbGV0aW9ucygtKQorCitjb21taXQgZmM4YjZlY2YwNWU2ZDRiYzY2ZTAzNmYyNzVkYWEzMDRhZGE2Njk2ZQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBGZWIgMjYgMTg6MDI6MDUgMjAxMSArMDEwMAorCisgICAgZHBrZzogUmVmYWN0b3Igc3BlY2lmaWMgaW5mb2RiIHRyYXZlcnNhbCBsb2dpYyBpbnRvIHRoZWlyIG93biBmdW5jdGlvbnMKKyAgICAKKyAgICBUaGlzIHdpbGwgYWxsb3cgZnVydGhlciByZWZhY3RvcmluZyBub3cgdGhhdCB0aGUgaW5mb2RiIHRyYXZlcnNhbCBjb2RlCisgICAgaXMgdGhlIHNhbWUgZXZleXJ3aGVyZS4KKworIHNyYy9wcm9jZXNzYXJjLmMgfCAgIDU1ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tCisgc3JjL3F1ZXJ5Y21kLmMgICB8ICAgMzUgKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tCisgc3JjL3JlbW92ZS5jICAgICB8ICAgMjggKysrKysrKysrKysrKysrKysrLS0tLS0tLS0KKyAzIGZpbGVzIGNoYW5nZWQsIDc2IGluc2VydGlvbnMoKyksIDQyIGRlbGV0aW9ucygtKQorCitjb21taXQgZWNkODg2ZGE2MzkwZjljMTBiOGEzNmQyNzMyM2YwYmM1NzBlOTdmMworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBNYXIgMiAwNjozMzowNiAyMDExICswMTAwCisKKyAgICBkcGtnOiBSZWZhY3RvciBtYXRjaF9ub2RlIGFsbG9jYXRpb24gaW50byBuZXcgbWF0Y2hfbm9kZV9uZXcoKQorCisgc3JjL3Byb2Nlc3NhcmMuYyB8ICAgMTkgKysrKysrKysrKysrKystLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMTQgaW5zZXJ0aW9ucygrKSwgNSBkZWxldGlvbnMoLSkKKworY29tbWl0IDdhNzlmNWExZmFmYTAwNDNlNTU1Y2FkNGYyZDBlZDZkNWMzMDk4ZDQKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgRmViIDI2IDE3OjU4OjA3IDIwMTEgKzAxMDAKKworICAgIGRwa2c6IFJlZmFjdG9yIG1hdGNoX25vZGUgZGVhbGxvY2F0aW9uIGludG8gbmV3IG1hdGNoX25vZGVfZnJlZSgpCisKKyBzcmMvcHJvY2Vzc2FyYy5jIHwgICAxMiArKysrKysrKystLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDkgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworY29tbWl0IDA3MGRjOTRjZmNhMTIyYWJhNWI2ODJkYjkwMjkyYTY1MjUxMTkyNzIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgRmViIDI2IDE3OjA5OjE4IDIwMTEgKzAxMDAKKworICAgIGRwa2c6IFN3aXRjaCB0aGUgcmVuYW1lX2xpc3QgbG9naWMgdG8gbWF0Y2hfbm9kZQorICAgIAorICAgIEluc3RlYWQgb2YgZGlyZWN0bHkgcHJlcGFyaW5nIHRoZSBhcmd1bWVudHMgb24gdHJhdmVyc2FsLCBzdG9yZSB0aGUKKyAgICBpbmZvcm1hdGlvbiBvZiB0aGUgbWF0Y2hlZCBmaWxlcywgd2hpY2ggd2UnbGwgYmUgYWN0aW5nIG9uIGxhdGVyIGluCisgICAgdGhlIGNvZGUuIFRoaXMgd2lsbCBhbGxvdyBmb3IgZnVydGhlciByZWZhY3RvcmluZy4KKworIHNyYy9wcm9jZXNzYXJjLmMgfCAgIDUxICsrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMjcgaW5zZXJ0aW9ucygrKSwgMjQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA5ZjdmMmE5NTgzMjFkNDE3MjVjMGFlN2Y0NmM0MzRmZTRjYmYzYzZhCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEZlYiAyNSAwMDoyMTo0NiAyMDExICswMTAwCisKKyAgICBkcGtnOiBSZWZhY3RvciBpbmZvZGIgZmlsZSBleGlzdGVuY2UgY2hlY2sgaW50byBuZXcgcGtnX2luZm9kYl9oYXNfZmlsZSgpCisKKyBzcmMvTWFrZWZpbGUuYW0gfCAgICAxICsKKyBzcmMvZGVwY29uLmMgICAgfCAgIDEwICsrKy0tLS0tLS0KKyBzcmMvaW5mb2RiLmMgICAgfCAgIDUwICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCisgc3JjL2luZm9kYi5oICAgIHwgICAzMCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKKyBzcmMvcmVtb3ZlLmMgICAgfCAgIDE4ICsrLS0tLS0tLS0tLS0tLS0tLQorIDUgZmlsZXMgY2hhbmdlZCwgODYgaW5zZXJ0aW9ucygrKSwgMjMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBhZTM1MDA1ODVjZTU5ODMzZTdiMzA5NGUxNjE1ZmEyNzNkN2I4NTI3CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IEZlYiAyNiAxNzo0NzowMCAyMDExICswMTAwCisKKyAgICBsaWJkcGtnOiBNYWtlIGRpcl9zeW5jKCkgcHJpdmF0ZQorCisgbGliL2Rwa2cvZGlyLmMgICAgICAgICAgICB8ICAgIDIgKy0KKyBsaWIvZHBrZy9kaXIuaCAgICAgICAgICAgIHwgICAgMSAtCisgbGliL2Rwa2cvbGliZHBrZy5WZXJzaW9ucyB8ICAgIDEgLQorIDMgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQorCitjb21taXQgZWQyNTA5NTVmZjQ1Nzc4ZjA4MzA5MWQzYmY3OGNmMTcyYzNhMzVhZAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBGZWIgMjYgMTc6NDU6NDEgMjAxMSArMDEwMAorCisgICAgZHBrZzogU3luYyBhbmQgcHJpbnQgdGhlIGNvcnJlY3QgaW5mbyBkYXRhYmFzZSBkaXJlY3RvcnkKKyAgICAKKyAgICBPbiB1bnBhY2sgc3luYyB0aGUgaW5mbyBkYXRhYmFzZSBkaXJlY3RvcnkgaW5zdGVhZCBvZiB0aGUgdGVtcG9yYXJ5CisgICAgY29udHJvbCBpbmZvcm1hdGlvbiBkaXJlY3RvcnksIGFuZCBwcmludCB0aGUgY29ycmVjdCBwYXRobmFtZSBvbgorICAgIGVycm9yIGluc3RlYWQgb2YgdGhlIGxhc3QgZmlsZSBhY3RlZCBvbiB0aGF0IGRpcmVjdG9yeS4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAzICsrKworIHNyYy9wcm9jZXNzYXJjLmMgfCAgIDEyICsrKystLS0tLS0tLQorIHNyYy9yZW1vdmUuYyAgICAgfCAgICA2ICsrLS0tLQorIDMgZmlsZXMgY2hhbmdlZCwgOSBpbnNlcnRpb25zKCspLCAxMiBkZWxldGlvbnMoLSkKKworY29tbWl0IGQ3MjAyMmIxZDNiYmZlOTg3MWRhYjI4ZDJkYjZkZWQ3YTI2ODEzMmUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgRmViIDI2IDE3OjUyOjQ3IDIwMTEgKzAxMDAKKworICAgIHMtcy1kOiBEbyBub3QgdW5uZWVkaW5nbHkgZnN5bmMoKSB0aGUgcGlkIGZpbGUKKyAgICAKKyAgICBUaGUgcGlkIGZpbGUgaXMgYSBydW4tdGltZSByZXNvdXJjZSwgd2hpY2ggd2lsbCBub3QgYmUgdmFsaWQgb24gcmVib290CisgICAgYW55d2F5LiBUaGVyZSdzIG5vIG5lZWQgdG8gZ3VhcmFudGVlIGl0cyBkdXJhYmlsaXR5LiBCdXQgbm93IHRoYXQgd2UgYXJlCisgICAgbm90IGNoZWNraW5nIGZvciBlcnJvcnMgZnJvbSBmbHVzaGluZyB0aGUgc3RyZWFtLCBjaGVjayB0aGVtIGluc3RlYWQKKyAgICB3aGVuIGNsb3NpbmcgaXQsIHdoaWNoIHdlIHNob3VsZCBoYXZlIGJlZW4gZG9pbmcgYW55d2F5LgorCisgdXRpbHMvc3RhcnQtc3RvcC1kYWVtb24uYyB8ICAgIDcgKystLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCA1IGRlbGV0aW9ucygtKQorCitjb21taXQgYmY3YjcwMjNkNGU2N2E4MmM3MTgwNmNjNjVhNWQ4M2IwYTI1NDFmMAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBGZWIgMjQgMDE6Mjg6MjQgMjAxMSArMDEwMAorCisgICAgRml4IGRwa2cgbWFpbnRhaW5lciBzY3JpcHRzIHRvIGhvbm91ciBEUEtHX0FETUlORElSIGlmIHByZXNlbnQKKyAgICAKKyAgICBUaGlzIHdpbGwgYWxsb3cgdGhlIG1haW50YWluZXIgc2NyaXB0cyB0byB3b3JrIHByb3Blcmx5IGlmIC0tYWRtaW5kaXIKKyAgICBoYXMgYmVlbiBwYXNzZWQgdG8gZHBrZy4gRmFsbGJhY2sgdG8gdXNpbmcgdGhlIGRlZmF1bHQgYWRtaW5kaXIgaW4gY2FzZQorICAgIHdlIGFyZSBiZWluZyBjYWxsZWQgZnJvbSBhbiBvbGQgZHBrZyBub3Qgc2V0dGluZyB0aGUgZW52aXJvbm1lbnQKKyAgICB2YXJpYWJsZS4KKworIGRlYmlhbi9kcGtnLmxpbnRpYW4tb3ZlcnJpZGVzIHwgICAgNiArKystLS0KKyBkZWJpYW4vZHBrZy5wb3N0aW5zdCAgICAgICAgICB8ICAgIDIgKy0KKyBkZWJpYW4vZHBrZy5wcmVpbnN0ICAgICAgICAgICB8ICAgIDMgKystCisgMyBmaWxlcyBjaGFuZ2VkLCA2IGluc2VydGlvbnMoKyksIDUgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAwNzg3Mjg2YzFkNGJjMWQxMWU3NjcwNjQ3ZTYwYzdlZWMwNjc1ZmFjCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IEZlYiAyNCAwODo1MTo1OCAyMDExICswMTAwCisKKyAgICBsaWJkcGtnOiBSZW5hbWUgc3RyaW5nIHZhcmlhYmxlcyB0byBzdHJfc3RhcnQgYW5kIHN0cl9lbmQgaW4gcGFyc2VfbnZfbmV4dAorCisgbGliL2Rwa2cvZmllbGRzLmMgfCAgIDE2ICsrKysrKysrLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDggaW5zZXJ0aW9ucygrKSwgOCBkZWxldGlvbnMoLSkKKworY29tbWl0IDAxYjAzMDYyZGU3OTQ1YjEzNDUxMTVmNGQzMWU1MWE0ZDE4Y2NmYTAKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgRmViIDI0IDA4OjQ5OjAxIDIwMTEgKzAxMDAKKworICAgIFJlbmFtZSBuYW1ldmFsdWUgdmFyaWFibGVzIHRvIG52IGFuZCBudl9oZWFkCisKKyBsaWIvZHBrZy9maWVsZHMuYyB8ICAgMTIgKysrKysrLS0tLS0tCisgc3JjL3NlbGVjdC5jICAgICAgfCAgICA4ICsrKystLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAxMCBpbnNlcnRpb25zKCspLCAxMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDRmMzZkNjdhODM2ODdhN2VjZDEwMjkzYzllMGQ5MTkwNTA2NzJkNDMKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gRmViIDIwIDA1OjE5OjQxIDIwMTEgKzAxMDAKKworICAgIGxpYmRwa2c6IFJlZmFjdG9yIGNvbnZlcnRfc3RyaW5nIGludG8gcGFyc2VfbnZfbmV4dCBhbmQgcGFyc2VfbnZfbGFzdAorICAgIAorICAgIFRoaXMgY2xhcmlmaWVzIHRoZSBmdW5jdGlvbiBuYW1lIGFuZCBpdHMgdXNhZ2UgZnJvbSB0aGUgY2FsbCBzaXRlcywgYWxzbworICAgIGF2b2lkcyBwYXNzaW5nIHVubmVlZGVkIGFyZ3VtZW50cy4KKworIGxpYi9kcGtnL2ZpZWxkcy5jIHwgICA1NSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAzMyBpbnNlcnRpb25zKCspLCAyMiBkZWxldGlvbnMoLSkKKworY29tbWl0IGIzZjY2OTAzOWYxMjhkNzE1YWM3YWM3MWFiYWVhYzg2ZjA5NTQxMTIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gRmViIDIwIDAxOjQ2OjU5IDIwMTEgKzAxMDAKKworICAgIGxpYmRwa2c6IFN3aXRjaCBwcmlfb3RoZXIgdG8gYmUgYSBmYWxsYmFjayBuYW1ldmFsdWUKKworIGxpYi9kcGtnL2ZpZWxkcy5jICAgIHwgICAxNiArKysrKysrLS0tLS0tLS0tCisgbGliL2Rwa2cvcGFyc2VoZWxwLmMgfCAgICAyICstCisgMiBmaWxlcyBjaGFuZ2VkLCA4IGluc2VydGlvbnMoKyksIDEwIGRlbGV0aW9ucygtKQorCitjb21taXQgOTAyY2MxNWRjODY3OTc5NjZlYTA5ZjY2YjI2YTQzM2M3Yzg1YzY0ZgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBGZWIgMjAgMDE6NDU6MjIgMjAxMSArMDEwMAorCisgICAgbGliZHBrZzogQWRkIHN1cHBvcnQgZm9yIGZhbGxiYWNrIG5hbWV2YWx1ZXMKKyAgICAKKyAgICBUaGlzIHdpbGwgYWxsb3cgdG8gZGVzaWduYXRlIGEgbmFtZXZhbHVlIGVudHJ5IGFzIHRoZSBmYWxsYmFjayByZXR1cm4KKyAgICB2YWx1ZSBpbiBjYXNlIG5vbmUgb2YgdGhlIHJlc3QgZGlkIG1hdGNoLgorCisgbGliL2Rwa2cvbmFtZXZhbHVlLmMgfCAgIDEzICsrKysrKysrKy0tLS0KKyBsaWIvZHBrZy9uYW1ldmFsdWUuaCB8ICAgIDQgKysrLQorIDIgZmlsZXMgY2hhbmdlZCwgMTIgaW5zZXJ0aW9ucygrKSwgNSBkZWxldGlvbnMoLSkKKworY29tbWl0IDIxZTlhMmQzY2UyNGJlZTY2OGQxZDEwODc1MmM4ZDJmZDZkYzhmOGIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgRmViIDE5IDE5OjM0OjU2IDIwMTEgKzAxMDAKKworICAgIGxpYmRwa2c6IFVzZSBmb3JtYXQgcHJlY2lzaW9uIGluc3RlYWQgb2Ygc3RybmxlbigpIGluIGNvbnZlcnRfc3RyaW5nKCkKKworIGxpYi9kcGtnL2ZpZWxkcy5jIHwgICAgMyArLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IGYxYmNjZDQ3NjMzNDNkMDg5N2RiMzM2MTAyMmZlYzhhYjU0MTFhMzQKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgRmViIDI0IDEwOjE1OjQ3IDIwMTEgKzAxMDAKKworICAgIFVzZSB2YXJidWZfZW5kX3N0cigpIGluc3RlYWQgb2YgYWQtaG9jIHZhcmJ1Zl9hZGRfY2hhcigpIGNhbGxzCisgICAgCisgICAgVGhpcyBhbGxvd3MgdGhlIHN0cmluZ3MgdG8gYmUgdGVybWluYXRlZCwgdGh1cyBwcmludGFibGUgb3IgYWNjZXNzZWQKKyAgICB0aHJvdWdoIHRoZSBzdGFuZGFyZCBDIHN0cmluZyBmdW5jdGlvbnMsIGFuZCBhdCB0aGUgc2FtZSB0aW1lCisgICAgYXBwZW5kYWJsZS4KKworIGRwa2ctZGViL2luZm8uYyAgICAgICAgIHwgICAgMiArLQorIGRwa2ctc3BsaXQvc3BsaXQuYyAgICAgIHwgICAgMiArLQorIGxpYi9kcGtnL2RibW9kaWZ5LmMgICAgIHwgICAgMiArLQorIGxpYi9kcGtnL2R1bXAuYyAgICAgICAgIHwgICAgNCArKy0tCisgbGliL2Rwa2cvZmllbGRzLmMgICAgICAgfCAgICA2ICsrKy0tLQorIGxpYi9kcGtnL3BhcnNlLmMgICAgICAgIHwgICAgMiArLQorIGxpYi9kcGtnL3BhcnNlaGVscC5jICAgIHwgICAgMiArLQorIGxpYi9kcGtnL3BrZy1mb3JtYXQuYyAgIHwgICAgNCArKy0tCisgbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmwgfCAgICAyICstCisgbGliL2Rwa2cvdHJpZ2xpYi5jICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvdmFyYnVmLmggICAgICAgfCAgICAzICstLQorIHNyYy9hcmNoaXZlcy5jICAgICAgICAgIHwgICAyMCArKysrKysrKysrLS0tLS0tLS0tLQorIHNyYy9jb25maWd1cmUuYyAgICAgICAgIHwgICAxOCArKysrKysrKystLS0tLS0tLS0KKyBzcmMvZGVwY29uLmMgICAgICAgICAgICB8ICAgIDQgKystLQorIHNyYy9kaXZlcnRkYi5jICAgICAgICAgIHwgICAgMiArLQorIHNyYy9lbnF1aXJ5LmMgICAgICAgICAgIHwgICAgMiArLQorIHNyYy9maWxlc2RiLmMgICAgICAgICAgIHwgICAgMiArLQorIHNyYy9oZWxwLmMgICAgICAgICAgICAgIHwgICAgNCArKy0tCisgc3JjL21haW4uYyAgICAgICAgICAgICAgfCAgICA0ICsrLS0KKyBzcmMvcGFja2FnZXMuYyAgICAgICAgICB8ICAgIDQgKystLQorIHNyYy9wcm9jZXNzYXJjLmMgICAgICAgIHwgICAyMCArKysrKysrKysrLS0tLS0tLS0tLQorIHNyYy9xdWVyeWNtZC5jICAgICAgICAgIHwgICAgOCArKysrLS0tLQorIHNyYy9yZW1vdmUuYyAgICAgICAgICAgIHwgICAyMiArKysrKysrKysrKy0tLS0tLS0tLS0tCisgc3JjL3NlbGVjdC5jICAgICAgICAgICAgfCAgICA0ICsrLS0KKyBzcmMvc3RhdGRiLmMgICAgICAgICAgICB8ICAgIDIgKy0KKyBzcmMvdHJpZ3Byb2MuYyAgICAgICAgICB8ICAgIDIgKy0KKyBzcmMvdXBkYXRlLmMgICAgICAgICAgICB8ICAgIDIgKy0KKyAyNyBmaWxlcyBjaGFuZ2VkLCA3NSBpbnNlcnRpb25zKCspLCA3NiBkZWxldGlvbnMoLSkKKworY29tbWl0IDNhZTA5Zjk3NWQ5MTM4ZGUzYzUxMzU5ZWY5YmEwZDc3NzZhNGNjODYKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgRmViIDE5IDA5OjI4OjU1IDIwMTEgKzAxMDAKKworICAgIGxpYmRwa2c6IEFkZCBuZXcgdmFyYnVmX2VuZF9zdHIoKQorCisgbGliL2Rwa2cvbGliZHBrZy5WZXJzaW9ucyB8ICAgIDEgKworIGxpYi9kcGtnL3ZhcmJ1Zi5jICAgICAgICAgfCAgICA5ICsrKysrKysrLQorIGxpYi9kcGtnL3ZhcmJ1Zi5oICAgICAgICAgfCAgICAzICsrLQorIDMgZmlsZXMgY2hhbmdlZCwgMTEgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDI4MGFjOTE0Y2M1MmVlNWRlMDc5YzA4MzNiYjFkZjUwMDVjMWU3YWIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgRmViIDE5IDA5OjI2OjEzIDIwMTEgKzAxMDAKKworICAgIGRwa2c6IE9ubHkgY29weSBhbHJlYWR5IGNvdW50ZWQgb3V0cHV0IGxpbmVzIGZyb20gZmluZAorICAgIAorICAgIEluc3RlYWQgb2YgYXBwZW5kaW5nIHR3byBOVUwgY2hhcmFjdGVycyB0byBiZSBhYmxlIHRvIHRyYWNrIHRoZSBlbmQgb2YKKyAgICB0aGUgTlVMIHRlcm1pbmF0ZWQgbGluZXMgZnJvbSBmaW5kJ3Mgb3V0cHV0LiBKdXN0IGhhbmRsZSB0aGUgbnVtYmVyIG9mCisgICAgbGluZXMgd2UgaGF2ZSBhbHJlYWR5IGNvdW50ZWQgcHJldmlvdXNseS4KKworIHNyYy9hcmNoaXZlcy5jIHwgICAgOSArKystLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgNiBkZWxldGlvbnMoLSkKKworY29tbWl0IGRlMzE0YTU0ZDAyMTRkMGFhNzMzYWJhMTg3OTdlZTRlZWQwMDZlN2UKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgRmViIDE5IDA5OjI0OjI2IDIwMTEgKzAxMDAKKworICAgIGRwa2c6IFJlZHVjZSBsb2NhbCB2YXJpYWJsZSBzY29wZSBpbiBhcmNoaXZlZmlsZXMoKQorCisgc3JjL2FyY2hpdmVzLmMgfCAgIDEzICsrKysrKystLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDcgaW5zZXJ0aW9ucygrKSwgNiBkZWxldGlvbnMoLSkKKworY29tbWl0IDE3M2E2Y2I1MzI1ODQwM2YzMzlhZTA5MDUwN2NiYjEwMGI3NDI2MDQKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgRmViIDE5IDA2OjEyOjE1IDIwMTEgKzAxMDAKKworICAgIGxpYmRwa2c6IERvIG5vdCBhZGQgYSBOVUwgY2hhciBhZnRlciB2YXJidWZfcHJpbnRmKCkgY2FsbHMKKyAgICAKKyAgICBUaGUgdmFyYnVmX3ByaW50ZigpIGFuZCB2YXJidWZfdnByaW50ZigpIGFscmVhZHkgTlVMIHRlcm1pbmF0ZSB0aGUKKyAgICBzdHJpbmcgdmlhIHRoZSB2c25wcmludGYoKSBjYWxscy4gTm8gbmVlZCB0byBkbyB0aGF0IGFnYWluLgorCisgbGliL2Rwa2cvbG9nLmMgICAgICAgICAgIHwgICAgMSAtCisgbGliL2Rwa2cvdGVzdC90LXZhcmJ1Zi5jIHwgICAgOSArKysrLS0tLS0KKyBsaWIvZHBrZy90cmlnbGliLmMgICAgICAgfCAgICAxIC0KKyAzIGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgNyBkZWxldGlvbnMoLSkKKworY29tbWl0IDI0NDlkY2FhNjEwYjg2MjIxZDkxNDE0MGE3ZTc0NzcyOGY1Y2M0MDkKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgRmViIDE5IDA2OjA4OjEzIDIwMTEgKzAxMDAKKworICAgIGRwa2c6IE1vdmUgdmFyYnVmIHJlbGF0ZWQgY2FsbHMgY2xvc2UgdG9nZXRoZXIgaW4gc2V0c2VsZWN0aW9ucygpCisgICAgCisgICAgSXQncyBlYXNpZXIgdG8gcmVhZCBpZiB0aGUgdmFyYnVmIGNhbGxzIGFmZmVjdGluZyB0aGUgc2FtZSB2YXJpYWJsZSBhcmUKKyAgICBjbG9zZSB0b2dldGhlciwgcmF0aGVyIHRoYW4gZGlzcGVyc2VkIGFyb3VuZCBpbiB0aGUgY29kZS4KKworIHNyYy9zZWxlY3QuYyB8ICAgMTIgKysrKysrKystLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA4IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAxOGI1Mjc1N2VhMzhkODk2ZTU3MzM0Y2E4M2JmM2M2MmUyMTc5NWVkCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IEZlYiAxOSAwNToxNzo1MiAyMDExICswMTAwCisKKyAgICBSZXZlcnQgImxpYmRwa2c6IFJlZmFjdG9yIHZhcmJ1Zl9wa2dhZG1pbmZpbGUoKSBvdXQgZnJvbSBwa2dhZG1pbmZpbGUoKSIKKyAgICAKKyAgICBUaGlzIHJldmVydHMgY29tbWl0IGJhZDE4MzI5NDczYTMwNmQ1OWE5YzM1ODIzZTg1ZmM5NjRiYmY3MjQuCisgICAgCisgICAgVGhlIHZhcmJ1Zl9wa2dhZG1pbmZpbGUoKSBmdW5jdGlvbiBpcyBub3QgYmVpbmcgdXNlZCBhbnltb3JlLgorCisgbGliL2Rwa2cvZGJtb2RpZnkuYyAgICAgICB8ICAgMjAgKysrKysrLS0tLS0tLS0tLS0tLS0KKyBsaWIvZHBrZy9kcGtnLWRiLmggICAgICAgIHwgICAgMiAtLQorIGxpYi9kcGtnL2xpYmRwa2cuVmVyc2lvbnMgfCAgICAxIC0KKyAzIGZpbGVzIGNoYW5nZWQsIDYgaW5zZXJ0aW9ucygrKSwgMTcgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA4Njk1NjRhZjY0YmI3NDU1MDFlZTRhMjJlMjYwOWIxOGFkNjBkMzRiCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IEZlYiAxOSAwNToxMzo1OSAyMDExICswMTAwCisKKyAgICBkcGtnOiBVc2UgcGtnYWRtaW5maWxlKCkgaW5zdGVhZCBvZiB2YXJidWZfcGtnYWRtaW5maWxlKCkKKyAgICAKKyAgICBUaGlzIHNpbXBsaWZpZXMgdGhlIEFQSSwgYW5kIHVuaWZpZXMgdGhlIGRpZmZlcmVudCBjYWxsIHNpdGVzLCB0aGUKKyAgICBleHRyZW1lbHkgc21hbGwgcGVyZm9ybWFuY2UgcGVuYWx0eSBpcyBpcnJlbGV2YW50IGluIHRoZXNlIGNhc2VzLgorCisgc3JjL2ZpbGVzZGIuYyB8ICAgIDkgKysrKystLS0tCisgc3JjL3JlbW92ZS5jICB8ICAgMTggKysrKysrKysrKystLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAxNiBpbnNlcnRpb25zKCspLCAxMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDdlMzEyNjJhNmZhOTYxZDgxY2JlNjcxMzhjYjg3NWM4MWUxOTU3MTEKK0F1dGhvcjogQW5kcmVhIEdlbG1pbmkgPGFuZHJlYS5nZWxtaW5pQGdlbG1hLm5ldD4KK0RhdGU6ICAgU3VuIEZlYiAyMCAyMjoyODo0NCAyMDExICswMTAwCisKKyAgICBsaWJkcGtnOiBSZW1vdmUgZHVwbGljYXRlIDxzdGRpby5oPiBpbmNsdWRlCisgICAgCisgICAgU2lnbmVkLW9mZi1ieTogQW5kcmVhIEdlbG1pbmkgPGFuZHJlYS5nZWxtaW5pQGdlbG1hLm5ldD4KKyAgICBTaWduZWQtb2ZmLWJ5OiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKyBsaWIvZHBrZy9wYXRoLmMgfCAgICAxIC0KKyAxIGZpbGVzIGNoYW5nZWQsIDAgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGY5MmEyNGYzNDkwODJkNTFiNzAyY2Q3MmY1OWVkYWUwMDU3OThjNzkKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gU2VwIDEzIDE4OjI0OjEyIDIwMTAgKzAyMDAKKworICAgIGRwa2ctYXJjaGl0ZWN0dXJlOiBTZXQgREVCX0hPU1RfQVJDSCBhbmQgREVCX0hPU1RfR05VX1RZUEUgb25seSBvbmNlCisgICAgCisgICAgVGhlIHZhcmlhYmxlcyBhcmUgc2V0IGluaXRpYWxseSBvbmNlLCBhbmQgdGhlbiBwb3NzaWJseSBvdmVycmlkZW4gYnkgdGhlCisgICAgdXNlciBzdXBwbGllZCBhcmd1bWVudHMuIFJlYXJyYW5nZSB0aGUgY29kZSB0byBzZXQgdGhlc2Ugb25seSBvbmNlLgorCisgc2NyaXB0cy9kcGtnLWFyY2hpdGVjdHVyZS5wbCB8ICAgMTUgKysrKysrKysrKy0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAxMCBpbnNlcnRpb25zKCspLCA1IGRlbGV0aW9ucygtKQorCitjb21taXQgY2M3ZWU2ZjdjMGMyZmQ2MDNjOTc2MzkxY2JhNWZiNDJkZGZlNDljMQorQXV0aG9yOiBKb25hdGhhbiBOaWVkZXIgPGpybmllZGVyQGdtYWlsLmNvbT4KK0RhdGU6ICAgTW9uIEZlYiAyOCAxODo1MzoxMyAyMDExIC0wNjAwCisKKyAgICBkcGtnLW1haW50c2NyaXB0LWhlbHBlcigxKTogZHBrZyBvbmx5IGhhcyB0byBiZSB1bnBhY2tlZCBmb3IgaXQgdG8gYmUgdXNhYmxlCisgICAgCisgICAgU29tZSBwYWNrYWdlcyB1c2UgYSBwcmUtZGVwZW5kZW5jeSB0byBlbnN1cmUgYSB2ZXJzaW9uIG9mIGRwa2cgd2l0aAorICAgIGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyIGlzIGF2YWlsYWJsZSBieSB0aGUgdGltZSBwcmVpbnN0IGlzIHJ1bi4KKyAgICBDbGFyaWZ5IHRoYXQgImF2YWlsYWJsZSIgaGVyZSBtZWFucyAidW5wYWNrZWQiLCBub3QgY29uZmlndXJlZCwgZm9yCisgICAgc29tZSBhZGRlZCBwZWFjZSBvZiBtaW5kLgorICAgIAorICAgIFNpZ25lZC1vZmYtYnk6IEpvbmF0aGFuIE5pZWRlciA8anJuaWVkZXJAZ21haWwuY29tPgorICAgIFNpZ25lZC1vZmYtYnk6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgICAgIHwgICAgMiArKworIG1hbi9kcGtnLW1haW50c2NyaXB0LWhlbHBlci4xIHwgICAgMiArLQorIDIgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgZTAyZjRmNWJiYTY5NmQyNzBiM2I4MjE1ODc5NGY1ODU5YTA5ZjUwNworQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBNYXIgMSAwOToxNjowNSAyMDExICswMTAwCisKKyAgICBBZGQgbWlzc2luZyBjaGFuZ2Vsb2cgZW50cnkKKyAgICAKKyAgICBUaGlzIGVudHJ5IHdhcyBtZWFudCB0byBiZSBpbnRlZ3JhdGVkIGluIGNvbW1pdAorICAgIGM4MjRjNDliM2ZiYmQ2MTYyNjAzMWVlYjEwYWUzNzc4MmE5OTQxNTQuCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMiArKworIDEgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgYzgyNGM0OWIzZmJiZDYxNjI2MDMxZWViMTBhZTM3NzgyYTk5NDE1NAorQXV0aG9yOiBDb2xpbiBXYXRzb24gPGNqd2F0c29uQHVidW50dS5jb20+CitEYXRlOiAgIFR1ZSBNYXIgMSAwOToxMDozNSAyMDExICswMTAwCisKKyAgICBkcGtnLWJ1aWxkZmxhZ3M6IHVzZSBDRkxBR1M9Ii1nIC1PMyIgZm9yIGJ1aWxkaW5nIHBwYzY0IHBhY2thZ2VzIG9uIFVidW50dQorICAgIAorICAgIFdlJ3JlIGNvbnNpZGVyaW5nIGJyaW5naW5nIHVwIGEgcHBjNjQgcG9ydCBvZiB0aGUgVWJ1bnR1IHNlcnZlciwgYW5kIGl0CisgICAgYXBwZWFycyB0byBiZSBiZXN0IHRvIGJ1aWxkIGl0IHdpdGggLU8zIHJhdGhlciB0aGFuIC1PMi4gIChJIHJlYWxpc2UKKyAgICB0aGF0IHRoaXMgd291bGQgYmUgdW51c3VhbCBpbiBEZWJpYW4gYW5kIHRoYXQgdGhlcmUgYXJlIG1vcmUgb2JzdGFjbGVzCisgICAgdG8gdGhpcyB0aGFuIGp1c3QgZHBrZy1idWlsZGZsYWdzLCBhbmQgSSdkIGxpa2UgdG8gZG8gdGhpcyBkaWZmZXJlbnRseQorICAgIGV2ZW50dWFsbHksIGJ1dCB0aGlzIGlzIHdoZXJlIHdlIGFyZSBhdCB0aGUgbW9tZW50LikKKworIHNjcmlwdHMvRHBrZy9WZW5kb3IvVWJ1bnR1LnBtIHwgICAgNiArKysrKysKKyAxIGZpbGVzIGNoYW5nZWQsIDYgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDRkNTE4OWY5NzQ2YmJiN2U0YTM3YWY5NWNiMzUxYzg5MGFjOTBkMzgKK0F1dGhvcjogU3ZlbiBKb2FjaGltIDxzdmVuam9hY0BnbXguZGU+CitEYXRlOiAgIFdlZCBGZWIgMTYgMTk6NDI6MzYgMjAxMSArMDEwMAorCisgICAgR2VybWFuIGRwa2cgdHJhbnNsYXRpb24gdXBkYXRlCisgICAgCisgICAgVXBkYXRlIHRvIDEwMTd0LgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDEgKworIHBvL2RlLnBvICAgICAgICAgfCAzMTY0ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgMTc2NyBpbnNlcnRpb25zKCspLCAxMzk4IGRlbGV0aW9ucygtKQorCitjb21taXQgMzg1YjQ2NGM5OTkxOWViNDAzYjVlZjNhNmNhYjZmMzQzNDNmOGY4OAorQXV0aG9yOiBIZWxnZSBLcmV1dHptYW5uIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KK0RhdGU6ICAgU2F0IEZlYiAxMiAxODoyNjoyMyAyMDExICswMTAwCisKKyAgICBVcGRhdGUgR2VybWFuIHRyYW5zbGF0aW9uIG9mIG1hbnVhbCBwYWdlcworICAgIAorICAgIFVwZGF0ZSB0byAyMDA3dDBmMHUuCisKKyBtYW4vcG8vZGUucG8gfCAgIDE1ICsrKysrKysrKysrKysrLQorIDEgZmlsZXMgY2hhbmdlZCwgMTQgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDg4ODljMDE0ODAyNjljY2JlNGU4ODhhZTgzMGM1ZDI0YjEyNzE2ZGIKK0F1dGhvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitEYXRlOiAgIFNhdCBGZWIgMTIgMDk6NTE6NTggMjAxMSArMDEwMAorCisgICAgVXBkYXRlIEdlcm1hbiB0cmFuc2xhdGlvbiBvZiBtYW51YWwgcGFnZXMKKyAgICAKKyAgICBVcGRhdGUgdG8gMjAwNnQwZjF1LgorCisgbWFuL3BvL2RlLnBvIHwgICA5OCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDUwIGluc2VydGlvbnMoKyksIDQ4IGRlbGV0aW9ucygtKQorCitjb21taXQgMGZmMWJhOThjZTJkZDRkODI2OGU0MTU0YjcxNzNmYWI0OTY1NzA0NQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBGZWIgMTEgMDU6MjE6MzYgMjAxMSArMDEwMAorCisgICAgbGliZHBrZzogUmVuYW1lIGNtZGluZm8gYXJnIG1lbWJlcnMKKyAgICAKKyAgICBUaGUgY3VycmVudCBuYW1lcyBhcmUgbm90IGRlc2NyaXB0aXZlIGVub3VnaCwgc28gcmVuYW1lIHBhcmcgdG8gYXJnX3B0ciwKKyAgICBmYXJnIHRvIGFyZ19mdW5jLCBhbmQgZmluYWxseSBhcmcgdG8gYXJnX2ludCAod2hpY2ggZGlzYW1iaWd1YXRlcyB3aGF0CisgICAga2luZCBvZiBkYXRhIGl0J3MgaG9sZGluZykuCisKKyBkcGtnLWRlYi9tYWluLmMgICB8ICAgIDIgKy0KKyBkcGtnLXNwbGl0L21haW4uYyB8ICAgIDIgKy0KKyBsaWIvZHBrZy9teW9wdC5jICB8ICAgIDkgKysrKysrLS0tCisgbGliL2Rwa2cvbXlvcHQuaCAgfCAgICA3ICsrKystLS0KKyBzcmMvYXJjaGl2ZXMuYyAgICB8ICAgIDYgKysrLS0tCisgc3JjL2NsZWFudXAuYyAgICAgfCAgICAyICstCisgc3JjL2RpdmVydGNtZC5jICAgfCAgICAyICstCisgc3JjL21haW4uYyAgICAgICAgfCAgIDIyICsrKysrKysrKysrLS0tLS0tLS0tLS0KKyBzcmMvcGFja2FnZXMuYyAgICB8ICAgMTYgKysrKysrKystLS0tLS0tLQorIHNyYy9wcm9jZXNzYXJjLmMgIHwgICAgNSArKystLQorIHNyYy9xdWVyeWNtZC5jICAgIHwgICAgOCArKysrLS0tLQorIHNyYy9yZW1vdmUuYyAgICAgIHwgICAgNCArKy0tCisgc3JjL3N0YXRjbWQuYyAgICAgfCAgICAyICstCisgc3JjL3VwZGF0ZS5jICAgICAgfCAgIDE0ICsrKysrKystLS0tLS0tCisgMTQgZmlsZXMgY2hhbmdlZCwgNTMgaW5zZXJ0aW9ucygrKSwgNDggZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyNzE4ZjAzYmMyYmIyNmRlMGUxOGI3YmJjYjIwYWMwMmIyNGMwNzE5CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEZlYiAxMSAwNToxMTozOSAyMDExICswMTAwCisKKyAgICBsaWJkcGtnOiBSZW5hbWUgZnVuY3Rpb24gdHlwZSBmcm9tIHRhcl9mdW5jIHRvIHRhcl9tYWtlX2Z1bmMKKyAgICAKKyAgICBUaGlzIGRpc2FtYmlndWF0ZXMgdGhlIHB1cnBvc2Ugb2YgdGhlIGZ1bmN0aW9uIHR5cGUuCisKKyBsaWIvZHBrZy90YXJmbi5oIHwgICAxMiArKysrKystLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDYgaW5zZXJ0aW9ucygrKSwgNiBkZWxldGlvbnMoLSkKKworY29tbWl0IDk3MjA1YzFiYWIyZDVmZDE4ZTlkZDMzZjUzMjlkYjIwOWI4NjY2MzQKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgRmViIDUgMTA6MjQ6NDUgMjAxMSArMDEwMAorCisgICAgZHBrZzogQXV0b21hdGUgZm9yY2UgaGVscCBvdXRwdXQgcHJpbnRpbmcKKyAgICAKKyAgICBNb3ZlIHRoZSBmb3JjZSB0eXBlIChub3JtYWwsIGRlZmF1bHQsIGRhbmdlcm91cykgYW5kIGZvcmNlIGRlc2NyaXB0aW9uCisgICAgdG8gc3RydWN0IGZvcmNlaW5mbywgc28gdGhhdCBpdHMgcHJpbnRpbmcgY2FuIGJlIGF1dG9tYXRlZC4KKyAgICAKKyAgICBUaGlzIGhhcyBtdWx0aXBsZSBwdXJwb3NlcyAoc2ltaWxhciB0byB0aGUgZGVidWdpbmZvIG91dHB1dCBhdXRvbWF0aW9uKTsKKyAgICB0aGVyZSdzIG9uZSBsZXNzIHBsYWNlIHRvIG1vZGlmeSB3aGVuIGFkZGluZyBhIG5ldyBmb3JjZSBmbGFnLCB0aGUgb3VwdXQKKyAgICBpcyBlYXNpZXIgdG8gbW9kaWZ5IHcvbyBmdXp6eWluZyB0aGUgdHJhbnNsYXRlZCBzdHJpbmdzLCBpdCdzIGVhc2llciBmb3IKKyAgICB0aGUgdHJhbnNsYXRvcnMgdG8gZGVhbCB3aXRoIG5ldyBmb3JjZSBmbGFnIGFkZGl0aW9ucy4KKworIHNyYy9tYWluLmMgfCAgMTI4ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA3NiBpbnNlcnRpb25zKCspLCA1MiBkZWxldGlvbnMoLSkKKworY29tbWl0IDEwOTYwZmNiZTk0OTY0MDc3OWVkNWFmYWFhYTVlYjRlNzI4OTdmZjgKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgRmViIDUgMTA6MjQ6NDUgMjAxMSArMDEwMAorCisgICAgZHBrZzogUmVkdWNlIHRoZSBzY29wZSBvZiBhIGlmL2Vsc2UgaW4gc2V0Zm9yY2UoKQorCisgc3JjL21haW4uYyB8ICAgMTcgKysrKysrKysrLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDkgaW5zZXJ0aW9ucygrKSwgOCBkZWxldGlvbnMoLSkKKworY29tbWl0IGFhMThjMTc4ODlkNTViMDllNzFmNDAyYWZiOTg2YjdjMzUzOTAyMTIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgRmViIDUgMTA6MjQ6NDUgMjAxMSArMDEwMAorCisgICAgZHBrZzogSGFuZGxlIC0tZm9yY2UtYWxsIGFzIGFueSBvdGhlciBmb3JjZSBvcHRpb24KKyAgICAKKyAgICBBZGQgYW4gZW50cnkgZm9yICJhbGwiIHRvIGZvcmNlaW5mb3MsIHNvIHRoYXQgdGhlIGNvZGUgcGF0aHMgYXJlIG1vcmUKKyAgICBjbGVhciBvbiB3aGF0IGVhY2ggaXMgZG9pbmcuIFRoaXMgd2lsbCBhbHNvIG1ha2UgZnVydGhlciByZWZhY3RvcmluZworICAgIGVhc2llci4KKworIHNyYy9tYWluLmMgfCAgIDEyICsrKysrKy0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCA2IGRlbGV0aW9ucygtKQorCitjb21taXQgMWEzZDU1ZTAzNTYxZDRjNTNkZDY1NDAyNmM3ZTY0Y2U5N2M2ODIxOQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBGZWIgNSAwNTo0NDo1OSAyMDExICswMTAwCisKKyAgICBkcGtnOiBGaXggdHlwbyBpbiBkZWJ1ZyBoZWxwIG91dHB1dAorCisgc3JjL21haW4uYyB8ICAgIDIgKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGZjZmJjZTY2ODE2OWFlY2MzMzJmZmQwYmU5MTI3ZGM4YjllMGJkNGUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgRmViIDUgMDU6MjQ6NDMgMjAxMSArMDEwMAorCisgICAgZHBrZzogQ2FwaXRhbGl6ZSBkZWJ1ZyBoZWxwIG91dHB1dCB0YWJsZSB0aXRsZXMKKworIG1hbi9kcGtnLjEgfCAgICA0ICsrLS0KKyBzcmMvbWFpbi5jIHwgICAgMiArLQorIDIgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQorCitjb21taXQgMTY2MDE1Y2E1NGEzYTVjZmRiYjQ5ZWFhZWU1NThiZTZmZWMzMjllOAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBGZWIgNSAwNToxODozMyAyMDExICswMTAwCisKKyAgICBkcGtnOiBBdXRvbWF0ZSBkZWJ1ZyBoZWxwIG91dHB1dCBwcmludGluZworICAgIAorICAgIEFkZCBhIG5ldyBhcnJheSBvZiBzdHJ1Y3QgZGVidWdpbmZvIHRvIGhvbGQgZGVidWcgZmxhZyBpbmZvcm1hdGlvbiwgc28KKyAgICB0aGF0IGl0IGNhbiBiZSBoYW5kbGVkIGF1dG9tYXRpY2FsbHkuCisgICAgCisgICAgVGhpcyBoYXMgbXVsdGlwbGUgcHVycG9zZXM7IGl0IHdpbGwgZ3VhcmFudGVlIHRoZSBvdXRwdXQgdmFsdWUgYWx3YXlzCisgICAgbWF0Y2hlcyB0aGUgb25lIGRlZmluZWQgaW4gdGhlIGNvZGUsIHRoZXJlJ3Mgb25lIGxlc3MgcGxhY2UgdG8gbW9kaWZ5CisgICAgd2hlbiBhZGRpbmcgYSBuZXcgZGVidWcgZmxhZywgdGhlIG91cHV0IGlzIGVhc2llciB0byBtb2RpZnkgdy9vIGZ1enp5aW5nCisgICAgdGhlIHRyYW5zbGF0ZWQgc3RyaW5ncywgaXQncyBlYXNpZXIgZm9yIHRoZSB0cmFuc2xhdG9ycyB0byBkZWFsIHdpdGggbmV3CisgICAgZGVidWcgZmxhZyBhZGRpdGlvbnMsIGl0IHdpbGwgbm90IGFsbG93IGZvciB0aGUgc291cmNlIHJlZmVyZW5jZSBuYW1lIHRvCisgICAgYmUgdHJhbnNsYXRlZCB0aHVzIGF2b2lkaW5nIGVycm9ycy4KKworIHNyYy9tYWluLmMgfCAgIDQ4ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMzIgaW5zZXJ0aW9ucygrKSwgMTYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAwZDZlN2JjMjFlNjQ1YTQ5YTg1YmQyMGNhNzNjZGIwOGYxMmE5ZTRmCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEZlYiA0IDIwOjE1OjE3IDIwMTEgKzAxMDAKKworICAgIGRwa2c6IFJlZmFjdG9yIGNvbmZsaWN0b3IgYWRkaXRpb24gdG8gYSBuZXcgcHVzaF9jb25mbGljdG9yKCkgZnVuY3Rpb24KKyAgICAKKyAgICBNb3ZlIHRoZSBjb25mbGljdG9yIGFuZCBjZmxpY3RfaW5kZXggdmFyaWFibGVzIHRvIHByb2Nlc3NhcmMuYyBhbmQKKyAgICBtYWtlIHRoZW0gc3RhdGljLiBBbmQgY3JlYXRlIGEgbmV3IHB1c2hfY29uZmxpY3RvcigpIGZ1bmN0aW9uIHRvIGhpZGUKKyAgICB0aGUgaW1wbGVtZW50YXRpb24gZGV0YWlscy4gVGhpcyBmaXhlcyBhIHdhcm5pbmcgb24gdmFyaWFibGUgc2hhZG93aW5nLgorCisgc3JjL2FyY2hpdmVzLmMgICB8ICAgMTEgKy0tLS0tLS0tLS0KKyBzcmMvYXJjaGl2ZXMuaCAgIHwgICAgMyArLS0KKyBzcmMvcHJvY2Vzc2FyYy5jIHwgICAxNCArKysrKysrKysrKysrKworIDMgZmlsZXMgY2hhbmdlZCwgMTYgaW5zZXJ0aW9ucygrKSwgMTIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBlZmE2ZTQ5MTkzZjc5NDhkZTEwM2JhZGExOWRlNDA3MjBhNzc3NGZiCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEZlYiA0IDE5OjQ1OjAxIDIwMTEgKzAxMDAKKworICAgIGRwa2c6IFVzZSBtX3JlYWxsb2MoKSBpbnN0ZWFkIG9mIGZyZWUoKSttX21hbGxvYygpIG9uIHByb2Nlc3NfYXJjaGl2ZSgpCisKKyBzcmMvcHJvY2Vzc2FyYy5jIHwgICAgNCArLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBmMTg5MTMzNWE0Njg2YTg4NTllNGY3N2JlMWNkNWQ4MDYxZTBiNTZlCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEZlYiA0IDE5OjQwOjMzIDIwMTEgKzAxMDAKKworICAgIGRwa2c6IFJlbW92ZSB1c2VsZXNzIGNpZGlyYnVmIHZhcmlhYmxlIGluIHByb2Nlc3NfYXJjaGl2ZSgpCisgICAgCisgICAgUmVtb3ZlIGNpZGlyYnVmIGFuZCBtYWtlIGNpZGlyIGEgc3RhdGljIGZ1bmN0aW9uIHNjb3BlIHZhcmlhYmxlLgorCisgc3JjL3Byb2Nlc3NhcmMuYyB8ICAgMTcgKysrKysrKystLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDggaW5zZXJ0aW9ucygrKSwgOSBkZWxldGlvbnMoLSkKKworY29tbWl0IDE5NGRjZTFjYTM3YWIwMDQ3YzBlMDYwNmM3ZTliYTgwMTk2ZDNkMmMKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgRmViIDQgMTk6MjI6MDUgMjAxMSArMDEwMAorCisgICAgZHBrZzogUmVtb3ZlIHRlbXBvcmFyeSB2YXJpYWJsZSBhZG1pbmRpcmxlbiBpbiBwcm9jZXNzX2FyY2hpdmUoKQorICAgIAorICAgIElubGluZSB0aGUgc3RybGVuKCkgY2FsbCBpbnN0ZWFkIG9mIHVzaW5nIHRoZSBpbnRlcm1lZGlhdGUgdmFyaWFibGUuCisKKyBzcmMvcHJvY2Vzc2FyYy5jIHwgICAgNiArKystLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworY29tbWl0IDFiYWFkODgwOTAzOWViNTIxMTNmMmU2NDc4MDBjY2NmNzcxNjgzNDkKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgRmViIDQgMDU6NTA6NDMgMjAxMSArMDEwMAorCisgICAgZHNlbGVjdDogU3dpdGNoIHRvIHVzZSBsaWJkcGtnIGRlYnVnIHN1cHBvcnQKKworIGRzZWxlY3QvYmFzZWNtZHMuY2MgICB8ICAgIDIgKy0KKyBkc2VsZWN0L2Jhc2VsaXN0LmNjICAgfCAgIDM5ICsrKysrKystLS0tLS0tLS0KKyBkc2VsZWN0L2RzZWxlY3QuaCAgICAgfCAgICAzICstCisgZHNlbGVjdC9tYWluLmNjICAgICAgIHwgICAxMyArKysrLS0KKyBkc2VsZWN0L21ldGhsaXN0LmNjICAgfCAgIDMwICsrKysrKy0tLS0tLS0KKyBkc2VsZWN0L21ldGhwYXJzZS5jYyAgfCAgIDUwICsrKysrKysrKystLS0tLS0tLS0tCisgZHNlbGVjdC9wa2djbWRzLmNjICAgIHwgICAgNCArLQorIGRzZWxlY3QvcGtnZGVwY29uLmNjICB8ICAxMTcgKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIGRzZWxlY3QvcGtnZGlzcGxheS5jYyB8ICAgIDIgKy0KKyBkc2VsZWN0L3BrZ2luZm8uY2MgICAgfCAgIDE3ICsrKy0tLS0KKyBkc2VsZWN0L3BrZ2xpc3QuY2MgICAgfCAgMTA5ICsrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBkc2VsZWN0L3BrZ3N1Ymxpc3QuY2MgfCAgIDQ0ICsrKysrKysrKy0tLS0tLS0tLQorIDEyIGZpbGVzIGNoYW5nZWQsIDIwOCBpbnNlcnRpb25zKCspLCAyMjIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA1ZTcyMzViZjY5ZjAxNmExYWRlNzE1YzRhNmJlM2E0MGQyY2RlNGI1CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEZlYiA0IDA0OjI2OjM3IDIwMTEgKzAxMDAKKworICAgIE1vdmUgYW5kIGdlbmVyYWxpemUgZGVidWcgQVBJIGZyb20gZHBrZyB0byBsaWJkcGtnCisKKyBsaWIvZHBrZy9NYWtlZmlsZS5hbSAgICAgIHwgICAgMiArCisgbGliL2Rwa2cvZGVidWcuYyAgICAgICAgICB8ICAgODQgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCisgbGliL2Rwa2cvZGVidWcuaCAgICAgICAgICB8ICAgNTQgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKKyBsaWIvZHBrZy9saWJkcGtnLlZlcnNpb25zIHwgICAgNSArKysKKyBzcmMvZGVwY29uLmMgICAgICAgICAgICAgIHwgICAgMiArLQorIHNyYy9oZWxwLmMgICAgICAgICAgICAgICAgfCAgIDEzICstLS0tLS0KKyBzcmMvbWFpbi5jICAgICAgICAgICAgICAgIHwgICAgNiArKy0KKyBzcmMvbWFpbi5oICAgICAgICAgICAgICAgIHwgICAxOSArLS0tLS0tLS0tLQorIDggZmlsZXMgY2hhbmdlZCwgMTUyIGluc2VydGlvbnMoKyksIDMzIGRlbGV0aW9ucygtKQorCitjb21taXQgNDY5YzVmYTkxZTEyZmRkZWQ0ZTRjNmY3MTMxYTk2NWU4ODlkNWIxOAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBGZWIgNCAwMDo0MToyNiAyMDExICswMTAwCisKKyAgICBkcGtnOiBBbHdheXMgY2FsbCBwa2dfaGFzX3Bvc3RybV9zY3JpcHQoKSBpbiByZW1vdmFsX2J1bGsoKQorICAgIAorICAgIEluc3RlYWQgb2YgbGV0dGluZyByZW1vdmFsX2J1bGtfcmVtb3ZlX2ZpbGVzKCkgdGVsbCB0aGUgY2FsbGVyIGl0IGhhcworICAgIGZvdW5kIGEgcG9zdHJtIHNjcmlwdCBpbiBpdHMgYnJhbmNoIGFuZCBjYWxsaW5nIHBrZ19oYXNfcG9zdHJtX3NjcmlwdCgpCisgICAgb24gdGhlIG90aGVyLCBqdXN0IHVuY29uZGl0aW9uYWxseSBjYWxsIGl0IGFsd2F5cy4KKyAgICAKKyAgICBUaGlzIHJlbW92ZXMgdGhlIG5lZWQgdG8gcGFzcyBiYWNrIHRoZSB2YWx1ZSB2aWEgb3V0X2ZvdW5kcG9zdHJtLCB3aGljaAorICAgIG1ha2VzIGZ1cnRoZXIgcmVmYWN0b3Jpbmcgc2xpZ2h0bHkgbW9yZSBjb252b2x1dGVkLgorCisgc3JjL3JlbW92ZS5jIHwgICAxNyArKysrKystLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCAxMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDM1NWQyYzJhYTZhMmZiOTA2ZTkxNWJjZmVlNzcxMDhjMmFiMGMxNjMKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgRmViIDQgMDA6NDA6MjAgMjAxMSArMDEwMAorCisgICAgZHBrZzogUmVmYWN0b3Igb3V0IHBrZ19oYXNfcG9zdHJtX3NjcmlwdCgpIGZyb20gcmVtb3ZhbF9idWxrKCkKKworIHNyYy9yZW1vdmUuYyB8ICAgMjYgKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDE2IGluc2VydGlvbnMoKyksIDEwIGRlbGV0aW9ucygtKQorCitjb21taXQgMmZlMjU2M2VlM2YyZjYzYjA1YjZlNzZjNjU4ZWE5ODliYzQ5MjVmZAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBGZWIgMyAxNzozNzozMSAyMDExICswMTAwCisKKyAgICBkcGtnOiBVc2UgdmFyYnVmX3BrZ2FkbWluZmlsZSgpIGluc3RlYWQgb2YgbWFudWFsbHkgYnVpbGRpbmcgdGhlIHBhdGgKKworIHNyYy9maWxlc2RiLmMgfCAgICA2ICstLS0tLQorIHNyYy9yZW1vdmUuYyAgfCAgIDEzICsrLS0tLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMTYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBiYWQxODMyOTQ3M2EzMDZkNTlhOWMzNTgyM2U4NWZjOTY0YmJmNzI0CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IEZlYiAzIDE3OjM3OjMxIDIwMTEgKzAxMDAKKworICAgIGxpYmRwa2c6IFJlZmFjdG9yIHZhcmJ1Zl9wa2dhZG1pbmZpbGUoKSBvdXQgZnJvbSBwa2dhZG1pbmZpbGUoKQorCisgbGliL2Rwa2cvZGJtb2RpZnkuYyAgICAgICB8ICAgMjAgKysrKysrKysrKysrKystLS0tLS0KKyBsaWIvZHBrZy9kcGtnLWRiLmggICAgICAgIHwgICAgMiArKworIGxpYi9kcGtnL2xpYmRwa2cuVmVyc2lvbnMgfCAgICAxICsKKyAzIGZpbGVzIGNoYW5nZWQsIDE3IGluc2VydGlvbnMoKyksIDYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA5YzE1MmI2NDE4MzViM2Q1YzA3NDIxNWRmZmQyZDQ3ZjRlNDM0MGNkCitBdXRob3I6IEhlbGdlIEtyZXV0em1hbm4gPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorRGF0ZTogICBUdWUgRmViIDggMTc6MDM6NTMgMjAxMSArMDEwMAorCisgICAgVXBkYXRlIEdlcm1hbiB0cmFuc2xhdGlvbiBvZiBtYW51YWwgcGFnZXMKKyAgICAKKyAgICBVcGRhdGUgdG8gMjAwNnQwZjF1LgorCisgbWFuL3BvL2RlLnBvIHwgICA1NCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDUzIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBhYWNiMWYxZWM5YWFiOTM3OGZhYjEwZmI4MzJhNDMzN2ZiNzg1MmM0CitBdXRob3I6IENvbGluIFdhdHNvbiA8Y2p3YXRzb25AdWJ1bnR1LmNvbT4KK0RhdGU6ICAgTW9uIEZlYiA3IDA2OjMzOjI4IDIwMTEgKzAxMDAKKworICAgIE9uIGluc3RhbGwgZm9yIFVidW50dSBhZGp1c3QgdGhlIGkzODYgR05VIGNwdSBuYW1lIGluIGNwdXRhYmxlCisgICAgCisgICAgVWJ1bnR1IGJ1aWxkcyB0aGVpciBpMzg2IGFyY2hpdGVjdHVyZSBmb3IgaTY4NiBpbnN0ZWFkIG9mIGk0ODYgbGlrZQorICAgIERlYmlhbiBkb2VzLiBUaGlzIGNoYW5nZSBoZWxwcyB0aGVtIHVzZSBhbiB1bm1vZGlmaWVkIHVwc3RyZWFtIHNvdXJjZS4KKyAgICAKKyAgICBUaGlzIHNob3VsZCBiZSBjb25zaWRlcmVkIGEgdGVtcG9yYXJ5IG1lYXN1cmUgdW50aWwgYSBiZXR0ZXIsIG1vcmUKKyAgICBnZW5lcmljIGltcGxlbWVudGF0aW9uIGNvbWVzIHVwLCBvciBpcyByZXF1aXJlZCBmb3Igb3RoZXIgZGVyaXZhdGl2ZXMsCisgICAgYnV0IGZvciBub3cgdGhpcyB3aWxsIGRvLgorICAgIAorICAgIENsb3NlczogIzYxMTc0MQorICAgIAorICAgIFNpZ25lZC1vZmYtYnk6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAyICsrCisgZGViaWFuL3J1bGVzICAgICB8ICAgIDcgKysrKysrKworIDIgZmlsZXMgY2hhbmdlZCwgOSBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgZDA5YWQyZWZkMGI5M2JiNjllYjZkZDc0ZjY0MzcxN2Y2ZmUzNTI0MgorQXV0aG9yOiBSb2JlcnQgTWlsbGFuIDxybWhAZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIEZlYiA2IDIxOjMxOjUyIDIwMTEgKzAxMDAKKworICAgIGxpYmNvbXBhdDogQWRkIG1pc3Npbmcgc2VtaWNvbG9uIHRvIHZzbnByaW50ZigpIGRlY2xhcmF0aW9uCisgICAgCisgICAgVGhpcyBtYWtlcyB0aGUgYnVpbGQgZmFpbCBvbiBzeXN0ZW1zIHdoZXJlIHZzbnByaW50ZigpIGlzIG1pc3Npbmcgb3IKKyAgICBub3QgY29tcGxpYW50IGVub3VnaCwgYW5kIHRodXMgdGhlIGZhbGxiYWNrIGlzIGJlaW5nIHVzZWQuCisgICAgCisgICAgQ2xvc2VzOiAjNjEyMjAzCisgICAgCisgICAgU2lnbmVkLW9mZi1ieTogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisgZGViaWFuL2NoYW5nZWxvZyAgICB8ICAgIDIgKysKKyBsaWIvY29tcGF0L2NvbXBhdC5oIHwgICAgMiArLQorIDIgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgZGE1ZmNlY2E3MmI0YzY3YmU4YWNkYjA3MzRkYmY3YzI0MTUxOWRmZgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBGZWIgNCAxODo1OTowMCAyMDExICswMTAwCisKKyAgICBkcGtnOiBEbyBub3Qgc2VnZmF1bHQgb24g4oCcZHBrZyAtaSAtLW5vLWFjdOKAnQorICAgIAorICAgIG1rZHRlbXAoKSB0YWtlcyB0aGUgc3RyaW5nIGFsbG9jYXRlZCBieSBwYXRoX21ha2VfdGVtcF90ZW1wbGF0ZSgpIGFuZAorICAgIG1vZGlmaWVzIGl0LCBidXQgdGhlcmUncyBub3QgZW5vdWdoIGFsbG9jYXRlZCByb29tIGZvciB0aGUgc3Vic2VxdWVudAorICAgIHN0cmluZyBhcHBlbmRzIGRvbmUgc3RhcnRpbmcgZnJvbSBjaWRpcnJlc3QsIGZvciB0aGUgY29udHJvbCBmaWxlcy4KKyAgICAKKyAgICBSZWdyZXNzaW9uIGludHJvZHVjZWQgaW4gY29tbWl0IGZmY2NjNjU1ODAxODk0MjBhMGE2NDczNmJiYTBmYjY2MWRlNTZkY2IuCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMSArCisgc3JjL3Byb2Nlc3NhcmMuYyB8ICAgMTEgKysrKysrKysrLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDEwIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBiODNjYzdkNTUxYzlhZWVkN2JhZGE5MjZlMmUzYjNkOWZjNWM5MTQwCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IEZlYiAzIDAwOjA1OjIzIDIwMTEgKzAxMDAKKworICAgIGxpYmNvbXBhdDogRGVmaW5lIGdldHRleHQgY29udGV4dCBmdW5jdGlvbnMgd2hlbiBOTFMgaXMgZGlzYWJsZWQKKyAgICAKKyAgICBXaGVuIHRoZSBwYWNrYWdlIGlzIGNvbmZpZ3VyZWQgd2l0aCBOTFMgZGlzYWJsZWQgKC0tZGlzYWJsZS1ubHMpLAorICAgIHRoZSBidWlsZCB3aWxsIGZhaWwgZHVlIHRvIHVuZGVmaW5lZCByZWZlcmVuY2VzIHRvIExDX01FU1NBR0VTLCB0aGUKKyAgICBnZXR0ZXh0LmggaGVhZGVyIGZpbGUgZG9lcyBub3QgY29ycmVjdGx5IGhhbmRsZSB0aGUgZ2V0dGV4dCBjb250ZXh0CisgICAgcmVsYXRlZCBmdW5jdGlvbiBkZWNsYXJhdGlvbnMgb24gZGlzYWJsZWQgTkxTIHN1cHBvcnQsIHdoaWNoIGlzIGtub3duCisgICAgdG8gYmUgdXNlZCBieSBkb3duc3RyZWFtcy4gVGhpcyBhZGRzIGFsbCBtaXNzaW5nIG1hY3JvcyBjb3JyZXNwb25kaW5nCisgICAgdG8gdGhlaXIgTkxTIGVuYWJsZWQgY291bnRlcnBhcnRzLgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgfCAgICAxICsKKyBsaWIvY29tcGF0L2dldHRleHQuaCB8ICAgMzIgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKKyAyIGZpbGVzIGNoYW5nZWQsIDMzIGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA2MWEzY2IxODkwNjMxMzljODU2MmIyZmRkYzY1ZGUwYzk5OTZmZDhmCitBdXRob3I6IEhlbGdlIEtyZXV0em1hbm4gPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorRGF0ZTogICBXZWQgRmViIDIgMjM6MDI6MjAgMjAxMSArMDEwMAorCisgICAgVXBkYXRlIEdlcm1hbiB0cmFuc2xhdGlvbiBvZiBtYW51YWwgcGFnZXMKKyAgICAKKyAgICBVcGRhdGUgdG8gMTk5NnQwZjExdS4KKworIG1hbi9wby9kZS5hZGQgfCAgICAyICstCisgbWFuL3BvL2RlLnBvICB8IDExNTUgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCA4OTkgaW5zZXJ0aW9ucygrKSwgMjU4IGRlbGV0aW9ucygtKQorCitjb21taXQgMThhYzUxNjc2NTVmM2RiOGEwYzJjOGE5YThmZDMzOGQ2YjVkYWE4MQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBGZWIgMSAwNTowMzo1OSAyMDExICswMTAwCisKKyAgICBkcGtnOiBEb2N1bWVudCBwYWNrYWdlcyB3L28gQXJjaGl0ZWN0dXJlIGZpZWxkIG5lZWQgLS1mb3JjZS1hcmNoaXRlY3R1cmUKKyAgICAKKyAgICBUaGUgY29tbWl0IDU4ZTcyNzZiNjliZTEwNTczNWVjY2IzYzE4YzJiMjhkM2EyZWMyZTUgZGlkbid0IGV4cGxpY2l0bHkKKyAgICBkb2N1bWVudCB0aGlzIGJlaGF2aW91cmFsIGNoYW5nZSwgZG8gc28gbm93LgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDIgKysKKyBtYW4vZHBrZy4xICAgICAgIHwgICAgMiArLQorIHNyYy9tYWluLmMgICAgICAgfCAgICAyICstCisgMyBmaWxlcyBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAzY2U1OTdhNGM2MjE1N2Y2OTU1MTAxZDE2ZGIxOThkYjRhZmQ0MjU5CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIEZlYiAxIDA0OjQ1OjI0IDIwMTEgKzAxMDAKKworICAgIFJldmVydCAiRml4IGluc3RhbGxhdGlvbiBvZiBwYWNrYWdlcyB3aXRob3V0IGFyY2hpdGVjdHVyZSBmaWVsZCIKKyAgICAKKyAgICBUaGlzIHJldmVydHMgY29tbWl0IDEzNjM3ZGRmYWY0NzNmYTVmZDY3MjY0ZGE5ZjM4ODQxZWVlZDc0MDEuCisgICAgCisgICAgVGhlIGNoYW5nZXMgaW4gY29tbWl0IDU4ZTcyNzZiNjliZTEwNTczNWVjY2IzYzE4YzJiMjhkM2EyZWMyZTUgd2VyZQorICAgIGludGVudGlvbmFsLCBzdXBwb3J0ZWQgaGVyZSBtZWFudCAoYWx0aG91Z2ggdGhlIGNvbW1pdCBkaWQgbm90CisgICAgZG9jdW1lbnQgdGhpcyBwcm9wZXJseSkgdGhhdCB0aGUgbm9uLWNvbXBsaWFudCBwYWNrYWdlIGNhbiBzdGlsbCBiZQorICAgIGluc3RhbGxlZCwgYWx0aG91Z2ggLS1mb3JjZS1hcmNoaXRlY3R1cmUgaXMgbm93IHJlcXVpcmVkLgorCisgc3JjL3Byb2Nlc3NhcmMuYyB8ICAgIDMgKy0tCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBmMzQ5NmRjMjRmOThjZWEwZTFkYTNjODEyZThjNzI4YzQ1ODc1ZjQ4CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIEphbiAzMSAxOToxNzozNSAyMDExICswMTAwCisKKyAgICBsaWJkcGtnOiBEbyBub3QgcHJpbnQgYm9ndXMgd2FybmluZ3Mgd2hlbiBwYXJzaW5nIHN0YXR1cyBmaWxlcworICAgIAorICAgIFRoaXMgaXMgdGhlIGVxdWl2YWxlbnQgZml4IGluIHNwaXJpdCBhcyB0aGUgb25lIGluIGNvbW1pdAorICAgIDY3MmIwNjY0Y2JiOGZkN2ZkNWVlYTdhYjEwYWYxYmJmNjg3MTgzM2YsIGJ1dCBhcHBsaWVkIHRvIHRoZQorICAgIEFyY2hpdGVjdHVyZSBmaWVsZCBpbnN0ZWFkLgorICAgIAorICAgIFJlcG9ydGVkLWJ5OiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMyArKy0KKyBsaWIvZHBrZy9wYXJzZS5jIHwgICAgOSArKysrKy0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDcgaW5zZXJ0aW9ucygrKSwgNSBkZWxldGlvbnMoLSkKKworY29tbWl0IDEzNjM3ZGRmYWY0NzNmYTVmZDY3MjY0ZGE5ZjM4ODQxZWVlZDc0MDEKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gSmFuIDMxIDE1OjA2OjE0IDIwMTEgKzAxMDAKKworICAgIEZpeCBpbnN0YWxsYXRpb24gb2YgcGFja2FnZXMgd2l0aG91dCBhcmNoaXRlY3R1cmUgZmllbGQKKyAgICAKKyAgICBSZWZhY3RvcmluZyBkb25lIGluIGNvbW1pdCA1OGU3Mjc2YjY5YmUxMDU3MzVlY2NiM2MxOGMyYjI4ZDNhMmVjMmU1CisgICAgaW50cm9kdWNlZCBhIHJlZ3Jlc3Npb246IGEgcGFja2FnZSB3aXRob3V0IGFuIGFyY2hpdGVjdHVyZSBmaWVsZAorICAgIGNhbiBubyBsb25nZXIgYmUgaW5zdGFsbGVkIHdpdGhvdXQgLS1mb3JjZS1hcmNoaXRlY3R1cmUuCisKKyBzcmMvcHJvY2Vzc2FyYy5jIHwgICAgMyArKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDU4ZTcyNzZiNjliZTEwNTczNWVjY2IzYzE4YzJiMjhkM2EyZWMyZTUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gSmFuIDMxIDEwOjExOjU2IDIwMTEgKzAxMDAKKworICAgIGxpYmRwa2c6IEVuc3VyZSBwYXJzZWQgcGFja2FnZXMgaGF2ZSBhIHVzYWJsZSBhcmNoIG1lbWJlcgorICAgIAorICAgIEluIGNhc2UgdGhlIHBhY2thZ2UgZGlkbid0IGhhdmUgYW4gQXJjaGl0ZWN0dXJlIGZpZWxkLCB3YXJuIGFuZAorICAgIGluaXRpYWxpemUgaXQgdG8gYW4gZW1wdHkgc3RyaW5nLCBzbyB0aGF0IGl0IGNhbiBiZSBzYWZlbHkgdXNlZCBmb3IKKyAgICBzdHJpbmcgY29tcGFyaXNvbnMsIHByaW50aW5nLCBldGMuCisgICAgCisgICAgVGhpcyBmaXhlcyBhIHBvdGVudGlhbCBzZWdmYXVsdCB3aGVuIHNldHRpbmcgdGhlIGVudmlyb25tZW50IHZhcmlhYmxlCisgICAgRFBLR19NQUlOVFNDUklQVF9BUkNIIGZyb20gYSBwYWNrYWdlIHcvbyBhbiBBcmNoaXRlY3R1cmUgZmllbGQsIHdoaWNoCisgICAgYXJlIGEgdGhpbmcgZnJvbSB0aGUgZGlzdGFudCBwYXN0LCBidXQgc3RpbGwgc2hvdWxkIGJlIHN1cHBvcnRlZC4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAyICsrCisgZHBrZy1kZWIvYnVpbGQuYyB8ICAgIDYgKysrLS0tCisgbGliL2Rwa2cvcGFyc2UuYyB8ICAgIDYgKysrKy0tCisgc3JjL3Byb2Nlc3NhcmMuYyB8ICAgIDMgKy0tCisgNCBmaWxlcyBjaGFuZ2VkLCAxMCBpbnNlcnRpb25zKCspLCA3IGRlbGV0aW9ucygtKQorCitjb21taXQgYzQ4NDc1NDU4NDE1MzM1Yzg5NjlhMTFjZWEyMmJhODcwNDVjMmNmMworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBKYW4gMzEgMDc6MjQ6NTAgMjAxMSArMDEwMAorCisgICAgZHBrZzogUmVuYW1lIGFyY2ggdmFyaWFibGUgdG8gbmF0aXZlX2FyY2gKKyAgICAKKyAgICBUaGlzIGRpc2FtYmlndWF0ZXMgdGhlIHVzYWdlIGFuZCBhdm9pZHMgdW5uZWVkZWQgc2hhZG93aW5nLgorCisgc3JjL2VucXVpcnkuYyAgICB8ICAgIDIgKy0KKyBzcmMvbWFpbi5jICAgICAgIHwgICAgMiArLQorIHNyYy9tYWluLmggICAgICAgfCAgICAyICstCisgc3JjL3Byb2Nlc3NhcmMuYyB8ICAgIDQgKystLQorIDQgZmlsZXMgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCA1IGRlbGV0aW9ucygtKQorCitjb21taXQgMTQ2NmNkMTBlOGM1NTFmY2I2NzBmODc4NWVmMzlhYmFmYzY2ZDk5NgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBKYW4gMzEgMDc6MzY6NTYgMjAxMSArMDEwMAorCisgICAgbGliZHBrZzogQWRkIHR5cGUgZG9jdW1lbnRhdGlvbiB0byBzdHJ1Y3QgcGtnaW5mbworCisgbGliL2Rwa2cvZHBrZy1kYi5oIHwgICAgOCArKysrKysrLQorIDEgZmlsZXMgY2hhbmdlZCwgNyBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgNjk0YjRiNWFkZWQwNzdiNDNhYmQ0ZTBjZjVhODFjNzA0MDg5OWEyNAorTWVyZ2U6IGVlZGIyMGMgNWY1MmMwOAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBKYW4gMzEgMDY6MzM6MDEgMjAxMSArMDEwMAorCisgICAgTWVyZ2UgYnJhbmNoICdzcXVlZXplJyAodGhyb3VnaCB0YWcgJzEuMTUuOC4xMCcpCisgICAgCisgICAgQ29uZmxpY3RzOgorICAgIAlkZWJpYW4vY2hhbmdlbG9nCisKK2NvbW1pdCBlZWRiMjBjMTcwNzFlZmQ5MjExMmVkZjYwZjc0ZjlmNjM3YjRhYWVkCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IEphbiAyOSAwNjoxOToyOCAyMDExICswMTAwCisKKyAgICBsaWJkcGtnOiBDaGFuZ2UgbmV3X3BrZyB0byBiZSBhIHBvaW50ZXIgaW4gcGFyc2VkYigpCisgICAgCisgICAgVGhpcyB3YXkgYWxsIHZhcmlhYmxlcyBhcmUgaGFuZGxlZCB0aGUgc2FtZS4KKworIGxpYi9kcGtnL3BhcnNlLmMgfCAgIDM0ICsrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDE4IGluc2VydGlvbnMoKyksIDE2IGRlbGV0aW9ucygtKQorCitjb21taXQgZGEzNGI5ZjcwZWQwNzFmMTJlZmRmNDhhMDU3OWFlYTNlMTRjYzBiMgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBKYW4gMjkgMDY6MTY6MjggMjAxMSArMDEwMAorCisgICAgbGliZHBrZzogUmVuYW1lIG5ld3BpZy9uZXdwaWZwIHRvIG5ld19wa2cvbmV3X3BrZ2JpbiBpbiBwYXJzZWRiKCkKKyAgICAKKyAgICBUaGUgbmFtZXMgYmV0dGVyIG1hdGNoIHJlYWxpdHksIGFuZCBkZXNjcmliZSB0aGlzIGlzIHRoZSBuZXcgcGFja2FnZQorICAgIGluZm9ybWF0aW9uIGJlaW5nIHBhcnNlZC4gVGhlIHByZXZpb3VzIHVzYWdlIHdhcyBzbGlnaHRseSBjb25mdXNpbmcuCisKKyBsaWIvZHBrZy9wYXJzZS5jIHwgICAzOCArKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMjEgaW5zZXJ0aW9ucygrKSwgMTcgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA2YjdlYTg1ZjZjMTA5YjI0MWZlYmM1ZmYzYzJiZGNhZDU1ZjlmYjRlCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IEphbiAyOSAwNjoxMDoyMiAyMDExICswMTAwCisKKyAgICBsaWJkcGtnOiBSZW5hbWUgcGlncC9waWZwIHRvIGRiX3BrZy9kYl9wa2diaW4gaW4gcGFyc2VkYigpCisgICAgCisgICAgVGhlIG5hbWVzIGJldHRlciBtYXRjaCByZWFsaXR5LCBhbmQgZGVzY3JpYmUgdGhpcyBpcyBwYWNrYWdlIGluZm9ybWF0aW9uCisgICAgY29taW5nIGZyb20gdGhlIGRhdGFiYXNlLiBUaGUgcHJldmlvdXMgdXNhZ2Ugd2FzIHNsaWdodGx5IGNvbmZ1c2luZy4KKworIGxpYi9kcGtnL3BhcnNlLmMgfCAgIDE4ICsrKysrKysrKysrLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMTEgaW5zZXJ0aW9ucygrKSwgNyBkZWxldGlvbnMoLSkKKworY29tbWl0IGRmMjE5YTYwNzI4MjYxNDE2OGI2ZDE5NDIzZDU3YmI5MDIwMjFmMzQKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgSmFuIDI5IDA1OjU5OjA5IDIwMTEgKzAxMDAKKworICAgIFJlbmFtZSBhcmNoaXRlY3R1cmUgdmFyaWFibGVzIHRvIGFyY2gKKyAgICAKKyAgICBUaGUg4oCcYXJjaOKAnSBuYW1lIGlzIHVuYW1iaWd1b3VzIGluIHRoaXMgY29udGV4dCwgYW5kIGFzIHdlIGFyZSBnb2luZyB0bworICAgIGJlIHVzaW5nIGl0IG1vcmUgb2Z0ZW4sIGxldCdzIGF2b2lkIHVubmVjZXNzYXJ5IHR5cGluZy4KKworIGRwa2ctZGViL2J1aWxkLmMgICAgfCAgICAyICstCisgbGliL2Rwa2cvZGF0YWJhc2UuYyB8ICAgIDIgKy0KKyBsaWIvZHBrZy9kcGtnLWRiLmggIHwgICAgMiArLQorIGxpYi9kcGtnL3BhcnNlLmMgICAgfCAgICA0ICsrLS0KKyBzcmMvZW5xdWlyeS5jICAgICAgIHwgICAgMiArLQorIHNyYy9oZWxwLmMgICAgICAgICAgfCAgICAyICstCisgc3JjL21haW4uYyAgICAgICAgICB8ICAgIDIgKy0KKyBzcmMvbWFpbi5oICAgICAgICAgIHwgICAgMiArLQorIHNyYy9wcm9jZXNzYXJjLmMgICAgfCAgIDEwICsrKysrLS0tLS0KKyA5IGZpbGVzIGNoYW5nZWQsIDE0IGluc2VydGlvbnMoKyksIDE0IGRlbGV0aW9ucygtKQorCitjb21taXQgNDRlMDIyYTgwMWUwYjU3MjBhNmU4ZDY4ODc3ODhlYmYxNWI5OTk1ZgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBKYW4gMjAgMTg6NDE6MDkgMjAxMSArMDEwMAorCisgICAgVXNlIHBpZCBpbnN0ZWFkIG9mIGMxIGZvciB2YXJpYWJsZSBuYW1lCisKKyBkcGtnLWRlYi9leHRyYWN0LmMgfCAgICA4ICsrKystLS0tCisgZHBrZy1kZWIvaW5mby5jICAgIHwgICAgOCArKysrLS0tLQorIGRzZWxlY3QvbWV0aG9kLmNjICB8ICAgIDggKysrKy0tLS0KKyBzcmMvYXJjaGl2ZXMuYyAgICAgfCAgICA5ICsrKysrLS0tLQorIHNyYy9oZWxwLmMgICAgICAgICB8ICAgMTcgKysrKysrKysrLS0tLS0tLS0KKyBzcmMvcHJvY2Vzc2FyYy5jICAgfCAgIDE1ICsrKysrKysrLS0tLS0tLQorIDYgZmlsZXMgY2hhbmdlZCwgMzQgaW5zZXJ0aW9ucygrKSwgMzEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBhZDk1ZWUyMTAzMTJjMzhjMTJjNjA1NGUxM2RkNDVjMWE4ZmYxYzZjCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IEphbiAyMCAxODoyNjoyNiAyMDExICswMTAwCisKKyAgICBkc2VsZWN0OiBVc2Ugc3VicHJvY19jaGVjayBpbiBmYWxsaWJsZXN1YnByb2Nlc3MgaW5zdGVhZCBvZiBhZC1ob2MgY29kZQorCisgZHNlbGVjdC9tZXRob2QuY2MgfCAgIDIwICsrKy0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDE3IGRlbGV0aW9ucygtKQorCitjb21taXQgZWYzMzlmMzcxNTQxOGRkYWFiYjc5MjNhN2Q1MTU3ZjUyMjY4Nzk1NAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBKYW4gMjkgMDU6NTI6MzAgMjAxMSArMDEwMAorCisgICAgbGliZHBrZzogSW1wcm92ZSBzdWJwcm9jZXNzIHNpZ25hbCBoYW5kbGluZyBpbiBzdWJwcm9jX2NoZWNrKCkKKyAgICAKKyAgICBFeHBsaWNpdGx5IGhhbmRsZSB1c2VyIGludGVycnVwdGlvbiwgd2hpY2ggc2hvdWxkIGJlIHNsaWdodGx5IG1vcmUKKyAgICBoZWxwZnVsIGZvciB0aGUgdXNlciBhbmQgd2lsbCBhbGxvdyB0byB1c2Ugc3VicHJvY19jaGVjaygpIGluIGRzZWxlY3QncworICAgIGZhbGxpYmxlc3VicHJvY2VzcygpLiBJbXByb3ZlIHRvbyB0aGUgb3V0cHV0IHN0cmluZ3MuCisKKyBsaWIvZHBrZy9zdWJwcm9jLmMgfCAgICA4ICsrKysrKy0tCisgMSBmaWxlcyBjaGFuZ2VkLCA2IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA4OGUxY2YyNDJmYmFmOWMzNDcwOTk2NTZkMzRhZTUwNzUwZTVlMmExCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IEphbiAyMCAxODoyMzowMiAyMDExICswMTAwCisKKyAgICBsaWJkcGtnOiBXYXJuIHRvbyBvbiB1bmtub3duIHN0YXR1cyBpbiBzdWJwcm9jX2NoZWNrKCkgaWYgUFJPQ1dBUk4KKyAgICAKKyAgICBXZSB3ZXJlIGVycm9yaW5nIG91dCBldmVuIGlmIHRoZSBjYWxsZXIgc3BlY2lmaWVkIFBST0NXQVJOLCBzbyBoYW5kbGUKKyAgICB0aGlzIGVycm9yIGNhc2UgdG9vLgorCisgbGliL2Rwa2cvc3VicHJvYy5jIHwgICAgNCArKy0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBlNjE4MjRlM2U3ZDM3ZDBiNGZjZjFlMjEyOGI3MDkyOTJhMDg2N2NiCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IEphbiAyMCAxODoyMTozOCAyMDExICswMTAwCisKKyAgICBsaWJkcGtnOiBSZWZhY3RvciBlcnJvciBvdXRwdXQgaW50byBhIGZ1bmN0aW9uIHZhcmlhYmxlIGluIHN1YnByb2NfY2hlY2soKQorICAgIAorICAgIFRoaXMgZGVkdXBsaWNhdGVzIHR3byBzZXRzIG9mIGlkZW50aWNhbCBzdHJpbmdzLgorCisgbGliL2Rwa2cvc3VicHJvYy5jIHwgICAyNSArKysrKysrKysrKy0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAxMSBpbnNlcnRpb25zKCspLCAxNCBkZWxldGlvbnMoLSkKKworY29tbWl0IDVmMmU5NWVmMzk2NTg5OTFhYWRlN2IyMzU3OTc4YzcxM2JhZDdjYWUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgSmFuIDIwIDE4OjE2OjU2IDIwMTEgKzAxMDAKKworICAgIFVwZGF0ZSB1c2VydGFncworCisgZGViaWFuL3VzZXJ0YWdzIHwgICA4MSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDQ5IGluc2VydGlvbnMoKyksIDMyIGRlbGV0aW9ucygtKQorCitjb21taXQgNWY1MmMwODg1MmM2NzJlNDhjYTY3Y2NkZGIxN2M4M2M4ZDFmOWZlOAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBKYW4gMzAgMjA6Mjk6MDUgMjAxMSArMDEwMAorCisgICAgUmVsZWFzZSAxLjE1LjguMTAKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICA0ICsrLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDE5YTU3MWQ0MGZkYjNjZGJmZjhlYTM5MTBhYWFmZGNmNzA2YTE4OTIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gSmFuIDMwIDE5OjE0OjM3IDIwMTEgKzAxMDAKKworICAgIHUtYTogRml4IHNlZ2ZhdWx0IGluIC0tYXV0byBvbiBsaW5rIGdyb3VwcyB3aXRoIG9ubHkgZGFuZ2xpbmcgc3ltbGlua3MKKyAgICAKKyAgICBBbGwgdGhlIGludmFsaWQgYWx0ZXJuYXRpdmUgZW50cmllcyB3aWxsIGdldCByZW1vdmVkIHNvIGl0IG1pZ2h0IGhhcHBlbgorICAgIHRoYXQgdGhlIGxpbmsgZ3JvdXAgZW5kcyB1cCBlbXB0eS4gSGFuZGxlIHRoYXQgZXhwbGljaXRseSBvbiAtLWF1dG8uCisgICAgCisgICAgQ2xvc2VzOiAjNjExNTQ1CisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgfCAgICA3ICsrKysrKysKKyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmMgfCAgICA2ICsrKysrLQorIDIgZmlsZXMgY2hhbmdlZCwgMTIgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDNhNmYxYjVjMzBjODhiZjkwZTE5MWY4OTFjOWFhMDE1YTgyMzVjYWMKK01lcmdlOiBlYzJlYmNhIDZiZGY2NWIKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgSmFuIDI4IDA4OjQ5OjU1IDIwMTEgKzAxMDAKKworICAgIE1lcmdlIGNvbW1pdCAnMS4xNS44LjknCisKK2NvbW1pdCA2YmRmNjViYWZkYzZiMjVmZmQxY2FlMjdiNjg2MGQ4NGU1NjgyM2ExCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEphbiAyOCAwODoyMToxOSAyMDExICswMTAwCisKKyAgICBSZWxlYXNlIDEuMTUuOC45CisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMiArLQorIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgYmU4YjlmMmRkNmJjOTU5ZWM2MDViZjAxZTM3MmM4MDg5MDc5YWFkOQorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBKYW4gMjggMDg6MTg6MzAgMjAxMSArMDEwMAorCisgICAgRHJvcCBpbnN0YWxsLWluZm8gcmVsYXRlZCBCcmVha3MgZm9yIGVtYWNzIGFuZCBqZWQgcmVsYXRlZCBwYWNrYWdlcworICAgIAorICAgIEZvciBqZWQsIHRoZSBicmVha3MgaGFzIGJlZW4gcmVuZGVyZWQgdXNlbGVzcyBhcyB0aGUgbWFpbnRhaW5lcnMgZHJvcHBlZAorICAgIHRoZSBpbnN0YWxsLWluZm8gZGVwZW5kZW5jaWVzIGFueXdheS4KKyAgICAKKyAgICBGb3IgZW1hY3MsIFN2ZW4gSm9hY2hpbSByZXBvcnRlZCBzaW1pbGFyIHByb2JsZW1zIGFzIHdpdGggS29ucXVlcm9yLgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDMgKysrCisgZGViaWFuL2NvbnRyb2wgICB8ICAgIDYgKy0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDUgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAzOGI5NTliMjdhMTE1MzYzMzA3YWZhMTk4MGFkNjkxYWI1NzY4OTg2CitBdXRob3I6IFN0YW4gSW9hbi1FdWdlbiA8c3Rhbi5pZXVnZW5AZ21haWwuY29tPgorRGF0ZTogICBUdWUgSmFuIDI1IDE0OjE0OjUzIDIwMTEgKzAxMDAKKworICAgIFVwZGF0ZSBSb21hbmlhbiBkcGtnIHRyYW5zbGF0aW9uCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMSArCisgcG8vcm8ucG8gICAgICAgICB8ICAgMjEgKysrKysrKysrKysrKy0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAxNCBpbnNlcnRpb25zKCspLCA4IGRlbGV0aW9ucygtKQorCitjb21taXQgZjU4OWEwM2M2ZmNkOTM2MGQwMGNiNGIwODRkNTU3MDRjM2M4NzQ2ZgorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBKYW4gMjQgMjA6NDM6MTMgMjAxMSArMDEwMAorCisgICAgZGViaWFuL2NvbnRyb2w6IGRyb3AgQnJlYWtzIG9uIGtvbnF1ZXJvcgorICAgIAorICAgIFdpdGggdGhpcyBCcmVha3MsICJhcHQtZ2V0IGluc3RhbGwgdWRldiIgdGhhdCBpcyByZWNvbW1lbmRlZCBhdCB0aGUgc3RhcnQKKyAgICBvZiBhIGxlbm55LT5zcXVlZXplIHVwZ3JhZGUgbWlnaHQgcmVtb3ZlIHRoZSBrZGUgbWV0YXBhY2thZ2UuIFRoaXMgaXMKKyAgICBkdWUgdG8gdWRldiBuZWVkaW5nIGEgbmV3IHV0aWwtbGludXggdGhhdCBpdHNlbGYgbmVlZHMgYSBuZXdlciBkcGtnIChkdWUKKyAgICB0byB0aGUgaW5zdGFsbC1pbmZvIHRyYW5zaXRpb24pLgorICAgIAorICAgIEluIGNvbnRyYXN0LCB0aGUgbGFjayBvZiB0aGUgQnJlYWtzIGhhcyB2ZXJ5IG1pbmltYWwgY29uc2VxdWVuY2VzOiBwYXJ0aWFsCisgICAgdXBncmFkZXMgbWlnaHQgbm90IGluc3RhbGwgaW5zdGFsbC1pbmZvIGFuZCBpbiB0aGF0IGNhc2Uga29ucXVlcm9yIG1pZ2h0CisgICAgc2hvdyBhbiBvdXRkYXRlZCBsaXN0IG9mIGluZm8gcGFnZXMuCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgNSArKysrKworIGRlYmlhbi9jb250cm9sICAgfCAgICAyICstCisgMiBmaWxlcyBjaGFuZ2VkLCA2IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBmODBkZWM0YmYxNWM2MzQ5ZDA5Y2IwNzczYWIyMmUzMDlhZjg1M2U3CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIEphbiAyNCAyMDoyNTo1MiAyMDExICswMTAwCisKKyAgICBTdGFydCBuZXcgY2hhbmdlbG9nIGVudHJ5CisgICAgCisgICAgSW50ZWdyYXRlIGNoYW5nZWxvZyBlbnRyeSB0aGF0IGdvdCBhZGRlZCB0byB0aGUgcHJldmlvdXMgY2hhbmdlbG9nIGVudHJ5CisgICAgZm9yIGFuIGFscmVhZHkgcmVsZWFzZWQgdmVyc2lvbi4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgIDEwICsrKysrKystLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDcgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworY29tbWl0IGZkN2E2NWU3YWE1YTRmNDg5MTM4MTI3Yzk5YjgzMGIxN2FkYjRiMDIKK0F1dGhvcjogSm9yZGkgTWFsbGFjaCA8am9yZGlAZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IEphbiAyMiAxNDowNDo1MCAyMDExICswMTAwCisKKyAgICBSZW1vdmUgc3BhY2UgYmVmb3JlICLigKYiIGluIHNldmVyYWwgQ2F0YWxhbiBzdHJpbmdzIChKb3JkaSAgTWFsbGFjaCkuCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMyArKysKKyBwby9jYS5wbyAgICAgICAgIHwgICA0NCArKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgMjUgaW5zZXJ0aW9ucygrKSwgMjIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBlYzJlYmNhMmUyYjM1NTg5YjYwYTA0OTgwZTQ2NDEzNGMzYjg1ZjVjCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEphbiAyMSAxMzozMzozMyAyMDExICswMTAwCisKKyAgICBVcGRhdGUgdHJpZ2dlcnMgZG9jdW1lbnRhdGlvbiB0byBtYXRjaCByZWFsaXR5CisgICAgCisgICAgLSBUaGUgbGlzdCBvZiB0cmlnZ2VycyBpcyBpbiB0aGUgc2Vjb25kIHBhcmFtZXRlciBhbmQgbm90IGluIHRoZSB0aGlyZC4KKyAgICAtIFRoZSAtLXZlcmJvc2UgYW5kIC0tcXVlcnkgb3B0aW9ucyBmb3IgZHBrZy10cmlnZ2VyIGhhdmUgbmV2ZXIgYmVlbgorICAgICAgaW1wbGVtZW50ZWQuCisKKyBkb2MvdHJpZ2dlcnMudHh0IHwgICAgOCArKy0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCA2IGRlbGV0aW9ucygtKQorCitjb21taXQgN2I1NjE1MTM3ODQ0OTBkMDhjMGY4OTBiYTU4YTFhMmFhNjNjZjYyYgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBKYW4gMTYgMDc6MjM6NDEgMjAxMSArMDEwMAorCisgICAgZHBrZy1xdWVyeTogVXNlIG9oc2hpdCgpIGZvciBub3QgaW5zdGFsbGVkIHBhY2thZ2UgaW4gLS1jb250cm9sLXBhdGgKKyAgICAKKyAgICBUaGUgdXNlIG9mIGJhZHVzYWdlKCkgaGVyZSBpcyBub3QgYXBwcm9wcmlhdGUuCisKKyBzcmMvcXVlcnljbWQuYyB8ICAgIDIgKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDYyNjU2MGIzMTEzMzM3NmJmYjU1OTM3NzBiMmVlMWZjODM5MzFjMjkKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gSmFuIDE2IDA3OjIxOjE3IDIwMTEgKzAxMDAKKworICAgIGRwa2c6IERvIG5vdCBmYWlsIHdoZW4gdHJ5aW5nIHRvIHJlbW92ZSB0aGUgcm9vdCBkaXJlY3RvcnkKKyAgICAKKyAgICBUaGlzIHdpbGwgaGFwcGVuIHdoZW4gcmVtb3ZpbmcgdGhlIGxhc3QgcGFja2FnZSBmcm9tIGFuIGluc3RhbGxhdGlvbiwKKyAgICB3aGljaCBkb2VzIG5ldmVyIGhhcHBlbiBvbiBub3JtYWwgY29uZGl0aW9ucyBvbiBEZWJpYW4tYmFzZWQgc3lzdGVtcy4KKyAgICBCdXQgaXQgY2FuIGhhcHBlbiBlaXRoZXIgb24gb3RoZXIgZGlzdHJpYnV0aW9ucyB3aGVyZSBkcGtnIGlzIGEgZm9yZWlnbgorICAgIHBhY2thZ2UgbWFuYWdlciwgb3Igb24gdGVzdCBkYXRhYmFzZXMuCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMyArKysKKyBzcmMvcmVtb3ZlLmMgICAgIHwgICAxMCArKysrKysrKysrCisgMiBmaWxlcyBjaGFuZ2VkLCAxMyBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgZTYzZTFmYTRhNGFmZGY5ODg0N2YxM2YyNTA2YTBhZWVhNjhjMzNjNworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBKYW4gMTYgMDY6NTk6NTUgMjAxMSArMDEwMAorCisgICAgUHJvcGFnYXRlIC0tYWRtaW5kaXIgdG8gcHJvZ3JhbXMgcnVuIGZyb20gbWFpbnRhaW5lciBzY3JpcHRzCisgICAgCisgICAgQWx3YXlzIHNldCBEUEtHX0FETUlORElSIGZyb20gZHBrZyBzbyB0aGF0IGFsbCBzdWJwcm9jZXNzZXMgaW5oZXJpdAorICAgIHRoZSB2YXJpYWJsZSBhbmQgdGhlcmUncyBubyBwb3NzaWJsZSBzZWN1cml0eSByaXNrIGZyb20gYSB1c2VyIHByb2Nlc3MKKyAgICBzZXR0aW5nIHRoZSB2YXJpYWJsZSB0byB3cml0ZSBvbnRvIGEgdXNlciBjb250cm9sbGVkIGFyZWEuCisgICAgCisgICAgQXMgdXN1YWwsIHRoZSBvcmRlciBpbiB3aGljaCB0aGUgYWRtaW5kaXIgdmFsdWUgaXMgb3ZlcnJpZGRlbiBpcyB0aGUKKyAgICBmb2xsb3dpbmc6IGJ1aWx0LWluIGRlZmF1bHQsIGVudmlyb25tZW50IHZhcmlhYmxlIGFuZCBjb21tYW5kIGxpbmUKKyAgICBvcHRpb24uCisgICAgCisgICAgQ2xvc2VzOiAjOTcwNzYKKyAgICAKKyAgICBTdWdnZXN0ZWQtYnk6IEJyZW5kYW4gTydEZWEgPGJvZEBkZWJpYW4ub3JnPgorCisgVE9ETyAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMiAtLQorIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgICB8ICAgIDIgKysKKyBsaWIvZHBrZy9kYm1vZGlmeS5jICAgICAgICAgfCAgIDEyICsrKysrKysrKysrKworIGxpYi9kcGtnL2Rwa2ctZGIuaCAgICAgICAgICB8ICAgIDEgKworIG1hbi9kcGtnLWRpdmVydC44ICAgICAgICAgICB8ICAgIDQgKysrKworIG1hbi9kcGtnLXF1ZXJ5LjEgICAgICAgICAgICB8ICAgIDQgKysrKworIG1hbi9kcGtnLXN0YXRvdmVycmlkZS44ICAgICB8ICAgIDYgKysrKysrCisgbWFuL2Rwa2ctdHJpZ2dlci4xICAgICAgICAgIHwgICAgNiArKysrKysKKyBtYW4vdXBkYXRlLWFsdGVybmF0aXZlcy44ICAgfCAgICA2ICsrKysrKworIHNyYy9kaXZlcnRjbWQuYyAgICAgICAgICAgICB8ICAgIDQgKysrLQorIHNyYy9tYWluLmMgICAgICAgICAgICAgICAgICB8ICAgMTMgKysrKy0tLS0tLS0tLQorIHNyYy9xdWVyeWNtZC5jICAgICAgICAgICAgICB8ICAgIDQgKysrLQorIHNyYy9zdGF0Y21kLmMgICAgICAgICAgICAgICB8ICAgIDQgKysrLQorIHNyYy90cmlnY21kLmMgICAgICAgICAgICAgICB8ICAgIDQgKysrLQorIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYyB8ICAgMjEgKysrKysrKysrKysrKysrKysrKystCisgMTUgZmlsZXMgY2hhbmdlZCwgNzcgaW5zZXJ0aW9ucygrKSwgMTYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA3NmVkNWY5ZmY0M2IxYzgwMzA5OGZmZDE1ODQzYjlhY2M3MjE2MDhlCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIEphbiAxNiAwNjozMTowOCAyMDExICswMTAwCisKKyAgICBVc2Ugc3RyaW5nIGxpdGVyYWxzIGluc3RlYWQgb2YgbWFjcm9zIGZvciBlbnZpcm9ubWVudCB2YXJpYWJsZSBuYW1lcworICAgIAorICAgIFRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZSBuYW1lcyBhcmUgcGFydCBvZiB0aGUgZXhwb3NlZCBBUEksIGFuZCBhcyBzdWNoCisgICAgd291bGQgbmVlZCBhIHRyYW5zaXRpb24gcGxhbiBpbiBjYXNlIG9mIG5hbWUgY2hhbmdlLiBJbmxpbmUgdGhlIG1hY3JvCisgICAgdmFsdWVzIHRvIGVhc2UgY29kZSByZWFkaW5nLgorCisgbGliL2Rwa2cvY29tbWFuZC5jIHwgICAgMiArLQorIGxpYi9kcGtnL2Rwa2cuaCAgICB8ICAgIDcgLS0tLS0tLQorIHNyYy9jb25maWd1cmUuYyAgICB8ICAgIDIgKy0KKyBzcmMvZGl2ZXJ0Y21kLmMgICAgfCAgICAyICstCisgc3JjL2hlbHAuYyAgICAgICAgIHwgICAgOCArKysrLS0tLQorIHNyYy90cmlnY21kLmMgICAgICB8ICAgIDIgKy0KKyA2IGZpbGVzIGNoYW5nZWQsIDggaW5zZXJ0aW9ucygrKSwgMTUgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA3ZGM4Y2E4YTI3MGI1OTcwZjY1NzFiNGQzNTdhMTIwOGQ3Yjk4YmJmCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIEphbiAxNiAwNjoyMzozNiAyMDExICswMTAwCisKKyAgICBidWlsZDogRG8gbm90IHNldCBNS1NQTElUU0NSSVBUIENQUCBtYWNybworICAgIAorICAgIE5vdCBuZWVkZWQgYW55bW9yZSBzaW5jZSB0aGUgcmV3cml0ZSBpbiBDIG9mIG1rc3BsaXQuCisgICAgCisgICAgTWlzc2VkIGluIGNvbW1pdCBmMjExNTE1MWMxOWZmMzdiMzA1Mjk2YzIzMjI1ODA3YjA4MzIwODZiLgorCisgZHBrZy1zcGxpdC9NYWtlZmlsZS5hbSB8ICAgIDIgKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGY1MjgwMzA1ODNkNjA1OWZhNjBhZTAyZGExODdlMzliZTFmZDk3NGMKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgSmFuIDE1IDE2OjU3OjM3IDIwMTEgKzAxMDAKKworICAgIGRwa2c6IENoYW5nZSB3YW50dG9pbnN0YWxsKCkgcmV0dXJuIHR5cGUgZnJvbSBpbnQgdG8gYm9vbAorCisgc3JjL2FyY2hpdmVzLmMgfCAgIDI0ICsrKysrKysrKysrKy0tLS0tLS0tLS0tLQorIHNyYy9tYWluLmggICAgIHwgICAgMiArLQorIDIgZmlsZXMgY2hhbmdlZCwgMTMgaW5zZXJ0aW9ucygrKSwgMTMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBmMTE0YjU2N2RkY2Q5MmY5ZmFkMDk0YjlmM2NhMTI4MGFmZmMzMWE5CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IEphbiAxNSAxNjo1MzozMiAyMDExICswMTAwCisKKyAgICBkcGtnOiBGaXggd2FudHRvaW5zdGFsbCgpIHRvIHVzZSB0aGUgbmV3IHZlcnNpb24gZnJvbSBwa2ctPmF2YWlsYWJsZQorICAgIAorICAgIFRoZSBjb2RlIHdhcyBtaXhpbmcgdXNhZ2VzIG9mIHRoZSBhcmd1bWVudCB2ZXIsIHdpdGggcHJpbnRpbmcgZnJvbQorICAgIHBrZy0+YXZhaWxhYmxlLnZlcnNpb24sIHdoaWNoIGlzIHJhdGhlciBjb25mdXNpbmcuIEp1c3QgdXNlIHRoZQorICAgIGF2YWlsYWJsZSBhbmQgaW5zdGFsbGVkIHBrZyBtZW1iZXJzIGluc3RlYWQuCisgICAgCisgICAgVGhpcyBhbHNvIHdpbGwgZ3VhcmFudGVlIHdlJ2xsIG5ldmVyIGdldCBhIE5VTEwgdmVyc2lvbi4KKworIHNyYy9hcmNoaXZlcy5jICAgfCAgIDEyICsrKysrLS0tLS0tLQorIHNyYy9tYWluLmggICAgICAgfCAgICAyICstCisgc3JjL3Byb2Nlc3NhcmMuYyB8ICAgIDIgKy0KKyAzIGZpbGVzIGNoYW5nZWQsIDcgaW5zZXJ0aW9ucygrKSwgOSBkZWxldGlvbnMoLSkKKworY29tbWl0IDMxMzNhYWU2N2VlOWU0ZjY5M2ExMjFiOTU3OGJmZmMwZTBmYTg0NjkKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgSmFuIDE1IDE2OjQyOjM5IDIwMTEgKzAxMDAKKworICAgIGRwa2c6IEFsd2F5cyBzYXkgd2h5IGluIHdhbnR0b2luc3RhbGwoKQorICAgIAorICAgIFRoZXJlJ3MganVzdCBvbmUgY2FsbGVyIGFuZCBpdCBhbHdheXMgcmVxdWVzdHMgdG8gc2F5IHdoeSB3ZSBhcmUKKyAgICBpbnN0YWxsaW5nLiBTbyByZW1vdmUgdGhpcyB1bm5lZWRlZCBsb2dpYy4KKworIHNyYy9hcmNoaXZlcy5jICAgfCAgIDQ2ICsrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBzcmMvbWFpbi5oICAgICAgIHwgICAgMyArLS0KKyBzcmMvcHJvY2Vzc2FyYy5jIHwgICAgMiArLQorIDMgZmlsZXMgY2hhbmdlZCwgMjEgaW5zZXJ0aW9ucygrKSwgMzAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBhY2IwM2RjNjY5OTU3YjNlNGY0NDEyYmM1M2JkMjAxYTFiZmU1MjhiCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IEphbiAxNSAwNzowMDoyNiAyMDExICswMTAwCisKKyAgICBBZGQgc3BlbGxpbmcgZml4IGZvciBqZnNAZGViaWFuLm9yZyB0byAubWFpbG1hcAorCisgLm1haWxtYXAgfCAgICAxICsKKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IGY5MzhlNmZkMTIyMzhlNDNjZmIwMjU0MDc5NDczOTA5N2M5ZTE1MzAKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgSmFuIDE0IDE4OjAzOjUyIDIwMTEgKzAxMDAKKworICAgIGxpYmRwa2c6IFVzZSBhIHZhcmJ1ZiBmb3IgdGhlIGZpZWxkX3N0YXRlIHZhbHVlCisgICAgCisgICAgVGhpcyBzaG91bGQgcmVkdWNlIHRoZSBhbW91bnQgb2YgbV9yZWFsbG9jKCkgY2FsbHMgZG9uZSB3aGVuIHBhcnNpbmcsCisgICAgYXMgdGhlIHZhcmJ1ZiBrZWVwcyB0cmFjayBvZiB0aGUgbWVtb3J5IGFsbG9jYXRlZCBhbmQgZG9lcyBub3QgYWx0ZXJuYXRlCisgICAgcmVkdWNpbmcgYW5kIGdyb3dpbmcgdGhlIGJ1ZmZlciB1bm5lY2Vzc2FyaWx5LgorICAgIAorICAgIEl0IG1pZ2h0IGFsbG93IGluIHRoZSBmdXR1cmUgdG8gYXZvaWQgY29weWluZyBhcm91bmQgdGhlIGZpZWxkIHZhbHVlCisgICAgc3RyaW5nIGp1c3QgdG8gYmUgYWJsZSB0byBhcHBlbmQgYSBOVUwgY2hhcmFjdGVyLgorCisgbGliL2Rwa2cvcGFyc2UuYyB8ICAgMTIgKysrKysrLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA2IGluc2VydGlvbnMoKyksIDYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA1ZjJiNGE0NjMyNjczODE1NGJkZDQ3ZGY5MWIzZTExMGM1NWViZDI4CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEphbiAxNCAxODowMDo1NyAyMDExICswMTAwCisKKyAgICBsaWJkcGtnOiBNb3ZlIGZpZWxkIG1hdGNoaW5nIGludG8gZm9yICg7OykgYm9kaWVzIGluIHBrZ19wYXJzZV9maWVsZCgpCisgICAgCisgICAgVGhlIGN1cnJlbnQgY29kZSBpcyBwZXJmb3JtaW5nIHRoZSBmaWVsZCBtYXRjaGluZyBpbiB0aGUgZm9yICg7OykKKyAgICBjb25kaXRpb25hbCwgd2hpY2ggaW1wbGllcyBhbmQgZW1wdHkgZm9yICg7OykgYm9keSBhbmQgbmVlZHMgaW52ZXJ0ZWQKKyAgICBsb2dpYyB0byB3b3JrLiBNb3ZlIHRoZSBtYXRjaGluZyBpbnRvIHRoZSBib2R5IGFzIHRoYXQncyB0aGUgbW9yZQorICAgIG5hdHVyYWwgcGxhY2UgZm9yIGl0IHRvIGJlIGFuZCBlYXNpZXIgdG8gcmVhZC4KKworIGxpYi9kcGtnL3BhcnNlLmMgfCAgIDEzICsrKysrKystLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDcgaW5zZXJ0aW9ucygrKSwgNiBkZWxldGlvbnMoLSkKKworY29tbWl0IDM2ZDc2MjQxNGI3ZjI0NGE0ODQ2NDQzNjQ0ZTRkMmU2NGM3MWE1OGEKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgSmFuIDE0IDA3OjQzOjA0IDIwMTEgKzAxMDAKKworICAgIGxpYmRwa2c6IFJlZmFjdG9yIHBrZ19wYXJzZV9maWVsZCgpIG91dCBmcm9tIHBhcnNlZGIoKQorCisgbGliL2Rwa2cvcGFyc2UuYyB8ICAxNDQgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDg0IGluc2VydGlvbnMoKyksIDYwIGRlbGV0aW9ucygtKQorCitjb21taXQgNThkZjAyZjlkMzljMWU3YjFjN2Y0OTAyNmE2NDlmMTI1Yjg3MTQwZAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBKYW4gMTQgMDc6MTI6NTEgMjAxMSArMDEwMAorCisgICAgbGliZHBrZzogUmVmYWN0b3IgcGtnX3BhcnNlX2NvcHkoKSBvdXQgZnJvbSBwYXJzZWRiKCkKKworIGxpYi9kcGtnL3BhcnNlLmMgfCAgMTAwICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA1NyBpbnNlcnRpb25zKCspLCA0MyBkZWxldGlvbnMoLSkKKworY29tbWl0IDA1NWNhODk1YjNkZTI2YzExN2JkNjE5Nzg1Y2YwNTU4MGM5ZGNjNTUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgSmFuIDE0IDA2OjU2OjEyIDIwMTEgKzAxMDAKKworICAgIGxpYmRwa2c6IFJlZHVjZSB2YXJpYWJsZSBzY29wZSBpbiBwYXJzZWRiKCkKKworIGxpYi9kcGtnL3BhcnNlLmMgfCAgIDEwICsrKysrKystLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDcgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworY29tbWl0IDI4MGY0YTU1YjY0OTAzNWFlNzIwOTNjODBlZGM5MTI4OTU5NGUxMTEKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgSmFuIDE0IDA2OjQ5OjMzIDIwMTEgKzAxMDAKKworICAgIGxpYmRwa2c6IFJlZmFjdG9yIHBrZ19wYXJzZV92ZXJpZnkoKSBvdXQgZnJvbSBwYXJzZWRiKCkKKworIGxpYi9kcGtnL3BhcnNlLmMgfCAgMTY3ICsrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgODcgaW5zZXJ0aW9ucygrKSwgODAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBjYThhNGJhY2UyYzU5NjE4YWE3OGE0ODhkYmQwYjMwOTYwMDk4NTBkCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEphbiAxNCAwNjowMjoyNiAyMDExICswMTAwCisKKyAgICBVcGRhdGUgVE9ETyBsaXN0CisKKyBUT0RPIHwgICAgNiArKy0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKKworY29tbWl0IGRlNTUzZTI3NDY0NWM1OGIxYjQ1MTk3ZDk2MmRhMTVlNzJjMWUyNGMKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgSmFuIDE0IDAxOjEwOjAwIDIwMTEgKzAxMDAKKworICAgIFJlbmFtZSBzdHJ1Y3QgcGtnaW5mb3BlcmZpbGUgdG8gc3RydWN0IHBrZ2JpbgorCisgZHNlbGVjdC9wa2dkZXBjb24uY2MgICAgICB8ICAgMTMgKysrLS0KKyBkc2VsZWN0L3BrZ2xpc3QuY2MgICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcGtnbGlzdC5oICAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wa2d0b3AuY2MgICAgICAgICB8ICAgIDIgKy0KKyBsaWIvZHBrZy9kYXRhYmFzZS5jICAgICAgIHwgICAgOCArKy0tCisgbGliL2Rwa2cvZHBrZy1kYi5oICAgICAgICB8ICAgMjUgKysrKysrLS0tLQorIGxpYi9kcGtnL2R1bXAuYyAgICAgICAgICAgfCAgMTE0ICsrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLQorIGxpYi9kcGtnL2ZpZWxkcy5jICAgICAgICAgfCAgIDk0ICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0KKyBsaWIvZHBrZy9saWJkcGtnLlZlcnNpb25zIHwgICAgMiArLQorIGxpYi9kcGtnL3BhcnNlLmMgICAgICAgICAgfCAgICA4ICsrLS0KKyBsaWIvZHBrZy9wYXJzZWR1bXAuaCAgICAgIHwgICAgNiArLQorIGxpYi9kcGtnL3BrZy1mb3JtYXQuYyAgICAgfCAgICAyICstCisgbGliL2Rwa2cvcGtnLWZvcm1hdC5oICAgICB8ICAgIDIgKy0KKyBsaWIvZHBrZy92ZXJjbXAuYyAgICAgICAgIHwgICAgMiArLQorIHNyYy9hcmNoaXZlcy5jICAgICAgICAgICAgfCAgICA0ICstCisgc3JjL2NsZWFudXAuYyAgICAgICAgICAgICB8ICAgIDIgKy0KKyBzcmMvaGVscC5jICAgICAgICAgICAgICAgIHwgICAgMiArLQorIHNyYy9wcm9jZXNzYXJjLmMgICAgICAgICAgfCAgICAyICstCisgc3JjL3JlbW92ZS5jICAgICAgICAgICAgICB8ICAgIDIgKy0KKyAxOSBmaWxlcyBjaGFuZ2VkLCAxNzcgaW5zZXJ0aW9ucygrKSwgMTE3IGRlbGV0aW9ucygtKQorCitjb21taXQgMjI3NmM2YTU5YzgwYTBkMjU1OGIzNDkyMDMzMTBiYjgzM2JkZDkwOQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBKYW4gMTQgMDE6MDQ6MzIgMjAxMSArMDEwMAorCisgICAgZHNlbGVjdDogUmVtb3ZlIGkyaW5mbygpIGRlY2xhcmF0aW9uIHcvbyBtYXRjaGluZyBkZWZpbml0aW9uCisKKyBkc2VsZWN0L3BrZ2xpc3QuaCB8ICAgIDIgLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDAgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDIxMzA2YzRmOWU0N2MxZTc3YzIzYWU4MWNlNDJlYjFjZjhkMmI5NjIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgTm92IDEzIDAzOjU4OjE1IDIwMDkgKzAxMDAKKworICAgIGRwa2c6IFJlZmFjdG9yIHBhY2thZ2UgYXV0aGVudGljYXRpb24gaW50byBkZWJfdmVyaWZ5KCkKKworIHNyYy9wcm9jZXNzYXJjLmMgfCAgIDU5ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMzUgaW5zZXJ0aW9ucygrKSwgMjQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBhNmQ3ZDQ4NGI1ZmMxNDBhYTQ0NzE1MzU2OTBlNzM0OTAwZDFlNGE2CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIE5vdiAxMyAwMzo1Njo1MyAyMDA5ICswMTAwCisKKyAgICBkcGtnOiBSZWZhY3RvciByZWFzc2VtYmxpbmcgYSBzcGxpdCBwYWNrYWdlIGludG8gZGViX3JlYXNzZW1ibGUoKQorCisgc3JjL3Byb2Nlc3NhcmMuYyB8ICAgODEgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA0OCBpbnNlcnRpb25zKCspLCAzMyBkZWxldGlvbnMoLSkKKworY29tbWl0IGY0YjBkZDA0NTZhZjc0ZWRlYTJmMTE3NDIzZTRiMmE5OTU5ZThlNTkKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgSmFuIDEyIDAxOjI0OjU4IDIwMTEgKzAxMDAKKworICAgIFVzZSBtX2FzcHJpbnRmKCkgaW5zdGVhZCB2YXJidWZfcHJpbnRmKCkgZm9yIG9uZS1vZmYgc3RyaW5ncworICAgIAorICAgIFdoZW4gdGhlIHN0cmluZyBpcyBvbmx5IGNyZWF0ZWQgb25jZSwgdXNlZCBzZXZlcmFsIHRpbWVzIGFuZCB0aGVuCisgICAgZnJlZWQsIHRoZXJlJ3Mgbm8gbXVjaCBwb2ludCBpbiB1c2luZyBhIHZhcmJ1ZiBpbnN0ZWFkIG9mIHRoZSBzaW1wbGVyCisgICAgbV9hc3ByaW50ZigpLiBUaGUgZm9ybWVyIG5lZWRzIG1vcmUgc3RhdGUgYW5kIG1ha2VzIHVzaW5nIHRoZSBzdHJpbmcKKyAgICBzbGlnaHRseSBtb3JlIGN1bWJlcnNvbWUuIFVzaW5nIG1fYXNwcmludGYoKSBzaG91bGQgYmUgc2xpZ2h0bHkgZmFzdGVyCisgICAgdG9vLCBidXQgbm90IHNpZ25pZmljYW50bHkgZW5vdWdoIHRvIGp1c3RpZnkgdGhpcyBjaGFuZ2UgYnkgaXRzZWxmLgorCisgZHBrZy1kZWIvYnVpbGQuYyAgICB8ICAgMjAgKysrKysrKystLS0tLS0tLQorIGRwa2ctc3BsaXQvc3BsaXQuYyAgfCAgIDExICsrKystLS0tLQorIGxpYi9kcGtnL2RibW9kaWZ5LmMgfCAgIDEyICsrKysrLS0tLS0KKyBsaWIvZHBrZy9kaXIuYyAgICAgIHwgICAxNSArKysrKystLS0tLS0tCisgbGliL2Rwa2cvcGF0aC5jICAgICB8ICAgIDggKysrLS0tCisgbGliL2Rwa2cvdHJpZ2xpYi5jICB8ICAgMTIgKysrKystLS0tLQorIHNyYy9kaXZlcnRjbWQuYyAgICAgfCAgIDU4ICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgNyBmaWxlcyBjaGFuZ2VkLCA2NiBpbnNlcnRpb25zKCspLCA3MCBkZWxldGlvbnMoLSkKKworY29tbWl0IDg4MWQ2MmIyMzZiNTJjMzVhMzY3YzQ5YzM3MzdjMmI0ZGZkYjdlZGUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgSmFuIDEyIDAxOjIwOjA4IDIwMTEgKzAxMDAKKworICAgIFVzZSBtX2FzcHJpbnRmKCkgaW5zdGVhZCBvZiBidWlsZGluZyB0aGUgc3RyaW5ncyBwaWVjZSBieSBwaWVjZQorICAgIAorICAgIFRoaXMgaXMgd2F5IG1vcmUgY29tcGFjdCwgdGhlIHN0cmluZ3MgYXJlIGZvciB0ZW1wb3JhcnkgdmFsdWVzLCBhbmQgdGhlCisgICAgbWluaW1hbCBwb3NzaWJsZSBwZXJmb3JtYW5jZSBkaWZmZXJlbmNlIGRvZXMgbm90IG1hdHRlciBoZXJlLgorCisgc3JjL3N0YXRjbWQuYyB8ICAgMzggKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDE0IGluc2VydGlvbnMoKyksIDI0IGRlbGV0aW9ucygtKQorCitjb21taXQgNzZhNmViZTEyYzVmZTFkODE5OWNhNDA3MjkxNTExODE5N2U2Yjk4YQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBKYW4gMTIgMDA6Mjg6NTUgMjAxMSArMDEwMAorCisgICAgVXNlIG1fYXNwcmludGYoKSBpbnN0ZWFkIG9mIG5mbWFsbG9jKCkgYW5kIHN0cmluZyBvcGVyYXRpb25zCisgICAgCisgICAgVGhpcyBhdm9pZCB0aGUgbmVlZCB0byBrbm93IHRoZSByZXN1bHRpbmcgc3RyaW5nIGxlbmd0aCBiZWZvcmVoYW5kLCBhbmQKKyAgICBtYWtlcyBzdXJlIGl0J3MgYWx3YXlzIGdvaW5nIHRvIGdldCB0aGUgcmlnaHQgc2l6ZS4gSXQgYWxzbyBtYWtlcyB0aGUKKyAgICBjb2RlIHdheSBjbGVhcmVyLgorICAgIAorICAgIFVzYWdlIG9mIG5mbWFsbG9jKCkgaGVyZSB3YXMgbm90IGFwcHJvcHJpYXRlIGFueXdheSwgYXMgdGhlIHZhcmlhYmxlcworICAgIGFyZSBvbmx5IG9mIHRlbXBvcmFyeSB1c2UsIHNvIHN3aXRjaGluZyB0byBub3JtYWwgYWxsb2NhdGlvbiBnaXZlcworICAgIGEgc2lkZS1lZmZlY3Qg4oCcYnVn4oCdIGZpeC4KKworIGRwa2ctc3BsaXQvcXVldWUuYyB8ICAgMTEgKysrKysrLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDYgaW5zZXJ0aW9ucygrKSwgNSBkZWxldGlvbnMoLSkKKworY29tbWl0IDYxODU1NDVhNzkzNjQ3OGY4YjJjY2U3MTUzZDdlODgwYjNiNWRmNWIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgSmFuIDEyIDAwOjI3OjExIDIwMTEgKzAxMDAKKworICAgIFVzZSBtX2FzcHJpbnRmKCkgaW5zdGVhZCBvZiBtX21hbGxvYygpIGFuZCBzdHJpbmcgb3BlcmF0aW9ucworICAgIAorICAgIFRoaXMgYXZvaWQgdGhlIG5lZWQgdG8ga25vdyB0aGUgcmVzdWx0aW5nIHN0cmluZyBsZW5ndGggYmVmb3JlaGFuZCwgYW5kCisgICAgbWFrZXMgc3VyZSBpdCdzIGFsd2F5cyBnb2luZyB0byBnZXQgdGhlIHJpZ2h0IHNpemUuIEl0IGFsc28gbWFrZXMgdGhlCisgICAgY29kZSB3YXkgY2xlYXJlci4KKworIGxpYi9kcGtnL2RibW9kaWZ5LmMgfCAgICA5ICsrLS0tLS0tLQorIGxpYi9kcGtnL2R1bXAuYyAgICAgfCAgICA2ICsrLS0tLQorIGxpYi9kcGtnL215b3B0LmMgICAgfCAgIDIzICsrKysrKystLS0tLS0tLS0tLS0tLS0tCisgbGliL2Rwa2cvdGFyZm4uYyAgICB8ICAgIDYgKystLS0tCisgc3JjL2FyY2hpdmVzLmMgICAgICB8ICAgIDUgKystLS0KKyBzcmMvbWFpbi5jICAgICAgICAgIHwgICAxMCArKystLS0tLS0tCisgc3JjL3Byb2Nlc3NhcmMuYyAgICB8ICAgIDcgKystLS0tLQorIDcgZmlsZXMgY2hhbmdlZCwgMjAgaW5zZXJ0aW9ucygrKSwgNDYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBkOWJlNDc3ZDBmMGIxN2I2MWM4ZGJjNDA0NTdkMWI1MDBjOTAwMzVmCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIEphbiAxMSAyMjoyNjozMyAyMDExICswMTAwCisKKyAgICBsaWJkcGtnOiBDYWxsIHZhX2VuZCgpIGp1c3QgYWZ0ZXIgdnNucHJpbnRmKCkgaW4gcGFyc2VfZGJfdmVyc2lvbigpCisgICAgCisgICAgTm8gbmVlZCB0byBsZWFrIGluIGNhc2Ugb2YgcmVjb3ZlcmFibGUgZXJyb3IuCisKKyBsaWIvZHBrZy9wYXJzZWhlbHAuYyB8ICAgIDMgKy0tCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAzOGE4NmUwNmZkNDU5Y2I5NGY3NWRkMDM3MGNhYzNlMDRjZGZmNjg1CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIEphbiAxMSAyMjowNDozMSAyMDExICswMTAwCisKKyAgICBsaWJkcGtnOiBBZGQgbmV3IG1fYXNwcmludGYoKSBmdW5jdGlvbgorCisgbGliL2Rwa2cvZHBrZy5oICAgICAgICAgICB8ICAgIDEgKworIGxpYi9kcGtnL2xpYmRwa2cuVmVyc2lvbnMgfCAgICAxICsKKyBsaWIvZHBrZy9tbGliLmMgICAgICAgICAgIHwgICAxOCArKysrKysrKysrKysrKysrKysKKyAzIGZpbGVzIGNoYW5nZWQsIDIwIGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA3OTVkMDdkMmY3NzNiZDA1ZDIzZDVmMjViZjEzMzRiZDBmM2Q0ZmI1CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIEphbiAxMCAyMDo1MToxMyAyMDExICswMTAwCisKKyAgICBsaWJkcGtnOiBSZW5hbWUgdmFyYnVmdnByaW50ZigpIHRvIHZhcmJ1Zl92cHJpbnRmKCkKKyAgICAKKyAgICBNYWtlIHRoZSB2YXJidWYgQVBJIGEgYml0IG1vcmUgY29uc2lzdGVudC4KKworIGxpYi9kcGtnL2J1ZmZlci5jICAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvY29tcHJlc3MuYyAgICAgICB8ICAgIDQgKystLQorIGxpYi9kcGtnL2xpYmRwa2cuVmVyc2lvbnMgfCAgICAyICstCisgbGliL2Rwa2cvbG9nLmMgICAgICAgICAgICB8ICAgIDQgKystLQorIGxpYi9kcGtnL3ZhcmJ1Zi5jICAgICAgICAgfCAgICA0ICsrLS0KKyBsaWIvZHBrZy92YXJidWYuaCAgICAgICAgIHwgICAgMiArLQorIDYgZmlsZXMgY2hhbmdlZCwgOSBpbnNlcnRpb25zKCspLCA5IGRlbGV0aW9ucygtKQorCitjb21taXQgYWY0N2QwNjYwZTFjMTc3MTk5OWU2NGU0YjU0ZTk3MDMxYzM0NTA1MworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBKYW4gMTAgMjA6NDY6MTggMjAxMSArMDEwMAorCisgICAgbGliZHBrZzogUmVuYW1lIHZhcmJ1ZnByaW50ZigpIHRvIHZhcmJ1Zl9wcmludGYoKQorICAgIAorICAgIE1ha2UgdGhlIHZhcmJ1ZiBBUEkgYSBiaXQgbW9yZSBjb25zaXN0ZW50LgorCisgZHBrZy1kZWIvYnVpbGQuYyAgICAgICAgICB8ICAgMTYgKysrKystLS0tLQorIGRwa2ctc3BsaXQvc3BsaXQuYyAgICAgICAgfCAgIDIwICsrKysrKy0tLS0tLQorIGxpYi9kcGtnL2RibW9kaWZ5LmMgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvZGlyLmMgICAgICAgICAgICB8ICAgIDIgKy0KKyBsaWIvZHBrZy9saWJkcGtnLlZlcnNpb25zIHwgICAgMiArLQorIGxpYi9kcGtnL3BhcnNlaGVscC5jICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvcGF0aC5jICAgICAgICAgICB8ICAgIDIgKy0KKyBsaWIvZHBrZy9wa2ctZm9ybWF0LmMgICAgIHwgICAgNiArKy0tCisgbGliL2Rwa2cvdGVzdC90LXZhcmJ1Zi5jICB8ICAgIDYgKystLQorIGxpYi9kcGtnL3RyaWdsaWIuYyAgICAgICAgfCAgICA2ICsrLS0KKyBsaWIvZHBrZy92YXJidWYuYyAgICAgICAgIHwgICAgNCArKy0KKyBsaWIvZHBrZy92YXJidWYuaCAgICAgICAgIHwgICAgMiArLQorIHNyYy9kZXBjb24uYyAgICAgICAgICAgICAgfCAgICAyICstCisgc3JjL2RpdmVydGNtZC5jICAgICAgICAgICB8ICAgMzIgKysrKysrKysrKy0tLS0tLS0tLS0KKyBzcmMvcGFja2FnZXMuYyAgICAgICAgICAgIHwgICA3MSArKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDE1IGZpbGVzIGNoYW5nZWQsIDg3IGluc2VydGlvbnMoKyksIDg4IGRlbGV0aW9ucygtKQorCitjb21taXQgNjZiMzE2ZDA4YTY0YjhmNWU2NGY1M2Q3MWUyNjcwMjRmYjJmNjg4NAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBKYW4gMTAgMTc6MDY6MjUgMjAxMSArMDEwMAorCisgICAgbGliZHBrZzogUmVuYW1lIHZhcmJ1ZmFkZGJ1ZigpIHRvIHZhcmJ1Zl9hZGRfYnVmKCkKKyAgICAKKyAgICBNYWtlIHRoZSB2YXJidWYgQVBJIGEgYml0IG1vcmUgY29uc2lzdGVudC4KKworIGxpYi9kcGtnL2J1ZmZlci5jICAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvZmllbGRzLmMgICAgICAgICB8ICAgIDYgKysrLS0tCisgbGliL2Rwa2cvbGliZHBrZy5WZXJzaW9ucyB8ICAgIDIgKy0KKyBsaWIvZHBrZy9wa2ctZm9ybWF0LmMgICAgIHwgICAgMiArLQorIGxpYi9kcGtnL3Rlc3QvdC12YXJidWYuYyAgfCAgIDEyICsrKysrKy0tLS0tLQorIGxpYi9kcGtnL3ZhcmJ1Zi5jICAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvdmFyYnVmLmggICAgICAgICB8ICAgIDQgKystLQorIHNyYy9hcmNoaXZlcy5jICAgICAgICAgICAgfCAgICAyICstCisgc3JjL2NvbmZpZ3VyZS5jICAgICAgICAgICB8ICAgIDIgKy0KKyBzcmMvaGVscC5jICAgICAgICAgICAgICAgIHwgICAgMiArLQorIDEwIGZpbGVzIGNoYW5nZWQsIDE4IGluc2VydGlvbnMoKyksIDE4IGRlbGV0aW9ucygtKQorCitjb21taXQgOTFjMzUxNWMyNDQ0NDgzNjMzZTBiYjUyYWU1NzU3NzVjMzc2NTIzMAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBKYW4gMTAgMTU6NDA6MzQgMjAxMSArMDEwMAorCisgICAgbGliZHBrZzogUmVuYW1lIHZhcmJ1ZmFkZHN0cigpIHRvIHZhcmJ1Zl9hZGRfc3RyKCkKKyAgICAKKyAgICBNYWtlIHRoZSB2YXJidWYgQVBJIGEgYml0IG1vcmUgY29uc2lzdGVudC4KKworIGRwa2ctZGViL2luZm8uYyAgICAgICAgIHwgICAgNCArLQorIGxpYi9kcGtnL2RibW9kaWZ5LmMgICAgIHwgICAgNiArKy0tCisgbGliL2Rwa2cvZHVtcC5jICAgICAgICAgfCAgIDkzICsrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgbGliL2Rwa2cvcGFyc2VoZWxwLmMgICAgfCAgICA1ICsrLQorIGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sIHwgICAgNCArLQorIGxpYi9kcGtnL3RyaWdsaWIuYyAgICAgIHwgICAgNCArLQorIGxpYi9kcGtnL3ZhcmJ1Zi5oICAgICAgIHwgICAgNCArLQorIHNyYy9hcmNoaXZlcy5jICAgICAgICAgIHwgICAyNiArKysrKysrLS0tLS0tLQorIHNyYy9jb25maWd1cmUuYyAgICAgICAgIHwgICAxMCArKystLS0KKyBzcmMvZGVwY29uLmMgICAgICAgICAgICB8ICAgMTggKysrKystLS0tLQorIHNyYy9kaXZlcnRkYi5jICAgICAgICAgIHwgICAgNCArLQorIHNyYy9maWxlc2RiLmMgICAgICAgICAgIHwgICAxMCArKystLS0KKyBzcmMvaGVscC5jICAgICAgICAgICAgICB8ICAgIDQgKy0KKyBzcmMvcGFja2FnZXMuYyAgICAgICAgICB8ICAgMTIgKysrLS0tCisgc3JjL3Byb2Nlc3NhcmMuYyAgICAgICAgfCAgIDE4ICsrKysrLS0tLS0KKyBzcmMvcXVlcnljbWQuYyAgICAgICAgICB8ICAgIDggKystLQorIHNyYy9yZW1vdmUuYyAgICAgICAgICAgIHwgICAyOCArKysrKysrLS0tLS0tLQorIHNyYy9zdGF0Y21kLmMgICAgICAgICAgIHwgICAxMiArKystLS0KKyBzcmMvc3RhdGRiLmMgICAgICAgICAgICB8ICAgIDQgKy0KKyBzcmMvdHJpZ3Byb2MuYyAgICAgICAgICB8ICAgIDIgKy0KKyBzcmMvdXBkYXRlLmMgICAgICAgICAgICB8ICAgIDQgKy0KKyAyMSBmaWxlcyBjaGFuZ2VkLCAxNDYgaW5zZXJ0aW9ucygrKSwgMTM0IGRlbGV0aW9ucygtKQorCitjb21taXQgMDY0ZDVmMjFhYjBhOTc1MzhiOWEzZDg1MDU2ZGQwYzc3ZTQ2ZmZiYQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBKYW4gMTAgMTU6Mjg6NDYgMjAxMSArMDEwMAorCisgICAgbGliZHBrZzogUmVuYW1lIHZhcmJ1ZmFkZGMoKSB0byB2YXJidWZfYWRkX2NoYXIoKQorICAgIAorICAgIE1ha2UgdGhlIHZhcmJ1ZiBBUEkgYSBiaXQgbW9yZSBjb25zaXN0ZW50LgorCisgZHBrZy1kZWIvaW5mby5jICAgICAgICAgICB8ICAgIDQgKy0KKyBkcGtnLXNwbGl0L3NwbGl0LmMgICAgICAgIHwgICAgMiArLQorIGxpYi9kcGtnL2RibW9kaWZ5LmMgICAgICAgfCAgICA0ICstCisgbGliL2Rwa2cvZHVtcC5jICAgICAgICAgICB8ICAgNjAgKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0KKyBsaWIvZHBrZy9maWVsZHMuYyAgICAgICAgIHwgICAgNiArKy0tCisgbGliL2Rwa2cvbGliZHBrZy5WZXJzaW9ucyB8ICAgIDIgKy0KKyBsaWIvZHBrZy9sb2cuYyAgICAgICAgICAgIHwgICAgNCArLQorIGxpYi9kcGtnL3BhcnNlaGVscC5jICAgICAgfCAgICA0ICstCisgbGliL2Rwa2cvcGtnLWZvcm1hdC5jICAgICB8ICAgIDQgKy0KKyBsaWIvZHBrZy90ZXN0L3QtdmFyYnVmLmMgIHwgICAxMiArKysrLS0tLQorIGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sICAgfCAgICAyICstCisgbGliL2Rwa2cvdHJpZ2xpYi5jICAgICAgICB8ICAgIDQgKy0KKyBsaWIvZHBrZy92YXJidWYuYyAgICAgICAgIHwgICAgMiArLQorIGxpYi9kcGtnL3ZhcmJ1Zi5oICAgICAgICAgfCAgICA2ICsrLS0KKyBzcmMvYXJjaGl2ZXMuYyAgICAgICAgICAgIHwgICAzOCArKysrKysrKysrKysrKystLS0tLS0tLS0tLS0KKyBzcmMvY29uZmlndXJlLmMgICAgICAgICAgIHwgICAxNiArKysrKystLS0tLS0KKyBzcmMvZGVwY29uLmMgICAgICAgICAgICAgIHwgICAgOCArKystLS0KKyBzcmMvZGl2ZXJ0ZGIuYyAgICAgICAgICAgIHwgICAgMiArLQorIHNyYy9lbnF1aXJ5LmMgICAgICAgICAgICAgfCAgICAyICstCisgc3JjL2ZpbGVzZGIuYyAgICAgICAgICAgICB8ICAgIDQgKy0KKyBzcmMvaGVscC5jICAgICAgICAgICAgICAgIHwgICAgOCArKystLS0KKyBzcmMvbWFpbi5jICAgICAgICAgICAgICAgIHwgICAgNCArLQorIHNyYy9wYWNrYWdlcy5jICAgICAgICAgICAgfCAgICA0ICstCisgc3JjL3Byb2Nlc3NhcmMuYyAgICAgICAgICB8ICAgMjIgKysrKysrKystLS0tLS0tLQorIHNyYy9xdWVyeWNtZC5jICAgICAgICAgICAgfCAgIDEyICsrKystLS0tCisgc3JjL3JlbW92ZS5jICAgICAgICAgICAgICB8ICAgMjcgKysrKysrKysrKy0tLS0tLS0tLQorIHNyYy9zZWxlY3QuYyAgICAgICAgICAgICAgfCAgICA4ICsrKy0tLQorIHNyYy9zdGF0Y21kLmMgICAgICAgICAgICAgfCAgICA2ICsrLS0KKyBzcmMvc3RhdGRiLmMgICAgICAgICAgICAgIHwgICAgMiArLQorIHNyYy90cmlncHJvYy5jICAgICAgICAgICAgfCAgICA0ICstCisgc3JjL3VwZGF0ZS5jICAgICAgICAgICAgICB8ICAgIDIgKy0KKyAzMSBmaWxlcyBjaGFuZ2VkLCAxNDkgaW5zZXJ0aW9ucygrKSwgMTM2IGRlbGV0aW9ucygtKQorCitjb21taXQgNTU5ZDY2ZWMzZjRhNjQ5ZTY1Y2M4N2RjNmJlYTcwOGM5Mjg5YzFmZgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBKYW4gMTAgMTU6MTI6NDIgMjAxMSArMDEwMAorCisgICAgbGliZHBrZzogUmVuYW1lIHZhcmJ1ZmR1cGMoKSB0byB2YXJidWZfZHVwX2NoYXIoKQorICAgIAorICAgIE1ha2UgdGhlIHZhcmJ1ZiBBUEkgYSBiaXQgbW9yZSBjb25zaXN0ZW50LgorCisgbGliL2Rwa2cvbGliZHBrZy5WZXJzaW9ucyB8ICAgIDIgKy0KKyBsaWIvZHBrZy90ZXN0L3QtdmFyYnVmLmMgIHwgICAgOCArKysrLS0tLQorIGxpYi9kcGtnL3ZhcmJ1Zi5jICAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvdmFyYnVmLmggICAgICAgICB8ICAgIDIgKy0KKyA0IGZpbGVzIGNoYW5nZWQsIDcgaW5zZXJ0aW9ucygrKSwgNyBkZWxldGlvbnMoLSkKKworY29tbWl0IGQ1YzU5ODk0Y2NhM2Y3NzZjNjhlNDk5YWFlYTFkNjk3ZDJkMWFmZDIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gSmFuIDEwIDE1OjA3OjQ2IDIwMTEgKzAxMDAKKworICAgIGxpYmRwa2c6IFJlbmFtZSB2YXJidWZzdWJzdGMoKSB0byB2YXJidWZfbWFwX2NoYXIoKQorICAgIAorICAgIE1ha2UgdGhlIHZhcmJ1ZiBBUEkgYSBiaXQgbW9yZSBjb25zaXN0ZW50LgorCisgbGliL2Rwa2cvbGliZHBrZy5WZXJzaW9ucyB8ICAgIDIgKy0KKyBsaWIvZHBrZy9sb2cuYyAgICAgICAgICAgIHwgICAgMiArLQorIGxpYi9kcGtnL3Rlc3QvdC12YXJidWYuYyAgfCAgICA2ICsrKy0tLQorIGxpYi9kcGtnL3ZhcmJ1Zi5jICAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvdmFyYnVmLmggICAgICAgICB8ICAgIDIgKy0KKyA1IGZpbGVzIGNoYW5nZWQsIDcgaW5zZXJ0aW9ucygrKSwgNyBkZWxldGlvbnMoLSkKKworY29tbWl0IDRlYTA4YmZmNDIwNDBkN2UxYzYyM2MzOTNkMDA5NDZkZGQ5NDM1NTcKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gSmFuIDEwIDE0OjU2OjU2IDIwMTEgKzAxMDAKKworICAgIGxpYmRwa2c6IFJlbmFtZSB2YXJidWZyZXNldCgpIHRvIHZhcmJ1Zl9yZXNldCgpCisgICAgCisgICAgTWFrZSB0aGUgdmFyYnVmIEFQSSBhIGJpdCBtb3JlIGNvbnNpc3RlbnQuCisKKyBkcGtnLWRlYi9idWlsZC5jICAgICAgICAgIHwgICAgNiArKystLS0KKyBkcGtnLWRlYi9pbmZvLmMgICAgICAgICAgIHwgICAgMiArLQorIGRwa2ctc3BsaXQvc3BsaXQuYyAgICAgICAgfCAgICA4ICsrKystLS0tCisgbGliL2Rwa2cvZGJtb2RpZnkuYyAgICAgICB8ICAgIDQgKystLQorIGxpYi9kcGtnL2R1bXAuYyAgICAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvZmllbGRzLmMgICAgICAgICB8ICAgIDYgKysrLS0tCisgbGliL2Rwa2cvbGliZHBrZy5WZXJzaW9ucyB8ICAgIDIgKy0KKyBsaWIvZHBrZy9sb2cuYyAgICAgICAgICAgIHwgICAgNCArKy0tCisgbGliL2Rwa2cvcGFyc2VoZWxwLmMgICAgICB8ICAgIDIgKy0KKyBsaWIvZHBrZy9wa2ctZm9ybWF0LmMgICAgIHwgICAgNCArKy0tCisgbGliL2Rwa2cvdGVzdC90LXZhcmJ1Zi5jICB8ICAgIDQgKystLQorIGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sICAgfCAgICAyICstCisgbGliL2Rwa2cvdHJpZ2xpYi5jICAgICAgICB8ICAgIDQgKystLQorIGxpYi9kcGtnL3ZhcmJ1Zi5jICAgICAgICAgfCAgICA0ICsrKy0KKyBsaWIvZHBrZy92YXJidWYuaCAgICAgICAgIHwgICAgMiArLQorIHNyYy9hcmNoaXZlcy5jICAgICAgICAgICAgfCAgIDE0ICsrKysrKystLS0tLS0tCisgc3JjL2NvbmZpZ3VyZS5jICAgICAgICAgICB8ICAgIDggKysrKy0tLS0KKyBzcmMvZGVwY29uLmMgICAgICAgICAgICAgIHwgICAgMiArLQorIHNyYy9kaXZlcnRjbWQuYyAgICAgICAgICAgfCAgICA0ICsrLS0KKyBzcmMvZGl2ZXJ0ZGIuYyAgICAgICAgICAgIHwgICAgMiArLQorIHNyYy9lbnF1aXJ5LmMgICAgICAgICAgICAgfCAgICAyICstCisgc3JjL2ZpbGVzZGIuYyAgICAgICAgICAgICB8ICAgIDQgKystLQorIHNyYy9oZWxwLmMgICAgICAgICAgICAgICAgfCAgICAyICstCisgc3JjL21haW4uYyAgICAgICAgICAgICAgICB8ICAgIDIgKy0KKyBzcmMvcGFja2FnZXMuYyAgICAgICAgICAgIHwgICAgMiArLQorIHNyYy9wcm9jZXNzYXJjLmMgICAgICAgICAgfCAgICA2ICsrKy0tLQorIHNyYy9xdWVyeWNtZC5jICAgICAgICAgICAgfCAgICA0ICsrLS0KKyBzcmMvcmVtb3ZlLmMgICAgICAgICAgICAgIHwgICAxMiArKysrKystLS0tLS0KKyBzcmMvc2VsZWN0LmMgICAgICAgICAgICAgIHwgICAgNCArKy0tCisgc3JjL3N0YXRkYi5jICAgICAgICAgICAgICB8ICAgIDIgKy0KKyBzcmMvdHJpZ3Byb2MuYyAgICAgICAgICAgIHwgICAgMiArLQorIDMxIGZpbGVzIGNoYW5nZWQsIDY1IGluc2VydGlvbnMoKyksIDYzIGRlbGV0aW9ucygtKQorCitjb21taXQgNDk2ZGM4MWMxZmFkYmI1NzA5MmNmZDVlMmI0MmRkYjkyMDEwMjBjZQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBKYW4gMTAgMTQ6NTA6NTQgMjAxMSArMDEwMAorCisgICAgbGliZHBrZzogUmVuYW1lIHZhcmJ1ZmluaXQoKSB0byB2YXJidWZfaW5pdCgpCisgICAgCisgICAgTWFrZSB0aGUgdmFyYnVmIEFQSSBhIGJpdCBtb3JlIGNvbnNpc3RlbnQuCisKKyBsaWIvZHBrZy9kYm1vZGlmeS5jICAgICAgIHwgICAgMiArLQorIGxpYi9kcGtnL2xpYmRwa2cuVmVyc2lvbnMgfCAgICAyICstCisgbGliL2Rwa2cvdGVzdC90LXZhcmJ1Zi5jICB8ICAgMjIgKysrKysrKysrKystLS0tLS0tLS0tLQorIGxpYi9kcGtnL3ZhcmJ1Zi5jICAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvdmFyYnVmLmggICAgICAgICB8ICAgMTQgKysrKysrKy0tLS0tLS0KKyBzcmMvcXVlcnljbWQuYyAgICAgICAgICAgIHwgICAgMiArLQorIDYgZmlsZXMgY2hhbmdlZCwgMjIgaW5zZXJ0aW9ucygrKSwgMjIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBmZGNlMDhjM2I5MjNkM2FiYjgzNzY4YWYyNTU0NzQzNjgyNDg2MzkyCitBdXRob3I6IEpvbmF0aGFuIE5pZWRlciA8anJuaWVkZXJAZ21haWwuY29tPgorRGF0ZTogICBTYXQgSmFuIDggMjI6NDE6NDggMjAxMSArMDEwMAorCisgICAgUmVtb3ZlIC0tZW5hYmxlLXN5bmMtc3luYyBjb2RlcGF0aAorICAgIAorICAgIFVzaW5nIHN5bmMoKSBvbiB1bnBhY2sgY2F1c2VzIF9hbGxfIGZpbGVzeXN0ZW1zIHRvIGJlIHN5bmMnZCwgd2hpY2ggaXMKKyAgICBub3Qgc28gZ3JlYXQgd2hlbiBvbmUgb2YgdGhvc2UgaXMgYSB0aHVtYiBkcml2ZSwgbW91bnRlZCBvdmVyIGEgbmV0d29yaywKKyAgICBvciBvdGhlcndpc2Ugc2xvdy4gUmVtb3ZlIHRoZSBzeW5jLWluc3RlYWQtb2YtZnN5bmMgY29kZXBhdGggZHVlIHRvCisgICAgdGhvc2Ugc2lkZS1lZmZlY3RzIGFuZCB0byBzaW1wbGlmeSBtYWludGVuYW5jZS4KKyAgICAKKyAgICBTaWduZWQtb2ZmLWJ5OiBKb25hdGhhbiBOaWVkZXIgPGpybmllZGVyQGdtYWlsLmNvbT4KKyAgICBTaWduZWQtb2ZmLWJ5OiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKyBjb25maWd1cmUuYWMgICAgIHwgICAgMSAtCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDQgKysrKworIG00L2Rwa2ctZnVuY3MubTQgfCAgIDI4IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBzcmMvYXJjaGl2ZXMuYyAgIHwgICAgOCAtLS0tLS0tLQorIDQgZmlsZXMgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCAzNyBkZWxldGlvbnMoLSkKKworY29tbWl0IGRmZjg5ZjNmMjMzOWI5ZWU0YWMwMTUwMDRhZTBkZDdlNTczMDc5ZjcKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgSmFuIDggMjI6MTY6MTcgMjAxMSArMDEwMAorCisgICAgbGliZHBrZzogQWRkIG1pc3NpbmcgY29tbWFuZF9zaGVsbCB0byB2ZXJzaW9uIHNjcmlwdAorCisgbGliL2Rwa2cvbGliZHBrZy5WZXJzaW9ucyB8ICAgIDEgKworIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgMjU2MWYyODUwMWZlNWE0OTdlMDU3ODRjMDIzN2U3OTdjZDc0NjY2ZQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBBdWcgMTIgMDQ6MzE6MzEgMjAxMCArMDIwMAorCisgICAgZHBrZzogRml4IC1HRU8gb3B0aW9ucyBvbiBtdWx0aXBsZSB2ZXJzaW9ucyBvZiB0aGUgc2FtZSBwYWNrYWdlCisgICAgCisgICAgVGhlIG9wdGlvbnMgd2VyZSBub3QgdGFraW5nIGVmZmVjdCBhcyB0aGV5IHdlcmUgb25seSBiZWluZyBhcHBsaWVkIHRvCisgICAgaW5zdGFsbGVkIHBhY2thZ2VzLCB3aGlsZSB0aGUgZmlyc3Qgc3RhZ2UgdXN1YWxseSBpbXBsaWVzIHVucGFja2luZworICAgIGFuZCB0aGVuIGNvbmZpZ3VyaW5nIGluIGEgbGF0ZXIgc3RhZ2UuIFdoaWNoIGltcGxpZXMgaGF2aW5nIHRob3NlCisgICAgcGFja2FnZXMgZ29pbmcgZnJvbSBpbnN0YWxsZWQgdG8gdW5wYWNrZWQsIGFuZCB0aGVuIHNraXBwaW5nIGFueSBvZgorICAgIHRoZSBjaGVja3MgcmVxdWVzdGVkIGJ5IHRoZSB1c2VyIG9uIHN1YnNlcXVlbnRseSBwcm9jZXNzZWQgcGFja2FnZXMuCisgICAgCisgICAgQ2xvc2VzOiAjMzExNDEKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAyICsrCisgc3JjL2FyY2hpdmVzLmMgICB8ICAgIDYgKysrLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAwYzc3MGNiMmYxYjgyM2Q2YTBmMjliZmQ1MjMyNmVkN2ZjYjA3YmQyCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IEphbiA4IDE1OjM0OjQzIDIwMTEgKzAxMDAKKworICAgIHUtYTogUmVtb3ZlZCB1bnVzZWQgcmV0IHZhcmlhYmxlIGZyb20gYWx0ZGJfcGFyc2VfZXJyb3IoKQorCisgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jIHwgICAgMyArLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDgxOGY2NjQ3YmUyNmE4ZjMzOWFiMjY4MmM4MzY0ZmI0NDdlNWJjNjAKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgSmFuIDcgMjE6MzI6NDkgMjAxMSArMDEwMAorCisgICAgYnVpbGQ6IEZhaWwgY29uZmlndXJlIGlmIGN1cnNlcyBpcyBuZWVkZWQgYnV0IG5vIGhlYWRlcnMgYXJlIHByZXNlbnQKKyAgICAKKyAgICBSZXBvcnRlZC1ieTogUmFwaGFlbCBHZWlzc2VydCA8Z2Vpc3NlcnRAZGViaWFuLm9yZz4KKyAgICBUZXN0ZWQtYnk6IFJhcGhhZWwgR2Vpc3NlcnQgPGdlaXNzZXJ0QGRlYmlhbi5vcmc+CisgICAgU2lnbmVkLW9mZi1ieTogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisgbTQvZHBrZy1saWJzLm00IHwgICAgOSArKysrKysrLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDcgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IGY1NjhhZTNmNWNlOWYyZmM0MWFiZDM3MmE4MjhiYjQwMjZjNmQwZTMKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgSmFuIDQgMDQ6MTg6NDUgMjAxMSArMDEwMAorCisgICAgZHBrZy1zcGxpdDogUmVkdWNlIHNjb3BlIG9mIHZhcmlhYmxlcworCisgZHBrZy1zcGxpdC9qb2luLmMgIHwgICAxMiArKysrKysrLS0tLS0KKyBkcGtnLXNwbGl0L3F1ZXVlLmMgfCAgIDI4ICsrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDI0IGluc2VydGlvbnMoKyksIDE2IGRlbGV0aW9ucygtKQorCitjb21taXQgNDYwMjg0ZTE5ZTE1NTZhYjMxMjUyOGZkZjM0YmU5N2NlNTc1Y2YwZAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBKYW4gNCAwNDoxMzoyMiAyMDExICswMTAwCisKKyAgICBkcGtnLWRlYjogRml4IGNvcnJ1cHQgYXJjaGl2ZSBoZWFkZXIgbWFnaWMgZXJyb3Igc3RyaW5nCisgICAgCisgICAgVGhlIHN0cmluZyB3YXMgcmVmZXJyaW5nIHRvIHRoZSBmaXJzdCBoZWFkZXIgd2hlbiB0aGUgc3RyaW5nIHJlZmVycyB0bworICAgIGFueSBoZWFkZXIgcGFyc2VkLgorCisgZHBrZy1kZWIvZXh0cmFjdC5jIHwgICAgMiArLQorIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgOTQyYmU3ZDA5ZmZjZGYyYmJjNWI1YjhlMzkxODgwNzA0ZGE4NmY3ZgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBKYW4gMyAyMDo0Mzo0NyAyMDExICswMTAwCisKKyAgICBSZW1vdmUgdW5uZWVkZWQgPGVycm5vLmg+IGluY2x1ZGUKKworIGRwa2ctZGViL21haW4uYyAgICB8ICAgIDEgLQorIGRwa2ctc3BsaXQvc3BsaXQuYyB8ICAgIDEgLQorIGxpYi9kcGtnL2J1ZmZlci5jICB8ICAgIDEgLQorIGxpYi9kcGtnL21saWIuYyAgICB8ICAgIDEgLQorIDQgZmlsZXMgY2hhbmdlZCwgMCBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQorCitjb21taXQgN2VlMTBmY2ViMTlhY2JlYTY3YTU4NzgwMGM5ZTk3MmRiZTg3YWFiMworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBKYW4gMyAxNTo0NDoxMSAyMDExICswMTAwCisKKyAgICBkcGtnLWRlYjogUmVmYWN0b3Igb3V0IHBrZ19nZXRfcGF0aG5hbWUoKSBmcm9tIGRvX2J1aWxkKCkKKworIGRwa2ctZGViL2J1aWxkLmMgfCAgIDMxICsrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDIxIGluc2VydGlvbnMoKyksIDEwIGRlbGV0aW9ucygtKQorCitjb21taXQgMGQ1YmExYTc5ZWUyNmRjNzRjZDk2NGYyNTVlZjYyOTIwZjdmNmUzNQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBKYW4gMyAwMzowNzo1MiAyMDExICswMTAwCisKKyAgICBkcGtnLWRlYjogUmVmYWN0b3IgY2hlY2tfbmV3X3BrZygpIG91dCBmcm9tIGRvX2J1aWxkKCkKKworIGRwa2ctZGViL2J1aWxkLmMgfCAgIDc5ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA0NiBpbnNlcnRpb25zKCspLCAzMyBkZWxldGlvbnMoLSkKKworY29tbWl0IGY4NDk0MTAyNzc4MDNmYjM3ZTE1M2QzZmRhYTFkZDQ0ZGE5YzYzMmIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gSmFuIDMgMDM6MDY6MDMgMjAxMSArMDEwMAorCisgICAgZHBrZy1kZWI6IEhhbmRsZSBtaXNzaW5nIGFyY2ggaW4gdmFyYnVmcHJpbnRmKCkgY2FsbCBpbnNpZGUgZG9fYnVpbGQoKQorCisgZHBrZy1kZWIvYnVpbGQuYyB8ICAgIDQgKy0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQorCitjb21taXQgODQ1MTA2NWNmODVjYjhhMTdkY2QxN2UwY2QyY2ExZmRlZjdjYjc0OQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBKYW4gMyAwMTo0OToxMyAyMDExICswMTAwCisKKyAgICBDZW50cmFsaXplIHdhcm4gY291bnRpbmcgaW4gd2FybmluZ3YoKQorICAgIAorICAgIEFkZCBhbiBhY2Nlc3NvciBmdW5jdGlvbiB0byBiZSBhYmxlIHRvIHJlcGxhY2UgdGhlIG9sZCB3YXJuIGNvdW50ZXJzCisgICAgaW4gdGhlIHJlc3Qgb2YgdGhlIGNvZGUuCisKKyBkcGtnLWRlYi9idWlsZC5jICAgICAgICAgIHwgICAxOSArKysrKy0tLS0tLS0tLS0tLS0tCisgZHBrZy1kZWIvaW5mby5jICAgICAgICAgICB8ICAgIDIgKy0KKyBsaWIvZHBrZy9kYm1vZGlmeS5jICAgICAgIHwgICAgNiArKystLS0KKyBsaWIvZHBrZy9kcGtnLWRiLmggICAgICAgIHwgICAgMyArLS0KKyBsaWIvZHBrZy9laGFuZGxlLmMgICAgICAgIHwgICAgOSArKysrKysrKysKKyBsaWIvZHBrZy9laGFuZGxlLmggICAgICAgIHwgICAgMSArCisgbGliL2Rwa2cvbGliZHBrZy5WZXJzaW9ucyB8ICAgIDEgKworIGxpYi9kcGtnL3BhcnNlLmMgICAgICAgICAgfCAgICA2ICstLS0tLQorIGxpYi9kcGtnL3BhcnNlZHVtcC5oICAgICAgfCAgICAxIC0KKyBsaWIvZHBrZy9wYXJzZWhlbHAuYyAgICAgIHwgICAgMSAtCisgc3JjL3Byb2Nlc3NhcmMuYyAgICAgICAgICB8ICAgIDIgKy0KKyBzcmMvdXBkYXRlLmMgICAgICAgICAgICAgIHwgICAgNCArKy0tCisgMTIgZmlsZXMgY2hhbmdlZCwgMjUgaW5zZXJ0aW9ucygrKSwgMzAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBhNjNkOGE4ZDE2YjRiM2MxY2IzNGY2MzVkZDE1MzQ2ZWQyNzI4NDQ0CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIEphbiAyIDE4OjUzOjA5IDIwMTEgKzAxMDAKKworICAgIGRwa2ctZGViOiBVc2UgdmFyYnVmIGluIGZpbGVfaW5mb19nZXQoKSBpbnN0ZWFkIG9mIGFkLWhvYyBjb2RlCisKKyBkcGtnLWRlYi9idWlsZC5jIHwgICAzNyArKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAxNSBpbnNlcnRpb25zKCspLCAyMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDAwZmE4ZDBlNmZmYjc3N2RlYTUyZjdlMjBhMjRiZDlhNzcwMmU1ZjgKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gSmFuIDIgMTQ6MzA6MjMgMjAxMSArMDEwMAorCisgICAgVXNlIGZkaW8gZnVuY3Rpb25zIGluc3RlYWQgb2YgcmF3IHJlYWQoKS93cml0ZSgpIGNhbGxzCisgICAgCisgICAgVGhpcyBtYWtlcyB0aGUgY2FsbCBzaXRlcyBzYWZlIGFnYWluc3QgaW50ZXJydXB0ZWQgSS9PLgorCisgZHBrZy1kZWIvYnVpbGQuYyAgICB8ICAgIDQgKystLQorIGRwa2ctZGViL2V4dHJhY3QuYyAgfCAgICA3ICsrKystLS0KKyBsaWIvZHBrZy9hci5jICAgICAgIHwgICAxMSArKysrKystLS0tLQorIGxpYi9kcGtnL2NvbXByZXNzLmMgfCAgICA5ICsrKysrLS0tLQorIDQgZmlsZXMgY2hhbmdlZCwgMTcgaW5zZXJ0aW9ucygrKSwgMTQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA1ZDc0MTM5ZmRhMWU0ODUwYzQzNjc2NTEzMWI5NDkyMzJiNTRjYzgwCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIEphbiAyIDE0OjI3OjA2IDIwMTEgKzAxMDAKKworICAgIFVzZSBmZGlvIGluc3RlYWQgb2YgYWQtaG9jIGNvZGUgdG8gaGFuZGxlIGludGVycnVwdGVkIEkvTworCisgZHBrZy1kZWIvYnVpbGQuYyAgfCAgIDEwICsrKystLS0tLS0KKyBsaWIvZHBrZy9idWZmZXIuYyB8ICAgMzQgKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIGxpYi9kcGtnL2xvZy5jICAgIHwgICAxMyArKysrLS0tLS0tLS0tCisgc3JjL2FyY2hpdmVzLmMgICAgfCAgIDI5ICsrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgNCBmaWxlcyBjaGFuZ2VkLCAyNyBpbnNlcnRpb25zKCspLCA1OSBkZWxldGlvbnMoLSkKKworY29tbWl0IDQ0YjRkOTUwYmE0YmViNDQzZDRmNzE4NDY3ZTdiYWVjMTQ4ODViYzAKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gSmFuIDIgMTM6NDc6MjkgMjAxMSArMDEwMAorCisgICAgbGliZHBrZzogUmVtb3ZlIHVudXNlZCBmZF9idWZfY29weSgpCisgICAgCisgICAgVGhpcyBmdW5jdGlvbiBpcyBub3QgcmVhbGx5IG5lZWRlZCBvbmNlIHdlIGhhdmUgZmRfcmVhZCgpLCBpdCBhbHNvCisgICAgcGVyZm9ybXMgc29tZSBzbGlnaHQgdW5uZWVkZWQgd29yay4KKworIGxpYi9kcGtnL2J1ZmZlci5jIHwgICAgNCAtLS0tCisgbGliL2Rwa2cvYnVmZmVyLmggfCAgICA0IC0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDAgaW5zZXJ0aW9ucygrKSwgOCBkZWxldGlvbnMoLSkKKworY29tbWl0IDEyZjcxZDZkZjMzMmMyMTJmYTg2YjdiMmMxMWRiZDQzYjE5ZTM3ZjEKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gSmFuIDIgMTM6Mzg6MzcgMjAxMSArMDEwMAorCisgICAgVXNlIGZkX3JlYWQoKSBpbnN0ZWFkIG9mIGZkX2J1Zl9jb3B5KCkKKyAgICAKKyAgICBUaGUgbGF0dGVyIGlzIGRvaW5nIHVubmVlZGVkIHdvcmsuIFN3aXRjaCB0byB1c2UgYSBzaW1wbGVyIGJ1dCBlcXVhbGx5CisgICAgZnVuY3Rpb25hbCB2YXJpYW50LgorCisgbGliL2Rwa2cvcGFyc2UuYyB8ICAgIDUgKysrLS0KKyBzcmMvZmlsZXNkYi5jICAgIHwgICAgNSArKystLQorIHNyYy9zdGF0ZGIuYyAgICAgfCAgICA2ICsrKy0tLQorIDMgZmlsZXMgY2hhbmdlZCwgOSBpbnNlcnRpb25zKCspLCA3IGRlbGV0aW9ucygtKQorCitjb21taXQgMDA1M2Q2ZWY1NzU5M2Y5OGQ5MmQwZTM3YmIyYjgxYzA0MjY2OWI2NworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBEZWMgMiAwNDo1Njo1MSAyMDEwICswMTAwCisKKyAgICBsaWJkcGtnOiBBZGQgbmV3IGZkaW8gQVBJCisKKyBsaWIvZHBrZy9NYWtlZmlsZS5hbSAgICAgIHwgICAgMiArCisgbGliL2Rwa2cvZmRpby5jICAgICAgICAgICB8ICAgNzcgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCisgbGliL2Rwa2cvZmRpby5oICAgICAgICAgICB8ICAgMzUgKysrKysrKysrKysrKysrKysrKysKKyBsaWIvZHBrZy9saWJkcGtnLlZlcnNpb25zIHwgICAgMiArCisgNCBmaWxlcyBjaGFuZ2VkLCAxMTYgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDVjYjlmZmM1ZjliNTM2OTFkMjNjYThlODM0N2VjY2ZhOGYxMzAwNzEKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gSmFuIDIgMDE6Mzk6MTYgMjAxMSArMDEwMAorCisgICAgbGliZHBrZzogTWVyZ2UgZXJybXNnYnVmIGFuZCBlcnJtc2cKKyAgICAKKyAgICBUaGVyZSdzIG5vIG5lZWQgYW55bW9yZSBmb3IgdGhlIHR3byBkaXN0aW5jdCB2YXJpYWJsZXMgc2luY2Ugb2hzaGl0dmIKKyAgICBnb3QgcmVtb3ZlZCBpbiBjb21taXQgN2QxMjQ1ZWZmODVkNzRkODcyYjZlZTg5ZjU1Yzg0NjYzMjFlNTYwYy4KKworIGxpYi9kcGtnL2VoYW5kbGUuYyB8ICAgMTQgKysrKy0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgMTAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAzYzI1YTdiMGE1MGZjMjVkYmVlYTdhNTEyNDU5YTAxYmIwNjcyZjMyCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IEphbiAxIDAzOjU4OjU4IDIwMTEgKzAxMDAKKworICAgIGxpYmRwa2c6IEluaXRpYWxpemUgYnVmZmVyX2RhdGEgdmFyaWFibGVzIG9uIGRlY2xhcmF0aW9uIGluIGJ1ZmZlcl9jb3B5X1RZUEUKKworIGxpYi9kcGtnL2J1ZmZlci5jIHwgICAgOCArKy0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCA2IGRlbGV0aW9ucygtKQorCitjb21taXQgZWU1OTVlZDM4ZGFhN2IzZmZiYTQ1MjI5NmI3YjA3MGU4MmQ4YzkzOQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBKYW4gMSAwMzo1MTo0MCAyMDExICswMTAwCisKKyAgICBsaWJkcGtnOiBDYWxsIGJ1ZmZlcl9pbml0KCkgYW5kIGJ1ZmZlcl9kb25lKCkgZnJvbSBidWZmZXJfY29weSgpCisKKyBsaWIvZHBrZy9idWZmZXIuYyB8ICAgIDYgKysrKy0tCisgMSBmaWxlcyBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA0ZTUxZTcyN2U3ZDA2ZWVkYThiYTdhOGZjMGZjNDI1MmQ5YmM4NzVkCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IEphbiAxIDAzOjQ3OjA1IDIwMTEgKzAxMDAKKworICAgIGxpYmRwa2c6IFJlbW92ZSBidWZmZXJfY29weV9QdHJQdHIgYW5kIGJ1ZmZlcl9jb3B5X1B0ckludCBmdW5jdGlvbnMKKyAgICAKKyAgICBUaG9zZSB3ZXJlIGluc3RhbnRpYXRlZCBmcm9tIHRoZSBidWZmZXJfY29weV9UWVBFIG1hY3JvLCBidXQgbm90IHVzZWQKKyAgICBhbnltb3JlLgorCisgbGliL2Rwa2cvYnVmZmVyLmMgfCAgICAyIC0tCisgbGliL2Rwa2cvYnVmZmVyLmggfCAgICA2IC0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgMCBpbnNlcnRpb25zKCspLCA4IGRlbGV0aW9ucygtKQorCitjb21taXQgN2I0ZGU4NzY1MmUxMTYwOWMwNzk3YTMzNGEwYzQzYWFjMDhkOTQwZQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBKYW4gMSAwMzo0MzoyNSAyMDExICswMTAwCisKKyAgICBsaWJkcGtnOiBNYWtlIGFsbCBpbnRlcm5hbCBidWZmZXIgZnVuY3Rpb25zIHN0YXRpYworCisgbGliL2Rwa2cvYnVmZmVyLmMgICAgICAgICB8ICAgMTIgKysrKysrLS0tLS0tCisgbGliL2Rwa2cvYnVmZmVyLmggICAgICAgICB8ICAgMTIgKy0tLS0tLS0tLS0tCisgbGliL2Rwa2cvbGliZHBrZy5WZXJzaW9ucyB8ICAgIDUgLS0tLS0KKyAzIGZpbGVzIGNoYW5nZWQsIDcgaW5zZXJ0aW9ucygrKSwgMjIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA0ZTY1YTg0ZDFlNTI5NTQxYzY4NjIzMDA4NmY1NmRlNGUyYjIxMjJjCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IEphbiAxIDAzOjU0OjAxIDIwMTEgKzAxMDAKKworICAgIGxpYmRwa2c6IE1vdmUgYnVmZmVyX2NvcHlfVFlQRSgpIGFuZCBpbnN0YW50aWF0aW9ucyBhZnRlciBidWZmZXJfY29weSgpCisKKyBsaWIvZHBrZy9idWZmZXIuYyB8ICAgNjggKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMzQgaW5zZXJ0aW9ucygrKSwgMzQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyNWZiODA3ODgyNDI3ZmE3MGFmZDI0OTRlYzg0NGE5NmJhNjMzMzdjCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IERlYyAxNiAwNTowOTozNSAyMDEwICswMTAwCisKKyAgICBsaWJkcGtnOiBBZGQgbmV3IERQS0dfR0NDX1ZFUlNJT04gbWFjcm8gYW5kIHVzZSBpdAorICAgIAorICAgIEluc3RlYWQgb2YgZG9pbmcgc2V2ZXJhbCBjaGVja3Mgb24gdGhlIGRpZmZlcmVudCBHQ0MgbWFjcm9zIHdpdGggdGhlCisgICAgdmVyc2lvbiBwYXJ0cywgbWVyZ2UgdGhlbSBpbnRvIHRoaXMgbmV3IG1hY3JvIGFuZCB1c2Ugc2ltcGxlIGludGVnZXIKKyAgICBhcml0aG1ldGljIHRvIGNvbXBhcmUgdGhlIHZlcnNpb25zLgorCisgbGliL2Rwa2cvbWFjcm9zLmggfCAgIDEzICsrKysrKysrKy0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDkgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKKworY29tbWl0IDBiYTY2MjU2ZmIzYWJiZjIwODE3OTk1MmVjOWYxMjgyZjc2YmJjYWUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gRGVjIDEzIDA4OjE1OjU2IDIwMTAgKzAxMDAKKworICAgIGJ1aWxkOiBSZWZhY3RvciBjb21tb24gbGlua2VyIG9iamVjdHMgaW50byBMREFERAorCisgbGliL2Rwa2cvdGVzdC9NYWtlZmlsZS5hbSB8ICAgMTYgKy0tLS0tLS0tLS0tLS0tLQorIHNyYy9NYWtlZmlsZS5hbSAgICAgICAgICAgfCAgIDI4ICsrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDYgaW5zZXJ0aW9ucygrKSwgMzggZGVsZXRpb25zKC0pCisKK2NvbW1pdCA1ODFjZTA4NGVhNmIyNjgxNmRlNTNiOTU4MDYwMGJlYWUwNWNlMTZjCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IERlYyAyIDIxOjA5OjEzIDIwMTAgKzAxMDAKKworICAgIGRwa2c6IERvIG5vdCBjaGVjayBmb3IgcHJlc2VuY2Ugb2YgdXBkYXRlLXJjLmQKKyAgICAKKyAgICBJdCdzIG5vdCByZWFsbHkgbmVlZGVkIGZvciBkcGtnIGNvcnJlY3Qgb3BlcmF0aW9uLgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDIgKysKKyBzcmMvaGVscC5jICAgICAgIHwgICAgMSAtCisgMiBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA1MDZkZDI3YjU2YTU3MGUwMTllOTA5NzRlYTI4NWZlNGZkMmY4YmY4CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIERlYyAzMSAyMToyNjo0MyAyMDEwICswMTAwCisKKyAgICBkcGtnLXNwbGl0OiBEbyBub3Qgc2x1cnAgdGhlIGVudGlyZSBwYXJ0IGludG8gbWVtb3J5IHdoZW4gc3BsaXR0aW5nCisgICAgCisgICAgVGhlIGN1cnJlbnQgY29kZSBpcyBzbHVycGluZyB0aGUgZW50aXJlIHBhcnQgaW50byBtZW1vcnksIHdoaWNoIHdvcmtzCisgICAgZmluZSB3aGVuIHRoZSBwYXJ0c2l6ZSBpcyBzbWFsbCBidXQgbWlnaHQgYmUgdW5iZWFyYWJsZSB3aGVuIHRoZQorICAgIHBhcnRzaXplIGlzIHRvbyBiaWcuIFVzZSBmZF9mZF9jb3B5KCkgdmlhIGRwa2dfYXJfbWVtYmVyX3B1dF9maWxlKCkKKyAgICBpbnN0ZWFkLCB3aGljaCB3aWxsIGd1YXJhbnRlZSBzbWFsbCBjb25zdGFudCBtZW1vcnkgdXNhZ2UuCisKKyBkcGtnLXNwbGl0L3NwbGl0LmMgfCAgIDIxICsrKysrKysrKy0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgOSBpbnNlcnRpb25zKCspLCAxMiBkZWxldGlvbnMoLSkKKworY29tbWl0IGQyYjFiYTU0NmVkYTE5MjcxYWRhNmRhZjFkMGJjZmVlNmIwZGQ5YzkKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgRGVjIDMxIDIwOjQzOjQ0IDIwMTAgKzAxMDAKKworICAgIGxpYmRwa2c6IFVzZSBib29sIHZhbHVlcyBmb3IgY29weV9kZXBlbmRlbmN5X2xpbmtzKCkgY2FsbAorCisgbGliL2Rwa2cvcGFyc2UuYyB8ICAgIDIgKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDFkNzc5Y2VjYWIyMDE2MDQ3YTQzM2E1MTc1NzY0YzBlMjk1MWJhOWQKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgRGVjIDMxIDE3OjI0OjQ0IDIwMTAgKzAxMDAKKworICAgIGRwa2ctc3BsaXQ6IERvIG5vdCBwYXNzIHBhcnRzaXplIHRvIG1rc3BsaXQoKSBhbmQgY29tcHV0ZSBpdCBpbnRlcm5hbGx5CisKKyBkcGtnLXNwbGl0L3NwbGl0LmMgfCAgIDEwICsrKysrLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDUgaW5zZXJ0aW9ucygrKSwgNSBkZWxldGlvbnMoLSkKKworY29tbWl0IDZiYjBhYjA2MDhmZGQyNTA5YThkMmI4NGNkNzVhZTAxZmE1ZTY0YzUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgRGVjIDMxIDIwOjQzOjA5IDIwMTAgKzAxMDAKKworICAgIGRwa2ctc3BsaXQ6IE1hcmsgc3RyaW5ncyBmb3IgdHJhbnNsYXRpb24KKyAgICAKKyAgICBVc2UgcGx1cmFsIHN1cHBvcnQgZm9yIG9uZSBvZiB0aGVtLgorCisgZHBrZy1zcGxpdC9zcGxpdC5jIHwgICAxMCArKysrKystLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA2IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA5N2YwYzBiYWVlOGZiYjM5Mzc4MWJjNzAyNGQ4MGI4YzA4YTg3ZDI1CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIERlYyAzMSAxMzo1Nzo0NyAyMDEwICswMTAwCisKKyAgICBsaWJkcGtnOiBDaGFuZ2UgZHBrZ19hcl9tZW1iZXJfcHV0X2ZpbGUoKSB0byBhY2NlcHQgYSBzaXplIGxpbWl0CisKKyBkcGtnLWRlYi9idWlsZC5jIHwgICAgNCArKy0tCisgbGliL2Rwa2cvYXIuYyAgICB8ICAgMTcgKysrKysrKysrKy0tLS0tLS0KKyBsaWIvZHBrZy9hci5oICAgIHwgICAgMiArLQorIDMgZmlsZXMgY2hhbmdlZCwgMTMgaW5zZXJ0aW9ucygrKSwgMTAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAxNTBiZTRjNDVhZjc4NWE2Mzc0ZTJjN2VjYzkwYjBmZGFiMDU0Nzg3CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIERlYyAzMSAxMjo0MzoyMSAyMDEwICswMTAwCisKKyAgICBkcGtnLXNwbGl0OiBVc2UgbnVtYmVyIG9mIHBhcnRzIHRvIHRyYWNrIHNwbGl0IHByb2Nlc3MKKyAgICAKKyAgICBVc2UgdGhlIGN1cnJlbnRseSBhdmFpbGFibGUgdmFyaWFibGVzIGluc3RlYWQgb2YgdGhlIGFkZGl0aW9uYWwgdXNlbGVzcworICAgIHN0YXJ0YXQuCisKKyBkcGtnLXNwbGl0L3NwbGl0LmMgfCAgICA2ICstLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCA1IGRlbGV0aW9ucygtKQorCitjb21taXQgNmE3OTBmZmM0NjliZTk0MTczZGI4ZGMwZjBlYmVlN2U5Yzk1ZTcwNworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBEZWMgMzEgMTI6NDI6MzEgMjAxMCArMDEwMAorCisgICAgZHBrZy1zcGxpdDogUmVkdWNlIHZhcmlhYmxlIHNjb3BlIGluIGRvX3NwbGl0KCkKKworIGRwa2ctc3BsaXQvc3BsaXQuYyB8ICAgIDUgKysrLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDAyN2M2ZTM1YmU1Y2ZiMzFjYWIzYzNhMjg2ZTJiNGJjMDc2M2QxNjEKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgRGVjIDEgMDM6MjA6MDcgMjAxMCArMDEwMAorCisgICAgVXNlIGRwa2dfYXJfbWVtYmVyX2dldF9zaXplKCkgaW5zdGVhZCBvZiBkdXBsaWNhdGVkIGNvZGUKKworIGRwa2ctZGViL2V4dHJhY3QuYyB8ICAgMjUgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIGRwa2ctc3BsaXQvaW5mby5jICB8ICAgMjAgKystLS0tLS0tLS0tLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgNDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBlMzZjYTc0MDAzZTQ0ZTQ0ZmFhY2JiOWMzMmQ1OTZkODBhOTM4N2Y5CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIERlYyAxIDAzOjE5OjMxIDIwMTAgKzAxMDAKKworICAgIGxpYmRwa2c6IEFkZCBuZXcgZHBrZ19hcl9tZW1iZXJfZ2V0X3NpemUoKQorCisgbGliL2Rwa2cvYXIuYyAgICAgICAgICAgICB8ICAgMjUgKysrKysrKysrKysrKysrKysrKysrKysrKworIGxpYi9kcGtnL2FyLmggICAgICAgICAgICAgfCAgICAzICsrKworIGxpYi9kcGtnL2xpYmRwa2cuVmVyc2lvbnMgfCAgICAxICsKKyAzIGZpbGVzIGNoYW5nZWQsIDI5IGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAzYmUyY2Y2MDc4NjhhZGI5YTJjMGU1YWYwNmYyMDE2OGEwNzJlZWI2CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIE5vdiAyOSAxMzoyOToxNyAyMDEwICswMTAwCisKKyAgICBsaWJkcGtnOiBSZWZhY3RvciBjb21tb24gY29kZSBpbnRvIHBhcnNlX2Vycm9yX21zZygpCisgICAgCisgICAgVGhpcyBtb3ZlcyBhbGwgdGhlIGJ1ZmZlciBzaXplIGtub3dsZWRnZSB0byB0aGUgc2FtZSBmdW5jdGlvbiwgYW5kCisgICAgZWFzaWx5IGFsbG93cyB0byBmaXggcG9zc2libGUgYnVmZmVyIG92ZXJmbG93cyBpbiBjYXNlIGZtdCBpcyBsb25nZXIKKyAgICB0aGFuIHRoZSBkZXN0aW5hdGlvbiBidWZmZXIuIEl0IGFsc28gbmljZWx5IHJlZHVjZXMgc2xpZ2h0bHkgdGhlCisgICAgZHVwbGljYXRlZCBjb2RlLgorCisgbGliL2Rwa2cvcGFyc2VoZWxwLmMgfCAgIDMzICsrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMTUgaW5zZXJ0aW9ucygrKSwgMTggZGVsZXRpb25zKC0pCisKK2NvbW1pdCBlYzk3ZjBhOGZmM2JmODg0MThkYzQ1MmU1ZGY4NDI1Yjg2OTU3ZjlhCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIE5vdiAyOSAxMTo0MTowNiAyMDEwICswMTAwCisKKyAgICBsaWJkcGtnOiBVc2Ugd2FybmluZ3YoKSBpbiBwYXJzZV93YXJuKCkgaW5zdGVhZCBvZiBvcGVuIGNvZGluZyBpdAorICAgIAorICAgIEdlbmVyYWxpemUgYW5kIHVuaWZ5IHBhcnNlX2Vycm9yX21zZygpIGVycm9yIG1lc3NhZ2UgYW5kIHN0b3AgcGFzc2luZworICAgIHRoZSB0eXBlIG9mIGVycm9yIHRvIGl0LiBOb3cgdGhhdCBvaHNoaXQoKSB3aWxsIHByaW50ICJlcnJvciIgd2UgZG9uJ3QKKyAgICBuZWVkIHRvIHByaW50IGl0IGFnYWluIGhlcmUuCisKKyBsaWIvZHBrZy9wYXJzZWhlbHAuYyB8ICAgMTggKysrKysrKystLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA4IGluc2VydGlvbnMoKyksIDEwIGRlbGV0aW9ucygtKQorCitjb21taXQgZjQyOGY2ZjYxNmRlOWZmNjU5NzMwZGM2NDZhYWRhNTFiN2JkMWY4YworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBOb3YgMjkgMDk6Mzk6MTMgMjAxMCArMDEwMAorCisgICAgbGliZHBrZzogQWx3YXlzIHByZWZpeCAiZXJyb3IiIHRvIGZhdGFsIGVycm9yIG1lc3NhZ2Ugb3V0cHV0CisKKyBkZWJpYW4vY2hhbmdlbG9nICAgfCAgICAxICsKKyBsaWIvZHBrZy9laGFuZGxlLmMgfCAgICAyICstCisgMiBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA2ODU3YzkwNjRiNzVlN2VmMmFhYmRiNDViNGU1NWE4YjJmMmRlOTFhCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IE5vdiAyNyAxMjozNTo0NiAyMDEwICswMTAwCisKKyAgICBDaGFuZ2Vsb2cgcG9saWNlCisgICAgCisgICAgVHlwbyBmaXhlcy4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgIDY3ICsrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAzMyBpbnNlcnRpb25zKCspLCAzNCBkZWxldGlvbnMoLSkKKworY29tbWl0IGNmMzE2OTc5ZGVjMjA2OTZlZTU3ZDVhNmY4YTQ2OWExMjc1OGY1NGQKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgTm92IDI3IDEyOjMyOjM2IDIwMTAgKzAxMDAKKworICAgIG1hbjogUXVvdGUgZGFzaGVzIGZvciBjb3JyZWN0IG91dHB1dAorCisgbWFuL2RlYi1jb250cm9sLjUgICAgIHwgICAyNiArKysrKysrKy0tLS0tLS0tCisgbWFuL2RlYi1zcmMtY29udHJvbC41IHwgICA3OCArKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDUyIGluc2VydGlvbnMoKyksIDUyIGRlbGV0aW9ucygtKQorCitjb21taXQgOTViYjc3ZWJjMmM0MjBhNjc4OGExNDc5ODMwMTA1NjBjNjYwNjMwMworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBOb3YgMjcgMTE6NTc6MjMgMjAxMCArMDEwMAorCisgICAgQ2xhcmlmeSBhbmQgc2ltcGxpZnkgc3RyaW5ncyB0byBoZWxwIHRyYW5zbGF0b3JzCisgICAgCisgICAgQ2xvc2VzOiAjNjA0OTE0CisgICAgCisgICAgU3VnZ2VzdGVkLWJ5OiBBbmRyZWkgUG9wZXNjdSA8YW5kcmVpbXBvcGVzY3VAZ21haWwuY29tPgorICAgIFNpZ25lZC1vZmYtYnk6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgIHwgICAgMSArCisgbGliL2Rwa2cvZWhhbmRsZS5jICAgfCAgICAyICstCisgbGliL2Rwa2cvcGFyc2VoZWxwLmMgfCAgICAzICsrLQorIHNyYy9oZWxwLmMgICAgICAgICAgIHwgICAxMSArKysrKy0tLS0tLQorIDQgZmlsZXMgY2hhbmdlZCwgOSBpbnNlcnRpb25zKCspLCA4IGRlbGV0aW9ucygtKQorCitjb21taXQgM2ZhMzg2NTk2ZGNkZjM3MTFlNzlmYzJhZWRkMTI0NjkxYmM2OWU0NQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBOb3YgMjcgMTE6NTY6MTcgMjAxMCArMDEwMAorCisgICAgbGliZHBrZzogVW5tYXJrIGRlYnVnIG1lc3NhZ2UgZm9yIHRyYW5zbGF0aW9uCisgICAgCisgICAgUmVwb3J0ZWQtYnk6IEFuZHJlaSBQb3Blc2N1IDxhbmRyZWltcG9wZXNjdUBnbWFpbC5jb20+CisKKyBsaWIvZHBrZy9kYXRhYmFzZS5jIHwgICAgNSArKysrLQorIDEgZmlsZXMgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgN2FiNGIwY2UzOTEyZTM0NjIwNzYwZjAyMjQyZWJmODBiYzBkYWZmZgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBOb3YgMjcgMDk6NTY6MTkgMjAxMCArMDEwMAorCisgICAgTWFrZSBzaG9ydCBzdHJpbmdzIHVuaXF1ZSBieSB1c2luZyBnZXR0ZXh0IGNvbnRleHQgc3VwcG9ydAorICAgIAorICAgIFJlcG9ydGVkLWJ5OiBBbmRyZWkgUG9wZXNjdSA8YW5kcmVpbXBvcGVzY3VAZ21haWwuY29tPgorCisgbGliL2Rwa2cvcGFyc2VoZWxwLmMgfCAgICAzICsrLQorIHNyYy9lbnF1aXJ5LmMgICAgICAgIHwgICAgMyArKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDYzZTA0N2I5YzJmNjUyMjkwZjZlNjk3YWMzMTI2NmE4NDg4NDkxZTcKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgTm92IDI3IDA4OjQyOjU2IDIwMTAgKzAxMDAKKworICAgIEFkZCBnZXR0ZXh0IGNvbnRleHQgaW5mcmFzdHJ1Y3R1cmUgc3VwcG9ydAorCisgbGliL2Rwa2cvaTE4bi5oIHwgICAgMSArCisgcG8vTWFrZXZhcnMgICAgIHwgICAgMyArKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGY1ZDYxMDZkYjVjODExMGY2ZTBiMGE3MzYwOTllNzA1YjNjNDNlZWUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgTm92IDI2IDA3OjUxOjQzIDIwMTAgKzAxMDAKKworICAgIGRwa2ctZGViOiBNb3ZlIHNldGNvbXByZXNzdHlwZSgpIGJlZm9yZSBjbWRpbmZvcworICAgIAorICAgIFRoaXMgdW5pZmllcyB0aGUgc3R5bGUgd2l0aCB0aGUgcmVzdCBvZiB0aGUgY29kZSBiYXNlLCBhbmQgYXZvaWRzIHRoZQorICAgIG5lZWQgZm9yIGEgZGVjbGFyYXRpb24gb2YgYSBzdGF0aWMgZnVuY3Rpb24uCisKKyBkcGtnLWRlYi9tYWluLmMgfCAgIDE2ICsrKysrKysrLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDggaW5zZXJ0aW9ucygrKSwgOCBkZWxldGlvbnMoLSkKKworY29tbWl0IDBjYWJjNzY0OGRjYTEzNmZkNGVlMTljMTE1N2Q4OWU3NjcwZGZiYzMKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgTm92IDI2IDA3OjQ3OjAwIDIwMTAgKzAxMDAKKworICAgIGRwa2ctZGViOiBNb3ZlIGtub3duX2FyYml0cmFyeV9maWVsZCgpIGNsb3NlciB0byBkb19idWlsZCgpCisKKyBkcGtnLWRlYi9idWlsZC5jIHwgICA1NiArKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDI4IGluc2VydGlvbnMoKyksIDI4IGRlbGV0aW9ucygtKQorCitjb21taXQgYmViYjBmM2EwYWM0ZmQ0OTkwNTg1MzYzYzRhZjJiY2VhZmNmMWViZAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBKYW4gMiAyMDo0NDozNiAyMDExICswMTAwCisKKyAgICBkcGtnLWRlYjogVXNlIHZhcmJ1ZiB0byBnZW5lcmF0ZSBwYWNrYWdlIGZpbGUgbmFtZSBpbiBkb19idWlsZCgpCisKKyBkcGtnLWRlYi9idWlsZC5jIHwgICAxMCArKysrLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA1ZWQ0NzFmOGJjOGFhZjhmYWVlNmIwNGU0MTc3NDUxZmEyZDNjZDUyCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIEphbiAyIDIwOjExOjM0IDIwMTEgKzAxMDAKKworICAgIGRwa2ctZGViOiBDb3VudCBvbmUgbWlzc2luZyB3YXJuaW5nKCkgZm9yIHRoZSB0b3RhbCBhbW91bnQgcmVwb3J0ZWQKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAxICsKKyBkcGtnLWRlYi9idWlsZC5jIHwgICAgNSArKystLQorIDIgZmlsZXMgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgMTY3ZmMxOTNmNDFlNjVmNGNhYzg0NDMyZTcxMTRlYTJiNjZhNWNjYgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBOb3YgMjYgMDc6MzA6MzIgMjAxMCArMDEwMAorCisgICAgZHBrZy1kZWI6IFJlbmFtZSBnZXRmaSgpIGludG8gZmlsZV9pbmZvX2dldCgpCisKKyBkcGtnLWRlYi9idWlsZC5jIHwgICAgNCArKy0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyNmE5MGYxZDA2OGJjMzBhZjVkZGNkMWFiMjY1ZDcwOTBjNmM5NTA5CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIE5vdiAyNiAwNzoyOTowMSAyMDEwICswMTAwCisKKyAgICBkcGtnLWRlYjogUmVuYW1lIGZyZWVfZmlsaXN0KCkgdG8gZmlsZV9pbmZvX2xpc3RfZnJlZSgpCisKKyBkcGtnLWRlYi9idWlsZC5jIHwgICAgNiArKystLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworY29tbWl0IGEwYzE2MzAwZDM5MWYzZWU5MWQ2YmMzN2IzMDMxZjU2MjMzOGY5OTgKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgTm92IDI2IDA3OjI5OjAxIDIwMTAgKzAxMDAKKworICAgIGRwa2ctZGViOiBSZW5hbWUgYWRkX3RvX2ZpbGlzdCgpIHRvIGZpbGVfaW5mb19saXN0X2FwcGVuZCgpCisKKyBkcGtnLWRlYi9idWlsZC5jIHwgICAgOCArKysrLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQorCitjb21taXQgMjk5OGIzMmVhZjhkNTYwY2FmZGM0NWE2NmExODNmMzY5N2JmZWFmNgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBOb3YgMjYgMDc6Mjc6NTAgMjAxMCArMDEwMAorCisgICAgZHBrZy1kZWI6IFJlbmFtZSBhZGRfdG9fZmlsaXN0KCkgYXJndW1lbnRzIHRvIGhlYWQvdGFpbAorICAgIAorICAgIFRoaXMgbm9ybWFsaXplZCB0aGVtIHdpdGggdGhlIHJlc3Qgb2YgdGhlIGNvZGViYXNlLgorCisgZHBrZy1kZWIvYnVpbGQuYyB8ICAgIDggKysrKy0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKKworY29tbWl0IDI5MWMxOTkwMDE1M2RiYWU0NDE3YjY3ZDQwNzdkN2Y3YjFiMjU0MzUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgTm92IDI2IDA3OjE2OjQzIDIwMTAgKzAxMDAKKworICAgIGRwa2ctZGViOiBSZW1vdmUgcmVkdW5kYW50IGRlYmFyIGNoZWNrIGFuZCByZWR1Y2UgY29kZSBzY29wZQorCisgZHBrZy1kZWIvYnVpbGQuYyB8ICAgMTUgKysrKysrKy0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA3IGluc2VydGlvbnMoKyksIDggZGVsZXRpb25zKC0pCisKK2NvbW1pdCBmMTdkOTVkYTlkM2IyMzM2MmJmMGQ5N2I5ZmY0MGY1ZDVlYzM5NzFlCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIE5vdiAyNiAwNjo1MDozNyAyMDEwICswMTAwCisKKyAgICBkcGtnLWRlYjogUmVmYWN0b3IgY2hlY2tfY29uZmZpbGVzKCkgb3V0IGZyb20gZG9fYnVpbGQoKQorCisgZHBrZy1kZWIvYnVpbGQuYyB8ICAxMzYgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDc5IGluc2VydGlvbnMoKyksIDU3IGRlbGV0aW9ucygtKQorCitjb21taXQgODU1YmRmYjRmZTQ0ZTg1MWFkMDM2NjI3ZjJkODcwMmUzZTBkY2IwYworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBOb3YgMjYgMDY6MzU6MTkgMjAxMCArMDEwMAorCisgICAgZHBrZy1kZWI6IFJlZmFjdG9yIGNoZWNrX2ZpbGVfcGVybXMoKSBvdXQgZnJvbSBkb19idWlsZCgpCisKKyBkcGtnLWRlYi9idWlsZC5jIHwgICA4MiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDUwIGluc2VydGlvbnMoKyksIDMyIGRlbGV0aW9ucygtKQorCitjb21taXQgYWYzNGE5Y2MwNjI3NTYyMDdmMjc1ZGJiYjVlYzE2ODk2YmEzMTFiNworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBOb3YgMjYgMDc6NDU6MDYgMjAxMCArMDEwMAorCisgICAgZHBrZy1kZWI6IFJlbmFtZSBjaGVja2VkaW5mbyB0byBwa2cgaW4gZG9fYnVpbGQoKQorCisgZHBrZy1kZWIvYnVpbGQuYyB8ICAgMjcgKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAxNCBpbnNlcnRpb25zKCspLCAxMyBkZWxldGlvbnMoLSkKKworY29tbWl0IDBkZDcyZjFiN2E2YTA4MzViYzAyMTJkMDE5YzJhMDE3NjFlMDQxZmIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gSmFuIDIgMTk6MTk6MTAgMjAxMSArMDEwMAorCisgICAgZHBrZy1kZWI6IFVzZSBhIHZhcmJ1ZiBpbnN0ZWFkIG9mIGEgZml4ZWQgc2l6ZSBidWZmZXIgaW4gZG9fYnVpbGQoKQorICAgIAorICAgIFRoZSBhbGxvY2F0ZWQgYnVmZmVyIGhhcyBhIGZpeGVzIHNpemUsIHdoaWNoIGNvdWxkIHBvc2UgcHJvYmxlbXMgaWYgZm9yCisgICAgd2hhdGV2ZXIgcmVhc29uIHNvbWUgb2YgdGhlIGNvbXBvbmVudHMgaW5jcmVhc2Ugc2l6ZS4KKworIGRwa2ctZGViL2J1aWxkLmMgfCAgIDQzICsrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDE4IGluc2VydGlvbnMoKyksIDI1IGRlbGV0aW9ucygtKQorCitjb21taXQgMDZmMDY3NWZmYTJmODRhMjY2MWEzMTIxOTRmZWVmZGViMzg0MWVjMAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBKYW4gNSAwOTo0NDozNyAyMDExICswMTAwCisKKyAgICBSZW5hbWUgZGlyZWN0b3J5IHZhcmlhYmxlcyB0byBqdXN0IGRpcgorICAgIAorICAgIFRoZSBzaG9ydGVyIGZvcm0gaXMgdW5hbWJpZ3VvdXMgYW5kIHRha2VzIGxlc3Mgc2NyZWVuIHNpemUuCisKKyBkcGtnLWRlYi9idWlsZC5jICAgIHwgICAzMyArKysrKysrKysrKysrKy0tLS0tLS0tLS0tCisgZHBrZy1kZWIvZHBrZy1kZWIuaCB8ICAgIDIgKy0KKyBkcGtnLWRlYi9leHRyYWN0LmMgIHwgICAyNiArKysrKysrKysrKystLS0tLS0tCisgZHBrZy1kZWIvaW5mby5jICAgICB8ICAgNjYgKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBzcmMvYXJjaGl2ZXMuYyAgICAgIHwgICAxNCArKysrKy0tLS0tCisgNSBmaWxlcyBjaGFuZ2VkLCA3OCBpbnNlcnRpb25zKCspLCA2MyBkZWxldGlvbnMoLSkKKworY29tbWl0IDBiNjdmOGQxZDU0MGUzY2Q1MmQ3ODQ5Yjc2N2VkMWE5YmFlMDIzNjgKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgTm92IDI2IDA2OjI0OjQ5IDIwMTAgKzAxMDAKKworICAgIGRwa2ctZGViOiBSZWR1Y2Ugc2NvcGUgb2YgdmFyaWFibGVzIGluIGRvX2J1aWxkKCkKKworIGRwa2ctZGViL2J1aWxkLmMgfCAgIDQzICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDMwIGluc2VydGlvbnMoKyksIDEzIGRlbGV0aW9ucygtKQorCitjb21taXQgNzk3MTE1NDY4NTExNTUxYjA4YjhmZDc5YTlkNzg3ZGMxN2ZiYTlmZQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBOb3YgMjUgMjM6MTg6NTggMjAxMCArMDEwMAorCisgICAgbGliZHBrZzogSW5zdGFsbCBoZWFkZXIgZmlsZSBlaGFuZGxlLmgKKyAgICAKKyAgICBNaXNzZWQgaW4gY29tbWl0IDZlNWQ1YzFmMDVlZGJlMGNlMjIxM2E2NjU4YjQzODY2OGZlNDhjYmEuCisKKyBsaWIvZHBrZy9NYWtlZmlsZS5hbSB8ICAgIDEgKworIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgZjllZDQxYzRmNjFkMmIwMzdhMGZhY2EwOGE0MDU4MWMxYmMzODViMQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBOb3YgMjUgMDE6MjM6MDcgMjAxMCArMDEwMAorCisgICAgZHBrZy1xdWVyeTogUmVmYWN0b3IgLS1saXN0IGhlYWRlciBwcmludGluZyBpbnRvIGxpc3RfZm9ybWF0X3ByaW50X2hlYWRlcigpCisKKyBzcmMvcXVlcnljbWQuYyB8ICAgNjcgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMzggaW5zZXJ0aW9ucygrKSwgMjkgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBkYmEzNTU3OGExMWI3ZmQ4ODdmZGEyOGQyMjA4M2U2MTA0N2FjMWQyCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IE5vdiAyNSAwMDozNjoyNyAyMDEwICswMTAwCisKKyAgICBkcGtnLXF1ZXJ5OiBSZWZhY3RvciAtLWxpc3QgZm9ybWF0IGNyZWF0aW9uIGludG8gbmV3IGxpc3RfZm9ybWF0X2luaXQoKQorCisgc3JjL3F1ZXJ5Y21kLmMgfCAgMTE0ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA2OSBpbnNlcnRpb25zKCspLCA0NSBkZWxldGlvbnMoLSkKKworY29tbWl0IDQ5ZjhiZDc4OWVjYTNhM2I3YzhkNTc5NzQwNzBkNGU0ZDA1NWI0MmQKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgTm92IDI0IDAzOjA2OjUzIDIwMTAgKzAxMDAKKworICAgIHMtcy1kOiBSZW5hbWUgZG9faGVscCgpIHRvIHVzYWdlKCkKKworIHV0aWxzL3N0YXJ0LXN0b3AtZGFlbW9uLmMgfCAgICA0ICsrLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IGRmN2RhYmQ5NWFkZmVlMmUwN2U3MGI2YmM2MGMyMTZjY2JhMGQyNzIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgTm92IDIzIDIzOjE1OjQ3IDIwMTAgKzAxMDAKKworICAgIHMtcy1kOiBSZW5hbWUgY2xlYXIoKSB0byBwaWRfbGlzdF9mcmVlKCkKKworIHV0aWxzL3N0YXJ0LXN0b3AtZGFlbW9uLmMgfCAgICA2ICsrKy0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQorCitjb21taXQgZGI1NmMyYmJhOTlmMjJjODc5YmJiZmZiNGIwMjBmNDE4ZjUwOGY4ZgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBOb3YgMjMgMjM6MTU6MzMgMjAxMCArMDEwMAorCisgICAgcy1zLWQ6IFJlbmFtZSBwdXNoKCkgdG8gcGlkX2xpc3RfcHVzaCgpCisKKyB1dGlscy9zdGFydC1zdG9wLWRhZW1vbi5jIHwgICAgNiArKystLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworY29tbWl0IDhhMmY0ZjY4NjY3OTBiNWFlOWU4OTMxZGNjYjE5YzEwYjI3NDM5N2UKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgTm92IDIzIDIzOjA1OjA0IDIwMTAgKzAxMDAKKworICAgIHMtcy1kOiBSZW5hbWUgY2hlY2soKSB0byBwaWRfY2hlY2soKQorCisgdXRpbHMvc3RhcnQtc3RvcC1kYWVtb24uYyB8ICAgMTIgKysrKysrLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA2IGluc2VydGlvbnMoKyksIDYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA4ODZkMjkxMWJkYjIyNTNhNWEzMzFkMTA5ZjE1ZmQ4YmQ5ZDQwMjdhCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIE5vdiAyMyAyMjozODoxNiAyMDEwICswMTAwCisKKyAgICBzLXMtZDogUmVtb3ZlIHN0YXRpYyBmdW5jdGlvbiBkZWNsYXJhdGlvbnMKKworIHV0aWxzL3N0YXJ0LXN0b3AtZGFlbW9uLmMgfCAgIDE0IC0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAwIGluc2VydGlvbnMoKyksIDE0IGRlbGV0aW9ucygtKQorCitjb21taXQgZjUzMTUxYzVjNzM4YjA5MDI4MTVhZDNjZGVhZTM1MDA1Nzk3ZjA5OQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBOb3YgMjMgMjI6MzE6MDEgMjAxMCArMDEwMAorCisgICAgcy1zLWQ6IE1ha2Ugb25seSBzY2hlZF9nb3RvIHVzZSBnb3RvIGluc3RlYWQgb2YgdGhlIG90aGVyIGVudW0gdmFsdWVzCisgICAgCisgICAgVGhpcyBtYWtlcyBzY2hlZF9nb3RvIHVzYWdlIG1vcmUgb2J2aW91cywgbWFrZXMgdGhlIGZvciBtb3JlIG5hdHVyYWwsCisgICAgYW5kIHJlbW92ZXMgb25lIGluc3RhbmNlIG9mIGdvdG8gdXNhZ2UuCisKKyB1dGlscy9zdGFydC1zdG9wLWRhZW1vbi5jIHwgICAxMiArKysrKy0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDUgaW5zZXJ0aW9ucygrKSwgNyBkZWxldGlvbnMoLSkKKworY29tbWl0IGU2MTE5MjRjM2UyY2E2ZTEzZTZjNTBmYWI2ZTAxZGEyNDA0NWMxMjkKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgTm92IDIzIDA0OjIxOjAzIDIwMTAgKzAxMDAKKworICAgIHMtcy1kOiBSZWZhY3RvciBmaW5pc2ggY29kZSBpbnRvIG5ldyBmaW5pc2hfc3RvcF9zY2hlZHVsZSgpCisgICAgCisgICAgVGhpcyByZW1vdmVzIGFuIHVubmVlZGVkIGFuZCB1Z2x5IGdvdG8sIGFuZCByZXBsYWNlcyB3aXRoIGEgcHJvcGVyCisgICAgZnVuY2l0b24uCisKKyB1dGlscy9zdGFydC1zdG9wLWRhZW1vbi5jIHwgICAyNyArKysrKysrKysrKysrKystLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDE1IGluc2VydGlvbnMoKyksIDEyIGRlbGV0aW9ucygtKQorCitjb21taXQgNmIwNDI2NWM3NDYzM2U0MmFkZGQ2M2JjZjMwNzYzNTQ1YjY0M2VjZgorQXV0aG9yOiBIZWxnZSBLcmV1dHptYW5uIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KK0RhdGU6ICAgRnJpIEphbiA3IDIxOjU1OjU5IDIwMTEgKzAxMDAKKworICAgIFVwZGF0ZSBHZXJtYW4gc2NyaXB0cyB0cmFuc2xhdGlvbgorICAgIAorICAgIFVwZGF0ZSB0byA1MTN0CisKKyBzY3JpcHRzL3BvL2RlLnBvIHwgIDI4MyArKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDE0NiBpbnNlcnRpb25zKCspLCAxMzcgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyZGY2ZTMzNTFmNzljOTZjODBmNTg2OTQ5OWE1Y2I0ZDU5ZjI5NDNmCitNZXJnZTogOTMwYmI3NyAxZDg3MmJmCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IEphbiA2IDIxOjU5OjQ0IDIwMTEgKzAxMDAKKworICAgIE1lcmdlIGNvbW1pdCAnMS4xNS44LjgnCisKK2NvbW1pdCAxZDg3MmJmOGVkMmE3OTc2YzkwMWFmZjIwYmYyYmQ2YzIwNjYwZjY1CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IEphbiA2IDIxOjA0OjUzIDIwMTEgKzAxMDAKKworICAgIFJlbGVhc2UgMS4xNS44LjgKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICA0ICsrLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDAwYWExYTg2NDkzZTQxNjBhYzk4ZDY1YjMyZmY3ZDBiNjRmZjZlMzcKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gSmFuIDMgMTA6MDE6MzcgMjAxMSArMDEwMAorCisgICAgRml4IG11bHRpcGxlIHNlY3VyaXR5IGlzc3VlcyB3aXRoIGRwa2ctc291cmNlIChDVkUtMjAxMC0xNjc5KQorICAgIAorICAgIC0gRW5oYW5jZSBjaGVja3MgdG8gY2F0Y2ggbWFsaWNpb3VzbHkgY3JhZnRlZCBwYXRjaGVzIHdoaWNoIGNvdWxkIG1vZGlmeQorICAgICAgZmlsZXMgb3V0c2lkZSBvZiB0aGUgdW5wYWNrZWQgc291cmNlIHBhY2thZ2UuCisgICAgLSBEbyBub3QgY29uc2lkZXIgYSB0b3AtbGV2ZWwgc3ltbGluayBsaWtlIGEgZGlyZWN0b3J5IHdoZW4KKyAgICAgIGV4dHJhY3RpbmcgYSB0YXJiYWxsLgorICAgIC0gRXhjbHVkZSAucGMgd2hpbGUgZXh0cmFjdGluZyB0aGUgdXBzdHJlYW0gdGFyYmFsbCBpbiAzLjAgKHF1aWx0KQorICAgICAgYXMgcGF0Y2ggYmxpbmRseSB3cml0ZXMgaW4gdGhhdCBkaXJlY3RvcnkgZHVyaW5nIHVucGFjayAoYW5kIHdvdWxkCisgICAgICBmb2xsb3cgYW55IGV4aXN0aW5nIHN5bWxpbmspLgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICAgICAgIHwgICAxMiArKysrLQorIHNjcmlwdHMvRHBrZy9Tb3VyY2UvQXJjaGl2ZS5wbSAgICB8ICAgIDIgKy0KKyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG0gfCAgICA3ICsrLQorIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG0gICAgICB8ICAgOTggKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLQorIDQgZmlsZXMgY2hhbmdlZCwgODEgaW5zZXJ0aW9ucygrKSwgMzggZGVsZXRpb25zKC0pCisKK2NvbW1pdCBlNzA1ODllNDdmMjdkMTc5ZGMwMTQxMmUzN2JkOGUwYjllNzYyMjdkCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIEphbiAzIDIxOjI1OjE4IDIwMTEgKzAxMDAKKworICAgIGRwa2ctc3BsaXQ6IFRydW5jYXRlIHRoZSBvdXRwdXQgZmlsZSB3aGVuIHNwbGl0dGluZyBhIHBhY2thZ2UKKyAgICAKKyAgICBVc2UgY3JlYXQoKSBpbnN0ZWFkIG9mIG9wZW4oKSB3aXRoIHRoZSBtaXNzaW5nIE9fVFJVTkMuCisgICAgCisgICAgUmVncmVzc2lvbiBpbnRyb2R1Y2VkIGluIGYyMTE1MTUxYzE5ZmYzN2IzMDUyOTZjMjMyMjU4MDdiMDgzMjA4NmIuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgfCAgICA0ICsrKysKKyBkcGtnLXNwbGl0L3NwbGl0LmMgfCAgICAyICstCisgMiBmaWxlcyBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA5MzBiYjc3NGM1YWViMmEyYTA4M2RlYjdiOTI0MzJhN2I3YWI5YTM1CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIEphbiAzIDEwOjMzOjI4IDIwMTEgKzAxMDAKKworICAgIERwa2c6OlNvdXJjZTo6UGFja2FnZTo6VjEucG06IGNvcnJlY3RseSBkZXRlY3QgZGViaWFuIGZpbGVzCisgICAgCisgICAgVGhlIGNvZGUgd2FzIGVycm9uZW91c2x5IGFzc3VtaW5nIHRoYXQgJG5ld2RpcmVjdG9yeSB3YXMgYWx3YXlzCisgICAgYSBzaW1wbGUgZmlsZW5hbWUsIGJ1dCBpdCBjYW4gYmUgYSBjb21wbGV0ZSBwYXRoLgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICAgICAgIHwgICAgMyArKysKKyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG0gfCAgICAyICstCisgMiBmaWxlcyBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBhNjZjMDUwOThlOWYwNWQwMDhlMjI1YzdjYmMzNDc5ZDM3YjBmOTFmCitBdXRob3I6IENocmlzdGlhbiBQRVJSSUVSIDxidWJ1bGxlQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBEZWMgMjAgMDc6MTM6MjggMjAxMCArMDEwMAorCisgICAgRml4IHR3byB0eXBvcyBpbiBGcmVuY2ggbWFucGFnZXMgdHJhbnNsYXRpb24KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICA4ICsrKysrKysrCisgbWFuL3BvL2ZyLnBvICAgICB8ICAgIDQgKystLQorIDIgZmlsZXMgY2hhbmdlZCwgMTAgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDg1ZmNlNDdjODEzMjMwZTBkOWI1MTgyNmFkYjQ3OWYxZjUxOWRmNmMKK01lcmdlOiAzMDBjMDg5IDhlZGFiZDIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gRGVjIDIwIDAzOjMwOjU1IDIwMTAgKzAxMDAKKworICAgIE1lcmdlIGJyYW5jaCAnc2lkJyAodGhyb3VnaCB0YWcgJzEuMTUuOC43JykKKyAgICAKKyAgICBDb25mbGljdHM6CisgICAgCWRlYmlhbi9jaGFuZ2Vsb2cKKyAgICAJZHNlbGVjdC9wby9lcy5wbworICAgIAlwby9lcy5wbworICAgIAlwby9wdC5wbworICAgIAlzY3JpcHRzL3BvL2VzLnBvCisgICAgCXNyYy9hcmNoaXZlcy5jCisKK2NvbW1pdCA4ZWRhYmQyMzE1NzYxMmM1YjlkYWI4ODk4M2IzNDE2NmVhNmZiOTAyCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIERlYyAyMCAwMjoyNjozNiAyMDEwICswMTAwCisKKyAgICBSZWxlYXNlIDEuMTUuOC43CisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgNCArKy0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAwNTA3NjVlOTk2OGNmZWRiZjkwYjljNTY2MGIyY2E4MTJhNzdiNTVkCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIERlYyAyMCAwMjozMToyMCAyMDEwICswMTAwCisKKyAgICBSZWdlbmVyYXRlIC5wb3QgZmlsZXMgYW5kIG1lcmdlIC5wbyBmaWxlcyB3aXRoIHRoZW0KKworIGRzZWxlY3QvcG8vYnMucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vY2EucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vY3MucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vZGEucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vZGUucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vZHNlbGVjdC5wb3QgIHwgICAgNCArLQorIGRzZWxlY3QvcG8vZWwucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vZXMucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vZXQucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vZXUucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vZnIucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vZ2wucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vaHUucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vaWQucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vaXQucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vamEucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8va28ucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vbmIucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vbmwucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vbm4ucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vcGwucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vcHQucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vcHRfQlIucG8gICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vcm8ucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vcnUucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vc2sucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vc3YucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vdGwucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vdmkucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vemhfQ04ucG8gICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vemhfVFcucG8gICAgIHwgICAgMiArLQorIG1hbi9wby9kcGtnLW1hbi5wb3QgICAgIHwgICAgMiArLQorIG1hbi9wby9mci5wbyAgICAgICAgICAgIHwgIDI0MCArKysrKysrKysrKysrKysrKy0tLS0tLS0tLQorIG1hbi9wby9zdi5wbyAgICAgICAgICAgIHwgICAyNSArKy0tCisgcG8vYXN0LnBvICAgICAgICAgICAgICAgfCAgMTQyICsrKysrKysrLS0tLS0tLS0KKyBwby9icy5wbyAgICAgICAgICAgICAgICB8ICAxNDIgKysrKysrKystLS0tLS0tLQorIHBvL2NhLnBvICAgICAgICAgICAgICAgIHwgIDE0NSArKysrKysrKy0tLS0tLS0tCisgcG8vY3MucG8gICAgICAgICAgICAgICAgfCAgMTQyICsrKysrKysrLS0tLS0tLS0KKyBwby9kYS5wbyAgICAgICAgICAgICAgICB8ICAxNDIgKysrKysrKystLS0tLS0tLQorIHBvL2RlLnBvICAgICAgICAgICAgICAgIHwgIDE0MiArKysrKysrKy0tLS0tLS0tCisgcG8vZHBrZy5wb3QgICAgICAgICAgICAgfCAgMTQ0ICsrKysrKysrLS0tLS0tLS0KKyBwby9kei5wbyAgICAgICAgICAgICAgICB8ICAxNDIgKysrKysrKystLS0tLS0tLQorIHBvL2VsLnBvICAgICAgICAgICAgICAgIHwgIDE0MiArKysrKysrKy0tLS0tLS0tCisgcG8vZW8ucG8gICAgICAgICAgICAgICAgfCAgICAyICstCisgcG8vZXMucG8gICAgICAgICAgICAgICAgfCAgNDQ2ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tCisgcG8vZXQucG8gICAgICAgICAgICAgICAgfCAgMTQyICsrKysrKysrLS0tLS0tLS0KKyBwby9ldS5wbyAgICAgICAgICAgICAgICB8ICAyODAgKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0KKyBwby9mci5wbyAgICAgICAgICAgICAgICB8ICAxODUgKysrKysrKystLS0tLS0tLS0tLS0KKyBwby9nbC5wbyAgICAgICAgICAgICAgICB8ICAxNDIgKysrKysrKystLS0tLS0tLQorIHBvL2h1LnBvICAgICAgICAgICAgICAgIHwgIDE0MiArKysrKysrKy0tLS0tLS0tCisgcG8vaWQucG8gICAgICAgICAgICAgICAgfCAgMTQyICsrKysrKysrLS0tLS0tLS0KKyBwby9pdC5wbyAgICAgICAgICAgICAgICB8ICAxNDIgKysrKysrKystLS0tLS0tLQorIHBvL2phLnBvICAgICAgICAgICAgICAgIHwgIDE1NyArKysrKysrKystLS0tLS0tLQorIHBvL2ttLnBvICAgICAgICAgICAgICAgIHwgIDE0MiArKysrKysrKy0tLS0tLS0tCisgcG8va28ucG8gICAgICAgICAgICAgICAgfCAgMTQyICsrKysrKysrLS0tLS0tLS0KKyBwby9rdS5wbyAgICAgICAgICAgICAgICB8ICAxNDIgKysrKysrKystLS0tLS0tLQorIHBvL2x0LnBvICAgICAgICAgICAgICAgIHwgIDE0MiArKysrKysrKy0tLS0tLS0tCisgcG8vbXIucG8gICAgICAgICAgICAgICAgfCAgMTQyICsrKysrKysrLS0tLS0tLS0KKyBwby9uYi5wbyAgICAgICAgICAgICAgICB8ICAxNDIgKysrKysrKystLS0tLS0tLQorIHBvL25lLnBvICAgICAgICAgICAgICAgIHwgIDE0MiArKysrKysrKy0tLS0tLS0tCisgcG8vbmwucG8gICAgICAgICAgICAgICAgfCAgMTQyICsrKysrKysrLS0tLS0tLS0KKyBwby9ubi5wbyAgICAgICAgICAgICAgICB8ICAxNDIgKysrKysrKystLS0tLS0tLQorIHBvL3BhLnBvICAgICAgICAgICAgICAgIHwgIDE0MiArKysrKysrKy0tLS0tLS0tCisgcG8vcGwucG8gICAgICAgICAgICAgICAgfCAgMTQyICsrKysrKysrLS0tLS0tLS0KKyBwby9wdC5wbyAgICAgICAgICAgICAgICB8ICAxNDIgKysrKysrKystLS0tLS0tLQorIHBvL3B0X0JSLnBvICAgICAgICAgICAgIHwgIDE0MiArKysrKysrKy0tLS0tLS0tCisgcG8vcm8ucG8gICAgICAgICAgICAgICAgfCAgMTQyICsrKysrKysrLS0tLS0tLS0KKyBwby9ydS5wbyAgICAgICAgICAgICAgICB8ICAxNTAgKysrKysrKystLS0tLS0tLQorIHBvL3NrLnBvICAgICAgICAgICAgICAgIHwgIDE0MiArKysrKysrKy0tLS0tLS0tCisgcG8vc3YucG8gICAgICAgICAgICAgICAgfCAgMTQyICsrKysrKysrLS0tLS0tLS0KKyBwby90aC5wbyAgICAgICAgICAgICAgICB8ICAxNDIgKysrKysrKystLS0tLS0tLQorIHBvL3RsLnBvICAgICAgICAgICAgICAgIHwgIDE0MiArKysrKysrKy0tLS0tLS0tCisgcG8vdmkucG8gICAgICAgICAgICAgICAgfCAgMTQyICsrKysrKysrLS0tLS0tLS0KKyBwby96aF9DTi5wbyAgICAgICAgICAgICB8ICAxNDIgKysrKysrKystLS0tLS0tLQorIHBvL3poX1RXLnBvICAgICAgICAgICAgIHwgIDE0MiArKysrKysrKy0tLS0tLS0tCisgc2NyaXB0cy9wby9jYS5wbyAgICAgICAgfCAgICAyICstCisgc2NyaXB0cy9wby9kZS5wbyAgICAgICAgfCAgICA0ICstCisgc2NyaXB0cy9wby9kcGtnLWRldi5wb3QgfCAgICA0ICstCisgc2NyaXB0cy9wby9lcy5wbyAgICAgICAgfCAgIDExICstCisgc2NyaXB0cy9wby9mci5wbyAgICAgICAgfCAgICAyICstCisgc2NyaXB0cy9wby9wbC5wbyAgICAgICAgfCAgICAyICstCisgc2NyaXB0cy9wby9ydS5wbyAgICAgICAgfCAgICAyICstCisgc2NyaXB0cy9wby9zdi5wbyAgICAgICAgfCAgICAyICstCisgODMgZmlsZXMgY2hhbmdlZCwgMzM4NCBpbnNlcnRpb25zKCspLCAzMTcxIGRlbGV0aW9ucygtKQorCitjb21taXQgYTE5NmI5NDg5ZmNlY2I3NWMzY2M3YWRkOWYxMjczOTY2Njk3YjQxOQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBEZWMgMjAgMDI6MjI6NTEgMjAxMCArMDEwMAorCisgICAgRml4IFNwYW5pc2ggc2NyaXB0cyB0cmFuc2xhdGlvbgorICAgIAorICAgIFNwbGl0IHR3byBhY2NpZGVudGFsbHkgbWVyZ2VkIGxpbmVzLgorCisgc2NyaXB0cy9wby9lcy5wbyB8ICAgIDMgKystCisgMSBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBkNzQ0ZTI0NDU4ODQ1MWM3NWZlMjRlMmY3ODQ2MDE5MDFmNDU5ZDZkCitBdXRob3I6IFRoZXBwaXRhayBLYXJvb25ib29ueWFuYW4gPHRoZXBAbGludXgudGhhaS5uZXQ+CitEYXRlOiAgIE1vbiBEZWMgMjAgMDE6NTY6NTcgMjAxMCArMDEwMAorCisgICAgVXBkYXRlIFRoYWkgZHBrZyB0cmFuc2xhdGlvbgorICAgIAorICAgIENsb3NlczogIzYwNzUwMQorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDEgKworIHBvL3RoLnBvICAgICAgICAgfCAgMTExICsrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgMTkgaW5zZXJ0aW9ucygrKSwgOTMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAzOWMyNzAxNGQwNTM3Y2E2NjdkNmE4M2IxMGM0MjM2ZTc4NzhkODQwCitBdXRob3I6IEZlbGlwZSBFLiBGLiBkZSBDYXN0cm8gPGZlZmNhc0BnbWFpbC5jb20+CitEYXRlOiAgIE1vbiBEZWMgMjAgMDE6NTI6MTMgMjAxMCArMDEwMAorCisgICAgVXBkYXRlIEVzcGVyYW50byBkcGtnIHRyYW5zbGF0aW9uCisgICAgCisgICAgQ2xvc2VzOiAjNjA3NDM3CisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMSArCisgcG8vZW8ucG8gICAgICAgICB8ICAyNzcgKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAxMTkgaW5zZXJ0aW9ucygrKSwgMTU5IGRlbGV0aW9ucygtKQorCitjb21taXQgNjYwZmMzODljNTY2NjIzYTFmZjVkZTM3YzFkOTFlNzgzMjA0OGQxMAorQXV0aG9yOiBIZWxnZSBLcmV1dHptYW5uIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KK0RhdGU6ICAgU2F0IERlYyAxOCAxODoxNToxNiAyMDEwICswMTAwCisKKyAgICBJbXByb3ZlIGZpeCBhZnRlciBkaXN1c3Npb24gd2l0aCBTdmVuIEpvYWNoaW0gKG5vdyBtb3JlIGNvbnNpc3RlbnQgZXZlbikKKworIHNjcmlwdHMvcG8vZGUucG8gfCAgICA0ICsrLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IGZmZGM4Yzg4ZDcwMDYxNzBhYzY3ZmQ0NGVlM2NhMjIyMmRkMmZiNjkKK0F1dGhvcjogQXJvbiBYdSA8aGFwcHlhcm9uLnh1QGdtYWlsLmNvbT4KK0RhdGU6ICAgU2F0IERlYyAxOCAwMjozMDozMSAyMDEwICswMTAwCisKKyAgICBVcGRhdGUgU2ltcGxpZmllZCBDaGluZXNlIGRwa2cgdHJhbnNsYXRpb24KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAxICsKKyBwby96aF9DTi5wbyAgICAgIHwgMzM1OCArKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDQxMiBpbnNlcnRpb25zKCspLCAyOTQ3IGRlbGV0aW9ucygtKQorCitjb21taXQgNmEzZGEzZGIxYTE1YTc3MTIyOTk1MWJlYzVlNzM4OWFkZTVlMjA5OAorQXV0aG9yOiBIYW5zIEZyZWRyaWsgTm9yZGhhdWcgPGhhbnNAbm9yZGhhdWcucHJpdi5ubz4KK0RhdGU6ICAgU2F0IERlYyAxOCAwMDowNjowOCAyMDEwICswMTAwCisKKyAgICBVcGRhdGUgTm9yd2VnaWFuIEJva23DpWwgZHBrZyB0cmFuc2xhdGlvbgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDEgKworIHBvL25iLnBvICAgICAgICAgfCAgIDU2ICsrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCA4IGluc2VydGlvbnMoKyksIDQ5IGRlbGV0aW9ucygtKQorCitjb21taXQgZjcwYWUyYTgxMTZkMWUxNjU3YmEwOGUzNDUwOGQ0ZGZmNjAyMGQxOAorQXV0aG9yOiBNaWxvIENhc2FncmFuZGUgPG1pbG9AdWJ1bnR1LmNvbT4KK0RhdGU6ICAgRnJpIERlYyAxNyAwMDowNToxNCAyMDEwICswMTAwCisKKyAgICBVcGRhdGUgSXRhbGlhbiBkcGtnIHRyYW5zbGF0aW9uCisgICAgCisgICAgQ2xvc2VzOiAjNjA3MzA2CisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMSArCisgcG8vaXQucG8gICAgICAgICB8ICAgNTAgKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDYgaW5zZXJ0aW9ucygrKSwgNDUgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBiNmJlMGM0ZjBkYWM3ZmRiOGIxMzgwMjZhMTM1MjdlMTFhZmQ4ZTRkCitBdXRob3I6IEl2YW4gTWFzw6FyIDxoZWxpeDg0QGNlbnRydW0uc2s+CitEYXRlOiAgIFRodSBEZWMgMTYgMjI6MjU6NTAgMjAxMCArMDEwMAorCisgICAgVXBkYXRlIFNsb3ZhayBkcGtnIHRyYW5zbGF0aW9uCisgICAgCisgICAgQ2xvc2VzOiAjNjA3MzAyCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMSArCisgcG8vc2sucG8gICAgICAgICB8ICAgNDggKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDQ1IGRlbGV0aW9ucygtKQorCitjb21taXQgMDk3ZDM2ZGM2Y2EzNmRiZjFjZTJlZTYyZmRlMWQ5YzM1M2ZjZTVjZgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBEZWMgMTYgMjI6MjI6MjggMjAxMCArMDEwMAorCisgICAgRml4IGVuY29kaW5nIG9mIFgtUE9GaWxlLVNwZWxsRXh0cmEgZmllbGQgaW4gU3BhbmlzaCB0cmFuc2xhdGlvbnMKKworIGRzZWxlY3QvcG8vZXMucG8gfCAgICAyICstCisgcG8vZXMucG8gICAgICAgICB8ICAgMTIgKysrKysrLS0tLS0tCisgc2NyaXB0cy9wby9lcy5wbyB8ICAgIDIgKy0KKyAzIGZpbGVzIGNoYW5nZWQsIDggaW5zZXJ0aW9ucygrKSwgOCBkZWxldGlvbnMoLSkKKworY29tbWl0IDg3OGRhYjcxMmZhZmQ4ZjA1MGIyNGM1MDg1ZGQ2YWQ2ZDU2MWMwMTcKK0F1dGhvcjogWXVyaSBLb3psb3YgPHl1cmF5QGtvbXlha2luby5ydT4KK0RhdGU6ICAgVGh1IERlYyAxNiAyMDo1NTo0OSAyMDEwICswMTAwCisKKyAgICBVcGRhdGUgUnVzc2lhbiBkcGtnIHRyYW5zbGF0aW9uCisgICAgCisgICAgQ2xvc2VzOiAjNjA3MjkyCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMSArCisgcG8vcnUucG8gICAgICAgICB8ICAgNzIgKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDE4IGluc2VydGlvbnMoKyksIDU1IGRlbGV0aW9ucygtKQorCitjb21taXQgNjcxOWNkZmE0N2RlNmZlZmM1ZDQxMmM1YjFkYmRhYWYwYTRmNGUxNAorQXV0aG9yOiBLZW5zaGkgTXV0byA8a211dG9AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IERlYyAxNiAxOTozMDowOCAyMDEwICswMTAwCisKKyAgICBVcGRhdGUgSmFwYW5lc2UgZHBrZyB0cmFuc2xhdGlvbgorICAgIAorICAgIENsb3NlczogIzYwNzI1OQorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDEgKworIHBvL2phLnBvICAgICAgICAgfCAgIDY3ICsrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAxMSBpbnNlcnRpb25zKCspLCA1NyBkZWxldGlvbnMoLSkKKworY29tbWl0IDI0ZTBjOThjYzJmMTY2OGNkNjg1YTExMDFlMWRkYTJiYzg5YjIxYmQKK0F1dGhvcjogScOxYWtpIExhcnJhw7FhZ2EgTXVyZ29pdGlvIDxkb290ZW9AZXVza2FsZ251Lm9yZz4KK0RhdGU6ICAgVGh1IERlYyAxNiAxOToyNTo1MCAyMDEwICswMTAwCisKKyAgICBVcGRhdGUgQmFzcXVlIGRwa2cgdHJhbnNsYXRpb24KKyAgICAKKyAgICBDbG9zZXM6ICM2MDcyNTMKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAxICsKKyBwby9ldS5wbyAgICAgICAgIHwgIDE5MiArKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDUzIGluc2VydGlvbnMoKyksIDE0MCBkZWxldGlvbnMoLSkKKworY29tbWl0IDdmZTdiY2UzOGFjOTM5NzdhMDA2OTQwMmZmNTFhZjAyNzZkYzNmNzAKK0F1dGhvcjogU3ZlbiBKb2FjaGltIDxzdmVuam9hY0BnbXguZGU+CitEYXRlOiAgIFdlZCBEZWMgMTUgMjA6MjY6NDIgMjAxMCArMDEwMAorCisgICAgRml4IGEgdHJhbnNsYXRpb24gZXJyb3IgaW4gdGhlIEdlcm1hbiBzY3JpcHRzIHRyYW5zbGF0aW9uCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMSArCisgc2NyaXB0cy9wby9kZS5wbyB8ICAgIDQgKystLQorIDIgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgNTdkYWU3MzlkYWZjMDNkZDYzZTU0NjE4OGJiMTA2ZGVlYjc5OTc4MAorQXV0aG9yOiBPbWFyIENhbXBhZ25lIDxvY2FtcGFnbmVAZ21haWwuY29tPgorRGF0ZTogICBXZWQgRGVjIDE1IDIwOjIwOjE1IDIwMTAgKzAxMDAKKworICAgIFVwZGF0ZSBTcGFuaXNoIHRyYW5zbGF0aW9uIG9mIG1hbnVhbCBwYWdlcworICAgIAorICAgIFVwZGF0ZSB0byAxOTQwdC4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAxICsKKyBtYW4vcG8vZXMucG8gICAgIHwgICAyNCArKysrKysrKysrKysrKysrKysrLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDIwIGluc2VydGlvbnMoKyksIDUgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA2MWUyZDlhZjJjNGFkMTVhM2IxM2UxYmYyZjkzYTlhOTBhMDc2ZGMxCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIERlYyAxMCAxMzoxMTozMSAyMDEwICswMTAwCisKKyAgICBDaGFuZ2Vsb2cgcG9saWNlCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAxNiArKysrKysrLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA3IGluc2VydGlvbnMoKyksIDkgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA4ODhjMzQ2MTg2NjczYjZlNjM3ZjM0ZWU0N2I5YTAxMzdkNjRiODEyCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIERlYyAxMCAwMToyMTowMiAyMDEwICswMTAwCisKKyAgICBkcGtnLXF1ZXJ5OiBGaXggc3RhbnphIGRlbGltaXRpbmcgb24gLUwsIC1zIGFuZCAtcCBvdXRwdXQKKyAgICAKKyAgICBUaGUgY29kZSB3YXMgb25seSBwcmludGluZyBhIGRlbGltaXRpbmcgbmV3IGxpbmUgb24gdGhlIHNlY29uZCB0byBsYXN0CisgICAgc3RhbnphLiBJbnZlcnQgdGhlIGxvZ2ljIGFuZCBkbyBpdCBhbHdheXMgZXhjZXB0IG9uIHRoZSBsYXN0IG9uZS4KKyAgICAKKyAgICBDbG9zZXM6ICM2MDYzMTUKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAyICsrCisgc3JjL3F1ZXJ5Y21kLmMgICB8ICAgIDIgKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDhlN2Y1NDVhOWQ0MmEwMmNlYTUyMTM5OWRhNTI5MzI3NzQ5MjYyMzEKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgRGVjIDEwIDAxOjU5OjU1IDIwMTAgKzAxMDAKKworICAgIGRwa2c6IE9uIG5vbi1MaW51eCB1c2UgZmFkdmlzZShGQURWX0RPTlRORUVEKSB0byBpbml0aWF0ZSB3cml0ZWJhY2sKKyAgICAKKyAgICBVc2UgdGhlIHBvc2l4X2ZhZHZpc2UoUE9TSVhfRkFEVl9ET05UTkVFRCkgaGludCB0byBub3RpZnkgdGhlIGtlcm5lbAorICAgIGRwa2cgZG9lcyBub3QgbmVlZCB0aGUgdW5wYWNrZWQgZmlsZXMgYW55IGxvbmdlciBhbmQgYXMgc3VjaCBpdCBjYW4KKyAgICBzdGFydCB3cml0ZWJhY2sgYXN5bmNocm9ub3VzbHkuCisgICAgCisgICAgQWx0aG91Z2ggUE9TSVggZG9lcyBub3QgZXhwbGljaXRseSBzYXkgc28sIGFuZCB0aGlzIGlzIG1lcmVseSBhIGhpbnQsCisgICAgdGhpcyBpcyB0aGUgb25seSBzZW5zaWJsZSB0aGluZyB0byBkbyBmb3IgdGhlIGtlcm5lbC4gT24gTGludXggYXQgbGVhc3QKKyAgICBpdCBhbHNvIGV2aWN0cyB0aGUgcGFnZXMgaWYgdGhleSBhcmUgbm90IGN1cnJlbnRseSB1bmRlciB3cml0ZWJhY2ssCisgICAgbG9ja2VkIG9yIGRpcnR5LCB3aGljaCBtaWdodCBiZSB1bmRlc2lyZWQgaWYgYSBtYWludGFpbmVyIHNjcmlwdCBoYXMKKyAgICB0byB1c2UgdGhlIGRhdGEsIGJ1dCB1bmxpa2VseSBhcyB0aGUgd3JpdGViYWNrIHdpbGwgc3RpbGwgYmUgb25nb2luZworICAgIGlmIGl0IHN0YXJ0ZWQgYXQgYWxsLgorICAgIAorICAgIEluIGFkZGl0aW9uIGl0IGNvdWxkIGJlIGFyZ3VlZCB0aGUgTGludXggaW1wbGVtZW50YXRpb24gaXMgbm90IG9wdGltYWwKKyAgICBhcyB0aGUgc3RhbmRhcmQgdGFsa3MgYWJvdXQgdGhlIGFwcGxpY2F0aW9uIG5vdCBuZWVkaW5nIHRoZSBkYXRhIGFueQorICAgIGxvbmdlciwgbm90IHRoZSBzeXN0ZW0uIFNvIGl0IHNlZW1zIHRoZSBOZXRCU0QgaW1wbGVtZW50YXRpb24gd2hpY2gKKyAgICBqdXN0IG1hcmtzIHRoZSBwYWdlcyBhcyBub3QgYWN0aXZlIHdvdWxkIGJlIG1vcmUgY29ycmVjdC4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAzICsrKworIHNyYy9hcmNoaXZlcy5jICAgfCAgICAyICsrCisgMiBmaWxlcyBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyOTIxZTgwYzJmNzY0NWY2NmExOTdjNTI2NWNkYWRhZTU4MTQyNjcyCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIERlYyA4IDA2OjQ0OjAwIDIwMTAgKzAxMDAKKworICAgIGRwa2c6IE9uIExpbnV4IGZpbmlzaCB3cml0ZWJhY2sgYmVmb3JlIGZzeW5jCisgICAgCisgICAgVGhlIHNlY29uZCBzeW5jX2ZpbGVfcmFuZ2UoKSBjYWxsLCB3aXRoIHRoZSBvcGVyYXRpb24KKyAgICBTWU5DX0ZJTEVfUkFOR0VfV0FJVF9CRUZPUkUsIHdpbGwgYmxvY2sgdW50aWwgdGhlIHByZXZpb3VzbHkKKyAgICBpbml0aWF0ZWQgd3JpdGViYWNrIGhhcyBjb21wbGV0ZWQuCisgICAgCisgICAgV2UgZmluaXNoIHRoZSB3cml0ZWJhY2sgZm9yIGFsbCBmaWxlcyBiZWZvcmUgY2FsbGluZyBmc3luYy4gVGhpcworICAgIGJhc2ljYWxseSBlbnN1cmVzIHRoYXQgdGhlIGRlbGF5ZWQgYWxsb2NhdGlvbiBoYXMgYmVlbiByZXNvbHZlZDsKKyAgICB0aGF0IGlzLCB0aGUgZGF0YSBibG9ja3MgaGF2ZSBiZWVuIGFsbG9jYXRlZCBhbmQgd3JpdHRlbiwgYW5kIHRoZQorICAgIGlub2RlIHVwZGF0ZWQgKGluIG1lbW9yeSksIGJ1dCBub3QgbmVjZXNzYXJpbHkgcHVzaGVkIG91dCB0byBkaXNrLgorICAgIFNvIHRoYXQgbGF0ZXIgZnN5bmMgY2FuIGJlY29tZSBuby1vcHMsIG1pbmltaXppbmcgdGhlIG51bWJlciBvZgorICAgIChjb3N0bHkpIGpiZDIgY29tbWl0cy4KKyAgICAKKyAgICBTdWdnZXN0ZWQtYnk6IFRlZCBUcydvIDx0eXRzb0BtaXQuZWR1PgorICAgIEJhc2VkLW9uLXBhdGNoLWJ5OiBKb25hdGhhbiBOaWVkZXIgPGpybmllZGVyQGdtYWlsLmNvbT4KKyAgICBTaWduZWQtb2ZmLWJ5OiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKyBzcmMvYXJjaGl2ZXMuYyB8ICAgMzYgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCisgMSBmaWxlcyBjaGFuZ2VkLCAzNiBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgMjAzYzk5YjBkZGE0MDE1OWQ4MjQ5NDRlNDA3YTJmNzIwZjEwODhlZAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBEZWMgOCAwNjoyOTowNyAyMDEwICswMTAwCisKKyAgICBkcGtnOiBPbiBMaW51eCBpbml0aWF0ZSB3cml0ZWJhY2sgb2YgdW5wYWNrZWQgZmlsZXMgQVNBUAorICAgIAorICAgIFRvIGF2b2lkIHBlcmZvcm1hbmNlIGRlZ3JhZGF0aW9uIG9uIGZpbGVzeXN0ZW1zIHdpdGggImFsbG9jYXRlIG9uCisgICAgZmx1c2giIHNlbWFudGljcyAobGlrZSB4ZnMsIHViaWZzLCBoZnMrLCBhbmQgZXh0NCB3aXRob3V0IG5vZGVsYWxsb2MpLAorICAgIHN0YXJ0IHdyaXRpbmcgYmFjayBlYWNoIGZpbGUgb25jZSBpdCBoYXMgZmluaXNoZWQgYmVpbmcgZXh0cmFjdGVkLgorICAgIFRoaXMgZG9lc24ndCBhY3R1YWxseSB3YWl0IGZvciB0aGUgd3JpdGUgdG8gZmluaXNoOyBpdCBqdXN0IHN0YXJ0cworICAgIHRoZSB3cml0ZWJhY2suCisgICAgCisgICAgVGhlIHN5bmNfZmlsZV9yYW5nZSgpIGNhbGwgaGFzIGJlZW4gYXZhaWxhYmxlIHNpbmNlIExpbnV4IDIuNi4xNy4KKyAgICBPbiBub24tTGludXggc3lzdGVtcyB3ZSBjYW4gc2tpcCBpdC4KKyAgICAKKyAgICBDbG9zZXM6ICM2MDUwMDkKKyAgICAKKyAgICBTdWdnZXN0ZWQtYnk6IFRlZCBUcydvIDx0eXRzb0BtaXQuZWR1PgorICAgIEJhc2VkLW9uLXBhdGNoLWJ5OiBKb25hdGhhbiBOaWVkZXIgPGpybmllZGVyQGdtYWlsLmNvbT4KKyAgICBTaWduZWQtb2ZmLWJ5OiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMyArKysKKyBzcmMvYXJjaGl2ZXMuYyAgIHwgICAxMSArKysrKysrKysrKworIDIgZmlsZXMgY2hhbmdlZCwgMTQgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IGE3NjZmNTAxZjZkYTQ2YWNhMDcwYzMxNWU2NDI5ZTE2M2QxODgyMDIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgRGVjIDEgMDQ6Mjg6NDUgMjAxMCArMDEwMAorCisgICAgZHBrZzogRGVmZXIgc3ltbGluayByZW5hbWVzIHRvIGF2b2lkIGVuZGluZyB1cCB3aXRoIGJyb2tlbiBzeW1saW5rcworICAgIAorICAgIFRoZSBicm9rZW4gc3ltbGlua3MgYXJlIHBhcnRpY3VsYXJseSBwZXJuaWNpb3VzIGFzIHRoZXkgaW1wbHkgYSBzaGFyZWQKKyAgICBsaWJyYXJ5IFNPTkFNRSBwYXRoIG1pZ2h0IHBvaW50IHRvIG5vd2hlcmUgYW5kIHRodXMgYXBwbGljYXRpb25zIHdpbGwKKyAgICBmYWlsIHRvIGdldCBkeW5hbWljYWxseSBsaW5rZWQuCisgICAgCisgICAgRGVmZXJyaW5nIHN5bWxpbmtzIGlzIHNhZmUgYXMgdGhleSBhcmUgYWx3YXlzIGF0IHRoZSBlbmQgb2YgdGhlIHRhcgorICAgIGFyY2hpdmUsIGFuZCB0aGV5IGFyZSBwcm9jZXNzZWQgbGFzdCBvbiBkZWZlcnJlZCByZW5hbWVzIGFzIHRoZXkgYXJlCisgICAgYXBwZW5kZWQgYXQgdGhlIGVuZCBvZiB0aGUgbmV3IGxpc3QgZmlsZXMuCisgICAgCisgICAgQ2xvc2VzOiAjNjA1NTM2CisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgNSArKysrKworIHNyYy9hcmNoaXZlcy5jICAgfCAgICAyICstCisgMiBmaWxlcyBjaGFuZ2VkLCA2IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyZTc2NDA3OGNjM2JjNzVkYzc0MjY2NzgzNzdiYjFjMTJlYTAwYmExCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIERlYyAxIDA0OjM3OjMyIDIwMTAgKzAxMDAKKworICAgIFVwZGF0ZSBDYXRhbGFuIHByb2dyYW0gdHJhbnNsYXRpb24KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAxICsKKyBwby9jYS5wbyAgICAgICAgIHwgICA0NiArKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDQ0IGRlbGV0aW9ucygtKQorCitjb21taXQgNzI1OTMzZDZmNzNkN2Q3NDljNDY3NzhjZmYxY2JiNzQxNjQzMWE0YgorQXV0aG9yOiBKYXZpZXIgRmVybmFuZGV6LVNhbmd1aW5vIDxqZnNAZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIERlYyAxMCAwMTozNDo0MyAyMDEwICswMTAwCisKKyAgICBVcGRhdGVkIGFsbCBTcGFuaXNoIHRyYW5zbGF0aW9ucyB0byBzeW5jIHdpdGggbWFzdGVyLgorICAgIAorICAgIFRyYW5zbGF0aW9ucyBhcmUgbm93IGF0IDEwMCUKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICA2ICsKKyBkc2VsZWN0L3BvL2VzLnBvIHwgIDU0OCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBzY3JpcHRzL3BvL2VzLnBvIHwgICA0NCArKysrLQorIDMgZmlsZXMgY2hhbmdlZCwgMzMyIGluc2VydGlvbnMoKyksIDI2NiBkZWxldGlvbnMoLSkKKworY29tbWl0IDdjMjdkNTg0NjAzZDZjZGE4MmQ2NjhmMGRhMWZiNjQyMDFlNDU2ZDcKK0F1dGhvcjogSmF2aWVyIEZlcm5hbmRlei1TYW5ndWlubyA8amZzQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBEZWMgMTAgMDE6Mjc6MzYgMjAxMCArMDEwMAorCisgICAgVXBkYXRlZCBTcGFuaXNoIHRyYW5zbGF0aW9uCisgICAgCisgICAgVXB0YXRlZCB0byA5ODV0IGZyb20gbWFzdGVyIGJyYW5jaCB3aXRoIHR5cG8gZml4ZXMgaW5jbHVkZWQuCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMSArCisgcG8vZXMucG8gICAgICAgICB8IDE2NDMgKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCA2OTAgaW5zZXJ0aW9ucygrKSwgOTU0IGRlbGV0aW9ucygtKQorCitjb21taXQgMzAwYzA4OWMzZTE3ODQyMDkxNWM5ODA1YWU3M2QyYjk5ZTI1Y2ZjYworQXV0aG9yOiBKYXZpZXIgRmVybmFuZGV6LVNhbmd1aW5vIDxqZnNAZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIERlYyAxMCAwMToyNjo0NiAyMDEwICswMTAwCisKKyAgICBGaXggdHlwb3MgaW4gUE8gZmlsZQorCisgcG8vZXMucG8gfCAgICA3ICsrKystLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworY29tbWl0IDVlNzAyMzY2Y2JhOGM5OGE0NTY3NDBkYmI5NzIzOGI1MTFlZWMyNmQKK01lcmdlOiAwZTIzOGI4IGYzZmE1OGEKK0F1dGhvcjogSmF2aWVyIEZlcm5hbmRlei1TYW5ndWlubyA8amZzQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBEZWMgMTAgMDE6MjA6NTkgMjAxMCArMDEwMAorCisgICAgTWVyZ2UgYnJhbmNoICdtYXN0ZXInIG9mIHNzaDovL2dpdC5kZWJpYW4ub3JnL2dpdC9kcGtnL2Rwa2cKKworY29tbWl0IDBlMjM4YjhlMDI4MTI3MGEzZDEyYmVjNjk0NTBmNzI4YWY2ZjNkYmYKK0F1dGhvcjogSmF2aWVyIEZlcm5hbmRlei1TYW5ndWlubyA8amZzQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBEZWMgMTAgMDE6MjA6MzIgMjAxMCArMDEwMAorCisgICAgRml4IHR5cG8KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAyICstCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyYmEwNmVhM2UyOWM5MTNhYzRmOTY0OWI5NTYxY2ZiMWE2OTJhMzVjCitBdXRob3I6IEphdmllciBGZXJuYW5kZXotU2FuZ3Vpbm8gPGpmc0BkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgRGVjIDEwIDAxOjE5OjE3IDIwMTAgKzAxMDAKKworICAgIEZpeCB0eXBvcyBpbiB0cmFuc2xhdGlvbiBmb3JtYXQgc3RyaW5ncworCisgcG8vZXMucG8gfCAgICA4ICsrKystLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBmM2ZhNThhMzMxN2UzNDU2YmNmYjQ5MGFhZTY2ZmE0MzcxOTQ5ZmFlCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IERlYyA5IDE2OjEzOjQyIDIwMTAgKzAxMDAKKworICAgIGRwa2ctc2hsaWJkZXBzOiBwcmludCB0aGUgZXJyb3Igbm90ZSBhYm91dCBtaXNzaW5nIGxpYnJhcmllcyBvbmx5IG9uY2UKKyAgICAKKyAgICBXaXRoIHRoZSBwcmV2aW91cyBjaGFuZ2UsIGRwa2ctc2hsaWJkZXBzIGNhbiBub3cgcHJpbnQgdGhlIGVycm9yIGFib3V0CisgICAgbWlzc2luZyBsaWJyYXJ5IG11bHRpcGxlIHRpbWVzLiBJdCBtYWtlcyBubyBzZW5zZSB0byBwcmludCB0aGUgYXNzb2NpYXRlZAorICAgIG5vdGUgbXVsdGlwbGUgdGltZXMuIEluc3RlYWQgaXQgc2hvdWxkIGJlIHByaW50ZWQgb25jZSBhdCB0aGUgZW5kLgorCisgc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbCB8ICAgMTEgKysrKysrLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDYgaW5zZXJ0aW9ucygrKSwgNSBkZWxldGlvbnMoLSkKKworY29tbWl0IDQxMDUzNzllMjUzMmQ2ODU3OWNmYjFkOTVlYjQ5MjA1NDE0NTA3ZGIKK0F1dGhvcjogQ2hyaXMgQmFpbmVzIDxjYmFpbmVzOEBnbWFpbC5jb20+CitEYXRlOiAgIFRodSBEZWMgOSAxNTo1ODo0OCAyMDEwICswMTAwCisKKyAgICBkcGtnLXNobGliZGVwczogZG8gbm90IGZhaWwgaW1tZWRpYXRseSB3aGVuIGEgbGlicmFyeSBpcyBub3QgZm91bmQKKyAgICAKKyAgICBJbnN0ZWFkIGNvbnRpbnVlIGFuZCBmYWlsIGFmdGVyIGFsbCBwcm9ibGVtcyBoYXZlIGJlZW4gcmVwb3J0ZWQuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgIHwgICAgMyArKysKKyBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsIHwgICAxMyArKysrKysrKysrKystCisgMiBmaWxlcyBjaGFuZ2VkLCAxNSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgYjY3ZjI5ZDk0NjY4M2RmZGJkZGYxZmZmYjFhZWY1NTBhMzI2MGZiOAorQXV0aG9yOiBKYXZpZXIgRmVybmFuZGV6LVNhbmd1aW5vIDxqZnNAZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IERlYyA5IDAyOjUwOjE0IDIwMTAgKzAxMDAKKworICAgIFR5cG8gZml4CisKKyBwby9lcy5wbyB8ICAgIDIgKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDc2Mzg1YzU1MjA3YmI2YTBkZGI0ZThmZjM3MjdhMGU4ZTBjZGRiY2QKK0F1dGhvcjogSmF2aWVyIEZlcm5hbmRlei1TYW5ndWlubyA8amZzQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBEZWMgOSAwMjozNTo1NiAyMDEwICswMTAwCisKKyAgICBSZXZpZXcgdHJhbnNsYXRpb24gYW5kIGZpeCBzb21lIHR5cG9zLiBBbHNvIGFkZGVkIFBPNHNwZWxsIGNoZWNrIGhlYWRlcnMuCisKKyBzY3JpcHRzL3BvL2VzLnBvIHwgICA0NCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMzMgaW5zZXJ0aW9ucygrKSwgMTEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBjNTg4NzVkMzY1YWIxMGNlZmU2Y2Y4M2RlOWU3OTJhMTljMTIwMWUyCitBdXRob3I6IEphdmllciBGZXJuYW5kZXotU2FuZ3Vpbm8gPGpmc0BkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgRGVjIDkgMDI6MjY6MzggMjAxMCArMDEwMAorCisgICAgVXBkYXRlZCBTcGFuaXNoIHRyYW5zbGF0aW9uIGZvciBkc2VsZWN0CisgICAgCisgICAgVXBkYXRlIHRvIDIyN3QsIGNvbnZlcnQgdG8gVVRGLTgsIHNwZWxsIGNoZWNrIGhlYWRlcnMgYW5kIHR5cG9zIGZpeGVkLgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDQgKworIGRzZWxlY3QvcG8vZXMucG8gfCAgNTQ4ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgMjk3IGluc2VydGlvbnMoKyksIDI1NSBkZWxldGlvbnMoLSkKKworY29tbWl0IDQ4YTc0ZjM0ZjVhYTU0ZjI1MDY3OTVlOGEzMGZlNmE5YzUwMzU0ZmQKK0F1dGhvcjogSmF2aWVyIEZlcm5hbmRlei1TYW5ndWlubyA8amZzQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBEZWMgOSAwMjoxNzoxNyAyMDEwICswMTAwCisKKyAgICBJbmNsdWRlIGNoYW5nZXMgaW50cm9kdWNlZCB0byBTcGFuaXNoIHRyYW5zbGF0aW9uCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMSArCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA1NTM1NDk2MjBlZTA4ZTcwNGY4NDg4ZDZkZDRhZjk0N2Y4MTJiMDkzCitBdXRob3I6IEphdmllciBGZXJuYW5kZXotU2FuZ3Vpbm8gUGVufmEgPGpmc0BqYXZpZnNwLm5vLWlwLm9yZz4KK0RhdGU6ICAgVGh1IERlYyA5IDAyOjEyOjQyIDIwMTAgKzAxMDAKKworICAgIFVwZGF0ZWQgU3BhbmlzaCB0cmFuc2xhdGlvbgorCisgcG8vZXMucG8gfCAxNjM4ICsrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA2ODYgaW5zZXJ0aW9ucygrKSwgOTUyIGRlbGV0aW9ucygtKQorCitjb21taXQgODlkNjM1NzRiZDM0NTVlZmUxNGYxMzg4ZjNjMTUzMmU2YzYxMzBkMQorQXV0aG9yOiBNaWd1ZWwgRmlndWVpcmVkbyA8ZWxtaWdAZGViaWFucHQub3JnPgorRGF0ZTogICBXZWQgRGVjIDEgMDc6MDM6MDMgMjAxMCArMDEwMAorCisgICAgUG9ydHVndWVzZSB0cmFuc2xhdGlvbiB1cGRhdGUuIDk4NXQKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAxICsKKyBwby9wdC5wbyAgICAgICAgIHwgICA1NiArKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgOCBpbnNlcnRpb25zKCspLCA0OSBkZWxldGlvbnMoLSkKKworY29tbWl0IDI1MmY1ZTA1NjExMjBkOGI2ZDdiYjU1YTlmYzMwYTAwNGQ0NWE1NjYKK0F1dGhvcjogTWlndWVsIEZpZ3VlaXJlZG8gPGVsbWlnQGVlZXBjLmRlYmlhbj4KK0RhdGU6ICAgVHVlIE5vdiAzMCAyMDoxNDo0MiAyMDEwICswMDAwCisKKyAgICBVcGRhdGUgUG9ydHVndWVzZSB0cmFuc2xhdGlvbiBvZiBwcm9ncmFtCisgICAgCisgICAgVXBkYXRlIHRvIDk4NXQKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAxICsKKyBwby9wdC5wbyAgICAgICAgIHwgICAxNyArKysrKysrKy0tLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgOSBpbnNlcnRpb25zKCspLCA5IGRlbGV0aW9ucygtKQorCitjb21taXQgYzYyN2NlYzAwZDkwZDE0Mjg5Y2E1MjMzMDg0NTVjZTY2MDdkNTdiYworQXV0aG9yOiBBcmllZiBTIEZpdHJpYW50byA8YXJpZWZAZ3VyYW1lLmZpc2lrYS51aS5hYy5pZD4KK0RhdGU6ICAgU3VuIE5vdiAyOCAxNToyNTowOCAyMDEwICswMTAwCisKKyAgICBVcGRhdGVkIEluZG9uZXNpYW4gdHJhbnNsYXRpb24uIDk4NXQKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAxICsKKyBwby9pZC5wbyAgICAgICAgIHwgICA2OCArKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgMTQgaW5zZXJ0aW9ucygrKSwgNTUgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBiM2QwNjIyMjVjMDE0NGQyODc0N2E0OGJkODJhNTEwOGFkYTE0MzlhCitBdXRob3I6IE1pcm9zbGF2IEt1cmUgPGt1cmVtQHVwY2FzZS5pbmYudXBvbC5jej4KK0RhdGU6ICAgU2F0IE5vdiAyNyAxNjo0Mjo0OSAyMDEwICswMTAwCisKKyAgICBDemVjaCB0cmFuc2xhdGlvbiB1cGRhdGUuIDk4NXQKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAxICsKKyBwby9jcy5wbyAgICAgICAgIHwgMTA4MiArKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDQyOSBpbnNlcnRpb25zKCspLCA2NTQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA1MzE2NWIzNjIwYTkxNWQyYzE2NzQ4YmE0Y2UzMGFmMzE1ODFkNmRhCitBdXRob3I6IENocmlzdGlhbiBQRVJSSUVSIDxidWJ1bGxlQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBOb3YgMjYgMDc6MTY6NTkgMjAxMCArMDEwMAorCisgICAgRnJlbmNoIHRyYW5zbGF0aW9uIHVwZGF0ZSBmb3IgcHJvZ3JhbXM6IDk4NXQKKyAgICBGcmVuY2ggdHJhbnNsYXRpb24gdXBkYXRlIGZvciBtYW5wYWdlczogMTk0MHQKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICA0ICsKKyBtYW4vcG8vZnIucG8gICAgIHwgIDIyOCArKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9mci5wbyAgICAgICAgIHwgICAgNiArLQorIDMgZmlsZXMgY2hhbmdlZCwgODggaW5zZXJ0aW9ucygrKSwgMTUwIGRlbGV0aW9ucygtKQorCitjb21taXQgM2RlZTg0NzdkOTNjODMxZWNlZjViOTJmM2RkOTZkMTg5YmRkYTk4OAorQXV0aG9yOiBIZWxnZSBLcmV1dHptYW5uIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KK0RhdGU6ICAgRnJpIE5vdiAyNiAyMTo0Njo1MyAyMDEwICswMTAwCisKKyAgICBVcGRhdGUgR2VybWFuIHRyYW5zbGF0aW9uIG9mIG1hbnVhbCBwYWdlcworICAgIAorICAgIFVwZGF0ZSB0byAxOTQwdC4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAzICsrKworIG1hbi9wby9kZS5wbyAgICAgfCAgIDIxICsrKysrKysrKysrKysrKysrLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgMjAgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKKworY29tbWl0IDk1M2ExNDgwMGUwZTY0ODliMzU4NjQxMTVkYWJmMDlhNTJmYTE5NjIKK0F1dGhvcjogU3ZlbiBKb2FjaGltIDxzdmVuam9hY0BnbXguZGU+CitEYXRlOiAgIFRodSBOb3YgMjUgMTY6NDI6NTcgMjAxMCArMDEwMAorCisgICAgR2VybWFuIGRwa2cgdHJhbnNsYXRpb24gdXBkYXRlCisgICAgCisgICAgVXBkYXRlIHRvIDk4NXQuCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgNyArKysrKysrCisgcG8vZGUucG8gICAgICAgICB8ICAgNTIgKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgMTMgaW5zZXJ0aW9ucygrKSwgNDYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBhNGM4ZjVlZmY5ZGVkZTg2MzhiMzI1YzQ5MDkzZDFkZjMzNTc0NzQ5CitBdXRob3I6IFBldGVyIEtyZWZ0aW5nIDxwZXRlcmtAZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IE5vdiAyNSAxMDo0MzozNyAyMDEwICswMTAwCisKKyAgICBVcGRhdGUgU3dlZGlzaCB0cmFuc2xhdGlvbi4KKyAgICAKKyAgICBwby9zdi5wbzogOTg1dDBmMHUuCisgICAgbWFuL3BvL3N2LnBvOiAxOTQwdDBmb3UuCisKKyBtYW4vcG8vc3YucG8gfCAgIDE5ICsrKysrKysrKysrKysrKystLS0KKyBwby9zdi5wbyAgICAgfCAgIDQ4ICsrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgMTkgaW5zZXJ0aW9ucygrKSwgNDggZGVsZXRpb25zKC0pCisKK2NvbW1pdCA3ZTg2OTViZGI4ZmIzYTFkZDRjZjJiYTRhNDg1ODZlMDY4ZmUzMDU4CitNZXJnZTogOTNiYmExNCA4MWFhY2Q0CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IE5vdiAyNSAwNzo1NzowOSAyMDEwICswMTAwCisKKyAgICBNZXJnZSBicmFuY2ggJ3NpZCcgKHRocm91Z2ggdGFnICcxLjE1LjguNicpCisgICAgCisgICAgQ29uZmxpY3RzOgorICAgIAlkZWJpYW4vY2hhbmdlbG9nCisgICAgCW00L2Rwa2ctZnVuY3MubTQKKyAgICAJbWFuL2Rwa2cuMQorCitjb21taXQgODFhYWNkNGIwYTg0ZGY0OTJkMGJhMzMxMTA1MzdlZmI2ZmVmODM2ZAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBOb3YgMjUgMDc6MTE6MDIgMjAxMCArMDEwMAorCisgICAgUmVsZWFzZSAxLjE1LjguNgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDQgKystLQorIDEgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgN2ZlMjViZWY2ZTAzNzljYjFhNTRlYzUzOTQxNjRiNzg1NGYxODY4YQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBOb3YgMjUgMDc6MjM6MzQgMjAxMCArMDEwMAorCisgICAgUmVnZW5lcmF0ZSAucG90IGZpbGVzIGFuZCBtZXJnZSAucG8gZmlsZXMgd2l0aCB0aGVtCisKKyBkc2VsZWN0L3BvL2JzLnBvICAgICAgICB8ICAgIDIgKy0KKyBkc2VsZWN0L3BvL2NhLnBvICAgICAgICB8ICAgNDcgKystCisgZHNlbGVjdC9wby9jcy5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9kYS5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9kZS5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9kc2VsZWN0LnBvdCAgfCAgICA0ICstCisgZHNlbGVjdC9wby9lbC5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9lcy5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9ldC5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9ldS5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9mci5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9nbC5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9odS5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9pZC5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9pdC5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9qYS5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9rby5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9uYi5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9ubC5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9ubi5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9wbC5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9wdC5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9wdF9CUi5wbyAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9yby5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9ydS5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9zay5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9zdi5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby90bC5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby92aS5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby96aF9DTi5wbyAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby96aF9UVy5wbyAgICAgfCAgICAyICstCisgbWFuL3BvL2RlLnBvICAgICAgICAgICAgfCAgMjk5ICsrKysrKy0tLS0tCisgbWFuL3BvL2Rwa2ctbWFuLnBvdCAgICAgfCAgMjgyICsrKysrKy0tLS0tCisgbWFuL3BvL2VzLnBvICAgICAgICAgICAgfCAgMjg1ICsrKysrKy0tLS0tCisgbWFuL3BvL2ZyLnBvICAgICAgICAgICAgfCAxMzA4ICsrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tCisgbWFuL3BvL2h1LnBvICAgICAgICAgICAgfCAgMjgyICsrKysrKy0tLS0tCisgbWFuL3BvL2phLnBvICAgICAgICAgICAgfCAgMjgyICsrKysrKy0tLS0tCisgbWFuL3BvL3BsLnBvICAgICAgICAgICAgfCAgMjgyICsrKysrKy0tLS0tCisgbWFuL3BvL3B0X0JSLnBvICAgICAgICAgfCAgMjgyICsrKysrKy0tLS0tCisgbWFuL3BvL3J1LnBvICAgICAgICAgICAgfCAgMjgyICsrKysrKy0tLS0tCisgbWFuL3BvL3N2LnBvICAgICAgICAgICAgfCAgMjg1ICsrKysrKy0tLS0tCisgcG8vYXN0LnBvICAgICAgICAgICAgICAgfCAgMTQzICsrKy0tLQorIHBvL2JzLnBvICAgICAgICAgICAgICAgIHwgIDE0MyArKystLS0KKyBwby9jYS5wbyAgICAgICAgICAgICAgICB8ICAzNTUgKysrKysrKysrLS0tLS0KKyBwby9jcy5wbyAgICAgICAgICAgICAgICB8ICAxNDMgKysrLS0tCisgcG8vZGEucG8gICAgICAgICAgICAgICAgfCAgMTg4ICsrKysrLS0tCisgcG8vZGUucG8gICAgICAgICAgICAgICAgfCAgMTg4ICsrKysrLS0tCisgcG8vZHBrZy5wb3QgICAgICAgICAgICAgfCAgMTQ1ICsrKy0tLQorIHBvL2R6LnBvICAgICAgICAgICAgICAgIHwgIDE0MyArKystLS0KKyBwby9lbC5wbyAgICAgICAgICAgICAgICB8ICAxNDMgKysrLS0tCisgcG8vZW8ucG8gICAgICAgICAgICAgICAgfCAgMTg4ICsrKysrLS0tCisgcG8vZXMucG8gICAgICAgICAgICAgICAgfCAgMTQzICsrKy0tLQorIHBvL2V0LnBvICAgICAgICAgICAgICAgIHwgIDE0MyArKystLS0KKyBwby9ldS5wbyAgICAgICAgICAgICAgICB8ICAxODggKysrKystLS0KKyBwby9mci5wbyAgICAgICAgICAgICAgICB8ICAxODggKysrKystLS0KKyBwby9nbC5wbyAgICAgICAgICAgICAgICB8ICAxNDMgKysrLS0tCisgcG8vaHUucG8gICAgICAgICAgICAgICAgfCAgMTQzICsrKy0tLQorIHBvL2lkLnBvICAgICAgICAgICAgICAgIHwgIDE4OCArKysrKy0tLQorIHBvL2l0LnBvICAgICAgICAgICAgICAgIHwgIDE4OCArKysrKy0tLQorIHBvL2phLnBvICAgICAgICAgICAgICAgIHwgIDE4OCArKysrKy0tLQorIHBvL2ttLnBvICAgICAgICAgICAgICAgIHwgIDE0MyArKystLS0KKyBwby9rby5wbyAgICAgICAgICAgICAgICB8ICAxODggKysrKystLS0KKyBwby9rdS5wbyAgICAgICAgICAgICAgICB8ICAxNDMgKysrLS0tCisgcG8vbHQucG8gICAgICAgICAgICAgICAgfCAgMTQzICsrKy0tLQorIHBvL21yLnBvICAgICAgICAgICAgICAgIHwgIDE0MyArKystLS0KKyBwby9uYi5wbyAgICAgICAgICAgICAgICB8ICAxODggKysrKystLS0KKyBwby9uZS5wbyAgICAgICAgICAgICAgICB8ICAxNDMgKysrLS0tCisgcG8vbmwucG8gICAgICAgICAgICAgICAgfCAgMTQzICsrKy0tLQorIHBvL25uLnBvICAgICAgICAgICAgICAgIHwgIDE0MyArKystLS0KKyBwby9wYS5wbyAgICAgICAgICAgICAgICB8ICAxNDMgKysrLS0tCisgcG8vcGwucG8gICAgICAgICAgICAgICAgfCAgMTQzICsrKy0tLQorIHBvL3B0LnBvICAgICAgICAgICAgICAgIHwgIDE4OCArKysrKy0tLQorIHBvL3B0X0JSLnBvICAgICAgICAgICAgIHwgIDE0MyArKystLS0KKyBwby9yby5wbyAgICAgICAgICAgICAgICB8ICAxOTEgKysrKystLS0KKyBwby9ydS5wbyAgICAgICAgICAgICAgICB8ICAxODggKysrKystLS0KKyBwby9zay5wbyAgICAgICAgICAgICAgICB8ICAxODggKysrKystLS0KKyBwby9zdi5wbyAgICAgICAgICAgICAgICB8ICAxODggKysrKystLS0KKyBwby90aC5wbyAgICAgICAgICAgICAgICB8ICAxODggKysrKystLS0KKyBwby90bC5wbyAgICAgICAgICAgICAgICB8ICAxNDMgKysrLS0tCisgcG8vdmkucG8gICAgICAgICAgICAgICAgfCAgMTg4ICsrKysrLS0tCisgcG8vemhfQ04ucG8gICAgICAgICAgICAgfCAgMTg4ICsrKysrLS0tCisgcG8vemhfVFcucG8gICAgICAgICAgICAgfCAgMTQzICsrKy0tLQorIHNjcmlwdHMvcG8vY2EucG8gICAgICAgIHwgIDExNCArKystLQorIHNjcmlwdHMvcG8vZGUucG8gICAgICAgIHwgIDEwNiArKy0tCisgc2NyaXB0cy9wby9kcGtnLWRldi5wb3QgfCAgMTA4ICsrLS0KKyBzY3JpcHRzL3BvL2VzLnBvICAgICAgICB8ICAxMDYgKystLQorIHNjcmlwdHMvcG8vZnIucG8gICAgICAgIHwgIDEzMiArKystLS0KKyBzY3JpcHRzL3BvL3BsLnBvICAgICAgICB8ICAxMDYgKystLQorIHNjcmlwdHMvcG8vcnUucG8gICAgICAgIHwgIDEwNiArKy0tCisgc2NyaXB0cy9wby9zdi5wbyAgICAgICAgfCAgMTA2ICsrLS0KKyA5MCBmaWxlcyBjaGFuZ2VkLCA2NTczIGluc2VydGlvbnMoKyksIDUxNzkgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBlMGI0ZDI3NmE3NGM3NGJmZGZjMDk2NWVhYTU4YzA3NDllYTI1MmI5CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IE5vdiAyNSAwNzowOToxNCAyMDEwICswMTAwCisKKyAgICBDaGFuZ2Vsb2cgcG9saWNlCisgICAgCisgICAgU29ydCBlbnRyaWVzLiBTb21lIHJld29yZGluZy4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgIDE4ICsrKysrKysrLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgOCBpbnNlcnRpb25zKCspLCAxMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDkyOWE5YzQ4MDhjNzk3ODE0Njk5ODc1ODVmNzhmMDdkZjdmMWQ0ODQKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgSnVsIDI5IDA4OjU5OjA5IDIwMTAgKzAyMDAKKworICAgIEFkZCBuZXcgLS1mb3JjZS11bnNhZmUtaW8gdG8gZGlzYWJsZSBzYWZlIEkvTyBvcGVyYXRpb25zIG9uIHVucGFjaworICAgIAorICAgIFRoaXMgYWxsb3dzIHRvIG5vdCBwZXJmb3JtIGZpbGUgc3lzdGVtIHN5bmNzIGJlZm9yZSBmaWxlIHJlbmFtZXMKKyAgICB0byBndWFyYW50ZWUgaXRzIGF0b21pY2l0eSwgd2hpY2ggaXMga25vd24gdG8gY2F1c2Ugc3Vic3RhbnRpYWwKKyAgICBwZXJmb3JtYW5jZSBkZWdyYWRhdGlvbiBvbiBzb21lIGZpbGUgc3lzdGVtcywgdW5mb3J0dW5hdGVseSB0aGUgb25lcworICAgIHRoYXQgcmVxdWlyZSB0aGUgc2FmZSBJL08gb24gdGhlIGZpcnN0IHBsYWNlIGR1ZSB0byB0aGVpciB1bnJlbGlhYmxlCisgICAgYmVoYXZpb3VyIGNhdXNpbmcgemVyby1sZW5ndGggZmlsZXMgb24gYWJydXB0IHN5c3RlbSBjcmFzaGVzIChzdWRkZW4KKyAgICByZWJvb3QsIGJ1cyBsb2NrcywgcHVsbGluZyB0aGUgcGx1ZywgZXRjKS4KKyAgICAKKyAgICBVc2luZyB0aGlzIG9wdGlvbiBtaWdodCBpbXByb3ZlIHBlcmZvcm1hbmNlIGF0IHRoZSBjb3N0IG9mIGxvc2luZworICAgIGRhdGEsIGFuZCBzaG91bGQgdGh1cyBiZSB1c2VkIHdpdGggY2FyZSwgYnV0IHRoYXQncyB1bHRpbWF0ZWx5CisgICAgc29tZXRoaW5nIGZvciB0aGUgdXNlciBvZiB0aGUgYWZmZWN0ZWQgZmlsZSBzeXN0ZW1zIHRvIGRlY2lkZS4KKyAgICAKKyAgICBDbG9zZXM6ICM1ODQyNTQKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAyICsrCisgbWFuL2Rwa2cuMSAgICAgICB8ICAgMTkgKysrKysrKysrKysrKysrKysrLQorIHNyYy9hcmNoaXZlcy5jICAgfCAgICA2ICsrKystLQorIHNyYy9tYWluLmMgICAgICAgfCAgICAzICsrKworIHNyYy9tYWluLmggICAgICAgfCAgICAxICsKKyA1IGZpbGVzIGNoYW5nZWQsIDI4IGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA1ZWU0ZTRlMDQ1ODA4OGNkZTE2MjVkZGI1YTNkNzM2ZjMxYTMzNWQzCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IEp1bCAyOSAwOToxMTowMiAyMDEwICswMjAwCisKKyAgICBidWlsZDogRGlzYWJsZSB1c2FnZSBvZiBzeW5jaHJvbm91cyBzeW5jKDIpIGJ5IGRlZmF1bHQKKyAgICAKKyAgICBJdCBjYXVzZXMgdW5kZXNpcmVkIEkvTyBvbiB1bnJlbGF0ZWQgZmlsZSBzeXN0ZW1zLiBJdCBhbHNvIG1ha2VzIHRoZQorICAgIGNvZGUgYmVoYXZlIGRpZmZlcmVudGx5IG9uIExpbnV4IHN5c3RlbXMuCisgICAgCisgICAgQWxsb3cgdGhlIHBvc3NpYmlsaXR5IHRvIGVuYWJsZSBpdCBhZ2FpbiBmb3IgdGhlIGJlbmVmaXQgb2YgZG93bnN0cmVhbXMsCisgICAgd2hpY2ggbWlnaHQgd2FudCB0byB1c2UgaXQgcmVnYXJkbGVzcyBvZiBpdHMgcHJvYmxlbXMuIEFsdGhvdWdoIHRoaXMKKyAgICBjb2RlIHBhdGggd2lsbCBtb3N0IHByb2JhYmx5IGJlIHJlbW92ZWQgaW4gdGhlIG5lYXIgZnV0dXJlLgorICAgIAorICAgIENsb3NlczogIzU4ODMzOSwgIzU5NTkyNywgIzYwMDA3NQorCisgY29uZmlndXJlLmFjICAgICB8ICAgIDIgKy0KKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgNCArKysrCisgbTQvZHBrZy1mdW5jcy5tNCB8ICAgMzQgKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLQorIHNyYy9hcmNoaXZlcy5jICAgfCAgICA0ICsrLS0KKyA0IGZpbGVzIGNoYW5nZWQsIDMwIGluc2VydGlvbnMoKyksIDE0IGRlbGV0aW9ucygtKQorCitjb21taXQgZjk5ZGM5YWYyOGE1ZjYwZGJjNGNmNzc0N2IzNjUwOWYwOTc5YjMyNgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBOb3YgMjUgMDY6Mjg6NDkgMjAxMCArMDEwMAorCisgICAgRml4IHR5cG8gaW4gRnJlbmNoIGRwa2cgLS1kZWJ1Zz1oZWxwIG91dHB1dAorCisgcG8vZnIucG8gfCAgICAyICstCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAwN2RjY2NkOGM0OThkYzY3OWFjMzZhYTQwN2NjNTk1YzU2ODM4MGMxCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IE5vdiAyNSAwNjoyNTo0OSAyMDEwICswMTAwCisKKyAgICBGaXggc3RhdHVzLWZkIG1hbiBwYWdlIHRyYW5zbGF0aW9ucworICAgIAorICAgIFNvbWUgb2YgdGhlIHdvcmRzIG9uIHRob3NlIHN0cmluZ3MgYXJlIGxpdGVyYWwgb3V0cHV0IGZyb20gZHBrZywgd2hpY2gKKyAgICB3aWxsIG5vdCBiZSB0cmFuc2xhdGVkLCBzbyB1c2UgZW5nbGlzaCB0aGVyZS4gQXZvaWQgdXNpbmcgRnJlbmNoIHNwYWNpbmcKKyAgICB0b28gd2hpY2ggd2lsbCBub3QgaGFwcGVuIG9uIG91dHB1dCBlaXRoZXIuCisKKyBtYW4vcG8vZXMucG8gfCAgICA4ICsrKystLS0tCisgbWFuL3BvL2ZyLnBvIHwgICAgNiArKystLS0KKyBtYW4vcG8vc3YucG8gfCAgICAyICstCisgMyBmaWxlcyBjaGFuZ2VkLCA4IGluc2VydGlvbnMoKyksIDggZGVsZXRpb25zKC0pCisKK2NvbW1pdCBjMjQ0MmFmZTRiNzk2MDNlNTZkZWU0Mjg1MzAxZDJmOGQ4NWQxNjRiCitBdXRob3I6IEFuZHJlaSBQb3Blc2N1IDxhbmRyZWltcG9wZXNjdUBnbWFpbC5jb20+CitEYXRlOiAgIFRodSBOb3YgMjUgMDY6MjE6MzkgMjAxMCArMDEwMAorCisgICAgVXBkYXRlIFJvbWFuaWFuIHRyYW5zbGF0aW9uCisKKyBwby9yby5wbyB8IDIxODcgKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDQ3OSBpbnNlcnRpb25zKCspLCAxNzA4IGRlbGV0aW9ucygtKQorCitjb21taXQgOTNiYmExNGQzNjU5NTc4ZjE5YjUyNzNkZWEyMTQyZDA5YTE1MGExOQorQXV0aG9yOiBPeGFuIHZhbiBMZWV1d2VuIDxveGFuQG94YW52YW5sZWV1d2VuLm5sPgorRGF0ZTogICBXZWQgTm92IDI0IDIxOjA1OjMwIDIwMTAgKzAxMDAKKworICAgIE5ldyBtYW51YWwgcGFnZSBkZWItc3JjLWNvbnRyb2woNSkgZG9jdW1lbnRpbmcgZGViaWFuL2NvbnRyb2wKKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICB8ICAgIDYgKworIG1hbi9NYWtlZmlsZS5hbSAgICAgICB8ICAgIDEgKworIG1hbi9kZWItY29udHJvbC41ICAgICB8ICAgMjYgKysrKworIG1hbi9kZWItc3JjLWNvbnRyb2wuNSB8ICAzMjIgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKworIG1hbi9wby9wbzRhLmNmZyAgICAgICB8ICAgIDUgKworIDUgZmlsZXMgY2hhbmdlZCwgMzYwIGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBkZDdlZjU2YzFkNDZlODkwOTJhYzc4YTcxMGMyM2ZhNjkzYjUyMjI4CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIE5vdiAyNCAyMDo1OTowOSAyMDEwICswMTAwCisKKyAgICBkcGtnLWJ1aWxkZmxhZ3M6IGZpeCBpbmNvcnJlY3QgbmFtZSBpbiBjb21tZW50CisKKyBzY3JpcHRzL2Rwa2ctYnVpbGRmbGFncy5wbCB8ICAgIDIgKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDZiNDAzMjQzMjcwMjQwZmQwMTExNjUzMjExMmMyODdjOGNmYjY4OGUKK0F1dGhvcjogQW5kcmVpIFBPUEVTQ1UgPGFuZHJlaW1wb3Blc2N1QGdtYWlsLmNvbT4KK0RhdGU6ICAgV2VkIE5vdiAyNCAxOTozNjowMSAyMDEwICswMTAwCisKKyAgICBSb21hbmlhbiB0cmFuc2xhdGlvbiB1cGRhdGUuIENsb3NlczogIzYwNDc2OQorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDEgKworIHBvL3JvLnBvICAgICAgICAgfCAxNTU1ICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgNjY2IGluc2VydGlvbnMoKyksIDg5MCBkZWxldGlvbnMoLSkKKworY29tbWl0IDQ4ODc1ZGRkNmY2YjI5NTEyMGU1NGIxN2I5MDRhMmZjOWJhZGNiZjkKK0F1dGhvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitEYXRlOiAgIE1vbiBOb3YgMjIgMjE6Mzk6NDIgMjAxMCArMDEwMAorCisgICAgUGF0Y2ggYnkgU3ZlbiBKb2FjaGltIDxzdmVuam9hY0BnbXguZGU+IChhbmQgc29tZSBmdXJ0aGVyIGZpeGVzIG5vdGVkKQorCisgc2NyaXB0cy9wby9kZS5wbyB8ICAxMTAgKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA1NSBpbnNlcnRpb25zKCspLCA1NSBkZWxldGlvbnMoLSkKKworY29tbWl0IGYwMjY2Y2Q2OWM2MWZkYWI3NTY5MTgxOGVmNDBjNjRlNjZhZGJlMjYKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gTm92IDggMDg6MDI6MzAgMjAxMCArMDEwMAorCisgICAgdS1hOiBBZGQgbWlzc2luZyBvcHRpb25zIHRvIC0taGVscCBvdXRwdXQKKyAgICAKKyAgICBEb2N1bWVudCAtLWdldC1zZWxlY3Rpb25zLCAtLXNldC1zZWxlY3Rpb25zLCAtLWxvZyBhbmQgLS1mb3JjZS4KKyAgICBTcGxpdCB0aGUgaHVnZSBzdHJpbmcgaW50byBzbWFsbGVyIHBpZWNlcyB0byBlYXNlIHRyYW5zbGF0b3JzIHdvcmsuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgfCAgICAxICsKKyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmMgfCAgIDE4ICsrKysrKysrKysrKysrLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgMTUgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKKworY29tbWl0IDFmNzViMTZlYTVjNDhiZmIyNmVhZDZhYTMyNDhiNzE3YWI4YWE1ZmMKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gTm92IDggMDg6MDA6MTYgMjAxMCArMDEwMAorCisgICAgdS1hOiBVbmlmeSBzaW1pbGFyIHN0cmluZ3MKKworIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYyB8ICAgIDggKysrKy0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKKworY29tbWl0IDQzOGRmODllZjE4ODhjNzdkOWJmYzc0NzIwMzkyZWQ5ZWY1ODAzMzIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gTm92IDcgMjM6MjA6MjUgMjAxMCArMDEwMAorCisgICAgdS1hOiBVc2UgUFJPR05BTUUgYXMgZm9ybWF0IGFyZ3VtZW50IGluc3RlYWQgb2YgY29uY2F0ZW5hdGVkIHRvIGxpdGVyYWxzCisgICAgCisgICAgVGhpcyByZWR1Y2VkIHRoZSBhbW91bnQgb2YgZHVwbGljYXRlZCBzdHJpbmcgbGl0ZXJhbHMgaW4gdGhlIG91dHB1dAorICAgIG9iamVjdCByZWR1Y2luZyBzbGlnaHRseSB0aGUgYmluYXJ5IGltYWdlLgorCisgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jIHwgICAyOSArKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMTMgaW5zZXJ0aW9ucygrKSwgMTYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA4OThhZDZhOWQ1OTAwYjZhNDZkYzJiN2M3NDJlZGIwMGZjMTE2YzNjCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIE5vdiA3IDIzOjExOjAzIDIwMTAgKzAxMDAKKworICAgIHUtYTogQWRkIG1pc3Npbmcgc3BhY2UgaW4gLS1zZXQtc2VsZWN0aW9ucyBvdXRwdXQKKyAgICAKKyAgICBUaGlzIHdhcyBsb3N0IGR1cmluZyB0aGUgcmV3cml0ZSBpbiBDLgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgIHwgICAgMSArCisgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jIHwgICAgMiArLQorIDIgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgZjljNTQxNGVhMzljMDdjYmQ2YTFiNTgwYTZhNWRmMTM4MWRlMzliNAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBOb3YgNyAyMzowMzo1NCAyMDEwICswMTAwCisKKyAgICB1LWE6IFJlZHVjZSBzY29wZSBvZiBjdXJyZW50IHBvaW50ZXIgaW4gbWFpbigpCisKKyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmMgfCAgICAzICsrLQorIDEgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgNDdhNDU2ODljM2YzOTViNGExYjg2MDY3ZmQ3OTViYmJjYWIyOWM2ZgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBOb3YgNyAwOToxNjo0NCAyMDEwICswMTAwCisKKyAgICB1LWE6IEF2b2lkIHVubmVlZGVkIHN0cmluZyBhbGxvY2F0aW9ucworICAgIAorICAgIEluc3RlYWQgb2YgdXNpbmcgdGVtcG9yYXJpZXMgd2l0aCB4YXNwcmludGYoKSwganVzdCBtb2RpZnkgdGhlIG9yaWdpbmFsCisgICAgc3RyaW5nIGJ5IG1lcmdpbmcgdGhlIG5lZWRlZCBsaXRlcmFsIHN0cmluZ3MgYW5kIHBhc3MgdGhlIGFkZGl0aW9uYWwKKyAgICBhcmd1bWVudHMuCisKKyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmMgfCAgIDMxICsrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDEwIGluc2VydGlvbnMoKyksIDIxIGRlbGV0aW9ucygtKQorCitjb21taXQgYmVmYTZkMjE1ODYyNzNmODZlOTExYjk3YWExYzgwYmRlODM4MGYzYworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBOb3YgNyAwOToxMTo1MiAyMDEwICswMTAwCisKKyAgICB1LWE6IFNpbXBsaWZ5IGFuIHVuaWZ5IHN0cmluZyBpbiBhbHRlcm5hdGl2ZV9kaXNwbGF5X3F1ZXJ5KCkKKyAgICAKKyAgICBVbmlmeSB0aGUgY29tbW9uIHN0cmluZywgYW5kIGFsd2F5cyBjYWxsIGZyZWUoKSBhcyBpdCBoYW5kbGVzIE5VTEwganVzdAorICAgIGZpbmUuCisKKyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmMgfCAgICA4ICsrLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA5N2M4MDIwYjQyYjhiZTZiNjJlMzViNzg1ZTA0MTFkOTYzZWFlYWU3CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIE5vdiA3IDA5OjA3OjQyIDIwMTAgKzAxMDAKKworICAgIHUtYTogUmVmYWN0b3IgZHVwbGljYXRlIGNvZGUgaW50byBuZXcgY2hlY2tlZF9ybV9hcmdzKCkKKworIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYyB8ICAgNDUgKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMjMgaW5zZXJ0aW9ucygrKSwgMjIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBhYmNkZTIxODllNzQwNjViMjgwN2IzOTg0MDMxZWYzM2ZlNjQ3NDJiCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIE5vdiA3IDA5OjA1OjM2IDIwMTAgKzAxMDAKKworICAgIHUtYTogQ3JlYXRlIG5ldyB4dmFzcHJpbnRmKCkgYW5kIHVzZSBpdCBpbnN0ZWFkIG9mIGFkLWhvYyBjb2RlCisKKyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmMgfCAgIDIwICsrKysrKysrKysrKysrLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAxNCBpbnNlcnRpb25zKCspLCA2IGRlbGV0aW9ucygtKQorCitjb21taXQgZjc1NDczMTZhMTFkYTU5NjhhNjIwOTRmNzg5NTgzNDI4Y2U3OGFjMworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBOb3YgNyAwODo1ODoxMSAyMDEwICswMTAwCisKKyAgICB1LWE6IENoYW5nZSBhbHRlcm5hdGl2ZV9zYXZlKCkgdG8gdGFrZSBjYXJlIG9mIGF0b21pYyBmaWxlIHdyaXRlCisgICAgCisgICAgSW5zdGVhZCBvZiBsZWF2aW5nIHRoZSBqb2Igb2YgZG9pbmcgYSBwcm9wZXIgYXRvbWljIHdyaXRlLCBtb3ZlIHRoZSBjb2RlCisgICAgaW5zaWRlIGFsdGVybmF0aXZlX3NhdmUoKSBzbyB0aGF0IG90aGVyIHBvc3NpYmxlIGNhbGxlcnMgd2lsbCBiZW5lZml0LgorCisgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jIHwgICAyOSArKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMTUgaW5zZXJ0aW9ucygrKSwgMTQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyODE5ZjRjYzQ2MzlkNTlmN2I2MDE3ZjExOGU5MmRjNWQ5OTk0Mjk5CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIE5vdiA1IDA2OjU2OjA2IDIwMTAgKzAxMDAKKworICAgIHUtYTogUmVmYWN0b3IgY29tbW9uIGNvZGUgaW50byBuZXcgYWx0ZXJuYXRpdmVfY29tbWl0X29wZXJhdGlvbnNfZnJlZQorCisgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jIHwgICAyNSArKysrKysrKysrKysrKy0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAxNCBpbnNlcnRpb25zKCspLCAxMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDczZGFiNjUyNzNjNTg5YjdlZWQ4MjNhZGFiMzA4NzBlNzcxNzFiYjgKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgTm92IDQgMjA6NDY6MjMgMjAxMCArMDEwMAorCisgICAgZHBrZzogQWRkIG5ldyAtLXN0YXR1cy1sb2dnZXIgb3B0aW9uCisgICAgCisgICAgVGhpcyBvcHRpb24gd29ya3MgaW4gYSBzaW1pbGFyIHdheSB0byAtLXN0YXR1cy1mZCwgdGhlIG1haW4gZGlmZmVyZW5jZQorICAgIGlzIHRoYXQgd2UgaW52b2tlIHRoZSBwcm92aWRlZCBjb21tYW5kIGFuZCBwYXNzIHRoZSBzdGF0dXMgaW5mb3JtYXRpb24KKyAgICB0byBpdHMgc3RhbmRhcmQgaW5wdXQgaW5zdGVhZC4KKyAgICAKKyAgICBTdWdnZXN0ZWQtYnk6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAzICsrKworIG1hbi9kcGtnLjEgICAgICAgfCAgICA4ICsrKysrKystCisgc3JjL21haW4uYyAgICAgICB8ICAgMzYgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystCisgMyBmaWxlcyBjaGFuZ2VkLCA0NSBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgYTdkZjdiYzg1NmZkM2FkZDM1YmE0NGY3YmQyMzkwMTkxM2E1MzlkNAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBOb3YgNCAxOToxMzo1OSAyMDEwICswMTAwCisKKyAgICBkcGtnOiBVc2UgY29tbWFuZF9zaGVsbCgpIGluc3RlYWQgb2YgYWQtaG9jIGNvZGUgdG8gZXhlY3V0ZSBzaGVsbHMKKworIGRwa2ctZGViL2V4dHJhY3QuYyB8ICAgIDUgKystLS0KKyBzcmMvY29uZmlndXJlLmMgICAgfCAgIDIxICsrKy0tLS0tLS0tLS0tLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCAyMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDdmOTE1M2EzOWVmMzA2Y2IyMTgxY2Q5NmM2ZTdhOGY4NTEzNDE0YjcKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgTm92IDQgMTk6MTA6MjMgMjAxMCArMDEwMAorCisgICAgbGliZHBrZzogQWRkIG5ldyBjb21tYW5kX3NoZWxsKCkgdG8gZXhlY3V0ZSBhIHNoZWxsIGluc3RhbmNlCisgICAgCisgICAgVGhlIGZ1bmN0aW9uIGNhbiBpbnZva2UgYW4gaW50ZXJhY3RpdmUgc2hlbGwgb3IgYSBjb21tYW5kIHRocm91Z2ggdGhlCisgICAgc2hlbGwuCisKKyBsaWIvZHBrZy9jb21tYW5kLmMgfCAgIDI2ICsrKysrKysrKysrKysrKysrKysrKysrKysrCisgbGliL2Rwa2cvY29tbWFuZC5oIHwgICAgMiArKworIDIgZmlsZXMgY2hhbmdlZCwgMjggaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDk0ZTI1YTAzODAwMzM2NTRkMjE0MGViZjgxNDkyNjhiOWJmNDQ2ZjgKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgTm92IDQgMDY6Mzk6MjggMjAxMCArMDEwMAorCisgICAgUmVmYWN0b3Igc2V0cGlwZSgpIGludG8gc3RhdHVzZmRfYWRkKCkgdG8gc3RvcCBleHBvc2luZyBzdGF0dXNfcGlwZXMKKworIGxpYi9kcGtnL2Rwa2cuaCAgICAgICAgICAgfCAgICA4ICstLS0tLS0tCisgbGliL2Rwa2cvbGliZHBrZy5WZXJzaW9ucyB8ICAgIDIgKy0KKyBsaWIvZHBrZy9sb2cuYyAgICAgICAgICAgIHwgICAyMCArKysrKysrKysrKysrKysrKysrLQorIHNyYy9tYWluLmMgICAgICAgICAgICAgICAgfCAgIDExICsrLS0tLS0tLS0tCisgNCBmaWxlcyBjaGFuZ2VkLCAyMyBpbnNlcnRpb25zKCspLCAxOCBkZWxldGlvbnMoLSkKKworY29tbWl0IDRlNmRhOGM2OTE3NzNmYmFkNWQ2ZGY0ZjA1NDQzNjFlYTk3MWRjMTQKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgTm92IDQgMDY6MjU6MDAgMjAxMCArMDEwMAorCisgICAgbWFuOiBSZW1vdmUgY29tbWVudCBhYm91dCBuZXdsaW5lcyBpbiBzdGF0dXMtZmQgZXJyb3IgZW50cmllcworICAgIAorICAgIFRoaXMgZ290IGZpeGVkIGluIGNvbW1pdCBkYjk2NDVjZmYzNmEzZmZmM2M1OTc3NjRmYjhkNDlmYmM4MTliYWQ3LgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDIgKysKKyBtYW4vZHBrZy4xICAgICAgIHwgICAgOCArKystLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCA1IGRlbGV0aW9ucygtKQorCitjb21taXQgZDJhYmZkYjhiYzYxMzdjNGEyZjg3YzVjNmRiMjJlMDMwZDMzMzRjNworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBOb3YgNCAwMzozODowNiAyMDEwICswMTAwCisKKyAgICBkcGtnLWRlYjogVXNlIG1fcmVhbGxvYyBpbnN0ZWFkIG9mIG1fbWFsbG9jIHdoZW4gdGhlIHBvaW50ZXIgaXMgTlVMTAorICAgIAorICAgIFRoaXMgcmVtb3ZlcyBhIGR1cGxpY2F0ZSBjYXNlIHdoaWNoIG1fcmVhbGxvYyB3aWxsIGhhbmRsZSBqdXN0IGZpbmUuCisKKyBkcGtnLWRlYi9idWlsZC5jIHwgICAgNSArLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQorCitjb21taXQgNjU5NjliZmJjY2FmMzg3YzY5ZGYyODQyMTViNmFlZmVhNzQ5NmY0MQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBOb3YgMyAxMDo0NjoyOCAyMDEwICswMTAwCisKKyAgICBVc2UgbmV3IGVudW0gZm9yIGRlcGVuZGVuY3kgZm91bmQgc3RhdHVzCisgICAgCisgICAgSW5zdGVhZCBvZiBjcnlwdGljIGxpdGVyYWwgaW50ZWdlcnMgdXNlIG5hbWVkIGVudW1zLgorCisgc3JjL3BhY2thZ2VzLmMgfCAgIDcwICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA0MCBpbnNlcnRpb25zKCspLCAzMCBkZWxldGlvbnMoLSkKKworY29tbWl0IGU5ODNiODUyMmZjMmJlOTNjM2IzMWUzOGRkZDVjZTk0NDQ4NzM5YzEKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgTm92IDMgMTA6NDU6MDggMjAxMCArMDEwMAorCisgICAgVXNlIG5ldyBlbnVtIGZvciBkZXBlbmRlbmN5IGNoZWNrIHJlc3VsdCB2YWx1ZXMKKyAgICAKKyAgICBJbnN0ZWFkIG9mIGNyeXB0aWMgbGl0ZXJhbCBpbnRlZ2VycyB1c2UgbmFtZWQgZW51bXMuCisKKyBzcmMvbWFpbi5oICAgICB8ICAgMTMgKysrKysrKysrKy0tLQorIHNyYy9wYWNrYWdlcy5jIHwgICA0NyArKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgMzcgaW5zZXJ0aW9ucygrKSwgMjMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAwZjE2NjhmNzk5NzgwMjUwNTAzZmNhNWRmMGExMjUzMTU4N2MxZWI4CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIE5vdiAzIDEwOjA4OjE4IDIwMTAgKzAxMDAKKworICAgIFVzZSBuZXcgZW51bSBmb3IgdHJpZ2RlZl91cGRhdGVfc3RhcnQoKSByZXR1cm4gdmFsdWVzCisgICAgCisgICAgSW5zdGVhZCBvZiBjcnlwdGljIGxpdGVyYWwgaW50ZWdlcnMgdXNlIG5hbWVkIGVudW1zLgorCisgbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmggfCAgIDExICsrKysrKysrKystCisgbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmwgfCAgIDEyICsrKysrKy0tLS0tLQorIGxpYi9kcGtnL3RyaWdsaWIuYyAgICAgIHwgICAxNCArKysrKysrLS0tLS0tLQorIHNyYy90cmlnY21kLmMgICAgICAgICAgIHwgICAxMCArKysrKy0tLS0tCisgNCBmaWxlcyBjaGFuZ2VkLCAyOCBpbnNlcnRpb25zKCspLCAxOSBkZWxldGlvbnMoLSkKKworY29tbWl0IGIwNzBlMGVjMGQzM2I1ODU4MDlkZDQyMGUwNDMzYTRmNjdjYTEyYzAKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgTm92IDMgMDk6NDE6MjkgMjAxMCArMDEwMAorCisgICAgbGliZHBrZzogUmV3cml0ZSBnZXRfcHJlZml4X25hbWUoKSB0byBiZSBtb3JlIGVmZmljaWVudAorICAgIAorICAgIEF2b2lkIHRlbXBvcmFyeSBhbGxvY2F0aW9ucyBmcm9tIHRoZSBoZWFwIGFuZCB1c2Ugc3ByaW50ZiB0byB3cml0ZSB0aGUKKyAgICBzdHJpbmcgd2l0aCBkZWxpbWl0ZWQgcGFydHMuCisKKyBsaWIvZHBrZy90YXJmbi5jIHwgICAxOSArKysrKy0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDE0IGRlbGV0aW9ucygtKQorCitjb21taXQgMDRlYWYyNjVhMGIyMTllZDg2ODk2MDcxOTY0MDVmZGZmOWE0YTQzMgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBOb3YgMyAwODoyNDo1NCAyMDEwICswMTAwCisKKyAgICBsaWJkcGtnOiBEaXNhbGxvdyB2ZXJzaW9ucyBzdGFydGluZyB3aXRoIG5vbi1kaWdpdHMKKyAgICAKKyAgICBGYWlsIG9uIHN0cmljdCBwYXJzaW5nLCBhbmQgd2FybiBvdGhlcndpc2UuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgIHwgICAgMiArKworIGxpYi9kcGtnL3BhcnNlaGVscC5jICAgICAgICAgfCAgICA1ICsrKystCisgbGliL2Rwa2cvdGVzdC90LXZlcnNpb24uYyAgICB8ICAgIDQgKystLQorIHNjcmlwdHMvdC8xMDBfRHBrZ19WZXJzaW9uLnQgfCAgIDQwICsrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyA0IGZpbGVzIGNoYW5nZWQsIDI4IGluc2VydGlvbnMoKyksIDIzIGRlbGV0aW9ucygtKQorCitjb21taXQgYWM2NTg5NzA4MWY1ZjIwZmRhODUzYmVlZDc5YzI4NTU5ZmUzM2FlYQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBOb3YgMyAwNzozNjoxNiAyMDEwICswMTAwCisKKyAgICBsaWJkcGtnOiBGaXggdmVyc2lvbl9zdHJpY3RfY2hlY2soKSB0byBub3QgYWxsb3cgJy0nIGluIHJldmlzaW9uCisgICAgCisgICAgVGhlIHJldmlzaW9uIGNhbm5vdCBwb3NzaWJseSBoYXZlIGEgJy0nIGluIGl0LCBzbyBkbyBub3QgYWxsb3cgaXQuIFRoaXMKKyAgICBpcyBpbm5vY3VvdXMgaW4gdGhlIGN1cnJlbnQgY29kZSBhcyB0aGUgcGFyc2VyIG1ha2VzIHN1cmUgdGhlIHZlcnNpb25zCisgICAgYXJlIHNwbGl0IG9uIGxhc3QgJy0nLCB3aGljaCBpbXBsaWVzIHRoZSByZXZpc2lvbiB3aWxsIG5ldmVyIGhhdmUgb25lLAorICAgIGJ1dCBpdCBjb3VsZCBoYXBwZW4gdGhhdCBhIG1hbnVhbGx5IGNvbnN0cnVjdGVkIHZlcnNpb25yZXZpc2lvbiBjb3VsZAorICAgIGNvbnRhaW4gb25lLgorCisgbGliL2Rwa2cvcGFyc2VoZWxwLmMgfCAgICAyICstCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBiZTdhMmM3ODI5MDE0ZWFlYzQ4MTg1YWRkMmU0NDVmMmQ4NTcwMDU1CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIE5vdiAzIDA3OjMzOjA4IDIwMTAgKzAxMDAKKworICAgIGxpYmRwa2c6IEltcHJvdmUgdmVyc2lvbiBzdHJpY3QgY2hlY2sgdW5pdCB0ZXN0CisgICAgCisgICAgVGhlIGN1cnJlbnQgdGVzdCB3YXMgdXNpbmcgYSBzaW5nbGUgdmVyc2lvbiB3aXRoIGxvdHMgb2YgaW52YWxpZAorICAgIGNoYXJhY3RlcnMsIGJ1dCBvbmx5IHRoZSBmaXJzdCBpbnZhbGlkIGNoYXJhY3RlciB3b3VsZCBnZXQgY2hlY2tlZAorICAgIGFnYWluc3QuIENyZWF0ZSBhIHZlcnNpb24gcGVyIGVhY2ggaW52YWxpZCBjaGFyYWN0ZXIgdG8gYmUgdGVzdGVkCisgICAgaW5zdGVhZC4KKworIGxpYi9kcGtnL3Rlc3QvdC12ZXJzaW9uLmMgfCAgIDIyICsrKysrKysrKysrKysrKysrKystLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDE5IGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBkM2RlOWQ2NmQ2YzRlNzM1ZTdmOWQyODIxNTQ5YjlmYzhlMjM1ZDdkCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIE5vdiAyIDA4OjA2OjUyIDIwMTAgKzAxMDAKKworICAgIGxpYmRwa2c6IFNsaWdodGx5IG9wdGltaXplIG9yZGVyKCkgY2hlY2tzCisgICAgCisgICAgUmVvcmdhbml6ZSBjb2RlIHRvIGZpcnN0IGRvIGNoZWNrcyBvbiBtb3N0IGNvbW1vbmx5IGV4cGVjdGVkIGNoYXJhY3Rlci4KKyAgICBGaXJzdCBkaWdpdHMsIHRoZW4gYWxwaGFiZXRpY2FsLCB0aGVuIHRoZSB0aWxkZSwgZm9sbG93ZWQgYnkgYW55IG5vbiBOVUwKKyAgICBjaGFyYWN0ZXIgYW5kIGZpbmFsbHkgdGhlIE5VTCBjaGFyYWN0ZXIuCisKKyBsaWIvZHBrZy92ZXJjbXAuYyB8ICAgMTIgKysrKysrLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA2IGluc2VydGlvbnMoKyksIDYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA2MGM4OWJhYzczZDVhOWFlYTBkYTRjMzhjYzVlOTYzYjBkNzYwMDAwCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIE5vdiAyIDA4OjAyOjA1IDIwMTAgKzAxMDAKKworICAgIGxpYmRwa2c6IFN3aXRjaCBvcmRlciBtYWNybyBpbnRvIGEgZnVuY3Rpb24KKworIGxpYi9kcGtnL3ZlcmNtcC5jIHwgICAyNSArKysrKysrKysrKysrKysrKystLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAxOCBpbnNlcnRpb25zKCspLCA3IGRlbGV0aW9ucygtKQorCitjb21taXQgMzI2ZDdiNDNmZmQ4YjZjOGUxYmY0ZGNkNWM1NDk1ZWU1MTI5NjMxZgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBOb3YgMSAyMTo0MTo0NiAyMDEwICswMTAwCisKKyAgICBsaWJkcGtnOiBSZWZhY3RvciB0YXJfZ251X2xvbmcoKSBvdXQgZnJvbSB0YXJfZXh0cmFjdG9yKCkKKworIGxpYi9kcGtnL3RhcmZuLmMgfCAgMTAyICsrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgNTEgaW5zZXJ0aW9ucygrKSwgNTEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBlYmUzOTJjNjE1MjZiNTIwYmI3MDMzZmE0OWFmOGJkMmZhYTM5MDAxCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIE5vdiAxIDIxOjAxOjA1IDIwMTAgKzAxMDAKKworICAgIGxpYmRwa2c6IFN3aXRjaCB0YXJfaGVhZGVyX2RlY29kZSgpIHRvIHRha2UgYSBzdHJ1Y3QgdGFyX2hlYWRlcgorICAgIAorICAgIEluc3RlYWQgb2YgcGFzc2luZyBpdCBhICdjaGFyIConIGFyZ3VtZW50IHRvIGJlIGNhc3RlZCBsYXRlciBvbiB0byBhCisgICAgdGFyX2hlYWRlciwganVzdCBwYXNzIHRoZSBsYXR0ZXIgZGlyZWN0bHkuCisKKyBsaWIvZHBrZy90YXJmbi5jIHwgICAgNSArKy0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQorCitjb21taXQgODM1NzQxZjYzMmU4ODRjY2Q5NzNkODdlMTI4Yzk4NDZkZDNlMWQ0YworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBOb3YgMSAyMDo1MDo1OCAyMDEwICswMTAwCisKKyAgICBsaWJkcGtnOiBNb3ZlIGNoZWNrc3VtX29mZnNldCBpbnRvIHRhcl9oZWFkZXJfY2hlY2tzdW0oKQorCisgbGliL2Rwa2cvdGFyZm4uYyB8ICAgIDMgKy0tCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBkMzBhMDg3YzRmNzY4NmFkMjM3YjE1YjQxMzg0OGE2YThmZTg3ZWQ2CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIE5vdiAxIDIwOjQ0OjQxIDIwMTAgKzAxMDAKKworICAgIGxpYmRwa2c6IFJlZmFjdG9yIHRhcl9oZWFkZXJfY2hlY2tzdW0oKSBvdXQgZnJvbSB0YXJfaGVhZGVyX2RlY29kZSgpCisKKyBsaWIvZHBrZy90YXJmbi5jIHwgICA0MiArKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDI2IGluc2VydGlvbnMoKyksIDE2IGRlbGV0aW9ucygtKQorCitjb21taXQgMmQwZWJhYjA0NzRmYzgzZjA3ZWQ0ZjY0OGZkYjg1NDQzYjFiZmQyYgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBOb3YgMSAyMDozMToyNSAyMDEwICswMTAwCisKKyAgICBsaWJkcGtnOiBSZW5hbWUgRGVjb2RlVGFySGVhZGVyIHRvIHRhcl9oZWFkZXJfZGVjb2RlCisKKyBsaWIvZHBrZy90YXJmbi5jIHwgICAgNCArKy0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA1OGE5ZmYyNTk2ZmE3MjJmMjMwZWVlOTdiZmE2NWM1ZDYyMThmNDc5CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIE5vdiAxIDIwOjMwOjUzIDIwMTAgKzAxMDAKKworICAgIGxpYmRwa2c6IFJlbmFtZSBUYXJDaGVja3N1bU9mZnNldCB0byBjaGVja3N1bV9vZmZzZXQKKworIGxpYi9kcGtnL3RhcmZuLmMgfCAgICA3ICsrKy0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKKworY29tbWl0IGNkOWIyMGIxNjE1NDllYTgxMDc1MGNjY2MyOGM5MmVhNjU1ZDQyZmEKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gTm92IDEgMjA6MzA6MjUgMjAxMCArMDEwMAorCisgICAgbGliZHBrZzogUmVuYW1lIFRhckluZm8gdG8gdGFyX2hlYWRlcgorCisgbGliL2Rwa2cvdGFyZm4uYyB8ICAgMTAgKysrKystLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCA1IGRlbGV0aW9ucygtKQorCitjb21taXQgM2I3MTdkODIzMWUzMjUxZmU3YjJhYzA5ZGI0NDQ4MWE0MDA5MmM1OAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBOb3YgMSAyMDoyODozNCAyMDEwICswMTAwCisKKyAgICBsaWJkcGtnOiBSZW5hbWUgYW5kIGxvd2VyLWNhc2UgVGFySGVhZGVyIG1lbWJlcnMKKworIGxpYi9kcGtnL3RhcmZuLmMgfCAgIDgyICsrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA0MCBpbnNlcnRpb25zKCspLCA0MiBkZWxldGlvbnMoLSkKKworY29tbWl0IGEzMDMwM2E0ZWE0OWM1NDg2NzM1NDRkMDlmNjY3ODAyYmU3YzliMjYKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gTm92IDEgMjA6MTk6MzcgMjAxMCArMDEwMAorCisgICAgbGliZHBrZzogUmVuYW1lIG5hbWVMZW5ndGggdG8gbmFtZV9sZW4gaW4gdGFyX2V4dHJhY3RvcigpCisKKyBsaWIvZHBrZy90YXJmbi5jIHwgICAxMCArKysrKy0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDUgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA3YTBhMDYxOWZkM2M5MjZhZWNlYzU5OTg3NTk3YTQwZjdiMmRjZDNjCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIE5vdiAxIDA4OjMxOjQ4IDIwMTAgKzAxMDAKKworICAgIGxpYmRwa2c6IFJlbmFtZSBwYXRoX3J0cmltX3NsYXNoX3NsYXNoZG90IHRvIHBhdGhfdHJpbV9zbGFzaF9zbGFzaGRvdAorCisgZHBrZy1kZWIvYnVpbGQuYyAgICAgICAgICB8ICAgIDIgKy0KKyBsaWIvZHBrZy9saWJkcGtnLlZlcnNpb25zIHwgICAgMiArLQorIGxpYi9kcGtnL3BhdGguYyAgICAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvcGF0aC5oICAgICAgICAgICB8ICAgIDIgKy0KKyBsaWIvZHBrZy90ZXN0L3QtcGF0aC5jICAgIHwgICAgNiArKystLS0KKyBzcmMvcXVlcnljbWQuYyAgICAgICAgICAgIHwgICAgMiArLQorIHNyYy9zdGF0Y21kLmMgICAgICAgICAgICAgfCAgICAyICstCisgNyBmaWxlcyBjaGFuZ2VkLCA5IGluc2VydGlvbnMoKyksIDkgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBjNmVhMTViOTg1MGYyNmVhM2I1YTEzNjY3Mzk2Yzg5ZTAwYWE5ODkwCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIE5vdiAxIDA4OjE4OjI4IDIwMTAgKzAxMDAKKworICAgIENsZWFudXAgd2hpdGUgc3BhY2VzCisgICAgCisgICAgUmVtb3ZlIHRyYWlsaW5nIHNwYWNlcy4gUmVtb3ZlIGJsYW5rIGxpbmVzIG5vdCBzZXBhcmF0aW5nIGRpZmZlcmVudCBjb2RlCisgICAgYmxvY2tzLiBSZW1vdmUgYmxhbmsgbGluZXMgYXQgdGhlIGVuZCBvZiB0aGUgZmlsZS4KKworIENoYW5nZUxvZy5vbGQgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMSAtCisgUkVBRE1FLnRyYW5zbGF0b3JzICAgICAgICAgICAgICAgICAgfCAgICAxIC0KKyBUT0RPICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDEgLQorIGRlYmlhbi91c2VydGFncyAgICAgICAgICAgICAgICAgICAgIHwgICAgMSAtCisgZG9jL1JFQURNRS5mZWF0dXJlLXJlbW92YWwtc2NoZWR1bGUgfCAgICAxIC0KKyBkb2MvdHJpZ2dlcnMudHh0ICAgICAgICAgICAgICAgICAgICB8ICAgIDIgLQorIGRwa2ctZGViL01ha2VmaWxlLmFtICAgICAgICAgICAgICAgIHwgICAgMSAtCisgZHBrZy1kZWIvYnVpbGQuYyAgICAgICAgICAgICAgICAgICAgfCAgIDE1ICsrKysrLS0tLS0tCisgZHBrZy1kZWIvZXh0cmFjdC5jICAgICAgICAgICAgICAgICAgfCAgIDE5ICsrKysrLS0tLS0tLS0KKyBkcGtnLWRlYi9pbmZvLmMgICAgICAgICAgICAgICAgICAgICB8ICAgIDYgKystLQorIGRwa2ctc3BsaXQvaW5mby5jICAgICAgICAgICAgICAgICAgIHwgICAxNCArKysrKy0tLS0tCisgZHBrZy1zcGxpdC9qb2luLmMgICAgICAgICAgICAgICAgICAgfCAgICA5ICsrKy0tLQorIGRwa2ctc3BsaXQvbWFpbi5jICAgICAgICAgICAgICAgICAgIHwgICAgMiArLQorIGRwa2ctc3BsaXQvcXVldWUuYyAgICAgICAgICAgICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvYmFzZWNtZHMuY2MgICAgICAgICAgICAgICAgIHwgICAxNCArKysrKy0tLS0tCisgZHNlbGVjdC9iYXNlbGlzdC5jYyAgICAgICAgICAgICAgICAgfCAgIDI2ICsrKysrKysrKy0tLS0tLS0tLQorIGRzZWxlY3QvYmluZGluZ3MuY2MgICAgICAgICAgICAgICAgIHwgICAgOCArKystLS0KKyBkc2VsZWN0L2JpbmRpbmdzLmggICAgICAgICAgICAgICAgICB8ICAgMTIgKysrKy0tLS0KKyBkc2VsZWN0L2RzZWxlY3QtY3Vyc2VzLmggICAgICAgICAgICB8ICAgIDEgLQorIGRzZWxlY3QvZHNlbGVjdC5oICAgICAgICAgICAgICAgICAgIHwgICAgNCArLQorIGRzZWxlY3QvbWFpbi5jYyAgICAgICAgICAgICAgICAgICAgIHwgICAgNSArLS0KKyBkc2VsZWN0L21ldGhrZXlzLmNjICAgICAgICAgICAgICAgICB8ICAgMTIgKysrKy0tLS0KKyBkc2VsZWN0L21ldGhsaXN0LmNjICAgICAgICAgICAgICAgICB8ICAgMTAgKysrLS0tCisgZHNlbGVjdC9tZXRob2QuY2MgICAgICAgICAgICAgICAgICAgfCAgICA2ICsrLS0KKyBkc2VsZWN0L21ldGhvZC5oICAgICAgICAgICAgICAgICAgICB8ICAgIDYgKystLQorIGRzZWxlY3QvbWV0aG9kcy9kaXNrL3NldHVwICAgICAgICAgIHwgICAgMiAtCisgZHNlbGVjdC9tZXRob2RzL2Rpc2svdXBkYXRlICAgICAgICAgfCAgICAxIC0KKyBkc2VsZWN0L21ldGhvZHMvZnRwL25hbWVzICAgICAgICAgICB8ICAgIDEgLQorIGRzZWxlY3QvbWV0aHBhcnNlLmNjICAgICAgICAgICAgICAgIHwgICAxMiArKysrLS0tLQorIGRzZWxlY3QvcGtnY21kcy5jYyAgICAgICAgICAgICAgICAgIHwgICAgNCArLQorIGRzZWxlY3QvcGtnZGVwY29uLmNjICAgICAgICAgICAgICAgIHwgICAzNCArKysrKysrKysrKystLS0tLS0tLS0tLS0KKyBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2MgICAgICAgICAgICAgICB8ICAgMTQgKysrKystLS0tLQorIGRzZWxlY3QvcGtnaW5mby5jYyAgICAgICAgICAgICAgICAgIHwgICAgNCArLQorIGRzZWxlY3QvcGtna2V5cy5jYyAgICAgICAgICAgICAgICAgIHwgICAxNiArKysrKystLS0tLS0KKyBkc2VsZWN0L3BrZ2xpc3QuY2MgICAgICAgICAgICAgICAgICB8ICAgNDQgKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLQorIGRzZWxlY3QvcGtnbGlzdC5oICAgICAgICAgICAgICAgICAgIHwgICAxMiArKysrLS0tLQorIGRzZWxlY3QvcGtnc3VibGlzdC5jYyAgICAgICAgICAgICAgIHwgICAxMyArKysrLS0tLS0KKyBkc2VsZWN0L3BrZ3RvcC5jYyAgICAgICAgICAgICAgICAgICB8ICAgMjIgKysrKystLS0tLS0tLS0tLQorIGRzZWxlY3QvcG8vQ2hhbmdlTG9nLm9sZCAgICAgICAgICAgIHwgICAgMSAtCisgZHNlbGVjdC9wby9QT1RGSUxFUy5pbiAgICAgICAgICAgICAgfCAgICAxIC0KKyBnZXQtdmVyc2lvbiAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDEgLQorIGxpYi9jb21wYXQvTWFrZWZpbGUuYW0gICAgICAgICAgICAgIHwgICAgMSAtCisgbGliL2NvbXBhdC9hbHBoYXNvcnQuYyAgICAgICAgICAgICAgfCAgICAxIC0KKyBsaWIvY29tcGF0L2NvbXBhdC5oICAgICAgICAgICAgICAgICB8ICAgIDEgLQorIGxpYi9jb21wYXQvc2NhbmRpci5jICAgICAgICAgICAgICAgIHwgICAgMSAtCisgbGliL2NvbXBhdC9zbnByaW50Zi5jICAgICAgICAgICAgICAgfCAgICAxIC0KKyBsaWIvY29tcGF0L3N0cmVycm9yLmMgICAgICAgICAgICAgICB8ICAgIDEgLQorIGxpYi9jb21wYXQvc3Ryc2lnbmFsLmMgICAgICAgICAgICAgIHwgICAgMSAtCisgbGliL2NvbXBhdC91bnNldGVudi5jICAgICAgICAgICAgICAgfCAgICAxIC0KKyBsaWIvY29tcGF0L3ZzbnByaW50Zi5jICAgICAgICAgICAgICB8ICAgIDEgLQorIGxpYi9kcGtnL2J1ZmZlci5jICAgICAgICAgICAgICAgICAgIHwgICAgMSAtCisgbGliL2Rwa2cvY2xlYW51cC5jICAgICAgICAgICAgICAgICAgfCAgICAxIC0KKyBsaWIvZHBrZy9jb21tYW5kLmMgICAgICAgICAgICAgICAgICB8ICAgIDEgLQorIGxpYi9kcGtnL2NvbW1hbmQuaCAgICAgICAgICAgICAgICAgIHwgICAgMSAtCisgbGliL2Rwa2cvZGF0YWJhc2UuYyAgICAgICAgICAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvZGJtb2RpZnkuYyAgICAgICAgICAgICAgICAgfCAgIDEzICsrKy0tLS0tLQorIGxpYi9kcGtnL2Rwa2ctZGIuaCAgICAgICAgICAgICAgICAgIHwgICAgMyArLQorIGxpYi9kcGtnL2R1bXAuYyAgICAgICAgICAgICAgICAgICAgIHwgICAxMCArKystLS0KKyBsaWIvZHBrZy9laGFuZGxlLmMgICAgICAgICAgICAgICAgICB8ICAgMTIgKysrLS0tLS0KKyBsaWIvZHBrZy9maWVsZHMuYyAgICAgICAgICAgICAgICAgICB8ICAgMTEgKysrLS0tLQorIGxpYi9kcGtnL2ZpbGUuYyAgICAgICAgICAgICAgICAgICAgIHwgICAgMSAtCisgbGliL2Rwa2cvZmlsZS5oICAgICAgICAgICAgICAgICAgICAgfCAgICAxIC0KKyBsaWIvZHBrZy9sb2cuYyAgICAgICAgICAgICAgICAgICAgICB8ICAgIDEgLQorIGxpYi9kcGtnL21hY3Jvcy5oICAgICAgICAgICAgICAgICAgIHwgICAgMSAtCisgbGliL2Rwa2cvbWxpYi5jICAgICAgICAgICAgICAgICAgICAgfCAgICA3ICsrLS0tCisgbGliL2Rwa2cvbmZtYWxsb2MuYyAgICAgICAgICAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvcGFyc2UuYyAgICAgICAgICAgICAgICAgICAgfCAgICA3ICsrKy0KKyBsaWIvZHBrZy9wYXJzZWhlbHAuYyAgICAgICAgICAgICAgICB8ICAgIDcgKystLS0KKyBsaWIvZHBrZy9wYXRoLmMgICAgICAgICAgICAgICAgICAgICB8ICAgIDEgLQorIGxpYi9kcGtnL3BhdGguaCAgICAgICAgICAgICAgICAgICAgIHwgICAgMSAtCisgbGliL2Rwa2cvcGtnLWFycmF5LmMgICAgICAgICAgICAgICAgfCAgICAxIC0KKyBsaWIvZHBrZy9wa2ctZm9ybWF0LmMgICAgICAgICAgICAgICB8ICAgIDEgLQorIGxpYi9kcGtnL3BrZy1saXN0LmMgICAgICAgICAgICAgICAgIHwgICAgMSAtCisgbGliL2Rwa2cvcGtnLXF1ZXVlLmMgICAgICAgICAgICAgICAgfCAgICAxIC0KKyBsaWIvZHBrZy9wa2ctc2hvdy5jICAgICAgICAgICAgICAgICB8ICAgIDEgLQorIGxpYi9kcGtnL3BrZy5jICAgICAgICAgICAgICAgICAgICAgIHwgICAgMSAtCisgbGliL2Rwa2cvcHJvZ3Jlc3MuYyAgICAgICAgICAgICAgICAgfCAgICAxIC0KKyBsaWIvZHBrZy9wcm9ncmVzcy5oICAgICAgICAgICAgICAgICB8ICAgIDEgLQorIGxpYi9kcGtnL3N0cmluZy5jICAgICAgICAgICAgICAgICAgIHwgICAgMSAtCisgbGliL2Rwa2cvc3RyaW5nLmggICAgICAgICAgICAgICAgICAgfCAgICAxIC0KKyBsaWIvZHBrZy9zdWJwcm9jLmMgICAgICAgICAgICAgICAgICB8ICAgIDEgLQorIGxpYi9kcGtnL3N1YnByb2MuaCAgICAgICAgICAgICAgICAgIHwgICAgMSAtCisgbGliL2Rwa2cvdGFyZm4uYyAgICAgICAgICAgICAgICAgICAgfCAgICAxIC0KKyBsaWIvZHBrZy90ZXN0LmggICAgICAgICAgICAgICAgICAgICB8ICAgIDEgLQorIGxpYi9kcGtnL3Rlc3QvTWFrZWZpbGUuYW0gICAgICAgICAgIHwgICAgMSAtCisgbGliL2Rwa2cvdGVzdC90LWJ1ZmZlci5jICAgICAgICAgICAgfCAgICAxIC0KKyBsaWIvZHBrZy90ZXN0L3QtY29tbWFuZC5jICAgICAgICAgICB8ICAgIDEgLQorIGxpYi9kcGtnL3Rlc3QvdC1tYWNyb3MuYyAgICAgICAgICAgIHwgICAgMSAtCisgbGliL2Rwa2cvdGVzdC90LXBhdGguYyAgICAgICAgICAgICAgfCAgICAxIC0KKyBsaWIvZHBrZy90ZXN0L3QtcGtnLWxpc3QuYyAgICAgICAgICB8ICAgIDEgLQorIGxpYi9kcGtnL3Rlc3QvdC1wa2ctcXVldWUuYyAgICAgICAgIHwgICAgMSAtCisgbGliL2Rwa2cvdGVzdC90LXBrZ2luZm8uYyAgICAgICAgICAgfCAgICAxIC0KKyBsaWIvZHBrZy90ZXN0L3Qtc3RyaW5nLmMgICAgICAgICAgICB8ICAgIDEgLQorIGxpYi9kcGtnL3Rlc3QvdC10ZXN0LmMgICAgICAgICAgICAgIHwgICAgMSAtCisgbGliL2Rwa2cvdGVzdC90LXZhcmJ1Zi5jICAgICAgICAgICAgfCAgICAxIC0KKyBsaWIvZHBrZy90ZXN0L3QtdmVyc2lvbi5jICAgICAgICAgICB8ICAgIDEgLQorIGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sICAgICAgICAgICAgIHwgICAgMSAtCisgbGliL2Rwa2cvdHJpZ2xpYi5jICAgICAgICAgICAgICAgICAgfCAgICAxICsKKyBsaWIvZHBrZy91dGlscy5jICAgICAgICAgICAgICAgICAgICB8ICAgIDEgLQorIG00L2Rwa2ctY29tcGlsZXIubTQgICAgICAgICAgICAgICAgIHwgICAgMSAtCisgbTQvZHBrZy1wcm9ncy5tNCAgICAgICAgICAgICAgICAgICAgfCAgICAxIC0KKyBtYW4vcG8vQ2hhbmdlTG9nLm9sZCAgICAgICAgICAgICAgICB8ICAgIDEgLQorIHBvL0NoYW5nZUxvZy5vbGQgICAgICAgICAgICAgICAgICAgIHwgICAgMSAtCisgc2NyaXB0cy9kcGtnLWRpc3RhZGRmaWxlLnBsICAgICAgICAgfCAgICAxIC0KKyBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbCAgICAgICAgICB8ICAgIDEgLQorIHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsICAgICAgICAgIHwgICAgMSAtCisgc2NyaXB0cy9kcGtnLW1lcmdlY2hhbmdlbG9ncy5wbCAgICAgfCAgICAxIC0KKyBzY3JpcHRzL2Rwa2ctbmFtZS5wbCAgICAgICAgICAgICAgICB8ICAgIDEgLQorIHNjcmlwdHMvZHBrZy1wYXJzZWNoYW5nZWxvZy5wbCAgICAgIHwgICAgMSAtCisgc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbCAgICAgICAgfCAgICAxIC0KKyBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsICAgICAgICAgICB8ICAgIDEgLQorIHNjcmlwdHMvZHBrZy1zb3VyY2UucGwgICAgICAgICAgICAgIHwgICAgMSAtCisgc2NyaXB0cy9wby9DaGFuZ2VMb2cub2xkICAgICAgICAgICAgfCAgICAxIC0KKyBzY3JpcHRzL3QvNDAwX0Rwa2dfRGVwcy50ICAgICAgICAgICB8ICAgIDEgLQorIHNjcmlwdHMvdC81MDBfRHBrZ19QYXRoLnQgICAgICAgICAgIHwgICAgMSAtCisgc2NyaXB0cy90LzcwMF9EcGtnX0NvbnRyb2wudCAgICAgICAgfCAgICAxIC0KKyBzY3JpcHRzL3QvODUwX0Rwa2dfQ29tcHJlc3Npb24udCAgICB8ICAgIDIgLQorIHNjcmlwdHMvdC85MTBfbWVyZ2VfY2hhbmdlbG9ncy50ICAgIHwgICAgMSAtCisgc3JjL2FyY2hpdmVzLmMgICAgICAgICAgICAgICAgICAgICAgfCAgIDQyICsrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLQorIHNyYy9jbGVhbnVwLmMgICAgICAgICAgICAgICAgICAgICAgIHwgICAgOCArKystLS0KKyBzcmMvZGVwY29uLmMgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMzUgKysrKysrKysrKysrLS0tLS0tLS0tLS0tLQorIHNyYy9kaXZlcnRkYi5jICAgICAgICAgICAgICAgICAgICAgIHwgICAgMSAtCisgc3JjL2VucXVpcnkuYyAgICAgICAgICAgICAgICAgICAgICAgfCAgICA4ICsrKy0tLQorIHNyYy9lcnJvcnMuYyAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNCArLQorIHNyYy9maWxlc2RiLmMgICAgICAgICAgICAgICAgICAgICAgIHwgICAxNCArKysrKy0tLS0tCisgc3JjL2ZpbGVzZGIuaCAgICAgICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgc3JjL2hlbHAuYyAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDE4ICsrKysrKy0tLS0tLQorIHNyYy9tYWluLmMgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNSArLS0KKyBzcmMvbWFpbi5oICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDIgKy0KKyBzcmMvcGFja2FnZXMuYyAgICAgICAgICAgICAgICAgICAgICB8ICAgMTAgKysrLS0tCisgc3JjL3Byb2Nlc3NhcmMuYyAgICAgICAgICAgICAgICAgICAgfCAgIDQ4ICsrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0KKyBzcmMvcXVlcnljbWQuYyAgICAgICAgICAgICAgICAgICAgICB8ICAgMTUgKysrLS0tLS0tLQorIHNyYy9yZW1vdmUuYyAgICAgICAgICAgICAgICAgICAgICAgIHwgICAzOCArKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0KKyBzcmMvc2VsZWN0LmMgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDIgKy0KKyBzcmMvc3RhdGNtZC5jICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDEgLQorIHNyYy9zdGF0ZGIuYyAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMSAtCisgc3JjL3RyaWdjbWQuYyAgICAgICAgICAgICAgICAgICAgICAgfCAgICAxIC0KKyBzcmMvdHJpZ3Byb2MuYyAgICAgICAgICAgICAgICAgICAgICB8ICAgIDEgLQorIHNyYy91cGRhdGUuYyAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNCArLQorIHV0aWxzL3N0YXJ0LXN0b3AtZGFlbW9uLmMgICAgICAgICAgIHwgICAgMSAtCisgdXRpbHMvdC8xMDBfdXBkYXRlX2FsdGVybmF0aXZlcy50ICAgfCAgICAxIC0KKyAxNDEgZmlsZXMgY2hhbmdlZCwgMzIxIGluc2VydGlvbnMoKyksIDQ0NCBkZWxldGlvbnMoLSkKKworY29tbWl0IDdlZTRmNGYyZWY1Y2EzZDlmYTE0MjZhYzkzZjc4ZWFkMjI4MGJjMzYKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gTm92IDEgMDc6MDI6MjEgMjAxMCArMDEwMAorCisgICAgQWRkIGRveHlnZW4gY29tbWVudHMgdG8gc2V2ZXJhbCBmdW5jdGlvbnMKKworIGxpYi9kcGtnL2Rpci5jICAgICAgIHwgICAyMSArKysrKysrKysrKysrKysrKysrKysKKyBsaWIvZHBrZy9maWxlLmMgICAgICB8ICAgIDMgKysrCisgbGliL2Rwa2cvcGFyc2UuYyAgICAgfCAgICAzICsrKworIGxpYi9kcGtnL3BhdGguYyAgICAgIHwgICAxNiArKysrKysrKysrKysrKysrCisgbGliL2Rwa2cvcGtnLWxpc3QuYyAgfCAgIDE5ICsrKysrKysrKysrKysrKysrKysKKyBsaWIvZHBrZy9wa2ctcXVldWUuYyB8ICAgMzcgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKworIGxpYi9kcGtnL3BrZy1xdWV1ZS5oIHwgICAgMyArKysKKyBsaWIvZHBrZy9zdHJpbmcuYyAgICB8ICAgIDkgKysrKysrKysrCisgOCBmaWxlcyBjaGFuZ2VkLCAxMTEgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IGVjNWQ2ODEzMzk4YTQyYjZjZjZiM2RhNzYwNGU1OWJiYjMzNDNhYTkKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gTm92IDEgMDY6MTM6MzggMjAxMCArMDEwMAorCisgICAgQ2xlYW51cCBhbmQgaW1wcm92ZSBzb3VyY2UgY29kZSBjb21tZW50cworICAgIAorICAgIEdsb2JhbCByZXZpZXcsIHdoaWNoIGluY2x1ZGVzIHRoZSBmb2xsb3dpbmcgY2hhbmdlcyB0byB0cnkgdG8gaW5jcmVhc2UKKyAgICBjb25zaXN0ZW5jeSwgdXBkYXRlIGFuZCBpbXByb3ZlIHRoZSBzb3VyY2UgY29kZSBjb21tZW50czoKKyAgICAKKyAgICAgLSBTcGVsbGluZyBmaXhlcy4KKyAgICAgLSBVc2UgQW1lcmljYW4gRW5nbGlzaCBmb3Jtcy4KKyAgICAgLSBVcHBlcmNhc2UgTlVMTCwgTlVMIGFuZCBBU0NJSS4KKyAgICAgLSBVc2Ug4oCcTm90ZTog4oCdIGluc3RlYWQgb2YgdGhlIHNsaWdodGx5IGNyeXB0aWMg4oCcTkI6IOKAnSBmb3JtLgorICAgICAtIFdyaXRlIGNvbW1lbnRzIGFzIHByb3BlciBzZW50ZW5jZXMsIGluY2x1ZGluZyBjYXBpdGFsaXphdGlvbnMgYW5kCisgICAgICAgZW5kaW5nIGRvdHMuCisgICAgIC0gTW92ZSBjb21tZW50cyBiZWZvcmUgdGhlIGNvZGUsIGZ1bmN0aW9uIG9yIHZhcmlhYmxlIHRoZXkgcmVmZXIgdG8uCisgICAgIC0gTW92ZSBnZW5lcmFsIGZ1bmN0aW9uIGNvbW1lbnRzIG91dHNpZGUgdGhlIGJvZHkuCisgICAgIC0gQ29udmVydCBmdW5jdGlvbiBhbmQgdmFyaWFibGUgZGVzY3JpcHRpb24gY29tbWVudHMgdG8gZG94eWdlbi4KKyAgICAgLSBVc2Ugb25lIHNwYWNlIGJlZm9yZSBkb3QsIGV4Y2xhbWF0aW9uIGFuZCBxdWVzdGlvbiBtYXJrcy4KKyAgICAgLSBVc2Ug4oCY4oCZIG9yIOKAnOKAnSBpbnN0ZWFkIG9mIGAnIHN0eWxlIHF1b3RpbmcuCisgICAgIC0gUmVtb3ZlIGF1dGhvciBuYW1lcyBmcm9tIGNvbW1lbnRzLCBhbHJlYWR5IHZpc2libGUgZnJvbSDigJxnaXQgYmxhbWXigJ0uCisgICAgIC0gTWFyayBzdHJpbmdzIGZvciB0cmFuc2xhdG9ycyB3aXRoIOKAnFRSQU5TTEFUT1JTOiDigJ0uCisgICAgIC0gUmVtb3ZlIHVzZWxlc3Mgb3Igb3V0ZGF0ZWQgY29tbWVudHMuCisgICAgIC0gRml4IGNvbW1lbnQgaW5kZW50YXRpb24uCisgICAgIC0gU3RhbmRhcmRpemUgY29tbWVudCBmb3JtYXQ6CisgICAgCisgICAgICAgLyogU2hvcnQgdGV4dCBjb21tZW50LiAqLworICAgIAorICAgICAgIC8qIExvbmcgdGV4dCwKKyAgICAgICAgKiBjb21tZW50LiAqLworICAgIAorICAgICAgIC8qCisgICAgICAgICogU2VjdGlvbiB0ZXh0LgorICAgICAgICAqLworCisgZHBrZy1kZWIvYnVpbGQuYyAgICAgICAgICAgICAgfCAgIDc0ICsrKysrKystLS0tLS0tLQorIGRwa2ctZGViL2V4dHJhY3QuYyAgICAgICAgICAgIHwgICAgOCArLQorIGRwa2ctc3BsaXQvZHBrZy1zcGxpdC5oICAgICAgIHwgICAxMSArLQorIGRwa2ctc3BsaXQvaW5mby5jICAgICAgICAgICAgIHwgICAxMCArKy0KKyBkcGtnLXNwbGl0L3F1ZXVlLmMgICAgICAgICAgICB8ICAgMjcgKysrLS0tCisgZHNlbGVjdC9wa2dkaXNwbGF5LmNjICAgICAgICAgfCAgICA5ICstCisgbGliL2Rwa2cvZGF0YWJhc2UuYyAgICAgICAgICAgfCAgIDI4ICsrKy0tLQorIGxpYi9kcGtnL2RibW9kaWZ5LmMgICAgICAgICAgIHwgICAyMCArKy0tCisgbGliL2Rwa2cvZHBrZy1kYi5oICAgICAgICAgICAgfCAgIDU2ICsrKysrKystLS0tCisgbGliL2Rwa2cvZHBrZy5oICAgICAgICAgICAgICAgfCAgICAzICstCisgbGliL2Rwa2cvZHVtcC5jICAgICAgICAgICAgICAgfCAgICA0ICstCisgbGliL2Rwa2cvZWhhbmRsZS5jICAgICAgICAgICAgfCAgIDMyICsrKystLS0KKyBsaWIvZHBrZy9laGFuZGxlLmggICAgICAgICAgICB8ICAgIDMgKy0KKyBsaWIvZHBrZy9maWVsZHMuYyAgICAgICAgICAgICB8ICAgMzMgKysrKystLQorIGxpYi9kcGtnL2ZpbGUuYyAgICAgICAgICAgICAgIHwgICAxNyArKystCisgbGliL2Rwa2cvZmlsZS5oICAgICAgICAgICAgICAgfCAgICAzIC0KKyBsaWIvZHBrZy9tbGliLmMgICAgICAgICAgICAgICB8ICAgIDIgKy0KKyBsaWIvZHBrZy9teW9wdC5oICAgICAgICAgICAgICB8ICAgIDkgKystCisgbGliL2Rwa2cvbmZtYWxsb2MuYyAgICAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvcGFyc2UuYyAgICAgICAgICAgICAgfCAgMTExICsrKysrKysrKysrLS0tLS0tLS0tLS0KKyBsaWIvZHBrZy9wYXJzZWR1bXAuaCAgICAgICAgICB8ICAgIDMgKy0KKyBsaWIvZHBrZy9wYXJzZWhlbHAuYyAgICAgICAgICB8ICAgMTYgKystLQorIGxpYi9kcGtnL3BhdGguYyAgICAgICAgICAgICAgIHwgICAzMCArKystLS0tCisgbGliL2Rwa2cvc3RyaW5nLmMgICAgICAgICAgICAgfCAgICA4ICsrLQorIGxpYi9kcGtnL3RhcmZuLmMgICAgICAgICAgICAgIHwgICAxMiArKy0KKyBsaWIvZHBrZy90cmlnZGVmZXJyZWQuaCAgICAgICB8ICAgIDggLS0KKyBsaWIvZHBrZy90cmlnZGVmZXJyZWQubCAgICAgICB8ICAgMTEgKysKKyBsaWIvZHBrZy90cmlnbGliLmMgICAgICAgICAgICB8ICAgODcgKysrKysrKysrKy0tLS0tLS0KKyBsaWIvZHBrZy91dGlscy5jICAgICAgICAgICAgICB8ICAgIDUgKy0KKyBsaWIvZHBrZy92YXJidWYuaCAgICAgICAgICAgICB8ICAgIDIgKy0KKyBsaWIvZHBrZy92ZXJjbXAuYyAgICAgICAgICAgICB8ICAgIDQgKy0KKyBtNC9kcGtnLWNvbXBpbGVyLm00ICAgICAgICAgICB8ICAgMTIgKy0KKyBzY3JpcHRzL0Rwa2cvU2hsaWJzL1N5bWJvbC5wbSB8ICAgIDIgKy0KKyBzcmMvYXJjaGl2ZXMuYyAgICAgICAgICAgICAgICB8ICAxOTYgKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0KKyBzcmMvY2xlYW51cC5jICAgICAgICAgICAgICAgICB8ICAgNTEgKysrKysrLS0tLS0KKyBzcmMvY29uZmlndXJlLmMgICAgICAgICAgICAgICB8ICAgIDggKy0KKyBzcmMvZGVwY29uLmMgICAgICAgICAgICAgICAgICB8ICAxMjkgKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0KKyBzcmMvZW5xdWlyeS5jICAgICAgICAgICAgICAgICB8ICAgNzkgKysrKysrKysrLS0tLS0tLQorIHNyYy9maWxlc2RiLmMgICAgICAgICAgICAgICAgIHwgICA2OSArKysrKysrLS0tLS0tLQorIHNyYy9maWxlc2RiLmggICAgICAgICAgICAgICAgIHwgIDExMCArKysrKysrKysrKystLS0tLS0tLS0tCisgc3JjL2hlbHAuYyAgICAgICAgICAgICAgICAgICAgfCAgIDMzICsrKystLS0KKyBzcmMvbWFpbi5jICAgICAgICAgICAgICAgICAgICB8ICAgMzkgKysrKy0tLS0KKyBzcmMvbWFpbi5oICAgICAgICAgICAgICAgICAgICB8ICAgMjQgKystLS0KKyBzcmMvcGFja2FnZXMuYyAgICAgICAgICAgICAgICB8ICAgNTIgKysrKysrLS0tLS0KKyBzcmMvcHJvY2Vzc2FyYy5jICAgICAgICAgICAgICB8ICAyMDYgKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBzcmMvcXVlcnljbWQuYyAgICAgICAgICAgICAgICB8ICAgNDkgKysrKysrKy0tLQorIHNyYy9yZW1vdmUuYyAgICAgICAgICAgICAgICAgIHwgICA0OCArKysrKy0tLS0tCisgc3JjL3RyaWdwcm9jLmMgICAgICAgICAgICAgICAgfCAgIDU4ICsrKysrKystLS0tLQorIHNyYy91cGRhdGUuYyAgICAgICAgICAgICAgICAgIHwgICAgMiArLQorIHV0aWxzL3N0YXJ0LXN0b3AtZGFlbW9uLmMgICAgIHwgICAyMSArKystLQorIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYyAgIHwgICAgNiArLQorIDUxIGZpbGVzIGNoYW5nZWQsIDEwMTUgaW5zZXJ0aW9ucygrKSwgODI3IGRlbGV0aW9ucygtKQorCitjb21taXQgOTIwOTAxMDQ1NTgxMmI2ZTUxY2Q5MDdhYWIzZDUwNzc5ZWE4ZTM1YgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBPY3QgMzEgMjE6MzA6NDkgMjAxMCArMDEwMAorCisgICAgcy1zLWQ6IFJlZmFjdG9yIHNjaGVkX3RpbWVvdXQgY29kZSBvdXQgaW50byBuZXcgZG9fc3RvcF90aW1lb3V0KCkKKworIHV0aWxzL3N0YXJ0LXN0b3AtZGFlbW9uLmMgfCAgMTMyICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgNzEgaW5zZXJ0aW9ucygrKSwgNjEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAxNDFiOGE0NmZhZTBhODAzMTNjYTE5NjhmNTVmNDUxMjRjZTcwNDI4CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIE9jdCAzMSAwNzo1NTo0NyAyMDEwICswMTAwCisKKyAgICBsaWJkcGtnOiBNYWtlIHN0cl9lc2NhcGVfZm10IGJ1ZmZlciBvdmVyZmxvdyBzYWZlCisgICAgCisgICAgTWFrZSBzdXJlIHdlIGRvIG5vdCB3cml0ZSBtb3JlIHRvIHRoZSBkZXN0aW5hdGlvbiBidWZmZXIgdGhhbiBpdCBjYW4KKyAgICBob2xkLgorCisgbGliL2Rwa2cvcGFyc2VoZWxwLmMgICAgIHwgICAgNCArKy0tCisgbGliL2Rwa2cvc3RyaW5nLmMgICAgICAgIHwgICAxMiArKysrKysrKysrLS0KKyBsaWIvZHBrZy9zdHJpbmcuaCAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvdGVzdC90LXN0cmluZy5jIHwgICAxOSArKysrKysrKysrKysrKystLS0tCisgNCBmaWxlcyBjaGFuZ2VkLCAyOCBpbnNlcnRpb25zKCspLCA5IGRlbGV0aW9ucygtKQorCitjb21taXQgMjk1YTYxMDJjYWNiNmJlMTViZjI0NDE1NDlkMmRjYjUwNTk5MDEzOAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBPY3QgMzEgMDY6Mjg6NTggMjAxMCArMDEwMAorCisgICAgbGliZHBrZzogUmVmYWN0b3Igc3RyaW5nIHRlcm1pbmF0aW9uIGluIHBhdGhfcXVvdGVfZmlsZW5hbWUKKyAgICAKKyAgICBNb3ZlIGFsbCBkZXN0aW5hdGlvbiBzdHJpbmcgdGVybWluYXRpb24gdG8gdGhlIGVuZCBvZiB0aGUgZnVuY3Rpb24uCisgICAgQWx3YXlzIGNoZWNrIHRoZSBzaXplIGxpbWl0IGJlZm9yZSB3cml0dGluZyB0byB0aGUgZGVzaW50YXRpb24gYW5kIGJhaWwKKyAgICBvdXQgaWYgdGhlcmUncyBubyBlbm91Z2ggc3BhY2UuCisKKyBsaWIvZHBrZy9wYXRoLmMgfCAgIDQ3ICsrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyMSBpbnNlcnRpb25zKCspLCAyNiBkZWxldGlvbnMoLSkKKworY29tbWl0IDUzN2E1MDc2NDMxN2M5YTJlZDM3YWZlN2E0YWNjM2YxMTE0ZjhjNTUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gT2N0IDMxIDA2OjAxOjAyIDIwMTAgKzAxMDAKKworICAgIGxpYmRwa2c6IENoYW5nZSBzd2l0Y2ggaW50byBpZi9lbHNlIGluIHBhdGhfcXVvdGVfZmlsZW5hbWUKKyAgICAKKyAgICBUaGlzIHJlZHVjZXMgdGhlIGNvZGUgZGVwdGgsIGFuZCB3aWxsIGFsbG93IGZ1cnRoZXIgY29kZSBzaW1wbGlmaWNhdGlvbi4KKworIGxpYi9kcGtnL3BhdGguYyB8ICAgMzQgKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMTUgaW5zZXJ0aW9ucygrKSwgMTkgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAxODBlMmUwZTQ3NzE0NWRmNGNjZjhhNzEyMjA3NzNjMGIwOTMwOTFlCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIE9jdCAzMSAwNDowOTo1OSAyMDEwICswMTAwCisKKyAgICBsaWJkcGtnOiBBZGQgbmV3IHdhcm5pbmd2KCkgZnVuY3Rpb24gYW5kIG1ha2Ugd2FybmluZygpIHVzZSBpdAorCisgbGliL2Rwa2cvZWhhbmRsZS5jICAgICAgICB8ICAgMTQgKysrKysrKysrKy0tLS0KKyBsaWIvZHBrZy9laGFuZGxlLmggICAgICAgIHwgICAgMSArCisgbGliL2Rwa2cvbGliZHBrZy5WZXJzaW9ucyB8ICAgIDEgKworIDMgZmlsZXMgY2hhbmdlZCwgMTIgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKKworY29tbWl0IDdkNGQxMDA3YzRmN2NhOGQ0MGE1Mzc0ZjEzMDU0MjZiOGMxZTJlNTQKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gT2N0IDMxIDA0OjA1OjE5IDIwMTAgKzAxMDAKKworICAgIGxpYmRwa2c6IEFkZCBQVVJFLCBNQUxMT0MsIE5PTk5VTEwgYW5kIFJFUVJFVCBjb21waWxlciBhdHRyaWJ1dGVzCisKKyBsaWIvZHBrZy9tYWNyb3MuaCB8ICAgMTMgKysrKysrKysrKysrKworIDEgZmlsZXMgY2hhbmdlZCwgMTMgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDYzMTMzOGE1ZTU0ZDVlY2Q4NjFmMjY0NDBkZWVmMzdhODkxZDFmMzAKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gT2N0IDMxIDAzOjQwOjA0IDIwMTAgKzAxMDAKKworICAgIGRzZWxlY3Q6IFJlbW92ZSBzaGFkb3dpbmcgdmFyaWFibGUgZGVmaW5pdGlvbnMgZnJvbSBwa2d0b3AKKyAgICAKKyAgICBUaGUgdmFyaWFibGVzIGkgYW5kIHAgYXJlIGFsd2F5cyBpbml0aWFsaXplZCBiZWZvcmUgZWFjaCBkaWZmZXJlbnQgbG9vcAorICAgIHVzZSwgYW5kIHRoZXkgYXJlIGFjdHVhbGx5IHVzZWQgZm9yIHRoZSBzYW1lIHB1cnBvc2UsIGp1c3QgaW4gZGlmZmVyZW50CisgICAgcGxhY2VzIGluIHRoZSBjb2RlLgorCisgZHNlbGVjdC9wa2d0b3AuY2MgfCAgICAyIC0tCisgMSBmaWxlcyBjaGFuZ2VkLCAwIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyZDg3MjFjODQxN2FhYThkZDhmZTFmMzkzZWVlNjllOTJlNWIyMjk0CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIE5vdiAzIDAxOjU3OjQyIDIwMTAgKzAxMDAKKworICAgIGJ1aWxkOiBVc2UgQUNfUkVRVUlSRSBmb3IgQUNfQ0FOT05JQ0FMX0hPU1QgaW4gRFBLR19GVU5DX0FTWU5DX1NZTkMKKworIG00L2Rwa2ctZnVuY3MubTQgfCAgICAyICstCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA3OWIwYTk4ZGZmNWU4YWFmM2VlOTRkMzAxNjEzMjc4Y2YxYmQ1NTkzCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIE5vdiAyIDA1OjU1OjUxIDIwMTAgKzAxMDAKKworICAgIGJ1aWxkOiBDaGFuZ2UgdGhlIHN0cmljdG5lc3MgZnJvbSBnbnUgdG8gZm9yZWlnbgorICAgIAorICAgIFRoaXMgaXMgbm90IGEgR05VIHByb2plY3QgYW5kIHRodXMgd2UgZG9uJ3QgYWJpZGUgYnkgdGhlIEdOVQorICAgIGNvbnZlbnRpb25zLgorCisgY29uZmlndXJlLmFjIHwgICAgMiArLQorIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgYmJmMWMxMDA2NDk1OGRhMWViYjVhOGQyZGEwYmMxNzBkZDFjOTk0YQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBOb3YgMiAwNTo1MzozMCAyMDEwICswMTAwCisKKyAgICBidWlsZDogUmVmYWN0b3IgLS13aXRoL291dCBvcHRpb25zIGludG8gRFBLR19XSVRIX1BST0cgYW5kIERQS0dfV0lUSF9ESVIKKworIGNvbmZpZ3VyZS5hYyAgICAgfCAgIDcyICsrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgbTQvZHBrZy1idWlsZC5tNCB8ICAgMzMgKysrKysrKysrKysrKysrKysrKysrKysrCisgMiBmaWxlcyBjaGFuZ2VkLCA0MyBpbnNlcnRpb25zKCspLCA2MiBkZWxldGlvbnMoLSkKKworY29tbWl0IGZjZDQyOGQwYjA1Zjg0ZWUxZGJjNDkxMGEwMTFkNzViZjZkMDIxNzEKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gT2N0IDMxIDAzOjI3OjI5IDIwMTAgKzAxMDAKKworICAgIGJ1aWxkOiBVbmlmeSBhbmQgZml4IEFDX0FSR19FTkFCTEUgdXNhZ2UKKyAgICAKKyAgICBUaGUgY3VycmVudCBjb2RlIHdhcyBleGVjdXRpbmcgY29kZSBpbiB0aGUgYWN0aW9uIGFyZ3VtZW50cywgaW5zdGVhZAorICAgIG9mIGp1c3Qgc2V0dGluZyBib29sZWFuIGZsYWdzIGFuZCBwcm9jZXNzaW5nIHRoZW0gYWZ0ZXJ3YXJkcy4gVGhpcworICAgIHBvc2VzIHNldmVyYWwgcHJvYmxlbXMsIGl0IGltcGxpZXMganVnbGluZyBjb2RlIGFyb3VuZCBpbiBjYXNlIHRoZSB0aGUKKyAgICBkZWZhdWx0IGNoYW5nZXMsIGl0IG1pZ2h0IGFsc28gZHVwbGljYXRlIGNvZGUsIGFuZCBpdCBtaWdodCBsZWF2ZSB0aGUKKyAgICBBQ1RJT04tSUYtTk9ULUdJVkVOIGFyZ3VtZW50IGVtcHR5IHdoaWNoIGNvdWxkIHR1cm4gaW50byBhbiBlbXB0eQorICAgIOKAnHRoZW4gZmnigJ0gc2hlbGwgYmxvY2sgd2hpY2ggaXMgYSBzeW50YXggZXJyb3Igb24gUE9TSVggc2hlbGwuIExlYXZpbmcKKyAgICB0aGUgQUNUSU9OLUlGLUdJVkVOIGFyZ3VtZW50IGVtcHR5IGlzIGZpbmUgYXMgaXQncyBhbHdheXMgdXNlZCBieQorICAgIGF1dG9jb25mIHRvIHNldCAkZW5hYmxldmFsIHRvIHRoZSBzcGVjaWZpYyBlbmFibGUgdmFyaWFibGUsIGFuZCBzZXR0aW5nCisgICAgdGhhdCB2YXJpYWJsZSBmcm9tICRlbmFibGV2YWwgaXMgcmVkdW5kYW50IGFuZCBtaWdodCBiZSB3cm9uZyBkZXBlbmRpbmcKKyAgICBvbiB0aGUgb3JkZXIgdGhleSBhcmUgc2V0LCB3aGljaCBjb3VsZCBlbXB0eSBpdC4KKyAgICAKKyAgICBSZXBvcnRlZC1ieTogTWljaGFlbCBTY2htaWR0IDxtaWNoYWVsLnNjaG1pZHQuZGFuZ2VsQGdtYWlsLmNvbT4KKworIG00L2Rwa2ctY29tcGlsZXIubTQgfCAgIDExICsrKysrKystLS0tCisgbTQvZHBrZy1mdW5jcy5tNCAgICB8ICAgMTMgKysrKysrKy0tLS0tLQorIG00L2Rwa2ctbGlua2VyLm00ICAgfCAgIDEzICsrKysrKysrLS0tLS0KKyAzIGZpbGVzIGNoYW5nZWQsIDIyIGluc2VydGlvbnMoKyksIDE1IGRlbGV0aW9ucygtKQorCitjb21taXQgZDIwZDgyZjk5NDc5ZmQ1MGVkYTAxM2JjYjc5MGNhMDZhY2I5YTI1YgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBPY3QgMzEgMDM6MjQ6MDMgMjAxMCArMDEwMAorCisgICAgYnVpbGQ6IEFkZCBtaXNzaW5nIG00IHF1b3RlcyBhcm91bmQgQU1fQ09ORElUSU9OQUwgYXJndW1lbnQKKworIG00L2Rwa2ctY292ZXJhZ2UubTQgfCAgICAyICstCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA0OTVkZmQwMzg5ZmM0OGZlODcyM2Q0MjQ5NTIzNDA1MzA1NzdiOGYzCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IE9jdCAzMCAwOTowMDoyNCAyMDEwICswMjAwCisKKyAgICBidWlsZDogQWRkIG1pc3NpbmcgbTQgcXVvdGVzIHRvIHNlZCByZWdleAorICAgIAorICAgIFRoaXMgd2FzIG1ha2luZyB0aGUgcmVnZXggbm9uLWZ1bmN0aW9uYWwsIGFzIHRoZSBzcXVhcmUgYnJhY2tldHMKKyAgICB3ZXJlIGJlaW5nIHJlbW92ZWQgd2hlbiBnZW5lcmF0aW5nIHRoZSBvdXRwdXQgZmlsZSwgdGh1cyBtYWtpbmcgdGhlCisgICAgLS1kaXNhYmxlLWNvbXBpbGVyLW9wdGltaXNhdGlvbnMgYW5kIC0tZGlzYWJsZS1saW5rZXItb3B0aW1pc2F0aW9ucworICAgIG5vbi1mdW5jdGlvbmFsLgorCisgbTQvZHBrZy1jb21waWxlci5tNCB8ICAgIDIgKy0KKyBtNC9kcGtnLWxpbmtlci5tNCAgIHwgICAgMiArLQorIDIgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgZTMzODc0OGU5ZmYyOGFiNzkyMWExMTBmZDcxZWM3MTg4MmJiYzNkZAorQXV0aG9yOiBDeXJpbCBCcnVsZWJvaXMgPGtpYmlAZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IE9jdCAyMyAxMDowMDo0NiAyMDEwICswMjAwCisKKyAgICBidWlsZDogQnJlYWsgaWYgbmN1cnNlcyBpcyByZXF1ZXN0ZWQgYnV0IHVuYXZhaWxhYmxlCisgICAgCisgICAgSWYgYnVpbGRpbmcgZHNlbGVjdCBpcyByZXF1ZXN0ZWQgKHRoZSBkZWZhdWx0KSwgbmN1cnNlcyBpcyByZXF1ZXN0ZWQKKyAgICB0aHJvdWdoIERQS0dfTElCX0NVUlNFUywgYnV0IGlmIGl0IGlzbid0IGZvdW5kLCBvbmx5IEFDX01TR19XQVJOIGlzCisgICAgdXNlZCwgbGVhZGluZyB0byBhIHN1Y2Nlc3NmdWwgY29uZmlndXJlIGFuZCBhIGZhaWx1cmUgdG8gYnVpbGQKKyAgICBkc2VsZWN0LyouIFVzZSBBQ19NU0dfRVJST1IgaW5zdGVhZCB0byBtYWtlIGNvbmZpZ3VyZSBiYWlsIG91dC4KKyAgICAKKyAgICBSZXBvcnRlZC1ieTogTWljaGFlbCBTY2htaWR0IDxtaWNoYWVsLnNjaG1pZHQuZGFuZ2VsQGdtYWlsLmNvbT4KKyAgICBTaWduZWQtb2ZmLWJ5OiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKyBtNC9kcGtnLWxpYnMubTQgfCAgICAyICstCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA0ZjgxYmEyNDU3NjM4NDczYjJmY2FiYWE1YjMxNGJhMDc3ZGYxOTVhCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIE9jdCAyNiAxOTowNTo0OSAyMDEwICswMjAwCisKKyAgICBtYW46IFVzZSBGSFMgbW91bnQgcG9pbnQgZm9yIC9tZWRpYS9jZHJvbQorCisgbWFuL2Rwa2cuMSB8ICAgIDQgKystLQorIDEgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgYmE5MDg3ODNlMzA2YmEzODQ1N2E4NGZkNmQ5NzVjYTY5ZTM1MWU1NgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBPY3QgMjQgMDQ6MzU6MDcgMjAxMCArMDIwMAorCisgICAgbGliZHBrZzogQWx3YXlzIHByaW50IHBhcnNlIHdhcm5pbmdzIG9uIHN0ZGVycgorICAgIAorICAgIFJlbW92ZSBub3cgdW51c2VkIHdhcm50byBmcm9tIHBhcnNlZGJfc3RhdCBzdHJ1Y3QuCisKKyBkcGtnLWRlYi9idWlsZC5jICAgICB8ICAgIDIgKy0KKyBkcGtnLWRlYi9pbmZvLmMgICAgICB8ICAgIDIgKy0KKyBsaWIvZHBrZy9kYm1vZGlmeS5jICB8ICAgIDcgKysrLS0tLQorIGxpYi9kcGtnL2Rwa2ctZGIuaCAgIHwgICAgMiArLQorIGxpYi9kcGtnL3BhcnNlLmMgICAgIHwgICAgOSArKystLS0tLS0KKyBsaWIvZHBrZy9wYXJzZWR1bXAuaCB8ICAgIDEgLQorIGxpYi9kcGtnL3BhcnNlaGVscC5jIHwgICAgOCArKystLS0tLQorIHNyYy9wcm9jZXNzYXJjLmMgICAgIHwgICAgMiArLQorIHNyYy91cGRhdGUuYyAgICAgICAgIHwgICAgNCArKy0tCisgOSBmaWxlcyBjaGFuZ2VkLCAxNSBpbnNlcnRpb25zKCspLCAyMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDRhZmM0ZDAyMzlkN2Y0ZTYwYmM2OGE3OWEwN2FlZjU3NmM4YTNlYmUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gT2N0IDI0IDAzOjU1OjU4IDIwMTAgKzAyMDAKKworICAgIGxpYmRwa2c6IFJlb3JkZWQgY29udmVydF9zdHJpbmcgYXJndW1lbnRzCisKKyBsaWIvZHBrZy9maWVsZHMuYyB8ICAgMzAgKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAxNiBpbnNlcnRpb25zKCspLCAxNCBkZWxldGlvbnMoLSkKKworY29tbWl0IDI4MDA3ZDAyYzNmNjBkNzYyY2RiOTQzZTg4ODYyNjczMzNmMWMyYTEKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gT2N0IDI0IDAzOjQ5OjQ3IDIwMTAgKzAyMDAKKworICAgIFVzZSBuZXcgbmFtZXZhbHVlX2ZpbmRfYnlfbmFtZSBmdW5jdGlvbiBpbnN0ZWFkIG9mIGFkLWhvYyBjb2RlCisKKyBsaWIvZHBrZy9maWVsZHMuYyB8ICAgMTIgKysrKy0tLS0tLS0tCisgc3JjL3NlbGVjdC5jICAgICAgfCAgICA2ICsrKystLQorIDIgZmlsZXMgY2hhbmdlZCwgOCBpbnNlcnRpb25zKCspLCAxMCBkZWxldGlvbnMoLSkKKworY29tbWl0IGU2NjgzNjg1NGVmNTFiNWI1Y2UwYjk1YTYxYWRiZjEzZjhkY2Q2NjAKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gT2N0IDI0IDAzOjQ5OjIyIDIwMTAgKzAyMDAKKworICAgIGxpYmRwa2c6IEFkZCBuZXcgbmFtZXZhbHVlX2ZpbmRfYnlfbmFtZSBmdW5jdGlvbgorCisgbGliL2Rwa2cvTWFrZWZpbGUuYW0gICAgICAgICAgICAgICAgICB8ICAgIDEgKworIGxpYi9kcGtnL2xpYmRwa2cuVmVyc2lvbnMgICAgICAgICAgICAgfCAgICAzICsrKworIGxpYi9kcGtnL3tuYW1ldmFsdWUuaCA9PiBuYW1ldmFsdWUuY30gfCAgIDMyICsrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tCisgbGliL2Rwa2cvbmFtZXZhbHVlLmggICAgICAgICAgICAgICAgICB8ICAgIDUgKysrKy0KKyA0IGZpbGVzIGNoYW5nZWQsIDIzIGluc2VydGlvbnMoKyksIDE4IGRlbGV0aW9ucygtKQorCitjb21taXQgOGMyMzRjNTY5ODY0NWE3NTlmNjE1M2ZkMWJlNGQ3YjkwMDU5YmI4OAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBPY3QgMjQgMDM6Mjg6NTUgMjAxMCArMDIwMAorCisgICAgbGliZHBrZzogTW92ZSBuYW1ldmFsdWUgZGVjbGFyYXRpb25zIHRvIGl0cyBvd24gaGVhZGVyIGZpbGUKKworIGxpYi9kcGtnL01ha2VmaWxlLmFtIHwgICAgMSArCisgbGliL2Rwa2cvZHBrZy1kYi5oICAgfCAgICA1ICstLS0tCisgbGliL2Rwa2cvbmFtZXZhbHVlLmggfCAgIDQwICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKKyBsaWIvZHBrZy9wYXJzZWhlbHAuYyB8ICAgIDMgLS0tCisgNCBmaWxlcyBjaGFuZ2VkLCA0MiBpbnNlcnRpb25zKCspLCA3IGRlbGV0aW9ucygtKQorCitjb21taXQgYjg5MzczZTE2OWNmMGQ5MGMzMTQzZWVhYzBiZGVkMWE1ZDllOWM1YworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBPY3QgMjQgMDM6MTc6MzggMjAxMCArMDIwMAorCisgICAgbGliZHBrZzogUmVuYW1lIHBhY2thZ2UgYmxhbmsgZnVuY3Rpb25zIHRvIHBrZ19ibGFuayBhbmQgcGtnX3BlcmZpbGVfYmxhbmsKKworIGxpYi9kcGtnL2RhdGFiYXNlLmMgICAgICAgICB8ICAgMTQgKysrKysrKysrLS0tLS0KKyBsaWIvZHBrZy9kcGtnLWRiLmggICAgICAgICAgfCAgICA0ICsrLS0KKyBsaWIvZHBrZy9saWJkcGtnLlZlcnNpb25zICAgfCAgICA0ICsrLS0KKyBsaWIvZHBrZy9wYXJzZS5jICAgICAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvdGVzdC90LXBrZy1xdWV1ZS5jIHwgICAgMiArLQorIGxpYi9kcGtnL3Rlc3QvdC1wa2dpbmZvLmMgICB8ICAgIDQgKystLQorIHNyYy9jbGVhbnVwLmMgICAgICAgICAgICAgICB8ICAgIDIgKy0KKyBzcmMvcHJvY2Vzc2FyYy5jICAgICAgICAgICAgfCAgICAyICstCisgc3JjL3JlbW92ZS5jICAgICAgICAgICAgICAgIHwgICAgMiArLQorIDkgZmlsZXMgY2hhbmdlZCwgMjAgaW5zZXJ0aW9ucygrKSwgMTYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBhM2RkN2M2MTAxODNjNmY1NTE1ZDY5MTc4YjhhODQ4ZWExZDgyYjg3CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIE9jdCAyNCAwMzoxNjowMCAyMDEwICswMjAwCisKKyAgICBsaWJkcGtnOiBSZW5hbWUgaW5mb3JtYXRpdmUgdG8gcGtnX2lzX2luZm9ybWF0aXZlCisKKyBkc2VsZWN0L3BrZ2RlcGNvbi5jYyAgICAgIHwgICAxMiArKysrKysrLS0tLS0KKyBsaWIvZHBrZy9kYXRhYmFzZS5jICAgICAgIHwgICAgMiArLQorIGxpYi9kcGtnL2Rwa2ctZGIuaCAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvZHVtcC5jICAgICAgICAgICB8ICAgIDMgKystCisgbGliL2Rwa2cvbGliZHBrZy5WZXJzaW9ucyB8ICAgIDIgKy0KKyBsaWIvZHBrZy90ZXN0L3QtcGtnaW5mby5jIHwgICAgNiArKystLS0KKyBzcmMvcXVlcnljbWQuYyAgICAgICAgICAgIHwgICAgNCArKy0tCisgNyBmaWxlcyBjaGFuZ2VkLCAxNyBpbnNlcnRpb25zKCspLCAxNCBkZWxldGlvbnMoLSkKKworY29tbWl0IGY3NGRmYzY2NmVhMTkzYTg1ZGU1ZTVmMjZiMDc5NTA2YjI4OTg0M2YKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gT2N0IDI0IDAzOjEzOjU4IDIwMTAgKzAyMDAKKworICAgIGxpYmRwa2c6IFJlbmFtZSBpbGxlZ2FsX3BhY2thZ2VuYW1lIHRvIHBrZ19uYW1lX2lzX2lsbGVnYWwKKworIGxpYi9kcGtnL2Rwa2ctZGIuaCAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvZmllbGRzLmMgICAgICAgICB8ICAgIDggKysrKystLS0KKyBsaWIvZHBrZy9saWJkcGtnLlZlcnNpb25zIHwgICAgMiArLQorIGxpYi9kcGtnL3BhcnNlaGVscC5jICAgICAgfCAgICA0ICsrKy0KKyBsaWIvZHBrZy90cmlnbGliLmMgICAgICAgIHwgICAgOSArKysrKystLS0KKyBzcmMvbWFpbi5jICAgICAgICAgICAgICAgIHwgICAgMiArLQorIHNyYy9zZWxlY3QuYyAgICAgICAgICAgICAgfCAgICAyICstCisgc3JjL3RyaWdjbWQuYyAgICAgICAgICAgICB8ICAgIDIgKy0KKyA4IGZpbGVzIGNoYW5nZWQsIDE5IGluc2VydGlvbnMoKyksIDEyIGRlbGV0aW9ucygtKQorCitjb21taXQgYTYwNjZhMTNhYTIzYjI4MDM2YjY5MmI1NzBmMjgwYTcwZWZjZjk3MQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBPY3QgMjQgMDI6NTU6NTUgMjAxMCArMDIwMAorCisgICAgbGliZHBrZzogUmVuYW1lIGlsbGVnYWxfdHJpZ2dlcm5hbWUgdG8gdHJpZ19uYW1lX2lzX2lsbGVnYWwKKworIGxpYi9kcGtnL2ZpZWxkcy5jICAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvbGliZHBrZy5WZXJzaW9ucyB8ICAgIDIgKy0KKyBsaWIvZHBrZy90cmlnbGliLmMgICAgICAgIHwgICAgNCArKy0tCisgbGliL2Rwa2cvdHJpZ2xpYi5oICAgICAgICB8ICAgIDIgKy0KKyBzcmMvdHJpZ2NtZC5jICAgICAgICAgICAgIHwgICAgMyArKy0KKyA1IGZpbGVzIGNoYW5nZWQsIDcgaW5zZXJ0aW9ucygrKSwgNiBkZWxldGlvbnMoLSkKKworY29tbWl0IGNjNDkxNjljZGM1OTZlMzNmMDM2ZTlkOTMwMGU5MTVhNzRlOGJhZjAKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gT2N0IDI0IDAyOjUzOjI3IDIwMTAgKzAyMDAKKworICAgIGRwa2ctdHJpZ2dlcjogUmVtb3ZlIGR1cGxpY2F0ZSBjb21tYW5kIG5hbWUgZnJvbSBlcnJvciBtZXNzYWdlcworCisgc3JjL3RyaWdjbWQuYyB8ICAgIDYgKysrLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA5ZGI0YTgyMmJiNjJiNzM5ZTcxYzBhNTljNWJhNDZhMjdkMTIxZTMyCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IE9jdCAyMyAwNTozNzozMyAyMDEwICswMjAwCisKKyAgICBsaWJkcGtnOiBOYW1lc3BhY2UgcGFja2FnZSBkYXRhYmFzZSBmdW5jdGlvbnMgd2l0aCBwa2dfZGJfIHByZWZpeAorCisgVE9ETyAgICAgICAgICAgICAgICAgICAgICB8ICAgIDEgLQorIGRzZWxlY3QvbWFpbi5jYyAgICAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wa2dsaXN0LmNjICAgICAgICB8ICAgIDkgKysrKystLS0tCisgbGliL2Rwa2cvZGF0YWJhc2UuYyAgICAgICB8ICAgMjQgKysrKysrKysrKysrKysrKysrLS0tLS0tCisgbGliL2Rwa2cvZHBrZy1kYi5oICAgICAgICB8ICAgMTMgKysrKysrKy0tLS0tLQorIGxpYi9kcGtnL2R1bXAuYyAgICAgICAgICAgfCAgICA2ICsrKy0tLQorIGxpYi9kcGtnL2ZpZWxkcy5jICAgICAgICAgfCAgIDEwICsrKystLS0tLS0KKyBsaWIvZHBrZy9saWJkcGtnLlZlcnNpb25zIHwgICAxMiArKysrKystLS0tLS0KKyBsaWIvZHBrZy9wYXJzZS5jICAgICAgICAgIHwgICAgNCArKy0tCisgbGliL2Rwa2cvcGtnLWFycmF5LmMgICAgICB8ICAgIDggKysrKy0tLS0KKyBsaWIvZHBrZy90cmlnbGliLmMgICAgICAgIHwgICAgOCArKysrLS0tLQorIHNyYy9kZXBjb24uYyAgICAgICAgICAgICAgfCAgICA2ICsrKy0tLQorIHNyYy9kaXZlcnRjbWQuYyAgICAgICAgICAgfCAgICA0ICsrLS0KKyBzcmMvZGl2ZXJ0ZGIuYyAgICAgICAgICAgIHwgICAgMiArLQorIHNyYy9lbnF1aXJ5LmMgICAgICAgICAgICAgfCAgIDMyICsrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tCisgc3JjL2ZpbGVzZGIuYyAgICAgICAgICAgICB8ICAgIDIgKy0KKyBzcmMvaGVscC5jICAgICAgICAgICAgICAgIHwgICAgNiArKystLS0KKyBzcmMvbWFpbi5jICAgICAgICAgICAgICAgIHwgICAgMiArLQorIHNyYy9wYWNrYWdlcy5jICAgICAgICAgICAgfCAgICA4ICsrKystLS0tCisgc3JjL3Byb2Nlc3NhcmMuYyAgICAgICAgICB8ICAgIDYgKysrLS0tCisgc3JjL3F1ZXJ5Y21kLmMgICAgICAgICAgICB8ICAgIDQgKystLQorIHNyYy9zZWxlY3QuYyAgICAgICAgICAgICAgfCAgICA4ICsrKystLS0tCisgc3JjL3RyaWdwcm9jLmMgICAgICAgICAgICB8ICAgMTQgKysrKysrKy0tLS0tLS0KKyAyMyBmaWxlcyBjaGFuZ2VkLCAxMDEgaW5zZXJ0aW9ucygrKSwgOTAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA2YWQzMTVhMWVlYjhmM2E1OTdkZWU5YTVkNjAyMDEzZGQyZDJiOWQyCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IE9jdCAyMyAwNToxOTo0MyAyMDEwICswMjAwCisKKyAgICBsaWJkcGtnOiBVc2UgcHVzaF9lcnJvcl9jb250ZXh0X2p1bXAoKSBpbnN0ZWFkIG9mIHB1c2hfZXJyb3JfaGFuZGxlcigpCisgICAgCisgICAgUmVtb3ZlIG9ic29sZXRlIGFuZCBub3cgdW51c2VkIHB1c2hfZXJyb3JfaGFuZGxlciBjb21wYXRpYmlsaXR5IG1hY3JvLgorCisgbGliL2Rwa2cvZWhhbmRsZS5oIHwgICAgMiAtLQorIHNyYy9hcmNoaXZlcy5jICAgICB8ICAgIDMgKystCisgc3JjL3BhY2thZ2VzLmMgICAgIHwgICAgMyArKy0KKyBzcmMvdHJpZ3Byb2MuYyAgICAgfCAgICAzICsrLQorIDQgZmlsZXMgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCA1IGRlbGV0aW9ucygtKQorCitjb21taXQgMmE5MmJiODExODZiNjA5OGVjMmE2Yjc3MjQyNjkwZDExNDAyZmFhZAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBPY3QgMjMgMDU6MTY6NDYgMjAxMCArMDIwMAorCisgICAgbGliZHBrZzogUmVuYW1lIGVycm9yX3Vud2luZCgpIHRvIHBvcF9lcnJvcl9jb250ZXh0KCkKKworIGxpYi9kcGtnL2Rwa2cuaCAgICAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvZWhhbmRsZS5jICAgICAgICB8ICAgMTMgKysrKysrKysrLS0tLQorIGxpYi9kcGtnL2VoYW5kbGUuaCAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvbGliZHBrZy5WZXJzaW9ucyB8ICAgIDIgKy0KKyBsaWIvZHBrZy90ZXN0LmggICAgICAgICAgIHwgICAgMyArLS0KKyBzcmMvYXJjaGl2ZXMuYyAgICAgICAgICAgIHwgICAgNCArKy0tCisgc3JjL21haW4uYyAgICAgICAgICAgICAgICB8ICAgIDIgKy0KKyBzcmMvcGFja2FnZXMuYyAgICAgICAgICAgIHwgICAgNSArKystLQorIHNyYy90cmlncHJvYy5jICAgICAgICAgICAgfCAgICA0ICsrLS0KKyA5IGZpbGVzIGNoYW5nZWQsIDIxIGluc2VydGlvbnMoKyksIDE2IGRlbGV0aW9ucygtKQorCitjb21taXQgMDUxNDIzZDIzYzlkNTU4MGFhZWNmMGE3YzQxYzg1NDU2NmQ0MGQ3NgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBPY3QgMTcgMDU6NTc6NDUgMjAxMCArMDIwMAorCisgICAgZHNlbGVjdDogVXNlIGEgZnVuY3Rpb24gaW5zdGVhZCBvZiBhIGp1bXAgZXJyb3IgaGFuZGxlcgorCisgZHNlbGVjdC9tYWluLmNjIHwgICAxNyArKysrKysrKysrLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMTAgaW5zZXJ0aW9ucygrKSwgNyBkZWxldGlvbnMoLSkKKworY29tbWl0IGI5NGQyNWQwOWY4YmY1NWE2OGUxNzM3OTU4MWZiMmJhNzFhZTI2YWEKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gT2N0IDE3IDA1OjUwOjAyIDIwMTAgKzAyMDAKKworICAgIFVzZSBwdXNoX2Vycm9yX2NvbnRleHQoKSBpbnN0ZWFkIG9mIGFkLWhvYyBjb2RlCisKKyBUT0RPICAgICAgICAgICAgICB8ICAgIDEgLQorIGRwa2ctZGViL21haW4uYyAgIHwgICAgMyArLS0KKyBkcGtnLXNwbGl0L21haW4uYyB8ICAgIDMgKy0tCisgbGliL2Rwa2cvZHBrZy5oICAgfCAgICA3ICsrLS0tLS0KKyBsaWIvZHBrZy90ZXN0LmggICB8ICAgIDggKy0tLS0tLS0KKyBzcmMvZGl2ZXJ0Y21kLmMgICB8ICAgIDMgKy0tCisgc3JjL21haW4uYyAgICAgICAgfCAgIDExICsrKy0tLS0tLS0tCisgc3JjL3F1ZXJ5Y21kLmMgICAgfCAgICAzICstLQorIHNyYy9zdGF0Y21kLmMgICAgIHwgICAgMyArLS0KKyBzcmMvdHJpZ2NtZC5jICAgICB8ICAgIDMgKy0tCisgMTAgZmlsZXMgY2hhbmdlZCwgMTIgaW5zZXJ0aW9ucygrKSwgMzMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA4NDFmNDIxNzNlNWQwYTk3YmJjOWYxODRkNzgxZDJiMmU2ZjlmOTc0CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIE9jdCAxNyAwNTo0NzozNCAyMDEwICswMjAwCisKKyAgICBsaWJkcGtnOiBBZGQgbmV3IHB1c2hfZXJyb3JfY29udGV4dCgpIGZ1bmN0aW9uCisgICAgCisgICAgVGhpcyBuZXcgZnVuY3Rpb24gcHVzaGVzIGEgZGVmYXVsdCBlcnJvciBjb250ZXh0LgorCisgbGliL2Rwa2cvZWhhbmRsZS5jICAgICAgICB8ICAgIDYgKysrKysrCisgbGliL2Rwa2cvZWhhbmRsZS5oICAgICAgICB8ICAgIDEgKworIGxpYi9kcGtnL2xpYmRwa2cuVmVyc2lvbnMgfCAgICAxICsKKyAzIGZpbGVzIGNoYW5nZWQsIDggaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IGRlNDI0MThkOWMwYTI1NWNlYzQ0NDBiNWY5OWU3NjQ2NTQ0NDAxNTkKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgT2N0IDE2IDIwOjU5OjA3IDIwMTAgKzAyMDAKKworICAgIGxpYmRwa2c6IFJlbW92ZSBzZXRfZXJyb3JfZGlzcGxheSgpCisgICAgCisgICAgSWYgdGhlIGNvZGUgbmVlZHMgdG8gc2V0IGEgZGlmZmVyZW50IGVycm9yIHByaW50ZXIgdGhlbiBpdCBzaG91bGQgcHVzaAorICAgIGEgbmV3IGVycm9yIGNvbnRleHQgaW5zdGVhZC4KKworIGxpYi9kcGtnL2VoYW5kbGUuYyAgICAgICAgfCAgIDEwIC0tLS0tLS0tLS0KKyBsaWIvZHBrZy9laGFuZGxlLmggICAgICAgIHwgICAgMSAtCisgbGliL2Rwa2cvbGliZHBrZy5WZXJzaW9ucyB8ICAgIDEgLQorIDMgZmlsZXMgY2hhbmdlZCwgMCBpbnNlcnRpb25zKCspLCAxMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDI5ZjRhYjQxYzk1YWJmOTYzOWI4MTkxOGQ5YjdhYTFjYThlZGJlODEKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgT2N0IDE2IDE5OjE2OjUwIDIwMTAgKzAyMDAKKworICAgIGxpYmRwa2c6IENyZWF0ZSBhIG5ldyBlcnJvciBjb250ZXh0IGluIHN1YnByb2NfZm9yaworICAgIAorICAgIEluc3RlYWQgb2YgY2hhbmdpbmcgdGhlIGN1cnJlbnQgZXJyb3IgZGlzcGxheSBoYW5kbGVyIGFuZCBwdXNoaW5nIGEKKyAgICBjbGVhbnVwIGhhbmRsZXIgdGhhdCBleGl0cyBpbW1lZGlhdGVseSB0byBhdm9pZCBjYWxsaW5nIHByZXZpb3VzbHkKKyAgICBzZXQgY2xlYW51cCBoYW5kbGVycywganVzdCBwdXNoIGEgbmV3IGVycm9yIGNvbnRleHQgd2hpY2ggd2lsbCB3b3JrCisgICAgYXMgYSBjbGVhbnVwIGJhcnJpZXIuIFRoaXMgYWxzbyBpcyBhIG1vcmUgbmF0dXJhbCB3YXkgb2YgdXNpbmcgdGhlCisgICAgY3VycmVudCBpbnRlcmZhY2UuCisKKyBsaWIvZHBrZy9zdWJwcm9jLmMgfCAgIDEzICsrKy0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMTAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyMjcyZDQxMTY5MjRjYWFkOTY4MTY4NzEwNDBhOGMxYWUxNmY4N2U5CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IE9jdCAxNiAxOToxMDo0MiAyMDEwICswMjAwCisKKyAgICBNb3ZlIGVycm9yIGNvbnRleHQgZGlzcGxheSBoYW5kbGVyIHJlc2V0IHRvIGVycm9yX3Vud2luZCgpCisgICAgCisgICAgTmV2ZXIgcHJpbnQgYW4gZXJyb3IgbWVzc2FnZSB3aGVuIGRvaW5nIG5vcm1hbCBjbGVhbnVwLCBhcyB0aGlzIGlzCisgICAgc29tZXRoaW5nIHdlIGFsd2F5cyB3YW50IHRvIGRvLgorCisgbGliL2Rwa2cvZHBrZy5oICAgIHwgICAgMSAtCisgbGliL2Rwa2cvZWhhbmRsZS5jIHwgICAgNCArKysrCisgbGliL2Rwa2cvdGVzdC5oICAgIHwgICAgMSAtCisgc3JjL2FyY2hpdmVzLmMgICAgIHwgICAgMiArLQorIHNyYy9tYWluLmMgICAgICAgICB8ICAgIDIgKy0KKyBzcmMvcGFja2FnZXMuYyAgICAgfCAgICAyICstCisgc3JjL3RyaWdwcm9jLmMgICAgIHwgICAgMSAtCisgNyBmaWxlcyBjaGFuZ2VkLCA3IGluc2VydGlvbnMoKyksIDYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBiZjE0NTUwODU4OTlhNTIwMzM3M2VmZjM0NzQxY2Q3ZWEzZDY0Nzc0CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IE9jdCAxNiAxOTowNDoxMyAyMDEwICswMjAwCisKKyAgICBsaWJkcGtnOiBBZGQgZXJyb3IgY29udGV4dCBmdW5jdGlvbiBoYW5kbGVyIHN1cHBvcnQKKyAgICAKKyAgICBUaGlzIGFsbG93cyB0aGUgY29kZSB0byB1c2UgYSBmdW5jdGlvbiBpbnN0ZWFkIG9mIGEganVtcCBidWZmZXIgdG8KKyAgICBoYW5kbGUgdGhlIGVycm9ycywgd2hpY2ggaGFwcGVuIHRvIGJlIHBvc3NpYmxlIGZvciB0aGUgZ2VuZXJhbCBjYXNlLAorICAgIHdoZW4gaXQgZG9lcyBub3QgbmVlZCB0byBjb250aW51ZSBwcm9jZXNzaW5nIGluIGFuIHVwcGVyIHN0YWNrIGZyYW1lLgorICAgIFRodXMgcmVkdWNpbmcgdGhlIHByZWNlaXZlZCBjb21wbGV4aXR5IG9mIHNpbXBsZSBjb2RlLCBhbmQgYXZvaWRzCisgICAgZXhwb3Npbmcgc2V0am1wIG1hY2hpbmVyeSB0byB0aGUgY2FzdWFsIHVzZXIuCisKKyBsaWIvZHBrZy9laGFuZGxlLmMgICAgICAgIHwgICA1MyArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLQorIGxpYi9kcGtnL2VoYW5kbGUuaCAgICAgICAgfCAgICA5ICsrKysrKy0KKyBsaWIvZHBrZy9saWJkcGtnLlZlcnNpb25zIHwgICAgMyArLQorIDMgZmlsZXMgY2hhbmdlZCwgNTYgaW5zZXJ0aW9ucygrKSwgOSBkZWxldGlvbnMoLSkKKworY29tbWl0IGUwNzc3NGYxYjUyODc1NGVjNTE2MWFmMjQ1ZDgwMTE1OGYwZDRkZDIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgTm92IDE2IDIyOjE0OjE4IDIwMTAgKzAxMDAKKworICAgIGRwa2ctcXVlcnk6IEZpeCAtLXNlYXJjaCBub3QgZm91bmQgc3RyaW5nIHRvIGJlIG1vcmUgbWVhbmluZ2Z1bAorCisgc3JjL3F1ZXJ5Y21kLmMgfCAgICAzICsrLQorIDEgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgZmQ4NGJhODk2OWJmMzA1ZDk3YzIyNWI0NDg1ODk2NWU1M2EwY2I2NgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBPY3QgMTYgMDc6MzU6MjcgMjAxMCArMDIwMAorCisgICAgVXNlIHRoaXNuYW1lIHZhcmlhYmxlIGluc3RlYWQgb2YgaGFyZC1jb2RlZCAnZHBrZycgc3RyaW5nCisgICAgCisgICAgVGhpcyBjb3JyZWN0cyB0aGUgY3VycmVudCBwcm9ncmFtIG5hbWUgcHJpbnRlZCBieSBvdGhlciB0b29scy4KKworIGxpYi9kcGtnL2VoYW5kbGUuYyB8ICAgIDMgKystCisgc3JjL2Vycm9ycy5jICAgICAgIHwgICAgOCArKysrKy0tLQorIHNyYy9xdWVyeWNtZC5jICAgICB8ICAgIDIgKy0KKyBzcmMvdHJpZ3Byb2MuYyAgICAgfCAgICAyICstCisgNCBmaWxlcyBjaGFuZ2VkLCA5IGluc2VydGlvbnMoKyksIDYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBkYzk4MjYxOTgwNzY3ZjI1ODA0NmY4YTRjMmUwMjBmY2RjOTJjOGI2CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIE9jdCAxMiAyMToxNjozMyAyMDEwICswMjAwCisKKyAgICBkcGtnLWRpdmVydDogVXNlIERQS0dfTUFJTlRTQ1JJUFRfUEFDS0FHRSBlbnZpcm9ubWVudCB2YXJpYWJsZQorICAgIAorICAgIFVzZSBpdCBhcyBwYWNrYWdlIG5hbWUgb24gd2hlbiBubyAtLXBhY2thZ2Ugb3IgLS1sb2NhbCBvcHRpb25zIGhhdmUKKyAgICBiZWVuIHNwZWNpZmllZC4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgIHwgICAgMiArKworIG1hbi9kcGtnLWRpdmVydC44IHwgICAgOCArKysrKysrLQorIHNyYy9kaXZlcnRjbWQuYyAgIHwgICAgNSArKysrKworIDMgZmlsZXMgY2hhbmdlZCwgMTQgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGVmZWZjMDlkOTE0ZWNlZGZkYWQwMmZkMDdkNGViNWYxYzIyNjg1NDIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gT2N0IDExIDIwOjMyOjUwIDIwMTAgKzAyMDAKKworICAgIFVzZSBzZXRhY3Rpb24oKSBpbnN0ZWFkIG9mIGRpcmVjdGx5IGFzc2lnbmluZyB0byBjaXBhY3Rpb24KKworIHNyYy9kaXZlcnRjbWQuYyB8ICAgIDIgKy0KKyBzcmMvbWFpbi5jICAgICAgfCAgICAyICstCisgMiBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA1MjFmMzI0NTBkOTFmYWJhYTgxNzI1YjFhZDg5ZjlmYWZiOGM4MmUzCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IE9jdCAxNiAwNjowMzoxMiAyMDEwICswMjAwCisKKyAgICBsaWJkcGtnOiBVc2Ugb2hzaGl0ZSBpbiBlcnJvcl9jb250ZXh0X25ldyBpbnN0ZWFkIG9mIGFkLWhvYyBjb2RlCisKKyBsaWIvZHBrZy9laGFuZGxlLmMgfCAgIDExICsrLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDkgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA0Mzc4OWU1OWYwOGRhZTc5YjA3ZmViMDA0YzBmYTFiNWQzNTdiNDdkCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IE9jdCAxNiAwNTo1NTozMyAyMDEwICswMjAwCisKKyAgICBsaWJkcGtnOiBNYWtlIHJ1bl9lcnJvcl9oYW5kbGVyIGNvcGUgd2l0aCBOVUxMIGVjb250ZXh0IGdyYWNlZnVsbHkKKyAgICAKKyAgICBUaGlzIGNvdWxkIGhhcHBlbiBpZiB0aGUgY29udGV4dCBoYXMgbm90IGJlZW4gaW5pdGlhbGl6ZWQsIG9yIGlmIGl0IGhhcworICAgIGJlZW4gdW53aW5kZWQgbW9yZSB0aGFuIG5lY2Vzc2FyeS4KKworIGxpYi9kcGtnL2VoYW5kbGUuYyB8ICAgIDYgKysrKysrCisgMSBmaWxlcyBjaGFuZ2VkLCA2IGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBiNTcxMzczY2QyZTYyNzgyYzNiYjJiOGUwYmVmNTg1YzQyMTViOTY3CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IE9jdCAxNiAyMDo0NzoyMCAyMDEwICswMjAwCisKKyAgICBsaWJkcGtnOiBSZWZhY3RvciBlcnJvciBkaXNwbGF5IHNldHRlciBpbnRvIGEgc3RhdGljIGZ1bmN0aW9uCisgICAgCisgICAgQ3JlYXRlIGEgbmV3IGZ1bmN0aW9uIHRoYXQgdGFrZXMgYW4gZXJyb3IgY29udGV4dCBhcmd1bWVudCBhbmQgc2V0cworICAgIHRoZSBlcnJvciBwcmludGVyIGZ1bmN0aW9uLiBUaGlzIGFsbG93cyB1c2luZyB0aGUgbmV3IHNldHRlciBmb3IKKyAgICBvdGhlciBlcnJvcl9jb250ZXh0IHRoYW4gZWNvbnRleHQuCisKKyBsaWIvZHBrZy9laGFuZGxlLmMgfCAgIDIxICsrKysrKysrKysrKysrKy0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMTUgaW5zZXJ0aW9ucygrKSwgNiBkZWxldGlvbnMoLSkKKworY29tbWl0IDVkZDA1ODAzYjUxZGMyYTBhYWU5YjhhZDUyY2Q1OGZmZjVlNTJjODgKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gT2N0IDExIDIwOjI3OjUzIDIwMTAgKzAyMDAKKworICAgIGxpYmRwa2c6IFJlZmFjdG9yIGVycm9yX2NvbnRleHQgY3JlYXRpb24gaW50byBhIG5ldyBmdW5jdGlvbgorCisgbGliL2Rwa2cvZWhhbmRsZS5jIHwgICAyNCArKysrKysrKysrKysrKysrKy0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDE3IGluc2VydGlvbnMoKyksIDcgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBhZGY1ZDRhMWEyM2ZjNjMxNTI1YzdhMzFiZWMxMTc3M2Q1N2M5NWVmCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IE9jdCAxNiAwNjo1NDo1MiAyMDEwICswMjAwCisKKyAgICBsaWJkcGtnOiBSZW5hbWUgc3RydWN0IGVycm9yY29udGV4dCB0byBlcnJvcl9jb250ZXh0CisKKyBsaWIvZHBrZy9laGFuZGxlLmMgfCAgIDE5ICsrKysrKysrKysrLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDExIGluc2VydGlvbnMoKyksIDggZGVsZXRpb25zKC0pCisKK2NvbW1pdCAxNjBiZTgxODAxMzAzOTkzMWNjMDY0NDNjNTIzZmM1N2E3Nzc5OTM3CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IE9jdCAxNiAwNjo1MjowMiAyMDEwICswMjAwCisKKyAgICBsaWJkcGtnOiBSZW5hbWUgc3RydWN0IGNsZWFudXBlbnRyeSB0byBjbGVhbnVwX2VudHJ5CisKKyBsaWIvZHBrZy9laGFuZGxlLmMgfCAgIDI1ICsrKysrKysrKysrKysrLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDE0IGluc2VydGlvbnMoKyksIDExIGRlbGV0aW9ucygtKQorCitjb21taXQgN2FlNWFmNTM4ZTBkN2I3MmYxYjE4MTkyMmExNDAxYmMxNmRjNDRiZQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBPY3QgMTEgMTk6Mjg6MzQgMjAxMCArMDIwMAorCisgICAgbGliZHBrZzogUmVuYW1lIGptcF9idWYgdmFyaWFibGVzIHRvIGp1bXAKKworIGxpYi9kcGtnL2VoYW5kbGUuYyB8ICAgMTkgKysrKysrKysrKy0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMTAgaW5zZXJ0aW9ucygrKSwgOSBkZWxldGlvbnMoLSkKKworY29tbWl0IDgxNjRhZjc3ZWU3MWUyOWZkZDVkOTAxNTdlMmQwYzNlNTI4NDE1OTUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgTm92IDIgMjE6MTI6MDggMjAxMCArMDEwMAorCisgICAgbGliZHBrZzogUmVuYW1lIHByaW50X2Vycm9yX2ZvcmtlZCgpIHRvIHByaW50X3N1YnByb2NfZXJyb3IoKQorCisgbGliL2Rwa2cvc3VicHJvYy5jIHwgICAgNCArKy0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBlMWIyYTczZTc3MjMxMjZlMGNmMjEwOWM5ZTQ0YTc5M2UzOWFjMjQzCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIE5vdiAyIDIwOjQwOjEzIDIwMTAgKzAxMDAKKworICAgIGxpYmRwa2c6IFJlbmFtZSBwcmludF9lcnJvcl9jbGVhbnVwKCkgdG8gcHJpbnRfY2xlYW51cF9lcnJvcigpCisKKyBsaWIvZHBrZy9laGFuZGxlLmMgfCAgICA2ICsrKystLQorIDEgZmlsZXMgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgZWM1M2ZkOThmM2QxMDI3NGUyZGE1NzIyYzYzZmQ3ZjY1ODhiM2VhZgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBOb3YgMiAyMDozOTowOCAyMDEwICswMTAwCisKKyAgICBsaWJkcGtnOiBSZW5hbWUgcHJpbnRfZXJyb3JfZmF0YWwoKSB0byBwcmludF9mYXRhbF9lcnJvcigpCisKKyBkc2VsZWN0L21haW4uY2MgICAgICAgICAgIHwgICAgMiArLQorIGxpYi9kcGtnL2Rwa2cuaCAgICAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvZWhhbmRsZS5jICAgICAgICB8ICAgIDQgKysrLQorIGxpYi9kcGtnL2VoYW5kbGUuaCAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvbGliZHBrZy5WZXJzaW9ucyB8ICAgIDIgKy0KKyBsaWIvZHBrZy90ZXN0LmggICAgICAgICAgIHwgICAgMiArLQorIHNyYy9tYWluLmMgICAgICAgICAgICAgICAgfCAgICAyICstCisgNyBmaWxlcyBjaGFuZ2VkLCA5IGluc2VydGlvbnMoKyksIDcgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBjMWY4OTljODMyZjVjNjc2YThmM2IzNjM2NjYwNWRhMTU5OTc2MGY2CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIE9jdCAxMCAxMjowNDoyMCAyMDEwICswMjAwCisKKyAgICBsaWJkcGtnOiBSZWZhY3RvciBkZWZhdWx0IGVycm9yIGhhbmRsZXIgaW50byBuZXcgY2F0Y2hfZmF0YWxfZXJyb3IoKQorCisgZHNlbGVjdC9tYWluLmNjICAgICAgICAgICB8ICAgIDIgKy0KKyBsaWIvZHBrZy9kcGtnLmggICAgICAgICAgIHwgICAgMiArLQorIGxpYi9kcGtnL2VoYW5kbGUuYyAgICAgICAgfCAgIDEzICsrKysrKysrKysrKysKKyBsaWIvZHBrZy9laGFuZGxlLmggICAgICAgIHwgICAgMSArCisgbGliL2Rwa2cvbGliZHBrZy5WZXJzaW9ucyB8ICAgIDEgKworIGxpYi9kcGtnL3Rlc3QuaCAgICAgICAgICAgfCAgICAzICstLQorIHNyYy9tYWluLmMgICAgICAgICAgICAgICAgfCAgICAyICstCisgNyBmaWxlcyBjaGFuZ2VkLCAxOSBpbnNlcnRpb25zKCspLCA1IGRlbGV0aW9ucygtKQorCitjb21taXQgOTBlZjA1OWY3MTU1YmZjN2ZiNDU1MDVjMjEwMzBlMmNjOTc5MWNlMworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBPY3QgOCAxMTo0ODozNiAyMDEwICswMjAwCisKKyAgICBBZGQgYSBjb21tZW50IGZvciB0cmFuc2xhdG9ycyB0byAnZHBrZy1xdWVyeSAtbCcgaGVhZGVyIHN0cmluZworICAgIAorICAgIFJlcG9ydGVkLWJ5OiBBc2sgSGpvcnRoIExhcnNlbiA8YXNrbGFyc2VuQGdtYWlsLmNvbT4KKworIHNyYy9xdWVyeWNtZC5jIHwgICAgNiArKysrKysKKyAxIGZpbGVzIGNoYW5nZWQsIDYgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDlkNmE5ZTQzNzU2ZDIyNTY0NzM5MzU0MjlkOWMyZjAwYWQyMGZiMGUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgT2N0IDcgMTA6MTY6MTYgMjAxMCArMDIwMAorCisgICAgRG8gbm90IG1ha2UgZnVuY3Rpb24gdHlwZWRlZnMgcG9pbnRlcnMKKworIGxpYi9kcGtnL215b3B0LmggfCAgICA2ICsrKy0tLQorIGxpYi9kcGtnL3RhcmZuLmggfCAgIDE2ICsrKysrKysrLS0tLS0tLS0KKyBzcmMvbWFpbi5jICAgICAgIHwgICAgMiArLQorIDMgZmlsZXMgY2hhbmdlZCwgMTIgaW5zZXJ0aW9ucygrKSwgMTIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA3MTI5ZDk0NzM5OTNkYTVlMjdhNmQ0ZWI3M2E2ZTkwMDk2MGQzMzdmCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IE9jdCA3IDEwOjEzOjEzIDIwMTAgKzAyMDAKKworICAgIGxpYmRwa2c6IFJlbmFtZSB2b2lkZm5wIHRvIHZvaWRfZnVuYworCisgbGliL2Rwa2cvbXlvcHQuaCB8ICAgIDYgKysrLS0tCisgc3JjL21haW4uYyAgICAgICB8ICAgIDIgKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKKworY29tbWl0IGNhOTJjNWQyYmY0NTk4NGMxMWNmMmI1ZjM1NWI1Y2FkNDhiZjcyNTkKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgT2N0IDcgMDk6NTg6MTggMjAxMCArMDIwMAorCisgICAgbGliZHBrZzogUmVuYW1lIGZ1bmN0aW9uIGFyZ3VtZW50IHRvIGZ1bmMgaW4gQUNUSU9OIG1hY3JvCisKKyBsaWIvZHBrZy9teW9wdC5oIHwgICAgNCArKy0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBjOWI3YWY5MmU1ZGUwY2M5ZWE0MGZhZDUzYzBlNWFhNWM5MzY5MGNkCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IE9jdCA3IDA5OjQ5OjI2IDIwMTAgKzAyMDAKKworICAgIE1vdmUgYWN0aW9uIGFuZCBvYnNvbGV0ZSByZWxhdGVkIGZ1bmN0aW9uYWxpdHkgdG8gdGhlIG15b3B0IG1vZHVsZQorICAgIAorICAgIFJlZHVjZSByZXBlYXRlZCBjb2RlLCBhbmQgbG9jYWxpemUgaXQgd2hlcmUgaXQgYmVsb25ncy4KKworIFRPRE8gICAgICAgICAgICAgICAgICAgICAgfCAgICAxIC0KKyBkcGtnLWRlYi9kcGtnLWRlYi5oICAgICAgIHwgICAgMSAtCisgZHBrZy1kZWIvbWFpbi5jICAgICAgICAgICB8ICAgMTIgLS0tLS0tLS0tLS0tCisgZHBrZy1zcGxpdC9kcGtnLXNwbGl0LmggICB8ICAgIDEgLQorIGRwa2ctc3BsaXQvbWFpbi5jICAgICAgICAgfCAgIDEzIC0tLS0tLS0tLS0tLS0KKyBsaWIvZHBrZy9saWJkcGtnLlZlcnNpb25zIHwgICAgMyArKysKKyBsaWIvZHBrZy9teW9wdC5jICAgICAgICAgIHwgICAyNSArKysrKysrKysrKysrKysrKysrKysrKysrCisgbGliL2Rwa2cvbXlvcHQuaCAgICAgICAgICB8ICAgMTMgKysrKysrKysrKysrKworIHNyYy9kaXZlcnRjbWQuYyAgICAgICAgICAgfCAgIDIwIC0tLS0tLS0tLS0tLS0tLS0tLS0tCisgc3JjL21haW4uYyAgICAgICAgICAgICAgICB8ICAgMTYgLS0tLS0tLS0tLS0tLS0tLQorIHNyYy9tYWluLmggICAgICAgICAgICAgICAgfCAgICAxIC0KKyBzcmMvcXVlcnljbWQuYyAgICAgICAgICAgIHwgICAxNCAtLS0tLS0tLS0tLS0tLQorIHNyYy9zdGF0Y21kLmMgICAgICAgICAgICAgfCAgIDE0IC0tLS0tLS0tLS0tLS0tCisgMTMgZmlsZXMgY2hhbmdlZCwgNDEgaW5zZXJ0aW9ucygrKSwgOTMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBhNjcxMDdjMDUxNTNkYjNmZGU1MTMwMTQ1MDQzOTc2MWUxOTE2YTgwCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIE9jdCA2IDIwOjEwOjQ3IDIwMTAgKzAyMDAKKworICAgIFVzZSBBQ1RJT04gbWFjcm9zIGluc3RlYWQgb2YgYWQtaG9jIGFjdGlvbiBmdW5jdGlvbiBoYW5kbGluZworICAgIAorICAgIFRoaXMgbWFrZXMgdGhlIGNvZGUgdW5pZm9ybSB3aXRoIHRoZSByZXN0IG9mIHRoZSBjb2RlIGJhc2UsIHJlbW92ZXMKKyAgICB0aGUgcG9zc2liaWxpdHkgb2YgbWlzbWF0Y2hlZCBlbnRyaWVzIGZyb20gY21kaW5mb3MgYW5kIGRvZnVuY3Rpb25zCisgICAgYXJyYXlzLCBhbmQgcmVkdWNlcyB0aGUgc2NvcGUgb2YgdGhlIGFjdGlvbiBwb2ludGVyIHRvIG1haW4oKS4KKworIGRwa2ctZGViL2Rwa2ctZGViLmggICAgIHwgICAgMSAtCisgZHBrZy1kZWIvbWFpbi5jICAgICAgICAgfCAgIDQwICsrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBkcGtnLXNwbGl0L2Rwa2ctc3BsaXQuaCB8ICAgIDEgLQorIGRwa2ctc3BsaXQvbWFpbi5jICAgICAgIHwgICAzMSArKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tCisgNCBmaWxlcyBjaGFuZ2VkLCAyNSBpbnNlcnRpb25zKCspLCA0OCBkZWxldGlvbnMoLSkKKworY29tbWl0IGU4MDc5YzBlZTM0ZDRiMzMwOWZmYmJkNTAwYjE2NTI1ZTllYzFiMjIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgTm92IDIgMDg6MTY6NTYgMjAxMCArMDEwMAorCisgICAgbGliZHBrZzogU3dpdGNoIHRlc3QuaCBmcm9tIGluY2x1ZGluZyBkcGtnL2Rwa2cuaCB0byBkcGtnL2VoYW5kbGUuaAorICAgIAorICAgIFRoaXMgcmVkdWNlcyB0aGUgZXhwb3NlZCBkZWNsYXJhdGlvbnMgZm9yIGVhY2ggdGVzdCBwcm9ncmFtLgorCisgbGliL2Rwa2cvdGVzdC5oIHwgICAgMiArLQorIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgNmU1ZDVjMWYwNWVkYmUwY2UyMjEzYTY2NThiNDM4NjY4ZmU0OGNiYQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBPY3QgNiAxMTo1MzozNiAyMDEwICswMjAwCisKKyAgICBsaWJkcGtnOiBNb3ZlIGVoYW5kbGUgZGVjbGFyYXRpb25zIHRvIGl0cyBvd24gaGVhZGVyIGZpbGUKKworIGxpYi9kcGtnL2Rwa2cuaCAgICB8ICAgMzMgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBsaWIvZHBrZy9laGFuZGxlLmMgfCAgICAyICstCisgbGliL2Rwa2cvZWhhbmRsZS5oIHwgICA3MyArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCisgMyBmaWxlcyBjaGFuZ2VkLCA3NSBpbnNlcnRpb25zKCspLCAzMyBkZWxldGlvbnMoLSkKKworY29tbWl0IDdjMDNjMTAxMmFhZjljY2U3OThiNjUwYWMwMWFjMWU1NjFjMGMyZjkKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgTm92IDIgMDg6MTU6MDAgMjAxMCArMDEwMAorCisgICAgbGliZHBrZzogSW5jbHVkZSBkcGtnL2Rwa2cuaCBpbiB0LWJ1ZmZlciBmb3IgTUQ1SEFTSExFTgorCisgbGliL2Rwa2cvdGVzdC90LWJ1ZmZlci5jIHwgICAgMyArKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDRhZmVmMjAzZDVhZTJlYjU0ZDZjOGY0YmQ1ZmYwMTZhOThiZjdmZmMKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgT2N0IDYgMTE6MzY6MDQgMjAxMCArMDIwMAorCisgICAgbGliZHBrZzogRG8gbm90IHVzZSBtX21hbGxvYyBpbiBwdXNoX2NoZWNrcG9pbnQKKyAgICAKKyAgICBUaGlzIGF2b2lkcyBhIGN5Y2xpYyBkZXBlbmRlbmN5IGJldHdlZW4gZWhhbmRsZS5jIGFuZCBtX2xpYi5jLgorCisgbGliL2Rwa2cvZWhhbmRsZS5jIHwgICAgNyArKysrKystCisgMSBmaWxlcyBjaGFuZ2VkLCA2IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAzY2U4Njg3YmE2YTczOGFjOWI3MTk1MDYwOTQ4NTEyZmE3NTYwYWRhCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIE9jdCA2IDExOjMwOjE0IDIwMTAgKzAyMDAKKworICAgIGxpYmRwa2c6IFByb3Blcmx5IHJlc3RvcmUgZXJybm8gaW4gcHVzaF9jbGVhbnVwCisgICAgCisgICAgVGhlIGNvZGUgd2FzIHNhdmluZyBlcnJubyBmb3IgbGF0dGVyIHVzZSwgYnV0IHN0b21waW5nIG9uIHRoZSBzYXZlZAorICAgIHZhbHVlIGJ5IGFzc2lnbmluZyBhZ2FpbiBlcnJubyB0byBpdC4gSW52ZXJ0IHRoZSBhc3NpZ25tZW50IHNvIHRoYXQKKyAgICB3ZSByZXN0b3JlIGVycm5vIGluc3RlYWQgb2YgbG9zaW5nIGl0LgorCisgbGliL2Rwa2cvZWhhbmRsZS5jIHwgICAgNyArKysrKy0tCisgMSBmaWxlcyBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA0NTQ2YzNiOTJkNGQ3ZDU3ZWU5Zjc1ODBkODcyNzBiNzkxNDQxZjk3CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IE5vdiA0IDAwOjUzOjM1IDIwMTAgKzAxMDAKKworICAgIGxpYmRwa2c6IFJlbW92ZSBzdHJlYW0gSS9PIHN1cHBvcnQgZnJvbSB0aGUgYnVmZmVyIEFQSQorCisgbGliL2Rwa2cvYnVmZmVyLmMgfCAgIDE1IC0tLS0tLS0tLS0tLS0tLQorIGxpYi9kcGtnL2J1ZmZlci5oIHwgICAxMyAtLS0tLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAwIGluc2VydGlvbnMoKyksIDI4IGRlbGV0aW9ucygtKQorCitjb21taXQgMmE3MWU0NDRlODYzYTRiZjI4YjdkZDM5ZTYyMWM0NGFiNzcxZGI5OQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBTZXAgMTEgMDY6MjE6MzYgMjAxMCArMDIwMAorCisgICAgZHBrZy1kZWI6IFJlbW92ZSB1bnVzZWQgc2FmZV9mZmx1c2ggZnVuY3Rpb24KKyAgICAKKyAgICBUaGlzIGZ1bmN0aW9uIHdhcyB1c2VkIHRvIGZpeCBhIHByb2JsZW0gd2l0aCB1bmRlZmluZWQgYmVoYXZpb3VyIG9uCisgICAgaW5wdXQgc3RyZWFtcywgd2hpY2ggZG9lcyBub3QgYXBwbHkgYW55bW9yZSBhcyBpdCdzIG5vdCB1c2VkLgorCisgZHBrZy1kZWIvZXh0cmFjdC5jIHwgICAxOCAtLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDAgaW5zZXJ0aW9ucygrKSwgMTggZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyZDQyMGVlMWQwNTAzM2QyMzc0NjJhMDA3NWZhY2ZlNDA2YjA4MDQzCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IE5vdiA0IDAwOjUxOjEzIDIwMTAgKzAxMDAKKworICAgIGRwa2ctZGViOiBVc2UgZmQgaW5zdGVhZCBvZiBzdHJlYW0gYmFzZWQgYnVmZmVyZWQgSS9PCisgICAgCisgICAgQmVoYXZpb3VyIG9mIGZmbHVzaCgpIG9uIGlucHV0IHN0cmVhbXMgaXMgdW5kZWZpbmVkIHBlciBQT1NJWCwgYXZvaWQKKyAgICBtaXhpbmcgc3RyZWFtIGFuZCBmaWxlIGRlc2NyaXB0b3IgYmFzZWQgSS9PLCBhbmQgb25seSB1c2UgdGhlIGxhdHRlcgorICAgIGluc3RlYWQuCisKKyBkcGtnLWRlYi9leHRyYWN0LmMgfCAgIDg3ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDYyIGluc2VydGlvbnMoKyksIDI1IGRlbGV0aW9ucygtKQorCitjb21taXQgY2ViMDdiMDhkYWQ0ZDVlZWFkNjMwMDY0ZjQ1YzdlN2RlZDAwYTM0MQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBTZXAgMTYgMTk6NTI6NDEgMjAxMCArMDIwMAorCisgICAgUmVmYWN0b3IgZmlsZV9zdGF0IGNvZGUKKyAgICAKKyAgICBDcmVhdGUgYSBuZXcgZmlsZV9zdGF0IHN0cnVjdCwgYW5kIHVzZSBpdCBpbnN0ZWFkIG9mIHRoZQorICAgIGZpbGVzdGF0b3ZlcnJpZGUgb25lLgorCisgbGliL2Rwa2cvZmlsZS5oICB8ICAgMTEgKysrKysrKystCisgbGliL2Rwa2cvdGFyZm4uYyB8ICAgMTQgKysrKysrLS0tLS0tCisgbGliL2Rwa2cvdGFyZm4uaCB8ICAgIDkgKysrKy0tLQorIHNyYy9hcmNoaXZlcy5jICAgfCAgIDYzICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgc3JjL2ZpbGVzZGIuaCAgICB8ICAgMjQgKysrKysrKysrLS0tLS0tLS0tLS0KKyBzcmMvc3RhdGNtZC5jICAgIHwgICAxNCArKysrKystLS0tLS0KKyBzcmMvc3RhdGRiLmMgICAgIHwgICAgNSArKy0KKyA3IGZpbGVzIGNoYW5nZWQsIDcyIGluc2VydGlvbnMoKyksIDY4IGRlbGV0aW9ucygtKQorCitjb21taXQgMGNiNmYxMzFkODVmNDhmMGRjOGE5MGNhMTMyOWFmODRjNmY2ZWJjMQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBTZXAgMTIgMDc6MjI6MjEgMjAxMCArMDIwMAorCisgICAgbGliZHBrZzogUmVmYWN0b3IgZmlsZSBsb2NraW5nIGVycm9yIG1lc3NhZ2UgaGFuZGxpbmcKKyAgICAKKyAgICBQYXNzIG9ubHkgdGhlIGRlc2NyaXB0aW9uIG9mIHRoZSByZXNvdXJjZSBiZWluZyBsb2NrZWQsIGFuZCBtb3ZlIGdlbmVyaWMKKyAgICBlcnJvciBzdHJpbmdzIGluc2lkZSB0aGUgZmlsZSBsb2NrIGZ1bnRpb25zLiBJbnN0ZWFkIG9mIGNoYW5naW5nIGxvY2tpbmcKKyAgICBiZWhhdmlvdXIgZGVwZW5kaW5nIG9uIHRoZSBlcnJvciBzdHJpbmdzIHBhc3NlZCwgcGFzcyBhbiBleHBsaWNpdCBlbnVtIHRvCisgICAgc2VsZWN0IGl0LgorCisgbGliL2Rwa2cvZGJtb2RpZnkuYyAgICAgfCAgICA0ICstLS0KKyBsaWIvZHBrZy9maWxlLmMgICAgICAgICB8ICAgMjQgKysrKysrKysrKysrKysrKy0tLS0tLS0tCisgbGliL2Rwa2cvZmlsZS5oICAgICAgICAgfCAgICA5ICsrKysrKystLQorIGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sIHwgICAgMyArLS0KKyA0IGZpbGVzIGNoYW5nZWQsIDI1IGluc2VydGlvbnMoKyksIDE1IGRlbGV0aW9ucygtKQorCitjb21taXQgNGZmMzlkYWJhZDJjZDhlMzg0ZjI2ZjMyMTJhNTViNWFkYmViNzFkOQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBTZXAgMTEgMDY6MjA6MzcgMjAxMCArMDIwMAorCisgICAgVXBkYXRlIFRPRE8gbGlzdAorCisgVE9ETyB8ICAgMjMgKysrKysrKysrKysrKysrKysrKystLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDIwIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA5ZDgzNGIzZjY1NGY3NzFhYjVhZTg3OTBjZmM4MzA4NjI4OGZjYTA3CitBdXRob3I6IENocmlzdGlhbiBQRVJSSUVSIDxidWJ1bGxlQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBOb3YgOSAxOTo1OTozNSAyMDEwICswMTAwCisKKyAgICBGaXggdHJhbnNsYXRpb24gb2YgImhvd2V2ZXIiIGluIEl0YWxpYW4uIFRoYW5rcyB0byBQaWV0cm8gQmF0dGlzdG9uIENsb3NlczogIzYwMjUxOAorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDIgKysKKyBwby9pdC5wbyAgICAgICAgIHwgICAgMiArLQorIDIgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgNmE3ZTc2YTI5MmQ4NjVlM2FiZWZmNGZkZDA4Njc4MGRkYTNmNDlkOAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBTZXAgMTEgMDY6MTk6MTcgMjAxMCArMDIwMAorCisgICAgbGliZHBrZzogUmVtb3ZlIHVudXNlZCBzdHJlYW1fbWQ1IG1hY3JvCisKKyBsaWIvZHBrZy9idWZmZXIuaCB8ICAgIDMgLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAwIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA2ZGM2OWM2MzMwN2YyOGViNDlhMTMwYjg2MzVkYmM2MzUzZWI0ZjRlCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIE5vdiAyIDA3OjQ0OjA1IDIwMTAgKzAxMDAKKworICAgIGRwa2ctZGViOiBDb2FsZXNjZSBzaW1pbGFyIHN0cmluZ3MKKyAgICAKKyAgICBUaG9zZSBpbmNsdWRlIHRoZSBvbmVzIGludm9sdmluZyBjb250cm9sIGFuZCBkYXRhIG1lbWJlcnMsIGNoYW5nZSBvZgorICAgIGRpcmVjdG9yeSBhbmQgdGVtcG9yYXJ5IGRpcmVjdG9yeSBjcmVhdGlvbi4KKworIGRwa2ctZGViL2J1aWxkLmMgfCAgIDM5ICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLQorIGRwa2ctZGViL2luZm8uYyAgfCAgICA0ICsrLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDI2IGluc2VydGlvbnMoKyksIDE3IGRlbGV0aW9ucygtKQorCitjb21taXQgZTU0N2NiZjZhYWEyZTM0MzU5ZDVhMDQyMjk4YmYzYjBkYjczYTJmYworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBGZWIgMjIgMjM6MDA6MTkgMjAxMCArMDEwMAorCisgICAgVW5pZnkgZXhlY3V0aW9uIGVycm9yIHN0cmluZ3MKKworIGRwa2ctZGViL2J1aWxkLmMgICAgICAgICAgICAgICB8ICAgIDYgKysrLS0tCisgZHBrZy1kZWIvZXh0cmFjdC5jICAgICAgICAgICAgIHwgICAgNyArKysrLS0tCisgZHBrZy1kZWIvaW5mby5jICAgICAgICAgICAgICAgIHwgICAgNCArKy0tCisgZHBrZy1zcGxpdC9zcGxpdC5jICAgICAgICAgICAgIHwgICAgNyArKysrLS0tCisgc2NyaXB0cy9EcGtnL0lQQy5wbSAgICAgICAgICAgIHwgICAgMiArLQorIHNjcmlwdHMvRHBrZy9TaGxpYnMvQ3BwZmlsdC5wbSB8ICAgIDMgKystCisgc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGwgICAgIHwgICAgMiArLQorIHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGwgICAgICB8ICAgIDIgKy0KKyBzcmMvY29uZmlndXJlLmMgICAgICAgICAgICAgICAgfCAgIDEwICsrKysrKy0tLS0KKyBzcmMvaGVscC5jICAgICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgc3JjL3Byb2Nlc3NhcmMuYyAgICAgICAgICAgICAgIHwgICAxMiArKysrKysrKy0tLS0KKyAxMSBmaWxlcyBjaGFuZ2VkLCAzMyBpbnNlcnRpb25zKCspLCAyNCBkZWxldGlvbnMoLSkKKworY29tbWl0IGVjNWFkMWZiNmVhZDBlNGE0ODMzY2M0YjU0ZWZhZDkyNTM4ZDQ3NTcKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgU2VwIDExIDA2OjEyOjQ5IDIwMTAgKzAyMDAKKworICAgIENsYXJpZnkgc2V2ZXJhbCBhcmNoaXZlIG1lbWJlciBzdHJpbmdzCisgICAgCisgICAgVGhpcyB3aWxsIG1ha2UgdHJhbnNsYXRvcnMgYW5kIHVzZXJzIGxpZmUgZWFzaWVyLCBhcyB0aGUgbmV3IHN0cmluZ3MKKyAgICBhcmUgbGVzcyBhbWJpZ3VvdXMsIGFuZCB0cnkgdG8gYXZvaWQgc2Vjb25kIG1lYW5pbmdzLgorCisgZHBrZy1kZWIvZXh0cmFjdC5jIHwgICAyNyArKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0KKyBkcGtnLXNwbGl0L2luZm8uYyAgfCAgIDI1ICsrKysrKysrKysrKystLS0tLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDI5IGluc2VydGlvbnMoKyksIDIzIGRlbGV0aW9ucygtKQorCitjb21taXQgMWRkZGM2ZDQ2ZGJmNmYzNjExY2YwOTc5ZTI3NTQ3ZDA2Zjk1NDljMworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBTZXAgOCAwMzo1NzoxMCAyMDEwICswMjAwCisKKyAgICBkcGtnOiBSZW5hbWUgdW5saW5rb3JybWRpcigpIHRvIHNlY3VyZV9yZW1vdmUoKQorICAgIAorICAgIE1hcHMgYmV0dGVyIHRvIHRoZSBzeXN0ZW0gcmVtb3ZlKDIpIGZ1bmN0aW9uIG5hbWUuCisKKyBzcmMvYXJjaGl2ZXMuYyB8ICAgMTEgKysrKysrKy0tLS0KKyBzcmMvYXJjaGl2ZXMuaCB8ICAgIDMgKystCisgc3JjL2NsZWFudXAuYyAgfCAgICA2ICsrKy0tLQorIDMgZmlsZXMgY2hhbmdlZCwgMTIgaW5zZXJ0aW9ucygrKSwgOCBkZWxldGlvbnMoLSkKKworY29tbWl0IGZiODJjYWVlNDBhM2I3MWQ1YTM3NzM1NTYxMzk4YTA4NmNjNDdmZGYKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gT2N0IDMxIDExOjA5OjM3IDIwMTAgKzAxMDAKKworICAgIGRwa2ctc291cmNlOiBmYWlsIHByb3Blcmx5IHdoZW4gZGViaWFuL3NvdXJjZS9mb3JtYXQgaXMgZW1wdHkKKyAgICAKKyAgICBSZXBvcnRlZC1ieTogRWR1YXJkIEJsb2NoIDxibGFkZUBkZWJpYW4ub3JnPgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICB8ICAgIDMgKysrCisgc2NyaXB0cy9kcGtnLXNvdXJjZS5wbCB8ICAgIDQgKysrLQorIDIgZmlsZXMgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgNGM5MGM2MzFiZGIxNzY0NTIxNTJlY2RlNTkwMzgwMmNhZDY5OTMxNworQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBPY3QgMzEgMTA6MzU6NTUgMjAxMCArMDEwMAorCisgICAgRHBrZzo6Q29tcHJlc3Npb246IGZpeCB0eXBvIGluIGRvY3VtZW50YXRpb24uCisKKyBzY3JpcHRzL0Rwa2cvQ29tcHJlc3Npb24ucG0gfCAgICAyICstCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBlMTJmYTJmZmM2YzJkZjc0NDZjNzk1N2E3ODc1YzEzZjc5ZmYwZGZhCitBdXRob3I6IENocmlzdGlhbiBQRVJSSUVSIDxidWJ1bGxlQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBPY3QgMzAgMjM6MTQ6MjcgMjAxMCArMDIwMAorCisgICAgU29tZSBmaXhlcyB0byBkcGtnLWdlbnN5bWJvbHMgbWFucGFnZSwgaGVscGVkIGJ5IFJhcGhhw6tsJ3MgZXllcworCisgbWFuL3BvL2ZyLnBvIHwgICAzNyArKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAxNyBpbnNlcnRpb25zKCspLCAyMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDI1YWZlNmEzN2VhY2UxOWY4NWFkNzQyZWQ2ZmRjNjUyNDJlMGYxMDkKK0F1dGhvcjogQ2hyaXN0aWFuIFBFUlJJRVIgPGJ1YnVsbGVAZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IE9jdCAzMCAxNjowNzo1MCAyMDEwICswMjAwCisKKyAgICBGcmVuY2ggKENocmlzdGlhbiBQZXJyaWVyKS4gSW5jbHVkaW5nIGEgdHlwbyBmaXggYW5kIGEgdHlwb2dyYXBoaWNhbCBjaGFuZ2UgcmVwb3J0ZWQgYnkgVmluY2VudCBEYW5qZWFuIENsb3NlczogIzYwMTg1MgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDQgKysrLQorIG1hbi9wby9mci5wbyAgICAgfCAgICA2ICsrKy0tLQorIDIgZmlsZXMgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQorCitjb21taXQgMTI5YzYwMDAwODlmMGVjMjA0ZDI2Njc0ZTIwMTIwN2QxYjNmNjA5OAorQXV0aG9yOiBTdmVuIEpvYWNoaW0gPHN2ZW5qb2FjQGdteC5kZT4KK0RhdGU6ICAgTW9uIE9jdCAyNSAxMToxODoyMiAyMDEwICswMjAwCisKKyAgICBVc2UgaW1wZXJzb25hbCBsYW5ndWFnZSBpbiBHZXJtYW4gZHNlbGVjdCB0cmFuc2xhdGlvbgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDEgKworIGRzZWxlY3QvcG8vZGUucG8gfCAgIDc5ICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAzNSBpbnNlcnRpb25zKCspLCA0NSBkZWxldGlvbnMoLSkKKworY29tbWl0IDhlMmFkZGM5YjM5OTVmMjk5NmQ1YjE1NTI2OTdlNGViMjdlNmUwNmYKK0F1dGhvcjogSm9yZGkgTWFsbGFjaCA8am9yZGlAZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIE9jdCAyNCAxODoxMzo1OCAyMDEwICswMjAwCisKKyAgICBDYXRhbGFuIHVwZGF0ZXMgZm9yIGRwa2ctZGV2IGFuZCBkc2VsZWN0LgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDQgKworIGRzZWxlY3QvcG8vY2EucG8gfCAgMjQzICsrKysrKysrLS0tLS0tLS0tCisgc2NyaXB0cy9wby9jYS5wbyB8ICA4MzQgKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMyBmaWxlcyBjaGFuZ2VkLCA1MjIgaW5zZXJ0aW9ucygrKSwgNTU5IGRlbGV0aW9ucygtKQorCitjb21taXQgNTg2MTQwYTM2N2E4MzQ3Yzg2MzZiOTVkYTM3ZDc4ZDExNTNmOGE0YgorQXV0aG9yOiBKb3JkaSBNYWxsYWNoIDxqb3JkaUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gT2N0IDI0IDE2OjI0OjMyIDIwMTAgKzAyMDAKKworICAgIENhdGFsYW4gKEpvcmRpIE1hbGxhY2gpLgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDEgKworIHBvL2NhLnBvICAgICAgICAgfCAxMzA0ICsrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCA1MTggaW5zZXJ0aW9ucygrKSwgNzg3IGRlbGV0aW9ucygtKQorCitjb21taXQgYjliNDYwN2JiYTBiMWVkZGMyZDkxMWU0MzQxZjZjODY3YjM3NTRkNgorQXV0aG9yOiBTdmVuIEpvYWNoaW0gPHN2ZW5qb2FjQGdteC5kZT4KK0RhdGU6ICAgVHVlIE9jdCAxOSAyMTowNjo1NyAyMDEwICswMjAwCisKKyAgICBGaXggc2V2ZXJhbCBjbHVtc3kgd29yZGluZ3MgaW4gR2VybWFuIGRwa2cgdHJhbnNsYXRpb24KKworIHBvL2RlLnBvIHwgICAxNiArKysrKysrKy0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA4IGluc2VydGlvbnMoKyksIDggZGVsZXRpb25zKC0pCisKK2NvbW1pdCBhN2QzMjBhMDkxYzEyYWMyNWJjOTVlMTIzMGE5NmRlY2E5Njk5ZThjCitBdXRob3I6IFN2ZW4gSm9hY2hpbSA8c3ZlbmpvYWNAZ214LmRlPgorRGF0ZTogICBTYXQgT2N0IDE2IDIwOjU0OjEzIDIwMTAgKzAyMDAKKworICAgIEZpeCB0eXBvIGluIEdlcm1hbiBzY3JpcHRzIHRyYW5zbGF0aW9uCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMyArKysKKyBzY3JpcHRzL3BvL2RlLnBvIHwgICAgMiArLQorIDIgZmlsZXMgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgMWVkMGU4MDE5Y2M3ODM3ZDY5MjE1MzdiYThmMjFlMGNlNTAwNGIwOQorQXV0aG9yOiBTdmVuIEpvYWNoaW0gPHN2ZW5qb2FjQGdteC5kZT4KK0RhdGU6ICAgU2F0IE9jdCAxNiAyMTowMTo1NiAyMDEwICswMjAwCisKKyAgICBBZGQgSG9sZ2VyIFdhbnNpbmcgdG8gVEhBTktTCisgICAgCisgICAgSGUgaGFzIGNvbnRyaWJ1dGVkIGNvbnNpZGVyYWJseSB0byB0aGUgR2VybWFuIHRyYW5zbGF0aW9uIG9mIGJvdGggZHBrZworICAgIGFuZCB0aGUgc2NyaXB0cyBpbiBkcGtnLWRldi4KKworIFRIQU5LUyB8ICAgIDEgKworIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgNGZiMTQyMjc3OWZiM2VkZGQxMmU3NDIyMTM4NzUzNjUzODAwN2YzYgorQXV0aG9yOiBTdmVuIEpvYWNoaW0gPHN2ZW5qb2FjQGdteC5kZT4KK0RhdGU6ICAgRnJpIE9jdCAxNSAxMzo1Nzo0NSAyMDEwICswMjAwCisKKyAgICBVc2UgaW1wZXJzb25hbCBsYW5ndWFnZSBpbiBHZXJtYW4gZHBrZyB0cmFuc2xhdGlvbgorICAgIAorICAgIE1hbnkgdGhhbmtzIHRvIEhvbGdlciBXYW5zaW5nIGZvciBoaXMgaW5pdGlhbCBwYXRjaC4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAyICstCisgcG8vZGUucG8gICAgICAgICB8ICA4MjkgKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAzOTQgaW5zZXJ0aW9ucygrKSwgNDM3IGRlbGV0aW9ucygtKQorCitjb21taXQgZGQ1YzBiNTRlYWJmZDBkYzMwMzdjYjIxNjI4ZTg4NzdmNjk4MWI0YworQXV0aG9yOiBBc2sgSGpvcnRoIExhcnNlbiA8YXNrbGFyc2VuQGdtYWlsLmNvbT4KK0RhdGU6ICAgRnJpIE9jdCAxNSAwNzozNTozNSAyMDEwICswMjAwCisKKyAgICBVcGRhdGVkIERhbmlzaCB0cmFuc2xhdGlvbgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDEgKworIHBvL2RhLnBvICAgICAgICAgfCAzMjY3ICsrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAxMzU3IGluc2VydGlvbnMoKyksIDE5MTEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAzOGNlMjQzNDc5N2Y3MjZjZmEyOGM1M2IxMmQ2NGYzNzIxNzQ5MzI5CitBdXRob3I6IENocmlzdGlhbiBQRVJSSUVSIDxidWJ1bGxlQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBPY3QgMTMgMjA6NTk6NTYgMjAxMCArMDIwMAorCisgICAgQmFzcXVlIChJw7Fha2kgTGFycmHDsWFnYSBNdXJnb2l0aW8pLiBDbG9zZXM6ICM1OTk5MjMKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAxICsKKyBwby9ldS5wbyAgICAgICAgIHwgMjkyMyArKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDExNjkgaW5zZXJ0aW9ucygrKSwgMTc1NSBkZWxldGlvbnMoLSkKKworY29tbWl0IDQwNzBhYzBlNGUyYzZkMzI1Zjc5MmY5ZTA4ZDkxOTlhMGIwYWI2ODkKK0F1dGhvcjogU3ZlbiBKb2FjaGltIDxzdmVuam9hY0BnbXguZGU+CitEYXRlOiAgIFN1biBPY3QgMyAxMzoyMzoxOSAyMDEwICswMjAwCisKKyAgICBGaXggQ2x5dGllJ3MgbmFtZSBpbiBkZWJpYW4vY2hhbmdlbG9nCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMiArLQorIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgNGZhMDFiNzBkZjFkYzQ0NThkYWVlMzA2Y2ZhMWY5ODdiNjlkYTU4YworQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBPY3QgMyAwOTozNjo0OCAyMDEwICswMjAwCisKKyAgICBkcGtnLXNvdXJjZTogY29ycmVjdGx5IGNyZWF0ZSAucGMvLnF1aWx0X3NlcmllcyB3aXRoIGFsdGVybmF0ZSBzZXJpZXMgZmlsZXMKKyAgICAKKyAgICBJZiB5b3UgaGF2ZSBkZWJpYW4vcGF0Y2hlcy91YnVudHUuc2VyaWVzIGFuZCB5b3Ugd2VyZSB1bnBhY2tpbmcgdGhlIHNvdXJjZQorICAgIHBhY2thZ2Ugb24gdWJ1bnR1LCBxdWlsdCB3YXMgc3RpbGwgZGlyZWN0ZWQgdG8gZGViaWFuL3BhdGNoZXMvc2VyaWVzCisgICAgaW5zdGVhZCBvZiBkZWJpYW4vcGF0Y2hlcy91YnVudHUuc2VyaWVzLgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMyArKysKKyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG0gfCAgICA0ICsrKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDYgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGI4NWNmYTZhMDQ4MWMzOTM3MjE5Zjg3MzlhODM5NTRkMDM0YzM1YjAKK0F1dGhvcjogSmFtZXMgVmVnYSA8amFtZXNzYW5AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIFNlcCAyMSAxNTo1ODoxMSAyMDEwIC0wNDAwCisKKyAgICBBZGQgbm9uLXJlZ3Jlc3Npb24gdGVzdCBmb3IgRHBrZzo6VmVyc2lvbiBlbnN1cmluZyAtMC42LjUgPDwgMC45LjEKKyAgICAKKyAgICBkcGtnIHRyZWF0cyAiLTAuNi41IiBhcyBhIHZlcnNpb24gd2l0aCBvbmx5IGEgcmV2aXNpb24gY29tcG9uZW50LCBzbyBpdAorICAgIGNvbXBhcmVzIGxlc3MgdGhhbiBhbnkgdmVyc2lvbiB3aXRoIGEgdmVyc2lvbiBjb21wb25lbnQgPiAwLgorICAgIAorICAgIFNpZ25lZC1vZmYtYnk6IEphbWVzIFZlZ2EgPGphbWVzc2FuQGRlYmlhbi5vcmc+CisgICAgU2lnbmVkLW9mZi1ieTogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisgc2NyaXB0cy90LzEwMF9EcGtnX1ZlcnNpb24udCB8ICAgIDcgKysrKy0tLQorIDEgZmlsZXMgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQorCitjb21taXQgZjk3ZGE5MGI3OTcxN2Y4MzgyYWIyMDE4M2IzMDRhOWJlM2Y1NmM5ZgorQXV0aG9yOiBKYW1lcyBWZWdhIDxqYW1lc3NhbkBkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgU2VwIDIxIDE2OjQ3OjA0IDIwMTAgLTA0MDAKKworICAgIERwa2c6OlZlcnNpb246IEhhbmRsZSB2ZXJzaW9ucyB3aXRob3V0IGEgdmVyc2lvbiBjb21wb25lbnQgbGlrZSBkcGtnLgorICAgIAorICAgIFNpZ25lZC1vZmYtYnk6IEphbWVzIFZlZ2EgPGphbWVzc2FuQGRlYmlhbi5vcmc+CisgICAgU2lnbmVkLW9mZi1ieTogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisgVEhBTktTICAgICAgICAgICAgICAgICAgfCAgICAxICsKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICB8ICAgIDMgKysrCisgc2NyaXB0cy9EcGtnL1ZlcnNpb24ucG0gfCAgICAyICstCisgMyBmaWxlcyBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA1ZTdjYzc1ZmQyNDIzNTFhNGRmN2M2YzhjNTZlMWU5MzM3Y2ZkYjM1CitBdXRob3I6IENseXRpZSBTaWRkYWxsIDxjbHl0aWVAcml2ZXJsYW5kLm5ldC5hdT4KK0RhdGU6ICAgV2VkIFNlcCAyOSAyMTo1NzowMyAyMDEwICswMjAwCisKKyAgICBWaWV0bmFtZXNlIHRyYW5zbGF0aW9uIHVwZGF0ZQorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDEgKworIHBvL3ZpLnBvICAgICAgICAgfCAyNzUxICsrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgODcwIGluc2VydGlvbnMoKyksIDE4ODIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBiMWJlYWI4NjExZmI2MTdhY2EwMDY2ZDFkYjgyMTQ3MTA1NTRiZjhkCitBdXRob3I6IENocmlzdGlhbiBQRVJSSUVSIDxidWJ1bGxlQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBTZXAgMjAgMDc6MTE6MzkgMjAxMCArMDIwMAorCisgICAgUmUtYWRkIG9yaWdpbmFsbHkgb21pdHRlZCBtZW50aW9uIG9mIHZlcnNpb24gMi4wIGFzIG1lbnRpb25pbmcgaXQgaXMgbm90IGEgYnVnIGluIHRoZSBvcmlnaW5hbCB2ZXJzaW9uIG9mIG1hbnBhZ2VzCisKKyBtYW4vcG8vZnIucG8gfCAgICA0ICsrLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IGNiNzlmZTdiODMxZGU4MzlhODVjNDM1YjFhMjgyZjFkNjM3N2E3MGIKK0F1dGhvcjogU3ZlbiBKb2FjaGltIDxzdmVuam9hY0BnbXguZGU+CitEYXRlOiAgIFdlZCBTZXAgMjkgMTI6MjQ6NTggMjAxMCArMDIwMAorCisgICAgRml4IHR3byBmb3JtYXQgc3RyaW5ncyBpbiBHZXJtYW4gZHBrZyB0cmFuc2xhdGlvbgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDMgKystCisgcG8vZGUucG8gICAgICAgICB8ICAgIDggKysrKy0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDYgaW5zZXJ0aW9ucygrKSwgNSBkZWxldGlvbnMoLSkKKworY29tbWl0IDgwOTM5ZDgzM2I0ZGMxZDMzZjA5MWE1OWJkZTgyZjViNzhkODYxNjgKK01lcmdlOiA3ZGNmNDVlIGYzYThhMDIKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gU2VwIDE5IDE4OjI0OjQ5IDIwMTAgKzAyMDAKKworICAgIE1lcmdlIGNvbW1pdCAnMS4xNS44LjUnCisKK2NvbW1pdCBjNjNlZjVmMjg2ZWQzY2JiNDU2YTA5OWQxMmMwNTY3NzRlMWFmNzkxCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIFNlcCAxOSAxMzo0NDozNCAyMDEwICswMjAwCisKKyAgICBGaXggaW52YWxpZCBtYXJrdXAgaW4gRnJlbmNoIG1hbiBwYWdlcyB0cmFuc2xhdGlvbgorCisgbWFuL3BvL2ZyLnBvIHwgICAgNCArKy0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA2NzQ2MmE5NjhkMmRjM2E4ZmU3NWI0N2NlMjg3NWQyOGQwNWNmMmEzCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIFNlcCAxOSAxMTo1Mzo0MyAyMDEwICswMjAwCisKKyAgICBkcGtnLXNvdXJjZTogcHJvcGVybHkgZXhjbHVkZSBkZWJpYW4vc291cmNlL2xvY2FsLW9wdGlvbnMgaW4gc291cmNlIGZvcm1hdCAxLjAKKyAgICAKKyAgICBjb21taXQgMjI5MGExMjQ4YWYwODFjNmRmOTg4MDUyOTVkOTIxZTkxOTYyNDM1NiBpbnRyb2R1Y2VkIGEgcmVncmVzc2lvbgorICAgIGZvciBWMSBuYXRpdmUgcGFja2FnZXMgc2luY2UgdGhleSB3ZXJlIG5vIGxvbmdlciBleGNsdWRpbmcKKyAgICBkZWJpYW4vc291cmNlL2xvY2FsLW9wdGlvbnMuCisKKyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG0gfCAgICAxICsKKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IGY5NzEwZGQ5NjE4MmM2ZGEyZTdhMzEwYWM5MjkzZTdkODk4M2NjMzAKK0F1dGhvcjogQ2hyaXN0aWFuIFBFUlJJRVIgPGJ1YnVsbGVAZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIFNlcCAxOSAxMzowMToxOCAyMDEwICswMjAwCisKKyAgICBGcmVuY2ggdHJhbnNsYXRpb24gY29tcGxldGVkICh5ZXNzc3NzKTogMTkzN3QKKworIG1hbi9wby9mci5wbyB8ICAxMzMgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA3OSBpbnNlcnRpb25zKCspLCA1NCBkZWxldGlvbnMoLSkKKworY29tbWl0IGM3ODFkZjJjODg2YzRjYTQwYTQ3YjA2MDlhYThhZDg3Y2UyZjk4ZWYKK0F1dGhvcjogQ2hyaXN0aWFuIFBFUlJJRVIgPGJ1YnVsbGVAZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIFNlcCAxOSAxMjo0ODoyNCAyMDEwICswMjAwCisKKyAgICBSZXBsYWNlIGphcmdvbmljICdkaWZmJyBpbiBGcmVuY2ggdHJhbnNsYXRpb24KKworIHNjcmlwdHMvcG8vZnIucG8gfCAgIDI0ICsrKysrKysrKysrKy0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMTIgaW5zZXJ0aW9ucygrKSwgMTIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyMjkwYTEyNDhhZjA4MWM2ZGY5ODgwNTI5NWQ5MjFlOTE5NjI0MzU2CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IFNlcCAxOCAyMjo0MDowMCAyMDEwICswMjAwCisKKyAgICBkcGtnLXNvdXJjZTogZW5zdXJlIGRlYmlhbi9zb3VyY2UvbG9jYWwtb3B0aW9ucyBpcyBhbHdheXMgZXhjbHVkZWQKKyAgICAKKyAgICBJdCBzaG91bGQgYmUgZXhjbHVkZWQgZXZlbiBpZiB0aGUgdXNlciBwcm92aWRlcyAtSSBvciAtaSBvcHRpb25zIHRvCisgICAgb3ZlcnJpZGUgdGhlIGxpc3RzIG9mIGZpbGVzIHRvIGlnbm9yZS4KKyAgICAKKyAgICBSZXBvcnRlZC1ieTogUm9iZXJ0IEx1YmVyZGEgPHJvYmVydEBkZWJpYW4ub3JnPgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICAgIHwgICAgNSArKysrKworIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbSB8ICAgIDIgKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDYgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGMzMGIwOGI4OWUwZWVlMzkxNDdjNWIxMGZiOGM0OGFkMzc1MjIxMTUKK0F1dGhvcjogQ2hyaXN0aWFuIFBFUlJJRVIgPGJ1YnVsbGVAZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IFNlcCAxOCAxNToyNzowMiAyMDEwICswMjAwCisKKyAgICBGcmVuY2ggdHJhbnNsYXRpb24gdXBkYXRlOiAxODk0dDE1ZjI4dQorCisgbWFuL3BvL2ZyLnBvIHwgIDE5MSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA5NiBpbnNlcnRpb25zKCspLCA5NSBkZWxldGlvbnMoLSkKKworY29tbWl0IGYzNjM2OThkM2JlMTdjYjlkY2E2NDQxZDJkMjhjZjdkMWEzZTkyYTcKK0F1dGhvcjogQ2hyaXN0aWFuIFBFUlJJRVIgPGJ1YnVsbGVAZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIFNlcCAxNyAxOTozOToxNCAyMDEwICswMjAwCisKKyAgICBGcmVuY2ggdHJhbnNsYXRpb24gdXBkYXRlOiAxODQ0dDM3ZjU2dQorCisgbWFuL3BvL2ZyLnBvIHwgICA1MSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDM1IGluc2VydGlvbnMoKyksIDE2IGRlbGV0aW9ucygtKQorCitjb21taXQgZTRjODUyMGE5MTcwYzNkZTgyYmE4MWRhNWFkNTVlZDNiZjZkNjlmYworQXV0aG9yOiBDaHJpc3RpYW4gUEVSUklFUiA8YnVidWxsZUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgU2VwIDE1IDIwOjAwOjUzIDIwMTAgKzAyMDAKKworICAgIEZyZW5jaCB0cmFuc2xhdGlvbiB1cGRhdGU6IDE4Mjd0NDNmNjd1CisKKyBtYW4vcG8vZnIucG8gfCAgIDIyICsrKysrKysrKysrKysrKysrKy0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDE4IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBhMDAyZWZlMzE2NTc3MTdhM2Q0OTRlYjM2NzIwZmM0ZWQzN2EzZDY0CitBdXRob3I6IEhlbGdlIEtyZXV0em1hbm4gPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorRGF0ZTogICBXZWQgU2VwIDE1IDE0OjAwOjM4IDIwMTAgKzAyMDAKKworICAgIEZpeCBjaGFuZ2Vsb2cgZW50cnkgZm9yIFNwYW5pc2ggbWFuIHBhZ2UgdHJhbnNsYXRpb24KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAyICstCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBiOTQ0YmE3N2E2NGJjNjU0MTQ2OTYyNGNhZGJlYmIzNzcxYzgxY2RiCitBdXRob3I6IE9tYXIgQ2FtcGFnbmUgPG9jYW1wYWduZUBnbWFpbC5jb20+CitEYXRlOiAgIFR1ZSBTZXAgMTQgMjA6MzA6MDYgMjAxMCArMDIwMAorCisgICAgU3BhbmlzaCBtYW5wYWdlcyB0cmFuc2xhdGlvbjogMTkzN3QKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAxICsKKyBtYW4vcG8vZXMucG8gICAgIHwgIDE0MiArKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDY3IGluc2VydGlvbnMoKyksIDc2IGRlbGV0aW9ucygtKQorCitjb21taXQgZWJlOTAzNzI5ODRmYTMzMjdiNWRlYzM1MzJhMTdjZTVmNjlkYjBkMworQXV0aG9yOiBDaHJpc3RpYW4gUEVSUklFUiA8YnVidWxsZUBkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgU2VwIDE0IDIwOjI4OjQxIDIwMTAgKzAyMDAKKworICAgIFJldmVydCAiUG9ydHVndWVzZSBwcm9ncmFtcyB0cmFuc2xhdGlvbjogOTg1dCIKKyAgICAKKyAgICBUaGlzIHJldmVydHMgY29tbWl0IDhjMWQ3NDQ5NGNmMjU3MjkwNWQ1NGRiZDdkYmM2MzU3YjJkNTM5ODYuCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMSAtCisgbWFuL3BvL2VzLnBvICAgICB8ICAxNDIgKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCA3NiBpbnNlcnRpb25zKCspLCA2NyBkZWxldGlvbnMoLSkKKworY29tbWl0IDhjMWQ3NDQ5NGNmMjU3MjkwNWQ1NGRiZDdkYmM2MzU3YjJkNTM5ODYKK0F1dGhvcjogT21hciBDYW1wYWduZSA8b2NhbXBhZ25lQGdtYWlsLmNvbT4KK0RhdGU6ICAgVHVlIFNlcCAxNCAyMDoyODoxNCAyMDEwICswMjAwCisKKyAgICBQb3J0dWd1ZXNlIHByb2dyYW1zIHRyYW5zbGF0aW9uOiA5ODV0CisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMSArCisgbWFuL3BvL2VzLnBvICAgICB8ICAxNDIgKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCA2NyBpbnNlcnRpb25zKCspLCA3NiBkZWxldGlvbnMoLSkKKworY29tbWl0IDE1NWI4MmFmMzgyNjg4MmY4ODk1NzU2MzJjOTdmNGY0ZTM0YzE1NGEKK0F1dGhvcjogTWlndWVsIEZpZ3VlaXJlZG8gPGVsbWlnQGRlYmlhbnB0Lm9yZz4KK0RhdGU6ICAgVHVlIFNlcCAxNCAyMDoyNDo1OSAyMDEwICswMjAwCisKKyAgICBQb3J0dWd1ZXNlIHByb2dyYW1zIHRyYW5zbGF0aW9uOiA5ODV0CisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMSArCisgcG8vcHQucG8gICAgICAgICB8IDE1OTcgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCA3MDUgaW5zZXJ0aW9ucygrKSwgODkzIGRlbGV0aW9ucygtKQorCitjb21taXQgMWUwZWJlOThkYjgzZTU5Y2M2N2NkZmU0NDZkNGI0ZDhiYjk0MjEyZAorQXV0aG9yOiBZdXJpIEtvemxvdiA8eXVyYXlAa29teWFraW5vLnJ1PgorRGF0ZTogICBUdWUgU2VwIDE0IDIwOjIxOjA1IDIwMTAgKzAyMDAKKworICAgIHJ1c3NpYW4gcHJvZ3JhbXMgdHJhbnNsYXRpb246IDk4NXQKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAzICsKKyBwby9ydS5wbyAgICAgICAgIHwgMTMwNSArKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDU4OCBpbnNlcnRpb25zKCspLCA3MjAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAwY2E4YTRjOWVkZmE0OGNhMjE2MTU0ODI4OGNlZDM3NDA0NGJjNTFhCitBdXRob3I6IENocmlzdGlhbiBQRVJSSUVSIDxidWJ1bGxlQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBTZXAgMTQgMjA6MTg6MzcgMjAxMCArMDIwMAorCisgICAgQ2hhbmdlbG9nIGZvciBmcmVuY2ggdHJhbnNsYXRpb24gdXBkYXRlIG9mIG1hbnBhZ2VzCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgNyArKysrKysrCisgMSBmaWxlcyBjaGFuZ2VkLCA3IGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBmNGI4NzM1N2I5NjhiMDhkNjY0YzBjNGUyMzU2ZDU2MTNhODQwMzk0CitBdXRob3I6IENocmlzdGlhbiBQRVJSSUVSIDxidWJ1bGxlQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBTZXAgMTQgMjA6MTc6MzcgMjAxMCArMDIwMAorCisgICAgRnJlbmNoIG1hbnBhZ2VzIHRyYW5zbGF0aW9uIHVwZGF0ZS4gZHBrZy1nZW5zeW1ib2xzIGNvbXBsZXRlZDogMTgxOXQ0M2Y3NXUKKworIG1hbi9wby9mci5wbyB8ICAzNTYgKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMTYwIGluc2VydGlvbnMoKyksIDE5NiBkZWxldGlvbnMoLSkKKworY29tbWl0IGYzYThhMDIyZjFhMmVkYzVmZjhkMGU5MmZmYzNlNDhlODRiZThiMzkKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgU2VwIDE0IDAxOjI2OjU1IDIwMTAgKzAyMDAKKworICAgIFJlbGVhc2UgMS4xNS44LjUKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgIDI3ICsrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMTIgaW5zZXJ0aW9ucygrKSwgMTUgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA2ZTY4ZTM0YWE4MmI4OWM2NDZjNzg3YjMzYzg4NmRlZDM1M2ZlMmIwCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIFNlcCAxNCAwMToxNDoyNiAyMDEwICswMjAwCisKKyAgICBVcGRhdGUgLnBvIGZpbGVzIGZyb20gLnBvdCBmaWxlcworCisgbWFuL3BvL2ZyLnBvICAgICB8ICA4NjEgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vZnIucG8gICAgICAgICB8ICAgMTMgKy0KKyBwby9zdi5wbyAgICAgICAgIHwgICAgMyArLQorIHNjcmlwdHMvcG8vZGUucG8gfCAgICA4ICstCisgc2NyaXB0cy9wby9mci5wbyB8ICAgMzAgKy0KKyA1IGZpbGVzIGNoYW5nZWQsIDU0OCBpbnNlcnRpb25zKCspLCAzNjcgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA0ZTkxZjNiMWYxYWQwMzZlMGYxZTRiOWYwOWMwYjJmYjc4Nzg2NWZkCitBdXRob3I6IEFyaWVmIFMgRml0cmlhbnRvIDxhcmllZkBndXJhbWUuZmlzaWthLnVpLmFjLmlkPgorRGF0ZTogICBNb24gU2VwIDEzIDE4OjI1OjM4IDIwMTAgKzAyMDAKKworICAgIFVwZGF0ZWQgSW5kb25lc2lhbiB0cmFuc2xhdGlvbjo5ODV0CisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMSArCisgcG8vaWQucG8gICAgICAgICB8IDMzNTIgKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAxMzAxIGluc2VydGlvbnMoKyksIDIwNTIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBlYzI5ODRkZTNlMGRmMjFiYzEzY2YyOTQyN2FjM2YwOTZmNWJhZWU5CitBdXRob3I6IENocmlzdGlhbiBQRVJSSUVSIDxidWJ1bGxlQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBTZXAgMTMgMDc6NTQ6MTIgMjAxMCArMDIwMAorCisgICAgVXBkYXRlZCBGcmVuY2ggdHJhbnNsYXRpb246IDE3NjV0NTdmMTE1dSBhbmQgYW4gYXNwaXJpbgorCisgbWFuL3BvL2ZyLnBvIHwgICA2NSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDU2IGluc2VydGlvbnMoKyksIDkgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBjNjM4OWFkNGUxNzYzZTBhMWQ0ZmE2NTczZjhiMjQ0ODBhYzk1ZjExCitBdXRob3I6IFN2ZW4gSm9hY2hpbSA8c3ZlbmpvYWNAZ214LmRlPgorRGF0ZTogICBNb24gU2VwIDEzIDEyOjE2OjI5IDIwMTAgKzAyMDAKKworICAgIEZpeCB0eXBvIGluIEZyZW5jaCBtYW5wYWdlcyB0cmFuc2xhdGlvbgorICAgIAorICAgIEl0IGNhdXNlZCBhIGJ1aWxkIGZhaWx1cmUuCisKKyBtYW4vcG8vZnIucG8gfCAgICAyICstCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBlNWZjNjhlZTk2ZmUxN2JiN2ZiZTVkMmZlNDc0MmJiODc4NDNkYWNkCitBdXRob3I6IENocmlzdGlhbiBQRVJSSUVSIDxidWJ1bGxlQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBTZXAgMTIgMTM6NDA6MzkgMjAxMCArMDIwMAorCisgICAgU3BhbmlzaCB0cmFuc2xhdGlvbiBmb3Igc2NyaXB0cworCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDEgKworIHNjcmlwdHMvcG8vZXMucG8gfCAgMTY0ICsrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCA0OCBpbnNlcnRpb25zKCspLCAxMTcgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA0ZDZjNDMwOTA3MTVlYTRlZDc0YjM3NmJkYzdiZmY3M2ZhYWE1NjlhCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IFNlcCAxMSAxMDoxMzo1MyAyMDEwICswMjAwCisKKyAgICBVcGRhdGUgZHBrZydzIEJyZWFrcyBkZXBlbmRlbmN5IHRvIGluY2x1ZGUgZHBrZy1kZXYgKDw8IDEuMTUuOCkKKyAgICAKKyAgICBJdCBlbnN1cmVzIHRoYXQgb2xkZXIgdmVyc2lvbnMgb2YgZHBrZy1kZXYgdGhhdCBkaWQgbm90IGRlcGVuZCBvbgorICAgIGxpYmRwa2ctcGVybCBtdXN0IGJlIHVwZ3JhZGVkIHRvZ2V0aGVyIHdpdGggZHBrZy4KKyAgICAKKyAgICBSZXBvcnRlZC1ieTogTGlvbmVsIEVsaWUgTWFtYW5lIDxsaW9uZWxAbWFtYW5lLmx1PgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDMgKysrCisgZGViaWFuL2NvbnRyb2wgICB8ICAgIDIgKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDBmM2UzYTBmYmE2ZDdkMTYxM2M4ODE1OGRhZjlkZWMyNTQ1ZjU4Y2QKK0F1dGhvcjogQ2hyaXN0aWFuIFBFUlJJRVIgPGJ1YnVsbGVAZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIFNlcCAxMCAxODoyOTo0NSAyMDEwICswMjAwCisKKyAgICBGcmVuY2ggdHJhbnNsYXRpb24gdXBkYXRlOiAxNzQydDU4ZjEzN3UKKworIG1hbi9wby9mci5wbyB8ICAgMjcgKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAxOCBpbnNlcnRpb25zKCspLCA5IGRlbGV0aW9ucygtKQorCitjb21taXQgMmNkMzkwODQ3NWVjNDI2OTM4ZjdiYzJmZTY3MmNkNGE1ODVkOGMyMAorQXV0aG9yOiBDaHJpc3RpYW4gUEVSUklFUiA8YnVidWxsZUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgU2VwIDEwIDE4OjA5OjA4IDIwMTAgKzAyMDAKKworICAgIE1vcmUgb2NjdXJyZW5jZXMgb2YgdGhlIHNhbWUgdHJhbnNsYXRpb24KKworIHNjcmlwdHMvcG8vZnIucG8gfCAgIDI4ICsrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDE0IGluc2VydGlvbnMoKyksIDE0IGRlbGV0aW9ucygtKQorCitjb21taXQgYWM5YzVjZWMxMDM5Y2QzZDRiOWJhODZkMjNlMzVmYWVhYTNmOTYzYQorQXV0aG9yOiBDaHJpc3RpYW4gUEVSUklFUiA8YnVidWxsZUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgU2VwIDEwIDE4OjAzOjM4IDIwMTAgKzAyMDAKKworICAgIEZpeCB0byBGcmVuY2ggdHJhbnNsYXRpb24gZm9yICM1OTYzMzMKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAzICsrLQorIHNjcmlwdHMvcG8vZnIucG8gfCAgICA0ICsrLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworY29tbWl0IDEwMjhmNDk3NDAzMTUwNTUyMmUxMjI2NTBjZGVkM2NlZmMyMjA5ZDUKK0F1dGhvcjogQ2hyaXN0aWFuIFBFUlJJRVIgPGJ1YnVsbGVAZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IFNlcCA5IDIwOjQ1OjM3IDIwMTAgKzAyMDAKKworICAgIEZyZW5jaCB0cmFuc2xhdGlvbiB1cGRhdGUgb2YgbWFucGFnZXM6IDE3MzN0NjFmMTQzdQorCisgbWFuL3BvL2ZyLnBvIHwgICA1OSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDUwIGluc2VydGlvbnMoKyksIDkgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA1MWMwM2IzNWYzNDcxNTc5ZDM4YWY3OGI5ZWE3ZjZkNWJhMjAxMTRiCitBdXRob3I6IENocmlzdGlhbiBQRVJSSUVSIDxidWJ1bGxlQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBTZXAgOSAyMDo0NTowNiAyMDEwICswMjAwCisKKyAgICBGcmVuY2ggdHJhbnNsYXRpb24gdXBkYXRlIG9mIHByb2dyYW1zOiA5ODV0CisKKyBwby9mci5wbyB8ICAgIDMgKy0tCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA5MzM0MTIyOTAzZTY3YTYwNTQ0MjMxMDllYTlhNWM3ZDczYzIzODFjCitBdXRob3I6IEZlbGlwZSBFLiBGLiBkZSBDYXN0cm8gPGZlZmNhc0BnbWFpbC5jb20+CitEYXRlOiAgIFRodSBTZXAgOSAwNzoxODoxMCAyMDEwICswMjAwCisKKyAgICBFc3BlcmFudG8gcHJvZ3JhbXMgdHJhbnNsYXRpb24gdXBkYXRlICg5ODV0KQorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDEgKworIHBvL2VvLnBvICAgICAgICAgfCAxNTM4ICsrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgNDYyIGluc2VydGlvbnMoKyksIDEwNzcgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBhZmEwNmQwNDVmNDI3NTRlZWIyZTU0NzY1M2M2ZTBmZWZjNjkyNjAzCitBdXRob3I6IENocmlzdGlhbiBQRVJSSUVSIDxidWJ1bGxlQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBTZXAgOCAwNzoxNDoyMiAyMDEwICswMjAwCisKKyAgICBGcmVuY2ggdHJhbnNsYXRpb24gdXBkYXRlOiA5ODV0CisKKyBwby9mci5wbyB8ICAgIDQgKystLQorIDEgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgYmNiMmRhM2QzM2Y3YmY4YzAzNjkzOGI0OWU3ZGFjOTU0NTY1MGYyMAorQXV0aG9yOiBJdmFuIE1hc8OhciA8aGVsaXg4NEBjZW50cnVtLnNrPgorRGF0ZTogICBXZWQgU2VwIDggMDc6MTI6NTEgMjAxMCArMDIwMAorCisgICAgU2xvdmFrIHRyYW5zbGF0aW9uIHVwZGF0ZTogOTg1dAorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDEgKworIHBvL3NrLnBvICAgICAgICAgfCAxNDczICsrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgMjg1IGluc2VydGlvbnMoKyksIDExODkgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBkYTFlOWZmM2RiODYxMDI3NTYxNDU3NjNmYzBhNzZjZGM5OWRmOWJkCitBdXRob3I6IFN2ZW4gSm9hY2hpbSA8c3ZlbmpvYWNAZ214LmRlPgorRGF0ZTogICBUdWUgU2VwIDcgMTA6NTQ6NTMgMjAxMCArMDIwMAorCisgICAgRml4IHR3byBzaW5ndWxhciBmb3JtcyBpbiBHZXJtYW4gZHBrZyB0cmFuc2xhdGlvbgorCisgcG8vZGUucG8gfCAgICA2ICsrKy0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQorCitjb21taXQgYzgyNzY2NmNmMDY2ZjlmYWY4ODVlNjkxMzBmZmVjNzE4MDFmMDYwZQorQXV0aG9yOiBDaHJpc3RpYW4gUEVSUklFUiA8YnVidWxsZUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gU2VwIDYgMjA6NDk6NDEgMjAxMCArMDIwMAorCisgICAgRnJlbmNoIG1hbnBhZ2VzIHRyYW5zbGF0aW9uIHVwZGF0ZTogMTcxNHQ2M2YxNjB1CisKKyBtYW4vcG8vZnIucG8gfCAgMjMzICsrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMTEwIGluc2VydGlvbnMoKyksIDEyMyBkZWxldGlvbnMoLSkKKworY29tbWl0IGE5YzdlODc5NWZhZWY5MGY4MDY4ZWRiYWEyODZiZmI2MjJmMTlkNjcKK0F1dGhvcjogQ2hyaXN0aWFuIFBFUlJJRVIgPGJ1YnVsbGVAZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIFNlcCA2IDA3OjQ4OjUwIDIwMTAgKzAyMDAKKworICAgIEZyZW5jaCB0cmFuc2xhdGlvbiB1cGRhdGU6IDE2MzN0MTA0ZjIwMHUKKworIG1hbi9wby9mci5wbyB8ICAgNTUgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMzIgaW5zZXJ0aW9ucygrKSwgMjMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyMWYyNTA0N2JmZDNhOTUxNTJlODYwNzI1MmY4YjA3ZmMyYTMzOWY2CitBdXRob3I6IENocmlzdGlhbiBQRVJSSUVSIDxidWJ1bGxlQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBTZXAgNSAxOTo0NTo0MyAyMDEwICswMjAwCisKKyAgICBGcmVuY2ggbWFucGFnZXMgdHJhbnNsYXRpb24gdXBkYXRlOiAxNjE0dDEwOGYyMTV1CisKKyBtYW4vcG8vZnIucG8gfCAgIDU3ICsrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMjcgaW5zZXJ0aW9ucygrKSwgMzAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA4NDU3OWE2YzBkZWRmY2UzZTI3ZGE0MTFmN2EwNWY5MjAzODJmZmMxCitBdXRob3I6IE1pbG8gQ2FzYWdyYW5kZSA8bWlsb0B1YnVudHUuY29tPgorRGF0ZTogICBTdW4gU2VwIDUgMTU6MTg6MjMgMjAxMCArMDIwMAorCisgICAgVXBkYXRlZCBJdGFsaWFuIHRyYW5zbGF0aW9uICg5ODV0KQorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDEgKworIHBvL2l0LnBvICAgICAgICAgfCAgIDYwICsrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAyNCBpbnNlcnRpb25zKCspLCAzNyBkZWxldGlvbnMoLSkKKworY29tbWl0IGFlYjViNjZlZmQ3YTA4YjU0ZjZlNjgwOTJkMmUyZDdhNGM1NGI4NDAKK0F1dGhvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitEYXRlOiAgIFN1biBTZXAgNSAxNjo1NzoyOCAyMDEwICswMjAwCisKKyAgICBGaXggZW5jb2Rpbmcgb2YgR2VybWFuIGFkZGVuZHVtLiBDbG9zZXM6ICM1OTU2NDMuCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMyArKysKKyBtYW4vcG8vcG80YS5jZmcgIHwgICAgMiArLQorIDIgZmlsZXMgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgNGQyYjA0ZjNlNjJkMDJhMjIzZTEyZWVhMTk0N2ZkZTFlMzY5NTMzNAorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBTZXAgNSAwOTo0MzozMiAyMDEwICswMjAwCisKKyAgICBkcGtnLXNvdXJjZTogZHJvcCAtayBwYXJhbWV0ZXIgZnJvbSB0aGUgdGFyIGNvbW1hbmQgbGluZSB1c2VkIHRvIGV4dHJhY3QgdGFyYmFsbHMKKyAgICAKKyAgICBkcGtnLXNvdXJjZSBvbmx5IGV4dHJhY3RzIHRhcmJhbGxzIGluIGRpcmVjdG9yaWVzIHRoYXQgaXQgaGFzIGNyZWF0ZWQKKyAgICBpdHNlbGYsIHRoZXJlJ3Mgbm8gcmlzayBvZiBvdmVyd3JpdGluZyBhbnkgdXNlciBmaWxlcy4gRnVydGhlcm1vcmUgaW4KKyAgICB0aGUgZmV3IGNhc2VzIHdoZXJlIHdlIGRvIGV4dHJhY3QgYSB0YXJiYWxsIG9uIGEgbm9uLWVtcHR5IGRpcmVjdG9yeSwKKyAgICB3ZSByZWFsbHkgd2FudCB0byBiZSBhYmxlIHRvIG92ZXJ3cml0ZSBmaWxlcyBhbHJlYWR5IHByZXNlbnQuIFRoYXQncyB0aGUKKyAgICBjYXNlIHdpdGggYSBkZWJpYW4udGFyLmd6IGZpbGUuCisgICAgCisgICAgUmVwb3J0ZWQtYnk6IEphbWVzIFdlc3RieSA8amFtZXMud2VzdGJ5QGxpbmFyby5vcmc+CisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICAgfCAgICA0ICsrKysKKyBzY3JpcHRzL0Rwa2cvU291cmNlL0FyY2hpdmUucG0gfCAgICAyICstCisgMiBmaWxlcyBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA1YTgyMTJiN2IwODYyZTI2ZWM5NGNiZWI3OGQ3MzQxMTgzMWJkZTE1CitBdXRob3I6IENoYW5nd29vIFJ5dSA8Y3dyeXVAZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIFNlcCA1IDA4OjAwOjAzIDIwMTAgKzAyMDAKKworICAgIEtvcmVhbiB0cmFuc2xhdGlvbiB1cGRhdGU6IDk4NXQKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAxICsKKyBwby9rby5wbyAgICAgICAgIHwgMjI4NyArKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDY2NCBpbnNlcnRpb25zKCspLCAxNjI0IGRlbGV0aW9ucygtKQorCitjb21taXQgOTFkNmQ5MTFhODFiNWJlNjRhYTgyM2M3MWVmYTBhY2FlZGI2YmY5ZAorQXV0aG9yOiBLZW5zaGkgTXV0byA8a211dG9AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIFNlcCA1IDA3OjU4OjMxIDIwMTAgKzAyMDAKKworICAgIEphcGFuZXNlIHRyYW5zbGF0aW9uIHVwZGF0ZTogOTg1dAorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDEgKworIHBvL2phLnBvICAgICAgICAgfCAyMzI2ICsrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgNjg4IGluc2VydGlvbnMoKyksIDE2MzkgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBkMTVjNGUxYzFlZGZiM2E1NjEwNjgwOTkyYTNiZWIxMzRlNjJmZTBiCitBdXRob3I6IEhhbnMgRi4gTm9yZGhhdWcgPEhhbnMuRi5Ob3JkaGF1Z0BoaU1vbGRlLm5vPgorRGF0ZTogICBGcmkgU2VwIDMgMDg6Mzg6MzAgMjAxMCArMDIwMAorCisgICAgTm9yd2VnaWFuIEJva23DpWwgdHJhbnNsYXRpb24gdXBkYXRlIGZvciBkc2VsZWN0OiAyNzd0CisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMSArCisgZHNlbGVjdC9wby9uYi5wbyB8ICAgMzAgKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAxNSBpbnNlcnRpb25zKCspLCAxNiBkZWxldGlvbnMoLSkKKworY29tbWl0IDdkY2Y0NWUzMmY2Mjg1OWNiZWE4MzM3YzQ2Y2U3ZmM2YjYzNDliNTYKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgU2VwIDIgMTU6Mzg6NDkgMjAxMCArMDIwMAorCisgICAgUmV2ZXJ0ICJSdXNzaWFuIHRyYW5zbGF0aW9uIHVwZGF0ZSBvZiBzY3JpcHRzOiA1MTFmMnUiCisgICAgCisgICAgVGhpcyByZXZlcnRzIGNvbW1pdCAyZDcwMjllOWUwNDVlOWFjM2M3NDAyNTFhZTUyYzk4YmRkYmY4YjM1LgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDEgLQorIHNjcmlwdHMvcG8vcnUucG8gfCAgMzg1ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgMjI2IGluc2VydGlvbnMoKyksIDE2MCBkZWxldGlvbnMoLSkKKworY29tbWl0IDM0YjNmYWVhMTEzMDJhZDI3Zjk5ZjIxMzYxMzZiNTRhZjM1ZTZmMzkKK0F1dGhvcjogSGFucyBGLiBOb3JkaGF1ZyA8SGFucy5GLk5vcmRoYXVnQGhpTW9sZGUubm8+CitEYXRlOiAgIFRodSBTZXAgMiAwNjoyMDozMiAyMDEwICswMjAwCisKKyAgICBOb3J3ZWdpYW4gQm9rbcOlbCB0cmFuc2xhdGlvbiB1cGRhdGU6IDk4NQorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDEgKworIHBvL25iLnBvICAgICAgICAgfCAxMzkzICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgNTkzIGluc2VydGlvbnMoKyksIDgwMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDBjNjU3OTI3ZmQwZTI1OTJmNDg1NTllM2FiYzU0YjVjYTZlZjIwZmUKK0F1dGhvcjogWXVyaSBLb3psb3YgPHl1cmF5QGtvbXlha2luby5ydT4KK0RhdGU6ICAgVGh1IFNlcCAyIDA2OjE4OjU4IDIwMTAgKzAyMDAKKworICAgIFJ1c3NpYW4gdHJhbnNsYXRpb24gdXBkYXRlOiA1MTN0CisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMSArCisgc2NyaXB0cy9wby9ydS5wbyB8ICAzOTEgKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDE1NiBpbnNlcnRpb25zKCspLCAyMzYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyZDcwMjllOWUwNDVlOWFjM2M3NDAyNTFhZTUyYzk4YmRkYmY4YjM1CitBdXRob3I6IFl1cmkgS296bG92IDx5dXJheUBrb215YWtpbm8ucnU+CitEYXRlOiAgIFdlZCBTZXAgMSAyMjoxMDozOSAyMDEwICswMjAwCisKKyAgICBSdXNzaWFuIHRyYW5zbGF0aW9uIHVwZGF0ZSBvZiBzY3JpcHRzOiA1MTFmMnUKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAxICsKKyBzY3JpcHRzL3BvL3J1LnBvIHwgIDM4NSArKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDE2MCBpbnNlcnRpb25zKCspLCAyMjYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBkOWViNDYxOTEwOGJmNmYzMDA2ZGExODllZWJjZjI4NDY1Mjk5MTVhCitBdXRob3I6IENocmlzdGlhbiBQRVJSSUVSIDxidWJ1bGxlQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBTZXAgMSAyMTo1Mjo1NiAyMDEwICswMjAwCisKKyAgICBGcmVuY2ggdHJhbnNsYXRpb24gdXBkYXRlOiAxMThmMjE5dQorCisgbWFuL3BvL2ZyLnBvIHwgIDIyMyArKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDc4IGluc2VydGlvbnMoKyksIDE0NSBkZWxldGlvbnMoLSkKKworY29tbWl0IGEyNzJkNDM4N2MwNjZlZDM0N2Q2ZGViYjBlMmVhMzc4NmI2OGJlZjUKK0F1dGhvcjogQ2hyaXN0aWFuIFBFUlJJRVIgPGJ1YnVsbGVAZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIFNlcCAxIDA3OjUzOjMwIDIwMTAgKzAyMDAKKworICAgIEZyZW5jaCB0cmFuc2xhdGlvbiB1cGRhdGUKKworIHNjcmlwdHMvcG8vZnIucG8gfCAgIDEyICsrKysrKy0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCA2IGRlbGV0aW9ucygtKQorCitjb21taXQgOTkxMjg5OTViNGIwOTczZjBiZmE4ZDk3MWZhNzg0ZWM4ZWJkZmM0YgorQXV0aG9yOiBDaHJpc3RpYW4gUEVSUklFUiA8YnVidWxsZUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgU2VwIDEgMDc6NTE6NTkgMjAxMCArMDIwMAorCisgICAgRnJlbmNoIHRyYW5zbGF0aW9uIHVwZGF0ZQorCisgcG8vZnIucG8gfCAgIDM4ICsrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAxOSBpbnNlcnRpb25zKCspLCAxOSBkZWxldGlvbnMoLSkKKworY29tbWl0IDBjZmMxZjA3NzU5YmU1NTk3ZTJmNGJjYmM0Y2NhOTE4MDkyOWM3ZTgKK0F1dGhvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitEYXRlOiAgIFdlZCBTZXAgMSAyMToyNDoxOSAyMDEwICswMjAwCisKKyAgICBVcGRhdGUgR2VybWFuIHNjcmlwdHMgdHJhbnNsYXRpb24KKyAgICAKKyAgICBVcGRhdGUgdG8gNTEzdAorCisgc2NyaXB0cy9wby9kZS5wbyB8ICAgMTcgKysrKysrLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDYgaW5zZXJ0aW9ucygrKSwgMTEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAzMDlkOTI4NzhhNzU3MjAzMmVhM2Y5N2YwYmMzZTE5NzFmOGRiMThkCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIFNlcCAxIDA5OjQzOjMwIDIwMTAgKzAyMDAKKworICAgIGxpYmRwa2c6IENsYXJpZnkgZmRfZmRfY29weSBlcnJvciBzdHJpbmcgaW4gZHBrZ19hcl9tZW1iZXJfcHV0X2hlYWRlcgorICAgIAorICAgIFRoaXMgbWFrZXMgdGhlIGVycm9yIHN0cmluZyBjbGVhcmVyLCBhbmQgYXMgYSBzaWRlIGVmZmVjdCByZW1vdmVzIGEKKyAgICBib2d1cyB3YXJuaW5nIGR1ZSB0byB0aGUgbm9uIGxpdGVyYWwgZm9ybWF0IHN0cmluZywgd2hpY2ggaXMgcGVyZmVjdGx5CisgICAgZmluZSBoZXJlIGFzIGl0J3MgdW5kZXIgY29tcGxldGUgY29udHJvbCBmcm9tIHRoZSBwcm9ncmFtbWVyLgorICAgIAorICAgIFJlcG9ydGVkLWJ5OiBTYW5kcm8gQ2F6emFuaWdhIDxjYXp6YW5pZ2Euc2FuZHJvQGdtYWlsLmNvbT4KKworIGxpYi9kcGtnL2FyLmMgfCAgICAyICstCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBmZDE5NGU0NzkyMjhhMzlmZTYxNGViNzcxNTAzZDZmMWFiZTkyMDRhCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIFNlcCAxIDA5OjM5OjU2IDIwMTAgKzAyMDAKKworICAgIEJ1bXAgdmVyc2lvbiB0byAxLjE2LjAKKworIFRPRE8gICAgICAgICAgICAgfCAgICA1ICstLS0tCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDIgKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgNSBkZWxldGlvbnMoLSkKKworY29tbWl0IDVhODBlYzZjZThlNTk4YWFkMzc4YTcxYzI5ZDY5OWEyN2VhODY5MWYKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgSnVsIDI5IDIwOjI2OjUzIDIwMTAgKzAyMDAKKworICAgIGxpYmNvbXBhdDogT24gc3VjY2Vzc2Z1bCByZWFsbG9jIGFzc2lnbiB0aGUgbmV3bGlzdCB0byBsaXN0CisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICB8ICAgIDMgKysrCisgbGliL2NvbXBhdC9zY2FuZGlyLmMgfCAgICAxICsKKyAyIGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IGZiMGMyZDljNWMyODVjMmIxZDc0ZmIzZWNlNjBhZjViNzZhNzU5MWQKK0F1dGhvcjogU3ZlbiBKb2FjaGltIDxzdmVuam9hY0BnbXguZGU+CitEYXRlOiAgIFdlZCBTZXAgMSAwOTowOToyNyAyMDEwICswMjAwCisKKyAgICBHZXJtYW4gZHBrZyB0cmFuc2xhdGlvbiB1cGRhdGUKKyAgICAKKyAgICBVcGRhdGUgdG8gOTg1dC4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICA5ICsrKy0tCisgcG8vZGUucG8gICAgICAgICB8ICAgODIgKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDM4IGluc2VydGlvbnMoKyksIDUzIGRlbGV0aW9ucygtKQorCitjb21taXQgZGJiZDE1ZmU4ZDk3MmI0ZjhmM2E0ZDk0OTM0YTk5YzUwN2NmMDU5NgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBTZXAgMSAwODoxNTozOCAyMDEwICswMjAwCisKKyAgICB1LWE6IEZpeCBwb3NzaWJsZSBzZWdmYXVsdCBpZiBtYXN0ZXJfZmlsZSBjb250YWlucyBhIGZvcm1hdCBzcGVjaWZpZXIKKyAgICAKKyAgICBUaGUgaW5wdXQgZG9lcyBub3QgZ2V0IHNhbml0aXplZCwgYW5kIGFzIHN1Y2ggdGhlIHVzZXIgY291bGQgZW5kIHVwCisgICAgcmVnaXN0ZXJpbmcgYSBmaWxlIGNvbnRhaW5pbmcgZm9ybWF0IHN0cmluZyBzcGVjaWZpZXJzLCB3aGljaCB3b3VsZAorICAgIG1ha2UgdGhlIHByKCkgY2FsbCBtb3N0IHByb2JhYmx5IHNlZ2ZhdWx0IHRyeWluZyB0byBhY2Nlc3MgYW4gaW52YWxpZAorICAgIHBvaW50ZXIuCisgICAgCisgICAgUmVwb3J0ZWQtYnk6IFNhbmRybyBDYXp6YW5pZ2EgPGNhenphbmlnYS5zYW5kcm9AZ21haWwuY29tPgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgIHwgICAgMyArKysKKyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmMgfCAgICAyICstCisgMiBmaWxlcyBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBiZDRlNmEzMWEyZWUwOGVlY2FhZGEzMjk2NWJjYzgzOTFjM2Y4OTMxCitBdXRob3I6IFBldGVyIEtyZWZ0aW5nIDxwZXRlcmtAZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIEF1ZyAzMSAyMDozNTowMyAyMDEwICswMTAwCisKKyAgICBVcGRhdGUgU3dlZGlzaCB0cmFuc2xhdGlvbi4KKyAgICAKKyAgICBwby9zdi5wbzogOTg1dDBmMHUuCisgICAgc2NyaXB0cy9wby9zdi5wbzogNTEzdDBmMHUuCisKKyBwby9zdi5wbyAgICAgICAgIHwgICA1NiArKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHNjcmlwdHMvcG8vc3YucG8gfCAgIDE5ICsrKysrKy0tLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAyNiBpbnNlcnRpb25zKCspLCA0OSBkZWxldGlvbnMoLSkKKworY29tbWl0IGVjYjEzODMyOTdiMjA0ZjE5ZjU4NDM0NjU2ZmE2MWEwMDc5ZDMxMzcKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgQXVnIDMxIDIxOjEyOjU2IDIwMTAgKzAyMDAKKworICAgIFJlZ2VuZXJhdGUgLnBvdCBmaWxlcyBhbmQgbWVyZ2UgLnBvIGZpbGVzIHdpdGggdGhlbQorCisgZHNlbGVjdC9wby9icy5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9jYS5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9jcy5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9kYS5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9kZS5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9kc2VsZWN0LnBvdCAgfCAgICA0ICstCisgZHNlbGVjdC9wby9lbC5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9lcy5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9ldC5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9ldS5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9mci5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9nbC5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9odS5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9pZC5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9pdC5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9qYS5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9rby5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9uYi5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9ubC5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9ubi5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9wbC5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9wdC5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9wdF9CUi5wbyAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9yby5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9ydS5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9zay5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9zdi5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby90bC5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby92aS5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby96aF9DTi5wbyAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby96aF9UVy5wbyAgICAgfCAgICAyICstCisgbWFuL3BvL2Rwa2ctbWFuLnBvdCAgICAgfCAgICA1ICstCisgbWFuL3BvL2ZyLnBvICAgICAgICAgICAgfCAgMzM2ICsrKysrKysrKysrKysrLS0tLS0tLS0tLS0tCisgbWFuL3BvL3N2LnBvICAgICAgICAgICAgfCAgIDI4ICstLQorIHBvL2FzdC5wbyAgICAgICAgICAgICAgIHwgIDM3MSArKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tCisgcG8vYnMucG8gICAgICAgICAgICAgICAgfCAgMzUwICsrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLQorIHBvL2NhLnBvICAgICAgICAgICAgICAgIHwgIDM3NSArKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLQorIHBvL2NzLnBvICAgICAgICAgICAgICAgIHwgIDM3NCArKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0KKyBwby9kYS5wbyAgICAgICAgICAgICAgICB8ICAzNjcgKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLQorIHBvL2RlLnBvICAgICAgICAgICAgICAgIHwgIDM4NCArKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0KKyBwby9kcGtnLnBvdCAgICAgICAgICAgICB8ICAzNTMgKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tCisgcG8vZHoucG8gICAgICAgICAgICAgICAgfCAgMzY3ICsrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0KKyBwby9lbC5wbyAgICAgICAgICAgICAgICB8ICAzNjggKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLQorIHBvL2VvLnBvICAgICAgICAgICAgICAgIHwgIDM3MSArKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tCisgcG8vZXMucG8gICAgICAgICAgICAgICAgfCAgMzcwICsrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0KKyBwby9ldC5wbyAgICAgICAgICAgICAgICB8ICAzNTkgKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLQorIHBvL2V1LnBvICAgICAgICAgICAgICAgIHwgIDM3MSArKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tCisgcG8vZnIucG8gICAgICAgICAgICAgICAgfCAgNjEwICsrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vZ2wucG8gICAgICAgICAgICAgICAgfCAgMzY3ICsrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0KKyBwby9odS5wbyAgICAgICAgICAgICAgICB8ICAzNTcgKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tCisgcG8vaWQucG8gICAgICAgICAgICAgICAgfCAgMzU3ICsrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLQorIHBvL2l0LnBvICAgICAgICAgICAgICAgIHwgIDM4MyArKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0KKyBwby9qYS5wbyAgICAgICAgICAgICAgICB8ICAzNjggKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLQorIHBvL2ttLnBvICAgICAgICAgICAgICAgIHwgIDM2NyArKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tCisgcG8va28ucG8gICAgICAgICAgICAgICAgfCAgMzY4ICsrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0KKyBwby9rdS5wbyAgICAgICAgICAgICAgICB8ICAzNTMgKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tCisgcG8vbHQucG8gICAgICAgICAgICAgICAgfCAgMzYyICsrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0KKyBwby9tci5wbyAgICAgICAgICAgICAgICB8ICAzNjkgKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLQorIHBvL25iLnBvICAgICAgICAgICAgICAgIHwgIDM2NyArKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tCisgcG8vbmUucG8gICAgICAgICAgICAgICAgfCAgMzY3ICsrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0KKyBwby9ubC5wbyAgICAgICAgICAgICAgICB8ICAzNjkgKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLQorIHBvL25uLnBvICAgICAgICAgICAgICAgIHwgIDM2NyArKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tCisgcG8vcGEucG8gICAgICAgICAgICAgICAgfCAgMzUzICsrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLQorIHBvL3BsLnBvICAgICAgICAgICAgICAgIHwgIDM4NSArKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0KKyBwby9wdC5wbyAgICAgICAgICAgICAgICB8ICAzNjkgKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLQorIHBvL3B0X0JSLnBvICAgICAgICAgICAgIHwgIDM2OCArKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tCisgcG8vcm8ucG8gICAgICAgICAgICAgICAgfCAgMzgyICsrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tCisgcG8vcnUucG8gICAgICAgICAgICAgICAgfCAgMzkzICsrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0KKyBwby9zay5wbyAgICAgICAgICAgICAgICB8ICAzODUgKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tCisgcG8vc3YucG8gICAgICAgICAgICAgICAgfCAgMzg0ICsrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLQorIHBvL3RoLnBvICAgICAgICAgICAgICAgIHwgIDQwMyArKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tCisgcG8vdGwucG8gICAgICAgICAgICAgICAgfCAgMzY5ICsrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0KKyBwby92aS5wbyAgICAgICAgICAgICAgICB8ICAzNTcgKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tCisgcG8vemhfQ04ucG8gICAgICAgICAgICAgfCAgMzgyICsrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLQorIHBvL3poX1RXLnBvICAgICAgICAgICAgIHwgIDM2NyArKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tCisgc2NyaXB0cy9wby9jYS5wbyAgICAgICAgfCAgIDc5ICsrKystLS0KKyBzY3JpcHRzL3BvL2RlLnBvICAgICAgICB8ICAgOTIgKysrKystLS0KKyBzY3JpcHRzL3BvL2Rwa2ctZGV2LnBvdCB8ICAgODEgKysrKy0tLQorIHNjcmlwdHMvcG8vZXMucG8gICAgICAgIHwgICA5MiArKysrKy0tLQorIHNjcmlwdHMvcG8vZnIucG8gICAgICAgIHwgIDE3MiArKysrKy0tLS0tLS0tLQorIHNjcmlwdHMvcG8vcGwucG8gICAgICAgIHwgICA5NyArKysrKy0tLQorIHNjcmlwdHMvcG8vcnUucG8gICAgICAgIHwgICA5OCArKysrKy0tLQorIHNjcmlwdHMvcG8vc3YucG8gICAgICAgIHwgICA5MSArKysrLS0tCisgODMgZmlsZXMgY2hhbmdlZCwgODc1NSBpbnNlcnRpb25zKCspLCA3ODg4IGRlbGV0aW9ucygtKQorCitjb21taXQgY2VlYTc0ZmE3ZDM1NDViZGVlYWUzMGFjNmU0Y2U1OTI3MDM2NzViZAorQXV0aG9yOiBUaGVwcGl0YWsgS2Fyb29uYm9vbnlhbmFuIDx0aGVwQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBBdWcgMzEgMjE6MDk6NDcgMjAxMCArMDIwMAorCisgICAgVXBkYXRlIFRoYWkgcHJvZ3JhbSB0cmFuc2xhdGlvbgorICAgIAorICAgIENsb3NlczogIzU5NDAxMQorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDEgKworIHBvL3RoLnBvICAgICAgICAgfCAxMzgzICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgNTkzIGluc2VydGlvbnMoKyksIDc5MSBkZWxldGlvbnMoLSkKKworY29tbWl0IDgyOTJjYmFjMDZkM2MzMzViY2RlNTI1NDJkYjIwMzg0YzhmZWRkNWQKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgQXVnIDMxIDE3OjE3OjAwIDIwMTAgKzAyMDAKKworICAgIEFkZCBtaXNzaW5nIGJ1ZyBjbG9zdXJlLgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDEgKworIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgNzBjMzVlNmEzYThkY2E3MmQzNGJmY2ZiM2M5ZDdjMzFhZGJjMmVkNAorQXV0aG9yOiBIZWxnZSBLcmV1dHptYW5uIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KK0RhdGU6ICAgU3VuIEF1ZyAyOSAxNDo1MToyNSAyMDEwICswMjAwCisKKyAgICBVcGRhdGUgR2VybWFuIHRyYW5zbGF0aW9uIG9mIG1hbnVhbCBwYWdlcworICAgIAorICAgIFVwZGF0ZSB0byAxOTM3dC4KKworIG1hbi9wby9kZS5wbyB8ICAgMzYgKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAxNCBpbnNlcnRpb25zKCspLCAyMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDdjZGVjNmQzNWNmOWY5OGI2OThhYjQ4NmU2NmMyZGI5ZDA3MjY0MDQKK0F1dGhvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitEYXRlOiAgIFN1biBBdWcgMjkgMTQ6NTE6MjUgMjAxMCArMDIwMAorCisgICAgVXBkYXRlIEdlcm1hbiB0cmFuc2xhdGlvbiBvZiBtYW51YWwgcGFnZXMKKyAgICAKKyAgICBVcGRhdGUgdG8gMTkzN3QuCisKKyBtYW4vcG8vZGUucG8gfCAgIDM2ICsrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMTQgaW5zZXJ0aW9ucygrKSwgMjIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBmYWU4YTJiZDZlMjg4MTg2MjNmNTVlNjUwODI1MjI2YTAzYTg4OTYxCitBdXRob3I6IEFyb24gWHUgPGhhcHB5YXJvbi54dUBnbWFpbC5jb20+CitEYXRlOiAgIFNhdCBBdWcgMjggMTQ6MzM6MTQgMjAxMCArMDIwMAorCisgICAgU2ltcGxpZmllZCBDaGluZXNlIHRyYW5zbGF0aW9uIHVwZGF0ZQorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDEgKworIHBvL3poX0NOLnBvICAgICAgfCAgNzA4ICsrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgMjQ5IGluc2VydGlvbnMoKyksIDQ2MCBkZWxldGlvbnMoLSkKKworY29tbWl0IGNhYzlhYzY2OTQ4NTUyNDYyZmZiOTRmMTA2YjljYjc1NTA1MjVkZTMKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgQXVnIDI1IDA4OjE1OjQwIDIwMTAgKzAyMDAKKworICAgIEFkZCBnZXR0ZXh0IG1lc3NhZ2VzIGZvciBwbHVyYWwgZm9ybXMKKyAgICAKKyAgICBTb21lIG9mIHRoZSBzaW5ndWxhciBmb3JtcyBhcmUgbm90IGN1cnJlbnRseSB1c2VkLCBidXQgd2Uga2VlcCB0aGVtIGZvcgorICAgIGNvbnNpc3RlbmN5LCBhbmQgdG8gYXZvaWQgY29uZnVzaW5nIHRyYW5zbGF0b3JzLgorICAgIAorICAgIENsb3NlczogIzU5NDIxOAorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICAgICAgIHwgICAgMSArCisgZHBrZy1kZWIvYnVpbGQuYyAgICAgICAgICAgICAgICAgIHwgICAgNSArKysrLQorIGRwa2ctZGViL2luZm8uYyAgICAgICAgICAgICAgICAgICB8ICAgIDcgKysrLS0tLQorIGRwa2ctc3BsaXQvam9pbi5jICAgICAgICAgICAgICAgICB8ICAgIDQgKysrLQorIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbSB8ICAgIDkgKysrKysrLS0tCisgc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbCAgICAgICAgIHwgICAgNiArKysrLS0KKyBzcmMvZW5xdWlyeS5jICAgICAgICAgICAgICAgICAgICAgfCAgICA0ICsrKy0KKyBzcmMvZmlsZXNkYi5jICAgICAgICAgICAgICAgICAgICAgfCAgICA0ICsrKy0KKyBzcmMvaGVscC5jICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDExICsrKysrKystLS0tCisgc3JjL3VwZGF0ZS5jICAgICAgICAgICAgICAgICAgICAgIHwgICAgMyArKy0KKyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmMgICAgICAgfCAgICA5ICsrKysrKy0tLQorIDExIGZpbGVzIGNoYW5nZWQsIDQyIGluc2VydGlvbnMoKyksIDIxIGRlbGV0aW9ucygtKQorCitjb21taXQgNDUwOWVmZGMxNDNjODViNzdkZjY4YjdhM2IwNzI4ZTY2NTgwNzAxZAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBBdWcgMjUgMDg6MTI6NTMgMjAxMCArMDIwMAorCisgICAgQWRkIGdldHRleHQgcGx1cmFscyBpbmZyYXN0cnVjdHVyZSBzdXBwb3J0CisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICB8ICAgIDEgKworIGxpYi9kcGtnL2kxOG4uaCAgICAgICAgIHwgICAgMyArKy0KKyBwby9NYWtldmFycyAgICAgICAgICAgICB8ICAgIDIgKy0KKyBzY3JpcHRzL0Rwa2cvR2V0dGV4dC5wbSB8ICAgIDggKysrKysrKy0KKyBzY3JpcHRzL3BvL01ha2V2YXJzICAgICB8ICAgIDIgKy0KKyA1IGZpbGVzIGNoYW5nZWQsIDEyIGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA5MjI2ZWY1N2ExMDhmNzZjMGYyMmY4YzkzM2Q1OTAyMzUwYzM0ODU4CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IEF1ZyAyNiAwNDowMTowNCAyMDEwICswMjAwCisKKyAgICBidWlsZDogUmVtb3ZlIHhnZXR0ZXh0IF9nIGtleXdvcmQgZm9yIHRoZSBkcGtnIGRvbWFpbgorICAgIAorICAgIFRoZSBkcGtnIGRvbWFpbiBjb25zaXN0cyBvbmx5IG9mIEMgc291cmNlcywgc28gdGhlcmUncyBubyBuZWVkIGFueW1vcmUKKyAgICBmb3IgdGhlIFBlcmwgc3BlY2lmaWMgX2cga2V5d29yZC4KKworIHBvL01ha2V2YXJzIHwgICAgMiArLQorIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgZTA2OGE2YjFiMTgyMWNjNTc1ODJlZGFhY2YxZTBlY2RhOGU5MjkxYQorQXV0aG9yOiBDaHJpc3RpYW4gUEVSUklFUiA8YnVidWxsZUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgQXVnIDI1IDA4OjE5OjE5IDIwMTAgKzAyMDAKKworICAgIFJldmlldyBieSBGbG9yZW50aW4gRHVuZWF1CisKKyBzY3JpcHRzL3BvL2ZyLnBvIHwgICAgNyArKystLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA2MmE3NTkzYWNhNWFkN2U4OTNhYzUyMzRiMmUxY2M1ZTdmNzJjMDQ4CitBdXRob3I6IENocmlzdGlhbiBQRVJSSUVSIDxidWJ1bGxlQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBBdWcgMjQgMTg6MjY6MjIgMjAxMCArMDIwMAorCisgICAgRnJlbmNoIHNjcmlwdHMgdHJhbnNsYXRpb24gdXBkYXRlCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMSArCisgc2NyaXB0cy9wby9mci5wbyB8ICAgODEgKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDQ0IGluc2VydGlvbnMoKyksIDM4IGRlbGV0aW9ucygtKQorCitjb21taXQgZGYzMDI0NjgzNmNmZDFkZDJiY2UwMThjYjY0ZDhhZTA0MGExMWQ0YworQXV0aG9yOiBDaHJpc3RpYW4gUEVSUklFUiA8YnVidWxsZUBkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgQXVnIDI0IDE4OjI1OjU2IDIwMTAgKzAyMDAKKworICAgIEZyZW5jaCBtYW5wYWdlcyB0cmFuc2xhdGlvbiB1cGRhdGUKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAxICsKKyBtYW4vcG8vZnIucG8gICAgIHwgIDI5OSArKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDEwNiBpbnNlcnRpb25zKCspLCAxOTQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA5MTgzN2NkYWE3OWU5N2RlMjQ0OTE3NThhYTY3ODhkZTViYzI2ODJjCitBdXRob3I6IENocmlzdGlhbiBQRVJSSUVSIDxidWJ1bGxlQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBBdWcgMjQgMTg6MjU6MjEgMjAxMCArMDIwMAorCisgICAgRnJlbmNoIHByb2dyYW1zIHRyYW5zbGF0aW9uIHVwZGF0ZQorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDEgKworIHBvL2ZyLnBvICAgICAgICAgfCAgMzQ4ICsrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAxNzggaW5zZXJ0aW9ucygrKSwgMTcxIGRlbGV0aW9ucygtKQorCitjb21taXQgZjQ3NTBhNjk1NTA3MzMwYTEwOTRjYThjYWE0NDBmNjdjNWI2NGY2ZAorQXV0aG9yOiBQZXRlciBLcmVmdGluZyA8cGV0ZXJrQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBBdWcgMjEgMjI6MTk6NDMgMjAxMCArMDEwMAorCisgICAgVXBkYXRlIFN3ZWRpc2ggdHJhbnNsYXRpb24uCisgICAgCisgICAgbWFuL3BvL3N2LnBvOiAxOTM3dDBmMHUuCisKKyBtYW4vcG8vc3YucG8gfCAgIDIzICsrKysrKysrKysrKysrLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAxNCBpbnNlcnRpb25zKCspLCA5IGRlbGV0aW9ucygtKQorCitjb21taXQgZTNiYjNjOGM4MTFlZDQwM2FlMWIwMWJlMzU0MjFiMTVmYTEyN2NjZAorQXV0aG9yOiBQZXRlciBLcmVmdGluZyA8cGV0ZXJrQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBBdWcgMjEgMjI6MTE6MDQgMjAxMCArMDEwMAorCisgICAgQWRkIG1pc3NpbmcgY2hhbmdlbG9nIGVudHJpZXMgZm9yIHJlY2VudCB0cmFuc2xhdGlvbiB1cGRhdGVzLgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDkgKysrKysrKysrCisgMSBmaWxlcyBjaGFuZ2VkLCA5IGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAxZTFkNmZjYjJjZDRjZjE2MzY1MDg5MTMyNGQ4NDU3MmJiMzViMWViCitNZXJnZTogZTk2NjM4OCA5MDQ3NjQ5CitBdXRob3I6IFBldGVyIEtyZWZ0aW5nIDxwZXRlcmtAZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IEF1ZyAyMSAyMjowNTo1NSAyMDEwICswMTAwCisKKyAgICBNZXJnZSBicmFuY2ggJ2NoZXJyeS1waWNrLWdlcm1hbicgdG8gYXZvaWQgYnJlYWthZ2Ugd2hlbiBtZXJnaW5nIFBPIGZpbGVzLgorICAgIAorICAgIFRoZSBHZXJtYW4gdHJhbnNsYXRpb24gd2FzIHVwZGF0ZWQgb24gbWFzdGVyLCBiZWZvcmUgaXQgd2FzIGFubm91bmNlZCB0aGF0CisgICAgdGhleSBzaG91bGQgYmUgY29tbWl0dGVkIHRvIHRoZSBzaWQgYnJhbmNoLiBUbyBhdm9pZCBmdXJ0aGVyIGJyZWFrYWdlIHdoZW4KKyAgICBtZXJnaW5nIHRoZSBmaWxlcywgdGhlIGNoYW5nZXMgZnJvbSBtYXN0ZXIgaGFzIGJlZW4gY2hlcnJ5LXBpY2tlZCBvdmVyIHRvCisgICAgc2lkIHZpYSBhIHRvcGljIGJyYW5jaC4gVGhpcyBtZXJnZXMgdGhlIHNhbWUgYnJhbmNoIG92ZXIgdG8gbWFzdGVyIHRvCisgICAgbWFrZSBzdXJlIHRoZSBicmFuY2hlcyBhZ3JlZSB0byB0aGUgZmlsZSBjb250ZW50cy4KKworY29tbWl0IDQwZTExNjcxN2E2NTRhOWVhY2Q3OTdkOWZkNzBiODAyZDk3MTAzZWUKK01lcmdlOiA1ZTYyNWJlIDkwNDc2NDkKK0F1dGhvcjogUGV0ZXIgS3JlZnRpbmcgPHBldGVya0BkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgQXVnIDIxIDIyOjAyOjE5IDIwMTAgKzAxMDAKKworICAgIE1lcmdlIGJyYW5jaCAnY2hlcnJ5LXBpY2stZ2VybWFuJyBpbnRvIHNpZAorICAgIAorICAgIFRoZSBHZXJtYW4gdHJhbnNsYXRpb24gd2FzIHVwZGF0ZWQgb24gbWFzdGVyLCBiZWZvcmUgaXQgd2FzIGFubm91bmNlZCB0aGF0CisgICAgdGhleSBzaG91bGQgYmUgY29tbWl0dGVkIHRvIHRoZSBzaWQgYnJhbmNoLiBUbyBhdm9pZCBmdXJ0aGVyIGJyZWFrYWdlIHdoZW4KKyAgICBtZXJnaW5nIHRoZSBmaWxlcywgdGhlIGNoYW5nZXMgZnJvbSBtYXN0ZXIgaGFzIGJlZW4gY2hlcnJ5LXBpY2tlZCBvdmVyIHRvCisgICAgc2lkIHZpYSBhIHRvcGljIGJyYW5jaC4KKworY29tbWl0IDkwNDc2NDlhMDZmMGZiNTk5NzM0OTg2YzVkZDEzOTkwYTAxOTBmZTQKK0F1dGhvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitEYXRlOiAgIFRodSBKdWwgMjkgMTk6Mjk6MDMgMjAxMCArMDIwMAorCisgICAgVXBkYXRlIEdlcm1hbiB0cmFuc2xhdGlvbiBvZiBtYW51YWwgcGFnZXMKKyAgICAKKyAgICBVcGRhdGUgdG8gMTkzNnQuCisKKyBtYW4vcG8vZGUucG8gfCAgIDMzICsrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMTAgaW5zZXJ0aW9ucygrKSwgMjMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAwMDk3ODhkMzAxMjk4Y2Y2ZGY5NWU4MzQzMWMwZTQ5ZTk0MjU5YzNiCitBdXRob3I6IEhlbGdlIEtyZXV0em1hbm4gPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorRGF0ZTogICBUaHUgSnVsIDI5IDE4OjUwOjU3IDIwMTAgKzAyMDAKKworICAgIFVwZGF0ZSBHZXJtYW4gc2NyaXB0cyB0cmFuc2xhdGlvbgorICAgIAorICAgIFVwZGF0ZSB0byA1MTN0CisKKyBzY3JpcHRzL3BvL2RlLnBvIHwgICA1OSArKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCA1NiBkZWxldGlvbnMoLSkKKworY29tbWl0IDVjMTE4MWUwZTRhOGQ0NTIwNDA4YTlmNzBiYmE4YjNhMzQwM2FjOTUKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgQXVnIDIxIDIwOjE5OjE1IDIwMTAgKzAyMDAKKworICAgIFJlZ2VuZXJhdGUgLnBvdCBmaWxlcyBhbmQgbWVyZ2UgLnBvIGZpbGVzIHdpdGggdGhlbQorICAgIAorICAgIFBpY2tlZCB0aGUgZGUucG8gY2hhbmdlcyBzcGVjaWZpY2FsbHkgdG8gbWFrZSBpdCBwb3NzaWJsZSB0byBjaGVycnktcGljayB0aGUKKyAgICBHZXJtYW4gdHJhbnNsYXRpb24gY2hhbmdlcyBmcm9tIG1hc3RlciBvdmVyIHRvIHNpZCB3aXRob3V0IGNhdXNpbmcKKyAgICBjb25mbGljdHMuCisKKyBkc2VsZWN0L3BvL2RlLnBvIHwgICAgMiArLQorIG1hbi9wby9kZS5wbyAgICAgfCAgNTY1ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2RlLnBvICAgICAgICAgfCAgIDE4ICstCisgc2NyaXB0cy9wby9kZS5wbyB8ICAgNjYgKysrKy0tLS0KKyA0IGZpbGVzIGNoYW5nZWQsIDM0NCBpbnNlcnRpb25zKCspLCAzMDcgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA1ZTYyNWJlMmZjYzFjZjkyNzQ1ZDQzY2EzMzNmYzE5OTdkMzFjMjE3CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IEF1ZyAyMSAyMDoxOToxNSAyMDEwICswMjAwCisKKyAgICBSZWdlbmVyYXRlIC5wb3QgZmlsZXMgYW5kIG1lcmdlIC5wbyBmaWxlcyB3aXRoIHRoZW0KKworIGRzZWxlY3QvcG8vYnMucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vY2EucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vY3MucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vZGEucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vZGUucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vZHNlbGVjdC5wb3QgIHwgICAgNCArLQorIGRzZWxlY3QvcG8vZWwucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vZXMucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vZXQucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vZXUucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vZnIucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vZ2wucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vaHUucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vaWQucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vaXQucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vamEucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8va28ucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vbmIucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vbmwucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vbm4ucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vcGwucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vcHQucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vcHRfQlIucG8gICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vcm8ucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vcnUucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vc2sucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vc3YucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vdGwucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vdmkucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vemhfQ04ucG8gICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vemhfVFcucG8gICAgIHwgICAgMiArLQorIG1hbi9wby9kZS5wbyAgICAgICAgICAgIHwgIDU2NSArKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLQorIG1hbi9wby9kcGtnLW1hbi5wb3QgICAgIHwgIDUyNyArKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0KKyBtYW4vcG8vZXMucG8gICAgICAgICAgICB8ICA1NTEgKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLQorIG1hbi9wby9mci5wbyAgICAgICAgICAgIHwgIDU1MSArKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tCisgbWFuL3BvL2h1LnBvICAgICAgICAgICAgfCAgNTMzICsrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLQorIG1hbi9wby9qYS5wbyAgICAgICAgICAgIHwgIDUzNyArKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0KKyBtYW4vcG8vcGwucG8gICAgICAgICAgICB8ICA1NTEgKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLQorIG1hbi9wby9wdF9CUi5wbyAgICAgICAgIHwgIDUzMyArKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0KKyBtYW4vcG8vcnUucG8gICAgICAgICAgICB8ICA1MzcgKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tCisgbWFuL3BvL3N2LnBvICAgICAgICAgICAgfCAgNjM4ICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vYXN0LnBvICAgICAgICAgICAgICAgfCAgIDE4ICstCisgcG8vYnMucG8gICAgICAgICAgICAgICAgfCAgIDE4ICstCisgcG8vY2EucG8gICAgICAgICAgICAgICAgfCAgIDE4ICstCisgcG8vY3MucG8gICAgICAgICAgICAgICAgfCAgIDE4ICstCisgcG8vZGEucG8gICAgICAgICAgICAgICAgfCAgIDE4ICstCisgcG8vZGUucG8gICAgICAgICAgICAgICAgfCAgIDE4ICstCisgcG8vZHBrZy5wb3QgICAgICAgICAgICAgfCAgIDIwICstCisgcG8vZHoucG8gICAgICAgICAgICAgICAgfCAgIDE4ICstCisgcG8vZWwucG8gICAgICAgICAgICAgICAgfCAgIDE4ICstCisgcG8vZW8ucG8gICAgICAgICAgICAgICAgfCAgIDE4ICstCisgcG8vZXMucG8gICAgICAgICAgICAgICAgfCAgIDE4ICstCisgcG8vZXQucG8gICAgICAgICAgICAgICAgfCAgIDE4ICstCisgcG8vZXUucG8gICAgICAgICAgICAgICAgfCAgIDE4ICstCisgcG8vZnIucG8gICAgICAgICAgICAgICAgfCAgIDE4ICstCisgcG8vZ2wucG8gICAgICAgICAgICAgICAgfCAgIDE4ICstCisgcG8vaHUucG8gICAgICAgICAgICAgICAgfCAgIDE4ICstCisgcG8vaWQucG8gICAgICAgICAgICAgICAgfCAgIDE4ICstCisgcG8vaXQucG8gICAgICAgICAgICAgICAgfCAgIDQ3ICsrLS0KKyBwby9qYS5wbyAgICAgICAgICAgICAgICB8ICAgMTggKy0KKyBwby9rbS5wbyAgICAgICAgICAgICAgICB8ICAgMTggKy0KKyBwby9rby5wbyAgICAgICAgICAgICAgICB8ICAgMTggKy0KKyBwby9rdS5wbyAgICAgICAgICAgICAgICB8ICAgMTggKy0KKyBwby9sdC5wbyAgICAgICAgICAgICAgICB8ICAgMTggKy0KKyBwby9tci5wbyAgICAgICAgICAgICAgICB8ICAgMTggKy0KKyBwby9uYi5wbyAgICAgICAgICAgICAgICB8ICAgMTggKy0KKyBwby9uZS5wbyAgICAgICAgICAgICAgICB8ICAgMTggKy0KKyBwby9ubC5wbyAgICAgICAgICAgICAgICB8ICAgMTggKy0KKyBwby9ubi5wbyAgICAgICAgICAgICAgICB8ICAgMTggKy0KKyBwby9wYS5wbyAgICAgICAgICAgICAgICB8ICAgMTggKy0KKyBwby9wbC5wbyAgICAgICAgICAgICAgICB8ICAgMTggKy0KKyBwby9wdC5wbyAgICAgICAgICAgICAgICB8ICAgMTggKy0KKyBwby9wdF9CUi5wbyAgICAgICAgICAgICB8ICAgMTggKy0KKyBwby9yby5wbyAgICAgICAgICAgICAgICB8ICAgMTggKy0KKyBwby9ydS5wbyAgICAgICAgICAgICAgICB8ICAgMTggKy0KKyBwby9zay5wbyAgICAgICAgICAgICAgICB8ICAgMTggKy0KKyBwby9zdi5wbyAgICAgICAgICAgICAgICB8ICAgMjMgKy0KKyBwby90aC5wbyAgICAgICAgICAgICAgICB8ICAgMTggKy0KKyBwby90bC5wbyAgICAgICAgICAgICAgICB8ICAgMTggKy0KKyBwby92aS5wbyAgICAgICAgICAgICAgICB8ICAgMTggKy0KKyBwby96aF9DTi5wbyAgICAgICAgICAgICB8ICAgMTggKy0KKyBwby96aF9UVy5wbyAgICAgICAgICAgICB8ICAgMTggKy0KKyBzY3JpcHRzL3BvL2NhLnBvICAgICAgICB8ICAgNjYgKysrLS0tCisgc2NyaXB0cy9wby9kZS5wbyAgICAgICAgfCAgIDY2ICsrKy0tLQorIHNjcmlwdHMvcG8vZHBrZy1kZXYucG90IHwgICA2OCArKystLS0KKyBzY3JpcHRzL3BvL2VzLnBvICAgICAgICB8ICAgNjYgKysrLS0tCisgc2NyaXB0cy9wby9mci5wbyAgICAgICAgfCAgIDY2ICsrKy0tLQorIHNjcmlwdHMvcG8vcGwucG8gICAgICAgIHwgICA2NiArKystLS0KKyBzY3JpcHRzL3BvL3J1LnBvICAgICAgICB8ICAgNjYgKysrLS0tCisgc2NyaXB0cy9wby9zdi5wbyAgICAgICAgfCAgMTIwICsrKy0tLS0tLS0KKyA5MCBmaWxlcyBjaGFuZ2VkLCAzNTQzIGluc2VydGlvbnMoKyksIDM0MDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBmNDIzNDRiNWZiM2ZkYTQ4N2ViMWI3NTgzYmQxYmQyZWM4NGYyMzM0CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IEF1ZyAyMSAxNjoyODowMyAyMDEwICswMjAwCisKKyAgICBkcGtnLWdlbmNoYW5nZXM6IGNvcnJlY3RseSB0cnVuY2F0ZSBkZXNjcmlwdGlvbnMgd2l0aCBtdWx0aWJ5dGUgY2hhcmFjdGVycworICAgIAorICAgIEVuc3VyZSB0aGUgc2NhbGFyIHVzZWQgdG8gdHJ1bmNhdGUgdGhlIGRlc2NyaXB0aW9uIGlzIGNoYXJhY3Rlci1iYXNlZAorICAgIGFuZCBub3QgYnl0ZS1iYXNlZC4gQnV0IHN3aXRjaCBpdCBiYWNrIHRvIGEgYnl0ZS1iYXNlZCBzY2FsYXIgYWZ0ZXJ3YXJkcworICAgIHRvIGF2b2lkIGJhZC1jb252ZXJzaW9uIHRvIGxhdGluMSB3aGVuIG91dHB1dCBpbiBhIGZpbGVoYW5kbGUgd2l0aG91dAorICAgIGFueSBleHBsaWNpdCBlbmNvZGluZC4KKyAgICAKKyAgICBUaGlzIHNob3VsZCByZWFsbHkgYmUgZml4ZWQgaW4gRHBrZzo6Q29udHJvbCBidXQgdGhhdCB3b3VsZCBiZSBhbiBpbnZhc2l2ZQorICAgIGNoYW5nZSBhdCB0aGlzIHBvaW50IG9mIHRoZSBzcXVlZXplIHJlbGVhc2UuCisgICAgCisgICAgUmVwb3J0ZWQtYnk6IENvbGluIFdhdHNvbiA8Y2p3YXRzb25AdWJ1bnR1LmNvbT4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgIHwgICAgNCArKysrCisgc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGwgfCAgICAzICsrLQorIDIgZmlsZXMgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgYmJjMzBmYjUxM2Q4OTFhNmRlNzdlMTVlZjhkNmZmYjE4N2M2YmM1YQorQXV0aG9yOiBUaGUgRnVuZ2kgPGZ1bmdpQHl1Z2dvdGgub3JnPgorRGF0ZTogICBUaHUgQXVnIDE5IDE3OjQyOjA3IDIwMTAgKzAwMDAKKworICAgIGRwa2coMSk6IENsYXJpZnkgZWZmZWN0IG9mIC0tcHVyZ2Ugb24gZmlsZXMgaW4gaG9tZWRpcnMKKyAgICAKKyAgICBDbG9zZXM6ICM1OTM2MjgKKyAgICAKKyAgICBTaWduZWQtb2ZmLWJ5OiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMiArKworIG1hbi9kcGtnLjEgICAgICAgfCAgICA4ICsrKysrLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCA3IGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA0NDY1MGIzYzhlOTZhNjkwMjE1MTBiOGI0MDI0OGM1YjQyZTdkZTBiCitBdXRob3I6IE1pbG8gQ2FzYWdyYW5kZSA8bWlsb0B1YnVudHUuY29tPgorRGF0ZTogICBTYXQgQXVnIDIxIDA5OjUzOjI4IDIwMTAgKzAyMDAKKworICAgIFVwZGF0ZSBJdGFsaWFuIHByb2dyYW0gdHJhbnNsYXRpb24KKyAgICAKKyAgICBDbG9zZXM6ICM1OTI5NTMKKyAgICAKKyAgICBTaWduZWQtb2ZmLWJ5OiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgNCArCisgcG8vaXQucG8gICAgICAgICB8ICA5NjIgKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAzMTcgaW5zZXJ0aW9ucygrKSwgNjQ5IGRlbGV0aW9ucygtKQorCitjb21taXQgMTZlM2I3MTI4M2Q1M2Y1Njc3NGUxYWFjZWI1NjdmODk4ZGMxMzg5YworQXV0aG9yOiBKb2V5IEhlc3MgPGpvZXloQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBBdWcgMTcgMTc6MDA6NDQgMjAxMCAtMDQwMAorCisgICAgZHBrZy1zb3VyY2UoMSk6IEltcHJvdmUgZ2l0IGZvcm1hdCBkb2N1bWVudGF0aW9uCisgICAgCisgICAgQmFzZWQtb24tcGF0Y2gtYnk6IFRhbmd1eSBPcnRvbG8KKyAgICBTaWduZWQtb2ZmLWJ5OiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKyBkZWJpYW4vY2hhbmdlbG9nICB8ICAgIDIgKysKKyBtYW4vZHBrZy1zb3VyY2UuMSB8ICAgMTIgKysrKysrKysrLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAxMSBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQorCitjb21taXQgNjcyYjA2NjRjYmI4ZmQ3ZmQ1ZWVhN2FiMTBhZjFiYmY2ODcxODMzZgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBBdWcgMjEgMDg6MTI6MzcgMjAxMCArMDIwMAorCisgICAgbGliZHBrZzogRG8gbm90IHByaW50IGJvZ3VzIHdhcm5pbmdzIHdoZW4gcGFyc2luZyBzdGF0dXMgZmlsZXMKKyAgICAKKyAgICBXaGVuIHJlYWNoaW5nIHRoZSBoYWxmLWluc3RhbGxlZCBzdGF0ZSBkdXJpbmcgdGhlIHVucGFja2luZyBvZiBhCisgICAgcGFja2FnZSB3aGljaCB3YXMgcHJldmlvdXNseSBpbiBub3QtaW5zdGFsbGVkIHN0YXRlLCB0aGUgY3VycmVudCBjb2RlCisgICAgd2FzIHByb2R1Y2luZyBib2d1cyB3YXJuaW5ncyB3aGVuIHBhcnNpbmcgdGhlIHN0YXR1cyBvciBzdGF0dXMgbG9nCisgICAgZmlsZXMgb24gbWlzc2luZyBEZXNjcmlwdGlvbiBhbmQgTWFpbnRhaW5lciBmaWVsZHMsIGdpdmVuIHRoYXQgdGhvc2UKKyAgICBhcmUgbm90IHlldCBpbiBwbGFjZS4KKyAgICAKKyAgICBUaGlzIGJ1ZyB3YXMgdW5jb3ZlcmVkIHdoZW4gZW5hYmxpbmcgcGFyc2VyIHdhcm5pbmdzIGZvciBldmVyeXRoaW5nIGluCisgICAgY29tbWl0IDMwYmQ3ZGRiZmZlM2FkNGI1ZDVkYzc4YzVkZDFiMGY1YjA3Y2NmZDYuCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgOCArKysrKysrKworIGxpYi9kcGtnL3BhcnNlLmMgfCAgIDEzICsrKysrKysrKy0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDE3IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBlOTY2Mzg4NjY1MmM4YmVlMmRjMDMyYzI2MGRiNGY5ZjRiNDAzMTNkCitNZXJnZTogYzMzODg0NSA0ZTVhYmZkCitBdXRob3I6IFBldGVyIEtyZWZ0aW5nIDxwZXRlcmtAZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIEF1ZyAxOCAwODoxNDozNiAyMDEwICswMTAwCisKKyAgICBNZXJnZSBicmFuY2ggJ3NpZCcgdG8gYXZvaWQgYnJlYWthZ2Ugd2hlbiBtZXJnaW5nIFBPIGZpbGVzLgorICAgIAorICAgIEkgdXBkYXRlZCB0aGUgU3dlZGlzaCBQTyBmaWxlcyBvbiB0aGUgbWFzdGVyIGJyYW5jaCBiZWZvcmUgcmVhZGluZyB0aGF0CisgICAgSSBzaG91bGQgdXBkYXRlIHRoZW0gb24gdGhlIHNpZCBicmFuY2guIE1lcmdlIHRoZSBjaGVycnktcGlja2VkIGNvbW1pdAorICAgIGZyb20gc2lkIHRoYXQgY29udGFpbnMgdGhlIHNhbWUgY2hhbmdlcyBJIGNvbW1pdHRlZCB0byBtYXN0ZXIsIHRvIG1ha2UKKyAgICBzdXJlIGEgZnV0dXJlIG1lcmdlIGZyb20gc2lkIGRvZXMgbm90IGNhdXNlIGNvbmZsaWN0cyBoZXJlLgorICAgIAorICAgIFNvcnJ5IGZvciB0aGUgbm9pc2UuCisKK2NvbW1pdCA0ZTVhYmZkYzQ0ZDc5ZTIyYmRjMjdjMGEzNDMyNDA4NjgzMDg5OTIzCitBdXRob3I6IFBldGVyIEtyZWZ0aW5nIDxwZXRlcmtAZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIEF1ZyAxNyAxOTo1NDo1NiAyMDEwICswMTAwCisKKyAgICBVcGRhdGUgU3dlZGlzaCB0cmFuc2xhdGlvbi4KKyAgICAKKyAgICBwby9zdi5wbzogOTg2dDBmMHUuCisgICAgbWFuL3BvL3N2LnBvOiAxOTM2dDBmMHUuCisgICAgc2NyaXB0cy9wby9zdi5wbzogNTEzdDBmMHUuCisKKyBtYW4vcG8vc3YucG8gICAgIHwgICA4NSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL3N2LnBvICAgICAgICAgfCAgIDIyICsrKysrKystLS0tLS0tCisgc2NyaXB0cy9wby9zdi5wbyB8ICAgIDUgKystCisgMyBmaWxlcyBjaGFuZ2VkLCA2OCBpbnNlcnRpb25zKCspLCA0NCBkZWxldGlvbnMoLSkKKworY29tbWl0IGMzMzg4NDVjMDVkZTE5OTkyYjlmMzA3ZDI1OTkyM2E5NDM0OGE1MzQKK0F1dGhvcjogUGV0ZXIgS3JlZnRpbmcgPHBldGVya0BkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgQXVnIDE3IDE5OjU0OjU2IDIwMTAgKzAxMDAKKworICAgIFVwZGF0ZSBTd2VkaXNoIHRyYW5zbGF0aW9uLgorICAgIAorICAgIHBvL3N2LnBvOiA5ODZ0MGYwdS4KKyAgICBtYW4vcG8vc3YucG86IDE5MzZ0MGYwdS4KKyAgICBzY3JpcHRzL3BvL3N2LnBvOiA1MTN0MGYwdS4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICA1ICsrKworIG1hbi9wby9zdi5wbyAgICAgfCAgIDg1ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vc3YucG8gICAgICAgICB8ICAgMjIgKysrKysrKy0tLS0tLS0KKyBzY3JpcHRzL3BvL3N2LnBvIHwgICAgNSArKy0KKyA0IGZpbGVzIGNoYW5nZWQsIDczIGluc2VydGlvbnMoKyksIDQ0IGRlbGV0aW9ucygtKQorCitjb21taXQgYjQ1MTNmMTQ0OWVmN2UyOGUyNTQxMTViMzRmNWQxZWY4YzNkOTRkMAorTWVyZ2U6IGFlOTQ3ZTEgMjQ5OTg1MAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBBdWcgMTMgMDY6NDY6MDMgMjAxMCArMDIwMAorCisgICAgTWVyZ2UgYnJhbmNoICdzaWQnICh0aHJvdWdoIHRhZyAnMS4xNS44LjQnKQorICAgIAorICAgIENvbmZsaWN0czoKKyAgICAJZGViaWFuL2NoYW5nZWxvZworICAgIAlzY3JpcHRzL3BvL2RlLnBvCisKK2NvbW1pdCAyNDk5ODUwZmQwMzM5NWIzN2NlNzdjYzg0OTc2NjU2NzY3MDU2Njc0CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEF1ZyAxMyAwNToyMTozMSAyMDEwICswMjAwCisKKyAgICBSZWxlYXNlIDEuMTUuOC40CisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgNCArKy0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBmNTRiYjRmMmNiZWI2NGMzZmNkZGIyZjcwYWQxMmViNGIzZWY1NjA4CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEF1ZyAxMyAwNjoxNjoyOSAyMDEwICswMjAwCisKKyAgICBSZWdlbmVyYXRlIC5wb3QgZmlsZXMgYW5kIG1lcmdlIC5wbyBmaWxlcyB3aXRoIHRoZW0KKworIGRzZWxlY3QvcG8vYnMucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vY2EucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vY3MucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vZGEucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vZGUucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vZHNlbGVjdC5wb3QgIHwgICAgNCArLQorIGRzZWxlY3QvcG8vZWwucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vZXMucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vZXQucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vZXUucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vZnIucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vZ2wucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vaHUucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vaWQucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vaXQucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vamEucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8va28ucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vbmIucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vbmwucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vbm4ucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vcGwucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vcHQucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vcHRfQlIucG8gICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vcm8ucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vcnUucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vc2sucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vc3YucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vdGwucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vdmkucG8gICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vemhfQ04ucG8gICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vemhfVFcucG8gICAgIHwgICAgMiArLQorIHBvL2FzdC5wbyAgICAgICAgICAgICAgIHwgIDQzNSArKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2JzLnBvICAgICAgICAgICAgICAgIHwgIDQyMiArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9jYS5wbyAgICAgICAgICAgICAgICB8ICA0MzIgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9jcy5wbyAgICAgICAgICAgICAgICB8ICA0MzUgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9kYS5wbyAgICAgICAgICAgICAgICB8ICA0MzIgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9kZS5wbyAgICAgICAgICAgICAgICB8ICA0MzUgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9kcGtnLnBvdCAgICAgICAgICAgICB8ICA0MjQgKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vZHoucG8gICAgICAgICAgICAgICAgfCAgNDMyICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vZWwucG8gICAgICAgICAgICAgICAgfCAgNDMyICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vZW8ucG8gICAgICAgICAgICAgICAgfCAgNDM1ICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vZXMucG8gICAgICAgICAgICAgICAgfCAgNDMyICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vZXQucG8gICAgICAgICAgICAgICAgfCAgNDMxICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9ldS5wbyAgICAgICAgICAgICAgICB8ICA0MzUgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9mci5wbyAgICAgICAgICAgICAgICB8ICA0MzUgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9nbC5wbyAgICAgICAgICAgICAgICB8ICA0MzIgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9odS5wbyAgICAgICAgICAgICAgICB8ICA0MzIgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9pZC5wbyAgICAgICAgICAgICAgICB8ICA0MzIgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9pdC5wbyAgICAgICAgICAgICAgICB8ICA0MzUgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9qYS5wbyAgICAgICAgICAgICAgICB8ICA0MzIgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9rbS5wbyAgICAgICAgICAgICAgICB8ICA0MzIgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9rby5wbyAgICAgICAgICAgICAgICB8ICA0MzIgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9rdS5wbyAgICAgICAgICAgICAgICB8ICA0MzUgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9sdC5wbyAgICAgICAgICAgICAgICB8ICA0MzIgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9tci5wbyAgICAgICAgICAgICAgICB8ICA0MzIgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9uYi5wbyAgICAgICAgICAgICAgICB8ICA0MzIgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9uZS5wbyAgICAgICAgICAgICAgICB8ICA0MzIgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9ubC5wbyAgICAgICAgICAgICAgICB8ICA0MzIgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9ubi5wbyAgICAgICAgICAgICAgICB8ICA0MzIgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9wYS5wbyAgICAgICAgICAgICAgICB8ICA0MzEgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9wbC5wbyAgICAgICAgICAgICAgICB8ICA0MzUgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9wdC5wbyAgICAgICAgICAgICAgICB8ICA0MzIgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9wdF9CUi5wbyAgICAgICAgICAgICB8ICA0MzIgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9yby5wbyAgICAgICAgICAgICAgICB8ICA0MzIgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9ydS5wbyAgICAgICAgICAgICAgICB8ICA0MzUgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9zay5wbyAgICAgICAgICAgICAgICB8ICA0MzUgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9zdi5wbyAgICAgICAgICAgICAgICB8ICA0MzUgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby90aC5wbyAgICAgICAgICAgICAgICB8ICA0MzIgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby90bC5wbyAgICAgICAgICAgICAgICB8ICA0MzIgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby92aS5wbyAgICAgICAgICAgICAgICB8ICA0MzIgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby96aF9DTi5wbyAgICAgICAgICAgICB8ICA0MzUgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby96aF9UVy5wbyAgICAgICAgICAgICB8ICA0MzIgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBzY3JpcHRzL3BvL2NhLnBvICAgICAgICB8ICAgMTEgKy0KKyBzY3JpcHRzL3BvL2RlLnBvICAgICAgICB8ICAgMTEgKy0KKyBzY3JpcHRzL3BvL2Rwa2ctZGV2LnBvdCB8ICAgMTMgKy0KKyBzY3JpcHRzL3BvL2VzLnBvICAgICAgICB8ICAgMTEgKy0KKyBzY3JpcHRzL3BvL2ZyLnBvICAgICAgICB8ICAgMTEgKy0KKyBzY3JpcHRzL3BvL3BsLnBvICAgICAgICB8ICAgMTEgKy0KKyBzY3JpcHRzL3BvL3J1LnBvICAgICAgICB8ICAgMTEgKy0KKyBzY3JpcHRzL3BvL3N2LnBvICAgICAgICB8ICAgMTEgKy0KKyA4MCBmaWxlcyBjaGFuZ2VkLCA5MjI1IGluc2VydGlvbnMoKyksIDg2NjAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA2NTk4Mjc0ZTliMDRmZjc5NDBjMWQwMjAxYjY2Yzg3Yzc5NjA0ZjU2CitBdXRob3I6IFN2ZW4gSm9hY2hpbSA8c3ZlbmpvYWNAZ214LmRlPgorRGF0ZTogICBGcmkgQXVnIDEzIDA1OjU1OjAyIDIwMTAgKzAyMDAKKworICAgIFJlbW92ZSBzcHVyaW91cyBsZWZ0b3ZlciAuZHBrZy10bXAgZmlsZXMgYWZ0ZXIgdW5wYWNraW5nIGZhaWx1cmUKKyAgICAKKyAgICBSZW5hbWluZyB0aGUgYmFja3VwIGNvcHkgdG8gdGhlIG9sZCBuYW1lIGlzIGEgbm8tb3AgaWYgdGhlc2UgYXJlCisgICAgaGFyZCBsaW5rcyB0byB0aGUgc2FtZSBmaWxlLiBTbyB3ZSBuZWVkIHRvIHJlbW92ZSB0aGUgYmFja3VwIGNvcHkKKyAgICBhZnRlcndhcmRzIHRvIG1ha2Ugc3VyZSBpdCBpcyBnb25lLgorICAgIAorICAgIENsb3NlczogIzU5MTk5MworICAgIAorICAgIFNpZ25lZC1vZmYtYnk6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICA1ICsrKysrCisgc3JjL2NsZWFudXAuYyAgICB8ICAgIDQgKysrKworIDIgZmlsZXMgY2hhbmdlZCwgOSBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgNTVlZDdlZjRhYzQ3YWJlYzkwNTVlNzhiZjliNWZmOGMxYjYwMDZhZAorQXV0aG9yOiBGYWJpYW4gR3JvZmZlbiA8Z3JvYmlhbkBnZW50b28ub3JnPgorRGF0ZTogICBGcmkgQXVnIDEzIDA0OjQzOjAzIDIwMTAgKzAyMDAKKworICAgIHUtYTogSW5jbHVkZSA8bGltaXRzLmg+IGZvciBfUE9TSVhfTUFYX1BBVEgKKyAgICAKKyAgICBOZWVkZWQgb24gYXQgbGVhc3QgU29sYXJpcyBhbmQgRGFyd2luLCBhbmQgYXMgZGVmaW5lZCBwZXIgUE9TSVguCisgICAgCisgICAgU2lnbmVkLW9mZi1ieTogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgIHwgICAgMSArCisgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jIHwgICAgMSArCisgMiBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBhOTgwOWZjNDljNjMzYTgwYmI4ZTEzNDg1YTFiZmIxY2JmNjJkNTIyCitBdXRob3I6IEZhYmlhbiBHcm9mZmVuIDxncm9iaWFuQGdlbnRvby5vcmc+CitEYXRlOiAgIEZyaSBBdWcgMTMgMDQ6NDE6MTMgMjAxMCArMDIwMAorCisgICAgYnVpbGQ6IExpbmsgdS1hIGFnYWluc3QgbGliaW50bCBpZiBsaWJjIGRvZXMgbm90IGhhdmUgaTE4biBzdXBwb3J0CisgICAgCisgICAgVGhpcyBoYXBwZW5zIG9uIGF0IGxlYXN0IFNvbGFyaXMgYW5kIERhcndpbi4KKyAgICAKKyAgICBTaWduZWQtb2ZmLWJ5OiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKyBkZWJpYW4vY2hhbmdlbG9nICB8ICAgIDQgKysrKworIHV0aWxzL01ha2VmaWxlLmFtIHwgICAgMSArCisgMiBmaWxlcyBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA1MGE5NTE5Mzk3YjY2NjJkZDUzNzZmYWFhYTQ5NWJmMDRiYWZjNGY1CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIEF1ZyAxMSAxNjoxMjozMCAyMDEwICswMjAwCisKKyAgICBkcGtnLXN0YXRvdmVycmlkZTogRml4IHR5cG9zCisKKyBzcmMvc3RhdGNtZC5jIHwgICAgNCArKy0tCisgc3JjL3N0YXRkYi5jICB8ICAgIDIgKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworY29tbWl0IDM1N2FiMzg1NzUwYzFjYjY1N2ZmOTVjMGIzNGFkMGE2YmY2ZDJjZGYKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgQXVnIDExIDE1OjE2OjA0IDIwMTAgKzAyMDAKKworICAgIGxpYmRwa2c6IFdoZW4gcGFyc2luZyBkYXRhYmFzZSBmaWxlcyBvbmx5IHdhcm4gb24gYm9ndXMgdmVyc2lvbnMKKyAgICAKKyAgICBUaG9zZSB2ZXJzaW9ucywgYWx0aG91Z2ggYm9ndXMsIHdlcmUgcHJldmlvdXNseSBhY2NlcHRlZCwgc28gdG8gYXZvaWQKKyAgICBicmVha2luZyBzeXN0ZW1zIGJ5IG1ha2luZyBkcGtnIHJlZnVzZSB0byBwYXJzZSB0aGUgc3RhdHVzIGFuZCBhdmFpbGFibGUKKyAgICBmaWxlcywgd2UganVzdCBtYWtlIGl0IHdhcm4gZm9yIG5vdywgYW5kIHdpbGwgbWFrZSBpdCBlcnJvciBvdXQgb24KKyAgICBzdGF0dXMgZmlsZSBwYXJzaW5nIGxhdGVyIG9uLgorICAgIAorICAgIFdlIGtlZXAgcHJvZHVjaW5nIGVycm9ycyBvbiB0aGUgcmVzdCBvZiB2ZXJzaW9uIHBhcnNpbmcgdG8gYXZvaWQgbmV3bHkKKyAgICBpbnRyb2R1Y2VkIGJvZ29zaXR5IGFuZCBzbyB0aGF0IHBhY2thZ2VzIGdldCBmaXhlZCwgd2hpbGUgbm90IG1ha2luZyB0aGUKKyAgICBzeXN0ZW0gdW51c2FibGUgYW55bW9yZS4KKyAgICAKKyAgICBDbG9zZXM6ICM1OTA4ODUsICM1OTA4OTYsICM1OTE2OTIsICM1OTE4ODUKKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgIHwgICAgMyArKworIGxpYi9kcGtnL2RibW9kaWZ5LmMgIHwgICAgOCArKystLQorIGxpYi9kcGtnL2Rwa2ctZGIuaCAgIHwgICAgNSArKy0KKyBsaWIvZHBrZy9maWVsZHMuYyAgICB8ICAgMjcgKysrKystLS0tLS0tLS0tLS0KKyBsaWIvZHBrZy9wYXJzZWR1bXAuaCB8ICAgIDQgKysKKyBsaWIvZHBrZy9wYXJzZWhlbHAuYyB8ICAgNzggKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLQorIHNyYy91cGRhdGUuYyAgICAgICAgIHwgICAgMyArLQorIDcgZmlsZXMgY2hhbmdlZCwgMTAyIGluc2VydGlvbnMoKyksIDI2IGRlbGV0aW9ucygtKQorCitjb21taXQgMzBiZDdkZGJmZmUzYWQ0YjVkNWRjNzhjNWRkMWIwZjViMDdjY2ZkNgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBBdWcgMTEgMTU6NTE6NTYgMjAxMCArMDIwMAorCisgICAgbGliZHBrZzogQWx3YXlzIHByaW50IGEgbWFzc2FnZSBvbiB3YXJuaW5nIHdoZW4gcGFyc2luZyBjb250cm9sIGZpbGVzCisgICAgCisgICAgVGhlIHdhcm5pbmdzIHdlcmUgb25seSBiZWluZyBpc3N1ZXMgb24gZHBrZy1kZWIgcGFyc2luZywgd2hpY2ggZ3JlYXRseQorICAgIGRlZmVhdHMgdGhlaXIgcHVycG9zZSwgYXMgdXNpbmcgZHBrZy1kZWIgaXMgbm90IHRydWx5IG5lZWRlZCB0bworICAgIGdlbmVyYXRlICcuZGViJyBwYWNrYWdlcy4gU28gcHJpbnRpbmcgYWx3YXlzIHdpbGwgZ2l2ZSB0aGVtIHdpZGVyCisgICAgZXhwb3N1cmUuCisgICAgCisgICAgVGhlIHBhcnNlX3dhcm4oKSBmdW5jdGlvbiBpcyBub3QgdXNpbmcgd2FybmluZygpIHRob3VnaCwgd2hpY2ggbWFrZXMKKyAgICB0aGUgb3V0cHV0IG1pc3MgdGhlIHByb2dyYW0gbmFtZSwgYnV0IHRoZSBjaGFuZ2VzIG5lZWRlZCBmb3IgdGhpcyBhcmUKKyAgICB0b28gaW50cnVzaXZlIGF0IHRoaXMgdGltZSwgYW5kIGl0J3Mgb25seSBhIGNvc21ldGljIGlzc3VlIGFmdGVyYWxsLCBzbworICAgIHdlJ2xsIGxlYXZlIHRoaXMgZm9yIGxhdGVyLgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDEgKworIGxpYi9kcGtnL3BhcnNlLmMgfCAgICA1ICsrKystCisgMiBmaWxlcyBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBlMjdjNTBmMjRkOTU5ZTBkZGYzYWM4YjE2M2YyMzVjMTBjZDU2NjE1CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEF1ZyAxMyAwNjoyMzoxMCAyMDEwICswMjAwCisKKyAgICBidWlsZDogRml4IHVuaW5zdGFsbCB0YXJnZXQgaW4gbWFuL01ha2VmaWxlLmFtCisgICAgCisgICAgTWlzc2VkIGluIGNvbW1pdCA0YmUyOGQ5OWRlMmM4ZmUyN2M2YzE2YmM5YzExNGY3Y2VmNTUwZjc5LgorCisgbWFuL01ha2VmaWxlLmFtIHwgICAgMiArKworIDEgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgZDlhZjU2OTAzOTA0MjllNmM1YmM5YzhhMmM0NmJhMTljZWRmMjFiYworQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBBdWcgMTEgMjI6MTc6MzkgMjAxMCArMDIwMAorCisgICAgRHBrZzo6U2hsaWJzOjpPYmpkdW1wOjpnZXRfZm9ybWF0KCkgZmFsbGJhY2sgdG8gaG9zdCBvYmpkdW1wIGlmIGNyb3NzIG9uZSBmYWlsZWQKKyAgICAKKyAgICBJbiBtYW55IGNhc2VzIHRoZSBjcm9zcyBvYmpkdW1wIGlzIG5vdCBhYmxlIHRvIGFuYWx5emUgdGhlIGJpbmFyaWVzIGZyb20KKyAgICB0aGUgYnVpbGQgaG9zdCBhbmQgeWV0IGRwa2ctc2hsaWJkZXBzIG5lZWQgdG8gYmUgYWJsZSB0byB2ZXJpZnkgdGhhdAorICAgIHRoZSB2YXJpb3VzIGJpbmFyaWVzIHVzZSB0aGUgc2FtZSBFTEYgZm9ybWF0LiBUbyBhY2hpZXZlIHRoaXMgZ2V0X2Zvcm1hdCgpCisgICAgaXMgZW5oYW5jZWQgdG8gZmFsbGJhY2sgb24gdGhlIG9iamR1bXAgY29tbWFuZCB3aGVuIHRoZSBjcm9zcyBvbmUgZmFpbGVkLgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICAgIHwgICAgMiArKworIHNjcmlwdHMvRHBrZy9TaGxpYnMvT2JqZHVtcC5wbSB8ICAgMjUgKysrKysrKysrKysrKysrKysrKy0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgMjEgaW5zZXJ0aW9ucygrKSwgNiBkZWxldGlvbnMoLSkKKworY29tbWl0IDRiZTI4ZDk5ZGUyYzhmZTI3YzZjMTZiYzljMTE0ZjdjZWY1NTBmNzkKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgQXVnIDExIDE1OjUwOjU2IDIwMTAgKzAyMDAKKworICAgIEZpeCBpbnN0YWxsIHRhcmdldCBpbiBtYW4vTWFrZWZpbGUuYW0KKyAgICAKKyAgICBDb21taXQgMzljNmRhYjg5YmJlYTlmZTMzNmY4NjliNjVlMzMxMDJiYTIzODIwNSBpbnRyb2R1Y2VkIGEgcmVncmVzc2lvbjoKKyAgICBtYWtlIGluc3RhbGwgZHVyaW5nIGEgcGFja2FnZSBidWlsZCBpbiBhIHRyZWUgZ2VuZXJhdGVkIGJ5IG1ha2UgZGlzdCB3b3VsZAorICAgIG5vIGxvbmdlciBpbnN0YWxsIHRoZSBtYW51YWwgcGFnZS4uLiBiZWNhdXNlIHRoZXkgYXJlIGFscmVhZHkgYnVpbHQgYW5kCisgICAgYXZhaWxhYmxlIGluICQoc3JjZGlyKSB3aGlsZSAkKENVUkRJUikgd2FzIG9rIGZvciB0aGUgY2FzZSB3aGVyZSB0aGUKKyAgICBtYW51YWwgcGFnZXMgYXJlIG5vdCBwcmUtYnVpbHQuCisgICAgCisgICAgTm8gd2UgdHJ5IGJvdGggcGF0aHMgYW5kIHBpY2sgdGhlIGZpcnN0IG9uZSB0aGF0IGV4aXN0cy4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICA1ICsrKysrCisgbWFuL01ha2VmaWxlLmFtICB8ICAgIDIgKysKKyAyIGZpbGVzIGNoYW5nZWQsIDcgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDU4YzdjZDMwZDY5MjY1MmIxZDUzM2E4MDljMWFlYTM5N2QzNWVhY2YKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgQXVnIDUgMTg6Mjk6MzkgMjAxMCArMDIwMAorCisgICAgdS1hOiBBZGQgbm9uLXJlZ3Jlc3Npb24gdGVzdCBmb3IgLS1yZW1vdmUtYWxsCisKKyB1dGlscy90LzEwMF91cGRhdGVfYWx0ZXJuYXRpdmVzLnQgfCAgIDE2ICsrKysrKysrKysrKysrLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDE0IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA5YjQ5NGRhNDVlYjI4ODNhMWIzOTdhNDJhYWM0YWRjMWY3ODk5YjZiCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IEF1ZyA1IDE3OjQ4OjQ1IDIwMTAgKzAyMDAKKworICAgIHUtYTogRml4IHVzZSBhZnRlciBmcmVlIGNhdXNpbmcgc2VnZmF1bHRzIG9uIC0tcmVtb3ZlLWFsbAorICAgIAorICAgIFJlZmFjdG9yIGFsdGVybmF0aXZlX2Nob2ljZXNfZnJlZSBmdW5jdGlvbiBhbmQgdXNlIGl0IGZyb20KKyAgICBhbHRlcm5hdGl2ZV9yZXNldCgpIGFuZCBmb3IgLS1yZW1vdmUtYWxsLiBUaGlzIHdhcyBjYXVzaW5nIHNlZ2ZhdWx0cworICAgIG9yIGJvZ3VzIG9wZXJhdGlvbiBieSBub3QgcmVtb3ZpbmcgYWxsIGNob2ljZXMuCisgICAgCisgICAgQ2xvc2VzOiAjNTkxNjUzLCAjNTkxNjU0CisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgfCAgICA3ICsrKysrKysKKyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmMgfCAgIDI3ICsrKysrKysrKysrKysrKysrLS0tLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgMjQgaW5zZXJ0aW9ucygrKSwgMTAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBhZTk0N2UxZDAzODA0NzA5MjRjOTkzODU5NTFmODZiOTM2NDkyYmM3CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIEF1ZyAzIDAzOjE3OjQ4IDIwMTAgKzAyMDAKKworICAgIGxpYmRwa2c6IEFkZCBtaXNzaW5nIHN5bWJvbHMgdG8gVmVyc2lvbnMgc2NyaXB0CisKKyBsaWIvZHBrZy9saWJkcGtnLlZlcnNpb25zIHwgICAgMiArKworIDEgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgNDk5MDg4YjJhNmU5NDk5MWQ1MTZjYjdlZTg1MTY5OGNjZWE1MTkyYgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBBdWcgMyAwMzoxMDowMSAyMDEwICswMjAwCisKKyAgICBNb3ZlIGdsb2IgbW9kdWxlIHRvIGxpYmRwa2cKKworIGxpYi9kcGtnL01ha2VmaWxlLmFtICAgICAgfCAgICAyICsrCisge3NyYyA9PiBsaWIvZHBrZ30vZ2xvYi5jICB8ICAgIDMgKy0tCisge3NyYyA9PiBsaWIvZHBrZ30vZ2xvYi5oICB8ICAgIDYgKysrLS0tCisgbGliL2Rwa2cvbGliZHBrZy5WZXJzaW9ucyB8ICAgIDMgKysrCisgcG8vUE9URklMRVMuaW4gICAgICAgICAgICB8ICAgIDEgKworIHNyYy9NYWtlZmlsZS5hbSAgICAgICAgICAgfCAgICAyIC0tCisgc3JjL2RpdmVydGNtZC5jICAgICAgICAgICB8ICAgIDIgKy0KKyBzcmMvc3RhdGNtZC5jICAgICAgICAgICAgIHwgICAgMiArLQorIDggZmlsZXMgY2hhbmdlZCwgMTIgaW5zZXJ0aW9ucygrKSwgOSBkZWxldGlvbnMoLSkKKworY29tbWl0IGY1NmM5ZmM2YTA3ZjYwOWExMjI2OTZjNDYzYzI1Y2FmNGViZDM2ZmYKK01lcmdlOiAwM2I0MzAwIDYyNGFhMGYKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gQXVnIDIgMTA6NTM6MzUgMjAxMCArMDIwMAorCisgICAgTWVyZ2UgYnJhbmNoICdzaWQnICh0aHJvdWdoIHRhZyAnMS4xNS44LjMnKQorICAgIAorICAgIENvbmZsaWN0czoKKyAgICAJZGViaWFuL2NoYW5nZWxvZworCitjb21taXQgNjI0YWEwZmFkYjlkYWYyNzU3NTYzMTk3ZmEzNzZiODIyM2QxMWYyZAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBBdWcgMiAxMDozODoyOCAyMDEwICswMjAwCisKKyAgICBSZWxlYXNlIDEuMTUuOC4zCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgNCArKy0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBmNGUxMTZiM2EyYWZkYmYyZWU5ZmMyNTU2NzgyZmE3Y2Q3NzMxNjVjCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIEF1ZyAyIDEwOjIxOjA2IDIwMTAgKzAyMDAKKworICAgIGxpYmRwa2c6IEZpeCBidWZmZXIgb3ZlcmZsb3cgaW4gZHBrZ19hcl9tZW1iZXJfcHV0X2hlYWRlcgorICAgIAorICAgIEl0IHdhcyBjYXVzaW5nIGl0IHRvIHdyaXRlIHRoZSBoZWFkZXIgdG8gZmQgMCAoaW5zdGVhZCBvZiBhcl9mZCkKKyAgICBkZXBlbmRpbmcgb24gdGhlIHN0YWNrIGxheW91dCwgYWZmZWN0aW5nIGFybWVsIHdoaWNoIHdhcyBnZW5lcmF0aW5nCisgICAgZW1wdHkgcGFja2FnZXMuCisgICAgCisgICAgQ2xvc2VzOiAjNTkxMzEyCisgICAgCisgICAgUmVwb3J0ZWQtYnk6IFBoaWxpcHAgS2VybiA8cGtlcm5AZGViaWFuLm9yZz4KKyAgICBCYXNlZC1vbi1wYXRjaC1ieTogUmVpbmhhcmQgVGFydGxlciA8c2lyZXRhcnRAdGF1d2FyZS5kZT4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICA3ICsrKysrKysKKyBsaWIvZHBrZy9hci5jICAgIHwgICAxMSArKysrKysrLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgMTQgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKKworY29tbWl0IDkwMzY2ODdhOGNiZDg3Y2UzMTlkZjU2ZGQzNjJiYjJhZGFlOTZmYzQKK0F1dGhvcjogSm9uYXRoYW4gTmllZGVyIDxqcm5pZWRlckBnbWFpbC5jb20+CitEYXRlOiAgIFN1biBBdWcgMSAwODo1OTo0NyAyMDEwICswMjAwCisKKyAgICBGaXggZHBrZy1kaXZlcnQgdGVzdCBzdWl0ZSB0byBjb3BlIHdpdGggKyBpbiB0aGUgYnVpbGQgZGlyZWN0b3J5IG5hbWUKKyAgICAKKyAgICBUaGUgZGlyZWN0b3J5IG5hbWUgd2FzIG5vdCBwcm9wZXJseSBlc2NhcGVkIGluIHJlZ3VsYXIgZXhwcmVzc2lvbnMKKyAgICBhbmQgbGVhZCB0byB0ZXN0IGZhaWx1cmVzIHdoZW4gaXQgY29udGFpbmVkICsgb3Igb3RoZXIgY2hhcmFjdGVycyB3aXRoCisgICAgc3BlY2lhbCBtZWFuaW5ncyBpbiByZWd1bGFyIGV4cHJlc3Npb25zLgorICAgIAorICAgIFNpZ25lZC1vZmYtYnk6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgIHwgICAgOCArKysrKysrKworIHNyYy90LzEwMF9kcGtnX2RpdmVydC50IHwgICAxMCArKysrKy0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAxMyBpbnNlcnRpb25zKCspLCA1IGRlbGV0aW9ucygtKQorCitjb21taXQgMDNiNDMwMGU1MWNlYzM1ZTQ5ZTM4YWVmMTRkNzJhY2I2YWRlYTZiYgorTWVyZ2U6IDc0NDRjODcgNGFlZDFkNworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBKdWwgMzEgMDQ6Mzk6MTkgMjAxMCArMDIwMAorCisgICAgTWVyZ2UgYnJhbmNoICdzaWQnICh0aHJvdWdoIHRhZyAnMS4xNS44LjInKQorICAgIAorICAgIENvbmZsaWN0czoKKyAgICAJZGViaWFuL2NoYW5nZWxvZworCitjb21taXQgNGFlZDFkNzI4OTU4NTg0NzY5ZDQ2OTU0MGU5YWU2MTAzZTEzZDQyNAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBKdWwgMzEgMDQ6MjA6MTggMjAxMCArMDIwMAorCisgICAgUmVsZWFzZSAxLjE1LjguMgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDQgKystLQorIDEgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgYzBmN2ZhZTE0OTg3ODAwMGY3NWZhMzg0ZmFiNGI5YTYwMGJiMTQzYQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBKdWwgMzEgMDQ6MDk6MzggMjAxMCArMDIwMAorCisgICAgZHBrZy1idWlsZHBhY2thZ2U6IEFsbG93IHNwZWNpZnlpbmcgYWJzb2x1dGUgYW5kIHJlbGF0aXZlIHBhdGhzIG9uIC1yCisgICAgCisgICAgUnJlZ3Jlc3Npb24gaW50cm9kdWNlZCBpbiA3MTA2YTJkMTQ4YWNlN2VhMWU3ODZlNDFlMTFmODQwODFiNDdmZWM4LgorICAgIAorICAgIENsb3NlczogIzU5MTAxMAorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgfCAgICAyICsrCisgc2NyaXB0cy9EcGtnL1BhdGgucG0gfCAgIDEyICsrKysrKysrKy0tLQorIDIgZmlsZXMgY2hhbmdlZCwgMTEgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworY29tbWl0IDBlMjVlM2E5MTMwMDA2OTJjOTdmYjUwYjM0ZDNiMTFmMGM5MmVhOWYKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgSnVsIDMwIDA0OjQwOjE2IDIwMTAgKzAyMDAKKworICAgIEJ1bXAgbGliZHBrZy1wZXJsIERlcGVuZHMgb24gZHBrZyB0byAxLjE1LjgKKyAgICAKKyAgICBJdCB3aWxsIGJyZWFrIGRwa2cgdmVyc2lvbnMgYmVmb3JlIHRoYXQgd2hlbiBpbnN0YWxsaW5nIGFuZCByZW1vdmluZworICAgIGxpYmRwa2ctcGVybCwgYmVjYXVzZSBvbGRlciB1cGRhdGUtYWx0ZXJuYXRpdmVzIGFuZCBkcGtnLWRpdmVydCByZXF1aXJlCisgICAgRHBrZy5wbSBhbmQgRHBrZy9HZXR0ZXh0LnBtIHdoaWNoIHdpbGwgZGlzYXBwZWFyIGR1ZSB0byB0aGUgUmVwbGFjZXMuCisgICAgCisgICAgQ2xvc2VzOiAjNTkwODY3CisgICAgCisgICAgQW5hbHlzaXMtYnk6IFN2ZW4gSm9hY2hpbSA8c3ZlbmpvYWNAZ214LmRlPgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgMTAgKysrKysrKysrKworIGRlYmlhbi9jb250cm9sICAgfCAgICAyICstCisgMiBmaWxlcyBjaGFuZ2VkLCAxMSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgNzQ0NGM4NzhhYTZhMGFkYWJlYzI4ODAwZjUwMTVhMzMyMzllNDVhNQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBKdWwgMjkgMjE6Mzg6NTQgMjAxMCArMDIwMAorCisgICAgQWRkIG1pc3Npbmcgc3BhY2UgaW4gY2hhbmdlbG9nCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMiArLQorIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgOWJhNDE1ZGUyNmVlNmQ5MmQ4NDc4MmRlNjg0M2Y0ZThlYTM4NTcwYQorTWVyZ2U6IDVhNTgwZTIgNDRjMzZhZAorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBKdWwgMjkgMjE6MzU6MzYgMjAxMCArMDIwMAorCisgICAgTWVyZ2UgYnJhbmNoICdzaWQnCisKK2NvbW1pdCA1YTU4MGUyOGJhNjhmMTQ4MjI5MWFkODZkODIzYjQ4N2Y3NGJjZDcwCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IEp1bCAyOSAyMDoyNjo1MyAyMDEwICswMjAwCisKKyAgICBsaWJjb21wYXQ6IE9uIHN1Y2Nlc3NmdWwgcmVhbGxvYyBhc3NpZ24gdGhlIG5ld2xpc3QgdG8gbGlzdAorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgfCAgICAzICsrKworIGxpYi9jb21wYXQvc2NhbmRpci5jIHwgICAgMSArCisgMiBmaWxlcyBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA0NGMzNmFkMjJhZGM4MjM0YTE1YmJmY2Y2OGE3YmVkZjk1OTQ0M2U1CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IEp1bCAyOSAyMToxODozOSAyMDEwICswMjAwCisKKyAgICBSZWxlYXNlIDEuMTUuOC4xCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgNCArKy0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA1MTc0YmExOGYxNGI2MGIwMTc0OWZjMGM4YTQxNWFjYmY2MjI1NGE2CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IEp1bCAyOSAyMTowNzoxOCAyMDEwICswMjAwCisKKyAgICBBZGQgdS1hIG5vbi1yZWdyZXNzaW9uIHRlc3QgdG8gZW5zdXJlIHRoZSBzb3J0aW5nIG9mIGNob2ljZXMvc2xhdmVzIGlzIG9rCisKKyB1dGlscy90LzEwMF91cGRhdGVfYWx0ZXJuYXRpdmVzLnQgfCAgIDU0ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLQorIDEgZmlsZXMgY2hhbmdlZCwgNTIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDg2N2VkYzRkMTczNmUwMDUyMTQzZDFjZDI4YjdkZGEzZmQ3MWJhNDUKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgSnVsIDI5IDIwOjM2OjA5IDIwMTAgKzAyMDAKKworICAgIHVwZGF0ZS1hbHRlcm5hdGl2ZXM6IGZpeCBvZmYtYnktb25lIGVycm9ycworICAgIAorICAgIGFsdGVybmF0aXZlX3NvcnRfY2hvaWNlcygpIGFuZCBhbHRlcm5hdGl2ZV9zb3J0X3NsYXZlcygpIHdlcmUgYWZmZWN0ZWQKKyAgICBieSBhbiBvZmYtYnktb25lIGVycm9yIHRoYXQgY291bGQgcmVzdWx0IGluIGxpbmtlZCBsaXN0cyBsb29waW5nIG92ZXIKKyAgICB0aGVtc2VsdmVzIHNpbmNlIHRoZSBsYXN0IGVsZW1lbnQgd2FzIG5vdCBwcm9wZXJseSBwdXQgYmFjayBpbiB0aGUgbGlzdC4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgICB8ICAgIDcgKysrKysrKworIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYyB8ICAgIDYgKystLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCA5IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAxZjJmNTI5NmM2YTk0MzdlNzFhZDAxZWJlMmY2Y2U1NzMwZGU2NTU4CitBdXRob3I6IEhlbGdlIEtyZXV0em1hbm4gPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorRGF0ZTogICBUaHUgSnVsIDI5IDE5OjI5OjAzIDIwMTAgKzAyMDAKKworICAgIFVwZGF0ZSBHZXJtYW4gdHJhbnNsYXRpb24gb2YgbWFudWFsIHBhZ2VzCisgICAgCisgICAgVXBkYXRlIHRvIDE5MzZ0LgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDUgKysrKy0KKyBtYW4vcG8vZGUucG8gICAgIHwgICAzMyArKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDE0IGluc2VydGlvbnMoKyksIDI0IGRlbGV0aW9ucygtKQorCitjb21taXQgMjAzMzJhY2Q4N2UwNDE3NTkwZGNkNGQxOTkxNmQ2YjFjNmY5MzQ3MgorQXV0aG9yOiBIZWxnZSBLcmV1dHptYW5uIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KK0RhdGU6ICAgVGh1IEp1bCAyOSAxODo1MDo1NyAyMDEwICswMjAwCisKKyAgICBVcGRhdGUgR2VybWFuIHNjcmlwdHMgdHJhbnNsYXRpb24KKyAgICAKKyAgICBVcGRhdGUgdG8gNTEzdAorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDMgKy0KKyBzY3JpcHRzL3BvL2RlLnBvIHwgICA2MSArKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCA1OCBkZWxldGlvbnMoLSkKKworY29tbWl0IGNhYmE5ZjljZjU3ZTc0ZmM4NTYwZDA1YTU3NjRkMGJjZjIwMzRhMGUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgSnVsIDI5IDExOjAwOjI4IDIwMTAgKzAyMDAKKworICAgIEJ1bXAgdmVyc2lvbiB0byAxLjE1LjkKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICA2ICsrKysrKworIDEgZmlsZXMgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgMTg5ZGNkMDdiNGNkNjIxNTlmYjBhMjhkYjc5MjQ5ZDg2YzkxZmIxYgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBKdWwgMjkgMDk6Mzk6MzAgMjAxMCArMDIwMAorCisgICAgUmVsZWFzZSAxLjE1LjgKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICA0ICsrLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDFjOGFhYTk0ZWExMWE1YTg4ZjM0OGE2ZWE0NjE5N2IzYjFjZjZkMGQKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgSnVsIDI5IDA5OjM2OjQ1IDIwMTAgKzAyMDAKKworICAgIFJlZ2VuZXJhdGUgLnBvdCBmaWxlcyBhbmQgbWVyZ2UgLnBvIGZpbGVzIHdpdGggdGhlbQorCisgZHNlbGVjdC9wby9icy5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9jYS5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9jcy5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9kYS5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9kZS5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9kc2VsZWN0LnBvdCAgfCAgICA0ICstCisgZHNlbGVjdC9wby9lbC5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9lcy5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9ldC5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9ldS5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9mci5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9nbC5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9odS5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9pZC5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9pdC5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9qYS5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9rby5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9uYi5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9ubC5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9ubi5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9wbC5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9wdC5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9wdF9CUi5wbyAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9yby5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9ydS5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9zay5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9zdi5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby90bC5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby92aS5wbyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby96aF9DTi5wbyAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby96aF9UVy5wbyAgICAgfCAgICAyICstCisgbWFuL3BvL2RlLnBvICAgICAgICAgICAgfCAgMjU0ICsrKystLS0KKyBtYW4vcG8vZHBrZy1tYW4ucG90ICAgICB8ICA2OTcgKysrKysrKysrKystLS0tLS0tLS0KKyBtYW4vcG8vZXMucG8gICAgICAgICAgICB8ICA3OTcgKysrKysrKysrKysrKy0tLS0tLS0tLQorIG1hbi9wby9mci5wbyAgICAgICAgICAgIHwgIDgwMCArKysrKysrKysrKysrLS0tLS0tLS0tCisgbWFuL3BvL2h1LnBvICAgICAgICAgICAgfCAgNzM3ICsrKysrKysrKysrKy0tLS0tLS0tLQorIG1hbi9wby9qYS5wbyAgICAgICAgICAgIHwgIDc0OCArKysrKysrKysrKystLS0tLS0tLS0KKyBtYW4vcG8vcGwucG8gICAgICAgICAgICB8ICA3OTkgKysrKysrKysrKysrKy0tLS0tLS0tLQorIG1hbi9wby9wdF9CUi5wbyAgICAgICAgIHwgIDczNCArKysrKysrKysrKy0tLS0tLS0tLQorIG1hbi9wby9ydS5wbyAgICAgICAgICAgIHwgIDc0OCArKysrKysrKysrKystLS0tLS0tLS0KKyBtYW4vcG8vc3YucG8gICAgICAgICAgICB8IDEwNzggKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tCisgcG8vYXN0LnBvICAgICAgICAgICAgICAgfCAxNjk4ICsrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9icy5wbyAgICAgICAgICAgICAgICB8IDE0ODAgKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2NhLnBvICAgICAgICAgICAgICAgIHwgMTY3NiArKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9jcy5wbyAgICAgICAgICAgICAgICB8IDE2OTcgKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2RhLnBvICAgICAgICAgICAgICAgIHwgMTYyMiArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2RlLnBvICAgICAgICAgICAgICAgIHwgIDI3OCArKysrLS0tLQorIHBvL2Rwa2cucG90ICAgICAgICAgICAgIHwgMTQ3MCArKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vZHoucG8gICAgICAgICAgICAgICAgfCAxNjIzICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vZWwucG8gICAgICAgICAgICAgICAgfCAxNjc0ICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2VvLnBvICAgICAgICAgICAgICAgIHwgMTY5MyArKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9lcy5wbyAgICAgICAgICAgICAgICB8IDE2NzggKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vZXQucG8gICAgICAgICAgICAgICAgfCAxNTMzICsrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vZXUucG8gICAgICAgICAgICAgICAgfCAxNjk5ICsrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9mci5wbyAgICAgICAgICAgICAgICB8IDE3NDkgKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9nbC5wbyAgICAgICAgICAgICAgICB8IDE2NjQgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9odS5wbyAgICAgICAgICAgICAgICB8IDE1ODUgKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2lkLnBvICAgICAgICAgICAgICAgIHwgMTU0OSArKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9pdC5wbyAgICAgICAgICAgICAgICB8IDE3MDUgKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2phLnBvICAgICAgICAgICAgICAgIHwgMTY2OCArKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9rbS5wbyAgICAgICAgICAgICAgICB8IDE2MTcgKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2tvLnBvICAgICAgICAgICAgICAgIHwgMTY2MCArKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2t1LnBvICAgICAgICAgICAgICAgIHwgMTQ3NyArKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vbHQucG8gICAgICAgICAgICAgICAgfCAxNTE4ICsrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vbXIucG8gICAgICAgICAgICAgICAgfCAxNjE1ICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9uYi5wbyAgICAgICAgICAgICAgICB8IDE2NjUgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vbmUucG8gICAgICAgICAgICAgICAgfCAxNjE4ICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vbmwucG8gICAgICAgICAgICAgICAgfCAxNjI5ICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vbm4ucG8gICAgICAgICAgICAgICAgfCAxNTQ4ICsrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL3BhLnBvICAgICAgICAgICAgICAgIHwgMTU1NyArKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9wbC5wbyAgICAgICAgICAgICAgICB8IDE2OTkgKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vcHQucG8gICAgICAgICAgICAgICAgfCAxNjcxICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL3B0X0JSLnBvICAgICAgICAgICAgIHwgMTY3MyArKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9yby5wbyAgICAgICAgICAgICAgICB8IDE2ODcgKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL3J1LnBvICAgICAgICAgICAgICAgIHwgMTcwMCArKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9zay5wbyAgICAgICAgICAgICAgICB8IDE2OTkgKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL3N2LnBvICAgICAgICAgICAgICAgIHwgIDI2MSArKysrLS0tLQorIHBvL3RoLnBvICAgICAgICAgICAgICAgIHwgMTY1OCArKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL3RsLnBvICAgICAgICAgICAgICAgIHwgMTU1OCArKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby92aS5wbyAgICAgICAgICAgICAgICB8IDE3MDMgKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL3poX0NOLnBvICAgICAgICAgICAgIHwgMTY5MSArKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby96aF9UVy5wbyAgICAgICAgICAgICB8IDE2NTggKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBzY3JpcHRzL3BvL2NhLnBvICAgICAgICB8ICAyMTUgKysrLS0tCisgc2NyaXB0cy9wby9kZS5wbyAgICAgICAgfCAgMTQyICsrKy0tCisgc2NyaXB0cy9wby9kcGtnLWRldi5wb3QgfCAgMjE2ICsrKy0tLQorIHNjcmlwdHMvcG8vZXMucG8gICAgICAgIHwgIDMyMyArKysrKystLS0KKyBzY3JpcHRzL3BvL2ZyLnBvICAgICAgICB8ICAzMjMgKysrKysrLS0tCisgc2NyaXB0cy9wby9wbC5wbyAgICAgICAgfCAgMjU0ICsrKystLS0KKyBzY3JpcHRzL3BvL3J1LnBvICAgICAgICB8ICAzMjMgKysrKysrLS0tCisgc2NyaXB0cy9wby9zdi5wbyAgICAgICAgfCAgMTU4ICsrKy0tCisgOTAgZmlsZXMgY2hhbmdlZCwgMzk5NDIgaW5zZXJ0aW9ucygrKSwgMzM3NzEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA4YjUxMWVlNmU3OGVkMTA1NTU4ZjViZWNmZTExN2ZlOGNiODg3ZjlhCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IEp1bCAyOSAwNjoxMzozNyAyMDEwICswMjAwCisKKyAgICBkcGtnLWJ1aWxkZmxhZ3MoMSk6IEZpeCB0eXBvCisKKyBtYW4vZHBrZy1idWlsZGZsYWdzLjEgfCAgICA0ICsrLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDZkMTgxYWRlNWM2N2RiODMyODI4OWM2Y2FkZmI2Yjk2ZjNkYzg5ZDIKK0F1dGhvcjogT3NhbXUgQW9raSA8b3NhbXVAZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IEp1bCAyOSAwNjowNzoxMSAyMDEwICswMjAwCisKKyAgICBkZWItY29udHJvbCg1KTogQWRkIG1pc3NpbmcgbWVudGlvbnMgb2YgdGhlIEJyZWFrcyBmaWVsZAorICAgIAorICAgIEFsb25nc2lkZSB0aGUgb3RoZXIgZmllbGRzIHNoYXJpbmcgdGhlIHNhbWUgc3ludGF4LgorICAgIAorICAgIENsb3NlczogIzU5MDQ3MgorCisgZGViaWFuL2NoYW5nZWxvZyAgfCAgICAzICsrKworIG1hbi9kZWItY29udHJvbC41IHwgICAgOCArKysrKystLQorIDIgZmlsZXMgY2hhbmdlZCwgOSBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgM2IwZDM4YzAyMjM2MTQwYjA0MjJjNGY0NWZkZDAwMTViNjI0MDIwOQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBKdWwgMjkgMDU6NDc6MDUgMjAxMCArMDIwMAorCisgICAgZHBrZy1idWlsZHBhY2thZ2U6IEFkZCBuZXcgLUYgb3B0aW9uIGZvciBmdWxsIGJ1aWxkCisgICAgCisgICAgVGhpcyBlbmFibGVzIHRvIGV4cGxpY2l0bHkgc3BlY2lmeSBhIG5vcm1hbCBmdWxsIGJ1aWxkIGFuZCBjb21iaW5lIGl0CisgICAgd2l0aCAtbmMuCisgICAgCisgICAgQ2xvc2VzOiAjNTQ3OTkzCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgIHwgICAgMiArKworIG1hbi9kcGtnLWJ1aWxkcGFja2FnZS4xICAgICAgfCAgICA2ICsrKysrLQorIHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGwgfCAgICA3ICsrKysrKy0KKyAzIGZpbGVzIGNoYW5nZWQsIDEzIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA2OGE0YTBiM2NhOTU4YzBiZDQ3YWJhYzI3MjE5NjY2ZDJmNzI2NGU4CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IEp1bCAyOSAwNTowMjowOSAyMDEwICswMjAwCisKKyAgICBkcGtnLWJ1aWxkcGFja2FnZTogU3dpdGNoIGJ1aWxkIG9wdGlvbiB0cmFja2luZyB0byBhIGJpdG1hc2sgdmFyaWFibGUKKworIHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGwgfCAgIDUwICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAzNSBpbnNlcnRpb25zKCspLCAxNSBkZWxldGlvbnMoLSkKKworY29tbWl0IGQyNTQwNzUzNmRiZWQ0Y2FkMjk0MzE4N2IzNmZiYjZjOTJhNmI1YWIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgSnVsIDI4IDE1OjA2OjE5IDIwMTAgKzAyMDAKKworICAgIGRwa2c6IEFzc2lnbiBjb3JyZWN0IFNFIExpbnV4IGxhYmVsIHRvIG5vbi1yZWd1bGFyIGZpbGVzCisgICAgCisgICAgVGhlIGNhbGwgdG8gbWF0Y2hwYXRoY29uKCkgd2FzIGdldHRpbmcgcGFzc2VkIG9ubHkgdGhlIHBlcm1pc3Npb24gYml0cworICAgIG9mIHRoZSBtb2RlIGFyZ3VtZW50LCBpbnN0ZWFkIG9mIHRoZSBmb3JtYXQgdHlwZS4gTWFwIHRoZSB0YXIgZmlsZXR5cGUKKyAgICB0byB0aGUgVW5peCBtb2RlIGFuZCBPUiB0aGF0IGluZm9ybWF0aW9uIGludG8gdGhlIHRhcl9lbnRyeSBtb2RlIG1lbWJlci4KKyAgICAKKyAgICBDbG9zZXM6ICM1ODc5NDkKKyAgICAKKyAgICBCYXNlZC1vbi1wYXRjaC1ieTogUnVzc2VsbCBDb2tlciA8cnVzc2VsbEBjb2tlci5jb20uYXU+CisgICAgU2lnbmVkLW9mZi1ieTogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDIgKysKKyBsaWIvZHBrZy90YXJmbi5jIHwgICA0MyArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystCisgc3JjL2FyY2hpdmVzLmMgICB8ICAgMTAgKysrKysrLS0tLQorIDMgZmlsZXMgY2hhbmdlZCwgNTAgaW5zZXJ0aW9ucygrKSwgNSBkZWxldGlvbnMoLSkKKworY29tbWl0IDZjMzcwYmRhMzAwZmNhMWMwZTRlN2ZmOTljMjIwNTJhOGQ0NDAxNDIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgSnVsIDI5IDA2OjQ4OjEwIDIwMTAgKzAyMDAKKworICAgIGxpYmRwa2c6IE1vdmUgY29kZSBoYW5kbGluZyB0YXIgdWlkL2dpZCB0b2dldGhlcgorICAgIAorICAgIFRoaXMgYXZvaWRzIHVubmVlZGVkIGNvbnZlcnNpb25zIGFuZCBhc3NpZ25tZW50cyB3aGVuIHdlIGhhdmUgdmFsaWQKKyAgICB1c2VybmFtZSBhbmQgZ3JvdXBuYW1lLgorCisgbGliL2Rwa2cvdGFyZm4uYyB8ICAgMTkgKysrKysrKysrKystLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMTEgaW5zZXJ0aW9ucygrKSwgOCBkZWxldGlvbnMoLSkKKworY29tbWl0IGNjYjlkMDNmZmQyNGMwZTczMTk4NzJiZjE5MGNlOTlkYmIzN2IxOGUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgSnVsIDI4IDIwOjExOjU4IDIwMTAgKzAyMDAKKworICAgIGxpYmRwa2c6IFJlbmFtZSBUYXJJbmZvIHRvIHRhcl9lbnRyeQorCisgbGliL2Rwa2cvdGFyZm4uYyB8ICAgIDggKysrKy0tLS0KKyBsaWIvZHBrZy90YXJmbi5oIHwgICAgNCArKy0tCisgc3JjL2FyY2hpdmVzLmMgICB8ICAgMTcgKysrKysrKysrKystLS0tLS0KKyBzcmMvYXJjaGl2ZXMuaCAgIHwgICAgMiArLQorIHNyYy9maWx0ZXJzLmMgICAgfCAgICAyICstCisgc3JjL2ZpbHRlcnMuaCAgICB8ICAgIDIgKy0KKyA2IGZpbGVzIGNoYW5nZWQsIDIwIGluc2VydGlvbnMoKyksIDE1IGRlbGV0aW9ucygtKQorCitjb21taXQgMTVjZjEzNDJiODg2ZjU0OGU4ODQ1ZGQwNDJhNzJiMDI4ZWZjNWQzZAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBKdWwgMjggMTc6NDg6MDEgMjAxMCArMDIwMAorCisgICAgbGliZHBrZzogUmVuYW1lIFRhckV4dHJhY3RvciB0byB0YXJfZXh0cmFjdG9yCisKKyBsaWIvZHBrZy9saWJkcGtnLlZlcnNpb25zIHwgICAgMiArLQorIGxpYi9kcGtnL3RhcmZuLmMgICAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvdGFyZm4uaCAgICAgICAgICB8ICAgIDIgKy0KKyBzcmMvYXJjaGl2ZXMuYyAgICAgICAgICAgIHwgICAgMiArLQorIHNyYy9wcm9jZXNzYXJjLmMgICAgICAgICAgfCAgICAyICstCisgNSBmaWxlcyBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDUgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBmOGE5Y2FjZjhhZGEyZGMxNGRjZjg2ZjM0OTY5ZjJmNWI2NzhiZGVlCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIEp1bCAyOCAxNjowMzowMiAyMDEwICswMjAwCisKKyAgICBsaWJkcGtnOiBSZW5hbWUgYW5kIGxvd2VyLWNhc2UgVGFySW5mbyBtZW1iZXJzCisKKyBsaWIvZHBrZy90YXJmbi5jIHwgICA3OCArKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLQorIGxpYi9kcGtnL3RhcmZuLmggfCAgIDIwICsrKystLS0tCisgc3JjL2FyY2hpdmVzLmMgICB8ICAxMzIgKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgc3JjL2ZpbHRlcnMuYyAgICB8ICAgMTggKysrKy0tLS0KKyA0IGZpbGVzIGNoYW5nZWQsIDEyOSBpbnNlcnRpb25zKCspLCAxMTkgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA2NDY4OTJhMjMyNTU3NDEwZjgwMzZiOWQwNmEyYmFiY2JiNDQ0NTZkCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIEp1bCAyOCAwMTowNjowNCAyMDEwICswMjAwCisKKyAgICBsaWJkcGtnOiBOb3JtYWxpemUgdGFyX2ZpbGV0eXBlX2ZpbGUwIHRvIHRhcl9maWxldHlwZV9maWxlIG9uIGRlY29kZQorCisgbGliL2Rwa2cvdGFyZm4uYyB8ICAgIDMgKystCisgc3JjL2FyY2hpdmVzLmMgICB8ICAgIDcgKystLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCA2IGRlbGV0aW9ucygtKQorCitjb21taXQgZTZiNjJiZDQ5ZmU3YTA4OWRjNWYyOTQwOTAxMzAwNTFlN2RlNTRmZQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBKdWwgMjggMDE6MDA6NTkgMjAxMCArMDIwMAorCisgICAgbGliZHBrZzogV2hlbiBkZWNvZGluZyB0aGUgdGFyIGhlYWRlciBhc3NpZ24gdGhlIFRhckluZm8gVHlwZSBmaXJzdAorCisgbGliL2Rwa2cvdGFyZm4uYyB8ICAgIDMgKystCisgMSBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBkODdiN2QzN2FjOWY2Y2U1YjkxNTk5YTA5NzgxZDhkNzlhYzAwMTQzCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIEp1bCAyOCAwMDo1ODowMyAyMDEwICswMjAwCisKKyAgICBsaWJkcGtnOiBSZW5hbWUgYW5kIG5hbWVzcGFjZSBUYXJGaWxlVHlwZSB0byB0YXJfZmlsZXR5cGUKKworIGxpYi9kcGtnL3RhcmZuLmMgfCAgIDI3ICsrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLQorIGxpYi9kcGtnL3RhcmZuLmggfCAgIDI0ICsrKysrKysrKysrKy0tLS0tLS0tLS0tLQorIHNyYy9hcmNoaXZlcy5jICAgfCAgIDU0ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHNyYy9maWx0ZXJzLmMgICAgfCAgICAzICsrLQorIDQgZmlsZXMgY2hhbmdlZCwgNTcgaW5zZXJ0aW9ucygrKSwgNTEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA2N2Q1MjRlYTBiOWZlN2IyYTE5YzJmODFjODQ4YTg1MjM1MDhhNTM4CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIEp1bCAyOCAxNjozMjo0OCAyMDEwICswMjAwCisKKyAgICBQYXNzIHRhciBjb250ZXh0IHBvaW50ZXIgYXMgYW4gYXJndW1lbnQgaW5zdGVhZCBvZiBhIHN0cnVjdCBtZW1iZXIKKyAgICAKKyAgICBUaGUgY29udGV4dCBkb2VzIG5vdCBoYXZlIGFueXRoaW5nIHRvIGRvIHdpdGggdGhlIFRhckluZm8gc3RydWN0LAorICAgIHNvIHBhc3MgaXQgYXMgYSBmdW5jdGlvbiBhcmd1bWVudCBlaXRoZXIgYXMgJ3ZvaWQgKicgb3IgYXMKKyAgICAnc3RydWN0IHRhcmNvbnRleHQgKicgaWYgdGhlIHR5cGUgaXMga25vd24uCisKKyBsaWIvZHBrZy90YXJmbi5jIHwgICAxNyArKysrKysrKy0tLS0tLS0tLQorIGxpYi9kcGtnL3RhcmZuLmggfCAgICA3ICsrKy0tLS0KKyBzcmMvYXJjaGl2ZXMuYyAgIHwgICAxOSArKysrKysrKystLS0tLS0tLS0tCisgc3JjL2FyY2hpdmVzLmggICB8ICAgIDIgKy0KKyA0IGZpbGVzIGNoYW5nZWQsIDIxIGluc2VydGlvbnMoKyksIDI0IGRlbGV0aW9ucygtKQorCitjb21taXQgYzVkYzkwMDhhN2RjMjY5NjRmMjkyNWFkYzM2NDU5N2Y3ZDRjYjVkNQorQXV0aG9yOiBQZXRlciBLcmVmdGluZyA8cGV0ZXJrQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBKdWwgMjcgMDg6NTM6MjkgMjAxMCArMDEwMAorCisgICAgVXBkYXRlIFN3ZWRpc2ggdHJhbnNsYXRpb246CisgICAgCisgICAgc2NyaXB0cy9wby9zdi5wbzogNTEzdDBmMHUuCisKKyBzY3JpcHRzL3BvL3N2LnBvIHwgIDE3NiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDEwMSBpbnNlcnRpb25zKCspLCA3NSBkZWxldGlvbnMoLSkKKworY29tbWl0IDIwNWFjNDFiMTY2YzlmZDQ5NGNiNjE5OTlkYzNiZmJjMDMxNWZlYTEKK0F1dGhvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitEYXRlOiAgIE1vbiBKdWwgMjYgMTg6NDU6NDggMjAxMCArMDIwMAorCisgICAgVXBkYXRlIEdlcm1hbiB0cmFuc2xhdGlvbiBvZiBtYW51YWwgcGFnZXMKKyAgICAKKyAgICBVcGRhdGUgdG8gMTkzNXQuCisKKyBtYW4vcG8vZGUucG8gfCAgMzk0ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMjQ5IGluc2VydGlvbnMoKyksIDE0NSBkZWxldGlvbnMoLSkKKworY29tbWl0IGYzZWUxMGYxMDFjNjQzMWQzODI3YmYxZTkyZmJkNGRlZDMwMTQ3MjMKK0F1dGhvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitEYXRlOiAgIE1vbiBKdWwgMjYgMTg6MTQ6MTUgMjAxMCArMDIwMAorCisgICAgVXBkYXRlIEdlcm1hbiBzY3JpcHRzIHRyYW5zbGF0aW9uCisgICAgCisgICAgVXBkYXRlIHRvIDUxM3QKKworIHNjcmlwdHMvcG8vZGUucG8gfCAgMTYxICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgOTMgaW5zZXJ0aW9ucygrKSwgNjggZGVsZXRpb25zKC0pCisKK2NvbW1pdCA4ZjQ5YjczNzA0OTM1OTg5OTg4ZTcxYzdiZjVjYWFkNzU1OTMxYzJkCitBdXRob3I6IFN2ZW4gSm9hY2hpbSA8c3ZlbmpvYWNAZ214LmRlPgorRGF0ZTogICBNb24gSnVsIDI2IDE3OjQyOjAyIDIwMTAgKzAyMDAKKworICAgIEdlcm1hbiBkcGtnIHRyYW5zbGF0aW9uIHVwZGF0ZQorICAgIAorICAgIFVwZGF0ZSB0byA5ODR0LgorCisgcG8vZGUucG8gfCAxNDg3ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA3NzYgaW5zZXJ0aW9ucygrKSwgNzExIGRlbGV0aW9ucygtKQorCitjb21taXQgMWI5YzBmNmQ4MmNkNjRhM2FhZmNkYzQ3NGEyYWVlZWZkM2JkNDFhMworQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBKdWwgMjYgMDg6NTc6NTAgMjAxMCArMDIwMAorCisgICAgZHBrZy1zb3VyY2U6IGRyb3AgdXBzdHJlYW0gZGViaWFuIGRpcmVjdG9yeSBiZWZvcmUgY29weWluZyB0aGUgZGViaWFuIG9uZSBpbiBwbGFjZQorICAgIAorICAgIEluIHNvdXJjZSBmb3JtYXRzICIyLjAiIGFuZCAiMy4wIChxdWlsdCkiLCBtYWtlIHN1cmUgdG8gcmVtb3ZlIHRoZQorICAgIHVwc3RyZWFtLXByb3ZpZGVkIGRlYmlhbiBkaXJlY3RvcnkgYmVmb3JlIGNvcHlpbmcgdGhlIGRlYmlhbi1wcm92aWRlZAorICAgIHZlcnNpb24gb2YgdGhhdCBkaXJlY3RvcnkgaW4gcGxhY2UuIENsb3NlczogIzU5MDI5NworCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICAgICAgIHwgICAgMyArKysKKyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG0gfCAgICAxICsKKyAyIGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDIzYTc4ZWUyMmUxODVhNzA5ZmVkOTAxYTg3NDM4MzZjZGQ5NTRhZTEKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gSnVsIDI2IDA4OjM1OjUwIDIwMTAgKzAyMDAKKworICAgIEJ1bXAgU3RhbmRhcmRzLVZlcnNpb24gdG8gMy45LjEKKyAgICAKKyAgICBObyBjaGFuZ2UgbmVlZGVkLgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDIgKy0KKyBkZWJpYW4vY29udHJvbCAgIHwgICAgMiArLQorIDIgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgYzU0ODg5MTg0NjM2ZjQ1MTk1MGI5Mjc4MjNmODk5YTYyODQzMDE5ZQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBKdWwgMjYgMDQ6MjQ6NTUgMjAxMCArMDIwMAorCisgICAgbGliZHBrZzogQWRkIGFkZGl0aW9uYWwgYnJhbmNoZXMgdG8gaW5mb3JtYXRpdmUoKSB0ZXN0LWNhc2UKKworIGxpYi9kcGtnL3Rlc3QvdC1wa2dpbmZvLmMgfCAgICA2ICsrKysrKworIDEgZmlsZXMgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgNGNiNmFlNWQ5ZTIzOWM0MmMxMjM5MTBhYTg0MDdmYmZlZDI2NmViZgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBKdWwgMjUgMTk6NDM6MzAgMjAxMCArMDIwMAorCisgICAgbGliZHBrZzogQWRkIHRlc3QgY2FzZSBmb3IgY29tbWFuZF9leGVjCisKKyBsaWIvZHBrZy90ZXN0L3QtY29tbWFuZC5jIHwgICAyMSArKysrKysrKysrKysrKysrKysrKysKKyAxIGZpbGVzIGNoYW5nZWQsIDIxIGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBjMTYxNWRhMWEyY2M0MDliY2NiZjg5YjQyMDNiODJjNjgwNDFhNmNiCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIEp1bCAyNSAxOToyMzowNyAyMDEwICswMjAwCisKKyAgICBsaWJkcGtnOiBDb21wbGV0ZSB0ZXN0IGNhc2VzIGZvciB0aGUgcGF0aCBtb2R1bGUKKworIGxpYi9kcGtnL3Rlc3QvdC1wYXRoLmMgfCAgIDkyICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystCisgMSBmaWxlcyBjaGFuZ2VkLCA5MCBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgMTAyMTEyOTI4NTVhYzU1NDhlZjRhNTZkZjdhOWRkNmQzMDgxZGE0MQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBKdWwgMjUgMTg6NTA6MTggMjAxMCArMDIwMAorCisgICAgbGliZHBrZzogRml4IGJ1ZmZlciBzaXplIGxpbWl0IGhhbmRsaW5nIGluIHBhdGhfcXVvdGVfZmlsZW5hbWUKKyAgICAKKyAgICBGaXggYW4gb2ZmLWJ5LW9uZSBlcnJvciBvbiBzaXplIGxpbWl0IE5VTCB0ZXJtaW5hdGlvbiBvdXRzaWRlIHRoZSBsb29wLAorICAgIGFuZCB0aHVzIG1ha2Ugc3VyZSB0aGVuIHRoYXQgc2l6ZSBpcyBhbHdheXMgPiAwIHNvIHRoYXQgd2UgZG9uJ3Qgd3JpdGUKKyAgICBvdXRzaWRlIHRoZSBib3VuZHMuIENoZWNrIHRoZXJlJ3MgZW5vdWdoIHJvb20gd2hlbiBxdW90aW5nICdcXCcsIGFuZAorICAgIHRlcm1pbmF0ZSB0aGUgc3RyaW5nIGFuZCByZXR1cm4gb3RoZXJ3aXNlLiBSZW1vdmUgWFhYIGNvbW1lbnRzIG5vdyB0aGF0CisgICAgdGhlIGNvZGUgd29ya3MgZmluZS4KKworIGxpYi9kcGtnL3BhdGguYyB8ICAgMTMgKysrKysrKysrKystLQorIDEgZmlsZXMgY2hhbmdlZCwgMTEgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDhlNWMwMzk5OTEwNTA5OTUxYzdhNWNmOTM4MGZlNDFkM2IzMDgzYTkKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gSnVsIDI1IDE3OjA3OjMzIDIwMTAgKzAyMDAKKworICAgIGxpYmRwa2c6IEZpeCBib2d1cyBoYW5kbGluZyBvZiAnXFwnIGluIHBhdGhfcXVvdGVfZmlsZW5hbWUKKyAgICAKKyAgICBXaGVuIHF1b3RpbmcgYmFja3NsYXNoLCB0aGUgY29kZSB3YXMgbm90IGFkdmFuY2luZyB0aGUgc291cmNlLCBzbyB0aGUKKyAgICBkZXN0aW5hdGlvbiB3YXMgZ2V0dGluZyByZXBlYXRlZCBiYWNrc2xhc2hlcyB1bnRpbCB0aGUgYnVmZmVyIHdhcyBmdWxsLgorCisgbGliL2Rwa2cvcGF0aC5jIHwgICAgMSArCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBlNzU5NDEwYjJlOWViMWM0OGJiMzQ0ZDJhZDE3YmZjNDIwZGRmNTdhCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIEp1bCAyNSAxNDo1MToxMSAyMDEwICswMjAwCisKKyAgICBsaWJkcGtnOiBGaXggYnVmZmVyIG92ZXJmbG93IGluIHBhdGhfcXVvdGVfZmlsZW5hbWUKKyAgICAKKyAgICBXaGVuIHRoZSBzdHJpbmcgd2FzIGxvbmdlciB0aGFuIHRoZSBzaXplIGxpbWl0LCB0aGUgbG9vcCB3b3VsZCBjb250aW51ZQorICAgIGFzIHRoZSB1bnNpZ25lZCBzaXplIHdvdWxkIHdyYXAgYXJvdW5kIDAgdG8gU0laRV9NQVgsIGFuZCBzdWJzZXF1ZW50bHkKKyAgICBzZWdmYXVsdCBvbiB0aGUgb3V0LW9mLWJvdW5kcyBhY2Nlc3MuIFVzZSBzc2l6ZV90IGZvciB0aGUgc2l6ZSB2YXJpYWJsZS4KKyAgICAKKyAgICBSZWdyZXNzaW9uIGludHJvZHVjZWQgaW4gZjM1ZDY2ZGJjMjI4YmM4YWQyYzUyNTVkZWUxYmY0ZWNmOWVlNmUwNi4KKworIGxpYi9kcGtnL3BhdGguYyB8ICAgIDMgKystCisgMSBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBlNjJlYWE5M2ExZWI0M2MwMGFhNWI5ZDU4Y2E0YWI5NzVkY2Q1M2E1CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IEp1bCAxNyAxOToxMjoyNCAyMDEwICswMjAwCisKKyAgICBVc2UgdmFyYnVmX3RydW5jIGluc3RlYWQgb2YgZGlyZWN0bHkgYXNzaWduaW5nIHRvIG1lbWJlciAndXNlZCcKKworIHNyYy9hcmNoaXZlcy5jICAgfCAgICA5ICsrKysrLS0tLQorIHNyYy9jb25maWd1cmUuYyAgfCAgICA0ICsrLS0KKyBzcmMvcHJvY2Vzc2FyYy5jIHwgICAgOCArKysrLS0tLQorIHNyYy9xdWVyeWNtZC5jICAgfCAgICA1ICsrKy0tCisgc3JjL3JlbW92ZS5jICAgICB8ICAgMTQgKysrKysrKystLS0tLS0KKyA1IGZpbGVzIGNoYW5nZWQsIDIyIGluc2VydGlvbnMoKyksIDE4IGRlbGV0aW9ucygtKQorCitjb21taXQgMTQzMzMxN2QyZmU4MzI5MGVmMDJkYmY1NGE2ZTRlNjUwY2I2OTFkNgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBKdWwgMTcgMTk6MTI6MDEgMjAxMCArMDIwMAorCisgICAgbGliZHBrZzogQWRkIG5ldyB2YXJidWZfdHJ1bmMoKSBmdW5jdGlvbgorCisgbGliL2Rwa2cvbGliZHBrZy5WZXJzaW9ucyB8ICAgIDEgKworIGxpYi9kcGtnL3Rlc3QvdC12YXJidWYuYyAgfCAgIDIxICsrKysrKysrKysrKysrKysrKysrKworIGxpYi9kcGtnL3ZhcmJ1Zi5jICAgICAgICAgfCAgIDEwICsrKysrKysrKysKKyBsaWIvZHBrZy92YXJidWYuaCAgICAgICAgIHwgICAgMSArCisgNCBmaWxlcyBjaGFuZ2VkLCAzMyBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgYjNkYjVmNDdjMDgwMTZhYTM2ZmQwNzMzMzQxYTAzM2Q5NjAwYTBjNworQXV0aG9yOiBTdmVuIEpvYWNoaW0gPHN2ZW5qb2FjQGdteC5kZT4KK0RhdGU6ICAgU3VuIEp1bCAyNSAyMzozNDowMyAyMDEwICswMjAwCisKKyAgICBidWlsZDogRml4IOKAnG1ha2UgZGlzdGNoZWNr4oCdIGVycm9ycworICAgIAorICAgIFNoaXAgdGhlIGRvYy9sY292LXtlcGkscHJvfWxvZyBmaWxlcyBjcmVhdGVkIGluIGNvbW1pdAorICAgIDA1ODFkZGE4MjRmMjZlOWVlYzk5NmViZjRkZTVmNjQ3NDMzNmJlYzIgaW4gdGhlIGRpc3RyaWJ1dGlvbiB0YXJiYWxsLAorICAgIGFzIHdlbGwgYXMgdGhlIGRwa2ctZGl2ZXJ0IHRlc3QgdGhhdCBtb3ZlZCBpbiBjb21taXQKKyAgICA1NzdhYjVkZDUxM2JlYjY0MWYxZDYzNWQ4ZWFkNjgxMDY1MjU0MjMzLgorCisgTWFrZWZpbGUuYW0gICAgIHwgICAgMiArKworIHNyYy9NYWtlZmlsZS5hbSB8ICAgIDMgKysrCisgMiBmaWxlcyBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBjNGVhZGQwZTBmMmFjYTA2YWE0NzdlYWI2MmNiY2MzMDI4ZGNmMmU4CitBdXRob3I6IEpvZXkgSGVzcyA8am9leWhAZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIEp1bCAyNSAxNDoyMDo0MSAyMDEwIC0wNDAwCisKKyAgICBkcGtnLXNvdXJjZTogZml4IHBhdGggdG8gZ2l0c2hhbGxvdyBmaWxlIGluIHNvdXJjZSBmb3JtYXQgIjMuMCAoZ2l0KSIKKyAgICAKKyAgICBJdCB3YXMgbG9va2luZyBpbiB0aGUgY3VycmVudCBkaXJlY3RvcnksIHdoaWNoIHdvcmtzIG1vc3Qgb2YgdGhlIHRpbWUsCisgICAgYnV0IG5vdCBhbHdheXMuCisKKyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvZ2l0LnBtIHwgICAgMiArLQorIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgODBiZjY4YmQzYWY2YmY0YjRiZmZlMTJlYTI2ZWI1M2NiYTI5NjI4MworQXV0aG9yOiBKb2V5IEhlc3MgPGpvZXloQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBKdWwgMjUgMTQ6MTc6NDYgMjAxMCAtMDQwMAorCisgICAgZHBrZy1zb3VyY2UoMSk6IGFkZCBtaXNzaW5nIHBhcmFncmFwaCBicmVhayB0byBtYW4gcGFnZQorCisgbWFuL2Rwa2ctc291cmNlLjEgfCAgICAxICsKKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDJkNzUxMjdiNmZjZThlZjM3YjBmYTY3MGVlNmQ2NjBkOTFiZjBjOWYKK0F1dGhvcjogUGV0ZXIgS3JlZnRpbmcgPHBldGVya0BkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gSnVsIDI1IDE4OjUzOjE5IDIwMTAgKzAxMDAKKworICAgIENvcnJlY3QgdHlwbyBpbiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xCisKKyBtYW4vZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMSB8ICAgIDIgKy0KKyBtYW4vcG8vZGUucG8gICAgICAgICAgICAgICAgICB8ICAgIDIgKy0KKyBtYW4vcG8vZHBrZy1tYW4ucG90ICAgICAgICAgICB8ICAgIDIgKy0KKyBtYW4vcG8vZXMucG8gICAgICAgICAgICAgICAgICB8ICAgIDIgKy0KKyBtYW4vcG8vZnIucG8gICAgICAgICAgICAgICAgICB8ICAgIDIgKy0KKyBtYW4vcG8vaHUucG8gICAgICAgICAgICAgICAgICB8ICAgIDIgKy0KKyBtYW4vcG8vamEucG8gICAgICAgICAgICAgICAgICB8ICAgIDIgKy0KKyBtYW4vcG8vcGwucG8gICAgICAgICAgICAgICAgICB8ICAgIDIgKy0KKyBtYW4vcG8vcHRfQlIucG8gICAgICAgICAgICAgICB8ICAgIDIgKy0KKyBtYW4vcG8vcnUucG8gICAgICAgICAgICAgICAgICB8ICAgIDIgKy0KKyBtYW4vcG8vc3YucG8gICAgICAgICAgICAgICAgICB8ICAgIDIgKy0KKyAxMSBmaWxlcyBjaGFuZ2VkLCAxMSBpbnNlcnRpb25zKCspLCAxMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDE0ZDdkMTMzMzU2ZjNhZTk1MWQyNDY3ODQ1MGNiZjQ3OWE3MmNkODQKK0F1dGhvcjogUGV0ZXIgS3JlZnRpbmcgPHBldGVya0BkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gSnVsIDI1IDE4OjUxOjM3IDIwMTAgKzAxMDAKKworICAgIFVwZGF0ZSBTd2VkaXNoIHRyYW5zbGF0aW9uLgorICAgIAorICAgIHBvL3N2LnBvOiA5ODR0MGYwdS4KKyAgICBtYW4vcG8vc3YucG86IDE5MjV0MGYwdS4KKyAgICBzY3JpcHRzL3BvL3N2LnBvOiA1MTF0MGYwdS4KKworIG1hbi9wby9zdi5wbyAgICAgfCAgMjM3ICsrKysrLS0tCisgcG8vc3YucG8gICAgICAgICB8IDE2NjUgKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgc2NyaXB0cy9wby9zdi5wbyB8ICAgNTUgKy0KKyAzIGZpbGVzIGNoYW5nZWQsIDEwMDEgaW5zZXJ0aW9ucygrKSwgOTU2IGRlbGV0aW9ucygtKQorCitjb21taXQgYzlkYzgyYTY3ODljYWY4YzQ1Y2Y0OTQ3NDVkZmQ0ZDRmYzg4MmM1ZgorQXV0aG9yOiBQZXRlciBLcmVmdGluZyA8cGV0ZXJrQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBKdWwgMjUgMTY6NDM6MDAgMjAxMCArMDEwMAorCisgICAgVXBkYXRlIFBPVEZJTEVTLmluIGZvciBjaGFuZ2VzIGluIHNvdXJjZSBmaWxlcy4KKyAgICAKKyAgICBwa2ctc2hvdy5jICg5MjgzOGIxYTk3ZTIwYjcwYzNhNDUwNTc4ZDJiNDI3MTE0M2ZkNTYxKQorICAgIHF1ZXJ5Y21kLmMgKDFkYzNjNThiNGNhZDYzMzhjOGIwMmQxMDYyOTJiMzkyZTc0MWY5ZTApCisKKyBwby9QT1RGSUxFUy5pbiB8ICAgIDQgKystLQorIDEgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgZGFmMTRmYWExZTdkYzQ0ZWYxYmQ4YWM3MWM2MjFmMWIyNGNhNzM1MAorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBKdWwgMjUgMTg6MTU6MjkgMjAxMCArMDIwMAorCisgICAgQWRkIG1pc3NpbmcgYnVnIGNsb3N1cmUKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAzICsrKworIDEgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgYTJlM2Q3N2U5ODJlMzQzZDA5MjMxOTIxMjg3YmRhODlhZmY1OTJiMgorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBKdWwgMjUgMTc6MjU6NTYgMjAxMCArMDIwMAorCisgICAgZHBrZy1zb3VyY2U6IHJlcGxhY2UgdGFyIGlnbm9yZSBwYXR0ZXJuICp+IHdpdGggKi8qfgorICAgIAorICAgIFdpdGggdGhpcyBjaGFuZ2UsIGl0IGNhbid0IG1hdGNoIHRoZSB0b3AtbGV2ZWwgZGlyZWN0b3J5IGFueW1vcmUKKyAgICBhbmQgdGhlIHNvdXJjZSBwYWNrYWdlIGRpcmVjdG9yeSBjYW4gYWdhaW4gZW5kIHdpdGggYSB0aWxkZSB3aXRob3V0CisgICAgY3JlYXRpbmcgcHJvYmxlbXMuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICAgfCAgICAyICsrCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtIHwgICAgMiArLQorIDIgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgZWFkZDdkMjM3NmVmNTRiMzBjY2UyNmIzMzYwOTJjODVjYTQwNmIzYgorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBKdWwgMjUgMTc6MTI6NTAgMjAxMCArMDIwMAorCisgICAgRHBrZzo6Q29tcHJlc3Npb246IGFkZCAtLW5vLW5hbWUgYW5kIC0tcnN5bmNhYmxlIG9wdGlvbnMgdG8gdGhlIGd6aXAgY2FsbAorICAgIAorICAgIFBhc3MgLS1uby1uYW1lIG9wdGlvbiB0byBnemlwIHRvIGF2b2lkIGVuY29kaW5nIHRoZSB0aW1lc3RhbXAgaW4gdGhlIGZpbGUKKyAgICBzbyB0aGF0IHRoZSByZXN1bHQgaXMgbW9yZSBwcmVkaWN0YWJsZS4gQWxzbyBwYXNzIC0tcnN5bmNhYmxlIHRvIG1ha2UKKyAgICBzb3VyY2UgcGFja2FnZXMgbW9yZSByc3luYyBmcmllbmRseS4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgICB8ICAgIDMgKysrCisgc2NyaXB0cy9EcGtnL0NvbXByZXNzaW9uLnBtIHwgICAgMiArLQorIDIgZmlsZXMgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgNGYwYmFlYTE0NDBlY2I4NWE2N2I5NDRhYzBhZGQyNTYyNjgyYzIwNworQXV0aG9yOiBKb2V5IEhlc3MgPGpvZXlAa2l0ZW5ldC5uZXQ+CitEYXRlOiAgIFR1ZSBKdW4gMSAxNjowMTozNSAyMDEwIC0wNDAwCisKKyAgICBkcGtnLXNvdXJjZTogbW9kaWZ5IHNvdXJjZSBmb3JtYXQgIjMuMCAoZ2l0KSIgdG8gdXNlIGdpdCBidW5kbGUKKyAgICAKKyAgICBNdWNoIGJldHRlciB0aGFuIHRoZSBvbGQgYXBwcm9hY2ggb2YgYSB0YXJiYWxsIG9mIHRoZSAuZ2l0IHJlcG9zaXRvcnksCisgICAgdGhlIGdpdCBidW5kbGUgZm9ybWF0IGlzIHNpbXBsZSB0byB1bmRlcnN0YW5kIGFuZCB3b3JrIHdpdGgsIGFuZAorICAgIGRvZXNuJ3QgbmVlZCB0byBiZSBzYW5pdGl6ZWQgZm9yIHNlY3VyaXR5LiBNdWNoIGNvZGUgd2VudCBhd2F5LgorICAgIAorICAgIFN1cHBvcnRzIGxpbWl0aW5nIGhpc3RvcnkgZGVwdGggYnkgY3JlYXRpbmcgYSBzaGFsbG93IGNsb25lLgorICAgIAorICAgIFNpZ25lZC1vZmYtYnk6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgICAgICAgICAgICAgfCAgICAyICsKKyBtYW4vZHBrZy1zb3VyY2UuMSAgICAgICAgICAgICAgICAgICAgIHwgICA0NCArKysrKy0KKyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvZ2l0LnBtIHwgIDMwNCArKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAzIGZpbGVzIGNoYW5nZWQsIDE0NCBpbnNlcnRpb25zKCspLCAyMDYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA0MDg1NDFhMzk4MGVlNTA1ZTIwNjRiYjVjOGVlODQ0YjRiYWYzYTJiCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIEp1bCAyNSAxNjoxOTo0MCAyMDEwICswMjAwCisKKyAgICBkcGtnLWJ1aWxkZmxhZ3M6IG5ldyAtLWV4cG9ydCBjb21tYW5kCisgICAgCisgICAgVGhpcyBhY3Rpb24gb3V0cHV0cyBzaGVsbCBjb2RlIChvciBhIG1ha2VmaWxlIHNuaXBwZXQpIHRoYXQgZXhwb3J0cyBhbGwKKyAgICB0aGUgY29tcGlsYXRpb25zIGZsYWdzIGluIHRoZSBlbnZpcm9ubWVudC4KKyAgICAKKyAgICBGb3IgaW5zdGFuY2UsIHRoZSBmb2xsb3dpbmcgY29tbWFuZCBjYW4gYmUgdXNlZCBhIHNoZWxsIHNjcmlwdDoKKyAgICAgZXZhbCAkKGRwa2ctYnVpbGRmbGFncyAtLWV4cG9ydD1zaCkKKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgIHwgICAgMSArCisgbWFuL2Rwa2ctYnVpbGRmbGFncy4xICAgICAgfCAgICA4ICsrKysrKysrCisgc2NyaXB0cy9kcGtnLWJ1aWxkZmxhZ3MucGwgfCAgIDMzICsrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLQorIDMgZmlsZXMgY2hhbmdlZCwgMzYgaW5zZXJ0aW9ucygrKSwgNiBkZWxldGlvbnMoLSkKKworY29tbWl0IDM3ZmU2YjRhNWNjZjU4ZWQ1NTNmZTI0YmExOTUzNWI2ZDFiZjkyYmEKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgSnVsIDIzIDA4OjA2OjM2IDIwMTAgKzAyMDAKKworICAgIHVwZGF0ZS1hbHRlcm5hdGl2ZXM6IGF2b2lkIHNlZ2ZhdWx0IHdoZW4gdGhlIG9ubHkgc2xhdmUgaXMgZGlzYXBwZWFyaW5nCisgICAgCisgICAgV2hlbiBhbiBhbHRlcm5hdGl2ZSB3aXRoIGEgc2luZ2xlIHNsYXZlIGlzIHJlbW92ZWQsIGFuZCB3aGVuIHRoZQorICAgIHJlbWFpbmluZyBhbHRlcm5hdGl2ZXMgaGF2ZSBubyBzbGF2ZXMsIHUtYSB3YXMgc2VnZmF1bHRpbmcgd2hpbGUgdHJ5aW5nCisgICAgdG8gcmVtb3ZlIHRoZSBzbGF2ZSBhbHRlcm5hdGl2ZSBmcm9tIHRoZSBzdHJ1Y3R1cmUuCisgICAgCisgICAgUmVwb3J0ZWQtYnk6IEpvbmF0aGFuIE5pZWRlciA8anJuaWVkZXJAZ21haWwuY29tPgorICAgIFJlcG9ydGVkLWJ5OiBDeXJpbCBCcnVsZWJvaXMgPGtpYmlAZGViaWFuLm9yZz4KKworIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYyB8ICAgIDIgKysKKyAxIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDYxMWUzMjM1NjIyYzJiNjk0MGRmNWM5NjFmYWYxNDhlNDUyOGI0YjEKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgSnVsIDIyIDIyOjE5OjMxIDIwMTAgKzAyMDAKKworICAgIENoZWNrIHRoZSBzdGF0IHN0cnVjdHVyZSBvbmx5IGlmIGl0IGhhcyBiZWVuIGluaXRpYWxpemVkCisgICAgCisgICAgRm9yIG5vbi1leGlzdGluZyBmaWxlcyB0aGUgc3RhdCBzdHJ1Y3R1cmUgaXMgbm90IGluaXRpYWxpemVkIGFuZCBTX0lTRElSIHdvdWxkCisgICAgcmFuZG9tbHkgcmV0dXJuIHRydWUgbGVhZGluZyB0byB0aGUgIkNhbm5vdCBkaXZlcnQgZGlyZWN0b3JpZXMiIGVycm9yCisgICAgbWVzc2FnZS4KKyAgICAKKyAgICBUaGlzIGZpeGVzIHRoZSB0ZXN0LXN1aXRlIG9uIGkzODYuCisKKyBzcmMvZGl2ZXJ0Y21kLmMgfCAgICAzICsrLQorIDEgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgYzI0OTI1MTA1MzE4ZGZhNWE4Y2UxOWI1NGJlODBiZTY5ODc2MDk0ZAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBKdWwgMjIgMTg6Mjc6MTYgMjAxMCArMDIwMAorCisgICAgZHBrZy1kZWI6IFBhcnNlIGNvbnRyb2wgZmlsZSBpbnRvIGF2YWlsYWJsZSBzdHJ1Y3R1cmUKKyAgICAKKyAgICBUaGlzIHVuY29uZnVzZXMgdGhlIGNvZGUgdG8gbWFrZSBpdCBjbGVhciB3ZSBhcmUgbm90IGRlYWxpbmcgd2l0aAorICAgIGluc3RhbGxlZCBwYWNrYWdlIGluZm9ybWF0aW9uLiBJdCdzIGFsc28gbmVlZGVkIGFzIHBhcnQgb2YgdGhlCisgICAgaW5mcmFzdHJ1Y3R1cmUgY2hhbmdlcyBmb3IgbXVsdGlhcmNoIHN1cHBvcnQuCisKKyBkcGtnLWRlYi9pbmZvLmMgfCAgICA1ICsrKy0tCisgMSBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA0ZTNlMDQ4ZGNlZjY3MTRjMjk1ZWFlMjFmMjQwY2NkN2FiNjM0YjhmCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IEp1bCAyMiAxODoyNTo0OCAyMDEwICswMjAwCisKKyAgICBidWlsZDogU2V0IExDX0FMTD1DIGZvciBjaGVjay1sb2NhbAorICAgIAorICAgIFRoaXMgZ3VhcmFudGVlcyBhIHJlcHJvZHVjaWJsZSBlbnZpcm9ubWVudCBmb3IgdGhlIHRlc3Qtc3VpdGUuCisKKyBNYWtlY2hlY2suYW0gfCAgICAxICsKKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IGE1ODMwM2YwMjk0ZGZkOWM5M2RmYTRmNDlmNTcyZjE3MTFmOTQ3Y2YKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgSnVsIDIxIDE2OjI0OjE1IDIwMTAgKzAyMDAKKworICAgIGJ1aWxkOiBBZGQgbWlzc2luZyBURVNUX0VOVl9WQVJTIHRvIGNoZWNrLWxvY2FsIHRhcmdldAorICAgIAorICAgIE1pc3NlZCBpbiBjb21taXQgOTM5Nzc4YWI5YjQxNDdkNDJiNzI1MGZkYjFiZTljNWZlNzkzOTJiNy4KKworIE1ha2VjaGVjay5hbSB8ICAgIDEgKworIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgMWE2NjMzZTJkOWI4ZDY2ZWVkNjBhNDViZmRkODY1NTJiZjYxMDdlNAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBKdWwgMTggMTE6NDQ6MzUgMjAxMCArMDIwMAorCisgICAgZHBrZzogU3RvcCBleHBvcnRpbmcgRFBLR19MSUJESVIgdG8gbWFpbnRhaW5lciBzY3JpcHRzCisgICAgCisgICAgTm93IHRoYXQgdGhlIG1haW50YWluZXIgc2NyaXB0cyBoZWxwZXIgcHJvZ3JhbSBpcyB1bmRlciBQQVRILCB0aGVyZSdzCisgICAgbm8gbmVlZCBhbnltb3JlIHRvIGV4cG9ydCB0aGUgaW50ZXJuYWwgZHBrZyBsaWJyYXJ5IGRpcmVjdG9yeS4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAxICsKKyBsaWIvZHBrZy9kcGtnLmggIHwgICAgMSAtCisgbWFuL2Rwa2cuMSAgICAgICB8ICAgIDQgLS0tLQorIHNyYy9NYWtlZmlsZS5hbSAgfCAgICAxIC0KKyBzcmMvaGVscC5jICAgICAgIHwgICAgMSAtCisgNSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDcgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBmYWQ5NmE0NTU1MmQ0YzBjY2EzYWUxNDFmMzg1NTM2MDQ4ZDlhNzVjCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IEp1bCAxNyAxODozMDo0MSAyMDEwICswMjAwCisKKyAgICBsaWJkcGtnOiBNYWtlIHBrZ2luZm8gYXJndW1lbnQgY29uc3QgaW4gcGtnX3N1bW1hcnkoKQorCisgbGliL2Rwa2cvcGtnLXNob3cuYyB8ICAgIDIgKy0KKyBsaWIvZHBrZy9wa2ctc2hvdy5oIHwgICAgMiArLQorIDIgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgMGYxYmY0NjJhZGJlNjc5MzhmMmMwNTcxMmIyZjUzZGM4MmYwOTk0ZgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBKdWwgMTcgMTg6Mjk6MzggMjAxMCArMDIwMAorCisgICAgRG8gbm90IGluY2x1ZGUgdHdvIHVudXNlZCA8YXNzZXJ0Lmg+CisKKyBkcGtnLWRlYi9idWlsZC5jIHwgICAgMSAtCisgc3JjL3JlbW92ZS5jICAgICB8ICAgIDEgLQorIDIgZmlsZXMgY2hhbmdlZCwgMCBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgZjRiMmMxNzZkOTNhOGU2NmJiYzU2YTU5ZjIxMDQxMmI0YjkwNDEyMworQXV0aG9yOiBIZWxnZSBLcmV1dHptYW5uIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KK0RhdGU6ICAgU2F0IEp1bCAxNyAxMDoxMjo0NiAyMDEwICswMjAwCisKKyAgICBVcGRhdGUgR2VybWFuIHNjcmlwdHMgdHJhbnNsYXRpb24KKyAgICAKKyAgICBVcGRhdGUgdG8gNTExdAorCisgc2NyaXB0cy9wby9kZS5wbyB8ICAgMTYgKysrKysrKystLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgOCBpbnNlcnRpb25zKCspLCA4IGRlbGV0aW9ucygtKQorCitjb21taXQgNmI2Mjc2MWQ3YzNmMGRiMDkzNzFhMjRlOGQzMmEyNjAwY2M5MWM1YQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBKdWwgMTYgMjA6MzE6NTQgMjAxMCArMDIwMAorCisgICAgVXNlIGVhcmxpZXIvbGF0ZXIgaW5zdGVhZCBvZiBzbWFsbGVyL2JpZ2dlciBmb3IgY29tcGFyaXNvbiByZWxhdGlvbnNoaXBzCisgICAgCisgICAgQ2xvc2VzOiAjNTg3NjQxCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICB8ICAgIDIgKysKKyBsaWIvZHBrZy9wa2cuYyAgICAgICAgICAgICAgICB8ICAgIDQgKystLQorIHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG0gICAgIHwgICAxNiArKysrKysrKy0tLS0tLS0tCisgc2NyaXB0cy9EcGtnL1NobGlicy9TeW1ib2wucG0gfCAgICAyICstCisgc2NyaXB0cy9EcGtnL1ZlcnNpb24ucG0gICAgICAgfCAgIDEyICsrKysrKy0tLS0tLQorIHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsICAgIHwgICAgMiArLQorIDYgZmlsZXMgY2hhbmdlZCwgMjAgaW5zZXJ0aW9ucygrKSwgMTggZGVsZXRpb25zKC0pCisKK2NvbW1pdCA0YjM4MjhiYTg3MzU5YTNhMDE3MWE5NTQ3OTgzNDk4MzIyNGIyZjczCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEp1bCAxNiAxNzowNjoyMyAyMDEwICswMjAwCisKKyAgICBidWlsZDogQWRkIC1Xc2hhZG93IHRvIGRlZmF1bHQgd2FybmluZ3MKKworIG00L2Rwa2ctY29tcGlsZXIubTQgfCAgICAyICstCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAxZGMzYzU4YjRjYWQ2MzM4YzhiMDJkMTA2MjkyYjM5MmU3NDFmOWUwCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEp1bCAxNiAxNjo1MTozNiAyMDEwICswMjAwCisKKyAgICBkcGtnLXF1ZXJ5OiBSZW5hbWUgcXVlcnkuYyB0byBxdWVyeWNtZC5jCisgICAgCisgICAgVGhpcyBtYWtlcyBpdCBvYnZpb3VzIHRoZSBmaWxlIGNvbnRhaW5zIHRoZSBtYWluKCkgZnVuY3Rpb24gZm9yCisgICAgZHBrZy1xdWVyeSBpbiBsaW5lIHdpdGggdGhlIHJlc3Qgb2YgdGhlIHRvb2xzLgorCisgc3JjL01ha2VmaWxlLmFtICAgICAgICAgICAgIHwgICAgMiArLQorIHNyYy97cXVlcnkuYyA9PiBxdWVyeWNtZC5jfSB8ICAgIDIgKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IGU5M2ZkYjgyMjM5YTA3ZDUyYTM3N2U1ZjQxNThlMGNhMGM1OGFmN2MKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgSnVsIDE2IDE2OjQ5OjM4IDIwMTAgKzAyMDAKKworICAgIEZpeCBmaWxlIG5hbWVzIGluIGNvbW1lbnQgaGVhZGVyCisKKyBkc2VsZWN0L2Jhc2VjbWRzLmNjICB8ICAgIDIgKy0KKyBkc2VsZWN0L2Jhc2V0b3AuY2MgICB8ICAgIDIgKy0KKyBsaWIvZHBrZy9wYXJzZWR1bXAuaCB8ICAgIDIgKy0KKyBsaWIvZHBrZy9wa2cuYyAgICAgICB8ICAgIDIgKy0KKyBsaWIvZHBrZy9wcm9ncmVzcy5oICB8ICAgIDIgKy0KKyBzcmMvZXJyb3JzLmMgICAgICAgICB8ICAgIDIgKy0KKyA2IGZpbGVzIGNoYW5nZWQsIDYgaW5zZXJ0aW9ucygrKSwgNiBkZWxldGlvbnMoLSkKKworY29tbWl0IGJhYzI3YWJhMThkYzhlZmY2MTI0NzQxZjc1NTRjY2Y3NWIwOWNlZWUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgSnVsIDE2IDE2OjM4OjM3IDIwMTAgKzAyMDAKKworICAgIGRwa2ctcXVlcnk6IERvIG5vdCBpbmNvcnJlY3RseSB0cmltIHBhY2thZ2Ugc3VtbWFyeSBvbiAtLWxpc3QKKyAgICAKKyAgICBXaGVuIGNvbXB1dGluZyB0aGUgbG9uZ2VzdCBwYWNrYWdlIGRlc2NyaXB0aW9uLCB0aGUgY29kZSB3YXMgdXNpbmcKKyAgICBhbHdheXMgdGhlIGZpcnN0IHBhY2thZ2UgcGFzc2VkIHRvIGxpc3QxcGFja2FnZS4gV2hpY2ggbWFkZSBpdCB0cmltIHRvCisgICAgYW4gaW5jb3JyZWN0IHNpemUuCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMiArKworIHNyYy9xdWVyeS5jICAgICAgfCAgICAyICstCisgMiBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA0ZGVmNDY2NTI2N2E4MjQ5YWUyZGUyNTk0NDIyYzE4ZjdhODRiYzhiCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEp1bCAxNiAxNjozNTowMyAyMDEwICswMjAwCisKKyAgICBkcGtnLXF1ZXJ5OiBVc2UgcGtnX3N1bW1hcnkgaW4gbGlzdDFwYWNrYWdlIGluc3RlYWQgb2YgYWQtaG9jIGNvZGUKKworIHNyYy9xdWVyeS5jIHwgICAgNyArKy0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDUgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBmNDU4ODVlNzE0MjVmMjNhNzA3MjUwYTg3ZTA2NzJlYzk2ZDgyY2Y3CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEp1bCAxNiAxNjoyODozOSAyMDEwICswMjAwCisKKyAgICBsaWJkcGtnOiBNYWtlIHBrZ19zdW1tYXJ5KCkgcmV0dXJuIHRoZSBzdW1tYXJ5IGluc3RlYWQgb2Ygdm9pZAorICAgIAorICAgIENoYW5nZSBmcm9tIHJldHVybmluZyB0aHJvdWdoIGEgcG9pbnRlciBhcmd1bWVudCB0byByZXR1cm5pbmcgaXQgZnJvbQorICAgIHRoZSBmdW5jdGlvbiByZXR1cm4gdmFsdWUuCisKKyBsaWIvZHBrZy9wa2ctc2hvdy5jIHwgICAgNyArKysrLS0tCisgbGliL2Rwa2cvcGtnLXNob3cuaCB8ICAgIDIgKy0KKyBzcmMvZW5xdWlyeS5jICAgICAgIHwgICAgMiArLQorIHNyYy9xdWVyeS5jICAgICAgICAgfCAgICAyICstCisgNCBmaWxlcyBjaGFuZ2VkLCA3IGluc2VydGlvbnMoKyksIDYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA5MjgzOGIxYTk3ZTIwYjcwYzNhNDUwNTc4ZDJiNDI3MTE0M2ZkNTYxCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEp1bCAxNiAxNDoxOToxNSAyMDEwICswMjAwCisKKyAgICBNb3ZlIHBrZy1zaG93IG1vZHVsZSB0byBsaWJkcGtnCisKKyBsaWIvZHBrZy9NYWtlZmlsZS5hbSAgICAgICAgICAgICAgICAgIHwgICAgMiArKworIHtzcmMgPT4gbGliL2Rwa2d9L3BrZy1zaG93LmMgICAgICAgICAgfCAgICA1ICsrLS0tCisgc3JjL3BrZy1zaG93LmMgPT4gbGliL2Rwa2cvcGtnLXNob3cuaCB8ICAgMzMgKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgc3JjL01ha2VmaWxlLmFtICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDIgLS0KKyBzcmMvZW5xdWlyeS5jICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMSArCisgc3JjL21haW4uaCAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDIgLS0KKyBzcmMvcXVlcnkuYyAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMSArCisgNyBmaWxlcyBjaGFuZ2VkLCAxNCBpbnNlcnRpb25zKCspLCAzMiBkZWxldGlvbnMoLSkKKworY29tbWl0IGI0ZWZiNjAxYjQ0NTU4MGEzYTQ2Y2U4NzNlZWMzYTgwODkzZGQwOGYKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgSnVsIDE2IDE0OjAzOjQxIDIwMTAgKzAyMDAKKworICAgIENvbnZlcnQgbGltaXRlZGRlc2NyaXB0aW9uKCkgdG8gcGtnX3N1bW1hcnkoKQorICAgIAorICAgIE1vdmUgY2xhbXBpbmcgb2Ygc3VtbWFyeSBzaXplIHRvIGNhbGxlcnMuIFRoaXMgbWFrZXMgdGhlIGZ1bmN0aW9uIG1vcmUKKyAgICBnZW5lcmljIHNvIHRoYXQgaXQgY2FuIGJlIHJldXNlZCBpbiBvdGhlciBjb250ZXh0cy4KKworIHNyYy9lbnF1aXJ5LmMgIHwgICAgNSArKysrLQorIHNyYy9tYWluLmggICAgIHwgICAgMyArLS0KKyBzcmMvcGtnLXNob3cuYyB8ICAgMTUgKysrKysrKystLS0tLS0tCisgc3JjL3F1ZXJ5LmMgICAgfCAgICA0ICsrKy0KKyA0IGZpbGVzIGNoYW5nZWQsIDE2IGluc2VydGlvbnMoKyksIDExIGRlbGV0aW9ucygtKQorCitjb21taXQgYzUzMDlmODAwOWQxNGRjNmNlMDVhNzgzYWI4OWFjZjBjNWUyYTNlZAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBKdWwgMTQgMTU6MjM6NDYgMjAxMCArMDIwMAorCisgICAgU3dpdGNoIHZhcmlhYmxlcyBmcm9tIGludCB0byBib29sIHdoZXJlIGFwcHJvcHJpYXRlCisKKyBkcGtnLWRlYi9idWlsZC5jICAgICAgfCAgICA3ICsrKystLS0KKyBsaWIvZHBrZy9wa2ctZm9ybWF0LmMgfCAgIDEwICsrKysrLS0tLS0KKyBzcmMvZXJyb3JzLmMgICAgICAgICAgfCAgICA0ICsrLS0KKyBzcmMvbWFpbi5jICAgICAgICAgICAgfCAgIDExICsrKysrKy0tLS0tCisgc3JjL3BhY2thZ2VzLmMgICAgICAgIHwgICAxNiArKysrKysrKystLS0tLS0tCisgNSBmaWxlcyBjaGFuZ2VkLCAyNiBpbnNlcnRpb25zKCspLCAyMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDUxYmU1ZmJiNDI2YzBkNDZhYTM4ZGNkMTI4OTg1MmI2MGEyNTJhNmMKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gSnVsIDExIDE5OjU3OjA3IDIwMTAgKzAyMDAKKworICAgIHUtYTogUmVuYW1lIHZhcmlhYmxlIGEgdG8gYV9uZXcgdG8gbm90IHNoYWRvdyBvdXR0ZXIgc2NvcGUgdmFyaWFibGUKKworIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYyB8ICAgMTggKysrKysrKysrLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA5IGluc2VydGlvbnMoKyksIDkgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAwZmZiMjM1MjgxOWRlNTE4ODRmODBjMzgwODE5YTMzY2NlOTMzM2E3CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIEp1bCAxMSAxOTo1NjowNSAyMDEwICswMjAwCisKKyAgICB1LWE6IFJlbmFtZSBhbHRsbmsgdG8gc2xfYWx0bG5rIHRvIG5vdCBzaGFkb3cgYWx0bG5rIGZyb20gb3V0dGVyIHNjb3BlCisKKyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmMgfCAgIDEwICsrKysrLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDUgaW5zZXJ0aW9ucygrKSwgNSBkZWxldGlvbnMoLSkKKworY29tbWl0IGZhNjEwYjVmNTA1YzM4ZmFkNGM3YzhkOWI4NjI2Mjk4OGEyZDc5M2QKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gSnVsIDExIDE5OjQ4OjIyIDIwMTAgKzAyMDAKKworICAgIHUtYTogUmVuYW1lIGxpbmsgdmFyaWFibGUgdG8gbGlua25hbWUgdG8gbm90IHNoYWRvdyBsaW5rKDIpCisKKyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmMgfCAgIDUxICsrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDI2IGluc2VydGlvbnMoKyksIDI1IGRlbGV0aW9ucygtKQorCitjb21taXQgYTk3NDY3NjFlMzIzN2U0Y2VlNWM1YzdmNTg1MWI2MmI0ZGU4ZWQzNworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBKdWwgMTEgMTk6MDA6NTYgMjAxMCArMDIwMAorCisgICAgdS1hOiBSZW5hbWUgdmFyaWFibGUgaW5kZXggdG8gaWR4IHRvIG5vdCBzaGFkb3cgaW5kZXgoMykKKworIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYyB8ICAgMTYgKysrKysrKystLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgOCBpbnNlcnRpb25zKCspLCA4IGRlbGV0aW9ucygtKQorCitjb21taXQgZjUzMDUwNTg2MTMyMWU4ZDhhOWU3MGNmNWZkODYyNzg3NzhiNThkMQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBKdWwgMTEgMTg6NTE6MzIgMjAxMCArMDIwMAorCisgICAgdS1hOiBSZW1vdmUgdW5uZWVkZWQgY29uc3QgZnJvbSBmaWxlc2V0X2FkZF9zbGF2ZSBzdHJpbmcgYXJndW1lbnRzCisgICAgCisgICAgVGhlIGFyZ3VtZW50cyB3ZXJlIGxhdGVyIG9uIGNhc3QgdG8gcmVtb3ZlIHRoZSBjb25zdG5lc3MsIHNvIGp1c3QgZml4CisgICAgdGhlIHByb3RvdHlwZSBvZiB0aGUgZnVuY3Rpb24uCisKKyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmMgfCAgICA2ICsrKy0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQorCitjb21taXQgMjBhNTIzZTE3NmY0YzNjODFjZGFkZTY4YmE3MWM0NWM0MjFkZmFkYworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBKdWwgMTEgMTk6NDI6MDIgMjAxMCArMDIwMAorCisgICAgZHBrZzogUmVuYW1lIHN5bWxpbmsgdmFyaWFibGUgdG8gdGFyZ2V0IHRvIG5vdCBzaGFkb3cgc3ltbGluaygyKQorCisgc3JjL2NvbmZpZ3VyZS5jIHwgICAyMSArKysrKysrKysrKy0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDExIGluc2VydGlvbnMoKyksIDEwIGRlbGV0aW9ucygtKQorCitjb21taXQgNzU2MmY0Y2U3NGEwNDE2N2VmMmU5OTI3MzA0YjE1YWU0YjhjYjZlOQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBKdWwgMTEgMTU6NTA6MjkgMjAxMCArMDIwMAorCisgICAgZHBrZzogUmVuYW1lIHRoZSByZW1vdmUgdmFyaWFibGUgdG8gc2tpcCB0byBub3Qgc2hhZG93IHJlbW92ZSgzKQorCisgc3JjL2ZpbHRlcnMuYyB8ICAgMTAgKysrKystLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCA1IGRlbGV0aW9ucygtKQorCitjb21taXQgZDY0N2M4NzhmYjA0ZGIyMmRkMGNmYTdhNTdiZWU4ZjFkM2NhZWFjOAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBKdWwgMTEgMTU6NDk6MjcgMjAxMCArMDIwMAorCisgICAgZHBrZy1zcGxpdDogTmFtZXNwYWNlIGdsb2JhbCBvcHRpb24gdmFyaWFibGVzIHRvIG5vdCBzaGFkb3cgbG9jYWwgb25lcworCisgZHBrZy1zcGxpdC9kcGtnLXNwbGl0LmggfCAgICA5ICsrKysrKy0tLQorIGRwa2ctc3BsaXQvam9pbi5jICAgICAgIHwgICAgNiArKystLS0KKyBkcGtnLXNwbGl0L21haW4uYyAgICAgICB8ICAgMjkgKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0KKyBkcGtnLXNwbGl0L3F1ZXVlLmMgICAgICB8ICAgMjYgKysrKysrKysrKysrKystLS0tLS0tLS0tLS0KKyBkcGtnLXNwbGl0L3NwbGl0LmMgICAgICB8ICAgIDQgKystLQorIDUgZmlsZXMgY2hhbmdlZCwgNDEgaW5zZXJ0aW9ucygrKSwgMzMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAwNTgxZGRhODI0ZjI2ZTllZWM5OTZlYmY0ZGU1ZjY0NzQzMzZiZWMyCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIEp1bCAxMSAxMTo0NDo0MSAyMDEwICswMjAwCisKKyAgICBidWlsZDogQWRkIG9wdGlvbmFsIGNvZGUgY292ZXJhZ2Ugc3VwcG9ydAorICAgIAorICAgIEVuYWJsZSBjb2RlIGNvdmVyYWdlIHN1cHBvcnQgd2l0aCAnY29uZmlndXJlIC0tZW5hYmxlLWNvdmVyYWdlJy4gVXNlCisgICAgZ2NvdiBhbmQgbGNvdiBmb3IgQyBjb2RlIGNvdmVyYWdlLCBhbmQgRGV2ZWw6OkNvdmVyIGFuZCBjb3ZlciBmb3IgUGVybAorICAgIGNvZGUgY292ZXJhZ2UuCisKKyAuZ2l0aWdub3JlICAgICAgICAgIHwgICAgNCArKysrCisgTWFrZWNoZWNrLmFtICAgICAgICB8ICAgIDIgKysKKyBNYWtlZmlsZS5hbSAgICAgICAgIHwgICA0NCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLQorIGNvbmZpZ3VyZS5hYyAgICAgICAgfCAgICAxICsKKyBkb2MvLmdpdGlnbm9yZSAgICAgIHwgICAgMSArCisgZG9jL2xjb3YtZXBpbG9nICAgICB8ICAgIDggKysrKysrKysKKyBkb2MvbGNvdi1wcm9sb2cgICAgIHwgICAgOCArKysrKysrKworIG00L2Rwa2ctY292ZXJhZ2UubTQgfCAgIDUxICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKworIHNjcmlwdHMvLmdpdGlnbm9yZSAgfCAgICAxICsKKyBzY3JpcHRzL01ha2VmaWxlLmFtIHwgICAgOSArKysrKysrKy0KKyAxMCBmaWxlcyBjaGFuZ2VkLCAxMjcgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDU3N2FiNWRkNTEzYmViNjQxZjFkNjM1ZDhlYWQ2ODEwNjUyNTQyMzMKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgSnVsIDEwIDEzOjU0OjI4IDIwMTAgKzAyMDAKKworICAgIGJ1aWxkOiBNb3ZlIGRwa2dfZGl2ZXJ0IHRlc3QgY2FzZSBmcm9tIHNjcmlwdHMgdG8gc3JjCisKKyBzY3JpcHRzL01ha2VmaWxlLmFtICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDMgKy0tCisgc3JjLy5naXRpZ25vcmUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAxICsKKyBzcmMvTWFrZWZpbGUuYW0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMTEgKysrKysrKysrKysKKyAuLi4vdC85NTBfZHBrZ19kaXZlcnQudCA9PiBzcmMvdC8xMDBfZHBrZ19kaXZlcnQudCB8ICAgIDAKKyA0IGZpbGVzIGNoYW5nZWQsIDEzIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA5Mzk3NzhhYjliNDE0N2Q0MmI3MjUwZmRiMWJlOWM1ZmU3OTM5MmI3CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IEp1bCAxMCAxMzoyMTowMiAyMDEwICswMjAwCisKKyAgICBidWlsZDogUmVmYWN0b3IgcGVybCB0ZXN0LXN1aXRlIHN1cHBvcnQgaW50byBhIG5ldyBNYWtlY2hlY2suYW0gZmlsZQorCisgTWFrZWNoZWNrLmFtICAgICAgICB8ICAgMjEgKysrKysrKysrKysrKysrKysrKysrCisgc2NyaXB0cy9NYWtlZmlsZS5hbSB8ICAgMjIgKysrKysrKystLS0tLS0tLS0tLS0tLQorIHV0aWxzL01ha2VmaWxlLmFtICAgfCAgIDE0ICsrKystLS0tLS0tLS0tCisgMyBmaWxlcyBjaGFuZ2VkLCAzMyBpbnNlcnRpb25zKCspLCAyNCBkZWxldGlvbnMoLSkKKworY29tbWl0IDgxODM5YjYyMTVlZWJhZWY3ZWFjMjVjOWIzODExYTA1N2M4ZjQxYTgKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgSnVsIDEwIDEwOjA3OjA1IDIwMTAgKzAyMDAKKworICAgIGJ1aWxkOiBGaXggJ21ha2UgY2hlY2snIHdoZW4gbGliZHBrZyBoYXMgbm90IGJlZW4gYnVpbHQgeWV0CisgICAgCisgICAgRm9yY2UgdGhlIHN1YmRpcmVjdG9yeSBidWlsZCBvcmRlciwgc28gdGhhdCBsaWIvZHBrZyBnZXRzIGJ1aWx0IGJlZm9yZQorICAgIGxpYi9kcGtnL3Rlc3QsIG1ha2luZyB0aGUgZm9ybWVyIGFsd2F5cyBhdmFpbGFibGUgZm9yIHRoZSBsYXR0ZXIuCisKKyBsaWIvZHBrZy9NYWtlZmlsZS5hbSB8ICAgIDIgKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDIwZjBkNjM4ZmVlN2QxYzM4M2VlOWUxYTgzZTJhN2RkYWJjMDY1YjUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgSnVsIDEwIDA5OjEzOjUwIDIwMTAgKzAyMDAKKworICAgIGJ1aWxkOiBSZW5hbWUgb3ZlcnJpZGluZyBjaGVjayB0YXJnZXRzIHRvIGNoZWNrLWxvY2FsCisgICAgCisgICAgVGhpcyBhbGxvd3MgdG8gaGF2ZSB0aGUgbG9jYWwgdGFyZ2V0cyBhbmQgYmUgYWJsZSB0byB1c2UgdGhlIG5hdGl2ZQorICAgIGF1dG9tYWtlIHRhcmdldHMgaW4gdGhlIGZ1dHVyZS4KKworIHNjcmlwdHMvTWFrZWZpbGUuYW0gfCAgICAyICstCisgdXRpbHMvTWFrZWZpbGUuYW0gICB8ICAgIDIgKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDA1MzVmYWM1M2YzODVhODY2OTQ2ZTk3OGZkMzVhMTAxODVkMTYyZmMKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgSnVsIDEwIDA5OjEyOjM5IDIwMTAgKzAyMDAKKworICAgIGJ1aWxkOiBTa2lwIGFsbCBkcGtnLWRpdmVydCB0ZXN0cyBpZiB0aGUgYmluYXJ5IGlzIG5vdCBhdmFpbGFibGUKKworIHNjcmlwdHMvdC85NTBfZHBrZ19kaXZlcnQudCB8ICAgIDUgKysrKysKKyAxIGZpbGVzIGNoYW5nZWQsIDUgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDFjY2RiMDRkNGIzZDczMmMwMWU3MzYwN2ZjMjM3YWEwZDQ2MjM3ZTMKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gSnVsIDExIDExOjI2OjIwIDIwMTAgKzAyMDAKKworICAgIGxpYmRwa2c6IEZpeCBjb21tYW5kX2FkZF9hcmd2IGRveHlnZW4gY29tbWVudCB0byBtYXRjaCBwYXJhbSBuYW1lCisKKyBsaWIvZHBrZy9jb21tYW5kLmMgfCAgICAyICstCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBmYzZmZWY2ZDgzNjlmYTY4MmY1OTgwZmVjZTlmMGU0ODFmM2MyZTE1CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IEp1bCA4IDA3OjQ4OjMxIDIwMTAgKzAyMDAKKworICAgIGRwa2ctZGl2ZXJ0OiBSZWZhY3RvciB3cml0YWJsZSBkaXJlY3RvcnkgY2hlY2sgaW50byBhIG5ldyBmdW5jdGlvbgorCisgc3JjL2RpdmVydGNtZC5jIHwgICA0MCArKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAxOCBpbnNlcnRpb25zKCspLCAyMiBkZWxldGlvbnMoLSkKKworY29tbWl0IGRjZmI5ODk4NTI0NjY1NzUyOTllNmY2YWM1MDVjYWI4YzY0NzY2OTkKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgSnVsIDggMDc6Mjk6MTYgMjAxMCArMDIwMAorCisgICAgZHBrZy1kaXZlcnQ6IERpc2FibGUgcmVuYW1pbmcgb2YgdGhlIHNvdXJjZSBmaWxlIGRvZXMgbm90IGV4aXN0CisgICAgCisgICAgVGhpcyBtYWtlcyBpdCBjb25zaXN0ZW50IHdpdGggdGhlIGdlbmVyYWwgZHBrZyBiZWhhdmlvdXIgb2YgaG9ub3VyaW5nCisgICAgZmlsZSByZW1vdmFscyBieSB0aGUgYWRtaW5pc3RyYXRvci4KKyAgICAKKyAgICBDbG9zZXM6ICM1NTAyNTIKKyAgICAKKyAgICBBcyBhIHNpZGUgZWZmZWN0LCB0aGlzIGF2b2lkcyB1c2VsZXNzIGVycm9ycyB3aGVuIHRoZSBkZXN0aW5hdGlvbgorICAgIGRpcmVjdG9yeSBpcyBub3QgZXhpc3RlbnQgb3Igd3JpdGFibGUuCisgICAgCisgICAgQ2xvc2VzOiAjNTgxNTQ0CisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgNCArKysrCisgc3JjL2RpdmVydGNtZC5jICB8ICAgMTMgKysrKysrLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgMTAgaW5zZXJ0aW9ucygrKSwgNyBkZWxldGlvbnMoLSkKKworY29tbWl0IDVjYzg2OTU5YTQ3MTlmMjQyNjQ4MGNjZGFlMmEyYjlkNzJhNzU0ZTMKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgSnVsIDYgMDg6NTg6MDQgMjAxMCArMDIwMAorCisgICAgZHBrZy1kZWI6IFJlZHVjZSBzY29wZSBvZiBzZXZlcmFsIHZhcmlhYmxlcyBpbiBleHRyYWN0aGFsZigpCisKKyBkcGtnLWRlYi9leHRyYWN0LmMgfCAgIDEyICsrKysrKystLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgNyBpbnNlcnRpb25zKCspLCA1IGRlbGV0aW9ucygtKQorCitjb21taXQgYmM2OGIzNDYxYjkzOWM0MTA0ZDc5MGVjMzI0NmE5NzZmZTRkNTJiMworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBKdWwgNiAwODo0OTowOSAyMDEwICswMjAwCisKKyAgICBkcGtnLWRlYjogUmVtb3ZlIHJlZHVuZGFudCByZWFkZnJvbWZkIHZhcmlhYmxlCisgICAgCisgICAgVGhpcyB2YXJpYWJsZSBhbHdheXMgZ2V0cyBhc3NpZ25lZCB0aGUgc2FtZSBmZCwgc28gdGhlcmUncyBubyBwb2ludCBpbgorICAgIGtlZXBpbmcgaXQgYXJvdW5kLgorCisgZHBrZy1kZWIvZXh0cmFjdC5jIHwgICAgNyArKystLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBkZjg2M2M5YjhkZGYzNzdiNmNiODlhYzkwNzk3NzAzNTZiZDY5YzY1CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIEp1bCA2IDA4OjQyOjEzIDIwMTAgKzAyMDAKKworICAgIGRwa2ctZGViOiBEbyBub3QgdXNlIEVPRiBvbiBmaWxlIGRlc2NyaXB0b3IgY2FsbHMKKyAgICAKKyAgICBUaGUgY29kZSB3YXMgd29ya2luZyBiZWNhdXNlIEVPRiBpcyB1c3VhbGx5IC0xLCBidXQgdGhhdCdzIG5vdAorICAgIGd1YXJhbnRlZWQgYnkgYW55IHN0YW5kYXJkLiBJdCdzIGFsc28gY29uY2VwdHVhbGx5IHdyb25nIHRvIG1peCB0aGlzCisgICAgZGVmaW5pdGlvbiBmcm9tIHN0cmVhbSBiYXNlZCBJL08gb24gZmlsZSBkc2NyaXB0b3IgYmFzZWQgSS9PLgorICAgIAorICAgIEZvciB0aGUgY2xvc2UoKSBjYWxsLCBqdXN0IGNoZWNrIHRoYXQgdGhlIHJldHVybiB2YWx1ZSBpcyBub3QgMC4KKyAgICAKKyAgICBSZWdyZXNzaW9uIGludHJvZHVjZWQgaW4gZjRmNGExYWE4ZGVjNjc4YjZmMzRhYmNiY2I4ZWZkNWI3NTk2NjAyOC4KKworIGRwa2ctZGViL2V4dHJhY3QuYyB8ICAgIDIgKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDY2YzZhOGI1NGY0MGNlZGJkNzU0ZGQ5ODY1ZmQ2NGEwMjc1ZTdiNzIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgSnVsIDYgMDg6MzA6MTMgMjAxMCArMDIwMAorCisgICAgZHBrZy1kZWI6IERvIG5vdCBzcGVjaWFsIGNhc2Ugb2xkIGZvcm1hdCBjb250cm9sIG1lbWJlcgorICAgIAorICAgIEluaXRpYWxpemUgbWVtYmVybGVuIGFuZCBza2lwIHRoZSBjb250cm9sIG1lbWJlciBpZiB0aGUgZmlsZXN5c3RlbQorICAgIG1lbWJlciB3YXMgcmVxdWVzdGVkLCBzbyB0aGF0IHRoZSBzYW1lIGdlbmVyaWMgY29kZSB0aGF0IGZlZWRzIHRoZQorICAgIG1lbWJlciB0byB0aGUgZGVjb21wcmVzc29yIGNhbiBiZSB1c2VkIGZvciBhbGwgY2FzZXMuCisKKyBkcGtnLWRlYi9leHRyYWN0LmMgfCAgIDYyICsrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDE5IGluc2VydGlvbnMoKyksIDQzIGRlbGV0aW9ucygtKQorCitjb21taXQgZWU1MTJlODM3ZWE3YTE3NTMxNTVmYzZjNWFkZGIwNmJhMGZlZWZjNworQXV0aG9yOiBPbWFyIENhbXBhZ25lIDxvY2FtcGFnbmVAZ21haWwuY29tPgorRGF0ZTogICBTYXQgSnVsIDMgMTc6MjI6NDkgMjAxMCArMDIwMAorCisgICAgVXBkYXRlIFNwYW5pc2ggdHJhbnNsYXRpb24gb2YgbWFudWFsIHBhZ2VzCisgICAgCisgICAgVXBkYXRlIHRvIDE5MjV0IGFuZCBmaXggInR5cG8iIGluIGRlYmlhbi9jaGFuZ2Vsb2cuCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMiArLQorIG1hbi9wby9lcy5wbyAgICAgfCAgIDcyICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgNTMgaW5zZXJ0aW9ucygrKSwgMjEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA3NjNhYTQ3NmY3MTQxMWY3MWIxMzFlNzc4Y2U0YWI4YjMxZjI5MDQxCitBdXRob3I6IEhlbGdlIEtyZXV0em1hbm4gPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorRGF0ZTogICBTYXQgSnVsIDMgMTQ6NDY6NTkgMjAxMCArMDIwMAorCisgICAgVXBkYXRlIEdlcm1hbiB0cmFuc2xhdGlvbiBvZiBtYW51YWwgcGFnZXMKKyAgICAKKyAgICBVcGRhdGUgdG8gMTkyNnQuCisKKyBtYW4vcG8vZGUucG8gfCAgMjgzICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMTQ5IGluc2VydGlvbnMoKyksIDEzNCBkZWxldGlvbnMoLSkKKworY29tbWl0IGUxNDJhYTFmNGNmZDQzMzJjZGJhN2Q3OGMyMzYxOGJlMmUzZGJmZWIKK0F1dGhvcjogT21hciBDYW1wYWduZSA8b2NhbXBhZ25lQGdtYWlsLmNvbT4KK0RhdGU6ICAgU2F0IEp1bCAzIDEzOjE4OjE4IDIwMTAgKzAyMDAKKworICAgIEluaXRpYWwgU3BhbmlzaCBzY3JpcHRzIHRyYW5zbGF0aW9uCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgfCAgICAzICsKKyBzY3JpcHRzL3BvL0xJTkdVQVMgfCAgICAzICsKKyBzY3JpcHRzL3BvL2VzLnBvICAgfCAzNTc5ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKKyAzIGZpbGVzIGNoYW5nZWQsIDM1ODUgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDNhNTQ0ZjhjNTliM2Y5ZTQ2ZjljZmM2MjRlZGJhYWFhNWI4MWQ5MmEKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgSnVsIDMgMDk6Mzg6NDggMjAxMCArMDIwMAorCisgICAgbWFuOiBDbGFyaWZ5IC0tZm9yY2UtY29uZmFzayBkZXNjcmlwdGlvbgorICAgIAorICAgIE1lbnRpb24gYW55IG9mIHRoZSBvdGhlciAtLWZvcmNlLWNvbmYgb3B0aW9ucyBjYW4gYmUgZ2l2ZW4sIG5vdCBqdXN0CisgICAgb25lLiBBbmQgdGhhdCAtLWZvcmNlLWNvbmZtaXNzIGNhbiBhbHNvIGJlIHVzZWQgd2l0aCAtLWZvcmNlLWNvbmZhc2suCisKKyBtYW4vZHBrZy4xIHwgICAgNiArKystLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworY29tbWl0IGJkMGFlOWE0MmIwNmYwOTIyMzM4M2U2N2VkYjI2MjA0MWUyYmQ5OGQKK0F1dGhvcjogSGVubmluZyBNYWtob2xtIDxoZW5uaW5nQG1ha2hvbG0ubmV0PgorRGF0ZTogICBTYXQgSnVsIDMgMDQ6MzA6MDQgMjAxMCArMDIwMAorCisgICAgQWRkIG5ldyBkcGtnIC0tZm9yY2UtY29uZmFzayBvcHRpb24KKyAgICAKKyAgICBUaGUgb3B0aW9uIGZvcmNlcyBhIGNvbmZmaWxlIHByb21wdCB3aGVuIHRoZSBjb25mZmlsZSBmcm9tIHRoZSBuZXcKKyAgICBwYWNrYWdlIGRvZXMgbm90IGRpZmZlciBmcm9tIHRoZSBwcmV2aW91cyBvbmUgdmVyc2lvbi4KKyAgICAKKyAgICBDbG9zZXM6ICMxMDI2MDkKKyAgICAKKyAgICBTaWduZWQtb2ZmLWJ5OiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMyArKysKKyBtYW4vZHBrZy4xICAgICAgIHwgICAgNyArKysrKysrCisgc3JjL2NvbmZpZ3VyZS5jICB8ICAgIDcgKysrKysrLQorIHNyYy9tYWluLmMgICAgICAgfCAgICAzICsrKworIHNyYy9tYWluLmggICAgICAgfCAgICAxICsKKyA1IGZpbGVzIGNoYW5nZWQsIDIwIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBjM2Q5ZWVhOGQwM2Q5M2VlZDZlMmQ4N2E5N2FjZmNhNTU2MmIyYjMyCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEp1bCAyIDEzOjEzOjAxIDIwMTAgKzAyMDAKKworICAgIGRwa2c6IERldGVjdCBsb2NrZWQgZGF0YWJhc2VzIG9uIC0tYXVkaXQKKyAgICAKKyAgICBEZXRlY3Qgd2hlbiBhbm90aGVyIHByb2Nlc3MgaGFzIGxvY2tlZCB0aGUgZGF0YWJhc2UsIGFuZCBtZW50aW9uIHRoYXQKKyAgICBwcm9ibGVtYXRpYyBkcGtnIC0tYXVkaXQgcmVzdWx0cyBtaWdodCBiZSBkdWUgdG8gb25nb2luZyBvcGVyYXRpb25zLgorICAgIAorICAgIENsb3NlczogIzgwMjUyCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgIHwgICAgMyArKysKKyBsaWIvZHBrZy9kYm1vZGlmeS5jIHwgICAzMiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLQorIGxpYi9kcGtnL2Rwa2ctZGIuaCAgfCAgICAxICsKKyBsaWIvZHBrZy9maWxlLmMgICAgIHwgICAyMiArKysrKysrKysrKysrKysrKysrKysrCisgbGliL2Rwa2cvZmlsZS5oICAgICB8ICAgIDMgKysrCisgc3JjL2VucXVpcnkuYyAgICAgICB8ICAgIDggKysrKysrKysKKyA2IGZpbGVzIGNoYW5nZWQsIDY4IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAwMjM4ODIxYzY2MTEyZTU0MDNkZDhhYmJmNmVjYTA5NjI4NjZkOTQ0CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEp1bCAyIDEzOjAzOjQ0IDIwMTAgKzAyMDAKKworICAgIGxpYmRwa2c6IFJlZmFjdG9yIGZpbGUgbG9jayBzZXR1cCBpbnRvIGZpbGVfbG9ja19zZXR1cCgpCisKKyBsaWIvZHBrZy9maWxlLmMgfCAgIDIyICsrKysrKysrKysrKysrLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDE0IGluc2VydGlvbnMoKyksIDggZGVsZXRpb25zKC0pCisKK2NvbW1pdCAwMzA5MjQyODExYzM5YWVkZGE4MTUyMTAxOWVjZTBiM2ZmYTE2Y2M3CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEp1bCAyIDEyOjM2OjA2IDIwMTAgKzAyMDAKKworICAgIEJ1bXAgU3RhbmRhcmRzLVZlcnNpb24gdG8gMy45LjAKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAxICsKKyBkZWJpYW4vY29udHJvbCAgIHwgICAgMiArLQorIDIgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgMmEyYzJlZjkxODhkNzE4YzkxNDAwMGZjNmFiNDhmMzNhY2M1NGRkYgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBKdWwgMiAxMTo1Njo0NyAyMDEwICswMjAwCisKKyAgICBNb3ZlIERwa2cucG0gYW5kIERwa2cvR2V0dGV4dC5wbSBmcm9tIGRwa2cgdG8gbGliZHBrZy1wZXJsCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgfCAgICAxICsKKyBkZWJpYW4vY29udHJvbCAgICAgICAgICAgICAgfCAgICA1ICsrKy0tCisgZGViaWFuL2Rwa2cuaW5zdGFsbCAgICAgICAgIHwgICAgMiAtLQorIGRlYmlhbi9saWJkcGtnLXBlcmwuaW5zdGFsbCB8ICAgIDIgKy0KKyBkZWJpYW4vcnVsZXMgICAgICAgICAgICAgICAgfCAgICAyICstCisgc2NyaXB0cy9EcGtnLnBtICAgICAgICAgICAgIHwgICAgNiAtLS0tLS0KKyA2IGZpbGVzIGNoYW5nZWQsIDYgaW5zZXJ0aW9ucygrKSwgMTIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBiZDdhOGFiMWQwM2QyY2ZiN2E3YWQ0ZWEyMWUyNmVkYWNhNTNkZDM5CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEp1bCAyIDEyOjI2OjQ4IDIwMTAgKzAyMDAKKworICAgIFVzZSBCcmVha3MgaW5zdGVhZCBvZiBDb25mbGljdHMgaW4gZHBrZywgZHBrZy1kZXYgYW5kIGxpYmRwa2ctcGVybAorICAgIAorICAgIEFsbCBpbnN0YW5jZXMgd2VyZSBkdWUgdG8gZmlsZXMgdGFrZW4gb3Zlciwgb3IgZnVuY3Rpb25hbGl0eSBicm9rZW4KKyAgICBkdWUgdG8gaW50ZXJmYWNlIGNoYW5nZXMuCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMiArKworIGRlYmlhbi9jb250cm9sICAgfCAgICA4ICsrKystLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCA2IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAzYjgwNzRhOTEwNDdjMzMwODMwOWY5M2YxYmYzNDRjMzM5MDQ0ZTk4CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEp1bCAyIDA2OjE0OjA0IDIwMTAgKzAyMDAKKworICAgIFVzZSBsaW51eC1hbnkgd2lsZGNhcmQgZm9yIGxpYnNlbGludXgxLWRldiBCdWlsZC1EZXBlbmRzCisgICAgCisgICAgSW5zdGVhZCBvZiB1c2luZyBhIGxpc3Qgb2YgbmVnYXRlZCBhcmNoaXRlY3R1cmVzLiBUaGlzIHdpbGwgbWFrZSB0aGUgam9iCisgICAgZWFzaWVyIGZvciBuZXcgcG9ydHMuIEFuZCBpdCdzIGp1c3QgbW9yZSBjb3JyZWN0LgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDIgKysKKyBkZWJpYW4vY29udHJvbCAgIHwgICAgMiArLQorIDIgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgMDJiMTJkNzVmMWVmZjdjMTg0ZmFmYjVhNjYzYTA0MjFlOWE2NDVlYQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBGZWIgMTkgMDU6NTc6MjkgMjAxMCArMDEwMAorCisgICAgZHBrZy1kaXZlcnQ6IFJld3JpdGUgaW4gQworCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgIHwgICAgMSArCisgcG8vUE9URklMRVMuaW4gICAgICAgICAgICAgIHwgICAgMyArLQorIHNjcmlwdHMvLmdpdGlnbm9yZSAgICAgICAgICB8ICAgIDEgLQorIHNjcmlwdHMvTWFrZWZpbGUuYW0gICAgICAgICB8ICAgIDIgLQorIHNjcmlwdHMvZHBrZy1kaXZlcnQucGwgICAgICB8ICAzNjkgLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgc2NyaXB0cy90Lzk1MF9kcGtnX2RpdmVydC50IHwgICAgMiArLQorIHNyYy8uZ2l0aWdub3JlICAgICAgICAgICAgICB8ICAgIDEgKworIHNyYy9NYWtlZmlsZS5hbSAgICAgICAgICAgICB8ICAgMTIgKworIHNyYy9kaXZlcnRjbWQuYyAgICAgICAgICAgICB8ICA3NTcgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKworIDkgZmlsZXMgY2hhbmdlZCwgNzczIGluc2VydGlvbnMoKyksIDM3NSBkZWxldGlvbnMoLSkKKworY29tbWl0IGI3YjU5ZWU2ZmY5ODE4ODYyNzM0Njk5ODgyOWYxZGY1MWE5YmJiMTIKK0F1dGhvcjogTWlraGFpbCBHdXNhcm92IDxkb3R0ZWRtYWdAZG90dGVkbWFnLm5ldD4KK0RhdGU6ICAgV2VkIE9jdCAxNCAwMjozNjo0NCAyMDA5ICswNzAwCisKKyAgICBkcGtnLWRpdmVydDogQWRkIG5ldyB0ZXN0LWNhc2UKKyAgICAKKyAgICBEZXZlbDo6Q292ZXIgcmVwb3J0cyA5NyUgY292ZXJhZ2UuIFJlbWFpbmluZyBicmFuY2hlcyBhcmUgaGFyZC10by10ZXN0CisgICAgd2l0aG91dCByb290IHByaXZpbGVnZSBlcnJvciBoYW5kbGluZy4KKyAgICAKKyAgICBbZ3VpbGxlbUBkZWJpYW4ub3JnOgorICAgICAtIEFkZCBuZXcgdGVzdCBpbnRvIHRlc3RfY2FzZXMuCisgICAgIC0gUnVuIHByb2dyYW0gZnJvbSBidWlsZGRpci4KKyAgICAgLSBEbyBub3QgY2hlY2sgZm9yIHVzYWdlIG91dHB1dCBvbiBiYWR1c2FnZS4KKyAgICAgLSBVc2Ugbm90ZSgpIGluc3RlYWQgb2YgZGlhZygpLgorICAgICAtIFNvcnQgZGF0YWJhc2UgYW5kIGxpc3Qgb3V0cHV0LgorICAgICAtIFNraXAgc29tZSB0ZXN0cyB3aGVuIHVuZGVyIGZha2Vyb290LiBdCisgICAgCisgICAgU2lnbmVkLW9mZi1ieTogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisgc2NyaXB0cy9NYWtlZmlsZS5hbSAgICAgICAgIHwgICAgMyArLQorIHNjcmlwdHMvdC85NTBfZHBrZ19kaXZlcnQudCB8ICA1NTUgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKworIDIgZmlsZXMgY2hhbmdlZCwgNTU3IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAxZmM5YTAzNjRhMTk1NDM4OTAzNmQxODM4NWI5YjQ0MzIzNzRmYzQ5CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIEp1biAyOSAwNzoxMjozOSAyMDEwICswMjAwCisKKyAgICBkcGtnLXNwbGl0OiBGaXggaW5kZW50YXRpb24gZm9yIHRoZSByZXN0IG9mIHNwbGl0LmMKKworIGRwa2ctc3BsaXQvc3BsaXQuYyB8ICAgNTAgKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDI2IGluc2VydGlvbnMoKyksIDI0IGRlbGV0aW9ucygtKQorCitjb21taXQgZjIxMTUxNTFjMTlmZjM3YjMwNTI5NmMyMzIyNTgwN2IwODMyMDg2YgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBKdWwgMiAwNjoxNToyNiAyMDEwICswMjAwCisKKyAgICBkcGtnLXNwbGl0OiBSZXdyaXRlIG1rc3BsaXQgaW4gQworCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICB8ICAgIDEgKworIGRlYmlhbi9kcGtnLmluc3RhbGwgICAgfCAgICAxIC0KKyBkcGtnLXNwbGl0Ly5naXRpZ25vcmUgIHwgICAgMSAtCisgZHBrZy1zcGxpdC9NYWtlZmlsZS5hbSB8ICAgMTUgLS0tCisgZHBrZy1zcGxpdC9ta3NwbGl0LnBsICB8ICAgODkgLS0tLS0tLS0tLS0tLS0tLS0tLQorIGRwa2ctc3BsaXQvc3BsaXQuYyAgICAgfCAgMjI1ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLQorIDYgZmlsZXMgY2hhbmdlZCwgMjEwIGluc2VydGlvbnMoKyksIDEyMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDI4Y2EyZDBlNWM4ZDQ3YWJmMjkwN2I2OTdhNzcxMWU2YTc2ODkyOTMKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgSnVsIDIgMDY6MDc6NDEgMjAxMCArMDIwMAorCisgICAgZHBrZy1kZWI6IFVzZSBuZXcgZHBrZ19hciBsaWJyYXJ5IGZ1bmN0aW9ucyBpbnN0ZWFkIG9mIGFkLWhvYyBjb2RlCisKKyBkcGtnLWRlYi9idWlsZC5jIHwgICA1MiArKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAxNSBpbnNlcnRpb25zKCspLCAzNyBkZWxldGlvbnMoLSkKKworY29tbWl0IDkyMDBlYjkzZGZjNjEzNjMzMzZkN2EyOWY2YmE3YTM1YmIyYWMxNzQKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgSnVsIDEgMTI6MjU6NDQgMjAxMCArMDIwMAorCisgICAgbGliZHBrZzogQWRkIG5ldyBkcGtnIGFyIHN1cHBvcnQgZnVuY3Rpb25zCisKKyBsaWIvZHBrZy9hci5jICAgICAgICAgICAgIHwgICA2MyArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKKyBsaWIvZHBrZy9hci5oICAgICAgICAgICAgIHwgICAgOCArKysrKworIGxpYi9kcGtnL2xpYmRwa2cuVmVyc2lvbnMgfCAgICA2ICsrKysKKyAzIGZpbGVzIGNoYW5nZWQsIDc3IGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBjODFhMTQ3NWRiODNmNmZiZDMzYTEwNDA4NTQzNGY3MWQ5NzYxYzc0CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IEp1bCAxIDEyOjA1OjA5IDIwMTAgKzAyMDAKKworICAgIFVzZSBuZXcgRFBLR19BUl9NQUdJQyBtYWNybyBpbnN0ZWFkIG9mIGxpdGVyYWwgc3RyaW5nCisKKyBkcGtnLWRlYi9idWlsZC5jICAgfCAgICAzICsrLQorIGRwa2ctZGViL2V4dHJhY3QuYyB8ICAgIDIgKy0KKyBkcGtnLXNwbGl0L2luZm8uYyAgfCAgIDEzICsrKysrKystLS0tLS0KKyBsaWIvZHBrZy9hci5oICAgICAgfCAgICAyICsrCisgNCBmaWxlcyBjaGFuZ2VkLCAxMiBpbnNlcnRpb25zKCspLCA4IGRlbGV0aW9ucygtKQorCitjb21taXQgODQxODJmYWY5MDJkMWI3YmEwZWQxMzU1NGU0MmQ1Y2E0MDc2M2JkMgorQXV0aG9yOiBIZWxnZSBLcmV1dHptYW5uIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KK0RhdGU6ICAgTW9uIEp1biAyOCAyMTozODowNiAyMDEwICswMjAwCisKKyAgICBVcGRhdGUgR2VybWFuIHRyYW5zbGF0aW9uIG9mIG1hbnVhbCBwYWdlcworICAgIAorICAgIFVwZGF0ZSB0byAxOTI1dC4KKworIG1hbi9wby9kZS5wbyB8ICAgMTAgKysrLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCA3IGRlbGV0aW9ucygtKQorCitjb21taXQgMmQ3Zjc0OTNjNTgxZjQxM2EwNTg2YmE1YTc5MGYyMzA2YmNkNjU1ZAorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBKdW4gMjggMDg6NDU6MDEgMjAxMCArMDIwMAorCisgICAgRHBrZzo6Q2hhbmdlbG9nOiBmaXhlZCB0byBjb3BlIHByb3Blcmx5IHdpdGggYW4gZW50cnkgb2YgdmVyc2lvbiAiMCIKKyAgICAKKyAgICBUaGUgY2hhbmdlIG9mIHRoZSBib29sZWFuIGV2YWx1YXRpb24gb2YgRHBrZzo6VmVyc2lvbiBpbnRyb2R1Y2VkIGluCisgICAgNWI5ZjM1M2IyOTQwZGU3NTFkZjQ3MDM2NjA4YWZiZTcxOTkyZDYyMiBicm9rZSBEcGtnOjpDaGFuZ2Vsb2cncyBhYmlsaXR5CisgICAgdG8gY29ycmVjdGx5IGV4cG9ydCBhbiBlbnRyeSB3aXRoIGEgdmVyc2lvbiBvZiAiMCIuCisgICAgCisgICAgQWRkIGEgbm9uLXJlZ3Jlc3Npb24gdGVzdCBmb3IgdGhpcy4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAyICsrCisgc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbSAgICAgICAgICAgICAgICB8ICAgIDYgKysrKy0tCisgc2NyaXB0cy90LzYwMF9EcGtnX0NoYW5nZWxvZy50ICAgICAgICAgICB8ICAgIDUgKysrKysKKyBzY3JpcHRzL3QvNjAwX0Rwa2dfQ2hhbmdlbG9nL3JlZ3Jlc3Npb25zIHwgICAgMyArKy0KKyA0IGZpbGVzIGNoYW5nZWQsIDEzIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA4ZjU3NjQxMmQxNWQ4MGUzNDg1OWMyNTRhYTc0OGQ2YWNjNjA2NzQ5CitBdXRob3I6IFN2ZW4gSm9hY2hpbSA8c3ZlbmpvYWNAZ214LmRlPgorRGF0ZTogICBTdW4gSnVuIDI3IDE4OjAyOjAwIDIwMTAgKzAyMDAKKworICAgIEdlcm1hbiBkcGtnIHRyYW5zbGF0aW9uIHVwZGF0ZQorICAgIAorICAgIFVwZGF0ZSB0byA5ODR0LgorCisgcG8vZGUucG8gfCAgIDIwICsrKysrKystLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA3IGluc2VydGlvbnMoKyksIDEzIGRlbGV0aW9ucygtKQorCitjb21taXQgYWQ5YjQ2YmY4MTk0YTY4MjkxMjI0ZDhhN2Y5M2FmMzBkNzQ5ODJjOQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBKdW4gMjcgMTA6NDg6MDMgMjAxMCArMDIwMAorCisgICAgVXBkYXRlIENhdGFsYW4gdHJhbnNsYXRpb24KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAxICsKKyBwby9jYS5wbyAgICAgICAgIHwgICAgNCArKy0tCisgMiBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA1YWFkZWVhY2FhNGY1ZTA3MmI0MmQwMzIzNjBjMWQzNDA2ZTcwYjQwCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIEp1biAyNyAxMDo0MTo1NiAyMDEwICswMjAwCisKKyAgICBSZWdlbmVyYXRlIC5wb3QgZmlsZXMgYW5kIG1lcmdlIC5wbyBmaWxlcyB3aXRoIHRoZW0KKworIGRzZWxlY3QvcG8vYnMucG8gICAgICAgIHwgICA1OCArLQorIGRzZWxlY3QvcG8vY2EucG8gICAgICAgIHwgICA1OCArLQorIGRzZWxlY3QvcG8vY3MucG8gICAgICAgIHwgICA1OCArLQorIGRzZWxlY3QvcG8vZGEucG8gICAgICAgIHwgICA1OCArLQorIGRzZWxlY3QvcG8vZGUucG8gICAgICAgIHwgICA1OCArLQorIGRzZWxlY3QvcG8vZHNlbGVjdC5wb3QgIHwgICA2MCArLQorIGRzZWxlY3QvcG8vZWwucG8gICAgICAgIHwgICA1OCArLQorIGRzZWxlY3QvcG8vZXMucG8gICAgICAgIHwgICA1OCArLQorIGRzZWxlY3QvcG8vZXQucG8gICAgICAgIHwgICA1OCArLQorIGRzZWxlY3QvcG8vZXUucG8gICAgICAgIHwgICA1OCArLQorIGRzZWxlY3QvcG8vZnIucG8gICAgICAgIHwgICA1OCArLQorIGRzZWxlY3QvcG8vZ2wucG8gICAgICAgIHwgICA1OCArLQorIGRzZWxlY3QvcG8vaHUucG8gICAgICAgIHwgICA1OCArLQorIGRzZWxlY3QvcG8vaWQucG8gICAgICAgIHwgICA1OCArLQorIGRzZWxlY3QvcG8vaXQucG8gICAgICAgIHwgICA1OCArLQorIGRzZWxlY3QvcG8vamEucG8gICAgICAgIHwgICA1OCArLQorIGRzZWxlY3QvcG8va28ucG8gICAgICAgIHwgICA1OCArLQorIGRzZWxlY3QvcG8vbmIucG8gICAgICAgIHwgICA1OCArLQorIGRzZWxlY3QvcG8vbmwucG8gICAgICAgIHwgICA1OCArLQorIGRzZWxlY3QvcG8vbm4ucG8gICAgICAgIHwgICA1OCArLQorIGRzZWxlY3QvcG8vcGwucG8gICAgICAgIHwgICA1OCArLQorIGRzZWxlY3QvcG8vcHQucG8gICAgICAgIHwgICA1OCArLQorIGRzZWxlY3QvcG8vcHRfQlIucG8gICAgIHwgICA1OCArLQorIGRzZWxlY3QvcG8vcm8ucG8gICAgICAgIHwgICA1OCArLQorIGRzZWxlY3QvcG8vcnUucG8gICAgICAgIHwgICA1OCArLQorIGRzZWxlY3QvcG8vc2sucG8gICAgICAgIHwgICA1OCArLQorIGRzZWxlY3QvcG8vc3YucG8gICAgICAgIHwgICA1OCArLQorIGRzZWxlY3QvcG8vdGwucG8gICAgICAgIHwgICA1OCArLQorIGRzZWxlY3QvcG8vdmkucG8gICAgICAgIHwgICA1OCArLQorIGRzZWxlY3QvcG8vemhfQ04ucG8gICAgIHwgICA1OCArLQorIGRzZWxlY3QvcG8vemhfVFcucG8gICAgIHwgICA1OCArLQorIG1hbi9wby9kZS5wbyAgICAgICAgICAgIHwgICAyMCArLQorIG1hbi9wby9kcGtnLW1hbi5wb3QgICAgIHwgIDQ4OSArKysrKysrLS0tLQorIG1hbi9wby9lcy5wbyAgICAgICAgICAgIHwgMTMzNSArKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLQorIG1hbi9wby9mci5wbyAgICAgICAgICAgIHwgIDUyNSArKysrKysrLS0tLS0KKyBtYW4vcG8vaHUucG8gICAgICAgICAgICB8ICA1MDEgKysrKysrKy0tLS0tCisgbWFuL3BvL2phLnBvICAgICAgICAgICAgfCAgNTA1ICsrKysrKystLS0tLQorIG1hbi9wby9wbC5wbyAgICAgICAgICAgIHwgIDUyNCArKysrKysrLS0tLS0KKyBtYW4vcG8vcHRfQlIucG8gICAgICAgICB8ICA1MDIgKysrKysrKy0tLS0tCisgbWFuL3BvL3J1LnBvICAgICAgICAgICAgfCAgNTAzICsrKysrKystLS0tLQorIG1hbi9wby9zdi5wbyAgICAgICAgICAgIHwgIDUxNCArKysrKysrLS0tLS0KKyBwby9hc3QucG8gICAgICAgICAgICAgICB8IDIxODcgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2JzLnBvICAgICAgICAgICAgICAgIHwgMTc0MSArKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vY2EucG8gICAgICAgICAgICAgICAgfCAyMTgyICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9jcy5wbyAgICAgICAgICAgICAgICB8IDIxNjYgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2RhLnBvICAgICAgICAgICAgICAgIHwgMjA1NiArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2RlLnBvICAgICAgICAgICAgICAgIHwgIDgyNCArKysrKysrKystLS0tLS0tLS0KKyBwby9kcGtnLnBvdCAgICAgICAgICAgICB8IDE3MzMgKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2R6LnBvICAgICAgICAgICAgICAgIHwgMjA2NiArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2VsLnBvICAgICAgICAgICAgICAgIHwgMjE4NyArKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vZW8ucG8gICAgICAgICAgICAgICAgfCAyMDUzICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vZXMucG8gICAgICAgICAgICAgICAgfCAyMTk1ICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9ldC5wbyAgICAgICAgICAgICAgICB8IDE4OTYgKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9ldS5wbyAgICAgICAgICAgICAgICB8IDIwNTUgKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9mci5wbyAgICAgICAgICAgICAgICB8IDIxNzcgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2dsLnBvICAgICAgICAgICAgICAgIHwgMjE1OSArKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vaHUucG8gICAgICAgICAgICAgICAgfCAxOTYwICsrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2lkLnBvICAgICAgICAgICAgICAgIHwgMTg5NSArKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2l0LnBvICAgICAgICAgICAgICAgIHwgMjA2MiArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2phLnBvICAgICAgICAgICAgICAgIHwgMjE3MSArKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8va20ucG8gICAgICAgICAgICAgICAgfCAyMDMxICsrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9rby5wbyAgICAgICAgICAgICAgICB8IDIxNTkgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2t1LnBvICAgICAgICAgICAgICAgIHwgMTc4MSArKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9sdC5wbyAgICAgICAgICAgICAgICB8IDE4MTEgKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vbXIucG8gICAgICAgICAgICAgICAgfCAyMDI3ICsrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9uYi5wbyAgICAgICAgICAgICAgICB8IDIxNTggKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL25lLnBvICAgICAgICAgICAgICAgIHwgMjA1OSArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL25sLnBvICAgICAgICAgICAgICAgIHwgMjA2NyArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL25uLnBvICAgICAgICAgICAgICAgIHwgMTg5NyArKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL3BhLnBvICAgICAgICAgICAgICAgIHwgMTkyOCArKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL3BsLnBvICAgICAgICAgICAgICAgIHwgMjA0OCArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL3B0LnBvICAgICAgICAgICAgICAgIHwgMjE3OCArKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vcHRfQlIucG8gICAgICAgICAgICAgfCAyMTY0ICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9yby5wbyAgICAgICAgICAgICAgICB8IDIxODIgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL3J1LnBvICAgICAgICAgICAgICAgIHwgMjA0NSArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL3NrLnBvICAgICAgICAgICAgICAgIHwgMjE3NSArKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vc3YucG8gICAgICAgICAgICAgICAgfCAyMTU3ICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby90aC5wbyAgICAgICAgICAgICAgICB8IDIxNDEgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL3RsLnBvICAgICAgICAgICAgICAgIHwgMTkwMyArKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL3ZpLnBvICAgICAgICAgICAgICAgIHwgMjE5OSArKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL3poX0NOLnBvICAgICAgICAgICAgIHwgMjE2MiArKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vemhfVFcucG8gICAgICAgICAgICAgfCAyMTQxICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBzY3JpcHRzL3BvL2NhLnBvICAgICAgICB8ICAyMzMgKysrLS0tCisgc2NyaXB0cy9wby9kZS5wbyAgICAgICAgfCAgICAyICstCisgc2NyaXB0cy9wby9kcGtnLWRldi5wb3QgfCAgMjM0ICsrKy0tLQorIHNjcmlwdHMvcG8vZnIucG8gICAgICAgIHwgIDIzMyArKystLS0KKyBzY3JpcHRzL3BvL3BsLnBvICAgICAgICB8ICAyMzMgKysrLS0tCisgc2NyaXB0cy9wby9ydS5wbyAgICAgICAgfCAgMjMzICsrKy0tLQorIHNjcmlwdHMvcG8vc3YucG8gICAgICAgIHwgIDIzMyArKystLS0KKyA4OSBmaWxlcyBjaGFuZ2VkLCA0ODA5MyBpbnNlcnRpb25zKCspLCA0MzcwNCBkZWxldGlvbnMoLSkKKworY29tbWl0IDEwNzllZDExZGNiZjNkOWIyMGU4NDFmYjIyZmQ1MDE3NDBlNzQ2YjAKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gSnVuIDI3IDEwOjI3OjEwIDIwMTAgKzAyMDAKKworICAgIGJ1aWxkOiBBZGQgYSB0b3AtbGV2ZWwgdXBkYXRlLXBvIHRhcmdldAorICAgIAorICAgIFRoaXMgd2lsbCBlYXNlIG1haW50YWluZXJzIGFuZCB0cmFuc2xhdG9ycyBqb2Igd2hlbiB3YW50aW5nIHRvIHVwZGF0ZQorICAgIHRoZSBwbyBmaWxlcy4KKworIE1ha2VmaWxlLmFtIHwgICAgOCArKysrKysrKworIDEgZmlsZXMgY2hhbmdlZCwgOCBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgYjg3OTlkOWYxMDdiMjNkODY0MGFlN2RiODUyNDk5ZjM5OTc5MjA4MworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBKdW4gMjYgMTM6MTY6MTcgMjAxMCArMDIwMAorCisgICAgVXNlIGNvbnNpc3RlbnQgbmFtaW5nIGZvciBsaW5rZWQgbGlzdHMgbWVtYmVycworICAgIAorICAgIFVzZSBuZXh0L3ByZXYgaW5zdGVhZCBvZiBuZXh0L2JhY2sgKHdoaWNoIHdvdWxkIGNvbXBsZW1lbnQgZm9yd2FyZCkuCisgICAgQWxzbyBtb3ZlIG5leHQgdG8gdGhlIGVuZCBvZiBtZW1iZXIgbmFtZXMgYW5kIHNlcHJhdGUgaXQgd2l0aCBhbgorICAgIHVuZGVyc2NvcmUsIHRvIHNpbXVsYXRlIGl0IGJlaW5nIGEgc3ViIHN0cnVjdCBtZW1iZXIuCisKKyBUT0RPICAgICAgICAgICAgICAgICAgfCAgICAxIC0KKyBkc2VsZWN0L21ldGhvZC5oICAgICAgfCAgICAyICstCisgZHNlbGVjdC9tZXRocGFyc2UuY2MgIHwgICAgNSArKystLQorIGRzZWxlY3QvcGtnZGVwY29uLmNjICB8ICAgMTIgKysrKysrLS0tLS0tCisgZHNlbGVjdC9wa2dzdWJsaXN0LmNjIHwgICAgMiArLQorIGxpYi9kcGtnL2RsaXN0LmggICAgICB8ICAgMTggKysrKysrKysrLS0tLS0tLS0tCisgbGliL2Rwa2cvZHBrZy1kYi5oICAgIHwgICAgNiArKystLS0KKyBsaWIvZHBrZy9maWVsZHMuYyAgICAgfCAgIDE3ICsrKysrKysrKystLS0tLS0tCisgbGliL2Rwa2cvcGFyc2UuYyAgICAgIHwgICAxOCArKysrKysrKystLS0tLS0tLS0KKyBsaWIvZHBrZy90cmlnbGliLmMgICAgfCAgICA0ICsrLS0KKyBsaWIvZHBrZy90cmlnbGliLmggICAgfCAgICAyICstCisgc3JjL2FyY2hpdmVzLmMgICAgICAgIHwgICAgNCArKy0tCisgc3JjL2RlcGNvbi5jICAgICAgICAgIHwgICAyMCArKysrKysrKysrLS0tLS0tLS0tLQorIHNyYy9wYWNrYWdlcy5jICAgICAgICB8ICAgIDQgKystLQorIHNyYy9wcm9jZXNzYXJjLmMgICAgICB8ICAgMTAgKysrKystLS0tLQorIHNyYy9yZW1vdmUuYyAgICAgICAgICB8ICAgIDIgKy0KKyAxNiBmaWxlcyBjaGFuZ2VkLCA2NSBpbnNlcnRpb25zKCspLCA2MiBkZWxldGlvbnMoLSkKKworY29tbWl0IGM2OTkwMWNkZGE2NTAwNDUwZjAyNmQwMmI0MzliOTQxZTdjYjE0N2EKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgSnVuIDI2IDEyOjM4OjI3IDIwMTAgKzAyMDAKKworICAgIFJlbW92ZSAndnNucHJpbnRmIHJldHVybiB2YWx1ZSBjaGVjaycgaXRlbSBmcm9tIFRPRE8gYWZ0ZXIgY29kZSByZXZpZXcKKyAgICAKKyAgICBUaGUgZmV3IHBsYWNlcyB3aGVyZSB0aGUgdnNucHJpbnRmIGNhbGxlcnMgYXJlIG5vdCBjaGVja2luZyB0aGUgcmV0dXJuCisgICAgdmFsdWUsIGFyZSBhYm91dCB0byBvaHNoaXQgYW55d2F5IHNvIHRoZXJlJ3Mgbm8gcmVhbCBkYW1hZ2UgYnkgbm90CisgICAgZG9pbmcgdGhlIGNoZWNrLCB0aGUgcmVzdCBhcmUgaGFybWxlc3MuCisKKyBUT0RPIHwgICAgMiAtLQorIDEgZmlsZXMgY2hhbmdlZCwgMCBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgYzgzOGU0ODY2MzIwMGI0MGFkMTNlZWMzYWM1YTQwZDNiMTJiZmYyYworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBKdW4gMjYgMTI6MjM6MDkgMjAxMCArMDIwMAorCisgICAgbGliZHBrZzogQ2hlY2sgaW4gdGVzdC1jYXNlIHRoYXQgOiBpcyBhbiBpbGxlZ2FsIGNoYXJhY3RlciBpbiByZXZpc2lvbgorCisgbGliL2Rwa2cvdGVzdC90LXZlcnNpb24uYyB8ICAgIDMgKystCisgMSBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA2NjJkOTc5MTNmZThkOWY0YWE3ODRjYTc1OTVjNDE1YzY1MjAyMTQ4CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IEp1biAyNiAxMjoxNzoyMCAyMDEwICswMjAwCisKKyAgICBsaWJkcGtnOiBDaGVjayB2ZXJzaW9uIHN5bnRheCB3aGVuIHBhcnNpbmcKKyAgICAKKyAgICBSZW1vdmUgdGhlIGluY29tcGxldGUgY2hlY2t2ZXJzaW9uKCkgZnJvbSBkcGtnLWRlYiBhcyBpdCdzIG5vdyB1bm5lZWRlZC4KKyAgICBFbmFibGUgdGVzdC1jYXNlcyBmb3IgaW52YWxpZCBjaGFyYWN0ZXJzIGluIHZlcnNpb24gYW5kIHJldmlzaW9uIHBhcnRzLgorICAgIAorICAgIENsb3NlczogIzU3NDcwNAorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICB8ICAgIDIgKysKKyBkcGtnLWRlYi9idWlsZC5jICAgICAgICAgIHwgICAyMiArKy0tLS0tLS0tLS0tLS0tLS0tLS0tCisgbGliL2Rwa2cvcGFyc2VoZWxwLmMgICAgICB8ICAgMTMgKysrKysrKysrKysrLQorIGxpYi9kcGtnL3Rlc3QvdC12ZXJzaW9uLmMgfCAgICAzIC0tLQorIDQgZmlsZXMgY2hhbmdlZCwgMTYgaW5zZXJ0aW9ucygrKSwgMjQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAwYTg1ZDY0YTUwZWJiM2JiMmQ1ZjA2ZjM2OGU2OGI2ZjkwMjUzM2ZhCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IEp1biAyNiAwNzoyNjoyNSAyMDEwICswMjAwCisKKyAgICBkcGtnOiBQbGFjZSBkZWZlcnJlZCBleHRyYWN0IHJlbmFtZSBkZWJ1ZyBtZXNzYWdlIGNsb3NlciB0byB0aGUgYWN0aW9uCisKKyBzcmMvYXJjaGl2ZXMuYyB8ICAgIDQgKystLQorIDEgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgMmI4N2VjOThlMjY2ZTZkY2FiNTllYWNjNGVhMmIyZTIyNzk2MDEzMworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBKdW4gMjYgMDQ6NDI6MzEgMjAxMCArMDIwMAorCisgICAgZHBrZy1xdWVyeTogQ2hhbmdlIGFjdGlvbmZ1bmN0aW9uIHRvIHJldHVybiBpbnQgaW5zdGVhZCBvZiB2b2lkCisgICAgCisgICAgVGhpcyBhdm9pZHMgYSBnbG9iYWwgZXhpdCBjb2RlIHZhcmlhYmxlLgorCisgc3JjL3F1ZXJ5LmMgfCAgIDM2ICsrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMjUgaW5zZXJ0aW9ucygrKSwgMTEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBlZGQ1OGZkNjRmYjJmNjBhYjVhMmI5MzNjN2E5ODc1ZGIwNzI1Mzc4CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IEp1biAyNiAwMzoxMDozOCAyMDEwICswMjAwCisKKyAgICBsaWJkcGtnOiBBZGQgbWlzc2luZyB3b3JkIGluIGNvbW1lbnQgdG8gbWFrZSBpdCBncmFtbWF0aWNhbAorCisgbGliL2Rwa2cvdHJpZ2xpYi5jIHwgICAgMiArLQorIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgMzQ2ZTY5NDI4N2U5OTllMjNlNjg4NWU5NTExYmQ4NTAzZWRlMWI5MworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBKdW4gMjYgMDM6MDg6MTUgMjAxMCArMDIwMAorCisgICAgbGliZHBrZzogUmVtb3ZlIG9ic29sZXRlIGludGVybmFsIHN0YXR1cyBhbGlhc2VzCisgICAgCisgICAgVGhlIHN0cmluZ3MgYXJlIOKAnHBvc3RpbnN0LWZhaWxlZOKAnSBmb3Igc3RhdF9oYWxmY29uZmlndXJlZCBhbmQKKyAgICDigJxyZW1vdmFsLWZhaWxlZOKAnSBmb3Igc3RhdF9oYWxmaW5zdGFsbGVkLgorICAgIAorICAgIFRoZXNlIHdlcmUgdXNlZCBmb3IgYmFja3dhcmQgY29tcGF0aWJpbGl0eSBkdXJpbmcgdXBncmFkZXMgZnJvbSBhbmNpZW50CisgICAgZHBrZyB2ZXJzaW9ucy4gQXMgdGhleSBzaG91bGQgbm90IGFwcGVhciBpbiBuZXdlciBzdGF0dXMgZmlsZXMsIGl0J3MKKyAgICByZWFsbHkgc2FmZSB0byByZW1vdmUgdGhlbSBub3cuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICB8ICAgIDIgKysKKyBsaWIvZHBrZy9wYXJzZWhlbHAuYyB8ICAgIDUgLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgNSBkZWxldGlvbnMoLSkKKworY29tbWl0IDI1NGIzNzUyZDM2Mzc2ZGU0N2MyZjA0ZmJlYjhjZDQzOTUyN2M2YTAKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgSnVuIDI1IDE5OjE2OjUyIDIwMTAgKzAyMDAKKworICAgIGxpYmRwa2c6IFJlbW92ZSB1bnVzZWQgbmZpZWxkcyB2YXJpYWJsZQorCisgbGliL2Rwa2cvcGFyc2UuYyAgICAgfCAgICAyIC0tCisgbGliL2Rwa2cvcGFyc2VkdW1wLmggfCAgICAxIC0KKyAyIGZpbGVzIGNoYW5nZWQsIDAgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworY29tbWl0IGM4ODAyOWJhYjFlMDJiODY2ODQ4NzM2YmY4NWIxYTA4ZWM0MTlkMmEKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgSnVuIDI1IDE4OjM3OjQyIDIwMTAgKzAyMDAKKworICAgIGRwa2c6IERvIG5vdCB1c2UgYWJicmV2aWF0aW9ucyBmb3IgJ2Rpc3RyaWJ1dGVkJworCisgc3JjL2NvbmZpZ3VyZS5jIHwgICAgNSArKystLQorIDEgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgNTAzOTFkZTg3YWMyYjAyNjllZjNlMmY2NGZiNDFlOTEzYmFmZjQxNQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBKdW4gMjUgMTg6MjA6MjYgMjAxMCArMDIwMAorCisgICAgbGliZHBrZzogUmVtb3ZlICd2YWxpZCcgbWVtYmVyIGZyb20gc3RydWN0IHBrZ2luZm9wZXJmaWxlCisgICAgCisgICAgVGhlIHR3byBzdHJ1Y3QgcGtnaW5mb3BlcmZpbGUgaW5zaWRlIHN0cnVjdCBwa2dpbmZvIGFyZSBhbHdheXMgdmFsaWQsCisgICAgYXMgYmxhbmtwYWNrYWdlIGRvZXMgYSBibGFua3BhY2thZ2VwZXJmaWxlIG9uIGVhY2guIFNvIHRoZXJlJ3Mgbm8KKyAgICBhY3R1YWwgbmVlZCBmb3IgdGhlIGJvb2xlYW4gbWVtYmVyLCBuZWl0aGVyIGZvciB2YWxpZGl0eSBjaGVja3MgYWxsCisgICAgb3ZlciB0aGUgcGxhY2UgYW5kIHBvc3NpYmxlIHN1YnNlcXVlbnQgcmVkdW5kYW50IGluaXRpYWxpemF0aW9ucy4KKyAgICAKKyAgICBUaGlzIGlzIGR1ZSB0byBjb21taXQgNWYxMDBhMDFhZjYzNmMxNGE2MDBiZjUzYjIyZTJjYTNmMmZjYzU0Ni4KKworIGRwa2ctZGViL2J1aWxkLmMgICAgICB8ICAgIDEgLQorIGRzZWxlY3QvcGtnZGVwY29uLmNjICB8ICAgODIgKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgZHNlbGVjdC9wa2dsaXN0LmNjICAgIHwgICAgMyAtLQorIGRzZWxlY3QvcGtnc3VibGlzdC5jYyB8ICAgIDIgKy0KKyBsaWIvZHBrZy9kYXRhYmFzZS5jICAgfCAgICA1IC0tLQorIGxpYi9kcGtnL2Rwa2ctZGIuaCAgICB8ICAgIDEgLQorIGxpYi9kcGtnL2R1bXAuYyAgICAgICB8ICAgMjMgKysrKysrLS0tLS0tLQorIGxpYi9kcGtnL3BhcnNlLmMgICAgICB8ICAgIDUgKy0tCisgbGliL2Rwa2cvcGtnLWZvcm1hdC5jIHwgICAgNiArLS0tCisgc3JjL2VucXVpcnkuYyAgICAgICAgIHwgICAgNCArLQorIHNyYy9wYWNrYWdlcy5jICAgICAgICB8ICAgMjUgKysrKysrKy0tLS0tLS0tCisgc3JjL3BrZy1zaG93LmMgICAgICAgIHwgICAgMiArLQorIHNyYy9wcm9jZXNzYXJjLmMgICAgICB8ICAgMTYgKysrLS0tLS0tCisgc3JjL3F1ZXJ5LmMgICAgICAgICAgIHwgICAgNCArLQorIHNyYy9yZW1vdmUuYyAgICAgICAgICB8ICAgIDEgLQorIDE1IGZpbGVzIGNoYW5nZWQsIDc1IGluc2VydGlvbnMoKyksIDEwNSBkZWxldGlvbnMoLSkKKworY29tbWl0IGFjZjdmZTU4Yzk1YzJiYTQzMDBlYzRiNjBkNjE0MDEyNDgzZjQ3NzEKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgSnVuIDI1IDA4OjQ2OjIzIDIwMTAgKzAyMDAKKworICAgIGRwa2c6IE1hcmsgaG9vayBjb21tYW5kIGVycm9yIHN0cmluZyBmb3IgdHJhbnNsYXRpb24KKworIHNyYy9tYWluLmMgfCAgICAzICsrLQorIDEgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgODhiNWM5MWRlMTQ0ZTFmYWFjZTRmOTc3N2FiYTFiNWRhMjdhN2JjZAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBKdW4gMjUgMDg6MTI6MDEgMjAxMCArMDIwMAorCisgICAgZHBrZzogUmVtb3ZlIHJlZHVuZGFudCB0cmFpbGluZyBuZXdsaW5lcyBmcm9tIGRlYnVnIG91dHB1dAorICAgIAorICAgIGRlYnVnKCkgYWxyZWFkeSBwcmludHMgYSB0cmFpbGluZyBuZXdsaW5lLCBzbyB0aGVyZSdzIG5vIHBvaW50IGluCisgICAgaW5jbHVkaW5nIGl0IGluIHRoZSBzdHJpbmcgdG8gYmUgcHJpbnRlZC4KKworIHNyYy9kZXBjb24uYyAgICAgfCAgICAyICstCisgc3JjL3Byb2Nlc3NhcmMuYyB8ICAgIDQgKystLQorIHNyYy9yZW1vdmUuYyAgICAgfCAgICA0ICsrLS0KKyAzIGZpbGVzIGNoYW5nZWQsIDUgaW5zZXJ0aW9ucygrKSwgNSBkZWxldGlvbnMoLSkKKworY29tbWl0IDRlYWI2OTdlNjQwMjRkMDM0MjIwY2M2MzY2YzgwYTVmMDkwZmY2ODcKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgSnVuIDI0IDIxOjIyOjMyIDIwMTAgKzAyMDAKKworICAgIGxpYmRwa2c6IFJlbW92ZSBvdXRkYXRlZCBjb21tZW50IHdpdGggdGVzdCBkYXRhc2V0IHBhY2thZ2UgbmFtZXMKKworIGxpYi9kcGtnL2RhdGFiYXNlLmMgfCAgIDIwIC0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAwIGluc2VydGlvbnMoKyksIDIwIGRlbGV0aW9ucygtKQorCitjb21taXQgNDU4MTZjNzY4MzliOWI0YTUwYjA0ODQyMGQ3ZmY0ODEyZWFmNDI3NworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBKdW4gMjQgMDQ6MDU6MDkgMjAxMCArMDIwMAorCisgICAgbGliZHBrZzogQWRkIG5ldyB2ZXJzaW9uIHN5bWJvbCBzY3JpcHQKKyAgICAKKyAgICBJdCdzIG5vdCB1c2VkIHlldCwgYnV0IGl0J3MgdXNlZnVsIHRvIGtlZXAgdHJhY2sgb2YgdGhlIGV4cG9ydGVkIEFQSSwKKyAgICBhbmQgd2hhdCBuZWVkcyB0byBiZSByZW1vdmVkLCByZW5hbWVkLCBldGMsIGluIGp1c3Qgb25lIHBsYWNlLgorCisgbGliL2Rwa2cvTWFrZWZpbGUuYW0gICAgICB8ICAgIDEgKworIGxpYi9kcGtnL2xpYmRwa2cuVmVyc2lvbnMgfCAgMjI4ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKworIDIgZmlsZXMgY2hhbmdlZCwgMjI5IGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAxZjZiODU0YTJkODMxOWY4YjkwY2IzOTY0MTE3YWFmOTVlMTBlMGE4CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IEp1biAyNCAwNDowNDowOCAyMDEwICswMjAwCisKKyAgICBsaWJkcGtnOiBSZW5hbWUgdHJpZ2RlZl95eWxleCgpIHRvIHRyaWdkZWZfcGFyc2UoKQorCisgbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmggfCAgICAyICstCisgbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmwgfCAgICAxICsKKyBsaWIvZHBrZy90cmlnbGliLmMgICAgICB8ICAgIDIgKy0KKyBzcmMvdHJpZ2NtZC5jICAgICAgICAgICB8ICAgIDIgKy0KKyA0IGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworY29tbWl0IDI0YmQ3YWMwNjNhMjM0YjNjNjNkZjc5YWQ1OTlmMzlmZWQ3MjhhZDUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgSnVuIDIyIDExOjA4OjI3IDIwMTAgKzAyMDAKKworICAgIGRwa2ctdHJpZ2dlcjogTWFyayBkb19jaGVjayB3aXRoIERQS0dfQVRUUl9OT1JFVAorCisgc3JjL3RyaWdjbWQuYyB8ICAgIDIgKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGM0MzkzMWU3OTlkMzYyNzVjZjZkNDRiZTk0YzYzNTEyYjk0YjFjOWUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgSnVuIDIyIDEwOjU3OjQ3IDIwMTAgKzAyMDAKKworICAgIGRwa2c6IFVzZSBpdGVyYXRvcnMgaW5zdGVhZCBvZiBleHBvc2luZyBwYWNrYWdlc2x1bXAgZGlyZWN0bHkKKworIFRPRE8gICAgICAgICAgICAgfCAgICAxIC0KKyBzcmMvYXJjaGl2ZXMuYyAgIHwgIDIxNiArKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBzcmMvZmlsZXNkYi5jICAgIHwgICA1NiArKysrKysrKysrKysrKworIHNyYy9maWxlc2RiLmggICAgfCAgIDEzICstLQorIHNyYy9oZWxwLmMgICAgICAgfCAgIDIzICsrKy0tLQorIHNyYy9wcm9jZXNzYXJjLmMgfCAgIDg4ICsrKysrKysrKysrLS0tLS0tLS0tLS0KKyBzcmMvcXVlcnkuYyAgICAgIHwgICAyMiArKystLS0KKyA3IGZpbGVzIGNoYW5nZWQsIDIzNyBpbnNlcnRpb25zKCspLCAxODIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA2MzJlODU1YTUxMDcwY2E0MjUzMjM0MWU5ZjhmMGYwMDA2ZjFhMjNkCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIEp1biAyMSAyMDowOTo0MCAyMDEwICswMjAwCisKKyAgICBtYW46IFVwZGF0ZSB1LWEgbG9nIGZpbGUgcmVmZXJlbmNlCisgICAgCisgICAgdXBkYXRlLWFsdGVybmF0aXZlcyBoYXMgbm93IGl0cyBpbmRlcGVuZGVudCBsb2cgZmlsZSwgcmVmbGVjdCB0aGF0IGluCisgICAgdGhlIG1hbiBwYWdlLgorCisgbWFuL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuOCB8ICAgIDIgKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDIxYmFlMDc3ODdiNDE3MDZkNWFmYmVmYjQ3MGIxZWU4NGUzMzgyYjYKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gSnVuIDIxIDE5OjU3OjUxIDIwMTAgKzAyMDAKKworICAgIGRwa2c6IE1hcmsgdGhlIHN1bW1hcml6ZV9maWxlbmFtZSgpIGVsbGlwc2VkIHN0cmluZyBmb3IgdHJhbnNsYXRpb24KKyAgICAKKyAgICBDb2FsbGVzY2UgdGhlIGVsbGlwc2VkIHN0cmluZyB3aXRoIHRoZSBmb3JtYXQgc3RyaW5nIHNvIHRoYXQgaXQgbWFrZXMgYQorICAgIGJpdCBtb3JlIHNlbnNlIGZvciB0cmFuc2xhdG9ycy4gVGhpcyB3aWxsIGFsbG93IHRyYW5zbGF0b3JzIHRvIHVzZSBmb3IKKyAgICBleGFtcGxlIHRoZSBVVEYtOCBlbGxpcHNpcyBjaGFyYWN0ZXIuCisKKyBzcmMvcHJvY2Vzc2FyYy5jIHwgICAgMyArLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDNhNTE3ZGFhMTM4NzE5MTkyYWVlODE5YTZmYTIyMTIzMWYyNTJmZmQKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgSnVuIDE5IDA2OjM4OjA0IDIwMTAgKzAyMDAKKworICAgIGRwa2c6IFN3aXRjaCBleGlzdGluZ2RpcmVjdG9yeSBhbmQga2VlcGV4aXN0aW5nIGZyb20gaW50IHRvIGJvb2wKKworIHNyYy9hcmNoaXZlcy5jIHwgICAxNyArKysrKysrKystLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgOSBpbnNlcnRpb25zKCspLCA4IGRlbGV0aW9ucygtKQorCitjb21taXQgZmYwMDhkNjc3Njc1MzgyNjY2NTVmNTI0NzYxYmRkM2EwODc2OTM3NQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBKdW4gMTkgMDY6NTE6MjQgMjAxMCArMDIwMAorCisgICAgZHBrZzogUmVtb3ZlIGZpbHRlcmVkIGV4aXN0aW5nIGRpcmVjdG9yaWVzIG9uIHVwZ3JhZGUKKyAgICAKKyAgICBNb3ZlIHRoZSByZXR1cm4gcG9pbnQgaW4gdGFyb2JqZWN0KCkgZm9yIHRoZSBleGlzdGluZyBkaXJlY3RvcmllcworICAgIGNoZWNrIGFmdGVyIHRoZSBwYXRoIGZpbHRlciBvbmUuIFRoaXMgbWFrZXMgc3VyZSB0aGUgbGF0dGVyIHRha2VzCisgICAgcHJlY2VkZW5jZSBvdmVyIHRoZSBmb3JtZXIsIGFuZCBleGlzdGluZyBkaXJlY3RvcmllcyBnZXQgcHJvcGVybHkKKyAgICBmaWx0ZXJlZCBhbmQgcmVtb3ZlZCBvbiB1cGdyYWRlcy4KKyAgICAKKyAgICBSZXBvcnRlZC1ieTogTWFydGluIFBpdHQgPG1hcnRpbi5waXR0QHVidW50dS5jb20+CisgICAgU2lnbmVkLW9mZi1ieTogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisgc3JjL2FyY2hpdmVzLmMgfCAgICA2ICsrKystLQorIDEgZmlsZXMgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgNThiOTFmYmIwMGZjYTJkZDBiYmI0MjliMjg4ODdkNmViYzA0YWJlYQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBKdW4gMTUgMjA6MDg6NTQgMjAxMCArMDIwMAorCisgICAgZHBrZzogUmVtb3ZlIGZpbHRlcmVkIGZpbGVzIG9uIHVwZ3JhZGUKKyAgICAKKyAgICBCZWNhdXNlIHRoZSBmaWx0ZXJlZCBmaWxlIGlzIGxlZnQgaW4gdGhlIG5ldyBmaWxlIGxpc3QsIHRoZSBjb2RlIHRoYXQKKyAgICB2ZXJpZmllcyBpZiB0aGUgb2xkIGZpbGUgaXMgcHJlc2VudCAobWF5YmUgd2l0aCBhIGRpZmZlcmVudCBuYW1lKSBpbgorICAgIHRoZSBuZXcgbGlzdCBtYXRjaGVzIHRoZSBzdGF0IGluZm9ybWF0aW9uLiBTbyB3ZSBtYXJrIGFuZCB0cmVhdCBmaWx0ZXJlZAorICAgIGZpbGVzIGFzIGlmIHRoZXkgd2VyZSBhbHJlYWR5IG5vdCBwcmVzZW50IG9uIHRoZSBmaWxlIHN5c3RlbS4KKyAgICAKKyAgICBSZXBvcnRlZC1ieTogTWFydGluIFBpdHQgPG1hcnRpbi5waXR0QHVidW50dS5jb20+CisgICAgU2lnbmVkLW9mZi1ieTogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisgc3JjL2FyY2hpdmVzLmMgICB8ICAgIDEgKworIHNyYy9maWxlc2RiLmggICAgfCAgICAxICsKKyBzcmMvcHJvY2Vzc2FyYy5jIHwgICAgNCArKysrCisgMyBmaWxlcyBjaGFuZ2VkLCA2IGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBlMzY2ODAzNWY1MTA4MWI4YWZiZGU2MDQwYTlmMDk2YmY5YTRlOTQxCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEp1biAxOCAyMDo1NzoxNSAyMDEwICswMjAwCisKKyAgICBidWlsZDogUmVtb3ZlIHJlZHVuZGFudCB0ZXN0X2Nhc2UgYXNzaWdubWVudCBpbiB1dGlscy8KKworIHV0aWxzL01ha2VmaWxlLmFtIHwgICAgMyAtLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDAgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworY29tbWl0IDBlOGE1N2MzYWYyZDAxN2IyOTBhZjliNTUzYzU4MzAwYjQ2NGM5NmYKK0F1dGhvcjogU3ZlbiBKb2FjaGltIDxzdmVuam9hY0BnbXguZGU+CitEYXRlOiAgIFR1ZSBKdW4gMTUgMjA6MjU6NDcgMjAxMCArMDIwMAorCisgICAgR2VybWFuIGRwa2cgdHJhbnNsYXRpb24gdXBkYXRlCisgICAgCisgICAgVXBkYXRlIHRvIDk4NHQuCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMSArCisgcG8vZGUucG8gICAgICAgICB8IDEzOTkgKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCA3NDEgaW5zZXJ0aW9ucygrKSwgNjU5IGRlbGV0aW9ucygtKQorCitjb21taXQgNmYzOTgwNDdjMmZkNmIwNGU0ZjFmZjhkZWE1NTMwYTNiZWM0YTJkYgorQXV0aG9yOiBTdmVuIEpvYWNoaW0gPHN2ZW5qb2FjQGdteC5kZT4KK0RhdGU6ICAgTW9uIEp1biAxNCAyMzowODoxMCAyMDEwICswMjAwCisKKyAgICBGaXgg4oCdbWFrZSBkaXN0Y2hlY2vigJwgZXJyb3JzCisgICAgCisgICAgUmVmbGVjdCB0aGUgcmV3cml0ZSBvZiB1cGRhdGUtYWx0ZXJuYXRpdmVzIGluIGNvbW1pdAorICAgIGNhYjVhZjA0ZmFkY2Q5MzlhN2JlY2Q1ZmNiMjVkY2ZiN2JjMTIxZGQgYW5kIHRoZSBhZGRpdGlvbiBvZgorICAgIHNjcmlwdHMvdC9vcmlnaW4gaW4gY29tbWl0IDJkNGZkNjI3ZDQyODZkYzQyMDA2ZmI0ODYwNDAyMDlkNGUwMjFiOWYuCisKKyBwby9QT1RGSUxFUy5pbiAgICAgIHwgICAgMiArLQorIHNjcmlwdHMvTWFrZWZpbGUuYW0gfCAgICA2ICsrKystLQorIHV0aWxzL01ha2VmaWxlLmFtICAgfCAgICA3ICsrKysrKysKKyAzIGZpbGVzIGNoYW5nZWQsIDEyIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBmMDVjZWZiYmEwMDVjMTBiMTUxM2NmZDY1ZWZjMDI0ZmRjODk1NDI3CitBdXRob3I6IEhlbGdlIEtyZXV0em1hbm4gPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorRGF0ZTogICBGcmkgSnVuIDExIDE5OjA2OjM0IDIwMTAgKzAyMDAKKworICAgIFVwZGF0ZSBHZXJtYW4gdHJhbnNsYXRpb24gb2YgbWFudWFsIHBhZ2VzCisgICAgCisgICAgVXBkYXRlIHRvIDE5MjV0LgorCisgbWFuL3BvL2RlLnBvIHwgIDI0MCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAxMzYgaW5zZXJ0aW9ucygrKSwgMTA0IGRlbGV0aW9ucygtKQorCitjb21taXQgMGQ1OWE3NDViNzJkOThmYjI1YzAyZGM4MGYxYjdkZTExNjIxMWYxOQorQXV0aG9yOiBIZWxnZSBLcmV1dHptYW5uIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KK0RhdGU6ICAgRnJpIEp1biAxMSAxNzoyODowMSAyMDEwICswMjAwCisKKyAgICBVcGRhdGUgR2VybWFuIHNjcmlwdHMgdHJhbnNsYXRpb24KKyAgICAKKyAgICBVcGRhdGUgdG8gNTExdAorCisgc2NyaXB0cy9wby9kZS5wbyB8ICAxNjQgKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDg0IGluc2VydGlvbnMoKyksIDgwIGRlbGV0aW9ucygtKQorCitjb21taXQgMTdmMDA0MDdhODBmN2RhM2VlZjY0OTFkYzcxMDVkOTkyZmNjZjk4YworQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBKdW4gMTEgMDk6MzU6MzAgMjAxMCArMDIwMAorCisgICAgRHBrZzo6U291cmNlOjpQYXRjaDogY2FwdHVyZSBvdXRwdXQgb2YgcGF0Y2ggYW5kIHByaW50IGl0IG9uIGVycm9yCisgICAgCisgICAgcGF0Y2ggaXMgbm93IHJ1biB3aXRob3V0IGl0cyAtcyBmbGFnIGFuZCB0aHVzIG91dHB1dHMgdGhlIHVzdWFsIG1lc3NhZ2VzCisgICAgYWJvdXQgd2hpY2ggZmlsZSBpdCdzIHBhdGNoaW5nIGFuZCBnaXZlcyBtb3JlIHZlcmJvc2UgZXJyb3IgbWVzc2FnZXMuCisgICAgVGhvc2UgbWVzc2FnZXMgYXJlIGNhcHR1cmVkIGFuZCBvbmx5IGRpc3BsYXllZCB0byB0aGUgdXNlciB3aGVuIHRoZQorICAgIHBhdGNoIGFwcGxpY2F0aW9uIGZhaWxlZC4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDIgKysKKyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG0gfCAgICA0ICsrLS0KKyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtICAgICAgICAgICAgfCAgIDEyICsrKysrKysrKysrLQorIDMgZmlsZXMgY2hhbmdlZCwgMTUgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworY29tbWl0IGY4NmZmNDE0MzRkYjBhNjYzMTc5Y2NlMTcwM2RkMWJjMjI2OWQwOTQKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgSnVuIDEwIDIwOjI4OjE2IDIwMTAgKzAyMDAKKworICAgIGRwa2ctc291cmNlOiBuZXcgb3B0aW9uIC0tYWJvcnQtb24tdXBzdHJlYW0tY2hhbmdlcworICAgIAorICAgIFRoaXMgb3B0aW9uIGNhbiBiZSB1c2VkIHdpdGggc291cmNlIGZvcm1hdHMgMS4wLCAyLjAgYW5kIDMuMCAocXVpbHQpLiBJdAorICAgIGFib3J0cyBldmVyeSB0aW1lIHRoYXQgeW91IHRyeSB0byBidWlsZCBhIHNvdXJjZSBwYWNrYWdlIHdoaWNoCisgICAgY29udGFpbnMgKHVubWFuYWdlZCkgY2hhbmdlcyB0byB0aGUgdXBzdHJlYW0gc291cmNlIGNvZGUuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICAgICAgfCAgICA0ICsrKysKKyBtYW4vZHBrZy1zb3VyY2UuMSAgICAgICAgICAgICAgICAgfCAgIDE0ICsrKysrKysrKysrKysrCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtIHwgICAgNiArKysrKysKKyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG0gfCAgICA4ICsrKysrKysrCisgc2NyaXB0cy9kcGtnLXNvdXJjZS5wbCAgICAgICAgICAgIHwgICAgMiArLQorIDUgZmlsZXMgY2hhbmdlZCwgMzMgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDllYWM4ZTNjNDM2MGMyZjU3Zjg2MzM2ZTJlYzk0N2UzOWQ3NjBhYzEKK0F1dGhvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitEYXRlOiAgIFRodSBKdW4gMTAgMjA6Mjk6MzkgMjAxMCArMDIwMAorCisgICAgVXBkYXRlIEdlcm1hbiB0cmFuc2xhdGlvbiBvZiBtYW51YWwgcGFnZXMKKyAgICAKKyAgICBVcGRhdGUgdG8gMTkyMnQuCisKKyBtYW4vcG8vZGUucG8gfCAgMTUzICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDg5IGluc2VydGlvbnMoKyksIDY0IGRlbGV0aW9ucygtKQorCitjb21taXQgNTdjNmIyZDc0YjQ3YzBkMWY4OTA3NTU5MzgzYTMwN2ZiNDg0ZjUwZQorQXV0aG9yOiBIZWxnZSBLcmV1dHptYW5uIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KK0RhdGU6ICAgVGh1IEp1biAxMCAyMDowODo0NiAyMDEwICswMjAwCisKKyAgICBVcGRhdGUgR2VybWFuIHNjcmlwdHMgdHJhbnNsYXRpb24KKyAgICAKKyAgICBVcGRhdGUgdG8gNTEwdAorCisgc2NyaXB0cy9wby9kZS5wbyB8ICAxNDIgKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA3NCBpbnNlcnRpb25zKCspLCA2OCBkZWxldGlvbnMoLSkKKworY29tbWl0IDJiMjA0NTMzYjhhMmE5NWNhMGQzNzk2OTc4MzY4ZjlmZDNkODJiOWMKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgSnVuIDEwIDE2OjIwOjQxIDIwMTAgKzAyMDAKKworICAgIGRwa2ctc291cmNlOiBuZXcgLS11bmFwcGx5LXBhdGNoZXMgb3B0aW9uCisgICAgCisgICAgVGhpcyBvcHRpb24gaXMgdXNlZCBieSBzb3VyY2UgZm9ybWF0cyAyLjAgYW5kIDMuMCAocXVpbHQpIHRvIHVuYXBwbHkKKyAgICBwYXRjaGVzIGFmdGVyIGEgc3VjY2Vzc2Z1bCBidWlsZC4gSXQncyB1c2VmdWwgZm9yIHBlb3BsZSB3aG8gbWFuYWdlIHRoZWlyCisgICAgcGFja2FnZXMgaW4gYSBWQ1MgcmVwb3NpdG9yeSBhbmQgcHJlZmVyIHRvIGhhdmUgcGF0Y2hlcyB1bmFwcGxpZWQsIGV2ZW4KKyAgICBhZnRlciBhIHBhY2thZ2UgYnVpbGQuCisgICAgCisgICAgR2l2ZW4gdGhhdCB0aGlzIG9wdGlvbiBpcyBhIG1hdHRlciBvZiBwZXJzb25hbCB0YXN0ZSwgZG8gbm90IGFsbG93IGl0CisgICAgaW4gZGViaWFuL3NvdXJjZS9vcHRpb25zIHNvIHRoYXQgdGhlIHJlc3VsdGluZyBzb3VyY2UgcGFja2FnZSBjYW5ub3QKKyAgICBoYXZlIHRoaXMgYmVoYXZpb3VyIGJ5IGRlZmF1bHQgYW5kIHNvIHRoYXQgYWxsIHNvdXJjZSBwYWNrYWdlcyBiZWhhdmUKKyAgICBpbiBhIGNvbnNpc3RlbnQgd2F5OiBwYXRjaGVzIGFwcGxpZWQgYnkgZGVmYXVsdCBpcyBhIG1ham9yIGZlYXR1cmUKKyAgICBvZiB0aGUgbmV3IGZvcm1hdHMuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA0ICsrKysKKyBtYW4vZHBrZy1zb3VyY2UuMSAgICAgICAgICAgICAgICAgICAgICAgfCAgICA5ICsrKysrKysrKworIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbSAgICAgICB8ICAgMjcgKysrKysrKysrKysrKysrKysrKysrKysrKysrCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtIHwgICAyMyArKysrKysrKysrKysrKysrKysrKysrKworIHNjcmlwdHMvZHBrZy1zb3VyY2UucGwgICAgICAgICAgICAgICAgICB8ICAgMTQgKysrKysrKysrKy0tLS0KKyA1IGZpbGVzIGNoYW5nZWQsIDczIGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA5Mjc4YmExMzUyMzNkNjNkN2YwODY5Y2JkNmVhOGRmMDgwMDk4N2YzCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IEp1biAxMCAxNzowODozOCAyMDEwICswMjAwCisKKyAgICBEcGtnOjpDb25mOiBhZGQgbmV3IGZpbHRlciBtZXRob2QKKyAgICAKKyAgICBUaGlzIG1ldGhvZCBjYW4gYmUgdXNlZCB0byBzZWxlY3QgYSBzdWJzZXQgb2Ygb3B0aW9ucyBlaXRoZXIKKyAgICBieSBleGNsdXNpb24gb3IgYnkgaW5jbHVzaW9uLgorCisgc2NyaXB0cy9EcGtnL0NvbmYucG0gfCAgIDIzICsrKysrKysrKysrKysrKysrKysrKystCisgMSBmaWxlcyBjaGFuZ2VkLCAyMiBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgY2FiNWFmMDRmYWRjZDkzOWE3YmVjZDVmY2IyNWRjZmI3YmMxMjFkZAorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBGZWIgMTggMTk6NDA6NTEgMjAxMCArMDEwMAorCisgICAgdXBkYXRlLWFsdGVybmF0aXZlczogcmV3cml0dGVuIGluIEMKKyAgICAKKyAgICB1cGRhdGUtYWx0ZXJuYXRpdmUgaGFzIGJlZW4gcmV3cml0dGVuIGFzIGEgbW9zdGx5IHN0YW5kYWxvbmUgQyBwcm9ncmFtLgorICAgIEl0IGhhcyB0aHVzIGJlZW4gbW92ZWQgdG8gdXRpbHMvIGluc3RlYWQgb2Ygc2NyaXB0cy8gdG9nZXRoZXIgd2l0aCBpdHMKKyAgICBSRUFETUUgYW5kIGl0cyB0ZXN0IHN1aXRlLgorICAgIAorICAgIFRoaXMgcmV3cml0ZSBpcyBiYXNlZCBvbiBzb21lIGluaXRpYWwgY29udmVyc2lvbiB3b3JrIGRvbmUgYnkgR3VpbGxlbQorICAgIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+LgorICAgIAorICAgIFRoZSBwcm9ncmFtIG5vdyBsb2dzIHRvIC92YXIvbG9nL2FsdGVybmF0aXZlcy5sb2cgaW5zdGVhZCBvZiBkcGtnLmxvZy4KKyAgICBUaGUgbG9ncm90YXRlIGZpbGUgaGFzIGJlZW4gdXBkYXRlZCB0byBkZWFsIHdpdGggdGhhdCBmaWxlIHRvby4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMyArCisgZGViaWFuL2Rwa2cubG9ncm90YXRlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA5ICsKKyBzY3JpcHRzLy5naXRpZ25vcmUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDEgLQorIHNjcmlwdHMvTWFrZWZpbGUuYW0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAxMiAtCisgc2NyaXB0cy91cGRhdGUtYWx0ZXJuYXRpdmVzLnBsICAgICAgICAgICAgICAgICAgICAgfCAxMTM5IC0tLS0tLS0tLQorIHV0aWxzLy5naXRpZ25vcmUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMiArCisgdXRpbHMvTWFrZWZpbGUuYW0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDQwICsKKyB7c2NyaXB0cyA9PiB1dGlsc30vUkVBRE1FLmFsdGVybmF0aXZlcyAgICAgICAgICAgICB8ICAgIDAKKyAuLi4vdC8xMDBfdXBkYXRlX2FsdGVybmF0aXZlcy50ICAgICAgICAgICAgICAgICAgICB8ICAgMzkgKy0KKyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmMgICAgICAgICAgICAgICAgICAgICAgICB8IDI0NDEgKysrKysrKysrKysrKysrKysrKysKKyAxMCBmaWxlcyBjaGFuZ2VkLCAyNTIxIGluc2VydGlvbnMoKyksIDExNjUgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBhOWJkYjhmODBmNmM5YWFiZmU2MzAzMjk0MGI1MjNlYzA1MTM2OThkCitBdXRob3I6IEhlbGdlIEtyZXV0em1hbm4gPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorRGF0ZTogICBUdWUgSnVuIDggMTg6NTU6MTIgMjAxMCArMDIwMAorCisgICAgVXBkYXRlIEdlcm1hbiB0cmFuc2xhdGlvbiBvZiBtYW51YWwgcGFnZXMKKyAgICAKKyAgICBVcGRhdGUgdG8gMTkyMHQuCisKKyBtYW4vcG8vZGUucG8gfCAgMzQ3ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDIyMiBpbnNlcnRpb25zKCspLCAxMjUgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBmYjM5YTgwOTMyYTYxNzM2ZjBlZTZlOTQxNmMzODgxNzgxN2EzOTUyCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIEp1biA3IDIyOjIwOjQ0IDIwMTAgKzAyMDAKKworICAgIGRwa2ctc2hsaWJkZXBzKDEpOiBmaXggdHlwbyBsaWJzc2wuc28uOS44IC0+IGxpYnNzbC5zby4wLjkuOAorICAgIAorICAgIEFsc28gZml4IGl0IGluIHRyYW5zbGF0aW9ucyB0byBhdm9pZCBmdXp6eSBzdHJpbmdzLgorCisgbWFuL2Rwa2ctc2hsaWJkZXBzLjEgfCAgICAyICstCisgbWFuL3BvL2RlLnBvICAgICAgICAgfCAgICA0ICsrLS0KKyBtYW4vcG8vZXMucG8gICAgICAgICB8ICAgIDQgKystLQorIG1hbi9wby9mci5wbyAgICAgICAgIHwgICAgNCArKy0tCisgbWFuL3BvL2h1LnBvICAgICAgICAgfCAgICAyICstCisgbWFuL3BvL2phLnBvICAgICAgICAgfCAgICAyICstCisgbWFuL3BvL3BsLnBvICAgICAgICAgfCAgICA0ICsrLS0KKyBtYW4vcG8vcHRfQlIucG8gICAgICB8ICAgIDIgKy0KKyBtYW4vcG8vcnUucG8gICAgICAgICB8ICAgIDIgKy0KKyBtYW4vcG8vc3YucG8gICAgICAgICB8ICAgIDIgKy0KKyAxMCBmaWxlcyBjaGFuZ2VkLCAxNCBpbnNlcnRpb25zKCspLCAxNCBkZWxldGlvbnMoLSkKKworY29tbWl0IDQ2OTRjZDY0MDg5YmM3Mjk3NWQ4YmE2ZmJlNTEzMzkwMjNlYjJlOGMKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgTWF5IDE5IDEyOjQxOjI4IDIwMTAgKzAyMDAKKworICAgIGRwa2c6IEFkZCB0d28gbmV3IGRwa2cgb3B0aW9ucyAtLXBhdGgtZXhjbHVkZSBhbmQgLS1wYXRoLWluY2x1ZGUKKyAgICAKKyAgICBUaGlzIHByb3ZpZGVzIHN1cHBvcnQgZm9yIGZpbHRlcmluZyBwYXRocyBvbiBwYWNrYWdlIGluc3RhbGxhdGlvbi4gVGhpcworICAgIGFsbG93cyBlbWJlZGRlZCBzeXN0ZW1zIHRvIHNraXAgL3Vzci9zaGFyZS9kb2MsIG1hbnBhZ2VzLCBldGMuCisgICAgCisgICAgZHBrZyBkb2VzIG5vdCBsb3NlIHRyYWNrIG9mIGV4Y2x1ZGVkIHBhdGhzIGR1cmluZyBmaWx0ZXJpbmcsIGFuZCB0aGV5CisgICAgZ2V0IGNoZWNrZWQgZm9yIGZpbGUgY29uZmxpY3RzIGFzIHVzdWFsLCBzbyBmaWx0ZXJzIGFyZSBub3QgYSB3YXkgdG8KKyAgICBhdm9pZCBmaWxlIGNvbmZsaWN0IHNpdHVhdGlvbnMuCisgICAgCisgICAgQ2xvc2VzOiAjNjg3ODgsICM2ODg2MSwgIzQ5NzMwNCwgIzUyNTU2NywgIzU4MzkwMgorICAgIAorICAgIEJhc2VkLW9uLXBhdGNoLWJ5OiBUb2xsZWYgRm9nIEhlZW4gPHRmaGVlbkBlcnIubm8+CisgICAgU2lnbmVkLW9mZi1ieTogTWFydGluIFBpdHQgPG1hcnRpbi5waXR0QHVidW50dS5jb20+CisgICAgU2lnbmVkLW9mZi1ieTogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDQgKysKKyBtYW4vZHBrZy4xICAgICAgIHwgICAzNyArKysrKysrKysrKysrKystCisgc3JjL01ha2VmaWxlLmFtICB8ICAgIDEgKworIHNyYy9hcmNoaXZlcy5jICAgfCAgICA4ICsrKworIHNyYy9maWx0ZXJzLmMgICAgfCAgMTI4ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKworIHNyYy9maWx0ZXJzLmggICAgfCAgIDM3ICsrKysrKysrKysrKysrKysKKyBzcmMvbWFpbi5jICAgICAgIHwgICAxNSArKysrKystCisgNyBmaWxlcyBjaGFuZ2VkLCAyMjggaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDA5NjlhOTFlZjllNjQ1NzAwNTU2OTQ3YjNhMmFmZDIyMzdlNGEyNmEKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gSnVuIDcgMDM6NDg6NDkgMjAxMCArMDIwMAorCisgICAgbGliZHBrZzogUmVtb3ZlIHNlY29uZCB2YV9jb3B5IGluIHZhcmJ1ZnZwcmludGYKKyAgICAKKyAgICBXZSBjYW4gZGlyZWN0bHkgdXNlIGFyZ3MgaW4gdGhlIHNlY29uZCB2c25wcmludGYgYXMgd2UgYXJlIGFib3V0IHRvCisgICAgcmV0dXJuLgorCisgbGliL2Rwa2cvdmFyYnVmLmMgfCAgICA1ICstLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA5N2JjMzA4MWQyZjBkMWM4MmY3Yjc4M2NlZDJjY2E0MmY0NjIxOTg0CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIEp1biA3IDAzOjQ1OjM2IDIwMTAgKzAyMDAKKworICAgIFVuaWZ5IG5hbWluZyBvZiB2YV9saXN0IHZhcmlhYmxlcyB0byBhcmdzIG9yIGFyZ3NfY29weQorCisgbGliL2NvbXBhdC9zbnByaW50Zi5jICB8ICAgIDggKysrLS0tCisgbGliL2NvbXBhdC92c25wcmludGYuYyB8ICAgIDQgKy0KKyBsaWIvZHBrZy9idWZmZXIuYyAgICAgIHwgICAgOCArKystLS0KKyBsaWIvZHBrZy9jb21tYW5kLmMgICAgIHwgICAyMCArKysrKysrKystLS0tLS0tLS0KKyBsaWIvZHBrZy9jb21tYW5kLmggICAgIHwgICAgMiArLQorIGxpYi9kcGtnL2NvbXByZXNzLmMgICAgfCAgIDI0ICsrKysrKysrKystLS0tLS0tLS0tCisgbGliL2Rwa2cvZHBrZy5oICAgICAgICB8ICAgIDMgKy0KKyBsaWIvZHBrZy9laGFuZGxlLmMgICAgIHwgICA1MyArKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIGxpYi9kcGtnL2xvZy5jICAgICAgICAgfCAgIDE2ICsrKysrKystLS0tLS0tCisgbGliL2Rwa2cvbXlvcHQuYyAgICAgICB8ICAgMTYgKysrKysrKy0tLS0tLS0KKyBsaWIvZHBrZy9wYXJzZWhlbHAuYyAgIHwgICAxNCArKysrKystLS0tLS0KKyBsaWIvZHBrZy92YXJidWYuYyAgICAgIHwgICAyNiArKysrKysrKysrKystLS0tLS0tLS0tCisgbTQvZHBrZy1mdW5jcy5tNCAgICAgICB8ICAgIDggKysrLS0tCisgc3JjL2Vycm9ycy5jICAgICAgICAgICB8ICAgMTEgKysrKystLS0tCisgc3JjL2hlbHAuYyAgICAgICAgICAgICB8ICAgMzcgKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tCisgMTUgZmlsZXMgY2hhbmdlZCwgMTMwIGluc2VydGlvbnMoKyksIDEyMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDM2ZWQ2ZmU2ZWI3NjExMGFjZWFlNTFjNGVmNDBjMTRkZjcwMjc5MjQKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gSnVuIDcgMDI6MjQ6MzggMjAxMCArMDIwMAorCisgICAgYnVpbGQ6IEVuYWJsZSBhZGRpdGlvbmFsIHdhcm5pbmdzIGJ5IGRlZmF1bHQKKyAgICAKKyAgICBUaGUgc2V0IG9mIGRlZmF1bHQgd2FybmluZ3MgaXMgcXVpdGUgc2FmZSwgYW5kIHNob3VsZCBwb2ludCBvdXQgcmVhbAorICAgIHByb2JsZW1zIG9yIHN0eWxpc3RpYyBvbmVzLiBJdCdzIGVhc3kgdG8gZm9yZ2V0LCBzbyBsZXQncyBlbmFibGUgdGhlbSBieQorICAgIGRlZmF1bHQuIFRoaXMgd2lsbCBhbHNvIG5vdCBpbnRlcmZlcmUgd2l0aCB1c2VyIHNldHRpbmdzIGFzIHRob3NlIHdpbGwKKyAgICBvdmVycmlkZSB0aGUgZGVmYXVsdHMuCisKKyBtNC9kcGtnLWNvbXBpbGVyLm00IHwgICAxNCArKysrKysrKy0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgOCBpbnNlcnRpb25zKCspLCA2IGRlbGV0aW9ucygtKQorCitjb21taXQgYTQ4NGYwMDlhMDVmOGE0M2E3NmU2NDRlMWNlOTdlMWMyZDE1NDNiNworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBKdW4gNyAwMTozMTo0NSAyMDEwICswMjAwCisKKyAgICBidWlsZDogQWxsb3cgY2hhbmdpbmcgZGVmYXVsdCBsb2dkaXIKKworIGNvbmZpZ3VyZS5hYyB8ICAgMTEgKysrKysrKysrKysKKyAxIGZpbGVzIGNoYW5nZWQsIDExIGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA5YmM1MTFjNGEwZWQ4NmU2Mzk2MzYxNmRjMWYyMjRlNmQ4ZmNiNjE1CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIEp1biA3IDAxOjEyOjI2IDIwMTAgKzAyMDAKKworICAgIGJ1aWxkOiBDaGFuZ2UgZGVmYXVsdCBhZG1pbmRpciB0byBMT0NBTFNUQVRFRElSL2xpYi9kcGtnCisgICAgCisgICAgVGhlIG9sZCBMT0NBTFNUQVRFRElSL2Rwa2cgYWRtaW5kaXIgZGVmYXVsdCBmb3JjZWQgdG8gc2V0IGxvY2Fsc3RhdGVkaXIKKyAgICB0byAvdmFyL2xpYiwgd2hpY2ggaXMgbm90IGNvcnJlY3QuIFdlIGNhbiBub3cgc2V0IGl0IHRvIHRoZSBjb3JyZWN0IC92YXIuCisKKyBjb25maWd1cmUuYWMgICAgIHwgICAgNCArKy0tCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDIgKysKKyBkZWJpYW4vcnVsZXMgICAgIHwgICAgMiArLQorIDMgZmlsZXMgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQorCitjb21taXQgYWI5MWYwMzg1MDIwNzAwZTY1OTUxNTE2YTgzNWIxNGI3NjY4YWM5YgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBKdW4gNiAyMTowODoyMCAyMDEwICswMjAwCisKKyAgICBsaWJjb21wYXQ6IEFkZCBkZWNsYXJhdGlvbnMgaW4gY29tcGF0LmggZm9yIHNucHJpbnRmIGZ1bmN0aW9ucworCisgbGliL2NvbXBhdC9jb21wYXQuaCB8ICAgIDggKysrKysrKysKKyAxIGZpbGVzIGNoYW5nZWQsIDggaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDBkYzg5OTY0OGIxZTkwN2E3NDVkYmVlZGM1YmU0NmIzZGRhYWJmOGQKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gSnVuIDYgMjE6MDY6MzQgMjAxMCArMDIwMAorCisgICAgbGliY29tcGF0OiBBZGQgc3VwcG9ydCBmb3IgYXNwcmludGYgYW5kIHZhc3ByaW50ZgorICAgIAorICAgIFByb3ZpZGUgY29tcGF0aWJpbGl0eSBjb2RlIHdoZW5ldmVyIHRoZSBzeXN0ZW0gZG9lcyBub3QuCisKKyBjb25maWd1cmUuYWMgICAgICAgICAgIHwgICAgMiArLQorIGxpYi9jb21wYXQvTWFrZWZpbGUuYW0gfCAgICA0ICsrKworIGxpYi9jb21wYXQvYXNwcmludGYuYyAgfCAgIDM4ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKworIGxpYi9jb21wYXQvY29tcGF0LmggICAgfCAgICA3ICsrKysrCisgbGliL2NvbXBhdC92YXNwcmludGYuYyB8ICAgNTkgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCisgNSBmaWxlcyBjaGFuZ2VkLCAxMDkgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDg1YzYwZmVjZmUyNDViNTQyY2VlYTUwMzk5NGZlZjAzNDdmMmU1MWIKK0F1dGhvcjogT21hciBDYW1wYWduZSA8b2NhbXBhZ25lQGdtYWlsLmNvbT4KK0RhdGU6ICAgU2F0IEp1biA1IDE3OjUwOjEyIDIwMTAgKzAyMDAKKworICAgIEZpeCBxdW90ZXMgKGdybXBmKQorICAgIAorICAgIEkgbm90aWNlZCBhbiBPb3BzLgorICAgIG9wdF9lczoiLUwgSVNPLTg4NTktMSIgICAgLUEgdXRmLTggICAgICAgXAorICAgIGl0J3Mgb3V0c2lkZSBxdW90ZXMuIERvZXNuJ3QgdGhyb3cgYW55IGVycm9yLCBqdXN0IGRvZXNuJ3QgZG8gaXRzIGpvYi4KKworIG1hbi9wby9wbzRhLmNmZyB8ICAgIDIgKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDRhOTcyMmY1YTA2NmQ0YmZmYTU4ZmQ2MjY0NzBjMjFkZGRlNzExMWMKK0F1dGhvcjogT21hciBDYW1wYWduZSA8b2NhbXBhZ25lQGdtYWlsLmNvbT4KK0RhdGU6ICAgU2F0IEp1biA1IDE3OjE2OjQ4IDIwMTAgKzAyMDAKKworICAgIEZpeCBlbmNvbmRpbmcgb2YgYWRkZW5kdW0KKyAgICAKKyAgICBUaGVyZSBpcyBhIHByb2JsZW0gd2l0aCB0aGUgYWRkZW5kdW0gb3V0cHV0LCB3aGljaCBkb2VzIHNob3cgd3JvbmcKKyAgICBjaGFyYWN0ZXJzLiAgSSBkb24ndCBrbm93IGlmIHRoYXQgcHJvYmxlbSB3YXMgdGhlcmUgYmVmb3JlIChicm9rZW4KKyAgICBhZGRlbmRhIGFyZSB1c3VhbCkuIEkgc2V0IG9wdF9lczoiLUwgSVNPLTg4NTktMSAtQSB1dGYtOCIgdG8gbWFrZSBpdAorICAgIHdvcmsuIFNvbWV0aW1lcyBJIGdvIGNyYXp5IHdpdGggZW5jb2RpbmdzICh0aGUgdGVybWluYWwsIHZpbSwgZXRjKQorCisgbWFuL3BvL3BvNGEuY2ZnIHwgICAgMiArLQorIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgNDA0ODlkY2RhZTc0ZWU3Y2MxOGJlYTEwMTBkZjQwMzU0NjkwZmUzOQorQXV0aG9yOiBPbWFyIENhbXBhZ25lIDxvY2FtcGFnbmVAZ21haWwuY29tPgorRGF0ZTogICBTYXQgSnVuIDUgMTc6MTM6MDQgMjAxMCArMDIwMAorCisgICAgUmV2ZXJ0IDk0MzRjYjdkNWU5MTcxODg4ODQ4OWY4YzA4YmZjZTdiNzY4YTdmMWQKKyAgICAKKyAgICBObyBuZWVkIGZvciB0aGF0IGFuZCBpdCBtZXNzZXMgc3R1ZmYuIFRoYXQgcmVmZXJzIHRvIHRoZSBsb2NhbGl6ZWQgZG9jdW1lbnQKKyAgICBjaGFyc2V0LCBub3QgdGhlIHBvLgorCisgbWFuL3BvL3BvNGEuY2ZnIHwgICAgMiArLQorIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgOTQzNGNiN2Q1ZTkxNzE4ODg4NDg5ZjhjMDhiZmNlN2I3NjhhN2YxZAorQXV0aG9yOiBPbWFyIENhbXBhZ25lIDxvY2FtcGFnbmVAZ21haWwuY29tPgorRGF0ZTogICBTYXQgSnVuIDUgMTQ6NTA6MTIgMjAxMCArMDIwMAorCisgICAgVXBkYXRlIFNwYW5pc2ggdHJhbnNsYXRpb24gb2YgbWFudWFsIHBhZ2VzCisgICAgCisgICAgVXBkYXRlIHRvIDE5MTB0LgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDEgKworIG1hbi9wby9lcy5hZGQgICAgfCAgICA0ICstCisgbWFuL3BvL2VzLnBvICAgICB8MTAwMDUgKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgbWFuL3BvL3BvNGEuY2ZnICB8ICAgIDIgKy0KKyA0IGZpbGVzIGNoYW5nZWQsIDUwMzcgaW5zZXJ0aW9ucygrKSwgNDk3NSBkZWxldGlvbnMoLSkKKworY29tbWl0IGVlZjNiNmViN2RiZTc0OWE3NDdmMmE2MDlkMTZkNGU5MGZmODAyYmUKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgSnVuIDIgMjM6MDE6MTMgMjAxMCArMDIwMAorCisgICAgZHBrZy1nZW5zeW1ib2xzOiBmaXggaGFuZGxpbmcgb2YgdGFncworICAgIAorICAgIEEgYmFkIGNoZWNrIHJlc3VsdGVkIGluIHNvbWUgdGFncyBiZWluZyBjb25zaWRlcmVkIGRpZmZlcmVudCB3aGVuIHRoZXkKKyAgICB3ZXJlIHJlYWxseSBlcXVhbC4KKyAgICAKKyAgICBSZXBvcnRlZC1ieTogTWljaGFlbCBUYXV0c2NobmlnIDxtdEBkZWJpYW4ub3JnPgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICAgfCAgICAyICsrCisgc2NyaXB0cy9EcGtnL1NobGlicy9TeW1ib2wucG0gfCAgICAyICstCisgMiBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA3OTgzZTk0OWY3YTYyN2RiMzk1MWYzZjEwNjhiZGY4NmM2NzFmMzQ4CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIEp1biAyIDAxOjU2OjA0IDIwMTAgKzAyMDAKKworICAgIGRwa2c6IFJlZmFjdG9yIGZpbGUgbGlzdCByZW1vdmFsIGludG8gbmV3IHJlbW92ZV9maWxlX2Zyb21fbGlzdCBmdW5jdGlvbgorICAgIAorICAgIFRoaXMgZGV0YW5nbGVzIHRoZSB0d28gaW5kZXBlbmRlbnQgYWN0aW9ucywgcmVtb3ZpbmcgZnJvbSB0aGUgbGlzdCBhbmQKKyAgICBza2lwaW5nIHRoZSBmaWxlIGZyb20gdGhlIHRhcmJhbGwuCisKKyBzcmMvYXJjaGl2ZXMuYyB8ICAgMjMgKysrKysrKysrKysrKysrLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDE1IGluc2VydGlvbnMoKyksIDggZGVsZXRpb25zKC0pCisKK2NvbW1pdCBjOWZkNTgwYTJlMzI2MDgxNzJjOGE4NmQwMGE4ZGZjNzcxM2Y4MTc4CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIEZlYiAyNCAyMDoxNjozNCAyMDEwICswMTAwCisKKyAgICBSZWZhY3RvciBnbG9iIGZ1bmN0aW9ucyBpbnRvIGl0cyBvd24gbW9kdWxlCisKKyBzcmMvTWFrZWZpbGUuYW0gfCAgICAxICsKKyBzcmMvZ2xvYi5jICAgICAgfCAgIDUxICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKworIHNyYy9nbG9iLmggICAgICB8ICAgMzggKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKKyBzcmMvc3RhdGNtZC5jICAgfCAgIDI5ICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgNCBmaWxlcyBjaGFuZ2VkLCA5MSBpbnNlcnRpb25zKCspLCAyOCBkZWxldGlvbnMoLSkKKworY29tbWl0IDc3ZGFmMjE4N2IwYTBjNDRjZjQwYjkzYTM4ODZkZGNkMDBhODE5MGQKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgSnVuIDEgMDQ6Mjk6MjUgMjAxMCArMDIwMAorCisgICAgYnVpbGQ6IERvIG5vdCBmYWxsYmFjayB0byB1c2UgY2hvd24gaW5zdGVhZCBvZiBsY2hvd24gaWYgbm90IGF2YWlsYWJsZQorICAgIAorICAgIFdoZW4gY3JlYXRpbmcgc3ltbGlua3Mgb24gZXh0cmFjdGlvbiwgZHBrZyBuZWVkcyB0byBzZXQgaXRzIG93bmVyLCBpZgorICAgIHdlIGZhbGxiYWNrIHRvIHVzZSBjaG93biBpbiBwbGFjZSBvZiBsY2hvd24gd2UgbWlnaHQgZ2V0IHRvIGEgc2l0dWF0aW9uCisgICAgd2hlcmUgdGhlIGRlcmVmZXJlbmNlZCBzeW1saW5rIGRvZXMgbm90IHlldCBleGlzdCwgd2hpY2ggd291bGQgY2F1c2UgYW4KKyAgICB1bndhbnRlZCBlcnJvci4KKyAgICAKKyAgICBPbiBzb21lIG9sZGVyIGFuZCBidWdneSBzeXN0ZW1zLCBjaG93biBkb2VzIG5vdCBhY3R1YWxseSBkZXJlZmVyZW5jZQorICAgIHN5bWxpbmtzLCBzbyBpdCBjb3VsZCBiZSBzYWZlbHkgdXNlZCBhbHRob3VnaCBpdCB3b3VsZCBuZWVkIHRvIGJlCisgICAgZGV0ZWN0ZWQgYXQgcnVudGltZSwgYXMgdGhlIGtlcm5lbCBjb3VsZCBiZSBzd2l0Y2hlZCB1bmRlciBvdXIgZmVldCwKKyAgICBidXQgZ2l2ZW4gdGhhdCBsY2hvd24gaXMgYWxyZWFkeSBzcGVjaWZpZWQgYnkgVU5JWDk4LCB0aGVyZSdzIG5vdCBtdWNoCisgICAgc2Vuc2UgaW4gbm90IGFzc3VtaW5nIGl0J3MgcHJlc2VudCBhbmQgd29ya2luZyBhdCB0aGlzIHBvaW50IGluIHRpbWUuCisKKyBjb25maWd1cmUuYWMgICAgICAgIHwgICAgMiArLQorIGxpYi9jb21wYXQvY29tcGF0LmggfCAgICA0IC0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgNSBkZWxldGlvbnMoLSkKKworY29tbWl0IDIwNjUyYTgyOWJlOGU4MWJjODg1OGZkZWFjMjYyZGU3ODAxZWYxNDEKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgSnVuIDEgMDM6NDA6MDEgMjAxMCArMDIwMAorCisgICAgYnVpbGQ6IFVzZSBEUEtHX0NIRUNLX0RFQ0wgaW5zdGVhZCBvZiBEUEtHX0NIRUNLX0RFRklORSBmb3IgVElPQ05PVFRZCisgICAgCisgICAgRFBLR19DSEVDS19ERUZJTkUgZGVmaW5lcyB0aGUgSEFWRV9zeW1ib2wgdG8gMSBpZiBmb3VuZCwgYW5kIHRvIDAKKyAgICBvdGhlcndpc2UuIEJ1dCB0aGUgb25seSBjdXJyZW50IHVzZXIgaXMgZG9pbmcg4oCcI2lmZGVmIFRJT0NOT1RUWeKAnSwgd2hpY2gKKyAgICBkZWZlYXRzIHRoZSB0ZXN0IGFzIGl0J3MgYWx3YXlzIGdvaW5nIHRvIGJlIHRydWUsIHJlZ2FyZGxlc3Mgb2YgdGhlCisgICAgdmFsdWUuIFN3aXRjaCB0byB0aGUgc2ltcGxpZmllZCBEUEtHX0NIRUNLX0RFQ0wsIHdoaWNoIGRvZXMgbm90IGRlZmluZQorICAgIHRoZSBzeW1ib2wgaWYgbm90IGZvdW5kLCBhbmQgcmVtb3ZlIG5vdyB1bnVzZWQgRFBLR19DSEVDS19ERUZJTkUuCisKKyBjb25maWd1cmUuYWMgICAgIHwgICAgMiArLQorIG00L2Rwa2ctdHlwZXMubTQgfCAgIDE2IC0tLS0tLS0tLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMTcgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAzNzA2ZDYyMTRhODY1OTNlNzJiYzk1MTRmMDhmM2M0ZTBmZDBhOTJjCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIEp1biAxIDAyOjUzOjUyIDIwMTAgKzAyMDAKKworICAgIHMtcy1kOiBGaXggYWJvcnQgd2hlbiBvcGVuaW5nIC9kZXYvdHR5IHdpdGggLS1iYWNrZ3JvdW5kCisgICAgCisgICAgQ29tbWl0IDJlMmNhYjEyMjhhNmVmZGVlNTdkMTY1YzUwOGMyZTA1Yzg1MjBmNDMsIGludHJvZHVjaW5nIGVycm9yCisgICAgY2hlY2tzLCByZXZlYWxlZCB0aGF0IHRoZSBUSU9DTk9UVFkgaW9jdGwoKSB3YXMgYmVpbmcgaXNzdWVkIGFmdGVyCisgICAgaGF2aW5nIGNhbGxlZCBzZXRzaWQoKSwgd2hpY2ggYWxyZWFkeSBkZXRhY2hlcyB0aGUgY3VycmVudCBjb250cm9sbGluZworICAgIHR0eSwgbWFraW5nIHRoZSBzdWJzZXF1ZW50IGRldGFjaCBmYWlsLCBhbmQgcy1zLWQgYWJvcnQuCisgICAgCisgICAgVElPQ05PVFRZIHNob3VsZCBvbmx5IGJlIHVzZWQgaWYgc2V0c2lkKCkgaXMgbm90IGF2YWlsYWJsZS4gSW4gYWRkaXRpb24sCisgICAgaWYgb3BlbigiL2Rldi90dHkiKSBmYWlscywgdGhhdCBtZWFucyB0aGVyZSdzIG5vIGNvbnRyb2xsaW5nIHR0eSwgc28gd2UKKyAgICBzaG91bGQgc2tpcCBkZXRhY2hpbmcgaXQuCisgICAgCisgICAgVGhpcyBwcm9ibGVtIGdvdCBpbnRyb2R1Y2VkIGluIDNkNmYzYTllNTRjNDM3ZDYyYzU4ZWFhYjRlZWI5ZjAyZWI5MDU5ZTYsCisgICAgd2hlbiBlbmFibGluZyBzZXRzaWQoKSBhcyBhIHJlcGxhY2VtZW50IGZvciBzZXRwZ2lkKCksIGJ1dCBub3QgZGlzYWJsaW5nCisgICAgVElPQ05PVFRZLgorICAgIAorICAgIFJlcG9ydGVkLWJ5OiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisgICAgU2lnbmVkLW9mZi1ieTogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisgdXRpbHMvc3RhcnQtc3RvcC1kYWVtb24uYyB8ICAgMzcgKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMjMgaW5zZXJ0aW9ucygrKSwgMTQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBlODQ0NjcyNTk1MjQ2YzgxZjRhOGU0NWNhODQyZGM2YWEzYTRkYmM4CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIE1heSAyNiAwMjozNzo0MiAyMDEwICswMjAwCisKKyAgICBidWlsZDogT25seSB1c2UgbW1hcCBpbiBwYXJzZXIgaWYgZXhwbGljaXRseSByZXF1ZXN0ZWQKKyAgICAKKyAgICBUaGUgY3VycmVudCBtbWFwIGNvZGUgaXMgbm90IHJlbGlhYmxlLCBhcyBpdCBkb2VzIG5vdCBoYW5kbGUgU0lHQlVTLAorICAgIHdoaWNoIGNhbiBoYXBwZW4gb24gSS9PIGVycm9ycyAoYW1vbmcgb3RoZXJzKS4gU3dpdGNoIHRoZSBjb2RlIHRvCisgICAgY2hlY2sgZm9yIFVTRV9NTUFQIGluc3RlYWQgb2YgSEFWRV9NTUFQIHNvIHRoYXQgaXQgY2FuIGJlIGV4cGxpY2l0bHkKKyAgICBlbmFibGVkIG9uIGJ1aWxkLCB0byBwcm9kdWNlIGNvbnNpc3RlbnQgcmVzdWx0cyBieSBtYWtpbmcgc3VyZSBpdCBkb2VzCisgICAgbm90IGdldCByZWFjdGl2YXRlZCBhY2NpZGVudGFsbHkuIERpc2FibGUgaXQgYnkgZGVmYXVsdCBkdWUgdG8gdGhlCisgICAgYWJvdmUsIGluIGFkZGl0aW9uIHRvIG5vdCBoYXZpbmcgYmVlbiB1c2VkIGJ5IHJlbGVhc2VkIHRhcmJhbGxzIHNpbmNlCisgICAgMS4xNC4xNS4KKworIGNvbmZpZ3VyZS5hYyAgICAgfCAgICAyICsrCisgbGliL2Rwa2cvcGFyc2UuYyB8ICAgIDYgKysrLS0tCisgbTQvZHBrZy1mdW5jcy5tNCB8ICAgMTYgKysrKysrKysrKysrKysrKworIDMgZmlsZXMgY2hhbmdlZCwgMjEgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworY29tbWl0IGUxY2U4ZTVlMDAyNzMzM2EwZjMwNzFiOWQ4YmQ4MWI1M2NiYjEwMTEKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgTWF5IDIwIDA0OjE2OjU1IDIwMTAgKzAyMDAKKworICAgIGRwa2c6IFJlZHVjZSBzY29wZSBvZiB2YXJpYWJsZXMgaW4gYXVkaXQoKQorCisgc3JjL2VucXVpcnkuYyB8ICAgIDggKysrKy0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKKworY29tbWl0IDk3MmFiYTVkMjUzZTM4NDhkNDcxZjYzNWJiYjU3NGZhZGY1MGI4MjUKK0F1dGhvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitEYXRlOiAgIFR1ZSBNYXkgMjUgMTU6Mzc6NDUgMjAxMCArMDIwMAorCisgICAgVXBkYXRlIEdlcm1hbiB0cmFuc2xhdGlvbiBvZiBtYW51YWwgcGFnZXMKKyAgICAKKyAgICBVcGRhdGUgdG8gMTkxMHQuCisKKyBtYW4vcG8vZGUucG8gfCAgIDkxICsrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMTkgaW5zZXJ0aW9ucygrKSwgNzIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA4NWI2MWFkYWJmNzVmMTFlNTE5ZGY4NjllNzM1N2FjOWYxMWM4ZGUyCitBdXRob3I6IEJpbGwgQWxsb21iZXJ0IDxiYWxsb21iZUBkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgTWF5IDI1IDAxOjMwOjI5IDIwMTAgKzAyMDAKKworICAgIGxpYmRwa2c6IGluIHBhcnNlZGIoKSBmaW5pc2ggdGhlIHJlbmFtZSBvZiBzdGF0IC0+IHN0CisgICAgCisgICAgVGhpcyB3YXMgZm9yZ290dGVuIGluIGNvbW1pdCA1Y2YwMjNmMmQ1YmY2MDliNmFiYTIwYWE1YjVlMjg1YTkxZmJiYmNlLgorCisgbGliL2Rwa2cvcGFyc2UuYyB8ICAgIDIgKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGQ2YjQ0NzRhMDA3MTg4YzRlM2FhN2RhODAyOWU3ODAwMDY2MDBlZmYKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gTWF5IDI0IDIxOjA1OjAwIDIwMTAgKzAyMDAKKworICAgIFJlZ2VuZXJhdGUgLnBvdCBmaWxlcyBhbmQgbWVyZ2UgLnBvIGZpbGVzIHdpdGggdGhlbQorCisgZHNlbGVjdC9wby9icy5wbyAgICAgICAgfCAgMTUzICsrLS0KKyBkc2VsZWN0L3BvL2NhLnBvICAgICAgICB8ICAxNjggKystLQorIGRzZWxlY3QvcG8vY3MucG8gICAgICAgIHwgIDE1MyArKy0tCisgZHNlbGVjdC9wby9kYS5wbyAgICAgICAgfCAgMTUzICsrLS0KKyBkc2VsZWN0L3BvL2RlLnBvICAgICAgICB8ICAxNjYgKystLQorIGRzZWxlY3QvcG8vZHNlbGVjdC5wb3QgIHwgIDE1NSArKy0tCisgZHNlbGVjdC9wby9lbC5wbyAgICAgICAgfCAgMTUzICsrLS0KKyBkc2VsZWN0L3BvL2VzLnBvICAgICAgICB8ICAxNTMgKystLQorIGRzZWxlY3QvcG8vZXQucG8gICAgICAgIHwgIDE1MyArKy0tCisgZHNlbGVjdC9wby9ldS5wbyAgICAgICAgfCAgMTUzICsrLS0KKyBkc2VsZWN0L3BvL2ZyLnBvICAgICAgICB8ICAxNzAgKystLQorIGRzZWxlY3QvcG8vZ2wucG8gICAgICAgIHwgIDE1MyArKy0tCisgZHNlbGVjdC9wby9odS5wbyAgICAgICAgfCAgMTUzICsrLS0KKyBkc2VsZWN0L3BvL2lkLnBvICAgICAgICB8ICAxNTMgKystLQorIGRzZWxlY3QvcG8vaXQucG8gICAgICAgIHwgIDE1NyArKy0tCisgZHNlbGVjdC9wby9qYS5wbyAgICAgICAgfCAgMTUzICsrLS0KKyBkc2VsZWN0L3BvL2tvLnBvICAgICAgICB8ICAxNTMgKystLQorIGRzZWxlY3QvcG8vbmIucG8gICAgICAgIHwgIDE3NSArKy0tCisgZHNlbGVjdC9wby9ubC5wbyAgICAgICAgfCAgMTUzICsrLS0KKyBkc2VsZWN0L3BvL25uLnBvICAgICAgICB8ICAxNjMgKystLQorIGRzZWxlY3QvcG8vcGwucG8gICAgICAgIHwgIDE1NyArKy0tCisgZHNlbGVjdC9wby9wdC5wbyAgICAgICAgfCAgMTUzICsrLS0KKyBkc2VsZWN0L3BvL3B0X0JSLnBvICAgICB8ICAxNTMgKystLQorIGRzZWxlY3QvcG8vcm8ucG8gICAgICAgIHwgIDE1NyArKy0tCisgZHNlbGVjdC9wby9ydS5wbyAgICAgICAgfCAgMTU3ICsrLS0KKyBkc2VsZWN0L3BvL3NrLnBvICAgICAgICB8ICAxNTMgKystLQorIGRzZWxlY3QvcG8vc3YucG8gICAgICAgIHwgIDE1MyArKy0tCisgZHNlbGVjdC9wby90bC5wbyAgICAgICAgfCAgMTUzICsrLS0KKyBkc2VsZWN0L3BvL3ZpLnBvICAgICAgICB8ICAxNTYgKystLQorIGRzZWxlY3QvcG8vemhfQ04ucG8gICAgIHwgIDE1MyArKy0tCisgZHNlbGVjdC9wby96aF9UVy5wbyAgICAgfCAgMTUzICsrLS0KKyBtYW4vcG8vZGUucG8gICAgICAgICAgICB8ICAxNjAgKysrLQorIG1hbi9wby9kcGtnLW1hbi5wb3QgICAgIHwgMTc5NiArKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLQorIG1hbi9wby9lcy5wbyAgICAgICAgICAgIHwgMTkzNyArKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0KKyBtYW4vcG8vZnIucG8gICAgICAgICAgICB8IDIxOTggKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBtYW4vcG8vaHUucG8gICAgICAgICAgICB8IDE5MTYgKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0KKyBtYW4vcG8vamEucG8gICAgICAgICAgICB8IDE5NTQgKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tCisgbWFuL3BvL3BsLnBvICAgICAgICAgICAgfCAxOTkyICsrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0KKyBtYW4vcG8vcHRfQlIucG8gICAgICAgICB8IDE5MTggKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0KKyBtYW4vcG8vcnUucG8gICAgICAgICAgICB8IDE5MTYgKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0KKyBtYW4vcG8vc3YucG8gICAgICAgICAgICB8IDIzODkgKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9hc3QucG8gICAgICAgICAgICAgICB8ICA3OTAgKysrKysrKysrLS0tLS0tLQorIHBvL2JzLnBvICAgICAgICAgICAgICAgIHwgIDYyNCArKysrKysrLS0tLS0tCisgcG8vY2EucG8gICAgICAgICAgICAgICAgfCAgODYwICsrKysrKysrKystLS0tLS0tLQorIHBvL2NzLnBvICAgICAgICAgICAgICAgIHwgIDc5NiArKysrKysrKystLS0tLS0tCisgcG8vZGEucG8gICAgICAgICAgICAgICAgfCAgNzYwICsrKysrKysrLS0tLS0tLQorIHBvL2RlLnBvICAgICAgICAgICAgICAgIHwgIDY3OSArKysrKysrKy0tLS0tLQorIHBvL2Rwa2cucG90ICAgICAgICAgICAgIHwgIDYyNiArKysrKysrLS0tLS0tCisgcG8vZHoucG8gICAgICAgICAgICAgICAgfCAgNzU3ICsrKysrKysrLS0tLS0tLQorIHBvL2VsLnBvICAgICAgICAgICAgICAgIHwgIDgyNiArKysrKysrKystLS0tLS0tCisgcG8vZW8ucG8gICAgICAgICAgICAgICAgfCAgNjM3ICsrKysrKysrLS0tLS0tCisgcG8vZXMucG8gICAgICAgICAgICAgICAgfCAgODA5ICsrKysrKysrKy0tLS0tLS0KKyBwby9ldC5wbyAgICAgICAgICAgICAgICB8ICA2MzYgKysrKysrKystLS0tLS0KKyBwby9ldS5wbyAgICAgICAgICAgICAgICB8ICA2MzggKysrKysrKystLS0tLS0KKyBwby9mci5wbyAgICAgICAgICAgICAgICB8ICA4NzcgKysrKysrKysrKy0tLS0tLS0tCisgcG8vZ2wucG8gICAgICAgICAgICAgICAgfCAgODAxICsrKysrKysrKy0tLS0tLS0KKyBwby9odS5wbyAgICAgICAgICAgICAgICB8ICA2NDQgKysrKysrKystLS0tLS0KKyBwby9pZC5wbyAgICAgICAgICAgICAgICB8ICA2NDIgKysrKysrKystLS0tLS0KKyBwby9pdC5wbyAgICAgICAgICAgICAgICB8ICA2NjEgKysrKysrKystLS0tLS0KKyBwby9qYS5wbyAgICAgICAgICAgICAgICB8ICA3OTEgKysrKysrKysrLS0tLS0tLQorIHBvL2ttLnBvICAgICAgICAgICAgICAgIHwgIDczNCArKysrKysrKy0tLS0tLS0KKyBwby9rby5wbyAgICAgICAgICAgICAgICB8ICA3ODQgKysrKysrKysrLS0tLS0tLQorIHBvL2t1LnBvICAgICAgICAgICAgICAgIHwgIDYyNCArKysrKysrLS0tLS0tCisgcG8vbHQucG8gICAgICAgICAgICAgICAgfCAgNjI1ICsrKysrKystLS0tLS0KKyBwby9tci5wbyAgICAgICAgICAgICAgICB8ICA3NTAgKysrKysrKystLS0tLS0tCisgcG8vbmIucG8gICAgICAgICAgICAgICAgfCAgODEyICsrKysrKysrKy0tLS0tLS0KKyBwby9uZS5wbyAgICAgICAgICAgICAgICB8ICA3NDYgKysrKysrKystLS0tLS0tCisgcG8vbmwucG8gICAgICAgICAgICAgICAgfCAgNzcxICsrKysrKysrLS0tLS0tLQorIHBvL25uLnBvICAgICAgICAgICAgICAgIHwgIDY3NSArKysrKysrKy0tLS0tLQorIHBvL3BhLnBvICAgICAgICAgICAgICAgIHwgIDc1MCArKysrKysrKy0tLS0tLS0KKyBwby9wbC5wbyAgICAgICAgICAgICAgICB8ICA2NDUgKysrKysrKystLS0tLS0KKyBwby9wdC5wbyAgICAgICAgICAgICAgICB8ICA4MDcgKysrKysrKysrLS0tLS0tLQorIHBvL3B0X0JSLnBvICAgICAgICAgICAgIHwgIDgwMiArKysrKysrKystLS0tLS0tCisgcG8vcm8ucG8gICAgICAgICAgICAgICAgfCAgODM0ICsrKysrKysrKy0tLS0tLS0tCisgcG8vcnUucG8gICAgICAgICAgICAgICAgfCAgNjQ2ICsrKysrKysrLS0tLS0tCisgcG8vc2sucG8gICAgICAgICAgICAgICAgfCAgNzg2ICsrKysrKysrKy0tLS0tLS0KKyBwby9zdi5wbyAgICAgICAgICAgICAgICB8ICA3ODUgKysrKysrKysrLS0tLS0tLQorIHBvL3RoLnBvICAgICAgICAgICAgICAgIHwgIDc3NiArKysrKysrKystLS0tLS0tCisgcG8vdGwucG8gICAgICAgICAgICAgICAgfCAgNjQyICsrKysrKysrLS0tLS0tCisgcG8vdmkucG8gICAgICAgICAgICAgICAgfCAgOTEzICsrKysrKysrKystLS0tLS0tLQorIHBvL3poX0NOLnBvICAgICAgICAgICAgIHwgIDc4OCArKysrKysrKystLS0tLS0tCisgcG8vemhfVFcucG8gICAgICAgICAgICAgfCAgNzc0ICsrKysrKysrKy0tLS0tLS0KKyBzY3JpcHRzL3BvL2NhLnBvICAgICAgICB8ICAyNTYgKysrLS0tCisgc2NyaXB0cy9wby9kZS5wbyAgICAgICAgfCAgIDk0ICstCisgc2NyaXB0cy9wby9kcGtnLWRldi5wb3QgfCAgMjYwICsrKy0tLQorIHNjcmlwdHMvcG8vZnIucG8gICAgICAgIHwgIDM5MiArKysrKy0tLS0KKyBzY3JpcHRzL3BvL3BsLnBvICAgICAgICB8ICAyNzQgKysrLS0tCisgc2NyaXB0cy9wby9ydS5wbyAgICAgICAgfCAgMjgzICsrKy0tLQorIHNjcmlwdHMvcG8vc3YucG8gICAgICAgIHwgIDI4OSArKystLS0KKyA4OSBmaWxlcyBjaGFuZ2VkLCAzMDM2NyBpbnNlcnRpb25zKCspLCAyNDgyMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGE0NDg2MTAwN2JlOTU2MzkxNDg2ODlhYWI1MDhiMzM5MzU2Y2MwNzEKK0F1dGhvcjogT21hciBDYW1wYWduZSA8b2NhbXBhZ25lQGdtYWlsLmNvbT4KK0RhdGU6ICAgTW9uIE1heSAyNCAyMDo1NjozMiAyMDEwICswMjAwCisKKyAgICBGaXggdHlwb3MgaW4gbXVsdGlwbGUgbWFudWFsIHBhZ2VzCisKKyBtYW4vZHBrZy1nZW5zeW1ib2xzLjEgICB8ICAgIDIgKy0KKyBtYW4vZHBrZy1zY2FucGFja2FnZXMuMSB8ICAgIDQgKystLQorIG1hbi9kcGtnLjEgICAgICAgICAgICAgIHwgICAgMiArLQorIDMgZmlsZXMgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQorCitjb21taXQgMTc0ZWE2NWQ0YzQ4Yzg5NDY2MjU3OTQ2NTExOGI5M2ZhNzc5OTI3MQorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBNYXkgMjQgMTk6MDA6MTYgMjAxMCArMDIwMAorCisgICAgZHBrZy1tYWludHNjcmlwdC1oZWxwZXI6IG1ha2UgPGxhc3R2ZXJzaW9uPiBvcHRpb25hbCBpbiBybV9jb25mZmlsZSBhbmQgbXZfY29uZmZpbGUKKyAgICAKKyAgICBFbmhhbmNlIGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyIHJtX2NvbmZmaWxlIGFuZCBtdl9jb25mZmlsZSB0byB3b3JrCisgICAgcHJvcGVybHkgd2hlbiA8bGFzdHZlcnNpb24+IGlzIG5vdCBnaXZlbiAob3IgaXMgZW1wdHkpLiBUaGlzIHNob3VsZAorICAgIHRyeSB0aGUgb3BlcmF0aW9uIG9uIGV2ZXJ5IHVwZ3JhZGUgYnV0IGRvIHNvbWV0aGluZyBvbmx5IHdoZW4gdGhlIGZpbGUgdG8KKyAgICBhY3QgdXBvbiByZWFsbHkgZXhpc3RzLgorICAgIAorICAgIERvY3VtZW50IHRoaXMgYmVoYXZpb3VyLgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICAgICAgICB8ICAgIDIgKysKKyBtYW4vZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMSAgICAgIHwgICAyNCArKysrKysrKysrKysrKy0tLS0tLS0tLS0KKyBzY3JpcHRzL2Rwa2ctbWFpbnRzY3JpcHQtaGVscGVyLnNoIHwgICAzNiArKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0KKyAzIGZpbGVzIGNoYW5nZWQsIDQxIGluc2VydGlvbnMoKyksIDIxIGRlbGV0aW9ucygtKQorCitjb21taXQgOWIwMjdkOGU0ZTllNmJhMDBmNjljNTIxODBiZmE2NDNlYWE2MWI2NworQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBNYXkgMjQgMTc6MTU6MTUgMjAxMCArMDIwMAorCisgICAgZHBrZy1tYWludHNjcmlwdC1oZWxwZXI6IGZpeCBmdW5jdGlvbiBjYWxsZWQgYnkgbXZfY29uZmZpbGUgaW4gcG9zdHJtCisgICAgCisgICAgU2ltcGxlIGNvcHktcGFzdGUgZXJyb3IsIGl0IHdvcmtlZCBkZXNwaXRlIHRoZSBtaXN0YWtlIGR1ZSB0byB0aGUgc2ltaWxhcml0eSBvZgorICAgIGFib3J0X212X2NvbmZmaWxlIGFuZCBhYm9ydF9ybV9jb25mZmlsZS4KKworIHNjcmlwdHMvZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuc2ggfCAgICAyICstCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBiZGIxMTkyZDc1MmE3NDRlMDg2MjQ3NjZmMGZhNTVhMjJmZjM3ZTJiCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIE1heSAyNCAxNzowMToyMCAyMDEwICswMjAwCisKKyAgICBkcGtnLW1haW50c2NyaXB0LWhlbHBlcjogY2xhcmlmeSBtZWFuaW5nIG9mIGxhc3R2ZXJzaW9uIGZvciBybV9jb25mZmlsZQorICAgIAorICAgIENsYXJpZnkgdGhhdCBkcGtnLW1haW50c2NyaXB0LWhlbHBlciBybV9jb25mZmlsZSBuZWVkcyB0aGUgbGFzdCB2ZXJzaW9uIG9mCisgICAgdGhlIHBhY2thZ2UgdGhhdCBkaWQgbm90IHJlbW92ZSB0aGUgb2Jzb2xldGUgY29uZmZpbGUgaWYgdGhpcyB3YXMgbm90CisgICAgaW1wbGVtZW50ZWQgYXQgdGhlIHRpbWUgdGhlIGZpbGUgYmVjYW1lIG9ic29sZXRlLgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICAgfCAgICAzICsrKworIG1hbi9kcGtnLW1haW50c2NyaXB0LWhlbHBlci4xIHwgICAgNCArKystCisgMiBmaWxlcyBjaGFuZ2VkLCA2IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBhMGIyNjdlYzU5MWYxYjAwMTU2YjE3ZjljZWI5YTg1YTI0ZmY1NDMxCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIE1heSAyNCAxNTo1Njo1NyAyMDEwICswMjAwCisKKyAgICBkcGtnLW1haW50c2NyaXB0LWhlbHBlcjogaGFuZGxlIG1pc3NpbmcgcGFyYW1ldGVycyBwcm9wZXJseQorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICAgICAgICB8ICAgIDIgKysKKyBzY3JpcHRzL2Rwa2ctbWFpbnRzY3JpcHQtaGVscGVyLnNoIHwgICAxMiArKysrKysrKysrLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDEyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA3MTA2YTJkMTQ4YWNlN2VhMWU3ODZlNDFlMTFmODQwODFiNDdmZWM4CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIE1heSAyMSAxODowMDowMSAyMDEwICswMjAwCisKKyAgICBkcGtnLWJ1aWxkcGFja2FnZTogdXNlIERwa2c6OlBhdGg6OmZpbmRfY29tbWFuZCBpbnN0ZWFkIG9mIGN1c3RvbSB0ZXN0Y29tbWFuZAorCisgc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbCB8ICAgMTUgKysrKy0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDExIGRlbGV0aW9ucygtKQorCitjb21taXQgNDUyZWIyZmJhODE5YzIyNzY0YWIxMmM4NTBkZWVlYjBkM2NhOGQ5YQorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBNYXkgMjEgMTY6MzA6NTEgMjAxMCArMDIwMAorCisgICAgRHBrZzo6U2hsaWJzOjpPYmpkdW1wOiB1c2UgdGhlIGNyb3NzIG9iamR1bXAgd2hlbiBjcm9zcyBjb21waWxpbmcKKyAgICAKKyAgICBXaGVuIDxjcm9zcy1wcmVmaXg+LW9iamR1bXAgaXMgYXZhaWxhYmxlIGFuZCB3aGVuIHdlJ3JlIGNyb3NzLWNvbXBpbGluZworICAgIGxldCdzIHVzZSB0aGUgY3Jvc3Mgb2JqZHVtcCBpbiBwcmVmZXJlbmNlIG92ZXIgdGhlIHN0YW5kYXJkIG9iamR1bXAuCisgICAgCisgICAgQmFzZWQtb24tcGF0Y2gtYnk6IExvw69jIE1pbmllciA8bG9vbEBkZWJpYW4ub3JnPgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICAgIHwgICAgMiArKworIHNjcmlwdHMvRHBrZy9TaGxpYnMvT2JqZHVtcC5wbSB8ICAgMjggKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgMjEgaW5zZXJ0aW9ucygrKSwgOSBkZWxldGlvbnMoLSkKKworY29tbWl0IDEyYzhiYzJjMWRiODVmYjZjZjIzMjAwYjY2Nzk4ZTJmZDgwY2UyMTkKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgTWF5IDIxIDE2OjA4OjAxIDIwMTAgKzAyMDAKKworICAgIERwa2c6OlBhdGg6IG5ldyBmdW5jdGlvbiBmaW5kX2NvbW1hbmQoKSB0aGF0IGZpbmRzIGEgY29tbWFuZCBvbiB0aGUgUEFUSAorCisgc2NyaXB0cy9EcGtnL1BhdGgucG0gfCAgIDE5ICsrKysrKysrKysrKysrKysrLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDE3IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAwZDhjYTEwNTA0ZWFkYzNlZDEzMDY0NWVkZmVjNjdmOWFiNjM1ZTYzCitBdXRob3I6IEhlbGdlIEtyZXV0em1hbm4gPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorRGF0ZTogICBGcmkgTWF5IDIxIDEwOjU1OjM0IDIwMTAgKzAyMDAKKworICAgIFVwZGF0ZSBHZXJtYW4gdHJhbnNsYXRpb24gb2YgbWFudWFsIHBhZ2VzCisgICAgCisgICAgVXBkYXRlIHRvIDE5MTB0LgorCisgbWFuL3BvL2RlLnBvIHwgIDUyMyArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDI4NCBpbnNlcnRpb25zKCspLCAyMzkgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA5MTJlZWVhM2ZjNjFlYzE1NTU0ZTkzNjUxYjg5N2JhODExYTU2YmVhCitBdXRob3I6IEhlbGdlIEtyZXV0em1hbm4gPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorRGF0ZTogICBGcmkgTWF5IDIxIDEwOjM1OjQzIDIwMTAgKzAyMDAKKworICAgIFVwZGF0ZSBHZXJtYW4gc2NyaXB0cyB0cmFuc2xhdGlvbgorICAgIAorICAgIFVwZGF0ZSB0byA1MTB0CisKKyBzY3JpcHRzL3BvL2RlLnBvIHwgICAyNCArKysrKysrKysrKysrKysrLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDE2IGluc2VydGlvbnMoKyksIDggZGVsZXRpb25zKC0pCisKK2NvbW1pdCBkYjBiNzBiYzI2ZWM2ZjgxMjQyZTRjMzRhZTMwY2FlODFhZjhkM2QxCitBdXRob3I6IENvbGluIFdhdHNvbiA8Y2p3YXRzb25AdWJ1bnR1LmNvbT4KK0RhdGU6ICAgVGh1IE1heSAyMCAxNTozODo0MSAyMDEwICswMTAwCisKKyAgICBsaWIvZHBrZy90ZXN0L3QtYXIuYzogZml4IGJ1ZmZlciBvdmVyZmxvdyBpbiBhciB0ZXN0CisgICAgCisgICAgdC1hciBvdmVyZmxvd3MgYXJoLmFyX25hbWUgYnkgdHdvIGJ5dGVzOiBvbmUgYmVjYXVzZSB0aGUgc3RyaW5nIGl0IHVzZXMKKyAgICBpcyAxNyBieXRlcyBsb25nIHJhdGhlciB0aGFuIDE2LCBhbmQgb25lIGJlY2F1c2UgaXQgdXNlcyBzdHJjcHkgd2hpY2gKKyAgICB3cml0ZXMgYSB0cmFpbGluZyBcMC4gIFdoZW4gY29tcGlsaW5nIHdpdGggLURfRk9SVElGWV9TT1VSQ0U9MiwgYXMKKyAgICBVYnVudHUgZG9lcyBieSBkZWZhdWx0LCB0aGlzIGNyYXNoZXMuICBGaXggdGhlIHN0cmluZyBsZW5ndGggYW5kIHN0b3AKKyAgICBudWxsLXRlcm1pbmF0aW5nIGl0LgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgfCAgICAzICsrKworIGxpYi9kcGtnL3Rlc3QvdC1hci5jIHwgICAgNCArKy0tCisgMiBmaWxlcyBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBjMjk4YTYzOGY5ZGFiODdkNTlhOTRlNDM5NzI2NmM3MDE0NTcwNDdjCitBdXRob3I6IENvbGluIFdhdHNvbiA8Y2p3YXRzb25AdWJ1bnR1LmNvbT4KK0RhdGU6ICAgVGh1IE1heSAyMCAxNjozOToxMiAyMDEwICswMTAwCisKKyAgICBkcGtnKDEpOiBjbGFyaWZ5IHNjb3BlIG9mIC0tY29uZmlndXJlCisgICAgCisgICAgUm9iZXJ0IFBlcnNzb24gcG9pbnRlZCBvdXQgaW4KKyAgICBodHRwczovL2J1Z3MubGF1bmNocGFkLm5ldC91YnVudHUvK3NvdXJjZS9kcGtnLytidWcvNzcyODcgdGhhdAorICAgIGRlc2NyaWJpbmcgLS1jb25maWd1cmUgYXMgIlJlY29uZmlndXJlIGFuIHVucGFja2VkIHBhY2thZ2UiIGlzIHNpbXBseQorICAgIHdyb25nLiAgVGhpcyBwYXRjaCBjbGFyaWZpZXMgaXRzIGJlaGF2aW91ciwgYW5kIGFkZHMgYSBoZWxwZnVsIHBvaW50ZXIKKyAgICB0byBkcGtnLXJlY29uZmlndXJlKDgpICh0aGVyZSdzIGFscmVhZHkgb25lIGluIHRoZSBTRUUgQUxTTyBzZWN0aW9uKSBmb3IKKyAgICB0aG9zZSB3aG8gcmVhbGx5IHdhbnQgdGhhdCBpbnN0ZWFkLgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDMgKysrCisgbWFuL2Rwa2cuMSAgICAgICB8ICAgMTAgKysrKysrKy0tLQorIDIgZmlsZXMgY2hhbmdlZCwgMTAgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworY29tbWl0IDM5NWM4YTBhY2M5MGM4ZGYxMGViMmRlMGI3ZDZkYjEzZjY0ZmZiOGEKK0F1dGhvcjogSWFuIEZsZW1pbmcgPGlmbGVtYUB5YWhvby5jb20uYXU+CitEYXRlOiAgIFRodSBNYXkgMjAgMTY6MTY6MDQgMjAxMCArMDEwMAorCisgICAgZHBrZy1hcmNoaXRlY3R1cmUoMSk6IEZpeCB0eXBvcworICAgIAorICAgIERFQl9IT1NUX0FSQ0hfQklUUyB3YXMgbGlzdGVkIGFzIERFQl9CVUlMRF9BUkNIX0JJVFM7CisgICAgREVCX0hPU1RfQVJDSF9FTkRJQU4gd2FzIGxpc3RlZCBhcyBERUJfQlVJTERfQVJDSF9FTkRJQU4uICBJbiB0aGUKKyAgICBwcm9jZXNzLCBhZGp1c3QgdGhlIG9yZGVyaW5nIHRvIG1hdGNoIGRwa2ctYXJjaGl0ZWN0dXJlJ3Mgb3V0cHV0LgorICAgIE9yaWdpbmFsbHkgcmVwb3J0ZWQgYXMKKyAgICBodHRwczovL2J1Z3MubGF1bmNocGFkLm5ldC91YnVudHUvK3NvdXJjZS9kcGtnLytidWcvNTY0MzA4LgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgfCAgICAzICsrKworIG1hbi9kcGtnLWFyY2hpdGVjdHVyZS4xIHwgICAxNCArKysrKysrLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgMTAgaW5zZXJ0aW9ucygrKSwgNyBkZWxldGlvbnMoLSkKKworY29tbWl0IGZmNzU0NThkYTAxNDFiYjA4YTVlOTI4MDM3ZDNlNzhkM2UzMzgyZDcKK0F1dGhvcjogQ29saW4gV2F0c29uIDxjandhdHNvbkB1YnVudHUuY29tPgorRGF0ZTogICBUaHUgTWF5IDIwIDE0OjE4OjE0IDIwMTAgKzAxMDAKKworICAgIERwa2c6OlZlbmRvcjo6VWJ1bnR1OiBIYW5kbGUgaGFyZGVuaW5nIGluIERFQl9CVUlMRF9PUFRJT05TCisgICAgCisgICAgSGFuZGxlIGhhcmRlbmluZy13cmFwcGVyIG9wdGlvbnMgdmlhIERFQl9CVUlMRF9PUFRJT05TLiAgT3JpZ2luYWxseQorICAgIGNvbnRyaWJ1dGVkIGJ5IEtlZXMgQ29vay4gIFRoaXMgaXMgVWJ1bnR1LXNwZWNpZmljIGZvciBub3csIHBlbmRpbmcKKyAgICBhZ3JlZW1lbnQgb24gYSBiZXR0ZXIgaW50ZXJmYWNlOyBzZWUgIzQ4OTc3MSBmb3IgYmFja2dyb3VuZC4KKworIHNjcmlwdHMvRHBrZy9WZW5kb3IvVWJ1bnR1LnBtIHwgICAzOSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKKyAxIGZpbGVzIGNoYW5nZWQsIDM5IGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBhNjlkYjllMGZiMThmZTMwYjVjNzkxMDA0N2NhY2VlNTU1MzQ1ZmRlCitBdXRob3I6IENvbGluIFdhdHNvbiA8Y2p3YXRzb25AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IE1heSAyMCAxNDoxNzozOSAyMDEwICswMTAwCisKKyAgICBkcGtnLWJ1aWxkcGFja2FnZTogRXhwb3J0IGFsbCBidWlsZCBmbGFncworICAgIAorICAgIEV4cG9ydCBhbGwgZmxhZ3Mgc2V0IGluIERwa2c6OkJ1aWxkRmxhZ3MgdG8gdGhlIGVudmlyb25tZW50LCBzbyB0aGF0CisgICAgdmVuZG9ycyBjYW4gdXNlZnVsbHkgZGVmaW5lIGFkZGl0aW9uYWwgdmFyaWFibGVzLgorCisgc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbCB8ICAgIDIgKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDZlZDg0OTdjMmUzODMzZGU4MjY3ODZmZTFhYjBlMDUyZjJhMzM1YjYKK0F1dGhvcjogQ29saW4gV2F0c29uIDxjandhdHNvbkBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgTWF5IDIwIDE0OjE3OjE5IDIwMTAgKzAxMDAKKworICAgIERwa2c6OkJ1aWxkRmxhZ3M6IHNpbXBsaWZ5IHVwZGF0ZS1idWlsZGZsYWdzIGhvb2sKKyAgICAKKyAgICBQYXNzIHRoZSBlbnRpcmUgRHBrZzo6QnVpbGRGbGFncyBvYmplY3QgdG8gdXBkYXRlLWJ1aWxkZmxhZ3MsIHNvIHRoYXQKKyAgICBob29rcyBjYW4gdXNlIGl0cyBzZXQoKSBtZXRob2QgcmF0aGVyIHRoYW4gc2V0dGluZyBoYXNoIGVsZW1lbnRzCisgICAgZGlyZWN0bHkuCisKKyBzY3JpcHRzL0Rwa2cvQnVpbGRGbGFncy5wbSAgICAgfCAgICAyICstCisgc2NyaXB0cy9EcGtnL1ZlbmRvci9EZWZhdWx0LnBtIHwgICAgOCArKysrLS0tLQorIHNjcmlwdHMvRHBrZy9WZW5kb3IvVWJ1bnR1LnBtICB8ICAgIDMgKy0tCisgMyBmaWxlcyBjaGFuZ2VkLCA2IGluc2VydGlvbnMoKyksIDcgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyZDRmZDYyN2Q0Mjg2ZGM0MjAwNmZiNDg2MDQwMjA5ZDRlMDIxYjlmCitBdXRob3I6IENvbGluIFdhdHNvbiA8Y2p3YXRzb25AdWJ1bnR1LmNvbT4KK0RhdGU6ICAgVGh1IE1heSAyMCAxMzo0OTowNiAyMDEwICswMTAwCisKKyAgICBBZGQgdGVzdHMgZm9yIFVidW50dSBjaGFuZ2Vsb2cgcGFyc2luZworICAgIAorICAgIFVidW50dSdzIGNoYW5nZWxvZyBwYXJzaW5nIGlzIG5lYXJseSBpZGVudGljYWwgdG8gRGViaWFuJ3MsIGJ1dCBtYXkgZW1pdAorICAgIGFuIGFkZGl0aW9uYWwgTGF1bmNocGFkLUJ1Z3MtRml4ZWQgaGVhZGVyLiBUZXN0IHRoYXQgY2hhbmdlbG9ncworICAgIG1hdGNoaW5nIHRoZSBhcHByb3ByaWF0ZSByZWdleCBhcmUgcGFyc2VkIGNvcnJlY3RseSBib3RoIGZvciBEZWJpYW4gYW5kCisgICAgVWJ1bnR1LgorICAgIAorICAgIFRvIGRvIHRoaXMsIHdlIHRha2UgY29waWVzIG9mIHRoZSBzdGFuZGFyZCBvcmlnaW4gZmlsZXMgYW5kIGFkZCBhbgorICAgIGludGVybmFsIG1lY2hhbmlzbSBhbGxvd2luZyBEcGtnOjpWZW5kb3IgdG8gYmUgcG9pbnRlZCBhdCB0aGVtOyBhbmQgd2UKKyAgICBydW4gNjAwX0Rwa2dfQ2hhbmdlbG9nLnQgYSBzZWNvbmQgdGltZSB3aXRoIERFQl9WRU5ET1Igc2V0LCB0byBhdm9pZAorICAgIGR1cGxpY2F0aW5nIGxvdHMgb2YgY29kZS4gU2VlIHRoZSBkaXNjdXNzaW9uIGluICM1MzYwNjYgZm9yIGJhY2tncm91bmQuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICAgICAgICAgIHwgICAgMiArKworIHNjcmlwdHMvRHBrZy9WZW5kb3IucG0gICAgICAgICAgICAgICAgfCAgICA1ICsrKystCisgc2NyaXB0cy9NYWtlZmlsZS5hbSAgICAgICAgICAgICAgICAgICB8ICAgIDIgKysKKyBzY3JpcHRzL3QvNjAwX0Rwa2dfQ2hhbmdlbG9nLnQgICAgICAgIHwgICAxOCArKysrKysrKysrKysrKystLS0KKyBzY3JpcHRzL3QvNjAwX0Rwa2dfQ2hhbmdlbG9nL2ZpZWxkcyAgIHwgICAgMiArKworIHNjcmlwdHMvdC82MDBfRHBrZ19DaGFuZ2Vsb2dfVWJ1bnR1LnQgfCAgIDIxICsrKysrKysrKysrKysrKysrKysrKworIHNjcmlwdHMvdC9vcmlnaW5zL2RlYmlhbiAgICAgICAgICAgICAgfCAgICAzICsrKworIHNjcmlwdHMvdC9vcmlnaW5zL2RlZmF1bHQgICAgICAgICAgICAgfCAgICAxICsKKyBzY3JpcHRzL3Qvb3JpZ2lucy91YnVudHUgICAgICAgICAgICAgIHwgICAgNCArKysrCisgOSBmaWxlcyBjaGFuZ2VkLCA1NCBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQorCitjb21taXQgZDAyZWQ5NDUxZTgzMzA5ZGNjNzk1MzcwNjYxYzkxMGUwYmQ3NWU4ZQorQXV0aG9yOiBIZWxnZSBLcmV1dHptYW5uIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KK0RhdGU6ICAgVGh1IE1heSAyMCAxMjowNTo0NCAyMDEwICswMjAwCisKKyAgICBVcGRhdGUgR2VybWFuIHRyYW5zbGF0aW9uIG9mIG1hbnVhbCBwYWdlcworICAgIAorICAgIFVwZGF0ZSB0byAxOTAxdDBmNnUuCisKKyBtYW4vcG8vZGUucG8gfCA0ODYwICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDI0NzggaW5zZXJ0aW9ucygrKSwgMjM4MiBkZWxldGlvbnMoLSkKKworY29tbWl0IGJhZjMzMWE3M2JmZWIyMjlmOTcxNzIzM2M0N2EzY2ZmNjI4MmYyZDcKK0F1dGhvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitEYXRlOiAgIFRodSBNYXkgMjAgMTE6Mzg6NTUgMjAxMCArMDIwMAorCisgICAgVXBkYXRlIEdlcm1hbiBzY3JpcHRzIHRyYW5zbGF0aW9uCisgICAgCisgICAgVXBkYXRlIHRvIDUwOHQKKworIHNjcmlwdHMvcG8vZGUucG8gfCAgMjU0ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMTM2IGluc2VydGlvbnMoKyksIDExOCBkZWxldGlvbnMoLSkKKworY29tbWl0IDVlOWRkZmM0NDEwOTQ2NGNkMGRlZWZkNjllYjczNzVhNjZlZDAzZDMKK0F1dGhvcjogSm9uYXRoYW4gTmllZGVyIDxqcm5pZWRlckBnbWFpbC5jb20+CitEYXRlOiAgIFRodSBNYXkgMjAgMDA6NTQ6MDggMjAxMCAtMDUwMAorCisgICAgZHBrZy1zb3VyY2U6IGRvIG5vdCBlbnN1cmUgcHJlcmVxdWlzaXRlcyBhcmUgbWV0IGZvciAtLWJlZm9yZS1idWlsZC8tLWFmdGVyLWJ1aWxkCisgICAgCisgICAgSXQgaXMgcGVyZmVjdGx5IHJlYXNvbmFibGUgdG8gdXNlIHRoZSBiZWZvcmVfYnVpbGQgYW5kIGFmdGVyX2J1aWxkCisgICAgaG9va3MgaW4gc2l0dWF0aW9ucyB3aGVyZSB0aGUgc291cmNlIHBhY2thZ2UgaXMgbWlzc2luZy4KKyAgICAKKyAgICBXaXRob3V0IHRoaXMgY2hhbmdlLCBhdHRlbXB0cyB0byBidWlsZCBhIHBhY2thZ2Ugb2YgZm9ybWF0IDMuMCAocXVpbHQpCisgICAgd2l0aCB0aGUgdXBzdHJlYW0gdGFyYmFsbCBtaXNzaW5nIHJlc3VsdCBpbiBlcnJvcnMuCisgICAgCisgICAgICQgZHBrZy1idWlsZHBhY2thZ2UgLWIKKyAgICAgWy4uLl0KKyAgICAgIGRwa2ctc291cmNlIC1JIC1pIC0tYmVmb3JlLWJ1aWxkIGNzb3VuZAorICAgICBkcGtnLWJ1aWxkcGFja2FnZTogaG9zdCBhcmNoaXRlY3R1cmUgaTM4NgorICAgICBkcGtnLXNvdXJjZTogZXJyb3I6IGNhbid0IGJ1aWxkIHdpdGggc291cmNlIGZvcm1hdCAnMy4wIChxdWlsdCknOiBubyBvcmlnLnRhciBmaWxlIGZvdW5kCisgICAgCisgICAgU2lnbmVkLW9mZi1ieTogSm9uYXRoYW4gTmllZGVyIDxqcm5pZWRlckBnbWFpbC5jb20+CisgICAgU2lnbmVkLW9mZi1ieTogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisgc2NyaXB0cy9kcGtnLXNvdXJjZS5wbCB8ICAgMTIgKysrKystLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDcgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBlNmY2YmIwOGYxNWI1MDdiYTFhZTM0YWQyNzRlNmRiNzZmMTM2MTRkCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIE1heSAxOSAyMjoxMjoyMCAyMDEwICswMjAwCisKKyAgICBsaWJkcGtnOiB1cGRhdGUgd19ib29sZWFuZGVmbm8oKSB0byBjb3BlIHdpdGggdGhlIGNoYW5nZWQgdHlwZSBvZiBib29sZWFucworICAgIAorICAgIEJvb2xlYW4gZmllbGRzIGFyZSBub3cgc3RvcmVkIGluICJib29sIiB2YXJpYWJsZXMgYW5kIG5vIGxvbmdlciBpbiBpbnRlZ2Vycy4KKyAgICBUaGUgZm9ybWVyIGlzIDEtYnl0ZSBsb25nIGFuZCBkb2Vzbid0IG1hdGNoIHRoZSBsZW5ndGggb2YgYW4gaW50LCBzbyB0aGUKKyAgICBjYXN0IGRvbmUgaW4gUEtHUEZJRUxEIHdhcyByZWFkaW5nIHRvbyBtdWNoIGRhdGEgYWZ0ZXIgdGhlIG9mZnNldCB3aGVyZQorICAgIHRoZSBib29sZWFuIGZpZWxkIGlzIHN0b3JlZC4KKyAgICAKKyAgICBUaGlzIHVwZGF0ZSB3YXMgbWlzc2VkIGluIGNvbW1pdCA3ZWIzMDYyNGEwYjc5NTU5MjRiYWZkOTQ2NmQyMjZmNzBlNWNmNDhmLgorCisgbGliL2Rwa2cvZHVtcC5jIHwgICAgNyArKysrLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAxOTAxNGRkZGRlMGViODY3MjFiYzY1NmM4MDE2MDBmNjEyZDVjN2MyCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIE1heSAxOSAwNTo1Nzo0NSAyMDEwICswMjAwCisKKyAgICBkc2VsZWN0OiBGaXggdmFyaWFibGUgdXNhZ2UgYWZ0ZXIgZGVsZXRlIHdoZW4gdXNpbmcgLS1kZWJ1ZworCisgZGViaWFuL2NoYW5nZWxvZyAgICAgIHwgICAgMSArCisgZHNlbGVjdC9wa2dzdWJsaXN0LmNjIHwgICAgMiArLQorIDIgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgNWFiYWZlMGZlNjQ1ZmMyZmVkNWM3ZTM2ZWJiNWZkYzJlMDU5Y2RiNAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBNYXkgMTkgMDY6MDU6MDEgMjAxMCArMDIwMAorCisgICAgZHNlbGVjdDogRml4IG1lbW9yeSBsZWFrIG9uIGluZXhpc3RlbnQgbWV0aG9kIGRpcmVjdG9yeQorCisgZHNlbGVjdC9tZXRocGFyc2UuY2MgfCAgICA1ICsrKystCisgMSBmaWxlcyBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyOGNhYWZmZWE3MTdmNWY4Mjc5NzJjMGQ2ZDU0ZjE3NTAxMThiZDgyCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIE1heSAxOSAwNjowNDoxMiAyMDEwICswMjAwCisKKyAgICBkcGtnLWRlYiwgZHBrZy1zcGxpdDogRml4IGZldyByZXNvdXJjZSBsZWFrcworCisgZHBrZy1kZWIvZXh0cmFjdC5jIHwgICAgNCArKysrCisgZHBrZy1zcGxpdC9qb2luLmMgIHwgICAgMSArCisgMiBmaWxlcyBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA0ODE1YjYwNDFkODI2ZjYwNTI3NWQ4MTIwNjE5NWUyMGJjOWNlZDgwCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIE1heSAxOSAwNToyNjozOSAyMDEwICswMjAwCisKKyAgICBkcGtnLWRlYjogUmVkdWNlIHNjb3BlIG9mIGluZm9idWYgdmFyaWFibGUgaW4gZXh0cmFjdGhhbGYKKworIGRwa2ctZGViL2V4dHJhY3QuYyB8ICAgIDQgKysrLQorIDEgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgZTkxMTg4OWM5ZjQwMDRkOWQ0MzAzMjkzM2E5MDUwMGNiNjU1ZmU5YworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBNYXkgMTkgMDU6MjQ6MzEgMjAxMCArMDIwMAorCisgICAgZHBrZy1kZWI6IEZpeCBsZWFrIG9uIG5vbi1zeW1saW5rIHBhdGhzIHdoZW4gYnVpbGRpbmcgdGhlIHBhY2thZ2UKKyAgICAKKyAgICBJZiBpdCdzIGEgc3ltbGluayBpdCBnZXRzIGluc2VydGVkIGludG8gdG8gdGhlIHN5bWxpc3QsIHdoaWNoIGdldHMgZnJlZWQKKyAgICBhdCB0aGUgZW5kLiBJZiBpdCdzIG5vdCB3ZSBoYXZlIHRvIGZyZWUgb3Vyc2VsdmVzLCB3aGljaCB3YXMgbm90IGJlaW5nCisgICAgZG9uZS4KKworIGRwa2ctZGViL2J1aWxkLmMgfCAgICAxICsKKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IGNiOThlMjAzOGUxOTVkZDBlZDI5Mjc0NzM4MTM1ZGE0YjE3MDlhZmIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgTWF5IDE5IDA1OjIxOjQ3IDIwMTAgKzAyMDAKKworICAgIGRwa2ctZGViOiBSZWZhY3RvciBmaWxlX2luZm8gZnJlZWluZyBpbnRvIGEgbmV3IGZpbGVfaW5mb19mcmVlIGZ1bmN0aW9uCisKKyBkcGtnLWRlYi9idWlsZC5jIHwgICAxMCArKysrKysrKy0tCisgMSBmaWxlcyBjaGFuZ2VkLCA4IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA1MWU4NGQ5NmRiZWM4NTYzMDE4MDI5NTJkOTM3NzEwY2NjOTBiMmYzCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIE1heSAxOSAwNTo1OTowOSAyMDEwICswMjAwCisKKyAgICBkcGtnLWRlYjogQ2hlY2sgZm9yIGVycm9yIG9uIGxzdGF0CisKKyBkcGtnLWRlYi9idWlsZC5jIHwgICAgMyArKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDJlMmNhYjEyMjhhNmVmZGVlNTdkMTY1YzUwOGMyZTA1Yzg1MjBmNDMKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgTWF5IDE5IDA2OjAwOjAwIDIwMTAgKzAyMDAKKworICAgIHMtcy1kOiBDaGVjayBmb3IgZXJyb3Igb24gb3BlbiBhbiBpb2N0bCBjYWxscworCisgdXRpbHMvc3RhcnQtc3RvcC1kYWVtb24uYyB8ICAgIDcgKysrKysrLQorIDEgZmlsZXMgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgYjI4YmRhMzg1ODc4MzNhNDg2ZmIxMDU2Njg5MGY3MDI2OWY1YjQ4ZAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBNYXkgMTggMjM6MTQ6MDMgMjAxMCArMDIwMAorCisgICAgYnVpbGQ6IFBhc3MgLS1wcmV2aW91cyB0byBtc2dtZXJnZSB3aXRoIHRoZSBuZXcgTVNHTUVSR0VfT1BUSU9OUyB2YXJpYWJsZQorICAgIAorICAgIFRoaXMgbmV3IG9wdGlvbnMgZ290IGludHJvZHVjZWQgaW4gZ2V0dGV4dCAwLjE4LCBhbmQgaGVscHMgc2lnbmlmaWNhbnRseQorICAgIHRyYW5zbGF0b3JzJyB3b3JrLgorCisgZHNlbGVjdC9wby9NYWtldmFycyB8ICAgIDIgKysKKyBwby9NYWtldmFycyAgICAgICAgIHwgICAgMiArKworIHNjcmlwdHMvcG8vTWFrZXZhcnMgfCAgICAyICsrCisgMyBmaWxlcyBjaGFuZ2VkLCA2IGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBiZGMyMzhkYTFiMWU0OGI2NmMwZjQwMDM1MjBjMzIzMWFkZGM3NDJjCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIE1heSAxOCAyMTo1ODoyNCAyMDEwICswMjAwCisKKyAgICBidWlsZDogUmVxdWlyZSBnZXR0ZXh0IDAuMTgKKyAgICAKKyAgICBSZW1vdmUgZW1iZWRkZWQgZ2V0dGV4dCBmaWxlcyBmcm9tIHRoZSByZXBvc2l0b3J5LCBub3cgcHJvcGVybHkKKyAgICBpbnN0YWxsZWQgYnkgYXV0b3BvaW50IGZvciBhbGwgcG8vIGRpcmVjdG9yaWVzLiBBZGQgdmVyc2lvbmVkCisgICAgQnVpbGQtRGVwZW5kcy4KKworIGNvbmZpZ3VyZS5hYyAgICAgICAgICAgICAgICAgICB8ICAgIDIgKy0KKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICAgfCAgICA2ICsKKyBkZWJpYW4vY29udHJvbCAgICAgICAgICAgICAgICAgfCAgICAzICstCisgZHNlbGVjdC9wby8uZ2l0aWdub3JlICAgICAgICAgIHwgICAgMSArCisgZHNlbGVjdC9wby9NYWtlZmlsZS5pbi5pbiAgICAgIHwgIDQwMyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgZHNlbGVjdC9wby9yZW1vdmUtcG90Y2RhdGUuc2luIHwgICAxOSAtLQorIHNjcmlwdHMvcG8vLmdpdGlnbm9yZSAgICAgICAgICB8ICAgIDEgKworIHNjcmlwdHMvcG8vTWFrZWZpbGUuaW4uaW4gICAgICB8ICA0MDMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHNjcmlwdHMvcG8vcmVtb3ZlLXBvdGNkYXRlLnNpbiB8ICAgMTkgLS0KKyA5IGZpbGVzIGNoYW5nZWQsIDExIGluc2VydGlvbnMoKyksIDg0NiBkZWxldGlvbnMoLSkKKworY29tbWl0IDA3MTE4OGNiZTllZGUzYmI3Nzk4ZmIxMmViNTIyZmI5ZTVmZDE2ZDUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgTWF5IDE4IDIxOjQ1OjA0IDIwMTAgKzAyMDAKKworICAgIElnbm9yZSBhbGwgZm9yZWlnbiBtNCBmaWxlcworICAgIAorICAgIE5vdyB0aGF0IHRoZSBkcGtnIG00IGZpbGVzIGFyZSBuYW1lc3BhY2VkLCB3ZSBjYW4gaWdub3JlIGFsbCBmb3JlaWduCisgICAgb25lcyBzYWZlbHkuCisKKyBtNC8uZ2l0aWdub3JlIHwgICAzNSArKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAzMyBkZWxldGlvbnMoLSkKKworY29tbWl0IDdlYjMwNjI0YTBiNzk1NTkyNGJhZmQ5NDY2ZDIyNmY3MGU1Y2Y0OGYKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gTWF5IDE3IDE1OjA0OjQ5IDIwMTAgKzAyMDAKKworICAgIFVzZSBib29sIGluc3RlYWQgb2YgaW50IHdoZXJldmVyIGFwcHJvcHJpYXRlCisKKyBkcGtnLWRlYi9leHRyYWN0LmMgICAgICAgIHwgICAxMiArKysrKysrLS0tLS0KKyBkcGtnLWRlYi9pbmZvLmMgICAgICAgICAgIHwgICAyNCArKysrKysrKysrKysrKysrKystLS0tLS0KKyBkcGtnLXNwbGl0L3F1ZXVlLmMgICAgICAgIHwgICAyNiArKysrKysrKysrKysrKysrKysrLS0tLS0tLQorIGRzZWxlY3QvYmFzZWNtZHMuY2MgICAgICAgfCAgIDE2ICsrKysrKysrKystLS0tLS0KKyBkc2VsZWN0L2JpbmRpbmdzLmNjICAgICAgIHwgICAxMyArKysrKysrKystLS0tCisgZHNlbGVjdC9iaW5kaW5ncy5oICAgICAgICB8ICAgIDUgKysrLS0KKyBkc2VsZWN0L2RzZWxlY3QuaCAgICAgICAgIHwgICAgNCArKy0tCisgZHNlbGVjdC9wa2djbWRzLmNjICAgICAgICB8ICAgMTUgKysrKysrKysrLS0tLS0tCisgZHNlbGVjdC9wa2dkZXBjb24uY2MgICAgICB8ICAgMjYgKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0KKyBkc2VsZWN0L3BrZ2xpc3QuY2MgICAgICAgIHwgICAyOCArKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tCisgZHNlbGVjdC9wa2dsaXN0LmggICAgICAgICB8ICAgMTQgKysrKysrKy0tLS0tLS0KKyBkc2VsZWN0L3BrZ3N1Ymxpc3QuY2MgICAgIHwgICAxOCArKysrKysrKysrKystLS0tLS0KKyBsaWIvZHBrZy9kYXRhYmFzZS5jICAgICAgIHwgICAgOCArKysrLS0tLQorIGxpYi9kcGtnL2Rwa2ctZGIuaCAgICAgICAgfCAgIDE0ICsrKysrKystLS0tLS0tCisgbGliL2Rwa2cvZHVtcC5jICAgICAgICAgICB8ICAgIDQgKysrLQorIGxpYi9kcGtnL2ZpZWxkcy5jICAgICAgICAgfCAgICA2ICsrKy0tLQorIGxpYi9kcGtnL25mbWFsbG9jLmMgICAgICAgfCAgICA2ICsrKy0tLQorIGxpYi9kcGtnL3BhcnNlLmMgICAgICAgICAgfCAgICAzICsrLQorIGxpYi9kcGtnL3BhcnNlaGVscC5jICAgICAgfCAgICA4ICsrKysrLS0tCisgbGliL2Rwa2cvcGtnLWZvcm1hdC5jICAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9kcGtnL3Byb2dyZXNzLmggICAgICAgfCAgICA0ICsrKy0KKyBsaWIvZHBrZy90cmlnbGliLmMgICAgICAgIHwgICAyNCArKysrKysrKysrKystLS0tLS0tLS0tLS0KKyBsaWIvZHBrZy90cmlnbGliLmggICAgICAgIHwgICAgOCArKysrLS0tLQorIHNyYy9hcmNoaXZlcy5jICAgICAgICAgICAgfCAgIDE5ICsrKysrKysrKysrLS0tLS0tLS0KKyBzcmMvZGVwY29uLmMgICAgICAgICAgICAgIHwgICAgNiArKystLS0KKyBzcmMvZW5xdWlyeS5jICAgICAgICAgICAgIHwgICAxMCArKysrKy0tLS0tCisgc3JjL2Vycm9ycy5jICAgICAgICAgICAgICB8ICAgIDIgKy0KKyBzcmMvZmlsZXNkYi5jICAgICAgICAgICAgIHwgICAyMiArKysrKysrKysrKysrLS0tLS0tLS0tCisgc3JjL2ZpbGVzZGIuaCAgICAgICAgICAgICB8ICAgIDMgKystCisgc3JjL21haW4uYyAgICAgICAgICAgICAgICB8ICAgIDkgKysrKystLS0tCisgc3JjL21haW4uaCAgICAgICAgICAgICAgICB8ICAgIDkgKysrKystLS0tCisgc3JjL3Byb2Nlc3NhcmMuYyAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIHNyYy9xdWVyeS5jICAgICAgICAgICAgICAgfCAgICA5ICsrKysrLS0tLQorIHNyYy9yZW1vdmUuYyAgICAgICAgICAgICAgfCAgIDE5ICsrKysrKysrKysrKy0tLS0tLS0KKyBzcmMvdHJpZ2NtZC5jICAgICAgICAgICAgIHwgICAgNCArKy0tCisgc3JjL3RyaWdwcm9jLmMgICAgICAgICAgICB8ICAgIDYgKysrLS0tCisgdXRpbHMvc3RhcnQtc3RvcC1kYWVtb24uYyB8ICAgIDkgKysrKystLS0tCisgMzcgZmlsZXMgY2hhbmdlZCwgMjU3IGluc2VydGlvbnMoKyksIDE3NiBkZWxldGlvbnMoLSkKKworY29tbWl0IDA3YWRiNTY4NmY1ZmVjNjk0ZTZiZmVhODJiOGI1YWQyZmNkZjQxNmMKK01lcmdlOiA1MTBjYWQwIDI0ZjM3NWYKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgTWF5IDE5IDA4OjI1OjQ0IDIwMTAgKzAyMDAKKworICAgIE1lcmdlIGJyYW5jaCAnc2lkJyAodGhyb3VnaCB0YWcgJzEuMTUuNy4xJykKKyAgICAKKyAgICBDb25mbGljdHM6CisgICAgCWRlYmlhbi9jaGFuZ2Vsb2cKKworY29tbWl0IDI0ZjM3NWZkMjc1ZTI5MjA5ZDk0ZmNkM2YyNDg1NDQzZDcxNDI4ZTUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgTWF5IDE5IDA2OjMxOjMxIDIwMTAgKzAyMDAKKworICAgIFJlbGVhc2UgMS4xNS43LjIKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICA0ICsrLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IGRlZTMwMGJhMmRlNjliZjEwYTVlODI4MjE3ZTg3M2U4M2RiMzZhNzcKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgTWF5IDE5IDA2OjM3OjI1IDIwMTAgKzAyMDAKKworICAgIElnbm9yZSBmaWxlcyBmb3IgYWxsIGF1dG9wb2ludCBtYW5hZ2VkIHBvIGRpcmVjdG9yaWVzCisgICAgCisgICAgU3RhcnRpbmcgd2l0aCBhdXRvcG9pbnQgMC4xOCwgaXQncyBhYmxlIHRvIGZpbmQgYWxsIHBvIGRpcmVjdG9yaWVzLCBhbmQKKyAgICBpbnN0YWxsIG1pc3NpbmcgdGVtcGxhdGVzLiBJZ25vcmUgdGhvc2UgbmV3bHkgYXBwZWFyZWQgZmlsZXMuCisKKyBkc2VsZWN0L3BvLy5naXRpZ25vcmUgfCAgICA0ICsrKysKKyBzY3JpcHRzL3BvLy5naXRpZ25vcmUgfCAgICA0ICsrKysKKyAyIGZpbGVzIGNoYW5nZWQsIDggaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDA5MDliNjM2OWViMGJkMzdjYTgxNWExMzhhYjBmOTU3YWY5MmViMDMKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgTWF5IDE5IDA3OjU1OjI3IDIwMTAgKzAyMDAKKworICAgIFJldmVydCAiVXBkYXRlIFN3ZWRpc2ggdHJhbnNsYXRpb24gYnkgcnVubmluZyBtc2dtZXJnZSB3aXRoIG1hc3RlciBicmFuY2guIgorICAgIAorICAgIFRoaXMgcmV2ZXJ0cyBjb21taXQgZTk5NjA1YjViMjE1NzRlNTdiZTZlMzEzOGNiYTBkYTkwMzRjNjI2ZS4KKyAgICAKKyAgICBUcmFuc2xhdGlvbnMgc2hvdWxkIG5vdCBiZSBjb21pdHRlZCB0byB0aGUgc2lkIGJyYW5jaCwgb3RoZXJ3aXNlIGl0CisgICAgY2F1c2VzIG1ham9yIGNvbmZsaWN0cyB3aGVuIG1lcmdpbmcgaXQgaW50byBtYXN0ZXIsIHdoZW4gdGhlIHNhbWUgY2hhbmdlCisgICAgaGFzIGJlZW4gY29tbWl0dGVkIHRoZXJlLgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDkgLQorIG1hbi9wby9zdi5wbyAgICAgfCAgNDY0ICsrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL3N2LnBvICAgICAgICAgfCAgIDE4ICstCisgc2NyaXB0cy9wby9zdi5wbyB8ICAgNTIgKysrLS0tLQorIDQgZmlsZXMgY2hhbmdlZCwgMjIyIGluc2VydGlvbnMoKyksIDMyMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGU5OTYwNWI1YjIxNTc0ZTU3YmU2ZTMxMzhjYmEwZGE5MDM0YzYyNmUKK0F1dGhvcjogUGV0ZXIgS3JlZnRpbmcgPHBldGVyQHNvZnR3b2x2ZXMucHAuc2U+CitEYXRlOiAgIE1vbiBNYXkgMTcgMjE6MDc6MjEgMjAxMCArMDEwMAorCisgICAgVXBkYXRlIFN3ZWRpc2ggdHJhbnNsYXRpb24gYnkgcnVubmluZyBtc2dtZXJnZSB3aXRoIG1hc3RlciBicmFuY2guCisgICAgCisgICAgbWFuL3BvL3N2LnBvOiAxODkzdDFmMHUuCisgICAgcG8vc3YucG86IDk2OHQwZjB1LgorICAgIHNjcmlwdHMvcG8vc3YucG86IDUwN3QwZjB1LgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDkgKworIG1hbi9wby9zdi5wbyAgICAgfCAgNDY0ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL3N2LnBvICAgICAgICAgfCAgIDE4ICstCisgc2NyaXB0cy9wby9zdi5wbyB8ICAgNTIgKysrKy0tLQorIDQgZmlsZXMgY2hhbmdlZCwgMzIxIGluc2VydGlvbnMoKyksIDIyMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDUxMGNhZDA0YmZlNWJiZmU0YzQzZDk2ZWMxZDQzMWEzZjI4YTBlMzkKK0F1dGhvcjogUGV0ZXIgS3JlZnRpbmcgPHBldGVya0BkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gTWF5IDE3IDIwOjU4OjQ3IDIwMTAgKzAxMDAKKworICAgIFVwZGF0ZSBTd2VkaXNoIHRyYW5zbGF0aW9uLgorICAgIAorICAgIG1hbi9wby9zdi5wbzogMTg5NHQwZjB1LgorICAgIHNjcmlwdHMvcG8vc3YucG86IDUwN3QwZjB1LgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDIgKworIG1hbi9wby9zdi5wbyAgICAgfCAgMzk0ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLQorIHNjcmlwdHMvcG8vc3YucG8gfCAgIDUyICsrKystLS0tCisgMyBmaWxlcyBjaGFuZ2VkLCAzMDEgaW5zZXJ0aW9ucygrKSwgMTQ3IGRlbGV0aW9ucygtKQorCitjb21taXQgZGNjY2YxNTQ0OWZlZWEyZjcxZjQ1YjM2MzkyOTM0MmZhM2YwZjU5MworQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBNYXkgMTcgMjE6MzA6NDEgMjAxMCArMDIwMAorCisgICAgTWFrZWZpbGUuYW06IGZpeCBkb19zaGVsbF9zdWJzdCB0byB1cGRhdGUgYSBzaGVsbCB2YXJpYWJsZSBpbnN0ZWFkIG9mIGEgcGVybCB2YXJpYWJsZQorICAgIAorICAgIFRoZSBjb3B5ICYgcGFzdGUgd2FzIHRvbyBxdWljaywgSSBmb3Jnb3QgdG8gdXBkYXRlIHRoZSBzZWQgZXhwcmVzc2lvbi4KKworIHNjcmlwdHMvTWFrZWZpbGUuYW0gfCAgICAyICstCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAwZmY0M2NhNjY3ZjA1Y2YyOTkzNjRlNWI5Y2ZmOGFiZTRlMDVhOTAzCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIE1heSAxMSAwOTozODowNCAyMDEwICswMjAwCisKKyAgICBkcGtnOiBPbiBMaW51eCB1c2Ugc3luYygpIGluc3RlYWQgb2YgYW4gZnN5bmMoKSBwZXIgZmlsZQorICAgIAorICAgIER1ZSB0byB0aGUgcGVyZm9ybWFuY2UgZGVncmFkYXRpb24gb24gZXh0NCBmaWxlIHN5c3RlbXMsIGFzIGEKKyAgICB3b3JrYXJvdW5kIG9uIExpbnV4LCB3ZSB1c2Ugc3luYygpIHdoaWNoIGlzIHN5bmNocm9ub3VzLCBiZWZvcmUKKyAgICByZW5hbWUoKSB0byBtYWtlIHN1cmUgaXQncyB0cnVseSBhdG9taWMuCisgICAgCisgICAgQ2xvc2VzOiAjNTc4NjM1CisKKyBjb25maWd1cmUuYWMgICAgIHwgICAgMSArCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDIgKysKKyBtNC9kcGtnLWZ1bmNzLm00IHwgICAxNiArKysrKysrKysrKysrKysrCisgc3JjL2FyY2hpdmVzLmMgICB8ICAgIDcgKysrKysrKworIDQgZmlsZXMgY2hhbmdlZCwgMjYgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDYwYTA2MGU2ZjU4ZTNkYWFiNjQ4ZGY1NTRiMjQ5ZDE3YWJhODAyNDcKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gTWF5IDE3IDE4OjA2OjM2IDIwMTAgKzAyMDAKKworICAgIGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyOiBhZGQgInN1cHBvcnRzIiBjb21tYW5kCisgICAgCisgICAgV2l0aCB0aGlzIGNvbW1hbmQgYSBtYWludGFpbmVyIHNjcmlwdCBjYW4gdmVyaWZ5IHdoZXRoZXIgYSBnaXZlbiBjb21tYW5kCisgICAgaXMgc3VwcG9ydGVkIGJ5IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyIGJlZm9yZSBjYWxsaW5nIGl0LiBUaGFua3MgdG8gdGhpcworICAgIGhlIGNhbiBhdm9pZCBhIHByZS1kZXBlbmRlbmN5IG9uIGRwa2cuCisgICAgCisgICAgQWxzbyBpbXByb3ZlIHRoZSBlcnJvciBtZXNzYWdlIG91dHB1dCB3aGVuIHRoZSBjb21tYW5kIGlzIHVua25vd24gdG8KKyAgICBzdWdnZXN0IHVwZ3JhZGluZyBkcGtnIGFzIGEgcG9zc2libGUgd2F5IHRvIGZpeCB0aGUgcHJvYmxlbSBlbmNvdW50ZXJlZC4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgICAgICAgICAgfCAgICAyICsrCisgbWFuL2Rwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjEgICAgICB8ICAgMTkgKysrKysrKysrKysrKysrKysrKworIHNjcmlwdHMvZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuc2ggfCAgIDM0ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0KKyAzIGZpbGVzIGNoYW5nZWQsIDU0IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA0ZjA2OWM3Yjk5MmJlY2YyMzE2ZmI1NzhiNjQxNjE1MjEyNzVlNzM5CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIE1heSAxNyAxODozNTo0OSAyMDEwICswMjAwCisKKyAgICBkcGtnLW1haW50c2NyaXB0LWhlbHBlcjogYWRkIC0tdmVyc2lvbiBvcHRpb24KKworIHNjcmlwdHMvZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuc2ggfCAgIDE0ICsrKysrKysrKysrKysrCisgMSBmaWxlcyBjaGFuZ2VkLCAxNCBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgYWEyNmY4M2M0YjFhMGY4NWQ2NWRjMGI2YTVmNjQyYzNlNjA5YzQyYworQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBNYXkgMTcgMTY6NDY6MDggMjAxMCArMDIwMAorCisgICAgUmVuYW1lIC91c3IvbGliL2Rwa2cvbWFpbnRzY3JpcHQtaGVscGVyIGluIC91c3IvYmluL2Rwa2ctbWFpbnRzY3JpcHQtaGVscGVyCisgICAgCisgICAgSXQgaXMgYSBwdWJsaWMgaW50ZXJmYWNlIGV2ZW4gaWYgd29ya2luZyBhcm91bmQga25vd24gbGltaXRhdGlvbnMuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDMgKysKKyBkZWJpYW4vZHBrZy5pbnN0YWxsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDQgKy0KKyBtYW4vTWFrZWZpbGUuYW0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDQgKy0KKyAuLi5udHNjcmlwdC1oZWxwZXIuMSA9PiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xfSB8ICAgMjMgKysrKysrKystLS0tLS0tLS0tLQorIG1hbi9wby9wbzRhLmNmZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAxMCArKysrLS0tLQorIHNjcmlwdHMvLmdpdGlnbm9yZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMSArCisgc2NyaXB0cy9NYWtlZmlsZS5hbSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDExICsrKysrKystCisgLi4uaW50c2NyaXB0LWhlbHBlciA9PiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci5zaH0gfCAgICAyICstCisgOCBmaWxlcyBjaGFuZ2VkLCAzMyBpbnNlcnRpb25zKCspLCAyNSBkZWxldGlvbnMoLSkKKworY29tbWl0IDg1YTU1ZDgyNDMyYjhlMDM1YTcxNzVmMzNiNmU4YzI3MzY2Yjk5ODMKK0F1dGhvcjogR2VyZnJpZWQgRnVjaHMgPHJob25kYUBkZWJpYW4uYXQ+CitEYXRlOiAgIE1vbiBNYXkgMTcgMTM6NTY6NDcgMjAxMCArMDIwMAorCisgICAgZHBrZy1uYW1lOiBmaXggc3ludGF4IGVycm9yCisgICAgCisgICAgVGhlcmUgd2FzIGEgbWlzc2luZyBjbG9zaW5nIGJyYWNrZXQuCisgICAgCisgICAgUmVncmVzc2lvbiBpbnRyb2R1Y2VkIGluIDcxNjM2MmM1OWU1MzE4ODMzMDRhMjExYWZhNjE2NjA2MDhjMjE0YjMuCisgICAgCisgICAgU2lnbmVkLW9mZi1ieTogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgfCAgICAzICsrKworIHNjcmlwdHMvZHBrZy1uYW1lLnBsIHwgICAgMiArLQorIDIgZmlsZXMgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgMjk0NzcwYzgwNWYxNDkxZDcyMjU3OTk1OGMxMzNhODMxOWM1ZjhhMQorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBNYXkgMTQgMTU6MTM6NTYgMjAxMCArMDIwMAorCisgICAgZHBrZy1idWlsZHBhY2thZ2UoMSk6IGRyb3AgbWVudGlvbiBvZiBQS0dfQ09ORklHX0xJQkRJUgorICAgIAorICAgIFRoZSBmZWF0dXJlIGhhcyBiZWVuIHJlbW92ZWQgaW4gZHBrZyAxLjE1LjYuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICB8ICAgIDIgKysKKyBtYW4vZHBrZy1idWlsZHBhY2thZ2UuMSB8ICAgIDYgLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBjMGVmZmE1YTE3ZTdjNTE3MDg2NGVlOGY5YTIyN2QwZDQ2ZDRlYWU2CitBdXRob3I6IEhlbGdlIEtyZXV0em1hbm4gPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorRGF0ZTogICBXZWQgTWF5IDEyIDIxOjE1OjE5IDIwMTAgKzAyMDAKKworICAgIEFkZCBtaXNzaW5nIGNoYW5nZWxvZyBlbnRyeSBmb3IgY29tbWl0IGNlMzNlZmE3YjkzYmM5ODYzNTY2N2Y1OTdjNzQ4NzYzMWFmMzQ1OWEKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAyICstCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBjZTMzZWZhN2I5M2JjOTg2MzU2NjdmNTk3Yzc0ODc2MzFhZjM0NTlhCitBdXRob3I6IEhvbGdlciBXYW5zaW5nIDxsaW51eEB3YW5zaW5nLW9ubGluZS5kZT4KK0RhdGU6ICAgVHVlIE1heSAxMSAyMDo1NToyNyAyMDEwICswMjAwCisKKyAgICBVc2UgaW1wZXJzb25hbCBtZXNzYWdlcyBpbiBHZXJtYW4gZHBrZyBzY3JpcHRzIHRyYW5zbGF0aW9uCisKKyBzY3JpcHRzL3BvL2RlLnBvIHwgIDg4MyArKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDQ0MCBpbnNlcnRpb25zKCspLCA0NDMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA2N2RjNzhiNDA2YzFiMWU2MmEzNGJiZWYwOTBiMjgwYjVjOTAwYjM0CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIE1heSAxMCAxODoyNzowMiAyMDEwICswMjAwCisKKyAgICBkcGtnOiBGaXggLS1yb290IGJ5IHByb3Blcmx5IHN0cmlwcGluZyByb290IGZyb20gbWFpbnRhaW5lciBzY3JpcHQgcGF0aAorICAgIAorICAgIFRoZSBjbWQtPmZpbGVuYW1lIHZhcmlhYmxlIHdhcyBnZXR0aW5nIHRoZSBmdWxsIHBhdGggdG8gdGhlIG1haW50YWluZXIKKyAgICBzY3JpcHQgaW5zaWRlIHRoZSBjaHJvb3QsIGFuZCBvbmNlIGRwa2cgaGFkIGNoYW5nZWQgcm9vdCwgdGhlIHBhdGggd2FzCisgICAgbm90IHZhbGlkIGFueW1vcmUuCisgICAgCisgICAgUmVncmVzc2lvbiBpbnRyb2R1Y2VkIGluIDUwNTA3NDhmMWE2YmIwYzA3MjhmOGMwN2Y5MDU4ZDU0NWM4MGQ3ZTAuCisgICAgCisgICAgQ2xvc2VzOiAjNTgwOTg0CisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMiArKworIHNyYy9oZWxwLmMgICAgICAgfCAgICAyICstCisgMiBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBiMDEwYjU1ZjBlNDM4N2M1MDdiM2MzMWVmNDcwZmU5NDg1Y2UwMzdjCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIE1heSAxMCAxMTo0ODo1NSAyMDEwICswMjAwCisKKyAgICBVcGRhdGUgY29kaW5nLXN0eWxlLnR4dCB0byBhbHNvIGNvdmVyIHRoZSBQZXJsIGNvZGUKKworIGRvYy9jb2Rpbmctc3R5bGUudHh0IHwgICA1MSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKworIDEgZmlsZXMgY2hhbmdlZCwgNTEgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IGFkNTU1ZGE2ZjFmNWQ5YjcyOTRkZDg1NGMyMWI3NjMxZGNlMDJhN2YKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgTWF5IDggMjE6NDU6MjQgMjAxMCArMDIwMAorCisgICAgZHBrZy10cmlnZ2VyKDEpLCBkZWItdHJpZ2dlcnMoNSk6IHVwZGF0ZSByZWZlcmVuY2UgdG8gdHJpZ2dlcnMudHh0Lmd6CisgICAgCisgICAgVGhlIGZpbGUgaGFzIGJlZW4gbW92ZWQgaW4gZHBrZy1kZXYsIGZpeCB0aGUgbG9jYXRpb24uCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgfCAgICAyICsrCisgbWFuL2RlYi10cmlnZ2Vycy41IHwgICAgMiArLQorIG1hbi9kcGtnLXRyaWdnZXIuMSB8ICAgIDIgKy0KKyAzIGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IGZmYjMyNDkzNDQyNjRjYzkyNzVmODA2ZTIxMGQ2YjBkYTE3YTNhZjYKK0F1dGhvcjogUGV0ZXIgS3JlZnRpbmcgPHBldGVya0BkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgTWF5IDYgMTI6NTc6MzAgMjAxMCArMDEwMAorCisgICAgVXBkYXRlIFN3ZWRpc2ggdHJhbnNsYXRpb24uCisgICAgCisgICAgcG8vc3YucG86IDk2OHQwZjB1LgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDEgKworIHBvL3N2LnBvICAgICAgICAgfCAgIDE4ICsrKysrKysrKy0tLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgMTAgaW5zZXJ0aW9ucygrKSwgOSBkZWxldGlvbnMoLSkKKworY29tbWl0IGY4ZTMyMjYyNTIzOThkZjlhODEzYjdiZTM0MzI0NmNiODU1YzAyMjQKK0F1dGhvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitEYXRlOiAgIE1vbiBNYXkgMyAyMjoxNjoyNiAyMDEwICswMjAwCisKKyAgICBVcGRhdGUgR2VybWFuIHRyYW5zbGF0aW9uIG9mIG1hbnVhbCBwYWdlcworICAgIAorICAgIFVwZGF0ZSB0byAxODk4dC4KKworIG1hbi9wby9kZS5wbyB8ICAzMTEgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyMDcgaW5zZXJ0aW9ucygrKSwgMTA0IGRlbGV0aW9ucygtKQorCitjb21taXQgNzRiNmU4NTQ0ODk0MWRiNGU2NDNkZjg4N2FlMzk2MDdkNjM3MDEwOQorQXV0aG9yOiBIZWxnZSBLcmV1dHptYW5uIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KK0RhdGU6ICAgTW9uIE1heSAzIDIxOjQzOjI3IDIwMTAgKzAyMDAKKworICAgIFVwZGF0ZSBHZXJtYW4gc2NyaXB0cyB0cmFuc2xhdGlvbgorICAgIAorICAgIFVwZGF0ZSB0byA1MDh0CisKKyBzY3JpcHRzL3BvL2RlLnBvIHwgICA2NyArKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDM2IGluc2VydGlvbnMoKyksIDMxIGRlbGV0aW9ucygtKQorCitjb21taXQgNzAyZjU0NmIyYzZkNDIyOWFkODFhMjkwMjRhZTMyZmRkN2M3OTZiMworQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBNYXkgMiAyMjowNjoyMSAyMDEwICswMjAwCisKKyAgICBkZWItb3ZlcnJpZGUoNSk6IHVwZGF0ZWQgdG8gbWF0Y2ggY3VycmVudCBzaXR1YXRpb24KKyAgICAKKyAgICBSZW1vdmUgcmVmZXJlbmNlcyB0byB1c2FnZSBvZiBzZWN0aW9ucyB0byBwbGFjZSB0aGUgcGFja2FnZXMgb24gdGhlCisgICAgbWlycm9ycyAodGhleSBhcmUgYWxsIGluIHRoZSBwb29sIG5vd2FkYXlzIGFuZCBubyBsb25nZXIgaW4KKyAgICBkaXN0cy88Y29kZW5hbWU+Lzxjb21wb25lbnQ+L2JpbmFyeS08YXJjaD4vPHNlY3Rpb24+LykuIEluZGljYXRlIHRoYXQgdGhlCisgICAgRGViaWFuIHBvbGljeSBvZmZlcnMgYSBsaXN0IG9mIGFsbG93ZWQgdmFsdWVzIGZvciBzZWN0aW9uIGFuZCBwcmlvcml0eS4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICB8ICAgIDQgKysrKworIG1hbi9kZWItb3ZlcnJpZGUuNSB8ICAgMTUgKysrKysrLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAxMCBpbnNlcnRpb25zKCspLCA5IGRlbGV0aW9ucygtKQorCitjb21taXQgOWJiZGZlY2Y3MjNhM2RhNDE2ZTY3MWRjYmYxYWY5Y2M0YjM3YTU0MQorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBNYXkgMiAyMTozNDozNSAyMDEwICswMjAwCisKKyAgICBkcGtnLWJ1aWxkcGFja2FnZTogYWRkIGNhbGxzIHRvIGRwa2ctc291cmNlIC0tYmVmb3JlLWJ1aWxkIGFuZCAtLWFmdGVyLWJ1aWxkCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgIHwgICAgNyArKysrKysrCisgbWFuL2Rwa2ctYnVpbGRwYWNrYWdlLjEgICAgICB8ICAgMTEgKysrKysrLS0tLS0KKyBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsIHwgICAgOSArKysrKysrKysKKyAzIGZpbGVzIGNoYW5nZWQsIDIyIGluc2VydGlvbnMoKyksIDUgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA4YzFmYzM0N2Y3ZDUwYjY0ZjM2OTNiYTFkN2UwNjRiZjljY2JhZThjCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIEFwciAyOCAyMjoyNzowOCAyMDEwICswMjAwCisKKyAgICBkcGtnLXNvdXJjZTogaW1wbGVtZW50IC0tYmVmb3JlLWJ1aWxkIGFuZCAtLWFmdGVyLWJ1aWxkIGNvbW1hbmQKKyAgICAKKyAgICBUaG9zZSBjb21tYW5kcyBhcmUgcmVhbGx5IGhvb2tzIHRoYXQgc291cmNlIGZvcm1hdHMgY2FuIHVzZSBhbmQgdGhhdAorICAgIHdpbGwgYmUgY2FsbGVkIGJ5IGRwa2ctYnVpbGRwYWNrYWdlIGJlZm9yZSBhbmQgYWZ0ZXIgdGhlIGFjdHVhbCBidWlsZC4KKyAgICAKKyAgICBTb3VyY2UgZm9ybWF0cyAiMi4wIiBhbmQgIjMuMCAocXVpbHQpIiB1c2UgdGhpcyBob29rIHRvIGVuc3VyZSBwYXRjaGVzCisgICAgYXJlIGFwcGxpZWQgYmVmb3JlIHRoZSBidWlsZC4KKworIG1hbi9kcGtnLXNvdXJjZS4xICAgICAgICAgICAgICAgICB8ICAgMjAgKysrKysrKysrKysrKysrKysrKy0KKyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG0gICAgfCAgICA4ICsrKysrKysrCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtIHwgICAgNSArKysrKworIHNjcmlwdHMvZHBrZy1zb3VyY2UucGwgICAgICAgICAgICB8ICAgMjIgKysrKysrKysrKysrKysrKystLS0tLQorIDQgZmlsZXMgY2hhbmdlZCwgNDkgaW5zZXJ0aW9ucygrKSwgNiBkZWxldGlvbnMoLSkKKworY29tbWl0IDM5YzZkYWI4OWJiZWE5ZmUzMzZmODY5YjY1ZTMzMTAyYmEyMzgyMDUKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgTWF5IDEgMTc6NDQ6MjggMjAxMCArMDIwMAorCisgICAgRml4IGJ1aWxkIHN5c3RlbSB0byBjb3JyZWN0bHkgaW5zdGFsbCB0cmFuc2xhdGVkIG1hbnVhbCBwYWdlcworICAgIAorICAgIFVwIHRvIG5vdyBpdCB3YXMgb25seSB3b3JraW5nIGluIGEgZGlyZWN0b3J5IG9idGFpbmVkIGJ5IG1ha2UgZGlzdCBhbmQKKyAgICBub3Qgd2hlbiBidWlsZGluZyB0aGUgZGViaWFuIHBhY2thZ2UgZGlyZWN0bHkgZnJvbSB0aGUgZ2l0IHJlcG9zaXRvcnkuCisKKyBtYW4vTWFrZWZpbGUuYW0gfCAgICA4ICsrKystLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBiYzM0OGM4OGNiYTY2ODkzNTI1M2QyMTM2MjBiZGRhOGJmZDVkYmQyCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IE1heSAxIDE3OjI5OjI3IDIwMTAgKzAyMDAKKworICAgIGRwa2ctc2hsaWJkZXBzKDEpOiBhdm9pZCB0cmlnZ2VyaW5nIGEgbGludGlhbiB3YXJuaW5nIG9uIHRyYW5zbGF0aW9ucworICAgIAorICAgIFRyYW5zbGF0aW9ucyBvZiB0aGUgbWFudWFsIHBhZ2VzIGVuZCB1cCB3aXRoICJcLSIgaW5zdGVhZCBvZiAiLSIgdGhhdAorICAgIGlzIGluIHRoZSBvcmlnaW5hbCBtYW51YWwgcGFnZSBhbmQgYXMgc3VjaCBtYW4gaXMgbm90IGFsbG93ZWQgdG8gYnJlYWsKKyAgICB0aGUgbG9uZyBwYXRoIG5hbWUgdGhlcmUuCisgICAgCisgICAgQXZvaWQgYWxsIHRoZSBwcm9ibGVtcyBieSB1c2luZyBhIHNob3J0ZXIgcGF0aCBpbiB0aGUgZXhhbXBsZSBzbyB0aGF0IHRoZQorICAgIHBhdGggZG9lc24ndCBlbmQgdXAgYWxvbmUgb24gaXRzIGxpbmUgd2l0aG91dCBhbnkgcG9zc2liaWxpdHkgdG8gYWRqdXN0IG9uCisgICAgdGhlIHJpZ2h0LgorICAgIAorICAgIFVwZGF0ZSB0aGUgdHJhbnNsYXRpb25zIGF0IHRoZSBzYW1lIHRpbWUgdG8gYXZvaWQgc29tZSBmdXp6eSBzdHJpbmdzLgorCisgbWFuL2Rwa2ctc2hsaWJkZXBzLjEgfCAgICAyICstCisgbWFuL3BvL2RlLnBvICAgICAgICAgfCAgICA0ICsrLS0KKyBtYW4vcG8vZHBrZy1tYW4ucG90ICB8ICAgIDIgKy0KKyBtYW4vcG8vZnIucG8gICAgICAgICB8ICAgIDQgKystLQorIG1hbi9wby9wbC5wbyAgICAgICAgIHwgICAgNCArKy0tCisgbWFuL3BvL3N2LnBvICAgICAgICAgfCAgICA2ICsrKy0tLQorIDYgZmlsZXMgY2hhbmdlZCwgMTEgaW5zZXJ0aW9ucygrKSwgMTEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA1NjRlYTQ3ZjMwY2MxMjlhZTEyMTA5NTkzNzQ0YjRlOWZmMTRjYmRiCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IE1heSAxIDE2OjQ4OjU3IDIwMTAgKzAyMDAKKworICAgIGRwa2ctc291cmNlOiBhZGQgQnVnLVVidW50dSBmaWVsZCBpbiBERVAtMyB0ZW1wbGF0ZQorICAgIAorICAgIFRoZSBERVAtMyB0ZW1wbGF0ZSBpcyBwcm92aWRlZCBpbiB0aGUgYXV0b21hdGljIGhlYWRlciBvZiBwYXRjaGVzIGluIDMuMAorICAgIChxdWlsdCkgc291cmNlIHBhY2thZ2VzLgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMyArKysKKyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG0gfCAgICAxICsKKyAyIGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IGZlYTVjMmQ5ODA3NThjNjBiYjEzYTg1ZjE4NzM4ZjdlNjQ2NzlkNzcKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgQXByIDMwIDIxOjAzOjA2IDIwMTAgKzAyMDAKKworICAgIGRwa2ctYnVpbGRmbGFnczogZXJyb3Igb3V0IHdoZW4gYSByZXF1aXJlZCBwYXJhbWV0ZXIgaXMgbWlzc2luZworCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgfCAgICAyICsrCisgc2NyaXB0cy9kcGtnLWJ1aWxkZmxhZ3MucGwgfCAgICAxICsKKyAyIGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDViOWYzNTNiMjk0MGRlNzUxZGY0NzAzNjYwOGFmYmU3MTk5MmQ2MjIKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgQXByIDMwIDIwOjU2OjE0IDIwMTAgKzAyMDAKKworICAgIERwa2c6OlZlcnNpb246IGZpeCBib29sZWFuIGV2YWx1YXRpb24gb2YgdGhlIG9iamVjdAorICAgIAorICAgIEluIGEgYm9vbGVhbiBjb250ZXh0LCB0aGUgb2JqZWN0IGV2YWx1YXRlcyBsaWtlIHRoZSB2ZXJzaW9uIHN0cmluZyBpZgorICAgIHRoZSB2ZXJzaW9uIGlzIHZhbGlkLCBvdGhlcndpc2UgaXQgZXZhbHVhdGVzIGxpa2UgdW5kZWYuIERvY3VtZW50CisgICAgdGhpcyBiZWhhdmlvdXIgYW5kIGFkZCBub24tcmVncmVzc2lvbiB0ZXN0IHRvIGVuc3VyZSBpdCdzIGtlcHQuCisgICAgCisgICAgVGhpcyBpbXBsaWNpdGx5IGZpeCBkcGtnLXNobGliZGVwcyB3aG8gcmVsaWVzIG9uIHRoZSBib29sZWFuIGV2YWx1YXRpb24KKyAgICBvZiB0aGUgb2JqZWN0IHRvIGRlY2lkZSB3aGV0aGVyIG9yIG5vdCBhIG1pbmltYWwgdmVyc2lvbiBzcGVjaWZpY2F0aW9uCisgICAgaXMgbmVlZGVkIG9yIG5vdC4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgICAgfCAgICA1ICsrKysrCisgc2NyaXB0cy9EcGtnL1ZlcnNpb24ucG0gICAgICB8ICAgMTQgKysrKysrKysrKystLS0KKyBzY3JpcHRzL3QvMTAwX0Rwa2dfVmVyc2lvbi50IHwgICAgOSArKysrKysrKy0KKyAzIGZpbGVzIGNoYW5nZWQsIDI0IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBmZWI1NzkyY2M5Y2JmNDgyODA0YzkyZGIzMzc0MWQwOTczODIxMzczCitBdXRob3I6IEt5bGUgTW9mZmV0dCA8S3lsZS5ELk1vZmZldHRAYm9laW5nLmNvbT4KK0RhdGU6ICAgVGh1IEFwciAyOSAyMTo0NzoyNSAyMDEwIC0wNDAwCisKKyAgICBBZGQgcG93ZXJwY3NwZSB0byBvc3RhYmxlIGFuZCB0cmlwbGV0dGFibGUKKyAgICAKKyAgICBUaGUgJ3Bvd2VycGNzcGUnIGFyY2hpdGVjdHVyZSBpcyBhIGJpbmFyeS1pbmNvbXBhdGlibGUgdmFyaWFudCBvZgorICAgIFBvd2VyUEMvUE9XRVIgZGVzaWduZWQgYW5kIHN1cHBvcnRlZCBieSBGcmVlU2NhbGUgYW5kIElCTS4gSXQgaXMgYWxzbworICAgIGtub3duIHVuZGVyIHRoZSB0cmFkZSBuYW1lcyAiZTUwMCIvIk1QQzg1MDAiIGFuZCAiZTIwMCIvIk1QQzV4eCIuCisgICAgCisgICAgQWRkaXRpb25hbCBpbmZvcm1hdGlvbiBjYW4gYmUgZm91bmQgYXQ6CisgICAgICBodHRwOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL1Bvd2VyUENfZTUwMAorICAgICAgaHR0cDovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9Qb3dlclBDX2UyMDAKKyAgICAKKyAgICBJbiBwYXJ0aWN1bGFyLCB0aGUgJ3Bvd2VycGNzcGUnIGFyY2hpdGVjdHVyZSBsYWNrcyB0aGUgY2xhc3NpYyBGUFUgd2l0aAorICAgIGRlZGljYXRlZCBGUFJzIGZvdW5kIG9uIG1vc3Qgb3RoZXIgUG93ZXJQQyBzeXN0ZW1zLiBJdCBpcyByZXBsYWNlZCB3aXRoCisgICAgYSBzZXQgb2YgIlNQRSIgaW5zdHJ1Y3Rpb25zIHdoaWNoIHBlcmZvcm0gZmxvYXRpbmctcG9pbnQgb3BlcmF0aW9ucyBvbgorICAgIHRoZSBpbnRlZ2VyIHJlZ2lzdGVycy4KKyAgICAKKyAgICBJbiBhbiB1bmZvcnR1bmF0ZSBjaG9pY2Ugb2YgYXJjaGl0ZWN0dXJlIGRlc2lnbiwgdGhlIGluc3RydWN0aW9ucyB1c2VkCisgICAgZm9yIHRoZSAiU1BFIiBvcGVyYXRpb25zIG92ZXJsYXAgd2l0aCB0aG9zZSBmb3IgdGhlIEFsdGlWZWMgdW5pdCBvbiBtb3N0CisgICAgb3RoZXIgbW9kZXJuIFBvd2VyUEMgY29yZXMuCisgICAgCisgICAgVGhlICJlNTAwdjIiLXNlcmllcyBjaGlwcyBoYXZlIDY0LWJpdCBHUFJzLCB3aGVyZSB0aGUgaGlnaCAzMi1iaXRzIGFyZQorICAgIGFjY2VzaWJsZSBvbmx5IHZpYSB0aGUgc3BlY2lhbCAiU1BFIiBpbnN0cnVjdGlvbnMsIGFsbG93aW5nIHRoZW0gdG8gbWFrZQorICAgIGVmZmljaWVudCB1c2Ugb2YgdGhlICJkb3VibGUiIGRhdGF0eXBlLgorICAgIAorICAgIFRoZSByZWxhdGl2ZSByYXJlICJlNTAwdjEiLXNlcmllcyBjaGlwcyBoYXZlIG9ubHkgMzItYml0IEdQUnMsIGFuZAorICAgIHJlcXVpcmUgc29mdHdhcmUgdHJhcHMgYW5kIGVtdWxhdGlvbiB0byBzdXBwb3J0IG5hdGl2ZSAiZG91YmxlIi4KKyAgICAKKyAgICBUaGUgImUyMDB6MyIgYW5kICJlMjAwejYiIGNoaXBzIGhhdmUgbm8gc3VwcG9ydCBmb3IgZmxvYXRpbmcgcG9pbnQgYXQKKyAgICBhbGwsIGJ1dCB3aXRoIHNvZnR3YXJlIHRyYXBzIGFuZCBlbXVsYXRpb24gYXJlIGJpbmFyeS1jb21wYXRpYmxlIHdpdGgKKyAgICB0aGUgImU1MDAiLXNlcmllcyBjaGlwcy4KKyAgICAKKyAgICBUaGUgRGViaWFuIHBvcnQgdG8gdGhpcyBhcmNoaXRlY3R1cmUgc3BlY2lmaWNhbGx5IGNob29zZXMgdG8gb3B0aW1pemUKKyAgICBmb3IgdGhlIGhpZ2hlci1lbmQgY2hpcHMgKGU1MDB2MiksIGFzIG1vc3Qgb2YgdGhlIG90aGVycyBhcmUgdGFyZ2V0ZWQKKyAgICBhdCBhdXRvbW90aXZlIGFwcGxpY2F0aW9ucyBvciBubyBsb25nZXIgaW4gcHJvZHVjdGlvbi4KKyAgICAKKyAgICBUaGUgc3BlY2lmaWMgR05VIHRyaXBsZXQgZm9yIHRoaXMgYXJjaCBpcyAicG93ZXJwYy1saW51eC1nbnVzcGUiLiBBcyBhCisgICAgcmVzdWx0LCB3ZSBlbmQgdXAgYWRkaW5nIGFuIGV4dHJhICJvc3RhYmxlIiBlbnRyeSBpbnN0ZWFkIG9mIG9uZSBpbgorICAgICJjcHV0YWJsZSIuCisgICAgCisgICAgQ2xvc2VzOiAjNTY4MTIzLCAjNTc1MTU4CisgICAgCisgICAgU2lnbmVkLW9mZi1ieTogS3lsZSBNb2ZmZXR0IDxLeWxlLkQuTW9mZmV0dEBib2VpbmcuY29tPgorICAgIFNpZ25lZC1vZmYtYnk6IFNlYmFzdGlhbiBBbmRyemVqIFNpZXdpb3IgPHNlYmFzdGlhbkBicmVha3BvaW50LmNjPgorICAgIFNpZ25lZC1vZmYtYnk6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICA2ICsrKysrKworIG9zdGFibGUgICAgICAgICAgfCAgICAxICsKKyB0cmlwbGV0dGFibGUgICAgIHwgICAgMSArCisgMyBmaWxlcyBjaGFuZ2VkLCA4IGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA4OTU4MzI0OTA1YTJkODU3NWQxNmM4Mzk2OWIyOTFhMGE0Njk3MTc2CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IEFwciAyOSAwODoxOToyNiAyMDEwICswMjAwCisKKyAgICBkZWItc3Vic3R2YXJzKDUpOiBjb2RpZnkgaG93IHZhcmlhYmxlcyBjb250YWluaW5nIG11bHRpcGxlIGxpbmVzIG11c3QgYmUgbWFuYWdlZAorCisgZGViaWFuL2NoYW5nZWxvZyAgICB8ICAgIDIgKysKKyBtYW4vZGViLXN1YnN0dmFycy41IHwgICAyMCArKysrKysrKysrKysrKysrKysrKworIDIgZmlsZXMgY2hhbmdlZCwgMjIgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDZhNjA2YzM3NTcxYTJhYTI1ZGQ3ZDRkNDZkNGVkNDUyMDZlNGRiZWIKK0F1dGhvcjogQ2hyaXN0aWFuIFBFUlJJRVIgPGJ1YnVsbGVAZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIEFwciAyOCAyMjoyNzowOCAyMDEwICswMjAwCisKKyAgICBSdXNzaWFuIHRyYW5zbGF0aW9uIHVwZGF0ZXMKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICA1ICsKKyBkc2VsZWN0L3BvL3J1LnBvIHwgICAzNCArLS0KKyBwby9ydS5wbyAgICAgICAgIHwgIDgxNCArKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBzY3JpcHRzL3BvL3J1LnBvIHwgIDUyMSArKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgNCBmaWxlcyBjaGFuZ2VkLCA0MTcgaW5zZXJ0aW9ucygrKSwgOTU3IGRlbGV0aW9ucygtKQorCitjb21taXQgNjllMjQxMzNmNzhmMzRjMzRkNjkwMTE1NTUxYWY1YWNiNDc1YTFlOQorQXV0aG9yOiBDaHJpc3RpYW4gUEVSUklFUiA8YnVidWxsZUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gQXByIDI2IDE4OjQ3OjAzIDIwMTAgKzAyMDAKKworICAgIEZyZW5jaCB0cmFuc2xhdGlvbiB1cGRhdGVkIHRvIDUwN3QKKworIHNjcmlwdHMvcG8vZnIucG8gfCAgMTQxICsrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgNzMgaW5zZXJ0aW9ucygrKSwgNjggZGVsZXRpb25zKC0pCisKK2NvbW1pdCAxZDg0Y2ZlOGJlNTEyYjg3ODZkODFhMDI0ZDNhODgwMDdmMTE1ODRkCitBdXRob3I6IENocmlzdGlhbiBQRVJSSUVSIDxidWJ1bGxlQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBBcHIgMjUgMTg6NDk6NTEgMjAxMCArMDIwMAorCisgICAgVXBkYXRlIGNoYW5nZWxvZworCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDEgKworIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgODRiYjljOGY4ZmIwMGMwYjc3NWMyZDIwN2U4ZTE4NTRhZTdmNjI5MgorQXV0aG9yOiBDaHJpc3RpYW4gUEVSUklFUiA8YnVidWxsZUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gQXByIDI1IDExOjM3OjQwIDIwMTAgKzAyMDAKKworICAgIEEgZmV3IG1vcmUgc3RyaW5ncworCisgc2NyaXB0cy9wby9mci5wbyB8ICAxMDkgKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA1MiBpbnNlcnRpb25zKCspLCA1NyBkZWxldGlvbnMoLSkKKworY29tbWl0IDVlNzE2YzRmMTc5YWM3NmVkODIxZThjMmE2MDE4NDk0MDg0MDQ1NWQKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgQXByIDIzIDE5OjE5OjM3IDIwMTAgKzAyMDAKKworICAgIGRwa2ctYnVpbGRmbGFnczogcmVzcGVjdCAkWERHX0NPTkZJR19IT01FIGFuZCB1c2UgJFhER19DT05GSUdfSE9NRS9kcGtnL2J1aWxkZmxhZ3MuY29uZgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgfCAgICA3ICsrKysrKysKKyBtYW4vZHBrZy1idWlsZGZsYWdzLjEgICAgICB8ICAgIDUgKysrLS0KKyBzY3JpcHRzL0Rwa2cvQnVpbGRGbGFncy5wbSB8ICAgIDMgKystCisgMyBmaWxlcyBjaGFuZ2VkLCAxMiBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQorCitjb21taXQgZTE5N2E3ZDM0ODQ0N2E4MDE2NmQ0MzMyNDk1NmI0NTI1ZDZlMGJkMworQXV0aG9yOiBIZWxnZSBLcmV1dHptYW5uIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KK0RhdGU6ICAgRnJpIEFwciAyMyAxODo0Njo1NSAyMDEwICswMjAwCisKKyAgICBTd2l0Y2ggR2VybWFuIG1hbiBwYWdlIHRyYW5zbGF0aW9uIHRvIHV0Zi04CisKKyBtYW4vcG8vZGUuYWRkIHwgICAgOCArLQorIG1hbi9wby9kZS5wbyAgfCA0MjQ2ICsrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAyMTI3IGluc2VydGlvbnMoKyksIDIxMjcgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBhODZjNGYwOGI3N2ZjYzc3YTZkYTAwMWNhMjliYmQyOGI5NzJkNjAxCitBdXRob3I6IEhlbGdlIEtyZXV0em1hbm4gPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorRGF0ZTogICBGcmkgQXByIDIzIDE4OjQ0OjUyIDIwMTAgKzAyMDAKKworICAgIFVwZGF0ZSBHZXJtYW4gc2NyaXB0cyB0cmFuc2xhdGlvbgorICAgIAorICAgIFVwZGF0ZSB0byA1MDd0CisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMyArKysKKyBzY3JpcHRzL3BvL2RlLnBvIHwgICAxOSArKysrKysrKy0tLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAxMSBpbnNlcnRpb25zKCspLCAxMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDFhMWE2YWQ5MzAxMDI5YmE4OGMyNThhZWU0YjMxYTQyYWNkNzU4NjkKK01lcmdlOiBiM2MwYTUyIGQ5NzAzNGEKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgQXByIDIyIDA4OjE3OjM2IDIwMTAgKzAyMDAKKworICAgIE1lcmdlIGNvbW1pdCAnMS4xNS43LjEnCisKK2NvbW1pdCBkOTcwMzRhYTY4MDk3Yzg1Y2RmODU4OTUxODI2MTRlODJmMjRiOTdmCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IEFwciAyMiAwODowNTozOSAyMDEwICswMjAwCisKKyAgICBSZWxlYXNlIDEuMTUuNy4xCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgNCArKy0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAwMjFkZTI0MThjMTM0YjM1NTNiZWZkNTEyNjFkMDAyNzZlODI2NjQzCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IEFwciAyMiAwODowMzowMSAyMDEwICswMjAwCisKKyAgICBkcGtnLW1lcmdlY2hhbmdlbG9nczogYWRkIG1pc3NpbmcgY2FsbCB0byB0ZXh0ZG9tYWluKCkKKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgICAgICAgfCAgICAyICsrCisgc2NyaXB0cy9kcGtnLW1lcmdlY2hhbmdlbG9ncy5wbCB8ICAgIDIgKysKKyAyIGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDllYjVjNzc3YzU4NGFkOTFiMWRhZTYzNjI4MmY3NTcyZDEyYzJiMzYKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgQXByIDIyIDA3OjU2OjU0IDIwMTAgKzAyMDAKKworICAgIGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzOiBhdm9pZCB1c2luZyBVVEYtOCBvbiB0cmFuc2xhdGFibGUgc3RyaW5ncworCisgc2NyaXB0cy9kcGtnLW1lcmdlY2hhbmdlbG9ncy5wbCB8ICAgIDIgKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDI4ZDExNmY0ZWFkYzRjZjNhNDliOTc0ZDY0ZGYxOTQ1OGY2ZDM0YWMKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgQXByIDIyIDA3OjU0OjMwIDIwMTAgKzAyMDAKKworICAgIGRwa2ctc291cmNlOiBmaXggaWdub3JlIHJlZ2V4cCBmb3Igc291cmNlIGZvcm1hdCAxLjAgd2hlbiAtaSBpcyBub3QgdXNlZAorICAgIAorICAgIFRoZSB2YXJpYWJsZSBpcyBkZWZpbmVkIGJ5IGRlZmF1bHQgYnV0IGVtcHR5IGFuZCB0aGUgY2hlY2sgd2FzIHdyb25nCisgICAgbGVhZGluZyBhbGwgZmlsZXMgdG8gYmUgaWdub3JlZC4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgICAgICAgICB8ICAgIDggKysrKysrKysKKyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG0gfCAgICAyICstCisgMiBmaWxlcyBjaGFuZ2VkLCA5IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBiM2MwYTUyOGZlOGFlNGZlZjZlYmY2MTBmOTZlYTQ1OGU0OGE5ZDIwCitBdXRob3I6IEhlbGdlIEtyZXV0em1hbm4gPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorRGF0ZTogICBXZWQgQXByIDIxIDIxOjI2OjUxIDIwMTAgKzAyMDAKKworICAgIFVwZGF0ZSBHZXJtYW4gdHJhbnNsYXRpb24gb2YgbWFudWFsIHBhZ2VzCisgICAgCisgICAgVXBkYXRlIHRvIDE4OTR0LgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDMgKystCisgbWFuL3BvL2RlLnBvICAgICB8ICAgMzcgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLQorIDIgZmlsZXMgY2hhbmdlZCwgMzggaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDJmZDlkNDFmNDEyYTgyOTk3NjQ4NTJjNGI1YTA4MDkxMTg4ODQ0OTAKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgQXByIDIxIDA0OjQyOjA5IDIwMTAgKzAyMDAKKworICAgIEJ1bXAgdmVyc2lvbiB0byAxLjE1LjgKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICA2ICsrKysrKworIDEgZmlsZXMgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgYTNhOTQxN2EwODFmMTk3NzNlOTUyNzY5OGUzZGU3M2UxODdkMDU0MgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBBcHIgMjEgMDQ6MDY6MzUgMjAxMCArMDIwMAorCisgICAgUmVsZWFzZSAxLjE1LjcKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICA2ICsrKystLQorIDEgZmlsZXMgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgMGE2YjZlYWM1NTJjZDg3NzdiZGEwM2ZhOGNiNDMzOWU1MDliOWI4MAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBBcHIgMjEgMDQ6MjY6MzMgMjAxMCArMDIwMAorCisgICAgYnVpbGQ6IERpc3RyaWJ1dGUgbWFpbnRzY3JpcHQtaGVscGVyCisgICAgCisgICAgQnkgZGVmYXVsdCBfU0NSSVBUUyB2YXJpYWJsZXMgZG8gbm90IGRpc3RyaWJ1dGUgdGhlIGZpbGVzLgorCisgc2NyaXB0cy9NYWtlZmlsZS5hbSB8ICAgIDIgKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGNlMzVmZWI3MThiNTIxM2VhOWZiNDkwNjVkMjYyZWYyYzBiZDFkOTUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgQXByIDIxIDA0OjAzOjI0IDIwMTAgKzAyMDAKKworICAgIFJlZ2VuZXJhdGUgLnBvdCBmaWxlcyBhbmQgbWVyZ2UgLnBvIGZpbGVzIHdpdGggdGhlbQorCisgZHNlbGVjdC9wby9icy5wbyAgICAgICAgfCAgIDE2ICstCisgZHNlbGVjdC9wby9jYS5wbyAgICAgICAgfCAgIDE2ICstCisgZHNlbGVjdC9wby9jcy5wbyAgICAgICAgfCAgIDE2ICstCisgZHNlbGVjdC9wby9kYS5wbyAgICAgICAgfCAgIDE2ICstCisgZHNlbGVjdC9wby9kZS5wbyAgICAgICAgfCAgIDE2ICstCisgZHNlbGVjdC9wby9kc2VsZWN0LnBvdCAgfCAgIDE2ICstCisgZHNlbGVjdC9wby9lbC5wbyAgICAgICAgfCAgIDE2ICstCisgZHNlbGVjdC9wby9lcy5wbyAgICAgICAgfCAgIDE2ICstCisgZHNlbGVjdC9wby9ldC5wbyAgICAgICAgfCAgIDE2ICstCisgZHNlbGVjdC9wby9ldS5wbyAgICAgICAgfCAgIDE2ICstCisgZHNlbGVjdC9wby9mci5wbyAgICAgICAgfCAgIDE5ICstCisgZHNlbGVjdC9wby9nbC5wbyAgICAgICAgfCAgIDE2ICstCisgZHNlbGVjdC9wby9odS5wbyAgICAgICAgfCAgIDE2ICstCisgZHNlbGVjdC9wby9pZC5wbyAgICAgICAgfCAgIDE2ICstCisgZHNlbGVjdC9wby9pdC5wbyAgICAgICAgfCAgIDE2ICstCisgZHNlbGVjdC9wby9qYS5wbyAgICAgICAgfCAgIDE2ICstCisgZHNlbGVjdC9wby9rby5wbyAgICAgICAgfCAgIDE2ICstCisgZHNlbGVjdC9wby9uYi5wbyAgICAgICAgfCAgIDE2ICstCisgZHNlbGVjdC9wby9ubC5wbyAgICAgICAgfCAgIDE2ICstCisgZHNlbGVjdC9wby9ubi5wbyAgICAgICAgfCAgIDE2ICstCisgZHNlbGVjdC9wby9wbC5wbyAgICAgICAgfCAgIDE2ICstCisgZHNlbGVjdC9wby9wdC5wbyAgICAgICAgfCAgIDE2ICstCisgZHNlbGVjdC9wby9wdF9CUi5wbyAgICAgfCAgIDE2ICstCisgZHNlbGVjdC9wby9yby5wbyAgICAgICAgfCAgIDE2ICstCisgZHNlbGVjdC9wby9ydS5wbyAgICAgICAgfCAgIDE2ICstCisgZHNlbGVjdC9wby9zay5wbyAgICAgICAgfCAgIDE2ICstCisgZHNlbGVjdC9wby9zdi5wbyAgICAgICAgfCAgIDE2ICstCisgZHNlbGVjdC9wby90bC5wbyAgICAgICAgfCAgIDE2ICstCisgZHNlbGVjdC9wby92aS5wbyAgICAgICAgfCAgIDE2ICstCisgZHNlbGVjdC9wby96aF9DTi5wbyAgICAgfCAgIDE2ICstCisgZHNlbGVjdC9wby96aF9UVy5wbyAgICAgfCAgIDE2ICstCisgbWFuL3BvL2RlLnBvICAgICAgICAgICAgfCAgNzAyICsrKysrKysrKy0tLS0tLS0tLS0tCisgbWFuL3BvL2Rwa2ctbWFuLnBvdCAgICAgfCAxNDE2ICsrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLQorIG1hbi9wby9lcy5wbyAgICAgICAgICAgIHwgMTU1MiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0KKyBtYW4vcG8vZnIucG8gICAgICAgICAgICB8IDE3MTMgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0KKyBtYW4vcG8vaHUucG8gICAgICAgICAgICB8IDE0ODcgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0KKyBtYW4vcG8vamEucG8gICAgICAgICAgICB8IDE0OTUgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0KKyBtYW4vcG8vcGwucG8gICAgICAgICAgICB8IDE3MDEgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0KKyBtYW4vcG8vcHRfQlIucG8gICAgICAgICB8IDE0ODQgKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLQorIG1hbi9wby9ydS5wbyAgICAgICAgICAgIHwgMTQ5MSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLQorIG1hbi9wby9zdi5wbyAgICAgICAgICAgIHwgMTcwNiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tCisgcG8vYXN0LnBvICAgICAgICAgICAgICAgfCAgMzE2ICsrKysrLS0tLS0KKyBwby9icy5wbyAgICAgICAgICAgICAgICB8ICAzMTAgKysrKystLS0tLQorIHBvL2NhLnBvICAgICAgICAgICAgICAgIHwgIDMxNCArKysrKy0tLS0tCisgcG8vY3MucG8gICAgICAgICAgICAgICAgfCAgMzE0ICsrKysrLS0tLS0KKyBwby9kYS5wbyAgICAgICAgICAgICAgICB8ICAzMTIgKysrKystLS0tLQorIHBvL2RlLnBvICAgICAgICAgICAgICAgIHwgIDMxNCArKysrKy0tLS0tCisgcG8vZHBrZy5wb3QgICAgICAgICAgICAgfCAgMzEwICsrKysrLS0tLS0KKyBwby9kei5wbyAgICAgICAgICAgICAgICB8ICAzMTQgKysrKystLS0tLQorIHBvL2VsLnBvICAgICAgICAgICAgICAgIHwgIDMxNCArKysrKy0tLS0tCisgcG8vZW8ucG8gICAgICAgICAgICAgICAgfCAgMzE0ICsrKysrLS0tLS0KKyBwby9lcy5wbyAgICAgICAgICAgICAgICB8ICAzMTYgKysrKystLS0tLQorIHBvL2V0LnBvICAgICAgICAgICAgICAgIHwgIDMxMCArKysrKy0tLS0tCisgcG8vZXUucG8gICAgICAgICAgICAgICAgfCAgMzEyICsrKysrLS0tLS0KKyBwby9mci5wbyAgICAgICAgICAgICAgICB8ICAzODIgKysrKysrLS0tLS0KKyBwby9nbC5wbyAgICAgICAgICAgICAgICB8ICAzMTQgKysrKystLS0tLQorIHBvL2h1LnBvICAgICAgICAgICAgICAgIHwgIDMxMCArKysrKy0tLS0tCisgcG8vaWQucG8gICAgICAgICAgICAgICAgfCAgMzE0ICsrKysrLS0tLS0KKyBwby9pdC5wbyAgICAgICAgICAgICAgICB8ICAzMTQgKysrKystLS0tLQorIHBvL2phLnBvICAgICAgICAgICAgICAgIHwgIDMxNCArKysrKy0tLS0tCisgcG8va20ucG8gICAgICAgICAgICAgICAgfCAgMzEyICsrKysrLS0tLS0KKyBwby9rby5wbyAgICAgICAgICAgICAgICB8ICAzMTAgKysrKystLS0tLQorIHBvL2t1LnBvICAgICAgICAgICAgICAgIHwgIDMxMCArKysrKy0tLS0tCisgcG8vbHQucG8gICAgICAgICAgICAgICAgfCAgMzEyICsrKysrLS0tLS0KKyBwby9tci5wbyAgICAgICAgICAgICAgICB8ICAzMTQgKysrKystLS0tLQorIHBvL25iLnBvICAgICAgICAgICAgICAgIHwgIDMxMiArKysrKy0tLS0tCisgcG8vbmUucG8gICAgICAgICAgICAgICAgfCAgMzE0ICsrKysrLS0tLS0KKyBwby9ubC5wbyAgICAgICAgICAgICAgICB8ICAzMTQgKysrKystLS0tLQorIHBvL25uLnBvICAgICAgICAgICAgICAgIHwgIDMxMiArKysrKy0tLS0tCisgcG8vcGEucG8gICAgICAgICAgICAgICAgfCAgMzEwICsrKysrLS0tLS0KKyBwby9wbC5wbyAgICAgICAgICAgICAgICB8ICAzMTIgKysrKystLS0tLQorIHBvL3B0LnBvICAgICAgICAgICAgICAgIHwgIDMxNCArKysrKy0tLS0tCisgcG8vcHRfQlIucG8gICAgICAgICAgICAgfCAgMzE0ICsrKysrLS0tLS0KKyBwby9yby5wbyAgICAgICAgICAgICAgICB8ICAzMTQgKysrKystLS0tLQorIHBvL3J1LnBvICAgICAgICAgICAgICAgIHwgIDMxNCArKysrKy0tLS0tCisgcG8vc2sucG8gICAgICAgICAgICAgICAgfCAgMzE0ICsrKysrLS0tLS0KKyBwby9zdi5wbyAgICAgICAgICAgICAgICB8ICAzMTQgKysrKystLS0tLQorIHBvL3RoLnBvICAgICAgICAgICAgICAgIHwgIDMxMCArKysrKy0tLS0tCisgcG8vdGwucG8gICAgICAgICAgICAgICAgfCAgMzE0ICsrKysrLS0tLS0KKyBwby92aS5wbyAgICAgICAgICAgICAgICB8ICAzMTQgKysrKystLS0tLQorIHBvL3poX0NOLnBvICAgICAgICAgICAgIHwgIDMxMiArKysrKy0tLS0tCisgcG8vemhfVFcucG8gICAgICAgICAgICAgfCAgMzEwICsrKysrLS0tLS0KKyBzY3JpcHRzL3BvL2NhLnBvICAgICAgICB8ICA0MDQgKysrKysrKy0tLS0tCisgc2NyaXB0cy9wby9kZS5wbyAgICAgICAgfCAxMzE1ICsrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLQorIHNjcmlwdHMvcG8vZHBrZy1kZXYucG90IHwgIDQwMCArKysrKysrLS0tLS0KKyBzY3JpcHRzL3BvL2ZyLnBvICAgICAgICB8ICA0MjcgKysrKysrKy0tLS0tCisgc2NyaXB0cy9wby9wbC5wbyAgICAgICAgfCAgNDI2ICsrKysrKystLS0tLQorIHNjcmlwdHMvcG8vcnUucG8gICAgICAgIHwgIDQyNSArKysrKysrLS0tLS0KKyBzY3JpcHRzL3BvL3N2LnBvICAgICAgICB8ICA0MjYgKysrKysrKy0tLS0tCisgODkgZmlsZXMgY2hhbmdlZCwgMTk0NTUgaW5zZXJ0aW9ucygrKSwgMTI1MDggZGVsZXRpb25zKC0pCisKK2NvbW1pdCAwOTU4YTlmOWIyOGZiODE4ODYzMDkyMzQ2YmJlY2I1ODQ2NTVkOGFhCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIEFwciAyMSAwMjozNjo1OCAyMDEwICswMjAwCisKKyAgICBGaXggaW5zdGFsbGF0aW9uIG9mIGRpc2FwcGVhcmluZyByZXBsYWNlZCBwYWNrYWdlcyBpbiByZXZlcnNlIG9yZGVyCisgICAgCisgICAgVGhpcyBoYXBwZW5zIHdoZW4gdGhlIHdlIGluc3RhbGwgZmlyc3QgdGhlIHJlcGxhY2luZyB0aGVuIHRoZSByZXBsYWNlZAorICAgIHBhY2thZ2UsIGZvciB3aGljaCB0aGUgcmVwbGFjZWQgcGFja2FnZSBpcyBzdXBwb3NlZCB0byBnZXQgZGlzYXBwZWFyZWQuCisgICAgQW5kIGZpeGVzIGl0IHRvIGRpc2FwcGVhciB0aGUgY29ycmVjdCBwYWNrYWdlIGFuZCBub3QgbG9zZSB0cmFjayBvZiB0aGUKKyAgICBvd25lcnNoaXAgb2YgdGhlIHJlcGxhY2VkIGZpbGVzLCBieSBtYXJraW5nIHRoZSByZXBsYWNlZCBmaWxlIGFzIG5vdAorICAgIGJlaW5nIHBhcnQgb2YgdGhlIHVucGFja2VkIGFyY2hpdmUuCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgNCArKysrCisgc3JjL2FyY2hpdmVzLmMgICB8ICAgIDEgKworIDIgZmlsZXMgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgNDE4ZTFmYzAxZDI1ZmY5M2Y2NTc3ZDc4MzE4NGRhNjczODE3Mjk1ZQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBBcHIgMjEgMDE6MDA6MzEgMjAxMCArMDIwMAorCisgICAgRml4IHZlcnNpb25lZCBSZXBsYWNlcyB0byBub3QgcHJvZHVjZSBmaWxlIG92ZXJ3cml0ZSBlcnJvcnMgb24gZG93bmdyYWRlcworICAgIAorICAgIENoYW5nZSBkb2VzX3JlcGxhY2UoKSB0byB0YWtlIGFuIGFkZGl0aW9uYWwgYXJndW1lbnQgZm9yIHRoZSBvbGQKKyAgICDigJhzdHJ1Y3QgcGtnaW5mb3BlcmZpbGXigJksIGluc3RlYWQgb2YgaGFyZGNvZGluZyBvbGRwaWdwLT5pbnN0YWxsZWQuCisgICAgV2hpY2ggd2UgdXNlIGJ5IHBhc3NpbmcgcGtnLT5hdmFpbGFibGUgd2hlbiBjaGVja2luZyBpZiB0aGUgY3VycmVudAorICAgIHBhY2thZ2UgaGFzIGZpbGVzIHJlcGxhY2VkIGJ5IGZpbGVzIGZyb20gYW4gYWxyZWFkeSBpbnN0YWxsZWQgcGFja2FnZS4KKyAgICAKKyAgICBDbG9zZXM6ICM1Njg1NjYKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAyICsrCisgc3JjL2FyY2hpdmVzLmMgICB8ICAgMTYgKysrKysrKysrLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgMTEgaW5zZXJ0aW9ucygrKSwgNyBkZWxldGlvbnMoLSkKKworY29tbWl0IGU0YjE2YjVmNTQxM2E0NDYyMjc2OWViZmQ3YWFmYjYyZDg2YzQ5NjcKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgQXByIDE1IDIxOjEwOjQxIDIwMTAgKzAyMDAKKworICAgIGRwa2ctZ2VuY29udHJvbDogRG8gbm90IG91dHB1dCB0aGUgUGFja2FnZS1UeXBlIGZpZWxkIG9uIHVkZWIKKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgIHwgICAgMSArCisgc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGwgfCAgICAxICsKKyAyIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IGIwYjU5Y2NjZDJiYzhhYzFlMGQ4ZDE1N2QzMmZkNTVmNWNkMWQwNGIKK0F1dGhvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitEYXRlOiAgIFR1ZSBBcHIgMjAgMjI6MzA6MDUgMjAxMCArMDIwMAorCisgICAgVXBkYXRlIEdlcm1hbiB0cmFuc2xhdGlvbiBvZiBtYW51YWwgcGFnZXMKKyAgICAKKyAgICBVcGRhdGUgdG8gMTkwN3QwZjh1LgorCisgbWFuL3BvL2RlLnBvIHwgIDIyNCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAxODIgaW5zZXJ0aW9ucygrKSwgNDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA5ZDhiNGYyMWUxYmE3NWQxZTE4ZTUyNzY3ZDFhMDk1YmJkOTk3ZDUzCitBdXRob3I6IEhlbGdlIEtyZXV0em1hbm4gPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorRGF0ZTogICBUdWUgQXByIDIwIDIyOjE3OjU1IDIwMTAgKzAyMDAKKworICAgIFVwZGF0ZSBHZXJtYW4gc2NyaXB0cyB0cmFuc2xhdGlvbgorICAgIAorICAgIFVwZGF0ZSB0byA1MDh0MGYxdQorICAgIAorICAgIFRoZSByZW1haW5pbmcgc3RyaW5nIHNlZW1zIHRvIHJlcXVpcmUgYSBjb252ZXJzaW9uIG9mIHRoZSBwbyBmaWxlIHRvCisgICAgVVRGLTguLi4KKworIHNjcmlwdHMvcG8vZGUucG8gfCAgIDY2ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgNDkgaW5zZXJ0aW9ucygrKSwgMTcgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA3MGExYWQ4Y2I2NzJlNmU5ZWY5NmM2OTRkMjc1ZmYwNDBmZTM5ZWNjCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIEFwciAxOSAxMDo1Mjo0NiAyMDEwICswMjAwCisKKyAgICBkcGtnLW1lcmdlY2hhbmdlbG9nczogYWRkIG5vbi1yZWdyZXNzaW9uIHRlc3RzCisKKyBzY3JpcHRzL01ha2VmaWxlLmFtICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAxMiArKy0KKyBzY3JpcHRzL3QvOTEwX21lcmdlX2NoYW5nZWxvZ3MudCAgICAgICAgICAgICAgICAgIHwgICA1OCArKysrKysrKysKKyBzY3JpcHRzL3QvOTEwX21lcmdlX2NoYW5nZWxvZ3MvY2gtYSAgICAgICAgICAgICAgIHwgICA5MiArKysrKysrKysrKysrKworIHNjcmlwdHMvdC85MTBfbWVyZ2VfY2hhbmdlbG9ncy9jaC1iICAgICAgICAgICAgICAgfCAgIDg3ICsrKysrKysrKysrKysKKyBzY3JpcHRzL3QvOTEwX21lcmdlX2NoYW5nZWxvZ3MvY2gtbWVyZ2VkICAgICAgICAgIHwgIDExMyArKysrKysrKysrKysrKysrKworIHNjcmlwdHMvdC85MTBfbWVyZ2VfY2hhbmdlbG9ncy9jaC1tZXJnZWQtYmFzaWMgICAgfCAgMTM2ICsrKysrKysrKysrKysrKysrKysrCisgc2NyaXB0cy90LzkxMF9tZXJnZV9jaGFuZ2Vsb2dzL2NoLW1lcmdlZC1wciAgICAgICB8ICAxMDYgKysrKysrKysrKysrKysrKworIHNjcmlwdHMvdC85MTBfbWVyZ2VfY2hhbmdlbG9ncy9jaC1tZXJnZWQtcHItYmFzaWMgfCAgMTM4ICsrKysrKysrKysrKysrKysrKysrKworIHNjcmlwdHMvdC85MTBfbWVyZ2VfY2hhbmdlbG9ncy9jaC1vbGQgICAgICAgICAgICAgfCAgIDg1ICsrKysrKysrKysrKysKKyA5IGZpbGVzIGNoYW5nZWQsIDgyNSBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgOWI5ODg0NzY2NWQ4YmRkMGJhZTNjNTdmMjg5ZjBlNTQ5ZTliYWFjNAorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBBcHIgMTggMTI6MDg6MDYgMjAxMCArMDIwMAorCisgICAgZHBrZy1tZXJnZWNoYW5nZWxvZ3M6IG5ldyBzY3JpcHQgZG9pbmcgMy13YXkgbWVyZ2Ugb2YgRGViaWFuIGNoYW5nZWxvZ3MKKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgICAgICAgfCAgICAzICsKKyBkZWJpYW4vY29udHJvbCAgICAgICAgICAgICAgICAgIHwgICAgMiArLQorIGRlYmlhbi9kcGtnLWRldi5pbnN0YWxsICAgICAgICAgfCAgICAyICsKKyBtYW4vTWFrZWZpbGUuYW0gICAgICAgICAgICAgICAgIHwgICAgMSArCisgbWFuL2Rwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjEgICAgICB8ICAgNzEgKysrKysrKysrKworIG1hbi9wby9wbzRhLmNmZyAgICAgICAgICAgICAgICAgfCAgICA1ICsKKyBzY3JpcHRzLy5naXRpZ25vcmUgICAgICAgICAgICAgIHwgICAgMSArCisgc2NyaXB0cy9NYWtlZmlsZS5hbSAgICAgICAgICAgICB8ICAgIDIgKworIHNjcmlwdHMvZHBrZy1tZXJnZWNoYW5nZWxvZ3MucGwgfCAgMjg5ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKworIHNjcmlwdHMvcG8vUE9URklMRVMuaW4gICAgICAgICAgfCAgICAxICsKKyAxMCBmaWxlcyBjaGFuZ2VkLCAzNzYgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDZkNzA0MTdlZGM4ZGE5MzRhMTRiOGFkYTJlYjNmM2NmZmU2OWFlM2IKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gQXByIDE4IDEyOjIzOjA5IDIwMTAgKzAyMDAKKworICAgIE1vdmUgbWFpbnRzY3JpcHQtaGVscGVyIGZyb20gbGliLyB0byBzY3JpcHRzLworICAgIAorICAgIFRoZSBsaWIvIGxvY2F0aW9uIHdhcyBpbiBvcmRlciB3aGVuIHRoZSBmZWF0dXJlIHdhcyBwcm9wb3NlZCBhcyBhIHNoZWxsCisgICAgbGlicmFyeSwgbm93IGdpdmVuIGl0J3MgYSBzaGVsbCBzY3JpcHQgaXQgc2hvdWxkIGJlIGluIHNjcmlwdHMvIHdpdGgKKyAgICBhbGwgdGhlIG90aGVyIHNjcmlwdHMuCisKKyBsaWIvTWFrZWZpbGUuYW0gICAgICAgICAgICAgICAgICAgICB8ICAgIDIgLS0KKyBzY3JpcHRzL01ha2VmaWxlLmFtICAgICAgICAgICAgICAgICB8ICAgIDIgKysKKyB7bGliID0+IHNjcmlwdHN9L21haW50c2NyaXB0LWhlbHBlciB8ICAgIDAKKyAzIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IGRiOTg3Yjg0ODZmNzc0ODllNGU3OGJkZDRlYjZmNWU2MjgzNjM1ZTIKK0F1dGhvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitEYXRlOiAgIFN1biBBcHIgMTggMTA6NDI6MjkgMjAxMCArMDIwMAorCisgICAgRml4IHR5cG86IHMvdWdyYWRlL3VwZ3JhZGUvCisKKyBtYW4vbWFpbnRzY3JpcHQtaGVscGVyLjEgfCAgICAyICstCisgbWFuL3BvL2RlLnBvICAgICAgICAgICAgIHwgICAgNCArKy0tCisgMiBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBjNDBkZTIwZTMwNzkyNDg1MDAyODY0ZmNlYWMyODZhZTEyMmU2MDgyCitBdXRob3I6IEhlbGdlIEtyZXV0em1hbm4gPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorRGF0ZTogICBTdW4gQXByIDE4IDEwOjM5OjMzIDIwMTAgKzAyMDAKKworICAgIFVwZGF0ZSBHZXJtYW4gdHJhbnNsYXRpb24gb2YgbWFudWFsIHBhZ2VzCisgICAgCisgICAgVXBkYXRlIHRvIDE4OTh0LgorCisgbWFuL3BvL2RlLnBvIHwgICA5OSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA3MiBpbnNlcnRpb25zKCspLCAyNyBkZWxldGlvbnMoLSkKKworY29tbWl0IDZhOGM4MjA3NTY5MmViODU0NWRiYWM0YWJhMGZjYWNlNDFmNGIzZDkKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgQXByIDE3IDE5OjQ2OjQ5IDIwMTAgKzAyMDAKKworICAgIGRwa2ctc2NhbnNvdXJjZXM6IGNhbGwgdGhlIHJpZ2h0IGZ1bmN0aW9uIHdoZW4gLWUgaXMgdXNlZAorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgIHwgICAgMiArKworIHNjcmlwdHMvZHBrZy1zY2Fuc291cmNlcy5wbCB8ICAgIDIgKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDJhZWM0MDk3NGRlNzIxNTg1NjNkOTNjOGEwMTQ2YzdiYWQ1YTczODcKK0F1dGhvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitEYXRlOiAgIFNhdCBBcHIgMTcgMDk6MzY6MDQgMjAxMCArMDIwMAorCisgICAgVXBkYXRlIEdlcm1hbiB0cmFuc2xhdGlvbiBvZiBtYW51YWwgcGFnZXMKKyAgICAKKyAgICBVcGRhdGUgdG8gMTg5M3QwZjV1LgorCisgbWFuL3BvL2RlLnBvIHwgIDEyMCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDY5IGluc2VydGlvbnMoKyksIDUxIGRlbGV0aW9ucygtKQorCitjb21taXQgNThkMmRjNDIzMmQ2MjE3M2JlYmE2YjVlYmNiNWY5MTIzMzBjYTk4OQorQXV0aG9yOiBIZWxnZSBLcmV1dHptYW5uIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KK0RhdGU6ICAgRnJpIEFwciAxNiAyMTo0OTowOSAyMDEwICswMjAwCisKKyAgICBVcGRhdGUgR2VybWFuIHRyYW5zbGF0aW9uIG9mIG1hbnVhbCBwYWdlcworICAgIAorICAgIFVwZGF0ZSB0byAxODg3dDBmMTF1LgorCisgbWFuL3BvL2RlLnBvIHwgIDM2MCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAzMjcgaW5zZXJ0aW9ucygrKSwgMzMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyMGYzM2ZkODllMDZhMjE0Yzg2MTczM2MyY2MyODc1NGVkYTU4YmZhCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIEFwciAxMiAxMjozMjoxOCAyMDEwICswMjAwCisKKyAgICBtYWludHNjcmlwdC1oZWxwZXI6IG5ldyBwcm9ncmFtIHRvIHNpbXBsaWZ5IHNvbWUgbWFpbnRhaW5lciBzY3JpcHRzCisgICAgCisgICAgVGhpcyBwcm9ncmFtIGlzIGRlc2lnbmVkIHRvIGJlIHJ1biB3aXRoaW4gbWFpbnRhaW5lciBzY3JpcHRzIHRvIGFjaGlldmUKKyAgICBzb21lIHRhc2tzIHRoYXQgZHBrZyBjYW4ndCAoeWV0KSBoYW5kbGUgbmF0aXZlbHkgZWl0aGVyIGJlY2F1c2Ugb2YgZGVzaWduCisgICAgZGVjaXNpb25zIG9yIGR1ZSB0byBjdXJyZW50IGxpbWl0YXRpb25zLgorICAgIAorICAgIE1hbnkgb2YgdGhvc2UgdGFza3MgcmVxdWlyZSBjb29yZGluYXRlZCBhY3Rpb25zIGZyb20gc2V2ZXJhbCBtYWludGFpbmVyCisgICAgc2NyaXB0cyAocHJlaW5zdCwgcG9zdGluc3QsIHByZXJtLCBwb3N0cm0pLiBUbyBhdm9pZCBtaXN0YWtlcyB0aGUgc2FtZQorICAgIGNhbGwgc2ltcGx5IG5lZWRzIHRvIGJlIHB1dCBpbiBhbGwgc2NyaXB0cyBhbmQgdGhlIHByb2dyYW0gd2lsbCBhdXRvbWF0aWNhbGx5CisgICAgYWRhcHQgaXRzIGJlaGF2aW91ciBiYXNlZCBvbiB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGUgRFBLR19NQUlOVFNDUklQVF9OQU1FCisgICAgYW5kIG9uIHRoZSBtYWludGFpbmVyIHNjcmlwdHMgYXJndW1lbnRzIHRoYXQgeW91IGhhdmUgdG8gZm9yd2FyZCBhZnRlcgorICAgIGEgZG91YmxlIGRhc2guCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgfCAgICA0ICsKKyBkZWJpYW4vZHBrZy5pbnN0YWxsICAgICAgfCAgICAyICsKKyBsaWIvTWFrZWZpbGUuYW0gICAgICAgICAgfCAgICAxICsKKyBsaWIvbWFpbnRzY3JpcHQtaGVscGVyICAgfCAgMjU2ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKKyBtYW4vTWFrZWZpbGUuYW0gICAgICAgICAgfCAgICAzICstCisgbWFuL21haW50c2NyaXB0LWhlbHBlci4xIHwgIDExNyArKysrKysrKysrKysrKysrKysrKysKKyBtYW4vcG8vcG80YS5jZmcgICAgICAgICAgfCAgICA1ICsKKyA3IGZpbGVzIGNoYW5nZWQsIDM4NyBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgZDViMTVmNTZmYmM5Mzk4MzAwNWNmMmY5Y2MxMTE3YTNiYmIzNjcwYworQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBBcHIgMTYgMTE6NTY6MTcgMjAxMCArMDIwMAorCisgICAgZHBrZzogZXhwb3J0IERQS0dfTElCRElSIHRvIG1haW50YWluZXIgc2NyaXB0cworICAgIAorICAgIEl0IGNhbiBiZSB1c2VkIHRvIGZpbmQgb3V0IHRoZSBsb2NhdGlvbiBvZiBzb21lIGludGVybmFsIGRwa2cgcHJvZ3JhbXMKKyAgICB0aGF0IG1pZ2h0IGJlIGNhbGxlZCBmcm9tIG1haW50YWluZXIgc2NyaXB0cy4gVGhhdCB3YXkgd2UgY2FuIGF2b2lkCisgICAgaGFyZGNvZGluZyAvdXNyL2xpYi9kcGtnIGFuZCBtYWludGFpbmVyIHNjcmlwdHMgd2lsbCBzdGlsbCB3b3JrIHdoZW4KKyAgICBjYWxsZWQgZnJvbSBhIGRwa2cgbWFudWFsbHkgaW5zdGFsbGVkIGluIC91c3IvbG9jYWwgZm9yIGV4YW1wbGUuCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMyArKysKKyBsaWIvZHBrZy9kcGtnLmggIHwgICAgMSArCisgbWFuL2Rwa2cuMSAgICAgICB8ICAgIDQgKysrKworIHNyYy9NYWtlZmlsZS5hbSAgfCAgICAxICsKKyBzcmMvaGVscC5jICAgICAgIHwgICAgMSArCisgNSBmaWxlcyBjaGFuZ2VkLCAxMCBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgMjQ2Y2Y1OWY4Y2I1NTViZGFkZGQzNmUwMWQ0YjU3YTVlNWFjM2M3ZgorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBBcHIgMTIgMTI6MDY6MDEgMjAxMCArMDIwMAorCisgICAgZHBrZzogZXhwb3J0IERQS0dfTUFJTlRTQ1JJUFRfTkFNRSB0byB0ZWxsIHdoYXQga2luZCBvZiBzY3JpcHQgd2UncmUgcnVubmluZworICAgIAorICAgIFRoZSBpZGVhIGlzIHRoYXQgc3BlY2lhbGl6ZWQgaG9va3MgY2FuIGJlbmVmaXQgZnJvbSB0aGlzIGluZm9ybWF0aW9uIHRvCisgICAgZG8gdGhlIHJpZ2h0IHRoaW5nLiBUaGUgc2FtZSBjYWxsIHdvdWxkIGJlIHB1dCBpbiB0aGUgdmFyaW91cyBtYWludGFpbmVyCisgICAgc2NyaXB0cyBidXQgdGhlIGFjdGlvbnMgdGFrZW4gd291bGQgYmUgZGlmZmVyZW50IGRlcGVuZGluZyBvbiB0aGUgc2NyaXB0CisgICAgbmV2ZXJ0aGVsZXNzLgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDMgKysrCisgbGliL2Rwa2cvZHBrZy5oICB8ICAgIDEgKworIG1hbi9kcGtnLjEgICAgICAgfCAgICA0ICsrKysKKyBzcmMvaGVscC5jICAgICAgIHwgICAgNCArKy0tCisgNCBmaWxlcyBjaGFuZ2VkLCAxMCBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgMjlmZTM2MzIxOTYyNWYyYTQxMWM4NWNlMDY1YWQ0N2E2NzA3Nzc5NworQXV0aG9yOiBSb2JlcnQgTHViZXJkYSA8cm9iZXJ0QGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBBcHIgMTUgMTI6MTA6MjEgMjAxMCArMDIwMAorCisgICAgZHNlbGVjdDogdHJlYXQgdW5rbm93biBwYWNrYWdlcyBhcyBrbm93biBhbmQgbWFya2VkIGZvciBwdXJnZQorICAgIAorICAgIFRoaXMgaXMgYSB0ZW1wb3Jhcnkgd29yay1hcm91bmQgc28gdGhhdCBkc2VsZWN0IGRvZXNuJ3QgdHJ5IHRvCisgICAgcmVpbnN0YWxsIHBhY2thZ2VzIG9mIHByaW9yaXR5ID4gc3RhbmRhcmQgdGhhdCB3ZXJlIHJlbW92ZWQgb3Igbm90CisgICAgaW5zdGFsbGVkLgorICAgIAorICAgIFRoZSBjb21wbGV0ZSBzb2x1dGlvbiAodHJhY2tlZCBpbiAjNTUxNjM4KSB3aWxsIGludm9sdmUgc3RvcmluZyB0aGUKKyAgICBzZWVuL25vdC1zZWVuIGluZm9ybWF0aW9uIHNvbWV3aGVyZSBlbHNlIHRoYW4gaW4gdGhlIGRwa2cgc3RhdHVzIGRhdGFiYXNlCisgICAgYW5kIGlkZWFsbHkgaW4gYSBuZXcgZGF0YWJhc2Ugc2hhcmVkIGJ5IGFsbCBmcm9udGVuZHMuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgfCAgICA0ICsrKysKKyBkc2VsZWN0L3BrZ2xpc3QuY2MgfCAgIDEwICsrKysrKy0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDEwIGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA4Y2NlYmY2MmVhMjk0MGI1OTdlMmQ2NjQzM2IxYWMwMDgwMWUxYzZiCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IEFwciAxNSAwMjo0NzoyNiAyMDEwICswMjAwCisKKyAgICBkcGtnOiBGaXggaGFyZCBsaW5rIGV4dHJhY3Rpb24gZm9yIG5vcm1hbCBmaWxlcyBkdWUgdG8gZGVmZXJyZWQgcmVuYW1lCisgICAgCisgICAgV2hlbiBjcmVhdGluZyBoYXJkIGxpbmtzIG9uIGV4dHJhY3Rpb24gdXNlIHRoZSAuZHBrZy1uZXcgZmlsZW5hbWUKKyAgICBmb3Igc291cmNlIGFzIHRoZSBub3JtYWwgZmlsZSBpcyBub3QgeWV0IGluIHBsYWNlIGR1ZSB0byB0aGUgcmVuYW1lCisgICAgZGVmZXJyYWwuCisgICAgCisgICAgV2UgYXZvaWQgZG9pbmcgdGhpcyBmb3IgaGFyZCBsaW5rcyB0byBzcGVjaWFsIGZpbGVzICh3aGljaCBkbyBub3QKKyAgICBoYXZlIHRoZSBmbm5mX2RlZmVycmVkX3JlbmFtZSBmbGFnKSBiZWNhdXNlIHRoZXkgYXJlIGFscmVhZHkgaW4KKyAgICBwbGFjZS4gQWx0aG91Z2ggdGhpcyBzaG91bGQgbm90IGFsd2F5cyBwb3NlIGEgcHJvYmxlbSBiZWNhdXNlIG5vdAorICAgIGFsbCB0YXIgY3JlYXRpb24gaW1wbGVtZW50YXRpb25zIHN1cHBvcnQgaGFyZCBsaW5rcyBmb3Igbm9uLW5vcm1hbAorICAgIGZpbGVzLCBidXQgYXQgbGVhc3QgRnJlZUJTRCBsaWJhcmNoaXZlIGJhc2VkIG9uZXMgc3VwcG9ydCB0aGVtIGZvcgorICAgIGZpZm9zLCBzbyBiZXR0ZXIgYmUgc2FmZSB0aGFuIHNvcnJ5LgorICAgIAorICAgIEJhc2VkLW9uLXBhdGNoLWJ5OiBDb2xpbiBXYXRzb24gPGNqd2F0c29uQHVidW50dS5jb20+CisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMyArKysKKyBzcmMvYXJjaGl2ZXMuYyAgIHwgICAgNyArKysrKystCisgMiBmaWxlcyBjaGFuZ2VkLCA5IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA4NzQ4Nzc0NTllYjIzYzExYjA4ZjgyZDlkODk2OGIyZWU2YmJjZDdjCitBdXRob3I6IEhlbGdlIEtyZXV0em1hbm4gPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorRGF0ZTogICBXZWQgQXByIDE0IDIxOjA1OjEzIDIwMTAgKzAyMDAKKworICAgIFVwZGF0ZSBHZXJtYW4gc2NyaXB0cyB0cmFuc2xhdGlvbgorICAgIAorICAgIFVwZGF0ZSB0byA1MDZ0LgorCisgc2NyaXB0cy9wby9kZS5wbyB8ICAgMjEgKysrKysrKysrKysrKy0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAxMyBpbnNlcnRpb25zKCspLCA4IGRlbGV0aW9ucygtKQorCitjb21taXQgMDA4NWJmZDE5NTk2MjJiOTgwODNiOWQxMjhjMDA3ZjNlMTU3ZDUwMAorQXV0aG9yOiBNaWNoYWVsIFZvZ3QgPG1pY2hhZWwudm9ndEB1YnVudHUuY29tPgorRGF0ZTogICBXZWQgQXByIDE0IDEzOjE5OjI1IDIwMTAgKzAyMDAKKworICAgIGRwa2c6IFJlcG9ydCBkZWZlcnJlZCB0cmlnZ2VyIGVycm9ycyBvbiBzdGF0dXMtZmQKKyAgICAKKyAgICBSZXBvcnQgdGhlc2UgZXJyb3JzIGRpcmVjdGx5IHRocm91Z2ggc3RhdHVzLWZkLCBpbnN0ZWFkIG9mIHJlcG9ydGluZworICAgIGxhdGVyIG9uIGVycm9ycyB3aGljaCBhcmUgYSBjb25zZXF1ZW5jZSBvZiB0aG9zZSBmaXJzdCBlcnJvcnMsIHdoaWNoCisgICAgY2FuIGJlIHByZXR0eSBjb25mdXNpbmcgZm9yIGEgZnJvbnQtZW5kLgorICAgIAorICAgIENsb3NlczogIzU3NDU5OQorICAgIAorICAgIFNpZ25lZC1vZmYtYnk6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICA0ICsrKysKKyBzcmMvdHJpZ3Byb2MuYyAgIHwgICAxMSArKysrKysrKysrKworIDIgZmlsZXMgY2hhbmdlZCwgMTUgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDBkZTE5MmNhY2I0YWExNzUzNmE2NWFiMGIwYTYxODFhNmIzZDk4ZTcKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgQXByIDE0IDEyOjUyOjU1IDIwMTAgKzAyMDAKKworICAgIEFkZCBkcGtnLWJ1aWxkZmxhZ3MgdG8gLmdpdGlnbm9yZQorCisgc2NyaXB0cy8uZ2l0aWdub3JlIHwgICAgMSArCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA5NmZlZTQ0NDE2MDI3YmUzYjllNjBkOGVjNThmZDA3MmMxNDNmODNhCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIEFwciAxNCAxMzozOTo1NiAyMDEwICswMjAwCisKKyAgICBkcGtnOiBGYWN0b3Igb3V0IGV4dGVuc2lvbiBpbnRvIGl0cyBvd24gdmFyaWFibGUgaW4gZW5xdWV1ZV9zcGVjaWZpZWQoKQorCisgc3JjL3BhY2thZ2VzLmMgfCAgICA2ICsrKy0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQorCitjb21taXQgOWE4MzBlOWQ1ZmNiOGM0OGJiODRiZGViYjNmNjA2OTg0Y2UyY2E0NQorQXV0aG9yOiBKb25hdGhhbiBOaWVkZXIgPGpybmllZGVyQGdtYWlsLmNvbT4KK0RhdGU6ICAgV2VkIEFwciAxNCAxMjoxNzoyOSAyMDEwICswMjAwCisKKyAgICBkcGtnOiBGYWN0b3Igb3V0IHBhY2thZ2UtbGlzdGluZyBmdW5jdGlvbnMgZnJvbSBwYWNrYWdlcygpCisgICAgCisgICAgU3BsaXQgcGFja2FnZXMoKSBpbnRvIGJpdGUtc2l6ZWQgcGllY2VzLiBObyBmdW5jdGlvbmFsIGNoYW5nZQorICAgIGludGVuZGVkLgorICAgIAorICAgIFNpZ25lZC1vZmYtYnk6IEpvbmF0aGFuIE5pZWRlciA8anJuaWVkZXJAZ21haWwuY29tPgorICAgIFNpZ25lZC1vZmYtYnk6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworIHNyYy9wYWNrYWdlcy5jIHwgIDExMiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgNjQgaW5zZXJ0aW9ucygrKSwgNDggZGVsZXRpb25zKC0pCisKK2NvbW1pdCA4NDY3MjA2YjUxOGJlOGQwYWMxM2FmMmE3NWUxZTQyY2E2ZjNkYThjCitBdXRob3I6IENvbGluIFdhdHNvbiA8Y2p3YXRzb25AdWJ1bnR1LmNvbT4KK0RhdGU6ICAgV2VkIEFwciAxNCAxMTo1ODoyMyAyMDEwICswMjAwCisKKyAgICBkcGtnOiBmaXggZGVmZXJyZWQgcmVuYW1lL2ZzeW5jIHByb2Nlc3NpbmcKKyAgICAKKyAgICBJdCB3YXMgc2Nhbm5pbmcgdGhlIG9sZCBsaXN0IG9mIGZpbGVzIHNvIGl0IHdvdWxkIG5ldmVyIGluc3RhbGwKKyAgICBuZXcgZmlsZXMuCisKKyBzcmMvYXJjaGl2ZXMuYyAgIHwgICAgNCArKy0tCisgc3JjL2FyY2hpdmVzLmggICB8ICAgIDIgKy0KKyBzcmMvcHJvY2Vzc2FyYy5jIHwgICAgMiArLQorIDMgZmlsZXMgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQorCitjb21taXQgN2ZjNTkwMzM5ZTA3YjBiOGE3ODJjZThjYWU0ZDNiZTAwMWRjZTUzZgorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBBcHIgMTQgMTE6Mzk6MDYgMjAxMCArMDIwMAorCisgICAgZGViaWFuL2NvbnRyb2w6IGNsZWFudXAgb2xkIENvbmZsaWN0cy9SZXBsYWNlcworICAgIAorICAgIEFjdHVhbGx5IG1vc3Qgb2YgdGhlIGNoYW5nZXMgaGF2ZSBhbHJlYWR5IGJlZW4gY29tbWl0ZWQgYnkgbWlzdGFrZSBieQorICAgIEhlbGdlIGluIGY0OGY1ODM5ZGY5MTM4MDJmN2Q3MGU3N2Q2NmQzMzQ4YmQ5MGRkYjcuCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMSArCisgZGViaWFuL2NvbnRyb2wgICB8ICAgIDQgKy0tLQorIDIgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQorCitjb21taXQgMzkyN2E5ZDZlNjQyOTczMzBiNjFhMzg3NTViZWUyMGQ0NWM3YjE2NgorQXV0aG9yOiBDb2xpbiBXYXRzb24gPGNqd2F0c29uQHVidW50dS5jb20+CitEYXRlOiAgIFdlZCBBcHIgMTQgMTA6MDA6MTggMjAxMCArMDEwMAorCisgICAgZHBrZzogZml4IHJlbmFtZSBkZWZlcnJhbAorICAgIAorICAgIE1vZGVybiB0YXIgZmlsZXMgdHlwaWNhbGx5IHVzZSBOb3JtYWxGaWxlMSByYXRoZXIgdGhhbiBOb3JtYWxGaWxlMCBmb3IKKyAgICBmaWxlIG9iamVjdHMuICBBIHR5cG8gbWVhbnQgdGhhdCB0aGUgZm9ybWVyIG5ldmVyIHRyaWdnZXJlZCByZW5hbWUKKyAgICBkZWZlcnJhbC4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICA1ICsrKysrCisgc3JjL2FyY2hpdmVzLmMgICB8ICAgIDIgKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDYgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGY0OGY1ODM5ZGY5MTM4MDJmN2Q3MGU3N2Q2NmQzMzQ4YmQ5MGRkYjcKK0F1dGhvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitEYXRlOiAgIFR1ZSBBcHIgMTMgMjE6MjY6NTggMjAxMCArMDIwMAorCisgICAgVXBkYXRlIEdlcm1hbiB0cmFuc2xhdGlvbiBvZiBtYW51YWwgcGFnZXMKKyAgICAKKyAgICBVcGRhdGUgdG8gMTg2N3QuCisKKyBkZWJpYW4vY29udHJvbCB8ICAgIDcgKystLS0KKyBtYW4vcG8vZGUucG8gICB8ICAgNjIgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgNDMgaW5zZXJ0aW9ucygrKSwgMjYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA0YTNlMWQ5YjVhZjhiZTNhYWZiZTc0NzIwOWFlNjM3YmMxNGM1MDk1CitBdXRob3I6IEhlbGdlIEtyZXV0em1hbm4gPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorRGF0ZTogICBNb24gQXByIDEyIDE5OjUzOjAyIDIwMTAgKzAyMDAKKworICAgIFVwZGF0ZSBHZXJtYW4gdHJhbnNsYXRpb24gb2YgbWFudWFsIHBhZ2VzCisgICAgCisgICAgVXBkYXRlIHRvIDE4NjF0MGY1dS4KKworIG1hbi9wby9kZS5wbyB8ICA0MjggKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAzODMgaW5zZXJ0aW9ucygrKSwgNDUgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAwNzQ2MDQ3MGQyY2ZhZTM2ZDA5NDBiNDMzYjhlMzdiN2IxMjVlOWU3CitBdXRob3I6IEhlbGdlIEtyZXV0em1hbm4gPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorRGF0ZTogICBNb24gQXByIDEyIDE5OjE3OjM5IDIwMTAgKzAyMDAKKworICAgIFVwZGF0ZSBHZXJtYW4gc2NyaXB0cyB0cmFuc2xhdGlvbgorICAgIAorICAgIFVwZGF0ZSB0byA1MDV0LgorCisgc2NyaXB0cy9wby9kZS5wbyB8ICAgNTQgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystCisgMSBmaWxlcyBjaGFuZ2VkLCA1MyBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgODZhZGY4YmQxZTA5ZTZmNzAwMDg4NjE2NWQ1ZmExOWU4OGMzYTU0YQorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBBcHIgMTEgMjE6MjA6MTIgMjAxMCArMDIwMAorCisgICAgRHBrZzo6VmVuZG9yOjpEZWZhdWx0OiBkb2N1bWVudCB0aGUgdXBkYXRlLWJ1aWxkZmxhZ3MgaG9vaworCisgc2NyaXB0cy9EcGtnL1ZlbmRvci9EZWZhdWx0LnBtIHwgICAgNiArKysrKysKKyAxIGZpbGVzIGNoYW5nZWQsIDYgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IGFmNjUwZjdkNDIwMDhlMmYxMTBkMWEyMzdjOWEwNGM2ZGMxY2ZmZjkKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gQXByIDExIDIxOjE0OjAwIDIwMTAgKzAyMDAKKworICAgIERwa2c6OkJ1aWxkRmxhZ3M6IGZvciBVYnVudHUgc2V0IExERkxBR1MgdG8gLVdsLC1Cc3ltYm9saWMtZnVuY3Rpb25zCisgICAgCisgICAgVGhpcyBpcyBhY2NvcmRpbmcgdG8gaHR0cHM6Ly93aWtpLnVidW50dS5jb20vRGlzdENvbXBpbGVyRmxhZ3MgYW5kCisgICAgdGhlIGN1cnJlbnQgcGF0Y2ggdGhhdCB0aGV5IGFyZSBjYXJyeWluZyBhbnl3YXkuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICAgfCAgICAxICsKKyBzY3JpcHRzL0Rwa2cvVmVuZG9yL0RlZmF1bHQucG0gfCAgICAyICsrCisgc2NyaXB0cy9EcGtnL1ZlbmRvci9VYnVudHUucG0gIHwgICAgNiArKysrKysKKyAzIGZpbGVzIGNoYW5nZWQsIDkgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDg1MDY0NWVlOTQ4NTYzZWVlYmM2ZDM2OTE0NTU1NGJjNzJkYTU0MTYKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gQXByIDExIDE4OjM3OjA3IDIwMTAgKzAyMDAKKworICAgIGRwa2ctYnVpbGRwYWNrYWdlOiB1c2UgRHBrZzo6QnVpbGRGbGFncyB0byByZXRyaWV2ZSB0aGUgY29tcGlsZXIgZmxhZ3MKKyAgICAKKyAgICBEb2N1bWVudCB0aGF0IGRlYmlhbi9ydWxlcyBzaG91bGQgbm90IHJlbHkgb24gZW52aXJvbm1lbnQgdmFyaWFibGVzCisgICAgc2V0IGJ5IGRwa2ctYnVpbGRwYWNrYWdlIGFuZCBzaG91bGQgaW5zdGVhZCB1c2UKKyAgICBkcGtnLWJ1aWxkZmxhZ3MvZHBrZy1hcmNoaXRlY3R1cmUgdG8gcmV0cmlldmUgdGhlIGNvcnJlc3BvbmRpbmcgdmFsdWVzLgorCisgbWFuL2Rwa2ctYnVpbGRwYWNrYWdlLjEgICAgICB8ICAgNzggKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsIHwgICAyNyArKysrLS0tLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDE1IGluc2VydGlvbnMoKyksIDkwIGRlbGV0aW9ucygtKQorCitjb21taXQgOWRjMDQ2NmE1ZTMwMGRkZTBjZjIzYTc3YWFhNjA5YjA1YjYyODI0MgorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBBcHIgOSAxNzo0NjoxNSAyMDEwICswMjAwCisKKyAgICBkcGtnLWJ1aWxkZmxhZ3M6IG5ldyBzY3JpcHQgdG8gcmV0cmlldmUgY29tcGlsYXRpb24gZmxhZ3MgZHVyaW5nIHBhY2thZ2UgYnVpbGQKKyAgICAKKyAgICBGb3JjaW5nIHRoZSB2YWx1ZSBvZiBjb21waWxhdGlvbiBmbGFncyB0aHJvdWdoIGVudmlyb25tZW50IHZhcmlhYmxlcyBzZXQKKyAgICBieSBkcGtnLWJ1aWxkcGFja2FnZXMgaGFzIG5vdCBiZWVuIHZlcnkgc3VjY2Vzc2Z1bCB1cCB0byBub3cgYW5kIHN1ZmZlcmVkCisgICAgZnJvbSB0aGUgZmFjdCB0aGF0IGNhbGxpbmcgZGViaWFuL3J1bGVzIGRpcmVjdGx5IGNvdWxkIGxlYWQgdG8gYSBkaWZmZXJlbnQKKyAgICBidWlsZCB0aGFuIHdoYXQgZHBrZy1idWlsZHBhY2thZ2Ugd291bGQgaGF2ZSBkb25lLgorICAgIAorICAgIFRoaXMgY29tbWl0IGlzIHRoZSBzdGFydCBvZiBhIG5ldyBzb2x1dGlvbjogZHBrZy1idWlsZGZsYWdzIGlzIGEgdG9vbCB0aGF0CisgICAgcGFja2FnZSBtYWludGFpbmVycyBhcmUgc3VwcG9zZWQgdG8gdXNlIGluIG9yZGVyIHRvIHJldHJpZXZlIGNvbXBpbGF0aW9uCisgICAgZmxhZ3MuIEl0IG9mZmVycyBhIHdheSB0byBjb250cm9sIHRoZWlyIGRlZmF1bHQgdmFsdWVzIGF0IHRoZSBkaXN0cmlidXRpb24KKyAgICBsZXZlbCB3aGlsZSBzdGlsbCBhbGxvd2luZyBjdXN0b21pemF0aW9ucyBieSB1c2VycyB3aG8gcmVjb21waWxlIHRoZQorICAgIHNvdXJjZSBwYWNrYWdlcy4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgIHwgICAgNSArKworIGRlYmlhbi9kcGtnLWRldi5pbnN0YWxsICAgIHwgICAgMiArCisgbWFuL01ha2VmaWxlLmFtICAgICAgICAgICAgfCAgICAxICsKKyBtYW4vZHBrZy1idWlsZGZsYWdzLjEgICAgICB8ICAxMTYgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKKyBtYW4vcG8vcG80YS5jZmcgICAgICAgICAgICB8ICAgIDUgKysKKyBzY3JpcHRzL01ha2VmaWxlLmFtICAgICAgICB8ICAgIDIgKworIHNjcmlwdHMvZHBrZy1idWlsZGZsYWdzLnBsIHwgIDEwNSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKKyBzY3JpcHRzL3BvL1BPVEZJTEVTLmluICAgICB8ICAgIDEgKworIDggZmlsZXMgY2hhbmdlZCwgMjM3IGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA0YzE3NDNjYjZlYzg0NzhmYzA5OTIwMWE3ODExY2FhMGQ4OTJlYmFhCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIEFwciAxMSAxNzoxNDozNCAyMDEwICswMjAwCisKKyAgICBEcGtnOjpCdWlsZEZsYWdzOiBuZXcgbW9kdWxlIHRvIHF1ZXJ5L21hbmFnZSBidWlsZCBmbGFncworCisgc2NyaXB0cy9EcGtnL0J1aWxkRmxhZ3MucG0gfCAgMjY2ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCisgc2NyaXB0cy9NYWtlZmlsZS5hbSAgICAgICAgfCAgICAxICsKKyBzY3JpcHRzL3BvL1BPVEZJTEVTLmluICAgICB8ICAgIDEgKworIDMgZmlsZXMgY2hhbmdlZCwgMjY4IGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAzNTJjZTUyZTk0NTgyMGZhOWFhMTgyMzk3ZWIxMmU3YjYyNWMyNDM4CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIEFwciAxMSAwOToxMDoxNyAyMDEwICswMjAwCisKKyAgICBGaXggUE9EIGluIHNldmVyYWwgcGVybCBtb2R1bGVzIHRvIGF2b2lkIHR3byBjb25zZWN1dGl2ZSBsaW5lcyBzdGFydGluZyB3aXRoID1pdGVtCisgICAgCisgICAgQW4gZW1wdHkgbGluZSBpcyByZXF1aXJlZCBiZXR3ZWVuIHRoZSB0d28gb3IgcG9kMm1hbiBkZWNpZGVzIHRoYXQgdGhlCisgICAgc2Vjb25kIGlzIHRoZSBjb250aW51YXRpb24gb2YgdGhlIGZvcm1lciBhbmQgaW5jbHVkZXMgIj1pdGVtIiBpbiB0aGUKKyAgICBnZW5lcmF0ZWQgbWFudWFsIHBhZ2UuCisKKyBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0VudHJ5LnBtIHwgICAgMSArCisgc2NyaXB0cy9EcGtnL0NvbnRyb2wvSW5mby5wbSAgICB8ICAgIDEgKworIHNjcmlwdHMvRHBrZy9EZXBzLnBtICAgICAgICAgICAgfCAgICAxICsKKyBzY3JpcHRzL0Rwa2cvSW5kZXgucG0gICAgICAgICAgIHwgICAgMSArCisgc2NyaXB0cy9EcGtnL1ZlcnNpb24ucG0gICAgICAgICB8ICAgIDEgKworIDUgZmlsZXMgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgNDQzZWQ3ODNmNzkwMzMwMTgyN2ZlZDdiNDdiMjVkYjU5MDEwNGM3ZgorQXV0aG9yOiBBbnNnYXIgQnVyY2hhcmR0IDxhbnNnYXJANDMtMS5vcmc+CitEYXRlOiAgIFN1biBBcHIgMTEgMDg6NTk6MzcgMjAxMCArMDIwMAorCisgICAgRHBrZzo6VmVyc2lvbjogZml4IFBPRCB0byBhdm9pZCB0d28gY29uc2VjdXRpdmUgbGluZXMgc3RhcnRpbmcgd2l0aCA9aXRlbQorCisgc2NyaXB0cy9EcGtnL1ZlcnNpb24ucG0gfCAgICA0ICsrLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IGZmMDMzNDViN2E4ZDlkZDA5NTBkYzU4MWM1MjYzMzczYjJhMGI0MDYKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgQXByIDkgMDk6MzY6MjIgMjAxMCArMDIwMAorCisgICAgZHBrZy1zb3VyY2U6IGRvIG5vdCBhbGxvdyB1bmRlcnNjb3JlIGluIGNvbXBvbmVudCBuYW1lIGZvciBzdXBwbGVtZW50YXJ5IHRhcmJhbGxzCisgICAgCisgICAgQWNjb3JkaW5nIHRoZSBkb2N1bWVudGF0aW9uIHRoZXkgd2VyZSBuZXZlciBtZWFudCB0byBiZSBhbGxvd2VkCisgICAgYnV0IHVzYWdlIG9mIHBlcmwncyBcdyBhbGxvd2VkIHRoZW0gbmV2ZXJ0aGVsZXNzLiBbXHctXSBoYXMgbm93IGJlZW4KKyAgICByZXBsYWNlZCBieSBbWzphbG51bTpdLV0gZXZlcnl3aGVyZSBzbyB0aGF0IHRoZSBjb2RlIGZpdHMgdGhlCisgICAgZG9jdW1lbnRhdGlvbi4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgICAgICAgICB8ICAgIDMgKysrCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtICAgIHwgICAgNCArKy0tCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtIHwgICAgNCArKy0tCisgMyBmaWxlcyBjaGFuZ2VkLCA3IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAxOGIxMjA4M2I1ZmVlNGU3ZTI2ZTEzODJlNTAzMjFlNzk1NmZjZGI5CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEFwciA5IDA4OjM1OjQ3IDIwMTAgKzAyMDAKKworICAgIGRwa2c6IGZpeCBtZXRhZGF0YSBpbnN0YWxsYXRpb24gYnkgbm90IG1peGluZyByZW5hbWUoKSBpbiBhIHJlYWRkaXIoKSBsb29wCisgICAgCisgICAgZHBrZydzIHByb2Nlc3NfYXJjaGl2ZSgpIHdhcyBkb2luZyB0aGUgaW1wcm9wZXIgYXNzdW1wdGlvbiB0aGF0IGEKKyAgICByZWFkZGlyKCkgbG9vcCB3b3VsZCBub3QgcmV0dXJuIHRoZSBzYW1lIGZpbGVuYW1lIHR3aWNlIGV2ZW4gd2hlbiB0aGUKKyAgICBzY2FubmVkIGRpcmVjdG9yeSBoYXMgZmlsZXMgcmVuYW1lZCBpbnRvIGl0IChjb21pbmcgZnJvbSB0bXAuY2kpLgorICAgIAorICAgIFRoZSBuZXQgcmVzdWx0IG9mIGhhdmluZyB0aGUgc2FtZSBmaWxlbmFtZSByZXR1cm5lZCB0d2ljZSBpcyB0aGF0IHRoZQorICAgIHRoZSBzZWNvbmQgdGltZSB0aGUgdXBkYXRlZCBmaWxlIHRvIGluc3RhbGwgaXMgbm8gbG9uZ2VyIHRoZXJlIGFuZAorICAgIHRodXMgZHBrZyByZW1vdmVkIHRoZSBjdXJyZW50IG1ldGFkYXRhIGZpbGUgYmVsaWV2aW5nIHRoYXQgaXQgd2FzCisgICAgb2Jzb2xldGUuIGJ0cmZzIHRyaWdnZXJzIHRoaXMgYnVnIGNvbnNpc3RlbnRseS4KKyAgICAKKyAgICBBbGwgb3RoZXIgcmVhZGRpcigpIG9jY3VycmVuY2VzIGhhdmUgYmVlbiByZXZpZXdlZCBhcyB3ZWxsIGZvciBzaW1pbGFyCisgICAgcHJvYmxlbXMuIEJ1dCB0aGV5IGFyZSBhbGwgc2FmZSwgdGhleSBtYWlubHkgdW5saW5rKCkgZmlsZXMgcmF0aGVyCisgICAgdGhhbiBhZGRpbmcgbmV3IGZpbGVzIGludG8gdGhlIHNjYW5uZWQgZGlyZWN0b3J5LgorICAgIAorICAgIFRoYW5rcyB0byBDYXJleSBVbmRlcndvb2QgYW5kIENocmlzIE1hc29uIGZvciB0aGVpciBoZWxwIGluIGRpYWdub3NpbmcKKyAgICB0aGlzIHByb2JsZW0uCisgICAgCisgICAgQWNrZWQtYnk6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAzICsrKworIHNyYy9wcm9jZXNzYXJjLmMgfCAgIDM5ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgMzUgaW5zZXJ0aW9ucygrKSwgNyBkZWxldGlvbnMoLSkKKworY29tbWl0IGRjOGFmMTJlNjExODZlMzU0OWExZWQyYTQxZjUyMDU0Y2IzOWZlN2MKK0F1dGhvcjogU3ZlbiBKb2FjaGltIDxzdmVuam9hY0BnbXguZGU+CitEYXRlOiAgIE1vbiBBcHIgNSAxMDo0MDozMiAyMDEwICswMjAwCisKKyAgICBGaXggaW5jb25zaXN0ZW5jaWVzIGFuZCB0eXBvcyBpbiBHZXJtYW4gZHBrZyB0cmFuc2xhdGlvbgorICAgIAorICAgIENoYW5nZSDigJxicmF1Y2hlbuKAnSDihpIg4oCcYmVuw7Z0aWdlbuKAnSB0aHJvdWdob3V0LiBDaGFuZ2Ug4oCcaGF04oCdIOKGkiDigJxlcmjDpGx04oCdIGluCisgICAgc2V2ZXJhbCBwbGFjZXMuICBSZXdvcmQgYSBmZXcgZm9ybXVsYXRpb25zIGluIOKAnC0taGVscOKAnSBvdXRwdXQuICBGaXgKKyAgICB2YXJpb3VzIHR5cG9zLgorICAgIAorICAgIEJhc2VkLW9uLXBhdGNoLWJ5OiBIb2xnZXIgV2Fuc2luZyA8bGludXhAd2Fuc2luZy1vbmxpbmUuZGU+CisKKyBwby9kZS5wbyB8ICAyNDMgKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMzIgaW5zZXJ0aW9ucygrKSwgMjExIGRlbGV0aW9ucygtKQorCitjb21taXQgNmI1YTcyMDg1ODE3NzRiYTIzNTE3NDMxYjRhYmM2N2QzMDUyN2RkNQorQXV0aG9yOiBIZWxnZSBLcmV1dHptYW5uIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KK0RhdGU6ICAgU3VuIEFwciA0IDE2OjUxOjQ0IDIwMTAgKzAyMDAKKworICAgIFVwZGF0ZSBHZXJtYW4gdHJhbnNsYXRpb24gb2YgbWFudWFsIHBhZ2VzCisgICAgCisgICAgVXBkYXRlIHRvIDE4MTR0LgorCisgbWFuL3BvL2RlLnBvIHwgICAxMSArKysrKysrKysrLQorIDEgZmlsZXMgY2hhbmdlZCwgMTAgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGU3YjEzOTJlNDY3Y2VlM2I2ZDYwNTJjZjA1NzEwZDM2ZDA1ODUyZWMKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgQXByIDIgMDk6MTY6NDkgMjAxMCArMDIwMAorCisgICAgZHBrZy1zb3VyY2U6IGZpeCBpbml0aWFsaXphdGlvbiBvZiBkaWZmLWlnbm9yZSBpbiAxLjAgZm9ybWF0CisgICAgCisgICAgQ29tbWl0IDMzNzhlOGZhNDM1YWJlNzllOWJkM2NlYTA3YjAyZjU2MmI5MDY2OTUgYnJva2UKKyAgICAiZHBrZy1zb3VyY2UgLWkgLWIiIG9uIHZlcnNpb24gMS4wIHNvdXJjZSBwYWNrYWdlcy4gVGhpcyByZXN0b3JlcyBpdC4KKworIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbSB8ICAgIDYgKysrKystCisgMSBmaWxlcyBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBhNmNkMGMxMmYzZmVlNzFmMjYzNzRjN2YyMWY3YTJlNGQxYWM5NDU4CitBdXRob3I6IEphcmkgQWFsdG8gPGphcmkuYWFsdG9AY2FudGUubmV0PgorRGF0ZTogICBGcmkgQXByIDIgMDk6MTU6MDkgMjAxMCArMDIwMAorCisgICAgZHBrZy1wYXJzZWNoYW5nZWxvZygxKTogcHJlY2lzZSB0aGF0IC0tYWxsIG92ZXJyaWRlcyB0aGUgb3RoZXIgb3B0aW9ucworCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICB8ICAgIDIgKysKKyBtYW4vZHBrZy1wYXJzZWNoYW5nZWxvZy4xIHwgICAgMyArKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGQ2MjBlYWQ5MzAyMzgzOTFmN2I0MWZjMTUzODVjZmYzNmEzODIyOTkKK0F1dGhvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitEYXRlOiAgIEZyaSBBcHIgMiAwNzo1MDo0OSAyMDEwICswMjAwCisKKyAgICBVcGRhdGUgR2VybWFuIHRyYW5zbGF0aW9uIG9mIG1hbnVhbCBwYWdlcworICAgIAorICAgIFVwZGF0ZSB0byAxODE0dC4KKworIG1hbi9wby9kZS5wbyB8ICAgMjIgKysrKysrKysrKysrKysrKysrKysrLQorIDEgZmlsZXMgY2hhbmdlZCwgMjEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDMzNzhlOGZhNDM1YWJlNzllOWJkM2NlYTA3YjAyZjU2MmI5MDY2OTUKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgQXByIDEgMjE6MDU6MzUgMjAxMCArMDIwMAorCisgICAgZHBrZy1zb3VyY2U6IHN1cHBvcnQgZGViaWFuL3NvdXJjZS9sb2NhbC1vcHRpb25zCisgICAgCisgICAgSXQncyBsaWtlIGRlYmlhbi9zb3VyY2Uvb3B0aW9ucyBidXQgaXQncyBub3Qgc3RvcmVkIGluIHRoZSBnZW5lcmF0ZWQKKyAgICBzb3VyY2UgcGFja2FnZS4gVGhpcyBpcyBlbnN1cmVkIGJ5IHRoZSB3YXkgb2YgYmVpbmcgcGFydCBvZiB0aGUgZGVmYXVsdAorICAgIGlnbm9yZSBsaXN0cyAoLWkgYW5kIC1JKSBhbmQgYmVpbmcgZXhwbGljaXRlbHkgZXhjbHVkZWQgZm9yIHRoZSBvbGQKKyAgICAxLjAgZm9ybWF0IHRoYXQgZG9lc24ndCB1c2UgdGhlIGRlZmF1bHQgaWdub3JlIGxpc3QuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICAgICAgfCAgICAyICsrCisgbWFuL2Rwa2ctc291cmNlLjEgICAgICAgICAgICAgICAgIHwgICAgNSArKysrKworIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbSAgICB8ICAgIDMgKysrCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtIHwgICAgMSArCisgc2NyaXB0cy9kcGtnLXNvdXJjZS5wbCAgICAgICAgICAgIHwgICAyNSArKysrKysrKysrKysrKy0tLS0tLS0tLS0tCisgNSBmaWxlcyBjaGFuZ2VkLCAyNSBpbnNlcnRpb25zKCspLCAxMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDYxOTRmOTFjZjhiZDdiODUxZDViODc1ZTgxYjVlMTBkYTU4NGQ2NDUKK0F1dGhvcjogU3ZlbiBKb2FjaGltIDxzdmVuam9hY0BnbXguZGU+CitEYXRlOiAgIFdlZCBNYXIgMzEgMjA6MDc6NTIgMjAxMCArMDIwMAorCisgICAgR2VybWFuIGRwa2cgdHJhbnNsYXRpb24gdXBkYXRlCisgICAgCisgICAgVXBkYXRlIHRvIDk2OHQuCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMyArKworIHBvL2RlLnBvICAgICAgICAgfCAgIDU5ICsrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAzMiBpbnNlcnRpb25zKCspLCAzMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDVmNGFhYmFhNTMzODgwNDNlMDIxZThhNmUyM2JhMzVmMTQxZmI2MTkKK0F1dGhvcjogU3ZlbiBKb2FjaGltIDxzdmVuam9hY0BnbXguZGU+CitEYXRlOiAgIFdlZCBNYXIgMzEgMTk6MDE6MDMgMjAxMCArMDIwMAorCisgICAgRml4IHR5cG8gaW4gR2VybWFuIGRzZWxlY3QgdHJhbnNsYXRpb24KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAzICsrKworIGRzZWxlY3QvcG8vZGUucG8gfCAgICA2ICsrKy0tLQorIDIgZmlsZXMgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQorCitjb21taXQgZTljNjk1YmUyMmZmM2M3ZDdmMDA4YTMzMDMzZjAyZjk2OWM5N2FiYQorQXV0aG9yOiBIZWxnZSBLcmV1dHptYW5uIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KK0RhdGU6ICAgTW9uIE1hciAyOSAxOTo1MTowMSAyMDEwICswMjAwCisKKyAgICBVcGRhdGUgR2VybWFuIHRyYW5zbGF0aW9uIG9mIG1hbnVhbCBwYWdlcworICAgIAorICAgIFVwZGF0ZSB0byAxODEydC4KKworIG1hbi9wby9kZS5wbyB8ICAxODEgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLQorIDEgZmlsZXMgY2hhbmdlZCwgMTgwIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBhNjc2ZGJjMzI0ZGJmMjY2ZDQ0MGI4MTk4YWM5MzY0MjExMjZlNDQ5CitBdXRob3I6IEhlbGdlIEtyZXV0em1hbm4gPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorRGF0ZTogICBNb24gTWFyIDI5IDE4OjMzOjA3IDIwMTAgKzAyMDAKKworICAgIFVwZGF0ZSBHZXJtYW4gc2NyaXB0cyB0cmFuc2xhdGlvbgorICAgIAorICAgIFVwZGF0ZSB0byA0OTl0LgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDMgKysrCisgc2NyaXB0cy9wby9kZS5wbyB8ICAgIDcgKysrKysrLQorIDIgZmlsZXMgY2hhbmdlZCwgOSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgYzVkNDRlMjJhOThiMDk0MTQ2MTlhMDY3MjNhMDVlODVjOTQ0ZWExMgorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBNYXIgMjkgMTI6MzY6MjAgMjAxMCArMDIwMAorCisgICAgRHBrZzo6U291cmNlOjpQYWNrYWdlOiBkbyBub3Qgb3ZlcndyaXRlIGRlYmlhbi9zb3VyY2UvZm9ybWF0IGlmIGl0IGFscmVhZHkgZXhpc3RzCisKKyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG0gfCAgIDEwICsrKysrKy0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDYgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKKworY29tbWl0IDFjYmEyNjBlZTFlOThjYzljMTYwZDc0ODdkNzIwYWI3OTVjZTc2YzgKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gTWFyIDI4IDE4OjExOjMzIDIwMTAgKzAyMDAKKworICAgIEFkZCBtaXNzaW5nIGNoYW5nZWxvZyBlbnRyaWVzLgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDMgKysrCisgMSBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA2OTVhOTQ3OTlkYzU0ZjAzYjJmNTM1Yjg1YmIxZDYwYmIzZjMwZjAyCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIE1hciAyOCAxODowNDoxNyAyMDEwICswMjAwCisKKyAgICBkcGtnLXNvdXJjZSgxKTogZG9jdW1lbnQgbW9yZSBlcnJvciBtZXNzYWdlcyBhbmQgd2FybmluZ3MKKworIG1hbi9kcGtnLXNvdXJjZS4xIHwgICAyNCArKysrKysrKysrKysrKysrKysrKysrLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDIyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBjZTE0Yzk0MWZhNGEwMjM4ODAxMWEwYzdjN2U2MGE4NmU4MjBhYWRkCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIE1hciAyOCAxNjo1NzoxOCAyMDEwICswMjAwCisKKyAgICBkcGtnLXNvdXJjZTogd2FybiB3aGVuIGRlYmlhbi9zb3VyY2UvZm9ybWF0IGRvZXNuJ3QgZXhpc3QKKyAgICAKKyAgICBEb2N1bWVudCBpbiBkcGtnLXNvdXJjZSgxKSB0aGUgZmFjdCB0aGF0IHRoZSBmYWxsYmFjayB0byAiMS4wIgorICAgIHdoZW4gZGViaWFuL3NvdXJjZS9mb3JtYXQgZG9lc24ndCBleGlzdCBpcyBkZXByZWNhdGVkLiBFeHBsYWluCisgICAgdGhlIHJhdGlvbmFsZS4KKyAgICAKKyAgICBEb2N1bWVudCB0aGUgbG9uZy10ZXJtIGRlcHJlY2F0aW9uIGluIFJFQURNRS5mZWF0dXJlLXJlbW92YWwtc2NoZWR1bGUuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICAgICAgICB8ICAgMTIgKysrKysrKysrKy0tCisgZG9jL1JFQURNRS5mZWF0dXJlLXJlbW92YWwtc2NoZWR1bGUgfCAgICA5ICsrKysrKysrKworIG1hbi9kcGtnLXNvdXJjZS4xICAgICAgICAgICAgICAgICAgIHwgICAyOSArKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLQorIHNjcmlwdHMvZHBrZy1zb3VyY2UucGwgICAgICAgICAgICAgIHwgICAgMiArKworIDQgZmlsZXMgY2hhbmdlZCwgNDMgaW5zZXJ0aW9ucygrKSwgOSBkZWxldGlvbnMoLSkKKworY29tbWl0IDg1YzY4YTJkZTUxMDI2MmZmOGU4MmY5ZjI5NDhlZGVmMGJjYTgwMzUKK0F1dGhvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitEYXRlOiAgIFN1biBNYXIgMjggMTc6Mzg6MDQgMjAxMCArMDIwMAorCisgICAgVXBkYXRlIEdlcm1hbiB0cmFuc2xhdGlvbiBvZiBtYW51YWwgcGFnZXMKKyAgICAKKyAgICBVcGRhdGUgdG8gMTc5OXQuCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgNyArKysrKysrCisgbWFuL3BvL2RlLnBvICAgICB8ICAgMTUgKysrKysrKysrKy0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAxNyBpbnNlcnRpb25zKCspLCA1IGRlbGV0aW9ucygtKQorCitjb21taXQgMzc3OWJiY2Q5NDBlMzE4ZjBkNTVlZDA1ODRiMGJhMzMyODAwZTQ1YworQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBNYXIgMjggMTY6MDE6MTkgMjAxMCArMDIwMAorCisgICAgRHBrZzo6U291cmNlOjpQYWNrYWdlOiBhZGQgLmdpdGF0dHJpYnV0ZXMgdG8gZHBrZy1zb3VyY2UgaWdub3JlIGxpc3RzCisKKyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG0gfCAgICAzICsrLQorIDEgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgYTQ4YzVkMTRiZGM2MTdjODMyM2VkZGI3OTRmMzIwODc1Y2Y0NzlkMQorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBNYXIgMjggMTI6MDQ6MzggMjAxMCArMDIwMAorCisgICAgZGViLXNobGlicyg1KTogdXNlICJ0eXBlIiByYXRoZXIgdGhhbiAidGFnIiB0byBiZSBjb25zaXN0ZW50IHdpdGggRGViaWFuIFBvbGljeQorCisgbWFuL2RlYi1zaGxpYnMuNSB8ICAgIDQgKystLQorIDEgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgNDhmY2I0Y2VhMjY4ZTIyNTdiOWJkZDRhODkwNzI4NzBmNzAyMzliZAorQXV0aG9yOiBDaHJpc3RpYW4gUEVSUklFUiA8YnVidWxsZUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgTWFyIDI2IDA3OjI1OjI4IDIwMTAgKzAxMDAKKworICAgIFVwZGF0ZWQgRnJlbmNoIHRyYW5zbGF0aW9uCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMSArCisgcG8vZnIucG8gICAgICAgICB8ICAyOTkgKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAxNDAgaW5zZXJ0aW9ucygrKSwgMTYwIGRlbGV0aW9ucygtKQorCitjb21taXQgMTMyMzcyZGYwNDI1NzZiYTkyZGY4ZmUxN2RiOTVhMTJiNTFjNzA5NworQXV0aG9yOiBDaHJpc3RpYW4gUEVSUklFUiA8YnVidWxsZUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgTWFyIDEyIDA3OjE3OjI3IDIwMTAgKzAxMDAKKworICAgIFVwZGF0ZSBGcmVuY2ggZHNlbGVjdCB0cmFuc2xhdGlvbgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDEgKworIGRzZWxlY3QvcG8vZnIucG8gfCAgIDE2ICsrKysrKy0tLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDcgaW5zZXJ0aW9ucygrKSwgMTAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBhMDZjNTg3NTcxYzE5MjZhNmFmNDE3NmRhYzlmNTA2NjE3NWRiNDVjCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIE1hciAyNCAxMzo1Njo0NyAyMDEwICswMTAwCisKKyAgICBSZWxlYXNlIDEuMTUuNi4xCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgNCArKy0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAwOTI1YmM2ZTFkZDY3NWE1MzY5M2Y5NTQ5Njc0Yjg3ZGExNzJlMTk4CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIE1hciAyNCAxNDowMjoyNSAyMDEwICswMTAwCisKKyAgICBSZWdlbmVyYXRlIC5wb3QgZmlsZXMgYW5kIG1lcmdlIC5wbyBmaWxlcyB3aXRoIHRoZW0KKworIHBvL2FzdC5wbyAgICAgICAgICAgICAgIHwgIDc1MCArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vYnMucG8gICAgICAgICAgICAgICAgfCAgNzI3ICsrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2NhLnBvICAgICAgICAgICAgICAgIHwgIDc1MCArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vY3MucG8gICAgICAgICAgICAgICAgfCAgNzUwICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9kYS5wbyAgICAgICAgICAgICAgICB8ICA3NTAgKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2RlLnBvICAgICAgICAgICAgICAgIHwgIDc1MCArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vZHBrZy5wb3QgICAgICAgICAgICAgfCAgNzI3ICsrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2R6LnBvICAgICAgICAgICAgICAgIHwgIDc1MCArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vZWwucG8gICAgICAgICAgICAgICAgfCAgNzUwICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9lby5wbyAgICAgICAgICAgICAgICB8ICA3NTAgKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2VzLnBvICAgICAgICAgICAgICAgIHwgIDc1MCArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vZXQucG8gICAgICAgICAgICAgICAgfCAgNzUwICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9ldS5wbyAgICAgICAgICAgICAgICB8ICA3NTAgKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2ZyLnBvICAgICAgICAgICAgICAgIHwgIDc1MCArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vZ2wucG8gICAgICAgICAgICAgICAgfCAgNzUwICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9odS5wbyAgICAgICAgICAgICAgICB8ICA3NDQgKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2lkLnBvICAgICAgICAgICAgICAgIHwgIDc1MCArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vaXQucG8gICAgICAgICAgICAgICAgfCAgNzUwICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9qYS5wbyAgICAgICAgICAgICAgICB8ICA3NTAgKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2ttLnBvICAgICAgICAgICAgICAgIHwgIDc1MCArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8va28ucG8gICAgICAgICAgICAgICAgfCAgNzUwICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9rdS5wbyAgICAgICAgICAgICAgICB8ICA3MjcgKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vbHQucG8gICAgICAgICAgICAgICAgfCAgNzUwICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9tci5wbyAgICAgICAgICAgICAgICB8ICA3NTAgKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL25iLnBvICAgICAgICAgICAgICAgIHwgIDc1MCArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vbmUucG8gICAgICAgICAgICAgICAgfCAgNzUwICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9ubC5wbyAgICAgICAgICAgICAgICB8ICA3NTAgKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL25uLnBvICAgICAgICAgICAgICAgIHwgIDc1MCArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vcGEucG8gICAgICAgICAgICAgICAgfCAgNzM0ICsrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL3BsLnBvICAgICAgICAgICAgICAgIHwgIDc1MCArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vcHQucG8gICAgICAgICAgICAgICAgfCAgNzUwICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9wdF9CUi5wbyAgICAgICAgICAgICB8ICA3NTAgKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL3JvLnBvICAgICAgICAgICAgICAgIHwgIDc1MCArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vcnUucG8gICAgICAgICAgICAgICAgfCAgNzU0ICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9zay5wbyAgICAgICAgICAgICAgICB8ICA3NTAgKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL3N2LnBvICAgICAgICAgICAgICAgIHwgIDc1MCArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vdGgucG8gICAgICAgICAgICAgICAgfCAgNzUwICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby90bC5wbyAgICAgICAgICAgICAgICB8ICA3NTAgKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL3ZpLnBvICAgICAgICAgICAgICAgIHwgIDc1NSArKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL3poX0NOLnBvICAgICAgICAgICAgIHwgIDc1MCArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vemhfVFcucG8gICAgICAgICAgICAgfCAgNzUwICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBzY3JpcHRzL3BvL2NhLnBvICAgICAgICB8ICAgMzIgKy0KKyBzY3JpcHRzL3BvL2RlLnBvICAgICAgICB8ICAgMzIgKy0KKyBzY3JpcHRzL3BvL2Rwa2ctZGV2LnBvdCB8ICAgMzIgKy0KKyBzY3JpcHRzL3BvL2ZyLnBvICAgICAgICB8ICAgMzIgKy0KKyBzY3JpcHRzL3BvL3BsLnBvICAgICAgICB8ICAgMzIgKy0KKyBzY3JpcHRzL3BvL3J1LnBvICAgICAgICB8ICAgMzIgKy0KKyBzY3JpcHRzL3BvL3N2LnBvICAgICAgICB8ICAgMzIgKy0KKyA0OCBmaWxlcyBjaGFuZ2VkLCAxNTQxMiBpbnNlcnRpb25zKCspLCAxNTQ4MCBkZWxldGlvbnMoLSkKKworY29tbWl0IDljZDQxZmRkYTFjMjcxNjljNTJkNzNiM2IzY2U3MTk5MWQ3MjQ5OTQKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gTWFyIDIxIDA5OjIzOjA5IDIwMTAgKzAxMDAKKworICAgIGRwa2c6IERlZmVyIHRoZSBmc3luYyBhbmQgcmVuYW1lIGZvciBub3JtYWwgZmlsZXMgaW4gdGFyIGV4dHJhY3Rpb24KKyAgICAKKyAgICBUaGlzIHdheSBpdCdzIGRvbmUgaW4gb25lIHBhc3MgYWZ0ZXJ3YXJkcywgdG8gYXZvaWQgbWFzc2l2ZSBJL08KKyAgICBkZWdyYWRhdGlvbiBkdWUgdG8gdGhlIHNlcmlhbGl6YXRpb24gZnJvbSBlYWNoIHdyaXRlICsgZnN5bmMuIFRoaXMKKyAgICByZXN0b3JlcyBleHRyYWN0aW9uIHRpbWVzIHRvIG51bWJlcnMgY2xvc2VyIHRvIHRoZSBvbmVzIGJlZm9yZSB0aGUKKyAgICBmc3luYyBwYXRjaCBpbnRyb2R1Y2VkIGluIDEuMTUuNi4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICA0ICsrCisgc3JjL2FyY2hpdmVzLmMgICB8ICAgODYgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0KKyBzcmMvYXJjaGl2ZXMuaCAgIHwgICAgMSArCisgc3JjL2ZpbGVzZGIuaCAgICB8ICAgIDIgKworIHNyYy9wcm9jZXNzYXJjLmMgfCAgICAyICsKKyA1IGZpbGVzIGNoYW5nZWQsIDgzIGluc2VydGlvbnMoKyksIDEyIGRlbGV0aW9ucygtKQorCitjb21taXQgN2U5ODI0MWIxMWNlMjdlOGQ3ZmI4N2YxZTY0ZWNkMDNlYzBlYTBiZgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBNYXIgMjQgMTI6NTA6MDYgMjAxMCArMDEwMAorCisgICAgZHNlbGVjdDogU2hvdyBkZXBlbmRlbmN5L2NvbmZsaWN0cyByZXNvbHV0aW9uIHNjcmVlbiBhZ2FpbgorICAgIAorICAgIEZpeCBieSBzd2l0Y2hpbmcgdGhlIEMrKyBjb2RlIHRvIHVzZSBTVEwncyBtaW4oKSBhbmQgbWF4KCkgaW5zdGVhZCBvZgorICAgIHByZXByb2Nlc3NvciBtYWNyb3MsIHRvIGF2b2lkIG11bHRpcGxlIGV2YWx1YXRpb24gb2YgYXJndW1lbnRzLgorICAgIAorICAgIFJlZ3Jlc3Npb24gaW50cm9kdWNlZCBpbiBjb21taXQgZjQyNmIwMzFhYzg1OGZhMzBhY2U2OTk1OWE0M2I2MWZiNDBmNGJlOS4KKyAgICAKKyAgICBDbG9zZXM6ICM1NzQ4MTYKKyAgICAKKyAgICBCYXNlZC1vbi1wYXRjaC1ieTogUm9iZXJ0IEx1YmVyZGEgPHJvYmVydEBkZWJpYW4ub3JnPgorCisgZGViaWFuL2NoYW5nZWxvZyAgfCAgICA0ICsrKysKKyBkc2VsZWN0L2RzZWxlY3QuaCB8ICAgIDUgKysrKysKKyBsaWIvZHBrZy9tYWNyb3MuaCB8ICAgIDMgKysrCisgMyBmaWxlcyBjaGFuZ2VkLCAxMiBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgMGZiMTA0ODIwZGNhMDQzN2NmZGMwNDU0NTQwMTBhZWI4OTM3MTc1NAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBNYXIgMjQgMTI6Mzk6MDUgMjAxMCArMDEwMAorCisgICAgZHBrZy1xdWVyeTogTWFrZSBsb2NhbCBmdW5jdGlvbnMgc3RhdGljCisKKyBzcmMvbWFpbi5oICB8ICAgIDQgLS0tLQorIHNyYy9xdWVyeS5jIHwgICAxNiArKysrKysrKysrKystLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAxMiBpbnNlcnRpb25zKCspLCA4IGRlbGV0aW9ucygtKQorCitjb21taXQgOTk0ZGMzMDM2OWIxYmNhMmE4NDY0MDllMGFhNzQzMDk2ZjY1NjcxYworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBNYXIgMTUgMDk6MDk6NTQgMjAxMCArMDEwMAorCisgICAgcy1zLWQ6IEZpeCBhbmQgdW5pZnkgZmF0YWwgZXJyb3Igc3RyaW5ncworICAgIAorICAgIERvIG5vdCB1c2Ugc3RyZXJyb3Igb24gZmF0YWwoKSBjYWxscyBhcyBpdCdzIGFscmVhZHkgZG9pbmcgdGhhdAorICAgIGludGVybmFsbHkgaWYgZXJybm8gaXMgbm90IDAuIFJlbW92ZSByZWR1bmRhbnQgbmV3IGxpbmUgYXQgZW5kIG9mCisgICAgZmF0YWwoKSBzdHJpbmdzLiBEZWNhcGl0YWxpemUgZmlyc3Qgd29yZC4gQ2xhcmlmeSBzb21lIHN0cmluZ3MgdG8KKyAgICBtYWtlIGl0IG9idmlvdXMgaXQncyBhbiBlcnJvciBtZXNzYWdlLgorCisgdXRpbHMvc3RhcnQtc3RvcC1kYWVtb24uYyB8ICAgNTAgKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDI0IGluc2VydGlvbnMoKyksIDI2IGRlbGV0aW9ucygtKQorCitjb21taXQgNGVjZDBlZjVkMmUyYTY1NDAyZjlhNmQ0NWY5ZDViOTZkMTI1MTZkMAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBNYXIgMTUgMDY6MjA6MTQgMjAxMCArMDEwMAorCisgICAgcy1zLWQ6IERvIG5vdCBhbGxvdyBhIC0tcmV0cnkgc2NoZWR1bGUgd2hlcmUgZm9yZXZlciBpcyB0aGUgbGFzdCBpdGVtCisgICAgCisgICAgVGhlIGZvcmV2ZXIgaXRlbSBuZWVkcyBzb21ldGhpbmcgdG8gcmVwZWF0IG92ZXIsIG90aGVyd2lzZSB3ZSBqdXN0IGdldAorICAgIGFuIGluZmluaXRlIGxvb3AgZG9pbmcgbm90aGluZy4KKyAgICAKKyAgICBDbG9zZXM6ICM1NzA5MzgKKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgfCAgICAyICsrCisgdXRpbHMvc3RhcnQtc3RvcC1kYWVtb24uYyB8ICAgIDMgKysrCisgMiBmaWxlcyBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA0YjEzZGZjZGJlYTY1NDg1OWI3OTgwZWExYWYzM2JlYzBmOWEwOTViCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIE1hciAxNCAwODoxMzoxOSAyMDEwICswMTAwCisKKyAgICBkcGtnLXN0YXRvdmVycmlkZTogRml4IGJvZ3VzIGFyZ3VtZW50cyBpbiBBQ1RJT04gbWFjcm9zCisgICAgCisgICAgUmVtb3ZlIGJvZ3VzIHNob3J0IG9wdGlvbnMgYW5kIHVzZSBtb3JlIGFwcHJvcHJpYXRlIGFjdF8gdmFsdWVzIGZvciBlYWNoCisgICAgYWN0aW9uLgorCisgc3JjL3N0YXRjbWQuYyB8ICAgIDYgKysrLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyMzBlZWNkNDAyYjdkNzI1MmNjOTU4NzA2ZGI4ZDgzNTAwNTVlNTYwCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIE1hciAxNSAwNzoyNDoxNCAyMDEwICswMTAwCisKKyAgICBsaWJkcGtnOiBSZW1vdmUgdW51c2VkIGRlc2MgYXJndW1lbnQgZnJvbSBidWZmZXJfcmVhZCBhbmQgYnVmZmVyX3dyaXRlCisKKyBsaWIvZHBrZy9idWZmZXIuYyB8ICAgMTIgKysrKystLS0tLS0tCisgbGliL2Rwa2cvYnVmZmVyLmggfCAgICA2ICsrLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgNyBpbnNlcnRpb25zKCspLCAxMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGMxNDgxYWM4OTFlNDMwYThlMjRlYmZiYTViYzlmNTRiNTE2NmI3NjkKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gTWFyIDE1IDA3OjIxOjEwIDIwMTAgKzAxMDAKKworICAgIGxpYmRwa2c6IEhhbmRsZSBJL08gZXJyb3JzIGluIGJ1ZmZlcl9jb3B5KCkKKyAgICAKKyAgICBNYWtlIGJ1ZmZlcl9yZWFkIGFuZCBidWZmZXJfd3JpdGUgYmVoYXZlIGFzIG5vcm1hbCByZWFkL3dyaXRlIGZ1bmN0aW9ucywKKyAgICByZXR1cm4gLTEgb24gZXJyb3IsIGFuZCBsZXQgdGhlIGNhbGxlciBoYW5kbGUgdGhlIGVycm9yLgorICAgIAorICAgIFNwbGl0IHRoZSBjaGVja3MgaW4gYnVmZmVyX2NvcHkgZm9yIGVycm9ycyBmcm9tIGJ1ZmZlcl9yZWFkIGFuZAorICAgIGJ1ZmZlcl93cml0ZSB0byBiZSBhYmxlIHRvIGdpdmUgbW9yZSBhY2N1cmF0ZSBlcnJvciBtZXNzYWdlcy4KKworIGxpYi9kcGtnL2J1ZmZlci5jIHwgICAyMSArKysrKysrKystLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDkgaW5zZXJ0aW9ucygrKSwgMTIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBjMTE1ODg3MjJhYzBlMTk1YjFmMzFhNDk5NWE4NTQ1MzZmMzMxYmRlCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IE1hciAxMyAwODozNTo0MyAyMDEwICswMTAwCisKKyAgICBsaWJkcGtnOiBNYWtlIHN0YXR1c2ZpbGUgYW5kIGF2YWlsYWJsZWZpbGUgdmFyaWFibGVzIHN0YXRpYworCisgbGliL2Rwa2cvZGJtb2RpZnkuYyB8ICAgIDMgKy0tCisgbGliL2Rwa2cvZHBrZy1kYi5oICB8ICAgIDMgLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDUgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyNjUwYWIzMDI0ZmQzYzc5OGUxN2MyNmQ5NGQ3Njc2NjM3M2ExYTAyCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IE1hciAxMyAwODoyNjozNyAyMDEwICswMTAwCisKKyAgICBsaWJkcGtnOiBNb3ZlIHRyaWdkZWZlcnJlZCBkZWNsYXJhdGlvbnMgdG8gYSBuZXcgdHJpZ2RlZmVycmVkLmgKKworIGxpYi9kcGtnL01ha2VmaWxlLmFtICAgIHwgICAgMSArCisgbGliL2Rwa2cvZHBrZy1kYi5oICAgICAgfCAgIDMxIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5oIHwgICA2MSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKworIGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sIHwgICAgMSArCisgbGliL2Rwa2cvdHJpZ2xpYi5jICAgICAgfCAgICAxICsKKyBzcmMvdHJpZ2NtZC5jICAgICAgICAgICB8ICAgIDEgKworIDYgZmlsZXMgY2hhbmdlZCwgNjUgaW5zZXJ0aW9ucygrKSwgMzEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA1OGE5M2MxN2ZjNDI0NmQ4ZjAyODFiMjFjZDM2MTEyNTYyZDJjNGY0CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IE1hciAxMyAwODoyMDowMiAyMDEwICswMTAwCisKKyAgICBsaWJkcGtnOiBNb3ZlIHRyaWdsaWIgZGVjbGFyYXRpb25zIHRvIGEgbmV3IHRyaWdsaWIuaAorCisgbGliL2Rwa2cvTWFrZWZpbGUuYW0gICAgfCAgICAxICsKKyBsaWIvZHBrZy9kYm1vZGlmeS5jICAgICB8ICAgIDEgKworIGxpYi9kcGtnL2Rwa2ctZGIuaCAgICAgIHwgICA3MCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBsaWIvZHBrZy9maWVsZHMuYyAgICAgICB8ICAgIDEgKworIGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sIHwgICAgMSArCisgbGliL2Rwa2cvdHJpZ2xpYi5jICAgICAgfCAgICAxICsKKyBsaWIvZHBrZy90cmlnbGliLmggICAgICB8ICAgOTkgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKKyBzcmMvYXJjaGl2ZXMuYyAgICAgICAgICB8ICAgIDEgKworIHNyYy9jb25maWd1cmUuYyAgICAgICAgIHwgICAgMSArCisgc3JjL2hlbHAuYyAgICAgICAgICAgICAgfCAgICAxICsKKyBzcmMvcHJvY2Vzc2FyYy5jICAgICAgICB8ICAgIDEgKworIHNyYy9yZW1vdmUuYyAgICAgICAgICAgIHwgICAgMSArCisgc3JjL3RyaWdjbWQuYyAgICAgICAgICAgfCAgICAxICsKKyBzcmMvdHJpZ3Byb2MuYyAgICAgICAgICB8ICAgIDEgKworIDE0IGZpbGVzIGNoYW5nZWQsIDExMSBpbnNlcnRpb25zKCspLCA3MCBkZWxldGlvbnMoLSkKKworY29tbWl0IDNkMmUyY2JlZDBjNzJmNDIzNTc3ZGJmNGNiZWZiM2Q3MmRmM2JiZmEKK0F1dGhvcjogQ29saW4gV2F0c29uIDxjandhdHNvbkBkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgTWFyIDE2IDEyOjE0OjE2IDIwMTAgKzAxMDAKKworICAgIGRwa2ctc291cmNlOiBzdXBwb3J0IHVucGFja2luZyBvbGQgc291cmNlIHBhY2thZ2VzIGxhY2tpbmcgdGhlIEZvcm1hdCBmaWVsZAorICAgIAorICAgIC5kc2MgZmlsZXMgaGF2ZW4ndCBhbHdheXMgaGFkIGEgRm9ybWF0IGZpZWxkLiBJdCB3YXMgaW50cm9kdWNlZCBpbiBkcGtnCisgICAgMS42LjEzLCBpbiBNYXkgMjAwMC4gVGhpcyBtZWFucyB0aGF0IGl0J3Mgc3RpbGwgbm90IGVudGlyZWx5CisgICAgaW1wbGF1c2libGUgdG8gcnVuIGFjcm9zcyBzb3VyY2UgcGFja2FnZXMgd2l0aG91dCBGb3JtYXQsIGZvciBleGFtcGxlCisgICAgd2hlbiBpbXBvcnRpbmcgdGhlIGhpc3Rvcnkgb2YgYSBzb3VyY2UgcGFja2FnZSBpbnRvIHJldmlzaW9uIGNvbnRyb2wuCisgICAgCisgICAgVGh1cywgZHBrZy1zb3VyY2Ugc2hvdWxkIHRyZWF0IGEgbWlzc2luZyBGb3JtYXQgZmllbGQgYXMgMS4wLCBmb3IKKyAgICBjb21wYXRpYmlsaXR5IHdpdGggdGhlc2Ugb2xkIHBhY2thZ2VzLgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICAgIHwgICAgNiArKysrKysKKyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG0gfCAgICA0ICsrKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDkgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDk0YTdjZjE0NjE0NDk0NTc1OWY2MDg0MDBkYzlhYTljNjc0YmQxYjMKK0F1dGhvcjogUGV0ZXIgS3JlZnRpbmcgPHBldGVya0BkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gTWFyIDE1IDEyOjI2OjUxIDIwMTAgKzAxMDAKKworICAgIFVwZGF0ZSBTd2VkaXNoIHRyYW5zbGF0aW9uLgorICAgIAorICAgIHBvL3N2LnBvOiA5NzF0MGYwdS4KKyAgICBzY3JpcHRzL3BvL3N2LnBvOiA0OTh0MGYwdS4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICA2ICsrKysrKworIHBvL3N2LnBvICAgICAgICAgfCAgIDEzICsrKysrKy0tLS0tLS0KKyBzY3JpcHRzL3BvL3N2LnBvIHwgICAgOCArKysrLS0tLQorIDMgZmlsZXMgY2hhbmdlZCwgMTYgaW5zZXJ0aW9ucygrKSwgMTEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyOGIwNDQzMTYzYWM0MzUxNTE5N2RiZWY4ZmY0NDE5OTBiZTQzODY2CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IE1hciAxMyAwNzoyOToyMyAyMDEwICswMTAwCisKKyAgICBsaWJkcGtnOiBVc2UgX19hdHRyaWJ1dGVfXyBrZXl3b3JkIGRlcGVuZGluZyBvbiBjb21waWxlciBzdXBwb3J0CisgICAgCisgICAgQ2hlY2sgZm9yIGNvbXBpbGVyIHN1cHBvcnQgZnJvbSBwcmVwcm9jZXNzb3IgbWFjcm9zIGFuZCBzZWxlY3RpdmVseQorICAgIGVuYWJsZSBzcGVjaWZpYyBfX2F0dHJpYnV0ZV9fIHNwZWNpZmljYXRpb25zLiBXZSBhdm9pZCBleHBvc2luZyB0aGUKKyAgICBjb25maWd1cmUgdmFyaWFibGUgSEFWRV9DX0FUVFJJQlVURSwgd2hpY2ggd2FzIG5ldmVyIGRlZmluZWQgZm9yIHRoZQorICAgIGluc3RhbGxlZCBoZWFkZXJzLiBSZW1vdmUgdGhlIG5vdyB1bnVzZWQgRFBLR19DX0FUVFJJQlVURSBhdXRvY29uZgorICAgIG1hY3JvLgorCisgY29uZmlndXJlLmFjICAgICAgICB8ICAgIDEgLQorIGRlYmlhbi9jaGFuZ2Vsb2cgICAgfCAgICAyICsrCisgbGliL2Rwa2cvbWFjcm9zLmggICB8ICAgIDggKysrKysrLS0KKyBtNC9kcGtnLWNvbXBpbGVyLm00IHwgICAxNyAtLS0tLS0tLS0tLS0tLS0tLQorIDQgZmlsZXMgY2hhbmdlZCwgOCBpbnNlcnRpb25zKCspLCAyMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDZmZGM3NTMzODI5NWE5MWNlZWJmZGRlYmIxZTY3MmZlOGY5MjkwMTIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgTWFyIDEzIDA3OjI2OjQ1IDIwMTAgKzAxMDAKKworICAgIGxpYmRwa2c6IEFsd2F5cyB1c2UgQzk5IHZhcmlhZGljIG1hY3JvcworICAgIAorICAgIEFzIHRoZSBidWlsZCByZXF1aXJlcyB0aGVtIGFueXdheSwgd2UgYXZvaWQgZXhwb3NpbmcgdGhlIGNvbmZpZ3VyZQorICAgIHZhcmlhYmxlIEhBVkVfQzk5LCB3aGljaCB3YXMgbmV2ZXIgZGVmaW5lZCBmb3IgdGhlIGluc3RhbGxlZCBoZWFkZXJzLgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgfCAgICAyICsrCisgbGliL2Rwa2cvYnVmZmVyLmggICAgfCAgIDM3IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBsaWIvZHBrZy9kcGtnLmggICAgICB8ICAgIDQgLS0tLQorIHV0aWxzL2luc3RhbGwtaW5mby5jIHwgICAgNSAtLS0tLQorIDQgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCA0NiBkZWxldGlvbnMoLSkKKworY29tbWl0IDdjZGUyNTVjMTI5Nzg0NzAwYmEzZjA4MTYzMjg3MDAyY2M1ODE1OGMKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgTWFyIDEzIDA1OjI4OjMwIDIwMTAgKzAxMDAKKworICAgIFJldmVydCAibGliZHBrZzogVXNlIHZhcmJ1Zl9kZXRhY2ggaW5zdGVhZCBvZiBhZC1ob2MgY29kZSIKKyAgICAKKyAgICBUaGlzIHJldmVydHMgY29tbWl0IDc3Y2FlMzk3YTE1YmFlY2ExMWMyNmFlYjgwNmI2YmU1MTZlMzNkNWYuCisgICAgCisgICAgVGhpcyBjaGFuZ2UgaW50cm9kY3VlZCB0d28gcG9pbnRzIGZvciBtZW1vcnkgbGVha3MsIHdoaWNoIGNvdWxkIGJlCisgICAgc2lnbmlmaWNhbnQsIGRlcGVuZGluZyBvbiB0aGUgYW1vdW50IG9mIGNhbGxzIHRvIHRoZSBmdW5jdGlvbnMuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgIHwgICAgMiArLQorIGxpYi9kcGtnL2RibW9kaWZ5LmMgfCAgICAyICstCisgbGliL2Rwa2cvZmllbGRzLmMgICB8ICAgIDIgKy0KKyAzIGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworY29tbWl0IGE2YWI3NWE3ODAyZWYxNTk2OTg4Yjc0NDM4MWIyNDJlODI1MzVmMGUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgTWFyIDEzIDA1OjI3OjIwIDIwMTAgKzAxMDAKKworICAgIEJ1bXAgdmVyc2lvbiB0byAxLjE1LjYuMQorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDYgKysrKysrCisgMSBmaWxlcyBjaGFuZ2VkLCA2IGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBjYmE3NjAxODc5YzIwZTIzZDIzMjBkZmRjN2JkNzFiMGE4NTdkM2U4CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIE1hciAxMiAwMDoxNTo1NCAyMDEwICswMTAwCisKKyAgICBSZWxlYXNlIDEuMTUuNgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDQgKystLQorIDEgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgOTY2NDU4Njc2NjI3YzRkZWY4ZTU0NTJhOWFlNTE3MmNlODMwODg3MQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBNYXIgMTIgMDA6MTQ6MDYgMjAxMCArMDEwMAorCisgICAgUmVnZW5lcmF0ZSAucG90IGZpbGVzIGFuZCBtZXJnZSAucG8gZmlsZXMgd2l0aCB0aGVtCisKKyBkc2VsZWN0L3BvL2VzLnBvICAgICAgICB8ICAgMTAgLQorIG1hbi9wby9kcGtnLW1hbi5wb3QgICAgIHwgICAgMiArLQorIG1hbi9wby9zdi5wbyAgICAgICAgICAgIHwgIDY5OCArKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2FzdC5wbyAgICAgICAgICAgICAgIHwgIDUwNiArKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tCisgcG8vYnMucG8gICAgICAgICAgICAgICAgfCAgNTA1ICsrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9jYS5wbyAgICAgICAgICAgICAgICB8ICA1MDIgKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLQorIHBvL2NzLnBvICAgICAgICAgICAgICAgIHwgIDUwNiArKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tCisgcG8vZGEucG8gICAgICAgICAgICAgICAgfCAgNTA2ICsrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9kZS5wbyAgICAgICAgICAgICAgICB8ICA1MDMgKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLQorIHBvL2Rwa2cucG90ICAgICAgICAgICAgIHwgIDQ2NyArKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tCisgcG8vZHoucG8gICAgICAgICAgICAgICAgfCAgNTA0ICsrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9lbC5wbyAgICAgICAgICAgICAgICB8ICA1MDggKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLQorIHBvL2VvLnBvICAgICAgICAgICAgICAgIHwgIDUwNiArKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tCisgcG8vZXMucG8gICAgICAgICAgICAgICAgfCAgNTA2ICsrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9ldC5wbyAgICAgICAgICAgICAgICB8ICA1MTEgKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9ldS5wbyAgICAgICAgICAgICAgICB8ICA1MDYgKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLQorIHBvL2ZyLnBvICAgICAgICAgICAgICAgIHwgIDUwMyArKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tCisgcG8vZ2wucG8gICAgICAgICAgICAgICAgfCAgNTA4ICsrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9odS5wbyAgICAgICAgICAgICAgICB8ICA1MDYgKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLQorIHBvL2lkLnBvICAgICAgICAgICAgICAgIHwgIDUxMCArKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tCisgcG8vaXQucG8gICAgICAgICAgICAgICAgfCAgNDk3ICsrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9qYS5wbyAgICAgICAgICAgICAgICB8ICA1MDggKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLQorIHBvL2ttLnBvICAgICAgICAgICAgICAgIHwgIDUwNCArKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tCisgcG8va28ucG8gICAgICAgICAgICAgICAgfCAgNTA0ICsrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9rdS5wbyAgICAgICAgICAgICAgICB8ICA0NzcgKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0KKyBwby9sdC5wbyAgICAgICAgICAgICAgICB8ICA0NzkgKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0KKyBwby9tci5wbyAgICAgICAgICAgICAgICB8ICA1MDggKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLQorIHBvL25iLnBvICAgICAgICAgICAgICAgIHwgIDUwNiArKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tCisgcG8vbmUucG8gICAgICAgICAgICAgICAgfCAgNTA4ICsrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9ubC5wbyAgICAgICAgICAgICAgICB8ICA1MDQgKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLQorIHBvL25uLnBvICAgICAgICAgICAgICAgIHwgIDUwOCArKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tCisgcG8vcGEucG8gICAgICAgICAgICAgICAgfCAgNDY3ICsrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0KKyBwby9wbC5wbyAgICAgICAgICAgICAgICB8ICA1MTAgKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLQorIHBvL3B0LnBvICAgICAgICAgICAgICAgIHwgIDUwNCArKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tCisgcG8vcHRfQlIucG8gICAgICAgICAgICAgfCAgNTEwICsrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tCisgcG8vcm8ucG8gICAgICAgICAgICAgICAgfCAgNTA0ICsrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9ydS5wbyAgICAgICAgICAgICAgICB8ICA1MDYgKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLQorIHBvL3NrLnBvICAgICAgICAgICAgICAgIHwgIDUwMyArKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tCisgcG8vc3YucG8gICAgICAgICAgICAgICAgfCAgNDk5ICsrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0KKyBwby90aC5wbyAgICAgICAgICAgICAgICB8ICA1MDQgKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLQorIHBvL3RsLnBvICAgICAgICAgICAgICAgIHwgIDUxMCArKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tCisgcG8vdmkucG8gICAgICAgICAgICAgICAgfCAgNTA4ICsrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0KKyBwby96aF9DTi5wbyAgICAgICAgICAgICB8ICA0OTkgKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLQorIHBvL3poX1RXLnBvICAgICAgICAgICAgIHwgIDUwNCArKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tCisgc2NyaXB0cy9wby9jYS5wbyAgICAgICAgfCAgIDkxICsrKystLS0KKyBzY3JpcHRzL3BvL2RlLnBvICAgICAgICB8ICAgODIgKysrLS0tCisgc2NyaXB0cy9wby9kcGtnLWRldi5wb3QgfCAgIDkzICsrKystLS0KKyBzY3JpcHRzL3BvL2ZyLnBvICAgICAgICB8ICAgOTMgKysrKy0tLQorIHNjcmlwdHMvcG8vcGwucG8gICAgICAgIHwgICA5MyArKysrLS0tCisgc2NyaXB0cy9wby9ydS5wbyAgICAgICAgfCAgIDkzICsrKystLS0KKyBzY3JpcHRzL3BvL3N2LnBvICAgICAgICB8ICAgOTMgKysrKy0tLQorIDUxIGZpbGVzIGNoYW5nZWQsIDEwOTgyIGluc2VydGlvbnMoKyksIDEwOTYwIGRlbGV0aW9ucygtKQorCitjb21taXQgMTdiZDVkODdkNWVhNGUzNTI3OTRjNGY4NTQ4MDljZjk4MjJlODg1YgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBNYXIgMTIgMDI6NDI6NDQgMjAxMCArMDEwMAorCisgICAgSW1wcm92ZSBsaWJkcGtnLWRldiBwYWNrYWdlIHNob3J0IGRlc2NyaXB0aW9uCisgICAgCisgICAgTWFrZSBpdCBtYXRjaCB3aXRoIHRoZSByZXNldCBvZiB0aGUgc2hvcnQgZGVzY3JpcHRpb25zLgorCisgZGViaWFuL2NvbnRyb2wgfCAgICA0ICsrLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDdkZDQyYjk0Y2ZiNDBmMDQ2YThkYTI5MTQyZWY1YTJhNDM2Y2EzOTEKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgTWFyIDEyIDAwOjMxOjU1IDIwMTAgKzAxMDAKKworICAgIGJ1aWxkOiBSZXBsYWNlIGFsbCAvIHdpdGggOjogb24gcGVybCBtb2R1bGUgbWFuIHBhZ2VzIGZpbGVuYW1lcworICAgIAorICAgIFRoZSBjdXJyZW50IHNlZCBleHByZXNzaW9uIHdhcyBvbmx5IHJlcGxhY2luZyB0aGUgZmlyc3Qgb25lLCB3aGljaAorICAgIGRpZG4ndCB0YWtlIGludG8gYWNjb3VudCBuZXN0ZWQgbW9kdWxlcy4KKworIHNjcmlwdHMvTWFrZWZpbGUuYW0gfCAgICAyICstCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyNTY3YzkyNjY2NmM5OTI0Yzg3Zjk5ZDBlNGIzMzg5NDUzYzRlZjI1CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIE1hciAxMiAwMDozMToxOCAyMDEwICswMTAwCisKKyAgICBidWlsZDogQWRkIG1pc3NpbmcgbGliZHBrZy1wZXJsIGRlYmlhbiBwYWNrYWdpbmcgZmlsZXMgdG8gRVhUUkFfRElTVAorCisgTWFrZWZpbGUuYW0gfCAgICAzICsrKworIDEgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgYzdkYzJiZjY2MzkzYTU0NmUxMTg5ZTc0YTY1MjkyYWYzMzY4MzVjYgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBNYXIgMTEgMjM6NDM6MTcgMjAxMCArMDEwMAorCisgICAgYnVpbGQ6IEFsbG93IGRpc2FibGluZyBVbmljb2RlIHN1cHBvcnQKKyAgICAKKyAgICBUaGlzIGFmZmVjdHMgb25seSBkc2VsZWN0IG5jdXJzZXMgc3VwcG9ydCBmb3Igbm93LgorICAgIAorICAgIEJhc2VkLW9uLXBhdGNoLWJ5OiBZdXJpIFZhc2lsZXZza2kgPHl2YXNpbGV2QGdlbnRvby5vcmc+CisKKyBkZWJpYW4vY2hhbmdlbG9nICAgfCAgICAyICsrCisgbTQvZHBrZy1saWJzLm00ICAgIHwgICAzMSArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tCisgbTQvZHBrZy11bmljb2RlLm00IHwgICAyMSArKysrKysrKysrKysrKysrKysrKysKKyAzIGZpbGVzIGNoYW5nZWQsIDQ2IGluc2VydGlvbnMoKyksIDggZGVsZXRpb25zKC0pCisKK2NvbW1pdCA0ZjRmMmNiZDg2YzViOGVlOWVlNDU0MWNjYjM4NzIxNWJlY2U4ZGYzCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IE1hciAxMSAyMjowOToyOSAyMDEwICswMTAwCisKKyAgICBtYW46IEhvbm91ciBMSU5HVUFTIGVudmlyb25tZW50IHZhcmlhYmxlIHdoZW4gaW5zdGFsbGluZyB0cmFuc2xhdGlvbnMKKyAgICAKKyAgICBVc2VycyBzaG91bGQgYmUgYWJsZSB0byBjaG9vc2Ugd2hpY2ggbG9jYWxlcyB0byBpbnN0YWxsIGJ5IHNldHRpbmcgdGhlCisgICAgZW52aXJvbm1lbnQgdmFyaWFibGUgTElOR1VBUywgb3IgcGFzc2luZyBpdCBhcyBhIG1ha2UgYXJndW1lbnQuIEhvbm91cgorICAgIHRoZSB1c2VyIHNldHRpbmcgYW5kIGludHJvZHVjZSBhIG5ldyBMSU5HVUFTX0RJU1QgdG8gYXZvaWQgdW5kZXNpcmVkCisgICAgYmVoYXZpb3VyIG9uIOKAnG1ha2UgZGlzdOKAnS4KKyAgICAKKyAgICBSZXBvcnRlZC1ieTogWXVyaSBWYXNpbGV2c2tpIDx5dmFzaWxldkBnZW50b28ub3JnPgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDEgKworIG1hbi9NYWtlZmlsZS5hbSAgfCAgICA3ICsrKysrLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDYgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDIwZmRiMzk1Y2M3MjFhNTA2MGM1NjIzZWRhOTU2ZDczZWE4NDBhMjEKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgTWFyIDExIDIxOjM1OjI1IDIwMTAgKzAxMDAKKworICAgIERvIGFuIGZzeW5jIG9uIGRhdGFiYXNlIGRpcmVjdG9yaWVzCisgICAgCisgICAgQWZ0ZXIgY3JlYXRpbmcsIHJlbmFtaW5nIG9yIHVubGlua2luZyBkYXRhYmFzZSBmaWxlcyBzeW5jIGl0cworICAgIGNvbnRhaW5pbmcgZGlyZWN0b3J5LCB0byBndWFyYW50ZWUgdGhlIG5ldyBmaWxlIGVudHJ5IGlzIGNvcnJlY3RseQorICAgIGxpc3RlZCBpbiB0aGUgZGlyZWN0b3J5LgorICAgIAorICAgIENsb3NlczogIzU2NzA4OQorICAgIAorICAgIEJhc2Utb24tcGF0Y2gtYnk6IEplYW4tQmFwdGlzdGUgTGFsbGVtZW50IDxqZWFuYmFwdGlzdGUubGFsbGVtZW50QGdtYWlsLmNvbT4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgIHwgICAgNCArKworIGRwa2ctc3BsaXQvcXVldWUuYyAgICAgIHwgICAgMiArCisgbGliL2Rwa2cvTWFrZWZpbGUuYW0gICAgfCAgICAyICsKKyBsaWIvZHBrZy9kYm1vZGlmeS5jICAgICB8ICAgIDggKysrCisgbGliL2Rwa2cvZGlyLmMgICAgICAgICAgfCAgMTI0ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCisgbGliL2Rwa2cvZGlyLmggICAgICAgICAgfCAgIDM3ICsrKysrKysrKysrKysrCisgbGliL2Rwa2cvZHVtcC5jICAgICAgICAgfCAgICA1ICsrCisgbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmwgfCAgICAzICsKKyBsaWIvZHBrZy90cmlnbGliLmMgICAgICB8ICAgIDUgKysKKyBzcmMvZmlsZXNkYi5jICAgICAgICAgICB8ICAgIDMgKworIHNyYy9wcm9jZXNzYXJjLmMgICAgICAgIHwgICAxNyArKysrKysKKyBzcmMvcmVtb3ZlLmMgICAgICAgICAgICB8ICAgIDUgKysKKyBzcmMvc3RhdGNtZC5jICAgICAgICAgICB8ICAgIDMgKworIDEzIGZpbGVzIGNoYW5nZWQsIDIxOCBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgYWI5NDgyZWI0NWUyN2EwYjBjMDU4YTI2NjJiMjhiN2QzNjQyMTczZAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBNYXIgMTEgMjE6MTM6MjUgMjAxMCArMDEwMAorCisgICAgbGliZHBrZzogQWRkIGEgbmV3IHVwZGF0ZXNkaXIgdmFyaWFibGUgaW4gZGJtb2RpZnkKKyAgICAKKyAgICBVc2UgaXQgdG8gaW5pdGlhbGl6ZSB1cGRhdGVmbmJ1ZiwgaW5zdGVhZCBvZiBjb25zdHJ1Y3RpbmcgaXQgZnJvbQorICAgIGFkbWluZGlyIGFuZCBVUERBVEVTRElSLgorCisgbGliL2Rwa2cvZGJtb2RpZnkuYyB8ICAgIDcgKysrKy0tLQorIDEgZmlsZXMgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQorCitjb21taXQgYTlmOGYyMzViOTBhNTg2ZDk5YTk1OTdmYTVlN2YyODgwZWM5MWE5OAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBNYXIgMTEgMjE6MDg6NDAgMjAxMCArMDEwMAorCisgICAgbGliZHBrZzogUmVtb3ZlIHVubmVlZGVkIHN0YXRpYyBhZG1pbmRpciBpbiBkYm1vZGlmeQorICAgIAorICAgIE5vdyB0aGF0IHBrZ2FkbWluZmlsZSBkb2VzIG5vdCB1c2UgdGhlIGZpbGUgZ2xvYmFsIGFkbWluZGlyLCB3ZSBjYW4ganVzdAorICAgIHN3aXRjaCB0aGUgbW9kc3RhdGRiX2luaXQoKSBhcmd1bWVudCBuYW1lIGZyb20gYWRpciB0byBhZG1pbmRpciwgdXNlCisgICAgdGhhdCBpbnN0ZWFkIGluIHRoZSB3aG9sZSBmdW5jdGlvbiwgYW5kIHJlbW92ZSB0aGUgZmlsZSBnbG9iYWwgYWRtaW5kaXIuCisKKyBsaWIvZHBrZy9kYm1vZGlmeS5jIHwgICAxOSArKysrKysrKystLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA5IGluc2VydGlvbnMoKyksIDEwIGRlbGV0aW9ucygtKQorCitjb21taXQgMTVkYWEyMmZhOTRkMTljYzA1OWQyNzU1ZTUxNjRkYjFhM2E2Mjc5MQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBNYXIgMTEgMjE6MDM6NTUgMjAxMCArMDEwMAorCisgICAgbGliZHBrZzogQ3JlYXRlIG5ldyBwa2dhZG1pbmRpcigpIHRvIGhpZGUgYWRtaW5kaXIgYW5kIElORk9ESVIKKyAgICAKKyAgICBUaGUgY2FsbGVycyBzaG91bGQgbm90IGJlIGNvbmNlcm5lZCBhYm91dCB3aGVyZSB0aGUgcGFja2FnZSBpbmZvCisgICAgZGlyZWN0b3J5IGlzIGxvY2F0ZWQsIHRoZSBuZXcgZnVuY3Rpb25zIGVuY2Fwc3VsYXRlcyB0aGUga25vd2RsZWdkZQorICAgIGluIHRoZSBkYm1vZGlmeSBtb2R1bGUuCisKKyBsaWIvZHBrZy9kYm1vZGlmeS5jIHwgICAxMSArKysrKysrKystLQorIGxpYi9kcGtnL2Rwa2ctZGIuaCAgfCAgICAxICsKKyBzcmMvZmlsZXNkYi5jICAgICAgIHwgICAgMyArLS0KKyBzcmMvcHJvY2Vzc2FyYy5jICAgIHwgICAgNiArKy0tLS0KKyBzcmMvcXVlcnkuYyAgICAgICAgIHwgICAgMyArLS0KKyBzcmMvcmVtb3ZlLmMgICAgICAgIHwgICAgNiArKy0tLS0KKyA2IGZpbGVzIGNoYW5nZWQsIDE2IGluc2VydGlvbnMoKyksIDE0IGRlbGV0aW9ucygtKQorCitjb21taXQgNGY3ODk4NDM4ZDI4Y2YzYjFkNjM5M2E3ZTliOTEzNWRjYzFiMWMwZAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBNYXIgMTEgMTk6NDE6MzUgMjAxMCArMDEwMAorCisgICAgbGliZHBrZzogU2ltcGxpZnkgdHJpZ2dlcnNkaXIgZmlsZSBwYXRoIGdlbmVyYXRpb24KKyAgICAKKyAgICBOb3cgdGhhdCB3ZSBoYXZlIGdlbmVyYXRlZCB0aGUgdHJpZ2dlcnNkaXIgdmlhIHRyaWdfZ2V0X3RyaWdnZXJzZGlyLAorICAgIHdlIGNhbiByZXVzZSBpdCB0byBnZW5lcmF0ZSB0aGUgZmlsZXMgaW5zaWRlIHRoZSB0cmlnZ2Vyc2RpciwgaW5zdGVhZAorICAgIG9mIHJlZG9pbmcgdGhlIHNhbWUgd29yayBhZ2Fpbi4KKworIGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sIHwgICAxMSArKysrKy0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCA2IGRlbGV0aW9ucygtKQorCitjb21taXQgYTM1ZjBlMzdhNDZiMmUzNzIxMTQ5YTI1YzM2ZjMzNTJjMWNkZjg4MQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBNYXIgMTEgMTk6Mzg6MTIgMjAxMCArMDEwMAorCisgICAgbGliZHBrZzogRW5jYXBzdWxhdGUgdHJpZ2dlcnNkaXIgaGFuZGxpbmcgaW4gdHJpZ2xpYgorICAgIAorICAgIFRoZSBvbmx5IHVzZXJzIG9mIHRyaWdnZXJzZGlyIGFuZCByZWxhdGVkIGZpbGVzIGFyZSB0aGUgdHJpZ2xpYiBhbmQKKyAgICB0cmlnZGVmZXJyZWQgbW9kdWxlcywgYW5kIGRibW9kaWZ5IGRvZXMgbm90IGhhdmUgYW55IGJ1c2luZXNzIGluIGtub3dpbmcKKyAgICB3aGVyZSB0aGUgdHJpZ2dlcnNkaXIgaXMgbG9jYXRlZCAoYmVzaWRlcyBmb3IgY29udmVuaW5lbmNlIHdoZW4gY3JlYXRpbmcKKyAgICB0aGUgcGF0aG5hbWUpLiBDcmVhdGUgaW5zdGVhZCBhIG5ldyBmdW5jdGlvbiB0cmlnX2dldF90cmlnZ2Vyc2RpcigpIHRvCisgICAgZ2VuZXJhdGUgdGhlIHRyaWdnZXJzZGlyIGZyb20gYW4gYWRtaW5kaXIsIGFuZCB1c2UgdGhhdCBvbiBlYWNoIG1vZHVsZS4KKworIGxpYi9kcGtnL2RibW9kaWZ5LmMgICAgIHwgICAgNCAtLS0tCisgbGliL2Rwa2cvZHBrZy1kYi5oICAgICAgfCAgICAzICsrLQorIGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sIHwgICAgMyArKysKKyBsaWIvZHBrZy90cmlnbGliLmMgICAgICB8ICAgMzIgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKKyA0IGZpbGVzIGNoYW5nZWQsIDM3IGluc2VydGlvbnMoKyksIDUgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA5ZmQ0MzU4NTQ1YzM0MGYzY2JkZjQyMjQ2ZjczMzA1Mzk3MjY0YTIyCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IE1hciAxMSAwNzo0OTo1OCAyMDEwICswMTAwCisKKyAgICBsaWJkcGtnOiBBZGQg4oCcc3VicHJvY2Vzc+KAnSB0byBzdHJpbmdzIHRvIGNsYXJpZnkKKyAgICAKKyAgICBUaGlzIG1ha2VzIGl0IG1vcmUgY2xlYXIgd2hhdCB0aGUgZm9ybWF0IGFyZ3VtZW50IHJlZmVycyB0bywgYW5kIGFzIGEKKyAgICBzaWRlIGVmZmVjdCBjb2FsZXNjZXMgdHdvIGFsbW9zdCBpZGVudGljYWwgc3RyaW5ncyB0b2dldGhlci4KKworIGxpYi9kcGtnL3N1YnByb2MuYyB8ICAgIDYgKysrLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyZGM4N2EyYjM0ZDhkZDAzMTJhOWJmYTk1ZDViNjM3NWE0YWIzOWQxCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIE1hciAxMCAyMjoxNTowMyAyMDEwICswMTAwCisKKyAgICBsaWJkcGtnLXBlcmw6IERlbW90ZSBzb21lIHVuc3RhYmxlIG1vZHVsZXMgdG8gVkVSU0lPTiAwLjAxCisgICAgCisgICAgVGhlc2UgbW9kdWxlcyBtaWdodCBzdGlsbCBuZWVkIHNvbWUgY2xlYW51cCB3b3JrLCBzbyBtYWtlIGl0IGV4cGxpY2l0CisgICAgdGhhdCB0aGUgQVBJIHdpbGwgY2hhbmdlIGJ5IGRlbW90aW5nIHRoZSBWRVJTSU9OLgorCisgc2NyaXB0cy9EcGtnL0FyY2gucG0gICAgICAgICAgfCAgICAyICstCisgc2NyaXB0cy9EcGtnL0Vycm9ySGFuZGxpbmcucG0gfCAgICAyICstCisgMiBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyN2Y2YjliZDRlMmZhYTQxYmU2NjgzODk2Mjg1Y2FkZTEyNWQ2ZmIyCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IE1hciAxMSAwODo0MDoxMCAyMDEwICswMTAwCisKKyAgICBVcGRhdGUgQ2F0YWxhbiB0cmFuc2xhdGlvbnMKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAzICsKKyBkc2VsZWN0L3BvL2NhLnBvIHwgICAzNiArLS0KKyBwby9jYS5wbyAgICAgICAgIHwgIDY5NiArKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBzY3JpcHRzL3BvL2NhLnBvIHwgICAyMSArLQorIDQgZmlsZXMgY2hhbmdlZCwgMzYyIGluc2VydGlvbnMoKyksIDM5NCBkZWxldGlvbnMoLSkKKworY29tbWl0IGViNDE1NTM3N2U0ZTQxYTRkNDIwNzEyZGZjOTFjNTc1NzhkNTE3MGYKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgTWFyIDExIDA4OjIyOjMyIDIwMTAgKzAxMDAKKworICAgIFVzZSBMaWNlbnNlIGluc3RlYWQgb2YgTGljZW5jZSBpbiBzdHJpbmdzCisgICAgCisgICAgVGhpcyByZW1vdmVzIGFsbW9zdCBkdXBsaWNhdGUgc3RyaW5ncyBmb3IgdHJhbnNsYXRpb24uCisKKyBkZWJpYW4vY29weXJpZ2h0ICAgICAgICAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9jcy5wbyAgICAgICAgICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vZWwucG8gICAgICAgICAgICAgICB8ICAgIDIgKy0KKyBkc2VsZWN0L3BvL2h1LnBvICAgICAgICAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9pZC5wbyAgICAgICAgICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vaXQucG8gICAgICAgICAgICAgICB8ICAgIDIgKy0KKyBkc2VsZWN0L3BvL25iLnBvICAgICAgICAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9ubC5wbyAgICAgICAgICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vbm4ucG8gICAgICAgICAgICAgICB8ICAgIDIgKy0KKyBkc2VsZWN0L3BvL3B0LnBvICAgICAgICAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby9yby5wbyAgICAgICAgICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvcG8vc2sucG8gICAgICAgICAgICAgICB8ICAgIDIgKy0KKyBkc2VsZWN0L3BvL3RsLnBvICAgICAgICAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wby96aF9UVy5wbyAgICAgICAgICAgIHwgICAgMiArLQorIHNjcmlwdHMvY2hhbmdlbG9nL2RlYmlhbi5wbCAgICB8ICAgIDIgKy0KKyBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLnBsICAgfCAgICAyICstCisgc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbCAgIHwgICAgMiArLQorIHNjcmlwdHMvZHBrZy1kaXN0YWRkZmlsZS5wbCAgICB8ICAgIDIgKy0KKyBzY3JpcHRzL2Rwa2ctZGl2ZXJ0LnBsICAgICAgICAgfCAgICA0ICsrLS0KKyBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbCAgICAgfCAgICAyICstCisgc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGwgICAgIHwgICAgMiArLQorIHNjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsICAgICB8ICAgIDIgKy0KKyBzY3JpcHRzL2Rwa2ctcGFyc2VjaGFuZ2Vsb2cucGwgfCAgICAyICstCisgc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbCAgICAgIHwgICAgMiArLQorIHNjcmlwdHMvZHBrZy1zb3VyY2UucGwgICAgICAgICB8ICAgIDIgKy0KKyBzY3JpcHRzL2Rwa2ctdmVuZG9yLnBsICAgICAgICAgfCAgICAyICstCisgc2NyaXB0cy9wby9jYS5wbyAgICAgICAgICAgICAgIHwgICAgMiArLQorIHNjcmlwdHMvcG8vZGUucG8gICAgICAgICAgICAgICB8ICAgIDQgKystLQorIHNjcmlwdHMvcG8vZHBrZy1kZXYucG90ICAgICAgICB8ICAgIDIgKy0KKyBzY3JpcHRzL3BvL2ZyLnBvICAgICAgICAgICAgICAgfCAgICA0ICsrLS0KKyBzY3JpcHRzL3BvL3BsLnBvICAgICAgICAgICAgICAgfCAgICAyICstCisgc2NyaXB0cy9wby9ydS5wbyAgICAgICAgICAgICAgIHwgICAgMiArLQorIHNjcmlwdHMvcG8vc3YucG8gICAgICAgICAgICAgICB8ICAgIDIgKy0KKyBzY3JpcHRzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMucGwgfCAgICA0ICsrLS0KKyBzcmMvc3RhdGNtZC5jICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgMzUgZmlsZXMgY2hhbmdlZCwgMzkgaW5zZXJ0aW9ucygrKSwgMzkgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA3NDRmMGJkMjM5NmJiMzQ1ZTRjOTc1MTM0ZGFjNTBjMWJkOGM5NjljCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IE1hciAxMSAwODoyNTozMCAyMDEwICswMTAwCisKKyAgICB1LWE6IE1hcmsgc3RyaW5ncyBmb3IgdHJhbnNsYXRpb24KKworIHNjcmlwdHMvdXBkYXRlLWFsdGVybmF0aXZlcy5wbCB8ICAgIDQgKystLQorIDEgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgNWI3Y2UwNDdiOTM3NjYxM2ZjNmZlNmE1Mzg5MGI5YTRlMGM5YjczMgorQXV0aG9yOiBDaHJpc3RpYW4gUEVSUklFUiA8YnVidWxsZUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgTWFyIDExIDIzOjAwOjQ5IDIwMTAgKzAxMDAKKworICAgIFNwYW5pc2ggZHNlbGVjdCB0cmFuc2xhdGlvbgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDEgKworIGRzZWxlY3QvcG8vZXMucG8gfCAgMTM4ICsrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgNzAgaW5zZXJ0aW9ucygrKSwgNjkgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAzZmUyNGUwNDc1MjcyZWVhNmI3MjQwMDU3MWQ2ZGY1NDM1ZDA2YTViCitBdXRob3I6IEhlbGdlIEtyZXV0em1hbm4gPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorRGF0ZTogICBXZWQgTWFyIDEwIDIzOjExOjQyIDIwMTAgKzAxMDAKKworICAgIFVwZGF0ZSBHZXJtYW4gc2NyaXB0cyB0cmFuc2xhdGlvbgorICAgIAorICAgIFVwZGF0ZSB0byA0OTh0LgorCisgc2NyaXB0cy9wby9kZS5wbyB8ICAgMjMgKysrKysrKysrKysrKysrKystLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDE3IGluc2VydGlvbnMoKyksIDYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBjZDcxNWRmNjVjZThmMzU0NjcxOTdlZWNmOGM2M2M5ZDE1YTI3MmQ2CitBdXRob3I6IEhlbGdlIEtyZXV0em1hbm4gPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorRGF0ZTogICBXZWQgTWFyIDEwIDIzOjA2OjQ2IDIwMTAgKzAxMDAKKworICAgIEZpeCBhIGJ1aWxkIGVycm9yCisKKyBtYW4vcG8vc3YucG8gfCAgICA0ICsrLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDFlODRhMWJkMmM3YjE3NWNkMTU5MzQzNDVhZjYxODQxYTc0MzVlZGEKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgTWFyIDUgMjI6MDc6MzAgMjAxMCArMDEwMAorCisgICAgRHBrZzo6U291cmNlOjpQYWNrYWdlOjpWMzo6cXVpbHQ6IHNhbml0eSBjaGVjayBvZiBzZXJpZXMgZmlsZQorICAgIAorICAgIEEgc2VyaWVzIGZpbGUgc2hvdWxkIG9ubHkgY29udGFpbiBwYXRoIHBvaW50aW5nIGluc2lkZSBkZWJpYW4vcGF0Y2hlcy8KKyAgICBhbmQgdGh1cyAiLi4vIiBhcmUgZm9yYmlkZGVuLiBHaXZlbiB0aGF0IHRoZSBwYXRoIHRvIHBhdGNoZXMgYXBwZWFyCisgICAgaW4gdGhlIHBhdGNoIGNvbW1hbmQtbGluZSB3aXRoIC1CIC5wYy8kcGF0aCwgYSBjYXJlZnVsbHkgY3JhZnRlZAorICAgIHBhdGggY291bGQgbGVhZCBwYXRjaCB0byBvdmVyd3JpdGUgYW4gYXJiaXRyYXJ5IGZpbGUgb3V0c2lkZSBvZiB0aGUKKyAgICBkZXN0aW5hdGlvbiBkaXJlY3Rvcnkgd2l0aCBhIGZpbGUgcHJvdmlkZWQgaW4gdGhlIHNvdXJjZSBwYWNrYWdlLgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMyArKysKKyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG0gfCAgICAxICsKKyAyIGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDJjYjNkNWQzOGZiZTkzNzI4MGE4ODc1Yjc5YTcyNDdhYzM3YTM4M2QKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgTWFyIDUgMTg6MTk6MzMgMjAxMCArMDEwMAorCisgICAgRHBrZzo6U291cmNlOjpQYXRjaDogYWRkIG1vcmUgc2FuaXR5IGNoZWNrcyBvbiBwYXRjaGVzCisgICAgCisgICAgcGF0Y2ggd2lsbCBoYXBwaWx5IGFjY2VwdCBmaWxlbmFtZXMgbGlrZSAiLi4vLi4vLi4vLi4vc3R1ZmYiIGFuZCBtb2RpZnkKKyAgICBmaWxlcyBvdXRzaWRlIG9mIHRoZSBleHBlY3RlZCBkZXN0aW5hdGlvbiBkaXJlY3RvcnkuIFRvIGF2b2lkIHByb2JsZW1zCisgICAgd2UgZXJyb3Igb3V0IHdoZW4gd2UgZGV0ZWN0IGEgZmlsZW5hbWUgdGhhdCBjb250YWlucyAiLy4uLyIuIEFueSBsZWFkaW5nCisgICAgIi4uLyIgaXMgbm90IGEgcHJvYmxlbSBzaW5jZSBwYXRjaGVzIGFyZSBhcHBsaWVkIHdpdGggLXAxIGFuZCBpdCdzCisgICAgc3RyaXBwZWQuCisgICAgCisgICAgV2UgYWxzbyB2ZXJpZnkgdGhhdCB0aGUgZmlsZSB0byBiZSBtb2RpZmllZCBpcyBub3QgYWNjZXNzZWQgdGhyb3VnaCBhCisgICAgc3ltbGluayBhcyBhIGNvbXByb21pc2VkIHNvdXJjZSBwYWNrYWdlIGNvdWxkIGFsc28gcHJvdmlkZSBhIHN5bWxpbmsgaW4KKyAgICB0aGUgb3JpZy50YXIuZ3ogdGhhdCBwb2ludHMgb3V0c2lkZSBvZiB0aGUgZGVzdGluYXRpb24gZGlyZWN0b3J5LgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICB8ICAgIDYgKysrKysrCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbSB8ICAgMTcgKysrKysrKysrKysrKysrLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDIxIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBmMmY0ZDRmNjcxZTliYmM5MTFkZmU4MWQyZjIyYzMxOTUwODExMDg1CitBdXRob3I6IFBldGVyIEtyZWZ0aW5nIDxwZXRlcmtAZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIE1hciA5IDIyOjQ2OjE4IDIwMTAgKzAxMDAKKworICAgIFJlbW92ZSBzdHJpbmcgZGVidWdnaW5nIGFpZC4KKworIHNjcmlwdHMvcG8vc3YucG8gfCAgICAxIC0KKyAxIGZpbGVzIGNoYW5nZWQsIDAgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGI2MDZlZGQwMGViZDc4ZmIwMmZiMGNmMzBiMWI0MzQ2YjJiYjJkODQKK0F1dGhvcjogUGV0ZXIgS3JlZnRpbmcgPHBldGVya0BkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgTWFyIDkgMTU6Mjk6NDYgMjAxMCArMDEwMAorCisgICAgVXBkYXRlIFN3ZWRpc2ggdHJhbnNsYXRpb24uCisgICAgCisgICAgbWFuL3BvL3N2LnBvOiAxNzk5dDBmMHUuCisKKyBtYW4vcG8vc3YucG8gfCAgNjMzICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDQ1MiBpbnNlcnRpb25zKCspLCAxODEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAxNDk4NzJjZWM0YmRkN2JiNjEzMjVmMGI3MTY0MDA3NDNjYzlmNzg0CitBdXRob3I6IEhlbGdlIEtyZXV0em1hbm4gPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorRGF0ZTogICBNb24gTWFyIDggMjE6Mzk6MDAgMjAxMCArMDEwMAorCisgICAgVXBkYXRlIEdlcm1hbiB0cmFuc2xhdGlvbiBvZiBtYW51YWwgcGFnZXMKKyAgICAKKyAgICBVcGRhdGUgdG8gMTc5OXQuCisKKyBtYW4vcG8vZGUucG8gfCAgIDQ2ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDM3IGluc2VydGlvbnMoKyksIDkgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBjNDI0NDU0YjY0ZGMxY2ZkNjdmNjkwNDU3MjBkNWQ1ZTRmMTNmOTcxCitBdXRob3I6IFBldGVyIEtyZWZ0aW5nIDxwZXRlcmtAZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIE1hciA4IDEzOjQwOjUyIDIwMTAgKzAxMDAKKworICAgIFVwZGF0ZSBTd2VkaXNoIHRyYW5zbGF0aW9uLgorICAgIAorICAgIGRzZWxlY3QvcG8vc3YucG86IDI3N3QwZjB1LgorICAgIHBvL3N2LnBvOiA5NzN0MGYwdS4KKyAgICBzY3JpcHRzL3BvL3N2LnBvOiA0OTZ0MGYwdS4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAxICsKKyBkc2VsZWN0L3BvL3N2LnBvIHwgICAxMyArKysrKy0tLS0tLS0tCisgcG8vc3YucG8gICAgICAgICB8ICAgMzAgKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tCisgc2NyaXB0cy9wby9zdi5wbyB8ICAgIDYgKysrLS0tCisgNCBmaWxlcyBjaGFuZ2VkLCAyNCBpbnNlcnRpb25zKCspLCAyNiBkZWxldGlvbnMoLSkKKworY29tbWl0IDI0NWM4ODVlMTI4Yjc4ZmNmMDY4ZDMzMDhmMTA3ODY4MzQ3OTUzYTIKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gTWFyIDggMTI6MTk6MjcgMjAxMCArMDEwMAorCisgICAgUmVnZW5lcmF0ZSAucG90IGZpbGVzIGFuZCBtZXJnZSAucG8gZmlsZXMgd2l0aCB0aGVtCisKKyBkc2VsZWN0L3BvL2JzLnBvICAgICAgICB8ICAxNjEgKystLQorIGRzZWxlY3QvcG8vY2EucG8gICAgICAgIHwgIDE3MSArKy0tCisgZHNlbGVjdC9wby9jcy5wbyAgICAgICAgfCAgMTcxICsrLS0KKyBkc2VsZWN0L3BvL2RhLnBvICAgICAgICB8ICAxNzEgKystLQorIGRzZWxlY3QvcG8vZGUucG8gICAgICAgIHwgICAxNiArLQorIGRzZWxlY3QvcG8vZHNlbGVjdC5wb3QgIHwgIDE2MCArKy0tCisgZHNlbGVjdC9wby9lbC5wbyAgICAgICAgfCAgMTY5ICsrLS0KKyBkc2VsZWN0L3BvL2VzLnBvICAgICAgICB8ICAxNzEgKystLQorIGRzZWxlY3QvcG8vZXQucG8gICAgICAgIHwgIDE3MSArKy0tCisgZHNlbGVjdC9wby9ldS5wbyAgICAgICAgfCAgMTcxICsrLS0KKyBkc2VsZWN0L3BvL2ZyLnBvICAgICAgICB8ICAxNzEgKystLQorIGRzZWxlY3QvcG8vZ2wucG8gICAgICAgIHwgIDE3MSArKy0tCisgZHNlbGVjdC9wby9odS5wbyAgICAgICAgfCAgMTY2ICsrLS0KKyBkc2VsZWN0L3BvL2lkLnBvICAgICAgICB8ICAxNzEgKystLQorIGRzZWxlY3QvcG8vaXQucG8gICAgICAgIHwgIDE3MSArKy0tCisgZHNlbGVjdC9wby9qYS5wbyAgICAgICAgfCAgMTcxICsrLS0KKyBkc2VsZWN0L3BvL2tvLnBvICAgICAgICB8ICAxNzEgKystLQorIGRzZWxlY3QvcG8vbmIucG8gICAgICAgIHwgIDE3MSArKy0tCisgZHNlbGVjdC9wby9ubC5wbyAgICAgICAgfCAgMTcxICsrLS0KKyBkc2VsZWN0L3BvL25uLnBvICAgICAgICB8ICAxNjkgKystLQorIGRzZWxlY3QvcG8vcGwucG8gICAgICAgIHwgIDE3MSArKy0tCisgZHNlbGVjdC9wby9wdC5wbyAgICAgICAgfCAgMTcxICsrLS0KKyBkc2VsZWN0L3BvL3B0X0JSLnBvICAgICB8ICAxNzEgKystLQorIGRzZWxlY3QvcG8vcm8ucG8gICAgICAgIHwgIDE3MyArKy0tCisgZHNlbGVjdC9wby9ydS5wbyAgICAgICAgfCAgMTcxICsrLS0KKyBkc2VsZWN0L3BvL3NrLnBvICAgICAgICB8ICAxNzEgKystLQorIGRzZWxlY3QvcG8vc3YucG8gICAgICAgIHwgIDE3MSArKy0tCisgZHNlbGVjdC9wby90bC5wbyAgICAgICAgfCAgMTY5ICsrLS0KKyBkc2VsZWN0L3BvL3ZpLnBvICAgICAgICB8ICAxNzEgKystLQorIGRzZWxlY3QvcG8vemhfQ04ucG8gICAgIHwgIDE3MSArKy0tCisgZHNlbGVjdC9wby96aF9UVy5wbyAgICAgfCAgMTY5ICsrLS0KKyBtYW4vcG8vZHBrZy1tYW4ucG90ICAgICB8IDE0NDcgKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tCisgbWFuL3BvL2VzLnBvICAgICAgICAgICAgfCAxNjUwICsrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0KKyBtYW4vcG8vZnIucG8gICAgICAgICAgICB8IDE3MTUgKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0KKyBtYW4vcG8vaHUucG8gICAgICAgICAgICB8IDE1OTMgKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tCisgbWFuL3BvL2phLnBvICAgICAgICAgICAgfCAxNjQ5ICsrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0KKyBtYW4vcG8vcGwucG8gICAgICAgICAgICB8IDE3MTUgKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0KKyBtYW4vcG8vcHRfQlIucG8gICAgICAgICB8IDE2MzMgKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLQorIG1hbi9wby9ydS5wbyAgICAgICAgICAgIHwgMTYyNyArKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0KKyBtYW4vcG8vc3YucG8gICAgICAgICAgICB8IDE4NDAgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vYXN0LnBvICAgICAgICAgICAgICAgfCAyMDM0ICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2JzLnBvICAgICAgICAgICAgICAgIHwgMTg1NyArKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2NhLnBvICAgICAgICAgICAgICAgIHwgMjAyOCArKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9jcy5wbyAgICAgICAgICAgICAgICB8IDIwMjMgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vZGEucG8gICAgICAgICAgICAgICAgfCAyMDI3ICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2RlLnBvICAgICAgICAgICAgICAgIHwgIDQ4MSArKysrKystLS0tLQorIHBvL2Rwa2cucG90ICAgICAgICAgICAgIHwgMTgzNiArKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2R6LnBvICAgICAgICAgICAgICAgIHwgMjAyNiArKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9lbC5wbyAgICAgICAgICAgICAgICB8IDIwMzkgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2VvLnBvICAgICAgICAgICAgICAgIHwgMjAyMCArKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9lcy5wbyAgICAgICAgICAgICAgICB8IDIwMzYgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vZXQucG8gICAgICAgICAgICAgICAgfCAyMDA2ICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vZXUucG8gICAgICAgICAgICAgICAgfCAyMDE5ICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2ZyLnBvICAgICAgICAgICAgICAgIHwgMjEwNiArKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2dsLnBvICAgICAgICAgICAgICAgIHwgMjA0MSArKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vaHUucG8gICAgICAgICAgICAgICAgfCAyMDI1ICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2lkLnBvICAgICAgICAgICAgICAgIHwgMjAxNyArKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9pdC5wbyAgICAgICAgICAgICAgICB8IDIwMjkgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vamEucG8gICAgICAgICAgICAgICAgfCAyMDI1ICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2ttLnBvICAgICAgICAgICAgICAgIHwgMjAyMSArKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9rby5wbyAgICAgICAgICAgICAgICB8IDIwMjUgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8va3UucG8gICAgICAgICAgICAgICAgfCAxOTE3ICsrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9sdC5wbyAgICAgICAgICAgICAgICB8IDE5OTcgKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9tci5wbyAgICAgICAgICAgICAgICB8IDIwMjAgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vbmIucG8gICAgICAgICAgICAgICAgfCAyMDI4ICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL25lLnBvICAgICAgICAgICAgICAgIHwgMjAyNyArKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9ubC5wbyAgICAgICAgICAgICAgICB8IDIwMjUgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vbm4ucG8gICAgICAgICAgICAgICAgfCAyMDIyICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL3BhLnBvICAgICAgICAgICAgICAgIHwgMTkzMiArKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vcGwucG8gICAgICAgICAgICAgICAgfCAyMDMyICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL3B0LnBvICAgICAgICAgICAgICAgIHwgMjA0MiArKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vcHRfQlIucG8gICAgICAgICAgICAgfCAyMDQzICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9yby5wbyAgICAgICAgICAgICAgICB8IDIwNDAgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL3J1LnBvICAgICAgICAgICAgICAgIHwgMjAyOSArKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9zay5wbyAgICAgICAgICAgICAgICB8IDIwMzUgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vc3YucG8gICAgICAgICAgICAgICAgfCAgNDk0ICsrKysrKy0tLS0tCisgcG8vdGgucG8gICAgICAgICAgICAgICAgfCAyMDIyICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL3RsLnBvICAgICAgICAgICAgICAgIHwgMjAyMyArKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby92aS5wbyAgICAgICAgICAgICAgICB8IDIwNDEgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL3poX0NOLnBvICAgICAgICAgICAgIHwgMjAyMiArKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby96aF9UVy5wbyAgICAgICAgICAgICB8IDIwMjIgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgc2NyaXB0cy9wby9jYS5wbyAgICAgICAgfCAxMjc4ICsrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tCisgc2NyaXB0cy9wby9kZS5wbyAgICAgICAgfCAgICAyICstCisgc2NyaXB0cy9wby9kcGtnLWRldi5wb3QgfCAxMjYyICsrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tCisgc2NyaXB0cy9wby9mci5wbyAgICAgICAgfCAxMzk5ICsrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0KKyBzY3JpcHRzL3BvL3BsLnBvICAgICAgICB8IDEzNDMgKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tCisgc2NyaXB0cy9wby9ydS5wbyAgICAgICAgfCAxMzQzICsrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLQorIHNjcmlwdHMvcG8vc3YucG8gICAgICAgIHwgICA5NiArKy0KKyA4OCBmaWxlcyBjaGFuZ2VkLCA1NjQ1OSBpbnNlcnRpb25zKCspLCA0OTc4MSBkZWxldGlvbnMoLSkKKworY29tbWl0IGMxMGZmMWI5NTE1MTM5NDM2Mzc2NzY3NGZhZjdjOGU0MDBjYzQ3Y2EKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gTWFyIDggMDg6MTE6NTkgMjAxMCArMDEwMAorCisgICAgRHBrZzo6RGVwczo6ZGVwc19jb21wYXJlKCk6IGZpeCBhIHdhcm5pbmcKKyAgICAKKyAgICBDb21taXQgMTEzNTMzIGJyb2tlIGl0IGJ5IHVzaW5nIGNvbnN0YW50cyBhcyBrZXlzOiB0aGUgbmFtZSBvZiB0aGUKKyAgICBjb25zdGFudHMgd2VyZSB1c2VkIGFzIHN0cmluZyBsaXRlcmFscyBkdWUgdG8gIj0+IiB3aGVuIHdlIHdhbnRlZCB0aGVpcgorICAgIHZhbHVlcyB0byBiZSB1c2VkLiBOb3cgd2UgdXNlIHRoZSBmdW5jdGlvbiBub3RhdGlvbiBvZiBjb25zdGFudHMgKHNpbmNlCisgICAgdGhhdCdzIGhvdyB0aGV5IGFyZSBpbXBsZW1lbnRlZCkgdG8gYXZvaWQgdGhpcy4KKyAgICAKKyAgICBSZXBvcnRlZC1CeTogSm9uYXRoYW4gTmllZGVyIDxqcm5pZWRlckBnbWFpbC5jb20+CisKKyBzY3JpcHRzL0Rwa2cvRGVwcy5wbSB8ICAgMTAgKysrKystLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCA1IGRlbGV0aW9ucygtKQorCitjb21taXQgMmNjMDY3M2JiMDkxNzZkNzUwMTZjZDZhN2RiN2RjNmU5N2Y0ZTZhZAorQXV0aG9yOiBIZWxnZSBLcmV1dHptYW5uIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KK0RhdGU6ICAgU3VuIE1hciA3IDIyOjQwOjQwIDIwMTAgKzAxMDAKKworICAgIFVwZGF0ZSBHZXJtYW4gdHJhbnNsYXRpb24gb2YgbWFudWFsIHBhZ2VzCisgICAgCisgICAgVXBkYXRlIHRvIDE3ODl0MGYxMHUuCisKKyBtYW4vcG8vZGUucG8gfCAyMTU0ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDEzNjcgaW5zZXJ0aW9ucygrKSwgNzg3IGRlbGV0aW9ucygtKQorCitjb21taXQgNTMyOTAzMDYzNGZjM2NiNjZmMDViOGQ0NmYzMzA0N2U3NDA3YTZmYgorQXV0aG9yOiBIZWxnZSBLcmV1dHptYW5uIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KK0RhdGU6ICAgU3VuIE1hciA3IDIyOjMxOjA4IDIwMTAgKzAxMDAKKworICAgIENvcnJlY3QgYSBtaW5vciBncmFtbWFyIGlzc3VlCisKKyBtYW4vZHBrZy1nZW5zeW1ib2xzLjEgfCAgICAyICstCisgbWFuL3BvL2RlLnBvICAgICAgICAgIHwgICAgNCArKy0tCisgbWFuL3BvL2Rwa2ctbWFuLnBvdCAgIHwgICAgMiArLQorIG1hbi9wby9lcy5wbyAgICAgICAgICB8ICAgIDQgKystLQorIG1hbi9wby9mci5wbyAgICAgICAgICB8ICAgIDQgKystLQorIG1hbi9wby9odS5wbyAgICAgICAgICB8ICAgIDQgKystLQorIG1hbi9wby9qYS5wbyAgICAgICAgICB8ICAgIDQgKystLQorIG1hbi9wby9wbC5wbyAgICAgICAgICB8ICAgIDQgKystLQorIG1hbi9wby9wdF9CUi5wbyAgICAgICB8ICAgIDQgKystLQorIG1hbi9wby9ydS5wbyAgICAgICAgICB8ICAgIDQgKystLQorIG1hbi9wby9zdi5wbyAgICAgICAgICB8ICAgIDQgKystLQorIDExIGZpbGVzIGNoYW5nZWQsIDIwIGluc2VydGlvbnMoKyksIDIwIGRlbGV0aW9ucygtKQorCitjb21taXQgNTBhZjJlN2E3YTNhZDZmNDQ1ZGYwZjE2MzM3YTU0NjUwOWQ1MTU3YworQXV0aG9yOiBIZWxnZSBLcmV1dHptYW5uIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KK0RhdGU6ICAgU3VuIE1hciA3IDIyOjA0OjQ3IDIwMTAgKzAxMDAKKworICAgIFVwZGF0ZSBHZXJtYW4gc2NyaXB0cyB0cmFuc2xhdGlvbgorICAgIAorICAgIFVwZGF0ZSB0byA0OTZ0LgorCisgc2NyaXB0cy9wby9kZS5wbyB8IDEzNjkgKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA3MDMgaW5zZXJ0aW9ucygrKSwgNjY2IGRlbGV0aW9ucygtKQorCitjb21taXQgMWIxYzllM2RlY2JlNjdhZDdkMmM0OWJkZTM2YzY4NmQ2MGRiZjI1NgorQXV0aG9yOiBQZXRlciBLcmVmdGluZyA8cGV0ZXJrQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBNYXIgNyAxNDowMzo1NSAyMDEwICswMTAwCisKKyAgICBVcGRhdGUgU3dlZGlzaCB0cmFuc2xhdGlvbi4KKyAgICAKKyAgICBwby9zdi5wbzogOTY2dDBmMHUuCisgICAgbWFuL3BvL3N2LnBvOiAxNjcxdDQyZjY2dS4KKyAgICBzY3JpcHRzL3BvL3N2LnBvOiA0OTZ0MGYwdS4KKworIG1hbi9wby9zdi5wbyAgICAgfCAgMTAxICsrKy0KKyBwby9zdi5wbyAgICAgICAgIHwgMTg3MyArKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBzY3JpcHRzL3BvL3N2LnBvIHwgMTM1NSArKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0KKyAzIGZpbGVzIGNoYW5nZWQsIDE3ODUgaW5zZXJ0aW9ucygrKSwgMTU0NCBkZWxldGlvbnMoLSkKKworY29tbWl0IDY5MGYwOTliZjJkMDViZjJmMDJhNTk1MmNmYzRkZDRiNmZlNjZkMGEKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gTWFyIDcgMDc6MDA6MTIgMjAxMCArMDEwMAorCisgICAgbWFuOiBEb2N1bWVudCDigJxkcGtnLXF1ZXJ5IC1s4oCdIGFiYnJldmlhdGVkIHN0YXRlIGluZm9ybWF0aW9uCisgICAgCisgICAgQ2xvc2VzOiAjMzgzODY5CisgICAgCisgICAgQmFzZWQtb24tcGF0Y2gtYnk6IE1hcmMtSmFubyBLbm9wcCA8cHViX2JyX2RlYmlhbi5vcmdAbWFyYy1qYW5vLmRlPgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDMgKysrCisgbWFuL2Rwa2ctcXVlcnkuMSB8ICAgMzQgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKworIDIgZmlsZXMgY2hhbmdlZCwgMzcgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDhlOWFkMWYxMTQzZGI5ZGJiZGE3NGQ0NWE0NTEwZDkxYWIwMzkxNjQKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gTWFyIDcgMDY6MzE6MjggMjAxMCArMDEwMAorCisgICAgbWFuOiBEb2N1bWVudCB0aGUgZXhpdCBjb2RlcyBmb3IgZHBrZy1xdWVyeQorICAgIAorICAgIENsb3NlczogIzU3MTc5OAorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDEgKworIG1hbi9kcGtnLXF1ZXJ5LjEgfCAgICA5ICsrKysrKysrLQorIDIgZmlsZXMgY2hhbmdlZCwgOSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgMTkyOWVlZjlkNzk3M2RlZTU3NDMxNDM0OWE2NDg4NTQ3NjJiMTYxNQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBNYXIgNyAwNjowOTowOCAyMDEwICswMTAwCisKKyAgICBtYW46IFJlbW92ZSAiVkFSSUFCTEVTIiBmcm9tICJFTlZJUk9OTUVOVCIgc2VjdGlvbiBuYW1lCisgICAgCisgICAgVW5pZnkgd2l0aCB0aGUgcmVzdCBvZiB0aGUgbWFuIHBhZ2VzIGFuZCB1c2UgdGhlIG1vc3QgY29tbW9ubHkgdXNlZAorICAgIHNlY3Rpb24gbmFtZS4KKworIG1hbi9kcGtnLWJ1aWxkcGFja2FnZS4xIHwgICAgNiArKystLS0KKyBtYW4vZHBrZy4xICAgICAgICAgICAgICB8ICAgIDIgKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKKworY29tbWl0IDYzYjUxYWY1NDZlZTU1YzliMGExMTExYzhmNzJhMmM5N2JkZTQ1ZmIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gTWFyIDcgMDY6MDY6MjAgMjAxMCArMDEwMAorCisgICAgbWFuOiBEb2N1bWVudCBlbnZpcm9ubWVudCB2YXJpYWJsZXMgYWZmZWN0aW5nIGRwa2ctZGViLCBkcGtnIGFuZCBkc2VsZWN0CisgICAgCisgICAgVGhlIG1pc3NpbmcgdW5kb2N1bWVudGVkIHZhcmlhYmxlcyBhcmUgVE1QRElSIGZvciBkcGtnIGFuZCBkcGtnLWRlYiwKKyAgICBIT01FIGZvciBkc2VsZWN0IGFuZCBkcGtnIGFuZCBQQUdFUiBmb3IgZHBrZy4KKyAgICAKKyAgICBDbG9zZXM6ICM1NzI4MzYKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAyICsrCisgbWFuL2Rwa2ctZGViLjEgICB8ICAgIDggKysrKysrKy0KKyBtYW4vZHBrZy4xICAgICAgIHwgICAxMyArKysrKysrKysrKystCisgbWFuL2RzZWxlY3QuMSAgICB8ICAgIDggKysrKysrKy0KKyA0IGZpbGVzIGNoYW5nZWQsIDI4IGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA2MjY2OGViNDIyODUzODU0OTc2NTYwOTQ5Zjk1YTVhZmNjNmE4Njc3CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IEZlYiAyNyAxOTo1NToyNSAyMDEwICswMTAwCisKKyAgICBEbyBhbiBmc3luYyBvbiBmaWxlcyB3cml0dGVuIHRvIGRpc2sKKyAgICAKKyAgICBUaGlzIGd1YXJhbnRlZXMgdGhlIGZpbGUgY29udGVudHMgd2lsbCBiZSB0aGVyZSBpbiBjYXNlIG9mIGFicnVwdAorICAgIHByb2dyYW0gdGVybWluYXRpb24gKGR1ZSB0byBjcmFzaGVzIGZvciBleGFtcGxlLCBvciB1c2VyIGludGVydmVudGlvbikuCisgICAgVGhpcyBhbHNvIGd1YXJhbnRlZXMgdGhlIGF0b21pY2l0eSBvZiByZW5hbWUoMikgY2FsbHMuCisgICAgCisgICAgQ2xvc2VzOiAjNDMwOTU4CisgICAgCisgICAgQmFzZWQtb24tcGF0Y2gtYnk6IEplYW4tQmFwdGlzdGUgTGFsbGVtZW50IDxqZWFuYmFwdGlzdGUubGFsbGVtZW50QGdtYWlsLmNvbT4KKworTm90ZXM6CisgICAgVGhlIGNyYXNoZXMgYW5kIHVzZXIgaW50ZXJ2ZW50aW9uIGNvbW1lbnQgaGVyZSwgcmVmZXIgdG8gYWJydXB0CisgICAgdGVybWluYXRpb24gb2YgdGhlIHN5c3RlbSwgYW5kIG5vdCBqdXN0IHRoZSBwcm9ncmFtLCBkdWUgdG8gYW4gb3ZlcmFsbAorICAgIG1hbGZ1bmN0aW9uIG9mIHRoZSBrZXJuZWwsIHRoZSBoYXJkd2FyZSBvciB0aGUgdXNlciBwdWxsaW5nIHRoZSBwbHVnLAorICAgIGZvciBleGFtcGxlLgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICB8ICAgIDQgKysrKworIGRwa2ctZGViL2J1aWxkLmMgICAgICAgICAgfCAgICA0ICsrKysKKyBkcGtnLXNwbGl0L2pvaW4uYyAgICAgICAgIHwgICAgNSArKysrKworIGRwa2ctc3BsaXQvcXVldWUuYyAgICAgICAgfCAgICA0ICsrKysKKyBsaWIvZHBrZy90cmlnbGliLmMgICAgICAgIHwgICAxMiArKysrKysrKysrKysKKyBzcmMvYXJjaGl2ZXMuYyAgICAgICAgICAgIHwgICAgMiArKworIHNyYy9zdGF0Y21kLmMgICAgICAgICAgICAgfCAgICA0ICsrKysKKyB1dGlscy9zdGFydC1zdG9wLWRhZW1vbi5jIHwgICAgNCArKysrCisgOCBmaWxlcyBjaGFuZ2VkLCAzOSBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgOWQ4MWJmOTJlZjc5MWFkNDY0NGYzNmQzYjVmNzM2MWU4ODMxMzRkNgorQXV0aG9yOiBTdGVmYW4gRnJpdHNjaCA8c2ZAc2ZyaXRzY2guZGU+CitEYXRlOiAgIFNhdCBGZWIgMjcgMDY6MzE6NDcgMjAxMCArMDEwMAorCisgICAgZHBrZzogVXNlIHBvc2l4X2ZhZHZpc2Ugb24gbm9uLUxpbnV4IHRvIHNwZWVkIHVwIC5saXN0IGZpbGVzIGxvYWRpbmcKKyAgICAKKyAgICBXaGVuIEZJRU1BUCBpcyBub3QgYXZhaWxhYmxlIHRyeSB0byB1c2UgcG9zaXhfZmFkdmlzZSgpIHRvIHJlcXVlc3QKKyAgICB0aGUgcHJlbG9hZGluZyBvZiB0aGUgLmxpc3QgZmlsZXMuIEEgc2VhcmNoIHdpdGggZHBrZy1xdWVyeSB3ZW50CisgICAgZnJvbSAyOCB0byAxNyBzZWNvbmRzLCBnaXZpbmcgYXJvdW5kIDQwJSBpbXByb3ZlbWVudC4KKyAgICAKKyAgICBDbG9zZXM6ICM1NTc1NjAKKyAgICAKKyAgICBTaWduZWQtb2ZmLWJ5OiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKyBjb25maWd1cmUuYWMgICAgIHwgICAgMyArKy0KKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMyArKysKKyBzcmMvZmlsZXNkYi5jICAgIHwgICAyMiArKysrKysrKysrKysrKysrKysrKysrCisgMyBmaWxlcyBjaGFuZ2VkLCAyNyBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgOGUzMWIwZjBmYjZiMTRlNjA1NDA3YjgyNGY0ZTJmMWIwYzEyYmFiNgorQXV0aG9yOiBNb3J0ZW4gSHVzdHZlaXQgPG1vcnRlbkBkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgTm92IDMgMTY6MTE6NDYgMjAwOSArMDEwMAorCisgICAgZHBrZzogVXNlIEZJRU1BUCB0byBzb3J0IC5saXN0IGZpbGVzIGJlZm9yZSBzY2FubmluZworICAgIAorICAgIFdoZW4gcnVubmluZyBkcGtnIGZyb20gYSBjb2xkIGNhY2hlIG9uIGEgc3lzdGVtIHdoZXJlIDxhZG1pbmRpcj4vaW5mby8KKyAgICBsaWVzIG9uIGEgaGFyZCBkaXNrLCBhIGxvdCBvZiB0aW1lIGlzIHNwZW50IHdhaXRpbmcgZm9yIHNlZWtzIGJldHdlZW4KKyAgICAodHlwaWNhbGx5KSB0aG91c2FuZHMgb2YgZmlsZXMuIFRoaXMgcGF0Y2ggY2hhbmdlcyB0aGUgYmVoYXZpb3Igb2YKKyAgICBlbnN1cmVfYWxsaW5zdGZpbGVzX2F2YWlsYWJsZSgpLCBzbyB0aGF0IGl0IGFjY2Vzc2VzIHRoZSBwYWNrYWdlcyBpbgorICAgIHRoZSBvcmRlciBvZiB0aGVpciAubGlzdCBmaWxlcycgcGh5c2ljYWwgbG9jYXRpb25zIG9uIHRoZSBoYXJkIGRpc2ssCisgICAgZ3JlYXRseSByZWR1Y2luZyBkcml2ZSBoZWFkIG1vdmVtZW50cy4KKyAgICAKKyAgICBUaGUgcGVyZm9ybWFuY2UgaW1wcm92ZW1lbnQgaXMgYXJvdW5kIDcwJSBvbiBteSBzeXN0ZW06IHJlaW5zdGFsbGluZworICAgIGEgc2ltcGxlIHBhY2thZ2UgdGFrZXMgOCBzZWNvbmRzIGluc3RlYWQgb2YgMjcgc2Vjb25kcy4gVGhlIGNhY2hlcyB3ZXJlCisgICAgZHJvcHBlZCBiZWZvcmUgZWFjaCBydW4sIGFuZCAxMCBydW5zIHdlcmUgZG9uZSB3aXRoIGNvbnNpc3RlbnQgcmVzdWx0cy4KKyAgICBUaGUgcGVyZm9ybWFuY2UgaXMgaWRlbnRpY2FsIHRvIHRoZSBwcmV2aW91cyBwYXRjaCB1c2luZyBGSUJNQVAsCisgICAgYWx0aG91Z2h0IHRoaXMgb25lIGhhcyB0aGUgYWR2YW50YWdlIG9mIG5vdCBuZWVkaW5nIHJvb3QgcHJpdmlsZWdlcy4KKyAgICAKKyAgICBTaWduZWQtb2ZmLWJ5OiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKyBjb25maWd1cmUuYWMgICAgIHwgICAgMiArLQorIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAzICsrCisgc3JjL2ZpbGVzZGIuYyAgICB8ICAgOTIgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0KKyBzcmMvbWFpbi5oICAgICAgIHwgICAgMiArCisgNCBmaWxlcyBjaGFuZ2VkLCA5NCBpbnNlcnRpb25zKCspLCA1IGRlbGV0aW9ucygtKQorCitjb21taXQgYjNmZmFiYzAxMjI0ZDAzMTdmNzc0NDA1NzIyZjY3OWVlOGJmMzk3OAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBNYXIgMSAxODo1NDozOSAyMDEwICswMTAwCisKKyAgICBkcGtnOiBTd2l0Y2ggU0UgTGludXggc3VwcG9ydCB0byBleHBsaWNpdGx5IHNldCBwYXRoIGNvbnRleHRzCisgICAgCisgICAgVGhlIGN1cnJlbnQgY29kZSBzZXRzIHRoZSBkZWZhdWx0IGNvbnRleHQgYW5kIGRvZXMgbm90IGNsZWFuIGl0IG9uCisgICAgY29uZmZpbGUgZXh0cmFjdGlvbiBvciBpbiBjYXNlIG9mIHVucGFjayBlcnJvciwgd2hpY2ggY2F1c2VzIHRoZSB3cm9uZworICAgIGNvbnRleHQgdG8gYmUgYXBwbGllZCB0byBmaWxlcyB1bmRlciA8YWRtaW5kaXI+LgorICAgIAorICAgIFN3aXRjaCB0aGUgY29kZSB0byBleHBsaWNpdGx5IHNldCB0aGUgcGF0aCBjb250ZXh0IGZvciBuZXdseSBleHRyYWN0ZWQKKyAgICBhbmQgY3JlYXRlZCBmaWxlcyBzbyB0aGF0IHdlIGRvbid0IG5lZWQgdG8gY2FyZSBhYm91dCB1bnBhY2sgZXJyb3IKKyAgICByZWNvdmVyeSBvciBjb25mZmlsZSBleHRyYWN0aW9uIHRvIHJlc3RvcmUgdGhlIGRlZmF1bHQgY29udGV4dC4KKyAgICAKKyAgICBSZWZhY3RvciB0aGUgY29kZSBpbnRvIGEgbmV3IGZ1bmN0aW9uIGFuZCByZW1vdmUgYW4gdW5uZWVkZWQgc2V0dGluZyBvZgorICAgIHRoZSBjb250ZXh0IGp1c3QgYmVmb3JlIHRoZSByZW5hbWUgZnJvbSA8bm9kZT4uZHBrZy1uZXcgdG8gPG5vZGU+LgorICAgIAorICAgIENsb3NlczogIzQ5ODQzOAorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDMgKysKKyBzcmMvYXJjaGl2ZXMuYyAgIHwgIDEwMSArKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDQ0IGluc2VydGlvbnMoKyksIDYwIGRlbGV0aW9ucygtKQorCitjb21taXQgOTExNGU5ZDI5OGE4NGRkN2YxYjFhMjdiNGEzNzdkZGQ0ZTdjMmY4YgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBGZWIgMjUgMjM6Mzg6NTEgMjAxMCArMDEwMAorCisgICAgVXNlIHdoaWxlICgpIGluc3RlYWQgZm9yICgpIHdoZW4gdXNpbmcgcGFja2FnZSBpdGVyYXRvcnMKKyAgICAKKyAgICBUaGUgY29kZSBsb29rcyBtb3JlIGJhbGFuY2VkIHRoaXMgd2F5LgorCisgZHNlbGVjdC9wa2dsaXN0LmNjIHwgICAgNiArKystLS0KKyBzcmMvZGVwY29uLmMgICAgICAgfCAgICAzICsrLQorIHNyYy9lbnF1aXJ5LmMgICAgICB8ICAgIDYgKysrLS0tCisgMyBmaWxlcyBjaGFuZ2VkLCA4IGluc2VydGlvbnMoKyksIDcgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAxZDY0N2RkMjNjMTRjMGMzNDBkMzZlNDRjNjg3YjI1MzBjMDRhYzk3CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IEZlYiAyNSAyMzozNDoxMSAyMDEwICswMTAwCisKKyAgICBSZWxlYXNlIHRoZSBwYWNrYWdlIGl0ZXJhdG9ycyB3aGVuIGRvbmUKKyAgICAKKyAgICBUaGlzIGlzIGEgY2F1c2Ugb2YgbWVtb3J5IGxlYWtzLCBidXQgaW4gdGhlc2UgY2FzZXMgdGhlIHByb2dyYW0gaXMgYWJvdXQKKyAgICB0byBleGl0IGFueXdheSwgc28gd2UgZG8gaXQgZm9yIGNvcnJlY3RuZXNzLgorCisgZHNlbGVjdC9wa2dsaXN0LmNjIHwgICAgMiArKworIHNyYy9lbnF1aXJ5LmMgICAgICB8ICAgIDIgKysKKyAyIGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDk3MmQ4NDQ4N2FjZTg1YTdmNTQ3YzViOWQ3NGJlMWE0MjUzZDFlNzkKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgRmViIDI2IDAwOjAxOjI4IDIwMTAgKzAxMDAKKworICAgIGxpYmRwa2c6IE1vdmUgZ2VuZXJpYyBmaWxlIGxvY2tpbmcgZnJvbSBsb2NrLmMgdG8gZmlsZS5jCisKKyBsaWIvZHBrZy9NYWtlZmlsZS5hbSAgICB8ICAgIDEgLQorIGxpYi9kcGtnL2RibW9kaWZ5LmMgICAgIHwgICAgMSArCisgbGliL2Rwa2cvZHBrZy5oICAgICAgICAgfCAgICA2IC0tLQorIGxpYi9kcGtnL2ZpbGUuYyAgICAgICAgIHwgICA0OSArKysrKysrKysrKysrKysrKysrKysrKysrKysrLQorIGxpYi9kcGtnL2ZpbGUuaCAgICAgICAgIHwgICAgNCArKworIGxpYi9kcGtnL2xvY2suYyAgICAgICAgIHwgICA4MSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sIHwgICAgMSArCisgcG8vUE9URklMRVMuaW4gICAgICAgICAgfCAgICAxIC0KKyA4IGZpbGVzIGNoYW5nZWQsIDU0IGluc2VydGlvbnMoKyksIDkwIGRlbGV0aW9ucygtKQorCitjb21taXQgMmNlZGUzM2UwNzM2ZDQ4ZmQzYTZiYzg1ZjU5OTA0YTI4MjVkNzQ3NQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBGZWIgMjUgMjM6NTI6MjQgMjAxMCArMDEwMAorCisgICAgbGliZHBrZzogUmVuYW1lIGxvY2sgZnVuY3Rpb25zIHRvIGhhdmUgZmlsZV8gYXMgcHJlZml4CisgICAgCisgICAgUmVuYW1lIGxvY2tfZmlsZSB0byBmaWxlX2xvY2ssIGFuZCB1bmxvY2tfZmlsZSB0byBmaWxlX3VubG9jay4KKworIGxpYi9kcGtnL2RibW9kaWZ5LmMgICAgIHwgICAgNCArKy0tCisgbGliL2Rwa2cvZHBrZy5oICAgICAgICAgfCAgICA0ICsrLS0KKyBsaWIvZHBrZy9sb2NrLmMgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sIHwgICAgMiArLQorIDQgZmlsZXMgY2hhbmdlZCwgMTAgaW5zZXJ0aW9ucygrKSwgMTAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA4ZmY3MjE5NDU3YjNjNmU3NTAwNmQxOGQ0ZDFkMzllMmFhNjIyMDViCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IEZlYiAyNyAyMzoxMzo0NSAyMDEwICswMTAwCisKKyAgICBsaWJkcGtnOiBBZGQgbmV3IHRyaWdfb3ZlcnJpZGVfaG9va3MgdG8gYXZvaWQgZXhwb3NpbmcgdHJpZ2gKKyAgICAKKyAgICBNYWtlIHRyaWdoIHN0YXRpYyBhbmQgY3JlYXRlIGFuIG92ZXJyaWRlciBmdW5jdGlvbiBmb3IgaXQuCisKKyBsaWIvZHBrZy9kcGtnLWRiLmggfCAgICA0ICsrLS0KKyBsaWIvZHBrZy90cmlnbGliLmMgfCAgICA5ICsrKysrKysrLQorIHNyYy90cmlncHJvYy5jICAgICB8ICAgIDIgKy0KKyAzIGZpbGVzIGNoYW5nZWQsIDExIGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAwZjk2YWI0YzM0NjU3ODU5MTFjZWE5ZWM3M2M3YzNmYTlmNDQ2N2I2CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IEZlYiAyNyAyMTo0ODoyNCAyMDEwICswMTAwCisKKyAgICBsaWJkcGtnOiBBZGQgbmV3IHRyaWdkZWZfdXBkYXRlX3ByaW50ZiB0byBhdm9pZCBleHBvc2luZyB0cmlnX25ld19kZWZlcnJlZAorICAgIAorICAgIE1ha2UgdHJpZ19uZXdfZGVmZXJyZWQgc3RhdGljIGFuZCBjcmVhdGUgYSBwcmludGVyIGZ1bmN0aW9uIGZvciBpdC4KKworIGxpYi9kcGtnL2Rwa2ctZGIuaCAgICAgIHwgICAgMyArLS0KKyBsaWIvZHBrZy90cmlnZGVmZXJyZWQubCB8ICAgMTMgKysrKysrKysrKystLQorIHNyYy90cmlnY21kLmMgICAgICAgICAgIHwgICAgOSArKysrLS0tLS0KKyAzIGZpbGVzIGNoYW5nZWQsIDE2IGluc2VydGlvbnMoKyksIDkgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyMzliNDhkOGE5YTI0NDA2MWJjMDlkNDQ2YjllZjBjMzczMjM0MmQ2CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IEZlYiAyNyAyMTo0Mjo0MCAyMDEwICswMTAwCisKKyAgICBsaWJkcGtnOiBBZGQgbmV3IHRyaWdkZWZfc2V0X21ldGhvZHMgdG8gYXZvaWQgZXhwb3NpbmcgdHJpZ2RlZgorICAgIAorICAgIE1ha2UgdHJpZ2RlZiBzdGF0aWMgYW5kIGNyZWF0ZSBhIHNldHRlciBmdW5jdGlvbiBmb3IgaXQuCisKKyBsaWIvZHBrZy9kcGtnLWRiLmggICAgICB8ICAgIDIgKy0KKyBsaWIvZHBrZy90cmlnZGVmZXJyZWQubCB8ICAgIDkgKysrKysrKystCisgbGliL2Rwa2cvdHJpZ2xpYi5jICAgICAgfCAgICAyICstCisgc3JjL3RyaWdjbWQuYyAgICAgICAgICAgfCAgICAzICsrLQorIDQgZmlsZXMgY2hhbmdlZCwgMTIgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKKworY29tbWl0IDc2YzhjNTU5ZGY5Mjk1NjdjMmZmOTM1MjYxN2U0ZjExNmI3NjE2MjkKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgRmViIDI1IDE4OjUwOjIzIDIwMTAgKzAxMDAKKworICAgIGxpYmRwa2c6IFJlbmFtZSBkYXRhYmFzZSBsb2NrIGZ1bmN0aW9ucyB0byB1c2UgbW9kc3RhdGRiXyBwcmVmaXgKKyAgICAKKyAgICBSZW1vdmUgbm93IHJlZHVkYW50IGRhdGFiYXNlIHN1ZmZpeCBmcm9tIHRoZSBmdW5jdGlvbiBuYW1lcy4KKworIGxpYi9kcGtnL2RibW9kaWZ5LmMgfCAgICA4ICsrKystLS0tCisgbGliL2Rwa2cvZHBrZy1kYi5oICB8ICAgIDcgKystLS0tLQorIHNyYy91cGRhdGUuYyAgICAgICAgfCAgICA0ICsrLS0KKyAzIGZpbGVzIGNoYW5nZWQsIDggaW5zZXJ0aW9ucygrKSwgMTEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAxOWY3YTE1OWQ1MGI0ZjhkZGFkZGExZWRlMzRjOWZiOWZlZWQxNTI2CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IEZlYiAyNSAxODo0NjoxMyAyMDEwICswMTAwCisKKyAgICBsaWJkcGtnOiBNb3ZlIGRhdGFiYXNlIGxvY2sgZnVuY3Rpb25zIHRvIHRoZSBtb2RzdGF0ZGIgbW9kdWxlCisKKyBsaWIvZHBrZy9kYm1vZGlmeS5jIHwgICAzNSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKworIGxpYi9kcGtnL2xvY2suYyAgICAgfCAgIDMwIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgMzUgaW5zZXJ0aW9ucygrKSwgMzAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA2YWMzMjE3MjY3MGQxNWRiYTI5N2Y5NDFjMjk2NTc2ZDJhM2NhMGE2CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IEZlYiAyNSAxODozOToxNCAyMDEwICswMTAwCisKKyAgICBsaWJkcGtnOiBSZW1vdmUgdW51c2VkIHNob3djb3B5cmlnaHQgcHJvdG90eXBlCisgICAgCisgICAgVGhpcyB3YXMgZm9yZ290dGVuIGluIGNvbW1pdCAwNmI2NGJlN2JhNTA1YzUxZjg2NzNlN2JhMzIzNjI5ZTljNjA1NzRkLgorCisgbGliL2Rwa2cvbXlvcHQuaCB8ICAgIDMgLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAwIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAzYzMyYzNlMmM3MWMyMWY2ZDdiMDcxNDk4NmI1OGNiOTE4ODU2NzAxCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IEZlYiAyNSAxODowMjo0NiAyMDEwICswMTAwCisKKyAgICBsaWJkcGtnOiBNYXJrIChkZSljb21wcmVzc194eiBmdW5jdGlvbnMgYXMgbm90IHJldHVybmluZworCisgbGliL2Rwa2cvY29tcHJlc3MuYyB8ICAgIDQgKystLQorIDEgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgYTcyNzc1MmJmOWVmZWVhZjBmMDZmNzgzNzFjNmQ5ZjQwODVkYjRjMworQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBNYXIgNSAxMTowNDo1OSAyMDEwICswMTAwCisKKyAgICBkcGtnLXNvdXJjZTogZG8gbm90IGZhbGxiYWNrIHRvIG90aGVyIHNvdXJjZSBmb3JtYXRzCisgICAgCisgICAgV2hlbiB0aGUgcHJlcmVxdWVzaXRlcyBvZiB0aGUgY3VycmVudCBzb3VyY2UgZm9ybWF0IGFyZSBub3QgbWV0LAorICAgIHNpbXBseSBlcnJvciBvdXQgaW5zdGVhZCBvZiB0cnlpbmcgdG8gZmFsbGJhY2sgdG8gb3RoZXIgc291cmNlIGZvcm1hdHMuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgIHwgICAgMiArCisgbWFuL2Rwa2ctc291cmNlLjEgICAgICB8ICAgMTIgKysrKy0tLS0tLQorIHNjcmlwdHMvZHBrZy1zb3VyY2UucGwgfCAgIDQ5ICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMyBmaWxlcyBjaGFuZ2VkLCAzMSBpbnNlcnRpb25zKCspLCAzMiBkZWxldGlvbnMoLSkKKworY29tbWl0IGUwMGM5NzlhODM1ZTc4YjY4MmMxY2QxZDU1ZjE0YmJlYjU1NjZmZGYKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gTWFyIDEgMDg6MzQ6MTAgMjAxMCArMDEwMAorCisgICAgQWRkIG1pc3NpbmcgYnVnIGNsb3N1cmUKKyAgICAKKyAgICBUaGUgcmV3cml0ZSBvZiBEcGtnOjpDaGVja3N1bXMgZml4ZWQgYSBidWcgd2hpY2ggaGFzIGp1c3QgYmVlbiByZXBvcnRlZAorICAgIGFzICM1NzIwMzAuIEl0IHdhcyBub3QgYWJsZSB0byBkZWFsIHdpdGggZmlsZW5hbWVzIHdpdGggc3BhY2VzLgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDIgKysKKyAxIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDFhYzYzMzM1MWQ2OGMzOTMxMjhmYjE3NWFlN2IwM2ZkMGEzM2NiNWEKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgRmViIDI2IDExOjEyOjU5IDIwMTAgKzAxMDAKKworICAgIERyb3AgdW51c2VkIGxpbnRpYW4gb3ZlcnJpZGUgb24gZHNlbGVjdAorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICAgICAgfCAgICAyICsrCisgZGViaWFuL2RzZWxlY3QubGludGlhbi1vdmVycmlkZXMgfCAgICAxIC0KKyAyIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGJkNWMzNzYzODNhMDkyNDJmOTRlYzI5NTc0MDcyYTJhNGJjNGRjODkKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgRmViIDI2IDEzOjUzOjQxIDIwMTAgKzAxMDAKKworICAgIFVwZGF0ZSBTdGFuZGFyZHMtVmVyc2lvbiB0byAzLjguNCAobm8gY2hhbmdlcyBuZWVkZWQpLgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDEgKworIGRlYmlhbi9jb250cm9sICAgfCAgICAyICstCisgMiBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA3ZmQ1ZTk4MGY3ODBjNDNlNzU3NDMyYzdmMDQzOGUyM2MxZTRkNGNkCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEZlYiAyNiAxMzo1MDo0MiAyMDEwICswMTAwCisKKyAgICBJbnRyb2R1Y2UgdGhlIGxpYmRwa2ctcGVybCBwYWNrYWdlCisgICAgCisgICAgQ2xhcmlmeSB0aGUgc3RhdHVzIG9mIHRoZSBBUEkgaW4gUkVBRE1FLmFwaS4KKworIGRlYmlhbi8uZ2l0aWdub3JlICAgICAgICAgICAgICAgICAgICAgfCAgICAxICsKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICAgICAgICAgIHwgICAgMSArCisgZGViaWFuL2NvbnRyb2wgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMzkgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0KKyBkZWJpYW4vZHBrZy1kZXYuaW5zdGFsbCAgICAgICAgICAgICAgIHwgICAgNCAtLS0KKyBkZWJpYW4vbGliZHBrZy1wZXJsLmRvY3MgICAgICAgICAgICAgIHwgICAgNCArKysKKyBkZWJpYW4vbGliZHBrZy1wZXJsLmluc3RhbGwgICAgICAgICAgIHwgICAgNCArKysKKyBkZWJpYW4vbGliZHBrZy1wZXJsLmxpbnRpYW4tb3ZlcnJpZGVzIHwgICAgMiArCisgZG9jL1JFQURNRS5hcGkgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMTggKysrKysrKysrKystLS0tCisgOCBmaWxlcyBjaGFuZ2VkLCA2MSBpbnNlcnRpb25zKCspLCAxMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDA5MzQ2MDE5MDVlYTQ1NDZhODc0YTY1NThmN2EyYTI1NTJjZDYyZjEKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgRmViIDI2IDExOjEwOjA4IDIwMTAgKzAxMDAKKworICAgIFVwZGF0ZSBQT0QgZG9jdW1lbnRhdGlvbiB0byBpbmRpY2F0ZSB0aGF0IGl0J3MgdXNpbmcgVVRGLTggZW5jb2RpbmcKKyAgICAKKyAgICBBbHNvIGZpeCBtYW55IHNwZWxsaW5nIGVycm9ycyBzcG90dGVkIGJ5IGxpbnRpYW4uCisKKyBzY3JpcHRzL0Rwa2cvQnVpbGRPcHRpb25zLnBtICAgICAgICAgICB8ICAgIDIgKysKKyBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtICAgICAgICAgICAgICB8ICAgIDIgKysKKyBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0RlYmlhbi5wbSAgICAgICB8ICAgIDIgKysKKyBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0VudHJ5LnBtICAgICAgICB8ICAgIDIgKysKKyBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0VudHJ5L0RlYmlhbi5wbSB8ICAgIDIgKysKKyBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL1BhcnNlLnBtICAgICAgICB8ICAgIDYgKysrKy0tCisgc2NyaXB0cy9EcGtnL0NoZWNrc3Vtcy5wbSAgICAgICAgICAgICAgfCAgICAyICsrCisgc2NyaXB0cy9EcGtnL0NvbXByZXNzaW9uLnBtICAgICAgICAgICAgfCAgICAyICsrCisgc2NyaXB0cy9EcGtnL0NvbXByZXNzaW9uL0ZpbGVIYW5kbGUucG0gfCAgICA0ICsrKy0KKyBzY3JpcHRzL0Rwa2cvQ29tcHJlc3Npb24vUHJvY2Vzcy5wbSAgICB8ICAgIDIgKysKKyBzY3JpcHRzL0Rwa2cvQ29uZi5wbSAgICAgICAgICAgICAgICAgICB8ICAgIDIgKysKKyBzY3JpcHRzL0Rwa2cvQ29udHJvbC5wbSAgICAgICAgICAgICAgICB8ICAgIDQgKysrLQorIHNjcmlwdHMvRHBrZy9Db250cm9sL0NoYW5nZWxvZy5wbSAgICAgIHwgICAgMiArKworIHNjcmlwdHMvRHBrZy9Db250cm9sL0ZpZWxkcy5wbSAgICAgICAgIHwgICAgMiArKworIHNjcmlwdHMvRHBrZy9Db250cm9sL0hhc2gucG0gICAgICAgICAgIHwgICAgNiArKysrLS0KKyBzY3JpcHRzL0Rwa2cvQ29udHJvbC9JbmZvLnBtICAgICAgICAgICB8ICAgIDIgKysKKyBzY3JpcHRzL0Rwa2cvQ29udHJvbC9UeXBlcy5wbSAgICAgICAgICB8ICAgIDIgKysKKyBzY3JpcHRzL0Rwa2cvRGVwcy5wbSAgICAgICAgICAgICAgICAgICB8ICAgIDIgKysKKyBzY3JpcHRzL0Rwa2cvSVBDLnBtICAgICAgICAgICAgICAgICAgICB8ICAgIDQgKysrLQorIHNjcmlwdHMvRHBrZy9JbmRleC5wbSAgICAgICAgICAgICAgICAgIHwgICAgMiArKworIHNjcmlwdHMvRHBrZy9JbnRlcmZhY2UvU3RvcmFibGUucG0gICAgIHwgICAgMiArKworIHNjcmlwdHMvRHBrZy9QYXRoLnBtICAgICAgICAgICAgICAgICAgIHwgICAgMiArKworIHNjcmlwdHMvRHBrZy9TdWJzdHZhcnMucG0gICAgICAgICAgICAgIHwgICAgMiArKworIHNjcmlwdHMvRHBrZy9WZW5kb3IucG0gICAgICAgICAgICAgICAgIHwgICAgMiArKworIHNjcmlwdHMvRHBrZy9WZW5kb3IvRGViaWFuLnBtICAgICAgICAgIHwgICAgMiArKworIHNjcmlwdHMvRHBrZy9WZW5kb3IvRGVmYXVsdC5wbSAgICAgICAgIHwgICAgMiArKworIHNjcmlwdHMvRHBrZy9WZW5kb3IvVWJ1bnR1LnBtICAgICAgICAgIHwgICAgMiArKworIHNjcmlwdHMvRHBrZy9WZXJzaW9uLnBtICAgICAgICAgICAgICAgIHwgICAgMiArKworIDI4IGZpbGVzIGNoYW5nZWQsIDYzIGluc2VydGlvbnMoKyksIDcgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA5OWQxMGU0M2QwMzg2OTNkNTlkNDU1ZWMzNDAyODU3ZmM1N2RhMDM0CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEZlYiAyNiAxMTowMDo1NyAyMDEwICswMTAwCisKKyAgICBHZW5lcmF0ZSBtYW51YWwgcGFnZXMgZm9yIHBlcmwgbW9kdWxlcyB3aXRoIHBvZDJtYW4KKworIGNvbmZpZ3VyZS5hYyAgICAgICAgICAgIHwgICAgMSArCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgfCAgICAxICsKKyBkZWJpYW4vZHBrZy1kZXYuaW5zdGFsbCB8ICAgIDEgKworIG00L2Rwa2ctcHJvZ3MubTQgICAgICAgIHwgICAgNyArKysrKysrCisgc2NyaXB0cy9NYWtlZmlsZS5hbSAgICAgfCAgIDI1ICsrKysrKysrKysrKysrKysrKysrKysrKy0KKyA1IGZpbGVzIGNoYW5nZWQsIDM0IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA0YzkzM2JlNmE1MzU1M2EzMjcyMjgwM2YzMzZhYzM3ZWRlZDlmYjliCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEZlYiAyNiAxMDo1NzoxOCAyMDEwICswMTAwCisKKyAgICBEcGtnOjpCdWlsZE9wdGlvbnM6IGRlYWwgcHJvcGVybHkgd2l0aCB1bmRlZmluZWQgdmFsdWVzIGluIG1lcmdlKCkKKworIHNjcmlwdHMvRHBrZy9CdWlsZE9wdGlvbnMucG0gfCAgICAxICsKKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IGQ2NmJhN2ViNjY1YTQ3MTg2OWEzMTc4OWE4MGY0MDUxMGY1NGNlMzAKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgRmViIDI1IDE4OjA0OjEwIDIwMTAgKzAxMDAKKworICAgIGRwa2ctZ2VuY2hhbmdlcywgZHBrZy1zb3VyY2U6IG9ubHkgc3BsaXQgQmluYXJ5IGZpZWxkIHdoZW4gaXQncyB0b28gbG9uZworICAgIAorICAgIEFwcGx5aW5nIHRoZSBzdWJzdGl0dXRpb24gb24gc2hvcnQgbGluZXMgd2lsbCBzcGxpdCB0aGVtIHRvbyBldmVuIHRob3VnaAorICAgIHRoZXkgYXJlIG5vdCBsb25nZXIgdGhhbiA5ODAgY2hhcnMuCisKKyBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbCB8ICAgIDYgKysrKy0tCisgc2NyaXB0cy9kcGtnLXNvdXJjZS5wbCAgICAgfCAgICA2ICsrKystLQorIDIgZmlsZXMgY2hhbmdlZCwgOCBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQorCitjb21taXQgMDgwOTRlMDY5ZDJhZTA1YjUwZGMzMWJhNjRlM2YzYjg2NWU0YThlMAorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBGZWIgMjUgMTc6NDc6MTQgMjAxMCArMDEwMAorCisgICAgRHBrZzo6Q2hlY2tzdW1zOiByZXdyaXRlIHRvIHByb3ZpZGUgYW4gb2JqZWN0LW9yaWVudGVkIEFQSQorICAgIAorICAgIE1hbnkgb3RoZXIgbW9kdWxlcyBhbmQgc2NyaXB0cyBhcmUgYWxzbyB1cGRhdGVkIHRvIGNvcGUgd2l0aCB0aGUgbmV3IEFQSS4KKyAgICBUaGUgQVBJIG9mIHRoZSBtb2R1bGUgc2hvdWxkIGJlIHN0YWJsZSBmcm9tIG5vdyBvbiwgaGVuY2UgaW5jcmVhc2VkCisgICAgJFZFUlNJT04gdG8gIjEuMDAiLgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICAgIHwgICAgMSArCisgc2NyaXB0cy9EcGtnL0NoZWNrc3Vtcy5wbSAgICAgIHwgIDM3NiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tCisgc2NyaXB0cy9EcGtnL0NvbnRyb2wvRmllbGRzLnBtIHwgICAgOCArLQorIHNjcmlwdHMvRHBrZy9Db250cm9sL0hhc2gucG0gICB8ICAgIDQgKy0KKyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG0gfCAgIDU1ICsrLS0tLS0KKyBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbCAgICAgfCAgIDU0ICsrLS0tLQorIHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGwgICB8ICAgMTMgKy0KKyBzY3JpcHRzL2Rwa2ctc2NhbnNvdXJjZXMucGwgICAgfCAgIDI4ICstLQorIDggZmlsZXMgY2hhbmdlZCwgMzY1IGluc2VydGlvbnMoKyksIDE3NCBkZWxldGlvbnMoLSkKKworY29tbWl0IGFmNzFlMzQ4NGUwOTU5ZDQ1ZGVhMjRlMjU0YWIxZDU4MDEwZTgwMDkKK0F1dGhvcjogU3ZlbiBKb2FjaGltIDxzdmVuam9hY0BnbXguZGU+CitEYXRlOiAgIFRodSBGZWIgMjUgMTE6MzE6NDMgMjAxMCArMDEwMAorCisgICAgR2VybWFuIGRzZWxlY3QgdHJhbnNsYXRpb24gdXBkYXRlCisgICAgCisgICAgVXBkYXRlIHRvIDI3N3QuCisKKyBkc2VsZWN0L3BvL2RlLnBvIHwgIDE2MSArKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDc3IGluc2VydGlvbnMoKyksIDg0IGRlbGV0aW9ucygtKQorCitjb21taXQgYWM5MjAzOGM3YjI5ODA3Y2I4MWZkMmNmNzIwNjExN2RmMmYwMGEzYgorQXV0aG9yOiBTdmVuIEpvYWNoaW0gPHN2ZW5qb2FjQGdteC5kZT4KK0RhdGU6ICAgVGh1IEZlYiAyNSAxMToyMTo0NiAyMDEwICswMTAwCisKKyAgICBHZXJtYW4gZHBrZyB0cmFuc2xhdGlvbiB1cGRhdGUKKyAgICAKKyAgICBVcGRhdGUgdG8gOTY2dC4KKworIHBvL2RlLnBvIHwgIDg5NyArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgNDUzIGluc2VydGlvbnMoKyksIDQ0NCBkZWxldGlvbnMoLSkKKworY29tbWl0IDZkNzZjMzdhYWEzMGYzMTliMzY2ZThiNzExNTU4YTlmOGYyZTc1MDQKK0F1dGhvcjogU3ZlbiBKb2FjaGltIDxzdmVuam9hY0BnbXguZGU+CitEYXRlOiAgIFRodSBGZWIgMjUgMTA6MzM6NDQgMjAxMCArMDEwMAorCisgICAgTWFrZWZpbGUuYW06IEZpeCBFWFRSQV9ESVNUIHRhcmdldAorICAgIAorICAgIFJlZmxlY3QgcmVuYW1lIG9mIHNvdXJjZS5saW50aWFuLW92ZXJyaWRlcyBpbiBjb21taXQKKyAgICBkMmIxMWZjNzdhYjVlMmQwMjA4ZjdhNjBhMjE5ODQ3MjZjNDgxZmU3LgorCisgTWFrZWZpbGUuYW0gfCAgICAyICstCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBkMmIxMWZjNzdhYjVlMmQwMjA4ZjdhNjBhMjE5ODQ3MjZjNDgxZmU3CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IEZlYiAyNSAwOTowNDoxNSAyMDEwICswMTAwCisKKyAgICBNb3ZlIHNvdXJjZS5saW50aWFuLW92ZXJyaWRlcyB0byBkZWJpYW4vc291cmNlL2xpbnRpYW4tb3ZlcnJpZGVzCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDEgKworIC4uLi9saW50aWFuLW92ZXJyaWRlc30gICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMAorIDIgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgMDk2MTY3ZjNhMGQ4NmMxMWEwNDk1NGVjMTRhMDViOTE4MDJjZjdhYgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBGZWIgMjUgMDk6MDI6NTkgMjAxMCArMDEwMAorCisgICAgUmVvcmdhbml6ZSB0aGUgZG9jIGNvbnRlbnRzIHRoYXQgZ29lcyBpbnRvIGVhY2ggcGFja2FnZQorICAgIAorICAgIFJFQURNRS5tdWx0aWNkIG9ubHkgaW4gZHNlbGVjdC4KKyAgICBSRUFETUUuYXBpIG9ubHkgaW4gZGV2ZWxvcG1lbnQgcGFja2FnZXMsIGRwa2ctZGV2IGFuZCBsaWJkcGtnLWRldi4KKyAgICB0cmlnZ2Vycy50eHQgb25seSBpbiBkcGtnLWRldi4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgIHwgICAgNCArKysrCisgZGViaWFuL2Rwa2ctZGV2LmRvY3MgfCAgICA3ICsrKysrKy0KKyBkZWJpYW4vZHBrZy5kb2NzICAgICB8ICAgIDMgLS0tCisgZGViaWFuL2RzZWxlY3QuZG9jcyAgfCAgICA2ICsrKysrLQorIDQgZmlsZXMgY2hhbmdlZCwgMTUgaW5zZXJ0aW9ucygrKSwgNSBkZWxldGlvbnMoLSkKKworY29tbWl0IDljZGNhYmIwYTdmN2EzOGI4Y2QyMjkyYTQ4YTk4ZWI0ZWI1ZTQ1OGQKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgRmViIDI1IDA3OjA0OjUzIDIwMTAgKzAxMDAKKworICAgIEFkZCBhIG5ldyBsaWJkcGtnLWRldiBwYWNrYWdlIHdpdGggdGhlIGhlYWRlcnMgYW5kIHRoZSBzdGF0aWMgbGlicmFyeQorICAgIAorICAgIFRoZSBBUEkgc2hvdWxkIGJlIGNvbnNpZGVyZWQgdm9sYXRpbGUuIEFsdGhvdWdoIHRoaXMgd2lsbCBoZWxwIHNvbWV3aGF0CisgICAgcGVvcGxlIHRoYXQgYXJlIGN1cnJlbnRseSB1c2luZyB0aGUgc3RhdGljIGxpYnJhcnkgYW55d2F5LCBidXQgaGF2ZSB0bworICAgIHJlc29ydCB0byBidWlsZGluZyBkcGtnIGZyb20gc291cmNlIGFuZCB1c2luZyB0aGUgaGVhZGVycyBhbmQgdGhlIHN0YXRpYworICAgIGxpYnJhcnkgZnJvbSB0aGUgc291cmNlIHRyZWUuCisKKyBNYWtlZmlsZS5hbSAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAzICsKKyBjb25maWd1cmUuYWMgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAxICsKKyBkZWJpYW4vLmdpdGlnbm9yZSAgICAgICAgICAgICAgICAgICAgfCAgICAxICsKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICAgICAgICAgfCAgICAyICsKKyBkZWJpYW4vY29udHJvbCAgICAgICAgICAgICAgICAgICAgICAgfCAgIDEyICsrKysrKworIGRlYmlhbi9saWJkcGtnLWRldi5kb2NzICAgICAgICAgICAgICB8ICAgIDUgKysKKyBkZWJpYW4vbGliZHBrZy1kZXYuaW5zdGFsbCAgICAgICAgICAgfCAgICAzICsKKyBkZWJpYW4vbGliZHBrZy1kZXYubGludGlhbi1vdmVycmlkZXMgfCAgICAyICsKKyBsaWIvZHBrZy8uZ2l0aWdub3JlICAgICAgICAgICAgICAgICAgfCAgICAxICsKKyBsaWIvZHBrZy9NYWtlZmlsZS5hbSAgICAgICAgICAgICAgICAgfCAgIDY5ICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0KKyBsaWIvZHBrZy9saWJkcGtnLnBjLmluICAgICAgICAgICAgICAgfCAgIDEyICsrKysrKworIDExIGZpbGVzIGNoYW5nZWQsIDg5IGluc2VydGlvbnMoKyksIDIyIGRlbGV0aW9ucygtKQorCitjb21taXQgYzQwNmNhNzFjNGZhN2I4YjQ5YTI0MGYzM2EzNmI2OWRlY2ZjYzNjOQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBKYW4gMzAgMjA6NTc6MDAgMjAxMCArMDEwMAorCisgICAgbGliZHBrZzogUmVxdWlyZSB1c2VycyB0byBkZWZpbmUgTElCRFBLR19WT0xBVElMRV9BUEkKKyAgICAKKyAgICBUaGUgZXhwb3NlZCBBUEkgaXMgbm90IHlldCBmaW5pc2hlZCwgbWFrZSB0aGUgdXNlcnMgZXhwbGljaXRseQorICAgIGFja25vd2xlZGdlIHRoaXMgZmFjdCBieSByZXF1aXJpbmcgdGhlbSB0byBkZWZpbmUgdGhpcyBwcmVwcm9jZXNzb3IKKyAgICBzeW1ib2wuCisKKyBjb25maWd1cmUuYWMgICAgICB8ICAgIDEgKworIGRlYmlhbi9jaGFuZ2Vsb2cgIHwgICAgMiArKworIGRvYy9SRUFETUUuYXBpICAgIHwgICAxMSArKysrKysrKysrKworIGxpYi9kcGtnL21hY3Jvcy5oIHwgICAgNCArKysrCisgNCBmaWxlcyBjaGFuZ2VkLCAxOCBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgZmQ4ZmI2ZjQxNWExZmRmN2ZmZmY2ZjVhZDI2MDQ4YmU4Y2UyODQxMgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBGZWIgMjUgMDg6NTA6NDkgMjAxMCArMDEwMAorCisgICAgbGliZHBrZzogQWRkIG1pc3NpbmcgRFBLR19BVFRSX1ZQUklOVEYgd2hlbiAhSEFWRV9DX0FUVFJJQlVURQorCisgbGliL2Rwa2cvbWFjcm9zLmggfCAgICAxICsKKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDhjZjFlYzYxMDhkOTQ0ZWFlY2JkY2E3YTliNTJmOTJlZTBkYjZhOGIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgU2VwIDI2IDA3OjAyOjQxIDIwMDkgKzAyMDAKKworICAgIER5bmFtaWNhbGx5IGxpbmsgYWdhaW5zdCBhbGwgZXh0ZXJuYWwgbGlicmFyaWVzCisgICAgCisgICAgVGhpcyBpbmNsdWRlcyBsaWJiejIgYW5kIHpsaWIgZm9yIGRwa2ctZGViIGFuZCBhbmQgbGlic2VsaW51eCBmb3IKKyAgICBkcGtnIG9uIEdOVS9MaW51eC4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgICAgIHwgICAgMiArKworIGRlYmlhbi9kcGtnLmxpbnRpYW4tb3ZlcnJpZGVzIHwgICAgMiAtLQorIGRlYmlhbi9ydWxlcyAgICAgICAgICAgICAgICAgIHwgICAgNiArKystLS0KKyAzIGZpbGVzIGNoYW5nZWQsIDUgaW5zZXJ0aW9ucygrKSwgNSBkZWxldGlvbnMoLSkKKworY29tbWl0IGZjMzlkZWE5ZWMyZWQ5NTI4ZjM5ZWIyODhlOTQ5MzI5MTNmNzBiZjgKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgRmViIDI1IDA1OjU4OjAxIDIwMTAgKzAxMDAKKworICAgIGRwa2ctYnVpbGRwYWNrYWdlOiBEbyBub3Qgc2V0IFBLR19DT05GSUdfTElCRElSIHdoZW4gY3Jvc3MtYnVpbGRpbmcKKyAgICAKKyAgICBUaGUgcHJvcGVyIHNvbHV0aW9uIHRvIHRoaXMgaXMgdG8gbGV0IHRoZSBidWlsZCBzeXN0ZW0gY2hvb3NlIHRoZQorICAgIGFwcHJvcHJpYXRlIHBrZy1jb25maWcgYmluYXJ5IGZvciB0aGUgYnVpbGQgb3IgaG9zdCBzeXN0ZW0gaW4gdGhlCisgICAgc2FtZSB3YXkgcGtnLm00IGlzIGhhbmRsaW5nIGl0IG5vdy4KKyAgICAKKyAgICBDbG9zZXM6ICM1NTExMTgKKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgICAgfCAgICA0ICsrKysKKyBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsIHwgICAxMSAtLS0tLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCAxMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDU0YmU1NDc5OWZkNzM4NTBhNmU4NjllM2E4ZTI3MGIzNWE5ZjczODQKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgRmViIDI1IDA1OjA5OjI1IDIwMTAgKzAxMDAKKworICAgIFVzZSB4ei11dGlscyBpbnN0ZWFkIG9mIGx6bWEgZm9yIHRoZSBsem1hIGNvbXByZXNzaW9uIGZvcm1hdAorICAgIAorICAgIFdlIGF2b2lkIHVubmVlZGVkIGRlcGVuZGVuY2llcyBvbiBsem1hIGluIGRwa2cgYW5kIGRway1kZXYuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgfCAgICAyICsrCisgZGViaWFuL2NvbnRyb2wgICAgICAgICAgICAgIHwgICAgNCArKy0tCisgbGliL2Rwa2cvY29tcHJlc3MuYyAgICAgICAgIHwgICAgNCArKy0tCisgbGliL2Rwa2cvY29tcHJlc3MuaCAgICAgICAgIHwgICAgMSAtCisgc2NyaXB0cy9EcGtnL0NvbXByZXNzaW9uLnBtIHwgICAgNCArKy0tCisgNSBmaWxlcyBjaGFuZ2VkLCA4IGluc2VydGlvbnMoKyksIDcgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA5YmIyMDhhODMzODI1M2ExYzllMWQwNjQyY2YxZWYwMzlhMzM1OTUxCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIEZlYiAxIDA1OjE2OjMzIDIwMTAgKzAxMDAKKworICAgIEFkZCBzdXBwb3J0IGZvciB4eiBjb21wcmVzc2VkIGRhdGEudGFyIG1lbWJlciBvZiBiaW5hcnkgcGFja2FnZXMKKyAgICAKKyAgICBVc2UgdGhlIHh6IGNvbW1hbmQgZnJvbSB4ei11dGlscyB0byBzdXBwb3J0IHh6LWNvbXByZXNzZWQgYmluYXJ5CisgICAgcGFja2FnZXMuIEFkZCB4ei11dGlscyB0byBkcGtnJ3MgUHJlLURlcGVuZHMuCisgICAgCisgICAgVGhlIHh6IGZvcm1hdCBpcyB2ZXJ5IHNpbWlsYXIgdG8gdGhlIGx6bWEgZm9ybWF0LCBidXQgaXQgZml4ZXMKKyAgICBzb21lIG9taXNzaW9ucyBpbiB0aGUgbGF0dGVyLCBtb3N0IG5vdGFibHkgYSBtYWdpYyBudW1iZXIgZm9yCisgICAgaWRlbnRpZmljYXRpb24gYnkgZmlsZSgxKS4KKyAgICAKKyAgICBDbG9zZXM6ICM1NDIxNjAKKyAgICAKKyAgICBCYXNlZC1vbi1wYXRjaC1ieTogSm9uYXRoYW4gTmllZGVyIDxqcm5pZWRlckBnbWFpbC5jb20+CisKKyBkZWJpYW4vY2hhbmdlbG9nICAgIHwgICAgMyArKysKKyBkZWJpYW4vY29udHJvbCAgICAgIHwgICAgMiArLQorIGRwa2ctZGViL21haW4uYyAgICAgfCAgICAyICstCisgbGliL2Rwa2cvY29tcHJlc3MuYyB8ICAgMjggKysrKysrKysrKysrKysrKysrKysrKysrKysrKworIGxpYi9kcGtnL2NvbXByZXNzLmggfCAgICAyICsrCisgbWFuL2RlYi41ICAgICAgICAgICB8ICAgIDEgKworIG1hbi9kcGtnLWRlYi4xICAgICAgfCAgICA0ICsrLS0KKyA3IGZpbGVzIGNoYW5nZWQsIDM4IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA4Mzk0YzY4YzU0M2NhNGVmYzMwOWY1YzA5MTdjYzFkMzk5OGQ1YTc5CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IEZlYiAyNSAwNDozNTo0OCAyMDEwICswMTAwCisKKyAgICBsaWJkcGtnOiBDaGFuZ2UgZGVmYXVsdCBsem1hIGNvbXByZXNzaW9uIGxldmVsIGZyb20gOSB0byA2CisgICAgCisgICAgU2V0IHRoZSBkZWZhdWx0IGNvbXByZXNzaW9uIGxldmVsIGxvdyBlbm91Z2ggdG8gcHJvZHVjZSBwYWNrYWdlcworICAgIHRoYXQgcmVxdWlyZSBubyBtb3JlIHRoYW4gMTAgTWlCIG9mIG1lbW9yeSB0byBkZWNvbXByZXNzLCBieQorICAgIGxvd2VyaW5nIGl0IHRvIDYgZnJvbSA5ICh0aGlzIG1hdGNoZXMgeHogaW50ZXJuYWwgZGVmYXVsdCBjb21wcmVzc2lvbgorICAgIGxldmVsKS4KKyAgICAKKyAgICBCYXNlZC1vbi1wYXRjaC1ieTogSm9uYXRoYW4gTmllZGVyIDxqcm5pZWRlckBnbWFpbC5jb20+CisKKyBkZWJpYW4vY2hhbmdlbG9nICAgIHwgICAgMiArKworIGxpYi9kcGtnL2NvbXByZXNzLmMgfCAgICAyICstCisgMiBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA2YjVjNGY5NmMwYjFmMWRmMGQ0ZGU3MWIxM2NmMWEyMDFmYjUyMzMxCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IEphbiAzMCAwMjoxNzoyMiAyMDEwICswMTAwCisKKyAgICBsaWJkcGtnLXBlcmw6IE1ha2UgY29tcF9wcm9nIGFuZCBkZWNvbXBfcHJvZyAlQ09NUCBwcm9wZXJ0aWVzIGFycmF5cworICAgIAorICAgIFRoaXMgd2lsbCBhbGxvdyBzdG9yaW5nIGFyZ3VtZW50cyBhbG9uZ3NpZGUgdGhlIGNvbW1hbmQgbmFtZXMKKyAgICB0aGVtc2VsdmVzLgorCisgc2NyaXB0cy9EcGtnL0NvbXByZXNzaW9uLnBtICAgICAgICAgfCAgIDE2ICsrKysrKysrLS0tLS0tLS0KKyBzY3JpcHRzL0Rwa2cvQ29tcHJlc3Npb24vUHJvY2Vzcy5wbSB8ICAgIDQgKystLQorIDIgZmlsZXMgY2hhbmdlZCwgMTAgaW5zZXJ0aW9ucygrKSwgMTAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA3NzM4ZmU1Mzk4ZDY2MTA3MjNjM2RlZjJkZGM1MGVlYTFhNzNjMzI3CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IEZlYiAyNSAwNDoxMzowMiAyMDEwICswMTAwCisKKyAgICBTZWN1cmVseSByZW1vdmUgbmV3bHkgaW5zdGFsbGVkIGZpbGVzIHdoZW4gcm9sbGluZy1iYWNrIGEgZmFpbGVkIHVucGFjaworICAgIAorICAgIFdoZW4gYW4gZXJyb3Igb2NjdXJzIGR1cmluZyB1bnBhY2sgdGhlIGNvZGUgaXMgbm90IHNlY3VyZWx5IHJlbW92aW5nCisgICAgdGhlIG5ld2x5IGluc3RhbGxlZCBmaWxlcyB0aGF0IG1pZ2h0IGJlIHN0aWxsIGxheWluZyBhcm91bmQsIHdoaWNoCisgICAgZ2l2ZXMgYXR0YWNrZXJzIGEgc21hbGwgd2luZG93IHdlcmUgdGhleSBjb3VsZCBoYXJkIGxpbmsgYSBmaWxlIHdpdGgKKyAgICBzZXQgaWQgYml0cy4gVGhpcyBzaXR1YXRpb24gaXMgcHJldHR5IGNvbnRyaXZlZCBhcyB0aGUgYXR0YWNrZWQgd291bGQKKyAgICBuZWVkIHRvIGNvbnRyb2wgdGhlIGZhaWxpbmcgb2YgdGhlIHBhY2thZ2UgZHVyaW5nIHVucGFjay4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAxICsKKyBzcmMvYXJjaGl2ZXMuYyAgIHwgICAgMyArKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDcxNjM2MmM1OWU1MzE4ODMzMDRhMjExYWZhNjE2NjA2MDhjMjE0YjMKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgRmViIDIzIDA5OjQ5OjEyIDIwMTAgKzAxMDAKKworICAgIGRwa2ctbmFtZTogTWFyayBtaXNzaW5nIHN0cmluZ3MgZm9yIHRyYW5zbGF0aW9uCisKKyBzY3JpcHRzL2Rwa2ctbmFtZS5wbCB8ICAgMjMgKysrKysrKysrKysrKy0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDEzIGluc2VydGlvbnMoKyksIDEwIGRlbGV0aW9ucygtKQorCitjb21taXQgMDZiNjRiZTdiYTUwNWM1MWY4NjczZTdiYTMyMzYyOWU5YzYwNTc0ZAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBGZWIgMjMgMDA6MDg6MTIgMjAxMCArMDEwMAorCisgICAgUmVtb3ZlIC0tbGljZW5zZSBhbmQgLS1saWNlbmNlIG9wdGlvbnMgZnJvbSB0b29scworICAgIAorICAgIFRoZSBvcHRpb25zIGFyZSBwcmV0dHkgdXNlbGVzcyBhbmQgbm9uLXN0YW5kYXJkLiBUaGUgdXNlciBjYW4gc3VyZWx5CisgICAgY2F0IGEgZmlsZSBmcm9tIHRoZSBpbnN0YWxsZWQgcGFja2FnZS4gSW4gYWRkaXRpb24gdGhpcyBvcHRpb24gaGFzIG5vdAorICAgIHdvcmtlZCBldmVyIG9uIG5vbi1EZWJpYW4gc3lzdGVtcyBhcyBpdCdzIHJlbHlpbmcgb24gdGhlIEdQTC0yIGZpbGUKKyAgICBmcm9tIHRoZSBiYXNlLWZpbGVzIERlYmlhbiBwYWNrYWdlLiBTbyByZW1vdmUgaXQsIGFuZCB3ZSBnZXQgc29tZSBjb2RlCisgICAgcmVkdWN0aW9uIGFzIGEgbmljZSBzaWRlLWVmZmVjdC4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICB8ICAgIDEgKworIGRwa2ctZGViL21haW4uYyAgICAgICB8ICAgIDggKy0tLS0tLS0KKyBkcGtnLXNwbGl0L21haW4uYyAgICAgfCAgICA2ICstLS0tLQorIGRzZWxlY3QvbWFpbi5jYyAgICAgICB8ICAgIDYgKy0tLS0tCisgbGliL2Rwa2cvTWFrZWZpbGUuYW0gIHwgICAgMiAtLQorIGxpYi9kcGtnL215b3B0LXV0aWwuYyB8ICAgNDQgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBtYW4vZHBrZy1kZWIuMSAgICAgICAgfCAgICAzIC0tLQorIG1hbi9kcGtnLW5hbWUuMSAgICAgICB8ICAgIDMgLS0tCisgbWFuL2Rwa2ctcXVlcnkuMSAgICAgIHwgICAgMyAtLS0KKyBtYW4vZHBrZy1zcGxpdC4xICAgICAgfCAgICAzIC0tLQorIG1hbi9kcGtnLXRyaWdnZXIuMSAgICB8ICAgIDMgLS0tCisgbWFuL2Rwa2cuMSAgICAgICAgICAgIHwgICAgMyAtLS0KKyBtYW4vZHNlbGVjdC4xICAgICAgICAgfCAgICA3ICstLS0tLS0KKyBwby9QT1RGSUxFUy5pbiAgICAgICAgfCAgICAxIC0KKyBzcmMvbWFpbi5jICAgICAgICAgICAgfCAgICA5ICstLS0tLS0tLQorIHNyYy9xdWVyeS5jICAgICAgICAgICB8ICAgMTIgKystLS0tLS0tLS0tCisgc3JjL3N0YXRjbWQuYyAgICAgICAgIHwgICAgOCArLS0tLS0tLQorIHNyYy90cmlnY21kLmMgICAgICAgICB8ICAgIDggKy0tLS0tLS0KKyAxOCBmaWxlcyBjaGFuZ2VkLCAxMCBpbnNlcnRpb25zKCspLCAxMjAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAwYjEzNGFhN2YzOWFlYmYwN2Q5NDczNWQ2NTdiODU2MDg5YWIxMDc0CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIEZlYiAyMiAxOTowOTo1MSAyMDEwICswMTAwCisKKyAgICBsaWJkcGtnOiBEbyBub3QgaW5jbHVkZSB1bnVzZWQgPHN5cy9jZGVmcy5oPgorCisgbGliL2Rwa2cvZHBrZy5oIHwgICAgMyAtLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDAgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworY29tbWl0IDM1MTZkMTA1YTQyN2FkOTVjNGQ2YmFjYjk2MDMwZTQyNjdjODQyZmQKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gRmViIDIyIDE5OjA3OjUwIDIwMTAgKzAxMDAKKworICAgIGxpYmRwa2c6IEFsd2F5cyBpbmNsdWRlIDxzdGRkZWYuaD4KKyAgICAKKyAgICBXZSBuZWVkIHRoZSBkZWZpbml0aW9ucyBmcm9tIHRoZSBoZWFkZXIsIHNvIGNvbmRpdGlvbmFsbHkgaW5jbHVkaW5nIGl0CisgICAgd2lsbCBvbmx5IGNhdXNlIHByb2JsZW1zLCB3ZSBhcmUgYWxzbyB1bmNvbmRpdGlvbmFsbHkgaW5jbHVkaW5nIGl0IGluCisgICAgb3RoZXIgcGFydHMgb2YgdGhlIGNvZGUsIHNvIGl0J3Mgc2FmZSB0byBhc3N1bWUgaXQncyBhbHdheXMgYXZhaWxhYmxlLgorCisgbGliL2Rwa2cvZHBrZy5oIHwgICAgMiAtLQorIGxpYi9kcGtnL3BhdGguaCB8ICAgIDIgLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDAgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKKworY29tbWl0IDVkMTA5OWFlMDMwNDg3MzlhZGQ1MTNjZWI1MmMxNzczYmI5ZTBlN2UKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gRmViIDIyIDE5OjAzOjM4IDIwMTAgKzAxMDAKKworICAgIEhlYWRlciBmaWxlcyBzaG91bGQgbm90IGluY2x1ZGUgPGNvbmZpZy5oPiBhbmQgPGNvbXBhdC5oPgorICAgIAorICAgIFRob3NlIGZpbGVzIGFyZSBpbnRlcm5hbCB0byB0aGUgYnVpbGQsIGFuZCBzaG91bGQgbm90IGJlIGV4cG9zZWQsIGFzCisgICAgdGhpcyB3aWxsIGNhdXNlIHByb2JsZW1zIG9uY2Ugd2Ugc2hpcCBhIGxpYmRwa2ctZGV2LCBpdCBhbHNvIGhlbHBzCisgICAgaGF2aW5nIHRoZW0gZXhwbGljaXRseSBpbiB0aGUgLmMgYW5kIC5jYyBmaWxlcyB0byBhdm9pZCBhY2NpZGVudHMgbGlrZQorICAgIHRoZSBvbmUgZml4ZWQgYnkgY29tbWl0IDAwNDNkMDIwY2Y3YWFmZTNlMjUzYzZkNWM5YWZiOTM1MjE5NzFlNjAuCisKKyBsaWIvZHBrZy9hci5oICAgICAgICAgICAgICAgfCAgICAzIC0tLQorIGxpYi9kcGtnL3BrZy1hcnJheS5oICAgICAgICB8ICAgIDMgLS0tCisgbGliL2Rwa2cvcGtnLWxpc3QuaCAgICAgICAgIHwgICAgMyAtLS0KKyBsaWIvZHBrZy90ZXN0LmggICAgICAgICAgICAgfCAgICAzIC0tLQorIGxpYi9kcGtnL3Rlc3QvdC1hci5jICAgICAgICB8ICAgIDMgKysrCisgbGliL2Rwa2cvdGVzdC90LWJ1ZmZlci5jICAgIHwgICAgMyArKysKKyBsaWIvZHBrZy90ZXN0L3QtY29tbWFuZC5jICAgfCAgICAzICsrKworIGxpYi9kcGtnL3Rlc3QvdC1tYWNyb3MuYyAgICB8ICAgIDMgKysrCisgbGliL2Rwa2cvdGVzdC90LXBhdGguYyAgICAgIHwgICAgMyArKysKKyBsaWIvZHBrZy90ZXN0L3QtcGtnLWxpc3QuYyAgfCAgICAzICsrKworIGxpYi9kcGtnL3Rlc3QvdC1wa2ctcXVldWUuYyB8ICAgIDMgKysrCisgbGliL2Rwa2cvdGVzdC90LXBrZ2luZm8uYyAgIHwgICAgMyArKysKKyBsaWIvZHBrZy90ZXN0L3Qtc3RyaW5nLmMgICAgfCAgICAzICsrKworIGxpYi9kcGtnL3Rlc3QvdC10ZXN0LmMgICAgICB8ICAgIDMgKysrCisgbGliL2Rwa2cvdGVzdC90LXZhcmJ1Zi5jICAgIHwgICAgMyArKysKKyBsaWIvZHBrZy90ZXN0L3QtdmVyc2lvbi5jICAgfCAgICAzICsrKworIGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sICAgICB8ICAgIDEgKworIHV0aWxzL2luc3RhbGwtaW5mby5jICAgICAgICB8ICAgIDEgKworIHV0aWxzL3N0YXJ0LXN0b3AtZGFlbW9uLmMgICB8ICAgIDEgKworIDE5IGZpbGVzIGNoYW5nZWQsIDM5IGluc2VydGlvbnMoKyksIDEyIGRlbGV0aW9ucygtKQorCitjb21taXQgYzdhZGUxM2FhOGFkMDQ3ODhlZmI5ZDg3NzVmMmY1YWM2ZDQ4NGU5OAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBGZWIgMjIgMDU6MTE6MjkgMjAxMCArMDEwMAorCisgICAgZHBrZy1kZWI6IENoYW5nZSB0ZW1wb3JhcnkgZGlyZWN0b3J5IHN1ZmZpeCB0byBkcGtnLWRlYgorICAgIAorICAgIE1ha2VzIGl0IG1vcmUgb2J2aW91cyB3aG8gY3JlYXRlZCB0aGUgZGlyZWN0b3J5LgorCisgZHBrZy1kZWIvYnVpbGQuYyB8ICAgIDQgKystLQorIGRwa2ctZGViL2luZm8uYyAgfCAgICAyICstCisgMiBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBiYjZjNTk2MWJkZjJiNzJiMDhiY2UzNjcwMDRkZDFhNjVlNzFhNzI1CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIEZlYiAyMiAwNTowOTo0NyAyMDEwICswMTAwCisKKyAgICBkcGtnLWRlYjogTWFrZSBjdV9pbmZvX3ByZXBhcmUgdXNlIG9oc2hpdGUgaW5zdGVhZCBvZiBwZXJyb3IKKyAgICAKKyAgICBNYWtlIHRoZSBvdGhlciBlcnJvciBwYXRocyBjYWxsIG9oc2hpdGUgaW5zdGVhZCBvZiBqdXN0IHBlcnJvciBhbmQKKyAgICByZXR1cm5pbmcgb3IgZXhpdGluZyBtYW51YWxseS4KKworIGRwa2ctZGViL2luZm8uYyB8ICAgIDUgKysrLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDNmMzU1OTA0YWE1NmZjYjZjNzgyZDk1MWQ3NWJmMTM2YzNiOGI4MWQKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gRmViIDIyIDA1OjA4OjAwIDIwMTAgKzAxMDAKKworICAgIGRwa2ctZGViOiBVc2Ugc3VicHJvYyBmdW5jdGlvbnMgaW5zdGVhZCBvZiBhZC1ob2MgY29kZQorICAgIAorICAgIFRoaXMgbWFrZXMgY3VfaW5mb19wcmVwYXJlIGNhbGwgb2hzaGl0ZSBpbiBjYXNlIG9mIGVycm9yLCBidXQgdGhhdCdzCisgICAgZmluZSBhcyB0aGUgbm9ybWFsIHVud2luZGluZyB3aWxsIGhhcHBlbiBpbiB0aGF0IGNhc2UuCisKKyBkcGtnLWRlYi9pbmZvLmMgfCAgICA3ICsrKy0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKKworY29tbWl0IGZmY2NjNjU1ODAxODk0MjBhMGE2NDczNmJiYTBmYjY2MWRlNTZkY2IKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gRmViIDIyIDA1OjA0OjU0IDIwMTAgKzAxMDAKKworICAgIFVzZSBta2R0ZW1wIGFuZCBwYXRoX21ha2VfdGVtcF90ZW1wbGF0ZSBpbnN0ZWFkIG9mIHRlbXBuYW0gYW5kIHRtcG5hbQorICAgIAorICAgIFRob3NlIHR3byBmdW5jdGlvbnMgYXJlIGRlcHJlY2F0ZWQsIHByb2R1Y2Ugd2FybmluZ3MgYXQgbGluayB0aW1lLAorICAgIGFuZCBzaG91bGQgbm90IGJlIHVzZWQgYXMgdGhleSBhcmUgY2F1c2Ugb2YgcG9zc2libGUgcmFjZSBjb25kaXRpb25zLgorICAgIAorICAgIEFzIGEgc2lkZSBlZmZlY3Qgd2UgZG9uJ3QgbmVlZCB0byBlbnN1cmUgdGhlIHBhdGggaXMgbm90IGV4aXN0aW5nIGFzCisgICAgbWtkdGVtcCBoYXMgZG9uZSB0aGF0IGZvciB1cywgd2hpY2ggc2xpZ2h0bHkgc2ltcGxpZmllcyB0aGUgY29kZS4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAzICsrKworIGRwa2ctZGViL2luZm8uYyAgfCAgIDE1ICsrKysrLS0tLS0tLS0tLQorIHNyYy9wcm9jZXNzYXJjLmMgfCAgIDI0ICsrKysrKysrKysrKysrKy0tLS0tLS0tLQorIDMgZmlsZXMgY2hhbmdlZCwgMjMgaW5zZXJ0aW9ucygrKSwgMTkgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA0YzlkMmQwZWVlZDhiMDc3YTE5ZGE1YmFjNWYyZTgxODNlMjdlODUwCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIEZlYiAyMiAwMzo1OToyOCAyMDEwICswMTAwCisKKyAgICBsaWJkcGtnOiBBZGQgbmV3IHRlbXBmaWxlIHRlbXBsYXRlIGdlbmVyYXRvciBmdW5jdGlvbgorICAgIAorICAgIFVzZSBpdCBpbnN0ZWFkIG9mIGFkLWhvYyBjb2RlIGluIGRwa2ctZGViLgorCisgZHBrZy1kZWIvYnVpbGQuYyB8ICAgMTggKysrKystLS0tLS0tLS0tLS0tCisgbGliL2Rwa2cvcGF0aC5jICB8ICAgMzEgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLQorIGxpYi9kcGtnL3BhdGguaCAgfCAgICA0ICsrKy0KKyAzIGZpbGVzIGNoYW5nZWQsIDM4IGluc2VydGlvbnMoKyksIDE1IGRlbGV0aW9ucygtKQorCitjb21taXQgZWIzY2Q3YmEwYjA5ZmRlNTlmOGMwZDBiZWNhODUyOTNkNGNjODYxNworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBGZWIgMjEgMDU6NTU6MTcgMjAxMCArMDEwMAorCisgICAgZHBrZzogU3dpdGNoIGNvZGUgdG8gdXNlIOKAnHN0cnVjdCBwa2dfcXVldWXigJ0gaW5zdGVhZCBvZiDigJxzdHJ1Y3QgcGtncXVldWXigJ0KKyAgICAKKyAgICBUaGUgc2VtYW50aWNzIG9mIHRoZSBwa3EtcXVldWUgbW9kdWxlIGFyZSBtb3JlIGNsZWFyLCBzbyBpdCBtYWtlcyB0aGUKKyAgICBjb2RlIHNsaWdodGx5IGVhc2llciB0byBoYW5kbGUuCisKKyBzcmMvbWFpbi5oICAgICB8ICAgMTAgLS0tLS0tLS0tLQorIHNyYy9wYWNrYWdlcy5jIHwgICA0NSArKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBzcmMvdHJpZ3Byb2MuYyB8ICAgMTYgKysrKysrKystLS0tLS0tLQorIDMgZmlsZXMgY2hhbmdlZCwgMTQgaW5zZXJ0aW9ucygrKSwgNTcgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyZTllYTcxYWVmZjM4ZTUzYjU2MzQ4YjZiODliMDBhMWZlMGNiOWU5CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIEZlYiAyMSAwNTo1MjoxMCAyMDEwICswMTAwCisKKyAgICBsaWJkcGtnOiBBZGQgYSBuZXcgcGtnLXF1ZXVlIG1vZHVsZQorCisgbGliL2Rwa2cvTWFrZWZpbGUuYW0gICAgICAgIHwgICAgMSArCisgbGliL2Rwa2cvcGtnLXF1ZXVlLmMgICAgICAgIHwgICA5MCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKKyBsaWIvZHBrZy9wa2ctcXVldWUuaCAgICAgICAgfCAgIDQ3ICsrKysrKysrKysrKysrKysrCisgbGliL2Rwa2cvdGVzdC8uZ2l0aWdub3JlICAgIHwgICAgMSArCisgbGliL2Rwa2cvdGVzdC9NYWtlZmlsZS5hbSAgIHwgICAgNCArLQorIGxpYi9kcGtnL3Rlc3QvdC1wa2ctcXVldWUuYyB8ICAxMTUgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKworIHBvL1BPVEZJTEVTLmluICAgICAgICAgICAgICB8ICAgIDEgKworIDcgZmlsZXMgY2hhbmdlZCwgMjU4IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBmY2YzMjhmNGQxY2JlNjEzYjZjOWM1N2IzM2RhYmJmZmIyOGNiZGYwCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIEZlYiAyMSAwNjoxMzozMCAyMDEwICswMTAwCisKKyAgICBsaWJkcGtnOiBBZGQgdW5pdCB0ZXN0IGZvciBwa2ctbGlzdCBtb2R1bGUKKworIGxpYi9kcGtnL3Rlc3QvLmdpdGlnbm9yZSAgIHwgICAgMSArCisgbGliL2Rwa2cvdGVzdC9NYWtlZmlsZS5hbSAgfCAgICA0ICsrLQorIGxpYi9kcGtnL3Rlc3QvdC1wa2ctbGlzdC5jIHwgICA4NyArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKworIDMgZmlsZXMgY2hhbmdlZCwgOTEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDVkMTU5YjZiOTI2YzkyMDAyNmUyOWQwMTBlNDBiNWQ1ZmEyN2Q3YjcKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gRmViIDIxIDA0OjU4OjI1IDIwMTAgKzAxMDAKKworICAgIGxpYmNvbXBhdDogVXBkYXRlIGdldHRleHQuaCBmcm9tIGdldHRleHQgMC4xNworICAgIAorICAgIFRoaXMgY2hhbmdlcyBpdHMgbGljZW5zZSBmcm9tIExHUEwyKyB0byBHUEwyKy4KKworIGxpYi9jb21wYXQvZ2V0dGV4dC5oIHwgICAyNiArKysrKysrKysrKysrKysrLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMTYgaW5zZXJ0aW9ucygrKSwgMTAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBjM2JhZmRiYmQ0Y2ZmZDQ1NjljMDAwZGJlMmYzNWZlMDYyZDY2YjE0CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIEZlYiAyNCAyMTowNzo0NyAyMDEwICswMTAwCisKKyAgICBVc2UgRGViaWFuIGluc3RlYWQgb2YgRGViaWFuIEdOVS9MaW51eCB3aGVuIHJlZmVycmluZyB0byB0aGUgZGlzdHJpYnV0aW9uCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDIgKysKKyBkZWJpYW4vY29weXJpZ2h0ICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDYgKysrLS0tCisgZHNlbGVjdC9tZXRob2RzL2Z0cC9SRUFETUUubWlycm9ycy50eHQgfCAgICAyICstCisgMyBmaWxlcyBjaGFuZ2VkLCA2IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAxNGM3ODkwZjA1ZTFkNTkxMDUwYjgwMjQ2YWU2ZjI5NjQ2MmM0ZmFjCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIEZlYiAyMSAwMDo1Mzo0NCAyMDEwICswMTAwCisKKyAgICBVcGRhdGUgY29weXJpZ2h0IHN0YXRlbWVudHMKKyAgICAKKyAgICBTb3J0IHRoZW0gYnkgaW5pdGlhbCB5ZWFyLiBBZGQgbmV3IGhvbGRlcnMsIGJ1dCBmb3Igbm93IG9ubHkgdGhvc2Ugd2hpY2gKKyAgICBkbyBub3QgbmVlZCBjbGFyaWZpY2F0aW9uLCB0aGUgcmVzdCB3aWxsIGJlIGFkZGVkIGxhdGVyLgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDEgKworIGRlYmlhbi9jb3B5cmlnaHQgfCAgIDI1ICsrKysrKysrKysrKysrKy0tLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDE2IGluc2VydGlvbnMoKyksIDEwIGRlbGV0aW9ucygtKQorCitjb21taXQgMGEzZmE5Y2VkNjYxNTQ1ZjcyNjlmOTA2MWI4ZTI0YmVlZGE1YTBlOAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBGZWIgMjEgMDA6MzI6NDkgMjAxMCArMDEwMAorCisgICAgQWRkIGFjY2VudCBvbiBSYXBoYcOrbCdzIG5hbWUgaW4gc2V2ZXJhbCBmaWxlcworCisgQ2hhbmdlTG9nLm9sZCAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMzY2ICsrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tCisgVEhBTktTICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICAgICAgICAgICAgfCAgIDY2ICsrKy0tLQorIGRlYmlhbi9jb3B5cmlnaHQgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMiArLQorIG1hbi9kZWItc3ltYm9scy41ICAgICAgICAgICAgICAgICAgICAgIHwgICAgMiArLQorIG1hbi9kcGtnLWdlbnN5bWJvbHMuMSAgICAgICAgICAgICAgICAgIHwgICAgMiArLQorIG1hbi9kcGtnLXNvdXJjZS4xICAgICAgICAgICAgICAgICAgICAgIHwgICAgMiArLQorIG1hbi9wby9DaGFuZ2VMb2cub2xkICAgICAgICAgICAgICAgICAgIHwgICAxMiArLQorIHBvL0NoYW5nZUxvZy5vbGQgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMiArLQorIHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG0gICAgICAgICAgICAgIHwgICAgMiArLQorIHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRW50cnkvRGViaWFuLnBtIHwgICAgMiArLQorIHNjcmlwdHMvRHBrZy9Db250cm9sL0NoYW5nZWxvZy5wbSAgICAgIHwgICAgMiArLQorIHNjcmlwdHMvRHBrZy9Db250cm9sL0luZm8ucG0gICAgICAgICAgIHwgICAgMiArLQorIHNjcmlwdHMvRHBrZy9QYXRoLnBtICAgICAgICAgICAgICAgICAgIHwgICAgMiArLQorIHNjcmlwdHMvRHBrZy9TdWJzdHZhcnMucG0gICAgICAgICAgICAgIHwgICAgMiArLQorIHNjcmlwdHMvcG8vQ2hhbmdlTG9nLm9sZCAgICAgICAgICAgICAgIHwgICAgNCArLQorIHNjcmlwdHMvdC82MDBfRHBrZ19DaGFuZ2Vsb2cudCAgICAgICAgIHwgICAgNCArLQorIHNjcmlwdHMvdC82MDBfRHBrZ19DaGFuZ2Vsb2cvZmllbGRzICAgIHwgICAgNCArLQorIDE4IGZpbGVzIGNoYW5nZWQsIDI0MCBpbnNlcnRpb25zKCspLCAyNDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBhZTQ1MDVlZmVjY2RiNWJjZTQ2NWM0YzlmYTRhZWFiZjBmMjJjZjNjCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IEZlYiAyMCAxOTowMTowOCAyMDEwICswMTAwCisKKyAgICBidWlsZDogRml4IGFsaWdubWVudCBvZiBzdGFydC1zdG9wLWRhZW1vbiBhdXRvbWFrZSBydWxlcworCisgdXRpbHMvTWFrZWZpbGUuYW0gfCAgICA2ICsrKy0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQorCitjb21taXQgMmJhZTI5ZjZjODZjNTRlYjNjOTFjNTI0Yjk5NTY1MTMxM2EzY2EzYworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBGZWIgMjAgMTg6NTU6MTEgMjAxMCArMDEwMAorCisgICAgYnVpbGQ6IEFkZCBuZXcgLS13aXRob3V0LWluc3RhbGwtaW5mbworICAgIAorICAgIE90aGVyIGRpc3RyaWJ1dGlvbnMgYWxyZWFkeSBzaGlwIHRoZSBHTlUgcmVpbXBsZW1lbnRhdGlvbiBvZiBpbnN0YWxsLWluZm8KKyAgICB3aGljaCBpcyBzbGF0ZWQgdG8gY29tcGxldGVseSByZXBsYWNlIHRoZSBEZWJpYW4gb25lIGluIHRoZSBuZWFyIGZ1dHVyZSwKKyAgICBhZGRpdGlvbmFsbHkgdGhlIGN1cnJlbnQgaW5zdGFsbC1pbmZvIGluIGRwa2cgaXMganVzdCBhIHdyYXBwZXIsIHNvIHdlCisgICAgYWxsb3cgdGhlbSB0byBkaXNhYmxlIGl0IGF0IGNvbmZpZ3VyZSB0aW1lLgorCisgY29uZmlndXJlLmFjICAgICAgfCAgICA5ICsrKysrKysrKworIGRlYmlhbi9jaGFuZ2Vsb2cgIHwgICAgMiArKworIHV0aWxzL01ha2VmaWxlLmFtIHwgICAgNCArKysrCisgMyBmaWxlcyBjaGFuZ2VkLCAxNSBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgNjk4NWU0ZTBhODE2NmE0NjgwNGUyZmQ4OTAyMWRlZjcxODZiM2EyNgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBGZWIgMjAgMDc6NTU6MTQgMjAxMCArMDEwMAorCisgICAgYnVpbGQ6IEFkZCBuZXcgLS13aXRob3V0LXVwZGF0ZS1hbHRlcm5hdGl2ZXMKKyAgICAKKyAgICBTb21lIGRpc3RyaWJ1dGlvbnMgYWxyZWFkeSBzaGlwIHRoZWlyIG93biByZWltcGxlbWVudGF0aW9uIG9mCisgICAgdXBkYXRlLWFsdGVybmF0aXZlcywgc28gd2UgYWxsb3cgdGhlbSB0byBkaXNhYmxlIG91ciBvd24uCisKKyBjb25maWd1cmUuYWMgICAgICAgIHwgICAgOSArKysrKysrKysKKyBkZWJpYW4vY2hhbmdlbG9nICAgIHwgICAgMiArKworIG1hbi9NYWtlZmlsZS5hbSAgICAgfCAgICA4ICsrKysrKy0tCisgc2NyaXB0cy9NYWtlZmlsZS5hbSB8ICAgIDkgKysrKysrKy0tCisgNCBmaWxlcyBjaGFuZ2VkLCAyNCBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQorCitjb21taXQgMGU2YmQ1NzY0MDI3ZDM2ZjE2MDVmMTQxYWUzMDZhMTIyMWE2YzdkZAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBGZWIgMjAgMTk6MTE6MjQgMjAxMCArMDEwMAorCisgICAgYnVpbGQ6IE1vdmUgPHNiaW5kaXI+L2luc3RhbGwtaW5mbyB1bmluc3RhbGxhdGlvbiB0byB1dGlscy8KKyAgICAKKyAgICBQdXQgaXQgd2hlcmUgaW5zdGFsbC1pbmZvIGlzIGJlaW5nIGhhbmRsZWQuCisKKyBzY3JpcHRzL01ha2VmaWxlLmFtIHwgICAgMSAtCisgdXRpbHMvTWFrZWZpbGUuYW0gICB8ICAgIDMgKysrCisgMiBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA3NDY3Y2M3NzZiMGY5ZjQwMmQ5ZTczYjY5Y2M2MDFmNDEzMzI0OTFhCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IEZlYiAyMCAwNzo1MzoxNyAyMDEwICswMTAwCisKKyAgICBidWlsZDogTW92ZSA8YWRtaW5kaXI+L2FsdGVybmF0aXZlcyBkaXJlY3RvcnkgY3JlYXRpb24gdG8gc2NyaXB0cy8KKyAgICAKKyAgICBQdXQgaXQgY2xvc2UgdG8gdGhlIG90aGVyIGFsdGVybmF0aXZlcyBmaWxlIGFuZCBkaXJlY3RvcnkgaGFuZGxpbmcuCisKKyBzY3JpcHRzL01ha2VmaWxlLmFtIHwgICAgMSArCisgc3JjL01ha2VmaWxlLmFtICAgICB8ICAgIDEgLQorIDIgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgNGRhNmYyMjc3OTgwNjk5NDUwMDBhYWRmMDFjNWVlY2M0MmY3ZjUyZQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBGZWIgMjAgMDc6Mjk6MDYgMjAxMCArMDEwMAorCisgICAgZHBrZzogU2V0IGludGVyZXN0aW5nIGVudmlyb25tZW50IHZhcmlhYmxlcyBvbiBjb25mZmlsZSBzaGVsbCBzcGF3bgorICAgIAorICAgIFNldCBEUEtHX1NIRUxMX1JFQVNPTiwgRFBLR19DT05GRklMRV9PTEQgYW5kIERQS0dfQ09ORkZJTEVfTkVXCisgICAgZW52aXJvbm1lbnQgdmFyaWFibGVzIHdoZW4gc3Bhd25pbmcgYSBzaGVsbCBmb3IgY29uZmZpbGUKKyAgICBleGFtaW5hdGlvbiwgc28gdGhhdCB0aGUgdXNlciBjYW4gZWFzaWx5IHVzZSB0aGVtIGZvciBzY3JpcHRpbmcsIG9yCisgICAgYXMgZWFzeSBtbmVtb25pY3MuCisgICAgCisgICAgU3VnZ2VzdGVkLWJ5OiBEYW5pZWwgTWFydGluIDxEYW5pZWwuTWFydGluQGpodS5lZHU+CisgICAgCisgICAgQ2xvc2VzOiAjNjAzMjkKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAzICsrKworIG1hbi9kcGtnLjEgICAgICAgfCAgIDEyICsrKysrKysrKysrKworIHNyYy9jb25maWd1cmUuYyAgfCAgIDEyICsrKysrKysrKystLQorIDMgZmlsZXMgY2hhbmdlZCwgMjUgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDZmMDM3MDAzZThiOTY4NzhiNDg1ZWZiN2NiZDFmODQ2ZTNiZjRlOTcKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgRmViIDIwIDA2OjI5OjQ4IDIwMTAgKzAxMDAKKworICAgIGRwa2c6IEFsd2F5cyBzcGF3biBhIG5ldyBzaGVsbCBvbiBjb25mZmlsZSBwcm9tcHQKKyAgICAKKyAgICBTdG9wIHN1cHBvcnRpbmcgc2VsZiBiYWNrZ3JvdW5kaW5nLCByZW1vdmUgRFBLR19OT19UU1RQIGVudmlyb25tZW50CisgICAgdmFyaWFibGUgc3VwcG9ydCwgYXMgd2UgYWx3YXlzIHNwYXduIGEgc2hlbGwgbm93LgorICAgIAorICAgIFRoaXMgd2lsbCBhbGxvdyBzZXR0aW5nIHVzZWZ1bCBlbnZpcm9ubWVudCB2YXJpYWJsZXMgZm9yIHRoZSB1c2VyIHRvIHVzZQorICAgIHdpdGggb3RoZXIgdG9vbHMuIEFuZCBpcyBsZXNzIGNvbmZ1c2luZywgYXMgdGhlIGFjdGlvbiB0byBnbyBiYWNrIHRvCisgICAgZHBrZyBkb2VzIG5vdCBkZXBlbmQgb24gaG93IGRwa2cgd2FzIHJ1bi4KKyAgICAKKyAgICBDbG9zZXM6ICMzODMzNAorCisgVE9ETyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAyIC0KKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICAgICAgICB8ICAgIDMgKysKKyBkb2MvUkVBRE1FLmZlYXR1cmUtcmVtb3ZhbC1zY2hlZHVsZSB8ICAgIDcgKysrKysKKyBsaWIvZHBrZy9kcGtnLmggICAgICAgICAgICAgICAgICAgICB8ICAgIDEgLQorIG1hbi9kcGtnLjEgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNiArLS0tCisgc3JjL2NvbmZpZ3VyZS5jICAgICAgICAgICAgICAgICAgICAgfCAgIDUwICsrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyA2IGZpbGVzIGNoYW5nZWQsIDMwIGluc2VydGlvbnMoKyksIDM5IGRlbGV0aW9ucygtKQorCitjb21taXQgZWNmMGI4NzIyNmYwZGI1NDU1MWUyZDM0ZmNhNmZhNDU1NDJmNTJhMgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBGZWIgMjAgMDY6MTY6MTEgMjAxMCArMDEwMAorCisgICAgZHNlbGVjdDogVXNlIG1fc3RyZHVwIGluc3RlYWQgb2YgdW5jaGVja2VkIG1hbGxvYyArIHN0cmNweQorICAgIAorICAgIFRoaXMgd291bGQgY2F1c2UgYSBzZWdmYXVsdCBpbiBhbiBPT00gc2l0dWF0aW9uLgorCisgZHNlbGVjdC9tYWluLmNjIHwgICAgNCArKy0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAzZTlmMjAyYmMxMjVlZWFmMjkxYzQ3NjEzZjVlNDI0OTMwNzdmZDQyCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IEZlYiAyMCAwNDo0MDo0NyAyMDEwICswMTAwCisKKyAgICBsaWJkcGtnOiBVbmlmeSBhbmQgbmFtZXNwYWNlIHBrZy1mb3JtYXQgZnVuY3Rpb25zIGFuZCB0eXBlcworICAgIAorICAgIFJlbmFtZXM6CisgICAgCisgICAgICBzdHJ1Y3QgbHN0aXRlbSDihpIgc3RydWN0IHBrZ19mb3JtYXRfbm9kZQorICAgICAgaXRlbXR5cGVfdCDihpIgZW51bSBwa2dfZm9ybWF0X3R5cGUKKyAgICAgIGFsbG9jbHN0aXRlbSgpIOKGkiBwa2dfZm9ybWF0X25vZGVfbmV3KCkKKyAgICAgIHBhcnNlZm9ybWF0KCkg4oaSIHBrZ19mb3JtYXRfcGFyc2UoKQorICAgICAgZnJlZWZvcm1hdCgpIOKGkiBwa2dfZm9ybWF0X2ZyZWUoKQorICAgICAgc2hvdzFwYWNrYWdlKCkg4oaSIHBrZ19mb3JtYXRfc2hvdygpCisKKyBkcGtnLWRlYi9pbmZvLmMgICAgICAgfCAgICA0ICsrLS0KKyBsaWIvZHBrZy9wa2ctZm9ybWF0LmMgfCAgIDQ4ICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIGxpYi9kcGtnL3BrZy1mb3JtYXQuaCB8ICAgMTAgKysrKystLS0tLQorIHNyYy9xdWVyeS5jICAgICAgICAgICB8ICAgIDggKysrKy0tLS0KKyA0IGZpbGVzIGNoYW5nZWQsIDM1IGluc2VydGlvbnMoKyksIDM1IGRlbGV0aW9ucygtKQorCitjb21taXQgNmFkYTk4ZmU1MjJkZGZiMTk3MjkyZThkNWZlODI0OWVhYjMyMDU5NAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBGZWIgMjAgMDQ6Mjk6MTUgMjAxMCArMDEwMAorCisgICAgbGliZHBrZzogTW92ZSBwYWNrYWdlIGZvcm1hdHRpbmcgc3VwcG9ydCB0byBhIG5ldyBwa2ctZm9ybWF0IG1vZHVsZQorICAgIAorICAgIE1vdmUgZGVjbGFyYXRpb25zIGZyb20gZHBrZy1kYi5oIHRvIGEgbmV3IHBrZy1mb3JtYXQuaCwgYW5kIHJlbmFtZQorICAgIHNob3dwa2cuYyB0byBwa2ctZm9ybWF0LmMuCisKKyBkcGtnLWRlYi9pbmZvLmMgICAgICAgICAgICAgICAgICAgICAgfCAgICAxICsKKyBsaWIvZHBrZy9NYWtlZmlsZS5hbSAgICAgICAgICAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvZHBrZy1kYi5oICAgICAgICAgICAgICAgICAgIHwgICAgOSAtLS0tLS0tLQorIGxpYi9kcGtnL3tzaG93cGtnLmMgPT4gcGtnLWZvcm1hdC5jfSB8ICAgIDMgKy0KKyBsaWIvZHBrZy9wa2ctZm9ybWF0LmggICAgICAgICAgICAgICAgfCAgIDM4ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKKyBwby9QT1RGSUxFUy5pbiAgICAgICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgc3JjL3F1ZXJ5LmMgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMSArCisgNyBmaWxlcyBjaGFuZ2VkLCA0NCBpbnNlcnRpb25zKCspLCAxMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDUxMzIzMjMxMDgyYzM0ZmU4Nzc3MTUwMjU5M2FhZTUwZTYwMWVhMDQKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgRmViIDE5IDE5OjIwOjExIDIwMTAgKzAxMDAKKworICAgIGxpYmRwa2c6IFJldmVydCBsaWNlbnNlIGNoYW5nZSB0byBHUEwyKworICAgIAorICAgIFRoZSBmaWxlIGxpYi9kcGtnL3Nob3dwa2cuYyB1c2VkIHRvIGJlIEdQTC0yKyB3aXRoIGFsbCBjb21taXRzIHdpdGgKKyAgICBjb3B5cmlnaHQgYnkgV2ljaGVydCBBa2tlcm1hbiwgdW50aWwgY29tbWl0IDZlMWViNzFlYmZmYmJhY2EyZTRiYyB3aGVuCisgICAgaXQgZ290IGNoYW5nZWQgdG8gR1BMLTIgb25seS4KKyAgICAKKyAgICBDaGFuZ2VzIGFmdGVyd2FyZHMgYnk6CisgICAgCisgICAgICBXaWNoZXJ0IEFra2VybWFuICh0cml2aWFsIGNoYW5nZSk6CisgICAgCisgICAgICAgIGNvbW1pdCBkNWU2NTZkOTogUmVtb3ZhbCBvZiBhbiBpbmNsdWRlLgorICAgIAorICAgICAgQWRhbSBIZWF0aCAodHJpdmlhbCBjaGFuZ2VzKToKKyAgICAKKyAgICAgICAgY29tbWl0IGRiY2I3NDQ5OiBSZW9yZGVyIGFuIGluY2x1ZGU7CisgICAgICAgIGNvbW1pdCBhMWQ5ZGM0NjogQWRkIGEgbWlzc2luZyDigJx2b2lk4oCdOworICAgICAgICAgICAgICAgICAgICAgICAgIE1hY3JvaWZ5IHRoZSB1bnVzZWQgZHVtcGNoYWluIHRvIGF2b2lkIGEgd2FybmluZywKKyAgICAgICAgICAgICAgICAgICAgICAgICBjb2RlIGVudGlyZWx5IHJlbW92ZWQgaW4gY29tbWl0IDA3MTYyMDY4LgorICAgIAorICAgICAgRnJhbmsgTGljaHRlbmhlbGQgKHNldmVyYWwgY2hhbmdlcykKKyAgICAKKyAgICAgIFBpZXJyZSBIYWJvdXppdCAodHJpdmlhbCBjaGFuZ2UpOgorICAgIAorICAgICAgICBjb21taXQgOGFkNDdmZTU6IEFkZCBhICd6JyB0byBhIGZvcm1hdCBzdHJpbmcuCisgICAgCisgICAgICBHdWlsbGVtIEpvdmVyIChzZXZlcmFsIGNoYW5nZXMpCisgICAgCisgICAgU28gd2l0aCBhcHByb3ZhbCBmcm9tIEZyYW5rIGFuZCBteXNlbGYsIGxldCdzIHJldmVydCB0aGUgbGljZW5zZSBjaGFuZ2UKKyAgICBpbiA2ZTFlYjcxZWJmZmJiYWNhMmU0YmMuCisgICAgCisgICAgU2lnbmVkLW9mZi1ieTogRnJhbmsgTGljaHRlbmhlbGQgPGRqcGlnQGRlYmlhbi5vcmc+CisgICAgU2lnbmVkLW9mZi1ieTogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisgbGliL2Rwa2cvc2hvd3BrZy5jIHwgICAgNSArKystLQorIDEgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgNTMxNzE2MzZkY2UxNjM0ZjlkZDNjOTY2MDJlNGZjYWZlZTAyNTg0NworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBGZWIgMTkgMTU6MzM6NDMgMjAxMCArMDEwMAorCisgICAgbGliZHBrZy1wZXJsOiBGaXggQ2Fub25pY2FsIGNvcHlyaWdodCBzdGF0ZW1lbnQKKyAgICAKKyAgICBUaGUgd29yayBDb2xpbiBkaWQgd2FzIHVuZGVyIENhbm9uaWNhbCdzIHRpbWUuCisgICAgCisgICAgU2lnbmVkLW9mZi1ieTogQ29saW4gV2F0c29uIDxjandhdHNvbkB1YnVudHUuY29tPgorICAgIFNpZ25lZC1vZmYtYnk6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworIHNjcmlwdHMvRHBrZy9WZW5kb3IvVWJ1bnR1LnBtIHwgICAgMyArKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDE4MTY5YTNlY2FjM2M0N2QxYzBjZGUyZWFhOTNiY2UxOThkMjY0MjEKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgRmViIDI0IDE5OjU5OjI5IDIwMTAgKzAxMDAKKworICAgIGRwa2ctc291cmNlLCBkcGtnLWdlbmNoYW5nZXM6IHNwbGl0IEJpbmFyeSBsaW5lcyBhdCBsZXNzIHRoYW4gOTgwIGNoYXJzCisgICAgCisgICAgU3BsaXR0aW5nIG9uIHRoZSBmaXJzdCBzcGFjZSBhZnRlciA5ODAgY2hhcmFjdGVycyB3YXMgbm90IGVub3VnaCBhcworICAgIHBhY2thZ2UgbmFtZXMgY2FuIGJlIHF1aXRlIGxvbmcgYW5kIHRoZSByZWFsIGxpbWl0IGlzIG5vdCAxMDI0IGNoYXJzCisgICAgYnV0IHJhdGhlciA5OTIgY2hhcnMgZm9yIGVtYWlsIGV4Y2hhbmdlLgorICAgIAorICAgIEV4YW1wbGUgb2YgcHJvYmxlbWF0aWMgY2hhbmdlczoKKyAgICBodHRwOi8vbGlzdHMuZGViaWFuLm9yZy9kZWJpYW4tZGV2ZWwtY2hhbmdlcy8yMDEwLzAyL21zZzAxMDkwLmh0bWwKKyAgICAKKyAgICBXZSBub3cgc3BsaXQgb24gdGhlIGxhc3Qgc3BhY2UgYmVmb3JlIHRoZSA5ODAgY2hhcnMgbGltaXQuCisKKyBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbCB8ICAgIDIgKy0KKyBzY3JpcHRzL2Rwa2ctc291cmNlLnBsICAgICB8ICAgIDIgKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IGQzM2ZhOGYxOTcyMjFjODQyMmVlMTRkYzM2OTU1ZTU4ZmViZmEzZDQKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgRmViIDI0IDE3OjI2OjM2IDIwMTAgKzAxMDAKKworICAgIERwa2c6OkJ1aWxkT3B0aW9uczogcHJvdmlkZSBhbiBvYmplY3Qgb3JpZW50ZWQgaW50ZXJmYWNlCisgICAgCisgICAgQWxzbyB1cGRhdGUgdGhlIHRlc3Qtc3VpdGUgYW5kIGRwa2ctYnVpbGRwYWNrYWdlIHRvIG1hdGNoIHRoZSBuZXcgQVBJLgorICAgIEluY3JlYXNlICRWRVJTSU9OIHRvIDEuMDAgc2luY2UgaXQncyBzdXBwb3NlZCB0byBiZSBhIHN0YWJsZSBBUEkgbm93LgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICAgICAgIHwgICAgMSArCisgc2NyaXB0cy9EcGtnL0J1aWxkT3B0aW9ucy5wbSAgICAgIHwgIDE3OSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0KKyBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsICAgICAgfCAgIDEwICstCisgc2NyaXB0cy90LzMwMF9EcGtnX0J1aWxkT3B0aW9ucy50IHwgICA2MiArKysrKysrLS0tLS0tCisgNCBmaWxlcyBjaGFuZ2VkLCAxODcgaW5zZXJ0aW9ucygrKSwgNjUgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA3ZmUwMGE5MDQzZjNmNzBjOTgzYzUyNWQ4NjAwN2UzNjMwMWNmMDhiCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIEZlYiAyMyAxNzo0NDoxNiAyMDEwICswMTAwCisKKyAgICBVcGRhdGUgRHBrZzo6Q29uZiB0byB1c2UgRHBrZzo6SW50ZXJmYWNlOjpTdG9yYWJsZQorICAgIAorICAgIEFuZCBjb21wbGV0ZSBkb2N1bWVudGF0aW9uLiBGaXggZHBrZy1zb3VyY2UgdG8gc3RpbGwgZGlzcGxheSBvcHRpb25zCisgICAgb24gYSBzaW5nbGUgbGluZS4KKworIHNjcmlwdHMvRHBrZy9Db25mLnBtICAgfCAgIDY5ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tCisgc2NyaXB0cy9kcGtnLXNvdXJjZS5wbCB8ICAgIDIgKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDU0IGluc2VydGlvbnMoKyksIDE3IGRlbGV0aW9ucygtKQorCitjb21taXQgYmI3MDIwNGM5ODE2NDc5YWU1NmUzYmIwODdmMTRkODliYzA1ZTQ2NgorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBGZWIgMjMgMTY6NTA6MTcgMjAxMCArMDEwMAorCisgICAgZHBrZy1zb3VyY2U6IG5ldyBvcHRpb25zIC0tZXh0ZW5kLWRpZmYtaWdub3JlLCAtLWRpZmYtaWdub3JlLCAtLXRhci1pZ25vcmUKKyAgICAKKyAgICAtLWV4dGVuZC1kaWZmLWlnbm9yZSBpcyBhIHRydWx5IG5ldyBvcHRpb24gd2hpbGUgdGhlIG90aGVycyBhcmUgbG9uZyBuYW1lcworICAgIGZvciB0aGUgZXhpc3RpbmcgLWkgYW5kIC1JIG9wdGlvbnMuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgIHwgICAgMyArKysKKyBtYW4vZHBrZy1zb3VyY2UuMSAgICAgIHwgICAxMSArKysrKysrKystLQorIHNjcmlwdHMvZHBrZy1zb3VyY2UucGwgfCAgICA4ICsrKysrLS0tCisgMyBmaWxlcyBjaGFuZ2VkLCAxNyBpbnNlcnRpb25zKCspLCA1IGRlbGV0aW9ucygtKQorCitjb21taXQgMDc1MjJkZTdkNjk1N2JhMDJhZTE5NWNmMTgwMTQxZDkzZGNjZjYwZAorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBGZWIgMjIgMTU6NDU6MTIgMjAxMCArMDEwMAorCisgICAgRW5oYW5jZSBkcGtnJ3MgZXJyb3IgbWVzc2FnZSBhYm91dCBwcm9ncmFtcyBtaXNzaW5nIGZyb20gdGhlIFBBVEgKKyAgICAKKyAgICBUcmlnZ2VyZWQgYnkgaHR0cHM6Ly9idWdzLm1hZW1vLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDEwMworCisgc3JjL2hlbHAuYyB8ICAgIDcgKysrKy0tLQorIDEgZmlsZXMgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQorCitjb21taXQgMzAyZDFmMWRjYWE5NmZiZmJmYzhiNWZlMjliYWJkZDM0MmE3N2Y1NAorQXV0aG9yOiBIZWxnZSBLcmV1dHptYW5uIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KK0RhdGU6ICAgU3VuIEZlYiAyMSAyMjo1NDo0MyAyMDEwICswMTAwCisKKyAgICBVcGRhdGUgR2VybWFuIHNjcmlwdHMgdHJhbnNsYXRpb24KKyAgICAKKyAgICBVcGRhdGUgdG8gNDk5dC4KKworIHNjcmlwdHMvcG8vZGUucG8gfCAgIDEwICsrKysrKysrKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDkgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDYxYWIwMGY2NzVkZmY0ODM3YzM4NjA3NWEwYjgzNWRlMjYzNzAyZmQKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gRmViIDIxIDExOjU4OjQwIDIwMTAgKzAxMDAKKworICAgIGRwa2ctc291cmNlOiBuZXcgb3B0aW9uIC0tY3JlYXRlLWVtcHR5LW9yaWcgaW4gZm9ybWF0cyAiMi4wIiBhbmQgIjMuMCAocXVpbHQpIgorICAgIAorICAgIFdpdGggdGhpcyBvcHRpb24sIGRwa2ctc291cmNlIHdpbGwgYXV0by1jcmVhdGUgdGhlIG1haW4gb3JpZ2luYWwgdGFyYmFsbAorICAgIHdoZW4gaXQncyBtaXNzaW5nIGFuZCB3aGVuIHRoZXJlIGFyZSBzdXBwbGVtZW50YXJ5IHRhcmJhbGxzLiBUaGlzIG1ha2VzIGl0CisgICAgZWFzaWVyIHRvIGJ1bmRsZSBtdWx0aXBsZSBzb2Z0d2FyZSB0b2dldGhlci4KKyAgICAKKyAgICBkcGtnLXNvdXJjZSBuZWVkcyB0byBiZSBtb2RpZmllZCBzaW5jZSB0aGUgb3B0aW9ucyBoYXZlIHRvIGJlIHBhcnNlZAorICAgIGJlZm9yZSBjYW5fYnVpbGQoKSBpcyBjYWxsZWQuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICAgICAgfCAgICA0ICsrKysKKyBtYW4vZHBrZy1zb3VyY2UuMSAgICAgICAgICAgICAgICAgfCAgICA2ICsrKysrKworIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbSAgICB8ICAgMTUgKysrKysrKysrKy0tLS0tCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtIHwgICAyMSArKysrKysrKysrKysrKysrKystLS0KKyBzY3JpcHRzL2Rwa2ctc291cmNlLnBsICAgICAgICAgICAgfCAgICA3ICsrKy0tLS0KKyA1IGZpbGVzIGNoYW5nZWQsIDQxIGluc2VydGlvbnMoKyksIDEyIGRlbGV0aW9ucygtKQorCitjb21taXQgYTE3NTcwMzgzY2RhYzVkMTNjZmY0YzBlMDQ2OWYyMmE4NTk0ZWUyMworQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBGZWIgMjEgMTE6MDQ6MDIgMjAxMCArMDEwMAorCisgICAgZHBrZy1nZW5jb250cm9sLCBkcGtnLWdlbmNoYW5nZXMsIGRwa2ctc291cmNlOiBzdXBwb3J0IG11bHRpcGxlIC1UIG9wdGlvbnMKKyAgICAKKyAgICBJdCBhbGxvd3MgdG8gcmVhZCBzdWJzdGl0dXRpb24gdmFyaWFibGVzIGZyb20gbXVsdGlwbGUgZmlsZXMuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICB8ICAgIDMgKysrCisgbWFuL2Rwa2ctZ2VuY2hhbmdlcy4xICAgICAgfCAgICA0ICsrKy0KKyBtYW4vZHBrZy1nZW5jb250cm9sLjEgICAgICB8ICAgIDIgKysKKyBtYW4vZHBrZy1zb3VyY2UuMSAgICAgICAgICB8ICAgIDMgKystCisgc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGwgfCAgICA3ICsrKystLS0KKyBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbCB8ICAgIDkgKysrKystLS0tCisgc2NyaXB0cy9kcGtnLXNvdXJjZS5wbCAgICAgfCAgICA0ICstLS0KKyA3IGZpbGVzIGNoYW5nZWQsIDIwIGluc2VydGlvbnMoKyksIDEyIGRlbGV0aW9ucygtKQorCitjb21taXQgNjQ3ZGVlNDY5Yjk0ZmFjNjljZjk4Y2M4YmMzNjM5MGRmMjk0MTM3ZAorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBGZWIgMjEgMTA6MzM6MjUgMjAxMCArMDEwMAorCisgICAgZHBrZy1idWlsZHBhY2thZ2U6IHN1cHBvcnQgcGFzc2luZyBhcmJpdHJhcnkgb3B0aW9ucyB0byBkcGtnLXNvdXJjZS9kcGtnLWdlbmNoYW5nZXMKKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgICAgfCAgICAzICsrCisgbWFuL2Rwa2ctYnVpbGRwYWNrYWdlLjEgICAgICB8ICAgIDYgKysrKworIHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGwgfCAgIDY1ICsrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMyBmaWxlcyBjaGFuZ2VkLCAzOSBpbnNlcnRpb25zKCspLCAzNSBkZWxldGlvbnMoLSkKKworY29tbWl0IDFlZjIxMjg4NTVkZGQ2ZDQ1NGIwYTEyMmI2ZWJjNjAyZGYyZGY0MzMKK0F1dGhvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitEYXRlOiAgIFN1biBGZWIgMjEgMTM6Mjg6NTQgMjAxMCArMDEwMAorCisgICAgVXBkYXRlIEdlcm1hbiB0cmFuc2xhdGlvbiBvZiBtYW51YWwgcGFnZXMKKyAgICAKKyAgICBVcGRhdGUgdG8gMTY5OXQ0Zjc2dS4KKworIG1hbi9wby9kZS5wbyB8ICAxMTggKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA0MiBpbnNlcnRpb25zKCspLCA3NiBkZWxldGlvbnMoLSkKKworY29tbWl0IDJjM2E1M2IxY2U3NGFkZGRiNzEzZTlkNmQ0ZTVlNjAwNWVmMmFiYTgKK0F1dGhvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitEYXRlOiAgIFN1biBGZWIgMjEgMTM6MTg6MTcgMjAxMCArMDEwMAorCisgICAgQWRkIGRwa2ctZ2Vuc3ltYm9scy4xIHRvIHRoZSB0cmFuc2xhdGFibGUgbWFuIHBhZ2Ugc2V0CisgICAgCisgICAgYW5kIHVwZGF0ZSBhbGwgcG8gZmlsZXMgYWNjb3JkaW5nbHkuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgIHwgICAgMyArCisgbWFuL3BvL2RlLnBvICAgICAgICB8IDIwMDEgKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tCisgbWFuL3BvL2Rwa2ctbWFuLnBvdCB8IDE2ODggKysrKysrKysrKysrKysrKysrKystLS0tLS0KKyBtYW4vcG8vZXMucG8gICAgICAgIHwgMTgyOCArKysrKysrKysrKysrKysrKysrKysrLS0tLS0tCisgbWFuL3BvL2ZyLnBvICAgICAgICB8IDM0MDAgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tCisgbWFuL3BvL2h1LnBvICAgICAgICB8IDE4MzkgKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLQorIG1hbi9wby9qYS5wbyAgICAgICAgfCAxODQyICsrKysrKysrKysrKysrKysrKysrKystLS0tLS0KKyBtYW4vcG8vcGwucG8gICAgICAgIHwgMTkxMSArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLQorIG1hbi9wby9wbzRhLmNmZyAgICAgfCAgICA1ICsKKyBtYW4vcG8vcHRfQlIucG8gICAgIHwgMTg0MSArKysrKysrKysrKysrKysrKysrKysrLS0tLS0tCisgbWFuL3BvL3J1LnBvICAgICAgICB8IDE4NDMgKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLQorIG1hbi9wby9zdi5wbyAgICAgICAgfCAxOTgzICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLQorIDEyIGZpbGVzIGNoYW5nZWQsIDE1NDY1IGluc2VydGlvbnMoKyksIDQ3MTkgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAxNjQ1MTA0NzlhYmYzZGQwY2NkZWU1N2FkYjY0NzU4OWExMjczM2E5CitBdXRob3I6IEhlbGdlIEtyZXV0em1hbm4gPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorRGF0ZTogICBTdW4gRmViIDIxIDEwOjAwOjQwIDIwMTAgKzAxMDAKKworICAgIFVwZGF0ZSBHZXJtYW4gc2NyaXB0cyB0cmFuc2xhdGlvbgorICAgIAorICAgIFVwZGF0ZSB0byA0OTl0LgorCisgc2NyaXB0cy9wby9kZS5wbyB8ICAgNjAgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDUxIGluc2VydGlvbnMoKyksIDkgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBjOWNjZDM3MmZiOTY1NTQ5M2NkNTI3YzM3ZTUxYTdiZDAzNTM3MGNjCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIEZlYiAyMSAwMjozOTo0NCAyMDEwICswMTAwCisKKyAgICBkcGtnLWdlbmNvbnRyb2w6IG5vdyBpbmRpY2F0ZXMgd2hpY2ggcGFja2FnZSBpcyBjb25jZXJuZWQgYnkgdGhlIHN1YnN0dmFycyB3YXJuaW5ncworICAgIAorICAgIEVuaGFuY2UgRHBrZzo6U3Vic3R2YXJzdCB0byBiZSBhYmxlIHRvIGRpc3BsYXkgYSBwcmVmaXggYmVmb3JlIGl0cworICAgIHdhcm5pbmdzIGFuZCBlcnJvcnMgYW5kIG1ha2UgdXNlIG9mIHRoYXQgZmFjaWxpdHkgaW4gZHBrZy1nZW5jb250cm9sIHRvIGJlCisgICAgZXhwbGljaXQgYWJvdXQgd2hlcmUgdGhlIHN1YnN0aXR1dGlvbiBpcyBkb25lLgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICB8ICAgIDIgKysKKyBzY3JpcHRzL0Rwa2cvQ29udHJvbC9IYXNoLnBtIHwgICAgNCArKy0tCisgc2NyaXB0cy9EcGtnL1N1YnN0dmFycy5wbSAgICB8ICAgMjggKysrKysrKysrKysrKysrKysrKysrKystLS0tLQorIHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsICAgfCAgICA2ICsrKystLQorIDQgZmlsZXMgY2hhbmdlZCwgMzEgaW5zZXJ0aW9ucygrKSwgOSBkZWxldGlvbnMoLSkKKworY29tbWl0IDUxNzQxMDQ5YjVkOGRmNjQ4ZTZhMDhmNjYzYmY4N2M0YjVmMDA1MjkKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gRmViIDIxIDAyOjA0OjEzIDIwMTAgKzAxMDAKKworICAgIGRwa2ctZ2VuY29udHJvbDogbm8gbG9uZ2VyIHdhcm5zIGlmIGEgc3Vic3R2YXIgcHJvdmlkZWQgYnkgLVYgaXMgbm90IHVzZWQKKyAgICAKKyAgICBUaGUgd2FybmluZyBpcyBtZWFudCB0byBjYXRjaCB1bnVzZWQgc3Vic3RpdHV0aW9ucyBjb21pbmcgZnJvbSB0aGUgZmlsZQorICAgIGFuZCB0aGUgZmlsZSBpcyBwYWNrYWdlIHNwZWNpZmljIHdpdGggZGViaGVscGVyLgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgfCAgICAzICsrKworIHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsIHwgICAgMSArCisgMiBmaWxlcyBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAwNjNmMDU2NWRjZGYwNjliN2Y5NjI0YzIzN2VkN2ZjZTEwNTcxODg3CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIEZlYiAyMSAwMTozNDowMCAyMDEwICswMTAwCisKKyAgICBkcGtnLWdlbmNvbnRyb2w6IGRvbid0IGFjY2VwdCBhcmNoLXNwZWNpZmljIGRlcGVuZGVuY2llcyBpbiBhcmNoOiBhbGwgcGFja2FnZXMKKyAgICAKKyAgICBTaW5jZSBhbiBhcmNoaXRlY3R1cmUgYWxsIHBhY2thZ2UgaXMgc2hhcmVkIG9uIGFsbCBhcmNoaXRlY3R1cmVzLCBpdHMKKyAgICBkZXBlbmRlbmN5IGxpbmVzIGNhbid0IGJlIHNpbXBsaWZpZWQgd2l0aCB0aGUga25vd2xlZGdlIG9mIHRoZSBjdXJyZW50IGhvc3QKKyAgICBhcmNoaXRlY3R1cmUuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICB8ICAgIDIgKysKKyBzY3JpcHRzL0Rwa2cvRGVwcy5wbSAgICAgICB8ICAgMjUgKysrKysrKysrKysrKysrKysrKysrKysrKworIHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsIHwgICAxMCArKysrKysrKy0tCisgMyBmaWxlcyBjaGFuZ2VkLCAzNSBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgMjc4YTEyYjk0MWQ4MDAxZWRmNjZkNjFlYTJmZTdlZTBlZmY5YTRhOAorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBGZWIgMjEgMDE6MTI6NTIgMjAxMCArMDEwMAorCisgICAgRml4IHR5cG8gb3ZlcnJpZGVuIC0+IG92ZXJyaWRkZW4gaW4gbXVsdGlwbGUgcGxhY2VzCisKKyBtYW4vZGViLWV4dHJhLW92ZXJyaWRlLjUgfCAgICA0ICsrLS0KKyBtYW4vZHBrZy1hcmNoaXRlY3R1cmUuMSAgfCAgICAyICstCisgbWFuL2Rwa2ctYnVpbGRwYWNrYWdlLjEgIHwgICAgNCArKy0tCisgbWFuL3BvL2RlLnBvICAgICAgICAgICAgIHwgICAxMCArKysrKy0tLS0tCisgbWFuL3BvL2Rwa2ctbWFuLnBvdCAgICAgIHwgICAxMCArKysrKy0tLS0tCisgbWFuL3BvL2VzLnBvICAgICAgICAgICAgIHwgICAxMCArKysrKy0tLS0tCisgbWFuL3BvL2ZyLnBvICAgICAgICAgICAgIHwgICAxMCArKysrKy0tLS0tCisgbWFuL3BvL2h1LnBvICAgICAgICAgICAgIHwgICAxMCArKysrKy0tLS0tCisgbWFuL3BvL2phLnBvICAgICAgICAgICAgIHwgICAxMCArKysrKy0tLS0tCisgbWFuL3BvL3BsLnBvICAgICAgICAgICAgIHwgICAxMCArKysrKy0tLS0tCisgbWFuL3BvL3B0X0JSLnBvICAgICAgICAgIHwgICAxMCArKysrKy0tLS0tCisgbWFuL3BvL3J1LnBvICAgICAgICAgICAgIHwgICAxMCArKysrKy0tLS0tCisgbWFuL3BvL3N2LnBvICAgICAgICAgICAgIHwgICAxMCArKysrKy0tLS0tCisgMTMgZmlsZXMgY2hhbmdlZCwgNTUgaW5zZXJ0aW9ucygrKSwgNTUgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAwODk4ZWEwMDQ4ZmQ5NDM0OWY0YmNmMDA2OGIyMjEwNGQ5NzIxN2UzCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIEZlYiAyMSAwMTowNDowMiAyMDEwICswMTAwCisKKyAgICBEcGtnOjpTb3VyY2U6IGZpeCBwYXJzaW5nIG9mIGRpZmYncyBvdXRwdXQgdG8gYmUgUE9TSVgtY29tcGxpYW50CisgICAgCisgICAgV2hpbGUgcGFyc2luZyBkaWZmJ3Mgb3V0cHV0LCBhY2NlcHQgYW55IHNlbnRlbmNlIHRoYXQgY29udGFpbnMgdGhlIHdvcmQKKyAgICBkaWZmZXIgKGFzIHNwZWNpZmllZCBieSBQT1NJWCkgdG8gaWRlbnRpZnkgdGhhdCBiaW5hcnkgZmlsZXMgY291bGQKKyAgICBub3QgYmUgY29tcGFyZWQuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICAgICB8ICAgIDMgKysrCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9GdW5jdGlvbnMucG0gfCAgICA1ICsrKystCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbSAgICAgfCAgICAyICstCisgMyBmaWxlcyBjaGFuZ2VkLCA4IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAxNjY5ZTE0OGI4NTY4ODEwYjdkY2ZjMmIzZDk0NTE3YzBhYTZmNGFmCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IEZlYiAyMCAwNzowNjoyNyAyMDEwICswMTAwCisKKyAgICBwbzogQWRkIG1pc3NpbmcgZmlsZXMgdG8gUE9URklMRVMKKworIHBvL1BPVEZJTEVTLmluICAgICAgICAgfCAgICAxICsKKyBzY3JpcHRzL3BvL1BPVEZJTEVTLmluIHwgICAgNyArKysrKysrCisgMiBmaWxlcyBjaGFuZ2VkLCA4IGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBiMDY2NjEwYjM5NGJmZTA2YjhhZjVlZmIwYTM0YzJiNTZjODY1NzA1CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIEZlYiAyMSAwMToyNzo1NSAyMDEwICswMTAwCisKKyAgICBkcGtnLWRlYjogRml4IGRvdWJsZSBmcmVlIGluIC0taW5mbworICAgIAorICAgIENoYW5nZSB0aGUgY29kZSB0byBub3QgaW5jcmVhc2UgY2RsaXN0LCBhbmQgaW5zdGVhZCBpbmRleCBpdCwgc28gdGhhdAorICAgIHdlIGNhbiBmcmVlIGl0IGF0IHRoZSBlbmQuCisgICAgCisgICAgUmVncmVzc2lvbiBpbnRyb2R1Y2VkIGluIGNvbW1pdCBjMjY0ZGQ4M2QzMzI1MDkyN2ZlMTY1ZGU1MzM2MTQ1YWZkZjk5NjEwLgorCisgZHBrZy1kZWIvaW5mby5jIHwgICAgNiArKystLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworY29tbWl0IDFkMjI5OTI1ODNmMDAxMDAwN2RhMTRjZTM4NWU3MmVlMTNhOWE4NGYKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gRmViIDIxIDAwOjQ1OjAwIDIwMTAgKzAxMDAKKworICAgIEFkZCAkVkVSU0lPTiBudW1iZXJzIHRvIGFsbCBwZXJsIG1vZHVsZXMKKyAgICAKKyAgICBNb2R1bGVzIHdob3NlIEFQSSBzaG91bGQgYmUgc3RhYmxlIGhhdmUgYSB2ZXJzaW9uIDEuMDAuCisgICAgVGhlIG1vZHVsZXMgd2l0aCB2ZXJzaW9uIDAuMDEgYXJlIGV4cGVjdGVkIHRvIGhhdmUgZnVydGhlciBBUEkKKyAgICBjaGFuZ2VzIGluIHRoZSAobmVhcikgZnV0dXJlIG9yIGFyZSBkZWVtZWQgdG8gYmUgdXNlZnVsIG1vc3RseQorICAgIGZvciBkcGtnLWRldidzIGludGVybmFsIHVzYWdlLgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDIgKysKKyBzY3JpcHRzL0Rwa2cucG0gICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMiArKworIHNjcmlwdHMvRHBrZy9BcmNoLnBtICAgICAgICAgICAgICAgICAgICAgfCAgICAyICsrCisgc2NyaXB0cy9EcGtnL0J1aWxkT3B0aW9ucy5wbSAgICAgICAgICAgICB8ICAgIDIgKysKKyBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtICAgICAgICAgICAgICAgIHwgICAgMiArKworIHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRGViaWFuLnBtICAgICAgICAgfCAgICAyICsrCisgc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9FbnRyeS5wbSAgICAgICAgICB8ICAgIDIgKysKKyBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0VudHJ5L0RlYmlhbi5wbSAgIHwgICAgMiArKworIHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvUGFyc2UucG0gICAgICAgICAgfCAgICAyICsrCisgc2NyaXB0cy9EcGtnL0NoZWNrc3Vtcy5wbSAgICAgICAgICAgICAgICB8ICAgIDIgKysKKyBzY3JpcHRzL0Rwa2cvQ29tcHJlc3Npb24ucG0gICAgICAgICAgICAgIHwgICAgMyArKysKKyBzY3JpcHRzL0Rwa2cvQ29tcHJlc3Npb24vRmlsZUhhbmRsZS5wbSAgIHwgICAgMiArKworIHNjcmlwdHMvRHBrZy9Db21wcmVzc2lvbi9Qcm9jZXNzLnBtICAgICAgfCAgICAyICsrCisgc2NyaXB0cy9EcGtnL0NvbmYucG0gICAgICAgICAgICAgICAgICAgICB8ICAgIDIgKysKKyBzY3JpcHRzL0Rwa2cvQ29udHJvbC5wbSAgICAgICAgICAgICAgICAgIHwgICAgMiArKworIHNjcmlwdHMvRHBrZy9Db250cm9sL0NoYW5nZWxvZy5wbSAgICAgICAgfCAgICAyICsrCisgc2NyaXB0cy9EcGtnL0NvbnRyb2wvRmllbGRzLnBtICAgICAgICAgICB8ICAgIDIgKysKKyBzY3JpcHRzL0Rwa2cvQ29udHJvbC9IYXNoLnBtICAgICAgICAgICAgIHwgICAgMiArKworIHNjcmlwdHMvRHBrZy9Db250cm9sL0luZm8ucG0gICAgICAgICAgICAgfCAgICAyICsrCisgc2NyaXB0cy9EcGtnL0RlcHMucG0gICAgICAgICAgICAgICAgICAgICB8ICAgIDIgKysKKyBzY3JpcHRzL0Rwa2cvRXJyb3JIYW5kbGluZy5wbSAgICAgICAgICAgIHwgICAgNSArKysrKworIHNjcmlwdHMvRHBrZy9FeGl0LnBtICAgICAgICAgICAgICAgICAgICAgfCAgICAyICsrCisgc2NyaXB0cy9EcGtnL0dldHRleHQucG0gICAgICAgICAgICAgICAgICB8ICAgIDIgKysKKyBzY3JpcHRzL0Rwa2cvSVBDLnBtICAgICAgICAgICAgICAgICAgICAgIHwgICAgMiArKworIHNjcmlwdHMvRHBrZy9JbmRleC5wbSAgICAgICAgICAgICAgICAgICAgfCAgICAyICsrCisgc2NyaXB0cy9EcGtnL0ludGVyZmFjZS9TdG9yYWJsZS5wbSAgICAgICB8ICAgIDIgKysKKyBzY3JpcHRzL0Rwa2cvUGF0aC5wbSAgICAgICAgICAgICAgICAgICAgIHwgICAgMiArKworIHNjcmlwdHMvRHBrZy9TaGxpYnMucG0gICAgICAgICAgICAgICAgICAgfCAgICAyICsrCisgc2NyaXB0cy9EcGtnL1NobGlicy9DcHBmaWx0LnBtICAgICAgICAgICB8ICAgIDMgKysrCisgc2NyaXB0cy9EcGtnL1NobGlicy9PYmpkdW1wLnBtICAgICAgICAgICB8ICAgIDIgKysKKyBzY3JpcHRzL0Rwa2cvU2hsaWJzL1N5bWJvbC5wbSAgICAgICAgICAgIHwgICAgMyArKysKKyBzY3JpcHRzL0Rwa2cvU2hsaWJzL1N5bWJvbEZpbGUucG0gICAgICAgIHwgICAgMyArKysKKyBzY3JpcHRzL0Rwa2cvU291cmNlL0FyY2hpdmUucG0gICAgICAgICAgIHwgICAgMiArKworIHNjcmlwdHMvRHBrZy9Tb3VyY2UvRnVuY3Rpb25zLnBtICAgICAgICAgfCAgICAyICsrCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtICAgICAgICAgICB8ICAgIDIgKysKKyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG0gICAgICAgIHwgICAgMiArKworIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbSAgICAgICAgfCAgICAyICsrCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2J6ci5wbSAgICB8ICAgIDIgKysKKyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvY3VzdG9tLnBtIHwgICAgMiArKworIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9naXQucG0gICAgfCAgICAyICsrCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL25hdGl2ZS5wbSB8ICAgIDIgKysKKyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG0gIHwgICAgMiArKworIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG0gICAgICAgICAgICAgfCAgICAyICsrCisgc2NyaXB0cy9EcGtnL1N1YnN0dmFycy5wbSAgICAgICAgICAgICAgICB8ICAgIDIgKysKKyBzY3JpcHRzL0Rwa2cvVmFycy5wbSAgICAgICAgICAgICAgICAgICAgIHwgICAgMiArKworIHNjcmlwdHMvRHBrZy9WZW5kb3IucG0gICAgICAgICAgICAgICAgICAgfCAgICAyICsrCisgc2NyaXB0cy9EcGtnL1ZlbmRvci9EZWJpYW4ucG0gICAgICAgICAgICB8ICAgIDIgKysKKyBzY3JpcHRzL0Rwa2cvVmVuZG9yL0RlZmF1bHQucG0gICAgICAgICAgIHwgICAgMiArKworIHNjcmlwdHMvRHBrZy9WZW5kb3IvVWJ1bnR1LnBtICAgICAgICAgICAgfCAgICAyICsrCisgc2NyaXB0cy9EcGtnL1ZlcnNpb24ucG0gICAgICAgICAgICAgICAgICB8ICAgIDIgKysKKyA1MCBmaWxlcyBjaGFuZ2VkLCAxMDcgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDVkMTc5NTQwODQ4NDc3OGY3OTc4MDYyYmI0NzJjOTdiNDVhNWNkMTAKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgRmViIDIwIDIzOjUwOjA2IDIwMTAgKzAxMDAKKworICAgIERwa2c6OkludGVyZmFjZTo6U3RvcmFibGU6IGxvYWQoKSBhbmQgc2F2ZSgpIGFjY2VwdCAiLSIgZm9yIHN0YW5kYXJkIGlucHV0L291dHB1dAorICAgIAorICAgIFNpbXBsaWZ5IGNvZGUgaW4gRHBrZzo6Q29udHJvbDo6SW5mbyB0aGFua3MgdG8gdGhpcy4KKworIHNjcmlwdHMvRHBrZy9Db250cm9sL0luZm8ucG0gICAgICAgfCAgICA5ICsrLS0tLS0KKyBzY3JpcHRzL0Rwa2cvSW50ZXJmYWNlL1N0b3JhYmxlLnBtIHwgICAzNyArKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgMzAgaW5zZXJ0aW9ucygrKSwgMTYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA1MTNiYWEyYzFlMjAwMzY1MjhmZDhmYjk4NmVmNDA3ZDRhYThkNDE1CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IEZlYiAyMCAyMzozOToxNSAyMDEwICswMTAwCisKKyAgICBEcGtnOjpDb250cm9sOjpJbmZvOiBwcm92aWRlIGFuIGFycmF5IHJlcHJlc2VudGF0aW9uIG9mIHRoZSBvYmplY3QKKyAgICAKKyAgICBBZGQgbm9uLXJlZ3Jlc3Npb24gdGVzdCBmb3IgdGhpcyBpbnRlcmZhY2UuCisKKyBzY3JpcHRzL0Rwa2cvQ29udHJvbC9JbmZvLnBtIHwgICAxNiArKysrKysrKysrKysrKystCisgc2NyaXB0cy90LzcwMF9EcGtnX0NvbnRyb2wudCB8ICAgIDQgKysrLQorIDIgZmlsZXMgY2hhbmdlZCwgMTggaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IGQxMzYyNWExOWFhNWU0OWU3MWVhMWMwODMxNzE5OGMwMDk0YTAwNDcKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgRmViIDIwIDIyOjM5OjMzIDIwMTAgKzAxMDAKKworICAgIEFkZCBhY2NlbnQgb24gbXkgbmFtZSBpbiBBVVRIT1JTCisKKyBBVVRIT1JTIHwgICAgMiArLQorIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgODBjNTM0NThjMzRmZWI2ZGI1MmZkMWQxMWQ1MzcwMmIwYTFlOTY4ZgorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBGZWIgMjAgMjI6Mzc6MDggMjAxMCArMDEwMAorCisgICAgQWRkIEpvbmF0aGFuIE5pZWRlciBhbmQgTW9kZXN0YXMgVmFpbml1cyB0byBUSEFOS1MKKworIFRIQU5LUyB8ICAgIDIgKysKKyAxIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IGNjZWI4ZmQ2MjRiNTM0YjllZDA0NGY3OTk3NmU4NmIwOTU4NjA4YjQKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgRmViIDIwIDIyOjM2OjQyIDIwMTAgKzAxMDAKKworICAgIENoYW5nZWxvZyBlbnRyeSBmb3IgRHBrZzo6SW50ZXJmYWNlOjpTdG9yYWJsZSBpbnRyb2R1Y3Rpb24KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAyICsrCisgMSBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBjZGY0ZTViNTMyNGIxMTk2MzU1NTQyZjMwMjI4YzljYTI2ZTVhN2FkCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IEZlYiAyMCAyMjoxOTo1NyAyMDEwICswMTAwCisKKyAgICBEcGtnOjpTaGxpYnM6Oio6IHJlbmFtZSBwYXJzZSgpIGZ1bmN0aW9ucworICAgIAorICAgIFRvIGF2b2lkIGNvbmZ1c2lvbiB3aXRoIHRoZSBwYXJzZSgpIGZ1bmN0aW9uIGV4cGVjdGVkIGJ5IG9iamVjdHMKKyAgICBpbmhlcml0aW5nIGZyb20gRHBrZzo6SW50ZXJmYWNlOjpTdG9yYWJsZSAod2hpY2ggaXMgc3VwcG9zZWQgdG8gcmVzdG9yZQorICAgIHRoZSBvYmplY3QgZnJvbSBpdHMgc2VyaWFsaXplZCBkYXRhKSwgdGhlIHZhcmlvdXMgcGFyc2UoKSBmdW5jdGlvbnMKKyAgICBoYXZlIGJlZW4gcmVuYW1lZCBpbnRvIHNvbWV0aGluZyBtb3JlIGV4cGxpY2l0IGxpa2UgYW5hbHl6ZSgpIGZvcgorICAgIERwa2c6OlNobGliczo6T2JqZHVtcCBvciBwYXJzZV9zeW1ib2xzcGVjKCkgZm9yIERwa2c6OlNobGliczo6U3ltYm9sLgorCisgc2NyaXB0cy9EcGtnL1NobGlicy9PYmpkdW1wLnBtICAgIHwgICAxMCArKysrKy0tLS0tCisgc2NyaXB0cy9EcGtnL1NobGlicy9TeW1ib2wucG0gICAgIHwgICAgMiArLQorIHNjcmlwdHMvRHBrZy9TaGxpYnMvU3ltYm9sRmlsZS5wbSB8ICAgIDQgKystLQorIHNjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsICAgICAgICB8ICAgIDIgKy0KKyBzY3JpcHRzL3QvMjAwX0Rwa2dfU2hsaWJzLnQgICAgICAgfCAgIDE2ICsrKysrKysrLS0tLS0tLS0KKyA1IGZpbGVzIGNoYW5nZWQsIDE3IGluc2VydGlvbnMoKyksIDE3IGRlbGV0aW9ucygtKQorCitjb21taXQgMWQ3MDY0OTUxNjI1OWRiNmJjZmM0NjgyOTljMzVmMzExMzExNWZjZQorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBGZWIgMjAgMjE6NTM6MTUgMjAxMCArMDEwMAorCisgICAgVXBkYXRlIERwa2c6OlNobGliczo6U3ltYm9sRmlsZSB0byB1c2UgRHBrZzo6SW50ZXJmYWNlOjpTdG9yYWJsZQorICAgIAorICAgIEluIHRoZSBwcm9jZXNzIGR1bXAoKSBpcyByZW5hbWVkIG91dHB1dCgpIGFuZCBzYXZlKCkgaXMgZHJvcHBlZCBpbiBmYXZvcgorICAgIG9mIHRoZSB2ZXJzaW9uIHByb3ZpZGVkIGJ5IERwa2c6OkludGVyZmFjZTo6U3RvcmFibGUuIGxvYWQoKSBpcworICAgIHRyYW5zZm9ybWVkIGluIHBhcnNlKCkuCisKKyBzY3JpcHRzL0Rwa2cvU2hsaWJzL1N5bWJvbEZpbGUucG0gfCAgIDQ1ICsrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHNjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsICAgICAgICB8ICAgMTIgKysrKystLS0tLQorIHNjcmlwdHMvdC8yMDBfRHBrZ19TaGxpYnMudCAgICAgICB8ICAgIDYgKystLQorIDMgZmlsZXMgY2hhbmdlZCwgMjggaW5zZXJ0aW9ucygrKSwgMzUgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBhYmE3NmU2ZGUyMTQzOGFkYTNkNmRmNTQyMDIxZDM0MWZiNDk5ZGNjCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEZlYiAxOSAxOTo0NTo0MCAyMDEwICswMTAwCisKKyAgICBVcGRhdGUgRHBrZzo6U3Vic3R2YXJzIHRvIHVzZSBEcGtnOjpJbnRlcmZhY2U6OlN0b3JhYmxlCisgICAgCisgICAgVGhlIHBhcnNlKCkgZnVuY3Rpb24gaXMgcmVwbGFjZWQgYnkgbG9hZCgpIGZvciBtb3N0IHVzZXJzLgorCisgc2NyaXB0cy9EcGtnL1N1YnN0dmFycy5wbSAgICAgIHwgICA2NyArKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tCisgc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGwgICAgIHwgICAgMiArLQorIHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsICAgICB8ICAgIDIgKy0KKyBzY3JpcHRzL2Rwa2ctc291cmNlLnBsICAgICAgICAgfCAgICAyICstCisgc2NyaXB0cy90Lzc1MF9EcGtnX1N1YnN0dmFycy50IHwgICAgMiArLQorIDUgZmlsZXMgY2hhbmdlZCwgNTMgaW5zZXJ0aW9ucygrKSwgMjIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA5M2YxNzlhMzlkZmQwODFlMmE1MGRkMjU4YTMyMjAyNTAwNGY2MDIzCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEZlYiAxOSAxOTozMjozMyAyMDEwICswMTAwCisKKyAgICBEcGtnOjpDb21wcmVzc2lvbjo6RmlsZUhhbmRsZTogZml4IGJlaGF2aW91ciB3aGVuIHRoZSBmaWxlIGlzIG5vdCBvcGVuCisgICAgCisgICAgVGhlIHN5c2NhbGwtbGlrZSBpbnRlcmZhY2Ugc2hvdWxkIG5vdCBlcnJvciBvdXQgd2hlbiB0aGUgZmlsZSBoYXMgbm90IGJlZW4KKyAgICBvcGVuZWQsIGl0IG11c3Qgc2ltcGx5IHJldHVybiBmYWlsdXJlIGNvZGVzLgorCisgc2NyaXB0cy9EcGtnL0NvbXByZXNzaW9uL0ZpbGVIYW5kbGUucG0gfCAgIDIxICsrKysrKysrKysrKysrKy0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMTUgaW5zZXJ0aW9ucygrKSwgNiBkZWxldGlvbnMoLSkKKworY29tbWl0IDZjODM2OWFlZTMyYjVjOTlmNDVlNjBmNjJlNmUwN2QyNmIyYjQyYjgKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgRmViIDE4IDIzOjU3OjAxIDIwMTAgKzAxMDAKKworICAgIFVwZGF0ZSBEcGtnOjpDb250cm9sOjoqIHRvIHVzZSBEcGtnOjpJbnRlcmZhY2U6OlN0b3JhYmxlCisgICAgCisgICAgVGhpcyBpbXBsaWVzIHJlbmFtaW5nIHBhcnNlX2ZoKCkgaW50byBwYXJzZSgpIGFuZCBwYXJzZSgpIGludG8gbG9hZCgpLgorICAgIFVwZGF0ZSBhbGwgc2NyaXB0cyBhbmQgbW9kdWxlcyB1c2luZyB0aG9zZSBtZXRob2RzLgorCisgc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9QYXJzZS5wbSB8ICAgIDIgKy0KKyBzY3JpcHRzL0Rwa2cvQ29udHJvbC9IYXNoLnBtICAgIHwgICAyNyArKysrKysrKysrLS0tLS0tLS0tLS0tLQorIHNjcmlwdHMvRHBrZy9Db250cm9sL0luZm8ucG0gICAgfCAgIDQzICsrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgc2NyaXB0cy9EcGtnL0luZGV4LnBtICAgICAgICAgICB8ICAgIDIgKy0KKyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG0gIHwgICAgNCArLS0KKyBzY3JpcHRzL0Rwa2cvVmVuZG9yLnBtICAgICAgICAgIHwgICAgNCArLS0KKyBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbCAgICAgIHwgICAgNCArLS0KKyBzY3JpcHRzL2Rwa2ctbmFtZS5wbCAgICAgICAgICAgIHwgICAgMiArLQorIHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGwgICAgfCAgICAyICstCisgc2NyaXB0cy9kcGtnLXNjYW5zb3VyY2VzLnBsICAgICB8ICAgIDIgKy0KKyBzY3JpcHRzL3QvNzAwX0Rwa2dfQ29udHJvbC50ICAgIHwgICAgMiArLQorIDExIGZpbGVzIGNoYW5nZWQsIDQwIGluc2VydGlvbnMoKyksIDU0IGRlbGV0aW9ucygtKQorCitjb21taXQgOWU3ZGZlY2NlNzRmNGQ1OGRlNWJlNDZiMzg3Yjg5OTQ4OTg2OTg3NgorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBGZWIgMTggMjM6MzI6MjUgMjAxMCArMDEwMAorCisgICAgVXBkYXRlIERwa2c6OkRlcHMgdG8gbWFrZSB1c2Ugb2YgRHBrZzo6SW50ZXJmYWNlOjpTdG9yYWJsZQorICAgIAorICAgIFBhcnNpbmcgcGFydCBpcyBvbmx5IHBhcnRpYWxseSBzdXBwb3J0ZWQgY3VycmVudGx5LgorCisgc2NyaXB0cy9EcGtnL0RlcHMucG0gfCAgIDE1ICsrKysrKysrKysrLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMTEgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKKworY29tbWl0IDY5ZTkzMDVjODQ4ZmI1ZjhkMTBhNjViZTQxMmNhYjI2YjllZDQ3ZWUKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgRmViIDE4IDIzOjE5OjQxIDIwMTAgKzAxMDAKKworICAgIFVwZGF0ZSBEcGtnOjpDaGFuZ2Vsb2cgYW5kIERwa2c6OkluZGV4IHRvIHVzZSBEcGtnOjpJbnRlcmZhY2U6OlN0b3JhYmxlCisKKyBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtIHwgICAxNSArKysrKystLS0tLS0tLS0KKyBzY3JpcHRzL0Rwa2cvSW5kZXgucG0gICAgIHwgICAyMiArKy0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCA4IGluc2VydGlvbnMoKyksIDI5IGRlbGV0aW9ucygtKQorCitjb21taXQgODhiMGFjNzMyZTA3NWY0ODdlN2NmYTA5OTkzMjZkMjEwNWYyZWNiYworQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBGZWIgMTggMjI6MjY6MzIgMjAxMCArMDEwMAorCisgICAgRHBrZzo6SW50ZXJmYWNlOjpTdG9yYWJsZTogY29tbW9uIGNvbnZlbmllbmNlIG1ldGhvZHMgZm9yIHNlcmlhbGl6YXRpb24gb2Ygb2JqZWN0cworCisgc2NyaXB0cy9EcGtnL0ludGVyZmFjZS9TdG9yYWJsZS5wbSB8ICAxMjQgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCisgc2NyaXB0cy9NYWtlZmlsZS5hbSAgICAgICAgICAgICAgICB8ICAgIDEgKworIHNjcmlwdHMvcG8vUE9URklMRVMuaW4gICAgICAgICAgICAgfCAgICAxICsKKyAzIGZpbGVzIGNoYW5nZWQsIDEyNiBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgZGMwYzcxMGMxMWZkMTNkZTk4ZDhhMDIyNmEyNGY2YWM4NDEwYzg1MgorQXV0aG9yOiBTdmVuIEpvYWNoaW0gPHN2ZW5qb2FjQGdteC5kZT4KK0RhdGU6ICAgU2F0IEZlYiAyMCAxODozMDo0MSAyMDEwICswMTAwCisKKyAgICBHZXJtYW4gZHBrZyB0cmFuc2xhdGlvbiB1cGRhdGUKKyAgICAKKyAgICBVcGRhdGUgdG8gOTY5dC4KKworIHBvL2RlLnBvIHwgIDQwNSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMjAzIGluc2VydGlvbnMoKyksIDIwMiBkZWxldGlvbnMoLSkKKworY29tbWl0IGQzOTFmMWQyMTlkZDJmNTIxYzdkYzliNGZlOTJiZTFjYmNhNWIxYzYKK0F1dGhvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitEYXRlOiAgIEZyaSBGZWIgMTkgMTg6MTM6MTkgMjAxMCArMDEwMAorCisgICAgVXBkYXRlIEdlcm1hbiBzY3JpcHRzIHRyYW5zbGF0aW9uCisgICAgCisgICAgVXBkYXRlIHRvIDQ5MnQuCisKKyBzY3JpcHRzL3BvL2RlLnBvIHwgICA3MyArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDcyIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA1OWMxNTEzZjhkODM0NDZlNTdkZmM1ZTA0Nzg0MDc3ODYwMWE4YzYwCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEZlYiAxOSAxMToxMToxOCAyMDEwICswMTAwCisKKyAgICBEcGtnOjpTaGxpYnM6OlN5bWJvbDo6ZXF1YWxzKCk6IGJlIGV4cGxpY2l0IGFib3V0IGRlZmF1bHQgdmFsdWVzIG9mIG9wdGlvbnMKKworIHNjcmlwdHMvRHBrZy9TaGxpYnMvU3ltYm9sLnBtIHwgICAgNiArKysrLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IGVlN2RjODQ4MjJkMWJiMmQ4NGY4YmZlYmFmZDIzM2Y2MmE4ZWU0ZjIKK0F1dGhvcjogTW9kZXN0YXMgVmFpbml1cyA8bW9kZXN0YXNAdmFpbml1cy5ldT4KK0RhdGU6ICAgVHVlIEZlYiAxNiAwMTowOTowMiAyMDEwICswMjAwCisKKyAgICBBZGQgLXEgb3B0aW9uIHRvIGRwa2ctZ2Vuc3ltYm9scywgLWMwIG5ldmVyIGZhaWxzIEFORCBzaG93cyBhIGRpZmYuCisgICAgCisgICAgVGhlIHJhdGlvbmFsZSBiZWhpbmQgdGhpcyBjaGFuZ2UgdGhhdCB0aGVyZSBzaG91bGQgYmUgYSB3YXkgdG8gcHJldmVudAorICAgIGRwa2ctZ2Vuc3ltYm9scyBmcm9tIGZhaWxpbmcgaWYgdGhlcmUgYXJlIGxvc3Qgc3ltYm9scyBidXQgc3RpbGwgc2hvdyBhIGRpZmYgYXQKKyAgICB0aGUgc2FtZSB0aW1lICh3aGljaCAtYzAgd291bGQgbm90IHdpdGhvdXQgdGhpcyBwYXRjaCkuCisgICAgCisgICAgSW1hZ2luZSBhIHNvdXJjZSBwYWNrYWdlIHdoaWNoIGJ1aWxkcyBtdWx0aXBsZSBsaWJyYXJ5IGJpbmFyeSBwYWNrYWdlcyB0aGF0IGFyZQorICAgIHByb25lIHRvIGFyY2gtc3BlY2lmaWMgZmFpbHVyZXMgKHF1aXRlIHR5cGljYWwgZm9yIEMrKykuIFRoZW4gZGhfbWFrZXNobGlicyB3b3VsZAorICAgIHN0b3AgYXQgdGhlIGZpcnN0IGRwa2ctZ2Vuc3ltYm9scyBmYWlsdXJlIGdpdmluZyBvbmx5IG9uZSBkaWZmLiBTbyBpdCBzaG91bGQgYmUKKyAgICBwb3NzaWJsZSB0byBnZXQgZGlmZnMgZm9yIGFsbCBsaWJyYXJpZXMgaW4gdGhlIHNpbmdsZSBidWlsZGQgcnVuIHJlZ2FyZGxlc3Mgb2YKKyAgICBjaGVjayBmYWlsdXJlcyAodXNpbmcgLWMwKS4gVGhlIGZhY3QgdGhhdCBkcGtnLWdlbnN5bWJvbHMgd2lsbCBuZXZlciBmYWlsIGlzCisgICAgbm90IHRoYXQgaW1wb3J0YW50IGlmIG1haW50YWluZXIgaXMgcHJldHR5IHN1cmUgdGhhdCBzeW1ib2xzIG1pZ2h0IGJlIGxvc3Qgb25seQorICAgIGR1ZSB0byBlLmcuIHVubWFya2VkIG9wdGlvbmFsIHN5bWJvbHMgb3IgZGlmZmVyZW50IG1hbmdsaW5nIG9uIG90aGVyIGFyY2hlcy4KKyAgICBXaGVuIHVwZGF0aW5nIHRvIGEgbmV3IHVwc3RyZWFtLCBtYWludGFpbmVyIGNhbiBzZXQKKyAgICBEUEtHX0dFTlNZTUJPTFNfQ0hFQ0tfTEVWRUw9MSBpbiB0aGUgZW52aXJvbm1lbnQgdG8gdGVtcG9yYXJ5IHJlc3RvcmUgY2hlY2tzLgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgfCAgICAzICsrKworIG1hbi9kcGtnLWdlbnN5bWJvbHMuMSAgICAgIHwgICAxOSArKysrKysrKysrKystLS0tLS0tCisgc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGwgfCAgIDM3ICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0KKyAzIGZpbGVzIGNoYW5nZWQsIDM5IGluc2VydGlvbnMoKyksIDIwIGRlbGV0aW9ucygtKQorCitjb21taXQgOGJlYzRkZTRkZjU3Y2Y4MTQxNjllY2UxYWI1NTVhYzJiNDRhYjk4MworQXV0aG9yOiBNb2Rlc3RhcyBWYWluaXVzIDxtb2Rlc3Rhc0B2YWluaXVzLmV1PgorRGF0ZTogICBXZWQgRmViIDMgMDQ6MzY6MDMgMjAxMCArMDIwMAorCisgICAgRHBrZzo6U2hsaWJzOiogYWRkIG1vcmUgYWJzdHJhY3QgbWV0aG9kcyBhbmQgY2xlYW4gdXAgQVBJLgorICAgIAorICAgICogTWFrZSBTeW1ib2xGaWxlOjpsb29rdXBfKigpLCBTeW1ib2xGaWxlOjpmaW5kX21hdGNoaW5nX3BhdHRlcm4oKSBhY2NlcHQgYm90aAorICAgICAgc3ltYm9sL3BhdHRlcm4gb2JqZWN0cyBBTkQgbmFtZXMuCisgICAgKiBNYWtlIFN5bWJvbEZpbGU6Omxvb2t1cF8qKCksIFN5bWJvbEZpbGU6OmZpbmRfbWF0Y2hpbmdfcGF0dGVybigpIGFjY2VwdCBib3RoCisgICAgICBzaW5nbGUgc29uYW1lIGFuZCBhbiBhcnJheSBvZiBzb25hbWVzLgorICAgICogTWFrZSBTeW1ib2xGaWxlOjpsb29rdXBfKigpLCBTeW1ib2xGaWxlOjpmaW5kX21hdGNoaW5nX3BhdHRlcm4oKSBkZXRlY3QKKyAgICAgIGNvbnRleHQgYW5kIHJldHVybiBlaXRoZXIgYSBoYXNoIG9mICggc29uYW1lID0+IC4uLCBzeW1ib2wgPT4gLi4gKSBvciBqdXN0IGEKKyAgICAgIHNjYWxhciBzeW1ib2wgcmVmZXJlbmNlLiBJbiBlaXRoZXIgY2FzZSwgZG8gTk9UIGNsb25lIHN5bWJvbHMuCisgICAgKiBTeW1ib2xGaWxlOjpnZXRfe25ldyxsb3N0fV9zeW1ib2xzKCkgcmV0dXJucyBhbiBhcnJheSBvZiB7IHNvbmFtZSA9PgorICAgICAgLi4sIHN5bWJvbCA9PiAuLiB9IGhhc2hlcyB3aGVyZSAnc3ltYm9sJyBpcyBhIHJlYWwgcmVmZXJlbmNlLCBub3QgYSBjbG9uZS4KKyAgICAqIEFkZCBuZXcgYWJzdHJhY3QgbWV0aG9kcyBhbmQgdXNlIHRoZW0gZXZlcnl3aGVyZToKKyAgICAgIC0gU3ltYm9sRmlsZTo6Z2V0X2FyY2goKSAtIGFyY2hpdGVjdHVyZSB0aGUgZmlsZSBpcyBwcm9jZXNzZWQgdW5kZXIvZm9yLgorICAgICAgLSBTeW1ib2xGaWxlOjpnZXRfc29uYW1lcygpIC0gbmFtZXMgb2YgYWxsIHNvbmFtZXMuCisgICAgICAtIFN5bWJvbEZpbGU6OmdldF9vYmplY3QoKSAtIHNvbmFtZSBvYmplY3QgcmVmZXJlbmNlIGJ5IG5hbWUgb3Igb2JqZWN0CisgICAgICAgIHJlZmVyZW5jZS4KKyAgICAgIC0gU3ltYm9sRmlsZTo6Z2V0X3N5bWJvbHMoJHNvbmFtZSkgLSBpZiAkc29uYW1lIGlzIHVuZGVmLCByZXR1cm5zIEFMTAorICAgICAgICBzeW1ib2wgZmlsZSBzeW1ib2xzLgorICAgICAgLSBTeW1ib2xGaWxlOjpnZXRfcGF0dGVybnMoJHNvbmFtZSkgLSBpZiAkc29uYW1lIGlzIHVuZGVmLCByZXR1cm5zIEFMTAorICAgICAgICBzeW1ib2wgZmlsZSBwYXR0ZXJucy4KKyAgICAgIC0gU3ltYm9sRmlsZTo6Z2V0X3N5bWJvbF9vYmplY3QoU3N5bSwgJHNvbmFtZSkgLSBhIGNvbnZlbmllbmNlIG1ldGhvZAorICAgICAgICBjb21iaW5pbmcgYm90aCBTeW1ib2xGaWxlOjpsb29rdXBfe3N5bWJvbCxwYXR0ZXJufSBtZXRob2RzLgorICAgICogTWFrZSBTeW1ib2xGaWxlOjpjcmVhdGVfc3ltYm9sKCkgbW9yZSBmbGV4aWJsZS4gTm93IGl0IGNhbiBwYXJzZSBhIGR1bW15IHNwZWMKKyAgICAgIHdpdGhvdXQgbWludmVyLgorICAgICogUmVtb3ZlIFN5bWJvbDo6c2Nsb25lKCkgYXMgbm8gbG9uZ2VyIHVzZWQgYW5kIG5lZWRlZC4gUmVuYW1lIFN5bWJvbDo6ZGNsb25lKCkKKyAgICAgIGJhY2sgdG8gU3ltYm9sOjpjbG9uZSgpLgorCisgc2NyaXB0cy9EcGtnL1NobGlicy9TeW1ib2wucG0gICAgIHwgICAyMCArLS0KKyBzY3JpcHRzL0Rwa2cvU2hsaWJzL1N5bWJvbEZpbGUucG0gfCAgMjYwICsrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0KKyBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbCAgICAgICAgfCAgICAyICstCisgc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbCAgICAgICAgIHwgICAyMyArKy0tCisgc2NyaXB0cy90LzIwMF9EcGtnX1NobGlicy50ICAgICAgIHwgIDExNCArKysrKysrLS0tLS0tLS0tCisgNSBmaWxlcyBjaGFuZ2VkLCAyMjIgaW5zZXJ0aW9ucygrKSwgMTk3IGRlbGV0aW9ucygtKQorCitjb21taXQgN2MwMmEyZWQ4NjdiMThmYmE2MWJmZmFhNDQwMmRkMmRiMjMwYzliYworQXV0aG9yOiBNb2Rlc3RhcyBWYWluaXVzIDxtb2Rlc3Rhc0B2YWluaXVzLmV1PgorRGF0ZTogICBUdWUgRmViIDIgMjM6NTg6MjQgMjAxMCArMDIwMAorCisgICAgRHBrZzo6U2hsaWJzOjpTeW1ib2xGaWxlOjphZGRfc3ltYm9sKCkgcmV2ZXJzZSAkc3ltLCAkc29uYW1lIGFyZ3VtZW50IG9yZGVyLgorICAgIAorICAgIFRoaXMgbWFrZXMgb3JkZXIgY29uc2lzdGVudCB3aXRoIGxvb2t1cF97c3ltYm9sLHBhdHRlcm59LgorCisgc2NyaXB0cy9EcGtnL1NobGlicy9TeW1ib2xGaWxlLnBtIHwgICAgNyArKystLS0tCisgc2NyaXB0cy90LzIwMF9EcGtnX1NobGlicy50ICAgICAgIHwgICAgMiArLQorIDIgZmlsZXMgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCA1IGRlbGV0aW9ucygtKQorCitjb21taXQgZDY3NzhjZjk2ZDI3YjZiZGU2Yzc2YzhiZGE4ZjcyMmU2NjVmYmNlZgorQXV0aG9yOiBNb2Rlc3RhcyBWYWluaXVzIDxtb2Rlc3Rhc0B2YWluaXVzLmV1PgorRGF0ZTogICBTYXQgSmFuIDMwIDAwOjUxOjA1IDIwMTAgKzAyMDAKKworICAgIERwa2c6OlNobGliczo6Q3BwZmlsdDogYWRkIGFuZCBleHBvcnQgY3BwZmlsdF9kZW1hbmdsZV9jcHAoKS4KKyAgICAKKyAgICBUaGlzIGZ1bmN0aW9uIGlzIG5lZWRlZCB0byB1bmlmeSBob3cgZGVtYW5nbGluZyBvZiBDKysgc3ltYm9scyBpcyBkb25lIGluCisgICAgZHBrZy1kZXYuIFBhc3NpbmcgJ2F1dG8nIHRvIGNwcGZpbHRfZGVtYW5nbGUoKSBlYWNoIHRpbWUgaXMgbm90IHZlcnkgb2J2aW91cworICAgIGFuZCBlcnJvciBwcm9uZS4KKworIHNjcmlwdHMvRHBrZy9TaGxpYnMvQ3BwZmlsdC5wbSAgICAgIHwgICAgOCArKysrKysrLQorIHNjcmlwdHMvRHBrZy9TaGxpYnMvU3ltYm9sLnBtICAgICAgIHwgICAgMiArLQorIHNjcmlwdHMvdC8xOTBfRHBrZ19TaGxpYnNfQ3BwZmlsdC50IHwgICAxNCArKysrKy0tLS0tLS0tLQorIDMgZmlsZXMgY2hhbmdlZCwgMTMgaW5zZXJ0aW9ucygrKSwgMTEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA2Mzk1Yjc2NjhiZGI0NjllZmJkYjRhNTRiZTE4ZjI4OTU0Mzc3OWQ3CitBdXRob3I6IE1vZGVzdGFzIFZhaW5pdXMgPG1vZGVzdGFzQHZhaW5pdXMuZXU+CitEYXRlOiAgIFNhdCBKYW4gMzAgMDA6Mzk6MTQgMjAxMCArMDIwMAorCisgICAgRHBrZzo6U2hsaWJzOjpDcHBmaWx0OiBkbyBub3QgcGFzcyAtLW5vLXZlcmJvc2UgdG8gYysrZmlsdCgxKS4KKyAgICAKKyAgICAtLW5vLXZlcmJvc2UgZ2l2ZXMgc29tZSB1bmV4cGVjdGVkIHJlc3VsdHMsIGUuZy4gQysrIHN1YnN0aXR1dGlvbiBpbgorICAgIF9aTlNzOV9NX211dGF0ZUVtbW0gaXMgbm90IGV4cGFuZGVkIGFjY29yZGluZyB0byB0aGUgc3BlYyAoaS5lLgorICAgIHN0ZDo6YmFzaWNfc3RyaW5nPD4gZ2V0cyBzaW1wbGlmaWVkIGFuZCByZXBsYWNlZCBieSBzdGQ6OnN0cmluZykuCisKKyBzY3JpcHRzL0Rwa2cvU2hsaWJzL0NwcGZpbHQucG0gfCAgICA0ICstLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworY29tbWl0IDE2ZTJhYzc5OWE2OTZiMDAyNzYyNzA0OGYyY2Q0YTA1Mzc2YzQyMjQKK0F1dGhvcjogTW9kZXN0YXMgVmFpbml1cyA8bW9kZXN0YXNAdmFpbml1cy5ldT4KK0RhdGU6ICAgRnJpIEphbiAyOSAyMDowNjoxNiAyMDEwICswMjAwCisKKyAgICBEcGtnOjpTaGxpYnM6OlN5bWJvbEZpbGU6IHJlZmFjdG9yIHtwYXR0ZXJuc317YWxpYXNlc30uCisgICAgCisgICAgKiBHZXQgcmlkIG9mICJjb252ZXJ0ZXIiIGZpZWxkLCBpdCBpcyBoYXJkIHRvIG1hbmFnZS4gSnVzdCB1c2UgdGhlIGZpcnN0IGFsaWFzCisgICAgaW5zdGVhZC4KKyAgICAqIEF2b2lkIGltcGxpY2l0IGNyZWF0aW9uIG9mIGFsaWFzIHR5cGUgaGFzaCBpbiBhIGNvdXBsZSBvZiBwbGFjZXMuCisKKyBzY3JpcHRzL0Rwa2cvU2hsaWJzL1N5bWJvbEZpbGUucG0gfCAgIDI0ICsrKysrKysrKysrLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMTEgaW5zZXJ0aW9ucygrKSwgMTMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA0YTljOTdkNGQ3NWUwNDVjYTNjMWRiYzVmM2I0Y2UwZWEwNjA1Y2YwCitBdXRob3I6IE1vZGVzdGFzIFZhaW5pdXMgPG1vZGVzdGFzQHZhaW5pdXMuZXU+CitEYXRlOiAgIEZyaSBKYW4gMjkgMTk6Mjk6MTcgMjAxMCArMDIwMAorCisgICAgRHBrZzo6U2hsaWJzOjpTeW1ib2w6OmVxdWFscygpOiBpbXByb3ZlLCBtYWtlIG1vcmUgZ2VuZXJhbC4KKyAgICAKKyAgICBOb3cgdGhlIGZ1bmN0aW9uIGFjY2VwdHMgbmFtZWQgb3B0aW9ucyBhbmQgYWxsb3dzIHRvIG9wdGlvbmFsbHkgc2tpcAorICAgIGNvbXBhcmlzaW9uIG9mIHZlcnNpb25pbmcgaW5mbyAobWludmVyL2RlcF9pZCkgYW5kIHRhZ3MuIEhvd2V2ZXIsCisgICAgYnkgZGVmYXVsdCwgaXQgY29tcGFyZXMgYWxsIG5vbi1pbnRlcm5hbCBzeW1ib2wgcHJvcGVydGllcy4KKworIHNjcmlwdHMvRHBrZy9TaGxpYnMvU3ltYm9sLnBtICAgICB8ICAgMzEgKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLQorIHNjcmlwdHMvRHBrZy9TaGxpYnMvU3ltYm9sRmlsZS5wbSB8ICAgIDIgKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDIxIGluc2VydGlvbnMoKyksIDEyIGRlbGV0aW9ucygtKQorCitjb21taXQgOGVlMDgzYzI1M2Y1MTBmZWE0ZGRhNzk5OWUwNzkyZWU4MmFiMTI4ZgorQXV0aG9yOiBNb2Rlc3RhcyBWYWluaXVzIDxtb2Rlc3Rhc0B2YWluaXVzLmV1PgorRGF0ZTogICBGcmkgSmFuIDI5IDE5OjI3OjMyIDIwMTAgKzAyMDAKKworICAgIERwa2c6OlNobGliczo6U3ltYm9sOiBpbXByb3ZlIHNldF9zeW1ib2xuYW1lKCkuCisgICAgCisgICAgTm93IGl0IGFsbG93cyB0byBzZXQgc3ltYm9sIHRlbXBsYXRlIGFuZCBhdXRvZGV0ZWN0cyBpZiBxdW90ZXMgYXJlIG5lZWRlZC4KKworIHNjcmlwdHMvRHBrZy9TaGxpYnMvU3ltYm9sLnBtIHwgICAxNSArKysrKysrKysrKy0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDExIGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyMjk0Y2M2M2MwY2FlOWZhOTVhMjkwOGI0NTVjNzcwZDljM2ZlYjQwCitBdXRob3I6IE1vZGVzdGFzIFZhaW5pdXMgPG1vZGVzdGFzQHZhaW5pdXMuZXU+CitEYXRlOiAgIFNhdCBKYW4gMjMgMTg6NTU6NTQgMjAxMCArMDIwMAorCisgICAgRHBrZzo6U2hsaWJzOjpTeW1ib2xGaWxlOjpnZXRfbmV3X3N5bWJvbHMoKTogYWRkIG9wdGlvbiB0byByZXR1cm4gb3B0aW9uYWwgc3ltYm9scy4KKyAgICAKKyAgICBBbHNvIGluY2x1ZGVzIGEgYml0IG9mIHJlZmFjdG9yaW5nIGZvciByZWxldmFudCBEcGtnOjpTaGxpYnM6OlN5bWJvbCBiaXRzLgorICAgIGlzX2VsaWdpYmxlX2FzX25ldygpIHdhcyByZW5hbWVkIHRvIGlzX2xlZ2l0aW1hdGUoKSBhbmQgaXRzIHVzYWdlIGluCisgICAgZ2V0X25ld19zeW1ib2xzKCkgd2FzIGV4cGFuZGVkLgorCisgc2NyaXB0cy9EcGtnL1NobGlicy9TeW1ib2wucG0gICAgIHwgICAgNyArKystLS0tCisgc2NyaXB0cy9EcGtnL1NobGlicy9TeW1ib2xGaWxlLnBtIHwgICAyOCArKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAxOCBpbnNlcnRpb25zKCspLCAxNyBkZWxldGlvbnMoLSkKKworY29tbWl0IGE4N2ExNWFkMDk2ODg0MDI1MTk1Njk4ZmM3NmE5YWI0MWE0YWM0MjUKK0F1dGhvcjogTW9kZXN0YXMgVmFpbml1cyA8bW9kZXN0YXNAdmFpbml1cy5ldT4KK0RhdGU6ICAgU2F0IEphbiAyMyAxODo1Mjo1NSAyMDEwICswMjAwCisKKyAgICBkcGtnLWdlbnN5bWJvbHM6IGFkZCAtYTxhcmNoPiBvcHRpb24uCisgICAgCisgICAgVXNlIHRoaXMgb3B0aW9uIHRvIGdlbmVyYXRlIGEgc3ltYm9sIGZpbGUgb3IgZGlmZiBmb3IgYW55IGFyY2hpdGVjdHVyZSBwcm92aWRlZAorICAgIGl0cyBiaW5hcmllcyBhcmUgYWxyZWFkeSBhdmFpbGFibGUuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICB8ICAgIDEgKworIG1hbi9kcGtnLWdlbnN5bWJvbHMuMSAgICAgIHwgICAgNSArKysrKworIHNjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsIHwgICAgNCArKysrCisgMyBmaWxlcyBjaGFuZ2VkLCAxMCBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgMzBlNmQzMDVhMzJjYmE1NDBlZmE4MGRiZGI4ODM4YTIxMzMzZTBlZAorQXV0aG9yOiBNb2Rlc3RhcyBWYWluaXVzIDxtb2Rlc3Rhc0B2YWluaXVzLmV1PgorRGF0ZTogICBTYXQgSmFuIDIzIDE4OjI3OjIxIDIwMTAgKzAyMDAKKworICAgIGRwa2ctZ2Vuc3ltYm9sczogYWRkIHNvdXJjZSB2ZXJzaW9uIHRvIHRoZSBkaWZmIGxhYmVsLgorICAgIAorICAgIFNvdXJjZSB2ZXJzaW9uIGlzIGFsc28gdXNlZnVsIHRvIGhhdmUgaW4gdGhlIG91dHB1dC4gQWxzbyBmb3JtYXQgdGhlIHN0cmluZworICAgIGFjY29yZGluZyB0byBkcGtnLW5hbWUgcnVsZXMuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICB8ICAgIDIgKysKKyBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbCB8ICAgIDQgKystLQorIDIgZmlsZXMgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgNjRiZDg0MjBlNjAyZDEyMDA5ZGQwNDVlYjk4MGQ2YmE3MzI0YjNlNgorQXV0aG9yOiBNb2Rlc3RhcyBWYWluaXVzIDxtb2Rlc3Rhc0B2YWluaXVzLmV1PgorRGF0ZTogICBTYXQgSmFuIDIzIDE4OjIxOjQ5IDIwMTAgKzAyMDAKKworICAgIERwa2c6OlNobGliczo6U3ltYm9sRmlsZTo6bmV3KCk6IGRvIG5vdCBhbGxvdyB1bmRlZmluZWQgYXJjaCBvcHRpb24uCisKKyBzY3JpcHRzL0Rwa2cvU2hsaWJzL1N5bWJvbEZpbGUucG0gfCAgICAyICstCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyM2NiYmZiNDFkMmUxM2JkNjAyZjUxMjc0MjUzMTk1ZmVlMmEzMWFjCitBdXRob3I6IE1vZGVzdGFzIFZhaW5pdXMgPG1vZGVzdGFzQHZhaW5pdXMuZXU+CitEYXRlOiAgIFNhdCBKYW4gMjMgMTg6MTg6NDAgMjAxMCArMDIwMAorCisgICAgRHBrZzo6U2hsaWJzOjpTeW1ib2w6OnBhcnNlX3RhZ3NwZWMoKTogYWxsb3cgZXh0cmEgc3BhY2VzIGJlZm9yZSBzeW1ib2wgdGFnIHNwZWNpZmljYXRpb24uCisgICAgCisgICAgTWFrZSBpdCBwb3NzaWJsZSB0byByZXBhcnNlIGEgc3ltYm9sIHNwZWNpZmljYXRpb24gZ2VuZXJhdGVkIHdpdGgKKyAgICBEcGtnOjpTaGxpYnM6OlN5bWJvbDpnZXRfc3ltYm9sc3BlYygxKS4KKworIHNjcmlwdHMvRHBrZy9TaGxpYnMvU3ltYm9sLnBtIHwgICAgMiArLQorIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgODhhYTM2ZGM5OTljZTYzOTdkYzlkZmEyZmM0MTAwYTExMzM5OWQzOAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBGZWIgMTkgMDc6MjA6MDcgMjAxMCArMDEwMAorCisgICAgRml4IGRwa2ctcXVlcnkgYW5kIGRwa2ctdHJpZ2dlciB0byBhY3R1YWxseSBwcmludCBhIHZlcnNpb24gb24gLS12ZXJzaW9uCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMSArCisgc3JjL3F1ZXJ5LmMgICAgICB8ICAgIDMgKystCisgc3JjL3RyaWdjbWQuYyAgICB8ICAgIDMgKystCisgMyBmaWxlcyBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBhN2FiOTY4ZTllNWUzMDEwM2JkYzk0MzkzNzRlYjZkZjc5NDU3OGZkCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEZlYiAxOSAwNzowNzowNCAyMDEwICswMTAwCisKKyAgICBkcGtnLWRlYjogVW5pZnkg4oCcZmFpbGVkIHJlYWTigJ0gc3RyaW5ncyBieSBtYWtpbmcgY29udHJvbCBhbiBhcmd1bWVudAorCisgZHBrZy1kZWIvaW5mby5jIHwgICAgMyArKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDVlMDM2MjhlOTIwYjcyNmExZmMzN2RmOWYzN2IzZGNmYjZiM2JlNzEKK0F1dGhvcjogSm9uYXRoYW4gTmllZGVyIDxqcm5pZWRlckBnbWFpbC5jb20+CitEYXRlOiAgIEZyaSBGZWIgMTkgMDc6MDM6NTggMjAxMCArMDEwMAorCisgICAgZHBrZy1kZWI6IEZpeCByZXNvdXJjZSBsZWFrIGluIC0taW5mbworICAgIAorICAgIOKAnGRwa2ctZGViIC1JIGZvby5kZWLigJ0gbGVha3MgdGhlIGZpbGUgaGFuZGxlIGZvciB0aGUgcGFja2FnZeKAmXMKKyAgICBjb250cm9sIGZpbGUuIENoZWNrIGZvciByZWFkIGVycm9ycyBhbmQgY2xvc2UgdGhlIGZpbGUgYmVmb3JlCisgICAgaXQgZmFsbHMgb3V0IG9mIHNjb3BlLgorICAgIAorICAgIEZvdW5kIGJ5IGNwcGNoZWNrLgorICAgIAorICAgIFJlcG9ydGVkLWJ5OiBSYXBoYWVsIEdlaXNzZXJ0IDxhdG9tbzY0QGdtYWlsLmNvbT4KKyAgICBTaWduZWQtb2ZmLWJ5OiBKb25hdGhhbiBOaWVkZXIgPGpybmllZGVyQGdtYWlsLmNvbT4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICA0ICsrKysKKyBkcGtnLWRlYi9pbmZvLmMgIHwgICAgNCArKysrCisgMiBmaWxlcyBjaGFuZ2VkLCA4IGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBmZGVkY2Y1MTY4YWI4ZGRiNDAyZmJmY2I0Mzg5MTg5N2Q0YWRhY2ZkCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEZlYiAxOSAwNjo1ODozMSAyMDEwICswMTAwCisKKyAgICBSZW1vdmUgZG9uZSBUT0RPIGl0ZW1zCisKKyBUT0RPIHwgICAgMyAtLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDAgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworY29tbWl0IGMyNjRkZDgzZDMzMjUwOTI3ZmUxNjVkZTUzMzYxNDVhZmRmOTk2MTAKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgRmViIDE5IDA2OjU2OjU5IDIwMTAgKzAxMDAKKworICAgIEZpeCBzbWFsbCBtZW1vcnkgbGVha3MgcmVsYXRlZCB0byBzY2FuZGlyKCkKKyAgICAKKyAgICBUaGUgYXJyYXkgb2YgcG9pbnRlcnMgcmV0dXJuZWQgYnkgc2NhbmRpciBhbmQgdGhlIHBvaW50ZXJzIGluIGl0IHdlcmUKKyAgICBub3QgYmVpbmcgZnJlZWQuCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMSArCisgZHBrZy1kZWIvaW5mby5jICB8ICAgIDMgKysrCisgbGliL2Rwa2cvbXlvcHQuYyB8ICAgIDEgKworIDMgZmlsZXMgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgZjA0OTZmOTFiNTUwODFjNzk5MGFiYjg4ZDc4Mjk5ZTljYjkyNWVjZQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBGZWIgMTkgMDY6NTQ6MjEgMjAxMCArMDEwMAorCisgICAgZHBrZzogRml4IHVuYWxpZ25lZCBidWxsZXQgcG9pbnQgb24gYSBjb21tZW50CisgICAgCisgICAgVGhpcyB3YXMgbWFraW5nIGl0IGNvbmZ1c2luZyByZWxhdGVkIHRvIHRoZSBwYXJlbnQgYnVsbGV0cy4KKworIHNyYy9wcm9jZXNzYXJjLmMgfCAgICAyICstCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBlMjBmYjc0OGQzMzA3YTU4ZTYwZWQ1ZWE5NGQ5NTQxNTEyMzJjNTNkCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IEphbiAyOCAyMTowOTo0MSAyMDEwICswMTAwCisKKyAgICBDaGFuZ2UgZHBrZy1kZXYgdG8gRGVwZW5kIG9uIHBlcmwgaW5zdGVhZCBvZiBwZXJsNSBhbmQgcGVybC1tb2R1bGVzCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMSArCisgZGViaWFuL2NvbnRyb2wgICB8ICAgIDIgKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDE2N2JlNzIyYjJmMDE2MDdhNDk4MTA0YWQ5NTRkMWQyZDAyYTcwZjIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gRmViIDggMDM6MTg6NDQgMjAxMCArMDEwMAorCisgICAgc2NyaXB0czogVW5pZnkgZm9yayBlcnJvciBzdHJpbmcKKworIHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvUGFyc2UucG0gfCAgICAyICstCisgc2NyaXB0cy9EcGtnL0lQQy5wbSAgICAgICAgICAgICB8ICAgIDIgKy0KKyBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbCAgICAgIHwgICAgMiArLQorIDMgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQorCitjb21taXQgNDVkYzQ2NWYwNzUwNzVmNDgxYmU3YzNkZmFjMzhiZjA0MWZjOWMwZQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBGZWIgOCAwMzoxNzo1MCAyMDEwICswMTAwCisKKyAgICBsaWJkcGtnLXBlcmw6IFJlbmFtZSBEcGtnOjpJUEM6OmZvcmtfYW5kX2V4ZWMoKSB0byBEcGtnOjpJUEM6OnNwYXduKCkKKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgICAgICAgICAgIHwgICAgMSArCisgc2NyaXB0cy9EcGtnL0NvbXByZXNzaW9uL1Byb2Nlc3MucG0gfCAgICA4ICsrKystLS0tCisgc2NyaXB0cy9EcGtnL0lQQy5wbSAgICAgICAgICAgICAgICAgfCAgIDEyICsrKysrKy0tLS0tLQorIHNjcmlwdHMvRHBrZy9TaGxpYnMvQ3BwZmlsdC5wbSAgICAgIHwgICAxMCArKysrKy0tLS0tCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9BcmNoaXZlLnBtICAgICAgfCAgIDM0ICsrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0KKyBzY3JpcHRzL0Rwa2cvU291cmNlL0Z1bmN0aW9ucy5wbSAgICB8ICAgIDIgKy0KKyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG0gICAgICB8ICAgIDYgKysrLS0tCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbSAgICAgICAgfCAgICA2ICsrKy0tLQorIHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGwgICAgICAgIHwgICAgNCArKy0tCisgc2NyaXB0cy90LzgwMF9EcGtnX0lQQy50ICAgICAgICAgICAgfCAgIDI4ICsrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0KKyBzY3JpcHRzL3QvOTAwX3VwZGF0ZV9hbHRlcm5hdGl2ZXMudCB8ICAgIDQgKystLQorIDExIGZpbGVzIGNoYW5nZWQsIDU4IGluc2VydGlvbnMoKyksIDU3IGRlbGV0aW9ucygtKQorCitjb21taXQgYmY0YzQwYmMwY2ViY2Y5Mzc4NTRhYTI1OWM2NzI5ZGE5Yzk3NTc2OAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBGZWIgOCAxNDo1NjozOSAyMDEwICswMTAwCisKKyAgICBzY3JpcHRzL3Q6IEFkZCBtaXNzaW5nIGZ1bmN0aW9uIHByb3RvdHlwZXMKKworIHNjcmlwdHMvdC8yMDBfRHBrZ19TaGxpYnMvYmFzaWN0YWdzLmMgfCAgICA2ICsrKysrKworIDEgZmlsZXMgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgMmI2ZDliZGQzZmU5Njk0MDE0NzBiYzI2ZjZiMzA5ODJhYzc5OGVjMworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBGZWIgOCAxNDo1NDo0NSAyMDEwICswMTAwCisKKyAgICBzY3JpcHRzL3Q6IFVzZSB2b2lkIGluIGZ1bmN0aW9uIGFyZ3VtZW50cyB0byBkZW5vdGUgbm8gYXJndW1lbnRzCisgICAgCisgICAgRml4ZXMgd2FybmluZ3MgZHVlIHRvIG9sZCBzdHlsZSBmdW5jdGlvbiBkZWZpbml0aW9uLgorCisgc2NyaXB0cy90LzIwMF9EcGtnX1NobGlicy9iYXNpY3RhZ3MuYyB8ICAgMTIgKysrKysrLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA2IGluc2VydGlvbnMoKyksIDYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBlOWM5ZGU1OWI3NmNiYjYyYWExOGQyYWFkNDMyM2Q1MGFmYjliNmU0CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIEZlYiA4IDE0OjUyOjM2IDIwMTAgKzAxMDAKKworICAgIHNjcmlwdHMvdDogTWFrZSBzeW1ib2wyMl9pMzg2IGZ1bmN0aW9uIHJldHVybiB2b2lkIGluc3RlYWQgb2Ygdm9pZCAqCisKKyBzY3JpcHRzL3QvMjAwX0Rwa2dfU2hsaWJzL2Jhc2ljdGFncy5jIHwgICAgMiArLQorIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgOGQ4ZGUzZjJiOTBiNTcwMWQ1ZDQ4ZGNlNTBmNmMzNDQyNjFhYjY4MAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBGZWIgMTAgMDI6MjE6MzggMjAxMCArMDEwMAorCisgICAgZHNlbGVjdDogRG8gbm90IHNoYWRvdyBkaXNwbGF5IG1lbWJlciBpbiBwYWNrYWdlbGlzdDo6ZGVzZWxlY3Rfb25lX29mCisKKyBkc2VsZWN0L3BrZ2RlcGNvbi5jYyB8ICAgIDggKysrKystLS0KKyBkc2VsZWN0L3BrZ2xpc3QuaCAgICB8ICAgIDIgKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDYgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKKworY29tbWl0IGQ2ZTkyYzA5YjUyMDI4MDA3Y2JkZjQ2MTc3ZGYwYzQxNDI2YTQzNDgKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgRmViIDEwIDAyOjIwOjI0IDIwMTAgKzAxMDAKKworICAgIGRzZWxlY3Q6IFJlbW92ZSBib2d1cyBmYWxsaWJsZXN1YnByb2Nlc3MgcHJvdG90eXBlIGFuZCBtYWtlIGl0IHN0YXRpYworCisgZHNlbGVjdC9kc2VsZWN0LmggfCAgICAzIC0tLQorIGRzZWxlY3QvbWV0aG9kLmNjIHwgICAgMiArLQorIDIgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQorCitjb21taXQgZjQyNmIwMzFhYzg1OGZhMzBhY2U2OTk1OWE0M2I2MWZiNDBmNGJlOQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBGZWIgMTAgMDI6MTM6MzAgMjAxMCArMDEwMAorCisgICAgZHNlbGVjdDogVXNlIG1heC9taW4gaW5zdGVhZCBvZiBsZXNzZXJpbnQvZ3JlYXRlcmludAorCisgVE9ETyAgICAgICAgICAgICAgICAgfCAgICAxIC0KKyBkc2VsZWN0L2Jhc2VjbWRzLmNjICB8ICAgIDIgKy0KKyBkc2VsZWN0L2Jhc2VsaXN0LmNjICB8ICAgIDYgKysrLS0tCisgZHNlbGVjdC9iYXNldG9wLmNjICAgfCAgIDEwICsrKystLS0tLS0KKyBkc2VsZWN0L2RzZWxlY3QuaCAgICB8ICAgIDMgLS0tCisgZHNlbGVjdC9tZXRobGlzdC5jYyAgfCAgICAyICstCisgZHNlbGVjdC9wa2djbWRzLmNjICAgfCAgICA0ICsrLS0KKyBkc2VsZWN0L3BrZ2RlcGNvbi5jYyB8ICAgIDggKysrKy0tLS0KKyBkc2VsZWN0L3BrZ3RvcC5jYyAgICB8ICAgMTAgKysrKystLS0tLQorIDkgZmlsZXMgY2hhbmdlZCwgMjAgaW5zZXJ0aW9ucygrKSwgMjYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAwNzhjMjRkZWZlMjMwNGQ3ZjdhODAxMmMyOTYwYjNmMDZhZDBjM2IwCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIEZlYiA4IDE0OjQ4OjQ5IDIwMTAgKzAxMDAKKworICAgIGRzZWxlY3Q6IERvIG5vdCBzZWxmIHNoYWRvdyBiaW5kIG1lbWJlcgorCisgZHNlbGVjdC9iaW5kaW5ncy5jYyB8ICAgMjAgKysrKysrKysrKy0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDEwIGluc2VydGlvbnMoKyksIDEwIGRlbGV0aW9ucygtKQorCitjb21taXQgODZjOTBkOTI3YjU1Y2EyMDNkYzhmNjY2ZDQ1ZDBmOTQxZjVmOWM5MAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBGZWIgOCAxNDo0NzowMCAyMDEwICswMTAwCisKKyAgICBkc2VsZWN0OiBEbyBub3Qgc2hhZG93IGdsb2JhbCB0aGlzbmFtZSB2YXJpYWJsZQorCisgZHNlbGVjdC9iYXNlY21kcy5jYyB8ICAgMTEgKysrKysrLS0tLS0KKyBkc2VsZWN0L3BrZ2xpc3QuY2MgIHwgICAgOSArKysrKy0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDExIGluc2VydGlvbnMoKyksIDkgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA1ZmVmOTBhMjk2MDA1M2U5YjI0MzA0ZTJhMjY2M2ZiMWVkN2RhZmIxCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIEZlYiA4IDE0OjU3OjMxIDIwMTAgKzAxMDAKKworICAgIHMtcy1kOiBEbyBub3Qgc2hhZG93IGdsb2JhbCB2YXJpYWJsZXMKKworIHV0aWxzL3N0YXJ0LXN0b3AtZGFlbW9uLmMgfCAgIDE5ICsrKysrKysrKy0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDkgaW5zZXJ0aW9ucygrKSwgMTAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBiNjFkM2Y0OGJiMWQ5OTFkYTRkYTU5NmMzM2Q4YjhiMzQ1NDQwMWQxCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIEZlYiA4IDE1OjI2OjAwIDIwMTAgKzAxMDAKKworICAgIGxpYmRwa2c6IERvIG5vdCBzaGFkb3cgZ2xvYmFsIGNvbXByZXNzb3IgdmFyaWFibGUKKyAgICAKKyAgICBSZW5hbWUgY29tcHJlc3NvciB0byBjb21wcmVzc29yX2FycmF5LCBhcyBhIHNpZGUgZWZmZWN0IGl0IG1ha2VzIHRoZQorICAgIHZhcmlhYmxlIG5hbWUgbW9yZSBjbGVhci4KKworIGxpYi9kcGtnL2NvbXByZXNzLmMgfCAgIDE0ICsrKysrKystLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA3IGluc2VydGlvbnMoKyksIDcgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBjMWQ3ZGViY2E2MjI2MWUzMTI4NmJiNjU2MDQ4ZGZiNmJlMTFlYWQ1CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIEZlYiA4IDEyOjIwOjQ5IDIwMTAgKzAxMDAKKworICAgIGxpYmRwa2c6IERvIG5vdCBsb3NlIGNvbnN0IHF1YWxpZmllciBvbiBhIGNhc3QgaW4gcGF0aF9xdW90ZV9maWxlbmFtZQorCisgbGliL2Rwa2cvcGF0aC5jIHwgICAgMiArLQorIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgY2NkNjUxNTBiYmIwNzAxZWIzMmIyN2E2ZTI2MjgwNmM3YjM5M2QxMgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBGZWIgOCAxMjoyMzoxNiAyMDEwICswMTAwCisKKyAgICBsaWJkcGtnOiBSZW1vdmUgdmFyaWFibGUgbCBzaGFkb3dpbmcgYSBwcmV2aW91cyBkZWZpbml0aW9uCisKKyBsaWIvZHBrZy9teW9wdC5jIHwgICAgMSAtCisgMSBmaWxlcyBjaGFuZ2VkLCAwIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA1Y2YwMjNmMmQ1YmY2MDliNmFiYTIwYWE1YjVlMjg1YTkxZmJiYmNlCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIEZlYiA4IDAxOjU1OjIyIDIwMTAgKzAxMDAKKworICAgIGxpYmRwa2c6IFJlbmFtZSBzdGF0IHZhcmlhYmxlIHRvIHN0IHRvIGF2b2lkIHNoYWRvd2luZyBzdGF0KDIpCisKKyBsaWIvZHBrZy9wYXJzZS5jIHwgICAxNSArKysrKysrKy0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDggaW5zZXJ0aW9ucygrKSwgNyBkZWxldGlvbnMoLSkKKworY29tbWl0IDA0NDM4NmZmYTdmYjBjMzgyZWFmZmYxYTM4NDcwYmZhNTQ5ZDAwZDAKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gRmViIDggMDM6Mzc6NTUgMjAxMCArMDEwMAorCisgICAgZHBrZy1kZWI6IFJlbmFtZSBjb21wcmVzc29yIHRvIGRlY29tcHJlc3NvciB0byBhdm9pZCBzaGFkb3dpbmcKKworIGRwa2ctZGViL2V4dHJhY3QuYyB8ICAgIDggKysrKy0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKKworY29tbWl0IGM1OGZhOWZhMzM1M2JiOWExODA3YzA2ODk4ZThmNTViOThmMGE4YTEKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gRmViIDggMDM6MjA6NDEgMjAxMCArMDEwMAorCisgICAgZHBrZzogUmVkdWNlIHNjb3BlIG9mIHN0YXR1cyB2YXJpYWJsZSB0byBhdm9pZCBzaGFkb3dpbmcgYW5vdGhlciBvbmUKKworIHNyYy9wcm9jZXNzYXJjLmMgfCAgICA0ICsrKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDdiNDBhN2VjZmM5MmZlMzI1ZDAxNjQ3YzkxMzdlOGJkODI2M2FlNWMKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gRmViIDggMDM6MjA6MDMgMjAxMCArMDEwMAorCisgICAgZHBrZzogSW5jbHVkZSBtYWluLmggdG8gZ2V0IHRoZSBsaW1pdGVkZGVzY3JpcHRpb24gcHJvdG90eXBlCisKKyBzcmMvcGtnLXNob3cuYyB8ICAgIDIgKysKKyAxIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDkxOTc2ZTgyODJlYzMxYzEzMmZhNjEyNjc2YTRjODU1NTlmZmEwYWUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gRmViIDggMDM6MTk6MzEgMjAxMCArMDEwMAorCisgICAgZHBrZzogTWFrZSBwa2dfZmlsZXNfYWRkX2ZpbGUoKSBzdGF0aWMKKworIHNyYy9maWxlc2RiLmMgfCAgICAyICstCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA3N2NhZTM5N2ExNWJhZWNhMTFjMjZhZWI4MDZiNmJlNTE2ZTMzZDVmCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIEZlYiA4IDAzOjA1OjI4IDIwMTAgKzAxMDAKKworICAgIGxpYmRwa2c6IFVzZSB2YXJidWZfZGV0YWNoIGluc3RlYWQgb2YgYWQtaG9jIGNvZGUKKworIGxpYi9kcGtnL2RibW9kaWZ5LmMgfCAgICAyICstCisgbGliL2Rwa2cvZmllbGRzLmMgICB8ICAgIDIgKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDcwYjI5ZTNlOWUyZGVmNjQxNDVjOTA4YmNlNGNiMjkyMmRkYzhmMTkKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgRmViIDYgMjI6MDc6MjAgMjAxMCArMDEwMAorCisgICAgZHBrZzogRG8gbm90IHByaW50IHVuYW1iaWd1b3VzIGVwb2NoIG9uIGRwa2cgZmlsZSBvdmVyd3JpdGUgZXJyb3IKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAxICsKKyBzcmMvYXJjaGl2ZXMuYyAgIHwgICAgNCArKy0tCisgMiBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBkNzU2YWZjY2U0ZmEzNjE4NzFkMzZhNDY5ZmU5ZjI4ZjNjYjFiMTBiCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEZlYiA1IDIwOjA4OjI4IDIwMTAgKzAxMDAKKworICAgIGxpYmRwa2c6IFVzZSAlenUgaW5zdGVhZCBvZiAlZCBpbiB2YXJidWZfZ3JvdydzIGludGVybmVyciBjYWxsCisKKyBsaWIvZHBrZy92YXJidWYuYyB8ICAgIDIgKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDgxMjExNWEwZjUyMWY5NzFjNmY3Y2E3N2E4YTg2NDZmNGI5MzE0MzUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgRmViIDUgMTk6NTg6MjYgMjAxMCArMDEwMAorCisgICAgbGliZHBrZzogQWRkIGFuZCB1c2UgbmV3IERQS0dfQVRUUl9WUFJJTlRGCisgICAgCisgICAgVGhpcyBuZXcgYXR0cmlidXRlIG1hcmtzIGEgZnVuY3Rpb24gdGhhdCB1c2VzIGZvcm1hdCBzdHJpbmdzIHdpdGggYQorICAgIHZhX2xpc3QgYXJndW1lbnQuCisKKyBsaWIvZHBrZy9kcGtnLmggICB8ICAgIDIgKy0KKyBsaWIvZHBrZy9tYWNyb3MuaCB8ICAgIDEgKworIGxpYi9kcGtnL3ZhcmJ1Zi5oIHwgICAgMyArKy0KKyAzIGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IGFiNWJhMGFiYThlN2I4NDBiNjlkNGUyNWFiNTE2MTYzNTJkNjU5ZjgKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gRmViIDggMjA6MzM6NTUgMjAxMCArMDEwMAorCisgICAgTWFyayBzZXZlcmFsIGZ1bmN0aW9ucyB3aXRoIERQS0dfQVRUUl9QUklOVEYKKworIGxpYi9kcGtnL2Rwa2cuaCAgICAgICAgICAgfCAgICAzICsrLQorIHV0aWxzL3N0YXJ0LXN0b3AtZGFlbW9uLmMgfCAgICAyICstCisgMiBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA0OTZhMzIxY2Q5ZGI0MTEzMDg3YmYzMmRhM2MwYzA5OGE2ZTA3MzVjCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIEZlYiA4IDIwOjMzOjMwIDIwMTAgKzAxMDAKKworICAgIE1hcmsgc2V2ZXJhbCBmdW5jdGlvbnMgd2l0aCBEUEtHX0FUVFJfTk9SRVQKKworIGRwa2ctZGViL21haW4uYyAgICAgIHwgICAgNCArKy0tCisgZHBrZy1zcGxpdC9tYWluLmMgICAgfCAgICA0ICsrLS0KKyBkc2VsZWN0L21haW4uY2MgICAgICB8ICAgIDQgKystLQorIGxpYi9kcGtnL2NvbXByZXNzLmMgIHwgICAyNiArKysrKysrKysrKysrLS0tLS0tLS0tLS0tLQorIGxpYi9kcGtnL2NvbXByZXNzLmggIHwgICAgNiArKysrLS0KKyBsaWIvZHBrZy9teW9wdC5jICAgICB8ICAgIDIgKy0KKyBsaWIvZHBrZy9wYXJzZWR1bXAuaCB8ICAgIDIgKy0KKyBsaWIvZHBrZy90cmlnbGliLmMgICB8ICAgIDIgKy0KKyBzcmMvbWFpbi5jICAgICAgICAgICB8ICAgIDQgKystLQorIHNyYy9xdWVyeS5jICAgICAgICAgIHwgICAgNCArKy0tCisgc3JjL3N0YXRjbWQuYyAgICAgICAgfCAgICA0ICsrLS0KKyBzcmMvdHJpZ2NtZC5jICAgICAgICB8ICAgIDQgKystLQorIDEyIGZpbGVzIGNoYW5nZWQsIDM0IGluc2VydGlvbnMoKyksIDMyIGRlbGV0aW9ucygtKQorCitjb21taXQgODhlNjNmYmRhYTZkODViNjk4ZWFjMDZjZmEyMDlmYTc5MDhjNzc5NgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBGZWIgOCAxOTowNDozOSAyMDEwICswMTAwCisKKyAgICBNb3ZlIERQS0dfQVRUUiBhbm5vdGF0aW9ucyBmcm9tIHN0YXRpYyBkZWNsYXJhdGlvbiB0byB0aGUgZGVmaW5pdGlvbgorCisgZHBrZy1kZWIvZXh0cmFjdC5jICAgICAgICB8ICAgIDUgKysrLS0KKyBkc2VsZWN0L21ldGhwYXJzZS5jYyAgICAgIHwgICAgOSArKysrKy0tLS0KKyBsaWIvZHBrZy9jb21wcmVzcy5jICAgICAgIHwgICAgNSArLS0tLQorIGxpYi9kcGtnL2VoYW5kbGUuYyAgICAgICAgfCAgICA0ICstLS0KKyBsaWIvZHBrZy9teW9wdC5jICAgICAgICAgIHwgICAgNSArLS0tLQorIGxpYi9kcGtnL3N1YnByb2MuYyAgICAgICAgfCAgICA0ICstLS0KKyB1dGlscy9zdGFydC1zdG9wLWRhZW1vbi5jIHwgICAgOSArKy0tLS0tLS0KKyA3IGZpbGVzIGNoYW5nZWQsIDE0IGluc2VydGlvbnMoKyksIDI3IGRlbGV0aW9ucygtKQorCitjb21taXQgYjQyODRhZjQ4Y2U3OGRiZmEzNGIyMDAwNGI5ZTFhYjI2ODA2MzE4OAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBGZWIgOCAxODo0NToxMiAyMDEwICswMTAwCisKKyAgICBidWlsZDogQWRkIG1vcmUgd2FybmluZ3MgdG8gLS1lbmFibGUtY29tcGlsZXItd2FybmluZ3MKKworIG00L2Rwa2ctY29tcGlsZXIubTQgfCAgIDEyICsrKysrKysrKy0tLQorIDEgZmlsZXMgY2hhbmdlZCwgOSBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQorCitjb21taXQgMmUyZjEzZDgzZmYzMDU4YmEzMTYxNDE0OGIyY2U0MzdjZDFhNDRiZQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBGZWIgMTYgMTM6NTE6NTQgMjAxMCArMDEwMAorCisgICAgTW92ZSBGcmFuayB0byBmb3JtZXIgbWFpbnRhaW5lcnMKKworIEFVVEhPUlMgfCAgICAyICstCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA1OGE5NGM4NWU0MWVkZjk3ZThhZThhOTNlZmZjYTE5NjM5YmMwMDdiCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIEZlYiAxNiAxMzo0ODowNyAyMDEwICswMTAwCisKKyAgICBTaGlwIGRlYi1zcGxpdCBtYW4gcGFnZSBpbiBkcGtnLWRldiBwYWNrYWdlCisKKyBkZWJpYW4vZHBrZy1kZXYuaW5zdGFsbCB8ICAgIDEgKworIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgNTMzMmUwZjY1NGZjNWU0YzU2MDhjYjY0YjRhMmFmMzE0MzcxZjAxMAorQXV0aG9yOiBCcmlhbiBNdXJyYXkgPGJyaWFuQHVidW50dS5jb20+CitEYXRlOiAgIFNhdCBGZWIgMTMgMDk6NDI6MzUgMjAxMCArMDEwMAorCisgICAgRHBrZzo6VmVuZG9yOjpVYnVudHU6OmZpbmRfbGF1bmNocGFkX2Nsb3NlcygpOiBkb24ndCByZXR1cm4gZHVwbGljYXRlIGJ1ZyBudW1iZXJzCisgICAgCisgICAgRW5zdXJlIHdlIGRvbid0IHJldHVybiB0aGUgc2FtZSBidWcgbXVsdGlwbGUgdGltZXMgZXZlbiBpZgorICAgIGl0J3MgY2xvc2VkIG11bHRpcGxlIHRpbWVzLgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICAgfCAgICAzICsrKworIHNjcmlwdHMvRHBrZy9WZW5kb3IvVWJ1bnR1LnBtIHwgICAgNiArKystLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDYgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworY29tbWl0IGMxZGE5YTQ2MzVhYTEzMjhkOGEzNDhmYThlMGRlMjRkMzZiOGY1ZWYKK0F1dGhvcjogUGV0ZXIgS3JlZnRpbmcgPHBldGVya0BkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gSmFuIDMxIDIwOjA1OjIyIDIwMTAgKzAxMDAKKworICAgIFVwZGF0ZSBTd2VkaXNoIHRyYW5zbGF0aW9uLgorICAgIAorICAgIHBvL3N2LnBvOiA5NjV0MGYwdS4KKyAgICBtYW4vcG8vc3YucG86IDE2NTZ0MGYwdS4KKyAgICBzY3JpcHRzL3BvL3N2LnBvOiA0ODV0MGYwdS4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAxICsKKyBtYW4vcG8vc3YucG8gICAgIHwgICAgOSArKysrLS0tLS0KKyBwby9zdi5wbyAgICAgICAgIHwgICAxMCArKysrKy0tLS0tCisgc2NyaXB0cy9wby9zdi5wbyB8ICAgMTIgKysrKysrLS0tLS0tCisgNCBmaWxlcyBjaGFuZ2VkLCAxNiBpbnNlcnRpb25zKCspLCAxNiBkZWxldGlvbnMoLSkKKworY29tbWl0IDA0OTRmOTViNDc5OGZiMWJjNDNkMjk1YTViNTgzMjFjNDYxNDVhMmIKK0F1dGhvcjogU3ZlbiBKb2FjaGltIDxzdmVuam9hY0BnbXguZGU+CitEYXRlOiAgIFNhdCBKYW4gMzAgMTA6MzY6MjkgMjAxMCArMDEwMAorCisgICAgR2VybWFuIGRwa2cgdHJhbnNsYXRpb24gdXBkYXRlCisgICAgCisgICAgVXBkYXRlIHRvIDk3MHQuCisKKyBwby9kZS5wbyB8IDExNTAgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDYwMSBpbnNlcnRpb25zKCspLCA1NDkgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA2ODgxNTU1NTAxNTJmNTg1ZGMxMWExZTJmMmFlNWQ4MmJmNDEyN2Y0CitBdXRob3I6IFN2ZW4gSm9hY2hpbSA8c3ZlbmpvYWNAZ214LmRlPgorRGF0ZTogICBTYXQgSmFuIDMwIDEwOjM0OjExIDIwMTAgKzAxMDAKKworICAgIHBvL01ha2V2YXJzOiBBZGQg4oCdLS1mcm9tLWNvZGU9VVRGLTjigJwgdG8gWEdFVFRFWFRfT1BUSU9OUworICAgIAorICAgIE90aGVyd2lzZSB4Z2V0dGV4dCB3aWxsIGZhaWwgd2hlbiBpdCBzdHVtYmxlcyB1cG9uIG5vbi1BU0NJSQorICAgIGNoYXJhY3RlcnMgaW4gdXBkYXRlLWFsdGVybmF0aXZlcy5wbCwgZXZlbiBpZiB0aG9zZSBhcmUgb25seQorICAgIHVzZWQgaW4gY29tbWVudHMuCisKKyBwby9NYWtldmFycyB8ICAgIDIgKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDMxMDE4OTljZTJhZTY1YTYwZDIxMmJhNzRlZWI4Y2I1YTZhNzZhNjkKK0F1dGhvcjogU3ZlbiBKb2FjaGltIDxzdmVuam9hY0BnbXguZGU+CitEYXRlOiAgIFNhdCBKYW4gMzAgMDk6NTc6NTQgMjAxMCArMDEwMAorCisgICAgRml4IHBvL1BPVEZJTEVTLmluCisgICAgCisgICAgUmVmbGVjdCByZW5hbWUgb2YgY29tcHJlc3Npb24uYyB0byBjb21wcmVzcy5jIGluIGNvbW1pdAorICAgIGI2NDVjMzk3MjM5Y2Q2Mzc4ODMxMjJhZjQxMDZmNmQ3ZGU0Yzk3MjkuCisKKyBwby9QT1RGSUxFUy5pbiB8ICAgIDIgKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDY5NzhkMmUxZDc5OGU3OGEyZDk0ZTJiMTFiNjBjM2MyMjEwYWU1MjkKK0F1dGhvcjogQ2hyaXN0aWFuIFBFUlJJRVIgPGJ1YnVsbGVAZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IEphbiAzMCAwOToxNDowMSAyMDEwICswMTAwCisKKyAgICBGcmVuY2ggIG1hbnBhZ2VzIHRyYW5zbGF0aW9uIHVwZGF0ZQorCisgbWFuL3BvL2ZyLnBvIHwgIDMxNiArKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAxMzEgaW5zZXJ0aW9ucygrKSwgMTg1IGRlbGV0aW9ucygtKQorCitjb21taXQgYjJlODQyM2M5ZWJmNTAwYTE2YjJmODZmYzExZTRhYzE1NzFhMWZhMAorQXV0aG9yOiBNaWxvIENhc2FncmFuZGUgPG1pbG9AdWJ1bnR1LmNvbT4KK0RhdGU6ICAgU2F0IEphbiAzMCAwODoyMjo0NiAyMDEwICswMTAwCisKKyAgICBJdGFsaWFuIHRyYW5zbGF0aW9uIHVwZGF0ZQorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDEgKworIHBvL2l0LnBvICAgICAgICAgfCAgIDkyICsrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCA4NyBkZWxldGlvbnMoLSkKKworY29tbWl0IGNjYThhMzA2NDg2NThlNDNhNGRhYjk1ZTY2NDMwMzJlMzg4YTUzNzIKK0F1dGhvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitEYXRlOiAgIFRodSBKYW4gMjggMjE6NTE6MzYgMjAxMCArMDEwMAorCisgICAgVXBkYXRlIEdlcm1hbiB0cmFuc2xhdGlvbiBvZiBtYW51YWwgcGFnZXMKKyAgICAKKyAgICBVcGRhdGUgdG8gMTY4MnQuCisKKyBtYW4vcG8vZGUucG8gfCAgIDE1ICsrKysrKysrKysrKysrLQorIDEgZmlsZXMgY2hhbmdlZCwgMTQgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDk0OTE3YmZhNzdhYzAyOTUwODlmNGY2Yzg0MzdhODNkZWM0ZjZjMWMKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgSmFuIDI3IDIwOjA0OjE0IDIwMTAgKzAxMDAKKworICAgIGRwa2ctZGViOiBDbG9zZSBmaWxlIGRlc2NyaXB0b3JzIGluIGluZm9fc3BldygpCisKKyBkcGtnLWRlYi9pbmZvLmMgfCAgICAxICsKKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDIwNDkzZDE3NmRkMTc3YWU5N2FkNTk4NWUzYjlkN2JhMTBlMTk3YWYKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgSmFuIDI3IDE3OjMwOjIxIDIwMTAgKzAxMDAKKworICAgIGRwa2ctZGViOiBVc2UgZmRfZmRfY29weSBpbnN0ZWFkIG9mIHN0cmVhbV9mZF9jb3B5CisgICAgCisgICAgQXZvaWQgYSB1c2FnZSBvZiBzdGRpbyBiYXNlZCBidWZmZXIgSS9PLCB0byB0cnkgdG8gZ2V0IHJpZCBvZiBpdCBhdCBzb21lCisgICAgcG9pbnQgaW4gdGhlIGZ1dHVyZS4KKworIGRwa2ctZGViL2luZm8uYyB8ICAgIDkgKysrKystLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBmMjkxNzUxOTIyYzA0NTdiOTM2ZmM2OTNiYTFiNWVhNGQ3Mzc3MzdkCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIEphbiAyNyAxOTozNTo0OSAyMDEwICswMTAwCisKKyAgICBsaWJkcGtnOiBMZXQgYmFja2VuZHMgZGVjaWRlIGRlZmF1bHQgY29tcHJlc3Npb24gbGV2ZWwKKyAgICAKKyAgICBXaGVuIGNvbXByZXNzaW5nIHBhY2thZ2VzIHdpdGggZ3ppcCBvciBiemlwMiwgdGhlIHRyYWRlb2ZmIGlzCisgICAgY2xlYXI6IGEgYmV0dGVyIGNvbXByZXNzaW9uIHJhdGlvIGZvciBhIGRpc3RyaWJ1dGVkIHBhY2thZ2UgaXMKKyAgICBnZW5lcmFsbHkgd29ydGggc3BlbmRpbmcgc29tZSBleHRyYSB0aW1lIGF0IGJ1aWxkIHRpbWUuIFNpbmNlCisgICAgYmV0dGVyIGNvbXByZXNzZWQgcGFja2FnZXMgYXJlIG5vdCBtdWNoIG1vcmUgaW5jb252ZW5pZW50IHRvCisgICAgZGVjb21wcmVzcyBhdCBhbGwsIGRwa2cgZGVmYXVsdHMgdG8gdGhlIG1heGltdW0gY29tcHJlc3Npb24gbGV2ZWwKKyAgICBhbmQgZGV2ZWxvcGVycyByYXJlbHkgbmVlZCB0byBvdmVycmlkZSB0aGF0IGRlZmF1bHQuCisgICAgCisgICAgT24gdGhlIG90aGVyIGhhbmQsIExaNzctYmFzZWQgZGVjb21wcmVzc29ycyB1c2UgbW9yZSBtZW1vcnkgYXQKKyAgICBkZWNvbXByZXNzaW9uIHRpbWUgZm9yIG1vcmUgdGlnaHRseSBjb21wcmVzc2VkIHBhY2thZ2VzLCBzbyB0aGUKKyAgICBtYXhpbXVtIGNvbXByZXNzaW9uIGxldmVsIG9mIOKAmDnigJkgKHdoaWNoIHVzZXMgbW9yZSB0aGFuIDMyIE1pQgorICAgIG9mIG1lbW9yeSB0byBkZWNvbXByZXNzKSBjYW4gYmUgdG9vIGhpZ2guCisgICAgCisgICAgV2l0aCB0aGlzIHBhdGNoLCBpbnN0ZWFkIG9mIGRlZmF1bHRpbmcgdG8g4oCYOeKAmSwgdGhlIGNvbXByZXNzX2ZpbHRlcigpCisgICAgZnVuY3Rpb24gc2V0cyB0aGUgbGV2ZWwgdG8gdGhlIGJhY2tlbmQgZGVmYXVsdCBzdG9yZWQgaW4gdGhlIGNvbXByZXNzb3IKKyAgICBzdHJ1Y3R1cmUgaWYgdGhlIGxldmVsIGlzIOKAmC0x4oCZLiBBbGwgYmFja2VuZHMgY3VycmVudGx5IGRlZmF1bHQgdG8g4oCYOeKAmQorICAgIGZvciBub3c7IG5vIGNoYW5nZSBpbiBiZWhhdmlvciBpcyBpbnRlbmRlZC4KKyAgICAKKyAgICBCYXNlZC1vbi1wYXRjaC1ieTogSm9uYXRoYW4gTmllZGVyIDxqcm5pZWRlckBnbWFpbC5jb20+CisKKyBsaWIvZHBrZy9jb21wcmVzcy5jIHwgICAgNiArKysrKy0KKyBsaWIvZHBrZy9jb21wcmVzcy5oIHwgICAgMSArCisgMiBmaWxlcyBjaGFuZ2VkLCA2IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA5NWI2MTE5NGYzZTNiNzM3YzY3ZDkxMDgzZDFkNTFiZDQyMWE0MmU4CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIEphbiAyNyAxODo1OToyMiAyMDEwICswMTAwCisKKyAgICBsaWJkcGtnOiBDZW50cmFsaXplIGNvbXByZXNzb3Iga25vd2xlZGdlIGludG8gdGhlIGNvbXByZXNzIG1vZHVsZQorICAgIAorICAgIENyZWF0ZSBhIG5ldyBzdHJ1Y3R1cmUgdG8gaG9sZCB0aGUgbmFtZSwgZXh0ZW5zaW9uLCBhbmQgY29tcHJlc3MgYW5kCisgICAgZGVjb21wcmVzcyBtZXRob2RzIGZvciBlYWNoIGNvbXByZXNzb3IuIEFkZCBuZXcgZnVuY3Rpb25zIHRvIGZpbmQKKyAgICB0aGUgY29ycmVjdCBjb21wcmVzc29yIGJ5IG5hbWUgYW5kIGV4dGVuc2lvbi4gVGhpcyB3YXkgd2UgaGF2ZSB0aGUKKyAgICBpbmZvcm1hdGlvbiBsb2NhbGl6ZWQgaW4gYSBzaW5nbGUgcGxhY2UuCisKKyBkcGtnLWRlYi9idWlsZC5jICAgIHwgICAyNSArKystLS0tLS0tLS0tCisgZHBrZy1kZWIvZHBrZy1kZWIuaCB8ICAgIDUgKy0tCisgZHBrZy1kZWIvZXh0cmFjdC5jICB8ICAgMjcgKysrKystLS0tLS0tLS0KKyBkcGtnLWRlYi9tYWluLmMgICAgIHwgICAxMyArKy0tLS0tCisgbGliL2Rwa2cvY29tcHJlc3MuYyB8ICAxMDEgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tCisgbGliL2Rwa2cvY29tcHJlc3MuaCB8ICAgMjIgKysrKysrKystLS0tCisgNiBmaWxlcyBjaGFuZ2VkLCAxMDkgaW5zZXJ0aW9ucygrKSwgODQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA2YTUyZjEzYjVhZDBiMzA1OGVlYjQ2MzgzYWVlY2VlMzhlYmM2NjRmCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IEphbiAyOCAxNzoxMDoxMiAyMDEwICswMTAwCisKKyAgICBBZGQgY2hhbmdlbG9nIGVudHJ5IGZvciBjb21wcmVzc2lvbiBjb2RlIHJld29yaworCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDIgKysKKyAxIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDhiNzUzNDdhMGE4NmVkZjEwNWZkMGYwYmE2MWNjNTY2Mzk4Nzk2MDEKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgSmFuIDIyIDIyOjI1OjUzIDIwMTAgKzAxMDAKKworICAgIGxpYmRwa2c6IENoZWNrIGZvciBlcnJvcnMgZnJvbSBjb21wcmVzc2lvbiBvcGVuaW5nIGZ1bmN0aW9ucworICAgIAorICAgIFRob3NlIGZ1bmN0aW9ucyBtaWdodCBmYWlsIG1vc3RseSBkdWUgdG8gaW5zdWZmaWNpZW50IG1lbW9yeSwgbGV0J3MKKyAgICBjYXRjaCB0aG9zZSBhbmQgYmFpbCBvdXQsIGluc3RlYWQgb2Ygc2VnZmF1bHRpbmcgb24gdGhlIE5VTEwgc3RyZWFtcy4KKworIGxpYi9kcGtnL2NvbXByZXNzLmMgfCAgIDEwICsrKysrKysrKysKKyAxIGZpbGVzIGNoYW5nZWQsIDEwIGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBmZTc4M2M1NDEwZDllNjM5NTdhNzk2YWQxZTBkOTIzZTk5NjlmMmRiCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEphbiAyMiAxODo1MzoxNSAyMDEwICswMTAwCisKKyAgICBsaWJkcGtnOiBDaGVjayBmb3Igb3V0cHV0IGVycm9ycyB3aGVuIGNsb3NpbmcgZmlsZXMgb24gKGRlKWNvbXByZXNzaW9uCisgICAgCisgICAgQSBnemNsb3NlIGNhbGwgaGFzIHRoZSBzYW1lIHBvdGVudGlhbCBmb3IgZXJyb3JzIGFzIGEgd3JpdGUsCisgICAgc2luY2UgdGhlIGNvbXByZXNzb3IgbmVlZHMgdG8gZmx1c2ggaXRzIGJ1ZmZlcnMgYmVmb3JlIGNsb3NpbmcKKyAgICBpdHMgb3V0cHV0IGZpbGUuIFRoZSBzYW1lIGFwcGxpZXMgdG8gQloyX2J6Y2xvc2UsIGJ1dAorICAgIHVuZm9ydHVuYXRlbHkgbGliYnoyJ3MgZ3ppby1zdHlsZSBBUEkgZG9lcyBub3QgZXhwb3NlIHRoZSBlcnJvcgorICAgIGNvZGUsIGJ1dCB3ZSBjYW4gdXNlIHRoZSBuYXRpdmUtc3R5bGUgY2xvc2UgZnVuY3Rpb24gd2hpY2ggZG9lcworICAgIHJldHVybiB0aGUgZXJyb3IgY29kZS4KKyAgICAKKyAgICBTaW1pbGFybHksIGV4cGxpY2l0bHkgY2xvc2luZyBhIGZpbGUgZGVzY3JpcHRvciBjYW4gcmV2ZWFsIGVycm9ycworICAgIHdyaXRpbmcgb3V0IGJ1ZmZlcmVkIGRhdGEuCisgICAgCisgICAgQ2xvc2luZyBpbnB1dCBoYW5kbGVzLCBvbiB0aGUgb3RoZXIgaGFuZCwgd291bGQgYmUgYSB3YXN0ZSBvZgorICAgIHRpbWU6IGFsbCBpdCB3b3VsZCBhY2NvbXBsaXNoIGlzIHRvIGZyZWUgc29tZSByZXNvdXJjZXMgaGVsZCBieSBhCisgICAgcHJvY2VzcyB0aGF0IGlzIGFib3V0IHRvIGV4aXQgYW55d2F5LgorICAgIAorICAgIEJhc2VkLW9uLXBhdGNoLWJ5OiBKb25hdGhhbiBOaWVkZXIgPGpybmllZGVyQGdtYWlsLmNvbT4KKworIGxpYi9kcGtnL2NvbXByZXNzLmMgfCAgIDM4ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAzNCBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQorCitjb21taXQgYTQ5Yzc3YjVmOTBjNDQwZDYyZGYwODY1Njg5YWMyMTFhNGFmYjQxMAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBKYW4gMjIgMTM6NTg6NDIgMjAxMCArMDEwMAorCisgICAgbGliZHBrZzogR2l2ZSBjb21wcmVzcyBkZXNjcmlwdGlvbiB2YXJpYWJsZXMgbW9yZSBtZWFuaW5nZnVsIG5hbWVzCisgICAgCisgICAgUmVuYW1lIGRlc2MgdG8gZGVzY19mbXQgYW5kIHYgdG8gZGVzYy4KKworIGxpYi9kcGtnL2NvbXByZXNzLmMgfCAgIDMyICsrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAxNiBpbnNlcnRpb25zKCspLCAxNiBkZWxldGlvbnMoLSkKKworY29tbWl0IGM0MjNhZjA2OGIxN2EyMDI1ZWMxMzMzZjYyOTI4ZDI3ZTJmNzViOGIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgSmFuIDIyIDEzOjUyOjU4IDIwMTAgKzAxMDAKKworICAgIGxpYmRwa2c6IEZpeCBpbmRlbnRhdGlvbiBpbiBjb21wcmVzcy5jCisKKyBsaWIvZHBrZy9jb21wcmVzcy5jIHwgICA5MiArKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgNDYgaW5zZXJ0aW9ucygrKSwgNDYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA1MTc1ZTM4ODJkMjYwODc4MWFkYWJhODMzYjVhZGJiOTMyYTIzMGIyCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IEphbiAyMSAxNjo0MToyNCAyMDEwICswMTAwCisKKyAgICBsaWJkcGtnOiBSZWZhY3RvciAoZGUpY29tcHJlc3Npb24gY29kZSBpbnRvIGluZGl2aWR1YWwgZnVuY3Rpb25zCisgICAgCisgICAgTW92ZSBjb21wcmVzcyBhbmQgZGVjb21wcmVzcyBjb2RlIGZyb20gY29tcHJlc3NfY2F0IGFuZCBkZWNvbXByZXNzX2NhdAorICAgIHRvIG5ldyBmdW5jdGlvbnMgZm9yIGVhY2ggY29tcHJlc3Nvci4gQW5kIGRlZmluZSB0aGVtIHRvIHVzZSBlaXRoZXIgdGhlCisgICAgY29tbWFuZCBvciB0aGUgbGlicmFyeSAoaWYgYXZhaWxhYmxlKSB0byBoaWRlIHRoZSBpbXBsZW1lbnRhdGlvbiBmcm9tCisgICAgdGhlIGNhbGxlcnMgYW5kIHRvIG1ha2UgdGhlIGNvZGUgZWFzaWVyIHRvIHJlYWQuCisgICAgCisgICAgQmFzZWQtb24tcGF0Y2gtYnk6IEpvbmF0aGFuIE5pZWRlciA8anJuaWVkZXJAZ21haWwuY29tPgorCisgbGliL2Rwa2cvY29tcHJlc3MuYyB8ICAzNDggKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyMTkgaW5zZXJ0aW9ucygrKSwgMTI5IGRlbGV0aW9ucygtKQorCitjb21taXQgZmViMjQ4ZGYxNWM5OWYwOWJjMjA4ZjFjOWFkYWNlMGU4NGRiY2IwNgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBKYW4gMjcgMTg6MjY6NDcgMjAxMCArMDEwMAorCisgICAgbGliZHBrZzogSGFuZGxlIGNvbXByZXNzaW9uIGxldmVsIGFzIGFuIGludGVnZXIKKyAgICAKKyAgICBDaGFuZ2UgY29tcHJlc3NfZmlsdGVyKCkgdG8gdGFrZSBhbiBpbnQgZm9yIGNvbXByZXNzX2xldmVsLCBhbmQgYWRkCisgICAgYSBuZXcgZnVuY3Rpb24gaW4gZHBrZy1kZWIgdG8gcGFyc2UgYW5kIHZhbGlkYXRlIHRoZSBhcmd1bWVudCBvcHRpb24KKyAgICB0byBub3QgYWNjZXB0IGJvZ3VzIHZhbHVlcy4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgfCAgICAxICsKKyBkcGtnLWRlYi9idWlsZC5jICAgIHwgICAgNCArKy0tCisgZHBrZy1kZWIvZHBrZy1kZWIuaCB8ICAgIDIgKy0KKyBkcGtnLWRlYi9tYWluLmMgICAgIHwgICAyMCArKysrKysrKysrKysrKysrKystLQorIGxpYi9kcGtnL2NvbXByZXNzLmMgfCAgIDE3ICsrKysrKysrKy0tLS0tLS0tCisgbGliL2Rwa2cvY29tcHJlc3MuaCB8ICAgIDIgKy0KKyA2IGZpbGVzIGNoYW5nZWQsIDMyIGluc2VydGlvbnMoKyksIDE0IGRlbGV0aW9ucygtKQorCitjb21taXQgNGQ4OWMwNzAzYWM0Mjk1ZmNkM2ExMzRhNTI5ZDg3YTE5NjA2ODVkNQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBKYW4gMjQgMjM6MTQ6MjEgMjAxMCArMDEwMAorCisgICAgbGliZHBrZzogUmVuYW1lIChkZSljb21wcmVzc19jYXQgZnVudGlvbnMgdG8gKGRlKWNvbXByZXNzX2ZpbHRlcgorCisgZHBrZy1kZWIvYnVpbGQuYyAgICB8ICAgIDQgKystLQorIGRwa2ctZGViL2V4dHJhY3QuYyAgfCAgICAyICstCisgbGliL2Rwa2cvY29tcHJlc3MuYyB8ICAgIDggKysrKy0tLS0KKyBsaWIvZHBrZy9jb21wcmVzcy5oIHwgICAxMSArKysrKystLS0tLQorIDQgZmlsZXMgY2hhbmdlZCwgMTMgaW5zZXJ0aW9ucygrKSwgMTIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBhZDAxMGUxMjVmMGQ2YmY5NjMwNzVhZGQ1MzU3MWMzODg1MTE1MmJjCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIEphbiAyNCAyMzoxNDowNCAyMDEwICswMTAwCisKKyAgICBsaWJkcGtnOiBSZW5hbWUgY29tcHJlc3NfdHlwZV9jYXQgdG8gY29tcHJlc3NfdHlwZV9ub25lCisKKyBkcGtnLWRlYi9idWlsZC5jICAgIHwgICAgMiArLQorIGRwa2ctZGViL2V4dHJhY3QuYyAgfCAgICAyICstCisgZHBrZy1kZWIvbWFpbi5jICAgICB8ICAgIDIgKy0KKyBsaWIvZHBrZy9jb21wcmVzcy5jIHwgICAgNiArKystLS0KKyBsaWIvZHBrZy9jb21wcmVzcy5oIHwgICAgMiArLQorIDUgZmlsZXMgY2hhbmdlZCwgNyBpbnNlcnRpb25zKCspLCA3IGRlbGV0aW9ucygtKQorCitjb21taXQgM2FkMTA5MDQ2YzA3NWQwODc4OTAyZDQ3MjIxNWI0YWM1NTQwMWUxNQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBKYW4gMjQgMjM6MTI6MjUgMjAxMCArMDEwMAorCisgICAgZHBrZy1kZWI6IFJlbmFtZSBEQVRBTUVNQkVSX0NBVCB0byBEQVRBTUVNQkVSCisKKyBkcGtnLWRlYi9idWlsZC5jICAgIHwgICAgMiArLQorIGRwa2ctZGViL2Rwa2ctZGViLmggfCAgICAyICstCisgZHBrZy1kZWIvZXh0cmFjdC5jICB8ICAgIDIgKy0KKyAzIGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworY29tbWl0IGMyYjZkYmIwMTNjODM2YTcwZmE2MmNlODViZDBlODYyYjI0YTI5NDQKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgSmFuIDIyIDEzOjE4OjQxIDIwMTAgKzAxMDAKKworICAgIGxpYmRwa2c6IFVzZSBzbnByaW50ZiB0byBnZW5lcmF0ZSB0aGUgY29tcHJlc3Npb24gYXJndW1lbnQKKworIGxpYi9kcGtnL2NvbXByZXNzLmMgfCAgIDE3ICsrKysrKystLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA3IGluc2VydGlvbnMoKyksIDEwIGRlbGV0aW9ucygtKQorCitjb21taXQgMjRiNzI4YjMyZTY5ZDkzOThlYzAzZWQ4YTYyNTEyOTEyYWE2NWE3NQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBKYW4gMjIgMDE6MTA6MTcgMjAxMCArMDEwMAorCisgICAgbGliZHBrZzogU3dpdGNoIGZkX2ZkX2ZpbHRlcigpIHRvIHVzZSB0aGUgY29tbWFuZCBtb2R1bGUKKyAgICAKKyAgICBUaGlzIGFsbG93cyB0aGUgY29kZSB0byBwYXNzIGFyYml0cmFyeSBhcmd1bWVudHMsIGFuZCBtYWtlcyBpdCBlYXNpZXIgdG8KKyAgICBleHRlbmQgaW4gdGhlIGZ1dHVyZS4KKworIGxpYi9kcGtnL2NvbXByZXNzLmMgfCAgIDM0ICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDIzIGluc2VydGlvbnMoKyksIDExIGRlbGV0aW9ucygtKQorCitjb21taXQgNTA1MDc0OGYxYTZiYjBjMDcyOGY4YzA3ZjkwNThkNTQ1YzgwZDdlMAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBKYW4gOCAxODowMjowOSAyMDEwICswMTAwCisKKyAgICBVc2UgbmV3IGNvbW1hbmQgbW9kdWxlIGluc3RlYWQgb2YgYWQtaG9jIGNvZGUKKworIGRzZWxlY3QvbWV0aG9kLmNjIHwgICA2NyArKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0KKyBsaWIvZHBrZy9kcGtnLmggICB8ICAgIDEgLQorIHNyYy9hcmNoaXZlcy5jICAgIHwgICAzMyArKysrKystLS0tLS0tLQorIHNyYy9oZWxwLmMgICAgICAgIHwgIDEyOCArKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgc3JjL21haW4uYyAgICAgICAgfCAgIDUwICsrKysrKy0tLS0tLS0tLS0tLS0tLQorIDUgZmlsZXMgY2hhbmdlZCwgMTIyIGluc2VydGlvbnMoKyksIDE1NyBkZWxldGlvbnMoLSkKKworY29tbWl0IDA4YzBkZDI1Mjk1MDM4ODk0ZDc0ZjlhMGNlNTJmZTA2NzI3YzEzMzIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgSmFuIDggMTY6NDg6MTcgMjAxMCArMDEwMAorCisgICAgbGliZHBrZzogTmV3IGNvbW1hbmQgbW9kdWxlCisgICAgCisgICAgVGhpcyBzaG91bGQgZWFzZSByZWZhY3RvcmluZyBzb21lIG9mIHRoZSBkdXBsaWNhdGUgY29kZSBkZWFsaW5nIHdpdGgKKyAgICBjb21tYW5kIGV4ZWN1dGlvbi4gSXQgd2lsbCBhbHNvIG1ha2UgdGhlIGNvZGUgY2xlYXJlci4KKworIGxpYi9kcGtnL01ha2VmaWxlLmFtICAgICAgfCAgICAxICsKKyBsaWIvZHBrZy9jb21tYW5kLmMgICAgICAgIHwgIDE4NCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKKyBsaWIvZHBrZy9jb21tYW5kLmggICAgICAgIHwgICA1NCArKysrKysrKysrKysrCisgbGliL2Rwa2cvdGVzdC8uZ2l0aWdub3JlICB8ICAgIDEgKworIGxpYi9kcGtnL3Rlc3QvTWFrZWZpbGUuYW0gfCAgICAyICsKKyBsaWIvZHBrZy90ZXN0L3QtY29tbWFuZC5jIHwgIDE0MCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCisgcG8vUE9URklMRVMuaW4gICAgICAgICAgICB8ICAgIDEgKworIDcgZmlsZXMgY2hhbmdlZCwgMzgzIGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyZGNhOTcwZWFiNmY2YTE3NjFmNGEzZGMyZGU3ZTAxNmE3NWUzM2Y4CitBdXRob3I6IEpvbmF0aGFuIE5pZWRlciA8anJuaWVkZXJAZ21haWwuY29tPgorRGF0ZTogICBUaHUgSmFuIDcgMDA6NDc6MjggMjAxMCArMDEwMAorCisgICAgbGliZHBrZzogUmVvcmRlciBmZF9mZF9maWx0ZXIoKSBmdW5jdGlvbiBhcmd1bWVudHMKKyAgICAKKyAgICBQdXQgdGhlIGNvbXByZXNzaW9uIG9wdGlvbnMgc3RyaW5nIGxhc3Qgc28gaXQgY2FuIGJlIHJlcGxhY2VkIHdpdGgKKyAgICB2YXJpYWJsZSBhcmd1bWVudHMgZm9yIHRoZSBjb21tYW5kIHRvIGV4ZWN1dGUuCisgICAgCisgICAgU2lnbmVkLW9mZi1ieTogSm9uYXRoYW4gTmllZGVyIDxqcm5pZWRlckBnbWFpbC5jb20+CisgICAgU2lnbmVkLW9mZi1ieTogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisgbGliL2Rwa2cvY29tcHJlc3MuYyB8ICAgMTcgKysrKysrKystLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDggaW5zZXJ0aW9ucygrKSwgOSBkZWxldGlvbnMoLSkKKworY29tbWl0IDEzZjcxOGVkZDMyZDQ1NDEyNzc4NmVmZGFmNTEyYTRjY2ZkZjBjNTgKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgSmFuIDI4IDE2OjMwOjEyIDIwMTAgKzAxMDAKKworICAgIGRwa2c6IFVzZSBhIGxpdGVyYWwgc3RyaW5nIGZvciB0aGUgYXJjaGl2ZSBmaWxlIHBhdHRlcm4KKyAgICAKKyAgICBSZW1vdmUgbm93IHVudXNlZCBtYWNyby4KKworIGxpYi9kcGtnL2Rwa2cuaCB8ICAgIDIgLS0KKyBzcmMvYXJjaGl2ZXMuYyAgfCAgICAyICstCisgMiBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBmMDk2ZDYyMjBhNGVlMDA2ZTYwNWU3MDZiYzRjZGQ3MzcyNGI5NmRmCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEphbiA4IDE3OjU4OjUyIDIwMTAgKzAxMDAKKworICAgIGRwa2c6IFJlbW92ZSBzY3JpcHRuYW1lIGFyZ3VtZW50IGZyb20gZG9fc2NyaXB0KCkKKworIHNyYy9oZWxwLmMgfCAgIDEzICsrKysrLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDUgaW5zZXJ0aW9ucygrKSwgOCBkZWxldGlvbnMoLSkKKworY29tbWl0IDA0YjgzNzE2MjVjZWU5ZjZiZDJhZTVmZWYxYTVmNTFkZDY4NDVjMTcKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgSmFuIDcgMjI6NTQ6MTYgMjAxMCArMDEwMAorCisgICAgZHBrZzogTW92ZSBleGVjIGVycm9yIHN0cmluZyBmcm9tIGRvX3NjcmlwdCBhcmd1bWVudCB0byBvaHNoaXRlIGNhbGwKKworIHNyYy9oZWxwLmMgfCAgIDEyICsrKysrKy0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCA2IGRlbGV0aW9ucygtKQorCitjb21taXQgYzQ4MmFlNDk5OWIyNDIwMmNjMWVmYWM5ZGNlNGFkYTg3MTY1ODZjMAorQXV0aG9yOiBKb25hdGhhbiBOaWVkZXIgPGpybmllZGVyQGdtYWlsLmNvbT4KK0RhdGU6ICAgV2VkIEphbiA2IDE0OjIxOjMyIDIwMTAgKzAxMDAKKworICAgIGxpYmRwa2c6IENoZWNrIGZvciB3cml0ZSBlcnJvcnMgZHVyaW5nIGRlY29tcHJlc3Npb24KKyAgICAKKyAgICBBbiB1bm5vdGljZWQgd3JpdGUgZXJyb3IgaXMgdW5saWtlbHkgdG8gY2F1c2UgbWFqb3IgcHJvYmxlbXMsCisgICAgc2luY2UgdGhlIHByb2Nlc3Mgb24gdGhlIG90aGVyIGVuZCBzdGlsbCBoYXMgYSBjaGFuY2UgdG8gbm90aWNlCisgICAgdGhlIG1hbmdsZWQgc3RyZWFtLiBCdXQgaXQgaXMgd29ydGggZml4aW5nLCBlc3BlY2lhbGx5IGJlY2F1c2UKKyAgICB0aGUgd3JpdGluZyBlbmQgY2FuIGdpdmUgYSBiZXR0ZXIgZXJyb3IgbWVzc2FnZS4KKyAgICAKKyAgICBTaWduZWQtb2ZmLWJ5OiBKb25hdGhhbiBOaWVkZXIgPGpybmllZGVyQGdtYWlsLmNvbT4KKyAgICBTaWduZWQtb2ZmLWJ5OiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKyBsaWIvZHBrZy9jb21wcmVzcy5jIHwgICAxMiArKysrKysrKy0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDggaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKKworY29tbWl0IGM5ZDgxNzRjMWI3OGRiNWFkYTJkNzdlODUyMTI3MzYwMzRhMjA3NjgKK0F1dGhvcjogSm9uYXRoYW4gTmllZGVyIDxqcm5pZWRlckBnbWFpbC5jb20+CitEYXRlOiAgIFdlZCBKYW4gNiAxNDowNTozNCAyMDEwICswMTAwCisKKyAgICBsaWJkcGtnOiBEbyBub3QgaGFuZGxlIEVJTlRSIGluIGNvbXByZXNzaW9uIGNvZGUKKyAgICAKKyAgICBUaGUgY3VycmVudCBjYWxsZXJzIGZvciB0aGUgY29tcHJlc3Npb24gY29kZSBkbyBub3QgaW5zdGFsbCBzaWduYWwKKyAgICBoYW5kbGVycywgc28gdGhlcmUgaXMgbm8gb2NjYXNpb24gdG8gdGVzdCB0aGUgRUlOVFIgaGFuZGxpbmcuCisgICAgUGVyaGFwcyBmb3IgdGhpcyByZWFzb24sIHNpbmNlIGNvbW1pdCA3YmY2ZTAgKGFkZCBzdXBwb3J0IGZvciB1c2luZworICAgIGxpYnosIDIwMDAtMTItMDkpIHdoZW4gdGhlIGN1cnJlbnQgY29tcHJlc3Npb24vZGVjb21wcmVzc2lvbiBjb2RlCisgICAgd2FzIGludHJvZHVjZWQsIHRoZSBFSU5UUiBoYW5kbGluZyBoYXMgYmVlbiBicm9rZW4gaW4gYSBudW1iZXIgb2YKKyAgICB3YXlzOgorICAgIAorICAgICAqIEludGVycnVwdGVkIHJlYWRzIHdlcmUgdHJlYXRlZCBhcyBlbmQgb2YgZmlsZSB1bnRpbCB2ZXJ5IHJlY2VudGx5LgorICAgICAqIEludGVycnVwdGVkIHdyaXRlcyBkdXJpbmcgZGVjb21wcmVzc2lvbiBjYXVzZSBwb3J0aW9ucyBvZiB0aGUKKyAgICAgICBvdXRwdXQgdG8gYmUgZGlzY2FyZGVkLgorICAgICAqIEludGVycnVwdGVkIHdyaXRlcyBkdXJpbmcgY29tcHJlc3Npb24gYXJlIHRyZWF0ZWQgYXMgZXJyb3JzLAorICAgICAgIHVubGVzcyB0aGUgaW50ZXJydXB0aW9uIGhhcHBlbnMgYmVmb3JlIGFueSBkYXRhIGZyb20gdGhlIG91dHB1dAorICAgICAgIGJ1ZmZlciBjYW4gYmUgY29uc3VtZWQuCisgICAgCisgICAgU2luY2UgemxpYiBhdCBsZWFzdCBjYW5ub3QgcmVjb3ZlciBmcm9tIGFuIGludGVycnVwdGVkIHdyaXRlIGFueXdheSwKKyAgICBpdCBzZWVtcyBiZXR0ZXIgdG8gYWx3YXlzIHRyZWF0IEVJTlRSIGxpa2UgYW55IG90aGVyIGVycm9yLiBGb3Igbm93CisgICAgY2FsbGVycyBzaG91bGQgc3BlY2lmeSB0aGUgU0FfUkVTVEFSVCBmbGFnIHdoZW4gaW5zdGFsbGluZyBzaWduYWwKKyAgICBoYW5kbGVycyBmb3IgY29ycmVjdCBiZWhhdmlvciBvbiBTeXN0ZW0gViBzdHlsZSBvcGVyYXRpbmcgc3lzdGVtcworICAgIChzdWNoIGFzIFNvbGFyaXMpLgorICAgIAorICAgIFNpZ25lZC1vZmYtYnk6IEpvbmF0aGFuIE5pZWRlciA8anJuaWVkZXJAZ21haWwuY29tPgorICAgIFNpZ25lZC1vZmYtYnk6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworIGxpYi9kcGtnL2NvbXByZXNzLmMgfCAgIDI4ICsrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDkgaW5zZXJ0aW9ucygrKSwgMTkgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA1ZTY4MmFiZTVlOWNiMWFkZGVkNDNkMzRhMDg2NWMwMDBiNTcwMWFhCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIEphbiAyMCAxNjo1NzowNiAyMDEwICswMTAwCisKKyAgICBsaWJkcGtnOiBNb3ZlIHJlYWQgY2FsbHMgaW5zaWRlIChkZSljb21wcmVzc2lvbiBsb29wcworCisgbGliL2Rwa2cvY29tcHJlc3MuYyB8ICAgNDAgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMzIgaW5zZXJ0aW9ucygrKSwgOCBkZWxldGlvbnMoLSkKKworY29tbWl0IDUxNjlkZTc2YzRhNzhiM2ZlNjk0ZWE0NTJiM2YzNGExOWVhNWI2MzcKK0F1dGhvcjogSm9uYXRoYW4gTmllZGVyIDxqcm5pZWRlckBnbWFpbC5jb20+CitEYXRlOiAgIFN1biBKYW4gMTcgMTY6MzI6NTYgMjAxMCArMDEwMAorCisgICAgbGliZHBrZzogUHJvcGVybHkgaGFuZGxlIHJlYWQgZXJyb3JzIG9uIChkZSljb21wcmVzc2lvbgorICAgIAorICAgIEluc3RlYWQgb2YgdXNpbmcgdGhlIGVycm9yIGhhbmRsaW5nIGNvZGUsIGZhaWxlZCByZWFkcyBhcmUgYmVpbmcKKyAgICB0cmVhdGVkIGFzIGVuZCBvZiBmaWxlLiBUaGlzIGFwcGxpZXMgb25seSB3aGVuIHVzaW5nIHpsaWIgYW5kIGxpYmJ6Mi4KKyAgICBJbiBwcmFjdGljZSBpdCBwcm9iYWJseSBoYXMgbm90IGNhdXNlZCBwcm9ibGVtcyBiZWNhdXNlIEkvTyBlcnJvcnMKKyAgICBhcmUgcmFyZSwgYW5kIG9mdGVuIHRoZSBwcm9ncmFtIGF0IHRoZSBvdGhlciBlbmQgb2YgdGhlIHBpcGUgY2FuCisgICAgbm90aWNlIHRoZSBwaXBlIHVuZXhwZWN0ZWRseSBjbG9zaW5nLgorICAgIAorICAgIFNpZ25lZC1vZmYtYnk6IEpvbmF0aGFuIE5pZWRlciA8anJuaWVkZXJAZ21haWwuY29tPgorICAgIFNpZ25lZC1vZmYtYnk6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworIGxpYi9kcGtnL2NvbXByZXNzLmMgfCAgICA4ICsrKystLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBmY2Y2OGQ3MTE1NTgwYTRhZjcwODdjMjRhMDk2M2Q3MmY4MWEzYzIyCitBdXRob3I6IEpvbmF0aGFuIE5pZWRlciA8anJuaWVkZXJAZ21haWwuY29tPgorRGF0ZTogICBUdWUgSmFuIDUgMTY6NDk6MzkgMjAxMCArMDEwMAorCisgICAgbGliZHBrZzogRml4IHJlZHVuZGFudCBjb21wcmVzc2lvbiBlcnJvciBtZXNzYWdlcworICAgIAorICAgIEF2b2lkIG9oc2hpdGUoKSBleGNlcHQgd2hlcmUgZXJybm8gaXMgdXNlZnVsLiBUaGlzIHNob3VsZCBhdm9pZAorICAgIGNvbmZ1c2luZyBlcnJvciBtZXNzYWdlcyBsaWtlOgorICAgIAorICAgICAgICAgICAgZGF0YTogaW50ZXJuYWwgZ3ppcCBlcnJvcjogcmVhZDogc3RyZWFtIGVycm9yOiBTdWNjZXNzCisgICAgCisgICAgV2hpbGUgd2UncmUgYXQgaXQsIGRyb3AgdGhlIG51bWJlciBvZiBieXRlcyByZWFkIGFuZCB3cml0dGVuIGZyb20KKyAgICB0aGUgcmVhZCgpICE9IHdyaXRlKCkgZXJyb3IgbWVzc2FnZSBhbmQgb3V0cHV0IHRoZSBlcnJvciBtZXNzYWdlCisgICAgZnJvbSB0aGUgY29tcHJlc3Npb24gbGlicmFyeSBpbnN0ZWFkLgorICAgIAorICAgIFNpZ25lZC1vZmYtYnk6IEpvbmF0aGFuIE5pZWRlciA8anJuaWVkZXJAZ21haWwuY29tPgorICAgIFNpZ25lZC1vZmYtYnk6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworIGxpYi9kcGtnL2NvbXByZXNzLmMgfCAgIDIwICsrKysrKysrLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA4IGluc2VydGlvbnMoKyksIDEyIGRlbGV0aW9ucygtKQorCitjb21taXQgYWRlMWMyN2U1YzYxOGNhNzJjNjE2OGQ3OWM4ZGExYTc4ZmQwODU5YworQXV0aG9yOiBKb25hdGhhbiBOaWVkZXIgPGpybmllZGVyQGdtYWlsLmNvbT4KK0RhdGU6ICAgU3VuIEphbiAzIDE4OjU2OjUxIDIwMTAgKzAxMDAKKworICAgIGxpYmRwa2c6IEZpeCBjb21wcmVzc19jYXQgdG8gcmVhZC93cml0ZSB0byBhcmJpdHJhcnkgZmRzCisgICAgCisgICAgVGhlIGNvbXByZXNzX2NhdCgpIGNvZGUgaGFkIGEgaGlkZGVuIGFzc3VtcHRpb24gdGhhdCBmZF9pbiBpcyAwCisgICAgYW5kIGZkX291dCBpcyAxLiBUaGlzIGlzIGEgYnVnIHdhaXRpbmcgdG8gaGFwcGVuLiBCdXQgbHVja2lseQorICAgIGFsbCBjYWxsZXJzIGRvIHVzZSB0aG9zZSB2YWx1ZXMsIHNvIGl0IGlzIGhhcm1sZXNzLgorICAgIAorICAgIFNpZ25lZC1vZmYtYnk6IEpvbmF0aGFuIE5pZWRlciA8anJuaWVkZXJAZ21haWwuY29tPgorICAgIFNpZ25lZC1vZmYtYnk6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworIGxpYi9kcGtnL2NvbXByZXNzLmMgfCAgICA4ICsrKystLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBlNWM1ODRhYmQzN2I1OWJhNGQ3Y2RhNDRmN2JhZDdjOThkYmQwNzViCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIEphbiAyNCAwMTo0NDoyNyAyMDEwICswMTAwCisKKyAgICBOb3JtYWxpemUgYXIgbWVtYmVyIG5hbWVzIHdoZW4gcmVhZGluZworICAgIAorICAgIFRoaXMgcmVtb3ZlcyBhbGwgdHJhaWxpbmcgc3BhY2VzIGFuZCB0aGUgb3B0aW9uYWwgdHJhaWxpbmcgc2xhc2ggb24KKyAgICBHTlUtc3R5bGUgYXIgZm9ybWF0LCBtYWtpbmcgaXQgZWFzaWVyIHRvIHBhcnNlIGFuZCBhdm9pZGluZyBoYXZpbmcgdG8KKyAgICBjb21wYXJlIGFnYWluc3QgdGhlIGNvbXBhdCBzdHJpbmdzLgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgfCAgICAyICsrCisgZHBrZy1kZWIvZHBrZy1kZWIuaCAgICAgfCAgIDE3ICsrKysrKy0tLS0tLS0tLS0tCisgZHBrZy1kZWIvZXh0cmFjdC5jICAgICAgfCAgIDI3ICsrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLQorIGRwa2ctc3BsaXQvZHBrZy1zcGxpdC5oIHwgICAgMiArLQorIGRwa2ctc3BsaXQvaW5mby5jICAgICAgIHwgICAgOSArKysrKysrKy0KKyBtYW4vZGViLXNwbGl0LjUgICAgICAgICB8ICAgIDMgKystCisgNiBmaWxlcyBjaGFuZ2VkLCAzMyBpbnNlcnRpb25zKCspLCAyNyBkZWxldGlvbnMoLSkKKworY29tbWl0IDg4OTM3NWYwODU3Njk3YzM2MmMyZWM5MjRhM2Y5YjZmNTExMDc0N2QKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gSmFuIDI0IDAxOjA3OjI0IDIwMTAgKzAxMDAKKworICAgIGxpYmRwa2c6IEFkZCBhIG5ldyBhciBtb2R1bGUKKyAgICAKKyAgICBGb3Igbm93IGluY2x1ZGUgYSBkcGtnX2FyX25vcm1hbGl6ZV9uYW1lKCkgZnVuY3Rpb24gdG8gZml4IHVwIHRoZQorICAgIGFyX25hbWUgbWVtYmVyIGluIGFuIGFyX2hkciBzdHJ1Y3R1cmUuCisKKyBsaWIvZHBrZy9NYWtlZmlsZS5hbSAgICAgIHwgICAgMSArCisgbGliL2Rwa2cvYXIuYyAgICAgICAgICAgICB8ICAgMzkgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCisgbGliL2Rwa2cvYXIuaCAgICAgICAgICAgICB8ICAgMzcgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKworIGxpYi9kcGtnL3Rlc3QvLmdpdGlnbm9yZSAgfCAgICAxICsKKyBsaWIvZHBrZy90ZXN0L01ha2VmaWxlLmFtIHwgICAgMiArKworIGxpYi9kcGtnL3Rlc3QvdC1hci5jICAgICAgfCAgIDQyICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKworIHBvL1BPVEZJTEVTLmluICAgICAgICAgICAgfCAgICAxICsKKyA3IGZpbGVzIGNoYW5nZWQsIDEyMyBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgM2ZlNmVmZWU3ZDdlMzg1ZWQ2ZTMwMjIzYTRmOTNmYWRjYTFjYTA5NQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBKYW4gMjQgMDE6NDA6MjcgMjAxMCArMDEwMAorCisgICAgZHBrZy1kZWI6IEZvcmNlIHRoZSBhciBtZW1iZXIgbmFtZSB0byAxNiBzcGFjZSBwYWRkZWQgY2hhcnMgd2lkZQorICAgIAorICAgIFRoaXMgbWFrZXMgdGhlIGNvZGUgcmVzaWxpZW50IHRvIGNoYW5nZXMgdG8gdGhlIG1lbWJlciBuYW1lIHN0cmluZ3MKKyAgICBhbmQgZ3VhcmFudGVlcyBpdCB3aWxsIGFsd2F5cyBoYXZlIHRoZSB2YWxpZCBsZW5ndGgsIGFsc28gbWFrZXMgaXQKKyAgICBlYXNpZXIgdG8gcmVmYWN0b3IgbGF0ZXIgb24uCisKKyBkcGtnLWRlYi9idWlsZC5jIHwgICAgOCArKysrKy0tLQorIDEgZmlsZXMgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQorCitjb21taXQgZGE3YzAxMjgyOGI5NWQzZjI3NWFmYzU1M2Y3OTI3YjdkZmQwNGVkNgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBKYW4gMjQgMDE6MzM6MzQgMjAxMCArMDEwMAorCisgICAgZHBrZy1kZWI6IFVzZSBERUJNQUdJQyBpbnN0ZWFkIG9mIHN0cmluZyBsaXRlcmFscworCisgZHBrZy1kZWIvYnVpbGQuYyAgIHwgICAgMiArLQorIGRwa2ctZGViL2V4dHJhY3QuYyB8ICAgIDIgKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDQwODhiNzg1ZDhiOGRmOWE2Zjg3ZmIyZGJkNjY4MDE5OGU3ZmI0NmIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgSmFuIDIzIDE3OjAwOjM2IDIwMTAgKzAxMDAKKworICAgIERvIG5vdCBpbmNsdWRlIHRoZSBhciBtYWdpYyBpbiB0aGUgZGViIGFuZCBkZWItc3BsaXQgbWFnaWMgbWFjcm9zCisgICAgCisgICAgVGhpcyBhbGxvd3MgdGhlIGNvZGUgdG8gcGFyc2UgdGhlIGFyIGhlYWRlciBub3JtYWxseSB3L28gbmVlZGluZyB0bworICAgIHNlZWsgYmFjay4KKworIGRwa2ctZGViL2Rwa2ctZGViLmggICAgIHwgICAgMiArLQorIGRwa2ctc3BsaXQvZHBrZy1zcGxpdC5oIHwgICAgMiArLQorIGRwa2ctc3BsaXQvaW5mby5jICAgICAgIHwgICAxMSArKysrKystLS0tLQorIDMgZmlsZXMgY2hhbmdlZCwgOCBpbnNlcnRpb25zKCspLCA3IGRlbGV0aW9ucygtKQorCitjb21taXQgNjc1ZjEyMjUwZWRlODlmNWM0ZmJiYWUyNmY1ZWI0OGEyOGJmYjQ5MQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBKYW4gMTggMTQ6MjI6MzQgMjAxMCArMDEwMAorCisgICAgbGliZHBrZzogUmVuYW1lIHNpemVvZl9hcnJheSB0byBhcnJheV9jb3VudAorICAgIAorICAgIFRoZSBuZXcgbmFtZSBtYWtlcyBtb3JlIHNlbnNlLCBhcyB0aGUgZm9ybWVyIG1pZ2h0IHNlZW0gdG8gaW1wbHkgdGhlCisgICAgdG90YWwgc2l6ZSBvZiB0aGUgYXJyYXkgYW5kIG5vdCB0aGUgYW1vdW50IG9mIGVsZW1lbnRzIGluIGl0LgorCisgZHBrZy1kZWIvbWFpbi5jICAgICAgICAgICB8ICAgIDIgKy0KKyBkcGtnLXNwbGl0L21haW4uYyAgICAgICAgIHwgICAgMiArLQorIGxpYi9kcGtnL2VoYW5kbGUuYyAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvbWFjcm9zLmggICAgICAgICB8ICAgIDQgKystLQorIGxpYi9kcGtnL3BhcnNlLmMgICAgICAgICAgfCAgICA0ICsrLS0KKyBsaWIvZHBrZy9zdWJwcm9jLmMgICAgICAgIHwgICAgNiArKystLS0KKyB1dGlscy9zdGFydC1zdG9wLWRhZW1vbi5jIHwgICAgMiArLQorIDcgZmlsZXMgY2hhbmdlZCwgMTEgaW5zZXJ0aW9ucygrKSwgMTEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAzNzczMmI3NTUyNmZlOTVmNGJiZWIwZjM0NDk0MmI1NWFlN2EzNDg1CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEphbiAyMiAxODo1MTozMyAyMDEwICswMTAwCisKKyAgICBsaWJkcGtnOiBNYXJrIGNvbmZpZ19lcnJvciBhbmQgc3RhdHVzZmRfc2VuZCB3aXRoIERQS0dfQVRUUl9QUklOVEYKKworIGxpYi9kcGtnL2Rwa2cuaCAgfCAgICAyICstCisgbGliL2Rwa2cvbXlvcHQuYyB8ICAgIDMgKysrCisgMiBmaWxlcyBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA4MDM0NzQ3NTUxNDhjOTdlZTE2OTE5YzIzNzNlNjA1NzYzZmVhNzM5CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEphbiAyMiAxODo1MDowMSAyMDEwICswMTAwCisKKyAgICBsaWJkcGtnOiBBZGQgYW5kIHVzZSBuZXcgRFBLR19BVFRSX1NFTlRJTkVMCisKKyBsaWIvZHBrZy9tYWNyb3MuaCB8ICAgIDIgKysKKyBzcmMvbWFpbi5oICAgICAgICB8ICAgIDcgKysrKy0tLQorIDIgZmlsZXMgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQorCitjb21taXQgZTEwYjU3ZjE2MjY5ZTczMWM3MzA5YTlkZjQ3OTcwODlmODM1MjJjOAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBKYW4gMjQgMjI6MTE6MjUgMjAxMCArMDEwMAorCisgICAgbGliZHBrZzogUmVuYW1lIHZhcmJ1ZmZyZWUgdG8gdmFyYnVmX2Rlc3Ryb3kKKyAgICAKKyAgICBUaGUgY29udmVudGlvbiBpcyBmb3IgZnVuY3Rpb25zIG5hbWVkIGZyZWUgdG8gZGVhbGxvY2F0ZSB0aGUgY29udGVudHMKKyAgICBhbmQgdGhlIGdpdmVuIHBvaW50ZXIsIHdoaWxlIHRoaXMgb25lIG9ubHkgZGVhbGxvY2F0ZXMgdGhlIGNvbnRlbnRzLCBzbworICAgIHdlIHJlbmFtZSBpdCB0byBtYWtlIHRoaXMgZGlzdGluY3Rpb24gY2xlYXIuCisKKyBkcGtnLWRlYi9pbmZvLmMgICAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wa2dsaXN0LmNjICAgICAgIHwgICAgMiArLQorIGxpYi9kcGtnL2J1ZmZlci5jICAgICAgICB8ICAgIDIgKy0KKyBsaWIvZHBrZy9kYm1vZGlmeS5jICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvZHVtcC5jICAgICAgICAgIHwgICAgNCArKy0tCisgbGliL2Rwa2cvc2hvd3BrZy5jICAgICAgIHwgICAgNiArKystLS0KKyBsaWIvZHBrZy90ZXN0L3QtdmFyYnVmLmMgfCAgIDE4ICsrKysrKysrKy0tLS0tLS0tLQorIGxpYi9kcGtnL3ZhcmJ1Zi5jICAgICAgICB8ICAgIDQgKysrLQorIGxpYi9kcGtnL3ZhcmJ1Zi5oICAgICAgICB8ICAgMTQgKysrKysrKy0tLS0tLS0KKyBzcmMvYXJjaGl2ZXMuYyAgICAgICAgICAgfCAgIDEyICsrKysrKy0tLS0tLQorIHNyYy9jb25maWd1cmUuYyAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIHNyYy9kZXBjb24uYyAgICAgICAgICAgICB8ICAgIDQgKystLQorIHNyYy9oZWxwLmMgICAgICAgICAgICAgICB8ICAgIDQgKystLQorIHNyYy9wYWNrYWdlcy5jICAgICAgICAgICB8ICAgIDQgKystLQorIHNyYy9wcm9jZXNzYXJjLmMgICAgICAgICB8ICAgIDIgKy0KKyBzcmMvcXVlcnkuYyAgICAgICAgICAgICAgfCAgICA0ICsrLS0KKyBzcmMvcmVtb3ZlLmMgICAgICAgICAgICAgfCAgICA0ICsrLS0KKyBzcmMvc2VsZWN0LmMgICAgICAgICAgICAgfCAgICA0ICsrLS0KKyBzcmMvc3RhdGNtZC5jICAgICAgICAgICAgfCAgICA2ICsrKy0tLQorIDE5IGZpbGVzIGNoYW5nZWQsIDU1IGluc2VydGlvbnMoKyksIDUzIGRlbGV0aW9ucygtKQorCitjb21taXQgYzY1MjBkNjcwMDA4YjhhZjFlNzk3MjZlNjkwZWMzNTQzNWU4NjcyYworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBKYW4gMjMgMjI6NTE6NDcgMjAxMCArMDEwMAorCisgICAgbGliZHBrZzogUmVuYW1lIHBrZ19hcnJheV9mcmVlIHRvIHBrZ19hcnJheV9kZXN0cm95CisgICAgCisgICAgVGhlIGNvbnZlbnRpb24gaXMgZm9yIGZ1bmN0aW9ucyBuYW1lZCBfZnJlZSB0byBkZWFsbG9jYXRlIHRoZSBjb250ZW50cworICAgIGFuZCB0aGUgZ2l2ZW4gcG9pbnRlciwgd2hpbGUgdGhpcyBvbmUgb25seSBkZWFsbG9jYXRlcyB0aGUgY29udGVudHMsIHNvCisgICAgd2UgcmVuYW1lIGl0IHRvIG1ha2UgdGhpcyBkaXN0aW5jdGlvbiBjbGVhci4KKworIGxpYi9kcGtnL3BrZy1hcnJheS5jIHwgICAgOCArKysrKy0tLQorIGxpYi9kcGtnL3BrZy1hcnJheS5oIHwgICAgMiArLQorIHNyYy9xdWVyeS5jICAgICAgICAgIHwgICAgNCArKy0tCisgc3JjL3NlbGVjdC5jICAgICAgICAgfCAgICAyICstCisgNCBmaWxlcyBjaGFuZ2VkLCA5IGluc2VydGlvbnMoKyksIDcgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA0OTUyYjhjMzBjYjc1NjRiYmY1MDlhMmRkOGY4YmRlMDUyY2NjMTQ0CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IEphbiAyOCAwMzo0MjowMiAyMDEwICswMTAwCisKKyAgICBkcGtnLWRlYjogRG8gbm90IGluY2x1ZGUgdW5uZWVkZWQgPHpsaWIuaD4KKyAgICAKKyAgICBUaGUgemxpYiBmdW5jdGlvbmFsaXR5IGlzIGFscmVhZHkgYWJzdHJhY3RlZCB0aHJvdWdodCB0aGUgbGliZHBrZworICAgIGNvbXByZXNzIG1vZHVsZS4KKworIGRwa2ctZGViL2J1aWxkLmMgICB8ICAgIDMgLS0tCisgZHBrZy1kZWIvZXh0cmFjdC5jIHwgICAgMyAtLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDAgaW5zZXJ0aW9ucygrKSwgNiBkZWxldGlvbnMoLSkKKworY29tbWl0IDlkZGVmOTBkNDM3MTJkZWJmM2M2NGFiODY2MmRlMmJjMTE3NDY2NmUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gSmFuIDQgMTk6MDc6NTMgMjAxMCArMDEwMAorCisgICAgRG8gbm90IGluY2x1ZGUgdW5uZWVkZWQgPHNpZ25hbC5oPgorCisgZHBrZy1kZWIvYnVpbGQuYyAgICB8ICAgIDEgLQorIGRwa2ctZGViL2V4dHJhY3QuYyAgfCAgICAxIC0KKyBkcGtnLWRlYi9pbmZvLmMgICAgIHwgICAgMSAtCisgZHBrZy1kZWIvbWFpbi5jICAgICB8ICAgIDEgLQorIGxpYi9kcGtnL2RibW9kaWZ5LmMgfCAgICAxIC0KKyBsaWIvZHBrZy9tbGliLmMgICAgIHwgICAgMSAtCisgc3JjL2NvbmZpZ3VyZS5jICAgICB8ICAgIDEgLQorIHNyYy9lcnJvcnMuYyAgICAgICAgfCAgICAxIC0KKyBzcmMvbWFpbi5jICAgICAgICAgIHwgICAgMSAtCisgc3JjL3N0YXRjbWQuYyAgICAgICB8ICAgIDEgLQorIDEwIGZpbGVzIGNoYW5nZWQsIDAgaW5zZXJ0aW9ucygrKSwgMTAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBjY2QwMWRiNWNjNDEwODk2ZWQ2YjhmMWQ3OGZmNDU4YTRjZGUyYTIzCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIEphbiAyNyAxNzoxNzo1MyAyMDEwICswMTAwCisKKyAgICBEcGtnOjpTb3VyY2U6OlBhdGNoOiBmaXggb3V0cHV0IG9mIHBhdGNoIHdpdGggYW4gaGVhZGVyCisgICAgCisgICAgVGhlIGxpbmUgd2FzIG1pc3BhcnNlZC4gVXNlIHRoZSBwcmludCBtZXRob2QgdG8gYXZvaWQgYW55IGFtYmlndWl0eS4KKworIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG0gfCAgICAyICstCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA5YjM2OTA2MGNiODZiZGNkNjJmMGE3OTA0MzZkNThlZjJlZGM5YWVhCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIEphbiAyNCAyMjoxMzozOCAyMDEwICswMTAwCisKKyAgICB1cGRhdGUtYWx0ZXJuYXRpdmVzOiBkZWFsIHdpdGggdW5rbm93biBhbHRlcm5hdGl2ZXMgd2hlbiBmaXhpbmcgYSBicm9rZW4gbGluayBncm91cAorICAgIAorICAgIEluc3RlYWQgb2YgdHJ5aW5nIHRvIHJlaW5zdGFsbCBhbiBhbHRlcm5hdGl2ZSB0aGF0IGRvZXNuJ3QgZXhpc3QgaW4gdGhlCisgICAgZGF0YWJhc2UsIHNlbGVjdCBhIG5ldyBjaG9pY2UgYW5kIGluc3RhbGwgdGhhdCBvbmUuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICAgfCAgICAzICsrKworIHNjcmlwdHMvdXBkYXRlLWFsdGVybmF0aXZlcy5wbCB8ICAgIDggKysrKysrKysKKyAyIGZpbGVzIGNoYW5nZWQsIDExIGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBiZjhmZjBjZDNkZDg4YTA2YzJhM2NmY2E4ZDY0MzlkZjVmYTIxN2NiCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IEphbiAyMyAyMzoyNTo0NSAyMDEwICswMTAwCisKKyAgICBkcGtnLXNvdXJjZTogdW5wYWNraW5nIGEgMy4wIChxdWlsdCkgc291cmNlIHBhY2thZ2UgY29uZmlndXJlcyBxdWlsdCBhY2NvcmRpbmdseQorICAgIAorICAgIFRoZSBmaWxlcyAucGMvLnF1aWx0X3BhdGNoZXMgYW5kIC5wYy8ucXVpbHRfc2VyaWVzIGFyZSBhbHdheXMgY3JlYXRlZCBzbworICAgIHRoYXQgYW55IHF1aWx0IGludm9jYXRpb24gd2lsbCBrbm93IHdoZXJlIHRvIGxvb2sgZm9yIChvciB3aGVyZSB0byBzdG9yZSkKKyAgICBwYXRjaGVzLiBUaGlzIHdpbGwgb25seSB3b3JrIHdpdGggcXVpbHQgPj0gMC40OC01LgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMyArKysKKyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG0gfCAgIDI2ICsrKysrKysrKysrKysrKysrKysrKystLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAyNSBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQorCitjb21taXQgOGUwMGJmY2JjNzUyMTNjMDBhNmI3ODJmZmVkMzMyYmE1Yjc3MmFlZgorQXV0aG9yOiBIZWxnZSBLcmV1dHptYW5uIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KK0RhdGU6ICAgU2F0IEphbiAyMyAwOTo1NTo1OCAyMDEwICswMTAwCisKKyAgICBVcGRhdGUgR2VybWFuIHNjcmlwdHMgdHJhbnNsYXRpb24KKyAgICAKKyAgICBVcGRhdGUgdG8gNDkxdC4KKworIHNjcmlwdHMvcG8vZGUucG8gfCAgICA2ICsrKysrLQorIDEgZmlsZXMgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgZmRkYjQ2NDVhM2JjODM4YmE0ODljYzBlNjZkZjgzMGQ3OWY3MTA1OAorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBKYW4gMjIgMTc6NTg6NDkgMjAxMCArMDEwMAorCisgICAgQWRkIGNoYW5nZWxvZyBlbnRyeSBmb3IgRHBrZzo6Q29tcHJlc3Npb24gcmVsYXRlZCBjaGFuZ2VzCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgNiArKysrKysKKyAxIGZpbGVzIGNoYW5nZWQsIDYgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDIxZDI5ZTYwMGQ3Mjk1YjNmZDRmNzlmN2NmNjk3NDkzZGY0YjllN2MKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgSmFuIDIyIDE3OjQ4OjM0IDIwMTAgKzAxMDAKKworICAgIERwa2c6OkNvbXByZXNzaW9uOjpQcm9jZXNzOiBhZGQgUE9EIGRvY3VtZW50YXRpb24KKworIHNjcmlwdHMvRHBrZy9Db21wcmVzc2lvbi9Qcm9jZXNzLnBtIHwgICA5NiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLQorIDEgZmlsZXMgY2hhbmdlZCwgOTIgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKKworY29tbWl0IGQzOTJjOTlkOTVhMzU3NjE4MGVmYjY1MWE3Zjg2MTI3YTVlYWY0ZTQKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgSmFuIDIyIDE2OjM4OjQ2IDIwMTAgKzAxMDAKKworICAgIFJlbmFtZSBEcGtnOjpDb21wcmVzc2lvbjo6Q29tcHJlc3NlZEZpbGUgYW5kIERwa2c6OkNvbXByZXNzaW9uOjpDb21wcmVzc29yCisgICAgCisgICAgRHBrZzo6Q29tcHJlc3Npb246OkNvbXByZXNzZWRGaWxlIC0+IERwa2c6OkNvbXByZXNzaW9uOjpGaWxlSGFuZGxlCisgICAgRHBrZzo6Q29tcHJlc3Npb246OkNvbXByZXNzb3IgICAgIC0+IERwa2c6OkNvbXByZXNzaW9uOjpQcm9jZXNzCisgICAgCisgICAgVGhlIG5ldyBuYW1lcyBhcmUgbW9yZSBleHByZXNzaXZlIGFuZCBhdm9pZCByZXBlYXRpbmcgIkNvbXByZXNzIi4KKyAgICAKKyAgICBVcGRhdGUgYWxsIHNjcmlwdHMgYW5kIG1vZHVsZXMgdG8gdXNlIHRoZSBuZXcgbmFtZS4KKworIC4uLi97Q29tcHJlc3NlZEZpbGUucG0gPT4gRmlsZUhhbmRsZS5wbX0gICAgICAgICAgIHwgICA0MiArKysrKysrKysrLS0tLS0tLS0tLQorIC4uLi9EcGtnL0NvbXByZXNzaW9uL3tDb21wcmVzc29yLnBtID0+IFByb2Nlc3MucG19IHwgICAgNiArLQorIHNjcmlwdHMvRHBrZy9JbmRleC5wbSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNiArLQorIHNjcmlwdHMvRHBrZy9Tb3VyY2UvQXJjaGl2ZS5wbSAgICAgICAgICAgICAgICAgICAgIHwgICAgMiArLQorIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG0gICAgICAgICAgICAgICAgICAgICAgIHwgICAgNCArLQorIHNjcmlwdHMvTWFrZWZpbGUuYW0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNCArLQorIHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGwgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNiArLQorIHNjcmlwdHMvZHBrZy1zY2Fuc291cmNlcy5wbCAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgOCArKy0tCisgc2NyaXB0cy9wby9QT1RGSUxFUy5pbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA0ICstCisgc2NyaXB0cy90Lzg1MF9EcGtnX0NvbXByZXNzaW9uLnQgICAgICAgICAgICAgICAgICAgfCAgIDEwICsrLS0KKyAxMCBmaWxlcyBjaGFuZ2VkLCA0NSBpbnNlcnRpb25zKCspLCA0NyBkZWxldGlvbnMoLSkKKworY29tbWl0IDU3MDYzMjQ1NTYyZDg5NWYxNGZjMmRhNDdhNmNiMDNiZTk2NzdkMDYKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgSmFuIDIyIDE2OjA5OjA0IDIwMTAgKzAxMDAKKworICAgIE1vdmUgaGFuZGxpbmcgb2YgZGVmYXVsdCBjb21wcmVzc2lvbiBtZXRob2QvbGV2ZWwgdG8gRHBrZzo6Q29tcHJlc3Npb24KKyAgICAKKyAgICBEcGtnOjpDb21wcmVzc2lvbiBub3cgcHJvdmlkZXMgbmV3IGZ1bmN0aW9ucyB0byBnZXQvc2V0IHRoZSBkZWZhdWx0CisgICAgY29tcHJlc3Npb24gbWV0aG9kIGFuZCB0aGUgZGVmYXVsdCBjb21wcmVzc2lvbiBsZXZlbC4gVGhlcmUgd2FzIG5vCisgICAgZ29vZCByZWFzb24gdG8gaGF2ZSBpdCBpbiBEcGtnOjpDb21wcmVzc2lvbjo6Q29tcHJlc3NvciBpbiB0aGUgZmlyc3QKKyAgICBwbGFjZS4KKyAgICAKKyAgICBGYWN0b3JpemUgc29tZSBjb2RlIHRvIHZlcmlmeSB2YWxpZGl0eSBvZiB3aGF0IHNob3VsZCBiZSBhIGNvbXByZXNzaW9uCisgICAgbGV2ZWwgaW4gbmV3IGZ1bmN0aW9uIGNvbXByZXNzaW9uX2lzX3ZhbGlkX2xldmVsKCRsZXZlbCkuCisgICAgCisgICAgZHBrZy1zb3VyY2UgaGFzIGJlZW4gdXBkYXRlZCB0byBjb3BlIHdpdGggdGhlIGNoYW5nZXMuCisKKyBzY3JpcHRzL0Rwa2cvQ29tcHJlc3Npb24ucG0gICAgICAgICAgICB8ICAgNzEgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0KKyBzY3JpcHRzL0Rwa2cvQ29tcHJlc3Npb24vQ29tcHJlc3Nvci5wbSB8ICAgMjQgKy0tLS0tLS0tLQorIHNjcmlwdHMvZHBrZy1zb3VyY2UucGwgICAgICAgICAgICAgICAgIHwgICAxNyArKysrLS0tLQorIDMgZmlsZXMgY2hhbmdlZCwgODEgaW5zZXJ0aW9ucygrKSwgMzEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBlZmQyODFlODcyM2Y5ZTgwZTY1Y2JkY2VmYjMwNDQ4M2MzNWFkOTYzCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEphbiAyMiAwMTo0Njo0MCAyMDEwICswMTAwCisKKyAgICBEcGtnOjpDb21wcmVzc2lvbjogbmV3IEFQSSBiYXNlZCBvbiBwdWJsaWMgZnVuY3Rpb25zCisgICAgCisgICAgVGhpcyBBUEkgY2hhbmdlIHJlcXVpcmVzIGxvdHMgb2YgYWRqdXN0ZW1lbnRzIHRocm91Z2ggdGhlIHNvdXJjZSBjb2RlLgorCisgc2NyaXB0cy9EcGtnL0NvbXByZXNzaW9uLnBtICAgICAgICAgICAgICAgIHwgIDEyOSArKysrKysrKysrKysrKysrKysrKysrKysrLS0tCisgc2NyaXB0cy9EcGtnL0NvbXByZXNzaW9uL0NvbXByZXNzZWRGaWxlLnBtIHwgICAgNyArLQorIHNjcmlwdHMvRHBrZy9Db21wcmVzc2lvbi9Db21wcmVzc29yLnBtICAgICB8ICAgIDggKy0KKyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG0gICAgICAgICAgICAgfCAgICA1ICstCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtICAgICAgICAgIHwgICAgMiArLQorIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbSAgICAgICAgICB8ICAgMTUgKystLQorIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9ienIucG0gICAgICB8ICAgIDQgKy0KKyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvZ2l0LnBtICAgICAgfCAgICA0ICstCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL25hdGl2ZS5wbSAgIHwgICAgNCArLQorIHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGwgICAgICAgICAgICAgICB8ICAgIDkgKy0KKyBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbCAgICAgICAgICAgICAgICAgfCAgICA3ICstCisgc2NyaXB0cy9kcGtnLXNjYW5zb3VyY2VzLnBsICAgICAgICAgICAgICAgIHwgICAgNSArLQorIHNjcmlwdHMvZHBrZy1zb3VyY2UucGwgICAgICAgICAgICAgICAgICAgICB8ICAgIDkgKy0KKyAxMyBmaWxlcyBjaGFuZ2VkLCAxNTggaW5zZXJ0aW9ucygrKSwgNTAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBjNWZlYTBhNTc2NTg2ZTk5M2FkOGFmM2M2YjJkMDg5NzI5N2NkOWY3CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IEphbiAyMSAyMjozNDo0NCAyMDEwICswMTAwCisKKyAgICBBZGQgbm9uLXJlZ3Jlc3Npb24gdGVzdHMgZm9yIERwa2c6OkNvbXByZXNzaW9uOjpDb21wcmVzc2VkRmlsZQorCisgc2NyaXB0cy9NYWtlZmlsZS5hbSAgICAgICAgICAgICAgfCAgICAxICsKKyBzY3JpcHRzL3QvODUwX0Rwa2dfQ29tcHJlc3Npb24udCB8ICAgOTkgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKKyAyIGZpbGVzIGNoYW5nZWQsIDEwMCBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgMTFhNzkzZjI5YTFiMTMwNjVkYzE0NmFlMjAzYTgxODRhNGJjZTc4MAorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBKYW4gMjEgMjE6MDg6MzEgMjAxMCArMDEwMAorCisgICAgRHBrZzo6Q29tcHJlc3Npb246OkNvbXByZXNzZWRGaWxlOiB1cGRhdGUgQVBJCisgICAgCisgICAgQ2hhbmdlIHRoZSBEcGtnOjpDb21wcmVzc2lvbjo6Q29tcHJlc3NlZEZpbGUgQVBJIHRvIG1ha2UgaXQgYmVoYXZlIGxpa2UKKyAgICBhIG5vcm1hbCBmaWxlaGFuZGxlLgorICAgIAorICAgIFVwZGF0ZSBhbGwgdXNlcnMgb2YgdGhlIG9iamVjdCB0byB1c2UgdGhlIG5ldyBBUEkuCisKKyBzY3JpcHRzL0Rwa2cvQ29tcHJlc3Npb24vQ29tcHJlc3NlZEZpbGUucG0gfCAgMzU3ICsrKysrKysrKysrKysrKysrKysrKysrKystLS0KKyBzY3JpcHRzL0Rwa2cvSW5kZXgucG0gICAgICAgICAgICAgICAgICAgICAgfCAgIDEyICstCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9BcmNoaXZlLnBtICAgICAgICAgICAgIHwgICA0NSArKy0tCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbSAgICAgICAgICAgICAgIHwgICA2MSArKy0tLQorIHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGwgICAgICAgICAgICAgICB8ICAgMTIgKy0KKyBzY3JpcHRzL2Rwa2ctc2NhbnNvdXJjZXMucGwgICAgICAgICAgICAgICAgfCAgIDE4ICstCisgNiBmaWxlcyBjaGFuZ2VkLCAzODQgaW5zZXJ0aW9ucygrKSwgMTIxIGRlbGV0aW9ucygtKQorCitjb21taXQgMzFiZGU3NmUwMDllMmExOGM4ODEzZmU2MTgxNmVlOTcxOWYyMjI4ZAorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBOb3YgMSAxODo1NjowOCAyMDA5ICswMTAwCisKKyAgICBSZW5hbWUgRHBrZzo6U291cmNlOjpDb21wcmVzc2VkRmlsZSBpbnRvIERwa2c6OkNvbXByZXNzaW9uOjpDb21wcmVzc2VkRmlsZQorCisgLi4uL0Rwa2cve1NvdXJjZSA9PiBDb21wcmVzc2lvbn0vQ29tcHJlc3NlZEZpbGUucG0gfCAgICAyICstCisgc2NyaXB0cy9EcGtnL0luZGV4LnBtICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA2ICsrKy0tLQorIHNjcmlwdHMvRHBrZy9Tb3VyY2UvQXJjaGl2ZS5wbSAgICAgICAgICAgICAgICAgICAgIHwgICAgMiArLQorIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG0gICAgICAgICAgICAgICAgICAgICAgIHwgICAgNCArKy0tCisgc2NyaXB0cy9NYWtlZmlsZS5hbSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbCAgICAgICAgICAgICAgICAgICAgICAgfCAgICA2ICsrKy0tLQorIHNjcmlwdHMvZHBrZy1zY2Fuc291cmNlcy5wbCAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgOCArKysrLS0tLQorIHNjcmlwdHMvcG8vUE9URklMRVMuaW4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMiArLQorIDggZmlsZXMgY2hhbmdlZCwgMTYgaW5zZXJ0aW9ucygrKSwgMTYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA0MmExOTU2OThjNTVjNzM4MmY5YjFlMDczNzhhZDdjOGNjMDBjN2Q5CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIE5vdiAxIDE4OjQ3OjA1IDIwMDkgKzAxMDAKKworICAgIFJlbmFtZSBEcGtnOjpTb3VyY2U6OkNvbXByZXNzb3IgaW50byBEcGtnOjpDb21wcmVzc2lvbjo6Q29tcHJlc3NvcgorCisgc2NyaXB0cy9EcGtnL3tTb3VyY2UgPT4gQ29tcHJlc3Npb259L0NvbXByZXNzb3IucG0gfCAgICA0ICsrLS0KKyBzY3JpcHRzL0Rwa2cvU291cmNlL0NvbXByZXNzZWRGaWxlLnBtICAgICAgICAgICAgICB8ICAgIDQgKystLQorIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG0gICAgICAgICAgICAgICAgICAgICAgIHwgICAgMiArLQorIHNjcmlwdHMvTWFrZWZpbGUuYW0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMiArLQorIHNjcmlwdHMvZHBrZy1zb3VyY2UucGwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAxNiArKysrKysrKy0tLS0tLS0tCisgc2NyaXB0cy9wby9QT1RGSUxFUy5pbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAzICsrLQorIDYgZmlsZXMgY2hhbmdlZCwgMTYgaW5zZXJ0aW9ucygrKSwgMTUgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA0OWQ5MTIxNTQyZjhjM2RmYTVhODRmNmRkYmNhNTExNWMxM2ZhN2FkCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IEphbiAyMSAyMToxMTo0NCAyMDEwICswMTAwCisKKyAgICBEcGtnOjpJUEM6IGFsbG93IElPOjpIYW5kbGUgb2JqZWN0cyBpbiAqX3BpcGUgcGFyYW1ldGVycworCisgc2NyaXB0cy9EcGtnL0lQQy5wbSB8ICAgMjIgKysrKysrKysrKysrKystLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMTQgaW5zZXJ0aW9ucygrKSwgOCBkZWxldGlvbnMoLSkKKworY29tbWl0IDQ2MTZiNTU0YTc0N2EzYjNiNTI0ZmY0OWExYTA3NzkzMGJhMzZhYjIKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gSmFuIDE4IDExOjM3OjAxIDIwMTAgKzAxMDAKKworICAgIERwa2c6OlNobGliczo6T2JqZHVtcDogYWNjZXB0IGZpbGVuYW1lcyB3aXRoIHNwYWNlcyBhbmQgY29sb25zCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICAgfCAgICAzICsrKworIHNjcmlwdHMvRHBrZy9TaGxpYnMvT2JqZHVtcC5wbSB8ICAgIDIgKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDAxYTRiMjQ0ZjM2MjM5YmI2ZGYzMzZlMjAxZjUxYzE4NWIyZGQyZDIKK0F1dGhvcjogTmljb2xhcyBGcmFuw6dvaXMgPG5pY29sYXMuZnJhbmNvaXNAY2VudHJhbGllbnMubmV0PgorRGF0ZTogICBUaHUgSmFuIDE0IDExOjQ1OjQ1IDIwMTAgKzAxMDAKKworICAgIEZpeCB0eXBvcyBpbiB0aGUgRnJlbmNoIG1hbnBhZ2VzLgorICAgIAorICAgIEZpeCB0eXBvIFxcPG5ic3A+IHNob3VsZCBiZSA8bmJzcD4uCisgICAgQWxzbyBjaGFuZ2UgXFw8c3BhY2U+IHRvIDxuYnNwPiBmb3IgY29uc2lzdGVuY3kuCisKKyBtYW4vcG8vZnIucG8gfCAxMTQ2ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDU3MyBpbnNlcnRpb25zKCspLCA1NzMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAzZmQ5NDQzYzAwZmE0MDRjODVkOTNhYjM5ZWQzYmRmNWI4ZDVkODZkCitBdXRob3I6IEhlbGdlIEtyZXV0em1hbm4gPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorRGF0ZTogICBXZWQgSmFuIDEzIDE2OjE3OjU3IDIwMTAgKzAxMDAKKworICAgIFVwZGF0ZSBHZXJtYW4gc2NyaXB0cyB0cmFuc2xhdGlvbgorICAgIAorICAgIFVwZGF0ZSB0byA0OTB0LgorCisgc2NyaXB0cy9wby9kZS5wbyB8ICAgMTYgKysrKysrKysrKysrKystLQorIDEgZmlsZXMgY2hhbmdlZCwgMTQgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IGE5MjU3OTdjM2RlY2ExZDU2Y2UxN2JjOTg4ZGVkNDhlNmFhOGEwZGMKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgSmFuIDEyIDEyOjE5OjMyIDIwMTAgKzAxMDAKKworICAgIEFkZCBjaGFuZ2Vsb2cgZW50cnkgZm9yIHN5bWJvbCBwYXR0ZXJucyBzdXBwb3J0IGluIGRwa2ctZ2Vuc3ltYm9scworCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgMjIgKysrKysrKysrKysrKysrKysrKysrKworIDEgZmlsZXMgY2hhbmdlZCwgMjIgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IGNhMDVkYjQwNDZiMTNkNTZlMjMxODdmZjZjNWE4ZTE4MjIxYTg5NTIKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gSmFuIDExIDE5OjM5OjMwIDIwMTAgKzAxMDAKKworICAgIGRwa2ctZ2Vuc3ltYm9scygxKTogZG9jdW1lbnQgdGhlIG5ldyAtViBvcHRpb24KKworIG1hbi9kcGtnLWdlbnN5bWJvbHMuMSB8ICAgIDYgKysrKysrCisgMSBmaWxlcyBjaGFuZ2VkLCA2IGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBlMGZhMTM1MTM3OTdlZTJlOTBhMjdmZGYyM2U1MTY5M2E3ZWYyNDQ5CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIEphbiAxMSAxODo0NTowMCAyMDEwICswMTAwCisKKyAgICBEcGtnOjpTaGxpYnM6OlN5bWJvbC5wbTogY2hhbmdlIGhhbmRsaW5nIG9mIG9sZC1zdHlsZSB3aWxkY2FyZHMKKyAgICAKKyAgICBSZWFsbHkgdHJlYXQgIipAdmVyc2lvbiIgbGlrZSAiKHN5bXZlcnxvcHRpb25hbCl2ZXJzaW9uIiBhbmQgZG9uJ3QgY2FyZQorICAgIGlmIHRoZSBkaWZmIG91dHB1dCBtaWdodCBub3QgYXBwbHkgaW4gdGhhdCBzcGVjaWZpYyBjYXNlLiBUaGUgZGlmZmVyZW5jZQorICAgIGFyZSBtaW5vciBhbnl3YXkgd2hlbiB5b3UgdXNlIHRoYXQgZmVhdHVyZSB0byBtYWludGFpbiB5b3VyIHN5bWJvbHMgZmlsZS4KKworIHNjcmlwdHMvRHBrZy9TaGxpYnMvU3ltYm9sLnBtICAgICAgICAgICAgICB8ICAgMjYgKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0KKyBzY3JpcHRzL3QvMjAwX0Rwa2dfU2hsaWJzLnQgICAgICAgICAgICAgICAgfCAgIDE0ICsrKysrKysrKystLS0tCisgc2NyaXB0cy90LzIwMF9EcGtnX1NobGlicy9wYXR0ZXJucy5zeW1ib2xzIHwgICAgMiArLQorIDMgZmlsZXMgY2hhbmdlZCwgMjMgaW5zZXJ0aW9ucygrKSwgMTkgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAzZjU5M2I1YmUzZWE2OTJkOGU0MWM3NmQ2NzY4Y2I3N2MwNmViM2YzCitBdXRob3I6IE1vZGVzdGFzIFZhaW5pdXMgPG1vZGF4QGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBKYW4gMTAgMTE6NDY6MDkgMjAxMCArMDIwMAorCisgICAgRHBrZzo6U2hsaWJzOjpTeW1ib2wvU3ltYm9sRmlsZTogaW50cm9kdWNlIHN5bXZlciBwYXR0ZXJuLCBkZXByZWNhdGUgd2lsZGNhcmRzCisgICAgCisgICAgV2lsZGNhcmRzIGFyZSBzdGlsbCByZWNvZ25pemVkLiBUaGVpciBmdW5jdGlvbmFsaXR5IGlzIGxpa2Ugb2YKKyAgICAoc3ltdmVyfG9wdGlvbmFsKS4gQWxzbyB1bmRlcmxpbmUgbm90YXRpb25zIG9mIGFsbCBiYXNpYyBwYXR0ZXJuIG5hbWVzCisgICAgaW4gdGhlIG1hbiBwYWdlLgorICAgIAorICAgIFNpZ25lZC1vZmYtYnk6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworIG1hbi9kcGtnLWdlbnN5bWJvbHMuMSAgICAgICAgICAgICAgICAgICAgICB8ICAgNTggKysrKysrKysrKysrLS0tLS0tLS0tLQorIHNjcmlwdHMvRHBrZy9TaGxpYnMvU3ltYm9sLnBtICAgICAgICAgICAgICB8ICAgNzYgKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLQorIHNjcmlwdHMvRHBrZy9TaGxpYnMvU3ltYm9sRmlsZS5wbSAgICAgICAgICB8ICAgIDYgKy0tCisgc2NyaXB0cy90LzIwMF9EcGtnX1NobGlicy50ICAgICAgICAgICAgICAgIHwgICA0NiArKysrKysrKysrKysrLS0tLQorIHNjcmlwdHMvdC8yMDBfRHBrZ19TaGxpYnMvcGF0dGVybnMuY3BwICAgICB8ICAgMjcgKysrKysrKy0tLQorIHNjcmlwdHMvdC8yMDBfRHBrZ19TaGxpYnMvcGF0dGVybnMubWFwICAgICB8ICAgIDkgKysrLQorIHNjcmlwdHMvdC8yMDBfRHBrZ19TaGxpYnMvcGF0dGVybnMuc3ltYm9scyB8ICAgMTAgKystLQorIDcgZmlsZXMgY2hhbmdlZCwgMTQzIGluc2VydGlvbnMoKyksIDg5IGRlbGV0aW9ucygtKQorCitjb21taXQgMjJiZjBjN2U5NTBlMTA0ZjRjYTczOTJiZDRhNWZhYmU4MzRjYzY4OAorQXV0aG9yOiBNb2Rlc3RhcyBWYWluaXVzIDxtb2RheEBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gSmFuIDEwIDAyOjM2OjA0IDIwMTAgKzAyMDAKKworICAgIERwa2c6OlNobGliczo6U3ltYm9sOiB1c2UgJ2F1dG8nIGMrK2ZpbHQgZm9ybWF0IGZvciBkZW1hbmdsaW5nIEMrKyBzeW1ib2xzCisgICAgCisgICAgJ2F1dG8nIHdpbGwgdHJ5IHRvIHNlbGVjdCBhcHByb3ByaWF0ZSBDKysgZGVtYW5nbGluZyB0eXBlIGF1dG9tYXRpY2FsbHkuIFBsZWFzZQorICAgIG5vdGUgdGhhdCAnYXV0bycgZm9ybWF0IGlzIGxpbWl0ZWQgdG8gQysrIHN5bWJvbHMgYXMgb2YgYmludXRpbHMgMi4yMC4KKyAgICAKKyAgICBTaWduZWQtb2ZmLWJ5OiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKyBzY3JpcHRzL0Rwa2cvU2hsaWJzL1N5bWJvbC5wbSAgICAgICB8ICAgIDIgKy0KKyBzY3JpcHRzL3QvMTkwX0Rwa2dfU2hsaWJzX0NwcGZpbHQudCB8ICAgIDIgKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDIxMGI4MTYyNzlmZjM5MzVhZWJmNDY5ZjU0N2Y2Njk5NTAxYTkzYWYKK0F1dGhvcjogTW9kZXN0YXMgVmFpbml1cyA8bW9kYXhAZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIEphbiAxMCAwMjoyNjoxNSAyMDEwICswMjAwCisKKyAgICBEcGtnOjpTaGxpYnM6Oio6IHN0eWxlIGFkanVzdG1lbnRzLgorICAgIAorICAgIFVzZSAibXkgKCRmb28sICRiYXIpID0gQF8iIHJhdGhlciB0aGFuIG11bHRpcGxlIHNoaWZ0KClzLgorICAgIAorICAgIFNpZ25lZC1vZmYtYnk6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworIHNjcmlwdHMvRHBrZy9TaGxpYnMvQ3BwZmlsdC5wbSAgICB8ICAgMTEgKysrKystLS0tLS0KKyBzY3JpcHRzL0Rwa2cvU2hsaWJzL1N5bWJvbC5wbSAgICAgfCAgIDEzICsrKysrLS0tLS0tLS0KKyBzY3JpcHRzL0Rwa2cvU2hsaWJzL1N5bWJvbEZpbGUucG0gfCAgICA1ICsrLS0tCisgc2NyaXB0cy90LzIwMF9EcGtnX1NobGlicy50ICAgICAgIHwgICAgNSArKy0tLQorIDQgZmlsZXMgY2hhbmdlZCwgMTQgaW5zZXJ0aW9ucygrKSwgMjAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAxNTgwMjExZWYyYmZiZmU3NDMxNGM3NDcyZjUxN2I1ZGE5MzVkZWEyCitBdXRob3I6IE1vZGVzdGFzIFZhaW5pdXMgPG1vZGF4QGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBKYW4gNSAwMjowMzoyOCAyMDEwICswMjAwCisKKyAgICBVcGRhdGUgY29weXJpZ2h0IG5vdGljZXMgb2YgTW9kZXN0YXMgVmFpbml1cworICAgIAorICAgICogSW5jbHVkZSAyMDEwIGluIGNvcHlyaWdodCB5ZWFycy4KKyAgICAqIFVzZSBtb2RheEBkZWJpYW4ub3JnIGVtYWlsIGFkZHJlc3MuCisgICAgCisgICAgU2lnbmVkLW9mZi1ieTogTW9kZXN0YXMgVmFpbml1cyA8bW9kYXhAZGViaWFuLm9yZz4KKyAgICBTaWduZWQtb2ZmLWJ5OiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKyBzY3JpcHRzL0Rwa2cvU2hsaWJzL1N5bWJvbC5wbSAgICAgfCAgICAyICstCisgc2NyaXB0cy9EcGtnL1NobGlicy9TeW1ib2xGaWxlLnBtIHwgICAgMiArLQorIDIgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgODFmMjZkYWQxZGNhMjg5YmQ0OTM1MWFiZmRkYTllYWM0MTFhMDAwYworQXV0aG9yOiBNb2Rlc3RhcyBWYWluaXVzIDxtb2RheEBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gSmFuIDExIDE2OjIyOjA1IDIwMTAgKzAxMDAKKworICAgIGRwa2ctZ2Vuc3ltYm9scygxKTogZG9jdW1lbnQgcGF0dGVybnMgaW4gdGhlIG1hbnVhbCBwYWdlCisgICAgCisgICAgQW5kIHNtYWxsIGZpeHVwcyBvZiBvdGhlciBwYXJ0cyBvZiB0aGUgbWFudWFsIHBhZ2UuCisgICAgCisgICAgU2lnbmVkLW9mZi1ieTogTW9kZXN0YXMgVmFpbml1cyA8bW9kYXhAZGViaWFuLm9yZz4KKyAgICBTaWduZWQtb2ZmLWJ5OiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKyBtYW4vZHBrZy1nZW5zeW1ib2xzLjEgfCAgMTY2ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDEzOSBpbnNlcnRpb25zKCspLCAyNyBkZWxldGlvbnMoLSkKKworY29tbWl0IGRhMTljZWU4OTZkMTkyNjRhMWM3MzNhOTM2NDZhMzdmZmI0ZDFmZDAKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gSmFuIDExIDE0OjQ2OjAzIDIwMTAgKzAxMDAKKworICAgIHNjcmlwdHMvdC8yMDBfRHBrZ19TaGxpYnMudDogZXh0ZW5kIHRlc3Qgc3VpdGUgdG8gY292ZXIgc3ltYm9sIHBhdHRlcm5zIGZ1bmN0aW9uYWxpdHkKKyAgICAKKyAgICBTaWduZWQtb2ZmLWJ5OiBNb2Rlc3RhcyBWYWluaXVzIDxtb2RheEBkZWJpYW4ub3JnPgorICAgIFNpZ25lZC1vZmYtYnk6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworIHNjcmlwdHMvTWFrZWZpbGUuYW0gICAgICAgICAgICAgICAgICAgICAgICB8ICAgMTQgKysrLQorIHNjcmlwdHMvdC8yMDBfRHBrZ19TaGxpYnMudCAgICAgICAgICAgICAgICB8ICAxNDYgKysrKysrKysrKysrKysrKysrKysrKysrKysrLQorIHNjcmlwdHMvdC8yMDBfRHBrZ19TaGxpYnMvcGF0dGVybnMuY3BwICAgICB8ICAgOTggKysrKysrKysrKysrKysrKysrKworIHNjcmlwdHMvdC8yMDBfRHBrZ19TaGxpYnMvcGF0dGVybnMubWFwICAgICB8ICAgIDQgKworIHNjcmlwdHMvdC8yMDBfRHBrZ19TaGxpYnMvcGF0dGVybnMuc3ltYm9scyB8ICAgNDUgKysrKysrKysrCisgNSBmaWxlcyBjaGFuZ2VkLCAzMDQgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworY29tbWl0IGZhNjczOWI4MTIzOWYwNTMyNDMwMTRkYmJiYTE4YzIzMjhjZDM4OGMKK0F1dGhvcjogTW9kZXN0YXMgVmFpbml1cyA8bW9kYXhAZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIEphbiA1IDAyOjAzOjI4IDIwMTAgKzAyMDAKKworICAgIHNjcmlwdHMvdC8yMDBfRHBrZ19TaGxpYnMudDogY2xlYW51cCBhbmQgZml4IG5vbi1yZWdyZXNzaW9uIHRlc3QKKyAgICAKKyAgICAqIFJlbmFtZSBwcmV2aW91cyB0YWcgdGVzdHMgdG8gJ2Jhc2ljdGFncycuIENoYW5nZSB0aGUgbmFtZSBldmVyeXdoZXJlIGFuZCB1c2UKKyAgICAgIGl0IGNvbnNpc3Rlbmx5IHRocm91Z2hvdXQgdGhlIHRlc3RzdWl0ZS4gTm8gbmV3IHRlc3RzIGFkZGVkLgorICAgICogRml4ICd3aWxkY2FyZCBzeW1ib2wnIHRlc3QuIEl0IHN0YXJ0ZWQgZmFpbGluZyBkdWUgdG8gY2hhbmdlcyBpbiB0aGUgc3ltYm9sCisgICAgICBkYXRhIHN0cnVjdHVyZS4KKyAgICAqIEFkZCBhIHN1YiBmb3Igc2F2ZV9sb2FkIHRlc3QuCisgICAgCisgICAgU2lnbmVkLW9mZi1ieTogTW9kZXN0YXMgVmFpbml1cyA8bW9kYXhAZGViaWFuLm9yZz4KKyAgICBTaWduZWQtb2ZmLWJ5OiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKyBzY3JpcHRzL01ha2VmaWxlLmFtICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMTQgKystLQorIHNjcmlwdHMvdC8yMDBfRHBrZ19TaGxpYnMudCAgICAgICAgICAgICAgICAgICAgICAgIHwgIDEwMiArKysrKysrKysrLS0tLS0tLS0tCisgc2NyaXB0cy90LzIwMF9EcGtnX1NobGlicy9iYXNpY3RhZ3MuYyAgICAgICAgICAgICAgfCAgIDI3ICsrKysrCisgLi4uL3tzeW1ib2xzLnRhZ3MuaW4gPT4gYmFzaWN0YWdzLnN5bWJvbHN9ICAgICAgICAgfCAgICA0ICstCisgc2NyaXB0cy90LzIwMF9EcGtnX1NobGlicy9zeW1ib2xzLmluY2x1ZGUtMyAgICAgICAgfCAgICA0ICstCisgc2NyaXB0cy90LzIwMF9EcGtnX1NobGlicy9zeW1ib2x0YWdzLmMgICAgICAgICAgICAgfCAgIDI3IC0tLS0tCisgNiBmaWxlcyBjaGFuZ2VkLCA5MiBpbnNlcnRpb25zKCspLCA4NiBkZWxldGlvbnMoLSkKKworY29tbWl0IGIyMjMzN2ViZjkyYjViZDY4YmVlZDM1MDBiN2E1YzQxZDhjYWE1MWEKK0F1dGhvcjogTW9kZXN0YXMgVmFpbml1cyA8bW9kYXhAZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIEphbiAxMSAxNjoxNDoxNCAyMDEwICswMTAwCisKKyAgICBEcGtnOjpTaGxpYnM6OlN5bWJvbEZpbGU6OmNyZWF0ZV9zeW1ib2woKTogbmV3IGZ1bmN0aW9uCisgICAgCisgICAgVGhpcyBuZXcgZnVuY3Rpb24gd2lsbCBiZSB1c2VkIGluIG5vbi1yZWdyZXNzaW9uIHRlc3RzLCBpdCBhdm9pZHMKKyAgICBkdXBsaWNhdGluZyBwYXJzZStpbml0aWFsaXplIG11bHRpcGxlIHRpbWVzLgorICAgIAorICAgIFNpZ25lZC1vZmYtYnk6IE1vZGVzdGFzIFZhaW5pdXMgPG1vZGF4QGRlYmlhbi5vcmc+CisgICAgU2lnbmVkLW9mZi1ieTogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisgc2NyaXB0cy9EcGtnL1NobGlicy9TeW1ib2wucG0gICAgIHwgICAgMiArLQorIHNjcmlwdHMvRHBrZy9TaGxpYnMvU3ltYm9sRmlsZS5wbSB8ICAgMTYgKysrKysrKysrKysrKystLQorIDIgZmlsZXMgY2hhbmdlZCwgMTUgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworY29tbWl0IGRmYWNmYmQ5M2UwMDAwNzAzM2Y1ZTUwMGFmMDQ1OWNhNDU1M2Y3MGQKK0F1dGhvcjogTW9kZXN0YXMgVmFpbml1cyA8bW9kYXhAZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIEphbiA1IDAyOjAzOjI4IDIwMTAgKzAyMDAKKworICAgIGRwa2ctZ2Vuc3ltYm9sczogaW1wcm92ZSBvdXRwdXQgYW5kIGFkZCBhICJ2ZXJib3NlIG91dHB1dCIgb3B0aW9uCisgICAgCisgICAgKiBDdXJyZW50IHZlcnNpb24gb2YgU3ltYm9sRmlsZSBpcyBjYXBhYmxlIG9mIHByaW50aW5nIGFuZCBkZXRlY3RpbmcgbWlzc2luZworICAgICAgcGF0dGVybnMuIFRoZXJlZm9yZSwgZHJvcCBzcGVjaWFsIGhhbmRsaW5nIG9mIHdpbGRjYXJkcyBmcm9tIGRwa2ctZ2Vuc3ltYm9scy4KKyAgICAgIFRoaXMgcmVuZGVycyBzb21lIG9sZCB3aWxkY2FyZCByZWxhdGVkIHN1YnJvdXRpbmVzIGluIFN5bWJvbEZpbGUgb2Jzb2xldGUuCisgICAgICBEcm9wIHRoZW0gYXMgd2VsbC4KKyAgICAqIEFkZCB2ZXJib3NlIG91dHB1dCAoLVYpIG9wdGlvbiB3aGljaCBpbiB0ZW1wbGF0ZSBtb2RlIGFsbG93cyB0byBkdW1wIHN5bWJvbHMKKyAgICAgIGFib3ZlIHRoZSBwYXR0ZXJuIHRoZXkgbWF0Y2ggKGR1bXAoKSBvcHRpb24gJ3dpdGhfcGF0dGVybl9tYXRjaGVzJykuCisgICAgCisgICAgU2lnbmVkLW9mZi1ieTogTW9kZXN0YXMgVmFpbml1cyA8bW9kYXhAZGViaWFuLm9yZz4KKyAgICBTaWduZWQtb2ZmLWJ5OiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKyBzY3JpcHRzL0Rwa2cvU2hsaWJzL1N5bWJvbEZpbGUucG0gfCAgIDE4IC0tLS0tLS0KKyBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbCAgICAgICAgfCAgIDkwICsrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDM5IGluc2VydGlvbnMoKyksIDY5IGRlbGV0aW9ucygtKQorCitjb21taXQgNmRjZjNkZjgyMDhiZWE4ZWIzZjIzMjgwYmFlOTM4ZGM5OTdjYjVmYgorQXV0aG9yOiBNb2Rlc3RhcyBWYWluaXVzIDxtb2RheEBkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgSmFuIDUgMDI6MDM6MjggMjAxMCArMDIwMAorCisgICAgRHBrZzo6U2hsaWJzOjpTeW1ib2xGaWxlOjpkdW1wKCk6IGltcHJvdmUgb3V0cHV0CisgICAgCisgICAgKiBJbiB0ZW1wbGF0ZSBtb2RlLCBkdW1wIHBhdHRlcm5zLiBUaGVuLCBtYXRjaGluZyBzeW1ib2xzIG1pZ2h0IGJlCisgICAgICBvcHRpb25hbGx5IGR1bXBlZCBhcyBjb21tZW50cy4KKyAgICAqIEluIG5vbi10ZW1wbGF0ZSBtb2RlLCBkdW1wIHJhdyBzeW1ib2xzIHdpdGhvdXQgcGF0dGVybnMuCisgICAgCisgICAgU2lnbmVkLW9mZi1ieTogTW9kZXN0YXMgVmFpbml1cyA8bW9kYXhAZGViaWFuLm9yZz4KKyAgICBTaWduZWQtb2ZmLWJ5OiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKyBzY3JpcHRzL0Rwa2cvU2hsaWJzL1N5bWJvbEZpbGUucG0gfCAgIDI1ICsrKysrKysrKysrKysrKysrKysrKy0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDIxIGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA0MjhhYjc2NGUwNmZjOTk3Y2EwMjhlNzRjMGU3ODk5YzUzZmUxMTg2CitBdXRob3I6IE1vZGVzdGFzIFZhaW5pdXMgPG1vZGF4QGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBKYW4gNSAwMjowMzoyOCAyMDEwICswMjAwCisKKyAgICBEcGtnOjpTaGxpYnM6OlN5bWJvbEZpbGU6OmR1bXAoKTogZml4IGluZGVudGF0aW9uIHN0eWxlCisgICAgCisgICAgU2lnbmVkLW9mZi1ieTogTW9kZXN0YXMgVmFpbml1cyA8bW9kYXhAZGViaWFuLm9yZz4KKyAgICBTaWduZWQtb2ZmLWJ5OiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKyBzY3JpcHRzL0Rwa2cvU2hsaWJzL1N5bWJvbEZpbGUucG0gfCAgIDIyICsrKysrKysrKysrLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDExIGluc2VydGlvbnMoKyksIDExIGRlbGV0aW9ucygtKQorCitjb21taXQgNGQ2NWY5NjIxOWU0NWNiODAwODNiZTQ3YzY2MDg1ZmY4NWRjY2E2MQorQXV0aG9yOiBNb2Rlc3RhcyBWYWluaXVzIDxtb2RheEBkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgSmFuIDUgMDI6MDM6MjggMjAxMCArMDIwMAorCisgICAgRHBrZzo6U2hsaWJzOjpTeW1ib2wvU3ltYm9sRmlsZTogaW1wbGVtZW50IHBhdHRlcm4gbWF0Y2hpbmcKKyAgICAKKyAgICBJbXBsZW1lbnQgcGF0dGVybiBtYXRjaGluZyBpbiBTeW1ib2xGaWxlOjptZXJnZV9zeW1ib2xzKCksCisgICAgU3ltYm9sRmlsZTo6Z2V0X25ld19zeW1ib2xzKCkgYW5kIG90aGVyIGZ1bmN0aW9ucyB3aGljaCBkZWFsIHdpdGggdHJhY2tpbmcgb2YKKyAgICBvbGQgc3ltYm9scyBhbmQgZGlzY292ZXJ5IG9mIG5ldyBvbmVzLgorICAgIAorICAgIFNpZ25lZC1vZmYtYnk6IE1vZGVzdGFzIFZhaW5pdXMgPG1vZGF4QGRlYmlhbi5vcmc+CisgICAgU2lnbmVkLW9mZi1ieTogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisgc2NyaXB0cy9EcGtnL1NobGlicy9TeW1ib2wucG0gICAgIHwgICA0NyArKysrKysrKysrLQorIHNjcmlwdHMvRHBrZy9TaGxpYnMvU3ltYm9sRmlsZS5wbSB8ICAxNjQgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgMTg3IGluc2VydGlvbnMoKyksIDI0IGRlbGV0aW9ucygtKQorCitjb21taXQgMjQyNTU2NmViNjZhZDM1YTI0ZTdjYmY4NTE1YTNhMmUyZmFkMjM1NworQXV0aG9yOiBNb2Rlc3RhcyBWYWluaXVzIDxtb2RheEBkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgSmFuIDUgMDI6MDM6MjggMjAxMCArMDIwMAorCisgICAgRHBrZzo6U2hsaWJzOjpTeW1ib2xGaWxlOjpnZXRfbmV3X3N5bWJvbHMoKTogc2ltcGxpZnkgYW5kIHNob3J0ZW4gY29kZQorICAgIAorICAgIFJlZHVjZSB0aGUgY29kZSBpbiBnZXRfbmV3X3N5bWJvbHMoKSBieSBlbnVtZXJhdGluZyBzeW1ib2xzLCByYXRoZXIgdGhhbiB0aGVpcgorICAgIG5hbWVzLiBBbHNvIHNwbGl0IG9mZiBzb21lIGNvZGUgdG8gU3ltYm9sOjppc19lbGlnaWJsZV9hc19uZXcoKSBmdW5jdGlvbi4KKyAgICAKKyAgICBQYXRjaCBpcyBzdXBwb3NlZCB0byByZXN1bHQgaW4gbm8gYmVoYXZpb3JhbCBjaGFuZ2VzLgorICAgIAorICAgIFNpZ25lZC1vZmYtYnk6IE1vZGVzdGFzIFZhaW5pdXMgPG1vZGF4QGRlYmlhbi5vcmc+CisgICAgU2lnbmVkLW9mZi1ieTogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisgc2NyaXB0cy9EcGtnL1NobGlicy9TeW1ib2wucG0gICAgIHwgICAgOSArKysrKysrKysKKyBzY3JpcHRzL0Rwa2cvU2hsaWJzL1N5bWJvbEZpbGUucG0gfCAgIDE1ICsrKysrKystLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgMTYgaW5zZXJ0aW9ucygrKSwgOCBkZWxldGlvbnMoLSkKKworY29tbWl0IDhhZDcxMjA2OGQ0YjMzMzM5ZmM5ZTg4YzBlMDVmNzVjM2M2YmM3MmQKK0F1dGhvcjogTW9kZXN0YXMgVmFpbml1cyA8bW9kYXhAZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIEphbiA1IDAyOjAzOjI4IDIwMTAgKzAyMDAKKworICAgIERwa2c6OlNobGliczo6U3ltYm9sRmlsZTo6bWVyZ2Vfc3ltYm9scygpOiBmYWN0b3JpemUgc29tZSBjb2RlCisgICAgCisgICAgU3BsaXQgb2ZmIHNvbWUgY29kZSBmcm9tIFN5bWJvbEZpbGU6Om1lcmdlX3N5bWJvbHMoKSB0bworICAgIFN5bWJvbDo6bWFya19mb3VuZF9pbl9saWJyYXJ5KCkgYW5kIFN5bWJvbDo6bWFya19ub3RfZm91bmRfaW5fbGlicmFyeSgpCisgICAgbWV0aG9kcy4gTWV0aG9kcyBkbyBzYW5pdGl6aW5nIG9mIHRoZSBTeW1ib2wgb2JqZWN0IHdoZW4gdGhlIHN5bWJvbCBpcyAvIGlzbid0CisgICAgZm91bmQgaW4gdGhlIGxpYnJhcnkgcmVzcGVjdGl2ZWx5LiBUaGlzIHNpbXBsaWZpZXMgcmVhZGFiaWxpdHkgb2YKKyAgICBtZXJnZV9zeW1ib2xzKCkgYW5kIGFsbG93cyByZXVzYWJpbGl0eSBvZiB0aGUgY29kZSBibG9ja3MgKGZvciB0aGUgZnV0dXJlKS4KKyAgICAKKyAgICBTaWduZWQtb2ZmLWJ5OiBNb2Rlc3RhcyBWYWluaXVzIDxtb2RheEBkZWJpYW4ub3JnPgorICAgIFNpZ25lZC1vZmYtYnk6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworIHNjcmlwdHMvRHBrZy9TaGxpYnMvU3ltYm9sLnBtICAgICB8ICAgNDIgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKworIHNjcmlwdHMvRHBrZy9TaGxpYnMvU3ltYm9sRmlsZS5wbSB8ICAgMzIgKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCA0NSBpbnNlcnRpb25zKCspLCAyOSBkZWxldGlvbnMoLSkKKworY29tbWl0IDkwZGZmMzEyYzU4MmYxYTNlYWQ0MTA3NjlhMzM0YjIyNzFlY2I3MmEKK0F1dGhvcjogTW9kZXN0YXMgVmFpbml1cyA8bW9kYXhAZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIEphbiA1IDAyOjAzOjI4IDIwMTAgKzAyMDAKKworICAgIERwa2c6OlNobGliczo6U3ltYm9sL1N5bWJvbEZpbGU6IHJlY29nbml6ZSBwYXR0ZXJucyBhbmQgaW5pdGlhbGl6ZSB0aGVtIHByb3Blcmx5CisgICAgCisgICAgQWRkIGNvZGUgZm9yIHN5bWJvbC1wYXR0ZXJuIHJlY29nbml0aW9uIGFuZCBpbml0aWFsaXphdGlvbi4gVHdvIGdyb3VwcyBvZgorICAgIHBhdHRlcm5zIGFyZSBzdXBwb3J0ZWQ6CisgICAgCisgICAgKiBhbGlhc2VzICh3aWxkY2FyZHMsIGMrKyBkZW1hbmdsZWQgbmFtZXMpLiBUaGV5IGNhbiBiZSBtYXRjaGVkIGJ5IGNvbnZlcnRpbmcKKyAgICAgIGEgcmF3IHN5bWJvbCB0byB0aGUgYWxpYXMgYW5kIG1hcHBpbmcgdGhlIHJlc3VsdCB0byB0aGUgYWxpYXMgcGF0dGVybgorICAgICAgc3BlY2lmaWVkIGluIHN5bWJvbCBmaWxlIHRlbXBsYXRlOworICAgIAorICAgICogZ2VuZXJpYyBwYXR0ZXJucyAocmVndWxhciBleHByZXNzaW9ucykuIFRoZXkgbXVzdCBiZSBtYXRjaGVkIGFnYWluc3QgZWFjaAorICAgICAgcmF3IHN5bWJvbCBpbiBhIHNlcXVlbnRpYWwgb3JkZXIuIFRoZXJlZm9yZSwgdGhleSBhcmUgcmF0aGVyIGV4cGVuc2l2ZQorICAgICAgcGVyZm9ybWFuY2Utd2lzZS4KKyAgICAKKyAgICBSZW5hbWUgU3ltYm9sOjpwcm9jZXNzX3RhZ3MoKSB0byBTeW1ib2w6OmluaXRpYWxpemUoKSBpbiB0aGUgcHJvY2Vzcy4gTmV3IG5hbWUKKyAgICBzdWl0ZXMgdGhlIHB1cnBvc2Ugb2YgdGhlIHN1YiBiZXR0ZXIuCisgICAgCisgICAgRmFpbHVyZSBvZiAnd2lsZGNhcmRlZCBzeW1ib2wnIHRlc3QgaXMgZXhwZWN0ZWQgYXQgdGhpcyBwb2ludC4KKyAgICAKKyAgICBTaWduZWQtb2ZmLWJ5OiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKyBzY3JpcHRzL0Rwa2cvU2hsaWJzL1N5bWJvbC5wbSAgICAgfCAgIDUxICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLQorIHNjcmlwdHMvRHBrZy9TaGxpYnMvU3ltYm9sRmlsZS5wbSB8ICAgMzEgKysrKysrKysrKysrKysrKysrLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgNzMgaW5zZXJ0aW9ucygrKSwgOSBkZWxldGlvbnMoLSkKKworY29tbWl0IGFmZjIyMTc4MmVkN2YxYzZiYTY4YWUwNjQyY2NmNWRiODVhYTQxNGUKK0F1dGhvcjogTW9kZXN0YXMgVmFpbml1cyA8bW9kYXhAZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIEphbiA1IDAyOjAzOjI4IDIwMTAgKzAyMDAKKworICAgIERwa2c6OlNobGliczo6U3ltYm9sOiBhZGQgcGF0dGVybiByZWxhdGVkIGZ1bmN0aW9ucworICAgIAorICAgIFRoZSBuZXcgZnVuY3Rpb25zIGRlZmluZSBhIHB1YmxpYyBpbnRlcmZhY2UgZm9yIGFjY2Vzc2luZyBwYXR0ZXJuIHNwZWNpZmljCisgICAgZGF0YSBpbiBTeW1ib2wgb2JqZWN0cy4KKyAgICAKKyAgICBTaWduZWQtb2ZmLWJ5OiBNb2Rlc3RhcyBWYWluaXVzIDxtb2RheEBkZWJpYW4ub3JnPgorICAgIFNpZ25lZC1vZmYtYnk6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworIHNjcmlwdHMvRHBrZy9TaGxpYnMvU3ltYm9sLnBtIHwgICA5NSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKworIDEgZmlsZXMgY2hhbmdlZCwgOTUgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IGY0OWVjNzc2MjcyODM5MGNkYTE0YTMyYTE5MTBiNjBiMDVlZTUzYWMKK0F1dGhvcjogTW9kZXN0YXMgVmFpbml1cyA8bW9kYXhAZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIEphbiA1IDAyOjAzOjI3IDIwMTAgKzAyMDAKKworICAgIERwa2c6OlNobGliczo6U3ltYm9sOjpjbG9uZSgpOiByZXBsYWNlZCBieSBkY2xvbmUoKSBhbmQgc2Nsb25lKCkuCisgICAgCisgICAgZGNsb25lKCkgLSBkZWVwIGNsb25pbmcgb2YgdGhlIHN5bWJvbC4KKyAgICBzY2xvbmUoKSAtIHNoYWxsb3cgY29weWluZyBvZiB0aGUgc3ltYm9sLgorICAgIAorICAgIFNpZ25lZC1vZmYtYnk6IE1vZGVzdGFzIFZhaW5pdXMgPG1vZGF4QGRlYmlhbi5vcmc+CisgICAgU2lnbmVkLW9mZi1ieTogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisgc2NyaXB0cy9EcGtnL1NobGlicy9TeW1ib2wucG0gICAgIHwgICAyMCArKysrKysrKysrKysrKysrLS0tLQorIHNjcmlwdHMvRHBrZy9TaGxpYnMvU3ltYm9sRmlsZS5wbSB8ICAgIDggKysrKy0tLS0KKyBzY3JpcHRzL3QvMjAwX0Rwa2dfU2hsaWJzLnQgICAgICAgfCAgIDEyICsrKysrKysrKysrLQorIDMgZmlsZXMgY2hhbmdlZCwgMzEgaW5zZXJ0aW9ucygrKSwgOSBkZWxldGlvbnMoLSkKKworY29tbWl0IDNhNGMyYjA3MWM4NDViYzZjYzUzOTgyNjc4MWM0OTNiYWNhMGVmYTMKK0F1dGhvcjogTW9kZXN0YXMgVmFpbml1cyA8bW9kYXhAZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIEphbiA1IDAyOjAzOjI3IDIwMTAgKzAyMDAKKworICAgIERwa2c6OlNobGliczo6Q3BwZmlsdDogbmV3IGludGVyZmFjZSB0byB0aGUgYysrZmlsdCB1dGlsaXR5LgorICAgIAorICAgIFRoaXMgbmV3IG1vZHVsZSBjYW4gYmUgdXNlZCB0byBkbyBzeW1ib2wgZGVtYW5nbGluZyB3aXRoIHRoZSBjKytmaWx0CisgICAgdXRpbGl0eS4gRm9yIHBlcmZvcm1hbmNlIHJlYXNvbnMsIHRoZSBjKytmaWx0IHByb2dyYW0gaXMgcnVuCisgICAgaW4gdGhlIGJhY2tncm91bmQgYW5kIHVzZWQgYXMgYSBkYWVtb246IGZvciBlYWNoIGxpbmUgd3JpdHRlbgorICAgIGl0IGltbWVkaWF0ZWx5IG91dHB1dHMgdGhlIGRlbWFuZ2xlZCBsaW5lLgorICAgIAorICAgIFRoZSBtb2R1bGUgYWxzbyB0YWtlcyBjYXJlIG9mIHRoZSBjKytmaWx0IHByb2Nlc3MgbWFuYWdlbWVudAorICAgIChmb3JraW5nIGFuZCB0ZXJtaW5hdGlvbikuCisgICAgCisgICAgU2lnbmVkLW9mZi1ieTogTW9kZXN0YXMgVmFpbml1cyA8bW9kYXhAZGViaWFuLm9yZz4KKyAgICBTaWduZWQtb2ZmLWJ5OiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKyBzY3JpcHRzL0Rwa2cvU2hsaWJzL0NwcGZpbHQucG0gICAgICB8ICAxMDYgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKKyBzY3JpcHRzL01ha2VmaWxlLmFtICAgICAgICAgICAgICAgICB8ICAgIDIgKworIHNjcmlwdHMvdC8xOTBfRHBrZ19TaGxpYnNfQ3BwZmlsdC50IHwgICA4OSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKworIDMgZmlsZXMgY2hhbmdlZCwgMTk3IGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBiNDMyOTc1YjIwOWVkMjg4ODQ0MWRiZTQwYWEzYjE4NjY5ODM2MzU2CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIEphbiAxMSAxNjo1ODowNiAyMDEwICswMTAwCisKKyAgICBkZWJpYW4vY29udHJvbDogZHJvcCBkZWJpYW4tbWFpbnRhaW5lcnMgZnJvbSBTdWdnZXN0cworICAgIAorICAgIFRoZSBrZXlyaW5nIG9mIGludGVyZXN0IGlzIGF2YWlsYWJsZSBpbiB0aGUgZGViaWFuLWtleXJpbmcgcGFja2FnZS4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAyICsrCisgZGViaWFuL2NvbnRyb2wgICB8ICAgIDIgKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGIzY2U4NWI0M2ZjYTRiNzU1NDljMjE5MWVlZDU2MzI0NmRmYTE5MWIKK0F1dGhvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitEYXRlOiAgIFN1biBKYW4gMTAgMTI6MDU6MTMgMjAxMCArMDEwMAorCisgICAgVXBkYXRlIEdlcm1hbiB0cmFuc2xhdGlvbiBvZiBtYW51YWwgcGFnZXMKKyAgICAKKyAgICBVcGRhdGUgdG8gMTY4MHQuCisKKyBtYW4vcG8vZGUucG8gfCAgIDE2ICsrKysrKysrKysrKysrKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDE1IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBiMWFjYjY2OTBkNzU5ZmU1MjNiZmJlZDE0ZGQ1ZDE2NTNlYWVlMjgyCitNZXJnZTogYTlkNGEwMyBkNTVjNWQzCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEphbiA4IDE5OjIzOjIyIDIwMTAgKzAxMDAKKworICAgIE1lcmdlIGJyYW5jaCAnc2lkJworCitjb21taXQgZDU1YzVkMzliNjg0YzlmMDhmOGY2MTJmNTU1M2RlNWVhNDA5YjYyNQorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBKYW4gOCAxNzo1ODoxMSAyMDEwICswMTAwCisKKyAgICBSZWxlYXNlIDEuMTUuNS42CisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgNCArKy0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA2ZGZmNTUwY2Y2ODg0NmQwYmMzYTQxODlkNzc3OWQwOGZlZWQ1NzAzCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEphbiA4IDE4OjU5OjU5IDIwMTAgKzAxMDAKKworICAgIGRwa2ctc2hsaWJkZXBzKDEpOiBmaXggdHlwbyAiaW5mb3JtYXRpb25zIiAtPiAiaW5mb3JtYXRpb24iCisKKyBtYW4vZHBrZy1zaGxpYmRlcHMuMSB8ICAgIDIgKy0KKyBtYW4vcG8vZGUucG8gICAgICAgICB8ICAgIDIgKy0KKyBtYW4vcG8vZXMucG8gICAgICAgICB8ICAgIDIgKy0KKyBtYW4vcG8vZnIucG8gICAgICAgICB8ICAgIDIgKy0KKyBtYW4vcG8vaHUucG8gICAgICAgICB8ICAgIDIgKy0KKyBtYW4vcG8vamEucG8gICAgICAgICB8ICAgIDIgKy0KKyBtYW4vcG8vcGwucG8gICAgICAgICB8ICAgIDIgKy0KKyBtYW4vcG8vcHRfQlIucG8gICAgICB8ICAgIDIgKy0KKyBtYW4vcG8vcnUucG8gICAgICAgICB8ICAgIDIgKy0KKyBtYW4vcG8vc3YucG8gICAgICAgICB8ICAgIDIgKy0KKyAxMCBmaWxlcyBjaGFuZ2VkLCAxMCBpbnNlcnRpb25zKCspLCAxMCBkZWxldGlvbnMoLSkKKworY29tbWl0IGEzMGVhYjg1ZGY2ZDFjN2M3ZGQwN2Q0MDZjNzk1MWMyMzFjY2Y5MjAKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgSmFuIDggMTg6NTY6MTQgMjAxMCArMDEwMAorCisgICAgZGViaWFuL2NvbnRyb2w6IGFkZCAke21pc2M6RGVwZW5kc30gZXZlcnl3aGVyZQorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDEgKworIGRlYmlhbi9jb250cm9sICAgfCAgICA2ICsrKystLQorIDIgZmlsZXMgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgYjUwMDA4Zjk3M2MwODU2ZGZhMjQxMTI5Zjc2MWQ2Y2MzMTI2NDhjOAorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBKYW4gOCAxNzo1NTozMCAyMDEwICswMTAwCisKKyAgICBkcGtnLXNvdXJjZTogYmV0dGVyIGV4cGxhaW4gaG93IC0tcHJpbnQtZm9ybWF0IHdvcmtzCisgICAgCisgICAgSW4gdGhlIG1hbnVhbCBwYWdlLCBtZW50aW9ucyB0aGF0IGFueSB1cHN0cmVhbSB0YXJiYWxsIG11c3QgYmUgYXZhaWxhYmxlCisgICAgaW4gdGhlIGN1cnJlbnQgZGlyZWN0b3J5IGFuZCBtYWtlIGl0IG9idmlvdXMgd2hlbiBhIGZvcm1hdCBpcyBkaXNjYXJkZWQKKyAgICAoZm9yIGV4YW1wbGUgZHVlIHRvIGxhY2sgb2YgYW4gdXBzdHJlYW0gdGFyYmFsbCkgYnkgZGlzcGxheWluZyBhIG1lc3NhZ2UKKyAgICBvbiBTVERFUlIuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgIHwgICAgMiArKworIG1hbi9kcGtnLXNvdXJjZS4xICAgICAgfCAgICAzICsrLQorIHNjcmlwdHMvZHBrZy1zb3VyY2UucGwgfCAgICA0ICsrLS0KKyAzIGZpbGVzIGNoYW5nZWQsIDYgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworY29tbWl0IDVlNGMxNDcxMmE3OTViMWIyZGE2ZDBiZGI3YzEzMGM4YTk5YzE5MDYKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgSmFuIDggMTc6MTc6MzAgMjAxMCArMDEwMAorCisgICAgZHBrZy1idWlsZHBhY2thZ2U6IGZpeCB2YWx1ZSBvZiAicGFyYWxsZWwiIGV4cG9ydGVkIGluIERFQl9CVUlMRF9PUFRJT05TCisgICAgCisgICAgV2hlbiAiLWoiIGlzIGdpdmVuLCBpdCB1c2VkIHRvIGV4cG9ydCAicGFyYWxsZWw9LTEiIGluc3RlYWQgb2YgdGhlIG1vcmUKKyAgICBsb2dpY2FsICJwYXJhbGxlbD0iIHRoYXQgZ2l2ZXMgdGhlIGRlc2lyZWQgcmVzdWx0IHdpdGggdGhlIHNhbXBsZSBtYWtlCisgICAgaW52b2NhdGlvbiBzaG93biBpbiB0aGUgRGViaWFuIHBvbGljeToKKyAgICAgIE5VTUpPQlMgPSAkKHBhdHN1YnN0IHBhcmFsbGVsPSUsJSwkKGZpbHRlciBwYXJhbGxlbD0lLCQoREVCX0JVSUxEX09QVElPTlMpKSkKKyAgICAgIE1BS0VGTEFHUyArPSAtaiQoTlVNSk9CUykKKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgICAgfCAgICAyICsrCisgc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbCB8ICAgMTAgKysrLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCA3IGRlbGV0aW9ucygtKQorCitjb21taXQgY2ZkZWI3ZTAxZmY3MDI0MjdhYmFkZmExNGJkMmUwNjZiNGVlYzk0MAorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBKYW4gOCAxODo0NjoxNCAyMDEwICswMTAwCisKKyAgICBEcGtnOjpCdWlsZE9wdGlvbnM6IGNoYW5nZSBBUEkgc28gdGhhdCBhbiBlbXB0eSB2YWx1ZSBjYW4gYmUgcHJvcGVybHkgc3VwcG9ydGVkCisgICAgCisgICAgTm8gdmFsdWUgcmVzdWx0cyBpbiBhIGhhc2ggaXRlbSB3aXRoIHVuZGVmIHZhbHVlIHdoaWxlIGFuIGVtcHR5IHZhbHVlCisgICAgcmVzdWx0cyBpbiBhIGhhc2ggaXRlIHdpdGggYW4gZW1wdHkgdmFsdWUuCisgICAgCisgICAgVXBkYXRlIHRoZSBub24tcmVncmVzc2lvbiB0ZXN0cyBhY2NvcmRpbmdseS4gQWxzbyB1cGRhdGUgZHBrZy1idWlsZHBhY2thZ2UKKyAgICB0aGF0IHdhcyB1c2luZyBkZWZpbmVkIGluc3RlYWQgb2YgZXhpc3RzIHRvIHRlc3QgdGhlIGV4aXN0ZW5jZSBvZiBhbgorICAgIG9wdGlvbi4KKworIHNjcmlwdHMvRHBrZy9CdWlsZE9wdGlvbnMucG0gICAgICB8ICAgMTMgKysrKysrKy0tLS0tLQorIHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGwgICAgICB8ICAgIDQgKystLQorIHNjcmlwdHMvdC8zMDBfRHBrZ19CdWlsZE9wdGlvbnMudCB8ICAgMTcgKysrKysrKysrLS0tLS0tLS0KKyAzIGZpbGVzIGNoYW5nZWQsIDE4IGluc2VydGlvbnMoKyksIDE2IGRlbGV0aW9ucygtKQorCitjb21taXQgYTc3NDY4ZmEyMWY1ODA3ZDg5Yjk4MTNlNTJjZDhhN2NlZmU0ZWZlNgorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBKYW4gNyAyMToyMToxNSAyMDEwICswMTAwCisKKyAgICBBZGQgbWlzc2luZyBidWcgY2xvc3VyZQorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDIgKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGE5ZDRhMDNjZmIxNWJhYzAwODQ4MjFkNjNhOWEwMWU5MTZjMmY4MWIKK0F1dGhvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitEYXRlOiAgIFN1biBKYW4gMyAxNjo1MjoxNSAyMDEwICswMTAwCisKKyAgICBDYXJyeSBvdmVyIGZpeCBmb3IgbWlzc3BlbGxpbmcgZnJvbSBhZDNhNGZmOWZkOGFlNmRkZGE3N2RmYjE0M2NjMjUwZDY1Mjk1Y2QxCisKKyBtYW4vcG8vZGUucG8gfCAgICA2ICsrKy0tLQorIG1hbi9wby9mci5wbyB8ICAgIDYgKysrLS0tCisgbWFuL3BvL3BsLnBvIHwgICAgNiArKystLS0KKyBtYW4vcG8vc3YucG8gfCAgICA2ICsrKy0tLQorIDQgZmlsZXMgY2hhbmdlZCwgMTIgaW5zZXJ0aW9ucygrKSwgMTIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA2NzgyZTc2YTk5M2RiMDU5YzMyYzhlNDViMmIyZGNjMjU0ZTI3Yjk2CitBdXRob3I6IEhlbGdlIEtyZXV0em1hbm4gPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorRGF0ZTogICBTdW4gSmFuIDMgMTY6NDM6NTkgMjAxMCArMDEwMAorCisgICAgQ2Fycnkgb3ZlciBmaXggZm9yIG1pc3NwZWxsaW5nIGZyb20gYWQzYTRmZjlmZDhhZTZkZGRhNzdkZmIxNDNjYzI1MGQ2NTI5NWNkMQorCisgc2NyaXB0cy9wby9jYS5wbyB8ICAgIDQgKystLQorIHNjcmlwdHMvcG8vZnIucG8gfCAgICA0ICsrLS0KKyBzY3JpcHRzL3BvL3BsLnBvIHwgICAgNCArKy0tCisgc2NyaXB0cy9wby9ydS5wbyB8ICAgIDQgKystLQorIHNjcmlwdHMvcG8vc3YucG8gfCAgICA0ICsrLS0KKyA1IGZpbGVzIGNoYW5nZWQsIDEwIGluc2VydGlvbnMoKyksIDEwIGRlbGV0aW9ucygtKQorCitjb21taXQgYmM0MGNkNTQ5NGUyNTRmNzY4ZGY1ZTY3NzlhMWM1M2VmYzMxNGVmNworQXV0aG9yOiBIZWxnZSBLcmV1dHptYW5uIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KK0RhdGU6ICAgU3VuIEphbiAzIDE2OjM4OjE4IDIwMTAgKzAxMDAKKworICAgIFVwZGF0ZSBHZXJtYW4gc2NyaXB0cyB0cmFuc2xhdGlvbgorICAgIAorICAgIFVwZGF0ZSB0byA0ODl0LgorCisgc2NyaXB0cy9wby9kZS5wbyB8ICAyMDAgKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAxMDAgaW5zZXJ0aW9ucygrKSwgMTAwIGRlbGV0aW9ucygtKQorCitjb21taXQgYWQzYTRmZjlmZDhhZTZkZGRhNzdkZmIxNDNjYzI1MGQ2NTI5NWNkMQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBKYW4gMiAyMDo0NjozOCAyMDEwICswMTAwCisKKyAgICBGaXggbWlzc3BlbGxpbmdzIG9mIOKAnGV4cGxpY2l0bHnigJ0gYWxsIG92ZXIgdGhlIHBsYWNlCisKKyBDaGFuZ2VMb2cub2xkICAgICAgICAgICAgICB8ICAgIDQgKystLQorIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgIHwgICAgNSArKystLQorIG1hbi9kcGtnLWJ1aWxkcGFja2FnZS4xICAgIHwgICAgMiArLQorIG1hbi9kcGtnLXRyaWdnZXIuMSAgICAgICAgIHwgICAgMiArLQorIHNjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsIHwgICAgNCArKy0tCisgc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbCAgfCAgICAyICstCisgNiBmaWxlcyBjaGFuZ2VkLCAxMCBpbnNlcnRpb25zKCspLCA5IGRlbGV0aW9ucygtKQorCitjb21taXQgZmYxNTliMGQ4MDFhODlkNmQwNzdjNjYzZGQ4MmYwYmZmODM5MzIwZQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBKYW4gMSAyMjowNToxNCAyMDEwICswMTAwCisKKyAgICBsaWJkcGtnOiBSZW5hbWUgc3RydWN0IFRhckZ1bmN0aW9ucyBhbmQgbWVtYmVycworICAgIAorICAgIFVzZSBsb3dlciBjYXNlIG5hbWVzLCBhbmQgbmFtZSBtZW1iZXJzIGNsb3NlciB0byB0aGUgVW5peCBmdW5jdGlvbnMKKyAgICBkb2luZyB0aGUgc2FtZSBhY3Rpb25zLgorCisgbGliL2Rwa2cvdGFyZm4uYyB8ICAgMTYgKysrKysrKystLS0tLS0tLQorIGxpYi9kcGtnL3RhcmZuLmggfCAgIDIwICsrKysrKysrKystLS0tLS0tLS0tCisgc3JjL3Byb2Nlc3NhcmMuYyB8ICAgMTQgKysrKysrKy0tLS0tLS0KKyAzIGZpbGVzIGNoYW5nZWQsIDI1IGluc2VydGlvbnMoKyksIDI1IGRlbGV0aW9ucygtKQorCitjb21taXQgM2NmOGJhM2JhNjJiNTVlMGFiZTY4ZGQxMTkwOWU4YjIwYjhhMDkyZQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBKYW4gMSAxODoyMDowOSAyMDEwICswMTAwCisKKyAgICBsaWJkcGtnOiBEbyBub3QgdXNlIHR5cGVkZWZzIGZvciBzdHJ1Y3RzIGFuZCBlbnVtcworCisgbGliL2Rwa2cvdGFyZm4uYyB8ICAgMjUgKysrKysrKysrKysrLS0tLS0tLS0tLS0tLQorIGxpYi9kcGtnL3RhcmZuLmggfCAgICA5ICsrKy0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgMTUgaW5zZXJ0aW9ucygrKSwgMTkgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA2ODA5NGQ1ZThjMjM3MGJmMDYxYTU5ODA1ZGQ0MDdlMTEzZWVkYzI0CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEphbiAxIDE4OjE0OjI5IDIwMTAgKzAxMDAKKworICAgIGxpYmRwa2c6IFVuY29uZnVzZSBUYXJFeHRyYWN0b3Igc3ltbGluayBoYW5kbGluZworICAgIAorICAgIFRoZSBjb2RlIHdhcyB1c2luZyBjb25mdXNpbmcgdmFyaWFibGUgbmFtZXMgdG8gaGFuZGxlIHRoZSBzeW1saW5rIGxpc3RzLgorCisgbGliL2Rwa2cvdGFyZm4uYyB8ICAgMzQgKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMTggaW5zZXJ0aW9ucygrKSwgMTYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA5N2RmNzcyZDJjMDc2ZjIwY2JmNjI1ZGQxNGNhYzJlMTdjZWZiYzBlCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEphbiAxIDE4OjAyOjEwIDIwMTAgKzAxMDAKKworICAgIGxpYmRwa2c6IFVzZSBUQVJCTEtTWiBpbnN0ZWFkIG9mIGludGVnZXIgbGl0ZXJhbAorCisgbGliL2Rwa2cvdGFyZm4uYyB8ICAgMTcgKysrKysrKysrLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDkgaW5zZXJ0aW9ucygrKSwgOCBkZWxldGlvbnMoLSkKKworY29tbWl0IDU3MmE4ZDFkZmJlMjZjZDdiNzFiNWQ4N2EwZjQxZmUwNjgwNTNlMDYKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgSmFuIDEgMTg6MDE6NTEgMjAxMCArMDEwMAorCisgICAgbGliZHBrZzogTW92ZSBUQVJCTEtTWiBtYWNybyBkZWZpbml0aW9uIHRvIHRhcmZuLmgKKworIGxpYi9kcGtnL2Rwa2cuaCAgfCAgICAyIC0tCisgbGliL2Rwa2cvdGFyZm4uaCB8ICAgIDIgKysKKyAyIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDIxZjQzYjQ5Yzk1YTYwNDFkYWZhMGIxNzkwYjExMjljYzUyYTIzNGUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgSmFuIDEgMTc6Mzc6MTkgMjAxMCArMDEwMAorCisgICAgbGliZHBrZzogUmVuYW1lIFRhckV4dHJhY3RvciBmdW5jdGlvbnMgYXJndW1lbnQgdG8gb3BzCisKKyBsaWIvZHBrZy90YXJmbi5jIHwgICAxNiArKysrKysrKy0tLS0tLS0tCisgbGliL2Rwa2cvdGFyZm4uaCB8ICAgIDIgKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDkgaW5zZXJ0aW9ucygrKSwgOSBkZWxldGlvbnMoLSkKKworY29tbWl0IGNlMTFiYTE3MDQ0MGRhNjEyZTZlZmJmNTk1YzYxMWZiZjRmMzYyM2QKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgSmFuIDEgMTY6Mjg6NTIgMjAxMCArMDEwMAorCisgICAgVXNlIHBpZF90IGluc3RlYWQgb2YgaW50CisKKyBzcmMvY29uZmlndXJlLmMgfCAgICA0ICsrLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDVlMjUyMjIyYzVjYjIyMGU3MWNmZjQwMzY1ZWE3MmQ2NDI5NGNiZmQKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgSmFuIDEgMTQ6MDg6MzQgMjAxMCArMDEwMAorCisgICAgbGliZHBrZzogTW92ZSBjb21wcmVzc2lvbiBkZWNsYXJhdGlvbnMgdG8gYSBuZXcgY29tcHJlc3MuaAorCisgZHBrZy1kZWIvYnVpbGQuYyAgICAgfCAgICAxICsKKyBkcGtnLWRlYi9leHRyYWN0LmMgICB8ICAgIDEgKworIGRwa2ctZGViL21haW4uYyAgICAgIHwgICAgMSArCisgbGliL2Rwa2cvTWFrZWZpbGUuYW0gfCAgICAyICstCisgbGliL2Rwa2cvY29tcHJlc3MuYyAgfCAgICAxICsKKyBsaWIvZHBrZy9jb21wcmVzcy5oICB8ICAgNDggKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCisgbGliL2Rwa2cvZHBrZy5oICAgICAgfCAgIDE4IC0tLS0tLS0tLS0tLS0tLS0tLQorIDcgZmlsZXMgY2hhbmdlZCwgNTMgaW5zZXJ0aW9ucygrKSwgMTkgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBiNjQ1YzM5NzIzOWNkNjM3ODgzMTIyYWY0MTA2ZjZkN2RlNGM5NzI5CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEphbiAxIDE0OjA2OjA0IDIwMTAgKzAxMDAKKworICAgIGxpYmRwa2c6IFJlbmFtZSBjb21wcmVzc2lvbi5jIHRvIGNvbXByZXNzLmMKKworIGxpYi9kcGtnL01ha2VmaWxlLmFtICAgICAgICAgICAgICAgICAgIHwgICAgMiArLQorIGxpYi9kcGtnL3tjb21wcmVzc2lvbi5jID0+IGNvbXByZXNzLmN9IHwgICAgMiArLQorIDIgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgNmZmZDA1NWNmMDY4MTdkOTQwZDU2MjBjMGY2NmVjNzBmYmE0NGJjYQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBKYW4gMSAxMzozMTo1OCAyMDEwICswMTAwCisKKyAgICBkcGtnOiBHaXZlIG1lYW5pbmdmdWwgbmFtZXMgdG8gdmFyaWFibGVzIHRha2luZyBlbnZpcm9ubWVudCB2YWx1ZXMKKworIHNyYy9jb25maWd1cmUuYyB8ICAgMzkgKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyMSBpbnNlcnRpb25zKCspLCAxOCBkZWxldGlvbnMoLSkKKworY29tbWl0IDY4ZDVlMDVjY2ZlNDIxYmY0ZDY4MTMyZjYzYmQwNjFiNjNjZmI4YTQKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgSmFuIDEgMTU6MjQ6MzcgMjAxMCArMDEwMAorCisgICAgQWRkIG1pc3NpbmcgY29weXJpZ2h0IHN0YXRlbWVudHMKKworIGxpYi9kcGtnL2NvbXByZXNzaW9uLmMgICAgICAgICB8ICAgIDQgKysrKworIG00L2Rwa2ctYXJjaC5tNCAgICAgICAgICAgICAgICB8ICAgIDMgKysrCisgbTQvZHBrZy1jb21waWxlci5tNCAgICAgICAgICAgIHwgICAgMyArKy0KKyBtNC9kcGtnLWZ1bmNzLm00ICAgICAgICAgICAgICAgfCAgICAxICsKKyBtNC9kcGtnLWxpYnMubTQgICAgICAgICAgICAgICAgfCAgICA0ICsrKysKKyBtNC9kcGtnLXByb2dzLm00ICAgICAgICAgICAgICAgfCAgICA0ICsrKysKKyBtNC9kcGtnLXR5cGVzLm00ICAgICAgICAgICAgICAgfCAgICAxICsKKyBzY3JpcHRzL0Rwa2cvRXhpdC5wbSAgICAgICAgICAgfCAgICAyICsrCisgc2NyaXB0cy9kcGtnLXNvdXJjZS5wbCAgICAgICAgIHwgICAxMyArKysrKysrKysrKystCisgc2NyaXB0cy91cGRhdGUtYWx0ZXJuYXRpdmVzLnBsIHwgICAgNiArKysrKysKKyAxMCBmaWxlcyBjaGFuZ2VkLCAzOSBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgNDQwOTExOWVhYTFmZGM3YTFiMTAyMjAyMzk2ZjYzOTVkN2RlNDY0NgorQXV0aG9yOiBIZWxnZSBLcmV1dHptYW5uIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KK0RhdGU6ICAgRnJpIEphbiAxIDE3OjUwOjA2IDIwMTAgKzAxMDAKKworICAgIFVwZGF0ZSBHZXJtYW4gdHJhbnNsYXRpb24gb2YgbWFudWFsIHBhZ2VzCisgICAgCisgICAgVXBkYXRlIHRvIDE2Nzl0LCB1cGRhdGUgY29weXJpZ2h0IHllYXIgYW5kIG1pbm9yIGZpeC4KKworIG1hbi9wby9kZS5hZGQgfCAgICAyICstCisgbWFuL3BvL2RlLnBvICB8ICAxMDMgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCA5OSBpbnNlcnRpb25zKCspLCA2IGRlbGV0aW9ucygtKQorCitjb21taXQgYzUzZmRiODU1Mjg4ODY5NmFiYmQ0YmMyYzE5ZmFjYTg0ZGFhOGZjMAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBEZWMgMzEgMTk6NDU6NDMgMjAwOSArMDEwMAorCisgICAgbGliZHBrZzogQ2hhbmdlIHN1YnByb2NfZm9yayByZXR1cm4gdHlwZSB0byBwaWRfdAorCisgbGliL2Rwa2cvc3VicHJvYy5jIHwgICAgMiArLQorIGxpYi9kcGtnL3N1YnByb2MuaCB8ICAgIDIgKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDAzODM5MzVhNjcwODg1YTI5NzA0MjE1MjMyNzkxMWUzZWFiOTc3NGEKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgRGVjIDMxIDE5OjQzOjA2IDIwMDkgKzAxMDAKKworICAgIGxpYmRwa2c6IFJlbmFtZSBtX2ZvcmsgdG8gc3VicHJvY19mb3JrCisgICAgCisgICAgQWxzbyBuYW1lc3BhY2UgY2xlYW51cCBmdW5jdGlvbiB0byBzdWJwcm9jX2ZvcmtfY2xlYW51cC4KKworIGRwa2ctZGViL2J1aWxkLmMgICB8ICAgMTUgKysrKysrKysrKy0tLS0tCisgZHBrZy1kZWIvZXh0cmFjdC5jIHwgICAxNSArKysrKysrKysrLS0tLS0KKyBkcGtnLWRlYi9pbmZvLmMgICAgfCAgICAzICsrLQorIGRzZWxlY3QvbWV0aG9kLmNjICB8ICAgIDMgKystCisgbGliL2Rwa2cvc3VicHJvYy5jIHwgICAgOCArKysrLS0tLQorIGxpYi9kcGtnL3N1YnByb2MuaCB8ICAgIDIgKy0KKyBzcmMvYXJjaGl2ZXMuYyAgICAgfCAgICAzICsrLQorIHNyYy9jb25maWd1cmUuYyAgICB8ICAgIDQgKystLQorIHNyYy9oZWxwLmMgICAgICAgICB8ICAgIDQgKystLQorIHNyYy9wcm9jZXNzYXJjLmMgICB8ICAgIDggKysrKy0tLS0KKyAxMCBmaWxlcyBjaGFuZ2VkLCAzOSBpbnNlcnRpb25zKCspLCAyNiBkZWxldGlvbnMoLSkKKworY29tbWl0IDY5MmQ2N2U0ZDAzZjFjYTc3MTZjOTBhYzMxOTZkYTYyNzZlNDg1Y2IKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgRGVjIDMxIDE4OjA4OjQ1IDIwMDkgKzAxMDAKKworICAgIGxpYmRwa2c6IE1vdmUgbV9mb3JrIGFuZCBoZWxwZXJzIHRvIHRoZSBzdWJwcm9jIG1vZHVsZQorCisgbGliL2Rwa2cvZHBrZy5oICAgIHwgICAgMSAtCisgbGliL2Rwa2cvbWxpYi5jICAgIHwgICAyMiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgbGliL2Rwa2cvc3VicHJvYy5jIHwgICAzNyArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCisgbGliL2Rwa2cvc3VicHJvYy5oIHwgICAgMSArCisgNCBmaWxlcyBjaGFuZ2VkLCAzOCBpbnNlcnRpb25zKCspLCAyMyBkZWxldGlvbnMoLSkKKworY29tbWl0IDA0ZDhkNWY3ZjUwMTgyZjYxMGZiYWE0Njg2Zjg3OGJkMGFhNjkyNDQKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgTm92IDEzIDA1OjQ0OjAxIDIwMDkgKzAxMDAKKworICAgIGJ1aWxkOiBSZWZhY3RvciBjb21wcmVzc2lvbiBsaWJyYXJ5IGNoZWNrIG00IG1hY3JvCisKKyBtNC9kcGtnLWxpYnMubTQgfCAgIDg3ICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMzcgaW5zZXJ0aW9ucygrKSwgNTAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBhODc1NTgwNGZkMjI1MDkzYTNhOTM2MDU5NmMwNzRjOGU5YTlkZmFlCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIE5vdiAxMyAwNTozMDowNiAyMDA5ICswMTAwCisKKyAgICBtYW46IEFkZCBuZXcgZGViLXNwbGl0LjUgbWFudWFsIHBhZ2UKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAxICsKKyBtYW4vTWFrZWZpbGUuYW0gIHwgICAgMSArCisgbWFuL2RlYi1zcGxpdC41ICB8ICAgMzggKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKKyBtYW4vcG8vcG80YS5jZmcgIHwgICAgNSArKysrKworIDQgZmlsZXMgY2hhbmdlZCwgNDUgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDFiNmY2YjMxNDFkNGI4N2ExZWIzYTA0NGVkODRmMDgxNzM4NzkyZmUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gRGVjIDI3IDAwOjA0OjU0IDIwMDkgKzAxMDAKKworICAgIFVzZSBhIGZvciBpbnN0ZWFkIG9mIGEgd2hpbGUgbG9vcCBpbiBjaGVja3BhdGggcGF0aCBzcGxpdHRpbmcKKworIHNyYy9oZWxwLmMgfCAgICA2ICstLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCA1IGRlbGV0aW9ucygtKQorCitjb21taXQgNDkxYjcwYmQzNzdmM2E1NTI5MTBhMGM3MjUzYmMwNGI1OTI2M2Y3NgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBEZWMgMjcgMDA6MDE6NTIgMjAwOSArMDEwMAorCisgICAgbGliY29tcGF0OiBEZWZpbmUgbGNob3duIGFzIGNob3duIGlmIHRoZSBmb3JtZXIgaXMgbm90IGF2YWlsYWJsZQorICAgIAorICAgIEluc3RlYWQgb2YgZHVwbGljYXRpbmcgdGhlIGNvZGUgd2l0aCBjaG93biBjYWxscyB3aGVuIGxjaG93biBpcyBub3QKKyAgICBhdmFpbGFibGUsIGp1c3QgbWFwIGl0IHdpdGggYSBtYWNyb3MuCisKKyBsaWIvY29tcGF0L2NvbXBhdC5oIHwgICAgNCArKysrCisgc3JjL2FyY2hpdmVzLmMgICAgICB8ICAgMTIgLS0tLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDEyIGRlbGV0aW9ucygtKQorCitjb21taXQgMDdkM2ZhZjhjN2JjMzM4NzE3ZmE3ZTFmZWQzNjk4ZDMxNmRjNTQ1NAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBEZWMgMjYgMjI6MDU6MjAgMjAwOSArMDEwMAorCisgICAgaW5zdGFsbC1pbmZvOiBEbyBub3QgdXNlIGFjY2VzcygpIHRvIGNoZWNrIGZvciBleGVjIHBlcm1pc3Npb24KKyAgICAKKyAgICBKdXN0IHRyeSB0byBleGVjdXRlIHRoZSBmaWxlIGFuZCBkZWFsIHdpdGggdGhlIGVycm9yIGlmIGFueS4KKworIHV0aWxzL2luc3RhbGwtaW5mby5jIHwgICAgNSAtLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMCBpbnNlcnRpb25zKCspLCA1IGRlbGV0aW9ucygtKQorCitjb21taXQgZGRlOWEyMjZkNWY4MzFjNzczNTM5ZWU4YzU4Zjg2MTE0OGZkN2M1ZQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBEZWMgMjYgMjE6MDQ6MjMgMjAwOSArMDEwMAorCisgICAgVXNlIHN0YXQgaW5zdGVhZCBvZiBhY2Nlc3MgdG8gY2hlY2sgZm9yIGZpbGUgZXhpc3RlbmNlCisKKyBzcmMvc3RhdGNtZC5jICAgICAgICAgICAgIHwgICAgNCArKystCisgdXRpbHMvc3RhcnQtc3RvcC1kYWVtb24uYyB8ICAgIDMgKystCisgMiBmaWxlcyBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA4NjM5NDM0NjhlYjBjM2UxNDMxYzcyMjMzMjVhNDY5ZTIyM2RjZDcyCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IERlYyAyNiAxNTo1NjowOCAyMDA5ICswMTAwCisKKyAgICBsaWJkcGtnOiBBZGQgbmV3IHZhcmJ1Zl9kZXRhY2ggZnVuY3Rpb24KKworIGxpYi9kcGtnL3Rlc3QvdC12YXJidWYuYyB8ICAgMjMgKysrKysrKysrKysrKysrKysrKysrKysKKyBsaWIvZHBrZy92YXJidWYuYyAgICAgICAgfCAgIDEyICsrKysrKysrKysrKworIGxpYi9kcGtnL3ZhcmJ1Zi5oICAgICAgICB8ICAgIDEgKworIDMgZmlsZXMgY2hhbmdlZCwgMzYgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDE4NTYxMzg1NmVmODVmYjdmNjY5NDFmOTA3MmVhNjk5NTFiMWEyMzMKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgRGVjIDMxIDIwOjQ2OjU4IDIwMDkgKzAxMDAKKworICAgIGxpYmRwa2c6IERvIG5vdCBpbmNsdWRlIHVubmVlZGVkIDxkcGtnL2Rwa2ctZGIuaD4KKworIGxpYi9kcGtnL2VoYW5kbGUuYyB8ICAgIDEgLQorIGxpYi9kcGtnL21saWIuYyAgICB8ICAgIDEgLQorIDIgZmlsZXMgY2hhbmdlZCwgMCBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgZWM3ZmFlMGMyNDYyYzhjZGM1MWFlNDQxZTE5MjAyMDM4MWE0Nzk5YworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBEZWMgMjYgMTU6NDM6MzggMjAwOSArMDEwMAorCisgICAgbGliZHBrZzogSW5jbHVkZSA8ZHBrZy92YXJidWYuaD4gaW5zdGVhZCBvZiA8ZHBrZy9kcGtnLWRiLmg+CisKKyBsaWIvZHBrZy9jb21wcmVzc2lvbi5jICAgfCAgICAyICstCisgbGliL2Rwa2cvdGVzdC90LXZhcmJ1Zi5jIHwgICAgMiArLQorIDIgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgZTk2NGFiZTFlNDNlNzMwZDQ2YmQwZjRhYWQwODRjZWUyZDc4Yjk0NAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBOb3YgMTMgMDU6Mjg6MDggMjAwOSArMDEwMAorCisgICAgUmVtb3ZlIHVubmVlZGVkIHN0YXRpYyBtb2RpZmllciBmcm9tIGZ1bmN0aW9uIHZhcmlhYmxlcworICAgIAorICAgIFRoZSBjbGVhbnVwIGZ1bmN0aW9ucyBkbyBub3QgbmVlZCBhIHN0YXRpYyB2YXJpYWJsZSB3aGVuIGl0J3MgYSBwb2ludGVyCisgICAgYW5kIHdlIHBhc3MgaXRzIHZhbHVlIHRvIGl0LgorCisgZHBrZy1kZWIvaW5mby5jIHwgICAgMiArLQorIHNyYy9tYWluLmMgICAgICB8ICAgIDQgKystLQorIHNyYy9xdWVyeS5jICAgICB8ICAgIDIgKy0KKyBzcmMvc3RhdGNtZC5jICAgfCAgICAyICstCisgNCBmaWxlcyBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDUgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA2NzMxZmI2YzEzZmUyNDcwZDM0MjBiZWE1YjVkOWIyYzFkNjU3YmFhCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IFNlcCAyNiAwNzowMToyNSAyMDA5ICswMjAwCisKKyAgICBSZW1vdmUgbGlua2FnZSBhZ2FpbnN0IHVudXNlZCBsaWJyYXJpZXMKKyAgICAKKyAgICBEbyBub3QgbGluayBhZ2FpbnN0IHNlbGludXggb24gZHBrZy1kZWIsIGFuZCBkbyBub3QgbGluayBhZ2FpbnN0IHRoZQorICAgIGNvbXByZXNzaW9uIGxpYnJhcmllcyBvbiBkcGtnLgorCisgZHBrZy1kZWIvTWFrZWZpbGUuYW0gfCAgICAzICstLQorIHNyYy9NYWtlZmlsZS5hbSAgICAgIHwgICAgMiAtLQorIDIgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQorCitjb21taXQgNzUzMTVmNmJhYWIwNjA3ZmYwM2M1NzgwODliZjFjYTFhZDhkNjkyMgorQXV0aG9yOiBDaHJpc3RpYW4gUEVSUklFUiA8YnVidWxsZUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgRGVjIDMwIDE1OjI1OjUwIDIwMDkgKzAxMDAKKworICAgIFVwZGF0ZWQgc2NyaXB0cyBGcmVuY2ggdHJhbnNsYXRpb24KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAxICsKKyBzY3JpcHRzL3BvL2ZyLnBvIHwgIDIxMyArKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDEwMiBpbnNlcnRpb25zKCspLCAxMTIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBkYTI0MDU5ZWFmZmJkMTA4NGFjOTRhMjdkYTVmNjQ2OTJiMmU0NzcxCitBdXRob3I6IENocmlzdGlhbiBQRVJSSUVSIDxidWJ1bGxlQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBEZWMgMzAgMTQ6NDc6MTEgMjAwOSArMDEwMAorCisgICAgVXBkYXRlZCBkcGtnIEZyZW5jaCB0cmFuc2xhdGlvbgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDkgKysrLS0tLQorIHBvL2ZyLnBvICAgICAgICAgfCAgIDYzICsrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAyNiBpbnNlcnRpb25zKCspLCA0NiBkZWxldGlvbnMoLSkKKworY29tbWl0IDMxMmM2OGIxNDIzYmMwMDhlZjU3N2E4YTFiZmIwMTg0NDhhNDQ5NTAKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgRGVjIDIzIDE3OjEyOjU2IDIwMDkgKzAxMDAKKworICAgIGRwa2ctc291cmNlOiBlbnN1cmUgcXVpbHQncyAucGMgZGlyZWN0b3J5IGlzIGNyZWF0ZWQgYmVmb3JlIHdyaXRpbmcgLnBjL2FwcGxpZWQtcGF0Y2hlcworICAgIAorICAgIFRoZSBxdWlsdCAucGMgZGlyZWN0b3J5IHdhcyBub3QgY3JlYXRlZCB3aGVuIGEgbmV3IGF1dG9tYXRpYyBwYXRjaAorICAgIHdhcyByZWdpc3RlcmVkIGFuZCB3aGVuIG5vIG90aGVyIHBhdGNoZXMgd2VyZSBtYW5hZ2VkIGJ5IHF1aWx0LgorICAgIAorICAgIEJhc2VkLW9uLXBhdGNoLWJ5OiBUb21taSBWYWluaWthaW5lbiA8dGh2K2RlYmlhbkBpa2kuZmk+CisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA5ICsrKysrKysrKworIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbSB8ICAgIDEgKworIDIgZmlsZXMgY2hhbmdlZCwgMTAgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDYzMGRjNzNkZGJiZGZmODFmYjNhNjhiZWZkOTY4MDg5NGRiZmQwMzEKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgRGVjIDE4IDE0OjAyOjI0IDIwMDkgKzAxMDAKKworICAgIE1ha2Ugc2hvdzFwYWNrYWdlKCkgdGFrZSBhIHN0cnVjdCBwa2dpbmZvcGVyZmlsZQorICAgIAorICAgIEluc3RlYWQgb2YgaGFyZGNvZGluZyB0aGUgdXNhZ2Ugb2YgdGhlIHBrZ2luZm8gaW5zdGFsbGVkIG1lbWJlciwKKyAgICBwYXNzIGl0IGFzIGFuIGFyZ3VtZW50IG9mIGEgcG9pbnRlciB0byBhIHN0cnVjdCBwa2dpbmZvcGVyZmlsZSwgc28KKyAgICB0aGF0IHdlIGNhbiBjaG9vc2Ugd2hhdCB0byBzaG93LgorCisgZHBrZy1kZWIvaW5mby5jICAgIHwgICAgMiArLQorIGxpYi9kcGtnL2Rwa2ctZGIuaCB8ICAgIDMgKystCisgbGliL2Rwa2cvc2hvd3BrZy5jIHwgICAxMyArKysrKysrLS0tLS0tCisgc3JjL3F1ZXJ5LmMgICAgICAgIHwgICAgNCArKy0tCisgNCBmaWxlcyBjaGFuZ2VkLCAxMiBpbnNlcnRpb25zKCspLCAxMCBkZWxldGlvbnMoLSkKKworY29tbWl0IGJlMzNkNmRlZWE1NzRkNGI0MmFjOTc5NTQxOTIwOTczNzYwODM5MTUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gRGVjIDE0IDE4OjU0OjM3IDIwMDkgKzAxMDAKKworICAgIE1vdmUgY29sb3IgbWVtYmVyIGZyb20gc3RydWN0IHBrZ2luZm8gdG8gc3RydWN0IHBlcnBhY2thZ2VzdGF0ZQorICAgIAorICAgIFRoZSBvbmx5IHVzZXIgb2YgdGhpcyBmaWVsZCBpcyBpbiB0aGUgZGVwZW5kZW5jeSBjeWNsZSBkZXRlY3Rpb24sCisgICAgb25seSBmb3VuZCB1bmRlciBzcmMvLiBTbyBtb3ZlIGl0IHRoZXJlIHdoZXJlIGl0IGJlbG9uZ3MuCisKKyBsaWIvZHBrZy9kYXRhYmFzZS5jIHwgICAgMSAtCisgbGliL2Rwa2cvZHBrZy1kYi5oICB8ICAgIDEgLQorIHNyYy9kZXBjb24uYyAgICAgICAgfCAgICA4ICsrKystLS0tCisgc3JjL2ZpbGVzZGIuYyAgICAgICB8ICAgIDEgKworIHNyYy9tYWluLmggICAgICAgICAgfCAgICA3ICsrKysrKysKKyA1IGZpbGVzIGNoYW5nZWQsIDEyIGluc2VydGlvbnMoKyksIDYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA1ZjVlZjMyMDA0MWJlMmFiMGUzMjc2ODgyNWI4OTk2MjljNTliMmY5CitNZXJnZTogMjUzZmNmNiA1NzYzNmVmCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIERlYyAyMiAxNjo1NjoxMSAyMDA5ICswMTAwCisKKyAgICBNZXJnZSBicmFuY2ggJ3NpZCcgKHRocm91Z2ggdGFnICcxLjE1LjUuNScpCisgICAgCisgICAgQ29uZmxpY3RzOgorICAgIAlkZWJpYW4vY2hhbmdlbG9nCisKK2NvbW1pdCA1NzYzNmVmYTcxYmVmMjIwMDA2ZDhkNTFmNTZmYjgzZDViNTkwZjI3CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIERlYyAyMiAwOTo1MDoxMiAyMDA5ICswMTAwCisKKyAgICBSZWxlYXNlIDEuMTUuNS41CisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgNCArKy0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBkNDY0MWIyNDhlNDFhNzQ5NzYwMThmZjdmNjM4MDYzYzMxOTZlZjU2CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIERlYyAyMiAwOTozOTozNSAyMDA5ICswMTAwCisKKyAgICBBbGxvdyBiYWNrIG5ldyBsaW5lcyBpbiBzdWJzdHZhcnMgYW5kIG1haW50YWluZXIgYXJndW1lbnRzCisgICAgCisgICAgUmVncmVzc2lvbiBpbnRyb2RvY3VlZCBpbiBjb21taXQgZDU3MGRjZjU2YzUwMmEzNmI0NzQ3NjY1OTM4MDI1NjA5ZDVmZmU0Ny4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgIHwgICAgNyArKysrKysrCisgc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGwgfCAgICA4ICsrKystLS0tCisgc2NyaXB0cy9kcGtnLXNvdXJjZS5wbCAgICAgfCAgICA0ICsrLS0KKyAzIGZpbGVzIGNoYW5nZWQsIDEzIGluc2VydGlvbnMoKyksIDYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyNTNmY2Y2ZTBjM2FmZDNhMTcxMmVmYzk2OTQ4YmZiMTE1NTJiZDAyCitBdXRob3I6IENocmlzdGlhbiBQZXJyaWVyIDxidWJ1bGxlQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBEZWMgMTUgMjA6MjM6NTUgMjAwOSArMDEwMAorCisgICAgU2ltcGxpZmllZCBDaGluZXNlIHRyYW5zbGF0aW9uIGNvbXBsZXRlZAorCisgcG8vemhfQ04ucG8gfCAgNjc5ICsrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAzMTEgaW5zZXJ0aW9ucygrKSwgMzY4IGRlbGV0aW9ucygtKQorCitjb21taXQgZTllOGIxMGMzZGU4NzJiYTNjNGExYzQ0NTNlYzhjZDYyZTFjMjAwMworQXV0aG9yOiBTdmVuIEpvYWNoaW0gPHN2ZW5qb2FjQGdteC5kZT4KK0RhdGU6ICAgRnJpIERlYyAxMSAwODozNjowNyAyMDA5ICswMTAwCisKKyAgICBHZXJtYW4gZHNlbGVjdCB0cmFuc2xhdGlvbiB1cGRhdGUKKyAgICAKKyAgICBVcGRhdGUgdG8gMjc4dC4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAzICsrKworIGRzZWxlY3QvcG8vZGUucG8gfCAgIDEzICsrKysrKysrLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDExIGluc2VydGlvbnMoKyksIDUgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA2MTMzM2FhOWRhMzZlNjI4MGE5Mzc3YWQ3MmQxYzI3ZmI1MTdhZWRkCitBdXRob3I6IFN2ZW4gSm9hY2hpbSA8c3ZlbmpvYWNAZ214LmRlPgorRGF0ZTogICBGcmkgRGVjIDExIDA4OjI2OjIyIDIwMDkgKzAxMDAKKworICAgIEdlcm1hbiBkcGtnIHRyYW5zbGF0aW9uIHVwZGF0ZQorICAgIAorICAgIFVwZGF0ZSB0byA5NjV0LgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDMgKworIHBvL2RlLnBvICAgICAgICAgfCAgNDcwICsrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAyNDIgaW5zZXJ0aW9ucygrKSwgMjMxIGRlbGV0aW9ucygtKQorCitjb21taXQgMGZiYjAzODgwNWI5OTc1ZGQ1OGU1NmY1NTA3YzI4OTRmYWYyMDYwMworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBEZWMgMTAgMTI6NTY6MDIgMjAwOSArMDEwMAorCisgICAgbGliZHBrZzogU3dhcCBtZW1zZXQgYXJndW1lbnRzIGluIHN0cmluZyB0ZXN0IGNhc2UKKworIGxpYi9kcGtnL3Rlc3QvdC1zdHJpbmcuYyB8ICAgIDggKysrKy0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKKworY29tbWl0IDEyNDE2ZGY5YTE2YzcwYmJiZTc0Zjg3NjdiNThlN2E2MDI4MDUwZWIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgRGVjIDEwIDEyOjUyOjMwIDIwMDkgKzAxMDAKKworICAgIGxpYmRwa2c6IEJsYW5rIHRoZSB3aG9sZSBNRDUgY29udGV4dCBub3QganVzdCB0aGUgc2l6ZSBvZiBhIHBvaW50ZXIKKyAgICAKKyAgICBUaGUgbWVtc2V0IHdhcyB1c2luZyB0aGUgc2l6ZSBvZiB0aGUgY29udGV4dCBwb2ludGVyIGFuZCBub3QgdGhlIGFjdHVhbAorICAgIHNpemUgb2YgdGhlIHN0cnVjdC4KKyAgICAKKyAgICBTcG90dGVkLWJ5OiBKb2NoZW4gVm9zcyA8dm9zc0BzZWVodWhuLmRlPiAob24gdXRpbC1saW51eC1uZykKKworIGxpYi9kcGtnL21kNS5jIHwgICAgMiArLQorIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgNGE2NTkwZWRmYjJlM2U4MjcxNjUwMTE1OTRmYWUxYWM2ZmRiOWU3OAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBEZWMgMTAgMTI6NDk6NDUgMjAwOSArMDEwMAorCisgICAgZHBrZy1xdWVyeTogRG8gbm90IGFsbG93IG1vcmUgdGhhbiB0d28gYXJndW1lbnRzIGZvciAtLWNvbnRyb2wtcGF0aAorICAgIAorICAgIFRoZSBsYXN0IGluY3JlbWVudCB0byBhcmd2IHdhcyBub3QgYmVpbmcgdXNlZCwgYnV0IGluc3RlYWQgdGhlCisgICAgaW5jcmVtZW50LCBtYWtlIGl0IHVzZWZ1bCBieSBjaGVja2luZyBpZiB0aGVyZSdzIGFueSBhZGRpdGlvbmFsCisgICAgYXJndW1lbnQgYWZ0ZXIgdGhlIHNlY29uZCwgYW5kIGJhaWwgb3V0IGluIHRoYXQgY2FzZS4KKyAgICAKKyAgICBUaGlzIHdhcyBzcG90dGVkIGJ5IGEgcnVuIHdpdGggdGhlIGNsYW5nIHN0YXRpYyBhbmFseXplci4KKworIHNyYy9xdWVyeS5jIHwgICAgNiArKysrLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDY4M2QxOGE4OTE5N2NmZDgyNGFhZjI5MWMwMDhhZWJkOWM2YmQwYzUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgRGVjIDEwIDEyOjMyOjMwIDIwMDkgKzAxMDAKKworICAgIGxpYmRwa2c6IFByb3Blcmx5IGluY3JlbWVudCBzZWVuIGZpZWxkcyBpbiBhIHN0YW56YQorICAgIAorICAgIFRoZSBjdXJyZW50IGNvZGUgd2FzIG5vdCBpbmNyZW1lbnRpbmcgdGhlIGNvbnRlbnRzIG9mIHRoZSBwb2ludGVkIGFyZWEsCisgICAgYnV0IHRoZSBwb2ludGVyIGl0c2VsZiwgd2hpY2ggd2FzIG1ha2luZyB0aGUgY2hlY2sgZm9yIGFscmVhZHkgc2VlbgorICAgIChkdXBsaWNhdGUpIGZpZWxkcyBhIG5vLW9wLCBhbmQgdGh1cyBub24tZmF0YWwsIGNvbnRyYXJ5IHRvIHdoYXQgd2FzCisgICAgaW50ZW5kZWQgb3JpZ2luYWxseS4KKyAgICAKKyAgICBUaGlzIHNob3VsZCBub3QgYmUgYSBwcm9ibGVtIGluIGdlbmVyYWwgYXMgdGhlIHRvb2xzIGluIGNoYXJnZSBvZgorICAgIGdlbmVyYXRpbmcgYmluYXJ5IHBhY2thZ2VzIGVycm9yIG91dCBpbiBjYXNlIG9mIGR1cGxpY2F0ZSBmaWVsZHMsIHNvCisgICAgdGhlcmUgc2hvdWxkIG5vdCBiZSBtYW55IGJyb2tlbiBwYWNrYWdlcyBvbiB0aGUgd2lsZC4KKyAgICAKKyAgICBUaGlzIHdhcyBzcG90dGVkIGJ5IGEgcnVuIHdpdGggdGhlIGNsYW5nIHN0YXRpYyBhbmFseXplci4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICA0ICsrKysKKyBsaWIvZHBrZy9wYXJzZS5jIHwgICAgMiArLQorIDIgZmlsZXMgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgODkyYTc0MmM0MGVhYTZkNDU2ZWI2YzQ3NTQ2ZDQ0ZGQzYzAyMDJkZAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBEZWMgMTAgMTI6MzA6MTAgMjAwOSArMDEwMAorCisgICAgbGliZHBrZzogUHJlc2VydmUgZXJyb3Igc3RhdHVzIHdoaWxlIHJlYWRpbmcgR05VIGxvbmcgdGFyIG5hbWVzCisgICAgCisgICAgVGhlIGNvZGUgd2FzIHVuY29uZGl0aW9uYWxseSBzZXR0aW5nIHRoZSBzdGF0dXMgdG8gMCwgYXMgdGhhdCdzIHdoYXQgdGhlCisgICAgcmVzdCBvZiB0aGUgY29kZSBleHBlY3RzLCBidXQgaXQgd2FzIG5vdCBwcmVzZXJ2aW5nIHRoZSBuZWdhdGl2ZSB2YWx1ZQorICAgIHRoYXQgZ2V0cyBzZXQgb24gZXJyb3IuCisgICAgCisgICAgVGhpcyB3YXMgc3BvdHRlZCBieSBhIHJ1biB3aXRoIHRoZSBjbGFuZyBzdGF0aWMgYW5hbHl6ZXIuCisKKyBsaWIvZHBrZy90YXJmbi5jIHwgICAgNCArKysrCisgMSBmaWxlcyBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA4Mzc4ZmY5ZTk1NmJiNmU0NjU5YmIzMmIxZjkzYTBhNjliMTM1MWRmCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IERlYyAxMCAxMjowNzozNCAyMDA5ICswMTAwCisKKyAgICBkcGtnOiBDaGVjayBzYWZlX3JlYWQgcmV0dXJuIGNvZGUKKyAgICAKKyAgICBUaGUgc2FmZV9yZWFkIGZ1bmN0aW9uIHByb3RlY3RzIGFnYWluc3QgaW50ZXJydXB0aW9ucyBhbmQgcGFydGlhbCByZWFkcywKKyAgICBidXQgbm90IGFnYWluc3Qgb3RoZXIgdHlwZXMgb2YgZXJyb3JzLCBmb3Igd2hpY2ggd2UgbmVlZCB0byBjaGVjayB0aGUKKyAgICByZXR1cm4gdmFsdWUuCisgICAgCisgICAgVGhpcyB3YXMgc3BvdHRlZCBieSBhIHJ1biB3aXRoIHRoZSBjbGFuZyBzdGF0aWMgYW5hbHl6ZXIuCisKKyBzcmMvYXJjaGl2ZXMuYyB8ICAgIDcgKysrKystLQorIDEgZmlsZXMgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgZTMzY2M3MjRjZmQxOTBkZmUzZTkzZjk0ZjkzMzBjNTJkZTk5ZjExYworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBEZWMgMTAgMDc6NTE6NDUgMjAwOSArMDEwMAorCisgICAgbGliZHBrZzogRm9yd2FyZCBkZWNsYXJlIHRyaWdraW5kaW5mbyB2YXJpYWJsZXMgYWZ0ZXIgZGVmaW5pbmcgdGhlIHR5cGUKKyAgICAKKyAgICBUaGlzIHdhcyBzcG90dGVkIGJ5IGEgcnVuIHdpdGggdGhlIGNsYW5nIHN0YXRpYyBhbmFseXplci4KKworIGxpYi9kcGtnL3RyaWdsaWIuYyB8ICAgIDMgKy0tCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA1ODYyZmQ5MTlkNjc1ZmE0ZDg1YmUzMTJjNTk4YjNmMDNlNzM3MDA1CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IERlYyAxMCAwMDozNjowMSAyMDA5ICswMTAwCisKKyAgICBkcGtnOiBSZW1vdmUgZHVwbGljYXRlIG9sZGFyZ3MgdmFyaWFibGUKKyAgICAKKyAgICBJbml0aWFsaXplIG5ld2FyZ3MgdG8gTlVMTCBub3cgdGhhdCBvbGRhcmdzIGlzIG5vdCB0aGVyZSBmb3IgdGhlIGluaXRpYWwKKyAgICB2YWx1ZS4KKyAgICAKKyAgICBUaGlzIHdhcyBzcG90dGVkIGJ5IGEgcnVuIHdpdGggdGhlIGNsYW5nIHN0YXRpYyBhbmFseXplci4KKworIHNyYy9tYWluLmMgfCAgICA1ICsrLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA0OTQ1M2NhMDU2NTEyNmRmYTBmNjYzZjM3NzFkNzQ2YmVkY2QxYmJlCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IERlYyAxMCAwMDoyMjowOSAyMDA5ICswMTAwCisKKyAgICBkc2VsZWN0OiBEbyBub3QgZm9yd2FyZCBkZWNsYXJlIOKAmGVudW0gcXVpdGFjdGlvbuKAmQorICAgIAorICAgIFN0YW5kYXJkIEMrKyBkb2VzIG5vdCBhbGxvdyBkZWNsYXJpbmcgYW4gaW5jb21wbGV0ZSBlbnVtIHR5cGUuIEFuZCB0aGUKKyAgICBlbnVtIGlzIGFscmVhZHkgZGVjbGFyZWQgaW4gwqtkc2VsZWN0L2RzZWxlY3QuaMK7IHdoaWNoIGdldHMgaW5jbHVkZWQKKyAgICBmaXJzdC4KKyAgICAKKyAgICBUaGlzIHdhcyBzcG90dGVkIGJ5IGEgcnVuIHdpdGggdGhlIGNsYW5nIHN0YXRpYyBhbmFseXplci4KKworIGRzZWxlY3QvYmluZGluZ3MuaCB8ICAgIDIgLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDAgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IGEyOWM5Yzg3MDA1MzJhZTcwOTBjZWU2OTk0ODcxNzdlZDY1ZDkzMzIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgRGVjIDEwIDAwOjIxOjIyIDIwMDkgKzAxMDAKKworICAgIERvIG5vdCBpbmNyZW1lbnQgdmFyaWFibGVzIHdoZW4gdGhlIHZhbHVlIGlzIG5vdCBnb2luZyB0byBiZSB1c2VkCisgICAgCisgICAgVGhpcyB3YXMgc3BvdHRlZCBieSBhIHJ1biB3aXRoIHRoZSBjbGFuZyBzdGF0aWMgYW5hbHl6ZXIuCisKKyBkcGtnLWRlYi9pbmZvLmMgfCAgICA0ICsrLS0KKyBzcmMvYXJjaGl2ZXMuYyAgfCAgICAyICstCisgMiBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA4MDY0N2UzM2QxN2M0YWQyOTgwMTkxMDJhOGQyOGE1YjQ0ZWQ0ZWYyCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IERlYyAxMCAwMDoxNzozNSAyMDA5ICswMTAwCisKKyAgICBEbyBub3QgYXNzaWduIHRvIHZhcmlhYmxlcyB3aGVuIHRoZXkgc3Vic2VxdWVudGx5IGdldCBvdmVyd3JpdHRlbgorICAgIAorICAgIFRoaXMgd2FzIHNwb3R0ZWQgYnkgYSBydW4gd2l0aCB0aGUgY2xhbmcgc3RhdGljIGFuYWx5emVyLgorCisgZHBrZy1kZWIvaW5mby5jICAgfCAgICA1ICsrLS0tCisgbGliL2Rwa2cvYnVmZmVyLmMgfCAgICA0ICsrLS0KKyBsaWIvZHBrZy90YXJmbi5jICB8ICAgIDEgLQorIHNyYy9hcmNoaXZlcy5jICAgIHwgICAgMiArLQorIHNyYy9tYWluLmMgICAgICAgIHwgICAgMiArLQorIDUgZmlsZXMgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCA4IGRlbGV0aW9ucygtKQorCitjb21taXQgMzliMGNjM2M4NWE2M2I3ZDE3NjM2YjRkOTQ1OThhOTU0MzA0ZTc0OAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBEZWMgMTAgMDA6MTA6MzcgMjAwOSArMDEwMAorCisgICAgZHNlbGVjdDogQ2hhbmdlIGtleWJpbmRpbmdzIGZvcndhcmQgZGVjbGFyYXRpb24gdG8gYSBzdHJ1Y3QKKyAgICAKKyAgICBUaGlzIG1hdGNoZXMgdGhlIHR5cGUgb2YgdGhlIGRlY2xhcmF0aW9uIGluIMKrZHNlbGVjdC9iaW5kaW5ncy5owrsuCisgICAgCisgICAgVGhpcyB3YXMgc3BvdHRlZCBieSBhIHJ1biB3aXRoIHRoZSBjbGFuZyBzdGF0aWMgYW5hbHl6ZXIuCisKKyBkc2VsZWN0L2RzZWxlY3QuaCB8ICAgIDIgKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGZiMmJmYjZiYzI5NGM1NDc5OTUyNjRiOTFjY2RmY2E3ZDVmZTY0NDIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgRGVjIDkgMTQ6NDE6MjQgMjAwOSArMDEwMAorCisgICAgRml4IGJ1ZyBjbG9zdXJlCisgICAgCisgICAgVGhpbmtvIGluIGNvbW1pdCBhM2M2OGE3NWUwYzlhZDg2MTY2NjE5N2JjYTU1YjkwMGJmNzViOWU0LgorICAgIAorICAgIENsb3NlczogIzU2MDAxMAorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDIgKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDM5YzQ5YTU4ZjI1OTQ5NDY2Mzg1NDIxNjljYzJkOWMzMmQxOTBiZWIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgRGVjIDkgMTQ6MTA6MjEgMjAwOSArMDEwMAorCisgICAgZHBrZy1kaXZlcnQ6IERvIG5vdCBhbGxvdyBkaXZlcnRpbmcgYSBmaWxlIHRvIGl0c2VsZgorICAgIAorICAgIFRoaXMgd2FzIGNhdXNpbmcgdGhlIGZpbGUgdG8gZ2V0IHJlbW92ZWQuCisgICAgCisgICAgQ2xvc2VzOiAjMzEyMjA2CisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgIHwgICAgMiArKworIHNjcmlwdHMvZHBrZy1kaXZlcnQucGwgfCAgICAxICsKKyAyIGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IGEzYzY4YTc1ZTBjOWFkODYxNjY2MTk3YmNhNTViOTAwYmY3NWI5ZTQKK0F1dGhvcjogQXVyZWxpZW4gSmFybm8gPGF1cmVsMzJAZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIERlYyA5IDEzOjQ1OjMwIDIwMDkgKzAxMDAKKworICAgIEFkZCBzcGFyYzY0IHRvIGNwdXRhYmxlCisgICAgCisgICAgQ2xvc2VzOiAjNTIzNDU2CisKKyBjcHV0YWJsZSAgICAgICAgIHwgICAgMSArCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDIgKysKKyAyIGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IGFlOGI5OGJjNzU5MDUwNDJhYzM2ZGI4YzUyZDI0NTRlYTM1ZTA2YjIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgRGVjIDggMDA6NDQ6MzEgMjAwOSArMDEwMAorCisgICAgbGliZHBrZzogRG8gbm90IG1hcmsgZGF0YWJhc2UgbmFtZXMgaW4gd3JpdGVkYiBmb3IgdHJhbnNsYXRpb24KKyAgICAKKyAgICBUaGlzIGFjdHVhbGx5IG1ha2VzIGxpZmUgaGFyZGVyIGZvciB0cmFuc2xhdG9ycywgYW5kIGl0IGNvbGxpZGVzIHdpdGgKKyAgICBzaW1pbGFyIHN0cmluZ3MgZnJvbSB1cGRhdGVkLWFsdGVybmF0aXZlcy4KKyAgICAKKyAgICBTdWdnZXN0ZWQtYnk6IFN2ZW4gSm9hY2hpbSA8c3ZlbmpvYWNAZ214LmRlPgorCisgbGliL2Rwa2cvZHVtcC5jIHwgICAgMiArLQorIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgMzkxNzlkYjNkZjU3NzA4ZjQ5NDQ2ZTllNjgyMWNjMzQzNjk1Y2I3ZgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBEZWMgMiAyMDoxMTo0MSAyMDA5ICswMTAwCisKKyAgICBidWlsZDogTWFrZSB0aGUgRG94eWZpbGUgYSBkZXBlbmRlbmN5IG9mIHRoZSBkb2MgdGFyZ2V0CisKKyBNYWtlZmlsZS5hbSB8ICAgIDIgKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDhiZmNiYWFhNzhhNzVkZDEwYTJlODVkMzllZjcwNTYxMDEyMzQ4YjIKK0F1dGhvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitEYXRlOiAgIE1vbiBEZWMgNyAyMToyMTo1OSAyMDA5ICswMTAwCisKKyAgICBPcmRlciB0cmFuc2xhdGlvbiBieSBhbHBoYWJldAorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDYgKysrLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA0N2FjOWQwOGYxN2Y4OGVhMjI1MzhhMTQ0MzZiMmE1N2NhMWYyNWQ3CitBdXRob3I6IEhlbGdlIEtyZXV0em1hbm4gPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorRGF0ZTogICBNb24gRGVjIDcgMjE6MjA6NDIgMjAwOSArMDEwMAorCisgICAgVXBkYXRlIEdlcm1hbiB0cmFuc2xhdGlvbiBvZiBtYW51YWwgcGFnZXMKKyAgICAKKyAgICBVcGRhdGUgdG8gMTY2OHQuCisKKyBtYW4vcG8vZGUucG8gfCAgMTQ4ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDE0NyBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgMzAwNzMxYjc0MjBkNTFmZTQyMjk5ZjU5NWQ3N2NkYTVlYzY1NTRhMAorQXV0aG9yOiBIZWxnZSBLcmV1dHptYW5uIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KK0RhdGU6ICAgTW9uIERlYyA3IDE4OjQzOjE3IDIwMDkgKzAxMDAKKworICAgIFVwZGF0ZSBHZXJtYW4gc2NyaXB0cyB0cmFuc2xhdGlvbgorICAgIAorICAgIFVwZGF0ZSB0byA0OTB0LgorCisgc2NyaXB0cy9wby9kZS5wbyB8ICAgMTMgKysrKysrKysrKysrLQorIDEgZmlsZXMgY2hhbmdlZCwgMTIgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGE5Nzg1NjlmMjA1YjBlNmFjNTEwZTdlMTA4ZWJkNTNlNzVmMjkwYWMKK01lcmdlOiBhMWZmNmIxIGY5NDgxNDQKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gRGVjIDcgMDk6NDE6MjYgMjAwOSArMDEwMAorCisgICAgTWVyZ2UgYnJhbmNoICdzaWQnCisKK2NvbW1pdCBmOTQ4MTQ0ODQzM2RiZTBlOTg2NjU4NmY4N2JjOGJjMjFlNDM1NDI3CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIERlYyA3IDA5OjI1OjIxIDIwMDkgKzAxMDAKKworICAgIFJlbGVhc2UgMS4xNS41LjQKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICA0ICsrLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IGExZmY2YjFjODMxNDA0OGY3NzA3ZDg2ZTYzZmZhYTljMzE3Y2ViYjcKK0F1dGhvcjogSXZhbiBNYXPDoXIgPGhlbGl4ODRAY2VudHJ1bS5zaz4KK0RhdGU6ICAgVGh1IERlYyAzIDIyOjE3OjI4IDIwMDkgKzAxMDAKKworICAgIFNsb3ZhayB0cmFuc2xhdGlvbiB1cGRhdGUKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAxICsKKyBwby9zay5wbyAgICAgICAgIHwgIDE1OSArKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDc4IGluc2VydGlvbnMoKyksIDgyIGRlbGV0aW9ucygtKQorCitjb21taXQgZTg5MzQ4NzMyYzEwNTI2MjVmY2MzOTg0MmRjZTg1MWJkZTg0NGMwMQorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBEZWMgMyAxMjoxNzozOSAyMDA5ICswMTAwCisKKyAgICBEcGtnOjpDaGFuZ2Vsb2c6OkRlYmlhbjogY2FsbCAkZW50cnktPmNoZWNrX3RyYWlsZXIoKSBmb3IgdHJhaWxlciBsaW5lCisgICAgCisgICAgVGhlIGhlYWRlciBsaW5lIHdhcyBjaGVja2VkIHR3aWNlLCB0aGUgc2Vjb25kIGNoZWNrIHdhcyBtZWFudCB0bworICAgIGNoZWNrIHRoZSB0cmFpbGVyIGxpbmUuIFNvIGNoYW5nZSBpdCBhY2NvcmRpbmdseS4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgICAgICAgIHwgICAgMSArCisgc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9EZWJpYW4ucG0gfCAgICAyICstCisgMiBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA1OTkzMWE1YzQ1MzI2ZTQxODM1NDM2MWI0NTM1ZTk4MjA3MDI4ZWEyCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIE5vdiAyOSAxODowMzoxMCAyMDA5ICswMTAwCisKKyAgICBkcGtnLXNvdXJjZTogdmVyaWZ5IHZlcnNpb24gb2YgdGhlIHF1aWx0IG1ldGFkYXRhIGJlZm9yZSBidWlsZAorICAgIAorICAgIFNpbmNlIGZvcm1hdCAiMy4wIChxdWlsdCkiIGNhbiBub3cgbW9kaWZ5IHRoZSBjb250ZW50IG9mIHRoZSAucGMKKyAgICBkaXJlY3RvcnksIGVuc3VyZSBpdCBzdGlsbCB1c2VzIHRoZSBzdXBwb3J0ZWQgZm9ybWF0IChjdXJyZW50bHkgdmVyc2lvbgorICAgIDIpLiBBZGQgYW4gb3B0aW9uIC0tYWxsb3ctdmVyc2lvbi1vZi1xdWlsdC1kYj08dmVyPiB0byBiZSBhYmxlCisgICAgdG8gZm9yY2UgY3JlYXRpb24gb2YgYSBzb3VyY2UgcGFja2FnZSBkZXNwaXRlIHRoZSB1bmV4cGVjdGVkIHZlcnNpb24uCisKKyBtYW4vZHBrZy1zb3VyY2UuMSAgICAgICAgICAgICAgICAgICAgICAgfCAgICA4ICsrKysrKysrCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtIHwgICAyOCArKysrKysrKysrKysrKysrKysrKysrKysrKysrCisgMiBmaWxlcyBjaGFuZ2VkLCAzNiBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgOGU2NDEzODIyMWJiNjIwYWQ3OWVkMWUzNzM4ZjU1NDQ1MjcxZDU2OQorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBOb3YgMjkgMTc6MzA6MzAgMjAwOSArMDEwMAorCisgICAgZHBrZy1zb3VyY2U6IHN1cHBvcnQgZGViaWFuL3NvdXJjZS9wYXRjaC1oZWFkZXIKKyAgICAKKyAgICBUaGUgY29udGVudCBvZiB0aGlzIGZpbGUgaXMgdXNlZCBhcyBoZWFkZXIgb2YgdGhlIGF1dG9tYXRpYyBwYXRjaAorICAgIGdlbmVyYXRlZCBpbiBmb3JtYXRzICIyLjAiIGFuZCAiMy4wIChxdWlsdCkiLgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMiArKworIG1hbi9kcGtnLXNvdXJjZS4xICAgICAgICAgICAgICAgICAgICAgICB8ICAgMTIgKysrKysrKysrLS0tCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtICAgICAgIHwgICAgOCArKysrKysrKworIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbSB8ICAgMTAgKysrKysrKysrLQorIDQgZmlsZXMgY2hhbmdlZCwgMjggaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKKworY29tbWl0IDM4ZGQyYTQ1ZTQ5ZTE4M2U1YmRiYjY0ZmFhNzM1M2I2MGZhYTA4YzYKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gTm92IDI5IDE2OjQzOjQ3IDIwMDkgKzAxMDAKKworICAgIGRwa2ctc291cmNlOiBzdXBwb3J0IC0tc2luZ2xlLWRlYmlhbi1wYXRjaCBmb3IgIjMuMCAocXVpbHQpIgorICAgIAorICAgIFdpdGggdGhpcyBvcHRpb24sIHRoZSBhdXRvbWF0aWMgcGF0Y2ggaXMgbmFtZWQKKyAgICBkZWJpYW4vcGF0Y2hlcy9kZWJpYW4tY2hhbmdlcyBpbnN0ZWFkIG9mCisgICAgZGViaWFuL3BhdGNoZXMvZGViaWFuLWNoYW5nZXMtPHZlcj4uIFdpdGggdGhpcyBvcHRpb24sIHRoZSBuZXcgZm9ybWF0CisgICAgaXMgY2xvc2VyIHRvIDEuMCB3aXRoIGl0cyBzaW5nbGUgZGlmZiB0aGF0IGlzIGFsd2F5cyB1cGRhdGVkLgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNCArKysrCisgbWFuL2Rwa2ctc291cmNlLjEgICAgICAgICAgICAgICAgICAgICAgIHwgICAyMiArKysrKysrKysrKysrKysrKystLS0tCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtIHwgICAxNSArKysrKysrKysrKysrKy0KKyAzIGZpbGVzIGNoYW5nZWQsIDM2IGluc2VydGlvbnMoKyksIDUgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBkODgxY2RjYTU1ZTQxZTFiMTdkODRiOTM1YzlhNjEyZTA4ZjgwZjk4CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIE5vdiAyOSAxNToyNzoxNSAyMDA5ICswMTAwCisKKyAgICBEcGtnOjpTb3VyY2U6OlBhY2thZ2U6OlYzOjpxdWlsdDogY3JlYXRlIGFuZCB1c2UgLnBjIGRpcmVjdG9yeQorICAgIAorICAgIEluc3RlYWQgb2YgY2FsbGluZyBxdWlsdCB0byBhcHBseSBwYXRjaGVzLCB3ZSBhbHdheXMgYXBwbHkgdGhlbQorICAgIGJ5IGhhbmQgYW5kIHdlIGNyZWF0ZSB0aGUgLnBjIGRpcmVjdG9yeSB1c2VkIGJ5IHF1aWx0ICh2ZXJzaW9uIDIgaW4KKyAgICAucGMvLnZlcnNpb24pLiBUaGF0IHdheSB3ZSBhcmUgZnVsbHkgY29tcGF0aWJsZSB3aXRoIHF1aWx0IGFuZCB3ZSBjYW4ndAorICAgIGhhdmUgZGlmZmVyaW5nIGJlaGF2aW91ciB3aGV0aGVyIHF1aWx0IGlzIGluc3RhbGxlZCBvciBub3QuCisgICAgCisgICAgVXBkYXRlIHRoZSBkb2N1bWVudGF0aW9uIGFjY29yZGluZ2x5LiBUaGUgb3B0aW9uIC0td2l0aG91dC1xdWlsdCBpcyBnb25lCisgICAgYXMgaXMgZGViaWFuL3BhdGNoZXMvLmRwa2ctc291cmNlLWFwcGxpZWQgKHJlcGxhY2VkIGJ5CisgICAgLnBjL2FwcGxpZWQtcGF0Y2hlcykuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA1ICsKKyBtYW4vZHBrZy1zb3VyY2UuMSAgICAgICAgICAgICAgICAgICAgICAgfCAgIDE3ICstLQorIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbSAgICAgICB8ICAgMjEgKystCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtIHwgIDI4MiArKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tCisgNCBmaWxlcyBjaGFuZ2VkLCAxNDUgaW5zZXJ0aW9ucygrKSwgMTgwIGRlbGV0aW9ucygtKQorCitjb21taXQgZjIzYzRhY2I3NWE5ZDIxMDkyYTY5ZTk3ODBiZGYzYjVkNWUxZDAyYworQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBEZWMgMiAyMTo1MDoyNiAyMDA5ICswMTAwCisKKyAgICBzY3JpcHRzL3QvMjAwX0Rwa2dfU2hsaWJzLnQ6IGZpeCBwYXRoIG9mIGxkLnNvLmNvbmYgZmlsZSB0byBsb2FkCisKKyBzY3JpcHRzL3QvMjAwX0Rwa2dfU2hsaWJzLnQgfCAgICAyICstCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAxMTM1MzM5MTZiMWJjZDMwMGRiODk3NTc1YjIzYzViYjdhMTRmM2MwCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIERlYyAyIDIxOjI4OjE5IDIwMDkgKzAxMDAKKworICAgIERwa2c6OkRlcHM6IGNsZWFudXAgQVBJCisgICAgCisgICAgUmVuYW1lIHB1YmxpYyBmdW5jdGlvbnMgd2l0aCBkZXBzXyBwcmVmaXguIEV4cG9ydCB0aGVtIGJ5IGRlZmF1bHQuCisgICAgCisgICAgVXBkYXRlIGFsbCBzY3JpcHRzIHVzaW5nIERwa2c6OkRlcHMgYWNjb3JkaW5nbHksIGluY2x1ZGluZyB0aGUgdGVzdC1zdWl0ZS4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgICAgICB8ICAgIDIgKworIHNjcmlwdHMvRHBrZy9EZXBzLnBtICAgICAgICAgICB8ICAxMjEgKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLQorIHNjcmlwdHMvZHBrZy1jaGVja2J1aWxkZGVwcy5wbCB8ICAgIDcgKy0KKyBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbCAgICAgfCAgIDExICsrLS0KKyBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsICAgICAgfCAgICA4ICstCisgc2NyaXB0cy9kcGtnLXNvdXJjZS5wbCAgICAgICAgIHwgICAgMiArLQorIHNjcmlwdHMvdC80MDBfRHBrZ19EZXBzLnQgICAgICB8ICAgMjggKysrKystLS0tLQorIDcgZmlsZXMgY2hhbmdlZCwgOTAgaW5zZXJ0aW9ucygrKSwgODkgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBiMjRkMWZlY2RkNTg2MzdkNGJiNjM3OTljMGM0YjcxOWZlOWRkNGNlCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIE5vdiAzMCAyMjozODowNSAyMDA5ICswMTAwCisKKyAgICBEcGtnOjpEZXBzOiB1c2UgInVzZSBiYXNlIiBpbnN0ZWFkIG9mIEBJU0EKKworIHNjcmlwdHMvRHBrZy9EZXBzLnBtIHwgICAgNiArKystLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworY29tbWl0IGMwOTBhNTlhMDRiMjBiNDEwOTM3NTc2NThjOWM3M2Y0ZDc2MDNlOTQKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gTm92IDMwIDIyOjM0OjEyIDIwMDkgKzAxMDAKKworICAgIERwa2c6OkRlcHM6IHJlcGxhY2UgZHVtcCgpIG1ldGhvZCB3aXRoIG91dHB1dChbJGZoXSkKKyAgICAKKyAgICBVcGRhdGUgdGVzdCBzdWl0ZSBhY2NvcmRpbmdseSBhcyB3ZWxsIGFzIGFsbCBzY3JpcHRzIHVzaW5nIERwa2c6OkRlcHMuCisgICAgQWxzbyB1c2Ugb3ZlcmxvYWQgdG8gcHJvdmlkZSBhIHN0cmluZyByZXByZXNlbnRhdGlvbiBjb3JyZXNwb25kaW5nIHRvCisgICAgd2hhdCdzIHJldHVybmVkIGJ5IG91dHB1dCgpLgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICAgIHwgICAgMyArKworIHNjcmlwdHMvRHBrZy9EZXBzLnBtICAgICAgICAgICB8ICAgNjAgKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tCisgc2NyaXB0cy9kcGtnLWNoZWNrYnVpbGRkZXBzLnBsIHwgICAgNCArLQorIHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsICAgICB8ICAgIDIgKy0KKyBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsICAgICAgfCAgICAyICstCisgc2NyaXB0cy9kcGtnLXNvdXJjZS5wbCAgICAgICAgIHwgICAgMiArLQorIHNjcmlwdHMvdC80MDBfRHBrZ19EZXBzLnQgICAgICB8ICAgMjEgKysrKysrKy0tLS0tLQorIDcgZmlsZXMgY2hhbmdlZCwgNjAgaW5zZXJ0aW9ucygrKSwgMzQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA4ZDNmNjkwNGYzMGNmNmYzOGMwMzU3MTk1YzkzY2ZhY2YxMTkxYTEyCitBdXRob3I6IENocmlzdGlhbiBQZXJyaWVyIDxidWJ1bGxlQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBEZWMgMSAwOTowNzoyMCAyMDA5ICswMTAwCisKKyAgICBDb3JyZWN0IGVuY29kaW5nCisKKyBwby96aF9DTi5wbyB8IDQzMTMgKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDIwMTMgaW5zZXJ0aW9ucygrKSwgMjMwMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDYxZGM0YjIzNDRjNDhhODBlZmIzOGVmODU2MDA3ODMzYjQwMmZmYzIKK0F1dGhvcjogQ2hyaXN0aWFuIFBlcnJpZXIgPGJ1YnVsbGVAZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIERlYyAxIDA3OjI4OjEwIDIwMDkgKzAxMDAKKworICAgIFVwZGF0ZWQgU2ltcGxpZmllZCBDaGluZXNlIHRyYW5zbGF0aW9uCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMyArCisgcG8vemhfQ04ucG8gICAgICB8IDQzODQgKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAyMzU4IGluc2VydGlvbnMoKyksIDIwMjkgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBkNmI3ZGUwNDBmMTE3NjEzNzA0NjQyY2IwNGUwMWI1ZjdhZWFlZTE1CitBdXRob3I6IEhlbGdlIEtyZXV0em1hbm4gPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorRGF0ZTogICBNb24gTm92IDMwIDE4OjMyOjIwIDIwMDkgKzAxMDAKKworICAgIFVwZGF0ZSBHZXJtYW4gc2NyaXB0cyB0cmFuc2xhdGlvbgorICAgIAorICAgIFVwZGF0ZSB0byA0ODh0LgorCisgc2NyaXB0cy9wby9kZS5wbyB8ICAgIDcgKysrKy0tLQorIDEgZmlsZXMgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQorCitjb21taXQgNmYzZDdjZWM1N2UxZjU1ZmMyNWY5ODIyYjNlMDM0NGI4ODczNDAyNAorQXV0aG9yOiBIZWxnZSBLcmV1dHptYW5uIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KK0RhdGU6ICAgTW9uIE5vdiAzMCAxODoyODo0MCAyMDA5ICswMTAwCisKKyAgICBVcGRhdGUgR2VybWFuIHRyYW5zbGF0aW9uIG9mIG1hbnVhbCBwYWdlcworICAgIAorICAgIFVwZGF0ZSB0byAxNjU2dC4KKworIG1hbi9wby9kZS5wbyB8ICAgMTUgKysrKy0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDExIGRlbGV0aW9ucygtKQorCitjb21taXQgYzAxMjlmMDIxNDE2NzY0MDIxMDFjYWFhOTY2YzJiMWQxOGZkOGRjNworQXV0aG9yOiBSb2RlcmljaCBTY2h1cHAgPHJvZGVyaWNoLnNjaHVwcEBnb29nbGVtYWlsLmNvbT4KK0RhdGU6ICAgU3VuIE5vdiAyOSAxODoxOToyNyAyMDA5ICswMTAwCisKKyAgICBEcGtnOjpJbmRleDogZml4IGdldCgpIGFuZCByZW1vdmUoKSBtZXRob2RzCisgICAgCisgICAgVGhleSB3ZXJlIHVzaW5nIG5vbi1leGlzdGluZyBnZXRfYnlfa2V5cygpIG1ldGhvZCBpbnN0ZWFkIG9mIGdldF9rZXlzKCkuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgfCAgICA3ICsrKysrKysKKyBzY3JpcHRzL0Rwa2cvSW5kZXgucG0gfCAgICA0ICsrLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDkgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDBmYzIxMTU4MWI5YmZiYzJiMTU3NWQ0YmQ3OWZhMDZmYzMwZDYwODMKK01lcmdlOiBhYmYzNzg3IGI2YTI5MjYKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gTm92IDI5IDE3OjAyOjA4IDIwMDkgKzAxMDAKKworICAgIE1lcmdlIHNpZCBicmFuY2ggdGhyb3VnaCBjb21taXQgJzEuMTUuNS4zJworICAgIAorICAgIENvbmZsaWN0czoKKyAgICAJbWFuL3BvL2RlLnBvCisgICAgCW1hbi9wby9zdi5wbworICAgIAlzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsCisgICAgCXNjcmlwdHMvcG8vZGUucG8KKyAgICAJc2NyaXB0cy9wby9zdi5wbworCitjb21taXQgYWJmMzc4NzgwMTAyYWRlZGI3ZDEzZjRkMzZhMTY0MWQ4ODU2NDk5ZQorQXV0aG9yOiBDaHJpc3RpYW4gUGVycmllciA8YnVidWxsZUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gTm92IDI5IDA3OjQ1OjI2IDIwMDkgKzAxMDAKKworICAgIE1ha2UgdGhlIHRyYW5zbGF0aW9uIG9mICJvcmlnaW5hbCIgY29uc2lzdGVudAorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDIgKysKKyBtYW4vcG8vZnIucG8gICAgIHwgICA1MiArKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAyOCBpbnNlcnRpb25zKCspLCAyNiBkZWxldGlvbnMoLSkKKworY29tbWl0IGI2YTI5MjZhMTY3MGQyODU4M2FkMzhjNDM5ODFmYjJmNDI1MDU3ZGUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgTm92IDI3IDE5OjIzOjQ4IDIwMDkgKzAxMDAKKworICAgIFJlbGVhc2UgMS4xNS41LjMKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICA0ICsrLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDM0ODhiMDE0ZmQ4ZDYyZjZiZWI2ZGE2MGY4NDI3NTk5YWMwMjk1OGIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgTm92IDI3IDE4OjUyOjI1IDIwMDkgKzAxMDAKKworICAgIFJlZ2VuZXJhdGUgLnBvdCBmaWxlcyBhbmQgbWVyZ2UgLnBvIGZpbGVzIHdpdGggdGhlbQorCisgbWFuL3BvL2RlLnBvICAgICAgICAgICAgfCAgMjg5ICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgbWFuL3BvL2Rwa2ctbWFuLnBvdCAgICAgfCAgMjgyICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBtYW4vcG8vZXMucG8gICAgICAgICAgICB8ICAyODIgKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIG1hbi9wby9mci5wbyAgICAgICAgICAgIHwgIDI4MiArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgbWFuL3BvL2h1LnBvICAgICAgICAgICAgfCAgMjgyICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBtYW4vcG8vamEucG8gICAgICAgICAgICB8ICAyODIgKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIG1hbi9wby9wbC5wbyAgICAgICAgICAgIHwgIDI4OSArKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIG1hbi9wby9wdF9CUi5wbyAgICAgICAgIHwgIDI4MiArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgbWFuL3BvL3J1LnBvICAgICAgICAgICAgfCAgMjgyICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBtYW4vcG8vc3YucG8gICAgICAgICAgICB8ICAyODkgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9hc3QucG8gICAgICAgICAgICAgICB8ICAxMTEgKysrKysrKysrKy0tLS0tLS0tLQorIHBvL2JzLnBvICAgICAgICAgICAgICAgIHwgIDExMSArKysrKysrKysrLS0tLS0tLS0tCisgcG8vY2EucG8gICAgICAgICAgICAgICAgfCAgMTExICsrKysrKysrKystLS0tLS0tLS0KKyBwby9jcy5wbyAgICAgICAgICAgICAgICB8ICAxMTEgKysrKysrKysrKy0tLS0tLS0tLQorIHBvL2RhLnBvICAgICAgICAgICAgICAgIHwgIDExMSArKysrKysrKysrLS0tLS0tLS0tCisgcG8vZGUucG8gICAgICAgICAgICAgICAgfCAgMTExICsrKysrKysrKystLS0tLS0tLS0KKyBwby9kcGtnLnBvdCAgICAgICAgICAgICB8ICAxMTEgKysrKysrKysrKy0tLS0tLS0tLQorIHBvL2R6LnBvICAgICAgICAgICAgICAgIHwgIDExMSArKysrKysrKysrLS0tLS0tLS0tCisgcG8vZWwucG8gICAgICAgICAgICAgICAgfCAgMTExICsrKysrKysrKystLS0tLS0tLS0KKyBwby9lby5wbyAgICAgICAgICAgICAgICB8ICAxMTEgKysrKysrKysrKy0tLS0tLS0tLQorIHBvL2VzLnBvICAgICAgICAgICAgICAgIHwgIDExMSArKysrKysrKysrLS0tLS0tLS0tCisgcG8vZXQucG8gICAgICAgICAgICAgICAgfCAgMTExICsrKysrKysrKystLS0tLS0tLS0KKyBwby9ldS5wbyAgICAgICAgICAgICAgICB8ICAxMTEgKysrKysrKysrKy0tLS0tLS0tLQorIHBvL2ZyLnBvICAgICAgICAgICAgICAgIHwgIDExMSArKysrKysrKysrLS0tLS0tLS0tCisgcG8vZ2wucG8gICAgICAgICAgICAgICAgfCAgMTExICsrKysrKysrKystLS0tLS0tLS0KKyBwby9odS5wbyAgICAgICAgICAgICAgICB8ICAxMTEgKysrKysrKysrKy0tLS0tLS0tLQorIHBvL2lkLnBvICAgICAgICAgICAgICAgIHwgIDExMSArKysrKysrKysrLS0tLS0tLS0tCisgcG8vaXQucG8gICAgICAgICAgICAgICAgfCAgMTExICsrKysrKysrKystLS0tLS0tLS0KKyBwby9qYS5wbyAgICAgICAgICAgICAgICB8ICAxMTEgKysrKysrKysrKy0tLS0tLS0tLQorIHBvL2ttLnBvICAgICAgICAgICAgICAgIHwgIDExMSArKysrKysrKysrLS0tLS0tLS0tCisgcG8va28ucG8gICAgICAgICAgICAgICAgfCAgMTExICsrKysrKysrKystLS0tLS0tLS0KKyBwby9rdS5wbyAgICAgICAgICAgICAgICB8ICAxMTEgKysrKysrKysrKy0tLS0tLS0tLQorIHBvL2x0LnBvICAgICAgICAgICAgICAgIHwgIDExMSArKysrKysrKysrLS0tLS0tLS0tCisgcG8vbXIucG8gICAgICAgICAgICAgICAgfCAgMTExICsrKysrKysrKystLS0tLS0tLS0KKyBwby9uYi5wbyAgICAgICAgICAgICAgICB8ICAxMTEgKysrKysrKysrKy0tLS0tLS0tLQorIHBvL25lLnBvICAgICAgICAgICAgICAgIHwgIDExMSArKysrKysrKysrLS0tLS0tLS0tCisgcG8vbmwucG8gICAgICAgICAgICAgICAgfCAgMTExICsrKysrKysrKystLS0tLS0tLS0KKyBwby9ubi5wbyAgICAgICAgICAgICAgICB8ICAxMTEgKysrKysrKysrKy0tLS0tLS0tLQorIHBvL3BhLnBvICAgICAgICAgICAgICAgIHwgIDExMSArKysrKysrKysrLS0tLS0tLS0tCisgcG8vcGwucG8gICAgICAgICAgICAgICAgfCAgMTExICsrKysrKysrKystLS0tLS0tLS0KKyBwby9wdC5wbyAgICAgICAgICAgICAgICB8ICAxMTEgKysrKysrKysrKy0tLS0tLS0tLQorIHBvL3B0X0JSLnBvICAgICAgICAgICAgIHwgIDExMSArKysrKysrKysrLS0tLS0tLS0tCisgcG8vcm8ucG8gICAgICAgICAgICAgICAgfCAgMTExICsrKysrKysrKystLS0tLS0tLS0KKyBwby9ydS5wbyAgICAgICAgICAgICAgICB8ICAxMTEgKysrKysrKysrKy0tLS0tLS0tLQorIHBvL3NrLnBvICAgICAgICAgICAgICAgIHwgIDExMSArKysrKysrKysrLS0tLS0tLS0tCisgcG8vc3YucG8gICAgICAgICAgICAgICAgfCAgMTExICsrKysrKysrKystLS0tLS0tLS0KKyBwby90aC5wbyAgICAgICAgICAgICAgICB8ICAxMTEgKysrKysrKysrKy0tLS0tLS0tLQorIHBvL3RsLnBvICAgICAgICAgICAgICAgIHwgIDExMSArKysrKysrKysrLS0tLS0tLS0tCisgcG8vdmkucG8gICAgICAgICAgICAgICAgfCAgMTExICsrKysrKysrKystLS0tLS0tLS0KKyBwby96aF9DTi5wbyAgICAgICAgICAgICB8ICAxMTEgKysrKysrKysrKy0tLS0tLS0tLQorIHBvL3poX1RXLnBvICAgICAgICAgICAgIHwgIDExMSArKysrKysrKysrLS0tLS0tLS0tCisgc2NyaXB0cy9wby9jYS5wbyAgICAgICAgfCAgMTkwICsrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0KKyBzY3JpcHRzL3BvL2RlLnBvICAgICAgICB8ICAxOTEgKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0KKyBzY3JpcHRzL3BvL2Rwa2ctZGV2LnBvdCB8ICAxODYgKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tCisgc2NyaXB0cy9wby9mci5wbyAgICAgICAgfCAgMTkzICsrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tCisgc2NyaXB0cy9wby9wbC5wbyAgICAgICAgfCAgMTkzICsrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tCisgc2NyaXB0cy9wby9ydS5wbyAgICAgICAgfCAgMTkzICsrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tCisgc2NyaXB0cy9wby9zdi5wbyAgICAgICAgfCAgMTkxICsrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tCisgNTggZmlsZXMgY2hhbmdlZCwgNDUyMCBpbnNlcnRpb25zKCspLCA0MjA5IGRlbGV0aW9ucygtKQorCitjb21taXQgMzI3MjMyYzBjNWFiOTMzZWM5YWU5ODE1NTBmMTZmMmQzMjE4Y2RhYQorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBOb3YgMjcgMTQ6MTI6MjQgMjAwOSArMDEwMAorCisgICAgQWRkIG1pc3NpbmcgYnVnIGNsb3N1cmUKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAyICstCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA3MTY5ZjBkM2NmNDYzYmU4NGI3YjU2MDk4NTljOThlNmNiZDhiYTJjCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IE5vdiAyNiAxNDoyMToxMyAyMDA5ICswMTAwCisKKyAgICBEcGtnOjpJUEM6OmZvcmtfYW5kX2V4ZWMoKTogcHV0IG1vZGlmaWVkIGVudmlyb25tZW50IHZhcmlhYmxlcyBpbiBlcnJvciBtZXNzYWdlcworICAgIAorICAgIFRoZSBkZXNjcmlwdGl2ZSBjb21tYW5kLWxpbmUgZ2l2ZW4gdG8gd2FpdF9jaGlsZCgpIG5vdyBhbHNvIGluY2x1ZGVzIHRoZQorICAgIGVudmlyb25tZW50IHZhcmlhYmxlcyB0aGF0IGhhdmUgYmVlbiBzZXQgc2luY2UgdGhleSBtYXkgYWZmZWN0IHRoZQorICAgIGJlaGF2aW91ciBvZiB0aGUgZXhlY3V0ZWQgY29tbWFuZCBhbmQgYXJlIGxpa2VseSBuZWVkZWQgdG8gcmVwcm9kdWNlIHRoZQorICAgIHByb2JsZW0uCisgICAgCisgICAgV2l0aCB0aGlzIGNoYW5nZSwgdGhlIHF1aWx0IGZhaWx1cmVzIHdpdGhpbiBkcGtnLXNvdXJjZSBhcmUgYmV0dGVyCisgICAgaWRlbnRpZmllZDogUVVJTFRfUEFUQ0hFUyBjYW4gYmUgY2hlY2tlZCB0byBrbm93IGlmIGl0IHdhcyB3b3JraW5nCisgICAgb24gdGhlIG1haW4gdHJlZSBvciB0aGUgdGVtcG9yYXJ5IG9uZSBhbmQgUVVJTFRfUEFUQ0hfT1BUUyBpcworICAgIHNlZW4gYnkgdXNlcnMgd2hvIGNhbiB0aGVuIGluZGVwZW5kZW50bHkgcmVwcm9kdWNlIHRoZSBmYWlsdXJlIChhbmQgbm90CisgICAgd29uZGVyIHdoeSB0aGV5IGNhbid0IHJlcHJvZHVjZSBpdCkuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgIHwgICAgMyArKysKKyBzY3JpcHRzL0Rwa2cvSVBDLnBtIHwgICAgOCArKysrKysrLQorIDIgZmlsZXMgY2hhbmdlZCwgMTAgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDJiOTA3YzkwNTkwZDQxN2Q2NTkwZmNjMjhhNmNmNTIxOGMyY2M5ODYKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgTm92IDI0IDIyOjI0OjU2IDIwMDkgKzAxMDAKKworICAgIGRwa2ctc3RhdG92ZXJyaWRlOiBGYWlsIG9uIGNob3duIG9yIGNobW9kIGVycm9ycyB3aGVuIHVzaW5nIC0tdXBkYXRlCisgICAgCisgICAgRmFpbCBpZiBpdCBjYW5ub3QgdXBkYXRlIHRoZSBtb2RlIGFuZCBvd25lciBvZiB0aGUgZmlsZS4gVGhpcyB3b3VsZCBmYWlsCisgICAgbGF0ZXIgb24gd2hlbiBkcGtnIGl0c2VsZiBhcHBsaWVzIHRoZSBvdmVycmlkZXMsIHNvIGJldHRlciB0byBzaWduYWwKKyAgICB0aGlzIGFzIGVhcmxpZXIgYXMgcG9zc2libGUuCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMyArKysKKyBzcmMvc3RhdGNtZC5jICAgIHwgICAgNCArKy0tCisgMiBmaWxlcyBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBiMjM2MWJkOTE4NDcxMzQ5ODRmOGVlNDE4ZDcxMTI1MzBkYzU1ZGZlCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIE5vdiAyNCAxODo1NzoyOCAyMDA5ICswMTAwCisKKyAgICBkcGtnLXN0YXRvdmVycmlkZTogTWFrZSAtLXF1aWV0IGFjdHVhbGx5IGRvIHNvbWV0aGluZworICAgIAorICAgIFF1aWVzY2UgbW9zdCBvZiB0aGUgaW5vcXVvdXMgd2FybmluZyBtZXNzYWdlcy4KKyAgICAKKyAgICBDbG9zZXM6ICM0MDMyMTEKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAyICsrCisgc3JjL3N0YXRjbWQuYyAgICB8ICAgIDkgKysrKystLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCA3IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBlN2E3ZTkxMjAwYWY4YzU3ZWQ4MDMwMDlmZDY2ODUzNjM1OGFjNmVkCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIE5vdiAyNCAxODozNjowNiAyMDA5ICswMTAwCisKKyAgICBkcGtnLXN0YXRvdmVycmlkZTogTW92ZSBhY2Nlc3MgY2hlY2sgb3V0c2lkZSBvZiBzdGF0ZGJfbm9kZV9hcHBseQorICAgIAorICAgIENvbW1hbmQgbGluZSBvcHRpb25zIHNob3VsZCBvbmx5IGJlIGtub3duIGJ5IHRoZSBzdGF0b3ZlcnJpZGVfKgorICAgIGZ1bmN0aW9ucy4KKworIHNyYy9zdGF0Y21kLmMgfCAgIDIzICsrKysrKysrKysrLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAxMSBpbnNlcnRpb25zKCspLCAxMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDk3NzY0ODg4MGQ3OWYxOGNmYTVmZmYwMjAxZjczOTYyMmZmZTE3YjcKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgTm92IDI0IDE4OjI3OjE1IDIwMDkgKzAxMDAKKworICAgIFVzZSBuYW1lZCBpbml0aWFsaXplcnMgaW4gc3RydWN0dXJlcworCisgbGliL2Rwa2cvYnVmZmVyLmMgICAgfCAgICAyICstCisgbGliL2Rwa2cvcGFyc2VoZWxwLmMgfCAgIDEyICsrKysrKy0tLS0tLQorIGxpYi9kcGtnL3RyaWdsaWIuYyAgIHwgICAgNiArKystLS0KKyBzcmMvZW5xdWlyeS5jICAgICAgICB8ICAgMzggKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0KKyA0IGZpbGVzIGNoYW5nZWQsIDM1IGluc2VydGlvbnMoKyksIDIzIGRlbGV0aW9ucygtKQorCitjb21taXQgMTJiNmY5ODhmZjIyMTBjNzAyOGE5YmI3ODJjYWFkZjAwMTUxMDM1YworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBOb3YgMjMgMDQ6MzU6MzIgMjAwOSArMDEwMAorCisgICAgVXNlIGRlc2lnbmF0ZWQgaW5pdGlhbGl6ZXJzIGZvciBuYW1ldmFsdWUgYXJyYXkgZWxlbWVudHMKKyAgICAKKyAgICBUaGlzIHdheSB3ZSBlbnN1cmUgdGhlIG9yZGVyIGluIHRoZSBhcnJheSBieSB0aGUgdmFsdWUgaXRzZWxmLCBhbmQgbWFrZQorICAgIHRoZSBjb2RlIHJlc2lsaWVudCB0byBwb3NzaWJsZSBjaGFuZ2VzIGluIHRoZSBzZXF1ZW5jZSBvZiB0aGUgZW51bXMuCisKKyBsaWIvZHBrZy9wYXJzZWhlbHAuYyB8ICAgNzUgKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBzcmMvaGVscC5jICAgICAgICAgICB8ICAgMTYgKysrKystLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgNDcgaW5zZXJ0aW9ucygrKSwgNDQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAzMWVkZDRlMmEzZTFhZGY3MjNhMWY5Y2FmNzM4YmU3ZDczNjA1YzgzCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIE5vdiAyNCAwMzoyNDowNyAyMDA5ICswMTAwCisKKyAgICBkcGtnOiBSZW5hbWUg4oCYc3RydWN0IGJhZHN0YXRpbmZv4oCZIG1lbWJlciB2YWwgdG8gdmFsdWUKKworIHNyYy9lbnF1aXJ5LmMgfCAgICA0ICsrLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IGUxYjVlOTQzOTVkMTBiZjUzMzAxNTI2OGJlYWZiNjYwNDE5NzYzMmYKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgTm92IDI0IDAxOjM5OjQzIDIwMDkgKzAxMDAKKworICAgIERwa2c6OlNvdXJjZTo6UGFja2FnZTo6VjM6OnF1aWx0OiBjaGVjayBkZWJpYW4vcGF0Y2hlc3ssc2VyaWVzfSBiZWZvcmUgYnVpbGQKKyAgICAKKyAgICBCZWZvcmUgYWNjZXB0aW5nIHRvIGJ1aWxkIGEgMy4wIChxdWlsdCkgc291cmNlIHBhY2thZ2VzLCBlbnN1cmUgdGhhdAorICAgIGRlYmlhbi9wYXRjaGVzIGlzIGEgZGlyZWN0b3J5IChvciBub24tZXhpc3RpbmcpIGFuZCB0aGF0CisgICAgZGViaWFuL3BhdGNoZXMvc2VyaWVzIGlzIGEgZmlsZSAob3Igbm9uLWV4aXN0aW5nKS4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDMgKysrCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtIHwgICAxOCArKysrKysrKysrKysrKysrKysKKyAyIGZpbGVzIGNoYW5nZWQsIDIxIGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA2ZGJmNTAxZmYxYzA5YWEzZWYyZWEwOTI1OWIyMzMyMmZhNWJlYTAyCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIE5vdiAyNCAwMDo1MTo1OSAyMDA5ICswMTAwCisKKyAgICBEcGtnOjpTb3VyY2U6OlBhY2thZ2U6OlYzOjpxdWlsdDogc2V0IFFVSUxUX1BBVENIX09QVFMgdG8gbWltaWNrIEQ6OlM6OlBhdGNoCisgICAgCisgICAgV2hlbiBidWlsZGluZyAiMy4wIChxdWlsdCkiIHNvdXJjZSBwYWNrYWdlcywgdXNlIFFVSUxUX1BBVENIX09QVFM9Ii10IC1GIDAKKyAgICAtTiAtdSAtViBuZXZlciAtZzAiIHNvIHRoYXQgcXVpbHQgaXMgYXMgc3RyaWN0IGFzIGRwa2ctc291cmNlJ3MgaW50ZXJuYWwKKyAgICBpbXBsZW1lbnRhdGlvbiBvZiBxdWlsdCB0aGF0IHJlbGllcyBvbiBEcGtnOjpTb3VyY2U6OlBhdGNoOjphcHBseSgpLgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMyArKysKKyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG0gfCAgICA2ICsrKystLQorIDIgZmlsZXMgY2hhbmdlZCwgNyBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgMTVhZmM4ZTk2N2Q1MDgzY2EzMDYwY2FhMTA0MDVkYWQ4MmY3MDFiOAorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBOb3YgMjMgMjI6MDI6MzMgMjAwOSArMDEwMAorCisgICAgRHBrZzo6Q2hhbmdlbG9nOjpFbnRyeTo6RGViaWFuOiBhZGQgbWlzc2luZyAidXNlIERwa2c6OkdldHRleHQiCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDIgKysKKyBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0VudHJ5L0RlYmlhbi5wbSB8ICAgIDEgKworIDIgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgOTEyMGFlOTJhY2YzNjNmNjBhYWNhMjU4MTU0ZTc3YTg3ZTc2N2ZjOAorQXV0aG9yOiBIZWxnZSBLcmV1dHptYW5uIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KK0RhdGU6ICAgTW9uIE5vdiAyMyAxOTozNDo1OSAyMDA5ICswMTAwCisKKyAgICBVcGRhdGUgR2VybWFuIHRyYW5zbGF0aW9uIG9mIG1hbnVhbCBwYWdlcworICAgIAorICAgIFVwZGF0ZSB0byAxNjU3dC4KKworIG1hbi9wby9kZS5wbyB8ICAgIDcgKysrKysrLQorIDEgZmlsZXMgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgYmFlNzFkZTM1YWNjZTY1Yjc5ODA0NDJhNWU2YzAyMzYxMDQ5MDI5MQorQXV0aG9yOiBIZWxnZSBLcmV1dHptYW5uIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KK0RhdGU6ICAgTW9uIE5vdiAyMyAxOTozMjoxNiAyMDA5ICswMTAwCisKKyAgICBVcGRhdGUgR2VybWFuIHNjcmlwdHMgdHJhbnNsYXRpb24KKyAgICAKKyAgICBVcGRhdGUgdG8gNDg2dC4KKworIHNjcmlwdHMvcG8vZGUucG8gfCAgMTA4ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA1OSBpbnNlcnRpb25zKCspLCA0OSBkZWxldGlvbnMoLSkKKworY29tbWl0IDc3YjA3OGFmNDAyZWI0MTAyNzIyNzExN2M3ZWYyMjNhMzk0MWI0NTcKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gTm92IDIzIDA4OjU4OjI5IDIwMDkgKzAxMDAKKworICAgIERwa2c6OkNvbnRyb2w6Okhhc2g6IGRvY3VtZW50IGhvdyBsZWFkaW5nL3RyYWlsaW5nIHNwYWNlcyBhcmUgdHJlYXRlZAorCisgc2NyaXB0cy9EcGtnL0NvbnRyb2wvSGFzaC5wbSB8ICAgIDMgKysrCisgMSBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBiOGMyYjIwMGMzZGQwNjc4OTg4NTkzYzU4MzliZTNjZDJhZWNmODRhCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIE5vdiAyMiAyMjoyMzo1OSAyMDA5ICswMTAwCisKKyAgICBEcGtnOjpDb250cm9sOjpIYXNoOiBTdHJpcCBsZWFkaW5nIHNwYWNlcyBpbiB0aGUgZmlyc3QgbGluZSBvZiBhIGZpZWxkJ3MgdmFsdWUKKyAgICAKKyAgICBUaGUgZmllbGRzIGluIGEgY29tcGxpYW50IGNvbnRyb2wtc3R5bGUgZmlsZSBhcmUgYWxsb3dlZCB0byBoYXZlIHZhbHVlcworICAgIHN0YXJ0aW5nIHdpdGggYW55IG51bWJlciBvZiBzcGFjZXMuIEJ1dCB0aGF0IG9ubHkgYXBwbGllcyB0byB0aGUgZmlyc3QKKyAgICBsaW5lIG9uIG11bHRpLWxpbmUgZmllbGQgdmFsdWVzLCBzbyBkbyBub3QgZG8gdGhlIHNhbWUgb24gc3Vic2VxdWVudAorICAgIGxpbmVzIGFzIHRob3NlIGFyZSBoYW5kbGVkIGRpZmZlcmVudGx5LgorICAgIAorICAgIFJlZ3Jlc3Npb24gaW50cm9kdWNlZCBpbiBjb21taXQgN2Q4ZDE5MzMzMjQ3OGRlODJlMjBlZDViNDkwNTMzNzg4MDFkMTYwZi4KKyAgICAKKyAgICBDbG9zZXM6ICM1NTc1NDcKKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgICAgfCAgICAyICsrCisgc2NyaXB0cy9EcGtnL0NvbnRyb2wvSGFzaC5wbSB8ICAgIDIgKy0KKyBzY3JpcHRzL3QvNzAwX0Rwa2dfQ29udHJvbC50IHwgICAgMiArLQorIDMgZmlsZXMgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgNmQ3ODRlYmNkMTA4Y2RiMGFmZjNlY2IzYTY5MzRlMDMwNjdjZGQ3MgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBOb3YgMjIgMjA6NDg6MzQgMjAwOSArMDEwMAorCisgICAgUmVmZXIgdG8g4oCcaGFsZiBjb25maWd1cmVk4oCdIGluc3RlYWQgb2Yg4oCcZmFpbGVkIGNvbmZpZ+KAnQorICAgIAorICAgIFVzZSBpdCBpbiDCq2Rwa2ctcXVlcnkgLWzCuyBoZWFkZXIgYW5kIGRzZWxlY3QgcGFja2FnZSBzdGF0dXMgcHJpbnRpbmcgZm9yCisgICAgY29uc2lzdGVuY3kgd2l0aCB0aGUgcmVzdCBvZiB0aGUgb3VwdXQuIFRoaXMgc2VlbXMgdG8gaGF2ZSBiZWVuIGEgc291cmNlCisgICAgb2YgY29uZnVzaW9uIGluIHRoZSBwYXN0LCBzbyB3ZSdsbCB0cnkgdG8gdXNlIHRoaXMgbm9tZW5jbGF0dXJlIHRvIHJlZmVyCisgICAgdG8gdGhpcyBwYWNrYWdlIHN0YXR1cy4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICB8ICAgIDIgKysKKyBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2MgfCAgICAyICstCisgc3JjL3F1ZXJ5LmMgICAgICAgICAgIHwgICAgMiArLQorIDMgZmlsZXMgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgYTc5NjAyMzIyMjYxMGY1OWIxMjdlN2IwNGQ5ODAwYzEyNjk0ZTFkNworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBOb3YgMjIgMTk6MjQ6MzUgMjAwOSArMDEwMAorCisgICAgdS1hOiBJbXByb3ZlIC0tZGlzcGxheSBvdXRwdXQKKyAgICAKKyAgICBVc2UgdHdvIGxlYWRpbmcgc3BhY2VzIGZvciBjdXJyZW50IGxpbmsgYW5kIHNsYXZlIGluZm9ybWF0aW9uLiBVc2UKKyAgICBzaW5nbGUgcXVvdGVzIGZvciBib3RoIOKAnGJlc3TigJ0gYW5kIHRoZSBhbHRlcm5hdGl2ZSBpdCdzIHBvaW50aW5nIHRvLgorICAgIAorICAgIENsb3NlczogIzU0OTE2NworCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICAgIHwgICAgMyArKysKKyBzY3JpcHRzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMucGwgfCAgICA4ICsrKystLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCA3IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA5ZDc4MmNkM2JmYTU0MmFkNWMwNTM2MjcwZTk3MjUzOWE1YTYxMTk4CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIE5vdiAyMiAxNzo0Nzo0NiAyMDA5ICswMTAwCisKKyAgICBTbWFsbCBjaGFuZ2Vsb2cgcG9saWNlIHJhaWQKKyAgICAKKyAgICBSZW1vdmUgYW4gYW5ub3lpbmcgc3BhY2UgdGhhdCB3YXMgbWFraW5nIGRjaCBtaXNiZWhhdmUuCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgNCArKy0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBiOTA5ZGM0MTllYzY2OGQ5ODM2NWQ4MzkyZmUxMTRkZDE5ZjI2ZGZhCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIE5vdiAyMiAxNzo0NTozMCAyMDA5ICswMTAwCisKKyAgICBsaWJkcGtnOiBJbXByb3ZlIGFuZCBtYXJrIG1vcmUgbWVzc2FnZXMgZm9yIHRyYW5zbGF0aW9uIGluIHdyaXRlZGIoKQorICAgIAorICAgIFRoaXMgc2hvdWxkIG1ha2UgdHJhbnNsYXRvcnMgbGlmZXMgZWFzaWVyLgorICAgIAorICAgIENsb3NlczogIzQwODUyNQorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDIgKysKKyBsaWIvZHBrZy9kdW1wLmMgIHwgICAyMiArKysrKysrKysrKystLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAxNCBpbnNlcnRpb25zKCspLCAxMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDdmNjRiYzY1NDQwNjFiYTUzNDU0MWE2NmFlNGRhYjhjODhhOTZhMTQKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gTm92IDIyIDE2OjM0OjExIDIwMDkgKzAxMDAKKworICAgIGRwa2ctc291cmNlOiBmYWlsIGlmIHNldmVyYWwgb3JpZy50YXIgZmlsZXMgYXJlIGF2YWlsYWJsZQorICAgIAorICAgIFRoaXMgY29uY2VybnMgZm9ybWF0cyAyLjAgYW5kIDMuMCAocXVpbHQpIHdoZXJlIHRoZSB1cHN0cmVhbSB0YXJiYWxsIGNhbgorICAgIGJlIGF2YWlsYWJsZSB3aXRoIGRpZmZlcmVudCBjb21wcmVzc2lvbiBzY2hlbWVzLiBXZSBuZWVkIHByZWNpc2VseSBvbmUKKyAgICBmaWxlIG90aGVyd2lzZSBpdCBkb2Vzbid0IGtub3cgd2hpY2ggb25lIHNob3VsZCBiZSB1c2VkIGFuZCBtaWdodCBwaWNrIHRoZQorICAgIHdyb25nIG9uZS4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgICAgICAgICB8ICAgIDMgKysrCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtIHwgICAgNCArKysrCisgMiBmaWxlcyBjaGFuZ2VkLCA3IGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBkM2NjMDYwNTIzN2I2MTVlMjk0YzUwNjBiOTExYmY2YjFiODgzNzMxCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIE5vdiAyMiAxNTowMjo1OSAyMDA5ICswMTAwCisKKyAgICBkcGtnLXNvdXJjZTogYWRkICIzLjAgKHF1aWx0KSIgaW4gdGhlIChmYWxsYmFjaykgbGlzdCBvZiBmb3JtYXRzIHRvIHRyeQorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICB8ICAgIDIgKysKKyBtYW4vZHBrZy1zb3VyY2UuMSAgICAgIHwgICAgNSArKystLQorIHNjcmlwdHMvZHBrZy1zb3VyY2UucGwgfCAgICAyICstCisgMyBmaWxlcyBjaGFuZ2VkLCA2IGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA0YjBhOTMzZjc1ODg3NTYzZDFjMWJjMjc4MzU5ZDA5MWE4MDllNTI1CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIE5vdiAyMiAwNDoyMzoyMyAyMDA5ICswMTAwCisKKyAgICB1LWE6IFZlcmlmeSB0aGF0IHRoZSBhbHRlcm5hdGl2ZSB1c2VkIGluIC0tc2V0IGhhcyBiZWVuIHJlZ2lzdGVyZWQKKyAgICAKKyAgICBHaXZlIGEgcHJvcGVyIGVycm9yIG1lc3NhZ2UgaW5zdGVhZCBvZiBmYWlsaW5nIHdpdGggYW4gdW5kZWZpbmVkCisgICAgdmFsdWUgd2hlbiBjYWxsaW5nIHRoZSBzbGF2ZSBtZXRob2QuIEFkZGl0aW9uYWxseSB2ZXJpZnkgdGhlIGFsdGVybmF0aXZlCisgICAgYmVmb3JlIHN3aXRjaGluZyB0byBtYW51YWwgbW9kZSwgYXZvaWRpbmcgdGhpcyB3YXkgdW5uZWVkZWQgbG9nIG1lc3NhZ2VzCisgICAgaW4gY2FzZSBvZiBlcnJvci4KKyAgICAKKyAgICBDbG9zZXM6ICM1NTQxMzYKKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgICAgICB8ICAgIDYgKysrKysrCisgc2NyaXB0cy91cGRhdGUtYWx0ZXJuYXRpdmVzLnBsIHwgICAgNyArKysrKystCisgMiBmaWxlcyBjaGFuZ2VkLCAxMiBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgMDk5MTgwNGViMzZkM2NlZDMwOWM1ZDU0MjgzMzM2NWRlYzE4ZTkzNAorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBOb3YgMjEgMTU6MDA6MzAgMjAwOSArMDEwMAorCisgICAgZHBrZy1zY2FucGFja2FnZXM6IGF2b2lkIElPOjpTdHJpbmcgdXNhZ2UKKyAgICAKKyAgICBJbnN0ZWFkIHdlIHVzZSBEcGtnOjpJUEMgdG8gZ2V0IGEgcGlwZSBmaWxlIGRlc2NyaXB0b3Igd2hlcmUgd2UgY2FuCisgICAgcmVhZCB0aGUgb3V0cHV0IG9mIGRwa2ctZGViIC1JLgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICB8ICAgIDcgKysrKysrKworIHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGwgfCAgIDIwICsrKysrKysrLS0tLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAxNSBpbnNlcnRpb25zKCspLCAxMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDQ5ZWFjMjgxNTYwNmNhYTNkNmU0ODI4MGMxNDQwMjU0NzcyMzRlODgKK0F1dGhvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitEYXRlOiAgIFNhdCBOb3YgMjEgMTI6MDg6MjkgMjAwOSArMDEwMAorCisgICAgVXBkYXRlIEdlcm1hbiB0cmFuc2xhdGlvbiBvZiBtYW51YWwgcGFnZXMKKyAgICAKKyAgICBVcGRhdGUgdG8gMTY1NnQuCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMyArLQorIG1hbi9wby9kZS5wbyAgICAgfCAgMTAxICsrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCA0MCBpbnNlcnRpb25zKCspLCA2NCBkZWxldGlvbnMoLSkKKworY29tbWl0IDM3NjM4ZjJjNjUzNWM2YzZlYWMxYTg4MzY4Zjc5YWUzNTYyOGZkNjUKK0F1dGhvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitEYXRlOiAgIFNhdCBOb3YgMjEgMTE6NTU6MDcgMjAwOSArMDEwMAorCisgICAgVXBkYXRlIEdlcm1hbiBzY3JpcHRzIHRyYW5zbGF0aW9uCisgICAgCisgICAgVXBkYXRlIHRvIDQ4M3QuCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMyArKy0KKyBzY3JpcHRzL3BvL2RlLnBvIHwgICAxMCArKysrKy0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCA3IGluc2VydGlvbnMoKyksIDYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBhN2ZkYTVlYWQ1ZTAwZjVhNWI1ZmVlNGIyZDY3OTZkNzg5MzFkMDAyCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IE5vdiAyMSAwNTowMzowMCAyMDA5ICswMTAwCisKKyAgICBkcGtnLWNoZWNrYnVpbGRkZXBzOiBTcGxpdCB1c2FnZSBzdHJpbmcgaW4gc2V2ZXJhbCB0cmFuc2xhdGFibGUgc3RyaW5ncworCisgc2NyaXB0cy9kcGtnLWNoZWNrYnVpbGRkZXBzLnBsIHwgICAxMyArKysrKysrLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA3IGluc2VydGlvbnMoKyksIDYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA0NjdiZmE3YzJlZmVmM2VhM2QzZjc1MDYwYjJkODY3ZGQ5NGE2ZmFiCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IE5vdiAyMSAwNDo0MTowOCAyMDA5ICswMTAwCisKKyAgICBkcGtnLWNoZWNrYnVpbGRkZXBzOiBVc2UgYW4gYW5vbnltb3VzIHN1YnJvdXRpbmUgZm9yIC0taGVscAorCisgc2NyaXB0cy9kcGtnLWNoZWNrYnVpbGRkZXBzLnBsIHwgICAgNyArLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyNGQ3Zjc5MTM1MmMyNjJiYWU4MzU5MjY1N2M1M2RjYzk2YTdjM2M0CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IE5vdiAyMSAwNDozODo0NyAyMDA5ICswMTAwCisKKyAgICBkcGtnLWNoZWNrYnVpbGRkZXBzOiBBZGQgYSAtLXZlcnNpb24gb3B0aW9uCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICAgfCAgICAxICsKKyBtYW4vZHBrZy1jaGVja2J1aWxkZGVwcy4xICAgICAgfCAgICAzICsrKworIHNjcmlwdHMvZHBrZy1jaGVja2J1aWxkZGVwcy5wbCB8ICAgIDggKysrKysrKysKKyAzIGZpbGVzIGNoYW5nZWQsIDEyIGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBjMWZjNTYxMmU0OTkxMzE2M2VkOTQyOTI2ODI4ZjgyOTEzM2FjNGMxCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IE5vdiAyMSAwNDozMDo1NyAyMDA5ICswMTAwCisKKyAgICBkcGtnLWNoZWNrYnVpbGRkZXBzOiBSZWNvZ25pemUgLS1oZWxwIGluIGFkZGl0aW9uIHRvIC1oCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICAgfCAgICAxICsKKyBtYW4vZHBrZy1jaGVja2J1aWxkZGVwcy4xICAgICAgfCAgICA0ICsrLS0KKyBzY3JpcHRzL2Rwa2ctY2hlY2tidWlsZGRlcHMucGwgfCAgICA0ICsrLS0KKyAzIGZpbGVzIGNoYW5nZWQsIDUgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKKworY29tbWl0IGM4YjNjZDY0MmZmZGViMjQxYzFjMDk2MTUwNmIxOGQ1ZTFmOGM0OGMKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgTm92IDIxIDA0OjI3OjI2IDIwMDkgKzAxMDAKKworICAgIGRwa2ctY2hlY2tidWlsZGRlcHM6IFJlbW92ZSB1bm5lZWRlZCBkYXNoZXMgaW4gR2V0T3B0aW9ucyBhcmd1bWVudHMKKworIHNjcmlwdHMvZHBrZy1jaGVja2J1aWxkZGVwcy5wbCB8ICAgMTAgKysrKystLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCA1IGRlbGV0aW9ucygtKQorCitjb21taXQgYzdkMjMyM2I2NjQ3NjcyMGMwY2VlMjY5MDViNDY0MjU5M2Q4ZjAwOAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBOb3YgMjEgMDQ6MjY6MTEgMjAwOSArMDEwMAorCisgICAgSGFuZGxlIGFyZ3VtZW50IHBhcnNpbmcgY29uc2lzdGVudGx5IGluIGFsbCB0b29scworCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICAgIHwgICAgNCArKysrCisgc2NyaXB0cy9kcGtnLWNoZWNrYnVpbGRkZXBzLnBsIHwgICAgMyArKy0KKyBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsICAgfCAgICA0ICsrLS0KKyAzIGZpbGVzIGNoYW5nZWQsIDggaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworY29tbWl0IDY0NTYyMzZiYzMxYzc2MmJmMDQzY2FmYTg2Yjk5MWNlZTQ2NWM3MzQKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgTm92IDIxIDA0OjA4OjI4IDIwMDkgKzAxMDAKKworICAgIGRwa2ctc2NhbnNvdXJjZXM6IFVwZGF0ZSBHZXRvcHQ6Okxvbmcgc2V0dXAgY29kZQorICAgIAorICAgIENvbmZpZ3VyZSBpdCBhdCB1c2UgdGltZS4gVXNlIHBvc2l4X2RlZmF1bHQgaW5zdGVhZCBvZiBkZWZpbmluZworICAgIFBPU0lYTFlfQ09SUkVDVCBpbiB0aGUgZW52aXJvbm1lbnQgYW5kIHNldHRpbmcgdGhlIG9wdGlvbnMgdGhhdAorICAgIHdvdWxkIGJlIGVuYWJsZWQgYnkgZGVmYXVsdCBvbiBQT1NJWC4gQ2FsbCBHZXRPcHRpb25zIGluIG1haW4KKyAgICBpbnN0ZWFkIG9mIGNhbGxpbmcgaW5pdC4KKworIHNjcmlwdHMvZHBrZy1zY2Fuc291cmNlcy5wbCB8ICAgMzIgKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMjkgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA2ZjcyMWMxZDA2NGMzMzUzMDdkNGU1NjA5OGU0YzgxY2I1NmRiODViCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IE5vdiAyMSAwMzoxODoxMCAyMDA5ICswMTAwCisKKyAgICBkcGtnLXNjYW5zb3VyY2VzOiBVcGRhdGUgY29tbWVudHMKKyAgICAKKyAgICBSZW1vdmUgYW4gb2Jzb2xldGUgb25lLiBBbmQgbW92ZSBhbm90aGVyIG9uZSBjbG9zZXIgdG8gdGhlIHJlbGV2YW50CisgICAgY29kZS4KKworIHNjcmlwdHMvZHBrZy1zY2Fuc291cmNlcy5wbCB8ICAgIDkgKystLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDcgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA5MjMwM2Y2Y2JhMWFkMTgwZDcwMjZhNjBiYWI5NTk2YjhjMDU4ZmQ3CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IE5vdiAyMSAwMzoxNDoyMyAyMDA5ICswMTAwCisKKyAgICBVc2UgYW5nbGUgYnJhY2tldHMgdG8gbWFyayBpL28gZnJvbSBkZXNjcmlwdG9ycworICAgIAorICAgIEluIHRoaXMgY2FzZSB1c2Ug4oCcPHN0YW5kYXJkIG91dHB1dD7igJ0gYW5kIOKAnDxzdGFuZGFyZCBpbnB1dD7igJ0sIHRvIG1ha2UKKyAgICBpdCBjbGVhciB0aGF0IGl0J3Mgbm90IGEgZmlsZSB3aXRoIHN1Y2ggbmFtZSwgaW4gdGhlIHNhbWUgd2F5IHdlIGRvIGluCisgICAgdGhlIHJlc2V0IG9mIHRoZSBjb2RlIGJhc2UuCisKKyBzY3JpcHRzL0Rwa2cvQ29udHJvbC9JbmZvLnBtIHwgICAgMiArLQorIHNjcmlwdHMvY2hhbmdlbG9nL2RlYmlhbi5wbCAgfCAgICAyICstCisgc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGwgICB8ICAgIDIgKy0KKyAzIGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworY29tbWl0IGE5OTAxN2M1NWNmZDY5MTM1MTEwYjQ4ZmI3NzIwM2Y0MTMwNzcyMjgKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgTm92IDIwIDAzOjE0OjI5IDIwMDkgKzAxMDAKKworICAgIGJ1aWxkOiBEbyBub3Qgc2hpcCBvYmpkdW1wLnRhZ3MtPGFyY2g+IGZpbGVzIGluIHRoZSByZXBvCisgICAgCisgICAgVGhpcyB3YXMgY2F1c2luZyBkaWZmIHByb2JsZW1zIGFzIHRoZSBmaWxlIHdhcyBjaGFuZ2luZyBkZXBlbmRpbmcgb24gdGhlCisgICAgYnVpbGQgc3lzdGVtLiBOb3cgaXQgc2hvdWxkIGJlIHN0YWJsZSBhcyBpdCdzIGFsd2F5cyBnZW5lcmF0ZWQgYXQgY2hlY2sKKyAgICB0aW1lLgorCisgc2NyaXB0cy9NYWtlZmlsZS5hbSAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDExICsrLS0KKyBzY3JpcHRzL3QvMjAwX0Rwa2dfU2hsaWJzLnQgICAgICAgICAgICAgICAgICB8ICAgIDcgKystCisgc2NyaXB0cy90LzIwMF9EcGtnX1NobGlicy9vYmpkdW1wLnRhZ3MtYW1kNjQgfCAgIDcyIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBzY3JpcHRzL3QvMjAwX0Rwa2dfU2hsaWJzL29iamR1bXAudGFncy1pMzg2ICB8ICAgNzMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyA0IGZpbGVzIGNoYW5nZWQsIDExIGluc2VydGlvbnMoKyksIDE1MiBkZWxldGlvbnMoLSkKKworY29tbWl0IDc5MWVjMjg2MDI4ODk3OWVkMWUzNGQ3Yjk2M2MxOThiNjE5NzNhMzMKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgTm92IDIwIDA0OjE0OjM0IDIwMDkgKzAxMDAKKworICAgIE5hbWVzcGFjZSB0ZW1wb3JhcnkgZGlyZWN0b3JpZXMgZm9yIHRlc3QgY2FzZXMKKyAgICAKKyAgICBXZSBhdm9pZCBhbnkgbmFtZSBjbGFzaGVzIGR1cmluZyB0aGUgdGVzdCBzdWl0ZSBydW4uIEFuZCB0aGUgaGllcmFyY2h5CisgICAgZ2V0cyBtb3JlIGNsZWFyIHdoZW4gZGVidWdnaW5nIGluIGNhc2UgYW55IHByb2JsZW0gYXJpc2VzLgorCisgc2NyaXB0cy90LzUwMF9EcGtnX1BhdGgudCAgICAgICAgICAgfCAgICAzICsrLQorIHNjcmlwdHMvdC85MDBfdXBkYXRlX2FsdGVybmF0aXZlcy50IHwgICAgMiArLQorIDIgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgYmM0OThiOGFkMWU2ZjFhYTUzMjBjMzE4MWYyYWE1OWQzYmU1M2U1NAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBOb3YgMjAgMDQ6MDM6MzYgMjAwOSArMDEwMAorCisgICAgUmVmYWN0b3IgdGVtcG9yYXJ5IHRlc3QgY2FzZXMgcGF0aCB0byBhIHRtcGRpciB2YXJpYWJsZQorICAgIAorICAgIFRoaXMgYWxsb3dzIHRvIGNoYW5nZSBpdCBpbiBhIHNpbmdsZSBwbGFjZS4KKworIHNjcmlwdHMvTWFrZWZpbGUuYW0gICAgICAgICAgICAgICAgIHwgICAgNiArKystCisgc2NyaXB0cy90LzUwMF9EcGtnX1BhdGgudCAgICAgICAgICAgfCAgIDUwICsrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0KKyBzY3JpcHRzL3QvOTAwX3VwZGF0ZV9hbHRlcm5hdGl2ZXMudCB8ICAgIDkgKysrLS0tCisgMyBmaWxlcyBjaGFuZ2VkLCAzNSBpbnNlcnRpb25zKCspLCAzMCBkZWxldGlvbnMoLSkKKworY29tbWl0IGZkNmQxZGQ4MWYxMTdjMmJkMjIwZDcyZDM4M2U5MGMzYTdkZGQyNDMKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgTm92IDE5IDIxOjQyOjQwIDIwMDkgKzAxMDAKKworICAgIGJ1aWxkOiBTcGxpdCB0ZXN0X2Nhc2VzIGFuZCB0ZXN0X2RhdGEgZnJvbSBFWFRSQV9ESVNUCisgICAgCisgICAgQXZvaWQgZHVwbGljYXRlZCBsaXN0cyBvZiBmaWxlcy4gQWxzbyB0aGlzIHdheSB3ZSBoYXZlIHByb3BlcgorICAgIGRlcGRlbmRlbmNpZXMgaW4gdGhlIGNoZWNrIHRhcmdldCBmb3IgdGVzdF9kYXRhIGZpbGVzLgorCisgc2NyaXB0cy9NYWtlZmlsZS5hbSB8ICAgODggKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDQ3IGluc2VydGlvbnMoKyksIDQxIGRlbGV0aW9ucygtKQorCitjb21taXQgMmQ2NTkzZTdiNDk2ODg4YjViMzY3Y2ZmOGJmNzkzNmM1YThkNzdkZAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBOb3YgMTkgMDU6NTE6MzggMjAwOSArMDEwMAorCisgICAgYnVpbGQ6IENsZWFuIHVwIHBlcmwgdGVzdCBzdWl0ZSBpbnZva2F0aW9uCisgICAgCisgICAgV3JhcCBpdCBpbnRvIHNldmVyYWwgbGluZXMuIFJlbW92ZSB1bm5lZWRlZCBxdW90ZXMgYXJvdW5kIHNvbWUKKyAgICBhcmd1bWVudHMuIFJlZ3JvdXAgZW52aXJvbm1lbnQgdmFyaWFibGVzIHNldHRpbmdzLgorCisgc2NyaXB0cy9NYWtlZmlsZS5hbSB8ICAgIDcgKysrKysrLQorIDEgZmlsZXMgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgNmQ3YzgwYmFmYWQ1ZjA5MGMxZGE4ZThjZTBlNTczMWQ5OWRjMTNiNQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBOb3YgMTkgMDU6NDY6NDcgMjAwOSArMDEwMAorCisgICAgYnVpbGQ6IERvIG5vdCBjb3B5IDIwMF9EcGtnX1NobGlicyBkYXRhIGZpbGVzIHRvIHQudG1wCisgICAgCisgICAgVGhlIGNvcHkgd2FzIGRvbmUgdG8gbWFrZSB0aGUgcmVsYXRpdmUgcGF0aHMgaW5zaWRlIHRoZSBsZC5zby5jb25mCisgICAgZnJhZ21lbnRzIHdvcmsgZXZlbiBpbiBvdXQgb2YgdHJlZSBidWlsZHMuIFdlIG5vdyBzd2l0Y2ggdGhlIGN1cnJlbnQKKyAgICBkaXJlY3RvcnkgdG8gJHNyY2RpciBpbiAyMDBfRHBrZ19TaGxpYnMudCB3aGVuIGxvYWRpbmcgdGhlIGZyYWdtZW50cworICAgIGFuZCB0aGVuIGdvIGJhY2suCisKKyBzY3JpcHRzL01ha2VmaWxlLmFtICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDMgLS0tCisgc2NyaXB0cy90LzIwMF9EcGtnX1NobGlicy50ICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA5ICsrKysrKysrLQorIHNjcmlwdHMvdC8yMDBfRHBrZ19TaGxpYnMvbGQuc28uY29uZiAgICAgICAgICAgICAgIHwgICAgMiArLQorIC4uLi8yMDBfRHBrZ19TaGxpYnMvbGQuc28uY29uZi5kL2luZl9yZWN1cnNlLmNvbmYgIHwgICAgMiArLQorIC4uLi90LzIwMF9EcGtnX1NobGlicy9sZC5zby5jb25mLmQvcmVjdXJzaXZlLmNvbmYgIHwgICAgMiArLQorIDUgZmlsZXMgY2hhbmdlZCwgMTEgaW5zZXJ0aW9ucygrKSwgNyBkZWxldGlvbnMoLSkKKworY29tbWl0IDQ4YTVlZjk1ZmViZWRmNDExZTY3YTY4Nzg4ZGU1MDQ4YjlkY2Y4ZjIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgTm92IDE5IDA1OjQxOjU1IDIwMDkgKzAxMDAKKworICAgIGJ1aWxkOiBNZXJnZSB0aGUgbWtkaXJfdF90bXAgdGFyZ2V0IGludG8gdGhlIGNoZWNrIHRhcmdldAorCisgc2NyaXB0cy9NYWtlZmlsZS5hbSB8ICAgIDQgKy0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQorCitjb21taXQgMDJmM2QwYmI2ODZkMzg0YTJlYmU4NzgwODRjYWM5NDAwOGZhNTE2ZgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBOb3YgMTkgMDU6MTM6MjUgMjAwOSArMDEwMAorCisgICAgVXNlIG5ldyBkYXRhZGlyIHZhcmlhYmxlIGluc3RlYWQgb2YgcmVkZWZpbmluZyBzcmNkaXIKKworIHNjcmlwdHMvdC8yMDBfRHBrZ19TaGxpYnMudCAgICB8ICAgNTIgKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLQorIHNjcmlwdHMvdC82MDBfRHBrZ19DaGFuZ2Vsb2cudCB8ICAgMTIgKysrKy0tLS0KKyBzY3JpcHRzL3QvNzAwX0Rwa2dfQ29udHJvbC50ICAgfCAgICA4ICsrKy0tLQorIHNjcmlwdHMvdC83NTBfRHBrZ19TdWJzdHZhcnMudCB8ICAgIDQgKy0KKyA0IGZpbGVzIGNoYW5nZWQsIDM4IGluc2VydGlvbnMoKyksIDM4IGRlbGV0aW9ucygtKQorCitjb21taXQgNWVlYjY4N2UwMmU5YjM4OWU3YjJkMWQ1MjkwNGJiMjJkNmI2ODBkNAorTWVyZ2U6IGZkNDAyNGQgYTcxMjI4ZAorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBOb3YgMTggMTM6MjM6NTEgMjAwOSArMDEwMAorCisgICAgTWVyZ2UgY29tbWl0ICcxLjE1LjUuMicKKworY29tbWl0IGZkNDAyNGQwNDQzMTY0NjExZmUyZjBkN2VmNDhiYTY1MmViOTk0NjQKK0F1dGhvcjogUGV0ZXIgS3JlZnRpbmcgPHBldGVya0BkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgTm92IDE4IDEzOjAyOjU1IDIwMDkgKzAxMDAKKworICAgIFVwZGF0ZSBjaGFuZ2Vsb2cgZm9yIHByZXZpb3VzIGNvbW1pdC4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICA2ICsrKysrKworIDEgZmlsZXMgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgYTFiYmQwZWIyNDhjNjkyMTJmZWI4NjEwMjRmYTkzZDViMTc3Zjk5ZgorQXV0aG9yOiBQZXRlciBLcmVmdGluZyA8cGV0ZXJrQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBOb3YgMTggMTI6NTc6MzcgMjAwOSArMDEwMAorCisgICAgVXBkYXRlIFN3ZWRpc2ggdHJhbnNsYXRpb24uCisgICAgCisgICAgbWFuL3BvL3N2LnBvOiAxNjU2dDBmMHUuCisgICAgc2NyaXB0cy9wby9zdi5wbzogNDgzdDBmMHUuCisKKyBtYW4vcG8vc3YucG8gICAgIHwgICA3MiArKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHNjcmlwdHMvcG8vc3YucG8gfCAgIDEwICsrKy0tLQorIDIgZmlsZXMgY2hhbmdlZCwgNDIgaW5zZXJ0aW9ucygrKSwgNDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBhNzEyMjhkMWY2ODI1NjZiYTRkZmJmZDU5ZjkyYmI1ZDNmMmRkMTBkCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIE5vdiAxOCAxMTo1NTo1MiAyMDA5ICswMTAwCisKKyAgICBSZWxlYXNlIDEuMTUuNS4yCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgNCArKy0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBhN2FiZDE4Mjk5YmRlYjZlNjMyNzc0YjNkZjc2MzZhOGM0YWFlYjU4CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIE5vdiAxOCAxMToyMDo1OCAyMDA5ICswMTAwCisKKyAgICBEcGtnOjpDb250cm9sOjpGaWVsZHMsIERwa2c6OlZlcnNpb246IGF2b2lkIHRoZSAiXyIgcHJvdG90eXBlCisgICAgCisgICAgS2VlcCBjb21wYXRpYmlsaXR5IHdpdGggcGVybCA1LjggYnkgYXZvaWRpbmcgdGhlICJfIiBwcm90b3R5cGUgd2hpY2gKKyAgICBoYXMgYmVlbiBpbnRyb2R1Y2VkIGluIHBlcmwgNS4xMC4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgICAgICB8ICAgIDEgKworIHNjcmlwdHMvRHBrZy9Db250cm9sL0ZpZWxkcy5wbSB8ICAgIDMgKystCisgc2NyaXB0cy9EcGtnL1ZlcnNpb24ucG0gICAgICAgIHwgICAgNiArKystLS0KKyAzIGZpbGVzIGNoYW5nZWQsIDYgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKKworY29tbWl0IDJkNzQxNzNmNDE5MDlmZDQzMDYxZmI3ZDgxYTM3OTVhNmZlZmM1OWQKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgTm92IDE4IDEwOjU4OjA3IDIwMDkgKzAxMDAKKworICAgIGRwa2ctc2hsaWJkZXBzOiBhbHdheXMgdXNlIERwa2c6OlZlcnNpb24KKyAgICAKKyAgICBJbnN0ZWFkIG9mIG1peGluZyB1c3VhbCBzY2FsYXJzIHdpdGggRHBrZzo6VmVyc2lvbiBvYmplY3RzLCBhbHdheXMgdXNlCisgICAgRHBrZzo6VmVyc2lvbiBvYmplY3RzIHdoZW4gc3RvcmluZyBhIHZlcnNpb24uCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgIHwgICAgMiArKworIHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGwgfCAgICA3ICsrKystLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDYgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworY29tbWl0IDAwMjgwN2FmODAwOTBiNjBiZjU0YzE5YzRkYzZjZDFlYWRmMmEwZDYKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgTm92IDE4IDEwOjM4OjExIDIwMDkgKzAxMDAKKworICAgIERwa2c6OlZlcnNpb246IGFjY2VwdCBpbnZhbGlkIHZlcnNpb25zIGJ5IGRlZmF1bHQKKyAgICAKKyAgICBBY2NlcHRpbmcgaW52YWxpZCB2ZXJzaW9uIGlzIHRoZSByaWdodCBkZWZhdWx0IGJlaGF2aW91ciBiZWNhdXNlCisgICAgeW91IG9mdGVuIGhhdmUgdG8gbWl4IGVtcHR5IHN0cmluZ3MgYW5kIHZlcnNpb25zIGFuZCBpdCdzIG5pY2UKKyAgICB0byBub3QgaGF2ZSB0byBzcGVjaWFsIGNhc2UgdG9vIG11Y2guCisgICAgCisgICAgSW4gcGFydGljdWxhciwgd2Ugc2hvdWxkIGJlIGFibGUgdG8gZG8gIiR2b2JqIGVxICcnIiB3aXRob3V0IGVuY291bnRlcmluZworICAgIGFuIGVycm9yLiBFbnN1cmUgdGhpcyBiZWhhdmlvdXIgaXMga2VwdCBieSBhZGRpbmcgcHJvcGVyIG5vbi1yZWdyZXNzaW9uCisgICAgdGVzdHMuCisgICAgCisgICAgQWxzbyBlbmFibGUgZmFsbGJhY2sgYmVoYXZpb3VyIGZvciBhbGwgb3BlcmF0b3JzIHdoaWNoIGhhdmUgbm90IGJlZW4KKyAgICBleHBsaWNpdGVseSBpbXBsZW1lbnRlZC4gVGhlIGJvb2xlYW4gb3BlcmF0b3IgcmV0dXJucyB0cnVlIGlmIHRoZQorICAgIHZlcnNpb24gaXMgdmFsaWQsIGZhbHNlIG90aGVyd2lzZS4KKyAgICAKKyAgICBVcGRhdGUgdGhlIHJlc3Qgb2YgdGhlIGNvZGUgdGhhdCB3YXMgZG9pbmcgIkRwa2c6OlZlcnNpb24tPm5ldygkdikgfHwgJHYiCisgICAgcHJlY2lzZWx5IHRvIGJlIGFibGUgdG8gc3RvcmUgYSB2ZXJzaW9uIGV2ZW4gaWYgaXQncyBpbnZhbGlkLgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICAgICAgICAgICAgfCAgICA4ICsrKysrKysKKyBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0VudHJ5L0RlYmlhbi5wbSB8ICAgIDIgKy0KKyBzY3JpcHRzL0Rwa2cvRGVwcy5wbSAgICAgICAgICAgICAgICAgICB8ICAgIDIgKy0KKyBzY3JpcHRzL0Rwa2cvVmVyc2lvbi5wbSAgICAgICAgICAgICAgICB8ICAgMzYgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLQorIHNjcmlwdHMvdC8xMDBfRHBrZ19WZXJzaW9uLnQgICAgICAgICAgIHwgICAxOSArKysrKysrKysrKysrKy0tCisgNSBmaWxlcyBjaGFuZ2VkLCA1NCBpbnNlcnRpb25zKCspLCAxMyBkZWxldGlvbnMoLSkKKworY29tbWl0IDQxNjMwYTY2ODhhMTgyZmVhOTJiMzdkNTM2Y2Y3NDM2NThkNmVjMDcKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgTm92IDE3IDE3OjI2OjMwIDIwMDkgKzAxMDAKKworICAgIGRlYmlhbi9jb250cm9sOiBhZGQgdGhlIGFjY2VudCBvbiBteSBmaXJzdCBuYW1lCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgNyArKysrKysrCisgZGViaWFuL2NvbnRyb2wgICB8ICAgIDIgKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDggaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGRjNTdhNzcwMTkwMmNmYjQ4OGU1YjJkOGI4NTZjMGY3M2YwMTc1M2QKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgTm92IDE3IDE2OjQyOjExIDIwMDkgKzAxMDAKKworICAgIFJlbGVhc2UgMS4xNS41LjEKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICA0ICsrLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDAwNDNkMDIwY2Y3YWFmZTNlMjUzYzZkNWM5YWZiOTM1MjE5NzFlNjAKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgTm92IDE3IDE2OjI5OjMzIDIwMDkgKzAxMDAKKworICAgIGxpYmRwa2c6IEluY2x1ZGUgPGRwa2cvdGVzdC5oPiBmaXJzdCBvbiB0ZXN0IGNhc2VzCisgICAgCisgICAgVGhlIDxkcGtnL3Rlc3QuaD4gaGVhZGVyIGluY2x1ZGVzIDxjb25maWcuaD4gd2hpY2ggdGFrZXMgY2FyZSBvZgorICAgIHByb3Blcmx5IGRlZmluaW5nIHRoZSBzeXN0ZW0gcHJvcGVydGllcyBpbmNsdWRpbmcgdGhlIGNvcnJlY3Qgb2ZmX3QKKyAgICB0eXBlLiBBcyBpdCB3YXMgbm90IGJlaW5nIGluY2x1ZGVkIGZpcnN0LCB0aGVyZSB3YXMgdHlwZSBtaXNzbWF0Y2hlcworICAgIGJldHdlZW4gbGliZHBrZyBhbmQgc29tZSBvZiB0aGUgdW5pdCB0ZXN0cy4KKyAgICAKKyAgICBTdWdnZXN0ZWQtYnk6IFBpZXJyZSBIYWJvdXppdCA8bWFkY29kZXJAZGViaWFuLm9yZz4KKyAgICBTdWdnZXN0ZWQtYnk6IEp1bGllbiBDcmlzdGF1IDxqY3Jpc3RhdUBkZWJpYW4ub3JnPgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgIHwgICAgOCArKysrKysrKworIGxpYi9kcGtnL3Rlc3QvdC1idWZmZXIuYyB8ICAgIDQgKystLQorIGxpYi9kcGtnL3Rlc3QvdC1wYXRoLmMgICB8ICAgIDQgKystLQorIGxpYi9kcGtnL3Rlc3QvdC1zdHJpbmcuYyB8ICAgIDQgKystLQorIDQgZmlsZXMgY2hhbmdlZCwgMTQgaW5zZXJ0aW9ucygrKSwgNiBkZWxldGlvbnMoLSkKKworY29tbWl0IGEwZTZhNmQzOTViMGUxNTJjMjhhMTE0MDdlZDBmMjQ5OTFjYmU1ZjIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgTm92IDE3IDEwOjE4OjA4IDIwMDkgKzAxMDAKKworICAgIFJlbGVhc2UgMS4xNS41CisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgNCArKy0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBkY2U4NTdjMGQyMDE1MzU5ZGVmNjA0YTk4OWNiYWIzNzM1ODkxNmYzCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIE5vdiAxNyAxMDoxNzoyNiAyMDA5ICswMTAwCisKKyAgICBSZWdlbmVyYXRlIC5wb3QgZmlsZXMgYW5kIG1lcmdlIC5wbyBmaWxlcyB3aXRoIHRoZW0KKworIGRzZWxlY3QvcG8vYnMucG8gICAgICAgIHwgICAxNiArLQorIGRzZWxlY3QvcG8vY2EucG8gICAgICAgIHwgICAxNiArLQorIGRzZWxlY3QvcG8vY3MucG8gICAgICAgIHwgICAxNiArLQorIGRzZWxlY3QvcG8vZGEucG8gICAgICAgIHwgICAxNiArLQorIGRzZWxlY3QvcG8vZGUucG8gICAgICAgIHwgICAxNiArLQorIGRzZWxlY3QvcG8vZHNlbGVjdC5wb3QgIHwgICAxNiArLQorIGRzZWxlY3QvcG8vZWwucG8gICAgICAgIHwgICAxNiArLQorIGRzZWxlY3QvcG8vZXMucG8gICAgICAgIHwgICAxNiArLQorIGRzZWxlY3QvcG8vZXQucG8gICAgICAgIHwgICAxNiArLQorIGRzZWxlY3QvcG8vZXUucG8gICAgICAgIHwgICAxNiArLQorIGRzZWxlY3QvcG8vZnIucG8gICAgICAgIHwgICAxNiArLQorIGRzZWxlY3QvcG8vZ2wucG8gICAgICAgIHwgICAxNiArLQorIGRzZWxlY3QvcG8vaHUucG8gICAgICAgIHwgICAxNiArLQorIGRzZWxlY3QvcG8vaWQucG8gICAgICAgIHwgICAxNiArLQorIGRzZWxlY3QvcG8vaXQucG8gICAgICAgIHwgICAxNiArLQorIGRzZWxlY3QvcG8vamEucG8gICAgICAgIHwgICAxNiArLQorIGRzZWxlY3QvcG8va28ucG8gICAgICAgIHwgICAxNiArLQorIGRzZWxlY3QvcG8vbmIucG8gICAgICAgIHwgICAxNiArLQorIGRzZWxlY3QvcG8vbmwucG8gICAgICAgIHwgICAxNiArLQorIGRzZWxlY3QvcG8vbm4ucG8gICAgICAgIHwgICAxNiArLQorIGRzZWxlY3QvcG8vcGwucG8gICAgICAgIHwgICAxNiArLQorIGRzZWxlY3QvcG8vcHQucG8gICAgICAgIHwgICAxNiArLQorIGRzZWxlY3QvcG8vcHRfQlIucG8gICAgIHwgICAxNiArLQorIGRzZWxlY3QvcG8vcm8ucG8gICAgICAgIHwgICAxNiArLQorIGRzZWxlY3QvcG8vcnUucG8gICAgICAgIHwgICAxNiArLQorIGRzZWxlY3QvcG8vc2sucG8gICAgICAgIHwgICAxNiArLQorIGRzZWxlY3QvcG8vc3YucG8gICAgICAgIHwgICAxNiArLQorIGRzZWxlY3QvcG8vdGwucG8gICAgICAgIHwgICAxNiArLQorIGRzZWxlY3QvcG8vdmkucG8gICAgICAgIHwgICAxNiArLQorIGRzZWxlY3QvcG8vemhfQ04ucG8gICAgIHwgICAxNiArLQorIGRzZWxlY3QvcG8vemhfVFcucG8gICAgIHwgICAxNiArLQorIG1hbi9wby9kZS5wbyAgICAgICAgICAgIHwgIDIyNCArKysrKysrKysrKysrLS0tLS0tCisgbWFuL3BvL2Rwa2ctbWFuLnBvdCAgICAgfCAgMTMyICsrKysrKystLS0tCisgbWFuL3BvL2VzLnBvICAgICAgICAgICAgfCAgMTU2ICsrKysrKysrLS0tLS0KKyBtYW4vcG8vZnIucG8gICAgICAgICAgICB8ICA1ODIgKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBtYW4vcG8vaHUucG8gICAgICAgICAgICB8ICAxNzIgKysrKysrKysrKy0tLS0tCisgbWFuL3BvL2phLnBvICAgICAgICAgICAgfCAgMTc2ICsrKysrKysrKystLS0tLQorIG1hbi9wby9wbC5wbyAgICAgICAgICAgIHwgIDIwMyArKysrKysrKysrKy0tLS0tLQorIG1hbi9wby9wdF9CUi5wbyAgICAgICAgIHwgIDE3MiArKysrKysrKysrLS0tLS0KKyBtYW4vcG8vcnUucG8gICAgICAgICAgICB8ICAxNzIgKysrKysrKysrKy0tLS0tCisgbWFuL3BvL3N2LnBvICAgICAgICAgICAgfCAgMzE4ICsrKysrKysrKysrKysrKy0tLS0tLS0tLS0tCisgcG8vZnIucG8gICAgICAgICAgICAgICAgfCAgIDM2ICsrLQorIHNjcmlwdHMvcG8vY2EucG8gICAgICAgIHwgICA3NSArKysrLS0tCisgc2NyaXB0cy9wby9kZS5wbyAgICAgICAgfCAgIDc3ICsrKystLS0KKyBzY3JpcHRzL3BvL2Rwa2ctZGV2LnBvdCB8ICAgNzUgKysrKy0tLQorIHNjcmlwdHMvcG8vZnIucG8gICAgICAgIHwgICA3NyArKysrLS0tCisgc2NyaXB0cy9wby9wbC5wbyAgICAgICAgfCAgIDc3ICsrKystLS0KKyBzY3JpcHRzL3BvL3J1LnBvICAgICAgICB8ICAgNzcgKysrKy0tLQorIHNjcmlwdHMvcG8vc3YucG8gICAgICAgIHwgICA4NiArKysrLS0tLQorIDQ5IGZpbGVzIGNoYW5nZWQsIDIwMjAgaW5zZXJ0aW9ucygrKSwgMTM2MyBkZWxldGlvbnMoLSkKKworY29tbWl0IDFmYmUyOWYxOWJlNGE2YmI3NDE1ODU5ZDZjNGY4ZmE2ZTYxZjI2ZDgKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgTm92IDE3IDA5OjQ5OjE3IDIwMDkgKzAxMDAKKworICAgIGRlYmlhbi9zb3VyY2Uvb3B0aW9uczogdXNlIGxvbmcgb3B0aW9uIG5hbWUgYXMgcGVyIG5ldyBzeW50YXgKKworIGRlYmlhbi9zb3VyY2Uvb3B0aW9ucyB8ICAgIDIgKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDA2Mjg3OGJhMDI2NmMyYmUzNmY0OThmNmYxMGUxY2UxNTNiZDc1ZjAKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgTm92IDE3IDA5OjU3OjM0IDIwMDkgKzAxMDAKKworICAgIERwa2c6OkNvbmY6IGZpeCBwYXJzaW5nIG9mIG9wdGlvbnMgd2l0aCB2YWx1ZXMKKworIHNjcmlwdHMvRHBrZy9Db25mLnBtIHwgICAgMiArLQorIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgMzYyYmMzMWFhNjgzY2MxNDI4NzFlMjU2ZDNkNGM2MTBjMmU5M2E1OAorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBOb3YgMTcgMDk6NDM6MTcgMjAwOSArMDEwMAorCisgICAgZHBrZy1zb3VyY2U6IHBhcnNlIG9ubHkgbG9uZyBvcHRpb25zIGZyb20gZGViaWFuL3NvdXJjZS9vcHRpb25zCisgICAgCisgICAgZGViaWFuL3NvdXJjZS9vcHRpb25zIGNhbiBub3cgb25seSBjb250YWluIGxvbmcgb3B0aW9ucy4gVGhlCisgICAgZm9sbG93aW5nIGxpbmVzIHdvdWxkIHJlc3VsdCBpbiAiLS1vcHRpb24xIC0tb3B0aW9uMT12YWx1ZSIKKyAgICBwYXNzZWQgdG8gZHBrZy1zb3VyY2UgLWI6CisgICAgIG9wdGlvbjEKKyAgICAgb3B0aW9uMiA9IHZhbHVlCisgICAgCisgICAgRHBrZzo6Q29uZiBoYXMgYmVlbiBtb2RpZmllZCB0byByZWZ1c2Ugc2hvcnQgb3B0aW9ucyBieSBkZWZhdWx0LgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICB8ICAgIDIgKy0KKyBtYW4vZHBrZy1zb3VyY2UuMSAgICAgIHwgICAyNCArKysrKysrKysrKysrKysrKy0tLS0tLS0KKyBzY3JpcHRzL0Rwa2cvQ29uZi5wbSAgIHwgICAgNSArKysrKworIHNjcmlwdHMvZHBrZy1zb3VyY2UucGwgfCAgICA0ICsrLS0KKyA0IGZpbGVzIGNoYW5nZWQsIDI1IGluc2VydGlvbnMoKyksIDEwIGRlbGV0aW9ucygtKQorCitjb21taXQgNGQ1YzI5OTFkMzZmYWIwZTc0MjNjYWM3NmUwYmQwYjU1ZWE3NjNhMQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBOb3YgMTcgMDg6Mjk6MzIgMjAwOSArMDEwMAorCisgICAgc2NyaXB0czogVXBkYXRlIG9iamR1bXAudGFncyBmaWxlcworCisgc2NyaXB0cy90LzIwMF9EcGtnX1NobGlicy9vYmpkdW1wLnRhZ3MtYW1kNjQgfCAgIDY0ICsrKysrKysrKysrKystLS0tLS0tLS0tLS0KKyBzY3JpcHRzL3QvMjAwX0Rwa2dfU2hsaWJzL29iamR1bXAudGFncy1pMzg2ICB8ICAgNjYgKysrKysrKysrKysrKy0tLS0tLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgNjcgaW5zZXJ0aW9ucygrKSwgNjMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyNTQ5YzE4NDM4YTk1ZGY1MGUyMGExMmI2MTM3Y2VjNDBkMWE5NWQyCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIE5vdiAxNyAwODoxMzo0OSAyMDA5ICswMTAwCisKKyAgICBidWlsZDogQWRkIGRlYmlhbi9zb3VyY2UvIGZpbGVzIHRvIEVYVFJBX0RJU1QKKworIE1ha2VmaWxlLmFtIHwgICAgMiArKworIDEgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgZmZkN2NiNjE5NDlmZWJmNTcyN2QxMjUyNGM3ZmNkZDUwMjgyMjQ4ZQorQXV0aG9yOiBNaWxvIENhc2FncmFuZGUgPG1pbG9AdWJ1bnR1LmNvbT4KK0RhdGU6ICAgVHVlIE5vdiAxNyAwNzo0MzoxNyAyMDA5ICswMTAwCisKKyAgICBJdGFsaWFuIHRyYW5zbGF0aW9uIHVwZGF0ZQorICAgIAorICAgIFVwZGF0ZWQgdG8gOTY0dC4KKworIHBvL2l0LnBvIHwgICA4NyArKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMzggaW5zZXJ0aW9ucygrKSwgNDkgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyODY0NDc2MzJhZmRmN2Q3ZmRkYmEwMDhmNTc3YzdiMGU2OTU4OTAwCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIE5vdiAxNyAwNzozNDoyNyAyMDA5ICswMTAwCisKKyAgICBUaGUgY2hhbmdlbG9nIHBvbGljZSBpcyBiYWNrCisgICAgCisgICAgQWRkIG5ld3N3b3J0aHkgaXRlbXMuIFNvcnQgZW50cmllcyBmb2xsb3dpbmcgdGhlIGxhdyEKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgIDEzICsrKysrKysrLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDggaW5zZXJ0aW9ucygrKSwgNSBkZWxldGlvbnMoLSkKKworY29tbWl0IDYzY2NiM2NlNmRmODczMGI5Y2E4YWU4ZWUwYjA0M2NkMTVmOWQ1YTkKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgTm92IDE3IDA3OjA3OjE2IDIwMDkgKzAxMDAKKworICAgIG1hbjogVXBkYXRlIG1vZGlmaWNhdGlvbiBkYXRlcworCisgbWFuL2RlYi1zdWJzdHZhcnMuNSAgICAgICB8ICAgIDIgKy0KKyBtYW4vZGViLXRyaWdnZXJzLjUgICAgICAgIHwgICAgMiArLQorIG1hbi9kcGtnLWFyY2hpdGVjdHVyZS4xICAgfCAgICAyICstCisgbWFuL2Rwa2ctYnVpbGRwYWNrYWdlLjEgICB8ICAgIDIgKy0KKyBtYW4vZHBrZy1nZW5zeW1ib2xzLjEgICAgIHwgICAgMiArLQorIG1hbi9kcGtnLXBhcnNlY2hhbmdlbG9nLjEgfCAgICAyICstCisgbWFuL2Rwa2ctc2NhbnBhY2thZ2VzLjEgICB8ICAgIDIgKy0KKyBtYW4vZHBrZy1zY2Fuc291cmNlcy4xICAgIHwgICAgMiArLQorIG1hbi9kcGtnLXNobGliZGVwcy4xICAgICAgfCAgICAyICstCisgbWFuL2Rwa2ctc291cmNlLjEgICAgICAgICB8ICAgIDIgKy0KKyBtYW4vZHBrZy1zcGxpdC4xICAgICAgICAgIHwgICAgMiArLQorIG1hbi9kcGtnLXRyaWdnZXIuMSAgICAgICAgfCAgICAyICstCisgbWFuL2Rwa2cuMSAgICAgICAgICAgICAgICB8ICAgIDIgKy0KKyBtYW4vc3RhcnQtc3RvcC1kYWVtb24uOCAgIHwgICAgMiArLQorIG1hbi91cGRhdGUtYWx0ZXJuYXRpdmVzLjggfCAgICAyICstCisgMTUgZmlsZXMgY2hhbmdlZCwgMTUgaW5zZXJ0aW9ucygrKSwgMTUgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAxNjJiNDA1NWJkNzdmZjQ1NWIwMDEzYmUyMGI5NWQzYzMxZDQ0MDUxCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIE5vdiAxNyAwNjo1NDoyNiAyMDA5ICswMTAwCisKKyAgICBkcGtnLXNvdXJjZTogQ2hlY2sgaWYgdGhlIG9wbW9kZSBvcHRpb24gaXMgZGVmaW5lZCBiZWZvcmUgdXNlCisgICAgCisgICAgVGhpcyB3YXMgcHJvZHVjaW5nIGFuIHVuaXRpYWxpemVkIHZhbHVlIHVzYWdlIHBlcmwgd2FybmluZyB3aGVuIHVzaW5nCisgICAgLS1oZWxwIG9yIC0tdmVyc2lvbi4KKworIHNjcmlwdHMvZHBrZy1zb3VyY2UucGwgfCAgICAzICsrLQorIDEgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgZjY4YWE5NjE5ZTFlNzc3ZmFkNWZmNTc4YWQyNThmNzY4ZDQ1ZjI1MAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBOb3YgMTcgMDU6MDc6NTMgMjAwOSArMDEwMAorCisgICAgZHBrZy1idWlsZHBhY2thZ2U6IERvIG5vdCBsaXN0IHN1cHBvcnRlZCBjb21wcmVzc29ycyBpbiAtLWhlbHAgb3V0cHV0CisgICAgCisgICAgVGhlIHh6IGNvbXByZXNzb3Igd2FzIG1pc3NpbmcgZnJvbSB0aGUgLS1oZWxwIG91dHB1dCBmb3IgLVosIGluc3RlYWQgb2YKKyAgICBhZGRpbmcgaXQsIGxldCBkcGtnLXNvdXJjZSBoYXZlIHRoZSBsaXN0IG9mIHN1cHBvcnRlZCBvbmVzLCBzbyB0aGF0IHdlCisgICAgZG9uJ3QgaGF2ZSB0byB3b3JyeSBhYm91dCBvdXQtb2YtZGF0ZW5lc3MgaW4gdGhlIGZ1dHVyZS4KKworIHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGwgfCAgICAyICstCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyZDU3YjRmNzE1NDA5Y2JlOGNkM2RjN2ExY2MyMzgwZWM5ZmQ1MGRlCitNZXJnZTogYWZmOGRlMSAzNzAwZmFmCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIE5vdiAxNyAwODowMToxOCAyMDA5ICswMTAwCisKKyAgICBNZXJnZSBicmFuY2ggc2lkICh0aHJvdWdoIGNvbW1pdCAnMS4xNS40LjEnKQorICAgIAorICAgIENvbmZsaWN0czoKKyAgICAJY29uZmlndXJlLmFjCisgICAgCWRlYmlhbi9jaGFuZ2Vsb2cKKworY29tbWl0IGFmZjhkZTE0M2I4YzJmNTU5YzJhYTYwNDI1ODc2MDNjYzIyYzQ4OWYKK0F1dGhvcjogQ2hyaXN0aWFuIFBlcnJpZXIgPGJ1YnVsbGVAZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIE5vdiAxNSAxMjo1MDo0NCAyMDA5ICswMTAwCisKKyAgICBNZXJnZSBjaGFuZ2Vsb2cgZW50cmllcworCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDMgKy0tCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA3ZWEyM2ZhZjllNDk5NDE0MzBjYTU1YzZjYWI3MjYxMTU2MGZjZGM5CitBdXRob3I6IENocmlzdGlhbiBQZXJyaWVyIDxidWJ1bGxlQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBOb3YgMTUgMTI6NDU6NDMgMjAwOSArMDEwMAorCisgICAgUmVtZXJnZSB3aXRoIEhFQUQKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAxICsKKyBwby9pdC5wbyAgICAgICAgIHwgIDIzOSArKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDExIGluc2VydGlvbnMoKyksIDIyOSBkZWxldGlvbnMoLSkKKworY29tbWl0IGVmOGNiMDZiZjM4NmZkNzUyZWY4NjBjMTkwODRhOWRkMGNhYzliZTYKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgTm92IDE0IDE3OjM3OjM5IDIwMDkgKzAxMDAKKworICAgIGRwa2ctc3RhdG92ZXJyaWRlOiBBZGQgbWlzc2luZyBhbmdsZSBicmFja2V0IGluIHN0cmluZworICAgIAorICAgIFNwb3R0ZWQtYnk6IENocmlzdGlhbiBQZXJyaWVyIDxidWJ1bGxlQGRlYmlhbi5vcmc+CisKKyBwby9hc3QucG8gICAgIHwgICAxOCArKysrKysrLS0tLS0tLS0tLS0KKyBwby9icy5wbyAgICAgIHwgICAxOCArKysrKysrLS0tLS0tLS0tLS0KKyBwby9jYS5wbyAgICAgIHwgICAxOCArKysrKysrLS0tLS0tLS0tLS0KKyBwby9jcy5wbyAgICAgIHwgICAxOSArKysrKysrLS0tLS0tLS0tLS0tCisgcG8vZGEucG8gICAgICB8ICAgMTYgKysrKysrLS0tLS0tLS0tLQorIHBvL2RlLnBvICAgICAgfCAgIDE4ICsrKysrKystLS0tLS0tLS0tLQorIHBvL2Rwa2cucG90ICAgfCAgIDE2ICsrKysrKy0tLS0tLS0tLS0KKyBwby9kei5wbyAgICAgIHwgICAxNiArKysrKystLS0tLS0tLS0tCisgcG8vZWwucG8gICAgICB8ICAgMTYgKysrKysrLS0tLS0tLS0tLQorIHBvL2VvLnBvICAgICAgfCAgIDE2ICsrKysrKy0tLS0tLS0tLS0KKyBwby9lcy5wbyAgICAgIHwgICAxNiArKysrKystLS0tLS0tLS0tCisgcG8vZXQucG8gICAgICB8ICAgMTYgKysrKysrLS0tLS0tLS0tLQorIHBvL2V1LnBvICAgICAgfCAgIDE2ICsrKysrKy0tLS0tLS0tLS0KKyBwby9mci5wbyAgICAgIHwgICAxOCArKysrKysrLS0tLS0tLS0tLS0KKyBwby9nbC5wbyAgICAgIHwgICAxNiArKysrKystLS0tLS0tLS0tCisgcG8vaHUucG8gICAgICB8ICAgMTYgKysrKysrLS0tLS0tLS0tLQorIHBvL2lkLnBvICAgICAgfCAgIDE2ICsrKysrKy0tLS0tLS0tLS0KKyBwby9pdC5wbyAgICAgIHwgICAxOSArKysrKysrLS0tLS0tLS0tLS0tCisgcG8vamEucG8gICAgICB8ICAgMTYgKysrKysrLS0tLS0tLS0tLQorIHBvL2ttLnBvICAgICAgfCAgIDE2ICsrKysrKy0tLS0tLS0tLS0KKyBwby9rby5wbyAgICAgIHwgICAxNiArKysrKystLS0tLS0tLS0tCisgcG8va3UucG8gICAgICB8ICAgMTYgKysrKysrLS0tLS0tLS0tLQorIHBvL2x0LnBvICAgICAgfCAgIDE2ICsrKysrKy0tLS0tLS0tLS0KKyBwby9tci5wbyAgICAgIHwgICAxNiArKysrKystLS0tLS0tLS0tCisgcG8vbmIucG8gICAgICB8ICAgMTYgKysrKysrLS0tLS0tLS0tLQorIHBvL25lLnBvICAgICAgfCAgIDE2ICsrKysrKy0tLS0tLS0tLS0KKyBwby9ubC5wbyAgICAgIHwgICAxNiArKysrKystLS0tLS0tLS0tCisgcG8vbm4ucG8gICAgICB8ICAgMTYgKysrKysrLS0tLS0tLS0tLQorIHBvL3BhLnBvICAgICAgfCAgIDE2ICsrKysrKy0tLS0tLS0tLS0KKyBwby9wbC5wbyAgICAgIHwgICAxOSArKysrKysrLS0tLS0tLS0tLS0tCisgcG8vcHQucG8gICAgICB8ICAgMTYgKysrKysrLS0tLS0tLS0tLQorIHBvL3B0X0JSLnBvICAgfCAgIDE2ICsrKysrKy0tLS0tLS0tLS0KKyBwby9yby5wbyAgICAgIHwgICAxNiArKysrKystLS0tLS0tLS0tCisgcG8vcnUucG8gICAgICB8ICAgMTYgKysrKysrLS0tLS0tLS0tLQorIHBvL3NrLnBvICAgICAgfCAgIDE2ICsrKysrKy0tLS0tLS0tLS0KKyBwby9zdi5wbyAgICAgIHwgICAxOCArKysrKysrLS0tLS0tLS0tLS0KKyBwby90aC5wbyAgICAgIHwgICAxNiArKysrKystLS0tLS0tLS0tCisgcG8vdGwucG8gICAgICB8ICAgMTYgKysrKysrLS0tLS0tLS0tLQorIHBvL3ZpLnBvICAgICAgfCAgIDE2ICsrKysrKy0tLS0tLS0tLS0KKyBwby96aF9DTi5wbyAgIHwgICAxOSArKysrKysrLS0tLS0tLS0tLS0tCisgcG8vemhfVFcucG8gICB8ICAgMTYgKysrKysrLS0tLS0tLS0tLQorIHNyYy9zdGF0Y21kLmMgfCAgICAyICstCisgNDIgZmlsZXMgY2hhbmdlZCwgMjU3IGluc2VydGlvbnMoKyksIDQyNSBkZWxldGlvbnMoLSkKKworY29tbWl0IDhkZDBkMDFiZjZjZTg5MDA1ZWVkY2QzMzgzOTdjZWQwN2MyNWY3MzQKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgTm92IDE0IDE3OjAwOjA5IDIwMDkgKzAxMDAKKworICAgIGRwa2ctZGViOiBmaXggdHlwbyB1bmtvd24gLT4gdW5rbm93bgorICAgIAorICAgIFNwb3R0ZWQgYnkgbGludGlhbiBzcGVsbGluZy1lcnJvci1pbi1iaW5hcnkuCisKKyBkcGtnLWRlYi9idWlsZC5jIHwgICAgMiArLQorIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgMGFkYzMzYmY0ZDQxNmFmNTVjYzY0MWE5N2ZiNTdlOGVjZTFlYWI4ZAorQXV0aG9yOiBDaHJpc3RpYW4gUGVycmllciA8YnVidWxsZUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgTm92IDE0IDEzOjQ3OjAzIDIwMDkgKzAxMDAKKworICAgIGZpeCBlcnJvcnMgc3BvdHRlZCBieSBSYXBoYcOrbAorCisgbWFuL3BvL2ZyLnBvIHwgIDM0NiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAxNzMgaW5zZXJ0aW9ucygrKSwgMTczIGRlbGV0aW9ucygtKQorCitjb21taXQgNjYyM2JmYmIyOWRiZWY1OTNkOWMwZGVmZDM1ZjhjNjdjZmM4M2M4OQorQXV0aG9yOiBDaHJpc3RpYW4gUGVycmllciA8YnVidWxsZUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgTm92IDE0IDA4OjQzOjM4IDIwMDkgKzAxMDAKKworICAgIEZyZW5jaCBtYW5wYWdlcyB0cmFuc2xhdGlvbiB1cGRhdGUgYW5kIHR5cG9ncmFwaGljYWwgZml4ZXMgKG5vbi1icmVha2FibGUgc3BhY2VzKQorCisgbWFuL3BvL2ZyLnBvIHwgIDkzNyArKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA0NTggaW5zZXJ0aW9ucygrKSwgNDc5IGRlbGV0aW9ucygtKQorCitjb21taXQgYWUxMDZkNWI1Y2IwZmJhNTE2MDMyZDk3MzVlMjM2YjljMDA0ZTAxMQorQXV0aG9yOiBDaHJpc3RpYW4gUGVycmllciA8YnVidWxsZUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgTm92IDE0IDA4OjI3OjM2IDIwMDkgKzAxMDAKKworICAgIEZyZW5jaCB0cmFuc2xhdGlvbiB1cGRhdGUKKworIHBvL2ZyLnBvIHwgIDIxNSArKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgOTcgaW5zZXJ0aW9ucygrKSwgMTE4IGRlbGV0aW9ucygtKQorCitjb21taXQgNDNjOTVlN2I5ODU3NmExMzA5Y2VmNDBiMjNhOTRkNmQ3NDNlODRlNAorQXV0aG9yOiBIZWxnZSBLcmV1dHptYW5uIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KK0RhdGU6ICAgRnJpIE5vdiAxMyAyMToxMTowOCAyMDA5ICswMTAwCisKKyAgICBVcGRhdGUgR2VybWFuIHRyYW5zbGF0aW9uIG9mIG1hbnVhbCBwYWdlcworICAgIAorICAgIFVwZGF0ZSB0byAxNjUwdC4KKworIG1hbi9wby9kZS5wbyB8ICAgMTAgKystLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCA4IGRlbGV0aW9ucygtKQorCitjb21taXQgZDM4M2E5YmNkMzZiMjAwMjQzZjY0OTVlOGQxMzVmNDQ5NTMwZjZiYgorQXV0aG9yOiBTdmVuIEpvYWNoaW0gPHN2ZW5qb2FjQGdteC5kZT4KK0RhdGU6ICAgRnJpIE5vdiAxMyAxNDowMToxNyAyMDA5ICswMTAwCisKKyAgICBHZXJtYW4gZHBrZyB0cmFuc2xhdGlvbiB1cGRhdGUKKyAgICAKKyAgICBVcGRhdGUgdG8gOTYxdDRmLgorCisgcG8vZGUucG8gfCAgIDI2ICsrKysrKysrKysrKystLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAxMyBpbnNlcnRpb25zKCspLCAxMyBkZWxldGlvbnMoLSkKKworY29tbWl0IDFhY2I0N2RmMjk0OGEyM2VmY2MyYmZjNDAzNGQ2MDlmMGY5NzUwNjkKK0F1dGhvcjogUGV0ZXIgS3JlZnRpbmcgPHBldGVya0BkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgTm92IDEzIDEzOjQwOjQxIDIwMDkgKzAxMDAKKworICAgIFVwZGF0ZSBTd2VkaXNoIHRyYW5zbGF0aW9uLgorICAgIAorICAgIHBvL3N2LnBvOiBVcGRhdGUgdG8gOTY1dDBmMHUuCisgICAgbWFuL3BvL3N2LnBvOiBVcGRhdGUgdG8gMTY1MHQwZjB1LgorICAgIHNjcmlwdHMvcG8vc3YucG86IFVwZGF0ZSB0byA0ODJ0MGYwdS4KKworIG1hbi9wby9zdi5wbyAgICAgfCAgIDYxICsrKysrKysrKysrKysrKystLS0tLS0tLS0tCisgcG8vc3YucG8gICAgICAgICB8ICAgMTQgKysrLS0tCisgc2NyaXB0cy9wby9zdi5wbyB8ICAxMjggKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAzIGZpbGVzIGNoYW5nZWQsIDEwNSBpbnNlcnRpb25zKCspLCA5OCBkZWxldGlvbnMoLSkKKworY29tbWl0IDA5ZTI4ZmI4ZmU2Njg1ZTYzMzFiYjI0MDdiODEzNGFlNTIyYzNjYTQKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgTm92IDEzIDEyOjE4OjU1IDIwMDkgKzAxMDAKKworICAgIFJlZ2VuZXJhdGUgLnBvdCBmaWxlcyBhbmQgbWVyZ2UgLnBvIGZpbGVzIHdpdGggdGhlbQorCisgZHNlbGVjdC9wby9icy5wbyAgICAgICAgfCAgNTU0ICsrKysrKy0tLS0tLQorIGRzZWxlY3QvcG8vY2EucG8gICAgICAgIHwgIDU2MCArKysrKystLS0tLS0KKyBkc2VsZWN0L3BvL2NzLnBvICAgICAgICB8ICA1NjAgKysrKysrLS0tLS0tCisgZHNlbGVjdC9wby9kYS5wbyAgICAgICAgfCAgNTYwICsrKysrKy0tLS0tLQorIGRzZWxlY3QvcG8vZGUucG8gICAgICAgIHwgIDU2MiArKysrKystLS0tLS0KKyBkc2VsZWN0L3BvL2RzZWxlY3QucG90ICB8ICA1NTQgKysrKysrLS0tLS0tCisgZHNlbGVjdC9wby9lbC5wbyAgICAgICAgfCAgNTYyICsrKysrKy0tLS0tLQorIGRzZWxlY3QvcG8vZXMucG8gICAgICAgIHwgIDU2MiArKysrKystLS0tLS0KKyBkc2VsZWN0L3BvL2V0LnBvICAgICAgICB8ICA1NTcgKysrKysrLS0tLS0tCisgZHNlbGVjdC9wby9ldS5wbyAgICAgICAgfCAgNTYxICsrKysrKy0tLS0tLQorIGRzZWxlY3QvcG8vZnIucG8gICAgICAgIHwgIDU2MyArKysrKystLS0tLS0KKyBkc2VsZWN0L3BvL2dsLnBvICAgICAgICB8ICA1NjAgKysrKysrLS0tLS0tCisgZHNlbGVjdC9wby9odS5wbyAgICAgICAgfCAgNTU0ICsrKysrKy0tLS0tLQorIGRzZWxlY3QvcG8vaWQucG8gICAgICAgIHwgIDU2MCArKysrKystLS0tLS0KKyBkc2VsZWN0L3BvL2l0LnBvICAgICAgICB8ICA1NjMgKysrKysrLS0tLS0tCisgZHNlbGVjdC9wby9qYS5wbyAgICAgICAgfCAgNTYwICsrKysrKy0tLS0tLQorIGRzZWxlY3QvcG8va28ucG8gICAgICAgIHwgIDU2MCArKysrKystLS0tLS0KKyBkc2VsZWN0L3BvL25iLnBvICAgICAgICB8ICA1NjAgKysrKysrLS0tLS0tCisgZHNlbGVjdC9wby9ubC5wbyAgICAgICAgfCAgNTYwICsrKysrKy0tLS0tLQorIGRzZWxlY3QvcG8vbm4ucG8gICAgICAgIHwgIDU2MCArKysrKystLS0tLS0KKyBkc2VsZWN0L3BvL3BsLnBvICAgICAgICB8ICA1NjMgKysrKysrLS0tLS0tCisgZHNlbGVjdC9wby9wdC5wbyAgICAgICAgfCAgNTYwICsrKysrKy0tLS0tLQorIGRzZWxlY3QvcG8vcHRfQlIucG8gICAgIHwgIDU2MCArKysrKystLS0tLS0KKyBkc2VsZWN0L3BvL3JvLnBvICAgICAgICB8ICA1NjMgKysrKysrLS0tLS0tCisgZHNlbGVjdC9wby9ydS5wbyAgICAgICAgfCAgNTYwICsrKysrKy0tLS0tLQorIGRzZWxlY3QvcG8vc2sucG8gICAgICAgIHwgIDU2MCArKysrKystLS0tLS0KKyBkc2VsZWN0L3BvL3N2LnBvICAgICAgICB8ICA1NjAgKysrKysrLS0tLS0tCisgZHNlbGVjdC9wby90bC5wbyAgICAgICAgfCAgNTYwICsrKysrKy0tLS0tLQorIGRzZWxlY3QvcG8vdmkucG8gICAgICAgIHwgIDU2MSArKysrKystLS0tLS0KKyBkc2VsZWN0L3BvL3poX0NOLnBvICAgICB8ICA1NjAgKysrKysrLS0tLS0tCisgZHNlbGVjdC9wby96aF9UVy5wbyAgICAgfCAgNTYwICsrKysrKy0tLS0tLQorIG1hbi9wby9kZS5wbyAgICAgICAgICAgIHwgIDYyOSArKysrKysrLS0tLS0tLQorIG1hbi9wby9kcGtnLW1hbi5wb3QgICAgIHwgIDQ3NyArKysrKystLS0tLQorIG1hbi9wby9lcy5wbyAgICAgICAgICAgIHwgIDUwNiArKysrKystLS0tLQorIG1hbi9wby9mci5wbyAgICAgICAgICAgIHwgIDc2NCArKysrKysrKysrLS0tLS0tCisgbWFuL3BvL2h1LnBvICAgICAgICAgICAgfCAgNTA2ICsrKysrKy0tLS0tCisgbWFuL3BvL2phLnBvICAgICAgICAgICAgfCAgNTA2ICsrKysrKy0tLS0tCisgbWFuL3BvL3BsLnBvICAgICAgICAgICAgfCAgNTUwICsrKysrKystLS0tLQorIG1hbi9wby9wdF9CUi5wbyAgICAgICAgIHwgIDUwNiArKysrKystLS0tLQorIG1hbi9wby9ydS5wbyAgICAgICAgICAgIHwgIDUwNiArKysrKystLS0tLQorIG1hbi9wby9zdi5wbyAgICAgICAgICAgIHwgIDcwNCArKysrKysrKy0tLS0tLS0KKyBwby9hc3QucG8gICAgICAgICAgICAgICB8IDIyMTggKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vYnMucG8gICAgICAgICAgICAgICAgfCAyMDY2ICsrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2NhLnBvICAgICAgICAgICAgICAgIHwgMjIyOSArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vY3MucG8gICAgICAgICAgICAgICAgfCAyMjIzICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2RhLnBvICAgICAgICAgICAgICAgIHwgMjIxOSArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9kZS5wbyAgICAgICAgICAgICAgICB8IDE2OTAgKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLQorIHBvL2Rwa2cucG90ICAgICAgICAgICAgIHwgMjA1MCArKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2R6LnBvICAgICAgICAgICAgICAgIHwgMjIxNSArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9lbC5wbyAgICAgICAgICAgICAgICB8IDIyMjIgKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vZW8ucG8gICAgICAgICAgICAgICAgfCAyMjA5ICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2VzLnBvICAgICAgICAgICAgICAgIHwgMjIyNyArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vZXQucG8gICAgICAgICAgICAgICAgfCAyMTUxICsrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vZXUucG8gICAgICAgICAgICAgICAgfCAyMjA4ICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2ZyLnBvICAgICAgICAgICAgICAgIHwgMjMxNSArKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2dsLnBvICAgICAgICAgICAgICAgIHwgMjIyMSArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9odS5wbyAgICAgICAgICAgICAgICB8IDIyMDcgKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9pZC5wbyAgICAgICAgICAgICAgICB8IDIxNDQgKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9pdC5wbyAgICAgICAgICAgICAgICB8IDIyMzIgKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vamEucG8gICAgICAgICAgICAgICAgfCAyMjExICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2ttLnBvICAgICAgICAgICAgICAgIHwgMjIxMCArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9rby5wbyAgICAgICAgICAgICAgICB8IDIyMTQgKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8va3UucG8gICAgICAgICAgICAgICAgfCAyMTAxICsrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9sdC5wbyAgICAgICAgICAgICAgICB8IDIxMjggKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL21yLnBvICAgICAgICAgICAgICAgIHwgMjIxNSArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9uYi5wbyAgICAgICAgICAgICAgICB8IDIyMTYgKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vbmUucG8gICAgICAgICAgICAgICAgfCAyMjExICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL25sLnBvICAgICAgICAgICAgICAgIHwgMjIyMCArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9ubi5wbyAgICAgICAgICAgICAgICB8IDIxNDYgKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9wYS5wbyAgICAgICAgICAgICAgICB8IDIxNTcgKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9wbC5wbyAgICAgICAgICAgICAgICB8IDIyMTEgKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vcHQucG8gICAgICAgICAgICAgICAgfCAyMjI5ICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9wdF9CUi5wbyAgICAgICAgICAgICB8IDIyMzAgKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL3JvLnBvICAgICAgICAgICAgICAgIHwgMjIzNyArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vcnUucG8gICAgICAgICAgICAgICAgfCAyMjEwICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL3NrLnBvICAgICAgICAgICAgICAgIHwgMjIyMyArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9zdi5wbyAgICAgICAgICAgICAgICB8IDE2NjggKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLQorIHBvL3RoLnBvICAgICAgICAgICAgICAgIHwgMjIxOCArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby90bC5wbyAgICAgICAgICAgICAgICB8IDIxNDQgKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby92aS5wbyAgICAgICAgICAgICAgICB8IDIyMzcgKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL3poX0NOLnBvICAgICAgICAgICAgIHwgMjIxNyArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBwby96aF9UVy5wbyAgICAgICAgICAgICB8IDIyMDYgKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgc2NyaXB0cy9wby9jYS5wbyAgICAgICAgfCAxNDMwICsrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLQorIHNjcmlwdHMvcG8vZGUucG8gICAgICAgIHwgICAgNiArLQorIHNjcmlwdHMvcG8vZHBrZy1kZXYucG90IHwgMTM2MSArKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tCisgc2NyaXB0cy9wby9mci5wbyAgICAgICAgfCAxNTAwICsrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLQorIHNjcmlwdHMvcG8vcGwucG8gICAgICAgIHwgMTUwMCArKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0KKyBzY3JpcHRzL3BvL3J1LnBvICAgICAgICB8IDE0OTQgKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tCisgc2NyaXB0cy9wby9zdi5wbyAgICAgICAgfCAxMzMyICsrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLQorIDg5IGZpbGVzIGNoYW5nZWQsIDYwOTk3IGluc2VydGlvbnMoKyksIDU5NzQ0IGRlbGV0aW9ucygtKQorCitjb21taXQgOTQ2NWRjMjIxNjMwOTM4ZmIyNDAzNGRkYmIzNGYyOWZhZTA5ZWE0MgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBOb3YgMTMgMDQ6MDc6MDEgMjAwOSArMDEwMAorCisgICAgZHBrZzogUGFzcyBzdHJ1Y3QgcGtnaW5mbyBpbnN0ZWFkIG9mIHRoZSBwYWNrYWdlIG5hbWUgdG8gbG9nX2FjdGlvbgorICAgIAorICAgIFRoaW5rbyBmcm9tIGNvbW1pdCA4NWI5YjAwNTE4NDE5YjIzYzIwOWJiNjU2NzU2NmI5OWYwMDQyNDFmLgorCisgc3JjL3Byb2Nlc3NhcmMuYyB8ICAgIDIgKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDg1YjliMDA1MTg0MTliMjNjMjA5YmI2NTY3NTY2Yjk5ZjAwNDI0MWYKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gQXVnIDEwIDE4OjA1OjU1IDIwMDkgKzAyMDAKKworICAgIEFkZCBuZXcgc3RhdHVzLWZkIGFjdGlvbiB3aGVuIGRpc2FwcGVhcmluZyBhIHBhY2thZ2UKKyAgICAKKyAgICBUaGlzIHdpbGwgaGVscCBmcm9udC1lbmRzIGxpa2UgQVBUIHRvIGtlZXAgYmV0dGVyIHRyYWNrIG9mIHRoZSBhY3Rpb25zCisgICAgZG9uZSBkdXJpbmcgYSBkcGtnIHJ1bi4KKyAgICAKKyAgICBDbG9zZXM6ICM1MzczMzgKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAxICsKKyBtYW4vZHBrZy4xICAgICAgIHwgICAgMiArLQorIHNyYy9wcm9jZXNzYXJjLmMgfCAgICAxICsKKyAzIGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDZhZDM4M2Y0NzEyMWNjMjA5NThlZWFkMmMzZTdhMWU5MDQ3NTE1ZDEKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgTm92IDEyIDIxOjE3OjQ5IDIwMDkgKzAxMDAKKworICAgIGRwa2c6IEZpeCBjaGVja3BhdGgoKSB0byB1c2UgdmFyYnVmIGluc3RlYWQgb2YgbV9tYWxsb2MKKyAgICAKKyAgICBUaGlzIHNvbHZlcyBhIHBvdGVudGlhbCBwcm9ibGVtIGluIGNhc2UgYW55IG9mIHRoZSBwcm9ncmFtcyBpbgorICAgIHByb2dfbGlzdCBpcyBsb25nZXIgdGhhbiAic3RhcnQtc3RvcC1kYWVtb24iLCB3aGljaCBpcyB0aGUgc2l6ZSBiZWluZworICAgIGNob29zZWQgYXMgdGhlIGxvbmdlc3Qgb25lLiBCeSB1c2luZyBhIHZhcmJ1ZiB3ZSBsZXQgdGhlIGNvZGUgcmVzaXplCisgICAgaXQgZHluYW1pY2FsbHkgaWYgbmVlZGVkLgorCisgc3JjL2hlbHAuYyB8ICAgMTkgKysrKysrKysrKystLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMTEgaW5zZXJ0aW9ucygrKSwgOCBkZWxldGlvbnMoLSkKKworY29tbWl0IDc5NzlhODg2NDhlYjEyZDAxMDA2OTE1ODU2ODg0ODFmMmQ5MzU5YzUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgTm92IDExIDA1OjUzOjQ5IDIwMDkgKzAxMDAKKworICAgIGRwa2c6IFJlbW92ZSByZWR1bmRhbnQgZmVycm9yIGNoZWNrIGluIGVuc3VyZV9kaXZlcnNpb25zKCkKKyAgICAKKyAgICBUaGUgY2hlY2sgaXMgZG9uZSBhbHJlYWR5IGluIGZnZXRzX2NoZWNrZWQuCisKKyBzcmMvZGl2ZXJ0ZGIuYyB8ICAgIDIgLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDAgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDY2MmY1YmY3MDI0ZmZhNmE1NGI3YjFjZDEyNTEwNGJjNjU3ZGFhZTUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgTm92IDExIDA1OjE4OjA5IDIwMDkgKzAxMDAKKworICAgIGRwa2c6IFJlbW92ZSB1bnVzZWQgdmFyaWFibGUgaW4gZW5zdXJlX2RpdmVyc2lvbnMoKQorCisgc3JjL2RpdmVydGRiLmMgfCAgICAzICstLQorIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgYmQ5MDcyMDFlZjVmNDU3NzM0NGY2NjYyNDg1NDk3ZmMzMTg3NDFiZAorQXV0aG9yOiBIZWxnZSBLcmV1dHptYW5uIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KK0RhdGU6ICAgV2VkIE5vdiAxMSAyMDo0MDoyMSAyMDA5ICswMTAwCisKKyAgICBVcGRhdGUgR2VybWFuIHRyYW5zbGF0aW9uIG9mIG1hbnVhbCBwYWdlcworICAgIAorICAgIFVwZGF0ZSB0byAxNjU2dC4KKworIG1hbi9wby9kZS5wbyB8ICAgNjIgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLQorIDEgZmlsZXMgY2hhbmdlZCwgNjEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGZiNGM0YmM0YjA5ODgzNDg5ZTMwYWYyYTBiMGMwNmJkNTRmNzJhNWEKK0F1dGhvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitEYXRlOiAgIFdlZCBOb3YgMTEgMTk6NTY6NDQgMjAwOSArMDEwMAorCisgICAgVXBkYXRlIEdlcm1hbiBzY3JpcHRzIHRyYW5zbGF0aW9uCisgICAgCisgICAgVXBkYXRlIHRvIDQ4MnQuCisKKyBzY3JpcHRzL3BvL2RlLnBvIHwgIDIwNSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMTEyIGluc2VydGlvbnMoKyksIDkzIGRlbGV0aW9ucygtKQorCitjb21taXQgOGU2NjliYjQ1YTc0MzE3YWRhMGJjZDcyMzc1ZTUzZjA5YjIyYzcxMworQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBOb3YgMTEgMTY6MDM6MzggMjAwOSArMDEwMAorCisgICAgVXNlIHNvdXJjZSBmb3JtYXQgIjMuMCAobmF0aXZlKSIgd2l0aCBiemlwMiBjb21wcmVzc2lvbiBmb3IgZHBrZyBpdHNlbGYKKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICB8ICAgIDEgKworIGRlYmlhbi9zb3VyY2UvZm9ybWF0ICB8ICAgIDEgKworIGRlYmlhbi9zb3VyY2Uvb3B0aW9ucyB8ICAgIDIgKysKKyAzIGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDM2YTU0MjBhZGIyZWY3YjI5OTI3YzkwMTFkMTQwYzFlZmZkNzk0MWYKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgTm92IDExIDE1OjU0OjQ3IDIwMDkgKzAxMDAKKworICAgIGRwa2ctc291cmNlOiBhZGQgYSBERVAtMyBjb21wbGlhbnQgaGVhZGVyIHRvIGF1dG9tYXRpYyBwYXRjaGVzCisgICAgCisgICAgSW4gIjMuMCAocXVpbHQpIiBmb3JtYXQsIGRwa2ctc291cmNlIGNhbiBhdXRvbWF0aWNhbGx5IGNyZWF0ZSBwYXRjaGVzIHdpdGgKKyAgICB0aGUgdXBzdHJlYW0gY2hhbmdlcyBhcHBsaWVkIHRvIHRoZSBzb3VyY2UgcGFja2FnZS4gVGhvc2UgcGF0Y2hlcyB3aWxsIG5vdworICAgIGNvbnRhaW4gYW4gaW5mb3JtYXRpdmUgaGVhZGVyIHJlc3BlY3RpbmcgdGhlIERFUC0zIHByb3Bvc2FsIHdoZXJlIHRoZQorICAgIERlc2NyaXB0aW9uIGNvbnRhaW5zIGEgY29weSBvZiB0aGUgbGFzdCBjaGFuZ2Vsb2cgZW50cnksIHRoZSBsYXN0IHVwbG9hZGVyCisgICAgaXMgbWVudGlvbm5lZCBpbiB0aGUgQXV0aG9yIGZpZWxkLiBTdXBwbGVtZW50YXJ5IGZpZWxkcyBjYW4gYmUgYWRkZWQKKyAgICBieSBhIHZlbmRvciBob29rICJleHRlbmQtcGF0Y2gtaGVhZGVyIi4gVGhlIERlYmlhbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGlzCisgICAgaG9vayBhdXRvbWF0aWNhbGx5IGFkZHMgQnVnLURlYmlhbiBhbmQgQnVnLVVidW50dSBlbnRyaWVzLgorICAgIAorICAgIERwa2c6OlNvdXJjZTo6UGF0Y2ggaGFzIGJlZW4gbW9kaWZpZWQgdG8gYmUgYWJsZSB0byBvdXRwdXQgYSBwcmVsaW1pbmFyeQorICAgIGhlYWRlci4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDIgKworIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbSAgICAgICB8ICAgMTMgKysrKysrKysrLQorIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbSB8ICAgMzYgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLQorIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG0gICAgICAgICAgICB8ICAgMTEgKysrKysrKysrCisgc2NyaXB0cy9EcGtnL1ZlbmRvci9EZWJpYW4ucG0gICAgICAgICAgIHwgICAxMyArKysrKysrKysrKworIHNjcmlwdHMvRHBrZy9WZW5kb3IvRGVmYXVsdC5wbSAgICAgICAgICB8ICAgIDIgKworIDYgZmlsZXMgY2hhbmdlZCwgNzQgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworY29tbWl0IDQ2MjViZjhiNDU1ZjU3OTI1OWY3YWM2ZWQzNmMzODc1YTU4MTU3ZTcKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgTm92IDExIDExOjM2OjU0IDIwMDkgKzAxMDAKKworICAgIGRwa2ctc291cmNlKDEpOiBpbmRpY2F0ZSB0aGUgcmVjb21tZW5kZWQgc291cmNlIGZvcm1hdHMKKyAgICAKKyAgICBVbnRpbCBkcGtnLXNvdXJjZSByZWFsbHkgcHJvZHVjZXMgbmV3IGZvcm1hdHMgYnkgZGVmYXVsdCwgaXQncworICAgIGdvb2QgdG8gcmVjb21tZW5kIHVzaW5nIHRob3NlIGZvcm1hdHMgYW5kIHRvIGluZm9ybSBvdXIgdXNlcnMKKyAgICBvZiB0aGUgcGxhbiB0byBzd2l0Y2guCisgICAgCisgICAgVGhpcyBwYXJhZ3JhcGggY2FuIGJlIHJlbW92ZWQgd2hlbiBkcGtnLXNvdXJjZSBwcm9kdWNlcyBuZXcgZm9ybWF0cyBieQorICAgIGRlZmF1bHQuCisKKyBtYW4vZHBrZy1zb3VyY2UuMSB8ICAgIDUgKysrKysKKyAxIGZpbGVzIGNoYW5nZWQsIDUgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDc0ZjI2NDhlNGI4NjQ3ZmEzMGM4ODFiZjE1MjRiZTk5NTlhYTc1YTEKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgTm92IDExIDExOjE4OjM1IDIwMDkgKzAxMDAKKworICAgIGRwa2ctc291cmNlOiBsaXN0IHVwc3RyZWFtIGZpbGVzIG1vZGlmaWVkIGJ5IHRoZSBkaWZmIGR1cmluZyBidWlsZAorICAgIAorICAgIFRoaXMgb25seSBhcHBsaWVzIHRvICIxLjAiIHNvdXJjZSBwYWNrYWdlcyB1c2luZyBvcmlnLnRhci5neiArIGRpZmYuZ3ouCisgICAgCisgICAgSW4gdGhhdCBjYXNlLCBpdCBhbHNvIHJlY29tbWVuZHMgdXNhZ2Ugb2YgdGhlIG5ldyBmb3JtYXQgMy4wIChxdWlsdCkKKyAgICB0byBrZWVwIGNoYW5nZXMgc2VwYXJhdGUgYW5kIGRvY3VtZW50ZWQuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICAgICAgfCAgICA0ICsrKy0KKyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG0gfCAgIDEyICsrKysrKysrKysrLQorIDIgZmlsZXMgY2hhbmdlZCwgMTQgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDFiNjFiODI5YTc2Y2NiZDc1MzRhY2E5NjJmNDQyYTBjODBmYjEyZjgKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgTm92IDExIDEwOjQ2OjI4IDIwMDkgKzAxMDAKKworICAgIGRwa2ctc291cmNlOiBsaXN0IHVwc3RyZWFtIGZpbGVzIG1vZGlmaWVkIGJ5IHRoZSBkaWZmIGR1cmluZyBleHRyYWN0aW9uCisgICAgCisgICAgVGhpcyBvbmx5IGFwcGxpZXMgdG8gIjEuMCIgc291cmNlIHBhY2thZ2VzIHVzaW5nIG9yaWcudGFyLmd6ICsgZGlmZi5nei4KKyAgICAKKyAgICBEcGtnOjpTb3VyY2U6OlBhdGNoOjphcHBseSgpIGlzIG1vZGlmaWVkIHRvIHJldHVybiB0aGUgaGFzaHJlZiBjb250YWluaW5nCisgICAgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHBhdGNoIGFwcGxpZWQgc28gdGhhdCB3ZSBjYW4gZXh0cmFjdCB0aGUgbGlzdCBvZgorICAgIGZpbGVzIGluIERwa2c6OlNvdXJjZTo6UGFja2FnZTo6VjE6OmRvX2V4dHJhY3QoKQorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICAgICAgIHwgICAgMiArKworIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbSB8ICAgIDggKysrKysrLS0KKyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtICAgICAgfCAgICAxICsKKyAzIGZpbGVzIGNoYW5nZWQsIDkgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IGNlMmQ2ZDc3N2FhOTBiZTA3YzVkYTU4N2JjMTg0N2NhN2Y0NjVlMjYKK0F1dGhvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitEYXRlOiAgIFR1ZSBOb3YgMTAgMjE6NTc6MjQgMjAwOSArMDEwMAorCisgICAgVXBkYXRlIEdlcm1hbiBzY3JpcHRzIHRyYW5zbGF0aW9uCisgICAgCisgICAgVXBkYXRlIHRvIDQ3OXQuCisKKyBzY3JpcHRzL3BvL2RlLnBvIHwgMTMyMiArKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDY4NCBpbnNlcnRpb25zKCspLCA2MzggZGVsZXRpb25zKC0pCisKK2NvbW1pdCAxYTcyMDk0Y2I3YTFkODIyYjQ3MTY1ODZkZTlmZmM5ODdjZWE0MDE2CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIE5vdiA5IDIzOjU0OjUwIDIwMDkgKzAxMDAKKworICAgIGRwa2ctc291cmNlOiByZWFkIHN0aWNreSBvcHRpb25zIGZyb20gPGRpcj4vZGViaWFuL3NvdXJjZS9vcHRpb25zCisgICAgCisgICAgTW9kaWZ5IGRwa2ctc291cmNlIC1iLy0tcHJpbnQtZm9ybWF0IHRvIHVzZSBkZWZhdWx0IGJ1aWxkIG9wdGlvbnMgZnJvbQorICAgIGRlYmlhbi9zb3VyY2Uvb3B0aW9ucy4gVGh1cyBpdCdzIG5vdyBwb3NzaWJsZSB0byBoYXZlIHN0aWNreSBvcHRpb25zLCBmb3IKKyAgICBleGFtcGxlIGZvciB0aGUgY2hvaWNlIG9mIGEgY29tcHJlc3Npb24gbWV0aG9kICgtWjxjb21wPikuCisgICAgCisgICAgVGhlIG9wdGlvbnMgcmVhZCBmcm9tIHRoYXQgZmlsZSBhcmUgcHJpbnRlZCBpbiB0aGUgbG9nIHRvIGJldHRlciBkaWFnbm9zZQorICAgIGVycm9ycyB0aGF0IG1pZ2h0IGFwcGVhciBmcm9tIGl0cyB1c2FnZS4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgfCAgICAzICsrKworIG1hbi9kcGtnLXNvdXJjZS4xICAgICAgfCAgICA5ICsrKysrKysrKworIHNjcmlwdHMvZHBrZy1zb3VyY2UucGwgfCAgIDQzICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0KKyAzIGZpbGVzIGNoYW5nZWQsIDQ2IGluc2VydGlvbnMoKyksIDkgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBlMWZiNWU1YzZiZTAwMjQ0NjM2ZDBkZmQ3YzkyYjg4NjczYzdkODM5CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIE5vdiA5IDIyOjM5OjI1IDIwMDkgKzAxMDAKKworICAgIERwa2c6OkNvbmY6IG5ldyBtb2R1bGUgdG8gcGFyc2Ugb3B0aW9ucyBmcm9tIGEgY29uZmlndXJhdGlvbiBmaWxlCisKKyBzY3JpcHRzL0Rwa2cvQ29uZi5wbSAgIHwgIDExNyArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKKyBzY3JpcHRzL01ha2VmaWxlLmFtICAgIHwgICAgMSArCisgc2NyaXB0cy9wby9QT1RGSUxFUy5pbiB8ICAgIDEgKworIDMgZmlsZXMgY2hhbmdlZCwgMTE5IGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA1YWQ1OTJmN2VmZjY4NGU0NDE0OWFmZjhlZmE0MTkwZDJlODFmNmY4CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIE5vdiA5IDIxOjE2OjA3IDIwMDkgKzAxMDAKKworICAgIGxpYmNvbXBhdDogRG8gbm90IHByZWFsbG9jYXRlIGxpc3QgYmVmb3JlIHRoZSBsb29wIGluIHNjYW5kaXIKKyAgICAKKyAgICBMZXQgdGhlIHJlYWxsb2MgaW4gdGhlIGxvb3AgdGFrZSBjYXJlIG9mIGl0IG9uY2UgaXQncyBuZWVkZWQsIHRoaXMgd2F5CisgICAgd2UgZ2V0IHJpZCBvZiBhbiBhZGRpdGlvbmFsIHBvaW50IG9mIGZhaWx1cmUuCisKKyBsaWIvY29tcGF0L3NjYW5kaXIuYyB8ICAgMTMgKysrKysrLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCA3IGRlbGV0aW9ucygtKQorCitjb21taXQgMzY1NjExZDlmODZlMWRhOTgwMDdlNWIzYjNhMTRkZmVhMmQ1YWNkYQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBOb3YgOSAxOTowNjoxOCAyMDA5ICswMTAwCisKKyAgICBsaWJjb21wYXQ6IEZpeCByZXNvdXJjZSBsZWFrcyBvbiBlcnJvciBjb25kaXRpb25zIGluIHNjYW5kaXIKKworIFRPRE8gICAgICAgICAgICAgICAgIHwgICAgMSAtCisgbGliL2NvbXBhdC9zY2FuZGlyLmMgfCAgIDU0ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDM5IGluc2VydGlvbnMoKyksIDE2IGRlbGV0aW9ucygtKQorCitjb21taXQgM2M5ZTk5YmVlMmE1YWNmNzA2MDE3NWFlOGY0MjRlZGM2OWQzNmY3ZAorQXV0aG9yOiBSYXBoYWVsIEdlaXNzZXJ0IDxhdG9tbzY0QGdtYWlsLmNvbT4KK0RhdGU6ICAgVHVlIE5vdiAzIDE2OjM3OjU0IDIwMDkgLTA2MDAKKworICAgIGRwa2ctc3BsaXQ6IEZpeCBhIGRpcmVjdG9yeSBzdHJlYW0gbGVhaworCisgZHBrZy1zcGxpdC9xdWV1ZS5jIHwgICAgMSArCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA3NTIxNjk4OGUzMmYxOWFkNGE0ZGQxNzhkZDI1NmUzMjc2Y2I5NmQ2CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIE5vdiA5IDE3OjIyOjEwIDIwMDkgKzAxMDAKKworICAgIGRwa2ctZGViOiBGaXggYSBmaWxlIGRlc2NyaXB0b3IgbGVhaworICAgIAorICAgIFJlcG9ydGVkLWJ5OiBSYXBoYWVsIEdlaXNzZXJ0IDxhdG9tbzY0QGdtYWlsLmNvbT4KKworIGRwa2ctZGViL2luZm8uYyB8ICAgIDIgKysKKyAxIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDY4NmQyYmQ4ZWNkOGY0M2FmYTIxMTE2N2FhYmVjYzYyZjk1NDIyMzAKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gTm92IDggMTc6MzQ6MDYgMjAwOSArMDEwMAorCisgICAgZHBrZzogUmVmYWN0b3IgZmlsZW5hbWUgc3VtbWFyaXppbmcgaW50byBhIG5ldyBmdW5jdGlvbgorCisgc3JjL3Byb2Nlc3NhcmMuYyB8ICAgMzcgKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMjUgaW5zZXJ0aW9ucygrKSwgMTIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA0Nzc4MTQxMTFmODIwMzU3OTkyYjhkNTM0MWE5YTU2OGQzZTE1YzQxCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIE5vdiA5IDIxOjE4OjUyIDIwMDkgKzAxMDAKKworICAgIGRwa2ctc291cmNlOiBzcGxpdCB1c2FnZSBzdHJpbmcgaW4gc2V2ZXJhbCB0cmFuc2xhdGFibGUgc3RyaW5ncworICAgIAorICAgIEFsc28gcmVwbGFjZSBub24tYnJlYWtpbmcgc3BhY2VzIGJ5IG5vcm1hbCBzcGFjZXMuCisKKyBzY3JpcHRzL2Rwa2ctc291cmNlLnBsIHwgICAzMiArKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMTYgaW5zZXJ0aW9ucygrKSwgMTYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBmMjJjMGYwMDZmZmQ5ZDliYTM5YzU2YjAwNzJkZGNiNmFmOTZkMGFkCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIE5vdiA5IDIwOjUwOjU1IDIwMDkgKzAxMDAKKworICAgIGRwa2ctc291cmNlOiBhZGQgbmV3IC0tcHJpbnQtZm9ybWF0IGNvbW1hbmQKKyAgICAKKyAgICBUaGlzIG5ldyBjb21tYW5kIHByaW50cyB0aGUgc291cmNlIGZvcm1hdCB0aGF0IHdvdWxkIGJlIHVzZWQgdG8gYnVpbGQgdGhlCisgICAgc291cmNlIHBhY2thZ2UgaWYgImRwa2ctc291cmNlIC1iIGRpcmVjdG9yeSIgd2FzIGNhbGxlZCAoaW4gdGhlIHNhbWUKKyAgICBjb25kaXRpb25zIGFuZCB3aXRoIHRoZSBzYW1lIG9wdGlvbnMpLgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICB8ICAgIDIgKysKKyBtYW4vZHBrZy1zb3VyY2UuMSAgICAgIHwgICAgNiArKysrKysKKyBzY3JpcHRzL2Rwa2ctc291cmNlLnBsIHwgICAyNiArKysrKysrKysrKysrKysrKy0tLS0tLS0tLQorIDMgZmlsZXMgY2hhbmdlZCwgMjUgaW5zZXJ0aW9ucygrKSwgOSBkZWxldGlvbnMoLSkKKworY29tbWl0IDRmN2FkMzQ4NjE5MjA1NDcyYzI5NTJhYjU1MTUyZWYyNTVlMzhhZWYKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gT2N0IDI1IDE3OjQzOjI3IDIwMDkgKzAxMDAKKworICAgIENsZWFuIHVwIHBlcmwgc2hlYmFuZyBsaW5lCisgICAgCisgICAgVXNlIOKAnHVzZSB3YXJuaW5nc+KAnSBpbnN0ZWFkIG9mIHBhc3Npbmcg4oCcLXfigJ0uIFJlbW92ZSDigJwtLeKAnSBwYXJhbWV0ZXJzLgorICAgIFJlbW92ZSBzaGViYW5ncyBmcm9tIHBlcmwgbW9kdWxlcy4gUmVtb3ZlIHNwYWNlcyBhZnRlciDigJwjIeKAnS4KKworIGRzZWxlY3QvbWV0aG9kcy9mdHAvaW5zdGFsbCAgICAgICAgICAgfCAgICA0ICsrKy0KKyBkc2VsZWN0L21ldGhvZHMvZnRwL3NldHVwICAgICAgICAgICAgIHwgICAgNCArKystCisgZHNlbGVjdC9tZXRob2RzL2Z0cC91cGRhdGUgICAgICAgICAgICB8ICAgIDQgKysrLQorIGRzZWxlY3QvbWtjdXJrZXlzLnBsICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgc2NyaXB0cy9EcGtnL0dldHRleHQucG0gICAgICAgICAgICAgICB8ICAgIDEgLQorIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9ienIucG0gfCAgICAxIC0KKyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvZ2l0LnBtIHwgICAgMSAtCisgc2NyaXB0cy9kcGtnLWFyY2hpdGVjdHVyZS5wbCAgICAgICAgICB8ICAgIDIgKy0KKyBzY3JpcHRzL2Rwa2ctZGl2ZXJ0LnBsICAgICAgICAgICAgICAgIHwgICAgMiArLQorIHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGwgICAgICAgICAgICAgfCAgICAyICstCisgc2NyaXB0cy91cGRhdGUtYWx0ZXJuYXRpdmVzLnBsICAgICAgICB8ICAgIDIgKy0KKyAxMSBmaWxlcyBjaGFuZ2VkLCAxNCBpbnNlcnRpb25zKCspLCAxMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDM2OGM0N2I3Mzc2MzM0ZWZhY2RmMDM0N2YwMTg2MGM0MmRjOWEwMDIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gT2N0IDI1IDE3OjUwOjE4IDIwMDkgKzAxMDAKKworICAgIEV4cGFuZCB0ZXh0IGluIGxpY2Vuc2UgaGVhZGVyIGZvciB1bnZlcnNpb25lZCBHUEwKKworIGxpYi9kcGtnL3RhcmZuLmMgICAgICAgICAgICAgICB8ICAgMTkgKysrKysrKysrKysrKysrKy0tLQorIGxpYi9kcGtnL3RhcmZuLmggICAgICAgICAgICAgICB8ICAgMTkgKysrKysrKysrKysrKysrKy0tLQorIHNjcmlwdHMvZHBrZy1jaGVja2J1aWxkZGVwcy5wbCB8ICAgMTggKysrKysrKysrKysrKysrKystCisgMyBmaWxlcyBjaGFuZ2VkLCA0OSBpbnNlcnRpb25zKCspLCA3IGRlbGV0aW9ucygtKQorCitjb21taXQgYmVlOThjN2VhNzM0ODQ5ZTc0ZWE3OGYyMGIxMTY3ODg0ZDU5YTliNAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBOb3YgNyAyMjoxNzo0NyAyMDA5ICswMTAwCisKKyAgICBBZGQgbWlzc2luZyBsaWNlbnNlIGhlYWRlcnMKKworIGxpYi9kcGtnL2NvbXByZXNzaW9uLmMgICAgICAgICAgICAgIHwgICAxOCArKysrKysrKysrKysrKysrKysKKyBzY3JpcHRzL0Rwa2cucG0gICAgICAgICAgICAgICAgICAgICB8ICAgMTMgKysrKysrKysrKysrKworIHNjcmlwdHMvRHBrZy9BcmNoLnBtICAgICAgICAgICAgICAgIHwgICAxMyArKysrKysrKysrKysrCisgc2NyaXB0cy9EcGtnL0J1aWxkT3B0aW9ucy5wbSAgICAgICAgfCAgIDEzICsrKysrKysrKysrKysKKyBzY3JpcHRzL0Rwa2cvQ2hlY2tzdW1zLnBtICAgICAgICAgICB8ICAgMTMgKysrKysrKysrKysrKworIHNjcmlwdHMvRHBrZy9Db21wcmVzc2lvbi5wbSAgICAgICAgIHwgICAxMyArKysrKysrKysrKysrCisgc2NyaXB0cy9EcGtnL0NvbnRyb2wvVHlwZXMucG0gICAgICAgfCAgIDEzICsrKysrKysrKysrKysKKyBzY3JpcHRzL0Rwa2cvRXJyb3JIYW5kbGluZy5wbSAgICAgICB8ICAgMTMgKysrKysrKysrKysrKworIHNjcmlwdHMvRHBrZy9FeGl0LnBtICAgICAgICAgICAgICAgIHwgICAxMyArKysrKysrKysrKysrCisgc2NyaXB0cy9EcGtnL0dldHRleHQucG0gICAgICAgICAgICAgfCAgIDIxICsrKysrKysrKysrKysrKysrKysrKworIHNjcmlwdHMvRHBrZy9Tb3VyY2UvRnVuY3Rpb25zLnBtICAgIHwgICAxMyArKysrKysrKysrKysrCisgc2NyaXB0cy9jaGFuZ2Vsb2cvZGViaWFuLnBsICAgICAgICAgfCAgIDE1ICsrKysrKysrKysrKysrKworIHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGwgICAgICAgIHwgICAxNSArKysrKysrKysrKysrKysKKyBzY3JpcHRzL2Rwa2ctZGlzdGFkZGZpbGUucGwgICAgICAgICB8ICAgMTUgKysrKysrKysrKysrKysrCisgc2NyaXB0cy9kcGtnLWRpdmVydC5wbCAgICAgICAgICAgICAgfCAgIDE1ICsrKysrKysrKysrKysrKworIHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsICAgICAgICAgIHwgICAxNSArKysrKysrKysrKysrKysKKyBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbCAgICAgICAgICB8ICAgMTUgKysrKysrKysrKysrKysrCisgc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGwgICAgICAgICAgfCAgIDE1ICsrKysrKysrKysrKysrKworIHNjcmlwdHMvZHBrZy1wYXJzZWNoYW5nZWxvZy5wbCAgICAgIHwgICAxNSArKysrKysrKysrKysrKysKKyBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsICAgICAgICB8ICAgMTUgKysrKysrKysrKysrKysrCisgc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbCAgICAgICAgICAgfCAgIDE1ICsrKysrKysrKysrKysrKworIHNjcmlwdHMvZHBrZy1zb3VyY2UucGwgICAgICAgICAgICAgIHwgICAxNSArKysrKysrKysrKysrKysKKyBzY3JpcHRzL3QvMDAwX3BvZC50ICAgICAgICAgICAgICAgICB8ICAgMTMgKysrKysrKysrKysrKworIHNjcmlwdHMvdC8xMDBfRHBrZ19WZXJzaW9uLnQgICAgICAgIHwgICAxMyArKysrKysrKysrKysrCisgc2NyaXB0cy90LzIwMF9EcGtnX1NobGlicy50ICAgICAgICAgfCAgIDEzICsrKysrKysrKysrKysKKyBzY3JpcHRzL3QvMzAwX0Rwa2dfQnVpbGRPcHRpb25zLnQgICB8ICAgMTMgKysrKysrKysrKysrKworIHNjcmlwdHMvdC80MDBfRHBrZ19EZXBzLnQgICAgICAgICAgIHwgICAxMyArKysrKysrKysrKysrCisgc2NyaXB0cy90LzUwMF9EcGtnX1BhdGgudCAgICAgICAgICAgfCAgIDEzICsrKysrKysrKysrKysKKyBzY3JpcHRzL3QvNjAwX0Rwa2dfQ2hhbmdlbG9nLnQgICAgICB8ICAgMTMgKysrKysrKysrKysrKworIHNjcmlwdHMvdC83MDBfRHBrZ19Db250cm9sLnQgICAgICAgIHwgICAxMyArKysrKysrKysrKysrCisgc2NyaXB0cy90Lzc1MF9EcGtnX1N1YnN0dmFycy50ICAgICAgfCAgIDEzICsrKysrKysrKysrKysKKyBzY3JpcHRzL3QvODAwX0Rwa2dfSVBDLnQgICAgICAgICAgICB8ICAgMTMgKysrKysrKysrKysrKworIHNjcmlwdHMvdC85MDBfdXBkYXRlX2FsdGVybmF0aXZlcy50IHwgICAxMyArKysrKysrKysrKysrCisgc2NyaXB0cy91cGRhdGUtYWx0ZXJuYXRpdmVzLnBsICAgICAgfCAgIDE1ICsrKysrKysrKysrKysrKworIDM0IGZpbGVzIGNoYW5nZWQsIDQ3OSBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgOTQ0N2MxNzk1MTM1Zjk2NThjMDg4ZGE5MGZlZTEyZTQyYzQ2OTAyMAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBOb3YgNyAyMjowNTo1MyAyMDA5ICswMTAwCisKKyAgICBVbmlmeSBmb3JtYXQgaW4gbGljZW5zZSBoZWFkZXJzCisgICAgCisgICAgSW5kZW50IGxpY2Vuc2UgdGV4dCB0byBvbmUgc3BhY2UgYWZ0ZXIgdGhlICcjJy4gQWRkICcjJyB0byBibGFuayBsaW5lcworICAgIGJldHdlZW4gcGFyYWdyYXBocyBhbmQgcmVtb3ZlIHRyYWlsaW5nICcjJyBhZnRlciB0aGUgbGljZW5zZSB0ZXh0LgorCisgZHBrZy1zcGxpdC9ta3NwbGl0LnBsICAgICAgICAgICAgICAgICAgICB8ICAgMjAgKysrKysrKysrKy0tLS0tLS0tLS0KKyBkc2VsZWN0L21ldGhvZHMvZnRwL2luc3RhbGwgICAgICAgICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvbWV0aG9kcy9mdHAvc2V0dXAgICAgICAgICAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9tZXRob2RzL2Z0cC91cGRhdGUgICAgICAgICAgICAgICB8ICAgIDIgKy0KKyBkc2VsZWN0L21ldGhvZHMvbXVsdGljZC9pbnN0YWxsICAgICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvbWV0aG9kcy9tdWx0aWNkL3NldHVwICAgICAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9tZXRob2RzL211bHRpY2QvdXBkYXRlICAgICAgICAgICB8ICAgIDIgKy0KKyBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtICAgICAgICAgICAgICAgIHwgICAyMSArKysrKysrKysrLS0tLS0tLS0tLS0KKyBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0RlYmlhbi5wbSAgICAgICAgIHwgICAyMSArKysrKysrKysrLS0tLS0tLS0tLS0KKyBzY3JpcHRzL0Rwa2cvQ29udHJvbC9JbmZvLnBtICAgICAgICAgICAgIHwgICAgNiArKystLS0KKyBzY3JpcHRzL0Rwa2cvSVBDLnBtICAgICAgICAgICAgICAgICAgICAgIHwgICAgNiArKystLS0KKyBzY3JpcHRzL0Rwa2cvUGF0aC5wbSAgICAgICAgICAgICAgICAgICAgIHwgICAgNiArKystLS0KKyBzY3JpcHRzL0Rwa2cvU2hsaWJzLnBtICAgICAgICAgICAgICAgICAgIHwgICAgNiArKystLS0KKyBzY3JpcHRzL0Rwa2cvU2hsaWJzL09iamR1bXAucG0gICAgICAgICAgIHwgICAgNiArKystLS0KKyBzY3JpcHRzL0Rwa2cvU2hsaWJzL1N5bWJvbC5wbSAgICAgICAgICAgIHwgICAgNiArKystLS0KKyBzY3JpcHRzL0Rwa2cvU2hsaWJzL1N5bWJvbEZpbGUucG0gICAgICAgIHwgICAgNiArKystLS0KKyBzY3JpcHRzL0Rwa2cvU291cmNlL0FyY2hpdmUucG0gICAgICAgICAgIHwgICAgNiArKystLS0KKyBzY3JpcHRzL0Rwa2cvU291cmNlL0NvbXByZXNzZWRGaWxlLnBtICAgIHwgICAgNiArKystLS0KKyBzY3JpcHRzL0Rwa2cvU291cmNlL0NvbXByZXNzb3IucG0gICAgICAgIHwgICAgNiArKystLS0KKyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG0gICAgICAgICAgIHwgICAgNiArKystLS0KKyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG0gICAgICAgIHwgICAgNiArKystLS0KKyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG0gICAgICAgIHwgICAgNiArKystLS0KKyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvYnpyLnBtICAgIHwgICAgMSArCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2N1c3RvbS5wbSB8ICAgIDYgKysrLS0tCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2dpdC5wbSAgICB8ICAgIDEgKworIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9uYXRpdmUucG0gfCAgICA2ICsrKy0tLQorIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbSAgfCAgICA2ICsrKy0tLQorIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG0gICAgICAgICAgICAgfCAgICA2ICsrKy0tLQorIHNjcmlwdHMvRHBrZy9TdWJzdHZhcnMucG0gICAgICAgICAgICAgICAgfCAgICA2ICsrKy0tLQorIHNjcmlwdHMvRHBrZy9WYXJzLnBtICAgICAgICAgICAgICAgICAgICAgfCAgICA2ICsrKy0tLQorIHNjcmlwdHMvRHBrZy9WZW5kb3IucG0gICAgICAgICAgICAgICAgICAgfCAgICA2ICsrKy0tLQorIHNjcmlwdHMvRHBrZy9WZW5kb3IvRGViaWFuLnBtICAgICAgICAgICAgfCAgICA2ICsrKy0tLQorIHNjcmlwdHMvRHBrZy9WZW5kb3IvRGVmYXVsdC5wbSAgICAgICAgICAgfCAgICA2ICsrKy0tLQorIHNjcmlwdHMvRHBrZy9WZW5kb3IvVWJ1bnR1LnBtICAgICAgICAgICAgfCAgICA2ICsrKy0tLQorIHNjcmlwdHMvRHBrZy9WZXJzaW9uLnBtICAgICAgICAgICAgICAgICAgfCAgICA2ICsrKy0tLQorIHNjcmlwdHMvZHBrZy1uYW1lLnBsICAgICAgICAgICAgICAgICAgICAgfCAgICAxIC0KKyAzNiBmaWxlcyBjaGFuZ2VkLCAxMTAgaW5zZXJ0aW9ucygrKSwgMTExIGRlbGV0aW9ucygtKQorCitjb21taXQgNDg1ZTA0MWUyNjcyOTcwYTU2YTYxY2VjMTMzMWYzMTQ5ZTc2ZWYwYgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBPY3QgMjQgMTQ6MjM6MzEgMjAwOSArMDIwMAorCisgICAgRml4IGNvcHlyaWdodCBzdGF0ZW1lbnRzCisgICAgCisgICAgVXNlIFVURi04IGNvcHlyaWdodCBzeW1ib2wgaW5zdGVhZCBvZiDigJwoQynigJ0uIEFkZCBtaXNzaW5nIOKAnENvcHlyaWdodCDCqeKAnQorICAgIHRvIGNvcHlyaWdodCBzdGF0ZW1lbnRzIGluc3RlYWQgb2YgcmVseWluZyBvbiB0aGUgZmlyc3Qgb2NjdXJhbmNlLgorICAgIFVzZSBwcm9wZXJseSBzcGVsbGVkIG5hbWVzLgorCisgZHBrZy1zcGxpdC9ta3NwbGl0LnBsICAgICAgICAgICAgIHwgICAgMiArLQorIGRzZWxlY3Qva2V5b3ZlcnJpZGUgICAgICAgICAgICAgICB8ICAgIDIgKy0KKyBkc2VsZWN0L21ldGhvZHMvZnRwL2luc3RhbGwgICAgICAgfCAgICA2ICsrKy0tLQorIGRzZWxlY3QvbWV0aG9kcy9mdHAvc2V0dXAgICAgICAgICB8ICAgIDYgKysrLS0tCisgZHNlbGVjdC9tZXRob2RzL2Z0cC91cGRhdGUgICAgICAgIHwgICAgNiArKystLS0KKyBkc2VsZWN0L21ldGhvZHMvbXVsdGljZC9pbnN0YWxsICAgfCAgICA0ICsrLS0KKyBkc2VsZWN0L21ldGhvZHMvbXVsdGljZC9zZXR1cCAgICAgfCAgICA0ICsrLS0KKyBkc2VsZWN0L21ldGhvZHMvbXVsdGljZC91cGRhdGUgICAgfCAgICA0ICsrLS0KKyBtYW4vZGViLXNobGlicy41ICAgICAgICAgICAgICAgICAgfCAgICA0ICsrLS0KKyBtYW4vZHBrZy1zY2FucGFja2FnZXMuMSAgICAgICAgICAgfCAgICAyICstCisgc2NyaXB0cy9EcGtnL0RlcHMucG0gICAgICAgICAgICAgIHwgICAgMiArLQorIHNjcmlwdHMvRHBrZy9TaGxpYnMucG0gICAgICAgICAgICB8ICAgIDIgKy0KKyBzY3JpcHRzL0Rwa2cvU2hsaWJzL09iamR1bXAucG0gICAgfCAgICAyICstCisgc2NyaXB0cy9EcGtnL1NobGlicy9TeW1ib2wucG0gICAgIHwgICAgNCArKy0tCisgc2NyaXB0cy9EcGtnL1NobGlicy9TeW1ib2xGaWxlLnBtIHwgICAgNCArKy0tCisgc2NyaXB0cy9EcGtnL1ZlbmRvci9VYnVudHUucG0gICAgIHwgICAgNSArKystLQorIDE2IGZpbGVzIGNoYW5nZWQsIDMwIGluc2VydGlvbnMoKyksIDI5IGRlbGV0aW9ucygtKQorCitjb21taXQgN2JhM2Y3MWMwYzgyMzk5MDI2NDhiMDViMTA4YTRlODM5N2I3ODE0NAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBOb3YgNyAyMTo0OToxMiAyMDA5ICswMTAwCisKKyAgICBVbmlmeSB0ZXh0IGluIGxpY2Vuc2UgaGVhZGVycworICAgIAorICAgIEFkZCBhIG1pc3Npbmcg4oCcb2YgdGhlIExpY2Vuc2XigJ0gYWZ0ZXIg4oCcdmVyc2lvbiAy4oCdLiBNb3ZlIOKAnGJ1dOKAnSBhbmQg4oCcR05V4oCdCisgICAgYXQgdGhlIGVuZCBvZiBsaW5lIHRvIHRoZSBuZXh0IGxpbmUuIFRoaXMgbWF0Y2hlcyBtb3JlIGNsb3NlbHkgdGhlCisgICAgcGFyYWdyYXBoIGZvdW5kIGluIHRoZSBsaWNlbnNlIHRleHQgZm9yIHRoZSBHUEwgdmVyc2lvbiAyLgorCisgZGViaWFuL2NvcHlyaWdodCAgICAgICAgICAgIHwgICAgOCArKysrLS0tLQorIGRwa2ctZGViL2J1aWxkLmMgICAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGRwa2ctZGViL2Rwa2ctZGViLmggICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGRwa2ctZGViL2V4dHJhY3QuYyAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGRwa2ctZGViL2luZm8uYyAgICAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGRwa2ctZGViL21haW4uYyAgICAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGRwa2ctc3BsaXQvZHBrZy1zcGxpdC5oICAgICB8ICAgMTAgKysrKystLS0tLQorIGRwa2ctc3BsaXQvaW5mby5jICAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGRwa2ctc3BsaXQvam9pbi5jICAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGRwa2ctc3BsaXQvbWFpbi5jICAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGRwa2ctc3BsaXQvbWtzcGxpdC5wbCAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGRwa2ctc3BsaXQvcXVldWUuYyAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGRwa2ctc3BsaXQvc3BsaXQuYyAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGRzZWxlY3QvYmFzZWNtZHMuY2MgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGRzZWxlY3QvYmFzZWxpc3QuY2MgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGRzZWxlY3QvYmFzZXRvcC5jYyAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGRzZWxlY3QvYmluZGluZ3MuY2MgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGRzZWxlY3QvYmluZGluZ3MuaCAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGRzZWxlY3QvY3Vya2V5cy5jYyAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGRzZWxlY3QvZHNlbGVjdC1jdXJzZXMuaCAgICB8ICAgMTAgKysrKystLS0tLQorIGRzZWxlY3QvZHNlbGVjdC5oICAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGRzZWxlY3QvaGVscG1zZ3MuY2MgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGRzZWxlY3QvaGVscG1zZ3MuaCAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGRzZWxlY3Qva2V5b3ZlcnJpZGUgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGRzZWxlY3QvbWFpbi5jYyAgICAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGRzZWxlY3QvbWV0aGtleXMuY2MgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGRzZWxlY3QvbWV0aGxpc3QuY2MgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGRzZWxlY3QvbWV0aG9kLmNjICAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGRzZWxlY3QvbWV0aG9kLmggICAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGRzZWxlY3QvbWV0aHBhcnNlLmNjICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGRzZWxlY3QvbWtjdXJrZXlzLnBsICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGRzZWxlY3QvcGtnY21kcy5jYyAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGRzZWxlY3QvcGtnZGVwY29uLmNjICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGRzZWxlY3QvcGtnZGlzcGxheS5jYyAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGRzZWxlY3QvcGtnaW5mby5jYyAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGRzZWxlY3QvcGtna2V5cy5jYyAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGRzZWxlY3QvcGtnbGlzdC5jYyAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGRzZWxlY3QvcGtnbGlzdC5oICAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGRzZWxlY3QvcGtnc3VibGlzdC5jYyAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGRzZWxlY3QvcGtndG9wLmNjICAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9jb21wYXQvYWxwaGFzb3J0LmMgICAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9jb21wYXQvY29tcGF0LmggICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9jb21wYXQvc2NhbmRpci5jICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9jb21wYXQvc25wcmludGYuYyAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9jb21wYXQvc3RyZXJyb3IuYyAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9jb21wYXQvc3Ryc2lnbmFsLmMgICAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9jb21wYXQvdW5zZXRlbnYuYyAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9jb21wYXQvdnNucHJpbnRmLmMgICAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9kcGtnL2J1ZmZlci5jICAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9kcGtnL2J1ZmZlci5oICAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9kcGtnL2NsZWFudXAuYyAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9kcGtnL2RhdGFiYXNlLmMgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9kcGtnL2RibW9kaWZ5LmMgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9kcGtnL2RsaXN0LmggICAgICAgICAgICB8ICAgIDQgKystLQorIGxpYi9kcGtnL2Rwa2ctZGIuaCAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9kcGtnL2Rwa2cuaCAgICAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9kcGtnL2R1bXAuYyAgICAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9kcGtnL2VoYW5kbGUuYyAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9kcGtnL2ZpZWxkcy5jICAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9kcGtnL2ZpbGUuYyAgICAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9kcGtnL2ZpbGUuaCAgICAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9kcGtnL2kxOG4uaCAgICAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9kcGtnL2xvY2suYyAgICAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9kcGtnL2xvZy5jICAgICAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9kcGtnL21hY3Jvcy5oICAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9kcGtnL21saWIuYyAgICAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9kcGtnL215b3B0LXV0aWwuYyAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9kcGtnL215b3B0LmMgICAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9kcGtnL215b3B0LmggICAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9kcGtnL25mbWFsbG9jLmMgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9kcGtnL3BhcnNlLmMgICAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9kcGtnL3BhcnNlZHVtcC5oICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9kcGtnL3BhcnNlaGVscC5jICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9kcGtnL3BhdGguYyAgICAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9kcGtnL3BhdGguaCAgICAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9kcGtnL3BrZy1hcnJheS5jICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9kcGtnL3BrZy1hcnJheS5oICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9kcGtnL3BrZy1saXN0LmMgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9kcGtnL3BrZy1saXN0LmggICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9kcGtnL3BrZy5jICAgICAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9kcGtnL3BrZy5oICAgICAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9kcGtnL3Byb2dyZXNzLmMgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9kcGtnL3Byb2dyZXNzLmggICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9kcGtnL3Nob3dwa2cuYyAgICAgICAgICB8ICAgIDQgKystLQorIGxpYi9kcGtnL3N0cmluZy5jICAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9kcGtnL3N0cmluZy5oICAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9kcGtnL3N1YnByb2MuYyAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9kcGtnL3N1YnByb2MuaCAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9kcGtnL3Rlc3QuaCAgICAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9kcGtnL3Rlc3QvdC1idWZmZXIuYyAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9kcGtnL3Rlc3QvdC1tYWNyb3MuYyAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9kcGtnL3Rlc3QvdC1wYXRoLmMgICAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9kcGtnL3Rlc3QvdC1wa2dpbmZvLmMgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9kcGtnL3Rlc3QvdC1zdHJpbmcuYyAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9kcGtnL3Rlc3QvdC10ZXN0LmMgICAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9kcGtnL3Rlc3QvdC12YXJidWYuYyAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9kcGtnL3Rlc3QvdC12ZXJzaW9uLmMgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sICAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9kcGtnL3RyaWdsaWIuYyAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9kcGtnL3V0aWxzLmMgICAgICAgICAgICB8ICAgIDQgKystLQorIGxpYi9kcGtnL3ZhcmJ1Zi5jICAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9kcGtnL3ZhcmJ1Zi5oICAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIGxpYi9kcGtnL3ZlcmNtcC5jICAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIG1hbi9kZWItb3ZlcnJpZGUuNSAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIG1hbi9kZWItc2hsaWJzLjUgICAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIG1hbi9kcGtnLXNjYW5wYWNrYWdlcy4xICAgICB8ICAgMTAgKysrKystLS0tLQorIHNjcmlwdHMvRHBrZy9EZXBzLnBtICAgICAgICB8ICAgMTIgKysrKysrLS0tLS0tCisgc2NyaXB0cy9kcGtnLXNjYW5zb3VyY2VzLnBsIHwgICAgNCArKy0tCisgc3JjL2FyY2hpdmVzLmMgICAgICAgICAgICAgIHwgICAxMCArKysrKy0tLS0tCisgc3JjL2FyY2hpdmVzLmggICAgICAgICAgICAgIHwgICAxMCArKysrKy0tLS0tCisgc3JjL2NsZWFudXAuYyAgICAgICAgICAgICAgIHwgICAxMCArKysrKy0tLS0tCisgc3JjL2NvbmZpZ3VyZS5jICAgICAgICAgICAgIHwgICAxMCArKysrKy0tLS0tCisgc3JjL2RlcGNvbi5jICAgICAgICAgICAgICAgIHwgICAxMCArKysrKy0tLS0tCisgc3JjL2RpdmVydGRiLmMgICAgICAgICAgICAgIHwgICAxMCArKysrKy0tLS0tCisgc3JjL2VucXVpcnkuYyAgICAgICAgICAgICAgIHwgICAxMCArKysrKy0tLS0tCisgc3JjL2Vycm9ycy5jICAgICAgICAgICAgICAgIHwgICAxMCArKysrKy0tLS0tCisgc3JjL2ZpbGVzZGIuYyAgICAgICAgICAgICAgIHwgICAxMCArKysrKy0tLS0tCisgc3JjL2ZpbGVzZGIuaCAgICAgICAgICAgICAgIHwgICAxMCArKysrKy0tLS0tCisgc3JjL2hlbHAuYyAgICAgICAgICAgICAgICAgIHwgICAxMCArKysrKy0tLS0tCisgc3JjL21haW4uYyAgICAgICAgICAgICAgICAgIHwgICAxMCArKysrKy0tLS0tCisgc3JjL21haW4uaCAgICAgICAgICAgICAgICAgIHwgICAxMCArKysrKy0tLS0tCisgc3JjL3BhY2thZ2VzLmMgICAgICAgICAgICAgIHwgICAxMCArKysrKy0tLS0tCisgc3JjL3BrZy1zaG93LmMgICAgICAgICAgICAgIHwgICAxMCArKysrKy0tLS0tCisgc3JjL3Byb2Nlc3NhcmMuYyAgICAgICAgICAgIHwgICAxMCArKysrKy0tLS0tCisgc3JjL3F1ZXJ5LmMgICAgICAgICAgICAgICAgIHwgICAxMCArKysrKy0tLS0tCisgc3JjL3JlbW92ZS5jICAgICAgICAgICAgICAgIHwgICAxMCArKysrKy0tLS0tCisgc3JjL3NlbGVjdC5jICAgICAgICAgICAgICAgIHwgICAxMCArKysrKy0tLS0tCisgc3JjL3N0YXRjbWQuYyAgICAgICAgICAgICAgIHwgICAxMCArKysrKy0tLS0tCisgc3JjL3N0YXRkYi5jICAgICAgICAgICAgICAgIHwgICAxMCArKysrKy0tLS0tCisgc3JjL3RyaWdjbWQuYyAgICAgICAgICAgICAgIHwgICAxMCArKysrKy0tLS0tCisgc3JjL3RyaWdwcm9jLmMgICAgICAgICAgICAgIHwgICAxMCArKysrKy0tLS0tCisgc3JjL3VwZGF0ZS5jICAgICAgICAgICAgICAgIHwgICAxMCArKysrKy0tLS0tCisgdXRpbHMvaW5zdGFsbC1pbmZvLmMgICAgICAgIHwgICAxMCArKysrKy0tLS0tCisgMTMzIGZpbGVzIGNoYW5nZWQsIDY1MyBpbnNlcnRpb25zKCspLCA2NTMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBkOTlkMzYxZjFiOGUwNzUyMmNjYmZmYzMyNDkzZTEyODBiNTg4MTgzCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IE5vdiA3IDE5OjQ3OjQxIDIwMDkgKzAxMDAKKworICAgIFJlcGxhY2UgRlNGIGFkZHJlc3MgYnkgcG9pbnRpbmcgdG8gdGhlIGdudS5vcmcgVVJMCisgICAgCisgICAgVXNlIHRoZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4gVVJMLCBpbnN0ZWFkIG9mIGluIG1vc3QgY2FzZXMKKyAgICB0aGUgb3V0ZGF0ZWQgRlNGIGFkZHJlc3MsIHdoaWNoIGlzIHdheSBtb3JlIHN0YWJsZSwgYXMgdGhlIGxhdHRlciBoYXMKKyAgICBjaGFuZ2VkIHNldmVyYWwgdGltZXMgaW4gdGhlIHBhc3QuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMiArKworIGRwa2ctZGViL2J1aWxkLmMgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA1ICsrLS0tCisgZHBrZy1kZWIvZHBrZy1kZWIuaCAgICAgICAgICAgICAgICAgICAgICB8ICAgIDUgKystLS0KKyBkcGtnLWRlYi9leHRyYWN0LmMgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNSArKy0tLQorIGRwa2ctZGViL2luZm8uYyAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA1ICsrLS0tCisgZHBrZy1kZWIvbWFpbi5jICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDUgKystLS0KKyBkcGtnLXNwbGl0L2Rwa2ctc3BsaXQuaCAgICAgICAgICAgICAgICAgIHwgICAgNSArKy0tLQorIGRwa2ctc3BsaXQvaW5mby5jICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA1ICsrLS0tCisgZHBrZy1zcGxpdC9qb2luLmMgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDUgKystLS0KKyBkcGtnLXNwbGl0L21haW4uYyAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNSArKy0tLQorIGRwa2ctc3BsaXQvbWtzcGxpdC5wbCAgICAgICAgICAgICAgICAgICAgfCAgICA1ICsrLS0tCisgZHBrZy1zcGxpdC9xdWV1ZS5jICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDUgKystLS0KKyBkcGtnLXNwbGl0L3NwbGl0LmMgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNSArKy0tLQorIGRzZWxlY3QvYmFzZWNtZHMuY2MgICAgICAgICAgICAgICAgICAgICAgfCAgICA1ICsrLS0tCisgZHNlbGVjdC9iYXNlbGlzdC5jYyAgICAgICAgICAgICAgICAgICAgICB8ICAgIDUgKystLS0KKyBkc2VsZWN0L2Jhc2V0b3AuY2MgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNSArKy0tLQorIGRzZWxlY3QvYmluZGluZ3MuY2MgICAgICAgICAgICAgICAgICAgICAgfCAgICA1ICsrLS0tCisgZHNlbGVjdC9iaW5kaW5ncy5oICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDUgKystLS0KKyBkc2VsZWN0L2N1cmtleXMuY2MgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNSArKy0tLQorIGRzZWxlY3QvZHNlbGVjdC1jdXJzZXMuaCAgICAgICAgICAgICAgICAgfCAgICA1ICsrLS0tCisgZHNlbGVjdC9kc2VsZWN0LmggICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDUgKystLS0KKyBkc2VsZWN0L2hlbHBtc2dzLmNjICAgICAgICAgICAgICAgICAgICAgIHwgICAgNSArKy0tLQorIGRzZWxlY3QvaGVscG1zZ3MuaCAgICAgICAgICAgICAgICAgICAgICAgfCAgICA1ICsrLS0tCisgZHNlbGVjdC9rZXlvdmVycmlkZSAgICAgICAgICAgICAgICAgICAgICB8ICAgIDUgKystLS0KKyBkc2VsZWN0L21haW4uY2MgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNSArKy0tLQorIGRzZWxlY3QvbWV0aGtleXMuY2MgICAgICAgICAgICAgICAgICAgICAgfCAgICA1ICsrLS0tCisgZHNlbGVjdC9tZXRobGlzdC5jYyAgICAgICAgICAgICAgICAgICAgICB8ICAgIDUgKystLS0KKyBkc2VsZWN0L21ldGhvZC5jYyAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNSArKy0tLQorIGRzZWxlY3QvbWV0aG9kLmggICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA1ICsrLS0tCisgZHNlbGVjdC9tZXRob2RzL211bHRpY2QvaW5zdGFsbCAgICAgICAgICB8ICAgIDMgKy0tCisgZHNlbGVjdC9tZXRob2RzL211bHRpY2Qvc2V0dXAgICAgICAgICAgICB8ICAgIDMgKy0tCisgZHNlbGVjdC9tZXRob2RzL211bHRpY2QvdXBkYXRlICAgICAgICAgICB8ICAgIDMgKy0tCisgZHNlbGVjdC9tZXRocGFyc2UuY2MgICAgICAgICAgICAgICAgICAgICB8ICAgIDUgKystLS0KKyBkc2VsZWN0L21rY3Vya2V5cy5wbCAgICAgICAgICAgICAgICAgICAgIHwgICAgNSArKy0tLQorIGRzZWxlY3QvcGtnY21kcy5jYyAgICAgICAgICAgICAgICAgICAgICAgfCAgICA1ICsrLS0tCisgZHNlbGVjdC9wa2dkZXBjb24uY2MgICAgICAgICAgICAgICAgICAgICB8ICAgIDUgKystLS0KKyBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2MgICAgICAgICAgICAgICAgICAgIHwgICAgNSArKy0tLQorIGRzZWxlY3QvcGtnaW5mby5jYyAgICAgICAgICAgICAgICAgICAgICAgfCAgICA1ICsrLS0tCisgZHNlbGVjdC9wa2drZXlzLmNjICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDUgKystLS0KKyBkc2VsZWN0L3BrZ2xpc3QuY2MgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNSArKy0tLQorIGRzZWxlY3QvcGtnbGlzdC5oICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA1ICsrLS0tCisgZHNlbGVjdC9wa2dzdWJsaXN0LmNjICAgICAgICAgICAgICAgICAgICB8ICAgIDUgKystLS0KKyBkc2VsZWN0L3BrZ3RvcC5jYyAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNSArKy0tLQorIGdldC12ZXJzaW9uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAzICstLQorIGxpYi9jb21wYXQvYWxwaGFzb3J0LmMgICAgICAgICAgICAgICAgICAgfCAgICA1ICsrLS0tCisgbGliL2NvbXBhdC9jb21wYXQuaCAgICAgICAgICAgICAgICAgICAgICB8ICAgIDUgKystLS0KKyBsaWIvY29tcGF0L3NjYW5kaXIuYyAgICAgICAgICAgICAgICAgICAgIHwgICAgNSArKy0tLQorIGxpYi9jb21wYXQvc25wcmludGYuYyAgICAgICAgICAgICAgICAgICAgfCAgICA1ICsrLS0tCisgbGliL2NvbXBhdC9zdHJlcnJvci5jICAgICAgICAgICAgICAgICAgICB8ICAgIDUgKystLS0KKyBsaWIvY29tcGF0L3N0cnNpZ25hbC5jICAgICAgICAgICAgICAgICAgIHwgICAgNSArKy0tLQorIGxpYi9jb21wYXQvdW5zZXRlbnYuYyAgICAgICAgICAgICAgICAgICAgfCAgICA1ICsrLS0tCisgbGliL2NvbXBhdC92c25wcmludGYuYyAgICAgICAgICAgICAgICAgICB8ICAgIDUgKystLS0KKyBsaWIvZHBrZy9idWZmZXIuYyAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNSArKy0tLQorIGxpYi9kcGtnL2J1ZmZlci5oICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA1ICsrLS0tCisgbGliL2Rwa2cvY2xlYW51cC5jICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDUgKystLS0KKyBsaWIvZHBrZy9kYXRhYmFzZS5jICAgICAgICAgICAgICAgICAgICAgIHwgICAgNSArKy0tLQorIGxpYi9kcGtnL2RibW9kaWZ5LmMgICAgICAgICAgICAgICAgICAgICAgfCAgICA1ICsrLS0tCisgbGliL2Rwa2cvZGxpc3QuaCAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDMgKy0tCisgbGliL2Rwa2cvZHBrZy1kYi5oICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDUgKystLS0KKyBsaWIvZHBrZy9kcGtnLmggICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNSArKy0tLQorIGxpYi9kcGtnL2R1bXAuYyAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA1ICsrLS0tCisgbGliL2Rwa2cvZWhhbmRsZS5jICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDUgKystLS0KKyBsaWIvZHBrZy9maWVsZHMuYyAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNSArKy0tLQorIGxpYi9kcGtnL2ZpbGUuYyAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA1ICsrLS0tCisgbGliL2Rwa2cvZmlsZS5oICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDUgKystLS0KKyBsaWIvZHBrZy9pMThuLmggICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNSArKy0tLQorIGxpYi9kcGtnL2xvY2suYyAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA1ICsrLS0tCisgbGliL2Rwa2cvbG9nLmMgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDUgKystLS0KKyBsaWIvZHBrZy9tYWNyb3MuaCAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNSArKy0tLQorIGxpYi9kcGtnL21saWIuYyAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA1ICsrLS0tCisgbGliL2Rwa2cvbXlvcHQtdXRpbC5jICAgICAgICAgICAgICAgICAgICB8ICAgIDUgKystLS0KKyBsaWIvZHBrZy9teW9wdC5jICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNSArKy0tLQorIGxpYi9kcGtnL215b3B0LmggICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA1ICsrLS0tCisgbGliL2Rwa2cvbmZtYWxsb2MuYyAgICAgICAgICAgICAgICAgICAgICB8ICAgIDUgKystLS0KKyBsaWIvZHBrZy9wYXJzZS5jICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNSArKy0tLQorIGxpYi9kcGtnL3BhcnNlZHVtcC5oICAgICAgICAgICAgICAgICAgICAgfCAgICA1ICsrLS0tCisgbGliL2Rwa2cvcGFyc2VoZWxwLmMgICAgICAgICAgICAgICAgICAgICB8ICAgIDUgKystLS0KKyBsaWIvZHBrZy9wYXRoLmMgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNSArKy0tLQorIGxpYi9kcGtnL3BhdGguaCAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA1ICsrLS0tCisgbGliL2Rwa2cvcGtnLWFycmF5LmMgICAgICAgICAgICAgICAgICAgICB8ICAgIDUgKystLS0KKyBsaWIvZHBrZy9wa2ctYXJyYXkuaCAgICAgICAgICAgICAgICAgICAgIHwgICAgNSArKy0tLQorIGxpYi9kcGtnL3BrZy1saXN0LmMgICAgICAgICAgICAgICAgICAgICAgfCAgICA1ICsrLS0tCisgbGliL2Rwa2cvcGtnLWxpc3QuaCAgICAgICAgICAgICAgICAgICAgICB8ICAgIDUgKystLS0KKyBsaWIvZHBrZy9wa2cuYyAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNSArKy0tLQorIGxpYi9kcGtnL3BrZy5oICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA1ICsrLS0tCisgbGliL2Rwa2cvcHJvZ3Jlc3MuYyAgICAgICAgICAgICAgICAgICAgICB8ICAgIDUgKystLS0KKyBsaWIvZHBrZy9wcm9ncmVzcy5oICAgICAgICAgICAgICAgICAgICAgIHwgICAgNSArKy0tLQorIGxpYi9kcGtnL3Nob3dwa2cuYyAgICAgICAgICAgICAgICAgICAgICAgfCAgICA1ICsrLS0tCisgbGliL2Rwa2cvc3RyaW5nLmMgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDUgKystLS0KKyBsaWIvZHBrZy9zdHJpbmcuaCAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNSArKy0tLQorIGxpYi9kcGtnL3N1YnByb2MuYyAgICAgICAgICAgICAgICAgICAgICAgfCAgICA1ICsrLS0tCisgbGliL2Rwa2cvc3VicHJvYy5oICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDUgKystLS0KKyBsaWIvZHBrZy90ZXN0LmggICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNSArKy0tLQorIGxpYi9kcGtnL3Rlc3QvdC1idWZmZXIuYyAgICAgICAgICAgICAgICAgfCAgICA1ICsrLS0tCisgbGliL2Rwa2cvdGVzdC90LW1hY3Jvcy5jICAgICAgICAgICAgICAgICB8ICAgIDUgKystLS0KKyBsaWIvZHBrZy90ZXN0L3QtcGF0aC5jICAgICAgICAgICAgICAgICAgIHwgICAgNSArKy0tLQorIGxpYi9kcGtnL3Rlc3QvdC1wa2dpbmZvLmMgICAgICAgICAgICAgICAgfCAgICA1ICsrLS0tCisgbGliL2Rwa2cvdGVzdC90LXN0cmluZy5jICAgICAgICAgICAgICAgICB8ICAgIDUgKystLS0KKyBsaWIvZHBrZy90ZXN0L3QtdGVzdC5jICAgICAgICAgICAgICAgICAgIHwgICAgNSArKy0tLQorIGxpYi9kcGtnL3Rlc3QvdC12YXJidWYuYyAgICAgICAgICAgICAgICAgfCAgICA1ICsrLS0tCisgbGliL2Rwa2cvdGVzdC90LXZlcnNpb24uYyAgICAgICAgICAgICAgICB8ICAgIDUgKystLS0KKyBsaWIvZHBrZy90cmlnZGVmZXJyZWQubCAgICAgICAgICAgICAgICAgIHwgICAgNSArKy0tLQorIGxpYi9kcGtnL3RyaWdsaWIuYyAgICAgICAgICAgICAgICAgICAgICAgfCAgICA1ICsrLS0tCisgbGliL2Rwa2cvdXRpbHMuYyAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDUgKystLS0KKyBsaWIvZHBrZy92YXJidWYuYyAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNSArKy0tLQorIGxpYi9kcGtnL3ZhcmJ1Zi5oICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA1ICsrLS0tCisgbGliL2Rwa2cvdmVyY21wLmMgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDUgKystLS0KKyBtYW4vZGViLW92ZXJyaWRlLjUgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNSArKy0tLQorIG1hbi9kZWItc2hsaWJzLjUgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA1ICsrLS0tCisgbWFuL2Rwa2ctc2NhbnBhY2thZ2VzLjEgICAgICAgICAgICAgICAgICB8ICAgIDUgKystLS0KKyBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtICAgICAgICAgICAgICAgIHwgICAgMyArLS0KKyBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0RlYmlhbi5wbSAgICAgICAgIHwgICAgMyArLS0KKyBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0VudHJ5LnBtICAgICAgICAgIHwgICAgNSArKy0tLQorIHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRW50cnkvRGViaWFuLnBtICAgfCAgICA1ICsrLS0tCisgc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9QYXJzZS5wbSAgICAgICAgICB8ICAgIDMgKy0tCisgc2NyaXB0cy9EcGtnL0NvbnRyb2wucG0gICAgICAgICAgICAgICAgICB8ICAgIDUgKystLS0KKyBzY3JpcHRzL0Rwa2cvQ29udHJvbC9DaGFuZ2Vsb2cucG0gICAgICAgIHwgICAgNSArKy0tLQorIHNjcmlwdHMvRHBrZy9Db250cm9sL0ZpZWxkcy5wbSAgICAgICAgICAgfCAgICA1ICsrLS0tCisgc2NyaXB0cy9EcGtnL0NvbnRyb2wvSGFzaC5wbSAgICAgICAgICAgICB8ICAgIDUgKystLS0KKyBzY3JpcHRzL0Rwa2cvQ29udHJvbC9JbmZvLnBtICAgICAgICAgICAgIHwgICAgNSArKy0tLQorIHNjcmlwdHMvRHBrZy9EZXBzLnBtICAgICAgICAgICAgICAgICAgICAgfCAgICA3ICsrLS0tLS0KKyBzY3JpcHRzL0Rwa2cvSVBDLnBtICAgICAgICAgICAgICAgICAgICAgIHwgICAgNSArKy0tLQorIHNjcmlwdHMvRHBrZy9JbmRleC5wbSAgICAgICAgICAgICAgICAgICAgfCAgICA1ICsrLS0tCisgc2NyaXB0cy9EcGtnL1BhdGgucG0gICAgICAgICAgICAgICAgICAgICB8ICAgIDUgKystLS0KKyBzY3JpcHRzL0Rwa2cvU2hsaWJzLnBtICAgICAgICAgICAgICAgICAgIHwgICAgNSArKy0tLQorIHNjcmlwdHMvRHBrZy9TaGxpYnMvT2JqZHVtcC5wbSAgICAgICAgICAgfCAgICA1ICsrLS0tCisgc2NyaXB0cy9EcGtnL1NobGlicy9TeW1ib2wucG0gICAgICAgICAgICB8ICAgIDUgKystLS0KKyBzY3JpcHRzL0Rwa2cvU2hsaWJzL1N5bWJvbEZpbGUucG0gICAgICAgIHwgICAgNSArKy0tLQorIHNjcmlwdHMvRHBrZy9Tb3VyY2UvQXJjaGl2ZS5wbSAgICAgICAgICAgfCAgICA1ICsrLS0tCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9Db21wcmVzc2VkRmlsZS5wbSAgICB8ICAgIDUgKystLS0KKyBzY3JpcHRzL0Rwa2cvU291cmNlL0NvbXByZXNzb3IucG0gICAgICAgIHwgICAgNSArKy0tLQorIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbSAgICAgICAgICAgfCAgICA1ICsrLS0tCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtICAgICAgICB8ICAgIDUgKystLS0KKyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG0gICAgICAgIHwgICAgNSArKy0tLQorIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9ienIucG0gICAgfCAgICAzICstLQorIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9jdXN0b20ucG0gfCAgICA1ICsrLS0tCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2dpdC5wbSAgICB8ICAgIDMgKy0tCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL25hdGl2ZS5wbSB8ICAgIDUgKystLS0KKyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG0gIHwgICAgNSArKy0tLQorIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG0gICAgICAgICAgICAgfCAgICA1ICsrLS0tCisgc2NyaXB0cy9EcGtnL1N1YnN0dmFycy5wbSAgICAgICAgICAgICAgICB8ICAgIDUgKystLS0KKyBzY3JpcHRzL0Rwa2cvVmFycy5wbSAgICAgICAgICAgICAgICAgICAgIHwgICAgNSArKy0tLQorIHNjcmlwdHMvRHBrZy9WZW5kb3IucG0gICAgICAgICAgICAgICAgICAgfCAgICA1ICsrLS0tCisgc2NyaXB0cy9EcGtnL1ZlbmRvci9EZWJpYW4ucG0gICAgICAgICAgICB8ICAgIDUgKystLS0KKyBzY3JpcHRzL0Rwa2cvVmVuZG9yL0RlZmF1bHQucG0gICAgICAgICAgIHwgICAgNSArKy0tLQorIHNjcmlwdHMvRHBrZy9WZW5kb3IvVWJ1bnR1LnBtICAgICAgICAgICAgfCAgICA1ICsrLS0tCisgc2NyaXB0cy9EcGtnL1ZlcnNpb24ucG0gICAgICAgICAgICAgICAgICB8ICAgIDUgKystLS0KKyBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLnBsICAgICAgICAgICAgIHwgICAgMyArLS0KKyBzY3JpcHRzL2Rwa2ctbmFtZS5wbCAgICAgICAgICAgICAgICAgICAgIHwgICAgMyArLS0KKyBzY3JpcHRzL2Rwa2ctc2NhbnNvdXJjZXMucGwgICAgICAgICAgICAgIHwgICAgNSArKy0tLQorIHNjcmlwdHMvZHBrZy12ZW5kb3IucGwgICAgICAgICAgICAgICAgICAgfCAgICAzICstLQorIHNyYy9hcmNoaXZlcy5jICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA1ICsrLS0tCisgc3JjL2FyY2hpdmVzLmggICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDUgKystLS0KKyBzcmMvY2xlYW51cC5jICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNSArKy0tLQorIHNyYy9jb25maWd1cmUuYyAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA1ICsrLS0tCisgc3JjL2RlcGNvbi5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDUgKystLS0KKyBzcmMvZGl2ZXJ0ZGIuYyAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNSArKy0tLQorIHNyYy9lbnF1aXJ5LmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA1ICsrLS0tCisgc3JjL2Vycm9ycy5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDUgKystLS0KKyBzcmMvZmlsZXNkYi5jICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNSArKy0tLQorIHNyYy9maWxlc2RiLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA1ICsrLS0tCisgc3JjL2hlbHAuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDUgKystLS0KKyBzcmMvbWFpbi5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNSArKy0tLQorIHNyYy9tYWluLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA1ICsrLS0tCisgc3JjL3BhY2thZ2VzLmMgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDUgKystLS0KKyBzcmMvcGtnLXNob3cuYyAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNSArKy0tLQorIHNyYy9wcm9jZXNzYXJjLmMgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA1ICsrLS0tCisgc3JjL3F1ZXJ5LmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDUgKystLS0KKyBzcmMvcmVtb3ZlLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNSArKy0tLQorIHNyYy9zZWxlY3QuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA1ICsrLS0tCisgc3JjL3N0YXRjbWQuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDUgKystLS0KKyBzcmMvc3RhdGRiLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNSArKy0tLQorIHNyYy90cmlnY21kLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA1ICsrLS0tCisgc3JjL3RyaWdwcm9jLmMgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDUgKystLS0KKyBzcmMvdXBkYXRlLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNSArKy0tLQorIHV0aWxzL2luc3RhbGwtaW5mby5jICAgICAgICAgICAgICAgICAgICAgfCAgICA1ICsrLS0tCisgMTc2IGZpbGVzIGNoYW5nZWQsIDMzOSBpbnNlcnRpb25zKCspLCA1MTQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAwNzE2MjA2ODY1MTA5YzNjZGZjNjRjNzAwYWRiZjkxYTAxZjg2MzY0CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIE5vdiA4IDAyOjI5OjQxIDIwMDkgKzAxMDAKKworICAgIGxpYmRwa2c6IFJlbW92ZSB1bnVzZWQgZHVtcGNoYWluIG1hY3JvCisgICAgCisgICAgR290IGNvbnZlcnRlZCB0byBhIG1hY3JvIGp1c3QgdG8gYXZvaWQgYSBjb21waWxlciB3YXJuaW5nIGluCisgICAgY29tbWl0IGExZDlkYzQ2YzU1ZmNjMDEyODU0ZjhhYTk5MDU4ZDViYjE0YzJhOGEuIFRoZSBwcm9wZXIgZml4IHdvdWxkCisgICAgaGF2ZSBiZWVuIHRvIGVpdGhlciByZW1vdmUgaXQgb3IgdXNlIGl0LCB3aGljaCB3ZSBhcmUgZG9pbmcgbm93LgorCisgbGliL2Rwa2cvc2hvd3BrZy5jIHwgICAxMyAtLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAwIGluc2VydGlvbnMoKyksIDEzIGRlbGV0aW9ucygtKQorCitjb21taXQgZjc4OTIxMWVlOTMwNTA3ZTkxYzExMWIzMzI2NzkwY2UxMGZkYzEwMAorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBOb3YgOCAxMzozNDozMCAyMDA5ICswMTAwCisKKyAgICBEcGtnOjpTb3VyY2U6OlBhdGNoOjphZGRfZGlmZl9kaXJlY3RvcnkoKTogc21hbGwgb3B0aW1pemF0aW9uCisgICAgCisgICAgVGhlIGNhbGxzIHRvIEZpbGU6OlNwZWMtPmFiczJyZWwoKSBhcmUgcmVsYXRpdmVseSBleHBlbnNpdmUgYW5kIGNhbiBiZQorICAgIGF2b2lkZWQgZ2l2ZW4gdGhhdCB3ZSBjb250cm9sIHRoZSBmaW5kKCkgaW52b2NhdGlvbiBhbmQgY2FuIG9ubHkgcmVjZWl2ZQorICAgIGZpbGVuYW1lcyBiZWxvdyB0aGUgc2Nhbm5lZCBkaXJlY3RvcnkuIFRoZXkgYXJlIHJlcGxhY2VkIHdpdGggc2ltcGxlCisgICAgc3RyaW5nIGV4dHJhY3Rpb24gd2l0aCBzdWJzdHIoKSwgaXQgZ2l2ZXMgYW5vdGhlciAyNSUgc3BlZWQgYmVuZWZpdCBvbiBiaWcKKyAgICBzb3VyY2UgcGFja2FnZXMuCisgICAgCisgICAgQmFzZWQtb24tcGF0Y2gtYnk6IE1pa2UgSG9tbWV5IDxtaEBnbGFuZGl1bS5vcmc+CisKKyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtIHwgICAgNCArKy0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA3ZTEwMDg3ZmYyODVkNzhkNGQxYjUxNTVmNjEyN2MyMWYyN2FlY2ZkCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIE5vdiA4IDEyOjI4OjQ2IDIwMDkgKzAxMDAKKworICAgIHVwZGF0ZS1hbHRlcm5hdGl2ZXM6IGZpeCBhIGZyZW5jaCB0cmFuc2xhdGlvbgorCisgcG8vZnIucG8gfCAgICAyICstCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBjMzJjNGJmMWQ5ZDZkNGI4NDIwNjMxNWM5N2Y0N2I2OGQ2ZWI0NjBjCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IE5vdiA3IDE1OjEyOjE2IDIwMDkgKzAxMDAKKworICAgIGRwa2c6IENhbGwgc3RhbmRhcmRfc2h1dGRvd24gYWZ0ZXIgaW52b2tpbmcgdGhlIHBvc3QgaG9va3MKKyAgICAKKyAgICBUaGUgZXJyb3IgdW53aW5kaW5nIGlzIHBhcnQgb2YgdGhlIHNodXRkb3duLCBhbmQgdGhlIGludm9rZSBob29rcworICAgIG1hY2hpbmVyeSBtaWdodCBjYWxsIG9oc2hpdCwgc28gaXQgc2hvdWxkIGJlIGRvbmUgYXQgdGhlIGVuZCB3aGVuCisgICAgdGhlcmUncyBubyBtb3JlIGVycm9yIGhhbmRsaW5nIGluIHBsYWNlLgorCisgc3JjL21haW4uYyB8ICAgIDQgKystLQorIDEgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgMTllMzNjMzMyZjJkMDcyNzkyYzE5OGFlZGM3OTMyYTZhZjNmN2ZkOQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBOb3YgNyAxNTowNTozNSAyMDA5ICswMTAwCisKKyAgICBsaWJkcGtnOiBNYWtlIGRlc2MgYXJndW1lbnQgY29uc3QgaW4gY29tcHJlc3NfY2F0IGFuZCBkZWNvbXByZXNzX2NhdAorCisgbGliL2Rwa2cvY29tcHJlc3Npb24uYyB8ICAgMTAgKysrKysrKystLQorIGxpYi9kcGtnL2Rwa2cuaCAgICAgICAgfCAgICA0ICsrLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDEwIGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAwODE0ZDFiMWViNDJjMDg4MDlkMzE5ODBkOWE3ZjJiOTIxYzcxM2U1CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IE5vdiA3IDE0OjA0OjQxIDIwMDkgKzAxMDAKKworICAgIFVzZSBmaW5kIHdpdGggLUwgaW5zdGVhZCBvZiBkZXByZWNhdGVkIC1mb2xsb3cKKworIGRzZWxlY3QvbWV0aG9kcy9kaXNrL2luc3RhbGwgICAgfCAgICA1ICsrKy0tCisgZHNlbGVjdC9tZXRob2RzL2Rpc2svc2V0dXAgICAgICB8ICAgIDIgKy0KKyBkc2VsZWN0L21ldGhvZHMvbXVsdGljZC9pbnN0YWxsIHwgICAgNCArKy0tCisgZHNlbGVjdC9tZXRob2RzL211bHRpY2Qvc2V0dXAgICB8ICAgIDIgKy0KKyBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsICAgIHwgICAgMyArLS0KKyBzY3JpcHRzL2Rwa2ctc2NhbnNvdXJjZXMucGwgICAgIHwgICAgMiArLQorIHNyYy9hcmNoaXZlcy5jICAgICAgICAgICAgICAgICAgfCAgICA0ICsrLS0KKyA3IGZpbGVzIGNoYW5nZWQsIDExIGluc2VydGlvbnMoKyksIDExIGRlbGV0aW9ucygtKQorCitjb21taXQgMDNiN2MwMGRhZjRkYmYyMDg5OGRkNmMyMTRhNGEzOTlkNGUyZTAwMgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBOb3YgNyAwMDo1NTozOSAyMDA5ICswMTAwCisKKyAgICBsaWJkcGtnOiBJZiBQUk9DTk9FUlIgaW4gc3VicHJvY19jaGVjaygpIHJldHVybiB0aGUgc3RhdHVzIGNvZGUKKyAgICAKKyAgICBJZiB0aGUgY2FsbGVyIGFza2VkIGZvciBubyBlcnJvcnMsIGl0IGRvZXMgbm90IG1ha2Ugc2Vuc2UgdG8gbG9zZSB0aGUKKyAgICBzdGF0dXMgY29kZSBvbiByZXR1cm4uIFNvIHdlIHJldHVybiBpdCBpbnN0ZWFkIG9mIC0xLgorCisgbGliL2Rwa2cvc3VicHJvYy5jIHwgICAgMiArLQorIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgYjRkNDk2ODcxNWYzY2E1NDk4YmJhN2IzNWIzODVhMjZkMGM5NjE1MQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBOb3YgNyAxMzoyMzo1MCAyMDA5ICswMTAwCisKKyAgICBkcGtnOiBEbyBub3QgYm9ndXNseSBpZ25vcmUgZmluZCBleGl0IGNvZGUgMQorICAgIAorICAgIENvbW1pdCA2OGI1NmRjNGVkYWFmOTBmNTMxMWYwN2IzODg3MWRkZDYxYjg0YTQ4IGludHJvZHVjZWQgdGhlCisgICAgUFJPQ05PRVJSIHRvIHRyeSB0byBoYW5kbGUgYW5kIGJlIGFibGUgdG8gaWdub3JlIGZpbmQgZXhpdCBjb2RlIDEsCisgICAgd2hpY2ggc3VwcG9zZWRseSBoYXBwZW5lZCAobm90IGFueSBsb25nZXIpIHdoZW4gdXNpbmcgdGhlIC1mb2xsb3cKKyAgICBvcHRpb24gYW5kIGEgZGFuZ2xpbmcgc3ltbGluayB3YXMgZm91bmQuCisgICAgCisgICAgQnV0IGl0IG9ubHkgcHJldmVudGVkIHRoZSBvaHNoaXQoKSBpbnNpZGUgY2hlY2tzdWJwcm9jZXJyKCksIGFuZCB0aGUKKyAgICByZXR1cm4gdmFsdWUgd2FzIHN0aWxsIC0xLCBzbyBpdCB3YXMgbm90IGlnbm9yaW5nIHRoZSBleGl0IGNvZGUgMSwKKyAgICBhbmQgc3RpbGwgb2hzaGl0KClpbmcgaW4gdGhlIGNhbGxlci4KKyAgICAKKyAgICBBcyBmaW5kIGRvZXMgY3VycmVudGx5IGV4aXQgd2l0aCBhIDAgY29kZSBldmVuIHdoZW4gZmluZGluZyBicm9rZW4KKyAgICBzeW1saW5rcywgbGV0J3MgcmVtb3ZlIHRoaXMgcGllY2Ugb2YgYnJva2VuIGxvZ2ljLgorCisgc3JjL2FyY2hpdmVzLmMgfCAgICAyICstCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBhNzIwYjZhZWM1YWI3MTIxMTA2N2NmZDAyNTBiNTdlZmEwYWExOGY5CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IE5vdiA3IDAwOjMwOjE2IDIwMDkgKzAxMDAKKworICAgIFVzZSBzdWJwcm9jX3dhaXQgaW5zdGVhZCBvZiBkaXJlY3RseSBjYWxsaW5nIHdhaXRwaWQKKworIGRzZWxlY3QvbWV0aG9kLmNjIHwgICAgNyArKy0tLS0tCisgc3JjL2NvbmZpZ3VyZS5jICAgfCAgIDIyICsrKy0tLS0tLS0tLS0tLS0tLS0tLS0KKyBzcmMvcHJvY2Vzc2FyYy5jICB8ICAgIDYgKysrLS0tCisgMyBmaWxlcyBjaGFuZ2VkLCA4IGluc2VydGlvbnMoKyksIDI3IGRlbGV0aW9ucygtKQorCitjb21taXQgZDUzODgyOTY3OTc3MjZlMzRhYmUxMzAzMWRjYmRkMzAyMzE5YjkwOAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBOb3YgNyAwMDowNzowMiAyMDA5ICswMTAwCisKKyAgICBsaWJkcGtnOiBTcGxpdCBwcm9jZXNzIHdhaXRpbmcgZnJvbSBzdWJwcm9jX3dhaXRfY2hlY2sgaW50byBzdWJwcm9jX3dhaXQKKworIGxpYi9kcGtnL3N1YnByb2MuYyB8ICAgMTIgKysrKysrKysrKystCisgbGliL2Rwa2cvc3VicHJvYy5oIHwgICAgMSArCisgMiBmaWxlcyBjaGFuZ2VkLCAxMiBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgNGQzNWIyMGM2NDU0NzllODUwODIyYjE1MDhjZmNkYzVkNDcxYzg5MAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBOb3YgNiAyMzo1NjoyMiAyMDA5ICswMTAwCisKKyAgICBSZW5hbWUgcHJvY2VzcyBkZXNjcmlwdGlvbiBmdW5jdGlvbiBhcmd1bWVudHMgdG8gZGVzYworCisgbGliL2Rwa2cvc3VicHJvYy5jIHwgICAxOCArKysrKysrKystLS0tLS0tLS0KKyBzcmMvaGVscC5jICAgICAgICAgfCAgIDIwICsrKysrKysrKystLS0tLS0tLS0tCisgc3JjL21haW4uaCAgICAgICAgIHwgICAgNiArKystLS0KKyAzIGZpbGVzIGNoYW5nZWQsIDIyIGluc2VydGlvbnMoKyksIDIyIGRlbGV0aW9ucygtKQorCitjb21taXQgZjVjOTA0ZDU4NjI3ZWMxNDIyMTczYTU5NmYyYTJlZjg1ODQ0ODVjMgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBOb3YgNiAyMzowMzowMSAyMDA5ICswMTAwCisKKyAgICBsaWJkcGtnOiBSZW5hbWUgYW5kIG5hbWVzcGFjZSBzdWJwcm9jIHJlbGF0ZWQgZnVuY3Rpb25zCisKKyBkcGtnLWRlYi9idWlsZC5jICAgfCAgIDEwICsrKysrLS0tLS0KKyBkcGtnLWRlYi9leHRyYWN0LmMgfCAgICA4ICsrKystLS0tCisgZHBrZy1kZWIvaW5mby5jICAgIHwgICAgMiArLQorIGRzZWxlY3QvbWV0aG9kLmNjICB8ICAgIDQgKystLQorIGxpYi9kcGtnL3N1YnByb2MuYyB8ICAgMTIgKysrKysrLS0tLS0tCisgbGliL2Rwa2cvc3VicHJvYy5oIHwgICAgOCArKysrLS0tLQorIHNyYy9hcmNoaXZlcy5jICAgICB8ICAgIDIgKy0KKyBzcmMvaGVscC5jICAgICAgICAgfCAgICA2ICsrKy0tLQorIHNyYy9wcm9jZXNzYXJjLmMgICB8ICAgIDYgKysrLS0tCisgOSBmaWxlcyBjaGFuZ2VkLCAyOSBpbnNlcnRpb25zKCspLCAyOSBkZWxldGlvbnMoLSkKKworY29tbWl0IDYxZTM1M2Y2NWI2MGNjNWQ1OGZjODgzYWMxNTBmOTBkZTI0NGRmZDIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgTm92IDYgMjI6MjU6MTEgMjAwOSArMDEwMAorCisgICAgbGliZHBrZzogTmFtZXNwYWNlIGluY2x1ZGUgZ3VhcmRzIHdpdGggTElCRFBLRyBpbnN0ZWFkIG9mIERQS0cKKworIGxpYi9kcGtnL2J1ZmZlci5oICAgIHwgICAgNiArKystLS0KKyBsaWIvZHBrZy9kcGtnLWRiLmggICB8ICAgIDYgKysrLS0tCisgbGliL2Rwa2cvZHBrZy5oICAgICAgfCAgICA2ICsrKy0tLQorIGxpYi9kcGtnL2ZpbGUuaCAgICAgIHwgICAgNiArKystLS0KKyBsaWIvZHBrZy9pMThuLmggICAgICB8ICAgIDYgKysrLS0tCisgbGliL2Rwa2cvbWFjcm9zLmggICAgfCAgICA2ICsrKy0tLQorIGxpYi9kcGtnL3BhcnNlZHVtcC5oIHwgICAgNiArKystLS0KKyBsaWIvZHBrZy9wYXRoLmggICAgICB8ICAgIDYgKysrLS0tCisgbGliL2Rwa2cvcGtnLWFycmF5LmggfCAgICA2ICsrKy0tLQorIGxpYi9kcGtnL3BrZy1saXN0LmggIHwgICAgNiArKystLS0KKyBsaWIvZHBrZy9wa2cuaCAgICAgICB8ICAgIDYgKysrLS0tCisgbGliL2Rwa2cvcHJvZ3Jlc3MuaCAgfCAgICA0ICsrLS0KKyBsaWIvZHBrZy9zdHJpbmcuaCAgICB8ICAgIDYgKysrLS0tCisgbGliL2Rwa2cvc3VicHJvYy5oICAgfCAgICA2ICsrKy0tLQorIGxpYi9kcGtnL3RhcmZuLmggICAgIHwgICAgNiArKystLS0KKyBsaWIvZHBrZy90ZXN0LmggICAgICB8ICAgIDQgKystLQorIGxpYi9kcGtnL3ZhcmJ1Zi5oICAgIHwgICAgNiArKystLS0KKyAxNyBmaWxlcyBjaGFuZ2VkLCA0OSBpbnNlcnRpb25zKCspLCA0OSBkZWxldGlvbnMoLSkKKworY29tbWl0IGRlNDcwYTdkNzE5MzZiOGE1MGQ2MDg5YTdkZmJiYzM4MjJhYzZiYjUKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgTm92IDYgMjA6MDU6MjEgMjAwOSArMDEwMAorCisgICAgZHBrZy1zb3VyY2U6IG9wdGltaXplIGRpZmZpbmcgcGhhc2Ugb2YgYSBzb3VyY2UgcGFja2FnZSBidWlsZAorICAgIAorICAgIE9wdGltaXplIGRwa2ctc291cmNlIC1iIGJ5IGF2b2lkaW5nIG1hbnkgZGlmZiBjYWxscyB3aGVuIG5vdCByZXF1aXJlZC4KKyAgICAKKyAgICBCYXNlZC1vbi1wYXRjaC1ieTogTWlrZSBIb21tZXkgPG1oQGdsYW5kaXVtLm9yZz4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgICAgfCAgICAyICsrCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbSB8ICAgIDMgKysrCisgMiBmaWxlcyBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBkNTcwZGNmNTZjNTAyYTM2YjQ3NDc2NjU5MzgwMjU2MDlkNWZmZTQ3CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIE5vdiA2IDE5OjM2OjQ1IDIwMDkgKzAxMDAKKworICAgIFN0b3AgdXNpbmcgdGhlIEVuZ2xpc2ggcGVybCBtb2R1bGUKKyAgICAKKyAgICBVc2luZyB0aGlzIG1vZHVsZSAoYW5kICQnIG9yICRQT1NUTUFUQ0gpIGltcGxpZXMgYSBwZXJmb3JtYW5jZSBwZW5hbHR5CisgICAgdGhhdCB3ZSB3YW50IHRvIGF2b2lkLiBUaHVzIG1vZGlmaWVzIHRoZSBmZXcgcmVnZXhlcyB3aGVyZSBpdCdzIHVzZWQgdG8KKyAgICBiZSBleHBsaWNpdCBhYm91dCB0aGUgcGFydCBvZiB0aGUgZGF0YSB0aGF0IHdlIHdhbnQgdG8gcmV0cmlldmUuCisKKyBzY3JpcHRzL0Rwa2cvU3Vic3R2YXJzLnBtICB8ICAgMTEgKysrKy0tLS0KKyBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbCB8ICAgNTcgKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGwgIHwgICAgMSAtCisgc2NyaXB0cy9kcGtnLXNvdXJjZS5wbCAgICAgfCAgIDI5ICsrKysrKysrKystLS0tLS0tLS0tLQorIDQgZmlsZXMgY2hhbmdlZCwgNDcgaW5zZXJ0aW9ucygrKSwgNTEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA3ZDhkMTkzMzMyNDc4ZGU4MmUyMGVkNWI0OTA1MzM3ODgwMWQxNjBmCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIE5vdiA2IDE4OjA4OjIzIDIwMDkgKzAxMDAKKworICAgIERwa2c6OkNvbnRyb2w6Okhhc2g6IGhhbmRsZSBhcmJpdHJhcnkgZmllbGQgdmFsdWVzCisgICAgCisgICAgQ2hlY2tpbmcgdGhlIHZhbGlkaXR5IG9mIG5ldyBmaWVsZCB2YWx1ZXMgYXQgcnVuLXRpbWUgd2FzIHZlcnkgZXhwZW5zaXZlLgorICAgIEluIG9yZGVyIHRvIGF2b2lkIHRoaXMgY2hlY2ssIHRoZSBkZXNpZ24gb2YgdGhlIG9iamVjdCBoYXMgYmVlbiBjaGFuZ2VkIHRvCisgICAgYWNjZXB0IGFyYml0cmFyeSB2YWx1ZXMsIHRoZXkgYXJlIHNpbXBseSBlc2NhcGVkIGFzIG5lY2Vzc2FyeSBkdXJpbmcKKyAgICBvdXRwdXQuIFRoZSBvbmx5IGRhdGEgbG9zdCBpbiBhIHNhdmUoKS9sb2FkKCkgY3ljbGUgYXJlIHRoZQorICAgIHRyYWlsaW5nIHdoaXRlc3BhY2VzIG9uIGV2ZXJ5IGxpbmUgb2YgYWxsIHZhbHVlcy4KKyAgICAKKyAgICBUaGlzIEFQSSBjaGFuZ2UgaW1wbGllcyBmaXhlcyBpbiBhbGwgc2NyaXB0cy9tb2R1bGVzIHJlYWRpbmcvY3JlYXRpbmcKKyAgICB2YWx1ZXMgZm9yIG11bHRpbGluZSBmaWVsZHMuCisgICAgCisgICAgVGhlIG5vbi1yZWdyZXNzaW9uIHRlc3QgYWxzbyBoYWQgdG8gYmUgYWRqdXN0ZWQuCisKKyBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtICAgICAgICAgICAgfCAgICAyICstCisgc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9FbnRyeS5wbSAgICAgIHwgICAxMiArLS0tLS0KKyBzY3JpcHRzL0Rwa2cvQ2hlY2tzdW1zLnBtICAgICAgICAgICAgfCAgICAyICstCisgc2NyaXB0cy9EcGtnL0NvbnRyb2wvSGFzaC5wbSAgICAgICAgIHwgICA2OSArKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0KKyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG0gICAgICAgfCAgICA2ICstCisgc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGwgICAgICAgICAgIHwgICAxOCArKystLS0tLQorIHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGwgICAgICAgICB8ICAgMTMgKystLS0tCisgc2NyaXB0cy9kcGtnLXNjYW5zb3VyY2VzLnBsICAgICAgICAgIHwgICAgNCArLQorIHNjcmlwdHMvZHBrZy1zb3VyY2UucGwgICAgICAgICAgICAgICB8ICAgIDQgKy0KKyBzY3JpcHRzL3QvNzAwX0Rwa2dfQ29udHJvbC50ICAgICAgICAgfCAgIDIxICsrKysrKystLS0KKyBzY3JpcHRzL3QvNzAwX0Rwa2dfQ29udHJvbC9jb250cm9sLTEgfCAgIDExICsrKy0tCisgMTEgZmlsZXMgY2hhbmdlZCwgODQgaW5zZXJ0aW9ucygrKSwgNzggZGVsZXRpb25zKC0pCisKK2NvbW1pdCAwMzc0ZTU1NjVkZTlkNDI3NjhlYzhiYWJkYWFiZmI1MWNlYzRmNmE2CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIE5vdiA2IDE1OjA3OjM4IDIwMDkgKzAxMDAKKworICAgIERwa2c6OkNvbnRyb2w6Okhhc2g6IHVzZSBsb3dlci1jYXNlIGludGVybmFsbHkgZm9yIGtleXMKKyAgICAKKyAgICBPbmx5IHVzZSBmaWVsZF9jYXBpdGFsaXplKCkgd2hlbiBleHBvcnRpbmcga2V5cyBuYW1lcyBvdXRzaWRlIG9mIHRoZQorICAgIG9iamVjdC4gbGMoKSBpcyB3YXkgZmFzdGVyIHRoYW4gZmllbGRfY2FwaXRhbGl6ZSgpIGFuZCB0aGF0IG1ha2VzCisgICAgYSBkaWZmZXJlbmNlIGluIHBlcmZvcm1hbmNlIHdoZW4geW91J3JlIHJlYWRpbmcvc2V0dGluZyB2YWx1ZXMgbWFueQorICAgIHRpbWVzLgorCisgc2NyaXB0cy9EcGtnL0NvbnRyb2wvSGFzaC5wbSB8ICAgMTYgKysrKysrKystLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgOCBpbnNlcnRpb25zKCspLCA4IGRlbGV0aW9ucygtKQorCitjb21taXQgMGIxZDcxYTY1MDZhZTA1M2NhM2M2ZWQwNmQyZTRhMGRhMDA1MmRhNworQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBOb3YgNiAwMDowNzozNiAyMDA5ICswMTAwCisKKyAgICBEcGtnOjpTb3VyY2U6OlBhY2thZ2U6OlYzOjpnaXQ6OmRvX2J1aWxkKCk6IHJlbW92ZSBleHRyYSBxdW90ZXMKKyAgICAKKyAgICBSZW1vdmUgZXh0cmEgcXVvdGluZyB0aGF0IHNob3VsZCBub3QgYmUgdGhlcmUgd2hpbGUgcGFzc2luZyBhbiBleGNsdWRlCisgICAgZmlsZSB0byBnaXQgbHMtZmlsZXMgZHVyaW5nIGJ1aWxkIG9mIDMuMCAoZ2l0KSBzb3VyY2UgcGFja2FnZS4KKyAgICAKKyAgICBCYXNlZC1vbi1wYXRjaC1ieTogQ291cnRuZXkgQmFuZSA8ZGViaWFuLWJ1Z3MtNTI2NUBjYmFuZS5vcmc+CisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICAgICAgICAgIHwgICAgMyArKysKKyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvZ2l0LnBtIHwgICAgMiArLQorIDIgZmlsZXMgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgMzJlOTk5Zjk3MjU1ODk0NjcyNDlhYWJiOWNmODA0M2FhYTliOTI4MgorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBOb3YgNSAyMzo1ODo0NyAyMDA5ICswMTAwCisKKyAgICBBZGQgbWlzc2luZyBidWcgY2xvc3VyZS4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAyICsrCisgMSBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAxNzMxY2U1Y2MyMzNjZDAxODk2Mjk4ZDdlNDM5NWJmMDA0Mjk1OWJmCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IE5vdiA1IDIxOjQ5OjA4IDIwMDkgKzAxMDAKKworICAgIERwa2c6OlNvdXJjZTo6UGFja2FnZTo6VjI6OmRvX2J1aWxkKCk6IGltcHJvdmUgbWF0Y2hpbmcgb2YgaWdub3JlZCBmaWxlcworICAgIAorICAgIE1vZGlmeSBsb2dpYyB0byBhbHNvIG1hdGNoIGlnbm9yZWQgZmlsZXMgYmFzZWQgb24gdGhlaXIgcmVsYXRpdmUgcGF0aAorICAgIGluc2lkZSB0aGUgc291cmNlIHBhY2thZ2UgKGFuZCBub3Qgb25seSBvbiB0aGVpciBmaWxlbmFtZSkuCisKKyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG0gfCAgICA5ICsrKysrLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQorCitjb21taXQgNmY2ODE0NDkxZjAyNDBhNGRlOTdmMjJlNjA2NjE0ODliYjM2ZjkxNAorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBOb3YgNSAyMToxMjoxNSAyMDA5ICswMTAwCisKKyAgICBEcGtnOjpTb3VyY2U6OlBhY2thZ2U6OlYyOmRvX2J1aWxkKCk6IGZpeCBiaW5hcnkgZmlsZSBjaGVjaworICAgIAorICAgIFRoZSBmaW5kKCkgY2FsbCB0aGF0IGlzIHN1cHBvc2VkIHRvIGxvb2sgZm9yIGJpbmFyeSBmaWxlcyBpbiB0aGUgZGViaWFuCisgICAgc3ViLWRpcmVjdG9yeSB3YXMgbWlzc2luZyB0aGUgbm9fY2hkaXIgb3B0aW9uIGFuZCBkdWUgdG8gdGhpcyB0aGUKKyAgICBGaWxlOjpTcGVjLT5hYnMycmVsKCkgY2FsbCAoaW5zaWRlIHRoZSB3YW50ZWQgZnVuY3Rpb24pIHdhcyByZXR1cm5pbmcgYW4KKyAgICBpbnZhbGlkIHZhbHVlIHdoZW4gZmluZCgpIGNoYW5nZWQgdGhlIGN1cnJlbnQgZGlyZWN0b3J5IChzaW5jZSBpdHMgc2Vjb25kCisgICAgcGFyYW1ldGVyIGlzIG9ubHkgdmFsaWQgd2hpbGUgYmVpbmcgaW4gdGhlIGN1cnJlbnQgZGlyZWN0b3J5KS4KKyAgICAKKyAgICBUaGUgcGFyYW1ldGVyIGdvdCBsb3N0IGJ5IG1pc3Rha2UgaW4gMzUyNWY3OTc5MmNmZjUxNzU3ZDk5ZDQ1ZjUxYzk2YTE1ZTZmYTc3OQorICAgIGFuZCBpdCB3YXMgcHJlc2VudCBpbiBsZW5ueSdzIHZlcnNpb24uCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICAgICAgfCAgICAyICsrCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtIHwgICAgNCArKy0tCisgMiBmaWxlcyBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBjOWUyNGU4ZTk1ZjIzNTQwNTNlNGE3MzU5MmVhZmVlN2RhMjQwZThjCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIE5vdiAzIDEyOjE5OjM5IDIwMDkgKzAxMDAKKworICAgIERwa2c6OkNoYW5nZWxvZzo6Z2V0X3JhbmdlKCk6IGZpeCByZXR1cm4gdmFsdWUgd2hlbiByYW5nZSBpcyBlbXB0eQorICAgIAorICAgIEFsc28gZml4IHNjcmlwdHMvY2hhbmdlbG9nL2RlYmlhbi5wbCB0byBiZXR0ZXIgZGVhbCB3aXRoIHVuZGVmIHZhbHVlcworICAgIHJldHVybmVkIHdoZW4gdGhlIHJlcXVlc3RlZCByYW5nZSBtYXRjaGVzIGFuIGVtcHR5IHNldCBvZiBjaGFuZ2Vsb2cKKyAgICBlbnRyaWVzLgorCisgc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbSAgIHwgICAxMCArKysrKysrLS0tCisgc2NyaXB0cy9jaGFuZ2Vsb2cvZGViaWFuLnBsIHwgICAgNiArKysrLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDExIGluc2VydGlvbnMoKyksIDUgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAzZmIxZjBkNjNjZGE2MDY5ZGRhYzBiZWE1M2NhMGNkMTQzMGQ2ZmRhCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIE5vdiAyIDEzOjUwOjAxIDIwMDkgKzAxMDAKKworICAgIEFkZCBtaXNzaW5nIGJ1ZyBjbG9zdXJlCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMiArLQorIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgNzE0Y2ZiODI4N2MyMWI3OTJjMzJkMjJlYmIxZWI3MjRhOGU2OTNkMQorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBPY3QgMzEgMjI6NTU6MjkgMjAwOSArMDEwMAorCisgICAgQWRkIGNoYW5nZWxvZyBlbnRyeSBmb3IgRHBrZzo6Q2hhbmdlbG9nIGNoYW5nZXMKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAzICsrKworIDEgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgMzk0ZTE0ZmZjMjgxNjBmZWFhNmVmNTVmNGI3YWM4MTVhNDU1ZDFkZQorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBPY3QgMzAgMTE6NDI6NTYgMjAwOSArMDEwMAorCisgICAgQWRkIHN1cHBsZW1lbnRhcnkgbm9uLXJlZ3Jlc3Npb24gdGVzdHMgZm9yIERwa2c6OkNoYW5nZWxvZyByZWxhdGVkIG1vZHVsZXMKKworIHNjcmlwdHMvdC82MDBfRHBrZ19DaGFuZ2Vsb2cudCAgICAgIHwgIDEwMiArKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tCisgc2NyaXB0cy90LzYwMF9EcGtnX0NoYW5nZWxvZy9maWVsZHMgfCAgIDE5ICsrKysrKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDk1IGluc2VydGlvbnMoKyksIDI2IGRlbGV0aW9ucygtKQorCitjb21taXQgYmI0NjExZWI1Y2IxNTcxYWY5ODg2ZjMzYzYxZGM2MzA1Mjg0YzZjYworQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBPY3QgMjUgMjM6MTk6NDIgMjAwOSArMDEwMAorCisgICAgRHBrZzo6Q2hhbmdlbG9nOiBjb21wbGV0ZWx5IHVwZGF0ZSB0aGUgQVBJCisgICAgCisgICAgVGhlIHByZXZpb3VzIEFQSSB3YXMgdG9vIGRpZmZlcmVudCBmcm9tIHRoZSBvdGhlciBtb2R1bGVzIGluc2lkZSBkcGtnLWRldi4KKyAgICAKKyAgICBEcGtnOjpDaGFuZ2Vsb2cgbm93IGJlaGF2ZXMgYXMgYW4gYXJyYXkgb2YgRHBrZzo6Q2hhbmdlbG9nOjpFbnRyeQorICAgIGFuZCB0aGUgZG9jdW1lbnRhdGlvbiBleHBsYWlucyBob3cgaXQgY2FuIGJlIGRlcml2ZWQgdG8gY3JlYXRlIGEgbmV3CisgICAgY2hhbmdlbG9nIHBhcnNlci4KKyAgICAKKyAgICBUaGUgbm9uLXJlZ3Jlc3Npb24gdGVzdHMgYXMgd2VsbCBhcyB0aGUgb2ZmaWNpYWwgRGViaWFuCisgICAgY2hhbmdlbG9nIHBhcnNlciBzY3JpcHQgaGFkIHRvIGJlIHVwZGF0ZWQgdG8gY29wZSB3aXRoIHRoZSBuZXcgQVBJLgorCisgc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbSAgICAgICAgfCAgNjU5ICsrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9EZWJpYW4ucG0gfCAgIDkwICsrLS0tLQorIHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRW50cnkucG0gIHwgICAgNCArLQorIHNjcmlwdHMvY2hhbmdlbG9nL2RlYmlhbi5wbCAgICAgIHwgICAyMSArLQorIHNjcmlwdHMvdC82MDBfRHBrZ19DaGFuZ2Vsb2cudCAgIHwgICA1MyArLS0tCisgNSBmaWxlcyBjaGFuZ2VkLCAzMzAgaW5zZXJ0aW9ucygrKSwgNDk3IGRlbGV0aW9ucygtKQorCitjb21taXQgMWIxMGE2NGI1OTJlMTQwYTlkNmJkMzRlM2Q3ZDZmN2NmZTBmYWYzOAorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBPY3QgMzAgMDk6NDc6MzIgMjAwOSArMDEwMAorCisgICAgRHBrZzo6Q2hhbmdlbG9nOjpFbnRyeTogYWRkIGdldF9kcGtnX2NoYW5nZXMoKSBtZXRob2QgaGVyZQorICAgIAorICAgIFRoaXMgaXMgdGhlIGxvZ2ljYWwgcGxhY2UgZm9yIHRoaXMgZnVuY3Rpb24gKGFzIGFuIG9iamVjdCBtZXRob2QpLgorCisgc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9FbnRyeS5wbSB8ICAgMjQgKysrKysrKysrKysrKysrKysrKysrKysrCisgMSBmaWxlcyBjaGFuZ2VkLCAyNCBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgMzA0MjFkYmU0NmY3NjliNGUyMzMzYWY4YmFmNzI2OTY5OGNiYzA1MAorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBPY3QgMjUgMjM6MTg6NDUgMjAwOSArMDEwMAorCisgICAgZHBrZy1wYXJzZWNoYW5nZWxvZzogZHJvcCB1c2VsZXNzIOKAnHVzZeKAnSBzdGF0ZW1lbnRzCisgICAgCisgICAgTmVpdGhlciBQT1NJWCBub3IgRW5nbGlzaCBhcmUgdXNlZCBieSB0aGlzIHNtYWxsIHNjcmlwdC4KKworIHNjcmlwdHMvZHBrZy1wYXJzZWNoYW5nZWxvZy5wbCB8ICAgIDMgLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAwIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAxZjY3ZjRiMjJiMmM4NTcxYTM5ZmYzOGNmNzRkMjU5ODcxZmRjODRjCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIE9jdCAyNSAxOTowODo0NSAyMDA5ICswMTAwCisKKyAgICBNb3ZlIGZpbmRfY2xvc2VzKCkgaW50byBEcGtnOjpDaGFuZ2Vsb2c6OkVudHJ5OjpEZWJpYW4KKworIHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG0gICAgICAgICAgICAgIHwgICAyNCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0VudHJ5L0RlYmlhbi5wbSB8ICAgMzIgKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDI3IGluc2VydGlvbnMoKyksIDI5IGRlbGV0aW9ucygtKQorCitjb21taXQgOGExNDA1NzZmNTQxODhlNjAwOWUzMzk4YTJlYzNkYTFjMTAwYmUwZAorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBPY3QgMjUgMTg6Mzk6MDMgMjAwOSArMDEwMAorCisgICAgRHBrZzo6Q2hhbmdlbG9nOjpEZWJpYW46IHN5bnRheC9zdHlsZSBjbGVhbnVwCisgICAgCisgICAgVXNlIHN0YW5kYXJkIHVubGVzcyBibG9ja3MgaW5zdGVhZCBvZiBtdWx0aXBsZSBPUmVkIGNoZWNrcyB3aXRoCisgICAg4oCcZG/igJ0gc3RhdGVtZW50cy4KKyAgICAKKyAgICBEcm9wIHVzZWxlc3Mg4oCcdXNlIERwa2figJ0uCisKKyBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0RlYmlhbi5wbSB8ICAgNjIgKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMjUgaW5zZXJ0aW9ucygrKSwgMzcgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyM2Q0N2ZlOGI3MzZmYjU3NzJlMzhkMDk0MWYwOTcxN2QxZWE2NzU2CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIE9jdCAyNSAxODoyNTo1NyAyMDA5ICswMTAwCisKKyAgICBEcGtnOjpDaGFuZ2Vsb2c6IGRvbid0IHVzZSBFbmdsaXNoCisgICAgCisgICAgUmVwbGFjZSAkTlIgd2l0aCAkLiBmb3IgdGhpcy4gVXNpbmcgRW5nbGlzaCBpbXBsaWVzIGEgcGVyZm9ybWFuY2UgcGVuYWx0eQorICAgIGluIHJlZ2V4IG1hdGNoaW5nIHRoYXQgd2UnZCBsaWtlIHRvIGF2b2lkLgorCisgc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbSAgICAgICAgfCAgICA2ICsrLS0tLQorIHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRGViaWFuLnBtIHwgICAyMiArKysrKysrKysrLS0tLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAxMiBpbnNlcnRpb25zKCspLCAxNiBkZWxldGlvbnMoLSkKKworY29tbWl0IDlhYzdiODZhYzJiZTNlNTBhODgzMjYyZWQyMWNjZGM0ZjFiOTJmZmQKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gT2N0IDI1IDE4OjIwOjM3IDIwMDkgKzAxMDAKKworICAgIERwa2c6OkNoYW5nZWxvZzo6RGViaWFuOiBkcm9wIGltcHJvcGVyIGRvY3VtZW50YXRpb24KKyAgICAKKyAgICBUb2dldGhlciB3aXRoIGEgZHVwbGljYXRlIGNvcHlyaWdodCBub3RpY2UgYW5kIGFuIHVubmVlZGVkCisgICAgdXNlIHN0YXRlbWVudC4gQWRkIG15c2VsZiBpbiB0aGUgY29weXJpZ2h0IG5vdGljZS4KKworIHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRGViaWFuLnBtIHwgICA0MiArKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDM5IGRlbGV0aW9ucygtKQorCitjb21taXQgMDVmNTI5ZDU0NTViZTRkMTE2ZGY2YzkxZDFmOWFjMjhlNjVhYzZlNworQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBPY3QgMjUgMTg6MjA6MTEgMjAwOSArMDEwMAorCisgICAgRHBrZzo6Q2hhbmdlbG9nOjpEZWJpYW46IHVzZSBjb25zdGFudHMgZm9yIHBhcnNlciBzdGF0ZXMKKworIHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRGViaWFuLnBtIHwgICA0NiArKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyNiBpbnNlcnRpb25zKCspLCAyMCBkZWxldGlvbnMoLSkKKworY29tbWl0IGRjNWQ3NTViMGZlMTE4OTM4ZjdiYmE0MzhmY2YyZTQ0NDYxYjBmNjUKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gT2N0IDI1IDE3OjU0OjA2IDIwMDkgKzAxMDAKKworICAgIE1vdmUgaGVhZGVyL3RyYWlsZXIgY2hlY2tzIGluIERwa2c6OkNoYW5nZWxvZzo6RW50cnk6OkRlYmlhbgorCisgc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9EZWJpYW4ucG0gICAgICAgfCAgIDM0ICsrLS0tLS0tLS0tLS0tLS0tLQorIHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRW50cnkvRGViaWFuLnBtIHwgICA1OSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKworIDIgZmlsZXMgY2hhbmdlZCwgNjMgaW5zZXJ0aW9ucygrKSwgMzAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBkMGQ4MTJjMWQ5NmY1M2ZkYWJiYjM1NmE1MGZjM2ExMWNkN2NlMDRkCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIE9jdCAyNSAxNzoxOTowNyAyMDA5ICswMTAwCisKKyAgICBEcGtnOjpDaGFuZ2Vsb2c6OkVudHJ5OjpEZWJpYW46IHBhcnNlIGNoYW5nZXMgbGluZXMgYXMgc2V0IG9mIGl0ZW1zCisgICAgCisgICAgVGhlIGZ1bmN0aW9uIGdldF9jaGFuZ2VfaXRlbXMoKSByZWludHJvZHVjZSB0aGUgZmVhdHVyZSB0aGF0IHBhcnNlZCB0aGUKKyAgICBjaGFuZ2VzIGFzIGEgc2V0IG9mIGl0ZW1zIGRlc2NyaWJpbmcgaW5kaXZpZHVhbCBjaGFuZ2VzLiBGdXJ0aGVybW9yZSBpdAorICAgIHBhcnNlcyBhdHRyaWJ1dGlvbiBsaW5lcyAo4oCcWyBOYW1lIF3igJ0pIGFzIHNlcGFyYXRlIGl0ZW1zLgorCisgc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9FbnRyeS9EZWJpYW4ucG0gfCAgIDM3ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCisgMSBmaWxlcyBjaGFuZ2VkLCAzNyBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgYmI5YWYyZDA4MzUzOGQ0ZmZhMjAzM2IxZTMzODBlYzlkOTI0ZDMyYgorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBPY3QgMjQgMTg6MDQ6NDcgMjAwOSArMDIwMAorCisgICAgRHJvcCBjb21wYXRpYmlsaXR5IHdpdGggb2xkIGNoYW5nZWxvZyBwYXJzZXJzIChhcyBwbGFubmVkKQorCisgZG9jL1JFQURNRS5mZWF0dXJlLXJlbW92YWwtc2NoZWR1bGUgfCAgIDI0ICsrKysrKysrKysrKy0tLS0tLS0tLS0tLQorIHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvUGFyc2UucG0gICAgIHwgICAgNyAtLS0tLS0tCisgc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGwgICAgICAgICAgfCAgIDE2ICsrKy0tLS0tLS0tLS0tLS0KKyAzIGZpbGVzIGNoYW5nZWQsIDE1IGluc2VydGlvbnMoKyksIDMyIGRlbGV0aW9ucygtKQorCitjb21taXQgOTllM2FiY2MzMzM0M2RiZmI2NWU1ODViNDk2ZjQ1MWQ0MzNlZDdmYworQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBPY3QgMjQgMTc6NTQ6MzEgMjAwOSArMDIwMAorCisgICAgTW92ZSBwYXJzZV9jaGFuZ2Vsb2coKSB0byBhIHNlcGFyYXRlIG1vZHVsZSBEcGtnOjpDaGFuZ2Vsb2c6OlBhcnNlCisgICAgCisgICAgRGVzcGl0ZSBpdHMgbmFtZSwgdGhpcyBmdW5jdGlvbiBkb2VzIG5vdCBhY3R1YWxsYXkgcGFyc2UgYW55dGhpbmcgYnkKKyAgICBpdHNlbGYsIGl0IGp1c3QgY2FsbHMgZXh0ZXJuYWwgcGFyc2VycyBhbmQgcmV0dXJucyB0aGVpciByZXN1bHQuIFRoaXMKKyAgICBpbnRlcmZhY2UgaXMgbGFyZ2VseSB1c2VkIGJ5IG90aGVyIHRvb2xzIGFuZCBpcyBub3QgdGllZCB3aXRoIGFueSBvZiB0aGUKKyAgICBvdGhlciBEcGtnOjpDaGFuZ2Vsb2cgbW9kdWxlcyBzbyBpdCdzIGJlc3Qga2VwdCBzZXBhcmF0ZS4KKyAgICAKKyAgICBNYW55IHNjcmlwdHMgaGF2ZSB0byBiZSB1cGRhdGVkIHRvIGNvcGUgd2l0aCB0aGUgcmVuYW1pbmcuCisKKyBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtICAgICAgIHwgIDEyNiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvUGFyc2UucG0gfCAgMTY3ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKworIHNjcmlwdHMvTWFrZWZpbGUuYW0gICAgICAgICAgICAgfCAgICAxICsKKyBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsICAgIHwgICAgNCArLQorIHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsICAgICAgfCAgICA2ICstCisgc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGwgICAgICB8ICAgIDQgKy0KKyBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbCAgICAgIHwgICAgNCArLQorIHNjcmlwdHMvZHBrZy1wYXJzZWNoYW5nZWxvZy5wbCAgfCAgICA0ICstCisgc2NyaXB0cy9kcGtnLXNvdXJjZS5wbCAgICAgICAgICB8ICAgIDQgKy0KKyBzY3JpcHRzL3BvL1BPVEZJTEVTLmluICAgICAgICAgIHwgICAgMSArCisgMTAgZmlsZXMgY2hhbmdlZCwgMTgyIGluc2VydGlvbnMoKyksIDEzOSBkZWxldGlvbnMoLSkKKworY29tbWl0IDgyNTY1NmFmZTNlOTg1NmRjODQ2YzIyNWRmOGFmNzNkMjM3NmZhM2UKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gT2N0IDE4IDIzOjA3OjAzIDIwMDkgKzAyMDAKKworICAgIFVwZGF0ZSBEcGtnOjpDaGFuZ2Vsb2cgdG8gdXNlIG5ldyA6OkVudHJ5IG1vZHVsZXMKKyAgICAKKyAgICBEcm9wIHRoZSBEcGtnOjpDaGFuZ2Vsb2c6OkVudHJ5IGVtYmVkZGVkIGluIERwa2c6OkNoYW5nZWxvZy4KKyAgICBVcGRhdGUgRHBrZzo6Q2hhbmdlbG9nIGFuZCBEcGtnOjpDaGFuZ2Vsb2c6OkRlYmlhbiB0byB1c2UgdGhlCisgICAgbmV3IG1vZHVsZXMuCisgICAgCisgICAgU29tZSAodW5kb2N1bWVudGVkKSBmZWF0dXJlcyBoYXZlIGJlZW4gcmVtb3ZlZCB3aXRoIHRoaXMgcmV3cml0ZS4KKyAgICBUaGUgZW50cmllcyBhcmUgbm90IHBhcnNlZCBpdGVtIGJ5IGl0ZW0gYW55bW9yZS4gVGhlIFVyZ2VuY3kgZmllbGQKKyAgICB3aWxsIG5vIGxvbmdlciByZWNlaXZlIHRoZSBjb21tZW50IHRoYXQgY2FuIGZvbGxvdyB0aGUgdXJnZW5jeS4KKyAgICAKKyAgICBUaGUgY29udGVudCBvZiDigJxDbG9zZXPigJ0gaXMgZXhwb3J0ZWQgYnkgRHBrZzo6Q2hhbmdlbG9nOjpFbnRyeTo6RGViaWFuCisgICAgYXMgYW4gb3B0aW9uYWwgZmllbGQuCisgICAgCisgICAgVGhlIHRlc3Qtc3VpdGUgYWxzbyBoYWQgdG8gYmUgdXBkYXRlZCB0byBjb3BlIHdpdGggdGhlIEFQSSBjaGFuZ2VzCisgICAgYW5kIHRoZSBmYWN0IHRoYXQgYnVncyBhcmUgbm8gbG9uZ2VyIGR1cGxpY2F0ZWQgaW4gdGhlIOKAnENsb3Nlc+KAnSBmaWVsZC4KKworIHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG0gICAgICAgIHwgIDE1OCArKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRGViaWFuLnBtIHwgIDEyMiArKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHNjcmlwdHMvdC82MDBfRHBrZ19DaGFuZ2Vsb2cudCAgIHwgICAgOCArLQorIDMgZmlsZXMgY2hhbmdlZCwgOTYgaW5zZXJ0aW9ucygrKSwgMTkyIGRlbGV0aW9ucygtKQorCitjb21taXQgNzUwYzViNGQ2MzBhYTdiOGFhNzJiMWI2ZDYyMWI3ZWI1ZWI3MDA5MworQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBPY3QgMTggMjI6MzY6MjAgMjAwOSArMDIwMAorCisgICAgRHBrZzo6Q2hhbmdlbG9nOjpFbnRyeSwgRHBrZzo6Q29udHJvbDo6Q2hhbmdlbG9nOiBuZXcgbW9kdWxlcworICAgIAorICAgIERwa2c6OkNoYW5nZWxvZzo6RW50cnkgaXMgYSBzb21ld2hhdCBnZW5lcmljIHJlcHJlc2VudGF0aW9uIG9mIGEKKyAgICBjaGFuZ2Vsb2cgZW50cnkuIEl0IG9mZmVycyBhbiBpbnRlcmZhY2UgZXhwb3J0aW5nIHRoZSBiYXNpYyBpbmZvcm1hdGlvbgorICAgIHRoYXQgd2UgbmVlZCB0byBleHRyYWN0IGZvciBkcGtnLXBhcnNlY2hhbmdlbG9nLgorICAgIAorICAgIERwa2c6OkNoYW5nZWxvZzo6RW50cnk6OkRlYmlhbiBpcyB0aGUgaW1wbGVtZW50YXRpb24gb2YgdGhpcworICAgIGludGVyZmFjZSBmb3IgdGhlIHR5cGljYWwgRGViaWFuIGNoYW5nZWxvZyBlbnRyeS4KKyAgICAKKyAgICBEcGtnOjpDb250cm9sOjpDaGFuZ2Vsb2cgaXMgdGhlIG9iamVjdCByZXByZXNlbnRpbmcgdGhlCisgICAgaW5mb3JtYXRpb24gZXhwb3J0ZWQgYnkgZHBrZy1wYXJzZWNoYW5nZWxvZy4gSXQgc3RhcnRzIGVtcHR5CisgICAgYXMgYSBzaW1wbGUgRHBrZzo6Q29udHJvbCBvZiB0eXBlIENUUkxfQ0hBTkdFTE9HLgorICAgIAorICAgIFRob3NlIG5ldyBtb2R1bGVzIGFyZSBub3QgeWV0IHVzZWQgYnkgdGhlIERwa2c6OkNoYW5nZWxvZyBtb2R1bGVzLgorCisgc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9FbnRyeS5wbSAgICAgICAgfCAgMjg0ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCisgc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9FbnRyeS9EZWJpYW4ucG0gfCAgMTU2ICsrKysrKysrKysrKysrKysrCisgc2NyaXB0cy9EcGtnL0NvbnRyb2wvQ2hhbmdlbG9nLnBtICAgICAgfCAgIDU5ICsrKysrKysKKyBzY3JpcHRzL01ha2VmaWxlLmFtICAgICAgICAgICAgICAgICAgICB8ICAgIDMgKworIHNjcmlwdHMvcG8vUE9URklMRVMuaW4gICAgICAgICAgICAgICAgIHwgICAgMyArCisgNSBmaWxlcyBjaGFuZ2VkLCA1MDUgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IGYzMzUyZmUwNmEwNDkxYTU2NDJhY2I3MmY5ZjVlMzcyNGYyZThhMTMKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgT2N0IDIyIDA5OjU0OjA1IDIwMDkgKzAyMDAKKworICAgIERwa2c6OkluZGV4OiBuZXcgbW9kdWxlCisgICAgCisgICAgVGhpcyBtb2R1bGUgcmVwcmVzZW50cyBhbiBvcmRlcmVkIHNldCBvZiBEcGtnOjpDb250cm9sIG9iamVjdHMuCisgICAgSXQgZW5zdXJlcyB1bmlxdWVuZXNzIGZvciBvYmplY3RzIGJhc2VkIG9uIGEgY3VzdG9taXNhYmxlIGtleS4KKworIHNjcmlwdHMvRHBrZy9JbmRleC5wbSAgfCAgMzcxICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKworIHNjcmlwdHMvTWFrZWZpbGUuYW0gICAgfCAgICAxICsKKyBzY3JpcHRzL3BvL1BPVEZJTEVTLmluIHwgICAgMSArCisgMyBmaWxlcyBjaGFuZ2VkLCAzNzMgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IGFmNTJkYmNiMWU5YmZiOWNmYzM4M2Y3OWJkZmQ4MjVjMmU2OTQ5MGYKK0F1dGhvcjogRnJhbmsgTGljaHRlbmhlbGQgPGRqcGlnQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBPY3QgMzEgMjI6MjU6MTIgMjAwOSArMDEwMAorCisgICAgUmVtb3ZlIG15c2VsZiBmcm9tIFVwbG9hZGVycworICAgIAorICAgIEl0J3MgYmVlbiBhIHdoaWxlIHNpbmNlIEkgZGlkIGFueXRoaW5nIGluIGRwa2csIGFuZCBJIGRvbid0IHNlZQorICAgIGFueSBjaGFuY2Ugb2YgdGhhdCBjaGFuZ2luZyBpbiB0aGUgbmVhciBmdXR1cmUuCisKKyBkZWJpYW4vY29udHJvbCB8ICAgIDMgKy0tCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAxOGU2MTM2OTk5MGY5OTY5YzdlZjY2NmQwMjRhMDc2NmNjMGZlZWE5CitBdXRob3I6IENocmlzdGlhbiBQZXJyaWVyIDxidWJ1bGxlQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBPY3QgMzEgMTc6MjQ6MTYgMjAwOSArMDEwMAorCisgICAgRml4IGdyYW1tYXRpY2FsIGVycm9yCisKKyBtYW4vcG8vZnIucG8gfCAgICAyICstCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA2YjNkMDUyODEzYWVjNjMzNzVjNGVlYzI2NzA5MDRjYTYzNGFkY2ExCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIE9jdCAzMCAxNDo1OTozMyAyMDA5ICswMTAwCisKKyAgICBGaXggc3BlbGxpbmcgZXJyb3JzIGluIHRoZSBDYXRhbGFuIHRyYW5zbGF0aW9uCisgICAgCisgICAgQ2xvc2VzOiAjNTUzMzI4CisgICAgCisgICAgUmVwb3J0ZWQtYnk6IFJvYmVydCBNaWxsYW4gPHJtaC5pZXNtb250c2VycmF0QGdtYWlsLmNvbT4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAyICsrCisgcG8vY2EucG8gICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgNyBpbnNlcnRpb25zKCspLCA1IGRlbGV0aW9ucygtKQorCitjb21taXQgNzYwNDRiMDA1Nzg0MTI5YjVjN2ZhYTUxY2QwNTBjNDNlODYxZGViNgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBPY3QgMzAgMTQ6Mzg6NDcgMjAwOSArMDEwMAorCisgICAgYnVpbGQ6IFVzZSBwa2ctY29uZmlnIG00IG1hY3JvcyB0byBkZXRlY3Qgc2VsaW51eCBsaWJyYXJ5CisgICAgCisgICAgVXNlIFBLR19QUk9HX1BLR19DT05GSUcgdG8gZGV0ZWN0IGFuZCBhbGxvdyBvdmVycmlkaW5nIHRoZSBwa2ctY29uZmlnCisgICAgYmluYXJ5IHRvIHVzZSwgZm9yIGV4YW1wbGUgaW4gY2FzZSBvZiBjcm9zcy1jb21waWxhdGlvbi4KKyAgICAKKyAgICBTdWdnZXN0ZWQtYnk6IFRvbGxlZiBGb2cgSGVlbiA8dGZoZWVuQGVyci5ubz4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAyICsrCisgbTQvZHBrZy1saWJzLm00ICB8ICAgMTUgKysrKysrKystLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAxMCBpbnNlcnRpb25zKCspLCA3IGRlbGV0aW9ucygtKQorCitjb21taXQgYTg4OGRlNGIxYzJlMWJjODY3ZmVlNDg3ZTA0YmQ1NjFmNWFhMmY3ZAorQXV0aG9yOiBGZWxpcGUgQ29udHJlcmFzIDxmZWxpcGUuY29udHJlcmFzQGdtYWlsLmNvbT4KK0RhdGU6ICAgU3VuIE9jdCAyNSAxNTo0MDoxNSAyMDA5ICswMjAwCisKKyAgICBidWlsZDogSWYgdGhlcmUncyBubyBsaWJzZWxpbnV4LnBjIGZpbGUgZmFsbGJhY2sgdG8gaGFyZGNvZGVkIGxpc3QKKyAgICAKKyAgICBTaWduZWQtb2ZmLWJ5OiBGZWxpcGUgQ29udHJlcmFzIDxmZWxpcGUuY29udHJlcmFzQGdtYWlsLmNvbT4KKyAgICBTaWduZWQtb2ZmLWJ5OiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKyBtNC9kcGtnLWxpYnMubTQgfCAgIDE0ICsrKysrKysrKysrLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAxMSBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQorCitjb21taXQgNDM4ZTkzZGUzODdkMzEzYzYwODVlZWE2MzEwMWE0YzRlNzE0YTJkNQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBPY3QgMjkgMjE6MzQ6MTIgMjAwOSArMDEwMAorCisgICAgVXBkYXRlIFRPRE8gbGlzdAorICAgIAorICAgIFJlbW92ZSBkb25lIGl0ZW1zLiBSZW1vdmUgaXRlbXMgbW92ZWQgdG8gdGhlIFJvYWRNYXAgaW4gdGhlIHdpa2ksIGFuZAorICAgIGFkZCBhIGxpbmsgdG8gaXQuIE1vdmUgaXRlbXMgYXJvdW5kIHdlcmUgdGhleSBiZXR0ZXIgZml0LiBTZXBhcmF0ZSBvbGQKKyAgICBUT0RPcyB3aXRoIGEgc3RyYWlnaHQgbGluZS4KKworIFRPRE8gfCAgIDU2ICsrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAxNyBpbnNlcnRpb25zKCspLCAzOSBkZWxldGlvbnMoLSkKKworY29tbWl0IDljM2JjYzZmYjAzM2ZkNWNmMjUxYzQ2MDI0YTNiZWNjOTMyMzU0YmUKK0F1dGhvcjogSm9uYXRoYW4gTmllZGVyIDxqcm5pZWRlckBnbWFpbC5jb20+CitEYXRlOiAgIFNhdCBPY3QgMjQgMTc6MjE6NDkgMjAwOSAtMDUwMAorCisgICAgbWFuOiBGaXggYSBzbWFsbCB0eXBvIGluIGRwa2cuMQorICAgIAorICAgIEV4dHJhIOKAnGJl4oCdIGluIOKAnGNhbiBiZSBhbHNvIGJl4oCdLgorICAgIAorICAgIFNpZ25lZC1vZmYtYnk6IEpvbmF0aGFuIE5pZWRlciA8anJuaWVkZXJAZ21haWwuY29tPgorICAgIFNpZ25lZC1vZmYtYnk6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworIG1hbi9kcGtnLjEgICAgICB8ICAgIDIgKy0KKyBtYW4vcG8vZGUucG8gICAgfCAgICA0ICsrLS0KKyBtYW4vcG8vZXMucG8gICAgfCAgICA0ICsrLS0KKyBtYW4vcG8vZnIucG8gICAgfCAgICA0ICsrLS0KKyBtYW4vcG8vaHUucG8gICAgfCAgICA0ICsrLS0KKyBtYW4vcG8vamEucG8gICAgfCAgICA0ICsrLS0KKyBtYW4vcG8vcGwucG8gICAgfCAgICA0ICsrLS0KKyBtYW4vcG8vcHRfQlIucG8gfCAgICA0ICsrLS0KKyBtYW4vcG8vcnUucG8gICAgfCAgICA0ICsrLS0KKyBtYW4vcG8vc3YucG8gICAgfCAgICA0ICsrLS0KKyAxMCBmaWxlcyBjaGFuZ2VkLCAxOSBpbnNlcnRpb25zKCspLCAxOSBkZWxldGlvbnMoLSkKKworY29tbWl0IDY3OWQxZDc1NzgwZjdlMWIyZTMyZjE1OGNkNzIzNTdkOTA4N2E3YTYKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgT2N0IDI5IDE4OjQxOjU0IDIwMDkgKzAxMDAKKworICAgIGJ1aWxkOiBPbmx5IHVzZSBwbzRhIGlmIHByZXNlbnQgYW5kIGlmIE5MUyBpcyBlbmFibGVkCisgICAgCisgICAgVXNlIHRoZSBwbzRhIGNvbW1hbmQgZm91bmQgd2hlbiBkb2luZyB0aGUgYXZhaWxhYmlsaXR5IGNoZWNrcy4KKyAgICAKKyAgICBSZXBvcnRlZC1ieTogRmVsaXBlIENvbnRyZXJhcyA8ZmVsaXBlLmNvbnRyZXJhc0BnbWFpbC5jb20+CisKKyBjb25maWd1cmUuYWMgICAgIHwgICAgMSArCisgbTQvZHBrZy1wcm9ncy5tNCB8ICAgMTQgKysrKysrKysrKysrKysKKyBtYW4vTWFrZWZpbGUuYW0gIHwgICAxNCArKysrKysrLS0tLS0tLQorIDMgZmlsZXMgY2hhbmdlZCwgMjIgaW5zZXJ0aW9ucygrKSwgNyBkZWxldGlvbnMoLSkKKworY29tbWl0IDk5ZTIxMzc4NzU5NWZlYzFhNzkzOWJhMWEwMzk1ZGZkZmQ2MmM3YmEKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgT2N0IDI5IDE4OjAxOjE3IDIwMDkgKzAxMDAKKworICAgIGJ1aWxkOiBSZW5hbWUgYW5kIG5hbWVzcGFjZSBkcGtnIG00IGZpbGVzCisgICAgCisgICAgVGhpcyBhdm9pZHMgcG9zc2libGUgZnV0dXJlIGNvbGxpc2lvbnMgYW5kIG1ha2VzIGl0IGVhc2llciB0byBzZWUKKyAgICB3aGF0J3MgY29taW5nIGZyb20gZHBrZyBhbmQgd2hhdCBlYWNoIGZpbGUgaXMgZm9yLgorCisgbTQve2FyY2gubTQgPT4gZHBrZy1hcmNoLm00fSAgICAgICAgIHwgICAgMAorIG00L3tjb21waWxlci5tNCA9PiBkcGtnLWNvbXBpbGVyLm00fSB8ICAgIDAKKyBtNC97ZnVuY3MubTQgPT4gZHBrZy1mdW5jcy5tNH0gICAgICAgfCAgICAwCisgbTQve2xpYnMubTQgPT4gZHBrZy1saWJzLm00fSAgICAgICAgIHwgICAgMAorIG00L3tsaW5rZXIubTQgPT4gZHBrZy1saW5rZXIubTR9ICAgICB8ICAgIDAKKyBtNC97cGVybC5tNCA9PiBkcGtnLXByb2dzLm00fSAgICAgICAgfCAgICAwCisgbTQve3R5cGVzLm00ID0+IGRwa2ctdHlwZXMubTR9ICAgICAgIHwgICAgMAorIDcgZmlsZXMgY2hhbmdlZCwgMCBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgM2U1Y2UwYTU0YTc4NzkwYWRmODZmYjhiZGNkYjI4ODEyMWEwMzljNgorQXV0aG9yOiBKb25hdGhhbiBOaWVkZXIgPGpybmllZGVyQGdtYWlsLmNvbT4KK0RhdGU6ICAgU2F0IE9jdCAyNCAxNzozMjo1NiAyMDA5IC0wNTAwCisKKyAgICBsaWJkcGtnOiBmaXggbWlzc3BlbGxpbmcgb2YgX19hdHRyaWJ1dGVfXygoY29uc3QpKQorICAgIAorICAgIGdjYyBkb2VzIG5vdCByZWNvZ25pemUgX19hdHRyaWJ1dGVfXygoY29uc3RhbnQpKS4KKyAgICAKKyAgICBTaWduZWQtb2ZmLWJ5OiBKb25hdGhhbiBOaWVkZXIgPGpybmllZGVyQGdtYWlsLmNvbT4KKyAgICBTaWduZWQtb2ZmLWJ5OiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKyBsaWIvZHBrZy9tYWNyb3MuaCB8ICAgIDIgKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDdiODQ5ZjcyOTdlNDU4MmIzYTEzNDE3ZGI2OGQxM2EyNDY0ZGY4OWIKK0F1dGhvcjogU2VhbiBGaW5uZXkgPHNlYW5pdXNAZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIE9jdCAxNCAyMToyMzowNSAyMDA5ICswMjAwCisKKyAgICBkcGtnOiBBZGQgSmF2YURvYyBjb21tZW50cyBmb3IgcHJvbXB0Y29uZmFjdGlvbigpCisgICAgCisgICAgU2lnbmVkLW9mZi1ieTogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisgc3JjL2NvbmZpZ3VyZS5jIHwgICAyNSArKysrKysrKysrKysrKysrKysrKysrKy0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyMyBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgZmNkMzI5MjRmMzQ4NTlhZTljYWI0OGQ5MmUwNTRiMjk3YTU3N2JjNQorQXV0aG9yOiBTZWFuIEZpbm5leSA8c2Vhbml1c0BkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgT2N0IDE0IDIxOjIzOjA0IDIwMDkgKzAyMDAKKworICAgIGRwa2c6IFBhc3MgYSBwa2dpbmZvIHN0cnVjdHVyZSB0byBwcm9tcHRjb25mYWN0aW9uKCkKKyAgICAKKyAgICBJbiBvcmRlciB0byBwcm92aWRlIGFuIGludGVyZmFjZSBpbnRvIHRoZSBjb25mZmlsZXMgREIgQVBJLCBpdCdzIHJlcXVpcmVkCisgICAgdG8ga25vdyB0aGUgcGFja2FnZSBuYW1lIHRoYXQgb3ducyB0aGUgY29uZmZpbGUuIFNpbmNlIHRoaXMgaXMgYSBzdGF0aWMKKyAgICBmdW5jdGlvbiBhbmQgdGhlIHBhY2thZ2Ugc3RydWN0dXJlIGlzIGF2YWlsYWJsZSBpbiBhbGwgcGxhY2VzIHRoYXQgdGhlCisgICAgZnVuY3Rpb24gaXMgdXNlZCwgdGhpcyBpcyBhIGZhaXJseSBlYXN5IGZpeC4KKyAgICAKKyAgICBTaWduZWQtb2ZmLWJ5OiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKyBzcmMvY29uZmlndXJlLmMgfCAgICA3ICsrKystLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworY29tbWl0IGUwMDBlNGExMDliOTViYzQzZTU1OGUyZjUzYmM4NWJjNjNkMzE3N2QKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gT2N0IDExIDE2OjMzOjIxIDIwMDkgKzAyMDAKKworICAgIERvY3VtZW50IHNvbWUgb2YgdGhlIGNvZGUgd2l0aCBKYXZhRG9jCisKKyBsaWIvZHBrZy9wa2ctYXJyYXkuYyB8ICAgMTYgKysrKysrKysrKysrKysrKworIGxpYi9kcGtnL3BrZy1hcnJheS5oIHwgICAgMyArKysKKyBsaWIvZHBrZy9wa2cuYyAgICAgICB8ICAgMTEgKysrKysrKysrKysKKyBzcmMvY29uZmlndXJlLmMgICAgICB8ICAgMzcgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLQorIDQgZmlsZXMgY2hhbmdlZCwgNjAgaW5zZXJ0aW9ucygrKSwgNyBkZWxldGlvbnMoLSkKKworY29tbWl0IDJiYTUyMDQ5MGI1MmRiOTgyODJhNDQ3NmQyM2Q5ZmQ4YzU3OTgyNzAKK0F1dGhvcjogU2VhbiBGaW5uZXkgPHNlYW5pdXNAZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIE9jdCAxMiAyMTowMTo0NSAyMDA5ICswMjAwCisKKyAgICBkb2M6IFR1bmUgc29tZSBEb3h5Z2VuIHNldHRpbmdzCisKKyBkb2MvRG94eWZpbGUuaW4gfCAgICA2ICsrKy0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQorCitjb21taXQgODc2YjUxMjYzMTQyOTFjYWZiYTMxYmQ0YzM0MWI5NWY3NzdjZjlmYQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBPY3QgOSAxNTo0MTo1NCAyMDA5ICswMjAwCisKKyAgICBkb2M6IEFkZCBkb3h5Z2VuIHN1cHBvcnQKKyAgICAKKyAgICBUaGUgY29kZSBzaG91bGQgc3RhcnQgZ2V0dGluZyBzd2l0Y2hlZCB0byBkb2N1bWVudCB1c2luZyBKYXZhRG9jCisgICAgc3R5bGUgY29tbWVudHMsIGF0IGxlYXN0IGZvciBwdWJsaWMgZGVjbGFyYXRpb25zLgorCisgTWFrZWZpbGUuYW0gICAgICAgICAgfCAgICA4ICsKKyBjb25maWd1cmUuYWMgICAgICAgICB8ICAgIDMgKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgIHwgICAgMSArCisgZG9jLy5naXRpZ25vcmUgICAgICAgfCAgICAyICsKKyBkb2MvRG94eWZpbGUuaW4gICAgICB8IDE1MjEgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKKyBkb2MvY29kaW5nLXN0eWxlLnR4dCB8ICAgIDUgKworIDYgZmlsZXMgY2hhbmdlZCwgMTU0MCBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgOTcxZTY3NWExODBjNTk2NDJlMjQwNmFjYmIwYzZmN2JjNjg5NjFlNgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBPY3QgMjUgMjM6NTY6MzAgMjAwOSArMDEwMAorCisgICAgR2VuZXJhdGUgdGhlIGF1dG9jb25mIHZlcnNpb24gZnJvbSBnaXQKKyAgICAKKyAgICBVc2UgYSBuZXcgc2NyaXB0IHRvIHJldHJpZXZlIHRoZSB2ZXJzaW9uIGZyb20gYSBmaWxlIHNoaXBwZWQgaW4gdGhlCisgICAgcmVsZWFzZWQgdGFyYmFsbHMsIG9yIGZyb20gdGhlIGdpdCByZXBvc2l0b3J5IHVzaW5nIOKAnGdpdCBkZXNjcmliZeKAnQorICAgIHdoaWNoIHdpbGwgZ2l2ZSBhbiBhcHByb3ByaWF0ZSBzdHJpbmcgaW4gY2FzZSBvZiBhIHNuYXBzaG90LCBhbmQgYWRkCisgICAgYSBwb3NzaWJsZSDigJwtZGlydHnigJ0gc3VmZml4IGlmIHRoZSB3b3JraW5nIGRpciBoYXMgdW5jb21taXR0ZWQgY2hhbmdlcy4KKworIE1ha2VmaWxlLmFtICAgICAgfCAgICAyICsrCisgY29uZmlndXJlLmFjICAgICB8ICAgIDIgKy0KKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMiArKworIGdldC12ZXJzaW9uICAgICAgfCAgIDQyICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKworIDQgZmlsZXMgY2hhbmdlZCwgNDcgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDFjODhlYWQwNGM5NTA5NmYwM2I2MWE2MDMyZDQ0M2EzMjc5NjQ5MjYKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgT2N0IDE3IDAyOjM4OjAzIDIwMDkgKzAyMDAKKworICAgIFNvcnQgb3JkZXIgb2YgaGVhZGVyIGluY2x1ZGVzCisgICAgCisgICAgUGxhY2UgZmlyc3QgPGNvbmZpZy5oPiBhbmQgPGNvbXBhdC5oPiwgdGhlbiBhbGwgPHN5cy8qLmg+IHNvcnRlZCBieQorICAgIGNvbXBsZXhpdHksIGZvbGxvd2VkIGJ5IHRoZSByZXN0IG9mIHRoZSBzeXN0ZW0gaGVhZGVycywgdGhlbiA8ZHBrZy8qLmg+CisgICAgYW5kIGZpbmFsbHkgdGhlIGxvY2FsICIqLmgiIG9uZXMuCisgICAgCisgICAgTW92ZSA8ZHBrZy9pMThuLmg+IGluY2x1c2lvbiBpbnRvIGxpYmRwa2cgaW5jbHVzaW9uIGJsb2NrLCBhcyB0aGUKKyAgICA8Z2V0dGV4dC5oPiBjb21wYXRpYmlsaXR5IGhlYWRlciBhbHJlYWR5IHRha2VzIGNhcmUgb2YgaW5jbHVkaW5nCisgICAgPGxvY2FsZS5oPiBiZWZvcmUgPGxpYmludGwuaD4gb24gZW52aXJvbm1lbnRzIHdlcmUgaXRzIHByb2JhbWF0aWMuCisgICAgCisgICAgUmVtb3ZlZCBkdXBsaWNhdGVkIGluY2x1c2lvbnMuCisKKyBkcGtnLWRlYi9idWlsZC5jICAgICAgICAgIHwgICAyNCArKysrKysrKy0tLS0tLS0tCisgZHBrZy1kZWIvZXh0cmFjdC5jICAgICAgICB8ICAgMjEgKysrKysrKy0tLS0tLQorIGRwa2ctZGViL2luZm8uYyAgICAgICAgICAgfCAgIDE5ICsrKysrKy0tLS0tLQorIGRwa2ctZGViL21haW4uYyAgICAgICAgICAgfCAgIDI0ICsrKysrKysrLS0tLS0tLS0KKyBkcGtnLXNwbGl0L2luZm8uYyAgICAgICAgIHwgICAxMyArKysrLS0tLQorIGRwa2ctc3BsaXQvam9pbi5jICAgICAgICAgfCAgIDEwICsrKy0tLQorIGRwa2ctc3BsaXQvbWFpbi5jICAgICAgICAgfCAgIDEzICsrKystLS0tCisgZHBrZy1zcGxpdC9xdWV1ZS5jICAgICAgICB8ICAgMTUgKysrKystLS0tCisgZHBrZy1zcGxpdC9zcGxpdC5jICAgICAgICB8ICAgMTMgKysrKy0tLS0KKyBkc2VsZWN0L2Jhc2VjbWRzLmNjICAgICAgIHwgICAgNSArLS0KKyBkc2VsZWN0L2Jhc2VsaXN0LmNjICAgICAgIHwgICAxMCArKystLS0KKyBkc2VsZWN0L2JpbmRpbmdzLmNjICAgICAgIHwgICAgNSArLS0KKyBkc2VsZWN0L2RzZWxlY3QuaCAgICAgICAgIHwgICAgOCArKy0tCisgZHNlbGVjdC9tYWluLmNjICAgICAgICAgICB8ICAgMjMgKysrKysrKy0tLS0tLS0tCisgZHNlbGVjdC9tZXRobGlzdC5jYyAgICAgICB8ICAgIDcgKystLQorIGRzZWxlY3QvbWV0aG9kLmNjICAgICAgICAgfCAgIDIzICsrKysrKystLS0tLS0tLQorIGRzZWxlY3QvbWV0aHBhcnNlLmNjICAgICAgfCAgIDE4ICsrKysrKy0tLS0tLQorIGRzZWxlY3QvcGtnY21kcy5jYyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wa2dkZXBjb24uY2MgICAgICB8ICAgIDQgKy0KKyBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2MgICAgIHwgICAgNSArLS0KKyBkc2VsZWN0L3BrZ2luZm8uY2MgICAgICAgIHwgICAgNyArKy0tCisgZHNlbGVjdC9wa2dsaXN0LmNjICAgICAgICB8ICAgIDkgKystLS0KKyBkc2VsZWN0L3BrZ3N1Ymxpc3QuY2MgICAgIHwgICAgNyArKy0tCisgZHNlbGVjdC9wa2d0b3AuY2MgICAgICAgICB8ICAgIDcgKystLQorIGxpYi9jb21wYXQvYWxwaGFzb3J0LmMgICAgfCAgICAyICstCisgbGliL2NvbXBhdC9zY2FuZGlyLmMgICAgICB8ICAgIDMgKy0KKyBsaWIvY29tcGF0L3Vuc2V0ZW52LmMgICAgIHwgICAgMiArLQorIGxpYi9jb21wYXQvdnNucHJpbnRmLmMgICAgfCAgICAyICstCisgbGliL2Rwa2cvYnVmZmVyLmMgICAgICAgICB8ICAgIDYgKystLQorIGxpYi9kcGtnL2NsZWFudXAuYyAgICAgICAgfCAgICA0ICstCisgbGliL2Rwa2cvY29tcHJlc3Npb24uYyAgICB8ICAgIDkgKystLS0KKyBsaWIvZHBrZy9kYXRhYmFzZS5jICAgICAgIHwgICAgNCArLQorIGxpYi9kcGtnL2RibW9kaWZ5LmMgICAgICAgfCAgIDE5ICsrKysrKy0tLS0tLQorIGxpYi9kcGtnL2Rwa2ctZGIuaCAgICAgICAgfCAgICA5ICsrKy0tCisgbGliL2Rwa2cvZHBrZy5oICAgICAgICAgICB8ICAgMTcgKysrKystLS0tLS0KKyBsaWIvZHBrZy9kdW1wLmMgICAgICAgICAgIHwgICAxNiArKysrKy0tLS0tCisgbGliL2Rwa2cvZWhhbmRsZS5jICAgICAgICB8ICAgMTIgKysrKy0tLS0KKyBsaWIvZHBrZy9maWVsZHMuYyAgICAgICAgIHwgICAgNiArKy0tCisgbGliL2Rwa2cvZmlsZS5jICAgICAgICAgICB8ICAgIDEgKworIGxpYi9kcGtnL2xvY2suYyAgICAgICAgICAgfCAgIDE0ICsrKystLS0tCisgbGliL2Rwa2cvbG9nLmMgICAgICAgICAgICB8ICAgIDkgKystLS0KKyBsaWIvZHBrZy9tZDUuYyAgICAgICAgICAgIHwgICAgMyArLQorIGxpYi9kcGtnL21saWIuYyAgICAgICAgICAgfCAgIDEzICsrKystLS0tCisgbGliL2Rwa2cvbXlvcHQtdXRpbC5jICAgICB8ICAgIDggKystLQorIGxpYi9kcGtnL215b3B0LmMgICAgICAgICAgfCAgICA2ICsrLS0KKyBsaWIvZHBrZy9uZm1hbGxvYy5jICAgICAgIHwgICAgNiArKy0tCisgbGliL2Rwa2cvcGFyc2UuYyAgICAgICAgICB8ICAgMjggKysrKysrKystLS0tLS0tLS0tCisgbGliL2Rwa2cvcGFyc2VoZWxwLmMgICAgICB8ICAgIDggKystLQorIGxpYi9kcGtnL3BhdGguYyAgICAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvcGF0aC5oICAgICAgICAgICB8ICAgIDQgKy0KKyBsaWIvZHBrZy9wcm9ncmVzcy5jICAgICAgIHwgICAgNCArLQorIGxpYi9kcGtnL3Nob3dwa2cuYyAgICAgICAgfCAgICA3ICsrLS0KKyBsaWIvZHBrZy9zdWJwcm9jLmMgICAgICAgIHwgICAgNiArKy0tCisgbGliL2Rwa2cvdGFyZm4uYyAgICAgICAgICB8ICAgIDggKystLQorIGxpYi9kcGtnL3RhcmZuLmggICAgICAgICAgfCAgICA1ICsrLQorIGxpYi9kcGtnL3Rlc3QuaCAgICAgICAgICAgfCAgICA2ICsrLS0KKyBsaWIvZHBrZy90ZXN0L3QtYnVmZmVyLmMgIHwgICAgNCArLQorIGxpYi9kcGtnL3Rlc3QvdC1wYXRoLmMgICAgfCAgICA0ICstCisgbGliL2Rwa2cvdGVzdC90LXN0cmluZy5jICB8ICAgIDQgKy0KKyBsaWIvZHBrZy90cmlnZGVmZXJyZWQubCAgIHwgICAgMyArLQorIGxpYi9kcGtnL3RyaWdsaWIuYyAgICAgICAgfCAgICA5ICsrLS0tCisgbGliL2Rwa2cvdXRpbHMuYyAgICAgICAgICB8ICAgIDMgKy0KKyBsaWIvZHBrZy92YXJidWYuYyAgICAgICAgIHwgICAgNSArKy0KKyBsaWIvZHBrZy92ZXJjbXAuYyAgICAgICAgIHwgICAgMSArCisgbTQvY29tcGlsZXIubTQgICAgICAgICAgICB8ICAgIDUgKy0tCisgc3JjL2FyY2hpdmVzLmMgICAgICAgICAgICB8ICAgMjAgKysrKysrLS0tLS0tCisgc3JjL2NsZWFudXAuYyAgICAgICAgICAgICB8ICAgMTcgKysrKysrLS0tLS0KKyBzcmMvY29uZmlndXJlLmMgICAgICAgICAgIHwgICAyNCArKysrKysrLS0tLS0tLS0KKyBzcmMvZGVwY29uLmMgICAgICAgICAgICAgIHwgICAgOSArKystLQorIHNyYy9kaXZlcnRkYi5jICAgICAgICAgICAgfCAgIDE1ICsrKystLS0tLQorIHNyYy9lbnF1aXJ5LmMgICAgICAgICAgICAgfCAgIDE4ICsrKysrKy0tLS0tLQorIHNyYy9lcnJvcnMuYyAgICAgICAgICAgICAgfCAgIDE5ICsrKysrKy0tLS0tLQorIHNyYy9maWxlc2RiLmMgICAgICAgICAgICAgfCAgIDE2ICsrKysrLS0tLS0KKyBzcmMvaGVscC5jICAgICAgICAgICAgICAgIHwgICAxNyArKysrKystLS0tLQorIHNyYy9tYWluLmMgICAgICAgICAgICAgICAgfCAgIDI2ICsrKysrKysrLS0tLS0tLS0KKyBzcmMvcGFja2FnZXMuYyAgICAgICAgICAgIHwgICAxNyArKysrKy0tLS0tLQorIHNyYy9wa2ctc2hvdy5jICAgICAgICAgICAgfCAgICAzICstCisgc3JjL3Byb2Nlc3NhcmMuYyAgICAgICAgICB8ICAgMjMgKysrKysrKystLS0tLS0tCisgc3JjL3F1ZXJ5LmMgICAgICAgICAgICAgICB8ICAgMTggKysrKysrLS0tLS0tCisgc3JjL3JlbW92ZS5jICAgICAgICAgICAgICB8ICAgMTcgKysrKystLS0tLS0KKyBzcmMvc2VsZWN0LmMgICAgICAgICAgICAgIHwgICAxMCArKystLS0KKyBzcmMvc3RhdGNtZC5jICAgICAgICAgICAgIHwgICAxNCArKysrLS0tLQorIHNyYy9zdGF0ZGIuYyAgICAgICAgICAgICAgfCAgIDE1ICsrKystLS0tLQorIHNyYy90cmlnY21kLmMgICAgICAgICAgICAgfCAgIDE1ICsrKystLS0tLQorIHNyYy90cmlncHJvYy5jICAgICAgICAgICAgfCAgICA2ICsrLS0KKyBzcmMvdXBkYXRlLmMgICAgICAgICAgICAgIHwgICAgOCArKy0tCisgdXRpbHMvaW5zdGFsbC1pbmZvLmMgICAgICB8ICAgIDQgKy0KKyB1dGlscy9zdGFydC1zdG9wLWRhZW1vbi5jIHwgICA2OCArKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyA4OCBmaWxlcyBjaGFuZ2VkLCA0ODIgaW5zZXJ0aW9ucygrKSwgNDk2IGRlbGV0aW9ucygtKQorCitjb21taXQgZmYzM2FhNDMwZTZkZTg0NWEwODlhNmEwMjNhOTQ3OGRhZmExMDljYworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBPY3QgMTcgMDI6MDc6MDIgMjAwOSArMDIwMAorCisgICAgUmVtb3ZlIHVudXNlZCA8Zm5tYXRjaC5oPiBpbmNsdWRlCisKKyBzcmMvZW5xdWlyeS5jIHwgICAgMSAtCisgc3JjL3RyaWdjbWQuYyB8ICAgIDEgLQorIHNyYy91cGRhdGUuYyAgfCAgICAxIC0KKyAzIGZpbGVzIGNoYW5nZWQsIDAgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworY29tbWl0IGNiZjk1YjEzNTAwYTNiMmQzYzJlNmRmMDI5NDA0NzljNjQ1NTY0ZmMKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gT2N0IDI1IDIzOjA2OjQ2IDIwMDkgKzAxMDAKKworICAgIEFkZCAubWFpbG1hcCB0byBFWFRSQV9ESVNUCisgICAgCisgICAgTWlzc2VkIGluIGNvbW1pdCA3MjJmYTU2NjBkNTJhYzc1ZGIwYjIxYTg2MDA0ZmMxMGY4ZjU4MGJiLgorCisgTWFrZWZpbGUuYW0gfCAgICAxICsKKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IGM5Y2Y3YjFkNDE3OGY4ZTI5M2EwMmVkZmM3Y2EyMjUyZDQxZGE4MWUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gT2N0IDE5IDEzOjA2OjQyIDIwMDkgKzAyMDAKKworICAgIGxpYmNvbXBhdDogQWx3YXlzIGFkZCBhbiBlbXB0eSBmaWxlIHRvIHRoZSBsaWJjb21wYXQgc3RhdGljIGxpYnJhcnkKKyAgICAKKyAgICBTb21lIGFyIGltcGxlbWVudGF0aW9ucyBkbyBub3Qgc3VwcG9ydCBjcmVhdGluZyBlbXB0eSBhcmNoaXZlcywgc28gd2UKKyAgICBhZGQgYSBkdW1teSBlbXB0eSBvYmplY3QgdG8gYXZvaWQgYW55IHByb2JsZW0uCisKKyBsaWIvY29tcGF0L01ha2VmaWxlLmFtIHwgICAgMSArCisgbGliL2NvbXBhdC9lbXB0eS5jICAgICB8ICAgIDEgKworIDIgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgMDc4MzY0MTkxZGZjNzg1NmMzZmY3ZjEzMDg3ZWQwNzJkOTEwYjc1ZQorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBPY3QgMjUgMjM6MzE6MTcgMjAwOSArMDEwMAorCisgICAgZGViaWFuL3J1bGVzOiB1c2Ug4oCcJChNQUtFKeKAnSBpbnN0ZWFkIG9mIOKAnG1ha2XigJ0KKworIGRlYmlhbi9ydWxlcyB8ICAgIDIgKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDA0YjJmOGZjNDgwMDUzOTRhM2Q4ZWE2Yzk2ZjZjNzk3NTg2NzYwNmMKK0F1dGhvcjogQ2hyaXN0aWFuIFBlcnJpZXIgPGJ1YnVsbGVAZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IE9jdCAyNCAwOToxNjoyMyAyMDA5ICswMjAwCisKKyAgICBGcmVuY2ggbWFucGFnZXMgdHJhbnNsYXRpb25zCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMSArCisgbWFuL3BvL2ZyLnBvICAgICB8ICAyMjAgKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCA3NyBpbnNlcnRpb25zKCspLCAxNDQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA5MDJkYzc3Y2U4MDMwZGRkYWU5ZjlkYjZiOTNkMGE4NzY0Y2YxOTQ0CitBdXRob3I6IENocmlzdGlhbiBQZXJyaWVyIDxidWJ1bGxlQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBPY3QgMjQgMDk6MTI6MTMgMjAwOSArMDIwMAorCisgICAgVXBkYXRlZCBGcmVuY2ggdHJhbnNsYXRpb24gb2YgZHNlbGVjdAorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDEgKworIGRzZWxlY3QvcG8vZnIucG8gfCAgIDEyICsrKysrLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCA3IGRlbGV0aW9ucygtKQorCitjb21taXQgN2YzMTMxOTU3MzJmMjhlZDhhYTQ1YjgxNGFkMzNhNjgxNGYwZmIzOAorQXV0aG9yOiBDaHJpc3RpYW4gUGVycmllciA8YnVidWxsZUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgT2N0IDI0IDA5OjA5OjAxIDIwMDkgKzAyMDAKKworICAgIFVwZGF0ZWQgRnJlbmNoIHRyYW5zbGF0aW9uCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMSArCisgcG8vZnIucG8gICAgICAgICB8ICAxMzcgKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCA1OSBpbnNlcnRpb25zKCspLCA3OSBkZWxldGlvbnMoLSkKKworY29tbWl0IDM3MDBmYWYzNzFlZGI3YjY5MzljZjIxZDE0NGZlZmJhZjliYmRkNWIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gT2N0IDE5IDE1OjE2OjUyIDIwMDkgKzAyMDAKKworICAgIFJlbGVhc2UgMS4xNS40LjEKKworIGNvbmZpZ3VyZS5hYyAgICAgfCAgICAyICstCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDQgKystLQorIDIgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQorCitjb21taXQgZDg2MDNkNzViYTk1YWMxZTFhM2JmNzllNzcyNDE2NTA4YjhmNGYxYgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBPY3QgMTkgMTU6MTQ6MzkgMjAwOSArMDIwMAorCisgICAgZHNlbGVjdDogRG8gbm90IG1hcmsgYW55IHBhY2thZ2UgYXMgdW5zZWVuCisgICAgCisgICAgVGhpcyBpcyBhIHdvcmthcm91bmQgdW50aWwgaXQgbGVhcm5zIGhvdyB0byBzdG9yZSBzdWNoIGluZm9ybWF0aW9uCisgICAgYWdhaW4uCisgICAgCisgICAgQ2xvc2VzOiAjNTQ1MzY2CisKKyBkZWJpYW4vY2hhbmdlbG9nICAgfCAgICAzICsrLQorIGRzZWxlY3QvcGtnbGlzdC5jYyB8ICAgIDQgKysrKworIDIgZmlsZXMgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgNjExMDM5MjY4NGMzNDUzODhiYjg1M2QyMGM4NTA0YjY4N2JiNDE4OQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBPY3QgMTkgMTU6MDc6MTQgMjAwOSArMDIwMAorCisgICAgQnVtcCB2ZXJzaW9uIHRvIDEuMTUuNC4xfgorCisgY29uZmlndXJlLmFjICAgICB8ICAgIDIgKy0KKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgNiArKysrKysKKyAyIGZpbGVzIGNoYW5nZWQsIDcgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGE4YTUxYTRhNTNlOTIzMjUwY2NjNGJmMGMyYzA0MGEyMTE5OTFjOTAKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gT2N0IDE4IDIzOjIxOjQyIDIwMDkgKzAyMDAKKworICAgIERwa2c6OkNoYW5nZWxvZzo6ZmluZF9jbG9zZXMoKTogZG9uJ3QgcmV0dXJuIGR1cGxpY2F0ZSBidWcgbnVtYmVycworICAgIAorICAgIEVuc3VyZSB3ZSBkb24ndCByZXR1cm4gdGhlIHNhbWUgYnVnIG11bHRpcGxlIHRpbWVzIGV2ZW4gaWYgaXQncyBjbG9zZWQKKyAgICBtdWx0aXBsZSB0aW1lcy4KKworIHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG0gfCAgICA2ICsrKy0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQorCitjb21taXQgNDNjNDJiM2VhMjlkYWFiMmJmNWQxZjZlZDRkNzQxZDMzZDUwZDRkOAorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBPY3QgMTggMjA6NTc6NTQgMjAwOSArMDIwMAorCisgICAgRHBrZzo6Q29udHJvbDo6RmllbGRzOiBhbGxvdyB0cmFuc2ZlciBvZiBjdXN0b20gZmllbGRzCisgICAgCisgICAgQ3VzdG9tIGZpZWxkcyBjYW4gYmUgY29waWVkIHdoZW4gdGhleSBkbyBub3QgdGFyZ2V0IG9uZSBvZgorICAgIHRoZSBvZmZpY2lhbCBmaWxlIHR5cGUgd2hvIGFyZSBleHBsaWNpdGVseSBtYW5hZ2VkIGJ5IHRoZQorICAgIGxldHRlciBzY2hlbWUgKFhbU0JDXS0pLgorCisgc2NyaXB0cy9EcGtnL0NvbnRyb2wvRmllbGRzLnBtIHwgICAyMSArKysrKysrKysrKysrKystLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDE1IGluc2VydGlvbnMoKyksIDYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA1Y2ZiNmE3NjIyMjdiZjI4NDJjMWZkYWNlOTc1NzgwNzhkN2ZkMjA2CitBdXRob3I6IEhlbGdlIEtyZXV0em1hbm4gPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorRGF0ZTogICBTdW4gT2N0IDE4IDEzOjEzOjIxIDIwMDkgKzAyMDAKKworICAgIEZpeCB0eXBvcworCisgbWFuL3BvL2RlLnBvIHwgICAgNiArKystLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworY29tbWl0IGMyNjI0Y2M5OWYzNjFlNjRhMDk3MDZkNmE2NjdjNTExYWE4MDNiZWEKK0F1dGhvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitEYXRlOiAgIEZyaSBPY3QgMTYgMTk6MDk6NTkgMjAwOSArMDIwMAorCisgICAgVXBkYXRlIEdlcm1hbiB0cmFuc2xhdGlvbiBvZiBtYW51YWwgcGFnZXMKKyAgICAKKyAgICBVcGRhdGUgdG8gMTY1MHQuCisKKyBtYW4vcG8vZGUucG8gfCAgIDM0ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDMzIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBmODI3MDUxOWE2MzIxMGE1YjZlYjAyY2ZmZjFiZGMyNGNiZmU0ZWY4CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIE9jdCAxNiAxMjo0NDoxMSAyMDA5ICswMjAwCisKKyAgICBEcGtnOjpDb21wcmVzc2lvbjogYWRkIHN1cHBvcnQgZm9yIHh6IGNvbXByZXNzaW9uIG1ldGhvZAorICAgIAorICAgIFVwZGF0ZSB0aGUgZHBrZy1zb3VyY2UgbWFudWFsIHBhZ2UgYWNjb3JkaW5nbHkuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgfCAgICAyICsrCisgZGViaWFuL2NvbnRyb2wgICAgICAgICAgICAgIHwgICAgMiArLQorIG1hbi9kcGtnLXNvdXJjZS4xICAgICAgICAgICB8ICAgIDcgKysrKy0tLQorIHNjcmlwdHMvRHBrZy9Db21wcmVzc2lvbi5wbSB8ICAgMTIgKysrKysrKy0tLS0tCisgNCBmaWxlcyBjaGFuZ2VkLCAxNCBpbnNlcnRpb25zKCspLCA5IGRlbGV0aW9ucygtKQorCitjb21taXQgZmYwMzVkOTQzMTYzZDFiMjY5YWVhZWMzMzRiODY1NGFlYjIwY2E3YQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBPY3QgMTYgMDI6Mzk6MTAgMjAwOSArMDIwMAorCisgICAgbWFuOiBGaXggdHlwbyBpbiBTd2VkaXNoIHRyYW5zbGF0aW9uIG1ha2luZyBidWlsZCB0byBmYWlsCisgICAgCisgICAgSW50cm9kdWNlZCBpbiBjb21taXQgYWYyMmU2NjljNjVkYjAxZWVjOWQ5Njk5ZDk4ODQxYjA4ZTdiYmM1Yi4KKworIG1hbi9wby9zdi5wbyB8ICAgIDQgKystLQorIDEgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgMTU0NDBmM2VkMTJlNzA4N2U2N2I2YjZjNDk3ZTIyYTEyNjU4M2JlMgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBPY3QgMTYgMDI6MjQ6MDMgMjAwOSArMDIwMAorCisgICAgZHBrZzogUmVtb3ZlIHVudXNlZCB2YXJpYWJsZSBjdXJyZW50IGluIHBrZ19maWxlc19hZGRfZmlsZSgpCisgICAgCisgICAgSW50cm9kdWNlZCBvbiBjb21taXQgNDk4NWM2ODZjMzBiMmQwNjgyYWFiMDg4NWQzMmMzNjAwN2E3OTk4ZCBieSBtZQorICAgIHdoaWxlIG1hbnVhbGx5IG1lcmdpbmcgdGhlIHBhdGNoIHRoYXQgZGlkbid0IGFwcGx5IGNsZWFubHkgb24gbWFzdGVyLgorICAgIAorICAgIFJlcG9ydGVkLWJ5OiBTZWFuIEZpbm5leSA8c2Vhbml1c0BkZWJpYW4ub3JnPgorCisgc3JjL2ZpbGVzZGIuYyB8ICAgIDIgKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGMwNTcwMjVkODQzNzE3MTRlMGVkMjFjNzk2MDRjY2Y3NDQyMDM2NzAKK0F1dGhvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitEYXRlOiAgIFdlZCBPY3QgMTQgMTg6NTA6NDcgMjAwOSArMDIwMAorCisgICAgRml4IHR5cG8KKworIG1hbi9wby9kZS5wbyB8ICAgIDQgKystLQorIDEgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgYWYyMmU2NjljNjVkYjAxZWVjOWQ5Njk5ZDk4ODQxYjA4ZTdiYmM1YgorQXV0aG9yOiBQZXRlciBLcmVmdGluZyA8cGV0ZXJrQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBPY3QgMTQgMDk6MjQ6NDcgMjAwOSArMDEwMAorCisgICAgVXBkYXRlIFN3ZWRpc2ggdHJhbnNsYXRpb24uCisgICAgCisgICAgZHNlbGVjdC9wby9zdi5wbzogVXBkYXRlIHRvIDI4MHQwZjB1LgorICAgIG1hbi9wby9zdi5wbzogVXBkYXRlIHRvIDE2NDJ0MGYwdS4KKyAgICBwby9zdi5wbzogVXBkYXRlIHRvIDk2N3QwZjB1LgorICAgIHNjcmlwdHMvcG8vc3YucG86IFVwZGF0ZSB0byA0NzF0MGYwdS4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgIDEyICstCisgZHNlbGVjdC9wby9zdi5wbyB8ICAgIDcgKy0KKyBtYW4vcG8vc3YucG8gICAgIHwgIDE1OSArKysrLS0tCisgcG8vc3YucG8gICAgICAgICB8IDE1MzkgKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgc2NyaXB0cy9wby9zdi5wbyB8ICA2MjkgKysrKysrKysrKysrLS0tLS0tLS0tLS0KKyA1IGZpbGVzIGNoYW5nZWQsIDEyMDIgaW5zZXJ0aW9ucygrKSwgMTE0NCBkZWxldGlvbnMoLSkKKworY29tbWl0IDM3Yzc1NGVjM2Q0NWExMjFhZWZmYzljMDNkYmE4Yjk3YjE3ODBmNDAKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgT2N0IDE0IDA1OjM3OjQzIDIwMDkgKzAyMDAKKworICAgIGxpYmNvbXBhdDogSGFuZGxlIDAgc2l6ZSBjYXNlIGZvciBDOTkgdnNucHJpbnRmIHNlbWFudGljcworICAgIAorICAgIFJlcG9ydGVyLWJ5OiBNaWtoYWlsIEd1c2Fyb3YgPGRvdHRlZG1hZ0Bkb3R0ZWRtYWcubmV0PgorCisgbGliL2NvbXBhdC92c25wcmludGYuYyB8ICAgIDUgKysrKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDM4OThkYzE3OTI1YWIzOGIyOTJiMWFjY2JmNDJlYWU5NTMzODFlM2MKK0F1dGhvcjogTWlraGFpbCBHdXNhcm92IDxkb3R0ZWRtYWdAZG90dGVkbWFnLm5ldD4KK0RhdGU6ICAgV2VkIE9jdCAxNCAwMzozNjoyMCAyMDA5ICswNzAwCisKKyAgICBsaWJjb21wYXQ6IEFkZCB0b3BfYnVpbGRkaXIgdG8gdGhlIGluY2x1ZGUgcGF0aAorICAgIAorICAgIE5lZWRlZCBhcyB0aGUgbW9kdWxlcyB1c2UgPGNvbmZpZy5oPi4KKyAgICAKKyAgICBTaWduZWQtb2ZmLWJ5OiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKyBsaWIvY29tcGF0L01ha2VmaWxlLmFtIHwgICAgMyArKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDUzN2QwODcwODgxMzQ3ODY1NDkyYjE2ODk4YzBiMzY2ZmYwNWFkZDYKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgT2N0IDE0IDA1OjE4OjIzIDIwMDkgKzAyMDAKKworICAgIGRwa2c6IFJlbW92ZSB1bnVzZWQgaGVhZCB2YXJpYWJsZSBpbiBnZXRzZWxlY3Rpb25zKCkKKworIHNyYy9zZWxlY3QuYyB8ICAgIDQgKy0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQorCitjb21taXQgMjgwZjI1ZTliMTk5YjkxZjAzMTA5N2JhZDVlYzUyNjMwZTEwYmY3NgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBPY3QgMTAgMTk6NTg6MDMgMjAwOSArMDIwMAorCisgICAgbGliZHBrZzogUmVuYW1lIHN5bWxpbmtMaXN0IHZhcmlhYmxlcyBpbiBUYXJFeHRyYWN0b3IoKQorICAgIAorICAgIFVzZSB0aGUgaGVhZCwgdGFpbCwgbm9kZSBuYW1lIGNvbnZlbnRpb24uCisKKyBsaWIvZHBrZy90YXJmbi5jIHwgICAzNCArKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAxNyBpbnNlcnRpb25zKCspLCAxNyBkZWxldGlvbnMoLSkKKworY29tbWl0IGM2NDQ3OTNkNWNjYWYwMjI0MmQ4MTRjZTc5ZTQ1YTQyMTA0ODFhYTMKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgT2N0IDE0IDA0OjI3OjAzIDIwMDkgKzAyMDAKKworICAgIGRwa2ctc3RhdG92ZXJyaWRlOiBGYWxsYmFjayB0byBwcmludGluZyAjPGlkPiBpZiBkYiBsb29rdXAgZmFpbHMKKyAgICAKKyAgICBUaGlzIGFsbG93cyBpdCB0byBncmFjZWZ1bGx5IGhhbmRsZSB1aWQgYW5kIGdpZCBub3QgcHJlc2VudCBvbiB0aGUKKyAgICBwYXNzd29yZCBkYXRhYmFzZXMsIHdoZW4gc3RvcmluZyBvbiB0aGUgb3ZlcnJpZGVzIGRiLCBpbiBhIHNpbWlsYXIgd2F5CisgICAgYXMgdGhlIHBlcmwgaW1wbGVtZW50YXRpb24gd2FzIGJlaGF2aW5nLgorICAgIAorICAgIFNwb3R0ZWQtYnk6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworIHNyYy9zdGF0Y21kLmMgfCAgIDE2ICsrKysrKysrKystLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDEwIGluc2VydGlvbnMoKyksIDYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAxZGUzZTFlMGYzMDZmYzQwNDk1OGYwMWYzODcwOGY5ZmIzNTk5OTI0CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIE9jdCAxNCAwNDoyNDo0NCAyMDA5ICswMjAwCisKKyAgICBkcGtnLXN0YXRvdmVycmlkZTogRml4IHR5cG8gaW52ZXJ0aW5nIHRoZSBvdmVycmlkZSBleGlzdHMgY2hlY2sKKworIHNyYy9zdGF0Y21kLmMgfCAgICAyICstCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA0OTA0OWVmZjA1ZWZjZmM2ZjY1NWNhYjMzNzlkMDI2NmNkNjg5YmZmCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIE9jdCAxNCAwMzo1NDowMyAyMDA5ICswMjAwCisKKyAgICBkcGtnLXN0YXRvdmVycmlkZTogQWRkIG1pc3NpbmcgdmFsdWVzIGZvciBvcHRpb24gZmxhZ3MKKyAgICAKKyAgICBUaGlzIHdhcyBtYWtpbmcgdGhlIC0tZm9yY2UsIC0tdXBkYXRlIGFuZCAtLXF1aWV0IGZsYWdzIG5vdCBkbyBhbnl0aGluZy4KKworIHNyYy9zdGF0Y21kLmMgfCAgICA2ICsrKy0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQorCitjb21taXQgNTE2NDdiMDc5M2NhMGY0MTljZDlmN2VhNTg2ZTAxZmZmZTY1NzRhOAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBPY3QgMTQgMDM6NTI6MjIgMjAwOSArMDIwMAorCisgICAgZHBrZy1zdGF0b3ZlcnJpZGU6IEFkZCBtaXNzaW5nIG5ld2xpbmUgaW4gLS12ZXJzaW9uIG91dHB1dAorCisgc3JjL3N0YXRjbWQuYyB8ICAgIDIgKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGY1ODI0ZjY1YjJlODM3ZmU2NTY1N2I3OWM1Njk1ZDhhYjZiMjA2YTIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gT2N0IDEyIDIxOjI1OjIyIDIwMDkgKzAyMDAKKworICAgIGxpYmRwa2c6IEV4cGFuZCBUS0lfREVGSU5FIG1hY3JvIGZvciBlYWNoIHVzZXIKKyAgICAKKyAgICBJdCBtYWtlcyBpdCBvYnZpb3VzIHdoYXQncyBnb2luZyBvbiwgYnJvd3NlciBhbmQgc2VhcmNoIHRoZSBzb3VyY2UKKyAgICBjb2RlLgorCisgbGliL2Rwa2cvdHJpZ2xpYi5jIHwgICAyOSArKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMTggaW5zZXJ0aW9ucygrKSwgMTEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA2OWUzYzkxMmJiZWMzMDM5OWQyMzQ3NzgxNzgyMWMzOGQwMWMxNDE1CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIE9jdCAxMiAyMToyMTowMyAyMDA5ICswMjAwCisKKyAgICBVc2UgbmFtZWQgaW50aWFsaXplcnMgaW4gc3RydWN0dXJlcworCisgbGliL2Rwa2cvdHJpZ2xpYi5jIHwgICAxOCArKysrKysrKystLS0tLS0tLS0KKyBzcmMvcHJvY2Vzc2FyYy5jICAgfCAgICA4ICsrKysrKy0tCisgc3JjL3RyaWdjbWQuYyAgICAgIHwgICAgNiArKystLS0KKyBzcmMvdHJpZ3Byb2MuYyAgICAgfCAgIDEwICsrKysrLS0tLS0KKyA0IGZpbGVzIGNoYW5nZWQsIDIzIGluc2VydGlvbnMoKyksIDE5IGRlbGV0aW9ucygtKQorCitjb21taXQgNWRhM2U5MmFmY2I2MTA5ZmVlZDVlOWRhYzE1NWViM2NhNzUwMTBlYgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBPY3QgMTAgMTk6MzA6MjAgMjAwOSArMDIwMAorCisgICAgRG8gbm90IHVzZSBDKysgc3R5bGUgY29tbWVudHMgaW4gQyBjb2RlCisKKyBkcGtnLWRlYi9idWlsZC5jICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDIgKy0KKyBzY3JpcHRzL3QvMjAwX0Rwa2dfU2hsaWJzL3N5bWJvbHRhZ3MuYyB8ICAgMTQgKysrKysrKysrLS0tLS0KKyBzcmMvY29uZmlndXJlLmMgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDIgKy0KKyAzIGZpbGVzIGNoYW5nZWQsIDExIGluc2VydGlvbnMoKyksIDcgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA0OTg1YzY4NmMzMGIyZDA2ODJhYWIwODg1ZDMyYzM2MDA3YTc5OThkCitBdXRob3I6IERhdmlkIEJlbmphbWluIDxkYXZpZGJlbkBNSVQuRURVPgorRGF0ZTogICBTYXQgQXVnIDI5IDE5OjU5OjIwIDIwMDkgLTA0MDAKKworICAgIGRwa2c6IFJlZmFjdG9yIGZpbGUgYWRkaXRpb24gaW50byBwYWNrYWdlIGZpbGVzIHRvIGEgbmV3IGZ1bmN0aW9uCisgICAgCisgICAgQWRkZWQgcHJpdmF0ZSBmdW5jdGlvbiBwa2dfZmlsZXNfYWRkX2ZpbGUgZm9yIGluc2VydGluZyBhIGZpbGUgdG8gYQorICAgIHBhY2thZ2UncyBlbnRyaWVzLiBUaGUgZnVuY3Rpb24gdGFrZXMgYSBmaWxlX3RhaWwgdG8gYXZvaWQgYW4gTyhuXjIpCisgICAgbG9vcCB3aGVuIGFkZGluZyB0byB0aGUgZW5kIG9mIHRoZSBsaXN0LiAoVGhpcyBpcyB3aGF0IHRoZSBvcmlnaW5hbCBjb2RlCisgICAgZG9lcywgc28gSSBoYXZlIG1pcnJvcmVkIGl0cyBiZWhhdmlvci4pCisgICAgCisgICAgU2lnbmVkLW9mZi1ieTogRGF2aWQgQmVuamFtaW4gPGRhdmlkYmVuQG1pdC5lZHU+CisgICAgU2lnbmVkLW9mZi1ieTogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisgc3JjL2ZpbGVzZGIuYyB8ICAgNzcgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA1MCBpbnNlcnRpb25zKCspLCAyNyBkZWxldGlvbnMoLSkKKworY29tbWl0IGVkMjYwNjUzMjU5MThiYTIxNGZhZGVkMzE4M2FkNzdlOTNhMWE1MzEKK0F1dGhvcjogRGF2aWQgQmVuamFtaW4gPGRhdmlkYmVuQE1JVC5FRFU+CitEYXRlOiAgIFNhdCBBdWcgMjkgMTk6NTc6MjQgMjAwOSAtMDQwMAorCisgICAgZHBrZzogU3BsaXQgb2ZmIGVtcHR5aW5nIGEgcGFja2FnZSdzIGZpbGUgaW5mbworICAgIAorICAgIFB1dCBpdCBpbnRvIGEgc2VwYXJhdGUgZnVuY3Rpb24gZm9yIHJldXNlIGJ5IG90aGVyIHJvdXRpbmVzIGFuZCB0bworICAgIHNpbXBsaWZ5IGVuc3VyZV9wYWNrYWdlZmlsZXNfYXZhaWxhYmxlLgorICAgIAorICAgIFNpZ25lZC1vZmYtYnk6IERhdmlkIEJlbmphbWluIDxkYXZpZGJlbkBtaXQuZWR1PgorICAgIFNpZ25lZC1vZmYtYnk6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworIHNyYy9maWxlc2RiLmMgfCAgIDQ3ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAzNCBpbnNlcnRpb25zKCspLCAxMyBkZWxldGlvbnMoLSkKKworY29tbWl0IDhmZDI1OGJlOTA5N2ZiZDgyYzYwODU5Mzk4YjQwZTMwZjM1YzlhMTkKK0F1dGhvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitEYXRlOiAgIEZyaSBPY3QgOSAxODoyMDo0MCAyMDA5ICswMjAwCisKKyAgICBNaW5vciBmaXhlcyBpbiB0aGUgR2VybWFuIG1hbiBwYWdlIHRyYW5zbGF0aW9uCisKKyBtYW4vcG8vZGUucG8gfCAgICA2ICsrKy0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQorCitjb21taXQgNmUxOTk4MjI0ZjhhMjE4MjU3YjlhZjhlZDNlM2UwODI2OThkMWE4YQorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBPY3QgOSAxNjozOToyNiAyMDA5ICswMjAwCisKKyAgICBEcGtnOjpDb250cm9sOiByZW5hbWUgQ1RSTF9BUFRfKiB0byBDVFJMX0lOREVYXyoKKyAgICAKKyAgICBUaGUgUGFja2FnZXMgYW5kIFNvdXJjZXMgZmlsZXMgYXJlIG5vdCByZWFsbHkgc3BlY2lmaWMgdG8gQVBULgorICAgIFRob3NlIGZpbGVzIGFyZSBpbmRleGVzIHRoYXQgY2FuIGJlIHVzZWQgYnkgb3RoZXIgcHJvZ3JhbXMuCisKKyBzY3JpcHRzL0Rwa2cvQ29udHJvbC5wbSAgICAgICAgfCAgIDEyICsrKysrKy0tLS0tLQorIHNjcmlwdHMvRHBrZy9Db250cm9sL0ZpZWxkcy5wbSB8ICAgMzQgKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLQorIHNjcmlwdHMvRHBrZy9Db250cm9sL1R5cGVzLnBtICB8ICAgIDggKysrKy0tLS0KKyBzY3JpcHRzL0Rwa2cvVmVuZG9yL0RlYmlhbi5wbSAgfCAgICA0ICsrLS0KKyBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsICAgfCAgICAyICstCisgc2NyaXB0cy9kcGtnLXNjYW5zb3VyY2VzLnBsICAgIHwgICAgMiArLQorIDYgZmlsZXMgY2hhbmdlZCwgMzEgaW5zZXJ0aW9ucygrKSwgMzEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyYTE5NGM2Y2M2ZTUzNGQwOTBiOWM5OWI2ZWY1M2I1YjFhMGUyY2UxCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IE9jdCA4IDIxOjA1OjM4IDIwMDkgKzAyMDAKKworICAgIERwa2c6OkNoYW5nZWxvZzo6RGViaWFuOiBwcmVzZXJ2ZSBibGFuayBsaW5lcworICAgIAorICAgIFRoZSBibGFuayBsaW5lcyBzZXBhcmF0aW5nIHRoZSBoZWFkZXIsIGNoYW5nZXMgYW5kIHRyYWlsZXIgbGluZXMKKyAgICB3ZXJlIGxvc3QgaW4gdGhlIHBhcnNpbmcuIE5vdyB0aGV5IGFyZSBzdG9yZWQgaW4gdGhyZWUgbmV3IGF0dHJpYnV0ZXMKKyAgICBvZiBEcGtnOjpDaGFuZ2Vsb2c6OkVudHJ5LgorCisgc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbSAgICAgICAgfCAgICAyICsrCisgc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9EZWJpYW4ucG0gfCAgIDIxICsrKysrKysrKysrKysrKy0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgMTcgaW5zZXJ0aW9ucygrKSwgNiBkZWxldGlvbnMoLSkKKworY29tbWl0IGM4ZmM2ZTkzMTUxYTZmN2JlYTkyZWI1YjlkNDFkM2FhYWIxMmFlZTMKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgT2N0IDggMTk6MDE6MzkgMjAwOSArMDIwMAorCisgICAgRHBrZzo6Q2hhbmdlbG9nOjpEZWJpYW46IGtlZXAgYmxhbmsgbGluZXMgYW5kIHRyYWlsaW5nIHdoaXRlc3BhY2UgdW5jaGFuZ2VkCisgICAgCisgICAgSW4gb3JkZXIgdG8gYmUgYWJsZSB0byBvdXRwdXQgdGhlIHZlcnkgc2FtZSBjaGFuZ2Vsb2cgZmlsZSwgd2Ugd2FudCB0bworICAgIGtlZXAgd2hpdGVzcGFjZXMgd2hpbGUgcGFyc2luZyBhbmQgc2ltcGx5IGRyb3AgdGhlbSBpbiBvdXRwdXRzIHdoZXJlCisgICAgdGhleSBzaG91bGQgbm90IGFwcGVhci4KKyAgICAKKyAgICBUaGlzIGNvbW1pdCBpcyBhIGdvb2Qgc3RhcnQgdG93YXJkcyB0aGlzIGdvYWwuCisKKyBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtICAgICAgICB8ICAgIDQgKysrLQorIHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRGViaWFuLnBtIHwgICAzMyArKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDIyIGluc2VydGlvbnMoKyksIDE1IGRlbGV0aW9ucygtKQorCitjb21taXQgNDdiNGE3NjQ2NzA1ZTU3MWNjMjljYjg2YmEyYjRkZDNlNjk3NjgxYworQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBPY3QgOCAxNTo0MjowMyAyMDA5ICswMjAwCisKKyAgICBEcGtnOjpDaGFuZ2Vsb2c6OkRlYmlhbjogc3RvcmUgdW5tb2RpZmllZCBjaGFuZ2VzIGxpbmVzIGluIGFuIGFycmF5CisgICAgCisgICAgQW5kIHBvc3QtcHJvY2VzcyB0aGVtIGxhdGVyIGZvciBvdXRwdXQgYXMgYSBwcm9wZXIgRHBrZzo6Q29udHJvbAorICAgIGluZm9ybWF0aW9uIGJsb2NrLgorCisgc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbSAgICAgICAgfCAgIDExICsrKysrKysrKy0tCisgc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9EZWJpYW4ucG0gfCAgIDE2ICsrKysrKysrLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDE3IGluc2VydGlvbnMoKyksIDEwIGRlbGV0aW9ucygtKQorCitjb21taXQgM2I1NjY4MTBhMTIyN2NiZmU0NjE3M2RjYTA1YTMwM2ZmZDkyMmQxZAorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBPY3QgNSAyMTozNToyNSAyMDA5ICswMjAwCisKKyAgICBEcGtnOjpEZXBzOjp2ZXJzaW9uX2ltcGxpZXMoKTogZml4IHRvIHJldHVybiB1bmRlZiB3aXRoIGludmFsaWQgdmVyc2lvbnMKKyAgICAKKyAgICBUaGUgMCB2YWx1ZSBtZWFucyB0aGF0IHRoZSBpbXBsaWNhdGlvbiBpcyBsb2dpY2FsbHkgZGlzcHJvdmVkLiBXZSB3YW50ZWQKKyAgICB0byBleHByZXNzIHRoYXQgd2UgZG9uJ3Qga25vdyBhbnl0aGluZyBzaW5jZSB0aGUgdmVyc2lvbiBwYXJhbWV0ZXIgaXMKKyAgICBub3QgYSB2YWxpZCB2ZXJzaW9uIGFuZCB0aHVzIGNhbid0IGJlIGNvbXBhcmVkLgorCisgc2NyaXB0cy9EcGtnL0RlcHMucG0gfCAgICA0ICsrLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDAwYTllMDAzOWU0MWFlNTJkNDE0YTk2MDVhZjVlY2EwNzAxNzVmMjgKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gT2N0IDUgMjE6MzA6NDEgMjAwOSArMDIwMAorCisgICAgRHBrZzo6VmVyc2lvbjogcmVuYW1lIHNvbWUgZnVuY3Rpb25zIGFuZCBjb25zdGFudHMKKyAgICAKKyAgICB2ZXJzaW9uX2NvbXBhcmVfb3AoKSBiZWNvbWVzIHZlcnNpb25fY29tcGFyZV9yZWxhdGlvbigpLgorICAgIHZlcnNpb25fbm9ybWFsaXplX2NtcF9vcCgpIGJlY29tZXMgdmVyc2lvbl9ub3JtYWxpemVfcmVsYXRpb24oKS4KKyAgICBUaGUgQ01QX09QXyogY29uc3RhbnRzIGJlY29tZSBSRUxfKi4KKyAgICAKKyAgICBVcGRhdGUgYWxsIHNjcmlwdHMgYW5kIG1vZHVsZXMgYWNjb3JkaW5nbHkuCisKKyBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtICAgIHwgICAgOCArKystLS0KKyBzY3JpcHRzL0Rwa2cvRGVwcy5wbSAgICAgICAgIHwgICAgNSArKy0KKyBzY3JpcHRzL0Rwa2cvVmVyc2lvbi5wbSAgICAgIHwgICA2MCArKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbCAgIHwgICAgNCArLQorIHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGwgfCAgICA0ICstCisgc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbCAgICB8ICAgMTAgKysrLS0tCisgc2NyaXB0cy90LzEwMF9EcGtnX1ZlcnNpb24udCB8ICAgIDYgKystLQorIDcgZmlsZXMgY2hhbmdlZCwgNDkgaW5zZXJ0aW9ucygrKSwgNDggZGVsZXRpb25zKC0pCisKK2NvbW1pdCBlNmQwZjA3ZjA3YmY2MWQyMzBkOGRmNzhlN2M2YmJiODk0NWMwZWJmCitBdXRob3I6IEhlbGdlIEtyZXV0em1hbm4gPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorRGF0ZTogICBNb24gT2N0IDUgMTg6MTA6MjkgMjAwOSArMDIwMAorCisgICAgVXBkYXRlIEdlcm1hbiBzY3JpcHRzIHRyYW5zbGF0aW9uCisgICAgCisgICAgVXBkYXRlIHRvIDQ3MXQuCisKKyBzY3JpcHRzL3BvL2RlLnBvIHwgIDIzMCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDEyMiBpbnNlcnRpb25zKCspLCAxMDggZGVsZXRpb25zKC0pCisKK2NvbW1pdCA0YTI1NmYyY2QzZjgwMjAzZWRjNGVjNmJiNDlmZjc2NjRhNTgwZGNkCitBdXRob3I6IFNlYW4gRmlubmV5IDxzZWFuaXVzQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBTZXAgMjggMjM6MzQ6MjkgMjAwOSArMDIwMAorCisgICAgbGliZHBrZzogTW92ZSBjb3B5ZmlsZXBlcm1zIHRvIG5vbi1zdGF0aWMgZmlsZV9jb3B5X3Blcm1zCisgICAgCisgICAgVGhpcyBmdW5jdGlvbmFsaXR5IGlzIGFsc28gbmVlZGVkIGJ5IHRoZSBjb25mZmlsZSBoYW5kbGluZyBjb2RlIHRvCisgICAgZW5zdXJlIHRoYXQgdGhlIG1lcmdlIG91dHB1dCBpcyBzdG9yZWQgaW4gYSBmaWxlIHdpdGggdGhlIHNhbWUKKyAgICBwZXJtaXNzaW9ucyBhcyB0aGUgb3JpZ2luYWwgY29uZmZpbGUsIHByZXZlbnRpbmcgdGhlIGFjY2lkZW50YWwKKyAgICBvcHBvcnR1bml0eSBmb3IgdW5pbnRlbmRlZCBpbmZvcm1hdGlvbiBkaXNjbG9zdXJlLgorICAgIAorICAgIFRoZXJlZm9yZSB0aGUgZnVuY3Rpb24gaXMgbW92ZWQgaW50byBhIG5ldyBsaWJyYXJ5IG1vZHVsZSAoZmlsZS57YyxofSksCisgICAgYW5kIGdpdmVuIGFuIGFwcHJvcHJpYXRlIHByZWZpeC4gTm90ZSB0aGF0IHNvbWUgb2YgdGhlIHRyYW5zbGF0YWJsZQorICAgIGVycm9yIG1lc3NhZ2VzIGhhdmUgYmVlbiBtb2RpZmllZCBhcyB0aGV5IHdvdWxkIG90aGVyd2lzZSBiZSBtaXNsZWFkaW5nLgorICAgIAorICAgIFNpZ25lZC1vZmYtYnk6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworIGxpYi9kcGtnL01ha2VmaWxlLmFtIHwgICAgMSArCisgbGliL2Rwa2cvZmlsZS5jICAgICAgfCAgIDUzICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCisgbGliL2Rwa2cvZmlsZS5oICAgICAgfCAgIDM3ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKKyBzcmMvY29uZmlndXJlLmMgICAgICB8ICAgMjggKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDQgZmlsZXMgY2hhbmdlZCwgOTMgaW5zZXJ0aW9ucygrKSwgMjYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBmMzhhYjE2ZWMxYjE1YjczMjZiN2E1MmIzOTU2N2ZhMThmODA2YjU0CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIE9jdCA1IDA0OjIxOjE2IDIwMDkgKzAyMDAKKworICAgIGxpYmRwa2c6IFVwZGF0ZSBwYXRoX3F1b3RlX2ZpbGVuYW1lIGZ1bmN0aW9uIGNvbW1lbnQKKworIGxpYi9kcGtnL3BhdGguYyB8ICAgMjggKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMTQgaW5zZXJ0aW9ucygrKSwgMTQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAzYWRiOTM5N2EwZDgyYzBmNDJmZDkzNDU1YjY5NTg1NjkzY2YxNjJhCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIE9jdCA1IDA0OjEyOjA3IDIwMDkgKzAyMDAKKworICAgIGxpYmRwa2c6IENoYW5nZSBvcmRlciBhbmQgcmVuYW1lIHBhdGhfcXVvdGVfZmlsZW5hbWUgYXJndW1lbnRzCisgICAgCisgICAgUGxhY2UgdGhlIHNpemUgYXQgdGhlIGVuZCwgYW5kIHJlbmFtZSBidWYgdG8gZHN0LCBhbmQgcyB0byBzcmMuCisKKyBsaWIvZHBrZy9wYXRoLmMgfCAgIDI4ICsrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0KKyBsaWIvZHBrZy9wYXRoLmggfCAgICAyICstCisgc3JjL2FyY2hpdmVzLmMgIHwgICAgNCArKy0tCisgMyBmaWxlcyBjaGFuZ2VkLCAxNyBpbnNlcnRpb25zKCspLCAxNyBkZWxldGlvbnMoLSkKKworY29tbWl0IGYzNWQ2NmRiYzIyOGJjOGFkMmM1MjU1ZGVlMWJmNGVjZjllZTZlMDYKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gT2N0IDUgMDQ6MDY6MDYgMjAwOSArMDIwMAorCisgICAgbGliZHBrZzogQ2hhbmdlIHBhdGhfcXVvdGVfZmlsZW5hbWUgc2l6ZSBhcmd1bWVudCB0eXBlIHRvIHNpemVfdAorCisgbGliL2Rwa2cvcGF0aC5jIHwgICAgMiArLQorIGxpYi9kcGtnL3BhdGguaCB8ICAgIDIgKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDQ0ZmVkM2NjZTZjYTZkNDEwZDQ4ZGNlNTUxNzZjNzNjMWNiYmM5NjAKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gT2N0IDUgMDQ6MDQ6MzUgMjAwOSArMDIwMAorCisgICAgbGliZHBrZzogTWFrZSBwYXRoX3F1b3RlX2ZpbGVuYW1lIHMgYXJndW1lbnQgY29uc3QKKworIGxpYi9kcGtnL3BhdGguYyB8ICAgIDIgKy0KKyBsaWIvZHBrZy9wYXRoLmggfCAgICAyICstCisgMiBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAzN2UzMmE5YzJjM2ZhMDVjMWJiN2QxNmIxNTUyYzhjYjYzYWQwOGUyCitBdXRob3I6IFNlYW4gRmlubmV5IDxzZWFuaXVzQHNlYW5pdXMubmV0PgorRGF0ZTogICBNb24gU2VwIDI4IDIzOjM0OjI4IDIwMDkgKzAyMDAKKworICAgIGxpYmRwa2c6IE1vdmUgcXVvdGVfZmlsZW5hbWUgdG8gdGhlIHBhdGggbW9kdWxlIGFzIHBhdGhfcXVvdGVfZmlsZW5hbWUKKyAgICAKKyAgICBUaGlzIGZ1bmN0aW9uIHdpbGwgYmUgdXNlZnVsIGZvciBvdGhlciBwYXJ0cyBvZiBkcGtnLCBzbyB0aGUgZnVuY3Rpb24KKyAgICBoYXMgYmVlbiBtb3ZlZCB0byBhIG1vcmUgc2Vuc2libGUgbG9jYXRpb24sIHRoZSBzdGF0aWMgcXVhbGlmaWVyIHJlbW92ZWQsCisgICAgYW5kIGl0cyBuYW1lIGFwcHJvcHJpYXRlbHkgcHJlZml4ZWQuCisgICAgCisgICAgU2lnbmVkLW9mZi1ieTogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisgbGliL2Rwa2cvcGF0aC5jIHwgICA2MSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKKyBsaWIvZHBrZy9wYXRoLmggfCAgICAxICsKKyBzcmMvYXJjaGl2ZXMuYyAgfCAgIDY1ICsrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDMgZmlsZXMgY2hhbmdlZCwgNjcgaW5zZXJ0aW9ucygrKSwgNjAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA1ZTQzNTk0OWQ2Mzc5ZjdkYzkzMGYwNDJkYjUyNDFhZjFlMmZmYjQ2CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IE9jdCAxIDE5OjI4OjQwIDIwMDkgKzAyMDAKKworICAgIEVuc3VyZSB0aGF0IHRoZSBzdHJpbmcgcmVwcmVzZW50YXRpb24gb2YgRHBrZzo6VmVyc2lvbiBpcyB1bmNoYW5nZWQKKyAgICAKKyAgICBUaGUgdmVyc2lvbiBzdHJpbmcgdXNlZCBhdCBjcmVhdGlvbiB0aW1lIHNob3VsZCBiZSByZXR1cm5lZAorICAgIHdoZW4geW91IHN0cmluZ2lmeSBhIERwa2c6OlZlcnNpb24gb2JqZWN0LiBFbnN1cmUgdGhpcyBieSBhZGRpbmcgYQorICAgIG5vbi1yZWdyZXNzaW9uIHRlc3QuCisKKyBzY3JpcHRzL3QvMTAwX0Rwa2dfVmVyc2lvbi50IHwgICAgNSArKysrLQorIDEgZmlsZXMgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgYWY1YTUzNDlmOTlkZjdjOGY0Njk4ZWUwZDkyY2QyYzY4MjRjNDI4ZQorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBTZXAgMjkgMDE6MTA6MTIgMjAwOSArMDIwMAorCisgICAgRHBrZzo6VmVyc2lvbjogZHJvcCB0aGUgb2xkIEFQSSBhbmQgaW1wbGVtZW50YXRpb24KKyAgICAKKyAgICBTd2l0Y2ggdGhlIG5vbi1yZWdyZXNzaW9uIHRlc3RzIHRvIHRoZSBuZXcgQVBJLgorCisgc2NyaXB0cy9EcGtnL1ZlcnNpb24ucG0gICAgICB8ICAxNzMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgc2NyaXB0cy90LzEwMF9EcGtnX1ZlcnNpb24udCB8ICAgIDkgKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDUgaW5zZXJ0aW9ucygrKSwgMTc3IGRlbGV0aW9ucygtKQorCitjb21taXQgMTBiYWRiM2MyZGUxMTNmMDEyOTk4ODUyOWIxZTkzODZlZDVhYjBhNgorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBTZXAgMjkgMDE6MDY6NTAgMjAwOSArMDIwMAorCisgICAgVXBkYXRlIGFsbCBQZXJsIG1vZHVsZXMgYW5kIHNjcmlwdHMgdG8gdXNlIHRoZSBuZXcgRHBrZzo6VmVyc2lvbiBBUEkKKworIHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG0gICAgICAgICB8ICAgMTAgKysrLS0tCisgc2NyaXB0cy9EcGtnL0RlcHMucG0gICAgICAgICAgICAgIHwgICA2NSArKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0KKyBzY3JpcHRzL0Rwa2cvU2hsaWJzL1N5bWJvbEZpbGUucG0gfCAgICA4ICsrLS0KKyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG0gICAgfCAgIDExICsrKy0tLQorIHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGwgICAgICB8ICAgIDUgKystCisgc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGwgICAgICAgIHwgICAxMiArKysrLS0tCisgc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbCAgICAgIHwgICAxNCArKy0tLS0tLQorIHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGwgICAgICAgICB8ICAgMTEgKysrLS0tCisgc2NyaXB0cy9kcGtnLXNvdXJjZS5wbCAgICAgICAgICAgIHwgICAgNSArKy0KKyA5IGZpbGVzIGNoYW5nZWQsIDcyIGluc2VydGlvbnMoKyksIDY5IGRlbGV0aW9ucygtKQorCitjb21taXQgODQ3MjMxY2QwZjBhN2U5NzM2MTgzNmYyMjc1M2ZkMWJiMmYxZTliMQorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBTZXAgMjkgMDA6MDU6MDYgMjAwOSArMDIwMAorCisgICAgRHBrZzo6VmVyc2lvbjogbmV3IGltcGxlbWVudGF0aW9uIGFuZCBuZXcgb2JqZWN0IGludGVyZmFjZQorICAgIAorICAgIFRoZSBvbGQgaW1wbGVtZW50YXRpb24gaXMgc3RpbGwgYXJvdW5kIGluIHRoaXMgY29tbWl0IHNvIHRoYXQKKyAgICBpdCdzIGVhc3kgdG8gY2hlY2tvdXQgdGhpcyBjb21taXQgYW5kIGFkZCBzdXBwbGVtZW50YXJ5IHRlc3QgY2FzZXMKKyAgICBpbiBzY3JpcHRzL3QvMTAwX0Rwa2dfVmVyc2lvbi50IHRvIHZlcmlmeSB0aGF0IGJvdGggaW1wbGVtZW50YXRpb25zCisgICAgaGF2ZSB0aGUgc2FtZSByZXN1bHQuIFNvbWUgbmV3IHRlc3QgY2FzZXMgaGF2ZSBiZWVuIGFkZGVkIGR1cmluZyB0aGUKKyAgICBpbXBsZW1lbnRhdGlvbi4KKyAgICAKKyAgICBUaGUgbmV3IG9iamVjdCBpbnRlcmZhY2Ugb3ZlcnJpZGVzIGFsbCB0aGUgY29tcGFyaXNvbiBvcGVyYXRvcnMKKyAgICBzbyB0aGF0IHlvdSBjYW4gZGlyZWN0bHkgY29tcGFyZSB0d28gRHBrZzo6VmVyc2lvbiBvYmplY3RzLiBUaGUKKyAgICBvYmplY3QgY2FuIGFsc28gYmUgdXNlZCB3aXRoaW4gc3RyaW5ncyBhbmQgaXQgd2lsbCBnZW5lcmF0ZSB0aGUKKyAgICBzYW1lIHZlcnNpb24gc3RyaW5nIHRoYW4gdGhlIG9uZSBnaXZlbiBhdCBjcmVhdGlvbiB0aW1lLgorCisgc2NyaXB0cy9EcGtnL1ZlcnNpb24ucG0gICAgICB8ICAzMzUgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tCisgc2NyaXB0cy90LzEwMF9EcGtnX1ZlcnNpb24udCB8ICAgMjYgKysrLQorIDIgZmlsZXMgY2hhbmdlZCwgMzQ5IGluc2VydGlvbnMoKyksIDEyIGRlbGV0aW9ucygtKQorCitjb21taXQgNTVlYjZmMzE2MzQyMGRkMTRjNWE5ZTVhYWRmYTNiMzE0Mzc4YTE4NworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBPY3QgNCAwMzo0MDoxMCAyMDA5ICswMjAwCisKKyAgICBsaWJjb21wYXQ6IERlZmluZSBvZmZzZXRvZiBvbmx5IGlmIHRoZSBzeXN0ZW0gZG9lcyBub3QgaGF2ZSBpdAorICAgIAorICAgIER1ZSB0byA8Y29tcGF0Lmg+IGJlaW5nIGluY2x1ZGVkIGZpcnN0LCBvZmZzZXRvZiB3YXMgYmVpbmcgZGVmaW5lZAorICAgIGFsd2F5cyB0byB0aGUgbG9jYWwgdmVyc2lvbi4KKworIGNvbmZpZ3VyZS5hYyAgICAgICAgfCAgICAxICsKKyBsaWIvY29tcGF0L2NvbXBhdC5oIHwgICAgNCArKy0tCisgMiBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA0MzBjMjA3NTlmODEyN2M2NjkwYjMzZGQ0Zjg3N2YzYWNjMjBkMzFlCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIE9jdCA0IDE1OjEyOjQ3IDIwMDkgKzAyMDAKKworICAgIGJ1aWxkOiBQcm9wZXJseSBlc2NhcGUgRFBLR19DSEVDS19ERUNMIGFuZCBEUEtHX0NIRUNLX0RFRklORSBhcmd1bWVudHMKKyAgICAKKyAgICBVc2UgQVNfVFJfU0ggZm9yIHNoZWxsIHZhcmlhYmxlcyBhbmQgQVNfVFJfQ1BQIGZvciB2YXJpYWJsZXMgdXNlZCBpbgorICAgIGhlYWRlcnMgb3IgTWFrZWZpbGVzLgorCisgbTQvdHlwZXMubTQgfCAgIDE3ICsrKysrKysrKy0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA5IGluc2VydGlvbnMoKyksIDggZGVsZXRpb25zKC0pCisKK2NvbW1pdCBjMmVlNTFkMGRhODJlN2ZlODJmNDE4YTU1NGVhNDI1YjRhMzc0ZTY0CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIE9jdCA0IDE0OjE2OjE5IDIwMDkgKzAyMDAKKworICAgIGJ1aWxkOiBGaXggRFBLR19DSEVDS19ERUZJTkUgdG8gcHJvcGVybHkgY2hlY2sgZm9yIGRwa2dfY3ZfZGVmaW5lXyQxCisgICAgCisgICAgVGhlIG1hY3JvIHdhcyBjaGVja2luZyBmb3IgdGhlIGRwa2dfY3ZfZGVmaW5lIHZhcmlhYmxlLCB3aGljaCBpbXBsaWVkCisgICAgYWx3YXlzIGRvaW5nIGFuIEFDX0RFRklORSB0byAwLgorICAgIAorICAgIEFzIGEgY29uc2VxdWVuY2Ugbm93IHN0YXJ0LXN0b3AtZGVhZW1vbiB3aWxsIHVzZSBUSU9DTk9UVFkgd2hlbgorICAgIGF2YWlsYWJsZS4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAxICsKKyBtNC90eXBlcy5tNCAgICAgIHwgICAgMiArLQorIDIgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgMzBhNmQ2ZDEzMWE1MTZjNGJjZDY3NzA1NDg3YTU0ZTZlZTIwODViZgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBPY3QgMyAyMTowMjo0NyAyMDA5ICswMjAwCisKKyAgICBsaWJkcGtnOiBNb3ZlIHBrZ19zb3J0ZXIgY29kZSB0byBhIG5ldyBwa2cgbW9kdWxlCisKKyBsaWIvZHBrZy9NYWtlZmlsZS5hbSAgICAgICAgICAgIHwgICAgMSArCisgbGliL2Rwa2cvcGtnLWFycmF5LmMgICAgICAgICAgICB8ICAgIDkgLS0tLS0tLS0tCisgbGliL2Rwa2cvcGtnLWFycmF5LmggICAgICAgICAgICB8ICAgIDMgKy0tCisgbGliL2Rwa2cve3BrZy1hcnJheS5oID0+IHBrZy5jfSB8ICAgMzAgKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tCisgbGliL2Rwa2cve3BrZy1hcnJheS5oID0+IHBrZy5ofSB8ICAgMjIgKysrKysrLS0tLS0tLS0tLS0tLS0tLQorIHBvL1BPVEZJTEVTLmluICAgICAgICAgICAgICAgICAgfCAgICAxICsKKyBzcmMvbWFpbi5oICAgICAgICAgICAgICAgICAgICAgIHwgICAgNSAtLS0tLQorIDcgZmlsZXMgY2hhbmdlZCwgMjEgaW5zZXJ0aW9ucygrKSwgNTAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyNTEwOTcxNzMwYTNhNGMwZjAzMzg4NGRjMGJjNWM2YTgyYTlmNWZiCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IE9jdCAzIDIwOjQ3OjU3IDIwMDkgKzAyMDAKKworICAgIGxpYmRwa2c6IFJlbmFtZSBwa2dsaXN0cXNvcnRjbXAgdG8gcGtnX3NvcnRlcl9ieV9uYW1lCisKKyBsaWIvZHBrZy9wa2ctYXJyYXkuYyB8ICAgIDIgKy0KKyBzcmMvbWFpbi5oICAgICAgICAgICB8ICAgIDIgKy0KKyBzcmMvcXVlcnkuYyAgICAgICAgICB8ICAgIDQgKystLQorIHNyYy9zZWxlY3QuYyAgICAgICAgIHwgICAgMiArLQorIDQgZmlsZXMgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCA1IGRlbGV0aW9ucygtKQorCitjb21taXQgMmRkYzYxZDRhYWMyZDMzM2I2ZTM2YTFmNTQ4OGU5YzYxMTEyMjY1MworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBPY3QgNCAwMjo1NjowMiAyMDA5ICswMjAwCisKKyAgICBsaWJkcGtnOiBNYXJrIGFuZCBpbXByb3ZlIHN0cmluZ3MgZm9yIHRyYW5zbGF0aW9uCisKKyBsaWIvZHBrZy92YXJidWYuYyB8ICAgIDUgKysrLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDZiOTJhYTBhZGZiOWE4M2FlODYyYjdjMWFhOTg1NGRhN2VmYWNjMmYKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgT2N0IDMgMTc6Mjg6MjAgMjAwOSArMDIwMAorCisgICAgZHBrZy1zdGF0b3ZlcnJpZGU6IEFkZCBtaXNzaW5nIGFuZ2xlIGJyYWNrZXRzIGluIHN0cmluZworCisgc3JjL3N0YXRjbWQuYyB8ICAgIDIgKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGY2NTkyNzYwMDRmNGI4YWE5YmE1N2Q4ZTViNGUyNTM3MjBiZTVmMDkKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gT2N0IDQgMDI6NTM6MjcgMjAwOSArMDIwMAorCisgICAgQWRkIGFsbCBsaWJkcGtnIC5jIGZpbGVzIHRvIFBPVEZJTEVTCisgICAgCisgICAgUmVnYXJkbGVzcyBvZiB0aGVtIG5vdCBjdXJyZW50bHkgY29udGFpbmluZyBtYXJrZWQgc3RyaW5ncyBmb3IKKyAgICB0cmFuc2xhdGlvbiwgYXMgaXQgbWFrZXMgaXQgbW9yZSB1bmxpa2VseSB0byBmb3JnZXQgYWRkaW5nIHRoZQorICAgIGZpbGVzIHdoZW4gYSBuZXcgbWFya2VkIHN0cmluZyBpcyBhZGRlZC4KKworIHBvL1BPVEZJTEVTLmluIHwgICAgNSArKysrKworIDEgZmlsZXMgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgNzIyZmE1NjYwZDUyYWM3NWRiMGIyMWE4NjAwNGZjMTBmOGY1ODBiYgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBTZXAgMTcgMTc6MzI6MTggMjAwOSArMDIwMAorCisgICAgQWRkIGEgLm1haWxtYXAgZmlsZSB0byBmaXggdXAgbmFtZSBhbmQgbWFpbCBhZGRyZXNzZXMKKworIC5tYWlsbWFwIHwgICAxOSArKysrKysrKysrKysrKysrKysrCisgMSBmaWxlcyBjaGFuZ2VkLCAxOSBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgYWYyOTVjZTA2ZWM4NDFlMWFhMDA1ZDk4ZGUzN2I0MzdiZDE4OTk5NQorQXV0aG9yOiBIZWxnZSBLcmV1dHptYW5uIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KK0RhdGU6ICAgU2F0IE9jdCAzIDEwOjI3OjQyIDIwMDkgKzAyMDAKKworICAgIFVwZGF0ZSBHZXJtYW4gdHJhbnNsYXRpb24gb2YgbWFudWFsIHBhZ2VzCisgICAgCisgICAgVXBkYXRlIHRvIDE2NDh0LgorCisgbWFuL3BvL2RlLnBvIHwgICA3MCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystCisgMSBmaWxlcyBjaGFuZ2VkLCA2OSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgODU0MGEzMjhjOGQ3YjRhNzE0Yjc1YjA2MGMzZDIzZTE4Mjk3NGQwYworQXV0aG9yOiBIZWxnZSBLcmV1dHptYW5uIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KK0RhdGU6ICAgU2F0IE9jdCAzIDA5OjQ5OjU1IDIwMDkgKzAyMDAKKworICAgIFVwZGF0ZSBHZXJtYW4gc2NyaXB0cyB0cmFuc2xhdGlvbgorICAgIAorICAgIFVwZGF0ZSB0byA0Njh0LgorCisgc2NyaXB0cy9wby9kZS5wbyB8ICAxMjEgKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA1OCBpbnNlcnRpb25zKCspLCA2MyBkZWxldGlvbnMoLSkKKworY29tbWl0IDBjMjFmMTYxNzkzM2FiMzVhNWIwODFmZTMxNGNhNWE4NjRhOTk2MmEKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgT2N0IDEgMjM6NDg6NDAgMjAwOSArMDIwMAorCisgICAgZHNlbGVjdC1tdWx0aWNkOiBmaXggYmFzaGlzbSBpbiBzZXR1cCBzY3JpcHQKKyAgICAKKyAgICBVc2UgcHJpbnRmIGluc3RlYWQgb2YgZWNobyAtZS4gQ2xvc2VzOiAjNTMwMDcwCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICB8ICAgIDEgKworIGRzZWxlY3QvbWV0aG9kcy9tdWx0aWNkL3NldHVwIHwgICAgNiArKystLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworY29tbWl0IDY1YTA1NzJlM2ZiMDhhMjE4Y2E3MTIwZDUzMGY5ZjY0Nzk5YmNhZWMKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgT2N0IDEgMjM6NDA6NTQgMjAwOSArMDIwMAorCisgICAgZHNlbGVjdC1tdWx0aWNkOiByZXBsYWNlL2Ryb3Agb2Jzb2xldGUgZHBrZyBjb21tYW5kcworICAgIAorICAgIGRwa2cgLS1wcmludC1pbnN0YWxsYXRpb24tYXJjaGl0ZWN0dXJlIGlzIGRlcHJlY2F0ZWQgaW4gZmF2b3IKKyAgICBvZiBkcGtnIC0tcHJpbnQtYXJjaGl0ZWN0dXJlLiBkcGtnIC0tZm9yZ2V0LW9sZC11bmF2YWlsIGlzIG9ic29sZXRlLgorCisgZHNlbGVjdC9tZXRob2RzL211bHRpY2QvaW5zdGFsbCB8ICAgIDIgKy0KKyBkc2VsZWN0L21ldGhvZHMvbXVsdGljZC9zZXR1cCAgIHwgICAgMiArLQorIGRzZWxlY3QvbWV0aG9kcy9tdWx0aWNkL3VwZGF0ZSAgfCAgICA0ICstLS0KKyAzIGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgNSBkZWxldGlvbnMoLSkKKworY29tbWl0IGIyZmQ3NzNmYzljYTMyZmQ5MDdmNGMzNWEzMGVjOTEzOGY5YTFjNDMKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgT2N0IDEgMjM6Mzg6MjMgMjAwOSArMDIwMAorCisgICAgZHNlbGVjdC1tdWx0aWNkOiB1cGRhdGUgUkVBRE1FIHdydCB0aGUgZHBrZy1zY2FucGFja2FnZXMgc2l0dWF0aW9uCisgICAgCisgICAgVGhlIHJlcXVpcmVkIGZlYXR1cmVzIGhhdmUgYmVlbiBtZXJnZWQgaW4gdGhlIG9mZmljaWFsIGRwa2ctc2NhbnBhY2thZ2VzCisgICAgc28gZG9uJ3QgbWVudGlvbiB0aGUgZGl2ZXJ0ZWQgY29weSB0aGF0IGRvZXNuJ3QgZXhpc3QgYW55bW9yZS4KKworIGRzZWxlY3QvbWV0aG9kcy9tdWx0aWNkL1JFQURNRS5tdWx0aWNkIHwgICAyOCArKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA3IGluc2VydGlvbnMoKyksIDIxIGRlbGV0aW9ucygtKQorCitjb21taXQgYTRjYWJhYTRhZjYxODQ1MWRlNDhjMjYyYmU3ZDM3NDY0MGE2ZmFlNworQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBPY3QgMSAyMzoyODozOCAyMDA5ICswMjAwCisKKyAgICBkc2VsZWN0LW11bHRpY2Q6IGFkZCBtaXNzaW5nIGNvcHlyaWdodCBzdGF0ZW1lbnRzCisgICAgCisgICAgVGhlIGNvcHlyaWdodCBzdGF0ZW1lbnRzIGNvbWUgZnJvbSBkZWJpYW4vY29weXJpZ2h0IGluIHRoZQorICAgIGRwa2ctbXVsdGljZCBzb3VyY2UgcGFja2FnZSAodmVyc2lvbiAwLjIxKS4KKworIGRzZWxlY3QvbWV0aG9kcy9tdWx0aWNkL2luc3RhbGwgfCAgIDE2ICsrKysrKysrKysrKysrKysKKyBkc2VsZWN0L21ldGhvZHMvbXVsdGljZC9zZXR1cCAgIHwgICAyMyArKysrKysrKysrKysrKysrKysrKysrKworIGRzZWxlY3QvbWV0aG9kcy9tdWx0aWNkL3VwZGF0ZSAgfCAgIDE2ICsrKysrKysrKysrKysrKysKKyAzIGZpbGVzIGNoYW5nZWQsIDU1IGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBmZWQ2YmE3ODMwNDAwZjBiZGYxODJiNDc3YTcwMDk5MDAwMWE2OTg4CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IE9jdCAxIDIzOjIyOjQ0IDIwMDkgKzAyMDAKKworICAgIEludGVncmF0ZSBkcGtnLW11bHRpY2QgaW50byBkc2VsZWN0CisgICAgCisgICAgVGhlIGBtdWx0aWNkJyBwYWNrYWdlIHdhcyBpbml0aWFsbHkgd3JpdHRlbiBieSBIZWlrbyBTY2hsaXR0ZXJtYW5uCisgICAgPGhlaWtvQGxvdHRlLnNheC5kZT4gYmFzZWQgb24gYnVpbHRpbiBhY2Nlc3MgbWV0aG9kcyB3cml0dGVuIGJ5IElhbgorICAgIEphY2tzb24gPGlhbkBjaGlhcmsuZ3JlZW5lbmQub3JnLnVrPi4gIFRoZSBmaW5hbCBwYWNrYWdpbmcgYXMgd2VsbCBhcworICAgIGNsZWFudXBzIHdlcmUgbWFkZSBieSBNYXJ0aW4gU2NodWx6ZSA8am9leUBpbmZvZHJvbS5ub3J0aC5kZT4gd2hvIGFsc28KKyAgICBwdXQgdGhpcyBwYWNrYWdlIHRvZ2V0aGVyIGZvciB0aGUgc2xpbmsgcmVsZWFzZSAoRGViaWFuIEdOVS9MaW51eAorICAgIDIuMSkuCisgICAgCisgICAgVGhpcyBjb21taXQgaW5jbHVkZXMgdGhlIHJhdyBmaWxlcyBhcyBwcm92aWRlZCBpbiB2ZXJzaW9uIDAuMjEgb2YgZHBrZy1tdWx0aWNkCisgICAgKGV4Y2VwdCBmb3IgYSBmZXcgd2hpdGVzcGFjZXMgY2xlYW51cHMpLgorICAgIAorICAgIFRoZSBkcGtnLXNjYW5wYWNrYWdlcyBmb3JrIGhhcyBiZWVuIGxlZnQgb3V0IHNpbmNlIHRoZSByZXF1aXJlZCBmZWF0dXJlcworICAgIGhhdmUgYmVlbiBtZXJnZWQgaW4gdGhlIG9mZmljaWFsIGRwa2ctc2NhbnBhY2thZ2VzLiBDbG9zZXM6ICM1MTY2MzEKKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAyICsKKyBkZWJpYW4vY29udHJvbCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNCArLQorIGRlYmlhbi9jb3B5cmlnaHQgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAyICsKKyBkZWJpYW4vZHBrZy5kb2NzICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMSArCisgZHNlbGVjdC9tZXRob2RzL01ha2VmaWxlLmFtICAgICAgICAgICAgICB8ICAgMTQgKy0KKyBkc2VsZWN0L21ldGhvZHMvbXVsdGljZC9SRUFETUUubXVsdGljZCAgIHwgIDEzMSArKysrKysKKyBkc2VsZWN0L21ldGhvZHMvbXVsdGljZC9kZXNjLm11bHRpX2NkICAgIHwgICAgMyArCisgZHNlbGVjdC9tZXRob2RzL211bHRpY2QvZGVzYy5tdWx0aV9tb3VudCB8ICAgMTIgKworIGRzZWxlY3QvbWV0aG9kcy9tdWx0aWNkL2Rlc2MubXVsdGlfbmZzICAgfCAgIDEyICsKKyBkc2VsZWN0L21ldGhvZHMvbXVsdGljZC9pbnN0YWxsICAgICAgICAgIHwgIDI5NCArKysrKysrKysrKysrCisgZHNlbGVjdC9tZXRob2RzL211bHRpY2QvbmFtZXMgICAgICAgICAgICB8ICAgIDMgKworIGRzZWxlY3QvbWV0aG9kcy9tdWx0aWNkL3NldHVwICAgICAgICAgICAgfCAgNjYzICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKworIGRzZWxlY3QvbWV0aG9kcy9tdWx0aWNkL3VwZGF0ZSAgICAgICAgICAgfCAgMTE2ICsrKysrKworIDEzIGZpbGVzIGNoYW5nZWQsIDEyNTMgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKKworY29tbWl0IDVlZDY0YjI5N2UzZjljZTk0OTAzNzJhYmM5YjI2OTEyNmUyYmQwYTQKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgT2N0IDEgMjI6NDA6MzkgMjAwOSArMDIwMAorCisgICAgZHBrZy1zY2FucGFja2FnZXM6IGFkZCBuZXcgLS1tZWRpdW0gb3B0aW9uCisgICAgCisgICAgVGhpcyBmZWF0dXJlIGlzIHN1cHBvcnRlZCBpbiB0aGUgZHBrZy1zY2FucGFja2FnZXMgaW1wbGVtZW50YXRpb24gcHJvdmlkZWQKKyAgICBieSBkcGtnLW11bHRpY2QuIFVuZm9ydHVuYXRlbHkgaXQgd2FzIHVzaW5nIHRoZSAiLW0iIG9wdGlvbiB3aGljaCBnb3QKKyAgICBncmFudGVkIHRvIC0tbXVsdGl2ZXJzaW9uIGluIHRoZSBvZmZpY2lhbCBkcGtnLXNjYW5wYWNrYWdlcy4KKyAgICAKKyAgICBUaGlzIG9wdGlvbiB3aWxsIG9ubHkgYmUgdXNlZnVsIGZvciBwZW9wbGUgd2lzaGluZyB0byBjcmVhdGUgUGFja2FnZXMuY2QKKyAgICBmaWxlcyBmb3IgdXNlIGJ5IHRoZSBtdWx0aWNkIGRzZWxlY3QgYWNjZXNzIG1ldGhvZC4gQ2xvc2VzOiAjNDAyNTI3CisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgIHwgICAgMyArKysKKyBtYW4vZHBrZy1zY2FucGFja2FnZXMuMSAgICAgIHwgICAgNSArKysrKworIHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGwgfCAgICA2ICsrKysrLQorIDMgZmlsZXMgY2hhbmdlZCwgMTMgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDE3MTYxMDg3NmY5ODc2ODE2N2VjMWFlYzJkYmM2M2NkYWExOWYxZTYKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgT2N0IDEgMjE6MjM6MTUgMjAwOSArMDIwMAorCisgICAgZHBrZy1zY2FucGFja2FnZXMvZHBrZy1zY2Fuc291cmNlczogc3VwcG9ydCBjb21wcmVzc2VkIG92ZXJyaWRlIGZpbGVzCisgICAgCisgICAgVGhpcyBmZWF0dXJlIGlzIHN1cHBvcnRlZCBpbiB0aGUgZHBrZy1zY2FucGFja2FnZXMgaW1wbGVtZW50YXRpb24gcHJvdmlkZWQKKyAgICBieSBkcGtnLW11bHRpY2QuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgIHwgICAgMSArCisgbWFuL2Rwa2ctc2NhbnBhY2thZ2VzLjEgICAgICB8ICAgIDUgKysrLS0KKyBtYW4vZHBrZy1zY2Fuc291cmNlcy4xICAgICAgIHwgICAxMiArKysrKysrLS0tLS0KKyBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsIHwgICAxMSArKysrKysrLS0tLQorIHNjcmlwdHMvZHBrZy1zY2Fuc291cmNlcy5wbCAgfCAgIDM5ICsrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLQorIDUgZmlsZXMgY2hhbmdlZCwgNDMgaW5zZXJ0aW9ucygrKSwgMjUgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBjNmU2NGFhZmQxZWVhY2ZkOTRkNzA1YWY3MmI2MTdjZmExYmMzNDY2CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IE9jdCAxIDIxOjQ4OjE0IDIwMDkgKzAyMDAKKworICAgIERwa2c6OkNvbnRyb2w6OkZpZWxkczogYWRkIFByaW9yaXR5IGFuZCBTZWN0aW9uIGZpZWxkcyB0byBDVFJMX0FQVF9TUkMKKyAgICAKKyAgICBCb3RoIGZpZWxkcyBhcmUgYWxsb3dlZCBpbiBTb3VyY2VzIGZpbGVzLCB0aGV5IGFyZSBnZW5lcmF0ZWQgYnkKKyAgICBkcGtnLXNjYW5zb3VyY2VzIG9yIGFwdC1mdHBhcmNoaXZlIGJhc2VkIG9uIHRoZSBvdmVycmlkZSBmaWxlcy4KKworIHNjcmlwdHMvRHBrZy9Db250cm9sL0ZpZWxkcy5wbSB8ICAgIDUgKysrLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IGFiZDU5ZGNhYzcwYTBiMDEwZjk1MGY5NmNjZGFhZTJjN2M3ZDBiMzQKK0F1dGhvcjogU3ZlbiBKb2FjaGltIDxzdmVuam9hY0BnbXguZGU+CitEYXRlOiAgIFRodSBPY3QgMSAxNDoxMDoyNiAyMDA5ICswMjAwCisKKyAgICBHZXJtYW4gZHBrZyB0cmFuc2xhdGlvbiB1cGRhdGUKKyAgICAKKyAgICBVcGRhdGUgdG8gOTY2dDRmLgorCisgcG8vZGUucG8gfCAxMzYzICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA2ODkgaW5zZXJ0aW9ucygrKSwgNjc0IGRlbGV0aW9ucygtKQorCitjb21taXQgMzVlZmFmNGVkZmY3YjBmNGRkZGUzOGI4YjNkN2I3ZDlkMzE3YTZmYgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBTZXAgMzAgMDM6MjM6NDcgMjAwOSArMDIwMAorCisgICAgbGliZHBrZzogUmVtb3ZlIHVudXNlZCB2YXJidWZleHRlbmQKKyAgICAKKyAgICBUaGUgaW50ZXJmYWNlIGZvciB0aGlzIGZ1bmN0aW9uIHdhcyBicm9rZW4sIGFuZCBpdCdzIGJlZW4gcmVwbGFjZWQgYnkKKyAgICB0aGUgc2FuZXIgdmFyYnVmX2dyb3cuCisKKyBsaWIvZHBrZy92YXJidWYuYyB8ICAgMTAgLS0tLS0tLS0tLQorIGxpYi9kcGtnL3ZhcmJ1Zi5oIHwgICAgMSAtCisgMiBmaWxlcyBjaGFuZ2VkLCAwIGluc2VydGlvbnMoKyksIDExIGRlbGV0aW9ucygtKQorCitjb21taXQgZGFjMDNlMTJiNDE4ODk5NDMwYTY2NjdhNTU5NmNkNTE1YjEyMDI5NQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBTZXAgMzAgMDM6MjE6MDYgMjAwOSArMDIwMAorCisgICAgbGliZHBrZzogVXNlIHZhcmJ1Zl9ncm93IGluc3RlYWQgb2YgdmFyYnVmZXh0ZW5kCisKKyBkZWJpYW4vY2hhbmdlbG9nICB8ICAgIDIgKysKKyBsaWIvZHBrZy92YXJidWYuYyB8ICAgMTUgKysrKystLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCA3IGluc2VydGlvbnMoKyksIDEwIGRlbGV0aW9ucygtKQorCitjb21taXQgMzUzYjAyYWNiMzMyMjRiYzJkN2UzYjAyOTU1MzhkNTkyYjljOGJhZAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBTZXAgMzAgMDM6MTA6MjcgMjAwOSArMDIwMAorCisgICAgZHBrZzogVXNlIHN0YXQgc2l6ZSB0byB2YXJidWZfZ3JvdyB0aGUgYnVmZmVyIGZvciByZWFkbGluaworICAgIAorICAgIERvIG5vdCBleHBhbmQgdGhlIGJ1ZmZlciBpbmRlZmluaXRlbHkgYnkgdHJ5aW5nIHNldmVyYWwgdGltZXMgdW50aWwKKyAgICB0aGUgYnVmZmVyIGlzIGJpZyBlbm91Z2guIFByZS1hbGxvY2F0ZSBqdXN0IG9uY2UgdXNpbmcgdmFyYnVmX2dyb3cKKyAgICB3aXRoIHRoZSBrbm93biBzaXplIGZyb20gc3RhdC4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAzICsrKworIHNyYy9hcmNoaXZlcy5jICAgfCAgIDEwICsrKysrLS0tLS0KKyBzcmMvY29uZmlndXJlLmMgIHwgICA1MSArKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAzIGZpbGVzIGNoYW5nZWQsIDMwIGluc2VydGlvbnMoKyksIDM0IGRlbGV0aW9ucygtKQorCitjb21taXQgMWE4ZDEyMjg1ZDY1MGZhNGJiMTM0MDZhNTE1MjI4MDMwZDRkOWNhMQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBTZXAgMzAgMDM6MDY6NTUgMjAwOSArMDIwMAorCisgICAgbGliZHBrZzogRml4IHZhcmJ1ZnByaW50ZiB0byBub3QgZ3JvdyBpbmRlZmluaXRlbHkKKyAgICAKKyAgICBVc2UgdGhlIEM5OSBzZW1hbnRpY3MgZm9yIHZzbnByaW50ZiB0byBnZXQgdGhlIGZpbmFsIGZvcm1hdHRlZCBzdHJpbmcKKyAgICBzaXplLCBhbmQgdGhlbiBjYWxsIGl0IGFnYWluIHRvIGRvIHRoZSBhY3R1YWwgd29yay4gVXNlIHZhcmJ1Zl9ncm93IHdpdGgKKyAgICB0aGUga25vdyBzaXplLCBpbnN0ZWFkIG9mIGFsd2F5cyBjYWxsaW5nIHZhcmJ1ZmV4dGVuZCwgcmVnYXJkbGVzIG9mCisgICAgbmVlZGluZyB0byBleHRlbmQgdGhlIGJ1ZmZlciwgd2hpY2ggd2FzIG1ha2luZyBpdCBncm93IGluZGVmaW5pdGVseS4KKyAgICAKKyAgICBUaGlzIGFsc28gc2hvdWxkIHNwZWVkIGl0IHVwIGEgYml0IGJ5IG5vdCByZXF1aXJpbmcgdG8gY2FsbCB2c25wcmludGYKKyAgICBzZXZlcmFsIHRpbWVzIGRlcGVuZGluZyBvbiB0aGUgbGVuZ3RoIG9mIHRoZSBmaW5hbCBzdHJpbmcuIE9ubHkgdHdvCisgICAgY2FsbHMgYXJlIHJlcXVpcmVkIG5vdywgYWx3YXlzLgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgIHwgICAgMyArKysKKyBsaWIvZHBrZy90ZXN0L3QtdmFyYnVmLmMgfCAgIDI4ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysKKyBsaWIvZHBrZy92YXJidWYuYyAgICAgICAgfCAgIDMwICsrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLQorIDMgZmlsZXMgY2hhbmdlZCwgNDkgaW5zZXJ0aW9ucygrKSwgMTIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBkOGQwYjNhMDZmODY2OGEyYzdlOGMzZGIyZGViZDYwY2Y1MjZlN2YxCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIFNlcCAzMCAyMDo1NToxNiAyMDA5ICswMjAwCisKKyAgICBsaWJkcGtnOiBVc2UgdmFyYnVmX2dyb3cgaW5zdGVhZCBvZiBpbmNyZWFzaW5nIG1lbWJlciB1c2VkCisgICAgCisgICAgVGhlIGNvZGUgYXNzdW1lcyB0aGF0IHRoZSB2YXJpb3VzIHZhcmJ1ZiBmdW5jdGlvbnMgd2lsbCBncm93IHRoZQorICAgIGJ1ZmZlciBpZiB1c2VkID4gc2l6ZSwgd2hpY2ggaXMgbm90IGdvaW5nIHRvIGJlIHRydWUgb25jZSB2YXJidWYgZ2V0cworICAgIGludGVybmFsbHkgc3dpdGNoZWQgdG8gdmFyYnVmX2dyb3cgZnJvbSB2YXJidWZleHRlbmQuCisKKyBzcmMvY29uZmlndXJlLmMgfCAgICAzICsrLQorIDEgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgMjNlMTkxYWQ3M2I4NzBlMmIyOWY1OWNiNDA1YjE4Y2NhZjM1YjAwYQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBTZXAgMjkgMTk6NDE6NTggMjAwOSArMDIwMAorCisgICAgbGliZHBrZzogQWRkIG5ldyB2YXJidWZfZ3JvdyBmdW5jdGlvbgorCisgbGliL2Rwa2cvdGVzdC90LXZhcmJ1Zi5jIHwgICAzNCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCisgbGliL2Rwa2cvdmFyYnVmLmMgICAgICAgIHwgICAxNiArKysrKysrKysrKysrKysrCisgbGliL2Rwa2cvdmFyYnVmLmggICAgICAgIHwgICAgMSArCisgMyBmaWxlcyBjaGFuZ2VkLCA1MSBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgMTJhNjFhZmM0NjNjNzRhNDBhYzY1Y2NjMGNiNmY3NWRlZTUzMmYxNgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBKdWwgMyAwMjoyMTo0MyAyMDA5ICswMjAwCisKKyAgICBkcGtnLXN0YXRvdmVycmlkZTogUmV3cml0ZSBpbiBDCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgIHwgICAgMSArCisgcG8vUE9URklMRVMuaW4gICAgICAgICAgICAgICB8ICAgIDIgKy0KKyBzY3JpcHRzL01ha2VmaWxlLmFtICAgICAgICAgIHwgICAgMiAtCisgc2NyaXB0cy9kcGtnLXN0YXRvdmVycmlkZS5wbCB8ICAyNDcgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgc3JjLy5naXRpZ25vcmUgICAgICAgICAgICAgICB8ICAgIDEgKworIHNyYy9NYWtlZmlsZS5hbSAgICAgICAgICAgICAgfCAgIDE2ICsrLQorIHNyYy9zdGF0Y21kLmMgICAgICAgICAgICAgICAgfCAgNDM3ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKworIDcgZmlsZXMgY2hhbmdlZCwgNDU1IGluc2VydGlvbnMoKyksIDI1MSBkZWxldGlvbnMoLSkKKworY29tbWl0IGQ5NmJlZTY1ZTEzOWRiMDUwYmQ5ODFhNDJlMjljMzc2Mzg0N2VlNzcKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgU2VwIDI2IDE0OjMwOjEyIDIwMDkgKzAyMDAKKworICAgIHN0YXRkYjogRG8gc3RyaWN0ZXIgcGFyc2luZyB2YWxpZGF0aW9uCisgICAgCisgICAgTWF0Y2ggdGhlIHZhbGlkYXRpb25zIGRvbmUgb24gaW5wdXQgaW4gZHBrZy1zdGF0b3ZlcnJpZGUsIHNvIHRoYXQgd2UgY2FuCisgICAgcmV1c2UgdGhpcyBjb2RlIHdoZW4gcmV3cml0dGluZyBkcGtnLXN0YXRvdmVycmlkZSBpbiBDLgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDIgKysKKyBzcmMvc3RhdGRiLmMgICAgIHwgICAyMCArKysrKysrKysrKysrLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgMTUgaW5zZXJ0aW9ucygrKSwgNyBkZWxldGlvbnMoLSkKKworY29tbWl0IGFlZTVjNzcyNjcyOWFmOGFjOTNlYTdiNzY4ZjU1NWJjMjM0ZmE5MzIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgU2VwIDI5IDE0OjI4OjExIDIwMDkgKzAyMDAKKworICAgIEFkZCBkb2N1bWVudCBkZXNjcmliaW5nIHRoZSBDIGNvZGluZyBzdHlsZQorCisgTWFrZWZpbGUuYW0gICAgICAgICAgfCAgICAxICsKKyBkZWJpYW4vY2hhbmdlbG9nICAgICB8ICAgIDEgKworIGRvYy9jb2Rpbmctc3R5bGUudHh0IHwgIDE1OSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKworIDMgZmlsZXMgY2hhbmdlZCwgMTYxIGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBjNjFmNDg3MzhmZWUzNjRmMmYxZDMyYWFhZTVjMDczZTMwZWVjYzUyCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIFNlcCAyOCAyMDoxMToxMCAyMDA5ICswMjAwCisKKyAgICBkcGtnOiBSZWR1Y2UgdmFyaWFibGUgc2NvcGUgaW4gY2hlY2twYXRoCisgICAgCisgICAgTW92ZSB0aGVtIGNsb3NlciB0byB0aGVpciBhY3R1YWwgdXNhZ2UuCisKKyBzcmMvaGVscC5jIHwgICAgOCArKysrKy0tLQorIDEgZmlsZXMgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQorCitjb21taXQgMWFmYWUxYjQ1MDhkNTA2NDUwYzBiZDJkODIzMjVlMzFjNDFhZjZlZAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBTZXAgMjggMjA6MDI6NTkgMjAwOSArMDIwMAorCisgICAgZHBrZzogVXNlIHNpemVfdCBpbnN0ZWFkIG9mIGxvbmcgZm9yIHBhdGhfbGVuIGluIGNoZWNrcGF0aCgpCisKKyBzcmMvaGVscC5jIHwgICAgNCArKy0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBiNDA3Y2RlN2M3YWNjN2RjYjIxY2JhOWQ4MWUxNjRiNTA3YjkzOTEyCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIFNlcCAyNyAxNzoyNjo1OCAyMDA5ICswMjAwCisKKyAgICBkcGtnOiBVc2UgbW9yZSBtZWFuaW5nZnVsIGFuZCBjbGVhcmVyIHZhcmlhYmxlIG5hbWVzIGluIGNoZWNrcGF0aCgpCisgICAgCisgICAgVmFyaWFibGUgcmVuYW1lczoKKyAgICAgIGNoZWNrbGlzdCDihpIgcHJvZ19saXN0CisgICAgICBjbHAg4oaSIHByb2cKKyAgICAgIHBhdGgg4oaSIHBhdGhfbGlzdAorICAgICAgcyDihpIgcGF0aAorICAgICAgcCDihpIgcGF0aF9lbmQKKyAgICAgIGwg4oaSIHBhdGhfbGVuCisgICAgICBidWYg4oaSIGZpbGVuYW1lCisKKyBzcmMvaGVscC5jIHwgICA0NyArKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMjYgaW5zZXJ0aW9ucygrKSwgMjEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA5NWE0YjBiMzFiZTAzMzQ4OGRlMTc4NmZhMTYzYmNlN2Y3OWIxMTFkCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIFNlcCAyOSAxNDoyMzoxMCAyMDA5ICswMjAwCisKKyAgICBTd2l0Y2ggdG8gdXNlIHN0ZGJvb2wgd2VyZSBhcHByb3ByaWF0ZQorCisgZHBrZy1kZWIvYnVpbGQuYyAgICAgICAgICB8ICAgMTEgKysrLS0KKyBsaWIvZHBrZy9kYXRhYmFzZS5jICAgICAgIHwgICAxNCArKysrLS0KKyBsaWIvZHBrZy9kcGtnLWRiLmggICAgICAgIHwgICAxNSArKysrLS0tCisgbGliL2Rwa2cvdmVyY21wLmMgICAgICAgICB8ICAgMjMgKysrKysrKy0tLS0KKyBzcmMvYXJjaGl2ZXMuYyAgICAgICAgICAgIHwgICA1OSArKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLQorIHNyYy9hcmNoaXZlcy5oICAgICAgICAgICAgfCAgICA2ICsrLQorIHNyYy9kZXBjb24uYyAgICAgICAgICAgICAgfCAgIDkwICsrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLQorIHNyYy9lbnF1aXJ5LmMgICAgICAgICAgICAgfCAgIDI2ICsrKysrKysrLS0tLQorIHNyYy9lcnJvcnMuYyAgICAgICAgICAgICAgfCAgIDExICsrKy0tCisgc3JjL2hlbHAuYyAgICAgICAgICAgICAgICB8ICAgNDggKysrKysrKysrKysrKysrKy0tLS0tLS0KKyBzcmMvbWFpbi5jICAgICAgICAgICAgICAgIHwgICAgNyArKy0KKyBzcmMvbWFpbi5oICAgICAgICAgICAgICAgIHwgICAyNCArKysrKystLS0tLS0KKyB1dGlscy9zdGFydC1zdG9wLWRhZW1vbi5jIHwgICA1OSArKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLQorIDEzIGZpbGVzIGNoYW5nZWQsIDIzMyBpbnNlcnRpb25zKCspLCAxNjAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyNDk2YjYzNDc1ZjljNjlmNDJiNDRjMDY3MzQ4MmZjNTdhNjE2MjgzCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIFNlcCAyOSAxMzo1OTozMCAyMDA5ICswMjAwCisKKyAgICBidWlsZDogQWJvcnQgaWYgdGhlcmUgaXMgbm8gc3VwcG9ydCBmb3IgdGhlIHJlcXVpcmVkIEM5OSBleHRlbnNpb25zCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMSArCisgbTQvY29tcGlsZXIubTQgICB8ICAgIDMgKystCisgMiBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBlNzRhMWEyN2Y5MGUwN2E0N2JiOWE0MmJmOGQ3NjkwNjFiN2IzNzA3CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIFNlcCAyOSAxMzo1NDoyNCAyMDA5ICswMjAwCisKKyAgICBidWlsZDogQWRkIG1vcmUgb3B0aW9ucyB0byB0cnkgdG8gZ2V0IHN1cHBvcnQgZm9yIEM5OSBleHRlbnNpb25zCisgICAgCisgICAgVGFrZW4gZnJvbSBhdXRvY29uZi4KKworIG00L2NvbXBpbGVyLm00IHwgICAgMyArKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGIxZjYxNzc3ZTc2YTA4M2ZlNmY5MmY0NzUxYTY5NTU2NmY0NzhjMWMKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgU2VwIDI5IDEzOjUwOjI4IDIwMDkgKzAyMDAKKworICAgIGJ1aWxkOiBDaGVjayBmb3IgQzk5IHNucHJpbnRmIGZhbWlseSBvZiBmdW5jdGlvbnMKKyAgICAKKyAgICBXZSBuZWVkIHRoZSBuZXcgc2VtYW50aWNzIHRoYXQgYWxsb3cgcGFzc2luZyBOVUxMIGFuZCAwIHNpemUgdG8gcmV0cmlldmUKKyAgICB0aGUgZnVsbCBzaXplIG9mIHRoZSBmb3JtYXR0ZWQgc3RyaW5nLiBBZGQgYSBuZXcgRFBLR19GVU5DX0M5OV9TTlBSSU5URgorICAgIG1hY3JvIGFuZCByZW1vdmUgdGhlIHNpbXBsZSBjb21wYXQgY2hlY2tzIGZvciBzbnByaW50ZiBhbmQgdnNucHJpbnRmLgorCisgY29uZmlndXJlLmFjICAgICAgICAgICB8ICAgIDMgKystCisgbGliL2NvbXBhdC9NYWtlZmlsZS5hbSB8ICAgIDggKystLS0tLS0KKyBtNC9mdW5jcy5tNCAgICAgICAgICAgIHwgICA0NyArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLQorIDMgZmlsZXMgY2hhbmdlZCwgNTAgaW5zZXJ0aW9ucygrKSwgOCBkZWxldGlvbnMoLSkKKworY29tbWl0IDdlODQxNWJlM2YzMTg4NGYzZmIyYzk5ZWY5MjU1MzQ0YjY3YmVjMjEKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgU2VwIDI5IDEzOjQ3OjQ2IDIwMDkgKzAyMDAKKworICAgIGJ1aWxkOiBVc2UgbWVtY3B5IGluc3RlYWQgb2YgYXNzaWdubWVudCB0byBjb3B5IHZhX2xpc3QKKyAgICAKKyAgICBJdCdzIG1vcmUgcG9ydGFibGUgdGhhdCB3YXkuIFJlbW92ZSBub3cgdW5uZWVkZWQgY2hlY2sgZm9yIHdvcmtpbmcKKyAgICBhc3NpZ25tZW50LgorCisgbGliL2NvbXBhdC9jb21wYXQuaCB8ICAgIDMgKystCisgbTQvZnVuY3MubTQgICAgICAgICB8ICAgMTEgKy0tLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMTEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBhMzFkNmUxYzFiODQzOGEwZWM5NjhjMDVjNThhNjkwZWI5MDIzZjFkCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIFNlcCAyOSAwMzoxMTowNCAyMDA5ICswMjAwCisKKyAgICBidWlsZDogQWRkIGFuIGV4cGxpY2l0IHJldHVybiB0eXBlIHRvIG1haW4gaW4gRFBLR19GVU5DX1ZBX0NPUFkKKworIG00L2Z1bmNzLm00IHwgICAgMyArKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGZiZmRhMjgyMWY0ZDUxMWY5NzU1MjgwNDdmMDlmMjZlYWFjYjI5OTMKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gU2VwIDI3IDE3OjI0OjA2IDIwMDkgKzAyMDAKKworICAgIGJ1aWxkOiBEbyBub3QgdGVzdCBmb3IgQzk5IGZvci1sb29wIHZhcmlhYmxlIGRlY2xhcmF0aW9uIHN1cHBvcnQKKyAgICAKKyAgICBUaGlzIGV4dGVuc2lvbiBpcyBub3QgZ29pbmcgdG8gYmUgdXNlZCBpbiB0aGUgY29kZSBiYXNlIGFueXdheS4KKworIG00L2NvbXBpbGVyLm00IHwgICAgNCAtLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAwIGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA4NDg5ODBlYmIxNGMxMjg1Y2YzZDgxZTU5NmEyMTVjOTVhZjJiMjc0CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIFNlcCAyNyAxNzoyMjo1MiAyMDA5ICswMjAwCisKKyAgICBkcGtnLXF1ZXJ5OiBEbyBub3QgdXNlIEM5OSBzdHlsZSBmb3ItbG9vcCB2YXJpYWJsZSBkZWNsYXJhdGlvbnMKKworIHNyYy9xdWVyeS5jIHwgICAgNCArKystCisgMSBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBlNmJhYTQ4MjIzZTZhNmRjZGQ4NTIyYzkxZDk2ZDc2YTJhM2EzZjBlCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIFNlcCAyNyAxNzoxMDoyMSAyMDA5ICswMjAwCisKKyAgICBidWlsZDogQWRkIHRlc3QgZm9yICd0cmFpbGluZyBjb21tYSBpbiBlbnVtJyBDOTkgc3VwcG9ydAorCisgbTQvY29tcGlsZXIubTQgfCAgICAzICsrKworIDEgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgODU1ZmNjODhhMjBmNmNmYTgwMjc2Zjc2NzIxYWNmMWYwNDFmYTg5MgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBTZXAgMjcgMTY6MjI6NDcgMjAwOSArMDIwMAorCisgICAgYnVpbGQ6IFJlb3JkZXIgc3ViZGlyZWN0b3J5IGJ1aWxkIHNlcXVlbmNlCisgICAgCisgICAgQnVpbGQgc3JjIGFmdGVyIHRoZSBsb3ctbGV2ZWwgZHBrZy1kZWIgYW5kIGRwa2ctc3BsaXQgcHJvZ3JhbXMsIGFuZAorICAgIGRzZWxlY3QgYmVmb3JlIHNjcmlwdHMuCisKKyBNYWtlZmlsZS5hbSB8ICAgIDQgKystLQorIDEgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgZTE4YTg5YjNiMTlhNzVkZjdkY2U3ODJjM2EyNmM5ZjAxNzI2NTZlMAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBTZXAgMjcgMTY6NDY6MjUgMjAwOSArMDIwMAorCisgICAgUmVtb3ZlIGhlbHBvbmx5IGFuZCB2ZXJzaW9ub25seSBmdW5jdGlvbnMKKyAgICAKKyAgICBEaXJlY3RseSB1c2UgcHJpbnR2ZXJzaW9uIGFuZCB1c2FnZSBmdW5jdGlvbnMsIG1ha2UgdGhlbSBleGl0IGFuZCBjaGFuZ2UKKyAgICB0aGVpciBwcm90b3R5cGVzIHRvIGZpdCBjbWRpbmZvcy4KKyAgICAKKyAgICBUaGlzIHNvbHZlcyB0aGUgdWdseSBzaXR1YXRpb24gb2YgZXhwZWN0aW5nIGhlbHBvbmx5IGFuZCB2ZXJzaW9ub25seQorICAgIGNhbGxlcnMgdG8gcmVzcGVjdGl2ZWx5IGRlZmluZSBwcmludHZlcnNpb24gYW5kIHVzYWdlIHRoZW1zZWx2ZXMuCisKKyBkcGtnLWRlYi9tYWluLmMgICAgICAgfCAgIDE2ICsrKysrKysrKystLS0tLS0KKyBkcGtnLXNwbGl0L21haW4uYyAgICAgfCAgIDE2ICsrKysrKysrKystLS0tLS0KKyBkc2VsZWN0L21haW4uY2MgICAgICAgfCAgIDE2ICsrKysrKysrKystLS0tLS0KKyBsaWIvZHBrZy9teW9wdC11dGlsLmMgfCAgIDE0IC0tLS0tLS0tLS0tLS0tCisgbGliL2Rwa2cvbXlvcHQuaCAgICAgIHwgICAgNiAtLS0tLS0KKyBzcmMvbWFpbi5jICAgICAgICAgICAgfCAgIDE2ICsrKysrKysrKystLS0tLS0KKyBzcmMvcXVlcnkuYyAgICAgICAgICAgfCAgIDE2ICsrKysrKysrKystLS0tLS0KKyBzcmMvdHJpZ2NtZC5jICAgICAgICAgfCAgIDE2ICsrKysrKysrKystLS0tLS0KKyA4IGZpbGVzIGNoYW5nZWQsIDYwIGluc2VydGlvbnMoKyksIDU2IGRlbGV0aW9ucygtKQorCitjb21taXQgMDBjNmY2MDk0ZTRlYWM5MzgwNWM2OTVmOGU3ZGRjMzBjMDAxZDA1ZgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBTZXAgMjcgMTI6NTg6MzMgMjAwOSArMDIwMAorCisgICAgZHBrZy10cmlnZ2VyOiBNb3ZlIGZ1bmN0aW9ucyBhbmQgdmFyaWFibGVzIGFyb3VuZAorICAgIAorICAgIFBsYWNlIGNtZGluZm9zIGp1c3QgYmVmb3JlIG1haW4sIGFuZCB0aGUgdmFyaWFibGVzIGFuZCBub2F3YWl0IGZ1bmN0aW9uCisgICAgZGVmaW5pdGlvbnMgYWZ0ZXIgdXNhZ2UuCisKKyBzcmMvdHJpZ2NtZC5jIHwgICA0OSArKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyNSBpbnNlcnRpb25zKCspLCAyNCBkZWxldGlvbnMoLSkKKworY29tbWl0IGNkYzFmZjg0NTkwOTRkNDg2MDhkZmRhYmJlNWY0MzU4N2VhYTVjNmEKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gU2VwIDI3IDE0OjMxOjM2IDIwMDkgKzAyMDAKKworICAgIGRwa2ctdHJpZ2dlcjogT24gLS1oZWxwIHByaW50IHRoZSBkZWZhdWx0IGFkbWluZGlyCisgICAgCisgICAgSW5zdGVhZCBvZiB0aGUgb25lIHBhc3NlZCBvbiB0aGUgY29tbWFuZCBsaW5lLgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDIgKysKKyBzcmMvdHJpZ2NtZC5jICAgIHwgICAgMiArLQorIDIgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgODM0Mzg4NjA4NTdhZGM0MjMxOTEyY2E4NjI4MjlhNmZhM2U4ZWRhNworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBTZXAgMjcgMDM6NTg6MTUgMjAwOSArMDIwMAorCisgICAgUmVtb3ZlIHVudXNlZCB2YXJpYWJsZXMKKworIHNyYy9tYWluLmMgIHwgICAgMiAtLQorIHNyYy9xdWVyeS5jIHwgICAgMSAtCisgMiBmaWxlcyBjaGFuZ2VkLCAwIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA0YjM5NjBjMjQ1Y2E1OTJmNDJkN2UwNDI5MGM2YTU4NjI1NGY1Yzk1CitBdXRob3I6IEpvbmF0aGFuIE5pZWRlciA8anJuaWVkZXJAZ21haWwuY29tPgorRGF0ZTogICBNb24gU2VwIDI4IDE2OjQwOjQyIDIwMDkgLTA1MDAKKworICAgIGRlYmlhbi9jb3B5cmlnaHQ6IFVwZGF0ZSBwYXRoIHRvIE1ENSBjb2RlCisgICAgCisgICAgVGhlIGxpYi8gZGlyZWN0b3J5IHdhcyByZW5hbWVkIHRvIGxpYi9kcGtnLyBpbiBjb21taXQgMDFkMDUzMgorICAgIChNb3ZlIGxpYnJhcmllcyB0byBzdWJkaXJlY3RvcmllcyB1bmRlciBsaWIvLCAyMDA5LTA3LTE1KS4KKyAgICBVcGRhdGUgdGhlIGNvcHlyaWdodCBmaWxlIGFjY29yZGluZ2x5LgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDIgKysKKyBkZWJpYW4vY29weXJpZ2h0IHwgICAgMiArLQorIDIgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgNDhlYzYzNmZhZWRjNDk4OTRjN2RlNDIzZTk0YzljN2M3YWZhYWI4MQorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBTZXAgMjkgMDE6MTg6NTUgMjAwOSArMDIwMAorCisgICAgRml4IHRoZSBwb2xpc2ggdHJhbnNsYXRpb24uCisKKyBtYW4vcG8vcGwucG8gfCAgICAyICstCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA0ZjllYTBkYzVjYjY5YjdiOTFiZDFmYjlhNjQ3ZDE5YmFlNjI0Y2NlCitBdXRob3I6IE1pbG8gQ2FzYWdyYW5kZSA8bWlsb0B1YnVudHUuY29tPgorRGF0ZTogICBTdW4gU2VwIDI3IDE5OjMyOjU2IDIwMDkgKzAyMDAKKworICAgIEl0YWxpYW4gdHJhbnNsYXRpb24gdXBkYXRlCisgICAgCisgICAgVXBkYXRlZCB0byA5Nzh0CisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMSArCisgcG8vaXQucG8gICAgICAgICB8ICAgNzIgKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDM5IGluc2VydGlvbnMoKyksIDM0IGRlbGV0aW9ucygtKQorCitjb21taXQgYmM5N2QxMjg1M2UxYTkwYWJmOTcxZWUwYTVhN2QyNjMzODFlODE1MgorQXV0aG9yOiBDaHJpc3RpYW4gUGVycmllciA8YnVidWxsZUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gU2VwIDI3IDE0OjUxOjUwIDIwMDkgKzAyMDAKKworICAgIE1lcmdlIGNvbmZsaWN0cworCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDEgKworIG1hbi9wby9wbC5wbyAgICAgfCAxMzU3ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgNzMyIGluc2VydGlvbnMoKyksIDYyNiBkZWxldGlvbnMoLSkKKworY29tbWl0IGMyZDBkZmRlMDliYzlkNTE4NDM1Yjg0MTg5N2Q4NmRiOGQ0NjQzMTcKK0F1dGhvcjogV2lrdG9yIFdhbmRhY2hvd2ljeiA8c2lyeWVzQGdtYWlsLmNvbT4KK0RhdGU6ICAgU3VuIFNlcCAyNyAwODo0MDozNCAyMDA5ICswMjAwCisKKyAgICBVcGRhdGUgUG9saXNoIHRyYW5zbGF0aW9uIG9mIGRzZWxlY3QKKyAgICAKKyAgICBVcGRhdGUgdG8gMjMwdAorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDEgKworIGRzZWxlY3QvcG8vcGwucG8gfCAgIDEzICsrKysrKy0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDcgaW5zZXJ0aW9ucygrKSwgNyBkZWxldGlvbnMoLSkKKworY29tbWl0IDhkZjEyYzA1ZDE0YWUxYjQxODRiZjNjYTRjY2Y3OTBlMDU2ZjZiNWYKK0F1dGhvcjogV2lrdG9yIFdhbmRhY2hvd2ljeiA8c2lyeWVzQGdtYWlsLmNvbT4KK0RhdGU6ICAgU3VuIFNlcCAyNyAwODozNjo1MCAyMDA5ICswMjAwCisKKyAgICBVcGRhdGUgUG9saXNoIHRyYW5zbGF0aW9uIG9mIHNjcmlwdHMKKyAgICAKKyAgICBVcGRhdGUgdG8gNDY3dAorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDEgKworIHNjcmlwdHMvcG8vcGwucG8gfCAgMjUwICsrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAxMzMgaW5zZXJ0aW9ucygrKSwgMTE4IGRlbGV0aW9ucygtKQorCitjb21taXQgZGZmMGUyZWQ2NGRlMjNlNDI5NzMzZDUzYmNmZWZjMWRiOTc0YmRkMQorQXV0aG9yOiBXaWt0b3IgV2FuZGFjaG93aWN6IDxzaXJ5ZXNAZ21haWwuY29tPgorRGF0ZTogICBTdW4gU2VwIDI3IDA4OjM1OjQwIDIwMDkgKzAyMDAKKworICAgIFVwZGF0ZSBwb2xpc2ggcHJvZ3JhbXMgdHJhbnNsYXRpb25zCisgICAgCisgICAgVXBkYXRlIHRvIDQ3NHQKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAxICsKKyBwby9wbC5wbyAgICAgICAgIHwgMTE3OSArKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDMwOSBpbnNlcnRpb25zKCspLCA4NzEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBhNDNiNDA2MDRlMDk5MTAwYzU4MTNjNGE3MmZjMWM5YmVjZWM5MjZhCitBdXRob3I6IEhlbGdlIEtyZXV0em1hbm4gPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorRGF0ZTogICBTdW4gU2VwIDI3IDA1OjQ4OjM1IDIwMDkgKzAyMDAKKworICAgIEZpeCB0eXBvIGluIG1hbiBwYWdlOiBzL2ludm9rYXRpb24vaW52b2NhdGlvbi8KKworIG1hbi9kcGtnLjEgICAgICAgICAgfCAgICAyICstCisgbWFuL3BvL2RlLnBvICAgICAgICB8ICAgIDQgKystLQorIG1hbi9wby9kcGtnLW1hbi5wb3QgfCAgICAyICstCisgbWFuL3BvL2VzLnBvICAgICAgICB8ICAgIDQgKystLQorIG1hbi9wby9mci5wbyAgICAgICAgfCAgICA0ICsrLS0KKyBtYW4vcG8vaHUucG8gICAgICAgIHwgICAgNCArKy0tCisgbWFuL3BvL2phLnBvICAgICAgICB8ICAgIDQgKystLQorIG1hbi9wby9wbC5wbyAgICAgICAgfCAgICA0ICsrLS0KKyBtYW4vcG8vcHRfQlIucG8gICAgIHwgICAgNCArKy0tCisgbWFuL3BvL3J1LnBvICAgICAgICB8ICAgIDQgKystLQorIG1hbi9wby9zdi5wbyAgICAgICAgfCAgICA0ICsrLS0KKyAxMSBmaWxlcyBjaGFuZ2VkLCAyMCBpbnNlcnRpb25zKCspLCAyMCBkZWxldGlvbnMoLSkKKworY29tbWl0IGU2MzdmYjg5ZDAzZWEyOTM2ZGQ1NmJhMjU5YTAyNWRmN2ViOTU0MGIKK0F1dGhvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitEYXRlOiAgIFN1biBTZXAgMjcgMDU6NDU6MjQgMjAwOSArMDIwMAorCisgICAgVXBkYXRlIEdlcm1hbiB0cmFuc2xhdGlvbiBvZiBtYW51YWwgcGFnZXMKKyAgICAKKyAgICBVcGRhdGUgdG8gMTY0MnQuCisKKyBtYW4vcG8vZGUucG8gfCAgIDExICsrKysrKysrKystCisgMSBmaWxlcyBjaGFuZ2VkLCAxMCBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgYmI5ZDg3NDY4ZmY0ZTM3MTBjODU0ZmZhYTBiMDkxMTBmOGZkZGU2NAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBTZXAgMjYgMjA6NTM6NTUgMjAwOSArMDIwMAorCisgICAgYnVpbGQ6IEZpeCBidWlsZCBmYWlsdXJlIHdpdGggYXV0b21ha2UgPCAxLjExCisgICAgCisgICAgV2hlbiB0aGVyZSdzIG5vIEFNX1NJTEVOVF9SVUxFUyBzdXBwb3J0LCBzZXQgYSBBTV9ERUZBVUxUX1ZFUkJPU0lUWQorICAgIHZhcmlhYmxlIHRvIDEgKHZlcmJvc2UpLCBzbyB0aGF0IHRoZSB2ZXJib3NpdHkgdmFyaWFibGVzIHVuZGVyIG1hbi8KKyAgICBiZWNvbWUgbm8tb3BzLgorCisgY29uZmlndXJlLmFjIHwgICAgMyArKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDRmNGYwMWVmZjAzOTk1YzgxNTQzNzE2ZTQ3MWQ4MmJmNzUwNmY2ZWUKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgU2VwIDI2IDE3OjQ2OjAwIDIwMDkgKzAyMDAKKworICAgIGRzZWxlY3QtZnRwOiBzdG9wIGNhbGxpbmcgZHBrZyAtLWZvcmdldC1vbGQtdW5hdmFpbCBhcyBpdCdzIGEgbm8tb3AKKyAgICAKKyAgICBBbmQgaXQgb3V0cHV0cyBhbiBhbm5veWluZyB3YXJuaW5nIG5vd2FkYXlzLgorCisgZHNlbGVjdC9tZXRob2RzL2Z0cC91cGRhdGUgfCAgICA1IC0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAwIGluc2VydGlvbnMoKyksIDUgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA0MjY0ZTRmYTM1ZTBlOWViMDgxZmNlMGU2M2VhNjVlNDBiNjUzNWQ3CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IFNlcCAyNiAxNzo0Mzo1NyAyMDA5ICswMjAwCisKKyAgICBkc2VsZWN0LWZ0cDogZG9uJ3QgdXNlIG9ic29sZXRlIGRwa2cgLS1wcmludC1pbnN0YWxsYXRpb24tYXJjaGl0ZWN0dXJlCisKKyBkc2VsZWN0L21ldGhvZHMvZnRwL3NldHVwICB8ICAgIDIgKy0KKyBkc2VsZWN0L21ldGhvZHMvZnRwL3VwZGF0ZSB8ICAgIDIgKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IGRmNmMwNmM0ZmI0NTcwYWJkMzdmZDZlYzI5YTAyMDFhNDk2YzRhODEKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgU2VwIDI2IDE3OjQyOjIyIDIwMDkgKzAyMDAKKworICAgIGRzZWxlY3QtZnRwOiBVcGRhdGUgbXkgZS1tYWlsIGFkZHJlc3MgYW5kIGNvcHlyaWdodAorCisgZHNlbGVjdC9tZXRob2RzL2Z0cC9pbnN0YWxsIHwgICAgMiArLQorIGRzZWxlY3QvbWV0aG9kcy9mdHAvc2V0dXAgICB8ICAgIDIgKy0KKyBkc2VsZWN0L21ldGhvZHMvZnRwL3VwZGF0ZSAgfCAgICAyICstCisgMyBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAxOWJiMjc2NTY4YWY2YmJiYWM3MDAzNDU5NTNlMWM5ZWM1YTY4ZDlkCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIFNlcCAyMiAxODo1MzoxOSAyMDA5ICswMjAwCisKKyAgICBJbnRlZ3JhdGUgZHBrZy1mdHAgaW50byBkc2VsZWN0CisgICAgCisgICAgSXQgcmVxdWlyZXMgcGVybCB0byB3b3JrIGJ1dCBkb24ndCBhZGQgaXQgYXMgYSBkZXBlbmRlbmN5CisgICAgYnV0IG9ubHkgYXMgYSBzdWdnZXN0cyBhbmQgaW5zdGVhZCBoYXZlIGEgbmljZSBlcnJvcgorICAgIG1lc3NhZ2UgdG8gaW52aXRlIHRoZSB1c2VyIHRvIGluc3RhbGwgdGhlIHBlcmwgcGFja2FnZS4KKyAgICAKKyAgICBPdGhlciBtaW5vciBjaGFuZ2VzIGluY2x1ZGUgcmVtb3ZhbCBvZiBsYXRpbjEgY2hhcmFjdGVycywKKyAgICBtb3ZpbmcgdGhlIFJFQURNRS5taXJyb3JzIGZpbGUgaW5zaWRlIHRoZSBtZXRob2QgZGlyZWN0b3J5CisgICAgYW5kIHJlbmFtaW5nIHRoZSBEcGtnOjpGdHAgbW9kdWxlIHRvIERzZWxlY3Q6OkZ0cC4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMSArCisgZGViaWFuL2NvbnRyb2wgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA0ICstCisgZGViaWFuL2RzZWxlY3QuaW5zdGFsbCAgICAgICAgICAgICAgICAgfCAgICAxICsKKyBkc2VsZWN0L21ldGhvZHMvRGViaWFuL0RzZWxlY3QvRnRwLnBtICB8ICAzNjIgKysrKysrKysrKysrKysrKysrCisgZHNlbGVjdC9tZXRob2RzL01ha2VmaWxlLmFtICAgICAgICAgICAgfCAgIDEzICstCisgZHNlbGVjdC9tZXRob2RzL2Z0cC9SRUFETUUubWlycm9ycy50eHQgfCAgMjU5ICsrKysrKysrKysrKysKKyBkc2VsZWN0L21ldGhvZHMvZnRwL2Rlc2MuZnRwICAgICAgICAgICB8ICAgIDIgKworIGRzZWxlY3QvbWV0aG9kcy9mdHAvaW5zdGFsbCAgICAgICAgICAgIHwgIDYyNiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKworIGRzZWxlY3QvbWV0aG9kcy9mdHAvbmFtZXMgICAgICAgICAgICAgIHwgICAgMiArCisgZHNlbGVjdC9tZXRob2RzL2Z0cC9zZXR1cCAgICAgICAgICAgICAgfCAgMTc0ICsrKysrKysrKworIGRzZWxlY3QvbWV0aG9kcy9mdHAvdXBkYXRlICAgICAgICAgICAgIHwgIDI1MSArKysrKysrKysrKysrCisgMTEgZmlsZXMgY2hhbmdlZCwgMTY5MiBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQorCitjb21taXQgNmY1MjE5YmZkMmY0ZjRlYjQwZWI0NWRhOGU1MzM2YjNhOGFjYWNlZgorQXV0aG9yOiBIZWxnZSBLcmV1dHptYW5uIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KK0RhdGU6ICAgU2F0IFNlcCAyNiAxOToyMjoyOSAyMDA5ICswMjAwCisKKyAgICBVcGRhdGUgR2VybWFuIHNjcmlwdHMgdHJhbnNsYXRpb24KKyAgICAKKyAgICBVcGRhdGUgdG8gNDczdC4KKworIHNjcmlwdHMvcG8vZGUucG8gfCAgNDY0ICsrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMjQyIGluc2VydGlvbnMoKyksIDIyMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDkzNGNkZDk2NzE0NGU5NjhlMjBiOTE1NzFlODUzNDA2MGI2YmNlYmUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgU2VwIDI2IDE0OjA4OjU2IDIwMDkgKzAyMDAKKworICAgIGxpYmRwa2c6IEVuY2xvc2UgYnVmZmVyX2RhdGEgdW5pb24gaW5pdGlhbGl6YXRpb24gd2l0aCBicmFjZXMKKworIGxpYi9kcGtnL2J1ZmZlci5jIHwgICAgMiArLQorIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgNTI0M2ZhYWEwNzI0ZTFhYzQzZjE5Yjk4ZTg0MTRkMDhmMWQ4YzMzMAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBTZXAgMjYgMTQ6MTU6MTUgMjAwOSArMDIwMAorCisgICAgYnVpbGQ6IFVwZGF0ZSBjb21waWxlci13YXJuaW5ncyBmbGFncworICAgIAorICAgIERvIG5vdCB1c2UgLVdlcnJvciBmb3Igbm93IChhdCBsZWFzYXQgdW50aWwgbmN1cnNlcyBpcyBmaXhlZCkuIEFuZCBhZGQKKyAgICAtV2V4dHJhIC1Xbm8tdW51c2VkLXBhcmFtZXRlciAtV25vLW1pc3NpbmctZmllbGQtaW5pdGlhbGl6ZXJzLgorCisgbTQvY29tcGlsZXIubTQgfCAgICAyICstCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAxZDA5OWEzMzE4NWVmMmNkOGNlNDYxMTc1ZTkzNjQxYTU2NDYyYjQzCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IFNlcCAyNiAxNDoxNDoyMiAyMDA5ICswMjAwCisKKyAgICBidWlsZDogUmVmYWN0b3Igd2FybmluZyBmbGFncyBpbnRvIGEgbmV3IFdGTEFHUyB2YXJpYWJsZQorCisgbTQvY29tcGlsZXIubTQgfCAgICA3ICsrKystLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworY29tbWl0IGMyYmMzNTY0Yjk4Y2MxOWRmOGM5MzZiNmJlMmUxNzA4NDliYzUxNGIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgU2VwIDI2IDE0OjIwOjA3IDIwMDkgKzAyMDAKKworICAgIGJ1aWxkOiBXcmFwIHBlcmwgZXhwcmVzc2lvbiBpbiBQRVJMX0xJQkRJUiBhc3NpZ25tZW50CisKKyBtNC9wZXJsLm00IHwgICAgNCArKystCisgMSBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBhMjljMGU3MDAzNzc5NmY1MWQ3NjczNjdkMzMxNzg3MjZjMWI1YWE2CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IFNlcCAyNiAxNDowMzowNyAyMDA5ICswMjAwCisKKyAgICBidWlsZDogUHJvcGVybHkgZXNjYXBlICQoIGluc2lkZSBwZXJsIHJlZ2V4CisgICAgCisgICAgVXNlIG9uZSBiYWNrIHNsYXNoIGluc3RlYWQgb2YgdHdvLCBvdGhlcndpc2UgcGVybCB3YXMgcmVwbGFjaW5nIGl0CisgICAgd2l0aCB0aGUgJCggKGFrYSAkR0lEKS4KKyAgICAKKyAgICBCcm9rZW4gZHVlIHRvIGNvbW1pdCAwMmYxZjhhNTBhZjU4YjlkMWY2MWRkOTI1OGNmMWQyNmZlMmYwZDIxLgorCisgbTQvcGVybC5tNCB8ICAgIDIgKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGI3ZjJmOTExNzk4NDRiMjE3MjhhYTBkMzEwNzRmM2IyY2FhOWU3NzYKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgU2VwIDI1IDE1OjMzOjQ0IDIwMDkgKzAyMDAKKworICAgIERvIG5vdCBwcmludCByZWR1bmRhbnQgZHBrZyBwcmVmaXggYW5kIG5ldyBsaW5lIG9uIHVuZGVmaW5lZCBQQVRICisKKyBzcmMvaGVscC5jIHwgICAgMyArKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDVmZTg4YzU3ZWVkODRiNzdlNDY5ZDJhMWI3ODhmMzM4ZTA0OWEwMGYKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgU2VwIDI1IDE1OjMxOjA4IDIwMDkgKzAyMDAKKworICAgIFVzZSB3YXJuaW5nKCkgaW5zdGVhZCBvZiBmcHJpbnRmKCkgaW4gY2hlY2twYXRoKCkKKworIHNyYy9oZWxwLmMgfCAgICAyICstCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA3NjIzZjc4ZDM5NjgyMDc2ZmZlNGVhNDE2ZGY5NDdmZGFiOTFiMTg0CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIFNlcCAyNSAwNDo0MDo1NiAyMDA5ICswMjAwCisKKyAgICBDbGVhbiB1cCBjb2Rpbmcgc3R5bGUgZm9yIGhhbGYgY29tcGxpYW50IGZpbGVzCisgICAgCisgICAgRml4IHNwYWNpbmcsIGluZGVudGF0aW9uIGFuZCBhbGlnbm1lbnQuIERvIG5vdCB1c2UgYmFja3RpY2tzLCBvbgorICAgIGNvbW1lbnRzIHVzZSBVVEYtOCBwcmV0dHkgcXVvdGVzLCBvbiBzdHJpbmdzIHVzZSBzaW5nbGUgb3IgZG91YmxlCisgICAgcXVvdGVzLCBidXQgZG8gbm90IGNoYW5nZSBzdHJpbmdzIG1hcmtlZCBmb3IgdHJhbnNsYXRpb24gaWYgbm8gb3RoZXIKKyAgICBjaGFuZ2Ugd2FzIG5lZWRlZC4gRml4IHBsYWNlbWVudCBvZiBicmFjZXMgYW5kIGJvb2xlYW4gb3BlcmF0b3JzLiBGaXgKKyAgICBmb3JtYXR0aW5nIG9mIGNvbW1lbnRzLgorCisgbGliL2Rwa2cvc2hvd3BrZy5jICAgICAgICB8ICAyMjkgKysrKysrKysrKysrLS0tLS0tLS0tLQorIGxpYi9kcGtnL3N1YnByb2MuYyAgICAgICAgfCAgICA2ICstCisgbGliL2Rwa2cvdGFyZm4uYyAgICAgICAgICB8ICAyMzkgKysrKysrKysrKysrLS0tLS0tLS0tLS0KKyBzcmMvY29uZmlndXJlLmMgICAgICAgICAgIHwgIDQ3MCArKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyB1dGlscy9zdGFydC1zdG9wLWRhZW1vbi5jIHwgICA3MyArKysrLS0tLQorIDUgZmlsZXMgY2hhbmdlZCwgNTQzIGluc2VydGlvbnMoKyksIDQ3NCBkZWxldGlvbnMoLSkKKworY29tbWl0IDZkMzY1MjMwODg1ZmY5MjIxYTgzZWZiOWUyNjI4MThjYmUzODRiMzIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgU2VwIDI1IDAzOjUxOjQ5IDIwMDkgKzAyMDAKKworICAgIHMtcy1kOiBDYWxsIHdhcm5pbmcgaW5zdGVhZCBvZiBmYXRhbCBvbiBpb3ByaW9fc2V0IGVycm9yCisgICAgCisgICAgVGhpcyBmZWF0dXJlIHNob3VsZCBiZSBjb25zaWRlcmVkIG9wdGlvbmFsLCBhcyBub24tTGludXggYXJjaGl0ZWN0dXJlcworICAgIGRvIG5vdCBzdXBwb3J0IGl0LCBuZWl0aGVyIGRvIG9sZGVyIExpbnV4IGtlcm5lbHMsIGFuZCBpdCBzZWVtcyBzb21lCisgICAgdmlydHVhbGl6YXRpb24gTGludXgga2VybmVscyBsaWtlIHRoZSBPcGVuVlogcGF0Y2ggZG8gbm90IGFsbG93IGl0LgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICB8ICAgIDIgKysKKyB1dGlscy9zdGFydC1zdG9wLWRhZW1vbi5jIHwgICAgMyArKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDU4NjY1ZTFlZWFjNjQ3YjFlMjU1NWE2YTYyMTQ5NjY2YmYwYTQ3NDUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgU2VwIDI1IDAzOjQzOjEyIDIwMDkgKzAyMDAKKworICAgIGxpYmRwa2c6IFVzZSBzdHJ1Y3QgYnVmZmVyX2RhdGEgaW5zdGVhZCBvZiBidWZmZXJfZGF0YV90CisgICAgCisgICAgRG8gbm90IHVzZSB0eXBlZGVmcyBmb3Igc3RydWN0cywgaXQncyBiYWQgZm9ybSBhcyBpdCBtYWtlcyBpdCBtb3JlCisgICAgZGlmZmljdWx0IHRvIGtub3cgd2hhdCBraW5kIG9mIHR5cGUgd2UgYXJlIGRlYWxpbmcgd2l0aC4gT25seSB0byBiZQorICAgIHVzZWQgZm9yIGZ1bmRhbWVudGFsIHR5cGVzLiBSZW1vdmUgYnVmZmVyX2RhdGFfdC4KKworIGxpYi9kcGtnL2J1ZmZlci5jIHwgICAxNSArKysrKysrKy0tLS0tLS0KKyBsaWIvZHBrZy9idWZmZXIuaCB8ICAgMTUgKysrKysrKystLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAxNiBpbnNlcnRpb25zKCspLCAxNCBkZWxldGlvbnMoLSkKKworY29tbWl0IDc4YzM3NDRjODRhZDdlNDk0ZWFlMjkxNDMyYzU1OTYzZjhmMWVkODEKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgU2VwIDI1IDAwOjIwOjE5IDIwMDkgKzAyMDAKKworICAgIGxpYmRwa2c6IEFkZCBuZXcgYnVmZmVyX2hhc2ggYW5kIGJ1ZmZlcl9tZDUgZnVuY3Rpb25zCisKKyBsaWIvZHBrZy9idWZmZXIuYyAgICAgICAgIHwgICAxMyArKysrKysrKysrKysKKyBsaWIvZHBrZy9idWZmZXIuaCAgICAgICAgIHwgICAgNCArKysKKyBsaWIvZHBrZy90ZXN0Ly5naXRpZ25vcmUgIHwgICAgMSArCisgbGliL2Rwa2cvdGVzdC9NYWtlZmlsZS5hbSB8ICAgIDIgKworIGxpYi9kcGtnL3Rlc3QvdC1idWZmZXIuYyAgfCAgIDQ2ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKworIDUgZmlsZXMgY2hhbmdlZCwgNjYgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDhjODRkMjJmNjYyZTYxNjY0YjM2MTkxMTdjNWM0ZWFiZDZiNzA0ZDgKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgU2VwIDI1IDAwOjI1OjAyIDIwMDkgKzAyMDAKKworICAgIGxpYmRwa2c6IE1ha2UgYnVmZmVyX3dyaXRlIGJ1ZiBhcmd1bWVudCBjb25zdAorCisgbGliL2Rwa2cvYnVmZmVyLmMgfCAgICAzICsrLQorIGxpYi9kcGtnL2J1ZmZlci5oIHwgICAgMiArLQorIDIgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgZTEzNTAxNWFlMmJmNDEzMjFlNzU4MjlhYWFjNThmY2VjYzU3NTQyYgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBTZXAgMjQgMjM6NDc6NTkgMjAwOSArMDIwMAorCisgICAgbGliZHBrZzogUmVuYW1lIHN0cnVjdCBidWZmZXJfZGF0YSBkYXRhIG1lbWJlciB0byBhcmcKKworIGxpYi9kcGtnL2J1ZmZlci5jIHwgICAzNiArKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0KKyBsaWIvZHBrZy9idWZmZXIuaCB8ICAgIDIgKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDE5IGluc2VydGlvbnMoKyksIDE5IGRlbGV0aW9ucygtKQorCitjb21taXQgN2YzMDgwMDcxNzk4N2I1MGNiODg3ZWVkZDJjZjJmMGU4NDFhNjRlMQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBTZXAgMjQgMjM6Mjc6NTMgMjAwOSArMDIwMAorCisgICAgbGliZHBrZzogTW92ZSBidWZmZXJfYXJnIGRlY2xhcmF0aW9uIGRpcmVjdGx5IGludG8gYnVmZmVyX2RhdGEKKworIGxpYi9kcGtnL2J1ZmZlci5oIHwgICAxMCArKysrLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAxZDkwODhiMjRhOGE5YjI3OWQyYjk5Mjg1MTJhYTNmMDYwNTYwMTM1CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IFNlcCAyNCAyMDo0NToyMSAyMDA5ICswMjAwCisKKyAgICBsaWJkcGtnOiBVc2UgaW50ZXJuZXJyIGZvciBpbnZhbGlkIGJ1ZmZlciBkYXRhIHR5cGVzCisKKyBsaWIvZHBrZy9idWZmZXIuYyB8ICAgIDggKysrKy0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKKworY29tbWl0IGU0MTE0NTViZjY0Y2I2MjM2OWE5NTAzZmExYjJjMWZmYjkzNWUxOTgKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgU2VwIDI0IDIwOjQyOjExIDIwMDkgKzAyMDAKKworICAgIGxpYmRwa2c6IERvIG5vdCBhbGxvY2F0ZSBtZW1vcnkgZm9yIGJ1ZmZlciBtZDUgaGFzaCByZXN1bHQKKyAgICAKKyAgICBFeHBlY3QgdGhlIGNhbGxlciB0byBwYXNzIGEgc3VpdGFibGUgYnVmZmVyIHRvIHN0b3JlIHRoZSByZXN1bHQuCisKKyBsaWIvZHBrZy9idWZmZXIuYyB8ICAgIDQgKystLQorIHNyYy9jb25maWd1cmUuYyAgIHwgICAyMyArKysrKysrKysrKystLS0tLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgMTQgaW5zZXJ0aW9ucygrKSwgMTMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyMGNmNmJlOGI1YmY3NWRlZTUyOTVlZmJmMzYxODgyMzhmZmVlMDZiCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IFNlcCAyNCAxMzozOTo1MyAyMDA5ICswMjAwCisKKyAgICBkcGtnLWRlYjogVXNlIHZvaWQgKiBpbnN0ZWFkIG9mIHVuc2lnbmVkIGNoYXIgKiBmb3IgcmVhZC93cml0ZSBidWZmZXIKKworIGRwa2ctZGViL2V4dHJhY3QuYyB8ICAgIDIgKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGVkNjcxMzAzMDNlODkwYWVjYjg2YWU0MWM3NmE5ZTY3NGVlNWIzYTgKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgU2VwIDI0IDEzOjM1OjM3IDIwMDkgKzAyMDAKKworICAgIGxpYmRwa2c6IFVzZSBjaGFyIGluc3RlYWQgb2YgdW5zaWduZWQgY2hhciBmb3Igc3RyaW5ncworCisgbGliL2Rwa2cvYnVmZmVyLmMgfCAgICA2ICsrKy0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQorCitjb21taXQgNjY4NDY2YTIxNzU2MDIzMjVhN2RlNjllMzlhNzZmM2M1MjgzYTY2YworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBTZXAgMjQgMTM6MjA6NTQgMjAwOSArMDIwMAorCisgICAgZHBrZy1kZWI6IFJlbW92ZSBTX0lTTE5LIGNvbXBhdGliaWxpdHkgZGVmaW5pdGlvbgorICAgIAorICAgIFRoZSByZXN0IG9mIHRoZSBjb2RlIHVzZXMgaXQgdW5jb25kaXRpb25hbGx5LCBhbmQgbm8gb25lIGhhcyBjb21wbGFpbmVkLAorICAgIGl0J3MgYWxzbyBwcmVzZW50IGluIGFsbCBQT1NJWC4xLTIwMDEgY29uZm9ybWluZyBzeXN0ZW1zLgorCisgZHBrZy1kZWIvYnVpbGQuYyB8ICAgIDQgLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMCBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQorCitjb21taXQgMDJmMWY4YTUwYWY1OGI5ZDFmNjFkZDkyNThjZjFkMjZmZTJmMGQyMQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBTZXAgMjQgMTM6MDk6MDQgMjAwOSArMDIwMAorCisgICAgYnVpbGQ6IERvIG5vdCB1c2UgYmFja3RpY2tzIG9uIG00IG1hY3JvcworICAgIAorICAgIFVzZSBzaW5nbGUgcXVvdGVzIGZvciBzdHJpbmdzLCBhbmdsZSBicmFja2V0cyBmb3IgaGVhZGVycywgYW5kICQoKQorICAgIGZvciBjb21tYW5kIHN1YnNpdHV0aW9uLiBUaGlzIHNob3VsZCBwYWNpZnkgc3ludGF4IGhpZ2hsaWdodGVycy4KKworIG00L2FyY2gubTQgICAgIHwgICAgNCArKy0tCisgbTQvY29tcGlsZXIubTQgfCAgICA0ICsrLS0KKyBtNC9mdW5jcy5tNCAgICB8ICAgIDIgKy0KKyBtNC9saWJzLm00ICAgICB8ICAgIDQgKystLQorIG00L2xpbmtlci5tNCAgIHwgICAgMiArLQorIG00L3BlcmwubTQgICAgIHwgICAgMiArLQorIG00L3R5cGVzLm00ICAgIHwgICAgNiArKystLS0KKyA3IGZpbGVzIGNoYW5nZWQsIDEyIGluc2VydGlvbnMoKyksIDEyIGRlbGV0aW9ucygtKQorCitjb21taXQgNjg5YTg3ZWZmNWJlNTYwMmIyMWFkNWE2ZmM2ZWE0YThlODIwMGRkYQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBTZXAgMjQgMTM6MDc6MzcgMjAwOSArMDIwMAorCisgICAgYnVpbGQ6IERvIG5vdCB1c2Ugc2luZ2xlIHF1b3RlIG9uIHN0cmluZ3MKKyAgICAKKyAgICBUaGlzIHNob3VsZCBwYWNpZnkgc3ludGF4IGhpZ2hsaWdodGVycy4KKworIGNvbmZpZ3VyZS5hYyB8ICAgIDQgKystLQorIDEgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgNTkxNjg2OTFjMGQ0MTBmODE4MzUwYWI5ZDgzNTE1YWFmYTRiNDU5MQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBTZXAgMjQgMTI6NDI6NTAgMjAwOSArMDIwMAorCisgICAgbGliY29tcGF0OiBEZWZpbmUgV0NPUkVEVU1QIG9ubHkgaWYgdGhlIHN5c3RlbSBkb2VzIG5vdCBoYXZlIGl0CisgICAgCisgICAgRHVlIHRvIDxjb21wYXQuaD4gYmVpbmcgaW5jbHVkZWQgZmlyc3QsIFdDT1JFRFVNUCB3YXMgYmVpbmcgZGVmaW5lZAorICAgIGFsd2F5cyB0byB0aGUgZHVtbXkgdmVyc2lvbi4KKworIGNvbmZpZ3VyZS5hYyAgICAgICAgfCAgICAxICsKKyBsaWIvY29tcGF0L2NvbXBhdC5oIHwgICAgMiArLQorIDIgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgZWYxYzBkNjFjZjg5NGNmYWQ0OTU0MjY3Yzg5ZmZlOTEwOTk1Yjg3ZgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBTZXAgMjQgMTI6Mzg6NDcgMjAwOSArMDIwMAorCisgICAgYnVpbGQ6IEFkZCBuZXcgRFBLR19DSEVDS19ERUNMIG00IG1hY3JvCisgICAgCisgICAgVXNlZCB0byBjaGVjayBpZiBzb21ldGhpbmcgaXMgZGVjbGFyZWQgaW4gYSBoZWFkZXIuCisKKyBtNC90eXBlcy5tNCB8ICAgMTMgKysrKysrKysrKysrKworIDEgZmlsZXMgY2hhbmdlZCwgMTMgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDVjMDYxOTA2NDQzZDgyNWE1ODA1MzgxNTJiNWIxYWE3MzI1NTAwMzgKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgU2VwIDIzIDE1OjA4OjA0IDIwMDkgKzAyMDAKKworICAgIHMtcy1kOiBSZW1vdmUgd3JvbmcgY29tbWVudCBub3QgbWF0Y2hpbmcgd2l0aCBjb2RlCisKKyB1dGlscy9zdGFydC1zdG9wLWRhZW1vbi5jIHwgICAgMSAtCisgMSBmaWxlcyBjaGFuZ2VkLCAwIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA4OTUwNTlkMmEzYjdhNzcwN2YwYTdmMDlkYWU0ZDNiNTUwM2NjNjhlCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIFNlcCAyMyAwMzoyNzoxNiAyMDA5ICswMjAwCisKKyAgICBSZW5hbWUgYXV0b2NvbmYgYXV4aWxpYXJ5IGRpcmVjdG9yeSBmcm9tIGNvbmZpZyB0byBidWlsZC1hdXgKKyAgICAKKyAgICBNYWtlcyB0aGUgZGlyZWN0b3J5IG5hbWUgbGVzcyBjb25mdXNpbmcuCisKKyAuZ2l0aWdub3JlICAgfCAgICAyICstCisgY29uZmlndXJlLmFjIHwgICAgMiArLQorIDIgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgYzE0YTI5YWU5OWE5YjI0YTNkNmUyM2QyYTUwYjQwMmQ4NDRiODU4MworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBTZXAgMjMgMDM6MjE6MTYgMjAwOSArMDIwMAorCisgICAgTW92ZSBkZXZlbG9wbWVudCBkb2N1bWVudGF0aW9uIHRvIGRvYy8KKworIE1ha2VmaWxlLmFtICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNCArKy0tCisgZGViaWFuL2Rwa2cuZG9jcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA0ICsrLS0KKyBSRUFETUUuYXBpID0+IGRvYy9SRUFETUUuYXBpICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDAKKyAuLi4vUkVBRE1FLmZlYXR1cmUtcmVtb3ZhbC1zY2hlZHVsZSAgICAgICAgICAgICAgICB8ICAgIDAKKyA0IGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKKworY29tbWl0IGIzYTc2MTMwYTlhZjZlNjhkMDNjNmQ5ZTdjNWIwYzZhYzhiZjA2MTUKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gU2VwIDIwIDEyOjI4OjMwIDIwMDkgKzAyMDAKKworICAgIGRwa2ctZ2VuY2hhbmdlcywgRHBrZzo6VmVuZG9yOjpEZWZhdWx0OiBkcm9wIGhvb2sgYmVmb3JlLWNoYW5nZXMtY3JlYXRpb24KKyAgICAKKyAgICBUaGlzIGhvb2sgaXMgdXNlbGVzcyBub3cgdGhhdCB0aGUgVWJ1bnR1IHZlbmRvciBvYmplY3QgdXNlcworICAgIHBvc3QtcHJvY2Vzcy1jaGFuZ2Vsb2ctZW50cnkgdG8gYWRkIHRoZWlyIExhdW5jaHBhZC1CdWdzLUZpeGVkCisgICAgZmllbGQuCisKKyBzY3JpcHRzL0Rwa2cvVmVuZG9yL0RlZmF1bHQucG0gfCAgICA4IC0tLS0tLS0tCisgc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGwgICAgIHwgICAgMiAtLQorIDIgZmlsZXMgY2hhbmdlZCwgMCBpbnNlcnRpb25zKCspLCAxMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDhjOGYzYWEyOGJiMDAxYzE5YTQzOTYwNTY4ZWNkZmQ2OTM2ZDNmYzYKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gU2VwIDIwIDEyOjAxOjMxIDIwMDkgKzAyMDAKKworICAgIERwa2c6OlZlbmRvcjo6KjogYmV0dGVyIGhhbmRsZSB1bmtub3duIGhvb2tzCisgICAgCisgICAgSW1wbGVtZW50IHZlbmRvciBvYmplY3RzIGluIGEgd2F5IHRoYXQgdGhlIHJldHVybiB2YWx1ZSBmb3IgdW5rbm93bgorICAgIGhvb2tzIGlzIGJldHRlciBkZWZpbmVkOiBlbXB0eSBsaXN0IGluIGxpc3QgY29udGV4dCBvciB1bmRlZiBpbiBzY2FsYXIKKyAgICBjb250ZXh0LgorCisgc2NyaXB0cy9EcGtnL1ZlbmRvci9EZWJpYW4ucG0gIHwgICAgOCArKystLS0tLQorIHNjcmlwdHMvRHBrZy9WZW5kb3IvRGVmYXVsdC5wbSB8ICAgIDMgKysrCisgc2NyaXB0cy9EcGtnL1ZlbmRvci9VYnVudHUucG0gIHwgICAgNiArKystLS0KKyAzIGZpbGVzIGNoYW5nZWQsIDkgaW5zZXJ0aW9ucygrKSwgOCBkZWxldGlvbnMoLSkKKworY29tbWl0IGY3YTMyM2ZjOTQ1YTE0ODRmYWJkN2E4ZTYzOWI0OGI4YjViODEyNGQKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gU2VwIDIwIDExOjIxOjAzIDIwMDkgKzAyMDAKKworICAgIERwa2c6OlZlbmRvcjo6RGVmYXVsdDogcmVjb21tZW5kIHVzZSBiYXNlIGZvciBjaGlsZCBvYmplY3RzCisKKyBzY3JpcHRzL0Rwa2cvVmVuZG9yL0RlZmF1bHQucG0gfCAgICAzICstLQorIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgM2RmM2ZlNGNlMmNhMzZkNjc5MDUzYTdiNGY2NDE1Y2ZhZDI1ZGFlZAorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBTZXAgMjAgMTE6MTM6MTAgMjAwOSArMDIwMAorCisgICAgRHBrZzo6VmVuZG9yOjpVYnVudHU6IG1vdmUgTGF1bmNocGFkLUJ1Z3MtRml4ZWQgY3JlYXRpb24gaW4gYW5vdGhlciBob29rCisgICAgCisgICAgVGhlIGNyZWF0aW9uIG9mIHRoZSBMYXVuY2hwYWQtQnVncy1GaXhlZCBmaWVsZCBpcyBub3cgZG9uZQorICAgIGluIHBvc3QtcHJvY2Vzcy1jaGFuZ2Vsb2ctZW50cnkgaW5zdGVhZCBvZiBiZWZvcmUtY2hhbmdlcy1jcmVhdGlvbgorICAgIHNvIHRoYXQgaXQncyBhbHNvIG91dHB1dCBieSBkcGtnLXBhcnNlY2hhbmdlbG9nIGFuZCBub3Qgb25seQorICAgIGluIHRoZSAuY2hhbmdlcyBmaWxlLiBDbG9zZXM6ICM1MzYwNjYKKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgICAgIHwgICAgMiArKworIHNjcmlwdHMvRHBrZy9WZW5kb3IvVWJ1bnR1LnBtIHwgICAxNiArKysrKysrKysrLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAxMiBpbnNlcnRpb25zKCspLCA2IGRlbGV0aW9ucygtKQorCitjb21taXQgNmY3MjFlYWE4YjJjYWEyNmVjMWZjOTExNDc0MTkxZDg5YzZmM2NiMgorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBTZXAgMjAgMTA6MDI6MDYgMjAwOSArMDIwMAorCisgICAgRHBrZzo6VmVuZG9yOjpVYnVudHU6IHJlZ2lzdGVyIGN1c3RvbSBmaWVsZCBMYXVuY2hwYWQtQnVncy1GaXhlZAorCisgc2NyaXB0cy9EcGtnL1ZlbmRvci9VYnVudHUucG0gfCAgIDEwICsrKysrKysrKysKKyAxIGZpbGVzIGNoYW5nZWQsIDEwIGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA4OGEwYmFmZjU1ZTkyODY3OTU1MWZmNmM2OGJkYzg4ODRkNmZiZjYyCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIFNlcCAyMCAxMDo1OTowNSAyMDA5ICswMjAwCisKKyAgICBEcGtnOjpDaGFuZ2Vsb2c6IGFkZCBuZXcgdmVuZG9yIGhvb2sgcG9zdC1wcm9jZXNzLWNoYW5nZWxvZy1lbnRyeQorICAgIAorICAgIFRoaXMgaG9vayBpcyBtYWlubHkgbWVhbnQgdG8gZXh0cmFjdCBtb3JlIHN0cnVjdHVyZWQgaW5mb3JtYXRpb24KKyAgICBmcm9tIHRoZSByYXcgY2hhbmdlcyBpbmZvcm1hdGlvbi4KKworIHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG0gICAgICB8ICAgIDQgKysrKworIHNjcmlwdHMvRHBrZy9WZW5kb3IvRGVmYXVsdC5wbSB8ICAgIDkgKysrKysrKysrCisgMiBmaWxlcyBjaGFuZ2VkLCAxMyBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgNjMwNDRkYTBjN2Y2NzE3OWQ2ZTBjYjM0MzZmOTg3MjQ4YTQ0MTUyZQorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBTZXAgMjAgMTE6NDk6NTIgMjAwOSArMDIwMAorCisgICAgRHBrZzo6Q29udHJvbDo6RmllbGRzOiBkb24ndCBmYWlsIHdoZW4gdmVuZG9yIGhvb2sgaXMgbm90ICh3ZWxsKSBpbXBsZW1lbnRlZAorCisgc2NyaXB0cy9EcGtnL0NvbnRyb2wvRmllbGRzLnBtIHwgICAgMSArCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBkMjA4ODQ5ZDhjYWNkZmU5M2M0OTRmYzBlYjNkNDE3MTZkNjhlYzNkCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIFNlcCAyMCAwMzoyNjoxMyAyMDA5ICswMjAwCisKKyAgICBTcGxpdCBkZWZlcnJlZF9jb25maWd1cmUgY29uZmZpbGUgaGFuZGxpbmcgaW50byBpdHMgb3duIGZ1bmN0aW9uCisKKyBzcmMvY29uZmlndXJlLmMgfCAgMjg3ICsrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDE0OCBpbnNlcnRpb25zKCspLCAxMzkgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBkYWM1ZTMwNTU1MTkxMjAzMTI5ZTMwOWRiZWQ1ZTgyM2M5NTYyMGE2CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIFNlcCAxOCAxNTo0NTo1NyAyMDA5ICswMjAwCisKKyAgICBVc2UgdmFyYnVmIGluc3RlYWQgb2YgYWQtaG9jIGhhbmRsaW5nIG9mIGdyb3dpbmcgc3RyaW5ncworCisgZHBrZy1kZWIvaW5mby5jICAgfCAgIDIwICsrKysrKystLS0tLS0tLQorIGxpYi9kcGtnL2ZpZWxkcy5jIHwgICA2NyArKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAzNyBpbnNlcnRpb25zKCspLCA1MCBkZWxldGlvbnMoLSkKKworY29tbWl0IGRlMjMwYWIwNzMwZjAwYTRkMWFkZWZkYjA5MjMyYjQ2YTgzZjUyYWMKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgU2VwIDE3IDE3OjQ5OjIzIDIwMDkgKzAyMDAKKworICAgIEZpeCBzbWFsbCBsZWFrIHdoZW4gcGFyc2luZyDigJgtLWlnbm9yZS1kZXBlbmRz4oCZIG9wdGlvbiB2YWx1ZXMKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAxICsKKyBzcmMvbWFpbi5jICAgICAgIHwgICAgMiArKworIDIgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgMjUxMDA4ODQyYTQ2NDI2MTMzMzM4MWIyZDkyZTJhZTk4OTE5NzBlNgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBTZXAgMTYgMTM6MzU6MzkgMjAwOSArMDIwMAorCisgICAgZHBrZy1xdWVyeTogUmVtb3ZlIHVudXNlZCBmXyBhbmQgZmNfIHZhcmlhYmxlcworCisgc3JjL3F1ZXJ5LmMgfCAgICA3IC0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDAgaW5zZXJ0aW9ucygrKSwgNyBkZWxldGlvbnMoLSkKKworY29tbWl0IDc2ZmQ3NjVhMGVlMmFiZGQxODJkYjA4NWE2OWYyNjVhYzAzYjNmNjUKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgU2VwIDE5IDE5OjE0OjAxIDIwMDkgKzAyMDAKKworICAgIGRlYmlhbi9jaGFuZ2Vsb2c6IGRvY3VtZW50IHJlY2VudCBjaGFuZ2VzIGluIHBlcmwgQVBJCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgOSArKysrKysrKysKKyAxIGZpbGVzIGNoYW5nZWQsIDkgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IGEzMWI1ZTNiYTJhYmNjOWZkNjM3YWQ5M2VkNTg1ODdlODY4ZDMzYWUKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgU2VwIDE5IDE5OjAxOjIyIDIwMDkgKzAyMDAKKworICAgIGRwa2ctc2NhbnNvdXJjZXM6IHNpbXBsaWZ5IGJ5IHJlbHlpbmcgbW9yZSBvbiB0aGUgRHBrZzo6Q29udHJvbCBvYmplY3QKKworIHNjcmlwdHMvZHBrZy1zY2Fuc291cmNlcy5wbCB8ICAgMTYgKystLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAxNCBkZWxldGlvbnMoLSkKKworY29tbWl0IGJlYWIzMDU0NTI1M2YzOTk1MzE1NmFkOGRjNjJkNTgwNTNlN2Q4NDgKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgU2VwIDE5IDE4OjUwOjI5IDIwMDkgKzAyMDAKKworICAgIGRwa2ctc2NhbnBhY2thZ2VzOiBzaW1wbGlmeSBieSB1c2luZyB0aGUgRHBrZzo6Q29udHJvbCBvYmplY3QKKworIHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGwgfCAgIDUzICsrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMTUgaW5zZXJ0aW9ucygrKSwgMzggZGVsZXRpb25zKC0pCisKK2NvbW1pdCA3YWEzNTg1NWE3MmVhNTc0OTc3MTk3MTVkYjZhNWM4ZjkzYzQ2N2Q1CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IFNlcCAxOSAxNzo0Njo1MCAyMDA5ICswMjAwCisKKyAgICBSZWdpc3RlciBmaWVsZCBEbS1VcGxvYWQtQWxsb3dlZCBhcyBEZWJpYW4gc3BlY2lmaWMKKworIHNjcmlwdHMvRHBrZy9Db250cm9sL0ZpZWxkcy5wbSB8ICAgIDUgKy0tLS0KKyBzY3JpcHRzL0Rwa2cvVmVuZG9yL0RlYmlhbi5wbSAgfCAgIDEyICsrKysrKysrKy0tLQorIDIgZmlsZXMgY2hhbmdlZCwgMTAgaW5zZXJ0aW9ucygrKSwgNyBkZWxldGlvbnMoLSkKKworY29tbWl0IDc4MDY2NzY1YjY5ZjA2OGZkMWRiZWM0NGU1YTY0NGQ5Yzk3YjY0MzEKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgU2VwIDE5IDE1OjI5OjI4IDIwMDkgKzAyMDAKKworICAgIEFkZCB2ZW5kb3IgaG9vayB0byByZWdpc3RlciBjdXN0b20gZmllbGRzCisKKyBzY3JpcHRzL0Rwa2cvQ29udHJvbC9GaWVsZHMucG0gfCAgIDE1ICsrKysrKysrKysrKysrKworIHNjcmlwdHMvRHBrZy9WZW5kb3IucG0gICAgICAgICB8ICAgIDQgKystLQorIHNjcmlwdHMvRHBrZy9WZW5kb3IvRGVmYXVsdC5wbSB8ICAgMTMgKysrKysrKysrKysrKworIDMgZmlsZXMgY2hhbmdlZCwgMzAgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDQ3OTE5YzVlNTFmMTk4NjQ2YmViNGQ4MjNkNWQ5M2E4YjVhY2E5NzIKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgU2VwIDE3IDIyOjEzOjQwIDIwMDkgKzAyMDAKKworICAgIERyb3AgRHBrZzo6RmllbGRzIGFuZCBjb252ZXJ0IGV2ZXJ5dGhpbmcgdG8gRHBrZzo6Q29udHJvbDo6RmllbGRzCisKKyBzY3JpcHRzL0Rwa2cvRmllbGRzLnBtICAgICB8ICAgNDYgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBzY3JpcHRzL01ha2VmaWxlLmFtICAgICAgICB8ICAgIDEgLQorIHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsIHwgICAyNiArKysrKystLS0tLS0tLS0tLS0tLS0tLS0KKyBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbCB8ICAgMzggKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBzY3JpcHRzL2Rwa2ctc291cmNlLnBsICAgICB8ICAgMjcgKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLQorIHNjcmlwdHMvcG8vUE9URklMRVMuaW4gICAgIHwgICAgMSAtCisgNiBmaWxlcyBjaGFuZ2VkLCAyNiBpbnNlcnRpb25zKCspLCAxMTMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyOTNjNjU0MWMzMzRiNDIyMTM5ZmE0OGM0ZTEyMDcwZjZmMDk1ODY4CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IFNlcCAxNyAyMDoyODoxMSAyMDA5ICswMjAwCisKKyAgICBkcGtnLWdlbmNoYW5nZXMsIGRwa2ctZ2VuY29udHJvbDogZG8gbm90IGhhcmRjb2RlIHRoZSBmaWVsZCBvdXRwdXQgb3JkZXIKKyAgICAKKyAgICBUaGUgcmlnaHQgZmllbGQgb3V0cHV0IG9yZGVyIGlzIGF1dG9tYXRpY2FsbHkgc2V0IGJhc2VkIG9uIHRoZSB0eXBlCisgICAgb2YgdGhlIERwa2c6OkNvbnRyb2wgb2JqZWN0IHVzZWQuCisKKyBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbCB8ICAgIDYgLS0tLS0tCisgc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGwgfCAgICA4ICstLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDEzIGRlbGV0aW9ucygtKQorCitjb21taXQgMWQ4N2ViYTAxMmRhY2Q4YzJkMTQ0MWE4MDE3MDI4YzE4YWY1ZDQzYQorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBTZXAgMTUgMDE6MjA6MTQgMjAwOSArMDIwMAorCisgICAgR2V0IHJpZCBvZiBEcGtnOjpEZXBzIEBzcmNfZGVwX2ZpZWxkcyBAcGtnX2RlcF9maWVsZHMgYW5kICVkZXBfZmllbGRfdHlwZQorICAgIAorICAgIFVwZGF0ZSBhbGwgbW9kdWxlcyBhbmQgc2NyaXB0cyB0byBub3QgdXNlIHRob3NlIHZhcmlhYmxlcyBvZiBEcGtnOjpEZXBzCisgICAgYnV0IGluc3RlYWQgdGhlIHR3byBmdW5jdGlvbnMgZmllbGRfbGlzdF8ocGtnfHNyYylfZGVwKCkgb2YKKyAgICBEcGtnOjpDb250cm9sOjpGaWVsZHMuCisKKyBzY3JpcHRzL0Rwa2cvRGVwcy5wbSAgICAgICAgICAgfCAgIDQ5ICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHNjcmlwdHMvRHBrZy9GaWVsZHMucG0gICAgICAgICB8ICAgIDYgKystLQorIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbSB8ICAgMTAgLS0tLS0tLS0KKyBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbCAgICAgfCAgICA3ICsrKy0tCisgc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbCAgIHwgICAgNCArLQorIHNjcmlwdHMvZHBrZy1zY2Fuc291cmNlcy5wbCAgICB8ICAgIDQgKy0KKyBzY3JpcHRzL2Rwa2ctc291cmNlLnBsICAgICAgICAgfCAgICA0ICstCisgNyBmaWxlcyBjaGFuZ2VkLCAxNSBpbnNlcnRpb25zKCspLCA2OSBkZWxldGlvbnMoLSkKKworY29tbWl0IDBkMzllMzUxZWE5N2M1NTQxMjUyNjQwZjY0ZDhkMDlkZWQ2ZWMwNDUKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gU2VwIDE0IDIzOjQ2OjEwIDIwMDkgKzAyMDAKKworICAgIFJlcGxhY2Ugb2xkIGNhcGl0KCkgYnkgZmllbGRfY2FwaXRhbGl6ZSgpIGV2ZXJ5d2hlcmUKKyAgICAKKyAgICBjYXBpdCgpIGlzIHByb3ZpZGVkIGJ5IERwa2c6OkZpZWxkcyB3aGlsZSBmaWVsZF9jYXBpdGFsaXplKCkgaXMgcGFydAorICAgIG9mIHRoZSBuZXcgRHBrZzo6Q29udHJvbDo6RmllbGRzIEFQSS4KKworIHNjcmlwdHMvRHBrZy9Db250cm9sLnBtICAgICAgICAgICB8ICAgIDEgLQorIHNjcmlwdHMvRHBrZy9TaGxpYnMvU3ltYm9sRmlsZS5wbSB8ICAgIDQgKystLQorIHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsICAgICAgICB8ICAgIDIgKy0KKyBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsICAgICAgICAgfCAgICA0ICsrLS0KKyBzY3JpcHRzL2Rwa2ctc291cmNlLnBsICAgICAgICAgICAgfCAgICA1ICsrKy0tCisgNSBmaWxlcyBjaGFuZ2VkLCA4IGluc2VydGlvbnMoKyksIDggZGVsZXRpb25zKC0pCisKK2NvbW1pdCBjYTM5YjU3NDg4ZTJiMjQ1MzExODkyYmIzODUxMGM3MmQyOWY0ZGQwCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIFNlcCAxNSAwMToyNjoyMCAyMDA5ICswMjAwCisKKyAgICBEcGtnOjpDb250cm9sOiBkZWZpbmUgdGhlIGRlZmF1bHQgb3V0cHV0IG9yZGVyIGJhc2VkIG9uIHRoZSB0eXBlCisKKyBzY3JpcHRzL0Rwa2cvQ29udHJvbC5wbSB8ICAgIDIgKysKKyAxIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDNjNWI5NDgzNmE4NmM4ODg0YTk5YjcwY2Q5ODY3MjI0NGFkYjRjNzUKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgU2VwIDE3IDIyOjIwOjU1IDIwMDkgKzAyMDAKKworICAgIERwa2c6OkNvbnRyb2w6OkZpZWxkczogb2ZmaWNpYWwgbGlzdCBvZiBjb250cm9sIGZpZWxkcworICAgIAorICAgIFRoaXMgbmV3IG1vZHVsZSBwcm92aWRlcyBhbiBvZmZpY2lhbCBsaXN0IG9mIGNvbnRyb2wgZmllbGRzIGFzCisgICAgd2VsbCBhcyBtYW55IGZ1bmN0aW9ucyB0byBxdWVyeSB0aGF0IGxpc3QgYW5kIHRoZSBtZXRhLWluZm9ybWF0aW9uCisgICAgYXNzb2NpYXRlZCB0byBlYWNoIGxpc3QuCisKKyBzY3JpcHRzL0Rwa2cvQ29udHJvbC9GaWVsZHMucG0gfCAgNTY0ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKKyBzY3JpcHRzL01ha2VmaWxlLmFtICAgICAgICAgICAgfCAgICAxICsKKyBzY3JpcHRzL3BvL1BPVEZJTEVTLmluICAgICAgICAgfCAgICAxICsKKyAzIGZpbGVzIGNoYW5nZWQsIDU2NiBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgMjI2OTk4MTU5MjBiMWNiODU1MGUwNmRjZjJmZmUxNDQyYjBlZTg5MAorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBTZXAgMTMgMjE6MzI6MzAgMjAwOSArMDIwMAorCisgICAgRHJvcCB1bnVzZWQgY29kZSB0aGF0IGhhcyBiZWVuIG1lcmdlZCBpbiBEcGtnOjpDb250cm9sCisKKyBzY3JpcHRzL0Rwa2cvQ29udHJvbC5wbSB8ICAgODEgKy0tLS0tLS0tLS0tLS0tLS0tCisgc2NyaXB0cy9EcGtnL0ZpZWxkcy5wbSAgfCAgMjI0IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDMwNCBkZWxldGlvbnMoLSkKKworY29tbWl0IDZlYmM2YmYwMmUxODA3ZWM1NWMxZTdlMWM1MmY3MjQwYWNiM2YxZDIKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gU2VwIDEzIDIxOjMwOjE5IDIwMDkgKzAyMDAKKworICAgIFVzZSB0aGUgbmV3IERwa2c6OkNvbnRyb2wgaW50ZXJmYWNlIGV2ZXJ5d2hlcmUKKyAgICAKKyAgICBVcGRhdGUgYWxsIHNjcmlwdHMgYW5kIG1vZHVsZSB0byB1c2UgRHBrZzo6Q29udHJvbCBpbnN0ZWFkCisgICAgb2YgcGFyc2VjZGF0YSBhbmQgRHBrZzo6RmllbGRzOjpPYmplY3QuCisKKyBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtICAgICAgICB8ICAgMzQgKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLQorIHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRGViaWFuLnBtIHwgICAxMiArKysrKysrLS0tLS0KKyBzY3JpcHRzL0Rwa2cvQ29udHJvbC9JbmZvLnBtICAgICB8ICAgMjcgKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtICAgfCAgIDEzICsrKysrKy0tLS0tLS0KKyBzY3JpcHRzL0Rwa2cvVmVuZG9yLnBtICAgICAgICAgICB8ICAgIDUgKysrLS0KKyBzY3JpcHRzL0Rwa2cvVmVuZG9yL0RlZmF1bHQucG0gICB8ICAgIDIgKy0KKyBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbCAgICAgICB8ICAgMTMgKysrKysrKy0tLS0tLQorIHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsICAgICAgIHwgICAxMiArKysrKysrLS0tLS0KKyBzY3JpcHRzL2Rwa2ctbmFtZS5wbCAgICAgICAgICAgICB8ICAgIDQgKystLQorIHNjcmlwdHMvZHBrZy1wYXJzZWNoYW5nZWxvZy5wbCAgIHwgICAgMiArLQorIHNjcmlwdHMvZHBrZy1zY2Fuc291cmNlcy5wbCAgICAgIHwgICAxMyArKysrKystLS0tLS0tCisgc2NyaXB0cy90LzcwMF9EcGtnX0NvbnRyb2wudCAgICAgfCAgICAyICstCisgMTIgZmlsZXMgY2hhbmdlZCwgNzAgaW5zZXJ0aW9ucygrKSwgNjkgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBhOWU2MDM5MzY1OTc4MGE2ZDYwZDVmNjczZWFjZDNjYTNjNTExNTM2CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIFNlcCAxOCAyMzoyNTo0MiAyMDA5ICswMjAwCisKKyAgICBEcGtnOjpDb250cm9sOiBuZXcgb2JqZWN0IGludGVyZmFjZQorICAgIAorICAgIFRoZSBuZXcgb2JqZWN0IGludGVyZmFjZSBjb21iaW5lcyB0aGUgb2xkIERwa2c6OkZpZWxkczo6T2JqZWN0CisgICAgYW5kIHRoZSBvbGQgcGFyc2VjZGF0YSBmdW50aW9uLgorICAgIAorICAgIFRoZSBuZXcgb2JqZWN0IGNhbiBiZSB1c2VkIGxpa2UgYSByZWd1bGFyIGhhc2ggYW5kIHlldCBpdCBiZWhhdmVzCisgICAgaW50ZWxsaWdlbnRseSB0YWtpbmcgaW50byBhY2NvdW50IGFsbCB0aGUgc3BlY2lmaWNzIG9mIGNvbnRyb2wKKyAgICBpbmZvcm1hdGlvbi4gRmllbGRzIGFyZSBjYXNlLWluc2Vuc2l0aXZlLCB0aGUgb3JkZXIgaW4gd2hpY2ggdGhleSBoYXZlCisgICAgYmVlbiByZWFkIGlzIGtlcHQgZm9yIG91dHB1dCBzdGFiaWxpdHkuCisgICAgCisgICAgVGhlIG9iamVjdCB1c2VzIG9wZXJhdG9yIG92ZXJsb2FkaW5nIGFuZCBhbiBpbnRlcm5hbCB0aWVkIGhhc2ggc28gdGhhdAorICAgIGl0IGp1c3QgZG9lcyB3aGF0IHlvdSBtZWFuLgorCisgc2NyaXB0cy9EcGtnL0NvbnRyb2wucG0gICAgICAgfCAgMTY3ICsrKysrKysrKysrKysrLQorIHNjcmlwdHMvRHBrZy9Db250cm9sL0hhc2gucG0gIHwgIDQ2OSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKworIHNjcmlwdHMvRHBrZy9Db250cm9sL1R5cGVzLnBtIHwgICA0MiArKysrCisgc2NyaXB0cy9NYWtlZmlsZS5hbSAgICAgICAgICAgfCAgICAyICsKKyBzY3JpcHRzL3BvL1BPVEZJTEVTLmluICAgICAgICB8ICAgIDIgKworIDUgZmlsZXMgY2hhbmdlZCwgNjcyIGluc2VydGlvbnMoKyksIDEwIGRlbGV0aW9ucygtKQorCitjb21taXQgYjljODJhOWRiMjBkYzNhOTk1NTk4MmI3ZTU5MTc2OTlkNWU1MjAzOAorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBTZXAgMTMgMTU6MTU6NTMgMjAwOSArMDIwMAorCisgICAgUmVuYW1lIERwa2c6OkNkYXRhIGludG8gRHBrZzo6Q29udHJvbAorICAgIAorICAgIFVwZGF0ZSBhbGwgc2NyaXB0cyBhbmQgbW9kdWxlcyB0byB1c2UgdGhlIG5ldyBtb2R1bGUgbmFtZXMuCisKKyBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtICAgICAgICAgICAgIHwgICAgMiArLQorIHNjcmlwdHMvRHBrZy97Q2RhdGEucG0gPT4gQ29udHJvbC5wbX0gfCAgICA4ICsrKystLS0tCisgc2NyaXB0cy9EcGtnL0NvbnRyb2wvSW5mby5wbSAgICAgICAgICB8ICAgIDIgKy0KKyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG0gICAgICAgIHwgICAgMiArLQorIHNjcmlwdHMvRHBrZy9WZW5kb3IucG0gICAgICAgICAgICAgICAgfCAgICAyICstCisgc2NyaXB0cy9NYWtlZmlsZS5hbSAgICAgICAgICAgICAgICAgICB8ICAgIDIgKy0KKyBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbCAgICAgICAgICAgIHwgICAgMiArLQorIHNjcmlwdHMvZHBrZy1uYW1lLnBsICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgc2NyaXB0cy9kcGtnLXNjYW5zb3VyY2VzLnBsICAgICAgICAgICB8ICAgIDIgKy0KKyBzY3JpcHRzL3BvL1BPVEZJTEVTLmluICAgICAgICAgICAgICAgIHwgICAgMiArLQorIDEwIGZpbGVzIGNoYW5nZWQsIDEzIGluc2VydGlvbnMoKyksIDEzIGRlbGV0aW9ucygtKQorCitjb21taXQgZWQxODI4OTU2YTI0ZDQyOWE1YTQ4OGQ1NWU0YmY3N2VmNTJlZGU1YworQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBTZXAgMTMgMTQ6MjU6MTMgMjAwOSArMDIwMAorCisgICAgUmVuYW1lIERwa2c6OkNvbnRyb2wgaW4gRHBrZzo6Q29udHJvbDo6SW5mbworICAgIAorICAgIFVwZGF0ZSBhbGwgc2NyaXB0cyBhbmQgbW9kdWxlcyB0byB1c2UgdGhlIG5ldyBtb2R1bGUgbmFtZXMuCisKKyBzY3JpcHRzL0Rwa2cve0NvbnRyb2wucG0gPT4gQ29udHJvbC9JbmZvLnBtfSB8ICAgIDggKysrKy0tLS0KKyBzY3JpcHRzL01ha2VmaWxlLmFtICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDIgKy0KKyBzY3JpcHRzL2Rwa2ctY2hlY2tidWlsZGRlcHMucGwgICAgICAgICAgICAgICB8ICAgIDQgKystLQorIHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsICAgICAgICAgICAgICAgICAgIHwgICAgNCArKy0tCisgc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGwgICAgICAgICAgICAgICAgICAgfCAgICA0ICsrLS0KKyBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbCAgICAgICAgICAgICAgICAgICB8ICAgIDQgKystLQorIHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGwgICAgICAgICAgICAgICAgICAgIHwgICAgNCArKy0tCisgc2NyaXB0cy9kcGtnLXNvdXJjZS5wbCAgICAgICAgICAgICAgICAgICAgICAgfCAgICA0ICsrLS0KKyBzY3JpcHRzL3BvL1BPVEZJTEVTLmluICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDIgKy0KKyBzY3JpcHRzL3QvNzAwX0Rwa2dfQ29udHJvbC50ICAgICAgICAgICAgICAgICB8ICAgIDQgKystLQorIDEwIGZpbGVzIGNoYW5nZWQsIDIwIGluc2VydGlvbnMoKyksIDIwIGRlbGV0aW9ucygtKQorCitjb21taXQgZTYyODk1MGM0YWZmZTUxYmY1MWU2YWY2Zjc2ODI3YzQ2NWVmYzhlOAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBTZXAgMTUgMTk6MTY6MzggMjAwOSArMDIwMAorCisgICAgTWFrZSB0aGUgYnVpbGQgc2lsZW50IGJ5IGRlZmF1bHQKKyAgICAKKyAgICBNYWtlIGl0IHZlcmJvc2Ugd2hlbiBidWlsZGluZyB0aGUgRGViaWFuIHBhY2thZ2VzLgorCisgY29uZmlndXJlLmFjICAgICAgICAgICB8ICAgIDIgKysKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgIHwgICAgMiArKworIGRlYmlhbi9ydWxlcyAgICAgICAgICAgfCAgICAxICsKKyBkcGtnLXNwbGl0L01ha2VmaWxlLmFtIHwgICAgNCArKy0tCisgZHNlbGVjdC9NYWtlZmlsZS5hbSAgICB8ICAgIDIgKy0KKyBtYW4vTWFrZWZpbGUuYW0gICAgICAgIHwgICAxOCArKysrKysrKysrKysrLS0tLS0KKyBzY3JpcHRzL01ha2VmaWxlLmFtICAgIHwgICAgNSArKystLQorIDcgZmlsZXMgY2hhbmdlZCwgMjQgaW5zZXJ0aW9ucygrKSwgMTAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAzY2E0MWUyYWU4NTFmMDEyYTI4OTE0ZWJiNzllYjQ3MjgzNGUyZDcyCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIFNlcCAxNSAxNDoxMzo1NCAyMDA5ICswMjAwCisKKyAgICBNb3ZlIExJU1RGSUxFIG1hY3JvIGZyb20gbGliZHBrZyB0byBkcGtnCisgICAgCisgICAgVGhpcyBpcyBhIHByaXZhdGUgbWFjcm8sIGludGVybmFsIHRvIHRoZSBmaWxlIGRhdGFiYXNlIGhhbmRsaW5nIGNvZGUsCisgICAgY3VycmVudGx5IGluIGRwa2cgb25seS4KKworIGxpYi9kcGtnL2Rwa2cuaCB8ICAgIDEgLQorIHNyYy9maWxlc2RiLmggICB8ICAgIDIgKysKKyAyIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGMzNTFmNzIyNDRmYjdhMGYwZjI3NjRmY2MzOGI4NzNhN2Q5OTE2NmEKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgU2VwIDE1IDE0OjExOjM2IDIwMDkgKzAyMDAKKworICAgIE1vdmUgUEFSVFNESVIgbWFjcm8gZnJvbSBsaWJkcGtnIHRvIGRwa2ctc3BsaXQKKyAgICAKKyAgICBUaGlzIGlzIGEgcHJpdmF0ZSBtYWNybywgaW50ZXJuYWwgdG8gZHBrZy1zcGxpdC4KKworIGRwa2ctc3BsaXQvZHBrZy1zcGxpdC5oIHwgICAgMiArKworIGxpYi9kcGtnL2Rwa2cuaCAgICAgICAgIHwgICAgMSAtCisgMiBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAxYThjZGEyMDhkMmE1MTViYzI4ZTI3MDg1ZjU0YjZlMWVhYmMzZTMyCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIFNlcCAxNCAyMTo1Njo0NSAyMDA5ICswMjAwCisKKyAgICBTd2l0Y2ggYWQtaG9jIGNvZGUgdG8gdXNlIHN0cnVjdCBwa2dfbGlzdCBkYXRhIHR5cGUKKyAgICAKKyAgICBGcmVlIHRoZSB0cmlnX2F3YWl0ZWRfcGVuZF9oZWFkIGxpc3Qgbm93IHRoYXQgaXQgaXMgYSBwa2dfbGlzdCBhbmQKKyAgICBpdCBzd2l0Y2hlZCBmcm9tIGJlaW5nIGFsbG9jYXRlZCB3aXRoIG1fbWFsbG9jIGluc3RlYWQgb2YgbmZtYWxsb2MuCisKKyBsaWIvZHBrZy90cmlnbGliLmMgfCAgIDE0ICsrKystLS0tLS0tLS0tCisgc3JjL2hlbHAuYyAgICAgICAgIHwgICAgMiArLQorIHNyYy9tYWluLmMgICAgICAgICB8ICAgMTAgKysrKy0tLS0tLQorIHNyYy9tYWluLmggICAgICAgICB8ICAgMTcgKysrKysrKy0tLS0tLS0tLS0KKyBzcmMvcGFja2FnZXMuYyAgICAgfCAgIDE2ICsrKysrKysrLS0tLS0tLS0KKyBzcmMvdHJpZ3Byb2MuYyAgICAgfCAgICAyICstCisgNiBmaWxlcyBjaGFuZ2VkLCAyNSBpbnNlcnRpb25zKCspLCAzNiBkZWxldGlvbnMoLSkKKworY29tbWl0IGZlZDBiODAyYjIxZjIxNDA4YWU5N2FjM2RlMWYzMWM5ZjdlNmQwMWMKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gU2VwIDE0IDIxOjUyOjQxIDIwMDkgKzAyMDAKKworICAgIGxpYmRwa2c6IENyZWF0ZSBhIG5ldyBwa2dfbGlzdCBzdHJ1Y3R1cmUgYW5kIGZ1bmN0aW9ucworICAgIAorICAgIEEgbmV3IGZ1bmN0aW9ucyB0byBjb25zdHJ1Y3QgYW5kIGZyZWUgYSBsaXN0IGFuZCBwcmVwZW5kIHRvIGEgbGlzdC4KKworIGxpYi9kcGtnL01ha2VmaWxlLmFtIHwgICAgMSArCisgbGliL2Rwa2cvcGtnLWxpc3QuYyAgfCAgIDYxICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCisgbGliL2Rwa2cvcGtnLWxpc3QuaCAgfCAgIDQzICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCisgMyBmaWxlcyBjaGFuZ2VkLCAxMDUgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDhiNzNkZTU1MTUxNjc3NDQ0Y2ZjNDc0NWU1MDFiOGRkMDk5MjM3NGQKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgU2VwIDUgMDU6MjY6NTggMjAwOSArMDIwMAorCisgICAgTW92ZSBwa2ctYXJyYXkgdG8gbGliZHBrZworCisgbGliL2Rwa2cvTWFrZWZpbGUuYW0gICAgICAgICAgfCAgICAxICsKKyB7c3JjID0+IGxpYi9kcGtnfS9wa2ctYXJyYXkuYyB8ICAgIDMgKy0tCisge3NyYyA9PiBsaWIvZHBrZ30vcGtnLWFycmF5LmggfCAgICA0ICsrKysKKyBzcmMvTWFrZWZpbGUuYW0gICAgICAgICAgICAgICB8ICAgIDIgLS0KKyBzcmMvcXVlcnkuYyAgICAgICAgICAgICAgICAgICB8ICAgIDIgKy0KKyBzcmMvc2VsZWN0LmMgICAgICAgICAgICAgICAgICB8ICAgIDIgKy0KKyA2IGZpbGVzIGNoYW5nZWQsIDggaW5zZXJ0aW9ucygrKSwgNiBkZWxldGlvbnMoLSkKKworY29tbWl0IDYyNTdkODY0ZDZiYzFjNGVjM2JlYTI0NzE3OGE3ODY3OWEzNmYzNjUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgU2VwIDExIDE0OjQ5OjI0IDIwMDkgKzAyMDAKKworICAgIGRwa2ctZGViOiBDaGVjayBhbmQgd2FybiBvbiBkdXBsaWNhdGUgY29uZmZpbGVzCisgICAgCisgICAgQ2xvc2VzOiAjMTMxNjMzCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMSArCisgZHBrZy1kZWIvYnVpbGQuYyB8ICAgMjcgKysrKysrKysrKysrKysrKysrKysrKysrKysrCisgMiBmaWxlcyBjaGFuZ2VkLCAyOCBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgNTI1NTdkYzYzMzNlZGZlMTIwNmQ5ZGNhMzk2MWUwNTA5NTAxYmJmYgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBTZXAgMTEgMTQ6NDc6MzYgMjAwOSArMDIwMAorCisgICAgZHBrZy1kZWI6IFJlZmFjdG9yIGZpbGUgaW5mbyBzdHJ1Y3R1cmUgY3JlYXRpb24gaW50byBhIG5ldyBmdW5jdGlvbgorCisgZHBrZy1kZWIvYnVpbGQuYyB8ICAgMTcgKysrKysrKysrKysrKystLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDE0IGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBkZjFiMWJhN2QxNmQ0ZDhjYWEyNzMzYjFkNWMxYjk2OGNjZDg3NjFhCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIFNlcCAxMSAxNToxMTo1NCAyMDA5ICswMjAwCisKKyAgICBkcGtnLWRlYjogUmVuYW1lIF9maW5mbyBzdHJ1Y3QgdG8gZmlsZV9pbmZvCisgICAgCisgICAgRG8gbm90IHVzZSBsZWFkaW5nIHVuZGVyc2NvcmVzIGluIGlkZW50aWZpZXJzLgorCisgZHBrZy1kZWIvYnVpbGQuYyB8ICAgMzkgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyNCBpbnNlcnRpb25zKCspLCAxNSBkZWxldGlvbnMoLSkKKworY29tbWl0IGFjMjg3NDA3NWVmYmRiOGQ1NTE2YTA0NGIzZWExNDk5M2I3MTJjMGUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgU2VwIDE1IDE4OjUxOjM3IDIwMDkgKzAyMDAKKworICAgIGRwa2ctZGViOiBQYXNzIGxhc3QgdGhlIG5vZGUgdG8gYWRkIHRvIGFkZF90b19maWxpc3QKKworIGRwa2ctZGViL2J1aWxkLmMgfCAgICA2ICsrKystLQorIDEgZmlsZXMgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgZDVmMDk2YzRjNzA4ZDZkYWE3YWMyMzEyOGNhZjc4Y2E4NTA5YTJmNAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBTZXAgMTAgMDM6MTI6MzAgMjAwOSArMDIwMAorCisgICAgZHBrZzogVXBkYXRlIGxpc3Qgb2YgYmluYXJpZXMgdG8gY2hlY2sgb24gUEFUSAorICAgIAorICAgIFJlbW92ZSBpbnN0YWxsLWluZm8gd2hpY2ggaXMgbm93IGEgd3JhcHBlciBhbmQgd2lsbCBkaXNhcHBlYXIgc29vbmlzaC4KKyAgICBBZGQgcHJvZ3JhbXMgdXNlZCBieSBkcGtnIGl0c2VsZjogc2gsIHJtLCBmaW5kLCB0YXIgYW5kIGRwa2ctZGViLgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDMgKysrCisgc3JjL2hlbHAuYyAgICAgICB8ICAgIDkgKysrKysrKy0tCisgMiBmaWxlcyBjaGFuZ2VkLCAxMCBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgMDI1MTkxYjBkNzY5NzJlNzFlOTIwYjU3NDdiMjAyMjg3NDcwODE1ZAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBTZXAgMTAgMDM6Mjc6MzYgMjAwOSArMDIwMAorCisgICAgZHBrZzogVXNlIHNlY3VyZV91bmxpbmsgaW5zdGVhZCBvZiBhZC1ob2MgY29kZQorCisgc3JjL3JlbW92ZS5jIHwgICAxOSArKy0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDE3IGRlbGV0aW9ucygtKQorCitjb21taXQgOTE2NjM5M2QzMjhmMmZlM2UxOTYxY2EyMjc1ZDVkMzlkOGVlZDZiNAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBTZXAgMTUgMTc6MjE6NDcgMjAwOSArMDIwMAorCisgICAgSW1wcm92ZSBzZWN1cmVfdW5saW5rIGNvbW1lbnQgYW5kIG1vdmUgaXQgb3V0c2lkZSB0aGUgZnVuY3Rpb24KKworIHNyYy9oZWxwLmMgfCAgIDEyICsrKysrKysrKy0tLQorIDEgZmlsZXMgY2hhbmdlZCwgOSBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQorCitjb21taXQgNGU4NDE3MTJlOWVjNGVmZjM4MDA4ZWYyMjc0N2IzODEwMDEyMTE2ZAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBTZXAgOSAxODowNjo0MSAyMDA5ICswMjAwCisKKyAgICBSZW5hbWUgY2htb2RzYWZlX3VubGluayBmdW5jdGlvbnMgdG8gc2VjdXJlX3VubGluaworCisgc3JjL2hlbHAuYyAgICAgICB8ICAgIDggKysrKy0tLS0KKyBzcmMvbWFpbi5oICAgICAgIHwgICAgNCArKy0tCisgc3JjL3Byb2Nlc3NhcmMuYyB8ICAgIDIgKy0KKyAzIGZpbGVzIGNoYW5nZWQsIDcgaW5zZXJ0aW9ucygrKSwgNyBkZWxldGlvbnMoLSkKKworY29tbWl0IDEwOWYyMTVmMDM0MjU2ODI5OTdiMzIxMGQ5YjU4N2E3OWFjYTFmNmEKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgU2VwIDkgMTc6NTA6MTQgMjAwOSArMDIwMAorCisgICAgT25seSB1c2UgZXJybm8gZm9yIGVycm9yIHJlYXNvbiB3aGVuIHNlY3VyZWx5IHJlbW92aW5nIGEgZmlsZQorICAgIAorICAgIFRoZXJlJ3Mgbm8gcG9pbnQgaW4gc2V0dGluZyBhbiBlcnJvciBzdHJpbmcsIGl0IGNvbXBsaWNhdGVzIHRoZSBjb2RlCisgICAgbmVlZGxlc3NseSBhbmQgdGhlIHJlYXNvbiBpcyBpbiBlcnJubyBhbnl3YXkuCisKKyBzcmMvaGVscC5jICAgICAgIHwgICAzMiArKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLQorIHNyYy9tYWluLmggICAgICAgfCAgICA1ICsrLS0tCisgc3JjL3Byb2Nlc3NhcmMuYyB8ICAgMTEgKysrKy0tLS0tLS0KKyAzIGZpbGVzIGNoYW5nZWQsIDIxIGluc2VydGlvbnMoKyksIDI3IGRlbGV0aW9ucygtKQorCitjb21taXQgMzc4NzM3ZDAzNmZhZjIzYmZhN2RkZjAyNWY0NzgwOTk5MDZiMzhhZAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBTZXAgMTUgMTI6NTc6MDIgMjAwOSArMDIwMAorCisgICAgVXNlIGNoYXJhY3RlciBhcnJheXMgaW5zdGVhZCBvZiBwb2ludGVycyBmb3IgY29uc3RhbnQgc3RyaW5ncworCisgZHBrZy1kZWIvYnVpbGQuYyAgICAgfCAgICAyICstCisgbGliL2Rwa2cvcGFyc2VoZWxwLmMgfCAgICAyICstCisgc3JjL2NvbmZpZ3VyZS5jICAgICAgfCAgICAyICstCisgMyBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA2ZWFjNDVhMWZhMDk1YjM4NDZhODgyMzE3NTEzODEzODFiYWMyNzI2CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIFNlcCAxMyAxNTozMzo1MyAyMDA5ICswMjAwCisKKyAgICBVcGRhdGUgU3RhbmRhcmRzLVZlcnNpb24gdG8gMy44LjMgKG5vIGNoYW5nZXMgbmVlZGVkKS4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAxICsKKyBkZWJpYW4vY29udHJvbCAgIHwgICAgMiArLQorIDIgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgODMyNjgzNWE1MzgyMzA0NmU3MmYxYWM3YzYwZTkyYTkyZWEwNDAyYQorQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBTZXAgMTMgMTU6Mjg6MzIgMjAwOSArMDIwMAorCisgICAgQWRkIGRlYi1leHRyYS1vdmVycmlkZSg1KSB0byBkcGtnLWRldgorICAgIAorICAgIEl0cyBhZGRpdGlvbiBoYXMgYmVlbiBmb3Jnb3R0ZW4gaW4KKyAgICAyMjA0OWUxNWM5Yjg0NGYzZWJlZjQ4MGRmZWJjNTg4ZmJkNWEzMDFlLgorCisgZGViaWFuL2Rwa2ctZGV2Lmluc3RhbGwgfCAgICAxICsKKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDNjYmIyNTYxYmE5ODY1ZmUwODg0MTA3ODlkYjM3ZDUwNzY2OWY1MDcKK0F1dGhvcjogTWlyb3NsYXYgS3VyZSA8a3VyZW1AZGViaWFuLmN6PgorRGF0ZTogICBGcmkgU2VwIDExIDIxOjI4OjUzIDIwMDkgKzAyMDAKKworICAgIEN6ZWNoIHRyYW5zbGF0aW9uIHVwZGF0ZQorICAgIAorICAgIGRwa2c6IDk3OHQKKyAgICBkc2VsZWN0OiAyODB0CisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMiArCisgZHNlbGVjdC9wby9jcy5wbyB8ICAgIDcgKystLS0KKyBwby9jcy5wbyAgICAgICAgIHwgICA3NyArKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDMgZmlsZXMgY2hhbmdlZCwgNDQgaW5zZXJ0aW9ucygrKSwgNDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA4NzI3ODY0YjEwYzI2YjUwNGJiZmYwYjgzYWEzMTgwY2E3M2IyZDdmCitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIFNlcCA5IDEwOjM0OjAxIDIwMDkgKzAyMDAKKworICAgIEZpeCBiYWQgYnVnIG51bWJlcgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDIgKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDQyYzcyMDRmNzE3YmRkMDQ0NDFjMDNlZDQ3NWM1NTIyOTcxZDkzMjIKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgU2VwIDkgMDk6MjM6NDggMjAwOSArMDIwMAorCisgICAgQWRkIHZlcnNpb25lZCBkZXBlbmRlbmN5IG9uIGJhc2UtZmlsZXMgKD49IDUuMC4wKSB0byBkcGtnLWRldgorICAgIAorICAgIFdlIHdhbnQgdG8gZW5zdXJlIHRoYXQgL2V0Yy9kcGtnL29yaWdpbnMvZGVmYXVsdCBleGlzdHMgYXMgaXQncyB1c2VkCisgICAgYnkgZHBrZy1zb3VyY2UgdG8ga25vdyB3aGF0IGtleXJpbmdzIHNob3VsZCBiZSB1c2VkIGZvciB0aGUgc2lnbmF0dXJlCisgICAgY2hlY2suCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgNCArKysrCisgZGViaWFuL2NvbnRyb2wgICB8ICAgIDIgKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDUgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGE5Mjk0YTI4ZGUzYmE4Y2M5NDYzOWZiYWRlNzk3YzgzYWMwNjQ2YmIKK0F1dGhvcjogQ2hyaXN0aWFuIFBlcnJpZXIgPGJ1YnVsbGVAZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIFNlcCA4IDA3OjE0OjI2IDIwMDkgKzAyMDAKKworICAgIEZpeCBlcnJvciBpbiBGcmVuY2ggbWFucGFnZXMgdHJhbnNsYXRpb24KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAzICsrKworIG1hbi9wby9mci5wbyAgICAgfCAgICAyICstCisgMiBmaWxlcyBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAzZjg3NmQwZWUwNTNjMjdhYTUwNzk2ZGU2MWQxZmYzMDMzOTNhZWJhCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIFNlcCA4IDA4OjE2OjQ0IDIwMDkgKzAyMDAKKworICAgIEFkZCBhZGRpdGlvbmFsIGJ1ZyBjbG9zdXJlcworCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDIgKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDM2OGIzOTM0YmJmMWQxMDZlODQ0OGI4NTg3NjU3MjkyYzI0ZGE3NzcKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgU2VwIDggMDc6MTk6NTkgMjAwOSArMDIwMAorCisgICAgZHBrZzogUmVtb3ZlIG9ic29sZXRlIGNvbmZmaWxlcyBvbiBwdXJnZQorICAgIAorICAgIENsb3NlczogIzQ1NDYyOAorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDMgKysrCisgc3JjL3JlbW92ZS5jICAgICB8ICAgIDEgLQorIDIgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgZDdjM2Q3ZmY4MTlkMDEwMDk0ZWM2NjVjYjg4NTJjOTAxMWUzMDM2ZgorQXV0aG9yOiBTdmVuIEpvYWNoaW0gPHN2ZW5qb2FjQGdteC5kZT4KK0RhdGU6ICAgTW9uIFNlcCA3IDEyOjMzOjI4IDIwMDkgKzAyMDAKKworICAgIEdlcm1hbiBkcGtnIHRyYW5zbGF0aW9uIHVwZGF0ZQorICAgIAorICAgIFVwZGF0ZSB0byA5NzF0N2YuCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMyArKworIHBvL2RlLnBvICAgICAgICAgfCAgIDU1ICsrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAyNiBpbnNlcnRpb25zKCspLCAzMiBkZWxldGlvbnMoLSkKKworY29tbWl0IGJiZDBmZmQ1OTg3NTAyZmExYWZiMmU5YTVlMjk0NjI4YzMyZTE2MWYKK0F1dGhvcjogU3ZlbiBKb2FjaGltIDxzdmVuam9hY0BnbXguZGU+CitEYXRlOiAgIE1vbiBTZXAgNyAxMTowMDoyNCAyMDA5ICswMjAwCisKKyAgICBHZXJtYW4gZHNlbGVjdCB0cmFuc2xhdGlvbiB1cGRhdGUKKyAgICAKKyAgICBVcGRhdGUgdG8gMjgwdC4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICA1ICsrKystCisgZHNlbGVjdC9wby9kZS5wbyB8ICAgMjEgKysrKy0tLS0tLS0tLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCA4IGluc2VydGlvbnMoKyksIDE4IGRlbGV0aW9ucygtKQorCitjb21taXQgNDc4YjAwYjNmNWUzMjBiODBlYzRmMjE4NWMzNzA0NjFiNzhiNjE0YgorQXV0aG9yOiBIZWxnZSBLcmV1dHptYW5uIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KK0RhdGU6ICAgU3VuIFNlcCA2IDE1OjQ2OjQyIDIwMDkgKzAyMDAKKworICAgIFVwZGF0ZSBHZXJtYW4gdHJhbnNsYXRpb24gb2YgbWFudWFsIHBhZ2VzCisgICAgCisgICAgVXBkYXRlIHRvIDE2NDF0MGYxdS4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICA1ICsrKy0KKyBtYW4vcG8vZGUucG8gICAgIHwgICA2NCArKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgMjkgaW5zZXJ0aW9ucygrKSwgNDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA4ZTI0MjkyOTIxMjhkNjlmZTAyZWNiMzMxZmRjYmFjN2M1NGUyZjBmCitBdXRob3I6IEhlbGdlIEtyZXV0em1hbm4gPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorRGF0ZTogICBTdW4gU2VwIDYgMTU6MTY6NDIgMjAwOSArMDIwMAorCisgICAgVXBkYXRlIEdlcm1hbiBzY3JpcHRzIHRyYW5zbGF0aW9uCisgICAgCisgICAgVXBkYXRlIHRvIDQ2N3QuCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMyArKy0KKyBzY3JpcHRzL3BvL2RlLnBvIHwgICAgNiArKystLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDUgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKKworY29tbWl0IGQ2MDA1ZGYzYzAxYmMyNzkzNmU0M2Q4ZjY3ODVjYTU1OTUyNDc3MGMKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gU2VwIDYgMDk6NDk6MjQgMjAwOSArMDIwMAorCisgICAgQnVtcCB2ZXJzaW9uIHRvIDEuMTUuNQorCisgY29uZmlndXJlLmFjICAgICB8ICAgIDIgKy0KKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgNiArKysrKysKKyAyIGZpbGVzIGNoYW5nZWQsIDcgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDllYjMxOWE1N2JmZmEyOGY3N2VjNmI3ZWVmN2ZmNWM2OGUyMzA0ZTUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gU2VwIDYgMDk6MTg6MzkgMjAwOSArMDIwMAorCisgICAgUmVsZWFzZSAxLjE1LjQKKworIGNvbmZpZ3VyZS5hYyAgICAgfCAgICAyICstCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDQgKystLQorIDIgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQorCitjb21taXQgODc4NTE2ZDEzNTI3MjU3YWQzNzI5ODk3NDljM2E3ZDhlNDE4NTVkZgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBTZXAgNiAwOTowODo1NCAyMDA5ICswMjAwCisKKyAgICBSZWdlbmVyYXRlIC5wb3QgZmlsZXMgYW5kIG1lcmdlIC5wbyBmaWxlcyB3aXRoIHRoZW0KKworIGRzZWxlY3QvcG8vYnMucG8gICAgICAgIHwgIDE0NCArLQorIGRzZWxlY3QvcG8vY2EucG8gICAgICAgIHwgIDE0NSArLQorIGRzZWxlY3QvcG8vY3MucG8gICAgICAgIHwgIDE0NSArLQorIGRzZWxlY3QvcG8vZGEucG8gICAgICAgIHwgIDE0NSArLQorIGRzZWxlY3QvcG8vZGUucG8gICAgICAgIHwgIDE0NSArLQorIGRzZWxlY3QvcG8vZHNlbGVjdC5wb3QgIHwgIDE0NCArLQorIGRzZWxlY3QvcG8vZWwucG8gICAgICAgIHwgIDE0NSArLQorIGRzZWxlY3QvcG8vZXMucG8gICAgICAgIHwgIDE0NSArLQorIGRzZWxlY3QvcG8vZXQucG8gICAgICAgIHwgIDE0NSArLQorIGRzZWxlY3QvcG8vZXUucG8gICAgICAgIHwgIDE0NSArLQorIGRzZWxlY3QvcG8vZnIucG8gICAgICAgIHwgIDE0NSArLQorIGRzZWxlY3QvcG8vZ2wucG8gICAgICAgIHwgIDE0NSArLQorIGRzZWxlY3QvcG8vaHUucG8gICAgICAgIHwgIDE0NCArLQorIGRzZWxlY3QvcG8vaWQucG8gICAgICAgIHwgIDE0NSArLQorIGRzZWxlY3QvcG8vaXQucG8gICAgICAgIHwgIDE0NSArLQorIGRzZWxlY3QvcG8vamEucG8gICAgICAgIHwgIDE0NSArLQorIGRzZWxlY3QvcG8va28ucG8gICAgICAgIHwgIDE0NSArLQorIGRzZWxlY3QvcG8vbmIucG8gICAgICAgIHwgIDE0NSArLQorIGRzZWxlY3QvcG8vbmwucG8gICAgICAgIHwgIDE0NSArLQorIGRzZWxlY3QvcG8vbm4ucG8gICAgICAgIHwgIDE0NSArLQorIGRzZWxlY3QvcG8vcGwucG8gICAgICAgIHwgIDE0NSArLQorIGRzZWxlY3QvcG8vcHQucG8gICAgICAgIHwgIDE0NSArLQorIGRzZWxlY3QvcG8vcHRfQlIucG8gICAgIHwgIDE0NSArLQorIGRzZWxlY3QvcG8vcm8ucG8gICAgICAgIHwgIDE0NSArLQorIGRzZWxlY3QvcG8vcnUucG8gICAgICAgIHwgIDE0NSArLQorIGRzZWxlY3QvcG8vc2sucG8gICAgICAgIHwgIDE0NSArLQorIGRzZWxlY3QvcG8vc3YucG8gICAgICAgIHwgIDE0NSArLQorIGRzZWxlY3QvcG8vdGwucG8gICAgICAgIHwgIDE0NSArLQorIGRzZWxlY3QvcG8vdmkucG8gICAgICAgIHwgIDE0NSArLQorIGRzZWxlY3QvcG8vemhfQ04ucG8gICAgIHwgIDE0NSArLQorIGRzZWxlY3QvcG8vemhfVFcucG8gICAgIHwgIDE0NSArLQorIG1hbi9wby9kZS5wbyAgICAgICAgICAgIHwgMzg4OSArKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIG1hbi9wby9kcGtnLW1hbi5wb3QgICAgIHwgMzQ4MyArKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tCisgbWFuL3BvL2VzLnBvICAgICAgICAgICAgfCAzODE2ICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgbWFuL3BvL2ZyLnBvICAgICAgICAgICAgfCA0MTAyICsrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgbWFuL3BvL2h1LnBvICAgICAgICAgICAgfCAzODE3ICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgbWFuL3BvL2phLnBvICAgICAgICAgICAgfCAzODM2ICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgbWFuL3BvL3BsLnBvICAgICAgICAgICAgfCAzODg2ICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgbWFuL3BvL3B0X0JSLnBvICAgICAgICAgfCAzODEwICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgbWFuL3BvL3J1LnBvICAgICAgICAgICAgfCAzODEzICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgbWFuL3BvL3N2LnBvICAgICAgICAgICAgfCAzOTA3ICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2FzdC5wbyAgICAgICAgICAgICAgIHwgMjE2NiArKysrKysrKysrKysrLS0tLS0tLS0tLS0tLQorIHBvL2JzLnBvICAgICAgICAgICAgICAgIHwgMTkwMCArKysrKysrKysrLS0tLS0tLS0tLS0tCisgcG8vY2EucG8gICAgICAgICAgICAgICAgfCAyMjA5ICsrKysrKysrKysrKystLS0tLS0tLS0tLS0tCisgcG8vY3MucG8gICAgICAgICAgICAgICAgfCAyMTY3ICsrKysrKysrKysrKystLS0tLS0tLS0tLS0tCisgcG8vZGEucG8gICAgICAgICAgICAgICAgfCAyMTczICsrKysrKysrKysrKystLS0tLS0tLS0tLS0tCisgcG8vZGUucG8gICAgICAgICAgICAgICAgfCAxMTI2ICsrKysrKystLS0tLS0tCisgcG8vZHBrZy5wb3QgICAgICAgICAgICAgfCAxODk2ICsrKysrKysrKystLS0tLS0tLS0tLS0KKyBwby9kei5wbyAgICAgICAgICAgICAgICB8IDIxNzMgKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0KKyBwby9lbC5wbyAgICAgICAgICAgICAgICB8IDIxOTEgKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0KKyBwby9lby5wbyAgICAgICAgICAgICAgICB8IDIxNjUgKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0KKyBwby9lcy5wbyAgICAgICAgICAgICAgICB8IDIyMDQgKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0KKyBwby9ldC5wbyAgICAgICAgICAgICAgICB8IDIwMzkgKysrKysrKysrKystLS0tLS0tLS0tLS0KKyBwby9ldS5wbyAgICAgICAgICAgICAgICB8IDIxNjQgKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0KKyBwby9mci5wbyAgICAgICAgICAgICAgICB8IDIyNDAgKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0KKyBwby9nbC5wbyAgICAgICAgICAgICAgICB8IDIxNzIgKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0KKyBwby9odS5wbyAgICAgICAgICAgICAgICB8IDIxNjQgKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0KKyBwby9pZC5wbyAgICAgICAgICAgICAgICB8IDIwMTggKysrKysrKysrKystLS0tLS0tLS0tLS0KKyBwby9pdC5wbyAgICAgICAgICAgICAgICB8IDIxOTAgKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0KKyBwby9qYS5wbyAgICAgICAgICAgICAgICB8IDIxNzUgKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0KKyBwby9rbS5wbyAgICAgICAgICAgICAgICB8IDIxNTIgKysrKysrKysrKysrLS0tLS0tLS0tLS0tLQorIHBvL2tvLnBvICAgICAgICAgICAgICAgIHwgMjE1NyArKysrKysrKysrKystLS0tLS0tLS0tLS0tCisgcG8va3UucG8gICAgICAgICAgICAgICAgfCAxOTA3ICsrKysrKysrKystLS0tLS0tLS0tLS0KKyBwby9sdC5wbyAgICAgICAgICAgICAgICB8IDE5NjIgKysrKysrKysrKystLS0tLS0tLS0tLS0KKyBwby9tci5wbyAgICAgICAgICAgICAgICB8IDIxNjIgKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0KKyBwby9uYi5wbyAgICAgICAgICAgICAgICB8IDIxNzQgKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0KKyBwby9uZS5wbyAgICAgICAgICAgICAgICB8IDIxNjEgKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0KKyBwby9ubC5wbyAgICAgICAgICAgICAgICB8IDIxODEgKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0KKyBwby9ubi5wbyAgICAgICAgICAgICAgICB8IDIwMTcgKysrKysrKysrKystLS0tLS0tLS0tLS0KKyBwby9wYS5wbyAgICAgICAgICAgICAgICB8IDIwMjkgKysrKysrKysrKystLS0tLS0tLS0tLS0tCisgcG8vcGwucG8gICAgICAgICAgICAgICAgfCAyMTY0ICsrKysrKysrKysrKystLS0tLS0tLS0tLS0tCisgcG8vcHQucG8gICAgICAgICAgICAgICAgfCAyMTg3ICsrKysrKysrKysrKystLS0tLS0tLS0tLS0tCisgcG8vcHRfQlIucG8gICAgICAgICAgICAgfCAyMTgxICsrKysrKysrKysrKystLS0tLS0tLS0tLS0tCisgcG8vcm8ucG8gICAgICAgICAgICAgICAgfCAyMTkyICsrKysrKysrKysrKystLS0tLS0tLS0tLS0tCisgcG8vcnUucG8gICAgICAgICAgICAgICAgfCAyMTY5ICsrKysrKysrKysrKystLS0tLS0tLS0tLS0tCisgcG8vc2sucG8gICAgICAgICAgICAgICAgfCAyMTYxICsrKysrKysrKysrKystLS0tLS0tLS0tLS0tCisgcG8vc3YucG8gICAgICAgICAgICAgICAgfCAxMTI4ICsrKysrKystLS0tLS0tCisgcG8vdGgucG8gICAgICAgICAgICAgICAgfCAyMTUzICsrKysrKysrKysrKy0tLS0tLS0tLS0tLS0KKyBwby90bC5wbyAgICAgICAgICAgICAgICB8IDIwMTcgKysrKysrKysrKystLS0tLS0tLS0tLS0KKyBwby92aS5wbyAgICAgICAgICAgICAgICB8IDIxOTcgKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0KKyBwby96aF9DTi5wbyAgICAgICAgICAgICB8IDIxNjIgKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0KKyBwby96aF9UVy5wbyAgICAgICAgICAgICB8IDIxNTMgKysrKysrKysrKysrLS0tLS0tLS0tLS0tLQorIHNjcmlwdHMvcG8vY2EucG8gICAgICAgIHwgIDM0MiArKy0tLQorIHNjcmlwdHMvcG8vZGUucG8gICAgICAgIHwgIDEwMyArLQorIHNjcmlwdHMvcG8vZHBrZy1kZXYucG90IHwgIDMxNyArKy0tLQorIHNjcmlwdHMvcG8vZnIucG8gICAgICAgIHwgIDM4NSArKystLS0KKyBzY3JpcHRzL3BvL3BsLnBvICAgICAgICB8ICAzOTIgKysrLS0tCisgc2NyaXB0cy9wby9ydS5wbyAgICAgICAgfCAgMzg1ICsrKy0tLQorIHNjcmlwdHMvcG8vc3YucG8gICAgICAgIHwgICA4OSArLQorIDg5IGZpbGVzIGNoYW5nZWQsIDY1MTA0IGluc2VydGlvbnMoKyksIDY1MDU4IGRlbGV0aW9ucygtKQorCitjb21taXQgZDBkODA4MjUwYWQ0MGUxOWVlNTMxZTY5OTdkM2JmNDAxYjc4ODlkNQorQXV0aG9yOiBTdGV2ZSBMYW5nYXNlayA8dm9ybG9uQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBBdWcgMzAgMDE6MzM6NTQgMjAwOSAtMDcwMAorCisgICAgQWRkIE11bHRpLUFyY2ggdG8gdGhlIGxpc3Qgb2Yga25vd24gYmluYXJ5IHBhY2thZ2UgZmllbGRzIGZvciBkcGtnLWRldgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgfCAgICAyICsrCisgc2NyaXB0cy9EcGtnL0ZpZWxkcy5wbSAgICAgfCAgICAyICstCisgc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGwgfCAgICAyICstCisgMyBmaWxlcyBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBjYzlmYzRkNjI4NjY0YTY5MzUxZjRhNzdiNzBiYWViYjU5YzBhNmU0CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIFNlcCA2IDA4OjM1OjI5IDIwMDkgKzAyMDAKKworICAgIGRwa2c6IFVzZSBvaHNoaXQgb24gYmFkIHZlcnNpb24gc3ludGF4IGluIC0tY29tcGFyZS12ZXJzaW9ucworCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDEgKworIHNyYy9lbnF1aXJ5LmMgICAgfCAgIDE0ICsrKystLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDEwIGRlbGV0aW9ucygtKQorCitjb21taXQgZThkYzZiNDA2ZWIyNWJkODAyNWZkYzc1NmYyZGY3NjQ2YTEyMzg0MworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBTZXAgNiAwODozMDowNSAyMDA5ICswMjAwCisKKyAgICBtYW46IERvY3VtZW50IERQS0dfUlVOTklOR19WRVJTSU9OIGVudmlyb25tZW50IHZhcmlhYmxlCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMiArKworIG1hbi9kcGtnLjEgICAgICAgfCAgICA2ICsrKysrLQorIDIgZmlsZXMgY2hhbmdlZCwgNyBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgMDY4MGFlZjBiNTM0Y2IyMTlmMzY3ODhlMjU1MjBjNjY3ZTllN2JhNworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBTZXAgNiAwODoxNDowMCAyMDA5ICswMjAwCisKKyAgICBkcGtnLXF1ZXJ5OiBBZGQgaW5zdGFsbGVkIHBhY2thZ2UgY29udHJvbCBwYXRoIHF1ZXJ5IHN1cHBvcnQKKyAgICAKKyAgICBUaGlzIG5ldyBjb21tYW5kIGlzIHRvIGJlIHVzZWQgaW4gc3BlY2lhbCBjaXJtY3Vtc3RhbmNlcyB3aGVuIHRoZQorICAgIG1haW50YWluZXIgc2NyaXB0cywgb3IgZXh0ZXJuYWwgcHJvZ3JhbXMgbmVlZCB0byBrbm93IHRoZSBwYXRocyB0byBhbgorICAgIGluc3RhbGxlZCBwYWNrYWdlIGNvbnRyb2wgZmlsZXMsIHdpdGhvdXQgbmVlZGluZyB0byBoYXJkY29kZSBvciBhc3N1bWUKKyAgICBhbnkgZmlsZSBzeXN0ZW0gbGF5b3V0IGZvciB0aGUgZHBrZyBkYXRhYmFzZS4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAxICsKKyBtYW4vZHBrZy1xdWVyeS4xIHwgICAxMCArKysrLQorIHNyYy9tYWluLmggICAgICAgfCAgICAxICsKKyBzcmMvcXVlcnkuYyAgICAgIHwgIDEyMCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKKyA0IGZpbGVzIGNoYW5nZWQsIDEzMSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgYWJjNDNkNDdhY2E1Y2UwNDJlMGYwMGJmMDYxODdiYzA5MDllZjA0OAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBTZXAgNiAwNzoxMToxMCAyMDA5ICswMjAwCisKKyAgICBVbmlmeSBhbmQgbWFyayBzdHJpbmdzIGZvciB0cmFuc2xhdGlvbgorCisgc2NyaXB0cy9EcGtnL0FyY2gucG0gICAgICAgICAgICAgIHwgICAgNiArKystLS0KKyBzY3JpcHRzL0Rwa2cvU2hsaWJzL09iamR1bXAucG0gICAgfCAgICA0ICsrLS0KKyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG0gICAgfCAgICAyICstCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtIHwgICAgNCArKy0tCisgc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGwgICAgICAgIHwgICAgMiArLQorIHNjcmlwdHMvZHBrZy1zY2Fuc291cmNlcy5wbCAgICAgICB8ICAgIDIgKy0KKyBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsICAgICAgICAgfCAgICAyICstCisgc3JjL2VucXVpcnkuYyAgICAgICAgICAgICAgICAgICAgIHwgICAgMiArLQorIHNyYy9xdWVyeS5jICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDQgKystLQorIDkgZmlsZXMgY2hhbmdlZCwgMTQgaW5zZXJ0aW9ucygrKSwgMTQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAwYTVhOTUwOTEwYzM5ZTFlYzk3YjcyNGYwNDcwNDI3ZmZhYTdhY2YyCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIFNlcCA2IDA3OjA0OjQxIDIwMDkgKzAyMDAKKworICAgIFVzZSBtX291dHB1dCBpbnN0ZWFkIG9mIGNoZWNraW5nIHByaW50aW5nIGZ1bmN0aW9ucyByZXR1cm4gY29kZQorICAgIAorICAgIENsZWFucyB1cCB0aGUgY29kZS4gQW5kIGFzIGEgc2lkZSBlZmZlY3QsIHdlIGdldCByaWQgb2YgYm9ndXMgY2hlY2tzCisgICAgZm9yIEVPRiwgd2hpY2ggc2hvdWxkIGhhdmUgYmVlbiBjaGVja2luZyBmb3IgbmVnYXRpdmUgcmV0dXJuIHZhbHVlcy4KKworIGRwa2ctZGViL2V4dHJhY3QuYyB8ICAgMjcgKysrKysrKysrKysrLS0tLS0tLS0tLS0KKyBkcGtnLWRlYi9pbmZvLmMgICAgfCAgIDIzICsrKysrKysrKystLS0tLS0tLS0KKyBkcGtnLWRlYi9tYWluLmMgICAgfCAgIDQ1ICsrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tCisgZHBrZy1zcGxpdC9tYWluLmMgIHwgICAzNCArKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tCisgZHNlbGVjdC9tYWluLmNjICAgIHwgICAzNCArKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tCisgc3JjL2VucXVpcnkuYyAgICAgIHwgICAgOCArKy0tLS0KKyBzcmMvbWFpbi5jICAgICAgICAgfCAgIDYxICsrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHNyYy9xdWVyeS5jICAgICAgICB8ICAgMzUgKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0KKyBzcmMvdHJpZ2NtZC5jICAgICAgfCAgIDMyICsrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tCisgOSBmaWxlcyBjaGFuZ2VkLCAxNTcgaW5zZXJ0aW9ucygrKSwgMTQyIGRlbGV0aW9ucygtKQorCitjb21taXQgOTA1MjY3NThjNWNmYzliYmVjOGQ3YzdlMjE0ZTkzOTM4OTJhMWI2NworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBTZXAgNiAwNjo0NTozOSAyMDA5ICswMjAwCisKKyAgICBVc2UgbV9vdXRwdXQgaW5zdGVhZCBvZiBmZmx1c2gsIGZlcnJvciBhbmQgd2VycgorCisgZHBrZy1kZWIvYnVpbGQuYyAgICB8ICAgIDIgKy0KKyBkcGtnLWRlYi9pbmZvLmMgICAgIHwgICAgMiArLQorIGRwa2ctc3BsaXQvaW5mby5jICAgfCAgICAyICstCisgZHBrZy1zcGxpdC9tYWluLmMgICB8ICAgIDIgKy0KKyBkcGtnLXNwbGl0L3F1ZXVlLmMgIHwgICAgNiArKystLS0KKyBkc2VsZWN0L21ldGhvZC5jYyAgIHwgICAgMyArLS0KKyBsaWIvZHBrZy9kYXRhYmFzZS5jIHwgICAgNCArKystCisgc3JjL2FyY2hpdmVzLmMgICAgICB8ICAgIDQgKystLQorIHNyYy9lbnF1aXJ5LmMgICAgICAgfCAgIDE3ICsrKysrKysrKy0tLS0tLS0tCisgc3JjL3BhY2thZ2VzLmMgICAgICB8ICAgIDQgKystLQorIHNyYy9xdWVyeS5jICAgICAgICAgfCAgIDE3ICsrKysrKysrKy0tLS0tLS0tCisgc3JjL3NlbGVjdC5jICAgICAgICB8ICAgIDUgKysrLS0KKyAxMiBmaWxlcyBjaGFuZ2VkLCAzNiBpbnNlcnRpb25zKCspLCAzMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDcxMjExNTI1NzE1ODlkZTgwMzdmNDMxYmJmYjA2NTQ3MzNjNTgxNWIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gU2VwIDYgMDY6Mzc6MDEgMjAwOSArMDIwMAorCisgICAgbGliZHBrZzogTmV3IG1fb3V0cHV0IGZ1bmN0aW9uCisgICAgCisgICAgVGhpcyBmdW5jdGlvbiBtYWtlcyBzdXJlIHRvIG91dHB1dCB0aGUgaW5mb3JtYXRpb24gcHJpbnRlZCBvbiB0aGUgZmlsZQorICAgIHNwZWNpZmllZCwgYW5kIG9oc2hpdGVzIGlmIHRoZXJlJ3MgYW55IGVycm9yLgorCisgbGliL2Rwa2cvZHBrZy5oIHwgICAgMSArCisgbGliL2Rwa2cvbWxpYi5jIHwgICAgOCArKysrKysrKworIDIgZmlsZXMgY2hhbmdlZCwgOSBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgYjQ3MWI2YmNkN2M4ZDE1MTM1NThmYTNmMGVmMTQxMTExNWRmOWE5MworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBTZXAgNiAwNjozMzo1MiAyMDA5ICswMjAwCisKKyAgICBkcGtnLWRlYjogVXNlIHdhcm5pbmcoKSBpbnN0ZWFkIG9mIGFkLWhvYyBwcmludGluZworCisgZHBrZy1kZWIvYnVpbGQuYyB8ICAgIDYgKystLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBhODNlODNjMTU2ZTljZjJkMDg0YjFjYzhjZjU2MWNlYzRmMDIxYWM5CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIFNlcCA2IDA2OjMwOjA4IDIwMDkgKzAyMDAKKworICAgIGRwa2c6IENoZWNrIHN0ZG91dCBmb3IgZXJyb3JzIGluc3RlYWQgb2Ygc3RkZXJyIGluIGF1ZGl0KCkKKworIHNyYy9lbnF1aXJ5LmMgfCAgICA0ICsrKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGQ3NWM1NjdjNjE0MGVmYjZiMDE5ODI1MTU1YTFhNzA0MDI1MzRkODcKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gU2VwIDYgMDI6MzQ6MzUgMjAwOSArMDIwMAorCisgICAgRG8gbm90IGNoZWNrIGZvciBmcHJpbnRmIHJldHVybiBjb2RlIHdoZW4gZ29pbmcgdG8gb2hzaGl0IGFueXdheQorCisgZHBrZy1kZWIvZXh0cmFjdC5jIHwgICAgNyArKystLS0tCisgZHBrZy1kZWIvaW5mby5jICAgIHwgICAgNSArKystLQorIDIgZmlsZXMgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCA2IGRlbGV0aW9ucygtKQorCitjb21taXQgN2MyZjA1NTBlNTNiNGZlZTBhZjEyZjNmNWU0M2UxYWMxNjhiMWYzNAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBTZXAgNSAyMDo0ODoxMiAyMDA5ICswMjAwCisKKyAgICBkcGtnOiBSZW1vdmUgdW51c2VkIGFjdF9jb21wYXJldmVyc2lvbnMKKworIHNyYy9tYWluLmggfCAgICAxIC0KKyAxIGZpbGVzIGNoYW5nZWQsIDAgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDA1YjZjODQzNGQ4NDBlZTQ4NGE2ZDg5NjEwMzBhOGQyYjc1MTBhMTAKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgU2VwIDUgMjA6NDU6NTYgMjAwOSArMDIwMAorCisgICAgZHBrZzogU29ydCBhbmQgZ3JvdXAg4oCYZW51bSBhY3Rpb27igJkgdmFsdWVzCisKKyBzcmMvbWFpbi5oIHwgICA1MiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA0MiBpbnNlcnRpb25zKCspLCAxMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDljZTJjMDEwMmY4MTA3NGM0Mzg1MDMxOTIwNmFhYjBjNjJjN2NlNTAKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgQXVnIDI4IDE5OjU1OjQ2IDIwMDkgKzAyMDAKKworICAgIGxpYmRwa2c6IFJlbW92ZSBfc2V0dXAgZnJvbSBidWZmZXJfY29weV9zZXR1cF9UWVBFIGZ1bmN0aW9uIG5hbWVzCisKKyBsaWIvZHBrZy9idWZmZXIuYyB8ICAgIDYgKy0KKyBsaWIvZHBrZy9idWZmZXIuaCB8ICAxMTIgKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDUxIGluc2VydGlvbnMoKyksIDY3IGRlbGV0aW9ucygtKQorCitjb21taXQgZTg3YjI4MzhiMjFmNzYzOTRmMDgyN2NjZDg3MDkzMTNjNTZjN2EyMworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBBdWcgMjggMTk6NTU6MDYgMjAwOSArMDIwMAorCisgICAgbGliZHBrZzogUmVuYW1lIGJ1ZmZlcl9jb3B5X3NldHVwX2R1YWwgdG8gYnVmZmVyX2NvcHlfVFlQRQorCisgbGliL2Rwa2cvYnVmZmVyLmMgfCAgIDEwICsrKysrLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDUgaW5zZXJ0aW9ucygrKSwgNSBkZWxldGlvbnMoLSkKKworY29tbWl0IDkxMjY1N2YwYjQ1YmIxN2MxMTFlMmIwODg0NTM4MmYyOGZlNzM3OTgKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgQXVnIDI4IDE5OjM5OjI3IDIwMDkgKzAyMDAKKworICAgIGxpYmRwa2c6IEZvbGQgYnVmZmVyX2NvcHlfc2V0dXAgYmFjayBpbnRvIGJ1ZmZlcl9jb3B5X3NldHVwX1RZUEUgZnVuY3Rpb25zCisKKyBsaWIvZHBrZy9idWZmZXIuYyB8ICAgMzEgKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIGxpYi9kcGtnL2J1ZmZlci5oIHwgICAgNCArLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAxMSBpbnNlcnRpb25zKCspLCAyNCBkZWxldGlvbnMoLSkKKworY29tbWl0IDBmN2M4OGZlMWM4NDVmZTBhOGY4NzY4Y2MzNmJjYTQ4ZWU3MWUzMWMKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgQXVnIDI4IDE5OjMyOjEzIDIwMDkgKzAyMDAKKworICAgIGxpYmRwa2c6IFJlbW92ZSB1bnVzZWQgcHJvYyBtZW1iZXIgZnJvbSBidWZmZXJfZGF0YQorCisgbGliL2Rwa2cvYnVmZmVyLmMgfCAgIDI1ICsrKysrLS0tLS0tLS0tCisgbGliL2Rwa2cvYnVmZmVyLmggfCAgIDk2ICsrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDU1IGluc2VydGlvbnMoKyksIDY2IGRlbGV0aW9ucygtKQorCitjb21taXQgYmUwOWJkYmUzNWIyMTYwMzQxZDM4ZmFmOGFkMGUwMzQ0YmNlMGY2ZAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBBdWcgMjggMTM6MTY6MzkgMjAwOSArMDIwMAorCisgICAgbGliZHBrZzogUmVmYWN0b3IgYnVmZmVyIGluaXRhbGl6YWlvbiBhbmQgZGVzdHJ1Y3Rpb24KKworIGxpYi9kcGtnL2J1ZmZlci5jIHwgICA2MSArKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgbGliL2Rwa2cvYnVmZmVyLmggfCAgICA3ICstLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAyNiBpbnNlcnRpb25zKCspLCA0MiBkZWxldGlvbnMoLSkKKworY29tbWl0IDAzMTQ0ZmU3ZDZiMGU4MDY4MmZmOTUwZmRlZGQ4NDgxZWFlYjBmMDcKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgQXVnIDI4IDEzOjEwOjIyIDIwMDkgKzAyMDAKKworICAgIGxpYmRwa2c6IFJlZmFjdG9yIG1kNSBidWZmZXIgaW5pdGlhbGl6YXRpb24gYW5kIGRlc3RydWN0aW9uCisgICAgCisgICAgTW92ZSBpbnRvIHRoZWlyIG93biBmdW5jdGlvbnMuCisKKyBsaWIvZHBrZy9idWZmZXIuYyB8ICAgNTYgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMzIgaW5zZXJ0aW9ucygrKSwgMjQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA3NmY1MjAxODAwYWNlMDQ4MzJjMjkzZTZmN2EyYWE1MDM1N2VkNTBjCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IEF1ZyAyNyAxODozMzo0OCAyMDA5ICswMjAwCisKKyAgICBsaWJkcGtnOiBNb3ZlIGJ1ZmZlciBJL08gZGVjbGFyYXRpb25zIHRvIGJ1ZmZlci5oCisKKyBkcGtnLWRlYi9idWlsZC5jICAgICAgIHwgICAgMSArCisgZHBrZy1kZWIvZXh0cmFjdC5jICAgICB8ICAgIDEgKworIGRwa2ctZGViL2luZm8uYyAgICAgICAgfCAgICAxICsKKyBsaWIvZHBrZy9NYWtlZmlsZS5hbSAgIHwgICAgMSArCisgbGliL2Rwa2cvYnVmZmVyLmMgICAgICB8ICAyNzggKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCisgbGliL2Rwa2cvYnVmZmVyLmggICAgICB8ICAxNzcgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCisgbGliL2Rwa2cvY29tcHJlc3Npb24uYyB8ICAgIDEgKworIGxpYi9kcGtnL2Rwa2cuaCAgICAgICAgfCAgMTI2IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBsaWIvZHBrZy9tbGliLmMgICAgICAgIHwgIDE5NCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBsaWIvZHBrZy9teW9wdC11dGlsLmMgIHwgICAgMSArCisgbGliL2Rwa2cvcGFyc2UuYyAgICAgICB8ICAgIDEgKworIHBvL1BPVEZJTEVTLmluICAgICAgICAgfCAgICAxICsKKyBzcmMvYXJjaGl2ZXMuYyAgICAgICAgIHwgICAgMSArCisgc3JjL2NvbmZpZ3VyZS5jICAgICAgICB8ICAgIDEgKworIHNyYy9maWxlc2RiLmMgICAgICAgICAgfCAgICAxICsKKyBzcmMvcHJvY2Vzc2FyYy5jICAgICAgIHwgICAgMSArCisgc3JjL3N0YXRkYi5jICAgICAgICAgICB8ICAgIDEgKworIDE3IGZpbGVzIGNoYW5nZWQsIDQ2OCBpbnNlcnRpb25zKCspLCAzMjAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA5ZDgxMDA4YTMwM2I1NTEwNjAxMDYzMzYzYTQwYzg5NjFiNzY5MzM5CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEF1ZyAyMSAwNzowMDoxNyAyMDA5ICswMjAwCisKKyAgICBkcGtnOiBBZGQgbmV3IGludm9rZSBob29rcyBzdXBwb3J0CisgICAgCisgICAgQ2FsbCBwcmUtaW52b2tlIGFuZCBwb3N0LWludm9rZSBob29rcyBiZWZvcmUgYW5kIGFmdGVyIHVucGFjaywKKyAgICBjb25maWd1cmUsIGluc3RhbGwsIHRyaWdnZXJzLW9ubHksIHJlbW92ZSBhbmQgcHVyZ2UgYWN0aW9ucy4KKyAgICBTZXQgdGhlIERQS0dfSE9PS19BQ1RJT04gZW52aXJvbm1lbnQgdmFyaWFibGUgdG8gdGhlIGN1cnJlbnQgZHBrZworICAgIGFjdGlvbi4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAxICsKKyBtYW4vZHBrZy4xICAgICAgIHwgICAxNCArKysrKysrKysrKworIHNyYy9tYWluLmMgICAgICAgfCAgIDY2ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKworIHNyYy9tYWluLmggICAgICAgfCAgICA1ICsrKysKKyA0IGZpbGVzIGNoYW5nZWQsIDg2IGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAzNTVkYmRmMzYwOTZjZDNkMTg1NGJjM2ZkMWY4MTRlMjc3OTZjNDkzCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IFNlcCA1IDAzOjEyOjI4IDIwMDkgKzAyMDAKKworICAgIGxpYmRwa2c6IEFsbG93IHF1b3RpbmcgdmFsdWVzIGluIGNvbmZpZ3VyYXRpb24gZmlsZSBvcHRpb25zCisKKyBkZWJpYW4vY2hhbmdlbG9nICB8ICAgIDEgKworIGxpYi9kcGtnL215b3B0LmMgIHwgICAgNSArKysrKworIG1hbi9kcGtnLmNmZy41ICAgIHwgICAgNiArKystLS0KKyBtYW4vZHNlbGVjdC5jZmcuNSB8ICAgIDYgKysrLS0tCisgNCBmaWxlcyBjaGFuZ2VkLCAxMiBpbnNlcnRpb25zKCspLCA2IGRlbGV0aW9ucygtKQorCitjb21taXQgNTQxMGI0OTA0ZWViODMwYzg1OGRhYWYzMDQyMDUyMzEyMmVjNDA0MgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBTZXAgNCAxNDoyNjozMiAyMDA5ICswMjAwCisKKyAgICBsaWJkcGtnOiBBZGQgbmV3IHN0cl9zdHJpcF9xdW90ZXMgZnVuY3Rpb24KKworIGxpYi9kcGtnL3N0cmluZy5jICAgICAgICB8ICAgMjIgKysrKysrKysrKysrKysrKysrKysrLQorIGxpYi9kcGtnL3N0cmluZy5oICAgICAgICB8ICAgIDMgKystCisgbGliL2Rwa2cvdGVzdC90LXN0cmluZy5jIHwgICA0MyArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCisgMyBmaWxlcyBjaGFuZ2VkLCA2NiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgZGM0M2QyYmIxMTVjZjVkYTgwOTcwOGNlNmNmYjNkNzhjOWRlNTAzYQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBTZXAgNCAyMDo1MDowNCAyMDA5ICswMjAwCisKKyAgICBsaWJkcGtnOiBPbiBjb25maWd1cmF0aW9uIGVycm9yIHByaW50IGZpbGUgbmFtZSBhbmQgbGluZSBudW1iZXIKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAxICsKKyBsaWIvZHBrZy9teW9wdC5jIHwgICAxMyArKysrKysrKy0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCA5IGluc2VydGlvbnMoKyksIDUgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA1ZTI5Y2M0YzcyNWMyNjc1NGUwZTg4OTE3YzdhMGExOGE1ODIzOGI5CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIFNlcCA0IDIwOjM0OjAwIDIwMDkgKzAyMDAKKworICAgIGxpYmRwa2c6IFJlZmFjdG9yIGNvbmZpZyBlcnJvciBwcmludGluZyBpbnRvIGEgbmV3IGZ1bmN0aW9uCisKKyBsaWIvZHBrZy9teW9wdC5jIHwgICAyMCArKysrKysrKysrKysrKysrKy0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMTcgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworY29tbWl0IDBiY2IxYjVkN2NjMjBjMDVjM2ZlMmNkNWUzOTQwY2RiOTQwM2VlMmQKK0F1dGhvcjogU3ZlbiBKb2FjaGltIDxzdmVuam9hY0BnbXguZGU+CitEYXRlOiAgIFN1biBTZXAgNiAwODo0Njo1MCAyMDA5ICswMjAwCisKKyAgICBHZXJtYW4gZHBrZyB0cmFuc2xhdGlvbiB1cGRhdGUKKyAgICAKKyAgICBVcGRhdGUgdG8gOTY2dDdmLgorCisgcG8vZGUucG8gfCAxOTUxICsrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA3MDMgaW5zZXJ0aW9ucygrKSwgMTI0OCBkZWxldGlvbnMoLSkKKworY29tbWl0IDAyZmI0NTRjMDgyNzBlZTljMTFmNzhhZDI5NjhmYWI4NGQ4OTYwYzIKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgU2VwIDEgMDE6MzA6MzUgMjAwOSArMDIwMAorCisgICAgRml4IHRyYW5zbGF0aW9uIGVycm9yIGluIGdlcm1hbiBtYW5wYWdlIG9mIGRwa2ctYnVpbGRwYWNrYWdlCisgICAgCisgICAgUmVwb3J0ZWQtYnk6IEpvYWNoaW0gQnJlaXRuZXIgPG5vbWVhdGFAZGViaWFuLm9yZz4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAyICsrCisgbWFuL3BvL2RlLnBvICAgICB8ICAgIDIgKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGFhYzlmNGRmMjJhOTI5MWEyODRmZTE1MjNhZWE4YTBiZDhhZTA4NmEKK0F1dGhvcjogU3ZlbiBKb2FjaGltIDxzdmVuam9hY0BnbXguZGU+CitEYXRlOiAgIFR1ZSBTZXAgMSAwMDo1OToyNiAyMDA5ICswMjAwCisKKyAgICBUaWdodGVuaW5nIHRoZSBCcmVha3MgZm9yIHRoZSBpbnN0YWxsLWluZm8gdHJhbnNpdGlvbgorICAgIAorICAgIFRoZSB2ZXJzaW9ucyBvZiBpbmZvLWJyb3dzZXJzIHRoYXQgZHBrZyBicmVha3MgYXJlIGEgYml0IHRvbworICAgIGxvb3NlIGluIHNvbWUgY2FzZXMsIG5hbWVseSB3aGVuIGl0ICJCcmVha3M6IGZvb2JhciAoPD0geC55LXopIiwgd2hlcmUKKyAgICB4LnkteiBpcyB0aGUgTGVubnkgdmVyc2lvbiBvZiBpbmZvLWJyb3dzZXIgZm9vYmFyLiAgVGhlIHByb2JsZW0gaXMgdGhhdAorICAgIHRoZXJlIG1pZ2h0IGJlIGFuIHVwZGF0ZSBvZiBmb29iYXIgaW4gTGVubnksIHNheSB0byB4Lnktemxlbm55MSwgd2hpY2gKKyAgICBkcGtnIGFsc28gbmVlZHMgdG8gYnJlYWsuCisKKyBkZWJpYW4vY29udHJvbCB8ICAgIDQgKystLQorIDEgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgMWI1YTAwOWRhNmZkZDM4YjJiNTFiZDU1MWMwOTg4MGY4OTA1NjZmNworQXV0aG9yOiBIZWxnZSBLcmV1dHptYW5uIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KK0RhdGU6ICAgU2F0IEF1ZyAyOSAxNTozNjowNyAyMDA5ICswMjAwCisKKyAgICBVcGRhdGUgR2VybWFuIHRyYW5zbGF0aW9uIG9mIG1hbnVhbCBwYWdlcyBhbmQgZml4IEZyZW5jaCBkZWJpYW4vY2hhbmdlbG9nIGVudHJ5CisgICAgCisgICAgVXBkYXRlIHRvIDE2MzJ0LgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDQgKystLQorIG1hbi9wby9kZS5wbyAgICAgfCAgIDE3ICsrKysrKysrKysrKysrKystCisgMiBmaWxlcyBjaGFuZ2VkLCAxOCBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQorCitjb21taXQgMDU5ZDNmZTUwMDg3Njc2YTAwNTEzYzIwNjNiZjM5ZDllZjdkNDNjYworQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBBdWcgMjggMTg6MjI6MDMgMjAwOSArMDIwMAorCisgICAgZHBrZy1zb3VyY2UoMSk6IHNtYWxsIGltcHJvdmVtZW50CisgICAgCisgICAgR2l2ZSB0aGUgc2VjdGlvbiBuYW1lIGxpc3Rpbmcgc291cmNlIHBhY2thZ2VzIGZvcm1hdHMgd2hlbiB3ZSdyZQorICAgIHJlZmVycmluZyB0byBpdC4gVGhhbmtzIHRvIEphcmkgQWFsdG8gZm9yIHRoZSBpZGVhLgorCisgZGViaWFuL2NoYW5nZWxvZyAgfCAgICAyICsrCisgbWFuL2Rwa2ctc291cmNlLjEgfCAgICA0ICsrLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDVlZmM0ZGJlYjJhNTNhOWViOTJjOTQ5OTcwMTA4OTBhMTkxZWQ0MGYKK0F1dGhvcjogUGV0ZXIgS3JlZnRpbmcgPHBldGVya0BkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgQXVnIDI3IDEyOjExOjE4IDIwMDkgKzAxMDAKKworICAgIFVwZGF0ZSBTd2VkaXNoIHRyYW5zbGF0aW9uLgorICAgIAorICAgIHBvL3N2LnBvOiBVcGRhdGUgdG8gOTczdDBmMHUuCisgICAgc2NyaXB0cy9wby9zdi5wbzogVXBkYXRlIHRvIDQ3NnQwZjB1LgorCisgcG8vc3YucG8gICAgICAgICB8ICAyNzEgKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgc2NyaXB0cy9wby9zdi5wbyB8ICAxODMgKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAyMzcgaW5zZXJ0aW9ucygrKSwgMjE3IGRlbGV0aW9ucygtKQorCitjb21taXQgZGYwODQ1ZWZhMDhkZmI3MTE2OTlmMTc1YjRkOTdlM2NjNDM4Y2MxNworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBBdWcgMjYgMTc6MTc6MzkgMjAwOSArMDIwMAorCisgICAgbWFuOiBVc2UgcG80YSDigJwtLXByZXZpb3Vz4oCdIHN1cHBvcnQgd2hlbiB1cGRhdGluZyB0aGUgbWFuIHBhZ2VzCisgICAgCisgICAgU3VnZ2VzdGVkLWJ5OiBDaHJpc3RpYW4gUGVycmllciA8YnVidWxsZUBkZWJpYW4ub3JnPgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDIgKysKKyBtYW4vTWFrZWZpbGUuYW0gIHwgICAgMiArLQorIDIgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgM2U5NWY0MjUxNTcxNDEyODlmMDc4MGRmMGRhNjQzNWI4OTMxNDQ0YQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBBdWcgMjYgMTc6MTA6NDcgMjAwOSArMDIwMAorCisgICAgbWFuOiBSZWZhY3RvciBjb21tb24gcG80YSBvcHRpb25zIGludG8gY29tbW9uIHZhcmlhYmxlcworCisgbWFuL01ha2VmaWxlLmFtIHwgICAxMSArKysrKysrLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgNyBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQorCitjb21taXQgZDk2MThiZThlZTFhYjEwZGQxNzQ1NjJiZTA2ZTUyYmQzODkxODU3MQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBBdWcgMjYgMTY6NTY6NDcgMjAwOSArMDIwMAorCisgICAgbWFuOiBBbHdheXMgcnVuIHBvNGEgZnJvbSBzb3VyY2UgZGlyIHJlZ2FyZGxlc3Mgb2Ygb3V0IG9yIGluLXRyZWUgYnVpbGRzCisgICAgCisgICAgU3dpdGNoIHRvIHVzZSBidWlsZGRpciBmb3IgdGhlIGRlc3RpbmF0aW9uIGZpbGVzIGluc3RlYWQgb2Ygc3JjZGlyIGZvcgorICAgIHRoZSBzb3VyY2UgZmlsZXMsIHRoZXJlZm9yZSBhdm9pZGluZyB1bm5lZWRlZCBjaGFuZ2VzIGluIHRoZSBwYXRocyBpbgorICAgIHBvIGZpbGVzIHJlZ2FyZGxlc3Mgb2Ygd2hlcmUgdGhlIG9iamVjdCBmaWxlcyBnZXQgc3RvcmVkIGR1cmluZyBidWlsZC4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAyICsKKyBtYW4vTWFrZWZpbGUuYW0gIHwgICAxNCArKy0tCisgbWFuL3BvL3BvNGEuY2ZnICB8ICAyMTIgKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMyBmaWxlcyBjaGFuZ2VkLCAxMTUgaW5zZXJ0aW9ucygrKSwgMTEzIGRlbGV0aW9ucygtKQorCitjb21taXQgNzVjZDFmYjhiMGU2NzMzZmE2Y2NkZGY3ZGU3NGZkZmVlZWE1YTYzNAorQXV0aG9yOiBKaXJpIFBhbGVjZWsgPGpwYWxlY2VrQHdlYi5kZT4KK0RhdGU6ICAgV2VkIEp1bCAxNSAxMzo1MzowMyAyMDA5ICswMjAwCisKKyAgICBEcGtnOjpTaGxpYnM6OlN5bWJvbEZpbGU6IGNhY2hlIHRoZSBtaW5pbXVtIHZlcnNpb24gZm9yIGEgcGFydGljdWxhciBzb25hbWUKKyAgICAKKyAgICBBZmVyIHByb2ZpbGluZywgSSBkaXNjb3ZlcmVkIHRoYXQgZHBrZy1zaGxpYmRlcHMgc3BlbnQgYSBsYXJnZSBwYXJ0CisgICAgb2YgaGlzIHRpbWUgaW4gdGhlIGdldF9zbWFsbGVzdF92ZXJzaW9uKCkgdmVyc2lvbi4gVGhpcyBwYXRjaCBpbXByb3ZlcworICAgIHRoZSBwZXJmb3JtYW5jZSBieSBjYWNoaW5nIHRoZSByZXN1bHRpbmcgdmFsdWUuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICAgICAgfCAgICAzICsrKworIHNjcmlwdHMvRHBrZy9TaGxpYnMvU3ltYm9sRmlsZS5wbSB8ICAgMTYgKysrKysrKysrKysrKy0tLQorIDIgZmlsZXMgY2hhbmdlZCwgMTYgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworY29tbWl0IDhjZWRlYjM3ZmEyOWUzYjhhZThjNDJiMDg3NGM2NjJjOTM4NWRiZTYKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgQXVnIDI2IDEyOjE3OjM5IDIwMDkgKzAyMDAKKworICAgIFVzZSBkb3VibGUgaW5zdGVhZCBvZiBzaW5nbGUgcXVvdGVzIHRvIGFsbG93IGJhY2t0aWNrcyB0byBleHBhbmQKKyAgICAKKyAgICBNaXNzZWQgaW4gY29tbWl0IDVlODNkMDU0YjFhNzkwZDQ5YmM4OGUzZGQwZThmYmI4NzJkNTFkOGYuCisKKyBzY3JpcHRzL01ha2VmaWxlLmFtIHwgICAgMyArKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDZmYmZkOTE3NzlhYmExYjJjMzk4N2Q3ZTEwZGE3ZGViZTQwNGI2YjYKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgQXVnIDI2IDEyOjE1OjQyIDIwMDkgKzAyMDAKKworICAgIGxpYmRwa2c6IFJlbmFtZSBkcGtnLXRlc3QuaCB0byB0ZXN0LmggaW4gbGliZHBrZ19hX1NPVVJDRVMKKyAgICAKKyAgICBNaXNzZWQgaW4gY29tbWl0IDRhNzAxMGZlNWUzNTczY2M5MTk3ODhkMzU0ZmRiY2NkZWRjZTI0OWQuCisKKyBsaWIvZHBrZy9NYWtlZmlsZS5hbSB8ICAgIDIgKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDRhOTVhNjk1MjNmNzI2MDg0MmEzYmNjMWI1MmMzNTVmOWJiMjhmM2EKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgQXVnIDI2IDEyOjE0OjE1IDIwMDkgKzAyMDAKKworICAgIEFkZCBtaXNzaW5nIGZpbGVzIGluIEVYVFJBX0RJU1QKKyAgICAKKyAgICBNaXNzZWQgaW4gY29tbWl0cyBhMjdkMTRjNDQyM2M0NGI0MDA3NjRjOTliNjY5ODI0ZjRiYTZlOWExIGFuZAorICAgIDZjNzg1NTk1ZDE4OWY2NWE1OTI4NDc5NmE5YjFmNjBmMTY2ODZlODUuCisKKyBNYWtlZmlsZS5hbSAgICAgICAgIHwgICAgMSArCisgc2NyaXB0cy9NYWtlZmlsZS5hbSB8ICAgIDEgKworIDIgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgNTEwMTJiMzRkY2NlZGNkMjFmYTZhMjgyNTU0ODZhMmJjYTU0Y2I2NAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBBdWcgMjYgMTE6Mzk6MjIgMjAwOSArMDIwMAorCisgICAgbGliZHBrZzogTW92ZSB2YXJidWYgZGVjbGFyYXRpb25zIHRvIHZhcmJ1Zi5oCisKKyBsaWIvZHBrZy9NYWtlZmlsZS5hbSB8ICAgIDIgKy0KKyBsaWIvZHBrZy9kcGtnLWRiLmggICB8ICAgNTEgKy0tLS0tLS0tLS0tLS0tLS0tLQorIGxpYi9kcGtnL2Rwa2cuaCAgICAgIHwgICAgMSAtCisgbGliL2Rwa2cvdmFyYnVmLmggICAgfCAgMTQyICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCisgNCBmaWxlcyBjaGFuZ2VkLCAxNDQgaW5zZXJ0aW9ucygrKSwgNTIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBkODU0YWQwODU2NWI5Mjg2MDIyYWRkNGQ3OWU3MGE0ZDhjMGM2ZDg0CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIEF1ZyAyNiAxMTozNzowMSAyMDA5ICswMjAwCisKKyAgICBSZW1vdmUgcmVkdW5kYW50IGV4dGVybiBzdG9yYWdlIGNsYXNzIHNwZWNpZmllciBpbiBmdW5jdGlvbnMKKworIGRzZWxlY3QvbWV0aG9kLmggICB8ICAgIDYgKysrLS0tCisgbGliL2Rwa2cvZHBrZy1kYi5oIHwgICAgMiArLQorIGxpYi9kcGtnL3RhcmZuLmggICB8ICAgIDIgKy0KKyAzIGZpbGVzIGNoYW5nZWQsIDUgaW5zZXJ0aW9ucygrKSwgNSBkZWxldGlvbnMoLSkKKworY29tbWl0IDZkYTc5YWQwNDdjOTEwZmVjMjIwOWU3YmRkOGM2Y2ZlM2JjZjgyMDkKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgQXVnIDI2IDAwOjQ0OjQ5IDIwMDkgKzAyMDAKKworICAgIENoYW5nZSBkcGtnIHNwZWNpZmljIG00IG1hY3JvcyBwcmVmaXggZnJvbSBTSlJfIHRvIERQS0dfCisKKyBjb25maWd1cmUuYWMgICB8ICAgIDYgKysrLS0tCisgbTQvY29tcGlsZXIubTQgfCAgICA4ICsrKystLS0tCisgbTQvbGlua2VyLm00ICAgfCAgICA2ICsrKy0tLQorIDMgZmlsZXMgY2hhbmdlZCwgMTAgaW5zZXJ0aW9ucygrKSwgMTAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBhZTFjMjIzYmNmZGMzZmU2MTNiNDZhZjUzODEwNDQ3ZTk3NGU5NmMxCitBdXRob3I6IEhlbGdlIEtyZXV0em1hbm4gPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorRGF0ZTogICBTdW4gQXVnIDIzIDA4OjIxOjEwIDIwMDkgKzAyMDAKKworICAgIFVwZGF0ZSBnZXJtYW4gdHJhbnNsYXRpb24gb2YgbWFudWFsIHBhZ2VzCisgICAgCisgICAgVXBkYXRlIHRvIDE2MzN0LgorCisgbWFuL3BvL2RlLnBvIHwgICAzNiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDM1IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBmYjE5OTg3YjQ3MDAwMGJhZGIzYzU1YTY3NGY2NjI0NGUxMmQ4ZjdhCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IEF1ZyAyMiAwMjoxODo1OSAyMDA5ICswMjAwCisKKyAgICBtYW46IERvY3VtZW50IERQS0dfTUFJTlRTQ1JJUFRfUEFDS0FHRSBlbnZpcm9ubWVudCB2YXJpYWJsZQorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDIgKysKKyBtYW4vZHBrZy4xICAgICAgIHwgICAgNCArKysrCisgMiBmaWxlcyBjaGFuZ2VkLCA2IGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAwNmI3MjM5MjEyYTI3ZWE4ZjM4NTk5YjY3NDNkODhkNDBiOWNkZDBlCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IEF1ZyAyMiAwMjoxMToxNCAyMDA5ICswMjAwCisKKyAgICBTZXQgRFBLR19NQUlOVFNDUklQVF9BUkNIIGVudiB2YXIgd2l0aCB0aGUgLmRlYiBhcmNoaXRlY3R1cmUKKyAgICAKKyAgICBUaGlzIGFsbG93cyBtYWludGFpbmVyIHNjcmlwdHMgdG8ga25vdyB3aGljaCBhcmNoaXRlY3R1cmUgdGhlIHBhY2thZ2UKKyAgICBnb3QgYnVpbHQgZm9yLgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDIgKysKKyBsaWIvZHBrZy9kcGtnLmggIHwgICAgMSArCisgbWFuL2Rwa2cuMSAgICAgICB8ICAgIDQgKysrKworIHNyYy9oZWxwLmMgICAgICAgfCAgICAxICsKKyA0IGZpbGVzIGNoYW5nZWQsIDggaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IGFiOTVmMGJiMmY1MzQ1Mjk5NGYzZDQ4YTA4MDJhYjM0NjIyYzhkNjcKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgQXVnIDIyIDAxOjQzOjU3IDIwMDkgKzAyMDAKKworICAgIFBhc3Mg4oCYc3RydWN0IHBrZ2luZm9wZXJmaWxl4oCZIGZyb20gbWFpbnQgc2NyaXB0IGZ1bmN0aW9ucyB0byBkb19zY3JpcHQKKyAgICAKKyAgICBUaGlzIGFsbG93cyB1cyB0byByZXRyaWV2ZSBwYWNrYWdlIGluZm9ybWF0aW9uIGZyb20gZWl0aGVyIHRoZSBpbnN0YWxsZWQKKyAgICBwYWNrYWdlIG9yIHRoZSBvbmUgYmVpbmcgaW5zdGFsbGVkIGZyb20gdGhlIG1haW50YWluZXIgc2NyaXB0IGludm9raW5nCisgICAgZnVuY3Rpb25zLgorCisgc3JjL2hlbHAuYyB8ICAgMTYgKysrKysrKysrLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgOSBpbnNlcnRpb25zKCspLCA3IGRlbGV0aW9ucygtKQorCitjb21taXQgZGQxNzgwMzQyYWI5ZmI3ZmVjZjRhODFlODgwOTUwNDgxNGYwMzc4NworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBBdWcgMjIgMDE6NDE6MTQgMjAwOSArMDIwMAorCisgICAgUGFzcyDigJhzdHJ1Y3QgcGtnaW5mb+KAmSBpbnN0ZWFkIG9mIHBrZyBuYW1lIHRvIG1haW50IHNjcmlwdCBmdW5jdGlvbnMKKyAgICAKKyAgICBUaGlzIGFsbG93cyB1cyB0byByZXRyaWV2ZSBwYWNrYWdlIGluZm9ybWF0aW9uIGZyb20gdGhlIG1haW50YWluZXIKKyAgICBzY3JpcHQgaW52b2tpbmcgZnVuY3Rpb25zLgorCisgc3JjL2NsZWFudXAuYyAgICB8ICAgIDYgKysrLS0tCisgc3JjL2hlbHAuYyAgICAgICB8ICAgMjUgKysrKysrKysrKysrKysrKy0tLS0tLS0tLQorIHNyYy9tYWluLmggICAgICAgfCAgICAyICstCisgc3JjL3Byb2Nlc3NhcmMuYyB8ICAgIDYgKysrLS0tCisgNCBmaWxlcyBjaGFuZ2VkLCAyMyBpbnNlcnRpb25zKCspLCAxNiBkZWxldGlvbnMoLSkKKworY29tbWl0IDRlNjQ2ZTEwZTFlYzFmZDdlNjg2MDAxZmM2YzI2Y2NhODBmMGFmYjEKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgQXVnIDIyIDAyOjI3OjQzIDIwMDkgKzAyMDAKKworICAgIEZpeCB0eXBvIGluIEdlcm1hbiBtYW4gcGFnZQorICAgIAorICAgIEludHJvZHVjZWQgaW4gY29tbWl0IGIwNWIzODE1MTk4MGYwZDJmMzkwYmY1ZjkxYTdjZWIyMDZkYmU5YzguCisgICAgCisgICAgU3BvdHRlZC1ieTogU3RldmUgTGFuZ2FzZWsgPHZvcmxvbkBkZWJpYW4ub3JnPgorCisgbWFuL3BvL2RlLnBvIHwgICAgMiArLQorIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgYjA1YjM4MTUxOTgwZjBkMmYzOTBiZjVmOTFhN2NlYjIwNmRiZTljOAorQXV0aG9yOiBIZWxnZSBLcmV1dHptYW5uIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KK0RhdGU6ICAgRnJpIEF1ZyAyMSAxNzo0MDo0NiAyMDA5ICswMjAwCisKKyAgICBVcGRhdGUgZ2VybWFuIHRyYW5zbGF0aW9uIG9mIG1hbnVhbCBwYWdlcywgaW5jbHVkaW5nIGEgZml4IGZyb20gRmVsaXggWmllbGNrZQorICAgIAorICAgIFVwZGF0ZSB0byAxNjM1dC4KKworIG1hbi9wby9kZS5wbyB8ICAgNDIgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tCisgMSBmaWxlcyBjaGFuZ2VkLCA0MCBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgYmJmNmJjOTA2Y2E1M2Q0NWE5NmI5ODYwZjU0MWM2OTczZWRkNDU0MQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBBdWcgMjEgMDc6MDk6NTcgMjAwOSArMDIwMAorCisgICAgQWRkIHN1cHBvcnQgZm9yIGNvbmZpZy5kIHN0eWxlIGRpcmVjdG9yeSBmcmFnbWVudCBsb2FkaW5nCisgICAgCisgICAgT3BlbiB0aGUgc3lzdGVtIGNvbmZpZy5kIGRpcmVjdG9yeSBiZWZvcmUgdGhlIHN5c3RlbSBjb25maWd1cmF0aW9uIGZpbGUsCisgICAgL2V0Yy9kcGtnL2Rwa2cuY2ZnLmQgZm9yIGRwa2cgYW5kIC9ldGMvZHBrZy9kc2VsZWN0LmNmZy5kIGZvciBkc2VsZWN0LAorICAgIGFuZCBsb2FkIGZyYWdtZW50cyB3aXRoIGZpbGVuYW1lcyBtYXRjaGluZyB0aGUgcnVuLXBhcnRzIHN0YW5kYXJkIERlYmlhbgorICAgIGNvbnN0cmFpbnRzICheW2EtekEtWjAtOV8tXSskKS4KKyAgICAKKyAgICBUaGlzIHdpbGwgYWxsb3cgZXh0ZXJuYWwgcHJvZ3JhbXMgdG8gZHJvcCBjb25maWd1cmF0aW9uIGZyYWdtZW50cyBvbgorICAgIHRob3NlIGRpcmVjdG9yaWVzLgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICB8ICAgIDIgKworIGRlYmlhbi9kcGtnLmluc3RhbGwgICAgfCAgICAxICsKKyBkZWJpYW4vZHNlbGVjdC5pbnN0YWxsIHwgICAgMSArCisgZHNlbGVjdC9NYWtlZmlsZS5hbSAgICB8ICAgIDUgKysrKworIGxpYi9kcGtnL215b3B0LmMgICAgICAgfCAgIDU2ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKworIG1hbi9kcGtnLjEgICAgICAgICAgICAgfCAgICA1ICsrLQorIG1hbi9kcGtnLmNmZy41ICAgICAgICAgfCAgICA0ICsrLQorIG1hbi9kc2VsZWN0LjEgICAgICAgICAgfCAgICA1ICsrLQorIG1hbi9kc2VsZWN0LmNmZy41ICAgICAgfCAgICA0ICsrLQorIHNyYy9NYWtlZmlsZS5hbSAgICAgICAgfCAgICAzICsrCisgMTAgZmlsZXMgY2hhbmdlZCwgODAgaW5zZXJ0aW9ucygrKSwgNiBkZWxldGlvbnMoLSkKKworY29tbWl0IGNmNmY2OTE2MTMxZTg3ZGFhNDUwNjY2MTAxMWIxMTQwNGRiZDNhZGIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgQXVnIDIxIDAwOjA0OjI0IDIwMDkgKzAyMDAKKworICAgIGxpYmRwa2c6IFVzZSBvaHNoaXQgaW5zdGVhZCBvZiBvaHNoaXRlIG9uIGNvbmZpZyBwYXJzaW5nIGVycm9ycworICAgIAorICAgIFBhcnNpbmcgZXJyb3JzIGRvIG5vdCBzZXQgZXJybm8sIHNvIGl0IHdpbGwgZWl0aGVyIGdldCBhIGJvZ3VzIHZhbHVlCisgICAgZnJvbSBhbiBvbGQgZXJyb3IsIG9yIFN1Y2Nlc3MsIHdoaWNoIGlzIHVuaW50ZXJlc3RpbmcuCisKKyBsaWIvZHBrZy9teW9wdC5jIHwgICAgOSArKysrKystLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDYgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworY29tbWl0IDMxMGNlYTEyZTk0YmU1Yjc5NzllYWQ0OTY5ZGY4OGNkZWQ3NDkzNTIKK0F1dGhvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitEYXRlOiAgIFdlZCBBdWcgMTkgMTg6NTQ6MjkgMjAwOSArMDIwMAorCisgICAgVXBkYXRlIGdlcm1hbiB0cmFuc2xhdGlvbiBvZiBtYW51YWwgcGFnZXMKKyAgICAKKyAgICBVcGRhdGUgdG8gMTYzMXQuCisKKyBtYW4vcG8vZGUucG8gfCAgIDg2ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDg1IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyNjdhMjIzOGI5YWQyODk3OWNmM2U2ZTNlMjVlZDM0NjQyZmZkZmRhCitBdXRob3I6IEhlbGdlIEtyZXV0em1hbm4gPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorRGF0ZTogICBXZWQgQXVnIDE5IDE4OjM3OjAwIDIwMDkgKzAyMDAKKworICAgIFVwZGF0ZSBnZXJtYW4gc2NyaXB0cyB0cmFuc2xhdGlvbgorICAgIAorICAgIFVwZGF0ZSB0byA0NzZ0LgorCisgc2NyaXB0cy9wby9kZS5wbyB8ICAxNjkgKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA4OCBpbnNlcnRpb25zKCspLCA4MSBkZWxldGlvbnMoLSkKKworY29tbWl0IDFlOTNlZTZmYWMzNDZhZWNjMGEwYWEzMDc5MzEyODRhNWQ4ZjUzOTUKK01lcmdlOiA2NmFiZjI5IDQxZDU2YjMKK0F1dGhvcjogQ2hyaXN0aWFuIFBlcnJpZXIgPGJ1YnVsbGVAZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIEF1ZyAxOSAwODo1Mzo0NSAyMDA5ICswMjAwCisKKyAgICBNZXJnZWQgY2hhbmdlcworCitjb21taXQgNjZhYmYyOTM5NWVlYTAyZTg2MWVkNDFjZDQzMDkyYzZhMjlkNmQ0NQorQXV0aG9yOiBZdXJpIEtvemxvdiA8eXVyYXlAa29teWFraW5vLnJ1PgorRGF0ZTogICBXZWQgQXVnIDE5IDA4OjA0OjI3IDIwMDkgKzAyMDAKKworICAgIFVwZGF0ZWQgUnVzc2lhbiB0cmFuc2xhdGlvbnMKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICA1ICstCisgZHNlbGVjdC9wby9ydS5wbyB8ICAgNjEgKy0tLS0tLS0KKyBwby9ydS5wbyAgICAgICAgIHwgICAzNCArKy0tLQorIHNjcmlwdHMvcG8vcnUucG8gfCAgNDYwICsrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDQgZmlsZXMgY2hhbmdlZCwgMjMxIGluc2VydGlvbnMoKyksIDMyOSBkZWxldGlvbnMoLSkKKworY29tbWl0IDQxZDU2YjM1MGIxOTZhYWNhMDlkMzkwMTc0MWFhYWRhMTEzOGU4NjIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gQXVnIDE2IDE4OjIwOjUzIDIwMDkgKzAyMDAKKworICAgIGRzZWxlY3Q6IFVzZSB0b3BfYnVpbGRkaXIgaW5zdGVhZCBvZiB0b3Bfc3JjZGlyIHRvIGNyZWF0ZSBjdXJrZXlzLmgKKyAgICAKKyAgICBUaGUgPGNvbmZpZy5oPiBmaWxlIGlzIGdlbmVyYXRlZCBpbiB0aGUgdG9wX2J1aWxkZGlyLCBhbmQgdGhlcmUncworICAgIG5vdGhpbmcgd2UgbmVlZCBmcm9tIHRoZSB0b3Bfc3JjZGlyLgorCisgZHNlbGVjdC9NYWtlZmlsZS5hbSB8ICAgIDIgKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDAwYjFkOWRjZTcxZmY3YjczZWNiYTNiMzhkNjVjNGE5YWNlN2E5ZGEKK0F1dGhvcjogUmFwaGFlbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBNYXkgMTUgMTg6MDk6MjUgMjAwOSArMDIwMAorCisgICAgZHBrZy1zb3VyY2UvZHBrZy1nZW5jaGFuZ2VzOiBzcGxpdCBsb25nIEJpbmFyeTogZmllbGQgdmFsdWVzCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICB8ICAgIDIgKysKKyBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbCB8ICAgIDIgKysKKyBzY3JpcHRzL2Rwa2ctc291cmNlLnBsICAgICB8ICAgIDIgKysKKyAzIGZpbGVzIGNoYW5nZWQsIDYgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDIyMDQ5ZTE1YzliODQ0ZjNlYmVmNDgwZGZlYmM1ODhmYmQ1YTMwMWUKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gQXVnIDE2IDE1OjQwOjExIDIwMDkgKzAyMDAKKworICAgIGRlYi1leHRyYS1vdmVycmlkZSg1KTogbmV3IG1hbnVhbCBwYWdlCisgICAgCisgICAgRmFjdG9yaXplIGRlc2NyaXB0aW9uIG9mIHRoZSBleHRyYSBvdmVycmlkZSBmaWxlIGluIGEgbmV3IG1hbnVhbCBwYWdlLgorICAgIFJlZmVyIHRvIHRoaXMgbWFucGFnZSBpbiBkcGtnLXNjYW5wYWNrYWdlcygxKSBhbmQgZHBrZy1zY2Fuc291cmNlcygxKS4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICB8ICAgIDIgKysKKyBtYW4vTWFrZWZpbGUuYW0gICAgICAgICAgfCAgICAxICsKKyBtYW4vZGViLWV4dHJhLW92ZXJyaWRlLjUgfCAgIDQwICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKKyBtYW4vZHBrZy1zY2FucGFja2FnZXMuMSAgfCAgICA2ICsrKystLQorIG1hbi9kcGtnLXNjYW5zb3VyY2VzLjEgICB8ICAgIDYgKysrKy0tCisgbWFuL3BvL3BvNGEuY2ZnICAgICAgICAgIHwgICAgNSArKysrKworIDYgZmlsZXMgY2hhbmdlZCwgNTYgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKKworY29tbWl0IGI2MzZkZTFhM2U5YjFlMTMxYzA1NWMyYzBlOGJjZDEwOTc3MzY5MjUKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gQXVnIDE2IDE1OjE2OjU4IDIwMDkgKzAyMDAKKworICAgIGRwa2ctc2NhbnNvdXJjZXM6IGltcGxlbWVudCAtLWV4dHJhLW92ZXJyaWRlCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgfCAgICAxICsKKyBtYW4vZHBrZy1zY2Fuc291cmNlcy4xICAgICAgfCAgICA0ICsrKysKKyBzY3JpcHRzL2Rwa2ctc2NhbnNvdXJjZXMucGwgfCAgIDMxICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKKyAzIGZpbGVzIGNoYW5nZWQsIDM2IGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBkMmQyNGU4YjJmOTAxZWNkNzZjZWI3MzNiMmNlYTk2M2ViOTM1YjA0CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIEF1ZyAxNiAxMzo0Nzo1OCAyMDA5ICswMjAwCisKKyAgICBkcGtnLXNjYW5wYWNrYWdlczogcmVuYW1lIC0tZXh0cmFvdmVycmlkZSBpbnRvIC0tZXh0cmEtb3ZlcnJpZGUKKyAgICAKKyAgICBBbHNvIGZpeCB0aGUgaGVscCBvdXRwdXQgdG8gYmUgcHJvcGVybHkgaW5kZW50ZWQgYW5kIGZpeAorICAgIGxvYWRfZXh0cmFfb3ZlcnJpZGUoKSB0byB1c2UgaXRzIHBhcmFtZXRlci4KKworIG1hbi9kcGtnLXNjYW5wYWNrYWdlcy4xICAgICAgfCAgICAyICstCisgbWFuL3BvL2RlLnBvICAgICAgICAgICAgICAgICB8ICAgIDQgKystLQorIHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGwgfCAgIDE0ICsrKysrKysrLS0tLS0tCisgMyBmaWxlcyBjaGFuZ2VkLCAxMSBpbnNlcnRpb25zKCspLCA5IGRlbGV0aW9ucygtKQorCitjb21taXQgNWU4M2QwNTRiMWE3OTBkNDliYzg4ZTNkZDBlOGZiYjg3MmQ1MWQ4ZgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBBdWcgMTYgMTU6MDY6MDggMjAwOSArMDIwMAorCisgICAgVXNlIGJhY2t0aWNrcyBpbnN0ZWFkIG9mIG5vbi1wb3J0YWJsZSBtYWtlICQoc2hlbGwgLi4uKSBmdW5jdGlvbgorICAgIAorICAgIFRoZSBiYWNrdGlja3MgYXJlIHRyZWF0ZWQgbGlrZSB0ZXh0LCB1bnRpbCB0aGUgc2hlbGwgZXhwYW5kcyB0aGVtLCB0aHVzCisgICAgbWFraW5nIHRoaXMgc29sdXRpb24gcG9ydGFibGUuCisKKyBzY3JpcHRzL01ha2VmaWxlLmFtIHwgICAgMiArLQorIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgZmUyOWFmMjA2YmUzOWVkYWJjNTEwNzMzMDc0NWI5N2RhN2NhZGJiNworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBBdWcgMTYgMTU6MDA6NTEgMjAwOSArMDIwMAorCisgICAgQ2FzdCBmaWVsZCB3aWR0aCBmdW5jdGlvbiBhcmd1bWVudHMgdG8gaW50CisKKyBsaWIvZHBrZy9maWVsZHMuYyB8ICAgIDIgKy0KKyBzcmMvbWFpbi5jICAgICAgICB8ICAgIDMgKystCisgMiBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA1YjQ0ZTNkZTdhMGNjNjQwYWVmZTFjNWU1ZTQyODU3ZjU2ZjJlOGQ3CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIEF1ZyAxNiAxNDo1NDozMiAyMDA5ICswMjAwCisKKyAgICBTZXQgYWN0aW9uX3RvZG8gYXMgdm9sYXRpbGUgdG8gYXZvaWQgcG9zc2libGUgY2xvYmJlcmluZyBvbiBsb25nam1wCisKKyBzcmMvcGFja2FnZXMuYyB8ICAgIDIgKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDMxODQzYWFmYTc5MTJjOWZjNTkxZGRjZDhlMGZkMmU3OTMzMWUyOGEKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gQXVnIDE2IDE0OjUzOjAyIDIwMDkgKzAyMDAKKworICAgIFVzZSBBQ18qX0lGRUxTRSBpbnN0ZWFkIG9mIG9ic29sZXRlIEFDX1RSWV8qIG1hY3JvcworCisgbTQvY29tcGlsZXIubTQgfCAgIDE1ICsrKysrKysrLS0tLS0tLQorIG00L2Z1bmNzLm00ICAgIHwgICAxNyArKysrKysrKystLS0tLS0tLQorIG00L3R5cGVzLm00ICAgIHwgICAgNyArKy0tLS0tCisgMyBmaWxlcyBjaGFuZ2VkLCAxOSBpbnNlcnRpb25zKCspLCAyMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDBhOGVkNTYwY2MzOGY0N2MwODUwMzg1Nzk3N2VhNWNiOTc1M2NhMDAKK0F1dGhvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitEYXRlOiAgIFN1biBBdWcgMTYgMDk6Mjg6MzcgMjAwOSArMDIwMAorCisgICAgVXBkYXRlIGdlcm1hbiB0cmFuc2xhdGlvbiBvZiBtYW51YWwgcGFnZXMKKyAgICAKKyAgICBVcGRhdGUgdG8gMTYxOXQuCisKKyBtYW4vcG8vZGUucG8gfCAgIDUwICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystCisgMSBmaWxlcyBjaGFuZ2VkLCA0OSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgNTdhYWZkNjgyYjU5N2M4ZDRhNDYyNTAyNjQ0ZTQ3YmI3NWU0NmY1YQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBBdWcgMTUgMjI6MzI6MjYgMjAwOSArMDIwMAorCisgICAgRG8gbm90IG1hdGNoIHNwYXJjIGFyY2hpdGVjdHVyZSB3aXRoIHNwYXJjNjQtKi0qIHRyaXBsZXQKKyAgICAKKyAgICBBIHNwYXJjNjQgdXNlcmxhbmQgbmVlZHMgYSBkaWZmZXJlbnQgRGViaWFuIGFyY2hpdGVjdHVyZSwgYXMgZWFjaAorICAgIEdOVSB0cmlwbGV0IHNob3VsZCBtYXBzIDE6MSB0byBhIERlYmlhbiBhcmNoaXRlY3R1cmUuCisKKyBjcHV0YWJsZSAgICAgICAgIHwgICAgMiArLQorIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAxICsKKyAyIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGVmYWZlNzcyNGFhYjQ0ODRiM2RmNDI0ZThkM2I3ZmMwMjcyYzlkY2MKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgQXVnIDE1IDIyOjMwOjQxIDIwMDkgKzAyMDAKKworICAgIFVzZSBBQ19VU0VfU1lTVEVNX0VYVEVOU0lPTlMgaW5zdGVhZCBvZiBkZXByZWNhdGVkIEFDX0dOVV9TT1VSQ0UKKyAgICAKKyAgICBCdW1wIG1pbmltdW0gcmVxdWlyZWQgYXV0b2NvbmYgdG8gMi42MC4KKworIGNvbmZpZ3VyZS5hYyB8ICAgIDQgKystLQorIDEgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgOTNmMDQzZTY5ZjFkNDQ5MTNhMWVjMjY1ZWVjZTcwOTlhZTNkYjg4NAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBBdWcgMTUgMjA6Mzg6NDggMjAwOSArMDIwMAorCisgICAgQ2hlY2sgZm9yIGhvc3Qgc3lzdGVtIGluc3RlYWQgb2YgdGFyZ2V0IGF0IGJ1aWxkIHRpbWUKKyAgICAKKyAgICBVc2luZyBBQ19DQU5PTklDQUxfVEFSR0VUIGlzIG5lZWRlZCB3aGVuIHdhbnRpbmcgdG8gc3VwcG9ydCBidWlsZGluZworICAgIGNyb3NzLWNvbXBpbGluZyBzb2Z0d2FyZS4gQnV0IHRoZXJlJ3MgdG9vIG1hbnkgYXNzdW1wdGlvbnMgaW4gZHBrZyB0aGF0CisgICAgdGhlIGhvc3Qgc3lzdGVtIGluIGRwa2ctZGV2IGlzIGdvaW5nIHRvIG1hdGNoIHRoZSBidWlsZCBzeXN0ZW0uCisKKyBtNC9hcmNoLm00IHwgICAxOCArKysrKysrKystLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDkgaW5zZXJ0aW9ucygrKSwgOSBkZWxldGlvbnMoLSkKKworY29tbWl0IDkzNGE5N2U2ZWY3NDQ1MDFkNDhjZmQzOWZhMGEzOGU3MTViMmJkZTEKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgQXVnIDE1IDIwOjIzOjAzIDIwMDkgKzAyMDAKKworICAgIFVzZSBBQ19DQU5PTklDQUxfVEFSR0VUIGluc3RlYWQgb2YgZGVwcmVjYXRlZCBBQ19DQU5PTklDQUxfU1lTVEVNCisKKyBtNC9hcmNoLm00IHwgICAgMiArLQorIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgYmU2Y2QwMmFlZDhkODYyMzlhMGYzMDBmNzFkZWU5MWY4OWM3YWIxYQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBBdWcgMTUgMjA6MjE6MTkgMjAwOSArMDIwMAorCisgICAgRG8gbm90IGRpcmVjdGx5IHVzZSBBQ19DQU5PTklDQUxfU1lTVEVNIGZyb20gY29uZmlndXJlLmFjCisgICAgCisgICAgVGhlIG1hY3JvIGlzIG9ubHkgbmVlZGVkIGJlY2F1c2Ugb2YgRFBLR19BUkNISVRFQ1RVUkUgd2hpY2ggaXQgYWxyZWFkeQorICAgIHJlcXVpcmVzLgorCisgY29uZmlndXJlLmFjIHwgICAgMSAtCisgMSBmaWxlcyBjaGFuZ2VkLCAwIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA1OTIxYTgyNzYwM2RiYzkzOGY0YjI4M2YwMDA4ZTZkOGE4ODE3MmJjCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IEF1ZyAxNSAyMDoxNTo0NyAyMDA5ICswMjAwCisKKyAgICBVc2UgQU1fQ1BQRkxBR1MgaW5zdGVhZCBvZiBkZXByZWNhdGVkIElOQ0xVREVTIGluIE1ha2VmaWxlLmFtIGZpbGVzCisKKyBkcGtnLWRlYi9NYWtlZmlsZS5hbSAgICAgIHwgICAgMiArLQorIGRwa2ctc3BsaXQvTWFrZWZpbGUuYW0gICAgfCAgICAyICstCisgZHNlbGVjdC9NYWtlZmlsZS5hbSAgICAgICB8ICAgIDIgKy0KKyBsaWIvY29tcGF0L01ha2VmaWxlLmFtICAgIHwgICAgMiArLQorIGxpYi9kcGtnL01ha2VmaWxlLmFtICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvdGVzdC9NYWtlZmlsZS5hbSB8ICAgIDIgKy0KKyBzcmMvTWFrZWZpbGUuYW0gICAgICAgICAgIHwgICAgMiArLQorIHV0aWxzL01ha2VmaWxlLmFtICAgICAgICAgfCAgICAyICstCisgOCBmaWxlcyBjaGFuZ2VkLCA4IGluc2VydGlvbnMoKyksIDggZGVsZXRpb25zKC0pCisKK2NvbW1pdCBlZjUxYzE1NGIwYzRkMzdjN2M2NzI2Y2U1YjRlOTAzMzk3Yjc2YzI2CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IEF1ZyAxNSAyMTo0NToyMCAyMDA5ICswMjAwCisKKyAgICBkcGtnLWFyY2hpdGVjdHVyZTogZmluaXNoIHN1cHBvcnQgb2YgREVCX3tIT1NULEJVSUxEfV9BUkNIX3tCSVRTLEVORElBTn0KKyAgICAKKyAgICBFbmhhbmNlZCBjcHV0YWJsZSB0byBkZXNjcmliZSB0aGUgbmV3IGNvbHVtbnMuCisgICAgCisgICAgTGV0IGRwa2ctZGV2IGRlcGVuZCBvbiBkcGtnICg+PSAxLjE1LjQpIHRvIGVuc3VyZSB0aGF0IHdlIGhhdmUgYW4gdXBkYXRlZAorICAgIGNwdXRhYmxlIChhbmQgc28gdGhhdCBhIHZlcnNpb25lZCBidWlsZC1kZXBlbmRlbmN5IG9uIGRwa2ctZGV2IGlzIGVub3VnaCB0byB1c2UKKyAgICB0aGlzIG5ldyBmZWF0dXJlKS4KKyAgICAKKyAgICBEb2N1bWVudCB0aGUgbmV3IHZhcmlhYmxlcyBpbiB0aGUgbWFudWFsIHBhZ2UgZHBrZy1hcmNoaXRlY3R1cmUoMSkuCisKKyBjcHV0YWJsZSAgICAgICAgICAgICAgICAgICAgIHwgICAgMiArKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgICAgfCAgICA3ICsrKysrKysKKyBkZWJpYW4vY29udHJvbCAgICAgICAgICAgICAgIHwgICAgMiArLQorIG1hbi9kcGtnLWFyY2hpdGVjdHVyZS4xICAgICAgfCAgIDIxICsrKysrKysrKysrKysrKystLS0tLQorIHNjcmlwdHMvZHBrZy1hcmNoaXRlY3R1cmUucGwgfCAgICA4ICsrKystLS0tCisgNSBmaWxlcyBjaGFuZ2VkLCAzMCBpbnNlcnRpb25zKCspLCAxMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDEyNmZjYWFjMWVmZjliNWFlNTJlOWFiODBjMTU4ZmQzYWFmMjE0ZDYKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gSnVuIDI4IDA5OjEzOjEwIDIwMDkgKzAyMDAKKworICAgIGRwa2ctYXJjaGl0ZWN0dXJlOiBBZGQgc3VwcG9ydCBmb3IgYml0cyBhbmQgZW5kaWFubmVzcyB2YXJpYWJsZXMKKyAgICAKKyAgICBBZGQgbmV3IERFQl8oSE9TVHxCVUlMRClfQVJDSF8oQklUU3xFTkRJQU5ORVNTKSB2YXJpYWJsZXMgdG8gZWFzZSB3b3JrCisgICAgZm9yIHBvcnRlcnMuCisKKyBjcHV0YWJsZSAgICAgICAgICAgICAgICAgICAgIHwgICA0NCArKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBzY3JpcHRzL0Rwa2cvQXJjaC5wbSAgICAgICAgIHwgICAxOCArKysrKysrKysrKysrKysrLQorIHNjcmlwdHMvZHBrZy1hcmNoaXRlY3R1cmUucGwgfCAgICA2ICsrKysrCisgMyBmaWxlcyBjaGFuZ2VkLCA0NSBpbnNlcnRpb25zKCspLCAyMyBkZWxldGlvbnMoLSkKKworY29tbWl0IDg2ODIzZDU3OTJhZjgzMjgxMDdjM2Q4NmU0ODZkMmNmMzczZGExMjgKK0F1dGhvcjogSWFuIEphY2tzb24gPGlhbkBkYXZlbmFudC5ncmVlbmVuZC5vcmcudWs+CitEYXRlOiAgIFNhdCBBdWcgMTUgMTI6NDI6MDMgMjAwOSArMDIwMAorCisgICAgZHBrZzogY2hhbmdlIGJlaGF2aW91ciBvZiAtLW1lcmdlLWF2YWlsCisgICAgCisgICAgV2l0aCB0aGlzIGNoYW5nZSwgZHBrZyAtLW1lcmdlLWF2YWlsIGRvZXMgbm90IHVwZGF0ZSBhIHBhY2thZ2UncworICAgIGluZm9ybWF0aW9uIGlmIHRoZSB2ZXJzaW9uIHByb3ZpZGVkIGlzIG9sZGVyIHRoYW4gdGhlIG9uZSBhbHJlYWR5IGxpc3RlZAorICAgIGluIHRoZSBhdmFpbGFibGUgZmlsZS4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICB8ICAgIDQgKysrKworIGxpYi9kcGtnL2Rwa2ctZGIuaCB8ICAgIDMgKystCisgbGliL2Rwa2cvcGFyc2UuYyAgIHwgICAgNSArKysrKworIHNyYy91cGRhdGUuYyAgICAgICB8ICAgIDMgKystCisgNCBmaWxlcyBjaGFuZ2VkLCAxMyBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgMzMzZjQxMzA0ZTYxMGExYjJhNDRiNzE1YzYzNTk3ODM2MzJhNzNjMQorQXV0aG9yOiBIZWxnZSBLcmV1dHptYW5uIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KK0RhdGU6ICAgU2F0IEF1ZyAxNSAxODoxNjoxNSAyMDA5ICswMjAwCisKKyAgICBVcGRhdGUgZ2VybWFuIHRyYW5zbGF0aW9uIG9mIG1hbnVhbCBwYWdlcworICAgIAorICAgIFVwZGF0ZSB0byAxNjExdC4KKworIG1hbi9wby9kZS5wbyB8ICAgMzAgKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyNiBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQorCitjb21taXQgYTA0MTA5ZjUzYmNmZjVlNTNlY2U5ODNhN2ZjOTVjMDAwYjg2YWQ2ZgorQXV0aG9yOiBIZWxnZSBLcmV1dHptYW5uIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KK0RhdGU6ICAgU2F0IEF1ZyAxNSAxNzo1MzoxOCAyMDA5ICswMjAwCisKKyAgICBTb3J0IGxhbmd1YWdlIHVwZGF0ZXMgYnkgYWxwaGFiZXQuCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgNCArKy0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBiNmI2N2ZhNTRiNTQzNjRkMjQxMGFkNjUzZmQzYjc3MDhhNGJkMTU5CitBdXRob3I6IEhlbGdlIEtyZXV0em1hbm4gPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorRGF0ZTogICBTYXQgQXVnIDE1IDE3OjUxOjU4IDIwMDkgKzAyMDAKKworICAgIFVwZGF0ZSBnZXJtYW4gc2NyaXB0cyB0cmFuc2xhdGlvbgorICAgIAorICAgIFVwZGF0ZSB0byA0NzZ0LgorCisgc2NyaXB0cy9wby9kZS5wbyB8ICAgNjAgKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDMxIGluc2VydGlvbnMoKyksIDI5IGRlbGV0aW9ucygtKQorCitjb21taXQgMzRkYjMwZTFkMjBlYjY5NTNkODIyNjc3ZTg0NmZkZjQ1ZmQzZDM2MQorQXV0aG9yOiBIZWxnZSBLcmV1dHptYW5uIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KK0RhdGU6ICAgU2F0IEF1ZyAxNSAxNzo1MDoyMiAyMDA5ICswMjAwCisKKyAgICBBZGQgbWlzc2luZyBmdWxsIHN0b3AKKworIHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGwgfCAgICAyICstCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA2Yzc4NTU5NWQxODlmNjVhNTkyODQ3OTZhOWIxZjYwZjE2Njg2ZTg1CitBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEF1ZyAxNCAyMTo0MTo0NCAyMDA5ICswMjAwCisKKyAgICBBZGQgYSBkcGtnIGNyb24uZGFpbHkgc2NyaXB0IHRvIGJhY2t1cCB0aGUgc3RhdHVzIGZpbGUKKyAgICAKKyAgICBDcmVhdGUgL2V0Yy9jcm9uLmRhaWx5L2Rwa2cgdG8gaGFuZGxlIHRoZSBiYWNrdXAgb2YgL3Zhci9saWIvZHBrZy9zdGF0dXMKKyAgICBpbiAvdmFyL2JhY2t1cHMuIFRoaXMgaXMgdGFrZW4gb3V0IG9mIHRoZSBjcm9uIHBhY2thZ2UgYW5kIG5lZWQgbm8KKyAgICBjb25mbGljdHMvYnJlYWtzIGFzIHRoZSBjb2RlIGRvZXMgbm90aGluZyBpZiB0aGUgY3VycmVudCBzdGF0dXMgZmlsZSBpcworICAgIGFscmVhZHkgYmFja3VwcGVkLgorICAgIAorICAgIE1vdmluZyBpdCBvdXQgb2YgdGhlIGNyb24gcGFja2FnZSBtYWtlcyBpdCBtb3JlIHZpc2libGUgZm9yIHVzZXJzCisgICAgaW5zcGVjdGluZyB0aGUgY29udGVudCBvZiB0aGUgZHBrZyBwYWNrYWdlLgorICAgIAorICAgIEJhc2VkLW9uLXBhdGNoLWJ5OiBMZW8gJ2Nvc3RlbGEnIEFudHVuZXMgPGNvc3RlbGFAZGViaWFuLm9yZz4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgfCAgICA1ICsrKysrCisgZGViaWFuL2Rwa2cuY3Jvbi5kYWlseSB8ICAgMTAgKysrKysrKysrKworIGRlYmlhbi9ydWxlcyAgICAgICAgICAgfCAgICAzICsrLQorIG1hbi9kcGtnLjEgICAgICAgICAgICAgfCAgICAzICsrKworIDQgZmlsZXMgY2hhbmdlZCwgMjAgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGQzMTA5NGI1NTFlYzBlN2VlYTVlMzg5ZjY3OTFmZjgzNWVhYjY3NjAKK0F1dGhvcjogSnVsaWVuIENyaXN0YXUgPGpjcmlzdGF1QGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBBdWcgNyAxNzo0OTozMCAyMDA5ICswMjAwCisKKyAgICBkcGtnLWdlbnN5bWJvbHMoMSk6IGFkZCBrZnJlZWJzZC1hbWQ2NCB0byB0aGUgIjY0Yml0IGFyY2hlcyIgc3ltYm9sIGV4YW1wbGUKKyAgICAKKyAgICBUaGlzIG1ha2VzIGl0IGxlc3MgbGlrZWx5IHRoYXQgdGhpcyBhcmNoIHdpbGwgYmUgZm9yZ290dGVuIHdoZW4KKyAgICBtYWludGFpbmVycyBjb3B5L3Bhc3RlIGZyb20gdGhlIGV4YW1wbGUuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgfCAgICAyICsrCisgbWFuL2Rwa2ctZ2Vuc3ltYm9scy4xIHwgICAgNiArKystLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDUgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworY29tbWl0IDhhMjhiZTRmMjUxNjY2MjRhNDU1MTM0MTcxNTE1YjNhMGZjMzY3NzQKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgQXVnIDE0IDE5OjI3OjMxIDIwMDkgKzAyMDAKKworICAgIGRwa2ctc2NhbnBhY2thZ2VzKDEpOiBjb3JyZWN0bHkgcmVmZXIgdG8gdGhlIGRlYi1vdmVycmlkZXMgbWFudWFsIHBhZ2UKKworIG1hbi9kcGtnLXNjYW5wYWNrYWdlcy4xIHwgICAgMyArKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDEyMTE5N2ExZWZkYjRlMTlkOGIwOWNkY2VhZWE2OTI2MmYxZGQ0NmIKK0F1dGhvcjogUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgQXVnIDE0IDE5OjI1OjA3IDIwMDkgKzAyMDAKKworICAgIGRwa2ctc2NhbnBhY2thZ2VzOiBhZGQgc3VwcG9ydCBmb3IgZXh0cmEgb3ZlcnJpZGUgZmlsZQorICAgIAorICAgIEJhc2VkLW9uLXBhdGNoLWJ5OiBSb2JlcnQgTWlsbGFuIDxybWhAYXliYWJ0dS5jb20+CisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgIHwgICAgMiArKworIG1hbi9kcGtnLXNjYW5wYWNrYWdlcy4xICAgICAgfCAgICA0ICsrKysKKyBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsIHwgICAyOSArKysrKysrKysrKysrKysrKysrKysrKysrKystLQorIDMgZmlsZXMgY2hhbmdlZCwgMzMgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IGI5NzQ1MTg1NmRlY2U1N2QyZmJhN2QzYTdkZGExYTYzMjk3Yjc4NzQKK0F1dGhvcjogU3RldmUgUGV0cnV6emVsbG8gPGRsaXN0QGJsdWV3aW4uY2g+CitEYXRlOiAgIEZyaSBBdWcgMTQgMTc6MjE6MjEgMjAwOSArMDIwMAorCisgICAgbWFuOiBGaXggdHlwbywgd3Jvbmcgc3BhY2UKKworIG1hbi9wby9mci5wbyB8ICAgIDQgKystLQorIDEgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgODcwZGIzZTc5MGYxODc0NjQ3MTNhOTdjMGEwMGI3MmI2MDc0Nzk2MworQXV0aG9yOiBTdmVuIEpvYWNoaW0gPHN2ZW5qb2FjQGdteC5kZT4KK0RhdGU6ICAgRnJpIEF1ZyAxNCAxMDowNTo1NCAyMDA5ICswMjAwCisKKyAgICB1cGRhdGUtYWx0ZXJuYXRpdmVzOiBhZGQgYSBtaXNzaW5nIG1hcmsgZm9yIHRyYW5zbGF0aW9uCisKKyBzY3JpcHRzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMucGwgfCAgICAyICstCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBkODQzMmRkZTlmMzkwMTM3MGUwZmY3MmI1YmVmMmRkYTZlMThkNzhmCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IEF1ZyAxMyAyMToyNDozNSAyMDA5ICswMjAwCisKKyAgICBVc2UgTUQ1SEFTSExFTiBpbnN0ZWFkIG9mIGxpdGVyYWxzCisKKyBUT0RPICAgICAgICAgICAgICAgfCAgICAxIC0KKyBkcGtnLXNwbGl0L2luZm8uYyAgfCAgICA0ICsrLS0KKyBkcGtnLXNwbGl0L3F1ZXVlLmMgfCAgIDEyICsrKysrKystLS0tLQorIGxpYi9kcGtnL21saWIuYyAgICB8ICAgIDIgKy0KKyA0IGZpbGVzIGNoYW5nZWQsIDEwIGluc2VydGlvbnMoKyksIDkgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyZTdjYzNmOTU4ZWVmY2E4MWM2OGE3NGI4OTYyNzlmZGQxMzNkOTgxCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IEF1ZyAxMyAyMTowOTo0OSAyMDA5ICswMjAwCisKKyAgICBSZW1vdmUgZG91YmxlIHNsYXNoIGluIGRhdGFiYXNlIHBhdGggY3JlYXRpb24KKyAgICAKKyAgICBWaXNpYmxlIHRvIHRoZSB1c2VyIGluIHNvbWUgZXJyb3IgY29uZGl0aW9ucy4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAyICsrCisgc3JjL3Byb2Nlc3NhcmMuYyB8ICAgIDIgKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDE1Y2FkMmRjNjM2ZTdlZmE4NzExMDRlNTRkZTJjMjI1ZDM2NzZjNWQKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgQXVnIDExIDIwOjE5OjUwIDIwMDkgKzAyMDAKKworICAgIEFkZCBmb3Jnb3R0ZW4gYnVnIGNsb3N1cmUKKyAgICAKKyAgICBDbG9zZXM6ICM0NzIyMDgKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAyICstCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBlM2VmOTkwZjgzYTc0MTMwMjQ2YjQzOWIyZTI1N2UzM2MwMTc3NThhCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIEF1ZyA5IDE0OjMzOjM4IDIwMDkgKzAyMDAKKworICAgIGRwa2c6IE9uIGZpbGUgY29uZmxpY3RzIHByaW50IHRoZSB2ZXJzaW9uIG9mIHRoZSBjb25mbGljdGVkIHBhY2thZ2UKKyAgICAKKyAgICBNYWtlcyBpdCBlYXNpZXIgdG8gcmVwb3J0IGJ1Z3MsIHdpdGhvdXQgbmVlZGVkIHRvIGFkZGl0aW9uYWxseSBjaGVjaworICAgIHRoZSBpbnN0YWxsZWQgdmVyc2lvbiBvZiB0aGUgY29uZmxpY3RlZCBwYWNrYWdlLgorICAgIAorICAgIENsb3NlczogIzU0MDAxOQorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDIgKysKKyBzcmMvYXJjaGl2ZXMuYyAgIHwgICAxNiArKysrKysrKysrKy0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAxMyBpbnNlcnRpb25zKCspLCA1IGRlbGV0aW9ucygtKQorCitjb21taXQgOWU0MGM0YTE5YmMxOTNkMDdjOTM0ZWFkMWNjMDQ1NDIyNjY4ODk2OQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBBdWcgNyAxMzo1Nzo1NiAyMDA5ICswMjAwCisKKyAgICBGaXggdHlwbyBpbiBTd2VkaXNoIG1hbnVhbCB0cmFuc2xhdGlvbgorICAgIAorICAgIFRoaXMgd2FzIHByb2R1Y2luZyBhIGJ1aWxkIGZhaWx1cmUuCisgICAgCisgICAgSW50cm9kdWNlZCBpbiBjb21taXQgZTI3NzIxY2M4YWUzMzZkZmYxYzMxMzliYjY3MzZmMmI0MDU5NzgwMy4KKworIG1hbi9wby9zdi5wbyB8ICAgIDQgKystLQorIDEgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgMmNiZTIzZTQyOTViNzY5MzllNThhODQ1NDcxOTExNjE4NjFkMzZlZAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBBdWcgNSAxNjo0MDo0NyAyMDA5ICswMjAwCisKKyAgICBCdW1wIGluc3RhbGwtaW5mbyByZWxhdGVkIHZlcnNpb25lZCBCcmVha3MgZm9yIGtvbnF1ZXJvcgorICAgIAorICAgIExhc3QgdmVyc2lvbiBvZiBrb25xdWVyb3IgYmVmb3JlIHRoZSBmaXggaXMgNDo0LjIuOTYtMSwgdGh1cyBjaGFuZ2UgdGhlCisgICAgZGVwZW5kZW5jeSBhY2NvcmRpbmdseS4KKworIGRlYmlhbi9jb250cm9sIHwgICAgMiArLQorIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgZTI3NzIxY2M4YWUzMzZkZmYxYzMxMzliYjY3MzZmMmI0MDU5NzgwMworQXV0aG9yOiBQZXRlciBLcmVmdGluZyA8cGV0ZXJrQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBBdWcgMyAyMDozMDoyMiAyMDA5ICswMTAwCisKKyAgICBVcGRhdGUgU3dlZGlzaCB0cmFuc2xhdGlvbi4KKyAgICAKKyAgICBwby9zdi5wbzogVXBkYXRlZCB0byA5NzF0MGYwdS4KKyAgICBtYW4vcG8vc3YucG86IFVwZGF0ZSB0byAxNjA4dDBmMHUuCisgICAgc2NyaXB0cy9wby9zdi5wbzogVXBkYXRlIHRvIDQ3NnQwZjB1LgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDMgKworIG1hbi9wby9zdi5wbyAgICAgfCAgIDQ1ICstCisgcG8vc3YucG8gICAgICAgICB8IDE4NDEgKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgc2NyaXB0cy9wby9zdi5wbyB8ICAyNDUgKysrKy0tLS0KKyA0IGZpbGVzIGNoYW5nZWQsIDEwMzIgaW5zZXJ0aW9ucygrKSwgMTEwMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDI4YThlYzliYTA4MmE2ZWViYTllZDg1M2QwNDNiZjE3NjM5ZDAzOTkKK0F1dGhvcjogU2ltb24gUmljaHRlciA8c2pyQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBBdWcgMiAxODowNjo1NCAyMDA5ICswMjAwCisKKyAgICBBZGQgdUNsaW51eCBzdXBwb3J0IHRvIG9zdGFibGUgYW5kIHRyaXBsZXR0YWJsZQorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDIgKysKKyBvc3RhYmxlICAgICAgICAgIHwgICAgMiArKworIHRyaXBsZXR0YWJsZSAgICAgfCAgICAyICsrCisgMyBmaWxlcyBjaGFuZ2VkLCA2IGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA5ZDAxNWY0ZmI3MWNjMTNjOTkyMGM4ZDYyZjY0ZjNjMmYwOTczODlhCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIEF1ZyAyIDE4OjA0OjAxIDIwMDkgKzAyMDAKKworICAgIEFkZCB1Q2xpYmMgTGludXggc3VwcG9ydCB0byBvc3RhYmxlIGFuZCB0cmlwbGV0dGFibGUKKyAgICAKKyAgICBDbG9zZXM6ICM0NTU1MDEKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAxICsKKyBvc3RhYmxlICAgICAgICAgIHwgICAgMiArKworIHRyaXBsZXR0YWJsZSAgICAgfCAgICAyICsrCisgMyBmaWxlcyBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAxNzM2NTJlNzVmYWQwMDRjNDI5MDY2MDhmZTBmZjQ1NTZiZTI5YjE5CitBdXRob3I6IEhlbGdlIEtyZXV0em1hbm4gPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorRGF0ZTogICBUaHUgSnVsIDMwIDE4OjM4OjU3IDIwMDkgKzAyMDAKKworICAgIEZpeCBlcnJvcnMgaW4gYSBwYXJhZ3JhcGggaW4gdGhlIEdlcm1hbiBtYW4gcGFnZSB0cmFuc2xhdGlvbi4KKworIG1hbi9wby9kZS5wbyB8ICAgIDggKysrKy0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKKworY29tbWl0IDM3YTc0MDdkMDQwZTVlNmMzM2ViYWQ2YzAyOWNjMzZkMmEyNzY4ZDUKK0F1dGhvcjogUmFwaGFlbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBKdWwgMjUgMTU6NDk6MzUgMjAwOSArMDIwMAorCisgICAgdXBkYXRlLWFsdGVybmF0aXZlczogZml4IGEgd2FybmluZyBtZXNzYWdlCisgICAgCisgICAgTWVudGlvbiB0aGUgY29ycmVjdCBzbGF2ZSBsaW5rIHRoYXQgY2FuJ3QgYmUgaW5zdGFsbGVkIGR1ZSB0byBhCisgICAgY29uZmxpY3RpbmcgZmlsZSBpbnN0ZWFkIG9mIHF1b3RpbmcgdGhlIG1hc3RlciBsaW5rLgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICAgIHwgICAgMiArKworIHNjcmlwdHMvdXBkYXRlLWFsdGVybmF0aXZlcy5wbCB8ICAgIDIgKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDc0YjViOTJlYWVkOTU2NjU2NWY1MjJiZDg5NjE4N2VkMjkyMDMxMGMKK0F1dGhvcjogUmFwaGFlbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBKdWwgMjUgMDA6NDg6MTQgMjAwOSArMDIwMAorCisgICAgRml4IGFwcGx5X3BhdGNoZXMoKSBmdW50aW9uIG9mIDMuMCAocXVpbHQpIGZvcm1hdCB0byBwcm9wZXJseSBza2lwIGF1dG8gcGF0Y2gKKyAgICAKKyAgICBXaGVuIHF1aWx0IHdhcyB1c2VkLCBpdCB3YXMgYXBwbHlpbmcgdGhlIGF1dG9tYXRpYyBwYXRjaCBldmVuCisgICAgd2hlbiAkc2tpcF9hdXRvIHdhcyBzZXQgdG8gMS4gVGhpcyBidWcgd2FzIGludHJvZHVjZWQgd2hpbGUgZml4aW5nCisgICAgYnVnICM1MTg0NTMgKGNvbW1pdCBlYTE1MzBmZTQ1YzhiMWFkNjFkOTFjMDc5MWM1M2VjZjM2Mzg5OWJmKS4KKworIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbSB8ICAgIDQgKystLQorIDEgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgY2M2ZDNhNmIxYzU5MTBmYjg5Zjg1NjU5YmFmYmE4MDgxNjk3NTg1OQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBKdWwgMjIgMTg6MTE6MzkgMjAwOSArMDIwMAorCisgICAgcG86IENoYW5nZSBwYXRoIGZvciBsaWJkcGtnIGZpbGVzIGluIFBPVEZJTEVTIHRvIGxpYi9kcGtnLworICAgIAorICAgIE1pc3NlZCBpbiBjb21taXQgMDFkMDUzMjRlMDY2OWUzZjM1ODVkNmFhY2RlNjk2MzMzZTQ5ZjA4Nywgd2FzCisgICAgcHJvZHVjaW5nIGVtcHR5IHBvIGZpbGVzLgorCisgcG8vUE9URklMRVMuaW4gfCAgIDQ4ICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMjQgaW5zZXJ0aW9ucygrKSwgMjQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA0ZWI1Mzg2YzA5YjI2MzQ2YjhlMzA2MDRiMDcwYTZkMzQ4MzJkODM4CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIEp1bCAyMiAxODowOToxOSAyMDA5ICswMjAwCisKKyAgICBtYW46IEZpeCB0eXBvIGluIEZyZW5jaCB0cmFuc2xhdGlvbiBicmVha2luZyB0aGUgYnVpbGQKKyAgICAKKyAgICBJbnRyb2R1Y2VkIGluIGNvbW1pdCBmOTZmNjUwYmZmYWViOTQ5YTk2MTA3ZmNiMTg4Zjk5MjdiZTQyMTcxLgorCisgbWFuL3BvL2ZyLnBvIHwgICAgNCArKy0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA1MTAyOWI2MDJhM2Y3NWFmMDBiY2FmOWIzNWVmM2MyMzI1ZDU4NDYwCitBdXRob3I6IEhlbGdlIEtyZXV0em1hbm4gPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorRGF0ZTogICBXZWQgSnVsIDIyIDEwOjM5OjQzIDIwMDkgKzAyMDAKKworICAgIFVwZGF0ZSBnZXJtYW4gc2NyaXB0cyB0cmFuc2xhdGlvbgorICAgIAorICAgIFVwZGF0ZSB0byA0NzZ0LgorCisgc2NyaXB0cy9wby9kZS5wbyB8ICAgNTggKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDM0IGluc2VydGlvbnMoKyksIDI0IGRlbGV0aW9ucygtKQorCitjb21taXQgYzJkMDQyYzJmYmJhOTY4MzlhYzIxZTQyYjI3MjQwMjdlMzY0MjQyMAorTWVyZ2U6IDhlYTU4MmYgM2ZlMzUyMQorQXV0aG9yOiBDaHJpc3RpYW4gUGVycmllciA8YnVidWxsZUBkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgSnVsIDIxIDIzOjE2OjUyIDIwMDkgKzAyMDAKKworICAgIE1lcmdlIGJyYW5jaCAnbWFzdGVyJyBvZiBzc2g6Ly9naXQuZGViaWFuLm9yZy9naXQvZHBrZy9kcGtnCisKK2NvbW1pdCA4ZWE1ODJmZmRhMjhjOTA4NjVjNWE4OTUxMTg5YjE2Yjk0NmQ1ZWRiCitBdXRob3I6IENocmlzdGlhbiBQZXJyaWVyIDxidWJ1bGxlQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBKdWwgMjEgMTk6Mjc6MjcgMjAwOSArMDIwMAorCisgICAgQ29tcGxldGVkIEZyZW5jaCB0cmFuc2xhdGlvbiBmb3Igc2NyaXB0cworCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDMgKy0KKyBzY3JpcHRzL3BvL2ZyLnBvIHwgIDE2OSArKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDkwIGluc2VydGlvbnMoKyksIDgyIGRlbGV0aW9ucygtKQorCitjb21taXQgZmI3NTc0NzBjZTEzYzM4YTQxZjMyNWU1YzQyOGNhZTlkMGFhZTRjNgorQXV0aG9yOiBDaHJpc3RpYW4gUGVycmllciA8YnVidWxsZUBkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgSnVsIDIxIDE5OjAyOjEyIDIwMDkgKzAyMDAKKworICAgIFJlY29tcGxldGUgRnJlbmNoIHRyYW5zbGF0aW9uCisKKyBtYW4vcG8vZnIucG8gfCAgMjAyICsrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDcwIGluc2VydGlvbnMoKyksIDEzMiBkZWxldGlvbnMoLSkKKworY29tbWl0IGQwMTNiOGI2MTYzZDA2NGNhYWJjZjBmZGQ1ZmRjOWUwMzcxNDUwYTIKK0F1dGhvcjogQ2hyaXN0aWFuIFBlcnJpZXIgPGJ1YnVsbGVAZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIEp1bCAyMSAxODo1ODoxNyAyMDA5ICswMjAwCisKKyAgICBEcm9wIGFjY2lkZW50YWxseSBhZGRlZCBmaWxlCisKKyBtYW4vcG8vZnIyLnBvIHwxNTkyNSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDAgaW5zZXJ0aW9ucygrKSwgMTU5MjUgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA3ZmI1YjBlMTI2OTIxNTBmNWVjZDM1MDdlZjYwMDVmZWY5NmVhM2JkCitBdXRob3I6IENocmlzdGlhbiBQZXJyaWVyIDxidWJ1bGxlQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBKdWwgMjEgMTg6NTc6NDMgMjAwOSArMDIwMAorCisgICAgUmVnZW5lcmF0ZSBQT1QgZmlsZSBhbmQgcmVzeW5jIFBPIGZpbGVzCisKKyBtYW4vcG8vZGUucG8gICAgICAgICAgICAgfCA1MjQ4ICsrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0KKyBtYW4vcG8vZHBrZy1tYW4ucG90ICAgICAgfCA1NjI2ICsrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBtYW4vcG8vZXMucG8gICAgICAgICAgICAgfCA0MTQxICsrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tCisgbWFuL3BvL2ZyLnBvICAgICAgICAgICAgIHwgNDgyNSArKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBtYW4vcG8ve2ZyLnBvID0+IGZyMi5wb30gfCA0ODI1ICsrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLQorIG1hbi9wby9odS5wbyAgICAgICAgICAgICB8IDQxMDcgKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tCisgbWFuL3BvL2phLnBvICAgICAgICAgICAgIHwgNDY0MCArKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBtYW4vcG8vcGwucG8gICAgICAgICAgICAgfCA0NjUzICsrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLQorIG1hbi9wby9wdF9CUi5wbyAgICAgICAgICB8IDQxMjYgKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLQorIG1hbi9wby9ydS5wbyAgICAgICAgICAgICB8IDQxMjAgKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLQorIG1hbi9wby9zdi5wbyAgICAgICAgICAgICB8IDQ2MjQgKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxMSBmaWxlcyBjaGFuZ2VkLCAyNDU0OSBpbnNlcnRpb25zKCspLCAyNjM4NiBkZWxldGlvbnMoLSkKKworY29tbWl0IGY5NmY2NTBiZmZhZWI5NDlhOTYxMDdmY2IxODhmOTkyN2JlNDIxNzEKK0F1dGhvcjogQ2hyaXN0aWFuIFBlcnJpZXIgPGJ1YnVsbGVAZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIEp1bCAyMSAxODo1NDozMyAyMDA5ICswMjAwCisKKyAgICBVcGRhdGVkIEZyZW5jaCB0cmFuc2xhdGlvbgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDEgKworIG1hbi9wby9mci5wbyAgICAgfCAyMDExICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgMTExNCBpbnNlcnRpb25zKCspLCA4OTggZGVsZXRpb25zKC0pCisKK2NvbW1pdCAzZmUzNTIxZDI0N2E1MjRhNDEwMTg0ODZhYTI0OTZjNzgwM2FiZWQyCitBdXRob3I6IFJhcGhhZWwgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgSnVsIDIxIDEwOjE0OjAwIDIwMDkgKzAyMDAKKworICAgIERwa2c6OkNoYW5nZWxvZzogZml4IGhldXJpc3RpYyB0byBpZGVudGlmeSBjb3JyZWN0IHN0YXJ0IGVudHJ5CisgICAgCisgICAgVGhlIGhldXJpc3RpYyB0byBpZGVudGlmeSB0aGUgdmVyc2lvbiBudW1iZXIgdGhhdCBpcyBtb3N0IGFwcHJvYWNoaW5nCisgICAgd2FzIG5vdCB3b3JraW5nIHByb3Blcmx5IGZvciB0aGUgY2FzZSB3aGVyZSB0aGUgdmVyc2lvbiBudW1iZXIgd2FzIHNtYWxsZXIKKyAgICB0aGFuIHRoZSBvbGRlc3QgdmVyc2lvbiAoZm9yIGV4YW1wbGUgIjAiKS4gQWRkIGEgbm9uLXJlZ3Jlc3Npb24gdGVzdCBmb3IKKyAgICB0aGlzIGNhc2UuCisgICAgCisgICAgQWxzbyBhZGQgc3VwcGxlbWVudGFyeSB3YXJuaW5ncyBtZXNzYWdlIHNvIHRoYXQgcGVvcGxlIG5vdGljZSB3aGVuCisgICAgdGhlIHBhcmFtZXRlcnMgYXJlIGRpc2NhcmRlZC4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgICAgICB8ICAgIDIgKysKKyBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtICAgICAgfCAgIDE1ICsrKysrKysrKysrKystLQorIHNjcmlwdHMvdC82MDBfRHBrZ19DaGFuZ2Vsb2cudCB8ICAgIDcgKysrKysrLQorIDMgZmlsZXMgY2hhbmdlZCwgMjEgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworY29tbWl0IGMyYTNiYzQ3MGIwNDdjNDQ3ZDY4NmI1ZDQwYTlkMmIwMzlkZGNkZDgKK0F1dGhvcjogSXZhbiBNYXPDoXIgPGhlbGl4ODRAY2VudHJ1bS5zaz4KK0RhdGU6ICAgTW9uIEp1bCAyMCAxODoxMDoyNSAyMDA5ICswMjAwCisKKyAgICBTbG92YWsgdHJhbnNsYXRpb24gdXBkYXRlCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMSArCisgcG8vc2sucG8gICAgICAgICB8ICAgMjQgKysrKysrKysrKysrLS0tLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAxMyBpbnNlcnRpb25zKCspLCAxMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDQ1YWY4NThiMzg1MTg2MzlmYzhlNWJjNjVkOWUyNDhkNDIwZjc3M2UKK0F1dGhvcjogSXZhbiBNYXPDoXIgPGhlbGl4ODRAY2VudHJ1bS5zaz4KK0RhdGU6ICAgTW9uIEp1bCAyMCAxODowODowNyAyMDA5ICswMjAwCisKKyAgICBTbG92YWsgdHJhbnNsYXRpb24gdXBkYXRlCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMyArCisgZHNlbGVjdC9wby9zay5wbyB8ICAyNTUgKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAxMjkgaW5zZXJ0aW9ucygrKSwgMTI5IGRlbGV0aW9ucygtKQorCitjb21taXQgYjg2NmMwMmRmYzY2OWRkMTcwNjgwYzFiZDEzYjhjMGY5ODk4YmVhNQorQXV0aG9yOiBSYXBoYWVsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIEp1bCAyMCAwODo0NzowOSAyMDA5ICswMjAwCisKKyAgICBGaXggcHJlaW5zdCB0byBub3QgZmFpbCBvbiByZWFkIG9uIGJyb2tlbiBhbHRlcm5hdGl2ZXMgc3RhdHVzIGZpbGVzCisgICAgCisgICAgVGhlIGludGVybmFsIHN0cnVjdHVyZSBvZiBhbHRlcm5hdGl2ZXMgc3RhdHVzIGZpbGUgaXMgbGluZSBiYXNlZC4KKyAgICBFbXB0eSBsaW5lcyBlbmQgZWFjaCBzZWN0aW9uLiByZWFkIGNhbGwgY2FuIGZhaWwgaWYgdGhlIGZpbGUgaXMgdHJ1bmNhdGVkCisgICAgYXQgc29tZSB1bmV4cGVjdGVkIHBvaW50LiBUaHVzIHByb3RlY3QgYWxsIHJlYWQgY2FsbHMgd2l0aCAifHwgY29udGludWUiCisgICAgb3IgInx8IGJyZWFrIiBkZXBlbmRpbmcgb24gdGhlIGNhc2UuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgIHwgICAgMiArKworIGRlYmlhbi9kcGtnLnByZWluc3QgfCAgICA4ICsrKystLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCA2IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAzNDE3ZjI1ZmZlMmMyZWEzNjY0MDk1MmFmMGUyYzE4ODVlZGFhYTViCitBdXRob3I6IEhlbGdlIEtyZXV0em1hbm4gPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorRGF0ZTogICBTdW4gSnVsIDE5IDA5OjM4OjI3IDIwMDkgKzAyMDAKKworICAgIFVwZGF0ZSBnZXJtYW4gdHJhbnNsYXRpb24gb2YgbWFudWFsIHBhZ2VzCisgICAgCisgICAgVXBkYXRlIHRvIDE2MDh0LgorCisgbWFuL3BvL2RlLnBvIHwgMzEwNSArKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA2OTggaW5zZXJ0aW9ucygrKSwgMjQwNyBkZWxldGlvbnMoLSkKKworY29tbWl0IDJmZjM2MmEzYjYyMzU1NTY1NzMwOWRmODk0ODIwOTNhM2QwZDhjODMKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgSnVsIDE2IDIyOjUzOjQxIDIwMDkgKzAyMDAKKworICAgIGRzZWxlY3Q6IEFkZCBidWlsZGRpciB0byB0aGUgcXVvdGVkIGluY2x1ZGUgc2VhcmNoIHBhdGgKKyAgICAKKyAgICBUaGUgY3Vya2V5cy5oIGZpbGUgZ2V0cyBnZW5lcmF0ZWQgYXQgYnVpbGQgdGltZSwgYW5kIGlmIHdlIHVzZSBhbiBvdXQKKyAgICBvZiB0cmVlIGJ1aWxkIGRpcmVjdG9yeSwgaXQgY2Fubm90IGJlIGZvdW5kIGluIHRoZSBjdXJyZW50IHNlYXJjaCBwYXRoLgorICAgIEJ1dCB3ZSBkb24ndCB3YW50IHRvIGFkZCB0aGUgYnVpbGRkaXIgdG8gdGhlIHN5c3RlbSBpbmNsdWRlIHNlYXJjaCBwYXRoCisgICAgYXMgaXQgd2lsbCBnaXZlIGZpbGUgY29sbGlzaW9ucyB3aGVuIGJ1aWxkZGlyIGlzIHRoZSBzYW1lIGFzIHNyY2Rpci4KKyAgICBIZW5jZSB3ZSBvbmx5IGFkZCBpdCBmb3IgcXVvdGVkIGluY2x1ZGVzLgorCisgZHNlbGVjdC9NYWtlZmlsZS5hbSB8ICAgIDEgKworIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgOTUyZmFiYTg3MWQ1MTc5OWQ1MmIyNjc4ODlhMTdkMTYzODFlNmRkZAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBKdWwgMTUgMjM6MDY6MDUgMjAwOSArMDIwMAorCisgICAgbGliZHBrZzogTW92ZSBzdWJwcm9jIHJlbGF0ZWQgZGVjbGFyYXRpb25zIHRvIHN1YnByb2MuaAorCisgZHBrZy1kZWIvYnVpbGQuYyAgIHwgICAgMSArCisgZHBrZy1kZWIvZXh0cmFjdC5jIHwgICAgMSArCisgZHBrZy1kZWIvaW5mby5jICAgIHwgICAgMSArCisgbGliL2Rwa2cvZHBrZy5oICAgIHwgICAgNiAtLS0tLS0KKyBsaWIvZHBrZy9zdWJwcm9jLmggfCAgICA5ICsrKysrKysrKworIHNyYy9hcmNoaXZlcy5jICAgICB8ICAgIDEgKworIHNyYy9wcm9jZXNzYXJjLmMgICB8ICAgIDEgKworIDcgZmlsZXMgY2hhbmdlZCwgMTQgaW5zZXJ0aW9ucygrKSwgNiBkZWxldGlvbnMoLSkKKworY29tbWl0IDYwNTE2MjE3OGZlNmU2YjVjMGE2NzUwMDMzOTE2MzU1MTJiMGFmMzMKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgSnVsIDE1IDE2OjM0OjU5IDIwMDkgKzAyMDAKKworICAgIGxpYmRwa2c6IFNwbGl0IGRwa2ctcHJpdi5oIGludG8gc21hbGxlciBwaWVjZXMKKyAgICAKKyAgICBNYWtlIHRoZSBkZXBlbmRlbmNpZXMgb24gb3RoZXIgbW9kdWxlcyBleHBsaWNpdCwgYW5kIGF2b2lkIGNsdXR0ZXIgYnkKKyAgICBub3QgaW5jbHVkaW5nIHVubmVlZGVkIHN0dWZmLgorCisgZHBrZy1kZWIvYnVpbGQuYyAgICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9tZXRob2QuY2MgICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvTWFrZWZpbGUuYW0gICAgICAgICAgICAgICAgfCAgICA3ICsrKy0tLS0KKyBsaWIvZHBrZy9maWVsZHMuYyAgICAgICAgICAgICAgICAgICB8ICAgIDIgKy0KKyBsaWIvZHBrZy9wYXJzZWhlbHAuYyAgICAgICAgICAgICAgICB8ICAgIDIgKy0KKyBsaWIvZHBrZy9wYXRoLmMgICAgICAgICAgICAgICAgICAgICB8ICAgIDIgKy0KKyBsaWIvZHBrZy97ZHBrZy1wcml2LmggPT4gcGF0aC5ofSAgICB8ICAgMjEgKysrKystLS0tLS0tLS0tLS0tLS0tCisgbGliL2Rwa2cvc3RyaW5nLmMgICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cve3N0cmluZy5jID0+IHN0cmluZy5ofSAgICAgfCAgIDI2ICsrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tCisgbGliL2Rwa2cvc3VicHJvYy5jICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cve2Rwa2ctcHJpdi5oID0+IHN1YnByb2MuaH0gfCAgIDIzICsrKystLS0tLS0tLS0tLS0tLS0tLS0tCisgbGliL2Rwa2cvdGVzdC90LXBhdGguYyAgICAgICAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvdGVzdC90LXN0cmluZy5jICAgICAgICAgICAgfCAgICAyICstCisgc3JjL2ZpbGVzZGIuYyAgICAgICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgc3JjL2hlbHAuYyAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAzICsrLQorIHNyYy9xdWVyeS5jICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMiArLQorIDE2IGZpbGVzIGNoYW5nZWQsIDMzIGluc2VydGlvbnMoKyksIDY5IGRlbGV0aW9ucygtKQorCitjb21taXQgN2ZhOTZmMzUxYjYxMjU5Zjc0MWJjZDk1MmJlYjk0NjhmMGM3NTE2YworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBKdWwgMTUgMTU6NDI6NDggMjAwOSArMDIwMAorCisgICAgRGlzYWJsZSBkZWZhdWx0IGF1dG9tYWtlIHByZXByb2Nlc3NvciBpbmNsdWRlIHBhdGhzCisgICAgCisgICAgVGVsbCBhdXRvbWFrZSBub3QgdG8gYWRkIOKAnC1JLuKAnSB0byB0aGUgcHJlcHJvY2Vzc29yIGZsYWdzLCB0byBhdm9pZAorICAgIGZpbGUgY29sbGlzaW9ucyB3aXRoIHN5c3RlbSBoZWFkZXJzLiBSZS1hZGQgdGhlIHBhdGggd2hlcmUgY29uZmlnLmgKKyAgICBpcyBsb2NhdGVkLiBOYW1lc3BhY2UgYW5kIHVzZSBicmFja2V0ZWQgZmlsZSBpbmNsdXNpb25zIGZvciBsaWJkcGtnCisgICAgaGVhZGVycywgYW5kIHVzZSBxdW90ZWQgaW5jbHVzaW9ucyBmb3IgcHJvZ3JhbSBoZWFkZXJzLgorCisgY29uZmlndXJlLmFjICAgICAgICAgICAgICB8ICAgIDIgKy0KKyBkcGtnLWRlYi9NYWtlZmlsZS5hbSAgICAgIHwgICAgMiArLQorIGRwa2ctZGViL2J1aWxkLmMgICAgICAgICAgfCAgICA5ICsrKysrLS0tLQorIGRwa2ctZGViL2V4dHJhY3QuYyAgICAgICAgfCAgICA3ICsrKystLS0KKyBkcGtnLWRlYi9pbmZvLmMgICAgICAgICAgIHwgICAgNyArKysrLS0tCisgZHBrZy1kZWIvbWFpbi5jICAgICAgICAgICB8ICAgIDYgKysrLS0tCisgZHBrZy1zcGxpdC9NYWtlZmlsZS5hbSAgICB8ICAgIDIgKy0KKyBkcGtnLXNwbGl0L2luZm8uYyAgICAgICAgIHwgICAgNyArKysrLS0tCisgZHBrZy1zcGxpdC9qb2luLmMgICAgICAgICB8ICAgIDcgKysrKy0tLQorIGRwa2ctc3BsaXQvbWFpbi5jICAgICAgICAgfCAgICA2ICsrKy0tLQorIGRwa2ctc3BsaXQvcXVldWUuYyAgICAgICAgfCAgICA3ICsrKystLS0KKyBkcGtnLXNwbGl0L3NwbGl0LmMgICAgICAgIHwgICAgNyArKysrLS0tCisgZHNlbGVjdC9NYWtlZmlsZS5hbSAgICAgICB8ICAgIDQgKystLQorIGRzZWxlY3QvYmFzZWNtZHMuY2MgICAgICAgfCAgICA0ICsrLS0KKyBkc2VsZWN0L2Jhc2VsaXN0LmNjICAgICAgIHwgICAgNCArKy0tCisgZHNlbGVjdC9iYXNldG9wLmNjICAgICAgICB8ICAgIDIgKy0KKyBkc2VsZWN0L2JpbmRpbmdzLmNjICAgICAgIHwgICAgNCArKy0tCisgZHNlbGVjdC9jdXJrZXlzLmNjICAgICAgICB8ICAgIDIgKy0KKyBkc2VsZWN0L2RzZWxlY3QuaCAgICAgICAgIHwgICAgMyArKy0KKyBkc2VsZWN0L21haW4uY2MgICAgICAgICAgIHwgICAgNiArKystLS0KKyBkc2VsZWN0L21ldGhrZXlzLmNjICAgICAgIHwgICAgMiArLQorIGRzZWxlY3QvbWV0aGxpc3QuY2MgICAgICAgfCAgICA0ICsrLS0KKyBkc2VsZWN0L21ldGhvZC5jYyAgICAgICAgIHwgICAgNiArKystLS0KKyBkc2VsZWN0L21ldGhwYXJzZS5jYyAgICAgIHwgICAgNCArKy0tCisgZHNlbGVjdC9wa2djbWRzLmNjICAgICAgICB8ICAgIDQgKystLQorIGRzZWxlY3QvcGtnZGVwY29uLmNjICAgICAgfCAgICA0ICsrLS0KKyBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2MgICAgIHwgICAgNCArKy0tCisgZHNlbGVjdC9wa2dpbmZvLmNjICAgICAgICB8ICAgIDQgKystLQorIGRzZWxlY3QvcGtna2V5cy5jYyAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wa2dsaXN0LmNjICAgICAgICB8ICAgIDQgKystLQorIGRzZWxlY3QvcGtnc3VibGlzdC5jYyAgICAgfCAgICA0ICsrLS0KKyBkc2VsZWN0L3BrZ3RvcC5jYyAgICAgICAgIHwgICAgNCArKy0tCisgbGliL2Rwa2cvTWFrZWZpbGUuYW0gICAgICB8ICAgIDEgKworIGxpYi9kcGtnL2NsZWFudXAuYyAgICAgICAgfCAgICAzICsrLQorIGxpYi9kcGtnL2NvbXByZXNzaW9uLmMgICAgfCAgICA0ICsrLS0KKyBsaWIvZHBrZy9kYXRhYmFzZS5jICAgICAgIHwgICAgNCArKy0tCisgbGliL2Rwa2cvZGJtb2RpZnkuYyAgICAgICB8ICAgIDQgKystLQorIGxpYi9kcGtnL2R1bXAuYyAgICAgICAgICAgfCAgICA2ICsrKy0tLQorIGxpYi9kcGtnL2VoYW5kbGUuYyAgICAgICAgfCAgICA0ICsrLS0KKyBsaWIvZHBrZy9maWVsZHMuYyAgICAgICAgIHwgICAgOCArKysrLS0tLQorIGxpYi9kcGtnL2xvY2suYyAgICAgICAgICAgfCAgICA0ICsrLS0KKyBsaWIvZHBrZy9sb2cuYyAgICAgICAgICAgIHwgICAgNCArKy0tCisgbGliL2Rwa2cvbWxpYi5jICAgICAgICAgICB8ICAgIDYgKysrLS0tCisgbGliL2Rwa2cvbXlvcHQtdXRpbC5jICAgICB8ICAgIDQgKystLQorIGxpYi9kcGtnL215b3B0LmMgICAgICAgICAgfCAgICA0ICsrLS0KKyBsaWIvZHBrZy9uZm1hbGxvYy5jICAgICAgIHwgICAgNyArKystLS0tCisgbGliL2Rwa2cvcGFyc2UuYyAgICAgICAgICB8ICAgIDYgKysrLS0tCisgbGliL2Rwa2cvcGFyc2VoZWxwLmMgICAgICB8ICAgIDkgKysrKy0tLS0tCisgbGliL2Rwa2cvcGF0aC5jICAgICAgICAgICB8ICAgIDMgKystCisgbGliL2Rwa2cvc2hvd3BrZy5jICAgICAgICB8ICAgIDcgKysrLS0tLQorIGxpYi9kcGtnL3N0cmluZy5jICAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvc3VicHJvYy5jICAgICAgICB8ICAgIDQgKystLQorIGxpYi9kcGtnL3RhcmZuLmMgICAgICAgICAgfCAgICA0ICsrLS0KKyBsaWIvZHBrZy90ZXN0LmggICAgICAgICAgIHwgICAgMiArLQorIGxpYi9kcGtnL3Rlc3QvTWFrZWZpbGUuYW0gfCAgICAyICstCisgbGliL2Rwa2cvdGVzdC90LXBhdGguYyAgICB8ICAgIDIgKy0KKyBsaWIvZHBrZy90ZXN0L3QtcGtnaW5mby5jIHwgICAgMiArLQorIGxpYi9kcGtnL3Rlc3QvdC1zdHJpbmcuYyAgfCAgICAyICstCisgbGliL2Rwa2cvdGVzdC90LXZhcmJ1Zi5jICB8ICAgIDIgKy0KKyBsaWIvZHBrZy90ZXN0L3QtdmVyc2lvbi5jIHwgICAgMiArLQorIGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sICAgfCAgICA0ICsrLS0KKyBsaWIvZHBrZy90cmlnbGliLmMgICAgICAgIHwgICAgNiArKystLS0KKyBsaWIvZHBrZy91dGlscy5jICAgICAgICAgIHwgICAgNCArKystCisgbGliL2Rwa2cvdmFyYnVmLmMgICAgICAgICB8ICAgIDQgKystLQorIGxpYi9kcGtnL3ZlcmNtcC5jICAgICAgICAgfCAgICA2ICsrKy0tLQorIHNyYy9NYWtlZmlsZS5hbSAgICAgICAgICAgfCAgICAyICstCisgc3JjL2FyY2hpdmVzLmMgICAgICAgICAgICB8ICAgIDggKysrKy0tLS0KKyBzcmMvY2xlYW51cC5jICAgICAgICAgICAgIHwgICAgOCArKysrLS0tLQorIHNyYy9jb25maWd1cmUuYyAgICAgICAgICAgfCAgICA0ICsrLS0KKyBzcmMvZGVwY29uLmMgICAgICAgICAgICAgIHwgICAgNCArKy0tCisgc3JjL2RpdmVydGRiLmMgICAgICAgICAgICB8ICAgIDQgKystLQorIHNyYy9lbnF1aXJ5LmMgICAgICAgICAgICAgfCAgICA2ICsrKy0tLQorIHNyYy9lcnJvcnMuYyAgICAgICAgICAgICAgfCAgICA2ICsrKy0tLQorIHNyYy9maWxlc2RiLmMgICAgICAgICAgICAgfCAgICA4ICsrKystLS0tCisgc3JjL2hlbHAuYyAgICAgICAgICAgICAgICB8ICAgIDYgKysrLS0tCisgc3JjL21haW4uYyAgICAgICAgICAgICAgICB8ICAgIDYgKysrLS0tCisgc3JjL3BhY2thZ2VzLmMgICAgICAgICAgICB8ICAgIDYgKysrLS0tCisgc3JjL3BrZy1hcnJheS5jICAgICAgICAgICB8ICAgIDQgKystLQorIHNyYy9wa2ctYXJyYXkuaCAgICAgICAgICAgfCAgICAyICstCisgc3JjL3BrZy1zaG93LmMgICAgICAgICAgICB8ICAgIDQgKystLQorIHNyYy9wcm9jZXNzYXJjLmMgICAgICAgICAgfCAgICA4ICsrKystLS0tCisgc3JjL3F1ZXJ5LmMgICAgICAgICAgICAgICB8ICAgIDggKysrKy0tLS0KKyBzcmMvcmVtb3ZlLmMgICAgICAgICAgICAgIHwgICAgNiArKystLS0KKyBzcmMvc2VsZWN0LmMgICAgICAgICAgICAgIHwgICAgNiArKystLS0KKyBzcmMvc3RhdGRiLmMgICAgICAgICAgICAgIHwgICAgNCArKy0tCisgc3JjL3RyaWdjbWQuYyAgICAgICAgICAgICB8ICAgIDYgKysrLS0tCisgc3JjL3RyaWdwcm9jLmMgICAgICAgICAgICB8ICAgIDQgKystLQorIHNyYy91cGRhdGUuYyAgICAgICAgICAgICAgfCAgICA2ICsrKy0tLQorIHV0aWxzL01ha2VmaWxlLmFtICAgICAgICAgfCAgICAyICstCisgODkgZmlsZXMgY2hhbmdlZCwgMjA5IGluc2VydGlvbnMoKyksIDE5OSBkZWxldGlvbnMoLSkKKworY29tbWl0IDRhNzAxMGZlNWUzNTczY2M5MTk3ODhkMzU0ZmRiY2NkZWRjZTI0OWQKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgSnVsIDE1IDExOjI3OjI2IDIwMDkgKzAyMDAKKworICAgIGxpYmRwa2c6IFJlbmFtZSBkcGtnLXRlc3QuaCB0byB0ZXN0LmgKKworIGxpYi9kcGtnL3tkcGtnLXRlc3QuaCA9PiB0ZXN0Lmh9IHwgICAgMiArLQorIGxpYi9kcGtnL3Rlc3QvdC1tYWNyb3MuYyAgICAgICAgIHwgICAgMiArLQorIGxpYi9kcGtnL3Rlc3QvdC1wYXRoLmMgICAgICAgICAgIHwgICAgMiArLQorIGxpYi9kcGtnL3Rlc3QvdC1wa2dpbmZvLmMgICAgICAgIHwgICAgMiArLQorIGxpYi9kcGtnL3Rlc3QvdC1zdHJpbmcuYyAgICAgICAgIHwgICAgMiArLQorIGxpYi9kcGtnL3Rlc3QvdC10ZXN0LmMgICAgICAgICAgIHwgICAgMiArLQorIGxpYi9kcGtnL3Rlc3QvdC12YXJidWYuYyAgICAgICAgIHwgICAgMiArLQorIGxpYi9kcGtnL3Rlc3QvdC12ZXJzaW9uLmMgICAgICAgIHwgICAgMiArLQorIDggZmlsZXMgY2hhbmdlZCwgOCBpbnNlcnRpb25zKCspLCA4IGRlbGV0aW9ucygtKQorCitjb21taXQgMjg5YzI5MTE4NDQzMTdkZmRkMGM0YjhkOTAzNDgyMDUwMmRhNDgzZQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBKdWwgMTUgMTE6MjE6MDUgMjAwOSArMDIwMAorCisgICAgbGliZHBrZzogUmVuYW1lIGRwa2ctaTE4bi5oIHRvIGkxOG4uaAorCisgZHBrZy1kZWIvYnVpbGQuYyAgICAgICAgICAgICAgICAgfCAgICAyICstCisgZHBrZy1kZWIvZXh0cmFjdC5jICAgICAgICAgICAgICAgfCAgICAyICstCisgZHBrZy1kZWIvaW5mby5jICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgZHBrZy1kZWIvbWFpbi5jICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgZHBrZy1zcGxpdC9pbmZvLmMgICAgICAgICAgICAgICAgfCAgICAyICstCisgZHBrZy1zcGxpdC9qb2luLmMgICAgICAgICAgICAgICAgfCAgICAyICstCisgZHBrZy1zcGxpdC9tYWluLmMgICAgICAgICAgICAgICAgfCAgICAyICstCisgZHBrZy1zcGxpdC9xdWV1ZS5jICAgICAgICAgICAgICAgfCAgICAyICstCisgZHBrZy1zcGxpdC9zcGxpdC5jICAgICAgICAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9iYXNlY21kcy5jYyAgICAgICAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9iYXNlbGlzdC5jYyAgICAgICAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9iaW5kaW5ncy5jYyAgICAgICAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9oZWxwbXNncy5jYyAgICAgICAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9tYWluLmNjICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9tZXRobGlzdC5jYyAgICAgICAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9tZXRob2QuY2MgICAgICAgICAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9tZXRocGFyc2UuY2MgICAgICAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wa2dkaXNwbGF5LmNjICAgICAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wa2dpbmZvLmNjICAgICAgICAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wa2dsaXN0LmNjICAgICAgICAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wa2dzdWJsaXN0LmNjICAgICAgICAgICAgfCAgICAyICstCisgZHNlbGVjdC9wa2d0b3AuY2MgICAgICAgICAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvTWFrZWZpbGUuYW0gICAgICAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvY29tcHJlc3Npb24uYyAgICAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvZGF0YWJhc2UuYyAgICAgICAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvZGJtb2RpZnkuYyAgICAgICAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvZHVtcC5jICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvZWhhbmRsZS5jICAgICAgICAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvZmllbGRzLmMgICAgICAgICAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cve2Rwa2ctaTE4bi5oID0+IGkxOG4uaH0gfCAgICAyICstCisgbGliL2Rwa2cvbG9jay5jICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvbG9nLmMgICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvbWxpYi5jICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvbXlvcHQtdXRpbC5jICAgICAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvbXlvcHQuYyAgICAgICAgICAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvbmZtYWxsb2MuYyAgICAgICAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvcGFyc2UuYyAgICAgICAgICAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvcGFyc2VoZWxwLmMgICAgICAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvcHJvZ3Jlc3MuYyAgICAgICAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvc2hvd3BrZy5jICAgICAgICAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvc3VicHJvYy5jICAgICAgICAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmwgICAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvdHJpZ2xpYi5jICAgICAgICAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvdXRpbHMuYyAgICAgICAgICAgICAgICAgfCAgICAyICstCisgc3JjL2FyY2hpdmVzLmMgICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgc3JjL2NsZWFudXAuYyAgICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgc3JjL2NvbmZpZ3VyZS5jICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgc3JjL2RlcGNvbi5jICAgICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgc3JjL2RpdmVydGRiLmMgICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgc3JjL2VucXVpcnkuYyAgICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgc3JjL2Vycm9ycy5jICAgICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgc3JjL2ZpbGVzZGIuYyAgICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgc3JjL2hlbHAuYyAgICAgICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgc3JjL21haW4uYyAgICAgICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgc3JjL3BhY2thZ2VzLmMgICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgc3JjL3BrZy1zaG93LmMgICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgc3JjL3Byb2Nlc3NhcmMuYyAgICAgICAgICAgICAgICAgfCAgICAyICstCisgc3JjL3F1ZXJ5LmMgICAgICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgc3JjL3JlbW92ZS5jICAgICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgc3JjL3NlbGVjdC5jICAgICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgc3JjL3N0YXRkYi5jICAgICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgc3JjL3RyaWdjbWQuYyAgICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgc3JjL3RyaWdwcm9jLmMgICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgc3JjL3VwZGF0ZS5jICAgICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgNjQgZmlsZXMgY2hhbmdlZCwgNjQgaW5zZXJ0aW9ucygrKSwgNjQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA5MzVjM2Q3YmM2YWRiZjcyMTA5MWMwYTZlNDhlMDk2N2U5YjYxZTAwCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIEp1bCAxNSAxMToxMTowNyAyMDA5ICswMjAwCisKKyAgICBzLXMtZDogVXNlIHNpemVvZl9hcnJheSBpbnN0ZWFkIG9mIGFkLWhvYyBjYWxjdWxhdGlvbgorCisgdXRpbHMvc3RhcnQtc3RvcC1kYWVtb24uYyB8ICAgIDIgKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGUzNzUzMmU4MGY0ZGI4MWRkYTQ4NDAxNTEzZDVmZWU0Yzg1ZDIwODMKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgSnVsIDE1IDE1OjQzOjUyIDIwMDkgKzAyMDAKKworICAgIFJlbW92ZSB1bnVzZWQgZHBrZy1wcml2LmggaGVhZGVyIGluY2x1ZGVzCisKKyBzcmMvZGl2ZXJ0ZGIuYyAgfCAgICAxIC0KKyBzcmMvZW5xdWlyeS5jICAgfCAgICAxIC0KKyBzcmMvcGtnLWFycmF5LmMgfCAgICAxIC0KKyBzcmMvc3RhdGRiLmMgICAgfCAgICAxIC0KKyA0IGZpbGVzIGNoYW5nZWQsIDAgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKKworY29tbWl0IDEwNWJhNTNjYzEzOTUwYTlmYzkxODZhZThmYWI3YWQ0YTdiMDVlMDEKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgSnVsIDE1IDEyOjE0OjM5IDIwMDkgKzAyMDAKKworICAgIGxpYmRwa2c6IE1vdmUgQyBsYW5ndWFnZSBkZWZpbml0aW9uIG1hY3JvcyB0byBtYWNyb3MuaAorCisgZHBrZy1kZWIvbWFpbi5jICAgICAgICAgICAgICAgICAgIHwgICAgMiArLQorIGRwa2ctc3BsaXQvbWFpbi5jICAgICAgICAgICAgICAgICB8ICAgIDIgKy0KKyBsaWIvZHBrZy9NYWtlZmlsZS5hbSAgICAgICAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvZHBrZy1kYi5oICAgICAgICAgICAgICAgIHwgICAgMiArLQorIGxpYi9kcGtnL2Rwa2ctaTE4bi5oICAgICAgICAgICAgICB8ICAgIDIgKy0KKyBsaWIvZHBrZy9kcGtnLXByaXYuaCAgICAgICAgICAgICAgfCAgIDE2ICstLS0tLS0tLS0tLS0tLS0KKyBsaWIvZHBrZy9kcGtnLmggICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvZWhhbmRsZS5jICAgICAgICAgICAgICAgIHwgICAgMiArLQorIGxpYi9kcGtnL3tkcGtnLWRlZi5oID0+IG1hY3Jvcy5ofSB8ICAgMjMgKysrKysrKysrKysrKysrKysrKy0tLS0KKyBsaWIvZHBrZy9teW9wdC5oICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvcGFyc2UuYyAgICAgICAgICAgICAgICAgIHwgICAgMiArLQorIGxpYi9kcGtnL3Byb2dyZXNzLmggICAgICAgICAgICAgICB8ICAgIDIgKy0KKyBsaWIvZHBrZy90YXJmbi5jICAgICAgICAgICAgICAgICAgfCAgICAzICsrLQorIGxpYi9kcGtnL3Rlc3QvdC1tYWNyb3MuYyAgICAgICAgICB8ICAgIDIgKy0KKyBzcmMvY29uZmlndXJlLmMgICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgc3JjL21haW4uYyAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMiArLQorIHNyYy9wa2ctc2hvdy5jICAgICAgICAgICAgICAgICAgICB8ICAgIDIgKy0KKyB1dGlscy9zdGFydC1zdG9wLWRhZW1vbi5jICAgICAgICAgfCAgICAyICstCisgMTggZmlsZXMgY2hhbmdlZCwgMzcgaW5zZXJ0aW9ucygrKSwgMzUgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBkYTE3MTAxYTRhYTg5NTBkMjkyN2RkOWUwZDgyM2ZiMzZkNTA1N2I1CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIEp1bCAxNSAwMTozNjowNiAyMDA5ICswMjAwCisKKyAgICBsaWJkcGtnOiBSZW5hbWUgYW5kIG5hbWVzcGFjZSBjb21waWxlciBhdHRyaWJ1dGVzCisgICAgCisgICAgUHJlZml4IHRoZW0gYWxsIHdpdGggRFBLR19BVFRSXywgYW5kIHVzZSBzaG9ydGVyIGJ1dCBzdGlsbCBtZWFuaW5nZnVsCisgICAgbmFtZXMuCisKKyBkcGtnLWRlYi9kcGtnLWRlYi5oICAgICAgIHwgICAgMiArLQorIGRwa2ctZGViL2V4dHJhY3QuYyAgICAgICAgfCAgICAyICstCisgZHBrZy1zcGxpdC9kcGtnLXNwbGl0LmggICB8ICAgIDYgKysrLS0tCisgZHNlbGVjdC9tZXRocGFyc2UuY2MgICAgICB8ICAgIDQgKystLQorIGxpYi9kcGtnL2Rwa2ctZGIuaCAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvZHBrZy1kZWYuaCAgICAgICB8ICAgMTYgKysrKysrKystLS0tLS0tLQorIGxpYi9kcGtnL2Rwa2cuaCAgICAgICAgICAgfCAgIDI2ICsrKysrKysrKysrKystLS0tLS0tLS0tLS0tCisgbGliL2Rwa2cvZWhhbmRsZS5jICAgICAgICB8ICAgIDIgKy0KKyBsaWIvZHBrZy9tbGliLmMgICAgICAgICAgIHwgICAgMiArLQorIGxpYi9kcGtnL215b3B0LmggICAgICAgICAgfCAgICA4ICsrKystLS0tCisgbGliL2Rwa2cvcGFyc2VkdW1wLmggICAgICB8ICAgIDQgKystLQorIHNyYy9tYWluLmMgICAgICAgICAgICAgICAgfCAgICAyICstCisgc3JjL21haW4uaCAgICAgICAgICAgICAgICB8ICAgIDYgKysrLS0tCisgdXRpbHMvc3RhcnQtc3RvcC1kYWVtb24uYyB8ICAgIDQgKystLQorIDE0IGZpbGVzIGNoYW5nZWQsIDQzIGluc2VydGlvbnMoKyksIDQzIGRlbGV0aW9ucygtKQorCitjb21taXQgMTc0MzJlMjczOTkyZDAyM2ZlMTdhYjQyM2FlYzA1MWVhNzcyN2M2YgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBKdWwgMTUgMDE6NDE6NDkgMjAwOSArMDIwMAorCisgICAgbGliZHBrZzogQ2hhbmdlIFBSSU5URkZPUk1BVCB0byB0YWtlIG9ubHkgb25lIGFyZ3VtZW50CisgICAgCisgICAgQWx3YXlzIGFzc3VtZSB0aGUgdmFyaWFibGUgYXJndW1lbnRzIGdvIGp1c3QgYWZ0ZXIgdGhlIGZvcm1hdCBzdHJpbmcuCisKKyBsaWIvZHBrZy9kcGtnLWRiLmggICAgICAgIHwgICAgMiArLQorIGxpYi9kcGtnL2Rwa2ctZGVmLmggICAgICAgfCAgICA0ICsrLS0KKyBsaWIvZHBrZy9kcGtnLmggICAgICAgICAgIHwgICAyMCArKysrKysrKysrLS0tLS0tLS0tLQorIGxpYi9kcGtnL215b3B0LmggICAgICAgICAgfCAgICAyICstCisgbGliL2Rwa2cvcGFyc2VkdW1wLmggICAgICB8ICAgIDQgKystLQorIHNyYy9tYWluLmggICAgICAgICAgICAgICAgfCAgICA0ICsrLS0KKyB1dGlscy9zdGFydC1zdG9wLWRhZW1vbi5jIHwgICAgMiArLQorIDcgZmlsZXMgY2hhbmdlZCwgMTkgaW5zZXJ0aW9ucygrKSwgMTkgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAwMWQwNTMyNGUwNjY5ZTNmMzU4NWQ2YWFjZGU2OTYzMzNlNDlmMDg3CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIEp1bCAxNSAxMjoxNDoyOSAyMDA5ICswMjAwCisKKyAgICBNb3ZlIGxpYnJhcmllcyB0byBzdWJkaXJlY3RvcmllcyB1bmRlciBsaWIvCisgICAgCisgICAgVGhpcyB3aWxsIGFsbG93IHRvIHVzZSB0aGUgc2FtZSBpbmNsdWRlIHBhdGggdGhhbiB0aGUgZnV0dXJlIHN5c3RlbQorICAgIG9uZSwgZm9yIGV4YW1wbGUg4oCcI2luY2x1ZGUgPGRwa2cvZHBrZy5oPuKAnS4gSXQgYWxzbyB1bmNsdXR0ZXJzIHRoZSBzb3VyY2UKKyAgICB0b3BkaXIuCisKKyBNYWtlZmlsZS5hbSAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMSAtCisgY29uZmlndXJlLmFjICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDcgKystLQorIGRwa2ctZGViL01ha2VmaWxlLmFtICAgICAgICAgICAgICAgICAgfCAgICA3ICsrLS0KKyBkcGtnLXNwbGl0L01ha2VmaWxlLmFtICAgICAgICAgICAgICAgIHwgICAgNyArKy0tCisgZHNlbGVjdC9NYWtlZmlsZS5hbSAgICAgICAgICAgICAgICAgICB8ICAgIDcgKystLQorIGxpYi9NYWtlZmlsZS5hbSAgICAgICAgICAgICAgICAgICAgICAgfCAgIDUxICsrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHtsaWJjb21wYXQgPT4gbGliL2NvbXBhdH0vTWFrZWZpbGUuYW0gfCAgICAyICstCisge2xpYmNvbXBhdCA9PiBsaWIvY29tcGF0fS9hbHBoYXNvcnQuYyB8ICAgIDAKKyB7bGliY29tcGF0ID0+IGxpYi9jb21wYXR9L2NvbXBhdC5oICAgIHwgICAgMAorIHtsaWJjb21wYXQgPT4gbGliL2NvbXBhdH0vZ2V0b3B0LmMgICAgfCAgICAwCisge2xpYmNvbXBhdCA9PiBsaWIvY29tcGF0fS9nZXRvcHQuaCAgICB8ICAgIDAKKyB7bGliY29tcGF0ID0+IGxpYi9jb21wYXR9L2dldG9wdDEuYyAgIHwgICAgMAorIHtsaWJjb21wYXQgPT4gbGliL2NvbXBhdH0vZ2V0dGV4dC5oICAgfCAgICAwCisge2xpYmNvbXBhdCA9PiBsaWIvY29tcGF0fS9vYnN0YWNrLmMgICB8ICAgIDAKKyB7bGliY29tcGF0ID0+IGxpYi9jb21wYXR9L29ic3RhY2suaCAgIHwgICAgMAorIHtsaWJjb21wYXQgPT4gbGliL2NvbXBhdH0vc2NhbmRpci5jICAgfCAgICAwCisge2xpYmNvbXBhdCA9PiBsaWIvY29tcGF0fS9zbnByaW50Zi5jICB8ICAgIDAKKyB7bGliY29tcGF0ID0+IGxpYi9jb21wYXR9L3N0cmVycm9yLmMgIHwgICAgMAorIHtsaWJjb21wYXQgPT4gbGliL2NvbXBhdH0vc3Rybmxlbi5jICAgfCAgICAwCisge2xpYmNvbXBhdCA9PiBsaWIvY29tcGF0fS9zdHJubGVuLmggICB8ICAgIDAKKyB7bGliY29tcGF0ID0+IGxpYi9jb21wYXR9L3N0cnNpZ25hbC5jIHwgICAgMAorIHtsaWJjb21wYXQgPT4gbGliL2NvbXBhdH0vdW5zZXRlbnYuYyAgfCAgICAwCisge2xpYmNvbXBhdCA9PiBsaWIvY29tcGF0fS92c25wcmludGYuYyB8ICAgIDAKKyBsaWIveyA9PiBkcGtnfS8uZ2l0aWdub3JlICAgICAgICAgICAgIHwgICAgMAorIGxpYi97ID0+IGRwa2d9L01ha2VmaWxlLmFtICAgICAgICAgICAgfCAgICAzICstCisgbGliL3sgPT4gZHBrZ30vY2xlYW51cC5jICAgICAgICAgICAgICB8ICAgIDAKKyBsaWIveyA9PiBkcGtnfS9jb21wcmVzc2lvbi5jICAgICAgICAgIHwgICAgMAorIGxpYi97ID0+IGRwa2d9L2RhdGFiYXNlLmMgICAgICAgICAgICAgfCAgICAwCisgbGliL3sgPT4gZHBrZ30vZGJtb2RpZnkuYyAgICAgICAgICAgICB8ICAgIDAKKyBsaWIveyA9PiBkcGtnfS9kbGlzdC5oICAgICAgICAgICAgICAgIHwgICAgMAorIGxpYi97ID0+IGRwa2d9L2Rwa2ctZGIuaCAgICAgICAgICAgICAgfCAgICAwCisgbGliL3sgPT4gZHBrZ30vZHBrZy1kZWYuaCAgICAgICAgICAgICB8ICAgIDAKKyBsaWIveyA9PiBkcGtnfS9kcGtnLWkxOG4uaCAgICAgICAgICAgIHwgICAgMAorIGxpYi97ID0+IGRwa2d9L2Rwa2ctcHJpdi5oICAgICAgICAgICAgfCAgICAwCisgbGliL3sgPT4gZHBrZ30vZHBrZy10ZXN0LmggICAgICAgICAgICB8ICAgIDAKKyBsaWIveyA9PiBkcGtnfS9kcGtnLmggICAgICAgICAgICAgICAgIHwgICAgMAorIGxpYi97ID0+IGRwa2d9L2R1bXAuYyAgICAgICAgICAgICAgICAgfCAgICAwCisgbGliL3sgPT4gZHBrZ30vZWhhbmRsZS5jICAgICAgICAgICAgICB8ICAgIDAKKyBsaWIveyA9PiBkcGtnfS9maWVsZHMuYyAgICAgICAgICAgICAgIHwgICAgMAorIGxpYi97ID0+IGRwa2d9L2xvY2suYyAgICAgICAgICAgICAgICAgfCAgICAwCisgbGliL3sgPT4gZHBrZ30vbG9nLmMgICAgICAgICAgICAgICAgICB8ICAgIDAKKyBsaWIveyA9PiBkcGtnfS9tZDUuYyAgICAgICAgICAgICAgICAgIHwgICAgMAorIGxpYi97ID0+IGRwa2d9L21kNS5oICAgICAgICAgICAgICAgICAgfCAgICAwCisgbGliL3sgPT4gZHBrZ30vbWxpYi5jICAgICAgICAgICAgICAgICB8ICAgIDAKKyBsaWIveyA9PiBkcGtnfS9teW9wdC11dGlsLmMgICAgICAgICAgIHwgICAgMAorIGxpYi97ID0+IGRwa2d9L215b3B0LmMgICAgICAgICAgICAgICAgfCAgICAwCisgbGliL3sgPT4gZHBrZ30vbXlvcHQuaCAgICAgICAgICAgICAgICB8ICAgIDAKKyBsaWIveyA9PiBkcGtnfS9uZm1hbGxvYy5jICAgICAgICAgICAgIHwgICAgMAorIGxpYi97ID0+IGRwa2d9L3BhcnNlLmMgICAgICAgICAgICAgICAgfCAgICAwCisgbGliL3sgPT4gZHBrZ30vcGFyc2VkdW1wLmggICAgICAgICAgICB8ICAgIDAKKyBsaWIveyA9PiBkcGtnfS9wYXJzZWhlbHAuYyAgICAgICAgICAgIHwgICAgMAorIGxpYi97ID0+IGRwa2d9L3BhdGguYyAgICAgICAgICAgICAgICAgfCAgICAwCisgbGliL3sgPT4gZHBrZ30vcHJvZ3Jlc3MuYyAgICAgICAgICAgICB8ICAgIDAKKyBsaWIveyA9PiBkcGtnfS9wcm9ncmVzcy5oICAgICAgICAgICAgIHwgICAgMAorIGxpYi97ID0+IGRwa2d9L3Nob3dwa2cuYyAgICAgICAgICAgICAgfCAgICAwCisgbGliL3sgPT4gZHBrZ30vc3RyaW5nLmMgICAgICAgICAgICAgICB8ICAgIDAKKyBsaWIveyA9PiBkcGtnfS9zdWJwcm9jLmMgICAgICAgICAgICAgIHwgICAgMAorIGxpYi97ID0+IGRwa2d9L3RhcmZuLmMgICAgICAgICAgICAgICAgfCAgICAwCisgbGliL3sgPT4gZHBrZ30vdGFyZm4uaCAgICAgICAgICAgICAgICB8ICAgIDAKKyBsaWIveyA9PiBkcGtnfS90ZXN0Ly5naXRpZ25vcmUgICAgICAgIHwgICAgMAorIGxpYi97ID0+IGRwa2d9L3Rlc3QvTWFrZWZpbGUuYW0gICAgICAgfCAgICAzICstCisgbGliL3sgPT4gZHBrZ30vdGVzdC90LW1hY3Jvcy5jICAgICAgICB8ICAgIDAKKyBsaWIveyA9PiBkcGtnfS90ZXN0L3QtcGF0aC5jICAgICAgICAgIHwgICAgMAorIGxpYi97ID0+IGRwa2d9L3Rlc3QvdC1wa2dpbmZvLmMgICAgICAgfCAgICAwCisgbGliL3sgPT4gZHBrZ30vdGVzdC90LXN0cmluZy5jICAgICAgICB8ICAgIDAKKyBsaWIveyA9PiBkcGtnfS90ZXN0L3QtdGVzdC5jICAgICAgICAgIHwgICAgMAorIGxpYi97ID0+IGRwa2d9L3Rlc3QvdC12YXJidWYuYyAgICAgICAgfCAgICAwCisgbGliL3sgPT4gZHBrZ30vdGVzdC90LXZlcnNpb24uYyAgICAgICB8ICAgIDAKKyBsaWIveyA9PiBkcGtnfS90cmlnZGVmZXJyZWQubCAgICAgICAgIHwgICAgMAorIGxpYi97ID0+IGRwa2d9L3RyaWdsaWIuYyAgICAgICAgICAgICAgfCAgICAwCisgbGliL3sgPT4gZHBrZ30vdXRpbHMuYyAgICAgICAgICAgICAgICB8ICAgIDAKKyBsaWIveyA9PiBkcGtnfS92YXJidWYuYyAgICAgICAgICAgICAgIHwgICAgMAorIGxpYi97ID0+IGRwa2d9L3ZlcmNtcC5jICAgICAgICAgICAgICAgfCAgICAwCisgc3JjL01ha2VmaWxlLmFtICAgICAgICAgICAgICAgICAgICAgICB8ICAgMTUgKysrKystLS0tCisgdXRpbHMvTWFrZWZpbGUuYW0gICAgICAgICAgICAgICAgICAgICB8ICAgMTAgKysrKy0tCisgNzUgZmlsZXMgY2hhbmdlZCwgMzkgaW5zZXJ0aW9ucygrKSwgNzQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA0MzlmNzdkODRlMmQ5OGJmYzM2M2ZhNWIyMWNhZTk3MjI1ZGYyY2VmCitBdXRob3I6IFJhcGhhZWwgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgSnVsIDE1IDIxOjAzOjQ5IDIwMDkgKzAyMDAKKworICAgIERwa2c6OlNobGliczo6U3ltYm9sRmlsZTo6bG9hZCgpOiB1c2UgYSBzaW5nbGUgb2JqZWN0IHJlZmVyZW5jZSBldmVyeXdoZXJlCisgICAgCisgICAgSW5zdGVhZCBvZiBrZWVwaW5nIHR3byB2YXJpYWJsZXMgc3luY2hyb25pemVkIChvbmUgYmVpbmcgdGhlIHJlZiBvZiB0aGUKKyAgICBvdGhlciksIHVzZSB0aGUgcmVmZXJlbmNlIGV2ZXJ5d2hlcmUuIEFuZCBzaW1wbGlmeSBjcmVhdGlvbiBvZiB0aGUKKyAgICBpbml0aWFsIHJlZmVyZW5jZS4KKworIHNjcmlwdHMvRHBrZy9TaGxpYnMvU3ltYm9sRmlsZS5wbSB8ICAgMjkgKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDE0IGluc2VydGlvbnMoKyksIDE1IGRlbGV0aW9ucygtKQorCitjb21taXQgZTQxMWI1NzMyZGQ3NmExNTdhNTA3NzhjZTk2YzgxMTE1YjQ5MzMyYQorQXV0aG9yOiBNb2Rlc3RhcyBWYWluaXVzIDxtb2Rlc3Rhc0B2YWluaXVzLmV1PgorRGF0ZTogICBXZWQgSnVsIDE1IDE5OjM4OjQ1IDIwMDkgKzAzMDAKKworICAgIFJlcGxhY2UgbG9jYWwgd2l0aCBteSBpbiBTeW1ib2xGaWxlOjpsb2FkKCkgYW5kIHVzZSBzdHJpY3QuCisgICAgCisgICAgUmF0aGVyIHRoYW4gY3JlYXRpbmcgYW4gYWxpYXMgd2l0aCBsb2NhbCwgbWFudWFsbHkgZG8gJGN1cnJlbnRfb2JqZWN0X3JlZgorICAgIHJlLXJlZmVyZW5jaW5nLiBUaGlzIGFsbG93cyB0byB1c2UgJ215ICRvYmplY3QnIGFuZCB0byBlbmFibGUgJ3VzZSBzdHJpY3QnLgorICAgIAorICAgIFNpZ25lZC1vZmYtYnk6IE1vZGVzdGFzIFZhaW5pdXMgPG1vZGVzdGFzQHZhaW5pdXMuZXU+CisKKyBzY3JpcHRzL0Rwa2cvU2hsaWJzL1N5bWJvbEZpbGUucG0gfCAgICA4ICsrKysrLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA3N2Y3MjkyMTI4ZjMxNWUwY2Q5NTE3NzI0MTE4NDI1MjYwNDM0N2NlCitBdXRob3I6IFJhcGhhZWwgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgSnVsIDE1IDE2OjQ0OjIxIDIwMDkgKzAyMDAKKworICAgIGRlYi1zdWJzdHZhcnMoNSk6IGxpc3QgZmllbGRzIHdoZXJlIHN1YnN0dmFycyBkbyBub3Qgd29yaworCisgZGViaWFuL2NoYW5nZWxvZyAgICB8ICAgIDIgKysKKyBtYW4vZGViLXN1YnN0dmFycy41IHwgICAgNSArKysrKworIDIgZmlsZXMgY2hhbmdlZCwgNyBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgOGU3MGI5YjJmOWQxNjAxMGM2MTQ0OTZjMGY4ZjdlOWEwZDZjZWQxNQorQXV0aG9yOiBNb2Rlc3RhcyBWYWluaXVzIDxtb2Rlc3Rhc0B2YWluaXVzLmV1PgorRGF0ZTogICBNb24gSnVuIDI5IDAwOjE4OjE3IDIwMDkgKzAzMDAKKworICAgIGRwa2ctZ2Vuc3ltYm9sczogaW1wcm92ZSBkaWZmIGxhYmVsIGFnYWluLgorICAgIAorICAgIFVzZSAiJHNvdXJjZV9maWxlICgkcGFja2FnZSAkYXJjaCkiLgorICAgIAorICAgIFNpZ25lZC1vZmYtYnk6IE1vZGVzdGFzIFZhaW5pdXMgPG1vZGVzdGFzQHZhaW5pdXMuZXU+CisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICB8ICAgIDMgKysrCisgc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGwgfCAgICA1ICsrKystCisgMiBmaWxlcyBjaGFuZ2VkLCA3IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBhMjdkMTRjNDQyM2M0NGI0MDA3NjRjOTliNjY5ODI0ZjRiYTZlOWExCitBdXRob3I6IFJhcGhhZWwgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgSnVsIDE1IDE1OjU5OjAzIDIwMDkgKzAyMDAKKworICAgIEFkZCBuZXcgdGVzdCBjYXNlIGZvciBzeW1ib2xzIGZpbGUgcGFyc2luZworICAgIAorICAgIEVuc3VyZSB0aGF0IGFuICNpbmNsdWRlIGNhbiBjaGFuZ2UgdGhlIG5hbWUgb2YgdGhlIGN1cnJlbnRseSBwYXJzZWQKKyAgICBsaWJyYXJ5IChFTEYgb2JqZWN0KS4KKworIHNjcmlwdHMvdC8yMDBfRHBrZ19TaGxpYnMudCAgICAgICAgICAgICAgICAgfCAgICA4ICsrKysrKystCisgc2NyaXB0cy90LzIwMF9EcGtnX1NobGlicy9zeW1ib2xzLmZha2UtMyAgICB8ICAgIDUgKysrKysKKyBzY3JpcHRzL3QvMjAwX0Rwa2dfU2hsaWJzL3N5bWJvbHMuaW5jbHVkZS0xIHwgICAgMiArKworIDMgZmlsZXMgY2hhbmdlZCwgMTQgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDRiZDE0YzQ5MGI2M2U1ODc5ODEwODk2OWFjM2E1YTFhYTJmYTA0ZjMKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgSnVsIDE0IDEyOjUxOjQwIDIwMDkgKzAyMDAKKworICAgIGRzZWxlY3Q6IEZpeCB0eXBvIGluIHBhY2thZ2UgZGVzZWxlY3Rpb24gY29uZGl0aW9uCisgICAgCisgICAgVGhlIHRlc3Qgd2FzIGFsd2F5cyBmYWxzZSBkdWUgdG8gdGhlIHR5cG8uCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICB8ICAgIDIgKysKKyBkc2VsZWN0L3BrZ2RlcGNvbi5jYyB8ICAgMTAgKysrKystLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgNyBpbnNlcnRpb25zKCspLCA1IGRlbGV0aW9ucygtKQorCitjb21taXQgZTYwZTY2ZWNmNzIxYzk3MWY5NTJhN2NlMDk1YTU0NWM5ZTdiNzE4YgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBKdWwgMTQgMTI6Mzc6NTggMjAwOSArMDIwMAorCisgICAgUmVtb3ZlIFRPRE8gaXRlbQorCisgVE9ETyB8ICAgIDEgLQorIDEgZmlsZXMgY2hhbmdlZCwgMCBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgNmIwYWYzZTZmYTczZTllMzBmNjdkYzg4NTE2NDI0NGUxM2VjNWQ2YworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBKdWwgMTQgMTI6MzU6NTEgMjAwOSArMDIwMAorCisgICAgQWRkIGZha2Vyb290IHRvIGRwa2ctZGV2IFJlY29tbWVuZHMKKyAgICAKKyAgICBTaW5jZSB2ZXJzaW9uIDEuMTQuNywgZHBrZy1idWlsZHBhY2thZ2UgdXNlcyBmYWtlcm9vdCBieSBkZWZhdWx0IHRvCisgICAgb2J0YWluIChlbXVsYXRlZCkgcm9vdCBwcml2aWxlZ2VzLgorICAgIAorICAgIFJlcG9ydGVkLWJ5OiBTdmVuIEpvYWNoaW0gPHN2ZW5qb2FjQGdteC5kZT4KKyAgICBDbG9zZXM6ICM1MzY4MjEKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAxICsKKyBkZWJpYW4vY29udHJvbCAgIHwgICAgMiArLQorIDIgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgMDg0NjNkM2NhZmRhZDFjMjViOTVkMjNkYWExNmNiNzBlNmJjODRhMworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBKdWwgMTQgMTI6MzI6NTMgMjAwOSArMDIwMAorCisgICAgQ2xlYW51cCBlZmxhZyB2YWx1ZSBuYW1lcworICAgIAorICAgIFJlbW92ZSBmIGFuZCB2IGZyb20gdmFsdWUgbmFtZXMuIFJlbW92ZSBkdXBsaWNhdGVkIHZhbHVlIGZvciByZWluc3RyZXEuCisKKyBkc2VsZWN0L3BrZ2RlcGNvbi5jYyB8ICAgIDcgKysrKystLQorIGxpYi9kYXRhYmFzZS5jICAgICAgIHwgICAgNCArKy0tCisgbGliL2Rwa2ctZGIuaCAgICAgICAgfCAgICA1ICsrLS0tCisgbGliL2R1bXAuYyAgICAgICAgICAgfCAgICAyICstCisgbGliL3BhcnNlLmMgICAgICAgICAgfCAgICAyICstCisgbGliL3BhcnNlaGVscC5jICAgICAgfCAgICA2ICsrKy0tLQorIHNyYy9hcmNoaXZlcy5jICAgICAgIHwgICAgMiArLQorIHNyYy9jbGVhbnVwLmMgICAgICAgIHwgICAxMiArKysrKystLS0tLS0KKyBzcmMvY29uZmlndXJlLmMgICAgICB8ICAgIDQgKystLQorIHNyYy9lbnF1aXJ5LmMgICAgICAgIHwgICAgNSArKystLQorIHNyYy9wcm9jZXNzYXJjLmMgICAgIHwgICAgOCArKysrLS0tLQorIHNyYy9yZW1vdmUuYyAgICAgICAgIHwgICAgNCArKy0tCisgMTIgZmlsZXMgY2hhbmdlZCwgMzIgaW5zZXJ0aW9ucygrKSwgMjkgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBmYjZjNGE3YTdhNDZiOGJhN2Q2ZTZmZjk1OWJmNmIyMzA1ODY5MGJiCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIEp1bCAxNCAxMjowNDo0NyAyMDA5ICswMjAwCisKKyAgICBSZW1vdmUgb2Jzb2xldGUg4oCYaG9sZOKAmSBhbmQg4oCYaG9sZC1yZWluc3RyZXHigJkgaW50ZXJuYWwgc3RhdHVzIGZsYWdzCisgICAgCisgICAgVGhlc2UgZmxhZ3MgaGF2ZSBiZWVuIG9ic29sZXRlIGZvciBhIGxvbmcgdGltZSwgYW5kIHRoZSDigJhob2xk4oCZIHBhcnQKKyAgICBoYXMgYmVlbiBjb252ZXJ0ZWQgdG8gdGhlIOKAmHdhbnRfaG9sZOKAmSB2YWx1ZSBvbiBkYXRhYmFzZSBwYXJzZS4gTm8KKyAgICBjdXJyZW50IHN5c3RlbSBoYXZpbmcgYmVlbiB1cGdyYWRlZCB0aHJvdWdoIHNldmVyYWwgRGViaWFuIHJlbGVhc2VzCisgICAgc2hvdWxkIGhhdmUgdGhvc2UgdmFsdWVzIGluIHRoZWlyIHN0YXR1cyBkYXRhYmFzZSBhbnltb3JlLgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgIHwgICAgMSArCisgZHNlbGVjdC9wa2dkaXNwbGF5LmNjIHwgICAgMiArLQorIGxpYi9kcGtnLWRiLmggICAgICAgICB8ICAgIDUgKy0tLS0KKyBsaWIvZHVtcC5jICAgICAgICAgICAgfCAgICAyICstCisgbGliL2ZpZWxkcy5jICAgICAgICAgIHwgICAgNCAtLS0tCisgbGliL3BhcnNlaGVscC5jICAgICAgIHwgICAgMiAtLQorIHNyYy9xdWVyeS5jICAgICAgICAgICB8ICAgIDQgKystLQorIDcgZmlsZXMgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCAxNCBkZWxldGlvbnMoLSkKKworY29tbWl0IDViZDUzYmMxYThkMTc5ZmYxODkxYjAzNjJhYzE5NjhiMzZkMzFmYWEKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gSnVsIDEzIDE1OjEwOjIxIDIwMDkgKzAyMDAKKworICAgIE1vdmUgZmlsZXNkYmluaXQgZGVjbGFyYXRpb24gdG8gZmlsZXNkYi5oCisKKyBzcmMvZmlsZXNkYi5oIHwgICAgMiArKworIHNyYy9tYWluLmMgICAgfCAgICAxICsKKyBzcmMvbWFpbi5oICAgIHwgICAgNCAtLS0tCisgMyBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA4NWEzOThjM2QwODY0MjQ1MDhiY2MwN2FiYmIxYmM2NzhiYjEzMGZjCitBdXRob3I6IEJyYW5kZW4gUm9iaW5zb24gPGJyYW5kZW5AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IE5vdiAyMCAwNzowMDowMiAyMDA4ICswMjAwCisKKyAgICBGaXggdHlwbyBpbiBtYWNybyBhcmd1bWVudAorCisgc3JjL21haW4uYyB8ICAgIDQgKystLQorIDEgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgN2YxMDc5N2FmN2NkYTJhODg1NWY2ZTEzMmNlMDE2M2I0NmMwNWFkYQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBOb3YgMjAgMDc6MDI6NTAgMjAwOCArMDIwMAorCisgICAgRml4IHR5cG8gaW4gY29tbWVudAorCisgc3JjL3Byb2Nlc3NhcmMuYyB8ICAgIDIgKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDJlZmFmNWZmNGFmMjY1M2JiYjY5ZDA1NTY4ZDg2MjhkN2NiMGU5N2IKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gSnVsIDEzIDE0OjMyOjM0IDIwMDkgKzAyMDAKKworICAgIElubGluZSBDT05GRk9QVENFTExTIGludG8gY29uZmZvcHRjZWxscyBkZWZpbml0aW9uCisgICAgCisgICAgVGhlIHZhbHVlcyBpbiBDT05GRk9QVENFTExTIGFyZSBkcGtnIHNwZWNpZmljLCBhbmQgbm90IHRvIGJlIGZvdW5kIGluCisgICAgbGliZHBrZyBzbyB0aGVyZSdzIG5vIG11Y2ggcG9pbnQgaW4gZGVmaW5pbmcgdGhlIG1hY3JvIHRoZXJlLiBBbHNvIHRoaXMKKyAgICBtYWtlcyBmb3IgY2xlYXJlciBjb2RlLgorCisgbGliL2Rwa2cuaCAgICAgIHwgICAgNiAtLS0tLS0KKyBzcmMvY29uZmlndXJlLmMgfCAgICA2ICsrKysrLQorIDIgZmlsZXMgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCA3IGRlbGV0aW9ucygtKQorCitjb21taXQgMWRiYzZiOWYzNzMxNzk2NmE5NTYxNThiY2EzNzk4MzI4YTRmNTI1YgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBKdWwgMTMgMTQ6Mjk6MzEgMjAwOSArMDIwMAorCisgICAgZHBrZzogTWFrZSBjb25mZm9wdGNlbGxzIHN0YXRpYworCisgc3JjL2NvbmZpZ3VyZS5jIHwgICAgMiArLQorIHNyYy9tYWluLmggICAgICB8ICAgIDEgLQorIDIgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgOWE5NzllNjhmYTQ3YzAyODhlNzcxMDJlOTM1ZmEwNzAzODIxMjA3ZQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBKdWwgMTMgMTM6NTY6MDEgMjAwOSArMDIwMAorCisgICAgZHBrZzogUmVtb3ZlIHVudXNlZCBjZm9tX21haW4gZW51bSB2YWx1ZQorCisgc3JjL21haW4uaCB8ICAgIDEgLQorIDEgZmlsZXMgY2hhbmdlZCwgMCBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgMmE3Y2JkOWJiYWQ2NzAyMWU0NDcwNjg1MjFmZDYwZDQyZTAyY2I0NgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBKdWwgMTMgMDI6NDQ6NDggMjAwOSArMDIwMAorCisgICAgZHBrZy1zcGxpdDogUHJvcGVybHkgY2hlY2sgZXJyb3IgY29uZGl0aW9uIG9uIG9wZW4gd2hlbiBzcGxpdHRpbmcKKworIGRwa2ctc3BsaXQvc3BsaXQuYyB8ICAgIDMgKystCisgMSBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBkZTI0ZThkNzEwNjg2YTRlMjcxY2FhY2NmZTNmNDZhNDYxOWVjYmExCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIEp1bCAxMyAwMjoyNzoxNSAyMDA5ICswMjAwCisKKyAgICBkcGtnLWRlYjogUmVtb3ZlIHRyYWlsaW5nIOKAmC/igJkgYW5kIOKAmC8u4oCZIGZyb20gdGhlIGRpcmVjdG9yeSBuYW1lIG9uIC1iCisgICAgCisgICAgV2hlbiB1c2luZyDigJxkcGtnLWRlYiAtYuKAnSBhbmQgc3BlY2lmaXluZyBvbmx5IHRoZSBkaXJlY3RvcnkgbmFtZSB0byBiZQorICAgIHVzZWQgYXMgdGhlIGJhc2UgbmFtZSBmb3IgdGhlIHBhY2thZ2UgbmFtZSwgcmVtb3ZlIGFueSB0cmFpbGluZworICAgIGNoYXJhY3RlcnMgdGhhdCB3b3VsZCBtYWtlIGRwa2ctZGViIGNyZWF0ZSB0aGUgZGVzdGluYXRpb24gZmlsZSBpbnNpZGUKKyAgICB0aGUgZGlyZWN0b3J5LgorICAgIAorICAgIENsb3NlczogIzIxODAxOCwgIzM3MzYwMgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDIgKysKKyBkcGtnLWRlYi9idWlsZC5jIHwgICAgNSArKysrLQorIDIgZmlsZXMgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgOWQ4ZWRjNTg4NDIyMDU5NmQ2MTJmNzI3NGVjNzdhM2FiYTcwMTU0NQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBKdWwgMTIgMjM6NTU6MDUgMjAwOSArMDIwMAorCisgICAgUmVtb3ZlIHVudXNlZCBhc3NlcnQuaCBpbmNsdWRlcworCisgZHBrZy1zcGxpdC9zcGxpdC5jICB8ICAgIDEgLQorIGRzZWxlY3QvYmFzZWNtZHMuY2MgfCAgICAyIC0tCisgZHNlbGVjdC9iaW5kaW5ncy5jYyB8ICAgIDEgLQorIHNyYy9jbGVhbnVwLmMgICAgICAgfCAgICAxIC0KKyBzcmMvZGl2ZXJ0ZGIuYyAgICAgIHwgICAgMSAtCisgc3JjL3N0YXRkYi5jICAgICAgICB8ICAgIDEgLQorIHNyYy90cmlnY21kLmMgICAgICAgfCAgICAxIC0KKyBzcmMvdXBkYXRlLmMgICAgICAgIHwgICAgMSAtCisgOCBmaWxlcyBjaGFuZ2VkLCAwIGluc2VydGlvbnMoKyksIDkgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA0MTBhNGUwOGE2ZWVjODMwMDBjOGM5NzRkOThmNjQ1MjNlZThhOTczCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIEp1bCAxMiAyMzowNTowMyAyMDA5ICswMjAwCisKKyAgICBtYW46IERvY3VtZW50IOKAnGhvbGTigJ0gYXMgcGFja2FnZSBzZWxlY3Rpb24gc3RhdGUgaW5zdGVhZCBvZiBmbGFnCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMSArCisgbWFuL2Rwa2cuMSAgICAgICB8ICAgIDggKysrKy0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDUgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKKworY29tbWl0IDcwNDNkY2E5NmUyZDU2ODI0MjU1OGI0NTdiNzlhYzgwNWM0NjExM2YKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gSnVsIDEyIDIyOjQ1OjQ5IDIwMDkgKzAyMDAKKworICAgIFVwZGF0ZSBUT0RPIGxpc3QKKworIFRPRE8gfCAgIDE0ICsrKysrKysrKysrKy0tCisgMSBmaWxlcyBjaGFuZ2VkLCAxMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgZjA5YWNjOWQzODRiZDg1Y2Q5YjNmODdiYThkNTdlZGJiZjY0NjYxYgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBKdWwgMTIgMjI6MTk6NDUgMjAwOSArMDIwMAorCisgICAgUmVzY2hlZHVsZSByb2FkbWFwIGFuZCBmZWF0dXJlIHJlbW92YWxzIGluIHJlbGF0aW9uIHRvIHZlcnNpb25zCisgICAgCisgICAgVXNlIHZlcnNpb25zIGluc3RlYWQgb2YgRGViaWFuIHNwZWNpZmljIHJlbGVhc2VzLCBhbHRob3VnaCB3ZSBtYXAgbWlub3IKKyAgICB2ZXJzaW9ucyB0byBEZWJpYW4gcmVsZWFzZXMuCisKKyBSRUFETUUuZmVhdHVyZS1yZW1vdmFsLXNjaGVkdWxlIHwgICAxMCArKysrKy0tLS0tCisgVE9ETyAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMjQgKysrKysrKysrLS0tLS0tLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAxNCBpbnNlcnRpb25zKCspLCAyMCBkZWxldGlvbnMoLSkKKworY29tbWl0IGE5NzYxZWJlNmJkNWI5OWJlY2UyYTE1NmU3MTdiMmFmOTRkMGVhYjAKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gSnVsIDEyIDIxOjM4OjE2IDIwMDkgKzAyMDAKKworICAgIGRwa2c6IENvYWxlc2NlIHNpbWlsYXIg4oCcdGFrZXMgbm8gYXJndW1lbnRz4oCdIHN0cmluZ3MKKyAgICAKKyAgICBNb3ZlIHRoZSBvcHRpb24gbmFtZSB0byBhbiBhcmd1bWVudCB0byByZXVzZSBleGlzdGluZyB0cmFuc2xhdGlvbnMuCisKKyBzcmMvdHJpZ2NtZC5jIHwgICAgMyArKy0KKyBzcmMvdXBkYXRlLmMgIHwgICAgMyArKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDIyNGYwMjg1YWJjMzA0YmVjMDU5ZTYxNDQ3NzgxNzdjMmVlZDA2ZWUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gSnVsIDEyIDIwOjExOjUzIDIwMDkgKzAyMDAKKworICAgIE9ic29sZXRlIC0tZm9yZ2V0LW9sZC11bmF2YWlsCisgICAgCisgICAgT24gcGFyc2UgbWFyayBub3QtaW5zdGFsbGVkIGxlZnRvdmVyIHBhY2thZ2VzIGZvciBhdXRvbWF0aWMgcmVtb3ZhbCBmcm9tCisgICAgdGhlIGRhdGFiYXNlIG9uIG5leHQgZHVtcC4gVGhlIHN0YXRlcyB3ZSBjb25zaWRlciBmb3IgcmVtb3ZhbCBhcmUKKyAgICB3YW50X3B1cmdlLCB3YW50X2RlaW5zdGFsbCBhbmQgd2FudF9ob2xkLiBUaGUgbGF0dGVyIGJlaW5nIHRoZSBhbmNpZW50CisgICAgZGVmYXVsdCBmb3Igbm90LWluc3RhbGxlZCBwYWNrYWdlcy4KKyAgICAKKyAgICBUaGlzIG1ha2VzIHRoZSAtLWZvcmdldC1vbGQtdW5hdmFpbCBvcHRpb24gbm90IHVzZWZ1bCBhbnltb3JlLCBzbyBzd2l0Y2gKKyAgICBpdCB0byBiZSBhIG5vLW9wLCBhbmQgdGFyZ2V0IGl0IGZvciBmdXR1cmUgcmVtb3ZhbCBhcyBvYnNvbGVzY2VudC4KKyAgICAKKyAgICBDbG9zZXM6ICMzMzM5NCwgIzQyOTI2MgorCisgUkVBRE1FLmZlYXR1cmUtcmVtb3ZhbC1zY2hlZHVsZSB8ICAgIDkgKysrKysrKysrCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICAgICB8ICAgIDMgKysrCisgZHNlbGVjdC9tZXRob2RzL2Rpc2svdXBkYXRlICAgICB8ICAgIDIgLS0KKyBsaWIvcGFyc2UuYyAgICAgICAgICAgICAgICAgICAgIHwgICAxMyArKysrKysrKysrKysrCisgbWFuL2Rwa2cuMSAgICAgICAgICAgICAgICAgICAgICB8ICAgIDMgKystCisgc3JjL3VwZGF0ZS5jICAgICAgICAgICAgICAgICAgICB8ICAgMzEgKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDYgZmlsZXMgY2hhbmdlZCwgMjkgaW5zZXJ0aW9ucygrKSwgMzIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA2YzZlYzRhNDM4Zjg4OWU5MGY0NzQxZmQ3NzgwZWI2NjI2ZTkzM2UxCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIEp1bCAxMiAyMDowMjo1NiAyMDA5ICswMjAwCisKKyAgICBkcGtnOiBQcm9wZXJseSBtYXJrIHBhY2thZ2VzIGJlaW5nIHB1cmdlZCBmb3IgZGlzYXBwZWFyYW5jZQorICAgIAorICAgIFdoZW4gYSBwYWNrYWdlIGhhcyBiZWVuIHB1cmdlZCwgaXQgc2hvdWxkIGJlIG1hcmtlZCBhcyB3YW50X3Vua25vd24KKyAgICBhbmQgdGhlIGNvbmZpZ3ZlcnNpb24gYmxhbmtlZCwgb3RoZXJ3aXNlIGRwa2cgY29uc2lkZXJzIGl0IHRvIHN0aWxsCisgICAgYmUgaW5mb3JtYXRpdmUgYW5kIGtlZXBzIGl0IGFyb3VuZCwgd2hpY2ggbmVlZHMgbGF0ZXIgb24gbWFudWFsCisgICAgaW50ZXJ2ZW50aW9uIGZyb20gdGhlIHVzZXIgdG8gY2xlYW4gdXAgdGhlIGRhdGFiYXNlLgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDMgKysrCisgc3JjL3Byb2Nlc3NhcmMuYyB8ICAgIDMgKystCisgc3JjL3JlbW92ZS5jICAgICB8ICAgIDIgKysKKyAzIGZpbGVzIGNoYW5nZWQsIDcgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDg5NmI0NjkyMTFiMjFhMDFjODQ3OTQ2MjQwZjJkMDAzZDNkZmI3MWIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgSnVsIDEwIDIxOjUwOjU2IDIwMDkgKzAyMDAKKworICAgIGxpYmRwa2c6IFVzZSBpc2JsYW5rIGluc3RlYWQgb2YgYWQtaG9jIGNvbXBhcmlzb25zCisKKyBsaWIvcGFyc2VoZWxwLmMgfCAgICA5ICsrKysrKy0tLQorIDEgZmlsZXMgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQorCitjb21taXQgNjZkZmY1YTgyNDg5YzlkYWY4NTg3NjQ5MmZiMTk2OTA0MWMxODFlOQorQXV0aG9yOiBNaWxvIENhc2FncmFuZGUgPG1pbG9AdWJ1bnR1LmNvbT4KK0RhdGU6ICAgU2F0IEp1bCAxMSAwNzoyNDozMSAyMDA5ICswMjAwCisKKyAgICBJdGFsaWFuIHRyYW5zbGF0aW9uIHVwZGF0ZWQKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAxICsKKyBwby9pdC5wbyAgICAgICAgIHwgMzQyMSArKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDE1NTMgaW5zZXJ0aW9ucygrKSwgMTg2OSBkZWxldGlvbnMoLSkKKworY29tbWl0IGYwNTI1Y2UzNDA5YjNkYzU0MjJhNWIwYzVjYzI4MTk3YzU1Y2IwMTUKK01lcmdlOiA5MzliMGMwIDMwZjc5N2MKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgSnVsIDEwIDEyOjEyOjAzIDIwMDkgKzAyMDAKKworICAgIE1lcmdlIGJyYW5jaCAnc2lkJyAodGhyb3VnaCB0YWcgJzEuMTUuMy4xJykKKyAgICAKKyAgICBDb25mbGljdHM6CisgICAgCWNvbmZpZ3VyZS5hYworICAgIAlkZWJpYW4vY2hhbmdlbG9nCisKK2NvbW1pdCA5MzliMGMwZjkwZDE0NWRkYTI5MThiZWVjNmJmYjQ4Njk0NTI4NTAzCitBdXRob3I6IEhvbGdlciBXYW5zaW5nIDxsaW51eEB3YW5zaW5nLW9ubGluZS5kZT4KK0RhdGU6ICAgVGh1IEp1bCA5IDIxOjIzOjI1IDIwMDkgKzAyMDAKKworICAgIEZpeCBwb29yIHdvcmRpbmcgaW4gR2VybWFuIGRwa2cgdHJhbnNsYXRpb24KKworIHBvL2RlLnBvIHwgICAgMiArLQorIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgMzBmNzk3YzdjMWZhMWJhYzIzODhlNDdkMWMyODMwMjgwNGE5YzUzYgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBKdWwgOCAxMToyNjo1NSAyMDA5ICswMjAwCisKKyAgICBSZWxlYXNlIDEuMTUuMy4xCisKKyBjb25maWd1cmUuYWMgICAgIHwgICAgMiArLQorIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICA0ICsrLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworY29tbWl0IGZkNGQ5OTg2MmFmODM3Y2NmMTJlODNkMTNkYTczZThmZmIyNGFhMTcKK0F1dGhvcjogTW9kZXN0YXMgVmFpbml1cyA8bW9kZXN0YXNAdmFpbml1cy5ldT4KK0RhdGU6ICAgU3VuIEp1biAyOCAyMzo1OTowNiAyMDA5ICswMzAwCisKKyAgICBGaXggd2lsZGNhcmQgc3VwcG9ydCBpbiBzeW1ib2wgZmlsZXMKKyAgICAKKyAgICBUaGV5IHdlcmUgYnJva2VuIGR1ZSB0byB0eXBvLiBBbHNvIGFkZCBhIHRlc3QgZm9yIHdpbGRjYXJkcy4KKyAgICAKKyAgICBTaWduZWQtb2ZmLWJ5OiBNb2Rlc3RhcyBWYWluaXVzIDxtb2Rlc3Rhc0B2YWluaXVzLmV1PgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICAgICAgIHwgICAgMyArKy0KKyBzY3JpcHRzL0Rwa2cvU2hsaWJzL1N5bWJvbEZpbGUucG0gfCAgICAyICstCisgc2NyaXB0cy90LzIwMF9EcGtnX1NobGlicy50ICAgICAgIHwgICAxMyArKysrKysrKysrKystCisgMyBmaWxlcyBjaGFuZ2VkLCAxNSBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQorCitjb21taXQgOWQwZmU5MWYyMjkxZGM1YjljZWVkOGY2M2ExZmMwMDZmMjBlMzZlZAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBKdWwgOCAxMToxMzo1NCAyMDA5ICswMjAwCisKKyAgICBCdW1wIHZlcnNpb24gdG8gMS4xNS4zLjF+CisKKyBjb25maWd1cmUuYWMgICAgIHwgICAgMiArLQorIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICA2ICsrKysrKworIDIgZmlsZXMgY2hhbmdlZCwgNyBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgZmQyZmQxM2NiM2Q2M2U2ZmJlNTVlYWI3NWEyNmY1YWMyMTdmNTVjNworQXV0aG9yOiBIZWxnZSBLcmV1dHptYW5uIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KK0RhdGU6ICAgTW9uIEp1bCA2IDE4OjIwOjM4IDIwMDkgKzAyMDAKKworICAgIFVwZGF0ZSBnZXJtYW4gdHJhbnNsYXRpb24gb2YgbWFudWFsIHBhZ2VzCisgICAgCisgICAgVXBkYXRlIHRvIDE2NjR0MHUwZi4KKworIG1hbi9wby9kZS5wbyB8ICAgMTEgKysrKystLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDUgaW5zZXJ0aW9ucygrKSwgNiBkZWxldGlvbnMoLSkKKworY29tbWl0IDkzMmQ2ZmYxMjAwMDE1NDVmMGUzOWE4OWE3N2IyOTQ3NDQyNzQ1OTEKK0F1dGhvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitEYXRlOiAgIFN1biBKdWwgNSAwODozNToyOCAyMDA5ICswMjAwCisKKyAgICBVcGRhdGUgR2VybWFuIHNjcmlwdHMgdHJhbnNsYXRpb24KKyAgICAKKyAgICBVcGRhdGUgdG8gNDc0dC4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAzICsKKyBzY3JpcHRzL3BvL2RlLnBvIHwgIDE4MSArKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDkwIGluc2VydGlvbnMoKyksIDk0IGRlbGV0aW9ucygtKQorCitjb21taXQgMzAyNjkwODUyMjVjOWIwYTZiZmQ5NzJjYzJkZGE1NjJjYWU3YmUwYgorQXV0aG9yOiBIZWxnZSBLcmV1dHptYW5uIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KK0RhdGU6ICAgU2F0IEp1bCA0IDE1OjI0OjM3IDIwMDkgKzAyMDAKKworICAgIEZpeCBtaW5vciB0cmFuc2xhdGlvbiBlcnJvciBpbiBzY3JpcHRzL3BvL2RlLnBvCisKKyBzY3JpcHRzL3BvL2RlLnBvIHwgICAgNCArKy0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBlNDhkMTllZDQ5NTIwZWZmZTc5YWY5ZWQ1YzlkYzdlNzQ0Y2IxMTM3CitBdXRob3I6IFN2ZW4gSm9hY2hpbSA8c3ZlbmpvYWNAZ214LmRlPgorRGF0ZTogICBGcmkgSnVsIDMgMTc6MzQ6MjIgMjAwOSArMDIwMAorCisgICAgRml4IHR5cG8gKHVuZXhlY3B0ZWQgLT4gdW5leHBlY3RlZCkKKworIHNyYy9zdGF0ZGIuYyB8ICAgIDIgKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGNkZDZlZjhkNDczYmRhZTdhN2MxMTY2MDc1YzgzNTVkZGI2ZDAzNjEKK0F1dGhvcjogU3ZlbiBKb2FjaGltIDxzdmVuam9hY0BnbXguZGU+CitEYXRlOiAgIEZyaSBKdWwgMyAxNzozMToyMSAyMDA5ICswMjAwCisKKyAgICBHZXJtYW4gZHBrZyB0cmFuc2xhdGlvbiB1cGRhdGUKKyAgICAKKyAgICBVcGRhdGUgdG8gMTAwNXQ4Zi4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAzICsrLQorIHBvL2RlLnBvICAgICAgICAgfCAgIDE4ICsrKysrKysrKy0tLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgMTEgaW5zZXJ0aW9ucygrKSwgMTAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA3MjRkZGMyZGQ4Y2UxMWRjMzAyNDlkY2I2MDIzYjBiOGY1NmE3MzlkCitBdXRob3I6IFJhcGhhZWwgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgSnVsIDMgMTU6NTg6MjAgMjAwOSArMDIwMAorCisgICAgVXBkYXRlIFN0YW5kYXJkcy1WZXJzaW9uIHRvIDMuOC4yCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMSArCisgZGViaWFuL2NvbnRyb2wgICB8ICAgIDIgKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDRhMWU4MTczZjYzYzFjN2E2ODA3YWE3NjI4MGZjOGFlYzEyOGJjODEKK0F1dGhvcjogUmFwaGFlbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBKdWwgMyAxNTo0MzoyOSAyMDA5ICswMjAwCisKKyAgICBGaXggZHBrZydzIHByZWluc3Qgd2hlbiBhbHRlcm5hdGl2ZXMgZGlyIGNvbnRhaW5zIHVuZXhwZWN0ZWQgc3ViZGlycworICAgIAorICAgIEFkanVzdCB0aGUgbGludGlhbiBvdmVycmlkZXMgYWNjb3JkaW5nbHkuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICB8ICAgIDIgKysKKyBkZWJpYW4vZHBrZy5saW50aWFuLW92ZXJyaWRlcyB8ICAgIDYgKysrLS0tCisgZGViaWFuL2Rwa2cucHJlaW5zdCAgICAgICAgICAgfCAgICA1ICsrKy0tCisgMyBmaWxlcyBjaGFuZ2VkLCA4IGluc2VydGlvbnMoKyksIDUgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA0OWM1ZDBiYmUwMGIzOTIyZmIwN2VmYWU2MGZkNjViYjkxYzY0YmIxCitBdXRob3I6IFJhcGhhZWwgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgSnVsIDMgMTU6MzU6NTAgMjAwOSArMDIwMAorCisgICAgQWRkIGNoYW5nZWxvZyBlbnRyeSBmb3IgdGhlIGluc3RhbGwtaW5mbyB0cmFuc2l0aW9uCisKKyBUT0RPICAgICAgICAgICAgIHwgICAgMSArCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDcgKysrKysrKworIDIgZmlsZXMgY2hhbmdlZCwgOCBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgNzJkNGE5MTU0ZDBmN2FjMmQ5YTFhZGFkM2RkNTkzNjhkOWQ4NmMyZgorQXV0aG9yOiBSYXBoYWVsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIEp1biAzMCAxMjoyMDozMCAyMDA5ICswMjAwCisKKyAgICBCcmVha3M6IHhlbWFjczIxLXN1cHBvcnQgaW5zdGVhZCBpbnN0ZWFkIG9mIGFsbCB4ZW1hY3MyMS0qCisgICAgCisgICAgVGhlIG1haW50YWluZXIgZGVjaWRlZCB0byBmYWN0b3JpemUgdGhlIGluc3RhbGwtaW5mbyBkZXBlbmRlbmN5CisgICAgaW4gdGhlIHhlbWFjczIxLXN1cHBvcnQgcGFja2FnZSBzbyB3ZSBzaG91bGQgZW5zdXJlIHRoYXQgdGhpcworICAgIHBhY2thZ2UgZ2V0cyB1cGdyYWRlZCBhbmQgbm90IG9ubHkgdGhlIG90aGVyIG9uZXMuCisKKyBkZWJpYW4vY29udHJvbCB8ICAgIDcgKystLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCA1IGRlbGV0aW9ucygtKQorCitjb21taXQgZGQ3YmFmODI1MDk4MjA5ZTFiMzExYjNiNWUxOWVhZjhjMThmZTgwMAorQXV0aG9yOiBSYXBoYWVsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IEp1biAyNSAyMzoxNzoxOCAyMDA5ICswMjAwCisKKyAgICBBZGQgYnJlYWtzIGFnYWluc3QgYWxsIGluZm8tYnJvd3NlcnMgdGhhdCBkbyBub3QgZGVwZW5kIG9uIGluc3RhbGwtaW5mbworCisgZGViaWFuL2NvbnRyb2wgfCAgIDEwICsrKysrKysrKysKKyAxIGZpbGVzIGNoYW5nZWQsIDEwIGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAxYjUyMDllYzliMTVhM2NjY2NkZjgwZjVlOWViZmUxMDIxMTZhNmQ4CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIE1hciAxNyAwMjo0ODozOCAyMDA5ICswMjAwCisKKyAgICBpbnN0YWxsLWluZm86IEltcHJvdmUgYSBiaXQgdGhlIHdhcm5pbmcgbWVzc2FnZXMKKworIHV0aWxzL2luc3RhbGwtaW5mby5jIHwgICAxNyArKysrKysrKystLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgOSBpbnNlcnRpb25zKCspLCA4IGRlbGV0aW9ucygtKQorCitjb21taXQgMDYwNjVmYjQyNTgwODQ5ODc0ZGM5NGE3YjdhMmJjYzBiZDI3OThjMworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBNYXIgMTcgMDI6NDE6MjEgMjAwOSArMDIwMAorCisgICAgaW5zdGFsbC1pbmZvOiBQcmludCBidWdneSBtYWludGFpbmVyIHNjcmlwdCBwYWNrYWdlIGluIHdhcm5pbmcKKworIHV0aWxzL2luc3RhbGwtaW5mby5jIHwgICAgNiArKysrKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDUgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDY4NTliOGFmMGY5Y2UwMGNjMjVlODRkNmQxZmNiNGZiNGVhZTA5ZjcKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgTWFyIDE3IDAyOjM5OjEyIDIwMDkgKzAyMDAKKworICAgIGluc3RhbGwtaW5mbzogVXNlIG1hY3JvcyBmb3Igd2FybiBhbmQgZXJyb3Igb3V0cHV0CisKKyB1dGlscy9pbnN0YWxsLWluZm8uYyB8ICAgMzggKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDIwIGluc2VydGlvbnMoKyksIDE4IGRlbGV0aW9ucygtKQorCitjb21taXQgMjBkY2Q0ZjIxMmZlOWNmZTkyODM0OWRlMmQ1YTFhY2U3MzVlMThlOQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBNYXIgMTcgMDI6MzU6MzMgMjAwOSArMDIwMAorCisgICAgaW5zdGFsbC1pbmZvOiBHZW5lcmFsaXplIGJ5IHVzaW5nIG1hY3JvcyBmb3IgcGF0aHMKKworIHV0aWxzL2luc3RhbGwtaW5mby5jIHwgICAyNSArKysrKysrKysrKysrKy0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAxNCBpbnNlcnRpb25zKCspLCAxMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGVlMzFiMjJjOWYzY2NkZTcxMDExMGU4NTEyYTIyMjNiMmNlMzU3OTUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgTWFyIDE3IDAyOjIwOjE2IDIwMDkgKzAyMDAKKworICAgIGluc3RhbGwtaW5mbzogQWRkIG1pc3Npbmcgc3RkbGliLmgKKyAgICAKKyAgICBGaXggYnVpbGQgZmFpbHVyZSwgZ2V0ZW52IGlzIGRlY2xhcmVkIGluIHN0ZGxpYi5oLgorCisgdXRpbHMvaW5zdGFsbC1pbmZvLmMgfCAgICAxICsKKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IGUxZjAzYTk0YTA4ZWZiOWRlMzczNmZmOGI5YzdjM2ZlMjRjZGE1MGUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgTWFyIDE3IDAyOjE4OjE4IDIwMDkgKzAyMDAKKworICAgIFVzZSBhdXRvY29uZiBBQ19BUkdfUFJPR1JBTSBzdXBwb3J0IHRvIHJlbmFtZSBpbnN0YWxsLWluZm8KKyAgICAKKyAgICBSZW5hbWUgdGhlIGJpbmFyeSBvbiBpbnN0YWxsIHRvIGF2b2lkIGNvbGxpZGluZyB3aXRoIGF1dG9jb25mJ3MKKyAgICBpbnN0YWxsLWluZm8gYnVpbHRpbiB0YXJnZXRzLgorCisgdXRpbHMvLmdpdGlnbm9yZSAgfCAgICAzICstLQorIHV0aWxzL01ha2VmaWxlLmFtIHwgICAxNyArKysrKysrLS0tLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgOCBpbnNlcnRpb25zKCspLCAxMiBkZWxldGlvbnMoLSkKKworY29tbWl0IGMyMzQwN2QyODU3MzRkNjZhY2EwN2VjZmJiNDVkN2Y4NjA0Y2U3MDYKK0F1dGhvcjogUmFwaGFlbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBNYXIgMTMgMTU6NDc6NTIgMjAwOSArMDEwMAorCisgICAgUmVwbGFjZSBpbnN0YWxsLWluZm8gYnkgYSBzaW1wbGUgd3JhcHBlciAob3Igbm8tb3AgY29tbWFuZCkKKyAgICAKKyAgICBJbiBvcmRlciB0byBwcm9wZXJseSB0cmFuc2l0aW9uIHRvIEdOVSdzIGluc3RhbGwtaW5mbywgZHBrZydzIGluc3RhbGwtaW5mbworICAgIGlzIG1vZGlmaWVkIHRvIGJlIGEgc2ltcGxlIHdyYXBwZXIgYXJvdW5kIC91c3IvYmluL2luc3RhbGwtaW5mby4gVGhhdAorICAgIHdyYXBwZXIgd2FybnMgd2hlbiB0aGUgdXNlciBleHBsaWNpdGVseSBjYWxscyAvdXNyL3NiaW4vaW5zdGFsbC1pbmZvIHNpbmNlCisgICAgdGhlIG5ldyBpbnN0YWxsLWluZm8gaXMgaW4gL3Vzci9iaW4vLgorICAgIAorICAgIFRoaXMgd3JhcHBlciBpcyBtZWFudCB0byBiZSByZW1vdmVkIGF0IHNvbWUgcG9pbnQgd2hlbiBhbGwgcmVmZXJlbmNlcworICAgIHRvIC91c3Ivc2Jpbi9pbnN0YWxsLWluZm8gaGF2ZSBnb25lIChtb3N0IHByb2JhYmx5IGluIHNxdWVlemUrMSkuCisgICAgCisgICAgQWxzbyByZW1vdmUgdGhlIG1hbnVhbCBwYWdlIHNpbmNlIHRoZXJlJ3Mgbm90aGluZyB0byBkb2N1bWVudCBhbnkgbW9yZQorICAgIGFuZCBhZGQgYSBsaW50aWFuIG92ZXJyaWRlIHVudGlsIHRoZSB3cmFwcGVyIGlzIHJlbW92ZWQuCisgICAgCisgICAgUmVmZXJlbmNlOiBodHRwOi8vd2lraS5kZWJpYW4ub3JnL1RyYW5zaXRpb25zL0Rwa2dUb0dudUluc3RhbGxJbmZvCisKKyBUT0RPICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDIgLQorIGRlYmlhbi9kcGtnLmluc3RhbGwgICAgICAgICAgIHwgICAgMSAtCisgZGViaWFuL2Rwa2cubGludGlhbi1vdmVycmlkZXMgfCAgICAyICsKKyBtYW4vTWFrZWZpbGUuYW0gICAgICAgICAgICAgICB8ICAgIDEgLQorIG1hbi9pbnN0YWxsLWluZm8uOCAgICAgICAgICAgIHwgIDI5NSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIG1hbi9wby9wbzRhLmNmZyAgICAgICAgICAgICAgIHwgICAgNSAtCisgcG8vUE9URklMRVMuaW4gICAgICAgICAgICAgICAgfCAgICAxIC0KKyBzY3JpcHRzLy5naXRpZ25vcmUgICAgICAgICAgICB8ICAgIDIgLQorIHNjcmlwdHMvTWFrZWZpbGUuYW0gICAgICAgICAgIHwgICAxNiArLS0KKyBzY3JpcHRzL2luc3RhbGwtaW5mby5wbCAgICAgICB8ICA1MjQgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyB1dGlscy8uZ2l0aWdub3JlICAgICAgICAgICAgICB8ICAgIDIgKworIHV0aWxzL01ha2VmaWxlLmFtICAgICAgICAgICAgIHwgICAxMyArCisgdXRpbHMvaW5zdGFsbC1pbmZvLmMgICAgICAgICAgfCAgIDY1ICsrKysrCisgMTMgZmlsZXMgY2hhbmdlZCwgODMgaW5zZXJ0aW9ucygrKSwgODQ2IGRlbGV0aW9ucygtKQorCitjb21taXQgNjQ1YTllMzI5Zjg3NGE0NzBhZTgzN2Q5MzUyNWM3NjlhMGRmNGVjOAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBKdWwgMiAxMToyNDowOCAyMDA5ICswMjAwCisKKyAgICBsaWJkcGtnOiBSZWZhY3RvciBwYXJzZWRiX3N0YXRlIGludG8gYSBuZXcgc3RydWN0dXJlCisgICAgCisgICAgTW92ZSBzdGF0ZSB2YXJpYWJsZXMgaW50byBhIG5ldyBzdHJ1Y3QgYW5kIHBhc3MgdGhhdCBpbnN0ZWFkIG9mIGVhY2ggb2YKKyAgICB0aGVtIHRvIHRoZSBlcnJvciwgd2FybmluZyBhbmQgZmllbGQgcGFyc2luZyBmdW5jdGlvbnMuIFRoaXMgaXMgY2xlYW5lciwKKyAgICBhbmQgc2hvdWxkIGJlIOKAnG1hcmdpbmFsbHnigJ0gZmFzdGVyLgorCisgVE9ETyAgICAgICAgICAgIHwgICAgMSAtCisgbGliL2ZpZWxkcy5jICAgIHwgIDE1OSArKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBsaWIvcGFyc2UuYyAgICAgfCAgIDY2ICsrKysrKysrKysrKystLS0tLS0tLS0tCisgbGliL3BhcnNlZHVtcC5oIHwgICAyNSArKysrKy0tLS0KKyBsaWIvcGFyc2VoZWxwLmMgfCAgIDMzICsrKysrKy0tLS0tLQorIDUgZmlsZXMgY2hhbmdlZCwgMTQyIGluc2VydGlvbnMoKyksIDE0MiBkZWxldGlvbnMoLSkKKworY29tbWl0IGJmYjhjY2NhZGE0M2IzMmRlZTU4N2RhODBmMzhjZTFiMjA3YWE5YjEKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgSnVsIDIgMTA6NTA6NDMgMjAwOSArMDIwMAorCisgICAgbGliZHBrZzogSW5pdGlhbGl6ZSBwYXJzZSBsbm8gdG8gMCB0byBhdm9pZCBkZWNyZW1lbnRpbmcgaXQgb24gcmNhbGwKKworIGxpYi9wYXJzZS5jIHwgICAgNCArKy0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyZmE5ZWI4N2JiYTRmZGIzMzYzNTIyOGY2MGE1NGI4OWY1OTI5MmRhCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IEp1bCAyIDEwOjUwOjI1IDIwMDkgKzAyMDAKKworICAgIEFkZCBkcGtnLXZlbmRvciB0byAuZ2l0aWdub3JlCisKKyBzY3JpcHRzLy5naXRpZ25vcmUgfCAgICAxICsKKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDZhYWE4YzEwNjc4ZDVhZjNkZDZlMjAyNmMwYTQ4YWM5Y2IxZGE3ODkKK0F1dGhvcjogTWFyY29zIEFsdmFyZXogQ29zdGFsZXMgPG1hcmNvcy5hbHZhcmV6LmNvc3RhbGVzQGdtYWlsLmNvbT4KK0RhdGU6ICAgV2VkIEp1bCAxIDIwOjU3OjAzIDIwMDkgKzAyMDAKKworICAgIEFzdHVyaWFuIHRyYW5zbGF0aW9uIHVwZGF0ZQorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDEgKworIHBvL2FzdC5wbyAgICAgICAgfCAgIDI1ICsrKysrKysrKysrKystLS0tLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDE0IGluc2VydGlvbnMoKyksIDEyIGRlbGV0aW9ucygtKQorCitjb21taXQgZWJiNzIxZGY4OTk3MDIxYjZmNmEzZmNhYThiZTE0NTA5NDllNmRkNAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBKdWwgMSAxMDoyMzoxOSAyMDA5ICswMjAwCisKKyAgICBkcGtnLXNjYW5wYWNrYWdlczogRG8gbm90IGhhbmRsZSB0aGUgUmV2aXNpb24gZmllbGQKKyAgICAKKyAgICBUaGlzIGZpZWxkIGhhcyBhbHJlYWR5IGJlZW4gcGFyc2VkIGFuZCBoYW5kbGVkIGJ5IOKAnGRwa2ctZGViIC1J4oCdLgorICAgIFRoZSBjb2RlIGlzIGRvdWJseSB1c2VsZXNzLCBhcyBhZGRpdGlvbmFsbHkgdGhlIHZlcnNpb24gY29tcGFyaXNvbiBpcworICAgIGRvbmUgYmVmb3JlIHRoZSBSZXZpc2lvbiBoYXMgYmVlbiBmb2xkZWQgaW50byB0aGUgVmVyc2lvbiBmaWVsZC4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgICAgfCAgICAyICstCisgc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbCB8ICAgIDUgLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgNiBkZWxldGlvbnMoLSkKKworY29tbWl0IGU2YzI3MTNiZDRkNTlhODhkMWFlNTIzNGE0MjI0NDE2ZTBlOWZhMDgKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgSnVsIDEgMTA6MDk6NDYgMjAwOSArMDIwMAorCisgICAgZHBrZy1zY2FucGFja2FnZXM6IERvIG5vdCByZW1hcCBvYnNvbGV0ZSBmaWVsZHMKKyAgICAKKyAgICBUaG9zZSBmaWVsZHMgaGF2ZSBiZWVuIHJlbWFwcGVkZCBhbHJlYWR5IGJ5IOKAnGRwa2ctZGViIC1J4oCdLgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICB8ICAgIDIgKysKKyBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsIHwgICAgNyAtLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDcgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBlZTE1Nzg4NjMwMzUxOGVmNTY1OThmODQzZDI5YzYzMzQ5MjMyMzkxCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIEp1bCAxIDA5OjIxOjE4IDIwMDkgKzAyMDAKKworICAgIGRwa2ctc2NhbnNvdXJjZXM6IFJlZHVjZSB2YXJpYWJsZSBzY29wZSBpbiBwcm9jZXNzX2RzYworICAgIAorICAgIE1vdmUgdGhlbSBjbG9zZXIgdG8gdGhlaXIgYWN0dWFsIHVzYWdlLgorCisgc2NyaXB0cy9kcGtnLXNjYW5zb3VyY2VzLnBsIHwgICAxMyArKysrKystLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA2IGluc2VydGlvbnMoKyksIDcgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA3NjAyMDI2YWZmMjQ1MmY2ZDcyM2E4NzE0NjM0MGY0ZWQzZTNkODYzCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIEp1bCAxIDA5OjE3OjQ3IDIwMDkgKzAyMDAKKworICAgIGRwa2ctc2NhbnNvdXJjZXM6IFN3aXRjaCB0byB1c2UgRHBrZzo6Q2RhdGEKKyAgICAKKyAgICBVc2Ugb3VyIG1vZHVsZXMgaW5zdGVhZCBvZiBkdXBsaWNhdGluZyB0aGUgLmRzYyBwYXJzaW5nIGNvZGUuIEFzIGEKKyAgICBzaWRlIGVmZmVjdCBpdCBub3cgaGFuZGxlcyBwcm9wZXJseSBib2d1cyBmaWxlcy4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgICB8ICAgIDIgKworIHNjcmlwdHMvZHBrZy1zY2Fuc291cmNlcy5wbCB8ICAyNzMgKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgNzAgaW5zZXJ0aW9ucygrKSwgMjA1IGRlbGV0aW9ucygtKQorCitjb21taXQgMzk2ZDNjMjdjMTA4ODRkNzU4YjQzNGE5YWM2MzdlNzA5YmYzMjBiNQorQXV0aG9yOiBIZWxnZSBLcmV1dHptYW5uIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KK0RhdGU6ICAgVHVlIEp1biAzMCAyMTo0NjoxMCAyMDA5ICswMjAwCisKKyAgICBVcGRhdGUgZ2VybWFuIHRyYW5zbGF0aW9uIG9mIG1hbnVhbCBwYWdlcworICAgIAorICAgIFVwZGF0ZSB0byAxNjYydDB1MmYuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgIHwgICAgMyArCisgbWFuL3BvL2RlLnBvICAgICAgICB8ICAgMjEgKy0KKyBtYW4vcG8vZHBrZy1tYW4ucG90IHwgMjA5MyArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0KKyAzIGZpbGVzIGNoYW5nZWQsIDE1NTYgaW5zZXJ0aW9ucygrKSwgNTYxIGRlbGV0aW9ucygtKQorCitjb21taXQgYTE1NTMyNDAzZjE3MmQ3OTAwMzFhNzEwNDRmNTg1NTc4MzY2ZTYwNQorQXV0aG9yOiBKZW5zIFNlaWRlbCA8amVuc3NlaWRlbEB1c2Vycy5zZi5uZXQ+CitEYXRlOiAgIFR1ZSBKdW4gMzAgMjE6Mzg6MDEgMjAwOSArMDIwMAorCisgICAgUHJvb2ZyZWFkaW5nCisKKyBtYW4vcG8vZGUucG8gfCAgIDI2ICsrKysrKysrKysrKystLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAxMyBpbnNlcnRpb25zKCspLCAxMyBkZWxldGlvbnMoLSkKKworY29tbWl0IDBiNDEzYWU4NWZkYTgzOWM0N2NmYzM1YTlmZmQwMTg5ODg5ZTBiNjcKK0F1dGhvcjogQ2hyaXN0aWFuIFBlcnJpZXIgPGJ1YnVsbGVAZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIEp1biAzMCAwNzoyOToxMiAyMDA5ICswMjAwCisKKyAgICBGcmVuY2ggdHJhbnNsYXRpb24gdXBkYXRlCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgNCArKysKKyBwby9mci5wbyAgICAgICAgIHwgICA3NyArKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgMzIgaW5zZXJ0aW9ucygrKSwgNDkgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBlZDQwNjVjMjQ2YmJhMzQ3ODRiNmJhYmFmZjNhOWE2YjkzZmNjNzkzCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIEp1biAyOSAwOTozNDoyMCAyMDA5ICswMjAwCisKKyAgICBkcGtnLW5hbWU6IERvIG5vdCBoYW5kbGUgUmV2aXNpb24gYW5kIFBhY2thZ2VfUmV2aXNpb24gZmllbGRzCisgICAgCisgICAgVGhvc2UgZmllbGRzIGhhdmUgYWxyZWFkeSBiZWVuIHBhcnNlZCBhbmQgaGFuZGxlZCBieSDigJxkcGtnLWRlYiAtSeKAnS4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgIHwgICAgMiArKworIHNjcmlwdHMvZHBrZy1uYW1lLnBsIHwgICAgNSAtLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCA1IGRlbGV0aW9ucygtKQorCitjb21taXQgYWZjZGZlNTcxZThkMjA4MzI5OTZlYzhkNDU5Mzc0NGZhYjNiNTJjMQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBKdW4gMjkgMDk6MjM6MTcgMjAwOSArMDIwMAorCisgICAgZHBrZy1uYW1lOiBGaXggaW52ZXJ0ZWQgbG9naWMgd2hlbiBkZWNpZGluZyB0byBhc3N1bWUgdGhlIGFyY2hpdGVjdHVyZQorICAgIAorICAgIFRoaXMgZ2V0cyB0cmlnZ2VyZWQgd2hlbiB0aGUgcGFja2FnZSBkb2VzIG5vdCBoYXZlIHN1Y2ggZmllbGQuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICB8ICAgIDIgKysKKyBzY3JpcHRzL2Rwa2ctbmFtZS5wbCB8ICAgIDIgKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGU5YzNlNTk0NzViN2JjZjAyMDFiM2M1YTkzNmMxZjRmODczODIwMjIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gSnVuIDI5IDA5OjIwOjAwIDIwMDkgKzAyMDAKKworICAgIGRwa2ctbmFtZTogQ2FsbCBfZyBpbnN0ZWFkIG9mIGdfCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICB8ICAgIDEgKworIHNjcmlwdHMvZHBrZy1uYW1lLnBsIHwgICAgMiArLQorIDIgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgMzQxODFjZTNhMWNmNDY2YWY5YWMyZTk0ZjY4YjYwY2JkZmFmNTdjOAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBKdW4gMjcgMTk6MjY6MDMgMjAwOSArMDIwMAorCisgICAgQnVtcCB2ZXJzaW9uIHRvIDEuMTUuNH4KKworIGNvbmZpZ3VyZS5hYyAgICAgfCAgICAyICstCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDUgKysrKysKKyAyIGZpbGVzIGNoYW5nZWQsIDYgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDE2MTk5YTg5NTFlNjU2YmYzZWYyZmRhNjdjYjU1NGEyNmZhZDc4NWQKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgSnVuIDI3IDE5OjA3OjE2IDIwMDkgKzAyMDAKKworICAgIFJlbGVhc2UgMS4xNS4zCisKKyBjb25maWd1cmUuYWMgICAgIHwgICAgMiArLQorIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICA0ICsrLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworY29tbWl0IGQ4MzM4ZjMxNjQ1MDhmOGY0YzFiNjI3NmM5YzM4MWUwNmFjZjY2M2QKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgSnVuIDI3IDE5OjA0OjU2IDIwMDkgKzAyMDAKKworICAgIEFkZCBuZXcgc2NyaXB0cyB0ZXN0IGNhc2VzIHRvIEVYVFJBX0RJU1QKKworIHNjcmlwdHMvTWFrZWZpbGUuYW0gfCAgICAyICsrCisgMSBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBiNzViOTcxYjkwYzJkMzFkNWZjM2E2NzU5NjZmMjljOTlkNmYwY2RlCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IEp1biAyNyAxODo1MDo1MiAyMDA5ICswMjAwCisKKyAgICBSZWdlbmVyYXRlIC5wb3QgZmlsZXMgYW5kIG1lcmdlIC5wbyBmaWxlcyB3aXRoIHRoZW0KKworIG1hbi9wby9kZS5wbyAgICAgICAgICAgIHwgMTc1MiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystCisgbWFuL3BvL2Rwa2ctbWFuLnBvdCAgICAgfCAgMjE3ICsrKystLS0KKyBtYW4vcG8vZXMucG8gICAgICAgICAgICB8ICAyMzggKysrKy0tLQorIG1hbi9wby9mci5wbyAgICAgICAgICAgIHwgIDI0NCArKysrLS0tCisgbWFuL3BvL2h1LnBvICAgICAgICAgICAgfCAgMjM5ICsrKystLS0KKyBtYW4vcG8vamEucG8gICAgICAgICAgICB8ICAyMzcgKysrKy0tLQorIG1hbi9wby9wbC5wbyAgICAgICAgICAgIHwgIDI0MSArKysrLS0tCisgbWFuL3BvL3B0X0JSLnBvICAgICAgICAgfCAgMjM5ICsrKystLS0KKyBtYW4vcG8vcnUucG8gICAgICAgICAgICB8ICAyMzYgKysrKy0tLQorIG1hbi9wby9zdi5wbyAgICAgICAgICAgIHwgIDI4OCArKysrKy0tLS0KKyBwby9hc3QucG8gICAgICAgICAgICAgICB8ICA3MDEgKysrKysrKysrKy0tLS0tLS0tLS0KKyBwby9icy5wbyAgICAgICAgICAgICAgICB8ICA2OTAgKysrKysrKysrKy0tLS0tLS0tLQorIHBvL2NhLnBvICAgICAgICAgICAgICAgIHwgIDcxNCArKysrKysrKysrLS0tLS0tLS0tLQorIHBvL2NzLnBvICAgICAgICAgICAgICAgIHwgIDcyNCArKysrKysrKysrLS0tLS0tLS0tLQorIHBvL2RhLnBvICAgICAgICAgICAgICAgIHwgIDcxNyArKysrKysrKysrLS0tLS0tLS0tLQorIHBvL2RlLnBvICAgICAgICAgICAgICAgIHwgIDcwMSArKysrKysrKysrLS0tLS0tLS0tLQorIHBvL2Rwa2cucG90ICAgICAgICAgICAgIHwgIDY5MCArKysrKysrKysrLS0tLS0tLS0tCisgcG8vZHoucG8gICAgICAgICAgICAgICAgfCAgNzE3ICsrKysrKysrKystLS0tLS0tLS0tCisgcG8vZWwucG8gICAgICAgICAgICAgICAgfCAgNzE5ICsrKysrKysrKystLS0tLS0tLS0tCisgcG8vZW8ucG8gICAgICAgICAgICAgICAgfCAgNzAxICsrKysrKysrKystLS0tLS0tLS0tCisgcG8vZXMucG8gICAgICAgICAgICAgICAgfCAgNzE4ICsrKysrKysrKystLS0tLS0tLS0tCisgcG8vZXQucG8gICAgICAgICAgICAgICAgfCAgNzExICsrKysrKysrKystLS0tLS0tLS0tCisgcG8vZXUucG8gICAgICAgICAgICAgICAgfCAgNzAxICsrKysrKysrKystLS0tLS0tLS0tCisgcG8vZnIucG8gICAgICAgICAgICAgICAgfCAgNzM1ICsrKysrKysrKystLS0tLS0tLS0tCisgcG8vZ2wucG8gICAgICAgICAgICAgICAgfCAgNzE5ICsrKysrKysrKystLS0tLS0tLS0tCisgcG8vaHUucG8gICAgICAgICAgICAgICAgfCAgNzE3ICsrKysrKysrKystLS0tLS0tLS0tCisgcG8vaWQucG8gICAgICAgICAgICAgICAgfCAgNzE3ICsrKysrKysrKystLS0tLS0tLS0tCisgcG8vaXQucG8gICAgICAgICAgICAgICAgfCAgNzE3ICsrKysrKysrKystLS0tLS0tLS0tCisgcG8vamEucG8gICAgICAgICAgICAgICAgfCAgNzE3ICsrKysrKysrKystLS0tLS0tLS0tCisgcG8va20ucG8gICAgICAgICAgICAgICAgfCAgNzE3ICsrKysrKysrKystLS0tLS0tLS0tCisgcG8va28ucG8gICAgICAgICAgICAgICAgfCAgNzE5ICsrKysrKysrKystLS0tLS0tLS0tCisgcG8va3UucG8gICAgICAgICAgICAgICAgfCAgNjk0ICsrKysrKysrKystLS0tLS0tLS0tCisgcG8vbHQucG8gICAgICAgICAgICAgICAgfCAgNzE5ICsrKysrKysrKystLS0tLS0tLS0tCisgcG8vbXIucG8gICAgICAgICAgICAgICAgfCAgNzE3ICsrKysrKysrKystLS0tLS0tLS0tCisgcG8vbmIucG8gICAgICAgICAgICAgICAgfCAgNzE5ICsrKysrKysrKystLS0tLS0tLS0tCisgcG8vbmUucG8gICAgICAgICAgICAgICAgfCAgNzE3ICsrKysrKysrKystLS0tLS0tLS0tCisgcG8vbmwucG8gICAgICAgICAgICAgICAgfCAgNzE3ICsrKysrKysrKystLS0tLS0tLS0tCisgcG8vbm4ucG8gICAgICAgICAgICAgICAgfCAgNzE5ICsrKysrKysrKystLS0tLS0tLS0tCisgcG8vcGEucG8gICAgICAgICAgICAgICAgfCAgNjk0ICsrKysrKysrKystLS0tLS0tLS0tCisgcG8vcGwucG8gICAgICAgICAgICAgICAgfCAgNzE4ICsrKysrKysrKystLS0tLS0tLS0tCisgcG8vcHQucG8gICAgICAgICAgICAgICAgfCAgNzE5ICsrKysrKysrKystLS0tLS0tLS0tCisgcG8vcHRfQlIucG8gICAgICAgICAgICAgfCAgNzE3ICsrKysrKysrKystLS0tLS0tLS0tCisgcG8vcm8ucG8gICAgICAgICAgICAgICAgfCAgNzI0ICsrKysrKysrKystLS0tLS0tLS0tCisgcG8vcnUucG8gICAgICAgICAgICAgICAgfCAgNzAzICsrKysrKysrKystLS0tLS0tLS0tCisgcG8vc2sucG8gICAgICAgICAgICAgICAgfCAgNzAzICsrKysrKysrKystLS0tLS0tLS0tCisgcG8vc3YucG8gICAgICAgICAgICAgICAgfCAgMjMzICsrKystLS0KKyBwby90aC5wbyAgICAgICAgICAgICAgICB8ICA3MTcgKysrKysrKysrKy0tLS0tLS0tLS0KKyBwby90bC5wbyAgICAgICAgICAgICAgICB8ICA3MTcgKysrKysrKysrKy0tLS0tLS0tLS0KKyBwby92aS5wbyAgICAgICAgICAgICAgICB8ICA3MTcgKysrKysrKysrKy0tLS0tLS0tLS0KKyBwby96aF9DTi5wbyAgICAgICAgICAgICB8ICA3MDEgKysrKysrKysrKy0tLS0tLS0tLS0KKyBwby96aF9UVy5wbyAgICAgICAgICAgICB8ICA3MTcgKysrKysrKysrKy0tLS0tLS0tLS0KKyBzY3JpcHRzL3BvL2NhLnBvICAgICAgICB8ICA2MDYgKysrKysrKysrLS0tLS0tLS0KKyBzY3JpcHRzL3BvL2RlLnBvICAgICAgICB8ICAxMjUgKystLQorIHNjcmlwdHMvcG8vZHBrZy1kZXYucG90IHwgIDU4MyArKysrKysrKy0tLS0tLS0tCisgc2NyaXB0cy9wby9mci5wbyAgICAgICAgfCAgNjYxICsrKysrKysrKystLS0tLS0tLQorIHNjcmlwdHMvcG8vcGwucG8gICAgICAgIHwgIDY1NSArKysrKysrKysrLS0tLS0tLS0KKyBzY3JpcHRzL3BvL3J1LnBvICAgICAgICB8ICA2NTUgKysrKysrKysrKy0tLS0tLS0tCisgc2NyaXB0cy9wby9zdi5wbyAgICAgICAgfCAgNDIzICsrKysrKy0tLS0tLQorIDU4IGZpbGVzIGNoYW5nZWQsIDE5MzcxIGluc2VydGlvbnMoKyksIDE3MDEyIGRlbGV0aW9ucygtKQorCitjb21taXQgM2NjNWE1YmY0YjZkYTlmYWNmMzZjNTJiYjk3ODg5YTVjZTJmZDY4MQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBKdW4gMjcgMTk6MDQ6MTQgMjAwOSArMDIwMAorCisgICAgQWRkIG5ldyBmaWxlcyB0byBQT1RGSUxFUworCisgcG8vUE9URklMRVMuaW4gfCAgICAyICsrCisgMSBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA0NDAxNjQwMTQ3MTI2MTcwZGY3ZDE4ODU0NWI4ZWNkNGZmZDIxZDI5CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IEp1biAyNyAxODo0NjozNiAyMDA5ICswMjAwCisKKyAgICBtYW46IFJlbW92ZSBub24gZG90IHByZWZpeGVkIHR5cGUgZmllbGQKKyAgICAKKyAgICBUaGlzIHNlZW1zIHRvIGJlIG9ic29sZXRlIGFuZCBub3cgdGhlIGZpZWxkIGhhcyB0aGUgZm9ybSDigJwjLiB0eXBlOiDigJ0uCisgICAgV2hpY2ggZ2V0cyBkdXBsaWNhdGVkIHdpdGggdGhlIG9sZCBmb3JtLgorCisgbWFuL3BvL2RlLnBvICAgIHwgMTc5OCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIG1hbi9wby9lcy5wbyAgICB8IDE4NjIgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIG1hbi9wby9mci5wbyAgICB8IDE4NTUgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgbWFuL3BvL2h1LnBvICAgIHwgMTcwOCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIG1hbi9wby9qYS5wbyAgICB8IDE4MTIgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBtYW4vcG8vcGwucG8gICAgfCAxNjgzIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBtYW4vcG8vcHRfQlIucG8gfCAxNzQzIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIG1hbi9wby9ydS5wbyAgICB8IDE3NDAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgbWFuL3BvL3N2LnBvICAgIHwgMTcxOCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDkgZmlsZXMgY2hhbmdlZCwgMCBpbnNlcnRpb25zKCspLCAxNTkxOSBkZWxldGlvbnMoLSkKKworY29tbWl0IGM1Yjk4MGRhY2VmZTAwMGNjMDk2OTRlMGU3MzEzZmVhNWE0M2FjZmUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgSnVuIDI2IDIwOjAyOjI3IDIwMDkgKzAyMDAKKworICAgIGRwa2ctZGViOiBSZW1vdmUgdW51c2VkIEZJTEUgdmFyaWFibGUKKyAgICAKKyAgICBOb3cgdGhhdCB3ZSBhcmUgbm90IGNsb3NpbmcgZ3pmZCBpbmRpcmVjdGx5IGJ5IGZjbG9zaW5nIGd6LCB3ZSBjbG9zZSBpdAorICAgIGV4cGxpY2l0bHkuCisKKyBkcGtnLWRlYi9idWlsZC5jIHwgICAgOCArKy0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCA2IGRlbGV0aW9ucygtKQorCitjb21taXQgNDMwOGEzNDdjNWMxN2FiNjI3ZjEwYmI3N2E5ODM4ODE2MjY0NmQxOAorQXV0aG9yOiBTdmVuIEpvYWNoaW0gPHN2ZW5qb2FjQGdteC5kZT4KK0RhdGU6ICAgU2F0IEp1biAyNyAxNjozMjoxMyAyMDA5ICswMjAwCisKKyAgICBGaXggcXVvdGF0aW9uIG1hcmtzIGluIEdlcm1hbiBkcGtnIHRyYW5zbGF0aW9uCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgNSArKystLQorIHBvL2RlLnBvICAgICAgICAgfCAgICA2ICsrKy0tLQorIDIgZmlsZXMgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCA1IGRlbGV0aW9ucygtKQorCitjb21taXQgYTNlNTYwZmU1ZDA5NWU5ODlkY2ZjZGExOTM1ZTUxZDcyYjgyYjc4MAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBKdW4gMjYgMDU6MTY6MDUgMjAwOSArMDIwMAorCisgICAgbGliZHBrZy1wZXJsOiBNb3ZlIHVua25vd24oKSBmcm9tIERwa2c6OkVycm9ySGFuZGxpbmcgdG8gRHBrZzo6RmllbGRzCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICB8ICAgIDEgKworIHNjcmlwdHMvRHBrZy9FcnJvckhhbmRsaW5nLnBtIHwgICAxMCArLS0tLS0tLS0tCisgc2NyaXB0cy9EcGtnL0ZpZWxkcy5wbSAgICAgICAgfCAgIDEyICsrKysrKysrKysrLQorIHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsICAgIHwgICAgNCArKy0tCisgc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGwgICAgfCAgICA0ICsrLS0KKyBzY3JpcHRzL2Rwa2ctc291cmNlLnBsICAgICAgICB8ICAgIDQgKystLQorIDYgZmlsZXMgY2hhbmdlZCwgMTkgaW5zZXJ0aW9ucygrKSwgMTYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBiMDUwNjBjYjk2MWE2ZGNiMWVhYzVjYzE3OTYwNThkYmMyYmRiZmFkCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEp1biAyNiAwNTowNTo0OSAyMDA5ICswMjAwCisKKyAgICBEcGtnOjpFcnJvckhhbmRsaW5nOiBFeHBsaWNpdGx5IHBhc3MgZmllbGQgYXJndW1lbnQgdG8gdW5rbm93bigpCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICB8ICAgIDEgKworIHNjcmlwdHMvRHBrZy9FcnJvckhhbmRsaW5nLnBtIHwgICAgOCArKysrLS0tLQorIHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsICAgIHwgICAgNiArKystLS0KKyBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbCAgICB8ICAgIDYgKysrLS0tCisgc2NyaXB0cy9kcGtnLXNvdXJjZS5wbCAgICAgICAgfCAgICA2ICsrKy0tLQorIDUgZmlsZXMgY2hhbmdlZCwgMTQgaW5zZXJ0aW9ucygrKSwgMTMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAzODYyYzNlN2ZlODgyYzYxYzUzZjYyMjk0ZmQ4NGRkZGVlOWQyZjQ2CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEp1biAyNiAwNDo1MDozMyAyMDA5ICswMjAwCisKKyAgICBsaWJkcGtnLXBlcmw6IEltcG9ydCBFeHBvcnRlciB3aXRoIOKAmHVzZSBiYXNl4oCZCisgICAgCisgICAgV2UgZG9uJ3QgbmVlZCB0byBzZXQgQElTQSBub3cuCisKKyBzY3JpcHRzL0Rwa2cvQXJjaC5wbSAgICAgICAgICAgICB8ICAgIDMgKy0tCisgc2NyaXB0cy9EcGtnL0NkYXRhLnBtICAgICAgICAgICAgfCAgICAzICstLQorIHNjcmlwdHMvRHBrZy9EZXBzLnBtICAgICAgICAgICAgIHwgICAgMiArLQorIHNjcmlwdHMvRHBrZy9GaWVsZHMucG0gICAgICAgICAgIHwgICAgMyArLS0KKyBzY3JpcHRzL0Rwa2cvSVBDLnBtICAgICAgICAgICAgICB8ICAgIDMgKy0tCisgc2NyaXB0cy9EcGtnL1BhdGgucG0gICAgICAgICAgICAgfCAgICAzICstLQorIHNjcmlwdHMvRHBrZy9Tb3VyY2UvRnVuY3Rpb25zLnBtIHwgICAgMyArLS0KKyBzY3JpcHRzL0Rwa2cvVmFycy5wbSAgICAgICAgICAgICB8ICAgIDMgKy0tCisgc2NyaXB0cy9EcGtnL1ZlbmRvci5wbSAgICAgICAgICAgfCAgICAzICstLQorIHNjcmlwdHMvRHBrZy9WZXJzaW9uLnBtICAgICAgICAgIHwgICAgMyArLS0KKyAxMCBmaWxlcyBjaGFuZ2VkLCAxMCBpbnNlcnRpb25zKCspLCAxOSBkZWxldGlvbnMoLSkKKworY29tbWl0IDBlMWU2M2FmYTA4OWJjYTZmNzBhNTc0ZjExMDMzYjcyNGE2ZmMzYzgKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgSnVuIDI2IDA0OjA0OjE2IDIwMDkgKzAyMDAKKworICAgIGRwa2ctc2NhbnBhY2thZ2VzOiBSZW1vdmUgY29tbWVudGVkIG91dCBjb2RlCisKKyBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsIHwgICAgMiAtLQorIDEgZmlsZXMgY2hhbmdlZCwgMCBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgMGQ4ODc4MjBiY2I1NWI2MGFhNDIzYTQyOGViNDkxOWMxMmFjZjU3NworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBKdW4gMjYgMDM6MzI6MTIgMjAwOSArMDIwMAorCisgICAgVW5jbGFpbSBidWcgY2xvc3VyZQorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDIgKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGUyOTQ1N2RkNWY4YmZjOGY2ZmM5MTNiMTg5OTkxOWY5OGJlOTNiZDcKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgSnVuIDI2IDAzOjMwOjU3IDIwMDkgKzAyMDAKKworICAgIG1hbjogIE1hcmsgYXJndW1lbnQgbmFtZXMgaW4gZHBrZy1zdGF0b3ZlcnJpZGUuMSBpbiBpdGFsaWMKKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgIHwgICAgMSArCisgbWFuL2Rwa2ctc3RhdG92ZXJyaWRlLjggfCAgIDEwICsrKysrLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDYgaW5zZXJ0aW9ucygrKSwgNSBkZWxldGlvbnMoLSkKKworY29tbWl0IGVlMjFhM2I5NDQzZjdhN2E2NDNmYTFkNDFiZjFiYTJiOTNlMzJjY2IKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgSnVuIDI2IDAyOjEwOjUzIDIwMDkgKzAyMDAKKworICAgIG1hbjogRG9jdW1lbnQgaW4gZHBrZy1zdGF0b3ZlcnJpZGUgdGhlIGZvcm1hdCB0byBzcGVjaWZ5IG1vZGUKKyAgICAKKyAgICBDbG9zZXM6ICM1MzQ1NTEKKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgIHwgICAgMiArKworIG1hbi9kcGtnLXN0YXRvdmVycmlkZS44IHwgICAgMyArKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGEzNDU0YWJiNWI4M2FjMTJhZWM1YzUyZjJhZTQ0OTJmYWY2ODkwYzgKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgSnVuIDI2IDAxOjUyOjU4IDIwMDkgKzAyMDAKKworICAgIGRwa2ctc3BsaXQ6IFVzZSB0aGUgY29ycmVjdCB1bml0cyAoS2lCKSB3aGVuIHJlZmVycmluZyB0byBwYXJ0c2l6ZQorCisgZGViaWFuL2NoYW5nZWxvZyAgfCAgICAxICsKKyBkcGtnLXNwbGl0L21haW4uYyB8ICAgIDIgKy0KKyBtYW4vZHBrZy1zcGxpdC4xICB8ICAgIDQgKystLQorIDMgZmlsZXMgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQorCitjb21taXQgZDMwZmRjY2ZmNTZlOGVkNjNlODFlN2UxMTRjNDIxZDVjODA2ZDhlNworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBOb3YgMjEgMTY6NDY6MzAgMjAwOCArMDIwMAorCisgICAgbGliZHBrZzogRG8gbm90IHRyeSB0byBjbG9zZSBhbHJlYWR5IGNsb3NlZCBmaWxlcworCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDEgKworIGxpYi90cmlnbGliLmMgICAgfCAgIDExICsrKysrKysrKy0tCisgMiBmaWxlcyBjaGFuZ2VkLCAxMCBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgZDVhZDI1ZDg1NDM0YWNkN2E0NTMyMzM0ZGIyMzgxYTAzZDI4OGNjZAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBKdW4gMjQgMDU6NTE6MzMgMjAwOSArMDIwMAorCisgICAgbGliZHBrZzogU3VmZml4IHBhdGggcmVsYXRlZCBmdW5jdGlvbiBuYW1lcyB3aXRoIOKAmHBhdGhf4oCZCisKKyBsaWIvZHBrZy1wcml2LmggICB8ICAgIDQgKystLQorIGxpYi9maWVsZHMuYyAgICAgIHwgICAgMiArLQorIGxpYi9wYXRoLmMgICAgICAgIHwgICAgNCArKy0tCisgbGliL3Rlc3QvdC1wYXRoLmMgfCAgIDI2ICsrKysrKysrKysrKystLS0tLS0tLS0tLS0tCisgc3JjL2ZpbGVzZGIuYyAgICAgfCAgICAyICstCisgc3JjL2hlbHAuYyAgICAgICAgfCAgICAyICstCisgc3JjL3F1ZXJ5LmMgICAgICAgfCAgICAyICstCisgNyBmaWxlcyBjaGFuZ2VkLCAyMSBpbnNlcnRpb25zKCspLCAyMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGZlOTMwZTliYjNlMTk1ODI1Y2NlOThlNGFiZTgyNTQ1OWE3ZTgxZTcKK0F1dGhvcjogUmFwaGFlbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBKdW4gMjUgMjE6NDM6MjkgMjAwOSArMDIwMAorCisgICAgRHBrZzo6RGVwczogZml4IGRlcGVuZGVuY3kgcGFyc2luZyBjb2RlCisgICAgCisgICAgRml4IGRlcGVuZGVuY3kgcGFyc2luZyBjb2RlIGluIERwa2c6OkRlcHMgdG8gbm90IGFjY2VwdCAiZm9vXG5iYXIiCisgICAgZXZlbiBpZiBmb28gaXMgdmFsaWQuIEEgcmVnZXggd2FzIGltcHJvcGVybHkgbWF0Y2hpbmcgIlxuIiBhcworICAgIGVuZCBvZiBzdHJpbmcgZHVlIHRvIHVzYWdlIG9mIHRoZSAibSIgbW9kaWZpZXIuCisgICAgCisgICAgQWxzbyBpbXByb3ZlIHRoZSB3YXJuaW5nIGRpc3BsYXllZCB3aGVuIHRoZSBkZXBlbmRlbmN5IGNhbid0IGJlIHBhcnNlZC4KKyAgICAKKyAgICBBZGQgYSBub24tcmVncmVzc2lvbiB0ZXN0IHRvIGVuc3VyZSB0aGF0IHRoaXMgcHJvYmxlbSBkb2Vzbid0IGNvbWUgYmFjay4KKyAgICAKKyAgICBSZXBvcnRlZC1ieTogQW5kcmV3IFNheWVycyA8YW5kcmV3LWRwa2dAcGlsZW9mc3R1ZmYub3JnPgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICB8ICAgIDMgKysrCisgc2NyaXB0cy9EcGtnL0RlcHMucG0gICAgICB8ICAgIDQgKystLQorIHNjcmlwdHMvdC80MDBfRHBrZ19EZXBzLnQgfCAgICA3ICsrKysrKy0KKyAzIGZpbGVzIGNoYW5nZWQsIDExIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyY2Y1YjBmOTBkNGZhZThjNjI4N2ZhMGE0NGU4NDI3MGFkNTMyNmQ2CitBdXRob3I6IFJhcGhhZWwgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgSnVuIDIzIDA4OjU4OjM1IDIwMDkgKzAyMDAKKworICAgIFJlbW92ZSBhbGwgaW52YWxpZCBtYXN0ZXIgYWx0ZXJuYXRpdmVzIGZvdW5kCisgICAgCisgICAgSW5pdGlhbGx5IEkgd2FudGVkIHRvIGNsZWFudXAgb25seSBwcm9ibGVtYXRpYyBjYXNlcyB0aGlua2luZyB0aGF0IHRoZXJlCisgICAgd291bGQgYmUgZmV3LiBCdXQgYXBwYXJlbnRseSB0aGVyZSBtdXN0IGJlIGFuIG9sZCB2ZXJzaW9uIG9mCisgICAgdXBkYXRlLWFsdGVybmF0aXZlcyB0aGF0IGNyZWF0ZWQgaW1wcm9wZXIgZW50cmllcyBmb3Igc2xhdmUgYWx0ZXJuYXRpdmVzCisgICAgaW4gL3Zhci9saWIvZHBrZy9hbHRlcm5hdGl2ZXMgc28gSSBkbyBhIGZ1bGwgc2NhbiBvbmNlIHdoZW4gd2UgdXBncmFkZQorICAgIGZyb20gYSB2ZXJzaW9uIG9sZGVyIHRoYW4gMS4xNS4zIGFuZCBob3BlIHRoYXQgd2UgY2FuIGZvcmdldCBhYm91dCB0aG9zZQorICAgIHVwZ3JhZGUgaXNzdWVzIGFmdGVyIHRoYXQuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICB8ICAgIDQgKystLQorIGRlYmlhbi9kcGtnLmxpbnRpYW4tb3ZlcnJpZGVzIHwgICAgNSArKysrKworIGRlYmlhbi9kcGtnLnByZWluc3QgICAgICAgICAgIHwgICAzOCArKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLQorIDMgZmlsZXMgY2hhbmdlZCwgMzMgaW5zZXJ0aW9ucygrKSwgMTQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA4NWYyZWI0ZGNhNWFkOTljYmJiMDE0YTVhYjg4MDE5YjA2ODM5MDY4CitBdXRob3I6IFJhcGhhZWwgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gSnVuIDIyIDExOjM1OjU4IDIwMDkgKzAyMDAKKworICAgIEZpeCBhIHNwZWxsaW5nIGVycm9yIGluIGNoYW5nZWxvZyAodGhhbmtzIGxpbnRpYW4pCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMiArLQorIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgNTJmZjkzN2I1YjgwMjhkZmEwNzQ1ZGFhZmU5MTMzOTdhNGUwYjdjZAorQXV0aG9yOiBSYXBoYWVsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIEp1biAyMiAxMToyMToxOSAyMDA5ICswMjAwCisKKyAgICBEcGtnOjpTaGxpYnM6Ok9iamR1bXA6OmdldF9zeW1ib2woKTogdHJ5IGZhbGxiYWNrIG5hbWUgZm9yIHZlcnNpb24tbGVzcyBzeW1ib2xzCisgICAgCisgICAgVGhpcyBhbHNvIGZpeGVzIHRoZSB0ZXN0IHN1aXRlIGFzIGl0IHdhcyBicm9rZW4gYnkgdGhlIHJlbmFtZQorICAgIG9mIHZlcnNpb24tbGVzcyBzeW1ib2xzIGluICI8bmFtZT5AQmFzZSIuCisKKyBzY3JpcHRzL0Rwa2cvU2hsaWJzL09iamR1bXAucG0gfCAgICA1ICsrKysrCisgMSBmaWxlcyBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBhMzU4N2UxNWI4MmUwZjNhNzM2Nzc2OTMwN2ZlMTgxYzgxNTFjZTc5CitBdXRob3I6IFJhcGhhZWwgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gSnVuIDIxIDIyOjI5OjQ4IDIwMDkgKzAyMDAKKworICAgIERwa2c6OlNobGliczo6T2JqZHVtcDogYXNzdW1lIHZlcnNpb24gQmFzZSB3aGVuIG5vIGFzc29jaWF0ZWQgdmVyc2lvbgorICAgIAorICAgIFRoaXMgY29tcGxldGVzIHRoZSBmaXggc3RhcnRlZCBpbgorICAgIDIxMWM2MmM0NWQ1ZjNkNWY4ZWUzZGMyNjY2OGNkNWEwNGU4ODkwNzYuCisKKyBzY3JpcHRzL0Rwa2cvU2hsaWJzL09iamR1bXAucG0gfCAgICAyICstCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBkOWM2Njk0Y2U0MmQwZTI2YjZjOGRkMDZhNzRhMjZkNTVhNjEyNGM2CitBdXRob3I6IEhlbGdlIEtyZXV0em1hbm4gPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorRGF0ZTogICBTdW4gSnVuIDIxIDIxOjQ5OjA1IDIwMDkgKzAyMDAKKworICAgIFVwZGF0ZSBnZXJtYW4gc2NyaXB0cyB0cmFuc2xhdGlvbgorICAgIAorICAgIFVwZGF0ZSB0byA0ODF0MGYwdS4KKworIHNjcmlwdHMvcG8vZGUucG8gfCAgMzQ5ICsrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMTc0IGluc2VydGlvbnMoKyksIDE3NSBkZWxldGlvbnMoLSkKKworY29tbWl0IDYzYWY0ZGE2ZDFhMjg0MmRmNTNkYjJlOTNlMWNlY2E1OGQxYjc2MTUKK0F1dGhvcjogTW9kZXN0YXMgVmFpbml1cyA8bW9kZXN0YXNAdmFpbml1cy5ldT4KK0RhdGU6ICAgU3VuIEp1biAyMSAxMDo1MjowOSAyMDA5ICswMjAwCisKKyAgICBEcGtnOjpTaGxpYnM6OlN5bWJvbEZpbGU6IHN1cHBvcnQgc3ViY2xhc3Npbmcgb2YgU3ltYm9sIG9iamVjdAorICAgIAorICAgIFRoaXMgY2hhbmdlIG1ha2VzIGl0IGVhc2llciB0byByZXBsYWNlIERwa2c6OlNobGliczo6U3ltYm9sIHdpdGgKKyAgICBhIGRlcml2YXRpdmUgY2xhc3MgYnkgcGFzc2luZyBhbiBhcHByb3ByaWF0ZSAkYmFzZV9zeW1ib2wgcGFyYW1ldGVyCisgICAgaW4gbG9hZCgpLgorCisgc2NyaXB0cy9EcGtnL1NobGlicy9TeW1ib2xGaWxlLnBtIHwgICAgNSArKy0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQorCitjb21taXQgZGE4MTViMThmNDZiNTZiNDg5NzE1M2I2ODA0MWNhZmRhMjFkMDg3ZgorQXV0aG9yOiBNb2Rlc3RhcyBWYWluaXVzIDxtb2Rlc3Rhc0B2YWluaXVzLmV1PgorRGF0ZTogICBTdW4gSnVuIDIxIDEwOjUwOjMxIDIwMDkgKzAyMDAKKworICAgIGRwa2ctZ2Vuc3ltYm9scygxKTogZXNjYXBlIG1vcmUgbWludXMgc2lnbnMKKworIG1hbi9kcGtnLWdlbnN5bWJvbHMuMSB8ICAgMTQgKysrKysrKy0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDcgaW5zZXJ0aW9ucygrKSwgNyBkZWxldGlvbnMoLSkKKworY29tbWl0IDFhZTc3YjgyY2ZmNTQ2MmFjZmZhZDY3ZTI5OTk5NzNkZjg4MGYwYjcKK0F1dGhvcjogUmFwaGFlbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBKdW4gMjEgMDI6MzU6MDQgMjAwOSArMDIwMAorCisgICAgZHBrZy1zY2FuKHBhY2thZ2VzfHNvdXJjZXMpOiBzdXBwb3J0IGFsbCBjaGVja3N1bXMgYWxnbworICAgIAorICAgIFVzZSBEcGtnOjpDaGVja3N1bXMgdG8gZ2VuZXJhdGUgYWxsIHN1cHBvcnRlZCBjaGVja3N1bXMgd2hlbiBwb3NzaWJsZS4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgICAgfCAgICAyICsKKyBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsIHwgICAzMyArKysrKysrKysrKysrKystLS0tLS0tLS0KKyBzY3JpcHRzL2Rwa2ctc2NhbnNvdXJjZXMucGwgIHwgICA1NiArKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAzIGZpbGVzIGNoYW5nZWQsIDQ2IGluc2VydGlvbnMoKyksIDQ1IGRlbGV0aW9ucygtKQorCitjb21taXQgZjYwYjk2MWQxOTA5MTAzZWI2YWI2OGVmZTkwMDljNGI5NTgwZWJkYQorQXV0aG9yOiBSYXBoYWVsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIEp1biAyMSAwMDo0MjozNyAyMDA5ICswMjAwCisKKyAgICBkcGtnLWdlbmNoYW5nZXM6IHNraXAgd2FybmluZyBhYm91dCBsb3dlciB2ZXJzaW9uIGZvciBiYWNrcG9ydHMKKyAgICAKKyAgICBCYWNrcG9ydHMgaGF2ZSBieSBkZWZpbml0aW9uIGEgdmVyc2lvbiBudW1iZXIgbG93ZXIgdGhhbiB0aGUgb3JpZ2luYWwKKyAgICB2ZXJzaW9uICh0byBlbmFibGUgdXBncmFkZXMgZnJvbSBiYWNrcG9ydHMgdG8gb2ZmaWNpYWwgcGFja2FnZXMpLiBTbyBza2lwCisgICAgdGhlIGNvcnJlc3BvbmRpbmcgd2FybmluZyB3aGVuIGJhY2twb3J0cyBhcmUgZGV0ZWN0ZWQgdGhhbmtzIHRvIHRoZQorICAgIHVzdWFsIHZlcnNpb24gc3VmZml4ZXMgfmJwbyAoYmFja3BvcnRzLm9yZykgYW5kIH52b2xhICh2b2xhdGlsZS5kLm8pLgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgfCAgICAyICsrCisgc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGwgfCAgICA0ICsrKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDUgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDAxMmFjNzRmODc2YjcwMzExNjVhNzgyZGJmZWIzZjQzNjkyYmYzODIKK0F1dGhvcjogUmFwaGFlbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBKdW4gMjEgMDA6Mjc6NDQgMjAwOSArMDIwMAorCisgICAgRHBrZzo6VmVuZG9yOjpnZXRfdmVuZG9yX2ZpbGUoKTogcmVwbGFjZXMgc3BhY2VzIGJ5IGRhc2hlcworICAgIAorICAgIEFsc28gbG9va3VwIGZpbGVuYW1lcyB3aXRoIGRhc2hlcyByZXBsYWNpbmcgc3BhY2VzIGluIHRoZSBuYW1lCisgICAgb2YgdGhlIHZlbmRvci4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgfCAgICAyICsrCisgc2NyaXB0cy9EcGtnL1ZlbmRvci5wbSB8ICAgIDYgKysrKystCisgMiBmaWxlcyBjaGFuZ2VkLCA3IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAwYTNkM2ZlMjFiNjI5YjU1MDA1YzE0ODg5ZmFhZjhmODRjNDk2N2M3CitBdXRob3I6IFJhcGhhZWwgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gSnVuIDIxIDAwOjE2OjU0IDIwMDkgKzAyMDAKKworICAgIGRwa2ctc291cmNlOiBlbnN1cmUgdHJ1c3RlZGtleXMuZ3BnIGlzIHVzZWQgdG8gY2hlY2sgc2lnbmF0dXJlcworCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICAgIHwgICAgMyArKysKKyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG0gfCAgICAzICsrKworIDIgZmlsZXMgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgZmZjNTA0OWQ2YTBmYWE3YjYzYzQyM2JiYjI1NmU3ZDcwNjYyYmM3YworQXV0aG9yOiBSYXBoYWVsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IEp1biAyMCAyMzozOTo1MyAyMDA5ICswMjAwCisKKyAgICBEcGtnOjpTaGxpYnM6OlN5bWJvbEZpbGU6IGFkZCBtaXNzaW5nIGV4cGxhbmF0aW9uCisKKyBzY3JpcHRzL0Rwa2cvU2hsaWJzL1N5bWJvbEZpbGUucG0gfCAgICA0ICsrLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDBiZGYzNDJhNjliZTQ3YTVkNzY1NDExNDUzOTg1NGVhODc3MDIyMTYKK0F1dGhvcjogUmFwaGFlbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBKdW4gMjAgMjM6MDg6MDkgMjAwOSArMDIwMAorCisgICAgRHBrZzo6U3Vic3R2YXJzOiByZXN0cnVjdHVyZSB0byBoYXZlIGEgc2VwYXJhdGUgbmFtZXNwYWNlIGZvciB2YXJpYWJsZXMKKyAgICAKKyAgICBUaGUgYWRkaXRpb24gb2Yg4oCcX3VzZWTigJ0gaW4gdGhlIHN0cnVjdHVyZSB3YXMgaW4gY29uZmxpY3Qgd2l0aAorICAgIGEgcG9zc2libGUgdmFyaWFibGUgb2YgdGhlIHNhbWUgbmFtZS4gU28gcHV0IHRoZSB2YXJpYWJsZXMgaW4KKyAgICBhIGRlZGljYXRlZCBoYXNoIHRvIGF2b2lkIHRoaXMgY29uZmxpY3QgYW5kIHJlbmFtZSDigJxfdXNlZOKAnSBpbnRvCisgICAg4oCcdXNlZOKAnS4KKyAgICAKKyAgICBDb3JyZWN0IHRoZSB3YXJuaW5nIG1lc3NhZ2UgdG9vLgorICAgIAorICAgIEFsc28gYWRkIEpvYWNoaW0gaW4gdGhlIFRIQU5LUyBmaWxlIGZvciBoaXMgY29udHJpYnV0aW9uLgorCisgVEhBTktTICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMSArCisgc2NyaXB0cy9EcGtnL1N1YnN0dmFycy5wbSAgICAgIHwgICA2NCArKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0KKyBzY3JpcHRzL3QvNzUwX0Rwa2dfU3Vic3R2YXJzLnQgfCAgICAyICstCisgMyBmaWxlcyBjaGFuZ2VkLCAzNSBpbnNlcnRpb25zKCspLCAzMiBkZWxldGlvbnMoLSkKKworY29tbWl0IGQ2MGJiM2UyMTFkOTQ5NjY1M2Q1MDYxYzExMmNlMzA5Mjk5OGZlMTEKK0F1dGhvcjogSm9hY2hpbSBCcmVpdG5lciA8bWFpbEBqb2FjaGltLWJyZWl0bmVyLmRlPgorRGF0ZTogICBTYXQgSnVuIDEzIDIzOjMzOjA4IDIwMDkgKzAyMDAKKworICAgIGRwa2ctZ2VuY29udHJvbDogd2FybiBhYm91dCB1bnVzZWQgc3Vic3R2YXJzIChjbG9zZXM6ICM1MzI3NjApCisgICAgCisgICAgVGhlIGNoYW5nZSB0byBEcGtnL0ZpZWxkcy5wbSBpcyByZXF1aXJlZCB0byBhdm9pZCB1bndhbnRlZCB3YXJuaW5ncworICAgIG9uIHRoZSBGOjxmaWVsZG5hbWU+IHN1YnN0aXR1dGlvbnMuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICB8ICAgIDMgKysrCisgc2NyaXB0cy9EcGtnL0ZpZWxkcy5wbSAgICAgfCAgICAxICsKKyBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbCB8ICAgIDIgKysKKyAzIGZpbGVzIGNoYW5nZWQsIDYgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDY5YmVlODg5NjliYzc3NjZhNGUyMDY2OTI3ZjEwNjliNTUxZmJhMmIKK0F1dGhvcjogSm9hY2hpbSBCcmVpdG5lciA8bWFpbEBqb2FjaGltLWJyZWl0bmVyLmRlPgorRGF0ZTogICBTYXQgSnVuIDEzIDIzOjI1OjIzIDIwMDkgKzAyMDAKKworICAgIERwa2c6OlN1YnN0dmFyczogdHJhY2sgdW51c2VkIHN1YnN0aXR1dGlvbnMgYW5kIGFkZCB3YXJuaW5nIGZ1bmN0aW9uCisgICAgCisgICAgVGhpcyBjb21taXQgYWRkcyB0cmFja2luZyBvZiB1c2VkIHZhcmlhYmxlcyBpbiBEcGtnOjpTdWJzdHZhcnMuIEl0IGFkZHMKKyAgICB0d28gbmV3IG1ldGhvZHMsIG5vX3dhcm4oKSB0byBkaXNhYmxlIHdhcm5pbmdzIGFib3V0IG9uZSBvZiB0aGUKKyAgICB2YXJpYWJsZXMsIHdhcm5fYWJvdXRfdW51c2VkKCkgdG8gaXNzdWUgd2FybmluZ3MgKHZpYQorICAgIERwa2c6OkVycm9ySGFuZGxpbmc6Ondhcm5pbmcoKSkuCisgICAgCisgICAgVGhlIHRlc3Qgc3VpdGUgaXMgZXh0ZW5kZWQgYWNjb3JkaW5nbHkuCisKKyBzY3JpcHRzL0Rwa2cvU3Vic3R2YXJzLnBtICAgICAgfCAgIDQ2ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKKyBzY3JpcHRzL3QvNzUwX0Rwa2dfU3Vic3R2YXJzLnQgfCAgIDE4ICsrKysrKysrKysrKysrLQorIDIgZmlsZXMgY2hhbmdlZCwgNjMgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDM4Yjc5Y2NiY2E3NDYwZjBmMzlkYWY1YmFhMWQ3MDM2NDY0ZjViMGQKK0F1dGhvcjogSm9hY2hpbSBCcmVpdG5lciA8bWFpbEBqb2FjaGltLWJyZWl0bmVyLmRlPgorRGF0ZTogICBTYXQgSnVuIDEzIDIyOjU0OjQ5IDIwMDkgKzAyMDAKKworICAgIERwa2c6OlN1YnN0dmFyczogYWRkIG5vbi1yZWdyZXNzaW9uIHRlc3Qgc3VpdGUKKworIHNjcmlwdHMvdC83NTBfRHBrZ19TdWJzdHZhcnMudCAgICAgICAgICB8ICAgNzQgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKworIHNjcmlwdHMvdC83NTBfRHBrZ19TdWJzdHZhcnMvc3Vic3R2YXJzMSB8ICAgIDkgKysrKworIDIgZmlsZXMgY2hhbmdlZCwgODMgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IGJmNDU4MjQyM2I0NDU1NmYwNTc0NGU3NjMzZDdkNTZhNzVmYzc3YzkKK0F1dGhvcjogSm9hY2hpbSBCcmVpdG5lciA8bWFpbEBqb2FjaGltLWJyZWl0bmVyLmRlPgorRGF0ZTogICBTYXQgSnVuIDEzIDIyOjM4OjA2IDIwMDkgKzAyMDAKKworICAgIERwa2c6OlN1YnN0dmFyczogYWxsb3cgc3BhY2VzIGluIGZyb250IG9mIGNvbW1lbnRzIGluIHN1YnN0dmFycworICAgIAorICAgIFByaW5jaXBsZSBvZiBsZWFzdCBzdXJwcmlzZS4KKworIHNjcmlwdHMvRHBrZy9TdWJzdHZhcnMucG0gfCAgICAyICstCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBjNDNiYThkNzZjNDM1MTQyMDZlNDY3MjExMjk1ZDg1MzI5NDRhNjFmCitBdXRob3I6IFJhcGhhZWwgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgSnVuIDIwIDIxOjQ1OjQ4IDIwMDkgKzAyMDAKKworICAgIGRwa2ctZ2Vuc3ltYm9sczogYWRkIG5ldyDigJxpZ25vcmUtYmxhY2tsaXN04oCdIHRhZworICAgIAorICAgIEFkZCBuZXcgdGFnICJpZ25vcmUtYmxhY2tsaXN0IiB0byBmb3JjZS1pbmNsdWRlIHN5bWJvbHMgd2hpY2ggYXJlCisgICAgbm9ybWFsbHkgYmxhY2tsaXN0ZWQuIFRoaXMgY2FuIGJlIHVzZWZ1bCBmb3IgbGliZ2NjIHRvIGluY2x1ZGUgc3ltYm9scworICAgIHRoYXQgdGhlIHRvb2xjaGFpbiBhbGxvd3MgdG8gYmUgc2hhcmVkIGJ1dCB0aGF0IGFyZSBvZnRlbiBzdGF0aWMKKyAgICAoYW5kIGhlbmNlIGFyZSBibGFja2xpc3RlZCBmb3IgdGhpcyByZWFzb24pLiBDbG9zZXM6ICM1MzM2NDIKKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgICAgICAgICB8ICAgIDQgKysrKworIG1hbi9kcGtnLWdlbnN5bWJvbHMuMSAgICAgICAgICAgICB8ICAgIDggKysrKysrKysKKyBzY3JpcHRzL0Rwa2cvU2hsaWJzL1N5bWJvbEZpbGUucG0gfCAgIDEzICsrKysrKystLS0tLS0KKyAzIGZpbGVzIGNoYW5nZWQsIDE5IGluc2VydGlvbnMoKyksIDYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBiOGIyMjliNjE3NDZiNWJjNWVjZDUxY2NjOTYxNjg3ZjMxOGUyNzhkCitBdXRob3I6IFJhcGhhZWwgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgSnVuIDIwIDIyOjA3OjQ3IDIwMDkgKzAyMDAKKworICAgIERwa2c6OlNobGliczo6U3ltYm9sOiBhZGQgbmV3IGhhc190YWcoKSBhbmQgZ2V0X3RhZ192YWx1ZSgpIGZ1bmN0aW9ucworCisgc2NyaXB0cy9EcGtnL1NobGlicy9TeW1ib2wucG0gfCAgIDE0ICsrKysrKysrKysrKy0tCisgMSBmaWxlcyBjaGFuZ2VkLCAxMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgMjExYzYyYzQ1ZDVmM2Q1ZjhlZTNkYzI2NjY4Y2Q1YTA0ZTg4OTA3NgorQXV0aG9yOiBSYXBoYWVsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IEp1biAyMCAyMDo1NTo0NiAyMDA5ICswMjAwCisKKyAgICBEcGtnOjpTaGxpYnM6OlN5bWJvbEZpbGU6IGFzc3VtZSBhbiBpbXBsaWNpdCB2ZXJzaW9uICJCYXNlIiBmb3IgdW52ZXJzaW9uZWQgc3ltYm9scworCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICAgICAgIHwgICAgMiArKworIHNjcmlwdHMvRHBrZy9TaGxpYnMvU3ltYm9sRmlsZS5wbSB8ICAgIDIgKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDQ5ZjlmOTYxNzgwMGYyYjQ1NjVlMDFlNTFkNjQ4MWM2MWM2MzE0ZWYKK0F1dGhvcjogUmFwaGFlbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBKdW4gMjAgMjA6MzA6NTkgMjAwOSArMDIwMAorCisgICAgZHBrZy1nZW5zeW1ib2xzOiBkbyBub3Qgb3V0cHV0IGRlcHJlY2F0ZWQgc3ltYm9scworICAgIAorICAgIFRoZSBkZXByZWNhdGVkIHN5bWJvbHMgYXBwZWFyIGNvbW1lbnRlZCB3aXRoIOKAnCNNSVNTSU5HOuKAnSwgdGhleSBzaG91bGQKKyAgICBhcHBlYXIgaW4gdGhlIGV4cGxhbmF0b3J5IGRpZmYgYnV0IG5vdCBpbiB0aGUgZmlsZSBnZW5lcmF0ZWQuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICB8ICAgIDIgKysKKyBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbCB8ICAgIDYgKysrKy0tCisgMiBmaWxlcyBjaGFuZ2VkLCA2IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA5MDkzY2YxZDk3YjU0NGYyYTg0MDBiNTdmZDFlYWZmNjliOWM1NTUxCitBdXRob3I6IFJhcGhhZWwgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgSnVuIDIwIDE5OjI4OjI5IDIwMDkgKzAyMDAKKworICAgIEFkZCBjaGFuZ2Vsb2cgZW50cnkgZm9yIG5ldyBkcGtnLWdlbnN5bWJvbHMgZmVhdHVyZQorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDYgKysrKysrCisgMSBmaWxlcyBjaGFuZ2VkLCA2IGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyNTg1YjI0ZmM2MDg0MGRiMTdmMzNkYjU5MzA4N2UwMzg0MGY4MDFjCitBdXRob3I6IFJhcGhhZWwgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgSnVuIDIwIDE4OjQyOjQ5IDIwMDkgKzAyMDAKKworICAgIERwa2c6OlNobGliczogY29kZSBjbGVhbnVwIGFmdGVyIG1lcmdlIGFuZCBkb2N1bWVudGF0aW9uIHVwZGF0ZQorCisgbWFuL2Rwa2ctZ2Vuc3ltYm9scy4xICAgICAgICAgICAgIHwgICA3NyArKysrKysrKysrKysrLS0tLS0tLS0tLS0KKyBzY3JpcHRzL0Rwa2cvU2hsaWJzL1N5bWJvbC5wbSAgICAgfCAgIDExICstLQorIHNjcmlwdHMvRHBrZy9TaGxpYnMvU3ltYm9sRmlsZS5wbSB8ICAxMTUgKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLQorIDMgZmlsZXMgY2hhbmdlZCwgMTA4IGluc2VydGlvbnMoKyksIDk1IGRlbGV0aW9ucygtKQorCitjb21taXQgNWRlYzkzN2U3ODIzNDNmYjgxMGEyMzdmZGRmZWYzNjYwYmRkZmVhOQorQXV0aG9yOiBNb2Rlc3RhcyBWYWluaXVzIDxtb2Rlc3Rhc0B2YWluaXVzLmV1PgorRGF0ZTogICBTYXQgSnVuIDIwIDAxOjI4OjU3IDIwMDkgKzAzMDAKKworICAgIFN5bWJvbCB0YWdnaW5nIHN1cHBvcnQgYW5kIGltcGxlbWVudGF0aW9uIG9mIG9wdGlvbmFsIGFuZCBhcmNoIHRhZ3MKKyAgICAKKyAgICBTeW1ib2xzIG1pZ2h0IGJlIHRhZ2dlZCB3aXRoIGFyYml0YXJ5IG51bWJlciBvZiB0YWdzIHdoaWNoIGFyZSBzZXBhcmF0ZWQgYnkgJ3wnCisgICAgKGFrYSBwaXBlKSBjaGFyYWN0ZXIuIFRhZ3MgKG9ubHkgaWYgdGhlcmUgYXJlIGFueSkgbXVzdCBiZSBlbmNsb3NlZCBpbiB0aGUgKCkKKyAgICBicmFja2V0cyByaWdodCBiZWZvcmUgYSBzeW1ib2wgbmFtZS4gRWFjaCB0YWcgY2FuIGFwcGVhciBvbmx5IG9uY2UgaW4gdGhlIHRhZworICAgIHNwZWNpZmljYXRpb24gZm9yIGVhY2ggc3ltYm9sLiBBIHRhZyBjYW4gb3B0aW9uYWxseSBoYXZlIGEgdmFsdWUuIFRoZSB0YWcgdmFsdWUKKyAgICBpcyBzZXBhcmF0ZWQgZnJvbSB0aGUgdGFnIG5hbWUgYnkgY2hhcmFjdGVyICc9Jy4gVGFnIG5hbWVzIGFuZCB2YWx1ZXMgY2FuIGJlCisgICAgYXJiaXRyYXJ5IHN0cmluZ3MgZXhjZXB0IHRoZXkgY2Fubm90IGNvbnRhaW4gYW55IG9mIHRoZSBzcGVjaWFsICgpfD0KKyAgICBjaGFyYWN0ZXJzLiBBIG5hbWUgb2YgdGhlIHRhZ2dlZCBzeW1ib2wgY2FuIG9wdGlvbmFsbHkgYmUgcXVvdGVkIHdpdGggZWl0aGVyICcKKyAgICBvciAiIGNoYXJhY3RlcnMgKGUuZy4gdG8gYWxsb3cgd2hpdGVzcGFjZXMgaW4gdGhlIHN5bWJvbCBuYW1lKS4gSWYgdGhlcmUgYXJlIG5vCisgICAgdGFncyBzcGVjaWZpZWQsIHN5bWJvbCBuYW1lIGNhbm5vdCBiZSBxdW90ZWQgYW5kIHN5bWJvbCBuYW1lIGNvbnRpbnVlcyB1cCB1bnRpbAorICAgIHRoZSBmaXJzdCB3aGl0ZXNwYWNlLgorICAgIAorICAgIEV4YW1wbGUgb2YgdGhlIHF1b3RlZCBzeW1ib2wgd2l0aCAyIHRhZ3MgKHRoZSBmaXJzdCB0YWcgaGFzIGEgdmFsdWUgd2hpbGUgdGhlCisgICAgc2Vjb25kIGRvZXMgbm90KToKKyAgICAKKyAgICAgKHRhZzE9dmFsdWUgb2YgdGhlIGZpcnN0IHRhZ3x0YWcyKSJGb286OkJhcjo6Zm9vYmFyKCkiQEJhc2UgMS4wIDEKKyAgICAKKyAgICBUYWdzIHNlcnZlIHR3byBwdXJwb3NlczoKKyAgICAKKyAgICAqIHRoZXkgY2FuIGJlIHVzZWQgZm9yIHN5bWJvbCBtYXJraW5nIChlLmcuIHdoZW4gYSBzeW1ib2wgbXVzdCBiZSB0cmVhdGVkCisgICAgICBzcGVjaWFsbHkgdW5kZXIgY2VydGFpbiBjaXJjdW1zdGFuY2VzKTsKKyAgICAqIHRoZXkgdGVsbCB0aGUgcGFyc2VyIHRoYXQgdGhlIHNwZWNpZmllZCBzeW1ib2wgbmFtZSBtdXN0IGJlIHByb2Nlc3NlZCBpbgorICAgICAgY2VydGFpbiB3YXkgdG8gYmVjb21lIGEgcmF3IHN5bWJvbCBuYW1lIGFzIGZvdW5kIGluIHRoZSBvYmplY3QgZmlsZXMuCisgICAgICBTdWNoIHRhZ3MgYXJlIHByb2Nlc3NlZCBpbiB0aGUgb3JkZXIgdGhleSBhcmUgc3BlY2lmaWVkLgorICAgIAorICAgIFN5bWJvbCBmaWxlcyB3aXRoIHRhZ3MgYXJlIG5vdCBiYWNrd2FyZHMgY29tcGF0aWJsZSwgc28gYSBuZXcgcGFyYW1ldGVyCisgICAgJ3RlbXBsYXRlX21vZGUnIGhhcyBiZWVuIGFkZGVkIHRvIFN5bWJvbEZpbGU6OmR1bXAoKS4gSWYgdGVtcGxhdGVfbW9kZSBpcyBub3QKKyAgICBzZXQgKGRlZmF1bHQpLCBkdW1wKCkgZW1pdHMgYSBmdWxseSBwb3N0LXByb2Nlc3NlZCBzeW1ib2wgc3BlY2lmaWNhdGlvbnMgYXMKKyAgICBkaXJlY3RlZCBieSB0aGVpciB0YWdzLiBUYWdzIHRoZW1zZWx2ZXMgYXJlIG9tbWl0ZWQgZnJvbSBvdXRwdXQgYW5kIHVua25vd24KKyAgICB0YWdzIGFyZSBpZ25vcmVkLiBJZiB0ZW1wbGF0ZV9tb2RlIGlzIHNldCwgZHVtcCgpIGtlZXBzIHRhZ3MgaW4gdGhlIG91dHB1dCBhbmQKKyAgICBlbWl0cyBzeW1ib2wgc3BlY2lmaWNhdGlvbnMgYXMgdGhleSB3ZXJlIHJlYWQgZnJvbSB0aGUgc3ltYm9sIGZpbGUuCisgICAgCisgICAgQXMgYSByZXN1bHQsIGEgbmV3IHBhcmFtZXRlciAtdCB3YXMgYWRkZWQgdG8gZHBrZy1nZW5zeW1ib2xzIHRvIHN1cHBvcnQgd3JpdGluZworICAgIHRoZSBzeW1ib2wgZmlsZSBpbiB0ZW1wbGF0ZSBtb2RlLiBEZWZhdWx0IGlzIHRvIHdyaXRlIGluIG5vbi10ZW1wbGF0ZSBtb2RlLgorICAgIAorICAgICh0YWd8Li4ufHRhZ04pI2luY2x1ZGUgImZpbGVfdG9faW5jbHVkZSIKKyAgICAKKyAgICBBbGwgc3ltYm9scyBpbiB0aGUgImZpbGVfdG9faW5jbHVkZSIgd2lsbCBiZSB0YWdnZWQgd2l0aCAjaW5jbHVkZSB0YWdzIGJ5CisgICAgZGVmYXVsdC4gQSBzeW1ib2wgaW4gImZpbGVfdG9faW5jbHVkZSIgY2FuIHNwZWNpZnkgYWRkaXRpb25hbCB0YWdzIGluIGl0cyB0YWcKKyAgICBzcGVjaWZpY2F0aW9uIG9yIGV2ZW4gb3ZlcnJpZGUgdGhlIHRhZyB2YWx1ZSBpbmhlcml0ZWQgZnJvbSAjaW5jbHVkZSB0YWdzIGJ5CisgICAgc3BlY2lmeWluZyBhbm90aGVyIG9uZSBpbiBpdHMgb3duIHRhZyBzcGVjaWZhY3Rpb24uIFRoZXJlIGlzIG5vIHdheSBmb3IgdGhlCisgICAgc3ltYm9sIHRvIHVudGFnIGl0c2VsZiwgZXZlbiBpZiB0aGUgdGFnIHdhcyBpbmhlcml0ZWQgZnJvbSAjaW5jbHVkZS4gICNpbmNsdWRlCisgICAgdGFncyBhcmUgYXNzdW1lZCB0byBnbyBhbHdheXMgYmVmb3JlIChpbiB0YWdvcmRlcikgc3ltYm9sIHNwZWNpZmljIHRhZ3MgZXZlbiBpZgorICAgIHRoZSBzeW1ib2wgb3ZlcnJpZGVzIHRoZSB0YWcuIFJlY3Vyc2l2ZSB0YWdnZWQgI2luY2x1ZGVzIGFyZSBzdXBwb3J0ZWQuCisgICAgCisgICAgVGhlIHBhdGNoIGFsc28gYWRkcyBzdXBwb3J0IGZvciAyIHRhZ3M6CisgICAgCisgICAgKiBvcHRpb25hbCAtIGEgc3ltYm9sIG1hcmtlZCBhcyBvcHRpb25hbCBjYW4gZGlzYXBwZWFyIGZyb20gdGhlIG9iamVjdCBmaWxlIGF0CisgICAgICBhbnkgdGltZSBhbmQgdGhhdCB3aWxsIG5ldmVyIGNhdXNlIGRwa2ctZ2Vuc3ltYm9scyB0byBmYWlsIChqdXN0IGVtaXQgdGhlCisgICAgICBkaWZmKS4gIElmIG9wdGlvbmFsIHN5bWJvbCBkaXNhcHBlYXJzLCBpdCBpcyBkdW1wZWQgYXMgTUlTU0lORyB3aXRoCisgICAgICBkZXByZWNhdGVkIHN0cmluZyBzZXQgdG8gdGhlIGN1cnJlbnQgcGFja2FnZSB2ZXJzaW9uIChoZW5jZSBpdCBhbHdheXMgYXBwZWFycworICAgICAgaW4gdGhlIGRwa2ctZ2Vuc3ltYm9scyBkaWZmKS4gSWYgb3B0aW9uYWwgc3ltYm9sIHJlYXBwZWFycywgaXQgZ2V0cworICAgICAgdW5kZXByZWNhdGVkIGJ1dCBpdHMgbWludmVyIGlzIGtlcHQgdW5jaGFuZ2VkIChjb250cmFyeSB0byByZWFwcGVhcmluZworICAgICAgTUlTU0lORyBzeW1ib2xzKS4KKyAgICAKKyAgICAgIEV4YW1wbGU6IEMrKyB0ZW1wbGF0ZSBpbnN0YW50aWF0aW9uIHdoaWNoIGRpc2FwcGVhcmFuY2UgaXMgbm90IEFCSSBicmVha2luZworICAgICAgKGkuZS4gYmFzaWNhbGx5IGl0IGlzIGEgcHJpdmF0ZSBzeW1ib2wpLgorICAgIAorICAgICAgKG9wdGlvbmFsKV9aTjZQaG9ub24yMk9iamVjdERlc2NyaXB0aW9uTW9kZWxJTE5TXzIxT2JqZWN0RGVzY3JpcHRpb25UeXBlRTBFRTExcXRfbWV0YWNhc3RFUEtjQEJhc2UgNDo0LjIuMAorICAgIAorICAgICogYXJjaD08bGlzdCBvZiBhcmNoaXRlY3R1cmVzIGFzIGluIEJ1aWxkLURlcGVuZCBkZXA+IC0gYWxsb3dzIHRvCisgICAgICBtYXJrIGEgc3ltYm9sIGFzIGFyY2gtc3BlY2lmaWMuIFdoZW4gZHVtcGluZyBpbiBub24tdGVtcGxhY2UgbW9kZSwgb25seQorICAgICAgc3ltYm9scyBjb25jZXJuZWQgZm9yIHRoZSBjdXJyZW50IGhvc3QgYXJjaGl0ZWN0dXJlIGFyZSBkdW1wZWQuIFdoZW4gZHVtcGluZworICAgICAgaW4gdGVtcGxhdGUgbW9kZSwgYWxsIGFyY2gtc3BlY2lmaWMgc3ltYm9scyBhcmUgYWx3YXlzIGR1bXBlZCAoaW5jbHVkaW5nCisgICAgICBwcm9wZXIgdGFncykuIElmIGFyY2gtc3BlY2lmaWMgc3ltYm9sIGFwcGVhcnMgb24gdGhlIGFyY2ggdGhhdCBpdCBpcyBub3QKKyAgICAgIHN1cHBvc2VkIHRvIGFwcGVhciwgaXQgaXMgbWFkZSBhcmNoIG5ldXRyYWwgKGhlbmNlIGl0IGFwcGVhcnMgaW4gdGhlCisgICAgICBkcGtnLWdlbnN5bWJvbHMgZGlmZikuIElmIGFyY2gtc3BlY2lmaWMgc3ltYm9sIGRpc2FwcGVhcnMgZnJvbSBpdHMgYXJjaCwgaXQKKyAgICAgIGdldHMgZGVjbGFyZWQgYXMgTUlTU0lORy4KKyAgICAKKyAgICAgIEV4YW1wbGU6IGFybWVsIHNwZWNpZmljIHN5bWJvbCBkdWUgdG8gcXJlYWwgbWFuZ2xpbmcgYXMgZmxvYXQgb24gYXJtKGVsKQorICAgICAgYW5kIGRvdWJsZSBvbiBvdGhlciBhcmNoZXMuCisgICAgCisgICAgICAoYXJjaD1hcm0gYXJtZWwpX1pONlBob25vbjExQXVkaW9PdXRwdXQxM3ZvbHVtZUNoYW5nZWRFZEBCYXNlIDQ6NC4yLjAKKyAgICAgIChhcmNoPSFhcm1lbCAhYXJtKV9aTjZQaG9ub24xMUF1ZGlvT3V0cHV0MTN2b2x1bWVDaGFuZ2VkRWZAQmFzZSA0OjQuMi4wCisKKyBtYW4vZHBrZy1nZW5zeW1ib2xzLjEgICAgICAgICAgICAgICAgICAgICAgICB8ICAxMzAgKysrKysrKysrKysrKy0tCisgc2NyaXB0cy9EcGtnL1NobGlicy9TeW1ib2wucG0gICAgICAgICAgICAgICAgfCAgMjM5ICsrKysrKysrKysrKysrKysrKysrKysrKysrCisgc2NyaXB0cy9EcGtnL1NobGlicy9TeW1ib2xGaWxlLnBtICAgICAgICAgICAgfCAgMTUzICsrKysrKysrKystLS0tLS0tCisgc2NyaXB0cy9NYWtlZmlsZS5hbSAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDIyICsrLQorIHNjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsICAgICAgICAgICAgICAgICAgIHwgICAyMyArKy0KKyBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsICAgICAgICAgICAgICAgICAgICB8ICAgIDIgKy0KKyBzY3JpcHRzL3QvMjAwX0Rwa2dfU2hsaWJzLnQgICAgICAgICAgICAgICAgICB8ICAxOTkgKysrKysrKysrKysrKysrKysrKy0tLQorIHNjcmlwdHMvdC8yMDBfRHBrZ19TaGxpYnMvb2JqZHVtcC50YWdzLWFtZDY0IHwgICA3MCArKysrKysrKworIHNjcmlwdHMvdC8yMDBfRHBrZ19TaGxpYnMvb2JqZHVtcC50YWdzLWkzODYgIHwgICA3MSArKysrKysrKworIHNjcmlwdHMvdC8yMDBfRHBrZ19TaGxpYnMvc3ltYm9scy5pbmNsdWRlLTMgIHwgICAgNSArCisgc2NyaXB0cy90LzIwMF9EcGtnX1NobGlicy9zeW1ib2xzLnRhZ3MuaW4gICAgfCAgICA4ICsKKyBzY3JpcHRzL3QvMjAwX0Rwa2dfU2hsaWJzL3N5bWJvbHRhZ3MuYyAgICAgICB8ICAgMjMgKysrCisgMTIgZmlsZXMgY2hhbmdlZCwgODM3IGluc2VydGlvbnMoKyksIDEwOCBkZWxldGlvbnMoLSkKKworY29tbWl0IGU4Njk4ZTA4YTFjY2E0OTQ5MDIwY2YxMmUyNmM0ZDE4OWUzYmEzMDYKK0F1dGhvcjogUGV0ZXIgS3JlZnRpbmcgPHBldGVya0BkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgSnVuIDIwIDE3OjA1OjExIDIwMDkgKzAxMDAKKworICAgIFVwZGF0ZSBTd2VkaXNoIHRyYW5zbGF0aW9uLgorICAgIAorICAgIHBvL3N2LnBvOiBVcGRhdGVkIHRvIDk5M3QwZjB1LgorICAgIHNjcmlwdHMvcG8vc3YucG86IFVwZGF0ZWQgdG8gNDg4dDBmMDguCisKKyBwby9zdi5wbyAgICAgICAgIHwgIDU4NCArKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBzY3JpcHRzL3BvL3N2LnBvIHwgIDQyMCArKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDUxOCBpbnNlcnRpb25zKCspLCA0ODYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBiY2U3OTcyZmJkZmYzNGQ3ZWNkODY4NzUzYzYxZTFlOTM4MmYxN2E3CitBdXRob3I6IEhlbGdlIEtyZXV0em1hbm4gPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorRGF0ZTogICBTYXQgSnVuIDIwIDE0OjEzOjM2IDIwMDkgKzAyMDAKKworICAgIFVwZGF0ZSBnZXJtYW4gc2NyaXB0cyB0cmFuc2xhdGlvbgorICAgIAorICAgIFVwZGF0ZSB0byA0ODh0MGYwdS4KKworIHNjcmlwdHMvcG8vZGUucG8gfCAgIDE2ICsrKysrKysrKysrKysrLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDE0IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyMTNiOTFlN2E1MTFlZjU1YmU3YzUxZGI2MDg0Njk5M2E5ZjQ1MmI1CitBdXRob3I6IEhlbGdlIEtyZXV0em1hbm4gPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorRGF0ZTogICBTYXQgSnVuIDIwIDEyOjAwOjI2IDIwMDkgKzAyMDAKKworICAgIFVwZGF0ZSBnZXJtYW4gc2NyaXB0cyB0cmFuc2xhdGlvbgorICAgIAorICAgIFVwZGF0ZSB0byA0ODd0MGYxdS4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAxICsKKyBzY3JpcHRzL3BvL2RlLnBvIHwgIDQxMiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDIyOCBpbnNlcnRpb25zKCspLCAxODUgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA2YTU1ZjM1N2M0Y2I4OGE1NDdmZTE1NTdiM2I5YWQ4NDdkYTE5NzAwCitBdXRob3I6IEhlbGdlIEtyZXV0em1hbm4gPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorRGF0ZTogICBTYXQgSnVuIDIwIDA5OjQ0OjUyIDIwMDkgKzAyMDAKKworICAgIFVwZGF0ZSBnZXJtYW4gdHJhbnNsYXRpb24gb2YgbWFudWFsIHBhZ2VzCisgICAgCisgICAgVXBkYXRlIHRvIDE2NjN0LgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDEgKworIG1hbi9wby9kZS5wbyAgICAgfCAxODI5ICsrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgODkgaW5zZXJ0aW9ucygrKSwgMTc0MSBkZWxldGlvbnMoLSkKKworY29tbWl0IDJjOTIwMjU0MDU0NzFhNTg2NmZlMTJiZDRiYmQ2MDE0ZjA5Mjg0NjYKK0F1dGhvcjogUmFwaGFlbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBKdW4gMTkgMTc6MzY6MzAgMjAwOSArMDIwMAorCisgICAgQWRkIGFub3RoZXIgYWx0ZXJuYXRpdmUgdGhhdCBuZWVkcyB0byBiZSBjbGVhbmVkIHVwCisKKyBkZWJpYW4vZHBrZy5wcmVpbnN0IHwgICAgMSArCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA3YzQ0ZGRlZTQ1YzIxZDM2OTVmZDczZjViZDNhMmJhODhiNGRiZGMxCitBdXRob3I6IE1pcm9zbGF2IEt1cmUgPGt1cmVtQGRlYmlhbi5jej4KK0RhdGU6ICAgRnJpIEp1biAxOSAxMTozMzoyNiAyMDA5ICswMjAwCisKKyAgICBVcGRhdGUgQ3plY2ggdHJhbnNsYXRpb24gb2YgZHBrZy9kc2VsZWN0CisgICAgCisgICAgcG8vY3MucG86IDEwMTJ0CisgICAgZHNlbGVjdC9wby9jcy5wbzogMjc5dAorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDQgKworIGRzZWxlY3QvcG8vY3MucG8gfCAgICA2ICstCisgcG8vY3MucG8gICAgICAgICB8IDEyMTYgKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMyBmaWxlcyBjaGFuZ2VkLCA1OTMgaW5zZXJ0aW9ucygrKSwgNjMzIGRlbGV0aW9ucygtKQorCitjb21taXQgZjQwNDU3ZjQ0ZjQ0MmQxMzk0ODU5ZTBjMDAzYjZkNzQzN2ViODM4NgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBKdW4gMTkgMTE6MjQ6NDkgMjAwOSArMDIwMAorCisgICAgVXNlIE5VTCBjaGFyYWN0ZXIgaW5zdGVhZCBvZiAwCisKKyBkcGtnLWRlYi9idWlsZC5jICAgICAgICAgIHwgICAgNCArKy0tCisgZHBrZy1kZWIvZXh0cmFjdC5jICAgICAgICB8ICAgMTQgKysrKysrKystLS0tLS0KKyBkcGtnLWRlYi9pbmZvLmMgICAgICAgICAgIHwgICAgNyArKysrLS0tCisgZHBrZy1zcGxpdC9pbmZvLmMgICAgICAgICB8ICAgIDggKysrKy0tLS0KKyBkcGtnLXNwbGl0L3F1ZXVlLmMgICAgICAgIHwgICAgMyArKy0KKyBkcGtnLXNwbGl0L3NwbGl0LmMgICAgICAgIHwgICAgMiArLQorIGxpYi9kYm1vZGlmeS5jICAgICAgICAgICAgfCAgICAyICstCisgbGliL2ZpZWxkcy5jICAgICAgICAgICAgICB8ICAgMTggKysrKysrKysrKy0tLS0tLS0tCisgbGliL21saWIuYyAgICAgICAgICAgICAgICB8ICAgIDIgKy0KKyBsaWIvbXlvcHQuYyAgICAgICAgICAgICAgIHwgICAxMCArKysrKystLS0tCisgbGliL3BhcnNlLmMgICAgICAgICAgICAgICB8ICAgIDYgKysrKy0tCisgbGliL3BhcnNlaGVscC5jICAgICAgICAgICB8ICAgIDUgKysrLS0KKyBsaWIvdGFyZm4uYyAgICAgICAgICAgICAgIHwgICAgMiArLQorIGxpYi90cmlnbGliLmMgICAgICAgICAgICAgfCAgICA4ICsrKystLS0tCisgbGliL3V0aWxzLmMgICAgICAgICAgICAgICB8ICAgIDIgKy0KKyBzcmMvYXJjaGl2ZXMuYyAgICAgICAgICAgIHwgICAgNiArKystLS0KKyBzcmMvY29uZmlndXJlLmMgICAgICAgICAgIHwgICAgMiArLQorIHNyYy9kZXBjb24uYyAgICAgICAgICAgICAgfCAgICAyICstCisgc3JjL2ZpbGVzZGIuYyAgICAgICAgICAgICB8ICAgIDIgKy0KKyBzcmMvbWFpbi5jICAgICAgICAgICAgICAgIHwgICAgOCArKysrLS0tLQorIHNyYy9wcm9jZXNzYXJjLmMgICAgICAgICAgfCAgICA5ICsrKysrLS0tLQorIHNyYy9xdWVyeS5jICAgICAgICAgICAgICAgfCAgICAyICstCisgc3JjL3JlbW92ZS5jICAgICAgICAgICAgICB8ICAgIDIgKy0KKyBzcmMvc3RhdGRiLmMgICAgICAgICAgICAgIHwgICAgOCArKysrLS0tLQorIHV0aWxzL3N0YXJ0LXN0b3AtZGFlbW9uLmMgfCAgICAyICstCisgMjUgZmlsZXMgY2hhbmdlZCwgNzQgaW5zZXJ0aW9ucygrKSwgNjIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA3N2I1NDVkZjk1YWQ5MmVlN2VhMWE4OTM0YTc5NTNlOTM5MzAzMWZhCitBdXRob3I6IFBldGVyIEtyZWZ0aW5nIDxwZXRlcmtAZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IEp1biAxOCAyMTo0NzozNiAyMDA5ICswMTAwCisKKyAgICBVcGRhdGUgU3dlZGlzaCB0cmFuc2xhdGlvbi4KKyAgICAKKyAgICBVcGRhdGVkIHBvL3N2LnBvIHRvIDEwMTJ0MGYwdS4KKyAgICBVcGRhdGVkIG1hbi9wby9zdi5wbyB0byAxNjYxdDBmMHUuCisgICAgVXBkYXRlZCBzY3JpcHRzL3BvL3N2LnBvIHRvIDQ3OXQwZjB1LgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDcgKysrKworIG1hbi9wby9zdi5wbyAgICAgfCAgIDg3ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vc3YucG8gICAgICAgICB8ICAgIDYgKystLQorIHNjcmlwdHMvcG8vc3YucG8gfCAgIDQ1ICsrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLQorIDQgZmlsZXMgY2hhbmdlZCwgODcgaW5zZXJ0aW9ucygrKSwgNTggZGVsZXRpb25zKC0pCisKK2NvbW1pdCA5NTc0MDM0MWU5NWRiOGFjNzhmYWQzMTM5ZWMzYjU4ZDNmZWIyZjM3CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IEp1biAxOCAxNjozNTowMyAyMDA5ICswMjAwCisKKyAgICBkcGtnLWFyY2hpdGVjdHVyZTogUmVtb3ZlIHVudXNlZCB2YXJpYWJsZQorCisgc2NyaXB0cy9kcGtnLWFyY2hpdGVjdHVyZS5wbCB8ICAgIDEgLQorIDEgZmlsZXMgY2hhbmdlZCwgMCBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgOWU2ZjJmMDc5MTAyMmFjOGMzYjFlMzY5NDUwOWJkYzE3MjZiMTdiOAorQXV0aG9yOiBEYXZpZCBTdGFuc2J5IDxkc3RhbnNieUBnb29nbGVtYWlsLmNvbT4KK0RhdGU6ICAgVGh1IEp1biAxOCAwODozMDoyNiAyMDA5ICswMjAwCisKKyAgICBGaXggZW5nbGlzaCBtaXN0YWtlICjigJxhcyB5b3UgcmVxdWVzdOKAnSDihpIg4oCcYXMgeW91IHJlcXVlc3RlZOKAnSkKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAyICsrCisgcG8vYXN0LnBvICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIHBvL2JzLnBvICAgICAgICAgfCAgIDEwICsrKysrLS0tLS0KKyBwby9jYS5wbyAgICAgICAgIHwgICAxMCArKysrKy0tLS0tCisgcG8vY3MucG8gICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIHBvL2RhLnBvICAgICAgICAgfCAgIDEwICsrKysrLS0tLS0KKyBwby9kZS5wbyAgICAgICAgIHwgICAxMCArKysrKy0tLS0tCisgcG8vZHBrZy5wb3QgICAgICB8ICAgMTAgKysrKystLS0tLQorIHBvL2R6LnBvICAgICAgICAgfCAgIDEwICsrKysrLS0tLS0KKyBwby9lbC5wbyAgICAgICAgIHwgICAxMCArKysrKy0tLS0tCisgcG8vZW8ucG8gICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIHBvL2VzLnBvICAgICAgICAgfCAgIDEwICsrKysrLS0tLS0KKyBwby9ldC5wbyAgICAgICAgIHwgICAxMCArKysrKy0tLS0tCisgcG8vZXUucG8gICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIHBvL2ZyLnBvICAgICAgICAgfCAgIDEwICsrKysrLS0tLS0KKyBwby9nbC5wbyAgICAgICAgIHwgICAxMCArKysrKy0tLS0tCisgcG8vaHUucG8gICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIHBvL2lkLnBvICAgICAgICAgfCAgIDEwICsrKysrLS0tLS0KKyBwby9pdC5wbyAgICAgICAgIHwgICAxMCArKysrKy0tLS0tCisgcG8vamEucG8gICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIHBvL2ttLnBvICAgICAgICAgfCAgIDEwICsrKysrLS0tLS0KKyBwby9rby5wbyAgICAgICAgIHwgICAxMCArKysrKy0tLS0tCisgcG8va3UucG8gICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIHBvL2x0LnBvICAgICAgICAgfCAgIDEwICsrKysrLS0tLS0KKyBwby9tci5wbyAgICAgICAgIHwgICAxMCArKysrKy0tLS0tCisgcG8vbmIucG8gICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIHBvL25lLnBvICAgICAgICAgfCAgIDEwICsrKysrLS0tLS0KKyBwby9ubC5wbyAgICAgICAgIHwgICAxMCArKysrKy0tLS0tCisgcG8vbm4ucG8gICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIHBvL3BhLnBvICAgICAgICAgfCAgIDEwICsrKysrLS0tLS0KKyBwby9wbC5wbyAgICAgICAgIHwgICAxMCArKysrKy0tLS0tCisgcG8vcHQucG8gICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIHBvL3B0X0JSLnBvICAgICAgfCAgIDEwICsrKysrLS0tLS0KKyBwby9yby5wbyAgICAgICAgIHwgICAxMCArKysrKy0tLS0tCisgcG8vcnUucG8gICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIHBvL3NrLnBvICAgICAgICAgfCAgIDEwICsrKysrLS0tLS0KKyBwby9zdi5wbyAgICAgICAgIHwgICAxMCArKysrKy0tLS0tCisgcG8vdGgucG8gICAgICAgICB8ICAgMTAgKysrKystLS0tLQorIHBvL3RsLnBvICAgICAgICAgfCAgIDEwICsrKysrLS0tLS0KKyBwby92aS5wbyAgICAgICAgIHwgICAxMCArKysrKy0tLS0tCisgcG8vemhfQ04ucG8gICAgICB8ICAgMTAgKysrKystLS0tLQorIHBvL3poX1RXLnBvICAgICAgfCAgIDEwICsrKysrLS0tLS0KKyBzcmMvYXJjaGl2ZXMuYyAgIHwgICAgMiArLQorIHNyYy9jb25maWd1cmUuYyAgfCAgICA0ICsrLS0KKyBzcmMvZXJyb3JzLmMgICAgIHwgICAgMiArLQorIHNyYy9wcm9jZXNzYXJjLmMgfCAgICAyICstCisgc3JjL3JlbW92ZS5jICAgICB8ICAgIDIgKy0KKyA0NyBmaWxlcyBjaGFuZ2VkLCAyMTMgaW5zZXJ0aW9ucygrKSwgMjExIGRlbGV0aW9ucygtKQorCitjb21taXQgOGU5ZGY3NTYyNTE2OGMwYTc2MzFmZGJkNWY1ZTI3ZjA1Y2Q1NmI5NQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBKdW4gMTcgMDM6MzI6MjUgMjAwOSArMDIwMAorCisgICAgZHBrZy1uYW1lOiBSZXdyaXRlIGluIHBlcmwKKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgfCAgICAxICsKKyBzY3JpcHRzL01ha2VmaWxlLmFtICAgIHwgICAgOSArLS0KKyBzY3JpcHRzL2Rwa2ctbmFtZS5wbCAgIHwgIDI1NiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKKyBzY3JpcHRzL2Rwa2ctbmFtZS5zaCAgIHwgIDIwNyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHNjcmlwdHMvcG8vUE9URklMRVMuaW4gfCAgICAxICsKKyA1IGZpbGVzIGNoYW5nZWQsIDI1OSBpbnNlcnRpb25zKCspLCAyMTUgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBkYjA1Zjc0YzNmYWQ0MGM5MGI1YThhNDg5MzBjZWVlY2MyYTAwZDgwCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIEp1biAxNiAyMjoxMToxMSAyMDA5ICswMjAwCisKKyAgICBSZWZhY3RvciBzdGF0ZGIgZmllbGQgcGFyc2luZyBmdW5jdGlvbnMKKworIHNyYy9maWxlc2RiLmggfCAgICA0ICsrCisgc3JjL3N0YXRkYi5jICB8ICAgODggKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDY1IGluc2VydGlvbnMoKyksIDI3IGRlbGV0aW9ucygtKQorCitjb21taXQgNGZiN2FmYTA2Y2JmZWY1MWE2N2IzZTZkYTc2NDhmYTEyNmU5Zjg0YworQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBKdW4gMTYgMjI6MDc6NTggMjAwOSArMDIwMAorCisgICAgTW92ZSBkaXZlcnNpb24gZGIgcGFyc2luZyBpbnRvIGEgbmV3IGZpbGUKKworIHNyYy9NYWtlZmlsZS5hbSB8ICAgIDIgKworIHNyYy9kaXZlcnRkYi5jICB8ICAxMzQgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKworIHNyYy9maWxlc2RiLmMgICB8ICAgNzIgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAzIGZpbGVzIGNoYW5nZWQsIDEzNiBpbnNlcnRpb25zKCspLCA3MiBkZWxldGlvbnMoLSkKKworY29tbWl0IDEzM2JjOWIyMDM5YjE4MDRmZjI5MWFlZmQ1OTVhZGU3YjgzMTc3NDEKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgSnVuIDE2IDIyOjA1OjA5IDIwMDkgKzAyMDAKKworICAgIE1vdmUgc3RhdG92ZXJyaWRlIGRiIHBhcnNpbmcgaW50byBhIG5ldyBmaWxlCisKKyBzcmMvTWFrZWZpbGUuYW0gfCAgICAxICsKKyBzcmMvZmlsZXNkYi5jICAgfCAgMTI3IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBzcmMvc3RhdGRiLmMgICAgfCAgMTg4ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKKyAzIGZpbGVzIGNoYW5nZWQsIDE4OSBpbnNlcnRpb25zKCspLCAxMjcgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA2NDRhYTYyYjMzNDg2MzY3MWY4ODFkYzNlY2U0ZGE5ZTY0OTFkNWFkCitBdXRob3I6IFJhcGhhZWwgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgSnVuIDEzIDIxOjUwOjQ2IDIwMDkgKzAyMDAKKworICAgIGRwa2ctYnVpbGRwYWNrYWdlKDEpOiBhZGQgbWlzc2luZyBwYXJhZ3JhcGggc2VwYXJhdG9yCisgICAgCisgICAgUmVwb3J0ZWQtYnk6IFBlciBBbmRlcnNzb24gPGF2dG9iaWZmQGdtYWlsLmNvbT4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgIHwgICAgMiArKworIG1hbi9kcGtnLWJ1aWxkcGFja2FnZS4xIHwgICAgMSArCisgMiBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA0OGEyMDM5NWQzNDA2YjY1NTg0NDA1NzMxNTg2ODc0OGRjZWFkYTJkCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIEp1biAxNSAwMjoxOToxMiAyMDA5ICswMjAwCisKKyAgICBkcGtnLXNjYW5wYWNrYWdlczogTWFyayBzdHJpbmcgZm9yIHRyYW5zbGF0aW9uCisKKyBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsIHwgICAgMyArKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDFjMTgyOThlNzUxMGZmYjJkYWI0NTMyOTM1MjhlY2QyMTlkNmEyYjIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gSnVuIDE0IDIwOjM0OjIyIDIwMDkgKzAyMDAKKworICAgIGRwa2ctc2NhbnBhY2thZ2VzOiBVc2UgaW5mbyBpbnN0ZWFkIG9mIGFkLWhvYyBwcmludGluZworICAgIAorICAgIFJlZGlyZWN0IGl0IHRvIFNUREVSUiB0byBub3QgcG9sbHV0ZSBTVERPVVQgd2hlcmUgdGhlIFBhY2thZ2VzIGZpbGUgaXMKKyAgICBiZWluZyBvdXRwdXR0ZWQuCisKKyBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsIHwgICAgNiArKysrKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDUgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGQwN2VjZGRhOGExYWY4YWVlYzhiYmE2OGZlYzViMjUzNjVlM2FlNWIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gSnVuIDE0IDIwOjMyOjQxIDIwMDkgKzAyMDAKKworICAgIERwa2c6OkVycm9ySGFuZGxpbmc6IFN1cHBvcnQgY2hhbmdpbmcgdGhlIGZpbGUgaGFuZGxlIGZvciBpbmZvKCkKKyAgICAKKyAgICBTb21ldGltZXMgd2UgbmVlZCBub3QgY2x1dHRlciBTVERPVVQgd2hlbiBvdXRwdXR0aW5nIGRhdGEgdGhlcmUuCisKKyBzY3JpcHRzL0Rwa2cvRXJyb3JIYW5kbGluZy5wbSB8ICAgIDYgKysrKystCisgMSBmaWxlcyBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBiMjk5ZGFkNWFkM2ViOGJiY2Y3NWIwODkxZjg3NzQ0Mzk5ZTc1NTc0CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIEp1biAxNCAxOTo1NzowNSAyMDA5ICswMjAwCisKKyAgICBEcGtnOjpFcnJvckhhbmRsaW5nOiBBZGQgbmV3IHJlcG9ydF9vcHRpb25zKCkKKyAgICAKKyAgICBTZXQgcmVwb3J0IG9wdGlvbnMgdmlhIHRoaXMgbmV3IGZ1bmN0aW9uIGluc3RlYWQgb2YgZGlyZWN0bHkgZXhwb3J0aW5nCisgICAgcHJpdmF0ZSB2YXJpYWJsZXMuCisKKyBzY3JpcHRzL0Rwa2cvRXJyb3JIYW5kbGluZy5wbSAgICAgfCAgIDE1ICsrKysrKysrKysrKy0tLQorIHNjcmlwdHMvZHBrZy1zb3VyY2UucGwgICAgICAgICAgICB8ICAgIDQgKystLQorIHNjcmlwdHMvdC8xMDBfRHBrZ19WZXJzaW9uLnQgICAgICB8ICAgIDYgKysrLS0tCisgc2NyaXB0cy90LzMwMF9EcGtnX0J1aWxkT3B0aW9ucy50IHwgICAgMyArKy0KKyA0IGZpbGVzIGNoYW5nZWQsIDE5IGluc2VydGlvbnMoKyksIDkgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyODhhYTkwZTg4MWMxYWFhOGRkYWNkZWVlZDhhNTYzMTE0MmZmZTY3CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIEp1biAxNCAxOTowMjo1NSAyMDA5ICswMjAwCisKKyAgICBEcGtnOjpFcnJvckhhbmRsaW5nOiBSZW1vdmUgdW51c2VkIHdhcm5lcnJvcigpIGFuZCAkd2FybmFibGVfZXJyb3IKKyAgICAKKyAgICBEbyBub3QgcGFzcyBvdmVyIC1XIGFuZCAtRSBmcm9tIGRwa2ctYnVpbGRwYWNrYWdlIHRvIGRwa2ctc291cmNlIGFueW1vcmUKKyAgICBhbmQgd2FybiBkaXJlY3RseSBhYm91dCBpdHMgZGVwcmVjYXRlZCBzdGF0dXMuCisKKyBzY3JpcHRzL0Rwa2cvRXJyb3JIYW5kbGluZy5wbSB8ICAgMTQgKystLS0tLS0tLS0tLS0KKyBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsICB8ICAgMTMgKysrKy0tLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCAyMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDNjNmY1NTE2Yzk2NTZkMzkwMDNlYWZjNDUyMjFhMmEzZWFhNDY3ZDgKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gSnVuIDE0IDEzOjUyOjEyIDIwMDkgKzAyMDAKKworICAgIGRwa2ctc2NhbnNvdXJjZXM6IFVzZSBEcGtnOjpFcnJvckhhbmRsaW5nIGluc3RlYWQgb2YgYWQtaG9jIGNvZGUKKyAgICAKKyAgICBSZXBsYWNlIGxvY2FsIHJlcG9ydGluZyBmdW5jdGlvbmFsaXR5IHdpdGggc3RhbmRhcmQgZXJyb3IgYW5kIHdhcm5pbmcKKyAgICBEcGtnIGZ1bmN0aW9ucy4KKworIHNjcmlwdHMvZHBrZy1zY2Fuc291cmNlcy5wbCB8ICAgOTMgKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMzUgaW5zZXJ0aW9ucygrKSwgNTggZGVsZXRpb25zKC0pCisKK2NvbW1pdCA3ZGYyMTE4NzRjYTIyMjNkOGQzZTY1NTRhZDYxMWFkNmFjMjZlNTMwCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIEp1biAxNSAwMToxODowMiAyMDA5ICswMjAwCisKKyAgICBkcGtnLXNjYW5wYWNrYWdlczogTW92ZSBtaXNzaW5nIG92ZXJyaWRlIHdhcm5pbmcgbmVhciB0aGUgc3B1cmlvdXMgb25lCisgICAgCisgICAgVGhleSBhcmUgcmVsYXRlZCBzbyBiZXR0ZXIgdG8gaGF2ZSB0aGVtIGNsb3Nlci4KKworIHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGwgfCAgICA4ICsrKystLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBiYzcyNzlkZDQ0N2I0N2Q2MTc1MjU4Y2YyYWY0N2Y1M2MxYzZkMjNiCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIEp1biAxNSAwMToxMjo0OCAyMDA5ICswMjAwCisKKyAgICBkcGtnLXNjYW5wYWNrYWdlczogVXNlIHdhcm5pbmcoKSBpbnN0ZWFkIG9mIGFkLWhvYyBwcmludGluZworICAgIAorICAgIFJlbW92ZSBub3cgdW51c2VkIHdyaXRlbGlzdCgpLgorCisgc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbCB8ICAgNzAgKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyNSBpbnNlcnRpb25zKCspLCA0NSBkZWxldGlvbnMoLSkKKworY29tbWl0IGYyZDBmODlmODA2ODI5YjM5NjI5ZTAxMDE2YTc3NGYyNWVmOTNhMDEKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gSnVuIDE0IDIxOjQzOjI4IDIwMDkgKzAyMDAKKworICAgIGRwa2ctc2NhbnBhY2thZ2VzOiBGaXggc3B1cmlvdXMgb3ZlcnJpZGVzIG91dHB1dAorICAgIAorICAgIFNwbGl0IGVhY2ggcGFja2FnZSBuYW1lIGFuZCBpbmRlbnQgdG8gdGhlIHJpZ2h0LgorCisgc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbCB8ICAgIDQgKystLQorIDEgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgOGUzZjI2YWQyZDMzMGRhNzI2OWU3N2EwOTdiOGVlZmIzZjE0OGUwMgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBKdW4gMTQgMjE6NDE6MjQgMjAwOSArMDIwMAorCisgICAgZHBrZy1zY2FucGFja2FnZXM6IFByb3Blcmx5IGRldGVjdCBzcHVyaW91cyBvdmVycmlkZXMKKyAgICAKKyAgICBUaGUgZGV0ZWN0aW9uIHdhcyBiZWluZyBkb25lIHRvbyBsYXRlIGFzIG5vIG92ZXJyaWRlbiBpbmZvcm1hdGlvbiBpcworICAgIGtlcHQgaWYgdGhlIHBhY2thZ2VzIGlzIG5vdCBvbiB0aGUgYXJjaGl2ZS4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgICAgfCAgICAxICsKKyBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsIHwgICAgOCArKysrKy0tLQorIDIgZmlsZXMgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQorCitjb21taXQgODIzMDRmMWYyOTk2NGE1NmNiNDk4ZWQ5MzdjNGZkNWE5N2QyM2E3YQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBOb3YgMjEgMTE6Mzg6MDQgMjAwOCArMDIwMAorCisgICAgZHBrZy1zb3VyY2U6IFVzZSBkZWZhdWx0IGNvbXByZXNzb3IgdmFsdWVzIGZyb20gRHBrZzo6U291cmNlOjpDb21wcmVzc29yCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgIHwgICAgMSArCisgc2NyaXB0cy9kcGtnLXNvdXJjZS5wbCB8ICAgMTMgKysrKysrKy0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgOCBpbnNlcnRpb25zKCspLCA2IGRlbGV0aW9ucygtKQorCitjb21taXQgNGJjYTViYTRmOWQwY2ViZGZkZmZmOGRhZjJiNDYwOTdkYzkwMTI3MQorQXV0aG9yOiBSYXBoYWVsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IEp1biAxMSAxMzoxMDozOCAyMDA5ICswMjAwCisKKyAgICBBZGQgb25lIG1vcmUgY2FzZSBvZiBhbHRlcm5hdGl2ZSB0byBjbGVhbnVwIChDbG9zZXM6ICM1MzI3MzkpCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgIHwgICAgMiArLQorIGRlYmlhbi9kcGtnLnByZWluc3QgfCAgICAzICsrLQorIDIgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgZjQ5ZGE5ZjI4M2I3Y2ZhMjFlZTgzM2NjMDRjZDI3NDYwMGJjZDUzNQorQXV0aG9yOiBSYXBoYWVsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIEp1biA4IDE4OjA1OjM5IDIwMDkgKzAyMDAKKworICAgIERwa2c6OlNvdXJjZTo6Q29tcHJlc3NlZEZpbGU6OmNsZWFudXBfYWZ0ZXJfb3BlbigpOiBmaXggZXJyb3IgbWVzc2FnZQorICAgIAorICAgIFRoZSAkY29tcHJlc3Nvci0+e2NtZGxpbmV9IHZhcmlhYmxlIGlzIHJlbW92ZWQgYnkKKyAgICAkY29tcHJlc3Nvci0+d2FpdF9lbmRfcHJvY2VzcygpIHNvIHN0b3JlIGl0IGZpcnN0IGluIGNhc2Ugd2UgaGF2ZSB0bworICAgIGRpc3BsYXkgYW4gZXJyb3IgbWVzc2FnZS4KKworIHNjcmlwdHMvRHBrZy9Tb3VyY2UvQ29tcHJlc3NlZEZpbGUucG0gfCAgICAzICsrLQorIDEgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgNDY5MGUwOGU5NTg3MWFjMWZjMDQ5ODc0OTQ2NmNmMjU1YTg0MGUwYworQXV0aG9yOiBSYXBoYWVsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIEp1biA3IDIxOjA1OjQxIDIwMDkgKzAyMDAKKworICAgIHVwZGF0ZS1hbHRlcm5hdGl2ZXM6IGhhbmRsZSBkYW5nbGluZyBhbHRlcm5hdGl2ZSBzeW1saW5rCisgICAgCisgICAgdXBkYXRlLWFsdGVybmF0aXZlcyBkaWQgbm90IHByb3Blcmx5IGhhbmRsZSB3aGVuIHRoZQorICAgIGFsdGVybmF0aXZlIHN5bWxpbmsgaW4gL2V0Yy9hbHRlcm5hdGl2ZXMgd2FzIGRhbmdsaW5nCisgICAgYW5kIHBvaW50aW5nIHRvIGEgY2hvaWNlIHRoYXQgZG9lcyBub3QgZXhpc3QgY3VycmVudGx5LgorICAgIEZpeCBieSBzd2l0Y2hpbmcgdGhlIGFsdGVybmF0aXZlIHRvIGF1dG9tYXRpYyBtb2RlIHNvCisgICAgdGhhdCBpdCdzIHJlcGxhY2VkIGJ5IHRoZSBiZXN0IGNob2ljZS4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgICAgICB8ICAgIDIgKysKKyBzY3JpcHRzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMucGwgfCAgICA4ICsrKysrKystCisgMiBmaWxlcyBjaGFuZ2VkLCA5IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAwNTc1MjNkMGE4MDZhM2NiNWJlMzhjOGRhMWEyZmMzZjA0NGVmNGNjCitBdXRob3I6IFJhcGhhZWwgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gSnVuIDcgMTg6MDU6MjAgMjAwOSArMDIwMAorCisgICAgUmVtb3ZlIGludmFsaWQgbWFzdGVyIGFsdGVybmF0aXZlcyBvbiB1cGdyYWRlCisgICAgCisgICAgdXBkYXRlLWFsdGVybmF0aXZlcyB3YXMgdmVyeSBsYXhpc3QgaW4gaXRzIHBhc3QgYW5kIGFsbG93ZWQgdGhpbmdzIHRoYXQKKyAgICBhcmUgbm93IHJpZ2h0ZnVsbHkgZm9yYmlkZGVuLiBGb3IgZXhhbXBsZSwgeW91IGNhbid0IHVzZSBhbHRlcm5hdGl2ZXMgYXMKKyAgICBzbGF2ZSB3aGVuIGl0J3MgYSBtYXN0ZXIgYWx0ZXJuYXRpdmUgYWxyZWFkeS4gSG93ZXZlciB0aGVyZSBpcyBzb21ldGltZXMKKyAgICBjcnVmdCBmaWxlcyBpbiAvdmFyL2xpYi9kcGtnL2FsdGVybmF0aXZlcy8gZHVlIHRvIGhpc3RvcmljYWwgY2hhbmdlcyAob3IKKyAgICBidWdzKSB0aGF0IGluY29ycmVjdGx5IHRyaWdnZXIgdGhpcyBjaGVjay4KKyAgICAKKyAgICBXZSBhdm9pZCB0aGlzIHByb2JsZW0gYnkgcmVtb3ZpbmcgdGhlIGNvbmZsaWN0aW5nIGZpbGVzIG9uIHVwZ3JhZGUuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgIHwgICAgMiArKworIGRlYmlhbi9kcGtnLnByZWluc3QgfCAgIDE1ICsrKysrKysrKysrKysrKworIDIgZmlsZXMgY2hhbmdlZCwgMTcgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IGFiOTY0MTU2ZWVkY2UwMDY3MDc4YjNkNDM3MTY1MTI3NWQ3ZGM0YzkKK0F1dGhvcjogQ2hyaXN0aWFuIFBlcnJpZXIgPGJ1YnVsbGVAZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIEp1biA3IDE0OjQ3OjA1IDIwMDkgKzAyMDAKKworICAgIFVwZGF0ZWQgQ2F0YWxhbiB0cmFuc2xhdGlvbgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDEgKworIHBvL2NhLnBvICAgICAgICAgfCAgMjMyICsrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgMTE3IGluc2VydGlvbnMoKyksIDExNiBkZWxldGlvbnMoLSkKKworY29tbWl0IDNmZTRlODZmYzk4MzUwMTM1MjljYTI5YWU5NTc3ZWRjODcyOTZmZWYKK0F1dGhvcjogRGVuZyBYaXl1ZSA8bWFucGhpei1ndWVzdEB1c2Vycy5hbGlvdGguZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIEp1biAxIDEwOjUyOjQ4IDIwMDkgKzAyMDAKKworICAgIFNpbXBsaWZpZWQgQ2hpbmVzZSB0cmFuc2xhdGlvbiB1cGRhdGUKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAzICsKKyBwby96aF9DTi5wbyAgICAgIHwgIDU1NSArKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDI1OSBpbnNlcnRpb25zKCspLCAyOTkgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBiYmIzM2U1YjgyOGEyYjIzNzM5OWRlZjVmZjE1Y2Q4MTgyNDVmNGQzCitBdXRob3I6IFJhcGhhZWwgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgTWF5IDI4IDE1OjMxOjMyIDIwMDkgKzAyMDAKKworICAgIFVuc2V0IFRBUl9PUFRJT05TIHdoZW4gaGFuZGxpbmcgdGFyIGFyY2hpdmVzIGZvciBzb3VyY2UgcGFja2FnZXMKKyAgICAKKyAgICBUaGUgY29tbWFuZCBsaW5lIGludGVyZmFjZSBpcyB0aGUgb25seSB3YXkgdGhhdCBzaG91bGQgY29udHJvbCB0YXIncworICAgIGJlaGF2aW91ciBpbiBpdHMgdXNhZ2UgYnkgZHBrZyBhcyB3ZSB3YW50IHRoZSBzYW1lIGJlaGF2aW91ciBmb3IKKyAgICBldmVyeWJvZHkuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICAgfCAgICA1ICsrKysrCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9BcmNoaXZlLnBtIHwgICAgMiArKworIDIgZmlsZXMgY2hhbmdlZCwgNyBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgMjRmNzEwN2U5ODE1ZTkwOTMxZmJjY2QxMjk5NzU3NDk0NDMxZGQ3NQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBNYXkgMjggMTQ6MzM6NTMgMjAwOSArMDIwMAorCisgICAgVW5zZXQgVEFSX09QVElPTlMgd2hlbiBleHRyYWN0aW5nIC5kZWIgYXJjaGl2ZXMKKyAgICAKKyAgICBXZSBkb24ndCB3YW50IHRoZSBleHRyYWN0aW9uIHRvIGJlIGFmZmVjdGVkIGJ5IHVzZXIgc2V0dGFibGUgZW52aXJvbm1lbnQKKyAgICB2YXJpYWJsZXMgZWl0aGVyLiBUaGUgY29tbWFuZCBsaW5lIHRvb2wgaXMgY29uc2lkZXJlZCBhbiBpbnRlcmZhY2UgZm9yCisgICAgd2hpY2ggd2Ugd2FudCBhcyBtdWNoIGNvbnRyb2wgYXMgcG9zc2libGUgdG8gZ3VhcmFudGVlIG5vIHVuaW50ZW50aW9uYWwKKyAgICBiZWhhdmlvdXIgY2hhbmdlcyB0byB0aGUgZm9ybWF0IG9yIHRoZXkgd2F5IGl0J3MgYmVpbmcgaGFuZGxlZC4KKyAgICAKKyAgICBDbG9zZXM6ICM1MzA4NjAKKworIGRlYmlhbi9jaGFuZ2Vsb2cgICB8ICAgIDIgKy0KKyBkcGtnLWRlYi9leHRyYWN0LmMgfCAgICAzICsrKworIDIgZmlsZXMgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgMWY5NzUzNzMwMzZhM2Y5ZTJjZDQ0MWQyMDVkMzA3ZTI1ZjYzOTMxMQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBNYXkgMjYgMDE6MjY6NDQgMjAwOSArMDIwMAorCisgICAgQnVtcCB2ZXJzaW9uIHRvIDEuMTUuM34KKworIGNvbmZpZ3VyZS5hYyAgICAgfCAgICAyICstCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDYgKysrKysrCisgMiBmaWxlcyBjaGFuZ2VkLCA3IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBmNGFiODdiMjlhNGFiZmUzNzIzOTVkNjY2NzlkNTI2ZTg4OGQzNTU5CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIE1heSAyNiAwMTowMjowMCAyMDA5ICswMjAwCisKKyAgICBSZWxlYXNlIDEuMTUuMgorCisgY29uZmlndXJlLmFjICAgICB8ICAgIDIgKy0KKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgOCArKysrLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCA1IGRlbGV0aW9ucygtKQorCitjb21taXQgNjJmZWYyMWNlOWE1Njc5Y2Y1ZGVhYTJhZmEyZDEyNjFmNDU3N2Y4ZgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBNYXkgMjYgMDE6MTk6MDcgMjAwOSArMDIwMAorCisgICAgUmVnZW5lcmF0ZSAucG90IGZpbGVzIGFuZCBtZXJnZSAucG8gZmlsZXMgd2l0aCB0aGVtCisKKyBkc2VsZWN0L3BvL2JzLnBvICAgICAgIHwgIDEyNiArKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgZHNlbGVjdC9wby9jYS5wbyAgICAgICB8ICAxMzggKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBkc2VsZWN0L3BvL2NzLnBvICAgICAgIHwgIDEzOCArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIGRzZWxlY3QvcG8vZGEucG8gICAgICAgfCAgMTM4ICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgZHNlbGVjdC9wby9kZS5wbyAgICAgICB8ICAxMzggKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBkc2VsZWN0L3BvL2RzZWxlY3QucG90IHwgIDEyNiArKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgZHNlbGVjdC9wby9lbC5wbyAgICAgICB8ICAxMzggKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBkc2VsZWN0L3BvL2VzLnBvICAgICAgIHwgIDE0MiArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBkc2VsZWN0L3BvL2V0LnBvICAgICAgIHwgIDEzMiArKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBkc2VsZWN0L3BvL2V1LnBvICAgICAgIHwgIDEzOCArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIGRzZWxlY3QvcG8vZnIucG8gICAgICAgfCAgMTM4ICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgZHNlbGVjdC9wby9nbC5wbyAgICAgICB8ICAxMzggKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBkc2VsZWN0L3BvL2h1LnBvICAgICAgIHwgIDEzOCArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIGRzZWxlY3QvcG8vaWQucG8gICAgICAgfCAgMTM4ICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgZHNlbGVjdC9wby9pdC5wbyAgICAgICB8ICAxMzggKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBkc2VsZWN0L3BvL2phLnBvICAgICAgIHwgIDEzOCArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIGRzZWxlY3QvcG8va28ucG8gICAgICAgfCAgMTM4ICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgZHNlbGVjdC9wby9uYi5wbyAgICAgICB8ICAxMzggKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBkc2VsZWN0L3BvL25sLnBvICAgICAgIHwgIDEzOCArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIGRzZWxlY3QvcG8vbm4ucG8gICAgICAgfCAgMTM4ICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgZHNlbGVjdC9wby9wbC5wbyAgICAgICB8ICAxMzggKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBkc2VsZWN0L3BvL3B0LnBvICAgICAgIHwgIDEzOCArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIGRzZWxlY3QvcG8vcHRfQlIucG8gICAgfCAgMTM4ICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgZHNlbGVjdC9wby9yby5wbyAgICAgICB8ICAxMzggKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBkc2VsZWN0L3BvL3J1LnBvICAgICAgIHwgIDEzOCArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIGRzZWxlY3QvcG8vc2sucG8gICAgICAgfCAgMTM4ICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgZHNlbGVjdC9wby9zdi5wbyAgICAgICB8ICAxMzggKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBkc2VsZWN0L3BvL3RsLnBvICAgICAgIHwgIDEzOCArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIGRzZWxlY3QvcG8vdmkucG8gICAgICAgfCAgMTM4ICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgZHNlbGVjdC9wby96aF9DTi5wbyAgICB8ICAxMzggKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBkc2VsZWN0L3BvL3poX1RXLnBvICAgIHwgIDEzOCArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2FzdC5wbyAgICAgICAgICAgICAgfCAgIDU2ICsrKysrKysrKystLS0tLS0tLS0tCisgcG8vYnMucG8gICAgICAgICAgICAgICB8ICAgNTYgKysrKysrKysrKy0tLS0tLS0tLS0KKyBwby9jYS5wbyAgICAgICAgICAgICAgIHwgICA1NiArKysrKysrKysrLS0tLS0tLS0tLQorIHBvL2NzLnBvICAgICAgICAgICAgICAgfCAgIDU2ICsrKysrKysrKystLS0tLS0tLS0tCisgcG8vZGEucG8gICAgICAgICAgICAgICB8ICAgNTYgKysrKysrKysrKy0tLS0tLS0tLS0KKyBwby9kZS5wbyAgICAgICAgICAgICAgIHwgICA1NiArKysrKysrKysrLS0tLS0tLS0tLQorIHBvL2Rwa2cucG90ICAgICAgICAgICAgfCAgIDU2ICsrKysrKysrKystLS0tLS0tLS0tCisgcG8vZHoucG8gICAgICAgICAgICAgICB8ICAgNTYgKysrKysrKysrKy0tLS0tLS0tLS0KKyBwby9lbC5wbyAgICAgICAgICAgICAgIHwgICA1NiArKysrKysrKysrLS0tLS0tLS0tLQorIHBvL2VvLnBvICAgICAgICAgICAgICAgfCAgIDU2ICsrKysrKysrKystLS0tLS0tLS0tCisgcG8vZXMucG8gICAgICAgICAgICAgICB8ICAgNTYgKysrKysrKysrKy0tLS0tLS0tLS0KKyBwby9ldC5wbyAgICAgICAgICAgICAgIHwgICA1NiArKysrKysrKysrLS0tLS0tLS0tLQorIHBvL2V1LnBvICAgICAgICAgICAgICAgfCAgIDYyICsrKysrKysrKysrLS0tLS0tLS0tLQorIHBvL2ZyLnBvICAgICAgICAgICAgICAgfCAgIDU2ICsrKysrKysrKystLS0tLS0tLS0tCisgcG8vZ2wucG8gICAgICAgICAgICAgICB8ICAgNTYgKysrKysrKysrKy0tLS0tLS0tLS0KKyBwby9odS5wbyAgICAgICAgICAgICAgIHwgICA1NiArKysrKysrKysrLS0tLS0tLS0tLQorIHBvL2lkLnBvICAgICAgICAgICAgICAgfCAgIDU2ICsrKysrKysrKystLS0tLS0tLS0tCisgcG8vaXQucG8gICAgICAgICAgICAgICB8ICAgNTYgKysrKysrKysrKy0tLS0tLS0tLS0KKyBwby9qYS5wbyAgICAgICAgICAgICAgIHwgICA1NiArKysrKysrKysrLS0tLS0tLS0tLQorIHBvL2ttLnBvICAgICAgICAgICAgICAgfCAgIDU2ICsrKysrKysrKystLS0tLS0tLS0tCisgcG8va28ucG8gICAgICAgICAgICAgICB8ICAgNTYgKysrKysrKysrKy0tLS0tLS0tLS0KKyBwby9rdS5wbyAgICAgICAgICAgICAgIHwgICA1NiArKysrKysrKysrLS0tLS0tLS0tLQorIHBvL2x0LnBvICAgICAgICAgICAgICAgfCAgIDU2ICsrKysrKysrKystLS0tLS0tLS0tCisgcG8vbXIucG8gICAgICAgICAgICAgICB8ICAgNTYgKysrKysrKysrKy0tLS0tLS0tLS0KKyBwby9uYi5wbyAgICAgICAgICAgICAgIHwgICA1NiArKysrKysrKysrLS0tLS0tLS0tLQorIHBvL25lLnBvICAgICAgICAgICAgICAgfCAgIDU2ICsrKysrKysrKystLS0tLS0tLS0tCisgcG8vbmwucG8gICAgICAgICAgICAgICB8ICAgNTYgKysrKysrKysrKy0tLS0tLS0tLS0KKyBwby9ubi5wbyAgICAgICAgICAgICAgIHwgICA1NiArKysrKysrKysrLS0tLS0tLS0tLQorIHBvL3BhLnBvICAgICAgICAgICAgICAgfCAgIDU2ICsrKysrKysrKystLS0tLS0tLS0tCisgcG8vcGwucG8gICAgICAgICAgICAgICB8ICAgNTYgKysrKysrKysrKy0tLS0tLS0tLS0KKyBwby9wdC5wbyAgICAgICAgICAgICAgIHwgICA1NiArKysrKysrKysrLS0tLS0tLS0tLQorIHBvL3B0X0JSLnBvICAgICAgICAgICAgfCAgIDU2ICsrKysrKysrKystLS0tLS0tLS0tCisgcG8vcm8ucG8gICAgICAgICAgICAgICB8ICAgNTYgKysrKysrKysrKy0tLS0tLS0tLS0KKyBwby9ydS5wbyAgICAgICAgICAgICAgIHwgICA1NiArKysrKysrKysrLS0tLS0tLS0tLQorIHBvL3NrLnBvICAgICAgICAgICAgICAgfCAgIDU2ICsrKysrKysrKystLS0tLS0tLS0tCisgcG8vc3YucG8gICAgICAgICAgICAgICB8ICAgNTYgKysrKysrKysrKy0tLS0tLS0tLS0KKyBwby90aC5wbyAgICAgICAgICAgICAgIHwgICA1NiArKysrKysrKysrLS0tLS0tLS0tLQorIHBvL3RsLnBvICAgICAgICAgICAgICAgfCAgIDU2ICsrKysrKysrKystLS0tLS0tLS0tCisgcG8vdmkucG8gICAgICAgICAgICAgICB8ICAgNTYgKysrKysrKysrKy0tLS0tLS0tLS0KKyBwby96aF9DTi5wbyAgICAgICAgICAgIHwgICA1NiArKysrKysrKysrLS0tLS0tLS0tLQorIHBvL3poX1RXLnBvICAgICAgICAgICAgfCAgIDU2ICsrKysrKysrKystLS0tLS0tLS0tCisgc2NyaXB0cy9wby9kZS5wbyAgICAgICB8ICAgMTYgKysrKy0tCisgNzMgZmlsZXMgY2hhbmdlZCwgMzIxMSBpbnNlcnRpb25zKCspLCAzMzU5IGRlbGV0aW9ucygtKQorCitjb21taXQgYWVhYzY2Mjk1OWNiMWFhMTI5YTJhMTg4ZGFmZGQ4OTZhNmUwNTg4OAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBNYXkgMjUgMDg6MDM6MjkgMjAwOSArMDIwMAorCisgICAgRml4IG1lbW9yeSBsZWFrcyBkdWUgdG8gbm90IGRlc3Ryb3lpbmcgcGtnIGl0ZXJhdG9ycworCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDEgKworIHNyYy9kZXBjb24uYyAgICAgfCAgICAxICsKKyBzcmMvdHJpZ3Byb2MuYyAgIHwgICAgMSArCisgMyBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBmYTliNmU2MTMzY2RiOWUxNTE5ZWZlZjM5MjljMmQ2ZWIyYjczYTRjCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIE1heSAyNSAwNzo1NToxNCAyMDA5ICswMjAwCisKKyAgICBzLXMtZDogUmVmYWN0b3IgcHJvY2VzcyBzY2hlZHVsZSBwcmlvcml0eSByYW5nZSBjaGVja3MKKyAgICAKKyAgICBNb3ZlIGludG8gYSBuZXcgZnVuY3Rpb24sIHNvIHdlIGF2b2lkIHdhcm5pbmdzIGR1ZSB0byB1bnVzZWQgdmFyaWFibGVzLgorCisgdXRpbHMvc3RhcnQtc3RvcC1kYWVtb24uYyB8ICAgMjggKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMTggaW5zZXJ0aW9ucygrKSwgMTAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA1Y2NkYzg4ZjQwZWM4YmVhNzkyODc0Yjk3NTk2Y2RhODM2OGFmZjRkCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIE1heSAyNCAyMjowODo1OCAyMDA5ICswMjAwCisKKyAgICBkc2VsZWN0OiBQcm9wZXJseSBwYXJzZSBmZGlzayBvdXRwdXQgaW4gZGlzayBzZXR1cCBtZXRob2QKKyAgICAKKyAgICB1dGlsLWxpbnV4J3MgZmRpc2sgaGFzIG5vdCBlbWl0dGVkIHRoZSBCZWdpbiBjb2x1bW4gc2luY2UgMTk5OC0wNi0xMAorICAgIHZlcnNpb24gMi44LiBDaGFuZ2UgdGhlIHBhcnNpbmcgY29kZSBhY2NvcmRpbmdseSB0byBtYWtlIGl0IGFjdHVhbGx5CisgICAgd29yay4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgIHwgICAgMiArKworIGRzZWxlY3QvbWV0aG9kcy9kaXNrL3NldHVwIHwgICAgNiArKystLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDUgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworY29tbWl0IDMyOGI5OGZmZjE5ZGJhZmNiOTAwMDhhMDcxMTY3MmRlZDljNzE0MDEKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gTWF5IDI0IDIxOjE4OjMwIDIwMDkgKzAyMDAKKworICAgIGRzZWxlY3Q6IEZpeCBiYXNoaXNtICjigJxlY2hvIC1l4oCdKSBpbiBkaXNrIHNldHVwIG1ldGhvZAorICAgIAorICAgIENsb3NlczogIzUzMDA3MQorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgfCAgICAxICsKKyBkc2VsZWN0L21ldGhvZHMvZGlzay9zZXR1cCB8ICAgIDIgKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDg4NTcyNmU3NTg1YjA4MWVjYTE3MmRmOWNkYTJhNTcxMzQ1NjQ5MjIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gTWF5IDI0IDIxOjEzOjI2IDIwMDkgKzAyMDAKKworICAgIGRzZWxlY3Q6IFJlZmFjdG9yIHBhcnRpdGlvbiBwcmludGluZyBpbiBkaXNrIHNldHVwIG1ldGhvZAorICAgIAorICAgIE1vdmUgY29kZSBpbnRvIGl0cyBvd24gZnVuY3Rpb24uCisKKyBkc2VsZWN0L21ldGhvZHMvZGlzay9zZXR1cCB8ICAgMTMgKysrKysrKysrKy0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMTAgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworY29tbWl0IDkzYmIzMzAxMzZjOTVmZDBmNWU0ZWQxZDI5OTg3ZGM2NGU0YmEyMTgKK0F1dGhvcjogQ2hyaXN0aWFuIFBlcnJpZXIgPGJ1YnVsbGVAZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIE1heSAyNCAxNDo0NDoxMCAyMDA5ICswMjAwCisKKyAgICBGaXggdHlwbyBhbmQgdW5mdXp6eSB0cmFuc2xhdGlvbnMKKworIG1hbi9kcGtnLXZlbmRvci4xICAgfCAgICAyICstCisgbWFuL3BvL2RlLnBvICAgICAgICB8ICAgIDIgKy0KKyBtYW4vcG8vZHBrZy1tYW4ucG90IHwgICAgMiArLQorIG1hbi9wby9lcy5wbyAgICAgICAgfCAgICAyICstCisgbWFuL3BvL2ZyLnBvICAgICAgICB8ICAgIDIgKy0KKyBtYW4vcG8vaHUucG8gICAgICAgIHwgICAgMiArLQorIG1hbi9wby9qYS5wbyAgICAgICAgfCAgICAyICstCisgbWFuL3BvL3BsLnBvICAgICAgICB8ICAgIDIgKy0KKyBtYW4vcG8vcHRfQlIucG8gICAgIHwgICAgMiArLQorIG1hbi9wby9ydS5wbyAgICAgICAgfCAgICAyICstCisgbWFuL3BvL3N2LnBvICAgICAgICB8ICAgIDIgKy0KKyAxMSBmaWxlcyBjaGFuZ2VkLCAxMSBpbnNlcnRpb25zKCspLCAxMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDRiODk3OGIzYTQxOGJmNDA5ZGZmYzIxMmRhNDFmZjg0YjBhOGQ4YmMKK0F1dGhvcjogQ2hyaXN0aWFuIFBlcnJpZXIgPGJ1YnVsbGVAZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIE1heSAyNCAwOTo0NTozMCAyMDA5ICswMjAwCisKKyAgICBSZW1vdmUgZXh0cmEgXG4uIFRoYW5rcyB0byBIZWxnZSBLcmV1dHptYW5uCisgICAgQXNzaWduIGNvcHlyaWdodCBmb3IgY2hhbmdlcyBzaW5jZSAyMDA1IHRvIHRoZSBGcmVuY2ggdGVhbQorICAgIERyb3AgdXBzdHJlYW0gY29weXJpZ2h0CisKKyBwby9mci5wbyB8ICAgMTkgKysrKy0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCAxNSBkZWxldGlvbnMoLSkKKworY29tbWl0IDc0NzY0OGM4OGRmZjRhNDY0NDkxN2Y1YWVlYzgwZGM4N2Q1MTY1OGYKK0F1dGhvcjogQ2hyaXN0aWFuIFBlcnJpZXIgPGJ1YnVsbGVAZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIE1heSAyNCAwOTo0MjoyMSAyMDA5ICswMjAwCisKKyAgICBVcGRhdGVkIEZyZW5jaCB0cmFuc2xhdGlvbgorICAgIFJlbW92ZWQgZHBrZyBjb3B5cmlnaHQgYXQgdGhlIGhlYWQgb2YgdGhlIGZpbGUuIE9ubHkgY29weXJpZ2h0cworICAgIGZvciB0cmFuc2xhdGlvbnMgc2hvdWxkIGJlIGtlcHQgdGhlcmUKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAzICsrKworIGRzZWxlY3QvcG8vZnIucG8gfCAgIDI0ICsrKysrKy0tLS0tLS0tLS0tLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgOSBpbnNlcnRpb25zKCspLCAxOCBkZWxldGlvbnMoLSkKKworY29tbWl0IGFkNDBhNDMzMmFhMjBhYjYzM2FkNWQyYTk0YzliMzJiOTdkMDY0Y2MKK0F1dGhvcjogQ2hyaXN0aWFuIFBlcnJpZXIgPGJ1YnVsbGVAZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIE1heSAyNCAwOTozOToxOSAyMDA5ICswMjAwCisKKyAgICBDb252ZXJ0IHRvIFVURi04CisKKyBkc2VsZWN0L3BvL2ZyLnBvIHwgIDc1MiArKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDM3NiBpbnNlcnRpb25zKCspLCAzNzYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA2YzllZTEyZGNmOGZjZTM1MjZmZTJjYmRhNjFiMzkwZTk1OTdkNWJkCitBdXRob3I6IEhlbGdlIEtyZXV0em1hbm4gPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorRGF0ZTogICBTdW4gTWF5IDI0IDA5OjMzOjMxIDIwMDkgKzAyMDAKKworICAgIFVwZGF0ZSBnZXJtYW4gc2NyaXB0cyB0cmFuc2xhdGlvbgorICAgIAorICAgIFVwZGF0ZSB0byA0Nzl0LgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDMgKy0KKyBzY3JpcHRzL3BvL2RlLnBvIHwgICA2MiArKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgMzIgaW5zZXJ0aW9ucygrKSwgMzMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA1MmQ3YjczNGY0NmU2MThlZmM5NjZiMjgzMTJiNTVjZGNmMzYwNGQ5CitBdXRob3I6IENocmlzdGlhbiBQZXJyaWVyIDxidWJ1bGxlQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBNYXkgMjQgMDg6Mzc6MzAgMjAwOSArMDIwMAorCisgICAgRnJlbmNoIHRyYW5zbGF0aW9uIHVwZGF0ZSBmb3Igc2NyaXB0cworCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgMTMgKysrKysrKystLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgOCBpbnNlcnRpb25zKCspLCA1IGRlbGV0aW9ucygtKQorCitjb21taXQgYTA5ZmZlMDc2MTQzMTE5NWQ4ZWE5OTM2M2FiYTE2NTdmZWRiZjFkNgorQXV0aG9yOiBQaWFycmVzIEJlb2JpZGUgPHBpQGJlb2JpZGUubmV0PgorRGF0ZTogICBGcmkgTWF5IDIyIDEyOjE3OjE5IDIwMDkgKzAyMDAKKworICAgIFVwZGF0ZWQgQmFzcXVlIHRyYW5zbGF0aW9uCisKKyBwby9ldS5wbyB8ICAgNjAgKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyOSBpbnNlcnRpb25zKCspLCAzMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDJlZTAzN2Q3ODZjMTc4NDUxMTM1ZjRjNjhmZGFlZjg4ZGE1NDE5YTAKK0F1dGhvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitEYXRlOiAgIFN1biBNYXkgMjQgMDg6MDU6MjIgMjAwOSArMDIwMAorCisgICAgVXBkYXRlIGdlcm1hbiB0cmFuc2xhdGlvbiBvZiBtYW51YWwgcGFnZXMKKyAgICAKKyAgICBVcGRhdGUgdG8gMTY2MXQuCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMyArKworIG1hbi9wby9kZS5wbyAgICAgfCAgIDgyICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCA1MiBpbnNlcnRpb25zKCspLCAzMyBkZWxldGlvbnMoLSkKKworY29tbWl0IDc5YmY5NjU3NmM0ZjQ1NzA2ODExMjhiNDQ5YzZhM2I4MTZiZDM3ODYKK0F1dGhvcjogU3ZlbiBKb2FjaGltIDxzdmVuam9hY0BnbXguZGU+CitEYXRlOiAgIEZyaSBNYXkgMjIgMDk6MzI6MTQgMjAwOSArMDIwMAorCisgICAgR2VybWFuIGRwa2cgdHJhbnNsYXRpb24gdXBkYXRlCisgICAgCisgICAgVXBkYXRlIHRvIDEwMDV0N2YuCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgNSArKystLQorIHBvL2RlLnBvICAgICAgICAgfCAgIDE2ICsrKysrKystLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDEwIGluc2VydGlvbnMoKyksIDExIGRlbGV0aW9ucygtKQorCitjb21taXQgMDllZjQ2Yzc5NDFkZWY2OTA1ZDI2NjRmOTE2ZDcyYTRiMTRjOTYwZAorQXV0aG9yOiBDaHJpc3RpYW4gUGVycmllciA8YnVidWxsZUBkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgTWF5IDIyIDA4OjU2OjI0IDIwMDkgKzAyMDAKKworICAgIEZyZW5jaCB0cmFuc2xhdGlvbiB1cGRhdGUKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAxICsKKyBwby9mci5wbyAgICAgICAgIHwgICAgOSArKysrLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDUgaW5zZXJ0aW9ucygrKSwgNSBkZWxldGlvbnMoLSkKKworY29tbWl0IGQzYmQwYjZkOTY0MzZhZGM3NmEwOWEwNmQyYjlhOTE1ZTQwMWEzYzMKK0F1dGhvcjogTWFyY29zIDxtYXJjb3MuYWx2YXJlei5jb3N0YWxlc0BnbWFpbC5jb20+CitEYXRlOiAgIEZyaSBNYXkgMjIgMDg6NTM6NTUgMjAwOSArMDIwMAorCisgICAgQXN0dXJpYW4gdHJhbnNsYXRpb24gdXBkYXRlCisgICAgQ2xvc2VzOiAjNTI5ODg5CisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMSArCisgcG8vYXN0LnBvICAgICAgICB8ICAgIDggKysrKy0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDUgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKKworY29tbWl0IGM0MTBkY2U3YzI0YzE4M2JlOWUwMWRmMTRkYzBmODAyOWJkMDA4NDgKK0F1dGhvcjogUGlhcnJlcyBCZW9iaWRlIDxwaStkZWJpYW5AYmVvYmlkZS5uZXQ+CitEYXRlOiAgIEZyaSBNYXkgMjIgMDg6NTI6MTUgMjAwOSArMDIwMAorCisgICAgQmFzcXVlIHRyYW5zbGF0aW9uIHVwZGF0ZS4gQ2xvc2VzOiAjNTI5ODU3CisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMyArCisgcG8vZXUucG8gICAgICAgICB8ICA4ODEgKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAyNzAgaW5zZXJ0aW9ucygrKSwgNjE0IGRlbGV0aW9ucygtKQorCitjb21taXQgZTJlNDEyOTc3YWVmYWZhN2RmNmY4NGM4Y2I2ZmU2NDVkYWU4NTIxNQorQXV0aG9yOiBTdmVuIEpvYWNoaW0gPHN2ZW5qb2FjQGdteC5kZT4KK0RhdGU6ICAgRnJpIE1heSAyMiAwNTowNDowMCAyMDA5ICswMjAwCisKKyAgICBkc2VsZWN0OiBSZW1vdmUgb2Jzb2xldGUgcHJpb3JpdGllcyBzdXBwb3J0CisgICAgCisgICAgZHNlbGVjdCBzaG93cyB3cm9uZyBwYWNrYWdlIHByaW9yaXRpZXMgaW4gdGhlIHBhY2thZ2Ugc2VsZWN0aW9uIHNjcmVlbi4KKyAgICBUaGlzIGlzIGJlY2F1c2UgdGhlIHN0cmluZyByZXByZXNlbnRhdGlvbnMgYXJyYXlzIGhhdmVuJ3QgYmVlbiB1cGRhdGVkCisgICAgdG8gcmVmbGVjdCB0aGUgcmVtb3ZhbCBvZiB0aGUg4oCcUmVjb21tZW5kZWTigJ0gYW5kIOKAnENvbnRyaWLigJ0gcHJpb3JpdGllcworICAgIGluIGNvbW1pdCBjOGQzOTM4YmUxMjdlMjU2ZmQ1OTNmMjM0ODU4ZmI5ZDQ3NGIyMzUzLgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgIHwgICAgMiArKworIGRzZWxlY3QvcGtnZGlzcGxheS5jYyB8ICAgIDQgLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQorCitjb21taXQgMjI1MTgyN2MwMDBiYTkwMWQwMDI3MTk0ZjZkOTI4MTE4NGVkZTcwMQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBNYXkgMjIgMDQ6NDQ6MjIgMjAwOSArMDIwMAorCisgICAgcy1zLWQ6IFVzZSB0aGUgc2FtZSBleGFjdCBuYW1lIGZvciBhbGwgSHVyZCBPUyBtYWNyb3MKKyAgICAKKyAgICBVc2UgdGhlIHByb3Blcmx5IGNhcGl0YWxpemVkIHZlcnNpb24gb2YgdGhlIG1hY3JvLiBUaGlzIGZpeGVzIGEgRlRCRlMKKyAgICBvbiBHTlUvSHVyZCBkdWUgdG8gYSBtaXNzbWF0Y2hlZCBkZWZpbmUgdXNhZ2UuCisgICAgCisgICAgUmVncmVzc2lvbiBpbnRyb2R1Y2VkIGluIGZjODYwYTU1YjI2YWVlM2Q3NzRlZDAxMGM0MzgyMjQ5MTg1MmJiYzIuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgIHwgICAgMyArKy0KKyB1dGlscy9zdGFydC1zdG9wLWRhZW1vbi5jIHwgICAxOCArKysrKysrKystLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDExIGluc2VydGlvbnMoKyksIDEwIGRlbGV0aW9ucygtKQorCitjb21taXQgMGVhMGNiNTQwNWI4MjhhZmIxZmZkZDM5ZTBlZjk2ZTU2MmFiYTg2ZgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBNYXkgMjEgMDc6MDI6NDIgMjAwOSArMDIwMAorCisgICAgQnVtcCB2ZXJzaW9uIHRvIDEuMTUuMn4KKworIGNvbmZpZ3VyZS5hYyAgICAgfCAgICAyICstCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDYgKysrKysrCisgMiBmaWxlcyBjaGFuZ2VkLCA3IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA1ODgzODFjMjRlYzU0Zjk3YWQ5ODA2MTg3NzhkZjE5YWM4NmZmYzEwCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IE1heSAyMSAwNjo1Mzo0NCAyMDA5ICswMjAwCisKKyAgICBSZWxlYXNlIDEuMTUuMQorCisgY29uZmlndXJlLmFjICAgICB8ICAgIDIgKy0KKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgNCArKy0tCisgMiBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBiZDE4MTJhMGFmMzM4ZTllYTU3NGY5ZmMxZWZlN2E3ZDk5YWE0ZmE5CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IE1heSAyMSAwNjozNToxNiAyMDA5ICswMjAwCisKKyAgICBSZWdlbmVyYXRlIC5wb3QgZmlsZXMgYW5kIG1lcmdlIC5wbyBmaWxlcyB3aXRoIHRoZW0KKworIGRzZWxlY3QvcG8vYnMucG8gICAgICAgIHwgICA5NiArLQorIGRzZWxlY3QvcG8vY2EucG8gICAgICAgIHwgICA5NiArLQorIGRzZWxlY3QvcG8vY3MucG8gICAgICAgIHwgICA5NiArLQorIGRzZWxlY3QvcG8vZGEucG8gICAgICAgIHwgICA5NiArLQorIGRzZWxlY3QvcG8vZGUucG8gICAgICAgIHwgICA5NiArLQorIGRzZWxlY3QvcG8vZHNlbGVjdC5wb3QgIHwgICA5NiArLQorIGRzZWxlY3QvcG8vZWwucG8gICAgICAgIHwgICA5NiArLQorIGRzZWxlY3QvcG8vZXMucG8gICAgICAgIHwgICA5NiArLQorIGRzZWxlY3QvcG8vZXQucG8gICAgICAgIHwgICA5NiArLQorIGRzZWxlY3QvcG8vZXUucG8gICAgICAgIHwgICA5NiArLQorIGRzZWxlY3QvcG8vZnIucG8gICAgICAgIHwgICA5NiArLQorIGRzZWxlY3QvcG8vZ2wucG8gICAgICAgIHwgICA5NiArLQorIGRzZWxlY3QvcG8vaHUucG8gICAgICAgIHwgICA5NiArLQorIGRzZWxlY3QvcG8vaWQucG8gICAgICAgIHwgICA5NiArLQorIGRzZWxlY3QvcG8vaXQucG8gICAgICAgIHwgICA5NiArLQorIGRzZWxlY3QvcG8vamEucG8gICAgICAgIHwgICA5NiArLQorIGRzZWxlY3QvcG8va28ucG8gICAgICAgIHwgICA5NiArLQorIGRzZWxlY3QvcG8vbmIucG8gICAgICAgIHwgICA5NiArLQorIGRzZWxlY3QvcG8vbmwucG8gICAgICAgIHwgICA5NiArLQorIGRzZWxlY3QvcG8vbm4ucG8gICAgICAgIHwgICA5NiArLQorIGRzZWxlY3QvcG8vcGwucG8gICAgICAgIHwgICA5NiArLQorIGRzZWxlY3QvcG8vcHQucG8gICAgICAgIHwgICA5NiArLQorIGRzZWxlY3QvcG8vcHRfQlIucG8gICAgIHwgICA5NiArLQorIGRzZWxlY3QvcG8vcm8ucG8gICAgICAgIHwgICA5NiArLQorIGRzZWxlY3QvcG8vcnUucG8gICAgICAgIHwgICA5NiArLQorIGRzZWxlY3QvcG8vc2sucG8gICAgICAgIHwgICA5NiArLQorIGRzZWxlY3QvcG8vc3YucG8gICAgICAgIHwgICA5NiArLQorIGRzZWxlY3QvcG8vdGwucG8gICAgICAgIHwgICA5NiArLQorIGRzZWxlY3QvcG8vdmkucG8gICAgICAgIHwgICA5NiArLQorIGRzZWxlY3QvcG8vemhfQ04ucG8gICAgIHwgICA5NiArLQorIGRzZWxlY3QvcG8vemhfVFcucG8gICAgIHwgICA5NiArLQorIG1hbi9wby9kZS5wbyAgICAgICAgICAgIHwgNTY4MSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLQorIG1hbi9wby9kcGtnLW1hbi5wb3QgICAgIHwgNDAxNSArKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tCisgbWFuL3BvL2VzLnBvICAgICAgICAgICAgfCAyNzAyICsrKysrKysrKysrKysrKysrKy0tLS0KKyBtYW4vcG8vZnIucG8gICAgICAgICAgICB8IDI3MzggKysrKysrKysrKysrKysrKysrKy0tLS0tCisgbWFuL3BvL2h1LnBvICAgICAgICAgICAgfCAyNTc1ICsrKysrKysrKysrKysrKysrKy0tLS0KKyBtYW4vcG8vamEucG8gICAgICAgICAgICB8IDI2MjMgKysrKysrKysrKysrKysrKysrLS0tLQorIG1hbi9wby9wbC5wbyAgICAgICAgICAgIHwgMjY4MiArKysrKysrKysrKysrKysrKystLS0tCisgbWFuL3BvL3B0X0JSLnBvICAgICAgICAgfCAyNTg0ICsrKysrKysrKysrKysrKysrKy0tLS0KKyBtYW4vcG8vcnUucG8gICAgICAgICAgICB8IDI2MjcgKysrKysrKysrKysrKysrKysrLS0tLQorIG1hbi9wby9zdi5wbyAgICAgICAgICAgIHwgNTY5OCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLQorIHBvL2FzdC5wbyAgICAgICAgICAgICAgIHwgIDE4NCArLQorIHBvL2JzLnBvICAgICAgICAgICAgICAgIHwgIDE4MSArLQorIHBvL2NhLnBvICAgICAgICAgICAgICAgIHwgIDE4NCArLQorIHBvL2NzLnBvICAgICAgICAgICAgICAgIHwgIDE4NCArLQorIHBvL2RhLnBvICAgICAgICAgICAgICAgIHwgIDE4NCArLQorIHBvL2RlLnBvICAgICAgICAgICAgICAgIHwgIDE5MyArLQorIHBvL2Rwa2cucG90ICAgICAgICAgICAgIHwgIDE4MSArLQorIHBvL2R6LnBvICAgICAgICAgICAgICAgIHwgIDE4NCArLQorIHBvL2VsLnBvICAgICAgICAgICAgICAgIHwgIDE4NCArLQorIHBvL2VvLnBvICAgICAgICAgICAgICAgIHwgIDE4NCArLQorIHBvL2VzLnBvICAgICAgICAgICAgICAgIHwgIDE4NCArLQorIHBvL2V0LnBvICAgICAgICAgICAgICAgIHwgIDE4NCArLQorIHBvL2V1LnBvICAgICAgICAgICAgICAgIHwgIDE4NCArLQorIHBvL2ZyLnBvICAgICAgICAgICAgICAgIHwgIDE4NCArLQorIHBvL2dsLnBvICAgICAgICAgICAgICAgIHwgIDE4NCArLQorIHBvL2h1LnBvICAgICAgICAgICAgICAgIHwgIDE4NCArLQorIHBvL2lkLnBvICAgICAgICAgICAgICAgIHwgIDE4NCArLQorIHBvL2l0LnBvICAgICAgICAgICAgICAgIHwgIDE4NCArLQorIHBvL2phLnBvICAgICAgICAgICAgICAgIHwgIDE4NCArLQorIHBvL2ttLnBvICAgICAgICAgICAgICAgIHwgIDE4NCArLQorIHBvL2tvLnBvICAgICAgICAgICAgICAgIHwgIDE4NCArLQorIHBvL2t1LnBvICAgICAgICAgICAgICAgIHwgIDE4MSArLQorIHBvL2x0LnBvICAgICAgICAgICAgICAgIHwgIDE4NCArLQorIHBvL21yLnBvICAgICAgICAgICAgICAgIHwgIDE4NCArLQorIHBvL25iLnBvICAgICAgICAgICAgICAgIHwgIDE4NCArLQorIHBvL25lLnBvICAgICAgICAgICAgICAgIHwgIDE4NCArLQorIHBvL25sLnBvICAgICAgICAgICAgICAgIHwgIDE4NCArLQorIHBvL25uLnBvICAgICAgICAgICAgICAgIHwgIDE4NCArLQorIHBvL3BhLnBvICAgICAgICAgICAgICAgIHwgIDE4MSArLQorIHBvL3BsLnBvICAgICAgICAgICAgICAgIHwgIDE4NCArLQorIHBvL3B0LnBvICAgICAgICAgICAgICAgIHwgIDE4NCArLQorIHBvL3B0X0JSLnBvICAgICAgICAgICAgIHwgIDE4NCArLQorIHBvL3JvLnBvICAgICAgICAgICAgICAgIHwgIDE4NCArLQorIHBvL3J1LnBvICAgICAgICAgICAgICAgIHwgIDE4NCArLQorIHBvL3NrLnBvICAgICAgICAgICAgICAgIHwgIDE4NCArLQorIHBvL3N2LnBvICAgICAgICAgICAgICAgIHwgIDE4NCArLQorIHBvL3RoLnBvICAgICAgICAgICAgICAgIHwgIDE4NCArLQorIHBvL3RsLnBvICAgICAgICAgICAgICAgIHwgIDE4NCArLQorIHBvL3ZpLnBvICAgICAgICAgICAgICAgIHwgIDE4NCArLQorIHBvL3poX0NOLnBvICAgICAgICAgICAgIHwgIDE4NCArLQorIHBvL3poX1RXLnBvICAgICAgICAgICAgIHwgIDE4NCArLQorIHNjcmlwdHMvcG8vY2EucG8gICAgICAgIHwgIDc1MCArKysrLS0tCisgc2NyaXB0cy9wby9kZS5wbyAgICAgICAgfCAgNDk5ICsrKy0tCisgc2NyaXB0cy9wby9kcGtnLWRldi5wb3QgfCAgNzQwICsrKystLS0KKyBzY3JpcHRzL3BvL2ZyLnBvICAgICAgICB8ICA3NzggKysrKy0tLQorIHNjcmlwdHMvcG8vcGwucG8gICAgICAgIHwgIDc3MCArKysrLS0tCisgc2NyaXB0cy9wby9ydS5wbyAgICAgICAgfCAgNzc0ICsrKystLS0KKyBzY3JpcHRzL3BvL3N2LnBvICAgICAgICB8ICA1MDMgKysrLS0KKyA4OSBmaWxlcyBjaGFuZ2VkLCAzMjY4MyBpbnNlcnRpb25zKCspLCAxNjU3MyBkZWxldGlvbnMoLSkKKworY29tbWl0IDQzMjkyNTMzNDc0NmM3MjJlZjk1N2Q2OTJjOTAxZWViODRjN2Q4ZjEKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgTWF5IDIxIDA2OjE2OjMzIDIwMDkgKzAyMDAKKworICAgIGRwa2ctZGViOiBEbyBub3Qgd2FybiB3aGVuIHBhcnNpbmcgdW5rbm93biBmaWVsZHMgd2l0aCDigJxQcml2YXRlLeKAnSBwcmVmaXgKKyAgICAKKyAgICBGaWVsZHMgcHJlZml4ZWQgd2l0aCDigJxQcml2YXRlLeKAnSBhcmUgaW50ZW5kZWQgdG8gYmUgdXNlZCBwcml2YXRlbHkgYnkKKyAgICBpbmRpdmlkdWFscywgb3JnYW5pemF0aW9ucyBvciBjb21wYW5pZXMsIGFuZCBhcmUgZXhwZWN0ZWQgdG8gbmV2ZXIgYmUKKyAgICBzdGFuZGFyZGl6ZWQuIFRoaXMgZ3VhcmFudGVlcyB0aGVtIHRvIG5ldmVyIGNvbGxpZGUgd2l0aCBhbnkgb2ZmaWNpYWwKKyAgICBmaWVsZCBpbiB0aGUgZnV0dXJlLiBCZWNhdXNlIHRoZXJlJ3Mgc3RpbGwgdGhlIGRhbmdlciB0aGF0IGRpZmZlcmVudAorICAgIG9yZ2FuaXphdGlvbnMgbWlnaHQgZW5kIHVwIHVzaW5nIHRoZSBzYW1lIGZpZWxkIG5hbWUsIHRob3NlIHNob3VsZAorICAgIG5ldmVyIGJlIHZpc2libGUgaW4gYW55IHB1YmxpYyByZXBvc2l0b3J5LgorICAgIAorICAgIENsb3NlczogIzM1MzA0MAorICAgIAorICAgIEJhc2VkLW9uLXBhdGNoLWJ5OiBOaWxzIFJlbm5lYmFydGggPG5pbHMucmVubmViYXJ0aEBmdW5rd2Vyay1lYy5jb20+CisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMiArKworIGRwa2ctZGViL2J1aWxkLmMgfCAgICA2ICsrKysrKworIDIgZmlsZXMgY2hhbmdlZCwgOCBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgYWRhZjVjNDNkYzIxMDgzYWE4OTM0MWRkNzhhNTczZGNjMWUxMmJlNQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBNYXkgMjEgMDY6MTI6MTIgMjAwOSArMDIwMAorCisgICAgUmV2ZXJ0ICJkcGtnLWRlYjogZG9uJ3Qgd2FybiBvbiB1bmtub3duIGZpZWxkcyBzdGFydGluZyB3aXRoICJYLSIiCisgICAgCisgICAgVGhpcyByZXZlcnRzIGNvbW1pdCA2NjgzNWMwN2IzZWI1YzZhNWExMzc0ZTYwZTkzZGZhZjEyNTM4MzIzLgorICAgIAorICAgIENvbmZsaWN0czoKKyAgICAKKyAgICAJZGViaWFuL2NoYW5nZWxvZworCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDMgLS0tCisgZHBrZy1kZWIvYnVpbGQuYyB8ICAgIDMgLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAwIGluc2VydGlvbnMoKyksIDYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBiZmRhMzI0OTBkMWZmNzMwMzIyNjM2Yzk3YTRjZTRkNjViYmQ2OWM1CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IE1heSAyMSAwNjowMjoxNyAyMDA5ICswMjAwCisKKyAgICBzLXMtZDogV2FybiBpZiAtLW5hbWUgYXJndW1lbnQgaXMgbG9uZ2VyIHRoYW4gc3VwcG9ydGVkIGJ5IGtlcm5lbAorICAgIAorICAgIE1vc3Qga2VybmVscyBoYXZlIGEgbGVuZ3RoIGxpbWl0IG9uIHRoZSBwcm9jZXNzIG5hbWUgc3RvcmVkIGluLWtlcm5lbC4KKyAgICBGb3Igbm93IHRoZSBjaGVja3MgZG9uZSBvbiBMaW51eCBjb21wYXRpYmxlIHByb2NmcyBtaWdodCBoaXQgdGhpcyBsaW1pdAorICAgIGFuZCBiZSB1bmFibGUgdG8gcHJvcGVybHkgdHJhY2sgdGhlIGNvcnJlY3QgcHJvY2Vzcy4gU28gd2FybiBpbiB0aGF0CisgICAgY2FzZSBhbmQgcmVjb21tZW5kIHN3aXRjaGluZyB0byB0aGUgbW9yZSByZWxpYWJsZSAtLWV4ZWMuCisgICAgCisgICAgQ2xvc2VzOiAjMzUzMDE1LCAjNTE5MTI4CisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgIHwgICAgMiArKworIHV0aWxzL3N0YXJ0LXN0b3AtZGFlbW9uLmMgfCAgIDEyICsrKysrKysrKysrKworIDIgZmlsZXMgY2hhbmdlZCwgMTQgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDNiYmRmYTc4N2Q5ODA4NGE2ODJhNDA0OTIxZThiZWQ2YjViZTg0NDIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgTWF5IDIxIDA2OjAwOjQxIDIwMDkgKzAyMDAKKworICAgIHMtcy1kOiBBZGQgbmV3IHdhcm5pbmcgZnVuY3Rpb24KKyAgICAKKyAgICBTd2l0Y2ggYSBwcmV2aW91cyBhZC1ob2Mgd2FybmluZyBtZXNzYWdlIHRvIHVzZSB0aGUgbmV3IHdhcm5pbmcKKyAgICBmdW5jdGlvbiwgd2hpY2ggYWRkaXRpb25hbGx5IHByb3Blcmx5IHByaW50cyB0byBzdGRlcnIuCisKKyB1dGlscy9zdGFydC1zdG9wLWRhZW1vbi5jIHwgICAxNSArKysrKysrKysrKysrLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDEzIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA0NjE4NGY4NWNkZGRiYmM4NzliNGFlYmUxMDViNzEyNWUxNjlhMjNkCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVGh1IE1heSAyMSAwNToyNjo1MSAyMDA5ICswMjAwCisKKyAgICBGaXggdHlwbyAob25lIOKAmHRoZeKAmSB0b28gbWFueSkKKworIFJFQURNRS50cmFuc2xhdG9ycyB8ICAgIDIgKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGJhMjcwNjc1NDU3MGVmZWNiOWNmYmEwNWViY2YyNzY1ZDIyMmM4YTIKK0F1dGhvcjogUmFwaGFlbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBNYXkgMTkgMTY6NDE6NDcgMjAwOSArMDIwMAorCisgICAgZHBrZy1zY2FucGFja2FnZXM6IGJlIGxlc3MgYW5ub3lpbmcgd2l0aCB3YXJuaW5nIGFib3V0IG92ZXJyaWRlcworICAgIAorICAgIElmIHRoZSB1c2VyIGRvZXNuJ3Qgc3BlY2lmeSBhbiBvdmVycmlkZSBmaWxlLCB0aGVuIGhlIGRvZXNuJ3QgY2FyZQorICAgIGFib3V0IHRoZSBmYWN0IHRoYXQgYWxsIHBhY2thZ2VzIGFyZSBtaXNzaW5nIGZyb20gdGhlIChub24tZXhpc3RpbmcpCisgICAgb3ZlcnJpZGUgZmlsZS4gRGlzYWJsZSB0aGUgd2FybmluZyBpbiB0aGlzIGNhc2UuCisgICAgCisgICAgSW4gb3RoZXIgY2FzZXMsIHdoZW4gdGhlIG92ZXJyaWRlIGZpbGUgaXMgZXhwbGljaXRlbHkgZ2l2ZW4sIGl0J3MgYQorICAgIG5vcm1hbCBmZWF0dXJlIHRoYXQgdGhlIHBhY2thZ2VzIG1pc3NpbmcgZnJvbSBpdCBhcmUgbGlzdGVkOyBleGFjdGx5IGxpa2UKKyAgICBvdGhlciB3ZWlyZG5lc3MgYXJlIHJlcG9ydGVkIChpbmNvcnJlY3QgbWFpbnRhaW5lciBpbmZvLCBzcHVyaW91cyBvdmVycmlkZQorICAgIGVudHJpZXMpLgorICAgIAorICAgIEJhc2VkLW9uLXBhdGNoLWJ5OiBQaW90ciBFbmdlbGtpbmcgPGlua2VybWFuNDJAZ21haWwuY29tPgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICB8ICAgIDMgKysrCisgc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbCB8ICAgIDIgKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGE0ZDg3ZDUyYTEwZjc3MjY5MzRiYzhkMWE2MDdkYzI4NzIxYTdhNGQKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgTWF5IDE5IDA3OjU2OjAxIDIwMDkgKzAyMDAKKworICAgIGRwa2ctc291cmNlOiBEbyBub3Qgc3RhdGUgaW4gLS1oZWxwIHRoZXJlIGlzIGEgZGVmYXVsdCBzdWJzdHZhciBmaWxlCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgIHwgICAgMiArKworIHNjcmlwdHMvZHBrZy1zb3VyY2UucGwgfCAgICAyICstCisgMiBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBiZjhhZTEyZDBlYzM3MTBmNDA5ZjdiMmE1MzNmNDk2YTE1MzQ3ZGE3CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIE1heSAxOSAwNzo0OToxNSAyMDA5ICswMjAwCisKKyAgICBNYWtlIGRlcHJlY2F0ZWQgZHBrZy1zY2FucGFja2FnZXMgLS11ZGViIG9wdGlvbiBwcm9kdWNlIGEgd2FybmluZworICAgIAorICAgIENhbGxlcnMgc2hvdWxkIHVzZSAtdHVkZWIgaW5zdGVhZC4KKworIFJFQURNRS5mZWF0dXJlLXJlbW92YWwtc2NoZWR1bGUgfCAgICAyICstCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICAgICB8ICAgIDEgKworIHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGwgICAgfCAgIDExICsrKysrKysrLS0tCisgMyBmaWxlcyBjaGFuZ2VkLCAxMCBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQorCitjb21taXQgNjU1ODcyMTg0YzU1ZmViYjIyOTllYjZhMTlhYTRkMDYxMmQyZGE2MAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBNYXkgMTkgMDc6Mzk6MDggMjAwOSArMDIwMAorCisgICAgUmVtb3ZlIGRlcHJlY2F0ZWQgc3RhdHVzIGZvciBzdWJzdHZhcnMgaW4gZHBrZy1zb3VyY2UgYW5kIGRwa2ctZ2VuY2hhbmdlcworICAgIAorICAgIEV2ZW4gaWYgdGhlcmUncyBubyB1c2UgYXQgYWxsIGZvciBzdWJzdHZhcnMgb3IgdGhleSBhcmUgKGN1cnJlbnRseSkKKyAgICB1bmRlc2lyYWJsZSBtYWtpbmcgdGhlIHNvdXJjZSBub3QgZWFzaWx5IHJlcHJvZHVjaWJsZSBmb3IgRGViaWFuIGFuZAorICAgIG1vc3QgZGVyaXZhdGl2ZXMgdXNpbmcgdGhlIHNhbWUgYnVpbGQgcHJvY2Vzc2Vzb3IsIGl0IG1pZ2h0IGJlCisgICAgaW50ZXJlc3RpbmcgZm9yIHVzZXMgbGlrZSB0ZW1wbGF0ZWQgc291cmNlIHBhY2thZ2UgZ2VuZXJhdGlvbiBhbmQKKyAgICBzaW1pbGFyLCBvciBvdGhlciBpbnRlcmVzdGluZyBpZGVhcyB3ZSBtaWdodCBub3QgaGF2ZSB0aG91Z2h0IGFib3V0LgorICAgIAorICAgIEFsc28gdGhlIHNhbWUgbG9naWMgd2UgYXBwbGllZCBmb3IgdGhlIHJlbW92YWwgb2YgdGhlIHN1YnN0dmFyIHN1cHBvcnQKKyAgICBjb3VsZCBiZSBhcHBsaWVkIHRvIG1vc3Qgb2YgdGhlIOKAnEJ1aWxkIG9wdGlvbnPigJ0gYXMgd2VsbCwgYXMgdGhvc2UgZG8gbm90CisgICAgbWFrZSBzZW5zZSBpbiB0aGUgbm9ybWFsIGJ1aWxkIGZvciBvZmZpY2lhbCBwYWNrYWdlcyAobGlrZSAtVSwgb3IgLUQpLgorICAgIAorICAgIENoYW5nZWQgdGhlIGNvZGUgdG8gc3RvcCBwcm9kdWNpbmcgd2FybmluZ3MsIGFuZCByZW1vdmUgZGVwcmVjYXRlZCBub3RlcworICAgIGZyb20gbWFuIHBhZ2UuCisKKyBSRUFETUUuZmVhdHVyZS1yZW1vdmFsLXNjaGVkdWxlIHwgICAgOSAtLS0tLS0tLS0KKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICAgIHwgICAgMiArKworIG1hbi9kcGtnLXNvdXJjZS4xICAgICAgICAgICAgICAgfCAgICA0ICsrLS0KKyBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbCAgICAgIHwgICAgMSAtCisgc2NyaXB0cy9kcGtnLXNvdXJjZS5wbCAgICAgICAgICB8ICAgIDIgLS0KKyA1IGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgMTQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAzNTgyODE3ZmQ5MWNlYWI3N2NkZDI1ZDE0ZWEyYWRkMWFiZTBiZTYxCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIE1heSAxOSAwNzoxMzozNSAyMDA5ICswMjAwCisKKyAgICBEbyBub3QgcmlnaHQganVzdGlmeSB0aGUgZGF0YWJhc2UgcmVhZGluZyBwcm9ncmVzcyBwZXJjZW50IGNvdW50ZXIKKyAgICAKKyAgICBUaGVyZSdzIGFuIG9kZCBzcGFjZSBtb3N0IGZvciBtb3N0IG9mIHRoZSBwcm9ncmVzcywgd2hpY2ggd2lsbCBuZXZlciBiZQorICAgIGFjdHVhbGx5IHNlZW4gZmlsbGVkIGJ5IHRoZSAxMDAlLiBTZWVtcyBzbGlnaHRseSBiZXR0ZXIgdG8ganVzdCBub3QKKyAgICBpbmRlbnQgaXQuCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMSArCisgbGliL3Byb2dyZXNzLmMgICB8ICAgIDIgKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDM5OGZkMjg0OGM0ZWEwNTZhZTRhMGE5YzQwNGRlNDM2YWEyZjcxZTQKK0F1dGhvcjogUmFwaGFlbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBNYXkgMTkgMDA6MTA6NDYgMjAwOSArMDIwMAorCisgICAgZHBrZy1wYXJzZWNoYW5nZWxvZzogZG9jdW1lbnRhdGlvbiB1cGRhdGUKKyAgICAKKyAgICBVcGRhdGUgZHBrZy1wYXJzZWNoYW5nZWxvZydzIGRvY3VtZW50YXRpb24gdG8gbWFrZSBpdCBjbGVhcmVyIHRoYXQgc3BhY2VzCisgICAgYXJlIG5vdCBhbGxvd2VkIGJldHdlZW4gc2luZ2xlIGNoYXJhY3RlcnMgb3B0aW9ucyBhbmQgdGhlaXIgdmFsdWVzLgorICAgIAorICAgIEZvciBleGFtcGxlLCAiLXYxLjE0IiB3b3JrcyBidXQgIi12IDEuMTQiIGRvZXNuJ3QuIEhvd2V2ZXIgIi0tc2luY2UgMS4xNCIKKyAgICB3b3Jrcy4gTG9uZyBvcHRpb25zIGNhbiBoYXZlIHZhbHVlcyBhcyB0aGUgbmV4dCBjb21tYW5kIGxpbmUgYXJndW1lbnQgYnV0CisgICAgbm90IHNob3J0IG9uZXMuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICAgfCAgICAzICsrKworIG1hbi9kcGtnLXBhcnNlY2hhbmdlbG9nLjEgICAgICB8ICAgMTIgKysrKysrLS0tLS0tCisgc2NyaXB0cy9kcGtnLXBhcnNlY2hhbmdlbG9nLnBsIHwgICAyMCArKysrKysrKysrKy0tLS0tLS0tLQorIDMgZmlsZXMgY2hhbmdlZCwgMjAgaW5zZXJ0aW9ucygrKSwgMTUgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA1OTYyZjlkMmIyZjVlNzBiMjIzZDA0NjM4MzAyYzBmMjIzOWFmMzZlCitBdXRob3I6IFJhcGhhZWwgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gTWF5IDE4IDIzOjIyOjA0IDIwMDkgKzAyMDAKKworICAgIGRwa2ctcGFyc2VjaGFuZ2Vsb2c6IGhhbmRsZSBiZXR0ZXIgbm9uLWV4aXN0aW5nIHZlcnNpb25zCisgICAgCisgICAgV2hlbiBhIG5vbi1leGlzdGluZyB2ZXJzaW9uIGlzIHBhc3NlZCBpbiBvbmUgb2YgdGhlIC0tc2luY2UsIC0tdW50aWwsCisgICAgLS10bywgLS1mcm9tIG9wdGlvbnMsIHRoZSBjb2RlIHdpbGwgbm93IHJlcGxhY2UgdGhlbSBieSBhIGNsb3NlbHkgcmVsYXRlZAorICAgIHZlcnNpb24gdGhhdCByZWFsbHkgZXhpc3RzLgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICB8ICAgIDMgKysKKyBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtIHwgICA3NyArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgNzMgaW5zZXJ0aW9ucygrKSwgNyBkZWxldGlvbnMoLSkKKworY29tbWl0IDEyYzc1ZWI1Njc2NzViNjQ5OGIzMzNhNDE2OTI5NDMxYzU1YTU1OGEKK0F1dGhvcjogUmFwaGFlbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBNYXkgMTggMjI6MTA6MDUgMjAwOSArMDIwMAorCisgICAgRml4IGNoYW5nZWxvZyBwYXJzaW5nIGNvZGUgdG8gZGlmZmVyZW50aWF0ZSB0aGUgZW1wdHkgc3RyaW5nIGZyb20gMAorICAgIAorICAgIEluIG1hbnkgcGxhY2VzLCB0aGUgY29kZSB0ZXN0ZWQgZm9yIGEgZmFsc2UgdmVyc2lvbiBpbnN0ZWFkIG9mCisgICAgYW4gZW1wdHkgdmVyc2lvbiBzdHJpbmcuIEZpeGluZyBhbGwgdGhvc2UgZW5hYmxlZCBkcGtnLWJ1aWxkcGFja2FnZSAtdjAgdG8KKyAgICB3b3JrIGFzIGV4cGVjdGVkLgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICB8ICAgIDIgKworIHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG0gICAgfCAgIDUwICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tCisgc2NyaXB0cy9jaGFuZ2Vsb2cvZGViaWFuLnBsICB8ICAgIDYgKysrLQorIHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGwgfCAgICA4ICsrKy0tLQorIHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsICAgfCAgICAyICstCisgNSBmaWxlcyBjaGFuZ2VkLCA0MCBpbnNlcnRpb25zKCspLCAyOCBkZWxldGlvbnMoLSkKKworY29tbWl0IDlkMTY5N2JjYzFiYTg3MzIyYTNlYTZiMmM3MTI5NjU2YzUyNTI0ZGUKK0F1dGhvcjogUmFwaGFlbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBNYXkgMTcgMTk6MTY6NDggMjAwOSArMDIwMAorCisgICAgZHBrZy1idWlsZHBhY2thZ2U6IGVycm9yIG91dCBwcm9wZXJseSB3aGVuIGRwa2ctY2hlY2tidWlsZGRlcHMgaXMga2lsbGVkCisgICAgCisgICAgVXNlIHRoZSBzdGFuZGFyZCBmdW5jdGlvbiBzdWJwcm9jZXJyKCkgdG8gZXJyb3Igb3V0IHdoZW4KKyAgICBkcGtnLWNoZWNrYnVpbGRkZXBzIGhhcyBub3QgZXhpdGVkIG5vcm1hbGx5LiBPdGhlcndpc2UgaW50ZXJwcmV0IHRoZSBleGl0CisgICAgY29kZSBhcyB1c3VhbC4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgICAgfCAgICAyICsrCisgc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbCB8ICAgIDYgKysrKystCisgMiBmaWxlcyBjaGFuZ2VkLCA3IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA2MWVhZTczYmU3NDFkNzI0YTI4MjMwMmZiNjg0MTdjMjQ3YWMyNzgwCitBdXRob3I6IFJhcGhhZWwgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gTWF5IDE3IDE2OjEwOjU1IDIwMDkgKzAyMDAKKworICAgIGRwa2ctYnVpbGRwYWNrYWdlOiBkb24ndCBzZXQgREVCX1ZFTkRPUiBhbnltb3JlCisgICAgCisgICAgUGFja2FnZXMgc2hvdWxkIHVzZSB0aGUgbmV3IGRwa2ctdmVuZG9yIGludGVyZmFjZSBhbmQgbm90IHJlbHkKKyAgICBvbiB0aGlzIGVudmlyb25tZW50IHZhcmlhYmxlLgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICB8ICAgIDIgKysKKyBtYW4vZHBrZy1idWlsZHBhY2thZ2UuMSAgICAgIHwgICAgNiAtLS0tLS0KKyBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsIHwgICAgOCAtLS0tLS0tLQorIDMgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAxNCBkZWxldGlvbnMoLSkKKworY29tbWl0IGZmYzI3ZWIyZmE1ZTAwZjY1Y2Q2YzE3MGZiOTA4MzczOGMxMjVmMTcKK0F1dGhvcjogUmFwaGFlbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIEZyaSBNYXkgMTUgMTg6MTc6MTggMjAwOSArMDIwMAorCisgICAgZHBrZy1nZW5jaGFuZ2VzOiB1c2Ugc2FtZSBlcnJvciBzdHJpbmcgdGhhbiBpbiBkcGtnLWJ1aWxkcGFja2FnZQorICAgIAorICAgIFJldXNpbmcgdGhlIHNhbWUgZXJyb3IgbWVzc2FnZSAiY2Fubm90IGNvbWJpbmUgJXMgYW5kICVzIiBiZXR3ZWVuCisgICAgZHBrZy1nZW5jaGFuZ2VzIGFuZCBkcGtnLWJ1aWxkcGFja2FnZSBzaW1wbGlmaWVzIHRoZSB3b3JrIG9mIHRyYW5zbGF0b3JzLgorCisgc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGwgfCAgICA4ICsrKystLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA3NzI3MGQ3YmY0ZGJmZmJhMDA2MDYzNWNhNThhNTFmN2U2NmI0NzVjCitBdXRob3I6IFJhcGhhZWwgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgTWF5IDE1IDE2OjQxOjMxIDIwMDkgKzAyMDAKKworICAgIGRwa2ctYnVpbGRwYWNrYWdlOiBmYWN0b3JpemUgYSBjb21tYW5kIGxpbmUgc2FuaXR5IGNoZWNrCisKKyBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsIHwgICAxNSArKystLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMTIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAxOGRhY2VhMGZhYjlkODFlODVhNWE3ZDRlOWVjMjU0MzVkZjdhYTViCitBdXRob3I6IFJhcGhhZWwgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgTWF5IDE1IDE2OjI4OjQ1IDIwMDkgKzAyMDAKKworICAgIGRwa2ctYnVpbGRwYWNrYWdlOiBhbGxvdyBvcHRpb25zIC1uYyBhbmQgLVMgdG9nZXRoZXIKKyAgICAKKyAgICBUaGlzIGNvbWJpbmF0aW9uIGlzIGdlbmVyYWxseSBub3QgcmVjb21tZW5kZWQgYXMgeW91IHdhbnQgdG8gZW5zdXJlCisgICAgdGhhdCBhIHNvdXJjZSBwYWNrYWdlIGNvbnRhaW5zIG9ubHkgc291cmNlIGFuZCBub3QgYW55IGludGVybWVkaWFyeSBmaWxlcworICAgIGxlZnQtb3ZlciBieSB0aGUgcHJldmlvdXMgYnVpbGQuIE5ldmVydGhlbGVzcyBpdCBjYW4gYmUgdXNlZnVsIGZyb20gdGltZQorICAgIHRvIHRpbWUgYW5kIGluc3RlYWQgb2YgYmx1bnRseSByZWZ1c2luZywgd2Ugbm93IHNpbXBseSB3YXJuIHRoZSB1c2VyCisgICAgYW5kIGxldCB0aGUgYnVpbGQgcHJvY2VlZC4KKyAgICAKKyAgICAtbmMgc3RpbGwgaW1wbGllcyAtYiBpZiBub3RoaW5nIGVsc2UgaGFzIGJlZW4gc3BlY2lmaWVkIGFzIGl0J3Mgcm91dGluZWx5CisgICAgdXNlZCB0byB0ZXN0IGlmIGEgZml4IGlzIHdvcmtpbmcgYnkgcmVzdGFydGluZyBhIHByZXZpb3VzbHkgaW50ZXJydXB0ZWQKKyAgICBidWlsZCB3aGVyZSBpdCBmYWlsZWQuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgIHwgICAgMiArKworIG1hbi9kcGtnLWJ1aWxkcGFja2FnZS4xICAgICAgfCAgICAzICsrLQorIHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGwgfCAgIDE0ICsrKysrKysrLS0tLS0tCisgMyBmaWxlcyBjaGFuZ2VkLCAxMiBpbnNlcnRpb25zKCspLCA3IGRlbGV0aW9ucygtKQorCitjb21taXQgZWRiNWI3NTk4MzY2NzM4ZWI0ZDNiNDhkZGZmMmRjZWY5Y2RhNGM1NAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBNYXkgMTQgMDc6NDk6NTkgMjAwOSArMDIwMAorCisgICAgUmVtb3ZlIG9ic29sZXRlIDgyMi1kYXRlIHByb2dyYW0KKyAgICAKKyAgICBJdCBoYXMgbG9uZyBiZWVuIHN1cGVyc2VlZGVkIGJ5IOKAmGRhdGUgLVLigJkuCisKKyBSRUFETUUuZmVhdHVyZS1yZW1vdmFsLXNjaGVkdWxlIHwgICAxMyArKysrKy0tLS0tLQorIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgICAgICAgfCAgICAxICsKKyBkZWJpYW4vZHBrZy1kZXYuaW5zdGFsbCAgICAgICAgIHwgICAgMiAtCisgZGViaWFuL3VzZXJ0YWdzICAgICAgICAgICAgICAgICB8ICAgIDIgLQorIG1hbi84MjItZGF0ZS4xICAgICAgICAgICAgICAgICAgfCAgIDQwIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIG1hbi9NYWtlZmlsZS5hbSAgICAgICAgICAgICAgICAgfCAgICAxIC0KKyBtYW4vcG8vcG80YS5jZmcgICAgICAgICAgICAgICAgIHwgICAgNSAtLS0tCisgc2NyaXB0cy8uZ2l0aWdub3JlICAgICAgICAgICAgICB8ICAgIDEgLQorIHNjcmlwdHMvODIyLWRhdGUucGwgICAgICAgICAgICAgfCAgIDE3IC0tLS0tLS0tLS0tLS0tLS0KKyBzY3JpcHRzL01ha2VmaWxlLmFtICAgICAgICAgICAgIHwgICAgMiAtCisgc2NyaXB0cy9wby9QT1RGSUxFUy5pbiAgICAgICAgICB8ICAgIDEgLQorIDExIGZpbGVzIGNoYW5nZWQsIDcgaW5zZXJ0aW9ucygrKSwgNzggZGVsZXRpb25zKC0pCisKK2NvbW1pdCBjOGQzOTM4YmUxMjdlMjU2ZmQ1OTNmMjM0ODU4ZmI5ZDQ3NGIyMzUzCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIE1heSAxMiAyMTo1ODoyOSAyMDA5ICswMjAwCisKKyAgICBSZW1vdmUgb2Jzb2xldGUgcHJpb3JpdGllcyBzdXBwb3J0CisKKyBSRUFETUUuZmVhdHVyZS1yZW1vdmFsLXNjaGVkdWxlIHwgICAxNSArKysrKysrLS0tLS0tLS0KKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICAgIHwgICAgMSArCisgbGliL2Rwa2ctZGIuaCAgICAgICAgICAgICAgICAgICB8ICAgIDcgKysrKystLQorIGxpYi9wYXJzZWhlbHAuYyAgICAgICAgICAgICAgICAgfCAgICA2IC0tLS0tLQorIDQgZmlsZXMgY2hhbmdlZCwgMTMgaW5zZXJ0aW9ucygrKSwgMTYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA5ZjY2NzE5MjVmMzQwMzkwMGJiM2EyZjc0Y2Q0YjY2ODNhMTg5MDUyCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIE1heSAxMiAyMDoyMTo1NSAyMDA5ICswMjAwCisKKyAgICBSZW1vdmUgb2Jzb2xldGUgLS1mb3JjZS1hdXRvLXNlbGVjdCBkcGtnIG9wdGlvbgorCisgUkVBRE1FLmZlYXR1cmUtcmVtb3ZhbC1zY2hlZHVsZSB8ICAgMTcgKysrKysrKy0tLS0tLS0tLS0KKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICAgIHwgICAgMSArCisgc3JjL21haW4uYyAgICAgICAgICAgICAgICAgICAgICB8ICAgIDIgLS0KKyAzIGZpbGVzIGNoYW5nZWQsIDggaW5zZXJ0aW9ucygrKSwgMTIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA0YjgwNjFmODU4MzIyMDA4OWVkYTE2MTFmYjdjNTVlZmQwY2I0MWI1CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIE1heSAxMiAxNjoyNDo1OCAyMDA5ICswMjAwCisKKyAgICBSZW1vdmUgb2Jzb2xldGUgLS1sYXJnZW1lbSBhbmQgLS1zbWFsbG1lbSBkcGtnIG9wdGlvbnMKKworIFJFQURNRS5mZWF0dXJlLXJlbW92YWwtc2NoZWR1bGUgfCAgIDEwICsrKysrLS0tLS0KKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICAgIHwgICAgMSArCisgc3JjL21haW4uYyAgICAgICAgICAgICAgICAgICAgICB8ICAgIDIgLS0KKyBzcmMvbWFpbi5oICAgICAgICAgICAgICAgICAgICAgIHwgICAgMiArLQorIDQgZmlsZXMgY2hhbmdlZCwgNyBpbnNlcnRpb25zKCspLCA4IGRlbGV0aW9ucygtKQorCitjb21taXQgYTdhMmRlMGU3NjA0OWFjMjM4Y2Y3MDE0MGRlYzJlMzlmYjlhNTUzYgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBNYXkgMTEgMTg6MTQ6MTIgMjAwOSArMDIwMAorCisgICAgUHJpbnQgYSB3YXJuaW5nIHdoZW4gdXNpbmcgb2Jzb2xldGUgLS1wcmludC1pbnN0YWxsYXRpb24tYXJjaGl0ZWN0dXJlCisgICAgCisgICAgUGFja2FnZXMgc2hvdWxkIGJlIHN3aXRjaGVkIHRvIHVzZSAtLXByaW50LWFyY2hpdGVjdHVyZS4gVGhpcyBvcHRpb24KKyAgICB3aWxsIGJlIHJlbW92ZWQgc29tZXRpbWUgaW4gdGhlIGZ1dHVyZS4KKyAgICAKKyAgICBDbG9zZXM6ICM1MjgxNzEKKworIFJFQURNRS5mZWF0dXJlLXJlbW92YWwtc2NoZWR1bGUgfCAgICA4ICsrKysrKysrCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICAgICB8ICAgIDIgKysKKyBzcmMvZW5xdWlyeS5jICAgICAgICAgICAgICAgICAgIHwgICAgOCArKysrKysrKworIHNyYy9tYWluLmMgICAgICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgNCBmaWxlcyBjaGFuZ2VkLCAxOSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgNThiMDRkOGY3NWE4YjU5YmMyZWMwZjU0NDI5ZTNhNDdiMDYwZWNiNgorQXV0aG9yOiBSYXBoYWVsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIE1heSAxMCAyMTozMTo0MCAyMDA5ICswMjAwCisKKyAgICBkcGtnLWJ1aWxkcGFja2FnZTogYWRkIGV4ZWN1dGUgcmlnaHQgb24gZGViaWFuL3J1bGVzIHdoZW4gbWlzc2luZworICAgIAorICAgIFRoYXQgcmlnaHQgc2hvdWxkIG5vcm1hbGx5IG5vdCBiZSBtaXNzaW5nIGFzIGRwa2ctc291cmNlIC14IGF1dG9tYXRpY2FsbHkKKyAgICBzZXRzIGl0LiBIb3dldmVyIG1hbnVhbGx5IGFwcGx5aW5nIGEgRGViaWFuIGRpZmYgZG9lc24ndCByZXN0b3JlCisgICAgdGhhdCByaWdodCBzbyBsZXQgZHBrZy1idWlsZHBhY2thZ2UgcmVzdG9yZSBpdCBpbiB0aGF0IGNhc2UgYW5kIGRpc3BsYXkgYQorICAgIHdhcm5pbmcgdG8gbGV0IHRoZSB1c2VyIGtub3cgdGhhdCBpdCB3YXMgbm90IHJlYWxseSBub3JtYWwuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgIHwgICAgMiArKworIHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGwgfCAgICA1ICsrKysrCisgMiBmaWxlcyBjaGFuZ2VkLCA3IGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA3MGM3NjAxOThmOWQxMTZkODVmMjBhNTg3ZjYwYmI0YmMzZmZmNzc2CitBdXRob3I6IFJhcGhhZWwgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gTWF5IDEwIDE5OjE4OjA1IDIwMDkgKzAyMDAKKworICAgIGRwa2ctc291cmNlOiBkbyBub3QgdHJ5IHRvIGFwcGx5IGVtcHR5IHBhdGNoIHNldAorICAgIAorICAgIEluIGZvcm1hdCAyLjAgYW5kIDMuMCAocXVpbHQpLCBkbyBub3QgdHJ5IHRvIGFwcGx5IHRoZSBwYXRjaGVzIGlmCisgICAgdGhlcmUgYXJlIG5vbmUuCisKKyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG0gICAgICAgfCAgICAyICsrCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtIHwgICAgMyArKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDU3YzVhOWRkNTI5NTVkNWIyZmQ1NWYyMjRkNzBjYjRmM2Y0MGY0MzcKK0F1dGhvcjogUmFwaGFlbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBNYXkgMTAgMTk6MTU6MjkgMjAwOSArMDIwMAorCisgICAgZHBrZy1zb3VyY2U6IG1pbm9yIHVwZGF0ZSB0byAiMy4wIChxdWlsdCkiIGZvcm1hdAorICAgIAorICAgIERvIG5vdCB1cGRhdGUvY3JlYXRlIGRlYmlhbi9wYXRjaGVzLy5kcGtnLXNvdXJjZS1hcHBsaWVkIGR1cmluZyBidWlsZCwKKyAgICBpdCdzIG9ubHkgbWVhbnQgdG8gZG9jdW1lbnQgd2hhdCBwYXRjaGVzIGhhdmUgYmVlbiBhcHBsaWVkIGF0IGV4dHJhY3Rpb24KKyAgICB0aW1lLgorICAgIAorICAgIEFsc28gdHJ5IHRvIGNsZWFudXAgaW4gY2FzZSB0aGUgcGF0Y2ggc2VyaWUgaXMgZW1wdHkgYWZ0ZXIgcmVtb3ZhbCBvZiB0aGUKKyAgICBhdXRvbWF0aWMgcGF0Y2guIEZpcnN0IHJlbW92ZSBkZWJpYW4vcGF0Y2hlcy9zZXJpZXMgaWYgaXQncyBlbXB0eSBhbmQgdGhlbgorICAgIGRlYmlhbi9wYXRjaGVzLyBpdHNlbGYgaW4gY2FzZSBpdCdzIGVtcHR5IGFzIHdlbGwuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAzICsrKworIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbSAgICAgICB8ICAgIDEgKworIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbSB8ICAgIDUgKystLS0KKyAzIGZpbGVzIGNoYW5nZWQsIDYgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworY29tbWl0IDUwZTZlYTFkYzAxOTNlYWNjOTVlYzQ3ZjJkMTc1YzZiZmNkYTE0ZmMKK0F1dGhvcjogUmFwaGFlbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBNYXkgMTAgMTc6MzA6MDIgMjAwOSArMDIwMAorCisgICAgZHBrZy1zb3VyY2U6IGZpeCBhdXRvbWF0aWMgcGF0Y2ggcmVnaXN0cmF0aW9uIGluIGZvcm1hdCAzLjAgKHF1aWx0KQorICAgIAorICAgIFdoZW4gdGhlIGF1dG9tYXRpYyBwYXRjaCBpcyB1cGRhdGVkIGR1ZSB0byBhIHNlY29uZCBjYWxsIHRvCisgICAgZHBrZy1zb3VyY2UsIGl0J3Mgbm90IGFsd2F5cyBwcm9wZXJseSByZWdpc3RlcmVkIHdpdGggcXVpbHQuCisgICAgSXQgbXVzdCBiZSBhcHBsaWVkIHdpdGggcXVpbHQgaXRzZWxmIG90aGVyd2lzZSBxdWlsdCBwb3AKKyAgICB0aGVuIHF1aWx0IHB1c2ggbWlnaHQgZmFpbCB3aGVuIHN1cHBsZW1lbnRhcnkgZmlsZXMgaGF2ZSBiZWVuIG1vZGlmaWVkCisgICAgb3V0c2lkZSBvZiBxdWlsdCdzIGtub3dsZWRnZS4KKyAgICAKKyAgICBGdXJ0aGVybW9yZSBxdWlsdCBpbXBvcnQgd2FzIG5vdCBhIGdvb2QgY2hvaWNlIGFzIGl0IGZhaWxlZCB0cnlpbmcgdG8gY29weQorICAgIHRoZSBwYXRjaCBvdmVyIGl0c2VsZi4gVGhlIG5ldyBhcHByb2FjaCBpcyB0byByZXZlcnQgdGhlIHBhdGNoIGFuZCBsZXQKKyAgICBxdWlsdCByZWFwcGx5IGl0IHdpdGggcXVpbHQgZm9sZC4gSXQgd2lsbCBnbyBvdmVyIHRoZSBsaXN0IG9mIGZpbGVzCisgICAgbW9kaWZpZWQgYnkgdGhlIG5ldyBwYXRjaCBhbmQgYWRkIHRob3NlIHdoaWNoIHdlcmUgbm90IHlldCBwYXJ0IG9mIHRoZQorICAgIHByZXZpb3VzIHBhdGNoIChoZW5jZSBhZGRpbmcgdGhlIHJlcXVpcmVkIHVubW9kaWZpZWQgZmlsZXMgaW4KKyAgICAucGMvPHBhdGNoLW5hbWU+LykuCisgICAgCisgICAgQmFzZWQtb24tcGF0Y2gtYnk6IEdvc3dpbiB2b24gQnJlZGVybG93IDxnb3N3aW4tdi1iQHdlYi5kZT4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDQgKysrKworIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbSB8ICAgMjIgKysrKysrKysrKysrKysrKysrLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgMjIgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKKworY29tbWl0IDE3MGZkMDZkMzU3MzIzOGJhYjkyNTk0YWZlNGQ0OWI2MWJmNzc0MDcKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gTWF5IDEwIDE5OjU5OjI1IDIwMDkgKzAyMDAKKworICAgIGRwa2ctdmVuZG9yOiBFcnJvciBvdXQgd2hlbiBubyBhY3Rpb24gb3B0aW9uIGlzIHByb3ZpZGVkCisgICAgCisgICAgSXQgd2FzIHByZXZpb3VzbHkgZ2l2aW5nIHBlcmwgd2FybmluZ3MgZHVlIHRvIHVuaW5pdGlhbGl6ZWQgdmFyaWFibGVzLgorCisgc2NyaXB0cy9kcGtnLXZlbmRvci5wbCB8ICAgIDIgKysKKyAxIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDI4OWMxNzllZjZkOTFhZDRkYWVjNGFiZmY3NzYyZDViMTdhMDEwYzkKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gTWF5IDEwIDE5OjUzOjA4IDIwMDkgKzAyMDAKKworICAgIGRwa2ctdmVuZG9yOiBVc2UgdXNhZ2VlcnIgaW5zdGVhZCBvZiBub24tZXhpc3RlbnQgYmFkdXNhZ2UKKworIHNjcmlwdHMvZHBrZy12ZW5kb3IucGwgfCAgICAyICstCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAxYjA3NWJkMzRiZjhjMjM2MmIwOTk5YjI5ZWM1YzJhYjg4NDI5ZGI5CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIE1heSAxMCAxOTowNzowNiAyMDA5ICswMjAwCisKKyAgICBzLXMtZDogUHJpbnQgdmFsaWQgdmFsdWVzIGZvciBJTyBzY2hlZHVsZXIgY2xhc3MgaW4gLS1oZWxwIG91dHB1dAorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICB8ICAgIDIgKysKKyB1dGlscy9zdGFydC1zdG9wLWRhZW1vbi5jIHwgICAgMyArKysKKyAyIGZpbGVzIGNoYW5nZWQsIDUgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDM4NGY2ZDEzMWYwNzExMGRiNDgwN2NhYjAyZmVmYzAyY2NhYjc0MzAKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gTWF5IDEwIDE4OjU5OjM1IDIwMDkgKzAyMDAKKworICAgIHMtcy1kOiBPbmx5IHByaW50IGZhdGFsIGVycm5vIHN0cmluZyBpZiBpdCB3YXMgbm9uLXplcm8KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgfCAgICAxICsKKyB1dGlscy9zdGFydC1zdG9wLWRhZW1vbi5jIHwgICAgNiArKysrKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDYgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGY0MGQxN2YzYjdlN2VlZWE4MDAyMzc2MmRjNzgyNzkxZmZmZjg1MTQKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gTWF5IDEwIDE4OjUyOjMwIDIwMDkgKzAyMDAKKworICAgIHMtcy1kOiBQcmVzZXJ2ZSBmYXVsdGluZyBlcnJubyB3aGVuIHByaW50aW5nIHJlYXNvbiBpbiBmYXRhbCBmdW5jdGlvbgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICB8ICAgIDIgKysKKyB1dGlscy9zdGFydC1zdG9wLWRhZW1vbi5jIHwgICAgMyArKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDRhMGM3OTE3MTQwMDg0N2VhOTdlYmQ2NjM4NGZkZTIxZjQ5Nzk2NGMKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gTWF5IDEwIDE4OjMzOjA5IDIwMDkgKzAyMDAKKworICAgIEZpeCBQT0QgZXJyb3JzIGRldGVjdGVkIGJ5IHBvZGNoZWNrZXIgaW4gcGVybCBtb2R1bGVzCisgICAgCisgICAgQWRkIG1pc3NpbmcgYmxhbmsgbGluZXMgYWZ0ZXIgPWN1dCwgY2xvc2UgPW92ZXIgc2VjdGlvbiB3aXRoID1iYWNrIGFuZAorICAgIGFkZCBhIEZJWE1FIGNvbW1lbnQgdG8gYW4gZW1wdHkgc2VjdGlvbi4KKworIHNjcmlwdHMvRHBrZy9DZGF0YS5wbSAgICAgICAgICB8ICAgIDIgKysKKyBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtICAgICAgfCAgICA1ICsrKystCisgc2NyaXB0cy9EcGtnL0NvbnRyb2wucG0gICAgICAgIHwgICAgOSArKysrKysrKysKKyBzY3JpcHRzL0Rwa2cvRGVwcy5wbSAgICAgICAgICAgfCAgICA5ICsrKysrKysrKworIHNjcmlwdHMvRHBrZy9GaWVsZHMucG0gICAgICAgICB8ICAgIDcgKysrKysrKworIHNjcmlwdHMvRHBrZy9QYXRoLnBtICAgICAgICAgICB8ICAgIDQgKysrKworIHNjcmlwdHMvRHBrZy9TdWJzdHZhcnMucG0gICAgICB8ICAgIDcgKysrKysrKworIHNjcmlwdHMvRHBrZy9WZW5kb3IucG0gICAgICAgICB8ICAgIDkgKysrKysrKysrCisgc2NyaXB0cy9EcGtnL1ZlbmRvci9EZWZhdWx0LnBtIHwgICAgMyArKysKKyBzY3JpcHRzL0Rwa2cvVmVuZG9yL1VidW50dS5wbSAgfCAgICAzICsrKworIHNjcmlwdHMvRHBrZy9WZXJzaW9uLnBtICAgICAgICB8ICAgIDEgKworIDExIGZpbGVzIGNoYW5nZWQsIDU4IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyYjEyNWU2ZWQ5NmQ4OGUwZjM1MmViYTliZmM3NDZhOTY0MGRjMDFhCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIE1heSAxMCAxNzo1NDowNSAyMDA5ICswMjAwCisKKyAgICBEbyBub3Qgc2V0IHRoZSBBcmNoIHN1YnN0dmFyIGluIGRwa2ctc291cmNlCisgICAgCisgICAgQXZvaWQgc2V0dGluZyB0aGUgdmFyaWFibGUgYnkgZGVmYXVsdCBhcyBpdCBpcyBleHBlbnNpdmUsIGFuZCBub3QKKyAgICByZWFsbHkgbmVlZGVkIGZvciBkcGtnLXNvdXJjZSBhbnl3YXkuIFNwbGl0IHRoZSBzZXR0aW5nIGludG8gYSBuZXcKKyAgICBtZW1iZXIgc2V0X2FyY2hfc3Vic3R2YXJzKCkuCisgICAgCisgICAgUmVncmVzc2lvbiBpbnRyb2R1Y2VkIGluIDEyMGVjZDUxNjFmNGNmNDY4ZDYxMWIzZGVhMDVhYzhhNDMzMTNhNzUuCisgICAgCisgICAgQ2xvc2VzOiAjNTI2MTMyCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICB8ICAgIDIgKysKKyBzY3JpcHRzL0Rwa2cvU3Vic3R2YXJzLnBtICB8ICAgMTcgKysrKysrKysrKysrKystLS0KKyBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbCB8ICAgIDEgKworIHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsIHwgICAgMSArCisgNCBmaWxlcyBjaGFuZ2VkLCAxOCBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQorCitjb21taXQgNzBiZjExMWM5YTEwNjBhZGE4ZWFiZTg3ODdlMTQ5ZjI1MTU3ZjcxNAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBNYXkgNyAxODozMDoyNiAyMDA5ICswMjAwCisKKyAgICBNb3ZlIERlYmlhbiBrZXlyaW5ncyB0byB0aGUgRGViaWFuIHZlbmRvciBrZXlyaW5nIGhvb2sKKyAgICAKKyAgICBBcyBVYnVudHUgaXMgYSBkZXJpdmF0aXZlIGZyb20gRGViaWFuLCBtYWtlIGl0IGluaGVyaXQgdGhlIERlYmlhbiB2ZW5kb3IKKyAgICBjbGFzcyB3aGVuIHJ1bm5pbmcgdGhlIGtleXJpbmdzIGhvb2suCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICAgfCAgICAyICsrCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtIHwgICAgNiAtLS0tLS0KKyBzY3JpcHRzL0Rwa2cvVmVuZG9yL0RlYmlhbi5wbSAgfCAgIDE3ICsrKysrKysrKysrKysrKy0tCisgc2NyaXB0cy9EcGtnL1ZlbmRvci9VYnVudHUucG0gIHwgICAgOCArKysrKy0tLQorIDQgZmlsZXMgY2hhbmdlZCwgMjIgaW5zZXJ0aW9ucygrKSwgMTEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAzNDlhZWFhNGYyNjczNjc4Y2YwOWQ1YTMxZDRiODBkYjFmNTM0NjM5CitBdXRob3I6IFJhcGhhZWwgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBUaHUgQXByIDkgMTg6MDc6MDkgMjAwOSArMDIwMAorCisgICAgZHBrZy12ZW5kb3I6IG5ldyBzY3JpcHQgdG8gcXVlcnkgdmFyaW91cyB2ZW5kb3IgaW5mb3JtYXRpb24KKyAgICAKKyAgICBUaGlzIHRvb2wgaXMgbWVhbnQgdG8gYmUgdXNlZCBpbiBkZWJpYW4vcnVsZXMgZmlsZXMgdG8gaGF2ZSBjb21tb24gc291cmNlCisgICAgcGFja2FnZXMgYWNyb3NzIG11bHRpcGxlIGRpc3RyaWJ1dGlvbnMgYW5kIHlldCBzdGlsbCBoYXZlIHNsaWdodGx5CisgICAgZGlmZmVyZW50IGJpbmFyeSBwYWNrYWdlcy4KKyAgICAKKyAgICBUbyBhdXRvbWF0aWNhbGx5IGNvbnNlcnZlIGN1c3RvbWl6YXRpb25zIGFjcm9zcyBkZXJpdmF0aXZlcyBvZiBhIGdpdmVuCisgICAgZGlzdHJpYnV0aW9uLCBvbmUgY2FuIHVzZSDigJxkcGtnLXZlbmRvciAtLWRlcml2ZXMtZnJvbSB2ZW5kb3LigJ0gc28gdGhhdCBhbGwKKyAgICBkZXJpdmF0aXZlcyBrZWVwIHRoZSBzYW1lIGN1c3RvbWl6YXRpb25zIHdoZW4gdGhleSByZWJ1aWxkIHRoZSBzb3VyY2UKKyAgICBwYWNrYWdlIGV2ZW4gaWYgdGhlIGN1cnJlbnQgdmVuZG9yIGlzIG5vIG1vcmUgdGhlIHNhbWUuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICB8ICAgIDQgKysKKyBkZWJpYW4vZHBrZy1kZXYuaW5zdGFsbCB8ICAgIDIgKworIG1hbi9NYWtlZmlsZS5hbSAgICAgICAgIHwgICAgMSArCisgbWFuL2Rwa2ctdmVuZG9yLjEgICAgICAgfCAgIDUzICsrKysrKysrKysrKysrKysrKysrKysKKyBtYW4vcG8vcG80YS5jZmcgICAgICAgICB8ICAgIDUgKysKKyBzY3JpcHRzL01ha2VmaWxlLmFtICAgICB8ICAgIDIgKworIHNjcmlwdHMvZHBrZy12ZW5kb3IucGwgIHwgIDExMyArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKworIDcgZmlsZXMgY2hhbmdlZCwgMTgwIGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA3ODBkOTY5Nzg4Y2JjNjM5Yjc1ZTg3NmQwMTBmYmMwZTgwOTU2YWEwCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIE1heSA1IDE3OjQwOjMyIDIwMDkgKzAyMDAKKworICAgIERvIG5vdCBpbnN0YWxsIGRzZWxlY3QgYW5kIHMtcy1kIG1hbiBwYWdlcyBpZiBkaXNhYmxlZCBvbiBjb25maWd1cmUKKyAgICAKKyAgICBXaGVuIGNvbmZpZ3VyaW5nIHdpdGggLS13aXRob3V0LWRzZWxlY3Qgb3IgLS13aXRob3V0LXN0YXJ0LXN0b3AtZGFlbW9uLAorICAgIGRvIG5vdCBpbnN0YWxsIHRoZSBtYW4gcGFnZXMgcmVsYXRlZCB0byB0aG9zZSBwcm9ncmFtcy4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAyICsrCisgbWFuL01ha2VmaWxlLmFtICB8ICAgNDggKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAzMyBpbnNlcnRpb25zKCspLCAxNyBkZWxldGlvbnMoLSkKKworY29tbWl0IGY4ZjY4MTc5MDQyOWFlYzU5ZDhmYzM3NzFmYTJkNmVjNzhlZDc3ZjYKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgTWF5IDUgMTU6NDg6MjcgMjAwOSArMDIwMAorCisgICAgVXNlIGJhY2t0aWNrcyBpbnN0ZWFkIG9mIG5vbi1wb3J0YWJsZSBtYWtlICQoc2hlbGwpIGZ1bmN0aW9uCisgICAgCisgICAgVGhlIGJhY2t0aWNrcyBhcmUgdHJlYXRlZCBsaWtlIHRleHQsIHVudGlsIHRoZSBzaGVsbCBleHBhbmRzIHRoZW0sIHRodXMKKyAgICBtYWtpbmcgdGhpcyBzb2x1dGlvbiBwb3J0YWJsZS4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAxICsKKyBtYW4vTWFrZWZpbGUuYW0gIHwgICAgMiArLQorIDIgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgNjE4YjZjZDI3YjA0YzUwZTNlNWIyMWIwMzViNDVhZWY1OGU2YWZmYgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBNYXkgNSAxNTozOTo0NiAyMDA5ICswMjAwCisKKyAgICBEZWNsYXJlIHRoZSBDaGFuZ2VMb2cgZmlsZSB0byBiZSByZW1vdmVkIG9uIGRpc3RjbGVhbgorICAgIAorICAgIFRoaXMgZml4ZXMg4oCYbWFrZSBkaXN0Y2hlY2vigJkuCisKKyBNYWtlZmlsZS5hbSB8ICAgIDEgKworIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgNmYxNjVjNDU3OWI1MzU5NzU4MzMwNTM5NGNkNGUxY2IzNzdkNWZhOAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBNYXkgNSAxNToyMTo0NSAyMDA5ICswMjAwCisKKyAgICBDaGFuZ2Vsb2cgcG9saWNlOiBFc3BlcmFudG8gaXMgYSBuZXcgbGFuZ3VhZ2UKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAyICstCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBkNjFhYmU4NzI1MmE2YTZiMjM0YzhlYjU5YTg5MjZjOGY5ODg3ZDMyCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIE1heSA1IDE1OjIwOjIxIDIwMDkgKzAyMDAKKworICAgIEVuYWJsZSBFc3BlcmFudG8gYW5kIEFzdHVyaWFuIGxhbmd1YWdlcworICAgIAorICAgIE1pc3NlZCBpbiBjb21taXRzIGNlMDQ0MTVjNmI4MDllNDkzNmY5YjY5ZDVlYTYwZGFhMDZmMDY1N2QgYW5kCisgICAgOGFiMmQ0YTMxOTM0MDI3YTE4MjRmOGJhNjQ1OGU4ZGUxNzVjY2RiNS4KKworIHBvL0xJTkdVQVMgfCAgICA2ICsrKysrKworIDEgZmlsZXMgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgNDVhN2FkYzhhYzVlODg2NGQzYTM4NjViN2MwYzljYjRlZjNiNDM4OAorQXV0aG9yOiBSYXBoYWVsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIE1heSA0IDIwOjQ5OjQyIDIwMDkgKzAyMDAKKworICAgIHVwZGF0ZS1hbHRlcm5hdGl2ZXM6IGRvbid0IHJlbW92ZSByZWFsIGZpbGVzIGNvbmZsaWN0aW5nIHdpdGggbGluaworICAgIAorICAgIFdoZW4gYW4gYWx0ZXJuYXRpdmUgaXMgaW5zdGFsbGVkIGFuZCBhIHJlYWwgZmlsZSBpcyBpbiBjb25mbGljdCwgdGhlIHJlYWwKKyAgICBmaWxlIGlzIGtlcHQuIFdoZW4gdGhlIHNhbWUgYWx0ZXJuYXRpdmUgaXMgZnVsbHkgcmVtb3ZlZCwgdGhlIHJlYWwgZmlsZQorICAgIHNob3VsZCBiZSBrZXB0IGFjY29yZGluZyB0byB0aGUgc2FtZSBsb2dpYyAoYnV0IGN1cnJlbnRseSBpdCB3YXMgcmVtb3ZlZCkuCisgICAgVGhpcyBjb21taXQgbW9kaWZpZXMgdXBkYXRlLWFsdGVybmF0aXZlcyB0byBmb2xsb3cgdGhpcyBleHBlY3RlZAorICAgIGJlaGF2aW91ci4KKyAgICAKKyAgICBBbHNvIGFkZCBhIG5vbi1yZWdyZXNzaW9uIHRlc3QuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICAgICAgICB8ICAgIDMgKysrCisgc2NyaXB0cy90LzkwMF91cGRhdGVfYWx0ZXJuYXRpdmVzLnQgfCAgICA1ICsrKystCisgc2NyaXB0cy91cGRhdGUtYWx0ZXJuYXRpdmVzLnBsICAgICAgfCAgICA0ICsrLS0KKyAzIGZpbGVzIGNoYW5nZWQsIDkgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworY29tbWl0IGRhMDUzODI5MGI3ZGJiZmIzYzUzNzQ0MTQ3MDc2N2ZkMDg3OWM5ODUKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gTWF5IDMgMTQ6MDc6MDAgMjAwOSArMDIwMAorCisgICAgQWRkICcuaGd0YWdzJyB0byB0aGUgZGVmYXVsdCBkcGtnLXNvdXJjZSAtaSByZWdleCBhbmQgLUkgcGF0dGVybgorICAgIAorICAgIENsb3NlczogIzUyNTg1NAorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICAgIHwgICAgMiArKworIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbSB8ICAgIDMgKystCisgMiBmaWxlcyBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBiNWI4ZmIyZjc4ZDYwZWM5ODM2ZWI3MTIwZWMzOGZmYTY5NjJiMWRjCitBdXRob3I6IFl1cmkgS296bG92IDx5dXJheUBrb215YWtpbm8ucnU+CitEYXRlOiAgIFNhdCBNYXkgMiAxODoxODowNSAyMDA5ICswMjAwCisKKyAgICBVcGRhdGVkIFJ1c3NpYW4gdHJhbnNsYXRpb24KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAxICsKKyBwby9ydS5wbyAgICAgICAgIHwgMTAzNCArKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDMyOSBpbnNlcnRpb25zKCspLCA3MDYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAzNjI0YTRiMGViNTQ5OWYzNjdjMWQ4MDc3MjQwZjE1MTkwM2NkNzBhCitBdXRob3I6IFBoaWxpcHAgS2VybiA8cGtlcm5AZGViaWFuLm9yZz4KK0RhdGU6ICAgU2F0IE1heSAyIDExOjM5OjAwIDIwMDkgKzAyMDAKKworICAgIGRwa2ctc291cmNlOiBkbyBub3Qgc2V0IGFyY2g6YW55IGluIGRzYyBvbiBhcmNoLXJlc3RyaWN0ZWQgcGFja2FnZXMKKyAgICAKKyAgICBkcGtnLXNvdXJjZSB3YXMgcHJldHR5IGxpYmVyYWwgaW4gc2V0dGluZyAnQXJjaGl0ZWN0dXJlOiBhbnknIGluIHRoZQorICAgIGRzYzogYXMgc29vbiBhcyB0aGVyZSBhcmUgdHdvIGJpbmFyeSBwYWNrYWdlcywgb25lIGJlaW5nIGFyY2g6YWxsIGFuZAorICAgIG9uZSBiZWluZyBhcmNoLXJlc3RyaWN0ZWQsIHlvdSBnZXQgYXJjaDphbnkgaW4gdGhlIGRzYy4gVGhpcyBpcworICAgIGluY29ycmVjdCBiZWNhdXNlIHRoZSBwYWNrYWdlIHdpbGwgb25seSBidWlsZCBvbiB0aGUgYXV0b2J1aWxkZXJzCisgICAgaWYgdGhlcmUgYXJlIGFyY2hpdGVjdHVyZS1kZXBlbmRlbnQgYmluYXJ5IHBhY2thZ2VzIGF2YWlsYWJsZS4KKyAgICAKKyAgICBUaHVzIHRoaXMgcGF0Y2ggb25seSBwcm9kdWNlcyBhcmNoOmFueSBpZiBhdCBsZWFzdCBvbmUgYmluYXJ5IHBhY2thZ2UKKyAgICBzcGVjaWZpZXMgaXQuIE90aGVyd2lzZSBpdCBvdXRwdXRzIHRoZSBzZXQgb2YgYWxsIGJpbmFyeSBhcmNoaXRlY3R1cmVzCisgICAgKGluY2x1ZGluZyBhcmNoOmFsbCkuCisgICAgCisgICAgQ2xvc2VzOiAjNTI2NjE3CisgICAgCisgICAgU2lnbmVkLW9mZi1ieTogUGhpbGlwcCBLZXJuIDxwa2VybkBkZWJpYW4ub3JnPgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICB8ICAgIDIgKysKKyBzY3JpcHRzL2Rwa2ctc291cmNlLnBsIHwgICA0MyArKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAyMiBpbnNlcnRpb25zKCspLCAyMyBkZWxldGlvbnMoLSkKKworY29tbWl0IDBlOGZlOTg2NThkNjNhMDdhMTQ0OWNlZTYxZjE2YTY3MTM2MTM0ZTYKK0F1dGhvcjogUGhpbGlwcCBLZXJuIDxwa2VybkBkZWJpYW4ub3JnPgorRGF0ZTogICBTYXQgTWF5IDIgMTE6MjY6MjUgMjAwOSArMDIwMAorCisgICAgRml4IGZvcm1hdCBzdHJpbmcgaW4gR2VybWFuIHRyYW5zbGF0aW9uCisgICAgCisgICAgU2lnbmVkLW9mZi1ieTogUGhpbGlwcCBLZXJuIDxwa2VybkBkZWJpYW4ub3JnPgorCisgc2NyaXB0cy9wby9kZS5wbyB8ICAgIDQgKystLQorIDEgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgMzhhMjMxY2M0Njg4MzdhNmExZGIzMDZhNzdkZmYxY2ExZDMxZDJlOAorQXV0aG9yOiBIZWxnZSBLcmV1dHptYW5uIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KK0RhdGU6ICAgTW9uIEFwciAyNyAyMjoyNjo1MSAyMDA5ICswMjAwCisKKyAgICBVcGRhdGUgZ2VybWFuIHNjcmlwdHMgdHJhbnNsYXRpb24KKyAgICAKKyAgICBVcGRhdGUgdG8gNDc3dC4KKworIHNjcmlwdHMvcG8vZGUucG8gfCAgNDc1ICsrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMjQ5IGluc2VydGlvbnMoKyksIDIyNiBkZWxldGlvbnMoLSkKKworY29tbWl0IGFkYTkyNGRmNmRmMDM5ZjY2NzcwZDQ1NGI1ZTgwMzE2OWRjMmIzMWIKK0F1dGhvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitEYXRlOiAgIE1vbiBBcHIgMjcgMjI6MjA6NDIgMjAwOSArMDIwMAorCisgICAgVXBkYXRlIGdlcm1hbiB0cmFuc2xhdGlvbiBvZiBtYW51YWwgcGFnZXMKKyAgICAKKyAgICBVcGRhdGUgdG8gMTY1OXQuCisKKyBtYW4vcG8vZGUucG8gfCAzODY5ICsrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDE4OTIgaW5zZXJ0aW9ucygrKSwgMTk3NyBkZWxldGlvbnMoLSkKKworY29tbWl0IGNiZGU2ZjU4NzEzMDcyNDc0OWMyMzkwOGNjZTEyOTM4MGRjNzY1MmQKK0F1dGhvcjogQ29saW4gV2F0c29uIDxjandhdHNvbkBjYW5vbmljYWwuY29tPgorRGF0ZTogICBNb24gQXByIDI3IDExOjU2OjIyIDIwMDkgKzAxMDAKKworICAgIGRwa2ctc291cmNlOiBBZGQgImtleXJpbmdzIiB2ZW5kb3IgaG9vaworICAgIAorICAgIEFkZCAia2V5cmluZ3MiIHZlbmRvciBob29rLCB1c2VkIGJ5IGRwa2ctc291cmNlIHRvIGFsbG93IHZlbmRvcnMgdG8KKyAgICBzdXBwbHkgYWRkaXRpb25hbCBrZXlyaW5ncyBhZ2FpbnN0IHdoaWNoIHNvdXJjZSBwYWNrYWdlIHNpZ25hdHVyZXMgd2lsbAorICAgIGJlIHZlcmlmaWVkLiBJbXBsZW1lbnQgdGhpcyBmb3IgVWJ1bnR1LgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICAgIHwgICAgNSArKysrKworIG1hbi9kcGtnLXNvdXJjZS4xICAgICAgICAgICAgICB8ICAgIDIgKy0KKyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG0gfCAgICA2ICsrKysrKworIHNjcmlwdHMvRHBrZy9WZW5kb3IvRGVmYXVsdC5wbSB8ICAgIDggKysrKysrKysKKyBzY3JpcHRzL0Rwa2cvVmVuZG9yL1VidW50dS5wbSAgfCAgICAzICsrKworIDUgZmlsZXMgY2hhbmdlZCwgMjMgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDYwOTI5NGRlMTA3NDU1NmFjNjE5NGZmZjdkZGJmZWYwZmVjODA4NDEKK0F1dGhvcjogUmFwaGFlbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBBcHIgMTkgMjI6MDU6MzQgMjAwOSArMDIwMAorCisgICAgZHBrZy1zb3VyY2U6IGRvIG5vdCBzdG9yZSB1c2VyL2dyb3VwIG5hbWVzIGluIGdlbmVyYXRlZCB0YXJiYWxscworICAgIAorICAgIERvIG5vdCBzdG9yZSB1c2VybmFtZXMgYW5kIGdyb3VwIG5hbWVzIHdoZW4gY3JlYXRpbmcgdGFyYmFsbHMKKyAgICBhbmQgdXNlIG51bWVyaWMgVUlEL0dJRCAwIGluc3RlYWQuIFRoaXMgY29uY2VybnMgbmF0aXZlIHNvdXJjZSBwYWNrYWdlcywKKyAgICBkZWJpYW4gdGFyYmFsbHMgaW4gIjMuMCAocXVpbHQpIiBzb3VyY2UgcGFja2FnZXMsIGFuZCBhbnkgb3RoZXIgc291cmNlCisgICAgZm9ybWF0IGNyZWF0aW5nIG5ldyB0YXJiYWxscyB3aXRoIERwa2c6OlNvdXJjZTo6QXJjaGl2ZS4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgICAgICB8ICAgIDIgKysKKyBzY3JpcHRzL0Rwa2cvU291cmNlL0FyY2hpdmUucG0gfCAgICAzICsrLQorIDIgZmlsZXMgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgZjgwNWE2NTQ2ZTcwNTBhMTAyNGQ5MjRiODA1Y2ZmNzVjZmQwODJkOAorQXV0aG9yOiBSYXBoYWVsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIEFwciAxOSAyMDo1NDoxMiAyMDA5ICswMjAwCisKKyAgICBBZGQgbGludGlhbiBvdmVycmlkZSBmb3IgZW1iZWRkZWQtemxpYgorICAgIAorICAgIGRwa2ctZGViIGxpbmtzIHN0YXRpY2FsbHkgd2l0aCB6bGliIHNvIHRoYXQgaXQgY2FuIHN0aWxsIHdvcmsKKyAgICBldmVuIGlmIHRoZSBzaGFyZWQgbGlicmFyeSBpcyBicm9rZW4gb3IgdW5hdmFpbGFibGUuIEl0J3MgYSBmYWNpbGl0eQorICAgIHRvIGJlIGFibGUgdG8gcmVjb3ZlciBmcm9tIGRpZmZpY3VsdCBzaXR1YXRpb25zIHdpdGhvdXQgaGF2aW5nCisgICAgdG8gbWFudWFsbHkgdW5wYWNrIGRlYmlhbiBwYWNrYWdlcy4KKyAgICAKKyAgICBTZWUgaHR0cDovL2J1Z3MuZGViaWFuLm9yZy9jZ2ktYmluL2J1Z3JlcG9ydC5jZ2k/YnVnPTEzOTMyMCBmb3IKKyAgICBvbmUgZGlzY3Vzc2lvbiBhYm91dCB0aGlzLgorCisgZGViaWFuL2Rwa2cubGludGlhbi1vdmVycmlkZXMgfCAgICAyICsrCisgMSBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAwZjZmMTAxNmFhNTAxMzg3ZjYwZWM5ZjhiNzUwMjYzOTA0ZmJmMzA2CitBdXRob3I6IFJhcGhhZWwgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gQXByIDE5IDIwOjUxOjEwIDIwMDkgKzAyMDAKKworICAgIFVwZGF0ZSBTdGFuZGFyZHMtVmVyc2lvbiB0byAzLjguMQorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDEgKworIGRlYmlhbi9jb250cm9sICAgfCAgICAyICstCisgMiBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAzNTI1Zjc5NzkyY2ZmNTE3NTdkOTlkNDVmNTFjOTZhMTVlNmZhNzc5CitBdXRob3I6IFJhcGhhZWwgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gQXByIDE5IDIwOjA4OjQ0IDIwMDkgKzAyMDAKKworICAgIGRwa2ctc291cmNlOiBkb24ndCBjb21wbGFpbiBvbiBiaW5hcnkgZmlsZXMgdGhhdCBhcmUgaWdub3JlZAorICAgIAorICAgIFRvIGF2b2lkIG1pc3Rha2VzIHdpdGggIjMuMCAocXVpbHQpIiBzb3VyY2UgcGFja2FnZXMsIGRwa2ctc291cmNlIGZhaWxzIGlmCisgICAgaXQgZmluZHMgYmluYXJ5IGZpbGVzIHRoYXQgaGF2ZSBub3QgYmVlbiB3aGl0ZWxpc3RlZCBpbiB0aGUgZGViaWFuCisgICAgZGlyZWN0b3J5LiBVbmZvcnR1bmF0ZWx5IGl0IGFsc28gZmFpbHMgb24gYmluYXJ5IGZpbGVzIHRoYXQgYXJlIGlnbm9yZWQKKyAgICBhbmQgdGhhdCB3aWxsIG5vdCBiZSBpbmNsdWRlZCBpbiB0aGUgZGViaWFuIHRhcmJhbGwuIFRoaXMgY29tbWl0IGZpeGVzCisgICAgdGhhdCBhbHRob3VnaCBub3QgY29tcGxldGVseS4KKyAgICAKKyAgICBUaGUgZXhjbHVkZSBwYXR0ZXJucyBwYXNzZWQgdG8gdGFyIC0tZXhjbHVkZSBhcmUgdXNlZCB0byBtYXRjaCBmaWxlbmFtZXMKKyAgICBhbmQgYWxzbyBmdWxsIHBhdGggbmFtZXMgaW5zaWRlIHRoZSB0YXJiYWxsLiBUaGlzIGNvbW1pdCBvbmx5IGFkZHMgc3VwcG9ydAorICAgIGZvciBzaW1wbGUgZmlsZW5hbWUgbWF0Y2guIEl0IGlzIGVub3VnaCBmb3IgYWxsIHJlYWxpc3RpYyBjYXNlcy4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgICAgICAgICB8ICAgIDMgKysrCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtIHwgICAyNCArKysrKysrKysrKysrKysrKysrKysrKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDI2IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA2NDQzOTUwOGNjYWYyYzlhOThmYTExYjdjY2U0ZGY0ZDMxNGNjMzM0CitBdXRob3I6IFJhcGhhZWwgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBGcmkgQXByIDE3IDIyOjI0OjE5IDIwMDkgKzAyMDAKKworICAgIGRwa2ctc291cmNlOiBhY2NlcHQgZGFzaGVzIGluIGNvbXBvbmVudCBuYW1lIG9mIGFkZGl0aW9uYWwgdGFyYmFsbHMKKyAgICAKKyAgICBUaGUgcmVndWxhciBleHByZXNzaW9uIHVzZWQgdG8gaWRlbnRpZnkgYWRkaXRpb25hbCB0YXJiYWxscyAodXNlZCBpbgorICAgIGZvcm1hdHMgIjIuMCIgYW5kICIzLjAgKHF1aWx0KSIpIHdhcyB0b28gc3RyaWN0IGFuZCByZWZ1c2VkIGRhc2hlcy4gVGhpcworICAgIGNvbW1pdCBmaXhlcyB0aGF0IGFuZCBkb2N1bWVudHMgdGhlIHNldCBvZiBhbGxvd2VkIGNoYXJhY3RlcnMgaW4gdGhlCisgICAgZHBrZy1zb3VyY2UgbWFudWFsIHBhZ2UuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICAgICAgfCAgICAyICsrCisgbWFuL2Rwa2ctc291cmNlLjEgICAgICAgICAgICAgICAgIHwgICAgMSArCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtICAgIHwgICAgMiArLQorIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbSB8ICAgIDQgKystLQorIDQgZmlsZXMgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQorCitjb21taXQgZmVlMzBjZDM3YzgzYmQ4NTQ2NWVkYmEzNjU0NmEzNjYxZDI3M2Q3ZAorQXV0aG9yOiBSYXBoYWVsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIEFwciAxNyAyMjowODoyNCAyMDA5ICswMjAwCisKKyAgICBEcGtnOjpEZXBzOjpwYXJzZSgpOiBwYXJzZSBwcm9wZXJseSBhbiBlbXB0eSBkZXAgd2l0aCBzcGFjZXMgb25seQorICAgIAorICAgIExlYWRpbmcgYW5kIHRyYWlsaW5nIHNwYWNlcyB3ZXJlIG5vdCBzdHJpcHBlZCBhbmQgd2hlbiBubyBmdXJ0aGVyIHBhcnNpbmcKKyAgICB3YXMgZG9uZSAoYmVjYXVzZSB0aGVyZSdzIG5vIHZhbGlkIGRlcGVuZGVuY3kgdG8gcGFyc2UpIGl0IHdhcyBpbXByb3Blcmx5CisgICAgZXJyb3Jpbmcgb3V0LgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgfCAgICAyICsrCisgc2NyaXB0cy9EcGtnL0RlcHMucG0gfCAgICA0ICsrKysKKyAyIGZpbGVzIGNoYW5nZWQsIDYgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDEwMGEyYTI5Yzc3MTg2MTNkOTdhOGFlOTU0M2M2OWZhZjBkYTA0MzYKK0F1dGhvcjogUGV0ZXIgS3JlZnRpbmcgPHBldGVya0BkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgQXByIDE0IDA5OjQwOjQyIDIwMDkgKzAxMDAKKworICAgIFVwZGF0ZSBTd2VkaXNoIHRyYW5zbGF0aW9uLgorICAgIAorICAgIFVwZGF0ZSBtYW4vcG8vc3YucG8gdG8gMTY1OXQwZjB1LgorICAgIFVwZGF0ZSBzY3JpcHRzL3BvL3N2LnBvIHRvIDQ3N3QwZjB1LgorCisgbWFuL3BvL3N2LnBvICAgICB8IDM3MzYgKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgc2NyaXB0cy9wby9zdi5wbyB8ICA0NjUgKysrKy0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDIwNzAgaW5zZXJ0aW9ucygrKSwgMjEzMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGYzYjcyYmMxNDk2NjBhOTM4ZDdkMTQ3Y2UxOWQ2NTZhZWVlNGNhZDIKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gQXByIDEzIDA2OjE0OjQyIDIwMDkgKzAyMDAKKworICAgIEZpeCB0eXBvcyBpbiB1LWEgbWFuIHBhZ2UKKyAgICAKKyAgICBBZGQgYSBtaXNzaW5nIHBhcmFncmFwaCB3aXRoIGhlYWRpbmcgdGFnLgorICAgIFJlcGxhY2UgcmVmZXJlbmNlIHRvIOKAmGxpbmvigJkgd2l0aCDigJhuYW1l4oCZIGluIC0tYXV0by4KKyAgICAKKyAgICBSZXBvcnRlZC1ieTogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CisKKyBtYW4vdXBkYXRlLWFsdGVybmF0aXZlcy44IHwgICAgNSArKystLQorIDEgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgNTE5MjZlZWJiYmExZjIwYzNiZjk5NGU3MzY0NTEyYTFjNjNhMjVmMgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBBcHIgMTMgMDQ6NTc6NDMgMjAwOSArMDIwMAorCisgICAgRGV0ZWN0IHRoZSBjdXJzZXMgaGVhZGVycyB0byB1c2UgaW5zdGVhZCBvZiBoYXJkY29kaW5nIHRoZW0KKyAgICAKKyAgICBXcmFwIHRoZSBjdXJzZXMgaGVhZGVycyB0byB1c2UgYW5kIHNlbGVjdCB0aGVtIHRocm91Z2ggdGhlIGNvbmZpZy5oIG1hY3JvcworICAgIGRldGVjdGVkIGF0IGNvbmZpZ3VyZSB0aW1lLiBUaGlzIHdheSB3ZSBjYW4gYWxzbyBjbGVhbmx5IGRldGVjdCB0aGUgcGF0aAorICAgIG5lZWRlZCBieSBta2N1cmtleXMucGwgdy9vIGR1cGxpY2F0aW5nIHRoZSBzZWxlY3Rpb24gbG9naWMuCisKKyBUT0RPICAgICAgICAgICAgICAgICAgICAgfCAgICAxIC0KKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgfCAgICAxICsKKyBkc2VsZWN0L01ha2VmaWxlLmFtICAgICAgfCAgICA2ICsrKystLQorIGRzZWxlY3QvZHNlbGVjdC1jdXJzZXMuaCB8ICAgNDAgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKworIGRzZWxlY3QvZHNlbGVjdC5oICAgICAgICB8ICAgIDMgKy0tCisgZHNlbGVjdC9tYWluLmNjICAgICAgICAgIHwgICAgNiArKysrKysKKyBtNC9saWJzLm00ICAgICAgICAgICAgICAgfCAgICAyICsrCisgNyBmaWxlcyBjaGFuZ2VkLCA1NCBpbnNlcnRpb25zKCspLCA1IGRlbGV0aW9ucygtKQorCitjb21taXQgZjhmZjQ0YjY4ZGJlYzI0NTdiZDNkYmUwZTljODkxZjczNTM0ZjdiMgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBBcHIgMTMgMDQ6NDI6NTMgMjAwOSArMDIwMAorCisgICAgQWRkIGF2cjMyIHRvIGNwdXRhYmxlCisgICAgCisgICAgQ2xvc2VzOiAjNTIzNDU2CisKKyBjcHV0YWJsZSAgICAgICAgIHwgICAgMSArCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDEgKworIDIgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgZTJkMzQ4M2M5ZDI5NzgyM2U4OTE3MTk2OTI1YTAwOTI3ZDVkMWFmZQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBBcHIgMTMgMDQ6Mzg6MjAgMjAwOSArMDIwMAorCisgICAgU3luYyBhcmNodGFibGUgd2l0aCBhcmNoaXRlY3R1cmVzIGN1cnJlbnRseSBwcmVzZW50IGluIERlYmlhbiBzaWQKKyAgICAKKyAgICBSZW1vdmUgbTY4ay4KKyAgICBBZGQga2ZyZWVic2QtaTM4NiBhbmQga2ZyZWVic2QtYW1kNjQuCisKKyBkZWJpYW4vYXJjaHRhYmxlIHwgICAgMyArKy0KKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMyArKysKKyAyIGZpbGVzIGNoYW5nZWQsIDUgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGU1MjM1YjE3NGIwNGNkMzY2MmU5YjE4OWNkNzUwMmZjNThhMDMxYTYKK0F1dGhvcjogUmFwaGFlbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBBcHIgOSAxODozNToxMCAyMDA5ICswMjAwCisKKyAgICBkcGtnLXNvdXJjZTogZG9uJ3QgZGllIG9uIFNJR1BJUEUgb2YgdW5jb21wcmVzc29ycworICAgIAorICAgIE1vZGlmeSBEcGtnOjpTb3VyY2U6OkNvbXByZXNzZWRGaWxlIHRvIG5vdCBkaWUgd2hlbiB1bmNvbXByZXNzb3JzCisgICAgcHJvY2Vzc2VzIChndW56aXAsIGJ1bnppcCwgZXRjLikgYXJlIGtpbGxlZCBieSBTSUdQSVBFLiBSZWNlbnQgdGFyCisgICAgdmVyc2lvbnMgY2xvc2UgdGhlIHBpcGUgYmVmb3JlIGhhdmluZyByZWFkIGV2ZXJ5dGhpbmcgc2VudCBieSB0aGUKKyAgICB1bmNvbXByZXNzb3IgcHJvY2VzcyB3aGVuIHRoZXkgZW5jb3VudGVyIHRoZSBlbmQgb2YgdGhlIHRhciBmaWxlLgorICAgIFRoaXMgd2FzIG9mIGNvdXJzZSBwcm9ibGVtYXRpYyBmb3IgRHBrZzo6U291cmNlOjpBcmNoaXZlLgorICAgIFRoaXMgaXMgYSByZWdyZXNzaW9uIGNvbXBhcmVkIHRvIGV0Y2gncyBkcGtnLXNvdXJjZSB3aGljaCBkZWFsdCB3aXRoCisgICAgU0lHUElQRSBwcm9wZXJseS4KKyAgICAKKyAgICBUaGUgRHBrZzo6U291cmNlOjpDb21wcmVzc29yOjp3YWl0X2VuZF9wcm9jZXNzKCkgZnVuY3Rpb24gaGFkIHRvIGJlCisgICAgZXh0ZW5kZWQgdG8gYmUgYWJsZSB0byBmb3J3YXJkIG9wdGlvbnMgdG8gRHBrZzo6SVBDOjp3YWl0X2NoaWxkKCkuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICAgICAgICAgIHwgICAgMyArKysKKyBzY3JpcHRzL0Rwa2cvU291cmNlL0NvbXByZXNzZWRGaWxlLnBtIHwgICAxMCArKysrKysrKystCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9Db21wcmVzc29yLnBtICAgICB8ICAgIDUgKysrLS0KKyAzIGZpbGVzIGNoYW5nZWQsIDE1IGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBmOGNjMDExNWE4ZDMyNjQxNmViMGZkOTY4ZGI4NmUwY2I0ZjVhNDA4CitBdXRob3I6IENocmlzdGlhbiBQZXJyaWVyIDxidWJ1bGxlQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBBcHIgOCAxODoyNDo1MCAyMDA5ICswMjAwCisKKyAgICBTbG92YWsgdHJhbnNsYXRpb24gdXBkYXRlCisKKyBwby9zay5wbyB8ICAgNjcgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMzQgaW5zZXJ0aW9ucygrKSwgMzMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA4YWIyZDRhMzE5MzQwMjdhMTgyNGY4YmE2NDU4ZThkZTE3NWNjZGI1CitBdXRob3I6IEZlbGlwZSBDYXN0cm8gPGZlZmNhc0BnbWFpbC5jb20+CitEYXRlOiAgIFdlZCBBcHIgOCAwNjo0NDo1OCAyMDA5ICswMjAwCisKKyAgICBFc3BlcmFudG8gdHJhbnNsYXRpb24gdXBkYXRlCisgICAgCisgICAgQ2xvc2VzOiAjNTIzMDIzCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMSArCisgcG8vZW8ucG8gICAgICAgICB8IDU4NzAgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCisgMiBmaWxlcyBjaGFuZ2VkLCA1ODcxIGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBjNDBiYmQ4MzFjMzJiMjU3MDAxYmJlNmY1ZDg4ZGYxNmVhMjBiYjA3CitBdXRob3I6IEhlbGdlIEtyZXV0em1hbm4gPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorRGF0ZTogICBTdW4gQXByIDUgMTE6MDQ6NDggMjAwOSArMDIwMAorCisgICAgUmVjb21wbGV0ZSBnZXJtYW4gdHJhbnNsYXRpb24gb2YgbWFudWFsIHBhZ2VzCisKKyBtYW4vcG8vZGUucG8gfCAgIDI3ICsrKysrKysrKysrKystLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMTMgaW5zZXJ0aW9ucygrKSwgMTQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyY2Q1ZjMzZDQ4MDhiOTEyZjY0OWZiNjYyZjEyMzVkMjFjZDVlNjRlCitBdXRob3I6IEhlbGdlIEtyZXV0em1hbm4gPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorRGF0ZTogICBGcmkgQXByIDMgMjA6MzQ6NTMgMjAwOSArMDIwMAorCisgICAgVXBkYXRlIGdlcm1hbiB0cmFuc2xhdGlvbiBvZiBtYW51YWwgcGFnZXMKKyAgICAKKyAgICBVcGRhdGUgdG8gMTY1NHQzdS4KKworIG1hbi9wby9kZS5wbyB8ICAxNTQgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMTEyIGluc2VydGlvbnMoKyksIDQyIGRlbGV0aW9ucygtKQorCitjb21taXQgMjgzMjJhNjFlYTZhMTdmODIyMGRkMGY5Yzc0NTRlZTlkMDNlYzU4OAorQXV0aG9yOiBSYXBoYWVsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIE1hciAzMSAxMjoxNjoxMiAyMDA5ICswMjAwCisKKyAgICBGaXggYSB0cmFuc2xhdGlvbiBtaXN0YWtlIGluIGZyZW5jaCB2ZXJzaW9uIG9mIGRwa2coMSkKKyAgICAKKyAgICBSZXBvcnRlZC1ieTogSm9uYXRoYW4gR2liZXJ0IDxqb2tvdDNAZ21haWwuY29tPgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDIgKysKKyBtYW4vcG8vZnIucG8gICAgIHwgICAgMiArLQorIDIgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgMWIxYThhNTc3M2U5NGEwMTRmYzIwOTM0MzZiZDE1MDlhZDUzZmY0ZgorQXV0aG9yOiBSYXBoYWVsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIE1hciAzMCAxNTozNTozOCAyMDA5ICswMjAwCisKKyAgICBGaXggc3ludGF4IGluIGdlcm1hbiB0cmFuc2xhdGlvbi4KKyAgICAKKyAgICBSZXBvcnRlZC1ieTogTW9kZXN0YXMgVmFpbml1cyA8bW9kZXN0YXNAdmFpbml1cy5ldT4KKworIG1hbi9wby9kZS5wbyB8ICAgIDIgKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDczNGE3ODRlNzViNzFiMzExNzkzMjdhN2YyODRmNzZlM2JiY2IxNGUKK0F1dGhvcjogRnJhbmsgTGljaHRlbmhlbGQgPGRqcGlnQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBNYXIgMjkgMTM6MTg6MzkgMjAwOSArMDIwMAorCisgICAgU2ltcGxpZnkgRHBrZzo6VmVyc2lvbgorICAgIAorICAgIFJlbW92ZSB1bm5lY2Vzc2FyeSBmdW5jdGlvbiBuZXh0X2VsZW0gd2hpY2gganVzdCByZXBsaWNhdGVzIHRoZQorICAgIHN0YW5kYXJkIHNoaWZ0IGJlaGF2aW91ci4gVGhlIGFkZGl0aW9uYWwgZnVuY3Rpb24gY2FsbHMgYWZmZWN0CisgICAgcGVyZm9ybWFuY2UgbmVnYXRpdmVseS4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgIHwgICAgNiArKysrKy0KKyBzY3JpcHRzL0Rwa2cvVmVyc2lvbi5wbSB8ICAgMTggKysrKysrKy0tLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAxMiBpbnNlcnRpb25zKCspLCAxMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDNmZTg3NjM2NWNjNjJmM2NmOWI3NGZiNWIyMzE1MGZlNmQzMDdkMjAKK0F1dGhvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitEYXRlOiAgIEZyaSBNYXIgMjcgMjE6Mjc6MTAgMjAwOSArMDEwMAorCisgICAgVW5pZnkgKHdoZXJlIGFwcGxpY2FibGUpIHRyYW5zbGF0aW9uIG9mICJjcmVhdGUiIGFzIGluIHBvL2RlIGFuZCBmaXggdHlwb3MKKworIG1hbi9wby9kZS5wbyAgICAgfCAgIDQ0ICsrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgc2NyaXB0cy9wby9kZS5wbyB8ICAgMTggKysrKysrKysrLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAzMSBpbnNlcnRpb25zKCspLCAzMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDU1N2JlODliZGIzNTQ3YmExMjMzZDAyMmI4MWNlM2IyOWIzNTgxYWEKK0F1dGhvcjogU3ZlbiBKb2FjaGltIDxzdmVuam9hY0BnbXguZGU+CitEYXRlOiAgIEZyaSBNYXIgMjcgMjA6MTQ6MTAgMjAwOSArMDEwMAorCisgICAgVW5pZnkgdHJhbnNsYXRpb24gb2YgImNyZWF0ZSIKKworIHBvL2RlLnBvIHwgICAyNiArKysrKysrKysrKysrLS0tLS0tLS0tLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMTMgaW5zZXJ0aW9ucygrKSwgMTMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA2NjgzNWMwN2IzZWI1YzZhNWExMzc0ZTYwZTkzZGZhZjEyNTM4MzIzCitBdXRob3I6IE5pbHMgUmVubmViYXJ0aCA8bmlscy5yZW5uZWJhcnRoQGZ1bmt3ZXJrLWVjLmNvbT4KK0RhdGU6ICAgRnJpIE1hciAyNyAxOTozMToxOCAyMDA5ICswMTAwCisKKyAgICBkcGtnLWRlYjogZG9uJ3Qgd2FybiBvbiB1bmtub3duIGZpZWxkcyBzdGFydGluZyB3aXRoICJYLSIKKyAgICAKKyAgICBUaGUgZmllbGRzIG5hbWVkICJYLSIgYXJlIG5ldmVyIGdvaW5nIHRvIGNvbGxpZGUgd2l0aCBvZmZpY2lhbAorICAgIGZpZWxkcyBhbmQgdGhlcmUncyBubyBuZWVkIHRvIHdhcm4gdGhhdCB0aGV5IGFyZSB1bmtub3duLgorICAgIFVzZXJzIGFyZSBhbHJlYWR5IGV4cGxpY2l0ZWx5IGNyZWF0aW5nIHRoZW0gd2l0aCBYQi1YLSogZmllbGRzCisgICAgaW4gZGViaWFuL2NvbnRyb2wuCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMyArKysKKyBkcGtnLWRlYi9idWlsZC5jIHwgICAgMyArKysKKyAyIGZpbGVzIGNoYW5nZWQsIDYgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IDFlMTAzOGQ3NmEyMDFiMTc5ZjkwMGZjZmM0NDJhOTRlNGFhM2IzZWIKK0F1dGhvcjogUmFwaGFlbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBNYXIgMjMgMTY6MDE6MjIgMjAwOSArMDEwMAorCisgICAgR2xvYmFsIHJldmlldyBvZiBlcnJvciBjaGVja2luZyBhc3NvY2lhdGVkIHRvIHN0cnRvbCBmdW5jdGlvbnMKKyAgICAKKyAgICBTZXZlcmFsIGNhbGxzIHRvIHN0cnRvbCgpIG9yIHN0cnRvdWwoKSBhcmUgbm90IGZvbGxvd2VkIGJ5IGEKKyAgICBwcm9wZXIgY2hlY2sgdGhhdCBlbnN1cmVzIHRoYXQgdGhleSBoYXZlIHBhcnNlZCBhbiBpbnRlZ2VyIHZhbHVlCisgICAgKGFuZCBub3QgYW4gZW1wdHkgc3RyaW5nKS4KKworIGRwa2ctc3BsaXQvaW5mby5jICAgICAgICAgfCAgICAyICstCisgZHBrZy1zcGxpdC9tYWluLmMgICAgICAgICB8ICAgIDIgKysKKyBzcmMvZmlsZXNkYi5jICAgICAgICAgICAgIHwgICAgNiArKystLS0KKyBzcmMvbWFpbi5jICAgICAgICAgICAgICAgIHwgICAxNyArKysrKysrKysrLS0tLS0tLQorIHV0aWxzL3N0YXJ0LXN0b3AtZGFlbW9uLmMgfCAgICAyICstCisgNSBmaWxlcyBjaGFuZ2VkLCAxNyBpbnNlcnRpb25zKCspLCAxMiBkZWxldGlvbnMoLSkKKworY29tbWl0IGRhMTE2MTkzZmEwZWMwMGYwYzQ3NzYxNGU1MTc4Yzg3NGEzMjM3NTMKK0F1dGhvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitEYXRlOiAgIEZyaSBNYXIgMjcgMTg6MjE6MDcgMjAwOSArMDEwMAorCisgICAgVXBkYXRlIGdlcm1hbiB0cmFuc2xhdGlvbiBvZiBtYW51YWwgcGFnZXMKKyAgICAKKyAgICBVcGRhdGUgdG8gMTYzNXQ2ZjE2dS4KKworIG1hbi9wby9kZS5wbyB8ICAgMzUgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDMzIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBjMWI5YTNlMmIxZGRmYzk3ZGVlZmI4MTJjNjY4OWFkNmIzNjI5ZjQ2CitBdXRob3I6IFBldGVyIEtyZWZ0aW5nIDxwZXRlckBzb2Z0d29sdmVzLnBwLnNlPgorRGF0ZTogICBTdW4gTWFyIDIyIDE1OjEyOjEyIDIwMDkgKzAxMDAKKworICAgIEZpeGVkIHR5cG8gYW5kIGluY29ycmVjdCB0cmFuc2xhdGlvbiBpbiB0aGUgZHBrZy1kZXYgdHJhbnNsYXRpb24uCisgICAgCisgICAgU3BvdHRlZCBieSBEYW5pZWwgTnlsYW5kZXIuCisKKyBzY3JpcHRzL3BvL3N2LnBvIHwgICAgNiArKystLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworY29tbWl0IGQ4MGQ2OTU4YTIwZjM2NjRiN2JiMGVmNDlmNWZlNWI4MDU2ODM2ZTYKK0F1dGhvcjogUmFwaGFlbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBNYXIgMjIgMTE6NDU6MTAgMjAwOSArMDEwMAorCisgICAgZHBrZzogcmVmdXNlcyBlbXB0eSBwYXJhbWV0ZXJzIHdoZW4gaW50ZWdlciBleHBlY3RlZAorICAgIAorICAgIEZpeCBzZXRpbnRlZ2VyKCkgZnVudGlvbiB1c2VkIGZvciBwYXJzaW5nIGludGVnZXIgb3B0aW9ucyB0bworICAgIHJlZnVzZSBlbXB0eSBwYXJhbWV0ZXJzLiBDdXJyZW50bHkgb25seSBhZmZlY3RzIC0tYWJvcnQtYWZ0ZXIuCisgICAgCisgICAgQmFzZWQtb24tcGF0Y2gtYnk6IEJpbGwgQWxsb21iZXJ0IDxiYWxsb21iZUBkZWJpYW4ub3JnPgorCisgVEhBTktTICAgICAgICAgICB8ICAgIDEgKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAyICsrCisgc3JjL21haW4uYyAgICAgICB8ICAgIDIgKy0KKyAzIGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDVkZGFlMGUzNjQwMmM4Njk0ZWQ2M2I3Y2FmNTAxOGUzMTExMjkwNDcKK0F1dGhvcjogQmlsbCBBbGxvbWJlcnQgPGJhbGxvbWJlQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBNYXIgMjIgMTI6MjI6MjIgMjAwOSArMDEwMAorCisgICAgZHBrZzogc2VwYXJhdGUgYXJndW1lbnRzIHdpdGggIi0tIiB3aGVuIGNhbGxpbmcgZHBrZy17ZGViLHF1ZXJ5fQorICAgIAorICAgIFRoaXMgaXMgbmVlZGVkIGJlY2F1c2UgYW55IHVzZXItc3VwcGxpZWQgYXJndW1lbnQgc2VwYXJhdG9yIGlzIHN0cmlwcGVkIGJ5CisgICAgdGhlIG9wdGlvbiBwYXJzZXIgc3VjaCBhcyAiZHBrZyAtUyAtLSAtcGljIiBlbmRzIHVwIGNhbGxpbmcgImRwa2ctcXVlcnkKKyAgICAtLXNlYXJjaCAtcGljIiB3aGljaCBmYWlscy4gV2l0aCB0aGlzIHBhdGNoLCBpdCBjYWxscyAiZHBrZy1xdWVyeSAtLXNlYXJjaAorICAgIC0tIC1waWMiIGFuZCB3b3JrcyBhcyBleHBlY3RlZC4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICA1ICsrKysrCisgc3JjL21haW4uYyAgICAgICB8ICAgIDcgKysrKysrLQorIDIgZmlsZXMgY2hhbmdlZCwgMTEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGNiNDI4ODYzNjcyOGRmMmE5MTg3ZDA0MmVlYThmNTdmMjQ3OTBkMjkKK0F1dGhvcjogUmFwaGFlbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFNhdCBNYXIgMjEgMTg6MDU6MDMgMjAwOSArMDEwMAorCisgICAgU21hbGwgZml4ZXMgc28gdGhhdCBhIGJ1aWxkIGZyb20gYSBjbGVhbiBjaGVja291dCB3b3JrcyBhZ2FpbgorICAgIAorICAgIFJlbW92ZSBvcmlnaW4vTWFrZWZpbGUgZnJvbSBjb25maWd1cmUuYWMuCisgICAgCisgICAgRml4IGRlYmlhbi9ydWxlcyBzbyB0aGF0IGl0IHdvcmtzIGV2ZW4gaWYgdGhlIGF1dG8tZ2VuZXJhdGVkIENoYW5nZUxvZyBpcworICAgIG5vdCB0aGVyZSB5ZXQuCisgICAgCisgICAgUmVwb3J0ZWQtYnk6IEJpbGwgQWxsb21iZXJ0IDxCaWxsLkFsbG9tYmVydEBtYXRoLnUtYm9yZGVhdXgxLmZyPgorCisgY29uZmlndXJlLmFjIHwgICAgMSAtCisgZGViaWFuL3J1bGVzIHwgICAgNCArKy0tCisgMiBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBjM2U2YjZkZmRiMTBkNTg4MzMzMGZhMzE0YzBkZjdkODVkNzkwNWQwCitBdXRob3I6IENocmlzdGlhbiBQZXJyaWVyIDxidWJ1bGxlQGRlYmlhbi5vcmc+CitEYXRlOiAgIFRodSBNYXIgMTkgMTk6NDU6MzAgMjAwOSArMDEwMAorCisgICAgUmV2aWV3ZWQgYnkgU3TDqXBoYW5lIEJsb25kb24uIERyb3Agam9rZS4uLgorCisgcG8vZnIucG8gfCAgICA4ICsrKystLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA5ODFjY2JmMzlhMWI5MDNkNWM3ZGZjMDU2YjE1YmZlNGRjNTYzYjk2CitBdXRob3I6IENocmlzdGlhbiBQZXJyaWVyIDxidWJ1bGxlQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBNYXIgMTggMjA6MTM6MDEgMjAwOSArMDEwMAorCisgICAgRnJlbmNoIHRyYW5zbGF0aW9uIGNvbXBsZXRlZAorCisgcG8vZnIucG8gfCAgMzc4ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyMzMgaW5zZXJ0aW9ucygrKSwgMTQ1IGRlbGV0aW9ucygtKQorCitjb21taXQgZGQ5NzdiYzBlY2I2YWQ5ZThiOGU3MjdlNGFhNmFhYWJlYTA0NDU3YQorQXV0aG9yOiBDeXJpbCBCcnVsZWJvaXMgPGtpYmlAZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIE1hciAxOCAxOTo1MDoyMyAyMDA5ICswMTAwCisKKyAgICBGaXggYW5vdGhlciB0eXBvLgorCisgbWFuL3BvL2ZyLnBvIHwgICAgNCArKy0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA5YjU4NWE0NjA3YmY2YWE5N2Q1NDdlMmFmZDU1OWRlOWI5MTI5OTkxCitBdXRob3I6IEN5cmlsIEJydWxlYm9pcyA8a2liaUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgTWFyIDE4IDE5OjQ5OjA2IDIwMDkgKzAxMDAKKworICAgIEZpeCBhbm90aGVyIHR5cG8uCisKKyBtYW4vcG8vZnIucG8gfCAgICAyICstCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA4YWVhNzE2YzczNGU0MmI4MDlkNTE0NmE2Y2RhZDg2MzY2MmJkY2Q1CitBdXRob3I6IEN5cmlsIEJydWxlYm9pcyA8a2liaUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgTWFyIDE4IDE5OjQ4OjI4IDIwMDkgKzAxMDAKKworICAgICpQb3NzaWJseSogZml4IGFub3RoZXIgdHlwby4KKworIG1hbi9wby9mci5wbyB8ICAgIDIgKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDg5MzljZTMyNWM4Y2Q1ZTFiYTQyYjhhYThkZDczNzU2ODQzZDM4ODIKK0F1dGhvcjogQ3lyaWwgQnJ1bGVib2lzIDxraWJpQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBNYXIgMTggMTk6NDc6NDQgMjAwOSArMDEwMAorCisgICAgQW5vdGhlciB3cmFwcGluZyBwcm9ibGVtLgorCisgbWFuL3BvL2ZyLnBvIHwgICAgNCArKy0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBkMWY1ZWE5MDFjODI5YmFkMGJjNGM3NWI2ZjVjMWIyODU0YmQyOWFlCitBdXRob3I6IEN5cmlsIEJydWxlYm9pcyA8a2liaUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgTWFyIDE4IDE5OjQ3OjAyIDIwMDkgKzAxMDAKKworICAgIEZpeCB0eXBvcy4KKworIG1hbi9wby9mci5wbyB8ICAgIDYgKysrLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyY2I4Mzc0ZDQ3ZjM5MzkxMWZlNTg0M2E3NWE4ZmFhNGQyYWJkODViCitBdXRob3I6IEN5cmlsIEJydWxlYm9pcyA8a2liaUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgTWFyIDE4IDE5OjQ2OjE5IDIwMDkgKzAxMDAKKworICAgIEZpeCB0eXBvIGluIGEgRnJlbmNoIG1hbnBhZ2UuCisKKyBtYW4vcG8vZnIucG8gfCAgICAyICstCisgMSBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBlMTU0ZTkwOTc4MWQzYjI2NmJkNzQ2YzhlNzdiMWRkNjk2NzkzNGI4CitBdXRob3I6IEN5cmlsIEJydWxlYm9pcyA8a2liaUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgTWFyIDE4IDAyOjAyOjU2IDIwMDkgKzAxMDAKKworICAgIEZpeCB0eXBvcy4KKworIG1hbi9wby9mci5wbyB8ICAgIDIgKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IDE2ZWQzZTU3M2UxYzkyMzNhMzM2NmVhMjYyYmVhN2E4NzFjNzM3ZTcKK0F1dGhvcjogQ3lyaWwgQnJ1bGVib2lzIDxraWJpQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBNYXIgMTggMDI6MDI6NTUgMjAwOSArMDEwMAorCisgICAgKlBvc3NpYmx5KiBmaXggYW5vdGhlciB0eXBvLgorCisgbWFuL3BvL2ZyLnBvIHwgICAgMiArLQorIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgZTNmNzJiNmQyZmVlZGNmOTVhYWYwMDQ1M2ZiMGE1MmU1Y2Y1OTY4ZQorQXV0aG9yOiBDeXJpbCBCcnVsZWJvaXMgPGtpYmlAZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIE1hciAxOCAwMjowMjo1MyAyMDA5ICswMTAwCisKKyAgICBGaXggdHlwby4KKworIG1hbi9wby9mci5wbyB8ICAgIDIgKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGQwYjc0OTc4MWI4YzcwZjg1M2UxMzM1OWUyODcwNzM4MDk5MDZlMjkKK0F1dGhvcjogQ3lyaWwgQnJ1bGVib2lzIDxraWJpQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBNYXIgMTggMDI6MDI6NTAgMjAwOSArMDEwMAorCisgICAgQWRvcHQgYW5vdGhlciBzdHlsZS4KKworIG1hbi9wby9mci5wbyB8ICAgMTIgKysrKysrLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA2IGluc2VydGlvbnMoKyksIDYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA2MmVkZjJiNTYxM2U3MzM2NGIxMDZiZTJmOTAyZDNjODUwY2U0YjNkCitBdXRob3I6IEN5cmlsIEJydWxlYm9pcyA8a2liaUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgTWFyIDE4IDAyOjAyOjQ3IDIwMDkgKzAxMDAKKworICAgIFJlcGhyYXNlIHNvbWUgYml0cyAoa2luZCBvZiDigJx0b28gbXVjaOKAnSkgaW4gYSBGcmVuY2ggbWFucGFnZS4KKworIG1hbi9wby9mci5wbyB8ICAgIDQgKystLQorIDEgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgNmRiYTlkNmQxNzhkZjQ1Mjk5Mjg5NzhjNzA5OTExYjE1ZmRmYTczMworQXV0aG9yOiBDeXJpbCBCcnVsZWJvaXMgPGtpYmlAZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIE1hciAxOCAwMjowMjo0NiAyMDA5ICswMTAwCisKKyAgICBXb3JrYXJvdW5kIHJlbmRlcmluZyBidWcgaW4gYSBGcmVuY2ggbWFucGFnZS4KKyAgICAKKyAgICBOb24tYnJlYWtpbmcgc3BhY2VzIHNlZW0gbm90IHRvIGJlIHRha2VuIGludG8gYWNjb3VudCB3aGVuIHRoZSBQTy1maWxlCisgICAgbGluZXMgYXJlIHdyYXBwZWQuIFRyeSBhbmQgcmVmb3JtYXQgaW4gYW5vdGhlciB3YXkuCisKKyBtYW4vcG8vZnIucG8gfCAgIDEwICsrKysrLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDUgaW5zZXJ0aW9ucygrKSwgNSBkZWxldGlvbnMoLSkKKworY29tbWl0IGEyMGY5MjBmYTQxNmE4YzI0OTNiNzhmNmE3ZDI3Nzk4MzFiOWU5NTcKK0F1dGhvcjogQ3lyaWwgQnJ1bGVib2lzIDxraWJpQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBNYXIgMTggMDI6MDI6NDUgMjAwOSArMDEwMAorCisgICAgRml4IHR5cG8gaW4gYSBGcmVuY2ggbWFucGFnZS4KKworIG1hbi9wby9mci5wbyB8ICAgIDIgKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGQxNDVlNGU3OTkwZThhY2YwOTBhMzc2NmNiNjAwOGY3MDQ3NWY0MjUKK0F1dGhvcjogQ2hyaXN0aWFuIFBlcnJpZXIgPGJ1YnVsbGVAZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIE1hciAxNyAyMjoxMzo0NyAyMDA5ICswMTAwCisKKyAgICBGcmVuY2ggdHJhbnNsYXRpb24gdXBkYXRlCisKKyBwby9mci5wbyB8ICA0MjAgKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDE2MyBpbnNlcnRpb25zKCspLCAyNTcgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA4MDcxNjI1N2ZmYjk2NzRkNzhhNjA2ZmU3ZjhlNWIwMzVkMWRmZGYzCitBdXRob3I6IE1hcmNvcyA8bWFyY29zLmFsdmFyZXouY29zdGFsZXNAZ21haWwuY29tPgorRGF0ZTogICBUdWUgTWFyIDE3IDA3OjEyOjIxIDIwMDkgKzAxMDAKKworICAgIENvbXBsZXRlZCBBc3R1cmlhbiB0cmFuc2xhdGlvbgorICAgIAorICAgIENsb3NlczogIzUxOTk5OAorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDIgKy0KKyBwby9hc3QucG8gICAgICAgIHwgICAxMiArKysrKystLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDcgaW5zZXJ0aW9ucygrKSwgNyBkZWxldGlvbnMoLSkKKworY29tbWl0IGQ4YzQ3YjliN2RkZDYwYjc0ZmI4YTUwMmY0NTAwMDA2OGM0NjY5ZjgKK0F1dGhvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitEYXRlOiAgIFR1ZSBNYXIgMTcgMjI6MTM6MDAgMjAwOSArMDEwMAorCisgICAgVXBkYXRlIGdlcm1hbiB0cmFuc2xhdGlvbiBvZiBtYW51YWwgcGFnZXMKKyAgICAKKyAgICBVcGRhdGUgdG8gMTYyNnQ2ZjI1dS4KKworIG1hbi9wby9kZS5wbyB8ICAxNzUgKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCA4MCBpbnNlcnRpb25zKCspLCA5NSBkZWxldGlvbnMoLSkKKworY29tbWl0IDliNTI1NjI5ZDViMzE4MjQ2YTRiOGNmYjM1MmZkZjNkMTNkMDhhZmMKK0F1dGhvcjogU3ZlbiBKb2FjaGltIDxzdmVuam9hY0BnbXguZGU+CitEYXRlOiAgIFR1ZSBNYXIgMTcgMjE6NDM6MjYgMjAwOSArMDEwMAorCisgICAgQWRkIGRlYmlhbi9jaGFuZ2Vsb2cgZW50cnkgZm9yIHRoZSBHZXJtYW4gZHBrZyB0cmFuc2xhdGlvbiB1cGRhdGUKKyAgICAKKyAgICBCcmluZyB0cmFuc2xhdGlvbiB1cGRhdGVzIGJhY2sgaW50byBhbHBoYWJldGljYWwgb3JkZXIuCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgNSArKystLQorIDEgZmlsZXMgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgNjljMDAzNzU5YWI2ZDhiNTM4MDYyNzA1YjJkYTdhNDcxNGIwNGUxNgorQXV0aG9yOiBTdmVuIEpvYWNoaW0gPHN2ZW5qb2FjQGdteC5kZT4KK0RhdGU6ICAgVHVlIE1hciAxNyAyMTozNDozNiAyMDA5ICswMTAwCisKKyAgICBVcGRhdGUgR2VybWFuIGRwa2cgdHJhbnNsYXRpb24KKyAgICAKKyAgICBVcGRhdGUgdG8gMTAwMXQxMWYuCisKKyBwby9kZS5wbyB8ICA1NjUgKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDI1MSBpbnNlcnRpb25zKCspLCAzMTQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBlZDRlMDRjY2VmOTk2ZDVlZjcxNWZjOWMxZGE1ZGE2Y2E5ZmEzNzJmCitBdXRob3I6IFJhcGhhZWwgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBUdWUgTWFyIDE3IDE4OjQ0OjEyIDIwMDkgKzAxMDAKKworICAgIGRwa2ctc2hsaWJkZXBzOiBpbXByb3ZlIGRlYnVnIG1lc3NhZ2VzIGRpc3BsYXllZCBpbiB2ZXJib3NlIG1vZGUKKworIHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGwgfCAgIDE4ICsrKysrKysrKysrKystLS0tLQorIDEgZmlsZXMgY2hhbmdlZCwgMTMgaW5zZXJ0aW9ucygrKSwgNSBkZWxldGlvbnMoLSkKKworY29tbWl0IDAyZTNkZTJmMWQ2ODdiMTlkMzA1Zjc2MjNlMDg3NDJmNjg5NmFlN2EKK0F1dGhvcjogUmFwaGFlbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFR1ZSBNYXIgMTcgMTY6NTE6NDQgMjAwOSArMDEwMAorCisgICAgZHBrZy1zaGxpYmRlcHM6IGZpeCBjb2RlIHRvIGZpbmQgb3V0IG1pbmltYWwgdmVyc2lvbiBhbW9uZyBhbGwgc3ltYm9scworICAgIAorICAgIGRwa2ctc2hsaWJkZXBzIGRpZCBub3QgYWx3YXlzIGNvcnJlY3RseSBpbml0aWFsaXplIHN5bWJvbC1iYXNlZAorICAgIGRlcGVuZGVuY2llcyBmb3IgbGlicmFyaWVzIGhhdmluZyBzeW1ib2xzIGFzc29jaWF0ZWQgd2l0aCBhIHZlcnNpb24gIjAiLgorICAgIAorICAgIOKAnCRtaW52ZXIgfHw9ICRzeW0tPnttaW52ZXJ9O+KAnSBjaGFuZ2VkICRtaW52ZXIgdG8gdGhlIGZpcnN0IG5vbi1udWxsIHZlcnNpb24KKyAgICB0aGF0IGZvbGxvd2VkIGEgbnVsbCB2ZXJzaW9uLiBCZWNhdXNlIHRoZSBudWxsIHZlcnNpb24gaXMgZXZpZGVudGx5CisgICAgc2VsZWN0ZWQgYXMgdGhlIG1pbmltYWwgdmVyc2lvbiBidXQgdGhhdCBjb2RlIGNvbnNpZGVycyBpdCB1bnNldCBhbmQKKyAgICByZXBsYWNlcyBpdCB3aXRoIHdoYXRldmVyIGl0IGhhcy4KKyAgICAKKyAgICBBZGQgYSBub24tcmVncmVzc2lvbiB0ZXN0IGZvciB0aGlzIHBhcnQgb2YgdGhlIGNvZGUuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNCArKysrCisgc2NyaXB0cy9EcGtnL1NobGlicy9TeW1ib2xGaWxlLnBtICAgICAgICAgICB8ICAgIDIgKy0KKyBzY3JpcHRzL3QvMjAwX0Rwa2dfU2hsaWJzLnQgICAgICAgICAgICAgICAgIHwgICAxMiArKysrKysrKystLS0KKyBzY3JpcHRzL3QvMjAwX0Rwa2dfU2hsaWJzL3N5bWJvbHMuZmFrZS0yICAgIHwgICAgMiArLQorIHNjcmlwdHMvdC8yMDBfRHBrZ19TaGxpYnMvc3ltYm9scy5pbmNsdWRlLTEgfCAgICAyICstCisgNSBmaWxlcyBjaGFuZ2VkLCAxNiBpbnNlcnRpb25zKCspLCA2IGRlbGV0aW9ucygtKQorCitjb21taXQgNGVhZjVkZTM2NzU4MWMyYTNjZjNkZWJhZmJjMjFlMDcyYTUxOWVmMgorQXV0aG9yOiBSYXBoYWVsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIE1hciAxNiAxODo1NDowNSAyMDA5ICswMTAwCisKKyAgICBEcm9wIC9ldGMvZHBrZy9vcmlnaW5zIGFzIGl0J3MgdGFrZW4gb3ZlciBieSBiYXNlLWZpbGVzIChzZWUgIzQ4NzQzNykKKworIE1ha2VmaWxlLmFtICAgICAgICAgICAgICAgICAgIHwgICAgMSAtCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICAgfCAgICAxICsKKyBkZWJpYW4vZHBrZy5pbnN0YWxsICAgICAgICAgICB8ICAgIDEgLQorIGRlYmlhbi9kcGtnLmxpbnRpYW4tb3ZlcnJpZGVzIHwgICAgMSAtCisgb3JpZ2lucy9NYWtlZmlsZS5hbSAgICAgICAgICAgfCAgIDEwIC0tLS0tLS0tLS0KKyBvcmlnaW5zL2RlYmlhbiAgICAgICAgICAgICAgICB8ICAgIDMgLS0tCisgNiBmaWxlcyBjaGFuZ2VkLCAxIGluc2VydGlvbnMoKyksIDE2IGRlbGV0aW9ucygtKQorCitjb21taXQgNWJhZGQ2ZDcxNjVkMmFjMDRiN2I0YjQ3ZDFjMzc5ODZmMzNkNTUyOAorQXV0aG9yOiBSYXBoYWVsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIE1hciAxNiAxMToxMjowMCAyMDA5ICswMTAwCisKKyAgICBEcGtnOjpEZXBzOiByZWZ1c2UgdG8gcGFyc2UgT1JlZCBkZXBzIG9ubHkgd2hlbiB1bmlvbiBkZXBzIGFyZSByZXF1ZXN0ZWQKKyAgICAKKyAgICBUaGlzIHdhcyB0aGUgaW50ZW5kZWQgYmVoYXZpb3VyIHdoZW4gdGhhdCBjaGFuZ2Ugd2FzIG1hZGUKKyAgICBpbiBmNjVlOWM5YTJlNTIxZTMyYjBkZTZhOTYzYWIxZTU4NzkwMDAxMzY2LgorCisgc2NyaXB0cy9EcGtnL0RlcHMucG0gfCAgICA0ICsrLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDIyZjJlYTI2ZDdiODQ4YTlkYzhiNjZhOWM4ZmEyNjRmNWFhMjliNzQKK0F1dGhvcjogUmFwaGFlbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBNYXIgMTYgMTE6MDA6MTYgMjAwOSArMDEwMAorCisgICAgZHBrZy1idWlsZHBhY2thZ2U6IGFkZCBiYWNrIGFuIGVycm9uZW91c2x5IHJlbW92ZWQgdXNlIHN0YXRlbWVudAorICAgIAorICAgIOKAnHVzZSBEcGtnOjpWZXJzaW9uIHF3KGNoZWNrX3ZlcnNpb24pO+KAnSBzaG91bGQgbm90IGhhdmUgYmVlbiByZW1vdmVkCisgICAgaW4gdGhpcyBmaWxlLgorCisgc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbCB8ICAgIDEgKworIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgZjFkM2YyZGFlNjU4MWQwNDc0M2ZhNDg3N2Y3OGQ0NGJlNjY1MDJkZgorQXV0aG9yOiBSYXBoYWVsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIE1hciAxNiAxMDo1NDowNSAyMDA5ICswMTAwCisKKyAgICBEcGtnOjpJUEM6IGFkZCBzYW5pdHkgY2hlY2sgZm9yIHRpbWVvdXQgcGFyYW1ldGVyIGFuZCBhIG5vbi1yZWdyZXNzaW9uIHRlc3QKKworIHNjcmlwdHMvRHBrZy9JUEMucG0gICAgICB8ICAgIDUgKysrKysKKyBzY3JpcHRzL3QvODAwX0Rwa2dfSVBDLnQgfCAgIDEyICsrKysrKysrKystLQorIDIgZmlsZXMgY2hhbmdlZCwgMTUgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDViMDAyNDM0OWRkYmZlZmRjZDQ1ZmQ5MzgyY2MxMTMyMzRiYTBmMzkKK0F1dGhvcjogUmFwaGFlbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBNYXIgMTUgMjI6MTU6NDEgMjAwOSArMDEwMAorCisgICAgZHBrZy1zb3VyY2U6IHN3aXRjaCB0byBzdGFuZGFyZCBpbmZvKCkgZnVuY3Rpb24gZm9yIG91dHB1dAorICAgIAorICAgIEFsbCBidWlsZGQgc2hvdWxkIHVzZSBhbiB1cGRhdGVkIHNidWlsZCBieSBub3csIHdlIGNhbiB1cGRhdGUgdGhlCisgICAgZm9ybWF0IG9mIGRwa2ctc291cmNlJ3Mgb3V0cHV0IHdpdGhvdXQgcHJvYmxlbXMuCisKKyBzY3JpcHRzL2Rwa2ctc291cmNlLnBsIHwgICAgNiArLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgNSBkZWxldGlvbnMoLSkKKworY29tbWl0IDdkN2EzMmIzNjc5MWJhOWM0NTg5MzBjNTM3ODc1YzMyZTllM2E1N2MKK0F1dGhvcjogUmFwaGFlbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBNYXIgMTUgMjI6MTE6NDMgMjAwOSArMDEwMAorCisgICAgTWlzYyB1cGRhdGVzIGNvbmNlcm5pbmcgZ3BnIGFuZCBkcGtnLXNvdXJjZQorICAgIAorICAgICogQWx3YXlzIGRpc3BsYXkgYSB3YXJuaW5nIHdoZW4gdGhlIHNpZ25hdHVyZSB2ZXJpZmljYXRpb24gZmFpbGVkLgorICAgICogVXBkYXRlIHRoZSBkcGtnLXNvdXJjZSdzIG1hbnVhbCBwYWdlIHRvIGRvY3VtZW50IHRoYXQgb25seSB0aGUgdXNlcidzCisgICAgICB0cnVzdGVka2V5cy5ncGcga2V5cmluZyBpcyB1c2VkIGZvciBzaWduYXR1cmUgdmVyaWZpY2F0aW9uLgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICAgIHwgICAgMiArKworIG1hbi9kcGtnLXNvdXJjZS4xICAgICAgICAgICAgICB8ICAgIDMgKystCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtIHwgICAgMiArKworIDMgZmlsZXMgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgMDk3MjFjNDM3ODc3YWZkMTU0OWIxMDI4YzRmODMwODk4ZGI2YzU3ZQorQXV0aG9yOiBSYXBoYWVsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIE1hciAxNSAyMTo1MzoxNCAyMDA5ICswMTAwCisKKyAgICBVcGRhdGUgZHBrZy1kZXYgZGVwZW5kZW5jaWVzCisgICAgCisgICAgLSBNb3ZlIGdudXBnIHRvIFJlY29tbWVuZHMuIEl0J3MgbmVlZGVkIHRvIHNpZ24gLmRzYyBhbmQgLmNoYW5nZXMuCisgICAgLSBBZGQgZ3BndiB0byBSZWNvbW1lbmRzLiBVc2VmdWwgdG8gY2hlY2sgc2lnbmF0dXJlcyBvZiBleHRyYWN0ZWQgcGFja2FnZXMuCisgICAgLSBBZGQgZGViaWFuLW1haW50YWluZXJzIHRvIFN1Z2dlc3RzLiBUb2dldGhlciB3aXRoIGRlYmlhbi1rZXlyaW5nIHRoZXkKKyAgICAgIGNvbnRhaW4gYWxsIHRoZSBHUEcga2V5cyByZXF1aXJlZCB0byB2ZXJpZnkgb2ZmaWNpYWwgRGViaWFuIHBhY2thZ2VzLgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDUgKysrKysKKyBkZWJpYW4vY29udHJvbCAgIHwgICAgNCArKy0tCisgMiBmaWxlcyBjaGFuZ2VkLCA3IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBlYjIzZWExMmM0NTk5ZWM5M2M5YzVlMjE5MjlhNWRkOTY2OTkxYmI3CitBdXRob3I6IFJhcGhhZWwgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gTWFyIDE1IDIxOjQ0OjA5IDIwMDkgKzAxMDAKKworICAgIGRwa2ctc291cmNlOiBkb24ndCBibG9jayBpbmRlZmluaXRlbHkgb24gZ3BnCisgICAgCisgICAgZHBrZy1zb3VyY2UncyBzaWduYXR1cmUgY2hlY2sgaXMgbm93IGRvbmUgd2l0aCBncGd2IGlmIHBvc3NpYmxlIGFuZAorICAgIHRpbWVvdXRzIGlmIG5vdCBjb21wbGV0ZWQgd2l0aGluIDEwIHNlY29uZHMuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICAgfCAgICAyICsrCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtIHwgICAxMiArKysrKysrKystLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDExIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBlZWNkMjAwYTdhYTUxMDU4Yzk1MDM0NWU2MDA5MmM3ZmRkMGVjMWUyCitBdXRob3I6IFJhcGhhZWwgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gTWFyIDE1IDIxOjE0OjE4IDIwMDkgKzAxMDAKKworICAgIERwa2c6OklQQzogaW1wbGVtZW50IHRpbWVvdXQgZm9yIHN1YnByb2Nlc3NlcworICAgIAorICAgIEFkZCBhIG5ldyBvcHRpb24gdGltZW91dCBmb3IgRHBrZzo6SVBDOjp3YWl0X2NoaWxkKCkuIEl0IGltcGxlbWVudHMKKyAgICBhbiBhbGFybSgpIGJhc2VkIHRpbWVvdXQgZm9yIHN1YnByb2Nlc3NlcyBhbmQgYWxsb3dzIHVzIHRvCisgICAgZmFpbCBpZiBzb21lIHByb2Nlc3NlcyBkbyBub3QgcmV0dXJuIGFzIGV4cGVjdGVkLgorCisgc2NyaXB0cy9EcGtnL0lQQy5wbSB8ICAgMzAgKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAyNiBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQorCitjb21taXQgZmU2N2UyOWYxNzY3ODY3ODA5MWUyYmEzMThkNGVjOGMwZTZiZWY0NworQXV0aG9yOiBSYXBoYWVsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIE1hciAxNSAyMToxMzozNCAyMDA5ICswMTAwCisKKyAgICBMZXQgZ2l0IGlnbm9yZSB2aW0gc3dhcCBmaWxlcworCisgLmdpdGlnbm9yZSB8ICAgIDEgKworIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgZjY1ZTljOWEyZTUyMWUzMmIwZGU2YTk2M2FiMWU1ODc5MDAwMTM2NgorQXV0aG9yOiBSYXBoYWVsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIE1hciAxNSAxOTozNDoxNyAyMDA5ICswMTAwCisKKyAgICBkcGtnLWdlbmNvbnRyb2w6IGltcHJvdmUgZXJyb3IgbWVzc2FnZSB3aXRoIGEgYmFkIHVuaW9uIGRlcGVuZGVuY3kKKyAgICAKKyAgICBkcGtnLWdlbmNvbnRyb2wgZGlzcGxheXMgYSBiZXR0ZXIgZXJyb3IgbWVzc2FnZSB3aGVuIGFuIE9SZWQgZGVwZW5kZW5jeQorICAgIGlzIHVzZWQgaW4gYSB1bmlvbiBmaWVsZCBsaWtlIENvbmZsaWN0cywgUmVwbGFjZXMgb3IgQnJlYWtzLgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgfCAgICAzICsrKworIHNjcmlwdHMvRHBrZy9EZXBzLnBtICAgICAgIHwgICAgOCArKysrKysrLQorIHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsIHwgICAgNiArKysrLS0KKyAzIGZpbGVzIGNoYW5nZWQsIDE0IGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBhY2I5YjZlOWYyMGVlYzlkMzc5OWI1MGNiMTdjMmUxOTJjNDdjNjkyCitBdXRob3I6IFJhcGhhZWwgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gTWFyIDE1IDE4OjU1OjAzIDIwMDkgKzAxMDAKKworICAgIGRwa2ctc291cmNlOiBpbXByb3ZlIGlnbm9yZSByZWdleHAgdG8gY2F0Y2ggdmkgc3dhcCBmaWxlcworICAgIAorICAgIGRwa2ctc291cmNlIG5vdyBpZ25vcmVzIGFsbCBwb3NzaWJsZSB2aSBzd2FwIGZpbGUgZXh0ZW5zaW9ucyAoYW5kIG5vdCBvbmx5CisgICAgLnN3cCkuIFRoZSBjb3JyZXNwb25kaW5nIGV4Y2x1ZGUgcGF0dGVybiBmb3IgLUkgYWxzbyBnb3QgdGlnaHRlbmVkIHRvIG9ubHkKKyAgICBjYXRjaCBmaWxlbmFtZXMgc3RhcnRpbmcgd2l0aCBhIGRvdC4gQ2xvc2VzOiAjNTE1NTQwCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICAgICAgfCAgICAzICsrKworIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbSB8ICAgIDQgKystLQorIDIgZmlsZXMgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQorCitjb21taXQgZWRiYmQxOGRmMDM2Mjg0MDdmM2QzNjI4ZDBlNDkwMTRkYmM5YmE0OAorQXV0aG9yOiBSYXBoYWVsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIE1hciAxNSAxODoxODo0NCAyMDA5ICswMTAwCisKKyAgICBEcGtnOjpWZXJzaW9uOjpjaGVja192ZXJzaW9uKCkgc2hvdWxkIG5vdCBkaWUgYnkgZGVmYXVsdAorICAgIAorICAgIEFkZCBhIG5ldyBwYXJhbWV0ZXIgdG8gRHBrZzo6VmVyc2lvbjo6Y2hlY2tfdmVyc2lvbigpIHRvIGNvbnRyb2wgd2hldGhlcgorICAgIHdlIHNob3VsZCBkaWUgaW4gY2FzZSBvZiBpbGxlZ2FsIHZlcnNpb24uCisgICAgCisgICAgVXBkYXRlIGFsbCBjaGVja192ZXJzaW9uKCkgY2FsbHMgdG8gcGFzcyB0aGlzIHBhcmFtZXRlciBhbmQgZmFjdG9yaXplIHNvbWUKKyAgICBkdXBsaWNhdGUgY2FsbHMgaW4gRHBrZzo6U291cmNlOjpQYWNrYWdlOjoqIHdpdGggYSBzaW5nbGUgY2hlY2sgaW4KKyAgICB0aGUgcGFyZW50IGNsYXNzIERwa2c6OlNvdXJjZTo6UGFja2FnZS4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgICAgICAgICAgICAgfCAgICAyICsrCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtICAgICAgICB8ICAgIDQgKysrLQorIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbSAgICAgfCAgICAzIC0tLQorIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbSAgICAgfCAgICAzIC0tLQorIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9ienIucG0gfCAgICAzIC0tLQorIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9naXQucG0gfCAgICAzIC0tLQorIHNjcmlwdHMvRHBrZy9WZXJzaW9uLnBtICAgICAgICAgICAgICAgfCAgIDIwICsrKysrKysrKysrKysrLS0tLS0tCisgc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbCAgICAgICAgICB8ICAgIDMgKy0tCisgc2NyaXB0cy9kcGtnLXNvdXJjZS5wbCAgICAgICAgICAgICAgICB8ICAgIDIgKy0KKyA5IGZpbGVzIGNoYW5nZWQsIDIxIGluc2VydGlvbnMoKyksIDIyIGRlbGV0aW9ucygtKQorCitjb21taXQgNjQ2Yzg4NzY2MDkwNzJhZjdmNDU2YTc4YjA0NmIwNDMyZTJjNDRkMQorQXV0aG9yOiBDaHJpc3RpYW4gUGVycmllciA8YnVidWxsZUBkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gTWFyIDE1IDE1OjI4OjUzIDIwMDkgKzAxMDAKKworICAgIENvbXBsZXRlZCBBc3R1cmlhbiB0cmFuc2xhdGlvbgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDIgKy0KKyBwby9hc3QucG8gICAgICAgIHwgIDgwNyArKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDI4NyBpbnNlcnRpb25zKCspLCA1MjIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA5NTIwYTg5MGMyNDU5MTg2ZGRjNzEzN2QxMTliNTBjZmExY2YxZTQwCitBdXRob3I6IENocmlzdGlhbiBQZXJyaWVyIDxidWJ1bGxlQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBNYXIgMTUgMTQ6NDQ6MTUgMjAwOSArMDEwMAorCisgICAgUGFydGlhbCBGcmVuY2ggdHJhbnNsYXRpb24gdXBkYXRlCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMSArCisgcG8vZnIucG8gICAgICAgICB8ICA0NzkgKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgMiBmaWxlcyBjaGFuZ2VkLCAyMjEgaW5zZXJ0aW9ucygrKSwgMjU5IGRlbGV0aW9ucygtKQorCitjb21taXQgNGY3NjFkODljODRjZWUxOGUxNmRhNDcyZGFlYTM4NzY5ZmJjY2UwZQorQXV0aG9yOiBSYXBoYWVsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIE1hciAxNSAxMDo0OTo1MiAyMDA5ICswMTAwCisKKyAgICBkcGtnLWdlbmNoYW5nZXMsIGRwa2ctZ2VuY29udHJvbDogYXZvaWQgcGVybCB3YXJuaW5ncworICAgIAorICAgIEZpeCBkcGtnLWdlbmNoYW5nZXMgYW5kIGRwa2ctZ2VuY29udHJvbCB0byBub3QgdHJpZ2dlciBwZXJsIHdhcm5pbmdzCisgICAgd2hlbiB0aGUgQXJjaGl0ZWN0dXJlIGZpZWxkIGlzIG1pc3NpbmcuCisKKyBkZWJpYW4vY2hhbmdlbG9nICAgICAgICAgICB8ICAgIDIgKysKKyBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbCB8ICAgIDIgKy0KKyBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbCB8ICAgIDYgKysrLS0tCisgMyBmaWxlcyBjaGFuZ2VkLCA2IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBiMDJlODc0NTdjZWI5Yzg0OTkxNTE4MDAzNGI5MjQ3ZDBjMjI4ZGY4CitBdXRob3I6IFJhcGhhZWwgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBTdW4gTWFyIDE1IDEwOjMwOjI2IDIwMDkgKzAxMDAKKworICAgIFVwZGF0ZSBkZWItdHJpZ2dlcnMoNSkgYW5kIGRwa2ctdHJpZ2dlcigxKQorICAgIAorICAgIFVwZGF0ZSBkZWItdHJpZ2dlcnMoNSkgYW5kIGRwa2ctdHJpZ2dlcigxKSB0byBhZGQgYSByZWZlcmVuY2UgdG8KKyAgICAvdXNyL3NoYXJlL2RvYy9kcGtnL3RyaWdnZXJzLnR4dC5nei4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICB8ICAgIDIgKysKKyBtYW4vZGViLXRyaWdnZXJzLjUgfCAgICAzICsrLQorIG1hbi9kcGtnLXRyaWdnZXIuMSB8ICAgIDIgKy0KKyAzIGZpbGVzIGNoYW5nZWQsIDUgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDdkMGVhNDRlOThiZmEyMGY2ZTVhMTZhMzIwMWY4YTRjYjEwMzc3MTAKK0F1dGhvcjogQ2hyaXN0aWFuIFBlcnJpZXIgPGJ1YnVsbGVAZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIE1hciAxMyAyMDozMzo0NiAyMDA5ICswMTAwCisKKyAgICBVcGRhdGVkIEZyZW5jaCB0cmFuc2xhdGlvbgorCisgc2NyaXB0cy9wby9mci5wbyB8ICAgIDYgKysrLS0tCisgMSBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBjZTA0NDE1YzZiODA5ZTQ5MzZmOWI2OWQ1ZWE2MGRhYTA2ZjA2NTdkCitBdXRob3I6IE1hcmNvcyA8bWFyY29zLmFsdmFyZXouY29zdGFsZXNAZ21haWwuY29tPgorRGF0ZTogICBGcmkgTWFyIDEzIDIwOjMyOjQ1IDIwMDkgKzAxMDAKKworICAgIEFkZCBBc3R1cmlhbiB0cmFuc2xhdGlvbgorICAgIAorICAgIENsb3NlczogIzUxOTQ3OAorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDMgKworIHBvL2FzdC5wbyAgICAgICAgfCA2NTA5ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKworIDIgZmlsZXMgY2hhbmdlZCwgNjUxMiBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQorCitjb21taXQgNmU5ZjE3YmE4ZmEwYWU3NWFlZTA4NTc5ZDA4YmEzZmFlODE3NTg2OQorQXV0aG9yOiBSYXBoYWVsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgRnJpIE1hciAxMyAxODowMjozNSAyMDA5ICswMTAwCisKKyAgICBGaXggU3dlZGlzaCB0cmFuc2xhdGlvbiBzbyB0aGF0IGl0IGRvZXNuJ3QgbWFrZSBwbzRhIGZhaWwKKworIG1hbi9wby9zdi5wbyB8ICAgIDIgKy0KKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKKworY29tbWl0IGM4MWUyN2Q4ZDg0MTE5OWJlMjQ2Y2Q5ZTBiNDFmN2VhNDQxNjBhZmUKK0F1dGhvcjogUGV0ZXIgS3JlZnRpbmcgPHBldGVya0BkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgTWFyIDExIDE0OjM4OjA3IDIwMDkgKzAxMDAKKworICAgIFVwZGF0ZSBTd2VkaXNoIHRyYW5zbGF0aW9uCisgICAgCisgICAgVXBkYXRlZCBwby9zdi5wbyB0byAxMDEydDBmMHUuCisgICAgVXBkYXRlZCBtYW4vcG8vc3YucG8gdG8gMTY1N3QwZjB1LgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDEgKworIG1hbi9wby9zdi5wbyAgICAgfCAgNzY1ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL3N2LnBvICAgICAgICAgfCAgIDE0ICstCisgMyBmaWxlcyBjaGFuZ2VkLCA0NDQgaW5zZXJ0aW9ucygrKSwgMzM2IGRlbGV0aW9ucygtKQorCitjb21taXQgZWEyZmMyZmMyNWU0YjNiZDc0ODExMDBjYzQ0OWZhMDIzYTQ0YmE1MQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBNYXIgMTEgMDI6NTc6MzIgMjAwOSArMDIwMAorCisgICAgUmVnZW5lcmF0ZSBkcGtnLW1hbi5wb3QgYW5kIG1lcmdlIC5wbyBmaWxlcyB3aXRoIGl0CisKKyBtYW4vcG8vZGUucG8gICAgICAgIHwgIDU4MSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBtYW4vcG8vZHBrZy1tYW4ucG90IHwgIDQ5OCArKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tCisgbWFuL3BvL2VzLnBvICAgICAgICB8ICA1MjQgKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLQorIG1hbi9wby9mci5wbyAgICAgICAgfCAgNTI5ICsrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tCisgbWFuL3BvL2h1LnBvICAgICAgICB8ICA1MjUgKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLQorIG1hbi9wby9qYS5wbyAgICAgICAgfCAgNTI2ICsrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tCisgbWFuL3BvL3BsLnBvICAgICAgICB8ICA1MjcgKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBtYW4vcG8vcHRfQlIucG8gICAgIHwgIDUyNSArKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tCisgbWFuL3BvL3J1LnBvICAgICAgICB8ICA1MjYgKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBtYW4vcG8vc3YucG8gICAgICAgIHwgIDUyNyArKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEwIGZpbGVzIGNoYW5nZWQsIDMwNDcgaW5zZXJ0aW9ucygrKSwgMjI0MSBkZWxldGlvbnMoLSkKKworY29tbWl0IDJjNDNjMDdlNTk5ZDJmMjZlZjdjZWJmNWY5YWRhYWE0YmI5YzI3OWYKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgTWFyIDExIDAyOjUxOjMzIDIwMDkgKzAyMDAKKworICAgIHUtYTogRml4IHR5cG8gaW4gbWFuIHBhZ2UgKOKAmHZhbHVlc+KAmSDihpIg4oCYdmFsdWXigJkpCisgICAgCisgICAgSW50cm9kdWNlZCBpbiBjb21taXQgNzI3N2U3ZTg3YWY5Y2Y0MzEzODgwZjIyOGM2OTNhYTc4YWQ0NmEwMy4KKyAgICAKKyAgICBSZXBvcnRlZC1ieTogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CisKKyBtYW4vdXBkYXRlLWFsdGVybmF0aXZlcy44IHwgICAgMiArLQorIDEgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgMmFkMjQyNjgzNDlhZmE2Y2RjNTZhMTRiZjg3MmE2MjRlM2Y4NzFhMQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBNYXIgMTEgMDI6MTk6NTggMjAwOSArMDIwMAorCisgICAgQWRkIG1pc3NpbmcgYnVnIGNsb3N1cmUgZm9yIFNsb3ZhayB0cmFuc2xhdGlvbgorICAgIAorICAgIE1pc3NlZCBpbiBjb21taXQgZDk1YzJiNTgwZTRkYjk5NGU1YWQ1MWUxM2JhYTMxOTJmZDg4MjdkNi4KKyAgICAKKyAgICBDbG9zZXM6ICM1MTkwODQKKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAxICsKKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IGI5YmU1ZTJiMTg4ZDNhMDI5MjllYmQ5ZmFhNmFiNTJmYzcxZDQxODMKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBXZWQgTWFyIDExIDAyOjE3OjQ2IDIwMDkgKzAyMDAKKworICAgIENoYW5nZSBTbG92YWsgbWFpbnRhaW5lciB0byBJdmFuIE1hc8OhcgorCisgZHNlbGVjdC9wby9MSU5HVUFTIHwgICAgMiArLQorIHBvL0xJTkdVQVMgICAgICAgICB8ICAgIDIgKy0KKyAyIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDk2YWM5MmFiM2Y1NDM5YWIxYWI1MTBhNTVmYjZlOGE4MDUyNjllMDQKK0F1dGhvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitEYXRlOiAgIFR1ZSBNYXIgMTAgMjE6NDA6NTQgMjAwOSArMDEwMAorCisgICAgVXBkYXRlIGdlcm1hbiB0cmFuc2xhdGlvbiBvZiBtYW51YWwgcGFnZXMKKyAgICAKKyAgICBVcGRhdGUgdG8gMTYwMHQyNWYyMHUuCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMyArCisgbWFuL3BvL2RlLmFkZCAgICB8ICAgIDIgKy0KKyBtYW4vcG8vZGUucG8gICAgIHwgIDQ4MCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAzIGZpbGVzIGNoYW5nZWQsIDI2MCBpbnNlcnRpb25zKCspLCAyMjUgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBhYjEyYjA3ZDA1NzViYzlhN2EwMjMxMWZlZTQ0NDdhMjQ3OTE0ZDFiCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIE1hciAxMCAxNjoxMzo0NSAyMDA5ICswMjAwCisKKyAgICBSZWdlbmVyYXRlIGRwa2cucG90IGFuZCBtZXJnZSAucG8gZmlsZXMgd2l0aCBpdAorCisgcG8vYnMucG8gICAgfCAgICA4ICsrLS0tLS0tCisgcG8vY2EucG8gICAgfCAgIDE1ICsrKysrKystLS0tLS0tLQorIHBvL2NzLnBvICAgIHwgICAxMyArKysrKystLS0tLS0tCisgcG8vZGEucG8gICAgfCAgIDEzICsrKysrKy0tLS0tLS0KKyBwby9kZS5wbyAgICB8ICAgMTMgKysrKysrLS0tLS0tLQorIHBvL2Rwa2cucG90IHwgICAgOCArKy0tLS0tLQorIHBvL2R6LnBvICAgIHwgICAxMyArKysrKystLS0tLS0tCisgcG8vZWwucG8gICAgfCAgIDEzICsrKysrKy0tLS0tLS0KKyBwby9lcy5wbyAgICB8ICAgMTMgKysrKysrLS0tLS0tLQorIHBvL2V0LnBvICAgIHwgICAxMyArKysrKystLS0tLS0tCisgcG8vZXUucG8gICAgfCAgIDEzICsrKysrKy0tLS0tLS0KKyBwby9mci5wbyAgICB8ICAgMTMgKysrKysrLS0tLS0tLQorIHBvL2dsLnBvICAgIHwgICAxMyArKysrKystLS0tLS0tCisgcG8vaHUucG8gICAgfCAgIDEzICsrKysrKy0tLS0tLS0KKyBwby9pZC5wbyAgICB8ICAgMTMgKysrKysrLS0tLS0tLQorIHBvL2l0LnBvICAgIHwgICAxMyArKysrKystLS0tLS0tCisgcG8vamEucG8gICAgfCAgIDEzICsrKysrKy0tLS0tLS0KKyBwby9rbS5wbyAgICB8ICAgMTMgKysrKysrLS0tLS0tLQorIHBvL2tvLnBvICAgIHwgICAxMyArKysrKystLS0tLS0tCisgcG8va3UucG8gICAgfCAgICA4ICsrLS0tLS0tCisgcG8vbHQucG8gICAgfCAgIDEzICsrKysrKy0tLS0tLS0KKyBwby9tci5wbyAgICB8ICAgMTMgKysrKysrLS0tLS0tLQorIHBvL25iLnBvICAgIHwgICAxMyArKysrKystLS0tLS0tCisgcG8vbmUucG8gICAgfCAgIDEzICsrKysrKy0tLS0tLS0KKyBwby9ubC5wbyAgICB8ICAgMTMgKysrKysrLS0tLS0tLQorIHBvL25uLnBvICAgIHwgICAxMyArKysrKystLS0tLS0tCisgcG8vcGEucG8gICAgfCAgICA4ICsrLS0tLS0tCisgcG8vcGwucG8gICAgfCAgIDEzICsrKysrKy0tLS0tLS0KKyBwby9wdC5wbyAgICB8ICAgMTMgKysrKysrLS0tLS0tLQorIHBvL3B0X0JSLnBvIHwgICAxMyArKysrKystLS0tLS0tCisgcG8vcm8ucG8gICAgfCAgIDEzICsrKysrKy0tLS0tLS0KKyBwby9ydS5wbyAgICB8ICAgMTMgKysrKysrLS0tLS0tLQorIHBvL3NrLnBvICAgIHwgICAgOSArKysrLS0tLS0KKyBwby9zdi5wbyAgICB8ICAgMTEgKysrKystLS0tLS0KKyBwby90aC5wbyAgICB8ICAgMTMgKysrKysrLS0tLS0tLQorIHBvL3RsLnBvICAgIHwgICAxMyArKysrKystLS0tLS0tCisgcG8vdmkucG8gICAgfCAgIDEzICsrKysrKy0tLS0tLS0KKyBwby96aF9DTi5wbyB8ICAgMTMgKysrKysrLS0tLS0tLQorIHBvL3poX1RXLnBvIHwgICAxMyArKysrKystLS0tLS0tCisgMzkgZmlsZXMgY2hhbmdlZCwgMjE2IGluc2VydGlvbnMoKyksIDI2NyBkZWxldGlvbnMoLSkKKworY29tbWl0IGQ5NWMyYjU4MGU0ZGI5OTRlNWFkNTFlMTNiYWEzMTkyZmQ4ODI3ZDYKK0F1dGhvcjogSXZhbiBNYXPDoXIgPGhlbGl4ODRAY2VudHJ1bS5zaz4KK0RhdGU6ICAgVHVlIE1hciAxMCAxNjoxMToyMiAyMDA5ICswMjAwCisKKyAgICBVcGRhdGUgU2xvdmFrIGRwa2cgdHJhbnNsYXRpb24KKyAgICAKKyAgICBVcGRhdGUgdG8gMTAxM3QuCisKKyBwby9zay5wbyB8ICA1NzEgKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAxIGZpbGVzIGNoYW5nZWQsIDI2MCBpbnNlcnRpb25zKCspLCAzMTEgZGVsZXRpb25zKC0pCisKK2NvbW1pdCBjNDczYmJjYTYwZDY3ZWU5ZDY0YTRmYmU2MzUwN2U4YzlkNzNiYjkzCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIE1hciAxMCAxNTo1NTo1NiAyMDA5ICswMjAwCisKKyAgICBGaXggdHlwbyBpbiBkcGtnIG91dHB1dCAo4oCYdW5leGVjcHRlZOKAmSDihpIg4oCYdW5leHBlY3RlZOKAmSkKKyAgICAKKyAgICBDbG9zZXM6ICM1MTkwODIKKyAgICBSZXBvcnRlZC1ieTogSXZhbiBNYXPDoXIgPGhlbGl4ODRAY2VudHJ1bS5zaz4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICA0ICsrKysKKyBzcmMvZmlsZXNkYi5jICAgIHwgICAgMiArLQorIDIgZmlsZXMgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQorCitjb21taXQgOGM2NTFhMDUzMTQ5MjRlZDU4MjNhOGQ5OTVlNTE1ZDM0ZDBjZmE0YworQXV0aG9yOiBSYXBoYWVsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIE1hciA5IDIyOjU0OjEzIDIwMDkgKzAxMDAKKworICAgIGRwa2ctc291cmNlOiBhZGQgLS1za2lwLWRlYmlhbml6YXRpb24gZXh0cmFjdCBvcHRpb24KKyAgICAKKyAgICBFeHRyYWN0aW5nIGEgc291cmNlIHBhY2thZ2Ugd2l0aCAtLXNraXAtZGViaWFuaXphdGlvbiBjYW4gYmUgaW50ZXJlc3RpbmcKKyAgICB3aGVuIHlvdSB3YW50IHRvIGltcG9ydCBhIHNvdXJjZSBwYWNrYWdlIGluIGEgVkNTIGFuZCB3YW50IHRvIGltcG9ydAorICAgIHRoZSB1cHN0cmVhbSBzb3VyY2VzIHdpdGhvdXQgaGF2aW5nIHByZWNpc2Uga25vd2xlZGdlIG9mIHRoZSBpbnRlcm5hbHMKKyAgICBvZiBhbGwgc291cmNlIHBhY2thZ2UgZm9ybWF0cy4gVGhpcyBvcHRpb24gaXMgb25seSBzdXBwb3J0ZWQgZm9yIHRoZQorICAgIHNvdXJjZSBmb3JtYXRzICIxLjAiLCAiMi4wIiBhbmQgIjMuMCAocXVpbHQpIiB0aGF0IGhhbmRsZSBjbGVhcmx5CisgICAgaWRlbnRpZmllZCB1cHN0cmVhbSBzb3VyY2VzLgorCisgbWFuL2Rwa2ctc291cmNlLjEgICAgICAgICAgICAgICAgIHwgICAgNiArKysrKysKKyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG0gICAgfCAgIDEwICsrKysrKysrLS0KKyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG0gfCAgICA2ICsrKysrLQorIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbSB8ICAgIDkgKysrKysrKystCisgNCBmaWxlcyBjaGFuZ2VkLCAyNyBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQorCitjb21taXQgMTQ2M2FjNzFiYWJmMDQzMmI1NzUzYzIwZWViYzA2MDM2MzY5NGUzNAorQXV0aG9yOiBSYXBoYWVsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIE1hciA5IDIyOjIxOjI4IDIwMDkgKzAxMDAKKworICAgIGRwa2ctc291cmNlOiBkcm9wIHN1cHBvcnQgb2YgZGViaWFuL2NvbnRyb2wncyBGb3JtYXQgZmllbGQKKyAgICAKKyAgICBUaGVyZSBhcmUgbm8gaW50ZXJlc3RpbmcgdXNlIGNhc2Ugd2hlcmUgaXQgbWFrZXMgc2Vuc2UgdG8gaGFyZGNvZGUKKyAgICB0aGUgc291cmNlIGZvcm1hdCBkaXJlY3RseSBpbiBkZWJpYW4vY29udHJvbC4gU28gZHJvcCB0aGF0IGZlYXR1cmUKKyAgICBiZWZvcmUgcGVvcGxlIHN0YXJ0IGFidXNpbmcgdGhpcyBmaWVsZCBpbnN0ZWFkIG9mIHVzaW5nCisgICAgZGViaWFuL3NvdXJjZS9mb3JtYXQgKHdoaWNoIGRwa2ctc291cmNlIGNhbiBoYXZlIHRvIGNyZWF0ZSBpbiBzb21lIGNhc2VzKS4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgfCAgICAzICsrKworIG1hbi9kcGtnLXNvdXJjZS4xICAgICAgfCAgICA0ICstLS0KKyBzY3JpcHRzL2Rwa2ctc291cmNlLnBsIHwgICAgNiArKy0tLS0KKyAzIGZpbGVzIGNoYW5nZWQsIDYgaW5zZXJ0aW9ucygrKSwgNyBkZWxldGlvbnMoLSkKKworY29tbWl0IDc1ODk4NmY0ZWQyOWUyNDI3MGY4OWRjM2Y1M2U1M2Y1NzgyYmUyZGQKK0F1dGhvcjogUmFwaGFlbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIE1vbiBNYXIgOSAyMToxMTo1OCAyMDA5ICswMTAwCisKKyAgICBkcGtnLXNvdXJjZSgxKTogZG9jdW1lbnQgZm9ybWF0IG9mIGRlYmlhbi9zb3VyY2UvKiBmaWxlcworICAgIAorICAgIEFsc28gZml4IHBhcnNpbmcgb2YgZGViaWFuL3NvdXJjZS9pbmNsdWRlLWJpbmFyaWVzIHRvIGlnbm9yZSBlbXB0eSBsaW5lcworICAgIGluIERwa2c6OlNvdXJjZTo6UGFja2FnZTo6VjI6OmRvX2J1aWxkKCkuCisKKyBtYW4vZHBrZy1zb3VyY2UuMSAgICAgICAgICAgICAgICAgfCAgIDIyICsrKysrKysrKysrKysrKysrKysrLS0KKyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG0gfCAgICAyICstCisgMiBmaWxlcyBjaGFuZ2VkLCAyMSBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQorCitjb21taXQgNDkyZmVlZGIzZTc1ZDk5ZTkwMDMxMDVmNTMxMmQwNTJkMTE1NmJjMgorQXV0aG9yOiBSYXBoYWVsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIE1hciA5IDIwOjQzOjI2IDIwMDkgKzAxMDAKKworICAgIEFkZCBtaXNzaW5nIGNoYW5nZWxvZyBlbnRyeS4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAxICsKKyAxIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMCBkZWxldGlvbnMoLSkKKworY29tbWl0IGI2N2RmMzBmMjdjODliY2JhOGFkYThiOTE2ZjEzYTEzNWRhZWRhN2UKK0F1dGhvcjogQ2hyaXN0aWFuIFBlcnJpZXIgPGJ1YnVsbGVAZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIE1hciA5IDA3OjAxOjM2IDIwMDkgKzAxMDAKKworICAgIFJlY29tcGxldGUgRnJlbmNoIHRyYW5zbGF0aW9ucworICAgIAorICAgIFVwZGF0ZSB0byA0NzN0LgorCisgZGViaWFuL2NoYW5nZWxvZyB8ICAgIDEgKworIHNjcmlwdHMvcG8vZnIucG8gfCAgIDQ2ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDMwIGluc2VydGlvbnMoKyksIDE3IGRlbGV0aW9ucygtKQorCitjb21taXQgM2ViZTFkNDUyNTg2MjhlOTEzOGJhNjU5MDNlNTZiNTcxZGJmNGJkNworQXV0aG9yOiBIZWxnZSBLcmV1dHptYW5uIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KK0RhdGU6ICAgU3VuIE1hciA4IDIwOjQyOjQyIDIwMDkgKzAxMDAKKworICAgIFJlY29tcGxldGUgZ2VybWFuIHNjcmlwdHMgdHJhbnNsYXRpb24KKyAgICAKKyAgICBVcGRhdGUgdG8gNDczdC4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICAxICsKKyBzY3JpcHRzL3BvL2RlLnBvIHwgICA0MiArKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDI3IGluc2VydGlvbnMoKyksIDE2IGRlbGV0aW9ucygtKQorCitjb21taXQgNWVlMmQ2MDA4NGY0M2YxYjUxOTA3ZTc3ZGQ5ZjA3ZGM0ZDgxMDYxOAorQXV0aG9yOiBSYXBoYWVsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RhdGU6ICAgU3VuIE1hciA4IDE5OjEzOjQ5IDIwMDkgKzAxMDAKKworICAgIGRwa2ctc2hsaWJkZXBzOiBtYWtlIHNobGlicy5sb2NhbCBvdmVycmlkZSBzeW1ib2xzIGZpbGVzIHRvbworICAgIAorICAgIEFzIGRpc2N1c3NlZCBpbiBodHRwOi8vbGlzdHMuZGViaWFuLm9yZy9kZWJpYW4tZGV2ZWwvMjAwOS8wMy9tc2cwMDQyOC5odG1sCisgICAgZHJvcHBpbmcgdGhlIHNobGlicy5sb2NhbCBwYWNrYWdlIG92ZXJyaWRlIGZvciBzeW1ib2xzIGZpbGVzIHdhcyBub3QKKyAgICBuZWNlc3NhcmlseSBhIGdvb2QgaWRlYS4gU28gdGhpcyBjb21taXQgbWFrZXMgZHBrZy1zaGxpYmRlcHMgc2tpcAorICAgIHRoZSBzeW1ib2xzIGZpbGVzIGZvciBhIGxpYnJhcnkgaWYgaXQgZGV0ZWN0cyB0aGF0IHRoZSByZWxldmFudCBkZXBlbmRlbmN5CisgICAgaXMgYXZhaWxhYmxlIGluIHRoZSBzaGxpYnMubG9jYWwgZmlsZS4KKworIG1hbi9kcGtnLXNobGliZGVwcy4xICAgICAgfCAgICAzICsrLQorIHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGwgfCAgICA5ICsrKysrKysrLQorIDIgZmlsZXMgY2hhbmdlZCwgMTAgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IDVmZDM4Nzk5OWQ5MmVmMWY0NzU2MDk4MGNmZmI1NDU2NWE3MmE5NmIKK0F1dGhvcjogUmFwaGFlbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBNYXIgOCAxNjoxMTo1MyAyMDA5ICswMTAwCisKKyAgICBkcGtnLXNobGliZGVwczogZG9uJ3QgZmFpbCBvbiBiaW5hcmllcyBvdXRzaWRlIG9mIGEgcGFja2FnZSdzIGRpcgorICAgIAorICAgIERwa2cgMS4xNS4wIGludHJvZHVjZWQgYSByZWdyZXNzaW9uIGJ5IHRyeWluZyB0byBkZWR1Y2UgdGhlIHRhcmdldAorICAgIGRpcmVjdG9yeSBpbiBvcmRlciB0byBhZGp1c3Qgc29tZSB3YXJuaW5ncy4gVGhpcyBjaGVjayBmYWlsZWQgd2hlbgorICAgIGRwa2ctc2hsaWJkZXBzIHdhcyBydW4gb24gZmlsZXMgbm90ICh5ZXQpIGluc3RhbGxlZCBpbiB0aGUgcGFja2FnZSdzCisgICAgZGlyZWN0b3J5IChkZWJpYW4vcGFja2FnZS8pLiBGaXggdGhhdCBhbmQgZW1pdCBhIHdhcm5pbmcgc28gdGhhdAorICAgIG1haW50YWluZXJzIGFyZSBlbmNvdXJhZ2VkIHRvIGFuYWx5emUgdGhlIGJpbmFyaWVzIG9uY2UgdGhleSBoYXZlCisgICAgYmVlbiBpbnN0YWxsZWQgaW4gdGhlaXIgdGFyZ2V0IGRpcmVjdG9yeS4KKworIGRlYmlhbi9jaGFuZ2Vsb2cgICAgICAgICAgfCAgICAyICsrCisgc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbCB8ICAgMTAgKysrKysrKystLQorIDIgZmlsZXMgY2hhbmdlZCwgMTAgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworY29tbWl0IGVhMTUzMGZlNDVjOGIxYWQ2MWQ5MWMwNzkxYzUzZWNmMzYzODk5YmYKK0F1dGhvcjogUmFwaGFlbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEYXRlOiAgIFN1biBNYXIgOCAxNTo1MDo1OCAyMDA5ICswMTAwCisKKyAgICBkcGtnLXNvdXJjZTogY2FsbCBxdWlsdCBvbmx5IG9uY2UgdG8gYXBwbHkgYWxsIHBhdGNoZXMKKyAgICAKKyAgICBSZWZhY3RvciBEcGtnOjpTb3VyY2U6OlBhY2thZ2U6OlYzOjpxdWlsdDo6YXBwbHlfcGF0Y2hlcygpIHRvCisgICAgY2FsbCBxdWlsdCBvbmx5IG9uY2UgKHF1aWx0IHB1c2ggLWEgLXEpIGluc3RlYWQgb2Ygb25jZSBwZXIgcGFja2FnZS4gVGhpcworICAgIGRyYW1hdGljYWxseSBpbXByb3ZlcyBwZXJmb3JtYW5jZSBmb3IgcGFja2FnZXMgbGlrZSBnbGliYyB0aGF0CisgICAgaGF2ZSBhIGxhcmdlIG51bWJlciBvZiBwYXRjaGVzLgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMiArCisgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtIHwgICA0NSArKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0KKyAyIGZpbGVzIGNoYW5nZWQsIDI5IGluc2VydGlvbnMoKyksIDE4IGRlbGV0aW9ucygtKQorCitjb21taXQgMWEwMTk3OWU3NjA3YTA2OGM3ZDMzYWNmYTIzOGEwODU0N2I1YjY5YQorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBNYXIgNCAyMzoyNjozMyAyMDA5ICswMjAwCisKKyAgICBSZWdlbmVyYXRlIC5wb3QgZmlsZXMgYW5kIG1lcmdlIC5wbyBmaWxlcyB3aXRoIHRoZW0KKworIHBvL2JzLnBvICAgIHwgIDEzMiArKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tCisgcG8vY2EucG8gICAgfCAgMTUzICsrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9jcy5wbyAgICB8ICAxNTMgKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2RhLnBvICAgIHwgIDE1MyArKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vZGUucG8gICAgfCAgMTUzICsrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9kcGtnLnBvdCB8ICAxMzIgKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLQorIHBvL2R6LnBvICAgIHwgIDE1MyArKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vZWwucG8gICAgfCAgMTUzICsrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9lcy5wbyAgICB8ICAxNTMgKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2V0LnBvICAgIHwgIDE0MSArKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tCisgcG8vZXUucG8gICAgfCAgMTUzICsrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9mci5wbyAgICB8ICAxNTMgKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2dsLnBvICAgIHwgIDE1MyArKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vaHUucG8gICAgfCAgMTUwICsrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9pZC5wbyAgICB8ICAxNTAgKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2l0LnBvICAgIHwgIDE1MyArKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vamEucG8gICAgfCAgMTUzICsrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9rbS5wbyAgICB8ICAxNTMgKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL2tvLnBvICAgIHwgIDE1MyArKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8va3UucG8gICAgfCAgMTM4ICsrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLQorIHBvL2x0LnBvICAgIHwgIDE1MCArKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vbXIucG8gICAgfCAgMTU0ICsrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vbmIucG8gICAgfCAgMTUzICsrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9uZS5wbyAgICB8ICAxNTMgKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL25sLnBvICAgIHwgIDE1MyArKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vbm4ucG8gICAgfCAgMTUwICsrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9wYS5wbyAgICB8ICAxMzIgKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLQorIHBvL3BsLnBvICAgIHwgIDE1MyArKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vcHQucG8gICAgfCAgMTUzICsrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9wdF9CUi5wbyB8ICAxNTMgKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL3JvLnBvICAgIHwgIDE1MyArKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vcnUucG8gICAgfCAgMTUzICsrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0KKyBwby9zay5wbyAgICB8ICAxNTMgKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL3N2LnBvICAgIHwgIDIwOSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL3RoLnBvICAgIHwgIDE1MyArKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tCisgcG8vdGwucG8gICAgfCAgMTUxICsrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0KKyBwby92aS5wbyAgICB8ICAxNTMgKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL3poX0NOLnBvIHwgIDE1NiArKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLQorIHBvL3poX1RXLnBvIHwgIDE1MyArKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tCisgMzkgZmlsZXMgY2hhbmdlZCwgMzQ1OCBpbnNlcnRpb25zKCspLCAyNDY1IGRlbGV0aW9ucygtKQorCitjb21taXQgZDExMWQwMjZhNTExMTBmOTVjYzE2NjFlZmFhOTllMjY1MDg0M2E1ZgorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBNYXIgNCAyMzoyNDo0NCAyMDA5ICswMjAwCisKKyAgICBBZGQgbmV3IGZpbGVzIG1pc3NlZCBvbiBjb2RlIHJlZmFjdG9yaW5nCisgICAgCisgICAgUmVwb3J0ZWQtYnk6IFN2ZW4gSm9hY2hpbSA8c3ZlbmpvYWNAZ214LmRlPgorCisgcG8vUE9URklMRVMuaW4gfCAgICAyICsrCisgMSBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA5YjVlZWJiMjU5Y2QwNzRmMGIxNzViZGFlYjYwY2YzNTM5N2ViMDQ5CitBdXRob3I6IFBldGVyIEtyZWZ0aW5nIDxwZXRlcmtAZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIE1hciAzIDE0OjIwOjQ0IDIwMDkgKzAxMDAKKworICAgIFVwZGF0ZSBTd2VkaXNoIHRyYW5zbGF0aW9uLgorICAgIAorICAgIFVwZGF0ZWQgZHNlbGVjdC9wby9zdi5wbyB0byAyODN0MGYwdS4KKyAgICBVcGRhdGVkIHNjcmlwdHMvcG8vc3YucG8gdG8gNDczdDBmMHUuCisgICAgVXBkYXRlZCBwby9zdi5wbyB0byAxMDA0dDBmMHUuCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgNyArCisgZHNlbGVjdC9wby9zdi5wbyB8ICAgIDggKy0KKyBwby9zdi5wbyAgICAgICAgIHwgIDU0NiArKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBzY3JpcHRzL3BvL3N2LnBvIHwgICAzOSArKy0tCisgNCBmaWxlcyBjaGFuZ2VkLCAyODIgaW5zZXJ0aW9ucygrKSwgMzE4IGRlbGV0aW9ucygtKQorCitjb21taXQgYjUzYTZhN2U2NjUxZTgyZWViOGNmYWZhMTk4MWIxYzVkMzNiNGUwNAorQXV0aG9yOiBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitEYXRlOiAgIFdlZCBGZWIgMTEgMDM6MzE6MjQgMjAwOSArMDIwMAorCisgICAgQWRkIG5ldyBwa2dfYXJyYXlfZnJlZSBmdW5jdGlvbgorICAgIAorICAgIFVzZSBpdCB0byBmcmVlIHRoZSBhcnJheXMgYWZ0ZXIgdXNlLCBzbyB0aGF0IHdlIGRvIG5vdCBsZWFrLgorCisgc3JjL3BrZy1hcnJheS5jIHwgICAgOCArKysrKysrKworIHNyYy9wa2ctYXJyYXkuaCB8ICAgIDEgKworIHNyYy9xdWVyeS5jICAgICB8ICAgIDQgKysrKworIHNyYy9zZWxlY3QuYyAgICB8ICAgIDIgKysKKyA0IGZpbGVzIGNoYW5nZWQsIDE1IGluc2VydGlvbnMoKyksIDAgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA0NWU1ZWU5ZTRjOTE5NWE0ODhjMmUwZTI0NmI4NTVlNGJjYmU2YjRmCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgV2VkIEZlYiAxMSAwMzoyODoxOSAyMDA5ICswMjAwCisKKyAgICBSZWZhY3RvciBwYWNrYWdlIGFycmF5IGhhbmRsaW5nCisgICAgCisgICAgQ3JlYXRlIGEgbmV3IHBrZ19hcnJheSBzdHJ1Y3R1cmUsIGFuZCB0d28gbmV3IGZ1bmN0aW9ucyB0byBpbml0aWFsaXplCisgICAgZnJvbSB0aGUgZGIsIGFuZCB0byBzb3J0IHRoZSBhcnJheS4KKworIHNyYy9NYWtlZmlsZS5hbSAgICAgICAgICAgICAgICAgIHwgICAgNCArLQorIHNyYy9wa2ctYXJyYXkuYyAgICAgICAgICAgICAgICAgIHwgICAyOSArKysrKysrKysrKysrKysrCisgc3JjL3twa2ctYXJyYXkuYyA9PiBwa2ctYXJyYXkuaH0gfCAgIDI3ICsrKysrKysrLS0tLS0tLQorIHNyYy9xdWVyeS5jICAgICAgICAgICAgICAgICAgICAgIHwgICA2OSArKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgc3JjL3NlbGVjdC5jICAgICAgICAgICAgICAgICAgICAgfCAgIDI3ICsrKysrLS0tLS0tLS0tLQorIDUgZmlsZXMgY2hhbmdlZCwgODAgaW5zZXJ0aW9ucygrKSwgNzYgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAyYzA2NjdkMDZhMzhjM2EzMWFiNDNiNzlhOTc5ZjI5ZTVmY2YwY2YzCitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgVHVlIEZlYiAxMCAwMzoyMzozNiAyMDA5ICswMjAwCisKKyAgICBSZW5hbWUgcGtnLWxpc3QuYyB0byBwa2ctYXJyYXkuYworCisgc3JjL01ha2VmaWxlLmFtICAgICAgICAgICAgICAgICB8ICAgIDQgKystLQorIHNyYy97cGtnLWxpc3QuYyA9PiBwa2ctYXJyYXkuY30gfCAgICAyICstCisgMiBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA0ZGE0ZjAxNDVhNDUxYTEzZWFiMmNkYjZiMWQ1ZTQ2ZDg1N2ZkOTNiCitBdXRob3I6IFJhcGhhZWwgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gTWFyIDIgMTg6MTA6NDAgMjAwOSArMDEwMAorCisgICAgZHBrZy1nZW5jaGFuZ2VzOiBjb3JyZWN0bHkgaGFuZGxlcyBhZGRpdGlvbmFsIHVwc3RyZWFtIHRhcmJhbGxzCisgICAgCisgICAgVGhlIHNvdXJjZSBmb3JtYXQgMy4wIChxdWlsdCkgYWxsb3dzIGFkZGl0aW9uYWwgdXBzdHJlYW0gdGFyYmFsbHMKKyAgICBuYW1lZCA8cGtnPl88dXBzdHJlYW12ZXJzaW9uPi5vcmlnLTxjb21wb25lbnQ+LnRhci48ZXh0Pi4gVGhleQorICAgIHNob3VsZCBiZSB0cmVhdGVkIGxpa2Ugbm9ybWFsIC5vcmlnIHRhcmJhbGxzIGFuZCBiZSBsZWZ0IG91dAorICAgIGxpa2UgdGhlbSBpbiBub3JtYWwgImJpbmFyeSBhbmQgZGlmZiB1cGxvYWQiLgorCisgZGViaWFuL2NoYW5nZWxvZyAgICAgICAgICAgfCAgICA1ICsrKysrCisgc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGwgfCAgICA1ICsrKy0tCisgMiBmaWxlcyBjaGFuZ2VkLCA4IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCisKK2NvbW1pdCAwNjY2NWEwODM3OWMzYTMwNTQ5MDY2MDI3MDMwNzc3OTNmMWJkMDQ4CitBdXRob3I6IFN2ZW4gSm9hY2hpbSA8c3ZlbmpvYWNAZ214LmRlPgorRGF0ZTogICBNb24gTWFyIDIgMTc6MjE6NTcgMjAwOSArMDEwMAorCisgICAgVXBkYXRlIGdlcm1hbiBkc2VsZWN0IHRyYW5zbGF0aW9uCisgICAgCisgICAgVXBkYXRlIHRvIDI4M3QuCisKKyBkZWJpYW4vY2hhbmdlbG9nIHwgICAgMyArKy0KKyBkc2VsZWN0L3BvL2RlLnBvIHwgICA1MCArKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCA0NyBkZWxldGlvbnMoLSkKKworY29tbWl0IDFhMGI4YWRlOGY1ZjUxMzBmNzc0MTVmODZmMTY4NmU4YzA5N2I3NjgKK0F1dGhvcjogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorRGF0ZTogICBNb24gTWFyIDIgMDY6NTY6MjUgMjAwOSArMDIwMAorCisgICAgU3dpdGNoIHRvIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGluZyB0aGUgQ2hhbmdlTG9nIGZpbGUKKyAgICAKKyAgICBLZWVwIHRoZSBvbGQgQ2hhbmdlTG9nIGZpbGVzIGFzIENoYW5nZUxvZy5vbGQsIGFuZCBkaXN0cmlidXRlIHRoZW0uCisgICAgQXV0b21hdGljYWxseSBnZW5lcmVhdGUgdGhlIENoYW5nZUxvZyBmcm9tIOKAnGdpdCBsb2figJ0uIEFuZCB1cGRhdGUgdGhlCisgICAgaW5mb3JtYXRpb24gZm9yIHRyYW5zbGF0b3JzLgorCisgLmdpdGlnbm9yZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMSArCisgQ2hhbmdlTG9nID0+IENoYW5nZUxvZy5vbGQgICAgICAgICAgICAgIHwgICAgMAorIE1ha2VmaWxlLmFtICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDYgKysrKworIFJFQURNRS50cmFuc2xhdG9ycyAgICAgICAgICAgICAgICAgICAgICB8ICAgNDQgKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgZGViaWFuL3J1bGVzICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNCArLQorIGRzZWxlY3QvcG8ve0NoYW5nZUxvZyA9PiBDaGFuZ2VMb2cub2xkfSB8ICAgIDAKKyBkc2VsZWN0L3BvL01ha2V2YXJzICAgICAgICAgICAgICAgICAgICAgfCAgICAyICsKKyBtYW4vTWFrZWZpbGUuYW0gICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAyICstCisgbWFuL3BvL3tDaGFuZ2VMb2cgPT4gQ2hhbmdlTG9nLm9sZH0gICAgIHwgICAgMAorIHBvL3tDaGFuZ2VMb2cgPT4gQ2hhbmdlTG9nLm9sZH0gICAgICAgICB8ICAgIDAKKyBwby9NYWtldmFycyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAyICsKKyBzY3JpcHRzL3BvL3tDaGFuZ2VMb2cgPT4gQ2hhbmdlTG9nLm9sZH0gfCAgICAwCisgc2NyaXB0cy9wby9NYWtldmFycyAgICAgICAgICAgICAgICAgICAgIHwgICAgMiArCisgMTMgZmlsZXMgY2hhbmdlZCwgMjkgaW5zZXJ0aW9ucygrKSwgMzQgZGVsZXRpb25zKC0pCisKK2NvbW1pdCA4ODNiNmU4NDBmMDZlN2QwNWUxYzZhMjM4MjRjNWFlZmQzNDY2NzU0CitBdXRob3I6IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KK0RhdGU6ICAgTW9uIE1hciAyIDA2OjIzOjEwIDIwMDkgKzAyMDAKKworICAgIEJ1bXAgdmVyc2lvbiB0byAxLjE1LjF+CisKKyBjb25maWd1cmUuYWMgICAgIHwgICAgMiArLQorIGRlYmlhbi9jaGFuZ2Vsb2cgfCAgICA2ICsrKysrKworIDIgZmlsZXMgY2hhbmdlZCwgNyBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9ucygtKQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9DaGFuZ2VMb2cub2xkIGIvZHBrZy0xLjE2LjEuMS9DaGFuZ2VMb2cub2xkCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmEyMGU5YWMKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL0NoYW5nZUxvZy5vbGQKQEAgLTAsMCArMSwxNjkyOSBAQAorMjAwOS0wMy0wMiAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogY29uZmlndXJlLmFjOiBSZWxlYXNlIDEuMTUuMC4KKworMjAwOS0wMy0wMiAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy90LzkwMF91cGRhdGVfYWx0ZXJuYXRpdmVzLnQ6IERvIG5vdCB1c2UgJHNyY2RpciBmb3IgdC50bXAsCisJaXQncyBhY3R1YWxseSBsb2NhdGVkIGluIGJ1aWxkZGlyLgorCisyMDA5LTAzLTAyICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMucGwgKGxvYWQpOiBQcmludCBhbiBhY3R1YWwgZXJyb3Igb24gb3BlbgorCWluc3RlYWQgb2YgYW4gZW1wdHkgc3RyaW5nLgorCisyMDA5LTAzLTAyICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMucGw6IERvIG5vdCB1c2Ugbm9uLUFTQ0lJIHN0cmluZ3Mgb24gQworCWxvY2FsZS4KKwkodmVyc2lvbik6IExpa2V3aXNlLgorCisyMDA5LTAzLTAyICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBwby9QT1RGSUxFUy5pbjogUmVtb3ZlIHJlZmVyZW5jZSB0byBjbGVhbnVwLWluZm8ucGwuCisJKiBzY3JpcHRzLy5naXRpZ25vcmU6IExpa2V3aXNlLgorCisyMDA5LTAyLTI3ICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMucGw6IEF2b2lkIGxvZ2dpbmcgdG9vIG1hbnkKKwl1c2VsZXNzIG1lc3NhZ2VzIGFib3V0IHN0YXR1cyBjaGFuZ2UuCisKKzIwMDktMDItMjcgIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvRHBrZy9TaGxpYnMvU3ltYm9sRmlsZS5wbSAoc2F2ZSwgZHVtcCk6IEFkZCBuZXcKKwlwYXJhbWV0ZXIgYXNraW5nIHRoYXQgI1BBQ0tBR0UjIGJlIHJlcGxhY2VkIG9uIHRoZSBmbHkuCisJKiBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbDogUmVwbGFjZSAjUEFDS0FHRSMgd2hpbGUgb3V0cHV0dGluZworCXN5bWJvbHMgZmlsZXMuCisJKiBtYW4vZHBrZy1nZW5zeW1ib2xzLjE6IERvY3VtZW50IHRoZSBuZXcgZmVhdHVyZS4KKwkqIHNjcmlwdHMvdC8yMDBfRHBrZ19TaGxpYnMudCwKKwlzY3JpcHRzL3QvMjAwX0Rwa2dfU2hsaWJzL3N5bWJvbHMuZmFrZS0yOiBBZGQgdGVzdC1jYXNlIGZvcgorCXJlcGxhY2VtZW50IG9mICNQQUNLQUdFIyBvbiB0aGUgZmx5ICh0b2dldGhlciB3aXRoIHRlc3Qgb2YgZHVtcCkuCisKKzIwMDktMDItMjcgIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvdXBkYXRlLWFsdGVybmF0aXZlcy5wbDogQWRkIG9uZSBtb3JlIHNhbml0eSBjaGVjaworCXZlcmlmeWluZyB0aGF0IDxsaW5rPiBhbmQgPHBhdGg+IGFyZSBkaWZmZXJlbnQgKGNmICM1MDk2NjcgZm9yIGEKKwlzYW1wbGUpLgorCisyMDA5LTAyLTI3ICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMucGw6IEltcHJvdmUgb3V0cHV0IG1lc3NhZ2VzCisJYnkgaWRlbnRpZnlpbmcgdGhlaXIgb3JpZ2luIGFuZCBieSBiZWluZyBtb3JlIGNvbnNpc3RlbnQuCisJKiBzY3JpcHRzL3QvOTAwX3VwZGF0ZV9hbHRlcm5hdGl2ZXMudDogQWRqdXN0IHRlc3Qgc3VpdGUKKwlmb3Igb25lIGVycm9yIG1lc3NhZ2UgdGhhdCdzIG5vdyBvbiBzdGFuZGFyZCBlcnJvciBpbnN0ZWFkCisJb2Ygc3RhbmRhcmQgb3V0cHV0LgorCisyMDA5LTAyLTI3ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBsaWIvdGFyZm4uYyAoZ2V0X3ByZWZpeF9uYW1lKTogTmV3IGZ1bmN0aW9uLgorCShEZWNvZGVUYXJIZWFkZXIpOiBPbiB0YXJfZm9ybWF0X3VzdGFyIGFuZCBpZiBQcmVmaXggaXMgbm90IGVtcHR5CisJY2FsbCBnZXRfcHJlZml4X25hbWUgaW5zdGVhZCBvZiBhYm9ydGluZy4KKwkqIG1hbi9kZWIuNTogRG9jdW1lbnQgdGhhdCB1c3RhciBmb3JtYXQgaXMgbm93IHByb3Blcmx5IHN1cHBvcnRlZC4KKworMjAwOS0wMi0yNyAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogbGliL3RhcmZuLmggKGVudW0gdGFyX2Zvcm1hdCk6IE5ldyB0eXBlLgorCShzdHJ1Y3QgVGFySW5mbyk6IEFkZCBuZXcgZm9ybWF0IG1lbWJlci4KKwkqIGxpYi90YXJmbi5jIChUQVJfTUFHSUNfVVNUQVIsIFRBUl9NQUdJQ19HTlUpOiBOZXcgbWFjcm9zLgorCShzdHJ1Y3QgVGFySGVhZGVyKTogQWRkIG5ldyBQcmVmaXggbWVtYmVyLgorCShEZWNvZGVUYXJIZWFkZXIpOiBEZXRlY3QgdGFyIGZvcm1hdHMgYmFzZWQgb24gdGhlIG1hZ2ljIHZhbHVlcy4KKwlBYm9ydCBvbiB0YXJfZm9ybWF0X3VzdGFyIGFuZCBhbiBub24tZW1wdHkgUHJlZml4LgorCisyMDA5LTAyLTI3ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBsaWIvZmllbGRzLmMgKGZfYm9vbGVhbik6IFVzZSBQS0dQRklFTEQgdG8gYXNzaWduIHRvIHRoZSBjb3JyZWN0CisJbWVtYmVyIGluc3RlYWQgb2YgaGFyZGNvZGluZyB0byB0aGUgZXNzZW50aWFsIG1lbWJlci4KKworMjAwOS0wMi0yNyAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogbGliL2ZpZWxkcy5jIChmX2Jvb2xlYW4pOiBSZXR1cm4gaWYgdmFsdWUgaXMgYW4gZW1wdHkgc3RyaW5nLgorCisyMDA5LTAyLTI2ICBDaHJpcyBDb3Vsc29uICA8Y2hyaXNjY291bHNvbkBnb29nbGVtYWlsLmNvbT4sCisgICAgICAgICAgICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBjb25maWd1cmUuYWMgKEFDX0NIRUNLX0hFQURFUlMpOiBBZGQgJ3N5cy9zeXNjYWxsLmgnLgorCSogbWFuL3N0YXJ0LXN0b3AtZGFlbW9uLjg6IERvY3VtZW50IG5ldyBvcHRpb24gLS1pb3NjaGVkLgorCSogdXRpbHMvc3RhcnQtc3RvcC1kYWVtb24uYyBbSEFWRV9TWVNfU1lTQ0FMTF9IXTogSW5jbHVkZQorCTxzeXMvc3lzY2FsbC5oPi4KKwkoSEFWRV9JT1BSSU9fU0VUKSBbU1lTX2lvcHJpb19zZXQsIGxpbnV4XTogTmV3IG1hY3JvLgorCShJT1BSSU9fQ0xBU1NfTk9ORSwgSU9QUklPX0NMQVNTX1JUKTogTmV3IGFub255bW91cyBlbnVtLgorCShJT1BSSU9fQ0xBU1NfQkUsIElPUFJJT19DTEFTU19JRExFKTogTGlrZXdpc2UuCisJKElPUFJJT19XSE9fUFJPQ0VTUywgSU9QUklPX1dIT19QR1JQLCBJT1BSSU9fV0hPX1VTRVIpOiBMaWtld2lzZS4KKwkoSU9QUklPX0NMQVNTX1NISUZULCBJT1BSSU9fUFJJT19WQUxVRSwgSU9fU0NIRURfUFJJT19NSU4pCisJKElPX1NDSEVEX1BSSU9fTUFYKTogTmV3IG1hY3Jvcy4KKwkoaW9fc2NoZWQpOiBOZXcgdmFyaWFibGUuCisJKGRvX2hlbHApOiBEb2N1bWVudCAtLWlvc2NoZWQuCisJKGlvcHJpb19zZXQpIFtIQVZFX0lPUFJJT19TRVRdOiBOZXcgZnVuY3Rpb24uCisJKHBhcnNlX2lvX3NjaGVkdWxlLCBzZXRfaW9fc2NoZWR1bGUpOiBMaWtld2lzZS4KKwkocGFyc2Vfb3B0aW9ucyk6IEFkZCAnaW9zY2hlZCcgdG8gbG9uZ29wdHMuIEFkZCAnSTonIHRvIGdldG9wdF9sb25nCisJY2FsbC4gSGFuZGxlICdJJyBhcyBnZXRvcHRfbG9uZyByZXR1cm4gdmFsdWUuIENhbGwgcGFyc2VfaW9fc2NoZWR1bGUKKwlpZiBpb19zY2hlZHVsZV9zdHIgaXMgbm90IE5VTEwuCisJKG1haW4pOiBQcmludCBpb19zY2hlZCB2YWx1ZXMgaWYgLS10ZXN0IGlzIHVzZWQuIENhbGwgc2V0X2lvX3NjaGVkdWxlCisJaWYgaW9fc2NoZWQgaXMgbm90IE5VTEwuCisKKzIwMDktMDItMjYgIFJvbWFpbiBGcmFuY29pc2UgIDxyZnJhbmNvaXNlQGRlYmlhbi5vcmc+LAorICAgICAgICAgICAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc3JjL2ZpbGVzZGIuYzogSW5jbHVkZSAncHJvZ3Jlc3MuaCcuCisJKGVuc3VyZV9hbGxpbnN0ZmlsZXNfYXZhaWxhYmxlKTogQ2FsbCBwcm9ncmVzc19pbml0IGluc3RlYWQgb2YKKwlkaXJlY3RseSBwcmludGluZy4gQ2FsbCBwcm9ncmVzc19zdGVwIGlmIG5lZWRpbmcgdG8gcHJpbnQgb24gZWFjaAorCXBhY2thZ2UgaXRlcmF0aW9uLiBBbmQgY2FsbCBwcm9ncmVzc19kb25lIGlmIG5lZWRpbmcgdG8gcHJpbnQgd2hlbgorCWZpbmlzaGVkLgorCisyMDA5LTAyLTI2ICBSb21haW4gRnJhbmNvaXNlICA8cmZyYW5jb2lzZUBkZWJpYW4ub3JnPiwKKyAgICAgICAgICAgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGxpYi9NYWtlZmlsZS5hbSAobGliZHBrZ19hX1NPVVJDRVMpOiBBZGQgJ3Byb2dyZXNzLmgnIGFuZAorCSdwcm9ncmVzcy5jJy4KKwkqIGxpYi9wcm9ncmVzcy5oOiBOZXcgZmlsZS4KKwkqIGxpYi9wcm9ncmVzcy5jOiBMaWtld2lzZS4KKworMjAwOS0wMi0yMiAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy91cGRhdGUtYWx0ZXJuYXRpdmVzLnBsOiBBZGQgbmV3IG9wdGlvbiAtLWxvZyB0bworCWxvZyB0byBhbm90aGVyIGZpbGUgdGhhbiAvdmFyL2xvZy9kcGtnLmxvZy4KKwkqIG1hbi91cGRhdGUtYWx0ZXJuYXRpdmVzLjg6IERvY3VtZW50IHRoZSBuZXcgb3B0aW9uLgorCSogc2NyaXB0cy90LzkwMF91cGRhdGVfYWx0ZXJuYXRpdmVzLnQ6IENhbGwgdXBkYXRlLWFsdGVybmF0aXZlcworCXdpdGggLS1sb2cgL2Rldi9udWxsIHNpbmNlIHRoZSB0ZXN0IHN1aXRlIGNhbiBiZSBydW4gd2l0aCBmYWtlcm9vdAorCWFuZCBpdCB3b3VsZCB0cnkgdG8gd3JpdGUgdG8gL3Zhci9sb2cvZHBrZy5sb2cgYmVjYXVzZSBmYWtlcm9vdAorCW1ha2VzIGl0IGJlbGlldmUgdGhhdCBpdCBpcyB3cml0YWJsZS4KKworMjAwOS0wMi0yMiAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy91cGRhdGUtYWx0ZXJuYXRpdmVzLnBsOiB1cGRhdGUtYWx0ZXJuYXRpdmVzIHNob3VsZCBub3QKKwlyZXBsYWNlIHJlYWwgZmlsZXMgYnkgc3ltbGlua3MuIFdoZW4gLS1pbnN0YWxsIGlzIGNhbGxlZCwgdGhlCisJYWx0ZXJuYXRpdmUgbGluayBzaG91bGQgZWl0aGVyIG5vdCBleGlzdCBvciBhbHJlYWR5IGJlIGEgbGluay4gSXQKKwl0aGF0J3Mgbm90IHRoZSBjYXNlLCBpdCB3aWxsIHNpbXBseSBza2lwIGluc3RhbGxpbmcgdGhhdCBsaW5rIGFuZAorCWRpc3BsYXkgYSB3YXJuaW5nLiBIb3dldmVyIGlmIC0tZm9yY2UgaXMgZ2l2ZW4sIGl0IHdpbGwgKHRyeSB0bykKKwlyZXBsYWNlIHRoZSBmaWxlLgorCSogbWFuL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuODogRG9jdW1lbnQgdGhpcyBiZWhhdmlvdXIuCisJKiBzY3JpcHRzL3QvOTAwX3VwZGF0ZV9hbHRlcm5hdGl2ZXMudDogQWRkIGNvcnJlc3BvbmRpbmcgdGVzdHMgaW4KKwl0aGUgdGVzdCBzdWl0ZS4KKworMjAwOS0wMi0yMiAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogbWFuL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuODogRG9jdW1lbnQgaG93IC0tYWxsIGNhbiBiZSB1c2VkIHRvCisJcmVwYWlyIGFsbCBhbHRlcm5hdGl2ZXMgb24gdGhlIHN5c3RlbSBpbiBhIHNpbmdsZSBjb21tYW5kLgorCSogc2NyaXB0cy91cGRhdGUtYWx0ZXJuYXRpdmVzLnBsOiBFbnN1cmUgdGhlIGFib3ZlIGV4cGxhbmF0aW9uCisJaXMgdHJ1ZSBieSBlbnN1cmluZyB0aGF0IC0tY29uZmlnIGRvZXMgc29tZXRoaW5nIHNlbnNpYmxlIHdoZW4KKwlubyBhbHRlcm5hdGl2ZSBpcyBjdXJyZW50bHkgc2VsZWN0ZWQgYW5kIHdoZW4gdGhlIHVzZXIgaW5wdXQgaXMKKwllbXB0eTogaXQgd2lsbCBhdXRvLXNlbGVjdCB0aGUgYmVzdCBhbHRlcm5hdGl2ZS4KKworMjAwOS0wMi0yMiAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy91cGRhdGUtYWx0ZXJuYXRpdmVzLnBsOiBJbXBsZW1lbnQgLS1zZXQtc2VsZWN0aW9ucy4KKwlJdCdzIHRoZSB0aGUgY291bnRlcnBhcnQgb2YgLS1nZXQtc2VsZWN0aW9ucywgaXQgcmVhZHMKKwljb25maWd1cmF0aW9uIG9uIHN0YW5kYXJkIGlucHV0IGFuZCByZWNvbmZpZ3VyZXMgYWx0ZXJuYXRpdmVzCisJYWNjb3JkaW5nbHkuCisJKiBtYW4vdXBkYXRlLWFsdGVybmF0aXZlcy44OiBEb2N1bWVudCB0aGlzIG9wdGlvbi4KKwkqIHNjcmlwdHMvdC85MDBfdXBkYXRlX2FsdGVybmF0aXZlcy50OiBBZGQgY29ycmVzcG9uZGluZyB0ZXN0cyBpbgorCXRoZSB0ZXN0IHN1aXRlLgorCisyMDA5LTAyLTIyICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMucGw6IEltcGxlbWVudCAtLWdldC1zZWxlY3Rpb25zLgorCVRoZSBuZXcgb3B0aW9uIGxpc3RzIGFsbCBtYXN0ZXIgYWx0ZXJuYXRpdmVzIGFuZCB0aGVpciBzdGF0dXMgaW4gYQorCWZvcm1hdCBzaW1wbGUgdG8gcGFyc2UuCisJKiBtYW4vdXBkYXRlLWFsdGVybmF0aXZlcy44OiBEb2N1bWVudCB0aGlzIG9wdGlvbi4KKworMjAwOS0wMi0yMiAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy91cGRhdGUtYWx0ZXJuYXRpdmVzLnBsOiBJbnN0YWxsYXRpb24gb2YgYSBzbGF2ZQorCWFsdGVybmF0aXZlIGxpbmsgaXMgb25seSBkb25lIGlmIHRoZSBjb3JyZXNwb25kaW5nIHNsYXZlIGZpbGUgaXMKKwlhdmFpbGFibGUuCisJKiBtYW4vdXBkYXRlLWFsdGVybmF0aXZlcy44OiBEb2N1bWVudCB0aGlzIGJlaGF2aW91ci4KKwkqIHNjcmlwdHMvdC85MDBfdXBkYXRlX2FsdGVybmF0aXZlcy50OiBBZGQgY29ycmVzcG9uZGluZyB0ZXN0cyBpbgorCXRoZSB0ZXN0IHN1aXRlLgorCisyMDA5LTAyLTIyICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMucGw6IEFkZCBtb3JlIHNhbml0eSBjaGVjayBmb3IKKwktLWluc3RhbGw6IGVuc3VyZSBhbHRlcm5hdGl2ZSBwYXRoIGFuZCBsaW5rcyBhcmUgYWJzb2x1dGUsIGVuc3VyZQorCW1hc3RlciBhbHRlcm5hdGl2ZSBwYXRoIGV4aXN0cywgZm9yYmlkIC8gYW5kIHNwYWNlcyBpbiBhbHRlcm5hdGl2ZQorCW5hbWVzLgorCSogc2NyaXB0cy90LzkwMF91cGRhdGVfYWx0ZXJuYXRpdmVzLnQ6IEFkZCBjb3JyZXNwb25kaW5nIHRlc3RzIGluCisJdGhlIHRlc3Qgc3VpdGUuCisKKzIwMDktMDItMjIgIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvdXBkYXRlLWFsdGVybmF0aXZlcy5wbDogQ2hlY2tzIHRoYXQgLS1pbnN0YWxsIGRvZXMgbm90CisJcmV1c2UgYWx0ZXJuYXRpdmVzIG9yIGxpbmtzIGluIGEgd2F5IHRoYXQgaXMgbm90IGNvbXBhdGlibGUgd2l0aAorCXRoZSBjdXJyZW50IHNldHVwLgorCSogc2NyaXB0cy90LzkwMF91cGRhdGVfYWx0ZXJuYXRpdmVzLnQ6IEFkZCBjb3JyZXNwb25kaW5nIHRlc3RzIGluCisJdGhlIHRlc3Qgc3VpdGUuCisKKzIwMDktMDItMjIgIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvdXBkYXRlLWFsdGVybmF0aXZlcy5wbDogQWRkIGxvZ2dpbmcgdG8KKwkvdmFyL2xvZy9kcGtnLmxvZy4KKworMjAwOS0wMi0yMiAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogbWFuL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuODogVGhlIHZvY2FidWxhcnkgdXNlZCB3YXMgbWlzbGVhZGluZworCWFuZCBub3QgcmVhbGx5IHVuaWZvcm0uIFRyeSB0byBzdGFuZGFyZGl6ZSBhbmQgbWFrZSBpdCBtYXRjaCB3aXRoCisJdGhlIHZvY2FidWxhcnkgdXNlZCBpbiB0aGUgc291cmNlIGNvZGUgdG9vLgorCUluY2x1ZGVzIG1pbm9yIGZpeGVzIHRvIG1ha2UgaXQgbWF0Y2ggdGhlIGJlaGF2aW91ciBvZiB0aGUgY3VycmVudAorCWltcGxlbWVudGF0aW9uLgorCisyMDA5LTAyLTIyICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMucGw6IFJld3JpdGUgaXQgZW50aXJlbHkgaW4gYSBtb3JlCisJb2JqZWN0LW9yaWVudGVkIHdheS4gVGhlIG9ubHkgYmVoYXZpb3VyIGNoYW5nZXMgY29uY2VybiAtLWNvbmZpZzoKKwl0aGUgb3V0cHV0IGlzIG5pY2VyIGFuZCBzb3J0ZWQsIGl0IGFjY2V0cyBhIHBhdGggYXMgd2VsbCBhcyB0aGUKKwlpbmRleCBvZiB0aGUgY2hvaWNlLgorCSogc2NyaXB0cy90LzkwMF91cGRhdGVfYWx0ZXJuYXRpdmVzLnQ6IFRlc3Qgc3VpdGUgYWRqdXN0ZWQgdG8gdGhlCisJLS1jb25maWcgY2hhbmdlLgorCisyMDA5LTAyLTIyICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbCwgc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGw6IFJlc2V0CisJdW1hc2sgdG8gMDAyMiB0byBlbnN1cmUgdGhhdCBmaWxlcyBjcmVhdGVkIGluIHRoZSBERUJJQU4gZGlyZWN0b3J5CisJaGF2ZSBzYW5lIHBlcm1pc3Npb25zLgorCisyMDA5LTAyLTEzICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzcmMvcXVlcnkuYzogUmVtb3ZlIGJvZ3VzIGNvbW1lbnQgYWJvdXQgJy0teWV0LXRvLXVucGFjaycuCisKKzIwMDktMDItMTEgIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvTWFrZWZpbGUuYW06IERyb3AgY2xlYW51cC1pbmZvLnBsIHNjcmlwdC4KKwkqIG1hbi9NYWtlZmlsZS5hbSwgbWFuL3BvL3BvNGEuY2ZnOiBEcm9wIGNsZWFudXAtaW5mbyg4KSBtYW51YWwgcGFnZS4KKwkqIFJFQURNRS5mZWF0dXJlLXJlbW92YWwtc2NoZWR1bGU6IFVwZGF0ZSBpbmZvcm1hdGlvbiBhY2NvcmRpbmdseS4KKworMjAwOS0wMi0xMSAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9NYWtlZmlsZS5hbTogTW92ZSB1cGRhdGUtYWx0ZXJuYXRpdmVzLCBkcGtnLWRpdmVydCBhbmQKKwlkcGtnLXN0YXRvdmVycmlkZSB0byAvdXNyL2JpbiBhcyB0aGV5IGNhbiBiZSB1c2VmdWwgdG8gdXNlcnMgc2luY2UKKwl0aGV5IGhhdmUgLS1kaXNwbGF5IG9yIC0tbGlzdCBvcHRpb25zIHRoYXQgZG8gbm90IHJlcXVpcmUKKwlhZG1pbmlzdHJhdGl2ZSByaWdodHMuCisJKiBNYWtlZmlsZS5hbSAoRVhUUkFfRElTVCk6IEFkZCBkZWJpYW4vZHBrZy5saW5rcy4KKworMjAwOS0wMi0xMSAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDogQWRkIG5ldyBvcHRpb24gLS10YXJnZXQvLVQgdG8KKwlhbGxvdyBhIHNwZWNpZmljIGRlYmlhbi9ydWxlcyB0YXJnZXQgdG8gYmUgcnVuLiBUaGUgbmV3IC0tYXMtcm9vdAorCW9wdGlvbiBmb3JjZXMgdGhlIHRhcmdldCB0byBiZSBydW4gd2l0aCByb290IHJpZ2h0cy4KKwlBZGQgc3VwcG9ydCBmb3IgdGhlIHR3byBjb21tb24gc3ludGF4ZXMgZm9yIGxvbmcKKwlvcHRpb25zCSgiLS1hZG1pbmRpcj3igKYiIGFuZCAiLS1hZG1pbmRpciDigKYiKS4KKwkqIG1hbi9kcGtnLWJ1aWxkcGFja2FnZS4xOiBVcGRhdGUgZG9jdW1lbnRhdGlvbiBhY2NvcmRpbmdseS4KKworMjAwOS0wMi0xMSAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogbWFuL2Rwa2ctYnVpbGRwYWNrYWdlLjE6IEZpeCBuYW1lIG9mIGJpbmFyeSB0YXJnZXQgaW4gZGVmYXVsdAorCWNhc2UuCisKKzIwMDktMDItMTAgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNyYy9lbnF1aXJ5LmMgKGFzc2VydF92ZXJzaW9uX3N1cHBvcnQpOiBSZW5hbWUgdmVycmV2X2J1ZiBhcmd1bWVudAorCXRvIHZlcnNpb24uCisKKzIwMDktMDItMTAgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNyYy9lbnF1aXJ5LmMgKGFzc2VydF92ZXJzaW9uX3N1cHBvcnQpOiBBZGQgbmV3IGZlYXR1cmVfbmFtZQorCWFyZ3VtZW50LCBhbmQgdXNlIGl0IHdoZW4gcHJpbnRpbmcgdGhlIG91dHB1dCBtZXNzYWdlcy4gRml4IGFsbAorCWNhbGxlcnMuCisKKzIwMDktMDItMTAgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNyYy9lbnF1aXJ5LmMgKGFzc2VydF92ZXJzaW9uX3N1cHBvcnQpOiBSZW1vdmUgcmVxdmVyc2lvbiBhcmd1bWVudC4KKwlEbyBub3QgaW5pdGlhbGl6ZSB2ZXJyZXZfYnVmIGZyb20gcmVxdmVyc2lvbiwgd2hlbiB0aGUgZXBvY2ggaXMgfjBVTC4KKwkoYXNzZXJ0cHJlZGVwKTogUGFzcyBhIGZ1bGx5IGNvbnN0cnVjdGVkIHZlcnNpb25yZXZpc2lvbiB0bworCWFzc2VydF92ZXJzaW9uX3N1cHBvcnQsIHJlbmFtZSB2ZXJzaW9ucmV2aXNpb24gdmFyaWFibGUgdG8gdmVyc2lvbgorCWFuZCByZW1vdmUgc3RhdGljIGtleXdvcmQuCisJKGFzc2VydGVwb2NoKTogTGlrZXdpc2UuCisJKGFzc2VydGxvbmdmaWxlbmFtZXMpOiBMaWtld2lzZS4KKwkoYXNzZXJ0bXVsdGljb25yZXApOiBMaWtld2lzZS4KKworMjAwOS0wMi0xMCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc3JjL2VucXVpcnkuYyAoYXNzZXJ0dmVyc2lvbik6IFJlbmFtZSB0byAuLi4KKwkoYXNzZXJ0X3ZlcnNpb25fc3VwcG9ydCk6IC4uLiB0aGlzLgorCisyMDA5LTAyLTA4ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBsaWIvZHBrZy5oIChvaHNoaXR2Yik6IFJlbW92ZSBmdW5jdGlvbiBwcm90b3R5cGUuCisJKiBsaWIvZWhhbmRsZS5jIChvaHNoaXR2Yik6IFJlbW92ZSBmdW5jdGlvbiBkZWZpbml0aW9uLgorCisyMDA5LTAyLTA2ICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL3QvOTAwX3VwZGF0ZV9hbHRlcm5hdGl2ZXMudDogTmV3IHRlc3Qtc3VpdGUgZm9yCisJdXBkYXRlLWFsdGVybmF0aXZlcy4KKwkqIHNjcmlwdHMvTWFrZWZpbGUuYW06IEFkZCB0aGUgcHJldmlvdXMgZmlsZS4KKworMjAwOS0wMi0wNiAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy91cGRhdGUtYWx0ZXJuYXRpdmVzLnBsOiBEZWFsIHdpdGggZW1wdHkKKwlmaWxlcyBpbiB0aGUgYWRtaW5pc3RyYXRpdmUgZGlyZWN0b3J5IGJ5IGlnbm9yaW5nIHRoZW0uCisKKzIwMDktMDItMDYgIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvdXBkYXRlLWFsdGVybmF0aXZlcy5wbDogRW5zdXJlIHRoYXQgYSBub24tZXhpc3RlbnQKKwlhbHRlcm5hdGl2ZSByZXN1bHQgaW4gYXV0b21hdGljIG1vZGUgY29uZmlndXJhdGlvbi4KKworMjAwOS0wMi0wNiAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy91cGRhdGUtYWx0ZXJuYXRpdmVzLnBsOiBDaGFuZ2Ugc2V0X2xpbmtzKCkgdG8KKwlhbHNvIHJlc2V0IHRoZSBtYWluIGFsdGVybmF0aXZlIGxpbmsuIEFkZCBhIHBhcmFtZXRlciB0bworCW1ha2UgaXQgcXVpZXQuCisJV2hlbiAtLWluc3RhbGwgcmVpbnN0YWxscyB0aGUgY3VycmVudCBhbmQgbWFudWFsbHkgc2VsZWN0ZWQgZW50cnksCisJbGV0IGl0IHJlY3JlYXRlIHRoZSBzeW1saW5rcyBpbiBjYXNlIHNvbWV0aGluZyBoYXMgZ29uZSB3cm9uZy4KKworMjAwOS0wMi0wNiAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy91cGRhdGUtYWx0ZXJuYXRpdmVzLnBsOiBSZW1vdmUgdGhlIGFsdGVybmF0aXZlIHdoZW4KKwl0aGUgbGFzdCBjaG9pY2UgaXMgcmVtb3ZlZCwgZXZlbiBpZiB3ZSBhcmUgaW4gbWFudWFsIG1vZGUuCisJKiBtYW4vdXBkYXRlLWFsdGVybmF0aXZlcy44OiBVcGRhdGUgdGhlIGRvY3VtZW50YXRpb24KKwlhY2NvcmRpbmdseSB0byBub3QgYmUgYXMgc3Ryb25nIGFib3V0IG5vdCB0b3VjaGluZyBsaW5rcyBpbiBtYW51YWwKKwltb2RlLgorCisyMDA5LTAyLTA2ICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMucGwgKHNldF9saW5rcyk6IFJlbW92ZSBzbGF2ZWxpbmtzCisJaWYgbmVlZGVkIGFzIHdlbGwuIFdlIGNyZWF0ZSBzbGF2ZSBsaW5rcyBhdXRvbWF0aWNhbGx5LCB3ZSBzaG91bGQKKwlyZW1vdmUgdGhlbSBpbiB0aGUgc2FtZSB3YXkuIE90aGVyd2lzZSAtLWNvbmZpZyBvciAtLXNldCB3aWxsIGxldAorCWRhbmdsaW5nIHN5bWxpbmtzIG9uIHRoZSBzeXN0ZW0uCisKKzIwMDktMDItMDYgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIG1hbi9kZWIuNTogQWRkIGRldGFpbGVkIGluZm9ybWF0aW9uIG9mIHRoZSBjdXJyZW50bHkgc3VwcG9ydGVkCisJZm9ybWF0LgorCisyMDA5LTAyLTA2ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBvc3RhYmxlOiBBZGQgZ251LWtvcGVuc29sYXJpcy4KKwkqIHRyaXBsZXR0YWJsZTogQWRkIGdudS1rb3BlbnNvbGFyaXMgdG8ga29wZW5zb2xhcmlzIG1hcHBpbmcuCisKKzIwMDktMDItMDYgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIG9zdGFibGU6IFJlaW5kZW50IHRvIG1ha2Ugcm9vbSBmb3IgbG9uZ2VyIG9zIG5hbWVzLgorCisyMDA5LTAyLTA1ICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMucGwgKHJlbmFtZV9tdik6IEludGVncmF0ZSBsb2dpYyB0bworCW5vdCBmYWlsIGlmIEVOT0VOVCBpcyB0aGUgcmVhc29uIHdoeSB0aGUgcmVuYW1lIGZhaWxlZC4KKworMjAwOS0wMi0wNSAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy91cGRhdGUtYWx0ZXJuYXRpdmVzLnBsOiBFbnN1cmUgdGhhdCBhIGJyb2tlbiBsaW5rCisJaW4gYXV0b21hdGljIG1vZGUgZG9lc24ndCBsZWFkIHRvIHRoZSBhbHRlcm5hdGl2ZSBiZWluZyBzZXQKKwlvbiBtYW51YWwgbW9kZS4gQWxzbyBkaXNwbGF5cyBieSBkZWZhdWx0IChhbmQgbm90IG9ubHkKKwl3aGVuIC0tdmVyYm9zZSBpcyBnaXZlbikgdGhlIG1lc3NhZ2UgdGhhdCBpbmRpY2F0ZXMgdGhhdAorCWFuIGFsdGVybmF0aXZlIGlzIHN3aXRjaGVkIHRvIG1hbnVhbCBtb2RlLgorCisyMDA5LTAyLTA1ICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorICAgICAgICAgICAgT3NhbXUgQW9raSAgPG9zYW11QGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvdXBkYXRlLWFsdGVybmF0aXZlcy5wbDogQWxsb3cgLS1jb25maWcgdG8gY29udGludWUgd2hlbgorCXRoZSBjdXJyZW50bHkgc2VsZWN0ZWQgYWx0ZXJuYXRpdmUgZG9lc24ndCBtYXRjaCB0aGUgb25seSBleGlzdGluZworCW9uZS4gVXNlZnVsIHRvIGJlIGFibGUgdG8gcmVjb3ZlciBmcm9tIGEgYnJva2VuIGNvbmZpZ3VyYXRpb24uCisJQWxzbyBvZmZlciB0aGUgY2hvaWNlIGluIC0tY29uZmlnIG1vZGUgdG8gZ28gYmFjayB0aGUgYXV0b21hdGljCisJbW9kZS4gQWRkIGEgbmV3IC0tc2tpcC1hdXRvIG9wdGlvbiB0byBjb21iaW5lIHdpdGggLS1hbGwgYW5kCisJZWFzaWx5IHJldmlldyBtYW51YWwgYW5kIGJyb2tlbiBhbHRlcm5hdGl2ZXMuCisJKiBtYW4vdXBkYXRlLWFsdGVybmF0aXZlcy44OiBVcGRhdGUgdGhlIGRvY3VtZW50YXRpb24gYWNjb3JkaW5nbHkuCisKKzIwMDktMDItMDQgIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvRHBrZy9WZW5kb3IvVWJ1bnR1LnBtOiBVYnVudHUgdmVuZG9yIG9iamVjdCBpbXBsZW1lbnRpbmcKKwlsb29rdXAgb2YgbGF1bmNocGFkIGJ1Z3MgaW4gY2hhbmdlbG9ncyBhbmQgYSBzYWZldHktY2hlY2sgZm9yCisJTWFpbnRhaW5lciBmaWVsZHMgb2YgZm9ya2VkIHBhY2thZ2VzIChsYXVuY2hlZCBkdXJpbmcgc291cmNlCisJYnVpbGQpLgorCSogc2NyaXB0cy9NYWtlZmlsZS5hbSAoRVhUUkFfRElTVCk6IEFkZAorCSdzY3JpcHRzL0Rwa2cvVmVuZG9yL1VidW50dS5wbScuCisJKiBzY3JpcHRzL3BvL1BPVEZJTEVTLmluOiBBZGQgJ3NjcmlwdHMvRHBrZy9WZW5kb3IvVWJ1bnR1LnBtJy4KKworMjAwOS0wMi0wNCAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9EcGtnL1ZlbmRvci9EZWZhdWx0LnBtOiBHZW5lcmljIHZlbmRvciBvYmplY3QgdGhhdCB3aWxsCisJYmUgdXNlZCB0byBob29rIHZlbmRvci1zcGVjaWZpYyBiZWhhdmlvdXIgaW4gbXVsdGlwbGUgcGxhY2VzLgorCSogc2NyaXB0cy9EcGtnL1ZlbmRvci9EZWJpYW4ucG06IERlYmlhbiB2YXJpYW50IG9mIHRoYXQgb2JqZWN0LgorCSogc2NyaXB0cy9EcGtnL1ZlbmRvci5wbSAoZ2V0X3ZlbmRvcl9vYmplY3QsIHJ1bl92ZW5kb3JfaG9vayk6CisJTmV3IGZ1bmN0aW9ucyB0byByZXRyaWV2ZSB0aGUgY3VycmVudCB2ZW5kb3Igb2JqZWN0IGFuZCBydW4KKwl2ZW5kb3Itc3BlY2lmaWMgY29kZS4KKwkqIHNjcmlwdHMvZHBrZy1zb3VyY2UucGwsIHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOiBBZGQgZmlyc3QKKwl2ZW5kb3IgaG9va3MgdG8gYmUgdXNlZCBieSBVYnVudHUuCisJKiBzY3JpcHRzL01ha2VmaWxlLmFtIChFWFRSQV9ESVNUKTogQWRkCisJJ3NjcmlwdHMvRHBrZy9WZW5kb3IvRGVmYXVsdC5wbScgYW5kCisJJ3NjcmlwdHMvRHBrZy9WZW5kb3IvRGViaWFuLnBtJy4KKworMjAwOS0wMS0yOSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogbGliL01ha2VmaWxlLmFtIChsaWJkcGtnX2FfU09VUkNFUyk6IEFkZCAnZHBrZy10ZXN0LmgnLgorCSogbGliY29tcGF0L01ha2VmaWxlLmFtIChsaWJjb21wYXRfYV9TT1VSQ0VTKTogQWRkICdjb21wYXQuaCcuCisJKiBtYW4vTWFrZWZpbGUuYW0gKEVYVFJBX0RJU1QpOiBBZGQgJ3BvL0NoYW5nZUxvZycuCisKKzIwMDktMDEtMjcgIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvdC85MDBfRHBrZ19WZXJzaW9uLnQ6IFJlbmFtZWQgaW50by4uLgorCSogc2NyaXB0cy90LzEwMF9EcGtnX1ZlcnNpb24udDogYW5kIG1lcmdlZCB0ZXN0IGNhc2VzIHByZXZpb3VzbHkKKwlwcm92aWRlZCBieSB0aGlzIGZpbGUgc28gdGhhdCB0aGVyZSdzIG5vIGxvc3Mgb2YgdGVzdHMuIEFsc28KKwlhZGp1c3RlZCB0ZXN0IGNhc2VzIHRvIG1hdGNoIHRoZSBjaGFuZ2UgYmVsb3cuCisJKiBzY3JpcHRzL0Rwa2cvVmVyc2lvbi5wbSAoY29tcGFyZV92ZXJzaW9ucyk6IEhhbmRsZSAiPCIgbGlrZSAiPD0iCisJYW5kICI+IiBsaWtlICI+PSIgaW4gb3JkZXIgdG8gYmUgY29uc2lzdGVudCB3aXRoIGRwa2cKKwktLWNvbXBhcmUtdmVyc2lvbnMuIEVtaXQgd2FybmluZ3Mgd2hlbiB0aGV5IGFyZSB1c2VkIGFzIHRoZXkgYXJlCisJZGVwcmVjYXRlZC4KKwkqIHNjcmlwdHMvTWFrZWZpbGUuYW06IERyb3Agc2NyaXB0cy90LzkwMF9EcGtnX1ZlcnNpb24udCBmcm9tIHRoZQorCXNldCBvZiBleHRyYSBmaWxlcyB0byBkaXN0cmlidXRlLgorCSogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6IFVzZSAiPDwiIGluc3RlYWQgb2YgYW1iaWd1b3VzICI8IiBpbgorCXZlcnNpb24gY29tcGFyaXNvbi4KKworMjAwOS0wMS0yMiAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogbGliL2xvZy5jIChzdGF0dXNmZF9zZW5kKTogVXNlIHZhcmJ1ZnN1YnN0YyB0byByZXBsYWNlIG5ldyBsaW5lcworCXdpdGggc3BhY2VzLgorCisyMDA5LTAxLTIyICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBsaWIvZHBrZy1kYi5oICh2YXJidWZzdWJzdGMpOiBOZXcgZnVuY3Rpb24gcHJvdG90eXBlLgorCSogbGliL3ZhcmJ1Zi5jICh2YXJidWZzdWJzdGMpOiBOZXcgZnVuY3Rpb24gZGVmaW5pdGlvbi4KKwkqIGxpYi90ZXN0L3QtdmFyYnVmLmMgKHRlc3RfdmFyYnVmX3N1YnN0Yyk6IE5ldyBmdW5jdGlvbi4KKwkodGVzdCk6IENhbGwgdGVzdF92YXJidWZfc3Vic3RjLgorCisyMDA5LTAxLTIyICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBjb25maWd1cmUuYWMgKEFDX0NPTkZJR19GSUxFUyk6IEFkZCAnbGliL3Rlc3QvTWFrZWZpbGUnLgorCSogbGliL01ha2VmaWxlLmFtIChTVUJESVJTKTogTmV3IHZhcmlhYmxlLgorCSogbGliL2Rwa2ctdGVzdC5oOiBOZXcgZmlsZS4KKwkqIGxpYi90ZXN0L01ha2VmaWxlLmFtOiBMaWtld2lzZS4KKwkqIGxpYi90ZXN0L3QtbWFjcm9zLmM6IExpa2V3aXNlLgorCSogbGliL3Rlc3QvdC1wYXRoLmM6IExpa2V3aXNlLgorCSogbGliL3Rlc3QvdC1wa2dpbmZvLmM6IExpa2V3aXNlLgorCSogbGliL3Rlc3QvdC1zdHJpbmcuYzogTGlrZXdpc2UuCisJKiBsaWIvdGVzdC90LXRlc3QuYzogTGlrZXdpc2UuCisJKiBsaWIvdGVzdC90LXZhcmJ1Zi5jOiBMaWtld2lzZS4KKwkqIGxpYi90ZXN0L3QtdmVyc2lvbi5jOiBMaWtld2lzZS4KKworMjAwOS0wMS0yMCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogbGliL2Rwa2ctZGIuaCAodmFyYnVmYWRkYnVmKTogUmVuYW1lIGFyZ3VtZW50IGwgdG8gc2l6ZS4KKwkqIGxpYi9uZm1hbGxvYy5jIChuZnN0cm5zYXZlKTogTGlrZXdpc2UuCisJKiBsaWIvdmFyYnVmLmMgKHZhcmJ1ZmFkZGJ1Zik6IExpa2V3aXNlLgorCisyMDA5LTAxLTIwICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBsaWIvZHBrZy1kYi5oICh2YXJidWZkdXBjKTogVXNlIHNpemVfdCBpbnN0ZWFkIG9mIHNzaXplX3QuCisJKHZhcmJ1ZmFkZGJ1Zik6IFVzZSBzaXplX3QgaW5zdGVhZCBvZiBjb25zdCBpbnQuCisJKG5mc3RybnNhdmUpOiBVc2Ugc2l6ZV90IGluc3RlYWQgb2YgaW50LgorCisyMDA5LTAxLTE0ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBtYW4vc3RhcnQtc3RvcC1kYWVtb24uODogRG9jdW1lbnQgbmV3IG9wdGlvbiAtLXByb2NzY2hlZC4KKwkqIHV0aWxzL3N0YXJ0LXN0b3AtZGFlbW9uLmMgW19QT1NJWF9QUklPUklUWV9TQ0hFRFVMSU5HXTogSW5jbHVkZQorCTxzY2hlZC5oPi4KKwlbIV9QT1NJWF9QUklPUklUWV9TQ0hFRFVMSU5HXTogRGVmaW5lIFNDSEVEX09USEVSLCBTQ0hFRF9GSUZPIGFuZAorCVNDSEVEX1JSIHdpdGggZHVtbXkgdmFsdWVzLgorCShzdHJ1Y3QgcmVzX3NjaGVkdWxlKTogTmV3IHR5cGUuCisJKHByb2Nfc2NoZWQpOiBOZXcgdmFyaWFibGUuCisJKGRvX2hlbHApOiBEb2N1bWVudCAtLXByb2NzY2hlZC4KKwkocGFyc2VfcHJvY19zY2hlZHVsZSwgc2V0X3Byb2Nfc2NoZWR1bGUpOiBOZXcgZnVuY3Rpb25zLgorCShwYXJzZV9vcHRpb25zKTogQWRkICdwcm9jc2NoZWQnIHRvIGxvbmdvcHRzLiBBZGQgJ1A6JyB0byBnZXRvcHRfbG9uZworCWNhbGwuIEhhbmRsZSAnUCcgYXMgZ2V0b3B0X2xvbmcgcmV0dXJuIHZhbHVlLiBDYWxsIHBhcnNlX3Byb2Nfc2NoZWR1bGUKKwlpZiBwcm9jX3NjaGVkdWxlX3N0ciBpcyBub3QgTlVMTC4KKwkobWFpbik6IFByaW50IHByb2Nfc2NoZWQgdmFsdWVzIGlmIC0tdGVzdCBpcyB1c2VkLiBDYWxsCisJc2V0X3Byb2Nfc2NoZWR1bGUgaWYgcHJvY19zY2hlZCBpcyBub3QgTlVMTC4KKworMjAwOS0wMS0xNCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogdXRpbHMvc3RhcnQtc3RvcC1kYWVtb24uYyAoeHN0cmR1cCk6IE5ldyBmdW5jdGlvbi4KKwkocGFyc2Vfb3B0aW9ucyk6IFVzZSB4c3RyZHVwIGluc3RlYWQgb2Ygc3RyZHVwLgorCisyMDA5LTAxLTEwICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiB1dGlscy9zdGFydC1zdG9wLWRhZW1vbi5jIChtYWluKTogSWYgY2hhbmdldXNlciBpcyBhIHVpZCwgY2FsbAorCWdldHB3dWlkIHRvIGdldCB0aGUgcGFzc3dkIGVudHJ5IGFuZCBkbyB0aGUgc2FtZSBzZXR1cCBhcyBpZiBpdCBpcworCWEgdXNlcm5hbWUuCisKKzIwMDktMDEtMDcgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIG1hbi9kcGtnLWRlYi4xOiBEb2N1bWVudCB0aGF0IC14IHdpbGwgbW9kaWZ5IHRoZSBleHRyYWN0aW9uCisJZGlyZWN0b3J5IHBlcm1pc3Npb25zLgorCisyMDA5LTAxLTA1ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzcmMvbWFpbi5jIChzZXRvYnNvbGV0ZSk6IFVzZSB3YXJuaW5nIGluc3RlYWQgb2YgZnByaW50ZiBjYWxsLgorCShzZXRmb3JjZSk6IExpa2V3aXNlLgorCisyMDA5LTAxLTA1ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBtYW4vc3RhcnQtc3RvcC1kYWVtb24uODogQ2xhcmlmeSB0aGF0IHRoZSBzaWduYWwgc2VudCBieSBkZWZhdWx0CisJaXMgVEVSTSBub3QgS0lMTC4KKworMjAwOS0wMS0wNCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogdXRpbHMvc3RhcnQtc3RvcC1kYWVtb24uYyAoc2lnbmFsX25yKTogSW5pdGlhbGl6ZSB3aXRoIFNJR1RFUk0KKwlpbnN0ZWFkIG9mIGxpdGVyYWwgMTUuCisJKiBtYW4vc3RhcnQtc3RvcC1kYWVtb24uODogUmVmZXIgdG8gc2lnbmFsIGFzIFRFUk0gaW5zdGVhZCBvZgorCWxpdGVyYWwgMTUuCisKKzIwMDktMDEtMDQgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGxpYi9kcGtnLmggKExPQ0FMTElCRElSKTogTW92ZSBtYWNybyB0byAuLi4KKwkqIGRzZWxlY3QvTWFrZWZpbGUuYW0gKElOQ0xVREVTKTogLi4uIGhlcmUsIGFzIGEgLUQgYXJndW1lbnQuCisKKwkqIGxpYi9kcGtnLmggKERTRUxFQ1QpOiBNb3ZlIG1hY3JvIHRvIC4uLgorCSogZHNlbGVjdC9kc2VsZWN0Lmg6IC4uLiBoZXJlLgorCisJKiBsaWIvZHBrZy5oIChTUExJVFZFUlNJT04sIFNQTElUUEFSVERFRk1BWCk6IE1vdmUgbWFjcm9zIHRvIC4uLgorCSogZHBrZy1zcGxpdC9kcGtnLXNwbGl0Lmg6IC4uLiBoZXJlLgorCisJKiBsaWIvZHBrZy5oIChBUkNISVZFVkVSU0lPTiwgQlVJTERDT05UUk9MRElSLCBFWFRSQUNUQ09OVFJPTERJUikKKwkoQlVJTERPTERQS0dGT1JNQVQsIE9MREFSQ0hJVkVWRVJTSU9OLCBPTERERUJESVIsIE9MRE9MRERFQkRJUikKKwkoTUFYRklFTEROQU1FLCBJTlRFUlBSRVRFUl9NQVgpOiBNb3ZlIG1hY3JvcyB0byAuLi4KKwkqIGRwa2ctZGViL2Rwa2ctZGViLmg6IC4uLiBoZXJlLgorCisyMDA5LTAxLTA0ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBsaWIvZHBrZy5oIChwcmludGZvcmhlbHApOiBNb3ZlIGRlY2xhcmF0aW9uIHRvIC4uLgorCSogbGliL215b3B0Lmg6IC4uLiBoZXJlLgorCisyMDA5LTAxLTA0ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBsaWIvZHBrZy1kYi5oICh0cmlnX25vdGVfcGVuZF9jb3JlLCB0cmlnX25vdGVfcGVuZCk6IE1ha2UgdHJpZworCWFyZ3VtZW50IGNvbnN0LgorCSogbGliL3RyaWdsaWIuYyAodHJpZ19yZWNvcmRfYWN0aXZhdGlvbik6IExpa2V3aXNlLgorCSh0cmlnX2ZpbGVfYWN0aXZhdGUpOiBSZW1vdmUgbm93IHVubmVlZGVkIGNhc3QgaW4KKwl0cmlnX3JlY29yZF9hY3RpdmF0aW9uIGNhbGwuCisKKzIwMDktMDEtMDQgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGxpYi9teW9wdC5oIChNQVhfQ09ORklHX0xJTkUpOiBOZXcgbWFjcm8uCisJKiBsaWIvbXlvcHQuYyAobXlmaWxlb3B0KTogVXNlIE1BWF9DT05GSUdfTElORSBpbnN0ZWFkIG9mCisJTUFYRElWRVJURklMRU5BTUUuCisKKzIwMDktMDEtMDQgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGxpYi9kcGtnLmggKFNIRUxMLCBTSEVMTEVOVklSKTogUmVtb3ZlIHVudXNlZCBtYWNyb3MuCisJKiBzcmMvbWFpbi5oIChjaGVja19saWJ2ZXIpOiBSZW1vdmUgdW51c2VkIHByb3RvdHlwZS4KKworMjAwOS0wMS0wNCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogZHNlbGVjdC9tYWluLmNjIChmaW5kaW50YWJsZSwgZG1lLCByZWZyZXNobWVudSk6IE1ha2Ugc3RhdGljLgorCSogZHNlbGVjdC9tZXRob2QuY2MgKHN0aGZhaWxlZCk6IExpa2V3aXNlLgorCSogZHNlbGVjdC9wa2d0b3AuY2MgKHBrZ3ByaW9yaXR5c3RyaW5nKTogTGlrZXdpc2UuCisKKzIwMDgtMTItMzAgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGxpYi9laGFuZGxlLmMgKGJhZHVzYWdlKTogTW92ZSBmdW5jdGlvbiB0byAuLi4KKwkqIGxpYi9teW9wdC5jOiAuLi4gaGVyZS4gSW5jbHVkZSA8c3RkYXJnLmg+LgorCSogbGliL2Rwa2cuaCAoYmFkdXNhZ2UpOiBNb3ZlIGRlY2xhcmF0aW9uIHRvIC4uLgorCSogbGliL215b3B0Lmg6IC4uLiBoZXJlLgorCSogZHBrZy1zcGxpdC9zcGxpdC5jOiBJbmNsdWRlIDxteW9wdC5oPi4KKworMjAwOC0xMi0zMCAgQ29saW4gV2F0c29uICA8Y2p3YXRzb25AdWJ1bnR1LmNvbT4KKworCSogc3JjL2hlbHAuYyAocHJlZXhlY3NjcmlwdCk6IENhbGwgY2hkaXIgYWZ0ZXIgY2hyb290LgorCisyMDA4LTEyLTIzICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBsaWIvbG9nLmMgKHN0YXR1c2ZkX3NlbmQpOiBQYXNzIHRvIHdyaXRlIHRoZSByZW1haW5pbmcgZGF0YSwgbm90CisJdGhlIHNhbWUgaW5pdGlhbCBidWZmZXIuCisKKzIwMDgtMTItMDggIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG0sIHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGwsCisJc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGwsIHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsLAorCXNjcmlwdHMvZHBrZy1zb3VyY2UucGw6IEFsc28gaW1wb3J0IHRoZSBkZWZhdWx0IGV4cG9ydGVkIGZ1bmN0aW9ucworCW9mIERwa2c6OkVycm9ySGFuZGxpbmcgYW5kIG5vdCBvbmx5IHRoZSB1bnVzdWFsIG9uZXMuCisKKzIwMDgtMTItMDggIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGRwa2ctZGViL2J1aWxkLmMgKGRvX2J1aWxkKTogTWFyayBzdHJpbmdzIGZvciB0cmFuc2xhdGlvbi4KKwkqIGRwa2ctZGViL2V4dHJhY3QuYyAoZXh0cmFjdGhhbGYpOiBMaWtld2lzZS4KKwkqIGRwa2ctc3BsaXQvaW5mby5jIChyZWFkX2luZm8pOiBMaWtld2lzZS4KKwkqIGRwa2ctc3BsaXQvam9pbi5jIChyZWFzc2VtYmxlKTogTGlrZXdpc2UuCisJKiBkcGtnLXNwbGl0L3F1ZXVlLmMgKGRvX3F1ZXVlKTogTGlrZXdpc2UuCisJKiBkc2VsZWN0L3BrZ2xpc3QuY2MgKHBhY2thZ2VsaXN0OjpwYWNrYWdlbGlzdCk6IExpa2V3aXNlLgorCShwYWNrYWdlbGlzdDo6ZGlzcGxheSk6IExpa2V3aXNlLgorCSogbGliL2xvZy5jIChzdGF0dXNmZF9zZW5kKTogTGlrZXdpc2UuCisJKiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG0gKGRvX2J1aWxkKTogTGlrZXdpc2UuCisJKiBzcmMvZmlsZXNkYi5jIChlbnN1cmVfcGFja2FnZWZpbGVzX2F2YWlsYWJsZSk6IExpa2V3aXNlLgorCShlbnN1cmVfc3RhdG92ZXJyaWRlcyk6IExpa2V3aXNlLgorCisyMDA4LTEyLTA4ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBkcGtnLWRlYi9leHRyYWN0LmMgKGV4dHJhY3RoYWxmKTogSW1wcm92ZSBpbnRlcm5lcnIgc3RyaW5ncywgYW5kIGFkZAorCXRoZSBpbnZhbGlkIHZhbHVlIHByb3Zva2luZyB0aGUgY2FsbC4KKwkqIGRwa2ctc3BsaXQvcXVldWUuYyAoZGlzY2FyZHNvbWUpOiBMaWtld2lzZS4KKwkqIGxpYi9kYm1vZGlmeS5jIChtb2RzdGF0ZGJfaW5pdCk6IExpa2V3aXNlLgorCSogbGliL2R1bXAuYyAodmFyYnVmZGVwZW5kZW5jeSk6IExpa2V3aXNlLgorCSogbGliL3BhcnNlaGVscC5jICh2YXJidWZ2ZXJzaW9uKTogTGlrZXdpc2UuCisJKiBsaWIvdmVyY21wLmMgKHZlcnNpb25zYXRpc2ZpZWQzKTogTGlrZXdpc2UuCisJKiBzY3JpcHRzL0Rwa2cvU291cmNlL0FyY2hpdmUucG0gKF9hZGRfZW50cnkpOiBMaWtld2lzZS4KKwkqIHNyYy9hcmNoaXZlcy5jICh0YXJvYmplY3QsIGFyY2hpdmVmaWxlcyk6IExpa2V3aXNlLgorCSogc3JjL2NvbmZpZ3VyZS5jIChkZWZlcnJlZF9jb25maWd1cmUsIHByb21wdGNvbmZhY3Rpb24pOiBMaWtld2lzZS4KKwkqIHNyYy9kZXBjb24uYyAoZGVzY3JpYmVkZXBjb24sIGRlcGlzb2spOiBMaWtld2lzZS4KKwkqIHNyYy9lbnF1aXJ5LmMgKHlldHRvYmV1bnBhY2tlZCk6IExpa2V3aXNlLgorCSogc3JjL3BhY2thZ2VzLmMgKHBhY2thZ2VzLCBwcm9jZXNzX3F1ZXVlLCBkZXBlbmRlbmNpZXNfb2spOiBMaWtld2lzZS4KKwkqIHNyYy9xdWVyeS5jIChlbnFwZXJwYWNrYWdlKTogTGlrZXdpc2UuCisJKiBzcmMvdXBkYXRlLmMgKHVwZGF0ZWF2YWlsYWJsZSk6IExpa2V3aXNlLgorCisyMDA4LTEyLTA4ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL0Rwa2cvRGVwcy5wbSAoaW1wbGllcyk6IERvIG5vdCBtYXJrIGludGVybmVyciBzdHJpbmdzIGZvcgorCXRyYW5zbGF0aW9uLgorCSogc2NyaXB0cy9EcGtnL0ZpZWxkcy5wbSAob3V0cHV0KTogTGlrZXdpc2UuCisJKiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG0gKGFkZF9maWxlKTogTGlrZXdpc2UuCisKKzIwMDgtMTItMDggIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvRHBrZy9EZXBzLnBtIChwYXJzZSk6IERvIG5vdCB1c2Ugc3ByaW50ZiBmb3Igd2FybmluZy4KKwkoaW1wbGllcyk6IERvIG5vdCB1c2Ugc3ByaW50ZiBmb3IgaW50ZXJuZXJyLgorCisyMDA4LTEyLTA4ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBkcGtnLWRlYi9idWlsZC5jIChkb19idWlsZCk6IFVzZSBpbnRlcm5lcnIgaW5zdGVhZCBvZiBvaHNoaXQuIERvIG5vdAorCW1hcmsgdGhlIHN0cmluZyBmb3IgdHJhbnNsYXRpb24uCisJKiBzcmMvdHJpZ2NtZC5jIChkb19jaGVjayk6IFVzZSBpbnRlcm5lcnIgaW5zdGVhZCBvZiBhYm9ydC4KKwkqIGxpYi9kdW1wLmMgKHdfc3RhdHVzKTogTGlrZXdpc2UuCisJKiBsaWIvdHJpZ2xpYi5jICh0cmlnX2luY29ycG9yYXRlKTogTGlrZXdpc2UuIFJlbW92ZSA8c3RkbGliLmg+CisJaW5jbHVkZS4KKwkqIHNjcmlwdHMvRHBrZy9JUEMucG0gKF9zYW5pdHlfY2hlY2tfb3B0cyk6IFVzZSBpbnRlcm5lcnIgaW5zdGVhZCBvZgorCWVycm9yLgorCShmb3JrX2FuZF9leGVjKTogTGlrZXdpc2UuIERvIG5vdCBtYXJrIHRoZSBzdHJpbmcgZm9yIHRyYW5zbGF0aW9uLgorCSh3YWl0X2NoaWxkKTogTGlrZXdpc2UuCisJKiBzY3JpcHRzL0Rwa2cvU291cmNlL0FyY2hpdmUucG06IFVzZSBpbnRlcm5lcnIgaW5zdGVhZCBvZiBlcnJvciBmcm9tCisJRHBrZzo6RXJyb3JIYW5kbGluZy4KKwkoX2FkZF9lbnRyeSwgYWRkX2ZpbGUsIGFkZF9kaXJlY3RvcnkpOiBMaWtld2lzZS4KKwkqIHNjcmlwdHMvRHBrZy9Tb3VyY2UvQ29tcHJlc3NlZEZpbGUucG06IExpa2V3aXNlLgorCShnZXRfZmlsZW5hbWUpOiBMaWtld2lzZS4KKwkqIHNjcmlwdHMvRHBrZy9Tb3VyY2UvQ29tcHJlc3Nvci5wbTogTGlrZXdpc2UuCisJKF9zYW5pdHlfY2hlY2spOiBMaWtld2lzZS4KKwkqIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wIChkb19leHRyYWN0LCBkb19idWlsZCk6IExpa2V3aXNlLgorCSogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbSAoYWRkX2RpZmZfZmlsZSk6IFVzZSBlcnJvciBpbnN0ZWFkIG9mCisJaW50ZXJuZXJyLgorCisyMDA4LTEyLTA4ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBsaWIvZHBrZy5oIChkb19pbnRlcm5lcnIpOiBSZW9yZGVyIGFyZ3VtZW50cy4gU3VwcG9ydCBmb3JtYXQKKwlzdHJpbmdzLgorCShpbnRlcm5lcnIpOiBMaWtld2lzZS4KKwkqIGxpYi9laGFuZGxlLmMgKGRvX2ludGVybmVycik6IExpa2V3aXNlLgorCisyMDA4LTEyLTA4ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL0Rwa2cvRXJyb3JIYW5kbGluZy5wbSAoQEVYUE9SVCk6IFJlbW92ZSAnZmFpbHVyZScuCisJKGZhaWx1cmUpOiBSZW1vdmUgZnVuY3Rpb24uCisJKHN5c2Vycik6IFJlbmFtZSAnZmFpbHVyZScgc3RyaW5nIHRvICdlcnJvcicuCisJKHN1YnByb2NlcnIpOiBVc2UgZXJyb3IgaW5zdGVhZCBvZiBmYWlsdXJlLgorCSogc2NyaXB0cy9EcGtnL0NoZWNrc3Vtcy5wbSAoZXh0cmFjdGNoZWNrc3VtKTogTGlrZXdpc2UuCisJKiBzY3JpcHRzL0Rwa2cvU291cmNlL0Z1bmN0aW9ucy5wbSAoZXJhc2VkaXIpOiBMaWtld2lzZS4KKwkqIHNjcmlwdHMvY2hhbmdlbG9nL2RlYmlhbi5wbDogTGlrZXdpc2UuCisJKiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDogTGlrZXdpc2UuCisJKiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOiBMaWtld2lzZS4KKwkqIHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6IFVzZSBzeXNlcnIgaW5zdGVhZCBvZiBmYWlsdXJlLgorCisyMDA4LTEyLTA4ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL0Rwa2cvRXJyb3JIYW5kbGluZy5wbSAoQEVYUE9SVF9PSyk6IE1vdmUgaW5mbywgd2FybmluZywKKwl3YXJuZXJyb3IsIGVycm9yLCBlcnJvcm1zZywgZmFpbHVyZSwgc3lzZXJyLCBpbnRlcm5lcnIsIHN1YnByb2NlcnIsCisJdXNhZ2VlcnIgYW5kIHN5bnRheGVyciB0byAuLi4KKwkoQEVYUE9SVCk6IC4uLiBoZXJlLiBGaXggYWxsIHVzZXJzLgorCisyMDA4LTEyLTA4ICBNb2Rlc3RhcyBWYWluaXVzICA8bW9kZXN0YXNAdmFpbml1cy5ldT4KKwkgICAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9EcGtnL1NobGlicy9PYmpkdW1wLnBtIChwYXJzZSk6IFNwbGl0IGludG8gYWRkX29iamVjdCgpCisJYW5kIHBhcnNlKCkuCisJKiBzY3JpcHRzL0Rwa2cvU2hsaWJzL1N5bWJvbEZpbGUucG0gKG1lcmdlX29iamVjdF9mcm9tX3N5bWZpbGUpOgorCU5ldyBmdW5jdGlvbiB0byByZWludGVncmF0ZSBzeW1ib2xzIGZyb20gcHJldmlvdXMgc3ltZmlsZXMuCisJKiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOiBPcHRpbWl6ZXMgaXQgYnkgY2FjaGluZyBwYXJzZWQKKwlzeW1ib2xzIGZpbGVzIGFuZCBvYmpkdW1wIG9iamVjdHMuIFRoaXMgd2F5IG5laXRoZXIgb2YgdGhlCisJbGlicmFyaWVzIG9yIHN5bWJvbHMgZmlsZXMgYXJlIHBhcnNlZCBtb3JlIHRoYW4gb25jZS4KKworMjAwOC0xMi0wNSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogbGliL21saWIuYzogUmVtb3ZlIDxzeXMvd2FpdC5oPiBpbmNsdWRlLgorCShjaGVja3N1YnByb2NlcnIsIHdhaXRzdWJwcm9jKTogTW92ZSB0byAuLi4KKwkqIGxpYi9zdWJwcm9jLmMgKGNoZWNrc3VicHJvY2Vyciwgd2FpdHN1YnByb2MpOiAuLi4gaGVyZS4KKwlJbmNsdWRlIDxzeXMvdHlwZXMuaD4gYW5kIDxzeXMvd2FpdC5oPi4KKworMjAwOC0xMi0wNSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogbGliL21saWIuYyAoY2hlY2tzdWJwcm9jZXJyKTogU3BsaXQgdW5yZWxhdGVkIGNvbmRpdGlvbmFscyBmb3IgbgorCWFuZCBQUk9DUElQRS4KKworMjAwOC0xMi0wNSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogbGliL21saWIuYyAoY2hlY2tzdWJwcm9jZXJyKTogUmV0dXJuIGFuIGV4cGxpY2l0IDAgaW5zdGVhZCBvZiBuLgorCisyMDA4LTEyLTA1ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBsaWIvZWhhbmRsZS5jICh3YXJuaW5nKTogUHJpbnQgdGhlIGN1cnJlbnQgcHJvZ3JhbSBuYW1lIGFuZCBhCisJJ3dhcm5pbmcnIHN0cmluZy4KKwkqIGxpYi9tbGliLmMgKGNoZWNrc3VicHJvY2Vycik6IFVzZSB3YXJuaW5nKCkgaW5zdGVhZCBvZiBhIHByaW50CisJZnVuY3Rpb24uCisJKiBzcmMvYXJjaGl2ZXMuYyAodHJ5X2RlY29uZmlndXJlX2Nhbik6IExpa2V3aXNlLgorCShjaGVja19icmVha3MpOiBMaWtld2lzZS4KKwkoY2hlY2tfY29uZmxpY3QpOiBMaWtld2lzZS4KKwkod2FudHRvaW5zdGFsbCk6IExpa2V3aXNlLgorCSogc3JjL2NvbmZpZ3VyZS5jIChkZWZlcnJlZF9jb25maWd1cmUpOiBMaWtld2lzZS4KKwkoY29uZmZkZXJlZik6IExpa2V3aXNlLgorCShtZDVoYXNoKTogTGlrZXdpc2UuCisJKiBzcmMvZXJyb3JzLmMgKGZvcmNpYmxlZXJyKTogTGlrZXdpc2UuCisJKiBzcmMvZmlsZXNkYi5jIChlbnN1cmVfcGFja2FnZWZpbGVzX2F2YWlsYWJsZSk6IExpa2V3aXNlLgorCSogc3JjL2hlbHAuYyAobWFpbnRhaW5lcl9zY3JpcHRfYWx0ZXJuYXRpdmUpOiBMaWtld2lzZS4KKwkqIHNyYy9wcm9jZXNzYXJjLmMgKHByb2Nlc3NfYXJjaGl2ZSk6IExpa2V3aXNlLgorCSogc3JjL3JlbW92ZS5jIChkZWZlcnJlZF9yZW1vdmUpOiBMaWtld2lzZS4KKwkocmVtb3ZhbF9idWxrX3JlbW92ZV9sZWZ0b3Zlcl9kaXJzKTogTGlrZXdpc2UuCisJKiBkcGtnLWRlYi9idWlsZC5jIChkb19idWlsZCk6IExpa2V3aXNlLgorCisyMDA4LTEyLTA1ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBsaWIvZWhhbmRsZS5jICh3YXJuaW5nKTogRG8gbm90IGltcGxpY2l0bHkgcHJpbnQgdGhlIGVycm5vIHN0cmluZy4KKwkqIGxpYi9teW9wdC5jIChteWZpbGVvcHQpOiBQcmludCB0aGUgZXJybm8gc3RyaW5nIGluIHRoZSB3YXJuaW5nLgorCisyMDA4LTEyLTA1ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBsaWIvZHBrZy5oICh3YXJuaW5nZik6IFJlbmFtZSB0byAuLi4KKwkod2FybmluZyk6IC4uLiB0aGlzLiBGaXggYWxsIGNhbGxlcnMuCisKKzIwMDgtMTEtMTkgIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvRHBrZy9Tb3VyY2UvRnVuY3Rpb25zLnBtIChmaXhwZXJtcyk6IEZpeCBjaG1vZCBjYWxsIHRvCisJYWxzbyB3b3JrIHdoZW4gUE9TSVhMWV9DT1JSRUNUIGlzIHNldC4KKworMjAwOC0xMS0xMSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLWFyY2hpdGVjdHVyZS5wbDogVXNlIG5ldyBzdHlsZSBmdW5jdGlvbnMgY2FsbHMuCisJKiBzY3JpcHRzL2Rwa2ctZGlzdGFkZGZpbGUucGw6IExpa2V3aXNlLgorCSogc2NyaXB0cy9kcGtnLWRpdmVydC5wbDogTGlrZXdpc2UuCisJKiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDogTGlrZXdpc2UuCisJKiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDogTGlrZXdpc2UuCisJKiBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbDogTGlrZXdpc2UuCisJKiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOiBMaWtld2lzZS4KKwkqIHNjcmlwdHMvZHBrZy1zdGF0b3ZlcnJpZGUucGw6IExpa2V3aXNlLgorCSogc2NyaXB0cy91cGRhdGUtYWx0ZXJuYXRpdmVzLnBsOiBMaWtld2lzZS4KKworMjAwOC0xMS0wOCAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9EcGtnL1NobGlicy9PYmpkdW1wLnBtIChfcGFyc2UpOiBTdXBwb3J0IFJVTlBBVEggZXhhY3RseQorCWxpa2UgUlBBVEggYnV0IHRha2luZyBwcmVjZWRlbmNlIG92ZXIgaXQuCisKKzIwMDgtMTAtMjIgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGxpYi9laGFuZGxlLmMgKGVycm9yX3Vud2luZCk6IFJlbW92ZSB1bnVzZWQgY2xlYW51cGVudHJ5IGNvZGUuCisKKzIwMDgtMTAtMTUgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGxpYi9kYm1vZGlmeS5jIChtb2RzdGF0ZGJfc2h1dGRvd24pOiBVc2UgaW1wb3J0YW50dG1wZmlsZSBvbiB1bmxpbmsKKwlpbnN0ZWFkIG9mIGNvbnN0cnVjdGluZyB0aGUgZmlsZSBuYW1lIGFnYWluLgorCisyMDA4LTEwLTE1ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzcmMvTWFrZWZpbGUuYW0gKGRwa2dfcXVlcnlfU09VUkNFUyk6IFJlbW92ZSAnZXJyb3JzLmMnLgorCSogc3JjL21haW4uaCAobmVycnMpOiBSZW1vdmUgZGVjbGFyYXRpb24uCisJKiBzcmMvZXJyb3JzLmMgKG5lcnJzKTogQ2hhbmdlIGZyb20gZXh0ZXJuIHRvIHN0YXRpYy4KKwkqIHNyYy9xdWVyeS5jIChmYWlsdXJlcyk6IE5ldyB2YXJpYWJsZS4KKwkoZXJyYWJvcnQpOiBSZW1vdmUgdmFyaWFibGUuCisJKGxpc3RwYWNrYWdlcyk6IFVzZSBmYWlsdXJlcyBpbnN0ZWFkIG9mIG5lcnJzLgorCShzZWFyY2hmaWxlcyk6IExpa2V3aXNlLgorCShzaG93cGFja2FnZXMpOiBMaWtld2lzZS4KKwkoZW5xcGVycGFja2FnZSk6IExpa2V3aXNlLiBEbyBub3QgZGVmaW5lIG5vciBpbml0aWFsaXplIGZhaWx1cmVzLgorCShtYWluKTogVXNlIGZhaWx1cmVzIHZhcmlhYmxlIGluc3RlYWQgb2YgcmVwb3J0YnJva2VuX3JldGV4aXRzdGF0dXMuCisKKzIwMDgtMDktMTQgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGxpYmNvbXBhdC9zY2FuZGlyLmMgKHNjYW5kaXIpOiBIYW5kbGUgY2FzZSB3aGVuIGZpbHRlciBhbmQgY21wCisJZnVuY3Rpb24gYXJndW1lbnRzIGFyZSBOVUxMLgorCisyMDA4LTA5LTE0ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBsaWJjb21wYXQvY29tcGF0LmggKHNjYW5kaXIpOiBSZW5hbWUgYXJndW1lbnRzIGZyb20gc2VsZWN0IHRvCisJZmlsdGVyIGFuZCBjb21wYXIgdG8gY21wLgorCSogbGliY29tcGF0L3NjYW5kaXIuYyAoc2NhbmRpcik6IExpa2V3aXNlLgorCisyMDA4LTA5LTE0ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBsaWJjb21wYXQvY29tcGF0LmggKGFscGhhc29ydCk6IENoYW5nZSBhcmd1bWVudCB0eXBlcyB0byBtYXRjaAorCW1vZGVybiBzeXN0ZW0gb25lcyAodGhlIGN1cnJlbnQgb25lcyB3ZXJlIG1pc3Npbmcgb25lIGluZGlyZWN0aW9uCisJYW55d2F5KS4KKwkqIGxpYmNvbXBhdC9hbHBoYXNvcnQuYyAoYWxwaGFzb3J0KTogTGlrZXdpc2UuIFByb3Blcmx5IGRlcmVmZXJlbmNlCisJYXJndW1lbnRzLgorCSogbGliY29tcGF0L3NjYW5kaXIuYyAoc2NhbmRpcl9jb21wYXJmbik6IFJlbW92ZSBzdGF0aWMgZnVuY3Rpb24KKwl2YXJpYWJsZS4KKwkoc2NhbmRpcl9jb21wYXIpOiBSZW1vdmUgZnVuY3Rpb24uCisJKHNjYW5kaXIpOiBQYXNzIGNvbXBhciBmdW5jdGlvbiBkaXJlY3RseSB0byBxc29ydC4KKworMjAwOC0wOS0xNCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogbGliY29tcGF0L3N0cmVycm9yLmMgKHN0cmVycm9yKTogQ2hhbmdlIHN0cmluZyBmb3IgdW5rbm93biB2YWx1ZS4KKwkqIGxpYmNvbXBhdC9zdHJzaWduYWwuYyAoc3Ryc2lnbmFsKTogTGlrZXdpc2UuCisKKzIwMDgtMDktMTQgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGxpYmNvbXBhdC9zdHJzaWduYWwuYyAoc3Ryc2lnbmFsKTogRG8gbm90IHJldHVybiBhIHN0cmluZyBmb3IKKwlzaWduYWwgMC4KKworMjAwOC0wOS0xNCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogbGliY29tcGF0L3N0cnNpZ25hbC5jIChzeXNfc2lnbGlzdCk6IEluc2VydCBhIE5VTEwgZW50cnkgYXQgdGhlCisJYmVnaW5uaW5nLgorCisyMDA4LTA5LTE0ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBsaWJjb21wYXQvc3Ryc2lnbmFsLmMgKHN5c19zaWdsaXN0KTogUmVtb3ZlIGFycmF5IHNpemUgZnJvbQorCWRlY2xhcmF0aW9uLiBSZW1vdmUgdW5rbm93biBzaWduYWwgbmFtZXMuCisJKHN0cnNpZ25hbCk6IFVzZSBzaXplb2YgdG8gY29tcHV0ZSB0aGUgYXJyYXkgc2l6ZSBpbnN0ZWFkIG9mIE5TSUcuCisKKzIwMDgtMDktMTQgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGxpYmNvbXBhdC92c25wcmludGYuYyAodnNucHJpbnRmKTogVXNlIFNFRUtfU0VUIGluc3RlYWQgb2YgYSAwCisJbGl0ZXJhbCBvbiBmc2Vlay4KKworMjAwOC0wOS0xNCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogbGliY29tcGF0L3ZzbnByaW50Zi5jICh2c25wcmludGYpOiBDaGFuZ2Ugc2l6ZSBhbmQgbnIgdHlwZXMgZnJvbQorCXVuc2lnbGVkIGxvbmcgdG8gc2l6ZV90LiBBbHdheXMgcmV0dXJuIHRoZSBhbW91bnQgdGhhdCB3b3VsZCBiZQorCXdyaXR0ZW4gcmVnYXJkbGVzcyBvZiBhbnkgdHJ1bmNhdGlvbi4gRG8gbm90IHJlYWQgb25lIGJ5dGUgbGVzcyBmcm9tCisJdGhlIHRlbXBvcmFyeSBmaWxlLgorCisyMDA4LTA5LTE0ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBsaWJjb21wYXQvdnNucHJpbnRmLmMgKHZzbnByaW50Zik6IFVzZSB0aGUgcmV0dXJuIHZhbHVlIGZyb20KKwl2ZnByaW50ZiBhcyB0aGUgZm9ybWF0dGVkIHN0cmluZyBzaXplIGluc3RlYWQgb2YgdXNpbmcgZnN0YXQgdG8gZ2V0CisJdGhlIGZpbGUgc2l6ZS4KKworMjAwOC0wOS0xNCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogbGliY29tcGF0L3ZzbnByaW50Zi5jICh2c25wcmludGYpOiBDaGVjayBmb3IgbmVnYXRpdmUgcmV0dXJuIGVycm9yCisJdmFsdWVzIGluc3RlYWQgb2YganVzdCBFT0YuCisKKzIwMDgtMDktMTQgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGxpYmNvbXBhdC9zbnByaW50Zi5jIChzbnByaW50Zik6IFVzZSB2c25wcmludGYgaW5zdGVhZCBvZiB2c3ByaW50Zi4KKworMjAwOC0wOS0xNCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogbGliY29tcGF0L3ZzbnByaW50Zi5jICh2c25wcmludGYpOiBVc2UgJ1wwJyBpbnN0ZWFkIG9mIE5VTEwgdG8KKwl0ZXJtaW5hdGUgdGhlIHN0cmluZy4KKworMjAwOC0wOS0xNCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogbGliY29tcGF0L2NvbXBhdC5oICh1bnNldGVudik6IENoYW5nZSByZXR1cm4gdHlwZSBmcm9tIHZvaWQgdG8gaW50LgorCSogbGliY29tcGF0L3Vuc2V0ZW52LmMgKHVuc2V0ZW52KTogTGlrZXdpc2UuIFJldHVybiAtMSBvbiBlcnJvciwgb3IKKwlwYXNzIHRocm91Z2ggdGhlIHN0YXR1cyBjb2RlIGZyb20gcHV0ZW52LgorCisyMDA4LTA5LTE0ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBkc2VsZWN0L21ldGhrZXlzLmNjOiBSZW1vdmUgdW51c2VkIGhlYWRlcnMgPHN0ZGlvLmg+LCA8c3RyaW5nLmg+LAorCTxhc3NlcnQuaD4gYW5kIDxkcGtnLmg+LgorCSogZHNlbGVjdC9wa2drZXlzLmNjOiBMaWtld2lzZS4KKwkqIGRzZWxlY3QvYmFzZXRvcC5jYzogTGlrZXdpc2UuIFJlbW92ZSB1bnVzZWQgaGVhZGVyIDxjdHlwZS5oPi4KKwkqIGRzZWxlY3QvY3Vya2V5cy5jYzogUmVtb3ZlIHVudXNlZCBoZWFkZXIgPGRwa2cuaD4uCisJKiBkc2VsZWN0L2hlbHBtc2dzLmg6IExpa2V3aXNlLgorCSogZHNlbGVjdC9wa2djbWRzLmNjOiBMaWtld2lzZS4KKwkqIGRzZWxlY3QvcGtnZGlzcGxheS5jYzogTGlrZXdpc2UuCisJKiBkc2VsZWN0L3BrZ2luZm8uY2M6IExpa2V3aXNlLgorCSogbGliL2NvbXByZXNzaW9uLmM6IExpa2V3aXNlLgorCSogbGliL2Rwa2ctZGIuaDogUmVtb3ZlIHVudXNlZCBoZWFkZXIgPHN0cmluZy5oPi4gSW5jbHVkZQorCTxzeXMvdHlwZXMuaD4uCisJKiBsaWIvbWQ1LmM6IFJlbW92ZSB1bnVzZWQgaGVhZGVyIDxuZXRpbmV0L2luLmg+LgorCisyMDA4LTA5LTE0ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzcmMvbWFpbi5jIChjb21tYW5kZmQpOiBSZW1vdmUgbGVmdCBvdmVyIGRlYnVnIHByaW50Zi4KKworMjAwOC0wOS0xNCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogbGliL2Rwa2cuaCAoSU1QT1JUQU5URk1UKTogUmVtb3ZlIG91dCBvZiBzeW5jIGNvbW1lbnQuCisKKzIwMDgtMDktMTQgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGxpYi9kcGtnLmggKHN0YW5kYXJkX3N0YXJ0dXApOiBEbyBub3QgdGFrZSBwcm9nLCBsb2FkY2ZnIGFuZAorCWNtZGluZm9zIGFzIGFyZ3VtZW50cywgYW5kIGRvIG5vdCBjYWxsIGxvYWRjZmdmaWxlLiBGaXggYWxsIGNhbGxlcnMuCisJKiBzcmMvbWFpbi5jOiBDYWxsIGxvYWRjZmdmaWxlIGRpcmVjdGx5LgorCisyMDA4LTA5LTE0ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBsaWIvZHBrZy5oOiBEbyBub3QgaW5jbHVkZSA8bXlvcHQuaD4uCisJKHN0YW5kYXJkX3N0YXJ0dXApOiBEbyBub3QgdGFrZSBhcmdjIGFuZCBhcmd2IGFzIGFyZ3VtZW50cywgYW5kIGRvCisJbm90IGNhbGwgbXlvcHQuIEZpeCBhbGwgY2FsbGVycy4KKwkqIGxpYi9teW9wdC11dGlsLmM6IEluY2x1ZGUgPG15b3B0Lmg+LgorCSogZHBrZy1kZWIvYnVpbGQuYzogTGlrZXdpc2UuCisJKiBkcGtnLXNwbGl0L2luZm8uYzogTGlrZXdpc2UuCisJKiBkcGtnLXNwbGl0L2pvaW4uYzogTGlrZXdpc2UuCisJKiBkcGtnLXNwbGl0L3F1ZXVlLmM6IExpa2V3aXNlLgorCSogc3JjL3NlbGVjdC5jOiBMaWtld2lzZS4KKwkqIGRwa2ctZGViL21haW4uYyAobWFpbik6IENhbGwgbXlvcHQgZGlyZWN0bHkuCisJKiBkcGtnLXNwbGl0L21haW4uYzogTGlrZXdpc2UuCisJKiBzcmMvbWFpbi5jOiBMaWtld2lzZS4KKwkqIHNyYy9xdWVyeS5jOiBMaWtld2lzZS4KKwkqIHNyYy90cmlnY21kLmM6IExpa2V3aXNlLgorCisyMDA4LTA5LTE0ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBsaWIvZHBrZy5oIChzdGFuZGFyZF9zaHV0ZG93bik6IFJlbW92ZSB1bnVzZWQgZnJlZW1lbSBhcmd1bWVudCwKKwlhbmQgZG8gbm90IGNhbGwgbmZmcmVlYWxsLiBGaXggYWxsIGNhbGxlcnMuCisKKzIwMDgtMDktMTQgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGxpYi9kcGtnLWRiLmg6IE1vdmUgPHN0ZGxpYi5oPiBpbmNsdXNpb24gdG8gLi4uCisJKiBkc2VsZWN0L3BrZ2xpc3QuY2M6IC4uLiBoZXJlLgorCSogbGliL2RhdGFiYXNlLmM6IExpa2V3aXNlLgorCSogbGliL2R1bXAuYzogTGlrZXdpc2UuCisJKiBsaWIvcGFyc2UuYzogTGlrZXdpc2UuCisJKiBsaWIvcGFyc2VoZWxwLmM6IExpa2V3aXNlLgorCSogbGliL3RyaWdsaWIuYzogTGlrZXdpc2UuCisJKiBzcmMvZmlsZXNkYi5jOiBMaWtld2lzZS4KKwkqIHNyYy9oZWxwLmM6IExpa2V3aXNlLgorCSogc3JjL3NlbGVjdC5jOiBMaWtld2lzZS4KKwkqIHNyYy90cmlncHJvYy5jOiBMaWtld2lzZS4KKworMjAwOC0wOS0xNCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogY29uZmlndXJlLmFjIChBQ19DSEVDS19GVU5DUyk6IE1vdmUgJ3ZzbnByaW50ZicsICdzbnByaW50ZicsCisJJ3N0cmVycm9yJywgJ3N0cnNpZ25hbCcsICdzY2FuZGlyJywgJ2FscGhhc29ydCcgYW5kICd1bnNldGVudicgdG8gLi4uCisJKERQS0dfQ0hFQ0tfQ09NUEFUX0ZVTkNTKTogLi4uIGhlcmUuCisJKiBsaWIvTWFrZWZpbGUuYW0gKGxpYmRwa2dfYV9TT1VSQ0VTKTogUmVtb3ZlICdjb21wYXQuYycuCisJKiBsaWIvZHBrZy5oIChzdHJlcnJvciwgc3Ryc2lnbmFsLCBzY2FuZGlyLCBhbHBoYXNvcnQsIHVuc2V0ZW52KQorCShvZmZzZXRvZiwgc3RydG91bCwgdmFfY29weSwgV0NPUkVEVU1QKTogTW92ZSBkZWNsYXJhdGlvbnMgdG8gLi4uCisJKiBsaWJjb21wYXQvY29tcGF0Lmg6IC4uLiBoZXJlLgorCSogbGliY29tcGF0L01ha2VmaWxlLmFtIChsaWJjb21wYXRfYV9TT1VSQ0VTKTogQWRkICdzdHJlcnJvci5jJywKKwknc3Ryc2lnbmFsLmMnLCAnc25wcmludGYuYycsICd2c25wcmludGYuYycsICdhbHBoYXNvcnQuYycsCisJJ3NjYW5kaXIuYycgYW5kICd1bnNldGVudi5jJy4KKwkqIHBvL1BPVEZJTEVTLmluOiBSZW1vdmUgJ2xpYi9jb21wYXQuYycuCisJKiBsaWIvY29tcGF0LmM6IFNwbGl0IGludG8gLi4uCisJKiBsaWJjb21wYXQvYWxwaGFzb3J0LmM6IC4uLiBoZXJlLiBOZXcgZmlsZS4KKwkqIGxpYmNvbXBhdC9zY2FuZGlyLmM6IExpa2V3aXNlLgorCSogbGliY29tcGF0L3NucHJpbnRmLmM6IExpa2V3aXNlLgorCSogbGliY29tcGF0L3N0cmVycm9yLmM6IExpa2V3aXNlLgorCSogbGliY29tcGF0L3N0cnNpZ25hbC5jOiBMaWtld2lzZS4KKwkqIGxpYmNvbXBhdC91bnNldGVudi5jOiBMaWtld2lzZS4KKwkqIGxpYmNvbXBhdC92c25wcmludGYuYzogTGlrZXdpc2UuCisKKzIwMDgtMDktMTQgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGxpYi9jb21wYXQuYzogRG8gbm90IGluY2x1ZGUgPGRwa2cuaD4gYW55bW9yZS4KKwkodnNucHJpbnRmKTogUmV0dXJuIG5lZ2F0aXZlIG9uIGVycm9yIGluc3RlYWQgb2Ygb2hzaGl0ZS4KKworMjAwOC0wOS0xNCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogbGliY29tcGF0L2NvbXBhdC5oOiBOZXcgZmlsZS4KKwkqIGRwa2ctZGViL2J1aWxkLmM6IEluY2x1ZGUgPGNvbXBhdC5oPi4KKwkqIGRwa2ctZGViL2V4dHJhY3QuYzogTGlrZXdpc2UuCisJKiBkcGtnLWRlYi9pbmZvLmM6IExpa2V3aXNlLgorCSogZHBrZy1kZWIvbWFpbi5jOiBMaWtld2lzZS4KKwkqIGRwa2ctc3BsaXQvaW5mby5jOiBMaWtld2lzZS4KKwkqIGRwa2ctc3BsaXQvam9pbi5jOiBMaWtld2lzZS4KKwkqIGRwa2ctc3BsaXQvbWFpbi5jOiBMaWtld2lzZS4KKwkqIGRwa2ctc3BsaXQvcXVldWUuYzogTGlrZXdpc2UuCisJKiBkcGtnLXNwbGl0L3NwbGl0LmM6IExpa2V3aXNlLgorCSogZHNlbGVjdC9iYXNlY21kcy5jYzogTGlrZXdpc2UuCisJKiBkc2VsZWN0L2Jhc2VsaXN0LmNjOiBMaWtld2lzZS4KKwkqIGRzZWxlY3QvYmFzZXRvcC5jYzogTGlrZXdpc2UuCisJKiBkc2VsZWN0L2JpbmRpbmdzLmNjOiBMaWtld2lzZS4KKwkqIGRzZWxlY3QvY3Vya2V5cy5jYzogTGlrZXdpc2UuCisJKiBkc2VsZWN0L2hlbHBtc2dzLmNjOiBMaWtld2lzZS4KKwkqIGRzZWxlY3QvbWFpbi5jYzogTGlrZXdpc2UuCisJKiBkc2VsZWN0L21ldGhrZXlzLmNjOiBMaWtld2lzZS4KKwkqIGRzZWxlY3QvbWV0aGxpc3QuY2M6IExpa2V3aXNlLgorCSogZHNlbGVjdC9tZXRob2QuY2M6IExpa2V3aXNlLgorCSogZHNlbGVjdC9tZXRocGFyc2UuY2M6IExpa2V3aXNlLgorCSogZHNlbGVjdC9wa2djbWRzLmNjOiBMaWtld2lzZS4KKwkqIGRzZWxlY3QvcGtnZGVwY29uLmNjOiBMaWtld2lzZS4KKwkqIGRzZWxlY3QvcGtnZGlzcGxheS5jYzogTGlrZXdpc2UuCisJKiBkc2VsZWN0L3BrZ2luZm8uY2M6IExpa2V3aXNlLgorCSogZHNlbGVjdC9wa2drZXlzLmNjOiBMaWtld2lzZS4KKwkqIGRzZWxlY3QvcGtnbGlzdC5jYzogTGlrZXdpc2UuCisJKiBkc2VsZWN0L3BrZ3N1Ymxpc3QuY2M6IExpa2V3aXNlLgorCSogZHNlbGVjdC9wa2d0b3AuY2M6IExpa2V3aXNlLgorCSogbGliL2NsZWFudXAuYzogTGlrZXdpc2UuCisJKiBsaWIvY29tcHJlc3Npb24uYzogTGlrZXdpc2UuCisJKiBsaWIvZGF0YWJhc2UuYzogTGlrZXdpc2UuCisJKiBsaWIvZGJtb2RpZnkuYzogTGlrZXdpc2UuCisJKiBsaWIvZHVtcC5jOiBMaWtld2lzZS4KKwkqIGxpYi9laGFuZGxlLmM6IExpa2V3aXNlLgorCSogbGliL2xvY2suYzogTGlrZXdpc2UuCisJKiBsaWIvbG9nLmM6IExpa2V3aXNlLgorCSogbGliL21kNS5jOiBMaWtld2lzZS4KKwkqIGxpYi9tbGliLmM6IExpa2V3aXNlLgorCSogbGliL215b3B0LXV0aWwuYzogTGlrZXdpc2UuCisJKiBsaWIvbXlvcHQuYzogTGlrZXdpc2UuCisJKiBsaWIvbmZtYWxsb2MuYzogTGlrZXdpc2UuCisJKiBsaWIvcGFyc2UuYzogTGlrZXdpc2UuCisJKiBsaWIvcGFyc2VoZWxwLmM6IExpa2V3aXNlLgorCSogbGliL3BhdGguYzogTGlrZXdpc2UuCisJKiBsaWIvc2hvd3BrZy5jOiBMaWtld2lzZS4KKwkqIGxpYi9zdHJpbmcuYzogTGlrZXdpc2UuCisJKiBsaWIvc3VicHJvYy5jOiBMaWtld2lzZS4KKwkqIGxpYi90cmlnbGliLmM6IExpa2V3aXNlLgorCSogbGliL3V0aWxzLmM6IExpa2V3aXNlLgorCSogbGliL3ZhcmJ1Zi5jOiBMaWtld2lzZS4KKwkqIGxpYi92ZXJjbXAuYzogTGlrZXdpc2UuCisJKiBzcmMvYXJjaGl2ZXMuYzogTGlrZXdpc2UuCisJKiBzcmMvY2xlYW51cC5jOiBMaWtld2lzZS4KKwkqIHNyYy9jb25maWd1cmUuYzogTGlrZXdpc2UuCisJKiBzcmMvZGVwY29uLmM6IExpa2V3aXNlLgorCSogc3JjL2VucXVpcnkuYzogTGlrZXdpc2UuCisJKiBzcmMvZXJyb3JzLmM6IExpa2V3aXNlLgorCSogc3JjL2ZpbGVzZGIuYzogTGlrZXdpc2UuCisJKiBzcmMvaGVscC5jOiBMaWtld2lzZS4KKwkqIHNyYy9tYWluLmM6IExpa2V3aXNlLgorCSogc3JjL3BhY2thZ2VzLmM6IExpa2V3aXNlLgorCSogc3JjL3BrZy1saXN0LmM6IExpa2V3aXNlLgorCSogc3JjL3BrZy1zaG93LmM6IExpa2V3aXNlLgorCSogc3JjL3Byb2Nlc3NhcmMuYzogTGlrZXdpc2UuCisJKiBzcmMvcXVlcnkuYzogTGlrZXdpc2UuCisJKiBzcmMvcmVtb3ZlLmM6IExpa2V3aXNlLgorCSogc3JjL3NlbGVjdC5jOiBMaWtld2lzZS4KKwkqIHNyYy90cmlnY21kLmM6IExpa2V3aXNlLgorCSogc3JjL3RyaWdwcm9jLmM6IExpa2V3aXNlLgorCSogc3JjL3VwZGF0ZS5jOiBMaWtld2lzZS4KKwkqIGxpYi9maWVsZHMuYzogTGlrZXdpc2UuIERvIG5vdCBpbmNsdWRlICJzdHJubGVuLmgiLCBub3cgaW1wbGljaXRseQorCWluY2x1ZGVkIGJ5IDxjb21wYXQuaD4uCisJKiBsaWIvdGFyZm4uYzogTGlrZXdpc2UuCisKKzIwMDgtMDktMTQgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGxpYi9kcGtnLmg6IE1vdmUgPGxvY2FsZS5oPiBpbmNsdXNpb24gYW5kIHN0YW5kYXJkX3N0YXJ0dXAgbG9jYWxlCisJc2V0dXAgdG8gLi4uCisJKiBkcGtnLWRlYi9tYWluLmMgKG1haW4pOiAuLi4gaGVyZS4KKwkqIGRwa2ctc3BsaXQvbWFpbi5jIChtYWluKTogTGlrZXdpc2UuCisJKiBkc2VsZWN0L21haW4uY2MgKG1haW4pOiBMaWtld2lzZS4KKwkqIHNyYy9tYWluLmMgKG1haW4pOiBMaWtld2lzZS4KKwkqIHNyYy9xdWVyeS5jIChtYWluKTogTGlrZXdpc2UuCisJKiBzcmMvdHJpZ2NtZC5jIChtYWluKTogTGlrZXdpc2UuCisKKzIwMDgtMDktMTQgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGxpYi9NYWtlZmlsZS5hbSAobGliZHBrZ19hX1NPVVJDRVMpOiBBZGQgJ2Rwa2ctaTE4bi5oJy4KKwkqIGxpYi9kcGtnLmg6IE1vdmUgPGdldHRleHQuaD4gaW5jbHVzaW9uIGFuZCAuLi4KKwkoXywgTl8pOiAuLi4gbWFjcm9zIHRvIC4uLgorCSogbGliL2Rwa2ctaTE4bi5oOiAuLi4gaGVyZS4gTmV3IGZpbGUuCisJKiBkcGtnLWRlYi9idWlsZC5jOiBJbmNsdWRlIDxkcGtnLWkxOG4uaD4uCisJKiBkcGtnLWRlYi9leHRyYWN0LmM6IExpa2V3aXNlLgorCSogZHBrZy1kZWIvaW5mby5jOiBMaWtld2lzZS4KKwkqIGRwa2ctZGViL21haW4uYzogTGlrZXdpc2UuCisJKiBkcGtnLXNwbGl0L2luZm8uYzogTGlrZXdpc2UuCisJKiBkcGtnLXNwbGl0L2pvaW4uYzogTGlrZXdpc2UuCisJKiBkcGtnLXNwbGl0L21haW4uYzogTGlrZXdpc2UuCisJKiBkcGtnLXNwbGl0L3F1ZXVlLmM6IExpa2V3aXNlLgorCSogZHBrZy1zcGxpdC9zcGxpdC5jOiBMaWtld2lzZS4KKwkqIGRzZWxlY3QvYmFzZWNtZHMuY2M6IExpa2V3aXNlLgorCSogZHNlbGVjdC9iYXNlbGlzdC5jYzogTGlrZXdpc2UuCisJKiBkc2VsZWN0L2JpbmRpbmdzLmNjOiBMaWtld2lzZS4KKwkqIGRzZWxlY3QvaGVscG1zZ3MuY2M6IExpa2V3aXNlLgorCSogZHNlbGVjdC9tYWluLmNjOiBMaWtld2lzZS4KKwkqIGRzZWxlY3QvbWV0aGxpc3QuY2M6IExpa2V3aXNlLgorCSogZHNlbGVjdC9tZXRob2QuY2M6IExpa2V3aXNlLgorCSogZHNlbGVjdC9tZXRocGFyc2UuY2M6IExpa2V3aXNlLgorCSogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOiBMaWtld2lzZS4KKwkqIGRzZWxlY3QvcGtnaW5mby5jYzogTGlrZXdpc2UuCisJKiBkc2VsZWN0L3BrZ2xpc3QuY2M6IExpa2V3aXNlLgorCSogZHNlbGVjdC9wa2dzdWJsaXN0LmNjOiBMaWtld2lzZS4KKwkqIGRzZWxlY3QvcGtndG9wLmNjOiBMaWtld2lzZS4KKwkqIGxpYi9jb21wcmVzc2lvbi5jOiBMaWtld2lzZS4KKwkqIGxpYi9kYXRhYmFzZS5jOiBMaWtld2lzZS4KKwkqIGxpYi9kYm1vZGlmeS5jOiBMaWtld2lzZS4KKwkqIGxpYi9kdW1wLmM6IExpa2V3aXNlLgorCSogbGliL2VoYW5kbGUuYzogTGlrZXdpc2UuCisJKiBsaWIvZmllbGRzLmM6IExpa2V3aXNlLgorCSogbGliL2xvY2suYzogTGlrZXdpc2UuCisJKiBsaWIvbG9nLmM6IExpa2V3aXNlLgorCSogbGliL21saWIuYzogTGlrZXdpc2UuCisJKiBsaWIvbXlvcHQtdXRpbC5jOiBMaWtld2lzZS4KKwkqIGxpYi9teW9wdC5jOiBMaWtld2lzZS4KKwkqIGxpYi9uZm1hbGxvYy5jOiBMaWtld2lzZS4KKwkqIGxpYi9wYXJzZS5jOiBMaWtld2lzZS4KKwkqIGxpYi9wYXJzZWhlbHAuYzogTGlrZXdpc2UuCisJKiBsaWIvc2hvd3BrZy5jOiBMaWtld2lzZS4KKwkqIGxpYi9zdWJwcm9jLmM6IExpa2V3aXNlLgorCSogbGliL3RyaWdkZWZlcnJlZC5sOiBMaWtld2lzZS4KKwkqIGxpYi90cmlnbGliLmM6IExpa2V3aXNlLgorCSogbGliL3V0aWxzLmM6IExpa2V3aXNlLgorCSogc3JjL2FyY2hpdmVzLmM6IExpa2V3aXNlLgorCSogc3JjL2NsZWFudXAuYzogTGlrZXdpc2UuCisJKiBzcmMvY29uZmlndXJlLmM6IExpa2V3aXNlLgorCSogc3JjL2RlcGNvbi5jOiBMaWtld2lzZS4KKwkqIHNyYy9lbnF1aXJ5LmM6IExpa2V3aXNlLgorCSogc3JjL2Vycm9ycy5jOiBMaWtld2lzZS4KKwkqIHNyYy9maWxlc2RiLmM6IExpa2V3aXNlLgorCSogc3JjL2hlbHAuYzogTGlrZXdpc2UuCisJKiBzcmMvbWFpbi5jOiBMaWtld2lzZS4KKwkqIHNyYy9wYWNrYWdlcy5jOiBMaWtld2lzZS4KKwkqIHNyYy9wa2ctc2hvdy5jOiBMaWtld2lzZS4KKwkqIHNyYy9wcm9jZXNzYXJjLmM6IExpa2V3aXNlLgorCSogc3JjL3F1ZXJ5LmM6IExpa2V3aXNlLgorCSogc3JjL3JlbW92ZS5jOiBMaWtld2lzZS4KKwkqIHNyYy9zZWxlY3QuYzogTGlrZXdpc2UuCisJKiBzcmMvdHJpZ2NtZC5jOiBMaWtld2lzZS4KKwkqIHNyYy90cmlncHJvYy5jOiBMaWtld2lzZS4KKwkqIHNyYy91cGRhdGUuYzogTGlrZXdpc2UKKworMjAwOC0wOS0xNCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogZHNlbGVjdC9iYXNlbGlzdC5jYyAoYmFzZWxpc3Q6OnN0YXJ0ZGlzcGxheSk6IFVubWFyayBkZWJ1ZyBtZXNzYWdlCisJZm9yIHRyYW5zbGF0aW9uLgorCSogZHNlbGVjdC9tZXRobGlzdC5jYyAobWV0aG9kbGlzdDo6ZGlzcGxheSk6IExpa2V3aXNlLgorCSogZHNlbGVjdC9wa2dkZXBjb24uY2MgKHBhY2thZ2VsaXN0OjpyZXNvbHZlZGVwY29uKTogTGlrZXdpc2UuCisJKiBkc2VsZWN0L3BrZ2xpc3QuY2MgKHBhY2thZ2VsaXN0OjphZGRoZWFkaW5nKTogTGlrZXdpc2UuCisJKiBkc2VsZWN0L3BrZ3N1Ymxpc3QuY2MgKHBhY2thZ2VsaXN0OjphZGQpOiBMaWtld2lzZS4KKworMjAwOS0wMi0wMyAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogY29uZmlndXJlLmFjOiBSZWxlYXNlIDEuMTQuMjUuCisKKzIwMDktMDItMDIgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNyYy9hcmNoaXZlcy5jICh0YXJvYmplY3QpOiBEbyBub3QgY2FsbCBlbnN1cmVfcGF0aG5hbWVfbm9uZXhpc3RpbmcKKwlmb3IgLmRwa2ctdG1wIGFuZCAuZHBrZy1uZXcgaWYgd2UgYXJlIGdvaW5nIHRvIHJldHVybiBkdWUgdG8gYWxyZWFkeQorCWV4aXN0aW5nIGRpcmVjdG9yeSBvciBhIGZpbGUgdG8gYmUgc2tlcHQuCisKKzIwMDgtMDItMDIgIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKwkqIGRwa2ctZGViL2J1aWxkLmM6IEVuc3VyZSB0aGF0IGRhdGEudGFyIGFuZCBjb250cm9sLnRhcgorCWFyY2hpdmVzIGNyZWF0ZWQgaW5zaWRlIGEgLmRlYiB1c2UgdGhlIEdOVSBmb3JtYXQgdGhhdCBpcyBjb21wYXRpYmxlCisJd2l0aCBkcGtnIGl0c2VsZi4gQW5kIHJlbW92ZSBUQVJfT1BUSU9OUyBmcm9tIGVudmlyb25tZW50IHRvCisJYXZvaWQgdW5leHBlY3RlZCB1c2VyIGN1c3RvbWl6YXRpb25zIG9mIHRoZSByZXN1bHRpbmcgYXJjaGl2ZXMuCisKKzIwMDgtMTItMjkgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGNvbmZpZ3VyZS5hYzogQnVtcCB2ZXJzaW9uIHRvIDEuMTQuMjV+LgorCisyMDA4LTEyLTI5ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBjb25maWd1cmUuYWM6IFJlbGVhc2UgMS4xNC4yNC4KKworMjAwOC0xMi0yMCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc3JjL2FyY2hpdmVzLmMgKHRhcm9iamVjdCk6IE1vdmUgYSAnY29udGludWUnIGluc2lkZSBhIGNvbmRpdGlvbmFsCisJY2hlY2tpbmcgaWYgdGhlIGNvbmZmaWxlIHRvIHRha2Ugb3ZlciB3YXMgb2Jzb2xldGUgb24gdGhlIG90aGVyCisJcGFja2FnZSBieSBhZGRpbmcgbWlzc2luZyBicmFjZXNlLgorCisyMDA4LTEyLTAxICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL0Rwa2cvU291cmNlL0FyY2hpdmUucG0gKGV4dHJhY3QpOiBEbyBub3QgY3JlYXRlIHRoZSB0ZW1wCisJZGlyZWN0b3J5IGluIHRoZSBjdXJyZW50IGRpcmVjdG9yeSBidXQgaW4gdGhlIHBhcmVudCBkaXJlY3Rvcnkgb2YKKwl0aGUgdGFyZ2V0IGRpcmVjdG9yeS4gT3RoZXJ3aXNlIHRoZSBjb2RlIHdvdWxkIGZhaWwgd2hlbiBjYWxsZWQKKwlmcm9tIGEgbm9uLXdyaXRhYmxlIGRpciBhbmQgcmVuYW1lIGNvdWxkIGZhaWwgZHVlIHRvIGZpbGVzeXN0ZW0KKwlib3VuZGFyaWVzIGJlZXR3ZW4gdGhlIGN1cnJlbnQgZGlyIGFuZCB0aGUgdGFyZ2V0IG9uZS4KKworMjAwOC0xMi0wMSAgTW9kZXN0YXMgVmFpbml1cyAgPG1vZGVzdGFzQHZhaW5pdXMuZXU+CisKKwkqIHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6IERvbid0IG1lcmdlIGFsbCBkZXBlbmRlbmN5IHRlbXBsYXRlcworCWludG8gdGhlIGdlbmVyYXRlZCBkZXBlbmRlbmN5IHdoZW4gQnVpbGQtRGVwZW5kcy1QYWNrYWdlIGlzCisJdXNlZCBpbiB0aGUgc3ltYm9scyBmaWxlLiBJbnN0ZWFkIHNpbXBseSBtb2RpZnkgdGhlIG1pbmltYWwKKwl2ZXJzaW9uIG9uIGFueSBwcmUtZXhpc3RpbmcgZGVwZW5kZW5jeS4KKworMjAwOC0xMS0xOSAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9EcGtnL1NobGlicy9PYmpkdW1wLnBtIChwYXJzZV9keW5hbWljX3N5bWJvbCk6IEZpeCB0aGUKKwlyZWd1bGFyIGV4cHJlc3Npb24gdG8gbm90IHJlcXVpcmUgdHdvIHNwYWNlIGJldHdlZW4gYWxpZ25tZW50IGFuZAorCXN5bWJvbCBuYW1lLgorCSogc2NyaXB0cy90LzIwMF9EcGtnX1NobGlicy50LAorCXNjcmlwdHMvdC8yMDBfRHBrZ19TaGxpYnMvb2JqZHVtcC5sczogQWRkIGEgbm9uLXJlZ3Jlc3Npb24gdGVzdAorCWNvcnJlc3BvbmRpbmcgdG8gdGhlIGFib3ZlIGNhc2UuCisKKzIwMDgtMTEtMTggIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGNvbmZpZ3VyZS5hYzogQnVtcCB2ZXJzaW9uIHRvIDEuMTQuMjR+LgorCisyMDA4LTExLTE4ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBjb25maWd1cmUuYWM6IFJlbGVhc2UgMS4xNC4yMy4KKworMjAwOC0xMS0xNCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogbGliL2VoYW5kbGUuYyAocnVuX2Vycm9yX2hhbmRsZXIpOiBJbiBjYXNlIG9mIG9uZXJyX2Fib3J0IHByaW50IGFuCisJZXJyb3IgbWVzc2FnZSBhbmQgZXhpdCwgb3RoZXJ3aXNlIGxvbmdqbXAuCisKKzIwMDgtMTEtMTQgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNyYy9tYWluLmggKGFib3J0X3Byb2Nlc3NpbmcpOiBOZXcgdmFyaWFibGUgZGVjbGFyYXRpb24uCisJKiBzcmMvZXJyb3JzLmMgKGFib3J0X3Byb2Nlc3NpbmcpOiBOZXcgdmFyaWFibGUgZGVmaW5pdGlvbi4KKwkqIHNyYy9hcmNoaXZlcy5jIChwcmludF9lcnJvcl9wZXJwYWNrYWdlKTogVXNlIGFib3J0X3Byb2Nlc3NpbmcKKwlpbnN0ZWFkIG9mIG9uZXJyX2Fib3J0IGZvciBub24gZmF0YWwgZXJyb3JzLgorCShyZXBvcnRicm9rZW5fcmV0ZXhpdHN0YXR1cyk6IExpa2V3aXNlLiBEbyBub3QgY2hlY2sgb25lcnJfYWJvcnQKKwlmb3IgdGhlIGV4aXQgdmFsdWUgYXMgaXQgc2hvdWxkIG5vdCBoYXZlIHJlYWNoZWQgdGhpcyBmdW5jdGlvbi4KKwkqIHNyYy9wYWNrYWdlcy5jIChwcm9jZXNzX3F1ZXVlKTogTGlrZXdpc2UuIFJldHVybiBvbiBlbnRlcmluZyBpZgorCWl0IHNob3VsZCBhYm9ydCBwcm9jZXNzaW5nLgorCisyMDA4LTExLTE0ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBsaWIvZWhhbmRsZS5jIChydW5fZXJyb3JfaGFuZGxlcik6IE5ldyBmdW5jdGlvbi4KKwkocHVzaF9lcnJvcl9oYW5kbGVyKTogVXNlIHJ1bl9lcnJvcl9oYW5kbGVyIGluc3RlYWQgb2YgZGlyZWN0bHkKKwljYWxsaW5nIGxvbmdqbXAuCisJKG9oc2hpdCk6IExpa2V3aXNlLgorCShvaHNoaXR2Yik6IExpa2V3aXNlLgorCShvaHNoaXR2KTogTGlrZXdpc2UuCisJKG9oc2hpdGUpOiBMaWtld2lzZS4KKworMjAwOC0xMS0wNyAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9EcGtnL1ZlcnNpb24ucG06IFN5bmNocm9uaXplIGNvZGUgd2l0aCB2ZXJzaW9uIHVzZWQgYnkKKwlkZWJidWdzIChhZGQgc29tZSBidWdmaXhlcykuCisJKiBzY3JpcHRzL3QvOTAwX0Rwa2dfVmVyc2lvbi50OiBBZGQgbm9uLXJlZ3Jlc3Npb24gdGVzdHMgZm9yCisJdmVyc2lvbiBjb21wYXJpc29uIGNvZGUuCisJKiBzY3JpcHRzL01ha2VmaWxlLmFtOiBBZGQgbmV3IGZpbGUgaW4gdGhlIGRpc3QgdGFyYmFsbC4KKworMjAwOC0xMC0yMCAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9EcGtnL1NobGlicy9TeW1ib2xGaWxlLnBtIChsb2FkKTogTGV0IHRoZSByZWN1cnNpdmVseQorCW5lc3RlZCBjYWxscyB0byBsb2FkKCkgbW9kaWZ5IHRoZSBuYW1lIG9mIHRoZSBjdXJyZW50IG9iamVjdCBzbworCXRoYXQgdGhlIGhlYWRlciBjYW4gYmUgc2V0IGluIGFuIGluY2x1ZGVkIGZpbGUgKGxpa2UgaXQncyBhbHJlYWR5CisJZG9jdW1lbnRlZCkuCisKKzIwMDgtMDktMjYgIFRoaWVtbyBTZXVmZXIgIDx0aHNAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9EcGtnL1NobGlicy9TeW1ib2xGaWxlLnBtOiBhZGQgIl9fZ251X2xvY2FsX2dwIiBzeW1ib2wKKwkgIHRvIHRoZSBibGFja2xpc3QgKG1pcHMvbWlwc2VsIHNwZWNpZmljIHN5bWJvbCB0aGF0IGFwcGVhcmVkIHdpdGgKKwkgIEdDQyA0LjMpLgorCisyMDA4LTA5LTA1ICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBjb25maWd1cmUuYWM6IEJ1bXAgdmVyc2lvbiB0byAxLjE0LjIzfi4KKworMjAwOC0wOS0wNSAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogY29uZmlndXJlLmFjOiBSZWxlYXNlIDEuMTQuMjIuCisKKzIwMDgtMDgtMjkgIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsOiBJdCB3YXMgYWxyZWFkeSBza2lwcGluZyBzeW1saW5rcworCXdpdGhpbiB0aGUgcGFja2FnZSBidWlsZCB0cmVlLiBOb3cgaXQgYWxzbyBza2lwcyByZWFsCisJZGlyZWN0b3JpZXMgYWNjZXNzZWQgdGhyb3VnaCBhIHN5bWxpbmsgY29udGFpbmVkIGluIHRoZSBwYWNrYWdlCisJYnVpbGQgdHJlZS4gUGFja2FnZSBsaWtlIGxpYmM2LTM4NiBoYWQgc3ltbGlua3MgdXNyL2xpYjMyCisJcG9pbnRpbmcgdG8gc29tZSBkaXJlY3RvcmllcyBvdXRzaWRlIG9mIHRoZSBidWlsZCB0cmVlIGFuZAorCXRoZSBMRF9MSUJSQVJZX1BBVEggc2V0IGJ5IGZha2Vyb290IGxlZCBjb250YWluZWQKKwkvdXNyL2xpYjMyL2xpYmZha2Vyb290IHdoaWNoIG1hZGUgZHBrZy1nZW5zeW1ib2xzIHNjYW4gdGhpcworCWRpcmVjdG9yeSBhbmQgYWRkIGxpYmZha2Vyb290IHRvIHRoZSBsaWJjNi0zODYgc3ltYm9scyBmaWxlIQorCisyMDA4LTA4LTI5ICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06IHJ1bl9xdWlsdCgpIGNhbiBiZSBydW4KKwl3aGVuIG5vIHF1aWx0IHNlcmllcyBmaWxlIGV4aXN0IHlldC4gSW4gdGhhdCBjYXNlIHdlIGhhdmUgdG8KKwlwcm92aWRlIHRoZSBuYW1lIG9mIHRoZSBzZXJpZXMgZmlsZSB0aGF0IHdlIHdhbnQgdG8gY3JlYXRlIChhcyB0aGUKKwlxdWlsdCBjb21tYW5kIG1pZ2h0IGNyZWF0ZSBpdCkuIFVwIHRvIG5vdworCUZpbGU6OlNwZWMtPnJlbDJhYnModW5kZWYpIHJldHVybmVkIHRoZSBuYW1lIG9mIHRoZSBjdXJyZW50CisJZGlyZWN0b3J5IGFuZCB3ZSBpbXByb3Blcmx5IHVzZWQgdGhhdCBhcyB2YWx1ZSBvZiBRVUlMVF9TRVJJRVMuCisJKiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG0gKGRvX2J1aWxkKTogQ2hhbmdlIHBlcm1pc3Npb25zCisJb2YgdGhlIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIHBhdGNoIHdoaWNoIGlzIGluaXRpYWxseSBjcmVhdGVkCisJMDYwMCB3aXRoIHRlbXBmaWxlKCkuCisKKzIwMDgtMDgtMjYgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGNvbmZpZ3VyZS5hYzogQnVtcCB2ZXJzaW9uIHRvIDEuMTQuMjJ+LgorCisyMDA4LTA4LTI2ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBsaWIvZ2V0dGV4dC5oOiBNb3ZlIHRvIC4uCisJKiBsaWJjb21wYXQvZ2V0dGV4dC5oOiAuLi4gaGVyZS4KKwkqIGxpYi9NYWtlZmlsZS5hbSAobGliZHBrZ19hX1NPVVJDRVMpOiBSZW1vdmUgJ2dldHRleHQuaCcuCisJKiBsaWJjb21wYXQvTWFrZWZpbGUuYW0gKGxpYmNvbXBhdF9hX1NPVVJDRVMpOiBBZGQgJ2dldHRleHQuaCcKKworMjAwOC0wOC0yNCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogbGliL2Rwa2ctcHJpdi5oIFtIQVZFX1NURERFRl9IXTogQ29uZGl0aW9uYWxpemUgPHN0ZGRlZi5oPiBpbmNsdXNpb24uCisKKzIwMDgtMDgtMjQgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGxpYi9kcGtnLWRlZi5oIChEUEtHX0JFR0lOX0RFQ0xTLCBEUEtHX0VORF9ERUNMUyk6IE5ldyBtYWNyb3MuCisJKiBsaWIvZHBrZy5oOiBTdXJyb3VuZCBkZWNsYXJhdGlvbnMgd2l0aCBEUEtHX0JFR0lOX0RFQ0xTIGFuZAorCURQS0dfRU5EX0RFQ0xTLgorCSogbGliL215b3B0Lmg6IExpa2V3aXNlLgorCSogbGliL2Rwa2ctZGIuaDogTGlrZXdpc2UuIEluY2x1ZGUgPGRwa2ctZGVmLmg+LgorCSogbGliL2Rwa2ctcHJpdi5oOiBJbmNsdWRlIDxkcGtnLWRlZi5oPi4gUmVwbGFjZSBleHRlcm4gIkMiIGNvbnRleHQKKwl3aXRoIERQS0dfQkVHSU5fREVDTFMgYW5kIERQS0dfRU5EX0RFQ0xTLgorCSogZHNlbGVjdC9iYXNlY21kcy5jYzogUmVtb3ZlIHN1cnJvdW5kaW5nIGV4dGVybiAiQyIgY29udGV4dCBmcm9tCisJaGVhZGVyIGZpbGVzLgorCSogZHNlbGVjdC9iYXNlbGlzdC5jYzogTGlrZXdpc2UuCisJKiBkc2VsZWN0L2Jhc2V0b3AuY2M6IExpa2V3aXNlLgorCSogZHNlbGVjdC9iaW5kaW5ncy5jYzogTGlrZXdpc2UuCisJKiBkc2VsZWN0L2N1cmtleXMuY2M6IExpa2V3aXNlLgorCSogZHNlbGVjdC9oZWxwbXNncy5oOiBMaWtld2lzZS4KKwkqIGRzZWxlY3QvbWFpbi5jYzogTGlrZXdpc2UuCisJKiBkc2VsZWN0L21ldGhrZXlzLmNjOiBMaWtld2lzZS4KKwkqIGRzZWxlY3QvbWV0aGxpc3QuY2M6IExpa2V3aXNlLgorCSogZHNlbGVjdC9tZXRob2QuY2M6IExpa2V3aXNlLgorCSogZHNlbGVjdC9tZXRocGFyc2UuY2M6IExpa2V3aXNlLgorCSogZHNlbGVjdC9wa2djbWRzLmNjOiBMaWtld2lzZS4KKwkqIGRzZWxlY3QvcGtnZGVwY29uLmNjOiBMaWtld2lzZS4KKwkqIGRzZWxlY3QvcGtnZGlzcGxheS5jYzogTGlrZXdpc2UuCisJKiBkc2VsZWN0L3BrZ2luZm8uY2M6IExpa2V3aXNlLgorCSogZHNlbGVjdC9wa2drZXlzLmNjOiBMaWtld2lzZS4KKwkqIGRzZWxlY3QvcGtnbGlzdC5jYzogTGlrZXdpc2UuCisJKiBkc2VsZWN0L3BrZ3N1Ymxpc3QuY2M6IExpa2V3aXNlLgorCSogZHNlbGVjdC9wa2d0b3AuY2M6IExpa2V3aXNlLgorCisyMDA4LTA4LTI0ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBsaWIvZHBrZy1kZWYuaDogRG8gbm90IGluY2x1ZGUgPGNvbmZpZy5oPi4KKwkqIGRzZWxlY3QvaGVscG1zZ3MuaDogTGlrZXdpc2UuCisJKiBkc2VsZWN0L2hlbHBtc2dzLmNjOiBJbmNsdWRlIDxjb25maWcuaD4uCisJKiBsaWIvY2xlYW51cC5jOiBMaWtld2lzZS4KKwkqIGxpYi9tZDUuYzogSW5jbHVkZSA8Y29uZmlnLmg+IGluc3RlYWQgb2YgImNvbmZpZy5oIi4KKwkqIGxpYi9tbGliLmM6IExpa2V3aXNlLgorCSogdXRpbHMvc3RhcnQtc3RvcC1kYWVtb24uYzogTGlrZXdpc2UuCisKKzIwMDgtMDgtMjIgIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKwkqIG1hbi9kcGtnLXNvdXJjZS4xOiBDbGFyaWZ5IHR3byBwb2ludHMgY29uY2VybmluZyB0aGUgYmVoYXZpb3VyCisJb2YgdGhlIG5ldyAzLjAgKHF1aWx0KSBzb3VyY2UgZm9ybWF0LgorCisyMDA4LTA4LTE4ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBsaWIvZHBrZy5oIChBUkNIQklORk1UKTogUmVtb3ZlIHVudXNlZCBtYWNyby4KKworMjAwOC0wOC0xOCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc3JjL3F1ZXJ5LmM6IFJlbW92ZSBsZWZ0LW92ZXIgZGVzY3JpcHRpb24gZnJvbSBoZWFkZXIgY29tbWVudC4KKwkqIHNyYy9yZW1vdmUuYzogUmVtb3ZlIHBhcnRpYWwgY2hhbmdlIGxvZyBmcm9tIGhlYWRlciBjb21tZW50LgorCisyMDA4LTA4LTE4ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBsaWIvZHBrZy5oIChDTUVUSE9QVEZJTEUsIE1FVEhMT0NLRklMRSwgTUVUSE9EU0RJUikKKwkoSU1FVEhPRE1BWExFTiwgSU9QVElPTk1BWExFTiwgTUVUSE9ET1BUSU9OU0ZJTEUpCisJKE1FVEhPRFNFVFVQU0NSSVBULCBNRVRIT0RVUERBVEVTQ1JJUFQsIE1FVEhPRElOU1RBTExTQ1JJUFQpCisJKE9QVElPTlNERVNDUEZYLCBPUFRJT05JTkRFWE1BWExFTik6IE1vdmUgbWFjcm9zIC4uLgorCSogZHNlbGVjdC9tZXRob2QuaDogLi4uIGhlcmUuCisJKiBkc2VsZWN0L21ldGhwYXJzZS5jYzogSW5jbHVkZSAibWV0aG9kLmgiLgorCisyMDA4LTA4LTE4ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBtYW4vZHBrZy10cmlnZ2VyLjE6IE1hcmsgcHJvZ3JhbSBuYW1lcyBpbiBib2xkLgorCisyMDA4LTA4LTE4ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBtYW4vY2xlYW51cC1pbmZvLjg6IFVzZSBhIHRyb2ZmIHNwZWNpYWwgY2hhcmFjdGVyIGZvciB0aGUgY29weXJpZ2h0CisJc3ltYm9sLgorCSogbWFuL2RlYi1zdWJzdHZhcnMuNTogTGlrZXdpc2UuCisJKiBtYW4vZGViLXZlcnNpb24uNTogTGlrZXdpc2UuCisJKiBtYW4vZHBrZy1idWlsZHBhY2thZ2UuMTogTGlrZXdpc2UuCisJKiBtYW4vZHBrZy1jaGVja2J1aWxkZGVwcy4xOiBMaWtld2lzZS4KKwkqIG1hbi9kcGtnLWRlYi4xOiBMaWtld2lzZS4KKwkqIG1hbi9kcGtnLWRpc3RhZGRmaWxlLjE6IExpa2V3aXNlLgorCSogbWFuL2Rwa2ctZGl2ZXJ0Ljg6IExpa2V3aXNlLgorCSogbWFuL2Rwa2ctZ2VuY2hhbmdlcy4xOiBMaWtld2lzZS4KKwkqIG1hbi9kcGtnLWdlbmNvbnRyb2wuMTogTGlrZXdpc2UuCisJKiBtYW4vZHBrZy1nZW5zeW1ib2xzLjE6IExpa2V3aXNlLgorCSogbWFuL2Rwa2ctbmFtZS4xOiBMaWtld2lzZS4KKwkqIG1hbi9kcGtnLXBhcnNlY2hhbmdlbG9nLjE6IExpa2V3aXNlLgorCSogbWFuL2Rwa2ctcXVlcnkuMTogTGlrZXdpc2UuCisJKiBtYW4vZHBrZy1zaGxpYmRlcHMuMTogTGlrZXdpc2UuCisJKiBtYW4vZHBrZy1zb3VyY2UuMTogTGlrZXdpc2UuCisJKiBtYW4vZHBrZy1zcGxpdC4xOiBMaWtld2lzZS4KKwkqIG1hbi9kcGtnLXN0YXRvdmVycmlkZS44OiBMaWtld2lzZS4KKwkqIG1hbi9pbnN0YWxsLWluZm8uODogTGlrZXdpc2UuCisJKiBtYW4vdXBkYXRlLWFsdGVybmF0aXZlcy44OiBMaWtld2lzZS4KKworMjAwOC0wOC0xNSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogbWFuL2Rwa2ctZGViLjEgKEJVR1MpOiBJbXByb3ZlIGNvbW1lbnQgYWJvdXQgbWlzc2luZyBhdXRoZW50aWNhdGlvbgorCWFuZCBjaGVja3N1bSBzdXBwb3J0IGluIC5kZWIgZmlsZXMuCisKKzIwMDgtMDgtMDUgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGxpYi9laGFuZGxlLmM6IEluY2x1ZGUgPGRwa2ctcHJpdi5oPi4KKwkocHVzaF9jbGVhbnVwKTogVXNlIHNpemVvZl9hcnJheSBpbnN0ZWFkIG9mIGFkLWhvYyBjYWxjdWxhdGlvbi4KKworMjAwOC0wOC0wNSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDogVXNlIHVzYWdlZXJyIGluc3RlYWQgb2YgZW1iZWRkZWQgY29kZS4KKworMjAwOC0wOC0wNSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLWRpc3RhZGRmaWxlLnBsOiBVc2UgX2coKSBpbnN0ZWFkIG9mIHdyb25nIGFuZCB0eXBvZWQKKwlnZXR0ZXR4KCkuCisKKzIwMDgtMDgtMDMgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNyYy9wcm9jZXNzYXJjLmMgKHByb2Nlc3NfYXJjaGl2ZSk6IFVzZSBibGFua3BhY2thZ2VwZXJmaWxlIGluc3RlYWQKKwlvZiBtYW51YWxseSBibGFua2luZyB0aGUgbWVtYmVycy4KKwkqIHNyYy9yZW1vdmUuYyAocmVtb3ZhbF9idWxrKTogTGlrZXdpc2UuCisKKzIwMDgtMDgtMDMgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHV0aWxzL3N0YXJ0LXN0b3AtZGFlbW9uLmMgKHBpZF9pc19ydW5uaW5nKSBbIU9TSFVSRF06IFJlaW1wbGVtZW50CisJdXNpbmcga2lsbCBpbnN0ZWFkIG9mIGxlc3MtcG9ydGFibGUgL3Byb2MuCisKKzIwMDgtMDgtMDMgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHV0aWxzL3N0YXJ0LXN0b3AtZGFlbW9uLmMgKGNoZWNrKSBbSEFWRV9LVk1fSF06IENhbGwgcGlkX2lzX2V4ZWMuCisKKzIwMDgtMDgtMDMgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNyYy9wa2ctc2hvdy5jIChsaW1pdGVkZGVzY3JpcHRpb24pOiBBc3NpZ24gZGlyZWN0bHkgdG8gbF9yIGluc3RlYWQKKwlvZiBhIHRlbXBvcmFyeSB2YXJpYWJsZS4KKworMjAwOC0wOC0wMyAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogdXRpbHMvc3RhcnQtc3RvcC1kYWVtb24uYzogTW92ZSB0aGUgZGlmZmVyZW50IGltcGxlbWVudGF0aW9ucworCW9mIHRoZSBzYW1lIGZ1bmN0aW9uIGZvciBkaWZmZXJlbnQgb3BlcmF0aW5nIHN5c3RlbXMgdG9nZXRoZXIuCisKKzIwMDgtMDgtMDMgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHV0aWxzL3N0YXJ0LXN0b3AtZGFlbW9uLmMgKE1JTl9QT0xMX0lOVEVSVkFMKTogVXNlIHByb3BlciBVVEYtOCBtdQorCXN5bWJvbCBmb3IgdGhlIHVuaXQgaW4gdGhlIGNvbW1lbnQuCisKKzIwMDgtMDctMjYgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNyYy9NYWtlZmlsZS5hbSAoZHBrZ19TT1VSQ0VTKTogQWRkICdwa2ctc2hvdy5jJy4KKwkoZHBrZ19xdWVyeV9TT1VSQ0VTKTogTGlrZXdpc2UuCisJKiBzcmMvbWFpbi5oIChsaW1pdGVkZGVzY3JpcHRpb24pOiBOZXcgZnVuY3Rpb24gcHJvdG90eXBlLgorCSogc3JjL2VucXVpcnkuYyAobGltaXRlZGRlc2NyaXB0aW9uKTogTW92ZSBmdW5jdGlvbiB0byAuLi4KKwkqIHNyYy9wa2ctc2hvdy5jOiAuLi4gaGVyZS4gTmV3IGZpbGUuCisJKiBzcmMvcXVlcnkuYyAobGltaXRlZGRlc2NyaXB0aW9uKTogUmVtb3ZlIGR1cGxpY2F0ZSBmdW5jdGlvbi4KKworMjAwOC0wNy0yNiAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogbGliL3Nob3dwa2cuYyAocGFyc2Vmb3JtYXQpOiBEbyBub3Qgc2V0IGN1ci0+dHlwZSB0byBmaWVsZCwgYXMKKwl0aGF0J3Mgc2V0IGluIHBhcnNlZmllbGQuCisKKzIwMDgtMDctMjIgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNyYy9NYWtlZmlsZS5hbSAoZHBrZ19TT1VSQ0VTKTogQWRkICdwa2ctbGlzdC5jJy4KKwkoZHBrZ19xdWVyeV9TT1VSQ0VTKTogTGlrZXdpc2UuCisJKiBzcmMvZW5xdWlyeS5jIChwa2dsaXN0cXNvcnRjbXApOiBNb3ZlIGZ1bmN0aW9uIHRvIC4uLgorCSogc3JjL3BrZy1saXN0LmM6IC4uLiBoZXJlLiBOZXcgZmlsZS4KKwkqIHNyYy9xdWVyeS5jIChwa2dsaXN0cXNvcnRjbXApOiBSZW1vdmUgZHVwbGljYXRlIGZ1bmN0aW9uLgorCisyMDA4LTA3LTIyICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzcmMvbWFpbi5oIChzdHJ1Y3QgcGtnX2RlY29uZl9saXN0KTogTW92ZSBkZWNsYXJhdGlvbiAuLi4KKwkqIHNyYy9hcmNoaXZlcy5oOiAuLi4gaGVyZS4KKworMjAwOC0wNy0yMiAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc3JjL21haW4uaCAoc3RydWN0IHBhY2thZ2Vpbmxpc3QpOiBSZW5hbWUgdG8gLi4uCisJKHN0cnVjdCBwa2dfZGVjb25mX2xpc3QpOiAuLi4gdGhpcy4gRml4IGFsbCB1c2Vycy4KKworMjAwOC0wNy0yMiAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc3JjL21haW4uaCAoc3RydWN0IHBhY2thZ2Vpbmxpc3QpOiBDaGFuZ2UgJ3ZvaWQgKnhpbmZvJyBtZW1iZXIgdG8KKwknc3RydWN0IHBrZ2luZm8gKnBrZ19yZW1vdmFsJy4gRml4IGFsbCB1c2Vycy4KKworMjAwOC0wNy0yMiAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc3JjL21haW4uaCAoaWdub3JlZGVwZW5kc3MpOiBDaGFuZ2UgdHlwZSB0byAnc3RydWN0IHBrZ2lucXVldWUnLgorCSogc3JjL21haW4uYyAoaWdub3JlZGVwZW5kc3MpOiBMaWtld2lzZS4KKwkoaWdub3JlZGVwZW5kcyk6IENoYW5nZSB0eXBlIGZvciB2YXJpYWJsZSAnbmknIHRvICdzdHJ1Y3QgcGtnaW5xdWV1ZScuCisJKiBzcmMvaGVscC5jIChpZ25vcmVfZGVwZW5kcyk6IExpa2V3aXNlLgorCisyMDA4LTA3LTIyICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzcmMvcXVlcnkuYyAoaWdub3JlZGVwZW5kc3MpOiBSZW1vdmUgdW51c2VkIHZhcmlhYmxlLgorCisyMDA4LTA3LTEwICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBtYW4vZHBrZy1idWlsZHBhY2thZ2UuMTogR2l2ZSBhIGRldGFpbGVkIGV4cGxhbmF0aW9uIG9mIHdoYXQgdGhlCisJY29tbWFuZCBkb2VzLiBEcm9wIGFueSBkdXBsaWNhdGUgaW5mb3JtYXRpb24gY29udGFpbmVkIGluIHRoZQorCWRwa2ctZ2VuY2hhbmdlcy9kcGtnLXNvdXJjZSBtYW51YWwgcGFnZXMuCisJKiBtYW4vZHBrZy1nZW5jaGFuZ2VzLjE6IERvY3VtZW50IHRoZSAtQSBvcHRpb24gKHdhcyBtaXNzaW5nKS4KKworMjAwOC0wNy0xMCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogbGliL2Rwa2ctcHJpdi5oIChtaW4sIG1heCk6IE5ldyBtYWNyb3MuCisJKiBsaWIvdGFyZm4uYzogSW5jbHVkZSA8ZHBrZy1wcml2Lmg+LgorCSogc3JjL2NvbmZpZ3VyZS5jOiBMaWtld2lzZS4KKwkqIHNyYy9lbnF1aXJ5LmM6IExpa2V3aXNlLgorCisJKiBzcmMvY29uZmlndXJlLmMgKGNvbmZmZGVyZWYpOiBVc2UgbWF4IGluc3RlYWQgb2YgaGFyZGNvZGVkIHRlc3QuCisJKiBsaWIvdGFyZm4uYyAoVGFyRXh0cmFjdG9yKTogVXNlIG1pbiBpbnN0ZWFkIG9mIGhhcmRjb2RlZCB0ZXN0LgorCSogbGliL2ZpZWxkcy5jIChjb25mZnZhbHVlX2xhc3R3b3JkKTogTGlrZXdpc2UuCisJKiBzcmMvZW5xdWlyeS5jIChsaW1pdGVkZGVzY3JpcHRpb24pOiBMaWtld2lzZS4KKwkqIHNyYy9tYWluLmMgKHNldGZvcmNlKTogTGlrZXdpc2UuCisJKiBzcmMvcXVlcnkuYyAobGltaXRlZGRlc2NyaXB0aW9uKTogTGlrZXdpc2UuCisKKzIwMDgtMDctMTAgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+LAorICAgICAgICAgICAgVGltb3RoeSBHIEFiYm90dCAgPHRhYmJvdHRAbWVnYS1tYW4ubWl0LmVkdT4KKworCSogc3JjL2NvbmZpZ3VyZS5jIChkZWZlcnJlZF9jb25maWd1cmUpOiBDYWxsIG5hbWVub2RldG91c2UgdG8gaGFuZGxlCisJZGl2ZXJ0ZWQgY29uZmZpbGVzLiBVc2UgdHJpZ19maWxlX2FjdGl2YXRlIG9uIHVzZW5vZGUsIGluc3RlYWQgb2YKKwl0cmlnX2ZpbGVfYWN0aXZhdGVfYnluYW1lLCB0byBhY3RpdmF0ZSB0aGUgY29ycmVjdCBmaWxlIHRyaWdnZXIgZm9yCisJdGhlIGRpdmVydGVkIGNvbmZmaWxlLgorCisyMDA4LTA3LTA2ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzcmMvbWFpbi5oOiBSZW1vdmUgY29tbWVudCBhYm91dCBzaWRlIGVmZmVjdCBpbiBuYW1lbm9kZXRvdXNlLgorCSogc3JjL2hlbHAuYyAobmFtZW5vZGV0b3VzZSk6IE1vdmUgY2FsbCB0byB0cmlnX2ZpbGVfYWN0aXZhdGUgdG8gLi4uCisJKiBzcmMvYXJjaGl2ZXMuYyAodGFyb2JqZWN0KTogLi4uIGhlcmUuCisJKiBzcmMvcHJvY2Vzc2FyYy5jIChwcm9jZXNzX2FyY2hpdmUpOiBMaWtld2lzZS4KKwkqIHNyYy9yZW1vdmUuYyAocmVtb3ZhbF9idWxrX3JlbW92ZV9maWxlcyk6IExpa2V3aXNlLgorCShyZW1vdmFsX2J1bGtfcmVtb3ZlX2xlZnRvdmVyX2RpcnMpOiBMaWtld2lzZS4KKworMjAwOC0wNy0wNiAgTWljaGVsIExlc3BpbmFzc2UgIDx3YWxrZW5Aem95Lm9yZz4KKworCSogZHNlbGVjdC9iYXNlbGlzdC5jYyAoYmFzZWxpc3Q6OnN0YXJ0ZGlzcGxheSk6IENyZWF0ZSB0aGUKKwlwYWQgd2l0aCB0aGUgbGlzdCBvZiB0aGUgc2l6ZSBvZiB0aGUgZGlzcGxheSBhbmQgbm90IG9mIHRoZQorCXNpemUgb2YgdGhlIGxpc3QgY29udGVudCBpdHNlbGYuCisJKiBkc2VsZWN0L2Jhc2V0b3AuY2MgKGJhc2VsaXN0OjpyZWZyZXNobGlzdCk6IFRoZSBwYXJ0IHRvCisJZGlzcGxheSBpcyBhbHdheXMgYXQgdGhlIHRvcCBvZiB0aGUgcGFkLgorCShiYXNlbGlzdDo6cmVkcmF3aXRlbXNyYW5nZSk6IFNpbXBsaWZpZWQgdG8gcmVkcmF3IHRoZSByZWFsCisJcmFuZ2Ugb25seS4KKwkqIGRzZWxlY3QvcGtnbGlzdC5jYyAocGFja2FnZWxpc3Q6OnNvcnRtYWtlaGVhZHMpOiBObyBuZWVkIHRvIHJlYWxsb2NhdGUKKwl0aGUgcGFkIHdoZW4gdGhlIGxpc3QgY2hhbmdlcy4KKwkqIGRzZWxlY3QvcGtndG9wLmNjIChwYWNrYWdlbGlzdDo6cmVkcmF3MWl0ZW1zZWwpOiBUaGUgbGluZQorCW9mIHRoZSBpdGVtIGluIHRoZSBpbmZvcGFkIGRvZXNuJ3QgY29ycmVzcG9uZCB0byBpdHMgaW5kZXggaW4KKwl0aGUgbGlzdCBhbnkgbW9yZS4gQWRqdXN0IGFjY29yZGluZ2x5LgorCisyMDA4LTA3LTA1ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzcmMvYXJjaGl2ZXMuYyAoZmlsZXNhdmVzcGFja2FnZSk6IERvIG5vdCBtYXJrIGRlYnVnIG1lc3NhZ2UgZm9yCisJdHJhbnNsYXRpb24uCisKKzIwMDgtMDctMDQgIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisgICAgICAgICAgICBCcnVjZSBTYXNzIDxibXNhc3NAc2hhdy5jYT4KKworCSogZHNlbGVjdC9wa2dpbmZvLmNjIChwYWNrYWdlbGlzdDo6aXRkX2Rlc2NyaXB0aW9uKSwgZHNlbGVjdC9wa2d0b3AuY2MKKwkocGFja2FnZWxpc3Q6OnJlZHJhdzFpdGVtc2VsKTogVXNlIGRlc2NyaXB0aW9uIG9mIGluc3RhbGxlZAorCXBhY2thZ2UgYXMgYSBmYWxsYmFjayBpZiB0aGUgcGFja2FnZSBpcyBub3QgbW9yZSBsaXN0ZWQgaW4gdGhlCisJYXZhaWxhYmxlIGxpc3QuCisKKzIwMDgtMDctMDIgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGxpYi9maWVsZHMuYyAoY29udmVydF9zdHJpbmcpOiBSZW1vdmUgdW5uZWVkZWQgdmFyaWFibGUgYXNzaWdubWVudHMuCisJR2V0IHJpZCB0aGlzIHdheSBvZiBhbiBpbnQgdmFyaWFibGUuCisKKzIwMDgtMDctMDIgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGxpYi9maWVsZHMuYyAoY29udmVydF9zdHJpbmcpOiBDaGFuZ2UgbnZpcCB0byBiZSBjb25zdCBhbmQgdXNlIGEKKwlwcm9wZXIgYXNzaWdubWVudCBpbnN0ZWFkIG9mIGEgc25lYWt5IGNhc3QgdGhyb3VnaCBtZW1jcHkuIFJlbW92ZQorCXVubmVlZGVkIGxlbmd0aCBjYWNoaW5nIGFzIGFsbCBjdXJyZW50IG5hbWV2YWx1ZSBhcnJheXMgaGF2ZSBpdAorCXByZWNvbXB1dGVkLgorCisyMDA4LTA3LTAyICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBsaWIvZmllbGRzLmMgKGNvbnZlcnRfc3RyaW5nKTogVXNlIGEgY2FwcGVkIHN0cmluZyBsZW5ndGggaW5zdGVhZAorCW9mIHVzaW5nIGxhc3QgbmFtZXZhbHVlIGxlbmd0aCBtZW1iZXIgd2hlbiBwcmludGluZyB0aGUgZGlzYWxsb3dlZAorCXZhbHVlLgorCisyMDA4LTA3LTAyICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzcmMvcXVlcnkuYyAobGltaXRlZGRlc2NyaXB0aW9uKTogVXNlIE5VTEwgaW5zdGVhZCBvZiAwLgorCShsaXN0MXBhY2thZ2UsIHNlYXJjaGZpbGVzLCBlbnFwZXJwYWNrYWdlLCBtYWluKTogTGlrZXdpc2UuCisJKGNpcGFjdGlvbiwgaWdub3JlZGVwZW5kc3MsIGNtZGluZm9zKTogTGlrZXdpc2UuCisJKEFDVElPTiwgT0JTT0xFVEUpOiBMaWtld2lzZS4KKwkqIHNyYy9zZWxlY3QuYyAoc2V0c2VsZWN0aW9ucyk6IExpa2V3aXNlLgorCSogc3JjL3RyaWdjbWQuYyAoY21kaW5mb3MpOiBMaWtld2lzZS4KKworMjAwOC0wNy0wMiAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc3JjL3JlbW92ZS5jIChyZW1vdmFsX2J1bGtfcmVtb3ZlX2NvbmZpZ2ZpbGVzKTogUmVtb3ZlIHdyb25nIGNvbW1lbnQKKwlub3QgbWF0Y2hpbmcgdGhlIGNvZGUuCisKKzIwMDgtMDctMDIgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNyYy9hcmNoaXZlcy5jICh0YXJmaWxlX3NraXBfb25lX2ZvcndhcmQpOiBNYWtlIHN0YXRpYy4KKworMjAwOC0wNy0wMiAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogbGliL2Rwa2ctcHJpdi5oOiBJbmNsdWRlIDxzdGRkZWYuaD4uCisJKiBsaWIvc3RyaW5nLmM6IEluY2x1ZGUgPGNvbmZpZy5oPiBhbmQgPGRwa2ctcHJpdi5oPi4KKworMjAwOC0wNy0wMiAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogZHNlbGVjdC9NYWtlZmlsZS5hbSAoY3Vya2V5cy5oKTogVXNlICckKENQUCknIGluc3RlYWQgb2YgJyQoQ0MpIC1FJy4KKworMjAwOC0wNy0wMSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc3JjL2RlcGNvbi5jIChmaW5kYnJlYWtjeWNsZXJlY3Vyc2l2ZSk6IFVzZSB0aGUgZGVidWcgZnVuY3Rpb24KKwlpbnN0ZWFkIG9mIHJlaW1wbGVtZW50aW5nIGl0cyBsb2dpYy4KKwkqIHNyYy9oZWxwLmMgKHByZWV4ZWNzY3JpcHQpOiBMaWtld2lzZS4KKworMjAwOC0wNy0wMSAgRWdtb250IEtvYmxpbmdlciAgPGVnbW9udEB1aHVsaW51eC5odT4KKworCSogc3JjL3Byb2Nlc3NhcmMuYyAocHJvY2Vzc19hcmNoaXZlKTogUHJvcGVybHkgbHN0YXQgdGhlIGNvcnJlY3QKKwlmaWxlIG9uIHVwZ3JhZGUgd2hlbiB1c2luZyAtLXJvb3QuCisKKzIwMDgtMDctMDEgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNyYy9wcm9jZXNzYXJjLmMgKHByb2Nlc3NfYXJjaGl2ZSk6IERvIG5vdCBhbGxvY2F0ZSBhIHN0cnVjdCBzdGF0CisJd2hlbiBsc3RhdCBmYWlscywgaW5zdGVhZCBhc3NpZ24gYSBwb2ludGVyIHRvIGEgc3RhdGljIGVtcHR5IHN0YXQKKwl2YXJpYWJsZSB0aGF0IHdpbGwgbWFyayBpdCBhcyBzdWNoLgorCisyMDA4LTA2LTMwICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBsaWIvc2hvd3BrZy5jIChwYXJzZWZpZWxkKTogUmVtb3ZlIHVubmVlZGVkICdjb25zdCBjaGFyIConIGNhc3QuCisKKzIwMDgtMDYtMzAgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGxpYi9kcGtnLWRiLmggKHN0cnVjdCBhcmJpdHJhcnlmaWVsZCk6IE1ha2UgYWxsICdjaGFyIConIG1lbWJlcnMKKwknY29uc3QnLgorCShzdHJ1Y3QgZmlsZWRldGFpbHMpOiBMaWtld2lzZS4KKwkoc3RydWN0IHBrZ2luZm9wZXJmaWxlKTogTGlrZXdpc2UuCisJKHN0cnVjdCB0cmlncGVuZCk6IExpa2V3aXNlLgorCisJKiBsaWIvcGFyc2UuYyAocGFyc2VkYik6IFJlbW92ZSBub3cgdW5uZWVkZWQgJ2NvbnN0IGNoYXIgKionIGNhc3RzLgorCSogc3JjL3Byb2Nlc3NhcmMuYyAocHJvY2Vzc19hcmNoaXZlKTogQ2hhbmdlIHNpemUgdmFyaWFibGUgYmVmb3JlCisJYXNzaWduaW5nIHRoZSBwb2ludGVyLgorCisyMDA4LTA2LTMwICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBkc2VsZWN0L2Jhc2VsaXN0LmNjIChiYXNlbGlzdDo6d29yZHdyYXBpbmZvKTogU3Vycm91bmQgZXhwcmVzc2lvbgorCXdpdGggcGFyZW50aGVzaXMuCisJKiBkc2VsZWN0L3BrZ2NtZHMuY2MgKHBhY2thZ2VsaXN0OjphZmZlY3RlZG1hdGNoZXMpOiBMaWtld2lzZS4KKwkocGFja2FnZWxpc3Q6OmFmZmVjdGVkcmFuZ2UpOiBTd2l0Y2ggYSBmb3Igd2l0aCBhbiBlbXB0eSBib2R5IGludG8gYQorCXdoaWxlLgorCSogZHNlbGVjdC9iYXNlY21kcy5jYyAoYmFzZWxpc3Q6OmRpc3BsYXloZWxwKTogTGlrZXdpc2UuCisJKiBkc2VsZWN0L2JpbmRpbmdzLmNjIChrZXliaW5kaW5nczo6YmluZCwga2V5YmluZGluZ3M6OmZpbmQpCisJKGtleWJpbmRpbmdzOjpvcGVyYXRvcigpLCBrZXliaW5kaW5nczo6a2V5Mm5hbWUpCisJKGtleWJpbmRpbmdzOjpuYW1lMmtleSk6IExpa2V3aXNlLgorCSogZHNlbGVjdC9tYWluLmNjICh1cnFfbWVudSwgbWFpbik6IExpa2V3aXNlLgorCSogZHNlbGVjdC9tZXRocGFyc2UuY2MgKHJlYWRtZXRob2RzLCBnZXRjdXJyZW50b3B0KTogTGlrZXdpc2UuCisJKiBkc2VsZWN0L3BrZ2RlcGNvbi5jYyAocGFja2FnZWxpc3Q6OnJlc29sdmVkZXBjb24pOiBMaWtld2lzZS4KKwkqIGRzZWxlY3QvcGtnc3VibGlzdC5jYyAocGFja2FnZWxpc3Q6OmFscmVhZHlkb25lKTogTGlrZXdpc2UuCisKKzIwMDgtMDYtMzAgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGxpYi90cmlnZGVmZXJyZWQubDogRGVmaW5lIFlZX05PX0lOUFVUIHRvIG1ha2UgZmxleCBub3QgaW5jbHVkZQorCXRoZSB1bnVzZWQgaW5wdXQoKSBpbiB0aGUgcmVzdWx0aW5nIG9iamVjdC4KKworMjAwOC0wNi0yOSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogbGliL3BhcnNlZHVtcC5oIChwYXJzZWVyciwgcGFyc2VtdXN0ZmllbGQpOiBSZW1vdmUgcHJvdG90eXBlcy4KKwkocGFyc2VfZXJyb3IsIHBhcnNlX3dhcm4pOiBOZXcgcHJvdG90eXBlcy4KKwkocGFyc2VfbXVzdF9oYXZlX2ZpZWxkLCBwYXJzZV9lbnN1cmVfaGF2ZV9maWVsZCk6IExpa2V3aXNlLgorCSogbGliL3BhcnNlaGVscC5jIChwYXJzZWVycik6IFNwbGl0IGludG8gLi4uCisJKHBhcnNlX2Vycm9yX21zZywgcGFyc2VfZXJyb3IsIHBhcnNlX3dhcm4pOiAuLi4gdGhlc2UuIE5ldyBmdW5jdGlvbnMuCisJRml4IGFsbCBjYWxsZXJzLgorCShwYXJzZW11c3RmaWVsZCk6IFNwbGl0IGludG8gLi4uCisJKHBhcnNlX211c3RfaGF2ZV9maWVsZCwgcGFyc2VfZW5zdXJlX2hhdmVfZmllbGQpOiAuLi4gdGhlcmUuIE5ldworCWZ1bmN0aW9ucy4gRml4IGFsbCBjYWxsZXJzLgorCSogbGliL2ZpZWxkcy5jIChjb252ZXJ0X3N0cmluZyk6IFJlbW92ZSBub3cgdW51c2VkIHdhcm5pbmcgcmVsYXRlZAorCWFyZ3VtZW50cy4gRml4IGFsbCBjYWxsZXJzLgorCShjb25mZnZhbHVlX2xhc3R3b3JkKTogTGlrZXdpc2UuCisKKzIwMDgtMDYtMjkgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGxpYi9NYWtlZmlsZS5hbSAobGliZHBrZ19hX1NPVVJDRVMpOiBBZGQgJ3N0cmluZy5jJy4KKwkqIGxpYi9kcGtnLXByaXYuaCAoc3RyX2VzY2FwZV9mbXQpOiBOZXcgcHJvdG90eXBlLgorCSogbGliL3BhcnNlaGVscC5jOiBJbmNsdWRlIDxkcGtnLXByaXYuaD4uCisJKHBhcnNlZXJyKTogUmVmYWN0b3Igc3RyaW5nIGZvcm1hdCBlc2NhcGluZyB0byAsLCwKKwkqIGxpYi9zdHJpbmcuYyAoc3RyX2VzY2FwZV9mbXQpOiAuLi4gaGVyZS4gTmV3IGZpbGUuCisKKzIwMDgtMDYtMjggIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGxpYi9wYXJzZWR1bXAuaCAocGFyc2VlcnIsIHBhcnNlbXVzdGZpZWxkKTogUmVtb3ZlIHVudXNlZCAnZmlsZScKKwlhcmd1bWVudC4gRml4IGFsbCBjYWxsZXJzLgorCSogbGliL3BhcnNlaGVscC5jIChwYXJzZWVycik6IFJlbW92ZSBjaGVja3Mgb24gJ2ZpbGUnLgorCisyMDA4LTA2LTI4ICBUb2xsZWYgRm9nIEhlZW4gIDx0ZmhlZW5AZXJyLm5vPgorCisJKiBzcmMvYXJjaGl2ZXMuYyAodGFyb2JqZWN0KTogUmVmYWN0b3IgdGFyZmlsZSBvYmplY3Qgc2tpcHBpbmcgdG8gLi4uCisJKHRhcmZpbGVfc2tpcF9vbmVfZm9yd2FyZCk6IC4uLiBoZXJlLiBOZXcgZnVuY3Rpb24uCisKKzIwMDgtMDYtMjggIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGxpYi9kcGtnLWRiLmggKHNraXBfc2xhc2hfZG90c2xhc2gpOiBNb3ZlIGRlY2xhcmF0aW9uIC4uLgorCSogbGliL2Rwa2ctcHJpdi5oOiAuLi4gaGVyZS4KKwkqIGxpYi9wYXJzZWhlbHAuYyAoc2tpcF9zbGFzaF9kb3RzbGFzaCk6IE1vdmUgZGVmaW5pdGlvbiAuLi4KKwkqIGxpYi9wYXRoLmM6IC4uLiBoZXJlLgorCSogbGliL2ZpZWxkcy5jOiBJbmNsdWRlIDxkcGtnLXByaXYuaD4uCisJKiBzcmMvZmlsZXNkYi5jOiBMaWtld2lzZS4KKworMjAwOC0wNi0yOCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogbGliL2Rwa2cuaCAob25lcnJfYWJvcnQpOiBNb3ZlIGRlY2xhcmF0aW9uIHRvIHRoZSBlaGFuZGxlLmMgc2VjdGlvbi4KKwkqIGxpYi9tbGliLmMgKG9uZXJyX2Fib3J0KTogTW92ZSBkZWZpbml0aW9uIC4uLgorCSogbGliL2VoYW5kbGUuYzogLi4uIGhlcmUuCisKKzIwMDgtMDYtMjggIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGxpYi9tbGliLmMgKGNoZWNrc3VicHJvY2Vycik6IE1vdmUgdGhlIFBST0NOT0VSUiBjaGVjayBiZWZvcmUKKwl0aGUgcmVwb3J0aW5nLCBhbmQgZXhpdCBkaXJlY3RseSBpbnN0ZWFkIGluIGNhc2Ugb2YgZXJyb3IuCisKKzIwMDgtMDYtMjggIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGxpYi9laGFuZGxlLmMgKGJhZHVzYWdlKTogVXNlIG9oc2hpdCBpbnN0ZWFkIG9mIGl0cyBvd24gZXJyb3IKKwloYW5kbGluZy4KKworMjAwOC0wNi0yOCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc3JjL3F1ZXJ5LmMgKHByaW50Zm9yaGVscCk6IFJlbW92ZSB0cmFpbGluZyBuZXdsaW5lcy4KKworMjAwOC0wNi0yNyAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogZHBrZy1kZWIvYnVpbGQuYyAoZG9fYnVpbGQpOiBNb3ZlIHN0cmluZyB0cmFuc2xhdGlvbiBtYXJrZXJzIG91dHNpZGUKKwlvZiB0aGUgc3RyaW5nLgorCSogc3JjL2hlbHAuYyAoZW5zdXJlX3BhdGhuYW1lX25vbmV4aXN0aW5nKTogTG9jYWxpemUgdGhlICdmYWlsZWQnCisJdmFyaWFibGUgaW5zdGVhZCBvZiBleHBlY3RpbmcgZ2V0dGV4dCB0byBtYWdpY2FsbHkgaW5mZXIgdGhlIGZvcm1hdHRlZAorCXN0cmluZy4KKwkqIHNyYy9wcm9jZXNzYXJjLmMgKHByb2Nlc3NfYXJjaGl2ZSk6IExpa2V3aXNlLgorCisyMDA4LTA2LTI3ICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2luc3RhbGwtaW5mby5wbDogSW1wcm92ZSBlcnJvciBtZXNzYWdlIHdoZW4gdGhlCisJaW5mbyBmaWxlIGRvZXNuJ3QgZXhpc3QuCisKKzIwMDgtMDYtMjcgIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKwkqIG1hbi9kcGtnLXF1ZXJ5LjE6IERvY3VtZW50IHRoZSBvcmlnaW4gb2YgdGhlIHZhcmlvdXMgZmllbGRzIGFuZAorCXdhcm4gdGhhdCB0aGV5IGFyZSBub3QgYWx3YXlzIGF2YWlsYWJsZS4KKworMjAwOC0wNi0yMyAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDogTmV3IG9wdGlvbiAtLXJlcXVpcmUtdmFsaWQtc2lnbmF0dXJlLgorCSogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtIChjaGVja19zaWduYXR1cmUpOiBVcGRhdGVkIHRvIHVzZQorCURwa2c6OklQQyBhbmQgdG8gaW1wbGVtZW50IHRoZSBjaGVja3MgcmVsYXRlZCB0bworCS0tcmVxdWlyZS12YWxpZC1zaWduYXR1cmUuCisJKiBtYW4vZHBrZy1zb3VyY2UuMTogRG9jdW1lbnQgdGhlIG5ldyBvcHRpb24uCisKKzIwMDgtMDYtMjMgIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvRHBrZy9JUEMucG0gKGZvcmtfYW5kX2V4ZWMpOiBOZXcgbm9jaGVjayBvcHRpb24gdGhhdCBpcworCWZvcndhcmRlZCB0byB3YWl0X2NoaWxkKCkuCisKKzIwMDgtMDYtMjMgIFRpbW90aHkgRyBBYmJvdHQgIDx0YWJib3R0QE1JVC5FRFU+CisKKwkqIHNjcmlwdHMvZHBrZy1kaXZlcnQucGw6IEFkZCBuZXcgb3B0aW9uIC0tbGlzdHBhY2thZ2UgdG8KKwlkcGtnLWRpdmVydC4KKwkqIG1hbi9kcGtnLWRpdmVydC4xOiBEb2N1bWVudCBuZXcgb3B0aW9uLgorCisyMDA4LTA2LTIyICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBtYW4vZHBrZy4xLCBtYW4vZHBrZy1xdWVyeS4xOiBEb2N1bWVudCB0aGUgZmFjdCB0aGF0IHRoZSBhdmFpbGFibGUKKwlmaWxlIGlzIG1vc3RseSB1c2VmdWwgZm9yIGRzZWxlY3QgdXNlcnMgYW5kIHRoYXQgdGhlIHJlbGF0ZWQgY29tbWFuZHMKKwlhcmUgdXNlbGVzcyBmb3IgQVBUIHVzZXJzLgorCisyMDA4LTA2LTIyICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBtYW4vZHBrZy1idWlsZHBhY2thZ2UuMTogRG9jdW1lbnQgLUEgb3B0aW9uLgorCisyMDA4LTA2LTIyICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBtYW4vZHBrZy4xLCBtYW4vZHBrZy1xdWVyeS4xOiBDbGFyaWZ5IGxpc2Ygb2YgcGFja2FnZXMgZGlzcGxheWVkCisJaW4gZHBrZyAtLWdldC1zZWxlY3Rpb25zIGFuZCBkcGtnLXF1ZXJ5IC1sLgorCisyMDA4LTA2LTIxICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOiBJZiB0aGUgYmluYXJ5IGFuYWx5emVkIGlzIGEgbGlicmFyeSBvbiBhCisJbm9uLXB1YmxpYyBwYXRoLCBhc3N1bWUgaXQncyBsaWtlbHkgYSBwbHVnaW4gYW5kIHJlZHVjZSB0aGUgbnVtYmVyIG9mCisJd2FybmluZ3MgZGlzcGxheWVkIGFib3V0IHN5bWJvbHMgbm90IGZvdW5kLiBBbHNvIHVzZSBhIGRpZmZlcmVudCwKKwlob3BlZnVsbHkgbGVzcyBjb25mdXNpbmcgbWVzc2FnZS4KKwkqIG1hbi9kcGtnLXNobGliZGVwcy4xOiBEb2N1bWVudCB0aGUgYWJvdmUgY2hhbmdlcy4KKworMjAwOC0wNi0yMSAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9EcGtnL1ZlbmRvci5wbTogUHJvdmlkZSBzaW1wbGUgcGFyc2VyIGZvciB2ZW5kb3Itc3BlY2lmaWMKKwlpbmZvcm1hdGlvbiBzdG9yZWQgaW4gL2V0Yy9kcGtnL29yaWdpbnMvLiBUaGUgY3VycmVudCB2ZW5kb3IgY2FuCisJYmUgaWRlbnRpZmllZCB0aHJvdWdoIGdldF9jdXJyZW50X3ZlbmRvcigpIGFuZCBnZXRfdmVuZG9yX2luZm8oKQorCXJldHJpZXZlcyB0aGUgaW5mb3JtYXRpb24gc3RvcmVzIHdpdGhpbiB0aG9zZSBmaWxlcy4KKwkqIHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6IFNldHVwIHRoZSBERUJfVkVORE9SIGVudmlyb25tZW50CisJdmFyaWFibGUgaWYgcG9zc2libGUuCisJKiBtYW4vZHBrZy1idWlsZHBhY2thZ2UuMTogRG9jdW1lbnQgdGhlIGFib3ZlIGNoYW5nZXMuCisJKiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG0gKGdldF9zZXJpZXNfZmlsZSk6IFVzZQorCWdldF9jdXJyZW50X3ZlbmRvcigpIHRvIGRlY2lkZSB0aGUgbmFtZSBvZiB0aGUgdmVuZG9yLXNwZWNpZmljCisJc2VyaWVzIGZpbGUgdGhhdCBzaG91bGQgYmUgdXNlZC4KKwkqIHNjcmlwdHMvTWFrZWZpbGUuYW0sIHNjcmlwdHMvcG8vUE9URklMRVMuaW46IEluY2x1ZGUgdGhlIG5ldworCW1vZHVsZSBpbiB0aGUgZGlzdCB0YXJiYWxsIGFuZCBpbiB0aGUgbGlzdCBvZiBmaWxlcyBjb250YWluaW5nCisJdHJhbnNsYXRhYmxlIHN0cmluZ3MuCisKKzIwMDgtMDYtMTkgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGxpYi92YXJidWYuYyAodmFyYnVmZHVwYyk6IFN0b3JlIHRoZSBvbGQgdXNlZCBzaXplIGluc3RlYWQgb2YgdGhlCisJcHJlY29tcHV0ZWQgYWRkcmVzcywgYXMgdmFyYnVmZXh0ZW5kIG1pZ2h0IGNoYW5nZSB0aGUgYnVmZmVyIGZyb20KKwl1bmRlciB1cy4KKworMjAwOC0wNi0xNyAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLWRpdmVydC5wbDogRG8gbm90IHNpbGVudGx5IGZvcmNlIC0tcmVuYW1lIG9uIC0tcmVtb3ZlLgorCisyMDA4LTA2LTE3ICBKdWVyZ2VuIEtyZWlsZWRlciAgPGprQGJsYWNrZG93bi5kZT4sCisgICAgICAgICAgICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2Rwa2ctZGl2ZXJ0LnBsIChyZW5hbWVfbXYpOiBOZXcgZnVuY3Rpb24uCisJKGRvcmVuYW1lKTogVXNlIHJlbmFtZV9tdiBpbnN0ZWFkIG9mIHJlbmFtZS4KKworMjAwOC0wNi0xMCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogbGliL3ZhcmJ1Zi5jICh2YXJidWZ2cHJpbnRmKTogQ2FsbCB2YV9lbmQgd2hlbiBkb25lIHdpdGggdGhlIHZhX2xpc3QKKwl2YXJpYWJsZSBmcm9tIHZhX2NvcHkuCisKKzIwMDgtMDYtMTAgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGxpYi92YXJidWYuYyAodmFyYnVmcHJpbnRmKTogVXNlIHZhcmJ1ZnZwcmludGYgaW5zdGVhZCBvZgorCXJlaW1wbGVtZW50aW5nIGl0LgorCisyMDA4LTA2LTA5ICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL0Rwa2cvQnVpbGRPcHRpb25zLnBtIChwYXJzZSwgc2V0KTogVXNlIHNwYWNlIGFzIHRoZQorCW9mZmljaWFsIHNlcGFyYXRvciBpbiBERUJfQlVJTERfT1BUSU9OUy4gQ2hlY2sgZm9yIHZhbGlkaXR5IG9mCisJZmxhZ3MgYW5kIHByaW50IGEgd2FybmluZyBpZiBhIGJhZCBvcHRpb24gaXMgZGV0ZWN0ZWQuIFJld3JvdGUKKwl0aGUgbG9naWMgb2Ygc2V0KCkgdG8gYXZvaWQgYWRkaW5nIG9wdGlvbnMgdHdpY2UgaW4gbm9uLW92ZXJ3cml0ZQorCW1vZGUuCisJKiBzY3JpcHRzL3QvMzAwX0Rwa2dfQnVpbGRPcHRpb25zLnQ6IEFkanVzdCB0aGUgdGVzdCBzdWl0ZQorCWFjY29yZGluZ2x5LgorCisyMDA4LTA2LTA5ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG0gKCRkaWZmX2lnbm9yZV9kZWZhdWx0X3JlZ2V4cCk6IEFkZAorCScuaGdpZ25vcmUnLgorCShAdGFyX2lnbm9yZV9kZWZhdWx0X3BhdHRlcm4pOiBMaWtld2lzZS4KKworMjAwOC0wNi0wOSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc3JjL3F1ZXJ5LmMgKHNlYXJjaGZpbGVzKTogVXNlIFZBUkJVRl9JTklUIHRvIGluaXRpYWxpemUgcGF0aAorCWluc3RlYWQgb2YgdmIuCisKKzIwMDgtMDYtMDQgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNyYy9tYWluLmMgKHNldHBpcGUpOiBTZXQgZmlsZSBkZXNjcmlwdG9ycyB0byBjbG9zZSBvbiBleGVjLgorCisyMDA4LTA2LTA0ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBkcGtnLWRlYi9idWlsZC5jIChnZXRmaSk6IFVzZSBtX3JlYWxsb2MgaW5zdGVhZCBvZiByZWFsbG9jLgorCSogZHBrZy1kZWIvaW5mby5jIChpbmZvX3NwZXcpOiBMaWtld2lzZS4KKwkqIGxpYi9maWVsZHMuYyAoZl9kZXBlbmRlbmN5KTogTGlrZXdpc2UuCisJKiBsaWIvcGFyc2UuYyAocGFyc2VkYik6IExpa2V3aXNlLgorCSogbGliL3ZhcmJ1Zi5jICh2YXJidWZleHRlbmQpOiBMaWtld2lzZS4KKwkqIHNyYy9tYWluLmMgKGNvbW1hbmRmZCk6IExpa2V3aXNlLgorCisyMDA4LTA2LTA0ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBsaWIvZHBrZy1kYi5oICh2YXJidWZpbml0KTogQWRkIGEgc2l6ZSBhcmd1bWVudCwgZml4IGFsbCBjYWxsZXJzLgorCSh2YXJidWY6OmluaXQpOiBBZGQgYW4gb3B0aW9uYWwgc2l6ZSBhcmd1bWVudC4KKwkodmFyYnVmOjp2YXJidWYpOiBMaWtld2lzZS4KKwkqIGxpYi92YXJidWYuYyAodmFyYnVmaW5pdCk6IEFsbG9jYXRlIGEgYnVmZmVyIGlmIHNpemUgaXMgbm90IHplcm8uCisJKiBsaWIvZGJtb2RpZnkuYyAobW9kc3RhdGRiX2luaXQpOiBVc2UgdmFyYnVmaW5pdCBpbnN0ZWFkIG9mIGl0cworCW93biBpbml0aWFsaXphdGlvbi4KKworMjAwOC0wNi0wNCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogbGliL2Rwa2ctZGIuaCAoVkFSQlVGX0lOSVQpOiBOZXcgbWFjcm8uCisJKiBsaWIvY29tcHJlc3Npb24uYyAoZGVjb21wcmVzc19jYXQsIGNvbXByZXNzX2NhdCk6IFVzZSBWQVJCVUZfSU5JVAorCWluc3RlYWQgb2YgdmFyYnVmaW5pdCB0byBpbml0aWFsaXplIHRoZSB2YXJpYWJsZXMuCisJKiBsaWIvZHVtcC5jICh3cml0ZXJlY29yZCwgd3JpdGVkYik6IExpa2V3aXNlLgorCSogbGliL21saWIuYyAoYnVmZmVyX2NvcHlfc2V0dXBfZHVhbCk6IExpa2V3aXNlLgorCSogbGliL3Nob3dwa2cuYyAoc2hvdzFwYWNrYWdlKTogTGlrZXdpc2UuCisJKiBzcmMvYXJjaGl2ZXMuYyAoY2hlY2tfYnJlYWtzLCBjaGVja19jb25mbGljdCk6IExpa2V3aXNlLgorCSogc3JjL2NvbmZpZ3VyZS5jIChkZWZlcnJlZF9jb25maWd1cmUpOiBMaWtld2lzZS4KKwkqIHNyYy9kZXBjb24uYyAoZGVzY3JpYmVkZXBjb24pOiBMaWtld2lzZS4KKwkqIHNyYy9tYWluLmMgKGNvbW1hbmRmZCk6IExpa2V3aXNlLgorCSogc3JjL3BhY2thZ2VzLmMgKGJyZWFrc19jaGVja19vbmUsIGRlcGVuZGVuY2llc19vayk6IExpa2V3aXNlLgorCSogc3JjL3F1ZXJ5LmMgKHNlYXJjaGZpbGVzKTogTGlrZXdpc2UuCisJKiBzcmMvcmVtb3ZlLmMgKGRlZmVycmVkX3JlbW92ZSk6IExpa2V3aXNlLgorCSogc3JjL3NlbGVjdC5jIChzZXRzZWxlY3Rpb25zKTogTGlrZXdpc2UuCisKKzIwMDgtMDYtMDQgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNyYy9hcmNoaXZlcy5jIChhcmNoaXZlZmlsZXMpOiBVc2UgdmFyYnVmcmVzZXQgaW5zdGVhZCBvZiB2YXJidWZpbml0CisJdG8gYXZvaWQgcG9zc2libGUgbGVha3MgaWYgdGhpcyBmdW5jdGlvbiBpcyBjYWxsZWQgbW9yZSB0aGFuIG9uY2UuCisKKzIwMDgtMDYtMDQgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGxpYi9sb2cuYyAobG9nX21lc3NhZ2UpOiBTd2l0Y2ggbG9nIGZyb20gYSBwb2ludGVyIHRvIHN0cnVjdCB2YXJidWYKKwl0byBqdXN0IHN0cnVjdCB2YXJidWYuCisKKzIwMDgtMDYtMDQgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNyYy9tYWluLmMgKHNldHBpcGUpOiBGaXggdGhlIHNldHRpbmcgb2YgbW9yZSB0aGFuIG9uZSBwaXBlZi4KKworMjAwOC0wNi0wNCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc3JjL3NlbGVjdC5jIChzZXRzZWxlY3Rpb25zKTogRnJlZSB2YXJidWYgdmFyaWFibGVzLgorCisyMDA4LTA2LTA0ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBsaWIvc3VicHJvYy5jIChjYXRjaF9zaWduYWxzKTogUmVtb3ZlIGFycmF5IHNlbnRpbmVsLgorCisyMDA4LTA2LTAxICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBsaWIvdmFyYnVmLmMgKHZhcmJ1ZmR1cGMpOiBVc2UgbWVtc2V0IGluc3RlYWQgb2YgYWQtaG9jIG9wZXJhdGlvbi4KKworMjAwOC0wNi0wMSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogbGliL3N1YnByb2MuYyAoc2V0dXBfc3VicHJvY19zaWduYWxzKTogVXNlIHNpemVfdCBpbnRlYWQgb2YgaW50CisJZm9yIHRoZSBpbmRleCwgdG8gZml4IGEgd2FybmluZy4KKwkoY3Vfc3VicHJvY19zaWduYWxzKTogTGlrZXdpc2UuCisKKzIwMDgtMDYtMDEgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNyYy9xdWVyeS5jIChzZWFyY2hmaWxlcyk6IFVzZSBzdHJwYnJrIGluc3RlYWQgb2Ygc3RyY3NwbiBhbmQKKwlzdHJsZW4uCisKKzIwMDgtMDYtMDEgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNyYy9xdWVyeS5jOiBJbmNsdWRlIDxkcGtnLXByaXYuaD4uCisJKHNlYXJjaGZpbGVzKTogVHJpbSB0cmFpbGluZyAnLycgYW5kICcvLicgZnJvbSBmaWxlIHNlYXJjaGVzIG9ubHkKKwlvbiBwYXRoIG5hbWVzLCBidXQgbm90IHBhdHRlcm5zLgorCisyMDA4LTA2LTAxICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBsaWIvZHBrZy1wcml2LmggKHJ0cmltX3NsYXNoX3NsYXNoZG90KTogUmV0dXJuIHRoZSBzdHJpbmcgc2l6ZS4KKworMjAwOC0wNi0wMSAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9EcGtnL0NvbnRyb2wucG0gKHBhcnNlLCBwYXJzZV9maCwgbmV3KTogQWRkIGEgbmV3IGZ1bmN0aW9uCisJcGFyc2VfZmgoKSB0byBiZSBhYmxlIHRvIHBhcnNlIHRoZSBjb250cm9sIGZpbGUgZnJvbSBhbiBhcmJpdHJhcnkKKwlmaWxlIGhhbmRsZS4gQ2hhbmdlIHBhcnNlKCkgdG8gdXNlIGl0IGFuZCBtb2RpZnkgbmV3KCkgdG8gcGFyc2UKKwlTVERJTiBpbnN0ZWFkIG9mIGEgcmVhbCBmaWxlIGlmIHRoZSBwYXJhbWV0ZXIgaXMgIi0iLgorCisyMDA4LTA2LTAxICBEYW5pZWwgSGFobGVyICA8ZGViaWFuLWJ1Z3NAdGhlcXVvZC5kZT4KKworCSogc3JjL2FyY2hpdmVzLmMgKHRhcm9iamVjdCk6IEltcHJvdmUgZXJyb3IgbWVzc2FnZSBzdGF0aW5nIHRoYXQKKwlkcGtnIGlzIHVuYWJsZSB0byBjcmVhdGUgYSBmaWxlIHNvIHRoYXQgaXQgYWxzbyByZWZlcnMgdG8gdGhlIHJlYWwKKwlmaWxlbmFtZSBpbnN0ZWFkIG9mIHRoZSBub24tZGl2ZXJ0ZWQgbmFtZSBvbmx5LgorCisyMDA4LTA1LTMxICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBtYW4vZHBrZy4xOiBVc2UgdGhlIHRlcm0gY29uZmZpbGUgZm9yIGEgY29uZmlndXJhdGlvbiBmaWxlIGhhbmRsZWQKKwlieSBkcGtnLiBEcm9wIHJlZmVyZW5jZSB0byBoYW1tLiBVcGRhdGVkIGRlc2NyaXB0aW9uIG9mIHZhbHVlcworCXN1cHBvcnRlZCBieSAtRCB0byBpbmNsdWRlIHRob3NlIHdoaWNoIGFyZSB0cmlnZ2VyIHJlbGF0ZWQuCisKKzIwMDgtMDUtMjkgIENvbGluIFdhdHNvbiAgPGNqd2F0c29uQGRlYmlhbi5vcmc+CisKKwkqIGxpYi9kYm1vZGlmeS5jIChtb2RzdGF0ZGJfbm90ZSk6IEFkZCBhIGNvbW1lbnQgYXJvdW5kIG9ic2N1cmUgYml0cworCW9mIHRyaWdnZXIgaGFuZGxpbmcgY29kZS4KKwkqIHNyYy90cmlncHJvYy5jICh0cmlncHJvYyk6IExpa2V3aXNlLgorCisyMDA4LTA1LTI5ICBDb2xpbiBXYXRzb24gIDxjandhdHNvbkBkZWJpYW4ub3JnPgorCisJKiBsaWIvdHJpZ2xpYi5jICh0cmlnX2luY29ycG9yYXRlKTogRml4IHR5cG8gaW4gY29tbWVudC4KKworMjAwOC0wNS0yNCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogZHBrZy1kZWIvYnVpbGQuYyAoZG9fYnVpbGQpOiBNb3ZlIGFyZ3VtZW50IG5hbWUgaW50byBhIHBhcmFtZXRlciB0bworCWNvYWxlc2NlIHNpbWlsYXIgc3RyaW5ncyBmb3IgdHJhbnNsYXRpb24uCisJKiBkcGtnLXNwbGl0L2luZm8uYyAoZG9faW5mbyk6IExpa2V3aXNlLgorCSogZHBrZy1zcGxpdC9qb2luLmMgKGRvX2pvaW4pOiBMaWtld2lzZS4KKwkqIGRwa2ctc3BsaXQvcXVldWUuYyAoZG9fcXVldWUpOiBMaWtld2lzZS4KKwkqIHNyYy9lbnF1aXJ5LmMgKGF1ZGl0LCB1bnBhY2tjaGssIGFzc2VydHZlcnNpb24sIHByZWRlcHBhY2thZ2UpCisJKHByaW50YXJjaCk6IExpa2V3aXNlLgorCSogc3JjL3NlbGVjdC5jIChzZXRzZWxlY3Rpb25zLCBjbGVhcnNlbGVjdGlvbnMpOiBMaWtld2lzZS4KKworMjAwOC0wNS0yNCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogZHBrZy1kZWIvbWFpbi5jOiBJbmNsdWRlIDxkcGtnLXByaXYuaD4uCisJKHNldGFjdGlvbik6IFVzZSBzaXplb2ZfYXJyYXkgaW5zdGVhZCBvZiBhZC1ob2MgY2FsY3VsYXRpb24uCisJKiBkcGtnLXNwbGl0L21haW4uYzogSW5jbHVkZSA8ZHBrZy1wcml2Lmg+LgorCShzZXRhY3Rpb24pOiBVc2Ugc2l6ZW9mX2FycmF5IGluc3RlYWQgb2YgYWQtaG9jIGNhbGN1bGF0aW9uLgorCisyMDA4LTA1LTI0ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzcmMvdHJpZ2NtZC5jIChtYWluKTogUmVtb3ZlIGR1cGxpY2F0ZSBwcm9ncmFtIG5hbWUgZnJvbSBiYWR1c2FnZS4KKworMjAwOC0wNS0xOSAgTWFydGluIEtvZXBwZSAgPG1rb2VwcGVAZ214LmRlPiwKKyAgICAgICAgICAgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGRwa2ctZGViL01ha2VmaWxlLmFtIChkcGtnX2RlYl9MREFERCk6IE1vdmUgJ2xpYmNvbXBhdC5hJyBhbmQKKwknJChMSUJJTlRMKScgYWZ0ZXIgJ2xpYmRwa2cuYScuCisJKiBkcGtnLXNwbGl0L01ha2VmaWxlLmFtIChkcGtnX3NwbGl0X0xEQUREKTogTGlrZXdpc2UuCisJKiBkc2VsZWN0L01ha2VmaWxlLmFtIChkc2VsZWN0X0xEQUREKTogTGlrZXdpc2UuCisJKiAvc3JjL01ha2VmaWxlLmFtIChkcGtnX0xEQUREKTogTGlrZXdpc2UuCisJKGRwa2dfcXVlcnlfTERBREQpOiBMaWtld2lzZS4KKwkoZHBrZ190cmlnZ2VyX0xEQUREKTogTGlrZXdpc2UuCisKKzIwMDgtMDUtMTkgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbSAoJGRpZmZfaWdub3JlX2RlZmF1bHRfcmVnZXhwKTogQWRkCisJJy5iZScuCisJKEB0YXJfaWdub3JlX2RlZmF1bHRfcGF0dGVybik6IExpa2V3aXNlLgorCisyMDA4LTA1LTEyICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbCAoJHBhY2thZ2VfdHlwZSk6IFJlbmFtZSB0byAuLi4KKwkoJHBrZ190eXBlKTogLi4uIHRoaXMsIGZvciB1bmlmb3JtaXR5LgorCisyMDA4LTA1LTEyICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzcmMvaGVscC5jIChkb19zY3JpcHQpOiBFeHBhbmQgJ21haW50JyB0byAnbWFpbnRhaW5lcicgaW4gc3RyaW5nLgorCSh2bWFpbnRhaW5lcl9zY3JpcHRfaW5zdGFsbGVkKTogTWFyayBzdHJpbmcgZm9yIHRyYW5zbGF0aW9uLiBDaGFuZ2UKKwlzdHJpbmdzIHNvIHRoYXQgdGhleSBnZXQgbWVyZ2VkIGJ5IGdldHRleHQgd2l0aCBzaW1pbGFyIG9uZXMuCisJKG1haW50YWluZXJfc2NyaXB0X25ldyk6IExpa2V3aXNlLgorCisyMDA4LTA1LTEyICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBsaWIvZHBrZy1wcml2LmggKHNpemVvZl9hcnJheSk6IE5ldyBtYWNyby4KKwkqIGxpYi9wYXJzZS5jOiBJbmNsdWRlIDxkcGtnLXByaXYuaD4uCisJKE5GSUVMRFMpOiBSZW1vdmUgbWFjcm8uCisJKG5maWVsZHMpOiBVc2Ugc2l6ZW9mX2FycmF5IGluc3RlYWQgb2YgTkZJRUxEUy4KKwkocGFyc2VkYik6IExpa2V3aXNlLgorCSogbGliL3N1YnByb2MuYyAoTkNBVENIU0lHTkFMUyk6IFJlbW92ZSBtYWNyby4KKwkodW5jYXRjaF9zaWduYWxzKTogVXNlIHNpemVvZl9hcnJheSBpbnN0ZWFkIG9mIE5DQVRDSFNJR05BTFMuCisJKHNldHVwX3N1YnByb2Nfc2lnbmFscyk6IExpa2V3aXNlLgorCShjdV9zdWJwcm9jX3NpZ25hbHMpOiBMaWtld2lzZS4KKworMjAwOC0wNS0xMiAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogZHNlbGVjdC9tZXRob2QuY2M6IEluY2x1ZGUgPGRwa2ctcHJpdi5oPi4gVXNlIHNldHVwX3N1YnByb2Nfc2lnbmFscworCWFuZCBjdV9zdWJwcm9jX3NpZ25hbHMgaW5zdGVhZCBvZiBjdV9yZXN0b3Jlc2lnbmFscyBhbmQgZHVwZWQgY29kZQorCWluIGZhbGxpYmxlc3VicHJvY2Vzcy4KKwkqIGxpYi9NYWtlZmlsZS5hbSAobGliZHBrZ19hX1NPVVJDRVMpOiBBZGQgJ3N1YnByb2MuYycuCisJKiBpYi9kcGtnLXByaXYuaCAoc2V0dXBfc3VicHJvY19zaWduYWxzKTogTmV3IHByb3RvdHlwZS4KKwkoY3Vfc3VicHJvY19zaWduYWxzKTogTGlrZXdpc2UuCisJKiBzcmMvaGVscC5jOiBJbmNsdWRlIDxkcGtnLXByaXYuaD4gYW5kIHN0b3AgaW5jbHVkaW5nIDxzaWduYWwuaD4uCisJKGN1X3Jlc3RvcmVzY3JpcHRzaWduYWxzLCBzY3JpcHRfY2F0Y2hzaWduYWxzKTogTW92ZSB0byAuLi4KKwkqIGxpYi9zdWJwcm9jLmMgKGN1X3N1YnByb2Nfc2lnbmFscywgc2V0dXBfc3VicHJvY19zaWduYWxzKTogLi4uIGhlcmUuCisJTmV3IGZpbGUuCisKKzIwMDgtMDUtMTIgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGxpYi9NYWtlZmlsZS5hbSAobGliZHBrZ19hX1NPVVJDRVMpOiBBZGQgJ2Rwa2ctcHJpdi5oJyBhbmQgJ3BhdGguYycuCisJKiBsaWIvZHBrZy1wcml2Lmg6IE5ldyBmaWxlLgorCSogbGliL3BhdGguYzogTGlrZXdpc2UuCisKKzIwMDgtMDUtMTEgIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKwkqIG1hbi9kcGtnLXNvdXJjZS4xOiBQcm9wZXJseSBlc2NhcGUgaHlwaGVuIGluIC1pIG9wdGlvbi4KKworMjAwOC0wNS0xMSAgUGllcnJlIEhhYm91eml0ICA8bWFkY29kZXJAZGViaWFuLm9yZz4KKworCSogbGliL3Nob3dwa2cuYyAoc2hvdzFwYWNrYWdlKTogVXNlICV6ZCBpbnN0ZWFkIG9mICVkIGluIHNwcmludGYoKQorCWNhbGwgd2l0aCBhIHNpemVfdCBwYXJhbWV0ZXIuCisKKzIwMDgtMDUtMTEgIFBpZXJyZSBIYWJvdXppdCAgPG1hZGNvZGVyQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvdXBkYXRlLWFsdGVybmF0aXZlcy5wbDogQWRkIGEgLS1xdWVyeSBvcHRpb24gdGhhdCB3b3JrcworCWxpa2UgLS1kaXNwbGF5IGJ1dCBvdXRwdXRzIGEgbWFjaGluZSBwYXJzZWFibGUgcmZjODIyLWxpa2Ugb3V0cHV0LgorCSogbWFuL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuODogRG9jdW1lbnQgdGhhdCBuZXcgb3B0aW9uLCBhbmQgdGhlCisJYXNzb2NpYXRlZCBmb3JtYXQuCisKKzIwMDgtMDUtMDUgIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKwkqIG1hbi9kcGtnLXNvdXJjZS4xOiBJbXByb3ZlIGV4cGxhbmF0aW9uIG9mIC1pIHdoZW4gdXNlZCB3aXRoCisJVkNTLWJhc2VkIHNvdXJjZSBwYWNrYWdlcy4KKworMjAwOC0wNS0wNSAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGw6IERvIG5vdCBhY2NlcHQgZW1wdHkgcGFyYW1ldGVycyBmb3IKKwktdiwgIC1QIGFuZCAtZS4KKworMjAwOC0wNS0wNSAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDogSW5jbHVkZSB0aGUgZm9ybWF0IG9mIHRoZSBkZXNpcmVkCisJbGlicmFyeSBpbiB0aGUgImxpYnJhcnkgbm90IGZvdW5kIiBlcnJvciBtZXNzYWdlLgorCisyMDA4LTA1LTAyICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMucGw6IERvIG5vdCBzdWdnZXN0IG1hbnVhbGx5IGNoYW5naW5nCisJdGhlIGFsdGVybmF0aXZlIHN5bWxpbmtzIG9uIHZlcmJvc2UgbW9kZS4KKworMjAwOC0wNC0yOSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogY29uZmlndXJlLmFjOiBCdW1wIHZlcnNpb24gdG8gMS4xNS4wfi4KKworMjAwOC0wOC0yNiAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogY29uZmlndXJlLmFjOiBSZWxlYXNlIDEuMTQuMjEuCisKKzIwMDgtMDgtMjYgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIG1hbi9kcGtnLjE6IEVzY2FwZSBoeXBoZW4gaW4gYXB0LWdldCBjb21tYW5kLgorCisyMDA4LTA4LTE3ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBtYW4vZHBrZy4xOiBDaGFuZ2UgcmVmZXJlbmNlIHRvIGRzZWxlY3QgYXMgYmVpbmcgdGhlIHByZWZlcnJlZAorCWZyb24tZW5kIHRvIGFwdGl0dWRlLiBBbmQgJ2FwdC1nZXQgZHNlbGVjdC11cGdyYWRlJyB0byBiZSB1c2VkIHRvCisJYWN0IG9uIHRoZSBjdXJyZW50IHBhY2thZ2Ugc2VsZWN0aW9ucy4gQWRkIHJlZmVyZW5jZXMgdG8gYXB0aXR1ZGUKKwlhbmQgYXB0IG1hbiBwYWdlcyBpbiAnU0VFIEFMU08nLgorCisyMDA4LTA4LTE2ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzcmMvbWFpbi5jIChzZXRwaXBlKTogU2V0IGZpbGUgZGVzY3JpcHRvcnMgdG8gY2xvc2Ugb24gZXhlYy4KKworMjAwOC0wOC0xNSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbCAodXNhZ2UpOiBGaXggZGVzY3JpcHRpb24gb2YgLXNpIG9wdGlvbi4KKwkqIG1hbi9kcGtnLWJ1aWxkcGFja2FnZS4xOiBNYXRjaCBkZXNjcmlwdGlvbiBvZiAtc2kgb3B0aW9uIHdpdGggdGhlCisJb25lIGZyb20gZHBrZy1nZW5jaGFuZ2VzLjEuCisKKzIwMDgtMDgtMTUgIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKwkqIERwa2cvU291cmNlL1BhY2thZ2UucG0gKG5ldyk6IENhbGwgaW5pdF9vcHRpb25zKCkgb25seSBpZgorCWluaXRpYWxpemUoKSBoYXMgYmVlbiBjYWxsZWQgYXMgaXQncyBzdXBwb3NlZCB0byBiZSBjYWxsZWQKKwlvbmx5IGFmdGVyIHRoZSBvYmplY3QgaGFzIGJlZW4gdXBncmFkZWQgdG8gaXRzIHRhcmdldCB0eXBlLgorCShpbml0X29wdGlvbnMpOiBhZGQgYSBjb21tZW50IHRoYXQgZXhwbGFpbnMgdGhhdCB0aGlzIGZ1bmN0aW9uIGlzCisJbm90IGNhbGxlZCBieSBEcGtnOjpTb3VyY2U6OlBhY2thZ2U6OlYxOjppbml0X29wdGlvbnMoKSBhbmQKKwlyZW5kZXIgdGhlIGZ1bmN0aW9uIG1vcmUgcm9idXN0LgorCisyMDA4LTA4LTE1ICBJYW4gSmFja3NvbiAgPGlhbkBkYXZlbmFudC5ncmVlbmVuZC5vcmcudWs+CisKKwkqIHNyYy9wYWNrYWdlcy5jIChwcm9jZXNzX3F1ZXVlKTogV2hlbiBvbmVycl9hYm9ydCBpcyBiaWdnZXIgdGhhbiAwCisJcmV0dXJuIGluc3RlYWQgb2YgYnJlYWtpbmcgb3V0IG9mIHRoZSBsb29wLCB0byBhdm9pZCB3cm9uZ2x5CisJYXNzZXJ0aW5nIHRoYXQgIXF1ZXVlLmxlbmd0aC4KKworMjAwOC0wOC0xNSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogbGliL2RibW9kaWZ5LmMgKG1vZHN0YXRkYl9ub3RlKTogRG8gbm90IGNhbGwgbW9kc3RhdGRiX25vdGVfY29yZSBpZgorCWNzdGF0dXMgZG9lcyBub3QgYWxsb3cgd3JpdHRpbmcuIE1vdmUgdGhlIGNvcmUgZnVuY3Rpb25hbGxpdHkgdG8gLi4uCisJKG1vZHN0YXRkYl9ub3RlX2NvcmUpOiAuLi4gaGVyZS4gTmV3IGZ1bmN0aW9uLgorCSogc3JjL2hlbHAuYyAocG9zdF9wb3N0aW5zdF90YXNrc19jb3JlKTogRG8gbm90IGNhbGwgdHJpZ19pbmNvcnBvcmF0ZQorCWlmIHJ1bm5pbmcgdW5kZXIgLS1uby1hY3QuCisJKiBzcmMvdHJpZ3Byb2MuYyAodHJpZ3Byb2MpOiBEbyBub3QgY2FsbCBtYWludGFpbmVyX3NjcmlwdF9wb3N0aW5zdAorCWlmIHJ1bm5pbmcgdW5kZXIgLS1uby1hY3QuCisJKHRyaWdfdHJhbnNpdGlvbmFsX2FjdGl2YXRlKTogRG8gbm90IGNhbGwgdHJpZ19maWxlX2ludGVyZXN0c19zYXZlCisJaWYgY3N0YXR1cyBkb2VzIG5vdCBhbGxvdyB3cml0dGluZy4KKworMjAwOC0wOC0xNSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogbGliL2Rwa2ctZGIuaCAodHJpZ19lbnF1ZXVlX2F3YWl0ZWRfcGVuZCk6IE5ldyBmdW5jdGlvbiBwcm90b3R5cGUuCisJKHRyaWdfZml4dXBfYXdhaXRlcnMpOiBMaWtld2lzZS4KKwkqIGxpYi9kYm1vZGlmeS5jIChtb2RzdGF0ZGJfaW5pdCk6IENhbGwgdHJpZ19maXh1cF9hd2FpdGVycy4KKwkqIGxpYi9maWVsZHMuYyAoZl90cmlnYXcpOiBDYWxsIHRyaWdfZW5xdWV1ZV9hd2FpdGVkX3BlbmQuCisJKiBsaWIvdHJpZ2xpYi5jIChzdHJ1Y3QgcGtnX2xpc3QpOiBOZXcgdHlwZS4KKwkodHJpZ19hd2FpdGVkX3BlbmRfaGVhZCk6IE5ldyB2YXJpYWJsZS4KKwkodHJpZ19lbnF1ZXVlX2F3YWl0ZWRfcGVuZCk6IE5ldyBmdW5jdGlvbiBkZWZpbml0aW9uLgorCSh0cmlnX2ZpeHVwX2F3YWl0ZXJzKTogTGlrZXdpc2UuCisKKzIwMDgtMDYtMjQgIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKwkqIGRlYmlhbi9hcmNodGFibGU6IEFkZCBhcm1lbC4KKworMjAwOC0wNi0yMSAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbCwgc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6IFRyZWF0CisJZGViaWFuLnRhci5neiBmaWxlcyAodXNlZCBieSAzLjAgKHF1aWx0KSBzb3VyY2UgcGFja2FnZXMpIGxpa2UKKwlkaWZmLmd6IGZpbGVzIHdoZW4gaXQgY29tZXMgdG8gZGV0ZWN0aW9uIG9mIHRoZSBraW5kIG9mIHVwbG9hZC4KKworMjAwOC0wNi0yMSAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOiBEZWZpbmUgUVVJTFRfU0VSSUVTCisJd2hlbiBydW5uaW5nIHF1aWx0IGluIG9yZGVyIHRvIGJlIGFibGUgdG8gdXNlIHF1aWx0IHNlcmllcyB3aXRoCisJbm9uLXN0YW5kYXJkIG5hbWVzIChsaWtlIGRlYmlhbi5zZXJpZXMgb3IgdWJ1bnR1LnNlcmllcykuCisKKzIwMDgtMDYtMTggIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKwkqIGNvbmZpZ3VyZS5hYzogQnVtcCB2ZXJzaW9uIHRvIDEuMTQuMjF+LgorCisyMDA4LTA2LTE4ICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBjb25maWd1cmUuYWM6IFJlbGVhc2UgMS4xNC4yMC4KKworMjAwOC0wNi0xNiAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogbGliL3RyaWdsaWIuYyAodHJpZ19maWxlX2ludGVyZXN0c19lbnN1cmUpOiBQYXNzIHRoZSBwcm9wZXIgbWFzaworCXRvIHB1c2hfY2xlYW51cCB0byBtYWtlIHN1cmUgcG9wX2NsZWFudXAgY2xvc2VzIHRoZSBmaWxlLgorCisyMDA4LTA2LTE1ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2Rwa2ctZGl2ZXJ0LnBsIChjaGVja3JlbmFtZSk6IERvIG5vdCBjaGVjayB0aGUgdGFyZ2V0IGZpbGUKKwlpZiB0aGUgc291cmNlIGRvZXMgbm90IGV4aXN0IGFuZCBkb3JlbmFtZSB3YXMgdGh1cyBkaXNhYmxlZC4KKworMjAwOC0wNi0wOSAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLWRpdmVydC5wbCwgc2NyaXB0cy91cGRhdGUtYWx0ZXJuYXRpdmVzLnBsLAorCXNjcmlwdHMvaW5zdGFsbC1pbmZvLnBsLCBzY3JpcHRzL2Rwa2ctc3RhdG92ZXJyaWRlLnBsOiBTZXQKKwlQRVJMX0RMX05PTkxBWlkgdG8gMSBzbyB0aGF0IHRoZSB1c2FnZSBvZiBMb2NhbGU6OkdldHRleHQgZG9lc24ndAorCWNhdXNlIHJ1bi10aW1lIGZhaWx1cmVzIHdoZW4gdGhpcyBwZXJsIGJpbmFyeSBtb2R1bGUgaXMgbm90CisJY29tcGlsZWQgZm9yIHRoZSBjb3JyZXNwb25kaW5nIHBlcmwgdmVyc2lvbiAoYW5kIHRoaXMgaGFwcGVucyBpbgorCWNvbmZpZ3VyYXRpb24gc2NyaXB0cywgaW4gcGFydGljdWxhciBwcmVpbnN0LCBkdXJpbmcgdXBncmFkZXMpLgorCisyMDA4LTA2LTA4ICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtIChhbmFseXplKTogQmUgbGVzcyBzdHJpY3QgaW4KKwlmaWxlbmFtZXMgYWNjZXB0ZWQgb24gLS0tLysrKyBsaW5lcy4gRG9uJ3QgYmxvdyB1cCBvbiBhYnNvbHV0ZQorCWZpbGVuYW1lcyBpZiB0aGUgb3RoZXIgb25lIGlzIGZpbmUuIE1ha2Ugc3VyZSB0byB1c2UgdGhlIG9uZSB0aGF0CisJaXMgcmVsYXRpdmUgYW5kIHRoYXQgY29ycmVzcG9uZHMgdG8gYSByZWFsIGZpbGUgd2hlbiBwb3NzaWJsZS4KKworMjAwOC0wNi0wOCAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOiBVc2UgYWJzb2x1dGUgcGF0aCBuYW1lcworCXdoZW4gZ2l2aW5nIGRpcmVjdG9yaWVzIGFuZCBmaWxlbmFtZXMgdG8gcXVpbHQgdG8gYXZvaWQgYW55CisJcHJvYmxlbXMgZHVlIHRvIHF1aWx0J3MgZmVhdHVyZSBvZiB0cnlpbmcgcmVsYXRpdmUgcGF0aHMgaW4gcGFyZW50CisJZGlyZWN0b3JpZXMgdG9vLgorCisyMDA4LTA2LTA3ICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtIChhbmFseXplKTogQWNjZXB0IHVuZXhwZWN0ZWQKKwllbmQtb2YtZmlsZSBpbiBwYXRjaGVzIGlmIHdlJ3JlIG1pc3Npbmcgbm8gbW9yZSB0aGFuIDIgbGluZXMKKwlvZiBjb250ZXh0LiBPdXRwdXQgYSB3YXJuaW5nIGluc3RlYWQuCisKKzIwMDgtMDYtMDcgIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbSAocmVnaXN0ZXJfYXV0b3BhdGNoKToKKwlSZWdpc3RlciB0aGUgbmV3bHkgY3JlYXRlZCBwYXRjaCB3aXRoIHF1aWx0IG9ubHkgaWYgcXVpbHQgaGFzCisJYWxyZWFkeSBiZWVuIHVzZWQgdG8gYXBwbHkgdGhlIGV4aXN0aW5nIHBhdGNoZXMgKG9yIGlmIHdlIGRvbid0CisJaGF2ZSBhbnkgcGF0Y2ggeWV0KSwgb3RoZXJ3aXNlIHJlZ2lzdGVyIGl0IG1hbnVhbGx5IGF0IHRoZSBlbmQgb2YKKwl0aGUgc2VyaWVzLgorCisyMDA4LTA2LTA1ICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtIChhZGRfZGlmZl9kaXJlY3RvcnkpOiBJZiBvcHRpb24KKwl1c2VfZGV2X251bGwgaXMgc2V0LCB0aGVuIHRoZSBsYWJlbCBvZiB0aGUgIm9sZCIgZmlsZSB3aWxsIGJlCisJJy9kZXYvbnVsbCcgaWYgd2UncmUgY3JlYXRpbmcgYSBuZXcgZmlsZSAoaW5zdGVhZCBvZiB1c2luZyB0aGUKKwluYW1lIG9mIHRoZSBjcmVhdGVkIGZpbGUsIGxpa2UgaXQncyBjdXJyZW50bHkgZG9uZSBpbiAuZGlmZgorCW9mIHZlcnNpb24gIjEuMCIgc291cmNlIHBhY2thZ2VzKS4KKwkqIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbSAocHJlcGFyZV9idWlsZCk6IFVzZSB0aGUgbmV3CisJb3B0aW9uICJ1c2VfZGV2X251bGwiIHdoZW4gY3JlYXRpbmcgdGhlIGF1dG9tYXRpYyBwYXRjaC4KKworMjAwOC0wNi0wNSAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtIChnZXRfcGF0Y2hlcyk6IFJlYWxseQorCXNraXAgYWxsIGNvbW1lbnRzIGluIHRoZSBzZXJpZXMgZmlsZXMuCisKKzIwMDgtMDYtMDQgIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG0gKGFuYWx5emUpOiBFbmhhbmNlIGZ1bmN0aW9uIHRvCisJcGFyc2UgY29ycmVjdGx5IG1hbnkgbW9yZSBwYXRjaGVzIHRoYXQgYXJlIGFjY2VwdGVkIGJ5IHRoZSBwYXRjaAorCXV0aWxpdHkgaXRzZWxmOgorCS0gaWdub3JlL3N0cmlwIGNhcnJpYWdlIHJldHVybiBvZiBwYXRjaGVzIHdpdGggV2luZG93cyBlbmQgb2YgbGluZXMKKwktIGFjY2VwdCBlbXB0eSBsaW5lcyBhcyBjb250ZXh0dWFsIGxpbmVzIChpbnN0ZWFkIG9mIHRoZSBleHBlY3RlZCAiICIpCisJLSBhY2NlcHQgc3BhY2VzIGFzIHNlcGFyYXRvciBiZXR3ZWVuIGZpbGVuYW1lIGFuZCB0aW1lc3RhbXAgaWYKKwkgIHRoZXJlJ3Mgbm8gdGFiCisJLSBhY2NlcHQgYSBuYW1lIHRoYXQgZGlmZmVycyBvbiB0aGUgKysrIGxpbmUgaWYgdGhlIG5hbWUgaW4gLS0tIGlzCisJICBjb3JyZWN0LCBhbmQgdXNlIHRoZSBuYW1lIGluICsrKyBpZiB0aGlzIG9uZSBleGlzdHMgd2hpbGUgdGhlIG9uZQorCSAgb24gLS0tIGRvZXNuJ3QuCisKKzIwMDgtMDUtMjggIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbSAoZXh0cmFjdCk6IElmIHdlIGV4dHJhY3QgYQorCXNvdXJjZSBwYWNrYWdlIHRoYXQgdXNlcyBhIG5vbi1zdGFuZGFyZCAoIT0gMS4wKSBzb3VyY2UgcGFja2FnZQorCXRoZW4gd2UgY3JlYXRlIGRlYmlhbi9zb3VyY2UvZm9ybWF0IHRvIHJlbWVtYmVyIGl0LgorCSogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDogVXNlIGRlYmlhbi9zb3VyY2UvZm9ybWF0IGFzIGEgbmV3IHNvdXJjZQorCW9mIGZvcm1hdCB0byB0cnkgd2hlbiBidWlsZGluZyB0aGUgcGFja2FnZS4gUHJpb3JpdGl6ZSBpdCBsb3dlciB0aGFuCisJY29tbWFuZCBsaW5lIGFuZCBkZWJpYW4vY29udHJvbCBidXQgaGlnaGVyIHRoYW4gdGhlIGRlZmF1bHQgYnVpbGQKKwlmb3JtYXRzLgorCSogbWFuL2Rwa2ctc291cmNlLjE6IERvY3VtZW50IHRoZSBhYm92ZSBjaGFuZ2VzLgorCisyMDA4LTA1LTI4ICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06IEZhY3Rvcml6ZSBjYWxscyB0bworCXF1aWx0IGluIGEgbmV3IHJ1bl9xdWlsdCgpIGZ1bmN0aW9uLiBBbmQgY2hlY2sgb25seSBvbmNlCisJaWYgcXVpbHQgaXMgYXZhaWxhYmxlIHdoaWxlIHNldHRpbmcgdGhlIGRlZmF1bHQgdmFsdWUgb2YKKwl3aXRob3V0X3F1aWx0IG9wdGlvbi4gTGFzdCBidXQgbm90IGxlYXN0LCByZWdpc3RlciBwcm9wZXJseSB0aGUKKwlhdXRvbWF0aWNhbGx5IGdlbmVyYXRlZCBwYXRjaCB3aXRoIHF1aWx0IGltcG9ydC4KKworMjAwOC0wNS0yOCAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbSAoY2hlY2tfYXBwbHkpOiBOZXcgZnVuY3Rpb24gdG8KKwl2ZXJpZnkgaWYgYSBwYXRjaCB3aWxsIHN1Y2Nlc3NmdWxseSBhcHBseSBvbiB0b3Agb2YgYSBnaXZlbgorCWRpcmVjdG9yeS4KKwkqIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbSAoY2hlY2tfcGF0Y2hlc19hcHBsaWVkKToKKwlEb24ndCB0cnVzdCBkZWJpYW4vcGF0Y2hlcy8uZHBrZy1zb3VyY2UtYXBwbGllZCBibGluZGx5LiBHZXQgYQorCWxpc3Qgb2YgKHN1cHBvc2VkbHkgdW5hcHBsaWVkKSBwYXRjaGVzIGFuZCB2ZXJpZnkgaWYgdGhlIGZpcnN0CisJcGF0Y2ggYXBwbGllcyBvciBub3QuIElmIHllcywgdGhlbiBhcHBseSB0aGUgcGF0Y2ggc2VyaWVzLAorCW90aGVyd2lzZSBkbyBub3QgKGFuZCBhc3N1bWUgdGhhdCB0aGUgcGF0Y2ggc2VyaWVzIGlzIGFscmVhZHkKKwlhcHBsaWVkKS4KKworMjAwOC0wNS0yNiAgSGVsZ2UgS3JldXR6bWFubiAgPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorCisJKiBtYW4vZHNlbGVjdC4xOiBGaXhlZCBhIHR5cG8gYW5kIHJlZ2VuZXJhdGVkIGFsbCBwbyh0KSBmaWxlcywKKwlpbmNsdWRpbmcgdXBkYXRpbmcgdGhlIEdlcm1hbiBvbmUuCisKKzIwMDgtMDUtMjMgIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbSAoZG9fYnVpbGQpOiBEaXNwbGF5IGEKKwltZXNzYWdlIHdoZW4gbG9jYWwgbW9kaWZpY2F0aW9ucyBhcmUgc3RvcmVkIGluIGEgbmV3CisJYXV0b21hdGljIHBhdGNoLiBUaGlzIG1lc3NhZ2VzIGluY2x1ZGVzIGEgbGlzdCBvZgorCW1vZGlmaWVkIGZpbGVzLgorCisyMDA4LTA1LTIzICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06IFJlbW92ZSB0aGUgLmRpZmYKKwlmcm9tIHRoZSBuYW1lIG9mIHRoZSBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlZCBwYXRjaC4gSXQgd2lsbAorCWZhY2lsaXRhdGUgdGhlIHN3aXRjaCB0byB0aGlzIGZvcm1hdDogcGFja2FnZXMgdXNpbmcKKwlwYXRjaCBzeXN0ZW0gdGhhdCBhcHBseSBkZWJpYW4vcGF0Y2hlcy8qLntwYXRjaCxkaWZmfQorCXdpbGwgbm90IGJlIGJvdGhlcmVkIGJ5IHRoZSBwcmVzZW5jZSBvZiB0aGUgcXVpbHQgc2VyaWUKKwljcmVhdGVkIGJ5IGRwa2ctc291cmNlIGl0c2VsZi4KKwkqIG1hbi9kcGtnLXNvdXJjZS4xOiBVcGRhdGUgdGhlIGRvY3VtZW50YXRpb24gYWNjb3JkaW5nbHkuCisKKzIwMDgtMDUtMjIgIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbTogQWRkIG1pc3NpbmcgInVzZQorCUZpbGU6OlBhdGgiIGZvciBta3BhdGgoKS4KKworMjAwOC0wNS0xMyAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc3JjL21haW4uYyAoc2V0Zm9yY2UpOiBBZGQgaGVscCBvdXRwdXQgZm9yICctLWZvcmNlLWJyZWFrcycuCisKKzIwMDgtMDUtMTMgIFN2ZW4gSm9hY2hpbSAgPHN2ZW5qb2FjQGdteC5kZT4KKworCSogbWFuL2Rwa2cuMTogRG9jdW1lbnQgdHJpZ2dlcnMgLS1kZWJ1ZyB2YWx1ZXMuCisKKzIwMDgtMDUtMTMgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIG1hbi9kZWItdmVyc2lvbi41OiBDaGFuZ2UgJ8KpJyB0byAnKEMpJy4KKworMjAwOC0wNS0xMiAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogY29uZmlndXJlLmFjOiBCdW1wIHZlcnNpb24gdG8gMS4xNC4yMH4uCisKKzIwMDgtMDUtMTIgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGNvbmZpZ3VyZS5hYzogUmVsZWFzZSAxLjE0LjE5LgorCisyMDA4LTA1LTEyICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDogR2V0IFBhY2thZ2UtVHlwZSBmaWVsZCB2YWx1ZSBhbHNvIGZyb20KKwljdXN0b20gZmllbGQuCisKKzIwMDgtMDUtMTEgIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKwkqIHNyYy9wcm9jZXNzYXJjLmMgKHByb2Nlc3NfYXJjaGl2ZSk6IFdoaWxlIHJlbW92aW5nIGZpbGVzIHRoYXQKKwlkaXNhcHBlYXJlZCwgbW92ZSB0aGUgY2FsbCB0byBuYW1lbm9kZXRvdXNlIGJlZm9yZSB0aGUgdGVzdAorCXRoYXQgc2tpcHMgZGlyZWN0b3J5IHNoYXJlZCB3aXRoIG90aGVyIHBhY2thZ2VzLiBUaGlzIGlzIHJlcXVpcmVkCisJYmVjYXVzZSBuYW1lbm9kZXRvdXNlKCkgaGFuZGxlcyB0cmlnZ2VyIGFjdGl2YXRpb24gYW5kIHdlIHJlYWxseQorCXdhbnQgZGlyZWN0b3JpZXMgY29udGFpbmluZyAob25seSkgcmVtb3ZlZCBmaWxlcyB0byBhY3RpdmF0ZSB0aGUKKwljb3JyZXNwb25kaW5nIHRyaWdnZXJzLgorCisyMDA4LTA1LTA4ICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG0sCisJc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOiBFbnN1cmUgdGhlCisJLmRwa2ctc291cmNlLWFwcGxpZWQgc3RhbXAgZmlsZSBpcyBjcmVhdGVkIHdoZW4gYW4gYXV0b21hdGljIHBhdGNoCisJaXMgY3JlYXRlZCBzbyB0aGF0IGEgc2Vjb25kIGJ1aWxkIGRvZXNuJ3QgdHJ5IHRvIG1pc3Rha2VubHkKKwlyZWFwcGx5IGl0LgorCisyMDA4LTA1LTA4ICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL0Rwa2cvU291cmNlL0Z1bmN0aW9ucy5wbSAoaXNfYmluYXJ5KTogTmV3IGZ1bmN0aW9uCisJdG8gY2hlY2sgaWYgYSBmaWxlIGlzIGJpbmFyeSBieSB1c2luZyBkaWZmIGFnYWluc3QgaXQuCisJKiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06IENoZWNrIHRoYXQgYWxsIGZpbGVzIGZyb20gdGhlCisJZGViaWFuIHN1Yi1kaXJlY3RvcnkgYXJlIG5vbi1iaW5hcnkgYW5kIG9ubHkgYWxsb3cgd2hpdGVsaXN0ZWQKKwliaW5hcnkgZmlsZXMuCisJKiBtYW4vZHBrZy1zb3VyY2UuMTogRG9jdW1lbnQgdGhpcyBiZWhhdmlvdXIuCisKKzIwMDgtMDUtMDggIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRGViaWFuLnBtIChwYXJzZSk6IEJ1Z2ZpeCBpbiBjcmVhdGlvbiBvZgorCWFuIHVuZXhwZWN0ZWQgbmV3IGNoYW5nZWxvZyBlbnRyeSB0aGF0IGxhY2tzIGFuIGhlYWRlciBsaW5lLgorCisyMDA4LTA1LTA0ICBNYXJjbyBkJ0l0cmkgIDxtZEBsaW51eC5pdD4KKworCSogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTogQWRkIG1pc3NpbmcgaW1wb3J0IG9mIGludGVybmVyci4KKworMjAwOC0wNC0yNiAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtICh1cGdyYWRlX29iamVjdF90eXBlKTogSW5zdGVhZAorCW9mIHVzaW5nIHRoZSBmdWxsIEZvcm1hdDogdmVyc2lvbiB0byBkZWR1Y2UgdGhlIHBlcmwgb2JqZWN0IG5hbWUKKwl1c2Ugb25seSB0aGUgbWFqb3IgcGFydCBvZiB0aGUgdmVyc2lvbi4gVGhlIG1pbm9yIHBhcnQgaXMgdW5kZXIKKwljb250cm9sIG9mIHRoZSBjb3JyZXNwb25kaW5nIG9iamVjdCwgdGhhdCB3YXkgdGhleSBjYW4gZXZvbHZlCisJYW5kIGluZGljYXRlIHRoYXQgdGhlIHNvdXJjZSBwYWNrYWdlIGhhcyBjaGFuZ2VkIGluIGEgYmFja3dhcmRzCisJY29tcGF0aWJsZSB3YXkuIFNlZQorCWh0dHA6Ly9saXN0cy5kZWJpYW4ub3JnL2RlYmlhbi1kcGtnLzIwMDgvMDQvbXNnMDAwNDUuaHRtbAorCUFsc28gYWRkIGEgbmV3IHBhcmFtZXRlciB0byBkaXNhYmxlIHVwZGF0ZSBvZiB0aGUgbWlub3IgdmVyc2lvbiBpbgorCXRoZSBGb3JtYXQgZmllbGQuCisJKGluaXRpYWxpemUpOiBEb24ndCBsZXQgdGhlIEZvcm1hdCBmaWVsZCBiZSB1cGRhdGVkIGJ5CisJdXBncmFkZV9vYmplY3RfdHlwZSgpIGFzIHRoaXMgZnVuY3Rpb24gb25seSBsb2FkcyBpbmZvcm1hdGlvbiBmcm9tCisJdGhlIC5kc2MgaW50byB0aGUgb2JqZWN0LgorCSogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLyoqOiBSZW5hbWUgVjFfMC5wbSBpbnRvIFYxLnBtLAorCVYyXzAucG0gaW50byBWMi5wbSBhbmQgVjNfMC8gaW50byBWMy8uIEZpeCBwZXJsIHBhY2thZ2UgbmFtZXMKKwlhY2NvcmRpbmdseS4gSW50ZWdyYXRlZCBhICRDVVJSRU5UX01JTk9SX1ZFUlNJT04gc2V0IHRvICIwIgorCWluIGFsbCBwYWNrYWdlcy4KKwkqIHNjcmlwdHMvTWFrZWZpbGUuYW0sIHNjcmlwdHMvcG8vUE9URklMRVMuaW46IFVwZGF0ZSB0aGUgbGlzdHMKKwlhY2NvcmRpbmcgdG8gYWJvdmUgZmlsZSByZW5hbWVzLgorCisyMDA4LTA0LTI1ICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjNfMC9xdWlsdC5wbTogUGFyc2UgY29ycmVjdGx5CisJc2VyaWVzIGZpbGVzIHdpdGggcGF0Y2ggb3B0aW9ucyBhbmQgd2FybiBpZiBzb21ldGhpbmcgZWxzZSB0aGFuCisJLXAxIGlzIHVzZWQuCisJKiBtYW4vZHBrZy1zb3VyY2UuMTogRG9jdW1lbnQgaG93IGRwa2ctc291cmNlIGhhbmRsZXMgdGhvc2UgcGF0Y2gKKwlvcHRpb25zIGluIHNlcmllcyBmaWxlcy4KKworMjAwOC0wNC0yNSAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzXzAvbmF0aXZlLnBtOiBGaXggcGVybWlzc2lvbnMgb2YKKwlnZW5lcmF0ZWQgdGFyYmFsbCB0byAiNjY2ICYgfnVtYXNrKCkiLgorCisyMDA4LTA0LTIxICBIZWxnZSBLcmV1dHptYW5uICA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CisKKwkqIG1hbi9kcGtnLXNobGliZGVwcy4xOiBGaXggYSB0eXBvLgorCSogbWFuL2Rwa2ctc291cmNlLjE6IEltcHJvdmUgYSBzZW50ZW5jZSAod2l0aCBhZ3JlZW1lbnQgZnJvbSBSYXBow6RlbCkuCisKKzIwMDgtMDQtMTQgIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvRHBrZy9GaWVsZHMucG0gKGZpbmRfY3VzdG9tX2ZpZWxkLCBnZXRfY3VzdG9tX2ZpZWxkKToKKwlOZXcgZnVuY3Rpb24gdG8gaGFuZGxlIGN1c3RvbSBmaWVsZHMgKFhbU0JDXSotKikuCisJKiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDogVXNlIFBhY2thZ2UtVHlwZSBjb250cm9sIGZpZWxkIHRvCisJZGVjaWRlIGlmIGEgcGFja2FnZSBpcyBhbiB1ZGViIGluc3RlYWQgb2YgcmVseWluZyBvbiB0aGUgZmlsZQorCWV4dGVuc2lvbiBvZiBhIGdlbmVyYXRlZCBwYWNrYWdlIHNpbmNlIHRoYXQgZG9lc24ndCB3b3JrIHdoZW4KKwlnZW5lcmF0aW5nIHNvdXJjZS1vbmx5IHVwbG9hZHMgZm9yIGV4YW1wbGUuCisKKzIwMDgtMDQtMTQgIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG0gKF9mYWlsX25vdF9zYW1lX3R5cGUpOiBGaXgKKwlpbnZlcnNpb24gYmV0d2VlbiBuZXcvb2xkIGZpbGV0eXBlLgorCisyMDA4LTA0LTEyICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL0Rwa2cvUGF0aC5wbSAoY2hlY2tfZmlsZXNfYXJlX3RoZV9zYW1lKTogQWRkIGEgbmV3CisJcGFyYW1ldGVyIHNvIHRoYXQgd2UgY2FuIHVzZSBzdGF0KCkgaW5zdGVhZCBvZiBsc3RhdCgpIGFuZAorCWNvbXBhcmUgaWYgcG9pbnRlZCBmaWxlcyBhcmUgdGhlIHNhbWUuCisJKiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG06IFJlc29sdmUgc3ltbGlua3MgYmVmb3JlIGRlY2lkaW5nCisJaWYgYm90aCBvcmlnaW5hbCB0YXJiYWxscyBhcmUgdGhlIHNhbWUgb3Igbm90LiBVc2UgdGhlIG5ldworCXBhcmFtZXRlciBvZiBjaGVja19maWxlc19hcmVfdGhlX3NhbWUoKSBmb3IgdGhpcy4KKwkqIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMV8wLnBtOiBSZW1vdmUgdXNlbGVzcyBpbXBvcnQgb2YKKwljaGVja19maWxlc19hcmVfdGhlX3NhbWUuCisKKzIwMDgtMDQtMTIgIFN2ZW4gSm9hY2hpbSAgPHN2ZW5qb2FjQGdteC5kZT4KKworCSogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOiBBZGQgbWlzc2luZyBpbXBvcnQgb2YKKwlzdWJwcm9jZXJyLgorCisyMDA4LTA0LTEyICBSdXNzZWxsIENva2VyICA8cnVzc2VsbEBjb2tlci5jb20uYXU+LAorICAgICAgICAgICAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc3JjL2FyY2hpdmVzLmMgKHRhcm9iamVjdCk6IFNldCBzY29udGV4dCB0byBOVUxMIGFmdGVyIGZyZWVjb24uCisKKzIwMDgtMDQtMTAgIFN2ZW4gSm9hY2hpbSAgPHN2ZW5qb2FjQGdteC5kZT4KKworCSogc3JjL3RyaWdjbWQuYzogRml4IHR5cG8uCisKKzIwMDgtMDQtMDkgIFN2ZW4gSm9hY2hpbSAgPHN2ZW5qb2FjQGdteC5kZT4KKworCSogVEhBTktTOiBVcGRhdGUgbXkgZS1tYWlsIGFkZHJlc3MuCisKKzIwMDgtMDQtMDkgIEhlbGdlIEtyZXV0em1hbm4gIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KKworCSogbWFuL2RlYi10cmlnZ2Vycy41OiBGaXggdHlwb3MuCisJKiBtYW4vZHBrZy10cmlnZ2VyLjE6IExpa2V3aXNlLgorCisyMDA4LTA0LTA4ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBjb25maWd1cmUuYWM6IEJ1bXAgdmVyc2lvbiB0byAxLjE0LjE5fi4KKworMjAwOC0wNC0wOCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogY29uZmlndXJlLmFjOiBSZWxlYXNlIDEuMTQuMTguCisKKzIwMDgtMDQtMDggIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGRvYy90cmlnZ2Vycy50eHQ6IEZpeCB3cm9uZyBkcGtnIHRyaWdnZXIgcmVsYXRlZCBvcHRpb24gbmFtZXMuCisKKzIwMDgtMDQtMDggIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGRvYy90cmlnZ2Vycy50eHQ6IE1vdmUgcGFydHMgb2YgdGhlIGRvY3VtZW50IGludG8gcHJvcGVyIG1hbiBwYWdlcy4KKwlBZGQgcmVmZXJlbmNlcyB0byB0aG9zZS4KKworMjAwOC0wNC0wOCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogbWFuL2Rwa2cuMTogRG9jdW1lbnQgbmV3IHRyaWdnZXIgc3RhdHVzZXMsIGFuZCBuZXcgLS10cmlnZ2Vycy1vbmx5LAorCS0tbm8tdHJpZ2dlcnMgYW5kIC0tdHJpZ2dlcnMgb3B0aW9ucy4KKwkqIG1hbi9kZWItdHJpZ2dlcnMuNTogTmV3IGZpbGUuCisJKiBtYW4vZHBrZy10cmlnZ2VyLjE6IExpa2V3aXNlLgorCSogbWFuL01ha2VmaWxlLmFtIChkaXN0X21hbl9NQU5TKTogTGlrZXdpc2UuCisKKzIwMDgtMDQtMDggIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIG1hbi9kcGtnLjE6IFNvcnQgcGFja2FnZSBzdGF0ZXMuCisKKzIwMDgtMDQtMDUgIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMV8wLnBtOiBEbyBub3QgdXNlCisJZGlmZiAtcCB0byBnZW5lcmF0ZSBwYXRjaGVzIGFzIGRwa2ctc291cmNlIG9mIHNhcmdlIGRvZXNuJ3QgYWNjZXB0CisJZGF0YSBhZnRlciB0aGUgQEAuCisKKzIwMDgtMDQtMDQgIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvRHBrZy9TaGxpYnMvU3ltYm9sRmlsZS5wbSAoZ2V0X3NtYWxsZXN0X3ZlcnNpb24pOiBOZXcKKwlmdW5jdGlvbiB0byByZXRyaWV2ZSB0aGUgc21hbGxlc3QgIm1pbnZlciIgb2YgYWxsIHN5bWJvbHMgb2YgYQorCWdpdmVuIGxpYnJhcnkuCisJKiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOiBEbyBub3QgaW5pdGlhbGl6ZSBkZXBlbmRlbmNpZXMgb2YKKwlsaWJyYXJpZXMgd2l0aCBzeW1ib2xzIGZpbGVzIGFzIHVudmVyc2lvbmVkLCBpbnN0ZWFkIHVzZSB0aGUKKwlzbWFsbGVzdCBtaW5pbWFsIHZlcnNpb24gcmV0dXJuZWQgYnkgdGhlIGZ1bmN0aW9uIGFib3ZlLiBUaGlzCisJaXMgcmVxdWlyZWQgYmVjYXVzZSB0aGUgbGlicmFyeSBtaWdodCBub3QgaGF2ZSBhbHdheXMgYmVlbgorCWF2YWlsYWJsZSBpbiB0aGUgcGFja2FnZSBhbmQgdGhlIHVudmVyc2lvbmVkIGRlcGVuZGVuY3kgdGh1cworCWRvZXNuJ3QgZW5zdXJlIGhpcyBwcmVzZW5jZS4KKworCSogc2NyaXB0cy90LzgwMF9EcGtnX0lQQy50OiBSZW1vdmUgdGVtcG9yYXJ5IGZpbGVzIHVzZWQgYnkgdGhlCisJdGVzdHMuCisKKzIwMDgtMDQtMDMgIFBldGVyIEthcmxzc29uICA8cGV0ZXJrQGRlYmlhbi5vcmc+CisKKwkqIG1hbi9kcGtnLXNvdXJjZS4xOiBDb3JyZWN0ZWQgRW5nbGlzaC4KKworMjAwOC0wNC0wMiAgU3ZlbiBKb2FjaGltICA8c3ZlbmpvYWNAZ214LmRlPgorCisJKiBsaWIvdHJpZ2xpYi5jICh0cmtfdW5rbm93bl9pbnRlcmVzdF9jaGFuZ2UpOiBGaXggdHlwby4KKwkqIGRzZWxlY3QvaGVscG1zZ3MuY2MgKGhscF9kaXNwbGF5ZXhwbGFpbjEpOiBEaXR0by4KKworMjAwOC0wNC0wMiAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtLCBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDoKKwlFeHBsaWNpdGx5IHB1dCBDaGVja3N1bXMtKiBmaWVsZHMgYmVmb3JlIHRoZSBGaWxlcyBmaWVsZCBzbyB0aGF0CisJdGhlIEZpbGVzIGZpZWxkIGlzIGxhc3QuIFRoaXMgaXMgYSB3b3JrLWFyb3VuZCBmb3Igc29tZSBicmFpbmRlYWQKKwlkc2MgcGFyc2VycyAoZHVwbG9hZCBhbmQgc2J1aWxkIGZvciBpbnN0YW5jZSwgc2VlICM0NzM1MTggYW5kCisJIzQ3MDQ0MCkuCisKKzIwMDgtMDQtMDEgIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMl8wLnBtOiBBZGQgdGhlIG9wdGlvbgorCS0tc2tpcC1wYXRjaGVzIHRvIG5vdCBhcHBseSBwYXRjaGVzIGF0IHRoZSBlbmQgb2YgdGhlIHNvdXJjZQorCXBhY2thZ2UgZXh0cmFjdGlvbi4gQWxzbyB3b3JrcyBmb3IgRm9ybWF0OiAzLjAgKHF1aWx0KS4KKwkqIG1hbi9kcGtnLXNvdXJjZS4xOiBEb2N1bWVudCB0aGUgYWJvdmUgY2hhbmdlLgorCisyMDA4LTA0LTAxICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjJfMC5wbSAoZG9fZXh0cmFjdCk6IENyZWF0ZQorCWRlYmlhbi9wYXRjaGVzLy5kcGtnLXNvdXJjZS1hcHBsaWVkIGNvbnRhaW5pbmcgdGhlIGxpc3Qgb2YgcGF0Y2hlcworCWFwcGxpZWQgZHVyaW5nIGV4dHJhY3Rpb24uCisJKHByZXBhcmVfYnVpbGQpOiBhcHBseSBwYXRjaGVzIGJlZm9yZSB0cnlpbmcgdG8gYnVpbGQgYSBzb3VyY2UgcGFja2FnZQorCXdoZW4gaXQncyBjbGVhciB0aGF0IHRoZXkgaGF2ZSBub3QgYmVlbiBhcHBsaWVkIGJlY2F1c2UKKwlkZWJpYW4vcGF0Y2hlcy8uZHBrZy1zb3VyY2UtYXBwbGllZCBkb2Vzbid0IGV4aXN0LgorCSogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzXzAvcXVpbHQucG06IExpa2V3aXNlLiBJZiBhIC5wYworCWRpcmVjdG9yeSBpcyBwcmVzZW50LCB0aGVuIHVzZSAicXVpbHQgdW5hcHBsaWVkIiB0byBjaGVjayBpZiBhbGwKKwlwYXRjaGVzIGhhdmUgYmVlbiBhcHBsaWVkLgorCSogbWFuL2Rwa2ctc291cmNlLjE6IERvY3VtZW50IHRoZSBhYm92ZSBjaGFuZ2VzLgorCisyMDA4LTA0LTAxICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL0Rwa2cvSVBDLnBtIChmb3JrX2FuZF9leGVjKTogSGFuZGxlIHJlZGlyZWN0aW9uCisJb2YgU1RERVJSIHdpdGggbmV3IG9wdGlvbnMgZXJyb3JfdG9fe2ZpbGUscGlwZSxzdHJpbmcsaGFuZGxlfS4KKworMjAwOC0wNC0wMSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogbGliL3RyaWdkZWZlcnJlZC5sICh0cmlnZGVmX3VwZGF0ZV9zdGFydCk6IFVzZSBUUklHR0VSU0xPQ0tGSUxFCisJaW5zdGVhZCBvZiBsaXRlcmFsIHN0cmluZy4KKworMjAwOC0wNC0wMSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc3JjL2VucXVpcnkuYyAoYmFkc3RhdGluZm9zKTogRml4IHR5cG9zIChwcm9jZXNzZXNpbmcgLT4gcHJvY2Vzc2luZykuCisKKzIwMDgtMDMtMzAgIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKwkqIG1hbi9kcGtnLXNvdXJjZS4xOiBNYWtlIGl0IGNsZWFyIHRoYXQgRm9ybWF0OiAyLjAgaXMgbm90IHJlYWxseQorCW1lYW50IHRvIGJlIHdpZGVseSB1c2VkIGJ5IG1vdmluZyBhbGwgdGhlIGV4cGxhbmF0aW9ucyBpbiB0aGUKKwlzZWN0aW9uIGRlc2NyaWJpbmcgdGhlIGZvcm1hdCAiMy4wIChxdWlsdCkiLgorCisyMDA4LTAzLTMwICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBjb25maWd1cmUuYWM6IEJ1bXAgdmVyc2lvbiB0byAxLjE0LjE4fi4KKworMjAwOC0wMy0zMCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogY29uZmlndXJlLmFjOiBSZWxlYXNlIDEuMTQuMTcuCisKKzIwMDgtMDMtMzAgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGRzZWxlY3QvbWFpbi5jYzogVXNlIDxuY3Vyc2Vzdy90ZXJtLmg+IGluc3RlYWQgb2YgPHRlcm0uaD4uCisJKiBkc2VsZWN0L2RzZWxlY3QuaDogVXNlIDxuY3Vyc2Vzdy9jdXJzZXMuaD4gaW5zdGVhZCBvZiA8Y3Vyc2VzLmg+LgorCSogZHNlbGVjdC9NYWtlZmlsZS5hbSAoY3Vya2V5cy5oKTogTGlrZXdpc2UuCisKKzIwMDgtMDMtMzAgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHBvL1BPVEZJTEVTLmluOiBBZGQgJ2xpYi9jbGVhbnVwLmMnLCAnbGliL2xvZy5jJywgJ2xpYi9teW9wdC11dGlsLmMnCisJYW5kIHJlbW92ZSAnbGliL3Nob3djcmlnaHQuYycuCisJKiBzY3JpcHRzL01ha2VmaWxlLmFtIChFWFRSQV9ESVNUKTogQWRkCisJJ3QvNjAwX0Rwa2dfQ2hhbmdlbG9nL3JlZ3Jlc3Npb25zJy4KKworMjAwOC0wMy0zMCAgSWFuIEphY2tzb24gIDxpYW5AZGF2ZW5hbnQuZ3JlZW5lbmQub3JnLnVrPiwKKyAgICAgICAgICAgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGRvYy90cmlnZ2Vycy50eHQ6IE5ldyBmaWxlLgorCSogbGliL2RsaXN0Lmg6IExpa2V3aXNlLgorCSogbGliL3RyaWdkZWZlcnJlZC5sOiBMaWtld2lzZS4KKwkqIGxpYi90cmlnbGliLmM6IExpa2V3aXNlLgorCSogc3JjL3RyaWdjbWQuYzogTGlrZXdpc2UuCisJKiBzcmMvdHJpZ3Byb2MuYzogTGlrZXdpc2UuCisJKiBjb25maWd1cmUuYWM6IFVzZSBBQ19QUk9HX0xFWC4KKwkqIE1ha2VmaWxlLmFtIChFWFRSQV9ESVNUKTogQWRkICdkb2MvdHJpZ2dlcnMudHh0Jy4KKwkqIHBvL1BPVEZJTEVTLmluOiBBZGQgJ2xpYi90cmlnZGVmZXJyZWQuYycsICdsaWIvdHJpZ2xpYi5jJywKKwknc3JjL3RyaWdjbWQuYycgYW5kICdzcmMvdHJpZ3Byb2MuYycuCisJKiBkc2VsZWN0L2hlbHBtc2dzLmNjIChobHBfZGlzcGxheWV4cGxhaW4xKTogRG9jdW1lbnQgdGhlIG5ldyB0cmlnZ2VyCisJc3RhdHVzZXMuCisJKiBkc2VsZWN0L3BrZ2RlcGNvbi5jYyAocGFja2FnZWxpc3Q6OnVzZWF2YWlsYWJsZSk6IFRyZWF0IHRoZSB0cmlnZ2VyCisJc3RhdHVzZXMgaW4gdGhlIHNhbWUgd2F5IGFzIGluc3RhbGxlZCBzdGF0dXMuCisJKHBhY2thZ2VsaXN0OjpkZXBwb3NzYXRpc2ZpZWQpOiBMaWtld2lzZS4KKwkqIGRzZWxlY3QvcGtnZGlzcGxheS5jYyAoc3RhdHVzc3RyaW5ncyk6IEFkZCB0cmlnZ2VyIHN0YXR1c2VzCisJZGVzY3JpcHRpb25zLgorCShzdGF0dXNjaGFycyk6IExpa2V3aXNlLgorCSogZHNlbGVjdC9wa2dsaXN0LmNjIChwYWNrYWdlbGlzdDo6ZW5zdXJlc3RhdHNvcnRpbmZvKTogTWFyayB0cmlnZ2VyCisJc3RhdHVzIGFzIGJyb2tlbi4KKwkqIGxpYi8uZ2l0aWdub3JlOiBBZGQgJ3RyaWdkZWZlcnJlZC5jJy4KKwkqIGxpYi9NYWtlZmlsZS5hbSAobGliZHBrZ19hX1NPVVJDRVMpOiBBZGQgJ2RsaXN0LmgnLCAndHJpZ2xpYi5jJyBhbmQKKwkndHJpZ2RlZmVycmVkLmwnLgorCSogbGliL2RhdGFiYXNlLmMgKGJsYW5rcGFja2FnZSk6IEluaXRpYWxpemUgdHJpZ2F3LmhlYWQsIHRyaWdhdy50YWlsLAorCW90aGVydHJpZ2F3X2hlYWQgYW5kIHRyaWdwZW5kX2hlYWQgbWVtYmVycy4KKwkqIGxpYi9kYm1vZGlmeS5jICh0cmlnZ2Vyc2RpciwgdHJpZ2dlcnNmaWxlZmlsZSk6IE5ldyB2YXJpYWJsZXMuCisJKHRyaWdnZXJzbmV3ZmlsZWZpbGUpOiBMaWtld2lzZS4KKwkoZm5pcyk6IEFkZCAnVFJJR0dFUlNESVInLCAnVFJJR0dFUlNESVIgIi9GaWxlIicgYW5kCisJJ1RJR0dFUlNESVIgIi9GaWxlLm5ldyInIGVudHJpZXMuCisJKG1vZHN0YXRkYl9pbml0KTogSW5jb3Jwb3JhdGUgdHJpZ2dlcnMuCisJKG1vZHN0YXRkYl9ub3RlKTogUmVzZXQgdHJpZ3BlbmRfaGVhZCBpZiBzdGF0dXMgaXMgbm90IGEgdHJpZ2dlciBvbmUuCisJUmVtb3ZlIGF3YWl0ZWQgdHJpZ2dlcnMgaWYgc3RhdHVzIGlzIDw9IHRoYW4gY29uZmlnZmlsZXMuIENsZWFyCisJYXdhaXRlcnMuCisJKiBsaWIvZHBrZy1kYi5oIChzdHJ1Y3QgdHJpZ3BlbmQsIHN0cnVjdCB0cmlnYXcpOiBOZXcgdHlwZXMuCisJKGVudW0gdHJpZ2RlZl91cGRhdGVmbGFncywgc3RydWN0IHRyaWdkZWZtZXRocyk6IExpa2V3aXNlLgorCShzdHJ1Y3QgdHJpZ2ZpbGVpbnQsIHN0cnVjdCB0cmlnX2hvb2tzKTogTGlrZXdpc2UuCisJKGVudW0gcGtnc3RhdHVzKTogQWRkIHN0YXRfdHJpZ2dlcnNhd2FpdGVkIGFuZCBzdGF0X3RyaWdnZXJzcGVuZGluZy4KKwkoc3RydWN0IHBrZ2luZm8pOiBBZGQgbmV3IHRyaWdhdywgb3RoZXJ0cmlnYXdfaGVhZCBhbmQgdHJpZ3BlbmRfaGVhZAorCW1lbWJlcnMuCisJKHRyaWdnZXJzZGlyLCB0cmlnZ2Vyc2ZpbGVmaWxlLCB0cmlnZ2Vyc25ld2ZpbGVmaWxlKTogTmV3IHZhcmlhYmxlcy4KKwkodHJpZ2RlZiwgdHJpZ19uZXdfZGVmZXJyZWQsIHRyaWdoKTogTGlrZXdpc2UuCisJKHRyaWdkZWZfdXBkYXRlX3N0YXJ0LCB0cmlnZGVmX3l5bGV4LCB0cmlnZGVmX3Byb2Nlc3NfZG9uZSk6IE5ldworCWZ1bmN0aW9ucyBwcm90b3R5cGVzLgorCSh0cmlnX25vdGVfcGVuZF9jb3JlLCB0cmlnX25vdGVfcGVuZCwgdHJpZ19ub3RlX2F3KTogTGlrZXdpc2UuCisJKHRyaWdfY2xlYXJfYXdhaXRlcnMsIHRyaWdfaW5jb3Jwb3JhdGUpOiBMaWtld2lzZS4KKwkodHJpZ19maWxlX2FjdGl2YXRlX2J5bmFtZSwgdHJpZ19maWxlX2FjdGl2YXRlKTogTGlrZXdpc2UuCisJKHRyaWdfZmlsZV9pbnRlcmVzdHNfZW5zdXJlLCB0cmlnX2ZpbGVfaW50ZXJlc3RzX3NhdmUpOiBMaWtld2lzZS4KKwkodHJpZ19jaWNiX2ludGVyZXN0X2RlbGV0ZSwgdHJpZ19jaWNiX2ludGVyZXN0X2FkZCk6IExpa2V3aXNlLgorCSh0cmlnX2NpY2Jfc3RhdHVzY2hhbmdlX2FjdGl2YXRlLCB0cmlnX3BhcnNlX2NpKTogTGlrZXdpc2UuCisJKGlsbGVnYWxfdHJpZ2dlcm5hbWUpOiBMaWtld2lzZS4KKwkodHJpZ19wYXJzZV9jaWNiKTogTmV3IGZ1bmN0aW9uIHR5cGVkZWYuCisJKFRSSUdIT09LU19ERUZJTkVfTkFNRU5PREVfQUNDRVNTT1JTKTogTmV3IG1hY3JvLgorCSogbGliL2Rwa2cuaCAoVFJJR0dFUlNDSUZJTEUsIFRSSUdHRVJTRElSLCBUUklHR0VSU0ZJTEVGSUxFKQorCShUUklHR0VSU0RFRkVSUkVERklMRSwgVFJJR0dFUlNMT0NLRklMRSwgTUFJTlRTQ1JJUFRQS0dFTlZWQVIpCisJKE1BSU5UU0NSSVBURFBLR0VOVlZBUiwgTUFYVFJJR0RJUkVDVElWRSk6IE5ldyBtYWNyb3MuCisJKE1BWFVQREFURVMpOiBTZXQgdG8gMjUwLgorCSogbGliL2R1bXAuYyAod19jb25maWd2ZXJzaW9uKTogRG8gbm90IHdyaXRlIHRoZSBmaWVsZCBpZiBvbiB0cmlnZ2VyCisJc3RhdHVzZXMgZWl0aGVyLgorCSh3X3N0YXR1cyk6IEFib3J0IG9uIHVua25vd24gc3RhdHVzLiBBc3NlcnQgdGhlIHByZXNlbmNlIG9yIG5vdAorCW9mIGF3YWl0ZWQgYW5kIHBlbmRpbmcgdHJpZ2dlcnMgZGVwZW5kaW5nIG9uIHRoZSBzdGF0dXMuCisJKHdfdHJpZ3BlbmQsIHdfdHJpZ2F3KTogTmV3IGZ1bmN0aW9ucy4KKwkqIGxpYi9maWVsZHMuYyAoc2Nhbl93b3JkLCBmX3RyaWdwZW5kLCBmX3RyaWdhdyk6IExpa2V3aXNlLgorCSogbGliL3BhcnNlLmM6IEluY2x1ZGUgPGFzc2VydC5oPi4KKwkoZmllbGRpbmZvcyk6IEFkZCAnVHJpZ2dlcnMtUGVuZGluZycgYW5kICdUcmlnZ2Vycy1Bd2FpdGVkJyBmaWVsZHMuCisJKHBhcnNlZGIpOiBBZGQgbmV3IHZhcmlhYmxlIGF3LiBDaGVjayBmb3IgY29uc2lzdGVuY3kgYmV0d2VlbiB0aGUKKwl0cmlnZ2VycyBsaXN0cyBhbmQgdGhlIHN0YXR1cy4gSW5pdGlhbGl6ZSB0cmlncGVuZF9oZWFkIGFuZCB0cmlnYXcuCisJKiBsaWIvcGFyc2VkdW1wLmggKGZfdHJpZ3BlbmQsIGZfdHJpZ2F3LCB3X3RyaWdwZW5kLCB3X3RyaWdhdyk6IE5ldworCWZ1bmN0aW9uIHByb3RvdHlwZXMuCisJKiBsaWIvcGFyc2VoZWxwLmMgKHN0YXR1c2luZm9zKTogQWRkICd0cmlnZ2Vycy1hd2FpdGVkJyBhbmQKKwkndHJpZ2dlcnMtcGVuZGluZycuCisJKiBzcmMvTWFrZWZpbGUuYW0gKGJpbl9QUk9HUkFNUyk6IEFkZCAnZHBrZy10cmlnZ2VyJy4KKwkoZHBrZ19TT1VSQ0VTKTogQWRkICd0cmlncHJvYy5jJy4KKwkoZHBrZ190cmlnZ2VyX1NPVVJDRVMsIGRwa2dfdHJpZ2dlcl9MREFERCk6IE5ldyB2YXJpYWJsZXMuCisJKiBzcmMvYXJjaGl2ZXMuYyAoY2hlY2tfY29uZmxpY3QpOiBUcmVhdCB0cmlnZ2VyIHN0YXR1c2VzIHRoZSBzYW1lIHdheQorCWFzIGluc3RhbGxlZC4KKwkoYXJjaGl2ZWZpbGVzKTogSW5zdGFsbCB0cmlnZ2VyIGhvb2tzLiBNYWtlIGFjdF90cmlnZ2VycyBwZXJmb3JtCisJcHJvY2Vzc19xdWV1ZS4gRG8gYSBkZWZlcnJlZCB0cmlnZ2VycyBwcm9jZXNzIHJ1bi4KKwkod2FudHRvaW5zdGFsbCk6IFRyZWF0IHRyaWdnZXIgc3RhdHVzZXMgdGhlIHNhbWUgd2F5IGFzIGluc3RhbGxlZC4KKwlSZW1vdmUgZHVwZWQgY2hlY2sgYWJvdXQgcGFja2FnZSBiZWluZyBpbnN0YWxsZWQgb24gZm9yY2VkCisJc2tpcC1zYW1lLXZlcnNpb24uCisJKiBzcmMvY29uZmlndXJlLmMgKGRlZmVycmVkX2NvbmZpZ3VyZSk6IEFjdGl2YXRlIGZpbGUgdHJpZ2dlcnMgb24KKwljb25mZmlsZSBjaGFuZ2VzLgorCSogc3JjL2RlcGNvbi5jIChkZXBpc29rKTogVHJlYXQgdHJpZ2dlciBzdGF0dXNlcyB0aGUgc2FtZSB3YXkgYXMKKwlpbnN0YWxsZWQgZm9yIHRoZSBkZXBlbmRlbmN5IGFuZCBmb3IgYnJlYWtzIG9yIGNvbmZsaWN0cy4gRm9yIGRlcGVuZHMsCisJcHJlZGVwZW5kcywgcmVjb21tZW5kcyBhbmQgc3VnZ2VzdHMgdHJlYXQgdHJpZ2dlcnNwZW5kaW5nIGFzIGluc3RhbGxlZAorCWFuZCB0cmlnZ2Vyc2F3YWl0ZWQgYXMgaGFsZmNvbmZpZ3VyZWQuCisJKiBzcmMvZW5xdWlyeS5jIChiYWRzdGF0aW5mb3MpOiBBZGQgc3RhdF90cmlnZ2Vyc3BlbmRpbmcgYW5kCisJc3RhdF90cmlnZ2Vyc2F3YWl0ZWQgZW50cmllcy4KKwkoeWV0dG9iZXVucGFja2VkKTogVHJlYXQgdHJpZ2dlciBzdGF0dXNlcyBhcyB1bnBhY2tlZC4KKwkoYXNzZXJ0dmVyc2lvbik6IFRyZWF0IHRyaWdnZXJzcGVuZGluZyB0aGUgc2FtZSB3YXkgYXMgaW5zdGFsbGVkLAorCWFuZCB0cmlnZ2Vyc2F3YWl0ZWQgYXMgbm90IGZ1bGx5IGluc3RhbGxlZC4KKwkqIHNyYy9maWxlc2RiLmggKGVudW0gZm5uZmxhZ3MpOiBBZGQgbmV3IGZubl9ub25ldyBpdGVtLgorCShzdHJ1Y3QgZmlsZW5hbWVub2RlKTogQWRkIG5ldyB0cmlnX2ludGVyZXN0ZWQgbWVtYmVyLgorCSogc3JjL2ZpbGVzZGIuYyAoZW5zdXJlX3BhY2thZ2VfY2xpZW50ZGF0YSk6IEluaXRpYWxpemUKKwljbGllbnRkYXRhLT50cmlncHJvY2RlZmVycmVkLgorCShmaW5kbmFtZW5vZGUpOiBSZXR1cm4gTlVMTCBpZiBmbGFncyBoYXMgZm5uX25vbmV3IGFuZCB0aGVyZSBpcyBubworCW1hdGNoIGJlZm9yZSBjcmVhdGluZyBhIG5ldyBvbmUuIEluaXRpYWxpemUgdHJpZ19pbnRlcmVzdGVkIHdoZW4KKwljcmVhdGluZyBhIG5ld25vZGUuCisJKiBzcmMvaGVscC5jIChzdGF0dXNzdHJpbmdzKTogQWRkIHRyaWdnZXIgc3RhdHVzZXMgZGVzY3JpcHRpb25zLgorCShuYW1lbm9kZXRvdXNlKTogQWN0aXZhdGUgYSBmaWxlIHRyaWdnZXIgYmVmb3JlIHJldHVybmluZy4KKwkocG9zdF9wb3N0aW5zdF90YXNrcyk6IEluaXRpYWxpemUgdHJpZ3BlbmRfaGVhZCB0byBOVUxMLiBTZXQgc3RhdHVzCisJdG8gc3RhdF90cmlnZ2Vyc2F3YWl0ZWQgaWYgdHJpZ2F3LmhlYWQgb3RoZXJ3aXNlIHRvIG5ld19zdGF0dXMuCisJQ2FsbCBwb3N0X3Bvc3RpbnN0X3Rhc2tzX2NvcmUuIE1vdmUgY2FsbCB0byBtb2RzdGF0ZGJfbm90ZSB0byAuLi4KKwkocG9zdF9wb3N0aW5zdF90YXNrc19jb3JlKTogLi4uIGhlcmUuIE5ldyBmdW5jdGlvbi4gSW5jb3Jwb3JhdGUKKwl0cmlnZ2Vycy4KKwkocG9zdF9zY3JpcHRfdGFza3MpOiBJbmNvcnBvcnRhdGUgdHJpZ2dlcnMuCisJKGRvX3NjcmlwdCk6IFNldCBNQUlOVFNDUklQVFBLR0VOVlZBUiBhbmQgTUFJTlRTQ1JJUFREUEtHRU5WVkFSCisJZW52aXJvbm1lbnQgdmFyaWFibGVzLgorCSogc3JjL21haW4uaCAoc3RydWN0IHBlcnBhY2thZ2VzdGF0ZSk6IEFkZCBuZXcgdHJpZ3Byb2NkZWZlcnJlZAorCW1lbWJlci4KKwkoZW51bSBhY3Rpb24pOiBBZGQgbmV3IGFjdF90cmlnZ2VycyBpdGVtLgorCShmX3RyaWdnZXJzKTogTmV3IHZhcmlhYmxlIGRlZmluaXRpb24uCisJKG5hbWVub2RldG91c2UpOiBBZGQgYSBjb21tZW50IGFib3V0IGl0cyBuZXcgc2lkZSBlZmZlY3RzLgorCShwb3N0X3Bvc3RpbnN0X3Rhc2tzX2NvcmUpOiBMaWtld2lzZS4gTmV3IHByb3RvdHlwZS4KKwkoZW51bSBkZWJ1Z2ZsYWdzKTogQWRkIGRiZ190cmlnZ2VycywgZGJnX3RyaWdnZXJzZGV0YWlsIGFuZAorCWRiZ190cmlnZ2Vyc3N0dXBpZCBpdGVtcy4KKwkodHJpZ3Byb2NfaW5zdGFsbF9ob29rcywgdHJpZ3Byb2NfcnVuX2RlZmVycmVkKTogTmV3IHByb3RveXBlcy4KKwkodHJpZ3Byb2NfcmVzZXRfY3ljbGUsIHRyaWdwcm9jKTogTGlrZXdpc2UuCisJKHRyaWdfYWN0aXZhdGVfcGFja2FnZXByb2Nlc3NpbmcpOiBMaWtld2lzZS4KKwkqIHNyYy9tYWluLmMgKHVzYWdlKTogRG9jdW1lbnQgJy0tdHJpZ2dlcnMtb25seScgYW5kCisJJy0tW25vLV10cmlnZ2VycycuCisJKGZfdHJpZ2dlcnMpOiBOZXcgdmFyaWFibGUgZGVjbGFyYXRpb24KKwkoc2V0ZGVidWcpOiBEb2N1bWVudCBuZXcgdHJpZ2dlcnMgZGVidWcgZmxhZ3MuCisJKGNtZGluZm9zKTogQWRkIHRyaWdnZXJzLW9ubHksIHRyaWdnZXJzIGFuZCBuby10cmlnZ2VycyBlbnRyaWVzLgorCShtYWluKTogRGlzYWJsZSBmX3RyaWdnZXJzIHdoZW4gLS10cmlnZ2Vycy1vbmx5IGhhcyBiZWVuIHNwZWNpZmllZC4KKwkqIHNyYy9wYWNrYWdlcy5jIChwcm9ncmVzc19ieXRyaWdwcm9jKTogTmV3IHZhcmlhYmxlLgorCShwYWNrYWdlcyk6IEluc3RhbGwgdHJpZ2dlciBob29rcy4gT24gYWN0X2NvbmZpZ3VyZSBza2lwIHRoZSBwYWNrYWdlCisJYWxzbyBpZiB0cmlncGVuZF9oZWFkIGlzIG5vdCB2YWxpZC4gSGFuZGxlIGFjdF90cmlnZ2Vycy4gRG8gYQorCWRlZmVycmVkIHRyaWdnZXJzIHByb2Nlc3MgcnVuLgorCShwcm9jZXNzX3F1ZXVlKTogTmV3IGFjdGlvbl90b2RvIHZhcmlhYmxlLiBTZXQgdGhlIHNhbWUgdmFsdWUgZm9yCisJaXN0b2JlIGFzIG9uIGFjdF90cmlnZ2VycyBhcyBmb3IgYWN0X2NvbmZpZ3VyZS4gUHJpbnQgdGhlIHNhbWUgbWVzc2FnZQorCXdoZW4gZXJhc2luZyB0aGUgcXVldWUgZW50cnkgb24gYWN0X3RyaWdnZXJzIGFzIGZvciBhY3RfY29uZmlndXJlLgorCUFkZCBwYWNrYWdlcyB3aGljaCBjYW4gYmUgZml4ZWQgYnkgbWVhbnMgb2YgcHJvY2Vzc2luZyB0aGVpciB0cmlnZ2VycworCXRvIHRoZSBxdWV1ZSBhbmQgc2V0IHRoZSBhY3Rpb24gdG8gYWN0X2NvbmZpZ3VyZS4gT24gYWN0X3RyaWdnZXJzCisJb2hzaGl0IGlmIHRyaWdwZW5kX2hlYWQgaXMgTlVMTCwgb3RoZXJ3aXNlIGZhbGwgdGhyb3VnaCB0bworCWFjdF9pbnN0YWxsLiBPbiBhY3RfY29uZmlndXJlIGNhbGwgdHJpZ3Byb2MgaWYgdGhlcmUncyBwZW5kaW5nCisJdHJpZ2dlcnMgb3IgY2FsbCBkZWZlcnJlZF9jb25maWd1cmUuCisJKGRlcHBvc3NpX29rX2ZvdW5kKTogQWRkIGEgbmV3IGZpeGJ5dHJpZyBhcmd1bWVudCwgZml4IGFsbCBjYWxsZXJzLgorCVRyZWF0IHRyaWdnZXIgc3RhdHVzZXMgdGhlIHNhbWUgd2F5IGFzIGluc3RhbGxlZC4gSGFuZGxlIGRlcGVuZGVlCisJdHJpZ2dlciBzdGF0dXNlcy4KKwkoZGVwZW5kZW5jaWVzX29rKTogSGFuZGxlIHBhY2thZ2VzIHdoaWNoIGNhbiBiZSBmaXhlZCBieSBtZWFucyBvZgorCXByb2Nlc3NpbmcgdGhlaXIgdHJpZ2dlcnMuCisJKiBzcmMvcHJvY2Vzc2FyYy5jIChwcm9jZXNzX2FyY2hpdmUpOiBFbnN1cmUgZmlsZSB0cmlnZ2VycyBpbnRlcnN0cy4KKwlBY3RpdmF0ZSB0cmlnZ2VyIHBhY2thZ2UgcHJvY2Vzc3NpbmcuIFBhcnNlIHBhY2thZ2UgdHJpZ2dlcnMgY29udHJvbAorCWZpbGUgYmVmb3JlIHJlYWRpbmcgdGhlIGNvbmZmaWxlcy4gVHJlYXQgdHJpZ2dlciBzdGF0dXNlcyB0aGUgc2FtZQorCXdheSBhcyBpbnN0YWxsZWQuIEFjdGl2YXRlIHRyaWdnZXIgcGFja2FnZSBwcm9jZXNzaW5nIGZvciB0aGUgcGFja2FnZQorCWJlaW5nIGRlY29uZmlndXJlZCBhbmQgZm9yIGNvbmZsaWN0b3JzLiBQYXJzZSBwYWNrYWdlIGNvbnRyb2wgZmlsZQorCXRvIGRlbGV0ZSB0aGUgcGFja2FnZSBhbmQgcGFyc2UgaXQgYWdhaW4gdG8gcmUtYWRkIGl0IGFuZCB0aGVuIHNhdmUKKwl0aGUgZmlsZSB0cmlnZ2VycyBpbnRlcmVzdHMuIEFjdGl2YXRlIHRyaWdnZXIgcGFja2FnZSBwcm9jZXNzaW5nIGZvcgorCWRpc2FwcGVhcmluZyBwYWNrYWdlcy4KKwkqIHNyYy9xdWVyeS5jIChsaXN0MXBhY2thZ2UpOiBBZGQgdHJpZ2dlciBzdGF0dXNlcyB0byB0aGUgbGlzdGluZworCWhlYWRlciBhbmQgdG8gdGhlIG9uZSBsZXR0ZXIgc3RhdHVzZXMuCisJKiBzcmMvcmVtb3ZlLmMgKGNoZWNrZm9ycmVtb3ZhbCk6IFRyZWF0IHRyaWdnZXIgc3RhdHVzZXMgaW4gdGhlIHNhbWUKKwl3YXkgYXMgaW5zdGFsbGVkLgorCShkZWZlcnJlZF9yZW1vdmUpOiBBY3RpdmF0ZSB0cmlnZ2VyIHBhY2thZ2UgcHJvY2Vzc2luZy4gT3BlcmF0ZSBvbgorCXBhY2thZ2VzIHdpdGggaGFsZmNvbmZpZ3VyZWQgb3IgaGlnaGVyIHN0YXR1cy4KKwkocmVtb3ZhbF9idWxrX3JlbW92ZV9jb25maWdmaWxlcyk6IEFjdGl2YXRlIHRyaWdnZXIgcGFja2FnZSBwcm9jZXNzaW5nLgorCisyMDA4LTAzLTI4ICBJYW4gSmFja3NvbiAgPGlhbkBkYXZlbmFudC5ncmVlbmVuZC5vcmcudWs+CisKKwkqIHNyYy9wYWNrYWdlcy5jIChkZXBwb3NzaV9va19mb3VuZCk6IFJlZmFjdG9yIHJldHVybmluZyBjb2RlLgorCisyMDA4LTAzLTI4ICBJYW4gSmFja3NvbiAgPGlhbkBkYXZlbmFudC5ncmVlbmVuZC5vcmcudWs+CisKKwkqIHNyYy9kZXBjb24uYyAoZGVwaXNvayk6IEltcHJvdmUgd2h5bm90IG1lc3NhZ2UgYnkgc3RhdGluZyB3aGVuIGEKKwlwYWNrYWdlIGlzIGluc3RhbGxlZCB3aXRoICdpcyBwcmVzZW50Jy4KKworMjAwOC0wMy0yOCAgSWFuIEphY2tzb24gIDxpYW5AZGF2ZW5hbnQuZ3JlZW5lbmQub3JnLnVrPgorCisJKiBzcmMvaGVscC5jIChjdV9wb3N0X3NjcmlwdF90YXNrcyk6IE5ldyBmdW5jdGlvbi4KKwkoZG9fc2NyaXB0KTogSW5zdGFsbCBjdV9wb3N0X3NjcmlwdF90YXNrcyBhcyBhIGNsZWFudXAgaGFuZGxlci4KKwkobWFpbnRhaW5lcl9zY3JpcHRfYWx0ZXJuYXRpdmUpOiBDYWxsIHBvc3Rfc2NyaXB0X3Rhc2tzIGlmIHRoZQorCWZpcnN0IGRvX3NjcmlwdCBpbnZva2F0aW9uIGZhaWxzIGluc3RlYWQgb2YgaXQgc3VjY2VlZGluZy4KKworMjAwOC0wMy0yOCAgSWFuIEphY2tzb24gIDxpYW5AZGF2ZW5hbnQuZ3JlZW5lbmQub3JnLnVrPiwKKyAgICAgICAgICAgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNyYy9tYWluLmggKG1haW50YWluZXJfc2NyaXB0X3Bvc3RpbnN0KTogTmV3IHByb3RvdHlwZS4KKwkqIHNyYy9oZWxwLmMgKHBvc3Rfc2NyaXB0X3Rhc2tzKTogTmV3IGZ1bmN0aW9uLgorCShtYWludGFpbmVyX3NjcmlwdF9pbnN0YWxsZWQpOiBSZW5hbWVkIHRvIC4uLgorCSh2bWFpbnRhaW5lcl9zY3JpcHRfaW5zdGFsbGVkKTogLi4uIHRoaXMuIERvdCBub3QgY2FsbAorCWVuc3VyZV9kaXZlcnNpb25zLgorCShtYWludGFpbmVyX3NjcmlwdF9pbnN0YWxsZWQpOiBOZXcgZnVuY3Rpb24uCisJKG1haW50YWluZXJfc2NyaXB0X3Bvc3RpbnN0KTogTGlrZXdpc2UuCisJKG1haW50YWluZXJfc2NyaXB0X25ldyk6IENhbGwgcG9zdF9zY3JpcHRfdGFza3MgaW5zdGVhZCBvZiBkaXJlY3RseQorCWNhbGxpbmcgZW5zdXJlX2RpdmVyc2lvbnMuCisJKG1haW50YWluZXJfc2NyaXB0X2FsdGVybmF0aXZlKTogTGlrZXdpc2UuCisJKiBzcmMvY2xlYW51cC5jIChjdV9wcmVybXVwZ3JhZGUpOiBVc2UgbWFpbnRhaW5lcl9zY3JpcHRfcG9zdGluc3QKKwlpbnN0ZWFkIG9mIG1haW50YWluZXJfc2NyaXB0X2luc3RhbGxlZC4KKwkoY3VfcHJlcm1kZWNvbmZpZ3VyZSk6IExpa2V3aXNlLgorCShjdV9wcmVybWluZmF2b3VyKTogTGlrZXdpc2UuCisJKGN1X3ByZXJtcmVtb3ZlKTogTGlrZXdpc2UuCisJKGRlZmVycmVkX2NvbmZpZ3VyZSk6IExpa2V3aXNlLgorCSogc3JjL2NvbmZpZ3VyZS5jIChkZWZlcnJlZF9jb25maWd1cmUpOiBMaWtld2lzZS4KKworMjAwOC0wMy0yOCAgSWFuIEphY2tzb24gIDxpYW5AZGF2ZW5hbnQuZ3JlZW5lbmQub3JnLnVrPiwKKyAgICAgICAgICAgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNyYy9tYWluLmggKHBvc3RfcG9zdGluc3RfdGFza3MpOiBOZXcgcHJvdG90eXBlLgorCSogc3JjL2hlbHAuYyAocG9zdF9wb3N0aW5zdF90YXNrcyk6IE5ldyBmdW5jdGlvbi4KKwkqIHNyYy9jbGVhbnVwLmMgKGN1X3ByZXJtdXBncmFkZSk6IFVzZSBwb3N0X3Bvc3RpbnN0X3Rhc2tzIGluc3RlYWQgb2YKKwlkdXBsaWNhdGUgY29kZS4KKwkoY3VfcHJlcm1kZWNvbmZpZ3VyZSk6IExpa2V3aXNlLgorCShjdV9wcmVybWluZmF2b3VyKTogTGlrZXdpc2UuCisJKGN1X3ByZXJtcmVtb3ZlKTogTGlrZXdpc2UuCisJKiBzcmMvY29uZmlndXJlLmMgKGRlZmVycmVkX2NvbmZpZ3VyZSk6IExpa2V3aXNlLgorCisyMDA4LTAzLTI4ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzcmMvcGFja2FnZXMuYyAocHJvY2Vzc19xdWV1ZSk6IEZpeCB0eXBvIGluIGNvbW1lbnQuCisKKzIwMDgtMDMtMjggIElhbiBKYWNrc29uICA8aWFuQGRhdmVuYW50LmdyZWVuZW5kLm9yZy51az4KKworCSogc3JjL2hlbHAuYyAoc3RhdHVzc3RyaW5ncyk6IEltcHJvdmUgQnJlYWtzIG1lc3NhZ2UgYnkgc2F5aW5nIHRoYXQKKwlpdCBjYW4gYmUgaW4gdGhhdCBzdGF0dXMgZHVlIHRvIGEgZmFpbGVkIGluc3RhbGxhdGlvbi4KKworMjAwOC0wMy0yOSAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDogSWYgdGhlIHVzZXIgcmVxdWVzdCBhIGNyb3NzLWNvbXBpbGF0aW9uLAorCXRoZW4gZGVmaW5lIFBLR19DT05GSUdfTElCRElSIHNvIHRoYXQgaXQgd2lsbCBsb29rIGluIGRpcmVjdG9yaWVzCisJc3BlY2lkaWMgdG8gdGhlIHRhcmdldCBhcmNoaXRlY3R1cmUuCisJKiBtYW4vZHBrZy1idWlsZHBhY2thZ2UuMTogRG9jdW1lbnQgdGhpcyBjaGFuZ2UgYW5kIGFsc28gdGhlIC10IG9wdGlvbi4KKworMjAwOC0wMy0yOCAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDogTERGTEFHUyBub3cgZGVmYXVsdHMgdG8gYW4gZW1wdHkKKwl2YWx1ZSBpbnN0ZWFkIG9mICItV2wsLUJzeW1ib2xpYy1mdW5jdGlvbnMiLiBUaGUgbGF0dGVyIGNhbiBicmVhaworCXNvbWUgbGlicmFyaWVzIGF0IHJ1bi10aW1lIGFuZCBzdWNoIGEgY2hhbmdlIGlzIGJlc3QgZG9uZQorCWF0IHRoZSBiZWdpbm5pbmcgb2YgYSByZWxlYXNlIGN5Y2xlLgorCisyMDA4LTAzLTI4ICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBtYW4vZHBrZy1zb3VyY2UuMTogTW92ZSBhIHBhcmFncmFwaCBhdCBpdHMgcmlnaHQgcGxhY2UgYW5kIHNvbWUKKwlvdGhlciBwcmVzZW50YXRpb24gZml4ZXMuCisKKzIwMDgtMDMtMjcgIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvRHBrZy9TaGxpYnMucG06IFN1cHBvcnQgY3Jvc3MtY29tcGlsYXRpb24gYnkgYWRkaW5nCisJZGlyZWN0b3JpZXMgY29udGFpbmluZyBsaWJyYXJpZXMgZm9yIHRoZSBhcmNoaXRlY3R1cmUgdGhhdCBpcworCWJlaW5nIGNyb3NzYnVpbHQuCisKKzIwMDgtMDMtMjcgIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisgICAgICAgICAgICBGcmFuayBMaWNodGVuaGVsZCAgPGRqcGlnQGRlYmlhbi5vcmc+CisgICAgICAgICAgICBKb2V5IEhlc3MgIDxqb2V5aEBkZWJpYW4ub3JnPgorICAgICAgICAgICAgQ29saW4gV2F0c29uICA8Y2p3YXRzb25AZGViaWFuLm9yZz4KKworCSogTWVyZ2UgYnJhbmNoICdzb3VyY2V2MycuIEl0IGNvbnRhaW5zIGFuIGV4dGVuc2l2ZSByZWZhY3RvcmluZyBvZgorCWRwa2ctc291cmNlIGFyb3VuZCBtYW55IG5ldyBtb2R1bGVzIGluIHNjcmlwdHMvRHBrZy9Tb3VyY2UvLgorCisJR2VuZXJhbCBwdXJwb3NlIGNoYW5nZXM6CisJKiBzY3JpcHRzL0Rwa2cvSVBDLnBtOiBOZXcgbW9kdWxlIG9mZmVyaW5nIGZvcmtfYW5kX2V4ZWMoKSB0bworCWNvbnZlbmllbnRseSBleGVjdXRlIGFueSBwcm9ncmFtIGluIGEgY2hpbGQgcHJvY2Vzcy4gSXQgaGlkZXMKKwlhbGwgdGhlIGVycm9yIGNoZWNraW5nIGFuZCBsZXRzIHlvdSBlYXNpbHkgcmVkaXJlY3QgaW5wdXQgYW5kCisJb3V0cHV0IHN0cmVhbXMuCisJKiBzY3JpcHRzL3QvODAwX0Rwa2dfSVBDLnQ6IE5vbi1yZWdyZXNzaW9uIHRlc3RzIGZvciB0aGUgbW9kdWxlCisJYWJvdmUuCisJKiBzY3JpcHRzL0Rwa2cvRXhpdC5wbTogTmV3IG1vZHVsZSB0byByZWdpc3RlciBmdW5jdGlvbnMKKwl0aGF0IHdvdWxkIGJlIGNhbGxlZCBpZiB0aGUgcHJvY2VzcyB3YXMgaW50ZXJydXB0ZWQgYnkgYSBzaWduYWwuCisJVXNlZnVsIHRvIGNsZWFudXAgdGVtcG9yYXJ5IGZpbGVzIGlmIHdlJ3JlIGludGVycnVwdGVkIHdoaWxlIGRvaW5nCisJc29tZSBoZWF2eSBJL08gb3BlcmF0aW9uIChhcyBkcGtnLXNvdXJjZSBjYW4gZG8pLgorCSogc2NyaXB0cy9EcGtnL0Vycm9ySGFuZGxpbmcucG0gKGluZm8sIGVycm9ybXNnKTogaW5mbygpIHJlcG9ydHMKKwlpbmZvcm1hdGlvbmFsIG5vdGljZXMgb24gU1RET1VUIGFuZCBlcnJvcm1zZygpIGRpc3BsYXlzIGFuIGVycm9yCisJbWVzc2FnZSBvbiBTVERFUlIgd2l0aG91dCBkeWluZy4gVXNlIGl0IG9ubHkgd2hlbiB5b3Ugd2lsbCBkaWUKKwlsYXRlciBvbiBidXQgd2FudCB0byBkaXNwbGF5IGFsbCBlcnJvcnMgYmVmb3JlIGRvaW5nIHNvLgorCSogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDogSGVhdnkgcmV3cml0ZS9yZWZhY3RvcmluZyBiYXNlZCBvbgorCWFsbCB0aGUgbW9kdWxlcyBsaXN0ZWQgYmVsb3cuCisJKiBtYW4vZHBrZy1zb3VyY2UuMTogVXBkYXRlIHRoZSBtYW51YWwgcGFnZSB0byBkb2N1bWVudCBhbGwgdGhlCisJc291cmNlIHBhY2thZ2UgZm9ybWF0cyBhbmQgdGhlIGFzc29jaWF0ZWQgb3B0aW9ucy4KKworCURwa2c6OlNvdXJjZTo6KiBpbmZyYXN0cnVjdHVyYWwgbW9kdWxlczoKKwkqIHNjcmlwdHMvRHBrZy9Tb3VyY2UvQ29tcHJlc3Nvci5wbTogQ29tcHJlc3MgYW5kIHVuY29tcHJlc3MgYQorCXN0cmVhbSBvZiBkYXRhLgorCSogc2NyaXB0cy9EcGtnL1NvdXJjZS9Db21wcmVzc2VkRmlsZS5wbTogQmFzZSBjbGFzcyB1c2VkIHRvCisJcHJvdmlkZSBvbi10aGUtZmx5IGNvbXByZXNzaW9uIGFuZCBkZWNvbXByZXNzaW9uIG9mIGFueSBmaWxlLgorCURwa2c6OlNvdXJjZTo6QXJjaGl2ZSBhbmQgRHBrZzo6U291cmNlOjpQYXRjaCBpbmhlcml0IGZyb20gaXQuCisJKiBzY3JpcHRzL0Rwa2cvU291cmNlL0FyY2hpdmUucG06IENyZWF0ZSBhbmQgbWFuaXB1bGF0ZSB0YXIgZmlsZXMuCisJKiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOiBDcmVhdGUgYW5kIG1hbmlwdWxhdGUgcGF0Y2ggZmlsZXMuCisJKiBzY3JpcHRzL0Rwa2cvU291cmNlL0Z1bmN0aW9ucy5wbTogTWlzYyBoZWxwZXIgZnVuY3Rpb25zLgorCWVyYXNlZGlyKCkgcmVtb3ZlcyByZWN1cnNpdmVseSBhIGRpcmVjdG9yeSBpbiBhIHNhZmUgbWFubmVyLgorCWZpeHBlcm1zKCkgbWFrZSBzdXJlIHRoZSBwZXJtaXNzaW9ucyBvZiBhbGwgZmlsZXMgaW4gYSB0cmVlCisJYXJlIHNhbmUuCisKKwlTb3VyY2UgcGFja2FnZSBmb3JtYXRzOgorCSogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOiBCYXNlIGNsYXNzIGltcGxlbWVudGluZyB0aGUKKwlmdW5jdGlvbnMgY29tbW9uIHRvIGFsbCBzb3VyY2UgcGFja2FnZSBmb3JtYXRzLgorCSogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxXzAucG06IEltcGxlbWVudCB0aGUgYWN0dWFsCisJIkZvcm1hdDogMS4wIiBzb3VyY2UgcGFja2FnZSBmb3JtYXQuCisJKiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjJfMC5wbTogSW1wbGVtZW50IHRoZSB3aWcmcGVuCisJZm9ybWF0IGFzIHNwZWNpZmllZCBpbiBodHRwOi8vd3d3LmRwa2cub3JnL2Rwa2cvTmV3U291cmNlRm9ybWF0LgorCSogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzXzAvbmF0aXZlLnBtOiBOYXRpdmUgc291cmNlCisJcGFja2FnZXMgKHNpbmdsZSB0YXJiYWxsKSB0aGF0IHN1cHBvcnRzIGFsbCBjb21wcmVzc2lvbnMKKwltZXRob2RzLiBDb21wYXRpYmxlIHdpdGggIkZvcm1hdDogMS4wIiBpZiBnemlwIGNvbXByZXNzaW9uIGlzCisJdXNlZC4KKwkqIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WM18wL3F1aWx0LnBtOiBOZXh0IGdlbmVyYXRpb24KKwlzb3VyY2UgcGFja2FnZSBmb3JtYXQgYmFzZWQgb24gd2lnJnBlbi4gSXQgc3VwcG9ydHMgbXVsdGlwbGUKKwkub3JpZy50YXIgZmlsZXMgYW5kIGFsbCBjb21wcmVzc2lvbnMgc2NoZW1lcyAoZ3ppcCwgYnppcDIsIGx6bWEpLgorCUl0IHVzZXMgcXVpbHQgdG8gYXBwbHkgcGF0Y2hlcyBhdCB1bnBhY2sgdGltZSBhbmQgaXMgYWJsZSB0byBhZGQKKwlhIG5ldyBwYXRjaCBhdCB0aGUgZW5kIG9mIHRoZSBzZXJpZXMgaWYgY2hhbmdlcyBhcmUgcHJlc2VudAorCWF0IGJ1aWxkLXRpbWUuCisJKiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjNfMC9ienIucG06IEV4cGVyaW1lbnRhbCBmb3JtYXQKKwliYXNlZCBvbiBhIGJ6ciByZXBvc2l0b3J5LiBDb250cmlidXRlZCBieSBDb2xpbiBXYXRzb24uCisJKiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjNfMC9naXQucG06IEV4cGVyaW1lbnRhbCBmb3JtYXQKKwliYXNlZCBvbiBhIGdpdCByZXBvc2l0b3J5LiBDb250cmlidXRlZCBieSBKb2V5IEhlc3MuCisJKiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjNfMC9jdXN0b20ucG06IFNwZWNpYWwgcHVycG9zZQorCWZvcm1hdCB0aGF0IGNhbiBiZSB1c2VkIHRvIGNyZWF0ZSBzb3VyY2UgcGFja2FnZXMgd2l0aCBhcmJpdHJhcnkKKwlmaWxlcy4gVXNlZnVsIGZvciBoZWxwZXIgdG9vbHMgKGxpa2UgZ2l0LWJ1aWxkcGFja2FnZSkgd2hpY2ggY2FuCisJZ2VuZXJhdGUgc291cmNlIGZpbGVzIGJ5IHRoZW1zZWx2ZXMuCisKKzIwMDgtMDMtMjUgIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6IExldCB0aGUgdXNlciBjb25maWd1cmUgdGhlIHNldCBvZgorCXdhcm5pbmdzIHRoYXQgaGUgd2FudHMuIEFkZCBhIG5ldyB3YXJuaW5nIGZvciB1c2VsZXNzIGxpYnJhcmllcworCW9uIGFsbCBiaW5hcmllcyBhbmFseXplZC4gRGlzYWJsZSBieSBkZWZhdWx0IHRoZSB3YXJuaW5nIHRoYXQKKwlkb2VzIHRoZSBzYW1lIGJ1dCBpbmRpdmlkdWFsbHksIGZvciBlYWNoIGJpbmFyeSBhbmFseXplZC4KKwkqIG1hbi9kcGtnLXNobGliZGVwcy4xOiBVcGRhdGUgbWFudWFsIHBhZ2UgYWNjb3JkaW5nbHkuCisKKzIwMDgtMDMtMjUgIElhbiBKYWNrc29uICA8aWFuQGRhdmVuYW50LmdyZWVuZW5kLm9yZy51az4KKworCSogbGliL2Rwa2ctZGIuaCAobW9kc3RhdGRiX25vdGVfaWZ3cml0ZSk6IE5ldyBwcm90b3R5cGUuCisJKiBpYi9kYm1vZGlmeS5jIChtb2RzdGF0ZGJfbm90ZV9pZndyaXRlKTogTmV3IGZ1bmN0aW9uLgorCisyMDA4LTAzLTI1ICBJYW4gSmFja3NvbiAgPGlhbkBkYXZlbmFudC5ncmVlbmVuZC5vcmcudWs+CisKKwkqIHNyYy9hcmNoaXZlcy5jIChhcmNoaXZlZmlsZXMpOiBDYWxsIGxvZ19tZXNzYWdlLgorCSogc3JjL2NvbmZpZ3VyZS5jIChkZWZlcnJlZF9jb25maWd1cmUpOiBMaWtld2lzZS4KKwkqIHNyYy9wYWNrYWdlcy5jIChwYWNrYWdlcyk6IExpa2V3aXNlLgorCSogc3JjL3Byb2Nlc3NhcmMuYyAocHJvY2Vzc19hcmNoaXZlKTogQ2FsbCBsb2dfYWN0aW9uIGFmdGVyIHByaW50aW5nCisJdGhlIGFjdGlvbiB0byBwZXJmb3JtIHRvIHN0ZG91dC4KKwkqIHNyYy9oZWxwLmMgKGxvZ19hY3Rpb24pOiBDYWxsIHN0YXR1c2ZkX3NlbmQuCisJKiBtYW4vZHBrZy4xOiBEb2N1bWVudCBpbXByb3ZlZCBzdGF0dXMtZmQgb3V0cHV0LgorCisyMDA4LTAzLTI1ICBJYW4gSmFja3NvbiAgPGlhbkBkYXZlbmFudC5ncmVlbmVuZC5vcmcudWs+LAorICAgICAgICAgICAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogbGliL2RibW9kaWZ5LmMgKHN0YXR1c19waXBlcyk6IE1vdmUgZGVmaW5pdGlvbnMgdG8gLi4uCisJKiBsaWIvbG9nLmM6IC4uLiBoZXJlLgorCSogbGliL2Rwa2ctZGIuaCAoc3RydWN0IHBpcGVmLCBzdGF0dXNfcGlwZXMpOiBNb3ZlIGRlY2xhcmF0aW9ucyB0byAuLi4KKwkqIGxpYi9kcGtnLmg6IC4uLiBoZXJlLgorCShzdGF0dXNmZF9zZW5kKTogTmV3IGZ1bmN0aW9uIHByb3RveXBlLgorCSogbGliL2xvZy5jOiBJbmNsdWRlIDxhc3NlcnQuaD4gYW5kIDx1bmlzdGQuaD4uCisJKHN0YXR1c2ZkX3NlbmQpOiBOZXcgZnVuY3Rpb24uCisJKiBsaWIvZGJtb2RpZnkuYzogVXNlIHN0YXR1c2ZkX3NlbmQgaW5zdGVhZCBvZiBkdXBsaWNhdGUgY29kZS4KKwkqIHNyYy9jb25maWd1cmUuYzogTGlrZXdpc2UuCisJKiBzcmMvZXJyb3JzLmM6IExpa2V3aXNlLgorCisyMDA4LTAzLTI1ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBsaWIvZGJtb2RpZnkuYyAobG9nX2ZpbGUsIGxvZ19tZXNzYWdlKTogTW92ZSB0byAuLi4KKwkqIGxpYi9sb2cuYzogLi4uIGhlcmUuIE5ldyBmaWxlLgorCSogbGliL01ha2VmaWxlLmFtIChsaWJkcGtnX2FfU09VUkNFUyk6IEFkZCAnbG9nLmMnLgorCSogbGliL2Rwa2ctZGIuaCAobG9nX2ZpbGUsIGxvZ19tZXNzYWdlKTogTW92ZSBkZWNsYXJhdGlvbiB0byAuLi4KKwkqIGxpYi9kcGtnLmg6IC4uLiBoZXJlLgorCisyMDA4LTAzLTI1ICBJYW4gSmFja3NvbiAgPGlhbkBkYXZlbmFudC5ncmVlbmVuZC5vcmcudWs+LAorICAgICAgICAgICAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc3JjL3BhY2thZ2VzLmMgKHN0cnVjdCBwa2dpbnF1ZXVlKTogTW92ZSBkZWNsYXJhdGlvbiB0byAuLi4KKwkqIHNyYy9tYWluLmg6IC4uLiBoZXJlLgorCShxdWV1ZWxlbik6IFJlbW92ZSBleHRlcm4gZGVjbGFyYXRpb24uCisJKHN0cnVjdCBwa2dxdWV1ZSk6IE5ldyBkZWNsYXJhdGlvbi4KKwkoUEtHUVVFVUVfREVGX0lOSVQpOiBOZXcgbWFjcm8uCisJKGFkZF90b19zb21lX3F1ZXVlKTogTmV3IGZ1bmN0aW9uIHByb3RvdHlwZS4KKwkocmVtb3ZlX2Zyb21fc29tZV9xdWV1ZSk6IExpa2V3aXNlLgorCSogc3JjL3BhY2thZ2VzLmMgKHF1ZXVlaGVhZCwgcXVldWV0YWlsLCBxdWV1ZWxlbik6IFJlcGxhY2Ugd2l0aCAuLi4KKwkocXVldWUpOiAuLi4gdGhpcy4gTmV3IHZhcmlhYmxlLiBGaXggYWxsIHVzZXJzLgorCShhZGRfdG9fcXVldWUpOiBSZWZhY3RvciBpbnRvIC4uLgorCShhZGRfdG9fc29tZV9xdWV1ZSk6IC4uLiB0aGlzLiBUYWtlIGEgc3RydWN0IHBrZ3F1ZXVlIGFyZ3VtZW50LgorCShwcm9jZXNzX3F1ZXVlKTogQXNzZXJ0IHRoYXQgdGhlIHF1ZXVlIGlzIGVtcHR5IGF0IHRoZSBlbmQgb2YgdGhlCisJZnVuY3Rpb24uIFJlZmFjdG9yIHF1ZXVlIGVudHJ5IHJlbW92YWwgaW50byAuLi4KKwkocmVtb3ZlX2Zyb21fc29tZV9xdWV1ZSk6IC4uLiB0aGlzLiBOZXcgZnVuY3Rpb24uCisJKGFkZF90b19xdWV1ZSk6IE5ldyBmdW5jdGlvbi4KKworMjAwOC0wMy0yNSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc3JjL21haW4uaCAoZW5zdXJlX3BhY2thZ2VfY2xpZW50ZGF0YSk6IE1vdmUgcHJvdG90eXBlIHRvIC4uLgorCSogc3JjL2ZpbGVzZGIuaDogLi4uIGhlcmUuCisJKiBzcmMvaGVscC5jIChlbnN1cmVfcGFja2FnZV9jbGllbnRkYXRhKTogTW92ZSBmdW5jdGlvbiB0byAuLi4KKwkqIHNyYy9maWxlc2RiLmM6IC4uLiBoZXJlLgorCSogc3JjL3F1ZXJ5LmM6IFJlbW92ZSBkdXBsaWNhdGUgZnVuY3Rpb24uCisKKzIwMDgtMDMtMjUgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGxpYi9kcGtnLWRiLmggKHVubG9ja2RhdGFiYXNlKTogQ2hhbmdlIHByb3RvdHlwZSB0byBub3QgdGFrZSBhbnkKKwlhcmd1bWVudCAoYXMgaXQgd2FzIG5vdCBiZWluZyB1c2VkKS4gRml4IGFsbCBjYWxsZXJzLgorCSogbGliL2xvY2suYyAodW5sb2NrZGF0YWJhc2UpOiBMaWtld2lzZS4KKworMjAwOC0wMy0yNSAgSWFuIEphY2tzb24gIDxpYW5AZGF2ZW5hbnQuZ3JlZW5lbmQub3JnLnVrPiwKKyAgICAgICAgICAgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGxpYi9kcGtnLmggKGxvY2tfZmlsZSk6IE5ldyBmdW5jdGlvbiBwcm90b3R5cGUuCisJKHVubG9ja19maWxlKTogTGlrZXdpc2UuCisJKiBsaWIvbG9jay5jIChjdV91bmxvY2tkYik6IFJlbmFtZSB0byAuLi4KKwkoY3VfdW5sb2NrX2ZpbGUpOiAuLi4gaGVyZS4gUmVuYW1lIGRibG9ja2ZkIHRvIGxvY2tmZCwgYW5kIHRha2UgaXQKKwlmcm9tIGFyZ3YuCisJKHVubG9ja19maWxlKTogTmV3IGZ1bmN0aW9uLgorCShsb2NrX2ZpbGUpOiBMaWtld2lzZS4KKwkoZGJsb2NrZmQpOiBNb3ZlIHZhcmlhYmxlIHRvIC4uLgorCShsb2NrZGF0YWJhc2UpOiAuLi4gaGVyZS4gQ2FsbCBsb2NrX2ZpbGUgaW5zdGVhZCBvZiBkb2luZyB0aGUKKwlhY3R1YWwgZmlsZSBsb2NraW5nLgorCSh1bmxvY2tkYXRhYmFzZSk6IENhbGwgdW5sb2NrX2ZpbGUsIGluc3RlYWQgaWYgZG9pbmcgdGhlIGFjdHVhbAorCXBvcF9jbGVhbnVwLgorCisyMDA4LTAzLTI0ICBJYW4gSmFja3NvbiAgPGlhbkBkYXZlbmFudC5ncmVlbmVuZC5vcmcudWs+CisKKwkqIGxpYi9kcGtnLmggKGVycm9yX3ByaW50ZXIpOiBOZXcgZnVuY3Rpb24gcG9pbnRlciB0eXBlLgorCShwdXNoX2Vycm9yX2hhbmRsZXIpOiBVc2UgZXJyb3JfcHJpbnRlciBpbnN0ZWFkIG9mIGFuIGV4cGxpY2l0CisJZGVjbGFyYXRpb24gaW4gdGhlIGFyZ3VtZW50IGxpc3QuCisJKHNldF9lcnJvcl9kaXNwbGF5KTogTGlrZXdpc2UuCisJKiBsaWIvZWhhbmRsZS5jIChwdXNoX2Vycm9yX2hhbmRsZXIpOiBMaWtld2lzZS4KKwkoc2V0X2Vycm9yX2Rpc3BsYXkpOiBMaWtld2lzZS4KKworMjAwOC0wMy0yMyAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogY29uZmlndXJlLmFjIChEUEtHX0NIRUNLX0NPTVBBVF9GVU5DUyk6IEFkZCAnc3RybmxlbicuCisJKiBsaWJjb21wYXQvTWFrZWZpbGUuYW0gWyFIQVZFX1NUUk5MRU5dIChsaWJjb21wYXRfYV9TT1VSQ0VTKTogQWRkCisJJ3N0cm5sZW4uYycgYW5kICdzdHJubGVuLmgnLgorCSogbGliY29tcGF0L3N0cm5sZW4uYzogTmV3IGZpbGUgKGltcG9ydCBmcm9tIFNpbW9uIEpvc2Vmc3NvbikuCisJKiBsaWJjb21wYXQvc3Rybmxlbi5oOiBMaWtld2lzZS4KKwkqIGxpYi90YXJmbi5jOiBJbmNsdWRlICJzdHJubGVuLmgiLgorCisyMDA4LTAzLTIyICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL3QvMjAwX0Rwa2dfU2hsaWJzLnQ6IEZpeCB0ZXN0IHN1aXRlIHRvIGhhbmRsZSB0aGUKKwlyZWNlbnQgYWRkaXRpb24gb2YgdGhlICJvYmppZCIgZmllbGQgdG8gc3ltYm9sIGhhc2ggcmV0dXJuZWQKKwlieSBEcGtnOjpTaGxpYnM6Ok9ianVtcDo6T2JqZWN0LT5nZXRfc3ltYm9sKCkuCisKKzIwMDgtMDMtMjIgIElhbiBKYWNrc29uICA8aWFuQGRhdmVuYW50LmdyZWVuZW5kLm9yZy51az4KKworCSogbGliL2Rwa2ctZGIuaCAoZW51bSBwa2dzdGF0dXMpOiBTb3J0IGVudHJpZXMuCisJKiBsaWIvZHVtcC5jICh3X3N0YXR1cyk6IENoYW5nZSAnc3RhdF9jb25maWdmaWxlcycgdG8gJ3N0YXRfaW5zdGFsbGVkJworCWluIGFzc2VydCBhcyB0aGF0J3MgdGhlIG5ldyBsYXN0IGl0ZW0uCisJKiBzcmMvcHJvY2Vzc2FyYy5jIChwcm9jZXNzX2FyY2hpdmUpOiBMaWtld2lzZS4KKwkqIHNyYy9wYWNrYWdlcy5jIChwcm9jZXNzX3F1ZXVlKTogTGlrZXdpc2UuCisJKGRlcHBvc3NpX29rX2ZvdW5kKTogTWF0Y2ggc29ydGluZyBvZiAnZW51bSBwa2dzdGF0dXMnLgorCSogZHNlbGVjdC9wa2dkaXNwbGF5LmNjIChzdGF0dXNzdHJpbmdzKTogTGlrZXdpc2UuCisJKHN0YXR1c2NoYXJzKTogTGlrZXdpc2UuCisJKiBzcmMvaGVscC5jIChzdGF0dXNzdHJpbmdzKTogTGlrZXdpc2UuCisJKiBzcmMvcXVlcnkuYyAobGlzdDFwYWNrYWdlKTogTGlrZXdpc2UuCisJKiBsaWIvcGFyc2VoZWxwLmMgKHN0YXR1c2luZm9zKTogTGlrZXdpc2UuCisKKzIwMDgtMDMtMjEgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGxpYi9wYXJzZS5jIChjdV9wYXJzZWRiKTogUmVtb3ZlIGR1cGxpY2F0ZSBmdW5jdGlvbi4KKwkocGFyc2VkYik6IFVzZSBjdV9jbG9zZWZkIGluc3RlYWQgb2YgY3VfcGFyc2VkYi4KKworMjAwOC0wMy0yMSAgSWFuIEphY2tzb24gIDxpYW5AZGF2ZW5hbnQuZ3JlZW5lbmQub3JnLnVrPgorCisJKiBzcmMvYXJjaGl2ZXMuYyAodGFyb2JqZWN0KTogTWFrZSAnZmQnIHN0YXRpYy4KKwkqIGxpYi9wYXJzZS5jIChwYXJzZWRiKTogTGlrZXdpc2UuIFVzZSBlaGZsYWdfbm9ybWFsdGlkeSBvbgorCXB1c2hfY2xlYW51cCBhbmQgcG9wX2NsZWFudXAuIE1vdmUgcG9wX2NsZWFudXAgY2FsbCBqdXN0IGJlZm9yZSBpdHMKKwlyZWxhdGVkIGNsb3NlIGNhbGwuCisJKiBzcmMvcHJvY2Vzc2FyYy5jIChwcm9jZXNzX2FyY2hpdmUpOiBEbyBub3QgaW5zdGFsbCB0d28gY2xlYW51cAorCWhhbmRsZXJzIHRvIGNsb3NlIHRoZSBmc3lzLXRhcmZpbGUgcGlwZS4gTWFyayBwaXBlIGRlc2NyaXB0b3JzIHdpdGgKKwlpbnZhbGlkIHZhbHVlcyB3aGVuIGNsb3NlZC4KKworMjAwOC0wMy0yMCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogZHBrZy1kZWIvZXh0cmFjdC5jIChzYWZlX2ZmbHVzaCk6IENoYW5nZSByZXR1cm4gdHlwZSBmcm9tIGludCB0bworCXZvaWQuCisKKzIwMDgtMDMtMjAgIElhbiBKYWNrc29uICA8aWFuQGRhdmVuYW50LmdyZWVuZW5kLm9yZy51az4KKworCSogbGliL2Rwa2cuaCAoY2lzc3BhY2UpOiBOZXcgcHJvdG90eXBlLgorCSogbGliL3V0aWxzLmMgKGNpc3NwYWNlKTogTmV3IGZ1bmN0aW9uIGRlZmluaXRpb24uCisKKzIwMDgtMDMtMjAgIElhbiBKYWNrc29uICA8aWFuQGRhdmVuYW50LmdyZWVuZW5kLm9yZy51az4KKworCSogc3JjL21haW4uaCAocGtnYWRtaW5maWxlKTogTW92ZSBwcm90b3R5cGUgdG8gLi4uCisJKiBsaWIvZHBrZy1kYi5oOiAuLi4gaGVyZS4KKwkqIHNyYy9oZWxwLmMgKHBrZ2FkbWluZmlsZSk6IE1vdmUgZnVuY3Rpb24gZGVmaW5pdGlvbiB0byAuLi4KKwkqIGxpYi9kYm1vZGlmeS5jOiAuLi4gaGVyZS4KKwkqIHNyYy9xdWVyeS5jIChwa2dhZG1pbmZpbGUpOiBSZW1vdmUgZHVwbGljYXRlZCBmdW5jdGlvbnMuCisKKzIwMDgtMDMtMjAgIElhbiBKYWNrc29uICA8aWFuQGRhdmVuYW50LmdyZWVuZW5kLm9yZy51az4sCisgICAgICAgICAgICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzcmMvcXVlcnkuYyAoY3VfY2xvc2VwaXBlLCBjdV9jbG9zZWZpbGUsIGN1X2Nsb3NlZmQpOiBSZW1vdmUKKwlkdXBsaWNhdGVkIGZ1bmN0aW9ucy4KKwkqIHNyYy9oZWxwLmMgKGN1X2Nsb3NlcGlwZSwgY3VfY2xvc2VmaWxlLCBjdV9jbG9zZWRpcikKKwkoY3VfY2xvc2VmZCk6IE1vdmUgZnVuY3Rpb24gZGVmaW5pdGlvbnMgdG8gLi4uCisJKiBsaWIvY2xlYW51cC5jOiAuLi4gaGVyZS4gTmV3IGZpbGUuCisJKiBzcmMvbWFpbi5oIChjdV9jbG9zZWZpbGUsIGN1X2Nsb3NlcGlwZSwgY3VfY2xvc2VkaXIpCisJKGN1X2Nsb3NlZmQpOiBNb3ZlIHByb3RvdHlwZXMgdG8gLi4uCisJKiBsaWIvZHBrZy5oOiAuLi4gaGVyZS4KKwkqIGxpYi9NYWtlZmlsZS5hbSAobGliZHBrZ19hX1NPVVJDRVMpOiBBZGQgJ2NsZWFudXAuYycuCisKKzIwMDgtMDMtMjAgIElhbiBKYWNrc29uICA8aWFuQGRhdmVuYW50LmdyZWVuZW5kLm9yZy51az4KKworCSogbGliL2Rwa2ctZGIuaCAobW9kc3RhdGRiX2NoZWNrcG9pbnQpOiBOZXcgcHJvdG90eXBlLgorCSogbGliL2RibW9kaWZ5LmMgKGNoZWNrcG9pbnQpOiAgUmVtb3ZlIHN0YXRpYyBrZXl3b3JkLiBSZW5hbWUgdG8gLi4uCisJKG1vZHN0YXRkYl9jaGVja3BvaW50KTogLi4uIHRoaXMuIEZpeCBhbGwgY2FsbGVycy4KKworMjAwOC0wMy0yMCAgSWFuIEphY2tzb24gIDxpYW5AZGF2ZW5hbnQuZ3JlZW5lbmQub3JnLnVrPgorCisJKiBsaWIvdGFyZm4uYyAoVGFyRXh0cmFjdG9yKTogSW5pdGlhbGl6ZSBoLkxpbmtOYW1lIGFuZCBoLk5hbWUgdG8KKwlOVUxMLgorCisyMDA4LTAzLTE2ICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL0Rwa2cvU2hsaWJzL09iamR1bXAucG06IEFkZCAib2JqaWQiIHByb3BlcnR5IHRvCisJc3ltYm9scyBhbmQgZmFrZSAic29uYW1lIiBwcm9wZXJ0eSB3aXRoIHRoZSBiYXNlbmFtZSBvZiB0aGUKKwlvYmplY3QncyBmaWxlbmFtZSBpZiB0aGUgb2JqZWN0IGhhcyBubyBvZmZpY2lhbCBTT05BTUUuCisJKiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOiBBZGQgc29tZSBtb3JlIGRlYnVnZ2luZyBtZXNzYWdlcy4KKwkqIHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6IEFsc28gY291bnQgdXNhZ2Ugb2YgYWx0ZXJuYXRlIHNvbmFtZXMKKwlmb3Igc3ltYm9scyBmb3VuZCBpbiBzeW1ib2xzIGZpbGVzLgorCisyMDA4LTAzLTE2ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBjb25maWd1cmUuYWMgKEFDX0NIRUNLX0hFQURFUlMpOiBBZGQgJ2xpYmludGwuaCcuCisJKiBsaWIvZ2V0dGV4dC5oIFshRU5BQkxFX05MU106IFVzZSBIQVZFX0xJQklOVExfSCBpbnN0ZWFkIG9mCisJJyhfX0dMSUJDX18gPj0gMiknLgorCisyMDA4LTAzLTE1ICBFcmFzdCBCZW5zb24gIDxlcmFzdEBnbnVzb2xhcmlzLm9yZz4KKworCSogdXRpbHMvc3RhcnQtc3RvcC1kYWVtb24uYyAoY2hlY2spOiBNb3ZlICdyZXR1cm4nIGluc2lkZSBwcmVwcm9jZXNzb3IKKwljb25kaXRpb25hbHMsIHNvIHRoYXQgaXQgZG9lcyBub3QganVzdCByZXR1cm4gb24gbm9uLWhhbmRsZWQgT1Nlcy4KKworMjAwOC0wMy0xNSAgRXJhc3QgQmVuc29uICA8ZXJhc3RAZ251c29sYXJpcy5vcmc+CisKKwkqIHV0aWxzL3N0YXJ0LXN0b3AtZGFlbW9uLmM6IFVzZSBfX3N1biBpbnN0ZWFkIG9mIF9fc3BhcmNfXyB0bworCWRlZmluZSBPU3N1bm9zLgorCisyMDA4LTAzLTE1ICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBkZWJpYW4vZHBrZy5wcmVybTogUmVtb3ZlZCBhcyBpdCdzIGVtcHR5LgorCSogTWFrZWZpbGUuYW06IFJlbW92ZSBkZWJpYW4vZHBrZy5wcmVybSBmcm9tIEVYVFJBX0RJU1QuCisKKzIwMDgtMDMtMTQgIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRGViaWFuLnBtOiBGaXggcmVncmVzc2lvbiBieSByZS1hbGxvd2luZworCWNhcGl0YWxzIChsaWtlIFVOUkVMRUFTRUQhKSBpbiB0aGUgZGlzdHJpYnV0aW9uL3BhY2thZ2UgbmFtZS4KKwkqIHNjcmlwdHMvdC82MDBfRHBrZ19DaGFuZ2Vsb2cvcmVncmVzc2lvbnM6IEFkZCBjYXBpdGFscyBpbiB0aGUKKwlkaXN0cmlidXRpb24gbmFtZSBhcyBwYXJ0IG9mIHRoZSBub24tcmVncmVzc2lvbiB0ZXN0cy4KKworMjAwOC0wMy0xNCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCUZpeCBlcnJvcnMgc3BvdHRlZCBieSBIZWxnZSBLcmV1dHptYW5uLgorCisJKiBtYW4vZHBrZy1idWlsZHBhY2thZ2UuMTogUmVmZXIgdG8gJ0RlYmlhbicgbm90ICdkZWJpYW4nLiBSZW1vdmUgYQorCXNwYWNlIGJlb2ZyZSBhIGNvbW1hLiBSZXBsYWNlIEZGTEFHUyB3aXRoIENGTEFHUyB3aGVuIHJlZmVycmluZyB0bworCXVzYWdlIHNpbWlsYXIgdG8gQyBmb3IgRm9ydHJhbi4gRG8gbm90IG1ha2UgYm9sZCBhIHRlcm1pbmF0aW5nCisJcGFyZW50aGVzaXMuCisJKiBtYW4vZHBrZy1jaGVja2J1aWxkZGVwcy4xOiBNYXJrICdkZWJpYW4vY29udG9ybCcgZmlsZSB3aXRoIGl0YWxpY3MuCisKKzIwMDgtMDMtMTEgIElhbiBKYWNrc29uICA8aWFuQGRhdmVuYW50LmdyZWVuZW5kLm9yZy51az4sCisgICAgICAgICAgICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBsaWIvc2hvd2NyaWdodC5jOiBSZW5hbWUgdG8gLi4uCisJKiBsaWIvbXlvcHQtdXRpbC5jOiAuLi4gdGhpcy4KKwkqIGxpYi9NYWtlZmlsZS5hbSAobGliZHBrZ19hX1NPVVJDRVMpOiBSZW5hbWUgJ3Nob3djcmlnaHQuYycgdG8KKwknbXlvcHQtdXRpbC5jJy4KKworCSogbGliL2Rwa2cuaCAoc3RydWN0IGNtZGluZm8pOiBSZW1vdmUgZGVjbGFyYXRpb24uCisJKHNob3djb3B5cmlnaHQpOiBNb3ZlIHByb3RvdHlwZSB0byAuLi4KKwkqIGxpYi9teW9wdC11dGlsLmM6IC4uLiBoZXJlLgorCShoZWxwb25seSwgdmVyc2lvbm9ubHkpOiBOZXcgZnVuY3Rpb25zLgorCSogbGliL215b3B0Lmg6IEluY2x1ZGUgPGRwa2ctZGVmLmg+LgorCShzaG93Y29weXJpZ2h0LCBoZWxwb25seSwgdmVyc2lvbm9ubHksIHVzYWdlLCBwcmludHZlcnNpb24pOiBOZXcKKwlmdW5jdGlvbiBwcm90b3R5cGVzLgorCSogZHBrZy1kZWIvbWFpbi5jIChwcmludHZlcnNpb24sIHVzYWdlKTogUmVtb3ZlIHN0YXRpYyBrZXl3b3JkLgorCShoZWxwb25seSwgdmVyc2lvbm9ubHkpOiBSZW1vdmUgZnVuY3Rpb24gZGVjbGFyYXRpb25zIGFuZCBkZWZpbml0aW9ucy4KKwkqIGRwa2ctc3BsaXQvbWFpbi5jOiBMaWtld2lzZS4KKwkqIGRzZWxlY3QvbWFpbi5jYzogTGlrZXdpc2UuCisJKiBzcmMvbWFpbi5jOiBMaWtld2lzZS4KKwkqIHNyYy9xdWVyeS5jOiBMaWtld2lzZS4KKworMjAwOC0wMy0xMSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogbGliL3Nob3djcmlnaHQuYyAoc2hvd2NvcHlyaWdodCk6IE1vdmUgZnVuY3Rpb24gcHJvdG90eXBlIHRvIC4uLgorCSogbGliL2Rwa2cuaDogLi4uIGhlcmUsIGFuZCByZXBsYWNlIGV4aXN0aW5nIG9uZS4KKworMjAwOC0wMy0xMSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogbGliL01ha2VmaWxlLmFtIChsaWJkcGtnX2FfU09VUkNFUyk6IEFkZCAnZHBrZy1kZWYuaCcuCisJKiBsaWIvZHBrZy5oOiBJbmNsdWRlICdkcGtnLWRlZi5oJy4KKwkoQ09OU1RBTlQsIFBSSU5URkZPUk1BVCwgTk9OUkVUVVJOSU5HLCBVTlVTRUQpOiBNb3ZlIGRlZm5pbml0aW9ucworCXRvIC4uLgorCSogbGliL2Rwa2ctZGVmLmg6IC4uLiBoZXJlLiBOZXcgZmlsZS4KKwkqIHV0aWxzL3N0YXJ0LXN0b3AtZGFlbW9uLmM6IEluY2x1ZGUgJ2Rwa2ctZGVmLmgnLgorCShDT05TVEFOVCwgUFJJTlRGRk9STUFULCBOT05SRVRVUk5JTkcsIFVOVVNFRCk6IFJlbW92ZSBkZWZuaW5pdGlvbnMuCisKKzIwMDgtMDMtMTEgIElhbiBKYWNrc29uICA8aWFuQGRhdmVuYW50LmdyZWVuZW5kLm9yZy51az4KKworCSogbGliL2Rwa2cuaCAoZmdldHNfY2hlY2tlZCwgZmdldHNfbXVzdCk6IE5ldyBmdW5jdGlvbiBkZWNsYXJhdGlvbnMuCisJKiBsaWIvdXRpbHMuYzogSW5jbHVkZSA8c3RyaW5nLmg+LgorCShmZ2V0c19jaGVja2VkLCBmZ2V0c19tdXN0KTogTmV3IGZ1bmN0aW9uLgorCSogc3JjL2ZpbGVzZGIuYyAoZW5zdXJlX2RpdmVyc2lvbnMpOiBVc2UgbmV3IGZnZXRzX2NoZWNrZWQgYW5kCisJZmdldHNfbXVzdCBpbnN0ZWFkIG9mIGR1cGVkIGNvZGUuCisKKzIwMDgtMDMtMDkgIElhbiBKYWNrc29uICA8aWFuQGRhdmVuYW50LmdyZWVuZW5kLm9yZy51az4KKworCSogZHNlbGVjdC9wa2dkaXNwbGF5LmNjIChyZWxhdGVzdHJpbmdzKTogQ2hhbmdlICdicmVha3Mgd2l0aCcgdG8KKwknYnJlYWtzJy4KKworMjAwOC0wMy0wOSAgSWFuIEphY2tzb24gIDxpYW5AZGF2ZW5hbnQuZ3JlZW5lbmQub3JnLnVrPgorCisJKiBkc2VsZWN0L3BrZ2RlcGNvbi5jYyAocGFja2FnZWxpc3Q6OnJlc29sdmVkZXBjb24pOiBNb3ZlIGRlcF9icmVha3MKKwljYXNlIGFmdGVyIGRlcF9jb25mbGljdHMgc28gdGhhdCBpdCBmYWxscyB0aHJvdWdoLgorCShwYWNrYWdlbGlzdDo6ZGVwcG9zc2F0aXNmaWVkKTogSGFuZGxlIGRlcF9icmVha3MgaW4gdGhlIHNhbWUgd2F5IGFzCisJZGVwX2NvbmZsaWN0cy4KKworMjAwOC0wMy0wOSAgSWFuIEphY2tzb24gIDxpYW5AZGF2ZW5hbnQuZ3JlZW5lbmQub3JnLnVrPgorCisJKiBkc2VsZWN0L3BrZ2RlcGNvbi5jYyAocGFja2FnZWxpc3Q6OmRlcHBvc3NhdGlzZmllZCk6IFRoZSBuZXcgcnVsZQorCWlzIHRoYXQgYSBDb25mbGljdHMgaXMgdmlvbGF0ZWQgaWYgdGhlIHRhcmdldCBwYWNrYWdlIGlzIGluc3RhbGxlZAorCW9yIHRvIGJlIGVycm9yLXByZXNlcnZlZCBpZSB3b3VsZF9saWtlX3RvX2luc3RhbGwoKSAhPSAwIC0gZXhjZXB0CisJdGhhdCB3ZSBkaXNyZWdhcmQgcGFja2FnZXMgd2hpY2ggZGlyZWN0bHkgQ29uZmxpY3Qgd2l0aCB0aGVtc2VsdmVzLgorCisyMDA4LTAzLTA3ICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL0Rwa2cvRmllbGRzLnBtOiBJbXBvcnQgRHBrZzo6R2V0dGV4dCBzaW5jZSB3ZSB1c2UgX2coKS4KKworMjAwOC0wMy0wNiAgU2VhbiBGaW5uZXkgIDxzZWFuaXVzQHNlYW5pdXMubmV0PgorCisJKiBsaWIvZHVtcC5jICh3cml0ZWRiKTogRnJlZSBuZXdmbiBhbmQgb2xkZm4uCisJKiBzcmMvaGVscC5jIChjbGVhcl9pc3RvYmVzKTogRnJlZSBwa2dpdGVyYXRvciAnaXQnIGJ5IGNhbGxpbmcKKwlpdGVycGtnZW5kLgorCisyMDA4LTAzLTAyICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbCwgc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDoKKwlEbyBub3Qgc29ydCB0aGUgZGVwZW5kZW5jeSBmaWVsZHMgYXMgb3JkZXIgbWF0dGVycyBnaXZlbgorCXRoZSBncmVlZHkgYWxnb3JpdGhtIHRoYXQgQVBUIHVzZXMgd2hlbiB0cnlpbmcgdG8gcmVzb2x2ZQorCWRlcGVuZGVuY2llcy4gU2VlIGRpc2N1c3Npb24gb24gZGViaWFuLWRldmVsOgorCWh0dHA6Ly9saXN0cy5kZWJpYW4ub3JnL2RlYmlhbi1kZXZlbC8yMDA4LzAyL21zZzAwODkzLmh0bWwKKwkqIG1hbi9kcGtnLWdlbmNvbnRyb2wuMTogRG9jdW1lbnQgdGhlIGFib3ZlIGNoYW5nZXMuCisKKwkqIHNjcmlwdHMvRHBrZy9EZXBzLnBtIChzaW1wbGlmeV9kZXBzKTogVHJpZXMgdG8gcmVzcGVjdCBvcmRlciBwdXQKKwlieSB0aGUgbWFpbnRhaW5lciB3aGVuIHNpbXBsaWZ5aW5nIGRlcGVuZGVuY2llcy4KKwkqIHNjcmlwdHMvdC80MDBfRHBrZ19EZXBzLnQ6IEFkZCBhIHRlc3QtY2FzZSB0byBlbnN1cmUgdGhhdAorCWZ1cnRoZXIgY2hhbmdlcyByZXNwZWN0IHRoaXMgY29uc3RyYWludC4KKworCSogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDogU29ydCBnZW5lcmF0ZWQgZGVwZW5kZW5jaWVzIHRvCisJaGF2ZSBhIGRldGVybWluaXN0aWMgb3V0cHV0LgorCisyMDA4LTAyLTI5ICBGcmFuayBMaWNodGVuaGVsZCAgPGRqcGlnQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRGViaWFuLnBtIChwYXJzZSk6CisJT25lIHBhdGNoIGFnYWluc3QgdGhlIG9sZCBwYXJzZXIgdGhhdCBhbGxvd2VkCisJY2hhcnMgJysnIGFuZCAnLicgaW4gZGlzdHJpYnV0aW9uIG5hbWVzIHdhcworCW5vdCBmb3J3YXJkIHBvcnRlZCBpbnRvIHRoZSBuZXcgcGFyc2VyLiBEbworCXRoaXMgbm93LgorCSogc2NyaXB0cy90LzYwMF9EcGtnX0NoYW5nZWxvZy9yZWdyZXNzaW9uOgorCUFkZCB0ZXN0Y2FzZSBmb3IgdGhpcyByZWdyZXNzaW9uLgorCisyMDA4LTAyLTIyICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBtYW4vZHBrZy1nZW5zeW1ib2xzLjE6IEZpeCBzb21lIGdyb2ZmIGVycm9ycyBkZXRlY3RlZCBieSBsaW50aWFuLgorCSogbWFuL2Rwa2ctcXVlcnkuMTogTGlrZXdpc2UuLgorCisyMDA4LTAyLTIyICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBtYW4vZGViLXN5bWJvbHMuNTogRXNjYXBlIHNvbWUgaHlwaGVucyBzbyB0aGF0IHRoZXkgZG8gbm90IGVuZCB1cAorCWFzIG1pbnVzIHNpZ24uCisJKiBtYW4vZHBrZy1hcmNoaXRlY3R1cmUuMTogTGlrZXdpc2UuCisJKiBtYW4vZHBrZy1zaGxpYmRlcHMuMTogTGlrZXdpc2UuCisJKiBtYW4vc3RhcnQtc3RvcC1kYWVtb24uODogTGlrZXdpc2UuCisKKzIwMDgtMDItMjIgIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisJICAgIE1pa2UgRnJ5c2luZ2VyICA8dmFwaWVyQGdlbnRvby5vcmc+CisKKwkqIHNjcmlwdHMvTWFrZWZpbGUuYW06IE1vZGlmeSBQQVRIIGR1cmluZyBtYWtlIGNoZWNrIHRvIGluY2x1ZGUKKwlidWlsZCBkaXJlY3RvcmllcyBjb250YWluaW5nIGRwa2cgYW5kIHRoZSBzY3JpcHRzIGRwa2ctKi4KKworMjAwOC0wMi0yMCAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbSAocGFyc2VfY2hhbmdlbG9nKTogRmFsbGJhY2sKKwlpbnRvIC91c3IvbGliL2Rwa2cvcGFyc2VjaGFuZ2Vsb2cgdG8gZmluZCBjaGFuZ2Vsb2cgcGFyc2VyCisJaW4gY2FzZSAkZHBrZ2xpYmRpciBwb2ludHMgdG8gYW5vdGhlciBkaXJlY3RvcnkgKGZvciBleGFtcGxlCisJd2hlbiBEUEtHX0RBVEFESVIgaXMgbWFudWFsbHkgc2V0KS4KKworMjAwOC0wMi0xOSAgRnJhbmsgTGljaHRlbmhlbGQgIDxkanBpZ0BkZWJpYW4ub3JnPgorCisJKiBtNC9saWJzLm00IChEUEtHX0xJQl9DVVJTRVMpOiBVc2UgbGlibmN1cnNlc3cgaWYKKwlhdmFpbGFibGUuCisJKiBkZWJpYW4vY29udHJvbDogQ2hhbmdlIGJ1aWxkLWRlcGVuZGVuY3kgZnJvbQorCWxpYm5jdXJzZXM1LWRldiB0byBsaWJuY3Vyc2VzdzUtZGV2LgorCisyMDA4LTAyLTE5ICBGcmFuayBMaWNodGVuaGVsZCAgPGRqcGlnQGRlYmlhbi5vcmc+CisKKwkqIG1hbi9kcGtnLXNvdXJjZS4xOiBGaXggZG9jdW1lbnRhdGlvbiBvZiAtc2sgYW5kIC1zcC4gVGhlIGRpcmVjdG9yeQorCXdpdGggdGhlIHVucGFja2VkIG9yaWdpbmFsIHNvdXJjZSB3aWxsIGJlIHJlbW92ZWQsIG5vdCB0aGUgdGFyYmFsbC4KKworMjAwOC0wMi0xNyAgRnJhbmsgTGljaHRlbmhlbGQgIDxkanBpZ0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL0Rwa2cucG06IEFsbG93IG92ZXJyaWRpbmcgJHBrZ2RhdGFkaXIKKwl3aXRoICRFTlZ7RFBLR19EQVRBRElSfS4KKwkqIHNjcmlwdHMvTWFrZWZpbGUuYW0gKGNoZWNrKTogVXNlIERQS0dfREFUQURJUi4KKwkqIGRlYmlhbi9ydWxlczogUmVtb3ZlIGhhY2sgdG8gY29weSBkYXRhIGZpbGVzCisJdG8gYnVpbGQgZGlyZWN0b3J5LgorCisyMDA4LTAyLTE3ICBGcmFuayBMaWNodGVuaGVsZCAgPGRqcGlnQGRlYmlhbi5vcmc+CisKKwkqIG1hbi9kcGtnLWFyY2hpdGVjdHVyZS4xOiBEb2N1bWVudCB0aGUgZmlsZXMgbmVlZGVkIGJ5CisJZHBrZy1hcmNoaXRlY3R1cmUuCisKKzIwMDgtMDItMTcgIEZyYW5rIExpY2h0ZW5oZWxkICA8ZGpwaWdAZGViaWFuLm9yZz4KKwkgICAgTWF0dGhpYXMgS2xvc2UgIDxkb2tvQGNzLnR1LWJlcmxpbi5kZT4KKworCSogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDogU2V0IGEgc2V0IG9mIGVudmlyb25tZW50IHZhcmlhYmxlcworCWZvciBzZXR0aW5nIGNvbXBpbGVyIGFuZCBsaW5rZXIgb3B0aW9ucywgdW5sZXNzIGFscmVhZHkgc2V0IGluIHRoZQorCWVudmlyb25tZW50LiBTZWUgaHR0cHM6Ly93aWtpLnVidW50dS5jb20vRGlzdENvbXBpbGVyRmxhZ3MgZm9yCisJYmFja2dyb3VuZCBpbmZvcm1hdGlvbi4KKwkqIG1hbi9kcGtnLWJ1aWxkcGFja2FnZS4xOiBEb2N1bWVudCB0aGUgbmV3IGJlaGF2aW91ciBmb3IgYnVpbGQKKwlyZWxhdGVkIGVudmlyb25tZW50IHZhcmlhYmxlcy4KKworMjAwOC0wMi0xNyAgWmFjayBXZWluYmVyZyAgPHphY2t3QHBhbml4LmNvbT4KKworCSogbWFuL2RlYi1zaGxpYnMuNTogTWFrZSB0aGlzIG1hbnVhbCBwYWdlIGEgYml0IG1vcmUgZWxhYm9yYXRlIGFuZAorCWhlbHBmdWwuCisKKzIwMDgtMDItMTMgIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvRHBrZy9WZXJzaW9uLnBtOiBJbXBvcnQgRHBrZzo6R2V0dGV4dCBzaW5jZSB3ZSB1c2UgX2coKS4KKworMjAwOC0wMi0wNyAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6IERvIG5vdCBvdXRwdXQgdGhlIEhvbWVwYWdlIGZpZWxkIG9uIHVkZWIuCisKKzIwMDgtMDItMDQgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGxpYmNvbXBhdC9NYWtlZmlsZS5hbSAobG9jYWxlZGlyKTogUmVtb3ZlIHVudXNlZCB2YXJpYWJsZS4KKwkoSU5DTFVERVMpOiBEbyBub3QgcGFzcyAtRExPQ0FMRURJUiBub3IgLUkkKHRvcF9zcmNkaXIpL2xpYi4KKworMjAwOC0wMi0wMyAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogbTQvZnVuY3MubTQgKERQS0dfQ0hFQ0tfQ09NUEFUX0ZVTkNTKTogTmV3IG1hY3JvLgorCSogY29uZmlndXJlLmFjIChEUEtHX0NIRUNLX0NPTVBBVF9GVU5DUyk6IENoZWNrIGdldG9wdCwgZ2V0b3B0X2xvbmcKKwlhbmQgb2JzdGFja19mcmVlLgorCSogbGliY29tcGF0L01ha2VmaWxlLmFtIChsaWJjb21wYXRfYV9TT1VSQ0VTKTogU2V0IGVtcHR5IGJ5IGRlZmF1bHQuCisJT25seSBhZGQgJ2dldG9wdC5jIGdldG9wdC5oJyBpZiAhSEFWRV9HRVRPUFQuIE9ubHkgYWRkICdnZXRvcHQxLmMnCisJaWYgIUhBVkVfR0VUT1BUX0xPTkcuIE9ubHkgYWRkICdvYnN0YWNrLmMgb2JzdGFjay5oJyBpZgorCSFIQVZFX09CU1RBQ0tfRlJFRS4KKwkoSU5DTFVERVMpOiBBZGQgJy1pZGlyYWZ0ZXIgJCh0b3Bfc3JjZGlyKS9saWJjb21wYXQnLgorCSogZHBrZy1kZWIvTWFrZWZpbGUuYW0gKElOQ0xVREVTKTogTGlrZXdpc2UuCisJKiBkcGtnLXNwbGl0L01ha2VmaWxlLmFtIChJTkNMVURFUyk6IExpa2V3aXNlLgorCSogZHNlbGVjdC9NYWtlZmlsZS5hbSAoSU5DTFVERVMpOiBMaWtld2lzZS4KKwkqIGxpYi9NYWtlZmlsZS5hbSAoSU5DTFVERVMpOiBMaWtld2lzZS4KKwkqIHNyYy9NYWtlZmlsZS5hbSAoSU5DTFVERVMpOiBMaWtld2lzZS4KKwkqIHV0aWxzL01ha2VmaWxlLmFtIChJTkNMVURFUyk6IFVzZSAtaWRpcmFmdGVyIGluc3RlYWQgb2YgLUkgZm9yCisJJyQodG9wX3NyY2RpcikvbGliY29tcGF0Jy4KKworCSogc3JjL01ha2VmaWxlLmFtIChkcGtnX0xEQUREKTogQWRkICcuLi9saWJjb21wYXQvbGliY29tcGF0LmEnLgorCShkcGtnX3F1ZXJ5X0xEQUREKTogTGlrZXdpc2UuCisJKiBkcGtnLWRlYi9NYWtlZmlsZS5hbSAoZHBrZ19kZWJfTERBREQpOiBMaWtld2lzZS4KKwkqIGRwa2ctc3BsaXQvTWFrZWZpbGUuYW0gKGRwa2dfc3BsaXRfTERBREQpOiBMaWtld2lzZS4KKwkqIGRzZWxlY3QvTWFrZWZpbGUuYW0gKGRzZWxlY3RfTERBREQpOiBMaWtld2lzZS4KKworMjAwOC0wMi0wMyAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogbGliY29tcGF0L01ha2VmaWxlLmFtIChsaWJjb21wYXRfYV9TT1VSQ0VTKTogUmVtb3ZlIGNsb3Nlb3V0LmMsCisJY2xvc2VvdXQuaCwgZXJyb3IuaCwgbG9uZy1vcHRpb25zLmMgYW5kIGxvbmctb3B0aW9ucy5oLgorCSogbGliY29tcGF0L2Nsb3Nlb3V0LmM6IFJlbW92ZSB1bnVzZWQgZmlsZS4KKwkqIGxpYmNvbXBhdC9jbG9zZW91dC5oOiBMaWtld2lzZS4KKwkqIGxpYmNvbXBhdC9lcnJvci5oOiBMaWtld2lzZS4KKwkqIGxpYmNvbXBhdC9sb25nLW9wdGlvbnMuYzogTGlrZXdpc2UuCisJKiBsaWJjb21wYXQvbG9uZy1vcHRpb25zLmg6IExpa2V3aXNlLgorCisyMDA4LTAyLTAzICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOiBIYW5kbGUgYmV0dGVyIHRoZSBjYXNlIHdoZW4gdGhlCisJbGlicmFyeSBmb3VuZCBoYXMgYSBkaWZmZXJlbnQgc29uYW1lIHRoYW4gdGhlIG9uZSB1c2VkIHRvIGxvb2sgdXAKKwl0aGUgbGlicmFyeSBmaWxlLiBQcm9wZXJseSBhZmZlY3Qgc3ltYm9scyBjb21pbmcgZnJvbSBpdCB0byB0aGUKKwlzb25hbWUgd2FudGVkIGJ5IHRoZSBiaW5hcnksIHRodXMgYXZvaWRpbmcgaW52YWxpZCB3YXJuaW5ncyBhYm91dAorCXVudXNlZCBsaWJyYXJ5LgorCisyMDA4LTAxLTMxICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDogQWx3YXlzIGxpc3QgYWxsIGJpbmFyeSBwYWNrYWdlcyBpbgorCXRoZSBEZXNjcmlwdGlvbiBmaWVsZCBvZiBnZW5lcmF0ZWQgLmNoYW5nZXMgZmlsZXMuCisKKzIwMDgtMDEtMzAgIEZyYW5rIExpY2h0ZW5oZWxkICA8ZGpwaWdAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDogV2FybiBpZiBidWlsZC1kZXBlbmRlbmNpZXMKKwlhcmUgbm90IHNhdGlzZmllZCBkdXJpbmcgLVMuIEFsc28gd2FybiB0aGF0IHRoaXMgbWlnaHQgYmVjb21lCisJYW4gZXJyb3IgaW4gdGhlIGZ1dHVyZS4KKworMjAwOC0wMS0zMCAgSnVzdGluIFByeXpieSAgPGpwcnl6YnkrZEBxdW9pbmluYy5jb20+CisKKwkqIHV0aWxzL3N0YXJ0LXN0b3AtZGFlbW9uLmMgKGRvX2hlbHApOiBDbGFyaWZ5IC0tbmFtZSBhbmQgLS11c2VyCisJb3B0aW9ucy4KKwkocGFyc2Vfb3B0aW9ucyk6IFJld29yZCAtLW1ha2UtcGlkZmlsZSBiYWR1c2FnZS4KKwkocGlkX2lzX2NtZCk6IEZpeCB0eXBvIGluIGNvbW1lbnQuCisJKiBtYW4vc3RhcnQtc3RvcC1kYWVtb24uODogQ29zbWV0aWMgZml4ZXMuIERvY3VtZW50IHRoYXQgLS1jaHVpZAorCXdpbGwgY2hhbmdlIHRoZSBncm91cCBldmVuIGlmIGl0IGhhcyBub3QgYmVlbiBzcGVjaWZpZWQuIEFkZCBFWElUCisJU1RBVFVTIGFuZCBFWEFNUExFIHNlY3Rpb25zLgorCisyMDA4LTAxLTI5ICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOiBBZGQgYSBuZXcgLVIgb3B0aW9uIHRvIGJlIGFibGUgdG8KKwlyZXBsYWNlICJkZWJpYW4vcnVsZXMiIGJ5IHNvbWV0aGluZyBlbHNlLiBUaGUgcmVwbGFjZW1lbnQgY29tbWFuZAorCWNhbiBjb250YWluIHBhcmFtZXRlcnMgKGFuZCB0aHVzIHNwYWNlcykuIEZpeCAtciBvcHRpb24gdG8gYWxzbworCWFjY2VwdCBwYXJhbWV0ZXJzLgorCSogbWFuL2Rwa2ctYnVpbGRwYWNrYWdlLjE6IERvY3VtZW50IHRoZSBuZXcgb3B0aW9uIGFuZCB0aGUgY2hhbmdlZAorCWJlaGF2aW91ciBvZiAtci4KKworMjAwOC0wMS0yOCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogZ2V0b3B0OiBSZW5hbWUgdG8gLi4uCisJKiBsaWJjb21wYXQ6IC4uLiB0aGlzLgorCSogY29uZmlndXJlLmFjIChBQ19DT05GSUdfRklMRVMpOiBMaWtld2lzZS4KKwkqIE1ha2VmaWxlLmFtIChTVUJESVJTKTogTGlrZXdpc2UuCisJKiB1dGlscy9NYWtlZmlsZS5hbSAoSU5DTFVERVMpOiBMaWtld2lzZS4KKwkoc3RhcnRfc3RvcF9kYWVtb25fTERBREQpOiBVc2UgJy4uL2xpYmNvbXBhdC9saWJjb21wYXQuYScgaW5zdGVhZCBvZgorCScuLi9nZXRvcHQvbGlib3B0LmEnLgorCSogbGliY29tcGF0L01ha2VmaWxlLmFtIChub2luc3RfTElCUkFSSUVTKTogUmVuYW1lICdsaWJvcHQuYScgdG8KKwknbGliY29tcGF0LmEnLgorCShsaWJvcHRfYV9TT1VSQ0VTKTogUmVuYW1lIHRvIC4uLgorCShsaWJjb21wYXRfYV9TT1VSQ0VTKTogLi4uIHRoaXMuCisKKzIwMDgtMDEtMjcgIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKwkqIFJFQURNRS5mZWF0dXJlLXJlbW92YWwtc2NoZWR1bGU6IERlcHJlY2F0ZSBzdXBwb3J0IG9mIHN1YnN0dmFycworCWluIGRwa2ctc291cmNlIGFuZCBkcGtnLWdlbmNoYW5nZXMuCisJKiBSRUFETUUuZmVhdHVyZS1yZW1vdmFsLXNjaGVkdWxlLCBSRUFETUUuYXBpOiBEZXByZWNhdGUgc3VwcG9ydAorCW9mIGN1c3RvbSBjaGFuZ2Vsb2cgcGFyc2VycyB0aGF0IHVuZGVyc3RhbmQgb25seSB0aGUgLXYgb3B0aW9uLgorCSogUkVBRE1FLmZlYXR1cmUtcmVtb3ZhbC1zY2hlZHVsZTogRGVwcmVjYXRlIHN1cHBvcnQgb2YgUEdQLgorCisyMDA4LTAxLTI3ICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL0Rwa2cvU2hsaWJzL1N5bWJvbEZpbGUucG06IFJlcGxhY2UgaGFzX25ld19saWJzKCksCisJaGFzX2xvc3RfbGlicygpLCBoYXNfbmV3X3N5bWJvbHMoKSBhbmQgaGFzX2xvc3Rfc3ltYm9scygpIGJ5CisJY29ycmVzcG9uZGluZyBnZXRfKiBmdW5jdGlvbnMuCisJKiBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYnNvbHMucGw6IERpc3BsYXkgbGlzdCBvZiBuZXcvbG9zdCBsaWJzLiBBbHNvCisJZGlzcGxheSBsaXN0IG9mIGxvc3Qgc3ltYm9scyB3aGVuIHdpbGRjYXJkcyBzeW1ib2xzIGhhdmUgYmVlbgorCXVzZWQuCisJKiBzY3JpcHRzL3QvMjAwX0Rwa2dfU2hsaWJzLnQ6IEFkanVzdCB0ZXN0IHN1aXRlIHRvIEFQSSBjaGFuZ2UuCisKKzIwMDgtMDEtMjYgIEZyYW5rIExpY2h0ZW5oZWxkICA8ZGpwaWdAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9EcGtnL0NoZWNrc3Vtcy5wbTogTmV3IG1vZHVsZSBmb3IgY2hlY2tzdW0gaGFuZGxpbmcKKwlpbiAuY2hhbmdlcyBhbmQgLmRzYyBmaWxlcy4KKwkqIHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsLCBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOiBVc2UgbmV3CisJbW9kdWxlLiBBZGRzIG5ldyAnQ2hlY2tzdW1zLXtTaGExLFNoYTI1Nn0nIGZpZWxkCisJdG8gLmNoYW5nZXMgYW5kIC5kc2MgZmlsZXMuIEluY3JlYXNlIGNoYW5nZXMgZm9ybWF0IHRvIDEuOC4KKworMjAwOC0wMS0yNSAgQW5kcmVhcyBQw6VobHNzb24gIDxhbmRyZWFzLnBhaGxzc29uQHhjZXJpb24uY29tPgorCisJKiB1dGlscy9zdGFydC1zdG9wLWRhZW1vbi5jICh0c3ViKTogUmVtb3ZlIGZ1bmN0aW9uLgorCSh0bXVsKTogRml4IG5vcm1hbGl6YXRpb24uCisJKHJ1bl9zdG9wX3NjaGVkdWxlKTogVXNlIHRpbWVyc3ViIGluc3RlYWQgb2YgdHN1Yi4KKworMjAwOC0wMS0yNCAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6IFdhcm4gaWYgdGhlIGN1cnJlbnQgdmVyc2lvbiBpcworCXNtYWxsZXIgdGhhbiB0aGUgcHJldmlvdXMgb25lLgorCisJKiBzY3JpcHRzL2Rwa2ctY2hlY2tidWlsZGRlcHMucGw6IEFkZCBzdXBwb3J0IG9mIG9wdGlvbnMgLWQgYW5kIC1jIHRvCisJdXNlIGJ1aWxkIGRlcGVuZGVuY2llcy9jb25mbGljdHMgZ2l2ZW4gb24gdGhlIGNvbW1hbmQgbGluZSBpbnN0ZWFkIG9mCisJdGhvc2UgcmV0cmlldmVkIGZyb20gZGViaWFuL2NvbnRyb2wuCisJKiBtYW4vZHBrZy1jaGVja2J1aWxkZGVwcy4xOiBEb2N1bWVudCB0aGUgbmV3IG9wdGlvbnMuCisKKzIwMDgtMDEtMjIgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGRwa2ctZGViL2V4dHJhY3QuYyAoZXh0cmFjdGhhbGYpOiBSZWZhY3RvciBmZmx1c2ggYW5kIGl0cyBidWdneQorCWZwb3MgaGFuZGxpbmcgdG8gLi4uCisJKHNhZmVfZmZsdXNoKTogLi4uIGhlcmUuIE5ldyBmdW5jdGlvbi4KKworMjAwOC0wMS0yMiAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogbGliL3ZlcmNtcC5jIFswXSAodmVycmV2Y21wKTogUmVtb3ZlIGRlYWQgY29kZS4KKworMjAwOC0wMS0yMiAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogbGliL2Rwa2cuaCBbIW9mZnNldG9mXSAob2Zmc2V0b2YpOiBOZXcgY29tcGF0aWJpbHR5IG1hY3JvLgorCSogbGliL3BhcnNlZHVtcC5oIChQS0dJRlBPRkYpOiBVc2Ugb2Zmc2V0b2YgaW5zdGVhZCBvZiBhZC1ob2MKKwljYWxjdWxhdGlvbi4KKwkoRklMRUZPRkYpOiBMaWtld2lzZS4KKwkoc3RydWN0IGZpZWxkaW5mbyk6IENoYW5nZSBpbnRlZ2VyIG1lbWJlciB0eXBlIHRvIHNpemVfdC4KKwkqIGxpYi90YXJmbi5jIChUYXJDaGVja3N1bU9mZnNldCk6IFVzZSBvZmZzZXRvZiBpbnN0ZWFkIG9mIGFkLWhvYworCWNhbGN1bGF0aW9uLgorCisyMDA4LTAxLTIyICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBjb25maWd1cmUuYWMgKEFDX0NIRUNLX0hFQURFUlMpOiBDaGVjayBmb3IgJ3N0ZGRlZi5oJy4KKworMjAwOC0wMS0yMSAgQ29saW4gV2F0c29uICA8Y2p3YXRzb25AZGViaWFuLm9yZz4KKworCSogZHNlbGVjdC9wa2drZXlzLmNjIChwYWNrYWdlbGlzdF9rb3JnYmluZGluZ3MpOiBBZGQgJ0MnLgorCShwYWNrYWdlbGlzdF9raW50ZXJwcyk6IEFkZCAncmV2ZXJ0aW5zdGFsbGVkJy4KKwkqIGRzZWxlY3QvYmluZGluZ3MuY2MgKGtleWJpbmRpbmdzOjpkZXNjcmlwdGlvbnMpOiBMaWtld2lzZS4KKwkqIGRzZWxlY3QvcGtnbGlzdC5oIChjbGFzcyBwYWNrYWdlbGlzdCk6IEFkZCBrZF9yZXZlcnRpbnN0YWxsZWQuCisJKiBkc2VsZWN0L3BrZ2NtZHMuY2MgKHBhY2thZ2VsaXN0OjprZF9yZXZlcnRpbnN0YWxsZWQpOiBOZXcgbWV0aG9kLgorCSogbWFuL2RzZWxlY3QuMTogRG9jdW1lbnQgbmV3ICdDJyBrZXliaW5kaW5nLgorCisyMDA4LTAxLTIxICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBkcGtnLWRlYi9idWlsZC5jIChnZXRmaSk6IFVzZSBtX21hbGxvYyBpbnN0ZWFkIG9mIG1hbGxvYy4KKwkoZG9fYnVpbGQpOiBMaWtld2lzZS4KKwkqIGRwa2ctZGViL2V4dHJhY3QuYyAoZXh0cmFjdGhhbGYpOiBMaWtld2lzZS4KKwkqIGxpYi9tbGliLmMgKGJ1ZmZlcl93cml0ZSk6IExpa2V3aXNlLgorCShidWZmZXJfY29weSk6IExpa2V3aXNlLgorCSogbGliL215b3B0LmMgKGxvYWRjZmdmaWxlKTogTGlrZXdpc2UuCisJKiBsaWIvcGFyc2UuYyAocGFyc2VkYik6IExpa2V3aXNlLgorCSogbGliL3Nob3dwa2cuYyAoYWxsb2Nsc3RpdGVtKTogTGlrZXdpc2UuCisJKHBhcnNlZmllbGQpOiBMaWtld2lzZS4KKwkocGFyc2VzdHJpbmcpOiBMaWtld2lzZS4KKwkqIGxpYi90YXJmbi5jIChTdG9DKTogTGlrZXdpc2UuCisJKFRhckV4dHJhY3Rvcik6IExpa2V3aXNlLgorCSogc3JjL2FyY2hpdmVzLmMgKHRyeV9kZWNvbmZpZ3VyZV9jYW4pOiBMaWtld2lzZS4KKwkqIHNyYy9tYWluLmMgKGV4ZWNiYWNrZW5kKTogTGlrZXdpc2UuCisKKzIwMDgtMDEtMjEgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGxpYi9tbGliLmMgKG1fc3RyZHVwKTogTmV3IGZ1bmN0aW9uLgorCSogbGliL2Rwa2cuaCAobV9zdHJkdXApOiBOZXcgZGVjbGFyYXRpb24uCisJKiBsaWIvdGFyZm4uYzogSW5jbHVkZSA8ZHBrZy5oPi4KKwkoVGFyRXh0cmFjdG9yKTogVXNlIG1fc3RyZHVwIGluc3RlYWQgb2Ygc3RyZHVwLgorCSogbGliL2RhdGFiYXNlLmMgKGZpbmRwYWNrYWdlKTogTGlrZXdpc2UuCisJKiBsaWIvbXlvcHQuYyAobXlmaWxlb3B0KTogTGlrZXdpc2UuCisJKiBkcGtnLWRlYi9idWlsZC5jIChnZXRmaSk6IExpa2V3aXNlLgorCSogc3JjL2NvbmZpZ3VyZS5jIChtZDVoYXNoKTogTGlrZXdpc2UuCisJKiBzcmMvaGVscC5jICh2YnVpbGRhcmdsaXN0KTogTGlrZXdpcy4KKwkqIHNyYy9tYWluLmMgKGV4ZWNiYWNrZW5kKTogTGlrZXdpc2UuCisJKGNvbW1hbmRmZCk6IExpa2V3aXNlLgorCisyMDA4LTAxLTIxICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBjb25maWd1cmUuYWM6IEJ1bXAgdmVyc2lvbiB0byAxLjE0LjE3fi4KKworMjAwOC0wMS0yNiAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogY29uZmlndXJlLmFjOiBSZWxlYXNlIDEuMTQuMTYuNi4KKworMjAwOC0wMS0yNiAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHM6IERvbid0IHNjYW4gZGlyZWN0b3JpZXMgd2hpY2ggYXJlCisJc3ltbGlua3MuIFRoZXkgbWlnaHQgcG9pbnQgb3V0c2lkZSBvZiB0aGUgcGFja2FnZSBidWlsZCBkaXIgd2hpY2gKKwlyZXN1bHRzIGluIGFkZGl0aW9uIG9mIGxpYnJhcmllcyB3aGljaCBhcmUgbm90IGluIHRoZSBwYWNrYWdlLgorCVRoZSBsaWJjNiBwYWNrYWdlIG9uIGFtZDY0IGlzIGFmZmVjdGVkIHdpdGggYSBzeW1saW5rICJsaWI2NCIgLT4KKwkiL2xpYiIuCisKKzIwMDgtMDEtMjQgIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKwkqIGNvbmZpZ3VyZS5hYzogUmVsZWFzZSAxLjE0LjE2LjUuCisKKzIwMDgtMDEtMjQgIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvRHBrZy9TaGxpYnMvU3ltYm9sRmlsZS5wbSAobG9hZCk6IFJlbW92ZSB0aGUgbG9hZGVkIGZpbGUKKwlmcm9tIHRoZSAlJHNlZW4gaGFzaCBhdCB0aGUgZW5kIHNvIHRoYXQgaXQncyBwb3NzaWJsZSB0byBpbmNsdWRlCisJbXVsdGlwbGUgdGltZXMgdGhlIHNhbWUgZmlsZSAoYXQgdGhlIHNhbWUgbGV2ZWwgYW5kIG5vdCBmcm9tIGFueQorCW5lc3RlZCBmaWxlIG9idmlvdXNseSkuCisKKwkqIHNjcmlwdHMvRHBrZy9TaGxpYnMvU3ltYm9sRmlsZS5wbTogQmxhY2tsaXN0IG1hbnkgYXJtZWwgc3BlY2lmaWMKKwlzeW1ib2xzLgorCisyMDA4LTAxLTIzICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBjb25maWd1cmUuYWM6IFJlbGVhc2UgMS4xNC4xNi40LgorCisyMDA4LTAxLTIzICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL0Rwa2cvQ2RhdGEucG06IEltcG9ydCBjYXBpdCBmcm9tIERwa2c6OkZpZWxkcy4KKworMjAwOC0wMS0yMiAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogY29uZmlndXJlLmFjOiBSZWxlYXNlIDEuMTQuMTYuMy4KKworMjAwOC0wMS0yMiAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogdXRpbHMvc3RhcnQtc3RvcC1kYWVtb24uYyAodHZzZWxlY3Rvcik6IFJlbW92ZSB0eXBlZGVmLgorCSh0dnNlbGVjdG9yX3NlYyk6IFJlbW92ZSBmdW5jdGlvbi4KKwkodHZzZWxlY3Rvcl91c2VjKTogTGlrZXdpc2UuCisJKFRWQ0FMQ19FTEVNKTogUmVtb3ZlIG1hY3JvLgorCShUVkNBTEMpOiBMaWtld2lzZS4KKwkodHN1Yik6IE5ldyBmdW5jdGlvbi4KKwkodG11bCk6IExpa2V3aXNlLgorCShydW5fc3RvcF9zY2hlZHVsZSk6IFVzZSB0c3ViIGFuZCB0bXVsIGluc3RlYWQgb2YgVFZDQUxDLiBNYWtlIHN1cmUKKwl0aGUgdGltZSBpcyBub3QgbmVnYXRpdmUuCisKKzIwMDgtMDEtMjIgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHV0aWxzL3N0YXJ0LXN0b3AtZGFlbW9uLmMgKG1haW4pOiBPbmx5IGNhbGwgaW5pdGdyb3VwcyBpZiBjaGFuZ2V1c2VyCisJaXMgbm90IE5VTEwuCisKKzIwMDgtMDEtMjIgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHV0aWxzL3N0YXJ0LXN0b3AtZGFlbW9uLmMgKGdpZF9pbl9jdXJyZW50X2dyb3Vwcyk6IFJlbW92ZSBmdW5jdGlvbi4KKwkobWFpbik6IENhbGwgaW5pdGdyb3VwcyBpZiB0aGUgcmVhbCB1c2VyIG9yIGdyb3VwIGFyZSBkaWZmZXJlbnQgdGhhbgorCXRoZSBvbmVzIHdlIHNob3VsZCBzd2l0Y2ggdG8uIENhbGwgc2V0Z2lkIGJlZm9yZSBpbml0Z3JvdXBzLgorCisyMDA4LTAxLTIyICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBtYW4vZHBrZy1wYXJzZWNoYW5nZWxvZy4xOiBGaXggdHlwb3MgcmVwb3J0ZWQgYnkgSGVsZ2UgS3JldXR6bWFubi4KKworMjAwOC0wMS0yMiAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGwsIHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsLAorCXNjcmlwdHMvZHBrZy1zb3VyY2UucGw6IFJlbW92ZSB0aGUgSU8tbGF5ZXIgdGhhdCBjb252ZXJ0cyB0bworCVVURi04LiBJdCdzIG5vdCBhcyBzbWFydCBhcyBJIGV4cGVjdGVkLgorCisJKiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDogRG8gbm90IHN1YnN0aXR1dGUgdmFyaWFibGVzIG9uCisJdGhlIG91dHB1dC4KKwkqIG1hbi9kcGtnLWdlbmNoYW5nZXMucGw6IERvY3VtZW50IHRoaXMgY2hhbmdlLgorCisyMDA4LTAxLTIyICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBjb25maWd1cmUuYWM6IFJlbGVhc2UgMS4xNC4xNi4yLgorCisyMDA4LTAxLTIyICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiB1dGlscy9zdGFydC1zdG9wLWRhZW1vbi5jIChtYWluKTogTW92ZSBzZXR1aWQgY29kZSBhZnRlciBpbml0Z3JvdXBzCisJYW5kIHNldGdpZC4KKworMjAwOC0wMS0yMSAgRnJhbmsgTGljaHRlbmhlbGQgIDxkanBpZ0BkZWJpYW4ub3JnPgorCisJKiBjb25maWd1cmUuYWM6IFJlbGVhc2UgMS4xNC4xNi4xCisKKwkqIHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6IEZpeCAidW5pbml0aWFsaXplZCB2YWx1ZSIKKwl3YXJuaW5nLgorCisJKiBkZWJpYW4vY29udHJvbDogQWRkIGxpYnRpbWVkYXRlLXBlcmwgdG8KKwlkcGtnLWRldidzIERlcGVuZHMgYW5kIHRvIEJ1aWxkLURlcGVuZHMgKGZvcgorCWJ1aWxkLXRpbWUgdGVzdHMpLiBUaGlzIGludHJvZHVjZXMgb3VyIGZpcnN0CisJcnVuLXRpbWUgZGVwZW5kZW5jeSBvbiBhIHBlcmwgbW9kdWxlIG5vdCBzaGlwcGVkCisJd2l0aCBQZXJsIGl0c2VsZi4gQnV0IHRvIG1lIGl0IHNlZW1zIG5vdCB3b3J0aAorCXRyeWluZyB0byByZXBsYWNlIHRoYXQgY29kZS4KKworMjAwOC0wMS0yMSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogY29uZmlndXJlLmFjOiBSZWxlYXNlIDEuMTQuMTYuCisKKzIwMDgtMDEtMjEgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIFJFQURNRS5hcGk6IE5ldyBmaWxlLgorCSogUkVBRE1FLmZlYXR1cmUtcmVtb3ZhbC1zY2hlZHVsZTogTGlrZXdpc2UuCisJKiBNYWtlZmlsZS5hbSAoRVhUUkFfRElTVCk6IEFkZCBSRUFETUUuZmVhdHVyZS1yZW1vdmFsLXNjaGVkdWxlIGFuZAorCVJFQURNRS5hcGkuCisKKzIwMDgtMDEtMjEgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGNvbmZpZ3VyZS5hYyAoQUNfQ0hFQ0tfRlVOQ1MpOiBFc2NhcGUgbmV3IGxpbmVzLgorCisyMDA4LTAxLTIxICBJYW4gSmFja3NvbiAgPGlhbkBkYXZlbmFudC5ncmVlbmVuZC5vcmcudWs+CisKKwkqIHNyYy9wcm9jZXNzYXJjLmMgKHByb2Nlc3NfYXJjaGl2ZSk6IEZpeCBpbmNvcnJlY3Qgc2l6ZW9mIGluIGEKKwltZW1zZXQgY2FsbC4KKworMjAwOC0wMS0yMSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogdXRpbHMvc3RhcnQtc3RvcC1kYWVtb24uYyAobWFpbik6IENhc3QgcnVuYXNfdWlkIGFuZCBydW5hc19naWQgdG8KKwl1aWRfdCBhbmQgZ2lkX3Qgd2hlbiBjb21wYXJpbmcgdG8gZ2V0dWlkKCkgYW5kIGdldGdpZCgpLgorCisyMDA4LTAxLTIxICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBjb25maWd1cmUuYWMgKEFDX0NIRUNLX0ZVTkNTKTogTWVyZ2UgYXJndW1lbnRzIGZyb20gYm90aCBtYWNybworCWNhbGxzLgorCisyMDA4LTAxLTIxICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBjb25maWd1cmUuYWMgKEFNX0dOVV9HRVRURVhUKTogQWRkIGV4dGVybmFsLgorCShBQ19DSEVDS19GVU5DUyk6IEFkZCBzdHJ0b3VsLgorCShBQ19DT05GSUdfRklMRVMpOiBSZW1vdmUgJ2ludGwvTWFrZWZpbGUnLgorCSogLmdpdGlnbm9yZTogUmVtb3ZlIGludGwuCisJKiBNYWtlZmlsZS5hbSAoU1VCRElSUyk6IExpa2V3aXNlLgorCSogZHBrZy1kZWIvTWFrZWZpbGUuYW0gKElOQ0xVREVTKTogUmVtb3ZlICctSSQodG9wX3NyY2RpcikvaW50bCcuCisJKiBkcGtnLXNwbGl0L01ha2VmaWxlLmFtIChJTkNMVURFUyk6IExpa2V3aXNlLgorCSogZHNlbGVjdC9NYWtlZmlsZS5hbSAoSU5DTFVERVMpOiBMaWtld2lzZS4KKwkqIGdldG9wdC9NYWtlZmlsZS5hbSAoSU5DTFVERVMpOiBMaWtld2lzZS4KKwkqIGxpYi9NYWtlZmlsZS5hbSAoSU5DTFVERVMpOiBMaWtld2lzZS4KKwkqIHNyYy9NYWtlZmlsZS5hbSAoSU5DTFVERVMpOiBMaWtld2lzZS4KKwkqIHV0aWxzL01ha2VmaWxlLmFtIChJTkNMVURFUyk6IExpa2V3aXNlLgorCisyMDA4LTAxLTIxICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBjb25maWd1cmUuYWMgKEFDX0NIRUNLX0ZVTkNTKTogQWRkIGdldGR0YWJsZXNpemUuCisJKiB1dGlscy9zdGFydC1zdG9wLWRhZW1vbi5jIChnZXRfb3Blbl9mZF9tYXgpOiBOZXcgZnVuY3Rpb24uCisJKG1haW4pIFtPU2hwdXhdOiBSZW1vdmUuCisJWyFPU2hwdXhdOiBVc2UgZ2V0X29wZW5fZmRfbWF4IGluc3RlYWQgb2YgaGFyZGNvZGVkIGdldGR0YWJsZXNpemUuCisKKzIwMDgtMDEtMjEgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIG1hbi9zdGFydC1zdG9wLWRhZW1vbi44OiBGaXggcXVvdGF0aW9uIHRvIGdldCByaWQgb2YgYSBzcHVyaW91cworCXNwYWNlIGJldHdlZW4gLWMgb3B0aW9uIGFuZCBjb21tYS4KKworMjAwOC0wMS0yMCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogbWFuL3N0YXJ0LXN0b3AtZGFlbW9uLjg6IENvYWxlc2NlIGFsbCBtYXRjaGluZyBvcHRpb25zIGludG8gYSBuZXcKKwlzZWN0aW9uLiBMaXN0IG1hdGNoaW5nIG9wdGlvbnMgYnkgcmVmZXJlbmNlIGluIHRoZSBkZXNjcmlwdGlvbgorCXNlY3Rpb24uCisKKzIwMDgtMDEtMjAgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHV0aWxzL3N0YXJ0LXN0b3AtZGFlbW9uLmMgKGRvX3ZlcnNpb24pOiBDaGFuZ2UgZnJvbSAnTWFuZGF0b3J5JyB0bworCSdNYXRjaGluZycuIFN1Z2dlc3RlZCBieSBKdXN0aW4gUHJ5emJ5LgorCisyMDA4LTAxLTIwICBGcmFuayBMaWNodGVuaGVsZCAgPGRqcGlnQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6IE1vdmUgbW9zdCBmdW5jdGlvbnMgdG8gZW5kIG9mIGZpbGUKKwl0byBhbGxvdyBiZXR0ZXIgcmVhZGluZyBvZiB0aGUgcHJvZ3JhbSBmbG93LiBUaGlzIGlzIGEgcmVtbmFudCBvZgorCXRoZSBzaGVsbCBzY3JpcHQgcGFzdC4KKworMjAwOC0wMS0xOSAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDogVXNlCisJRHBrZzo6Q2hhbmdlbG9nOjpwYXJzZV9jaGFuZ2Vsb2coKSBpbnN0ZWFkIG9mIGNhbGxpbmcKKwlkcGtnLXBhcnNlY2hhbmdlbG9nLgorCisJKiBzY3JpcHRzL2Rwa2ctY2hlY2tidWlsZGRlcHMucGw6IEZpeCBhIGJ1ZyBsZWZ0LW92ZXIgZnJvbSB0aGUKKwlzd2l0Y2ggdG8gRHBrZzo6Q29udHJvbC4KKworMjAwOC0wMS0xOCAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9EcGtnL1NobGlicy9TeW1ib2xGaWxlLnBtLAorCXNjcmlwdHMvRHBrZy9TaGxpYnMvT2JqZHVtcC5wbSwgc2NyaXB0cy9EcGtnL1NobGlicy5wbTogVXBkYXRlIGFuZAorCWZpeCBtYW55IHN5c2VycigpLCBlcnJvcigpLCB3YXJuaW5nKCkgYW5kIHN1YnByb2NlcnIoKSBjYWxscyB0bworCXRoZSBuZXcgc3R5bGUgd2hlcmUgdGhlIHNwcmludGYgY2FsbCBpcyBpbnRlZ3JhdGVkLiBVbmlmb3JtaXplCisJc29tZSBlcnJvciBtZXNzYWdlcyBhdCB0aGUgc2FtZSB0aW1lLgorCisyMDA4LTAxLTE4ICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL0Rwa2cvU2hsaWJzL1N5bWJvbEZpbGUucG0gKGxvYWQpOiBQYXJzZSAqQDx2ZXJzaW9uPgorCXN5bWJvbHMgbmFtZXMgYXMgd2lsZGNhcmRzIGFuZCBub3QgYXMgcmVndWxhciBzeW1ib2xzLiBUaGV5CisJcHJvdmlkZSB0aGUgc2FtZSBkZXBlbmRlbmN5IGluZm9ybWF0aW9uIGZvciBhbGwgc3ltYm9scyB0aGF0IHNoYXJlCisJdGhlIHNhbWUgdmVyc2lvbi4KKwkqIHNjcmlwdHMvRHBrZy9TaGxpYnMvU3ltYm9sRmlsZS5wbSAobWVyZ2Vfc3ltYm9scyk6IFVzZQorCWluZm9ybWF0aW9uIHByb3ZpZGVkIGJ5IHdpbGRjYXJkcyBlbnRyaWVzIHdoZW4gbmV3IHN5bWJvbHMgYXJlCisJYWRkZWQuCisJKiBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbDogRGlzYWJsZSBzb21lIGNoZWNrcyB3aGljaCBjYW4ndCBiZQorCWRvbmUgd2hlbiBzeW1ib2xzIGZpbGVzIGhhdmUgYmVlbiBnZW5lcmF0ZWQgd2l0aCB0aGUgaGVscCBvZgorCXdpbGRjYXJkIGVudHJpZXMuCisJKiBtYW4vZHBrZy1nZW5zeW1ib2xzLjE6IFVwZGF0ZSB0aGUgbWFudWFsIHBhZ2UgdG8gZXhwbGFpbiBob3cgdG8KKwl1c2Ugd2lsZGNhcmQgZW50cmllcy4KKworMjAwOC0wMS0xOCAgRnJhbmsgTGljaHRlbmhlbGQgIDxkanBpZ0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2NoYW5nZWxvZy9kZWJpYW4ucGw6IERvbid0IGhpZGUgZmFpbHVyZXMgaW5zaWRlIGV2YWwoKS4KKwkqIHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG0gKGRhdGEycmZjODIyKTogRG9uJ3QgZmFpbCBpZiBhcmd1bWVudAorCWlzIHVuZGVmLgorCisyMDA4LTAxLTE4ICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtIChwYXJzZV9jaGFuZ2Vsb2cpOiBSZXdyaXRlIGl0IGNvbXBsZXRlbHkKKwl0byBub3QgY2FsbCBkcGtnLXBhcnNlY2hhbmdlbG9nIGJ1dCBkbyB0aGUgd29yayBvZiB0aGlzIHByb2dyYW0gYnkKKwlpdHNlbGYuCisJKiBzY3JpcHRzL2Rwa2ctcGFyc2VjaGFuZ2Vsb2cucGw6IFJld3JvdGUgaXQgdG8gdXNlIHRoZSBlbmhhbmNlZAorCXBhcnNlX2NoYW5nZWxvZygpIGZ1bmN0aW9uLgorCSogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGwsIHNjcmlwdC9kcGtnLWdlbmNvbnRyb2wucGw6IEFkYXB0ZWQgdG8gdXNlCisJdGhlIG1vZGlmaWVkIHBhcnNlX2NoYW5nZWxvZygpLgorCSogc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGwsIHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6IExpa2V3aXNlLgorCisJKiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDogQ2hhbmdlIGxvZ2ljIG9mIC1zaSBvcHRpb24gdG8KKwlpbmNsdWRlIHRoZSBvcmlnaW5hbCB0YXJiYWxsIG9ubHkgaWYgdGhlIGN1cnJlbnQgdXBzdHJlYW0gdmVyc2lvbgorCWRpZmZlcnMgZnJvbSB0aGUgdXBzdHJlYW0gdmVyc2lvbiBvZiB0aGUgcHJldmlvdXMgY2hhbmdlbG9nIGVudHJ5LgorCisJKiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDogU29tZSBjb2RlIHJlZmFjdG9yaW5nLiBBbHNvIGZpeCB0aGUKKwlnZW5lcmF0aW9uIG9mIHRoZSBEZXNjcmlwdGlvbiBmaWVsZCB0byBub3QgaGF2ZSBkdXBsaWNhdGUgZGVzY3JpcHRpb24KKwlpbiBjYXNlIG9mIHVkZWIgKGEgc2luZ2xlIGRlc2NyaXB0aW9uIHBlciBiaW5hcnkgcGFja2FnZSBpcyBlbm91Z2gpLgorCVNvdXJjZSBvbmx5IHVwbG9hZHMgd2lsbCBsb29zZSB0aGVpciBEZXNjcmlwdGlvbjogZmllbGRzIHNpbmNlIHRoZXkKKwloYXZlIG5vIGFzc29jaWF0ZWQgYmluYXJ5IHBhY2thZ2VzIGFuZCBEZXNjcmlwdGlvbnMgYXJlIG9ubHkgYWRkZWQKKwlmb3IgYmluYXJ5IHBhY2thZ2VzIHdoZXJlIHdlIGhhdmUgYSBjb3JyZXNwb25kaW5nIC5kZWIgdG8gdXBsb2FkLgorCisyMDA4LTAxLTE4ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBtNC9hcmNoLm00IChfRFBLR19BUkNISVRFQ1RVUkUpOiBEbyBub3QgdXNlIGJhY2t0aWNrcyBpbnNpZGUgZG91YmxlCisJcXVvdGVzLCB0byBzdXBwb3J0IGFuY2llbnQgc2hlbGxzLgorCSogbTQvbGlicy5tNCAoRFBLR19MSUJfU0VMSU5VWCk6IExpa2V3aXNlLgorCisyMDA4LTAxLTE4ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiB1dGlscy9zdGFydC1zdG9wLWRhZW1vbi5jIChkb19oZWxwKTogQ29hbGVzY2UgbWFuZGF0b3J5IG9wdGlvbnMKKwlpbnRvIGEgc2luZ2xlIHBhcmFncmFwaCwgYW5kIHN0YXRlIHRoYXQgYXQgbGVhc3Qgb25lIGlzIHJlcXVpcmVkLgorCisyMDA4LTAxLTE4ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBjb25maWd1cmUuYWMgKEFDX0NIRUNLX1NJWkVPRik6IFF1b3RlIHBhcmFtZXRlcnMuCisKKzIwMDgtMDEtMTggIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIFRIQU5LUzogQWRkIGFsbCB0aGUgcGVvcGxlIHRoYXQgaGF2ZSBjb250cmlidXRlZCB1bnRpbCBub3cuCisKKzIwMDgtMDEtMTggIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNyYy9yZW1vdmUuYyAoZW5zdXJlX3BhdGhuYW1lX25vbmV4aXN0aW5nKTogQWRkaXRpb25hbGx5IGNoZWNrIGlmCisJZXJybm8gaXMgRUVYSVNUIGFmdGVyIGNhbGxpbmcgcm1kaXIsIHBlciBTVVN2MyB3aGVuIHRoZSBkaXJlY3RvcnkKKwlpcyBub3QgZW1wdHkgZXJybm8gY2FuIGJlIEVOT1RFTVBUWSBvciBFRVhJU1QuCisJKiBzcmMvaGVscC5jIChyZW1vdmFsX2J1bGtfcmVtb3ZlX2ZpbGVzKTogTGlrZXdpc2UuCisJKHJlbW92YWxfYnVsa19yZW1vdmVfbGVmdG92ZXJfZGlycyk6IExpa2V3aXNlLgorCisyMDA4LTAxLTE4ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMucGw6IFN0b3AgcGFyc2luZyAnLS10ZXN0JyBhcyBhIHZhbGlkCisJb3B0aW9uLgorCSgkdGVzdG1vZGUpOiBSZW1vdmUgdmFyaWFibGUuCisJKHVzYWdlKTogUmVtb3ZlICctLXRlc3QnIG9wdGlvbiBoZWxwLgorCSogbWFuL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuODogUmVtb3ZlICctLXRlc3QnIGRvY3VtZW50YXRpb24uCisKKzIwMDgtMDEtMTggIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHV0aWxzL3N0YXJ0LXN0b3AtZGFlbW9uLmMgKGRvX2hlbHApOiBBZGQgbWlzc2luZyBzZW1pY29sb24uCisKKzIwMDgtMDEtMTcgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIFRIQU5LUzogQ29udmVydCB0byBVVEYtOC4KKworMjAwOC0wMS0xNyAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogdXRpbHMvc3RhcnQtc3RvcC1kYWVtb24uYyAoZG9faGVscCk6IE1vdmUgdmVyc2lvbiBwcmludGluZyB0byAuLi4KKwkoZG9fdmVyc2lvbik6IC4uLiBoZXJlLiBOZXcgZnVuY3Rpb24uCisJKG1haW4pOiBDYWxsIGRvX3ZlcnNpb24gaW5zdGVhZCBvZiBwcmludGYuCisKKzIwMDgtMDEtMTcgIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6IFJldmVydCB0byB0aGUgb2xkIGJlaGF2aW91ciBvZiBub3QgdXNpbmcKKwlhbnkgc3Vic3R2YXJzIGZpbGUuCisJKiBtYW4vZHBrZy1zb3VyY2UuMTogRml4IGRlZmF1bHQgdmFsdWUgb2YgLVQgcGFyYW1ldGVyLgorCisyMDA4LTAxLTE3ICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDogUmVpbnN0YXRlIHN1cHBvcnQgb2YgdGhlICR7Rm9ybWF0fQorCXN1YnN0dmFycy4KKworMjAwOC0wMS0xNyAgU2FtdWVsIFRoaWJhdWx0ICA8c2FtdWVsLnRoaWJhdWx0QGVucy1seW9uLm9yZz4sCisgICAgICAgICAgICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiB1dGlscy9zdGFydC1zdG9wLWRhZW1vbi5jIChnaWRfaW5fY3VycmVudF9ncm91cHMpOiBOZXcgZnVuY3Rpb24uCisJKG1haW4pOiBDYWxsIHNldHVpZCBvbmx5IGlmIHJlcXVlc3RlZCB0byBydW4gYXMgYSBkaWZmZXJlbnQgdXNlcgorCXRoYW4gdGhlIGN1cnJlbnQgb25lLiBDYWxsIHNldGdpZCBvbmx5IGlmIHJlcXVlc3RlZCB0byBydW4gYXMgYSBncm91cAorCWRpZmZlcmVudCB0aGFuIHRoZSBjdXJyZW50IG9uZSwgYW5kIGluaXRncm91cHMgb25seSBpZiB0aGUgZ3JvdXBzIGlzCisJbm90IHBhcnQgb2YgdGhlIHN1cHBsZW1lbnRhcnkgZ3JvdXBzLgorCisyMDA4LTAxLTE2ICBGcmFuayBMaWNodGVuaGVsZCAgPGRqcGlnQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvY2hhbmdlbG9nL2RlYmlhbi5wbDogUmVzdG9yZSB0aGUgb2xkIGRlZmF1bHQgYmVoYXZpb3VyCisJdG8gcGFyc2UgU1RESU4uIEFsc28gZml4IHRoZSAtbCBvcHRpb24gdG8gc3BlY2lmeSBhIGxhYmVsIGZvciB0aGUKKwlwYXJzZWQgaW5wdXQsIGJ1dCB0aGUgYWN0dWFsIGZpbGUuIFN0aWxsIGFsbG93IC0tZmlsZSB0byBiZSB1c2VkIGZvcgorCXRoYXQuIFVzZSB0aGUgbmV3IGluaGFuZGxlIG9wdGlvbiBvZiBwYXJzZSgpIHRvIHBhc3MgU1RESU4gZGlyZWN0bHkuCisJVGhpcyBzaG91bGQgYmUgZmFzdGVyIGFuZCByZW1vdmVzIHRoZSBpbXBsaWNpdCBkZXBlbmRlbmN5IG9uCisJSU86OlN0cmluZy4KKworCSogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9EZWJpYW4ucG0gKHBhcnNlKTogQWNjZXB0IGlucHV0IGluCisJY29uZmlndXJhdGlvbiBpdGVtICdpbmhhbmRsZScuIEFsbG93IHRvIG92ZXJyaWRlIHRoZSBuYW1lIG9mIHRoZQorCWZpbGUgKHVzZWQgZm9yIHJlcG9ydGluZykgd2l0aCBjb25maWd1cmF0aW9uIGl0ZW0gJ3JlcG9ydGZpbGUnLgorCSogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbSAoaW5pdCk6IENhbGwgcGFyc2UgaWYgJ2luaGFuZGxlJyBpcyBnaXZlbi4KKworCSogc2NyaXB0cy9kcGtnLXBhcnNlY2hhbmdlbG9nLnBsOiBSZW1vdmUgb25lIHN1cGVyZmx1b3VzICVzIGZyb20gYQorCWZvcm1hdHN0cmluZyB3aGljaCB3YXMgdXNlZCB0byBvdXRwdXQgJCEgYmVmb3JlIHN5c2VycigpIHdhcyB1c2VkCisJaW5zdGVhZC4KKworMjAwOC0wMS0xNiAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogdXRpbHMvc3RhcnQtc3RvcC1kYWVtb24uYyAoZG9fc3RvcCk6IERvIG5vdCBwcmludCBtZXNzYWdlcyB3aGVuCisJcnVubmluZyBvbiBxdWlldCBhbmQgdGVzdCBtb2Rlcy4KKwkocnVuX3N0b3Bfc2NoZWR1bGUpOiBMaWtld2lzZS4KKwkobWFpbik6IExpa2V3aXNlLgorCisyMDA4LTAxLTE2ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiB1dGlscy9zdGFydC1zdG9wLWRhZW1vbi5jIChkb19waWRmaWxlKTogQ2FjaGUgcGlkIHZhbHVlIG92ZXIKKwltdWx0aXBsZSBjYWxscy4KKworMjAwOC0wMS0xNiAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogdXRpbHMvc3RhcnQtc3RvcC1kYWVtb24uYzogRml4IGluZGVudGF0aW9uLgorCisyMDA4LTAxLTE2ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2Rwa2ctZGl2ZXJ0LnBsOiBVc2UgOmVycm5vX2ggZnJvbSBQT1NJWC4KKwkoJGVub2VudCk6IFJlbW92ZSB2YXJpYWJsZS4KKwkoRU5PRU5UKTogUmVtb3ZlIGZ1bmN0aW9uLgorCSogc2NyaXB0cy91cGRhdGUtYWx0ZXJuYXRpdmVzLnBsOiBMaWtld2lzZS4KKwkqIHV0aWxzL01ha2VmaWxlLmFtIChwa2dsaWJfUFJPR1JBTVMpOiBSZW1vdmUgdmFyaWFibGUuCisJKGVub2VudF9TT1VSQ0VTKTogTGlrZXdpc2UuCisJKiB1dGlscy9lbm9lbnQuYzogUmVtb3ZlIGZpbGUuCisKKzIwMDgtMDEtMTYgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGRwa2ctZGViL2J1aWxkLmMgKGRvX2J1aWxkKTogVXNlIE5VTEwgaW5zdGVhZCBvZiAwLgorCSogZHBrZy1kZWIvZXh0cmFjdC5jIChleHRyYWN0aGFsZiwgZG9fZnN5c3RhcmZpbGUpOiBMaWtld2lzZS4KKwkqIGRwa2ctZGViL2luZm8uYyAoaW5mb19wcmVwYXJlLCBpbmZvX3NwZXcpOiBMaWtld2lzZS4KKwkoZG9fY29udGVudHMsIGRvX2ZpZWxkKTogTGlrZXdpc2UuCisJKiBkcGtnLWRlYi9tYWluLmMgKGNpcGFjdGlvbiwgYWN0aW9uLCBjbWRpbmZvcywgbWFpbik6IExpa2V3aXNlLgorCSogZHBrZy1zcGxpdC9qb2luLmMgKGRvX2pvaW4pOiBMaWtld2lzZS4KKwkqIGRwa2ctc3BsaXQvcXVldWUuYyAoZG9fYXV0byk6IExpa2V3aXNlLgorCSogbGliL2Rwa2cuaCAoc3RhbmRhcmRfc3RhcnR1cCwgc3RhbmRhcmRfc2h1dGRvd24pOiBMaWtld2lzZS4KKwkqIHNyYy9hcmNoaXZlcy5jIChkZXN0cm95b2JzdGFjaywgZGVjb25maWd1cmUsIGFkZGZpbGV0b2xpc3QpCisJKHRhcm9iamVjdCwgY2hlY2tfYnJlYWtzLCBjaGVja19jb25mbGljdCwgYXJjaGl2ZWZpbGVzKQorCShuZXdjb25mZl9hcHBlbmQpOiBMaWtld2lzZS4KKwkqIHNyYy9jb25maWd1cmUuYyAoZGVmZXJyZWRfY29uZmlndXJlLCBjb25mZmRlcmVmLCBtZDVoYXNoKTogTGlrZXdpc2UuCisJKiBzcmMvZGVwY29uLmMgKGZpbmRicmVha2N5Y2xlcmVjdXJzaXZlLCBmaW5kYnJlYWtjeWNsZSkKKwkoZGVwaXNvayk6IExpa2V3aXNlLgorCSogc3JjL2VucXVpcnkuYyAobGltaXRlZGRlc2NyaXB0aW9uLCBiYWRzdGF0aW5mb3MsIHVucGFja2NoaykKKwkoYXNzZXJ0dmVyc2lvbiwgYXNzZXJ0cHJlZGVwLCBhc3NlcnRlcG9jaCwgYXNzZXJ0bG9uZ2ZpbGVuYW1lcykKKwkoYXNzZXJ0bXVsdGljb25yZXAsIHByZWRlcHBhY2thZ2UsIGNtcHZlcnNpb25zKTogTGlrZXdpc2UuCisJKiBzcmMvZXJyb3JzLmMgKHJlcG9ydHMsIHByaW50X2Vycm9yX3BlcnBhY2thZ2UpOiBMaWtld2lzZS4KKwkqIHNyYy9maWxlc2RiLmMgKGRpdmVyc2lvbnMsIGRpdmVyc2lvbnNmaWxlLCBzdGF0b3ZlcnJpZGVmaWxlKQorCShlbnN1cmVfcGFja2FnZWZpbGVzX2F2YWlsYWJsZSwgZW5zdXJlX2FsbGluc3RmaWxlc19hdmFpbGFibGUpCisJKHdyaXRlX2ZpbGVsaXN0X2V4Y2VwdCwgcmV2ZXJzZWZpbGVsaXN0X2luaXQsIHJldmVyc2VmaWxlbGlzdF9uZXh0KQorCShlbnN1cmVfZGl2ZXJzaW9ucywgaXRlcmZpbGVzdGFydCwgaXRlcmZpbGVuZXh0LCBmaWxlc2RiaW5pdCkKKwkoZmluZG5hbWVub2RlKTogTGlrZXdpc2UuCisJKiBzcmMvaGVscC5jIChjaGVja3BhdGgsIGVuc3VyZV9wYWNrYWdlX2NsaWVudGRhdGEKKwkodmJ1aWxkYXJnbGlzdCwgY3VfcmVzdG9yZXNjcmlwdHNpZ25hbHMsIHNjcmlwdF9jYXRjaHNpZ25hbHMpCisJKGNsZWFyX2lzdG9iZXMpOiBMaWtld2lzZS4KKwkqIHNyYy9tYWluLmMgKGNpcGFjdGlvbiwgaWdub3JlZGVwZW5kcywgZm9yY2VpbmZvcykKKwkoQUNUSU9OLCBPQlNPTEVURSwgQUNUSU9OQkFDS0VORCwgY21kaW5mb3MpCisJKGV4ZWNiYWNrZW5kLCBjb21tYW5kZmQsIG1haW4pOiBMaWtld2lzZS4KKwkqIHNyYy9wYWNrYWdlcy5jIChxdWV1ZWhlYWQsIGFkZF90b19xdWV1ZSwgcGFja2FnZXMsIHByb2Nlc3NfcXVldWUpCisJKGJyZWFrc2VzX29rLCBkZXBlbmRlbmNpZXNfb2spOiBMaWtld2lzZS4KKwkqIHNyYy9wcm9jZXNzYXJjLmMgKHByb2Nlc3NfYXJjaGl2ZSk6IExpa2V3aXNlLgorCSogc3JjL3JlbW92ZS5jIChkZWZlcnJlZF9yZW1vdmUsIHJlbW92YWxfYnVsa19yZW1vdmVfZmlsZXMpCisJKHJlbW92YWxfYnVsa19yZW1vdmVfbGVmdG92ZXJfZGlycywgcmVtb3ZhbF9idWxrX3JlbW92ZV9jb25maWdmaWxlcykKKwkocmVtb3ZhbF9idWxrKTogTGlrZXdpc2UuCisJKiBzcmMvdXBkYXRlLmMgKHVwZGF0ZWF2YWlsYWJsZSk6IExpa2V3aXNlLgorCSogdXRpbHMvc3RhcnQtc3RvcC1kYWVtb24uYyAoeGdldHRpbWVvZmRheSwgcnVuX3N0b3Bfc2NoZWR1bGUpCisJKHBhcnNlX29wdGlvbnMpOiBMaWtld2lzZS4KKwkocGlkX2lzX2NtZCwgcGlkX2lzX3VzZXIsIHBpZF9pc19leGVjKSBbSEFWRV9LVk1fSF06IExpa2V3aXNlLgorCisyMDA4LTAxLTE1ICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsIChmaWx0ZXJfZGVwcyk6IEZpeCBmaWx0ZXJpbmcgb2YKKwlkdXBsaWNhdGVkIGRlcGVuZGVuY2llcyBpbiBmaWVsZHMgb2YgbGVzc2VyIHByaW9yaXR5LiBEZXBlbmRlbmNpZXMKKwljb21pbmcgZnJvbSBzaGxpYnMgZmlsZXMgaGF2ZSBubyBhc3NvY2lhdGVkIHZlcnNpb24gYW5kIHRoaXMgY2FzZQorCXdhc24ndCBoYW5kbGVkIHByb3Blcmx5LgorCSogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDogV2hlbiB0aGUgc2FtZSBiaW5hcnkgaXMgcGFzc2VkCisJc2V2ZXJhbCB0aW1lcyBhcyBwYXJhbWV0ZXJzIChhc3NvY2lhdGVkIHRvIGRpZmZlcmVudCBmaWVsZHMpLAorCWFzc29jaWF0ZSBpdCB0byB0aGUgbW9zdCBpbXBvcnRhbnQgZmllbGQuCisKKzIwMDgtMDEtMTQgIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsLCBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbCwKKwlzY3JpcHRzL2Rwa2ctc291cmNlLnBsOiBIaW50IFBlcmwgaW50byB1c2luZyBVVEYtOCBmb3Igb3V0cHV0CisJb24gKi5kc2MsICouY2hhbmdlcyBhbmQgREVCSUFOL2NvbnRyb2wgZmlsZXMuIFVwZGF0ZWQgc29tZSBvcGVuKCkgY2FsbHMKKwlmb3IgbW9yZSBjb25zaXN0ZW5jeSBhbmQgYWRkZWQgYmlubW9kZSgpIGNhbGxzIGZvciBmaWxlaGFuZGxlcyB0aGF0CisJaGFuZGxlIG9ubHkgYmluYXJ5IGRhdGEuCisKKzIwMDgtMDEtMTMgIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvRHBrZy9GaWVsZHMucG06IERyb3AgcHVibGljIGZ1bmN0aW9uCisJc2V0X2ZpZWxkc19pbXBvcnRhbmNlKCkgaW4gZmF2b3Igb2YgYSBtZXRob2Qgb24KKwlEcGtnOjpGaWVsZHM6Ok9iamVjdC4gSW50ZWdyYXRlCXB1YmxpYyBmdW5jdGlvbgorCXNvcnRfZmllbGRfYnlfaW1wb3J0YW5jZSgpIGluIHRoZSBvdXRwdXQoKSBtZXRob2Qgd2hlcmUgaXQgd2FzCisJdXNlZC4KKwkqIHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG0sIHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsLAorCXNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsLCBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOiBVcGRhdGVkIHRvIHVzZQorCXRoZSBzZXRfZmllbGRfaW1wb3J0YW5jZSgpIG1ldGhvZCBpbnN0ZWFkIG9mIHRoZSByZW1vdmVkIGZ1bmN0aW9uLgorCSogc2NyaXB0cy9EcGtnL0NvbnRyb2wucG06IFVwZGF0ZSBwb2QgZG9jdW1lbnRhdGlvbiB0byByZWZlciB0bworCURwa2c6OkZpZWxkczo6T2JqZWN0IGluc3RlYWQgb2YgdGhlIGludmFsaWQgRHBrZzo6Q2RhdGE6Ok9iamVjdC4KKworMjAwOC0wMS0xMyAgRnJhbmsgTGljaHRlbmhlbGQgIDxkanBpZ0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL0Rwa2cvRmllbGRzLnBtIChkdW1wKTogQWxsb3cgdG8gb21pdCB0aGUKKwlmaWxlaGFuZGxlIGFyZ3VtZW50LiBJZiB0aGUgZnVuY3Rpb24gaXMgY2FsbGVkIGluCisJbm9uLXZvaWQgY29udGV4dCwgYWxzbyByZW1vdmUgdGhlIHByaW50ZWQgc3RyaW5nCisJdG8gdGhlIGNhbGxlci4gVG9nZXRoZXIgdGhpcyBhdm9pZHMgaGF2aW5nIHRvIGZpZGRsZQorCXdpdGggZmlsZWhhbmRsZXMgaWYgdGhlIGNhbGxlciBkb2Vzbid0IHdhbnQgdG8uCisJKG91dHB1dCk6IExpa2V3aXNlLgorCSogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbSAoZGF0YTJyZmM4MjIpOiBTaW1wbGlmeQorCXVzaW5nIHRoaXMgbmV3IGJlaGF2aW91ci4KKworCSogc2NyaXB0cy90LzYwMF9EcGtnX0NoYW5nZWxvZy50OiBBZGQgYSBuZXcgY2hhbmdlbG9nCisJJ2ZpZWxkcycgdGhhdCB0ZXN0cyB0aGUgaGFuZGxpbmcgb2YgdGhlIGRpZmZlcmVudCBmaWVsZHMKKwlpbiB0aGUgZHBrZyBmb3JtYXQuCisKKwkqIHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06IFJlcGxhY2UgYWxsIGZpZWxkIGhhc2hlcworCXdpdGggRHBrZzo6Q2hhbmdlbG9nOjpFbnRyeSBvYmplY3RzLgorCShEcGtnOjpDaGFuZ2Vsb2c6OkVudHJ5KTogQmFzZSBvbiBEcGtnOjpGaWVsZHM6Ok9iamVjdC4KKwkoZGF0YTJyZmM4MjIpOiBVc2UgRHBrZzo6RmllbGRzOjpPYmplY3QtPm91dHB1dCBhbmQgZml4CisJaGFuZGxpbmcgb2YgdXNlci1kZWZpbmVkIGZpZWxkcy4KKwkoZGF0YTJyZmM4MjJfbXVsdCk6IE1lcmdlIGludG8gZGF0YTJyZmM4MjIgKGF1dG9kZXRlY3QKKwl3aGV0aGVyIHRoZSBhcmd1bWVudCBpcyBhbiBvYmplY3Qgb3IgYW4gYXJyYXkgb2Ygb2JqZWN0KS4KKwkqIHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRGViaWFuLnBtOiBBZGFwdCBmb3IKKwlEcGtnOjpDaGFuZ2Vsb2c6OkVudHJ5IGNoYW5nZXMuCisJKiBzY3JpcHRzL3QvNjAwX0Rwa2dfQ2hhbmdlbG9nLnQ6IExpa2V3aXNlLgorCisyMDA4LTAxLTEzICBGcmFuayBMaWNodGVuaGVsZCAgPGRqcGlnQGRlYmlhbi5vcmc+CisKKwkqIG1hbi9kcGtnLXBhcnNlY2hhbmdlbG9nLjE6IERvY3VtZW50IHRoZSBuZXcgY29tbWFuZCBsaW5lIG9wdGlvbnMuCisKKzIwMDgtMDEtMTIgIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKwkqIG1hbi9kcGtnLXNobGliZGVwcy4xOiBGaXggYSB0eXBvIHJlcG9ydGVkIGJ5IEhlbGdlIEtyZXV0em1hbm4uCisKKzIwMDgtMDEtMTIgIFJhcGhhZWwgaGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9EcGtnL0ZpZWxkcy5wbSwgc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDogQWRkIHN1cHBvcnQgb2YKKwlEbS1VcGxvYWQtQWxsb3dlZCBmaWVsZC4gSXQgYXV0b21hdGljYWxseSBlbmRzIHVwIGluIHRoZSBkc2MuCisKKzIwMDgtMDEtMTIgIFJhcGhhZWwgaGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9EcGtnL0ZpZWxkcy5wbTogRGVmaW5lIHZhcmlhYmxlcyBjb250YWluaW5nCisJYXV0aG9yaXRhdGl2ZSBsaXN0IG9mIGZpZWxkcyBmb3IgZGViaWFuL2NvbnRyb2wgKG9uZSBmb3Igc291cmNlCisJc3RhbnphLCBvbmUgZm9yIHBhY2thZ2Ugc3RhbnphKS4KKwkqIHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsLCBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbCwKKwlzY3JpcHRzL2Rwa2ctc291cmNlLnBsOiBVc2UgdGhlIG5ldyB2YXJpYWJsZXMgdG8gcHJvcGVybHkgaWdub3JlCisJdmFsaWQgZmllbGRzLiBTb21lIHJlbGF0ZWQgY2xlYW51cC4KKworMjAwOC0wMS0xMSAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6IEFsc28gZm9yY2UgdmVyc2lvbiBpbiAke2JpbmFyeTpWZXJzaW9ufQorCWlmIGRwa2ctZ2VuY29udHJvbCAtdjx2ZXJzaW9uPiBpcyB1c2VkLiBUaGF0IHdheSB3ZSdyZSBjb25zaXN0ZW50CisJd2l0aCB0aGUgZGVmaW5pdGlvbiBvZiB0aGF0IHZhcmlhYmxlIGluIGRlYi1zdWJzdHZhcnMoNSkuCisKKzIwMDgtMDEtMTAgIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKwkqIG1hbi9kcGtnLXNvdXJjZS4xOiBFeHBsYWluIGJldHRlciB0aGUgZmlyc3QgcGFyYW1ldGVyIG9mIHRoZSAnLWInCisJb3B0aW9uLgorCisyMDA4LTAxLTEwICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBkZWJpYW4vY29udHJvbDogQWRkIGEgIkJyZWFrczogZHBrZy1kZXYgKD0gMS4xNC4xMyksCisJZHBrZy1kZXYgKD0gMS4xNC4xNCkiIG9uIGRwa2cgdG8gZm9yY2UgdXBncmFkZSBvZiB0aG9zZSBkcGtnLWRldgorCXZlcnNpb25zIHRoYXQgd291bGQgYnJlYWsgd2l0aCB0aGUgbW92ZSBvZiB0aGUgY29tcHJlc3Npb24gcmVsYXRlZAorCXZhcmlhYmxlcyBmcm9tIERwa2cucG0gaW50byBEcGtnL0NvbXByZXNzaW9uLnBtLgorCisyMDA4LTAxLTA4ICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL0Rwa2cvVmVyc2lvbi5wbTogSW1wb3J0IG1pc3NpbmcgZXJyb3IgZnVuY3Rpb24gZnJvbQorCURwa2c6OkVycm9ySGFuZGxpbmcuCisKKwkqIHNjcmlwdHMvcG8vUE9URklMRVMuaW46IEFkZCBtYW55IG1vZHVsZXMgY29udGFpbmluZyB0cmFuc2xhdGFibGUKKwlzdHJpbmdzLgorCisJKiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtIChwYXJzZV9jaGFuZ2Vsb2cpOiBOZXcgZnVuY3Rpb24gdG8KKwlyZXBsYWNlIGNvbnRyb2xsaWIncyBwYXJzZWNoYW5nZWxvZy4KKworCSogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbCwgc2NyaXB0cy9kcGtnLWNoZWNrYnVpbGRkZXBzLnBsLAorCXNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsLCBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbCwKKwlzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbCwgc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDogVXBkYXRlIHNjcmlwdHMgdG8KKwl1c2UgRHBrZzo6Q2hhbmdlbG9nOjpwYXJzZV9jaGFuZ2Vsb2cgaW5zdGVhZCBvZiB0aGUgb2xkIGNvbnRyb2xsaWIucGwncworCXBhcnNlY2hhbmdlbG9nLiBXaXRoIHRoaXMgbGFzdCBjaGFuZ2UgY29udHJvbGxpYi5wbCBpcyBubyBtb3JlIHVzZWQgYnkKKwlhbnkgc2NyaXB0LgorCisJKiBzY3JpcHRzL2NvbnRyb2xsaWIucGw6IFJlbW92ZWQgYXMgaXQncyBubyBtb3JlIHVzZWQgYnkgYW55CisJc2NyaXB0LgorCisJKiBkZWJpYW4vZHBrZy1kZXYuaW5zdGFsbDogQWRkIG1pc3NpbmcgbW9kdWxlcy4KKworMjAwOC0wMS0wOCAgRnJhbmsgTGljaHRlbmhlbGQgIDxkanBpZ0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2Rwa2ctcGFyc2VjaGFuZ2Vsb2cucGw6IE1ha2UgdGhlCisJLUwgb3B0aW9uIGFjdHVhbGx5IHdvcmsgKGl0J3Mgb25seSBiZWVuIGVsZXZlbgorCXllYXJzLi4uKQorCQorCSogc2NyaXB0cy9EcGtnL0Vycm9ySGFuZGxpbmcucG0gKHJlcG9ydCk6IGV4cG9ydC4KKworMjAwOC0wMS0wOCAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9EcGtnL0NkYXRhLnBtLCBzY3JpcHRzL0Rwa2cvQ29udHJvbC5wbTogQWRkIHR3byBuZXcKKwltb2R1bGUgdG8gcGFyc2UgYW5kIG1hbmlwdWxhdGUgZmlsZXMgbGlrZSBkZWJpYW4vY29udHJvbC4KKwkqIHNjcmlwdHMvdC82MDBfRHBrZ19Db250cm9sLnQsCisJc2NyaXB0cy90LzYwMF9EcGtnX0NvbnRyb2wvY29udHJvbC0xOiBBZGQgbm9uLXJlZ3Jlc3Npb24gdGVzdHMgZm9yCisJRHBrZzo6Q29udHJvbCBhbmQgRHBrZzo6Q2RhdGEuCisJKiBzY3JpcHRzL2Rwa2ctY2hlY2tidWlsZGRlcHMucGwsIHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsLAorCXNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsLCBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbCwKKwlzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsLCBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOiBVcGRhdGUgc2NyaXB0cworCXRvIHVzZSB0aGUgbmV3IG1vZHVsZXMgRHBrZzo6Q2RhdGEsIERwa2c6OkNvbnRyb2wsCisJRHBrZzo6RmllbGRzOjpPYmplY3QgYW5kIERwa2c6OlN1YnN0dmFycy4KKworCSogc2NyaXB0cy9EcGtnL1ZlcnNpb24ucG0gKGNoZWNrX3ZlcnNpb24pOiBOZXcgZnVuY3Rpb24gcmVwbGFjaW5nCisJY2hlY2t2ZXJzaW9uIG9mIGNvbnRyb2xsaWIucGwuCisJKiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsLCBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOiBVc2UgdGhlCisJbmV3IGNoZWNrX3ZlcnNpb24uCisKKwkqIHNjcmlwdHMvRHBrZy9WYXJzLnBtIChzZXRfc291cmNlX3BhY2thZ2UpOiBOZXcgZnVuY3Rpb24gdG8gc2V0CisJYW5kIGNoZWNrIHRoZSBnbG9iYWwgdmFyaWFibGUgJHNvdXJjZXBhY2thZ2UgKHJlcGxhY2luZworCWNvbnRyb2xsaWIncyBzZXRzb3VyY2VwYWNrYWdlKS4KKwkqIHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsLCBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbCwKKwlzY3JpcHRzL2Rwa2ctc291cmNlLnBsOiBVc2UgdGhlIG5ldyBzZXRfc291cmNlX3BhY2thZ2UuCisKKwkqIHNjcmlwdHMvZHBrZy1kaXN0YWRkZmlsZS5wbCwgc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6IERlbGV0ZQorCXRoZSBjaG93bihnZXRmb3duZXIoKSwgLi4uKSBvbiBuZXcgZmlsZXMuIEl0IGRvZXNuJ3Qgc2VlbSB0byBkbworCWFueXRoaW5nIHVzZWZ1bCBhbnltb3JlIGFzIGl0IGdvdCBkcm9wcGVkIGZyb20gc2V2ZXJhbCBvdGhlcgorCXNjcmlwdHMgb3ZlciB0aGUgeWVhcnMgd2l0aG91dCBwcm9ibGVtcy4KKworCSogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDogSW50ZWdyYXRlIHJlYWRtZDVzdW0gZnJvbSBjb250cm9sbGliIGhlcmUKKwlhcyBpdCdzIHRoZSBvbmx5IHVzZXIgb2YgdGhhdCBmdW5jdGlvbi4KKworCSogc2NyaXB0cy9jb250cm9sbGliLnBsOiBHZXQgcmlkIG9mIGV2ZXJ5dGhpbmcgZXhjZXB0CisJcGFyc2VjaGFuZ2Vsb2cgYW5kIGl0cyBkZXBlbmRlbmNpZXMgKHBhcnNlY2RhdGEsIHN5bnRheCkgdGhhdCBhcmUKKwlzdGlsbCBuZWVkZWQuCisKKwkqIHNjcmlwdHMvTWFrZWZpbGUuYW06IEluY2x1ZGUgYWxsIHRoZSBuZXcgZmlsZXMgaW4gdGhlCisJZGlzdHJpYnV0ZWQgdGFyYmFsbC4KKworMjAwOC0wMS0wOCAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9EcGtnL0Vycm9ySGFuZGxpbmcucG0gKHN5bnRheGVycik6IE5ldyBmdW5jdGlvbiB0bworCXJlcGxhY2UgdGhlIHN5bnRheCgpIGZ1bmN0aW9uIGluIGNvbnRyb2xsaWIucGwuCisKKzIwMDgtMDEtMDcgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOiBJZ25vcmUgSG9tZXBhZ2UgZmllbGQgaW4gYmluYXJ5IHBhY2thZ2UKKwlzdGFuemFzLgorCSogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDogTGlrZXdpc2UuCisKKzIwMDgtMDEtMDcgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvZHBrZy1jaGVja2J1aWxkZGVwcy5wbDogUmVtb3ZlIHVudXNlZCAkZGVwX3JlZ2V4LgorCisyMDA4LTAxLTA3ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2Rwa2ctY2hlY2tidWlsZGRlcHMucGw6IEFkZCBidWlsZC1lc3NlbnRpYWwgYXMgYW4gaW1wbGljaXQKKwlCdWlsZC1EZXBlbmRzLgorCisyMDA4LTAxLTA3ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBjb25maWd1cmUuYWM6IEJ1bXAgdmVyc2lvbiB0byAxLjE0LjE2fi4KKworMjAwOC0wMS0wNyAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogY29uZmlndXJlLmFjOiBSZWxlYXNlIDEuMTQuMTUuCisKKzIwMDgtMDEtMDcgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNyYy9hcmNoaXZlcy5jIChhcmNoaXZlZmlsZXMpOiBVc2UgYXJnbGlzdCBpbnN0ZWFkIG9mIG5hcmdsaXN0LgorCisyMDA4LTAxLTA3ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBsaWIvbmZtYWxsb2MuYyAobmZtYWxsb2MpOiBSZW1vdmUgaW5saW5lIGtleXdvcmQgYXMgZXh0ZXJuIGlubGluZQorCWNoYW5nZXMgc2VtYW50aWNzIGZyb20gR05VIEMgdG8gQzk5LgorCSogbGliL3ZhcmJ1Zi5jICh2YXJidWZhZGRjKTogTGlrZXdpc2UuCisKKzIwMDgtMDEtMDcgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGRwa2ctZGViL2V4dHJhY3QuYyAoZXh0cmFjdGhhbGYpOiBNb3ZlIG5lZ2F0aXZlIG1lbWJlciBsZW5ndGggY2hlY2sKKwl0byAuLi4KKwkocGFyc2VoZWFkZXJsZW5ndGgpOiAuLi4gaGVyZS4gQ2hhbmdlIHJldHVybiB0eXBlIHRvIHNpemVfdC4gQ2hhbmdlCisJdmFyaWFibGUgciB0byBzc2l6ZV90LiBVc2Ugc3RydG9sIGluc3RlYWQgb2Ygc3RydG91bCB0byBlYXNpbHkgY2F0Y2gKKwluZWdhdGl2ZSB2YWx1ZXMuCisJKiBkcGtnLWRlYi9pbmZvLmMgKGluZm9fc3Bldyk6IFVzZSAlenUgaW4gYSBmb3JtYXQgc3RyaW5nIGluc3RlYWQgb2YKKwklbHUgdG8gcHJpbnQgcGF0aGxlbiwgYSBzaXplX3QgdmFyaWFibGUuCisJKiBkcGtnLXNwbGl0L3F1ZXVlLmMgKGRvX2F1dG8pOiBDaGFuZ2UgaiBmcm9tIHVuc2luZ2VkIGludCB0byBpbnQuCisJQ2FzdCBqIHRvIHVuc2lnbmVkIGludCB3aGVuIGNvbXBhcmluZyBpdCB0byBpLgorCSogbGliL3ZhcmJ1Zi5jICh2YXJidWZwcmludGYpOiBDaGFuZ2Ugb3UgZnJvbSB1bnNpZ25lZCBpbnQgdG8gc2l6ZV90LgorCUNoYW5nZSByIGZyb20gdW5zaWduZWQgaW50IHRvIGludC4gQ2FzdCB2YWx1ZSBjb21wYXJlZCB0byByIHRvIGludC4KKwkodmFyYnVmcHJpbnRmKTogTGlrZXdpc2UuCisJKiBzcmMvYXJjaGl2ZXMuYyAodGFyb2JqZWN0KTogQ2hhbmdlIHIgZnJvbSBzaXplX3QgdG8gc3NpemVfdC4KKwlDYXN0IHIgdG8gc2l6ZV90IHdoZW4gY29tcGFyaW5nIGl0IHRvIHN5bWxpbmtmbi5zaXplLgorCSogc3JjL21haW4uYyAoc2V0Zm9yY2UpOiBDYXN0IHN0cmluZyBkaWZmZXJlbmNlIHRvIHNpemVfdCBpbnN0ZWFkIG9mCisJaW50LgorCSogdXRpbHMvc3RhcnQtc3RvcC1kYWVtb24uYyAocGFyc2Vfc2NoZWR1bGUpOiBDaGFuZ2Ugc3RyX2xlbiBmcm9tCisJcHRyZGlmZl90IHRvIHNpemVfdC4gQ2FzdCBzdHJpbmcgZGlmZmVyZW5jZSB0byBzaXplX3QgaW5zdGVhZCBvZgorCXB0cmRpZmZfdC4gUmVtb3ZlIHB0cmRpZmZfdCBjYXN0IHRvIHNpemVvZi4KKworMjAwOC0wMS0wNyAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9EcGtnL0J1aWxkT3B0aW9ucy5wbSAoc2V0KTogUGFyc2UgYWxsIG9wdGlvbnMgc2VwYXJhdGVkCisJYnkgc3BhY2VzIG9yIGNvbW1hLCBkbyBub3QgbG93ZXJjYXNlIHRoZSBvcHRpb24gbmFtZXMsIGRvIG5vdCBtYXRjaAorCW9uIG5hbWUgc3Vic3RyaW5ncywgYW5kIG9uIHJlY29nbml6ZWQgb3B0aW9ucyB3aXRoIGludmFsaWQgdmFsdWVzCisJZGlzY2FyZCB0aGUgdmFsdWUgb3IgdGhlIGVudGlyZSBvcHRpb24uCisJKiBzY3JpcHRzL3QvMzAwX0Rwa2dfQnVpbGRPcHRpb25zLnQ6IEFkanVzdCB0ZXN0IHN1aXRlLgorCisyMDA4LTAxLTA2ICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBtYW4vZGViLWNvbnRyb2wuNTogRXhwbGFpbiBiZXR0ZXIgdGhlIG9yZGVyaW5nIG9mIGNhbGwgb2YKKwlwb3N0aW5zdC9wcmVybSBkdXJpbmcgaW5zdGFsbGF0aW9ucyBhbmQgcmVtb3ZhbCBiZXR3ZWVuIGEgcGFja2FnZQorCWFuZCBpdHMgZGVwZW5kZW5jaWVzLgorCisyMDA4LTAxLTA2ICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL0Rwa2cvU2hsaWJzL09iamR1bXAucG06IEFsc28gcmV0cmlldmUgZHluYW1pYyByZWxvY2F0aW9uCisJcmVjb3JkcyBmcm9tIG9iamR1bXAgYnkgYWRkaW5nIHRoZSAtUiBvcHRpb24uIFVzZSB0aGlzIGluZm9ybWF0aW9uCisJdG8gbWFyayBzeW1ib2xzIGFmZmVjdGVkIGJ5IFJfKl9DT1BZIHJlbG9jYXRpb25zIGFzIHVuZGVmaW5lZC4KKwlUaGV5IGFyZSBpbml0aWFsaXplZCBieSB0aGUgbG9hZGVyIHdpdGggdmFsdWVzIHNlYXJjaGVkIGluIHRoZQorCW5lZWRlZCBsaWJyYXJpZXMuCisKKwkqIHNjcmlwdHMvRHBrZy9CdWlsZE9wdGlvbnMucG0gKHNldCk6IENoYW5nZSB0aGUgZGVmYXVsdCB2YWx1ZSBvZgorCXRoZSBvdmVyd3JpdGUgcGFyYW1ldGVyIHRvIDEuIFRoZSBvbmx5IHVzZSBvZiB0aGlzIGZ1bmN0aW9uIGluCisJZHBrZy1idWlsZHBhY2thZ2UgaXMgbWlzc2luZyB0aGUgcGFyYW1ldGVyIGFuZCBhY3R1YWxseSB3YW50cyB0bworCW92ZXJ3cml0ZSB0aGUgd2hvbGUgdmFyaWFibGUuCisJKiBzY3JpcHRzL3QvMzAwX0Rwa2dfQnVpbGRPcHRpb25zLnQ6IEFkanVzdCB0aGUgdGVzdCBzdWl0ZSBmb3IgdGhpcworCWNoYW5nZS4KKworMjAwOC0wMS0wNCAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9EcGtnL1NobGlicy9TeW1ib2xGaWxlLnBtOiBSZXBsYWNlICNERVBSRUNBVEVEIGJ5CisJI01JU1NJTkcgaW4gdGhlIG91dHB1dCBhbmQgcmVjb2duaXplIGJvdGggd2hpbGUgcGFyc2luZy4gUGVvcGxlCisJdW5kZXJzdGFuZCBiZXR0ZXIgdGhhdCB3YXkuCisKKzIwMDgtMDEtMDMgIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGwgKGZpbmRfc3ltYm9sc19maWxlKTogV2hlbiBsaWJyYXJpZXMKKwlhcmUgZm91bmQgaW4gbm9uLXBhY2thZ2VkIGZpbGVzLCBmaXJzdCB0cnkgdG8gZmluZCB0aGUKKwljb3JyZXNwb25kaW5nIHN5bWJvbHMgZmlsZSBpbiB0aGUgYnVpbGQgdHJlZSBjb250YWluaW5nIHRoYXQKKwlsaWJyYXJ5LiBPbiB0aGUgb3Bwb3NpdGUsIGRvbid0IGxvb2sgdXAgc3ltYm9scyBmaWxlcyBpbiBkZWJpYW4vKgorCWJ1aWxkIGRpcmVjdG9yaWVzIGZvciBsaWJyYXJpZXMgZm91bmQgaW4gaW5zdGFsbGVkIHBhY2thZ2VzIChidWlsZAorCXRyZWVzIGFyZSBzY2FubmVkIGZpcnN0IGFuZCB0aHVzIGlmIHRoZXkgY29udGFpbiBhIG5lZWRlZCBsaWJyYXJ5CisJZHBrZy1zaGxpYmRlcHMgd2lsbCBmaW5kIHRoZSBsaWJyYXJ5IHRoZXJlIGFuZCBub3QgaW4gYW4gaW5zdGFsbGVkCisJcGFja2FnZSkuCisJKiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsIChteV9maW5kX2xpYnJhcnkpOiBXaGVuIGRlZmluaW5nIHRoZQorCWxpc3Qgb2YgcGFja2FnZSBidWlsZCB0cmVlcyB0byBzY2FuLCBhbHNvIGNvbnNpZGVyIHRob3NlIHRoYXQKKwljb250YWluIHN5bWJvbHMgZmlsZXMgKGluc3RlYWQgb2Ygb25seSBjb25zaWRlcmluZyB0aG9zZSB0aGF0IGhhdmUKKwlhIHNobGlicyBmaWxlKS4KKwkqIG1hbi9kcGtnLXNobGliZGVwcy4xOiBEb2N1bWVudCB0aGUgY2hhbmdlIGxpc3RlZCBhYm92ZS4KKworCSogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDogQWRkIGEgbmV3IC1TPHBrZ2J1aWxkZGlyPiBvcHRpb24gdG8KKwlpbmRpY2F0ZSBhIHBhY2thZ2UgYnVpbGQgdHJlZSB0aGF0IHNob3VsZCBiZSBzY2FubmVkIGZpcnN0IHdoZW4KKwl0cnlpbmcgdG8gZmluZCBhIGxpYnJhcnkuCisJKiBtYW4vZHBrZy1zaGxpYmRlcHMuMTogRG9jdW1lbnQgdGhlIG5ldyAtUyBvcHRpb24uCisKKwkqIHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGwgKGFkZF9zaGxpYnNfZGVwKTogVXNlIHRoZSBzYW1lIGxvZ2ljCisJYXMgZmluZF9zeW1ib2xzX2ZpbGVzIHRvIGZpbmQgc2hsaWJzIGZpbGVzLiBDaGVjaworCWRlYmlhbi8qL0RFQklBTi9zaGxpYnMgb25seSB3aGVuIHRoZSBsaWJyYXJ5IGhhcyBub3QgYmVlbiBmb3VuZCBpbgorCWFuIGluc3RhbGxlZCBwYWNrYWdlLCBhbmQgZ2l2ZSBwcmVjZWRlbmNlIHRvIHRoZSBzaGxpYnMgcHJvdmlkZWQKKwlieSB0aGUgYmluYXJ5IHBhY2thZ2Ugd2hlcmUgdGhlIGxpYnJhcnkgaGFzIGJlZW4gZm91bmQuIFJlcGxhY2VzCisJdGhlIHByZXZpb3VzIHdvcmstYXJvdW5kIHRoYXQgZ2F2ZSBwcmVjZWRlbmNlIHRvIHRoZSBwYWNrYWdlCisJdGhhdCBjb250YWluZWQgdGhlIGJpbmFyeS4KKwkqIG1hbi9kcGtnLXNobGliZGVwcy4xOiBEb2N1bWVudCB0aGUgYWJvdmUgY2hhbmdlIGluIHRoZSBzaGxpYnMKKwlzZWFyY2ggb3JkZXIuCisKKzIwMDgtMDEtMDMgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6IERvIG5vdCBhdXRvbWF0aWNhbGx5IGVuYWJsZSAnLWonCisJaWYgREVCX0JVSUxEX09QVElPTlMgY29udGFpbnMgcGFyYWxsZWw9biwgYW5kIGFsbG93IG92ZXJyaWRpbmcKKwlpdHMgdmFsdWUgZnJvbSB0aGUgZW52aXJvbm1lbnQuCisJKiBtYW4vZHBrZy1idWlsZHBhY2thZ2UuMTogRG9jdW1lbnQgbmV3IC1qIGJlaGF2aW91ci4KKworMjAwOC0wMS0wMiAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogdXRpbHMvc3RhcnQtc3RvcC1kYWVtb24uYyBbIV9fR05VQ19fXSAoZmF0YWwsIGJhZHVzYWdlKTogUmVtb3ZlCisJcmVkdW5kYW50IGZ1bmN0aW9uIGRlY2xhcmF0aW9ucy4KKworMjAwOC0wMS0wMiAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc3JjL21haW4uaCAoc3RydWN0IHN0YXQpOiBOZXcgZm9yd2FyZCBkZWNsYXJhdGlvbi4KKworMjAwOC0wMS0wMiAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogbGliL2Rwa2cuaCAod2FybmluZ2YpOiBBZGQgUFJJTlRGRk9STUFUIGF0dHJpYnV0ZS4KKwkoYnVmZmVyX2NvcHlfc2V0dXBfUHRySW50KTogTGlrZXdpc2UuCisJKGJ1ZmZlcl9jb3B5X3NldHVwX1B0clB0cik6IExpa2V3aXNlLgorCShidWZmZXJfY29weV9zZXR1cF9JbnRQdHIpOiBMaWtld2lzZS4KKwkoYnVmZmVyX2NvcHlfc2V0dXBfSW50SW50KTogTGlrZXdpc2UuCisJKGRlY29tcHJlc3NfY2F0KTogTGlrZXdpc2UuCisJKGNvbXByZXNzX2NhdCk6IExpa2V3aXNlLgorCSogbGliL2Rwa2ctZGIuaCAobG9nX21lc3NhZ2UpOiBMaWtld2lzZS4KKworMjAwOC0wMS0wMiAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogbGliL2Rwa2cuaCAoTk9OUkVUVVJOUFJJTlRGRk9STUFUKTogUmVtb3ZlIG1hY3JvLgorCShvaHNoaXQpOiBVc2UgTk9OUkVUVVJOSU5HIGFuZCBQUklOVEZGT1JNQVQgaW5zdGVhZCBvZgorCU5PTlJFVFVSTlBSSU5URkZPUk1BVC4KKwkob2hzaGl0ZSk6IExpa2V3aXNlLgorCShiYWR1c2FnZSk6IExpa2V3aXNlLgorCSogdXRpbHMvc3RhcnQtc3RvcC1kYWVtb24uYyAoTk9OUkVUVVJOUFJJTlRGRk9STUFUKTogUmVtb3ZlIG1hY3JvLgorCShmYXRhbCk6IFVzZSBOT05SRVRVUk5JTkcgYW5kIFBSSU5URkZPUk1BVCBpbnN0ZWFkIG9mCisJTk9OUkVUVVJOUFJJTlRGRk9STUFULgorCisyMDA4LTAxLTAxICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOiBVc2UgRHBrZzo6Q29tcHJlc3Npb24uIFVzZSAkY29tcF9yZWdleAorCXRvIG1hdGNoIGNvbXByZXNzZWQgZGlmZnMgYW5kIHRhcmJhbGxzLgorCisyMDA4LTAxLTAxICBTYW11ZWwgVGhpYmF1bHQgIDxzYW11ZWwudGhpYmF1bHRAZW5zLWx5b24ub3JnPgorCisJKiB1dGlscy9zdGFydC1zdG9wLWRhZW1vbi5jIChkb19zdG9wKTogRG8gbm90IHByaW50ICdmYWlsZWQgdG8ga2lsbCcKKwl3YXJuaW5nIHdoZW4gZG9pbmcgcGlkIHBvbGxpbmcuCisKKzIwMDgtMDEtMDEgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNyYy9hcmNoaXZlcy5jIChhcmNoaXZlZmlsZXMpOiBSZW1vdmUgcG9pbnRsZXNzIHN0cmR1cCBmb3IgZXhlY3ZwCisJYXJndW1lbnRzLgorCisyMDA4LTAxLTAxICBJYW4gWmltbWVybWFuICA8aXR6QGJ1dWcub3JnPgorCisJKiBzY3JpcHRzL2luc3RhbGwtaW5mby5wbDogSWdub3JlIHdyYXBwZWQgbGluZXMgd2hlbiBtYXRjaGluZworCXNlY3Rpb24gdGl0bGVzLgorCisyMDA4LTAxLTAxICBKb2huIFphaXRzZWZmICA8Si5aYWl0c2VmZkB6YXAub3JnLmF1PgorCisJKiBkc2VsZWN0L2Jhc2VsaXN0LmNjIChiYXNlbGlzdDo6d29yZHdyYXBpbmZvKTogU3RvcCBwcm9jZXNzaW5nIHdoZW4KKwlleGNlZWRpbmcgaW5mb3BhZCBsaW5lIGxpbWl0LCBhbmQgYWRkIGEgd2FybmluZyBtZXNzYWdlLgorCisyMDA4LTAxLTAxICBTdmVuIFJ1ZG9scGggIDxzcjFAbG9vbS5zYXguZGU+CisKKwkqIGRzZWxlY3QvYmFzZWxpc3QuY2MgKGJhc2VsaXN0OjpzdGFydGRpc3BsYXkpOiBTZXQgaGVscHNjcmVlbl9hdHRyCisJb24gbW9ub2Nocm9tZSB0ZXJtaW5hbHMuCisKKzIwMDctMTItMzAgIEEuIENvc3RhICA8YWdjb3N0YUBnaXMubmV0PgorCisJKiBtYW4vZHBrZy1nZW5zeW1ib2xzLjEsIG1hbi9kcGtnLXNobGliZGVwcy4xOiBGaXggc29tZSB0eXBvcy4KKwkqIG1hbi9kcGtnLXNvdXJjZS4xLCBtYW4vZGViLXN5bWJvbHMuNTogTGlrZXdpc2UuCisKKzIwMDctMTItMjggIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvRHBrZy5wbTogQWRkIGEgd2FybmluZyB0byBhdm9pZCBhZGRpbmcgdW5uZWNlc3Nhcnkgc3R1ZmYKKwlpbiB0aGF0IG1vZHVsZS4KKworMjAwNy0xMi0yNyAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9EcGtnLnBtICglRVhQT1JUX1RBR1MsIEBFWFBPUlRfT0spOiBSZW1vdmUuCisJKEBjb21wX3N1cHBvcnRlZCwgJWNvbXBfc3VwcG9ydGVkLCAlY29tcF9leHQsICRjb21wX3JlZ2V4KTogTW92ZQorCXZhcmlhYmxlcyAuLi4KKwkqIHNjcmlwdHMvRHBrZy9Db21wcmVzc2lvbi5wbTogLi4uIGhlcmUuIE5ldyBmaWxlLgorCSogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6IFVzZSBuZXcgbW9kdWxlIERwa2c6OkNvbXByZXNzaW9uCisJaW5zdGVhZCBvZiB0YWcgZnJvbSBEcGtnLgorCSogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDogTGlrZXdpc2UKKwkqIHNjcmlwdHMvTWFrZWZpbGUuYW0gKG5vYmFzZV9kaXN0X3BlcmxsaWJfREFUQSk6IEFkZAorCSdEcGtnL0NvbXByZXNzaW9uLnBtJy4KKworMjAwNy0xMi0yNyAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9EcGtnL1NobGlicy9TeW1ib2xGaWxlLnBtOiBCbGFja2xpc3Qgc29tZSBhcm1lbCBzcGVjaWZpYworCXN5bWJvbHMgKF9fZXhpZHhfZW5kLCBfX2V4aWR4X3N0YXJ0KS4KKworMjAwNy0xMi0yNyAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogTWFrZWZpbGUuYW06IEFkZCBzb21lIG1pc3NpbmcgZmlsZXMgaW4gRVhUUkFfRElTVC4gQW5kIGFkZCBhCisJZGlzdC1ob29rIHJ1bGUgdG8gY2hlY2sgdGhhdCBhbGwgZmlsZXMgY29udGFpbmVkIGluIHRoZSBnaXQKKwlyZXBvc2l0b3J5IChleGNlcHQgLmdpdGlnbm9yZSkgYXJlIGluY2x1ZGVkIGluIHRoZSBkaXN0IHRhcmJhbGwuCisKKzIwMDctMTItMjcgIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKwkqIGNvbmZpZ3VyZS5hYzogQnVtcCB2ZXJzaW9uIHRvIDEuMTQuMTV+LgorCisyMDA3LTEyLTI3ICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBjb25maWd1cmUuYWM6IFJlbGVhc2UgMS4xNC4xNC4KKworMjAwNy0xMi0yNyAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogZGViaWFuL2NvbnRyb2w6IEJ1bXAgZHBrZyBkZXBlbmRlbmN5IHRvID49IDEuMTQuMTMgaW4gZHBrZy1kZXYKKwlhcyBkcGtnLXNvdXJjZSBuZWVkcyB0aGUgbGF0ZXN0IERwa2cucG0uCisJKiBkZWJpYW4vY29udHJvbDogQWRkIGxpYmlvLXN0cmluZy1wZXJsIHRvIEJ1aWxkLURlcGVuZHMgYXMgaXQncworCW5lZWRlZCBmb3IgYSBub24tcmVncmVzc2lvbiB0ZXN0ICgyMDBfRHBrZ19TaGxpYnMudCkuCisJKiBkZWJpYW4vY29udHJvbDogRml4IHByaW9yaXR5IG9mIGRzZWxlY3QgdG8gbWF0Y2ggdGhlIHByaW9yaXR5CisJc2V0IGJ5IGZ0cG1hc3RlcnMuCisKKzIwMDctMTItMjcgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGNvbmZpZ3VyZS5hYzogQnVtcCB2ZXJzaW9uIHRvIDEuMTQuMTR+LgorCisyMDA3LTEyLTI3ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBjb25maWd1cmUuYWM6IFJlbGVhc2UgMS4xNC4xMy4KKworMjAwNy0xMi0yNyAgRmxhdmlvIFN0YW5jaGluYSAgPGZsYXZpb0BzdGFuY2hpbmEubmV0PgorCisJKiBzY3JpcHRzL2Rwa2ctZGl2ZXJ0LnBsIChjaGVja3JlbmFtZSk6IERvIG5vdCBpZ25vcmUgRU5PRU5UIGZvcgorCWRlc3RpbmF0aW9uLgorCisyMDA3LTEyLTI3ICBEYW5pZWwgTGVpZGVydCAgPGRhbmllbC5sZWlkZXJ0QHdnZGQuZGU+CisgICAgICAgICAgICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMucGw6IFJlZmFjdG9yIGR1cGxpY2F0ZSBjb2RlIGludG8gLi4uCisJKGNoZWNrZWRfYWx0ZXJuYXRpdmUpOiAuLi4gaGVyZS4gTmV3IGZ1bmN0aW9uLgorCShzZXRfbGlua3MpOiBDYWxsIGl0LgorCisyMDA3LTEyLTI3ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMucGwgKGdsKTogVXNlIGRlZmluZWQgaW5zdGVhZCBvZiBsZW5ndGguCisKKzIwMDctMTItMjcgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvdXBkYXRlLWFsdGVybmF0aXZlcy5wbCAoc2V0X2xpbmtzKTogTmV3IGZ1bmN0aW9uLgorCShjb25maWdfYWx0ZXJuYXRpdmVzKTogVXNlIHNldF9saW5rcyBpbnN0ZWFkIG9mIGR1cGVkIGNvZGUuCisJKHNldF9hbHRlcm5hdGl2ZXMpOiBMaWtld2lzZS4KKworMjAwNy0xMi0yNyAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy91cGRhdGUtYWx0ZXJuYXRpdmVzLnBsOiBSZWZhY3RvciBhbGwgY29kZSB0byB1c2UKKwljaGVja2VkX212IGluc3RlYWQgb2YgZHVwZWQgY29kZS4KKworMjAwNy0xMi0yNyAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy91cGRhdGUtYWx0ZXJuYXRpdmVzLnBsOiBSZWZhY3RvciBhbGwgY29kZSB0byB1c2UKKwljaGVja2VkX3N5bWxpbmsgaW5zdGVhZCBvZiBkdXBlZCBjb2RlLgorCisyMDA3LTEyLTI3ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMucGwgKGNoZWNrZWRfcm0pOiBOZXcgZnVuY3Rpb24uIFJlZmFjdG9yCisJYWxsIGNvZGUgdG8gdXNlIGl0IGluc3RlYWQgb2YgZHVwZWQgY29kZS4KKworMjAwNy0xMi0yNiAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDogUHJvdmlkZSBhIHNhbmUgZGVmYXVsdCAkb3JpZ3Rhcmd6IGluIGFsbAorCWNhc2VzIHdoZW4gc3VjaCBhIGZpbGUgZXhpc3RzLgorCisyMDA3LTEyLTI0ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBtYW4vTWFrZWZpbGUuYW0gKGFsbC1sb2NhbCk6IFJlbmFtZSB0byAuLi4KKwkoYWxsLWxvY2FsLXllcyk6IC4uLiB0aGlzLgorCShjbGVhbi1sb2NhbCk6IFJlbmFtZSB0byAuLi4KKwkoY2xlYW4tbG9jYWwteWVzKTogLi4uIHRoaXMuCisJKGluc3RhbGwtZGF0YS1sb2NhbCk6IFJlbmFtZSB0byAuLi4KKwkoaW5zdGFsbC1kYXRhLWxvY2FsLXllcyk6IC4uLiB0aGlzLgorCSh1bmluc3RhbGwtbG9jYWwpOiBSZW5hbWUgdG8gLi4uCisJKHVuaW5zdGFsbC1sb2NhbC15ZXMpOiAuLi4gdGhpcy4KKwkoYWxsLWxvY2FsLCBhbGwtbG9jYWwtbm8sIGNsZWFuLWxvY2FsLCBjbGVhbi1sb2NhbC1ubyk6IE5ldyB0YXJnZXRzLgorCShpbnN0YWxsLWRhdGEtbG9jYWwsIGluc3RhbGwtZGF0YS1sb2NhbC1ubyk6IExpa2V3aXNlLgorCSh1bmluc3RhbGwtbG9jYWwsIHVuaW5zdGFsbC1sb2NhbC1ubyk6IExpa2V3aXNlLgorCisyMDA3LTEyLTIwICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOiBBbHdheXMgY29uc2lkZXIgdGhlIHNobGlicyBvZiB0aGUKKwljdXJyZW50IHBhY2thZ2UgYmVmb3JlIHRoZSBzaGxpYnMgb2Ygb3RoZXIgYmluYXJ5IHBhY2thZ2VzIHdoZW4KKwlsb29raW5nIGZvciBhIGRlcGVuZGVuY3kuCisKKzIwMDctMTItMTMgIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvdC81MDBfRHBrZ19QYXRoLnQsIHNjcmlwdHMvTWFrZWZpbGUuYW06IEFkZCBuZXcKKwlub24tcmVncmVzc2lvbiB0ZXN0cyBmb3IgZnVuY3Rpb25zIHByb3ZpZGVkIGJ5IHRoZSBEcGtnOjpQYXRoCisJbW9kdWxlLgorCisyMDA3LTEyLTEyICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDogRml4IHR5cG8gKHN5c2Vycm9yKCkgLT4gc3lzZXJyKCkpLgorCisyMDA3LTEyLTEyICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbCAoc3BmaWxlc2xpc3R2YWx1ZSk6IFVzZSB8fCB0byBmYWxsYmFjayB0bworCWEgZGVmYXVsdCB2YWx1ZSBpbnN0ZWFkIG9mIHVzaW5nIGEgdGVtcG9yYXJ5IHZhcmlhYmxlIGFuZCBjaGVja2luZyBpZgorCWl0J3Mgbm90IGRlZmluZWQuCisKKzIwMDctMTItMTIgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOiBVc2UgfHw9IGluc3RlYWQgb2YgY2hlY2tpbmcgaWYgdGhlCisJdmFyaWFibGVzIGFyZSBub3QgZGVmaW5lZC4KKwkqIHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOiBMaWtld2lzZS4KKwkqIHNjcmlwdHMvdXBkYXRlLWFsdGVybmF0aXZlcy5wbCAoZmlsbF9taXNzaW5nX3NsYXZlcGF0aHMpOiBMaWtld2lzZS4KKworMjAwNy0xMi0xMSAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9EcGtnL0RlcHMucG06IEFkZCBhIGNvbXBhcmUgZnVuY3Rpb24gdGhhdCBjb21wYXJlcworCWRlcGVuZGVuY2llcyBtb3JlIGludGVsbGlnZW50bHkgdGhhbiBhIGNvbXBhcmlzb24gb24gdGhlaXIKKwlzdHJpbmcgcmVwcmVzZW50YXRpb24uIEluIHBhcnRpY3VsYXIgd2Ugd2FudCA+PSBhbmQgPj4gdG8gc29ydAorCWxvd2VyIHRoYW4gPDwgYW5kIDw9IHNvIHRoYXQgaW50ZXJ2YWxzIGFyZSBuaWNlbHkgZGlzcGxheWVkCisJYXMgImEgKD49IDEpLCBhICg8PCAyKSIgaW5zdGVhZCBvZiB0aGUgdWdseSAiYSAoPDwgMiksIGEgKD49IDEpIi4KKworMjAwNy0xMi0xMCAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogUkVBRE1FLnRyYW5zbGF0b3JzOiBFeHBsYWluIGhvdyB0byBmb3JtYXQgR2l0IGNvbW1pdCBtZXNzYWdlcy4KKworMjAwNy0xMi0xMCAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9EcGtnL1NobGlicy9TeW1ib2xGaWxlLnBtIChtZXJnZV9zeW1ib2xzKTogRG8gbm90IHVwZGF0ZQorCXRoZSBkZXByZWNhdGVkIHZlcnNpb24gb2YgYSBzeW1ib2wgaWYgaXQgaXMgYWxyZWFkeSBtYXJrZWQKKwlkZXByZWNhdGVkLgorCisyMDA3LTEyLTA5ICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL0Rwa2cvU2hsaWJzL1N5bWJvbEZpbGUucG06IFBhcnNlIGFuZCBkdW1wIHByb3Blcmx5CisJbmV3IG1ldGEtaW5mb3JtYXRpb24gZmllbGRzIChvbiBsaW5lcyBzdGFydGluZyB3aXRoIGFuIGFzdGVyaXNrKS4KKwlCdWdmaXggd2l0aCBhbHRlcm5hdGUgZGVwZW5kZW5jeSBoYW5kbGluZyB0aGF0IHdlcmUgbm90IHByb3Blcmx5CisJZHVtcGVkLiBOZXcgZnVuY3Rpb25zIGdldF9kZXBlbmRlbmNpZXMoKSBhbmQgZ2V0X2ZpZWxkKCkuCisJKiBzY3JpcHRzL3QvMjAwX0Rwa2dfU2hsaWJzLnQsCisJc2NyaXB0cy90LzIwMF9EcGtnX1NobGlicy9zeW1ib2xzLmZha2UtMjogQWRkIGEgdGVzdCBjYXNlIHRvCisJdmVyaWZ5IHRoYXQgbWV0YS1pbmZvcm1hdGlvbiBmaWVsZHMgYW5kIGFsdGVybmF0ZSBkZXBlbmRlbmNpZXMgYXJlCisJcHJvcGVybHkgcGFyc2VkIGFuZCBkdW1wZWQuCisJKiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOiBUYWtlIGludG8gYWNjb3VudCB0aGUgbmV3CisJQnVpbGQtRGVwZW5kcy1QYWNrYWdlIGZpZWxkIGluIHN5bWJvbHMgZmlsZXMuCisJKiBtYW4vZGViLXN5bWJvbHMuNTogRGVzY3JpYmUgc3ludGF4IG9mIG1ldGEtaW5mb3JtYXRpb24gZmllbGRzIGFuZAorCWRvY3VtZW50IHRoZSBCdWlsZC1EZXBlbmRzLVBhY2thZ2UgZmllbGQuCisJKiBtYW4vZHBrZy1zaGxpYmRlcHMuMTogRGVzY3JpYmUgaG93IHRoZSBCdWlsZC1EZXBlbmRzLVBhY2thZ2UgZmllbGQKKwlvZiBzeW1ib2xzIGZpbGUgaXMgdXNlZC4KKworMjAwNy0xMi0wOSAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9EcGtnL1NobGlicy9TeW1ib2xGaWxlLnBtIChsb2FkKTogUGFzcyB0aGUgY3VycmVudAorCW9iamVjdCBhcyBsYXN0IHBhcmFtZXRlciBzbyB0aGF0IGluY2x1ZGVkIGZpbGVzIGRvIG5vdCBuZWVkIHRvCisJcmVwZWF0IHRoZSBoZWFkZXIgbGluZS4KKwkqIHNjcmlwdHMvdC8yMDBfRHBrZ19TaGxpYnMvc3ltYm9scy5mYWtlLTEsCisJc2NyaXB0cy90LzIwMF9EcGtnX1NobGlicy9zeW1ib2xzLmluY2x1ZGUtMTogQWRqdXN0IHNvbWUgdGVzdHMKKwl0byBhbHNvIHRlc3QgaW5jbHVzaW9ucyB3aXRoIGluY2x1ZGVkIGZpbGVzIGxhY2tpbmcgYSBoZWFkZXIgbGluZS4KKwkqIG1hbi9kcGtnLWdlbnN5bWJvbHMuMTogUmVtb3ZlIHRoZSByZXN0cmljdGlvbiB0aGF0IGluY2x1ZGVkIGZpbGVzCisJbXVzdCBiZSB2YWxpZCBzeW1ib2wgZmlsZXMgb24gdGhlaXIgb3duLgorCisyMDA3LTEyLTA4ICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOiBEb2Vzbid0IHdhcm4gYW55IG1vcmUgYWJvdXQgbGlibS5zby42CisJYmVpbmcgdW51c2VkIGlmIHRoZSBiaW5hcnkgaXMgYWxzbyBsaW5rZWQgYWdhaW5zdCBsaWJzdGRjKysgc2luY2UKKwlnKysgYWx3YXlzIGFkZCBhbiBpbXBsaWNpdCAtbG0uCisKKzIwMDctMTItMDggIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvRHBrZy9TaGxpYnMucG0gKGZpbmRfbGlicmFyeSk6IFdoZW4gaXQgZmluZHMgYSBsaWJyYXJ5CisJaW4gYSBkaXJlY3Rvcnkgd2hpY2ggaXMganVzdCBhIHN5bWxpbmsgdG8gYW5vdGhlciBkaXJlY3RvcnkgdGhhdAorCWlzIGFsc28gY29uc2lkZXJlZCwgcmVtZW1iZXIgdGhlIG90aGVyIGRpcmVjdG9yeSBuYW1lIGFzIHRoZQorCWNhbm9uaWNhbCBvbmUuCisJKiBzY3JpcHRzL0Rwa2cvUGF0aC5wbTogQWRkIG5ldyBmdW5jdGlvbiBjYW5vbnBhdGgoKSBhbmQKKwlyZXNvbHZlX3N5bWxpbmsoKS4KKworMjAwNy0xMi0wNSAgRnJhbmsgTGljaHRlbmhlbGQgIDxkanBpZ0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOiBBZGQgbmV3CisJLUEgb3B0aW9uIChwYXNzZWQgdG8gZHBrZy1nZW5jaGFuZ2VzKS4KKwkqIHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOiBBZGQgbmV3IC1BCisJb3B0aW9uIHRoYXQgd2lsbCBpbmNsdWRlIG9ubHkgYXJjaC1pbmRlcAorCXBhY2thZ2VzIGludG8gdGhlIHVwbG9hZC4KKworMjAwNy0xMi0wNSAgRnJhbmsgTGljaHRlbmhlbGQgIDxkanBpZ0BkZWJpYW4ub3JnPgorCSAgICBHb3N3aW4gdm9uIEJyZWRlcmxvdyAgPGJyZWRlcmxvQGluZm9ybWF0aWsudW5pLXR1ZWJpbmdlbi5kZT4KKwkgICAgQmFzdGlhbiBCbGFuayAgPHdhbGRpQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOiBTdXBwb3J0IG1vcmUKKwl0aGFuIG9uZSBhcmNoIGFuZCBtb3JlIHRoYW4gb25lIHR5cGUgb2YKKwlhIHBhY2thZ2UgaW4gZGViaWFuL2ZpbGVzLgorCisyMDA3LTEyLTA0ICBGcmFuayBMaWNodGVuaGVsZCAgPGRqcGlnQGRlYmlhbi5vcmc+CisKKwkqIGRwa2ctZGViL2luZm8uYyAoaW5mb19zcGV3KTogUmVwbGFjZSBhCisJJWxkIHdpdGggJWx1IHRvIGZpeCBjb21waWxlciB3YXJuaW5nLgorCisJKiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDogVXNlIGNvbXBfcmVnZXgKKwlmcm9tIERwa2cgdG8gY29ycmVjdGx5IGV4bHVjZGUgdGhlIC5vcmlnLnRhcgorCWV2ZW4gaWYgaXQgaXMgbm90IGNvbXByZXNzZWQgd2l0aCBnemlwLgorCisJKiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOiBNb3ZlIGRlZmluaXRpb24KKwlvZiBAY29tcF9zdXBwb3J0ZWQsICVjb21wX3N1cHBvcnRlZCwgJWNvbXBfZXh0LAorCSRjb21wX3JlZ2V4IHRvLi4uCisJKiBzY3JpcHRzL0Rwa2cucG06IC4uLmhlcmUuIE1ha2UgdGhlbSBleHBvcnRhYmxlCisJdmlhIHRoZSA6Y29tcHJlc3Npb24gdGFnLgorCisJKiBzY3JpcHRzL0Rwa2cvRXJyb3JIYW5kbGluZy5wbSAodXNhZ2VlcnIpOgorCVN1cHBvcnQgZm9ybWF0IHN0cmluZ3MgbGlrZSBhbGwgdGhlIG90aGVyCisJZXJyb3IgcmVwb3J0aW5nIGZ1bmN0aW9ucy4KKworCSogc2NyaXB0cy9NYWtlZmlsZS5hbSAoRVhUUkFfRElTVCk6IEFkZAorCW1pc3NpbmcgZmlsZXMgZnJvbSBzY3JpcHRzL3QvLgorCisJKiBkZWJpYW4vcnVsZXM6IENhbGwgZGhfaW5zdGFsbGNoYW5nZWxvZ3MKKwlhbmQgZGhfaW5zdGFsbGRvY3MgZm9yIGFsbCBwYWNrYWdlcyBpbnN0ZWFkCisJb2Ygb25seSBmb3IgZHBrZy4KKwkqIGRlYmlhbi9kcGtnLWRldi5kb2NzOiBTeW1saW5rIHRvIGRwa2cuZG9jcy4KKwkqIGRlYmlhbi9kc2VsZWN0LmRvY3M6IExpa2V3aXNlLgorCSogZGViaWFuL2Rwa2ctZGV2LnByZWluc3Q6IFJlbW92ZQorCS91c3Ivc2hhcmUvZG9jL2Rwa2ctZGV2IHN5bWxpbmsgb24gdXBncmFkZS4KKwkqIGRlYmlhbi9kc2VsZWN0LnByZWluc3Q6IExpa2V3aXNlLgorCisyMDA3LTExLTI5ICBGcmFuayBMaWNodGVuaGVsZCAgPGRqcGlnQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvY29udHJvbGxpYi5wbCAocGFyc2VjZGF0YSk6IEZpeAorCXJlZ2V4IHRvIGRldGVybWluZSB0aGUgZmllbGQgbmFtZSBjb3JyZWN0bHkKKwlpZiB0aGUgZmllbGQncyB2YWx1ZSBzdGFydHMgd2l0aCBhIGNvbG9uLgorCisyMDA3LTExLTI5ICBGcmFuayBMaWNodGVuaGVsZCAgPGRqcGlnQGRlYmlhbi5vcmc+CisKKwkqIG1hbi9kZWItY29udHJvbC41OiBNb3ZlIGRlc2NyaXB0aW9uIG9mIHZlcnNpb24gZm9ybWF0IHRvLi4uCisJKiBtYW4vZGViLXZlcnNpb24uNTogVGFrZSB0aGUgc2VjdGlvbiBmcm9tIHBvbGljeSBkZXNjcmliaW5nIHZlcnNpb24KKwlmb3JtYXQgYW5kIHNvcnRpbmcgc2luY2UgdGhpcyBpcyBwcm9iYWJseSBhcyBnb29kIGFzIGl0IGdldHMgZm9yCisJZGVzY3JpYmluZyB0aGVzZS4KKworMjAwNy0xMS0yOSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogY29uZmlndXJlLmFjOiBCdW1wIHZlcnNpb24gdG8gMS4xNC4xM34uCisKKzIwMDctMTEtMjkgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGNvbmZpZ3VyZS5hYzogUmVsZWFzZSAxLjE0LjEyLgorCisyMDA3LTExLTI5ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOiBVc2UgRHBrZzo6VmVyc2lvbi4KKwkodmVyY21wKTogVXNlIGNvbXBhcmVfdmVyc2lvbnMgaW5zdGVhZCBvZiAnZHBrZyAtLWNvbXBhcmUtdmVyc2lvbnMnLgorCisyMDA3LTExLTI5ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOiBVc2UgRHBrZzo6RXJyb3JIYW5kbGluZy4gVXNlIGVycm9yCisJc3lzZXJyIGFuZCBzdWJwcm9jZXJyIGluc3RlYWQgb2YgZGllIGFuZCBzcHJpbnRmLgorCShsb2FkX292ZXJyaWRlKTogTGlrZXdpc2UuCisKKzIwMDctMTEtMjkgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOiBVbmlmeSBwYXJzaW5nIG9mIFNlY3Rpb24gYW5kIFByaW9yaXR5CisJZmllbGRzIHdpdGggSG9tZXBhZ2UuCisJKCVzcHZhbHVlLCAlc3BkZWZhdWx0KTogUmVtb3ZlIHVudWVkIHZhcmlhYmxlcy4KKwkoc3BmaWxlc2xpc3R2YWx1ZSk6IFVzZSAlZiBpbnN0ZWFkIG9mICVzcHZhbHVlLgorCisyMDA3LTExLTI5ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbCAoc3BmaWxlc2xpc3R2YWx1ZSk6IEFkZCBwcm90b3R5cGUuIE1vdmUKKwl0byB0aGUgdG9wIG9mIHRoZSBmaWxlIHdpdGggdGhlIG90aGVyIGZ1bmN0aW9ucy4KKworMjAwNy0xMS0yOSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc3JjL21haW4uYyAobG9nX2ZpbGUpOiBNb3ZlIGRlZmluaXRpb24gdG8gLi4uCisJKiBsaWIvZHBrZy1kYi5oOiAuLi4gaGVyZS4KKwkqIHNyYy9jb25maWd1cmUuYyAoc3RhdHVzX3BpcGVzKTogUmVtb3ZlIGV4dGVybiBkZWZpbml0aW9uLgorCSogc3JjL2Vycm9ycy5jIChzdGF0dXNfcGlwZXMpOiBMaWtld2lzZS4KKwkqIGxpYi90YXJmbi5jIChUYXJFeHRyYWN0b3IpOiBEbyBub3QgZGVjbGFyZSBhcyBleHRlcm4uCisKKzIwMDctMTEtMjkgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGRwa2ctZGViL2J1aWxkLmMgKGFyYml0cmFyeV9maWVsZHMpOiBEZWZpbmUgYXMgc3RhdGljLgorCSogbGliL2RibW9kaWZ5LmMgKGZuaXMpOiBMaWtld2lzZS4KKwkqIGxpYi9maWVsZHMuYyAoY29uZmZ2YWx1ZV9sYXN0d29yZCk6IExpa2V3aXNlLgorCSogbGliL3RhcmZuLmMgKFN0b0MpOiBMaWtld2lzZS4KKwkqIHNyYy9wYWNrYWdlcy5jIChicmVha3NfY2hlY2tfdGFyZ2V0KTogTGlrZXdpc2UuCisJKiB1dGlscy9zdGFydC1zdG9wLWRhZW1vbi5jIChzaWdsaXN0KTogTGlrZXdpc2UuCisKKzIwMDctMTEtMjggIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsOiBUaGUgZW52aXJvbm1lbnQgdmFyaWFibGUKKwlEUEtHX0dFTlNZTUJPTFNfQ0hFQ0tfTEVWRUwgY2FuIG92ZXJyaWRlIHRoZSBsZXZlbCBvZiBjaGVja3MgbWFkZQorCWJ5IGRwa2ctZ2Vuc3ltYm9scy4gVGhpcyBvZmZlcnMgdGhlIHBvc3NpYmlsaXR5IHRvIHVub2ZmaWNpYWwKKwlwb3J0cyB0byBpZ25vcmUgZXJyb3JzIGR1ZSB0byBzeW1ib2xzIGZpbGVzIHRoYXQgZG8gbm90IGNvcnJlc3BvbmQuCisKKzIwMDctMTEtMjggIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6IEhhcm1vbml6ZSBhIGZhaWx1cmUgbWVzc2FnZS4KKwkqIG1hbi9kcGtnLXNobGliZGVwcy4xOiBQcm92aWRlIGV4cGxhbmF0aW9ucyBjb25jZXJuaW5nIHRoZSB0d28KKwlmYWlsdXJlcyB0aGF0IGRwa2ctc2hsaWJkZXBzIG1pZ2h0IGdlbmVyYXRlLiBUaGlzIGlzIG5lZWRlZCBzbworCXRoYXQgbWFpbnRhaW5lcnMgaGF2ZSBhbiBpZGVhIG9mIHdoYXQgdG8gZG8gdG8gZml4IHRoZSBwcm9ibGVtcy4KKworMjAwNy0xMS0yOCAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDogRG8gbm90IGZhaWwgaWYgaXQKKwljYW4ndCBmaW5kIHVudmVyc2lvbmVkIGxpYnJhcmllcywganVzdCBvdXRwdXQgYSB3YXJuaW5nLgorCUNvbnNlcXVlbnRseSBza2lwIHRoZSBjaGVjayBvbiBzeW1ib2xzIHdoZW4gc29tZSBsaWJzIHdlcmUgbm90CisJZm91bmQgYmVjYXVzZSBvbmUgY2FuIG5vdCBiZSBzdXJlIHRoYXQgdGhlIHN5bWJvbHMgd2FzIG5vdAorCXByb3ZpZGVkIGJ5IHRoZSBtaXNzaW5nIGxpYnJhcnkuCisKKzIwMDctMTEtMjggIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGwgKGZpbmRfcGFja2FnZXMpOiBNYWtlIHN1cmUgdG8gYWx3YXlzCisJcmV0dXJuIFsnJ10gZm9yIGEgbWlzcyBpbiB0aGUgJ2Rwa2cgLVMnIHF1ZXJ5LgorCSogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDogQWx3YXlzIHRyeSB0aGUgcmVhbHBhdGgoJGxpYikgYXMKKwlmYWxsYmFjayB0byBpZGVudGlmeSB0aGUgcGFja2FnZSAoZXZlbiBpZiBpdCdzIG5vdCBhIHN5bWxpbmspCisJYmVjYXVzZSBkdWUgdG8gYnJva2VuIFJQQVRIIHdlIG1pZ2h0IGdldCBsaWJyYXJ5IGZpbGVuYW1lcyBzdWNoIGFzCisJIi91c3IvbGliL2djYy9pNDg2LWxpbnV4LWdudS80LjIuMy8uLi8uLi8uLi8uLi9saWIvbGlic3NsLnNvLjkuOCIKKwl3aGljaCBpcyBub3QgYSBzeW1saW5rIGFuZCB3aGljaCBjYW4gc3RpbGwgYmUgc2ltcGxpZmllZCB0bworCSIvdXNyL2xpYi9saWJzc2wuc28uOS44IiB3aXRoIHJlYWxwYXRoKCkuCisKKzIwMDctMTEtMjUgIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvRHBrZy9TaGxpYnMucG0gKGZpbmRfbGlicmFyeSk6IENhbm9uaWNhbGl6ZSBwYXRocyBiZWZvcmUKKwlyZXR1cm5pbmcgdGhlbSBhcyBiYWQgUlBBVEggY2FuIGxlYWQgdG8gbm9uLWNhbm9uaWNhbCBwYXRocworCWNhdXNpbmcgdXMgdHJvdWJsZXMgaW4gZHBrZy1zaGxpYmRlcHMuCisJKiBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbDogU29tZSBmb3JtYXR0aW5nIGZpeGVzLgorCSogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDogTGlrZXdpc2UuCisKKzIwMDctMTEtMjQgIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsOiBBZGQgYSBuZXcgLUk8ZmlsZT4gb3B0aW9uIHRvIGZvcmNlCisJdGhlIHVzYWdlIG9mIGEgc3BlY2lmaWMgZmlsZSBhcyBiYXNpcyBmb3IgdGhlIGdlbmVyYXRlZCBzeW1ib2xzCisJZmlsZS4KKwkqIG1hbi9kcGtnLWdlbnN5bWJvbHMuMTogRG9jdW1lbnQgdGhlIG5ldyAtSTxmaWxlPiBvcHRpb24uCisKKzIwMDctMTEtMjQgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGNvbmZpZ3VyZS5hYzogQnVtcCB2ZXJzaW9uIHRvIDEuMTQuMTJ+LgorCisyMDA3LTExLTI0ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBjb25maWd1cmUuYWM6IFJlbGVhc2UgMS4xNC4xMS4KKworMjAwNy0xMS0yNCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9NYWtlZmlsZS5hbSAoY2xlYW4tbG9jYWwpOiBSdW4gY2htb2Qgb25seSBpZiB0LnRtcCBleGlzdHMuCisKKzIwMDctMTEtMjQgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGwgKCV2ZXJjYWNoZSk6IERlY2xhcmUgd2l0aCAnbXknIGluc3RlYWQKKwlvZiAnb3VyJy4KKwkqIHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGwgKCRob3N0X2FyY2gpOiBMaWtld2lzZS4KKworMjAwNy0xMS0yNCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9EcGtnL0FyY2gucG0gKGdldF9yYXdfaG9zdF9hcmNoKTogRG8gbm90IHNoYWRvdworCSRnY2NfaG9zdF9nbnVfdHlwZSB3aXRoIGEgbG9jYWwgdmFyaWFibGUuCisKKzIwMDctMTEtMjQgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6IFVzZSBwYXJlbnRoZXNpcyB0byBmb3JjZSB0aGUKKwlwcmVjZWRlbmNlIHdoZW4gY2hlY2tpbmcgaWYgdGhlIHNwZWNpZmllZCBvdmVycmlkZSBmaWxlIGV4aXN0cy4KKworMjAwNy0xMS0yNCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDogRG8gbm90IHJlcXVpcmUgY29udHJvbGxpYi5wbCBhbnltb3JlLgorCisyMDA3LTExLTIzICBBYXJvbiBNLiBVY2tvICA8dWNrb0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOiBPcHRpbWl6ZSAiZHBrZyAtUyIgbG9va3VwcyBieSBjYWNoaW5nCisJcmVzdWx0cy4KKworMjAwNy0xMS0yMyAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDogTGltaXQgdGhlIG51bWJlciBvZiB3YXJuaW5ncworCWRpc3BsYXllZCBhYm91dCBzeW1ib2xzIG5vdCBmb3VuZCBpbiBsaWJyYXJpZXMgdG8gMTAgcGVyIGJpbmFyeS4KKworMjAwNy0xMS0yMyAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDogTG9vayBmb3IgbGlicyBpbiB0aGUgcGFja2FnZSdzIGJ1aWxkCisJdHJlZSBldmVuIGlmIHRoYXQgcGFja2FnZSBkb2Vzbid0IGNvbnRhaW4gYW4gc2hsaWJzIGZpbGUuIFRoZW4KKwlkb24ndCBjb21wbGFpbiBhYm91dCBtaXNzaW5nIGRlcGVuZGVuY3kgaW5mb3JtYXRpb24gaWYgdGhlIGxpYiBpcyBpbgorCXRoZSBzYW1lIHBhY2thZ2UgdGhhbiB0aGUgYmluYXJ5LiBBbHNvIGlnbm9yZSBpdCBpZiB0aGUgbGlicmFyeSBpcworCW5vdCB2ZXJzaW9ubmVkIGFuZCBjYW4ndCBoYXZlIGFuIHNobGlicyBmaWxlLgorCSogc2NyaXB0cy9EcGtnL1BhdGgucG0gKGd1ZXNzX3BrZ19yb290X2RpcikKKwkoY2hlY2tfZmlsZXNfYXJlX3RoZV9zYW1lKTogTmV3IGhlbHBlciBmdW5jdGlvbnMuCisKKzIwMDctMTEtMjMgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGNvbmZpZ3VyZS5hYzogQnVtcCB2ZXJzaW9uIHRvIDEuMTQuMTF+LgorCisyMDA3LTExLTIzICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBjb25maWd1cmUuYWM6IFJlbGVhc2UgMS4xNC4xMC4KKworMjAwNy0xMS0yMyAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9EcGtnL0FyY2gucG0gKGdldF9idWlsZF9hcmNoKTogUmVuYW1lIHRvIC4uLgorCShnZXRfcmF3X2J1aWxkX2FyY2gpOiAuLi4gdGhpcy4KKwkoZ2V0X2J1aWxkX2FyY2gpOiBOZXcgZnVuY3Rpb24uCisJKGdldF9ob3N0X2FyY2gpOiBSZW5hbWUgdG8gLi4uCisJKGdldF9yYXdfaG9zdF9hcmNoKTogLi4uIHRoaXMuIFVzZSBnZXRfcmF3X2J1aWxkX2FyY2ggaW5zdGVhZCBvZgorCWdldF9idWlsZF9hcmNoLgorCShnZXRfaG9zdF9hcmNoKTogTmV3IGZ1bmN0aW9uLgorCShARVhQT1JUX09LKTogQWRkIGdldF9yYXdfYnVpbGRfYXJjaCBhbmQgZ2V0X3Jhd19ob3N0X2FyY2guCisJKiBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLnBsOiBJbXBvcnQgZ2V0X3Jhd19idWlsZF9hcmNoIGFuZAorCWdldF9yYXdfaG9zdF9hcmNoIGluc3RlYWQgb2YgZ2V0X2J1aWxkX2FyY2ggYW5kIGdldF9ob3N0X2FyY2guCisJRml4IGFsbCBjYWxsZXJzLgorCisyMDA3LTExLTIzICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLnBsICglZW52KTogUmVuYW1lIHRvIC4uLgorCSgldik6IC4uLiB0aGlzLgorCSgkZGViX2J1aWxkX2FyY2gsICRkZWJfYnVpbGRfYXJjaF9vcywgJGRlYl9idWlsZF9hcmNoX2NwdSkKKwkoJGRlYl9idWlsZF9nbnVfY3B1LCBkZWJfYnVpbGRfZ251X3N5c3RlbSwgZGViX2J1aWxkX2dudV90eXBlKQorCSgkZGViX2hvc3RfYXJjaCwgJGRlYl9ob3N0X2FyY2hfb3MsICRkZWJfaG9zdF9hcmNoX2NwdSkKKwkoJGRlYl9ob3N0X2dudV9jcHUsICRkZWJfaG9zdF9nbnVfc3lzdGVtLCAkZGViX2hvc3RfZ251X3R5cGUpOiBVc2UKKwl0aGUgJXYgaGFzaCB0byBzdG9yZSB0aG9zZSB2YXJpYWJsZXMgdXNpbmcgdGhlIHZhbHVlcyBmcm9tIEBvcmRlcmVkCisJYXMga2V5cy4KKwkoJGFiaSk6IE5ldyB2YXJpYWJsZS4KKworMjAwNy0xMS0yMyAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGwgKEBsaWJyYXJ5cGF0aHMpOiBSZW1vdmUgZHVwbGljYXRlZAorCWRlY2xhcmF0aW9uLgorCisyMDA3LTExLTIzICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL0Rwa2cvRmllbGRzLnBtICglZmllbGRpbXBzKTogRGVjbGFyZSB3aXRoICdteScgaW5zdGVhZAorCW9mICdvdXInLgorCisyMDA3LTExLTIyICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2Rwa2ctbmFtZS5zaCAoZ2V0bmFtZSk6IEdldCB0aGUgcGFja2FnZSBleHRlbnNpb24gZnJvbSB0aGUKKwlQYWNrYWdlLVR5cGUgZmllbGQsIG9yIGZhbGxiYWNrIHRvIGRlYiBpZiBub3QgcHJlc2VudC4KKwkqIG1hbi9kcGtnLW5hbWUuMTogRG9jdW1lbnQgdGhhdCB0aGUgUGFja2FnZS1UeXBlIGZpZWxkIGlzIG5vdworCXN1cHBvcnRlZC4KKworMjAwNy0xMS0yMiAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDogQWRkIG1vcmUgZGVidWcgbWVzc2FnZXMuIEFjY2VwdCBlbXB0eQorCWRlcGVuZGVuY2llcyBpbiBzaGxpYnMgZmlsZXMgYWdhaW4uIFdoZW4gc3ltbGlua3MgdG8gbGlicmFyaWVzIGFyZQorCW5vdCBmb3VuZCBieSAiZHBrZyAtUyIsIHRyeSB0aGUgc2FtZSBvbiB0aGUgcmVhbHBhdGggb2YgdGhlCisJbGlicmFyeSBhcyBmYWxsYmFjayBiZWZvcmUgZGVjaWRpbmcgdGhhdCBpdCdzIGEgbGlicmFyeSBiZWluZworCWJ1aWx0LgorCSogc2NyaXB0cy9EcGtnL1NobGlicy5wbTogQWx3YXlzIGFkZCBwYXRocyBmcm9tIExEX0xJQlJBUllfUEFUSAorCWF0IHRoZSBiZWdpbm5pbmcgb2YgdGhlIGxpc3Qgb2YgcGF0aCB0byBzZWFyY2gsIGV2ZW4gaWYgdGhleQorCWFyZSBhbHJlYWR5IGxpc3RlZCAob25lIG1pZ2h0IHdhbnQgdG8gdXNlIExEX0xJQlJBUllfUEFUSCB0bworCWNoYW5nZSB0aGUgc2VhcmNoIG9yZGVyKS4KKwkqIHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6IEZpeCByZWdleCB1c2VkIHRvIGlkZW50aWZ5IHRoZSBleHRlbnNpb24KKwlvZiB0aGUgb3JpZy50YXIue2d6LGJ6Mixsem1hfSBmaWxlLgorCisyMDA3LTExLTIxICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL0Rwa2cvU2hsaWJzL09iamR1bXAucG0gKHJlc2V0KTogSW5pdGlhbGl6ZSBIQVNILCBHTlVfSEFTSCwKKwlTT05BTUUgYW5kIGZsYWdzLgorCShpc19leGVjdXRhYmxlLCBpc19wdWJsaWNfbGlicmFyeSk6IEZpeCB0aGUgY2hlY2tzLgorCSogc2NyaXB0cy90LzIwMF9EcGtnX1NobGlicy50OiBBZGQgc29tZSBtb3JlIHRlc3RzIHRvIG1ha2Ugc3VyZQorCXRoZSBhYm92ZSBmdW5jdGlvbnMgYmVoYXZlIGFzIGV4cGVjdGVkLgorCSogc2NyaXB0cy90LzQwMF9EcGtnX0RlcHMudDogQWRkIHNvbWUgbW9yZSB0ZXN0cyB0byBtYWtlIHN1cmUgdGhhdAorCWVtcHR5IGRlcGVuZGVuY3kgZmllbGRzIGFyZSBjb3JyZWN0bHkgaGFuZGxlZC4KKwkqIHNjcmlwdHMvdC8yMDBfRHBrZ19TaGxpYnMvb2JqZHVtcC5kYmQtcGc6IE5ldyBmaWxlLgorCSogc2NyaXB0cy90LzIwMF9EcGtnX1NobGlicy9vYmpkdW1wLmxzOiBMaWtld2lzZS4KKwkqIHNjcmlwdHMvTWFrZWZpbGUuYW0gKEVYVFJBX0RJU1QpOiBJbmNsdWRlCisJJ3QvMjAwX0Rwa2dfU2hsaWJzL29iamR1bXAuZGJkLXBnJyBhbmQgJ3QvMjAwX0Rwa2dfU2hsaWJzL29iamR1bXAubHMnLgorCSogc2NyaXB0cy9jb250cm9sbGliLnBsIChjYXBpdCwgc2V0X2ZpZWxkX2ltcG9ydGFuY2UpCisJKHNvcnRfYnlfZmllbGRfaW1wb3J0YW5jZSk6IE1vdmUgZnVuY3Rpb25zIHRvIC4uLgorCSogc2NyaXBzL0Rwa2cvRmllbGRzLnBtOiAuLi4gaGVyZS4gTmV3IGZpbGUuCisJKiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOiBVc2UgRHBrZzo6RmllbGRzIGZvciBjYXBpdCgpLgorCSogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6IFVzZSBEcGtnOjpGaWVsZHMgZm9yIGNhcGl0KCkgYW5kCisJc2V0X2ZpZWxkX2ltcG9ydGFuY2UoKS4KKwkqIHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOiBMaWtld2lzZS4KKwkqIHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6IExpa2V3aXNlLgorCisyMDA3LTExLTIwICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBjb25maWd1cmUuYWM6IEJ1bXAgdmVyc2lvbiB0byAxLjE0LjEwfi4KKworMjAwNy0xMS0yMCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogY29uZmlndXJlLmFjOiBSZWxlYXNlIDEuMTQuOS4KKworMjAwNy0xMS0xOSAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9EcGtnL1BhdGgucG06IEZpeCBiZWhhdmlvdXIgb2YgZ2V0X3BrZ19yb290X2RpcigpIHdoZW4KKwl0aGVyZSdzIG5vIERFQklBTiBzdWJkaXJlY3RvcnkgaW4gbm9uZSBvZiB0aGUgcGFyZW50IGRpcmVjdG9yaWVzLgorCSogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDogSGFuZGxlIHVuZGVmIHZhbHVlcyByZXR1cm5lZCBieQorCWdldF9wa2dfcm9vdF9kaXIoKSBhbmQgY29tcGxhaW4gd2hlbiBpdCdzIGxpa2VseSB0byBjcmVhdGUgYQorCXByb2JsZW0gKHdoZW4gYSBSUEFUSCBjb250YWlucyAkT1JJR0lOIGFuZCB3aGVuIHRoZSB2YWx1ZSBvZgorCXRoaXMgdmFyaWFibGUgY2FuJ3QgYmUgZGV0ZXJtaW5lZCBiZWNhdXNlIHdlIGRvbid0IGtub3cgd2hhdAorCWlzIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGUgdGVtcG9yYXJ5IHRyZWUpLgorCSogc2NyaXB0cy9EcGtnL0RlcHMucG06IEZpeCBwYXJzZSgpIHRvIGhhbmRsZSBlbXB0eSBmaWVsZHMgaW5zdGVhZAorCW9mIHJldHVybmluZyB1bmRlZi4KKworMjAwNy0xMS0xOSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogY29uZmlndXJlLmFjOiBCdW1wIHZlcnNpb24gdG8gMS4xNC45fi4KKworMjAwNy0xMS0xOSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogY29uZmlndXJlLmFjOiBSZWxlYXNlIDEuMTQuOC4KKworMjAwNy0xMS0xOSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogbWFuL2Rwa2ctYXJjaGl0ZWN0dXJlLjE6IFJlbW92ZSB1bm5lZWRlZCBmb3JtYXR0aW5nIHN1cnJvdW5kaW5nICctYycKKwlpbiBleGFtcGxlIGNvbW1hbmQsIGFzIGEgc2lkZSBlZmZlY3QgZ2V0IHJpZCBvZiBhbiB1bmRlZmluZWQgbWFjcm8uCisJKiBtYW4vZHBrZy1jaGVja2J1aWxkZGVwcy4xOiBSZW1vdmUgdXNhZ2Ugb2YgLlVSIG1hY3JvLCB3aGljaCB3YXMKKwl1bmRlZmluZWQgYW55d2F5LgorCSogbWFuL2Rwa2ctc3RhdG92ZXJyaWRlLjg6IExpa2V3aXNlLgorCSogbWFuL2Rwa2ctcXVlcnkuMTogTGlrZXdpc2UuIFJlbW92ZSAuVCBtYWNybyBjcnVmdC4KKworMjAwNy0xMS0xOSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDogVXNlICVkZXBfZmllbGRfdHlwZSBmb3IgdGhlIHVuaW9uIG9wdGlvbgorCXRvIERwa2c6OkRlcHM6OnBhcnNlLCBhbmQgdXNlIGNhcGl0KCkgdG8gbm9ybWFsaXplIHRoZSBmaWVsZCBuYW1lcywKKwlpbnN0ZWFkIG9mIGhhcmRjb2RpbmcgdGhlbS4KKworMjAwNy0xMS0xOSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogcGtnLWRlYi9idWlsZC5jIChhcmJpdHJhcnlfZmllbGRzKTogQWRkIFBhY2thZ2UtVHlwZSwKKwlTdWJhcmNoaXRlY3R1cmUsIEtlcm5lbC1WZXJzaW9uIGFuZCBJbnN0YWxsZXItTWVudS1JdGVtLgorCSogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbCAoQGZpZWxkcHJpKTogTGlrZXdpc2UuCisJKCVmaWVsZF9jYXNlKTogQWRkIHR5cGUgYXJndW1lbnQuCisJKHVzYWdlKTogRG9jdW1lbnQgLS10eXBlIGFyZ3VtZW50LCBhbmQgbWFyayAtLXVkZWIgYXMgb2Jzb2xldGUuCisJKiBtYW4vZHBrZy1zY2FucGFja2FnZXMuMTogTGlrZXdpc2UuCisJKiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDogUGFyc2UgUGFja2FnZS1UeXBlLCBTdWJhcmNoaXRlY3R1cmUsCisJS2VybmVsLVZlcnNpb24gYW5kIEluc3RhbGxlci1NZW51LUl0ZW0gZnJvbSBjb250cm9sIGZpbGUgYmluYXJ5CisJc3RhbnphLiBXYXJuIGlmIHVkZWIgc3BlY2lmaWMgZmllbGRzIGFyZSB1c2VkIG9uIG5vbi11ZGViIHBhY2thZ2VzLgorCUFkZCBwYWNrYWdlIHdpdGggcHJvcGVyIGV4dGVuc2lvbiB0byB0aGUgZmlsZXMgbGlzdCBmaWxlLgorCShAY29udHJvbF9maWVsZHMpOiBBZGQgUGFja2FnZS1UeXBlLCBTdWJhcmNoaXRlY3R1cmUsIEtlcm5lbC1WZXJzaW9uCisJYW5kIEluc3RhbGxlci1NZW51LUl0ZW0uCisJKCRwYWNrYWdlX3R5cGUpOiBOZXcgdmFyaWFibGUuCisJKiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDogSWdub3JlIFBhY2thZ2UtVHlwZSwgU3ViYXJjaGl0ZWN0dXJlLAorCUtlcm5lbC1WZXJzaW9uIGFuZCBJbnN0YWxsZXItTWVudS1JdGVtIGZpZWxkcy4KKwkqIHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6IExpa2V3aXNlLgorCisyMDA3LTExLTE1ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL0Rwa2cvQXJjaC5wbSAocmVhZF9jcHV0YWJsZSk6IEZvcmNlIGEgc2FuZSBpbnB1dCByZWNvcmQKKwlzZXBhcmF0b3IuCisJKHJlYWRfb3N0YWJsZSk6IExpa2V3aXNlLgorCShyZWFkX3RyaXBsZXR0YWJsZSk6IExpa2V3aXNlLgorCisyMDA3LTExLTA0ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL01ha2VmaWxlLmFtIChjbGVhbik6IFNldCBQRVJMNUxJQiB0byBmb3JjZSB1c2Ugb2Ygc2hpcHBlZAorCW1vZHVsZXMgaW5zdGVhZCBvZiBzeXN0ZW0gb25lcy4KKworMjAwNy0xMS0wNCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLWFyY2hpdGVjdHVyZS5wbDogTW92ZSBob3N0IGFuZCBidWlsZCBhcmNoIGRldGVjdGlvbgorCXRvIC4uLgorCSogc2NyaXB0cy9EcGtnL0FyY2gucG0gKGdldF9ob3N0X2FyY2gpOiAuLi4gaGVyZS4KKwkoZ2V0X2J1aWxkX2FyY2gsIGdldF9nY2NfaG9zdF9nbnVfdHlwZSk6IExpa2V3aXNlLiBOZXcgZnVuY3Rpb24uCisKKzIwMDctMTEtMDQgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvZHBrZy1hcmNoaXRlY3R1cmUucGw6IFdyYXAgbG9uZyBzdHJpbmdzIGZvciBkaWUgY2FsbHMKKwlhdCBsZXNzIHRoYW4gODAgY2hhcnMuCisKKzIwMDctMTEtMDQgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvRHBrZy9BcmNoLnBtIChkZWJhcmNoX3RvX2dudXRyaXBsZXQpOiBOZXcgZnVuY3Rpb24uCisJKGdudXRyaXBsZXRfdG9fZGViYXJjaCk6IExpa2V3aXNlLgorCSogc2NyaXB0cy9kcGtnLWFyY2hpdGVjdHVyZS5wbDogVXNlIGRlYmFyY2hfdG9fZ251dHJpcGxldCBhbmQKKwlnbnV0cmlwbGV0X3RvX2RlYmFyY2ggaW5zdGVhZCBvZiBuZXN0ZWQgY2FsbHMgdG8KKwlkZWJ0cmlwbGV0X3RvX2dudXRyaXBsZXQgYW5kIGRlYmFyY2hfdG9fZGVidHJpcGxldCwKKwlkZWJ0cmlwbGV0X3RvX2RlYmFyY2ggYW5kIGdudXRyaXBsZXRfdG9fZGVidHJpcGxldC4KKworMjAwNy0xMS0wNCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLWFyY2hpdGVjdHVyZS5wbDogTW92ZSBzZXR0aW5nIG9mIGhvc3QgYW5kIGJ1aWxkIGFyY2gKKwl2YXJpYWJsZXMgYWZ0ZXIgYXJndW1lbnQgcHJvY2Vzc2luZy4gQ2FsbCBsaXN0X2FyY2hlcyBmcm9tIGFyZ3VtZW50CisJcHJvY2Vzc2luZyBsb29wLiBNb3ZlIGFyY2hpdGVjdHVyZSBsaXN0aW5nIHRvIC4uLgorCShsaXN0X2FyY2hlcyk6IC4uLiBoZXJlLiBOZXcgZnVuY3Rpb24uCisKKzIwMDctMTEtMDQgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvRHBrZy9BcmNoLnBtIChnZXRfdmFsaWRfYXJjaGVzKTogUmV0dXJuIGFuIGFycmF5IGluc3RlYWQgb2YKKwlwcmludGluZyB0aGUgYXJjaGl0ZWN0dXJlcy4KKworMjAwNy0xMC0yOSAgRnJhbmsgTGljaHRlbmhlbGQgIDxkanBpZ0BkZWJpYW4ub3JnPgorCisJKiBtYW4vZHBrZy1xdWVyeS4xOiBSZXBsYWNlICcgd2l0aCBcKGFxIGluIGV4YW1wbGUuCisJUmVwb3J0ZWQgYnkgRGFuaWVsIHZhbiBFZWRlbiA8ZGFuaWVsX2UgLWF0LSBkZHMgbmw+CisJKiBtYW4vZHBrZy1zb3VyY2UuMTogUmVwbGFjZSAnIHdpdGggXChhcSBpbiBzeW5vcHNpcy4KKworMjAwNy0xMC0xOCAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9jb250cm9sbGliLnBsIChwYXJzZWRlcCwgc2hvd2RlcCk6IFJlbW92ZSB1bnVzZWQgZnVuY3Rpb25zLgorCShAcGtnX2RlcF9maWVsZHMsIEBzcmNfZGVwX2ZpZWxkcyk6IE1vdmUgdmFyaWFibGVzIHRvIC4uLgorCSogc2NyaXB0cy9EcGtnL0RlcHMucG06IC4uLiBoZXJlLiBOZXcgZmlsZS4KKwkqIHNjcmlwdHMvdC80MDBfRHBrZ19EZXBzLnQ6IE5ldyBmaWxlLgorCSogc2NyaXB0cy9kcGtnLWNoZWNrYnVpbGRkZXBzLnBsOiBBZGFwdGVkIHRvIHVzZSB0aGUgbmV3CisJRHBrZzo6RGVwcyBtb2R1bGUuCisJKiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOiBMaWtld2lzZS4KKwkqIHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6IExpa2V3aXNlLgorCSogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6IExpa2V3aXNlLiBBbHNvIGdhaW5zIG5ldyBmZWF0dXJlcworCXN1Y2ggYXMgYXV0b21hdGljIHNpbXBsaWZpY2F0aW9uIG9mIGRlcGVuZGVuY2llcy4KKwkqIG1hbi9kcGtnLWdlbmNvbnRyb2wuMTogRG9jdW1lbnQgdGhlIG5ldyBiZWhhdmlvdXIgd2l0aAorCWRlcGVuZGVuY3kgZmllbGRzLgorCisyMDA3LTEwLTE4ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL0Rwa2cvRXJyb3JIYW5kbGluZy5wbSAocmVwb3J0KTogTmV3IGZ1bmN0aW9uLgorCSh3YXJuaW5nLCB3YXJuZXJyb3IsIGZhaWx1cmUsIHN5c2VyciwgZXJyb3IsIGludGVybmVyciwgdW5rbm93bikKKwkodXNhZ2VlcnIpOiBVc2UgcmVwb3J0IGluc3RlYWQgb2Ygc3ByaW50Zi4gQWNjZXB0IGEgZm9ybWF0IHN0cmluZworCXdpdGggdmFyaWFibGUgbnVtYmVyIG9mIGFyZ3VtZW50cy4gRml4IGFsbCBjYWxsZXJzLgorCShzdWJwcm9jZXJyKTogVXNlIGZhaWx1cmUgaW5zdGVhZCBvZiBkaWUgYW5kIHNwcmludGYuIEFjY2VwdCBhCisJZm9ybWF0IHN0cmluZyB3aXRoIHZhcmlhYmxlIG51bWJlciBvZiBhcmd1bWVudHMuIEZpeCBhbGwgY2FsbGVycy4KKworMjAwNy0xMC0xOCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbCAobXVzdHNldHZhcik6IFBhc3MgJHRleHQgdG8gc3ByaW50ZgorCWluc3RlYWQgb2YgX2cuCisKKzIwMDctMTAtMTUgIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvRHBrZy9WZXJzaW9uLnBtOiBGaXggY29tcGFyZV92ZXJzaW9ucyB0byBoYW5kbGUgcHJvcGVybHkKKwl0aGUgPj0gY2FzZXMgKGl0IHdhcyBpbXByb3Blcmx5IGhhbmRsZWQgbGlrZSA+PiBkdWUgdG8gYSBiYWQgcmVnZXhwKS4KKwkqIGRlYmlhbi9ydWxlczogSW5jbHVkZSBjcHV0YWJsZSBvc3RhYmxlIHRyaXBsZXR0YWJsZSBpbgorCWJ1aWxkLXRyZWUgc28gdGhhdCB0aGV5IGFyZSBhdmFpbGFibGUgZHVyaW5nIG1ha2UgY2hlY2sgKERwa2cucG0KKwlleHBvcnRzICIuLiIgYXMgJHBrZ2RhdGFkaXIgZHVyaW5nIHRlc3RzKS4KKwkqIHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGwgKG15X2ZpbmRfbGlicmFyeSk6IEF2b2lkIHVud2FudGVkCisJbW9kaWZpY2F0aW9uIG9mIEBwa2dfc2hsaWJzLgorCisyMDA3LTEwLTE0ICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL0Rwa2cvVmVyc2lvbi5wbTogTWFyayBjb21wYXJlX3ZlcnNpb25zIGFzIGV4cG9ydGFibGUuCisKKzIwMDctMTAtMTMgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvRHBrZy9TaGxpYnMucG06IERvIG5vdCBjYWxsIHRleHRkb21haW4uCisJKiBzY3JpcHRzL0Rwa2cvU2hsaWJzL09iamR1bXAucG06IExpa2V3aXNlLgorCSogc2NyaXB0cy9EcGtnL1NobGlicy9TeW1ib2xGaWxlLnBtOiBMaWtld2lzZS4KKworMjAwNy0xMC0xMyAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGw6IFVzZSBuZXcgRHBrZzo6QXJjaCBtb2R1bGUuCisJKCRob3N0X2FyY2gpOiBJbml0aWFsaXplIHdpdGggZ2V0X2hvc3RfYXJjaCBpbnN0ZWFkIG9mIGRpcmVjdCBjYWxsIHRvCisJJ2Rwa2ctYXJjaGl0ZWN0dXJlJy4KKworMjAwNy0xMC0xMiAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDogVXNlIGdldF9ob3N0X2FyY2ggZnJvbSBEcGtnOjpBcmNoLgorCisyMDA3LTEwLTEyICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2NvbnRyb2xsaWIucGwgKCRob3N0X2FyY2gsIGdldF9ob3N0X2FyY2gsIGdldF92YWxpZF9hcmNoZXMpCisJKEBjcHUsIEBvcywgJWNwdXRhYmxlLCAlb3N0YWJsZSwgJWNwdXRhYmxlX3JlLCAlb3N0YWJsZV9yZSkKKwkoJWRlYnRyaXBsZXRfdG9fZGViYXJjaCwgJWRlYmFyY2hfdG9fZGVidHJpcGxldCwgcmVhZF9jcHV0YWJsZSkKKwkocmVhZF9vc3RhYmxlLCByZWFkX3RyaXBsZXR0YWJsZSwgZGVidHJpcGxldF90b19nbnV0cmlwbGV0KQorCShnbnV0cmlwbGV0X3RvX2RlYnRyaXBsZXQsIGRlYnRyaXBsZXRfdG9fZGViYXJjaCkKKwkoZGViYXJjaF90b19kZWJ0cmlwbGV0LCBkZWJ3aWxkY2FyZF90b19kZWJ0cmlwbGV0KQorCShkZWJhcmNoX2VxLCBkZWJhcmNoX2lzKTogTW92ZSB0byAuLi4KKwkqIHNjcmlwdHMvRHBrZy9BcmNoLnBtOiAuLi4gaGVyZS4gTmV3IGZpbGUuCisJKiBzY3JpcHRzL01ha2VmaWxlLmFtIChub2Jhc2VfZGlzdF9wZXJsbGliX0RBVEEpOiBBZGQgJ0Rwa2cvQXJjaC5wbScuCisJKiBzY3JpcHRzL3BvL1BPVEZJTEVTLmluOiBBZGQgJ3NjcmlwdHMvRHBrZy9BcmNoLnBtJy4KKworCSogc2NyaXB0cy9jb250cm9sbGliLnBsOiBVc2UgbmV3IERwa2c6OkFyY2ggbW9kdWxlLgorCSogc2NyaXB0cy9kcGtnLWFyY2hpdGVjdHVyZS5wbDogTGlrZXdpc2UuCisJKiBzY3JpcHRzL2Rwa2ctY2hlY2tidWlsZGRlcHMucGw6IExpa2V3aXNlLgorCSogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6IExpa2V3aXNlLgorCSogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6IExpa2V3aXNlLgorCSogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDogTGlrZXdpc2UuCisKKwkqIHNjcmlwdHMvZHBrZy1hcmNoaXRlY3R1cmUucGw6IERvIG5vdCByZXF1aXJlIGNvbnRyb2xsaWIucGwgYW55bW9yZS4KKworMjAwNy0xMC0xMiAgRnJhbmsgTGljaHRlbmhlbGQgIDxkanBpZ0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL3QvMzAwX0Rwa2dfQnVpbGRPcHRpb25zLnQ6IE5ldyBmaWxlLgorCUxlYWRzIHRvIHRoZSBmb2xsb3dpbmcgZml4ZXM6CisJKiBzY3JpcHRzL0Rwa2cvQnVpbGRPcHRpb25zLnBtIChwYXJzZSk6IEFkZAorCXN1cHBvcnQgZm9yIG5vY2hlY2sgYW5kIG1ha2UgaXQgYWN0dWFsbHkgd29yay4KKwkoc2V0KTogUmVhbGx5IHNldCBERUJfQlVJTERfT1BUSU9OUy4gRGlzY292ZXJlZAorCWJ5IERhbmllbCBTaGVwbGVyLgorCisyMDA3LTEwLTEyICBGcmFuayBMaWNodGVuaGVsZCAgPGRqcGlnQGRlYmlhbi5vcmc+CisKKwkqIG1hbi9kcGtnLjEgKEFVVEhPUlMpOiBSZW1vdmUgc29tZSB1bm5lY2Vzc2FyeSBtYXJrdXAuCisJQWxsb3dzIHJldXNlIG9mIG9uZSBtb3JlIG1zZ2lkLgorCisJKiBtYW4vTWFrZWZpbGUuYW0gKHVwZGF0ZS1wbyk6IE5ldyB0YXJnZXQgdG8gZWFzaWx5CisJdXBkYXRlIHRoZSAucG90IGFuZCAucG8gZmlsZXMuIFVzZXMgcG80YSAtLWZvcmNlLgorCisyMDA3LTEwLTExICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2NvbnRyb2xsaWIucGwgKCR3YXJuYWJsZV9lcnJvciwgJHF1aWV0X3dhcm5pbmdzKTogUmVtb3ZlCisJdmFyaWFibGUgZGVjbGFyYXRpb25zLgorCShmYWlsdXJlLCBzeXNlcnIsIGVycm9yLCBpbnRlcm5lcnIsIHdhcm5pbmcsIHdhcm5lcnJvcikKKwkoc3VicHJvY2Vycik6IFJlbW92ZSBmdW5jdGlvbnMuCisJKHVua25vd24sIHVzYWdlZXJyKTogTW92ZSBmdW5jdGlvbnMgdG8gLi4uCisJKiBzY3JpcHRzL0Rwa2cvRXJyb3JIYW5kbGluZy5wbTogLi4uIGhlcmUuCisJKHVzYWdlZXJyKTogQ2FsbCB1c2FnZSBmcm9tIG1haW46Oi4KKwkoQEVYUE9SVF9PSyk6IEFkZCB1c2FnZWVyciBhbmQgdW5rbm93bi4KKworCSogc2NyaXB0cy84MjItZGF0ZS5wbDogVXNlIERwa2c6OkVycm9ySGFuZGxpbmcuCisJKiBzY3JpcHRzL2NoYW5nZWxvZy9kZWJpYW4ucGw6IExpa2V3aXNlLgorCSogc2NyaXB0cy9jb250cm9sbGliLnBsOiBMaWtld2lzZS4KKwkqIHNjcmlwdHMvZHBrZy1hcmNoaXRlY3R1cmUucGw6IExpa2V3aXNlLgorCSogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDogTGlrZXdpc2UuCisJKiBzY3JpcHRzL2Rwa2ctY2hlY2tidWlsZGRlcHMucGw6IExpa2V3aXNlLgorCSogc2NyaXB0cy9kcGtnLWRpc3RhZGRmaWxlLnBsOiBMaWtld2lzZS4KKwkqIHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOiBMaWtld2lzZS4KKwkqIHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOiBMaWtld2lzZS4KKwkqIHNjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsOiBMaWtld2lzZS4KKwkqIHNjcmlwdHMvZHBrZy1wYXJzZWNoYW5nZWxvZy5wbDogTGlrZXdpc2UuCisJKiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOiBMaWtld2lzZS4KKwkqIHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6IExpa2V3aXNlLgorCisJKiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsICgkd2FybmFibGVfZXJyb3IpOiBJbXBvcnQgZnJvbQorCURwa2c6OkVycm9ySGFuZGxpbmcgaW5zdGVhZCBvZiBkZWNsYXJpbmcgYXMgb3VyLgorCSogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbCAoJHdhcm5hYmxlX2Vycm9yLCAkcXVpZXRfd2FybmluZ3MpOiBMaWtld2lzZS4KKworCSogc2NyaXB0cy84MjItZGF0ZS5wbDogRG8gbm90IHJlcXVpcmUgY29udHJvbGxpYi5wbCBhbnltb3JlLgorCSogc2NyaXB0cy9kcGtnLXBhcnNlY2hhbmdlbG9nLnBsOiBMaWtld2lzZS4KKwkqIHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6IExpa2V3aXNlLgorCisyMDA3LTEwLTEwICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL0Rwa2cvRXJyb3JIYW5kbGluZy5wbTogVXNlIERwa2cuCisJKCRwcm9nbmFtZSk6IERvIG5vdCBzZXQgbm9yIGRlY2xhcmUgaXQuCisKKzIwMDctMTAtMTAgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvRHBrZy9FcnJvckhhbmRsaW5nLnBtICgkd2FybmFibGVfZXJyb3IpOiBTZXQgdG8gMSB0byBtYXRjaAorCWNvbnRyb2xsaWIucGwuCisKKzIwMDctMTAtMTAgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIG00L2FyY2gubTQoX0RQS0dfQVJDSElURUNUVVJFKTogU2V0IFBFUkw1TElCIHdoZW4gY2FsbGluZworCWRwa2ctYXJjaGl0ZWN0dXJlLnBsIHRvIHVzZSB0aGUgc2hpcHBlZCBwZXJsIG1vZHVsZXMgaW5zdGVhZCBvZgorCXRoZSBzeXN0ZW0gb25lcy4KKworMjAwNy0xMC0wOSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGw6IFVzZSBuZXcgRHBrZyBtb2R1bGUuIERvIG5vdCBkZWNsYXJlCisJbm9yIGluaXRpYWxpemUgJHZlcnNpb24sICRkcGtnbGliZGlyIGFuZCAkcHJvZ25hbWUgYW55bW9yZS4KKworMjAwNy0xMC0wOSAgRnJhbmsgTGljaHRlbmhlbGQgIDxkanBpZ0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsICh1c2FnZSk6IC1XIGlzIHRoZSBkZWZhdWx0CisJZm9yIHF1aXRlIHNvbWUgdGltZSBhbHJlYWR5LiBBZGFwdCB0aGUgZGVzY3JpcHRpb24gb2YKKwktVyBhbmQgLUUuCisJKiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsICh1c2FnZSk6IExpa2V3aXNlLgorCSogbWFuL2Rwa2ctc291cmNlLjE6IExpa2V3aXNlLgorCSogbWFuL2Rwa2ctYnVpbGRwYWNrYWdlLjE6IExpa2V3aXNlLgorCisJKiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOiBBZGQgLXovLVogdG8KKwlwYXNzdGhyb3VnaCBvcHRzICh3aWxsIGJlIHBhc3NlZCB0byBkcGtnLXNvdXJjZSkuCisJKiBtYW4vZHBrZy1idWlsZHBhY2thZ2UuMTogRG9jdW1lbnQgYWxsIG9wdGlvbnMgb25seSBwYXNzZWQgdG8KKwlkcGtnLXNvdXJjZS4gLXNbbnNBa3VyS1VSXSwgLXosIGFuZCAtWiB3ZXJlIG1pc3NpbmcuCisKKwkqIHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6IFN1cHBvcnQgYSBzdWJzZXQgb2YKKwl3aWcmcGVuIChha2EgRm9ybWF0OiAyLjApIG9uIGJ1aWxkOgorCVVzZSAub3JpZy50YXIuKGJ6Mnxsem1hKSBpZiB0aGV5IGFyZSBhdmFpbGFibGUKKwlhbmQgbm8gLmd6IGNhbiBiZSBmb3VuZC4gQWxzbyBsZXQgdGhlIHVzZXIgc3BlY2lmeQorCXZpYSAtWihnemlwfGJ6aXAyfGx6bWEpIGhvdyBmaWxlcyB0aGF0IG5lZWQgdG8gYmUKKwlnZW5lcmF0ZWQgc2hvdWxkIGJlIGNvbXByZXNzZWQuIC16KFsxLTldfGJlc3R8ZmFzdCkKKwljYW4gYmUgdXNlZCB0byBzcGVjaWZ5IHRoZSBjb21wcmVzc2lvbiBsZXZlbAorCXRvIHVzZS4KKwkqIG1hbi9kcGtnLXNvdXJjZS4xOiBDaGFuZ2UgdGhlIHJlc3Qgb2YgdGhlIG1hbiBwYWdlIHRvIG5vdCBjb250YWluCisJYW55IGhhcmRjb2RlZCAuZ3ogcmVmZXJlbmNlcy4gRG9jdW1lbnQgLVogYW5kIC16LgorCisyMDA3LTEwLTA4ICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCSAgICBGcmFuayBMaWNodGVuaGVsZCAgPGRqcGlnQGRlYmlhbi5vcmc+CisKKwlNZXJnZSBkcGtnLXNobGliZGVwcy1idXh5IGJyYW5jaC4KKworCSogc2NyaXB0cy9EcGtnL0Vycm9ySGFuZGxpbmcucG06IE5ldyBmaWxlLgorCSogc2NyaXB0cy9EcGtnL0dldHRleHQucG06IExpa2V3aXNlLgorCSogc2NyaXB0cy9EcGtnL1BhdGgucG06IExpa2V3aXNlLgorCSogc2NyaXB0cy9EcGtnL1NobGlicy5wbTogTGlrZXdpc2UuCisJKiBzY3JpcHRzL0Rwa2cvU2hsaWJzL09iamR1bXAucG06IExpa2V3aXNlLgorCSogc2NyaXB0cy9EcGtoL1NobGlicy9TeW1ib2xGaWxlLnBtOiBMaWtld2lzZS4KKwkqIHNjcmlwdHMvRHBrZy9WZXJzaW9uLnBtOiBMaWtld2lzZS4KKworCSogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDogQWRkIHN1cHBvcnQgZm9yICJzeW1ib2xzIiBmaWxlcy4KKwkqIG1hbi9kcGtnLXNobGliZGVwcy4xOiBEb2N1bWVudCAic3ltYm9scyIgZmlsZXMgc3VwcG9ydC4KKworCSogc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGw6IE5ldyBmaWxlLgorCSogbWFuL2Rwa2ctZ2Vuc3ltYm9scy4xOiBMaWtld2lzZS4KKworCSogc2NyaXB0cy90LzAwMF9wb2QudDogTmV3IGZpbGUuCisJKiBzY3JpcHRzL3QvMTAwX0Rwa2dfVmVyc2lvbi50OiBMaWtld2lzZS4KKwkqIHNjcmlwdHMvdC8yMDBfRHBrZ19TaGxpYnMudDogTGlrZXdpc2UuCisJKiBzY3JpcHRzL3QvMjAwX0Rwa2dfU2hsaWJzL2xkLnNvLmNvbmY6IExpa2V3aXNlLgorCSogc2NyaXB0cy90LzIwMF9EcGtnX1NobGlicy9sZC5zby5jb25mXzI6IExpa2V3aXNlLgorCSogc2NyaXB0cy90LzIwMF9EcGtnX1NobGlicy9sZC5zby5jb25mLmQvaW5mX3JlY3Vyc2UuY29uZjogTGlrZXdpc2UuCisJKiBzY3JpcHRzL3QvMjAwX0Rwa2dfU2hsaWJzL2xkLnNvLmNvbmYuZC9ub3JtYWwuY29uZjogTGlrZXdpc2UuCisJKiBzY3JpcHRzL3QvMjAwX0Rwa2dfU2hsaWJzL2xkLnNvLmNvbmYuZC9yZWN1cnNpdmUuY29uZjogTGlrZXdpc2UuCisJKiBzY3JpcHRzL3QvMjAwX0Rwa2dfU2hsaWJzL29iamR1bXAuZ2xpYi1pYTY0OiBMaWtld2lzZS4KKwkqIHNjcmlwdHMvdC8yMDBfRHBrZ19TaGxpYnMvb2JqZHVtcC5saWJjNi0yLjM6IExpa2V3aXNlLgorCSogc2NyaXB0cy90LzIwMF9EcGtnX1NobGlicy9vYmpkdW1wLmxpYmM2LTIuNjogTGlrZXdpc2UuCisJKiBzY3JpcHRzL3QvMjAwX0Rwa2dfU2hsaWJzL3N5bWJvbHMuZmFrZS0xOiBMaWtld2lzZS4KKwkqIHNjcmlwdHMvdC8yMDBfRHBrZ19TaGxpYnMvc3ltYm9scy5mYWtlLTI6IExpa2V3aXNlLgorCSogc2NyaXB0cy90LzIwMF9EcGtnX1NobGlicy9zeW1ib2xzLmluY2x1ZGUtMTogTGlrZXdpc2UuCisJKiBzY3JpcHRzL3QvMjAwX0Rwa2dfU2hsaWJzL3N5bWJvbHMuaW5jbHVkZS0yOiBMaWtld2lzZS4KKworMjAwNy0xMC0wOCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogY29uZmlndXJlLmFjOiBCdW1wIHZlcnNpb24gdG8gMS4xNC44fi4KKworMjAwNy0xMC0wOCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogY29uZmlndXJlLmFjOiBSZWxlYXNlIDEuMTQuNy4KKworMjAwNy0xMC0wOCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDogRG8gbm90IHJlcGxhY2Ugc3Vic3R2YXJzIGZvciBidWlsZAorCWRlcGVuZGVuY2llcy4KKworMjAwNy0xMC0wOCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogbWFuL2RlYi1jb250cm9sLjU6IERvY3VtZW50IE9yaWdpbiBhbmQgQnVncyBmaWVsZHMuCisKKzIwMDctMTAtMDggIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOiBSZWZlciB0byBob3N0IGFyY2hpdGVjdHVyZSAoaW5zdGVhZCBvZgorCWJ1aWxkKSBpbiBlcnJvciBzdHJpbmcsIGFuZCBxdW90ZSBhcmNoaXRlY3R1cmUgbmFtZS4KKworMjAwNy0xMC0wOCAgRnJhbmsgTGljaHRlbmhlbGQgIDxkanBpZ0BkZWJpYW4ub3JnPiwKKyAgICAgICAgICAgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvY29udHJvbGxpYi5wbCAoZGViYXJjaF9pcyk6IENoZWNrIGlmICRhbGlhcyBpcyBlcXVhbCB0bworCSRyZWFsIG9yICdhbnknIGJlZm9yZSBtYXBwaW5nIHRoZW0gdG8gZGVidHJpcGxldHMuCisJKGRlYmFyY2hfdG9fZGVidHJpcGxldCk6IERvIG5vdCBzcGVjaWFsIGNhc2UgJ2FueScgbm9yICdhbGwnLgorCShkZWJhcmNoX2VxKTogQ2hlY2sgaWYgJGEgYW5kICRiIGFyZSBlcXVhbCBiZWZvcmUgbWFwcGluZyB0aGVtIHRvCisJZGVidHJpcGxldHMuCisKKzIwMDctMTAtMDcgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6IFdhcm4gaWYgcnVuIGFzIHJvb3QgYW5kICRyb290Y29tbWFuZAorCWhhcyBiZWVuIHNwZWNpZmllZC4gRXJyb3IgaWYgcnVuIGFzIG5vbi1yb290IGFuZCAkcm9vdGNvbW1hbmQgaXMgbm90CisJZm91bmQuCisKKzIwMDctMTAtMDcgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGwgKHVzYWdlKTogUmVtb3ZlIGRldGFpbHMgYWJvdXQgcnVubmluZworCWZha2Vyb290IG9ubHkgaWYgaXQncyBhdmFpbGFibGUuCisJKiBtYW4vZHBrZy1idWlsZHBhY2thZ2UuMTogRG9jdW1lbnQgdGhhdCBmYWtlcm9vdCBpcyBub3cgdGhlIGRlZmF1bHQKKwl2YWx1ZSBpbiBjYXNlIC1yIGlzIG5vdCBzcGVjaWZpZWQuCisKKzIwMDctMTAtMDcgIEZyYW5rIExpY2h0ZW5oZWxkICA8ZGpwaWdAZGViaWFuLm9yZz4KKwkgICAgTWFyY2VsIFRvZWxlICA8bXRvZWxlQGtlcm4ubmw+CisKKwkqIHNjcmlwdHMvZHBrZy1zb3VyY2UucGwgKGhhbmRsZWZvcm1hdCk6IEluY2x1ZGUKKwlhIHRyYWlsaW5nIEhUIGNoYXJhY3RlciBpbiB0aGUgZGlmZiBsYWJlbHMgaWYKKwl0aGUgZmlsZW5hbWUgY29udGFpbnMgc3BhY2VzLiBBcHBhcmVudGx5IHRoaXMgaXMKKwlzdGFuZGFyZCBidXQgdW5kb2N1bWVudGVkIGRpZmYgYmVoYXZpb3VyLgorCisyMDA3LTA5LTMwICBGcmFuayBMaWNodGVuaGVsZCAgPGRqcGlnQGRlYmlhbi5vcmc+CisKKwkqIG1hbi9kZWItY29udHJvbC41OiBSZW1vdmUgb2Jzb2xldGUgc2VudGVuY2UgcmVnYXJkaW5nIHRoZSByb2xlIG9mCisJdGhlIFByaW9yaXR5IGFuZCBTZWN0aW9uIGZpZWxkLiBUaGV5IGhhdmUgbm90aGluZyB0byBkbyB3aXRoIHRoZQorCWFyY2hpdmUgbGF5b3V0IHNpbmNlIHdvb2R5LgorCisJKiBtYW4vZHBrZy1zb3VyY2UuMTogUmVtb3ZlIHN1cGVyZmx1b3VzIFtvcHRpb25zXSBmcm9tIC1iIGNvbW1hbmQKKwlkZXNjcmlwdGlvbi4KKworMjAwNy0wOS0yOSAgRnJhbmsgTGljaHRlbmhlbGQgIDxkanBpZ0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOiBDYWxsIGNoZWNrdmVyc2lvbigpCisJb24gdmVyc2lvbiBleHRyYWN0ZWQgZnJvbSBjaGFuZ2Vsb2cuIFNpbmNlIG90aGVyCisJcHJvZ3JhbSB3ZSBjYWxsIGxhdGVyIHdpbGwgZG8gdGhlIHNhbWUgdGhlcmUgaXMKKwlyZWFsbHkgbm8gcmVhc29uIG5vdCB0byBmYWlsIGVhcmx5LgorCisJKiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsICh0ZXN0Y29tbWFuZCk6CisJTWFrZSB0aGUgY2hlY2sgbW9yZSBzZW5zaWJsZS4gSW5zdGVhZCBvZiB0ZXN0aW5nCisJL3Vzci9iaW4vJGNtZCwgdGVzdCBgd2hpY2ggJGNtZGAuCisKKwkqIHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGwgKHNpZ25maWxlKTogQ2FsbAorCWdwZyB3aXRoIC0tdXRmOC1zdHJpbmdzIHNpbmNlIG90aGVyd2lzZSB0aGUga2V5CisJbG9va3VwIGZhaWxzIHdpdGggbm9uLUFTQ0lJIFVURjgtZW5jb2RlZCBuYW1lcy4KKwlTaW5jZSBEZWJpYW4gY2hhbmdlbG9ncyBzaG91bGQgYmUgVVRGOCBlbmNvZGVkLAorCXRoaXMgaXMgcHJvYmFibHkgdGhlIG1vcmUgc2FuZSBkZWZhdWx0LiBUaGlzCisJd2lsbCBwcm9iYWJseSBicmVhayBpZiBvbmUgdXNlcyBhIG5vbi1VVEY4IGxvY2FsZQorCWFuZCB0cmllcyB0byBnaXZlIGEgdWlkIG9uIHRoZSBjb21tYW5kbGluZSB0aGF0CisJY29udGFpbnMgbm9uLUFTQ0lJIGNoYXJzLiBJIHRoaW5rIHdlIGNhbiBsaXZlIHdpdGgKKwl0aGF0LgorCisyMDA3LTA5LTI4ICBGcmFuayBMaWNodGVuaGVsZCAgPGRqcGlnQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGwgKHdpdGhlY2hvKTogUmVtb3ZlCisJZW1wdHkgc3RyaW5ncyBhdCB0aGUgYmVnaW4gb2YgdGhlIGNvbW1hbmQgYXJyYXkuCisJVGhlc2UgY2FuIGJlIGNhdXNlZCBieSBlLmcuIGFuIGVtdHB5ICRyb290Y29tbWFuZG8uCisJSXQgaXMgZWFzaWVzdCB0byBmaWx0ZXIgdGhlbSBvdXQgaGVyZS4KKworMjAwNy0wOS0yNCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbCAoc2lnbmZpbGUpOiBEbyBub3QgdXNlIGFic29sdXRlIHBhdGgKKwlmb3IgJ3JtJy4KKworMjAwNy0wOS0yNCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbCAodXNhZ2UpOiBGaXggdHlwbworCXMvZHBrZy1nZW5jaGFuZ3MvZHBrZy1nZW5jaGFuZ2VzLy4KKworMjAwNy0wOS0yNCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbCAoJHdhcm5hYmxlX2Vycm9ycyk6IFJlbmFtZSB0byAuLi4KKwkoJHdhcm5hYmxlX2Vycm9yKTogLi4uIHRoaXMsIGFuZCBkZWNsYXJlIGFzICdvdXInLgorCisyMDA3LTA5LTI0ICBGcmFuayBMaWNodGVuaGVsZCAgPGRqcGlnQGRlYmlhbi5vcmc+CisKKwkqIG1hbi9kcGtnLXNvdXJjZS4xOiBSZXdvcmsgZG9jdW1lbnRhdGlvbiBvZiAtaSBhbmQgLUkgb3B0aW9ucyB0bworCWdpdmUgY2xlYXJlciBleHBsYW5hdGlvbnMgYW5kIGV4cGxhaW4gdGhlIGRpZmZlcmVuY2VzIGJldHdlZW4gdGhlCisJdHdvIGluIHN5bnRheCBhbmQgc2VtYW50aWNzLgorCisyMDA3LTA5LTI0ICBKYXJpIEFhbHRvICA8amFyaS5hYWx0b0BjYW50ZS5uZXQ+CisgICAgICAgICAgICBGcmFuayBMaWNodGVuaGVsZCAgPGRqcGlnQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6IEFsbG93IHVzZSBvZiAtSQorCXdpdGhvdXQgZmlsZW5hbWUgcGF0dGVybiBhbmQgbG9hZCBhIGxpc3QKKwlvZiBkZWZhdWx0IHBhdHRlcm5zIHdoaWNoIGlzIGluIGVmZmVjdCBhcworCXNpbWlsYXIgYXMgcG9zc2libGUgdG8gdGhlIGRlZmF1bHQgcmVnZXhwCisJb2YgLWkuCisJKiBtYW4vZHBrZy1zb3VyY2UuMTogRG9jdW1lbnQgbmV3IGJlaGF2aW91ciBvZiAtSSBvcHRpb24uCisKKzIwMDctMDktMjMgIEZyYW5rIExpY2h0ZW5oZWxkICA8ZGpwaWdAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDogQWRkIG5ldyBvcHRpb24KKwktals8bnVtYmVyPl0gdGhhdCB3b3JrcyBsaWtlIHRoZSBtYWtlIG9wdGlvbiBvZgorCXRoZSBzYW1lIG5hbWUuIEl0IHdpbGwgYmUgcGFzc2VkIHRvIGRlYmlhbi9ydWxlcyBpbgorCXRoZSBNQUtFRkxBR1MgZW52aXJvbm1lbnQgdmFyaWFibGUuIEFsc28gdGhlCisJcGFyYWxsZWw9PG4+IERFQl9CVUlMRF9PUFRJT05TIG9wdGlvbiB3aWxsIGJlIGhvbm9yZWQKKwlhbmQgc2V0IGNvcnJlY3RseS4gVGhlIGZpbmFsbHkgdXNlZCB2YWx1ZSBpcyBkZXRlcm1pbmVkIGJ5IHRoZQorCWZvbGxvd2luZyBvcmRlcjogLWogPiBERUJfQlVJTERfT1BUSU9OUyA+IE1BS0VGTEFHUy4KKwlCYXNlZCBvbiBhbiBpZGVhIGJ5IFJvYmVydCBNaWxsYW4gPHJtaEBheWJhYnR1LmNvbT4uCisJKiBzY3JpcHRzL0Rwa2cvQnVpbGRPcHRpb25zLnBtOiBBZGRlZC4gU3VwcG9ydCBjb2RlCisJZm9yIERFQl9CVUlMRF9PUFRJT05TIGhhbmRsaW5nIGJ5IGRwa2ctYnVpbGRwYWNrYWdlLgorCSogc2NyaXB0cy9NYWtlZmlsZS5hbTogQWRhcHQuCisJKiBtYW4vZHBrZy1idWlsZHBhY2thZ2UuMTogRG9jdW1lbnQgdGhlIG5ldyAtaiBvcHRpb24uCisKKzIwMDctMDktMjMgIEphcmkgQWFsdG8gIDxqYXJpLmFhbHRvQGNhbnRlLm5ldD4KKworCSogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbCAoJGRpZmZfaWdub3JlX2RlZmF1bHRfcmVnZXhwKTogQWRkCisJX01UTiBmb3IgbW9ub3RvbmUuCisKKzIwMDctMDktMjAgIEZyYW5rIExpY2h0ZW5oZWxkICA8ZGpwaWdAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLXNvdXJjZXMucGwgKHZlcnNpb24pOiBEb24ndCB1c2UKKwlwcmludGYgaWYgd2UgZG9uJ3QgbmVlZCBpdCwgdXNlIHByaW50IGluc3RlYWQuCisKKwkqIHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2Uuc2ggKHVzYWdlKTogRml4IHR5cG8KKwlzL2Rwa2ctZ2VuY2hhbmdzL2Rwa2ctZ2VuY2hhbmdlcy8KKworCSogc2NyaXB0cy9EcGtnLnBtOiBNYWtlIHRoZSByZWdleCBmb3IgZGV0ZXJtaW5pbmcKKwkkcHJvZ25hbWUgbW9yZSByb2J1c3QuCisKKwkqIHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2Uuc2g6IE1vdmUgdG8uLi4KKwkqIHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6IENvbnZlcnQgZnJvbQorCVNoZWxsIHRvIFBlcmwuCisJKiBzY3JpcHRzL01ha2VmaWxlLmFtOiBBZGFwdCB0byBtb3ZlLgorCSogc2NyaXB0cy9wby9QT1RGSUxFUy5pbjogQWRkIGRwa2ctYnVpbGRwYWNrYWdlLnBsLgorCisyMDA3LTA5LTE4ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBsaWIvbWxpYi5jIChjaGVja3N1YnByb2NlcnIpOiBXYXJuIGluc3RlYWQgb2YgZXJyb3Jpbmcgb3V0IGluIGNhc2UKKwlvZiByZWNlaXZpbmcgYSBzaWduYWwgYW5kIGhhdmluZyBiZWVuIGFza2VkIHRvIG9ubHkgd2Fybi4KKworMjAwNy0wOS0xOCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc3JjL3JlbW92ZS5jIChkZWZlcnJlZF9yZW1vdmUpOiBSZW1vdmUgZHVwbGljYXRlIG5lc3RlZCBjb25kaXRpb25hbCwKKwlhbmQgbW92ZSBpdHMgY29udGVudHMgdG8gdGhlIG91dGVyIG9uZS4KKworMjAwNy0wOS0xNCAgQnJpYW4gTS4gQ2FybHNvbiAgPHNhbmRhbHNAY3J1c3R5dG9vdGhwYXN0ZS5hdGguY3g+CisKKwkqIHNyYy9yZW1vdmUuYyAoZGVmZXJyZWRfcmVtb3ZlKTogU3RvcmUgdGhlIHByZXZpb3VzIHBhY2thZ2Ugc3RhdHVzCisJd2hlbiBjYWxsaW5nICc8cHJlcm0+IHJlbW92ZScgYW5kIHBhc3MgaXQgdG8gcHVzaF9jbGVhbnVwLgorCSogc3JjL2NsZWFudXAuYyAoY3VfcHJlcm1yZW1vdmUpOiBSZXN0b3JlIHByZXZpb3VzIHN0b3JlZCBzdGF0dXMgaWYKKwl0aGUgJzxwb3N0aW5zdD4gYWJvcnQtcmVtb3ZlJyBjYWxsIHN1Y2NlZWRzLgorCisyMDA3LTA5LTA4ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBtYW4vZHBrZy1zY2FucGFja2FnZXMuMTogRG9jdW1lbnQgdGhhdCBnemlwcGVkIGZpbGVzIGFyZSBhbHNvIHVzZWQKKwlieSBhcHQuCisKKzIwMDctMDktMDggIEEuIENvc3RhICA8YWdjb3N0YUBnaXMubmV0PgorCisJKiBtYW4vZHBrZy1kZWIuMTogRml4IHR5cG8gKCdzZXBlcmF0ZWQnIC0+ICdzZXBhcmF0ZWQnKS4KKwkqIG1hbi9zdGFydC1zdG9wLWRhZW1vbi44OiBGaXggdHlwbyAoJ3RoZW1zZWxmJyAtPiAndGhlbXNlbHZlcycpLgorCisyMDA3LTA5LTA4ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnNoOiBVc2UgZmFrZXJvb3QsIGlmIHByZXNlbnQsIGFzIGRlZmF1bHQKKwl2YWx1ZSBmb3IgdGhlICctcicgb3B0aW9uLgorCisyMDA3LTA5LTA2ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDogU3RvcCByZWNvZ25pemluZyB0aGUgb2Jzb2xldGUgT3B0aW9uYWwKKwlmaWVsZC4KKwkqIHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOiBMaWtld2lzZS4KKwkqIHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6IExpa2V3aXNlLgorCisyMDA3LTA5LTA2ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2Rwa2ctbmFtZS5zaDogQXZvaWQgZXNjYXBlZCBxdW90ZXMgbWVzc2luZyB3aXRoIHN5bnRheAorCWhpZ2hsaWdodGluZyBieSB1c2luZyAkKCkgaW5zdGVhZCBvZiBiYWNrdGlja3MuCisJKiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnNoOiBMaWtld2lzZS4KKworMjAwNy0wOS0wNiAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGwgKCRob3N0X2FyY2gpOiBEbyBub3QgZGVjbGFyZSBhcyAnb3VyJy4KKwkqIHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsICgkaG9zdF9hcmNoKTogTGlrZXdpc2UuCisKKzIwMDctMDktMDYgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsICglZmllbGRpbXBzKTogUmVtb3ZlIHVudXNlZCB2YXJpYWJsZS4KKwkqIHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsICglZmllbGRpbXBzKTogTGlrZXdpc2UuCisJKiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsICglZmllbGRpbXBzKTogTGlrZXdpc2UuCisJKiBzY3JpcHRzL2NvbnRyb2xsaWIucGwgKCVmaWVsZGltcHMpOiBTd2l0Y2ggZnJvbSAnb3VyJyB0byAnbXknLgorCisyMDA3LTA5LTA2ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBtYW4vZHBrZy1zY2FucGFja2FnZXMuMTogUmVwbGFjZSBnemlwIHdpdGggYnppcDIgYXMgdGhlIHJlcXVpcmVtZW50CisJZm9yIGNvbXByZXNzZWQgUGFja2FnZXMgZmlsZXMgZm9yIGFwdC4KKworMjAwNy0wOS0wNiAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy84MjItZGF0ZS5wbDogQWRkICRkcGtnbGliIGludG8gQElOQywgbmVlZGVkIGJ5IHRoZQorCWNvbnRyb2xsaWIucGwgcmVxdWlyZS4KKworMjAwNy0wOS0wNiAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogY29uZmlndXJlLmFjOiBCdW1wIHZlcnNpb24gdG8gMS4xNC43fi4KKworMjAwNy0wOS0wNSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogY29uZmlndXJlLmFjOiBSZWxlYXNlIDEuMTQuNi4KKworMjAwNy0wOS0wNSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6IFByb3Blcmx5IG92ZXJyaWRlIEhvbWVwYWdlIGZpZWxkIGZyb20KKwliaW5hcnkgcGFja2FnZSBzdGFuemFzLgorCisyMDA3LTA4LTMxICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBkcGtnLWRlYi9idWlsZC5jIChhcmJpdHJhcnlfZmllbGRzKTogQWRkIFRhZy4KKwkqIHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOiBJZ25vcmUgVGFnIGZpZWxkLgorCSogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6IFBhcnNlIFRhZyBmcm9tIGJpbmFyeSBwYWNrYWdlIHN0YW56YS4KKwkoQGNvbnRyb2xfZmllbGRzKTogQWRkIFRhZy4KKwkqIHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGwgKEBmaWVsZHByaSk6IEFkZCBUYWcuCisJKiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOiBJZ25vcmUgVGFnIGZpZWxkIGZyb20gYmluYXJ5IHBhY2thZ2Ugc3RhbnphLgorCSogbWFuL2RlYi1jb250cm9sLjU6IERvY3VtZW50IFRhZyBmaWVsZC4KKwkqIG1hbi9kcGtnLXF1ZXJ5LjE6IERvY3VtZW50IFRhZyBhcyBhIHJlY29nbml6ZWQgZmllbGQuCisKKzIwMDctMDgtMzEgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOiBJZ25vcmUgVmNzLUJyb3dzZXIsIFZjcy1BcmNoLCBWY3MtQnpyLAorCVZjcy1DdnMsIFZjcy1EYXJjcywgVmNzLUdpdCwgVmNzLUhnLCBWY3MtTXRuIGFuZCBWY3MtU3ZuIGZpZWxkcworCWZyb20gY29udHJvbCBmaWxlIHNvdXJjZSBzdGFuemEuCisJKiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDogTGlrZXdpc2UuCisJKiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOiBQYXJzZSB0aGVtIGluc3RlYWQuCisJKEBkc2NfZmllbGRzKTogQWRkIHRoZW0gaGVyZS4KKworMjAwNy0wOC0zMSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6IERvIG5vdCBsZWF2ZSB1bmtub3duIGZpZWxkcyB1bndhcm5lZAorCWFuZCBleHBsaWNpdGx5IGlnbm9yZSBhbGwga25vd24gb25lcyBmcm9tIGNvbnRyb2wgZmlsZSBzb3VyY2UKKwlwYWNrYWdlIHN0YW56YS4KKworMjAwNy0wOC0zMCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6IElnbm9yZSBYQi0gZmllbGRzIGluc3RlYWQgb2YgWEMtIGZpZWxkcworCWZyb20gY29udHJvbCBmaWxlIGJpbmFyeSBwYWNrYWdlIHN0YW56YXMuCisKKzIwMDctMDgtMjggIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvdXBkYXRlLWFsdGVybmF0aXZlcy5wbDogRml4IHJlZ3Jlc3Npb24gaW50cm9kdWNlZCBvbiBjb21taXQKKwlmcm9tIDIwMDctMDgtMDgsIHdoaWNoIHdhcyBwcm9kdWNpbmcgYSB3YXJuaW5nIGR1ZSB0byB1c2FnZSBvZgorCXVuaW5pdGlhbGl6ZWQgdmFyaWFibGVzLgorCisyMDA3LTA4LTI4ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDogQWRkIGNvbW1lbnRzIGFib3V0IHRoZSBzZWNvbmQgcGFzcworCXBhcnNpbmcgZm9yIGRlcGVuZGVuY3kgZmllbGRzLiBSZW1vdmUgaGFuZGxpbmcgb2YgdW5pbnRlcmVzdGluZyBmaWVsZHMKKwlpbiB0aGUgc2Vjb25kIHBhc3MgcGFyc2luZy4KKworMjAwNy0wOC0yNCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6IEFsbG93IGEgcGFja2FnZSBzdGFuemEgdG8gb3ZlcnJpZGUgdGhlCisJSG9tZXBhZ2UgZmllbGQgZnJvbSB0aGUgc291cmNlIHN0YW56YS4KKworMjAwNy0wOC0yMCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogZHBrZy1kZWIvYnVpbGQuYyAoYXJiaXRyYXJ5X2ZpZWxkcyk6IE5ldyB2YXJpYWJsZS4KKwkoa25vd25fYXJiaXRyYXJ5X2ZpZWxkKTogTmV3IGZ1bmN0aW9uLgorCShkb19idWlsZCk6IENhbGwga25vd25fYXJiaXRyYXJ5X2ZpZWxkIHRvIG5vdCB3YXJuIG9uIGtub3duIGFyYml0cmFyeQorCWZpZWxkcy4KKwkqIHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOiBJZ25vcmUgSG9tZXBhZ2UgZmllbGQuCisJKiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDogUGFyc2UgSG9tZXBhZ2UgZnJvbSBzb3VyY2UgcGFja2FnZQorCXN0YW56YS4KKwkoQGNvbnRyb2xfZmllbGRzKTogQWRkIEhvbWVwYWdlLgorCSogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbCAoQGZpZWxkcHJpKTogQWRkIEhvbWVwYWdlLgorCSogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDogUGFyc2UgSG9tZXBhZ2UgZnJvbSBzb3VyY2UgcGFja2FnZSBzdGFuemEuCisJKEBkc2NfZmllbGRzKTogQWRkIEhvbWVwYWdlLgorCSogbWFuL2RlYi1jb250cm9sLjU6IERvY3VtZW50IEhvbWVwYWdlIGZpZWxkLgorCSogbWFuL2Rwa2ctcXVlcnkuMTogRG9jdW1lbnQgSG9tZXBhZ2UgYXMgYSByZWNvZ25pemVkIGZpZWxkLgorCisyMDA3LTA4LTE4ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2Rwa2ctZGl2ZXJ0LnBsIChpbmZvbCk6IENoZWNrIGlmIHBhcmFtZXRlcnMgYXJlIGRlZmluZWQKKwliZWZvcmUgdXNpbmcgdGhlbS4gVXNlIGRlZmluZWQgaW5zdGVhZCBvZiBsZW5ndGggdG8gY2hlY2sgZm9yIHVuZGVmCisJdmFyaWFibGVzLgorCisyMDA3LTA4LTE0ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBsaWIvcGFyc2VoZWxwLmMgKHBhcnNlZXJyKTogU3dpdGNoIGZyb20gdGVybmFyeSBvcGVyYXRvciB0byBjb21wb3NlCisJYSBzdHJpbmcgdG8gYSBjb25kaXRpb25hbCBjYWxsIHRvIHRoZSBmdW5jdGlvbiB3aXRoIHR3byBkaWZmZXJlbnQKKwlzdHJpbmdzLCBtYWtpbmcgbGlmZSBlYXNpZXIgZm9yIHRyYW5zbGF0b3JzLgorCSogc3JjL2FyY2hpdmVzLmMgKHRhcm9iamVjdCk6IExpa2V3aXNlLgorCSogc3JjL3F1ZXJ5LmMgKHNlYXJjaG91dHB1dCk6IFN3aXRjaCBmcm9tIGEgbG9vcCB3aXRoIHR3byBpdGVyYXRpb25zCisJYW5kIHRlcm5hcnkgb3BlcmF0b3JzIHRvIGNvbXBvc2Ugc3RyaW5ncyB0byBhIGNvbmRpdGlvbmFsIHdpdGggdHdvCisJc2VxdWVudGlhbCBjYWxscyB3aXRoIGRpZmZlcmVudCBzdHJpbmdzLCBtYWtpbmcgbGlmZSBlYXNpZXIgZm9yCisJdHJhbnNsYXRvcnMuCisKKzIwMDctMDgtMTQgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGRwa2ctc3BsaXQvbWFpbi5jIChyZXJyKTogQWRqdXN0IHN0cmluZyBzbyB0aGF0IGl0IGdldHMgbWVyZ2VkIGJ5CisJZ2V0dGV4dCB3aXRoIGEgc2ltaWxhciBvbmUuCisKKzIwMDctMDgtMTQgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNyYy9hcmNoaXZlcy5jIChsaW5rdG9zYW1lZXhpc3RpbmdkaXIpOiBNYXJrIHN0cmluZ3MgZm9yIHRyYW5zbGF0aW9uLgorCisyMDA3LTA4LTExICBJYW4gSmFja3NvbiAgPGl3akB1YnVudHUuY29tPgorCisJKiBzcmMvYXJjaGl2ZXMuYyAobGlua3Rvc2FtZWV4aXN0aW5nZGlyKTogTmV3IGZ1bmN0aW9uLgorCSh0YXJvYmplY3QpOiBDYWxsIGxpbmt0b3NhbWVleGlzdGluZ2RpciBpZiB0aGUgdGFyYmFsbCBhbmQgdGhlIG9uLWRpc2sKKwlmaWxlcyBhcmUgc3ltbGlua3MgYW5kIGlnbm9yZSB0aGUgc3ltbGluayBpZiBpdCByZXR1cm5zIHRydWUuCisKKzIwMDctMDgtMDggIElhbiBKYWNrc29uICA8aXdqQHVidW50dS5jb20+CisKKwkqIHNjcmlwdHMvdXBkYXRlLWFsdGVybmF0aXZlcy5wbDogSW4gdGhlIGNhc2Ugd2hlcmUgdGhlIHNsYXZlIGlzCisJaW5hcHBsaWNhYmxlIGRvIG5vdCBhdHRlbXB0IHRvIGNyZWF0ZSB0aGUgc2xhdmUgbGluayBiZWZvcmUKKwlyZW1vdmluZyBpdCBhZ2Fpbi4KKworMjAwNy0wOC0wOCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc3JjL2NvbmZpZ3VyZS5jIChkZWZlcnJlZF9jb25maWd1cmUpOiBEbyBub3QgcHJpbnQgYSBuZXcgbGluZQorCWlmIG1haW50YWluZXJfc2NyaXB0X2luc3RhbGxlZCByZXR1cm5lZCB0cnVlLgorCisyMDA3LTA4LTA4ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBkcGtnLWRlYi9idWlsZC5jIChkb19idWlsZCk6IFVzZSBOVUxMIGluc3RlYWQgb2YgJyhjaGFyICopMCcuCisJKiBkcGtnLWRlYi9leHRyYWN0LmMgKG1vdmVjb250cm9sZmlsZXMsIGV4dHJhY3RoYWxmKTogTGlrZXdpc2UuCisJKiBkcGtnLWRlYi9pbmZvLmMgKGN1X2luZm9fcHJlcGFyZSwgaW5mb19wcmVwYXJlKTogTGlrZXdpc2UuCisJKiBzcmMvY2xlYW51cC5jIChjdV9wcmVybXVwZ3JhZGUsIGN1X3ByZXJtZGVjb25maWd1cmUpCisJKGN1X3ByZXJtaW5mYXZvdXIsIGN1X3ByZWluc3R2ZXJ5bmV3LCBjdV9wcmVpbnN0bmV3KQorCShjdV9wcmVpbnN0dXBncmFkZSwgY3VfcG9zdHJtdXBncmFkZSwgY3VfcHJlcm1yZW1vdmUpOiBMaWtld2lzZS4KKwkqIHNyYy9jb25maWd1cmUuYyAoZGVmZXJyZWRfY29uZmlndXJlLCBzdXNwZW5kKTogTGlrZXdpc2UuCisJKiBzcmMvaGVscC5jIChtYWludGFpbmVyX3NjcmlwdF9hbHRlcm5hdGl2ZSkKKwkoZW5zdXJlX3BhdGhuYW1lX25vbmV4aXN0aW5nKTogTGlrZXdpc2UuCisJKiBzcmMvcHJvY2Vzc2FyYy5jIChwcm9jZXNzX2FyY2hpdmUpOiBMaWtld2lzZS4KKwkqIHNyYy9yZW1vdmUuYyAoZGVmZXJyZWRfcmVtb3ZlLCByZW1vdmFsX2J1bGtfcmVtb3ZlX2ZpbGVzKQorCShyZW1vdmFsX2J1bGtfcmVtb3ZlX2NvbmZpZ2ZpbGVzKTogTGlrZXdpc2UuCisKKzIwMDctMDgtMDggIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNyYy9jbGVhbnVwLmMgKGN1X3ByZXJtZGVjb25maWd1cmUpOiBTcGxpdCBjYWxsIHRvCisJbWFpbnRhaW5lcl9zY3JpcHRfaW5zdGFsbGVkIGRlcGVuZGluZyBvbiB0aGUgY29uZmxpY3RvciB2YXJpYWJsZS4KKwkqIHNyYy9wYWNrYWdlcy5jIChkZXBlbmRlbmNpZXNfb2spOiBSZW1vdmUgY29tbWVudCBzdGF0aW5nIHRoYXQKKwlCcmVha3MgbmVlZHMgdG8gYmUgaW1wbGVtZW50ZWQuCisJKiBzcmMvZGVwY29uLmMgKGRlcGlzb2spOiBMaWtld2lzZS4gUmVtb3ZlIHJldHVybiBhdCB0aGUgYmVnaW5uaW5nCisJb2YgdGhlIGZ1bmN0aW9uIGNoZWNraW5nIGZvciBhIEJyZWFrcyBkZXBlbmRlbmN5LCB0aGF0IHdhcworCWVmZWN0aXZlbHkgbWFraW5nIGl0IGEgbm8tb3AgaW4gdGhhdCBjYXNlLgorCSogc3JjL3Byb2Nlc3NhcmMuYyAocHJvY2Vzc19hcmNoaXZlKTogRml4IGluZGVudGF0aW9uLiBTcGxpdCBjYWxscworCWluIGRlY29uZmlndXJlIGNvZGUgdG8gcHJpbnRmIGFuZCBtYWludGFpbmVyX3NjcmlwdF9pbnN0YWxsZWQKKwlkZXBlbmRpbmcgb24gdGhlIHJlbW92aW5nIHZhcmlhYmxlLgorCisyMDA3LTA4LTA3ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzcmMvcXVlcnkuYyAobGlzdHBhY2thZ2VzKTogSW5zdGVhZCBvZiBhbGxvY2F0aW5nIGFuIGFkZGl0aW9uYWwKKwlwYWNrYWdlcyBhcnJheSB3aXRoIHJvb20gZm9yIHRoZSB0aGUgY3VycmVudCBhbW91bnQgb2YgcGFja2FnZXMsCisJc29ydCB0aGUgZXhpc3Rpbmcgb25lLCBhbmQgcHJpbnQgdGhlIHBhY2thZ2VzIG1hdGNoaW5nIHRoZSBwYXR0ZXJuLAorCXdoaWNoIGZpeGVzIHNlZ2ZhdWx0cyB3aGVuIHRoZSByZXN1bHRpbmcgYXJyYXkgd2FzIGJpZ2dlciB0aGFuIHRoZQorCWN1cnJlbnQgYW1vdW50IG9mIHBhY2thZ2VzLgorCShzaG93cGFja2FnZXMpOiBGb3IgZWFjaCBwYWNrYWdlIHNob3cgaXQgb25seSBvbmNlIGl0IG1hdGNoZXMgYW55CisJb2YgdGhlIHBhdHRlcm5zLCBzbyB3ZSBhdm9pZCBkdXBsaWNhdGVkIHJlc3VsdHMuCisKKzIwMDctMDgtMDcgIElhbiBKYWNrc29uICA8aXdqQHVidW50dS5jb20+CisKKwkqIG1hbi9kZWItY29udHJvbC41OiBEb2N1bWVudCBCcmVha3MgZmllbGQuCisJKiBtYW4vZHBrZy1xdWVyeS4xOiBEb2N1bWVudCBCcmVha3MgYXMgYSByZWNvZ25pemVkIGZpZWxkLgorCSogbWFuL2Rwa2cuMTogQWRkIGRlc2NyaXB0aW9uIG9mICctLWZvcmNlLWJyZWFrcycuCisJKiBzY3JpcHRzL2NvbnRyb2xsaWIucGwgKEBwa2dfZGVwX2ZpZWxkcyk6IEFkZCAnQnJlYWtzJy4KKwkqIHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOiBJZ25vcmUgQnJlYWtzIGZpZWxkLgorCSogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDogTGlrZXdpc2UuCisJKiBzcmMvYXJjaGl2ZXMuYyAodHJ5X3JlbW92ZV9jYW4pOiBSZW5hbWUgdG8gLi4uCisJKHRyeV9kZWNvbmZpZ3VyZV9jYW4pOiAuLi4gdGhpcy4gR2VuZXJhbGl6ZSBkZXBlbmRlbmN5IGZvcmNlIGNoZWNrCisJYnkgdGFraW5nIGEgZnVuY3Rpb24gYXMgYXJndW1lbnQuIFN0b3JlIHRoZSBwb3NzaWJsZSBwYWNrYWdlIHJlbW92YWwKKwl3aGljaCBjYXVzZWQgdGhlIGRlY29uZmlndXJhdGlvbiBpbiB0aGUgeGluZm8gbWVtYmVyIG9mIHRoZSBwYWNrYWdlCisJdG8gYmUgZGVjb25maWd1cmVkLgorCSh0cnlfcmVtb3ZlX2Nhbik6IE5ldyBmdW5jdGlvbi4KKwkoY2hlY2tfYnJlYWtzKTogTGlrZXdpc2UuCisJKiBzcmMvYXJjaGl2ZXMuaCAoY2hlY2tfYnJlYWtzKTogTmV3IHByb3RvdHlwZS4KKwkqIHNyYy9jbGVhbnVwLmMgKGN1X3ByZXJtZGVjb25maWd1cmUpOiBIYW5kbGUgY2FzZSB3aGVuIGFyZ3ZbMV0KKwltaWdodCBiZSAwLCBpZiBkZWNvbmZpZ3VyZSB3YXMgZHVlIHRvIEJyZWFrcy4KKwkqIHNyYy9jb25maWd1cmUuYyAoZGVmZXJyZWRfY29uZmlndXJlKTogQ2FsbCBicmVha3Nlc19vay4KKwkqIHNyYy9kZXBjb24uYyAoZGVwaXNvayk6IEFkZCBCcmVha3Mgc3VwcG9ydC4KKwkqIHNyYy9oZWxwLmMgKGZvcmNlX2JyZWFrcyk6IE5ldyBmdW5jdGlvbi4KKwkqIHNyYy9tYWluLmMgKGZjX2JyZWFrcyk6IE5ldyB2YXJpYWJsZS4KKwkoZm9yY2VpbmZvKTogQWRkICdicmVha3MnIGFzIGEgc3VwcG9ydGVkIG9wdGlvbiBmb3IgJy0tZm9yY2UtLi4uJy4KKwkqIHNyYy9tYWluLmggKHN0cnVjdCBwZXJwYWNrYWdlc3RhdGUpOiBBZGQgeGluZm8gbWVtYmVyLgorCShmY19icmVha3MpOiBOZXcgdmFyaWFibGUgZGVmaW5pdGlvbi4KKwkoYnJlYWtzZXNfb2spOiBOZXcgcHJvdG90eXBlLgorCShmb3JjZV9kZXBlbmRzKTogTGlrZXdpc2UuCisJKiBzcmMvcGFja2FnZXMuYyAoYnJlYWtzX2NoZWNrX29uZSk6IE5ldyBmdW5jdGlvbi4KKwkoYnJlYWtzX2NoZWNrX3RhcmdldCk6IExpa2V3aXNlLgorCShicmVha3Nlc19vayk6IExpa2V3aXNlLgorCSogc3JjL3Byb2Nlc3NhcmMuYyAocHJvY2Vzc19hcmNoaXZlKTogQ2hlY2sgZm9yIEJyZWFrcyBkZXBlbmRlbmNpZXMsCisJaW5zdGVhZCBvZiBiYWlsaW5nIG91dCBpZiBmaWVsZCBmb3VuZC4gRGlzdGluZ3Vpc2ggYmV0d2VlbiBkZWNvbmZpZ3VyZQorCWR1ZSB0byBhIHJlbW92YWwgZHVlIHRvIENvbmZsaWN0cyBvciBEZXBlbmRzLCBhbmQgZGVjb25maWd1cmUgZHVlIHRvCisJYW4gaW5zdGFsbGF0aW9uIGR1ZSB0byBCcmVha3MuIFJ1biB0aGUgZGVjb25maWd1cmF0aW9uIG9mIGVhY2gKKwlwYWNrYWdlIHRvIGJlIGRlY29uZmlndXJlZCBvbmNlLCBpbnN0ZWFkIG9mIG9uY2UgcGVyIGVhY2ggY29uZmxpY3RpbmcKKwlwYWNrYWdlIGJlaW5nIHJlbW92ZWQuCisKKzIwMDctMDctMzEgIElhbiBKYWNrc29uICA8aXdqQHVidW50dS5jb20+CisKKwkqIHNyYy9hcmNoaXZlcy5jIChxdW90ZV9maWxlbmFtZSk6IENoYW5nZSBmb3JtYXR0aW5nIHRvIG1hdGNoIHRoZQorCXJlc3Qgb2YgdGhlIGZpbGUgKHRhYiAtPiAyIHNwYWNlcykuCisKKzIwMDctMDctMjUgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvY2hhbmdlbG9nL2RlYmlhbi5wbDogU3dpdGNoIGZyb20gJ2Rwa2ctZ2V0dGV4dC5wbCcgdG8KKwlEcGtnOjpHZXR0ZXh0LgorCisyMDA3LTA3LTIyICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2Rwa2ctZ2V0dGV4dC5wbDogTW92ZSAuLi4KKwkqIHNjcmlwdHMvRHBrZy9HZXR0ZXh0LnBtOiAuLi4gaGVyZS4gQWRkIGEgcGFja2FnZSBzdGF0ZW1lbnQuCisJRml4IGFsbCB1c2Vycy4KKwkqIHNjcmlwdHMvTWFrZWZpbGUuYW0gKGRpc3RfcGtnbGliX1NDUklQVFMpOiBSZW1vdmUgJ2Rwa2ctZ2V0dGV4dC5wbCcuCisJKG5vYmFzZV9kaXN0X3BlcmxsaWJfREFUQSk6IEFkZCAnRHBrZy9HZXR0ZXh0LnBtJy4KKworCSogc2NyaXB0cy84MjItZGF0ZS5wbDogRG8gbm90IHB1c2ggJGRwa2dsaWJkaXIgaW50byBASU5DIGFueW1vcmUuCisJKiBzY3JpcHRzL2NsZWFudXAtaW5mby5wbDogTGlrZXdpc2UuCisJKiBzY3JpcHRzL2NvbnRyb2xsaWIucGw6IExpa2V3aXNlLgorCSogc2NyaXB0cy9kcGtnLWRpdmVydC5wbDogTGlrZXdpc2UuCisJKiBzY3JpcHRzL2Rwa2ctc2NhbnNvdXJjZXMucGw6IExpa2V3aXNlLgorCSogc2NyaXB0cy9kcGtnLXN0YXRvdmVycmlkZS5wbDogTGlrZXdpc2UuCisJKiBzY3JpcHRzL2luc3RhbGwtaW5mby5wbDogTGlrZXdpc2UuCisJKiBzY3JpcHRzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMucGw6IExpa2V3aXNlLgorCisyMDA3LTA3LTIyICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2NsZWFudXAtaW5mby5wbDogVXNlIG5ldyBEcGtnIG1vZHVsZSwgYW5kIHJlbW92ZSB2YXJpYWJsZQorCWRlY2xhcmF0aW9ucyBhbHJlYWR5IHByZXNlbnQgaW4gdGhlIG1vZHVsZS4KKwkqIHNjcmlwdHMvY29udHJvbGxpYi5wbDogTGlrZXdpc2UuCisJKiBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLnBsOiBMaWtld2lzZS4KKwkqIHNjcmlwdHMvZHBrZy1jaGVja2J1aWxkZGVwcy5wbDogTGlrZXdpc2UuCisJKiBzY3JpcHRzL2Rwa2ctZGlzdGFkZGZpbGUucGw6IExpa2V3aXNlLgorCSogc2NyaXB0cy9kcGtnLWRpdmVydC5wbDogTGlrZXdpc2UuCisJKiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDogTGlrZXdpc2UuCisJKiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDogTGlrZXdpc2UuCisJKiBzY3JpcHRzL2Rwa2ctcGFyc2VjaGFuZ2Vsb2cucGw6IExpa2V3aXNlLgorCSogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDogTGlrZXdpc2UuCisJKiBzY3JpcHRzL2Rwa2ctc2NhbnNvdXJjZXMucGw6IExpa2V3aXNlLgorCSogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDogTGlrZXdpc2UuCisJKiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOiBMaWtld2lzZS4KKwkqIHNjcmlwdHMvZHBrZy1zdGF0b3ZlcnJpZGUucGw6IExpa2V3aXNlLgorCSogc2NyaXB0cy9pbnN0YWxsLWluZm8ucGw6IExpa2V3aXNlLgorCSogc2NyaXB0cy91cGRhdGUtYWx0ZXJuYXRpdmVzLnBsOiBMaWtld2lzZS4KKwkqIHNjcmlwdHMvODIyLWRhdGUucGw6IExpa2V3aXNlLgorCSogY2hhbmdlbG9nL2RlYmlhbi5wbDogTGlrZXdpc2UuCisKKwkqIHNjcmlwdHMvY29udHJvbGxpYi5wbCAoaW5pdF9zdWJzdHZhcnMpOiBSZW1vdmUgY29tbWVudCBhYm91dAorCSR2ZXJzaW9uIG5lZWRpbmcgdG8gYmUgYSBnbG9iYWwgdmFyaWFibGUgc2V0IGVsc2V3aGVyZS4KKworCSogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDogUmVtb3ZlICQwIG1hbmdsaW5nLgorCSh2ZXJzaW9uLCB1c2FnZSk6IFVzZSAkcHJvZ25hbWUgaW5zdGVhZCBvZiAkMC4KKwkqIHNjcmlwdHMvZHBrZy1zdGF0b3ZlcnJpZGUucGw6IExpa2V3aXNlLgorCSogc2NyaXB0cy9pbnN0YWxsLWluZm8ucGw6IExpa2V3aXNlLgorCSogc2NyaXB0cy9kcGtnLWRpdmVydC5wbDogTGlrZXdpc2UuCisJKHF1aXQsIGJhZHVzYWdlKTogVXNlICRwcm9nbmFtZSBpbnN0ZWFkIG9mICQwLgorCSogc2NyaXB0cy91cGRhdGUtYWx0ZXJuYXRpdmVzLnBsOiBMaWtld2lzZS4KKwkqIHNjcmlwdHMvZHBrZy1zY2Fuc291cmNlcy5wbCAoJE1lKTogUmVtb3ZlIGRlY2xhcmF0aW9uLgorCSh4d2FybmRpZV9tZXNzLCB2ZXJzaW9uLCB1c2FnZSk6IFVzZSAkcHJvZ25hbWUgaW5zdGVhZCBvZiAkTWUuCisKKzIwMDctMDctMjEgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIG00L3BlcmwubTQgKERQS0dfUFJPR19QRVJMKTogQWRkIHN1cHBvcnQgZm9yIHVzZXIgb3ZlcnJpZGFibGUKKwlQRVJMX0xJQkRJUiB2YXJpYWJsZSwgYXV0b2RldGVjdGVkIGZyb20gdGhlIHN5c3RlbSBpbnN0YWxsYXRpb24uCisJKiBzY3JpcHRzL01ha2VmaWxlLmFtIChwZXJsbGliZGlyKTogTmV3IHZhcmlhYmxlLgorCShub2Jhc2VfZGlzdF9wZXJsbGliX0RBVEEpOiBMaWtld2lzZS4KKwkoaW5zdGFsbC1kYXRhLWhvb2spOiBOZXcgdGFyZ2V0LgorCSogc2NyaXB0cy9EcGtnLnBtOiBOZXcgZmlsZS4KKworMjAwNy0wNy0xOCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogbWFuL2NsZWFudXAtaW5mby44OiBVbmlmeSBhdXRob3IgYW5kIGNvcHlyaWdodCBpbmZvcm1hdGlvbgorCWZvcm1hdHRpbmcuCisJKiBtYW4vZGViLXN1YnN0dmFycy41OiBMaWtld2lzZS4KKwkqIG1hbi9kcGtnLWNoZWNrYnVpbGRkZXBzLjE6IExpa2V3aXNlLgorCSogbWFuL2Rwa2ctZGViLjE6IExpa2V3aXNlLgorCSogbWFuL2Rwa2ctZGl2ZXJ0Ljg6IExpa2V3aXNlLgorCSogbWFuL2Rwa2ctbmFtZS4xOiBMaWtld2lzZS4KKwkqIG1hbi9kcGtnLXF1ZXJ5LjE6IExpa2V3aXNlLgorCSogbWFuL2Rwa2ctc3BsaXQuMTogTGlrZXdpc2UuCisJKiBtYW4vZHBrZy1zdGF0b3ZlcnJpZGUuODogTGlrZXdpc2UuCisJKiBtYW4vaW5zdGFsbC1pbmZvLjg6IExpa2V3aXNlLgorCSogbWFuL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuODogTGlrZXdpc2UuCisKKzIwMDctMDctMTggIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIG1hbi9kcGtnLjE6IFNwbGl0IGluZGVwZW5kZW50IG9wdGlvbnMuCisJKiBtYW4vZHBrZy1idWlsZHBhY2thZ2UuMTogTGlrZXdpc2UuCisJKiBtYW4vZHBrZy1nZW5jaGFuZ2VzLjE6IExpa2V3aXNlLgorCSogbWFuL2Rwa2ctc291cmNlLjE6IExpa2V3aXNlLgorCisyMDA3LTA3LTE4ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBtYW4vZHBrZy1idWlsZHBhY2thZ2UuMTogUmVtb3ZlICcsIGFuZCcgbGVmdG92ZXIgZnJvbSBtYW4gcGFnZSBzcGxpdC4KKwlTdWJzdGl0dXRlICdGSUxFUycgd2l0aCAnU0VFIEFMU08nLgorCisyMDA3LTA3LTE4ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBtYW4vZHBrZy1kZWIuMTogUmVtb3ZlIHNwYWNlIGJlZm9yZSBlbGxpcHNpcyBpbiBwYXJhbWV0ZXJzLgorCSogbWFuL2Rwa2ctcXVlcnkuMTogTGlrZXdpc2UuCisJKiBtYW4vdXBkYXRlLWFsdGVybmF0aXZlcy44OiBMaWtld2lzZS4KKwkqIG1hbi9kcGtnLjE6IExpa2V3aXNlLiBVc2UgY29tbWFzIGluc3RlYWQgaWYgcGlwZXMgdG8gc2VwYXJhdGUKKwlhbHRlcm5hdGl2ZSBvcHRpb25zLiBSZW1vdmUgcmVkdW5kYW50IHByZWNlZGluZyAnZHBrZycgZnJvbSBvcHRpb25zLgorCisyMDA3LTA3LTE4ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBtYW4vZHBrZy4xOiBGaXggaXRhbGljcyBhbmQgYm9sZCB1c2FnZS4KKwkqIG1hbi9kcGtnLWRpdmVydC44OiBMaWtld2lzZS4KKwkqIG1hbi9kcGtnLWJ1aWxkcGFja2FnZS4xOiBMaWtld2lzZS4KKworMjAwNy0wNy0xMCAgRnJhbmsgTGljaHRlbmhlbGQgIDxkanBpZ0BkZWJpYW4ub3JnPgorCisJKiBtYW4vZHBrZy4xLCBtYW4vZHBrZy1xdWVyeS4xLCBtYW4vZHBrZy1kZWIuMTogU3luY2hyb25pc2UgdXNhZ2UKKwlpbmZvcm1hdGlvbiBiZXR3ZWVuIHRoZXNlIHRocmVlIG1hbiBwYWdlcy4gQWxzbyBmaXggc29tZSBmb3JtYXR0aW5nCisJb2RkaXRpZXMgYW5kIHNtYWxsIG1pc3Rha2VzLgorCisyMDA3LTA3LTA0ICBGcmFuayBMaWNodGVuaGVsZCAgPGRqcGlnQGRlYmlhbi5vcmc+CisKKwkqIG1hbi9NYWtlZmlsZS5hbSAodW5pbnN0YWxsLWxvY2FsKTogTmV3IHRhcmdldCB0byByZW1vdmUgdGhlCisJdHJhbnNsYXRlZCBtYW4gcGFnZXMuIERldGVjdGVkIHdpdGggdGhlIGhlbHAgb2YgJ21ha2UgZGlzdGNoZWNrJy4KKworMjAwNy0wNy0wMyAgRnJhbmsgTGljaHRlbmhlbGQgIDxkanBpZ0BkZWJpYW4ub3JnPgorCisJKiBjb25maWd1cmUuYWM6IEJ1bXAgdmVyc2lvbiB0byAxLjE0LjZ+LgorCisJKiBjb25maWd1cmUuYWM6IFJlbGVhc2UgMS4xNC41LgorCisyMDA3LTA3LTAyICBGcmFuayBMaWNodGVuaGVsZCAgPGRqcGlnQGRlYmlhbi5vcmc+CisKKwkqIENPUFlJTkc6IFVwZGF0ZSB0byBjdXJyZW50IHZlcnNpb24gb2YgR1BMIHYyCisJdGV4dC4gVXBkYXRlcyBGU0YgYWRkcmVzcyBhbmQgTEdQTCBuYW1lLgorCisyMDA3LTA3LTAxICBGcmFuayBMaWNodGVuaGVsZCAgPGRqcGlnQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6IFdhcm4gdGhhdCBuZXdseSBjcmVhdGVkIGVtcHR5IGZpbGVzIGFyZQorCW5vdCBjdXJyZW50bHkgcmVwcmVzZW50ZWQgaW4gdGhlIGRpZmYuCisKKzIwMDctMDctMDEgIElhbiBKYWNrc29uICA8aWFuQGRhdmVuYW50LmdyZWVuZW5kLm9yZy51az4KKworCSogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDogRG9uJ3QgcmVtb3ZlIHNldGdpZCBiaXRzCisJb24gZGlyZWN0b3JpZXMgd2hlbiBleHRyYWN0aW5nIHRoZSAub3JpZyB0YXJiYWxsCisJc2luY2UgdGhlIHVzZXIgbWlnaHQgcHJlZmVyIHRvIGhhdmUgdGhlbS4gQWxzbyBkb24ndAorCW1hbnVhbGx5IG92ZXJyaWRlIHVzZXIgYW5kIGdyb3VwIGZvciBleHRyYWN0ZWQKKwlkaXJlY3Rvcmllcy4gSW5zdGVhZCB3ZSB3aWxsIHRha2UgdGFyIHRha2Ugb2YgbW9zdAorCW9mIHRoYXQuCisJKGV4dHJhY3R0YXIpOiBFeHBsaWNldGx5IHNwZWNpZnkgLS1uby1zYW1lLW93bmVyCisJYW5kIC0tbm8tc2FtZS1wZXJtaXNzaW9ucy4gVGhleSBhcmUgZGVmYXVsdCBhbnl3YXkKKwlmb3Igbm9uLXJvb3QgdXNlcnMsIGJ1dCBubyBuZWVkIHRvIGhhbmRsZSB0aGUgc291cmNlCisJZGlmZmVyZW50bHkgKGkuZS4gbW9yZSBjYXJlbGVzc2x5KSBpZiB3b3JraW5nIGFzIHJvb3QuCisJU2luY2UgdGFyIHN0aWxsIGluc2lzdHMgb24gaG9ub3JpbmcgdGhlIGZpbGUgcGVybWlzc2lvbnMgaW4gdGhlCisJdGFyIGJhbGwsIGZpeCB0aGVtIHVwIHNvIHRoYXQgdGhleSBtYXRjaCB3aGF0IHRoZSB1c2VyIHdvdWxkCisJZXhwZWN0IGFjY29yZGluZyB0byBoaXMgdW1hc2suCisKKzIwMDctMDYtMTMgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIG1hbi9kcGtnLXNvdXJjZS4xOiBSZW1vdmUgc2VjdGlvbiBkZXNjcmliaW5nIGZldyBkcGtnLWduY29udHJvbAorCW9wdGlvbnMuCisKKzIwMDctMDYtMTIgIEppxZnDrSBQYWxlxI1layAgPGpwYWxlY2VrQHdlYi5kZT4KKworCSogZHBrZy1zaGxpYmRlcHMucGw6IFN1cHBvcnQgY29sb24gc2VwYXJhdGVkIGxpc3Qgb2YgcGF0aHMgaW4gdGhlCisJRUxGIFJQQVRIIGZpZWxkLgorCisyMDA3LTA2LTEyICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBtYW4vZHBrZy1zb3VyY2UuMTogRml4IGV4cGxhbmF0aW9uIG9mICctYicgb3B0aW9uLCByZW1vdmUgYQorCXJlZmVyZW5jZSB0byBjaGVja2luZyBmb3IgYSBtaXNzaW5nIGVtcHR5IHN0cmluZyBhcmd1bWVudCwgYW5kIGFkZCBhCisJcmVmZXJlbmNlIHRvICctc1gnIGFyZ3VtZW50cyBhZmZlY3RpbmcgdGhlIGJlaGF2aW91ci4KKwkqIG1hbi9pbnN0YWxsLWluZm8uODogUmVtb3ZlIGFuIGFkZGl0aW9uYWwgc3BhY2UuIE1hcmsgZ3ppcCBpbiBib2xkCisJYW5kIHJlbW92ZSByZWR1bmRhbnQgcmVmZXJlbmNlIHRvIEdOVS4KKworMjAwNy0wNi0xMiAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogbWFuL2RlYi1zdWJzdHZhcnMuNTogVW5pZnkgdGl0bGUgaGVhZGVyLgorCSogbWFuL2Rwa2cuMTogTGlrZXdpc2UuCisJKiBtYW4vZHBrZy1idWlsZHBhY2thZ2UuMTogTGlrZXdpc2UuCisJKiBtYW4vZHBrZy1jaGVja2J1aWxkZGVwcy4xOiBMaWtld2lzZS4KKwkqIG1hbi9kcGtnLWRlYi4xOiBMaWtld2lzZS4KKwkqIG1hbi9kcGtnLWRpdmVydC44OiBMaWtld2lzZS4KKwkqIG1hbi9kcGtnLXNjYW5wYWNrYWdlcy4xOiBMaWtld2lzZS4KKwkqIG1hbi9kcGtnLXNjYW5zb3VyY2VzLjE6IExpa2V3aXNlLgorCSogbWFuL2Rwa2ctc2hsaWJkZXBzLjE6IExpa2V3aXNlLgorCSogbWFuL2Rwa2ctc291cmNlLjE6IExpa2V3aXNlLgorCSogbWFuL2Rwa2ctc3RhdG92ZXJyaWRlLjg6IExpa2V3aXNlLgorCSogbWFuL2luc3RhbGwtaW5mby44OiBMaWtld2lzZS4KKwkqIG1hbi91cGRhdGUtYWx0ZXJuYXRpdmVzLjg6IExpa2V3aXNlLgorCisyMDA3LTA2LTEyICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBtYW4vZHBrZy1kaXZlcnQuODogTWFyayBkcGtnLSogY29tbWFuZHMgaW4gYm9sZC4KKwkqIG1hbi9kcGtnLWJ1aWxkcGFja2FnZS4xOiBMaWtld2lzZS4KKwkqIG1hbi9kcGtnLXNvdXJjZS4xOiBMaWtld2lzZS4KKwkqIG1hbi9kcGtnLXN0YXRvdmVycmlkZS44OiBMaWtld2lzZS4KKworMjAwNy0wNi0xMiAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogbWFuL2Rwa2ctc291cmNlLjE6IFJlZmVyZW5jZSBkZWItc3Vic3R2YXJzIGluc3RlYWQgb2YgZHBrZy1zdWJzdHZhcnMuCisJKiBtYW4vZHBrZy1nZW5jaGFuZ2VzLjE6IExpa2V3aXNlLgorCSogbWFuL2Rwa2ctZ2VuY29udHJvbC4xOiBMaWtld2lzZS4KKworMjAwNy0wNi0xMiAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDogTW92ZSBjaGVjayBmb3IgZXhpc3RlbmNlIG9mICRvdmVycmlkZQorCW91dHNpZGUgbG9hZF9vdmVycmlkZS4gTW92ZSBsb2FkX292ZXJyaWRlIGFmdGVyIGhhdmluZyBmaWxsZWQgdGhlCisJJXBhY2thZ2VzIGluZm9ybWF0aW9uLgorCShsb2FkX292ZXJyaWRlKTogQXNzdW1lICRvdmVycmlkZSBpcyBhbHdheXMgZGVmaW5lZC4KKworMjAwNy0wNi0wNiAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbCAoJGRpZmZfaWdub3JlX2RlZmF1bHRfcmVnZXhwKTogQWRkICcuc2hlbGYnLgorCisyMDA3LTA2LTA2ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsICglYXJjaGFkZGVkKTogTW92ZSB0byBhbiBvdXRlciBzY29wZSB0bworCWF2b2lkIGR1cGVkIGVudHJpZXMgaW4gdGhlIG91dHB1dCBBcmNoaXRlY3R1cmUgZmllbGQuCisKKzIwMDctMDUtMjQgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIG9zdGFibGU6IEFkZCBnbnVscC1saW51eC4KKwkqIHRyaXBsZXR0YWJsZTogQWRkIGdudWxwLWxpbnV4LWkzODYgdG8gbHBpYSBtYXBwaW5nLgorCisyMDA3LTA1LTI0ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBjb25maWd1cmUuYWM6IEJ1bXAgdmVyc2lvbiB0byAxLjE0LjV+LgorCisyMDA3LTA1LTI0ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBjb25maWd1cmUuYWM6IFJlbGVhc2UgMS4xNC40LgorCisyMDA3LTA1LTI0ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2NvbnRyb2xsaWIucGwgKGRlYmFyY2hfdG9fZGVidHJpcGxldCk6IE1hdGNoIGV4YWN0bHkgJ2FueScKKwlvciAnYWxsJywgcmVjb2duaXplIGFnYWluICdsaW51eC08YXJjaD4nLCBhbmQgZG8gbm90IGFjY2VwdCB1bmtub3duCisJZGVidHJpcGxldHMuCisJKGRlYndpbGRjYXJkX3RvX2RlYnRyaXBsZXQpOiBOZXcgZnVuY3Rpb24uCisJKGRlYmFyY2hfaXMpOiBVc2UgZGVid2lsZGNhcmRfdG9fZGVidHJpcGxldCBmb3IgdGhlIHdpbGRjYXJkCisJcGFyYW1ldGVyLgorCisyMDA3LTA1LTIzICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJUmV2ZXJ0IGNvbW1pdCBvbiAyMDA3LTA0LTI4IGJ5IEFhcm9uIE0uIFVja28gPHVja29AZGViaWFuLm9yZz4uCisKKwkqIHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6IFRyaW0gZG93biBkdXBsaWNhdGVkIGZpbGVzIGZyb20gQGxpYmZpbGVzCisJb25seSB3aGVuIHBhc3NpbmcgaXQgdG8gZHBrZy1xdWVyeSBpbnN0ZWFkLgorCisyMDA3LTA1LTIzICBLeWxhbiBSb2JpbnNvbiAgPEt5bGFuX1JvYmluc29uQHNlbGluYy5jb20+CisKKwkqIHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6IEZpeCByZWdleCAoL1wuZGViaWFuLnRhci8gLT4KKwkvXC5kZWJpYW5cLnRhci8pLgorCisyMDA3LTA1LTIzICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsICgkY29weV9yZXF1aXJlZCk6IE5ldyB2YXJpYWJsZS4KKwkoJGR1bXB0YXJkZXYsICRkdW1wdGFyaW5vKTogTW92ZSBkZWNsYXJhdGlvbiBpbnNpZGUgdGhlIGJsb2NrIGlzc3VlcworCXRoZSBzdGF0IGNhbGwsIGFuZCBvbmx5IGNvbXBhcmUgdGhlbSBhZ2FpbnN0ICRkc2N0YXJkZXYgYW5kICRkc2N0YXJpbm8KKwlpZiB0aGUgc3RhdCBzdWNjZWVkZWQuCisKKzIwMDctMDUtMjEgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvZHBrZy1zdGF0b3ZlcnJpZGUucGwgKCRwYXQpOiBSZW5hbWUgdG8gLi4uCisJKCRwYXR0ZXJuKTogLi4uIHRoaXMuIEZpeGVzICRwYXR0ZXJuIGJlaW5nIGFuIHVudXNlZCB2YXJpYWJsZS4KKwkoJGZpbGUpOiBNb3ZlIHRoZSBkZWNsYXJhdGlvbiB0byBpdHMgZmlyc3QgdXNhZ2UgaW4gdGhlIGZvciBsb29wLgorCisyMDA3LTA1LTE1ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBjb25maWd1cmUuYWM6IEJ1bXAgdmVyc2lvbiB0byAxLjE0LjR+LgorCisyMDA3LTA1LTE1ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBjb25maWd1cmUuYWM6IFJlbGVhc2UgMS4xNC4zLgorCisyMDA3LTA1LTE1ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2Rwa2ctZGl2ZXJ0LnBsIChjaGVja21hbnltb2Rlcyk6IENoYW5nZSB0aGUgZXJyb3IgbWVzc2FnZSB0bworCXNheSAnY29tbWFuZHMnIGluc3RlYWQgb2YgJ21vZGVzJy4KKwkqIHNjcmlwdHMvZHBrZy1zdGF0b3ZlcnJpZGUucGwgKENoZWNrTW9kZUNvbmZsaWN0KTogTGlrZXdpc2UuIFVzZQorCWdldHRleHQgZm9yIHRoZSBzdHJpbmcuCisKKzIwMDctMDUtMTUgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHV0aWxzL3N0YXJ0LXN0b3AtZGFlbW9uLmMgKGRhZW1vbml6ZSk6IFVzZSBfZXhpdCBpbnN0ZWFkIG9mIGV4aXQsIHRvCisJYXZvaWQgc2lkZSBlZmZlY3RzIHdoaWxlIHRoZSBwYXJlbnRzIHRlcm1pbmF0ZS4KKworMjAwNy0wNS0xNSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogdXRpbHMvc3RhcnQtc3RvcC1kYWVtb24uYyAobWFpbik6IE1vdmUgZGFlbW9uaXppbmcgY29kZSB0byAuLi4KKwkoZGFlbW9uaXplKTogLi4uIGhlcmUuIE5ldyBmdW5jdGlvbi4gRm9yayB0d2ljZS4KKworMjAwNy0wNS0xNSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy91cGRhdGUtYWx0ZXJuYXRpdmVzLnBsOiBDYWxsIGZpbGxfbWlzc2luZ19zbGF2ZXBhdGhzIGF0IHRoZQorCWVuZCBvZiB0aGUgJ2luc3RhbGwnIGNvbmRpdGlvbmFsLgorCShmaWxsX21pc3Npbmdfc2xhdmVwYXRocyk6IE5ldyBmdW5jdGlvbi4KKworMjAwNy0wNS0xNSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogbWFuL2RlYi1jb250cm9sLjU6IERvY3VtZW50IGNvbW1lbnRzIGluIHRoZSBjb250cm9sIGZpbGUuCisKKzIwMDctMDUtMTUgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIG1hbi9pbnN0YWxsLWluZm8uODogRGlzYW1iaWd1YXRlIHRoZSB1c2Ugb2YgJ0luZm8gZGlyZWN0b3J5JyB3aXRoCisJJ0luZm8gZGlyIGZpbGUnLgorCisyMDA3LTA1LTE1ICBLdXJ0IEIuIEthaXNlciAgPGtia0BzaG9yZS5uZXQ+CisKKwkqIG1hbi9pbnN0YWxsLWluZm8uODogQWRkIG1pc3NpbmcgY29tbWFzLCBhbmQgaW5mb3JtYXRpb24gb24gdGhlCisJYmVoYXZpb3VyIHdoZW4gbm8gJy0tc2VjdGlvbicgb3B0aW9uIGlzIHNwZWNpZnlpZWQuCisKKzIwMDctMDUtMTQgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvZHBrZy1kaXZlcnQucGwgKCRkaXZlcnR0bywgJHBhY2thZ2UpOiBJbml0aWFsaXplIHRvIHVuZGVmCisJaW5zdGVhZCBvZiBhbiBlbXB0eSBzdHJpbmcuCisKKzIwMDctMDUtMTMgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvY29udHJvbGxpYi5wbCAoZGViYXJjaF9lcSk6IFJldHVybiAwIGlmCisJZGViYXJjaF90b19kZWJ0cmlwbGV0IHJldHVybnMgYW55IHVuZGVmIHZhbHVlLgorCShkZWJhcmNoX2lzKTogTGlrZXdpc2UuIEFzIGEgc2lkZSBlZmZlY3Qgb2YgY2hhbmdpbmcgdG8gdXNlIGFycmF5cyBmb3IKKwl0aGUgcmVhbCBhbmQgYWxpYXMgYXJjaGl0ZWN0dXJlcywgYWxsIHBhcnRzIG9mIHRoZSB0cmlwbGV0IGFyZSBub3cKKwljb21wYXJlZCBhZ2FpbnN0ICdhbnknIGFzIHdlbGwuCisJKiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDogUmVtb3ZlIHJlZHVuZGFudCBkZWJhcmNoX2lzIGJlaW5nCisJaGFuZGxlZCBhbHJlYWR5IGluIHRoZSBncmVwLgorCSogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6IExpa2V3aXNlLgorCisyMDA3LTA1LTEyICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2NvbnRyb2xsaWIucGwgKGRlYmlhbl9hcmNoX2VxKTogUmVuYW1lIHRvIC4uLgorCShkZWJhcmNoX2VxKTogLi4uIHRoaXMuIEFkZCBwcm90b3R5cGUuIEZpeCBhbGwgY2FsbGVycy4KKwkoZGViaWFuX2FyY2hfaXMpOiBSZW5hbWUgdG8gLi4uCisJKGRlYmFyY2hfaXMpOiAuLi4gdGhpcy4gQWRkIHByb3RvdHlwZS4gRml4IGFsbCBjYWxsZXJzLgorCisyMDA3LTA1LTEyICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBtYW4vZGViLXN1YnN0dmFycy41OiBGaXggdGl0bGUgdG8gbWF0Y2ggdGhlIHJlYWwgc2VjdGlvbi4KKworMjAwNy0wNS0xMSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy91cGRhdGUtYWx0ZXJuYXRpdmVzLnBsICgkbWFudWFsKTogUmVuYW1lIHRvIC4uLgorCSgkbW9kZSk6IC4uLiB0aGlzLiBGaXggYWxsIHVzZXJzLgorCShyZWFkX2xpbmtfZ3JvdXApOiBDaGFuZ2UgZ2woKSBuYW1lIGZyb20gJ21hbmZsYWcnIHRvICd1cGRhdGVfbW9kZScsCisJYW5kIGJhZGZtdCgpIHN0cmluZyBmcm9tICdtYW5mbGFnJyB0byAnaW52YWxpZCB1cGRhdGUgbW9kZScuCisKKzIwMDctMDUtMTEgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvdXBkYXRlLWFsdGVybmF0aXZlcy5wbCAoJG1vZGUpOiBSZW5hbWUgdG8gLi4uCisJKCRhY3Rpb24pOiAuLi4gdGhpcy4gRml4IGFsbCB1c2Vycy4KKwkoY2hlY2ttYW55bW9kZXMpOiBSZW5hbWUgdG8gLi4uCisJKGNoZWNrX21hbnlfYWN0aW9ucyk6IC4uLiB0aGlzLiBGaXggYWxsIGNhbGxlcnMuIEFkZCBwcm90b3R5cGUuCisJQ2hhbmdlIHRoZSBlcnJvciBtZXNzYWdlIHRvIHNheSAnY29tbWFuZHMnIGluc3RlYWQgb2YgJ21vZGVzJy4KKworMjAwNy0wNS0xMCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6IE9ubHkgdXNlIHRoZSAlcDJmIHZhbHVlcyBpZiBkZWZpbmVkLgorCisyMDA3LTA1LTA5ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBjb25maWd1cmUuYWM6IEJ1bXAgdmVyc2lvbiB0byAxLjE0LjN+LgorCisyMDA3LTA1LTA5ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBjb25maWd1cmUuYWM6IFJlbGVhc2UgMS4xNC4yLgorCisyMDA3LTA1LTA5ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBtYW4vTWFrZWZpbGUuYW0gKGluc3RhbGwtZGF0YS1sb2NhbCk6IEluc3RhbGwgdGhlIHRyYW5zbGF0ZWQgbWFuCisJcGFnZXMgZnJvbSB0aGUgc3JjZGlyLgorCisyMDA3LTA1LTA5ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBNYWtlZmlsZS5hbSAoRVhUUkFfRElTVCk6IEFkZCAnZGViaWFuL2Rwa2ctZGV2LmxpbnRpYW4tb3ZlcnJpZGVzJywKKwknZGViaWFuL2Rwa2cubGludGlhbi1vdmVycmlkZXMnLCAnZGViaWFuL2RzZWxlY3QubGludGlhbi1vdmVycmlkZXMnCisJYW5kICdkZWJpYW4vc291cmNlLmxpbnRpYW4tb3ZlcnJpZGVzJy4KKworMjAwNy0wNS0wOSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy91cGRhdGUtYWx0ZXJuYXRpdmVzLnBsOiBDcmVhdGUgdGhlIGdlbmVyaWMgbmFtZSBzeW1saW5rcworCXdoZW4gdGhlcmUncyBub25lLCBvciB3aGVuIGl0IGRpZmZlcnMgdG8gdGhlIGN1cnJlbnQgb25lLgorCisyMDA3LTA1LTA5ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMucGwgKGNvbmZpZ19tZXNzYWdlKTogSGFuZGxlIHRoZSBjYXNlCisJd2hlbiBAdmVyc2lvbnMgaXMgZW1wdHkuIFJldHVybiBhIG5lZ2F0aXZlIHZhbHVlIGlmIHRoZXJlJ3Mgbm90aGluZyB0bworCWRvLCAwIG9uIHN1Y2Nlc3MuCisJKGNvbmZpZ19hbHRlcm5hdGl2ZXMpOiBDaGVjayBmb3IgY29uZmlnX21lc3NhZ2UgZXhpdCB2YWx1ZSB0byBkZWNpZGUKKwl0byByZXR1cm4gaW5zdGVhZCBvZiBAdmVyc2lvbnMgYmVpbmcgZW1wdHkuCisKKzIwMDctMDUtMDkgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2Uuc2g6IFJlbW92ZSBjaGVjayBmb3IgdmFyaWFibGUgYmVpbmcgZW1wdHksCisJYXMgdGhlIHBhdGggY2hlY2sgcXVvdGVkLCB0aHVzIHJlbW92aW5nIHRoZSBiYXNoaXNtcy4KKworMjAwNy0wNS0wOCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogY29uZmlndXJlLmFjOiBCdW1wIHZlcnNpb24gdG8gMS4xNC4yfi4KKworMjAwNy0wNS0wOCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogY29uZmlndXJlLmFjOiBSZWxlYXNlIDEuMTQuMS4KKworMjAwNy0wNS0wOCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogY29uZmlndXJlLmFjOiBCdW1wIHZlcnNpb24gdG8gMS4xNC4xfi4KKworMjAwNy0wNS0wOCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogY29uZmlndXJlLmFjOiBSZWxlYXNlIDEuMTQuMC4KKworMjAwNy0wNS0wOCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9jb250cm9sbGliLnBsIChyZWFkX2NwdXRhYmxlKTogTG9jYWxpemUgJF8uCisJKHJlYWRfb3N0YWJsZSk6IExpa2V3aXNlLgorCShyZWFkX3RyaXBsZXR0YWJsZSk6IExpa2V3aXNlLgorCShwYXJzZWRlcCk6IENoZWNrIGZpcnN0IGZvciB0aGUgbmVnYXRlZCBhcmNoaXRlY3R1cmVzLgorCSogc2NyaXB0cy9kcGtnLWNoZWNrYnVpbGRkZXBzLnBsOiBEbyBub3QgZW5hYmxlIHNsdXJwIG1vZGUgZ2xvYmFsbHkuCisJVXNlIGdldF9ob3N0X2FyY2ggaW5zdGVhZCBvZiBkaXJlY3RseSBkcGtnLWFyY2hpdGVjdHVyZS4KKworMjAwNy0wNS0wOCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGwgKCRwa2dkYXRhZGlyKTogTmV3IHZhcmlhYmxlLgorCSogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6IExpa2V3aXNlLgorCSogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDogTGlrZXdpc2UuCisJKiBzY3JpcHRzL2Rwa2ctY2hlY2tidWlsZGRlcHMucGw6IExpa2V3aXNlLgorCSgkZHBrZ2xpYmRpcik6IENoYW5nZSB0byAnLi4nLgorCisyMDA3LTA1LTA4ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMucGw6IERvIG5vdCBleGl0IHdpdGggYW4gZXJyb3Igb24KKwknLS1yZW1vdmUnIHdpdGggYSBub24tZXhpc3RpbmcgbGluayBncm91cCBmaWxlIGZvciBub3csIHRvIGJlCisJY29uc2lzdGVudCB3aXRoIHRoZSBjYXNlIHdoZW4gdHJ5aW5nIHRvIHJlbW92ZSBhbiBub24tZXhpc3RpbmcgcGF0aC4KKworMjAwNy0wNS0wOCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy91cGRhdGUtYWx0ZXJuYXRpdmVzLnBsOiBGaXggd2FybmluZyB3aGVuIGV4ZWN1dGVkIHcvbyBhbnkKKwlvcHRpb24uCisKKzIwMDctMDUtMDggIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIE1ha2VmaWxlLmFtIChFWFRSQV9ESVNUKTogUmVuYW1lIGRlYmlhbi9wc2V1ZG8tdGFncyB0bworCWRlYmlhbi91c2VydGFncy4KKwkqIG1hbi9NYWtlZmlsZS5hbSAoZGlzdC1ob29rKTogTmV3IHRhcmdldC4KKwkoRVhUUkFfRElTVCk6IE5ldyB2YXJpYWJsZS4KKworMjAwNy0wNS0wNyAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogb3N0YWJsZTogQWRkIGdudWVhYmktbGludXguCisJKiB0cmlwbGV0dGFibGU6IEFkZCBnbnVlYWJpLWxpbnV4LWFybSB0byBhcm1lbCBtYXBwaW5nLgorCisyMDA3LTA1LTA3ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2NvbnRyb2xsaWIucGwgKCVkZWJ0cmlwbGV0X3RvX2RlYmFyY2gpOiBOZXcgdmFyaWFibGUuCisJKCVkZWJhcmNoX3RvX2RlYnRyaXBsZXQpOiBMaWtld2lzZS4KKwkoc3BsaXRfZ251LCBzcGxpdF9kZWJpYW4pOiBSZW1vdmUgZnVuY3Rpb25zLgorCShkZWJpYW5fYXJjaF9maXgsIGRlYmlhbl9hcmNoX3NwbGl0KTogTGlrZXdpc2UuCisJKGRlYmlhbl90b19nbnUsIGdudV90b19kZWJpYW4pOiBMaWtld2lzZS4KKwkocmVhZF90cmlwbGV0dGFibGUpOiBOZXcgZnVuY3Rpb24uCisJKGdudXRyaXBsZXRfdG9fZGVidHJpcGxldCwgZGVidHJpcGxldF90b19nbnV0cmlwbGV0KTogTGlrZXdpc2UuCisJKGRlYnRyaXBsZXRfdG9fZGViYXJjaCwgZGViYXJjaF90b19kZWJ0cmlwbGV0KTogTGlrZXdpc2UuCisJKGdldF92YWxpZF9hcmNoZXMpOiBDYWxsIHJlYWRfY3B1dGFibGUgYW5kIHJlYWRfb3N0YWJsZSBpZiBAY3B1IG9yIEBvcworCWFyZSBlbXB0eS4gVXNlIGRlYnRyaXBsZXRfdG9fZGViYXJjaCBpbnN0ZWFkIG9mIGRlYmlhbl9hcmNoX2ZpeC4KKwkoZGViaWFuX2FyY2hfZXEpOiBVc2UgZGViYXJjaF90b19kZWJ0cmlwbGV0IGluc3RlYWQgb2YKKwlkZWJpYW5fYXJjaF9zcGxpdC4gQ29tcGFyZSB0aGUgd2hvbGUgRGViaWFuIHRyaXBsZXQuCisJKGRlYmlhbl9hcmNoX2lzKTogTGlrZXdpc2UuCisJKiBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLnBsOiBEbyBub3QgY2FsbCB0aGUgbm93IGludGVybmFsIGZ1bmN0aW9ucworCXJlYWRfY3B1dGFibGUgYW5kIHJlYWRfb3N0YWJsZS4gVXNlIGRlYnRyaXBsZXRfdG9fZ251dHJpcGxldCwKKwlnbnV0cmlwbGV0X3RvX2RlYnRyaXBsZXQsIGRlYmFyY2hfdG9fZGVidHJpcGxldCBhbmQKKwlkZWJ0cmlwbGV0X3RvX2RlYmFyY2ggaW5zdGVhZCBvZiBkZWJpYW5fdG9fZ251LCBnbnVfdG9fZGViaWFuLgorCSogZGViaWFuL2FyY2h0YWJsZTogVXBkYXRlIGNvbW1lbnQgdG8gcmVmbGVjdCB0aGUgbmV3IERlYmlhbiB0cmlwbGV0LgorCSogY3B1dGFibGU6IExpa2V3aXNlLgorCSogb3N0YWJsZTogTGlrZXdpc2UuIEluY2x1ZGUgdGhlIEFCSSBpbmZvcm1hdGlvbiBpbiB0aGUgRGViaWFuIG5hbWUuCisJKiB0cmlwbGV0dGFibGU6IE5ldyBmaWxlLgorCSogTWFrZWZpbGUuYW0gKGRpc3RfcGtnZGF0YV9EQVRBKTogQWRkIHRyaXBsZXR0YWJsZS4KKworMjAwNy0wNS0wNCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLWFyY2hpdGVjdHVyZS5wbDogVXNlIGdldF92YWxpZF9hcmNoZXMgaW5zdGVhZCBvZgorCWRpcmVjdGx5IHVzaW5nIEBvcyBhbmQgQGNwdSB2YXJpYWJsZXMuCisJKCRwa2dkYXRhZGlyKTogQ2hhbmdlIGZyb20gYSAnbXknIHRvIGFuICdvdXInIHZhcmlhYmxlLgorCShAY3B1LCBAb3MsICVjcHV0YWJsZSwgJW9zdGFibGUsICVjcHV0YWJsZV9yZSwgJW9zdGFibGVfcmUsCisJcmVhZF9jcHV0YWJsZSwgcmVhZF9vc3RhYmxlLCBzcGxpdF9kZWJpYW4sIGRlYmlhbl90b19nbnUsCisJc3BsaXRfZ251LCBnbnVfdG9fZGViaWFuKTogTW92ZSB0byAuLi4KKwkqIHNjcmlwdHMvY29udHJvbGxpYi5wbDogLi4uIGhlcmUuCisJKCRwa2dkYXRhZGlyKTogRGVjbGFyZSBhcyAnb3VyJy4KKwkoZ2V0X3ZhbGlkX2FyY2hlcyk6IE5ldyBmdW5jdGlvbi4KKworMjAwNy0wNS0wNCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy91cGRhdGUtYWx0ZXJuYXRpdmVzLnBsOiBDYWxsIHJlYWRfbGlua19ncm91cCBhbHNvIGluCisJJ2luc3RhbGwnIG1vZGUsIGJ1dCBkbyBub3QgZXhpdCBub3IgcHJpbnQgYW4gZXJyb3IgaWYgdGhlIGxpbmsgZ291cAorCWZpbGUgZG9lcyBub3QgZXhpc3QuCisKKzIwMDctMDUtMDIgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvdXBkYXRlLWFsdGVybmF0aXZlcy5wbDogTW92ZSB0aGUgRU5PRU5UIGVycm5vIGNoZWNrIGZyb20KKwl0aGUgaWYgY29uZGl0aW9uYWxzIHRvIHRoZSBibG9jayBib2R5IHRvIGF2b2lkIGNvbXBhcmluZyBhZ2FpbnN0IGFuCisJdW5kZWYgdmFsdWUgb24gdGhlIG5leHQgZWxzaWYgY29uZGl0aW9uYWwuCisKKzIwMDctMDQtMjggIEFhcm9uIE0uIFVja28gIDx1Y2tvQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGwgKHVuaXF1ZV9saWJmaWxlcyk6IE5ldyB2YXJpYWJsZS4gRG8gbm90CisJdHJhY2sgZHVwZWQgbGlicmFyaWVzIGFscmVhZHkgb24gaXQuCisKKzIwMDctMDQtMTEgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvZHBrZy1wYXJzZWNoYW5nZWxvZy5wbDogVXNlIHN0YXRpYyBhbmQgd2FybmluZ3MuIERlY2xhcmUKKwl2YXJpYWJsZXMgd2l0aCAnbXknLgorCSogc2NyaXB0cy9kcGtnLXNjYW5zb3VyY2VzLnBsOiBMaWtld2lzZS4KKwkqIHNjcmlwdHMvY29udHJvbGxpYi5wbDogTGlrZXdpc2UuIEdsb2JhbHMgd2l0aCAnb3VyJy4KKwkqIHNjcmlwdHMvODIyLWRhdGUucGw6IExpa2V3aXNlLgorCSogc2NyaXB0cy9kcGtnLWFyY2hpdGVjdHVyZS5wbDogTGlrZXdpc2UuCisJKiBzY3JpcHRzL2Rwa2ctY2hlY2tidWlsZGRlcHMucGw6IExpa2V3aXNlLgorCSogc2NyaXB0cy9kcGtnLWRpc3RhZGRmaWxlLnBsOiBMaWtld2lzZS4KKwkqIHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOiBMaWtld2lzZS4KKwkqIHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOiBMaWtld2lzZS4KKwkqIHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6IExpa2V3aXNlLgorCSogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDogTGlrZXdpc2UuCisJKiBzY3JpcHRzL2NvbnRyb2xsaWIucGwgKHBhcnNlY2RhdGEpOiBVc2UgJ215JyBpbnN0ZWFkIG9mICdsb2NhbCcuCisJKHN1YnByb2NlcnIpOiBMaWtld2lzZS4KKwkoZGViaWFuX2FyY2hfZml4KTogTGlrZXdpc2UuCisJKiBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLnBsIChkZWJpYW5fdG9fZ251KTogTGlrZXdpc2UuCisJKGdudV90b19kZWJpYW4pOiBMaWtld2lzZS4KKwkqIHNjcmlwdHMvY29udHJvbGxpYi5wbCAoZ2V0Zm93bmVyKTogUmVtb3ZlIHJlZHVuZGFudCBjbG9zdXJlcyBvZgorCVNURElOLgorCisyMDA3LTA0LTExICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBtYW4vTWFrZWZpbGUuYW0gKG1hbi5zdGFtcCk6IFVzZSBhIHN0YW1wIGZpbGUgZm9yIG5vdyB1bnRpbCBwbzRhCisJc3VwcG9ydHMgdGhlbSBpbnRlcm5hbGx5LgorCShhbGwtbG9jYWwpOiBEZXBlbmQgb24gbWFuLnN0YW1wLgorCShjbGVhbi1sb2NhbCk6IFJlbW92ZSB0aGUgbWFuLnN0YW1wIGZpbGUuCisKKzIwMDctMDQtMTEgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvY29udHJvbGxpYi5wbCAoQHBrZ19kZXBfZmllbGRzKTogUmVvcmRlciBmaWVsZHMgYnkKKwlpbXBvcnRhbmNlLgorCShzZXRfZmllbGRfaW1wb3J0YW5jZSk6IE5ldyBmdW5jdGlvbi4KKwkoc29ydF9maWVsZF9ieV9pbXBvcnRhbmNlKTogTGlrZXdpc2UuCisJKG91dHB1dGNsb3NlKTogVXNlIHNvcnRfZmllbGRfYnlfaW1wb3J0YW5jZSBpbnN0ZWFkIG9mIGRpcmVjdCBzb3J0aW5nLgorCSogc2NyaXB0cy9jaGFuZ2Vsb2cvZGViaWFuLnBsICglZmllbGRpbXBzKTogRG8gbm90IHNldCBkaXJlY3RseSwgdXNlCisJc2V0X2ZpZWxkX2ltcG9ydGFuY2UgaW5zdGVhZC4KKwkqIHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOiBMaWtld2lzZS4KKwkqIHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOiBMaWtld2lzZS4KKwkqIHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6IExpa2V3aXNlLgorCSogc2NyaXB0cy9jaGFuZ2Vsb2cvZGViaWFuLnBsIChAY2hhbmdlbG9nX2ZpZWxkcyk6IE5ldyB2YXJpYWJsZS4KKwkqIHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsIChAY2hhbmdlc19maWVsZHMpOiBOZXcgdmFyaWFibGUuCisJKiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbCAoQGNvbnRyb2xfZmllbGRzKTogTmV3IHZhcmlhYmxlLgorCSogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbCAoQGRzY19maWVsZHMpOiBOZXcgdmFyaWFibGUuCisJKiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOiBSZXF1aXJlICdjb250cm9sbGliLnBsJy4KKwkoQHBrZ19kZXBfZmllbGRzKTogRGVjbGFyZSBhcyAnb3VyJy4KKwkoQGZpZWxkcHJpKTogUmVvcmRlciBmaWVsZHMsIHVzZSAnQHBrZ19kZXBfZmllbGRzJyBpbnN0ZWFkIG9mCisJaGFyZGNvZGVkIGxpc3QuCisKKzIwMDctMDQtMDUgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvY29udHJvbGxpYi5wbCAoZ2V0X2hvc3RfYXJjaCk6IE5ldyBmdW5jdGlvbi4KKwkoZmluZGFyY2gpOiBSZW5hbWUgdG8gLi4uCisJKGluaXRfc3Vic3R2YXJfYXJjaCk6IC4uLiB0aGlzLiBVc2UgZ2V0X2hvc3RfYXJjaCB0byBzZXQgdGhlIHN1YnN0dmFyLgorCUZpeCBhbGwgY2FsbGVycy4KKwkocGFyc2VkZXApOiBVc2UgZ2V0X2hvc3RfYXJjaCBpbnN0ZWFkIG9mIGRpcmVjdGx5IGNhbGxpbmcKKwlkcGtnLWFyY2hpdGVjdHVyZS4KKwkqIHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOiBVc2UgJyRob3N0X2FyY2gnIGluc3RlYWQgb2YgJyRhcmNoJy4KKwkoaW5pdF9zdWJzdHZhcl9hcmNoKTogRGVsYXkgY2FsbCB1bnRpbCBhZnRlciBpbml0X3N1YnN0dmFycy4KKwkqIHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOiBMaWtld2lzZS4KKworMjAwNy0wNC0wMyAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogZHBrZy1nZW5jaGFuZ2VzLnBsOiBNYXJrIHN0cmluZyBmb3IgdHJhbnNsYXRpb24uCisKKzIwMDctMDQtMDMgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvY29udHJvbGxpYi5wbCAod2Fybik6IFJlbmFtZSB0byAuLi4KKwkod2FybmluZyk6IC4uLiB0aGlzLCB0byBhdm9pZCBjb2xsaXNpb25zIHdpdGggdGhlIHBlcmwgYnVpbHRpbi4gRml4CisJYWxsIHVzZXJzLgorCisyMDA3LTA0LTAzICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2NvbnRyb2xsaWIucGw6IFVzZSBkZWZpbmVkIGluc3RlYWQgb2YgbGVuZ3RoLCB3aGVuIHZhcmlhYmxlcworCW1pZ2h0IGJlIHVuZGVmaW5lZC4KKwkqIHNjcmlwdHMvdXBkYXRlLWFsdGVybmF0aXZlcy5wbDogTGlrZXdpc2UuCisJKiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOiBMaWtld2lzZS4KKwkqIHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOiBMaWtld2lzZS4KKwkqIHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOiBMaWtld2lzZS4KKwkqIHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6IExpa2V3aXNlLgorCisyMDA3LTA0LTAzICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2Rwa2ctY2hlY2tidWlsZGRlcHMucGwgKCRjb250cm9sKTogUmVtb3ZlIHJlZHVuZGFudAorCXZhcmlhYmxlLgorCisyMDA3LTA0LTAzICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsIChmaWVsZGltcHMpOiBBZGQgJ1VwbG9hZGVycycuCisKKzIwMDctMDMtMjUgIE5pY29sYXMgRnJhbsOnb2lzICA8bmljb2xhcy5mcmFuY29pc0BjZW50cmFsaWVucy5uZXQ+CisKKwkqIG00L2xpYnMubTQ6IEZpeCB0eXBvIChzdXBvcHJ0LT5zdXBwb3J0KS4KKworMjAwNy0wMy0yMyAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogZGViaWFuL3BzZXVkby10YWdzOiBSZW5hbWVkIHRvIC4uLgorCSogZGViaWFuL3VzZXJ0YWdzOiAuLi4gdGhpcy4gVXBkYXRlZCB3aXRoIHRoZSB1c2VydGFncyBpbmZvcm1hdGlvbi4KKwkqIGRlYmlhbi9kcGtnLmRvY3M6IEluc3RhbGwgdXNlcnRhZ3MgaW5zdGVhZCBvZiBwc2V1ZG8tdGFncy4KKworMjAwNy0wMy0yMSAgSmVmZnJleSBXLiBCYWtlciAgPGp3YmFrZXJAYWNtLm9yZz4KKyAgICAgICAgICAgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNyYy9hcmNoaXZlcy5jICh3YW50dG9pbnN0YWxsKTogVXNlIHZkZXdfbm9uYW1iaWcgaW5zdGVhZCBvZgorCXZkZXdfbmV2ZXIgb24gdmVyc2lvbmRlc2NyaWJlLgorCSogc3JjL2NvbmZpZ3VyZS5jIChkZWZlcnJlZF9jb25maWd1cmUpOiBMaWtld2lzZS4KKwkqIHNyYy9xdWVyeS5jIChsaXN0MXBhY2thZ2UpOiBMaWtld2lzZS4KKwkqIGRzZWxlY3QvcGtnc3VibGlzdC5jYyAocGFja2FnZWxpc3Q6OmFkZCk6IExpa2V3aXNlLgorCSogZHNlbGVjdC9wa2d0b3AuY2MgKHBhY2thZ2VsaXN0OjpyZWRyYXcxaXRlbXNlbCk6IExpa2V3aXNlLgorCisyMDA3LTAzLTIxICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBkc2VsZWN0L21haW4uY2M6IFJlbW92ZSBkdXBsaWNhdGVkIGluY2x1ZGVkIGZpbGVzIDxzeXMvdHlwZXMuaD4gYW5kCisJPHN5cy9zdGF0Lmg+LiBNb3ZlIDxmY250bC5oPiB0byB0aGUgc3lzdGVtIGJsb2NrLgorCisyMDA3LTAzLTIxICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBkc2VsZWN0L21ldGhvZC5oOiBGaXggdHlwbyBpbiBjb3B5cmlnaHQgeWVhciAoJzIwMDAxJy0+ICcyMDAxJykuCisKKzIwMDctMDMtMjEgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGNvbmZpZ3VyZS5hYyAoQU1fR05VX0dFVFRFWFRfVkVSU0lPTik6IFF1b3RlIHRoZSBhcmd1bWVudC4KKwkoQUNfQ0hFQ0tfSEVBREVSUyk6IENoZWNrIGZvciAnbG9jYWxlLmgnLgorCSogbGliL2dldHRleHQuaDogVXBkYXRlZCBmaWxlIGZyb20gZ2V0dGV4dCAwLjE2LjEuCisKKzIwMDctMDMtMjEgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGNvbmZpZ3VyZS5hYyAoQU1fR05VX0dFVFRFWFRfVkVSU0lPTik6IEJ1bXAgdG8gMC4xNi4xLgorCisyMDA3LTAzLTIwICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsICgkZGlmZl9pZ25vcmVfZGVmYXVsdF9yZWdleHApOiBBZGQgJy5oZycuCisKKzIwMDctMDMtMTMgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvY29udHJvbGxpYi5wbCAocGFyc2VjaGFuZ2Vsb2cpOiBPbmx5IGJpbm1vZGUgQ0RBVEEgZnJvbSB0aGUKKwlwYXJlbnQgc2lkZSBvZiB0aGUgb3BlbmVkIHBpcGUsIG9uIHRoZSBjaGlsZCBzaWRlIGJpbm1vZGUgU1RET1VULgorCisyMDA3LTAzLTEzICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOiBVc2UgbmV3IHN0eWxlIGZpbGUgaGFuZGxlciByZWZlcmVuY2VzLgorCisyMDA3LTAzLTEzICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBsaWIvY29tcHJlc3Npb24uYyAoY29tcHJlc3NfY2F0KTogU3VwcG9ydCBjb21wcmVzc190eXBlX2x6bWEuCisJKiBkcGtnLWRlYi9idWlsZC5jIChkb19idWlsZCk6IExpa2V3aXNlLgorCSogZHBrZy1kZWIvbWFpbi5jICh1c2FnZSk6IERvY3VtZW50IHRoYXQgJy1aJyBub3cgYWNjZXB0cyBsem1hIGFzIHdlbGwuCisJKHNldGNvbXByZXNzdHlwZSk6IFBhcnNlICdsem1hJyBhcyBjb21wcmVzc190eXBlX2x6bWEuCisJKiBtYW4vZHBrZy1kZWIuMTogTW92ZSAnLXonIHRvIGl0J3Mgb3duIE9QVElPTlMgZW50cnkuIERvY3VtZW50ICctWicsCisJYW5kIHRoZSBuZXcgJ2x6bWEnIHZhbHVlLgorCisyMDA3LTAzLTEyICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBtYW4vZHBrZy1zb3VyY2UuMTogU3BsaXQgaW5kaXZpZHVhbCBtYW4gcGFnZXMgdG8gLi4uCisJKiBtYW4vZGViLXNobGlicy41OiAuLi4gaGVyZSBhbmQgLi4uCisJKiBtYW4vZGViLXN1YnN0dmFycy41OiAuLi4gaGVyZSBhbmQgLi4uCisJKiBtYW4vZHBrZy1idWlsZHBhY2thZ2UuMTogLi4uIGhlcmUgYW5kIC4uLgorCSogbWFuL2Rwa2ctZGlzdGFkZGZpbGUuMTogLi4uIGhlcmUgYW5kIC4uLgorCSogbWFuL2Rwa2ctZ2VuY2hhbmdlcy4xOiAuLi4gaGVyZSBhbmQgLi4uCisJKiBtYW4vZHBrZy1nZW5jb250cm9sLjE6IC4uLiBoZXJlIGFuZCAuLi4KKwkqIG1hbi9kcGtnLXBhcnNlY2hhbmdlbG9nLjE6IC4uLiBoZXJlIGFuZCAuLi4KKwkqIG1hbi9kcGtnLXNobGliZGVwcy4xOiAuLi4gaGVyZS4KKwkqIG1hbi9NYWtlZmlsZS5hbSAoYWxsLWxvY2FsKTogRG8gbm90IG1ha2UgdGhlIHN5bWxpbmtzIGFueW1vcmUuCisJKGRwa2dfc291cmNlX2FsaWFzZXMpOiBNb3ZlIHRvIC4uLgorCShkaXN0X21hbl9NQU5TKTogLi4uIGhlcmUuCisJKG1hbl9NQU5TKTogUmVtb3ZlIHZhcmlhYmxlLgorCShDTEVBTkZJTEVTKTogTGlrZXdpc2UuCisKKzIwMDctMDMtMTIgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIG1hbi9NYWtlZmlsZS5hbSAoZGlzdF9tYW5fTUFOUyk6IEFkZCBkZWItb3ZlcnJpZGUuNS4KKwkqIG1hbi9kcGtnLXNjYW5wYWNrYWdlcy4xOiBNb3ZlIG92ZXJyaWRlIGZpbGUgaW5mb3JtYXRpb24gdG8gLi4uCisJKiBtYW4vZGViLW92ZXJyaWRlLjU6IC4uLiBoZXJlLgorCisJKiBtYW4vZHBrZy1zY2FucGFja2FnZXMuMTogQWRkIGEgcmVmZXJlbmNlIHRvIGRlYi1vdmVycmlkZS41LgorCSogbWFuL2Rwa2ctc2NhbnNvdXJjZXMuMTogTGlrZXdpc2UuCisKKzIwMDctMDMtMTIgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvY2hhbmdlbG9nL2RlYmlhbi5wbDogRml4IGNhbGwgdG8gb3V0cHV0Y2xvc2UgYnkgbm90IHBhc3NpbmcKKwlhbnl0aGluZyB0byBpdC4KKwkoJHZhcmxpc3RmaWxlKTogUmVtb3ZlIHVudXNlZCB2YXJpYWJsZS4KKworMjAwNy0wMy0xMiAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogbGliL2Rwa2cuaCAoY29tcHJlc3Npb25fdHlwZSk6IFJlbmFtZSB0byAuLi4KKwkoY29tcHJlc3NfdHlwZSk6IC4uLiB0aGlzLiBGaXggYWxsIHVzZXJzLgorCShDQVQpOiBSZW5hbWUgdG8gLi4uCisJKGNvbXByZXNzX3R5cGVfY2F0KTogLi4uIHRoaXMuIEZpeCBhbGwgdXNlcnMuCisJKEdaKTogUmVuYW1lIHRvIC4uLgorCShjb21wcmVzc190eXBlX2d6aXApOiAuLi4gdGhpcy4gRml4IGFsbCB1c2Vycy4KKwkoQloyKTogUmVuYW1lIHRvIC4uLgorCShjb21wcmVzc190eXBlX2J6aXAyKTogLi4uIHRoaXMuIEZpeCBhbGwgdXNlcnMuCisKKzIwMDctMDMtMDYgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGxpYi9jb21wcmVzc2lvbi5jIChmZF9mZF9maWx0ZXIpOiBOZXcgZnVuY3Rpb24sIHJlZmFjdG9yZWQuIEFzCisJYSBzaWRlIGVmZmVjdCB0aGUgJ2ZhaWxlZCB0byBleGVjJyBzdHJpbmcgZ2V0cyB1bmlmaWVkLCBhbmQgYWxsCisJY29tbWFuZHMgdXNlIG9zaGl0ZSBub3cuCisJKGRlY29tcHJlc3NfY2F0KTogVXNlIGZkX2ZkX2ZpbHRlciBpbnN0ZWFkIG9mIHRoZSBkdXBlZCBjb2RlLgorCShjb21wcmVzc19jYXQpOiBMaWtld2lzZS4KKworMjAwNy0wMy0wNiAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbCAodXNhZ2UpOiBEb2N1bWVtdCB0aGF0IHRoZSBvdmVycmlkZQorCWZpbGUgaXMgbm93IG9wdGlvbmFsLgorCShsb2FkX292ZXJyaWRlKTogTmV3IGZ1bmN0aW9uLCByZWZhY3RvcmVkLiBIYW5kbGUgdGhlIGNhc2Ugd2hlcmUKKwknJG92ZXJyaWRlJyBpcyB1bmRlZmluZWQuCisJKiBtYW4vZHBrZy1zY2FucGFja2FnZXMuMTogTWFyayB0aGUgb3ZlcnJpZGUgYXJndW1lbnQgYXMgb3B0aW9uYWwuCisKKzIwMDctMDMtMDYgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIG1hbi91cGRhdGUtYWx0ZXJuYXRpdmVzLjg6IFJlb3JkZXIgRVhBTVBMRVMgc2VjdGlvbi4KKworMjAwNy0wMy0wNiAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogbWFuL2NsZWFudXAtaW5mby44OiBVbmlmeSB0aGUgc3VtbWFyeS4gVW5pZnkgJy0taGVscCcgYW5kCisJJy0tdmVyc2lvbicgZGVzY3JpcHRpb25zLiBSZW1vdmUgdW5uZWVkZWQgcXVvdGVzIGluIHNlY3Rpb24gbmFtZXMuCisJKiBtYW4vdXBkYXRlLWFsdGVybmF0aXZlcy44OiBMaWtld2lzZS4KKwkqIG1hbi9zdGFydC1zdG9wLWRhZW1vbi44OiBMaWtld2lzZS4KKwkqIG1hbi9kcGtnLWRlYi4xOiBMaWtld2lzZS4KKwkqIG1hbi9kcGtnLWRpdmVydC44OiBMaWtld2lzZS4KKwkqIG1hbi9kcGtnLXF1ZXJ5LjE6IExpa2V3aXNlLgorCSogbWFuL2Rwa2ctbmFtZS4xOiBMaWtld2lzZS4KKwkqIG1hbi9kcGtnLWNoZWNrYnVpbGRkZXBzLjE6IExpa2V3aXNlLgorCSogbWFuL2Rwa2ctYXJjaGl0ZWN0dXJlLjE6IExpa2V3aXNlLgorCSogbWFuL2Rwa2ctc3BsaXQuMTogTGlrZXdpc2UuCisJKiBtYW4vZHBrZy1zdGF0b3ZlcnJpZGUuODogTGlrZXdpc2UuCisJKiBtYW4vZHBrZy1zY2FucGFja2FnZXMuMTogTGlrZXdpc2UuCisJKiBtYW4vZHBrZy1zY2Fuc291cmNlcy4xOiBMaWtld2lzZS4KKworCSogbWFuL2Rwa2ctZGViLjE6IFNwbGl0IG9wdGlvbiBhbGlhc2VkIG5hbWVzIHdpdGggJywnIGluc3RlYWQgb2YgJ3wnLgorCSogbWFuL2Rwa2ctbmFtZS4xOiBMaWtld2lzZS4KKwkqIG1hbi9kcGtnLXNwbGl0LjE6IExpa2V3aXNlLgorCSogbWFuL2Rwa2ctcXVlcnkuMTogTGlrZXdpc2UuCisJKiBtYW4vc3RhcnQtc3RvcC1kYWVtb24uODogTGlrZXdpc2UuCisKKwkqIG1hbi9kcGtnLWRpdmVydC44OiBMaXN0IGVhY2ggb3B0aW9ucyBpbiB0aGUgT1BUSU9OUyBzZWN0aW9uLgorCSogbWFuL2Rwa2ctc2NhbnBhY2thZ2VzLjE6IExpa2V3aXNlLgorCSogbWFuL3N0YXJ0LXN0b3AtZGFlbW9uLjg6IExpa2V3aXNlLgorCisJKiBtYW4vZHBrZy1kaXZlcnQuODogUmVtb3ZlIHJlZHVuZGFudCAnPD4nIGNoYXJhY3RlcnMgdG8gZGVsaW1pdCBhCisJcmVwbGFjYWJsZSBhcmd1bWVudC4KKwkqIG1hbi9kcGtnLXN0YXRvdmVycmlkZS44OiBMaWtld2lzZS4KKworCSogbWFuL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuODogTWFyayBjb21tYW5kcyBpbiBleGFtcGxlcyBhcyBib2xkLgorCSogbWFuL2Rwa2ctYXJjaGl0ZWN0dXJlLjE6IFJlb3JkZXIgc2VjdGlvbnMuIEluZGVudCBleGFtcGxlcy4KKwkqIG1hbi9kcGtnLW5hbWUuMTogRG8gbm90IHNwZWNpZnkgaW4gd2hpY2ggcHJvZ3JhbW1pbmcgbGFuZ3VhZ2UgdGhlCisJcHJvZ3JhbSBpcyB3cml0dGVuIGluLgorCSogbWFuL2Rwa2ctZGViLjE6IFNwbGl0ICctLWV4dHJhY3QnIGFuZCAnLS12ZXh0cmFjdCcgb3B0aW9ucy4KKworMjAwNy0wMi0yOCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLWNoZWNrYnVpbGRkZXBzLnBsOiBNYWtlIGdldG9wdCBwYXJzZSAnLS1hZG1pbmRpcicuCisJKCRhZG1pbmRpcik6IE5ldyB2YXJpYWJsZS4KKwkodXNhZ2UpOiBEb2N1bWVudCAnLS1hZG1pbmRpcicuCisJKHBhcnNlX3N0YXR1cyk6IFRoZSBzdGF0dXMgYXJndW1lbnQgaXMgbm90IG9wdGlvbmFsIGFueW1vcmUuCisJKiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOiBQYXJzZSAnLS1hZG1pbmRpcicuCisJKCRhZG1pbmRpcik6IE5ldyB2YXJpYWJsZS4KKwkoJHNobGlic3BwZGlyKTogSW5pdGlhbGl6ZSBpdCBhZnRlciBwYXJzaW5nIHRoZSBhcmd1bWVudHMuCisJKHVzYWdlKTogRG9jdW1lbnQgJy0tYWRtaW5kaXInLgorCSogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5zaDogUGFyc2UgJy0tYWRtaW5kaXInLCBhbmQgZG9jdW1lbnQgaXQgaW4KKwl1c2FnZSBvdXRwdXQuIFBhc3MgaXQgdG8gZHBrZy1jaGVja2J1aWxkZGVwcy4KKwkqIG1hbi9kcGtnLXNvdXJjZS4xOiBEb2N1bWVudCBuZXcgb3B0aW9uICctLWFkbWluZGlyJy4KKwkqIG1hbi9kcGtnLWNoZWNrYnVpbGRkZXBzLjE6IExpa2V3aXNlLgorCisyMDA3LTAyLTI4ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMucGwgKHVzYWdlKTogVXNlICckYWx0ZGlyJyBpbnN0ZWFkIG9mCisJaGFyZGNvZGluZyBpdHMgdmFsdWUuCisKKzIwMDctMDItMjggIENvbGluIFdhdHNvbiAgPGNqd2F0c29uQHVidW50dS5jb20+CisKKwkqIHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOiBBZGQgbWlzc2luZyBwYXJlbnRoZXNpcyBpbiByZWd1bGFyCisJZXhwcmVzc2lvbiBoYW5kbGluZyBPcmlnaW4sIEJ1Z3MgYW5kIE1haW50YWluZXIgZm9yIGNvbnRyb2wgZmlsZQorCWZpZWxkcy4KKworMjAwNy0wMi0xNyAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbCAoY2hlY2tzdGF0cyk6IFRha2UgJyRkc2NkaXInIGFzIGFuIGV4cGxpY2l0CisJYXJndW1lbnQuIEZpeCBhbGwgY2FsbGVycy4KKwkoY2hlY2t0eXBlKTogVGFrZSAnJGRpcicsICckZm4nIGFuZCAnJHR5cGUnIGFzIGV4cGxpY2l0IGFyZ3VtZW50cy4gRml4CisJYWxsIGNhbGxlcnMuCisKKzIwMDctMDItMTcgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvdXBkYXRlLWFsdGVybmF0aXZlcy5wbDogQ2hlY2sgaWYgJyRhbGluaycgaXMgZGVmaW5lZCBiZWZvcmUKKwl1c2luZyAnJGFzbGF2ZWxpbmtjb3VudHskYWxpbmt9Jy4gT25seSByZWFkX2xpbmtfZ3JvdXAgaWYgJyRtb2RlJyBpcworCW5vdCAnaW5zdGFsbCcuCisJKCRkYXRhcmVhZCk6IFJlbW92ZSBub3cgdW51c2VkIHZhcmlhYmxlLgorCShyZWFkX2xpbmtfZ3JvdXApOiBOZXcgZnVuY3Rpb24gKHJlZmFjdG9yZWQpLgorCShmaW5kX2Jlc3RfdmVyc2lvbik6IExpa2V3aXNlLgorCShkaXNwbGF5X2xpbmtfZ3JvdXApOiBMaWtld2lzZS4KKwkobGlzdF9saW5rX2dyb3VwKTogTGlrZXdpc2UuCisJKGNvbmZpZ19hbGwpOiBNb3ZlIGV4aXQgdG8gb3V0c2lkZSB0aGUgZnVuY3Rpb24uCisKKzIwMDctMDItMTcgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvY29udHJvbGxpYi5wbCAocGFyc2VjZGF0YSk6IENoYW5nZSBDREFUQSB0byBhIHJlZmVyZW5jZQorCXRha2VuIGZyb20gdGhlIGFyZ3VtZW50cy4gRml4IGFsbCBjYWxsZXJzLgorCisyMDA3LTAyLTEzICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzcmMvYXJjaGl2ZXMuYyAoTUFYQ09ORkxJQ1RPUlMpOiBOZXcgbWFjcm8uCisJKGNvbmZsaWN0b3IpOiBVc2UgTUFYQ09ORkxJQ1RPUlMgaW5zdGFkIG9mIGhhcmRjb2RlZCB2YWx1ZSAnMjAnLCBhbmQKKwlyZW1vdmUgbm9uLW1hdGNoaW5nIGNvbW1lbnRzLgorCShjaGVja19jb25mbGljdCk6IEV4aXQgd2l0aCBhbiBlcnJvciBpbnN0ZWFkIG9mIGFuIGFzc2VydC4gTW92ZSBwYXJ0CisJb2YgdGhlIGNvbW1lbnQgdG8gdGhlIGVycm9yIG1lc3NhZ2UsIHJlbW92ZSB0aGUgcmVzdCBhcyBub24tbWF0Y2hpbmcuCisKKzIwMDctMDItMTMgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGRwa2ctZGViL2J1aWxkLmMgKGdldGZpKTogRXhpdCB3aXRoIGFuIGVycm9yIGluc3RlYWQgb2YgYW4gYXNzZXJ0LgorCisyMDA3LTAyLTEzICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBkcGtnLWRlYi9kcGtnLWRlYi5oIChNQVhGSUxFTkFNRSk6IE5ldyBtYWNyby4KKwkqIGRwa2ctZGViL2J1aWxkLmMgKGdldGZpKTogVXNlIE1BWEZJTEVOQU1FIGluc3RlYWQgb2YgdGhlIGhhcmRjb2RlZAorCXZhbHVlICcyMDQ4Jy4KKworMjAwNy0wMi0xMyAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogbGliL2NvbXByZXNzaW9uLmMgKGRlY29tcHJlc3NfY2F0KTogVXNlIEJaX0lPX0VSUk9SIGluc3RlYWQgb2YKKwlaX0VSUk5PIGZvciB0aGUgZXJyb3IgdmFsdWUgcmV0dXJuZWQgYnkgQloyX2J6ZXJyb3IuCisKKzIwMDctMDItMTIgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6IE1vdmUgc3lzZXJyOnMgdG8gYmUgb3InZWQgYWZ0ZXIgZXhlYzpzLgorCisyMDA3LTAyLTEyICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2NvbnRyb2xsaWIucGwgKG91dHB1dGNsb3NlKTogQ2hhbmdlIGFyZ3VtZW50IGZyb20gYSBib29sZWFuCisJdG8gYW4gb3B0aW9uYWwgZmlsZW5hbWUgYXJndW1lbnQuIEZpeCBhbGwgY2FsbGVycy4KKwkocGFyc2Vjb250cm9sZmlsZSk6IFRha2UgJyRjb250cm9sZmlsZScgYXMgYW4gZXhwbGljaXQgYXJndW1lbnQuCisJRml4IGFsbCBjYWxsZXJzLgorCShwYXJzZXN1YnN0dmFycyk6IFRha2UgJyR2YXJsaXN0ZmlsZScgYXMgYW4gZXhwbGljaXQgYXJndW1lbnQuCisJRml4IGFsbCBjYWxsZXJzLgorCShwYXJzZWNoYW5nZWxvZyk6IFRha2UgJyRjaGFuZ2Vsb2dmaWxlJyBhcyBhbiBleHBsaWNpdCBhcmd1bWVudCwKKwknJGNoYW5nZWxvZ2Zvcm1hdCcgYW5kICckc2luY2UnIGFzIG9wdGlvbmFsIGFyZ3VtZW50cy4gRml4IGFsbAorCWNhbGxlcnMuCisJKHNldHNvdXJjZXBhY2thZ2UpOiBUYWtlICckdicgYXMgYW4gZXhwbGljaXQgYXJndW1lbnQuCisKKzIwMDctMDItMTEgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGRzZWxlY3QvcGtnbGlzdC5oIChwYWNrYWdlbGlzdDo6c2V2ZXJhbGluZm9ibHVyYik6IERvIG5vdCB0YWtlIGEKKwlzdHJpbmcgYXJndW1lbnQuIEZpeCBhbGwgY2FsbGVycy4KKwkqIGRzZWxlY3QvcGtnaW5mby5jYyAocGFja2FnZWxpc3Q6OnNldmVyYWxpbmZvYmx1cmIpOiBMaWtld2lzZS4KKwkocGFja2FnZWxpc3Q6Oml0ZF9yZWxhdGlvbnMpOiBDYXBpdGFsaXplIGFuZCBtYWtlIHdoYXRpbmZvIHNldHRpbmcKKwljb21tb24gYW5kIG1vdmUgaXQgb3V0c2lkZSBvZiB0aGUgaWYgYmxvY2ssIGFuZCBkbyBub3QgYWRkIHRoZQorCXBhY2thZ2UgbmFtZS4KKwkocGFja2FnZWxpc3Q6Oml0ZF9kZXNjcmlwdGlvbik6IExpa2V3aXNlLgorCShwYWNrYWdlbGlzdDo6aXRkX3N0YXR1c2NvbnRyb2wpOiBMaWtld2lzZS4KKwkocGFja2FnZWxpc3Q6Oml0ZF9hdmFpbGFibGVjb250cm9sKTogTGlrZXdpc2UuCisJKiBkc2VsZWN0L2Jhc2VsaXN0LmNjIChiYXNlbGlzdDo6aXRkX2tleXMpOiBDYXBpdGFsaXplIHdoYXRpbmZvIHN0cmluZy4KKwkqIGRzZWxlY3QvbWV0aGxpc3QuY2MgKG1ldGhvZGxpc3Q6Oml0ZF9kZXNjcmlwdGlvbik6IExpa2V3aXNlIGFuZCBkbworCW5vdCBwcmludCB0aGUgbWV0aG9kIG5hbWUuCisKKzIwMDctMDItMTEgIElhbiBKYWNrc29uICA8aXdqQHVidW50dS5jb20+CisJICAgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNyYy9kZXBjb24uYyAoZGVzY3JpYmVkZXBjb24pOiBVc2UgZm9ybWF0IGFyZ3VtZW50cyB0byBtYWtlIHRoZQorCXN0cmluZ3MgbDEwbi1mcmllbmRsaWVyLgorCisyMDA3LTAyLTA0ICBKdWxpZW4gQ3Jpc3RhdSAgPGpjcmlzdGF1QGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvZHBrZy1zb3VyY2UucGwgKCRkaWZmX2lnbm9yZV9kZWZhdWx0X3JlZ2V4cCk6IEFkZAorCScuZ2l0aWdub3JlJy4KKworMjAwNy0wMS0yNCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9jb250cm9sbGliLnBsOiBNb3ZlIHN1YnN0dmFyIGluaXRpYWxpemF0aW9ucyB0byAuLi4KKwkoaW5pdF9zdWJzdHZhcnMpOiAuLi4gaGVyZS4KKworMjAwNy0wMS0yNCAgRnJhbmsgTGljaHRlbmhlbGQgIDxkanBpZ0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzLzgyMi1kYXRlLnBsOiBDb252ZXJ0IHRoZSBzY3JpcHQgdG8gYmUgYSBzaW1wbGUgd3JhcHBlcgorCWFyb3VuZCAnZGF0ZSAtUicuCisJKiBtYW4vODIyLWRhdGUuMTogODIyLWRhdGUgaXMgbm93IGRlcHJlY2F0ZWQuIERvY3VtZW50IHRoaXMgZmFjdCBpbgorCXRoZSBtYW4gcGFnZS4KKworMjAwNy0wMS0yMyAgU3ZlbiBKb2FjaGltICA8c3Zlbl9qb2FjaGltQHdlYi5kZT4KKwkgICAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogZHNlbGVjdC9oZWxwbXNncy5jYyAoaGxwX2xpc3RrZXlzKTogRml4IHVwIGFuZCBkb3duIGtleXN0cm9rZXMuCisJKGhscF9tZXRoa2V5cyk6IFJlb3JkZXIgdXAgYW5kIGRvd24ga2V5c3Ryb2tlcy4KKworMjAwNy0wMS0yMyAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDogRml4IHR5cG8gaW4gdmFyaWFibGUgbmFtZSBmcm9tICRkaXJjIHRvCisJJGRpcmNyZWF0ZSwgYW5kIGFwcGVuZCBhICIvIiBvbiBlYWNoIGxvb3AuCisKKzIwMDctMDEtMTYgIE5pY29sYXMgRnJhbsOnb2lzICA8bmljb2xhcy5mcmFuY29pc0BjZW50cmFsaWVucy5uZXQ+CisKKwkqIGNvbmZpZ3VyZS5hYzogVGhlcmUgYXJlIG5vIG1vcmUgTWFrZWZpbGVzIHRvIGdlbmVyYXRlIGluIHRoZQorCW1hbi8gc3ViZGlyZWN0b3JpZXMuCisJKiBtYW4vQy86IE1vdmUgdGhlIG1hbnBhZ2VzIHRvIHRoZSByb290IG9mIHRoZSBtYW4vIGRpcmVjdG9yeS4KKwkqIG1hbi9DL01ha2VmaWxlLmFtLCBtYW4vcG80YS5tazogVGhlIGxhbmd1YWdlcyBtYWtlZmlsZXMgYXJlIG5vCisJbW9yZSBuZWVkZWQuIEFsc28gcmVtb3ZlIHRoZSBsYW5ndWFnZSBkaXJlY3Rvcmllcy4KKwkqIG1hbi9NYWtlZmlsZS5hbTogTmV3IGJ1aWxkIHN5c3RlbS4KKwlUaGUgZ29hbCBvZiB0aGVzZSBjaGFuZ2VzIGlzIHRvIHNpbXBsaWZ5IHRoZSBidWlsZCBzeXN0ZW0gKGxlc3MKKwlmaWxlcywgbGVzcyBNYWtlZmlsZXMsIGxvd2VyIHRoZSBkZXB0aCBvZiB0aGUgZmlsZSBoaWVyYXJjaHkpLgorCisyMDA3LTAxLTE1ICBJYW4gSmFja3NvbiAgPGl3akB1YnVudHUuY29tPgorCisJKiBzcmMvcHJvY2Vzc2FyYy5jIChwcm9jZXNzX2FyY2hpdmUpOiBBZGQgYSBtaXNzaW5nIG5ld2xpbmUgdG8gYQorCXdhcm5pbmcgbWVzc2FnZS4KKworMjAwNy0wMS0xNSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLWdldHRleHQucGw6IFJlbW92ZSBkdXBsaWNhdGUgJ3VzZSBzdGF0aWMnLgorCSogc2NyaXB0cy9jbGVhbnVwLWluZm8ucGw6IFVzZSBzdGF0aWMgYW5kIHdhcm5pbmdzLgorCSogc2NyaXB0cy9kcGtnLWRpdmVydC5wbDogTGlrZXdpc2UuIERlY2xhcmUgdmFyaWFibGVzIHdpdGggJ215Jy4KKwkqIHNjcmlwdHMvZHBrZy1zdGF0b3ZlcnJpZGUucGw6IExpa2V3aXNlLgorCSogc2NyaXB0cy91cGRhdGUtYWx0ZXJuYXRpdmVzLnBsOiBMaWtld2lzZS4KKworMjAwNy0wMS0xMiAgTWFyayBSb3NlbnN0YW5kICA8bWFya0Bib3Jrd2FyZS5uZXQ+CisKKwkqIHNyYy9oZWxwLmMgKGNoZWNrcGF0aCk6IENoZWNrIGZvciB0aGUgdmFsdWUgb2YgdGhlIG1hY3JvCisJV0lUSF9TVEFSVF9TVE9QX0RBRU1PTiBpbnN0ZWFkIG9mIGl0IGJlaW5nIGRlZmluZWQuCisKKzIwMDctMDEtMTEgIFJpa3UgVm9pcGlvICA8cmlrdS52b2lwaW9AaWtpLmZpPgorCSAgICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2NvbnRyb2xsaWIucGw6IE1vdmUgdGhlIGdldGxvZ2luIGFuZCBmb3duZXIgaW5pdGlhbGl6YXRpb24KKwl0byAuLi4KKwkoZ2V0Zm93bmVyKTogLi4uaGVyZS4gTmV3IGZ1bmN0aW9uLgorCSogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDogVXNlIGdldGZvd25lcigpIGluc3RlYWQgb2YgQGZvd25lci4KKwkqIHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOiBMaWtld2lzZS4KKwkqIHNjcmlwdHMvZHBrZy1kaXN0YWRkZmlsZS5wbDogTGlrZXdpc2UuCisJKiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOiBMaWtld2lzZS4KKworMjAwNy0wMS0xMCAgSnVsaWFuIEdpbGJleSAgPGpkZ0Bwb2x5YS51a2xpbnV4Lm5ldD4KKworCSogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5zaDogQWxsb3cgJy1iJyB0byBwcm9wZXJseSBvdmVycmlkZSBhCisJcHJldmlvdXNseSBwYXNzZWQgJy1CJy4KKworMjAwNy0wMS0wOSAgTmljb2xhcyBGcmFuY29pcyAgPG5pY29sYXMuZnJhbmNvaXNAY2VudHJhbGllbnMubmV0PgorCisJKiBtYW4vQy9kcGtnLWRlYi4xOiBNYWtlIHRoZSBjb3B5cmlnaHQgbWF0Y2ggdGhlIG9uZSBmcm9tIHRoZSBzb3VyY2UuCisJKiBtYW4vQy9kcGtnLXNwbGl0LjE6IExpa2V3aXNlLgorCisyMDA3LTAxLTA5ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBjb25maWd1cmUuYWM6IEJ1bXAgdmVyc2lvbiB0byAxLjE0LjB+LgorCisyMDA3LTAxLTAyICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBjb25maWd1cmUuYWM6IFJlbGVhc2UgMS4xMy4yNS4KKworMjAwNy0wMS0wMSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbCAoQGxpYnJhcnlwYXRocyk6IEFkZCAnL2VtdWwvaWEzMi1saW51eC9saWInCisJYW5kICcvZW11bC9pYTMyLWxpbnV4L3Vzci9saWInLgorCisyMDA2LTExLTI0ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOiBBZGQgbHptYSBleHRyYWN0aW5nIHN1cHBvcnQuCisJKGNoZWNrZGlmZik6IExpa2V3aXNlLgorCShmb3JrZ3ppcHJlYWQpOiBMaWtld2lzZS4KKwkqIGxpYi9kcGtnLmggKExaTUEpOiBOZXcgbWFjcm8uCisJKGNvbXByZXNzaW9uX3R5cGUpOiBBZGQgY29tcHJlc3NfdHlwZV9sem1hLgorCSogbGliL2NvbXByZXNzaW9uLmMgKGRlY29tcHJlc3NfY2F0KTogSGFuZGxlIGNvbXByZXNzX3R5cGVfbHptYQorCWRlY29tcHJlc3Npb24uCisJKiBkcGtnLWRlYi9kcGtnLWRlYi5oIChEQVRBTUVNQkVSX0xaTUEpOiBOZXcgbWFjcm8uCisJKERBVEFNRU1CRVJfQ09NUEFUX0xaTUEpOiBMaWtld2lzZS4KKwkqIGRwa2ctZGViL2V4dHJhY3QuYyAoZXh0cmFjdGhhbGYpOiBIYW5kbGUgREFUQU1FTUJFUl9MWk1BIGFuZAorCURBVEFNRU1CRVJfQ09NUEFUX0xaTUEgbWVtYmVycy4KKworMjAwNi0xMS0yNCAgQnJlbmRhbiBPJ0RlYSAgPGJvZEBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2NvbnRyb2xsaWIucGwgKHN1YnByb2NlcnIpOiBSZXF1aXJlIFBPU0lYIGZvciBXSUZFWElURUQsCisJV0VYSVRTVEFUVVMsIFdJRlNJR05BTEVEIGFuZCBXVEVSTVNJRy4KKworMjAwNi0xMS0yNCAgVG9tYXMgUG9zcGlzZWsgIDx0cG9fZGViQHNvdXJjZXBvbGUuY2g+CisKKwkqIG1hbi9DL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuODogRG9jdW1lbnQgdGhhdCBpdCByZXF1aXJlcyBjb29wZXJhdGlvbgorCWZyb20gYWxsIHBhY2thZ2VzIGRlYWxpbmcgd2l0aCB0aGUgc2FtZSBmaWxlLgorCisyMDA2LTEwLTEzICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBjb25maWd1cmUuYWM6IEJ1bXAgdmVyc2lvbiB0byAxLjEzLjI1fi4KKworMjAwNi0xMC0xMyAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogY29uZmlndXJlLmFjOiBSZWxlYXNlIDEuMTMuMjQuCisKKzIwMDYtMTAtMTMgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGRzZWxlY3QvcGtnZGlzcGxheS5jYyAocmVsYXRlc3RyaW5ncyk6IEFkZCBhIHN0cmluZyBmb3IgdGhlIEJyZWFrcworCWZpZWxkIGFzIGl0IHNob3VsZCBtYXRjaCB0aGUgZW51bSBkZWJ0eXBlIGluICdsaWIvZHBrZy1kYi5oJy4KKworMjAwNi0xMC0xMiAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogY29uZmlndXJlLmFjOiBCdW1wIHZlcnNpb24gdG8gMS4xMy4yNH4uCisKKzIwMDYtMTAtMTIgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGNvbmZpZ3VyZS5hYzogUmVsZWFzZSAxLjEzLjIzLgorCisyMDA2LTEwLTA2ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBSRUFETUUudHJhbnNsYXRvcnM6IEFkZCByZWZlcmVuY2VzIHRvIHRoZSBuZXcgc2NyaXB0cy9wby9DaGFuZ2VMb2cKKwlmaWxlLiBTdGF0ZSB0aGF0IHRoZSBsYW5ndWFnZXMgc2hvdWxkIGJlIGxpc3RlZCBhbHBoYWJldGljYWxseSBpbgorCWRlYmlhbi9jaGFuZ2Vsb2cuCisKKzIwMDYtMDktMjkgIE5pY29sYXMgRnJhbmNvaXMgIDxuaWNvbGFzLmZyYW5jb2lzQGNlbnRyYWxpZW5zLm5ldD4KKworCSogbWFuL0MvZHBrZy1zY2Fuc291cmNlcy4xOiBGaXggYSB0eXBvLgorCisyMDA2LTA5LTI3ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBtNC9jb21waWxlci5tNDogQWRkIGEgbmV3IGxpbmUgYXQgdGhlIGVuZCBvZiB0aGUgZmlsZSwgdG8gY29wZSB3aXRoCisJYW4gYXV0b3JlY29uZiBmYWlsdXJlIGR1ZSB0byB0aGUgbmV3IG00IDEuNC43LgorCisyMDA2LTA5LTI3ICBJYW4gSmFja3NvbiAgPGl3akB1YnVudHUuY29tPgorCisJKiBkc2VsZWN0L3BrZ2RlcGNvbi5jYyAocGFja2FnZWxpc3Q6OnJlc29sdmVkZXBjb24pOiBSZWNvZ25pc2UgdGhlCisJZGVwX2JyZWFrcyBkZXBlbmRlbmN5IHR5cGUgaW4gdGhlIGRlcGVuZGVuY3kgYW5kIGNvbmZsaWN0IHJlc29sdXRpb24uCisKKzIwMDYtMDgtMTAgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGRzZWxlY3QvaGVscG1zZ3MuY2M6IFJlcGxhY2UgdGhlIGNvbW1lbnQgaGVhZGVyIGFib3V0IHRoZSBmaWxlIGJlaW5nCisJYXV0b2dlbmVyYXRlZCB3aXRoIGEgcHJvcGVyIGNvcHlyaWdodCBhbmQgbGljZW5zZSBvbmUuIFJlaW5kZW50ZWQuCisJKiBkc2VsZWN0L2hlbHBtc2dzLmg6IExpa2V3aXNlLgorCisyMDA2LTA4LTA4ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLnBsIChkcGtnbGliZGlyKTogU2V0IHRvICcuJyB3aGVyZQorCWNvbnRyb2xsaWIucGwgaXMgbG9jYXRlZC4KKwkocGtnZGF0YWRpcik6IFNldCB0byAnLi4nIHdoZXJlIGNwdXRhYmxlIGFuZCBvc3RhYmxlIGFyZSBsb2NhdGVkLgorCSogbTQvYXJjaC5tNCAoX0RQS0dfQVJDSElURUNUVVJFKTogTmV3IG1hY3JvLgorCShEUEtHX0NQVV9UWVBFKTogVXNlIF9EUEtHX0FSQ0hJVEVDVFVSRSBpbnN0ZWFkIG9mIHBhcnNpbmcgY3B1dGFibGUuCisJKERQS0dfT1NfVFlQRSk6IFVzZSBfRFBLR19BUkNISVRFQ1RVUkUgaW5zdGVhZCBvZiBwYXJzaW5nIG9zdGFibGUuCisJKERQS0dfQVJDSElURUNUVVJFKTogVXNlIF9EUEtHX0FSQ0hJVEVDVFVSRSBpbnN0ZWFkIG9mIGNvbnN0cnVjdGluZworCXRoZSB2YWx1ZSBmcm9tIGNwdV90eXBlIGFuZCBvc190eXBlLgorCisyMDA2LTA4LTA4ICBJYW4gSmFja3NvbiAgPGl3akB1YnVudHUuY29tPgorCisJKiBsaWIvZHBrZy1kYi5oIChkZXB0eXBlKTogQWRkIGRlcF9icmVha3MuCisJKiBsaWIvZmllbGRzLmMgKGZfZGVwZW5kZW5jeSk6IEJhaWwgb3V0IGlmIHRoZSBCcmVha3MgZmllbGQgaGFzIGFuCisJYWx0ZXJuYXRpdmUgdGhyb3VnaCBhICd8Jy4KKwkqIGxpYi9wYXJzZS5jIChmaWVsZGluZm9zKTogQWRkIHN1cHBvcnQgZm9yIHRoZSBCcmVha3MgZmllbGQgd2hlbgorCXBhcnNpbmcgdGhlbSBhcyBhIGRlcGVkZW5jeSBmaWVsZC4KKwkqIHNyYy9kZXBjb24uYyAoZGVzY3JpYmVkZXBjb24pOiBTdXBwb3J0IGRpc3BsYXlpbmcgdGhlIEJyZWFrcworCXJlbGF0aW9uc2hpcC4KKwkoZGVwaXNvayk6IElnbm9yZSB0aGUgQnJlYWtzIGZpZWxkIGJ5IGFkZGluZyBkZXBfYnJlYWtzIHRvIHRoZSBhc3NlcnQKKwlhbmQgcmV0dXJuaW5nIGFzIHN1Y2NlZWRlZC4KKwkqIHNyYy9wcm9jZXNzYXJjLmMgKHByb2Nlc3NfYXJjaGl2ZSk6IFByaW50IGEgbWVzc2FnZSBzdGF0aW5nIHRoYXQKKwljdXJyZW50IGRwa2cgZG9lcyBub3Qgc3VwcG9ydCB0aGUgQnJlYWtzIGZpZWxkLiBEbyBub3QgYmFpbCBvdXQgaW4KKwljYXNlIHRoZSBCcmVha3MgcmVmZXJlbmNlcyBwYWNrYWdlcyB0byBpZ25vcmUgZm9yIGRlcGVuZGVuY3kgaGFuZGxpbmcuCisJKiBzcmMvcGFja2FnZXMuYyAoZGVwZW5kZW5jaWVzX29rKTogQWRkIGEgcGxhY2UgaG9sZGVyIGNvbW1lbnQgdG8KKwliZSByZXBsYWNlZCBieSB0aGUgY29kZSB0byBwcmV2ZW50IGNvbmZpZ3VyYXRpb24gb2YgQnJva2VuIHBhY2thZ2VzLgorCisyMDA2LTA4LTA1ICBOaWNvbGFzIEZyYW5jb2lzICA8bmljb2xhcy5mcmFuY29pc0BjZW50cmFsaWVucy5uZXQ+CisKKwkqIG1hbi9DL2Rwa2ctYXJjaGl0ZWN0dXJlLjE6IFJlbW92ZSBsaW51eC1hbHBoYSBmcm9tIHRoZSBhcmNoaXRlY3R1cmUKKwl3aWxkY2FyZCBleGFtcGxlcywgYW5kIGZpeCBhIGZvcm1hdHRpbmcgaXNzdWUuCisKKzIwMDYtMDgtMDUgIE5pY29sYXMgRnJhbmNvaXMgIDxuaWNvbGFzLmZyYW5jb2lzQGNlbnRyYWxpZW5zLm5ldD4KKworCSogbWFuL0MvZHBrZy1zb3VyY2UuMTogVHlwbyBmaXguCisJKiBtYW4vQy9kcGtnLWFyY2hpdGVjdHVyZS4xOiBMaWtld2lzZS4KKworMjAwNi0wOC0wMiAgTmljb2xhcyBGcmFuY29pcyAgPG5pY29sYXMuZnJhbmNvaXNAY2VudHJhbGllbnMubmV0PgorCisJKiBtYW4vQy9kcGtnLjE6IFR5cG8gZml4LgorCSogbWFuL0MvZHBrZy1kaXZlcnQuODogTGlrZXdpc2UuCisJKiBtYW4vQy9kZWItY29udHJvbC41OiBMaWtld2lzZS4KKworMjAwNi0wNy0yOSAgTmljb2xhcyBGcmFuY29pcyAgPG5pY29sYXMuZnJhbmNvaXNAY2VudHJhbGllbnMubmV0PgorCisJKiBtYW4vQy9kcGtnLWFyY2hpdGVjdHVyZS4xOiBUeXBvIGZpeC4KKwkqIG1hbi9DL2Rwa2ctc3RhdG92ZXJyaWRlLjg6IExpa2V3aXNlLgorCisyMDA2LTA3LTI5ICBOaWNvbGFzIEZyYW5jb2lzICA8bmljb2xhcy5mcmFuY29pc0BjZW50cmFsaWVucy5uZXQ+CisKKwkqIG1hbi9DL2Rwa2ctbmFtZS4xOiBUeXBvIGZpeC4KKworMjAwNi0wNy0yNyAgTmljb2xhcyBGcmFuY29pcyAgPG5pY29sYXMuZnJhbmNvaXNAY2VudHJhbGllbnMubmV0PgorCisJKiBtYW4vQy9jbGVhbnVwLWluZm8uODogVHlwbyBmaXguCisJKiBtYW4vQy9kZWIuNTogTGlrZXdpc2UuCisJKiBtYW4vQy9kcGtnLXNjYW5wYWNrYWdlcy4xOiBMaWtld2lzZS4KKwkqIG1hbi9DL2Rwa2ctc2NhbnNvdXJjZXMuMTogTGlrZXdpc2UuCisKKzIwMDYtMDctMjMgIEhlbGdlIEtyZXV0em1hbm4gIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KKworCSogbWFuL0MvODIyLWRhdGUuMTogRml4IHRoZSBtYW5wYWdlJ3MgbW9kaWZpY2F0aW9uIGRhdGUuCisKKzIwMDYtMDctMjMgIE5pY29sYXMgRnJhbmNvaXMgIDxuaWNvbGFzLmZyYW5jb2lzQGNlbnRyYWxpZW5zLm5ldD4KKworCSogbWFuL0Mvc3RhcnQtc3RvcC1kYWVtb24uODogVHlwbyBmaXguCisKKzIwMDYtMDctMDcgIE5pY29sYXMgRnJhbsOnb2lzICA8bmljb2xhcy5mcmFuY29pc0BjZW50cmFsaWVucy5uZXQ+CisKKwkqIGRwa2ctZGViL2J1aWxkLmM6IFNwZWNpZnkgLS1udWxsIGJlZm9yZSB0aGUgLVQgb3B0aW9uIHRvIGF2b2lkCisJdGhlICJ0YXI6IC06IGZpbGUgbmFtZSByZWFkIGNvbnRhaW5zIG51bCBjaGFyYWN0ZXIiIHdhcm5pbmcuCisKKzIwMDYtMDctMjIgIEhlbGdlIEtyZXV0em1hbm4gIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KKworCSogbWFuL0Mvc3RhcnQtc3RvcC1kYWVtb24uODogVHlwbyBmaXguCisJKiBtYW4vQy91cGRhdGUtYWx0ZXJuYXRpdmVzLjg6IExpa2V3aXNlLgorCisyMDA2LTA2LTIxICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBjb25maWd1cmUuYWM6IEJ1bXAgdmVyc2lvbiB0byAxLjEzLjIzfi4KKworMjAwNi0wNi0yMSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogY29uZmlndXJlLmFjOiBSZWxlYXNlIDEuMTMuMjIuCisKKzIwMDYtMDYtMjEgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHV0aWxzL3N0YXJ0LXN0b3AtZGFlbW9uLmMgKHNpZ25hbF9zdHIsIHNjaGVkdWxlX3N0cik6IE1vdmUKKwl2YXJpYWJsZXMgaW5zaWRlIC4uLgorCShwYXJzZV9vcHRpb25zKTogLi4uIGhlcmUuCisKKzIwMDYtMDYtMjEgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHV0aWxzL3N0YXJ0LXN0b3AtZGFlbW9uLmMgKHVtYXNrX3ZhbHVlKTogTmV3IHZhcmlhYmxlLgorCShkb19oZWxwKTogUHJpbnQgaW5mb3JtYXRpb24gYWJvdXQgdGhlIG5ldyAnLS11bWFzaycgb3B0aW9uLgorCShwYXJzZV91bWFzayk6IE5ldyBmdW5jdGlvbi4KKwkocGFyc2Vfb3B0aW9ucyk6IFBhcnNlIHRoZSBuZXcgb3B0aW9uIHVzaW5nIHBhcnNlX3VtYXNrLgorCShtYWluKTogU2V0IHVtYXNrLCBhbmQgZG8gbm90IHNldCBmb3IgdGhlIGJhY2tncm91bmQgY2FzZSBpZiB3ZSBzZXQKKwlpdCBwcmV2aW91c2x5LgorCSogbWFuL0Mvc3RhcnQtc3RvcC1kYWVtb24uODogRG9jdW1lbnQgdGhlIG5ldyAnLS11bWFzaycgb3B0aW9uLgorCisyMDA2LTA2LTIxICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2NvbnRyb2xsaWIucGwgKHVzYWdlZXJyKTogRG8gbm90IG1hcmsgIiVzOiAlcyIgZm9yCisJdHJhbnNsYXRpb24uCisJKiBzY3JpcHRzL2NoYW5nZWxvZy9kZWJpYW4ucGw6IFJlbW92ZSAib3IgYXJndW1lbnQiIGZyb20gdGhlCisJInVua25vd24gb3B0aW9uIiBzdHJpbmcgdG8gbWVyZ2UgaXQgd2l0aCBvdGhlciBzaW1pbGFyIG9uZXMuCisJKiBzY3JpcHRzL2Rwa2ctZGlzdGFkZGZpbGUucGw6IFF1b3RlICclcycgaW4gdGhlICJ1bmtub3duIG9wdGlvbiIKKwlzdHJpbmcuCisJKiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOiBMaWtld2lzZS4KKwkqIHNjcmlwdHMvY2xlYW51cC1pbmZvLnBsICh1bHF1aXQpOiBQcmludCB0aGUgcHJvZ3JhbSBuYW1lLgorCUNoYW5nZSBhbGwgY2FsbGVycyB0byBub3QgcHJpbnQgdGhlIHByb2dyYW0gbmFtZSwgYW5kIG1vZGlmeSB0aGUKKwlzdHJpbmdzIHRvIG1lcmdlIHRoZW0gd2l0aCBzaW1pbGFyIG9uZXMuCisJKiBzY3JpcHRzL2Rwa2ctZGl2ZXJ0LnBsOiBDaGFuZ2Ugc3RyaW5ncyByZWZlcnJpbmcgdG8gY29tbWFuZCBsaW5lCisJYXJndW1lbnQgdG8gdXNlICclcycgaW5zdGVhZCBvZiBzdWNoIGFyZ3VtZW50LCB0aHVzIG1lcmdpbmcgdGhlbS4KKwkocXVpdCk6IERvIG5vdCBtYXJrIHRoZSBzdHJpbmcgZm9yIHRyYW5zbGF0aW9uLiBEbyBub3QgaGFyZGNvZGUgdGhlCisJcHJvZ3JhbSBuYW1lIGFuZCB1c2UgJyQwJyBpbnN0ZWFkLgorCShiYWR1c2FnZSk6IExpa2V3aXNlLiBNYWtlIGl0IGNhbGwgdXNhZ2UuCisJKiBzY3JpcHRzL2Rwa2ctc3RhdG92ZXJyaWRlLnBsOiBMaWtld2lzZS4KKwkqIHNjcmlwdHMvdXBkYXRlLWFsdGVybmF0aXZlcy5wbDogTGlrZXdpc2UuCisJKiBzY3JpcHRzL2luc3RhbGwtaW5mby5wbDogQ2FsbCBxdWl0IGluc3RlYWQgb2YgZGllIGFuZCBkbyBub3QgcHJpbnQKKwl0aGUgcHJvZ3JhbSBuYW1lLiBQcmVwZW5kICJ1bmFibGUgdG8iIHRvIG1vc3Qgb2YgdGhvc2Ugc3RyaW5ncyB0bworCW1lcmdlIHRoZW0gd2l0aCBzaW1pbGFyIG9uZXMuIEZpeCBvdGhlciBzdHJpbmdzIHRvIG1lcmdlIHRoZW0uCisJKHVscXVpdCk6IE1ha2UgaXQgY2FsbCBxdWl0IGluc3RlYWQgb2YgZGllIGFuZCBkbyBub3QgcHJpbnQgdGhlCisJcHJvZ3JhbSBuYW1lLgorCShjaGVja3BpcGUpOiBMaWtld2lzZS4KKwkocXVpdCk6IE5ldyBmdW5jdGlvbi4KKwkqIGxpYi9maWVsZHMuYyAoZl9kZXBlbmRlbmN5KTogTWFrZSBzdHJpbmdzIHVzZSAnJXMnIGluc3RlYWQgb2YKKwloYXJkY29kZWQgY2hhcmFjdGVyLCB0byBtZXJnZSBib3RoLgorCSogbGliL2RibW9kaWZ5LmMgKGNyZWF0ZWltcHRtcCk6IFF1b3RlIGFuZCBpbmNyZWFzZSB0byAyNTUgdGhlCisJcGFyYW1ldGVyICclLjI1MHMnIHRvIG1lcmdlIHRoZSBzdHJpbmcgd2l0aCB0aGUgb3RoZXIgb25lcy4KKworMjAwNi0wNi0xOCAgRnJhbmsgTGljaHRlbmhlbGQgIDxkanBpZ0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnNoOiBGaXggdGVzdGluZworCXRoZSBjb250ZW50IG9mICRzaWduaW50ZXJmYWNlIGJ5IG1vdmluZyB0aGUKKwl0ZXN0IHRvIGEgcGxhY2Ugd2hlcmUgaXQgY2FuIGFjdHVhbGx5IGZhaWwuCisJR2l2ZSB0aGUgdXNlciBhIGNvcnJlY3Qgd2FybmluZyBtZXNzYWdlIGFib3V0CisJd2hhdCB3ZSBkbyAoaS5lLiBkZWZhdWx0aW5nIHRvIHBncCBzdHlsZSkuCisKKzIwMDYtMDYtMTcgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIG1hbi9DL2Rwa2ctYXJjaGl0ZWN0dXJlLjE6IENsYXJpZnkgbmV3IC1lIGFuZCAtaSBvcHRpb25zLCBnaXZlCisJYmFja3dhcmQgY29tcGF0aWJpbGl0eSBpbmZvcm1hdGlvbiBhbmQgYWRkIHNvbWUgZXhhbXBsZXMuCisKKzIwMDYtMDYtMTcgIEZyYW5rIExpY2h0ZW5oZWxkICA8ZGpwaWdAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDogRml4IHR5cG8gaW4gcmVnZXggdGhhdCBjYXVzZWQKKwlzcHVyaW91cyB3YXJuaW5ncyBmb3IgdXNlciBkZWZpbmVkIGZpZWxkcyBldmVuIHRob3VnaCB0aGV5CisJdXNlZCB0aGUgY29ycmVjdCBYQi0gc3ludGF4LgorCisyMDA2LTA2LTE2ICBSb2JlcnQgTHViZXJkYSAgPHJvYmVydEBkZWJpYW4ub3JnPgorCisJKiBtYW4vQy9kcGtnLWRlYi4xOiBGaXggdHlwbyAoIi0tc2hvdy1mb3JtYXQiIC0+ICItLXNob3dmb3JtYXQiKS4KKworMjAwNi0wNi0xNiAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9jb250cm9sbGliLnBsIChwYXJzZWNoYW5nZWxvZyk6IE1vdmUgc3Vic3R2YXIgaW5pdGlhbGl6YXRpb24KKwl0byAuLi4KKwkoaW5pdF9zdWJzdHZhcnMpOiAuLi4gaGVyZS4gTmV3IGZ1bmN0aW9uLiBNb3ZlIHRoZSBkcGtnIHN1YnN0dmFycworCWluaXRpYWxpemF0aW9uIHRvIHRoaXMgZnVuY3Rpb24uCisJKiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOiBDYWxsIGluaXRfc3Vic3R2YXJzIGFmdGVyIHBhcnNlY2hhbmdlbG9nLgorCSogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6IFJlcGxhY2Ugc2V0dGluZyBkcGtnIHN1YnN0dmFycyB3aXRoCisJaW5pdF9zdWJzdHZhcnMuIElmIHRoZSB2ZXJzaW9uIGZpZWxkIG9yIHRoZSBvbmUgZm9yY2VkIGZyb20gY29tbWFuZAorCWxpbmUgZGlmZmVycyBmcm9tIHRoZSBzdWJzdHZhciwgYWRkIHRoZSBsYXRlciB0byB0aGUgb3V0cHV0IFNvdXJjZQorCWZpZWxkIGluc2lkZSBwYXJlbnRoZXNpcy4KKwkqIHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOiBMaWtld2lzZS4KKworMjAwNi0wNi0xNiAgQW5kcmV3IEZlcnJpZXIgIDxhbmRyZXdAbmV3LWRlc3RpbnkuY28udWs+CisJICAgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvdXBkYXRlLWFsdGVybmF0aXZlcy5wbCAodXNhZ2UpOiBDbGFyaWZ5IHRoZSBsZWdlbmQgZm9yIHRoZQorCWhlbHAgdGV4dC4KKworMjAwNi0wNi0xNiAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy91cGRhdGUtYWx0ZXJuYXRpdmVzLnBsIChjb25maWdfbWVzc2FnZSk6IFByaW50ICctLWNvbmZpZycKKwlsaXN0aW5nIGxheW91dCBldmVubHkgc3BhY2VkLgorCisyMDA2LTA2LTA3ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2Rwa2ctc2NhbnNvdXJjZXMucGw6IFJlbW92ZSBpbnZhbGlkIGNvbW1lbnQgbWVudGlvbmluZworCWRvY3VtZW50YXRpb24gYmVpbmcgYWZ0ZXIgX19FTkRfXy4KKworMjAwNi0wNi0wNyAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbCAoJGRpZmZfaWdub3JlX2RlZmF1bHRfcmVnZXhwKTogQWRkCisJJy5ienJ0YWdzJy4KKworMjAwNi0wNi0wNCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogY29uZmlndXJlLmFjOiBCdW1wIHZlcnNpb24gdG8gMS4xMy4yMn4uCisKKzIwMDYtMDYtMDQgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGNvbmZpZ3VyZS5hYzogUmVsZWFzZSAxLjEzLjIxLgorCisyMDA2LTA2LTA0ICBJYW4gSmFja3NvbiAgPGlhbkBkYXZlbmFudC5ncmVlbmVuZC5vcmcudWs+CisKKwkqIHNyYy9kZXBjb24uYyAoZm91bmRjeWNsZWJyb2tlbik6IFJlcGxhY2UgcG9zc2ktPmVkIGFyZ3VtZW50IHRvCisJZmluZGJyZWFrY3ljbGVyZWN1cnNpdmUgY2FsbCB3aXRoIGRlcGVuZGVkb24uCisJKGZpbmRicmVha2N5Y2xlcmVjdXJzaXZlKTogUmVtb3ZlIHRoZSBsYXN0IGZvdW5kY3ljbGVicm9rZW4gY2FsbAorCXdoaWNoIHdhcyB3cm9uZ2x5IHVzaW5nIHRoZSB1bnJlbGF0ZWQgcHJvdmlkZXItPmluc3RhbGxlZC5kZXBlbmRlZAorCWxpbmtlZCBsaXN0LiBSZW1vdmUgZmluZGJyZWFrY3ljbGVyZWN1cnNpdmUgY2FsbCB3aGljaCBtYXkgbGVhZCB0bworCWluZmluaXRlIHJlY3Vyc2lvbi4KKworMjAwNi0wNi0wNCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLXBhcnNlY2hhbmdlbG9nLnBsOiBQYXNzIGZvcndhcmQgdGhlICctbCcgb3B0aW9uIHRvCisJdGhlIGZvcm1hdCBwYXJzZXIuCisJKiBzY3JpcHRzL2NoYW5nZWxvZy9kZWJpYW4ucGw6IEFkZCAnLWwnIG9wdGlvbiBhbmQgc2V0ICRjaGFuZ2Vsb2dmaWxlLgorCSh1c2FnZSk6IERvY3VtZW50IHRoZSBuZXcgJy1sJyBvcHRpb24uCisJKGNsZXJyb3IpOiBQcmludCAkY2hhbmdlbG9nZmlsZSBpbnN0ZWFkIG9mICdjaGFuZ2Vsb2cnLgorCShjbHdhcm4pOiBMaWtld2lzZS4KKworMjAwNi0wNi0wMiAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9pbnN0YWxsLWluZm8ucGw6IERvIG5vdCB1c2UgRW5nbGlzaCBub24tZXNzZW50aWFsIG1vZHVsZS4KKworMjAwNi0wNi0wMiAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbCAoQGxpYnJhcnlwYXRocyk6IEFkZCAnL2xpYjMyJyBhbmQKKwknL3Vzci9saWIzMi8nLgorCisyMDA2LTA2LTAyICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzcmMvcXVlcnkuYyAoc2V0YWN0aW9uKTogUHJpbnQgYWxzbyB0aGUgc2hvcnQgY29tbWFuZCBsaW5lIGFjdGlvbi4KKwkqIHNyYy9tYWluLmMgKHNldGFjdGlvbik6IExpa2V3aXNlLgorCSogZHBrZy1kZWIvbWFpbi5jIChzZXRhY3Rpb24pOiBMaWtld2lzZS4KKwkqIGRwa2ctc3BsaXQvbWFpbi5jIChzZXRhY3Rpb24pOiBMaWtld2lzZS4KKworMjAwNi0wNS0zMSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogY29uZmlndXJlLmFjOiBCdW1wIHZlcnNpb24gdG8gMS4xMy4yMX4uCisKKzIwMDYtMDUtMzEgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGNvbmZpZ3VyZS5hYzogUmVsZWFzZSAxLjEzLjIwLgorCisyMDA2LTA1LTMxICBLb2JsaW5nZXIgRWdtb250ICA8ZWdtb250QHVodWxpbnV4Lmh1PgorCisJKiBzcmMvcHJvY2Vzc2FyYy5jIChwcm9jZXNzX2FyY2hpdmUpOiBEbyBub3QgcGFzcyB0byBwYXJzZWRiCisJcGRiX3dlYWtjbGFzc2lmaWNhdGlvbiwgc28gdGhhdCB0aGUgU2VjdGlvbiBhbmQgUHJpb3JpdHkgZmllbGRzCisJZ2V0cyB1cGRhdGVkIHdpdGggbmV3IHBhY2thZ2VzLgorCisyMDA2LTA1LTMxICBKdWxpYW4gR2lsYmV5ICA8amRnQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvY2hhbmdlbG9nL2RlYmlhbi5wbDogUmVtb3ZlIGR1cGVkIHN0cmluZyAnICwgYXQgY2hhbmdlbG9nICcuCisKKzIwMDYtMDUtMzEgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNyYy9lbnF1aXJ5LmMgKGNtcHZlcnNpb25zKTogUHJlZml4IHRoZSBiYWQgc3ludGF4IGVycm9yIHdpdGggYQorCSdkcGtnOiAnIGFuZCBwcmludCB0aGUgYm9ndXMgdmVyc2lvbiBzdHJpbmcuCisKKzIwMDYtMDUtMjUgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvaW5zdGFsbC1pbmZvLnBsOiBFeGl0IGlmIHRoZSBsb2NrIGZpbGUgYWxyZWFkeSBleGlzdHMuCisJVGhpcyBjaGFuZ2Ugd2FzIGxvc3Qgd2hlbiBkb2luZyB0aGUgaTE4biBvZiB0aGUgc2NyaXB0cy4KKworMjAwNi0wNS0yNSAgQmVuIFBmYWZmICA8YmxwQGNzLnN0YW5mb3JkLmVkdT4KKworCSogc2NyaXB0cy9pbnN0YWxsLWluZm8ucGw6IFVzZSAlISBpbnN0ZWFkIGlmICQhIHRvIGNoZWNrIGZvciBFRVhJU1QuCisJKiBtYW4vQy9pbnN0YWxsLWluZm8uODogQ29ycmVjdCBkZWZhdWx0IGluZm8gZGlyZWN0b3J5IGZvciAnLS1pbmZvZGlyJy4KKworMjAwNi0wNS0yMyAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9jb250cm9sbGliLnBsIChwYXJzZWNoYW5nZWxvZyk6IERvIG5vdCBzdHJpcCB0aGUgZXBvY2ggZnJvbQorCXRoZSBzb3VyY2U6VXBzdHJlYW0tVmVyc2lvbiBzdWJzdHZhci4KKwkqIG1hbi9DL2Rwa2ctc291cmNlLjE6IERvY3VtZW50IHRoYXQgdGhlIHNvdXJjZTpVcHN0cmVhbS1WZXJzaW9uCisJc3Vic3R2YXIgY2FuIGhhdmUgYW4gZXBvY2guCisKKzIwMDYtMDUtMjMgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvY29udHJvbGxpYi5wbCAodXNhZ2VlcnIpOiBVc2UgdXNhZ2UgaW5zdGVhZCBvZgorCXVzYWdldmVyc2lvbi4KKwkqIHNjcmlwdHMvZHBrZy1zdGF0b3ZlcnJpZGUucGwgKFVzYWdlVmVyc2lvbik6IFJlbmFtZSB0byAuLi4KKwkodXNhZ2V2ZXJzaW9uKTogLi4uIHRoaXMuCisJKiBzY3JpcHRzL2Rwa2ctcGFyc2VjaGFuZ2Vsb2cucGwgKHVzYWdldmVyc2lvbik6IFNwbGl0IGludG8gdXNhZ2UKKwlhbmQgdmVyc2lvbiBmdW5jdGlvbnMuIFByaW50IHRvIHN0ZG91dC4gU3RhbmRhcml6ZSBvdXRwdXQgZm9ybWF0LgorCUFkZCAnLS1oZWxwJyBhbmQgJy0tdmVyc2lvbicuCisJKiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOiBMaWtld2lzZS4KKwkqIHNjcmlwdHMvZHBrZy1kaXN0YWRkZmlsZS5wbDogTGlrZXdpc2UuCisJKiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDogTGlrZXdpc2UuCisJKiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDogTGlrZXdpc2UuCisJKiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOiBMaWtld2lzZS4KKwkqIHNjcmlwdHMvY2hhbmdlbG9nL2RlYmlhbi5wbDogTGlrZXdpc2UuCisJKiBzY3JpcHRzL2Rwa2ctc3RhdG92ZXJyaWRlLnBsOiBMaWtld2lzZS4gQmFzZW5hbWUgJDAuCisJKiBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLnBsOiBMaWtld2lzZS4gRG8gbm90IGJhc2VuYW1lICQwLAorCXVzZSAkcHJvZ25hbWUgaW5zdGVhZC4KKwkqIHNjcmlwdHMvZHBrZy1jaGVja2J1aWxkZGVwcy5wbDogVXNlICRwcm9nbmFtZSBpbnN0ZWFkIG9mICRtZS4KKwkobWUpOiBSZW1vdmUgdmFyaWFibGUuCisJKHVzYWdlKTogU3RhbmRhcml6ZSBvdXRwdXQgZm9ybWF0LiBQcmludCB0byBzdGRvdXQuIEFkZCAnLWgnIG9wdGlvbi4KKwkqIHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2Uuc2ggKHVzYWdldmVyc2lvbik6IFNwbGl0IGludG8KKwlzaG93dmVyc2lvbiBhbmQgdXNhZ2UgZnVuY3Rpb25zLiBQcmludCB0byBzdGRvdXQuIFN0YW5kYXJpemUgb3V0cHV0CisJZm9ybWF0LiBBZGQgJy0taGVscCcgYW5kICctLXZlcnNpb24nLgorCSh2ZXJzaW9uKTogUmVuYW1lIHZhcmlhYmxlIHRvIC4uLgorCShjaGFuZ2VzdmVyc2lvbik6IC4uLiB0aGlzLCBvdGhlcndpc2UgdGhlcmUgd2FzIG5vIHByb2dyYW0gdmVyc2lvbgorCXNob3duIG9uIG91dHB1dC4KKwkqIHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6IEJhc2VuYW1lICQwLgorCShvcHRpb25zKTogUGFzcyBhIHN1YiB0byB0aGUgaGVscCBvcHRpb24gY2FsbGluZyB1c2FnZSBhbmQgZXhpdC4KKwlBZGQgJy0tdmVyc2lvbicuCisJKHVzYWdlKTogU3dpdGNoIHZhcmlhYmxlIHRvIGEgZnVuY3Rpb24uIFByaW50IHRvIHN0ZG91dC4gU3RhbmRhcml6ZQorCW91dHB1dC4KKwkodmVyc2lvbik6IE5ldyBmdW5jdGlvbi4KKwkqIHNjcmlwdHMvZHBrZy1zY2Fuc291cmNlcy5wbCAoVmVyc2lvbik6IFJlbmFtZSB2YXJpYWJsZSB0byAuLi4KKwkodmVyc2lvbik6IC4uLiB0aGlzIChzbyBpdCB3aWxsIGJlIGF1dG9tYWl0Y2FsbHkgdXBkYXRlZCBieSB0aGUKKwlNYWtlZmlsZSkuCisJKE9wdGlvbl9zcGVjKTogUGFzcyBcJnVzYWdlIHRvIGhlbHAgb3B0aW9uIGFuZCBcJnZlcnNpb24gdG8gdmVyc2lvbi4KKwkoVXNhZ2UpOiBSZW1vdmUgdmFyaWFibGUuCisJKHZlcnNpb24pOiBOZXcgZnVuY3Rpb24uCisJKHVzYWdlKTogTW92ZSB4d2FybiBjYWxsIHRvIHdoZXJlIHRoZSBhY3R1YWwgY2hlY2sgaXMgbWFkZS4gUmVwbGFjZQorCXRoZSBkaWUgY2FsbCB3aXRoIGEgcHJpbnRmIGFuZCBhbiBleGl0LgorCSogc2NyaXB0cy9kcGtnLW5hbWUuc2g6IFN0YW5kYXJpemUgb3V0cHV0IGZvcm1hdC4KKwkqIHNjcmlwdHMvZHBrZy1kaXZlcnQucGw6IEJhc2VuYW1lICQwLgorCShzaG93dmVyc2lvbik6IFJlbmFtZSB0byAuLi4KKwkodmVyc2lvbik6IC4uLiB0aGlzLiBQcmludCB0byBzdGRvdXQuIFN0YW5kYXJpemUgb3V0cHV0IGZvcm1hdC4KKwkqIHNjcmlwdHMvdXBkYXRlLWFsdGVybmF0aXZlcy5wbDogQmFzZW5hbWUgJDAuCisJKHVzYWdldmVyc2lvbik6IFNwbGl0IGludG8gdXNhZ2UgYW5kIHZlcnNpb24gZnVuY3Rpb25zLiBQcmludCB0bworCXN0ZG91dC4gU3RhbmRhcml6ZSBvdXRwdXQgZm9ybWF0LgorCSogc2NyaXB0cy9jbGVhbnVwLWluZm8ucGw6IEJhc2VuYW1lICQwLgorCSh2ZXJzaW9uKTogUHJpbnQgdG8gc3Rkb3V0LiBTdGFuZGFyaXplIG91dHB1dCBmb3JtYXQuCisJKHVzYWdlKTogTGlrZXdpc2UuIFByaW50IG9wdGlvbiBkZXNjcmlwdGlvbnMuCisJKiBzY3JpcHRzL2luc3RhbGwtaW5mby5wbDogQmFzZW5hbWUgJDAuIEFkZCAnLS12ZXJzaW9uJy4gT24KKwlhcmd1bWVudCBlcnJvciBwcmludCBvbmx5IHVzYWdlLgorCSh2ZXJzaW9uKTogUHJpbnQgdG8gc3Rkb3V0LiBTdGFuZGFyaXplIG91dHB1dCBmb3JtYXQuCisJKHVzYWdlKTogTGlrZXdpc2UuIFByaW50IG9wdGlvbiBkZXNjcmlwdGlvbnMuCisJKiBtYW4vQy9kcGtnLXNvdXJjZS4xOiBBZGQgJy0taGVscCcgYW5kICctLXZlcnNpb24nIG9wdGlvbnMuCisJKiBtYW4vQy9kcGtnLWFyY2hpdGVjdHVyZS4xOiBMaWtld2lzZS4KKwkqIG1hbi9DL2Rwa2ctY2hlY2tidWlsZGRlcHMuMTogQWRkICctaCcgb3B0aW9uLgorCSogbWFuL0MvZHBrZy1kaXZlcnQuODogT3B0aW9uICctLWhlbHAnIGRvZXMgbm90IHByaW50IHRoZSB2ZXJzaW9uCisJYW55bW9yZS4KKwkqIG1hbi9DL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuODogTGlrZXdpc2UuCisJKiBtYW4vQy9kcGtnLXN0YXRvdmVycmlkZS44OiBMaWtld2lzZS4gQWRkICctLXZlcnNpb24nIG9wdGlvbi4KKworMjAwNi0wNS0xOSAgRGF2aWQgTG9wZXogTW9yZW5vICA8ZGF2aWQubG9wZXoubW9yZW5vQGhpc3BhbGludXguZXM+CisKKwkqIGRwa2ctZGViL2J1aWxkLmMgKGRvX2J1aWxkKTogSWYgZmFpbGluZyB0byBzdGF0IGEKKwljb25mZmlsZSBjaGVjayBmb3IgdHJhaWxpbmcgd2hpdGVzcGFjZSBpbiB0aGUgY29uZmZpbGVzCisJZmlsZSB0byBnaXZlIGEgbW9yZSB1c2VmdWwgZXJyb3IgbWVzc2FnZS4KKworMjAwNi0wNS0xOSAgUGlvdHIgRW5nZWxraW5nICA8aW5rZXJtYW40MkBnbWFpbC5jb20+CisKKwkqIGxpYi9kYXRhYmFzZS5jIChpbmZvcm1hdGl2ZSk6IERvbid0IHJlZ2FyZAorCWFyY2hpdGVjdHVyZSBpbmZvcm1hdGlvbiBhbG9uZSBhcyBpbmZvcm1hdGl2ZS4KKwkqIHNyYy9wcm9jZXNzYXJjLmMgKHByb2Nlc3NfYXJjaGl2ZSk6IEFsc28KKwlkZWxldGUgb3JpZ2luLCBidWdzIGFuZCBhcmNoaXRlY3R1cmUgaW5mb3JtYXRpb24KKwlmb3IgZGlzYXBwZWFyaW5nIHBhY2thZ2VzLgorCSogc3JjL3JlbW92ZS5jIChyZW1vdmFsX2J1bGspOiBMaWtld2lzZSBmb3IKKwlyZW1vdmVkIHBhY2thZ2VzLgorCisyMDA2LTA1LTE5ICBGcmFuayBMaWNodGVuaGVsZCAgPGRqcGlnQGRlYmlhbi5vcmc+CisKKwkqIHNyYy9oZWxwLmMgKGhhc2RpcmVjdG9yeWNvbmZmaWxlcyk6IE5ldyBmdW5jdGlvbgorCXRvIHRlc3Qgd2V0aGVyIGEgZGlyZWN0b3J5IGNvbnRhaW5zIGNvbmZmaWxlcyBvZgorCWEgZ2l2ZW4gcGFja2FnZS4KKwkqIHNyYy9tYWluLmg6IEFkZCBkZWNsYXJhdGlvbiBvZiBoYXNkaXJlY3Rvcnljb25mZmlsZXMuCisJKiBzcmMvcmVtb3ZlLmMgKHJlbW92YWxfYnVsa19yZW1vdmVfZmlsZXMpOiBEb24ndAorCWRyb3AgZGlyZWN0b3JpZXMgZnJvbSBvdXIgZmlsZSBsaXN0IHRoYXQgaG9sZAorCW91ciBjb25mZmlsZXMuCisJKHJlbW92YWxfYnVsa19yZW1vdmVfbGVmdG92ZXJfZGlycykgTGlrZXdpc2UuCisKKwkqIHV0aWxzL2Vub2VudC5jOiBBZGQgYSBjb21tZW50IGF0IHRoZSB0b3Agb2YgdGhlCisJZmlsZSBleHBsYWluaW5nIHdoeSB3ZSB1c2UgdGhpcyBvZGQgcHJvZ3JhbSBhdCBhbGwuCisKKzIwMDYtMDUtMTggIEZyYW5rIExpY2h0ZW5oZWxkICA8ZGpwaWdAZGViaWFuLm9yZz4KKworCSogbGliL3Nob3dwa2cuYyAoc2hvdzFwYWNrYWdlKTogVGVzdCB0aGUgY29ycmVjdAorCXBvaW50ZXIgYWdhaW5zdCBOVUxMIHNvIHRoYXQgYXJiaXRyYXJ5IGZpZWxkcyBnZXQKKwliZSBwcmludGVkLgorCisyMDA2LTA1LTE4ICBGcmFuayBMaWNodGVuaGVsZCAgPGRqcGlnQGRlYmlhbi5vcmc+CisKKwkqIG1hbi9DL2Rwa2ctcXVlcnkuMTogRG9jdW1lbnQgdGhhdCB1c2VyIGRlZmluZWQKKwlmaWVsZHMgY2FuIGFsc28gYmUgcHJpbnRlZCB3aXRoIC0tc2hvd2Zvcm1hdC4KKworMjAwNi0wNS0xNyAgRnJhbmsgTGljaHRlbmhlbGQgIDxkanBpZ0BkZWJpYW4ub3JnPgorCisJKiBtYW4vQy9kcGtnLjE6IFdlIGRvbid0IGFjdHVhbGx5IHNldCBEUEtHX09MRF9DT05GRklMRSBhbmQKKwlEUEtHX05FV19DT05GRklMRSBvbiBzdWJzaGVsbHMsIHNvIHdlIHNob3VsZG4ndCBjbGFpbSB0byBkbyBzby4KKworMjAwNi0wNS0xNSAgTmljb2xhcyBGcmFuw6dvaXMgIDxuaWNvbGFzLmZyYW5jb2lzQGNlbnRyYWxpZW5zLm5ldD4KKworCSogc3JjL3BhY2thZ2VzLmM6IFVzZSBmY19kZXBlbmRzdmVyc2lvbiAoc2V0IGJ5CisJLS1mb3JjZS1kZXBlbmRzLXZlcnNpb24pIHdoZW4gb25seSB0aGUgdmVyc2lvbiBvZiBhCisJZGVwZW5kZW5jeSBpcyBub3Qgc2F0aXNmaWVkLiBmY19kZXBlbmRzdmVyc2lvbiBpcyBuZXZlcgorCXVzZWQgb3RoZXJ3aXNlLgorCisyMDA2LTA1LTE1ICBOaWNvbGFzIEZyYW7Dp29pcyAgPG5pY29sYXMuZnJhbmNvaXNAY2VudHJhbGllbnMubmV0PgorCisJKiBzcmMvY29uZmlndXJlLmM6IEZsdXNoIHRoZSB0ZXJtaW5hbCdzIGlucHV0IGJlZm9yZQorCXByb21wdGluZyB0aGUgdXNlci4KKworMjAwNi0wNS0xNSAgRnJhbmsgTGljaHRlbmhlbGQgIDxkanBpZ0BkZWJpYW4ub3JnPgorCisJKiBkZWJpYW4vYXJjaHRhYmxlOiBVcGRhdGUgdG8gcmVmbGVjdCBjdXJyZW50CisJYXJjaGl2ZTogQWRkIGFtZDY0IGFuZCByZW1vdmUgc2guCisKKwkqIHNyYy9kZXBjb24uYyAoZmluZGJyZWFrY3ljbGVyZWN1cnNpdmUpOiBUcnkKKwl0byBmaW5kIGN5Y2xlcyBhbHNvIGJ5IG1vdmluZyB1cCBQcm92aWRlcyBsaW5rcy4KKworMjAwNi0wNS0xNSAgSWFuIEphY2tzb24gIDxpd2pAdWJ1bnR1LmNvbT4KKworCSogZGViaWFuL2NvbnRyb2wgKGRwa2dbRGVwZW5kc10pOiBNb3ZlCisJY29yZXV0aWxzIGRlcGVuZGVuY3kgdG8gUHJlLURlcGVuZHMgYW5kCisJZGVwZW5kIG9uID49IDUuOTMtMSB0byBlbnN1cmUgdGhhdCBtZDVzdW0KKwlpcyBwcmVzZW50LgorCSogZGViaWFuL2Rwa2cucG9zdGluc3Q6IERvbid0IGNyZWF0ZSBhCisJZGl2ZXJzaW9uIGZyb20gY29yZXV0aWwncyBtZDVzdW0uCisJKiBkZWJpYW4vZHBrZy5wcmVybTogRGVsZXRlIHRoZSBjb2RlCisJdGhhdCByZW1vdmVkIHRoZSBkaXZlcnNpb24gZ2VuZXJhdGVkCisJaW4gdGhlIHBvc3RpbnN0LiBXZSByZWx5IG9uIGNvcmV1dGlscworCXRvIGNsZWFuIHVwIHRoZSBtZXNzIHdlIGNyZWF0ZWQuCisKKzIwMDYtMDUtMTIgIEZyYW5rIExpY2h0ZW5oZWxkICA8ZGpwaWdAZGViaWFuLm9yZz4KKworCSogc3JjL21haW4uYyAoaWdub3JlZGVwZW5kcyk6IEZpeCBwYXJzaW5nIG9mIHRoZQorCS0taWdub3JlLWRlcGVuZHMgYXJndW1lbnQgdmFsdWUuCisKKwkqIGRwa2ctZGViL2luZm8uYyAoaW5mb19zcGV3KTogUHJlcGVuZCB0aGUgbmFtZSBvZiB0aGUKKwlkaXJlY3Rvcnkgd2UncmUgaW4gdG8gdGhlIGNvbnRyb2wgY29tcG9uZW50IG5hbWUuIFRoaXMKKwl3YXkgd2UgZG9uJ3Qgc3BldyBvdXQgZ2FyYmFnZSBpZiB3ZSBnZXQgYW4gYWJzb2x1dGUKKwlwYXRoIGFzIGNvbXBvbmVudCBuYW1lLgorCisJKiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOiBQcmludCB1c2FnZQorCWluZm9ybWF0aW9uIG9uIHN0ZGVyciBpbnN0ZWFkIG9mIHN0ZG91dCBpbgorCWNhc2Ugb2YgZXJyb3IuIE9ubHkgcHJpbnQgaXQgb24gc3Rkb3V0IGlmCisJcmVxdWVzdGVkIHZpYSAtaC4KKworCSogc2NyaXB0cy9kcGtnLWFyY2hpdGVjdHVyZS5wbDogQ29udmVydCBlbmNvZGluZworCW9mIHRoZSBmaWxlIGZyb20gaXNvLTg4NTktMSB0byB1dGYtOC4KKworMjAwNi0wNS0xMiAgTmljb2xhcyBGcmFuw6dvaXMgIDxuaWNvbGFzLmZyYW5jb2lzQGNlbnRyYWxpZW5zLm5ldD4sCisJICAgIEZyYW5rIExpY2h0ZW5oZWxkICA8ZGpwaWdAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLWdldHRleHQucGw6IE5ldyBtb2R1bGUuIEFjdHMgbGlrZSBhCisJd3JhcHBlciBhcm91bmQgTG9jYWxlOjpnZXR0ZXh0IHNvIHRoYXQgdGhlIHNjcmlwdHMKKwlhcmUgdXNhYmxlIHdpdGhvdXQgaXQsIHRvby4KKwkqIGRlYmlhbi9kcGtnLmluc3RhbGw6IEluc3RhbGwgZHBrZy1nZXR0ZXh0LnBsLgorCSogc2NyaXB0cy9NYWtlZmlsZS5hbSAoZGlzdF9wa2dsaWJfU0NSSVBUUyk6IEFkZCBkcGtnLWdldHRleHQucGwuCisKKwkqIHBvL1BPVEZJTEVTLmluOiBBZGQgc2NyaXB0cyBpbnN0YWxsZWQgd2l0aCBkcGtnCisJdG8gdGhlIGxpc3QuCisJKiBwby9NYWtldmFycyAoWEdFVFRFWFRfT1BUSU9OUyk6IEFkZCBfZyB0byBsaXN0IG9mIGtleXdvcmRzLgorCSogZGViaWFuL2Rwa2ctZGV2Lmluc3RhbGw6IEluc3RhbGwgLm1vIGZpbGVzLgorCSogZGViaWFuL2NvbnRyb2wgKGRwa2ctZGV2W0RlcGVuZHNdKTogQnVtcCBkZXBlbmRlbmN5IG9uIGRwa2cKKwl0byAxLjEzLjIwIHNpbmNlIGl0IG5lZWRzIGRwa2ctZ2V0dGV4dC5wbC4KKwkqIHNjcmlwdHMvY2xlYW51cC1pbmZvLnBsOiBBZGQgZ2V0dGV4dCBzdXBwb3J0LgorCSogc2NyaXB0cy9jb250cm9sbGliLnBsOiBMaWtld2lzZS4KKwkqIHNjcmlwdHMvZHBrZy1hcmNoaXRlY3R1cmUucGw6IExpa2V3aXNlLgorCSogc2NyaXB0cy9kcGtnLWNoZWNrYnVpbGRkZXBzLnBsOiBMaWtld2lzZS4KKwkqIHNjcmlwdHMvZHBrZy1kaXN0YWRkZmlsZS5wbDogTGlrZXdpc2UuCisJKiBzY3JpcHRzL2Rwa2ctZGl2ZXJ0LnBsOiBMaWtld2lzZS4KKwkqIHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOiBMaWtld2lzZS4KKwkqIHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOiBMaWtld2lzZS4KKwkqIHNjcmlwdHMvZHBrZy1wYXJzZWNoYW5nZWxvZy5wbDogTGlrZXdpc2UuCisJKiBzY3JpcHRzL2RlYmlhbi9jaGFuZ2Vsb2cucGw6IExpa2V3aXNlLgorCSogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDogTGlrZXdpc2UuCisJKiBzY3JpcHRzL2Rwa2ctc2NhbnNvdXJjZXMucGw6IExpa2V3aXNlLgorCSogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDogTGlrZXdpc2UuCisJKiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOiBMaWtld2lzZS4KKwkqIHNjcmlwdHMvZHBrZy1zdGF0b3ZlcnJpZGUucGw6IExpa2V3aXNlLgorCSogc2NyaXB0cy9pbnN0YWxsLWluZm8ucGw6IExpa2V3aXNlLgorCSogc2NyaXB0cy91cGRhdGUtYWx0ZXJuYXRpdmVzLnBsOiBMaWtld2lzZS4KKworMjAwNi0wNS0xMCAgRnJhbmsgTGljaHRlbmhlbGQgIDxkanBpZ0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnNoOiBQYXNzIGFsbAorCXJlbW90ZWx5IHNlbnNpYmxlIC1zWCBvcHRpb24gdGhyb3VnaCB0bworCWRwa2ctc291cmNlICgtc1tuc0FrdXJLVVJdKS4KKworCSogc2NyaXB0cy9jaGFuZ2Vsb2cvZGViaWFuLnBsOiBVc2Ugc2FtZSByZWdleCBmb3IKKwlkaXN0cmlidXRpb24gbmFtZXMgYXMgZm9yIHBhY2thZ2VzLiBTaW5jZSB0aGUgcG9saWN5CisJZG9lc24ndCBkZWZpbmUgdGhlc2UgbmFtZXMgdmVyeSBzdHJpY3QsIHdlIHNob3VsZCBnaXZlCisJdGhlIHVzZXIgbW9yZSBmcmVlZG9tIGhlcmUgdGhvdWdoIGFsbCBvZmZpY2lhbCBuYW1lcworCWFyZSBtYXRjaGVkIGJ5IGEgd2F5IHN0cmljdGVyIHJlZ2V4LiAoQ2hhcmFjdGVycyBub3cKKwlhbGxvd2VkIGFyZSAnKycgYW5kICcuJykuCisKKzIwMDYtMDUtMTAgIFJvYmVydCBNaWxsYW4gIDxybWhAYXliYWJ0dS5jb20+LAorCSAgICBGcmFuayBMaWNodGVuaGVsZCAgPGRqcGlnQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6IFdoZW4gY2hlY2tpbmcgdGhlCisJc2lnbmF0dXJlIG9mIGEgLmRzYyBmaWxlLCB1c2UgdGhlIERlYmlhbgorCWtleXJpbmcgaWYgYXZhaWxhYmxlLgorCisyMDA2LTA1LTEwICBGcmFuayBMaWNodGVuaGVsZCAgPGRqcGlnQGRlYmlhbi5vcmc+CisKKwkqIG1hbi9DL2Rwa2ctZGViLjE6IE1lbnRpb24gdGhlIC0tc2hvdy1mb3JtYXQgb3B0aW9uIGFsc28KKwlzZXBlcmF0bHksIG5vdCBqdXN0IGluIHRoZSBkZXNjcmlwdGlvbiBvZiAtLXNob3cuCisJUG9pbnQgdGhlIHJlYWRlciB0byB0aGUgZXhwbGFuYXRpb24gb2YgLS1zaG93LWZvcm1hdAorCWluIGRwa2ctcXVlcnkuMSB0byBhdm9pZCBoYXZpbmcgdG8gZHVwbGljYXRlIGl0LgorCisyMDA2LTA1LTEwICBGcmFuayBMaWNodGVuaGVsZCAgPGRqcGlnQGRlYmlhbi5vcmc+CisKKwkqIG1hbi9DL2Rwa2ctZGViLjE6IE1lbnRpb24gdGhlIC0tc2hvdy1mb3JtYXQgb3B0aW9uIGFsc28KKwlzZXBlcmF0bHksIG5vdCBqdXN0IGluIHRoZSBkZXNjcmlwdGlvbiBvZiAtLXNob3cuCisJUG9pbnQgdGhlIHJlYWRlciB0byB0aGUgZXhwbGFuYXRpb24gb2YgLS1zaG93LWZvcm1hdAorCWluIGRwa2ctcXVlcnkuMSB0byBhdm9pZCBoYXZpbmcgdG8gZHVwbGljYXRlIGl0LgorCisJKiBtYW4vQy9kcGtnLXNjYW5wYWNrYWdlcy4xOiBBZGQgcmVtYXJrIHRoYXQgYXB0IGlnbm9yZXMKKwl1bmNvbXByZXNzZWQgUGFja2FnZXMgZmlsZXMgb24gbm9uLWxvY2FsIGFjY2Vzcy4KKwkqIG1hbi9DL2Rwa2ctc2NhbnNvdXJjZXMuMTogTGlrZXdpc2UgKHdpdGggU291cmNlcyBpbnN0ZWFkIG9mCisJUGFja2FnZXMgZmlsZXMgb2YgY291cnNlKS4KKworMjAwNi0wNS0xMCAgTmljb2xhcyBGcmFuw6dvaXMgIDxuaWNvbGFzLmZyYW5jb2lzQGNlbnRyYWxpZW5zLm5ldD4KKworCSogbGliL3Nob3dwa2cuYyAoc2hvdzFwYWNrYWdlKTogSG9ub3VyIHRoZSByZXF1ZXN0ZWQgdGFiYmluZworCW9mIGZpZWxkcyBldmVuIGlmIHRoZXkgYXJlIGVtcHR5LgorCisyMDA2LTA1LTA0ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBjb25maWd1cmUuYWM6IEJ1bXAgdmVyc2lvbiB0byAxLjEzLjIwfi4KKworMjAwNi0wNS0wNCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogY29uZmlndXJlLmFjOiBSZWxlYXNlIDEuMTMuMTkuCisKKzIwMDYtMDUtMDQgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIG1hbi9DL2Rwa2ctZGl2ZXJ0Ljg6IEVzY2FwZSBoeXBoZW5zIHVzZWQgaW4gY29tbWFuZCBsaW5lLgorCSogbWFuL0MvZHBrZy1hcmNoaXRlY3R1cmUuMTogTGlrZXdpc2UuCisJKiBtYW4vQy9kcGtnLXN0YXRvdmVycmlkZS44OiBMaWtld2lzZS4KKworMjAwNi0wNS0wNCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6IERvIG5vdCB1c2UgJHZlcnNpb24gdG8gcmVmZXIgdG8gdGhlCisJc291cmNlIHBhY2thZ2UgdmVyc2lvbiwgYXMgaXQgZGVub3RlcyB0aGUgZHBrZyB2ZXJzaW9uLgorCisyMDA2LTA1LTA0ICBOaWNvbGFzIEZyYW7Dp29pcyAgPG5pY29sYXMuZnJhbmNvaXNAY2VudHJhbGllbnMubmV0PiwKKwkgICAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9pbnN0YWxsLWluZm8ucGw6IFVzZSB0aGUgbnVtZXJpY2FsIHZhbHVlIG9mICQhIGluc3RlYWQgb2YKKwl0aGUgc3RyaW5nIHdoZW4gY2hlY2tpbmcgaWYgdGhlIGxvY2tpbmcgZXJyb3Igd2FzIGR1ZSB0byBhbiBhbHJlYWR5CisJZXhpc3RpbmcgZmlsZSwgd2hpY2ggaXMgbG9jYWxlIGRlcGVuZGVudCwgYW5kIGRpZSBhY2NvcmRpbmdseS4KKworMjAwNi0wNS0wNCAgTmljb2xhcyBGcmFuw6dvaXMgIDxuaWNvbGFzLmZyYW5jb2lzQGNlbnRyYWxpZW5zLm5ldD4KKworCSogc2NyaXB0cy9pbnN0YWxsLWluZm8ucGw6IEFkZCBhIG5ldyBsaW5lIGFmdGVyIGFkZGluZyB0aGUgbGFzdAorCWVudHJ5IGF0IHRoZSBlbmQgb2YgdGhlIGRpciBmaWxlLCB3aGljaCBtYWtlcyB0aGUgaW5mbyByZWFkZXJzCisJYWJsZSB0byBzZWUgdGhvc2UgbGFzdCBlbnRyaWVzLgorCisyMDA2LTA1LTA0ICBXYXluZSBEYXZpc29uICA8d2F5bmVkQHVzZXJzLnNvdXJjZWZvcmdlLm5ldD4sCisJICAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9pbnN0YWxsLWluZm8ucGw6IE1ha2UgJy0tZGlyLWZpbGUnIG9wdGlvbiBjb21wYXRpYmxlCisJd2l0aCBHTlUgaW5zdGFsbC1pbmZvIGJ5IHJlbmFtaW5nIHRoZSBpbmZvZGlyIHZhcmlhYmxlIHRvIGRpcmZpbGUKKwlhbmQgbm90IGFwcGVuZGluZyB0aGUgJy9kaXInIHN0cmluZyBleGNlcHQgd2hlbiBpbml0aWFsaXppbmcgZnJvbQorCSctLWluZm8tZGlyJyBvciAnLS1pbmZvZGlyJy4KKworMjAwNi0wNS0wNCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6IFVzZSB0aGUgc291cmNlOlZlcnNpb24gc3Vic3R2YXIgd2hlbgorCXNldHRpbmcgdGhlIFNvdXJjZSBmaWVsZCB2ZXJzaW9uLCBpbiBjYXNlIHRoZSBiaW5hcnkgcGFja2FnZQorCWhhcyBhIGRpZmZlcmVudCBvbmUgZnJvbSB0aGUgc291cmNlIHBhY2thZ2UuCisKKzIwMDYtMDUtMDIgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHV0aWxzL3N0YXJ0LXN0b3AtZGFlbW9uLmMgKGRvX2hlbHApOiBTdGFuZGFyaXplIG91dHB1dCBmb3JtYXQuCisKKzIwMDYtMDUtMDIgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGRzZWxlY3QvbWFpbi5jYyAodXNhZ2UpOiBTcGxpdCBzdHJpbmcgYW5kIGFsaWduIHNvIGR1cGVkIHN0cmluZ3MgZ2V0CisJbWVyZ2VkLgorCSogZHBrZy1kZWIvbWFpbi5jICh1c2FnZSk6IExpa2V3aXNlLgorCSogZHBrZy1zcGxpdC9tYWluLmMgKHVzYWdlKTogTGlrZXdpc2UuCisJKiBzcmMvcXVlcnkuYyAodXNhZ2UpOiBMaWtld2lzZS4KKwkqIHNyYy9tYWluLmMgKHVzYWdlKTogTGlrZXdpc2UuCisKKzIwMDYtMDUtMDIgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOiBSZW5hbWUgZHBrZzpVcHN0cmVhbVZlcnNpb24gdG8KKwlkcGtnOlVwc3RyZWFtLVZlcnNpb24uIE1ha2UgZHBrZzpWZXJzaW9uIGFuZCBkcGtnOlVwc3RyZWFtLVZlcnNpb24KKwlnZXQgdGhlIGN1cnJlbnQgZHBrZyB2ZXJzaW9ucyBpbnN0ZWFkIG9mIHRoZSBwYWNrYWdlIGJlaW5nIGJ1aWx0LgorCSogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6IExpa2V3aXNlLgorCSogbWFuL0MvZHBrZy1zb3VyY2UuMTogUmVuYW1lIGRwa2c6VXBzdHJlYW1WZXJzaW9uIHRvCisJZHBrZzpVcHN0cmVhbS1WZXJzaW9uLgorCisyMDA2LTA1LTAyICBLZW4gQmxvb20gIDxrYmxvb21AZ21haWwuY29tPiwKKwkgICAgSmVyb2VuIHZhbiBXb2xmZmVsYWFyICA8amVyb2VuQHdvbGZmZWxhYXIubmw+LAorCSAgICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2NvbnRyb2xsaWIucGwgKHBhcnNlY2hhbmdlbG9nKTogQWRkIG5ldyBzb3VyY2U6VmVyc2lvbiwKKwlzb3VyY2U6VXBzdHJlYW0tVmVyc2lvbiBhbmQgYmluYXJ5OlZlcnNpb24gc3Vic3R2YXJzLgorCSogbWFuL0MvZHBrZy1zb3VyY2UuMTogRG9jdW1lbnQgbmV3IHNvdXJjZTpWZXJzaW9uLAorCXNvdXJjZTpVcHN0cmVhbS1WZXJzaW9uIGFuZCBiaW5hcnk6VmVyc2lvbiBzdWJzdHZhcnMuCisKKzIwMDYtMDQtMjkgIEp1c3RpbiBQcnl6YnkgIDxqdXN0aW5wcnl6YnlAdXNlcnMuc291cmNlZm9yZ2UubmV0PgorCisJKiBzcmMvZmlsZXNkYi5jOiBGaXggYSB0eXBvICh1bmV4ZWNwdGVkIC0+IHVuZXhwZWN0ZWQpLgorCisyMDA2LTA0LTIxICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzcmMvcXVlcnkuYyAoZW5xcGVycGFja2FnZSk6IENoYW5nZSBkeW5hbWljYWxseSBjb25zdHJ1Y3RlZAorCWdyYW1tYXIgdG8gcHJvcGVyIHNlbnRlbmNlcy4KKwkqIHNyYy9wYWNrYWdlcy5jIChkZXBwb3NzaV9va19mb3VuZCk6IExpa2V3aXNlLgorCSogc3JjL21haW4uYyAoY29tbWFuZGZkKTogRG8gbm90IHVzZSBkaWdpdHMsIHVzZSB0ZXh0dWFsIG51bWJlcnMuCisJKiBsaWIvZGJtb2RpZnkuYyAoY3JlYXRlaW1wdG1wKTogVXNlIHByb3BlciB2ZXJiIGZvcm1zLgorCSogbGliL3Nob3djcmlnaHQuYyAoc2hvd2NvcHlyaWdodCk6IFJlbW92ZSB0cmFpbGluZyBzcGFjZSBmcm9tIHN0cmluZy4KKwkqIGxpYi9wYXJzZWhlbHAuYyAoaWxsZWdhbF9wYWNrYWdlbmFtZSk6IENsYXJpZnkgd2hhdCBpcyB0aGUgbGFzdCAnJXMnLgorCSogZHBrZy1kZWIvZXh0cmFjdC5jIChtb3ZlY29udHJvbGZpbGVzKTogTGlrZXdpc2UuCisJKGV4dHJhY3RoYWxmKTogRG8gbm90IHVzZSBhYmJyZXZpYXRpb25zIGluIHRoZSBzdHJpbmdzLgorCisyMDA2LTA0LTIxICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzcmMvbWFpbi5jIChwcmludGZvcmhlbHAsIHNldGRlYnVnLCBzZXRmb3JjZSk6IFF1b3RlIGVhY2ggc3RyaW5nCisJbGluZSBpbnN0ZWFkIG9mIGVzY2FwaW5nIGl0cyBuZXcgbGluZSBhdCB0aGUgZW5kLgorCisyMDA2LTA0LTE5ICBOaWNvbGFzIEZyYW5jb2lzICA8bmljb2xhcy5mcmFuY29pc0BjZW50cmFsaWVucy5uZXQ+CisKKwkqIG1hbi9DL2luc3RhbGwtaW5mby44OiBBZGQgYSBtaXNzaW5nIHF1b3RlIGFyb3VuZCB0aGUgZGF0ZS4KKwkqIG1hbi9DL2Rwa2ctc291cmNlLjE6IEFkZCBhIHJlZmVyZW5jZSB0byB0aGUgRGViaWFuIFBvbGljeSBNYW51YWwKKwlmb3IgYSBkZXRhaWxlZCBkZXNjcmlwdGlvbiBvZiB0aGUgc2hsaWJzIGZvcm1hdC4KKwlUaGFua3MgdG8gUnVzcyBBbGxiZXJ5LgorCisyMDA2LTA0LTE2ICBOaWNvbGFzIEZyYW5jb2lzICA8bmljb2xhcy5mcmFuY29pc0BjZW50cmFsaWVucy5uZXQ+CisKKwkqIG1hbi9DL2Rwa2ctc291cmNlLjE6IERvY3VtZW50IHRoZSBzaGxpYnMubG9jYWwgZm9ybWF0LgorCisyMDA2LTA0LTExICBGcmFuayBMaWNodGVuaGVsZCAgPGRqcGlnQGRlYmlhbi5vcmc+CisKKwkqIHNyYy9hcmNoaXZlcy5jIChxdW90ZV9maWxlbmFtZSk6IEZpeCB0eXBvIGluCisJdmFyaWFibGUgbmFtZS4gSWYgaGl0LCB0aGlzIGNvdWxkIGxlYWQgdG8gYQorCWluZmluaXRlIGxvb3AgYW5kIE9PTSBpbiB2YXJidWZ2cHJpbnRmLiAoQQorCWdvb2Qgd2F5IHRvIGhpdCBpdCBpcyBpbnN0YWxsaW5nIGZpbGVzIHdpdGgKKwlsb25nIG5vbi1BU0NJSSBmaWxlbmFtZXMgaW4gVVRGLTggbG9jYWxlcykuCisJRml4ZWQgYWxzbyBzb21lIHR5cG9zIGluIHRoZSBjb21tZW50IGZvciB0aGlzCisJZnVuY3Rpb24uCisKKwkqIHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6IEFkZCAtZm9sbG93CisJdG8gQGZpbmRfYXJncy4gVGhpcyB3YXMgbG9zdCBpbiBhIHByZXZpb3VzIHBhdGNoCisJYXBwYXJlbnRseS4KKworMjAwNi0wNC0xMCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogY29uZmlndXJlLmFjOiBCdW1wIHZlcnNpb24gdG8gMS4xMy4xOX4uCisKKzIwMDYtMDQtMTAgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGNvbmZpZ3VyZS5hYzogUmVsZWFzZSAxLjEzLjE4LgorCisyMDA2LTA0LTEwICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBtYW4vQy9kcGtnLjE6IERvY3VtZW50IHRoZSBuZXcgd2F5IHRvIHJlcGxpY2F0ZSB0aGUgcGFja2FnZSBzdGF0dXMKKwl0byBhbm90aGVyIGluc3RhbGxhdGlvbiBieSB1c2luZyAnLS1jbGVhci1zZWxlY3Rpb25zJy4KKworMjAwNi0wNC0xMCAgQW5kcmV3IFN1ZmZpZWxkICA8YXN1ZmZpZWxkQGRlYmlhbi5vcmc+CisKKwkqIHNyYy9tYWluLmggKGNsZWFyc2VsZWN0aW9ucyk6IE5ldyBwcm90b3R5cGUuCisJKiBzcmMvbWFpbi5jICh1c2FnZSk6IFByaW50ICctLWNsZWFyLXNlbGVjdGlvbnMnIG9wdGlvbiBkZXNjcmlwdGlvbi4KKwkoY21kaW5mb3MpOiBBZGQgY2xlYXItc2VsZWN0b25zIGFjdGlvbi4KKwkqIHNyYy9zZWxlY3QuYyAoY2xlYXJzZWxlY3Rpb25zKTogTmV3IGZ1bmN0aW9uLgorCSogbWFuL0MvZHBrZy4xOiBEb2N1bWVudCB0aGUgbmV3ICctLWNsZWFyLXNlbGVjdGlvbnMnIG9wdGlvbi4KKworMjAwNi0wNC0xMCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc3JjL21haW4uaCAoZmNfYXV0b3NlbGVjdCk6IFJlbW92ZS4KKwkqIHNyYy9tYWluLmMgKGZjX2F1dG9zZWxlY3QpOiBMaWtld2lzZS4KKwkoZm9yY2VpbmZvcyk6IE1hcmsgJ2F1dG8tc2VsZWN0JyBhcyBvYnNvbGV0ZS4KKwkoc2V0Zm9yY2UpOiBSZW1vdmUgbWVudGlvbiBvZiAnYXV0by1zZWxlY3QnIGZyb20gdGhlIGhlbHAgdGV4dC4KKwlIYW5kbGUgb2Jzb2xldGUgb3B0aW9ucywgYW5kIGRpc3BsYXkgYSB3YXJuaW5nLgorCSogbWFuL0MvZHBrZy4xOiBSZW1vdmUgbWVudGlvbiBvZiBvYnNvbGV0ZSBmb3JjZS9yZWZ1c2UgJ2F1dG8tc2VsZWN0JworCW9wdGlvbi4KKworMjAwNi0wNC0wOSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogbWFuL0MvZHBrZy4xOiBEb2N1bWVudCB0aGF0ICctLWdldC1zZWxlY3Rpb25zJyB3aXRob3V0IGEgcGF0dGVybgorCXdpbGwgbm90IGxpc3QgcGFja2FnZXMgaW4gc3RhdGUgcHVyZ2UuCisJKiBtYW4vQy9kcGtnLXF1ZXJ5LjE6IERvY3VtZW50IHRoYXQgJy1sJyB3aXRob3V0IGEgcGF0dGVybiB3aWxsIG5vdAorCWxpc3QgcGFja2FnZXMgaW4gc3RhdGUgcHVyZ2UuCisKKzIwMDYtMDQtMDkgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6IFN1cHBvcnQgc3lzdGVtIGxpYnJhcnkgZGlyZWN0b3JpZXMKKwlzeW1saW5rZWQgZnJvbSAnL2xpYi9sZGNvbmZpZy8nLgorCisyMDA2LTA0LTA5ICBCcmFuZGVuIFJvYmluc29uICA8YnJhbmRlbkBkZWJpYW4ub3JnPiwKKyAgICAgICAgICAgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNyYy9tYWluLmMgKGV4ZWNiYWNrZW5kKTogUGFzcyAnLS1hZG1pbmRpcicgb3ZlciB0byBkcGtnLXF1ZXJ5CisJd2hlbiBwYXNzaW5nICctLWFkbWluZGlyJyBvciAnLS1yb290JyB0byBkcGtnLgorCisyMDA2LTA0LTA0ICBBbmRyZXcgU3VmZmllbGQgIDxhc3VmZmllbGRAZGViaWFuLm9yZz4KKworCSogZHBrZy1idWlsZHBhY2thZ2Uuc2g6IFVzZSBtdXN0c2V0dmFyIHRvIHNldCBzdmVyc2lvbiB2YXJpYWJsZS4KKworMjAwNi0wNC0wNCAgSmFyZWQgU3BpZWdlbCAgPGpycnNAZnJvbnRpZXJuZXQubmV0PgorCisJKiB1dGlscy9zdGFydC1zdG9wLWRhZW1vbi5jIChkb19oZWxwKTogQWRkICctcicgb3B0aW9uIHRvIHRoZSBoZWxwCisJb3V0cHV0LgorCisyMDA2LTA0LTA0ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiB1dGlscy9zdGFydC1zdG9wLWRhZW1vbi5jIChtYWluKTogUHJlZml4IHRoZSBjaHJvb3QgcGF0aCwgaWYgYW55LAorCXdoZW4gc3RhdGluZyB0aGUgZXhlYyBmaWxlLgorCisyMDA2LTAzLTMwICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzcmMvbWFpbi5jIChzZXRmb3JjZSk6IEFkZCBhICdbIV0nIG5leHQgdG8gJ2FsbCcgdG8gZGVub3RlIHRoYXQKKwknLS1mb3JjZS1hbGwnIGlzIGRhbmdlcm91cy4KKworMjAwNi0wMy0yMCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogY29uZmlndXJlLmFjOiBCdW1wIHZlcnNpb24gdG8gMS4xMy4xOH4uCisKKzIwMDYtMDMtMjAgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGNvbmZpZ3VyZS5hYzogUmVsZWFzZSAxLjEzLjE3LgorCisyMDA2LTAzLTIwICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiB1dGlscy9zdGFydC1zdG9wLWRhZW1vbi5jIFtPU0xpbnV4XSAocGlkX2lzX2V4ZWMpOiBSZXZlcnQgYmFjayB0bworCXRha2UgYSBzdHJ1Y3Qgc3RhdCBpbnN0ZWFkIG9mIGFuIGV4ZWNuYW1lLiBHZXQgdGhlIGZpbGVuYW1lIHBvaW50ZWQKKwlieSB0aGUgJy9wcm9jLzxwaWQ+L2V4ZScgc3ltbGluaywgc3RyaXAgYW55ICcgKGRlbGV0ZWQpJyBzdHJpbmcsIGFuZAorCXN0YXQgdGhhdCBmaWxlbmFtZSBjb21wYXJpbmcgdGhlIHJlc3VsdCB3aXRoIHRoZSBuZXcgYXJndW1lbnQuCisKKzIwMDYtMDMtMTUgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvY29udHJvbGxpYi5wbC5pbjogUmVuYW1lIHRvIC4uLgorCSogc2NyaXB0cy9jb250cm9sbGliLnBsOiAuLi4gdGhpcy4KKwkoZGViaWFuX2FyY2hfZXhwYW5kKTogUmVtb3ZlIGZ1bmN0aW9uLiBGaXggYWxsIGNhbGxlcnMuCisJKHBrZ2RhdGFkaXIsIHJlYWRfY3B1dGFibGUsIHJlYWRfb3N0YWJsZSk6IE1vdmUgdG8gLi4uCisJKiBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLnBsOiAuLi4gaGVyZS4KKwkqIHNjcmlwdHMvTWFrZWZpbGUuYW0gKCUucGwpOiBSZW1vdmUgcnVsZS4KKworMjAwNi0wMy0wNSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9jb250cm9sbGliLnBsLmluIChxdWlldF93YXJuaW5ncyk6IE5ldyB2YXJpYWJsZS4KKwkod2Fybik6IERvIG5vdCBwcmludCBpZiBxdWlldF93YXJuaW5ncy4KKwkqIGRwa2ctc291cmNlLnBsICh1c2FnZXZlcnNpb24pOiBEb2N1bWVudCBuZXcgb3B0aW9uIGAtcScuCisKKzIwMDYtMDMtMDUgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGRlYmlhbi9jb250cm9sIChCdWlsZC1EZXBlbmRzKTogRG8gbm90IGRlcGVuZCBvbiBsaWJzZWxpbnV4MS1kZXYKKwlpbiBHTlUva0ZyZWVCU0QgYW1kNjQuCisKKzIwMDYtMDMtMDQgIENocmlzdGlhbiBQZXJyaWVyICA8YnVidWxsZUBkZWJpYW4ub3JnPgorCisJKiBtYW4vQy9kcGtnLWFyY2hpdGVjdHVyZS4xOiBUeXBvIGNvcnJlY3Rpb25zLgorCSogbWFuL0MvZHBrZy1jaGVja2J1aWxkZGVwcy4xOiBMaWtld2lzZS4KKwkqIG1hbi9DL2Rwa2ctbmFtZS4xOiBMaWtld2lzZS4KKwkqIG1hbi9DL2Rwa2ctc291cmNlLjE6IExpa2V3aXNlLgorCSogbWFuL0MvZGViLWNvbnRyb2wuNTogTGlrZXdpc2UuCisKKzIwMDYtMDItMjggIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIG1hbi9DL2Rwa2cuMSAoU0VFIEFMU08pOiBBZGQgZHBrZy1xdWVyeSgxKS4KKworMjAwNi0wMi0yOCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogbWFuL0MvODIyLWRhdGUuMTogTG93ZXIgY2FzZSB0aXRsZSBoZWFkZXIuIFB1dCBvcHRpb25zIGluIGJvbGQsCisJZmlsZXMgYW5kIGFyZ3VtZW50cyB0byBvcHRpb25zIGluIGl0YWxpYy4gRXNjYXBlIGh5cGhlbnMgdXNlZCBpbgorCWNvbW1hbmQgbGluZS4gVW5lc2NhcGUgZGFzaGVzLiBSZW1vdmUgc3BhY2VzIGFmdGVyIGZ1bGwgc3RvcHMgYW5kCisJYWZ0ZXIgZW5kIG9mIGxpbmUuIFNlcGFyZXRlIHNlY3Rpb25zIHdpdGggYSBkb3QuIERvIG5vdCBwdXQgdGhlCisJbWFucGFnZSBzZWN0aW9uIG51bWJlciBpbiBib2xkLgorCSogbWFuL0MvY2xlYW51cC1pbmZvLjg6IExpa2V3aXNlLgorCSogbWFuL0MvZGViLjU6IExpa2V3aXNlLgorCSogbWFuL0MvZGViLWNvbnRyb2wuNTogTGlrZXdpc2UuCisJKiBtYW4vQy9kZWItb2xkLjU6IExpa2V3aXNlLgorCSogbWFuL0MvZHBrZy4xOiBMaWtld2lzZS4KKwkqIG1hbi9DL2Rwa2cuY2ZnLjU6IExpa2V3aXNlLgorCSogbWFuL0MvZHBrZy1jaGVja2J1aWxkZGVwcy4xOiBMaWtld2lzZS4KKwkqIG1hbi9DL2Rwa2ctZGViLjE6IExpa2V3aXNlLgorCSogbWFuL0MvZHBrZy1kaXZlcnQuODogTGlrZXdpc2UuCisJKiBtYW4vQy9kcGtnLW5hbWUuMTogTGlrZXdpc2UuCisJKiBtYW4vQy9kcGtnLXF1ZXJ5LjE6IExpa2V3aXNlLgorCSogbWFuL0MvZHBrZy1zY2FucGFja2FnZXMuMTogTGlrZXdpc2UuCisJKiBtYW4vQy9kcGtnLXNvdXJjZS4xOiBMaWtld2lzZS4KKwkqIG1hbi9DL2Rwa2ctc3BsaXQuMTogTGlrZXdpc2UuCisJKiBtYW4vQy9kcGtnLXN0YXRvdmVycmlkZS44OiBMaWtld2lzZS4KKwkqIG1hbi9DL2RzZWxlY3QuMTogTGlrZXdpc2UuCisJKiBtYW4vQy9kc2VsZWN0LmNmZy41OiBMaWtld2lzZS4KKwkqIG1hbi9DL2luc3RhbGwtaW5mby44OiBMaWtld2lzZS4KKwkqIG1hbi9DL3N0YXJ0LXN0b3AtZGFlbW9uLjg6IExpa2V3aXNlLgorCSogbWFuL0MvdXBkYXRlLWFsdGVybmF0aXZlcy44OiBMaWtld2lzZS4KKwkqIG1hbi9DL2Rwa2ctc2NhbnNvdXJjZXMuMTogTGlrZXdpc2UuIFJlbW92ZSAnLklYJyBlbnRyaWVzLgorCSogbWFuL0MvZHBrZy1hcmNoaXRlY3R1cmUuMTogTGlrZXdpc2UuIFNwbGl0IG1vc3Qgb2YgdGhlIGJvZHkgb2YgdGhlCisJc2VjdGlvbiBERVNDUklQVElPTiBpbnRvIE9QVElPTlMgYW5kIEFDVElPTlMuCisKKzIwMDYtMDItMjggIE1hdHQgS3JhYWkgIDxrcmFhaUBmdGJmcy5vcmc+CisKKwkqIHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOiBGaXggdHlwbyAob2Njb3VyZWQgLT4gb2NjdXJyZWQpLgorCSogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDogTGlrZXdpc2UuCisKKzIwMDYtMDItMjAgIE1hdHQgS3JhYWkgIDxrcmFhaUBmdGJmcy5vcmc+CisKKwkqIG1hbi9DL2Rwa2ctc291cmNlLjE6IEFkZCBtaXNzaW5nIHBhcmVudGhlc2VzIGFyb3VuZCBtYW5wYWdlCisJc2VjdGlvbiBudW1iZXIuCisKKzIwMDYtMDItMTkgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHBvL1JFQURNRS50cmFuc2xhdG9yczogTW92ZSB0byAuLi4KKwkqIFJFQURNRS50cmFuc2xhdG9yczogLi4uIGhlcmUuIEZvcm1hdHRpbmcgZml4ZXMuIFVwZGF0ZSB0byByZWZlcgorCXRvIGxhdGVzdCBuZXcgQ2hhbmdlTG9nIGZpbGVzLCBhbmQgcnVsZXMuCisKKzIwMDYtMDItMTkgIEZyYW5rIExpY2h0ZW5oZWxkICA8ZGpwaWdAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDogRml4IG9wdGlvbgorCXBhcnNpbmcgb2YgYXJjaCBvcHRpb24uIEFsc28gZml4IGEgbWlzdGFrZQorCWluIGNvbnN0cnVjdGluZyBAZmluZF9hcmdzLgorCisyMDA2LTAyLTE4ICBGcmFuayBMaWNodGVuaGVsZCAgPGRqcGlnQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOiBDYWxsIHBhcnNlZGVwCisJd2l0aCB1c2VfYXJjaCBhbmQgcmVkdWNlX2FyY2ggcGFyYW1ldGVycyB0bworCWFsbG93IHVzaW5nIGFyY2hpdGVjdHVyZXMgaW4gZGVwZW5kZW5jeQorCWZpZWxkcyBvZiBiaW5hcnkgcGFja2FnZXMgaW4gZGViaWFuL2NvbnRyb2wuCisKKwkqIHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOiBGaXggaGFuZGxpbmcgb2YKKwlkZWJpYW4vZmlsZXMgd2hlbiBhcmNoaXRlY3R1cmUgaXMgc2V0IHZpYSAtRAorCWNvbW1hbmQgbGluZSBvcHRpb24uIFRoZSB2YWx1ZSBvdmVycmlkZSB3YXMKKwlhcHBsaWVkIHRvbyBsYXRlLgorCisJKiBjb25maWd1cmUuYWM6IEJ1bXAgdmVyc2lvbiB0byAxLjEzLjE3fi4KKworCSogY29uZmlndXJlLmFjOiBSZWxlYXNlIDEuMTMuMTYuCisKKzIwMDYtMDItMTggIEEuIENvc3RhICA8YWdjb3N0YUBnaXMubmV0PgorCisJKiBtYW4vQy9kcGtnLWRlYi4xOiBUeXBvIGZpeC4KKwkqIG1hbi9DL2Rwa2ctc3RhdG92ZXJyaWRlLjg6IExpa2V3aXNlLgorCSogbWFuL0MvaW5zdGFsbC1pbmZvLjg6IExpa2V3aXNlLgorCSogbWFuL0Mvc3RhcnQtc3RvcC1kYWVtb24uODogTGlrZXdpc2UuCisJKiBtYW4vQy91cGRhdGUtYWx0ZXJuYXRpdmVzLjg6IExpa2V3aXNlLgorCSogbWFuL0MvZHBrZy4xOiBMaWtld2lzZS4KKwkqIG1hbi9DL2Rwa2cuY2ZnLjU6IExpa2V3aXNlLgorCisyMDA2LTAyLTE3ICBGcmFuayBMaWNodGVuaGVsZCAgPGRqcGlnQGRlYmlhbi5vcmc+CisKKwkqIG1hbi9DaGFuZ2VMb2c6IFN0YXJ0IGFuIG93biBjaGFuZ2Vsb2cgZm9yIHRoZQorCW1hbnBhZ2VzLgorCisJKiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOiBGaXggb3ZlcnJpZGUgaGFuZGxpbmcKKwl3aGljaCB3YXMgYnJva2VuIGJ5IHRoZSBsYXRlc3QgY2hhbmdlcy4KKworCSogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6IE1ha2UgLWlzcCB0aGUgZGVmYXVsdAorCWJlaGF2aW91ci4KKwkqIG1hbi9DL2Rwa2ctc291cmNlLjE6IERvY3VtZW50IHRoZSBiZWhhdmlvdXIKKwljaGFuZ2UgaW4gZHBrZy1nZW5jb250cm9sLgorCisJKiBtYW4vTWFrZWZpbGUuYW0gKHVwZGF0ZXBvKTogTmV3IHRhcmdldCB0aGF0IGNhbGxzCisJJ21ha2UgdXBkYXRlcG8nIGluIGFsbCBzdWJkaXJlY3Rvcmllcy4KKworMjAwNi0wMi0xNyAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogZGViaWFuL2RzZWxlY3QuaW5zdGFsbDogSW5zdGFsbCBvbmx5IGRzZWxlY3QgZG9tYWluLgorCSogZGViaWFuL2Rwa2cuaW5zdGFsbDogSW5zdGFsbCBvbmx5IGRwa2cgZG9tYWluLgorCSogZHNlbGVjdC9wbzogTmV3IGRpcmVjdG9yeS4KKwkqIGRzZWxlY3QvbWFpbi5jYyAobWFpbik6IFVzZSBEU0VMRUNUIGRvbWFpbi4KKwkqIGRzZWxlY3QvTWFrZWZpbGUuYW0gKFNVQkRJUlMpOiBBZGQgcG8uCisJKiBjb25maWd1cmUuYWMgKEFDX0NPTkZJR19GSUxFUyk6IEFkZCBkc2VsZWN0L3BvL01ha2VmaWxlLmluLgorCisyMDA2LTAyLTE3ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBtZXRob2RzLzogTW92ZSBkaXJlY3RvcnkgdG8gZHNlbGVjdC9tZXRob2RzLy4KKwkqIE1ha2VmaWxlLmFtIChTVUJESVJTKTogTW92ZSBtZXRob2RzIHRvIC4uLgorCSogZHNlbGVjdC9NYWtlZmlsZS5hbSAoU1VCRElSUyk6IC4uLiBoZXJlLiBOZXcgdmFyaWFibGUuCisJKiBjb25maWd1cmUuYWMgKEFDX0NPTkZJR19GSUxFUyk6IFJlbmFtZSBtZXRob2RzL01ha2VmaWxlIHRvCisJZHNlbGVjdC9tZXRob2RzL01ha2VmaWxlLgorCisyMDA2LTAyLTE3ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBjb25maWd1cmUuYWM6IFJlcXVpcmUgZ2V0dGV4dCAwLjE0LjUuCisKKzIwMDYtMDItMTcgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGNvbmZpZ3VyZS5hYzogVXNlIEFDX0NPTkZJR19BVVhfRElSIHRvIG1vdmUgYXV4aWxpYXJ5IHNjcmlwdHMgdG8KKwljb25maWcvLgorCisyMDA2LTAyLTE2ICBGcmFuayBMaWNodGVuaGVsZCAgPGRqcGlnQGRlYmlhbi5vcmc+CisKKwkqIGNvbmZpZ3VyZS5hYzogQnVtcCB2ZXJzaW9uIHRvIDEuMTMuMTZ+LgorCisyMDA2LTAyLTE1ICBGcmFuayBMaWNodGVuaGVsZCAgPGRqcGlnQGRlYmlhbi5vcmc+CisKKwkqIGNvbmZpZ3VyZS5hYzogUmVsZWFzZSAxLjEzLjE1LgorCisyMDA2LTAyLTEzICBKb3JkaSBNYWxsYWNoICA8am9yZGlAZGViaWFuLm9yZz4KKworCSogc3JjL3Byb2Nlc3NhcmMuYyAocHJvY2Vzc19hcmNoaXZlKTogQWRkIG1pc3NpbmcgY2xvc2luZyBwYXJlbnRoZXNpcworCWluIGEgc3RyaW5nLgorCisyMDA2LTAyLTEyICBGcmFuayBMaWNodGVuaGVsZCAgPGRqcGlnQGRlYmlhbi5vcmc+CisKKwkqIGNvbmZpZ3VyZS5hYzogQnVtcCB2ZXJzaW9uIHRvIDEuMTMuMTV+LgorCisJKiBjb25maWd1cmUuYWM6IFJlbGVhc2UgMS4xMy4xNC4KKworMjAwNi0wMi0xMSAgRGVuaXMgQmFyYmllciAgPGJhcmJpZXJAZGViaWFuLm9yZz4KKworCSogbWFuL0MvZHBrZy4xOiBFc2NhcGUgYCBhbmQgJywgb3RoZXJ3aXNlIHRoZXkgYXJlIGNvbnZlcnRlZCB0bworCXF1b3RhdGlvbiBtYXJrcywgd2hpY2ggbWFrZXMgY3V0IGFuZCBwYXN0ZSB1c2VsZXNzLgorCSogbWFuL0MvZHBrZy1xdWVyeS4xOiBMaWtld2lzZS4KKwkqIG1hbi9DL2Rwa2ctbmFtZS4xOiBMaWtld2lzZS4KKwkqIG1hbi9DL2Rwa2ctYXJjaGl0ZWN0dXJlLjE6IExpa2V3aXNlLgorCisyMDA2LTAyLTExICBGcmFuayBMaWNodGVuaGVsZCAgPGRqcGlnQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6IEFkZCAuZ2l0IHRvCisJJGRpZmZfaWdub3JlX2RlZmF1bHRfcmVnZXhwLgorCisJKiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOiBSZW1vdmUgYW55CisJbmV3bGluZXMgZnJvbSBVcGxvYWRlcnMgZmllbGQgdG8gYWxsb3cKKwlwZW9wbGUgdG8gbWFrZSBpdCBtdWx0aS1saW5lIGluIHRoZQorCXNvdXJjZSBwYWNrYWdlLgorCisyMDA2LTAyLTEwICBEZW5pcyBCYXJiaWVyICA8YmFyYmllckBsaW51eGZyLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDogVG91Y2ggYWxsIHBhdGNoZWQgZmlsZXMKKwl0byBoYXZlIHRoZSBzYW1lIHRpbWVzdGFtcC4gVGhpcyBzaG91bGQgbWl0aWdhdGUKKwl0aW1lLXNrZXcgcHJvYmxlbXMgdW50aWwgd2UgY2FuIGZpbmFsbHkgYWRkIHByb3BlcgorCXRpbWVzdGFtcHMgdG8gdGhlIGRpZmZzLgorCisyMDA2LTAyLTEwICBJYW4gSmFja3NvbiAgPGl3akB1YnVudHUuY29tPgorCisJKiBzcmMvY29uZmlndXJlLmM6IERpZmZlcmVudGlhdGUgYmV0d2VlbiBtb2RpZmllZAorCWFuZCBkZWxldGVkIGNvbmZpZ3VyYXRpb24gZmlsZXMuIEdpdmVzIGFuZCBtb3JlCisJYWNjdXJhdGUgZGVzY3JpcHRpb24gdG8gdGhlIHVzZXIgYW5kIGVsaW1pbmF0ZXMKKwlhIHdhcm5pbmcgdGhhdCB3YXMgcHJvZHVjZWQgd2hlbiB0cnlpbmcgdG8KKwliYWNrdXAgYSBub24tZXhpc3RlbnQgZmlsZS4KKworCSogbGliL2Rwa2ctZGIuaCAoY29uZmZpbGUpOiBBZGQgYG9ic29sZXRlJyBmaWVsZC4KKwkqIGxpYi9kdW1wLmMgKHdfY29uZmZpbGVzKTogV3JpdGUgIm9ic29sZXRlIiBhdCB0aGUKKwllbmQgb2YgY29uZmZpbGUgZW50cnkgaWYgb2Jzb2xldGUgaXMgc2V0LgorCSogbGliL2ZpZWxkcy5jIChmX2NvbmZmaWxlcyk6IFBhcnNlIGVudHJpZXMgZm9yCisJb2Jzb2xldGUgY29uZmZpbGVzIGNvcnJlY3RseS4KKwkqIHNyYy9maWxlc2RiLmggKGZpbGVuYW1lbm9kZS5mbGFncyk6IEFkZCBuZXcKKwlmbGFnIGZvciBvYnNvbGV0ZSBjb25mZmlsZXMuCisJKiBzcmMvcmVtb3ZlLmMgKHJlbW92YWxfYnVsa19yZW1vdmVfY29uZmlnZmlsZXMpOgorCUhhbmRsZSBvYnNvbGV0ZSBjb25mZmlsZXMuCisJKiBzcmMvYXJjaGl2ZXMuYyAobmV3Y29uZmZfYXBwZW5kKTogTmV3IGZ1bmN0aW9uCisJdG8gYXBwZW5kIGEgZmlsZW5hbWVub2RlIHRvIGEgZmlsZWlubGlzdC4KKwkoYWRkZmlsZXRvbGlzdCk6IE5ldyBmdW5jdGlvbiB0byBhZGQgYSBmaWxlbmFtZW5vZGUKKwl0byBhIHRhcmNvbnRleHQuCisJKHRhcm9iamVjdCk6IFVzZSBuZXcgYWRkZmlsZXRvbGlzdCBmdW5jdGlvbi4KKwlIYW5kbGUgY2FzZSB3aGVyZSBhIG5ldyBwYWNrYWdlIHRha2VzIG92ZXIKKwlhbiBvYnNvbGV0ZSBjb25mZmlsZSBmcm9tIGFub3RoZXIgcGFja2FnZS4KKwkqIHNyYy9hcmNoaXZlcy5oOiBBZGQgZGVjbGFyYXRpb24gb2YgdGhlCisJYWRkZmlsZXRvbGlzdCBmdW5jdGlvbi4KKwkqIHNyYy9wcm9jZXNzYXJjLmMgKHByb2Nlc3NfYXJjaGl2ZSk6IFVzZSBuZXcKKwluZXdjb25mZl9hcHBlbmQgZnVuY3Rpb24gZnJvbSBhcmNoaXZlcy5jLgorCURldGVjdCBvYnNvbGV0ZWQgY29uZmZpbGVzIGFuZCBtYXJrIHRoZW0gYXMgc3VjaC4KKwkqIHNyYy9oZWxwLmMgKGNobW9kc2FmZV91bmxpbmspOiBNYWtlIGl0IHBvc3NpYmxlCisJdG8gZGlmZmVyZW50aWF0ZSBiZXR3ZWVuIGZhaWxlZCBjaG1vZCBhbmQgZmFpbGVkCisJdW5saW5rIGJ5IGFkZGluZyBhIG5ldyBgZmFpbGVkJyBhcmd1bWVudCB3aGljaAorCXdpbGwgYmUgc2V0IHRvIHRoZSBuYW1lIG9mIHRoZSBmYWlsZWQgY29tbWFuZC4KKwkoY2htb2RzYWZlX3VubGlua19zdGF0dGVkKTogTmV3IGZ1bmN0aW9uIHRoYXQKKwljYW4gYmUgY2FsbGVkIGlmIHdlIGFscmVhZHkgaGF2ZSBhIHN0YXQgcmVzdWx0IGZvcgorCXRoZSBmaWxlL2RpcmVjdG9yeSB0byBiZSByZW1vdmVkLgorCShlbnN1cmVfcGF0aG5hbWVfbm9uZXhpc3RpbmcpOiBHaXZlIGJldHRlciBlcnJvcgorCW1lc3NhZ2VzIGJ5IHV0aWxpemluZyB0aGUgY2hhbmdlcyB0bworCWNobW9kc2FmZV91bmxpbmsuCisJKiBzcmMvbWFpbi5oOiBSZWZsZWN0IGNoYW5nZXMgaW4gYXJjaGl2ZXMuYworCWFuZCBoZWxwLmMgKGFkZCBkZWNsYXJhdGlvbnMgZm9yIG5ld2NvbmZmX2FwcGVuZAorCWFuZCBjaG1vZHNhZmVfdW5saW5rX3N0YXR0ZWQgYW5kIGNoYW5nZSB0aGUKKwlvbmUgb2YgY2htb2RzYWZlX3VubGluaykuCisJKGNvbmZmb3B0KTogQWRkIG5ldyBpc29sZCBmbGFnLgorCisyMDA2LTAyLTEwICBKYW1lcyBSLiBWYW4gWmFuZHQgIDxqcnZ6QGNvbWNhc3QubmV0PgorCisJKiBtYW4vQy9kcGtnLjE6IERvY3VtZW50IHRoZSBkZWZhdWx0IGxvZyBmaWxlLiBUaGUgYmVoYXZpb3VyIGluIGNhc2UKKwlvZiBtdWx0aXBsZSAtLWxvZyBvcHRpb25zLiBBbmQgYWRkIGEgcmVmZXJlbmNlIHRvIGRwa2cuY2ZnIG1hbnBhZ2UuCisKKzIwMDYtMDItMTAgIFBoaWxpcHBlIEJhdGFpbGxlciAgPHBoaWxpcHBlLmJhdGFpbGxlckBmcmVlLmZyPiwKKwkgICAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogbWFuL0MvZHBrZy1xdWVyeS4xOiBVc2UgZG90cyBpbnN0ZWFkIG9mIGJsYW5rIGxpbmVzIHRvIGxvZ2ljYWxseQorCXNlcGFyYXRlIHNlY3Rpb25zLgorCShTWU5PUFNJUyk6IEFkZCBjb21tYW5kIGRlc2NyaXB0aW9ucy4KKwkoQ09NTUFORFMpOiBVc2UgcGFja2FnZS1uYW1lIGluc3RlYWQgb2YgcGFja2FnZS4KKwkoT1BUSU9OUyk6IEdpdmUgYW4gZXhhbXBsZSBmb3IgLS1zaG93Zm9ybWF0LgorCShTRUUgQUxTTyk6IEFkZCBhIGZpbmFsIGRvdCB0byByZWZlcmVuY2UuCisKKzIwMDYtMDItMDggIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIG1hbi9wbzRhLm1rICglKTogUmVwbGFjZSAlIHdpdGggJEAgYXMgdGhlIGZvcm1lciBpcyBub3Qgc3Vic3RpdHV0ZWQKKwlpbiB0aGUgcnVsZSdzIGNvbW1hbmQuCisKKzIwMDYtMDItMDggIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGRlYmlhbi9jb250cmwgKEJ1aWxkLURlcGVuZHMpOiBEZXBlbmQgb24gdmVyc2lvbiA+PSAxLjI4LTQgb2YKKwlsaWJzZWxpbnV4MS1kZXYgYXMgaXQgaGFzIHBrZy1jb25maWcgc3VwcG9ydC4gUmVtb3ZlIGxpYnNlcG9sMS1kZXYsCisJbm93IGRyYWdnZWQgYnkgbGlic2VsaW51eDEtZGV2LiBBZGQgcGtnLWNvbmZpZy4KKwkqIG00L2xpYnMubTQgKERQS0dfTElCX1NFTElOVVgpOiBVc2UgcGtnLWNvbmZpZyB0byBnZXQgdGhlIHN0YXRpYworCWFuZCBkeW5hbWljIGxpbmtlciBmbGFncywgdGh1cyBubyBtb3JlIGhhcmRjb2RpbmcgdGhlIHRyYW5zaXRpb25hbAorCWxpYnJhcmllcy4KKworMjAwNi0wMi0wNyAgTmljb2xhcyBGcmFuw6dvaXMgIDxuaWNvbGFzLmZyYW5jb2lzQGNlbnRyYWxpZW5zLm5ldD4KKworCSogbWFuL0MvZHNlbGVjdC4xOiBGaXggYSB0eXBvOiByZXBsYWNlICcuc2gnIGJ5ICcuc3AnLgorCSogbWFuL0MvZHBrZy1zY2Fuc291cmNlcy4xOiBGaXggYSB0eXBvOiByZXBsYWNlICcuU3AnIGJ5ICcuc3AnLgorCisyMDA2LTAyLTA3ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBtYW4vQy91cGRhdGUtYWx0ZXJuYXRpdmVzLjg6IFJlbW92ZSB0cmFpbGluZyAnQycuCisKKzIwMDYtMDItMDYgIENoYW5nd29vIFJ5dSAgPGN3cnl1QGRlYmlhbi5vcmc+LAorCSAgICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBsaWIvZHVtcC5jICh3cml0ZXJlY29yZCk6IE1hcmsgc3RyaW5ncyBhcyB0cmFuc2xhdGFibGUuCisJKiBsaWIvZmllbGRzLmMgKGZfcHJpb3JpdHkpOiBMaWtld2lzZS4KKwkqIGxpYi9tbGliLmMgKGNoZWNrc3VicHJvY2Vycik6IExpa2V3aXNlLgorCisyMDA2LTAyLTA2ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzcmMvbWFpbi5jIChwcmludHZlcnNpb24pOiBEbyBub3Qgc3BsaXQgc3RyaW5ncyB3aXRoIGEgbWFjcm8gaW4KKwl0aGUgbWlkZGxlLCB1c2UgQyBmb3JtYXQgYXJndW1lbnRzLiBVc2UgcHJpbnRmIGluc3RlYWQgb2YgZnB1dHMuCisJKiBzcmMvcXVlcnkuYyAocHJpbnR2ZXJzaW9uKTogTGlrZXdpc2UuCisJKiBkcGtnLWRlYi9tYWluLmMgKHByaW50dmVyc2lvbik6IExpa2V3aXNlLgorCSogZHBrZy1zcGxpdC9tYWluLmMgKHByaW50dmVyc2lvbik6IExpa2V3aXNlLgorCisJKiBzcmMvbWFpbi5jICh1c2FnZSk6IFVzZSBwcmludGYgaW5zdGVhZCBvZiBmcHJpbnRmLiBVcHBlcmNhc2UgaW5pdGlhbAorCWxldHRlciBmb3IgY29tbWFuZHMgZGVzY3JpcHRpb25zLiBRdW90ZSBzdHJpbmdzIHBlciBsaW5lLiBTdGFuZGFyaXplCisJaW5kZW50YXRpb24uIFNwbGl0IGdsb2JhbGx5IGNvbW1vbiBzdHJpbmdzLiBSZW1vdmUgcHJvZ3JhbSBuYW1lIHByZWZpeAorCWZyb20gY29tbWFuZCBkZXNjcmlwdGlvbnMuIFN0YW5kYXJpemUgJ1VzYWdlOicgYW5kICdDb21tYW5kczonCisJaGVhZGluZ3MuIFNwbGl0IGluZGVwZW5kZW50IGNvbW1hbmRzIGludG8gZGlmZmVyZW50IGxpbmVzLgorCSogc3JjL3F1ZXJ5LmMgKHVzYWdlKTogTGlrZXdpc2UuCisJKiBkcGtnLWRlYi9tYWluLmMgKHVzYWdlKTogTGlrZXdpc2UuCisJKiBkcGtnLXNwbGl0L21haW4uYyAodXNhZ2UpOiBMaWtld2lzZS4KKworCSogc3JjL21haW4uYyAocHJpbnRmb3JoZWxwKTogVXNlICdsaWNlbnNlJyBpbnN0ZWFkIG9mICdsaWNlbmNlJy4KKwkqIHNyYy9xdWVyeS5jIChwcmludGZvcmhlbHApOiBMaWtld2lzZS4KKworCSogZHNlbGVjdC9tYWluLmNjIChwcm9ncmFtZGVzYyk6IEFkZCB2ZXJzaW9uIHN0cmluZyBmcm9tIC4uLgorCShjb3B5cmlnaHRzdHJpbmcpOiAuLi4gaGVyZS4gTW92ZSBHUEwgbGljZW5zZSBub3RpY2UgdG8gLi4uCisJKGxpY2Vuc2VzdHJpbmcpOiAuLi4gaGVyZS4gTmV3IHZhcmlhYmxlLgorCShwcmludHZlcnNpb24pOiBVc2UgcHJpbnRmIGluc3RlYWQgb2YgZnByaW50Zi4gR2l2ZSBwcm9wZXIgYXJndW1lbnRzCisJdG8gdGhlIG5ldyBmb3JtYXRlZCBzdHJpbmdzLiBQcmludCAnbGljZW5zZXN0cmluZycuCisJKHVzYWdlKTogVXNlIHByaW50ZiBpbnN0ZWFkIG9mIGZwcmludGYuIFN0YW5kYXJpemUgaW5kZW50YXRpb24uIEFkZAorCW9wdGlvbnMgZGVzY3JpcHRpb25zLiBBZGQgYSBuZXcgbGluZSBhZnRlciBlYWNoIHNlY3Rpb24uCisJKGN1cnNlc29uKTogRG8gbm90IHNwbGl0IHN0cmluZ3Mgd2l0aCBhIG1hY3JvIGluIHRoZSBtaWRkbGUsIHVzZQorCUMgZm9ybWF0IGFyZ3VtZW50cy4KKwkocmVmcmVzaG1lbnUpOiBGaXggYXJndW1lbnRzIGdpdmVuIHRvICdwcm9ncmFtZGVzYycgYW5kCisJJ2NvcHlyaWdodHN0cmluZycgdmFyaWFibGVzLiBQcmludCAnbGljZW5zZXN0cmluZycgdmFyaWFibGUuCisKKzIwMDYtMDItMDYgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHV0aWxzL3N0YXJ0LXN0b3AtZGFlbW9uLmMgKG1haW4pOiBXaGVuIHVzaW5nIC0tY2h1aWQgc2V0IHRoZSBIT01FCisJZW52aXJvbm1lbnQgdmFyaWFibGUuCisKKzIwMDYtMDItMDUgIENocmlzdGlhbiBQZXJyaWVyICA8YnVidWxsZUBkZWJpYW4ub3JnPgorCisJKiBtYW4vKjogU3dpdGNoIGFsbCB0cmFuc2xhdGlvbnMgdG8gcG80YS4gV29yayBjb250cmlidXRlZAorCWJ5IE5pY29sYXMgRnJhbsOnb2lzLgorCisyMDA2LTAxLTMwICBGcmFuayBMaWNodGVuaGVsZCAgPGRqcGlnQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6IEZpeCBzb21lIHZhcmlhYmxlIG5hbWUKKwl0eXBvcyB0aGF0IGxlYWQgdG8gc2VtYW50aWMgZXJyb3JzLiBBbHNvIGNoYW5nZQorCXRoZSBuYW1lcyBvZiB0aGUgdmFyaWFibGVzIHRvIHByZXZlbnQgc3VjaCBlcnJvcnMKKwlpbiB0aGUgZnV0dXJlLgorCisyMDA2LTAxLTI5ICBGcmFuayBMaWNodGVuaGVsZCAgPGRqcGlnQGRlYmlhbi5vcmc+CisKKwkqIG1hbi9DL2Rwa2ctc2NhbnBhY2thZ2VzLjE6IERvY3VtZW50IG5ldyBkcGtnLXNjYW5wYWNrYWdlcworCS1tIG9wdGlvbiBhZGRlZCBieSBEb24gQXJtc3Ryb25nLgorCSogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDogRml4IHNvbWUgYnVncyBpbnRyb2R1Y2VkIGJ5CisJdGhlIHJld3JpdGUuCisKKwkqIG1hbi9DL2Rwa2ctc291cmNlLjE6IERvY3VtZW50IHRoYXQgdGhlIC1zWCBzd2l0Y2hlcyBmb3IKKwlkcGtnLXNvdXJjZSBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlIGFuZCBvbmx5IG9uZSBjYW4gYmUgaW4KKwllZmZlY3QuCisJKiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOiBXYXJuIGlmIG1vcmUgdGhhbiBvbmUgLXNYIHN3aXRjaAorCWlzIHNwZWNpZmllZCBvbiB0aGUgY29tbWFuZCBsaW5lLgorCisJKiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOiBNYWtlIGRwa2ctc291cmNlIC1iIG1vcmUgcm9idXN0CisJcmVnYXJkaW5nIHRvIGV4aXN0aW5nIHN5bWxpbmtzIGJ5IGNyZWF0aW5nIGFsbCBmaWxlcworCWluIHNlY3VyZSB0ZW1wb3JhcnkgZmlsZXMgYW5kIHJlbmFtaW5nIHRoZW0gYWZ0ZXJ3YXJkcy4KKwlUaGlzIGZpeGVzIHByb2JsZW1zIHdpdGggcGFja2FnZXMgcmV0cmlldmVkIHdpdGgKKwlhcHQtZ2V0IHNvdXJjZSBmcm9tIGxvY2FsIHJlcG9zaXRvcmllcy4KKworMjAwNi0wMS0yOSAgRG9uIEFybXN0cm9uZyAgPGRvbkBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOiBSZXdyaXRlIHRoZSBzY3JpcHQgdG8gc3VwcG9ydAorCW11bHRpcGxlIHZlcnNpb25zIG9mIHBhY2thZ2VzIGluIGEgc2luZ2xlIFBhY2thZ2VzIGZpbGU7CisJdXNlIEdldG9wdDo6TG9uZyBpbnN0ZWFkIG9mIGF0dGVtcHRpbmcgdG8gcGFyc2UgdGhlIGNvbW1hbmQgbGluZQorCW91cnNlbHZlcyBhbmQgZG9pbmcgaXQgYmFkbHk7CisJZ2V0IHJpZCBvZiB1bm5lY2Vzc2FyeSBoYXNoZXMgYW5kIGFycmF5cyB0aGF0IGFyZW4ndCB1c2VkIGF0IGFsbDsKKwlvdXRwdXQgaGVscCB3aGVuIGdpdmVuIHRoZSAtLWhlbHAvLWgvLT8gb3B0aW9ucworCisyMDA2LTAxLTI5ICBtYXhpbWlsaWFuIGF0dGVtcyAgPGRlYmlhbkBzdGVybndlbHRlbi5hdD4KKworCSogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDogQWRkIGZpbGVzIGFuZAorCWRpcnMgdXNlZCBieSBienIgdG8gJGRpZmZfaWdub3JlX2RlZmF1bHRfcmVnZXhwLgorCisyMDA2LTAxLTI5ICBKdWxpYW4gR2lsYmV5ICA8amRnQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2Uuc2g6IENyZWF0ZSAuY2hhbmdlcworCWZpbGUgZXZlbiBpZiBzaWduaW5nIC5kc2MgZmlsZSBmYWlscyB0byBtYWtlIGl0CisJZWFzaWVyIHRvIGp1c3Qgc2lnbiB0aGUgcGFja2FnZSBsYXRlci4KKworCSogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5zaDogQ2hhbmdlIGhldXJpc3RpY3MKKwlvZiBncGcgY2hlY2sgc28gdGhhdCBpdCBhbGxvd3MgZm9yIG1vcmUgY29tcGxleAorCXNldHVwcy4KKworMjAwNi0wMS0yOSAgQW5hbmQgS3VtcmlhICA8d2lsZGZpcmVAcHJvZ3NvYy5vcmc+CisKKwkqIHNjcmlwdHMvZHBrZy1zb3VyY2UucGwgKGNoZWNrZGlmZik6IElnbm9yZSBjb21tZW50cworCWh1bmsgaGVhZGVyIGxpbmUgYXMgdXNlZCBieSBkaWZmIC1wLgorCisyMDA2LTAxLTI5ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiB1dGlscy9zdGFydC1zdG9wLWRhZW1vbi5jIChkb19oZWxwKTogUHJpbnQgdGhlIHByb3BlciB2ZXJzaW9uCisJZ2l2aW5nIGl0IGFzIGFuIGFyZ3VtZW50IHRvIHByaW50ZiwgaW5zdGVhZCBvZiBwcmludGluZyAnVkVSU0lPTicuCisKKzIwMDYtMDEtMjkgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGNvbmZpZ3VyZS5hYzogQnVtcCB2ZXJzaW9uIHRvIDEuMTMuMTR+LgorCisyMDA2LTAxLTI4ICBGcmFuayBMaWNodGVuaGVsZCAgPGRqcGlnQGRlYmlhbi5vcmc+CisKKwkqIGNvbmZpZ3VyZS5hYzogUmVsZWFzZSAxLjEzLjEzLgorCisyMDA2LTAxLTI4ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLnBsOiBEbyBub3QgcHJpbnQgdGhlIHdhcm5pbmcgYWJvdXQgYQorCW1pc3NtYXRjaCBiZXR3ZWVuIGdjYyB0YXJnZXQgbWFjaGluZSB0eXBlIGFuZCBHTlUgdGFyZ2V0IHN5c3RlbQorCXR5cGUgaWYgdGhlIGFjdGlvbnMgYXJlICctZScgb3IgJy1pJy4KKworMjAwNi0wMS0yNyAgRnJhbmsgTGljaHRlbmhlbGQgIDxkanBpZ0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOiBIb25vciBMRF9MSUJSQVJZX1BBVEggd2hlbgorCXNlYXJjaGluZyBmb3Igc2hhcmVkIGxpYnJhcmllcy4KKwkqIHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6IERvbid0IHJlY3Vyc2UgaW50byBwYWNrYWdlCisJZGlyZWN0b3JpZXMgd2hlbiBzZWFyY2hpbmcgZm9yIGxvY2FsIHNobGlicyBmaWxlcy4KKworMjAwNi0wMS0yNiAgWmVmcmFtICA8emVmcmFtQGZ5c2gub3JnPiwKKwkgICAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogbWFuL0MvZHBrZy1xdWVyeS4xOiBEb2N1bWVudCB0aGUgY29ycmVjdCBmb3JtYXQgc3RyaW5nIGZvcgorCXRoZSAnLS1zaG93Zm9ybWF0JyBvcHRpb24uIFVwZGF0ZSAnLWwnIGV4YW1wbGUuIExvd2VyIGNhc2UgcHJvZ3JhbQorCW5hbWUgaW4gdGl0bGUgaGVhZGVyLgorCisyMDA2LTAxLTI2ICBDaHJpc3RvcGggTWFzZXIgIDxjbUBmaW5hbmNpYWwuY29tPgorCisJKiB1dGlscy9zdGFydC1zdG9wLWRhZW1vbi5jIChkb19oZWxwKTogRml4IHR5cG8gKCctQycgLT4gJy1kJykuCisKKzIwMDYtMDEtMjYgIEEgQ29zdGEgIDxhZ2Nvc3RhQGdpcy5uZXQ+CisKKwkqIG1hbi9DL2RzZWxlY3QuMTogRml4IHR5cG9zLgorCisyMDA2LTAxLTI2ICBCYXN0aWFuIEtsZWluZWlkYW0gIDxjYWx2aW5AZGViaWFuLm9yZz4KKworCSogbWFuL0MvZHBrZy4xOiBEb2N1bWVudCB0aGUgLS1uby1kZWJzaWcgb3B0aW9uLgorCisyMDA2LTAxLTI2ICBNYXJjIEhhYmVyICA8bWgrZGViaWFuLXBhY2thZ2VzQHp1Z3NjaGx1cy5kZT4KKworCSogbWFuL0MvZHBrZy1zdGF0b3ZlcnJpZGUuODogRml4IHR5cG8uCisKKzIwMDYtMDEtMjQgIEZyYW5rIExpY2h0ZW5oZWxkICA8ZGpwaWdAZGViaWFuLm9yZz4KKworCSogZGViaWFuL2NvbnRyb2wgKFNlY3Rpb24pOiBkcGtnIGFuZCBkc2VsZWN0IGFyZSBub3cgaW4gc2VjdGlvbgorCWFkbWluLCBub3Qgc2VjdGlvbiBiYXNlLiBDb3JyZWN0IGluZm8gaW4gdGhlIGNvbnRyb2wgZmlsZS4KKwkoU3RhbmRhcmRzLVZlcnNpb24pOiBCdW1wIFN0YW5kYXJkcy1WZXJzaW9uIHRvIDMuNi4yIChubyBjaGFuZ2VzKS4KKworCSogbWFuL0MvZHBrZy1hcmNoaXRlY3R1cmUuMTogRml4IHR5cG8uCisKKzIwMDYtMDEtMjMgIFZhc2lsaXMgVmFzYWl0aXMgIDx2LnZhc2FpdGlzQHNtcy5lZC5hYy51az4KKworCSogdXRpbHMvc3RhcnQtc3RvcC1kYWVtb24uYyAocGlkX2lzX2V4ZWMpIFtPU0xpbnV4XTogQ2hhbmdlIGZ1bmN0aW9uCisJcHJvdG90eXBlIHRvIHRha2UgYSBjb25zdGFudCBzdHJpbmcgaW5zdGVhZCBvZiBhIHN0cnVjdCBzdGF0LiBDb21wYXJlCisJdGhlIGZpbGVuYW1lIHBvaW50ZWQgYnkgdGhlICcvcHJvYy88cGlkPi9leGUnIHN5bWxpbmssIGluc3RlYWQgb2YgdGhlCisJc3RhdCBkZXZpY2UgYW5kIGlub2RlIG51bWJlcnMuIEZpeCBhbGwgY2FsbGVycy4KKworMjAwNi0wMS0yMyAgRnJhbmsgTGljaHRlbmhlbGQgIDxkanBpZ0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOiBSZXdyaXRlIG9mIHRoZSBzY3JpcHQKKwl0byBub3QgdXNlIHRoZSBwYXRoIGluZm9ybWF0aW9uIGZyb20gbGRkIGFueW1vcmUgKHdoaWNoCisJaXMgdW5yZWxpYWJsZSBpbiB0aGUgY2FzZSBvZiBzeW1saW5rZWQgZGlyZWN0b3JpZXMgYW5kCisJbm90IG5lY2Vzc2FyaWx5IGF2YWlsYWJsZSBmb3IgYmlhcmNoIGJ1aWxkcykuIEluc3RlYWQKKwlidWlsZCBhbiBvd24gcmVwcmVzZW50YXRpb24gb2YgdGhlIHNlYXJjaCBwYXRjaC4KKworCSogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDogRG9uJ3QgdXNlIFxiIHRvIG1hdGNoIHRoZSBlbmQKKwlvZiB0aGUgdmVyc2lvbiBpbiBmaWxlbmFtZXMsIHVzZSAoPz1bLi1dKSBhbmQgKD89XC4pIGluc3RlYWQuCisJXGIgZG9lc24ndCB3b3JrIGluIGNhc2UgdGhlIHZlcnNpb24gZW5kcyB3aXRoIH4uCisKKwkqIEFVVEhPUlM6IFVwZGF0ZWQgZm9yIG5ldyBtYWludGVuYW5jZSB0ZWFtCisJKiBkZWJpYW4vY29weXJpZ2h0OiBBZGQgbXlzZWxmIGFzIGNvcHlyaWdodCBob2xkZXIgc2luY2UKKwlJIGFsc28gYWRkZWQgYSBub3RlIHRvIHRoYXQgZWZmZWN0IHdpdGggbXkgZHBrZy1zaGxpYmRlcHMKKwlwYXRjaC4KKworMjAwNi0wMS0yMyAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCVN1cHBvcnQgZm9yIGFyY2hpdGVjdHVyZSB3aWxkY2FyZHMuCisKKwkqIHNjcmlwdHMvY29udHJvbGxpYi5wbDogUmVuYW1lIHRvIC4uLgorCSogc2NyaXB0cy9jb250cm9sbGliLnBsLmluOiAuLi4gdGhpcy4KKwkqIHNjcmlwdHMvZHBrZy1hcmNoaXRlY3R1cmUucGw6IEFkZCBuZXcgYWN0aW9ucyAnLWUnICBhbmQgJy1pJyB0aGF0CisJY2FsbCBkZWJpYW5fYXJjaF9lcSBhbmQgZGViaWFuX2FyY2hfaXMsIHRvIGNoZWNrIGZvciBhcmNoaXRlY3R1cmUKKwllcXVhbGl0eSBhbmQgaWRlbnRpdHkgcmVzcGVjdGl2ZWx5LiBVc2UgZGViaWFuX2FyY2hfZml4IGluc3RlYWQgb2YKKwl0aGUgZHVwbGljYXRlZCBjb2RlLgorCShwa2dkYXRhZGlyLCByZWFkX2NwdXRhYmxlLCByZWFkX29zdGFibGUpOiBNb3ZlIHRvIC4uLgorCSogc2NyaXB0cy9jb250cm9sbGliLnBsLmluOiAuLi4gaGVyZS4KKwkoZGViaWFuX2FyY2hfZml4KTogTmV3IGZ1bmN0aW9uLiBGaXggbm9ybWFsaXplZCBrZXJuZWwtY3B1IGlucHV0IHRvCisJbGVnYWN5IERlYmlhbiBhcmNoaXRlY3R1cmUgb3V0cHV0LgorCShkZWJpYW5fYXJjaF9zcGxpdCk6IE5ldyBmdW5jdGlvbi4gTm9ybWFsaXplIGFuZCBzcGxpdCBpbnB1dCBpbnRvCisJa2VybmVsIGFuZCBjcHUgY29tcG9uZW50cy4KKwkoZGViaWFuX2FyY2hfZXEpOiBOZXcgZnVuY3Rpb24uIENvbXBhcmUgdHdvIHR1cGxlcyBmb3IgZXF1YWxpdHkgYWZ0ZXIKKwloYXZpbmcgbm9ybWFsaXplZCB0aGVtIHdpdGggZGViaWFuX2FyY2hfc3BsaXQuCisJKGRlYmlhbl9hcmNoX2lzKTogTmV3IGZ1bmN0aW9uLiBDaGVjayB0d28gdHVwbGVzIGZvciBpZGVudGl0eSBhZnRlcgorCWhhdmluZyBub3JtYWxpemVkIHRoZW0gd2l0aCBkZWJpYW5fYXJjaF9zcGxpdC4KKwkoZGViaWFuX2FyY2hfZXhwYW5kKTogTmV3IGZ1bmN0aW9uLiBFeHBhbmQgdGhlIG5vcm1hbGl6ZWQgaW5wdXQKKwlpbnRvIGFsbCBwb3NzaWJsZSBsZWdhY3kgRGViaWFuIGFyY2hpdGVjdHVyZXMgbWF0Y2hpbmcgdGhlIHdpbGRjYXJkLgorCShwYXJzZWRlcCk6IFVzZSBkZWJpYW5fYXJjaF9pcyB0byBjaGVjayBpZiB0aGUgaG9zdCBhcmNoaXRlY3R1cmUgaXMKKwlwYXJ0IG9mIHRoZSBhcmNoaXRlY3R1cmUgbGlzdGVkIGluIHRoZSBkZXBlbmRlbmN5IHJlbGF0aW9uc2hpcC4KKwkoc2hvd2RlcCk6IFVzZSBkZWJpYW5fYXJjaF9leHBhbmQgdG8gbm9ybWFsaXplIHRoZSBhcmNoaXRlY3R1cmVzIGZvcgorCWJpbmFyeSBhbmQgc291cmNlIHBhY2thZ2VzLCBzbyBnZW5lcmF0ZWQgcGFja2FnZXMgd2lsbCBiZSBiYWNrd2FyZAorCWNvbXBhdGlibGUgaW4gcmVnYXJkIHRvIGFyY2hpdGVjdHVyZSBmb3JtYXQuCisJKiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDogVXNlIG5ldyBkcGtnX2FyY2hfaXMgYW5kIGRwa2dfYXJjaF9lcQorCWluc3RlYWQgb2YgdGhlIGhhcmRjb2RlZCBjaGVja3MuCisJKiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDogTGlrZXdpc2UuCisJKiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOiBMaWtld2lzZS4gVXNlIGRwa2dfYXJjaF9leHBhbmQgdG8gZmlsbAorCXRoZSBBcmNoaXRlY3R1cmUgZmllbGQgd2l0aCB0aGUgbGVnYWN5IERlYmlhbiBhcmNoaXRlY3VyZXMuCisJKiBzY3JpcHRzL01ha2VmaWxlLmFtOiBOZXcgcnVsZSB0byBnZW5lcmF0ZSAucGwgZnJvbSAucGwuaW4gZmlsZXMuCisJKiBtYW4vQy9kcGtnLWFyY2hpdGVjdHVyZS4xOiBVcGRhdGUuIEFkZCBuZXcgb3B0aW9ucywgYW5kIGZldyB3b3JkcworCWFib3V0IHRoZSBmb3JtYXQgb2YgdGhlIHdpbGRjYXJkcy4KKworMjAwNi0wMS0yMyAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDogQWRkIGEgbWlzc2luZyAnKycgaW4gdGhlIGFyY2hpdGVjdHVyZQorCXZhbGlkYXRvciByZWdleC4KKworMjAwNi0wMS0yMyAgQmFydCBNYXJ0ZW5zICA8YmFydC5tYXJ0ZW5zQGFkdmFsdmFzLmJlPiwKKwkgICAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogZGViaWFuL2NvbnRybCAoQnVpbGQtRGVwZW5kcyk6IEFkZCBsaWJzZXBvbDEtZGV2IGFzIGEgdGVtcG9yYXJ5CisJd29ya2Fyb3VuZCB1bnRpbCBsaWJzZWxpbnV4MS1kZXYgaGFzIHBrZy1jb25maWcgc3VwcG9ydC4KKwkqIG00L2xpYnMubTQgKERQS0dfTElCX1NFTElOVVgpOiBFeHBsaWNpdGx5IHN0YXRpY2FsbHkgbGluayBhZ2FpbnN0CisJbGlic2Vwb2wuCisKKzIwMDYtMDEtMjAgIEF1cmVsaWVuIEphcm5vICA8YXVyZWwzMkBkZWJpYW4ub3JnPgorCisJKiBkZWJpYW4vY29udHJvbCAoQnVpbGQtRGVwZW5kcyk6IERvIG5vdCBkZXBlbmQgb24gbGlic2VsaW51eDEtZGV2CisJaW4gR05VL2tGcmVlQlNELgorCisyMDA2LTAxLTIwICBMZW5uZXJ0IEJ1eXRlbmhlayAgPGJ1eXRlbmgrZGViaWFuQHdhbnRzdG9mbHkub3JnPgorCisJKiBjcHV0YWJsZTogQWRkIGFybWViLgorCisyMDA2LTAxLTE4ICBKb2V5IEhlc3MgIDxqb2V5aEBkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOiBBZGQgcG9zc2liaWxpdHkgdG8gc3BlY2lmeSBhIHBhY2thZ2UKKwl0eXBlIGluIHRoZSBzaGxpYnMgZmlsZSBhbmQgYWRkIGEgLXQgc3dpdGNoIHRvIGRwa2ctc2hsaWJkZXBzIHRvCisJc3BlY2lmeSB0aGUgd2FudGVkIHR5cGUuIEVudHJpZXMgd2l0aG91dCBwYWNrYWdlIHR5cGUgd2lsbCBoYXZlCisJdHlwZSAnZGViJyBhbmQgd2lsbCBzZXJ2ZSBhcyBmYWxsYmFjayBpZiBubyBlbnRyeSB3aXRoIHRoZSBjb3JyZWN0CisJdHlwZSBpcyBmb3VuZC4KKwkqIG1hbi9DL2Rwa2ctc291cmNlLjE6IERvY3VtZW50IG5ldyAtdCBzd2l0Y2ggZm9yIGRwa2ctc2hsaWJkZXBzLgorCisyMDA1LTEwLTExICBGcmFuayBMaWNodGVuaGVsZCAgPGRqcGlnQGRlYmlhbi5vcmc+CisKKwkqIG1hbi9DLyouWzE1OF06IFVwZGF0ZSByZWZlcmVuY2VzIHRvIGRwa2cgYW5kIGRzZWxlY3QKKwltYW4gcGFnZXMgd2l0aCBjb3JyZWN0IHNlY3Rpb24gKDgtPjEpLgorCSogbWFuL0MvZHNlbGVjdC4xOiBVcGRhdGUgcmVmZXJlbmNlIHRvIGRlYmNvbmYKKwltYW4gcGFnZSB3aXRoIGNvcnJlY3Qgc2VjdGlvbiAoOC0+MSkuCisKKwkqIHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6IFdhcm4gb24gLWIgaWYgd2UgYWRkIGEgZmlsZSB3aXRoCisJc3BlY2lhbCAoaS5lLiBleGVjdHVhYmxlIG9yIHNldHt1LGd9aWQpIHBlcm1pc3Npb24gaW4gdGhlCisJZGlmZiBzaW5jZSB0aGlzIG1vZGUgd2lsbCBnZXQgbG9zdC4KKworMjAwNS0xMC0wNyAgRnJhbmsgTGljaHRlbmhlbGQgIDxkanBpZ0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2NvbnRyb2xsaWIucGwgKGNoZWNrdmVyc2lvbik6IEFkZCBnZW5lcmljIGNoZWNrIGZvciB2YWxpZAorCXZlcnNpb24gbnVtYmVycy4KKwkoY2hlY2twYWNrYWdlbmFtZSk6IEFkZCBnZW5lcmljIGNoZWNrIGZvciB2YWxpZCBwYWNrYWdlIG5hbWVzLgorCShyZWFkbWQ1c3VtKTogQWRkIGdlbmVyaWMgZnVuY3Rpb24gdG8gZXh0cmFjdCBtZDVzdW0gZnJvbSBtZDVzdW0KKwlwcm9ncmFtIG91dHB1dC4gVGhpcyBhbHNvIGZpeGVzIHRoZSBoYW5kbGluZyBvZiBtZDVzdW0gLWIgb3V0cHV0IGluCisJZHBrZy1zb3VyY2UuCisJKHNldHNvdXJjZXBhY2thZ2UpOiBDYWxsIGNoZWNrcGFja2FnZW5hbWUgb24gbmV3IHZhbHVlLgorCSogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDogVXNlIHRoZSBuZXcgY2hlY2tzIGFkZGVkIHRvCisJY29udHJvbGxpYiB0byBlbnN1cmUgdmFsaWRpdHkgb2YgdmVyc2lvbiBhbmQgcGFja2FnZW5hbWUKKwlvbiBidWlsZCwgdG9vLiBQcmV2aW91c2x5IHRoaXMgd2FzIG9ubHkgZG9uZSBvbgorCXVucGFjay4KKworCSogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDogVGVzdCBvbiBidWlsZCBpZiBkaXJlY3RvcmllcworCWFkZGVkIGJ5IGRpZmYgYWxyZWFkeSBleGlzdCB3aXRoIG90aGVyIHR5cGUgaW4gdGhlIG9yaWdpbmFsCisJc291cmNlIHNpbmNlIHdlIGFscmVhZHkgdGVzdGVkIHRoYXQgb24gdW5wYWNrLgorCisJKiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsIChhZGRmaWxlKTogVGVzdCBpZiBmaWxlcyBhcmUgYWRkZWQKKwl0d2ljZS4gU2hvdWxkIG5vdCBoYXBwZW4gYnV0IGFzIHdlIGVycm9yIG91dCBvbiB1bnBhY2sKKwliZXR0ZXIgbWFrZSBzdXJlIGl0IGRvZXNuJ3QuCisKKzIwMDUtMTAtMDQgIEZyYW5rIExpY2h0ZW5oZWxkICA8ZGpwaWdAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDogQ2hlY2sgYnVpbGQgcmVsYXRpb24KKwlmaWVsZHMgZm9yIGNvcnJlY3RuZXNzIGJlZm9yZSBwdXR0aW5nIHRoZW0gaW50bworCXRoZSAuZHNjIHdoZW4gYnVpbGRpbmcuIFRoaXMgYWxzbyBub3JtYWxpemVzIHRoZQorCWZpZWxkcy4KKworMjAwNS0xMC0wMyAgTWF0dCBaaW1tZXJtYW4gIDxtZHpAZGViaWFuLm9yZz4sCisJICAgIEZyYW5rIExpY2h0ZW5oZWxkICA8ZGpwaWdAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDogSWYgZ3BnIGlzIGluc3RhbGxlZCwgY2hlY2sKKwl0aGUgc2lnbmF0dXJlIG9mIHRoZSAuZHNjIGZpbGUgYmVmb3JlIHVucGFja2luZy4KKwlBbGxvdyB0aGUgdW5wYWNraW5nIHRvIHN1Y2NlZWQgaWYgdGhlIC5kc2MgaXMgdW5zaWduZWQKKwlidXQgZXJyb3Igb3V0IGlmIHRoZSBzaWduYXR1cmUgaXMgYmFkLiBJZiBncGcgZXhpdHMKKwl3aXRoIGEgY29kZSA+MiAoZS5nLiBtaXNzaW5nIGtleSksIHNob3cgdGhlIHVzZXIgdGhlIGdwZworCW91dHB1dCBidXQgY29udGludWUuCisKKzIwMDUtMTAtMDMgIEZyYW5rIExpY2h0ZW5oZWxkICA8ZGpwaWdAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDogVHJ5IHRvIGNob3duIGZpbGVzIGV4dHJhY3RlZCBmcm9tCisJYSB0YXIgZmlsZSB0byB0aGUgdWlkIGFuZCBnaWQgb2YgdGhlIHVzZXIuIFRoaXMgc2hvdWxkIG1ha2UKKwlkcGtnLXNvdXJjZSAteCBzYWZlciB0byB1c2UgYXMgcm9vdC4gQWxzbyBjcmVhdGUgdGhlIHRlbXBvcmFyeQorCWRpcmVjdG9yeSBtb2RlIDA3MDAgdG8gbm90IGFsbG93IGFueW9uZSBleHBsb2l0aW5nIHJhY2VzCisJYmV0d2VlbiB0aGUgZXh0cmFjdGlvbiBhbmQgdGhlIGNob3duLgorCisJKiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDogV2FybiBhYm91dCBpbGxlZ2FsIGFyY2hpdGVjdHVyZQorCXN0cmluZ3MuIFRoaXMgd2lsbCB3YXJuIGUuZy4gYWJvdXQgY29tbWEtc2VwYXJhdGVkIGFyY2hpdGVjdHVyZQorCWxpc3RzLgorCSogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDogQWxzbyBjaGVjayBhcmNoaXRlY3R1cmUgc3RyaW5ncyBhbmQKKwllcnJvciBvdXQgaWYgd2UgZmluZCBpbGxlZ2FsIG9uZXMuCisKKzIwMDUtMDgtMjcgIEZyYW5rIExpY2h0ZW5oZWxkICA8ZGpwaWdAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6IEJhaWwgb3V0IHdpdGggYW4gZXJyb3IgaWYgcGFyc2VkZXAKKwlmb3VuZCBhbiBlcnJvciB3aGlsZSBwYXJzaW5nIGEgZGVwZW5kZW5jeSBmaWVsZC4KKworMjAwNS0wOC0xNyAgU2NvdHQgSmFtZXMgUmVtbmFudCAgPHNjb3R0QG5ldHNwbGl0LmNvbT4KKworCSogY29uZmlndXJlLmFjOiBCdW1wIHZlcnNpb24gdG8gMS4xMy4xMn4uCisKKwkqIGNvbmZpZ3VyZS5hYzogUmVsZWFzZSAxLjEzLjExLgorCisJKiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOiBSZS13b3JrIHRoZSBsb2dpYyB0aGF0IGhhbmRsZXMgdGhlIEZpbGVzCisJZmllbGQgd2hlbiB1bnBhY2tpbmcgc291cmNlIHBhY2thZ2VzOyBhbHdheXMgcmVtb3ZlIHRoZSByZXZpc2lvbgorCWNvbXBvbmVudCBhbmQgdGhlcmVieSBhbGxvdyAtJHJldi5vcmlnLnRhci5neiBhcyB3ZWxsIGFzIG5hdGl2ZQorCWRpZmYuZ3ogb3IgZGViaWFuLnRhci5nejsgaW1wcm92ZSB0aGUgInVucmVjb2duaXNlZCBmaWxlIiBlcnJvciB0bworCWdpdmUgdGhlIGZ1bGwgZmlsZW5hbWUsIG5vdCB0aGUgbWFuZ2xlZCBzdWZmaXg7IGNoZWNrIHdoZXRoZXIgdGhlCisJcmV2aXNpb24gaGFzIGxlbmd0aCwgcmF0aGVyIHRoYW4gaXMgbm9uLXplcm8gKCIwIiBpcyBmYWxzZSBpbiBQZXJsKS4KKworMjAwNS0wOC0xNyAgRnJhbmsgTGljaHRlbmhlbGQgIDxkanBpZ0BkZWJpYW4ub3JnPgorCisJKiBzY3JpcHRzL2NvbnRyb2xsaWIucGwgKHBhcnNlZGVwKTogQ29ycmVjdCBhIGJ1ZyB0aGF0IGNhdXNlZCB3cm9uZworCWFyY2hpdGVjdHVyZSByZXF1aXJlbWVudHMgaW4gc29tZSBjYXNlcywgZHVlIHRvIG9ubHkgIm15ImluZyB0aGUKKwlAYXJjaGVzIGxpc3QgaW4gc29tZSBjaXJjdW1zdGFuY2VzLgorCisyMDA1LTA4LTE3ICBDb2xpbiBXYXRzb24gIDxjandhdHNvbkB1YnVudHUuY29tPgorCisJKiBzcmMvcHJvY2Vzc2FyYy5jIChwcm9jZXNzX2FyY2hpdmUpOiBXaGVuIGNvcHlpbmcgdGhlIGZvcndhcmQKKwlkZXBlbmRlbmN5IHRyZWUsIGJsYW5rIHRoZSB2ZXJzaW9uIGZpZWxkIG9mIHVudmVyc2lvbmVkIGRlcGVuZGVuY2llcworCXJhdGhlciB0aGFuIGxlYXZpbmcgdGhlbSB1bmluaXRpYWxpc2VkLgorCisyMDA1LTA4LTE3ICBTY290dCBKYW1lcyBSZW1uYW50ICA8c2NvdHRAbmV0c3BsaXQuY29tPgorCisJKiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOiBGaXggYSBmZXcgcHJvYmxlbXMgZm91bmQgd2l0aCB0aGUKKwkkZGlmZl9pZ25vcmVfZGVmYXVsdF9yZWdleHAgdmFsdWU7IGl0J2QgbWF0Y2ggYW55IHBhdGggd2l0aAorCURFQURKT0UgaW4gaXQgc29tZXdoZXJlIChvciAuY3ZzaWdub3JlLCBldGMuKSwgd291bGRuJ3QgbWF0Y2gKKwlhbiBpbml0aWFsIENWUyBvciB7YXJjaH0sIGV0Yy4KKwlUb29rIHRoZSBvcHBvcnR1bml0eSB0byByZWZvcm1hdCB0aGUgc3RyaW5nIGFuZCBhZGQgc29tZSBjb21tZW50cywKKwl3aGljaCBnZXQgc3RyaXBwZWQgb3V0IGJlZm9yZSBpdCdzIHVzZWQuCisJQWRkZWQgdGxhL2JheiBqdW5rICIsLC4qIiB0byB0aGUgbGlzdCBvZiBmaWx0ZXJzLgorCisJKiBsaWIvZGJtb2RpZnkuYyAobG9nX21lc3NhZ2UpOiBDYWxsIHNldGNsb2V4ZWMoKSBvbiB0aGUgbG9nCisJZmlsZSBkZXNjcmlwdG9yLCBvdGhlcndpc2Ugd2UgbGVhayBpdCB0byBvdXIgY2hpbGRyZW4uCisKKzIwMDUtMDgtMTcgIEx1ZG92aWMgUm91c3NlYXUgIDxyb3Vzc2VhdUBkZWJpYW4ub3JnPgorCisJKiBzcmMvZmlsZXNkYi5jOiBSZXBsYWNlIGFsbCByZWZlcmVuY2VzIHRvICJzdGF0dXNvdmVycmlkZSIgZmlsZQorCXdpdGggInN0YXRvdmVycmlkZSIuCisKKzIwMDUtMDgtMTcgIFNjb3R0IEphbWVzIFJlbW5hbnQgIDxzY290dEBuZXRzcGxpdC5jb20+CisKKwkqIHNyYy9xdWVyeS5jIChlbnFwZXJwYWNrYWdlKTogT25seSBvdXRwdXQgYSBuZXdsaW5lIGJldHdlZW4KKwlkaWZmZXJlbnQgcGFja2FnZXMgYW5kIG5vdCBhZnRlciB0aGUgbGFzdCBvbmUuCisKKwkqIG1hbi9DL2Rwa2ctZGViLjE6IERvY3VtZW50IC1XLy0tc2hvdyBhbmQgLS1zaG93Zm9ybWF0LgorCisyMDA1LTA4LTE0ICBCYXN0aWFuIEtsZWluZWlkYW0gIDxjYWx2aW5AZGViaWFuLm9yZz4KKworCSogbWFuL0MvZHBrZy1hcmNoaXRlY3R1cmUuMTogRml4IHR5cG8uCisKKzIwMDUtMDgtMTQgIEZyYW5rIExpY2h0ZW5oZWxkICA8ZGpwaWdAZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6IEdpdmUgYSB3YXJuaW5nIHdoZW4gb25lIHRyaWVzCisJdG8gdXNlIC1zZCBvbiBhIG5hdGl2ZSBEZWJpYW4gcGFja2FnZS4KKworCSogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDogSGFuZGxlIGFic29sdXRlIHBhdGhzIGluIHRoZSBhcmd1bWVudAorCWdpdmVuIGZvciAtYi4KKworCSogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDogR2l2ZSBtb3JlIG1lYW5pbmdmdWwgZXJyb3IgbWVzc2FnZQorCWlmIGZpcnN0IGFyZ3VtZW50IHRvIGRwa2ctc291cmNlIC14IGlzIGEgZGlyZWN0b3J5CisKKwkqIHNjcmlwdHMvY29udHJvbGxpYi5wbCAocGFyc2VjZGF0YSk6IElnbm9yZSB0cmFpbGluZyBuZXdsaW5lcworCWluIHNpbmdsZSBwYXJhZ3JhcGggY29udHJvbCBmaWxlcy4KKworCSogc2NyaXB0cy9jb250cm9sbGliLnBsIChwYXJzZWRlcCk6IEdpdmUgYSB3YXJuaW5nIGV4cGxhaW5pbmcKKwl0aGUgcHJvYmxlbSB3aGVuIGZhaWxpbmcgdG8gcGFyc2UgdGhlIGRlcGVuZGVuY3kuCisJKiBzY3JpcHRzL2Rwa2ctY2hlY2tidWlsZGRlcHMucGw6IFBhc3MgdGhlIGRlcGVuZGVuY3kgZmllbGQgbmFtZQorCXRvIGFsbCBjYWxscyB0byAmYnVpbGRfZGVwZW5kcygpIGFuZCAmYnVpbGRfY29uZmxpY3RzKCksIHdoaWNoCisJYm90aCBjYWxsICZjaGVja19saW5lKCkuCisJKGNoZWNrX2xpbmUpOiBUYWtlIGFuIGFyZ3VtZW50IHNwZWNpZnlpbmcgdGhlIGZpZWxkIG5hbWUsIGFuZAorCXVzZSBpdCB0byBvdXRwdXQgYW4gZXJyb3IgaWYgdGhlIGRlcGVuZGVuY3kgbGlzdCBpcyBub3QKKwlkZWZpbmVkIChjYXVzZWQgYnkgYSBmYWlsdXJlIG9mICZwYXJzZWRlcCgpKS4KKworCSogc2NyaXB0cy9jb250cm9sbGliLnBsOiBSZW1vdmUgdGhlICVjYXBpdCBtYXAsIGl0J3Mgbm8gbG9uZ2VyCisJdXNlZCBhbmQgZXZlcnl0aGluZyB1c2VzIHRoZSAmY2FwaXQoKSBmdW5jdGlvbiBpbnN0ZWFkLgorCShjYXBpdCk6IFVwcGVyY2FzZSBhbGwgbGV0dGVycyB0aGF0IGNvbWUgYWZ0ZXIgYSBtaW51cyAoJy0nKSwKKworMjAwNS0wOC0xNCAgTW9yaXR6IE11ZWhsZW5ob2ZmICA8am1tQGludXRpbC5vcmc+LAorCSAgICBGcmFuayBMaWNodGVuaGVsZCAgPGRqcGlnQGRlYmlhbi5vcmc+CisKKwkqIHNjcmlwdHMvY29udHJvbGxpYi5wbCAocGFyc2VkZXApOiBBbGxvdyB3aGl0ZXNwYWNlIGJlZm9yZQorCXZlcnNpb24gb3BlcmF0b3JzIGluIGRlcGVuZGVuY2llcy4KKworMjAwNS0wOC0xNCAgR29zd2luIEJyZWRlcmxvdyAgPGJyZWRlcmxvQGluZm9ybWF0aWsudW5pLXR1ZWJpbmdlbi5kZT4KKworCSogc2NyaXB0cy9kcGtnLW5hbWUuc2ggKHN0ZGVycik6IFVzZSBzaGVsbCByZWRpcmVjdCByYXRoZXIgdGhhbgorCS9kZXYvc3RkZXJyLgorCisyMDA1LTA4LTE0ICBTY290dCBKYW1lcyBSZW1uYW50ICA8c2NvdHRAbmV0c3BsaXQuY29tPgorCisJKiBkZWJpYW4vY29udHJvbCAoW2RzZWxlY3RdRGVzY3JpcHRpb24pOiBSZW1vdmUgImEiIGZyb20gdGhlIHN0YXJ0CisJb2YgdGhlIGRlc2NyaXB0aW9uIHN5bm9wc2lzIGxpbmUuCisJKFtkcGtnXURlc2NyaXB0aW9uKTogRGUtY2FwaXRhbGlzZSBkZXNjcmlwdGlvbiBzeW5vcHNpcyBsaW5lLgorCShbZHBrZy1kZXZdRGVzY3JpcHRpb24pOiBMaWtld2lzZS4KKworMjAwNS0wOC0xNCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLWFyY2hpdGVjdHVyZS5wbCAodXNhZ2V2ZXJzaW9uKTogQ29ycmVjdCBwdW5jdHVhdGlvbgorCWluIGNvcHlyaWdodCBtZXNzYWdlIGFuZCBlc2NhcGUgdGhlIEAgc28gUGVybCBkb2Vzbid0IHRyZWF0IGl0IGFzCisJYW4gYXJyYXkgcmVmZXJlbmNlLiAgU2FtZSBmb3IgaW5pdGlhbCBjb21tZW50LgorCisyMDA1LTA3LTE3ICBTY290dCBKYW1lcyBSZW1uYW50ICA8c2NvdHRAbmV0c3BsaXQuY29tPgorCisJKiBzcmMvcmVtb3ZlLmMgKHJlbW92YWxfYnVsa19yZW1vdmVfZmlsZXMpOiBDYWxsIGxzdGF0KCkgcmF0aGVyCisJdGhhbiBzdGF0KCkgd2hlbiByZW1vdmluZyBhIGNoYXJhY3RlciwgYmxvY2sgb3Igc2V0dWlkIGZpbGUgc28KKwl3ZSBjaGFuZ2UgdGhlIHRoaW5nIGl0c2VsZiBhbmQgbm90IHdoYXQgdGhlIHN5bWxpbmsgcG9pbnRzIHRvLgorCSogc3JjL3Byb2Nlc3NhcmMuYyAocHJvY2Vzc19hcmNoaXZlKTogTGlrZXdpc2UuCisKKwkqIHNyYy9wcm9jZXNzYXJjLmMgKHByb2Nlc3NfYXJjaGl2ZSk6IENhbGwgb2hzaGl0KCkgYWZ0ZXIgZmluZGluZworCW91dCB3ZSBkb24ndCBoYXZlIGFuIGVycm5vLCBub3Qgb2hzaGl0ZSgpLgorCisJKiBzcmMvY2xlYW51cC5jIChjdV9wcmVpbnN0dmVyeW5ldyk6IEJsYW5rIHRoZSBzdGF0dXMgaW5mb3JtYXRpb24KKwlvZiBhIG5ld2x5IGluc3RhbGxlZCBwYWNrYWdlIHRoYXQgd2UgYWJvcnRlZCB0aGUgaW5zdGFsbCBvZiwKKwl0byBhdm9pZCBoYXZpbmcgcGFja2FnZXMgaW4gYSBub3QtaW5zdGFsbGVkIHN0YXRlIGJ1dCB3aXRoIGEgdmVyc2lvbi4KKworMjAwNS0wNy0xNiAgU2NvdHQgSmFtZXMgUmVtbmFudCAgPHNjb3R0QG5ldHNwbGl0LmNvbT4KKworCSogc3JjL2ZpbGVzZGIuaCAoZmlsZW5hbWVub2RlLmZsYWdzKTogQWRkIGZubmZfcGxhY2VkX29uX2Rpc2sgZmxhZworCXRvIGluZGljYXRlIHRoYXQgdGhlIGZpbGUgaXMgbm93IG9uIHRoZSBkaXNrLCBhbmQgdGh1cyBuZWVkcyB0byBiZQorCXJlbW92ZWQgaW4gY2xlYW51cCBpZiB0aGF0IGhhcHBlbnMuCisJKiBzcmMvY2xlYW51cC5jIChjdV9pbnN0YWxsbmV3KTogSWYgPGZvbz4uZHBrZy10bXAgZGlkIG5vdCBleGlzdCwKKwlhbmQgdGhlIGZubmZfcGxhY2VkX29uX2Rpc2sgZmxhZyBpcyBzZXQsIHdlIG5vdyByZW1vdmUgdGhlIG5ld2x5CisJY3JlYXRlZCBmaWxlLgorCSogc3JjL2FyY2hpdmVzLmMgKHRhcm9iamVjdCk6IFNldCB0aGUgZm5uZl9wbGFjZWRfb25fZGlzayBmbGFnIG9uY2UKKwl0aGUgcmVuYW1lIHRvIHRoZSBmaW5hbCBkZXN0aW5hdGlvbiBzdWNjZWVkcy4gIEFkZCBhZGRpdGlvbmFsCisJY29tbWVudHMgdG8gdGhlIHNvdXJjZSBzbyB3ZSBrbm93IHdoYXQncyBvbiB0aGUgZGlzayBhdCBlYWNoIHBvaW50LgorCUZpeCB1cCB0aGUgI2lmZGVmIHN5bnRheCB0byBub3QgY29uZnVzZSBlbWFjcy4KKworCSogc3JjL2FyY2hpdmVzLmMgKGZpbGVzYXZlc3BhY2thZ2UpOiBDaGVjayB3aGV0aGVyIHRoZSBmaWxlIHdlJ3JlCisJZ29pbmcgdG8gaW5zdGFsbCBpcyBnb2luZyB0byBiZSBkaXZlcnRlZCwgYmVmb3JlIHdoZXRoZXIgaXQncyBpbiB0aGUKKwluZXcgYXJjaGl2ZS4KKworCSogc3JjL3Byb2Nlc3NhcmMuYyAocHJvY2Vzc19hcmNoaXZlKTogV2hlbiByZW1vdmluZyBmaWxlcyB0aGF0CisJd2VyZSBpbiB0aGUgb2xkIHZlcnNpb24gb2YgdGhlIHBhY2thZ2Ugb25seSwgZG9uJ3QganVzdCBjYWxsCisJaXNkaXJlY3RvcnlpbnVzZSgpLCBhY3R1YWxseSBjaGVjayB3aGV0aGVyIGl0J3MgYSBkaXJlY3RvcnkgZmlyc3Q7CisJb3RoZXJ3aXNlIHdlIHdvbid0IHJlbW92ZSBkaXZlcnRlZCB0aGluZ3MuCisKKzIwMDUtMDctMTUgIFNjb3R0IEphbWVzIFJlbW5hbnQgIDxzY290dEBuZXRzcGxpdC5jb20+CisKKwkqIGxpYi9laGFuZGxlLmMgKHJ1bl9jbGVhbnVwcyk6IE1vZGlmeSB0aGUgdmFsdWUgb2YgZmxhZ3NldAorCWFjY29yZGluZyB0byB0aGUgY2hlY2twb2ludCBtYXNrIGFuZCB2YWx1ZSBhZnRlciBwcm9jZXNzaW5nLAorCW90aGVyd2lzZSB3ZSdsbCBydW4gaGFuZGxlcnMgd2UgZGlkbid0IG1lYW4gdG8uCisJKHBvcF9jbGVhbnVwKTogUmVtb3ZlIHRoZSBmbGFnc2V0IHNldHRpbmcsIHdlIGRvbid0IG1peAorCWNoZWNrcG9pbnRzIGFuZCBjYWxscyBhbnl3aGVyZS4KKworMjAwNS0wNi0yOCAgU2NvdHQgSmFtZXMgUmVtbmFudCAgPHNjb3R0QG5ldHNwbGl0LmNvbT4KKworCSogY29uZmlndXJlLmFjOiBCdW1wIHZlcnNpb24gdG8gMS4xMy4xMX4uCisKKwkqIGNvbmZpZ3VyZS5hYzogUmVsZWFzZSAxLjEzLjEwLgorCisJKiBkZWJpYW4vZHBrZy5wcmVpbnN0IChjcmVhdGVfbG9nZmlsZSk6IFJlbW92ZSBmcm9tIHByZWluc3QuCisJKiBkZWJpYW4vZHBrZy5wb3N0aW5zdCAoY3JlYXRlX2xvZ2ZpbGUpOiBUbyBwb3N0aW5zdDsgSSBjYW4ndCB0aGluaworCW9mIGFueSBwYXJ0aWN1bGFyIHJlYXNvbiBpdCBuZWVkcyB0byBoYXBwZW4gYmVmb3JlIGNvbmZpZ3VyYXRpb24uCisJSW4gYWRkaXRpb24sIHVzZSBudW1lcmljIGlkcyBmb3IgdGhlIGNob3duIGNhbGwgdG8gYXZvaWQgcmVxdWlyZW1lbnQKKwl0aGF0IGJhc2UtcGFzc3dkIGJlIGNvbmZpZ3VyZWQgZmlyc3QuCisKKzIwMDUtMDYtMjggIE1hbm9qIFNyaXZhc3RhdmEgIDxzcml2YXN0YUBkZWJpYW4ub3JnPgorCisJKiBzcmMvYXJjaGl2ZXMuYzogTG9vayBhdCB0aGUgc2VjdXJpdHkgY29udGV4dCBvZiB0aGUgZmluYWwKKwlkZXN0aW5hdGlvbiwgbm90IHRoZSB0ZW1wb3JhcnkgZmlsZS4KKworMjAwNS0wNi0yNCAgU2NvdHQgSmFtZXMgUmVtbmFudCAgPHNjb3R0QG5ldHNwbGl0LmNvbT4KKworCSogcG8vUE9URklMRVMuaW46IFJlbW92ZSBsaWIvc3Rhci5jLgorCisyMDA1LTA2LTI0ICBNYW5vaiBTcml2YXN0YXZhICA8c3JpdmFzdGFAZGViaWFuLm9yZz4KKworCSogc3JjL2FyY2hpdmVzLmM6IFJlc3RvcmUgc2VsaW51eCBjb2RlIGluY29ycmVjdGx5IHBsYWNlZCBpbgorCWxpYi9zdGFyLmMsIG1vZGlmaWVkIHRvIGZpdCBpbiB3aXRoIHRhcm9iamVjdC4KKworMjAwNS0wNi0xNyAgU2NvdHQgSmFtZXMgUmVtbmFudCAgPHNjb3R0QG5ldHNwbGl0LmNvbT4KKworCSogZGViaWFuL2Rwa2cucHJlaW5zdCAoY29uZmlybV9kc2VsZWN0X3NwbGl0KTogV2hlbiBzZXQgLWUsCisJZm9sbG93aW5nIGEgY29tbWFuZCB3aXRoICJ8fCByZXR1cm4iIGRvZXNuJ3QgZWF0IHRoZSBleGl0IHN0YXR1cy4KKworCSogbGliL2RibW9kaWZ5LmMgKGxvZ19tZXNzYWdlKTogU2V0IHRoZSBsb2cgdG8gYmUgbGluZS1idWZmZXJlZC4KKworMjAwNS0wNi0xNiAgU2NvdHQgSmFtZXMgUmVtbmFudCAgPHNjb3R0QG5ldHNwbGl0LmNvbT4KKworCSogbGliL3N0YXIuYzogUmVtb3ZlLCBpdCdzIHVudXNlZCBjb2RlIGFuZCBjYXVzZXMgY29uZnVzaW9uLgorCSogbGliL01ha2VmaWxlLmFtIChsaWJkcGtnX2FfU09VUkNFUyk6IERvbid0IGNvbXBpbGUgc3Rhci5jLgorCisyMDA1LTA2LTE1ICBCYXN0aWFuIEtsZWluZWlkYW0gIDxjYWx2aW5AZGViaWFuLm9yZz4KKworCSogbWFuL0MvZHBrZy5jZmcuNTogQ29ycmVjdCByZWZlcmVuY2UgdG8gZHBrZyg4KSB0byBkcGtnKDEpLgorCisyMDA1LTA2LTE0ICBTY290dCBKYW1lcyBSZW1uYW50ICA8c2NvdHRAbmV0c3BsaXQuY29tPgorCisJKiBtYW4vQy9kcGtnLWFyY2hpdGVjdHVyZS4xOiBBZGQgbWlzc2luZyAicmVjZW50IiBmcm9tIHBhcmFncmFwaAorCW9uIGJhY2t3YXJkIGNvbXBhdGliaWxpdHkuCisKKzIwMDUtMDYtMTMgIFNjb3R0IEphbWVzIFJlbW5hbnQgIDxzY290dEBuZXRzcGxpdC5jb20+CisKKwkqIGRlYmlhbi9ydWxlczogQ2hlY2sgREVCX0hPU1RfQVJDSF9PUyBhbmQgb25seSBhZGQgdGhlIG9wdGlvbgorCXRvIGVuYWJsZSBTRUxpbnV4IGlmIHdlJ3JlIG9uIExpbnV4LgorCSogZGViaWFuL2NvbnRyb2wgKEJ1aWxkLURlcGVuZHMpOiBEb24ndCBidWlsZC1kZXBlbmQgb24KKwlsaWJzZWxpbnV4MS1kZXYgb24gaHVyZC1pMzg2LiAgVGhlIGNvbXBsZXRlIGxpc3QgaXMgdG9vIGxvbmcgdG8KKwltYWludGFpbiwgc28gd2FpdCB1bnRpbCB3ZSBjYW4gcHV0ICJbbGludXgtYW55XSIgaW4gaGVyZS4KKworCSogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDogSGFuZGxlIG5hdGl2ZSB0YXJiYWxscyB3aXRoIGEKKwlEZWJpYW4gcmV2aXNpb24uCisKKwkqIGxpYi9kYm1vZGlmeS5jIChsb2dfbWVzc2FnZSk6IFVzZSB0aGUgbG9jYWwgdGltZSwgbm90IFVUQzsKKwl0aGlzIGlzIG1vcmUgY29uc2lzdGVudCB3aXRoIHN5c2xvZy4KKworMjAwNS0wNi0xMyAgSm9oYW5uZXMgVmVzZXIgIDx2ZXNlckBnbXguZGU+CisKKwkqIGRlYmlhbi9kcGtnLnByZXJtICh1bmRpdmVydF9tZDVzdW0pOiBkcGtnLWRpdmVydCB0YWtlcyB0aGUKKwlkaXZlcnRlZCBmaWxlbmFtZSwgbm90IHRoZSBkZXN0aW5hdGlvbi4KKworMjAwNS0wNi0xMyAgU2NvdHQgSmFtZXMgUmVtbmFudCAgPHNjb3R0QG5ldHNwbGl0LmNvbT4KKworCSogZGViaWFuL2Rwa2cuaW5zdGFsbDogUmVtb3ZlIHN0YXJ0LXN0b3AtZGFlbW9uIHJ1bGUsIGFzIHRoYXQKKwljb3BpZXMgaXQgcmF0aGVyIHRoYW4gbW92ZXMgaXQuCisJKiBkZWJpYW4vcnVsZXMgKGJpbmFyeS1hcmNoKTogTW92ZSBzdGFydC1zdG9wLWRhZW1vbiBpbnRvIHNiaW4KKwlteSBoYW5kLgorCisyMDA1LTA2LTEyICBTY290dCBKYW1lcyBSZW1uYW50ICA8c2NvdHRAbmV0c3BsaXQuY29tPgorCisJKiBjb25maWd1cmUuYWM6IEJ1bXAgdmVyc2lvbiB0byAxLjEzLjEwfi4KKworCSogY29uZmlndXJlLmFjOiBSZWxlYXNlIDEuMTMuOS4KKworMjAwNS0wNi0xMSAgU2NvdHQgSmFtZXMgUmVtbmFudCAgPHNjb3R0QG5ldHNwbGl0LmNvbT4KKworCSogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDogQWRkIC5hcmNoLWludmVudG9yeSB0byBkZWZhdWx0IGRpZmYKKwlpZ25vcmUgcmVnZXhwLgorCisJKiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOiBJZiB0d28gYXJndW1lbnRzIGFyZSBnaXZlbiB0byBkcGtnLXNvdXJjZSwKKwl1c2UgdGhlIHNlY29uZCB0byBzZXQgJG5ld2RpcmVjdG9yeSByYXRoZXIgdGhhbiBjcmVhdGluZyBpdCBvdXJzZWx2ZXMuCisJSXQncyBhbiBlcnJvciB0byBzcGVjaWZ5IGFuIG91dHB1dCBkaXJlY3RvcnkgdGhhdCBleGlzdHMuCisJKHVzYWdldmVyc2lvbik6IERvY3VtZW50IG9wdGlvbmFsIHNlY29uZCBhcmd1bWVudCB0byBkcGtnLXNvdXJjZSAteC4KKwkKKwkqIG1hbi9DL2Rwa2ctc291cmNlLjE6IERvY3VtZW50IG9wdGlvbmFsIHNlY29uZCBhcmd1bWVudC4KKworMjAwNS0wNi0xMSAgTWF0dCBLcmFhaSAgPGtyYWFpQGFsdW1uaS5jbXUuZWR1PiwKKwkgICAgU2NvdHQgSmFtZXMgUmVtbmFudCAgPHNjb3R0QG5ldHNwbGl0LmNvbT4KKworCSogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDogTW92ZSB0aGUgLm9yaWcgZGlyZWN0b3J5IG91dCBvZiB0aGUgd2F5CisJZHVyaW5nIHRoZSBkdXJhdGlvbiBvZiB0aGUgc2NyaXB0LCBtb3ZpbmcgaXQgYmFjayBhZ2FpbiBhZnRlcndhcmRzLgorCisyMDA1LTA2LTExICBCcmVuZGFuIE8nRGVhICA8Ym9kQGRlYmlhbi5vcmc+CisKKwlTdXBwb3J0IHVucGFja2luZyBvZiAiV2lnIEFuZCBQZW4iIChGb3JtYXQ6IDIuMCkgc291cmNlIHBhY2thZ2VzLgorCisJKiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOiBXaGVuIHVucGFja2luZyBhIHNvdXJjZSBwYWNrYWdlIHdpdGggYQorCTIueCBmb3JtYXQsIGFsbG93IG11bHRpcGxlIG9yaWcgdGFyYmFsbHMgYW5kIGFsbG93IHRoZSBkaWZmIHRvIGJlCisJcmVwbGFjZWQgYnkgYSBkZWJpYW4udGFyLiAgQWRkaXRpb25hbCBvcmlnIHRhcmJhbGxzIGFyZSBuYW1lZAorCSIqLm9yaWcteHh4LnRhciIgd2hlcmUgdGhlICJ4eHgiIGlzIHRoZSBuYW1lIG9mIHRoZSBzdWItZGlyZWN0b3J5CisJb2YgdGhlIHNvdXJjZSB3aGVyZSB0aGV5IHNob3VsZCBiZSB1bnBhY2tlZC4gIFRoZSBkZWJpYW4udGFyIGlzCisJdW5wYWNrZWQgYXMgdGhlIGRlYmlhbiBzdWItZGlyZWN0b3J5IG9mIHRoZSBzb3VyY2UgYW5kIG1heSBjb250YWluCisJYmluYXJpZXMgKHdoaWNoIHRoZSBkaWZmIGNhbid0KSBhbmQgcGF0Y2hlcyAoaW4gYSBwYXRjaGVzCisJc3ViLWRpcmVjdG9yeSkgd2hpY2ggYXJlIGF1dG9tYXRpY2FsbHkgYXBwbGllZCBkdXJpbmcgdW5wYWNraW5nLgorCShjaGVja2RpZmYpOiBNb3ZlIGRpZmYgY2hlY2tpbmcgY29kZSBpbnRvIHN1Yi1yb3V0aW5lIGFzIHdlIGNhbGwKKwlpdCBtdWx0aXBsZSB0aW1lcyBub3cuICBBbGxvdyB1bmNvbXByZXNzZWQgcGF0Y2hlcywgY3J1ZnQKKwlhdCB0aGUgc3RhcnQgb2YgYSBwYXRjaGEgYW5kIGJlIGxlc3Mgc3RyaWN0IGFib3V0IHBhdGNoZWQgZGlyZWN0b3J5CisJbmFtZSAoaW5jbHVkaW5nIGFsbG93aW5nIC9kZXYvbnVsbCkuICBTa2lwICJJbmRleDoiIGhlYWRlciBnZW5lcmF0ZWQKKwlieSBDVlMuCisJKGZvcmtnemlwcmVhZCk6IFJ1biBlaXRoZXIgZ3VuemlwIG9yIGJ1bnppcDIgZGVwZW5kaW5nIG9uIHRoZQorCWZpbGVuYW1lLCBhbGxvd2luZyB1cyB0byBzdXBwb3J0IC50YXIuYnoyLCBhbmQgLmRpZmYuYnoyLgorCShoYW5kbGVmb3JtYXQpOiBDb21wYXJlIGEgcmFuZ2Ugb2YgbWFqb3IgdmVyc2lvbnMsIGFzIHdlIG5vdworCXN1cHBvcnQgYm90aCAxLjAgYW5kIDIuMCBmb3JtYXRzLgorCShkZWZfZHNjZm9ybWF0KTogR2VuZXJhdGUgMS4wIGZvcm1hdCBwYWNrYWdlcyBieSBkZWZhdWx0LgorCShzZXRmaWxlKTogUmVtb3ZlZCB1bnVzZWQgZnVuY3Rpb24uCisJKiBkZWJpYW4vY29udHJvbCAoW2Rwa2ctZGV2XVJlY29tbWVuZHMpOiBSZWNvbW1lbmQgYnppcDIsIGl0J3MKKwlub3QgYW4gYWJzb2x1dGUgZGVwZW5kZW5jeSB1bnRpbCBiejIgcGFja2FnZXMgYXJlIHN1cHBvcnRlZCBieQorCWthdGllIGFuZCBwb2xpY3kuCisKKzIwMDUtMDYtMTEgIFNjb3R0IEphbWVzIFJlbW5hbnQgIDxzY290dEBuZXRzcGxpdC5jb20+CisKKwkqIG00L2xpYnMubTQgKERQS0dfTElCX1pMSUIsIERQS0dfTElCX0JaMik6IFJld3JpdGUgdG8gbWF0Y2ggdGhlCisJd2F5IC0td2l0aC1zZWxpbnV4IHdvcmtzLiAgQWN0dWFsbHkgY2hlY2sgd2hldGhlciB0aGUgbGlicmFyeSBhbmQKKwloZWFkZXIgZmlsZXMgd2UgbmVlZCBhcmUgYXZhaWxhYmxlLCB1c2luZyB0aGUgY29uZmlndXJlIG9wdGlvbiB0bworCWRldGVybWluZSB3aGV0aGVyIHRoZSB0ZXN0cyBzaG91bGQgYmUgc2tpcHBlZCAoPW5vKSBvciBjYXVzZSBhCisJaGFyZCBmYWlsdXJlIGlmIG5vdCBwcmVzZW50ICg9eWVzIG9yID1zdGF0aWMpLgorCSogbGliL01ha2VmaWxlLmFtIChJTkNMVURFUyk6IFJlbW92ZSBaTElCX0NGTEFHUyBhbmQgQloyX0NGTEFHUyBhcworCXdlIGRvbid0IHNldCB0aGVzZSB0byBhbnl0aGluZyBpbiBjb25maWd1cmUgYW55bW9yZSAoV0lUSF9aTElCIGFuZAorCVdJVEhfQloyIGFyZSBzZXQgaW4gY29uZmlnLmgpIGFuZCB1c2VycyB3b3VsZCBzZXQgQ0ZMQUdTIGl0c2VsZiB0bworCXN1cHBseSBtaXNzaW5nIC1JIGFyZ3VtZW50cy4KKwkqIGRwa2ctZGViL01ha2VmaWxlLmFtIChJTkNMVURFUyk6IFJlbW92ZSBaTElCX0NGTEFHUyBhbmQgQloyX0NMRkFHUy4KKwkqIHNyYy9NYWtlZmlsZS5hbSAoZHBrZ19xdWVyeV9MREFERCk6IFJlbW92ZSBaTElCX0xJQlMgYW5kIENGTEFHU19MSUJTCisJYXMgZHBrZy1xdWVyeSBkb2Vzbid0IHVzZSB0aGVtLgorCisJKiBtNC9saWJzLm00IChEUEtHX0xJQl9TRUxJTlVYKTogQWRkIG5ldyB0ZXN0IGZvciB0aGUgc2VsaW51eAorCWxpYnJhcnkgYW5kIGhlYWRlci4gIFRoaXMgd29ya3MgYSBsaXR0bGUgZGlmZmVyZW50bHkgZnJvbSB0aGUKKwljdXJyZW50IC0td2l0aC17emxpYixiejJ9IHRlc3RzIGluIHRoYXQgaWYgbm8gb3B0aW9uIGlzIGdpdmVuIGl0CisJc3RpbGwgdHJpZXMgdG8gZW5hYmxlIGl0IGlmIHBvc3NpYmxlLiAgSWYgInllcyIgb3IgInN0YXRpYyIgaXMgZ2l2ZW4sCisJdGhhdCBmb3JjZXMgdGhlIHJlcXVpcmVtZW50IChjb25maWd1cmUgZmFpbHMgaWYgbm90IHByZXNlbnQpLCBpZiAibm8iCisJaXMgZ2l2ZW4gdGhlIHRlc3RzIGFyZSBza2lwcGVkLgorCSogY29uZmlndXJlLmFjOiBJbmNsdWRlIHNlbGludXggdGVzdC4KKworMjAwNS0wNi0xMSAgTWFub2ogU3JpdmFzdGF2YSAgPHNyaXZhc3RhQGRlYmlhbi5vcmc+CisKKwkqIGxpYi9zdGFyLmMgKEV4dHJhY3RGaWxlLCBTZXRNb2Rlcyk6IElmIGRwa2cgaXMgY29tcGlsZWQgd2l0aAorCVNFTGludXgsIHRlc3Qgb25jZSB3aGV0aGVyIFNFTGludXggaXMgZW5hYmxlZCBvbiB0aGUgc3lzdGVtLiAgSWYgaXQKKwlpcyBlbmFibGVkLCBmaW5kIG91dCB0aGUgc2VjdXJpdHkgY29udGV4dCBvZiB0aGUgZmlsZSBmcm9tIGl0cyBwYXRoCisJYW5kIGVpdGhlciBzZXQgd2hhdCB3ZSB0aGluayBpdCBzaG91bGQgYmUgb3IgbGV0IHRoZSBkZWZhdWx0IHNlY3VyaXR5CisJY29udGV4dCBmb3IgdGhlIHByb2Nlc3MgYmUgYXBwbGllZC4KKwkqIGRlYmlhbi9jb250cm9sIChCdWlsZC1EZXBlbmRzKTogQWRkIGxpYnNlbGludXgxLWRldiBhcyBhIGJ1aWxkCisJZGVwZW5kZW5jeS4gCisJKiBkZWJpYW4vcnVsZXM6IENvbXBpbGUtaW4gc3VwcG9ydCBmb3Igc2VsaW51eCBhbmQgbGluayBzdGF0aWNhbGx5LgorCSogZHBrZy1kZWIvTWFrZWZpbGUuYW0gKGRwa2dfZGViX0xEQUREKTogTGluayBkcGtnLWRlYiB3aXRoCisJU0VMSU5VWF9MSUJTLgorCSogc3JjL01ha2VmaWxlLmFtIChkcGtnX0xEQUREKTogTGluayBkcGtnIHdpdGggU0VMSU5VWF9MSUJTLgorCisyMDA1LTA2LTEwICBTY290dCBKYW1lcyBSZW1uYW50ICA8c2NvdHRAbmV0c3BsaXQuY29tPgorCisJKiBsaWIvZGJtb2RpZnkuYyAobG9nX21lc3NhZ2UpOiBOZXcgZnVuY3Rpb24gdGhhdCB3cml0ZXMgYQorCWZvcm1hdHRlZCBzdHJpbmcgdG8gdGhlIGxvZyBmaWxlLCBvcGVuaW5nIGl0IGlmIGl0IGhhc24ndCBiZWVuCisJeWV0LiAgSW4gY2FzZSBvZiBlcnJvciwgd2UgcHJpbnQgaXQgYW5kIGRvbid0IHRyeSB0byBvcGVuIHRoZQorCWZpbGUgYWdhaW4uCisJKG1vZHN0YXRkYl9ub3RlKTogUmVwbGFjZSBsb2cgd3JpdGluZyBjb2RlIHdpdGggY2FsbCB0byBuZXcKKwlsb2dfbWVzc2FnZSBmdW5jdGlvbi4KKwkqIHNyYy9jb25maWd1cmUuYyAocHJvbXB0Y29uZmFjdGlvbik6IFJlcGxhY2UgbG9nIHdyaXRpbmcgY29kZQorCXdpdGggY2FsbCB0byBsb2dfbWVzc2FnZSBmdW5jdGlvbi4KKwkqIHNyYy9oZWxwLmMgKGxvZ19hY3Rpb24pOiBTaW1wbGlmeSB0byBqdXN0IGEgbG9nX21lc3NhZ2UgY2FsbC4KKwkqIGxpYi9kcGtnLWRiLmg6IFJlbW92ZSBleHRlcm4gZGVmaW5pdGlvbiBvZiBsb2dfcGlwZXMsIHJlcGxhY2UKKwl3aXRoIGxvZ19tZXNzYWdlIGZ1bmN0aW9uLgorCSogc3JjL21haW4uYyAoY21kaW5mb3MpOiBDaGFuZ2UgLS1sb2cgYXJndW1lbnQgYWN0aW9uIHRvIGp1c3QKKwlzdG9yaW5nIHRoZSBzdHJpbmcgaW4gdGhlIGxvZ19maWxlIHZhcmlhYmxlLgorCShzZXRmaWxlKTogUmVtb3ZlIGZ1bmN0aW9uLgorCSogbGliL215b3B0LmMgKG15ZmlsZW9wdCk6IHN0cmR1cCB0aGUgc3RyaW5nIG9wdGlvbiBhcmd1bWVudAorCWJlZm9yZSBzdG9yaW5nIGl0LCBvdGhlcndpc2UgaXQganVzdCBnZXRzIG92ZXJ3cml0dGVuIGJ5IHRoZSBuZXh0CisJbGluZS4KKworCSogY29uZmlndXJlLmFjOiBCdW1wIHZlcnNpb24gdG8gMS4xMy45fi4KKworCSogY29uZmlndXJlLmFjOiBSZWxlYXNlIDEuMTMuOC4KKworCSogbGliL3BhcnNlLmMgKHBhcnNlZGIpOiBDaGVjayB3aGV0aGVyIHRoZSBmaWxlIHNpemUgaXMgZ3JlYXRlcgorCXRoYW4gemVybyBieXRlcyBpbiBzaXplIGJlZm9yZSB0cnlpbmcgdG8gbW1hcCBvciBtYWxsb2MgaXQsIGlmIGl0CisJaXNuJ3QgZG9uJ3QgcHJvY2VzcyB0aGUgZmlsZS4KKworMjAwNS0wNi0wOSAgU2NvdHQgSmFtZXMgUmVtbmFudCAgPHNjb3R0QG5ldHNwbGl0LmNvbT4KKworCSogY29uZmlndXJlLmFjOiBCdW1wIHZlcnNpb24gdG8gMS4xMy44fi4KKworCSogY29uZmlndXJlLmFjOiBSZWxlYXNlIDEuMTMuNy4KKworCSogc3JjL21haW4uYyAoc2V0ZmlsZSk6IE1ha2UgaW5hYmlsaXR5IHRvIG9wZW4gdGhlIGxvZyBmaWxlIGEKKwl3YXJuaW5nIG9ubHksIHJhdGhlciB0aGFuIGJhaWxpbmcgb3V0OyBhbmQgaWYgbm90IHJ1bm5pbmcgYXMgcm9vdCwKKwlkb24ndCBldmVuIHNob3cgdGhlIHdhcm5pbmcuCisKKzIwMDUtMDYtMDkgIENvbGluIFdhdHNvbiAgPGNqd2F0c29uQHVidW50dS5jb20+CisKKwkqIG1hbi9DL2Rwa2ctYXJjaGl0ZWN0dXJlLjE6IEluY2x1ZGUgZXhhbXBsZSBkZWJpYW4vcnVsZXMgc25pcHBldAorCXRvIHN1cHBvcnQgb2xkZXIgdmVyc2lvbnMgb2YgZHBrZy1kZXYgYWZ0ZXIgdXBkYXRpbmcgdG8gdXNlIG5ldworCXZhcmlhYmxlcy4KKworMjAwNS0wNi0wOSAgU2NvdHQgSmFtZXMgUmVtbmFudCAgPHNjb3R0QG5ldHNwbGl0LmNvbT4KKworCSogbWFuL0MvZHBrZy1hcmNoaXRlY3R1cmUuMTogQ2xlYW4gdXAgZXhhbXBsZXMgdXNpbmcgLm5mIGFuZCAuZmkKKwl0byBwcm9kdWNlIGEgcHJlLWxpa2UgZWZmZWN0LiAgSW5kZW50IHRoZSBleGFtcGxlcyBhIGxpdHRsZS4KKworMjAwNS0wNi0wNiAgU2NvdHQgSmFtZXMgUmVtbmFudCAgPHNjb3R0QG5ldHNwbGl0LmNvbT4KKworCSogY29uZmlndXJlLmFjOiBCdW1wIHZlcnNpb24gdG8gMS4xMy43fi4KKworCSogZGViaWFuL2Rwa2cuaW5zdGFsbDogRG9uJ3QgdXNlIGRoX2luc3RhbGwgdG8gY29weSB0aGUgbG9ncm90YXRlCisJZmlsZSBiZWNhdXNlIGl0IGNhbid0IHJlbmFtZSB0aGluZ3MuCisJKiBkZWJpYW4vcnVsZXMgKGJpbmFyeS1hcmNoKTogSW5zdGFsbCBhbmQgcmVuYW1lIG1hbnVhbGx5IGluc3RlYWQuCisJKiBjb25maWd1cmUuYWM6IFJlbGVhc2UgMS4xMy42IChCcm93biBQYXBlciBCYWcpLgorCisJKiBjb25maWd1cmUuYWM6IEJ1bXAgdmVyc2lvbiB0byAxLjEzLjZ+LgorCisJKiBjb25maWd1cmUuYWM6IFJlbGVhc2UgMS4xMy41LgorCisyMDA1LTA2LTA2ICBQaGlsaXBwZSBCYXRhaWxsZXIgIDxwaGlsaXBwZS5iYXRhaWxsZXJAZnJlZS5mcj4KKworCSogbWFuL2ZyLyo6IEFsbCBmcmVuY2ggbWFuIHBhZ2VzIHVwZGF0ZWQKKworMjAwNS0wNi0wNiAgQ2hyaXN0aWFuIFBlcnJpZXIgIDxidWJ1bGxlQGRlYmlhbi5vcmc+CisKKwkqIG1hbi9wdF9CUi91cGRhdGUtYWx0ZXJuYXRpdmVzLjg6IFN5bnRheCBlcnJvciBjb3JyZWN0ZWQuCisKKzIwMDUtMDYtMDYgIEtldmluIFJ5ZGUgIDx1c2VyNDJAemlwLmNvbS5hdT4KKworCSogbWFuL3N2L2Rwa2ctZGViLjE6IFN5bnRheCBlcnJvciBjb3JyZWN0ZWQuCisJKiBtYW4vZXMvZHBrZy1zY2FucGFja2FnZXMuMTogU3ludGF4IGVycm9yIGNvcnJlY3RlZC4KKworMjAwNS0wNi0wNiAgU2NvdHQgSmFtZXMgUmVtbmFudCAgPHNjb3R0QG5ldHNwbGl0LmNvbT4KKworCSogc3JjL2NvbmZpZ3VyZS5jIChwcm9tcHRjb25mYWN0aW9uKTogUmVjb3JkIHVzZXIncyBkZWNpc2lvbiBhYm91dAorCWEgY29uZmZpbGUgaW4gdGhlIGxvZyBmaWxlIGFzIGVpdGhlciAiaW5zdGFsbCIgb3IgImtlZXAiLgorCSogbWFuL0MvZHBrZy4xOiBEb2N1bWVudCB0aGUgY29uZmZpbGUgb3V0cHV0IHRoYXQnbGwgYXBwZWFyIGluIHRoZQorCWxvZyBmaWxlLgorCisJKiBkZWJpYW4vZHBrZy5jZmc6IENyZWF0ZSBhIGxvZy1maWxlIGJ5IGRlZmF1bHQuCisJKiBkZWJpYW4vZHBrZy5sb2dyb3RhdGU6IEluY2x1ZGUgYSBsb2dyb3RhdGUgZmlsZSBmb3IgdGhlIGxvZy4KKwkqIGRlYmlhbi9kcGtnLmluc3RhbGw6IEluc3RhbGwgdGhlIGRlYmlhbi9kcGtnLmxvZ3JvdGF0ZSBmaWxlIGFzCisJL2V0Yy9sb2dyb3RhdGUuZC9kcGtnCisJKiBNYWtlZmlsZS5hbSAoRVhUUkFfRElTVCk6IFNoaXAgdGhlIGRlYmlhbi9kcGtnLmxvZ3JvdGF0ZSBmaWxlLgorCSogZGViaWFuL2Rwa2cucHJlaW5zdCAoY3JlYXRlX2xvZ2ZpbGUpOiBDcmVhdGUgYSBsb2cgZmlsZSB3aXRoCisJdGhlIGRlZmF1bHQgcGVybWlzc2lvbnMuCisJKiBkZWJpYW4vZHBrZy5wb3N0cm0gKHJlbW92ZV9sb2dmaWxlKTogUmVtb3ZlIGxvZyBmaWxlcyB3aGVuIGRwa2cKKwlpcyBwdXJnZWQgKG5vdCB0aGF0IGl0IHdpbGwgaGFwcGVuLCBidXQgaXQgcGF5cyB0byBiZSBjb21wbGlhbnQpLgorCQorCSogZGViaWFuL2Rwa2cucHJlaW5zdCAoY29uZmlybV9kc2VsZWN0X3NwbGl0KTogT25seSBjaGVjayBwcm9jZXNzCisJbGlzdCBmb3IgZHNlbGVjdCBpZiBwcyBpcyBpbnN0YWxsZWQ7IHRoaXMgc2hvdWxkIGJlIHRoZSBjYXNlIGR1cmluZworCXVwZ3JhZGVzIGFueXdheS4KKworCSogZGViaWFuL2Rwa2cucHJlcm0gKHVuZGl2ZXJ0X21kNXN1bSk6IFJlbW92ZSBtZDVzdW0gZGl2ZXJzaW9uCisJd2hlbiB0aGUgcGFja2FnZSBpcyByZW1vdmVkIG9yIGRvd25ncmFkZWQgdG8gYSB2ZXJzaW9uIHdoZXJlCisJd2Ugc3VwcGxpZWQgb3VyIG93biBtZDVzdW0uCisJKiBkZWJpYW4vZHBrZy5wb3N0aW5zdCAoZGl2ZXJ0X21kNXN1bSk6IERpdmVydCBtZDVzdW0gYXMgbG9uZyBhcworCXRoZXJlIGlzbid0IG9uZSwgZG9uJ3QgZXhwbGljaXRseSBjaGVjayBmb3IgdGhlIHRleHR1dGlscyBmaWxlCisJYmVpbmcgdGhlcmUgYXMgaXQgbWF5IGJlIGluc3RhbGxlZCBhZnRlcndhcmRzLgorCisyMDA1LTA1LTI2ICBTY290dCBKYW1lcyBSZW1uYW50ICA8c2NvdHRAbmV0c3BsaXQuY29tPgorCisJKiBkZWJpYW4vY29udHJvbCAoTWFpbnRhaW5lcik6IEknbSBnb2luZyB0byBvZmZpY2lhbGx5IHRha2UgYmxhbWUgZm9yCisJdGhpcyBwYWNrYWdlIElhbi1zdHlsZSwgd2UnbGwga2VlcCBidWdzIGdvaW5nIHRvIHRoZSBsaXN0IHVzaW5nIHRoZQorCVBUUyBpbnN0ZWFkLgorCisyMDA1LTA1LTI1ICBTY290dCBKYW1lcyBSZW1uYW50ICA8c2NvdHRAbmV0c3BsaXQuY29tPgorCisJKiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOiBSZWNvZ25pc2UgRW5oYW5jZXMgaW4gdGhlIHBhY2thZ2UncworCXNlY3Rpb24gb2YgY29udHJvbCBmaWxlcy4KKworMjAwNS0wNS0yMyAgU2NvdHQgSmFtZXMgUmVtbmFudCAgPHNjb3R0QG5ldHNwbGl0LmNvbT4KKworCSogY3B1dGFibGU6IENoYW5nZSBHTlUgbmFtZSBvZiB0aGUgaTM4NiBDUFUgdG8gaTQ4NiwgdG8gcmVmbGVjdAorCXJlYWxpdHkuCisJKiBkZWJpYW4vYXJjaHRhYmxlOiBVcGRhdGUgZmlyc3QgZmllbGQgb2YgaTM4NiBhbmQgaHVyZC1pMzg2IHRvCisJdXNlIGk0ODYgYXMgdGhlIENQVSBuYW1lLgorCisyMDA1LTA0LTAzICBTY290dCBKYW1lcyBSZW1uYW50ICA8c2NvdHRAbmV0c3BsaXQuY29tPgorCisJKiBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLnBsIChnbnVfdG9fZGViaWFuKTogQ2hlY2sgY3B1dGFibGUKKwlhbmQgb3N0YWJsZSBpbiBmaWxlIG9yZGVyLgorCSogb3N0YWJsZTogUGxhY2UgaHVyZCBhdCB0aGUgYm90dG9tIHNvIGl0J3MgY2hlY2tlZCBsYXN0LgorCisyMDA1LTAzLTI5ICBTY290dCBKYW1lcyBSZW1uYW50ICA8c2NvdHRAbmV0c3BsaXQuY29tPgorCisJKiBjb25maWd1cmUuYWM6IEJ1bXAgdmVyc2lvbiB0byAxLjEzLjV+LgorCisJKiBjb25maWd1cmUuYWM6IFJlbGVhc2UgMS4xMy40LgorCisyMDA1LTAzLTI4ICBTY290dCBKYW1lcyBSZW1uYW50ICA8c2NvdHRAbmV0c3BsaXQuY29tPgorCisJKiBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLnBsOiBDYXRjaCAtTCBhbmQgbGlzdCBldmVyeSBwb3NzaWJsZQorCW9zIGFuZCBjcHUgY29tYmluYXRpb24uCisJKHVzYWdldmVyc2lvbik6IEFkZCAtTCBvcHRpb24gdG8gZGVzY3JpcHRpb24uCisJKHJlYWRfY3B1dGFibGUpOiBBZGQgaW4tb3JkZXIgbGlzdCBvZiBjcHUgdmFsdWVzIHRvIEBjcHUgYXJyYXkuCisJKHJlYWRfb3N0YWJsZSk6IEFkZCBpbi1vcmRlciBsaXN0IG9mIG9zIHZhbHVlcyB0byBAb3MgYXJyYXkuCisJKiBtYW4vQy9kcGtnLWFyY2hpdGVjdHVyZS4xOiBEb2N1bWVudCAtTCBvcHRpb24uCisKKzIwMDUtMDMtMjcgIFNjb3R0IEphbWVzIFJlbW5hbnQgIDxzY290dEBuZXRzcGxpdC5jb20+CisKKwkqIG00L2FyY2gubTQgKERQS0dfT1NfVFlQRSk6IEFsbG93IGEgdmVuZG9yIHRvIGFwcGVhciBhdCB0aGUgc3RhcnQKKwlvZiAkb3NfdHlwZS4KKwkqIHNjcmlwdHMvZHBrZy1hcmNoaXRlY3R1cmUucGwgKGdudV90b19kZWJpYW4pOiBEb24ndCBzdHJpcCB0aGUKKwl2ZW5kb3Igb3V0LCBqdXN0IGFsbG93IGl0IHRvIGFwcGVhciBhdCB0aGUgc3RhcnQgb2YgdGhlIHN0cmluZy4KKworMjAwNS0wMy0yMSAgU2NvdHQgSmFtZXMgUmVtbmFudCAgPHNjb3R0QG5ldHNwbGl0LmNvbT4KKworCSogY29uZmlndXJlLmFjOiBCdW1wIHZlcnNpb24gdG8gMS4xMy40fi4KKworCSogY29uZmlndXJlLmFjOiBSZWxlYXNlIDEuMTMuMy4KKworCSogc2NyaXB0cy9jb250cm9sbGliLnBsICh1bmtub3duKTogT3V0cHV0IGZpZWxkIG5hbWUgd2UgaGF2ZSBpbgorCWhhbmQsIHJhdGhlciB0aGFuIHRyeWluZyB0byBsb29rIGl0IHVwIGluIGEgZGljdGlvbmFyeSBpbiB3aGljaAorCWl0IGRvZXNuJ3QgZXhpc3QgeWV0LgorCisJKiBzY3JpcHRzL2NoYW5nZWxvZy9kZWJpYW4ucGw6IFJldmVydCBhY2NpZGVudGFsIGhhbGYtcGF0Y2ggdGhhdAorCXR1cm5lZCB0aGUgTWFpbnRhaW5lciBmaWVsZCBpbnRvIGEgQ2hhbmdlZC1CeSBmaWVsZC4KKworMjAwNS0wMy0yMSAgTWFyYyBEZXF1w6huZXMgIDxkdWNrQGR1Y2tjb3JwLm9yZz4KKworCSogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6IEZpeCBmaWxlbmFtZSByZWdleHAgdG8gYWxsb3cgJy0nCisJaW4gYXJjaGl0ZWN0dXJlIG5hbWVzLgorCisyMDA1LTAzLTIwICBTY290dCBKYW1lcyBSZW1uYW50ICA8c2NvdHRAbmV0c3BsaXQuY29tPgorCisJKiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnNoOiBPdXRwdXQgInNvdXJjZSBjaGFuZ2VkIGJ5IgorCXJhdGhlciB0aGFuICJzb3VyY2UgbWFpbnRhaW5lciBpcyIuCisKKwkqIG1hbi9DL2Rwa2cuMTogRG9jdW1lbnQgdGhhdCAtLWdldC1zZWxlY3Rpb25zIHRha2VzIGEgcGFja2FnZQorCW5hbWUgcGF0dGVybi4gIERvY3VtZW50IGZvcm1hdCBvZiBmaWxlIC0tc2V0LXNlbGVjdGlvbnMgdGFrZXMuCisKKwkqIG1hbi9DL2Rwa2ctc291cmNlLjE6IFJlbW92ZSB1bm5lY2Vzc2FyeSByZWZlcmVuY2VzIHRvIHBvbGljeQorCWFuZCBub24tZXhpc3RlbnQgcGFja2FnaW5nIG1hbnVhbC4gIFJlZmVyIHRvIGRwa2ctc2hsaWJkZXBzKDEpCisJZm9yIHNobGlicyBmaWxlIGZvcm1hdC4gIFdpbGwgbmVlZCB0byBkb2N1bWVudCBjaGFuZ2Vsb2cgZm9ybWF0CisJYXQgc29tZSBwb2ludC4KKwkqIG1hbi9DL2RzZWxlY3QuMTogUmVtb3ZlIHVubmVjZXNzYXJ5IHJlZmVyZW5jZSB0byBwb2xpY3ksIHJlZmVyCisJb3RoZXIgcmVmZXJlbmNlIHRvIHRoZSBwYWNrYWdlIGJ5IG5hbWUuCisJKiBtYW4vQy9kZWItb2xkLjU6IFJlbW92ZSByZWZlcmVuY2UgdG8gbm9uLWV4aXN0ZW50IHBhY2thZ2luZworCW1hbnVhbC4KKwkqIG1hbi9DL2RlYi41OiBSZW1vdmUgcmVmZXJlbmNlIHRvIG5vbi1leGlzdGVudCBwYWNrYWdpbmcKKwltYW51YWwsIHdpbGwgaGF2ZSB0byBkb2N1bWVudCBjb250cm9sIGNvbnRlbnRzIGJldHRlciBoZXJlIGxhdGVyLgorCisJKiBtYW4vQy9kcGtnLjE6IEZpeCB0eXBvIChmaWxlaXMgLT4gZmlsZSBpcykuCisKKwkqIG9yaWdpbnMvZGViaWFuOiBSZW1vdmUgdHJhaWxpbmcgbGluZS4KKworMjAwNS0wMy0yMCAgTWF0aGlhcyBXZWlkbmVyICA8bWF0aGlhc0B3ZWlkbmVyLmluLWJhZC1zY2htaWVkZWJlcmcuZGU+CisKKwkqIHNjcmlwdHMvZHBrZy1zY2Fuc291cmNlcy5wbCAoZ2V0b3B0KTogQWRkIChAKSB0byBwcm90b3R5cGUuCisKKzIwMDUtMDMtMjAgIFNjb3R0IEphbWVzIFJlbW5hbnQgIDxzY290dEBuZXRzcGxpdC5jb20+CisKKwkqIG1hbi9DL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuODogRG9jdW1lbnQgd2hhdCB0aGUgJysnIGFuZCAnKicKKwltYXJrZWQgY2hvaWNlcyBpbiAtLWNvbmZpZyBvdXRwdXQgbWVhbi4KKworCSogc3JjL21haW4uYyAodXNhZ2UpOiBNYWtlIGFwdGl0dWRlIHF1b3RpbmcgY29uc2lzdGVudC4KKworCSogbWFuL0MvZHBrZy1kaXZlcnQuODogTWVudGlvbiAtLXRydWVuYW1lIGFsb25nc2lkZSB0aGUgY29tbWVudAorCWFib3V0IHdoYXQgaXQgZG9lcy4KKworCSogc3JjL21haW4uYyAocHJpbnRmb3JoZWxwKTogTWVudGlvbiBhcHRpdHVkZSBhbG9uZ3NpZGUgZHNlbGVjdC4KKwkqIGRwa2ctZGViL21haW4uYyAodXNhZ2UpOiBNZW50aW9uIGFwdGl0dWRlIGFsb25nc2lkZSBkc2VsZWN0LgorCisJKiBsaWIvZWhhbmRsZS5jICh3YXJuaW5nZik6IEFkZCBtaXNzaW5nIG5ld2xpbmUgdG8gZW5kIG9mIGZvcm1hdAorCXN0cmluZy4KKworCSogbWFuL0MvdXBkYXRlLWFsdGVybmF0aXZlcy44OiBIYXJtb25pc2UgbmFtZXMgZm9yIGFyZ3VtZW50cyB0bworCS0taW5zdGFsbCBvcHRpb24uCisKKwkqIG1hbi9DL2Rwa2cuMTogUmVtb3ZlICJtZWRpdW0tbGV2ZWwiIGZyb20gZHBrZydzIGRlc2NyaXB0aW9uLAorCWl0J3Mgc29tZXdoZXJlIGJldHdlZW4gbWVkaXVtIGFuZCBsb3cuICBUaGUgZmFjdCBpdCdzIGEgcGFja2FnZQorCW1hbmFnZXIgaXMgc3VmZmljaWVudCBkZXNjcmlwdGlvbi4KKworCSogc3JjL3F1ZXJ5LmMgKGxpc3RwYWNrYWdlcyk6IENyZWF0ZSBhIHNlY29uZCBmaWx0ZXJlZCBsaXN0IG9mCisJcGFja2FnZXMsIHNvcnQgdGhhdCAocmF0aGVyIHRoYW4gdGhlIGNvbXBsZXRlIGxpc3QpIGFuZCB1c2UgdGhhdAorCXdoZW4gY2FsbGluZyBsaXN0MXBhY2thZ2UuICBUaGlzIG1lYW5zIHdlIG9ubHkgZXhwYW5kIHRvIHRoZQorCWxvbmdlc3QgZmllbGQgaW4gdGhlIHJlc3VsdCwgbm90IHRoZSBkYXRhYmFzZS4gIEhvcGVmdWxseSB0aGUKKwlzcGVlZCBnYWluIG9mIG9ubHkgc29ydGluZyBhIGZpbHRlcmVkIGxpc3Qgb3V0d2VpZ2h0cyB0aGUgc2xpZ2h0eQorCWV4dHJhIGNvbXB1dGF0aW9uIHRpbWUuCisKKzIwMDUtMDMtMTggIFNjb3R0IEphbWVzIFJlbW5hbnQgIDxzY290dEBuZXRzcGxpdC5jb20+CisKKwkqIGNvbmZpZ3VyZS5hYzogQnVtcCB2ZXJzaW9uIHRvIDEuMTMuM34uCisKKwkqIGNvbmZpZ3VyZS5hYzogUmVsZWFzZSAxLjEzLjIuCisKKwkqIHNyYy9xdWVyeS5jIChnZXR3aWR0aCk6IFJldHVybiAtMSBpZiB3ZSdyZSBub3Qgb24gYSB0dHkuCisJKGxpc3QxcGFja2FnZSk6IFRha2UgYSBwYWNrYWdlIGxpc3QgYXMgd2VsbCwgYW5kIGlmIGdldHdpZHRoKCkKKwlyZXR1cm5zIC0xIGRldGVybWluZSB0aGUgbG9uZ2VzdCBuYW1lLCB2ZXJzaW9uIGFuZCBkZXNjcmlwdGlvbgorCWFuZCB1c2UgdGhvc2UgZm9yIG91dHB1dC4KKwkobGlzdHBhY2thZ2VzKTogUGFzcyB0aGUgcGFja2FnZSBsaXN0IGFuZCBsZW5ndGggdG8gYm90aAorCWNhbGxzIHRvIGxpc3QxcGFja2FnZSB0byBhbGxvdyB0aGVtIHRvIGdvIHdpZGUuCisKKwkqIGxpYi9kYm1vZGlmeS5jIChtb2RzdGF0ZGJfbm90ZSk6IEV2ZXJ5IHRpbWUgd2UnZCBvdXRwdXQgYQorCXN0YXR1cyBjaGFuZ2UgdG8gdGhlIHN0YXR1cy1mZCwgYWxzbyBvdXRwdXQgYSBsb2cgbWVzc2FnZSB0bworCXRoZSBsb2ctZmQgaWYgd2UgaGF2ZSBvbmUuCisJKiBsaWIvZHBrZy1kYi5oOiBBZGQgZGVmaW5pdGlvbiBvZiBsb2dfcGlwZXMuCisJKiBzcmMvaGVscC5jIChsb2dfYWN0aW9uKTogV3JpdGUgYW4gYWN0aW9uIGxpbmUgdG8gdGhlIGxvZy1mZC4KKwkqIHNyYy9wcm9jZXNzYXJjLmMgKHByb2Nlc3NfYXJjaGl2ZSk6IExvZyBpbnN0YWxsYXRpb24gYW5kCisJdXBncmFkZSBhY3Rpb25zLgorCSogc3JjL3JlbW92ZS5jIChyZW1vdmFsX2J1bGtfcmVtb3ZlX2NvbmZpZ2ZpbGVzKTogTG9nIHB1cmdlCisJYWN0aW9uLgorCShkZWZlcnJlZF9yZW1vdmUpIExvZyByZW1vdmUgYWN0aW9uLgorCSogc3JjL21haW4uYyAoc2V0ZmlsZSk6IFRha2UgYSBmaWxlbmFtZSwgb3BlbiBpdCBhbmQgYWRkIHRoZQorCWZpbGUgZGVzY3JpcHRvciB0byBhIGxpc3Qgb2YgcGlwZXMuCisJKGNtZGluZm9zKTogQWRkIGxvZyBjb21tYW5kLWxpbmUgb3B0aW9uIHRoYXQgdGFrZXMgYSBmaWxlbmFtZQorCWFuZCBhZGRzIGl0IHRvIGxvZ19waXBlcy4KKwkodXNhZ2UpOiBBZGQgLS1sb2c9PGZpbGVuYW1lPiB1c2FnZS4KKwkqIG1hbi9DL2Rwa2cuMTogRG9jdW1lbnQgLS1sb2c9ZmlsZW5hbWUuCisJKiBkZWJpYW4vZHBrZy5jZmc6IEluY2x1ZGUgYSBjb21tZW50ZWQtb3V0IGxvZyBvcHRpb24uCisKKzIwMDUtMDMtMTggIFBldGVyIHZhbiBEaWprICA8cGV0ZXJAZGF0YWxvc3Mubmw+CisKKwkqIGxpYi90YXJmbi5jIChUYXJFeHRyYWN0b3IpOiBPbmx5IHJlbW92ZSB0aGUgbGFzdCBjaGFyYWN0ZXIKKwlmcm9tIGRpcmVjdG9yeSBuYW1lcyBpZiBpdCdzIGEgdHJhaWxpbmcgc2xhc2guCisKKzIwMDUtMDMtMTggIFNjb3R0IEphbWVzIFJlbW5hbnQgIDxzY290dEBuZXRzcGxpdC5jb20+CisKKwkqIG1hbi9DL2Rwa2ctZGl2ZXJ0Ljg6IEFkZCBhbiBFWEFNUExFUyBzZWN0aW9uIGdpdmluZyB0aGUgdHdvCisJbW9zdCBjb21tb24gdXNlcyBvZiBkcGtnLWRpdmVydCwgZm9yIGJvdGggYWRkIGFuZCByZW1vdmUuCisKKwkqIG1hbi9DL2Rwa2ctYXJjaGl0ZWN0dXJlLjE6IFVwZGF0ZSAoc2hvdWxkIGhhdmUgZG9uZSB0aGlzIHdpdGgKKwl0aGUgY2hhbmdlcyBiZWxvdywgcmVhbGx5KS4KKworCSogc3JjL2hlbHAuYyAocHJlZXhlY3NjcmlwdCk6IFRoZSBmaXJzdCBtZW1iZXIgb2YgYXJndiBpcyBhbHdheXMKKwlOVUxMIGJlY2F1c2UgaXQncyBmaWxsZWQgaW4gYnkgdGhlIHJldHVybiB2YWx1ZSBvZiB0aGlzIGZ1bmN0aW9uLAorCXNvIGluY3JlbWVudCBhcmd2IGZpcnN0IHdoZW4gZGVidWctb3V0cHV0dGluZyBtYWludGFpbmVyIHNjcmlwdAorCWFyZ3VtZW50cy4KKworCSogdXRpbHMvbWQ1c3VtLmM6IFJlbW92ZSBmaWxlLgorCSogbGliL2Rwa2cuaCAoTUQ1U1VNKTogUmVtb3ZlIGRlZmluaXRpb24gb2YgbWQ1c3VtIHByb2dyYW0gbmFtZS4KKwkqIHV0aWxzL01ha2VmaWxlLmFtIChiaW5fUFJPR1JBTVMpOiBSZW1vdmUgbWQ1c3VtLgorCSogbWFuL0MvbWQ1c3VtLjE6IFJlbW92ZSBtYW51YWwgcGFnZS4KKwkqIG1hbi9DL01ha2VmaWxlLmFtIChkaXN0X21hbl9NQU5TKTogUmVtb3ZlIG1kNXN1bS4xLgorCSogbWFuL2RlL21kNXN1bS4xOiBSZW1vdmUgbWFudWFsIHBhZ2UuCisJKiBtYW4vZGUvTWFrZWZpbGUuYW0gKGRpc3RfbWFuX01BTlMpOiBSZW1vdmUgbWQ1c3VtLjEuCisJKiBtYW4vZXMvbWQ1c3VtLjE6IFJlbW92ZSBtYW51YWwgcGFnZS4KKwkqIG1hbi9lcy9NYWtlZmlsZS5hbSAoZGlzdF9tYW5fTUFOUyk6IFJlbW92ZSBtZDVzdW0uMS4KKwkqIG1hbi9qYS9tZDVzdW0uMTogUmVtb3ZlIG1hbnVhbCBwYWdlLgorCSogbWFuL2phL01ha2VmaWxlLmFtIChkaXN0X21hbl9NQU5TKTogUmVtb3ZlIG1kNXN1bS4xLgorCSogbWFuL3N2L21kNXN1bS4xOiBSZW1vdmUgbWFudWFsIHBhZ2UuCisJKiBtYW4vc3YvTWFrZWZpbGUuYW0gKGRpc3RfbWFuX01BTlMpOiBSZW1vdmUgbWQ1c3VtLjEuCisJKiBkZWJpYW4vZHBrZy5wb3N0aW5zdCAoZGl2ZXJ0X21kNXN1bSk6IERpdmVydCB0aGUgdmVyc2lvbiBvZgorCW1kNXN1bSBpbnN0YWxsZWQgYnkgdGV4dHV0aWxzIG9yIGNvcmV1dGlscyB0byB0aGUgcGxhY2Ugd2hlcmUgd2UKKwl1c2VkIHRvIHB1dCBvdXIgY29weSwgaW5jbHVkZSBpdHMgbWFudWFsIHBhZ2UuCisJKiBkZWJpYW4vY29udHJvbCAoW2Rwa2ddRGVwZW5kcyk6IERlcGVuZCBvbiBjb3JldXRpbHMsIHdoaWNoIGhhcworCWFsd2F5cyBpbmNsdWRlZCBtZDVzdW0sIG9yIHRoZSB2ZXJzaW9uIG9mIHRleHR1dGlscyB0aGF0IGhhcy4KKwkqIGRlYmlhbi9kcGtnLmluc3RhbGw6IFJlbW92ZSBtZDVzdW0tcmVsYXRlZCBmaWxlcy4KKwkqIGRlYmlhbi9jb3B5cmlnaHQ6IFJlbW92ZSBtZW50aW9ucyBvZiB1dGlscy9tZDVzdW0uYy4KKwkqIGRlYmlhbi9wc2V1ZG8tdGFnczogUmVtb3ZlIG1kNXN1bSB0YWc7IG5vIHBvaW50IGZpbGluZyBidWdzIG9uCisJYSBub24tZXhpc3RlbnQgcHJvZ3JhbS4KKworCSogb3N0YWJsZSAobmV0YnNkKTogUmVzdG9yZSBtaXNzaW5nICIqIiBvbiB0aGUgZW5kIG9mIHRoZSByZWdleC4KKworCVRha2UgYSBmdXJ0aGVyIHN0ZXAgdG93YXJkcyBoYXZpbmcgc2VwYXJhdGUgQ1BVIGFuZCBzeXN0ZW0gbmFtZXMKKwlpbnN0ZWFkIG9mIGp1c3QgYSBqb2luZWQgYXJjaGl0ZWN0dXJlIG5hbWU7IGluIHBhcnRpY3VsYXIgYWRkCisJc3VwcG9ydCB0byBkcGtnLWFyY2hpdGVjdHVyZS4KKworCSogY3B1dGFibGU6IENyZWF0ZSBuZXcgdGFibGUgb2YgY3B1IG5hbWVzIHdpdGggY2Fub25pY2FsIEdOVQorCW5hbWVzIGFuZCBhIHJlZ2V4IHRvIG1hdGNoIGFnYWluc3QgY29uZmlnLmd1ZXNzIG91dHB1dC4KKwkqIG9zdGFibGU6IENyZWF0ZSBuZXcgdGFibGUgb2Ygb3BlcmF0aW5nIHN5c3RlbSBuYW1lcyB3aXRoCisJY2Fub25pY2FsIEdOVSBuYW1lcyBhbmQgYSByZWdleCB0byBtYXRjaCBhZ2FpbnN0IGNvbmZpZy5ndWVzcworCW91dHB1dC4KKwkqIGFyY2h0YWJsZTogTW92ZSB0byBkZWJpYW4gZGlyZWN0b3J5LgorCSogZGViaWFuL2FyY2h0YWJsZTogUmVkdWNlIHRvIGEgc2ltcGxlIHNldCBvZiBhcmNoaXRlY3R1cmUgbmFtZXMKKwlpbiBEZWJpYW4ncyBzaWQgZGlzdHJpYnV0aW9uLgorCSogc2NyaXB0cy9kcGtnLWFyY2hpdGVjdHVyZS5wbDogQWRkIHN1cHBvcnQgZm9yIHNwbGl0IGNwdXRhYmxlCisJYW5kIG9zdGFibGUsIGluY2x1ZGluZyBuZXcgREVCXypfQVJDSF9PUyBhbmQgREVCXypfQVJDSF9DUFUKKwl2YXJpYWJsZXMgY29udGFpbmluZyB0aGUgRGViaWFuIHN5c3RlbSBhbmQgY3B1IG5hbWVzIGFwcHJvcHJpYXRlbHkuCisJKHVzYWdldmVyc2lvbik6IFJlbW92ZSBsaXN0IG9mIGtub3duIGFyY2hpdGVjdHVyZXMsIGFzIHdlIGNhbid0CisJZWFzaWx5IGNvbXB1dGUgdGhpcyBhbnltb3JlIChjcHV0YWJsZSAqIG9zdGFibGUpLgorCShyZWFkX2FyY2h0YWJsZSk6IFJlbW92ZWQgZnVuY3Rpb24sIHdlIG5vIGxvbmdlciB0b3VjaCBhcmNodGFibGUuCisJKHJlYWRfY3B1dGFibGUpOiBBZGQgZnVuY3Rpb24gdG8gcGFyc2UgY3B1dGFibGUuCisJKHJlYWRfb3N0YWJsZSk6IEFkZCBmdW5jdGlvbiB0byBwYXJzZSBvc3RhYmxlLgorCShzcGxpdF9kZWJpYW4pOiBBZGQgZnVuY3Rpb24gdG8gc3BsaXQgYSBEZWJpYW4gIm9zLWNwdSIgbmFtZS4KKwkoZGViaWFuX3RvX2dudSk6IEFkZCBmdW5jdGlvbiB0byBzcGxpdCBhbmQgbG9vayB1cCB0aGUgR05VIG5hbWVzCisJZm9yIHRoZSBEZWJpYW4gb3MgYW5kIGNwdSwgYW5kIHJldHVybiB0aGUgam9pbmVkIEdOVSBuYW1lLgorCShzcGxpdF9nbnUpOiBBZGQgZnVuY3Rpb24gdG8gc3BsaXQgYSBHTlUgdHJpcGxldC9xdWFydGV0LgorCShnbnVfdG9fZGViaWFuKTogQWRkIGZ1bmN0aW9uIHRvIHNwbGl0IGFuZCBsb29rIHVwIHRoZSBEZWJpYW4KKwluYW1lcyBmb3IgdGhlIEdOVSBvcyBhbmQgY3B1IChieSByZWdleCksIGFuZCByZXR1cm4gdGhlIGpvaW5lZAorCURlYmlhbiBuYW1lLgorCShyZXdyaXRlX2dudSk6IFJlbW92ZWQsIHJlcGxhY2VkIGJ5IHJlZ2V4ZXMgaW4gdGhlIHRhYmxlcy4KKwkqIG00L2FyY2gubTQgKERQS0dfQ1BVX1RZUEUpOiBVc2UgYXdrIHRvIHBhcnNlIHRoZSBuZXcgY3B1dGFibGUKKwlhbmQgZGVmaW5lIGFuIEFSQ0hJVEVDVFVSRV9DUFUgbWFjcm8gd2l0aCB0aGUgcmVzdWx0LgorCShEUEtHX09TX1RZUEUpOiBVc2UgYXdrIHRvIHBhcnNlIHRoZSBuZXcgb3N0YWJsZSBhbmQgZGVmaW5lIGFuCisJQVJDSElURUNUVVJFX09TIG1hY3JvIHdpdGggdGhlIHJlc3VsdC4KKwkoRFBLR19BUkNISVRFQ1RVUkUpOiBTaW1wbHkgam9pbiB0aGUgb3MgYW5kIGNwdSBuYW1lcyB0b2dldGhlciwKKwlvciBvbWl0IHRoZSBvcyBuYW1lIGlmICJsaW51eCIuCisJKiBNYWtlZmlsZS5hbSAoZGlzdF9wa2dkYXRhX0RBVEEpOiBSZW1vdmUgYXJjaHRhYmxlLCBhZGQKKwljcHV0YWJsZSBhbmQgb3N0YWJsZSBpbnN0ZWFkLgorCShFWFRSQV9ESVNUKTogQWRkIGRlYmlhbi9hcmNodGFibGUuCisJKiBkZWJpYW4vZHBrZy5pbnN0YWxsOiBJbnN0YWxsIGRlYmlhbi9hcmNodGFibGUgaW4gL3Vzci9zaGFyZS9kcGtnCisJZm9yIHBhY2thZ2VzIHRoYXQgc3RpbGwgd2FudCBpdC4KKwkqIGRlYmlhbi9wc2V1ZG8tdGFnczogUmVwbGFjZSBtZW50aW9uIG9mIGFyY2h0YWJsZS4KKworCSogYXJjaHRhYmxlOiBBZGQgcHBjNjQgZm9yIHBvd2VycGMtbGludXguCisJKiBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLnBsIChyZXdyaXRlX2dudSk6IFJld3JpdGUgcG93ZXJwYzY0CisJYW5kIHBwYzY0IGludG8gcG93ZXJwYzY0IGZvciBhcmNodGFibGUuCisKKzIwMDUtMDMtMTcgIFNjb3R0IEphbWVzIFJlbW5hbnQgIDxzY290dEBuZXRzcGxpdC5jb20+CisKKwkqIGRlYmlhbi9kcGtnLnByZWluc3QgKGNvbmZpcm1fZHNlbGVjdF9zcGxpdCk6IENoZWNrIHRoYXQgZHNlbGVjdAorCWlzIHJ1bm5pbmcgYmVmb3JlIGJpdGNoaW5nOyBpdCdzIGVhc3kgdG8gZG8gYW5kIHdpbGwgc3RvcCB0aGlzCisJcXVlc3Rpb24gbW9yZSBvZnRlbiB0aGFuIG5vdC4KKworMjAwNS0wMy0xNyAgU2NvdHQgSmFtZXMgUmVtbmFudCAgPHNjb3R0QHVidW50dS5jb20+LAorCSAgICBBbnRob255IFRvd25zICA8YWpAYXp1cmUuaHVtYnVnLm9yZy5hdT4KKworCSogc3JjL2FyY2hpdmVzLmMgKHRhcm9iamVjdCk6IERldGVjdCB3aGVuIGluc3RhbGxpbmcgYSBmaWxlIHRoYXQKKwlleGlzdHMgaW4gYSBwYWNrYWdlIHRoYXQgcmVwbGFjZXMgdGhlIG9uZSBiZWluZyBpbnN0YWxsZWQuICBMZWF2ZQorCXRoYXQgb24gdGhlIGRpc2sgYW5kIHJlbW92ZSB0aGUgZmlsZSBmcm9tIHRoZSBsaXN0IGZvciB0aGUgcGFja2FnZQorCWJlaW5nIGluc3RhbGxlZC4KKworMjAwNS0wMy0xNiAgU2NvdHQgSmFtZXMgUmVtbmFudCAgPHNjb3R0QG5ldHNwbGl0LmNvbT4KKworCSogbGliL3BhcnNlZHVtcC5oOiBNb3ZlIGRlZmluaXRpb25zIG9mIGZpZWxkaW5mb3MgYW5kIG5pY2tuYW1lcworCWFycmF5cyB0byB0aGUgYm90dG9tIG9mIHRoZSBmaWxlLCB0byBlbnN1cmUgd2Uga25vdyB0aGUgc2l6ZSBvZgorCXRoZSBhcnJheXMgd2UncmUgZGVjbGFyaW5nLgorCSogbGliL21saWIuYyAoYnVmZmVyX3dyaXRlKTogQ2FzdCB1bnNpZ25lZCBjaGFyICogdG8gcGxhaW4gb2xkCisJY2hhciAqIHdoZW4gY2FsbGluZyBzcHJpbnRmLgorCisyMDA1LTAzLTEyICBGcmFuayBTLiBUaG9tYXMgIDxmcmFua0B0aG9tYXMtYWxmZWxkLmRlPgorCisJKiBtYW4vQy9kcGtnLWFyY2hpdGVjdHVyZS4xOiBDb3JyZWN0IHR5cG8gKHZhcmlhbGVzIC0+IHZhcmlhYmxlcykuCisKKzIwMDUtMDMtMDggIFNjb3R0IEphbWVzIFJlbW5hbnQgIDxzY290dEBuZXRzcGxpdC5jb20+CisKKwkqIE1ha2VmaWxlLmFtIChwYWNrYWdlKTogUmVtb3ZlIHJ1bGUsIGFzIGl0IGlzIG9ubHkgcmVhbGx5CisJcmVxdWlyZWQgb3V0c2lkZSBvZiBhcmNoIChvdGhlcndpc2UgeW91IGhhdmUgYSB0YXJiYWxsKS4KKwkqIE1ha2VmaWxlLm1haW50OiBOZXcgZmlsZSBob2xkaW5nIHRoZSBwYWNrYWdlIHJ1bGUuCisKKzIwMDUtMDMtMDMgIFNjb3R0IEphbWVzIFJlbW5hbnQgIDxzY290dEBuZXRzcGxpdC5jb20+CisKKwkqIGFyY2h0YWJsZTogRGVzY3JpYmUgY29sdW1uIDIgYXMgdGhlIHZhbHVlIHJldHVybmVkIGJ5CisJZHBrZyAtLXByaW50LWFyY2hpdGVjdHVyZSBub3QgLS1wcmludC1pbnN0YWxsYXRpb24tYXJjaGl0ZWN0dXJlCisJd2hpY2ggd2UgZGVwcmVjYXRlZCBpbiB0aGUgbGFzdCByZWxlYXNlLgorCisJKiBjb25maWd1cmUuYWM6IEJ1bXAgdmVyc2lvbiB0byAxLjEzLjJ+LgorCisJKiBjb25maWd1cmUuYWM6IFJlbGVhc2UgMS4xMy4xLgorCisyMDA1LTAzLTAzICBNaWNoYWVsIFZvZ3QgIDxtdm9AdWJ1bnR1LmNvbT4KKworCSogc3JjL2NvbmZpZ3VyZS5jIChwcm9tcHRjb25mYWN0aW9uKTogT3V0cHV0IGNvbmZmaWxlLXByb21wdAorCXN0YXR1cyBvbnRvIHN0YXR1cy1mZCB0byBsZXQgZnJvbnQtZW5kcyBjYXB0dXJlIGNvbmZsaWN0cy4KKwkqIHNyYy9lcnJvcnMuYyAocHJpbnRfZXJyb3JfcGVycGFja2FnZSk6IE91dHB1dCBwYWNrYWdlIGVycm9ycworCW9udG8gc3RhdHVzLWZkIHRvIGxldCBmcm9udC1lbmRzIGNhcHR1cmUgdGhlbS4KKwkqIG1hbi9DL2Rwa2cuMTogRG9jdW1lbnQgaG93IGVycm9ycyBhbmQgY29uZmlndXJhdGlvbiBmaWxlCisJY29uZmxpY3RzIGFyZSByZXBvcnRlZCBvbiB0aGUgc3RhdHVzLWZkLgorCisyMDA1LTAxLTIyICBTY290dCBKYW1lcyBSZW1uYW50ICA8c2NvdHRAbmV0c3BsaXQuY29tPgorCisJKiBtYW4vQy9kcGtnLjE6IFJlbW92ZSAtLXByaW50LWdudS1idWlsZC1hcmNoaXRlY3R1cmUgYW5kCisJLS1wcmludC1pbnN0YWxsYXRpb24tYXJjaGl0ZWN0dXJlIGZyb20gZG9jdW1lbnRhdGlvbiwgY29ycmVjdAorCS0tcHJpbnQtYXJjaGl0ZWN0dXJlLgorCSogbWFuL0MvZHBrZy1hcmNoaXRlY3R1cmUuMTogR2l2ZSAtLXByaW50LWFyY2hpdGVjdHVyZSBpbiBleGFtcGxlcywKKwlpbnN0ZWFkIG9mIC0tcHJpbnQtaW5zdGFsbGF0aW9uLWFyY2hpdGVjdHVyZS4KKwkqIHNjcmlwdHMvZHBrZy1uYW1lLnNoIChnZXRuYW1lKTogQ2FsbCAnZHBrZyAtLXByaW50LWFyY2hpdGVjdHVyZScKKwlpbnN0ZWFkIG9mICdkcGtnIC0tcHJpbnQtaW5zdGFsbGF0aW9uLWFyY2hpdGVjdHVyZScuCisJKiBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLnBsOiBTZXQgdGhlIGRlZmF1bHQgJHBrZ2RhdGFkaXIgdG8KKwlwb2ludCBhdCBhbiBpbnN0YWxsZWQgY29weS4KKwlDYWxsICdkcGtnIC0tcHJpbnQtYXJjaGl0ZWN0dXJlJyBpbnN0ZWFkIG9mCisJJ2Rwa2cgLS1wcmludC1pbnN0YWxsYXRpb24tYXJjaGl0ZWN0dXJlJy4KKwkqIG1ldGhvZHMvZGlzay9zZXR1cCAoaWFyY2gpOiBDYWxsIGRwa2cgLS1wcmludC1hcmNoaXRlY3R1cmUuCisJKiBkZWJpYW4vY29udHJvbCAoW2Rwa2ctZGV2XURlcGVuZHMsIFtkc2VsZWN0XURlcGVuZHMpOiBEZXBlbmQgb24KKwlkcGtnICg+PSAxLjEzLjEpIHNvIHdlIGdldCBhIGRwa2cgd2l0aCB0aGUgcmlnaHQgcHJpbnQgb3B0aW9ucy4KKworCSogc3JjL2VucXVpcnkuYyAocHJpbnRhcmNoKTogQ29tcGxldGVseSBudWtlIHRoaXMgZnVuY3Rpb24sIHdlJ2xsCisJbm8gbG9uZ2VyIHBhcnNlIHRoZSBjb21waWxlciBvdXRwdXQgYW5kIGxvb2sgdXAgdGhpbmdzIGluIGFyY2h0YWJsZS4KKwkocHJpbnRpbnN0YXJjaCk6IFJlbmFtZSB0byBwcmludGFyY2gsIGFuZCBjaGFuZ2UgdGhlIG91dHB1dCBtZXNzYWdlCisJdG8gcmVmZXIgdG8gLS1wcmludC1hcmNoaXRlY3R1cmUuCisJKGJhZGxnY2Nmbik6IFJlbW92ZSB1bnVzZWQgZnVuY3Rpb24uCisJKiBzcmMvbWFpbi5jIChjbWRpbmZvcyk6IFJlbW92ZSAtLXByaW50LWdudS1idWlsZC1hcmNoaXRlY3R1cmUgb3B0aW9uLAorCW1ha2UgLS1wcmludC1pbnN0YWxsYXRpb24tYXJjaGl0ZWN0dXJlIGNhbGwgcHJpbnRhcmNoLgorCSh1c2FnZSk6IFJlbW92ZSBib3RoIC0tcHJpbnQtZ251LWJ1aWxkLWFyY2hpdGVjdHVyZSBhbmQKKwktLXByaW50LWluc3RhbGxhdGlvbi1hcmNoaXRlY3R1cmUgYW5kIGRlc2NyaWJlIC0tcHJpbnQtYXJjaGl0ZWN0dXJlCisJYXMgZG9pbmcgd2hhdCAtLXAtaS1hIHVzZWQgdG8gZG8uICBVc2UgZHBrZy1hcmNoaXRlY3R1cmUgZm9yIGhvc3QKKwlpbmZvcm1hdGlvbi4KKwkqIHNyYy9tYWluLmggKGFjdGlvbik6IFJlbW92ZSBhY3RfcHJpbnRnbnVhcmNoIGZyb20gZW51bSwgbGVhdmUKKwlhY3RfcHJpbnRpbnN0YXJjaCBzbyB3ZSBjYW4gbGF0ZXIgZGVwcmVjYXRlIHVzZSBvZiB0aGUgbG9uZ2VyIGNvbW1hbmQuCisJKiBzcmMvTWFrZWZpbGUuYW0gKGFyY2h0YWJsZS5oKTogTm8gbmVlZCB0byBnZW5lcmF0ZSBhcmNodGFibGUuaAorCXNlZWluZyBhcyB3ZSBkb24ndCBwYXJzZSBpdCB3aXRoaW4gZHBrZywgcmVtb3ZlIHJ1bGUgdG8gZ2VuZXJhdGUgaXQuCisJKENMRUFORklMRVMpOiBXZSBkb24ndCBnZW5lcmF0ZSBhcmNodGFibGUuaCwgc28gbm8gbmVlZCB0byBjbGVhbiBpdC4KKwkqIHNyYy8uYXJjaC1pbnZlbnRvcnk6IERvbid0IHRyZWF0IGFyY2h0YWJsZS5oIHNwZWNpYWxseS4KKwkqIGFyY2h0YWJsZTogUmVtb3ZlIHVudXNlZCB0aGlyZCBmaWVsZCwgZW50aXJlbHkgaW5hY2N1cmF0ZSB0b28uCisJQ29ycmVjdCB0eXBvICdzaGUzZWInIC0+ICdzaDNlYicuCisJKiBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLnBsIChyZWFkX2FyY2h0YWJsZSk6IFBhcnNlIG9ubHkgdHdvCisJZmllbGRzIGZyb20gYXJjaHRhYmxlLgorCisJKiBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLnBsOiBSZW1vdmUgb3V0LW9mLWRhdGUgaGlzdG9yeSBmcm9tIHRoZQorCXRvcCwgQ2hhbmdlTG9nIHNlcnZlcyBiZXR0ZXIgbm93IGFuZCBpcyBsZXNzIGNvbmZ1c2luZy4KKwlSZXNldCAkZ2NjIGlmIHdlIGdldCBsZXNzIHRoYW4sIG9yIG1vcmUgdGhhbiBvbmUgYXJjaHRhYmxlIHJlc3VsdC4KKwlSZW1vdmUgZXh0cmEgbmV3bGluZSBmcm9tIG1pc21hdGNoZWQgLWEvLXQgd2FybmluZy4KKwkodXNhZ2V2ZXJzaW9uKTogUGVkYW50IHRoZSB1c2FnZSBtZXNzYWdlIHdoaWxlIHdlIHNjcm9sbCBwYXN0LgorCShyZWFkX2FyY2h0YWJsZSk6IE5ldyBmdW5jdGlvbiB0byByZWFkIC91c3Ivc2hhcmUvZHBrZy9hcmNodGFibGUKKwlyYXRoZXIgdGhhbiBoYXJkLWNvZGluZyBzb21lIHZhbHVlcyBpbiB0aGUgc2NyaXB0LgorCShyZXdyaXRlX2dudSk6IFJld3JpdGUgYWxvbmcgdGhlIGxpbmVzIG9mIHRoZSBjb2RlIGluIG00L2FyY2gubTQgc28KKwl0aGV5IHNob3VsZCBhY3R1YWxseSBiZSB2YWd1ZWx5IGNvbnNpc3RlbnQgbm93LgorCisJKiBzY3JpcHRzL01ha2VmaWxlLmFtIChkb19wZXJsX3N1YnN0KTogUmVwbGFjZSBvY2N1cnJlbmNlcyBvZgorCSRwa2dkYXRhZGlyIGluIHNjcmlwdHMgd2l0aCB0aGUgcmlnaHQgdmFsdWUuCisKKzIwMDUtMDEtMjIgIFJvYmVydCBNaWxsYW4gIDxybWhAZGViaWFuLm9yZz4KKworCSogY29uZmlndXJlLmFjOiBDaGVjayBmb3Iga3ZtLmguCisJKiB1dGlscy9zdGFydC1zdG9wLWRhZW1vbi5jOiBSZW1vdmUgaW5jbHVkZXMgZm9yIDxzeXMvdXNlci5oPiwKKwk8c3lzL3N5c2N0bC5oPiBhbmQgPGt2bS5oPiBmb3IgdGhlIEJTRHMgdW5sZXNzIGNvbmZpZ3VyZSBmb3VuZAorCTxrdm0uaD4uCisJKGZhdGFsKTogT3V0cHV0IHRoZSBtZXNzYWdlIGFzc29jaWF0ZWQgd2l0aCBlcnJuby4KKworMjAwNS0wMS0yMiAgUmFrZXNoICdhcmt5JyBBbWJhdGkgIDxyYWtlc2hfYW1iYXRpQHlhaG9vLmNvbT4KKworCSogc2NyaXB0cy9kcGtnLWFyY2hpdGVjdHVyZS5wbDogQ29ycmVjdCB0eXBvLCAnZmlsZWQnIHRvICdmYWlsZWQnLgorCisyMDA1LTAxLTIyICBSb2JlcnQgTWlsbGFuICA8cm1oQGRlYmlhbi5vcmc+LAorCSAgICBTY290dCBKYW1lcyBSZW1uYW50ICA8c2NvdHRAbmV0c3BsaXQuY29tPgorCisJKiBtNC9hcmNoLm00IChEUEtHX0NQVV9UWVBFKTogQWRkIGEgbmV3IG1hY3JvIHRvIHR1cm4gY29tbW9uCisJZ3JvdXBzIG9mIENQVSBuYW1lcyBpbnRvIGEgc2luZ2xlIHR5cGUgKGUuZy4gaSo4NiB0byBpMzg2KS4KKwkoRFBLR19PU19UWVBFKTogTWF0Y2ggbGludXgqLWdudSogZm9yIExpbnV4IChpbiBjYXNlIHdlIGdldCBhCisJbm9uLUdOVSBMaW51eCBhdCBzb21lIHBvaW50KSBhbmQgcHJvZHVjZSBhICdsaW51eCcgdHlwZS4gIFJlbW92ZQorCXRoZSBpbml0aWFsICcqJyBmcm9tIHRoZSByZXN0IG9mIHRoZSBlbnRyaWVzLiAgUmVzdG9yZSBnbnUqIGFzCisJZ251IChmb3IgdGhlIEh1cmQpLiAgQWRkIHN1cHBvcnQgZm9yIGRhcndpbiogYXMgZGFyd2luLiAgU29ydAorCWludG8gYWxtb3N0LWFscGhhYmV0aWNhbCBvcmRlciB3aXRoIGkzODYvbGludXggYXQgdGhlIHRvcC4KKwkoRFBLR19BUkNISVRFQ1RVUkUpOiBDYWxsIERQS0dfQ1BVX1RZUEUgYW5kIHVzZSAkY3B1X3R5cGUgaW5zdGVhZCBvZgorCSR0YXJnZXRfY3B1LgorCSogYXJjaHRhYmxlOiBSZXdyaXRlIHRoZSB0b3AgY29tbWVudCB0byBiZSBhIGxpdHRsZSBjbGVhcmVyIGFuZAorCWNvcnJlY3QgdGhlIGxpZSB0aGF0IHRoZSB0aGlyZCBjb2x1bW4gaXMgJ2Rwa2cgLS1wcmludC1hcmNoaXRlY3R1cmUnCisJd2hlbiBpdCBpcywgaW4gZmFjdCwgJ2Rwa2cgLS1wcmludC1nbnUtYnVpbGQtYXJjaGl0ZWN0dXJlJy4gIENvcnJlY3QKKwl0aGlyZCBjb2x1bW5zIG9mIHRoZSBub24tTGludXggYXJjaGl0ZWN0dXJlIHRvIGFjdHVhbGx5IHJldHVybiBhCisJR05VIG5hbWUuICBTb3J0IHRoZSBmaWxlIGludG8gaTM4Ni9saW51eC1maXJzdCBhbHBoYWJldGljYWwgb3JkZXIuCisKKzIwMDUtMDEtMjIgIFJvYmVydCBNaWxsYW4gIDxybWhAZGViaWFuLm9yZz4KKworCSogYXJjaHRhYmxlOiBBZGQgeDg2XzY0LWtmcmVlYnNkIHRvIGFyY2h0YWJsZSBhcyAna2ZyZWVic2QtYW1kNjQnLgorCSogc2NyaXB0cy9kcGtnLWFyY2hpdGVjdHVyZS5wbDogQWRkICdrZnJlZWJzZC1hbWQ2NCcgdG8gYXJjaHRhYmxlLgorCisyMDA1LTAxLTIyICBOSUlCRSBZdXRha2EgIDxnbmlpYmVAZnNpai5vcmc+CisKKwkqIGFyY2h0YWJsZTogQWRkIG0zMnItbGludXgtZ251IHRvIGFyY2h0YWJsZSBhcyAnbTMycicuCisJKiBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLnBsOiBBZGQgJ20zMnInIHRvIGFyY2h0YWJsZS4KKworMjAwNS0wMS0yMiAgU2NvdHQgSmFtZXMgUmVtbmFudCAgPHNjb3R0QG5ldHNwbGl0LmNvbT4KKworCSogc3JjL3F1ZXJ5LmMgKGNtZGluZm9zKTogTWFrZSAtZiBhbHRlcm5hdGl2ZSBmb3IgLS1zaG93Zm9ybWF0LgorCSogc3JjL3F1ZXJ5LmMgKHVzYWdlKTogRG9jdW1lbnQgdGhhdCAtZiBpcyBhbHRlcm5hdGl2ZSBmb3IKKwktLXNob3dmb3JtYXQuCisJKiBtYW4vQy9kcGtnLXF1ZXJ5LjE6IFVwZGF0ZSBkb2N1bWVudGF0aW9uIHRvIG1hdGNoLgorCisyMDA1LTAxLTIyICBTdGVwaGFuZSBCb3J0em1leWVyICA8c3RlcGhhbmVAc291cmNlcy5vcmc+CisKKwkqIHNjcmlwdHMvZHBrZy1zb3VyY2UucGwgKGRpZmZfaWdub3JlX2RlZmF1bHRfcmVnZXhwKTogQWRkIHRoZQorCWRhcmNzIF9kYXJjcyBkaXJlY3RvcnkgdG8gdGhlIGlnbm9yZSBsaXN0LgorCisyMDA1LTAxLTIyICBTY290dCBKYW1lcyBSZW1uYW50ICA8c2NvdHRAbmV0c3BsaXQuY29tPgorCisJKiB1dGlscy9tZDVzdW0uYyAobWFpbik6IENvcnJlY3QgbWQ1c3VtIGFjY29yZGluZyB0byB0aGUgd2lzaGVzCisJb2YgdGhlIERlYmlhbiB0ZWNobmljYWwgY29tbWl0dGVlOyB3aGVuIGdpdmVuIGEgZmlsZSBvbiBzdGFuZGFyZAorCWlucHV0LCBpdCBub3cgc2ltcGx5IG91dHB1dHMgdGhlIG1kNXN1bSBhbmQgZG9lcyBub3QgYXBwZW5kICIgIC0iCisJb3IgIiAqLSIgb24gdGhlIGVuZC4KKworMjAwNS0wMS0yMiAgQWRhbSBIZWF0aCAgPGRvb2dpZUBkZWJpYW4ub3JnPgorCisJKiBsaWIvdGFyZm4uYyAoVGFyRXh0cmFjdG9yKTogRml4IGhhbmRsaW5nIG9mIEdOVSBsb25nbmFtZSBhbmQKKwlsb25nbGluayBzdXBwb3J0IHdoZW4gdGhlcmUgaXMgYm90aCB0eXBlcyBmb3IgdGhlIHNhbWUgZmlsZSBlbnRyeQorCWluIGEgdGFyYmFsbC4KKworMjAwNS0wMS0xOSAgRGFmeWRkIEhhcnJpZXMgIDxkYWZAbXVzZS4xOWluY2gubmV0PgorCisJKiBtYW4vQy9kcGtnLXNvdXJjZS4xOiBNYWtlIHRoZSBzdW1tYXJ5IGZvciBkcGtnLXNvdXJjZSAtYiBpbnZvY2F0aW9uCisJaW4gdGhlIG1hbnBhZ2UgbWF0Y2ggdGhhdCBvdXRwdXQgYnkgZHBrZy1zb3VyY2UgLS1oZWxwLiAoSS5lLiBpbmRpY2F0ZQorCXRoZSBwb3NzaWJpbGl0eSBvZiBzcGVjaWZ5aW5nIHRoZSB1cHN0cmVhbSB0YXJiYWxsIHJhdGhlciB0aGFuIHRoZQorCXVwc3RyZWFtIHNvdXJjZSBkaXJlY3RvcnkgYXMgYSBzZWNvbmQgcGFyYW1ldGVyLikKKworMjAwNS0wMS0xNyAgU2NvdHQgSmFtZXMgUmVtbmFudCAgPHNjb3R0QG5ldHNwbGl0LmNvbT4KKworCSogZGViaWFuL2Rwa2cucHJlaW5zdCAoY29uZmlybV9kc2VsZWN0X3NwbGl0KTogU3VwcG9ydCBwcmUtc2FyZ2UKKwl1cGdyYWRlcyBieSBjaGVja2luZyB0aGF0IHRoZXkndmUgdXBncmFkZWQgZHNlbGVjdCBmaXJzdCwgYW5kCisJcHJvbXB0aW5nIGlmIHRoZXkgaGF2ZW4ndC4KKworMjAwNS0wMS0xNCAgU2NvdHQgSmFtZXMgUmVtbmFudCAgPHNjb3R0QG5ldHNwbGl0LmNvbT4KKworCSogLmFyY2gtaW52ZW50b3J5OiBJZ25vcmUgdGhlIHVwbG9hZCByZXN1bHQgZmlsZSBhcyB3ZWxsLgorCisJKiBjb25maWd1cmUuYWM6IEJ1bXAgdmVyc2lvbiB0byAxLjEzLjF+LgorCisJKiBjb25maWd1cmUuYWM6IFJlbGVhc2UgMS4xMy4wLgorCisJKiBkcGtnLWRlYi9tYWluLmMgKG1haW4pOiBSZW1vdmUgTk9OUkVUVVJOSU5HIGRlY2xhcmF0aW9uIGFzCisJdGhpcyBmdW5jdGlvbiBkb2VzIGFjdHVhbGx5IGNhbGwgcmV0dXJuIHNvbWV0aW1lcy4KKwkqIGRwa2ctc3BsaXQvbWFpbi5jIChtYWluKTogUmVtb3ZlIE5PTlJFVFVSTklORyBkZWNsYXJhdGlvbiBhcworCXRoaXMgZnVuY3Rpb24gZG9lcyBhY3R1YWxseSBjYWxsIHJldHVybiBzb21ldGltZXMuCisJKiB1dGlscy9zdGFydC1zdG9wLWRhZW1vbi5jIChtYWluKTogUmVtb3ZlIE5PTlJFVFVSTklORyBkZWNsYXJhdGlvbgorCWFzIHRoaXMgZnVuY3Rpb24gZG9lcyBhY3R1YWxseSBjYWxsIHJldHVybiBzb21ldGltZXMuCisJKiBtNC9jb21waWxlci5tNCAoU0pSX0NPTVBJTEVSX1dBUk5JTkdTKTogRW5hYmxlIHdhcm5pbmdzIGZvciBDWFgKKwl0b28sIG15IG9yaWdpbmFsIG1hY3JvIGRvZXNuJ3QgZG8gdGhpcy4KKwkKKwkqIGNvbmZpZ3VyZS5hYzogVXNlIEFDX0dOVV9TT1VSQ0UgdG8gZ2V0IHNvbWUgb2YgdGhlIGV4dHJhIGdvb2RpZXMKKwlpbiB0aGUgR05VIEMgbGlicmFyeSwgdXNlIERQS0dfQ19DOTkgdG8gdGVzdCBmb3IgQzk5IGZlYXR1cmVzLgorCSogbTQvY29tcGlsZXIubTQgKERQS0dfQ19DOTkpOiBOZXcgbWFjcm8gdG8gZGV0ZXJtaW5lIHdoZXRoZXIKKwljb21waWxlciBzdXBwb3J0cyBDOTkgZmVhdHVyZXMuCisJKFNKUl9DT01QSUxFUl9XQVJOSU5HUyk6IERvbid0IHVzZSAtcGVkYW50aWMgeWV0LCBkcGtnIGlzbid0IHJlYWR5CisJZm9yIGl0LgorCisJKiBsaWIvZHBrZy5oOiBQcm92aWRlIEM5OS1jb25mb3JtYW50IHZhcmlhZGljIG1hY3JvcyBpZiB0aGUKKwljb21waWxlciBzdXBwb3J0cyB0aGVtIGluIHBsYWNlIG9mIGdudS1zdHlsZSBvbmVzLgorCSogbGliL3RhcmZuLmM6IEFkZCBtaXNzaW5nIGluY2x1ZGUgb2YgY29uZmlnLmggdG8gZ2V0IHNvbWUgdXNlZnVsCisJaW5mb3JtYXRpb24gKGFuZCBwcm90b3R5cGUgb2Ygc3RybmxlbikuCisJKiBzcmMvaGVscC5jOiBDYXN0IGFyZ3VtZW50cyB0byAoY2hhciAqIGNvbnN0ICopIGV4cGxpY2l0bHkuCisJKiBkcGtnLWRlYi9tYWluLmM6IEluY2x1ZGUgZHBrZy1kYi5oIHRvIGdldCBuZmZyZWVhbGwgcHJvdG90eXBlLgorCSogLmFyY2gtaW52ZW50b3J5OiBJZ25vcmUgY29uZmlnLmNhY2hlIGlmIHRoZSB1c2VyIHVzZXMgaXQuCisKKwkqIHNjcmlwdHMvY29udHJvbGxpYi5wbDogQWRkICMhL3Vzci9iaW4vcGVybCB0byBzYXRpc2Z5IGxpbnRpYW4uCisJKiBkZWJpYW4vY29udHJvbCAoW2Rwa2ddUHJlLURlcGVuZHMpOiBOZWVkcyB0byBwcmUtZGVwZW5kIG9uIHNobGlicworCWRlcGVuZGVuY2llcyBsaWtlIGxpYmM2LCBhY2NpZGVudGFsbHkgZHJvcHBlZCBlYXJsaWVyLgorCShbZHBrZy1kZXZdUmVjb21tZW5kcyk6IEFkZGVkIGdjYyBhcyBmaXJzdCBjaG9pY2UgZm9yIGMtY29tcGlsZXIuCisJKiBkZWJpYW4vcnVsZXM6IEdlbmVyYXRlIHNobGliZGVwcyBmb3IgYWxsIGFyY2ggcGFja2FnZXMsIG5vdCBqdXN0CisJZHNlbGVjdCAoc28gd2UgZ2V0IHRoZW0gZm9yIGRzZWxlY3QgdG9vKS4KKwkqIGRlYmlhbi8uYXJjaC1pbnZlbnRvcnk6IElnbm9yZSBkcGtnLnN1YnN0dmFycy4KKwkqIGRlYmlhbi9kcGtnLmNvbmZmaWxlczogUmVtb3ZlZCwgZGViaGVscGVyIGRvZXMgdGhlIHJpZ2h0IHRoaW5nLgorCSogZGViaWFuL2Rwa2ctZGV2LmNvbmZmaWxlczogUmVtb3ZlZCwgZGViaGVscGVyIGRvZXMgdGhlIHJpZ2h0IHRoaW5nLgorCSogZGViaWFuL2RzZWxlY3QuY29uZmZpbGVzOiBSZW1vdmVkLCBkZWJoZWxwZXIgZG9lcyB0aGUgcmlnaHQgdGhpbmcuCisJKiBNYWtlZmlsZS5hbSAoRVhUUkFfRElTVCk6IFVwZGF0ZWQgZm9yIGRlYmlhbiBkaXJlY3RvcnkgY2hhbmdlcy4KKwkocGFja2FnZSk6IEFkZCBtaXNzaW5nIGRpc3RkaXIgZGVwZW5kZW5jeSwgYWxzbyBkb24ndCB0cmVhdCBsaW50aWFuCisJcHJvYmxlbXMgYXMgZXJyb3JzLCBqdXN0IHJlcG9ydCB0aGVtLgorCSogbWFuL0MvZHBrZy44OiBNb3ZlZCB0byBzZWN0aW9uIDEgd2hlcmUgaXQgYmVsb25ncy4KKwkqIG1hbi9DL2Rwa2ctcXVlcnkuODogTW92ZWQgdG8gc2VjdGlvbiAxIHdoZXJlIGl0IGJlbG9uZ3MuCisJKiBtYW4vQy9kcGtnLXNwbGl0Ljg6IE1vdmVkIHRvIHNlY3Rpb24gMSB3aGVyZSBpdCBiZWxvbmdzLgorCSogbWFuL0MvZHNlbGVjdC44OiBNb3ZlZCB0byBzZWN0aW9uIDEgd2hlcmUgaXQgYmVsb25ncy4KKwkqIG1hbi9DL01ha2VmaWxlLmFtOiBJbnN0YWxsIGRwa2cuMSwgZHBrZy1xdWVyeS4xLCBkc2VsZWN0LjEKKwkqIG1hbi9lcy9kcGtnLjg6IE1vdmVkIHRvIHNlY3Rpb24gMSB3aGVyZSBpdCBiZWxvbmdzLgorCSogbWFuL2VzL2Rwa2ctc3BsaXQuODogTW92ZWQgdG8gc2VjdGlvbiAxIHdoZXJlIGl0IGJlbG9uZ3MuCisJKiBtYW4vZXMvZHNlbGVjdC44OiBNb3ZlZCB0byBzZWN0aW9uIDEgd2hlcmUgaXQgYmVsb25ncy4KKwkqIG1hbi9lcy9NYWtlZmlsZS5hbTogSW5zdGFsbCBkcGtnLjEsIGRwa2ctc3BsaXQuMSwgZHNlbGVjdC4xCisJKiBtYW4vZnIvZHBrZy44OiBNb3ZlZCB0byBzZWN0aW9uIDEgd2hlcmUgaXQgYmVsb25ncy4KKwkqIG1hbi9mci9kcGtnLXF1ZXJ5Ljg6IE1vdmVkIHRvIHNlY3Rpb24gMSB3aGVyZSBpdCBiZWxvbmdzLgorCSogbWFuL2ZyL2Rwa2ctc3BsaXQuODogTW92ZWQgdG8gc2VjdGlvbiAxIHdoZXJlIGl0IGJlbG9uZ3MuCisJKiBtYW4vZnIvTWFrZWZpbGUuYW06IEluc3RhbGwgZHBrZy4xLCBkcGtnLXF1ZXJ5LjEsIGRwa2ctc3BsaXQuMQorCSogbWFuL2phL2Rwa2cuODogTW92ZWQgdG8gc2VjdGlvbiAxIHdoZXJlIGl0IGJlbG9uZ3MuCisJKiBtYW4vamEvZHBrZy1xdWVyeS44OiBNb3ZlZCB0byBzZWN0aW9uIDEgd2hlcmUgaXQgYmVsb25ncy4KKwkqIG1hbi9qYS9kc2VsZWN0Ljg6IE1vdmVkIHRvIHNlY3Rpb24gMSB3aGVyZSBpdCBiZWxvbmdzLgorCSogbWFuL2phL01ha2VmaWxlLmFtOiBJbnN0YWxsIGRwa2cuMSwgZHBrZy1xdWVyeS4xLCBkc2VsZWN0LjEKKwkqIG1hbi9wdF9CUi9kcGtnLjg6IE1vdmVkIHRvIHNlY3Rpb24gMSB3aGVyZSBpdCBiZWxvbmdzLgorCSogbWFuL3B0X0JSL2RzZWxlY3QuODogTW92ZWQgdG8gc2VjdGlvbiAxIHdoZXJlIGl0IGJlbG9uZ3MuCisJKiBtYW4vcHRfQlIvTWFrZWZpbGUuYW06IEluc3RhbGwgZHNlbGVjdC4xLCBkcGtnLjEKKwkqIG1hbi9ydS9kcGtnLjg6IE1vdmVkIHRvIHNlY3Rpb24gMSB3aGVyZSBpdCBiZWxvbmdzLgorCSogbWFuL3J1L01ha2VmaWxlLmFtOiBJbnN0YWxsIGRwa2cuMQorCSogbWFuL3N2L2Rwa2cuODogTW92ZWQgdG8gc2VjdGlvbiAxIHdoZXJlIGl0IGJlbG9uZ3MuCisJKiBtYW4vc3YvZHBrZy1xdWVyeS44OiBNb3ZlZCB0byBzZWN0aW9uIDEgd2hlcmUgaXQgYmVsb25ncy4KKwkqIG1hbi9zdi9kcGtnLXNwbGl0Ljg6IE1vdmVkIHRvIHNlY3Rpb24gMSB3aGVyZSBpdCBiZWxvbmdzLgorCSogbWFuL3N2L2RzZWxlY3QuODogTW92ZWQgdG8gc2VjdGlvbiAxIHdoZXJlIGl0IGJlbG9uZ3MuCisJKiBtYW4vc3YvTWFrZWZpbGUuYW06IEluc3RhbGwgZHBrZy4xLCBkcGtnLXF1ZXJ5LjEsIGRwa2ctc3BsaXQuMSwKKwlkc2VsZWN0LjEKKwkqIGRlYmlhbi9kcGtnLmluc3RhbGw6IEluc3RhbGwgZHBrZy4xLCBkcGtnLXF1ZXJ5LjEsIGRwa2ctc3BsaXQuMQorCSogZGViaWFuL2RzZWxlY3QuaW5zdGFsbDogSW5zdGFsbCBkc2VsZWN0LjEKKworCSogTWFrZWZpbGUuYW0gKEVYVFJBX0RJU1QpOiBEaXN0cmlidXRlIGZpbGVzIGluIHRoZSBkZWJpYW4gZGlyZWN0b3J5CisJaW4gdGhlIHNvdXJjZSB0YXJiYWxsLgorCShwYWNrYWdlKTogQ3JlYXRlIHNvdXJjZSBhbmQgYmluYXJ5IHBhY2thZ2VzIHVzaW5nIGRwa2ctYnVpbGRwYWNrYWdlCisJYW5kIHNvbWUgbWFnaWMgdG8gZ2l2ZSB1cyBhIGRpcmVjdG9yeSBjb250YWluaW5nIG9ubHkgJ2Rpc3QnIGZpbGVzLgorCUNoZWNrIHRoZSByZXN1bHRpbmcgY2hhbmdlcyBmaWxlIHdpdGggbGludGlhbiBpZiB3ZSBoYXZlIGl0LgorCisJKiAuYXJjaC1pbnZlbnRvcnk6IEFwcGx5IGwzM3QgcmVnZXggc2tpbGxzIHRvIGlnbm9yZSBzb3VyY2UgdGFyYmFsbHMsCisJcGFja2FnZXMgYW5kIHRoZSBkaXN0IGRpcmVjdG9yeS4KKworCSogdXRpbHMvTWFrZWZpbGUuYW0gKHJvb3RzYmluX1BST0dSQU1TKTogSW5zdGFsbCBzdGFydC1zdG9wLWRhZW1vbgorCWludG8gdGhlIG9yZGluYXJ5IHNiaW5kaXIgYnkgZGVmYXVsdC4KKwkqIGRlYmlhbi9kcGtnLmluc3RhbGw6IEluc3RhbGwgdXNyL3NiaW4vc3RhcnQtc3RvcC1kYWVtb24gaW50byAvc2Jpbi4KKworCSogZGViaWFuL2NvbnRyb2wgKEJ1aWxkLURlcGVuZHMpOiBUaGUgc291cmNlIHRhcmJhbGwgbm93IGluY2x1ZGVzCisJdGhlIGdlbmVyYXRlZCBnbW8gZmlsZXMsIHNvIHRoZXJlJ3Mgbm8gcmVhc29uIGZvciB0aGUgcGFja2FnZSB0bworCWJ1aWxkLWRlcGVuZCBvbiBnZXR0ZXh0LgorCisJKiBnZXRvcHQvZ2V0ZGF0ZS5jOiBSZW1vdmUgdW51c2VkIGZpbGUuCisKKwkqIG1ldGhvZHMvZGlzay91cGRhdGU6IFJlbW92ZSB7Li4ufSBnbG9iLCBhcyBpdCdzIGEgYmFzaGlzbS4KKworCSogZGViaWFuL2NvbnRyb2wgKEJ1aWxkLURlcGVuZHMpOiBGaXggZGVwZW5kZW5jeSBvbiB2aXJ0dWFsCisJcGFja2FnZSBgbGlibmN1cnNlcy1kZXYnLgorCisJKiBtNC9mdW5jcy5tNCAoRFBLR19GVU5DX1ZBX0NPUFkpOiBXcmFwIFRSWV9SVU4gYW5kIFRSWV9DT01QSUxFCisJY2FsbHMgaW4gQUNfQ0FDSEVfQ0hFQ0ssIG1pc3NlZCB3aGVuIEkgY29waWVkIGl0IG92ZXIgYW5kIHVwZGF0ZWQuCisKKwkqIGRlYmlhbi9kcGtnLnByZXJtOiBHaXZlIHRoZSBzY3JpcHQgYSBiaXQgb2YgYSBzcHJpbmcgY2xlYW4sCisJYWRkIGEgY29tbWVudCBibG9jayBhdCB0aGUgdG9wIHRvIHNlcnZlIGFzIGRvY3VtZW50YXRpb24gb2YgaG93CisJcHJlcm0gaXMgY2FsbGVkIGZvciBhbnlvbmUgd2FudGluZyBhIHF1aWNrIHJlZmVyZW5jZTsgdGhpcyBzZWVtcworCWEgcmVhc29uYWJsZSBwbGFjZSB0byBkbyBpdCBhcyBhbnkuICBEb24ndCByZW1vdmUgdGhlIGhpc3RvcmljCisJaW5mbyBzY3JpcHRzIGFueW1vcmUgKGRhdGluZyBiYWNrIHRvIDEuMy4zKSBhcyB3ZSBoYXZlbid0IHNoaXBwZWQKKwl0aGVtIGluIGFnZXMgYW5kIDEuMy4zJ3MgdXBncmFkZSBzY3JpcHQgZGlkIGl0IGFueXdheS4KKwkqIGRlYmlhbi9kcGtnLnBvc3RybTogRXF1YWwgc3ByaW5nIGNsZWFuIGFuZCBkb2N1bWVudGF0aW9uIGNvbW1lbnQKKwlhZGRlZCB0byB0aGUgdG9wLiAgUmVtb3ZlZCBjb2RlIHRvIHB1cmdlIGRwa2cuY2ZnIG5vdyB3ZSBpbmNsdWRlIGl0CisJaW4gdGhlIHBhY2thZ2UgYXMgYSBjb25mZmlsZSBhZ2FpbiBhbnl3YXkuCisJKiBkZWJpYW4vZHBrZy5wcmVpbnN0OiBFcXVhbCBzcHJpbmcgY2xlYW4gYW5kIGRvY3VtZW50YXRpb24gY29tbWVudAorCWFkZGVkIHRvIHRoZSB0b3AuICBTZXBhcmF0ZWQgZWFjaCBkaXNjcmVldCBwaWVjZSBvZiB1cGdyYWRlIGJlaGF2aW91cgorCWZvciB0aGUgMC45My41MCBqdW1wIGludG8gZGlmZmVyZW50IGZ1bmN0aW9ucy4KKwkqIGRlYmlhbi9kcGtnLnBvc3RpbnN0OiBFcXVhbCBzcHJpbmcgY2xlYW4gYW5kIGRvY3VtZW50YXRpb24gY29tbWVudAorCWFkZGVkIHRvIHRoZSB0b3AuICBTZXBhcmF0ZWQgZWFjaCBiaXQgb2YgYmVoYXZpb3VyIGludG8gYSBzZXBhcmF0ZQorCWZ1bmN0aW9uLgorCShtb3ZlX2luZm9fZGlyZWN0b3J5KTogTm8gbG9uZ2VyIGNyZWF0ZSBzeW1saW5rcyB0byB0aGUgbmV3IGxvY2F0aW9uLgorCShyZW1vdmVfaW5mb19zeW1saW5rKTogUmVtb3ZlIC91c3IvaW5mbyBvciAvdXNyL2luZm8vZGlyIHN5bWxpbmtzLgorCisyMDA1LTAxLTEzICBTY290dCBKYW1lcyBSZW1uYW50ICA8c2NvdHRAbmV0c3BsaXQuY29tPgorCisJKiBkZWJpYW4vY29udHJvbCAoQnVpbGQtRGVwZW5kcyk6IEFkZCBmb3Jnb3R0ZW4gYnVpbGQtZGVwZW5kIG9uCisJZGViaGVscGVyLCBJIHBpY2tlZCA0LjEuODEgYWZ0ZXIgcmVhZGluZyB0aGUgY2hhbmdlbG9nIGFzIGl0IGhhcyB0aGUKKwlmaXJzdCBmZWF0dXJlIHdlIG5lZWQgKHVwc3RyZWFtIGFuZCBkZWJpYW4gY2hhbmdlbG9ncyBpbiBhIG5hdGl2ZQorCXBhY2thZ2UpLgorCisJKiBtYW4vQy9NYWtlZmlsZS5hbSAoZHBrZ19zb3VyY2VfYWxpYXNlcyk6IEkgbWlzc2VkIGEgd2hvbGUgYnVuY2gKKwlvZiBtYW5wYWdlcyBjcmVhdGVkIGFzIGFsaWFzZXMgdG8gZHBrZy1zb3VyY2UsIHB1dCB0aGUgcnVsZXMgaW4gdG8KKwlkbyB0aGF0LgorCSogbWFuL0MvLmFyY2gtaW52ZW50b3J5OiBJZ25vcmUgZ2VuZXJhdGVkIGFsaWFzZWQgcGFnZXMuCisKKwkqIGRlYmlhbi9ydWxlczogUmV3cml0ZSBmcm9tIHNjcmF0Y2ggdG8gdXNlIGRlYmhlbHBlciwgdGhpcyBicmVha3MKKwliZWluZyBhYmxlIHRvIGJvb3RzdHJhcCBkcGtnIGZyb20gaXRzIG93biBzb3VyY2UgZGlyZWN0b3J5OyBidXQgdGhhdAorCWRpZG4ndCByZWFsbHkgd29yayBhbnl3YXkuICBZb3UgY2FuIGFsd2F5cyBqdXN0ICdtYWtlIGluc3RhbGwnIGZpcnN0LgorCSogZGViaWFuL2NvbXBhdDogU2V0IGRlYmhlbHBlciBjb21wYXRpYmlsaXR5IHRvIHY0LgorCSogZGViaWFuL2Rwa2cuZG9jczogTGlzdCBkb2N1bWVudGF0aW9uIHRvIHNoaXAgd2l0aCBkcGtnLgorCSogZGViaWFuL2Rwa2cuaW5zdGFsbDogTGlzdCBmaWxlcyB0aGF0IGJlbG9uZyB0byBkcGtnLgorCSogZGViaWFuL2RzZWxlY3QuaW5zdGFsbDogTGlzdCBmaWxlcyB0aGF0IGJlbG9uZyB0byBkc2VsZWN0LgorCSogZGViaWFuL2Rwa2ctZGV2Lmluc3RhbGw6IExpc3QgZmlsZXMgdGhhdCBiZWxvbmcgdG8gZHBrZy1kZXYuCisJKiAuYXJjaC1pbnZlbnRvcnk6IElnbm9yZSBidWlsZC10cmVlLCBjcmVhdGVkIGJ5IGRlYmlhbi9ydWxlcy4KKwkqIGRlYmlhbi8uYXJjaC1pbnZlbnRvcnk6IElnbm9yZSBmaWxlcyBhbmQgZGlyZWN0b3JpZXMgY3JlYXRlZCBieQorCWRlYmlhbi9ydWxlcy4KKworCSogbGliL01ha2VmaWxlLmFtIChJTkNMVURFUyk6IENvcnJlY3Qgc2hhcmVkc3RhdGVkaXIgdG8gZGF0YWRpciwKKwljb21tb24tbGljZW5zZXMgaXNuJ3QgaW4gL3Vzci9jb20gKHdoYXRldmVyIHRoYXQgaXMpLgorCisJKiBkcGtnLXNwbGl0L01ha2VmaWxlLmFtIChpbnN0YWxsLWRhdGEtbG9jYWwpOiBVc2UgJChta2Rpcl9wKSBpbnN0ZWFkCisJb2YgJChNS0lOU1RBTExESVJTKSwgYmV0dGVyIHN0eWxlLgorCSogbWV0aG9kcy9NYWtlZmlsZS5hbSAoaW5zdGFsbC1kYXRhLWxvY2FsKTogVXNlICQobWtkaXJfcCkgaW5zdGVhZCBvZgorCSQoTUtJTlNUQUxMRElSUykgaGVyZSB0b28uCisJKiBvcmlnaW5zL01ha2VmaWxlLmFtIChpbnN0YWxsLWRhdGEtbG9jYWwpOiBBbmQgaGVyZS4KKwkqIHNjcmlwdHMvTWFrZWZpbGUuYW0gKGluc3RhbGwtZXhlYy1sb2NhbCk6IEhlcmUgYXMgd2VsbC4KKwkoaW5zdGFsbC1kYXRhLWxvY2FsKTogTGlrZXdpc2UuCisJKiBzcmMvTWFrZWZpbGUuYW0gKGluc3RhbGwtZGF0YS1sb2NhbCk6IEFuZCBmaW5hbGx5LCBoZXJlIHRvby4KKworCSogc2NyaXB0cy9NYWtlZmlsZS5hbTogQXV0b21ha2UgZG9lc24ndCBjcmVhdGUgb3V0LW9mLXRyZWUgb3V0cHV0CisJZGlyZWN0b3JpZXMgZm9yIHVzLCBzbyBkbyBzbyBpZiBpdCB0aGV5IGRvbid0IGV4aXN0IChidXQgcXVpZXQsIGxpa2UpLgorCShkb19wZXJsX3N1YnN0KTogUmVtb3ZlIHNwYWNlIGluICMhIGxpbmUuCisJKiBkcGtnLXNwbGl0L01ha2VmaWxlLmFtOiBDcmVhdGUgb3V0LW9mLXRyZWUgZGlyZWN0b3JpZXMuCisJKGRvX3Blcmxfc3Vic3QpOiBSZW1vdmUgc3BhY2UgaW4gIyEgbGluZS4KKworCSogbGliL2Rwa2cuaDogSW5jbHVkZSBsb2NhbGUuaCwgZm9yIExDX0FMTCB3aGljaCBpcyBleHBhbmRlZCBpbgorCWEgbWFjcm8gaGVyZS4gIFRoaXMgaXMgbmVlZGVkIGlmIHdlIGJ1aWxkIHdpdGhvdXQgb3B0aW1pc2F0aW9ucworCWFzIGxpYmludGwuaCB3b24ndCBpbmNsdWRlIGl0IGZvciB1cy4KKworMjAwNS0wMS0xMiAgU2NvdHQgSmFtZXMgUmVtbmFudCAgPHNjb3R0QG5ldHNwbGl0LmNvbT4KKworCSogZGViaWFuL3BzZXVkby10YWdzOiBSZXdyaXRlIGFuZCBjbGVhciB1cCwgcHV0IHRhZ3MgaW50byBhIGRlY2VudAorCW9yZGVyIGFuZCBhZGQgYSBuZXcgW0RFUEVORFNdIHRhZyB0byB0cmFjayBkZXBlbmRlbmN5IGhhbmRsaW5nCisJaXNzdWVzLgorCisJKiBkZWJpYW4vc2hsaWJzLmRlZmF1bHQ6IENsZWFuIHVwLgorCSogZGViaWFuL3NobGlicy5vdmVycmlkZTogQ2xlYW4gdXAuCisKKwkqIGRlYmlhbi9kc2VsZWN0LmNmZzogQ2xlYW4gdXAgYXRyb2Npb3VzIEVuZ2xpc2ggc3BlbGxpbmcuCisJKiBkZWJpYW4vZHBrZy5jZmc6IENsZWFuIHVwIGF0cm9jaW91cyBFbmdsaXNoIHNwZWxsaW5nOyByZW1vdmUgb2xkCisJY29uZmlndXJhdGlvbiB2YWx1ZXMgYXMgdGhpcyBmaWxlIHdvdWxkIGJlIHVzZWZ1bCB0byBiZSBpbnN0YWxsZWQKKwl0byBkZXNjcmliZSBpdHMgdXNlLgorCSogZGViaWFuL2Rwa2cuY29uZmZpbGVzOiBBZGQgZHBrZy5jZmcuCisKKwkqIGRlYmlhbi9jb3B5cmlnaHQ6IENsZWFuIHVwLCB1dGYtOGlmeSBhbmQgYWRkIG1pc3NpbmcgY29weXJpZ2h0CisJZGVjbGFyYXRpb25zLgorCisJKiBkZWJpYW4vY29udHJvbCAoQnVpbGQtRGVwZW5kcyk6IFJlbW92ZSBTR01MLXJlbGF0ZWQgdG9vbHMgbm93CXdlIG5vCisJbG9uZ2VyIGhhdmUgZG9jcyBpbiB0aGF0IGZvcm1hdDsgaW5jcmVhc2UgZ2V0dGV4dCBidWlsZC1kZXBlbmRlbmN5IHRvCisJMC4xNC4xOyByZW1vdmUgYnVpbGQtZGVwZW5kZW5jeSBvbiBhdXRvdG9vbHMtZGV2LgorCShTdGFuZGFyZHMtVmVyc2lvbik6IEJ1bXAgdG8ga2VlcCBsaW50aWFuIGhhcHB5LCB3ZSdyZSBjb25mb3JtYW50LgorCShbZHBrZ11QcmUtRGVwZW5kcyk6IFJlbW92ZSBwcmUtZGVwZW5kZW5jeSBvbiBkc2VsZWN0IHB1dCBpbiBwbGFjZQorCXRvIGVhc2UgdHJhbnNpdGlvbiBiZXR3ZWVuIHdvb2R5IGFuZCBzYXJnZSB3aGVyZSBkc2VsZWN0IHdhcyBzcGxpdAorCWludG8gYSBzZXBhcmF0ZSBiaW5hcnkgcGFja2FnZS4KKwkoW2Rwa2ddU3VnZ2VzdHMpOiBJdCdzIGFib3V0IHRpbWUgd2Ugc3VnZ2VzdGVkIGFwdC4KKwkoW2Rwa2ddRGVzY3JpcHRpb24pOiBUaGUgZHNlbGVjdCBwcm9ncmFtIGlzIG5vIGxvbmdlciBpbmNsdWRlZCBpbiB0aGUKKwlkcGtnIHBhY2thZ2UsIHNvIGRvbid0IG1lbnRpb24gaXQgaW4gdGhlIGRlc2NyaXB0aW9uLgorCShbZHNlbGVjdF1EZXNjcmlwdGlvbik6IFJld3JpdGUgYXMgZHNlbGVjdCBpcyBubyBsb25nZXIgdGhlIHByaW1hcnkKKwlpbnRlcmZhY2UgZm9yIHBhY2thZ2UgbWFuYWdlbWVudCwgYW5kIHRoYXQgdXNlcnMgbWF5IHByZWZlciBhcHQtYmFzZWQKKwlpbnRlcmZhY2VzLgorCisJKiBkZWJpYW4vY29udHJvbCAoZHBrZy1zdGF0aWMpOiBUaGUgZHBrZyAoYW5kIGRwa2ctZGViKSBiaW5hcmllcworCWhhdmUgYmVlbiBsaW5rZWQgc3RhdGljYWxseSB0byB6bGliIGZvciBzb21lIHRpbWUsIGFuZCB0aGUKKwlkcGtnLXN0YXRpYyBwYWNrYWdlIGhhc24ndCBhY3R1YWxseSBiZWVuIGNyZWF0ZWQgZWl0aGVyLiAgUmVtb3ZlCisJZnJvbSB0aGUgY29udHJvbCBmaWxlLgorCisJKiBkZWJpYW4vY29udHJvbCAoZHBrZy1kb2MpOiBUaGUgZG9jdW1lbnRhdGlvbiBzaGlwcGVkIGluIHRoZQorCWRwa2ctZG9jIHBhY2thZ2Ugd2FzIHJhdGhlciBpbmNvbXBsZXRlIGFuZCBvdXQtb2YtZGF0ZSwgc28gd2FzCisJcmVtb3ZlZCBmcm9tIHRoZSBkaXN0cmlidXRpb24uICBSZW1vdmUgcGFja2FnZSBmcm9tIGNvbnRyb2wgZmlsZS4KKwkqIGRlYmlhbi9kcGtnLWRvYy5kb2MtYmFzZTogUmVtb3ZlIGRwa2ctZG9jIGZpbGUuCisJKiBkZWJpYW4vZHBrZy1kb2MucG9zdGluc3Q6IFJlbW92ZSBkcGtnLWRvYyBtYWludGFpbmVyIHNjcmlwdC4KKwkqIGRlYmlhbi9kcGtnLWRvYy5wcmVybTogUmVtb3ZlIGRwa2ctZG9jIG1haW50YWluZXIgc2NyaXB0LgorCSogZGViaWFuL1JFQURNRS5jb21waWxlOiBSZW1vdmVkIHRoaXMgZmlsZSBhcyBpdCdzIGJvdGggb3V0IG9mCisJZGF0ZSwgYW5kIGVudGlyZWx5IHJlcGxhY2VkIGJ5IEJ1aWxkLURlcGVuZHMgYW55d2F5IGZvciB0aG9zZQorCXRoYXQgY2FyZSBhYm91dCBzdWNoIHRoaW5ncy4KKworCSogTWFrZWZpbGUuYW06IFJlbW92ZSBydWxlcyB0byBpbnN0YWxsIGNvbW1vbiBkb2N1bWVudGF0aW9uIGFuZAorCWxpY2VuY2UgdW5kZXIgL3Vzci9zaGFyZS9kb2MvZHBrZywgbGVhdmUgdGhhdCB1cCB0byB0aGUgcGFja2FnZS4KKwkqIGxpYi9NYWtlZmlsZS5hbSAoSU5DTFVERVMpOiBEZWZpbmUgQ09QWUlOR0ZJTEUgdG8gcG9pbnQgdG8KKwkvdXNyL3NoYXJlL2NvbW1vbi1saWNlbnNlcy9HUEwtMi4KKworMjAwNS0wMS0xMSAgQ29saW4gV2F0c29uICA8Y2p3YXRzb25AZGViaWFuLm9yZz4KKworCSogZHNlbGVjdC9iYXNlY21kcy5jYyAoYmFzZWxpc3Q6OmRpc3BsYXloZWxwKTogUmV2ZXJ0IHRvIGZvcm1lcgorCVNwYWNlL0VudGVyLydRJyBiZWhhdmlvdXIsIHNvIHRoYXQgU3BhY2UgbGVhdmVzIHRoZSBoZWxwIHNjcmVlbgorCWFuZCBFbnRlciBhbmQgJ1EnIGRvIG5vdGhpbmcuIEl0J3MgZGFuZ2Vyb3VzIHRvIGVuY291cmFnZSB1c2VycworCXRvIHByZXNzIEVudGVyIG9yICdRJywgc2luY2UgdGhleSBjb21taXQgY2hhbmdlcyBpbiB0aGUgcGFja2FnZQorCXNlbGVjdGlvbiBzY3JlZW4uCisJKiBkc2VsZWN0L2hlbHBtc2dzLmNjIChobHBfcmVhZG9ubHlpbnRybywgaGxwX3JlY3VyaW50cm8pOiBVcGRhdGUKKwloZWxwIHRleHQgdG8gbWF0Y2guCisJKGhscF9tYWluaW50cm8pOiAnUScgcXVpdHMgYW5kIG92ZXJyaWRlcyBkZXBlbmRlbmN5IHByb2JsZW1zOworCSdYJyBxdWl0cyB3aXRob3V0IHNhdmluZyBjaGFuZ2VzLgorCisyMDA1LTAxLTEwICBTY290dCBKYW1lcyBSZW1uYW50ICA8c2NvdHRAbmV0c3BsaXQuY29tPgorCisJKiBjb25maWd1cmUuYWM6IEZpeCAtLXdpdGhvdXQtZHNlbGVjdCBhbmQgLS13aXRob3V0LXN0YXJ0LXN0b3AtZGFlbW9uCisJc28gdGhleSBhY3R1YWxseSB3b3JrLCBBdXRvY29uZiB3YXMgcHJlc2VydmluZyB0aGUgb2xkIHZhbHVlIG9mIHRoZQorCXZhcmlhYmxlLiAgQWx3YXlzIGNhbGwgQUNfUFJPR19DWFggb3RoZXJ3aXNlIHRoaW5ncyBhcmVuJ3QgaGFwcHkKKwlhcyBpdCBnZXRzIHBhcnRpYWxseSBleHBhbmRlZC4KKworCSogZHBrZy1zcGxpdC9NYWtlZmlsZS5hbSAoRVhUUkFfRElTVCk6IERpc3RyaWJ1dGUgbWtzcGxpdC5wbC4KKwkqIGRzZWxlY3QvTWFrZWZpbGUuYW0gKEVYVFJBX0RJU1QpOiBEaXN0cmlidXRlIG1rY3Vya2V5cy5wbC4KKwkqIGxpYi9NYWtlZmlsZS5hbSAobGliZHBrZ19hX1NPVVJDRVMpOiBEaXN0cmlidXRlIGdldHRleHQuaC4KKwkqIHNjcmlwdHMvTWFrZWZpbGUuYW0gKEVYVFJBX0RJU1QpOiBEaXN0cmlidXRlIHRoZSBzY3JpcHRzIGFuZAorCVJFQURNRS5hbHRlcm5hdGl2ZXMsIG9vcHMuCisJKGFsbC1sb2NhbCk6IEJ1aWxkIGluc3RhbGwtaW5mbyBmcm9tIGluc3RhbGwtaW5mby5wbCBtYW51YWxseS4KKwkoaW5zdGFsbC1leGVjLWxvY2FsKTogSW5zdGFsbCBpbnN0YWxsLWluZm8gbWFudWFsbHkuCisJKHVuaW5zdGFsbC1sb2NhbCk6IFJlbW92ZSBpbnN0YWxsLWluZm8gbWFudWFsbHkuCisJKiBzY3JpcHRzLy5hcmNoLWludmVudG9yeTogSWdub3JlIGluc3RhbGwtaW5mby1zdGFtcCBmaWxlIHdlIG5lZWQuCisJKiBzcmMvTWFrZWZpbGUuYW0gKGRwa2dfcXVlcnlfU09VUkNFUyk6IFRoZXJlIGlzIG5vIGVycm9ycy5oLgorCisJKiBNYWtlZmlsZS5jb25mLmluOiBSZW1vdmUgZmlsZSB1c2VkIGJ5IG9sZCBidWlsZCBzeXN0ZW0uCisJCisJKiBsaWIvbWxpYi5jIChidWZmZXJfd3JpdGUpOiBSZW1vdmUgY2FzdCBmcm9tIGx2YWx1ZSwgZGVwcmVjYXRlZAorCWluIHJlY2VudCB2ZXJzaW9ucyBvZiBnY2MuCisJKiBtNC9jb21waWxlci5tNCAoU0pSX0NPTVBJTEVSX09QVElNSVNBVElPTlMpOiBFeHBsaWNpdGx5IHNldCAtTzAKKwl3aGVuIGRpc2FibGluZyBjb21waWxlciBvcHRpbWlzYXRpb25zLCBhcyByZWNlbnQgdmVyc2lvbnMgb2YgZ2NjCisJaGF2ZSBzb21lIG9uIGJ5IGRlZmF1bHQuCisKKwlOb3cgd2UncmUgbm90IHVzaW5nIENWUyBhdCBhbGwsIHJlcGxhY2UgdGhlIG9sZCAuY3ZzaWdub3JlIGZpbGVzCisJd2l0aCAuYXJjaC1pbnZlbnRvcnkgZmlsZXMgQXJjaCBjYW4gdXNlIHRvIGlnbm9yZSBnZW5lcmF0ZWQgZmlsZXMuCisKKwkqIC5jdnNpZ25vcmU6IFJlbW92ZSBvbGQgZmlsZS4KKwkqIC5hcmNoLWludmVudG9yeTogUmVwbGFjZSB3aXRoIG1vcmUgY29tcGxldGUgcmVnZXggcnVsZXMuCisJKiBkcGtnLWRlYi8uY3ZzaWdub3JlOiBSZW1vdmUgb2xkIGZpbGUuCisJKiBkcGtnLWRlYi8uYXJjaC1pbnZlbnRvcnk6IFJlcGxhY2Ugd2l0aCBtb3JlIGNvbXBsZXRlIHJlZ2V4IHJ1bGVzLgorCSogZHBrZy1zcGxpdC8uY3ZzaWdub3JlOiBSZW1vdmUgb2xkIGZpbGUuCisJKiBkcGtnLXNwbGl0Ly5hcmNoLWludmVudG9yeTogUmVwbGFjZSB3aXRoIG1vcmUgY29tcGxldGUgcmVnZXggcnVsZXMuCisJKiBkc2VsZWN0Ly5jdnNpZ25vcmU6IFJlbW92ZSBvbGQgZmlsZS4KKwkqIGRzZWxlY3QvLmFyY2gtaW52ZW50b3J5OiBSZXBsYWNlIHdpdGggbW9yZSBjb21wbGV0ZSByZWdleCBydWxlcy4KKwkqIGdldG9wdC8uY3ZzaWdub3JlOiBSZW1vdmUgb2xkIGZpbGUuCisJKiBnZXRvcHQvLmFyY2gtaW52ZW50b3J5OiBSZXBsYWNlIHdpdGggbW9yZSBjb21wbGV0ZSByZWdleCBydWxlcy4KKwkqIGxpYi8uY3ZzaWdub3JlOiBSZW1vdmUgb2xkIGZpbGUuCisJKiBsaWIvLmFyY2gtaW52ZW50b3J5OiBSZXBsYWNlIHdpdGggbW9yZSBjb21wbGV0ZSByZWdleCBydWxlcy4KKwkqIG00Ly5hcmNoLWludmVudG9yeTogSWdub3JlIGZpbGVzIGNvcGllZCBpbiBieSAnYXV0b3BvaW50Jy4KKwkqIG1hbi8uY3ZzaWdub3JlOiBSZW1vdmUgb2xkIGZpbGUuCisJKiBtYW4vLmFyY2gtaW52ZW50b3J5OiBSZXBsYWNlIHdpdGggbW9yZSBjb21wbGV0ZSByZWdleCBydWxlcy4KKwkqIG1hbi9DLy5jdnNpZ25vcmU6IFJlbW92ZSBvbGQgZmlsZS4KKwkqIG1hbi9DLy5hcmNoLWludmVudG9yeTogUmVwbGFjZSB3aXRoIG1vcmUgY29tcGxldGUgcmVnZXggcnVsZXMuCisJKiBtYW4vZGUvLmN2c2lnbm9yZTogUmVtb3ZlIG9sZCBmaWxlLgorCSogbWFuL2RlLy5hcmNoLWludmVudG9yeTogUmVwbGFjZSB3aXRoIG1vcmUgY29tcGxldGUgcmVnZXggcnVsZXMuCisJKiBtYW4vZXMvLmFyY2gtaW52ZW50b3J5OiBJZ25vcmUgZ2VuZXJhdGVkICdNYWtlZmlsZScgYW5kICdNYWtlZmlsZS5pbicuCisJKiBtYW4vZnIvLmN2c2lnbm9yZTogUmVtb3ZlIG9sZCBmaWxlLgorCSogbWFuL2ZyLy5hcmNoLWludmVudG9yeTogUmVwbGFjZSB3aXRoIG1vcmUgY29tcGxldGUgcmVnZXggcnVsZXMuCisJKiBtYW4vamEvLmN2c2lnbm9yZTogUmVtb3ZlIG9sZCBmaWxlLgorCSogbWFuL2phLy5hcmNoLWludmVudG9yeTogUmVwbGFjZSB3aXRoIG1vcmUgY29tcGxldGUgcmVnZXggcnVsZXMuCisJKiBtYW4vcHRfQlIvLmN2c2lnbm9yZTogUmVtb3ZlIG9sZCBmaWxlLgorCSogbWFuL3B0X0JSLy5hcmNoLWludmVudG9yeTogUmVwbGFjZSB3aXRoIG1vcmUgY29tcGxldGUgcmVnZXggcnVsZXMuCisJKiBtYW4vcnUvLmN2c2lnbm9yZTogUmVtb3ZlIG9sZCBmaWxlLgorCSogbWFuL3J1Ly5hcmNoLWludmVudG9yeTogUmVwbGFjZSB3aXRoIG1vcmUgY29tcGxldGUgcmVnZXggcnVsZXMuCisJKiBtYW4vc3YvLmN2c2lnbm9yZTogUmVtb3ZlIG9sZCBmaWxlLgorCSogbWFuL3N2Ly5hcmNoLWludmVudG9yeTogUmVwbGFjZSB3aXRoIG1vcmUgY29tcGxldGUgcmVnZXggcnVsZXMuCisJKiBtZXRob2RzLy5jdnNpZ25vcmU6IFJlbW92ZSBvbGQgZmlsZS4KKwkqIG1ldGhvZHMvLmFyY2gtaW52ZW50b3J5OiBSZXBsYWNlIHdpdGggbW9yZSBjb21wbGV0ZSByZWdleCBydWxlcy4KKwkqIG9yaWdpbnMvLmFyY2gtaW52ZW50b3J5OiBJZ25vcmUgZ2VuZXJhdGVkICdNYWtlZmlsZScKKwlhbmQgJ01ha2VmaWxlLmluJy4KKwkqIHBvLy5jdnNpZ25vcmU6IFJlbW92ZSBvbGQgZmlsZS4KKwkqIHBvLy5hcmNoLWludmVudG9yeTogUmVwbGFjZSB3aXRoIG1vcmUgY29tcGxldGUgcmVnZXggcnVsZXMuCisJKiBzY3JpcHRzLy5jdnNpZ25vcmU6IFJlbW92ZSBvbGQgZmlsZS4KKwkqIHNjcmlwdHMvLmFyY2gtaW52ZW50b3J5OiBSZXBsYWNlIHdpdGggbW9yZSBjb21wbGV0ZSByZWdleCBydWxlcy4KKwkqIHNjcmlwdHMvY2hhbmdlbG9nLy5hcmNoLWludmVudG9yeTogSWdub3JlIGdlbmVyYXRlZCBmaWxlLgorCSogc3JjLy5jdnNpZ25vcmU6IFJlbW92ZSBvbGQgZmlsZS4KKwkqIHNyYy8uYXJjaC1pbnZlbnRvcnk6IFJlcGxhY2Ugd2l0aCBtb3JlIGNvbXBsZXRlIHJlZ2V4IHJ1bGVzLgorCSogdXRpbHMvLmN2c2lnbm9yZTogUmVtb3ZlIG9sZCBmaWxlLgorCSogdXRpbHMvLmFyY2gtaW52ZW50b3J5OiBSZXBsYWNlIHdpdGggbW9yZSBjb21wbGV0ZSByZWdleCBydWxlcy4KKwkKKwkqIG1hbi9zdi8uY2hlY2sucGw6IFJlbW92ZSBhcyBpdCB1c2VzIENWUyB0byBjaGVjayB3aGV0aGVyIHRoZQorCXRyYW5zbGF0aW9ucyBhcmUgdXAgdG8gZGF0ZSwgYW5kIHdlIGRvbid0IHVzZSB0aGF0IGFueW1vcmUuCisJKiBkc2VsZWN0L2NoZWNrdW5pbXAucGw6IFJlbW92ZSB1bnVzZWQgZmlsZS4KKwkqIGRzZWxlY3Qva2V5cy5jOiBSZW1vdmUgdW51c2VkIGZpbGUuCisJCisJRm9yIGF0IGxlYXN0IHRoZSBzZWNvbmQgdGltZSBpbiBkcGtnJ3MgaGlzdG9yeSwgY29udmVydCB0aGUgYnVpbGQKKwlzeXN0ZW0gdG8gdXNlIEdOVSBBdXRvbWFrZS4gIEknbSBzdXJlIHNvbWUgZnV0dXJlIG1haW50YWluZXIgd2lsbAorCWNvbWUgYWxvbmcgYW5kIGdldCByaWQgb2YgaXQgYWdhaW4sIGJ1dCBmb3Igbm93LCBBdXRvbWFrZSBpcyB0aGUKKwl3YXkgZm9yd2FyZC4KKworCSogTWFrZWZpbGUuaW46IFJlbW92ZSBvbGQgZmlsZS4KKwkqIE1ha2VmaWxlLmFtOiBSZXBsYWNlIHdpdGggc2hpbnkgQXV0b21ha2UgZ29vZG5lc3MsIGRvbid0IGRpc3RyaWJ1dGUKKwlUT0RPIGFueW1vcmU7IGl0J3Mgb25seSB1c2VmdWwgZm9yIGRldmVsb3BlcnMuCisJKiBkcGtnLWRlYi9NYWtlZmlsZS5pbjogUmVtb3ZlIG9sZCBmaWxlLgorCSogZHBrZy1kZWIvTWFrZWZpbGUuYW06IFJlcGxhY2Ugd2l0aCBzaGlueSBBdXRvbWFrZSBnb29kbmVzcywgZG9uJ3QKKwlpbmNsdWRlIHJ1bGVzIHRvIGJ1aWxkIGRwa2ctZGViLXN0YXRpYy4KKwkqIGRwa2ctc3BsaXQvTWFrZWZpbGUuaW46IFJlbW92ZSBvbGQgZmlsZS4KKwkqIGRwa2ctc3BsaXQvTWFrZWZpbGUuYW06IFJlcGxhY2Ugd2l0aCBzaGlueSBBdXRvbWFrZSBnb29kbmVzcy4KKwkqIGRzZWxlY3QvTWFrZWZpbGUuaW46IFJlbW92ZSBvbGQgZmlsZS4KKwkqIGRzZWxlY3QvTWFrZWZpbGUuYW06IFJlcGxhY2Ugd2l0aCBzaGlueSBBdXRvbWFrZSBnb29kbmVzcy4KKwkqIGdldG9wdC9NYWtlZmlsZS5pbjogUmVtb3ZlIG9sZCBmaWxlLgorCSogZ2V0b3B0L01ha2VmaWxlLmFtOiBSZXBsYWNlIHdpdGggc2hpbnkgQXV0b21ha2UgZ29vZG5lc3MuCisJKiBsaWIvTWFrZWZpbGUuaW46IFJlbW92ZSBvbGQgZmlsZS4KKwkqIGxpYi9NYWtlZmlsZS5hbTogUmVwbGFjZSB3aXRoIHNoaW55IEF1dG9tYWtlIGdvb2RuZXNzLgorCShsaWJkcGtnX2FfU09VUkNFUyk6IGFkZCByZWZ1Z2VlIGZpbGVzIGZyb20gJ2luY2x1ZGUnLgorCSogbWFuL01ha2VmaWxlLmluOiBSZW1vdmUgb2xkIGZpbGUuCisJKiBtYW4vTWFrZWZpbGUuYW06IFJlcGxhY2Ugd2l0aCBzaGlueSBBdXRvbWFrZSBnb29kbmVzcy4KKwkqIG1hbi9DL01ha2VmaWxlLmluOiBSZW1vdmUgb2xkIGZpbGUuCisJKiBtYW4vQy9NYWtlZmlsZS5hbTogUmVwbGFjZSB3aXRoIHNoaW55IEF1dG9tYWtlIGdvb2RuZXNzLgorCSogbWFuL2RlL01ha2VmaWxlLmluOiBSZW1vdmUgb2xkIGZpbGUuCisJKiBtYW4vZGUvTWFrZWZpbGUuYW06IFJlcGxhY2Ugd2l0aCBzaGlueSBBdXRvbWFrZSBnb29kbmVzcy4KKwkqIG1hbi9lcy9NYWtlZmlsZS5pbjogUmVtb3ZlIG9sZCBmaWxlLgorCSogbWFuL2VzL01ha2VmaWxlLmFtOiBSZXBsYWNlIHdpdGggc2hpbnkgQXV0b21ha2UgZ29vZG5lc3MuCisJKiBtYW4vZnIvTWFrZWZpbGUuaW46IFJlbW92ZSBvbGQgZmlsZS4KKwkqIG1hbi9mci9NYWtlZmlsZS5hbTogUmVwbGFjZSB3aXRoIHNoaW55IEF1dG9tYWtlIGdvb2RuZXNzLgorCSogbWFuL2phL01ha2VmaWxlLmluOiBSZW1vdmUgb2xkIGZpbGUuCisJKiBtYW4vamEvTWFrZWZpbGUuYW06IFJlcGxhY2Ugd2l0aCBzaGlueSBBdXRvbWFrZSBnb29kbmVzcy4KKwkqIG1hbi9wdF9CUi9NYWtlZmlsZS5pbjogUmVtb3ZlIG9sZCBmaWxlLgorCSogbWFuL3B0X0JSL01ha2VmaWxlLmFtOiBSZXBsYWNlIHdpdGggc2hpbnkgQXV0b21ha2UgZ29vZG5lc3MuCisJKiBtYW4vcnUvTWFrZWZpbGUuaW46IFJlbW92ZSBvbGQgZmlsZS4KKwkqIG1hbi9ydS9NYWtlZmlsZS5hbTogUmVwbGFjZSB3aXRoIHNoaW55IEF1dG9tYWtlIGdvb2RuZXNzLgorCSogbWFuL3N2L01ha2VmaWxlLmluOiBSZW1vdmUgb2xkIGZpbGUuCisJKiBtYW4vc3YvTWFrZWZpbGUuYW06IFJlcGxhY2Ugd2l0aCBzaGlueSBBdXRvbWFrZSBnb29kbmVzcy4KKwkqIG1ldGhvZHMvTWFrZWZpbGUuaW46IFJlbW92ZSBvbGQgZmlsZS4KKwkqIG1ldGhvZHMvTWFrZWZpbGUuYW06IFJlcGxhY2Ugd2l0aCBzaGlueSBBdXRvbWFrZSBnb29kbmVzcywgdGFraW5nCisJaW50byBhY2NvdW50IHRoZSBuZXcgZmlsZXN5c3RlbSBzdHJ1Y3R1cmUuCisJKiBvcmlnaW5zL01ha2VmaWxlLmFtOiBOZXcgQXV0b21ha2UgZmlsZSB0byBpbnN0YWxsIG9yaWdpbiBmaWxlcy4KKwkqIHNjcmlwdHMvTWFrZWZpbGUuaW46IFJlbW92ZSBvbGQgZmlsZS4KKwkqIHNjcmlwdHMvTWFrZWZpbGUuYW06IFJlcGxhY2Ugd2l0aCBzaGlueSBBdXRvbWFrZSBnb29kbmVzcy4KKwkqIHNyYy9NYWtlZmlsZS5pbjogUmVtb3ZlIG9sZCBmaWxlLgorCSogc3JjL01ha2VmaWxlLmFtOiBSZXBsYWNlIHdpdGggc2hpbnkgQXV0b21ha2UgZ29vZG5lc3MsIGRvbid0CisJaW5jbHVkZSBydWxlcyB0byBidWlsZCBlaXRoZXIgZHBrZy1zdGF0aWMgb3IgZHBrZy1xdWVyeS1zdGF0aWMuCisJKiB1dGlscy9NYWtlZmlsZS5pbjogUmVtb3ZlIG9sZCBmaWxlLgorCSogdXRpbHMvTWFrZWZpbGUuYW06IFJlcGxhY2Ugd2l0aCBzaGlueSBBdXRvbWFrZSBnb29kbmVzcywgZG9uJ3QKKwlpbmNsdWRlIHJ1bGVzIHRvIGJ1aWxkIG1kNXN1bS1zdGF0aWMuCisKKwkqIGRwa2ctZGViL2J1aWxkLmM6IFJlcGxhY2UgVVNFX1pMSUIgd2l0aCBXSVRIX1pMSUIuCisJKiBkcGtnLWRlYi9leHRyYWN0LmM6IFJlcGxhY2UgVVNFX1pMSUIgd2l0aCBXSVRIX1pMSUIuCisJKiBkcGtnLWRlYi9tYWluLmM6IFJlbW92ZSB2ZXJzaW9uLmggaW5jbHVkZS4KKwkqIGRwa2ctc3BsaXQvbWFpbi5jOiBSZW1vdmUgdmVyc2lvbi5oIGluY2x1ZGUuCisJKiBkc2VsZWN0L21haW4uY2M6IFJlbW92ZSB2ZXJzaW9uLmggaW5jbHVkZS4KKwkqIGxpYi9jb21wcmVzc2lvbi5jOiBSZXBsYWNlIFVTRV9aTElCIHdpdGggV0lUSF9aTElCIGFuZCBVU0VfQloyCisJd2l0aCBXSVRIX1pMSUIuCisJKiBzcmMvaGVscC5jOiBSZW1vdmUgdmVyc2lvbi5oIGluY2x1ZGUgYW5kIHJlcGxhY2UKKwlVU0VfU1RBUlRfU1RPUF9EQUVNT04gd2l0aCBXSVRIX1NUQVJUX1NUT1BfREFFTU9OLgorCSogc3JjL21haW4uYzogUmVtb3ZlIHZlcnNpb24uaCBpbmNsdWRlLgorCQorCVdlJ3JlIGdvaW5nIHRvIG1vdmUgdG8gdXNpbmcgJ2F1dG9yZWNvbmYnIHRvIGdlbmVyYXRlIHRoZSBidWlsZAorCXNjcmlwdHMgYWZ0ZXIgYSBjaGVja291dCBhbmQgJ21ha2UgZGlzdCcgdG8gZ2V0IGEgY2xlYW4gdGFyYmFsbC4KKwlWYXJpb3VzIGZpbGVzIHdpbGwgZ2V0IGNvcGllZCBhdXRvbWF0aWNhbGx5IHNvIHRoZXJlJ3Mgbm8gcG9pbnQKKwloYXZpbmcgdGhlbSB1bmRlciB2ZXJzaW9uIGNvbnRyb2wsIHRoZXknbGwgc3RpbGwgYXBwZWFyIGluIHRoZQorCXRhcmJhbGxzIHRob3VnaC4KKworCSogSU5TVEFMTDogUmVtb3ZlIGZyb20gdmVyc2lvbiBjb250cm9sLgorCSogY29uZmlnLmd1ZXNzOiBSZW1vdmUgZnJvbSB2ZXJzaW9uIGNvbnRyb2wuCisJKiBjb25maWcuc3ViOiBSZW1vdmUgZnJvbSB2ZXJzaW9uIGNvbnRyb2wuCisJKiBpbnN0YWxsLXNoOiBSZW1vdmUgZnJvbSB2ZXJzaW9uIGNvbnRyb2wuCisJKiBhdXRvZ2VuLnNoOiBSZW1vdmUgdW5uZWNlc3Nhcnkgc2NyaXB0LCBqdXN0IHJ1biAnYXV0b3JlY29uZicuCisJKiByZWxlYXNlLnNoOiBSZW1vdmUgdW5uZWNlc3Nhcnkgc2NyaXB0LCBqdXN0IHJ1biAnbWFrZSBkaXN0Jy4KKworCVRoZSBvbGQgJ2NvbmZpZ3VyZS5pbicgYXJyYW5nZWQgZm9yIGEgYnVuY2ggb2YgY29kZSB0byBiZSBhZGRlZAorCXRvIHRoZSBib3R0b20gb2YgJ2NvbmZpZy5oJyB3aXRoIHRoZSBhc3N1bXB0aW9uIHRoYXQgaXQnZCBiZQorCWluY2x1ZGVkIGV2ZXJ5d2hlcmUuICBUaGF0J3Mgbm90IGdvb2Qgc3R5bGUsIHRoZSBmaWxlIGlzIG9ubHkKKwlzdXBwb3NlZCB0byBjb250YWluIHNldHRpbmdzIGFuZCBub3QgcmVhbCBjb2RlLiAgUHV0IHRoZSBjb2RlIGluCisJcmVhbCBoZWFkZXIgZmlsZXMgYW5kIHNvdXJjZS4KKworCSogbGliL2Rwa2cuaDogSW5jbHVkZSA8c3lzL2NkZWZzLmg+IGFuZCA8c3RkZGVmLmg+IGlmIGF2YWlsYWJsZS4KKwkoSU5URVJQUkVURVJfTUFYKTogRGVmaW5lIHRvIFBBVEhfTUFYIG9yIDEwMjQgaWYgbm90IGF2YWlsYWJsZS4KKwkoRFBLR19WRVJTSU9OX0FSQ0gpOiBEZWZpbmUgdXNpbmcgUEFDS0FHRV9WRVJTSU9OIGluc3RlYWQgb2YKKwlEUEtHX1ZFUlNJT04sIHdoaWNoIG5vIGxvbmdlciBleGlzdHMuCisJKEFETUlORElSKTogUmVtb3ZlIGRlZmluaXRpb24sIGRlZmluZSBpbiBNYWtlZmlsZXMgd2hlcmUgbmVlZGVkLgorCShDT05GSUdESVIpOiBSZW1vdmUgZGVmaW5pdGlvbiwgZGVmaW5lIGluIE1ha2VmaWxlcyB3aGVyZSBuZWVkZWQuCisJKExJQkRJUik6IFJlbW92ZSBkZWZpbml0aW9uLCBkZWZpbmUgaW4gTWFrZWZpbGVzIHdoZXJlIG5lZWRlZC4KKwkoQ09OU1RBTlQsIFBSSU5URkZPUk1BVCwgTk9OUkVUVVJOSU5HLCBVTlVTRUQsIE5PTlJFVFVSTlBSSU5URkZPUk1BVCk6CisJRGVmaW5lIGF0dHJpYnV0ZSBtYXJrZXJzIHVzZWQgaW4gZnVuY3Rpb24gcHJvdG90eXBlcy4KKwkoc3RyZXJyb3IsIHN0cnNpZ25hbCwgc2NhbmRpciwgYWxwaGFzb3J0LCB1bnNldGVudik6IERlZmluZSBwcm90b3R5cGVzCisJZm9yIGZ1bmN0aW9ucyBpbiAnY29tcGF0LmMnIGlmIHRoZSBzeXN0ZW0gbGFja3MgdGhlbS4KKwkoc3RydG91bCwgdmFfY29weSwgV0NPUkVEVU1QKTogUHJvdmlkZSBjb21wYXRpYmxlIG1hY3JvcyBmb3IgZnVuY3Rpb25zCisJdGhlIHN5c3RlbSBsYWNrcy4KKwkoQlVJTERPTERQS0dGT1JNQVQpOiBEZWZpbmUgaGVyZS4KKwkoXywgTl8pOiBJbmNsdWRlIGdldHRleHQuaCBhbmQgZGVmaW5lIGZyaWVuZGxpZXIgbWFjcm9zLgorCSogbGliL2dldHRleHQuaDogSW5jbHVkZSBmcm9tIGdldHRleHQgZGlzdHJpYnV0aW9uIHVzZWZ1bCBoZWFkZXIKKwlmaWxlIHRoYXQgZG9lcyB0aGUgaGVhdnkgbGlmdGluZyBvZiBlbmFibGluZyBvciBkaXNhYmxpbmcgZ2V0dGV4dC4KKwkqIGxpYi9tZDUuaDogQWRkIGNvZGUgdG8gZGVmaW5lIFVXT1JEMzIgdXNlZCBieSB0aGlzIGltcGxlbWVudGF0aW9uLgorCSogZ2V0b3B0L2Vycm9yLmggKGVycm9yLCBlcnJvcl9hdF9saW5lKTogUmVtb3ZlIHByaW50ZiBmb3JtYXQKKwlhdHRyaWJ1dGUgbWFya2VyIGZyb20gcHJvdG90eXBlcyB0byBrZWVwIHRoZSBjb2RlIGNsZWFuLgorCSogZ2V0b3B0L2dldG9wdC5jIChzdG9yZV9hcmdzX2FuZF9lbnYpOiBSZW1vdmUgdW51c2VkIGF0dHJpYnV0ZQorCW1hcmtlciBmcm9tIGZ1bmN0aW9uIHRvIGtlZXAgdGhlIGNvZGUgY2xlYW4uCisJKiB1dGlscy9tZDVzdW0uYzogTGV0IGdldHRleHQuaCAoaW5jbHVkZWQgdGhyb3VnaCBkcGtnLmgpIGRvIHRoZQorCWhlYXZ5IGxpZnRpbmcgYW5kIGRlZmluZSB0aGUgcmlnaHQgdGhpbmdzIGZvciB1cy4KKwkqIHV0aWxzL3N0YXJ0LXN0b3AtZGFlbW9uLmM6IER1cGxpY2F0ZSBpbmNsdWRlcyBvZiA8c3lzL2NkZWZzLmg+CisJYW5kIDxzdGRkZWYuaD4gYWxvbmcgd2l0aCBhdHRyaWJ1dGUgbWFya2VyIGRlZmluaXRpb25zIHRvIGF2b2lkCisJaGF2aW5nIHRvIGluY2x1ZGUgJ2Rwa2cuaCcuCisJCisJKiBjb25maWd1cmUuaW46IFJlbmFtZSB0byAnY29uZmlndXJlLmFjJyBhbmQgcmV3cml0ZSBmcm9tIHRoZQorCWdyb3VuZC11cCB3aXRoIEF1dG9jb25mIDIuNTkgaW4gbWluZC4KKwkqIG00L2FyY2gubTQ6IE5ldyBmaWxlIG9mIG1hY3JvcyBmb3IgJ2NvbmZpZ3VyZS5hYyc6CisJKERQS0dfT1NfVFlQRSk6IENvZGUgZnJvbSBvbGQgJ2NvbmZpZ3VyZS5pbicgdG8gdHVybiBvdXRwdXQgZnJvbQorCSdjb25maWcuZ3Vlc3MnIGludG8gYW4gb3BlcmF0aW5nIHN5c3RlbSBuYW1lIHdlIHJlY29nbmlzZS4KKwkoRFBLR19BUkNISVRFQ1RVUkUpOiBDb2RlIGZyb20gb2xkICdjb25maWd1cmUuaW4nIHRvIGxvb2sgdXAKKwlDUFUgYW5kIG9wZXJhdGluZyBzeXN0ZW0gbmFtZSBpbiB0aGUgJ2FyY2h0YWJsZScuCisJKiBtNC9jb21waWxlci5tNDogTmV3IGZpbGUgb2YgbWFjcm9zIGZvciAnY29uZmlndXJlLmFjJzoKKwkoU0pSX0NPTVBJTEVSX1dBUk5JTkdTKTogQWRkIG15IHN0YW5kYXJkIG1hY3JvIHRvIGVuYWJsZSBhZGRpdGlvbmFsCisJY29tcGlsZXIgd2FybmluZ3MgYW5kIHRyZWF0IHRoZW0gYXMgZXJyb3JzLgorCShTSlJfQ09NUElMRVJfT1BUSU1JU0FUSU9OUyk6IEFkZCBteSBzdGFuZGFyZCBtYWNybyB0byBhbGxvdworCWRpc2FibGluZyBvZiBvcHRpbWlzYXRpb25zLgorCShEUEtHX0NfQVRUUklCVVRFKTogTWFjcm8gdG8gY2hlY2sgd2hldGhlciB0aGUgQyBjb21waWxlciBzdXBwb3J0cworCV9fYXR0cmlidXRlX18sIHdlIGFzc3VtZSB0aGF0IGNvbXBpbGVycyB0aGF0IGRvIGlnbm9yZSB1bmtub3duCisJYXR0cmlidXRlcyBsaWtlIGdjYyBkb2VzLgorCSogbTQvZnVuY3MubTQ6IE5ldyBmaWxlIG9mIG1hY3JvcyBmb3IgJ2NvbmZpZ3VyZS5hYyc6CisJKERQS0dfRlVOQ19WQV9DT1BZKTogQ29kZSBmcm9tIG9sZCAnY29uZmlndXJlLmluJyB0byBkZXRlcm1pbmUKKwl3aGV0aGVyIHRoZSBzeXN0ZW0gc3VwcG9ydHMgdmFfY29weSBvciBkaXJlY3RseSBjb3B5aW5nIHRoZSB2YWx1ZXMuCisJKiBtNC9saWJzLm00OiBOZXcgZmlsZSBvZiBtYWNyb3MgZm9yICdjb25maWd1cmUuYWMnOgorCShEUEtHX0xJQl9aTElCKTogUmV3b3JrIG9mIG9sZCAnY29uZmlndXJlLmluJyBjb2RlIHRvIGFsbG93IHRoZQorCXVzZXIgdG8gZGVjaWRlIHdoZXRoZXIgdG8gdXNlIHpsaWIsIGFuZCB3aGV0aGVyIHRvIGxpbmsgaXQgc3RhdGljYWxseS4KKwkoRFBLR19MSUJfQloyKTogUmV3b3JrIG9mIG9sZCAnY29uZmlndXJlLmluJyBjb2RlIHRvIGFsbG93IHRoZSB1c2VyCisJdG8gZGVjaWRlIHdoZXRoZXIgdG8gdXNlIHRoZSBiejIgbGlicmFyeSwgYW5kIHdoZXRoZXIgdG8gbGluayBpdAorCXN0YXRpY2FsbHkuCisJKERQS0dfTElCX0NVUlNFUyk6IENvZGUgZnJvbSBvbGQgJ2NvbmZpZ3VyZS5pbicgdG8gcGljayB0aGUgcmlnaHQKKwljdXJzZXMgbGlicmFyeSBvbiB0aGUgc3lzdGVtLgorCShEUEtHX0xJQl9TU0QpOiBDb2RlIGZyb20gb2xkICdjb25maWd1cmUuaW4nIHRvIGxvb2sgZm9yIGxpYnJhcmllcworCXVzZWQgYnkgc3RhcnQtc3RvcC1kYWVtb24uCisJKiBtNC9saW5rZXIubTQ6IE5ldyBmaWxlIG9mIG1hY3JvcyBmb3IgJ2NvbmZpZ3VyZS5hYyc6CisJKFNKUl9MSU5LRVJfT1BUSU1JU0FUSU9OUyk6IEFkZCBteSBzdGFuZGFyZCBtYWNybyB0byBlbmFibGUgbGlua2VyCisJb3B0aW1pc2F0aW9ucyBhbmQgYWxsb3cgdGhlbSB0byBiZSBkaXNhYmxlZC4KKwkqIG00L3BlcmwubTQ6IE5ldyBmaWxlIG9mIG1hY3JvcyBmb3IgJ2NvbmZpZ3VyZS5hYyc6CisJKERQS0dfUFJPR19QRVJMKTogTWFjcm8gdG8gbG9jYXRlIHRoZSBQZXJsIGludGVycHJldGVyIGluIHRoZSBQQVRILAorCW9yIGFsbG93IHRoZSB1c2VyIHRvIHNwZWNpZnkgaXQgd2l0aCBQRVJMPS4KKwkqIG00L3R5cGVzLm00OiBOZXcgZmlsZSBvZiBtYWNyb3MgZm9yICdjb25maWd1cmUuYWMnOgorCShEUEtHX1RZUEVfUFRSRElGRl9UKTogTWFjcm8gdG8gcmVwbGFjZSBvYnNvbGV0ZSBBQ19UWVBFX1BUUkRJRkZfVAorCW1hY3JvIGZyb20gQXV0b2NvbmYuCisJKERQS0dfREVDTF9TWVNfU0lHTElTVCk6IE1hY3JvIHRvIHJlcGxhY2Ugb2Jzb2xldGUgQUNfREVDTF9TWVNfU0lHTElTVAorCW1hY3JvIGZyb20gQXV0b2NvbmYuCisJKERQS0dfQ0hFQ0tfREVGSU5FKTogUmV3b3JrIG9mIG9sZCAnYXV0b21ha2UvZHBrZy5tNCcgY29kZS4KKwkqIHZlcnNpb24tbnI6IFJlbW92ZSwgdmVyc2lvbiBzaG91bGQgYmUgY2hhbmdlZCBpbiBjb25maWd1cmUuYWMKKwlkaXJlY3RseS4KKwkqIGF1dG9tYWtlOiBSZW1vdmUgb2xkZXIgQXV0b2NvbmYgbWFjcm9zLgorCQorCSogcG8vQ2hhbmdlTG9nOiBBZGQgbmV3IENoYW5nZUxvZyB0byBkZXNjcmliZSBjaGFuZ2VzIGFmZmVjdGluZworCXRyYW5zbGF0aW9ucyBhbmQgdGhlaXIgaW5mcmFzdHJ1Y3R1cmUuCisJCisJKiBvcmlnaW46IE1vdmUgdG8gJ29yaWdpbnMvZGViaWFuJyBzbyB3ZSBjYW4gc2hpcCBhZGRpdGlvbmFsCisJb3JpZ2lucyBpbiBmdXR1cmUuCisKKwlSZWFycmFuZ2UgY2hhbmdlbG9nIHBhcnNlcnMgdW5kZXIgJ3NjcmlwdHMnIGludG8gYSBzZXBhcmF0ZQorCWRpcmVjdG9yeSBzbyB0aGV5IGFsc28gZG9uJ3QgbmVlZCB0byBiZSByZW5hbWVkIG9uIGluc3RhbGxhdGlvbi4KKworCSogc2NyaXB0cy9jbC1kZWJpYW4ucGw6IE1vdmUgdG8gJ3NjcmlwdHMvY2hhbmdlbG9nL2RlYmlhbi5wbCcuCisKKwlSZWFycmFuZ2UgJ21ldGhvZHMnIGRpcmVjdG9yeSBpbnRvIHRoZSBzYW1lIGhpZXJhcmNoeSB1c2VkIHdoZW4KKwlpbnN0YWxsZWQgdG8gc2F2ZSBoYXZpbmcgdG8gcmVuYW1lIGZpbGVzIG9uIGluc3RhbGxhdGlvbi4KKworCSogbWV0aG9kcy9kaXNrLmRlc2MuY2Ryb206IE1vdmUgdG8gJ21ldGhvZHMvZGlzay9kZXNjLmNkcm9tJy4KKwkqIG1ldGhvZHMvZGlzay5kZXNjLmhhcmRkaXNrOiBNb3ZlIHRvICdtZXRob2RzL2Rpc2svZGVzYy5oYXJkZGlzaycuCisJKiBtZXRob2RzL2Rpc2suZGVzYy5tb3VudGVkOiBNb3ZlIHRvICdtZXRob2RzL2Rpc2svZGVzYy5tb3VudGVkJy4KKwkqIG1ldGhvZHMvZGlzay5kZXNjLm5mczogTW92ZSB0byAnbWV0aG9kcy9kaXNrL2Rlc2MubmZzJy4KKwkqIG1ldGhvZHMvZGlzay5pbnN0YWxsOiBNb3ZlIHRvICdtZXRob2RzL2Rpc2svaW5zdGFsbCcgYW5kIGNobW9kICt4LgorCSogbWV0aG9kcy9kaXNrLm5hbWVzOiBNb3ZlIHRvICdtZXRob2RzL2Rpc2svbmFtZXMnLgorCSogbWV0aG9kcy9kaXNrLnNldHVwOiBNb3ZlIHRvICdtZXRob2RzL2Rpc2svc2V0dXAnIGFuZCBjaG1vZCAreC4KKwkqIG1ldGhvZHMvZGlzay51cGRhdGU6IE1vdmUgdG8gJ21ldGhvZHMvZGlzay91cGRhdGUnIGFuZCBjaG1vZCAreC4KKwkqIG1ldGhvZHMvZmxvcHB5LmRlc2MuZmxvcHB5OiBNb3ZlIHRvICdtZXRob2RzL2Zsb3BweS9kZXNjLmZsb3BweScuCisJKiBtZXRob2RzL2Zsb3BweS5pbnN0YWxsOiBNb3ZlIHRvICdtZXRob2RzL2Zsb3BweS9pbnN0YWxsJyBhbmQKKwljaG1vZCAreC4KKwkqIG1ldGhvZHMvZmxvcHB5Lm5hbWVzOiBNb3ZlIHRvICdtZXRob2RzL2Zsb3BweS9uYW1lcycuCisJKiBtZXRob2RzL2Zsb3BweS5zZXR1cDogTW92ZSB0byAnbWV0aG9kcy9mbG9wcHkvc2V0dXAnIGFuZCBjaG1vZCAreC4KKwkqIG1ldGhvZHMvZmxvcHB5LnVwZGF0ZTogTW92ZSB0byAnbWV0aG9kcy9mbG9wcHkvdXBkYXRlJyBhbmQgY2htb2QgK3guCisJKiBtZXRob2RzL2hkLnNldHVwOiBSZW1vdmUgdW51c2VkIG1ldGhvZCBzY3JpcHQuCisJKiBtZXRob2RzL2hkLnVucGFjazogUmVtb3ZlIHVudXNlZCBtZXRob2Qgc2NyaXB0LgorCSogbWV0aG9kcy9oZC51cGRhdGU6IFJlbW92ZSB1bnVzZWQgbWV0aG9kIHNjcmlwdC4KKworCUNvbnNvbGlkYXRlIHRoZSBsaWJyYXJ5IGNvZGUgaW50byBvbmUgZGlyZWN0b3J5LCBzbyB0aGUgaGVhZGVycyBhcmUKKwlhbG9uZ3NpZGUgdGhlIGNvZGUgcmF0aGVyIHRoYW4gc29tZXdoZXJlIGVsc2UuCisKKwkqIGluY2x1ZGUvZHBrZy1kYi5oOiBNb3ZlIHRvICdsaWInLgorCSogaW5jbHVkZS9teW9wdC5oOiBNb3ZlIHRvICdsaWInLgorCSogaW5jbHVkZS9wYXJzZWR1bXAuaDogTW92ZSB0byAnbGliJy4KKwkqIGluY2x1ZGUvdGFyZm4uaDogTW92ZSB0byAnbGliJy4KKwkqIGluY2x1ZGUvZHBrZy5oLmluOiBNb3ZlIHRvICdsaWInIGFuZCByZW5hbWUgdG8gJ2Rwa2cuaCcsIHdlJ2xsCisJc2V0IEFETUlORElSLCBDT05GSUdESVIgYW5kIExJQkRJUiBpbiBNYWtlZmlsZSB3aGVyZSBuZWVkZWQgYXMgdGhleQorCWNhbiBjb250YWluIHNoZWxsIHBhdGhzLgorCSogaW5jbHVkZTogUmVtb3ZlIGRpcmVjdG9yeS4KKwkKKwkqIEFVVEhPUlM6IEFkZCBuZXcgZmlsZSBkZXRhaWxpbmcgdGhlIG9yaWdpbmFsIGF1dGhvcnMgb2YgZHBrZyBhbmQKKwl0aGUgbWFpbnRhaW5lcnMgdGhyb3VnaCB0aGUgeWVhcnMuCisJKiBDT1BZSU5HOiBVcGRhdGUgdG8gaW5jbHVkZSBjb3JyZWN0IEZTRiBhZGRyZXNzLgorCSogTkVXUzogQWRkIG5ldyBmaWxlIHRoYXQganVzdCBwb2ludHMgdG8gZGViaWFuL2NoYW5nZWxvZyBmb3IgbWFqb3IKKwljaGFuZ2VzIGJldHdlZW4gcmVsZWFzZXMuCisJKiBSRUFETUU6IEFkZCBuZXcgZmlsZSB0byBicmllZmx5IGRlc2NyaWJlIHRoZSBwYWNrYWdlLgorCisJSW5zdGVhZCBvZiBzY2F0dGVyaW5nIG1hbnBhZ2VzIHRocm91Z2hvdXQgdGhlIHNvdXJjZSwgd2UnbGwga2VlcAorCWFsbCBvZiB0aGUgb3JpZ2luYWwgcGFnZXMgaW4gb25lIHBsYWNlIHVuZGVyICdtYW4vQycuICBUaGlzIHNob3VsZAorCW1ha2UgaXQgZWFzaWVyIHRvIGtlZXAgdHJhY2sgb2YgdGhlbSwgZXNwZWNpYWxseSB0cmFuc2xhdG9ycy4KKworCSogZHBrZy1kZWIvZHBrZy1kZWIuMTogTW92ZSB0byAnbWFuL0MnLgorCSogZHBrZy1zcGxpdC9kcGtnLXNwbGl0Ljg6IE1vdmUgdG8gJ21hbi9DJy4KKwkqIGRzZWxlY3QvZHNlbGVjdC44OiBNb3ZlIHRvICdtYW4vQycuCisJKiBzY3JpcHRzLzgyMi1kYXRlLjE6IE1vdmUgdG8gJ21hbi9DJy4KKwkqIHNjcmlwdHMvY2xlYW51cC1pbmZvLjg6IE1vdmUgdG8gJ21hbi9DJy4KKwkqIHNjcmlwdHMvZHBrZy1hcmNoaXRlY3R1cmUuMTogTW92ZSB0byAnbWFuL0MnLgorCSogc2NyaXB0cy9kcGtnLWNoZWNrYnVpbGRkZXBzLjE6IE1vdmUgdG8gJ21hbi9DJy4KKwkqIHNjcmlwdHMvZHBrZy1kaXZlcnQuODogTW92ZSB0byAnbWFuL0MnLgorCSogc2NyaXB0cy9kcGtnLW5hbWUuMTogTW92ZSB0byAnbWFuL0MnLgorCSogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy4xOiBNb3ZlIHRvICdtYW4vQycuCisJKiBzY3JpcHRzL2Rwa2ctc2NhbnNvdXJjZXMuMTogTW92ZSB0byAnbWFuL0MnLgorCSogc2NyaXB0cy9kcGtnLXNvdXJjZS4xOiBNb3ZlIHRvICdtYW4vQycuCisJKiBzY3JpcHRzL2Rwa2ctc3RhdG92ZXJyaWRlLjg6IE1vdmUgdG8gJ21hbi9DJy4KKwkqIHNjcmlwdHMvaW5zdGFsbC1pbmZvLjg6IE1vdmUgdG8gJ21hbi9DJy4KKwkqIHNjcmlwdHMvdXBkYXRlLWFsdGVybmF0aXZlcy44OiBNb3ZlIHRvICdtYW4vQycuCisJKiBzcmMvZHBrZy1xdWVyeS44OiBNb3ZlIHRvICdtYW4vQycuCisJKiBzcmMvZHBrZy44OiBNb3ZlIHRvICdtYW4vQycuCisJKiB1dGlscy9tZDVzdW0uMTogTW92ZSB0byAnbWFuL0MnLgorCSogdXRpbHMvc3RhcnQtc3RvcC1kYWVtb24uODogTW92ZSB0byAnbWFuL0MnLgorCQorCSogbWFuL2VuOiBSZW5hbWUgZGlyZWN0b3J5IHRvICdtYW4vQycsIHJlc2VydmluZyBjb3VudHJ5IGNvZGVzIGZvcgorCW1hbnBhZ2VzIHRoYXQgaGF2ZSBhY3R1YWxseSB1bmRlcmdvbmUgdHJhbnNsYXRpb24uICBUaGVzZSBhcmUgdGhlCisJIm9yaWdpbmFsIiBmb3JtYXQsIGFuZCBsaWtlIHRoZSBzdHJpbmdzIGluIHRoZSBjb2RlIGl0c2VsZiBkb24ndAorCXJlYWxseSBiZWxvbmcgdG8gYW55IHBhcnRpY3VsYXIgbG9jYWxlLgorCisJQ29udGludWluZyB0aGUgc3Bpcml0IG9mIGhhdmluZyBvbmx5IG9uZSBtYXJrdXAgZm9ybWF0IGZvciBtYW5wYWdlcywKKwlmaXggdXAgdGhlIHR3byBnZW5lcmF0ZWQgZnJvbSBQT0QgYW5kIHJlbW92ZSB0aGUgUE9ELgorCisJKiBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLjE6IEdlbmVyYXRlIHdpdGggcG9kMm1hbiBhbmQgcmVtb3ZlCisJZGFtYWdlIGZyb20gdGhlIHRvcCwgdHVybmluZyBpdCBpbnRvIHJlc3BlY3RhYmxlIG5yb2ZmLgorCSogc2NyaXB0cy9kcGtnLWFyY2hpdGVjdHVyZS5wbDogUmVtb3ZlIFBPRCBkb2N1bWVudGF0aW9uIGZyb20gc2NyaXB0LgorCSogc2NyaXB0cy9kcGtnLXNjYW5zb3VyY2VzLjE6IEdlbmVyYXRlIHdpdGggcG9kMm1hbiBhbmQgcmVtb3ZlCisJZGFtYWdlIGZyb20gdGhlIHRvcCwgdHVybmluZyBpdCBpbnRvIHJlc3BlY3RhYmxlIG5yb2ZmLgorCSogc2NyaXB0cy9kcGtnLXNjYW5zb3VyY2VzLnBsOiBSZW1vdmUgUE9EIGRvY3VtZW50YXRpb24gZnJvbSBzY3JpcHQuCisJCisJUmVtb3ZlIHRoZSBTR01MIGZpbGVzIGNvbnRhaW5pbmcgdGhlIHNhbWUgY29udGVudCBhcyB0aGUgbWFucGFnZXMsCisJYnV0IHdoaWNoIHdlcmUgbmV2ZXIgdXNlZCB0byBnZW5lcmF0ZSB0aGVtLiAgVGhpcyBhdm9pZHMgY29uZnVzaW9uLAorCWFuZCBhcyBvbmUgbWFya3VwIGZvcm1hdCBpcyBqdXN0IGFzIGdvb2QgYXMgYW5vdGhlciwgd2UnbGwgc2V0dGxlCisJb24gbnJvZmYncyBtYW4gZm9ybWF0LgorCQorCSogbWFuL2VuL2NsZWFudXAtaW5mby44LnNnbWw6IFJlbW92ZSBTR01MIGZvcm1hdCBkb2N1bWVudGF0aW9uLgorCSogbWFuL2VuL2RlYi1jb250cm9sLjUuc2dtbDogUmVtb3ZlIFNHTUwgZm9ybWF0IGRvY3VtZW50YXRpb24uCisJKiBtYW4vZW4vZGViLW9sZC41LnNnbWw6IFJlbW92ZSBTR01MIGZvcm1hdCBkb2N1bWVudGF0aW9uLgorCSogbWFuL2VuL2RlYi41LnNnbWw6IFJlbW92ZSBTR01MIGZvcm1hdCBkb2N1bWVudGF0aW9uLgorCSogbWFuL2VuL2Rwa2ctY2hlY2tidWlsZGRlcHMuMS5zZ21sOiBSZW1vdmUgU0dNTCBmb3JtYXQgZG9jdW1lbnRhdGlvbi4KKwkqIG1hbi9lbi9kcGtnLjguc2dtbDogUmVtb3ZlIFNHTUwgZm9ybWF0IGRvY3VtZW50YXRpb24uCisJKiBtYW4vZW4vZHBrZy5jZmcuNS5zZ21sOiBSZW1vdmUgU0dNTCBmb3JtYXQgZG9jdW1lbnRhdGlvbi4KKwkqIG1hbi9lbi9kc2VsZWN0Ljguc2dtbDogUmVtb3ZlIFNHTUwgZm9ybWF0IGRvY3VtZW50YXRpb24uCisJKiBtYW4vZW4vZHNlbGVjdC5jZmcuNS5zZ21sOiBSZW1vdmUgU0dNTCBmb3JtYXQgZG9jdW1lbnRhdGlvbi4KKwkqIG1hbi9wYXRocy5lbnQuaW46IFJlbW92ZSBub3cgd2UgaGF2ZSBubyBTR01MIGZvcm1hdCBwYWdlcy4KKworCSogYXR0aWM6IFJlbW92ZSBoaXN0b3JpY2FsIGludGVyZXN0IGRpcmVjdG9yeSwgdGhhdCdzIHdoYXQgdmVyc2lvbgorCWNvbnRyb2wgaXMgZm9yLgorCSogZG9jOiBSZW1vdmUgb2Jzb2xldGUsIGluY29tcGxldGUgYW5kIG91dC1vZi1kYXRlIGRvY3VtZW50YXRpb24KKwlpbmNsdWRpbmcgdGhhdCBsaWNlbmNlZCB1bmRlciB0aGUgR0ZETCAoaWUgdGhlIGVudGlyZSBkaXJlY3RvcnkpLgorCSogbWQ1c3VtOiBSZW1vdmUgZW1wdHkgZGlyZWN0b3J5LgorCisJKiBtYWluOiBSZW5hbWUgZGlyZWN0b3J5IHRvICdzcmMnIHNvIGl0J3MgY29uc2lzdGVudCB3aXRoICdsaWInLgorCSogb3B0bGliOiBSZW5hbWUgZGlyZWN0b3J5IHRvICdnZXRvcHQnIGFzIHRoYXQncyB3aGF0J3MgcmVhbGx5IGluIGl0LgorCSogc3BsaXQ6IFJlbmFtZSBkaXJlY3RvcnkgdG8gJ2Rwa2ctc3BsaXQnIHNvIGl0J3MgY29uc2lzdGVudCB3aXRoCisJJ2Rwa2ctZGViJy4KKworVHVlIE5vdiAwOSAxNToyMzo1NCBDRVNUIDIwMDQgQ2hyaXN0aWFuIFBlcnJpZXIgPGJ1YnVsbGVAZGViaWFuLm9yZz4KKworICAqIHBvL2Rwa2cucG90OiBtc2d1bmlxIHRvIHJlbW92ZSBkdXBsaWNhdGUgZW50cmllcworCitUdWUgTm92IDA5IDE1OjIxOjU0IENFU1QgMjAwNCBCYXJ0b3N6IEZlbnNraSBha2EgZkVuSW8gPGZlbmlvQG8yLnBsPgorCisgICogcG8vcGwucG86IHVwZGF0ZWQKKworRnJpIE9jdCAyOSAyMTo1NTo1NCBDRVNUIDIwMDQgQ2FybG9zIExpdSA8Y2FybG9zX2xpdUB5YWhvby5jb20+CisKKyAgKiBwby96aF9DTi5wbzogRml4IGVycm9ycworCitGcmkgT2N0IDI5IDA4OjU4OjU0IENFU1QgMjAwNCBCYXJ0IENvcm5lbGlzIDxjb2JhY29AbGludXguYmU+CisKKyAgKiBwby9ubC5wbzogVXBkYXRlZAorCitGcmkgT2N0IDI5IDA4OjU1OjU0IENFU1QgMjAwNCBDYXJsb3MgTGl1IDxjYXJsb3NfbGl1QHlhaG9vLmNvbT4KKworICAqIHBvL3poX0NOLnBvOiBNZXNzIGNsZWFuZWQKKworRnJpIE9jdCAyOSAwODo1MDowMCBDRVNUIDIwMDQgQ2hyaXN0aWFuIFBlcnJpZXIgPGJ1YnVsbGVAZGViaWFuLm9yZz4KKworICAqIHBvLypwbzogbXNndW5pcSBhbmQgbXNnY2F0IG9uIGFsbCBmaWxlcworCitUaHUgT2N0IDI4IDA5OjM5OjAwIENFU1QgMjAwNCBDaHJpc3RpYW4gUGVycmllciA8YnVidWxsZUBkZWJpYW4ub3JnPgorCisgICogcG8vZHBrZy5wb3Q6IHJlZ2VuZXJhdGVkCisgICogcG8vKnBvOiBzeW5jZWQgd2l0aCBkcGtnLnBvdAorICAqIHBvL2ZyLnBvOiBjb21wbGV0ZSB0aGUgdHJhbnNsYXRpb24KKworVGh1IE9jdCAyOCAxNTo1NToxNCBCU1QgMjAwNCBTY290dCBKYW1lcyBSZW1uYW50IDxzY290dEBuZXRzcGxpdC5jb20+CisKKyAgKiBkcGtnLWRlYi9kcGtnLWRlYi5oOiBBZGQgJy8nIG9udG8gdGhlIGVuZCBvZiB0aGUgQ09NUEFUIHZhbHVlcyBmb3IKKyAgYnppcDIgYW5kIHRhci4KKworV2VkIE9jdCAyNyAxMjoyMjowOCBCU1QgMjAwNCBTY290dCBKYW1lcyBSZW1uYW50IDxzY290dEBuZXRzcGxpdC5jb20+CisKKyAgKiB2ZXJzaW9uLW5yLCBkZWJpYW4vY2hhbmdlbG9nOiBCdW1wIHZlcnNpb24gdG8gMS4xM34uCisKK1dlZCBPY3QgMjcgMTA6MTQ6MjkgQlNUIDIwMDQgU2NvdHQgSmFtZXMgUmVtbmFudCA8c2NvdHRAbmV0c3BsaXQuY29tPgorCisgICogdmVyc2lvbi1uciwgZGViaWFuL2NoYW5nZWxvZzogQnVtcCB2ZXJzaW9uIHRvIDEuMTAuMjV+LgorCitXZWQgT2N0IDI3IDA5OjU4OjI3IEJTVCAyMDA0IFNjb3R0IEphbWVzIFJlbW5hbnQgPHNjb3R0QG5ldHNwbGl0LmNvbT4KKworICAqIGxpYi9jb21wcmVzc2lvbi5jOiBXaGljaCByZXZlYWxlZCBzb21lIGJyb3duLXBhcGVyIGJhZyBpc3N1ZXM6CisgIFJlcGxhY2UgIkJaRklMRSIgd2l0aCAiQlpGSUxFICoiLCAiZmlsZSIgd2l0aCAiYnpmaWxlIgorICBhbmQgImJ6ZG9wZW4iIHRvICJCWjJfYnpkb3BlbiIuCisKK1dlZCBPY3QgMjcgMDk6NDk6MTUgQlNUIDIwMDQgU2NvdHQgSmFtZXMgUmVtbmFudCA8c2NvdHRAbmV0c3BsaXQuY29tPgorCisgICogbGliL2NvbXByZXNzaW9uLmM6IFJlcGxhY2UgVVNFX0JaMiB3aXRoIFVTRV9CWjJMSUIgdG8gbWF0Y2ggY29uZmlndXJlLmluLgorCitUdWUgT2N0IDI2IDE5OjI0OjU0IENFU1QgMjAwNCBIYXZhcmQgS29yc3ZvbGwgPGtvcnN2b2xsQHNrdWxlbGludXgubm8+CisKKyAgKiBwby9ubi5wbzogVXBkYXRlZAorCitUdWUgT2N0IDI2IDE3OjI0OjU0IENFU1QgMjAwNCBDYXJsb3MgTGl1IDxjYXJsb3NfbGl1QHlhaG9vLmNvbT4KKworICAqIHBvL3poX0NOLnBvOiBVcGRhdGVkCisKK1R1ZSBPY3QgMjYgMDY6NTQ6NTQgQ0VTVCAyMDA0IFBldGVyIEthcmxzc29uIDxwZXRlckBzb2Z0d29sdmVzLnBwLnNlPgorCisgICogcG8vc3YucG86IFVwZGF0ZWQKKworVHVlIE9jdCAyNiAwNjo1NDo1NCBDRVNUIDIwMDQgQ0VTVCAyMDA0IFBpYXJyZXMgQmVvYmlkZSBFZ2FuYSA8cGlAYmVvYmlkZS5uZXQ+CisKKyAgKiBwby9ldS5wbzogdXBkYXRlZAorCitUdWUgT2N0IDI2IDA2OjU0OjU0IENFU1QgMjAwNCBNaWd1ZWwgRmlndWVpcmVkbyA8ZWxtaWdAZGViaWFucHQub3JnPgorCisgICogcG8vcHQucG86IFVwZGF0ZWQKKworTW9uIE9jdCAyNSAxODoyNjo1NCBDRVNUIDIwMDQgTWlyb3NsYXYgS3VyZSA8a3VyZW1AdXBjYXNlLmluZi51cG9sLmN6PgorCisgICogcG8vY3MucG86IFVwZGF0ZWQKKworTW9uIE9jdCAyNSAxODoyNjo1NCBDRVNUIDIwMDQgTWljaGFlbCBQaWVmZWwgPHBpZWZlbEBkZWJpYW4ub3JnPgorCisgICogcG8vZGUucG86IHVwZGF0ZWQKKworTW9uIE9jdCAyNSAxODoyNjo1NCBDRVNUIDIwMDQgWXVyaSBLb3psb3YgPHl1cmF5QGlkLnJ1PgorCisgICogcG8vcnUucG86IFVwZGF0ZWQKKworTW9uIE9jdCAyNSAxNTowOTo0MyBDRVNUIDIwMDQgVHJvcnJyIFtIw6ljdG9yIEZlcm7DoW5kZXpdIDx0cm9ycnJAeWFob28uZXM+CisKKyAgKiBwby9nbC5wbzogVXBkYXRlZAorCitNb24gT2N0IDI1IDA4OjAzOjAwIENFU1QgMjAwNCBMZWxlIEdhaWZheCA8bGVsZUBuYXV0aWx1cy5ob21laXAubmV0PgorCisgICogcG8vaXQucG86IFVwZGF0ZWQKKworTW9uIE9jdCAyNSAwNzoxODozNiBDRVNUIDIwMDQgQ2hhbmd3b28gUnl1IDxjd3J5dUBkZWJpYW4ub3JnPgorCisgICogcG8va28ucG86IFVwZGF0ZWQKKworTW9uIE9jdCAyNSAwNzoxODozNiBDRVNUIDIwMDQgS2Vuc2hpIE11dG8gPGttdXRvQHRvcHN0dWRpby5jby5qcD4KKworICAqIHBvL2phLnBvOiBVcGRhdGVkCisKK01vbiBPY3QgMjUgMDc6MTg6MzYgQ0VTVCAyMDA0IENsYXVzIEhpbmRzZ2F1bCA8Y2xhdXNfaEBpbWFnZS5kaz4KKworICAqIHBvL2RhLnBvOiBVcGRhdGVkCisKK01vbiBPY3QgMjUgMDc6MTg6MzYgQ0VTVCAyMDA0IEphdmllciBGZXJuYW5kZXotU2FuZ3Vpbm8gUGVuYSA8amZzQGRhdC5ldHNpdC51cG0uZXM+CisKKyAgKiBwby9lcy5wbzogVXBkYXRlZAorCitTdW4gT2N0IDI0IDIxOjUxOjU1IENFU1QgMjAwNCBKb3JkaSBNYWxsYWNoIDxqb3JkaUBkZWJpYW4ub3JnPgorCisgICogcG8vY2EucG86IFVwZGF0ZWQgQ2F0YWxhbiB0cmFuc2xhdGlvbi4KKworU3VuIE9jdCAyNCAyMDoxNjo0MyBDRVNUIDIwMDQgTGVsZSBHYWlmYXggPGxlbGVAbmF1dGlsdXMuaG9tZWlwLm5ldD4KKworICAqIHBvL2l0LnBvOiBVcGRhdGVkCisKK1N1biBPY3QgMjQgMjA6MDY6NDMgQ0VTVCAyMDA0IFRyb3JyciBbSMOpY3RvciBGZXJuw6FuZGV6XSA8dHJvcnJyQHlhaG9vLmVzPgorCisgICogcG8vZ2wucG86IFVwZGF0ZWQKKworU3VuIE9jdCAyNCAxOToyMDo0MyBDRVNUIDIwMDQgQmFydG9zeiBGZW5za2kgYWthIGZFbklvIDxmZW5pb0BvMi5wbD4KKworICAqIHBvL3BsLnBvOiBVcGRhdGVkCisKK1N1biBPY3QgMjQgMTk6MjA6NDMgQ0VTVCAyMDA0IEFuZHJlIEx1aXMgTG9wZXMgPGFuZHJlbG9wQGRlYmlhbi5vcmc+CisKKyAgKiBwby9wdF9CUi5wbzogVXBkYXRlZAorCitTdW4gT2N0IDI0IDE5OjIwOjQzIENFU1QgMjAwNCBCYXJ0IENvcm5lbGlzIDxjb2JhY29AbGludXguYmU+CisKKyAgKiBwby9ubC5wbzogVXBkYXRlZAorCitTdW4gT2N0IDI0IDE2OjE4OjUyIENFU1QgMjAwNCBDaHJpc3RpYW4gUGVycmllciA8YnVidWxsZUBkZWJpYW4ub3JnPgorCisgICogcG8vZHBrZy5wb3Q6IHJlZ2VuZXJhdGVkCisgICogcG8vKnBvOiBzeW5jZWQgd2l0aCBkcGtnLnBvdAorICAqIHBvL2ZyLnBvOiBjb21wbGV0ZSB0aGUgdHJhbnNsYXRpb24KKworU3VuIE9jdCAyNCAwOTo0MDoyNyBDRVNUIDIwMDQgQ2hyaXN0aWFuIFBlcnJpZXIgPGJ1YnVsbGVAZGViaWFuLm9yZz4KKworICAqIHBvL25sLnBvOiBDb3JyZWN0IG9idmlvdXMgdHlwbyBmcm9tIHRoZSB0cmFuc2xhdG9yCisKK1N1biBPY3QgMjQgMDk6MjE6MTcgQ0VTVCAyMDA0IENocmlzdGlhbiBQZXJyaWVyIDxidWJ1bGxlQGRlYmlhbi5vcmc+CisKKyAgKiBkZWJpYW4vY2hhbmdlbG9nOiBDbG9zZSAqYWxsKiBQb3J0dWd1ZXNlIHRyYW5zbGF0aW9uIGJ1ZyByZXBvcnRzCisKK1N1biBPY3QgMjQgMTI6NTg6MzYgQlNUIDIwMDQgU2NvdHQgSmFtZXMgUmVtbmFudCA8c2NvdHRAbmV0c3BsaXQuY29tPgorCisgICogcG8vUE9URklMRVMuaW46IEFkZCBsaWIvY29tcHJlc3Npb24uYyBoZXJlLgorCitGcmkgSnVuIDE4IDE3OjA0OjQ0IEJTVCAyMDA0IFNjb3R0IEphbWVzIFJlbW5hbnQgPHNjb3R0QG5ldHNwbGl0LmNvbT4KKworICAqIGNvbmZpZ3VyZS5pbjogQWRkIGNoZWNrcyBmb3IgYnoyIGluIGEgc2ltaWxhciBtYW5uZXIgdG8gemxpYi4KKyAgKiBNYWtlZmlsZS5jb25mLmluOiBBZGQgZGVmaW5pdGlvbnMgZm9yIEJaMkxJQiBtYWNyb3MuCisgICogbGliL2NvbXByZXNzaW9uLmM6IE5ldyBmaWxlIHRha2VuIGZyb20gSEVBRCB0aGF0IGltcGxlbWVudHMKKyAgY29tcHJlc3Npb24gYW5kIGRlY29tcHJlc3Npb24gZm9yIGd6aXAsIGJ6aXAyIGFuZCBwYXNzLXRocm91Z2guCisgICogbGliL01ha2VmaWxlLmluOiBDb21waWxlIHRoZSBuZXcgc291cmNlIGZpbGUuCisgICogaW5jbHVkZS9kcGtnLmguaW46IEFkZCBCWklQMiBtYWNybyBleHBhbmRpbmcgdG8gdGhlIG5hbWUgb2YgdGhlCisgIGJ6aXAyIHRvb2wuICBBZGQgY29tcHJlc3Npb25fdHlwZSBlbnVtIGFuZCBoZWFkZXJzIGZvciBmdW5jdGlvbnMgaW4KKyAgY29tcHJlc3Npb24uYworICAqIGRwa2ctZGViL01ha2VmaWxlLmluOiBBbHNvIGxpbmsgc3RhdGljIGJ6aXAyIGxpYnJhcmllcyB0byBzdGF0aWMgZHBrZy1kZWIuCisgICogZHBrZy1kZWIvYnVpbGQuYzogUmVtb3ZlIGludGVybmFsR3ppcCgpIGZ1bmN0aW9uLCByZXBsYWNlIGNhbGxpbmcKKyAgY29kZSB3aXRoIGNhbGwgdG8gbmV3IGNvbXByZXNzX2NhdCgpIGZ1bmN0aW9uLiAgQ2hvb3NlIHRoZSBhcHByb3ByaWF0ZQorICBuYW1lIGZvciB0aGUgZGF0YSBtZW1iZXIgYmFzZWQgb24gY29tcHJlc3NfdHlwZS4KKyAgKiBkcGtnLWRlYi9leHRyYWN0LmM6IFJlbW92ZSBnemlwIGNhbGxpbmcgY29kZSwgcmVwbGFjZSB3aXRoIGNhbGwgdG8KKyAgbmV3IGRlY29tcHJlc3NfY2F0KCkgZnVuY3Rpb24uICBBZGQgY29kZSB0byBkZXRlY3QgY29tcHJlc3Npb24gdHlwZQorICBvZiBkYXRhIG1lbWJlci4KKyAgKiBkcGtnLWRlYi9tYWluLmM6IEFkZCBuZXcgLVogb3B0aW9uIHRvIHNldCBjb21wcmVzc2lvbiB0eXBlLCBzZXQKKyAgZGVmYXVsdCB0byBnemlwLgorICAqIGRwa2ctZGViL2Rwa2ctZGViLmg6IEFkZCBleHRlcm4gZGVmaW5pdGlvbiBvZiBjb21wcmVzc190eXBlIG9wdGlvbiwKKyAgYWRkIG1hY3JvcyB0byBkZWZpbmUgdGhlIGJ6aXAyIGFuZCBwYXNzLXRocm91Z2ggZGF0YSBtZW1iZXIgZmlsZW5hbWVzLgorCitUdWUgT2N0IDE5IDA4OjI4OjQ2IENFU1QgMjAwNCBKYXZpZXIgRmVybsOhbmRlei1TYW5ndWlubyBQZcOxYSA8amZzQGNvbXB1dGVyLm9yZz4KKworICAqIHBvL2VzLnBvOiB1cGRhdGVkIChjb21wbGV0ZSkKKworU3VuIE9jdCAxNyAwODo0MDo0NiBDRVNUIDIwMDQgUGlhcnJlcyBCZW9iaWRlIEVnYW5hIDxwaUBiZW9iaWRlLm5ldD4KKworICAqIHBvL2V1LnBvOiB1cGRhdGVkIChjb21wbGV0ZSkKKworVGh1IE9jdCAxNCAxNzowMToyMSBDRVNUIDIwMDQgTWljaGFlbCBQaWVmZWwgPHBpZWZlbEBkZWJpYW4ub3JnPgorCisgICogcG8vZGUucG86IHVwZGF0ZWQgKG5vdyBjb21wbGV0ZSkKKworV2VkIE9jdCAxMyAxNzowMTozMSBDRVNUIDIwMDQgR2VvcmdlIFBhcGFtaWNoZWxha2lzIDxnZW9yZ2VAc3RlcC5ncj4KKworICAqIHBvL2VsLnBvOiBVcGRhdGVkCisKK1dlZCBPY3QgMTMgMDg6NDU6NTQgQ0VTVCAyMDA0IFBldGVyIEthcmxzc29uIDxwZXRlcmtAZGViaWFuLm9yZz4KKworICAqIG1hbi9zdi9kcGtnLXNwbGl0Ljg6IFVwZGF0ZWQKKyAgKiBtYW4vc3Yvc3RhcnQtc3RvcC1kYWVtb24uODogVXBkYXRlZAorICAqIG1hbi9zdi9kZWItY29udHJvbC41OiBVcGRhdGVkCisgICogbWFuL3N2L2Rwa2cuODogVXBkYXRlZAorICAqIG1hbi9zdi9tZDVzdW0uMTogVXBkYXRlZAorICAqIG1hbi9zdi9kcGtnLWRlYi4xOiBVcGRhdGVkCisgICogbWFuL3N2L2Rwa2ctcXVlcnkuODogVXBkYXRlZAorICAqIG1hbi9zdi9kc2VsZWN0Ljg6IFVwZGF0ZWQKKworVHVlIE9jdCAxMiAyMjoyMjo1NSBDRVNUIDIwMDQgTWlyb3NsYXYgS3VyZSA8a3VyZW1AdXBjYXNlLmluZi51cG9sLmN6PgorCisgICogcG8vY3MucG86IFVwZGF0ZWQgKG5vdyBjb21wbGV0ZSkKKworVHVlIE9jdCAxMiAyMjoyMjo1NSBDRVNUIDIwMDQgUGV0ZXIgS2FybHNzb24gPHBldGVyQHNvZnR3b2x2ZXMucHAuc2U+CisKKyAgKiBwby9zdi5wbzogVXBkYXRlZCAobm93IGNvbXBsZXRlKQorCitUdWUgT2N0IDEyIDA3OjUwOjIxIENFU1QgMjAwNCBQaGlsaXBwZSBCYXRhaWxsZXIgPHBoaWxpcHBlLmJhdGFpbGxlckBmcmVlLmZyPgorCisgICogbWFuL2ZyL2NsZWFudXAtaW5mby44OiB1cGRhdGVkCisgICogbWFuL2ZyL2Rwa2cuODogdXBkYXRlZAorICAqIG1hbi9mci9kcGtnLWRlYi4xOiB1cGRhdGVkCisgICogbWFuL2ZyL2Rwa2ctZGl2ZXJ0Ljg6IHVwZGF0ZWQKKyAgKiBtYW4vZnIvZHBrZy1uYW1lLjE6IHVwZGF0ZWQKKyAgKiBtYW4vZnIvZHBrZy1xdWVyeS44OiB1cGRhdGVkCisgICogbWFuL2ZyL2Rwa2ctc291cmNlLjE6IHVwZGF0ZWQKKyAgKiBtYW4vZnIvZHBrZy1zcGxpdC44OiB1cGRhdGVkCisgICogbWFuL2ZyL2Rwa2ctc3RhdG92ZXJyaWRlLjg6IHVwZGF0ZWQKKyAgKiBtYW4vZnIvaW5zdGFsbC1pbmZvLjg6IHVwZGF0ZWQKKyAgKiBtYW4vZnIvc3RhcnQtc3RvcC1kYWVtb24uODogdXBkYXRlZAorICAqIG1hbi9mci91cGRhdGUtYWx0ZXJuYXRpdmVzLjg6IHVwZGF0ZWQKKworTW9uIE9jdCAxMSAxODoxMTo1NCBDRVNUIDIwMDQgUm9iZXJ0IEx1YmVyZGEgPHJvYmVydEBkZWJpYW4ub3JnPgorCisgICogcG8vcGwucG86IFVwZGF0ZWQKKworTW9uIE9jdCAxMSAxODoxMTo1NCBDRVNUIDIwMDQgTGlvciBLYXBsYW4gPHdlYm1hc3RlckBndWlkZXMuY28uaWw+CisKKyAgKiBwby9oZS5wbzogQWRkZWQKKworTW9uIE9jdCAxMSAxODoxMTo1NCBDRVNUIDIwMDQgUGlhcnJlcyBCZW9iaWRlIEVnYW5hIDxwaUBiZW9iaWRlLm5ldD4KKworICAqIHBvL2V1LnBvOiBBZGRlZAorCitNb24gT2N0IDExIDE4OjExOjU0IENFU1QgMjAwNCBZb25ndGFvIFlhbmcgPHlvbmd0YW8ueWFuZ0B0ZWxpYS5jb20+CisKKyAgKiBwby96aF9DTi5wbzogQWRkZWQKKworTW9uIE9jdCAxMSAxODoxMTo1NCBDRVNUIDIwMDQgTWlndWVsIEZpZ3VlaXJlZG8gPGVsbWlnQGRlYmlhbnB0Lm9yZz4KKworICAqIHBvL3B0LnBvOiBVcGRhdGVkCisKK01vbiBPY3QgMTEgMTg6MTE6NTQgQ0VTVCAyMDA0IFl1cmkgS296bG92IDx5dXJheUBpZC5ydT4KKworICAqIHBvL3J1LnBvOiBVcGRhdGVkCisKK01vbiBPY3QgMTEgMTg6MTE6NTQgQ0VTVCAyMDA0IEtlbnNoaSBNdXRvIDxrbXV0b0BkZWJpYW4ub3JnPgorCisgICogcG8vamEucG86IFVwZGF0ZWQKKworTW9uIE9jdCAxMSAxODoxMTo1NCBDRVNUIDIwMDQgQ2hhbmd3b28gUnl1IDxjd3J5dUBkZWJpYW4ub3JnPgorCisgICogcG8va28ucG86IFVwZGF0ZWQKKworTW9uIE9jdCAxMSAxODoxMTo1NCBDRVNUIDIwMDQgQmFydCBDb3JuZWxpcyA8Y29iYWNvQGxpbnV4LmJlPgorCisgICogcG8vbmwucG86IFVwZGF0ZWQKKworTW9uIE9jdCAxMSAxODoxMTo1NCBDRVNUIDIwMDQgSGF2YXJkIEtvcnN2b2xsIDxrb3Jzdm9sbEBza3VsZWxpbnV4Lm5vPgorCisgICogcG8vbm4ucG86IFVwZGF0ZWQKKworTW9uIE9jdCAxMSAxODoxMTo1NCBDRVNUIDIwMDQgTWlyb3NsYXYgS3VyZSA8a3VyZW1AdXBjYXNlLmluZi51cG9sLmN6PgorCisgICogcG8vY3MucG86IFVwZGF0ZWQKKworTW9uIE9jdCAxMSAxODoxMTo1NCBDRVNUIDIwMDQgQW5kcmUgTHVpcyBMb3BlcyA8YW5kcmVsb3BAZGViaWFuLm9yZz4gCisKKyAgKiBwby9wdF9CUi5wbzogVXBkYXRlZAorCitNb24gT2N0IDExIDE4OjExOjU0IENFU1QgMjAwNCBSdWJlbiBQb3JyYXMgPG5haG9vODJAdGVsZWZvbmljYS5uZXQ+CisKKyAgKiBtYW4vZXMvbWQ1c3VtLjE6IHVwZGF0ZWQKKyAgKiBtYW4vZXMvc3RhcnQtc3RvcC1kYWVtb24uODogdXBkYXRlZAorICAqIG1hbi9lcy9kcGtnLXNjYW5zb3VyY2VzLjE6IHVwZGF0ZWQKKyAgKiBtYW4vZXMvZHBrZy1zY2FucGFja2FnZXMuMTogdXBkYXRlZAorICAqIG1hbi9lcy91cGRhdGUtYWx0ZXJuYXRpdmVzLjg6IHVwZGF0ZWQKKyAgKiBtYW4vZXMvZHBrZy1kaXZlcnQuODogdXBkYXRlZAorICAqIG1hbi9lcy9jbGVhbnVwLWluZm8uODogdXBkYXRlZAorICAqIG1hbi9lcy9kcGtnLWNoZWNrYnVpbGRkZXBzLjE6IHVwZGF0ZWQKKyAgKiBtYW4vZXMvZHBrZy1zcGxpdC44OiB1cGRhdGVkCisgICogbWFuL2VzL2Rwa2ctc3RhdG92ZXJyaWRlLjg6IHVwZGF0ZWQKKyAgKiBtYW4vZXMvZHBrZy44OiB1cGRhdGVkCisgICogbWFuL2VzL2RzZWxlY3QuODogdXBkYXRlZAorICAqIG1hbi9lcy9kcGtnLXNvdXJjZS4xOiB1cGRhdGVkCisgICogbWFuL2VzL2Rwa2ctZGViLjE6IHVwZGF0ZWQKKyAgKiBtYW4vZXMvZHBrZy1uYW1lLjE6IHVwZGF0ZWQKKworTW9uIE9jdCAxMSAxODoxMTo1NCBDRVNUIDIwMDQgQ2hyaXN0aWFuIFBlcnJpZXIgPGJ1YnVsbGVAZGViaWFuLm9yZz4KKworICAqIGNvbmZpZ3VyZS5pbjogQWRkZWQgaGUgdG8gQUxMX0xJTkdVQVMuCisgICogY29uZmlndXJlLmluOiBBZGRlZCBldSB0byBBTExfTElOR1VBUy4KKyAgKiBjb25maWd1cmUuaW46IEFkZGVkIHpoX0NOIHRvIEFMTF9MSU5HVUFTLgorCitNb24gT2N0IDExIDE2OjMzOjQ5IENFU1QgMjAwNCBHZW9yZ2UgUGFwYW1pY2hlbGFraXMgPGdlb3JnZUBzdGVwLmdyPgorCisgICogcG8vZWwucG86IEFkZGVkCisKK01vbiBPY3QgMTEgMTY6MzM6NDkgQ0VTVCAyMDA0IENocmlzdGlhbiBQZXJyaWVyIDxidWJ1bGxlQGRlYmlhbi5vcmc+CisKKyAgKiBjb25maWd1cmUuaW46IEFkZGVkIGVsIHRvIEFMTF9MSU5HVUFTLgorCitNb24gSnVsIDE5IDIwOjE3OjA5IEJTVCAyMDA0IFNjb3R0IEphbWVzIFJlbW5hbnQgPHNjb3R0QG5ldHNwbGl0LmNvbT4KKworICAqIHZlcnNpb24tbnIsIGRlYmlhbi9jaGFuZ2Vsb2c6IEJ1bXAgdmVyc2lvbiB0byAxLjEwLjI0LgorCitTYXQgSnVuIDI2IDE4OjM4OjM0IENFU1QgMjAwNCBEYXZpZCBXZWluZWhhbGwgPHRhb0BkZWJpYW4ub3JnPgorCisgICogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2dlLnNoLCBzY3JpcHRzL2Rwa2ctbmFtZS5zaCwgbWV0aG9kcy9kaXNrLnVwZGF0ZSwKKyAgbWV0aG9kcy9kaXNrLnNldHVwOiBDaGFuZ2Ugbm9uLVBPU0lYIC1hIGFuZCAtbyB0ZXN0IG9wdGlvbnMgdG8gc2hlbGwKKyAgJiYgYW5kIHx8IGZvciBwb3J0YWJpbGl0eS4KKworU2F0IEp1biAyNiAxNjo0MTozMSBDRVNUIDIwMDQgQ2hhbmd3b28gUnl1IDxjd3J5dUBkZWJpYW4ub3JnPgorCisgICogcG8va28ucG86IFVwZGF0ZWQuCisKK1dlZCBKdW4gMjMgMTc6NTc6NDUgQlNUIDIwMDQgQ2hhbmd3b28gUnl1IDxjd3J5dUBkZWJpYW4ub3JnPgorCisgICogcG8va28ucG86IEFkZGVkLgorICAqIGNvbmZpZ3VyZS5pbjogQWRkZWQga28gdG8gQUxMX0xJTkdVQVMuCisKK1R1ZSBKdW4gMjIgMTc6NTA6NTcgQlNUIDIwMDQgQ2hyaXN0aWFuIFBlcnJpZXIgPGJ1YnVsbGVAZGViaWFuLm9yZz4KKworICAqIHBvL2ZyLnBvOiBVcGRhdGVkLgorCitUdWUgSnVuIDIyIDE3OjQ4OjIyIEJTVCAyMDA0IENsYXVzIEhpbmRzZ2F1bCA8Y2xhdXNfaEBpbWFnZS5kaz4KKworICAqIHBvL2RhLnBvOiBVcGRhdGVkLgorCitTYXQgSnVuIDE5IDIzOjExOjM4IEJTVCAyMDA0IFNjb3R0IEphbWVzIFJlbW5hbnQgPHNjb3R0QG5ldHNwbGl0LmNvbT4KKworICAqIGRzZWxlY3QvTWFrZWZpbGUuaW46IFJlbW92ZSBoZWxwbXNncy5oIGZyb20gdGhlIEdFTkZJTEVTIGxpc3Qgc28KKyAgd2UgZG9uJ3Qgd2lwZSBpdCBvbiAibWFrZSBjbGVhbiIgKGl0J3Mgbm90IGdlbmVyYXRlZCBhbnltb3JlKS4KKworRnJpIEp1biAxOCAxMTo0OToyMSBCU1QgMjAwNCBPZ255YW4gS3VsZXYgPG9naUBmbWkudW5pLXNvZmlhLmJnPgorCisgICogdXRpbHMvc3RhcnQtc3RvcC1kYWVtb24uYzogTW92ZWQgcGlkX2lzX3J1bm5pbmcgaW5zaWRlIE9TSFVSRCBzZW50cnksCisgIHByb3ZpZGVkIEh1cmQgdmVyc2lvbi4gIFJlbW92ZWQgZGVwZW5kZW5jeSBvbiBDOTkgY29kZSBhbmQgcmVwbGFjZWQKKyAgY29uc3RydWN0b3Igd2l0aCBhbiBpbml0IGZ1bmN0aW9uLgorCitGcmkgSnVuIDE4IDA2OjM0OjQzIEJTVCAyMDA0IFNjb3R0IEphbWVzIFJlbW5hbnQgPHNjb3R0QG5ldHNwbGl0LmNvbT4KKworICAqIGFyY2h0YWJsZTogUmVxdWVzdGVkIHRoZSB0ZWNobmljYWwgY29tbWl0dGVlIHRvIG1ha2UgdGhlIG1lbnRpb25lZAorICBkZWNpc2lvbiAtLSB3ZSdyZSBnb2luZyB3aXRoIGFtZDY0ICh0aGF0J2xsIHBsZWFzZSBteSBib3NzIDotKQorICAqIHNjcmlwdHMvZHBrZy1hcmNoaXRlY3R1cmUucGw6IExpa2V3aXNlLgorCitUdWUgSnVuIDE1IDE5OjE5OjM2IEJTVCAyMDA0IEJhcnRvc3ogRmVuc2tpIGFrYSBmRW5JbyA8ZmVuaW9AbzIucGw+CisKKyAgKiBwby9wbC5wbzogVXBkYXRlZC4KKworTW9uIEp1biAxNCAwOTozNTozMCBCU1QgMjAwNCBSdWJlbiBQb3JyYXMgPG5haG9vODJAdGVsZWZvbmljYS5uZXQ+CisKKyAgKiBtYW4vZXMvZHBrZy1zY2FucGFja2FnZXMuMSwgbWFuL2VzL3N0YXJ0LXN0b3AtZGFlbW9uLjgsIAorICBtYW4vZXMvZHBrZy1zY2Fuc291cmNlcy4xLCBtYW4vZXMvZHBrZy44LCBtYW4vZXMvZHBrZy1jaGVja2J1aWxkZGVwcy4xLCAKKyAgbWFuL2VzL2RzZWxlY3QuOCwgbWFuL2VzL2Rwa2ctZGViLjE6IFVwZGF0ZWQgYWdhaW4gZnJvbSB0aGUgQlRTLCBmb3IKKyAgc29tZSByZWFzb24gdGhlIHByZXZpb3VzIHVwZGF0ZSBsb3N0IHRoZSBmb3JlaWduIGNoYXJhY3RlcnMuCisKK01vbiBKdW4gMTQgMDk6MTI6MDggQlNUIDIwMDQgU2NvdHQgSmFtZXMgUmVtbmFudCA8c2NvdHRAbmV0c3BsaXQuY29tPgorCisgICogc2NyaXB0cy9kcGtnLWRpdmVydC44OiBDb3JyZWN0IHR5cG8gKGlicmFyeSAtPiBsaWJyYXJ5KS4KKworTW9uIEp1biAxNCAwODo1ODoyNyBCU1QgMjAwNCBMZWxlIEdhaWZheCA8bGVsZUBuYXV0aWx1cy5ob21laXAubmV0PgorCisgICogcG8vaXQucG86IFVwZGF0ZWQuCisKK01vbiBKdW4gNyAxNzo0NzoxMyBDRVNUIDIwMDQgSm9yZGkgTWFsbGFjaCA8am9yZGlAZGViaWFuLm9yZz4KKworICAqIHBvL2NhLnBvOiBVcGRhdGUgQ2F0YWxhbiB0cmFuc2xhdGlvbi4KKworVGh1IEp1biAzIDEyOjAzOjQ5IEJSVCAyMDA0IFNjb3R0IEphbWVzIFJlbW5hbnQgPHNjb3R0QG5ldHNwbGl0LmNvbT4KKworICAqIGFyY2h0YWJsZSwgc2NyaXB0cy9kcGtnLWFyY2hpdGVjdHVyZS5wbDogUmVtb3ZlIHN1cHBvcnQgZm9yIGFtZDY0L3g4Ni02NCwKKyAgdGhlIHBvcnRlcnMgY2xlYXJseSBjYW4ndCBtYWtlIHVwIHRoZWlyIG1pbmQgd2hhdCB0aGV5IHdhbnQuCisKK1dlZCBKdW4gMiAxNTozMjo0NyBCUlQgMjAwNCBTY290dCBKYW1lcyBSZW1uYW50IDxzY290dEBuZXRzcGxpdC5jb20+CisKKyAgKiB2ZXJzaW9uLW5yLCBkZWJpYW4vY2hhbmdlbG9nOiBCdW1wIHZlcnNpb24gdG8gMS4xMC4yMy4KKworVHVlIEp1biAxIDE3OjQyOjU4IEJSVCAyMDA0IFNjb3R0IEphbWVzIFJlbW5hbnQgPHNjb3R0QG5ldHNwbGl0LmNvbT4KKworICAqIHNjcmlwdHMvTWFrZWZpbGUuaW46IE1vdmUgZHBrZy1zY2FucGFja2FnZXMgYW5kIGRwa2ctc2NhbnNvdXJjZXMKKyAgbWFucGFnZXMgdG8gc2VjdGlvbiAxLgorICAqIHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMuODogUmVuYW1lZCB0byBkcGtnLXNjYW5wYWNrYWdlcy4xLCBhZGp1c3RlZAorICByZWZlcmVuY2UgdG8gZHBrZy1zY2Fuc291cmNlcy4KKyAgKiBzY3JpcHRzL2Rwa2ctc2NhbnNvdXJjZXMucGw6IEFkanVzdGVkIHJlZmVyZW5jZSB0byBkcGtnLXNjYW5wYWNrYWdlcy4KKyAgKiBkc2VsZWN0L2RzZWxlY3QuODogQWRqdXN0ZWQgcmVmZXJlbmNlIHRvIGRwa2ctc2NhbnBhY2thZ2VzLgorCisgICogbWFuL2VzL01ha2VmaWxlLmluOiBNb3ZlIGRwa2ctc2NhbnBhY2thZ2VzIGFuZCBkcGtnLXNjYW5zb3VyY2VzCisgIG1hbnBhZ2VzIHRvIHNlY3Rpb24gMS4KKyAgKiBtYW4vZXMvZHBrZy1zY2FucGFja2FnZXMuODogUmVuYW1lZCB0byBkcGtnLXNjYW5wYWNrYWdlcy4xLCBhZGp1c3RlZAorICByZWZlcmVuY2UgdG8gZHBrZy1zY2Fuc291cmNlcy4KKyAgKiBtYW4vZXMvZHBrZy1zY2Fuc291cmNlcy44OiBSZW5hbWVkIHRvIGRwa2ctc2NhbnNvdXJjZXMuMSwKKworICAqIG1hbi9mci9NYWtlZmlsZS5pbjogTW92ZSBkcGtnLXNjYW5wYWNrYWdlcyBhbmQgZHBrZy1zY2Fuc291cmNlcworICBtYW5wYWdlcyB0byBzZWN0aW9uIDEuCisgICogbWFuL2ZyL2Rwa2ctc2NhbnBhY2thZ2VzLjg6IFJlbmFtZWQgdG8gZHBrZy1zY2FucGFja2FnZXMuMSwgYWRqdXN0ZWQKKyAgcmVmZXJlbmNlIHRvIGRwa2ctc2NhbnNvdXJjZXMuCisgICogbWFuL2ZyL2Rwa2ctc2NhbnNvdXJjZXMuODogUmVuYW1lZCB0byBkcGtnLXNjYW5zb3VyY2VzLjEKKworICAqIG1hbi9qYS9NYWtlZmlsZS5pbjogTW92ZSBkcGtnLXNjYW5wYWNrYWdlcyBhbmQgZHBrZy1zY2Fuc291cmNlcworICBtYW5wYWdlcyB0byBzZWN0aW9uIDEuCisgICogbWFuL2phL2Rwa2ctc2NhbnBhY2thZ2VzLjg6IFJlbmFtZWQgdG8gZHBrZy1zY2FucGFja2FnZXMuMSwgYWRqdXN0ZWQKKyAgcmVmZW5jZSB0byBkcGtnLXNjYW5zb3VyY2VzLgorICAqIG1hbi9qYS9kcGtnLXNjYW5zb3VyY2VzLjg6IFJlbmFtZWQgdG8gZHBrZy1zY2Fuc291cmNlcy4xLCBhZGp1c3RlZAorICByZWZlcmVuY2UgdG8gZHBrZy1zY2FucGFja2FnZXMuCisgICogbWFuL2phL2RzZWxlY3QuODogQWRqdXN0ZWQgcmVmZXJlbmNlcyB0byBkcGtnLXNjYW5wYWNrYWdlcy4KKworICAqIG1hbi9wdF9CUi9kc2VsZWN0Ljg6IEFkanVzdGVkIHJlZmVyZW5jZSB0byBkcGtnLXNjYW5wYWNrYWdlcy4KKyAgKiBtYW4vc3YvLmNoZWNrLnBsOiBBZGp1c3RlZCByZWZlcmVuY2UgdG8gZHBrZy1zY2FucGFja2FnZXMuCisgICogbWFuL3N2L2RzZWxlY3QuODogQWRqdXN0ZWQgcmVmZXJlbmNlIHRvIGRwa2ctc2NhbnBhY2thZ2VzLgorCitUdWUgSnVuIDEgMTc6Mjc6NTAgQlJUIDIwMDQgU2NvdHQgSmFtZXMgUmVtbmFudCA8c2NvdHRAbmV0c3BsaXQuY29tPgorCisgICogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDogR3VhcmQgY2hvd24gY2FsbCB3aXRoIGEgY2hlY2sgdGhhdCB3ZSdyZQorICBydW5uaW5nIGFzIHJvb3QsIGlmIHdlJ3JlIG5vdCwgaXQncyBub3QgbmVjZXNzYXJ5LgorCitUdWUgSnVuIDEgMTc6MjM6MzAgQlJUIDIwMDQgU2NvdHQgSmFtZXMgUmVtbmFudCA8c2NvdHRAbmV0c3BsaXQuY29tPgorCisgICogc2NyaXB0L2Rwa2ctc291cmNlLjE6IERvY3VtZW50ZWQgZHBrZzpWZXJzaW9uIGFuZCBkcGtnOlVwc3RyZWFtVmVyc2lvbgorICBzdWJzdHZhcnMuCisKK1R1ZSBKdW4gMSAxNDo1MjoyNyBCUlQgMjAwNCBLSVNFIEhpcm9zaGkgPGtpc2VAZnV5dW5la28uanA+CisKKyAgKiBtYW4vamEvZHBrZy1jaGVja2J1aWxkZGVwcy4xOiBVcGRhdGVkLgorICAqIG1hbi9qYS9kcGtnLWRpdmVydC44OiBVcGRhdGVkLgorCitUdWUgSnVuIDEgMTQ6NDU6NDcgQlJUIDIwMDQgTmlrb2xhaSBQcm9rb3NjaGVua28gPG5pa29sYWlAcHJva29zY2hlbmtvLmRlPgorCisgICogcG8vcnUucG86IFVwZGF0ZWQuCisKK1R1ZSBKdW4gMSAxNDo0MTozMCBCUlQgMjAwNCBIZWxnZSBLcmV1dHptYW5uIDxrcmV1dHptQGl0cC51bmktaGFubm92ZXIuZGU+CisKKyAgKiBtYW4vZGUvc3RhcnQtc3RvcC1kYWVtb24uODogTmV3IHRyYW5zbGF0aW9uLgorICAqIG1hbi9kZS9NYWtlZmlsZS5pbjogQWRkZWQgbmV3IG1hbnBhZ2UuCisKK1R1ZSBKdW4gMSAxNDozNzo1MiBCUlQgMjAwNCBSdWJlbiBQb3JyYXMgPG5haG9vODJAdGVsZWZvbmljYS5uZXQ+CisKKyAgKiBtYW4vZXMvZHBrZy1kaXZlcnQuODogVXBkYXRlZC4KKworVHVlIEp1biAxIDEzOjUzOjI5IEJSVCAyMDA0IExlbGUgR2FpZmF4IDxsZWxlQG5hdXRpbHVzLmhvbWVpcC5uZXQ+CisKKyAgKiBwby9pdC5wbzogVXBkYXRlZC4KKworTW9uIE1heSAzMSAyMDo0NDoyMSBCUlQgMjAwNCBTY290dCBKYW1lcyBSZW1uYW50IDxzY290dEBuZXRzcGxpdC5jb20+CisKKyAgKiBhcmNodGFibGU6IENoYW5nZSBhbWQ2NCB0byB4ODYtNjQgb3IgeDg2XzY0IHRvIG1hdGNoIHRoZSBHTlUgc3RyaW5ncworICB1bnRpbCBzb21lb25lIGJldHRlciB0aGFuIG1lIG1ha2VzIGEgcmVhbCBkZWNpc2lvbiBhYm91dCB0aGlzLgorICAqIHNjcmlwdHMvZHBrZy1hcmNoaXRlY3R1cmUucGw6IExpa2V3aXNlLgorCitNb24gTWF5IDMxIDEyOjQ4OjM1IEJSVCAyMDA0IE1pY2hhbCBDaWhhciA8bWljaGFsQGNpaGFyLmNvbT4KKworICAqIGRwa2ctZGViL2V4dHJhY3QuYzogU3dhcCAlemkgYW5kICVsZCBpbiBwcmludGYgZXhwcmVzc2lvbi4KKyAgKiBzcGxpdC9pbmZvLmM6IENvcnJlY3QgJXppIGFuZCAlbHUgaW4gcHJpbnRmIGV4cHJlc3Npb24uCisgICogc3BsaXQvbWFpbi5jOiBJbmNsdWRlIG1pc3Npbmcgc3lzL3R5cGVzLmggYW5kIHN5cy9zdGF0LmggaGVhZGVycy4KKworU3VuIE1heSAzMCAxOTo1MTo1MiBCUlQgMjAwNCBSb2JlcnQgTWlsbGFuIDx6ZXJhdHVsMkB3YW5hZG9vLmVzPgorCisgICogYXJjaHRhYmxlOiBDaGFuZ2UgaTM4Ni1rZnJlZWJzZC1nbnUgdG8ga2ZyZWVic2QtaTM4NiBhbmQgYWRkCisgIGkzODYta25ldGJzZC1nbnUuCisgICogc2NyaXB0cy9kcGtnLWFyY2h0YWJsZS5wbDogUmV0dXJuIGkzODYtZnJlZWJzZCBmb3IgZnJlZWJzZC1pMzg2IGFuZAorICBpMzg2LWtmcmVlYnNkLWdudSBmb3Iga2ZyZWVic2QtaTM4NiBpbnN0ZWFkLiAgQWRkIGtuZXRic2QtaTM4Ni4KKyAgKiBjb25maWd1cmUuaW46IElkZW50aWZ5IGtuZXRic2QtZ251LgorCitGcmkgTWF5IDI4IDE4OjQ1OjI2IEJSVCAyMDA0IFN0ZWluYXIgSC4gR3VuZGVyc29uIDxzZXNzZUBkZXNzdmVycmUuc2FtZnVuZGV0Lm5vPgorCisgICogbWFpbi9kZXBjb24uYzogQ29sb3VyIHBhY2thZ2VzIGFzIHdlIGNoZWNrIHRoZW0gZm9yIGJyZWFrIGN5Y2xlcyB0bworICByZWR1Y2UgdGhlIGFtb3VudCBvZiByZWN1cnNpb24gcmVxdWlyZWQgdG8gYnJlYWsgYSBjeWNsZS4KKyAgKiBpbmNsdWRlL2Rwa2ctZGViLmgsIGxpYi9kYXRhYmFzZS5jOiBBZGQgY29sb3VyIHRvIHRoZSBwYWNrYWdlIHN0cnVjdHVyZS4KKyAgKiBtYWluL21haW4uaCwgbWFpbi9jb25maWd1cmUuYywgbWFpbi9yZW1vdmUuYzogUmVtb3ZlIHNlY29uZAorICBhcmd1bWVudCBmcm9tIGZpbmRicmVha2N5Y2xlKCkgZnVuY3Rpb24uCisKK1dlZCBNYXkgMjYgMjM6MDU6MDEgQlJUIDIwMDQgT2dueWFuIEt1bGV2IDxvZ2lAZm1pLnVuaS1zb2ZpYS5iZz4KKworICAqIHV0aWxzL3N0YXJ0LXN0b3AtZGFlbW9uLmM6IE9uIGh1cmQsIHByb2Nfc3RhdF9zZXRfZmxhZ3MgbWF5IHJldHVybgorICBOVUxMIGFzIEh1cmQgY2FuIGhhdmUgcHJvY2Vzc2VzIHdpdGggbm8gdWlkLCByZXBsYWNlIGloYXNoX2l0ZXJhdGUKKyAgd2l0aCBIVVJEX0lIQVNIX0lURVJBVEUuCisKK1NhdCBNYXkgMjIgMTU6Mjg6MzMgQ0VTVCAyMDA0ICBUb2xsZWYgRm9nIEhlZW4gIDx0ZmhlZW5AZGViaWFuLm9yZz4KKworICAqIHV0aWxzL21kNXN1bS4xOiBzL2FzdGVyaXgvYXN0ZXJpc2svLiAgVGhhbmtzIHRvIE1hdHQgWmltbWVybWFubiBmb3IKKyAgbm90aWNpbmcgdGhpcy4KKworV2VkIE1heSAxMiAyMzoyNToxNiBDRVNUIDIwMDQgIFRvbGxlZiBGb2cgSGVlbiAgPHRmaGVlbkBkZWJpYW4ub3JnPgorCisgICogbWFpbi9wYWNrYWdlcy5jOiBBcHBseSBwYXRjaCBmcm9tIERhbmllbCBLb2JyYXMgdG8gZGlzYXBwZWFyIGVtcHR5CisgIHBhY2thZ2VzIHRoYXQgYXJlIHJlcGxhY2VkIGluIHRoZSBzYW1lIHJ1bi4KKworRnJpIE1heSA3IDA0OjQ2OjAxIEJTVCAyMDA0IFNjb3R0IEphbWVzIFJlbW5hbnQgPHNjb3R0QG5ldHNwbGl0LmNvbT4KKworICAqIGRvYy9NYWtlZmlsZS5pbjogRW5zdXJlIHRoYXQgJChkb2NkaXIpIGV4aXN0cyBiZWZvcmUgYXR0ZW1wdGluZworICB0byBpbnN0YWxsIHRoZSBDaGFuZ2VMb2cgdGhlcmUuCisKK0ZyaSBNYXkgNyAwMToyMTo0OSBCU1QgMjAwNCBTY290dCBKYW1lcyBSZW1uYW50IDxzY290dEBuZXRzcGxpdC5jb20+CisKKyAgKiBkc2VsZWN0L3BrZ2luZm8uY2M6IFJlcGxhY2UgJmMuIHdpdGggdGhlIHNsaWdodGx5IGNsZWFyZXIgZXRjLgorCisgICogbWFpbi9kcGtnLjg6IFVwZGF0ZSBmcm9tIHNnbWwsIGRvY3VtZW50IC0tZm9yY2UtYmFkLXZlcmlmeS4KKyAgKiBtYWluL2Rwa2ctcXVlcnksODogQ29ycmVjdCAtLWxpc3QgZG9jdW1lbnRhdGlvbiwgd2l0aG91dCBwYXR0ZXJuIGl0CisgIHNlYXJjaGVzIHN0YXR1cyBub3QgYXZhaWxhYmxlLgorICAqIHNjcmlwdHMvZHBrZy1kaXZlcnQuODogUmVtb3ZlIG9ic29sZXRlIHJlZmVyZW5jZSB0byB0aGUgRGViaWFuIFBhY2thZ2luZworICBNYW51YWwuCisgICogc2NyaXB0cy9kcGtnLXNvdXJjZS4xOiBSYXRoZXIgdGhhbiBrZWVwaW5nIGRwa2ctc291cmNlKDEpIGFsd2F5cyB1cCB0bworICBkYXRlIHdpdGggdGhlIC1pIG9wdGlvbiwgZG9jdW1lbnQgdGhlIGludGVudCBvZiB0aGUgZGVmYXVsdC4KKyAgKiBzY3JpcHRzL2Rwa2ctc3RhdG92ZXJyaWRlLjg6IENvcnJlY3QgdHlwbyBhbmQgZG9jdW1lbnRhdGlvbiBvZiAtLXVwZGF0ZS4KKyAgKiBzY3JpcHRzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuODogQ29ycmVjdCBkb2N1bWVudGF0aW9uIG9mIC0taW5zdGFsbAorICBhbmQgLS1yZW1vdmUgYWN0aW9ucy4KKyAgKiBtYW4vZW4vZHBrZy44LnNnbWw6IEFkZCBtaXNzaW5nIDwvcGFyYT4gZnJvbSBsYXN0IGNvbW1pdC4KKyAgKiB1dGlscy9zdGFydC1zdG9wLWRhZW1vbi5jOiBDb3JyZWN0IHR5cG8uCisgICogdXRpbHMvc3RhcnQtc3RvcC1kYWVtb24uODogQ29ycmVjdCAtLXBpZGZpbGUgZG9jdW1lbnRhdGlvbiBhbmQgbWVudGlvbgorICB3aGF0IGhhcHBlbnMgaWYgeW91IGRvbid0IHN1cHBseSBpdDsgZG9jdW1lbnQgdGhhdCBpdCB3aWxsIGNoZGlyKCIvIikKKyAgdW5sZXNzIC1kIGlzIHNwZWNpZmllZC4KKworICAqIGRwa2ctZGViL2Rwa2ctZGViLjEsIG1haW4vZHBrZy44LCBtYWluL2Rwa2ctcXVlcnkuOCwgc2NyaXB0cy9jbGVhbnVwLWluZm8uOCwKKyAgc2NyaXB0cy9kcGtnLWNoZWNrYnVpbGRkZXBzLjEsIHNjcmlwdHMvZHBrZy1kaXZlcnQuOCwgc2NyaXB0cy9kcGtnLW5hbWUuMSwKKyAgc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy44LCBzY3JpcHRzL2Rwa2ctc291cmNlLjEsCisgIHNjcmlwdHMvZHBrZy1zdGF0b3ZlcnJpZGUuOCwgc2NyaXB0cy9pbnN0YWxsLWluZm8uOCwKKyAgc2NyaXB0cy91cGRhdGUtYWx0ZXJuYXRpdmVzLjgsIHNwbGl0L2Rwa2ctc3BsaXQuOCwgdXRpbHMvbWQ1c3VtLjEsCisgIHV0aWxzL3N0YXJ0LXN0b3AtZGFlbW9uLjg6IENvcnJlY3QgbWFucGFnZSBoeXBoZW5hdGlvbiBmb3IgdGhvc2UgaW4gYQorICBVVEYtOCBsb2NhbGUuCisKK0ZyaSBNYXkgNyAwMToxMzozNiBCU1QgMjAwNCBTY290dCBKYW1lcyBSZW1uYW50IDxzY290dEBuZXRzcGxpdC5jb20+CisKKyAgKiBtYW4vZW4vZHBrZy44LnNnbWw6IEFkZCBhIG5ldyBBZGRpdGlvbmFsIEZ1bmN0aW9uYWxpdHkgc2VjdGlvbiBhdCB0aGUKKyAgYm90dG9tIHdoZXJlIHdlIGNhbiByZWZlciByZWFkZXJzIHRvIG90aGVyIHBhY2thZ2VzIHRoYXQgcHJvdmlkZSB0aGUKKyAgZnVuY3Rpb25hbGl0eSB0aGV5IG1heSBiZSBsb29raW5nIGZvci4gIFN1Z2dlc3QgYXB0aXR1ZGUgYW5kIGRlYnN1bXMuCisKK0ZyaSBNYXkgNyAwMDo1NTozOSBCU1QgMjAwNCBTY290dCBKYW1lcyBSZW1uYW50IDxzY290dEBuZXRzcGxpdC5jb20+CisKKyAgKiBtYW4vZW4vZHBrZy44LnNnbWw6IERvY3VtZW50IGRzZWxlY3QgdXBkYXRlIGFsb25nc2lkZSAtLXVwZGF0ZS1hdmFpbC4KKworRnJpIE1heSA3IDAwOjQ3OjM5IEJTVCAyMDA0IEdlb2ZmIFJpY2hhcmRzIDxxZWZAcm9zaWVzLWR1bXBsaW5ncy5jby51az4KKworICAqIHNjcmlwdHMvZHBrZy1zb3VyY2UuMTogU3VnZ2VzdCAnZmFrZXJvb3QnIGZvciB0aGUgZHBrZy1zb3VyY2UgLXIgY29tbWFuZC4KKworRnJpIE1heSA3IDAwOjQyOjQ0IEJTVCAyMDA0IFNjb3R0IEphbWVzIFJlbW5hbnQgPHNjb3R0QG5ldHNwbGl0LmNvbT4KKworICAqIG1haW4vbWFpbi5jOiBTdWdnZXN0ICdhcHRpdHVkZScgYXMgd2VsbCBhcyAnZHNlbGVjdCcgbm93IHRoYXQKKyAgZC1pIGluc3RhbGxzIGl0LgorCitGcmkgTWF5IDcgMDA6Mzk6MDEgQlNUIDIwMDQgQ2hyaXN0aWFuIFBlcnJpZXIgPGJ1YnVsbGVAZGViaWFuLm9yZz4KKworICAqIHBvL2ZyLnBvOiBVcGRhdGVkIEZyZW5jaCB0cmFuc2xhdGlvbi4KKworRnJpIE1heSA3IDAwOjA0OjI4IEJTVCAyMDA0IFNjb3R0IEphbWVzIFJlbW5hbnQgPHNjb3R0QG5ldHNwbGl0LmNvbT4KKworICAqIGxpYi9wYXJzZWhlbHAuYyzCoHNjcmlwdHMvZHBrZy1zb3VyY2UucGwsIHNjcmlwdHMvY2wtZGViaWFuLnBsOiBSZW1vdmUKKyAgcmVzdHJpY3Rpb24gdGhhdCBwYWNrYWdlIG5hbWVzIGJlIGF0IGxlYXN0IHR3byBjaGFyYWN0ZXJzIGxvbmcuCisKK1RodSBNYXkgNiAyMzo1Nzo1MiBCU1QgMjAwNCBBbmRyZXcgU2h1Z2cgPGFuZHJld0BuZWVwLmNvbS5hdT4KKworICAqIHV0aWxzL21kNXN1bS5jOiBBZGQgc3VwcG9ydCBmb3IgRE9TIGxpbmUtZW5kaW5ncyAoXHJcbikuCisKK1RodSBNYXkgNiAyMzo1MjoyOCBCU1QgMjAwNCBEYW5pZWwgS29icmFzIDxrb2JyYXNAZGViaWFuLm9yZz4KKworICAqIGFyY2h0YWJsZTogQWRkIGlhNjQtdW5rbm93bi1saW51eC1nbnUuCisKK1RodSBNYXkgNiAyMzo1MDoxNyBCU1QgMjAwNCBEYW5pZWwgS29icmFzIDxrb2JyYXNAZGViaWFuLm9yZz4KKworICAqIG1haW4vZW5xdWlyeS5jOiBSZW1vdmUgZGVyZWZlcmVuY2Ugb2YgdW5pdGlhbGlzZWQgYW5kIHVudXNlZCBwb2ludGVyCisgIHZhcmlhYmxlLCBmaXhpbmcgc2VnZmF1bHQgb24gd2hlbiAiZ2NjIC1kdW1wbWFjaGluZSIgcmV0dXJucyBhCisgIG5vbi1tYXRjaGluZyB0cmlwbGV0LgorCitUaHUgTWF5IDYgMjM6NDQ6NTUgQlNUIDIwMDQgQ29saW4gV2F0c29uIDxjandhdHNvbkBkZWJpYW4ub3JnPgorCisgICogZHNlbGVjdC9oZWxwbXNncy5jYzogUHJlc3NpbmcgJ24nIHJlcGVhdHMgdGhlIGxhc3Qgc2VhcmNoLCBub3QKKyAgbW92ZXMgZG93bjsgcHJlc3NpbmcgJ3AnIGRvZXMgbm90aGluZy4KKworVGh1IE1heSA2IDIzOjM5OjU5IEJTVCAyMDA0IEhlbGdlIEtyZXV0em1hbm4gPGtyZXV0em1AaXRwLnVuaS1oYW5ub3Zlci5kZT4KKworICAqIG1hbi9kZS9NYWtlZmlsZS5pbjogSW5zdGFsbCB1cGRhdGUtYWx0ZXJuYXRpdmVzLjgKKyAgKiBtYW4vZGUvdXBkYXRlLWFsdGVybmF0aXZlcy44OiBUcmFuc2xhdGVkIGludG8gR2VybWFuLgorCitUaHUgTWF5IDYgMjM6MjM6MTAgQlNUIDIwMDQgU2NvdHQgSmFtZXMgUmVtbmFudCA8c2NvdHRAbmV0c3BsaXQuY29tPgorCisgICogdXRpbHMvbWQ1c3VtLjEsIG1hbi9lcy9tZDVzdW0uMSwgbWFuL2RlL21kNXN1bS4xLCBtZW4vamEvbWQ1c3VtLjE6CisgIENvcnJlY3QgImV0IGFsIiB0byAiZXQgYWwuIgorICAqIG1haW4vbWFpbi5jLCBtYW4vZW4vZHBrZy44LnNnbWw6IENvcnJlY3QgZGVzY3JpcHRpb24gb2YKKyAgLS1jb21wYXJlLXZlcnNpb25zIGNvbW1hbmQgdG8gZGVzY3JpYmUgdmVyc2lvbnMgYXMgImVtcHR5IiByYXRoZXIKKyAgdGhhbiAibWlzc2luZyIgb3IgIm5vIHZlcnNpb24iIGFzICIiIGhhcyB0byBiZSBwYXNzZWQuCisgICogbWFuL2VuL2Rwa2cuOC5zZ21sOiBBZGQgZHBrZy1yZWNvbmZpZ3VyZSg4KSB0byBTRUUgQUxTTyBzZWN0aW9uLgorICAqIHV0aWxzL3N0YXJ0LXN0b3AtZGFlbW9uLjg6IE1vdmUgZG9jdW1lbnRhdGlvbiBvZiAtLXJldHJ5IHRvIHRoZQorICBwYXJhZ3JhcGggYWJvdXQgLS1zdG9wIHdoZXJlIGl0IGJlbG9uZ3MuCisgICogc2NyaXB0cy91cGRhdGUtYWx0ZXJuYXRpdmVzLjg6IFJlbW92ZSBzdHJhbmdlICZxdW90OyB1c2FnZSBhbmQKKyAgcmVwbGFjZSB3aXRoIGFwcHJvcHJpYXRlIC5CUi4KKworU3VuIE1heSAgMiAxMDoyMjoyNSBDRVNUIDIwMDQgVG9sbGVmIEZvZyBIZWVuIDx0ZmhlZW5AZGViaWFuLm9yZz4KKworICAqIHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6IEdpdmUgcHJvcGVyIGNhc2UgZm9yIE9yaWdpbiBhbmQKKyAgICBCdWdzLgorCitTdW4gTWF5ICAyIDEwOjA0OjI1IENFU1QgMjAwNCBUb2xsZWYgRm9nIEhlZW4gPHRmaGVlbkBkZWJpYW4ub3JnPgorCisgICogc2NyaXB0cy9jb250cm9sbGliLnBsOiBGaXggdW5rbm93bigpIHNvIGl0IGFjdHVhbGx5IG1hbmFnZXMgdG8gcGljaworICAgIG91dCB0aGUgY29ycmVjdCBmaWVsZCBuYW1lLgorCitGcmkgQXByIDMwIDExOjIwOjEzIENFU1QgMjAwNCBKb3JkaSBNYWxsYWNoIDxqb3JkaUBkZWJpYW4ub3JnCisKKyAgKiBwby9jYS5wbzogVXBkYXRlIENhdGFsYW4gdHJhbnNsYXRpb24uCisKK1R1ZSBBcHIgMjcgMjE6NDk6MjUgQlNUIDIwMDQgUnViZW4gUG9ycmFzIDxuYWhvbzgyQHRlbGVmb25pY2EubmV0PgorCisgICogbWFuL2VzL2Rwa2ctc2NhbnNvdXJjZXMuODogQWRkZWQgU3BhbmlzaCBtYW5wYWdlLgorICAqIG1hbi9lcy9NYWtlZmlsZS5pbjogSW5zdGFsbCBpdC4KKworVHVlIEFwciAyNyAxOTo0NzozNyBCU1QgMjAwNCBTY290dCBKYW1lcyBSZW1uYW50IDxzY290dEBuZXRzcGxpdC5jb20+CisKKyAgKiBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLnBsIChyZXdyaXRlX2dudSk6IEFkZCBhIG5ldyByZWdleHAgZm9yCisgIHBhcnNpbmcgaTM4Ni1nbnUgc3R5bGUgdHJpcGxldHMgb24gdGhlIEh1cmQuCisKK1R1ZSBBcHIgMjcgMTk6MjM6MDEgQlNUIDIwMDQgU2NvdHQgSmFtZXMgUmVtbmFudCA8c2NvdHRAbmV0c3BsaXQuY29tPgorCisgICogbWFpbi9kcGtnLjg6IENvcnJlY3QgcmVmZXJlbmNlIHRvIG5vbi1leGlzdGVudCAtLWZvcmNlLXJlaW5zdHJlcQorICBvcHRpb24gdG8gLS1mb3JjZS1yZW1vdmUtcmVpbnN0cmVxLgorCitUdWUgQXByIDI3IDE5OjAxOjI4IEJTVCAyMDA0IFJ1YmVuIFBvcnJhcyA8bmFob284MkB0ZWxlZm9uaWNhLm5ldD4KKworICAqIG1hbi9lcy9zdGFydC1zdG9wLWRhZW1vbi44LCBtYW4vZXMvZHNlbGVjdC44LCBtYW4vZXMvZHBrZy44LAorICBtYW4vZXMvZHBrZy1jaGVja2J1aWxkZGVwcy44LCBtYW4vZXMvZHBrZy1kZWIuMSwKKyAgbWFuL2VzL2Rwa2ctc2NhbnBhY2thZ2VzLjg6IFVwZGF0ZWQgU3BhbmlzaCBtYW5wYWdlcy4KKworTW9uIEFwciAyNiAyMDoyODo1OCBDRVNUIDIwMDQgVG9sbGVmIEZvZyBIZWVuIDx0ZmhlZW5AZGViaWFuLm9yZz4KKworICAqIHNjcmlwdHMvZHBrZy1hcmNoaXRlY3R1cmUucGwsIGFyY2h0YWJsZTogQWRkIEFNRDY0L3g4Nl82NCBzdXBwb3J0LgorICAgIEFsc28gcmVpbmRlbnQgYXJjaHRhYmxlIHNvIHRoZSBjb2x1bW5zIGxpbmUgdXAgbmljZWx5LgorCitNb24gQXByIDI2IDE4OjUzOjE1IEJTVCAyMDA0IFNjb3R0IEphbWVzIFJlbW5hbnQgPHNjb3R0QG5ldHNwbGl0LmNvbT4KKworICAqIGNvbmZpZ3VyZS5pbjogUHV0IHRoZSBtYW4gcGFnZSBkaXJlY3RvcmllcyBpbiBhbHBoYWJldGljYWwgb3JkZXIuCisgICogbWFuL01ha2VmaWxlLmluOiBMaWtld2lzZQorICAqIGRlYmlhbi9ydWxlczogRXh0cmFjdCBtYW51YWwgcGFnZSBkaXJlY3RvcmllcyBmcm9tIE1ha2VmaWxlLmluIGFuZAorICB1c2UgdGhhdCBsaXN0IGluc3RlYWQgb2YgaGFyZGNvZGluZyB0aGVtLgorCitTdW4gQXByIDI1IDE5OjAwOjIwIEJTVCAyMDA0IFNjb3R0IEphbWVzIFJlbW5hbnQgPHNjb3R0QG5ldHNwbGl0LmNvbT4KKworICAqIHZlcnNpb24tbnIsIGRlYmlhbi9jaGFuZ2Vsb2c6IEJ1bXAgdmVyc2lvbiB0byAxLjEwLjIyLgorCitTdW4gQXByIDI1IDE4OjAyOjM0IEJTVCAyMDA0IFNjb3R0IEphbWVzIFJlbW5hbnQgPHNjb3R0QG5ldHNwbGl0LmNvbT4KKworICAqIHNjcmlwdHMvaW5zdGFsbC1pbmZvLnBsOiBBZGQgLS1kaXItZmlsZSBvcHRpb24gZm9yIGNvbXBhdGliaWxpdHkKKyAgd2l0aCBHTlUgaW5zdGFsbC1pbmZvLiAgQ29ycmVjdCBjb2RlIHRvIGJyZWFrIGluZmluaXRlIGxvb3AuCisKK1N1biBBcHIgMjUgMTc6NTc6NDYgQlNUIDIwMDQgU2NvdHQgSmFtZXMgUmVtbmFudCA8c2NvdHRAbmV0c3BsaXQuY29tPgorCisgICogc2NyaXB0cy9kcGtnLWRpdmVydC44OiBEb2N1bWVudCB0aGF0IGRpdmVydGluZyBzaGFyZWQgbGlicmFyaWVzCisgIGNhbiBiZSB0cm91Ymxlc29tZSB3aGVuIGNvbWJpbmVkIHdpdGggbGRjb25maWcuCisKK1N1biBBcHIgMjUgMTc6NTM6MDYgQlNUIDIwMDQgU2NvdHQgSmFtZXMgUmVtbmFudCA8c2NvdHRAbmV0c3BsaXQuY29tPgorCisgICogc2NyaXB0cy9kcGtnLWNoZWNrYnVpbGRkZXBzLjE6IFRoaXMgc2NyaXB0IG5vIGxvbmdlciBjaGVja3MgZm9yCisgIGJ1aWxkLWVzc2VudGlhbCwgc28gZG9uJ3QgZG9jdW1lbnQgdGhhdCBpdCBkb2VzLgorCitTdW4gQXByIDI1IDE3OjQ1OjQ3IEJTVCAyMDA0IFNjb3R0IEphbWVzIFJlbW5hbnQgPHNjb3R0QG5ldHNwbGl0LmNvbT4KKworICAqIHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOiBHcm91cCB0aGUgLW8gZXhwcmVzc2lvbiB0byBmaW5kCisgIHVzaW5nIGJyYWNlcy4KKworU3VuIEFwciAyNSAxNzoxNzoxNiBCU1QgMjAwNCBTY290dCBKYW1lcyBSZW1uYW50IDxzY290dEBuZXRzcGxpdC5jb20+CisKKyAgKiBtYW4vZXMvTWFrZWZpbGUuaW46IEFkZCBuZXcgZHBrZy1zb3VyY2UuMSBtYW5wYWdlLgorCitTdW4gQXByIDI1IDE3OjA4OjU3IEJTVCAyMDA0IFNjb3R0IEphbWVzIFJlbW5hbnQgPHNjb3R0QG5ldHNwbGl0LmNvbT4KKworICAqIG1hbi9qYS9NYWtlZmlsZS5pbjogQWRkIG5ldyBkcGtnLXNvdXJjZS4xIG1hbnBhZ2UuCisKK1N1biBBcHIgMjUgMTY6NTk6MDkgQlNUIDIwMDQgU2NvdHQgSmFtZXMgUmVtbmFudCA8c2NvdHRAbmV0c3BsaXQuY29tPgorCisgICogY29uZmlndXJlLmluOiBBZGQgTm9yd2VnaWFuIE55bm9yc2sgYW5kIFBvcnR1Z2VzZSBsaW5ndWFzLgorCitTdW4gQXByIDI1IDEyOjI3OjM4IENFU1QgMjAwNCAgVG9sbGVmIEZvZyBIZWVuICA8dGZoZWVuQGRlYmlhbi5vcmc+CisKKyAgKiBtYWluL2FyY2hpdmUuYzogbWFrZSBibG9jayBhbmQgY2hhciBkZXZpY2VzIHdvcmsgcHJvcGVybHkgd2hlbgorICAgIGV4dHJhY3RpbmcuICBta25vZCBjYW4gY3JlYXRlIG90aGVyIGtpbmRzIG9mIGRldmljZXMgdGhhbiBqdXN0IGNoYXIKKyAgICBhbmQgYmxvY2sgZGV2aWNlcywgc28gd2UgbmVlZCB0byBwYXNzIHRoZSB0eXBlIG9mIGRldmljZSB0byBta25vZCBpbgorICAgIHRoZSBtb2RlIGFyZ3VtZW50LgorCitTdW4gQXByIDI1IDAwOjQ2OjM4IENFU1QgMjAwNCAgVG9sbGVmIEZvZyBIZWVuICA8dGZoZWVuQGRlYmlhbi5vcmc+CisKKyAgKiBzcGxpdC9ta3NwbGl0LnBsOiBjdXQgb2ZmIGFueXRoaW5nIGFmdGVyIHRoZSBmaXJzdCBwaWVjZSBvZiB3aGl0ZXNwYWNlCisgICAgd2hlbiBnZXR0aW5nIHRoZSBtZDVzdW0sIHNpbmNlIHdlIG5vdyBnZXQgYSBkaWZmZXJlbnQtZm9ybWF0dGVkIG1kNXN1bQorICAgIGJhY2suICAoSXQgbm93IGhhcyBhIHRyYWlsaW5nIGRhc2guKQorCitTdW4gQXByIDI1IDAwOjIzOjI3IENFU1QgMjAwNCAgVG9sbGVmIEZvZyBIZWVuICA8dGZoZWVuQGRlYmlhbi5vcmc+CisKKyAgKiBsaWIvZHVtcC5jOiBUZXJtaW5hdGUgYnVmZmVyIGluIG9yZGVyIHRvIG5vdCBkaXNwbGF5IGdhcmJhZ2Ugd2hlbgorICAgIGRpc3BsYXlpbmcgZGVwZW5kZW5jeSBmaWVsZHMuCisJCitTdW4gQXByIDI1IDAwOjEyOjI3IENFU1QgMjAwNCAgVG9sbGVmIEZvZyBIZWVuICA8dGZoZWVuQGRlYmlhbi5vcmc+CisKKyAgKiBtYWluL3F1ZXJ5LmMsIGRwa2ctZGViL21haW4uYzogRml4IHVwIHRoZSBxdWVyeSBmb3JtYXQgdG8gYmUKKyAgICBjb25zaXN0ZW50IHdpdGggd2hhdCB0aGUgbGlicmFyeSBleHBlY3RzLiAgUmVtb3ZlIHRoZSBwa2c6IHByZWZpeCBmcm9tCisgICAgdGhlIGRlZmF1bHQgc2hvd2Zvcm1hdC4KKwkKK1N1biBBcHIgMjUgMDA6MDY6MjcgQ0VTVCAyMDA0ICBUb2xsZWYgRm9nIEhlZW4gIDx0ZmhlZW5AZGViaWFuLm9yZz4KKworICAqIHNjcmlwdHMvZHBrZy1zdGF0b3ZlcnJpZGUucGw6IE1ha2Ugc3VyZSB0aGUgcGVybWlzc2lvbnMgcGFzc2VkIHRvCisgICAgZHBrZy1zdGF0b3ZlcnJpZGUgYXJlIG51bWVyaWMuCisKK1NhdCBBcHIgMjQgMjM6MTE6MTIgQ0VTVCAyMDA0ICBUb2xsZWYgRm9nIEhlZW4gIDx0ZmhlZW5AZGViaWFuLm9yZz4KKworICAqIGluY2x1ZGUvZHBrZy5oLmluLCBsaWIvZWhhbmRsZS5jLCBsaWIvbXlvcHQuYzogRmFpbGVkIG9wZW5pbmcgb2YKKyAgICBjb25maWd1cmF0aW9uIGZpbGVzIGFyZSBubyBsb25nZXIgYSBmYXRhbCBlcnJvci4gIFRoYW5rcyB0byBNYXgKKyAgICBWb3plbGVyIDxtYXhAaGludGVyaG9mLm5ldD4gZm9yIHRoZSBwYXRjaC4KKworTW9uIEFwciAxOSAxMjoyNDo0MCBDRVNUIDIwMDQgVG9sbGVmIEZvZyBIZWVuIDx0ZmhlZW5AZGViaWFuLm9yZz4KKworICAqIHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6IFNldCBMQ19BTEwgdG8gQyBiZWZvcmUgc3Bhd25pbmcgb2ZmIGRwa2cKKyAgLS1zZWFyY2gsIHRvIGF2b2lkIHNlYXJjaGluZyBvbiBsb2NhbGl6ZWQgc3RyaW5ncy4KKworU3VuIE1hciAyOCAxODozMjoxOSBDRVNUIDIwMDQgSm9yZGkgTWFsbGFjaCA8am9yZGlAZGViaWFuLm9yZz4KKworICAqIHBvL2NhLnBvOiBVcGRhdGUgQ2F0YWxhbiB0cmFuc2xhdGlvbi4KKworRnJpIE1hciAxMiAxOTowMjoyMSBHTVQgMjAwNCBTY290dCBKYW1lcyBSZW1uYW50IDxzY290dEBuZXRzcGxpdC5jb20+CisKKyAgKiBtYWluL3JlbW92ZS5jIChyZW1vdmFsX2J1bGtfcmVtb3ZlX2NvbmZpZ2ZpbGVzKTogRG9uJ3QgY2hhbmdlIHRoZQorICAicHJldmlvdXMgcG9pbnRlciIgcG9pbnRlciBpZiB3ZSByZW1vdmUgdGhlIG5vZGUgZnJvbSB0aGUgbGlua2VkIGxpc3QsCisgIGVuc3VyaW5nIHRoYXQgaWYgdGhlIG5leHQgbm9kZSBpcyB0byBiZSByZW1vdmVkIHRoZSByaWdodCB0aGluZyB3aWxsCisgIGhhcHBlbi4KKworICBUaGlzIGNvcnJlY3RzIHRoZSBidWcgd2hlcmUgZXZlcnkgc2Vjb25kIHNoYXJlZCBvciBkaXZlcnRlZCBjb25mZmlsZQorICB3b3VsZCBiZSBpbmNvcnJlY3RseSBkZWxldGVkIGJ5IGRwa2cuCisgCitGcmkgTWFyIDEyIDE1OjA1OjUyIEdNVCAyMDA0IFNjb3R0IEphbWVzIFJlbW5hbnQgPHNjb3R0QG5ldHNwbGl0LmNvbT4KKworICAqIHV0aWxzL3N0YXJ0LXN0b3AtZGFlbW9uLmM6IERvbid0IHJlcXVpcmUgYW4gYXJndW1lbnQgZm9yIC1WICh2ZXJzaW9uKS4KKworVGh1IE1hciAxMSAxMTozNjowNiBHTVQgMjAwNCBTY290dCBKYW1lcyBSZW1uYW50IDxzY290dEBuZXRzcGxpdC5jb20+CisKKyAgKiB2ZXJzaW9uLW5yLCBkZWJpYW4vY2hhbmdlbG9nOiBCdW1wIHZlcnNpb24gdG8gMS4xMC4yMS4KKworVGh1IE1hciAxMSAxMToyMzowOSBHTVQgMjAwNCBTY290dCBKYW1lcyBSZW1uYW50IDxzY290dEBuZXRzcGxpdC5jb20+CisKKyAgKiBtYW4vamEvTWFrZWZpbGUuaW46IEFkZCBuZXcgcGFnZXMgdG8gTWFrZWZpbGUuaW4gc28gdGhleSBnZXQKKyAgaW5zdGFsbGVkLgorCitUaHUgTWFyIDExIDExOjE4OjI5IEdNVCAyMDA0IFNjb3R0IEphbWVzIFJlbW5hbnQgPHNjb3R0QG5ldHNwbGl0LmNvbT4KKworICAqIHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2Uuc2g6IFJldmVydCBjaGFuZ2Ugc3VnZ2VzdGVkIGJ5IEphdmllcgorICBGZXJuYW5kZXotU2FuZ3Vpbm8gUGVuYSwgYW5kIGRvbid0IGVjaG8gYSBibGFuayBsaW5lIHdoZW4gZGVhbGluZworICB3aXRoIFBHUC4gIFBHUCBpdHNlbGYgd2lsbCBmYWlsIGlmIHdlIGRvIHRoaXMsIGl0J3MgbmVlZGVkIHRvCisgIHNhdGlzZnkgcGdwZ3AsIHdoaWNoIHF1aXRlIGZyYW5rbHkgaXMgYSBidWcgaW4gcGdwZ3AncyBlbXVsYXRpb24KKyAgb2YgcGdwLgorICAKK1RodSBNYXIgIDggMDE6MTA6MDAgQ0VTVCAyMDA0ICBUb2xsZWYgRm9nIEhlZW4gIDx0ZmhlZW5AZGViaWFuLm9yZz4KKworICAqIHBvL3B0X0JSLnBvOiBGaXggdHlwby4KKworVGh1IE1hciAgOCAwMToxMDowMCBDRVNUIDIwMDQgIFRvbGxlZiBGb2cgSGVlbiAgPHRmaGVlbkBkZWJpYW4ub3JnPgorCisgICogbWFuL2RlL21kNXN1bS4xOiBGaXggc3BlbGxpbmcgZXJyb3IgYXMgcGVyIHBhdGNoIGluICMyMzA3NTAKKworVGh1IE1hciAgOCAwMTowMDowMCBDRVNUIDIwMDQgIFRvbGxlZiBGb2cgSGVlbiAgPHRmaGVlbkBkZWJpYW4ub3JnPgorCisgICogbWFuL2ZyL2Rwa2ctc291cmNlLjEgbWFuL2ZyL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuOAorICBtYW4vZnIvc3RhcnQtc3RvcC1kYWVtb24uOCBtYW4vZnIvZHBrZy44IG1hbi9mci9kcGtnLXF1ZXJ5LjgKKyAgbWFuL2ZyL2RlYi1jb250cm9sLjUgbWFuL2ZyL2Rwa2ctc2NhbnBhY2thZ2VzLjg6IFVwZGF0ZSBGcmVuY2ggdHJhbnNsYXRpb24KKyAgcGVyIHBhdGNoZXMgaW4gIzIxODcxMyAKKworVGh1IE1hciAgOCAwMDo1NDowMCBDRVNUIDIwMDQgIFRvbGxlZiBGb2cgSGVlbiAgPHRmaGVlbkBkZWJpYW4ub3JnPgorCisgICogbWFuL2phL3tkcGtnLWFyY2hpdGVjdHVyZS4xLGRwa2ctcXVlcnkuOCxkc2VsZWN0Ljh9OiAgVXBkYXRlIEphcGFuZXNlCisgICAgdHJhbnNsYXRpb24uICBDbG9zZXM6ICMyMjQ2MTYKKworVGh1IE1hciAgOCAwMDozODowMCBDRVNUIDIwMDQgIFRvbGxlZiBGb2cgSGVlbiAgPHRmaGVlbkBkZWJpYW4ub3JnPgorCisgICogcmVsZWFzZS5zaDogUmVtb3ZlIC5zdm4gZGlyZWN0b3JpZXMgYXMgd2VsbC4KKworTW9uIE1hciAgOCAxOTozNzowMCBHTVQgMjAwNCBTY290dCBKYW1lcyBSZW1uYW50IDxzY290dEBuZXRzcGxpdC5jb20+CisKKyAgKiB2ZXJzaW9uLW5yLCBkZWJpYW4vY2hhbmdlbG9nOiBCdW1wIHZlcnNpb24gdG8gMS4xMC4yMC4KKworTW9uIE1hciAgOCAxOTowMjoyNSBHTVQgMjAwNCBBbmRyZXcgU3VmZmllbGQgPGFzdWZmaWVsZEBkZWJpYW4ub3JnPgorCisgICogdXRpbHMvbWQ1c3VtLmM6IENoZWNrIHRoZSBib3VuZHMgb2YgdGhlIGxpbmUgYmVmb3JlIHByb2Nlc3NpbmcuCisKK01vbiBNYXIgIDggMTg6NTU6MTMgR01UIDIwMDQgQnJpYW4gTS4gQ2FybHNvbiA8c2FuZGFsc0BjcnVzdHl0b290aHBhc3RlLmF0aC5jeD4KKworICAqIHV0aWxzL21kNXN1bS5jOiBEb24ndCBwcmludCBvZmZlbmRpbmcgbGluZXMgYXMgdGhleSBtYXkgbm90IGJlIE5VTEwKKyAgdGVybWluYXRlZC4KKworTW9uIE1hciAgOCAxODozNDoxNiBHTVQgMjAwNCBHb3N3aW4gQnJlZGVybG93IDxicmVkZXJsb0BpbmZvcm1hdGlrLnVuaS10dWViaW5nZW4uZGU+CisKKyAgKiBsaWIvcGFyc2UuYywgbWFpbi9wcm9jZXNzYXJjLmM6IFN0b3JlIEFyY2hpdGVjdHVyZSBpbiB0aGUgc3RhdHVzIGZpbGUKKyAgYW5kIGRvbid0IHJlbW92ZSBpdCB3aGVuIHByb2Nlc3NpbmcuICBUaGlzIGlzIGEgZmlyc3Qgc3RlcCB0b3dhcmRzCisgIG11bHRpLWFyY2ggc3VwcG9ydCBpbiBhIGZ1dHVyZSByZWxlYXNlIG9mIERlYmlhbi4KKworTW9uIE1hciAgOCAxODoyODowNyBHTVQgMjAwNCBSb2JlcnQgTWlsbGFuIDxybWhAZGViaWFuLm9yZz4KKworICAqIGFyY2h0YWJsZSwgY29uZmlndXJlLmluLCBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLnBsOiBVcGRhdGUKKyAgc3VwcG9ydCBmb3IgRGViaWFuIEZyZWVCU0QuCisKK01vbiBNYXIgIDggMTg6MjA6MzggR01UIDIwMDQgSmF2aWVyIEZlcm5hbmRlei1TYW5ndWlubyBQZW5hIDxqZnNAY29tcHV0ZXIub3JnPgorCisgICogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5zaDogQWRkIGJsYW5rIGxpbmUgdG8gLmRzYyBiZWZvcmUKKyAgc2lnbmluZyB3aXRoIFBHUC4KKworTW9uIE1hciAgOCAxODoxMDowNiBHTVQgMjAwNCBTY290dCBKYW1lcyBSZW1uYW50IDxzY290dEBuZXRzcGxpdC5jb20+CisKKyAgKiBkZWJpYW4vY29udHJvbDogUmVtb3ZlIGR1cGxpY2F0ZWQgdXBsb2FkZXJzIGZpZWxkIGFuZCBhZGQgbXlzZWxmCisgIHRvIHRoZSBvbmUgdGhhdCdzIGxlZnQuCisKK01vbiBNYXIgIDggMTY6NDk6MTMgR01UIDIwMDQgQ2hyaXN0aWFuIEhhZ2dzdHJvbSA8Y2htQGMwMC5pbmZvPgorCisgICogbGliL21saWIuYzogUmVtb3ZlIGV4dHJhbmVvdXMgJXMgaW4gb2hzaGl0ZSgpIGNhbGwgd2hlbiBvdXQgb2YKKyAgZGlzayBzcGFjZSBzbyB0aGF0IGNvbmRpdGlvbiBnZXRzIGhhbmRsZWQgY29ycmVjdGx5IGFuZCBub3Qgd2l0aAorICBhIFNFR1YuCisKK01vbiBNYXIgIDggMTA6MTQ6MjcgR01UIDIwMDQgQ29saW4gV2F0c29uIDxjandhdHNvbkBkZWJpYW4ub3JnPgorIAorICAqIGRzZWxlY3QvbWV0aGxpc3QuY2MsIGRzZWxlY3QvcGtnZGlzcGxheS5jYzogU2V0IHRoZSB0b3RhbCBkaXNwbGF5IHdpZHRoCisgIHRvIHRoZSBtYXhpbXVtIG9mIFRPVEFMX0xJU1RfV0lEVEggYW5kIENPTFMsIGltcHJvdmluZyBkaXNwbGF5IG9uIHdpZGUKKyAgdGVybWluYWxzLgorCitUaHUgTWFyICA0IDEzOjI4OjExIEdNVCAyMDA0IFNjb3R0IEphbWVzIFJlbW5hbnQgPHNjb3R0QG5ldHNwbGl0LmNvbT4KKworICAqIGxpYi90YXJmbi5jOiBDb3B5IHRoZSBOYW1lIGFuZCBMaW5rTmFtZSBlbGVtZW50cyBhbmQgZW5zdXJlIHRoZXkKKyAgYXJlIE5VTEwtdGVybWluYXRlZCwgZnJlZWluZyB0aGVzZSBjb3BpZXMgYmVmb3JlIHJldHVybmluZy4gIFRoZQorICB0YXIgc3BlYyBkb2Vzbid0IHJlcXVpcmUgYSBOVUxMIGJ5dGUgaWYgdGhlIGZpbGVuYW1lIGlzIGV4YWN0bHkKKyAgMTAwIGNoYXJhY3RlcnMgbG9uZy4KKworU3VuIEZlYiAyOSAyMTo1NjoyNSBHTVQgMjAwNCBTY290dCBKYW1lcyBSZW1uYW50IDxzY290dEBuZXRzcGxpdC5jb20+CisKKyAgKiBzY3JpcHRzL2Rwa2ctY2hlY2tidWlsZGRlcHMucGw6IFB1c2ggYnVpbGQtY29uZmxpY3RzIGVycm9ycyBpbnRvCisgIEBjb25mbGljdHMgaW5zdGVhZCBvZiBAdW5tZXQsIHRoaXMgbG9va3MgbGlrZSBhbiBhY2NpZGVudGFsIGVycm9yCisgIGludHJvZHVjZWQgYnkgYmFkIGNvcHkmcGFzdGVpbmcuCisKK01vbiBNYXIgIDggMTc6MjY6MDYgR01UIDIwMDQgU2NvdHQgSmFtZXMgUmVtbmFudCA8c2NvdHRAbmV0c3BsaXQuY29tPgorCisgICogZGViaWFuL2NoYW5nZWxvZywgdmVyc2lvbi1ucjogQnVtcCB0byAxLjEwLjE5LgorCitUaHUgRmViIDI2IDAxOjQ4OjE1IEdNVCAyMDA0IFNjb3R0IEphbWVzIFJlbW5hbnQgPHNjb3R0QG5ldHNwbGl0LmNvbT4KKworICAqIG1haW4vcHJvY2Vzc2FyYy5jIChwcm9jZXNzX2FyY2hpdmUpOiBDb3B5IGNvZGUgZnJvbSBtYWluL3JlbW92ZS5jCisgIHRvIGVuc3VyZSB0aGF0IGhhcmRsaW5rcyB0byBkZXZpY2VzLCBzZXR1aWQgZmlsZXMgb3Igc2V0Z2lkIGZpbGVzCisgIGNhbm5vdCBiZSBzdGFzaGVkIGF3YXkgaW4gdGhlIGhvcGUgdGhhdCB0aGV5IGJlY29tZSBjb21wcm9taXNhYmxlCisgIGluIHRoZSBmdXR1cmUuICBUaGlzIHdhcyBoYW5kbGVkIHdoZW4gcmVtb3ZpbmcgYSBwYWNrYWdlLCBidXQgbm90CisgIHdoZW4gdXBncmFkaW5nIG9uZS4KKworVGh1IEZlYiAyNiAwMToyMzoxMyBHTVQgMjAwNCBTY290dCBKYW1lcyBSZW1uYW50IDxzY290dEBuZXRzcGxpdC5jb20+CisKKyAgKiB2ZXJzaW9uLW5yOiBCdW1wIHRvIDEuMTAuMTguMQorCitNb24gRmViIDIzIDIyOjQ2OjIxIEdNVCAyMDA0IFNjb3R0IEphbWVzIFJlbW5hbnQgPHNjb3R0QG5ldHNwbGl0LmNvbT4KKworICAqIGRwa2ctZGViL21haW4uYzogQ2xlYW4gdXAgcHJldmlvdXMgYmFkbHkgYXBwbGllZCBtdWx0aWxpbmUgc3RyaW5nCisgICAgcGF0Y2guCisKK01vbiBGZWIgMjMgMDE6MzA6MTMgQ0VUIDIwMDQgU3RlaW5hciBILiBHdW5kZXJzb24gPHNlc3NlQGRlYmlhbi5vcmc+CisKKyAgKiBtYWluL3JlbW92ZS5jOiBUZXJtaW5hdGUgc3RyaW5nIGJ1ZmZlciBjb3JyZWN0bHkuCisKK0ZyaSBGZWIgMjAgMTA6MjI6MjQgQ0VUIDIwMDQgQ29saW4gV2F0c29uIDxjandhdHNvbkBkZWJpYW4ub3JnPgorCisgICogZHBrZy1kZWIvbWFpbi5jOiBEb24ndCB1c2UgbXVsdGlsaW5lIHN0cmluZ3MgKGEgcmVtb3ZlZCBHQ0MgZXh0ZW5zaW9uKS4KKworVHVlIEphbiAyNyAyMDowODoxMiBDU1QgMjAwMyBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGRlYmlhbi9jb250cm9sOiBVcGRhdGUgZHBrZyBjb25mbGljdHMgdG8gPDwgMS4xMCwgaW5zdGVhZCBvZiAxLjkuCisKK01vbiBPY3QgMjcgMTM6Mzk6NTYgQ1NUIDIwMDMgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiB2ZXJzaW9uLW5yLCBkZWJpYW4vY2hhbmdlbG9nOiBSZWJ1aWxkLCB0YWdnaW5nIGFuZCByZWxlYXNpbmcgY29ycmVjdGx5CisgICAgZnJvbSBjdnMgdGhpcyB0aW1lLgorCitNb24gT2N0IDI3IDEzOjAxOjEyIENTVCAyMDAzIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6IEZpeCBlcnJvcnMgd2l0aCBkZXBlbmRlbmN5IGZpZWxkcyB0aGF0CisgICAgcmVmZXJlbmNlICR7ZHBrZzpWZXJzaW9ufS4KKworTW9uIE9jdCAyNyAxODo0NToxOSBDRVQgMjAwMyBKb3JkaSBNYWxsYWNoIDxqb3JkaUBkZWJpYW4ub3JnPgorCisgICogcG8vY2EucG86IFVwZGF0ZSBDYXRhbGFuIHRyYW5zbGF0aW9uIGFuZCByZWNvZGUgdG8gVVRGLTguCisKK01vbiBPY3QgMjcgMTE6MDY6MjUgQ1NUIDIwMDMgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBkZWJpYW4vZHBrZy5wb3N0aW5zdDogRG9uJ3QgYXNzdW1lIC91c3IvaW5mby9kaXIgZXhpc3RzIGlmIC91c3IvaW5mbworICAgIGRvZXMuCisKK01vbiBPY3QgMjcgMTA6NTc6NTQgQ1NUIDIwMDMgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOiBBZGQgLiMqIHRvIHRoZSBkZWZhdWx0IGlnbm9yZSBmaWx0ZXIuCisKK01vbiBPY3QgMjcgMDk6NDk6MjkgQ1NUIDIwMDMgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOiBBZGQgLXUgLWE8YXJjaD4gY29tbWFuZHMuCisKK01vbiBPY3QgMjcgMDk6NDI6NTcgQ1NUIDIwMDMgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBzY3JpcHRzL2Rwa2ctY2hlY2tidWlsZGRlcHMucGw6IFNldCAkcmVkdWNlX2FyY2ggd2hlbiBjYWxsaW5nIHBhcnNlZGVwLgorCitTdW4gT2N0IDI2IDE5OjI5OjE2IENTVCAyMDAzIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogc2NyaXB0cy9kcGtnLWNoZWNrYnVpbGRkZXBzLnBsOiBzL2Rwa2ctY2hlY2tidWlsZC9kcGtnLWNoZWNrYnVpbGRkZXBzLworICAgIGluIHVzYWdlLgorICAqIHZlcnNpb24tbnI6IEJ1bXAgdG8gMS4xMC4xNy4KKyAgKiBkZWJpYW4vY2hhbmdlbG9nOiBNYWtlIHRoZSBkYXRlIFVOUkVMRUFTRUQuCisKK1N1biBPY3QgMjYgMTQ6NTU6NTMgQ0VUIDIwMDMgV2ljaGVydCBBa2tlcm1hbiA8d2ljaGVydEB3aWdneS5uZXQ+CisKKyAgKiBkc2VsZWN0L3BrZ2RlcGNvbi5jYzogY2hhbmdlIHJldHVybiB2YWx1ZSBmb3IgcGtnZGVwY29uKCkgdG8gaW5kaWNhdGUKKyAgICBhIGNvbmZsaWN0IHJlc29sdXRpb24gaXMgbmVlZGVkIHdoZW4gZGVhbGluZyB3aXRoIGF1dG9zZWxlY3RlZAorICAgIHJlY29tbWVuZHMKKworU2F0IE9jdCAyNSAxNTo0NjoxNiBDRFQgMjAwMyBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGRlYmlhbi9jaGFuZ2Vsb2c6IFRhZyBmb3IgMS4xMC4xNiByZWxlYXNlIGRhdGUoZm9yIHJlYWwgdGhpcyB0aW1lKS4KKworU2F0IE9jdCAyNSAxNTo0NTo0OCBDRFQgMjAwMyBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIHNjcmlwdHMvaW5zdGFsbC1pbmZvLnBsOiBDaGFuZ2UgZm9ybWF0dGluZyBvZiBpbmZvLmRpci4KKworU2F0IE9jdCAyNSAxNTowNDo0MSBDRFQgMjAwMyBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGxpYi9tbGliLmMsIGluY2x1ZGUvZHBrZy5oLmluLCB1dGlscy9tZDVzdW0uYzogQ2hhbmdlIGxpbWl0IGFuZCB0aGUKKyAgICByZXR1cm4gdmFsdWUgZm9yIGJ1ZmZlcl9jb3B5IHRvIG9mZl90LCB3aGljaCBmaXhlcyBsYXJnZSBmaWxlIGhhbmRsaW5nLgorCitTYXQgT2N0IDI1IDE1OjAyOjI3IENEVCAyMDAzIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogYWxtb3N0IGFsbCAuYyBmaWxlczogQWxtb3N0ICpFVkVSWSogZGFtbiBmaWxlIHdhcyBpbmNsdWRpbmcgY29uZmlnLmggaW4KKyAgICB0aGUgd3Jvbmcgc3BvdC4gIEFmdGVyIG1ha2luZyBpdCB0aGUgZmlyc3QgaW5jbHVkZSwgdGhlbgorICAgIG9mZl90L3NpemVfdC9ldGMgY291bGQgYWN0dWFsbHkgYmUgcmVkZWZpbmVkIHRvIGJlIDY0LWJpdCBjb21wYXRpYmxlLgorCitTYXQgT2N0IDI1IDEyOjQ3OjIyIENEVCAyMDAzIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogc2NyaXB0cy9kcGtnLWNoZWNrYnVpbGRkZXBzLnBsOiBGaXggZHBrZy1jaGVja2J1aWxkZGVwcyBjYWxsaW5nIG9mCisgICAgcGFyc2VkZXAuICBJdCB3YXNuJ3Qgc2V0dGluZyB1c2VfYXJjaC4KKworVHVlIFNlcCAyMyAxMjoyMDozNSBDRFQgMjAwMyBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGNvbmZpZ3VyZS5pbjogQWRkIG1hbi9lcy9NYWtlZmlsZS4KKyAgCitUdWUgU2VwIDIzIDEyOjEyOjM4IENEVCAyMDAzIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogZGViaWFuL2NoYW5nZWxvZzogU2V0IHJlbGVhc2UgZGF0ZSBmb3IgMS4xMC4xNi4KKworU2F0IFNlcCAyMCAyMToxNzo0NSBDRFQgMjAwMyBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIHV0aWxzL21kNXN1bS5jOiBGaXggaGFuZGxpbmcgb2YgbGFyZ2UgZmlsZXMuCisKK1NhdCBTZXAgMjAgMjA6NDI6MzUgQ0RUIDIwMDMgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBtYW4vKgorICAgICogSW1wb3J0ZWQgc2V2ZXJhbCB0cmFuc2xhdGVkIG1hbnBhZ2VzLCBmcm9tIGRlYmlhbi1kb2MgY3ZzOgorICAgICAqIFNwYW5pc2g6IDgyMi1kYXRlLjEgY2xlYW51cC1pbmZvLjggZGViLWNvbnRyb2wuNSBkZWItb2xkLjUKKyAgICAgICBkZWIuNSBkcGtnLWNoZWNrYnVpbGRkZXBzLjEgZHBrZy1kZWIuMSBkcGtnLWRpdmVydC44IGRwa2ctbmFtZS4xCisgICAgICAgZHBrZy1zY2FucGFja2FnZXMuOCBkcGtnLXNwbGl0LjggZHBrZy1zdGF0b3ZlcnJpZGUuOCBkcGtnLjgKKyAgICAgICBkc2VsZWN0LjggbWQ1c3VtLjEgc3RhcnQtc3RvcC1kYWVtb24uOCB1cGRhdGUtYWx0ZXJuYXRpdmVzLjgKKyAgICAgKiBGcmVuY2g6IGRlYi41CisgICAgICogUG9ydHVndWVzZTogZHBrZy44IGRzZWxlY3QuOAorICAqIG1haW4vZHBrZy44OiAtTyBoYWQgYW4gaW52ZXJ0ZWQgd29yZC4KKyAgKiBwby9jei5wbzogSW1wcm92ZSB0cmFuc2xhdGlvbiBvZjogImRwa2cgLSB3YXJuaW5nOiBpZ25vcmluZyByZXF1ZXN0IHRvCisgICAgcmVtb3ZlICVzIHdoaWNoIGlzbid0IGluc3RhbGxlZC4iCisgICogcG8vaXQucG86IEZpeCBtaXNzaW5nIHNwYWNlIGluIHRyYW5zbGF0aW9uIHdoZW4gbGlzdGluZyBmaWxlcywgYW5kIHRoZQorICAgIGZpbGUgaXMgZGl2ZXJ0ZWQuCisgICogcG8vcGwucG86CisgICAgKiBVcGRhdGVkLgorICAgICogRml4IHRyYW5zbGF0aW9uIG9mICdjb25mbGljdHMgd2l0aCcKKyAgKiBwby9qYS5wbzogRml4IHR5cG8gaW4gdHJhbnNsYXRpb24gb2YgZHBrZyAtLWZvcmNlLWhlbHA7IGRvd2dyYWRlIC0+CisgICAgZG93bmdyYWRlCisgICogcG8vZnIucG86CisgICAgKiBGaXggdHJhbnNsYXRpb24gd2hlbiBsaXN0aW5nIGZpbGVzLCBhbmQgdGhlIGZpbGUgaXMgZGl2ZXJ0ZWQuCisgICAgKiBGaXggbWlzc2luZyBzcGFjZSBpbiB0cmFuc2xhdGlvbiBvZjogIiVzIC0gd2FybmluZzogZG93bmdyYWRpbmcgJS4yNTBzCisgICAgICBmcm9tICUuMjUwcyB0byAlLjI1MHMuXG4iCisgICogcG8vZGEucG86IEZpeCB0cmFuc2xhdGlvbiBvZih3YXMgbWlzc2luZyB0aGUgbGVhZGluZyBzcGFjZSk6ICIgZG9lcyBub3QKKyAgICBhcHBlYXIgdG8gYmUgYXZhaWxhYmxlXG4iCisKK1NhdCBTZXAgMjAgMTg6NDU6MTEgQ0RUIDIwMDMgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiB1dGlscy9zdGFydC1zdG9wLWRhZW1vbi5bYzhdOgorICAgICogQWRkIGEgLWR8LS1jaGRpciBvcHRpb24gdG8gc3RhcnQtc3RvcC1kYWVtb24uCisgICAgKiBTcGxpdCB0aGUgYmFja2dyb3VuZCBibG9jayBpbnRvIDIgcGFydHM6IG9uZSB0aGF0IGRvZXMgdGhlIGZvcmssIGFuZAorICAgICAgb3BlbnMgL2Rldi90dHkgYW5kIC9kZXYvbnVsbCwgYW5kIG9uZSB0aGF0IGRvZXMgZXZlcnl0aGluZyBlbHNlLiAgVGhlCisgICAgICBzZWNvbmQgYmxvY2sgaXMgdGhlbiBtb3ZlZCB0byBiZSBydW4gcmlnaHQgYmVmb3JlIHRoZSBleGVjLiAgVGhpcworICAgICAgYWxsb3dzIGVycm9yIG1lc3NhZ2VzIHRvIGJlIHNlZW4gZnJvbSB0aGUgY2hpbGQocHJldmlvdXNseSwgdGhleSB3ZXJlCisgICAgICBsb3N0KSwgYW5kIGFsbG93cyBmb3IgdGhlIGNocm9vdCB0byBub3QgcmVxdWlyZSB0aGUgZGV2aWNlIGZpbGVzLgorICAgICogV2hlbiAtLXN0YXJ0LCAtLXN0YXJ0YXMgYW5kIC0tcGlkZmlsZSBhcmUgZ2l2ZW4sIHByaW50ICdwcm9jZXNzJworICAgICAgaW5zdGVhZCBvZiAnKG51bGwpJyBmb3IgdGhlIHByb2Nlc3MgbmFtZSwgaWYgaXQncyBhbHJlYWR5IHJ1bm5pbmcuCisKK1NhdCBTZXAgMjAgMTc6NDQ6NDAgQ0RUIDIwMDMgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBjb25maWd1cmUuaW4sIGluY2x1ZGUvZHBrZy5oLmluOiBGaXggKG5vbi0pZGV0ZWN0aW9uIG9mIHNldGxvY2FsZS4KKworRnJpIFNlcCAxOSAyMDowMjoxOSBDRFQgMjAwMyBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGRlYmlhbi9jaGFuZ2Vsb2c6IFNldCBkYXRlL3RpbWUgZm9yIDEuMTAuMTUgcmVsZWFzZS4KKyAKK0ZyaSBTZXAgMTkgMTk6NTY6NDggQ0RUIDIwMDMgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBsaWIvdmFyYnVmLmMsIGNvbmZpZ3VyZS5pbjogRml4IHZhX2NvcHkgZGV0ZWN0aW9uLgorICAqIHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2Uuc2g6IEJhY2sgb3V0IGRlYmlhbi9ydWxlcyBidWlsZC1hcmNoCisgICAgZGV0ZWN0aW9uLiAgSXQgaXMgKm5vdCogcG9zc2libGUgKmF0IGFsbCogdG8gZGV0ZWN0IGF2YWlsYWJsZSB0YXJnZXRzCisgICAgaW4gYSBydWxlcyBmaWxlLiAgUGVyaW9kLgorCitGcmkgU2VwIDE5IDEyOjI2OjU0IENEVCAyMDAzIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogc2NyaXB0cy97Y29udHJvbGxpYixkcGtnLXtzb3VyY2UsY2hlY2tidWlsZGRlcHMsY29udHJvbH19LnBsOgorICAgICogUmV3cm90ZSB0aGUgcGFyc2VkZXAgc3R1ZmYsIHNvIHRoYXQgaXQgd2Fzbid0IGRvbmUgZHVyaW5nIGNvbnRyb2wgCisgICAgICBmaWxlIHBhcnNpbmcuICBTY3JpcHRzIHRoYXQgbmVlZCB0aGUgaW50ZXJuYWwgcGFyc2VkIGZvcm1hdCBzaG91bGQgCisgICAgICBjYWxsIHBhcnNlZGVwIG9uIHRoZSBmaWVsZCdzIHZhbHVlLgorICAgICogU3BsaXQgdGhlIHN1YnN0dmFycyBwYXJzaW5nIGludG8gYSBzZXBhcmF0ZSBmdW5jdGlvbi4KKyAgICAqIE5vIGxvbmdlciB2YWxpZGF0ZSBkZXBlbmRlbmN5IGZpZWxkcyB3aGVuIHJlYWRpbmcgdGhlIGNvbnRyb2wgZmlsZS4KKyAgICAgIFNvbWUgZmllbGRzIG1heSBoYXZlIHZhcnMgaW4gdGhlbSwgd2hpY2ggYnJlYWtzIHRoZSB2YWxpZGF0aW9uLgorICAgICogZHBrZy1nZW5jb250cm9sIGNhbGxzIHN1YnN0dmFycyBhZnRlciBwYXJzaW5nIHRoZSBjb250cm9sIGZpbGUsIGFuZAorICAgICAgdGhlbiB2YWxpZGF0ZXMgdGhlIHN1YnN0aXR1dGVkIGRlcGVuZHMgbGluZXMuICBPcmlnaW5hbGx5LAorICAgICAgc3Vic3RpdHV0aW9uIG9jY3VycmVkIG9ubHkgZHVyaW5nIHdyaXRpbmcgb2YgdGhlIGZpbmFsIG91dHB1dCBmaWxlLgorICAgICogQW5kcmVhcyBCYXJ0aCA8YWJhQG5vdC5zby5hcmdoLm9yZz46CisgICAgICBGaXggYmFkIHJlZ2V4IHRoYXQgZGlkbid0IGFsbG93IHNwYWNlcyBpbiBkZXBlbmRlbmN5IGZpZWxkIHBhcnNpbmcuCisgICAgICBJdCBub3cgZGlyZWN0bHkgbWF0Y2hlcyB3aGF0IHRoZSBjIGNvZGUgZXhwZWN0cy4gIEl0IHByZXZpb3VzbHkgd2FzCisgICAgICBhbGxvd2luZyBhbGwgb2YgXFMsIHdoaWNoIG1hdGNoZWQgb24gJygnLgorICAgICAgQ2xvc2VzOiAjMjExNjYwLgorICAqIGRlYmlhbi9jb250cm9sOiBSZW1vdmUgc3RhbGUgZGVidWcgdGhhdCB3b3VsZCBoYXZlIGJyb2tlbiBpbnN0YWxsYXRpb24KKyAgICBvbiBzMzkwLgorICAqIGRlYmlhbi9ydWxlczogV2Ugd2VyZSBjYWxsaW5nIG91ciBvd24gbG9jYWwgY29weSBvZiBkcGtnLWdlbmNvbnRyb2wsCisgICAgYnV0IHRoZSBzeXN0ZW0taW5zdGFsbGVkIGNvcHkgb2YgZHBrZy1zaGxpYmRlcHMuICBOb3csIGJvdGggYXJlIGNhbGxlZAorICAgIGZyb20gdGhlIGJ1aWxkIGRpcmVjdG9yeS4KKworV2VkIFNlcCAxNyAxMzoyNjoxNCBDRFQgMjAwMyBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGRlYmlhbi9jaGFuZ2Vsb2csIHZlcnNpb24tbnI6IFVwZGF0ZWQgdG8gMS4xMC4xMy4KKworV2VkIFNlcCAxNyAxMzoyMzoxNSBDRFQgMjAwMyBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIHNjcmlwdHMvY29udHJvbGxpYi5wbDogRml4IHBhcnNpbmcgb2YgZGVwcyB3aGVuIGJvdGggKCkgYW5kIFtdIGFyZQorICAgIHNwZWNpZmllZC4KKyAgKiBzY3JpcHRzL2NvbnRyb2xsaWIucGw6IFNldCAkaG9zdF9hcmNoIGluIGNvbnRyb2xsaWIucGw6cGFyc2VkZXAuCisgICogc2NyaXB0cy9kcGtnLWNoZWNrYnVpbGRkZXBzLnBsOiBEb24ndCBvdXRwdXQgdGhlIFtdIHN0dWZmIHdoZW4gZmluZGluZworICAgIGludmFsaWQgZGVwcy4KKworVHVlIFNlcCAxNiAxMzo0NDowNiBDRFQgMjAwMyBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6IEZpeCBnZW5lcmF0aW9uIG9mIGRlcGVuZGVuY3kgbGluZXMuCisKK1R1ZSBTZXAgMTYgMTM6MDY6MDEgQ0RUIDIwMDMgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDogSWdub3JlICdvOi4qJyBpbiAlZmkuCisKK1R1ZSBTZXAgMTYgMTM6MDI6MTAgQ0RUIDIwMDMgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOiBJZ25vcmUgJ286LionIGluICVmaS4KKworVHVlIFNlcCAxNiAxMjo1NzowMiBDRFQgMjAwMyBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIHBvL3VwZGF0ZS5zaDogUmVtb3ZlIGhlbHBtc2dzLmNjIGdlbmVyYXRpb24uCisKK1R1ZSBTZXAgMTYgMTI6NTI6NDIgQ0RUIDIwMDMgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiB2ZXJzaW9uLW5yLCBkZWJpYW4vY2hhbmdlbG9nOiBVcGRhdGVkIGZvciAxLjEwLjExIHJlbGVhc2UuCisKK1R1ZSBTZXAgMTYgMTI6NTA6NDQgQ0RUIDIwMDMgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBzY3JpcHRzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMucGw6IFJlbW92ZSAtdywgYXMgaXQgY2F1c2VzIHJ1bnRpbWUKKyAgICB3YXJuaW5ncy4gIFRoZSBjb2RlIGlzbid0IGNsZWFuIGVub3VnaCB5ZXQgdG8gc3VwcG9ydCBpdC4KKworTW9uIFNlcCAxNSAxOTowODoyOCBDRFQgMjAwMyBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGRlYmlhbi9ydWxlczogTm8gbG9uZ2VyIGdlbmVyYXRlIGFueSBCWUhBTkQgZmlsZXMuICBBbHNvLCBmaXggYnVnIGluCisgICAgcHNldWRvLXRhZ3MgaW5zdGFsbGF0aW9uLgorCitNb24gU2VwIDE1IDE4OjUzOjA2IENEVCAyMDAzIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogZGViaWFuL3J1bGVzLCBkZWJpYW4vcHNldWRvLXRhZ3M6IEluc3RhbGwKKyAgICAvdXNyL3NoYXJlL2RvYy9kcGtnL3BzZXVkby10YWdzLCB3aGljaCB0YWxrcyBhYm91dCB0aGUgYnVnIHRpdGxpbmcgd2UKKyAgICB1c2UgdG8gbWFyayBidWdzIGZvciBmaWx0ZXJpbmcgaW4gdGhlIERlYmlhbiBidHMuCisKK01vbiBTZXAgMTUgMTg6NDg6MzkgQ0RUIDIwMDMgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnNoOiBDYWxsIGRlYmlhbi9ydWxlcyAtcW4gYnVpbGQtYXJjaCwgYW5kIGlmCisgICAgaXQncyBhdmFpbGFibGUsIG1vZGlmeSAtQiBoYW5kbGluZyBhcHByb3ByaWF0ZWx5LiAgSWYgYnVpbGQtYXJjaCBpcyBub3QKKyAgICBhdmFpbGFibGUsIHRoZW4gd2hlbiAtQiB3YXMgY2FsbGVkLCBkbyAqbm90KiBwYXNzIC1CIG9uIHRvCisgICAgZHBrZy1jaGVja2J1aWxkZGVwcy4KKworU3VuIFNlcCAxNCAyMTo0NTo0NCBDRFQgMjAwMyBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGNvbmZpZ3VyZS5pbjogRml4IGJyb2tlbiBvc190eXBlIGRldGVjdGlvbiBvbiBsaW51eC4KKworU3VuIFNlcCAxNCAyMTo0NDowMSBDRFQgMjAwMyBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIHBvL2NhLnBvOiBVcGRhdGVkLgorCitTdW4sIDE0IFNlcCAyMDAzIDIxOjE2OjE4IC0wNTAwIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogc2NyaXB0cy9jb250cm9sbGliLnBsLCBzY3JpcHRzL2Rwa2ctY2hlY2tidWlsZGRlcHMucGw6IE1vdmVkIGRlcGVuZGVuY3kKKyAgICBwYXJzaW5nIGxvZ2ljIGZyb20gZHBrZy1jaGVja2J1aWxkZGVwcy4gIFRoZSBkcGtnLWNoZWNrYnVpbGRkZXBzIHBhcnNlcgorICAgIGRpZG4ndCBzdXBwb3J0IGVtcHR5IGZpZWxkcywgd2hpbGUgdGhlIGNvbnRyb2xsaWIgcGFyc2VyIGRpZC4KKyAgKiBzY3JpcHRzL2NvbnRyb2xsaWIucGw6CisgICAgKiBEZXBlbmRlbmN5IGZpZWxkcyBhcmUgbm93IHBhcnNlZCBpbnRvIGEgbmVzdGVkIGxpc3Qgc3RydWN0dXJlLgorICAgICogQWxsIGRlcGVuZGVuY3kgZmllbGRzIG5vdyBzdXBwb3J0IFthcmNoXSBjb25zdHJ1Y3RzLiAgVGhvc2UgdGhhdAorICAgICAgZG9uJ3QgYXBwbHkgZm9yIHRoZSBjdXJyZW50IGhvc3RfYXJjaCBhcmUgcmVtb3ZlZCBkdXJpbmcgcGFyc2luZy4KKyAgICAqIENvbW1lbnQgbGluZXModGhvc2UgdGhhdCBzdGFydCB3aXRoICcjJykgYXJlIGlnbm9yZWQgZHVyaW5nIHBhcnNpbmcuCisgICAgKiBTdG9yZSB0aGUgb3JpZ2luYWwgZmllbGQncyBjYXNpbmcgd2l0aCAnbzonIHByZXBlbmRlZCBpbiAlZmkuCisgICogc2NyaXB0cy9kcGtnLWNoZWNrYnVpbGRkZXBzLnBsOiAgQmVjYXVzZSBvZiB0aGUgYWJvdmUgY29udHJvbGxpYi5wbAorICAgIGNoYW5nZXMsIHRoaXMgc2NyaXB0IGlzIG11Y2ggc2ltcGxlciBub3cuCisgICogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6ICAgICAKKyAgICAqIFVzZSB0aGUgb3JpZ2luYWwgY2FzaW5nIG9mIGZpZWxkIG5hbWVzIHdoZW4gcmVwb3J0aW5nIHVua25vd24gZmllbGRzLgorICAqIHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsLCBzY3JpcHRzL2NvbnRyb2xsaWIucGw6IEFmdGVyIG9wZW5pbmcgZmlsZXMsCisgICAgc2V0IGJpbm1vZGUuCisKK1N1biBTZXAgMTQgMTc6MjQ6MjAgQ0RUIDIwMDMgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBkc2VsZWN0L3tNYWtlZmlsZS5pbixoZWxwbXNncy57Y2MsaCxzcmN9LG1raGVscG1zZ3MucGwsLmN2c2lnbm9yZX06CisgICAgTm8gbG9uZ2VyIGdlbmVyYXRlIGhlbHBtc2dzLntjYyxofS4KKworU3VuIFNlcCAxNCAxNjo1MzowOSBDRFQgMjAwMyBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIHNjcmlwdHMvdXBkYXRlLWFsdGVybmF0aXZlcy57cGwsOH06CisgICAgKiBBcHBseSBwYXRjaCB0aGF0IHByb3ZpZGVzIC0tc2V0IGFuZCAtLXJlbW92ZS1hbGwgY29tbWFuZHMuCisgICAgKiAtLWFsbCBjYWxscyAtLWNvbmZpZyBvbiBhbGwgYWx0ZXJuYXRpdmVzLgorICAqIHNjcmlwdHMvdXBkYXRlLWFsdGVybmF0aXZlcy5wbDoKKyAgICAqIEFsdGVyIC0tY29uZmlnIHByb21wdCwgdG8gYmUgbW9yZSBjbGVhciwgdGhhdCBvbmUgbXVzdCAncHJlc3MnIGVudGVyCisgICAgICB0byBhY2NlcHQgdGhlIGRlZmF1bHQuCisgICAgKiBGaXggc29tZSAtdyBpc3N1ZXMuCisgICAgKiBDaGVjayB3aGV0aGVyIHRoZSB0YXJnZXQgcGF0aCBleGlzdHMgd2hlbiByZW1vdmluZy4KKworU2F0IFNlcCAxMyAyMDo0ODowMiBDRFQgMjAwMyBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIHNjcmlwdHMvdXBkYXRlLWFsdGVybmF0aXZlcy44OiBBZGQgLS1jb25maWcgdG8gYWN0aW9uIHNlY3Rpb24sIGFuZCBhZGQKKyAgICBhcyBFWEFNUExFUyBzZWN0aW9uLgorICAqIHNjcmlwdHMvaW5zdGFsbC1pbmZvLnBsOiBpbnN0YWxsLWluZm8gLS12ZXJzaW9uIGFuZCAtLWhlbHAgbm93IGRpc3BsYXkKKyAgICBvbiBzdGRvdXQuCisgICogbWFpbi9kcGtneywtcXVlcnl9Ljg6IE1lbnRpb24gd2hhdCAtUyB3aWxsIG5vdCBmaW5kLgorICAqIG1haW4vZHBrZy44OiBNZW50aW9uIHRoYXQgZG93bmdyYWRpbmcgYSBwYWNrYWdlIGNhbiBoYXZlIHNlcmlvdXMKKyAgICBjb25zZXF1ZW5jZXMuCisgICogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy44OiBJbmNsdWRlIHNtYWxsIG5vdGUgdGhhdCBvdGhlciB0b29scyBtaWdodAorICAgIHVzZSB0aGUgZ2VuZXJhdGVkIFBhY2thZ2VzIGZpbGUuCisgICogc2NyaXB0cy9kcGtnLXNvdXJjZS4xOiBGaXggc29tZSB0eXBvcy4KKyAgKiBkc2VsZWN0L2RzZWxlY3QuODogZHNlbGVjdCBpcyBub3QgdGhlIG9ubHkgaW50ZXJmYWNlIGZvciBpbnN0YWxsaW5nCisgICAgcGFja2FnZXMgbm93YWRheXMuCisgICogdXRpbHMvc3RhcnQtc3RvcC1kYWVtb24uODogTm90ZSB0aGF0IC0tbmljZWxldmVsIHRha2VzIGFuIGFyZ3VtZW50LgorICAqIG1hbi9lbi9kZWItY29udHJvbC44OiBSZW1vdmUgZHVwbGljYXRlICdjYW4nLgorICAqIHNjcmlwdHMvZHBrZy1zY2Fuc291cmNlcy5wbDogRml4IHNob3J0IGRlc2NyaXB0aW9uLgorICAqIG1haW4vZHBrZy44OiBNb3ZlIGRwa2ctcXVlcnkgb3B0aW9ucyB0byB0aGVpciBvd24gc3Vic2VjdGlvbiwgbGlrZQorICAgIGRwa2ctZGViLgorICAqIG1haW4vbWFpbi5jLCBtYWluL2Rwa2cuODogQWRkIC0tZHJ5LXJ1biBhbmQgLS1zaW11bGF0ZSBhcyBzeW5vbnltcyB0bworICAgIC0tbm8tYWN0LgorICAqIHNjcmlwdHMvZHBrZy1hcmNoaXRlY3R1cmUucGw6IEZpeCB3cm9uZyByZWZlcmVuY2UgdG8KKyAgICBERUJfQlVJTERfR05VX1NZU1RFTSBvbiAtLWhvc3QKKyAgKiBtYW4vZW4vZGViLWNvbnRyb2wuNTogcy9Vc3VhdWxseS9Vc3VhbGx5LworICAqIGRzZWxlY3QvZHNlbGVjdC44OiBSZW1vdmVkIHJlZmVyZW5jZSBpbiBkc2VsZWN0KDgpIGFib3V0IHJlY29tbWVuZHMgbm90CisgICAgYmVpbmcgaGFuZGxlZCB3ZWxsLgorICAqIHNjcmlwdHMvZHBrZy1wYXJzZWNoYW5nZWxvZy5wbDogcy9kcGtnLXNvdXJjZS9kcGtnLXBhcnNlY2hhbmdlbG9nLyBpbgorICAgIC1oCisgICogc2NyaXB0cy9kcGtnLXNvdXJjZS4xOiBVbmhpZ2hsaWdodCAiTWF5IGJlIHJlcGVhdGVkIG11bHRpcGxlIHRpbWVzLiIKKyAgKiBkcGtnLWRlYi9tYWluLmM6IE1ha2UgYWxsIGFjdGlvbnMgaW4gLWggbG93ZXIgY2FzZS4KKyAgKiB1dGlscy9zdGFydC1zdG9wLWRhZW1vbi5bYzhdOiBBZGQgLWd8LS1ncm91cC4KKyAgKiBtYWluL2Rwa2cuODogcy9USEFOS1MvVEhBTktTLmd6LworICAqIG1haW4vZHBrZy44OiBNZW50aW9uIHJ1bm5pbmcgZHNlbGVjdCwgaW5zdGFsbCBhZnRlciAtLXNldC1zZWxlY3Rpb25zLgorICAqIG1haW4vbWFpbi5jOiBSZW1vdmUgZGlzYWJsZWQgLS1jb21tYW5kLWZkIGZyb20gaGVscC4KKworU2F0IFNlcCAxMyAxODo0MjoyNyBDRFQgMjAwMyBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIE1ha2VmaWxlLmNvbmYuaW4sIGFyY2h0YWJsZSwgY29uZmlndXJlLmluLCBkc2VsZWN0L01ha2VmaWxlLmluLAorICAgIGxpYi92YXJidWYuYywgc2NyaXB0cy9kcGtnLXthcmNoaXRlY3R1cmUsc2hsaWJkZXBzfS5wbCwKKyAgICB1dGlscy9zdGFydC1zdG9wLWRhZW1vbi5jOiBTdXBwb3J0IE9wZW5CU0QuCisKK1NhdCBTZXAgMTMgMTg6Mzk6NDEgQ0RUIDIwMDMgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBhcmNodGFibGU6IEFkZGVkIGFscGhhZXY2OC1saW51eC1nbnUgdG8gYXJjaHRhYmxlLgorCitTYXQgU2VwIDEzIDE3OjE4OjQ2IENEVCAyMDAzIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDogQWRkIC5zdm4sIHthcmNofSwgYW5kIC5hcmNoLWlkcyB0byBkcGtnLXNvdXJjZQorICAgIC1pIGRlZmF1bHQgcmVnZXguCisKK1NhdCBTZXAgMTMgMTY6MzQ6NTMgQ0RUIDIwMDMgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBsaWIvcGFyc2UuYzogQ2hhbmdlIHVzZSBvZiBzdHJuY3B5IGluIHBhcnNlZGIgdG8gbWVtY3B5LgorCitTYXQgU2VwIDEzIDE2OjI4OjUyIENEVCAyMDAzIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogbWFpbi9tYWluLmM6IEZpeCBzZWdmYXVsdCB3aXRoIC0tc3RhdHVzLWZkLgorCitTYXQgU2VwIDEzIDE2OjI2OjM2IENEVCAyMDAzIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDogQWRkIC5jdnNpZ25vcmUgdG8gZHBrZy1zb3VyY2UncyBkZWZhdWx0IGRpZmYKKyAgICBpZ25vcmUgcmVnZXguICBBbHNvIGZpeCBtaXNzaW5nIFwgZXNjYXBlIGZvciAuZGVwcy4KKworU2F0IFNlcCAxMyAxNjoxNjo1MiBDRFQgMjAwMyBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIG1haW4vcmVtb3ZlLmM6IFJldHJ5IHJlbW92aW5nIGVtcHR5IGRpcnMgZHVyaW5nIHB1cmdlLgorCitTYXQgU2VwIDEzIDE2OjA5OjEzIENEVCAyMDAzIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogbWFpbi9maWxlc2RiLmM6IEluY3JlYXNlIGZpbGVzZGIgYmluIHNpemUsIGFuZCBhbHRlciBoYXNoaW5nIGZ1bmN0aW9uLgorCitTYXQgU2VwIDEzIDE2OjA0OjM3IENEVCAyMDAzIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogc2NyaXB0cy9kcGtnLXN0YXRvdmVycmlkZS5wbDogRml4ICJzdHJpcHBpbmcgdHJhaWxpbmcgLyIgbWVzc2FnZSBmcm9tCisgICAgZHBrZy1zdGF0b3ZlcnJpZGUuCisKK1NhdCBTZXAgMTMgMTU6NTY6MTMgQ0RUIDIwMDMgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBhdXRvbWFrZS90b29scy5tNCwgZHNlbGVjdC9NYWtlZmlsZS5pbiwgbWV0aG9kcy9kaXNrLnNldHVwLAorICAgIHNjcmlwdHMvZHBrZy1wYXJzZWNoYW5nZWxvZy5wbCwgc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDogQXBwbHkgcGF0Y2ggdG8KKyAgICBtYWtlIGRwa2cgd29yayB3aXRoIFBPU0lYIDEwMDMuMS0yMDAxLgorCitTYXQgU2VwIDEzIDE1OjQwOjM5IENEVCAyMDAzIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogbGliL2RhdGFiYXNlLmM6IEFwcGx5IHBhdGNoIHRvIGNoYW5nZSBoYXNoaW5nIGZ1bmN0aW9uLCBhbmQgaW5jcmVhc2UKKyAgICBiaW4gc2l6ZSwgZm9yIHRoZSBwYWNrYWdlIGRhdGFiYXNlLgorCitTYXQgU2VwIDEzIDE1OjIwOjU2IENEVCAyMDAzIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogbGliL2VucXVpcnkuYywgc2NyaXB0cy9kcGtnLWFyY2hpdGVjdHVyZS5wbDogZHBrZyAtLXByaW50LWFyY2hpdGVjdHVyZQorICAgIG5vdyBkb2VzIGdjYyAtZHVtcG1hY2hpbmUgaW5zdGVhZCBvZiAtLXByaW50LWxpYmdjYy1maWxlLW5hbWUuCisKK1NhdCBTZXAgMTMgMTQ6Mzg6NTUgQ0RUIDIwMDMgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBkZWJpYW4vZHBrZy1kb2MucG9zdGluc3Q6IEFkZCBzZXQgLWUuCisKK1NhdCBTZXAgMTMgMTQ6MzY6MzcgQ0RUIDIwMDMgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBsaWIvcGFyc2UuYzogRml4IGludmVydGVkIHRlc3Qgb2YgZW9mIGluIHBhcnNlZGIsIHdoaWxlIGxvb2tpbmcgZm9yIGVvZgorICAgIGFmdGVyIGZpZWxkIG5hbWUuCisKK1NhdCBTZXAgMTMgMTQ6MzQ6MTAgQ0RUIDIwMDMgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBzY3JpcHRzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMucGw6IEZpeCBpbnZlcnNpb24gdGVzdCBvZiAkc3RhdGUgYWdhaW5zdAorICAgICdleHBlY3RlZCcgd2hlbiByZW1vdmluZyBhbiBhbHRlcm5hdGl2ZS4KKworU2F0IFNlcCAxMyAxNDozMToyMiBDRFQgMjAwMyBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGxpYi9zdGFydHVwLmMsIGxpYi9NYWtlZmlsZS5pbiwgaW5jbHVkZS9kcGtnLmguaW46IENoYW5nZQorICAgIHN0YW5kYXJkX3N0YXJ0dXAgYW5kIHN0YW5kYXJkX3NodXRkb3duIGludG8gbWFjcm9zLgorCitTYXQgU2VwIDEzIDE0OjI0OjE0IENEVCAyMDAzIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogc2NyaXB0cy9pbnN0YWxsLWluZm8ucGw6IEFwcGx5IHBhdGNoLCB0byBoYW5kbGUgbWlzc2luZyBpbmZvZGlyLmJhaywKKyAgICBhbmQgZW1wdHkgZmlsZXMuCisKK1NhdCBTZXAgMTMgMTQ6MjE6MTMgQ0RUIDIwMDMgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBjb25maWcuc3ViLCBjb25maWcuZ3Vlc3M6IFVwZGF0ZWQKKworU2F0IFNlcCAxMyAxNDoyMDoxMiBDRFQgMjAwMyBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGRlYmlhbi9jb250cm9sOiBBZGQgYnVpbGQtZGVwZW5kcyBvbiBzZ21sLWJhc2UsIGFuZCBpbmNyZWFzZQorICAgIGdldHRleHQgYnVpbGQtZGVwZW5kcyB0byAwLjEyLjEtMy4KKworU2F0IFNlcCAxMyAxNDoxODowMiBDRFQgMjAwMyBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGNvbmZpZ3VyZS5pbjoKKyAgICAqIENoYW5nZSBBQ19TWVNfU0lHTElTVF9ERUNMQVJFRCB0byBBQ19ERUNMX1NZU19TSUdMSVNULgorICAgICogQWRkIGxvY2FsZS5oIHRvIGxpc3Qgb2YgY2hlY2tlZCBoZWFkZXJzLgorICAgICogUGFzcyBleHRlcm5hbCB0byBBTV9HTlVfR0VUVEVYVAorCitTYXQgU2VwIDEzIDEzOjU3OjIyIENEVCAyMDAzIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogTWFrZWZpbGUuY29uZi5pbjogcy90b3Bfc3JjZGlyL2Fic190b3Bfc3JjZGlyLworCitTYXQgU2VwIDEzIDEzOjU2OjIzIENEVCAyMDAzIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogbGliL2NvbXBhdC5jOiBzL1NZU19TSUdMSVNUX0RFQ0xBUkVEL0hBVkVfREVDTF9TWVNfU0lHTElTVC8KKworU2F0IFNlcCAxMyAxMzo1NToyNSBDRFQgMjAwMyBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIHBvL01ha2V2YXJzOiBEZWZpbmUgTVNHSURfQlVHU19BRERSRVNTCisKK0ZyaSwgMTIgU2VwIDIwMDMgMTc6MTU6MzMgKzAyMDAgV2ljaGVydCBBa2tlcm1hbiA8d2ljaGVydEBkZWVwaGFja21vZGUub3JnPgorCisgICogc3JjaXB0cy9kcGtnLXNvdXJjZS5wbDogYWxsb3cgfiBpbiB2ZXJzaW9uIG51bWJlcnMKKworU2F0IEFwciAyNiAxNToxMDoyNCBDRFQgMjAwMyBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIHZlcnNpb24tbnIsIGRlYmlhbi9jaGFuZ2Vsb2c6IFVwZGF0ZWQgZm9yIDEuMTAuMTAgcmVsZWFzZS4KKworU2F0IEFwciAyNiAxNTowOToxMCBDRFQgMjAwMyBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGRlYmlhbi9jb250cm9sOiBVcGRhdGVkIHRvIHN0YW5kYXJkcy12ZXJzaW9uIDMuNS44LgorICAqIGRlYmlhbi97ZHBrZyx7LWRldiwtZG9jfSxkc2VsZWN0fS57cHJlcm0scG9zdGluc3R9LCBkZWJpYW4vcnVsZXM6IE5vCisgICAgbG9uZ2VyIG1hbmFnZSAvdXNyL2RvYyBzeW1saW5rcy4KKworU2F0IEFwciAyNiAxNDoyODoxNyBDRFQgMjAwMyBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIC5jdnNpZ25vcmUsIHBvLy5jdnNpZ25vcmU6IEFkZGVkIGdlbmVyYXRlZC9zeW1saW5rZWQgZmlsZXMuCisKK1NhdCBBcHIgMjYgMTQ6MjQ6MDUgQ0RUIDIwMDMgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBta2luc3RhbGxkaXJzOiByZW1vdmVkLCBhcyB0aGlzIGlzIGdlbmVyYXRlZC4KKworU2F0IEFwciAyNiAxNDoyMjoxNiBDRFQgMjAwMyBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIHBvL01ha2V2YXJzOiBOZWVkZWQgdG8gd29yayB3aXRoIHRoZSBuZXdlciBnZXR0ZXh0LgorCitTYXQgQXByIDI2IDExOjI5OjMwIENEVCAyMDAzIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogY29uZmlndXJlLmluLCBNYWtlZmlsZS5pbjogVXBkYXRlZCBmb3IgZ2V0dGV4dCAwLjExLjUuCisgICogcG8vKjogVXBkYXRlZC4KKworVHVlIEFwciAxNSAxMTozMjoyMiBDRFQgMjAwMyBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGFyY2h0YWJsZSwgdXRpbHMvc3RhcnQtc3RvcC1kYWVtb24uYywgIHNjcmlwdHMvZHBrZy1hcmNoaXRlY3R1cmUucGw6CisgICAgQWRkIG5ldGJzZCBzdXBwb3J0LgorICAqIHNjcmlwdHMvZHBrZy1hcmNoaXRlY3R1cmUucGw6IFN1cHBvcnQgaHlwZW5hdGVkIHZhbHVlcy4KKworVHVlIEFwciAxNSAwMTowNTowNCBDRFQgMjAwMyBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGNvbmZpZy5zdWIsIGNvbmZpZy5ndWVzczogVXBkYXRlZC4KKworVHVlIEFwciAxNSAwMDo0ODowNiBDRFQgMjAwMyBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGRlYmlhbi9jb250cm9sLCBkZWJpYW4vcnVsZXMsIGRlYmlhbi9jaGFuZ2Vsb2c6IE1vZGlmaWVkIHRvIHVzZQorICAgIGF1dG90b29scy1kZXYuCisKK1R1ZSBBcHIgMTUgMDA6MzU6NDAgQ0RUIDIwMDMgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBzY3JpcHRzL2Rwa2ctc3RhdG92ZXJyaWRlLnBsOiBTdHJpcCB0cmFpbGluZyAvIGZyb20gdGhlIGZpbGUgYXJncyBpbgorICAgIGRwa2ctc3RhdG92ZXJyaWRlLgorCitUdWUgQXByIDE1IDAwOjI2OjA2IENEVCAyMDAzIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogTWFrZWZpbGUuaW46IFN1cnJvdW5kIHNlZCBjYWxsIHdpdGggJycuCisKK1R1ZSBBcHIgMTUgMDA6MTY6NDQgQ0RUIDIwMDMgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBkZWJpYW4vY29udHJvbDogTWFrZSB0aGUgZHBrZy1pYXNlYXJjaCBjb25mbGljdHMgdmVyc2lvbmVkLgorCitNb24gQXByIDE0IDIxOjEzOjA0IENEVCAyMDAzIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogYXJjaHRhYmxlOiBVcGRhdGVkIGZvciBodXJkLgorCitTdW4gU2VwIDE1IDEzOjI1OjI5IENEVCAyMDAyIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogc2NyaXB0cy9kcGtnLWFyY2hpdGVjdHVyZS5wbDogQWRkIHMzOTB4LgorCitTdW4gU2VwIDE1IDEzOjIxOjM4IENEVCAyMDAyIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogZGViaWFuL2NoYW5nZWxvZzogU2V0IGRhdGUgZm9yIDEuMTAuOSByZWxlYXNlLgorCitTdW4gU2VwIDE1IDEzOjE5OjQwIENEVCAyMDAyIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogYXJjaHRhYmxlOiBBZGQgczM5MHguCisKK1N1biBTZXAgMTUgMTI6NDg6MzYgQ0RUIDIwMDIgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBtYWluL2hlbHAuYzogRml4IGRlcmVmZXJlbmNlIGluIGN1X2Nsb3NlZmQoKSwgd2hpY2ggd2FzIHRoZSBjYXVzZSBvZgorICAgIGNsb3NlKHJhbmRvbSBudW1iZXIpIG9uIG1vc3QgYXJjaGVzLCBidXQgY2xvc2UoMCkgb24gczM5MHguCisKK1N1biBTZXAgMTUgMTI6NDM6MDAgQ0RUIDIwMDIgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiB2ZXJzaW9uLW5yLCBkZWJpYW4vY2hhbmdlbG9nOiBTZXQgMS4xMC45IHZlcnNpb24uCisKK1RodSBTZXAgIDUgMTY6MzI6MDEgQ0RUIDIwMDIgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBkZWJpYW4vY2hhbmdlbG9nOiBTZXQgZGF0ZSBmb3IgMS4xMC44IHJlbGVhc2UuCisKK1RodSBTZXAgIDUgMTY6MzE6MTEgQ0RUIDIwMDIgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBzY3JpcHRzL2luc3RhbGwtaW5mby5wbDogTWFrZSB0aGUgbXVsdGlsaW5lIHJlZ2V4IGhhdmUgYW4gdXBwZXIgYm91bmQsCisgICAgaW5zdGVhZCBvZiBiZWluZyB1bmJvdW5kZWQsIGFzIG5ld2VyIHBlcmxzIGhhdmUgYSBsYXJnZXIgc3RhY2sgZnJhbWUsCisgICAgd2hpY2ggY2F1c2UgdGhlbSB0byBzZWdmYXVsdCBxdWlja2VyIHdpdGggbGFyZ2VyIGlucHV0cy4KKworVGh1IFNlcCAgNSAxNjoyOTozOSBDRFQgMjAwMiBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIHZlcnNpb24tbnIsIGRlYmlhbi9jaGFuZ2Vsb2c6IFNldCAxLjEwLjggdmVyc2lvbi4KKworVHVlIFNlcCAgMyAxODo1OToxOSBDRFQgMjAwMiBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGRlYmlhbi9jaGFuZ2Vsb2c6IFNldCBkYXRlIGZvciAxLjEwLjcgcmVsZWFzZS4KKworVHVlIFNlcCAgMyAxODo0MDowOCBDRFQgMjAwMiBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGxpYi9kYm1vZGlmeS5jOiBGaXggZG91YmxlIGZyZWUgaW4gbW9kc3RhdGRiX2luaXQsIGluIHRoZSBjYXNlIHRoYXQKKyAgICBtb2RzdGF0ZGJfc2h1dGRvd24gd2FzIGNhbGxlZCBwcmV2aW91c2x5LgorCitUdWUgU2VwICAzIDE4OjM3OjQ1IENEVCAyMDAyIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogbGliL25mbWFsbG9jLmM6IFByb3RlY3QgZHVwbGljYXRlIGNhbGxzIHRvIG9ic3RhY2tfZnJlZSgpLAorICAgIGFzIG9ic3RhY2tfZnJlZSBzZWdmYXVsdHMgd2hlbiBjYWxsZWQgd2l0aG91dCBpbml0aWFsaXppbmcuCisKK1R1ZSBTZXAgIDMgMTg6MzY6NDIgQ0RUIDIwMDIgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiB2ZXJzaW9uLW5yLCBkZWJpYW4vY2hhbmdlbG9nOiBTZXQgMS4xMC43IHZlcnNpb24uCisKK1N1biBTZXAgIDEgMjM6NDY6MDQgQ0RUIDIwMDIgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBkZWJpYW4vY2hhbmdlbG9nOiBTZXQgZGF0ZSBmb3IgMS4xMC42IHJlbGVhc2UuCisKK1NhdCBBdWcgMzEgMjM6NDY6MDQgQ0RUIDIwMDIgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBkcGtnLWRlYi9tYWluLmMsIGRzZWxlY3QvbWFpbi5jYywgaW5jbHVkZS9kcGtnLmguaW4sIGxpYi9zdGFydHVwLmMKKyAgICBtYWluL21haW4uYywgbWFpbi9xdWVyeS5jLCBzcGxpdC9tYWluLmM6ICBEb24ndCBjYWxsIG5mZnJlZWFsbCwgaW4gYW55CisgICAgb2YgdGhlIGMvYysrIHByb2dyYW1zLiAgSXQgYXBwZWFycyBkc2VsZWN0IHNsaWdodGx5IGNvcnJ1cHRzIGl0J3MKKyAgICBtZW1vcnkgZW5vdWdoIHRoYXQgaXQgY2FuJ3QgYmUgZnJlZWQgd2l0aG91dCBzZWdmYXVsdGluZy4KKworU2F0IEF1ZyAzMSAyMzo0MjowOCBDRFQgMjAwMiBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIHZlcnNpb24tbnIsIGRlYmlhbi9jaGFuZ2Vsb2c6IE1vZGlmaWVkIGZvciB2ZXJzaW9uIDEuMTAuNi4KKworVGh1IEF1ZyAyOSAxNjo0Mzo0NSBDRFQgMjAwMiBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGRlYmlhbi9jaGFuZ2Vsb2c6IFNldCBkYXRlIGZvciByZWxlYXNlLgorCitUaHUgQXVnIDI5IDE2OjM4OjE1IENEVCAyMDAyIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogbWFpbi9maWxlc2RiLmM6IEJhY2sgb3V0IG9uZSBtZW1sZWFrIGZpeC4KKworVGh1IEF1ZyAyOSAxNToxMzo1OSBDRFQgMjAwMiBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGRlYmlhbi9ydWxlczogUmVtb3ZlIC91c3Ivc2Jpbi9zdGFydC1zdG9wLWRhZW1vbi4KKworVGh1IEF1ZyAyOSAxNDo1MTozNSBDRFQgMjAwMiBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGxpYi9kYm1vZGlmeS5jLCBsaWIvZHVtcC5jLCBsaWIvbG9jay5jLCBsaWIvc3RhcnR1cC5jLCBsaWIvdGFyZm4uYworICAgIG1haW4vY29uZmlndXJlLmMsIG1haW4vZmlsZXNkYi5jLCBtYWluL3F1ZXJ5LmM6IEZpeCBzZXZlcmFsIG1pbm9yCisgICAgbWVtbGVha3MuCisKK1RodSBBdWcgMjkgMTQ6NDI6MDUgQ0RUIDIwMDIgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBsaWIvcGFyc2VoZWxwLmM6IEZpeCBjb3JydXB0aW9uIG9mIGF2YWlsYWJsZSBmaWxlLCBjYXVzZWQgYnkgdXNlIG9mCisgICAgbWVtb3J5IHRoYXQgd2FzIHByZXZpb3VzbHkgZnJlZWQuCisKK1RodSBBdWcgMjkgMTQ6MzE6MjIgQ0RUIDIwMDIgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBsaWIvcGFyc2UuYzogQ2hlY2sgZm9yIGVvZiBiZWZvcmUgd2UgZ2V0YygpLCBub3QgYWZ0ZXIuCisKK1NhdCBBdWcgMjQgMTU6MzY6NDEgQ0RUIDIwMDIgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBzY3JpcHRzL2luc3RhbGwtaW5mby5wbDogUHJldmlvdXMgaW5zdGFsbC1pbmZvcyhiZWZvcmUgMS4xMCkgaGFuZGxlZAorICAgIG11bHRpcGxlIGRpciBmaWxlIGVudHJpZXMsIGJlY2F1c2UgdGhleSB3b3VsZCBjb3B5IHRoZSBlbnRpcmUgc3RhbnphCisgICAgdW5tb2RpZmllZC4gIFRoZSBuZXdlc3QgdmVyc2lvbiBkb2VzIG5vdCBkbyB0aGlzLCBhcyBpdCByZWZvcm1hdHMgdGhlCisgICAgb3B0aW9ucywgYW5kIHRoZXJlYnkgb25seSB0YWtlcyB0aGUgZmlyc3QgbGluZS4gIFNvLCB3ZSBub3cgc3BsaXQgYWxsCisgICAgdGhlIGxpbmVzIGZyb20gdGhlIHN0YW56YSwgYW5kIHByb2Nlc3MgdGhlbSBhbGwuCisKK1NhdCBBdWcgMjQgMTQ6NDc6NTYgQ0RUIDIwMDIgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBhcmNodGFibGU6IEFkZCBpMzg2LWdudTAuMy4KKyAgKiBtYWluL01ha2VmaWxlLmluLCB1dGlscy9NYWtlZmlsZS5pbjogRml4IGhhbmRsaW5nIG9mIHN0YXRpYyBjb21waWxlcywKKyAgICB3aXRoIHJlZ2FyZCB0byB6bGliLgorCitTYXQgQXVnIDI0IDE0OjQxOjQ1IENEVCAyMDAyIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogbGliL2ZpZWxkcy5jOiBBbGxvdyBzcGFjZXMgYmV0d2VlbiB0aGUgZW5kIG9mIGEgdmVyc2lvbiwgYW5kIHRoZQorICAgIHRyYWlsaW5nICcpJy4KKworU2F0IEF1ZyAyNCAxNDoxNjoxMyBDRFQgMjAwMiBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGxpYi9hcmNoaXZlcy5jOiBGaXggc2VnZmF1bHQgd2hlbiAtLWF1dG8tZGVjb25maWd1cmUgaXMgZ2l2ZW4uICBUaGlzIGlzCisgICAgY2F1c2VzIGJlY2F1c2UgdGhlIGRlY29uZmlndXJlIGxpc3QgaXMgYWxsb2NhdGVkIGluIGFuIG9ic3RhY2ssIGJ1dAorICAgIHRoZW4gZnJlZWQgd2l0aCBub3JtYWwgZnJlZSgpLgorCitUaHUgQXVnIDIyIDIzOjM3OjQ1IENEVCAyMDAyIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogbGliL2RhdGFiYXNlLmMsIGxpYi9wYXJzZS5jLCBsaWIvcGFyc2VoZWxwLmMsIG1haW4vbWFpbi5jOiBGaXggc2V2ZXJhbAorICAgIHJlYWQgcGFzcyBidWZmZXIgYnVncywgYW5kIGEgbWVtbGVhay4KKworVGh1IEF1ZyAyMiAyMzoyNToyMyBDRFQgMjAwMiBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGxpYi9uZm1hbGxvYy5jOiBGaXggcmVhZCBwYXN0IGJ1ZmZlciBpbiBsaWIvbmZtYWxsb2MuYy4KKworVGh1IEF1ZyAyMiAyMzoxNjowMiBDRFQgMjAwMiBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIHV0aWxzL21kNXN1bS5jOiBIYW5kbGUgZGlyZWN0b3JpZXMgYmV0dGVyIGluIG1kNXN1bS4KKworVGh1IEF1ZyAyMiAyMzowNjozOSBDRFQgMjAwMiBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6IEZpeCBleHRyYWN0aW9uIG9mIG1kNXN1bSBpbgorICAgIGRwa2ctc2NhbnBhY2thZ2VzLgorCitUaHUgQXVnIDIyIDIzOjAxOjUzIENEVCAyMDAyIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogdXRpbHMvbWQ1c3VtLmM6IEZpeCBzZWdmYXVsdCBpbiBtZDVzdW0gaWYgdGhlIGZpbGUgYmVpbmcgY2hlY2tlZAorICAgIGRvZXNuJ3QgZXhpc3QuCisKK1RodSBBdWcgMjIgMjI6NTk6NTQgQ0RUIDIwMDIgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisgCisgICogdmVyc2lvbi1uciwgZGViaWFuL2NoYW5nZWxvZzogTW9kaWZpZWQgZm9yIDEuMTAuNS4KKworU3VuIEp1bCAxNCAxNToxMDoyMiBDRFQgMjAwMiBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGNvbmZpZ3VyZS5pbjogUmVtb3ZlIC1mZnVuY3Rpb24tc2VjdGlvbnMgYW5kIC1mZGF0YS1zZWN0aW9ucy4KKyAgKiBNYWtlZmlsZS5jb25mLmluLCBNYWtlZmlsZS5pbiwgZGViaWFuL3J1bGVzOiAgSW5zdGFsbCBhcmNodGFibGUgaW50bworICAgIC91c3Ivc2hhcmUvZHBrZy8uCisKK1N1biBKdWwgMTQgMTU6MDk6MjQgQ0RUIDIwMDIgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiB2ZXJzaW9uLW5yLCBkZWJpYW4vY2hhbmdlbG9nOiBVcGRhdGVkIGZvciAxLjEwLjQgdmVyc2lvbi4KKworVGh1IEp1bCAxMSAyMzozMzoxMyBDRFQgMjAwMiBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGRlYmlhbi9jb250cm9sOiBkc2VsZWN0IHJlcGxhY2VzIGRwa2cgPDwgMS4xMC4zLCBhcyB3ZSBtb3ZlZCB0aGUKKyAgICBkc2VsZWN0IGNvbmZpZyBmaWxlIGFuZCBtYW5wYWdlcyBmcm9tIGRwa2cuZGViIHRvIGRzZWxlY3QuZGViLgorCitUaHUgSnVsIDExIDIyOjI2OjMwIENEVCAyMDAyIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogdXRpbHMvc3RhcnQtc3RvcC1kYWVtb24uYzogSWYgaW4gLS10ZXN0IG1vZGUsIGFuZCAtLXN0b3AgaXMgZ2l2ZW4sCisgICAgaW5jcmVtZW50IG5fa2lsbGVkLCBzbyB0aGF0IHN0YXJ0LXN0b3AtZGFlbW9uIHJldHVybnMgdGhlIHByb3BlciBleGl0CisgICAgdmFsdWUuICBUaGFua3MgVGhvbWFzIE1vcmluIDx0aG9tYXMubW9yaW5AZW5zdC1icmV0YWduZS5mcj4uCisKK1RodSBKdWwgMTEgMjI6MTk6MTIgQ0RUIDIwMDIgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiB1dGlscy9zdGFydC1zdG9wLWRhZW1vbi5jOiBGaXggdGVzdCBpbnZlcnNpb24gaW4gc3RhcnQtc3RvcC1kYWVtb24sCisgICAgd2hlbiBjaGVja2luZyB0aGUgcGlkIGdpdmVuIGluIGEgcGlkIGZpbGUuICBUaGFua3MgVGhvbWFzIE1vcmluCisgICAgPHRob21hcy5tb3JpbkBlbnN0LWJyZXRhZ25lLmZyPi4KKworU3VuIEp1bCAgNyAxNDo1NDo0NCBDRFQgMjAwMiBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGRlYmlhbi9ydWxlczogRml4IGluc3RhbGwgbG9jYXRpb24gb2YgL3Vzci9saWIvZHBrZy9tZXRob2RzLgorCitTYXQgSnVsICA2IDIzOjUxOjAzIENFU1QgMjAwMiBXaWNoZXJ0IEFra2VybWFuIDx3aWNoZXJ0QGRlZXBoYWNrbW9kZS5vcmc+CisKKyAgKiBkZWJpYW4vcnVsZXM6IE1vdmUgZHNlbGVjdC5jZmcgdG8gZHNlbGVjdCBwYWNrYWdlLgorCitUaHUgSnVsICA0IDIxOjMxOjU3IENEVCAyMDAyIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogZGViaWFuL3J1bGVzOiBJbnN0YWxsIGRlYmlhbi9kc2VsZWN0LmNvbmZmaWxlcy4KKworVGh1IEp1bCAgNCAxOTozMzoyMCBDRFQgMjAwMiBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6IFJlbW92ZSAtWiBmcm9tIHBhdGNoIGNhbGwsIGFzIGl0IG1ha2VzIHBhdGNoCisgICAgd2FybiBhYm91dCBtaXNzaW5nIHRpbWVzdGFtcHMuCisKK1R1ZSBKdWwgIDIgMTI6MTE6NTkgQ0RUIDIwMDIgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBkZWJpYW4vY2hhbmdlbG9nLCBkZWJpYW4vY29udHJvbDogZHBrZyArIGRwa2ctc3RhdGljIGNvbmZsaWN0IGRwa2ctZGV2CisgICAgPDwgMS45LCBhcyBkcGtnLXNvdXJjZSAxLjkgZG9lc24ndCB3b3JrIHdpdGggbWQ1c3VtIDEuMTAuCisKK1R1ZSBKdWwgIDIgMTI6Mjk6NTIgQ0VTVCAyMDAyIFdpY2hlcnQgQWtrZXJtYW4gPHdpY2hlcnRAZGVlcGhhY2ttb2RlLm9yZz4KKworICAqIE1lcmdlIGZyb20gSEVBRDoKKyAgICArIGxpYi9teW9wdDogY2hlY2sgZm9yIG1hbGxvYyBmYWlsdXJlIGFuZCBhY3R1YWxseSBsb29rIGluICRIT01FIGZvcgorICAgICAgZmlsZSBpbnN0ZWFkIG9mIGxvb2tpbmcgaW4gY29uZmRpciB0d2ljZQorCitUdWUgSnVsICAyIDEwOjIwOjQwIENFU1QgMjAwMiBXaWNoZXJ0IEFra2VybWFuIDx3aWNoZXJ0QGRlZXBoYWNrbW9kZS5vcmc+CisKKyAgKiBkZWJpYW4vcnVsZXM6IGNwIGluc3RlYWQgb2YgbXYgc2luY2Ugd2UgbmVlZCBmaWxlcyBmb3IgYm90aCBkcGtnCisgICAgYW5kIGRwa2ctc3RhdGljICh1Z2gpCisKK1R1ZSBKdWwgIDIgMTA6MDg6MTggQ0VTVCAyMDAyIFdpY2hlcnQgQWtrZXJtYW4gPHdpY2hlcnRAZGVlcGhhY2ttb2RlLm9yZz4KKworICAqIGRlYmlhbi9ydWxlczogUmVtb3ZlIGF1dG9tNHRlLmNhY2hlIGluIGNsZWFuIHRhcmdldAorCitUdWUgSnVsICAyIDA5OjUyOjQxIENFU1QgMjAwMiBXaWNoZXJ0IEFra2VybWFuIDx3aWNoZXJ0QGRlZXBoYWNrbW9kZS5vcmc+CisKKyAgKiBkZWJpYW4vcnVsZXM6IG1vdmUgZHBrZy5jZmcuNSBhbmQgZHNlbGVjdC5jZmcuNSBpbnRvIGRwa2cgcGFja2FnZQorCitUdWUgSnVsICAyIDA5OjQ2OjAxIENFU1QgMjAwMiBXaWNoZXJ0IEFra2VybWFuIDx3aWNoZXJ0QGRlZXBoYWNrbW9kZS5vcmc+CisKKyAgKiBNZXJnZSBmcm9tIEhFQUQ6CisgICAgKyBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDogQWRkIH4gdG8gdGhlIGxpc3Qgb2YgbGVnYWwgY2hhcmFjdGVycworICAgICAgaW4gYSBwYWNrYWdlIGZpbGVuYW1lCisgICAgKyBzY3JpcHRzL2Rwa2ctY2hlY2tidWlsZGRlcHMucGw6IHJlbW92ZSBmb3JjZWQgY2hlY2sgZm9yIGJ1aWxkLWVzc2VudGlhbCwKKyAgICAgIHdlIHNob3VsZCBub3QgaGFyZGNvZGUgRGViaWFuIHBvbGljeSBpbnRvIGRwa2cKKworVHVlIEp1bCAgMiAwOTo0MTo0NCBDRVNUIDIwMDIgV2ljaGVydCBBa2tlcm1hbiA8d2ljaGVydEBkZWVwaGFja21vZGUub3JnPgorCisgICogZGViaWFuL2NvbnRyb2w6IHN5bmMgZHBrZyBhbmQgZHBrZy1zdGF0aWMgZGVwZW5kZW5jaWVzLCBmaXggZG91YmxlCisgICAgY29uZmxpY3QgZm9yIGRwa2cKKworVHVlIEp1bCAgMiAwMTowNDoyOSBDRFQgMjAwMiBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGRlYmlhbi9ydWxlczogRG9uJ3QgYWx3YXlzIGNhbGwgYXV0b2hlYWRlciBkdXJpbmcgYnVpbGQuCisKK01vbiBKdWwgIDEgMTQ6NDU6MTEgQ0VTVCAyMDAyIFdpY2hlcnQgQWtrZXJtYW4gPHdpY2hlcnRAZGVlcGhhY2ttb2RlLm9yZz4KKworICAqIGRlYmlhbi9jb250cm9sOiBhZGQgY29uZmxpY3Qgd2l0aCBkcGtnLWlhc2VhcmNoIHdoaWNoIGludHJ1ZGVkIG9uCisgICAgb3VyIG5hbWVzcGFjZSBhbmQgcmVwbGFjZSBtYW5wYWdlcy1kZSB3aGljaCBpbmNsdWRlcyBvbmUgb2Ygb3VyIG1hbnBhZ2VzCisKK0ZyaSBKdW4gMjEgMjE6NTM6MjQgQ0VTVCAyMDAyIFdpY2hlcnQgQWtrZXJtYW4gPHdpY2hlcnRAZGVlcGhhY2ttb2RlLm9yZz4KKworICAqIGRlYmlhbi9kcGtnLnBvc3RpbnN0OiBNZXJnZSBwYXRjaCBmcm9tIEpvc2lwIFJvZGluIHRvIGltcHJvdmUKKyAgICB0aGUgbW92ZSBmcm9tIC91c3IvaW5mbyB0byAvdXNyL3NoYXJlL2luZm8KKworRnJpIEp1biAyMSAyMToxMTowMiBDRVNUIDIwMDIgV2ljaGVydCBBa2tlcm1hbiA8d2ljaGVydEBkZWVwaGFja21vZGUub3JnPgorCisgICogcG8vY2EucG86IFVwZGF0ZWQKKworRnJpIEp1biAyMSAxOTowOTozOCBDRVNUIDIwMDIgV2ljaGVydCBBa2tlcm1hbiA8d2ljaGVydEBkZWVwaGFja21vZGUub3JnPgorCisgICogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6IEhhbmRsZSBzdWJzdHZhcnMgaW4gdGhlIEJpbmFyeSBmaWVsZAorCitUaHUgSnVuIDIwIDAwOjU0OjU0IENEVCAyMDAyIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogc2NyaXB0cy9pbnN0YWxsLWluZm8ucGw6IEZpeCBicm9rZW4gbWVyZ2UgZnJvbSAxLjkgYnJhbmNoLgorCitTYXQgSnVuICAxIDIzOjIyOjE5IENEVCAyMDAyIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogZHBrZy1kZWIvbWFpbi5jLCBtYWluL21haW4uYywgbWFpbi9xdWVyeS5jLCBkc2VsZWN0L21haW4uY2MsCisgICAgc3BsaXQvbWFpbi5jOiBSZXZlcnQgbGFzdCBtb2RpZmljYXRpb24uICBJdCdsbCBiZSBmaXhlZCBwcm9wZXJseSBmb3IKKyAgICBkcGtnIDEuMTEuCisKK1NhdCBKdW4gIDEgMTY6NDU6MTMgQ0RUIDIwMDIgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBkcGtnLWRlYi9tYWluLmMsIG1haW4vbWFpbi5jLCBtYWluL3F1ZXJ5LmMsIGRzZWxlY3QvbWFpbi5jYywKKyAgICBzcGxpdC9tYWluLmM6IEZpeGVkIHByaW50dmVyc2lvbigpLCB0byBhbGxvdyB0cmFuc2xhdGlvbnMgdG8gYmUgZG9uZQorICAgIGJldHRlci4KKworU2F0IEp1biAgMSAxNjoxNzo1OSBDRFQgMjAwMiBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIHBvL3B0X0JSLnBvOiBVcGRhdGVkLgorCitTYXQgSnVuICAxIDIyOjA0OjAyIENFU1QgMjAwMiBXaWNoZXJ0IEFra2VybWFuIDx3aWNoZXJ0QGRlZXBoYWNrbW9kZS5vcmc+CisKKyAgKiBwby9ydS5wbzogVXBkYXRlZAorCitGcmkgTWF5IDMxIDIxOjQ2OjAzIENFU1QgMjAwMiBXaWNoZXJ0IEFra2VybWFuIDx3aWNoZXJ0QGRlZXBoYWNrbW9kZS5vcmc+CisKKyAgKiBtYW4vZnIvZHBrZy1zY2FucGFja2FnZXMuOCwgbWFuL2ZyL2Rwa2ctc291cmNlLjEsIG1hbi9mci9kcGtnLjgsCisgICAgbWFuL2ZyL3N0YXJ0LXN0b3AtZGFlbW9uLjgsIG1hbi9mci9kZWItY29udHJvbC41OiBVcGRhdGVkCisKK01vbiBNYXkgMjcgMjE6MTM6MDAgQ0RUIDIwMDIgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBwby9kZS5wbywgcG8vZnIucG8sIHBvL2dsLnBvOiBVcGRhdGVkLgorCitTdW4gTWF5IDI2IDE4OjUwOjEwIENFVCAyMDAyIFBldGVyIEthcmxzc29uIDxwZXRlcmtAZGViaWFuLm9yZz4KKworICAqIG1hbi9zdi9kcGtnLjgsIG1hbi9zdi9zdGFydC1zdG9wLWRhZW1vbi44LCBwby9zdi5wbzogVXBkYXRlZCBTd2VkaXNoCisgICAgdHJhbnNsYXRpb24uCisKK1N1biBNYXkgMjYgMDE6MzU6MzQgQ0RUIDIwMDIgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBsaWIvdGFyZm4uYzogZHBrZyBub3cgcmVvcmRlcnMgc3ltbGlua3Mgd2hlbiBleHRyYWN0aW5nIGRlYnMuICBIb3dldmVyLAorICAgIHRoaXMgaXMgYWxzbyBzdGlsbCBkb25lIHdoZW4gYnVpbGRpbmcgZGVicy4gIEFmdGVyIGEgc3RhYmxlIHJlbGVhc2Ugb2YKKyAgICBEZWJpYW4gaGFzIG9jY3VycmVkIHdpdGggdGhpcyBtb2RpZmllZCBkcGtnLCB0aGUgcmVvcmRlcmluZyB3aGVuCisgICAgYnVpbGRpbmcgY2FuIGJlIHJlbW92ZWQuCisKK1N1biBNYXkgMjYgMDE6Mjg6MDAgQ0RUIDIwMDIgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBkZWJpYW4vZHBrZy5wb3N0aW5zdDogRml4IC91c3IvaW5mby9kaXIgbW92aW5nL3N5bWxpbmsgY29kZS4KKworU3VuIE1heSAyNiAwMToxMDoyNCBDRFQgMjAwMiBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIEZpeCBzb21lIG1pcy1tZXJnaW5nIG9mIHRoZSAxLjkgYnJhbmNoOgorICAgICogZGViaWFuL3J1bGVzLCBkZWJpYW4vZHBrZy5jb25mZmlsZXM6IGRzZWxlY3Qgd2FzIHNwbGl0IHRvIGEgc2VwYXJhdGUKKyAgICAgIGRlYiwgbm8gbG9uZ2VyIGluc3RhbGwgZHNlbGVjdC5jZmcgaW50byBkcGtnLmRlYi4gIEFsc28sIGRwa2cuY2ZnIGlzCisgICAgICBubyBsb25nZXIgYSBjb25mZmlsZS4KKyAgICAKK1NhdCBNYXkgMjUgMjI6NDU6MDYgQ0RUIDIwMDIgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBNZXJnZSBjaGFuZ2VzIGZyb20gMS45LjIwIGFuZCAxLjkuMjEuCisgICAgKiB1dGlscy9zdGFydC1zdG9wLWRhZW1vbi44OiBGaXggc29tZSBucm9mZiBmb3JtYXR0aW5nIGVycm9ycworICAgID8gcG8ucnUucG86IEZpeCBtaXN0cmFuc2xhdGlvbgorICAgICogbWFpbi9kcGtnLjg6IGRvY3VtZW50IC0tZm9yY2UtY29uZm1pc3MsIGltcHJvdmUgZGVzY3JpcHRpb24gZm9yCisgICAgICAtLWZvcmNlLWNvbmZ7b2xkLG5ld30KKyAgICAqIGxpYi9tbGliLmM6IERldGVjdCB0cnVuY2F0ZWQgZGVicywgYW5kIGFib3J0IHRoZSB1bnBhY2suCisgICAgKiBkZWJpYW4vcnVsZXM6IGluc3RhbGwgZHBrZy5jZmcgaW4gZG9jZGlyLCBpbnN0YWxsIGRwa2cucG9zdHJtLiAgQWxzbworICAgICAgaW5zdGFsbCBkc2VsZWN0LmNmZyBpbiAvZXRjL2Rwa2cuCisgICAgKiBkZWJpYW4vZHBrZy5jZmc6IGFkZCBmb3JjZS1vdmVyd3JpdGUKKyAgICAqIGRlYmlhbi9kcGtnLnBvc3RybTogbmV3IGZpbGUKKyAgICA/IHBvL3N2LnBvOiBSZW1vdmVkIGZ1enp5IHRyYW5zbGF0aW9uLgorICAgID8gcG8vc3YucG86IEZpeGVkIGJyb2tlbiBjLWZvcm1hdCBlc2NhcGVzIHdoaWNoIHdvdWxkIG1ha2Ugc29tZSBlcnJvcgorICAgICAgbWVzc2FnZXMgZGlzcGxheSBpbmNvcnJlY3RseS4KKyAgICAqIGRlYmlhbi9jb250cm9sOiBGaXggYnVpbGQtZGVwZW5kcyBvbiB6bGliMWctZGV2IHRvID49IDE6MS4xLjMtMTkuMS4KKyAgICAqIGRlYmlhbi9jaGFuZ2Vsb2c6IFRoZSBtaXNzaW5nIDEuOSBlbnRyaWVzLgorCitGcmkgTWF5IDI0IDIyOjM4OjAxIENEVCAyMDAyIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy44OiBBZGQgZHBrZy1zY2Fuc291cmNlcyB0bworICAgIGRwa2ctc2NhbnBhY2thZ2VzKDgpLgorCitGcmkgTWF5IDI0IDIyOjE0OjA0IENEVCAyMDAyIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogc2NyaXB0cy9kcGtnLXNvdXJjZS4xOiBGaXggdHlwbyBpbiBkcGtnLXNvdXJjZSgxKSwgcy8tc3UvLXNVLy4KKworRnJpIE1heSAyNCAyMjoxMTo1MyBDRFQgMjAwMiBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIHNjcmlwdHMvZHBrZy1zb3VyY2UuMTogRml4IGRvY3VtZW50YXRpb24gb2YgLXY8dmVyc2lvbj4gZm9yCisgICAgZHBrZy1wYXJzZWNoYW5nZWxvZywgcmVtb3ZpbmcgdGhlIHJlcXVpcmVtZW50IHRoYXQgdGhlIHZlcnNpb24gaGFzIHRvCisgICAgYmUgaW4gdGhlIGNoYW5nZWxvZy4KKworRnJpIE1heSAyNCAyMjowNjo0OCBDRFQgMjAwMiBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOiBDbG9zZSB0aGUgb2xkIGRlYmlhbi9maWxlcyBmaWxlLAorICAgIGJlZm9yZSBkb2luZyBhIHJlbmFtZS4KKworRnJpIE1heSAyNCAyMjowMDowMSBDRFQgMjAwMiBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2Uuc2gsIHNjcmlwdHMvZHBrZy1zb3VyY2UucGwsCisgICAgc2NyaXB0cy9kcGtnLXNvdXJjZS4xOiBBZGQgLUk8ZmlsZW5hbWU+IHRvIGRwa2ctYnVpbGRwYWNrYWdlIGFuZAorICAgIGRwa2ctc291cmNlLCB0byBleGNsdWRlcyBmaWxlcyBmcm9tIHRhciwgd2hlbiBidWlsZGluZyBhIG5hdGl2ZQorICAgIHBhY2thZ2UuCisKK0ZyaSBNYXkgMjQgMjE6NDk6NTIgQ0RUIDIwMDIgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBzY3JpcHRzL2NvbnRyb2xsaWIucGw6IFByb3Blcmx5IGNvdW50IHJlY3Vyc2l2ZSBleHBhbnNpb24gb2YgdmFyaWFibGVzLAorICAgIGluc3RlYWQgb2YganVzdCBjb3VudGluZyBhbGwgdmFyaWFibGUgZXhwYW5zaW9ucy4KKworRnJpIE1heSAyNCAyMToyMDowNCBDRFQgMjAwMiBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIHNjcmlwdHMvY2wtZGViaWFuLnBsOiBSZWNvZ25pemUgZW1lcmdlbmN5IGFzIHZhbGlkIGluIGNoYW5nZWxvZ3MuCisKK0ZyaSBNYXkgMjQgMjE6MTI6MzYgQ0RUIDIwMDIgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLnBsOiBzL2J1aWxkIG9uL2J1aWx0IG9uLzsgc2FtZSBmb3IKKyAgICAnYnVpbGQgZm9yJy4KKworRnJpIE1heSAyNCAyMTowMzo0MyBDRFQgMjAwMiBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6IEdpdmUgcHJvcGVyIGNhc2UgZm9yIFNvdXJjZSBhbmQKKyAgICBJbnN0YWxsZWQtU2l6ZS4KKworRnJpIE1heSAyNCAwMToxMDo0NSBDRFQgMjAwMiBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIHNjcmlwdHMvZHBrZy1zb3VyY2UucGwsIGRlYmlhbi9jaGFuZ2Vsb2c6IE1hdGNoIGZpZWxkcyBjYXNlCisgICAgaW5zZW5zaXRpdmVseSBpbiBkZWJpYW4vY29udHJvbC4KKworRnJpIE1heSAyNCAwMDoyMjozOSBDRFQgMjAwMiBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6IENsZWFuIHVwIGFmdGVyIGN0cmwtYyBpcyByZWNlaXZlZC4KKworRnJpIE1heSAyNCAwMDoxMTowMSBDRFQgMjAwMiBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGluY2x1ZGUvZHBrZy5oLmluLCBpbmNsdWRlL215b3B0LmgsIGxpYi9NYWtlZmlsZS5pbiwgbGliL215b3B0LmMsCisgICAgbWFpbi9tYWluLmMgbWFpbi9xdWVyeS5jIGRwa2ctZGViL21haW4uYyBzcGxpdC9tYWluLmMgZHNlbGVjdC9tYWluLmNjLAorICAgIGxpYi9zdGFydHVwLmM6IE5ldyBmdW5jdGlvbnMsIHN0YW5kYXJkX3N0YXJ0dXAsIHN0YW5kYXJkX3NodXRkb3duLCB0aGF0CisgICAgY29udGFpbiB0aGUgbW9zdCBjb21tb24gZnVuY3Rpb25zIHRoYXQgYWxsIGRwa2cgYmluYXJpZXMgY2FsbC4KKworVGh1IE1heSAyMyAyMzoyMzowMyBDRFQgMjAwMiBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGxpYi9sb2NrLmM6IFVzZSBzZXRjbG9leGVjIHdyYXBwZXIgaW5zdGVhZCBvZiBjYWxsaW5nIGZjbnRsIGRpcmVjdGx5LgorCitUaHUgTWF5IDIzIDE1OjIxOjA5IENEVCAyMDAyIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogVE9ETzogQWRkIGl0ZW1zIGZvciAtLXJlY29uZmlndXJlIGFuZCAtLWNhbGwtbWFpbnQtc2NyaXB0LgorCitUaHUgTWF5IDIzIDExOjE2OjI4IENEVCAyMDAyIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogbGliL2xvY2suYzogQWx3YXlzIHNldCBDTE9FWEVDIG9uIHRoZSBsb2NrIGZkLgorCitXZWQgTWF5IDIyIDEzOjAzOjQxIENEVCAyMDAyIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogbGliL01ha2VmaWxlLmluOiBSZW1vdmUgaGFzaC5jIGZyb20gU09VUkNFUywgYXMgaXQgaXMgYSB0ZXN0IGZpbGUuCisKK1R1ZSBNYXkgMjEgMTc6MjA6MTIgQ0VTVCAyMDAyIFdpY2hlcnQgQWtrZXJtYW4gPHdpY2hlcnRAZGVlcGhhY2ttb2RlLm9yZz4KKworICAqIGRlYmlhbi9kcGtnLnBvc3RpbnN0OiByZW1vdmUgY29tcGF0IHN0dWZmIGZvciBhbmNpZW50IGRwa2cgdmVyc2lvbnMuCisgICAgVGhpcyBhbHNvIGVuYWJsZXMgdGhlIC91c3IvaW5mby9kaXIgbW92ZSBjb2RlIHdoaWNoIHdhcyBuZXZlciByZWFjaGVkCisKK01vbiBNYXkgMjAgMDA6NTg6MTcgQ0RUIDIwMDIgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBtYWluL2VucXVpcnkuYywgbWFpbi9tYWluLmgsIHV0aWxzL21kNXN1bS5jLCBzcGxpdC9kcGtnLXNwbGl0LmgsCisgICAgc3BsaXQvc3BsaXQuYywgbGliL01ha2VmaWxlLmluLCBpbmNsdWRlL2Rwa2cuaC5pbiwgZHBrZy1kZWIvYnVpbGQuYywKKyAgICBkcGtnLWRlYi9kcGtnLWRlYi5oOiBFdmVuIG1vcmUgZ2NjIHdhcm5pbmcgZml4ZXMuCisKK1N1biBNYXkgMTkgMjM6Mzk6MDIgQ0RUIDIwMDIgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiA8YWxsIE1ha2VmaWxlLmluPiwgTWFrZWZpbGUuY29uZi5pbjogQWRkIHJ1bGVzIHRvIE1ha2VmaWxlLmNvbmYsIHRvCisgICAgcmVidWlsZCBNYWtlZmlsZSBpZiAkKHNyY2RpcikvTWFrZWZpbGUuaW4gaXMgbW9kaWZpZWQuICBUaGlzIGFsc28KKyAgICByZXF1aXJlZCBhZGRpbmcgYSAnZGVmYXVsdCcgdGFyZ2V0IHRvIGFsbCBNYWtlZmlsZXMuCisKK1N1biwgMTkgTWF5IDIwMDIgMjI6NTY6NDEgLTA1MDAgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiB1dGlscy9tZDVzdW0uYzogRmFpcmx5IGhlYXZ5IHdvcmsobmV0IG5vIGxpbmVzIGNoYW5nZWQpLCB0byBmaXgKKyAgICBsb25nam1wKCkgY2xhc2hpbmcgdmFyaWFibGUgd2FybmluZ3MuICBBbHNvLCBhIGZldyBtaXNjZWxsYW5lb3VzIGdjYworICAgIC1XPGZvbz4gZml4ZXMuCisKK1N1biBNYXkgMTkgMjA6MjU6MDUgQ0RUIDIwMDIgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBsaWIvc2hvd3BrZy5jLCBsaWIvdXRpbHMuYywgb3B0bGliL2xvbmctb3B0aW9ucy5jLCBtYWluL2FyY2hpdmVzLmMsCisgICAgbWFpbi9jb25maWd1cmUuYywgbWFpbi9tYWluLmMsIG1haW4vbWFpbi5oLCBtYWluL3F1ZXJ5LmMsCisgICAgb3B0bGliL2xvbmctb3B0aW9ucy5jLCBsaWIvc2hvd3BrZy5jLCBsaWIvdXRpbHMuYzogU2V2ZXJhbCBtb3JlIGdjYworICAgIC1XPGZvbz4gZml4ZXMuCisKK1N1biBNYXkgMTkgMTg6NDg6MzkgQ0RUIDIwMDIgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBkZWJpYW4vcnVsZXM6IEZpeCBvdmVyemVhbG91cyBydW5uaW5nIG9mIGF1dG9oZWFkZXIgZm9yIGV2ZXJ5IGJ1aWxkLgorCitTdW4gTWF5IDE5IDA2OjA1OjI0IENEVCAyMDAyIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogY29uZmlndXJlLmluOiBTcGxpdCBvdXQgdGhlIC1XKi1wcm90b3R5cGUgd2FybmluZ3MgaW50byBzZXBhcmF0ZQorICAgIGNoZWNrcy4KKworU3VuIE1heSAxOSAwNjowMTozMSBDRFQgMjAwMiBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGNvbmZpZ3VyZS5pbiwgYXV0b21ha2UvZHBrZy5tNDogTWFrZSBhIG5ldyBtYWNybywgRFBLR19DX0dDQ19BVFRSSUJVVEUuCisKK1N1biBNYXkgMTkgMDU6NTc6MjQgQ0RUIDIwMDIgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBhdXRvbWFrZS9kcGtnLm00LiAgR2FoLCBJIGhhdGUgZ2NjLiAgQUNfVFJZX0NPTVBJTEUoKSBwcm9kdWNlcyBjb2RlCisgICAgb2YgdGhlIGZvcm0gJ2ludCBtYWluKCkgeyAuLi4gfScuICBXaGVuIC1XZXJyb3IgLVdzdHJpY3QtcHJvdG90eXBlcyBpcworICAgIGdpdmVuIHRvIGdjYywgaXQgdGhpbmtzIHRoZSBhYm92ZSBjb2RlIHNuaXBwZXQgaXMgYW4gZXJyb3IsIGFuZCBhYm9ydHMuCisgICAgVGhpcyB3YXMgbWFraW5nIERQS0dfQ19HQ0NfVFJZX1dBUk5TIGRpc2FibGUgc29tZSAtVyBvcHRpb25zLiAgU28sIEkKKyAgICBubyBsb25nZXIgdXNlIEFDX1RSWV9DT01QSUxFLgorCitTdW4gTWF5IDE5IDA0OjU2OjUxIENEVCAyMDAyIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogZGViaWFuL3J1bGVzOiAgT29wcy4gIFRoZSBjb21tYW5kIHRvIHJ1biBpcyBhY2xvY2FsLCBub3QgYWNsb2NhbC5tNC4KKworU3VuIE1heSAxOSAwNDo0NTo0MSBDRFQgMjAwMiBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGNvbmZpZ3VyZS5pbiwgY29uZmlnLmguYm90KHJlbW92ZWQpLCBhY2NvbmZpZy5oKHJlbW92ZWQpOiAgVGhlIGxhdGVzdAorICAgIGF1dG9oZWFkZXIvYXV0b2NvbmYgY29tYmluYXRpb24gYWxsb3dzIHVzIHRvIGRvIGV2ZXJ5dGhpbmcgaW4KKyAgICBjb25maWd1cmUuaW4uICBjb25maWcuaC5ib3QgaXMgbm93IGluIEFIX0JPVFRPTSgpLCBhbmQgdGhlCisgICAgZGVzY3JpcHRpb25zIGZvciBhbGwgdGhlIGRlZmluZXMoZnJvbSBhY2NvbmZpZy5oKSBhcmUgbm93IHBhcnQgb2YKKyAgICBBQ19ERUZJTkUoKS4KKworU3VuIE1heSAxOSAwNDo0MTowNyBDRFQgMjAwMiBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGRlYmlhbi9ydWxlczogQWxsIHRoZSBoYXJkLWNvZGVkIGNhbGxzIHRvIHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsCisgICAgYXJlIG5vdyBkb3duIHRocnUgYSB2YXJpYWJsZSwgR0VOQ09OVFJPTC4KKworU3VuIE1heSAxOSAwNDoyNjo1OCBDRFQgMjAwMiBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGRlYmlhbi9ydWxlczogUmVtb3ZlIGFsbCBjYWxscyB0byAkKHNoZWxsIHB3ZCksIGFuZCB1c2UgJChDVVJESVIpLgorICAgIEFsc28sIGBwd2RgIGlzIHJlbW92ZWQuICBUaGVyZSB3YXMgYSB2YXIsIERJUiA6PSAkKHNoZWxsIHB3ZCk7CisgICAgaW5zdGFuY2VzIG9mIHRoaXMgdmFyIHdlcmUgYWxzbyByZXBsYWNlZCB3aXRoIENVUkRJUi4KKworU3VuIE1heSAxOSAwNDoxODo0NiBDRFQgMjAwMiBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGRlYmlhbi9ydWxlczogSWYgYXV0b21ha2UvKi5tNCBpcyBtb2RpZmllZCwgcmVidWlsZCBhY2xvY2FsLm00LiAgSWYKKyAgICBhY2xvY2FsLm00IG9yIGNvbmZpZ3VyZS5pbiBhcmUgbW9kaWZpZWQsIHJlYnVpbGQgY29uZmlndXJlLmluLgorICAgIGNvbmZpZy5oLmluIGdldHMgcmVidWlsdCBpZiBjb25maWd1cmUuaW4gaXMgbW9kaWZpZWQuICBBbmQsIGxhc3RseSwKKyAgICBjb25maWd1cmUgaXMgcmVydW4sIGlmIGNvbmZpZ3VyZSBvciBjb25maWcuaC5pbiBpcyBtb2RpZmllZC4KKworU3VuIE1heSAxOSAwNDowOToyNSBDRFQgMjAwMiBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGRlYmlhbi9ydWxlczogRml4IHRhcmdldHMsIHNvIHRoYXQgaWYgY29uZmlndXJlIGZhaWxzLCBidXQgYWN0dWFsbHkKKyAgICBzdWNjZWVkcyBpbiBjcmVhdGluZyBjb25maWcuc3RhdHVzKGFzIG1pZ2h0IGhhcHBlbiBpZiBvbmUgaGFzIGEKKyAgICBjLXN0eWxlIGNvbW1lbnQgaW4gY29uZmlndXJlLmluLCBhbmQgdGhlIHNoZWxsIHRyeXMgcnVubmluZyAvZm9vKSwgdGhlbgorICAgIHRoZSBidWlsZCB3aWxsIGFjdHVhbGx5IGZhaWwgY29ycmVjdGx5LgorCitTdW4gTWF5IDE5IDAyOjMxOjExIENEVCAyMDAyIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogYWNjb25maWcuaDogT29wcy4gIEZvcmdvdCB0byBhZGQgI3VuZGVmIEhBVkVfR05VQzI1X1VOVVNFRC4KKworU3VuIE1heSAxOSAwMjozMToxMSBDRFQgMjAwMiBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGNvbmZpZy5oLmJvdCwgY29uZmlndXJlLmluLCBvcHRsaWIvZ2V0b3B0LmM6IERlZmluZSBhbiBVTlVTRUQgbWFjcm8sCisgICAgZm9yIF9fYXR0cmlidXRlX18oKHVudXNlZCkpLgorCitTdW4gTWF5IDE5IDAyOjMxOjExIENEVCAyMDAyIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogb3B0bGliL2Vycm9yLmgsIG9wdGxpYi9nZXRvcHQuYywgdXRpbHMvc3RhcnQtc3RvcC1kYWVtb24uYzogVXNlCisgICAgdGhlIGNvbmZpZ3VyZSBkZXRlY3RlZCBnY2MgX19hdHRyaWJ1dGVfXyBtYWNyb3MsIGluc3RlYWQgb2YKKyAgICBoYXJkLWNvZGluZyB0aGVtLgorCitUaHUgTWF5IDE2IDE5OjA5OjQ4IENFU1QgMjAwMiBXaWNoZXJ0IEFra2VybWFuIDx3aWNoZXJ0QGRlZXBoYWNrbW9kZS5vcmc+CisKKyAgKiBwby9kYS5wbzogTmV3IHZlcnNpb24gZnJvbSBDbGF1cyBIaW5kc2dhdWwgPGNsYXVzX2hAaW1hZ2UuZGs+CisKK01vbiBNYXkgMTMgMjI6NDQ6NDggQ0VTVCAyMDAyIFdpY2hlcnQgQWtrZXJtYW4gPHdpY2hlcnRAZGVlcGhhY2ttb2RlLm9yZz4KKworICAqIG1hbi9lbi9kcGtnLjguc2dtbDogZG9jdW1lbnQgLS1mb3JjZS1jb25mbWlzcyBhbmQgLS1mb3JjZS1iYWQtdmVyaWZ5CisKK01vbiBNYXkgIDYgMTY6MjY6NTEgQ0VTVCAyMDAyIFdpY2hlcnQgQWtrZXJtYW4gPHdpY2hlcnRAZGVlcGhhY2ttb2RlLm9yZz4KKworICAqIGxvdHMtYS1maWxlczogdXBkYXRlIGVtYWlsIGFkZHJlc3MgZm9yIElhbiBKYWNrc29uCisKK1N1biBNYXkgIDUgMjI6Mjc6NTAgQ0VTVCAyMDAyIFdpY2hlcnQgQWtrZXJtYW4gPHdpY2hlcnRAZGVlcGhhY2ttb2RlLm9yZz4KKworICAqIGNvbmZpZ3VyZS5pbjogZXhwYW5kIGFsbCBwYXRocyBiZWZvcmUgZG9pbmcgc3Vic3RpdHV0aW9uCisKK1N1biBNYXkgIDUgMTc6NDI6MjEgQ0VTVCAyMDAyIFdpY2hlcnQgQWtrZXJtYW4gPHdpY2hlcnRAZGVlcGhhY2ttb2RlLm9yZz4KKworICAqIE1ha2VmaWxlLmNvbmYuaW46IHVzZSBAUEFDS0FHRUAgZm9yIGRwa2djb25mZGlyIGFzIHdlbGwKKyAgKiBtYW4vcGF0aHMuZW50LmluOiBuZXcgZmlsZQorICAqIGNvbmZpZ3VyZS5pbjogZ2VuZXJhdGUgbWFuL3BhdGhzLmVudAorCitTdW4gQXByIDIxIDEyOjIzOjQwIENFU1QgMjAwMiBXaWNoZXJ0IEFra2VybWFuIDx3aWNoZXJ0QGRlZXBoYWNrbW9kZS5vcmc+CisKKyAgKiBpbmNsdWRlL2Rwa2cuaC5pbjogYWRkIERJRkYgI2RlZmluZQorICAqIG1haW4vY29uZmlndXJlLmM6IHVzZSBpdAorCitTdW4gQXByIDE0IDE2OjEzOjE2IENFU1QgMjAwMiBXaWNoZXJ0IEFra2VybWFuIDx3aWNoZXJ0QGRlZXBoYWNrbW9kZS5vcmc+CisKKyAgKiBtYW4vZW4vZGViLW9sZC41LnNnbWw6IERvY0Jvb2sgdmVyc2lvbiBvZiBkZWItb2xkIG1hbnBhZ2UKKyAgKiBtYW4vZW4vY2xlYW51cC1pbmZvLjguc2dtbDogRG9jQm9vayB2ZXJzaW9uIG9mIGNsZWFudXAtaW5mbyBtYW5wYWdlCisgICogbWFuL2VuL2Rwa2ctY2hlY2tidWlsZGRlcHMuMS5zZ21sOiBEb2NCb29rIHZlcnNpb24gb2YgZHBrZy1jaGVja2J1aWxkcworICAgIG1hbnBhZ2UKKworU3VuIEFwciAxNCAwMDo0OTowOSBDRVNUIDIwMDIgV2ljaGVydCBBa2tlcm1hbiA8d2ljaGVydEBkZWVwaGFja21vZGUub3JnPgorCisgICogc2NyaXB0cy9jb250cm9sbGxpYi5wbDogYWNjZXB0IG11bHRpbHBlIGNvbnNlY3V0aXZlIGVtcHR5IGxpbmVzCisKK1NhdCBBcHIgMTMgMjI6NTk6MjUgQ0VTVCAyMDAyIFdpY2hlcnQgQWtrZXJtYW4gPHdpY2hlcnRAZGVlcGhhY2ttb2RlLm9yZz4KKworICAqIG1hbi9lbi9kZWItY29udHJvbC41LnNnbWw6IERvY0Jvb2sgdmVyc2lvbiBvZiBkZWItY29udHJvbCBtYW5wYWdlCisKK1NhdCBBcHIgMTMgMTg6MDc6NDggQ0VUIDIwMDIgcGV0ZXIga2FybHNzb24gPHBldGVya0BkZWJpYW4ub3JnPgorCisgICogcG8vc3YucG86IFJlbW92ZWQgZnV6enkgdHJhbnNsYXRpb24uCisKK1NhdCBBcHIgMTMgMTg6MzQ6MDkgQ0VTVCAyMDAyIFdpY2hlcnQgQWtrZXJtYW4gPHdpY2hlcnRAZGVlcGhhY2ttb2RlLm9yZz4KKworICAqIG1hbi9lbi9kc2VsZWN0Ljguc2dtbDogRG9jQm9vayB2ZXJzaW9uIG9mIGRzZWxlY3QgbWFucGFnZQorICAqIG1hbi9lbi9kc2VsZWN0LmNmZy41LnNnbWw6IERvY0Jvb2sgdmVyc2lvbiBvZiBkc2VsZWN0LmNmZyBtYW5wYWdlCisgICogbWFuL2VuL2Rwa2cuY2ZnLjUuc2dtbDogRG9jQm9vayB2ZXJzaW9uIG9mIGRwa2cuY2ZnIG1hbnBhZ2UKKyAgKiBtYW4vZW4vZGViLjUuc2dtbDogRG9jQm9vayB2ZXJzaW9uIG9mIGRlYiBtYW5wYWdlCisKK0ZyaSBBcHIgMTIgMTg6NDY6MTYgQ0VTVCAyMDAyIFdpY2hlcnQgQWtrZXJtYW4gPHdpY2hlcnRAZGVlcGhhY2ttb2RlLm9yZz4KKworICAqIG1hbi9lbi9kcGtnLjguc2dtbDogRG9jQm9vayB2ZXJzaW9uIG9mIGRwa2cgbWFucGFnZQorCitXZWQgQXByIDEwIDAwOjM5OjU4IENFU1QgMjAwMiBXaWNoZXJ0IEFra2VybWFuIDx3aWNoZXJ0QGRlZXBoYWNrbW9kZS5vcmc+CisKKyAgKiBjb25maWd1cmUuaW46IHVzZSBBQ19TWVNfTEFSR0VGSUxFIGFuZCBidW1wIGF1dG9jb25mIHJlcXVpcmVtZW50IHRvIDIuNTAKKyAgICBzaW5jZSAyLjEzIGRvZXMgbm90IGluY2x1ZGUgQUNfU1lTX0xBUkdFRklMRQorICAqIHV0aWxzL21kNXN1bS5oOiBpbmNsdWRlIGNvbmZpZy5oIGVhcmxpZXIgc28gd2UgcGljayB1cCB0aGUgTEZTIGZsYWdzCisgICAgYmVmb3JlIGluY2x1ZGluZyB0aGUgc3lzdGVtIGluY2x1ZGVmaWxlcworICAqIHNjcmlwdHMvZHBrZy1zb3VyY2UuMTogZml4IHR5cG8gKHNobGliIGluc3RlYWQgb2Ygc2hsaWJzKQorCitNb24gQXByICAxIDE4OjU3OjAyIENFU1QgMjAwMiBXaWNoZXJ0IEFra2VybWFuIDx3aWNoZXJ0QGRlZXBoYWNrbW9kZS5vcmc+CisKKyAgKiBkc2VsZWN0L3BrZ2RlcGNvbi5jYzogdHJlYXQgZW5oYW5jZXMgbGlrZSBzdWdnZXN0cyBpbgorICAgIHBhY2thZ2VsaXN0OjpyZXNvbHZlZGVwY29uKCkKKworTW9uIE1hciAxMSAyMzoyMjozNyBDU1QgMjAwMiBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGNvbmZpZ3VyZS5pbjogQmFkIFdpY2hlcnQuICBBbHdheXMgbW9kaWZ5IGNvbmZpZ3VyZS5pbiB3aGVuIGFkZGluZworICAgIHN1YmRpcnMoYWRkIHB0X0JSKS4KKworRnJpIE1hciAgMSAyMzo1MTowNiBDU1QgMjAwMiBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIE1ha2VmaWxlLmluOiBBbGxvdyBmb3IgbWFrZSAtaiB0byB3b3JrIHRocnUgdGhlIHRvcC1sZXZlbCB0YXJnZXRzLgorICAgIFRoZXJlIGFyZSBwcm9ibGVtcywgaG93ZXZlciwgYXMgdGhlIHN5c3RlbSB3aWxsIHRyeSB0byBjb21waWxlIHRoZQorICAgIHByb2dyYW1zIGJlZm9yZSBsaWJkcGtnIGlzIGRvbmUuCisKK0ZyaSBNYXIgIDEgMjM6Mjc6MTYgQ1NUIDIwMDIgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBtYWluL2hlbHAuYywgZGViaWFuL2NoYW5nZWxvZzogRml4IHNlZ2ZhdWx0IHdpdGggZ2V0ZW52KCJQQVRIIikgcmV0dXJucworICAgIG51bGwuCisKK0ZyaSBNYXIgIDEgMjM6MjI6NTUgQ1NUIDIwMDIgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBjb25maWd1cmUuaW46IFJlbW92ZSBvbGQgZG9jLyovTWFrZWZpbGUuICBCYWQgV2ljaGVydC4KKworRnJpIE1hciAgMSAyMzoyMTozNSBDU1QgMjAwMiBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIHBvL3B0X0JSLnBvOiBGaXggYnJva2VuIHRyYW5zbGF0aW9ucy4KKworTW9uIEZlYiAyNSAxNToyMjozNCBDRVQgMjAwMiBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6IEZpeCB0ZXN0IGZvciBpbmNvcnJlY3QgcGFja2FnZW5hbWUKKyAgICBmb3IgLXAgb3B0aW9uLgorCitTYXQgRmViIDE2IDE1OjE0OjMwIENFVCAyMDAyIHBldGVyIGthcmxzc29uIDxwZXRlcmtAZGViaWFuLm9yZz4KKworICAqIG1hbi9zdi9kZWItY29udHJvbC41LCBkZWItb2xkLjUsIGRlYi41LCBkcGtnLXNwbGl0LjgsCisgICAgc3RhcnQtc3RvcC1kYWVtb24uODogRml4ZWQgQ1ZTIHJldmlzaW9uIHBvaW50ZXJzIGFmdGVyIG1vdmUgYW5kCisgICAgdXBkYXRlZCB0cmFuc2xhdGlvbnMgdG8gbWF0Y2ggbGF0ZXN0IHZlcnNpb25zLgorICAqIG1hbi9zdi9kcGtnLmNmZy41LCBtYW4vc3YvZHNlbGVjdC5jZmcuNTogVHJhbnNsYXRlZCBuZXcgZmlsZXMuCisgICogbWFuL2VuL2RzZWxlY3QuY2ZnLjU6IEZpeGVkIG51bWVyb3VzIGNvcHknbidwYXN0ZSBlcnJvcnMuCisKK1N1biBGZWIgMTAgMDE6NDA6NTIgQ0VUIDIwMDIgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIHV0aWxzL3N0YXJ0LXN0b3AtZGFlbW9uLmM6IGFkZCBGcmVlQlNEIHN1cHBvcnQKKworU3VuIEZlYiAxMCAwMTozMTo1NyBDRVQgMjAwMiBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogbWFuL2VuL2RzZWxlY3QuY2ZnLjUsIG1hbi9lbi9kcGtnLmNmZy41OiBuZXcgZmlsZXMKKyAgKiBtYW4vZW4vTWFrZWZpbGUuaW46IGluc3RhbGwgbmV3IG1hbnBhZ2VzCisKK1N1biBGZWIgMTAgMDE6MTY6NTggQ0VUIDIwMDIgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIHNjcmlwdHMvdXBkYXRlLWFsdGVybmF0aXZlcy5wbDogSW1wcm92ZSB3b3JraW5nIG9mIC0tY29uZmlnIG91dHB1dAorCitUaHUgRmViICA3IDE1OjI3OjM1IENFVCAyMDAyIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBtYWluL3Byb2Nlc3NhcmMuYzogY29weSBvcmlnaW4gYW5kIGJ1Z3MgaW5mbyBpbnRvIHN0YXR1cyBmaWxlCisKK1RodSBGZWIgIDcgMDA6Mzg6NDIgQ0VUIDIwMDIgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIHBvL3B0X0JSLnBvOiBGaXggYm9nb3NpdHkgaW4gcHJldmlvdXMgdXBkYXRlCisKK1RodSBGZWIgIDcgMDA6Mjg6MzUgQ0VUIDIwMDIgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIHNjcmlwdHMvdXBkYXRlLWFsdGVybmF0aXZlcy5wbDogZml4IGxvZ2ljIGVycm9yLCBhbHRlcm5hdGl2ZXMgYXJlCisgICAgbm93IGNvcnJlY3RseSByZXN0b3JlZCB0byBhdXRvIHdoZW4gcmVtb3ZpbmcgYSBtYW51YWxseSBzZWxlY3RlZAorICAgIGFsdGVybmF0aXZlCisKK1dlZCBGZWIgIDYgMTI6Mjk6MTggQ0VUIDIwMDIgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIGRzZWxlY3QvbWV0aG9kLmNjOiBjaGVjayBmZ2V0YygpIGZvciBFT0YgcmV0dXJuIHNvIHdlIGRvbid0IHNwaW4KKyAgICBpZiB3ZSBjYW4ndCByZWFkIGlucHV0CisKK1N1biBGZWIgIDMgMjI6MjE6MDggQ0VUIDIwMDIgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIHBvL2ZyLnBvOiBVcGRhdGVkCisKK1N1biBGZWIgIDMgMjA6NDQ6MjAgQ0VUIDIwMDIgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIHBvL3B0X0JSLnBvOiBVcGRhdGVkCisKK1N1biBGZWIgIDMgMDE6NTA6MDIgQ0VUIDIwMDIgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIGRvYy9yZWZlcmVuY2Uuc2dtbDogbmV3IGZpbGUKKworU2F0IEZlYiAgMiAyMzowMDoyNSBDRVQgMjAwMiBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogTW9yZSBpbXBvcnRzIGZyb20gdjFfOQorICAqIGRlYmlhbi9jaGFuZ2Vsb2c6IGFkZCBjaGFuZ2VzIGZyb20gMS45LjE4IGFuZCAxLjkuMTkKKyAgKiBkZWJpYW4vZHBrZy5jb25mZmlsZXM6IE1hcmsgL2V0Yy9hbHRlcm5hdGl2ZXMvUkVBRE1FIGFzIGEgY29uZmZpbGUuCisgICogZGViaWFuL2NvbnRyb2w6IENoYW5nZWQgbWFpbnRhaW5lciB0byBkZWJpYW4tZHBrZ0BsaXN0cyBhbmQgYWRkIFVwbG9hZGVycworICAqIG1haW4vcHJvY2Vzc2FyYy5jOiBGaXggTUQ1U3VtIGNvcnJ1cHRpb24gd2hlbiB1cGdyYWRpbmcgYSBwYWNrYWdlLCBhbmQKKyAgICB0aGUgd2lkdGggb2YgdGhlIEFTQ0lJIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBmaWxlIHN5c3RlbSBpbmNyZWFzZWQgYnkKKyAgICBvbmUsIHRoZXJlYnkgb3ZlcndyaXRpbmcgdGhlIHN0YXJ0IG9mIHRoZSBNRDVTdW0gZmllbGQuICBUaGlzIG1heSBhbHNvCisgICAgZml4IGEgc2VnZmF1bHQgaW4gY2VydGFpbiBjYXNlcy4KKworU2F0IEZlYiAgMiAyMjo1OTowNiBDRVQgMjAwMiBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogc2NyaXB0cy9pbnN0YWxsLWluZm8ucGw6IENvbnRpbnVlIHRvIHJlYWQgYWxsIGRhdGEgZnJvbSBhIHBpcGUsIHVudGlsCisgICAgRU9GLiAgCisKK1NhdCBGZWIgIDIgMjI6NTI6NTAgQ0VUIDIwMDIgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIHNjcmlwdHMvZHBrZy1nZW5jb250cm9sOiBNYWtlIGRwa2ctZ2VuY29udHJvbCBub3Qgd2FybiBhYm91dCBVcGxvYWRlcnMuCisKK1NhdCBGZWIgIDIgMTg6MTQ6MjQgQ0VUIDIwMDIgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIG1hbi9NYWtlZmlsZS5pbjogYWRkIHB0X0JSIHRvIFNVQkRJUlMKKyAgKiBtYW4vcHRfQlIvTWFrZWZpbGUuaW4sIG1hbi9wdF9CUi91cGRhdGUtYWx0ZXJuYXRpdmVzLjgsCisgICAgbWFuL3B0X0JSLy5jdnNpZ25vcmU6IG5ldyBmaWxlcworCitTYXQgRmViICAyIDE2OjQ3OjQxIENFVCAyMDAyIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBNYWtlZmlsZS5pbjogYWRkIG1hbiB0byBzdWJkaXJzCisgICogbWFuLyo6IG5ldyBkaXJlY3Rvcnkgd2l0aCBhbGwgbWFucGFnZXMKKworU2F0IEZlYiAgMiAxNjoyMzo0MyBDRVQgMjAwMiBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIHBvL2RhLnBvOiBVcGRhdGVkCisKK1NhdCBGZWIgIDIgMDA6MTg6MDQgQ0VUIDIwMDIgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIGF1dG9tYWtlL2Rwa2cubTQ6IGFkZCBEUEtHX0NIRUNLX0RFRklORQorICAqIGNvbmZpZ3VyZS5pbjogdGVzdCBmb3IgVElPQ05PVFRZIGluIHN5cy9pb2N0bC5oCisgICogdXRpbHMvc3RhcnQtc3RvcC1kYWVtb24uYzogbW92ZSB0dHkgY2hhbmdlIG91dHNpZGUgT1Mgc3BlY2lmaWMgaWZkZWYKKyAgICBhbmQgdXNlIHRoZSBuZXcgVElPQ05PVFRZIHRlc3QgaW5zdGVhZAorCitGcmkgRmViICAxIDE5OjEwOjAyIENFVCAyMDAyIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBwby9jYS5wbzogTmV3IENhdGFsYW4gdHJhbnNsYXRpb24KKyAgKiBjb25maWd1cmUuaW46IEFkZCBjYSB0byBMSU5HVUFTCisKK0ZyaSBGZWIgIDEgMTc6Mzc6MjQgQ0VUIDIwMDIgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIGNvbmZpZ3VyZS5pbjogYWRkIHRlc3QgZm9yIHNldHNpZAorICAqIHV0aWxzL3N0YXJ0LXN0b3AtZGFlbW9uLmM6IHVzZSBzZXRzaWQgaWYgaXQgZXhpc3RzIGFuZCBvbmx5IHVzZQorICAgIHNldHBnaWQgaWYgaXQgZG9lcyBub3QgZXhpc3QKKworRnJpIEZlYiAgMSAxNjo0MToyMyBDRVQgMjAwMiBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogdXRpbHMvc3RhcnQtc3RvcC1kYWVtb24uYzogTWVyZ2UgcGF0Y2ggZnJvbSBBbmRyZXMgVm9lZ2VsZQorICAgIDx2b2VnZWxhc0B1c2Vycy5zb3VyY2Vmb3JnZS5uZXQ+IHRvIGFkZCBIUC1VWCBzdXBwb3J0CisgICAgCitGcmkgRmViICAxIDEzOjU4OjU5IENFVCAyMDAyIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBwby9mci5wbzogdXBkYXRlZC4KKworVGh1IEphbiAzMSAyMTozNDoxNCBDRVQgMjAwMiBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogc2NyaXB0cy9pbnN0YWxsLWluZm8ucGw6IGFkZCAtYyBvcHRpb24gdG8gZ3ppcCBpbnZvY2F0aW9uCisKK1RodSBKYW4gMzEgMTQ6NTY6MzggQ0VUIDIwMDIgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIGRvYy9mci9pbnN0YWxsLWluZm8uOCwgZG9jL2ZyL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuODogdXBkYXRlZCB3aXRoCisgICAgbmV3IHZlcnNpb24gZnJvbSBQaGlsaXBwZSBCYXRhaWxsZXIKKworV2VkIEphbiAzMCAxMDozMTozOCBDRVQgMjAwMiBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogc2NyaXB0cy91cGRhdGUtYWx0ZXJuYXRpdmUucGw6IGV4aXQgd2l0aCBub24temVybyBleGl0Y29kZSB3aGVuCisgICAgZG9pbmcgLS1kaXNwbGF5IGZvciBhIG5vbmV4aXN0aW5nIGFsdGVybmF0aXZlCisKK1dlZCBKYW4gMzAgMDA6Mjk6MDcgQ0VUIDIwMDIgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIHNwbGl0L01ha2VmaWxlLmluOiBjcmVhdGUgcGFydHMgZGlyZWN0b3J5CisKK1dlZCBKYW4gMzAgMDA6MjQ6MzYgQ0VUIDIwMDIgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIHV0aWxzL3N0YXJ0LXN0b3AtZGFlbW9uLmM6IEZpeCB0eW9wIGluIGhlbHAgbWVzc2FnZQorCitGcmkgSmFuIDE4IDIwOjQwOjQyIENFVCAyMDAyIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOiBVc2UgLVogb3B0aW9uIGZvciBwYXRjaCBhbmQgc2V0IFRaIHRvIFVUQzAKKyAgICB3aGVuIGNhbGxpbmcgZGlmZi4gVGhpcyBnaXZlcyB1cyByZWxpYWJsZSB0aW1lc3RhbXBzIGluIGRpZmZzLgorCitUaHUgSmFuICAzIDE1OjQ5OjE0IENFVCAyMDAyIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbCwgc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbCwKKyAgICBzY3JpcHRzL2Rwa2ctc2NhbnNvdXJjZXMucGw6IEFjY2VwdCBHTlUgbWQ1c3VtIHN0eWxlIG91dHB1dAorCitUaHUgSmFuICAzIDE1OjIwOjI1IENFVCAyMDAyIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiB1dGlscy9tZDVzdW0uYzogYWRkIGVycm9yIGhhbmRsaW5nIHRvIGRvX2NoZWNrCisKK1dlZCBKYW4gIDIgMTY6MDg6MDIgQ0VUIDIwMDIgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6IFVwZGF0ZSBkZWZhdWx0IGlnbm9yZSBleHByZXNzaW9uIHRvIGFsc28KKyAgICBtYXRjaCAqfiBhbmQgKi5zd3AgaW4gc3ViZGlycy4KKworV2VkIEphbiAgMiAxNTowMDoyNiBDRVQgMjAwMiBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogc2NyaXB0cy9kcGtnLWNoZWNrYnVpbGRkZXBzLnBsOiB1c2Ugc3BhY2Ugc2VwYXJhdGVkIG91dHB1dCBpbnN0ZWFkCisgICAgb2YgY29tbWEgc2VwYXJhdGVkCisKK1R1ZSBKYW4gIDEgMTQ6MTA6NTUgQ0VUIDIwMDIgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIGFyY2h0YWJsZSwgc2NyaXB0cy9kcGtnLWFyY2hpdGVjdHVyZS5wbDogVXBkYXRlIFN1cGVySCBhcmNoaXRlY3R1cmUKKworTW9uIERlYyAzMSAxNzozODoyNiBDRVQgMjAwMSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogZHNlbGVjdC9tYWluLmNjLCBtYWluL21haW4uYywgbWFpbi9xdWVyeS5jOiBubyBsb25nZXIgc2V0IExDX0NUWVBFCisgICAgdG8gQyBzaW5jZSB0aGF0IGJyZWFrcyB0aGUgYnJhaW5kZWFkIGdldHRleHQuCisgICogZHBrZy1kZWIvYnVpbGQuYywgbGliL2RibW9kaWZ5LmMsIGxpYi92ZXJjbXAuYywgbWFpbi9yZW1vdmUuYzogU3dpdGNoCisgICAgdG8gdXNpbmcgY2lzZGlnaXQgYW5kIGNpc2FscGhhLgorCitNb24gRGVjIDMxIDE3OjI4OjEwIENFVCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBsaWIvdXRpbHMuYzogbmV3IGZpbGUgd2l0aCBnZW5lcmFsIHV0aWxpdHkgZnVuY3Rpb25zLiBBZGQKKyAgICBjaXNhbHBoYSgpIGFuZCBjaXNkaWdpdCgpIGZ1bmN0aW9ucywgc2ltaWxhciB0byB0aGUgY3R5cGUgaXMqCisgICAgb25lcyBidXQgd2hpY2ggb25seSBhY2NlcHQgQyBsb2NhbGUKKyAgKiBsaWIvTWFrZWZpbGUuaW46IGFkZCB1dGlscy5jCisgICogaW5jbHVkZS9kcGtnLmg6IGFkZCB1dGlscy5jIGZ1bmN0aW9ucworCitNb24gRGVjIDMxIDE1OjI1OjQ2IENFVCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLnBsOiBmaXggc3ludGF4IGVycm9yCisKK1dlZCBOb3YgMjggMTg6MTE6MzggQ1NUIDIwMDEgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBzY3JpcHRzL2Rwa2ctY2hlY2tidWlsZGRlcHMuezEscGx9OiBNYWtlIGRwa2ctY2hlY2tidWlsZGRlcHMgYWx3YXlzCisgICAgY2hlY2sgZm9yIGJ1aWxkLWVzc2VudGlhbC4KKworV2VkIE5vdiAyOCAxNzo0NjoyMyBDU1QgMjAwMSBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGRlYmlhbi9jaGFuZ2Vsb2c6IE5vdGUgdGhhdCB0aGUgZHNlbGVjdC5kZWIgc3BsaXQgY2xvc2VzIGEgYnVnLgorCitXZWQgTm92IDI4IDE3OjQwOjUyIENTVCAyMDAxIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogc2NyaXB0cy91cGRhdGUtYWx0ZXJuYXRpdmVzLntwbCw4fTogQXBwbHkgcGF0Y2ggZnJvbSBkZWJpYW4gYnVnIDEyMDkyNCwKKyAgICB0byBnaXZlIHVwZGF0ZS1hbHRlcm5hdGl2ZXMgYSAtLWxpc3QgY29tbWFuZC4KKworV2VkIE5vdiAyOCAxNzozMDoxNiBDU1QgMjAwMSBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIHV0aWxzL21kNXN1bS5jOiBXaGVuIHBhcnNpbmcgc3RkaW4sIG1kNXN1bSBub3cgZGlzcGxheXMgJy0nIGFzIHRoZQorICAgIGZpbGVuYW1lLCB0byBtYXRjaCB0ZXh0dXRpbHMgbWQ1c3VtLgorCitXZWQgTm92IDI4IDE3OjIwOjI4IENTVCAyMDAxIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogc2NyaXB0cy9pbnN0YWxsLWluZm8ucGw6IENvcHkgZGlyIGZyb20gYmFja3VwIGlmIHRoZSBmaWxlIGlzIGVtcHR5CisgICAgYXMgd2VsbC4KKworU2F0IE5vdiAxNyAxNzoyMDo1MiBDRVQgMjAwMSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogZG9jL3N2L01ha2VmaWxlLmluOiBpbnN0YWxsIGRwa2ctcXVlcnkgYW5kIGRwa2ctZGViIG1hbnBhZ2VzCisKK1NhdCBOb3YgMTcgMTc6MTY6NDQgQ0VUIDIwMDEgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIGRlYmlhbi9jb250cm9sOiBhZGQgbWlzc2luZyBzcGFjZSBpbiBkcGtnLWRvYyBkZXNjcmlwdGlvbgorCitTYXQgTm92IDE3IDE1OjU3OjU3IENFVCAyMDAxIHBldGVyIGthcmxzc29uIDxwZXRlcmtAZGViaWFuLm9yZz4KKworICAqIGRvYy9zdi9kcGtnLXF1ZXJ5LjgsIGRwa2ctZGViLjE6IEluaXRpYWwgU3dlZGlzaCB0cmFuc2xhdGlvbi4KKyAgICBkcGtnLjg6IFRyYW5zbGF0aW9uIGZpeHVwcy4KKyAgKiBkcGtnL2Rwa2ctcXVlcnkuODogQ29ycmVjdGVkIHNwZWxsaW5nLgorCitUaHUgT2N0IDI1IDE2OjU2OjA2IEpTVCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBwby97ZGUsaXQscHRfQlIsc3Z9LnBvOiBGaXggdHJhbnNsYXRpb24gd2l0aCBpbmNvbnNpc3RlbnQgcHJpbnRmCisgICAgZm9ybWF0IHN0cmluZ3MKKworU3VuIE9jdCAyMSAxMjo1ODowNCBDRFQgMjAwMSBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIG9wdGxpYi9NYWtlZmlsZS5pbjogUnVuIHJhbmxpYiBhZnRlciBjcmVhdGluZyB0aGUgbGlicmFyeS4KKworU3VuIE9jdCAyMSAxMjo1NjozNyBDRFQgMjAwMSBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGFyY2h0YWJsZSwgc2NyaXB0cy9kcGtnLWFyY2hpdGVjdHVyZS5wbDogQWRkIGRhcndpbi4gIFRoZSBzb3VyY2UKKyAgICBkb2Vzbid0IHF1aXRlIHdvcmsgeWV0IG9uIGRhcndpbiBob3dldmVyLCBhcyBzb21lIG9mIHRoZSBjaGFuZ2VzIGFyZQorICAgIGJlaW5nIGRpc2N1c3NlZC4KKworU3VuIE9jdCAyMSAwMzo1NzowOCBDRVNUIDIwMDEgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIHBvL3BsLnBvOiBVcGRhdGVkCisKK1dlZCBPY3QgMTcgMTI6MzQ6MTkgQ0RUIDIwMDEgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBNZXJnZSAxLjkuMTcgYnJhbmNoOgorICAgICogZGViaWFuL3J1bGVzOiByZW1vdmUgdXBkYXRlLXJjLmQgZnJvbSB0aGUgcGFja2FnZQorICAgICogZGViaWFuL2NvbnRyb2w6IHVwZGF0ZSBjb25mbGljdCB3aXRoIHN5c3Zpbml0IHRvIGRlYWwgd2l0aCBtb3ZlZAorICAgICAgdXBkYXRlLXJjLmQKKworVHVlIE9jdCAxNiAxMzowOToyMSBDRVNUIDIwMDEgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIHBvL3BsLnBvOiBVcGRhdGVkCisKK1N1biBPY3QgMTQgMTU6MDQ6MjQgQ0VTVCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBwby9kYS5wbzogVXBkYXRlZAorCitNb24gT2N0ICA4IDE5OjUxOjM2IENEVCAyMDAxIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogbWFpbi9tYWluLmM6IFR1cm4gc2V0c3RhdHVzcGlwZSBpbnRvIGEgZ2VuZXJpYyBzZXRwaXBlLCBpbiBwcmVwYXJhdGlvbgorICAgIGZvciAtLXJlc3VsdC1mZC4KKworTW9uIE9jdCAgOCAxOTo0ODoyOCBDRFQgMjAwMSBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIG1haW4vbWFpbi5jOiBNYWtlIHN1cmUgdGhlIGludGVnZXIgcGFzc2VkIHRvIC0tcmVzdWx0LWZkIGlzIGNvcnJlY3QKKyAgICBiZWZvcmUgbWFuaXB1bGF0aW5nIHRoZSBwb2ludGVycyh3ZSBjaGVja2VkIGFmdGVyIHdlIG1hbmlwdWxhdGVkCisgICAgcHJldmlvdXNseSkKKworU3VuIE9jdCAgNyAyMjoyMzo1NCBDRFQgMjAwMSBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIE1ha2VmaWxlLmluOiBSZW1vdmUgZHVsaWNhdGUgaW5jbHVzaW9uIG9mIHV0aWxzIGluIFNVQkRJUlMuCisKK1N1biBPY3QgIDcgMTk6Mzg6NTYgQ0RUIDIwMDEgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBzY3JpcHRzL2luc3RhbGwtaW5mby5wbDogb29wcy4gIFdlIHdlcmVuJ3QgYWRkaW5nICdcbicgd2hlbiBwcmludGluZworICAgIG91dCB0aGUgcmVmb3JtYXRlZCBpbmZvIHRleHQuCisgCitTdW4gT2N0ICA3IDA1OjAwOjAyIENEVCAyMDAxIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogc2NyaXB0cy9pbnN0YWxsLWluZm8ucGw6IERvbid0IHByaW50IG91dCB0aGUgaW5mbyBlbnRyeSBldmVyeSB0aW1lIHdlCisgICAgYXJlIGNhbGxlZC4KKworU3VuIE9jdCAgNyAwMzoxMjozNSBDRFQgMjAwMSBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGRlYmlhbi9jb250cm9sOiBTZXZlcmFsIGZpeGVzOgorICAgICogZHBrZy1zdGF0aWMgbmVlZHMgdGhlIHNhbWUgc2V0IG9mIERlcGVuZHMoYW5kIG90aGVycykgbGluZXMgYXMgZHBrZy4KKyAgICAqIE1vZGlmeSB0aGUgZHBrZy1zdGF0aWMgZGVzY3JpcHRpb24gdG8gbm90ZSB0aGF0IGl0J3MgYSBzdGF0aWMKKyAgICAgIGNvbXBpbGUuCisgICAgKiBCdW1wIHRoZSBjb25mbGljdHMgb24gc3lzdmluaXQgdG8gMi44Mi0xLCBhcyB0aGF0IGlzIHRoZSB2ZXJzaW9uCisgICAgICB0aGF0IGFjdHVhbGx5IGhhcyB0aGUgcHJvcGVyIHJlcGxhY2VzIGxpbmUuCisgICogZGViaWFuL3J1bGVzOiBkcGtnLXN0YXRpYyB3YXMgYWN0dWFsbHkgYmVpbmcgYnVpbHQgYXMgZHBrZy5kZWIuCisKK1RodSBTZXAgMjAgMTc6MDY6NDggQ0VTVCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBkZWJpYW4vcnVsZXM6IHN0cmlwIGVub2VudCBhcyB3ZWxsCisKK1NhdCBTZXAgMTUgMjA6MTk6NTcgQ0RUIDIwMDEgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBzY3JpcHRzL2luc3RhbGwtaW5mby5wbDogU2V2ZXJhbCBmaXhlczoKKyAgICAqIE1vdmUgL3Vzci9pbmZvL2RpciB0byAvdXNyL3NoYXJlL2luZm8vZGlyLgorICAgICogSW1wcm92ZSBtZXNzYWdlIHdoZW4gbG9ja2luZyBhbmQgL3Vzci9zaGFyZS9pbmZvL2RpciBkb2Vzbid0IGV4aXN0LgorICAgICogVXNlIC92YXIvYmFja3Vwcy9pbmZvZGlyLmJhayBpZiB0aGUgYWJvdmUgZG9lc24ndCBleGlzdC4KKyAgICAqIEFsbG93IGZvciByZWxhdGl2ZSBmaWxlbmFtZXMsIGFuZCBhZGQgYSAtLXJlbW92ZS1leGFjdGx5IG9wdGlvbi4KKyAgICAqIFVzZSBzZWN0aW9uIGZyb20gdGhlIC5pbmZvIGZpbGUgaWYgLS1zZWN0aW9uIGlzIG5vdCBnaXZlbi4KKyAgICAqIEluY2x1ZGUgY3VycmVudCBmaWxlbmFtZSBpbiBlcnJvciBtZXNzYWdlcy4KKyAgICAqIEZvcm1hdCAvdXNyL3NoYXJlL2luZm8vZGlyIGVudHJpZXMgdG8gdW5pZm9ybSB3aWR0aC4KKyAgICAqIC0tY2FsaWdufC0tYWxpZ258LS1tYXh3aWR0aCBhcmUgbm93IGlnbm9yZWQuCisKK1dlZCBTZXAgMTIgMTg6NDU6NTcgQ0RUIDIwMDEgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgRml4ZXMgZm9yIGJ1aWxkaW5nIG9mIGRwa2ctc3RhdGljLmRlYi4KKyAgICAqIENhbid0IGJ1aWxkIGJvdGggZHBrZy5kZWIgYW5kIGRwa2ctc3RhdGljLmRlYiBpbiBzaW5nbGUgcnVuLCBiZWNhdXNlCisgICAgICAvZXRjIGlzIG1vdmVkIGZyb20gJChJTlNUQUxMX1RNUCksIGluc3RlYWQgb2YgY29waWVkLgorICAgICogZHBrZy1zdGF0aWMuZGViIGlzIGFkZGVkIHRvIGRlYmlhbi9maWxlcywgZXZlbiBpZiBpdCBpc24ndCBjcmVhdGVkLgorICAgICogZHBrZy1zdGF0aWMudGFyLmd6IGlzIGFkZGVkIHRvIGRlYmlhbi9maWxlcywgZXZlbiBpZiBpdCBkb2Vzbid0IGV4aXN0LgorCitXZWQgU2VwIDEyIDE3OjI4OjU3IENFU1QgMjAwMSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogZHBrZy1kZWIvbWFpbi5jOiBGaXggdW50ZXJtaW5hdGVkIGxpbmUgaW4gdXNhZ2UgdGV4dAorCitNb24gU2VwIDEwIDEyOjU3OjIxIFBEVCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBkcGtnLWRlYi9kcGtnLWRlYi5oOiBhZGQgcGFyc2Vmb3JtYXQgcHJvdG90eXBlCisgICogZHBrZy1kZWIvbWFpbi5jOiBhZGQgcGFyc2Vmb3JtYXQgYW5kIHNob3cgb3B0aW9ucywgY2hhbmdlIGxheW91dAorICAgIGZvciB1c2FnZSBpbmZvLCByZW1vdmUgY29weXJpZ2h0IGZyb20gdmVyc2lvbiBvdXRwdXQgYW5kIHJlZmVyIHRvCisgICAgdGhlIGRwa2cgLS1saWNlbnNlIG9wdGlvbiBpbnN0ZWFkCisgICogZHBrZy1kZWIvaW5mby5jOiBpbXBsZW1lbnQgZG9fc2hvdworCitNb24gU2VwIDEwIDEyOjQxOjE0IFBEVCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBtYWluL3Nob3dwa2cuYzogbW92ZSB0byBsaWIvIHNvIG11bHRpcGxlIHRvb2xzIGNhbiBzaGFyZSBpdAorICAqIG1haW4vTWFrZWZpbGUuaW46IHJlbW92ZSBzaG93cGtnLmMKKyAgKiBsaWIvTWFrZWZpbGUuaW46IGFkZCBzaG93cGtnLmMKKyAgKiBpbmNsdWRlL2Rwa2ctZGIuaDogYWRkIHNob3dwa2cuYyBwcm90b3R5cGVzCisgICogbWFpbi9xdWVyeS5oOiBvYnNvbGV0ZSBub3csIHJlbW92ZWQKKworTW9uIFNlcCAxMCAxMjowNzoyMCBQRFQgMjAwMSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogZHBrZy1kZWIvaW5mby5jOiBjb3VudCBob3cgbWFueSBjb250cm9sIGNvbXBvbmVudHMgYXJlIG1pc3NpbmcKKyAgICBpbiBpbmZvX3NwZXcoKQorICAqIG1haW4vcHJvY2Vzc2FyYy5jOiBjaGFuZ2UgdHdvIG1vcmUgMHMgaW50byBOVUxMcworCitNb24gU2VwIDEwIDEwOjU5OjUzIFBEVCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBpbmNsdWRlL3BhcnNlZHVtcC5oLCBsaWIvZHVtcC5jOiBhZGQgZmxhZ3MgdG8gZndyaXRlZnVuY3Rpb24uCisgICAgSW1wbGVtZW50IGZ3X3ByaW50aGVhZGVyIHRvIHRvZ2dsZSBwcmludGluZyBvZiBmaWVsZCBoZWFkZXJzLgorICAqIG1haW4vc2hvd3BrZy5jOiBtb2RpZnkgc2hvdzFwYWNrYWdlKCkgdG8gbm8gbG9uZ2VyIHJlbW92ZSB0aGUKKyAgICBmaWVsZG5hbWUgYW5kIG5ld2xpbmUgaXRzZWxmIGJ1dCBtYWtlIHdjYWxsIG5vdCBwcmludCBpdCBpbnN0ZWFkCisKK01vbiBTZXAgMTAgMDk6NDQ6NTQgUERUIDIwMDEgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIGxpYi9kdW1wLmM6IG1ha2Ugd19ib29sZWFuZGVmbm8gZ2V0IHRoZSBmaWVsZG5hbWUgZnJvbSB0aGUgZmlwCisgICAgaW5zdGVhZCBvZiBoYXJkY29kaW5nIEVzc2VudGlhbAorICAqIGxpYi9maWVsZHMuYzogZG9uJ3QgaGFyY29kZSBgZXNzZW50aWFsJyBmaWVsZG5hbWUgaW4gZl9ib29sZWFuCisgICAgIGNvbnZlcnRfc3RyaW5nIGNhbGwKKworU3VuIEF1ZyAxOSAxNToyMDo1MyBDRVNUIDIwMDEgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIHV0aWxzL3N0YXJ0LXN0b3AtZGFlbW9uLmM6IGRvIG5vdCBzdGFydCBhIGNvbW1hbmQgaWYgdGhlIHBpZGZpbGUKKyAgICBvcHRpb24gaXMgdXNlZCBhbmQgdGhlIHBpZCBpbiB0aGF0IGZpbGUgaXMgc3RpbGwgcnVubmluZworCitTdW4gQXVnIDE5IDAwOjI1OjEyIENFU1QgMjAwMSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogZG9jL2ZyL2Rwa2cte3F1ZXJ5LHNwbGl0LHN0YXRvdmVycmlkZX0uODogYWRkZWQKKyAgKiBkb2MvZnIvKjogVXBkYXRlZAorCitUaHUgQXVnIDE2IDAwOjQzOjIzIENFU1QgMjAwMSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogcG8vZnIucG86IFVwZGF0ZWQKKworU2F0IEF1ZyAxMSAyMjo1NDoxOCBDRVNUIDIwMDEgcGV0ZXIga2FybHNzb24gPHBldGVya0BkZWJpYW4ub3JnPgorCisgICogcG8vc3YucG8sIGRvYy9zdi9kcGtnLjg6IFVwZGF0ZWQgU3dlZGlzaCB0cmFuc2xhdGlvbi4KKworV2VkIEF1ZyAgMSAxNzozMToyMyBDRVNUIDIwMDEgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIG1haW4vZHBrZy1xdWVyeS44OiBhZGRlZAorICAqIG1haW4vTWFrZWZpbGUuaW4sIGRlYmlhbi9ydWxlczogaW5zdGFsbCBkcGtnLXF1ZXJ5LjgKKworV2VkIEF1ZyAgMSAxNjozNzo0NyBDRVNUIDIwMDEgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIG1haW4vZHBrZy44OiByZW1vdmUgTGludXggcmVmZXJlbmNlcworCitXZWQgQXVnICAxIDE1OjM1OjMyIENFU1QgMjAwMSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogZGViaWFuL2NvcHlyaWdodDogbWVudGlvbiB3ZSBoYXZlIGNvcHlyaWdodCBmb3IgMjAwMSBhcyB3ZWxsCisgICogbWFpbi9xdWVyeS5jOiBpbXByb3ZlIGhlbHAgYW5kIHZlcnNpb24gdGV4dHMKKyAgKiBtYWluL21haW4uYzogdXNlIERQS0cgZGVmaW5lIGluIHByaW50dmVyc2lvbiBvdXRwdXQKKworV2VkIEF1ZyAgMSAxNToxMDowNiBDRVNUIDIwMDEgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIG1haW4vcXVlcnkuYzogZm10IGNhbid0IGJlIGNvbnN0IHNpbmNlIHdlIGZyZWUgaXQgaW4gdGhlIHNhbWUgZnVuY3Rpb24KKworVHVlIEp1bCAzMSAxMjoyNjo0MSBDRVNUIDIwMDEgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIHBvL2RlLnBvOiBVcGRhdGVkCisgICogbWFpbi9xdWVyeS5jOiBGaXggaGVscCB0ZXh0cyBhIGJpdCB0byByZWZsZWN0IHRoYXQgZHBrZy1xdWVyeSBpcworICAgIG5vdCBkcGtnCisgICogZHNlbGVjdC9tYWluLmNjOiBVc2UgYGNvbG91cicgY29uc2lzdGVudGx5IGZvciBwcmludGVkIHRleHRzLgorCitGcmkgSnVsIDI3IDA0OjIxOjUxIENFU1QgMjAwMSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogZGViaWFuL2NvbnRyb2w6IGZpeCB0eXBvIGluIHNlY3Rpb24gZm9yIGRwa2ctZG9jLCBjb3JyZWN0CisgICAgcmVwbGFjZXMgZm9yIGRzZWxlY3QgYW5kIHJlbW92ZSBMaW51eCByZWZlcmVuY2VzCisKK0ZyaSBKdWwgMjcgMDQ6MDU6NTUgQ0VTVCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBwby9QT1RGSUxFUy5pbjogYWRkIG1haW4vcXVlcnkuYyBhbmQgbWFpbi9zaG93cGtnLmMKKworRnJpIEp1bCAyNyAwNDowNDoyNiBDRVNUIDIwMDEgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIHBvL2RhLnBvOiBVcGRhdGVkCisKK0ZyaSBKdWwgMjcgMDM6NTQ6MzQgQ0VTVCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBsaWIvcGFyc2VkdW1wLmg6IG1vdmUgdG8gaW5jbHVkZS9wYXJzZWR1bXAuaCBzbyBkcGtnLXF1ZXJ5IGNhbgorICAgIHVzZSBpdAorCitGcmkgSnVsIDI3IDAzOjUyOjMzIENFU1QgMjAwMSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogbWFpbi9NYWtlZmlsZS5pbjogY2hhbmdlZCB0aGluZ3MgYXJvdW5kIHRvIGRwa2ctcXVlcnkgYnVpbGRzIG1vcmUKKyAgICBlYXNpbHkKKworRnJpIEp1bCAyNyAwMzo0Mzo1MiBDRVNUIDIwMDEgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIG1haW4vcXVlcnkuYzogcmVtb3ZlIC1EIGZyb20gdXNhZ2UsIHdlIGRvbid0IHN1cHBvcnQgaXQKKyAgKiBtYWluL3Nob3dwa2cuYzogYWRkIHN1cHBvcnQgZm9yIGZpZWxkIHdpZHRoIHNwZWNpZmljYXRpb24KKworVGh1IEp1bCAyNiAxNDoyNzoyMyBDRVNUIDIwMDEgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIHNjcmlwdHMvTWFrZWZpbGUuaW4sIGRvYy9mci9NYWtlZmlsZS5pbiwgZG9jL2phL01ha2VmaWxlLmluLAorICAgIGRlYmlhbi9ydWxlczogbm8gbG9uZ2VyIGluc3RhbGwgdXBkYXRlLXJjLmQsIGl0IG1vdmVkIHRvIHRoZSBzeXN2aW5pdAorICAgIHBhY2thZ2UKKyAgKiBkZWJpYW4vY29udHJvbDogVXBkYXRlIHN5c3Zpbml0IGNvbmZsaWN0cyB0byB2ZXJzaW9uIDIuODAKKyAgKiBkb2MvamEvdXBkYXRlLXJjLmQuOCwgZG9jL2ZyL3VwZGF0ZS1yYy5kLjgsIHNjcmlwdHMvdXBkYXRlLXJjLmQuOCwKKyAgICBzY3JpcHRzL3VwZGF0ZS1yYy5kLnBsOiByZW1vdmVkCisKK1RodSBKdWwgMjYgMTM6NTI6NDMgQ0VTVCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiB1dGlscy9zdGFydC1zdG9wLWRhZW1vbi5jOiBzZWVtcyBnbGliYyBoYXMgYSBjb21wbGV0ZWx5IG5vbi1zdGFuZGFyZAorICAgIHJldHVybiB2YWx1ZSBmb3IgbmljZSgyKSwgc28gZGVhbCB3aXRoIHRoYXQgcHJvcGVybHkgbm93IHNvIHRoaW5ncyBhbHNvCisgICAgd29yayBvbiBub24tZ2xpYmMgc3lzdGVtcy4KKworVHVlIEp1bCAyNCAxOTowNzo0MyBDRVNUIDIwMDEgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIG1haW4vc2hvd3BrZy5jLCBtYWluL3F1ZXJ5Lmg6IG5ldyBmaWxlcworICAqIG1haW4vcXVlcnkuYzogYWRkIHN1cHBvcnQgZm9yIHNob3cgb3B0aW9ucworCitXZWQgSnVsIDE4IDE3OjI4OjM4IENFU1QgMjAwMSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogbWFpbi9NYWtlZmlsZS5pbiwgZGViaWFuL3J1bGVzOiBpbnN0YWxsIGRwa2ctcXVlcnkgYXMgd2VsbAorCitXZWQgSnVsIDE4IDAxOjA0OjE1IENFU1QgMjAwMSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogZG9jL3J1LnBvOiBVcGRhdGVkCisKK1R1ZSBKdWwgMTcgMTY6NTM6MTIgQ0VTVCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisgIAorICAqIE1lcmdlIGNoYW5nZXMgZnJvbSB2MV85IGJyYW5jaAorICAgICsgZGViaWFuL2NoYW5nZWxvZzogYWRkIDEuOS4xNSBhbmQgMS45LjE2IHJlbGVhc2VzCisgICAgKyBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOiAKKyAgICAgIC0gQWRkIGhhbmRsZWZvcm1hdCBzdWIgdG8gY2hlY2sgaWYgd2UgY2FuIGhhbmRsZSBhIGRzY2Zvcm1hdAorICAgICAgLSBSZXZlcnQgZHNjZm9ybWF0IHRvIDEuMC4gVGVjaG5pY2FsbHkgd2UgY2hhbmdlZCBhIGZldyB0aGluZ3MKKyAgICAgICAgYnV0IG9sZGVyIHZlcnNpb25zIG9mIGRwa2ctc291cmNlIGRpZCBub3QgaGFuZGxlIG1pbm9yIHVwZGF0ZXMKKyAgICAgICAgdG8gdGhlIGRzY2Zvcm1hdC4gTmV3IHBvbGljeSBpcyB0aGF0IG1pbm9yIHVwZGF0ZXMgKGxhc3QgZGlnaXQKKyAgICAgICAgY2hhbmdlcykgdG8gdGhlIGRzY2Zvcm1hdCBoYXZlIHRvIGJlIGZ1bGx5IGJhY2t3YXJkIGFuZCBmb3J3YXJkCisgICAgICAgIGNvbXBhdGlibGUuCisgICAgICAtIHJlc3RvcmUgdGVzdCBpZiB0YXIgZXhpdGVkIHdpdGggZXhpdGVkIHdpdGggYSBub24temVybyBleGl0Y29kZQorICAgICAgLSByZW1vdmUgYSBidW5jaCBvZiBjb21tZW50ZWQgZGVidWcgc3RhdGVtZW50cworICAgICsgbWFpbi9oZWxwLmM6IGZpeCBuYXJnbGlzdCBjb25zdHJ1Y3Rpb24gYnVpbGRpbmcgYW5kIHVzYWdlIGluIGRvX3NjcmlwdCgpIAorCitUdWUgSnVsIDE3IDAwOjM2OjMyIENFU1QgMjAwMSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogZHNlbGVjdC9kc2VsZWN0Ljg6IGRvY3VtZW50IG5ldyBzZWFyY2ggZmVhdHVyZXMKKworTW9uIEp1bCAxNiAxODoxNDoxNiBDRVNUIDIwMDEgcGV0ZXIga2FybHNzb24gPHBldGVya0BkZWJpYW4ub3JnPgorCisgICogcG8vc3YucG8sIGRvYy9zdi9kZWIuNSwgZG9jL3N2L2RlYi1vbGQuNSwgZG9jL3N2L2RzZWxlY3QuOCwgZG9jL3N2L2Rwa2cuODoKKyAgICBTd2VkaXNoIHRyYW5zbGF0aW9uIHVwZGF0ZXMuCisKK01vbiBKdWwgMTYgMTc6MTk6MjEgQ0VTVCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBkc2VsZWN0L2Jhc2VjbWRzLmNjLCBkc2VsZWN0L2RzZWxlY3QuaDogCisgICAgKyBhZGQgY2hlY2tzZWFyY2ggYW5kIG1hdGNoc2VhcmNoIGZ1bmN0aW9ucyB0byBhYnN0cmFjdCBzZWFyY2hpbmcgYWxnb3JpdGhtCisgICAgKyBhZGQgZGlzcGxheWVycm9yIG1lbWJlciBmdW5jdGlvbgorICAqIGRzZWxlY3QvYmFzZWxpc3QuY2M6IHVzZSBuZXcgY2hlY2tzZXJhY2ggYW5kIG1hdGNoc2VhcmNoIGZ1bmN0aW9ucyB0bworICAgIGRvIHRoZSByZWFsIHNlYXJjaC9tYXRjaGluZworICAqIGRzZWxlY3QvcGtnbGlzdC5jYywgZHNlbGVjdC9wa2dsaXN0Lmg6IGltcGxlbWVudCBjaGVja3NlYXJjaCBhbmQKKyAgICBtYXRjaHNlYXJjaCB1c2luZyByZWd1bGFyIGV4cHJlc3Npb25zCisKK01vbiBKdWwgMTYgMTU6MjA6MDcgQ0VTVCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBtYWluL21haW4uYywgbWFpbi9xdWVyeSxjLiBkc2VsZWN0L21haW4uY2M6IHVzZSBDIGxvY2FsZSBmb3IgTENfQ1RZUEUKKyAgICBzbyB3ZSBjYW4gYmUgc3VyZSBwYWNrYWdlbmFtZSBhbmQgdmVyc2lvbiBjb21wYXJpc29ucyB3b3JrIGFzIGV4cGVjdGVkCisKK01vbiBKdWwgMTYgMTQ6MTA6MTggQ0VTVCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBsaWIvdmVyY21wLmM6IE5ldyB2ZXJyZXZjbXAoKSBmcm9tIEFudGhvbnkgVG93bnMKKworTW9uIEp1bCAxNiAxMzoyNzo0NCBDRVNUIDIwMDEgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIE1lcmdlIGEgbW9kaWZpZWQgcGF0Y2ggZnJvbSBKb3NpcCBSb2RpbjoKKyAgICArIGRzZWxlY3QvYmFzZWNtZHMuY2M6IEltcHJvdmUgc29tZSBoZWxwIHRleHRzIGFuZCBoZWxwc2NyZWVuIGtleWJpbmRpbmdzCisgICAgKyBkc2VsZWN0L2hlbHBtc2dzLnNyYzogSW1wcm92ZSB0ZXh0CisKK01vbiBKdWwgMTYgMTI6NTU6NDkgQ0VTVCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiB1dGlscy9zdGFydC1zdG9wLWRhZW1vbi5jOiBGaXggdGVzdCBmb3IgbmljZSgyKSBmYWlsdXJlCisKK01vbiBKdWwgMTYgMTI6NDQ6NTEgQ0VTVCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBkc2VsZWN0L2RzZWxlY3QuaDogbWFrZSBiYXNlbGlzdDo6c2V0aGVpZ2h0cygpIHZpcnR1YWwKKyAgKiBkc2VsZWN0L21ldGhvZC5oOiBhZGQgc2V0aGVpZ2h0cygpIG1lbWJlciBhbmQgZml4IHByb3RlY3Rpb24KKyAgKiBkc2VsZWN0L21ldGhsaXN0LmNjOiBvdmVycmlkZSBzZXRoZWlnaHRzKCkgdG8gbWFrZSBsaXN0X2hlaWdodCAxCisgICAgaGlnaGVyIHRoZW4gdGhlIGRlZmF1bHQgc28gd2UgZHJhdyB0aGUgbGlzdCBjb3JyZWN0bHkKKyAgKiBkc2VsZWN0L21ldGhrZXlzLmNjOiBtYWtlIFEgZG8gYWJvcnQgc28gd2UgYXJlIGNvbnNpc3RlbnQgd2l0aCB0aGUgcGtnbGlzdAorCitNb24gSnVsIDE2IDAxOjUwOjU4IENFU1QgMjAwMSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogTWVyZ2UgYSByZXdvcmtlZCB2ZXJzaW9uIG9mIGEgcGF0Y2ggZnJvbSBKb2V5IEhlc3MKKyAgICArIGRzZWxlY3QvZHNlbGVjdC44OiBEb2N1bWVudCBuZXcgY29sb3VyIG9wdGlvbnMKKyAgICArIGRzZWxlY3QvYmFzZWNtZHMuY2M6IHByb3Blcmx5IGRyYXcgdGhlIGJhY2tncm91bmQgdXNpbmcgaGVscHNjcmVlbl9hdHRyCisgICAgKyBkc2VsZWN0L2Jhc2VsaXN0LmNjOiBjaGFuZ2UgZHJhd2luZyBjb2RlIHRvIHVzZSBuZXcgY2hhbmdlYWJsZSBjb2xvdXJzCisgICAgKyBkc2VsZWN0L2RzZWxlY3QuaDogQWRkIGFsbCB0aGUgY29sb3VyIHN0cnVjdHVyZXMKKyAgICArIGRzZWxlY3QvbWFpbi5jYzogUGFyc2UgLS1jb2xvdXIgb3B0aW9ucworCitNb24gSnVsIDE2IDAwOjAxOjI0IENFU1QgMjAwMSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogZHNlbGVjdC9iYXNlbGlzdC5jYzogaW5jbHVkZSB1bmlzdGQuaCB3aGljaCBpcyBuZWVkZWQgdG8gZ2V0IHRoZQorICAgIGlvY3RsIHByb3RvdHlwZSBvbiBTb2xhcmlzCisKK1N1biBKdWwgMTUgMDA6Mzc6MTMgQ0VTVCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBkZWJpYW4vcHJlaW5zdDogcmVtb3ZlZCAod2Ugbm93IHVzZSBkcGtnLnByZWluc3QpCisgICogZGViaWFuL2NvbnRyb2w6CisgICAgKyBhZGQgZHNlbGVjdCBwYWNrYWdlCisgICAgKyBmaXggc2VjdGlvbiBvZiBkcGtnLWRvYworICAqIGRlYmlhbi9kcGtnLmNvbmZmaWxlczogcmVtb3ZlIGRzZWxlY3QuY2ZnCisgICogZGViaWFuL2RzZWxlY3Que2NvbmZmaWxlcyxwb3N0aW5zdCxwcmVybX06IGFkZGVkCisgICogZGViaWFuL3J1bGVzOiAKKyAgICArIGFkZCBHZXJtYW4gdG8gbGlzdCBvZiBtYW5wYWdlIHRyYW5zbGF0aW9ucworICAgICsgc3BsaXQgb3V0IGRzZWxlY3QgaW50byBpdHMgb3duIHBhY2thZ2UKKyAgICArIHN0cmlwIGVub2VudCBhbmQgc3RhcnQtc3RvcC1kYWVtb24gYXMgd2VsbAorCitTYXQgSnVsIDE0IDIzOjM1OjU3IENFU1QgMjAwMSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogZHNlbGVjdC9tYWluLmNjLCBkcGtnL21haW4uYzogYWRkIHBlci11c2VyIGNvbmZpZ3VyYXRpb24gZmlsZQorCitTYXQgSnVsIDE0IDAxOjM4OjI3IENFU1QgMjAwMSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogTWVyZ2UgZHNlbGVjdCBwYXRjaCBmcm9tIEpvZXkgSGVzcyAKKyAgICArIGRzZWxlY3QvZHNlbGVjdC5oOiBhZGQgbWFudWFsX2luc3RhbGwgcHJvdG90eXBlCisgICAgKyBkc2VsZWN0L3BrZ2NtZHMuY2MsIGRzZWxlY3QvcGtnc3VibGlzdC5jYzogbW9kaWZ5IGtkX3NlbGVjdCgpIGFuZAorICAgICAgcmVwZWF0ZWRseSBkaXNwbGF5KCkgdG8gc2V0L3Vuc2V0IG1hbnVhbF9pbnN0YWxsIHNvIHdlIGNhbiBpZGVudGlmeQorICAgICAgdXNlci1zZWxlY3RlZCBwYWNrYWdlcworICAgICsgZHNlbGVjdC9wa2dsaXN0Lmg6IGFkZCBkcF9zaG91bGQgcHJpb3JpdHkKKyAgICArIGRzZWxlY3QvcGtnZGVwY29uLmNjOiBtb2RpZnkgcmVzb2x2ZWRlcGNvbigpIHRvIGhhbmRsZSByZWNvbW1lbmRzCisgICAgICBhbmQgc3VnZ2VzdHMgZGlmZmVyZW50bHkKKworU2F0IEp1bCAxNCAwMToxODozMyBDRVNUIDIwMDEgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIGRvYy9kZS9NYWtlZmlsZS5pbjogZml4IHN5bnRheCBlcnJvcgorCitGcmkgSnVsIDEzIDIwOjM5OjI0IENFU1QgMjAwMSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogZG9jL2RlYi1vbGQuNSwgZG9jL2RlYi41OiByZW1vdmUgZW1hY3MgaGludHMgYW5kIExpbnV4IHJlZmVyZW5jZXMKKyAgKiBkcGtnLWRlYi9kcGtnLWRlYi4xOiBGaXggdHlwbworICAqIHNjcmlwdHMvZHBrZy1uYW1lLjE6IERvbid0IG1lbnRpb24gdGhlIG5vbi1leGlzdGluZyBkcGtnKDUpCisgICogZHNlbGVjdC9kc2VsZWN0Ljg6IE1lcmdlZCBjaGFuZ2VzIGZyb20gSm9vc3QgS29vaWoKKworRnJpIEp1bCAxMyAwMDo1NDoyNCBDRVNUIDIwMDEgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIGRvYy9kZS9NYWtlZmlsZS5pbiwgZG9jL2RlL21kNXN1bS4xOiBhZGRlZAorICAqIGNvbmZpZ3VyZS5pbiwgZG9jL01ha2VmaWxlLmluOiBQcm9jZXNzIEdlcm1hbiBkb2N1bWVudGF0aW9uCisKK0ZyaSBKdWwgMTMgMDA6NDY6MDIgQ0VTVCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBwby9kZS5wbzogTmV3IHZlcnNpb24KKworRnJpIEp1bCAxMyAwMDo0MzoyMyBDRVNUIDIwMDEgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIHNjcmlwdHMvZHBrZy1hcmNoaXRlY3R1cmUucGw6IGltcHJvdmUgZG9jdW1lbnRhdGlvbgorCitNb24gTWF5IDIxIDAzOjQ4OjI5IENFU1QgMjAwMSBNYXJjdXMgQnJpbmttYW5uIDxicmlua21kQGRlYmlhbi5vcmc+CisKKyAgKiBzY3JpcHRzL2Rwa2ctY2hlY2tidWlsZGRlcHMucGw6IENhbGwgZHBrZy1hcmNoaXRlY3R1cmUgaW5zdGVhZCBkcGtnCisgICAgdG8gZGV0ZXJtaW5lIHRoZSBob3N0IGFyY2hpdGVjdHVyZS4gIFJlbmFtZSBCVUlMRF9BUkNIIHRvIEhPU1RfQVJDSC4KKworRnJpIEp1bCAgNiAwMDoyNzoxNyBDRVNUIDIwMDEgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICogc2NyaXB0cy9kcGtnLWRpdmVydC44OiBGaXggbGF5b3V0IGVycm9yIGluIHN5bm9wc2lzCisKK01vbiBKdWwgIDIgMDA6MDA6MDQgQ0VTVCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBjb25maWd1cmUuaW46IGFkZCBkb2MvcnUvTWFrZWZpbGUuaW4KKyAgKiBkZWJpYW4vcnVsZXM6IGRvbid0IHBhc3MgQ0ZMQUdTIHRvIGNvbmZpZ3VyZQorICAqIGRzZWxlY3QvcGtna2V5cy5jYzogbWFrZSBgbicgZG8gc2VhcmNoYWdhaW4gaW5zdGVhZAorCitTdW4gSnVsICAxIDE2OjEyOjMwIENEVCAyMDAxIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogbWFpbi9hcmNoaXZlcy5jOiBXaGVuIGEgcGFja2FnZSBpcyBvbiBob2xkLCAtRSB3aWxsIG5vdCBza2lwIHRoZSBzYW1lCisgICAgdmVyc2lvbiB3aGVuIGluc3RhbGxpbmcuCisKK1NhdCBKdW4gMzAgMDE6NDg6MTUgQ0VTVCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBkb2MvcnUvKjogQWRkZWQgUnVzc2lhbiB0cmFuc2xhdGlvbnMgZnJvbSBBbGV4ZXkgTWFob3RraW4KKyAgICA8YWxleG1AaHN5cy5tc2sucnU+CisKK01vbiBKdW4gMjUgMDM6MzE6NTUgQ0RUIDIwMDEgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBNZXJnZWQgaW4gY2hhbmdlcyBmcm9tIDEuOS4xMSB0byAxLjkuMTQgYnJhbmNoZXMuCisKKyAgICArIHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6IERpc2FibGUgc291cmNlIHBhY2thZ2Ugc2FuaXR5IGNoZWNraW5nLgorICAgICsgc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDogbWFrZSBVcGxvYWRlcnMgb3B0aW9uYWwuCisgICAgKyBzY3JpcHRzL2NvbnRyb2xsaWIucGw6IFNldCB0aGUgZGVmYXVsdCB0byBjb252ZXJ0IHdhcm5lcnJvcnMKKyAgICAgIGludG8gd2FybmluZ3MuCisgICAgKyBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOiBSZW1vdmUgYSB3YXJuYWJsZSBlcnJvciBpZiB0aGUgb3JpZy50YXIuZ3oKKyAgICAgIGNvbnRhaW5zICcuLycuCisgICAgKyBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOiBIYW5kbGUgc3ltbGlua3MgaW4gdGhlIHRhcmJhbGwsIGFuZCBkb24ndAorICAgICAgZXJyb3Igb3V0IGlmIGZvdW5kLgorICAgICsgc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDogQWRkIHN1cHBvcnQgZm9yIGFuIFVwbG9hZGVycyBmaWVsZCwgd2hpY2ggaXMKKyAgICAgIHJlYWQgZnJvbSB0aGUgZmlyc3QgcGFyYWdyYXBoIG9mIGRlYmlhbi9jb250cm9sLCBhbmQgcHJvcGFnYXRlZCB0bworICAgICAgdGhlIC5kc2MuICBUaGlzIGxpc3RzIHRoZSBwZW9wbGUgYWxsb3dlZCB0byB1cGxvYWQgYSBwYWNrYWdlLiAgSWYgaXQKKyAgICAgIGlzIG5vdCBzZXQsIHRoZW4gdGhlIHZhbHVlIG9mIHRoZSBNYWludGFpbmVyIGlzIHBsYWNlZCBpbnRvIHRoaXMKKyAgICAgIGZpZWxkIG9mIHRoZSAuZHNjLiAgVGhpcyBidW1wcyB0aGUgLmRzYyBmb3JtYXQgdG8gMS4xLgorICAgICsgc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDogSGFuZGxlIHN0YXRpbmcgb2YgdHJ1bmNhdGVkIGNwaW8gZmlsZW5hbWVzCisgICAgICAoMTAwIGNoYXIgbGltaXQsIGJhaCkKKyAgICArIHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6IFNldCBMQ19BTEwgYmVmb3JlIGNhbGxpbmcgZXh0ZXJuYWwgcHJvZ3JhbXMsCisgICAgICB3aGVuIHdlIGFyZSBnb2luZyB0byBwYXJzZSB0aGVpciBvdXRwdXQuCisgICAgKyBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOiBNb3ZlIHRoZSBjaGVjayBmb3IgJ1xuJyBhbmQgJy4vLi9ATG9uZ0xpbmsnCisgICAgICBiZWZvcmUgdGhlIGNoZWNrIGZvciBsZWFkaW5nICcuLycuCisgICAgKyBkc2VsZWN0L21haW4uY2M6IEhhbmRsZSB3aW5kb3cgcmVzaXplIGluIG1haW4gbWVudQorICAgICsgc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDogQWRkIGEgd2FybmFibGUgZXJyb3IgaWYgdGhlIG9yaWcudGFyLmd6CisgICAgICBjb250YWlucyAnLi8nLgorICAgICsgc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDogSGFuZGxlIHRoZSBjYXNlIHdoZXJlIGEgc2luZ2xlIGRpcmVjdG9yeQorICAgICAgZXhpc3RzIGluIHRoZSBvcmlnLnRhci5neiwgYnV0IGl0IGlzIE5PVCBvZiB0aGUgZm9ybSA8cGtnPi08dmVyPi4KKyAgICArIHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6IERvbid0IGVycm9yIG91dCBpZiB0aGUgZmlsZXMgaW4gdGhlIHRhcgorICAgICAgaGF2ZSBsZWFkaW5nICcuLycuCisgICAgKyBzY3JpcHRzL2Rwa2ctc291cmNlLnBsLCBzY3JpcHRzL2NvbnRyb2xsaWIucGwsIHNjcmlwdHMvZHBrZy1zb3VyY2UuMSwKKyAgICAgIHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2Uuc2g6IEFkZCBzdXBwb3J0IGZvciAtVywgd2hpY2ggdHVybnMgY2VydGFpbgorICAgICAgZXJyb3JzIGludG8gd2FybmluZ3MsIGFuZCAtRSwgd2hpY2ggdHVybnMgdGhlbSBiYWNrIGludG8gZXJyb3JzIGFnYWluLgorICAgICsgc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDogV2hlbiB0aGUgdGFyYmFsbCBkb2Vzbid0IGNvbnRhaW4gZGlyZWN0b3JpZXMsCisgICAgICBvbmx5IGRpc3BsYXkgdGhlIHdhcm5pbmcgb25jZSBmb3IgZWFjaCBkaXJlY3RvcnkuCisgICAgKyBUSEFOS1M6IEFkZGVkIENvbGluIFdhdHNvbi4gIEFsc28gcHV0IGluIGFuIGVtYWlsIGFkZHJlc3MgZm9yIENvbGluCisgICAgICBQbHVtYi4KKyAgICArIHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6IEdydW1ibGUuICBGaXggY2FzZSB3aGVyZSB0b3AtZGlyIGluCisgICAgICBvcmlnLnRhci5neiB3YXMgcmVuYW1lZCB0byAub3JpZy4KKworRnJpIEp1biAyMiAxOToyNjo0MSBDRVNUIDIwMDEgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIGRzZWxlY3QvbWFpbi5jYzogSGFuZGxlIHdpbmRvdyByZXNpemUgaW4gbWFpbiBtZW51CisKK1dlZCBKdW4gMjAgMTg6NTY6MzUgQ0VTVCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBtYWluL2hlbHAuYzogYWN0dWFsbHkgdXNlIG5hcmdsaXN0IGluIGRvX3NjcmlwdCgpCisKK1dlZCBKdW4gMjAgMTE6Mjg6MjUgQ0RUIDIwMDEgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBNZXJnZWQgaW4gY2hhbmdlcyBmcm9tIDEuOS4xMCB0byAxLjkuMTEgYnJhbmNoLgorCisgICAgKyBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOiBGaXggdHlwby4KKyAgICArIHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2Uuc2g6IE9wdGlvbiAtYSBpbXBsaWVzIG9wdGlvbiAtZC4KKyAgICAgIFNldCBBUkNIIGNvcnJlY3RseSB0byBob3N0IGFyY2hpdGVjdHVyZSwgcmF0aGVyIHRoYW4gYnVpbGQgYXJjaC4KKyAgICArIHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOiBFcnJvciBpZiBhbiBpbGxlZ2FsIHBhY2thZ2UgbmFtZSBpcyB1c2VkLgorICAgICsgc2NyaXB0cy9jbC1kZWJpYW4ucGw6IENoYW5nZSBsaXN0IG9mIGFsbG93ZWQgdXJnZW5jaWVzIHRvOiBsb3csIG1lZGl1bSwKKyAgICAgIGhpZ2gsIGFuZCBjcml0Y2lhbC4KKyAgICArIHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6IHdhcm4gaW5zdGVhZCBvZiBkaWUgd2hlbiBmaW5kIHJldHVybnMKKyAgICAgIGFuIGVycm9yKHdoaWNoIGhhcHBlbnMgaWYgdGhlcmUgaXMgYSBkYW5nbGluZyBzeW1saW5rLCBiZWNhdXNlIHdlIHVzZQorICAgICAgLWZvbGxvdykuCisgICAgKyBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOiBBcHBseSBwYXRjaCBmcm9tIENvbGluIFdhdHNvbjoKKyAgICAgICogUmVzZXQgU0lHUElQRSB0byBERUZBVUxUIHdoZW4gZm9ya2luZyBnemlwLgorICAgICAgKiBzZXQgTEFORyB0byBDIGJlZm9yZSBleGVjaW5nIGNwaW8sIGFzIHdlIHBhcnNlIGl0cyBvdXRwdXQuCisgICAgICAqIEluIGNoZWNrdGFyY3BpbygpIGFuZCBjaGVja3RhcnNhbmUoKSwgdXNlIHRoZSBwcmV2aW91c2x5IG9wZW4gcGlwZXMsCisgICAgICAgIGluc3RlYWQgb2YgdGhlIG9wZW5pbmcgZmlsZXMgb24gZGlzayh3aGljaCB3YXMgdGhlIG9sZCwgYW5jaWVudCB3YXkpLgorICAgICAgKiBJbXByb3ZlIHRoZSBvdXRwdXQgcGFyc2luZyBvZiB0YXIgaW4gY2hlY2t0YXJzYW5lKCkuCisgICAgKyBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOiBXaGVuIGJvdGggYXJjaDogYWxsIGFuZCBhcmNoOiA8YXJjaD4gcGFja2FnZXMKKyAgICAgIGV4aXN0IGluIGRlYmlhbi9jb250cm9sLCBkb24ndCBwcm9tb3RlIHRoZSBzb3VyY2UgYXJjaDogdG8gYW55LCBidXQKKyAgICAgIG9ubHkgbGlzdCBhbGwgYW5kIDxhcmNoPi4KKyAgICArIHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6IE1ha2UgaXQgd29yayB3aXRoIEdOVSBtZDVzdW0uCisgICAgKyBzY3JpcHRzL2Rwa2ctc291cmNlLjE6IERvY3VtZW50IC1uYyBmb3IgZHBrZy1idWlsZHBhY2thZ2UuCisgICAgKyBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDogU2V0IHRoZSBBcmNoaXRlY3R1cmUgdG8gJ3NvdXJjZScgb25seSB3aGVuCisgICAgICBkb2luZyBzb3VyY2Ugb25seSB1cGxvYWRzIGluIHRoZSBnZW5lcmF0ZWQgY2hhbmdlcyBmaWxlcy4KKyAgICArIHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6IEZpeCBpbmZpbml0ZSBkaXJlY3RvcnkgcmVjdXJzaW9uIHRocnUKKyAgICAgIHN5bWxpbmtzLgorICAgICsgZG9jL2RlYi41OiBDaGFuZ2VkIHNlZS1hbHNvIHJlZmVyZW5jZSB0byBkZWItb2xkKDUpLgorICAgICsgc2NyaXB0cy97TWFrZWZpbGUuaW4sZHBrZy1hcmNoaXRlY3R1cmUuMX06IFJlbW92ZWQgdGhlIG1hbnBhZ2UsIGFuZAorICAgICAgZ2VuZXJhdGUgaXQgZnJvbSB0aGUgc2NyaXB0IG5vdy4KKyAgICArIHNjcmlwdHMvZHBrZy1hcmNoaXRlY3R1cmUucGw6IEFwcGx5IHBhdGNoIHRvIGNvcnJlY3RseSBjaGVjayB0aGUgb3V0cHV0CisgICAgICBvZiBnY2Mgb24gaHVyZC4KKyAgICArIHNjcmlwdHMvZHBrZy1jaGVja2J1aWxkZGVwcy5wbDogRml4IGxvZ2ljIGVycm9yIHRoYXQga2VwdCBldmVyeXRoaW5nCisgICAgICBidXQgQnVpbGQtRGVwcyBmcm9tIHdvcmtpbmcuCisgICAgKyBzY3JpcHRzL2Rwa2ctY2hlY2tidWlsZGRlcHMucGw6IFRyaW0gdHJhaWxpbmcgc3BhY2VzIGZyb20gcGFja2FnZXMuCisKK1NhdCBKdW4gMTYgMTg6NTI6MTcgQ0RUIDIwMDEgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBNZXJnZSBjaGFuZ2VzIGZyb20gdjFfOV8xMCB0YWc6CisgICAgKyBzY3JpcHRzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMucGw6IEZpeCBzd2l0Y2hpbmcgdG8gYXV0byBtb2RlIGlmCisgICAgICBhbHRlcm5hdGl2ZSBzeW1saW5rIGdvZXMgbWlzc2luZy4KKyAgICArIHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6IHMvREVBRF9KT0UvREVBREpPRS8KKyAgICArIHNjcmlwdHMvZHBrZy1kaXZlcnQucGw6IEZpeCBjbGVhbnVwIG9mIGRldmVydC50bXAgZmlsZXMuCisgICAgKyBzY3JpcHRzL2Rwa2ctY2hlY2tidWlsZGRlcHMucGw6IEZpeCBbYXJjaF0gcGFyc2luZywgYW5kIGhhbmRsZQorICAgICAgbW9yZSB2YXJpYXRpb25zIG9mIHNwYWNlcy4KKworU2F0IEp1biAxNiAyMjowNDowNCBDRVNUIDIwMDEgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIHBvL2VzLnBvOiBVcGRhdGVkCisKK1NhdCBKdW4gMDkgMTA6NDg6MTQgQ0VTVCAyMDAxIHBldGVyIGthcmxzc29uIDxwZXRlcmtAZGViaWFuLm9yZz4KKworICAqIHBvL3N2LnBvLCBkb2Mvc3YvZHBrZy44OiBVcGRhdGVkCisKK1NhdCBKdW4gIDkgMDA6Mjg6MTEgQ0VTVCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBkZWJpYW4vY2hhbmdlbG9nOiBpbXBvcnQgMS45IHJlbGVhc2VzCisgICogZGViaWFuL2NvbnRyb2w6IGFkZCBzZ21sdG9vbHMtbGl0ZSB0byBCdWlsZC1EZXBlbmRzCisgICogTWVyZ2UgY2hhbmdlcyBmcm9tIHYxOSBicmFuY2g6CisgICAgKyBhcmNodGFibGU6IGFkZCBpMzg2LWdudTAuMgorICAgICsgZHBrZy1kZWIvZXh0cmFjdC5jOiBNb3JlICV6IGZvcm1hdCBmaXhlcy4KKyAgICArIGRzZWxlY3QvbWV0aG9kLmNjOiBkb24ndCBpbmNsdWRlIGN1cnNlcy5oIHNpbmNlIGRzZWxlY3QuaCBhbHJlYWR5CisgICAgICBkb2VzIHRoYXQgZm9yIHVzCisgICAgKyBkc2VsZWN0L21ldGhvZC5jYzogaGFuZGxlIGludGVycnVwdGVkIGdldGMgaW4gZmFsbGlibGVzdWJwcm9jZXNzKCkKKyAgICAgIHByb21wdAorICAgICsgaW5jbHVkZS9kcGtnLmguaW46IGFkZCBzZXRjbG9leGVjIGRlY2xhcmF0aW9uCisgICAgKyBsaWIvbWxpYi5jOiBhZGQgc2V0Y2xvZXhlYygpLCB1dGlsaXR5IGZ1bmN0aW9uIHRvIHNldCBGRF9DTE9FWEVDIGZsYWcKKyAgICArIGxpYi9kYm1vZGlmeS5jOiB1c2Ugc2V0Y2xvZXhlYygpIG9uIHN0YXR1cyBmaWxlCisgICAgKyBtYWluL2ZpbGVzZGIuYzogdXNlIHNldGNsb2V4ZWMgZm9yIGRpdmVyc2lvbnMgYW5kIHN0YXRvdmVycmlkZSBmaWxlcworICAgICsgbWFpbi9hcmNoaXZlcy5jOiBhZGQgZnVuY3Rpb25zIHRvIGluaXRpYWxpemUgYW5kIGRlc3Ryb3kgdGhlIG9ic3RhY2ssCisgICAgICBlbnN1cmUgb2JzdGFjayBpcyBpbml0aWFsaXplZCBpbiB0cnlfcmVtb3ZlX2NhbigpIGFzIHdlbGwKKyAgICArIGxpYi9wYXJzZWhlbHAuYzogQ29ycmVjdGx5IGhhbmRsZSB0cmFpbGluZyBzcGFjZXMgaW4gdmVyc2lvbnMuCisgICAgKyBtYWluL2Rwa2cuODogaXQncyAvZXRjL2Rwa2cvZHBrZy5jZmcsIG5vdCAvZXRjL2Rwa2cuY2ZnCisgICAgKyBtYWluL2Rwa2cuODogSW1wcm92ZSBkZXNjcmlwdGlvbiBvZiAtLWZvcmNlLWNvbmZkZWYKKyAgICArIG1haW4vaGVscC5jOiBkb24ndCBpZ25vcmUgZmFpbGVkIG1haW50YWluZXIgc2NyaXB0cworICAgICsgc2NyaXB0cy9kcGtnLWFyY2hpdGVjdHVyZS5wbDogc3BlbGwgZGVwZW5kZW5jeSBjb25zaXN0ZW50bHkKKyAgICArIHNjcmlwdHMvZHBrZy1jaGVja2J1aWxkZGVwcy4xOiBzcGVsbCBkZXBlbmRlbmN5IGNvbnNpc3RlbnRseQorICAgICsgc2NyaXB0cy9kcGtnLXNvdXJjZS4xOiBzcGVsbCBkZXBlbmRlbmN5IGNvbnNpc3RlbnRseQorICAgICsgc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZTogZml4IHBhdXNpbmcgbG9naWMsIGFuZCB1c2UgJGNoYW5nZWRieSBhcyB0aGUKKyAgICAgIHNpZ25pbmcgSUQKKyAgICArIHNjcmlwdHMvZHBrZy1jaGVja2J1aWxkZGVwcy5wbDogSGFuZGxlIHZhcmllZCB1c2Ugb2Ygc3BhY2VzLgorICAgICsgc2NyaXB0cy9kcGtnLWNoZWNrYnVpbGRkZXBzLnBsOiBoYW5kbGUgbXVsdGktbGluZSBmaWVsZHMKKyAgICArIHNjcmlwdHMvZHBrZy1kaXZlcnQucGw6IGZpeCB0ZXN0IGZvciBpbGxlZ2FsIHBhY2thZ2VuYW1lCisgICAgKyBzcGxpdC9pbmZvLmM6IENoYW5nZSBmb3JtYXQgc3RyaW5nLCB0byBoYW5kbGUgc2l6ZV90LgorICAgICsgdXRpbHMvc3RhcnQtc3RvcC1kYWVtb24uYzogY29uc2lzdGVudGx5IHVzZSBwaWRfdCBhbmQgdWlkX3QKKyAgICArIGRlYmlhbi9jb250cm9sOiB1c2UgYSBDb25mbGljdCBmb3Igc3lzdmluaXQgaW5zdGVhZCBvZiBhIERlcGVuZHMKKworRnJpIEp1biAgOCAxOTo0Mjo0MyBDRVNUIDIwMDEgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIHBvL2ZyLnBvOiB1cGRhdGVkCisKK1NhdCBKdW4gIDIgMTU6MDk6MDEgQ0RUIDIwMDEgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLnBsOiBSZW1vdmUgYm9ndXMgY2hlY2sgb2YgJCEuCisKK1NhdCBKdW4gIDIgMTU6MDQ6MDkgQ0RUIDIwMDEgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOiBSZXNldCBTSUdQSVBFIGJhY2sgdG8gYSBkZWZhdWx0IGhhbmRsZXIsIGZvcgorICAgIGNhbGxlcnMgdGhhdCBoYXZlIGl0IG1hc2tlZCBvZmYuCisKK1NhdCBKdW4gIDIgMTQ6NDg6MzUgQ0RUIDIwMDEgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBzY3JpcHRzL2Rwa2ctY2hlY2tidWlsZGRlcHMucGw6IEhhbmRsZSB2YXJpZWQgdXNlIG9mIHNwYWNlcy4KKworU2F0IEp1biAgMiAxNDowOToyOCBDRFQgMjAwMSBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGxpYi9wYXJzZWhlbHAuYzogUmVtb3ZlIGxlYWRpbmcgYW5kIHRyYWlsaW5nIHNwYWNlcyBmcm9tIHZlcnNpb25zLCBhbmQKKyAgICBjaGVjayBpZiB0aGVyZSBhcmUgZW1iZWRkZWQgc3BhY2VzIGluIHZlcnNpb25zLgorCitUdWUgTWF5IDI5IDA3OjI3OjMxIENFU1QgMjAwMSBwZXRlciBrYXJsc3NvbiA8cGV0ZXJrQGRlYmlhbi5vcmc+CisKKyAgKiBwby9zdi5wbzogVXBkYXRlZC4KKworTW9uIE1heSAyOCAyMjo1NDozNSBDRFQgMjAwMSBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGNvbmZpZ3VyZS5pbjogQUNfUkVRVUlSRSBpcyBub3QgdmFsaWQgb3V0c2lkZSBvZiBBQ19ERUZVTi4KKyAgKiBhdXRvbWFrZS9kcGtnLm00OiBEUEtHX0NBQ0hFRF9UUllfQ09NUElMRSB3YXMgZGVmaW5lZCB3aXRoIGJvdGgKKyAgICBBQ19ERUZVTigpIEFORCBkZWZpbmUoKS4KKyAKK01vbiBNYXkgMjggMTk6MDc6MTUgQ0RUIDIwMDEgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBkZWJpYW4vY2hhbmdlbG9nOiBVcGRhdGUgZm9yIDEuOS43LgorCitNb24gTWF5IDI4IDE5OjAyOjUyIENEVCAyMDAxIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogc2NyaXB0cy9kcGtnLWRpdmVydC5wbDogRml4IGNsZWFudXAgb2YgLmRwa2ctZGV2ZXJ0LnRtcCBmaWxlcy4KKworTW9uIE1heSAyOCAxNjo0MDoxOSBDRFQgMjAwMSBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIHBvL2l0LnBvOiBVcGRhdGVkLgorCitNb24gTWF5IDI4IDE2OjI3OjQzIENEVCAyMDAxIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogbWFpbi9hcmNoaXZlcy5jOiBJZiBleHRyYWN0aW5nIGEgZGlyZWN0b3J5LCBhbmQgaXQgZG9lc24ndCBhbHJlYWR5CisgICAgZXhpc3Qgb24gZGlzaywgYW5kIGlzIHNoYXJlZCB3aXRoIGFub3RoZXIgcGFja2FnZSwgZG9uJ3QgZXJyb3IgY2F1c2UgYW4KKyAgICBlcnJvci4KKworTW9uIE1heSAyOCAxNjoyMzoyNiBDRFQgMjAwMSBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGRvYy9qYS84MjItZGF0ZS4xLCBkb2MvamEvTWFrZWZpbGUuaW4sIGRvYy9qYS9jbGVhbnVwLWluZm8uOCwKKyAgICBkb2MvamEvZGViLWNvbnRyb2wuNSwgZG9jL2phL2RlYi1vbGQuNSwgZG9jL2phL2RlYi41LAorICAgIGRvYy9qYS9kcGtnLWNoZWNrYnVpbGRkZXBzLjEsIGRvYy9qYS9kcGtnLWRlYi4xLCBkb2MvamEvZHBrZy1kaXZlcnQuOCwKKyAgICBkb2MvamEvZHBrZy1uYW1lLjEsIGRvYy9qYS9kcGtnLXNjYW5wYWNrYWdlcy44LAorICAgIGRvYy9qYS9kcGtnLXNjYW5zb3VyY2VzLjgsIGRvYy9qYS9kcGtnLXN0YXRvdmVycmlkZS44LCBkb2MvamEvZHBrZy44LAorICAgIGRvYy9qYS9pbnN0YWxsLWluZm8uOCwgZG9jL2phL3N0YXJ0LXN0b3AtZGFlbW9uLjgsCisgICAgZG9jL2phL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuOCwgZG9jL2phL3VwZGF0ZS1yYy5kLjg6IFVwZGF0ZWQuCisKK01vbiBNYXkgMjggMTY6MTk6NTEgQ0RUIDIwMDEgIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogZHBrZy1kZWIvZXh0cmFjdC5jLCBkc2VsZWN0L21haW4uY2MsIGxpYi9kYXRhYmFzZS5jLCBtYWluL2hlbHAuYywKKyAgICBtYWluL21haW4uYywgc3BsaXQvaW5mby5jLCB1dGlscy9zdGFydC1zdG9wLWRhZW1vbi5jOiBGaXggc29tZQorICAgIGdjYyAzLjAgd2FybmluZ3MuCisKK01vbiBNYXkgIDcgMjM6MDc6MDEgQ0VTVCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBtYWluL2RlcGNvbi5jOiByZXN0b3JlIHByZXZpb3VzIHN0YXRlbWVudCB0byBicmVhayByZXZlcnNlIGN5Y2xlcyAKKworTW9uIE1heSAgNyAyMzowNDo1NSBDRVNUIDIwMDEgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIG1haW4vZHVtcC5jOiBicmVhayB1cCBhbiBhc3NlcnRpb24gc28gaXQgaXMgZWFzaWVyIHRvIGZpZ3VyZSBvdXQgd2hhdAorICAgIHdlbnQgd3JvbmcuCisKK1N1biBNYXkgIDYgMTM6MjA6MDcgQ0VTVCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBtYWluL2FyY2hpdmVzLmM6IGFkZCBzYWZlX3JlYWQoKSB0byByZWFkIGZyb20gYSBwaXBlIGFuZCBkZWFsCisgICAgd2l0aCBwYXJ0aWFsIHJlYWRzLiBNb2RpZnkgdGFyb2JqZWN0KCkgYW5kIHRhcmZpbGVyZWFkKCkgdG8gdXNlCisgICAgdGhvc2UuCisKK1NhdCBNYXkgIDUgMDA6NDk6MzEgQ0VTVCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBwbC9jcy5wbzogVXBkYXRlZAorICAqIHBsL2RlLnBvOiBVcGRhdGVkCisgICogcG8vcGwucG86IFVwZGF0ZWQKKyAgKiBkc2VsZWN0L3BrZ3RvcC5jYzogTWFyayBhbm90aGVyIHN0cmFuZyBhcyB0cmFuc2xhdGFibGUKKworRnJpIE1heSAgNCAwMDoxOTowNSBDRVNUIDIwMDEgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIGRzZWxlY3QvbWFpbi5jYzogb29wcywgc3dhcHBlZCBqIGFuZCBrIGtleSBiaW5kaW5ncyBmb3IgbWFpbiBtZW51CisKK1dlZCBNYXkgIDIgMjA6NDE6MTAgQ0RUIDIwMDEgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBpbmNsdWRlL2Rwa2cuaC5pbiwgbWFpbi9NYWtlZmlsZS5pbiBtYWluL2VucXVpcnkuYyBtYWluL21haW4uYywKKyAgICBtYWluL3F1ZXJ5LmM6IFNwbGl0IG91dCBjb2RlIGZvciBjb21tYW5kcyAtc1NsTHAgaW50byBhIHNlcGFyYXRlCisgICAgYmluYXJ5LCBkcGtnLXF1ZXJ5LCBhbmQgaGF2ZSB0aGUgbm9ybWFsIGRwa2cgYmluYXJ5IGV4ZWMgdGhpcy4gIEFsc28sCisgICAgZHBrZyBub3cgdXNlcyBhIG1hY3JvIHRvIGRlZmluZSBleHRlcm5hbCBiYWNrZW5kcyB0byBjYWxsLgorCitXZWQgTWF5ICAyIDEyOjMyOjI0IENEVCAyMDAxIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogY29uZmlndXJlLmluOiBJZiAtLXdpdGhvdXQtemxpYiB3YXMgZ2l2ZW4sIGFuZCBzdGF0aWMgcHJvZ3JhbXMgd2VyZQorICAgIGVuYWJsZWQsIHRoZSBjb21waWxlIHdvdWxkIGZhaWwuCisKK1R1ZSBNYXkgIDEgMjM6MDU6NDggQ0RUIDIwMDEgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBsaWIvcGFyc2UuYzogT29wcy4gIEVPRl9tbWFwIHdhcyBpbmNvcnJlY3RseSBkZXRlY3RpbmcgdGhlIGVuZCBvZiB0aGUKKyAgICBkYXRhIGJsb2NrLgorICAqIG1haW4vZGVwY29uLmM6IEFmdGVyIGZpeGluZyB0aGUgYWJvdmUgYnVnLCBhbmQgdXNpbmcgZGVib290c3RyYXAgdG8KKyAgICBidWlsZCBhIHNpZCBjaHJvb3QsIEkgZGlzY292ZXJlZCB0aGF0IG15IHByZXZpb3VzIGRlcGVuZGVuY3kgY3ljbGUgZml4CisgICAgY291bGQgY2F1c2Ugc2VnZmF1bHRzIGluIHNvbWUgc2l0dWF0aW9ucy4KKworVHVlIE1heSAgMSAwMDoyNDo0OSBDRFQgMjAwMSBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGFjY29uZmlnLmgsIGNvbmZpZy5oLmJvdCwgY29uZmlndXJlLmluLCBsaWIvdmFyYnVmLmMsIGRlYmlhbi9jaGFuZ2Vsb2c6CisgICAgQ2hlY2sgZm9yIF9fdmFfY29weSwgYW5kIHVzZSBpdCwgaW5zdGVhZCBvZiBhIGRpcmVjdCBhc3NpZ25tZW50LCBmb3IKKyAgICBicm9rZW4gYXJjaGVzLCBsaWtlIHBwYy4KKyAgCitNb24gQXByIDMwIDE3OjM0OjQ3IENFU1QgMjAwMSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogY29uZmlndXJlLmluOiByZW1vdmUgbGFzdCBsaXN0IHJlZmVyZW5jZS4KKworTW9uIEFwciAzMCAxNDoyMjoyNSBFRFQgMjAwMSBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGRlYmlhbi9jaGFuZ2Vsb2c6IFJlY29tcGlsZSBmb3IgMS45LjIsIHRvIGZpeCBiYWRseSBnZW5lcmF0ZWQKKyAgICBkcGtnLWRpdmVydC4KKworTW9uIEFwciAzMCAxMDowNDozNiBDRFQgMjAwMSBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGxpYi9tbGliLmM6IEVBR0FJTiBwYXRjaCBmcm9tIDEuOCBicmFuY2ggd2FzIG5vdCBhcHBsaWVkIHRvIEhFQUQuCisKK1N1biBBcHIgMjkgMjI6Mzk6NTUgQ0RUIDIwMDEgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBsaWIvZGF0YWJhc2UuYywgbGliL2ZpZWxkcy5jOiBGaXggRXRlcm0vZXRlcm0gcHJvYmxlbS4gIGZpbmRwYWNrYWdlKCkKKyAgICBub3cgZG9lcyB0b2xvd2VyKCkgYmVmb3JlIHNlYXJjaGluZyBmb3IgYSBuYW1lLCBhbmQgZl9uYW1lKCkgdXNlcyB0aGUKKyAgICBuYW1lIGZpZWxkIGZyb20gdGhlIHJldHVybiB2YWx1ZSBvZiBmaW5kcGFja2FnZSgpLgorCitTdW4gQXByIDI5IDIyOjA4OjM3IENEVCAyMDAxIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogTWFrZWZpbGUuY29uZi5pbiwgY29uZmlndXJlLmluLCBkZWJpYW4vY29udHJvbCwgZGViaWFuL3J1bGVzLAorICAgIGRwa2ctZGViL01ha2VmaWxlLmluLCBtYWluL01ha2VmaWxlLmluLCB1dGlscy9NYWtlZmlsZS5pbiwKKyAgICAuY3ZzaWdub3JlIGRlYmlhbi8uY3ZzaWdub3JlOiBBZGRlZCAtc3RhdGljIHN1cHBvcnQuICBUaGVyZSBpcyBzdXBwb3J0CisgICAgZm9yIGJ1aWxkaW5nIGEgZHBrZy1zdGF0aWMuZGViLCBidXQgdGhpcyBpcyBub3QgdXNlZCBkdXJpbmcgYSBub3JtYWwKKyAgICBydW4uICBIb3dldmVyLCBhIC1zdGF0aWMubm9uZGViYmluLnRhci5neiBmaWxlIGlzIGNyZWF0ZWQsIGluIGFkZGl0aW9uCisgICAgdG8gdGhlIG5vcm1hbCBub25kZWJiaW4udGFyLmd6LgorCitNb24gQXByIDMwIDAyOjM1OjAyIENFU1QgMjAwMSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogZGViaWFuL2NvbnRyb2w6IHVwZGF0ZSBzZWN0aW9uIGFuZCBwcmlvcml0aWVzIHRvIG1hdGNoIHRoZSBkaW5zdGFsbAorICAgIG92ZXJyaWRlcworCitTYXQgQXByIDI4IDE2OjM0OjI0IENEVCAyMDAxIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogdmVyc2lvbi1ucjogT29wcywgZm9yZ290IHRvIHVwZGF0ZSB0aGlzLgorCitTYXQgQXByIDI4IDE2OjE3OjU4IENEVCAyMDAxIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogdXRpbHMvbWQ1c3VtLmMsIGRlYmlhbi9jaGFuZ2Vsb2c6IEZpeCBtZDVzdW0gLWMuCisKK1NhdCBBcHIgMjggMTU6MjI6MjUgQ0RUIDIwMDEgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBsaWIvbmZtYWxsb2MuYzogaW4gbmZzdHJuc2F2ZSwgZG9uJ3Qgc2V0IHRoZSBjaGFyIGFmdGVyIHRoZSBlbmQsIGJ1dAorICAgIHNldCB0aGUgZW5kLCB0byBcMC4KKyAgKiBsaWIvcGFyc2UuYzogRG9uJ3QgbG9vc2UgdGhlIGxhc3QgY2hhciBvZiBhIGZpZWxkIHZhbHVlLCB3aGVuIEVPRiBpcworICAgIGhpdC4KKworU2F0IEFwciAyOCAxNDozMToyNyBDRFQgMjAwMSBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIHNjcmlwdHMvZHBrZy1kaXZlcnQucGwsIGRlYmlhbi9jaGFuZ2Vsb2c6IEZpeCByZW1vdmluZyBvZiBkaXZlcnNpb25zLgorICAgIFRoaXMgaGFzIGFsd2F5cyBiZWVuIGJyb2tlbiwgYnV0IHdhcyBqdXN0IG1hc2tlZCBieSBhbm90aGVyIGJ1ZywgdGhhdAorICAgIG1hZGUgaXQgd29yay4gOnwKKworU2F0IEFwciAyOCAxMjoxODo1NSBDRVNUIDIwMDEgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2Uuc2g6IG9ubHkgY2hlY2sgZm9yIHZhbGlkIHNpZ24gaW50ZXJmYWNlCisgICAgd2hlbiB0aGUgdXNlciBzcGVjaWZpZXMgb25lCisgICAKK1NhdCBBcHIgMjggMDM6MzM6MjggQ0RUIDIwMDEgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBkZWJpYW4vZHBrZy5jZmc6IENoYW5nZWQgdG8gaW5jbHVkZSBuby1kZWJzaWcgYnkgZGVmYXVsdCwgYXMgbm8gZGVicworICAgIGFyZSBjdXJyZW50bHkgc2lnbmVkLCBhbmQgd2UgZ2V0IGZhbHNlIGVycm9ycyB3aGVuIGRlYnNpZy12ZXJpZnkgaXMKKyAgICBpbnN0YWxsZWQuICBUaGlzIHdpbGwgYmUgcmVtb3ZlZCBpbiB0aGUgZnV0dXJlLCB3aGVuIHRoZSBhcmNoaXZlIHRvb2xzCisgICAgc3VwcG9ydCBwYWNrYWdlIHNpZ25hdHVyZXMuCisKK0ZyaSBBcHIgMjcgMjA6NDM6MjUgQ0RUIDIwMDEgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBsaWIvbmZtYWxsb2MuYzogbmZzdHJuc2F2ZSgpIHdhcyBub3QgYWxsb2NhdGVkIG4rMSBjaGFycywgYW5kIHdhcyBub3QKKyAgICBzZXR0aW5nIHRoZSBuKzEgYnl0ZSB0byBcMC4KKworU2F0IEFwciAyOCAwMjo1Mjo1NiBDRVNUIDIwMDEgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6IGRvIG5vdCBjYXJlIGlmIGRwa2cgLS1zZWFyY2ggcmV0dXJucworICAgIHdpdGggYW4gZXJyb3I6IGl0IHdpbGwgZG8gdGhhdCBrbm93IGlmIHdlIHNlYXJjaCBmb3Igc29tZXRoaW5nCisgICAgdGhhdCBpcyBub3QgaW5zdGFsbGVkIHdoaWNoIGlzIGEgdmFsaWQgY2FzZSBmb3IgdXMuCisKK0ZyaSBBcHIgMjcgMTM6MTQ6MDQgQ0RUIDIwMDEgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBsaWIvcGFyc2UuYywgZGViaWFuL2NoYW5nZWxvZzogRml4IGEgc2VnZmF1bHQgd2hlbiByZWFkaW5nIGFuIGVtcHR5CisgICAgZmlsZSBpbiBwYXJzZWRiKCksIGltcG9ydGVkIGZyb20gaGVhZC4KKworVGh1IEFwciAyNiAxMzoxNTowMiBDRFQgMjAwMSBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIG1haW4vY29uZmlndXJlLmM6IFVwZGF0ZSB0byB3b3JrIHdpdGggcmVjZW50IGxpYi9tbGliLmMgY2hhbmdlIGluCisgICAgbWQ1IGhhbmRsaW5nLgorCitUaHUgQXByIDI2IDExOjUxOjM0IENEVCAyMDAxIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogc3BsaXQve2luZm8sam9pbixtYWluLHF1ZXVlLHNwbGl0fS5jOiBzLzAvTlVMTC8KKworVGh1IEFwciAyNiAxMzozNjo0MSBDRVNUIDIwMDEgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIHV0aWxzL21kNXN1bS5jOiB1c2UgbGliZHBrZyBlcnJvciBoYW5kbGluZyBzaW5jZSBmZF9tZDUgdXNlcyB0aGF0CisgICAgdG8gcmVwb3J0IGVycm9ycy4KKworV2VkIEFwciAyNSAyMDoyMDowNyBDRFQgMjAwMSBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIHV0aWxzL21kNXN1bS5jLCBsaWIvbWxpYi5jOiBNb2RpZmllZCBtbGliLmMsIHRvIG1hbGxvYyBlbm91Z2ggc3BhY2UKKyAgICBmb3IgdGhlIGRpZ2VzdCwgaW5zdGVhZCBvZiBtb2RpZnlpbmcgdGhlIHN0YXRpYyBidWZmZXIgdGhhdCB3YXMKKyAgICBwcmV2aW91c2x5IHBhc3NlZCBpbi4KKworVGh1IEFwciAyNiAwMDozMjozNSBDRVNUIDIwMDEgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIHBvL2RhLnBvOiBVcGRhdGVkCisKK1dlZCBBcHIgMjUgMTg6NDY6NDcgQ0VTVCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBkc2VsZWN0L2RzZWxlY3QuODogZG9jdW1lbnQgZHNlbGVjdC5jZmcKKworV2VkIEFwciAyNSAxNzoyNzozNiBDRVNUIDIwMDEgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIHBvL2VzLnBvOiBVcGRhdGVkCisKK1dlZCBBcHIgMjUgMTM6MTU6NDEgQ0VTVCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBtYWluL2Rwa2cuODogZG9jdW1lbnQgZHBrZy5jZmcKKworV2VkIEFwciAyNSAxMzowNToxMyBDRVNUIDIwMDEgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIG1haW4vZHBrZy44OiBGaXggZm9ybWF0aW5nIGVycm9yCisKK1dlZCBBcHIgMjUgMDI6MjA6NDAgQ0VTVCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBwby9nbC5wbzogVXBkYXRlZAorCitXZWQgQXByIDI1IDAxOjA5OjUwIENFU1QgMjAwMSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogcG8ve2phLHJ1fS5wbzogZml4IGluY29uc2lzdGVuY2llcyBpbiBsaW5lIGVuZGluZ3Mgd3J0IFxuCisKK1dlZCBBcHIgMjUgMDA6NTY6MTQgQ0VTVCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBwby9ydS5wbzogVXBkYXRlZAorCitXZWQgQXByIDI1IDAwOjI5OjUxIENFU1QgMjAwMSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogcG8vZGEucG86IE5ldyBEYW5pc2ggdHJhbnNsYXRpb24KKyAgKiBjb25maWd1cmUuaW46IGFkZCBkYSB0byBBTExfTElOR1VBUworCitUdWUgQXByIDI0IDIwOjU3OjQ4IENFU1QgMjAwMSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogcG8vamEucG86IFVwZGF0ZWQKKworVHVlIEFwciAyNCAyMDoyODowNCBDRVNUIDIwMDEgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIHBvL2NzLnBvOiBVcGRhdGVkCisgICogcG8vcGwucG86IFVwZGF0ZWQKKworVHVlIEFwciAyNCAxNzoyMzowNSBDRVNUIDIwMDEgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIG1haW4vbWFpbi5jLCBwby8qLnBvOiBmaXggdHlwbworCitUdWUgQXByIDI0IDE0OjQ0OjI4IENFU1QgMjAwMSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogYnVuY2gtby1maWxlczogbW92ZSBkcGtnLXNjYW5zb3VyY2VzIG1hbnBhZ2UgdG8gc2VjdGlvbiA4CisKK1R1ZSBBcHIgMjQgMTQ6MzE6NDEgQ0VTVCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBkZWJpYW4vcnVsZXM6IGluc3RhbGwgZW5vZW50IGluIHRoZSBkcGtnIHBhY2thZ2UKKworVHVlIEFwciAyNCAxNDoyOTowMyBDRVNUIDIwMDEgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIGRlYmlhbi9ydWxlczogYWN0dWFsbHkgaW5zdGFsbCBGcmVuY2ggbWFucGFnZXMgYXMgd2VsbAorCitUdWUgQXByIDI0IDEzOjM4OjU4IENFU1QgMjAwMSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogc2NyaXB0cy9kcGtnLWRpdmVydC5wbDogRml4IHdyb25nIGVycm5vIHRlc3QKKworVHVlIEFwciAyNCAxMzozNTowOCBDRVNUIDIwMDEgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIHBvL2l0LnBvOiBOZXcgdmVyc2lvbiBmcm9tIExlbGUgR2FpZmF4CisKK1R1ZSBBcHIgMjQgMTM6MjE6MzkgQ0VTVCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBNZXJnZSBTdXBlckggcGF0Y2ggZnJvbSBZQUVHQVNISSBUYWtlc2hpCisgICogYXJjaHRhYmxlOiBhZGQgU3VwZXJIIHZhcmlhbnRzCisgICogc2NyaXB0cy9kcGtnLWFyY2hpdGVjdHVyZS5wbDogZml4IHR5cG8gKHNoZWQgLT4gc2hlYikKKyAgKiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnNoOiBmaXggZHBrZy1hcmNoaXRlY3R1cmUgY2FsbAorCitUdWUgQXByIDI0IDEzOjAzOjU0IENFU1QgMjAwMSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogdXRpbHMvZW5vZW50LmM6IG5ldyB1dGlsaXR5IHRvIGdldCBFTk9FTlQgdmFsdWUgYXQgcnVudGltZQorICAqIHV0aWxzL01ha2VmaWxlLmluOiBpbnN0YWxsIEVOT0VOVCBpbiBkcGtnbGliZGlyCisgICogc2NyaXB0cy9kcGtnLWRpdmVydC5wbCwgdXBkYXRlLWFsdGVybmF0aXZlcy5wbDogdXNlIGVub2VudCB0byBnZXQKKyAgICBFTk9FTlQgdmFsdWUKKworVHVlIEFwciAyNCAxMzowMToyOCBDRVNUIDIwMDEgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIGRzZWxlY3QvTWFrZWZpbGUuaW4sIG1haW4vTWFrZWZpbGUuaW4sIHV0aWxzL01ha2VmaWxlLmluOiB1c2UKKyAgICBJTlNUQUxMX1BST0dSQU0gdG8gaW5zdGFsbCBwcm9ncmFtcworCitUdWUgQXByIDI0IDExOjU3OjQ4IENFU1QgMjAwMSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogbWFpbi9hcmNoaXZlcy5jOiBzcGVsbCByZWN1cnNpdmUgY29ycmVjdGx5CisgICogcG8vc3YucG86IHVwZGF0ZWQgc28gaXQgc3RpbGwgdHJhbnNsYXRlcyB0aGUgZml4ZWQgbWVzc2FnZQorICAqIHBvL3J1LnBvOiB1cGRhdGVkCisKK1R1ZSBBcHIgMjQgMDc6MDI6MDEgQ0VTVCAyMDAxIHBldGVyIGthcmxzc29uIDxwZXRlcmtAZGViaWFuLm9yZz4KKworICAqIGRvYy9zdi9kcGtnLjgsIHBvL3N2LnBvOiBVcGRhdGVkIFN3ZWRpc2ggdHJhbnNsYXRpb24uCisKK1R1ZSBBcHIgMjQgMDI6NTU6MjEgQ0VTVCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBwby9kZS5wbzogcmVtb3ZlIExhbmd1YWdlLVRlYW0gaGVhZGVyLCB0aGUgZGViaWFuLWwxMG4tZ2VybWFuCisgICAgbGlzdCBpdCBwb2ludGVkIHRvIGRvZXMgbm90IGV4aXN0LgorCitUdWUgQXByIDI0IDAyOjQxOjIzIENFU1QgMjAwMSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogbWFpbi9lbnF1aXJ5LmM6IGFkZCBtaXNzaW5nIG5ld2xpbmUgYWZ0ZXIgZXJyb3IgbWVzc2FnZQorCitUdWUgQXByIDI0IDAyOjEzOjQzIENFU1QgMjAwMSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogZHNlbGVjdC9tYWluLmNjOiB1c2UgbXlmaWxlb3B0IGFzIHdlbGwgdG8gcmVhZCBkc2VsZWN0LmNmZworICAqIGRlYmlhbi9kc2VsZWN0LmNmZzogbmV3IGZpbGUKKyAgKiBkZWJpYW4vcnVsZXM6IGluc3RhbGwgZHNlbGVjdC5jZmcKKyAgKiBkZWJpYW4vZHBrZy5jb25mZmlsZXM6IGFkZCBkc2VsZWN0LmNmZworCitUdWUgQXByIDI0IDAxOjQwOjExIENFU1QgMjAwMSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogZHNlbGVjdC9wa2dsaXN0LmNjOiByZXBhaXIgcXNvcnRfY29tcGFyZWVudHJpZXMKKworTW9uIEFwciAyMyAxODowODozNyBDRFQgMjAwMSBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGxpYi9wYXJzZWhlbHAuYzogUmVkdWNlIG1lbW9yeSBhIHRhZC4KKyAgKiBkZWJpYW4vY2hhbmdlbG9nOiBDbG9zZSBhZGRpdGlvbmFsIGJ1Z3MuCisgICogZGViaWFuL3J1bGVzOiBBZGRlZCBhIGJ1aWxkLXN0YXRpYyBydWxlLgorCitNb24gQXByIDIzIDE3OjE3OjM1IENEVCAyMDAxIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogbWFpbi9lbnF1aXJ5LmM6IEFkZGl0aW9uYWwgYWRkIGVycm9yIHJldHVybnMgZm9yIC1MLCAtcywgYW5kIC1wLgorICAqIGRlYmlhbi9jaGFuZ2Vsb2c6IENsb3NlIGEgZGViaWFuIGJ1ZyBiZWNhdXNlIG9mIHRoaXMuCisKK01vbiBBcHIgMjMgMjM6NTQ6MzQgQ0VTVCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBtYWluL21haW4uaDogYWRkIGRlY2xhcmF0aW9uIGZvciBuZXJycworICAqIG1haW4vZW5xdWlyeS5jOiBleGl0IHdpdGggbm9uLXplcm8gZXhpdGNvZGUgaWYgLWwgb3IgLVMgZG8gbm90IAorICAgIHByb2R1Y2UgYW55IG91dHB1dCAKKworTW9uIEFwciAyMyAxNjowOTozOCBDRFQgMjAwMSBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGluY2x1ZGUvZHBrZy5oLmluLCBsaWIvbWxpYi5jLCBtYWluL2FyY2hpdmVzLmMsIGRlYmlhbi9jaGFuZ2Vsb2c6IEFkZGVkCisgICAgbmV3IFBST0NOT0VSUiBmbGFnLCB3aGljaCBkaXNhYmxlZCB0aGUgZXJyb3IgbWVzc2FnZSB0aGF0IGlzIGRpc3BsYXllZAorICAgIHdoZW4gYSBwcm9jZXNzIGhhcyBhbiBlcnJvciByZXR1cm4uCisKK01vbiBBcHIgMjMgMjI6MjY6MjMgQ0VTVCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBtYWluL2Rwa2cuODogbm90ZSB0aGF0IGZvcmNlLW92ZXJ3cml0ZSBpcyBub3QgZW5hYmxlZCBwZXIgZGVmYXVsdAorCitNb24gQXByIDIzIDE1OjM5OjM3IENEVCAyMDAxIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogZHBrZy1kZWIve2J1aWxkLGV4dHJhY3QsaW5mb30uYywgaW5jbHVkZS9kcGtnLmguaW4sIGxpYi9tbGliLmMsCisgICAgbWFpbi97YXJjaGl2ZXMsZW5xdWlyeSxoZWxwLHByb2Nlc3NhcmN9LmM6IENvbnZlcnQgd2FpdHN1YnByb2MgYW5kCisgICAgY2hlY2tzdWJwcm9jZXJyIHRvIHVzZSBhIGZsYWdzIHZhcmlhYmxlLCBpbnN0ZWFkIG9mIHNlcGFyYXRlIGludHMuCisKK01vbiBBcHIgMjMgMTU6MzY6NTggQ0RUIDIwMDEgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBtYWluL2RlcGNvbi5jLCBkZWJpYW4vY2hhbmdlbG9nOiBXaGVuIHdhbGtpbmcgdGhlIGxpc3Qgb2YgcHJvdmlkZXJzIG9mCisgICAgYSBkZXBlbmRlbmN5LCB0aGUgYXJndW1lbnRzIHdlcmUgcGFzc2VkIGluIHJldmVyc2UgdG8gdGhlIGN5Y2xlYnJlYWsKKyAgICBjaGVja2VyLCBzbyBjeWNsZXMgaW52b2x2aW5nIHByb3ZpZGVzIHdlcmUgbmV2ZXIgZGV0ZWN0ZWQuCisgICogZGViaWFuL2NoYW5nZWxvZzogRG9jdW1lbnQgdGhhdCB3ZSBmaXhlZCBhIHNlZ2ZhdWx0LgorCitNb24gQXByIDIzIDE0OjEzOjQ4IENEVCAyMDAxIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogbWFpbi9oZWxwLmM6IEZpeCBiYWQgbWVtb3J5IGFjY2VzcyBkb19zY3JpcHQoKSwgaW50cm9kdWNlZCB3aGVuIHRoZQorICAgIGNhc3RpbmcgZXJyb3JzIHdlcmUgZml4ZWQgcHJldmlvdXNseS4KKworTW9uIEFwciAyMyAwNjoyNzo0NyBDRFQgMjAwMSBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGxpYi8qLmM6IENoYW5nZWQgMCB0byBOVUxMLgorCitNb24gQXByIDIzIDA2OjI1OjM2IENEVCAyMDAxIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogZHBrZy1kZWIvZXh0cmFjdC5jOiBNb3JlICV6IGZvcm1hdCBmaXhlcy4KKworTW9uIEFwciAyMyAwNTozMTowMyBDRFQgMjAwMSBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIHNwbGl0L2luZm8uYzogQ2hhbmdlIGZvcm1hdCBzdHJpbmcsIHRvIGhhbmRsZSBzaXplX3QuCisKK01vbiBBcHIgMjMgMDQ6NDU6MjMgQ0RUIDIwMDEgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBtYWluL21haW4uYzogcy8tLW5vLWRlYnNpZ24vLS1uby1kZWJzaWcvIGluIGhlbHAuCisKK01vbiBBcHIgMjMgMDM6MjE6MTAgQ0RUIDIwMDEgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBkcGtnLWRlYi97YnVpbGQsZXh0cmFjdCxtYWlufS5jLCBzcGxpdC97aW5mbyxqb2luLG1haW4scXVldWV9LmMsCisgICAgc3BsaXQvZHBrZy1zcGxpdC5oLCBsaWIve2R1bXAsZWhhbmRsZSxmaWVsZHMsbWxpYixwYXJzZXssaGVscH0sdmFyYnVmLAorICAgIHZlcmNtcH0uYywgbGliL3BhcnNlZHVtcC5oLCBtYWluL3thcmNoaXZlcyxjb25maWd1cmUsZW5xdWlyeSxmaWxlc2RiLAorICAgIGhlbHAsbWFpbixwYWNrYWdlcyxwcm9jZXNzYXJjLHJlbW92ZX0uYywgbWFpbi97ZmlsZXNkYixtYWlufS5oLAorICAgIHV0aWxzL3ttZDVzdW0sIHN0YXJ0LXN0b3AtZGFlbW9ufS5jLCBkc2VsZWN0L3BrZ3tsaXN0LmNjLGxpc3QuaGgsCisgICAgdG9wLmNjfSwgaW5jbHVkZS9kcGtney1kYi5oLC5oLmlufTogRml4ZWQgdXAgc2V2ZXJhbCB3YXJuaW5nIHR5cGVzLgorICAgIGNvbnN0LCBjYXN0aW5nLCBpbmNvcnJlY3Qgc2l6ZXMsIHNpZ25lZC91bnNpZ25lZCBjb21wYXJpc29ucy4KKworTW9uIEFwciAyMyAwMjoxNzoyNiBDRFQgMjAwMSBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGRwa2ctZGViL2luZm8uYywgbWFpbi9wcm9jZXNzYXJjLmM6IEFkZCBjb21tZW50cyB0ZWxsaW5nIHdoeSB3ZQorICAgIHVzZSB0ZW1wbmFtKCkgYW5kIHRtcG5hbSgpLgorCitTdW4gQXByIDIyIDIzOjU5OjAwIENEVCAyMDAxIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogYXJjaHRhYmxlOiBBZGRlZCBhbHBoYWV2NjctbGludXgtZ251LgorCitTdW4gQXByIDIyIDE5OjAyOjEyIENEVCAyMDAxIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogbGliL3BhcnNlLmM6IHMvUEFSU0VfTU1BUC9IQVZFX01NQVAvLCBzbyB0aGF0IHdlIG5vdyB1c2UgbW1hcAorICAgIHRvIHJlYWQgc3RhdHVzIGFuZCBhdmFpbGFibGUoYW5kIGxpa2UgZmlsZXMpLgorCitTdW4gQXByIDIyIDE4OjMyOjAyIENEVCAyMDAxIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogbGliL3BhcnNlLmM6IEZpeCBhbm90aGVyIHNlZ2ZhdWx0IHdoZW4gcGFyc2luZyBzaW5nbGUtcGFyYWdyYXBoCisgICAgZmlsZXMoaWUsIHRtcC5jaS9jb250cm9sKS4KKworU3VuIEFwciAyMiAxNzoxMzoxNyBDRVNUIDIwMDEgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIG1haW4vZmlsZXNkYi5jOiBmaXggcHV0YXQgbG9naWMgd2UgYnJva2UgZWFybGllciB0b2RheQorCitTdW4gQXByIDIyIDE2OjQyOjIyIENFU1QgMjAwMSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogbWFpbi9maWxlc2RiLmM6IGRvbid0IHJlYWQgYSBzdGF0b3ZlcnJpZGUgb3IgLmxpc3QgZmlsZSBpZiB0aGV5CisgICAgYXJlIDAgYnl0ZXMKKworU3VuIEFwciAyMiAxNToxNTo1NiBDRVNUIDIwMDEgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIG1haW4vaGVscC5jOiBlbnN1cmVfcGFja2FnZV9jbGllbnRkYXRhKCkgb25seSBuZWVkcyB0byBhbGxvY2F0ZSBtZW1vcnkKKyAgICBmb3IgYSBwZXJwYWNrYWdlc3RhdGUgc3RydWN0LCBub3QgYSBwa2dpbmZvcGVyZmlsZS4KKworU3VuIEFwciAyMiAwMjo0NjowNiBDRFQgMjAwMSBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGRwa2ctZGViL2J1aWxkLmMsIGRwa2ctZGViL2V4dHJhY3QuYywgZHBrZy1kZWIvbWFpbi5jLCBsaWIvbWxpYi5jKCopLAorICAgIGxpYi9zaG93Y29weXJpZ2h0LmMsIG1haW4vZW5xdWlyeS5jLCBtYWluL21haW4uYywgc3BsaXQvbWFpbi5jLAorICAgIHNwbGl0L3NwbGl0LmMsIHV0aWxzL21kNXN1bS5jLCB1dGlscy9zdGFydC1zdG9wLWRhZW1vbi5jOiBBZGRlZAorICAgIG1hY3JvIE5PTlJFVFVSTklORyB0byBzZXZlcmFsIGZ1bmN0aW9ucy4KKworU3VuIEFwciAyMiAwMjowMjozNCBDRVNUIDIwMDEgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIG1haW4vZmlsZXNkYjogY2hhbmdlIGluaXRpYWxpemF0aW9uIG9mIHB1dGF0IGluCisgICAgZW5zdXJlX3BhY2thZ2VmaWxlc19hdmFpbGFibGUoKSBzbyBnY2Mgd29uJ3Qgd2FybiBhYm91dCBwb3NzaWJsZQorICAgIHVuaW5pdGlhbGl6ZWQgdXNhZ2UKKworU3VuIEFwciAyMiAwMTo0NToyNSBDRVNUIDIwMDEgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIHV0aWxzL3N0YXJ0LXN0b3AtZGFlbW9uLmM6IG5vIGxvbmdlciB1c2UgZGVwcmVjYXRlZCBtdWx0aS1saW5lIHN0cmluZworICAqIHV0aWxzL21kNXN1bS5jOiBpbmNsdWRlIHN0ZGxpYi5oIHRvIGdldCBkZWNsYXJhdGlvbiBvZiBleGl0CisKK1NhdCBBcHIgMjEgMTg6MDA6MzEgQ0RUIDIwMDEgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBtYWluL21haW4uYzogcmV3b3JrZWQgXFwgcGFyc2luZyBpbiBjb21tYW5kZmQuCisgICogbGliL2RibW9kaWZ5LmM6IGZpeCBub24tZnVsbCBpbml0YWxpemVyLgorCitTdW4gQXByIDIyIDAwOjQ4OjE4IENFU1QgMjAwMSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogbWFpbi9tYWluLmM6IGZpeGVkIHNvbWUgYml6YXIgcG9pbnRlciB1c2FnZQorCitTdW4gQXByIDIyIDAwOjMzOjI2IENFU1QgMjAwMSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogTWFrZWZpbGUuY29uZi5pbjogcmVtb3ZlIG5vIGxvbmdlciB1c2VkIHdhcm5pbmcgZmxhZ3MKKworU2F0IEFwciAyMSAxNzoxNjoyOCBDRFQgMjAwMSBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIG1haW4vaGVscC5jLCBtYWluL3Byb2Nlc3NhcmMuYywgbWFpbi9maWxlc2RiLmMsICBtYWluL2NvbmZpZ3VyZS5jLAorICAgIG1haW4vYXJjaGl2ZXMuYywgbGliL3BhcnNlLmM6IEZpeCBpbnQvcG9pbnRlciBjYXN0aW5nIHdhcm5pbmdzLgorICAqIGluY2x1ZGUvZHBrZy5oLmluLCBsaWIvbWxpYi5jOiBSZXdyb3RlIGJ1ZmZlcl9jb3B5X3NldHVwLCB0byBhdm9pZAorICAgIGludC9wb2ludGVyIGNhc3Rpbmcgd2FybmluZ3MuICBUaGVzZSBtZWFucyB0aGVyZSBhcmUgc2V2ZXJhbAorICAgIHZhcmlhdGlvbnMgb2YgYnVmZmVyX2NvcHlfc2V0dXAuICBBbHNvLCBjb252ZXJ0ZWQgdGhlIGRlc2MgcGFyYW1ldGVyCisgICAgdG8gY29uc3QuCisKK1N1biBBcHIgMjIgMDA6MDk6NTggQ0VTVCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBvcHRsaWIvbG9uZy1vcHRpb25zLmMsIGxpYi9zaG93Y3JpZ2h0LmM6IGluY2x1ZGUgc3RkbGliLmggdG8gZ2V0CisgICAgZGVjbGFyYXRpb24gb2YgZXhpdAorCitTYXQgQXByIDIxIDE3OjEwOjMyIENFU1QgMjAwMSBwZXRlciBrYXJsc3NvbiA8cGV0ZXJrQGRlYmlhbi5vcmc+CisKKyAgKiBwby9zdi5wbywgZG9jL3N2L2Rwa2cuOCwgZG9jL3N2L3N0YXJ0LXN0b3AtZGFlbW9uLjg6CisgICAgVXBkYXRlZCBTd2VkaXNoIHRyYW5zbGF0aW9uLgorCitGcmkgQXByIDIwIDE2OjAyOjUxIENEVCAyMDAxIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogZGViaWFuL2NoYW5nZWxvZzogRG9jdW1lbnQgc3R1ZmYgdGhhdCB3YXMgZG9uZSBpbiBEZWNlbWJlci4KKworU2F0IEFwciAyMSAwNDowMjo1OCBDRVNUIDIwMDEgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIG1haW4vZHBrZy44OiByZW1vdmUgTGludXggcmVmZXJlbmNlCisKK1NhdCBBcHIgMjEgMDI6Mzk6MzcgQ0VTVCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOiBmaXggdHlwbyBpbiB2ZXJjbXAgdmVyc2lvbiBjYWNoZQorICAqIHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6IHJlbW92ZSBzdGF0ZW1lbnQgdGhhdCB3YXMgYmFzaWNhbGx5CisgICAgYSBzdHJhbmdlIG5vLW9wCisgICogc2NyaXB0cy9jb250cm9sbGliLnBsOiBnaXZlICBzeW50YXggZXJyb3IgZm9yIHVuZXhwZWN0ZWQgUEdQIHNpZ25hdHVyZQorICAqIGRlYmlhbi9jaGFuZ2Vsb2c6IHVwZGF0ZWQKKworRnJpIEFwciAyMCAxOTo0NjozOCBDRFQgMjAwMSBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIHBvL3BsLnBvOiBSZW1vdmUgc3B1cmlvdXMgJyVzJyBpbiBQb2xpc2ggdHJhbnNsYXRpb24KKworRnJpIEFwciAyMCAxOTozNzowMCBDRFQgMjAwMSBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6IEltcG9ydCBmaXggZm9yIGJyb2tlbiBkcGtnLXNvdXJjZS5wbCBmcm9tCisgICAgMS44LjMgdmVyc2lvbi4KKworRnJpIEFwciAyMCAxOTowNTo0NCBDRFQgMjAwMSBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGxpYi9kYm1vZGlmeS5jOiBGaXggdmFyYnVmcHJpbnRmIGNhbGwgaW4gbW9kc3RhdGRiX25vdGUoZm91bmQgd2hlbgorICAgIHByaW50ZiBmb3JtYXQgd2FybmluZ3Mgd2VyZSBlbmFibGVkKS4KKworRnJpIEFwciAyMCAxOTowMjo0NiBDRFQgMjAwMSBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGNvbmZpZ3VyZS5pbjogTmV3IG9wdGlvbiwgLS13aXRoLVdlcnJvciwgdG8gY29udmVydCBhbGwgd2FybmluZ3MKKyAgICBpbnRvIGVycm9ycy4KKworRnJpIEFwciAyMCAxODoyMTo0NSBDRFQgMjAwMSBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGF1dG9tYWtlL2Rwa2cubTQsIGNvbmZpZ3VyZS5pbjogQWRkIHN1cHBvcnQgZm9yIGdjYyBhdHRyaWJ1dGVzLAorICAgIHByaW50ZmZvcm1hdCwgZXRjLgorCitGcmkgQXByIDIwIDE4OjE4OjIwIENEVCAyMDAxIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogbGliL2RhdGFiYXNlLmM6IGluaXRpYWxpemUgb3RoZXJwcmlvcml0eSB3aXRoIDAsIG5vdCBhbiBpbnQuCisKK1NhdCBBcHIgMjEgMDA6NDM6NDEgQ0VTVCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBsaWIvcGFyc2UuYzogc3dhcCBvcmRlciBmb3IgJS4qcyBmb3JtYXRzCisKK0ZyaSBBcHIgMjAgMjI6NTk6MzkgQ0VTVCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBsaWIvZGF0YWJhc2UuYzogaW5pdGlhbGl6ZSBvdGhlcnByaW9yaXR5IGFzIHdlbGwgaW4gYmxhbmtwYWNrYWdlKCkKKworRnJpIEFwciAyMCAyMjo1OTozOSBDRVNUIDIwMDEgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIGxpYi9laGFuZGxlLmM6IG1ha2Ugc3VyZSB3ZSBuZXZlciBvdmVyZmxvdyBlcnJtc2didWYKKworRnJpIEFwciAyMCAxNDo1OToxNCBDRFQgMjAwMSBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIG1haW4vbWFpbi5jOiBBY2NpZGVudGFsbHkgY29tbWl0dGVkIGEgZGVidWcgZnByaW50ZiBzdG10IGluIHRoZSBsYXN0IGNpLgorCitGcmkgQXByIDIwIDEzOjQyOjEyIENEVCAyMDAxIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogbWFpbi9tYWluLmM6IERpc2FibGVkIC0tY29tbWFuZC1mZCwgdW50aWwgZnVydGhlciB0ZXN0aW5nIGNhbiBiZSBkb25lLgorCitGcmkgQXByIDIwIDEzOjAyOjIzIENEVCAyMDAxIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogcG8vZnIucG86IEZpeCB0eXBvLgorICAqIGRlYmlhbi9jaGFuZ2Vsb2c6IENsb3NlIGFkZGl0aW9uYWwgYnVncywgZnJvbSBvdGhlciBhbHJlYWR5IGNvbW1pdHRlZAorICAgIHBhdGNoZXMuCisKK1RodSBBcHIgMTkgMTU6MTg6MDUgQ0VTVCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBzY3JpcHRzL2NsLWRlYmlhbi5wbDogbWFrZSByZWdleHBzIGZvciBDbG9zZXMgY29uc2lzdGVudCBhZ2FpbgorCitUaHUgQXByIDE5IDEzOjM2OjU4IENFU1QgMjAwMSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogdXRpbHMvaW5zdGFsbC1pbmZvLntjLDh9OiBtZXJnZSBwYXRjaCBmcm9tIElhbiBKYWNrc29uIHRvIGFkZCBhCisgICAgLS1yZXRyeSBvcHRpb24gdG8gc3RhcnQtc3RvcC1kYWVtb24KKworVGh1IEFwciAxOSAwMDoxNDozOSBDRFQgMjAwMSBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIG1haW4vZW5xdWlyeS5jOiBFcnJvcnMgZHVyaW5nIGRwa2cgLXMoYW5kIG90aGVyIHNpbWlsYXIgY29tbWFuZHMpIGFyZQorICAgIG5vdyBwcmludGVkIG9uIHN0ZGVyci4KKworVGh1IEFwciAxOSAwMDowMzoxNiBDRFQgMjAwMSBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIG1haW4vYXJjaGl2ZXMuYzogIEFwcGx5IHBhdGNoIGZyb20gRnVtaXRvc2hpIFVLQUkgPHVrYWlAZGViaWFuLm9yLmpwPiwKKyAgICB0aGF0IGVzY2FwZXMgaW52YWxpZCBjaGFyYWN0ZXJzIGluIGZpbGVuYW1lcyhpbnRsKS4KKworV2VkIEFwciAxOCAyMzo1Mzo0MCBDRFQgMjAwMSBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGxpYi9kYXRhYmFzZS5jOiBJbiBibGFua3BhY2thZ2UsIGludGlhbGl6ZSAtPmluc3RhbGxlZCBhbmQgLT5hdmFpbGFibGUuCisgICAgRm91bmQgYnkgbWUgYW5kIEZ1bWl0b3NoaSBVS0FJIDx1a2FpQGRlYmlhbi5vci5qcD4uICBUaGlzIHNob3VsZCBoZWxwCisgICAgc2V2ZXJhbCBzZWdmYXVsdHMgdGhhdCBwZW9wbGUgaGF2ZSBiZWVuIHNlZWluZyBpbiBkcGtnLgorCitXZWQgQXByIDE4IDIzOjQyOjE2IENEVCAyMDAxIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogbGliL21saWIuYzogSWYgdGhlIGJ1ZmZlciBzaXplIGlzIDAgaW4gYnVmZmVyX2NvcHksIHRoZW4gcmV0dXJuLCBhbmQKKyAgICBkbyBub3RoaW5nLgorCitXZWQgQXByIDE4IDIzOjQyOjE2IENEVCAyMDAxIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogY29uZmlndXJlLmluLCBkZWJpYW4vY29udHJvbDogTmV3IHVwc3RyZWFtIGdldHRleHQuICBTaW5jZSB3ZSBoYWQKKyAgICB0byBjaGFuZ2Ugb3VyIGJ1aWxkLCB0byBjb21wbHkgd2l0aCB0aGUgbmV3IHVwc3RyZWFtLCB3ZSBhbHNvCisgICAgbmVlZCB0byBtb2RpZnkgdGhlIGJ1aWxkLWRlcGVuZHMuCisgICogcG8vZHBrZy5wb3QsIHBvL25sLnBvOiBGaXhlZCBicm9rZW4gdHJhbnNsYXRpb25zLgorCitXZWQgQXByIDE4IDE4OjAxOjIxIENFU1QgMjAwMSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogc2NyaXB0cy9pbnN0YWxsLWluZm8uezgscGx9OiBtb2RpZnkgaW5zdGFsbC1pbmZvIHRvIHRha2UgcmVsYXRpdmUKKyAgICBmaWxlc25hbWVzLCBhbmQgYWRkIGEgLS1yZW1vdmUtZXhhY3RseSBvcHRpb24gdG8gb25seSByZW1vdmUgZXhhY3QKKyAgICBtYXRjaGVzIChSb2IgQnJvd25pbmcpCisKK1N1biBBcHIgMTUgMjI6NDI6MTEgQ0VTVCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBjb25maWcuc3ViLCBjb25maWcuZ3Vlc3M6IHVwZGF0ZWQKKyAgKiBhcmNodGFibGU6IGFkZCBocHBhNjQtbGludXgtZ251CisgICogcG8vamEucG86IHJlbW92ZSBzb21lIHRyYW5zbGF0aW9ucyB0aGF0IGdldHRleHQgY2FuJ3QgaGFuZGxlIG9uIGhwcGEKKworVGh1IEFwciAxMiAxMzoxMjoxNiBDRVNUIDIwMDEgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIHBvL2l0LnBvOiBpbnN0YWxsZWQgbmV3IHZlcnNpb24gZnJvbSBMZWxlIEdhaWZheAorICAqIGRzZWxlY3QvbWFpbi5jYzogdHJhbnNsYXRlIG1lbnUgb3B0aW9uIGFzIHdlbGwgaW4gZG1lKCkKKworV2VkIEFwciAxMSAxMjoxOToyNSBDRVNUIDIwMDEgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIGRzZWxlY3QubWFpbi5jYzogcmV0cnkgZ2V0Y2ggaWYgaXQgZmFpbHMgd2l0aCBFSU5UUgorCitTdW4gTWFyIDExIDE5OjI0OjU4IENFVCAyMDAxIHBldGVyIGthcmxzc29uIDxwZXRlcmtAZGViaWFuLm9yZz4KKworICAqIHBvL3N2LnBvOiBVcGRhdGVkIFN3ZWRpc2ggdHJhbnNsYXRpb24uCisKK1NhdCBNYXIgMTAgMTU6NTk6MzkgQ1NUIDIwMDEgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBtYWluL2ZpbGVzZGIuYzogVXNlIGEgcHVyZSBmaWxlIGRlc2NyaXB0b3IsIGluc3RlYWQgb2YgYSBzdHJlYW0sIHRvCisgICAgbG9hZCB0aGUgZGF0YSwgaW4gZW5zdXJlX3BhY2thZ2VmaWxlc19hdmFpbGFibGUuCisKK1NhdCBNYXIgMTAgMDE6MzM6MTUgQ0VUIDIwMDEgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIG1haW4vbWFpbixoLCBtYWluL21haW4uYzogYWRkIC0tbm8tZGVic2lnIG9wdGlvbiB1c2luZyBmX25vZGVic2lnbgorICAqIG1haW4vcHJvY2Vzc2FyYzogZG9uJ3QgY2hlY2sgc2lnbmF0dXJlcyBvZiBmX25vZGVic2lnbiBpcyBzZXQKKworRnJpIE1hciAgOSAyMToyMzowMyBDRVQgMjAwMSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogaW5jbHVkZS9kcGtnLmguaW46IGFkZCBERUJTSUdWRVJJRlkKKyAgKiBtYWluL21haW4uaCwgbWFpbi9tYWluLmM6IGFkZCBiYWQtdmVyaWZ5IG92ZXJyaWRlCisKK0ZyaSBNYXIgIDkgMTk6MzA6MjIgQ0VUIDIwMDEgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIHNjcmlwdHMvY29udHJvbGxpYi5wbDogY2hhbmdlIG91dHB1dGNsb3NlIHRvIGRlYWwgd2l0aCBjb21tYS1yZWxhdGVkCisgICAgc3ludGF4IGVycm9ycyBhZnRlciBwcm9jZXNzaW5nIHN1YnN0dmFycworCitNb24gTWFyICA1IDE2OjM0OjU1IENFVCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBkb2MvZnIvTWFrZWZpbGUuaW46IGFkZCBtb3JlIGZpbGVzCisgICogZG9jL2ZyL2Rwa2cuOCxkb2MvZnIvaW5zdGFsbC1pbmZvLjgsZG9jL2ZyL3VwZGF0ZS1yYy5kLjg6IHVwZGF0ZWQKKyAgKiBkb2MvZnIvY2xlYW51cC1pbmZvLjgsZG9jL2ZyL2Rwa2ctZGl2ZXJ0LjgsZG9jL2ZyL2Rwa2ctbmFtZS4xLAorICAgIGRvYy9mci9kcGtnLXNjYW5wYWNrYWdlcy44LGRvYy9mci9kcGtnLXNjYW5zb3VyY2VzLjEsZG9jL2ZyL2Rwa2ctc291cmNlLjE6CisgICAgYWRkZWQKKworTW9uIE1hciAgNSAxNDowMzo0OSBDRVQgMjAwMSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogY29uZmlndXJlLmluOiBhZGQgbW9yZSB3YXJuaW5nIGZsYWdzIGZvciBnY2MKKworU3VuIE1hciAwNCAyMTozNzozNCBDRVQgMjAwMSBwZXRlciBrYXJsc3NvbiA8cGV0ZXJrQGRlYmlhbi5vcmc+CisKKyAgKiBwby9zdi5wbywgZG9jL3N2L2Rwa2cuOCwgZG9jL3N2LzgyMi1kYXRlLjEsIGRvYy9zdi9zdGFydC1zdG9wLWRhZW1vbi44OgorICAgIFVwZGF0ZWQgU3dlZGlzaCB0cmFuc2xhdGlvbi4KKyAgKiBtYWluL2Rwa2cuOCwgdXRpbHMvc3RhcnQtc3RvcC1kYWVtb24uODogRml4ZWQgdHlwb3MuCisKK0ZyaSBNYXIgIDIgMTc6Mjk6MDIgQ0VUIDIwMDEgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIFRoZSBDb3BlbmhhZ2VuIENvbW1pdAorICAqIENoYW5nZUxvZzogdW5kbyBmaWxlIGNvcnJ1cHRpb24gKHVnaCkKKyAgKiB1dGlscy9zdGFydC1zdG9wLWRhZW1vbi44OiBmaXggdHlwbworICAqIGNvbmZpZ3VyZS5pbjogdXNlIEFDX0NfSU5MSU5FIGluc3RlYWQgb2Ygb3VyIG93biB0ZXN0CisgICogbGliL25mbWFsbG9jLCBpbmNsdWRlL2Rwa2ctZGIuaDogcmVtb3ZlIEhBVkVfSU5MSU5FIHRlc3RzLCB1c2UgZXh0ZXJuCisgICAgaW5saW5lIGRpcmVjdGx5CisgICogbGliL3ZhcmJ1Zi5jOiBhZGQgaW5saW5lIGtleW93cmQgdG8gdmFyYnVmYWRkYworICAqIG9wdGxpYi9NYWtlZmlsZS5pbjogdW5kbyBlYXJsaWVyIHBhdGNoIGFuZCBidWlsZCBsaWJvcHQuYSBhZ2FpbgorICAqIGxpYi9NYWtlZmlsZS5pbjogdXNlIGxpYm9wdC5hIGFnYWluLCBhbmQgYSBydWxlIHRvIGJ1aWxkIGl0CisgICogTWFrZWZpbGUuaW46IGJ1aWxkIG9wdGxpYiBiZWZvcmUgbGliCisgICogTWFrZWZpbGUuY29uZi5pbjogYWRkIFJBTkxJQgorICAqIGRzZWxlY3QvbWV0aG9kLmgsIGRzZWxlY3QvbWV0aGxpc3QuY2MsIGRzZWxlY3QvbWV0aG9kLmNjLAorICAgIGRzZWxlY3QvbWV0aHBhcnNlLmNjOiByZW5hbWUgc3RydWN0IG9wdGlvbiB0byBkc2VsZWN0X29wdGlvbiB0byBwcmV2ZW50CisgICAgY29uZmxpY3Qgd2l0aCBnZXRvcHQuaAorICAqIG1haW4vaGVscC5jOiByZXdvcmsgZG9fc2NyaXB0IGEgYml0IHRvIGNvbXBpbGUgd2l0aG91dCBlcnJvcnMKKyAgKiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDogYWRkIC1uIG9wdGlvbiB0byBzcGVjaWZ5IGZpbGVuYW1lCisgICogc2NyaXB0cy9kcGtnLXNvdXJjZS4xOgorICAgICsgZG9jdW1lbnQgLW4gb3B0aW9uIGZvciBkcGtnLWdlbmNvbnRyb2wKKyAgICArIGZpeCBjb25mdXNpbmcgd29yZGluZyBmb3IgZHBrZy1idWlsZHBhY2thZ2UgLXVjIG9wdGlvbgorICAgICsgZml4IGxheW91dCBlcnJvciBmb3IgZHBrZy1kaXN0YWRkZmlsZSBzZWN0aW9uCisgICAgKyBpdCdzIERFQURKT0UsIG5vdCBERUFEX0pPRQorICAqIHNjcmlwdHMvZHBrZy1hcmNoaXRlY3R1cmUucGw6CisgICAgKyBhcHBseSBjbGVhbnVwIHBhdGNoIGZyb20gSnVsaWFuIEdpbGJleQorICAgICsgbW9kaWZ5IGdjYyByZWdleHAgdG8gcmVjb2duaXplIGdjYyB2ZXJzaW9ucyBsaWtlIDIuOTYtaWE2NC0wMDA3MTcKKyAgKiBzY3JpcHRzL2Rwa2ctY2hlY2tidWlsZGRlcHMucGwsIHNjcmlwdHMvZHBrZy1jaGVja2J1aWxkZGVwcy4xOiBuZXcKKyAgICBzY3JpcHQgZnJvbSBKb2V5IEhlc3MgdG8gY2hlY2sgYnVpbGQgZGVwZW5kZW5jaWVzCisgICogVEhBTktTOiBBZGQgSm9leSBIZXNzCisgICogc2NyaXB0cy9kcGtnLXBhcnNlY2hhbmdlbG9nLnBsOgorICAgICsgc3VwcG9ydCByZWFkaW5nIGNoYW5nZWxvZyBmcm9tIHN0ZGluCisgICAgKyByZW1vdmUgTGludXggcmVmZXJlbmNlCisgICogc2NyaXB0cy9kcGtnLXN0YXRvdmVycmlkZS5wbDogZXhpdCB3aXRoIGV4aXRjb2RlIDEgaWYgd2UgZG8gLS1saXN0IGJ1dAorICAgIGRvbid0IG91dHB1dCBhbnl0aGluZywgYW5kIHVzZSBleGl0Y29kZSAyIGlmIHdlIHRyeSB0byByZW1vdmUgYQorICAgIG5vbi1leGl0aW5nIG92ZXJyaWRlICh1bmxlc3MgLS1mb3JjZSBpcyBnaXZlbikuCisgICogc2NyaXB0cy9kcGtnLXN0YXRvdmVycmlkZS44OiBkb2N1bWVudCBuZXcgZXhpdGNvZGUgZm9yIC0tbGlzdAorICAqIG1haW4vbWFpbi5jLCBtYWluL2Rwa2cuODogcmVtb3ZlIC0tc21hbGxtZW0gYW5kIC0tbGFyZ2VtZW0gcmVmZXJlbmNlcworICAqIHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2Uuc2g6IAorICAgICsgZG9uJ3QgYm90aGVyIHRvIHNwZWNpZnkgYXJjaGl0ZWN0dXJlIHNldHRpbmdzIG9uIGNvbW1hbmRsaW5lcyBzaW5jZQorICAgICAgd2UgcHV0IHRoZW0gaW4gdGhlIGVudmlyb25tZW50IGFscmVhZHkKKyAgICArIHJlbW92ZSBkZWJzaWduIHN1cHBvcnQsIGl0J3MgdXNlbGVzcyBhbmQgZGVic2lnbiBjYW4ndCBoYW5kbGUgaXQKKyAgICArIHVzZSBERUJfQlVJTERfQVJDSCB0byBnZXQgYnVpbGQgYXJjaGl0ZWN0dXJlLCBub3QgREVCX0hPU1RfQVJDSAorICAgICsgcmVtb3ZlIExpbnV4IHJlZmVyZW5jZQorICAqIHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6IG1hcmsgbGFzdCBhcmd1bWVudCBhcyBvcHRpb25hbCBpbgorICAgIHVzYWdlIGluZm8KKyAgKiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLjgsIHNjcmlwdHMvZHBrZy1uYW1lLjEsIAorICAgIHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGwsIHNjcmlwdHMvZHBrZy1zb3VyY2UucGwsIHNjcmlwdHMvODIyLWRhdGUuMSwKKyAgICBzY3JpcHRzL2NsLWRlYmlhbi5wbCwgc2NyaXB0cy9jbGVhbnVwLWluZm8ucGwsIHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsLAorICAgIHNjcmlwdHMvZHBrZy1kaXN0YWRkZmlsZS5wbCwgc2NyaXB0cy9kcGtnLXNvdXJjZS4xLAorICAgIHNjcmlwdHMvZHBrZy1kaXZlcnQucGwsIHNjcmlwdHMvaW5zdGFsbC1pbmZvLnBsLCBzY3JpcHRzL2luc3RhbGwtaW5mby44LAorICAgIHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsLCBzY3JpcHRzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMucGwsCisgICAgc2NyaXB0cy91cGRhdGUtcmMuZC44OiByZW1vdmUgTGludXggcmVmZXJlbmNlcworCitTdW4gRmViIDI1IDIwOjI2OjAzIENFVCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiB2ZXJzaW9uLW5yOiB1cGRhdGUgdG8gMS45LjAKKworU3VuIEZlYiAyNSAxOToxNzo1MyBDRVQgMjAwMSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogZGViaWFuL2NoYW5nZWxvZzogbWVyZ2VkIGFkZGl0aW9ucyBmcm9tIHYxLjggYnJhbmNoCisgICogc2NyaXB0cy9jb250cm9sbGliLnBsOiAKKyAgICArIG5vIG5lZWQgdG8gaGF2ZSBPcmlnaW4gaW4gY2FwaXQKKyAgICArIGNvbnNpc3RlbnRseSB1c2UgJndhcm4KKyAgICArIGZpeCAtcyB0byBleHBvcnQgYWxsIHZhcmlhYmxlcyBpbnN0ZWFkIG9mIGp1c3QgdGhlIGZpcnN0CisgICogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6IGRvIG5vdCBjb21wbGFpbiBhYm91dCBtaXNzaW5nIHBhY2thZ2VzCisgICAgaWYgZG9pbmcgYSBzb3VyY2Utb25seSBidWlsZAorICAqIHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2Uuc2g6IAorICAgICsgY29ycmVjdCBmaWxlbmFtZSBmb3Igc2VjcmV0IGtleXJpbmcgaW4gZ3BnIHRlc3QKKyAgICArIGZpeCAtQworICAgICsgc2tpcCBzaWduaW5nIHBhdXNlIG9mIGJ1aWxkaW5nIHVuc2lnbmVkIHBhY2thZ2VzCisgICAgKyBpbXByb3ZlIHNyY21zZworICAgICsgdGVzdCBmb3IgaW52YWxpZCBzaWduaW50ZXJmYWNlCisgIAorU3VuIEZlYiAyNSAxOToxMDozMyBDRVQgMjAwMSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogZG9jL2ZyL2Rwa2cuOCwgZG9jLWZyL2luc3RhbGwtaW5mby44LCBkb2MtZnIvdXBkYXRlLWFsdGVybmF0aXZlcy44LCAKKyAgICBkb2MtZnIvdXBkYXRlLXJjLmQuODogIHVwZGF0ZWQKKyAgKiBkb2MvZnIvZHBrZy1kZWIuMTogYWRkZWQKKworRnJpIEZlYiAyMyAxNjoxMDo0OSBDRVQgMjAwMSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogcG8vZGUucG86IHVwZGF0ZWQKKyAgKiBwby9mci5wbzogdXBkYXRlZAorCitGcmkgRmViIDIzIDE1OjU0OjAwIENFVCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiB1dGlscy9zdGFydC1zdG9wLWRhZW1vbi5jOiBBZGQgT3BlbkJTRCBzdXBwb3J0CisgICogdXRpbHMvbWQ1c3VtLmM6IGluY2x1ZGUgdW5pc3RkLmggdG8gdGhpbmdzIGNvbXBpbGUgb24gT3BlbkJTRAorICAqIGNvbmZpZ3VyZS5pbjogdGVzdCB0byBzZWUgaWYgd2UgbmVlZCB0byBsaW5rIHRvIGt2bQorCitGcmkgRmViIDIzIDEwOjIyOjAyIENFVCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBzY3JpcHRzL2Rwa2ctZGl2ZXJ0LnBsOiBmaXggdHlwbyBpbiB1c2FnZSBtZXNzYWdlCisgICogbWFpbi9oZWxwLmM6IG1hbmdsZSBhcmd2WzBdIGluIGRvX3NjcmlwdCB0byBhbHdheXMgYmUgdGhlIGZ1bGwgcGF0aAorICAqIGluY2x1ZGUvZHBrZy1kYi5oOiBpbmNsdWRlIHN0cmluZy5oIHNvIHRoaW5ncyBjb21waWxlIG9uIGlhNjQgCisgICogc2NyaXB0cy9kcGtnLWFyY2hpdGVjdHVyZS5wbDogYWRkIGlhNjQKKworVGh1IEZlYiAxNSAxMToyNDo0NiBFU1QgMjAwMSBCZW4gQ29sbGlucyA8YmNvbGxpbnNAZGViaWFuLm9yZz4KKworICAqIHV0aWxzL01ha2VmaWxlLmluOiBEbyBub3QgdXNlIGxpYm9wdC5hLCBzaW5jZSBsaWJkcGtnLmEgbm93IGluY2x1ZGVzIHRob3NlCisgICAgb2JqZWN0cworICAqIG9wdGxpYi9NYWtlZmlsZS5pbjogZG8gbm90IGdlbmVyYXRlIGxpYm9wdC5hCisgICogbGliL01ha2VmaWxlLmluOiBidWlsZCBsaWJkcGtnLmEgdG8gaW5jbHVkZSB0aGUgb2JqZWN0cyBmcm9tIG9wdGxpYgorICAqIE1ha2VmaWxlLmNvbmYuaW46IEFkZCBvcHRsaWIgdG8gLUkgaW5jbHVkZXMKKworU2F0IEZlYiAgMyAxODoyNToyNSBDRVQgMjAwMSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogZGViaWFuL3J1bGVzOiB1c2UgUE9TSVggZ2xvYiBpbnN0ZWFkIG9mIHJlZ2V4cAorCitTYXQgRmViICAzIDE4OjE4OjQyIENFVCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBzY3JpcHRzL2Rwa2ctc291cmNlLjE6IGZpeCBkZXNjcmlwdGlvbiBmb3IgZHBrZy1nZW5jb250cm9sCisgICogYXJjaHRhYmxlOiBhZGQgZW50cnkgZm9yIE9wZW5CU0QgMi44IGZvciBpMzg2CisgICogc2NyaXB0cy9kcGtnLWFyY2hpdGVjdHVyZS5wOiBhZGQgb3BlbmJzZC1pMzg2IGVudHJ5CisKK1NhdCBGZWIgIDMgMTg6MTI6MTggQ0VUIDIwMDEgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIGNvbmZpZ3VyZS5pbjogY2hlY2sgZm9yIHJhbmxpYgorICAqIGxpYi9NYWtlZmlsZS5pbjogcnVuIHJhbmxpYiBvbiBsaWJkcGtnLmEKKworRnJpIEZlYiAgMiAxNDoyNzo0NyBDRVQgMjAwMSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogc2NyaXB0cy9kcGtnLXN0YXRvdmVycmlkZS5wbDogdXNlIC1lIGluc3RlYWQgb2YgLWYgdG8gdGVzdAorICAgIGZvciBmaWxlc3lzdGVtIG9iamVjdCBleGlzdGVuY2UKKyAgKiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOiBzd2FwIGNoZGlyIGFuZCBvcGVuIGluIGV4dHJhY3R0YXIgdG8KKyAgICBwcmV2ZW50IHJhY2Ugd2l0aCBzb3VyY2UtZGlyZWN0b3J5IGJlaW5nIHJlbW92ZWQgd2hpbGUgdGhlCisgICAgc2gvZ3JlcCBwcm9jZXNzIGlzIHN0aWxsIHJ1bm5pbmcuIFBhdGNoIGZyb20gQ29saW4gV2F0c29uCisKK1RodSBGZWIgIDEgMTg6MjI6MDUgRVNUIDIwMDEgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6IGZpeCBlcnJvciBpbiBlcnJvciBtZXNzYWdlCisgICogdXRpbHMvTWFrZWZpbGUuaW46IHNldCB0b3BfYnVpbGRkaXIKKyAgKiBNYWtlZmlsZS5pbjogc3BlbGwgdmVyc2lvbi1uciBjb3JyZWN0bHkKKworU3VuIEphbiAyOCAyMjozODowMiBFU1QgMjAwMSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDogbW9kaWZ5IGhvdyB3ZSBoYW5kbGUgdGhlIGRzY2Zvcm1hdDogd2Ugbm93CisgICAgYXNzdW1lIGFsbCBtYWpvciB2ZXJzaW9ucyBhcmUgdXB3YXJkcyBhbmQgYmFja3dhcmRzIGNvbXBhdGlibHkuIFRoaXMKKyAgICBhbGxvd3MgdXMgdG8gYWRkIG5ldyBmaWVsZHMgd2l0aG91dCBicmVha2luZyBvbGRlciB2ZXJzaW9ucyBvZiAKKyAgICBkcGtnLXNvdXJjZQorCitTdW4gSmFuIDIxIDIwOjA5OjM2IFNHVCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBzY3JpcHRzL2Rwa2ctZGl2ZXJ0LnBsOiBvbmx5IGFsbG93IGFic29sdXRlIGZpbGVuYW1lcworICAqIG1haW4vY29uZmlndXJlLmM6IGFkZCAtTiBvcHRpb24gdG8gZGlmZiBpbnZvY2F0aW9uCisKK01vbiBKYW4gMTUgMDc6Mjc6MTAgQ0VUIDIwMDEgcGV0ZXIga2FybHNzb24gPHBldGVya0BkZWJpYW4ub3JnPgorCisgICogcG8vc3YucG86IFVwZGF0ZWQgU3dlZGlzaCB0cmFuc2xhdGlvbi4KKworTW9uIEphbiAxNSAwMDoyNjo0NSBFU1QgMjAwMSBCZW4gQ29sbGlucyA8YmNvbGxpbnNAZGViaWFuLm9yZz4KKworICAqIGxpYi9uZm1hbGxvYy5jOiB1c2Ugb2JzdGFja19jb3B5L29ic3RhY2tfY29weTAgZm9yIG5mc3Ryc2F2ZSBhbmQKKyAgICBuZnN0cm5zYXZlIHJlc3BlY3RpdmVseS4gQWxzbywgdXNlIGFuIDhrIGNodW5rIHNpemUgZm9yIG5vdy4gU2hvdWxkIHJlZHVjZQorICAgIHNvbWUgb3ZlcmhlYWQsIGFuZCBiZSBmYXN0ZXIuCisKK1N1biBKYW4gMTQgMjM6Mzc6MzAgRVNUIDIwMDEgQmVuIENvbGxpbnMgPGJjb2xsaW5zQGRlYmlhbi5vcmc+CisKKyAgKiBpbmNsdWRlL2Rwa2ctZGIuaDogcmVkZWNsYXJlIG5mbWFsbG9jKCksIHJlbW92ZSBvYnN0YWNrIGRlZmluaXRpb25zCisgICogbGliL2RibW9kaWZ5LmMgKG1vZHN0YXRkYl9pbml0KTogcmVtb3ZlIG9ic3RhY2sgaW5pdAorICAqIGxpYi9uZm1hbGxvYy5jOiByZWRlZmluZSBuZm1hbGxvYyB0byBiZSBhbiBpbmxpbmUgZnVuY3Rpb24uIEl0IG5vdyBjaGVja3MKKyAgICB0byBtYWtlIHN1cmUgZGJfb2JzIGlzIGluaXRsaWF6ZWQuCisgICogbWFpbi9hcmNoaXZlcy5jICh0YXJvYmplY3QpOiBkZWNsYXJlIG91ciBvd24gb2JzdGFjaywgYW5kIHVzZSBpdCBpbnN0ZWFkCisgICAgKGN1X2ZpbGVzbGlzdCkganVzdCBjYWxsIG9ic3RhY2tfZnJlZQorICAqIG1haW4vcHJvY2Vzc2FyYy5jOiBjb3JyZWN0IGNhbGxpbmcgb2YgY3VfZmlsZXNsaXN0CisKK1N1biBKYW4gMTQgMTg6MjM6MDcgQ1NUIDIwMDEgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBtYWluL2Rwa2cuODogRG9jdW1lbnQgLS1jb21tYW5kLWZkLgorCitTdW4gSmFuIDE0IDEzOjU0OjQ2IEVTVCAyMDAxIEJlbiBDb2xsaW5zIDxiY29sbGluc0BkZWJpYW4ub3JnPgorCisgICogb3B0bGliL29ic3RhY2suW2NoXTogTmV3IGZpbGVzIGZvciBub24gR05VIHN5c3RlbXMKKyAgKiBvcHRsaWIvTWFrZWZpbGUuaW4gKFNPVVJDRVMpOiBhZGQgb2JzdGFjay5jCisgICogbGliL25mbWFsbG9jOiByZW1vdmUgbmZtYWxsb2MoKQorICAqIGluY2x1ZGUvZHBrZy1kYi5oOiBkZWZpbmUgb2JzdGFjayBpbml0aWFsaXplcnMsIGFuZCBkZWZpbmUgbmZtYWxsb2MgYXMgYQorICAgIG1hY3JvIGZvciBvYnN0YWNrX2FsbG9jCisgICogbGliL2RibW9kaWZ5LmMgKG1vZHN0YXRkYl9pbml0KTogaW5pdGlhbGl6ZSBvYnN0YWNrIGlmIGl0IGhhc24ndCBiZWVuIGFscmVhZHkKKworU3VuIEphbiAxNCAxMjoyOTo0NiBDU1QgMjAwMSBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGxpYi9tbGliLmMsIGxpYi9maWVsZHMuYywgbGliL3BhcnNlLmMsIG1haW4vaGVscC5jLCBtYWluL21haW4uYywKKyAgICBwby9kcGtnLnBvdDogRml4IC1XYWxsIG1lc3NhZ2VzLiAgQWxzbywgZml4IGhhbmRsaW5nIG9mIHVzZXItZGVmaW5lZAorICAgIGZpZWxkcyBpbiBwYXJzZWRiKCkuCisKK1N1biBKYW4gMTQgMDI6NDY6MTQgQ1NUIDIwMDEgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBwby9kcGtnLnBvdDogQnJpbmcgdXAgdG8gZGF0ZS4KKworU3VuIEphbiAxNCAwMjozNzowNSBDU1QgMjAwMSBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIG1haW4vY2xlYW51cC5jLCBtYWluL2hlbHAuYywgbWFpbi9wcm9jZXNzYXJjLmM6ICBSZW1vdmVkIGR1cGxpY2F0ZQorICAgIGNvZGUgdGhhdCB3YXMgdXNlZCB0byBleGVjIG1haW50YWluZXIgc2NyaXB0cywgYW5kIG1vdmVkIGl0IHRvIGEKKyAgICBzaW5nbGUgZnVuY3Rpb24uICBJbiB0aGUgZnV0dXJlLCB0aGlzIHNpbmdsZSBmdW5jdGlvbiBjb3VsZCBiZSB1c2VkCisgICAgZm9yIHRyYWNraW5nIHNjcmlwdCBleGVjdXRpb24uCisKK1N1biBKYW4gMTQgMDI6Mjc6NDggQ1NUIDIwMDEgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBtYWluL21haW4uaCwgbWFpbi9tYWluLmM6ICBDaGFuZ2UgLS17c3RhdHVzLGNvbW1hbmR9LXBpcGUgdG8KKyAgICAtLXtzdGF0dXMsY29tbWFuZH0tZmQuCisKK1N1biBKYW4gMTQgMDI6MTk6MTggQ1NUIDIwMDEgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBtYWluL21haW4uYywgbWFpbi9hcmNoaXZlcy5jOiAgQWRkIGEgLS1jb21tYW5kLXBpcGUuICBUaGlzIGFsbG93cworICAgIG11bHRpcGxlIGNvbW1hbmRzIHRvIGJlIHBhc3NlZCB0byBhIHNpbmdsZSBpbnN0YW5jZSBvZiBkcGtnLCBvdmVyCisgICAgdGhlIGZpbGUgZGVzY3JpcHRvciBwYXNzZWQgb24gdGhlIGNtZGxpbmUuCisKK1RodSBKYW4gMTEgMDk6MzU6MDAgUFNUIDIwMDEgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIHNjcmlwdHMvZHBrZy1zdGF0b3ZlcnJpZGUucGw6IGRvIGNob3duIGJlZm9yZSBjaG1vZCBzbyB3ZSBkb24ndAorICAgIGxvb3NlIHNldHVpZCBiaXRzCisKK01vbiBKYW4gIDggMTU6NDY6MTMgUFNUIDIwMDEgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIHNjcmlwdHMvZHBrZy1zdGF0b3ZlcnJpZGUue3BsLDh9OiByZW1vdmUgLS1pbXBvcnQgb3B0aW9uIG5vdyB0aGF0CisgICAgc3VpZG1hbmFnZXIgY2FuIGNvbnZlcnQgZXZlcnl0aGluZworCitNb24gSmFuICA4IDE1OjEyOjIxIFBTVCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOiBhZGQgdmltIHN3YXBmaWxlcyB0byB0aGUgZGVmYXVsdCBpZ25vcmUgcmVnZXhwCisKK01vbiBKYW4gIDggMTA6Mzg6MjggUFNUIDIwMDEgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIHBvL2ZyLnBvOiB1cGRhdGVkCisKK1N1biBKYW4gIDcgMTQ6MzE6MzggQ1NUIDIwMDEgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBsaWIvZGJtb2RpZnkuYzogQWZ0ZXIgTiBjYWxscyh3aGljaCBkb2VzIGEgY2hlY2twb2ludCgpKSwgcmVzZXQKKyAgICB0aGUgY291bnRlci4KKworU3VuIEphbiAgNyAxNDoyNzo1NyBDU1QgMjAwMSBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGluY2x1ZGUvZHBrZy1kYi5oOiAgRm9yZ290IHRoZSBzdGF0dXMtcGlwZSBzdHJ1Y3QuCisKK0ZyaSBKYW4gIDUgMjI6MzY6MjQgQ1NUIDIwMDEgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBtYWluL21haW4uYywgbGliL2RibW9kaWZ5LmMsIG1haW4vZHBrZy44OiBBZGQgYSAtLXN0YXR1cy1waXBlLgorCitGcmkgSmFuICA1IDIyOjI1OjA2IENTVCAyMDAxIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogbGliL3ZhcmJ1Zi5jOiB2YXJidWYodilwcmludGYgbm93IHJldHVybiB0aGUgbnVtYmVyIG9mIGNoYXJhY3RlcnMKKyAgICB0aGV5IGFkZGVkIHRvIHRoZSBidWZmZXIuCisKK1RodSBKYW4gIDQgMDE6MjA6MjcgQ1NUIDIwMDEgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBkcGtnLWRlYi9idWlsZC5jLCBkcGtnLWRlYi9leHRyYWN0LmMsIGRwa2ctZGViL2luZm8uYywKKyAgICBpbmNsdWRlL2Rwa2cuaC5pbiwgbGliL21saWIuYywgbWFpbi9hcmNoaXZlcy5jLCBtYWluL2VucXVpcnkuYywKKyAgICBtYWluL2hlbHAuYyBtYWluL3Byb2Nlc3NhcmMuYzogQWRkICd3YXJuJyBwYXJhbWV0ZXIgdG8gd2FpdHN1YnByb2MKKyAgICBhbmQgY2hlY2tzdWJwcm9jZXJyLCBhbmQgYWxzbyBhZGQgYSByZXR1cm4gdmFsdWUuICBUaGlzIGZpeGVzIG15CisgICAgbGFzdCBjaGVja2luLCB3aGVyZSBtYWludGFpbmVyX3NjcmlwdF9hbHRlcm5hdGl2ZSB3b3VsZCBydW4KKyAgICBib3RoIHRoZSBvbGQgYW5kIG5ldyBzY3JpcHQuCisKK1RodSBKYW4gMDQgMDU6MTk6MzcgQ0VUIDIwMDEgcGV0ZXIga2FybHNzb24gPHBldGVya0BkZWJpYW4ub3JnPgorCisgICogcG8vc3YucG86IFVwZGF0ZWQgU3dlZGlzaCB0cmFuc2xhdGlvbi4KKworV2VkIEphbiAgMyAxMDozNTo0OSBDRVQgMjAwMSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogY29uZmlndXJlLmluOiBhZGQgZG9jL2ZyL01ha2VmaWxlCisKK1R1ZSBKYW4gIDIgMjI6NDQ6MTQgQ1NUIDIwMDEgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBsaWIvaGVscC5jOiBSZW1vdmVkIGFuICdpbmxpbmVkJyB2ZXJzaW9uIG9mIHdhaXRzdWJwcm9jLCBhbmQgY2FsbAorICAgIHRoZSBmdW5jdGlvbiBpbnN0ZWFkLgorCitNb24gSmFuICAxIDAyOjA3OjQ3IENTVCAyMDAxIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogbGliL3ZhcmJ1Zi5jLCBpbmNsdWRlL2Rwa2ctZGIuaDogQWRkIHZhcmJ1ZmR1cGMoKS4KKworTW9uIEphbiAgMSAwMjowNDoyNiBDU1QgMjAwMSBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGxpYi9wYXJzZS5jOiBVc2Ugb2YgUEtHSU9GRiBtYWNybyB3YXMgY2hlY2tlZCBpbiBwcmVtYXR1cmVseS4KKworU2F0IERlYyAzMCAyMzowODowMCBDRVQgMjAwMCBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogZG9jL01ha2VmaWxlLmluOiBhZGQgZnIgdG8gU1VCRElSUworICAqIGRvYy9mcjogbmV3IGRpcmVjdG9yeSB3aXRoIEZyZW5jaCBtYW5wYWdlcworICAqIFRIQU5LUzogYWRkIHBoaWxpcHBlIGJhdGFpbGxlciB3aG8gdHJhbnNsYXRlZCB0aGUgbWFucGFnZXMgdG8gRnJlbmNoCisKK1NhdCBEZWMgMzAgMjA6Mzg6MjAgQ1NUIDIwMDAgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisgIAorICAqIHV0aWxzL3N0YXJ0LXN0b3AtZGFlbW9uLmM6IC0tbmFtZSBpcyBub3cgYWxsb3dlZCBvbiB0aGUgY29tbWFuZAorICAgIGxpbmUuCisKK0ZyaSBEZWMgMjkgMTI6Mzk6MDkgQ1NUIDIwMDAgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBsaWIvcGFyc2UuYzogUHJvcGVybHkgcGFyc2UgY29udHJvbCBmaWxlcyB0aGF0IG9ubHkgaGF2ZSBvbmUKKyAgICBwYXJhZ3JhcGgsIHdoaWNoIG1lYW5zIG5vIGRvdWJsZSBlbmRpbmcgbmV3IGxpbmUuCisKK1RodSBEZWMgMjggMTg6NDM6MzcgQ1NUIDIwMDAgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBsaWIvZGF0YWJhc2UuYzogRml4IG1pbm9yIG1lbWxlYWsgaW4gdXNlZCBmdW5jdGlvbiBoYXNocmVwb3J0LgorICAgIFRoYW5rcyB0byBBZHJpYW4gQnJpZGdldHQgPGJyaWRnZXR0QGRlYmlhbi5vcmc+LgorCitXZWQgRGVjIDI3IDE0OjU0OjU1IENTVCAyMDAwIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogbGliL3BhcnNlLmM6ICBSZW1vdmVkIHVzZSBvZiBnZXRjKCksIGFuZCBpbnN0ZWFkIHVzZSBwb2ludGVycworICAgIGludG8gYSBnaWdhbnRpYyBtZW1vcnkgYnVmZmVyKGVpdGhlciB0aHJ1IG1tYXAsIG9yIGJ5IGNvcHlpbmcKKyAgICBpbnRvIGEgbGFyZ2UgYnVmZmVyKCNkZWZpbmUgUEFSU0VfTU1BUCkpLiAgTmljZSBsaXR0bGUgc3BlZWR1cCwKKyAgICBhbmQgYWxzbyBoYWQgdGhlIGFkZGVkIGJlbmVmaXQgb2YgcmVtb3ZpbmcgdmFyYnVmKiBjb2RlIGZyb20KKyAgICBwYXJzZWRiKCkuCisKK1dlZCBEZWMgMjcgMDQ6NTg6MjIgQ1NUIDIwMDAgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBsaWIvZmllbGRzLmM6IFJlbW92ZWQgdXNlIG9mIHZhcmJ1ZiogY29kZSBmcm9tIGZfZGVwZW5kZW5jeSgpLAorICAgIGZvciBhIHNwZWVkdXAuCisKK1dlZCBEZWMgMjcgMDQ6NTU6MTQgQ1NUIDIwMDAgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBsaWIvZmllbGRzLmM6IERldGVjdCBhbmQgaXNzdWUgYW4gZXJyb3Igd2hlbiBhIHNwYWNlIGlzIGluIGEKKyAgICB2ZXJzaW9uLgorCitXZWQgRGVjIDI3IDA0OjAwOjMyIENTVCAyMDAwIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogbGliL25mbWFsbG9jLmMsIGluY2x1ZGUvZHBrZy1kYi5oOiBBZGRlZCBuZnN0cm5zYXZlKCkuCisKK1R1ZSBEZWMgMjYgMTc6MDc6MTEgQ1NUIDIwMDAgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBsaWIvbWQ1LmMsIGxpYi9tZDUuaDogT29wcywgZm9yZ290IHRvIGFkZCB0aGVzZSBmaWxlcy4KKworVHVlIERlYyAyNiAwODoyODoxNyBDU1QgMjAwMCBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIG1haW4vbWFpbi5jOiBSZW1vdmVkIGV4dHJhbmVvdXMgZGVidWcgcHJpbnRzLCB0aGF0IGRpc3BsYXllZCB0aGUKKyAgICBzdGF0ZSBvZiBhbGwgZm9yY2Ugb3B0aW9ucy4gIERvaCEKKworVHVlIERlYyAyNiAwNDozNDowMiBDU1QgMjAwMCBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGxpYi9maWVsZHMuYywgbGliL3BhcnNlaGVscC5jLCBpbmNsdWRlL2Rwa2ctZGIuaDogSW5jcmVhc2VkIHRoZQorICAgIHNwZWVkIG9mIGNvbnZlcnRfc3RyaW5nKCkgYnkgYSBmYWN0b3Igb2YgMiwgYnkgc3RvcmluZyB0aGUgbGVuZ3RoCisgICAgb2YgZWFjaCBzdHJpbmcgaW5zaWRlIHRoZSBzdHJ1Y3QodGhpcyBmdW5jdGlvbiBpcyB1c2VkIHRvIGNvbnZlcnQKKyAgICBzdHJpbmdzIGludG8gaW50ZWdlciB2YWx1ZXMpLgorCitUdWUgRGVjIDI2IDAzOjQzOjE3IENTVCAyMDAwIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogYWNjb25maWcuaCwgY29uZmlnLmguYm90LCBjb25maWd1cmUuaW4sIG1haW4vZmlsZXNkYi5jLAorICAgIGF1dG9tYWtlL3N5c2luZm8ubTQocmVtb3ZlZCk6IFJlbW92ZWQgYWxsIHJlZmVyZW5jZXMgdG8KKyAgICBzeXNpbmZvKCkuCisKK1R1ZSBEZWMgMjYgMDM6MjQ6MzggQ1NUIDIwMDAgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBtYWluL21haW4uYywgbWFpbi9maWxlcy5jOiBSZW1vdmVkIC0tc21hbGxtZW0gY29kZS4KKworTW9uIERlYyAyNSAwMDo0Njo0NyBDU1QgMjAwMCBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIHV0aWxzL21kNXN1bS5jOiBEb24ndCB1c2UgRklMRSAqIGluIG1kZmlsZS4KKworTW9uIERlYyAyNSAwMDozMTowNSBDU1QgMjAwMCBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGluY2x1ZGUvZHBrZy5oLmluLCBsaWIvbWxpYi5jOiBBZGRlZCBnZW5lcmljIHNldHVwIGNvZGUgdG8gYnVmZmVyCisgICAgY29weSBsb29wLgorCitTdW4gRGVjIDI0IDIzOjQ4OjQ1IENTVCAyMDAwIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogaW5jbHVkZS9kcGtnLmguaW4sIGxpYi9NYWtlZmlsZS5pbiwgbGliL21saWIuYywgdXRpbHMvTWFrZWZpbGUuaW4sCisgICAgdXRpbHMvbWQ1c3VtLmM6IE1vdmVkIG1kNSBjb2RlIGludG8gZ2VuZXJpYyBidWZmZXJfY29weSBsb29wLgorCitTdW4gRGVjIDI0IDEzOjU5OjM2IENTVCAyMDAwIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogVXNlIERFU1RESVIgd2hlbiBpbnN0YWxsaW5nIC9ldGMvZHBrZy9vcmlnaW5zL2Rwa2cKKworU3VuIERlYyAyNCAxNzozNToxMiBDRVQgMjAwMCBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogZHNlbGVjdC9tYWluLmNjOiBtYWtlIGNvbW1hbmRsaW5lIG9wdGlvbnMgd29yayBhZ2FpbgorICAqIE1ha2VmaWxlLmNvbmYuaW4sIGNvbmZpZ3VyZS5pbixhdXRvbWFrZS9kcGtnLm00OiByZXZlcnQgY2hhbmdlcyBmcm9tIEFkYW0KKyAgKiBNYWtlZmlsZS5jb25mLmluOiBhZGQgQENXQVJOU0AgdG8gQ0ZMQUdTCisgICogY29uZmlndXJlLmluOiBhZGQgQUNfU1VCU1QgZm9yIENXQVJOUworCitTdW4gRGVjIDI0IDE3OjA1OjQ1IENFVCAyMDAwIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDogb3V0cHV0IGRlc2NyaXB0aW9ucyBmb3IgdWRlYnMgYXMgd2VsbAorCitTdW4gRGVjIDI0IDA2OjMxOjU1IENTVCAyMDAwIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogc2NyaXB0cy9kcGtnLW5hbWUuc2g6IEFkZCAta3wtLXN5bWxpbmsgb3B0aW9uLgorCitTdW4gRGVjIDI0IDA1OjU4OjQ4IENTVCAyMDAwIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogZHNlbGVjdC9tYWluLmNjOiBNYWRlIHRoZSBhY2NlbGVyYXRvciBrZXlzIGluIGRzZWxlY3QncyBtYWluCisgICAgbWVudSBzZXBhcmF0ZSBvcHRpb25zLCBzbyB0aGF0IHRoZXkgY2FuIGJlIHRyYW5zbGF0ZWQgc2VwYXJhdGVseS4KKworU3VuIERlYyAyNCAwNTozMToyNyBDU1QgMjAwMCBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGRlYmlhbi9jb250cm9sOiBBZGRlZCBkZXBlbmRzIG9uIHN5c3Zpbml0ICg+PSAyLjcyKSwgc28gdGhhdCB3ZQorICAgIGNhbiBtYWtlIHN1cmUgdGhhdCAvZXRjL3JjUy5kIGV4aXN0cy4KKworU3VuIERlYyAyNCAwNToyNDoyMyBDU1QgMjAwMCBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIHNjcmlwdHMvdXBkYXRlLXJjLmQ6IENoYW5nZWQgZG9jdW1lbnRhdGlvbiBhbmQgaGVscCwgYXMgLWYgb25seQorICAgIGFwcGxpZXMgZHVyaW5nIHJlbW92ZS4KKworU3VuIERlYyAyNCAwNToxMDoyOSBDU1QgMjAwMCBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIG1haW4vbWFpbi5jOiBBZGRlZCBhIC0tZm9yY2UtYWxsIG9wdGlvbi4KKworU3VuIERlYyAyNCAwNDozMjozNCBDU1QgMjAwMCBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIG1haW4vbWFpbi5jOiBGb3JtYXQgaGVscCBzdHJpbmcgZm9yIC0tYWJvcnQtYWZ0ZXIgbGlrZSBvdGhlcgorICAgIG9wdGlvbiBoZWxwIHN0cmluZ3MuCisKK1N1biBEZWMgMjQgMDI6Mzg6MzggQ1NUIDIwMDAgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBtZXRob2RzL2Rpc2suaW5zdGFsbCwgbWV0aG9kcy9kaXNrLnNldHVwLCBtZXRob2RzL2Rpc2sudXBkYXRlLAorICAgIG1ldGhvZHMvZmxvcHB5Lmluc3RhbGwsIG1ldGhvZHMvZmxvcHB5LnVwZGF0ZSwgbWV0aG9kcy9oZC5zZXR1cCwKKyAgICBtZXRob2RzL2hkLnVucGFjaywgbWV0aG9kcy9oZC51cGRhdGU6IEZpeCB0byBwYXNzIG9uIGFkbWluZGlyCisgICAgZnJvbSBkc2VsZWN0IHRvIGRwa2cuCisKK1N1biBEZWMgMjQgMDE6MDA6NTkgQ1NUIDIwMDAgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOiBNaW5vciB0d2VhayBzbyB0aGF0IHdoZW4gcGF0Y2ggMi41LjQgaXMKKyAgICBtYW51YWxseSB1c2VkIHRvIGFwcGx5IGEgZGlmZiwgaXQgZG9lc24ndCBnZXQgYXBwbGllZCBtdWx0aXBsZQorICAgIHRpbWVzLgorCitTYXQgRGVjIDIzIDIzOjI4OjUyIENTVCAyMDAwIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogdXRpbHMvc3RhcnQtc3RvcC1kYWVtb24uYzogQWRkIC0tbmljZWxldmVsLCB0byBhbHRlciBhCisgICAgcHJvZ3JhbXMgcHJpb3JpdHkgYmVmb3JlIHN0YXJ0aW5nLgorCitTYXQgRGVjIDIzIDIyOjU2OjE2IENTVCAyMDAwIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogbWFpbi9kcGtnLjg6IERvY3VtZW50IHRoYXQgLS1sYXJnZW1lbSBpcyB0aGUgZGVmYXVsdCwgYW5kIHRoYXQKKyAgICB0aGUgdGVzdCBwb2ludCBpcyAyNCBtZWdzLgorCitTYXQgRGVjIDIzIDIyOjUzOjIzIENTVCAyMDAwIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogbWFpbi9kcGtnLjg6IERvY3VtZW50IHRoYXQgLS1zZXQtc2VsZWN0aW9ucyBkb2VzIG5vdCBhY3R1YWxseQorICAgIGluc3RhbGwgYW55IHBhY2thZ2VzLgorCitTYXQgRGVjIDIzIDIyOjQxOjQ3IENTVCAyMDAwIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogZHBrZy1kZWIvZHBrZy1kZWIuMTogRml4IHR5cG8uCisKK1NhdCBEZWMgMjMgMjI6MjQ6MjMgQ1NUIDIwMDAgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBzY3JpcHRzL2Rwa2ctZGl2ZXJ0LnBsOiBBZGQgLS10cnVlbmFtZSBvcHRpb24uCisKK1NhdCBEZWMgMjMgMjE6NDA6MzIgQ1NUIDIwMDAgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBtYWluL2Rwa2cuODogIERvY3VtZW50IENPTFVNTlMgZW52aXJvbm1lbnQgdmFyaWFibGUuCisKK1NhdCBEZWMgMjMgMjE6MjA6NDMgQ1NUIDIwMDAgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBkcGtnLWRlYi9leHRyYWN0LmMsIGluY2x1ZGUvZHBrZy5oLmluLCBsaWIvbWxpYi5jLAorICAgIG1haW4vZW5xdWlyeS5jLCBtYWluL2ZpbGVzZGIuYywgbWFpbi9wYWNrYWdlcy5jLCBtYWluL3JlbW92ZS5jLAorICAgIHV0aWxzL3N0YXJ0LXN0b3AtZGFlbW9uLmM6IENsZWFuIHVwIGEgZmV3IGdjYyB3YXJuaW5ncy4gIE5vdGUsCisgICAgdGhhdCB0aGUgd2FybmluZzoKKyAgICAgICJkZXByZWNhdGVkIGNvbnZlcnNpb24gZnJvbSBzdHJpbmcgY29uc3RhbnQgdG8gYGNoYXIgKiciCisgICAgaXMgYWN0dWFsbHkgYSBidWcgaW4gbmN1cnNlcy1kZXYod2hpY2ggaGFzIGJlZW4gZmlsZWQgYXMgODA0MTApCisgICAgbm90IHNldHRpbmcgdGhlIGZtdCBhcmd1bWVudCBhcyBjb25zdC4KKworU2F0IERlYyAyMyAxOTozMzowNSBDU1QgMjAwMCBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGF1dG9tYWtlL2Rwa2cubTQsIGNvbmZpZ3VyZS5pbiwgTWFrZWZpbGUuY29uZi5pbjoKKyAgICBNb2RpZmllZCBEUEtHX0NfR0NDX1RSWV9XQVJOUygpIHRvIGNhbGwgQUNfU1VCU1QsIHNvIHRoYXQgd2UgY2FuCisgICAgdXNlIHRoZSByZXN1bHQgb2YgdGhlIHRlc3QgZHVyaW5nIGJ1aWxkIHRpbWUuCisKK1NhdCBEZWMgMjMgMTY6NDQ6MjUgQ1NUIDIwMDAgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBtYWluL2RlcGNvbi5jOiBBZGRlZCBkZXNjcmlwdGlvbiBmb3IgInN1Z2dlc3RzIiBpbiBkZXNjcmliZWRlcGNvbigpLgorCitTYXQgRGVjIDIzIDE2OjI0OjMxIENTVCAyMDAwIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogZGViaWFuL2Rwa2cucG9zdGluc3Q6IFJlbW92ZSBiYXNoaXNtLgorCitTYXQgRGVjIDIzIDAzOjA2OjE5IENTVCAyMDAwIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogc2NyaXB0cy9jbC1kZWJpYW4ucGw6IE1ha2UgJyMnIG9wdGlvbmFsIGluIENsb3NlczogdGFncy4KKworU2F0IERlYyAyMyAwMjoxMToyNyBDU1QgMjAwMCBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2Uuc2g6IEFkZCAtdCB0byAtaCBvdXRwdXQuCisKK0ZyaSBEZWMgMjIgMTI6MzU6NDMgQ0VUIDIwMDAgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIHNjcmlwdHMvdXBkYXRlLWFsdGVybmF0aXZlcy44OiB1c2UgRkhTIGluc3RlYWQgb2YgRlNTVE5ECisKK1RodSBEZWMgMjEgMTk6MzA6NTYgQ0VUIDIwMDAgcGV0ZXIga2FybHNzb24gPHBldGVya0BkZWJpYW4ub3JnPgorCisgICogcG8vc3YucG8sIGRvYy9zdi9kcGtnLjg6IFRoZSAiRXZlbiBNZXJyaWVyIENocmlzdG1hcyIgdXBkYXRlIG9mIHRoZQorICAgIFN3ZWRpc2ggdHJhbnNsYXRpb24uCisKK1RodSBEZWMgMjEgMDM6NDE6NTYgQ1NUIDIwMDAgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisKKyAgKiBkZWJpYW4vY2hhbmdlbG9nOiBDbG9zZXMgYnVnIDQ5NTgxLCBiZWNhdXNlIHdlIGRvbid0IHVzZQorICAgIGV4dGVybmFsIGd6aXAgYW55bW9yZS4KKworVGh1IERlYyAyMSAwMzozNTo1NiBDU1QgMjAwMCBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIG1haW4vZW5xdWlyeS5jOiBzLy0tY21wdmVyc2lvbnMvLS1jb21wYXJlLXZlcnNpb25zLworCitUaHUgRGVjIDIxIDAzOjI5OjA0IENTVCAyMDAwIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogbWFpbi9kcGtnLjg6IFJlbW92ZSBkdXBsaWNhdGUgLVIoaXQgZG9lc24ndCBzZXQgLS1yb290KS4KKworVGh1IERlYyAyMSAwMzoyNDozOCBDU1QgMjAwMCBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGFyY2h0YWJsZTogQWRkIGFybXYzbC4KKworVGh1IERlYyAyMSAwMTo0MDowMiBDU1QgMjAwMCBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGxpYi9tbGliLmMsIGluY2x1ZGUvZHBrZy5oLmluOiBTd2l0Y2ggYWxsIHNpemUgcGFyYW1ldGVycyB0bworICAgIHNzaXplX3QuICBBbHNvLCByZXR1cm4gdG90YWxyZWFkLCBub3QgYnl0ZXNyZWFkLCBpbiBidWZmZXJfY29weS4KKworVGh1IERlYyAyMSAwMToyMjoyMiBDU1QgMjAwMCBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGxpYi9tbGliLmM6IEhhbmRsZSBFSU5UUiBvbiByZWFkaW5nIGFuZCB3cml0dGluZyBpbiBidWZmZXJfY29weS4KKworVGh1IERlYyAyMSAwNjo1ODoyMSBDRVQgMjAwMCBwZXRlciBrYXJsc3NvbiA8cGV0ZXJrQGRlYmlhbi5vcmc+CisKKyAgKiBwby9zdi5wbzogVGhlICJNZXJyeSBDaHJpc3RtYXMiIHVwZGF0ZSBvZiB0aGUgU3dlZGlzaCB0cmFuc2xhdGlvbi4KKworV2VkIERlYyAyMCAxMjo1MDo1NSBDRVQgMjAwMCBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogbWFpbi9wcm9jZXNzYXJjLmM6IHJldmVydCBjaGFuZ2UgZnJvbSBBZGFtOiByZWFkaW5nIHRoZSB0cmFpbGluZworICAgIHplcm9lcyBpcyBlc3NlbnRpYWwsIG5vdCByZWFkaW5nIHRoZW0gY2FuIGdpdmUgdXMgYSBTSUdQSVBFCisgICAgb24gZXh0cmFjdGluZy4KKworV2VkIERlYyAyMCAwMjo0MTozOSBDU1QgMjAwMCBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGRwa2ctZGViL2J1aWxkLmMsIGRwa2ctZGViL2V4dHJhY3QuYywgZHBrZy1kZWIvaW5mby5jLAorICAgIGluY2x1ZGUvZHBrZy1kYi5oLCBsaWIvbXlvcHQuYywgbGliL3BhcnNlLmMsIGxpYi92YXJidWYuYywKKyAgICBsaWIvdmVyY21wLmMsIG1haW4vYXJjaGl2ZXMuYywgbWFpbi9lbnF1aXJ5LmMsIG1haW4vZmlsZXNkYi5jLAorICAgIG1haW4vcHJvY2Vzc2FyYy5jLCBwby9kcGtnLnBvdDogRml4IC1XYWxsIG1lc3NhZ2VzLgorCitXZWQgRGVjIDIwIDAyOjIxOjQzIENTVCAyMDAwIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorCisgICogaW5jbHVkZS9kcGtnLmguaW46IE1ha2Uge3N0cmVhbSxmZH1fbnVsbF9jb3B5IHVzZSBbbGZdc2VlaywgYW5kIGZhbGwKKyAgICBiYWNrIG9uIHRoZSBidWZmZXIgY29kZSwgaWYgc3RyZWFtL2ZkIHJlZmVyIHRvIGEgcGlwZS4KKworV2VkIERlYyAyMCAwMjoxNzo1NiBDU1QgMjAwMCBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGNvbmZpZ3VyZS5pbiwgTWFrZWZpbGUuY29uZi5pbjogTW92ZSAtRF9HTlVfU09VUkNFIGZyb20gY29uZmlndXJlLmluCisgICAgdG8gTWFrZWZpbGUsIGFuZCBmcm9tIENGTEFHUyB0byBERUZTLiAgVGhpcyBtYWNybyB3YXMgZ2V0dGluZyBsb3N0CisgICAgaWYgc29tZW9uZSB3YXMgc2V0dGluZyBDRkxBR1Mgb24gdGhlIGNtZGxpbmUuICBQZXJoYXBzIHRoaXMgc2hvdWxkCisgICAgYmUgbW92ZWQgaW50byBjb25maWcuaC5pbj8KKworV2VkIERlYyAyMCAwMTozOTozMCBDU1QgMjAwMCBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIG1haW4vcHJvY2Vzc2FyYy5jOiBEb24ndCBjb3B5IHRyYWlsaW5nIHplcm9zIGZyb20gZHBrZy1kZWIKKyAgICBwaXBlLgorICAqIG1haW4vYXJjaGl2ZXMuYzogRml4IHNvbWUgaThsbi4KKyAgKiBkcGtnLWRlYi9leHRyYWN0LmM6IFJlbW92ZSBza2lwbWVtYmVyKCksIGFuZCB1c2UgdGhlIGJ1ZmZlcgorICAgIGNvcHkgY29kZS4KKworV2VkIERlYyAyMCAwMTozMToyOCBDU1QgMjAwMCBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGxpYi9uZm1hbGxvYy5jLCBsaWIvcGFyc2VoZWxwLmM6IExlc3NvbiB0aGUgbWVtb3J5IGZvb3RwcmludC4KKworV2VkIERlYyAyMCAwMToxMToxMyBDU1QgMjAwMCBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKworICAqIGRwa2ctZGViL2J1aWxkLmM6IEZpeCBidWlsZGluZyBvZiBkZWJzLCB3aGVuIHRoZXJlIGlzIG5vIGdpdmVuCisgICAgY29tcHJlc3Npb24gb24gdGhlIGNtZGxpbmUuCisKK1dlZCBEZWMgMjAgMDE6NTU6NTkgQ0VUIDIwMDAgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIHNjcmlwdHMvZHBrZy1hcmNoaXRlY3R1cmUucGw6IGZpeCB0eXBvIC8gc3ludGF4IGVycm9yCisKK01vbiBEZWMgMTggMDc6Mzc6MTAgQ0VUIDIwMDAgcGV0ZXIga2FybHNzb24gPHBldGVya0BkZWJpYW4ub3JnPgorCisgICogcG8vc3YucG86IFVwZGF0ZWQgU3dlZGlzaCB0cmFuc2xhdGlvbi4KKworU3VuIERlYyAxNyAxMzozNDowNiBDRVQgMjAwMCBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogZGViaWFuL2NvbnRyb2w6IGZpeCB0eXBvIGluIEJ1aWxkLURlcGVuZHMgYW5kIGFkZCB6bGliMWctZGV2CisgICogTW9yZSBBZGFtIHN0dWZmOgorICAgICsgbGliL21saWIuYywgaW5jbHVkZS9kcGtnLmguaW46IG1ha2UgZG9fZmRfY29weSBldmVuIG1vcmUgbW9kdWxhcgorICAgICsgZHBrZy1kZWIve2J1aWxkLmMsZXh0cmFjdC5jLGluZm8uY30sIGxpYi9zaG93Y3JpZ2h0LmMsCisgICAgICBtYWluL3tlbnF1aXJ5LmMsZmlsZXNkYi5jfTogdXBkYXRlZCBmb3IgbmV3IGRvX2ZkX2NvcHkgcm91dGluZXMKKyAgICArIG1haW4ve2FyY2hpdmVzLFtjaF0sbWFpbi9wcm9jZXNzYXJjLmN9OiB1c2UgZmRzIGluc3RlYWQgb2Ygc3RyZWFtcworICAgICAgc28gd2UgZG9uJ3QgbWl4IGZkIGFuZCBzdHJlYW0tYmFzZWQgSU8gd2hpY2ggY2FuIGNhdXNlIGhhdm9jCisKK1dlZCBEZWMgMTMgMTY6NDg6NDcgQ0VUIDIwMDAgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIG1haW4vYXJjaGl2ZXMuYzogY3JlYXRlIGZpbGVzLCBmaWZvcywgZGV2aWNlcyBhbmQgZGlyZWN0b3JpZXMgd2l0aCBtb2RlIDAKKyAgICB0b28gY2xvc2UgYSBzbWFsbCB3aW5kb3cgd2hlbiB0aGV5IGFyZSByZWFkYWJsZSBiZWZvcmUgd2UgYXBwbHkgdGhlIGNvcnJlY3QKKyAgICBwZXJtaXNzaW9ucy4KKyAgKiBtYWluL2FyY2hpdmVzLmM6IG5ld3Rhcm9iamVjdF9hbGxtb2RlcygpIHVwZGF0ZWQgdG8gaGFuZGxlIHN0YXRvdmVycmlkZXMKKyAgKiBtYWluL2Rwa2cuODogZ3JhbW1hciBmaXgKKworVHVlIERlYyAxMiAxNjoyNzo1OSBDRVQgMjAwMCBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogc2NyaXB0cy9kcGtnLXN0YXRvdmVycmlkZS5wbDogZml4IHdhcm5pbmcgd2hlbiB0cnlpbmcgdG8gcmVtb3ZlIGEKKyAgICBub24tZXhpc3Rpbmcgb3ZlcnJpZGUuCisKK01vbiBEZWMgMTEgMDE6MTA6MTkgQ0VUIDIwMDAgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIGRlYmlhbi9jb250cm9sOiBhZGQgZ2V0dGV4dCB0byB0aGUgYnVpbGQtZGVwZW5kcworCitTdW4gRGVjIDEwIDAwOjEwOjI3IENFVCAyMDAwIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBsaWIvbWxpYi5jOiByZW1vdmUgbm8gbG9uZ2VyIHVzZWQgc3RydWN0CisgICogbGliL21saWIuYzogcmV0dXJuIG51bWJlciBvZiBieXRlcyByZWFkIGluIGRvX2ZkX3JlYWQKKyAgKiBtYWluL2VucXVpcnkuYzogb25lIG1vcmUgcGxhY2Ugd2hlcmUgd2UgY2FoIHVzZSByZWFkX2ZkX3ZidWYKKworU2F0IERlYyAwOSAxMjoyMTozNSBDRVQgMjAwMCBwZXRlciBrYXJsc3NvbiA8cGV0ZXJrQGRlYmlhbi5vcmc+CisKKyAgKiBwby9zdi5wbywgZG9jL3N2L2RlYi41LCBkb2Mvc3YvZGViLW9sZC41LCBkb2Mvc3YvZHBrZy44OgorICAgIFVwZGF0ZWQgU3dlZGlzaCB0cmFuc2xhdGlvbi4KKyAgKiBkb2Mvc3Yvc3RhcnQtc3RvcC1kYWVtb24uODogRml4ZWQgYSB0eXBvLgorCitTYXQgRGVjICA5IDAxOjUxOjUxIENFVCAyMDAwIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBhcmNodGFibGUsIHNjcmlwdHMvZHBrZy1hcmNoaXRlY3R1cmUucGw6IGFkZCBsaW51eCBzLzM5MAorICAqIE1ha2VmaWxlLmNvbmYuaW4sIGNvbmZpZ3VyZS5pbjogYWRkIG5ldyBvcHRpb24gdG8gdXNlIGxpYnoKKyAgKiBkcGtnLWRlYi9NYWtlZmlsZS5pbiwgZHBrZy1kZWIvYnVpbGQuYywgZHBrZy1kZWIvZXh0cmFjdC5jOiB1c2UgbGliegorICAgIGlmIHNvIGRlc2lyZWQKKyAgKiBkZWJpYW4vcnVsZXM6IGRlZmF1bHQgdG8gdXNpbmcgc3RhdGljIGxpYnoKKyAgKiBpbmNsdWRlL3tkcGtnLWRiLmgsZHBrZy5oLmlufSwgbGliL21saWIuYywgbGliL3ZhcmJ1Zi5jOiBnZW5lcmFsaXplIAorICAgIGZkIGNvcHkgbG9vcHMKKyAgKiBtYWluL2ZpbGVzZGIuYzogdWRwYXRlcyB0byB1c2UgcmVhZF9mZF9idWYKKworVHVlIERlYyAwNSAwNzo0MzowNSBDRVQgMjAwMCBwZXRlciBrYXJsc3NvbiA8cGV0ZXJrQGRlYmlhbi5vcmc+CisKKyAgKiBwby9zdi5wbzogVXBkYXRlZCBTd2VkaXNoIHRyYW5zbGF0aW9uLgorCitNb24gRGVjICA0IDE0OjQyOjAxIENFVCAyMDAwIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBzY3JpcHRzL2Rwa2ctc3RhdG92ZXJyaWRlLnBsLCBtYWluL2ZpbGVzZGIuYzogbWVyZ2UgcGF0Y2ggZnJvbQorICAgIFJvYmVydCBMdWJlcmRhIDxyb2JlcnRAcGluZ3UuaWkudWouZWR1LnBsPiB0byBmaXggc3RhdG92ZXJyaWRlcworICAgIHVzaW5nIG51bWVyaWNhbCBbdWddaWRzCisgICogTWVyZ2UgdXBkYXRzIGZyb20gdGhlIHYxNyBicmFuY2g6CisgICAgKyBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnNoOiBRdW90ZSB0ZXN0IG9wdGlvbnMgZm9yIHVzZXBhdXNlCisgICAgKyBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOiByZXNvbHZlIGxpYnJhcnkgcGF0aHMgdXNpbmcgYSBjb21iaW5hdGlvbgorICAgICAgb2YgdGhlIGxpYmMgbWFqb3IgdmVyc2lvbiwgYW5kIGxkY29uZmlnIC1wIG91dHB1dC4gU29sdmVzIHByb2JsZW1zCisgICAgICB3aXRoIGVycmFudCBsaWJjNSBkZXBzLgorICAgICsgc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDogTWFrZSBpdCBwYXJzZSBzb25hbWUncyBpbiB0aGUgZm9ybWF0IG9mCisgICAgICAibGliZm9vLVguWC5zbyIgKGUuZy4gbGliZGItMy4xLnNvKSBhbmQgdXNlIGl0LiBBbHNvIG1ha2UgaXQgZ2l2ZSBhCisgICAgICB3YXJuaW5nIGlmIHRoZXJlIGlzIGEgTkVFREVEIGxpbmUgaW4gdGhlIG9iamR1bXAgb3V0cHV0IHRoYXQgd2UgY2Fubm90CisgICAgICBncm9rLgorICAgICsgc2NyaXB0cy91cGRhdGUtcmMuZC5wbDogZml4IHR5cG8gaW4gcmVnZXhwIGZvciBzY3JpcHRzCisgICAgKyBkZWJpYW4vcnVsZXM6IHJlbW92ZSBmaW5hbCBvY2N1cnJlbmNlIG9mIGVtYWNzCisKK01vbiBEZWMgIDQgMDE6MzQ6NTcgQ0VUIDIwMDAgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIE1lcmdlIG1vcmUgb2YgQWRhbXMgaGFuZHl3b3JrIHRvIGJyaW5nIGRwa2cgdXAgdG8gc3BlZWQgKGxpdGVyYWxseSA6KQorICAgICsgaW5jbHVkZS9kcGtnLmguaW46IHJlbW92ZSBkZWZpbmVzIGZvciBjYXQgYW5kIGRwa2ctc2FmZWxpc3Qgc2luY2UgdGhleQorICAgICAgYXJlIG5vIGxvbmdlciB1c2VkCisgICAgKyBsaWIvbWxpYi5jOiBzcGxpdCB1cCBkb19mZF9jb3B5CisgICAgKyBsaWIvdmFyYnVmLmM6IGFkZCB2YXJidWZ2cHJpbnRmCisgICAgKyBsaWIvcGFyc2UuYzogdXNlIG1lbXNldCB0byBpbml0aWFsaXplIGZpZWxkZW5jb3VudGVyZWQKKyAgICArIG1haW4vZmlsZXNkYi5jOiB1c2UgbmV3IHJlYWRfZmRfaW50b19idWYKKworU3VuIERlYyAgMyAyMjoxMToyMiBDRVQgMjAwMCBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogZHBrZy1kZWIvZXh0cmFjdC5jOiBhcHBseSBvbmUgb2YgQWRhbXMgZG9fZmRfY29weSBwYXRjaGVzCisKK1RodSBOb3YgMzAgMDI6NDU6NDIgQ0VUIDIwMDAgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIHNjcmlwdHMvZHBrZy1zdGF0b3ZlcnJpZGUue3BsLDh9OiAKKyAgICArIGFkZCBuZXcgLS1pbXBvcnQgb3B0aW9uIHRvIGltcG9ydCBzZXR0aW5ncyBmcm9tIC9ldGMvc3VpZC5jb25mCisgICAgKyBmaXggRU5PRU5UIGlzc3VlcworICAgICsgdXNlICVvd25lciBjb25zaXN0ZW50bHkgaW5zdGVhZCBvZiAlb3duZXIgYW5kICV1c2VyCisKK1dlZCBOb3YgMjkgMTc6NTY6NDMgQ0VUIDIwMDAgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIHBvL2dsLnBvOiB1cGRhdGVkCisKK1R1ZSBOb3YgMjggMTg6NDg6NTIgQ0VUIDIwMDAgcGV0ZXIga2FybHNzb24gPHBldGVya0BkZWJpYW4ub3JnPgorCisgICogcG8vc3YucG86IFRlcm1pbm9sb2d5IGNoYW5nZXMKKworU2F0IE5vdiAyNSAyMjowNToxOSBDRVQgMjAwMCBwZXRlciBrYXJsc3NvbiA8cGV0ZXJrQGRlYmlhbi5vcmc+CisKKyAgKiBwby9zdi5wbzogVXBkYXRlZCBTd2VkaXNoIHRyYW5zbGF0aW9uCisKK0ZyaSBOb3YgMjQgMTY6NDk6MjYgQ0VUIDIwMDAgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIHNjcmlwdHMvZHBrZy1zY2Fuc291cmNlcy5wbDogRml4IGdldG9wdCB1c2FnZSBzaW5jZSBwZXJsNS42IGNvbXBsYWlucworICAgIGFib3V0IGl0LgorICAqIGRvYy9kZWItb2xkLjUsZG9jL2RlYi41LG1haW4vZHBrZy44LHNjcmlwdHMvZHBrZy1uYW1lLjEsCisgICAgc3BsaXQvZHBrZy1zcGxpdC44IDogdXBkYXRlIHRvIHJlZmxlY3QgdGhhdCBkcGtnLWRlYiBpcyBpbiBzZWN0aW9uIDEKKworVGh1IE5vdiAyMyAxOToxMzoyMSBDRVQgMjAwMCBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogbGliL215b3B0LmM6IHByb3Blcmx5IGNob21wIHJlYWQgbGluZXMKKworVGh1IE5vdiAyMyAxNzo1Mjo0NCBDRVQgMjAwMCBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogbGliL2ZpZWxkcy5jLCBsaWIvZHVtcC5jOiBmaXggdHdvIG1lbW9yeSBsZWFrcworICAqIE1vcmUgQWRhbSBIZWF0aCBwYXRjaGVzOgorICAgICsgbGliL21saWIuYywgaW5jbHVkZS9kcGtnLmguaW46IGFkZCBuZXcgb3B0aW9uIGZvciBkb19mZF9jb3B5IHRvCisgICAgICBzcGVjaWZ5IGJ1ZmZlcnNpemUKKyAgICArIGRwa2ctZGViL2J1aWxkLmMsIGxpYi9pbmZvLmMsIGxpYi9zaG93Y3JpZ2h0LmM6IHVwZGF0ZSBmb3IgbmV3CisgICAgICBkb19mZF9jb3B5CisgICAgKyBkcGtnLWRlYi9leHRyYWN0LmM6IHVzZSBkb19mZF9jb3B5IHRvIHJlYWQgZGF0YSBpbnN0ZWFkIG9mIHJlYWRpbmcKKyAgICAgIHBlciBjaGFyYWN0ZXIuCisgICogbGliL21saWIuYzogZml4IGVycm9yIHJlcG9ydGluZyBmb3IgcmVhZGluZyBkYXRhIGluIGRvX2ZkX2NvcHkKKyAgKiBvcHRsaWIvTWFrZWZpbGUuYW06IHJlbW92ZSAoY2FuJ3QgYmVsaWV2ZSB0aGlzIHN0aWxsIGV4aXN0ZWQhKQorICAqIHV0aWxzL01ha2VmaWxlLmluOiBsaW5rIG1kNXN1bSB3aXRoIG91ciBvd24gbGliaW50bCBpZiBuZWVkZWQKKyAgKiBhcmNodGFibGUsIHNjcmlwdHMvZHBrZy1hcmNoaXRlY3R1cmUucGw6IGFkZCBmcmVlYnNkLWkzODYKKyAgKiBhY2NvbmZpZy5oLCBjb25maWd1cmUuaW4sIGRvYy9NYWtlZmlsZS5pbjogbWFrZSBidWlsZGluZyBkb2N1bWVudGF0aW9uCisgICAgYW5kIHN0YXJ0LXN0b3AtZGFlbW9uIG9wdGlvbmFsCisgICogbWFpbi9oZWxwLmM6IG9ubHkgY2hlY2sgZm9yIHN0YXJ0LXN0b3AtZGFlbW9uIGluIGNoZWNrcGF0Y2goKSBpZiB3ZQorICAgIGJ1aWxkIGl0CisKK1RodSBOb3YgMjMgMTU6NDg6NTMgQ0VUIDIwMDAgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2Uuc2g6IE5hbWUgLmNoYW5nZXMgZmlsZSBwcm9wZXJseSBpZgorICAgIHdlIGFyZSBkb2luZyBhIHNvdXJjZS1vbmx5IGJ1aWxkCisKK1RodSBOb3YgIDkgMTM6NTM6MjEgQ0VUIDIwMDAgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIGRvYy9NYWtlZmlsZS5pbjogdXNlIGludGVybmFscy5odG1sL2luZGV4Lmh0bWwgYXMgZGVwZW5kZW5jeSB0YXJnZXQKKyAgICBzbyB3ZSBvbmx5IHJlYnVpbGQgdGhlIGRvY3Mgd2hlbiByZWFsbHkgbmVlZGVkCisKK1dlZCBOb3YgIDggMTQ6NTU6NDggQ0VUIDIwMDAgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIE1ha2VmaWxlLmNvbmYsIGRlYmlhbi9ydWxlczogbm8gbG9uZ2VyIGluc3RhbGwgYW55IGVtYWNzIHN1cHBvcnQgc3R1ZmYKKyAgKiBkZWJpYW4vNTBkcGtnLWRldi5lbCwgc2NyaXB0cy9kZWJpYW4tY2hhbmdlbG9nLW1vZGUuZWw6IHJlbW92ZWQKKyAgKiBhcmNodGFibGU6IGFkZCBwb3dlcnBjLWxpbnV4LWdudSBlbnRyeQorICAqIGRlYmlhbi9kcGtnLmNvbmZmaWxlczogc3luYyB3aXRoIGRwa2ctMTcgdHJlZQorCitUdWUgTm92ICA3IDIyOjA1OjQ4IENFVCAyMDAwIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBsaWIvbXlvcHQuYzogY2hvcCByZWFkIGxpbmVzIGluIG15ZmlsZW9wdAorCitUdWUgTm92ICA3IDAwOjQ1OjAwIENFVCAyMDAwIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBzY3JpcHRzL2Rwa2ctc3RhdG92ZXJyaWRlLjg6IGZpeCB0eXBvcworICAqIHNjcmlwdHMvZHBrZy1zdGF0b3ZlcnJpZGUucGw6CisgICAgKyByZXBsYWNlIGRwa2dsaWJkaXIgd2l0aCBhZG1pbmRpciAob29wcykKKyAgICArIG9wZW4gbmV3IGZpbGUgZm9yIHdyaXRpbmcgaW4gV3JpdGVPdmVycmlkZXMKKyAgKiBzY3JpcHRzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMucGw6IGhhbmRsZSB0aGUgZmFjdCB0aGF0IHRoZSBNYWtlZmlsZQorICAgIGNoYW5nZXMgb3VyICRhZG1pbmRpciBhc3NpZ25tZW50IHNvIHdlIGhhdmUgdG8gbWFudWFsbHkgYWRkCisgICAgIi9hbHRlcm5hdGl2ZXMiIHRvIHRoZSBwYXRoCisKK01vbiBOb3YgMDYgMDc6MjQ6MTEgQ0VUIDIwMDAgcGV0ZXIga2FybHNzb24gPHBldGVya0BkZWJpYW4ub3JnPgorCisgICogcG8vc3YucG86IFVwZGF0ZWQuCisKK1N1biBOb3YgIDUgMTY6Mjg6MjYgQ0VUIDIwMDAgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIGRlYmlhbi9kcGtnLmNvbmZmaWxlczogYWRkZWQgbWlzc2luZyBmaWxlCisgICogZGViaWFuL3J1bGVzLCBtYWluL21haW4uYzogcmVuYW1lIGRwa2cgY29uZmlnZmlsZSB0byBkcGtnLmNmZworICAqIGRlYmlhbi9ydWxlcywgZGViaWFuL29yaWdpbjogYWRkIG5ldyBvcmlnaW4gZmlsZQorICAqIHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOiByZW5hbWUgQnVncy1TdWJtaXQtVG8gdG8gQnVncworICAqIGRlYmlhbi9jb250cm9sOiBhZGQgQnVncyBhbmQgT3JpZ2luIGVudHJpZXMKKyAgKiBsaWIvZGF0YWJhc2UuYywgcGFyc2UuYzogYWRkIE9yaWdpbiBhbmQgQnVncyB0byBmaWVsZGluZm9zIHRhYmxlCisgICogaW5jbHVkZS9kcGtnLWRiLmg6IGFkZCBPcmlnaW4gYW5kIEJ1Z3MgdG8gcGtnaW5mb3BlcmZpbGUgc3RydWN0CisgICogZHBrZy1kZWIvbWFpbi5jLCBkcGtnLWRlYi9kcGtnLWRlYi5oOiBmaXggdHlwZSBmb3IgY29tcHJlc3Npb24KKyAgKiBNYWtlZmlsZS5pbjogaW5zdGFsbCBvcmlnaW4gZmlsZQorICAqIHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2Uuc2g6IGZpeCBsb2dpYyBlcnJvciBpbiBzb3VyY2Utb25seSBidWlsZGluZworICAqIHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6IGhhbmRsZSBCdWdzIGFuZCBPcmlnaW4gdGFncworCitTdW4gTm92ICA1IDEwOjAwOjMxIEVTVCAyMDAwIEJlbiBDb2xsaW5zIDxiY29sbGluc0BkZWJpYW4ub3JnPgorCisgICogQ3JlYXRlIGJyYW5jaCBwb2ludCBmb3IgdmVyc2lvbmVkIHByb3ZpZGVzCisgICogUmV2ZXJ0IHBhdGNoZXMgZm9yIGl0IGZyb20gdGhlIEhFQUQKKworU3VuIE9jdCAyOSAyMzozMzo0OCBDRVQgMjAwMCBwZXRlciBrYXJsc3NvbiA8cGV0ZXJrQGRlYmlhbi5vcmc+CisKKyAgKiBwby9zdi5wbzogc29tZSBjb3JyZWN0aW9ucworCitTdW4gT2N0IDI5IDAxOjQ3OjU5IENFU1QgMjAwMCBwZXRlciBrYXJsc3NvbiA8cGV0ZXJrQGRlYmlhbi5vcmc+CisKKyAgKiBwby9zdi5wbzogdHJhbnNsYXRlZCByZWFkZmFpbCBtZXNzYWdlIHBhcmFtZXRlcnMgZnJvbSBleHRyYWN0LmMKKworU2F0IE9jdCAyOCAxNTo0MTowNCBDRVNUIDIwMDAgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOiBtYWtlIGEgbWlzc2luZyBwYWNrYWdlIGEgd2FybmluZyBpbnN0ZWFkCisgICAgb2YgYW4gZXJyb3IKKyAgKiBkcGtnLWRlYi9leHRyYWN0LmM6IG1hcmsgcmVhZGZhaWwgbWVzc2FnZSBwYXJhbWV0ZXJzIGFzIHRyYW5zbGF0ZWFibGUKKworV2VkIE9jdCAyNSAwMDoxNDowNiBDRVNUIDIwMDAgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIHBvL25sLnBvOiBuZXcgRHV0Y2ggdHJhbnNsYXRpb24gZnJvbSBJdm8gVGltbWVybWFucworICAqIFRIQU5LUzogYWRkIEl2bworICAqIGNvbmZpZ3VyZS5pbjogYWRkIG5sIHRvIGxpbmd1YXMKKworVGh1IE9jdCAxOSAwMDo1OTo0MCBDRVNUIDIwMDAgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIHV0aWxzL3N0YXJ0LXN0b3AtZGFlbW9uLmMKKyAgICArIGZpeCBhIGJ1ZmZlciBvdmVyZmxvdyBpbiBjbWRuYW1lIGhhbmRsaW5nCisgICAgKyBPbmx5IGFib3J0IGlmIHdlIGZhaWwgdG8gb3BlbiBhbiBleGlzdGluZyBwaWRmaWxlCisgICogdXRpbHMvc3RhcnQtc3RvcC1kYWVtb24uODogdXBkYXRlIGZvcm1hdGluZyAKKworV2VkIE9jdCAxOCAxNzo0ODoxNSBDRVNUIDIwMDAgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6IHBhdGNoIGZyb20gQ29saW4gV2F0c29uIHRvIG5vdCByZW5hbWUgYQorICAgIGZpbGUgdG8gaXRzZWxmCisKK01vbiBPY3QgMTYgMTA6NDU6NDcgRURUIDIwMDAgQmVuIENvbGxpbnMgPGJjb2xsaW5zQGRlYmlhbi5vcmc+CisKKyAgKiBtYWluL3BhY2thZ2VzLmM6IEhhY2sgdXAgdGhpbmdzIHNvIGEgcGFja2FnZSB3aGljaAorICAgIHByb3ZpZGVzL2NvbmZsaWN0cy9yZXBsYWNlcyBpdCdzIG93biB2aXJ0dWFsIGNhbiBiZSBpbnN0YWxsZWQgKGNhbid0CisgICAgYmUgcmVtb3ZlZCB5ZXQsIGJ1dCBoZXkuLi4pCisKK1NhdCBPY3QgIDcgMjI6MTg6NDMgQ0VTVCAyMDAwIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+IAorCisgICogcG8vZ2wucG8sIGNvbmZpZ3VyZS5pbjogYWRkIG5ldyBHYWxpY2lhbiB0cmFuc2xhdGlvbiBmcm9tICBBbGJlcnRvIEdhcmNpYQorICAqIHBvL3B0X0JSLnBvLCBjb25maWd1cmUuaW46IGFkZCBuZXcgQnJhemlsaWFuIHRyYW5zbGF0aW9uIGZyb20KKyAgICBDYXJsb3MgTGF2aW9sYQorICAqIFRIQU5LUzogYWRkIEFsYmVydG8gYW5kIENhcmxvcworCitXZWQgT2N0ICA0IDE2OjM3OjA4IENFU1QgMjAwMCBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPiAKKworICAqIG1haW4vcHJvY2Vzc2FyYy5jOiByZWFkIHRyYWlsaW5nIHplcm9lcyBmcm9tIHRhciBvdXRwdXQKKworVHVlIE9jdCAwMyAyMzoxMzo1OSBDRVNUIDIwMDAgcGV0ZXIga2FybHNzb24gPHBldGVya0BkZWJpYW4ub3JnPgorCisgICogcG8vc3YucG86IFVwZGF0ZWQgU3dlZGlzaCB0cmFuc2xhdGlvbi4KKworU3VuIE9jdCAgMSAyMDowOTo0MiBDRVNUIDIwMDAgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIG1haW4vZW5xdWlyeS5jOiBmaXggdGhlIGxpc3RwYWNrYWdlIG91dHB1dCBsb2dpYworICAqIG1haW4vZmlsZXNkYi5jOiBmaXggZXJyb3IgY2xlYW51cCBpbiBlbnN1cmVfc3RhdG92ZXJyaWRlCisgICogbGliL215b3B0LltjaF06IGFkZCBteW9wdGZpbGUoKSBzbyB3ZSBjYW4gcmVhZCBjb25maWd1cmF0aW9uIGZpbGVzCisgICogbWFpbi9tYWluLmM6IGNhbGwgbmV3IG15b3B0ZmlsZSgpCisgICogaW5jbHVkZS9NYWtlZmlsZS5pbiwgaW5jbHVkZS9kcGtnLmguaW46IGFkZCBkcGtnY29uZmRpcgorCitNb24gU2VwIDI1IDE2OjE5OjA1IENFU1QgMjAwMCBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogc2NyaXB0cy9kcGtnLWRpdmVydC5wbDogZG9uJ3QgcHJpbnQgdmVyc2lvbiB0d2ljZSBvbiAtLWhlbHAKKworVGh1IFNlcCAyMSAxNjoyOTozMiBDRVNUIDIwMDAgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIGRlYmlhbi9zaGxpYnMtZGVmYXVsdC50ZW1wbGF0ZTogcmVtb3ZlZAorICAqIGRlYmlhbi9zaGxpYnMte2RlZmF1bHQsb3ZlcnJpZGV9OiBuZXcgZmlsZXMKKyAgKiBkZWJpYW4vcnVsZXM6IGluc3RhbGwgc2hsaWJzLXtkZWZhdWx0LG92ZXJyaWRlfSBpbiAvZXRjL2Rwa2cgaW4gZHBrZy1kZXYKKyAgKiBzY3JpcHRzL3tkcGtnLWJ1aWxkcGFja2FnZS5zaCxkcGtnLWdlbmNoYW5nZXMucGx9OiBhZGQgLVMgb3B0aW9uIHRvIG9ubHkKKyAgICB1cGxvYWQgc291cmNlcworICAqIHNjcmlwdHMvZHBrZy1zb3VyY2UuMTogZG9jdW1lbnQgbmV3IC1TIG9wdGlvbgorCitTdW4gU2VwIDE3IDAxOjUwOjM0IENFU1QgMjAwMCBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogc2NyaXB0cy9kcGtnLXNvdXJjZS4xOiBkb2N1bWVudCAtayBvcHRpb24gZm9yIGRwa2ctYnVpbGRwYWNrYWdlCisKK1NhdCBTZXAgMTYgMjI6NTU6NDkgQ0VTVCAyMDAwIHBldGVyIGthcmxzc29uIDxwZXRlcmtAZGViaWFuLm9yZz4KKworICogZG9jL3N2LzgyMi1kYXRlLjEsIGRvYy9zdi9kcGtnLXNwbGl0Ljg6IEluaXRpYWwgU3dlZGlzaCB0cmFuc2xhdGlvbi4KKyAqIGRvYy9zdi9NYWtlZmlsZS5pbjogQWRkZWQgbW9yZSBTd2VkaXNoIG1hbnVhbCBwYWdlcyB0byBpbnN0YWxsLgorICogcG8vc3YucG86IEZpeGVzIGFuZCB1cGRhdGVzLgorCitGcmkgU2VwIDE1IDIzOjQ1OjIxIENFU1QgMjAwMCBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogVEhBTktTOiB1cGRhdGUgZW1haWwgYWRkcmVzcyBmb3IgZGhkCisgICogbWVyZ2UgaHBwYSBmaXhlZCBmcm9tIGRoZDoKKyAgICArIGFyY2h0YWJsZTogYWRkIGhwcGEsIGZpeHVwIFN1cGVySCBlbnRyaWVzCisgICAgKyBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLnBsOiBhZGQgaHBwYQorICAgICsgY29uZmlnLnN1YiwgY29uZmlnLmd1ZXNzOiB1cGRhdGVkIHRvIHN1cHBvcnQgaHBwYQorICAgICsgbWFpbi9lbnF1aXJ5LmM6IGZpeCBwcmludGFyY2goKQorCitGcmkgU2VwIDE1IDA4OjAwOjQ0IENFU1QgMjAwMCBwZXRlciBrYXJsc3NvbiA8cGV0ZXJrQGRlYmlhbi5vcmc+CisKKyAgKiBwby9zdi5wbzogU29tZSBjb25zaXN0ZW5jeSBjaGFuZ2VzIGZvciB0aGUgdHJhbnNsYXRpb24uCisgICogZG9jL3N2L2RlYi41LCBkb2Mvc3YvZHBrZy44LCBkb2Mvc3YvZHNlbGVjdC44OiBUcmFuc2xhdGlvbiBmaXhlcy4KKworVGh1IFNlcCAxNCAyMjozMToxNSBDRVNUIDIwMDAgcGV0ZXIga2FybHNzb24gPHBldGVya0BkZWJpYW4ub3JnPgorCisgICogcG8vc3YucG86IFVwZGF0ZWQgU3dlZGlzaCB0cmFuc2xhdGlvbi4KKyAgKiBkb2Mvc3YvZGViLWNvbnRyb2wuNSwgZG9jL3N2L2RlYi1vbGQuNSwgZG9jL3N2L2Rwa2cuOCwgZG9jL3N2L21kNXN1bS4xLAorICAgIGRvYy9zdi9zdGFydC1zdG9wLWRhZW1vbi44OiBJbml0aWFsIFN3ZWRpc2ggdHJhbnNsYXRpb24uCisgICogZG9jL3N2L01ha2VmaWxlLmluOiBBZGRlZCBtb3JlIFN3ZWRpc2ggbWFudWFsIHBhZ2VzIHRvIGluc3RhbGwuCisKK1N1biBTZXAgMTAgMjM6MzE6MDIgQ0VTVCAyMDAwIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOiBtb2RpZnkgdG8gdXNlIG1vc3QgcmVjZW50IHZlcnNpb24KKyAgICBvZiBhIHBhY2thZ2UgaWYgbXVsdGlwbGUgdmVyc2lvbnMgYXJlIGZvdW5kCisKK1NhdCBTZXAgIDkgMjE6MTc6MzcgQ0VTVCAyMDAwIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBkZWJpYW4vY29udHJvbDogYWRkIGRlcGVuZGVuY3kgb24gYmludXRpbHMgZm9yIGRwa2ctZGV2IChuZWVkZWQgZm9yCisgICAgb2JqZHVtcCkKKyAgKiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOiByZWFsbHkgbWFrZSBpdCBkbyB3aGF0IHRoZSBkb2N1bWVudGF0aW9uCisgICAgc2F5cyBpdCBkb2VzLgorICAqIHNjcmlwdHMvdXBkYXRlLWFsdGVybmF0aXZlcy5wbDoKKyAgICArIHNldCBhbHRlcm5hdGl2ZSB0byBtYW51YWwgbW9kZSB3aGVuIGRvaW5nIC0tY29uZmlnCisgICAgKyBGaXggdHlwbyBpbiB0ZXN0IGZvciByZW1vdmVkIG1hbnVhbCBhbHRlcm5hdGl2ZQorICAgICsgTWVyZ2UgcGF0Y2ggZnJvbSBDYW1tIE1hZ3VpcmUgdG8gZml4IHVwZGF0aW5nIG9mIHNsYXZlIGxpbmtzCisKK0ZyaSBTZXAgIDggMTI6Mjg6MzQgQ0VTVCAyMDAwIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBjb25maWd1cmUuaW46IGFkZCBkZSB0byBBTExfTElOR1VBUworICAqIHBvL2RlLnBvOiBOZXcgR2VybWFuIHRyYW5zbGF0aW9uIGZyb20gSGFydG11dCBLb3B0ZWluCisgICogVEhBTktTOiBBZGQgSGFydG11dCAKKyAgKiBtYWluL2VucXVpcnkuYzogZml4IHNpbGx5IHR5cGUgZXJyb3IKKyAgKiBzY3JpcHRzL2Rwa2ctZGl2ZXJ0LnBsOiBjaGFuZ2UgJGRwa2dsaWJkaXIgdG8gJGFkbWluZGlyCisgICogc2NyaXB0cy9NYWtlZmlsZS5pbjogc2V0ICRhZG1pbmRpciBhcyB3ZWxsIGluIHNjcmlwdHMKKworVHVlIFNlcCAgNSAyMDoyODoxNyBDRVNUIDIwMDAgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIHNjcmlwdHMvZHBrZy1zb3VyY2UuMTogbm90ZSB0aGF0IGRwa2ctc2hsaWJkZXBzIHVzZXMgb2JqZHVtcCBub3cKKworU2F0IFNlcCAgMiAxODoyOTo1NiBDRVNUIDIwMDAgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIGFyY2h0YWJsZSwgc2NyaXB0cy9kcGtnLWFyY2hpdGVjdHVyZS5wbDogYWRkIGVudHJpZXMgZm9yIFN1cGVySAorCitXZWQgQXVnIDMwIDE0OjI0OjUzIENFU1QgMjAwMCBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogbWFpbi9lbnF1aXJ5LmM6IG1vZGlmeSBsaXN0Zm9ybWF0c3RyaW5nKCkgdG8gY2hlY2sgaWYgb3V0cHV0IGlzCisgICAgYmVpbmcgc2VudCB0byBhIHR0eS4gSWYgbm90IGFuZCBubyBDT0xVTU5TIGlzIHNldCB1c2UgYSB3aWR0aCBvZiA4MAorCitNb24gQXVnIDIxIDEyOjU4OjE1IENFU1QgMjAwMCBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogbGliL2xvY2suYywgbWFpbi9maWxlc2RiLmMsIG1haW4vYXJjaGl2ZXMuYywgbWFpbi9jb25maWd1cmUuYywKKyAgICAgZHBrZy1kZWIvYnVpbGQuYywgZHBrZy1kZWIvZXh0cmFjdC5jOiB1cGRhdGVzIGZyb20gQ2hpcCBTYWx6ZW5iZXJnCisgICAgIHRvIGNsZWFuIHVwIGZkIGhhbmRsaW5nCisKK1RodSBBdWcgMTAgMjE6MDg6MDAgQ0VTVCAyMDAwIHBldGVyIGthcmxzc29uIDxwZXRlcmtAZGViaWFuLm9yZz4KKworICAqIHBvL3N2LnBvOiBNb3JlIGNvcnJlY3Rpb25zIGFuZCB0cmFuc2xhdGlvbiB1cGRhdGVzLgorCitNb24gQXVnICA3IDEyOjAyOjE2IFBEVCAyMDAwIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBtYWluL2VucXVpcnkuYzogY2FjaGUgdmFsdWUgb2YgcGFja2FnZWxpc3QgZm9ybWF0c3RyaW5nIGluc3RlYWQKKyAgICBvZiByZWNyZWF0aW5nIGl0IGZvciBldmVyeSBwYWNrYWdlCisKK1R1ZSBBdWcgIDEgMTA6NTY6NTIgRURUIDIwMDAgQmVuIENvbGxpbnMgPGJjb2xsaW5zQGRlYmlhbi5vcmc+CisKKyAgKiBtYWluL3BhY2thZ2VzLmM6IGZpeCB0aGlua28gd2l0aCB2ZXJzaW9uZWQgZGVwcworICAqIGRlYmlhbi9ydWxlczpjbGVhbjogcmVtb3ZlIGRpc3RjbGVhbiBjYWxsLCB3ZSBwdXJnZSB0aGUgd2hvbGUgYnVpbGQKKyAgICBkaXJlY3RvcnkgYW55d2F5LgorICAqIG1haW4vbWFpbi5jOiBhZGQgLS1hc3NlcnQtdmVyc2lvbmVkLXByb3ZpZGVzIG9wdGlvbgorICAgIG1haW4vbWFpbi5oOiBwcm90b3R5cGUgaXQKKyAgICBtYWluL2VucXVpcnkuYzogYWRkIGFzc2VydHZlcnByb3YoKQorCitNb24gSnVsIDMxIDIzOjM4OjU2IEVEVCAyMDAwIEJlbiBDb2xsaW5zIDxiY29sbGluc0BkZWJpYW4ub3JnPgorCisgICogYXJjaHRhYmxlOiBhZGQgaWE2NDsgcmV2ZXJ0IHNwYXJjNjQgc28gdGhhdCBpdCB0dXJucyBpbnRvIHNwYXJjLiBUaGVyZQorICAgIHdvbnQgYmUgYSBmdWxsIGJpbmFyeS1zcGFyYzY0IHBvcnQuCisgICogZHNlbGVjdC9tYWluLmNjOiBzbWFsbCBmaXh1cHMgdG8gZ2V0IGl0IHRvIGNvbXBpbGUgd2l0aCBnY2MtMi45NgorCitXZWQgSnVsIDI2IDIxOjI3OjMwIENFU1QgMjAwMCBwZXRlciBrYXJsc3NvbiA8cGV0ZXJrQGRlYmlhbi5vcmc+CisKKyAgKiBwby9zdi5wbzogVXBkYXRlZCB0cmFuc2xhdGlvbi4KKworU3VuIEp1bCAyMyAxNToyMzoxNSBDRVNUIDIwMDAgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIG1haW4vZW5xdWlyeS5jOiBtYXJrIGFub3RoZXIgc3RyaW5nIGFzIHRyYW5zbGF0ZWFibGUKKworU3VuIEp1bCAxNiAxMjo0Mzo1OSBFRFQgMjAwMCBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6IGFkZCBPcmlnaW4sIFN1Ym1pdC1CdWdzLVRvIGFuZAorICAgIFN1Ym1pdC1CdWdzLVN0eWxlIGZpZWxkcy4KKyAgKiBzY3JpcHRzL2Rwa2ctc291cmNlLjE6IHNsaWdodCBmb3JtYXR0aW5nIHVwZGF0ZQorICAqIGRlYmlhbi9jb3B5cmlnaHQ6IG1lcmdlIHR3byBlbnRyaWVzIGZvciBNaXF1ZWwgdmFuIFNtb29yZW5idXJnCisKK1NhdCBKdWwgMTUgMTQ6NTU6MDAgQ0VTVCAyMDAwIHBldGVyIGthcmxzc29uIDxwZXRlcmtAZGViaWFuLm9yZz4KKworICAqIHBvL3N2LnBvOiBNb3JlIGNvcnJlY3Rpb25zLgorCitUaHUgSnVsIDEzIDEwOjIyOjQzIEVEVCAyMDAwIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBsaWIvZmllbGRzLmM6IG1ha2UgYSBub24tZXhhY3QgdmVyc2lvbmVkIHByb3ZpZGVzIGEgd2FybmluZyBpbnN0ZWFkCisgICAgb2YgYW4gZXJyb3IKKworVHVlIEp1bCAgNCAxNzoyOTowNiBDRVNUIDIwMDAgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIG1haW4vZW5xdWlyeS5jOiBtb2RpZnkgZ2V0dHR5d2lkdGgoKSB0byBjaGVjayBDT0xVTU5TIGVudmlyb25tZW50CisgICogc2NyaXB0cy9jb250cm9sbGliLnBsOiByZW1vdmUgd2FybmluZ3MgZm9yIExPR05BTUUgc3R1ZmYKKworV2VkIEp1biAyOCAxOTo1MDowMCBDRVNUIDIwMDAgcGV0ZXIga2FybHNzb24gPHBldGVya0BkZWJpYW4ub3JnPgorCisgICogcG8vc3YucG86IFVwZGF0ZWQgU3dlZGlzaCB0cmFuc2xhdGlvbiBmcm9tIGNvbW1lbnRzIHJlY2VpdmVkLgorCitXZWQgSnVuIDI4IDAwOjA0OjQwIENFU1QgMjAwMCBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgKiBsaWIvc2hvd2NyaWdodC5jOiBkb24ndCB0cmFuc2xhdGUgZnVuY3Rpb24tbmFtZSBpbiBkb19mZF9jb3B5IGNhbGwKKworVHVlIEp1biAyNyAxOToxOTowMCBDRVNUIDIwMDAgcGV0ZXIga2FybHNzb24gPHBldGVya0BkZWJpYW4ub3JnPgorCisgICogcG8vc3YucG86IFVwZGF0ZWQgU3dlZGlzaCB0cmFuc2xhdGlvbiBmcm9tIGNvbW1lbnRzIHJlY2VpdmVkLgorCitTYXQgSnVuIDE3IDIxOjU3OjAwIENFU1QgMjAwMCBwZXRlciBrYXJsc3NvbiA8cGV0ZXJrQGRlYmlhbi5vcmc+CisKKyAgKiBwby9zdi5wbzogVXBkYXRlZCBTd2VkaXNoIHRyYW5zbGF0aW9uLgorICAqIFRIQU5LUzogVXBkYXRlZCBteSBlLW1haWwgYWRkcmVzcy4KKworRnJpIEp1biAxNiAwODo1OTo0NyBFRFQgMjAwMCBCZW4gQ29sbGlucyA8YmNvbGxpbnNAZGViaWFuLm9yZz4KKworICAqIG1haW4vZGVwY29uLmM6IHJlYWxseSBmaXh1cCB2ZXJzaW9uZWQgcHJvdmlkZXMgdGhpcyB0aW1lLiBiYXNpY2FsbHkgd2UKKyAgICBpZ25vcmUgdGhlIGR2cl8qIG9mIHRoZSBwcm92aWRlLCBhbmQgdXNlIHRoZSB2ZXJzaW9uIHRvIGRlY2lkZSBpZiB3ZQorICAgIHdhbnQgdG8gdXNlIGl0IHRvIHNhdGlzZnkgdGhlIGRlcAorICAqIG1haW4vZW5xdWlyeS5jOiBpZ25vcmUgZHZyXyogdHlwZSB3aGVuIGNoZWNraW5nIGZvciBwcm92aWRlcworCitUaHUgSnVuIDE1IDEzOjQxOjI4IENFU1QgMjAwMCBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogbGliL3BhcnNlLmM6IGFkZCBFbmhhbmNlcyB0byBmaWVsZGluZm9zW10KKyAgKiBsaWIvZmllbGRzLmM6CisgICAgKyBpbml0aWFsaXplIGRvcC0+YmFja3JldiBhcyB3ZWxsIHdoZW4gY3JlYXRpbmcgbmV3IGRlcGVuZGVuY3kKKyAgICArIG9ubHkgYWxsb3cgZXhhY3QgdmVyc2lvbiByZWxhdGlvbnMgd2hlbiBkZWFsaW5nIHdpdGggcHJvdmlkZXMKKyAgKiBUT0RPOiByZW1vdmUgdmVyc2lvbmVkIHByb3ZpZGVzCisgICogZGViaWFuL3J1bGVzOiBkb24ndCBmYWlsIGlmIG1ha2UgY2xlYW4gZmFpbHMgKHdoaWNoIGhhcHBlbnMgb24gYQorICAgIGN2c2NsZWFuIHRyZWUpCisKK1RodSBKdW4gMTUgMTA6MDk6MDMgRURUIDIwMDAgQmVuIENvbGxpbnMgPGJjb2xsaW5zQGRlYmlhbi5vcmc+CisKKyAgKiBtYWluL2RlcGNvbi5jOiByZW1vdmUgaWYoKSB0aGF0IHByZXZlbnRlZCB2ZXJzaW9uZWQgZGVwcyBmcm9tIGNoZWNraW5nCisgICAgcHJvdmlkZXMgdG8gc2F0aXNmeSB0aGVtCisgICogZHNlbGVjdC9wa2dzdWJsaXN0LmNjOiBTYW1lCisKK1R1ZSBKdW4gMTMgMjI6MTE6MjIgQ0VTVCAyMDAwIHBldGVyIGthcmxzc29uIDxwZXRlckBzb2Z0d29sdmVzLnBwLnNlPgorCisgICogcG8vc3YucG86IFVwZGF0ZWQgU3dlZGlzaCB0cmFuc2xhdGlvbgorCitUdWUgSnVuIDEzIDE5OjIzOjM3IENFU1QgMjAwMCBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogc2NyaXB0cy9kcGtnLXN0YXRvdmVycmlkZS5wbDogCisgICAgKyBmaXggdHdvIHR5cG9zIGluIHRoZSBoZWxwIG1lc3NhZ2UKKyAgICArIEFkZCBjb2RlIHRvIGltcGxlbWVudCAtLXVwZGF0ZSB3aGVuIGFkZGluZyBhbiBvdmVycmlkZQorICAqIHNjcmlwdHMvZHBrZy1zdGF0b3ZlcnJpZGUuODogbmV3IGZpbGUKKyAgKiBkZWJpYW4vZHBrZy5wb3N0aW5zdDogY3JlYXRlIHN0YXRvdmVycmlkZSBmaWxlIGlmIGl0IGRvZXNuJ3QgZXhpc3QKKworTW9uIEp1biAxMiAxOTozODoxNyBDRVNUIDIwMDAgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIHNjcmlwdHMvZHBrZy1zdGF0b3ZlcnJpZGUucGw6IGZpeCB0d28gdHlwb3MgaW4gdGhlIGhlbHAgbWVzc2FnZQorICAqIGRlYmlhbi9kcGtnLnBvc3RpbnN0OiBjcmVhdGUgc3RhdG92ZXJyaWRlIGZpbGUgaWYgaXQgZG9lc24ndCBleGlzdAorCitNb24gSnVuIDEyIDE2OjM1OjI2IENFU1QgMjAwMCBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogY29uZmlndXJlLmluOiBnZW5lcmF0ZSBkb2Mvc3YvTWFrZWZpbGUgYXMgd2VsbAorICAqIG1haW4vZmlsZXNkYi5jOiBmaXggbG9naWMgd2hlbiByZWFkaW5nIHN0YXR1c292ZXJyaWRlLWZpbGUKKyAgKiBzY3JpcHRzLy5jdnNpZ25vcmU6IGFkZCBhbGwgdGhlIHBlcmwgc2NyaXB0cworICAqIHNjcmlwdHMvZHBrZy1kaXZlcnQucGw6CisgICAgKyB0dXJuICRhZG1pbmRpciBpbnRvICRkcGtnbGliZGlyLCB3aGljaCB0aGUgTWFrZWZpbGUgd2lsbCBoYW5kbGUKKyAgICArIGZpeCBnbG9iLT5yZWdleHAgbG9naWMgZm9yIC0tbGlzdAorICAqIHNjcmlwdHMvTWFrZWZpbGUuaW46IAorICAgICsgcmVwbGFjZSBvbmUgYHNlZCcgd2l0aCBgJChTRUQpJworICAgICsgYWRkIGRwa2ctc3RhdG92ZXJyaWRlCisgICogc2NyaXB0cy9kcGtnLXN0YXRvdmVycmlkZS5wbDogbmV3IHV0aWwgdG8gbWFuYWdlIHN0YXRvdmVycmlkZXMKKyAgKiBkZWJpYW4vcnVsZXM6IG1vdmUgU3dlZGlzaCBtYW5wYWdlcyBpbnRvIHRoZSBwYWNrYWdlIGFzIHdlbGwKKworRnJpIEp1biAgOSAxNTo1MjoyOCBDRVNUIDIwMDAgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIE1lcmdlIHRoaW5ncyBmcm9tIHRoZSBwb3RhdG8gYnJhbmNoOgorICAgICsgcG8vKi5wbzogdXBkYXRlZAorICAgICsgVEhBTktTOiBBZGQgTGVsZSBHYWlmYXgKKyAgICArIGNvbmZpZ3VyZS5pbjogYWRkIEl0YWxpYW4gdG8gTElOR1VBUworICAgICsgZG9jL3N2OiBuZXcgZGlyZWN0b3J5IHdpdGggU3dlZGlzaCBtYW5wYWdlcworICAgICsgZG9jLyo6IHJlbW92ZWQgIkdOVS9MaW51eCIgc2luY2UgdGhpcyBydW5zIG9uIEhVUkQgYXMgd2VsbAorICAgICsgZG9jL2phL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuODogbmV3IHZlcnNpb24KKyAgICArIGRwa2ctZGViL21haW4uYzogcmVtb3ZlIHByZXByb2Nlc3NvciBkZWZpbmUgZnJvbSBnZXR0ZXh0aXplZCBzdHJpbmcKKyAgICArIGRzZWxlY3QvbWFpbi5jOiByZW1vdmUgcHJlcHJvY2Vzc29yIGRlZmluZSBmcm9tIGdldHRleHRpemVkIHN0cmluZworICAgICsgbGliL3Nob3djcmlnaHQuYzogcmVtb3ZlIHByZXByb2Nlc3NvciBkZWZpbmUgZnJvbSBnZXR0ZXh0aXplZCBzdHJpbmcKKyAgICArIG1haW4vZW5xdWlyeS5jOiBjYW4ndCB1c2UgcHJlcG9jZXNzb3IgZGVmaW5lcyBpbiBhIGdldHRleHRpemVkIHN0cmluZworICAgICsgZHNlbGVjdC9wa2dkaXNwbGF5LmNjOiBSZXBsYWNlIGVtcHR5IHN0cmluZyBmb3IgZWZsYWdzIHdpdGggYSBzcGFjZQorICAgICsgZHNlbGVjdC9wa2dzdWJsaXN0LmNjOiBtYXJrIGFub3RoZXIgc3RyaW5nIGFzIHRyYW5zbGF0ZWFibGUKKyAgICArIGRzZWxlY3QvcGtndG9wLmNjOiBjaGFuZ2UgY29kZSB0byByZWZsZWN0IHRoYXQgdGhlIGVtcHR5IGNhc2UgZm9yCisgICAgICBhbiBlZmxhZ3N0cmluZyBpcyBub3cgYSBzaW5nbGUgc3BhY2UsIG5vdCBhbiBlbXB0eSBzdHJpbmcgKHNpbmNlCisgICAgICBnZXR0ZXh0IGNhbid0IGhhbmRsZSBlbXB0eSBzdHJpbmdzKS4KKyAgICArIG1haW4vaGVscC5jOiBhbGxvY2F0ZSBhIGJpdCBtb3JlIHNwYWNlIGZvciB0aGUgcGF0aCBidWZmZXIgaW4gY2hlY2twYXRoKCkKKyAgICArIG1haW4vbWFpbi5jOiBmaXggbG9jYXRpb24gb2YgLS1hYm9ydC1hZnRlciBpbiAtLWhlbHAgb3V0cHV0CisgICAgKyBzY3JpcHRzL2RlYmlhbi1jaGFuZ2Vsb2ctbW9kZS5lbDogZml4IGRvY3VtZW50YXRpb24gc3RyaW5nIGZvcgorICAgICAgZGViaWFuLWNoYW5nZWxvZy1maW5hbGlzZS1sYXN0CisgICAgKyBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOiBmaXggdHlwbworICAgICsgc2NyaXB0cy91ZGF0ZS1hbHRlcm5hdGl2ZXMuODogZml4ZWQgZXJyb3JzIGZvdW5kIHdoaWxlIEphcGFuZXNlCisgICAgICB0cmFuc2xhdGlvbiB3YXMgbWFkZS4gCisgICogbWV0aG9kcy9NYWtlZmlsZS5hbTogcmVtb3ZlZAorICAKK1N1biBNYXkgMjggMTc6MjQ6MDkgQ0VTVCAyMDAwIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBkcGtnLWRlYi9idWlsZC5jOiByZW1vdmUgZXh0cmEgY2xvc2luZyBicmFjZQorICAqIGluY2x1ZGUvZHBrZy5oLmluOiBhZGQgZGVmaW5lIGZvciBzdGF0dXNvdmVyaWRlIGZpbGUKKyAgKiBtYWluL2ZpbGVkYi5bY2hdOiBhZGQgY29kZSB0byBtYW5hZ2UgdGhlIHN0YXRvdmVycmlkZSBsaXN0CisgICogbWFpbi9hcmNoaXZlcy5jOiBtb2RpZnkgdGFyb2JqZWN0KCkgdG8gY2hlY2sgZm9yIHN0YXRvdmVycmlkZXMKKyAgKiBUT0RPOiByZW1vdmUgaW50ZWdyYXRpbmcgc3VpZG1hbmFnZXIgbm90ZSwgaXQncyBwYXJ0aWFsbHkgZG9uZSBub3cKKyAgICAKK1N1biBBcHIgMzAgMTQ6MTk6NDEgQ0VTVCAyMDAwIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBkb2MvKjogcmVtb3ZlIGFsbCByZWZlcmVuY2VzIHRvIEdOVS9MaW51eCBhbmQganVzdCBtZW50aW9uIGBEZWJpYW4KKyAgICBzeXN0ZW0nOiB3ZSBqdXN0IGFzIHdlbGwgb24gb3RoZXIgb3BlcmF0aW5nIHN5c3RlbXMuCisgICogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDogYWRkIEZvcm1hdC1maWVsZCB0byAuZHNjIGZpbGVzCisgICogZGViaWFuL2NoYW5nZWxvZzogaW5jbHVkZSBjaGFuZ2VzIGZyb20gMS42LjEyLjk5CisKK1NhdCBBcHIgMTUgMTQ6NTM6MjMgRURUIDIwMDAgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIFRPRE86IHVwZGF0ZWQKKyAgKiBkZWJpYW4vcnVsZXM6IGV4cGxpY2l0bHkgc3RyaXAgdGhlIHNldGdpZCBiaXQgZm9yIGRlYmlhbi90bXAtKi4KKyAgICBUaGlzIGlzIG5lZWRlZCBzaW5jZSB0aGUga2VybmVsIGNvcGllcyBpdCB3aGVuIHdlIGNyZWF0ZSBzdWJkaXJzCisgICAgYW5kIGluc3RhbGwgZG9lc24ndCBzdHJpcCBpdCBldmVuIHRob3VnaCB3ZSBleHBsaWNpdGx5IGFzayBmb3IKKyAgICBhIG1vZGUgNzU1IGRpcmVjdG9yeS4gVXBkYXRlZCBjbGVhbiB0YXJnZXQgdG8gcnVuIG1ha2UgZGlzdGNsZWFuCisgICAgdG8gcmVtb3ZlIGdlbmVyYXRlZCBzb3VyY2VmaWxlcyBhcyB3ZWxsLgorICAqIGRwa2ctZGViL2J1aWxkLmM6IGFkZCBjb21tZW50cyB0byBkZXNjcmliZSB3aGF0IHdlIGFyZSBkb2luZy4KKyAgICBBZGQgY29kZSB0byBnZXQgYSBsaXN0IG9mIGZpbGVzIHRvIGJlIGFkZGVkIHRvIHRoZSBhcmNoaXZlLCByZW9yZGVyCisgICAgaXQgYW5kIGZlZWQgaXQgdG8gdGFyIGFuZCB1c2UgdGhpcyB0byBwdXQgc3ltbGlua3MgYWZ0ZXIgYWxsIG90aGVyCisgICAgZmlsZXMuCisgICogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6IGFkZCBkcGtnOlZlcnNpb24gYW5kIGRwa2c6VXBzdHJlYW1WZXJzaW9uCisgICAgdG8gbGlzdCBvZiBzdWJzdHZhcnMKKworVGh1IEFwciAxMyAwOTo1Nzo1MiBFRFQgMjAwMCBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogY29uZmlndXJlLmluOiBhZGQgLURfR05VX1NPVVJDRSB0byBDRkxBR1Mgc28gd2UgY2FuIGdldCBzdHJzaWduYWwKKyAgKiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDogb3V0cHV0IENoYW5nZWQtQnkganVzdCBhZnRlciBNYWludGFpbmVyCisgICogc2NyaXB0cy9jbC1kZWJpYW4ucGw6IHJlYWxseSBhbGxvdyBhIHNpbmdsZSB3aGl0ZXNwYWNlIHRvIGJldHdlZW4gIyBhbmQKKyAgICBhIGJ1Z251bWJlciB0aGF0IHdpbGwgYmUgY2xvc2VkLgorICAqIFN5bmNocm9uaXplIHdpdGggcG90YXRvLWJyYW5jaCBhZ2FpbjoKKyAgICArIHNjcmlwdHMvZHBrZy1kaXZlcnQucGw6IGZpeGVkIHR5cG8KKyAgICArIGRlYmlhbi9kcGtnLWRldi57cG9zdGluc3QscHJlcm19OiByZW1vdmUgZW1hY3Nlbi1jb21tb24gc3R1ZmYKKyAgICArIHBvL3tlcyxzdn0ucG86IHVwZGF0ZWQKKyAgICArIGRlYmlhbi9jaGFuZ2Vsb2c6IGluY2x1ZGUgY2hhbmdlcyBmb3IgMS42LjEyCisgICAgKyBkcGtnLWdlbmNoYW5nZXM6IHJlY29nbml6ZSBub24tZGViIHBhY2thZ2VzICh0YXJiYWxscywgc3VjaCBhcworICAgICAgZHBrZy1ub24tZGViIGFuZCBib290LWZsb3BwaWVzIGRpc2sgdGFyYmFsbHMpLiBUaGlzIG1ha2VzIHN1cmUgdGhhdCB3ZQorICAgICAgaW5jbHVkZSB0aGVtIHdoZW4gZmlndXJpbmcgdXAgdGhlIEFyY2ggZmllbGQgaW4gdGhlIC5jaGFuZ2VzCisgICAgKyBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnNoOiBEb24ndCBkZWZhdWx0IHRvIG5vIHNpZ25pbmcgdW50aWwKKyAgICAgIGFmdGVyIHdlIHBhcnNlZCB0aGUgb3B0aW9ucywgb3RoZXJ3aXNlIHdlIHdpbGwgbWlzcyBvdmVycmlkZXMuCisKK1dlZCBBcHIgMTIgMTk6MDY6MjcgRURUIDIwMDAgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOiBhZGQgZHBrZzpWZXJzaW9uIGFuZCBkcGtnOlVwc3RyZWFtVmVyc2lvbgorICAgIHRvIGxpc3Qgb2Ygc3Vic3R2YXJzCisKK1NhdCBNYXIgMTggMTk6MDg6MjAgQ0VUIDIwMDAgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIFN5bmNocm9uaXplIHdpdGggcG90YXRvLWJyYW5jaCBhZ2FpbjoKKyAgICArIHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2U6IGltcHJvdmUgdGVzdCBmb3IgZGVmYXVsdCBzaWduY29tbWFuZAorICAgICsgcG8vamEucG86IHVwZGF0ZWQKKyAgICArIGRzZWxlY3QvKi5jYzogcmVtb3ZlIGluY2x1ZGVzIGZvciBzaWduYWwuaCBhbmQgY3Vyc2VzLmgKKyAgICArIGRzZWxlY3QvZHNlbGVjdC5oOiBpbmNsdWRlIGJvdGggc2lnbmFsLmggYW5kIGN1cnNlcy5oIGFuZCAjdW5kZWYKKyAgICAgIHRoZSBFUlIgZnJvbSBzeXMvdWNvbnRleHQuaCB3aGljaCBicmVha3MgY3Vyc2VzCisgICAgKyBzY3JpcHRzL2Rwa2ctZGl2ZXJ0LnBsOiBmaXggc3ludGF4IGVycm9yCisgCitTYXQgTWFyICA0IDE2OjUyOjM4IENFVCAyMDAwIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBTeW5jaHJvbml6ZSB3aXRoIHBvdGF0by1icmFuY2ggYWdhaW46CisgICAgKyBkZWJpYW4vY2hhbmdlbG9nOiB1cGRhdGUgdG8gMS42LjEwCisgICAgKyBzY3JpcHRzL2Rwa2ctZGl2ZXJ0LnBsOiByZWluc3RhdGUgbGFzdCB3cml0ZWFiaWxpdHktcGF0Y2guIE1vZGlmaWVkCisgICAgICB0byBub3QgYWJvcnQgb24gRU5PRU5UOiB0aGlzIGluZGljYXRlcyBhIGRpcmVjdG9yeSBkb2VzIG5vdCAoeWV0KQorICAgICAgZXhpc3QuIElmIHRoaXMgaGFwcGVucyBkb24ndCB0cnkgdG8gcmVuYW1lLgorICAgICsgc2NyaXB0cy91cGRhdGUtYWx0ZXJuYXRpdmVzLnBsOgorICAgICAgKyB1cGRhdGUgdXNhZ2Utd2FybmluZyB0byByZWZsZWN0IHRoZSBuZXcgLS1jb25maWcgb3B0aW9uCisgICAgICArIERvY3VtZW50IHNvbWUgZ2xvYmFsIHZhcmlhYmxlcworICAgICAgKyBTd2l0Y2ggYmFjayB0byBhdXRvLW1vZGUgd2hlbiByZW1vdmluZyBhIG1hbnVhbGx5IHNlbGVjdGVkIGFsdGVybmF0aXZlCisgICAgKyBkc2VsZWN0L3tkc2VsZWN0LmgsbWFpbi5jYyxwa2dsaXN0LmNjfTogcmVtb3ZlIENBTl9SRVNJWkUgc3R1ZmYKKyAgICArIGRzZWxlY3QvbWV0aGxpc3QuY2M6IGRvbid0IGFib3J0IGlmIGdldGNoIGZhaWxzIGR1ZSB0byBpbnRlcnJ1cHRlZCBzeXNjYWxsCisgICAgKyBkc2VsZWN0L3BrZ2xpc3QuY2M6IGRvbid0IGFib3J0IGlmIGdldGNoIGZhaWxzIGR1ZSB0byBpbnRlcnJ1cHRlZCBzeXNjYWxsCisgICAgKyBkc2VsZWN0L2Jhc2VsaXN0LmNjOiBwdXQgZGVidWctc3RhdGVtZW50IGluIHNpZ3dpbmNoaGFuZGxlciBhbmQKKyAgICAgIGFjdHVhbGx5IHJlc2l6ZSB0aGUgY3VycmVudCB0ZXJtaW5hbCBiZWZvcmUgcmVkaXNwbGF5aW5nIHRoZSBzY3JlZW4KKworVGh1IE1hciAgMiAxNzowMzowNCBDRVQgMjAwMCBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogZHNlbGVjdC9tZXRoa2V5cy5jYzogcmVtb3ZlIG9sZCBiaW5kaW5ncyBmb3IgYG4nIGFuZCBgcCcsIHdoaWNoCisgICAgZnJlZXMgYG4nIHRvIGRvIHNlYXJjaGFnYWluCisKK01vbiBGZWIgMjggMTU6MTI6MDUgQ0VUIDIwMDAgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIHV0aWxzL01ha2VmaWxlLmluOiBmaXggbGluayBjb21tYW5kIGZvciBzdGFydC1zdG9wLWRhZW1vbgorCitNb24gRmViIDIxIDE4OjA1OjU1IENFVCAyMDAwIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBkc2VsZWN0L3BrZ3N1Ymxpc3QuY2M6IG1hcmsgYW5vdGhlciBzdHJpbmcgYXMgdHJhbnNsYXRlYWJsZQorCitUaHUgRmViIDE3IDIyOjAxOjM4IENFVCAyMDAwIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBkb2MvamEvZHNlbGVjdC44OiBVcGRhdGVkCisKK1dlZCBGZWIgMTYgMTc6MTM6MDkgQ0VUIDIwMDAgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIGRzZWxlY3QvcGtndG9wLmNjOiBmbGFnIHR3byBtb3JlIHN0cmluZ3MgYXMgdHJhbnNsYXRlYWJsZQorCitUdWUgRmViIDE1IDE5OjU3OjQ1IENFVCAyMDAwIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBNZXJnZSB0aGUgcG90YXRvIGJyYW5jaDoKKyAgKiBtYWluL2Rwa2cuODogZG9uJ3QgbGlzdCBhbGwgYXV0aG9ycyBidXQgcmVmZXIgdG8gVEhBTktTIGZpbGUKKyAgKiBkZWJpYW4vY29udHJvbDogY29ycmVjdCBCdWlsZC1EZXBlbmRlbmNpZXMgZm9yIG5jdXJzZXMKKyAgKiBkZWJpYW4vY29udHJvbDogdXBkYXRlIGV4dGVuZGVkIGRlc2NyaXB0aW9uIHRvIG5vdCBsaXN0IGRlcGVuZGVuY2llcworICAgIGZvciBkcGtnLWRldgorICAqIFVwZGF0ZSBsb3RzIG9mIGRvY3VtZW50YXRpb24KKyAgKiBtYWluL2VucXVpcnkuYzogaGFuZGxlIGZhaWxlZCBvcGVuIG9mIC9kZXYvdHR5CisgICogbWFpbi9yZW1vdmUuYzogcmV2ZXJ0IGVhcmxpZXIgcGF0Y2ggZnJvbSBPY3QgMTEgMTk5OSB0byByZW1vdmUKKyAgICBjb25mZmlsZXMgYmVmb3JlIHJlbW92aW5nIGRpcmVjdG9yaWVzLiBEdWUgdG8gdGhlIGNoYW5nZWQgZXhlY3V0aW9uCisgICAgb3JkZXIgY29uZmZpbGVzIHdlcmUgbm8gbG9uZ2VyIGFyb3VuZCB3aGVuIHRoZSBwb3N0cm0gd2FzIHJ1bi4KKyAgICB3aGljaCBpcyBub3Qgd2hhdCB3ZSB3YW50LgorICAqIG1ldGhvZHMvTWFrZWZpbGUuaW46IGNyZWF0ZSAkKGFkbWluZGlyKS9tZXRob2RzL21udAorICAqIHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOiB1bmRvIFNvdXJjZS1WZXJzaW9uIGNoYW5nZXMKKyAgKiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOiByZW1vdmUgc3RpY2t5IGJpdHMgZnJvbSBkaXJlY3Rvcnkgd2hlbgorICAgIHVucGFja2luZyBzb3VyY2UKKyAgKiBzY3JpcHRzL2luc3RhbGwtaW5mby5wbDogcGFydGlhbGx5IGFwcGx5IHBhdGNoIGZyb20gSmFtbWluIFdoZWVsZXIKKyAgICA8amFtbWluQGxpZmUuZXUub3JnPiB0byBjbGVhbiB1cCBlcnJvcnMKKyAgKiBzY3JpcHRzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMucGw6IGltcGxlbWVudCAtLXZlcmJvc2UKKworU3VuIEZlYiAxMyAwMTowNjo0NiBDRVQgMjAwMCBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5zaDogd2Uga25vdyB0aGF0IGRwa2ctYXJjaGl0ZWN0dXJlIGlzCisgICAgaW5zdGFsbGVkIHNpbmNlIHdlIHByb3ZpZGUgaXQsIHNvIGRvbid0IHRlc3QgZm9yIGl0cyBleGlzdGVuY2UKKyAgKiBNb3JlIHVwZGF0ZXMgZnJvbSBNYXJjdXMgQnJpbmttYW46CisgICAgKyBhcmNodGFibGU6IENoYW5nZSBmaXJzdCBjb2x1bW4gZm9ybWF0IGZyb20gQ1BVIHRvIENQVS1PUy4KKyAgICAgIEFkZCBlbnRyeSBmb3IgaTM4Ni1nbnUuIFVwZGF0ZSBjb21tZW50LgorICAgICsgY29uZmlndXJlLmluOiBDaGVjayBEZWJpYW4gYXJjaGl0ZWN0dXJlIHJldmFtcGVkOgorICAgICAgTW9yZSBhcHByb3ByaWF0ZSBjaGVjayB0aXRsZS4gQ2hlY2sgZm9yIENQVS1PUyBpbiBhcmhjdGFibGUgKGluc3RlYWQKKyAgICAgIGp1c3QgQ1BVKS4gRW5jbG9zZSByZXN1bHQgbWVzc2FnZSBpbiBbLi4uXSAoYmVjYXVzZSBvZiB0aGUgY29tbWEKKyAgICAgIGNoYXJhY3RlcikuIEFmdGVyIHRoZSB0ZXN0LCAkZHBrZ19hcmNoc2V0IGNhbid0IGJlIGVtcHR5LCBzbyByZW1vdmUKKyAgICAgIGZvbGxvd2luZyB0ZXN0IHdoaWNoIGlzIGFsd2F5cyB0cnVlLgorICAgICsgUmVtb3ZlIGludGVybmFsIHVzZSBvZiAtLXByaW50LWFyY2hpdGVjdHVyZToKKyAgICAgIHNjcmlwdHMvY29udHJvbGxpYi5wbDogVXNlIGFsd2F5cyBkcGtnLWFyY2hpdGVjdHVyZSAtcURFQl9IT1NUX0FSQ0gKKyAgICAgIHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2U6IERvbid0IHNldCAkYXJjaCBhdCBjb21tYW5kIGxpbmUgcGFyc2luZyB0aW1lLAorICAgICAgICBpbnN0ZWFkLCBhbHdheXMgc2V0IGl0IGxhdGVyIHdpdGggZHBrZy1hcmNoaXRlY3R1cmUgLXFERUJfSE9TVF9BUkNICisgICAgICBkcGtnLW5hbWUucGw6IEZhbGwgYmFjayB0byBkcGtnIC0tcHJpbnQtaW5zdGFsbGF0aW9uLWFyY2hpdGVjdHVyZS4KKworU2F0IEZlYiAxMiAxNzoxMTozMyBDRVQgMjAwMCBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogY29uZmlndXJlLmluOiBkb24ndCB0cnkgdG8gb3V0Z3Vlc3Mgd2hhdCBDRkxBR1Mgc2hvdWxkIGJlCisgICogc2NyaXB0cy91cGRhdGUtYWx0ZXJuYXRpdmVzLjg6IGZpeCB0eXBvCisgICogYE1lcmdlIE1hcmN1cyBCcmlua21hbiBwYXRjaGVzIGRheSc6CisgICAgKyBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLnBsOiBhcmNoaXRlY3R1cmUgLXEgc2hvdWxkIG5vdCBpbXBseSAtZgorICAgICsgc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDogYnVpbGQgYSBsaXN0IG9mIHBhY2thZ2VzIGluc3RlYWQgb2YKKyAgICAgIG92ZXJ3cml0aW5nIHByZXZpb3VzIHJlc3VsdHMuIAorICAgICsgdXRpbHMvc3RhcnQtc3RvcC1kYWVtb24uYzogdXBkYXRlIEhVUkQgc3BlY2lmaWNzCisgICAgKyBjb25maWd1cmUuaW46IHJldmFtcCBIVVJEIGRldGVjdGlvbiBzdHVmZgorICAgICsgZGViaWFuL3J1bGVzOiB1c2UgZHBrZy1idWlsZGFyY2hpdGVjdHVyZSB0byBnZXQgcHJvcGVyIGluZm8sCisgICAgICBzZXQgY29uZmlnX2FyZyBpZiB3ZSBhcmUgY3Jvc3Njb21waWxpbmcKKyAgICArIGRlYmlhbi9ydWxlczogdHlwbyBpbiBjbGVhbiB0YXJnZXQsIHNjYW4gc3RhcnQtc3RvcC1kYWVtb24gZm9yCisgICAgICBzaGxpYmRlcHMKKyAgICAgIAorVHVlIEZlYiAgOCAyMTozMzo1OCBFU1QgMjAwMCBCZW4gQ29sbGlucyA8YmNvbGxpbnNAZGViaWFuLm9yZz4KKworICAqIG1haW4ve3Byb2Nlc3NhcmMsYXJjaGl2ZX0uYzogTWFrZSB0aGUgY29uZmxpY3RvciBhbiBhcnJheSBvZiBzdHJ1Y3RzIGFuZAorICAgIG1ha2Ugc3VyZSB0aGF0IGNoZWNrX2NvbmZsaWN0cyB1c2VzIHRoYXQgYW5kIGluY3JlbWVudHMgYSBnbG9iYWwgaW5kZXhzCisgICAgZm9yIHRoZSBhcnJheS4gVGhlIHJlYXNvbiB0aGF0IG11bHRpcGxlIGNvbmZsaWN0cy9yZXBsYWNlcyB3ZXJlIGdldHRpbmcKKyAgICBib3JrZWQgaGFkIHNvbWV0aGluZyB0byBkbyB3aXRoIHRocmUgZmlyc3Qgb25lIGluIHRoZSBoYXNoIG5vdCBiZWluZworICAgIHByb2Nlc3NlZC4gVGhpcyB3YXMgdGhlIHJlc3VsdCBvZiBiYWQgcG9pbnRlciBnYW1lcywgc28gdGhpcyBtYWtlcyBpdCBhCisgICAgbG90IGNsZWFuZXIuCisKK1dlZCBKYW4gMTkgMTY6NDE6MDQgQ0VUIDIwMDAgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIHNjcmlwdHMvY29udHJvbGxpYi5wbDogYWRkIGNvbW1lbnQgd2l0aCBkZXNjcmlwdGlvbiBvZiBnbG9iYWwgdmFyaWFibGVzCisgICogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6CisgICAgKyBhZGQgY29tbWVudCB3aXRoIGRlc2NyaXB0aW9uIG9mIGdsb2JhbCB2YXJpYWJsZXMKKyAgICArIENoYW5nZSBGb3JtYXQgbnVtYmVyIHRvIDEuNworICAgICsgYE1haW50YWluZXInIGlzIG5vdyB0aGUgYWN0dWFsIG1haW50YWluZXIgYXMgbGlzdGVkIGluIGNvbnRyb2wKKyAgICArIGFkZCBgQ2hhbmdlZC1CeScgZmllbGQgd2l0aCBtYWludGFpbmVyIGFzIGxpc3RlZCBpbiBjaGFuZ2Vsb2cuIEFkZCAtZQorICAgICAgZmxhZyB0byBvdmVycmlkZSB0aGlzIHZhbHVlCisgICogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5zaDogcGFzcyAtZSBvbiB0byBkcGtnLWdlbmNoYW5nZXMKKyAgKiBzY3JpcHRzL2Rwa2ctc291cmNlLjE6IGRvY3VtZW50IG5ldyAtZSBvcHRpb24sIHVwZGF0ZSBjb3B5cmlnaHQKKworTW9uIEphbiAxNyAyMToyMDozNSBDRVQgMjAwMCBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogZHNlbGVjdC9NYWtlZmlsZS5pbjogbm90IGFsbCBzaGVsbHMgc3VwcG9ydCA9PSBmb3Igc3RyaW5ncyBjb21wYXJpc29ucworICAqIHZlcnNpb24tbnI6IHVwZGF0ZSB0byAxLjYuOAorICAqIHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6IHVwZGF0ZSB0byB2ZXJzaW9uIGZyb20gZHBrZ190ZXN0X2J6Ml9zeXNsb2dfc2lncworICAgIGJyYW5jaDoKKyAgICArIHVzZSBvYmpkdW1wIGluc3RlYWQgb2YgbGRkCisgICAgKyBjb3JyZWN0IGNoZWNrcyBvbiBzaGxpYnMubG9jYWwKKworU3VuIEphbiAxNiAyMjowNzoxMiBDRVQgMjAwMCBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogbWFpbi9kcGtnLjg6IG5vdGUgdGhhdCAtLWZvcmNlLW92ZXJ3cml0ZSBpcyBvZmYgYnkgZGVmYXVsdAorICAqIHBvLy5jdnNpZ25vcmU6IGFkZCBhbGwgdGhlIC5nbW8gZmlsZXMKKworU2F0IEphbiAxNSAwMzo0ODo0NyBDRVQgMjAwMCBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogZG9jL2phL2Rwa2ctZGViLjU6IHVwZGF0ZWQgd2l0aCBwYXRjaCBmcm9tIEhpcm9zaGkgS0lTRSA8ZnV5dW5la29Acnl1a3l1Lm5lLmpwPgorICAqIFRIQU5LUzogQWRkIEhpcm9zaGkgS0lTRQorCitUdWUgSmFuIDExIDAzOjM0OjIyIENFVCAyMDAwIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDogYWxzbyB1cGxvYWQgZnVsbCBzb3VyY2UgaWYgdmVyc2lvbiBpcyAqLTAuMQorICAqIGRvYy9qYS9kcGtnLjg6IHVwZGF0ZWQgd2l0aCBwYXRjaCBmcm9tIEhpcm9zaGkgS0lTRSA8ZnV5dW5la29Acnl1a3l1Lm5lLmpwPgorCitUdWUgSmFuIDExIDE4OjMyOjUyIENFVCAyMDAwIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBjb25maWd1cmUuaW46IEZpeCBpbmNsdWRlIGluIHRlc3QgZm9yIGFscGhhc29ydCAKKyAgKiBNYWtlZmlsZS5pbjogYWRkIGludGwgdG8gc3ViZGlyZWN0b3J5LWxpc3QKKyAgKiBkcGtnLWRlYi9NYWtlZmlsZS5pbjogc2V0IHRvcF9idWlsZGRpcgorICAqIGRzZWxlY3QvTWFrZWZpbGUuaW46IHNldCB0b3BfYnVpbGRkaXIKKyAgKiBtYWluL01ha2VmaWxlLmluOiBzZXQgdG9wX2J1aWxkZGlyCisgICogbGliL2NvbXBhdC5jOiBhZGQgcmVhbGx5IHNpbXBsZSBzbnByaW50ZiAoZG9lc24ndCBkbyByYW5nZS1jaGVja2luZykKKyAgKiBsaWIvY29tcGF0LmM6IGFkZCBzeXNfc2lnbGlzdAorICAqIGNvbmZpZ3VyZS5pbjogYWRkIHRlc3RzIGZvciBzbnByaW50ZiBhbmQgc3lzX3NpZ2xpc3QKKyAgKiBpbmNsdWRlL2Rwa2cuaC5pbjogZG9uJ3QgaW5jbHVkZSBzeXMvc3lzaW5mby5oLCBmaWxlc2RiLmMgaXMgdGhlIG9ubHkKKyAgICB0aGluZyB0aGF0IG5lZWRzIGl0IGFuZCBpdCBoYXMgaXRzIG93biBpbmNsdWRlLgorCitUdWUgSmFuIDExIDAyOjAyOjAwIENFVCAyMDAwIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBkc2VsZWN0L2Jhc2VsaXN0LmNjOiBkb24ndCBzcGVjaWZ5IFNBX0lOVEVSUlVQVCwgc2luY2UgaXQncworICAgIG5vdCBwb3J0YWJsZSBhbmQgdGhlIGRlZmF1bHQgYmVoYXZpb3VyCisgICogbWFpbi9lbnF1aXJ5LmM6IGluY2x1ZGUgc3lzL3Rlcm1pb3MuaCAobmVlZGVkIG9uIFNvbGFyaXMpCisgICogbGliL2xvY2suYzogdXNlIEVBQ0NFU1MgaW5zdGVhZCBvZiBFV09VTERCTE9DSworICAqIGRzZWxlY3QvbWFpbi5jYzogZml4IGhlbHAgZm9yIC1ECisgICogZHNlbGVjdC9tYWluLmNjOiB0cnkgdG8gbG9jayBhZG1pbmRpciBpbnN0ZWFkIG9mIHVzaW5nIHJlYWR3cml0ZQorICAqIGRzZWxlY3QvbWV0aG9kLmNjOiBzd2l0Y2ggdG8gdXNpbmcgZmNudGwgZm9yIGxvY2sgc2luY2UgdGhhdCBpcyBtb3JlCisgICAgcG9ydGFibGUsIGFuZCByZXZhbXAgbG9ja2luZ2NvZGUgdG8gcmVkdWNlIGNvZGUgZHVwbGljYXRpb24KKworTW9uIEphbiAxMCAyMDo1NTo0NSBDRVQgMjAwMCBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogVXBkYXRlIFN3ZWRpc2ggYW5kIFJ1c3NpYW4gdHJhbnNsYXRpb24KKworU3VuIEphbiAgOSAxNjoxMTozOSBDRVQgMjAwMCBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogTWVyZ2UgcGF0Y2hlcyBmcm9tIEpvc2lwIFJvZGluOgorICAgICsgdmFyaW91cyB0ZXh0IGFuZCBtYW5wYWdlIHVwZGF0ZXMKKyAgICArIGRzZWxlY3QvbWV0aG9kLmNjOiBkb24ndCBhYm9ydCBpZiBsb2NraW5nIGZhaWxzIGJ1dCBnaXZlIGEKKyAgICAgIHdhcm5pbmcKKyAgICArIFRIQU5LUzogZml4IHZhcmlvdXMgc21hbGwgZXJyb3JzIAorCitTdW4gSmFuICA5IDAxOjQwOjIzIENFVCAyMDAwIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBzY3JpcHRzL2NsLWRlYmlhbi5wbDogQWxsb3cgc3BhY2UgYmV0d2VlbiBgIycgYW5kIHRoZSBidWdudW1iZXIgaW4gdGhlCisgICAgY2hhbmdlbG9nIHNjcmlwdHMKKyAgKiBzY3JpcHRzL3N0YXJ0LXN0b3AtZGFlbW9uLmM6IHRlc3QgZm9yIF9fc3BhcmNfXyBpbnN0ZWFkCisgICogc2NyaXB0cy9NYWtlZmlsZS5pbjogYWRkIG9wdGxpYiB0byBDRkxBR1MKKyAgKiB1dGlscy9zdGFydC1zdG9wLWRhZW1vbi5jOiBhZGQgb3B0aW9uIHRvIGNocm9vdCBmaXJzdCwgcGF0Y2ggZnJvbSBNYXJjbyBkJ0l0cmkKKyAgKiB1dGlscy9zdGFydC1zdG9wLWRhZW1vbi44OiBkb2N1bWVudCBjaHJvb3Qgb3B0aW9uCisgICogZHNlbGVjdC9wa2d0b3AuY2M6IHVzZSB3YWRkbnN0ciB0byBwcmludCBwYWNrYWdlIGRlc2NyaXB0aW9uIGluc3RlYWQgb2Ygd2FkZGNoCisKK0ZyaSBKYW4gIDcgMTg6MjQ6NDUgQ0VUIDIwMDAgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIGRzZWxlY3QvbWV0aG9kLmNjOiBwYXNzIGFkbWluZGlyIHRvIGRwa2cKKyAgKiBkc2VsZWN0L01ha2VmaWxlLmluOiBmaXggcnVsZSB0byBidWlsZCBoZWxwbWVzc2FnZXMKKyAgKiBkc2VsZWN0L2N1cmtleXMuaDogdXNlIGN1cnNlcy5oIGluc3RlYWQgb2YgbmN1cnNlcy5oLCBzaW5jZSBzb21lb25lCisgICAgZGVjaWRlZCB0byBwbGF5IG5hc3R5IGFuZCBqdXN0IHJlbW92ZSB0aGF0CisgICogc2NyaXB0cy86IHJlbW92ZSBkcGtnLXNhZmVsaXN0CisgICogZHBrZy1kZWIvYnVpbGQuYzogcmVtb3ZlIGRwa2ctc2FmZWxpc3QgY2FsbHMKKyAgKiBtYWluL2VucXVpcnkuYzogcmVkbyBmb3JtdWxhIHRvIGdldCBmaWVsZHdpZHRocyBmb3IgcGFja2FnZXMKKworV2VkIEphbiAgNSAxNzowOTo0NSBDRVQgMjAwMCBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogTWVyZ2UgcGF0Y2ggZnJvbSBUb20gTGVlcyA8dG9tQGxwc2cuZGVtb24uY28udWs+OgorICAgICsgc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5zaDogc3VwcG9ydCBkZWJzaWduCisgICogc2NyaXB0cy91cGRhdGUtYWx0ZXJuYXRpdmVzLjg6IGZpeCB3cm9uZyBvcmRlciBvZiBwYXJhbWV0ZXJzCisgICAgaW4gQUNUSU9OIHNlY3Rpb24KKyAgKiBVcGRhdGVkIFBvbGlzaCB0cmFuc2xhdGlvbgorCitTdW4gRGVjIDI2IDAxOjMxOjA4IENFVCAxOTk5IFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBVcGRhdGUgY29weXJpZ2h0IGZvciBTd2VkaXNoIHRyYW5zbGF0aW9uIHRvIFNQSSBpbnN0ZWFkIG9mIERlYmlhbgorCitTYXQgRGVjIDI1IDA0OjA0OjQ4IENFVCAxOTk5IFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBkc2VsZWN0L3BrZ3RvcC5jYzogdXNlIHdhZGRuc3RyIGluc3RlYWQgb2Ygd2FkZGNoIHNvIHdlIGRvbid0IHN0cmlwCisgICAgdGhlIDh0aCBiaXQgb2YgY2hhcmFjdGVycworICAqIFJlcGxhY2UgYERlYmlhbiBMaW51eCcgd2l0aCBgRGViaWFuIEdOVS9MaW51eCcgaW4gc29tZSBtb3JlIHBsYWNlcworICAqIFVwZGF0ZSBTcGFuaXNoIHRyYW5zbGF0aW9uCisgICogbWFpbi9lbnF1aXJlLmM6IGFsd2F5cyB1c2UgYSBtaW5pbXVtIHdpZHRoIG9mIDgwIGluIGxpc3QxcGFja2FnZQorICAqIGRlYmlhbi9ydWxlczogaW5zdGFsbCBkcGtnLXNhZmVmaWxlbGlzdAorCitTYXQgRGVjIDI1IDAyOjUwOjMxIENFVCAxOTk5IFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBPb3BzLCBmb3Jnb3QgdG8gYWRkIHNjcmlwdHMvZHBrZy1zYWZlZmlsZWxpc3QuezEscGx9CisgICogZGViaWFuL2NvbnRyb2w6IHJlbW92ZSBkb3VibGUgZW1wdHkgbGluZQorICAqIGRwa2ctZGViL21haW4uYzogRml4IGhlbHAtbWVzc2FnZQorCitGcmkgRGVjIDI0IDE3OjM0OjMwIENFVCAxOTk5IFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiB2ZXJzaW9uLW5yOiB1cGRhdGUgdG8gMS42LjUKKyAgKiBkb2MvTWFrZWZpbGUuaW46IGluc3RhbGwgVEhBTktTCisgICogVE9ETzogcmVtb3ZlIGl0ZW1zIHRoYXQgaGF2ZSBiZWVuIGRvbmUKKyAgKiBsaWIvc2hvd2NyaWdodC5jOiBleGl0KDApIGFmdGVyIHNob3dpbmcgdGhlIGNvcHlyaWdodCBzaW5jZQorICAgIHdlIGRvbid0IGV4ZWMgY2F0IGFueW1vcmUKKyAgKiBQYXRjaCBmcm9tIERhdmlkIEh1Z2dpbnMtRGFpbmVzIDxkaGRAZXJhZGljYXRvci5vcmc+OgorICAgICsgbWFpbi9jb25maWd1cmUuYzogYWRkIE5VTEwgdG8gZXhlY2xwKCkgcGFyYW1ldGVyczsgdGhpcyBmaXhlcyB0aGUgcmFuZG9tCisgICAgICBzZWdmYXVsdHMgd2hlbiBzaG93aW5nIHRoZSBjb25mZmlsZS1kaWZmCisKK0ZyaSBEZWMgMjQgMTU6MzU6MjkgQ0VUIDE5OTkgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIGRlYmlhbi9jb250cm9sOiBhZGQgQnVpbGQtRGVwZW5kcworICAqIFRIQU5LUzogbmV3IGZpbGUgd2hpY2ggbGlzdHMgZXZlcnlvbmUgd2hvIGNvbnRyaWJ1dGVkIHRvIHRoZSBjb2RlCisgICogQ2hhbmdlIGBEZWJpYW4gTGludXgnIHRvIGBEZWJpYW4gR05VL0xpbnV4JyBpbiBhIGNvdXBsZSBvZiBtYW5wYWdlcworICAqIG1haW4vZW5xdWlyeS5jOiBtb2RpZnkgbGlzdDFwYWNrYWdlIHRvIHVzZSB0aGUgZnVsbCB3aWR0aCBvZiB0aGUgdHR5CisgICogbWFpbi9tYWluLmM6IGZpeCB3cm9uZyBjYWxsIHRvIGZwdXRzCisgICogTWVyZ2UgcGF0Y2hlcyBmcm9tIEFkYW0gSGVhdGg6CisgICAgKyBsaWIvbWxpYi5jOiBuZXcgZnVuY3Rpb24gZG9fZmRfY29weSB0byByZWFkIGEgZmlsZSBpbnRvIGEgZmQKKyAgICArIGRwa2ctZGViL2J1aWxkLmM6IHVzZSBkb19mZF9jb3B5CisgICAgKyBkcGtnLWRlYi9idWlsZC5jOiB1c2UgZHBrZy1kZWItZmlsZWxpc3QgdG8gcmVvcmRlciBmaWxlcyB3aGVuCisgICAgICBidWlsZGluZyBhIHBhY2thZ2UKKyAgICArIGRwa2ctZGViL2luZm8uYzogdXNlIGRvX2ZkX2NvcHkgCisgICAgKyBsaWIvc2hvd2NyaWdodC5jOiB1c2UgZG9fZmRfY29weSB0byByZWFkIGxpY2Vuc2UKKyAgICArIHNjcmlwdHMvZHBrZy1zYWZlbGlzdC57MSxwbH06IG5ldyBzY3JpcHQgdG8gcmVvcmRlciBhIGZpbGVsaXN0IHRvCisgICAgICBtYWtlIHN1cmUgc3ltbGlua3MgYXJlIGxpc3RlZCBhZnRlciB0aGVpciB0YXJnZXRzLiAKKyAgICArIGRwa2ctZGViL21haW4uYzogYWRkIC16IG9wdGlvbiB0byBzZXQgY29tcHJlc3Npb24gbGV2ZWwKKyAgICArIGRwa2ctZGViL2J1aWxkLmM6IHBhc3MgbmV3IC16IG9wdGlvbnMgdG8gZ3ppcAorICAqIGRwa2ctZGViL2Rwa2ctZGViLjE6IGRvY3VtZW50IG5ldyAteiBvcHRpb24KKworV2VkIERlYyAyMiAxMzo0MTo0MSBDRVQgMTk5OSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogbWFpbi9tYWluLmM6IGNsZWFudXAgcHJpbnR2ZXJzaW9uCisKK1dlZCBEZWMgMjIgMTI6MDc6NDAgQ0VUIDE5OTkgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIGRlYmlhbi9kcGtnLWRvYy5wb3N0cm06IFVzZSBkb2MtbmFtZSBpbnN0ZWFkIG9mIGZpbGUtbmFtZSAocHJvYmFibHkKKyAgICBuZWVkIHRvIGNoYW5nZSB0aGUgZmlsZW5hbWUsIGJ1dCBJJ2xsIGJlIGxhenkgbm93IDopCisgICogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOiBSZXBsYWNlIGVtcHR5IHN0cmluZyBmb3IgZWZsYWdzIHdpdGggYSBzcGFjZQorICAgIHNvIGdldHRleHQgZG9lc24ndCB1c2UgdGhlIHRyYW5zbGF0aW9uLWluZm8KKyAgKiBwby91cGRhdGUuc2g6IEdlbmVyYXRlIGRzZWxlY3QvaGVscG1zZ3Mue2NjLGh9IHNvIHdlIGNhbiB0cmFuc2xhdGUgdGhlbS4KKyAgKiBwby9QT1RGSUxFUy5pbjogYWRkIGRzZWxlY3QvaGVscG1zZ3MuY2MKKyAgKiBkc2VsZWN0L01ha2VmaWxlLmluOiBwdXQgaGVscG1zZ3Mue2NjLGh9IGluICQoc3JjZGlyKSwgc2luY2UgZ2V0dGV4dAorICAgIHdpbGwgYmFyZiBvbiB1cyBpZiB3ZSBwdXQgdGhlbSBpbiB0aGUgYnVpbGRkaXIuIChUaGUgcmVhbCBpc3N1ZSBoZXJlIGlzCisgICAgdGhhdCB3aGVuIHdlIGdlbmVyYXRlIHRoZSAucG8tZmlsZXMgd2UgZG9uJ3Qga25vdyB3aGF0IHRoZSBidWlsZGRpciB3aWxsCisgICAgYmUgYW5kIGdldHRleHQgY2FuJ3QgaGFuZGxlIFZQQVRIKS4KKyAgKiBkc2VsZWN0IHBhdGNoZXMgZnJvbSBEYW4gR29obWFuIDxnb2htYW5kakBtcnMudW1uLmVkdT46CisgICAgKyBkc2VsZWN0L3BrZ3RvcC5jYzogdXNlIEFDU19ITElORSBpbnN0ZWFkIG9mIGAtJworICAgICsgZHNlbGVjdC9iYXNlbGlzdC5jYzogY2hhbmdlIGNvbG91ciBvZiBjb2x1bW4gaGVhZGluZ3MKKyAgICArIGRzZWxlY3Q6IGFkZCBhIG5ldyAtLWV4cGVydCBtb2RlIHdoaWNoIHN1cHByZXNzZXMgdGhlIGRpc3BsYXkgb2YgdGhlCisgICAgICBoZWxwc2NyZWVuCisKK1R1ZSBEZWMgMjEgMTU6NTk6MzUgQ0VUIDE5OTkgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIHNjcmlwdHMvZHBrZy1zY2Fuc291cmVzLnBsOiBkb24ndCB1c2UgXHogc2luY2UgdGhhdCBpcyBwZXJsNS4wMDUtc3BlY2lmaWMuCisgICAgUGF0Y2ggZnJvbSBSb2RlcmljayBTY2hlcnRsZXIgPHJvZGVyaWNrQGFyZ29uLm9yZz4KKyAgKiBkZWJpYW4vcnVsZXM6IGZpeCB0eXBvIHNvIGNsZWFudXAtaW5mby44IGFjdHVhbGx5IGdldHMgaW5zdGFsbGVkCisKK0ZyaSBEZWMgMTcgMDA6NDE6NTAgQ0VUIDE5OTkgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIE1ha2VmaWxlLmNvbmYuaW46IHVzZSBAbGliZGlyQCBhbmQgQGFkbWluZGlyQAorICAqIGNvbmZpZ3VyZS5pbjogYWRkIC0td2l0aC1hZG1pbmRpciBvcHRpb24gYW5kIGNoYW5nZSB0aGUgZGVmYXVsdAorICAgIHRvICRsaWJkaXIvZGIKKyAgKiBkZWJpYW4vcnVsZXM6IGFkZCAtLXdpdGgtYWRtaW5kaXI9L3Zhci9saWIvZHBrZworICAqIHNjcmlwdHMvZGViaWFuLWNoYW5nZWxvZy1tb2RlLmVsOiB1cGRhdGUgbG9jYXRpb24gb2YgR1BMCisgICogc2NyaXB0cy9kcGtnLW5hbWUuc2g6IHVwZGF0ZSBsb2NhdGlvbiBvZiBHUEwKKworVGh1IERlYyAxNiAxNToyMDoxMSBDRVQgMTk5OSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogdXRpbHMvc3RhcnQtc3RvcC1kYWVtb24uYzogRml4IE9TLWRldGVjdGlvbiBmb3Igc3Vub3MKKyAgKiB1dGlscy91cGRhdGUtcmMuZDogQWNjZXB0IHNpbmdsZS1udW1iZXIgdmFsdWVzLCBzaW5jZSB0aGV5IGFyZQorICAgIGFsd2F5cyBpbiB0aGUgWzAsOTldIHJhbmdlCisKK1dlZCBEZWMgMTUgMTY6MDg6NDcgQ0VUIDE5OTkgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIGF1dG9nZW4uc2g6IGNvcHkgZ2V0dGV4dG00LCBsY21lc3NhZ2UubTQgYW5kIHByb2d0ZXN0Lm00IHRvIGF1dG9tYWtlLworICAgIGZvciBzeXN0ZW1zIHdpdGhvdXQgZ2V0dGV4dCBpbnN0YWxsZWQKKyAgKiBNYWtlZmlsZS5pbjogcmVtb3ZlIHRoZSBnZXR0ZXh0LW1hY3JvcyBpbiBkaXN0Y2xlYW4KKyAgKiB1dGlscy9NYWtlZmlsZS5pbjogZml4IGNsZWFuIHRhcmdldCwgbGluayBtZDVzdW0gYW5kIHN0YXJ0LXN0b3AtZGFlbW9uCisgICAgd2l0aCBvcHRsaWIKKyAgKiBvcHRsaWIvKjogZ2V0b3B0IGltcGxlbWVudGF0aW9uIGZvciBzeXN0ZW1zIHdpdGhvdXQgR05VIGdldG9wdC4KKworV2VkIERlYyAxNSAwMDoxODozMCBDRVQgMTk5OSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogY29uZmlndXJlLmluOiBBZGQgb3B0aW9uIHRvIGRpc2FibGUgYnVpbGRpbmcgZHNlbGVjdAorICAqIGNvbmZpZ3VyZS5pbjogVGVzdCBmb3IgcHRyZGlmZl90IGFuZCBzdGRkZWYuaAorICAqIGNvbmZpZy5oLmJvdDogaWNsdWRlIHN0ZGRlZi5oIGlmIGl0IGV4aXN0cworICAqIEFkZCBjb25maWcuc3ViIGFuZCBjb25maWcuZ3Vlc3MKKworVHVlIERlYyAxNCAyMDowODo1OCBDRVQgMTk5OSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogYXV0b21ha2Uvc3lzY29uZi5tNDogcmVhbGx5IGFkZCB0aGUgZmlsZSB0aGlzIHRpbWUKKyAgKiBwby9zdi5wbzogbmV3IHZlcnNpb24gd2l0aCBtaW5vciBjb3JyZWN0aW9ucworICAqIG1haW4vZGVwY29uLmM6IG1pbm9yIGNvcnJlY3Rpb25zIHRvIGRlcGlzb2soKQorICAqIHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2Uuc2g6IGZpeCAtbmMgb3B0aW9uCisKK01vbiBEZWMgMTMgMTU6MTg6MDMgQ0VUIDE5OTkgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOiB1c2UgZmluZGFyY2ggdG8gZ2V0IHRoZSBhcmNoaXRlY3R1cmUKKworU3VuIERlYyAxMiAyMzo1OToyNSBDRVQgMTk5OSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogZHNlbGVjdC9tYWluLmNjOiBXZSBuZWVkIHRvIHByaW50ZiBwcm9ncmFtZGVzYyBhcyB3ZWxsCisgICogYXV0b2dlbi5zaDogUmVtb3ZlIGxpYnRvb2xpemUgY2FsbAorICAqIGF1dG9tYWtlL3N5c2NvbmYubTQ6IG5ldyBhdXRvY29uZi1tYWNyb3MgZm9yIHN5c2NvbmYKKyAgKiBmaWxlc2RiL21haW4uYzogYWxzbyBjaGVjayBNRU1JTkZPX0lOX1NZU0lORk8KKyAgKiBjb25maWd1cmUuaW46IHJlbW92ZSB1Z2x5IHN5c2luZm8taGFja3MgdG8gdXNlIG5ldyBhYyBtYWNyb3MgaW5zdGVhZAorICAqIHV0aWxzL3N0YXJ0LXN0b3AtZGFlbW9uLmM6IG1vZGlmeSB0byBidWlsZCBvbiBzdW5vcworCitTdW4gRGVjIDEyIDE3OjIwOjEyIENFVCAxOTk5IFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBVcGRhdGUgdGhlIFN3ZWRpc2ggdHJhbnNsYXRpb24KKyAgKiBzdGFydC1zdG9wLWRhZW1vbi5jOiBjaGVjayBleGl0bm9kby1mbGFnIGlmIHdlIGZhaWwgdG8ga2lsbCBhCisgICAgcHJvY2VzcworCitTdW4gRGVjIDEyIDAwOjQxOjAxIENFVCAxOTk5IFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBBZGQgU3dlZGlzaCB0cmFuc2xhdGlvbiBmcm9tIFBldGVyIEthcmxzc29uIDxwa0BtZHMubWRoLnNlPgorCitXZWQgRGVjICA4IDAxOjM2OjM1IENFVCAxOTk5IFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBVcGRhdGUgQ3plY2ggdHJhbnNsYXRpb24KKworVHVlIERlYyAgNyAxNzo0MToxNyBDRVQgMTk5OSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogRHJvcCB0aGUgZW1hY3MgYnl0ZWNvbXBpbGUtc3R1ZmYgY29tcGxldGVseQorCitUdWUgRGVjICA3IDE0OjA4OjIxIENFVCAxOTk5IFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBGaXggZGlzcGxheSBvZiBjb3B5cmlnaHQgaW4gbWVudQorCitUdWUgRGVjICA3IDAxOjI2OjIxIENFVCAxOTk5IFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBDb21tZW50IGNoYW5nZXMgbWFkZSBpbiBwa2dkZXBjb24uY2M7IHRoZXkncmUgbm90IGNvbXBsZXRlbHkKKyAgICBjb3JyZWN0IHlldAorCitNb24gRGVjICA2IDAxOjM3OjA4IENFVCAxOTk5IFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBDb3JyZWN0IHVpZC9naWQtY2hhbmdlcyBpbiBzdGFydC1zdG9wLWRhZW1vbiwgcGF0Y2ggZnJvbQorICAgIFRvcGkgTWlldHRpbmVuIDxUb3BpLk1pZXR0aW5lbkBuaWMuZmk+CisKK1N1biBEZWMgIDUgMTg6MDk6MzYgQ0VUIDE5OTkgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIEFkZCBtYW5wYWdlcyBmcm9tIEpvc2lwIFJvZGluIDxqb3lAY2liYWxpYS5na3ZrLmhyPiBmb3IKKyAgICBjbGVhbnVwLWluZm8gYW5kIGRwa2ctZGl2ZXJ0CisgICogTmV3IGRwa2ctc2NhbnNvdXJjZXMgZnJvbSBSb2RlcmljayB0byBhbGxvdyB0cmFpbGluZyBibGFua3Mgb24gbGluZXMKKyAgKiBDb3JyZWN0IGdlbmVyYXRpb24gb2YgbWFudWFsLXZlcnNpb24KKyAgKiBNZXJnZSBwYXRjaCBmcm9tIFJpY2hhcmQgS2V0dGxld2VsbCA8cmprQHNmZXJlLmdyZWVuZW5kLm9yZy51az4gdG8KKyAgICBlbGltaW5hdGUgc3RyaW5nIGNvcGllcyB3aGlsZSByZWFkaW5nIC5saXN0IGZpbGVzCisgICogRml4IGVhcmxpZXIgdHJhbnNsYXRpb24tcGF0Y2ggZm9yIGRzZWxlY3Qgc28gaXQgYnVpbGRzIGFnYWluCisKK1NhdCBEZWMgIDQgMDQ6MjI6NDkgQ0VUIDE5OTkgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIFVwZGF0ZSB0aGUgcG9saXNoIHRyYW5zbGF0aW9uCisKK01vbiBOb3YgMjkgMjE6MTE6MzUgQ0VUIDE5OTkgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIENoYW5nZSBkZWZhdWx0IGxpc3BkaXIgdG8gJChwcmVmaXgpL2VtYWNzL3NpdGUtbGlzcC8kUEFDS0FHRQorCitTdW4gTm92IDI4IDIxOjU2OjMyIENFVCAxOTk5IFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBkc2VsZWN0L3BrZ2RlcGNvbi5jYzogZG9uJ3QgdHJlYXQgcmVjb21tZW5kcyBsaWtlIChwcmUtKWRlcGVuZHMuCisgICAgSW5zdGVhZCBtYWtlIGl0IHNpbWlsYXIgdG8gc3VnZ2VzdHMgYnV0IGRlZmF1bHQgdG8gc2VsZWN0aW5nIHRoZSBwYWNrYWdlLgorCitTYXQgTm92IDI3IDA5OjQ2OjI2IEVTVCAxOTk5IEJlbiBDb2xsaW5zIDxiY29sbGluc0BkZWJpYW4ub3JnPgorCisgICogdXRpbHMvc3RhcnQtc3RvcC1kYWVtb24uYzogY2FsbCBpbml0Z3JvdXBzKCkgcHJpb3IgdG8gc2V0ZXVpZCgpCisKK0ZyaSBOb3YgMjYgMTg6MzY6MjIgRVNUIDE5OTkgQmVuIENvbGxpbnMgPGJjb2xsaW5zQGRlYmlhbi5vcmc+CisKKyAgKiBkc2VsZWN0L21haW4uY2M6IGZpeGVkIHRocmVlIGNhc2VzIHdoZXJlIGdldHRleHQgdXNhZ2Ugd2FzIG5vdAorICAgIHBvc3NpYmxlIGRpZSB0byBtYWNyb3MgaW5saW5lZCBpbiB0aGUgc3RyaW5ncworCitGcmkgTm92IDI2IDE4OjA5OjE3IEVTVCAxOTk5IEJlbiBDb2xsaW5zIDxiY29sbGluc0BkZWJpYW4ub3JnPgorCisgICogY29uZmlndXJlLmluOiBnZW5lcmF0ZSB1dGlscy9NYWtlZmlsZQorICAqIHV0aWxzL2NvbmZpZ3VyZS5pbjogcmVtb3ZlZCBzbyB0b3AgbGV2ZWwgY29uZmlndXJlIHdpbGwgdGFrZSBvdmVyIHRoaXMKKyAgICBzdWJkaXIKKworRnJpIE5vdiAyNiAwMjoyMTo1NiBDRVQgMTk5OSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogRml4IC5zby1lbnRyaWVzIGZvciBzY3JpcHQgbWFucGFnZXMKKworVGh1IE5vdiAyNSAyMzo1OToyNCBDRVQgMTk5OSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogQ29ycmVjdCBsb2NhdGlvbiBvZiBkb2N1bWVudGF0aW9uIGluIGRlYmlhbi9kcGtnLWRvYy5kb2MtYmFzZQorCitUaHUgTm92IDI1IDA0OjU1OjE4IENFVCAxOTk5IFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBDb3JyZWN0IG5hbWUgb2Ygc291cmNlIHRhcmJhbGwgaW4gZGViaWFuL3J1bGVzCisKK1RodSBOb3YgMjUgMDM6NDU6MjMgQ0VUIDE5OTkgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIE1lcmdlIHRoZSBuZXcgYnVpbGRzeXN0ZW0gZnJvbSB0aGUgd3RhX2J1aWxkIGJyYW5jaC4gSWYgeW91IHdhbnQKKyAgICB0aGUgb2xkIGJ1aWxkc3lzdGVtIGNoZWNrIHRoZSBsYXN0LW9mLWF1dG9tYWtlIHRhZworCitGcmkgTm92IDE5IDE1OjA0OjEwIENFVCAxOTk5IFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBgbicgaXMgYWxzbyBzZWFyY2hhZ2FpbiBpbiBkc2VsZWN0IG5vdworICAqIERvIHNlYXJjaGFnYWluIGlmIGFuIGVtcHR5IHNlYXJjaHN0cmluZyBpcyBlbnRlcmVkCisKK1RodSBOb3YgMTggMTA6Mjc6MzUgRVNUIDE5OTkgQmVuIENvbGxpbnMgPGJjb2xsaW5zQGRlYmlhbi5vcmc+CisKKyAgKiB1dGlscy9zdGFydC1zdG9wLWRhZW1vbi5jOiBBZGRlZCBhYmlsaXR5IGZvciB1c2VyLmdyb3VwIGFyZyB0bworICAgIC0tY2h1aWQuIEFsc28sIGFsd2F5cyBjYWxsIGluaXRncm91cHMoKSB3aGVuIHVzaW5nIC0tY2h1aWQuCisgICogdXRpbHMvc3RhcnQtc3RvcC1kYWVtb24uODogRG9jdW1lbnQgYWJvdmUgY2hhbmdlLCBhbHNvIGFkZCBub3RlIHRvIHRoZQorICAgIC0tbWFrZS1waWRmaWxlIG9wdGlvbiBjb25jZXJuaW5nIGl0cyBwcm9ibGVtIHdpdGggZGFlbW9ucyB0aGF0IGZvcmsKKworRnJpIE5vdiAxMiAyMToyMToyMSBDRVQgMTk5OSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogUmVuYW1lIGphcGFuc2VzIHRyYW5zbGF0aW9uIHRvIGp1c3QganAKKworVGh1IE5vdiAxMSAyMDoxNDowMiBFU1QgMTk5OSBCZW4gQ29sbGlucyA8YmNvbGxpbnNAZGViaWFuLm9yZz4KKworICAqIGxpYi90YXJmbi5jOiBhZGQgYnJhY2VzIGFyb3VuZCBpZiB0byBmaXggY29tcGlsZXIgd2FybmluZworCitGcmkgTm92IDEyIDAxOjQ3OjI0IENFVCAxOTk5IFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBDb3JyZWN0IG5hbWVzIGZvciBidWlsZC1kZXBlbmN5IG5hbWVzIGFjY29yZGluZyB0byBCdWcjIDQ5NzkyCisgICogLi4gYW5kIGZvciBkcGtnLXNvdXJjZS5wbCBhcyB3ZWxsCisKK01vbiBOb3YgIDggMTc6NDU6NTAgQ0VUIDE5OTkgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIEFkZCBzdXBwb3J0IGZvciBlbmhhbmNlcyB0byBkcGtnIGFuZCBkc2VsZWN0LiBkc2VsZWN0IGRvZXNuJ3QKKyAgICB0YWtlIGFueSBhY3Rpb24gb24gaXQgeWV0IHRob3VnaAorCitUdWUgTm92ICAyIDIwOjE5OjQ4IENFVCAxOTk5IFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBGaXggc29tZSBsYW5ndWFnZSBtaXh1cHM6IG91ciBQb2xpc2ggdHJhbnNsYXRpb24gd2FzIGFjdHVhbGx5CisgICAgQ3plY2gsIGFuZCB3ZSBzb21laG93IGxvc3QgdGhlIHJlYWwgUG9saXNoIHRleHQuLgorCitNb24gTm92ICAxIDIzOjI1OjMyIENFVCAxOTk5IFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBBZGQgcGFydGlhbCBSdXNzaWFuIHRyYW5zbGF0aW9uIGZyb20gTWljaGFlbCBTb2JvbGV2IDxtc3NAdHJhbnNhcy5jb20+CisKK1NhdCBPY3QgMzAgMTY6MjI6MDAgQ0VTVCAxOTk5IFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBGaXggZmlsZSBjb25mbGljdCBiZXR3ZWVuIGRwa2ctZGV2LCBkcGtnCisgICogTW92ZSBjaGFuZ2Vsb2cubWFudWFsIHRvIGRwa2ctZG9jCisKK1NhdCBPY3QgMzAgMDM6MzE6MzAgQ0VTVCAxOTk5IFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBNYWtlIGl0IGFsbCBidWlsZCBhZ2FpbgorICAqIHJldHJvLWFjdGl2ZWx5IGFkZCB0aGlzIENoYW5nZUxvZyBlbnRyeQorICAqIFJlbW92ZWQgYm9ndXMgcG8vZHBrZy5wbyBmaWxlCisgICogTm8gbG9uZ2VyIHRyYW5zbGF0ZSBpbnRlcm5hbCBlcnJvcnMuLiB3ZSB3YW50IHRvIHNlZSB0aGUgRW5nbGlzaCB0ZXh0CisgICAgaW4gYnVncmVwb3J0cworCitGcmkgT2N0IDI5IDIwOjE2OjQzIEVEVCAxOTk5IEJlbiBDb2xsaW5zIDxiY29sbGluc0BkZWJpYW4ub3JnPgorCisgICogcG8vdXBkYXRlLnNoOiBtYWtlIHN1cmUgd2Ugb25seSB1cGRhdGUgd2hlbiB0aGVyZSBhcmUgY2hhbmdlcywKKyAgICBhbHNvIGF1dG9kZXRlY3QgbGlzdCBvZiAucG8gZmlsZXMgd2UgbmVlZCB0byBjaGFuZ2UKKyAgKiByZWxlYXNlLnNoOiBsaWtld2lzZSBmb3IgLmdtbyBnZW5lcmF0aW9uCisKK0ZyaSBPY3QgMjkgMTY6NTE6MDMgRURUIDE5OTkgQmVuIENvbGxpbnMgPGJjb2xsaW5zQGRlYmlhbi5vcmc+CisKKyAgKiBtYWluL2FyY2hpdmVzLmM6IHMvRFBLL0RQS0cvIGZyb20gb25lIG9mIHRoZSBnZXR0ZXh0IGNoYW5nZXMKKworRnJpIE9jdCAyOSAyMToxNjoyMSBDRVNUIDE5OTkgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIEZpeCBuYW1lIGZvciBQb2xpc2ggdHJhbnNsYXRpb24KKworRnJpIE9jdCAyOSAxMDozNzoxNiBFRFQgMTk5OSBCZW4gQ29sbGlucyA8YmNvbGxpbnMuZGViaWFuLm9yZz4KKworICAqIGRwa2ctZGl2ZXJ0OiBGaXggY2hlY2sgZm9yIHdyaXRhYmxlIGZpbGVzeXN0ZW0sIGNsb3NlczogIzQ4NjQ2CisKK1RodSBPY3QgMjggMjI6MTQ6NDkgQ0VTVCAxOTk5IFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBBZGQgUG9saXNoIHRyYW5zbGF0aW9uIGZyb20gUGlvdHIgUm9zemF0eWNraSA8ZGV4dGVyQGZuZXQucGw+CisKK1RodSBPY3QgMjggMTA6MTA6MjMgRURUIDE5OTkgQmVuIENvbGxpbnMgPGJjb2xsaW5zLmRlYmlhbi5vcmc+CisKKyAgKiBkcGtnLXNobGliZGVwczogZml4IG9yZGVyaW5nIGZvciBzaGxpYnMuZGVmYXVsdAorCitXZWQgT2N0IDI3IDIxOjMzOjE5IEVEVCAxOTk5IEJlbiBDb2xsaW5zIDxiY29sbGlucy5kZWJpYW4ub3JnPgorCisgICogcmVsZWFzZS5zaDogcmVtb3ZlIGF0dGljLyBhbmQgZG9jL29ic29sZXRlLworICAqIGRwa2ctZ2VuY29udHJvbDogYWRkICJTb3VyY2UiIHRvIHRoZSBmaWVsZHMgcGxhY2VkIGluIHRoZSBjb250cm9sIGZpbGUKKyAgKiBkcGtnLXBhcnNlY2hhbmdlbG9nOiBmaXhlZCBsb29wIGZvciBwYXJzZXBhdGgKKworVHVlIE9jdCAyNiAxOTozNTo1MyBDRVNUIDE5OTkgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIEFsc28gdHJhbnNsYXRlIGhlbHBtZXNzYWdlcyBmb3IgZHNlbGVjdAorCitNb24gT2N0IDI1IDIxOjA4OjA2IENFU1QgMTk5OSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogQWRkZWQgQ3plY2ggdHJhbnNsYXRpb24gZnJvbSBQZXRyIENlY2ggPGNlY2hAYXRyZXkua2FybGluLm1mZi5jdW5pLmN6PgorCitNb24gT2N0IDI1IDE5OjEwOjUwIENFU1QgMTk5OSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogTWFyayBtb3JlIHN0cmluZ3MgZm9yIHRyYW5zbGF0aW9uIGluIGxpYmRwa2cgYW5kIGRwa2cKKyAgKiBEb24ndCBib3RoZXIgdHJhbnNsYXRpbmcgZGVidWctc3RhdGVtZW50cworCitNb24gT2N0IDI1IDExOjU1OjM1IEVEVCAxOTk5IEJlbiBDb2xsaW5zIDxiY29sbGlucy5kZWJpYW4ub3JnPgorCisgICogc2NyaXB0cy9kcGtnLXNobGliZGVwczogc3RhcnQgdXNpbmcgb2JqZHVtcCBhcyBvcHBvc2VkIHRvIGxkZCwgdGhpcworICAgIHdvcmtzIG11Y2ggbW9yZSBjbGVhbmx5LCB3b3JrcyB3aXRoIGxpYmM1LCBhbmQgYWxsb3dzIGZyb20gYmV0dGVyCisgICAgZXJyb3IgcmVwb3J0aW5nLiBBbHNvIGNvcnJlY3RlZCBjaGVja3Mgb24gc2hsaWJzLmxvY2FsLCB3aGljaCB3YXNuJ3QKKyAgICByZWFsbHkgYmVpbmcgcGFyc2VkLCBpdCBub3cgd29ya3MgYXMgYWR2ZXJ0aXNlZC4KKyAgKiBzY3JpcHRzL3tkcGtnLWdlbmNvbnRyb2wsZHBrZy1zb3VyY2UsY29udHJvbGxpYi5wbH06IGZpeGVkIHJlZmVyZW5jZXMKKyAgICB0byBvbGQgc3R5bGUgYnVpbGQgZGVwIGZpZWxkcyB0byBtYXRjaCBjdXJyZW50IHBvbGljeSBhbWVuZG1lbnQKKworTW9uIE9jdCAyNSAxNzoxMjozNCBDRVNUIDE5OTkgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIGdldHRleHRpemUgZHNlbGVjdAorCitNb24gT2N0IDI1IDA4OjQyOjUyIEVEVCAxOTk5IEJlbiBDb2xsaW5zIDxiY29sbGlucy5kZWJpYW4ub3JnPgorCisgICogZGViaWFuL3J1bGVzOiBmaXggc3ltbGluayBjcmVhdG9uIGZvciAvdXNyL3NoYXJlL2RvYy9kcGtnLWRldiAtPiBkcGtnLAorICAgIGFsc28gY29tcHJlc3MgdGhlIGluZm8gYW5kIHBzIGZpbGVzIGZvciBpbnRlcm5hbHMgaW4gZHBrZy1kb2MKKworTW9uIE9jdCAyNSAwNjo1MDoxNyBFRFQgMTk5OSBCZW4gQ29sbGlucyA8YmNvbGxpbnMuZGViaWFuLm9yZz4KKworICAqIG1haW4vcHJvY2Vzc2FyYy5jOiBmaXhlcyBjYWxjdWxhdGlvbiBvZiBwYWNrYWdlIGZpbGVuYW1lIGRpc3BsYXkgKHRoZQorICAgICIuLi4vZm9vLmRlYiIgb25lKSB3aGVyZSBpdCB3YXMgc2hvd2luZyB0aGUgZnVsbCBwYXRoIGlmIHRoZSBiYXNlbmFtZQorICAgIHdhcyBsb25nZXIgdGhhbiAzMCBjaGFycy4gTm93IHNob3dzIGp1c3QgdGhlIGJhc2VuYW1lIGlmIGl0IGNhbid0CisgICAgc3F1ZWV6IHRoZSBmdWxsIHBhdGggdG8gPCAzMCBjaGFycyAoZXZlbiBpZiB0aGUgYmFzZW5hbWUgaXMgPiB0aGFuIDMwCisgICAgY2hhcnMpCisKK01vbiBPY3QgMjUgMDI6Mjc6NDkgQ0VTVCAxOTk5IFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBkc2VsZWN0L21haW4uY2M6IEZpeHVwIGVycm9yIG1lc3NhZ2UgZm9yIGludmFsaWQgcGFyYW1ldGVyIHRvIHJlZmxlY3QKKyAgICB3ZSBhcmUgZHNlbGVjdCwgbm90IGRwa2cKKworU3VuIE9jdCAyNCAyMDo0Njo0NCBFRFQgMTk5OSBCZW4gQ29sbGlucyA8YmNvbGxpbnMuZGViaWFuLm9yZz4KKworICAqIHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6IHdlIHdhbnQgdG8gJ2RlbGV0ZScgdGhlIFBPU0lYTFlfQ09SUkVDVCBlbnYKKyAgICBub3QgJ3VuZGVmJworCitTdW4gT2N0IDI0IDIwOjI1OjExIEVEVCAxOTk5IEJlbiBDb2xsaW5zIDxiY29sbGlucy5kZWJpYW4ub3JnPgorCisgICogZGViaWFuL2Rwa2ctZG9jLXtwb3N0cm0scHJlcm19OiBBZGRlZCBpbnN0YWxsLWluZm8gZm9yIGludGVybmFscy5pbmZvCisgICogZGViaWFuL2Rwa2ctaW50ZXJuYWxzOiBmaXhlZCBtaXNwbGFjZWQgZGVzY3JpcHRpb24KKworU3VuIE9jdCAyNCAxMTozOToyMSBFRFQgMTk5OSBCZW4gQ29sbGlucyA8YmNvbGxpbnMuZGViaWFuLm9yZz4KKworICAqIGRlYmlhbi9jb250cm9sOiBhZGRlZCBkcGtnLWRvYworICAqIGRlYmlhbi9kcGtnLWRvYy17cG9zdGluc3QscHJlcm19OiBuZXcgZmlsZXMgZm9yIGRwa2ctZG9jIHBhY2thZ2UKKyAgKiBkZWJpYW4vZHBrZy1pbnRlcm5hbHM6IGRvYy1iYXNlIHN1cHBvcnQgZm9yIGRwa2ctZG9jCisgICogZGViaWFuL3J1bGVzOiBhZGRlZCBidWlsZCBydWxlcyBmb3IgZHBrZy1kb2MgdG8gYmluYXJ5LWluZGVwIHRhcmdldAorICAqIGRvYy9NYWtlZmlsZS5hbTogY2hhbmdlZCBidWlsZCBzZXR1cCBmb3IgaW50ZXJuYWxzLnNnbWwgdG8gdXNlIHRoZQorICAgIGRlYmlhbmRvYyB0b29scywgYW5kIHJlbW92ZWQgaW50ZXJuYWxzLiogc3R1ZmYgZnJvbSBiZWluZyBidWlsdCBieQorICAgIGRlZmF1bHQuIFR3byBuZXcgdGFyZ2V0cywgaW50ZXJuYWxzIGFuZCBpbnRlcm5hbHMtaW5zdGFsbCwgbm93IGhhbmRsZQorICAgIHRoaXMKKyAgKiBkb2MvY2hhbmdlbG9nOiByZW1vdmVkLCBkdXBsaWNhdGUgb2YgQ2hhbmdlTG9nCisgICogZG9jL2ludGVybmFscy5zZ21sOiBjb252ZXJ0ZWQgdG8gZGViaWFuZG9jIGZvcm1hdCwgbm93IGJ1aWxkcyBjb3JyZWN0bHkKKyAgICBhbmQgd2l0aG91dCBlcnJvcnMKKyAgKiBkb2MvbWFudWFscy12ZXJzaW9uOiByZW1vdmVkIHNpbmNlIGl0IGlzIGdlbmVyYXRlZCBhdCBidWlsZCB0aW1lCisgICogZG9jL3RleGluZm8uKjogbW92ZWQgdG8gZG9jL29ic29sZXRlLyBzaW5jZSB0aGUgZGViaWFuZG9jIGZvcm1hdCBkb2Vzbid0CisgICAgbmVlZCB0aGVtCisgICogbWFpbi9maWxlc2RiLmM6IGZpeGVkIGNvbXBpbGVyIHdhcm5pbmcKKworU2F0IE9jdCAyMyAyMToyMzowOCBFRFQgMTk5OSBCZW4gQ29sbGlucyA8YmNvbGxpbnMuZGViaWFuLm9yZz4KKworICAqIEFkZGVkICdEJyB0byB0aGUgbGlzdCBvZiBjaG9pY2VzIGZvciBjb25mZmlsZSBoYW5kbGluZworCitTYXQgT2N0IDIzIDE2OjI1OjE2IEVEVCAxOTk5IEJlbiBDb2xsaW5zIDxiY29sbGlucy5kZWJpYW4ub3JnPgorCisgICogbWFpbi97cHJvY2Vzc2FyYy5jLGRlcGNvbi5jfTogYWRkZWQgbmV3IHN0cnVjdHVyZSBmb3IgY29uZmxpY3RvcnMsCisgICAgd2hpY2ggY29udGFpbnMgYSBzdHJ1Y3QgZm9yIGNvbmZsaWN0cy4gVGhpcyBpcyB1c2VkIHRvIGNyZWF0ZSBhbiBhcnJheQorICAgIG9mIGNvbmZsaWN0aW5nIHBhY2thZ2VzLCB3aGljaCBhcmUgZ29pbmcgdG8gYmUgcmVwbGFjZWQuIEFsbG93cyBmb3IKKyAgICBtdWx0aXBsZSBjb25mbGljdHMgYW5kIHJlcGxhY2VzLiBBbGwgY29uZmxpY3RvciBoYW5kbGVycyB3ZXJlCisgICAgY29udmVydGVkIHRvIGxvb3BzIHRvIGhhbmRsZSBlYWNoIG9uZSAocHJvY2Vzc2FyYy5jKS4KKworU2F0IE9jdCAyMyAwOToyMjoxNiBFRFQgMTk5OSBCZW4gQ29sbGlucyA8YmNvbGxpbnMuZGViaWFuLm9yZz4KKworICAqIExlYXZlIGZpbGUgaW5mbyBpbnRhY3QgaW4gYXZhaWxhYmxlIHdoZW4gaW5zdGFsbGluZyBwYWNrYWdlcy4gTUQ1c3VtLAorICAgIEZpbGVuYW1lLCBhbmQgTVNET1MtRmlsZW5hbWUgdXNlZCB0byBnZXQgbG9zdCB3aGVuIGluc3RhbGxpbmcgYSBwYWNrYWdlLgorICAqIEJhY2tvdXQgZGVwIGNoZWNrIHBhdGNoIChtZXJnZWQgZnJvbSB2MV80XzFfMTgpCisgICogQWRkZWQgYXJtdjRsIHRvIGFyY2h0YWJsZQorCitUaHUgT2N0IDIxIDEyOjU3OjMxIEVEVCAxOTk5IEJlbiBDb2xsaW5zIDxiY29sbGlucy5kZWJpYW4ub3JnPgorCisgICogRml4ZWQgaW5jb3JyZWN0IHBhdGNoIGZvciAtLXByaW50LWFyY2hpdGVjdHVyZSAob29wcywgb2ggd2VsbAorICAgIGl0IHdhcyBhbHJlYWR5IGJyb2tlbiB3aGVuIHRoZXJlIHdhcyBubyBnY2MgYW55d2F5IDopCisgICogRml4ZWQgbWlzc2luZyBtaXBzZWIgdGhhdCB3YXMgc3VwcG9zZWQgdG8gYmUgaW4gdGhlIGFyY2h0YWJsZQorICAqIEJldHRlciBvdXRwdXQgaW4gdXBkYXRlLWFsdGVybmF0aXZlcyAtLWNvbmZpZywgbm93IHNob3dzIHRoZQorICAgIGN1cnJlbnQsIGFuZCB0aGUgcHJlZmVycmVkIGNob2ljZXMuCisgICogZHBrZy1uYW1lOiBpZ25vcmUgZXBvY2ggd2hlbiBnZXR0aW5nIHZlcnNpb24KKyAgKiA1MGRwa2ctZGV2LmVsOiBhZGQgaXQgYXMgYSBjb25mZmlsZSBmb3IgZHBrZy1kZXYKKyAgKiBkcGtnLXNobGliZGVwczogcmVkaXJlY3QgU1RERVJSIHRvIC9kZXYvbnVsbCBmb3IgdGhlIGRwa2cgZm9yayBzbyB3ZQorICAgIGRvbid0IHNlZSBkcGtnJ3MgZXJyb3JzCisgICogaW50ZXJuYWxzLnNnbWw6IFJlbW92ZWQgcmVmZXJlbmNlcyB0byB0aGUgdmVyc2lvbnMgb2YgYnVpbGQgdG9vbHMsCisgICAgdGhleSBkYXRlIHRoZSBkb2N1bWVudC4KKyAgKiBkZWJpYW4tY2hhbmdlbG9nLW1vZGUuZWw6IGFkZGVkIGhpbnQgZm9yIGJldHRlciBsb2ctZW1haWwgaGFuZGxpbmcKKyAgKiBBZGRlZCByZWNvZ25pdGlvbiBmb3IgbmV3IHNvdXJjZS1kZXBlbmRzIGZpZWxkcyBmb3IgcG9saWN5CisgICAgcmVmZXJlbmNlZCBpbiBidWcgIzQxMjMyCisgICogZHBrZy1idWlsZHBhY2thZ2U6IGFkZCAtYXAgb3B0aW9uIHRvIGZvcmNlIGEgcGF1c2UgcHJpb3IgdG8gc3RhcnRpbmcKKyAgICB0aGUgc2lnbiBwcm9jZXNzLiBUaGlzIGhlbHBzIGZvciBwZW9wbGUgd2hvIGRvbid0IGtlZXAgdGhlaXIgc2lnbmF0dXJlcworICAgIG9uIHRoZSBmaWxlc3lzdGVtIChvbiBhIGZsb3BweSBwZXJoYXBzLCB0aGVuIG1vdW50IGFzIG5lZWRlZCkuCisgICogbWlub3Igc2NyaXB0IGNvcnJlY3Rpb25zCisgICogZHBrZy1kZXYgY29udHJvbDogQ2hhbmdlIGdjYyB0byBjLWNvbXBpbGVyIGluIHRoZSByZWNvbW1lbmRzIGZpZWxkLCBhbmQKKyAgICBtb3ZlIGNwaW8sIHBhdGNoIGFuZCBtYWtlIHRvIHRoZSBkZXBlbmRzIGxpbmUKKworVGh1IE9jdCAyMSAxMDoyMjo0MyBFRFQgMTk5OSBCZW4gQ29sbGlucyA8YmNvbGxpbnMuZGViaWFuLm9yZz4KKworICAqIEZpeGVkIHRoZSBjaGVjayB0aGF0IHdhcyBhZGRlZCB0byBkcGtnLWRpdmVydC4KKyAgKiBSZW1vdmVkIHRoZSBsaWIgdmVyc2lvbiBjaGVja2luZy4KKyAgKiBPb3BzLCBzb21laG93IHRoZSAtLWNvbmZpZyBmZWF0dXJlIHdlbnQgbWlzc2luZyBmcm9tIHVwZGF0ZS0KKyAgICBhbHRlcm5hdGl2ZXMKKworVGh1IE9jdCAyMSAxMzoyMjo0MiBDRVNUIDE5OTkgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIFVwZGF0ZSBjb3B5cmlnaHQgKHRha2VuIGZyb20gZHBrZy1pd2ogdHJlZSwgd2l0aCBCZW4gYWRkZWQpCisgICogQWRkIHN1cHBvcnQgZm9yIGxvbmcgZmlsZW5hbWVzIGluIHRhcmZpbGVzLiBCYXNlZCBvbiBhIHBhdGNoCisgICAgZnJvbSBBbmRyZXcgSG9ic29uIDxhaG9ic29uQGVuZy5taW5kc3ByaW5nLm5ldD4KKyAgKiBBZGQgYSAtLWFzc2VydC1sb25nZmlsZW5hbWVzIG9wdGlvbgorCitUaHUgT2N0IDIxIDA2OjM3OjI0IEVEVCAxOTk5IEJlbiBDb2xsaW5zIDxiY29sbGlucy5kZWJpYW4ub3JnPgorCisgICogRml4ZWQgc29tZSBjb21waWxlciB3YXJuaW5ncworICAqIE1ha2Ugc3RhcnQtc3RvcC1kYWVtb24gZXhpdCgxKSB3aGVuIHdlIGRvbid0IGZpbmQgb25lIG9mIHRoZQorICAgIHBpZCdzIHdlIGFyZSB0cnlpbmcgdG8ga2lsbCwgaW4gYWNjb3JkYW5jZSB3aXRoIHRoZSBtYW4gcGFnZS4KKyAgKiBXaGVuIHJ1bm5pbmcgLS1jb25maWd1cmUgb24gYW4gYWxyZWFkeSBpbnN0YWxsZWQgcGFja2FnZSwganVzdAorICAgIHNheSBpdCdzIGluc3RhbGxlZCwgYW5kIG5vdCB0aGF0IGl0IGlzIGluIGFuIHVuY29uZmlndXJhYmxlCisgICAgc3RhdGUKKyAgKiBCYWgsIGFkZCBhbGwgdGhlIHByZWZpeC9kYXRhZGlyLi4uIHN0dWZmIGJhY2sgdG8gdGhlIGluc3RhbGwKKyAgICB0YXJnZXQgaW4gZGViaWFuL3J1bGVzIChwby8gZG9lc24ndCB1c2UgaXQpCisgICogQWRkIGZ1bmN0aW9uIHRvIGxpYmRwa2cgdGhhdCBkcGtnIGNhbiBjYWxsIHRvIG1ha2Ugc3VyZSBpdCdzCisgICAgY29tcGlsZWQgdmVyc2lvbiBtYXRjaGVzIHRoYXQgb2YgdGhlIGxpYnJhcnkuIElmIGl0IGZhaWxzLAorICAgIGNvbXBsYWluIGxvdWRseSwgYnV0IGFsbG93IHRvIHByb2NlZWQKKyAgKiBNYWtlIGRwa2cgY2hlY2sgZm9yIHVpZCAwIHJlcXVpcmVtZW50LCBiZWZvcmUgY2hlY2tpbmcgdGhlIHBhdGgKKyAgICBzaW5jZSBub3QgYmVpbmcgcm9vdCwgaXMgcHJvYmFibHkgdGhlIHJlYXNvbiB0aGF0IHRoZSBQQVRIIGlzCisgICAgYm9ya2VkIGluIHRoZSBmaXJzdCBwbGFjZQorICAqIE1ha2UgLXAgc2hvcnQgZm9yIC0tcHJpbnQtYXZhaWwsIGFuZCAtUCBzaG9ydCBmb3IgLS1wdXJnZQorICAqIEZpeCB0eXBvIGluIG1kNXN1bSgxKSBtYW4gcGFnZQorICAqIHN0YXJ0LXN0b3AtZGFlbW9uOiBBZGQgLS1iYWNrZ3JvdW5kIGFuZCAtLW1ha2UtcGlkZmlsZSBvcHRpb25zCisgICogdXBkYXRlLWFsdGVybmF0aXZlczogbWFrZSBzdXJlIHdlIHJlbW92ZSAib2xkIiBzeW1saW5rcyB3aGVuIHRoZXkKKyAgICBhcmUgbm8gbG9uZ2VyIHBlcnRpbmVudC4gQWRkIC9ldGMvYWx0ZXJuYXRpdmVzL1JFQURNRSB0aGF0IHJlZmVycworICAgIHRvIHRoZSB1cGRhdGUtYWx0ZXJuYXRpdmVzKDgpIG1hbiBwYWdlLgorICAqIGRwa2ctZGl2ZXJ0OiBBZGQgY2hlY2sgZm9yIGJlaW5nIGFibGUgdG8gd3JpdGUgdG8gdGhlIG9sZC9uZXcKKyAgICBkZXN0aW5hdGlvbiBiZWZvcmUgZG9pbmcgYSByZW5hbWUuIFdlIGZhaWwgb24gdGhpcywgd2l0aG91dAorICAgIGNoYW5naW5nIHRoZSBkaXZlcnNpb24gcmVnaXN0cnkKKyAgKiBGaXggYmFkIHJlZ2V4IGluIHVwZGF0ZS1yYy5kCisKK1R1ZSBPY3QgMTkgMTg6MDc6MjggRURUIDE5OTkgQmVuIENvbGxpbnMgPGJjb2xsaW5zLmRlYmlhbi5vcmc+CisKKyAgKiBPaywgVE1QRElSIHVzYWdlIGlzIGJhY2sgaW4gZHBrZy1kZWIgYW5kIHdvcmtpbmcKKyAgKiB7aW5jbHVkZSxzY3JpcHRzfS9NYWtlZmlsZS5hbTogRml4IGZvciB1c2luZyBERVNURElSCisgICogZGViaWFuL3J1bGVzOiByZWFsbHkgY29udmVydCB0byBERVNURElSIG9uIGluc3RhbGwgdGFyZ2V0IHRoaXMKKyAgICB0aW1lLiBjaG1vZCAteCBldmVyeXRoaW5nIGluIC91c3IvbGliIHRvIG1ha2UgbGludGlhbiBoYXBweS4KKyAgICBpbiB0aGUgY2xlYW4gcGhhc2UganVzdCBybSAtcmYgJChCVUlMRCksIHdlIGRvbid0IG5lZWQgdG8gcnVuCisgICAgZGlzdGNsZWFuIGFuZCBhbGwgdGhhdCBvdGhlciBzdHVmZi4gRG9uJ3QgcnVuICJtYWtlIGRpc3QiLCB3ZQorICAgIHNpbXBseSBjb3B5IHRoZSAudGFyLmd6IHRoYXQgZHBrZy1zb3VyY2UgY3JlYXRlcyBmb3IgdGhlIGJ5aGFuZAorICAgIHNvdXJjZS4KKworVHVlIE9jdCAxOSAwOTo1OToyMiBFRFQgMTk5OSBCZW4gQ29sbGlucyA8YmNvbGxpbnMuZGViaWFuLm9yZz4KKworICAqIFJldmVydGVkIHRoZSBuZXcgdG1wZmlsZSBzdHVmZiBpbiBkcGtnLWRlYi4gRm9yIHNvbWUgcmVhc29uIGl0J3MKKyAgICBjb21wbGV0ZWx5IGNvcnJ1cHRpbmcgdGhlIG5ldyBwYWNrYWdlCisKK01vbiBPY3QgMTggMTg6NDA6MzUgRURUIDE5OTkgQmVuIENvbGxpbnMgPGJjb2xsaW5zLmRlYmlhbi5vcmc+CisKKyAgKiBSZWltcGxlbWVudGVkIGEgYmV0dGVyICpzdGF0IGNhY2hlIGZvciB0aGUgcmVtb3ZhbCBjaGVja2luZyBjb2RlLAorICAgIHRoaXMgaGVscHMgYSBsb3Qgd2hlbiBkb2luZyB1cGdyYWRlcyB3aGVyZSB0aGUgcGFja2FnZXMgYXJlIGEgbG90CisgICAgZGlmZmVyZW50IGluIGxheW91dC4gTm90ZSwgSSB0ZXN0ZWQgdGhlIGZpcnN0IHdheSBhbmQgdGhpcyBuZXcgd2F5CisgICAgYWdhaW5zdCBwYWNrYWdlIGZvbyAodmVyc2lvbiAxICYgMikgZWFjaCBoYWQgNTAwMCBmaWxlcyAoZGlmZmVyZW50CisgICAgaW4gdmVyc2lvbiAyIHRoYW4gaW4gdmVyc2lvbiAxKS4gYmFzaWNhbGx5IHRoaXMgbWVhbnQgdGhlIG9sZCB3YXkKKyAgICBuZWVkZWQgdG8gZG8gYWJvdXQgMi41IG1pbGxpb24gbHN0YXRzLCBhbmQgdGhlIG5ldyB3YXkgb25seSBuZWVkcworICAgIDEwLDAwMCBsc3RhdHMuIFRoaXMgc3BlZCBpdCB1cCBhYm91dCAlNjAwMCBwZXJjZW50ICh0aGUgb2xkIHdheSB0b29rCisgICAgb3ZlciAxIGhvdXIgb24gYSAzMzNNaHosIHRoZSBuZXcgd2F5IHdhcyAyIG1pbnV0ZXMgYW5kIDIwIHNlY29uZHMpLgorICAgIE5vdGUgdGhhdCB0aGlzIGlzIGFuIGV4dHJlbWUgY2FzZSBzaW5jZSBtb3N0IHBlciBwYWNrYWdlIHVwZ3JhZGVzCisgICAgYSkgZG9uJ3QgaGF2ZSA1MDAwIGZpbGVzCisgICAgYikgZG9uJ3QgaGF2ZSBhbGwgdGhlIGZpbGVzIGRpZmZlcmVudAorICAqIEluY3JlYXNlZCBsYXJnZW1lbSBhdXRvIGRldGVjdGlvbiB0byA+PSAyNG1lZ3MsIHNpbmNlIGl0J3Mgbm90IHVuY29tbW9uCisgICAgZm9yIGRwa2cgdG8gYWN0dWFsbHkgdXNlIDE2bWVncyBvZiByYW0gYWxsIG9uIGl0cyBvd24gd2hlbiB1c2luZyB0aGUKKyAgICBsYXJnZW1lbSBzZXR0aW5nIChvbGQgbWluaW11bSB3YXMgMTZtZWdzKQorCitNb24gT2N0IDE4IDA5OjI1OjMwIEVEVCAxOTk5IEJlbiBDb2xsaW5zIDxiY29sbGlucy5kZWJpYW4ub3JnPgorCisgICogQWRkIG1pcHNlYiB0byB0aGUgYXJjaHRhYmxlIHRvbywgc2luY2UgbWlwcyBhbmQgbWlwc2ViIGFyZQorICAgIGJvdGggdmlhYmxlIG5hbWVzIGZvciB0aGUgbWlwcyBiaWcgZW5kaWFuIGFyY2gKKyAgKiBVcGRhdGUgZHBrZy1hcmNoaXRlY3VyZSdzIGFyY2h0YWJsZQorICAqIFJlbW92ZWQgdGhlIG1haW50YWluZXItY29uZmlndXJlIHBvcnRpb24gaW4gZGViaWFuL3J1bGVzLCBzaW5jZQorICAgIHdlIHNob3VsZCBiZSBzaGlwcGluZyB0aGUgc291cmNlIHdpdGggYWxsIHRoZSBhdXRvKiBzdHVmZgorICAgIGFscmVhZHkgZ2VuZXJhdGVkIGFueXdheQorICAqIFJlbW92ZWQgdGhlIGx0Y29uZmlnIHBhdGNoLCBhbmQgcmVzb3J0IHRvIGEgZGViaWFuL3J1bGVzIGZpeAorICAgIHRvIGxpYnRvb2wgaXRzZWxmIGFmdGVyIHJ1bm5pbmcgY29uZmlndXJlLCBtdWNoIGNsZWFuZXIsIGFuZAorICAgIHJldmVyc2libGUgc2luY2UgbGlidG9vbCBpcyBhIGdlbmVyYXRlZCBmaWxlCisgICogVXNlIERFU1RESVIgd2hlbiBpbnN0YWxsaW5nIGluc3RlYWQgb2Ygc3BlY2lmeWluZyBhbGwgb3VyCisgICAgZGVzdCBkaXJzIHNlcGFyYXRlbHkgaW4gdGhlIG1ha2UgbGluZS4gQWxzbyBmaXggc29tZSBvZiB0aGUKKyAgICBtYWtlIGZpbGVzIHRvIHVzZSBERVNURElSIHdoZW4gaW5zdGFsbGluZyBmaWxlcworICAqIFJlZ2VuZXJhdGVkIC5wbyBmaWxlcyBhbmQgZHBrZy5wb3QuIEFsc28gYWRkZWQgdXBkYXRlLnNoIHRvIHRoZSBwby8KKyAgICBzdWJkaXIgZm9yIGVhc2llciByZWdlbmVyYXRpbmcgZm9yIGN2cyBvbmx5CisgICogTWFrZSByZWxlYXNlLnNoIGdlbmVyYXRlIC5nbW8gZmlsZXMKKyAgKiBSZW1vdmVkIHNobGlicy5kZWZhdWx0LmkzODYuIEl0J3Mgbm93IGEgdGVtcGxhdGUgZm9yIGFyY2ggcG9ydGluZyB0bworICAgIERlYmlhbi9kcGtnLCB3ZSBpbnN0YWxsIGl0IHN0aWxsLCBpZiB0aGVyZSBleGlzdHMgYSBmaWxlIG1hdGNoaW5nIHRoZQorICAgIGFyY2gKKworU3VuIE9jdCAxNyAxMzo0MDo0NiBFRFQgMTk5OSBCZW4gQ29sbGlucyA8YmNvbGxpbnMuZGViaWFuLm9yZz4KKworICAqIFJlbW92ZWQgcmVmZXJlbmNlcyB0byBkcGtnKDUpIHdoaWNoIHNlZW1zIHRvIG5vdCBleGlzdCBhbnltb3JlCisgICogRml4ZWQgYGRwa2ctZGViIC0taGVscCcgYW5kIGRwa2ctZGViKDEpIGZyb20gcmVwb3J0aW5nIC0tbm8tY2hlY2sKKyAgICB3aGVuIGl0J3MgYWN0dWFsbHkgLS1ub2NoZWNrICh3ZW50IHdpdGggdGhlIGhhcmRjb2RlZCBvcHRpb24sIHNvCisgICAgdGhpcyBpcyBqdXN0IGEgZG9jdW1lbnRhdGlvbiBmaXgpLgorICAqIEFkZGVkIGJldHRlciBjaGVjayBpbiBkaXNrLnNldHVwIGZvciBhIHdvcmtpbmcgTkZTIHNlcnZlci4gTWFrZXMKKyAgICBpdCBjb21wYXRpYmxlIHdpdGggb3RoZXIgbm9uLUxpbnV4IHNlcnZlcnMuCisgICogQ29ycmVjdGVkIGRwa2coOCkncyBleGFtcGxlIG9mIHVzaW5nIGRwa2cgLWkgKHNob3dlZCBpdCB1c2VkIHdpdGgKKyAgICBhIC50YXIuZ3ogaW5zdGVhZCBvZiBhIC5kZWIpCisgICogQXBwbGllZCBwYXRjaCB0byBjb3JyZWN0IGltcHJvcGVyIFRNUERJUiBoYW5kbGluZyBpbiBkcGtnLWRlYgorICAqIFdoZW4gZW5jb3VudGVyaW5nIGFuIGVycm9yIGluIGV4dHJhY3RpbmcgdGhlIHRhciBhcmNoaXZlcyBpbiB0aGUKKyAgICBwYWNrYWdlcywgd2Ugc2hvdWxkIGFib3J0IHRoZSBpbnN0YWxsLCBub3Qgc2ltcGx5IGdpdmUgYW4gZXJyb3IKKyAgICBhbmQgY29udGludWUuCisgICogTWFrZSBkcGtnIGdpdmUgdGhlIGJ1aWx0aW4gYXJjaCBpZiB0aGVyZSB3YXMgYW4gZXJyb3Igd2hpbGUgZXhlYygpJ2luZworICAgIHRoZSBDIGNvbXBpbGVyIHdpdGggLS1wcmludC1hcmNoaXRlY3R1cmUuIFdlIHN0aWxsIGZhaWwgaWYgdGhlCisgICAgb3V0cHV0IGZyb20gZ2NjIHdhcyBiYWQgaW4gc29tZSB3YXksIHNpbmNlIHRoZXkgbWF5IGJlIG9mIGltcG9ydGFuY2UuCisKK1N1biBPY3QgMTcgMTE6NTE6MzYgQ0VTVCAxOTk5IFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBSZXZlcnQgdG8gaGFyZGNvZGluZyBFTk9FTlQgYWdhaW4sIHNpbmNlIHRoZSBuZWNlc3NhcnkgcGFydHMgb2YKKyAgICB0aGUgcGVybCBQT1NJWCBtb2R1bGUgYXJlbid0IGluIHBlcmwtKi1iYXNlLiBzaWdoLgorCitTYXQgT2N0IDE2IDExOjQzOjQ1IEVEVCAxOTk5IEJlbiBDb2xsaW5zIDxiY29sbGlucy5kZWJpYW4ub3JnPgorCisgICogQWRkZWQgLS1jaHVpZCBvcHRpb24gdG8gc3RhcnQtc3RvcC1kYWVtb24gdG8gYWxsb3cgc3dpdGNoaW5nIHRvCisgICAgYSBkaWZmZXJlbnQgdWlkIHdoZW4gc3RhcnRpbmcgYSBwcm9jZXNzCisgICogQWRkZWQgbWlwc2VsIHRvIHRoZSBhcmNodGFibGUgZm9yIGNvbXBsZXRlbmVzcworICAqIEFkZGVkIC0tY29uZmlnIG9wdGlvbiB0byB1cGRhdGUtYWx0ZXJuYXRpdmVzIHRvIGFsbG93IGVhc3kgY2hhbmdpbmcKKyAgICBvZiB0aGUgcmVnaXN0ZXJlZCBhbHRlcm5hdGl2ZXMgZm9yIGEgc3BlY2lmaWMgbmFtZQorICAqIFVwZGF0ZWQgdGhlIGRlYi1jb250cm9sKDUpIG1hbiBwYWdlIHdpdGggYWxsIHRoZSBjdXJyZW50IGZpZWxkcworICAgIGFuZCB1c2VzCisgICogTWFkZSB0aGUgbGFyZ2UgaW5mbyBzY3JlZW4gc2hvdyA1IGxpbmVzIG9mIHRoZSBwa2dsaXN0IHNvIHRoYXQKKyAgICBpdCBzY3JvbGxlZCBwcm9wZXJseSwgYW5kIHN0aWxsIHNob3dlZCB0aGUgY3Vyc29yCisKK1RodSBPY3QgMTQgMDQ6NTE6MTQgQ0VTVCAxOTk5IFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBEb24ndCB1c2UgRXJybm8gbW9kdWxlIGJ1dCB0aGUgUE9TSVggbW9kdWxlLCBzaW5jZSB0aGF0ICppcyoKKyAgICBpbiBwZXJsLSotYmFzZQorICAqIEZpeHVwIGRlYmlhbi9ydWxlcworCitUaHUgT2N0IDE0IDA0OjM5OjI1IENFU1QgMTk5OSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogVXBkYXRlIGRwa2cgbWFucGFnZSB0byBhZGQgbmV3IC0tZm9yY2UtY29uZiogb3B0aW9ucworCitUaHUgT2N0IDE0IDA0OjE2OjI1IENFU1QgMTk5OSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogUmVpbnN0YXRlIHBhdGNoIHRvIG5vdCByZWFkIGF2YWlsYWJsZS1maWxlIHdpdGggZG9pbmcgbGlzdGZpbGVzLgorICAqIERvbid0IGZvcmdldCB0byBnZXQgdGhlIGNvcnJlY3QgU0hFTEwgYmVmb3JlIHNob3dpbmcgYSBkaWZmIG9mCisgICAgY29uZmZpbGVzIQorICAqIE1lcmdlIGEgcGF0Y2ggZnJvbSBCZW4gQ29sbGlucyB0byBhZGQgYSBidW5jaCBvZiAtLWZvcmNlIG9wdGlvbnMKKyAgICB0byBoYW5kbGUgY2hhbmdlZCBjb25mZmlsZXMKKworVGh1IE9jdCAxNCAwMzozNzo1MiBDRVNUIDE5OTkgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIEFkZCBtaXBzIHRvIGFyY2h0YWJsZQorICAqIFVzZSBFcnJubyBtb2R1bGUgdG8gZ2V0IEVOT0VOVCBpbnN0ZWFkIG9mIGhhcmRjb2RpbmcgaXQKKworVGh1IE9jdCAxNCAwMjo0Nzo0MCBDRVNUIDE5OTkgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIEZpeCBDIGVycm9yIHdlIGludHJvZHVjZWQgaW4gY2hlY2twYXRoKCkgZWFybGllcgorCitXZWQgT2N0IDEzIDIwOjQxOjE2IENFU1QgMTk5OSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogVXBkYXRlIG9sZGZpbGUtY2hlY2sgaW4gcHJvY2Vzc19hcmNoaXZlIHNvIHdlIGRvbid0IGV4cGVyaWVuY2UKKyAgICBtZW1vcnkgY29ycnVwdGlvbgorCitXZWQgT2N0IDEzIDE3OjUxOjE3IENFU1QgMTk5OSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogTWVyZ2UgcGF0Y2hlcyBmcm9tIEJlbiBDb2xsaW5zIDxiY29sbGluc0BkZWJpYW4ub3JnPjoKKyAgICArIGZpeCB3aW5kb3dyZXNpemluZyBpbiBkc2VsZWN0CisgICAgKyB3aGVuIHVwZ3JhZGluZyBjaGVjayBpZiBhIGZpbGUgaXMgbm90IGFsc28gaW4gdGhlIG5ldyBwYWNrYWdlIGJlZm9yZQorCSAgcmVtb3ZpbmcgaXQsIHNvIHdlIGRvbid0IHJlbW92ZSBuZXcgZmlsZXMgZHVlIHRvIHN5bWxpbmtzIGNvbmZ1c2luZyB1cworICAgICsgZml4IGxvZ2ljIGVycm9yIGluIGNoZWNrZm9ycmVtb3ZhbDogaXQgd2FzIGJyZWFraW5nIGN5Y2xlcyBpbiBmb3IgdGhlCisgICAgICB3cm9uZyBwYWNrYWdlCisgICAgKyBmaXggZmluZGJyZWFrY3ljbGUgdG8gcmVtb3ZlIGN5Y2xlcyBldmVuIGZvciBwYWNrYWdlcyB3ZSBhcmUgbm90IGNoYW5naW5nCisKK01vbiBPY3QgMTEgMjI6MTk6MDEgQ0VTVCAxOTk5IFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBBZGQgdGhlIG9wdGlvbiB0byBzaG93IGEgZGlmZiBvZiB0aGUgb2xkIGFuZCBuZXcgY29uZmZpbGUgd2hlbgorICAgIGNvbmZpZ3VyaW5nIGEgcGFja2FnZQorCitUdWUgT2N0IDEyIDE3OjE1OjA4IENFU1QgMTk5OSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogZG9uJ3QgZGllIGlmIHdlIGNhbid0IG9wZW4gYSBwYWNrYWdlIGluIGRwa2ctc2NhbnBhY2thZ2VzLCBqdXN0IHByaW50CisgICAgYSB3YXJuaW5nIGFuZCBza2lwIHRoZSBwYWNrYWdlLgorCitNb24gT2N0IDExIDE4OjE4OjI1IENFU1QgMTk5OSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogTW92ZSBkc2VsZWN0IGludG8gaXRzIG93biBwYWNrYWdlCisKK01vbiBPY3QgMTEgMTc6Mzc6NDcgQ0VTVCAxOTk5IFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBBZGRlZCBzdXBwb3J0IGZvciBIVVJEIHRvIHN0YXJ0LXN0b3AtZGFlbW9uCisgICogQ3JlYXRlIG5ldyBkaXJlY3RvcnkgdXRpbHMvIGZvciBleHRyYSBDLXByb2dyYW1zLCBhbmQgbW92ZQorICAgIHN0YXJ0LXN0b3AtZGFlbW9uIHRoZXJlLgorCitNb24gT2N0IDExIDE1OjQ3OjE4IENFU1QgMTk5OSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogUHJlcGFyYXRpb24gdG8gbW92ZSBzdGFydC1zdG9wLWRhZW1vbiBmcm9tIHNjcmlwdHMgdG8gdXRpbHMKKyAgKiBNZXJnZSBwYXRjaGVzIGZyb20gQmVuIENvbGxpbnMgPGJjb2xsaW5zQGRlYmlhbi5vcmc+OgorICAgICsgbW9kaWZ5IHJlbW92ZV9idWxkIHRvIHJlbW92ZSBjb25mZmlsZXMgd2hlbiBwdXJnaW5nIGEgcGFja2FnZSBiZWZvcmUgd2UKKyAgICAgIHJlbW92ZSBpdHMgZGlyZWN0b3JpZXMuCisgICAgKyBjaGVjayBpZiB3ZSB2aW9sYXRlIGNvbmZsaWN0cy9kZXBlbmRzL3ByZS1kZXBlbmRzIG9mIG90aGVyIHBhY2thZ2VzIHdoZW4KKyAgICAgIHByb2Nlc3NpbmcgYW4gYXJjaGl2ZS4KKworTW9uIE9jdCAxMSAwMjoxMzoxNSBDRVNUIDE5OTkgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIE1lcmdlIHBhdGNoIGZyb20gQmVuIENvbGxpbnMgPGJjb2xsaW5zQGRlYmlhbi5vcmc+IHRvIG1ha2UgZHBrZy1kZWIKKyAgICBoYW5kbGUgcGFja2FnZXMgY3JlYXRlZCB3aXRoIExpbnV4IGFyLgorCitUaHUgT2N0ICA3IDAxOjE2OjIzIENFU1QgMTk5OSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogQ2hlY2sgaWYgc2VxdWVuY2Vjb2RlIGlzIGJldHdlZW4gMCBhbmQgOTkgaW5zdGVhZCBvZiBqdXN0IGNoZWNraW5nCisgICAgZm9yIGEgbnVtYmVyIGluIHVwZGF0ZS1yYy5kCisKK1dlZCBPY3QgIDYgMTQ6NDA6MzMgQ0VTVCAxOTk5IFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBMb2NrIGNvbXBsZXRlIGxvY2tmaWxlIGZvciBkYXRhYmFzZTogaXQncyBlbXB0eSBhbnl3YXksIGFuZCBIdXJkCisgICAgZG9lc24ndCBzdXBwb3J0IHBhcnRpYWwgbG9ja3MgY3VycmVudGx5CisgICogRG9uJ3QgdXNlIFBBVEhfTUFYIGJ1dCBhbGxvY2F0ZSBuZWNlc3NheSBtZW1vcnkgaW4gY2hlY2twYXRoKCkuCisgICAgVXNlZnVsIGZvciBzeXN0ZW0gdGhhdCBkb24ndCBoYXZlIFBBVEhfTUFYIChsaWtlIEh1cmQpCisKK1R1ZSBPY3QgIDUgMTk6MTY6MzggQ0VTVCAxOTk5IFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisKKyAgKiBTZXQgZG9jZGlyIHRvICQoZGF0YWRpcikvZG9jCisgICogSW5zdGFsbCAvZXRjL2VtYWNzL3NpdGUtc3RhcnQuZC81MGRwa2ctZGV2LmVsIHdpdGggbW9kZSA2NDQKKworVHVlIE9jdCAgNSAwNDowODo0MSBDRVNUIDE5OTkgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIE1ha2UgL3Vzci9zaGFyZS9kb2MvZHBrZy1kZXYgYSBzeW1saW5rIHRvIC91c3Ivc2hhcmUvZG9jL2Rwa2cKKworTW9uIE9jdCAgNCAxNTozODo0MiBDRVNUIDE5OTkgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIFVwZGF0ZSBHUEwgYW5kIGRvY3VtZW50YXRpb24gbG9jYXRpb24gaW4gZGViaWFuL2NvcHlyaWdodAorCitTYXQgT2N0ICAyIDE2OjAwOjM4IENFU1QgMTk5OSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogVXBkYXRlIGRlYi41IHRvIHNheSBpdCdzIGluIHNlY3Rpb24gNSwgbm90IDgKKworVHVlIFNlcCAyOCAxMzozODo1MCBDRVNUIDE5OTkgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIE1ha2UgZHBrZy1zb3VyY2Ugd29yayBhZ2FpbiBvbiBlbXB0eSBkaWZmcywgcGF0Y2ggZnJvbSBSb21hbiBIb2RlaworICAgIDxSb21hbi5Ib2Rla0BpbmZvcm1hdGlrLnVuaS1lcmxhbmdlbi5kZT4KKworVHVlIFNlcCAyOCAwMToxNDoxNCBDRVNUIDE5OTkgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKworICAqIEZpeCB0eXBvIGluIGRwa2ctYnVpbGRwYWNrYWdlIHRoYXQgYnJva2Ugc2lnbmluZyBpZiBvbmx5IC1zZ3BnIHdhcyBnaXZlbgorCitNb24gU2VwIDI3IDA0OjI1OjMyIENFU1QgMTk5OSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorCisgICogQ2hhbmdlIGNoYW5nZWxvZy1zdHlsZSBmb3IgQ2hhbmdlTG9nLCB0aGUgcGFja2FnZS1zdHlsZSBkb2Vzbid0IHdvcmsKKyAgICB3ZWxsIGZvciBDVlMgSU1ITy4KKyAgKiBNZXJnZWQgcGF0Y2ggZnJvbSBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4gdG8gbWFrZSB1cGRhdGUtYWx0ZXJuYXRpdmVzLnBsCisgICAgd29yayBhY3Jvc3MgZmlsZXN5c3RlbXMKKworZHBrZyAoMS40LjEuMTIpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogTm9uLW1haW50YWluZXIgcmVsZWFzZS4KKyAgKiBGaXggdHlwbyBpbiBjaG1vZHNhZmVfdW5saW5rIHRoYXQgbWFkZSBkcGtnIGNobW9kIGZpbGVzIHRoYXQKKyAgICB3ZXJlbid0IHNldHVpZCBvciBzZXRnaWQKKworIC0tIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+ICBTdW4sIDI2IFNlcCAxOTk5IDAyOjQxOjMwICswMjAwCisKK2Rwa2cgKDEuNC4xLjExKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIE5vbi1tYWludGFpbmVyIHJlbGVhc2UuCisgICogQWRkZWQgc3BhcmM2NCB0byBhcmNodGFibGUKKyAgKiBBZGRlZCBlbnRyaWVzIGZvciBuZXdlciBhbHBoYSBhcmNoaXRlY3R1cmVzIHRvIHRoZSBhcmNodGFibGUKKyAgKiBBbHdheXMgcnVuIHBhdGNoIGFuZCBkaWZmIHdpdGggTEFORyBzZXQgdG8gQy4KKyAgKiBIYW5kbGUgZGlmZiB3YXJuaW5nIGZvciBmaWxlcyB3aXRoIG5vIG5ld2xpbmUgYXQgdGhlIGVuZCBvZiBmaWxlCisgICAgQ2xvc2VzOiBCdWcjNDU2NDIKKworIC0tIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+ICBGcmksIDI0IFNlcCAxOTk5IDAzOjIzOjU0ICswMjAwCisKK2Rwa2cgKDEuNC4xLjEwKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIE5vbi1tYWludGFpbmVyIHJlbGVhc2UuCisgICogQnVpbGQgZHBrZy1zY2Fuc291cmNlcyBtYW5wYWdlcyB1c2luZyBwb2QybWFuCisgICogZHBrZy1idWlsZHBhY2thZ2UgY2hhbmdlczoKKyAgICArIGZpeCBzaWduaW50ZXJmYWNlLWRldGVjdGlvbgorICAgICsgdXNlIGdwZyBieSBkZWZhdWx0IGlmICRIT01FLy5nbnVwZy9zZWNyaW5nLmdwZyBleGlzdHMKKworIC0tIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+ICBUaHUsIDE2IFNlcCAxOTk5IDE1OjM2OjQzICswMjAwCisKK2Rwa2cgKDEuNC4xLjkpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogTm9uLW1haW50YWluZXIgcmVsZWFzZS4KKyAgKiBVcGRhdGVkIGRwa2ctc2NhbnNvdXJjZXMgdG8gY3VycmVudCB2ZXJzaW9uIGZyb20gUm9kZXJpY2sgU2NoZXJ0bGVyCisgICogVXBkYXRlIGxvY2F0aW9uIG9mIEdQTCBpbiBpbnRlcm5hbHMtbWFudWFsCisgICogVXBkYXRlIGxvY2F0aW9uIG9mIEdQTCBhbmQgZHBrZyBjb3B5cmlnaHQgaW4gYWxsIG1hbnBhZ2VzCisgICogSW5jbHVkZSBwYXRjaCBmcm9tIFJvbWFuIEhvZGVrIGZvciBkcGtnLXNvdXJjZSB0byBoYW5kbGUgZGlmZnMgb2YgZmlsZXMKKyAgICB3aXRoIGxpbmVzIHRoYXQgYmVnaW4gd2l0aCB0d28gZGFzaGVzLgorICAqIE1vdmUgZHBrZy1zY2Fuc291cmNlcyB0byBkcGtnLWRldiBwYWNrYWdlCisgICogTW92ZSBkcGtnLXNjYW5zb3VyY2VzIG1hbnBhZ2UgdG8gc2VjdGlvbiA4CisgICogRml4IGVycm9yIHRoYXQgbW92ZWQgYSBsb3Qgb2YgbWFucGFnZXMgdG8gdGhlIGRwa2cgcGFja2FnZS4KKyAgKiBJdCBsb29rcyBsaWtlIG5vdCByZWFkaW5nIHRoZSBhdmFpbGFibGUtZmlsZSBmb3IgbGlzdGZpbGVzIHdhcyBub3QgZ3JlZXRlZAorICAgIHdpdGggbXVjaCBlbnRoaW91c2lhc20sIHNvIHJldmVyc2UgdGhlIGNoYW5nZS4KKworIC0tIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+ICBXZWQsIDE1IFNlcCAxOTk5IDAzOjQ1OjA3ICswMjAwCisKK2Rwa2cgKDEuNC4xLjgpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogTm9uLW1haW50YWluZXIgcmVsZWFzZS4KKyAgKiBNZXJnZSBkcGtnLWRvYy1qYQorICAqIEFkZCBwYXRjaCBmcm9tIFJhcGhhw6tsIEhlcnR6b2cgPHJoZXJ0em9nQGhybmV0LmZyPiBmb3IgZHBrZy1zY2Fuc291cmNlcworICAgIHRvIHNraXAgY29tbWVudHMgaW4gc2lnbmF0dXJlcy4gVGhpcyBhbGxvd3MgcGFja2FnZXMgdG8gYWxzbyB1c2UgR251UEcuCisKKyAtLSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPiAgTW9uLCAxMyBTZXAgMTk5OSAwNDoxNjozMyArMDIwMAorCitkcGtnICgxLjQuMS43KSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIE5vbi1tYWludGFpbmVyIHJlbGVhc2UuCisgICogVXNlIC91c3Ivc2hhcmUvZG9jCisgICogTWVyZ2UgY2hhbmdlcyBmcm9tIGRwa2ctaXdqIHRyZWU6CisgICAgKyBjaGFuZ2Ugc2VjdGlvbiBpbiBkcGtnLWRlYi4xIHRvIDEKKyAgICArIFVzZSBDT1BZSU5HRklMRSBpbnN0ZWFkIG9mIGhhcmRjb2RlZCBHUEwtbG9jYXRpb24gaW4gc2hvd2NvcHlyaWdodCgpCisgICAgKyB2YXJidWZwcmludGYgKHVzZWQgZm9yIHNvbWUgZXJyb3IgbWVzc2FnZXMpIHZzbnByaW50ZiByZXR1cm4gdmFsdWUKKyAgICAgIGFzc3VtcHRpb24gY2hhbmdlZCB0byBjb3JyZXNwb25kIHRvIHJlYWxpdHkgcmF0aGVyIHRoYW4gZ2xpYmMtZG9jLgorICAgICsgRG9uJ3QgcmVhZCBhdmFpbGFibGUtaW5mbyB3aGVuIG5vdCBuZWVkZWQgKHNsaWdodGx5IGltcHJvdmVkIGZyb20gCisJICBkcGtnLWl3ajogZG9uJ3QgcmVhZCBmb3IgbGlzdGZpbGVzIGVpdGhlciA6KQorICAgICsgQ2xlYW51cCAtLWFzc2VydC0qIGNvZGUKKyAgICArIEFzc3VtZSBsYXJnZW1lbSBvbiBzeXN0ZW1zIHdpdGhvdXQgc3lzaW5mbygyKS4KKyAgICArIG1vZGlmeSBwcmVleGVjLXNjcmlwdCBmb3IgZWFzaWVyIHNjcmlwdCBleGVjdXRpb24KKyAgICArIERvIG5vdCBjaG1vZCgiLi4uL3BhdGgvdG8vc3ltbGluayIsMDYwMCkgY2F1c2luZyBtYW55IGJhZCBwZXJtcy4KKyAgICArIFNhbml0eS1jaGVjayBudW1iZXJzIGZvciBwYXJhbWV0ZXJzCisgICAgKyBNb3ZlIHNvbWUgbG9naWMgZnJvbSBwcm9jZXNzX2FyY2hpdmUgaW50byB3YW50aW5zdGFsbAorICAgICsgUHJpbnQgJzAnIGluIGRwa2ctc2NhbnBhY2thZ2VzIGlmIG5vIHBhY2thZ2VzIGZvdW5kLgorCisgLS0gV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4gIEZyaSwgMTAgU2VwIDE5OTkgMDQ6MDY6MzIgKzAyMDAKKworZHBrZyAoMS40LjEuNikgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBOb24tbWFpbnRhaW5lciByZWxlYXNlLgorICAqIHNjcmlwdHMvZHBrZy1hcmNoaXRlY3R1cmUucGw6IFVwZGF0ZSB0byBsYXRlc3QgdmVyc2lvbi4KKyAgKiBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLjE6IExpa2V3aXNlLgorICAKKyAtLSBNYXJjdXMgQnJpbmttYW5uIDxicmlua21kQGRlYmlhbi5vcmc+ICBTYXQsIDI0IEp1bCAxOTk5IDE4OjI0OjIxICswMjAwCisKK2Rwa2cgKDEuNC4xLjUpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogTm9uLW1haW50YWluZXIgcmVsZWFzZS4KKyAgKiAoZHBrZy1kZXYpOiBVc2UgZW1hY3Nlbi1jb21tb24gZm9yIGRlYmlhbi1jaGFuZ2Vsb2ctbW9kZS5lbAorICAgIChjbG9zZXM6QnVnIzIwNzc2LCMzMTAzMCkuCisgICogUmVtb3ZlZCByZWZlcmVuY2VzIHRvIHRoZSBwYWNrYWdpbmcgYW5kIHBvbGljeSBtYW51YWxzIGZyb20gZGViaWFuL2NvbnRyb2wuCisgICogUHV0IGRlYmlhbi1jaGFuZ2Vsb2ctbW9kZS5lbCBpbiBkcGtnLWRldiBhbmQgcmVtb3ZlIGZyb20gZHBrZyAoY2xvc2VzOkJ1ZyMyOTI3MSkuCisgICogRml4IHBhdGhzIGluIDUwZHBrZy1kZXYuZWwgdXNpbmcgUm9kZXJpY2sgU2NoZXJ0bGVyJ3MgcGF0Y2gKKyAgICAoY2xvc2VzOkJ1ZyMyODI3MCwjMjk3MDIsIzI2ODc2LCMyOTE4NCxhbmQgb3RoZXJzKS4KKyAgKiBOb3RlIHRoYXQgYnVnIG51bWJlciAxNzM2NyB3YXMgZml4ZWQgaW4gMS40LjAuMjYuCisgICogQWRkIFphY2sgV2VpbmJlcmcncyBpbnN0YWxsLWluZm8gcGF0Y2ggZm9yIEdOVSBpbnN0YWxsLWluZm8KKyAgICBjb21wYXRpYmlsaXR5IChjbG9zZXM6QnVnIzI4OTY1KS4KKyAgKiBBZGQgZHBrZy1hcmNoaXRlY3R1cmUgc3R1ZmYgZnJvbSBNYXJjdXMgQnJpbmttYW5uLgorICAqIFJlbW92ZSBkZWJpYW4ta2V5cmluZyBzdWdnZXN0cyBmcm9tIGRwa2cuCisgICogQWRkIC1rPGtleWlkPiBmbGFnIHRvIGRwa2ctYnVpbGRwYWNrYWdlLgorICAqIC0tdGV4dG1vZGUgd29ya3MgaW4gZ3BnLCByZW1vdmUga2x1Z2UgZnJvbSBkcGtnLWJ1aWxkcGFja2FnZS4KKyAgKiBDbGVhbnVwIGNvbmZpZ3VyZS5pbiBzbGlnaHRseSAoc3RvcCB1c2luZyB0bF8gbWFjcm9zLCBmaXggZ2V0dGV4dCBzdHVmZikuCisgICogQXR0ZW1wdCB0byBtYWtlIERlYmlhbiBzb3VyY2UgdXNlZnVsIGZvciBub24tRGViaWFuIHN5c3RlbXMKKyAgICAoaS5lLiBkaXN0Y2xlYW4gdHJlZSBpbnN0ZWFkIG9mIG1haW50YWluZXItY2xlYW4gdHJlZSkuCisgICogU3luYyB3aXRoIHdpY2hlcnQncyAxLjQuMS40LgorICAqIEFkZCBteSBsdGNvbmZpZy0xLjMuMi5kaWZmIChSUEFUSCB3b3JrYXJvdW5kKS4KKyAgKiBBZGQgZHBrZy1zY2Fuc291cmNlcyBwcm9ncmFtIGFuZCBtYW4gcGFnZS4KKyAgKiBNYW4gcGFnZXMgaW4gL3Vzci9zaGFyZS9tYW4uCisKKyAtLSBKb2VsIEtsZWNrZXIgPGVzcHlAZGViaWFuLm9yZz4gIFR1ZSwgMTMgSnVsIDE5OTkgMTg6MTI6MTUgLTA3MDAKKworZHBrZyAoMS40LjEuNCkgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBBbHNvIGNoYW5nZSBkZXZlbG9wZXIta2V5cmluZyB0byBkZWJpYW4ta2V5cmluZyBmb3IgZHBrZy1kZXYgcGFja2FnZQorICAqIEluY2x1ZGUgc3BhbmlzaCB0cmFuc2xhdGlvbiBmcm9tIE5pY29sw6FzIExpY2h0bWFpZXIgPG5pY2tAZGViaWFuLm9yZz4KKyAgKiBEZXBlbmQgb24gcGVybDUgaW5zdGVhZCBvZiBwZXJsCisKKyAtLSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPiAgTW9uLCAgNSBKdWwgMTk5OSAwMDowNDoxNCArMDIwMAorCitkcGtnICgxLjQuMS4zKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIE1vZGlmeSB0YXJvYmplY3QoKSBzbyBpdCBkb2VzIG5vdCBjb21wbGFpbiBpZiB3ZSBhcmUgY3JlYXRpbmcgYQorICAgIGRpcmVjdG9yeSB0aGF0IHJlcGxhY2VzIGEgcmVtb3ZlZCBmaWxlLiBUaGlzIHdvcmtzIGFyb3VuZCB0aGUKKyAgICBwcm9ibGVtIHRoYXQgdGhlIGZpbGVkYXRhYmFzZSBkb2Vzbid0IHJlbWVtYmVyIHdoYXQgZmlsZXR5cGUgYQorICAgIGZpbGUgd2FzIGJ5IGFzc3VtaW5nIGl0IGFscmVhZHkgd2FzIGEgZGlyZWN0b3J5CisKKyAtLSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPiAgTW9uLCAzMSBNYXkgMTk5OSAyMzo0OToyMyArMDIwMAorCitkcGtnICgxLjQuMS4yKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIE5vbi1tYWludGFpbmVyIHVwbG9hZAorICAqIFJlYnVpbGQsIHNvIHRoaXMgaXMgZ2xpYmMyLjEgKHVubGVzcyB5b3UncmUgb24gbTY4ayksIHdoaWNoIGlzIHJ1bW91cmVkCisgICAgdG8gYWxzbyBmaXggdGhlIGk4bi1wcm9ibGVtcy4KKyAgKiBJbmNvcnBvcmF0ZSAxLjYgZm9ybWF0IG9mIC5jaGFuZ2VzLCBwYXRjaCBmcm9tIEd1eSBNYW9yCisgICogRml4IGJ1ZyBpbiBzZWN0aW9uLWhhbmRsaW5nIG9mIGRwa2ctc2NhbnBhY2thZ2VzLCBwYXRjaCBmcm9tIEd1eSBNYW9yCisgICogRGlzYWJsZSBmb3JjZS1vdmVyd3JpdGVzIGFnYWluLCBzaW5jZSB3ZSdyZSBpbiB1bnN0YWJsZQorICAqIEFzc3VtZSBsYXJnZW1lbSBvbiBzeXN0ZW1zIGZvciB3aGljaCBzeXNpbmZvIGlzIG5vdCBhdmFpbGFibGUsIEJ1ZyMgMzM2NTgKKworIC0tIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+ICBXZWQsIDI2IE1heSAxOTk5IDE1OjUwOjE3ICswMjAwCisKK2Rwa2cgKDEuNC4xLjEpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogTm9uLW1haW50YWluZXIgdXBsb2FkCisgICogSW5zdGFsbCBlbWFjcy1zdGFydHVwIHNjcmlwdHMgd2l0aCBtb2RlIDA2NDQgKGxpbnRpYW4pCisgICogSW5jb3Jwb3JhdGUgY2hhbmdlcyBpbiBOTVUgMS40LjAuMzIgbWFkZSBieSBWaW5jZW50IFJlbmFyZGlhcworICAgIDx2aW5jZW50QHdhdy5jb20+IGZvciBzbGluazoKKyAgICArIEFwcGx5IHBhdGNoIGZyb20gSmltIFBpY2sgZm9yIHVwZGF0ZS1hbHRlcm5hdGl2ZXMucGwgdG8KKyAgICAgIGZpeCAnSW1wb3J0YW50JyBidWdzICMzMDg5MSBpbiBkcGtnIGFuZCAoIzI3MzgyLCAjMjczODMsICMyNzY5NiwKKyAgICAgICMyNzcwMywgIzI3NzM2LCAjMjcwOTcobWVyZ2VkIGJ1Z3MpKSBpbiBqZGsxLjEuCisgICogSW5jb3Jwb3JhdGUgY2hhbmdlcyBpbiBOTVUgMS40LjAuMzMgbWFkZSBieSBtZSBmb3Igc2xpbms6CisgICAgKyBGaXggaWxsZWdhbCBwZXJsIGNvbnN0cnVjdCAoQnVnIyAzMDk4NSkKKyAgICArIEluaXRpYWxpemUgb2lhbHRuYW1lLT51c2VpbnN0ZWFkIGFuZCBvaWNvbnRlc3QtPmNhbWVmcm9tIHRvIDAgKEJ1ZyMgMzAzOTcpCisgICAgKyBVcGRhdGUgc2hsaWJzLmRlZmF1bHQgZm9yIGxpYm5jdXJzZXMgNCAoQnVnIyAzMDMzMikKKyAgICArIFN1Z2dlc3QgZGViaWFuLWtleXJpbmcgaW5zdGVhZCBvZiBkZXZlbG9wZXIta2V5cmluZyAoQnVnIyAyNzM3NiwgMzAyNDgpCisgICAgKyBBYm9ydCBkcGtnLWRpdmVydCB3aGVuIGF0dGVtcHRpbmcgdG8gZGl2ZXJ0IGEgZGlyZWN0b3J5IChCdWcjIDMwMTI2KQorICAgICsgTWFrZSBkcGtnLWRlYi4xIGF3YXJlIHRoYXQgaXQgaXMgaW4gc2VjdGlvbiAxLCBub3QgOAorICAgICsgRml4IHNlY3Rpb24gaW4gcmVmZXJlbmNlIHRvIGRwa2ctZGViIGluIGRwa2cuOCAoQnVnIyAyOTc0MCkKKyAgICArIEZpeCB0eXBvIGluIC0tZm9yY2UtaGVscCAoQnVnIyAyNjE5MykKKyAgICArIENvcnJlY3QgcGF0aCBmb3IgZGViaWFuLWNoYW5nZWxvZy1tb2RlLmVsIChCdWcjIDI0NjA2KQorICAgICsgTWFrZSBkaXNrLW1ldGhvZCBmb3IgZHBrZyB1c2UgL3Zhci9ydW4gaW5zdGVhZCBvZiAvdG1wIHRvIGZpeAorICAgICAgc3ltbGluay1hdHRhY2tzIChCdWcjIDIxMzk5KQorICAgICsgRG9jdW1lbnQgLW4gYW5kIC1mIG9wdGlvbnMgZm9yIHVwZGF0ZS1yYy5kIGluIG1hbnBhZ2UgKEJ1ZyMgMTU5MTMpCisgICAgKyBBZGQgLS1hYm9ydC1hZnRlciBvcHRpb24gdG8gY2hhbmdlIGFmdGVyIGhvdyBtYW55IGVycm9ycyB3ZSBhYm9ydCBhbmQKKyAgICAgIGNoYW5nZSB0aGUgZGVmYXVsdCB0byA1MCAoQnVnIyAyMjk0MCkKKyAgICArIEZpeCBjb250cm9sbGliLnBsOiBkb24ndCBjaGVjayBkZWJpYW4vc3Vic3R2YXJzIHVubGVzcyBuZWVkZWQsIGFuZAorICAgICAgZG9uJ3QgZGVwZW5kIG9uIGxhbmd1YWdlIHNldHRpbmdzIChCdWcjIDMxNTA4KQorICAgICsgQWxsb3cgYSAtIGluIHRoZSBhcmNoaXRlY3R1cmUtZmllbGQgKEJ1ZyMgMjU1MzcpCisKKyAtLSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPiAgTW9uLCAgMSBGZWIgMTk5OSAwMDo0NDowMSArMDEwMAorCitkcGtnICgxLjQuMSkgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBNYWludGFpbmVyIHJlbGVhc2UgYnkgSVdKLgorICAqIENoYW5nZWQgTWFpbnRhaW5lcjogZmllbGQgZGVzY3JpcHRpb24uCisgICogVmFyaW91cyBjaGFuZ2VzIHRvIG1ha2UgdGhlIGRhbW4gdGhpbmcgYnVpbGQuCisgICogQWRkIC5jdnNpZ25vcmUgZmlsZXMuCisKKyAtLSBJYW4gSmFja3NvbiA8aWFuQGRhdmVuYW50LmdyZWVuZW5kLm9yZy51az4gIFN1biwgIDEgTm92IDE5OTggMTc6MzM6MzggKzAwMDAKKworZHBrZyAoMS40LjAuMzEpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogZHBrZy9wcm9jZXNzYXJjLmM6IE1ha2UgbmV3ZmlsZXNsaXN0IHN0YXRpYyBsaWtlIHRoZSBvdGhlciBhcmd1bWVudHMKKyAgICBmb3IgcmVnaXN0ZXJfY2xlYW51cCdzIGN1XyogZnVuY3Rpb25zLgorICAqIE4tdGggZml4IGZvciBjb250cm9sbGliLnBsIChzaW11bGF0ZSBvbGQgYmVoYXZpb3IgYnkgdHJ5aW5nIHN0ZGluLAorICAgIHN0ZG91dCwgYW5kIHN0ZGVyciBmb3IgZ2V0bG9naW4oKSkuCisgICogRW5hYmxlIC0tZm9yY2Utb3ZlcndyaXRlIGZvciBzbGluayByZWxlYXNlLCBhbmQgY29tbWVudCB3aGVyZSB0byBkbworICAgIHNvIChkcGtnL21haW4uYykuCisgICogUmVjb21waWxlIGFnYWluc3QgbmN1cnNlczQuCisKKyAtLSBEYW5pZWwgSmFjb2Jvd2l0eiA8ZGFuQGRlYmlhbi5vcmc+ICBUaHUsIDIyIE9jdCAxOTk4IDE3OjM3OjIzIC0wNDAwCisKK2Rwa2cgKDEuNC4wLjMwKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIGRwa2ctZGV2IGlzbid0IGFsbG93ZWQgdG8gaGF2ZSBhIFJlY29tbWVuZHM6IGRlYmlhbi1rZXlyaW5nIChhcyB0aGF0J3MKKyAgICBpbiBjb250cmliKSwgc28gaXQncyBub3cgbG93ZXJlZCB0byBhIFN1Z2dlc3RzOiAuIFRoYW5rcyB0byBKYW1lcyBUcm91cAorICAgIGZvciBwb2ludGluZyB0aGlzIG91dC4gCisKKyAtLSBKLkguTS4gRGFzc2VuIChSYXkpIDxqZGFzc2VuQHdpLkxlaWRlblVuaXYubmw+ICBTYXQsIDI2IFNlcCAxOTk4IDEzOjU5OjIzICswMjAwCisKK2Rwa2cgKDEuNC4wLjI5KSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIEZvciBub3csIHByZWZlciBQR1Agb3ZlciBHUEcuCisKKyAtLSBKLkguTS4gRGFzc2VuIChSYXkpIDxqZGFzc2VuQHdpLkxlaWRlblVuaXYubmw+ICBUdWUsIDIyIFNlcCAxOTk4IDA5OjM4OjA5ICswMjAwCisKK2Rwa2cgKDEuNC4wLjI4KSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIEFkZGVkIGdwZyAoR05VIFByaXZhY3kgR3VhcmQpIHN1cHBvcnQ6CisgICAgKiBzY3JpcHRzL2J1aWxkcGFja2FnZS5zaDogZGVmYXVsdCB0byBHUEcgKHVubGVzcyBubyBHUEcsIGJ1dCBvbmx5IGEgUEdQCisgICAgICBzZWNyZXQga2V5IGZpbGUgaXMgZm91bmQpLCBhcyBHUEcsIHVubGlrZSBQR1AsIGlzIERGU0ctZnJlZS4KKyAgICAqIFVwZGF0ZWQgZHBrZy1zb3VyY2UoMSksIGFuZCBhZGRlZCBncGcoMSkgYW5kIHBncCgxKSB0byB0aGUgU0VFIEFMU08KKyAgICAgIHNlY3Rpb24uCisgICAgKiBXb3JrZWQgYXJvdW5kIGJyb2tlbiB0ZXh0bW9kZSBpbXBsZW1lbnRhdGlvbiBpbiBHUEcuCisgICAgKiBkcGtnLWRldiBub3cgU3VnZ2VzdHM6IGdudXBnIC4KKyAgKiBObyBsb25nZXIgaW5jbHVkZXMgZGV2ZWxvcGVyLWtleXMucGdwIC4gSW5zdGVhZCwgZHBrZyBub3cgU3VnZ2VzdHM6IGFuZAorICAgIGRwa2ctZGV2IG5vdyBSZWNvbW1lbmRzOiBkZXZlbG9wZXIta2V5cmluZy4KKyAgKiBDb21waWxlZCB3aXRoIGxhdGVzdCBsaWJzdGRjKysgKDIuOSkuCisKKyAtLSBKLkguTS4gRGFzc2VuIChSYXkpIDxqZGFzc2VuQHdpLkxlaWRlblVuaXYubmw+ICBNb24sIDIxIFNlcCAxOTk4IDEzOjE3OjE0ICswMjAwCisKK2Rwa2cgKDEuNC4wLjI3KSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIFJFQUxMWSBmaXhlZCBkcGtnLWRldiwgYW5kIG5ldyBhdHRlbXB0IHRvIHBsYWNhdGUgaW5zdGFsbGVyIG9uIGludGVybmFscy4KKworIC0tIERhbmllbCBKYWNvYm93aXR6IDxkYW5AZGViaWFuLm9yZz4gIEZyaSwgMjcgSnVsIDE5OTggMTU6NTg6MDQgLTA0MDAKKworZHBrZyAoMS40LjAuMjYuMC4xKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIEJpbmFyeS1vbmx5IHVwbG9hZCBmb3IgeDg2IGFuZCBmaXhlZCBkcGtnLWRldgorCisgLS0gRGFuaWVsIEphY29ib3dpdHogPGRhbkBkZWJpYW4ub3JnPiAgRnJpLCAyNCBKdWwgMTk5OCAxNTo1ODowNCAtMDQwMAorCitkcGtnICgxLjQuMC4yNikgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBOb24tbWFpbnRhaW5lciB1cGxvYWQuCisKKyAgKiBNYWtlIC0tcm9vdCB3b3JrIHdpdGggbWFpbnRhaW5lciBzY3JpcHRzIChQYXRjaCBieSBTY290dCBCYXJrZXIsCisgICAgYnVncyAjNDg2MyBhbmQgIzMxNzApLgorICAqIEZpeCAkKGxpc3BkaXIpIGJ1ZyBpZiBjb21waWxpbmcgd2l0aG91dCBlbWFjcyAobm90aWNlZCBieSBKb2V5IEhlc3MpLgorCisgLS0gRGFuaWVsIEphY29ib3dpdHogPGRhbkBkZWJpYW4ub3JnPiAgVGh1LCAyMyBKdWwgMTk5OCAxMjowMjowNCAtMDQwMAorCitkcGtnICgxLjQuMC4yNSkgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBOb24tbWFpbnRhaW5lciB1cGxvYWQuCisgIAorICAqIEFkZCB0aGUgcmVxdWVzdGVkIC1uYyBvcHRpb24gdG8gZHBrZy1idWlsZHBhY2thZ2UgKERvCisgICAgbm90IGNsZWFuIHNvdXJjZSB0cmVlLCB1c2VmdWwgaW4gZGVidWdnaW5nIGN5Y2xlcykuCisgICogY29udHJvbGxpYi5wbDogQWdhaW4gYnkgcG9wdWxhciBhY2NsYW1hdGlvbiwgZml4IHRoZSBnZXRsb2dpbigpIHdhcm5pbmdzLgorICAgIEkgcmVkaXJlY3RlZCBTVERFUlIgb250byBmZCAwIGJlZm9yZSBjYWxsaW5nIGdldGxvZ2luKCkuCisgICogdG9vbHMubTQ6IEZpeCBkaXNwbGF5IG9mIHdoZXRoZXIgYysrIHdvcmtzLgorICAqIGRwa2ctZGViL2V4dHJhY3QuYzogZ2xpYmMgMi4xIGFuZCBzb21lIGtlcm5lbHMgd2FudCB0byBtYWtlCisgICAgZmZsdXNoKCkgbW92ZSB0aGUgY3VycmVudCBmcG9zLiAgVW50aWwgc29tZW9uZSBjYW4gZml4IHRoYXQsCisgICAgcHJvdGVjdCB3aXRoIHNlZWsuCisgICogQWRkIGFuIGV4dHJhIDAsIHRvIGRzZWxlY3Qve3BrZyxtZXRofWtleXMuY2Mgc28gaXQgY29tcGlsZXMgYWdhaW4uCisgICogU3RhcnQgdXNpbmcgbGNob3duKCkgaWYgYXZhaWxhYmxlLgorICAqIFJlYWxseSBmaXggIzIwMzUzLiAoYWNsb2NhbC5tNCB3YXMgdGhlIHdyb25nIHBsYWNlOyB0aGF0J3MgYSBnZW5lcmF0ZWQKKyAgICBmaWxlLiAgVGhlIGNvcnJlY3QgcGxhY2UgaXMgaW4gdGxfY2Fub24ubTQuKQorCisgLS0gRGFuaWVsIEphY29ib3dpdHogPGRhbkBkZWJpYW4ub3JnPiAgVHVlLCAyMSBKdWwgMTk5OCAwMzoxNDoxNCAtMDQwMAorCitkcGtnICgxLjQuMC4yNCkgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBOb24tbWFpbnRhaW5lciB1cGxvYWQuCisKKyAgKiBkcGtnL21haW4uYzogVHVybiAtLWZvcmNlLW92ZXJ3cml0ZSBvZmYgYXMgZGVmYXVsdC4KKyAgKiBkcGtnL21haW4uYzogZG9uJ3QgbGlzdCAtLWZvcmNlLW92ZXJ3cml0ZSBhcyBkZWZhdWx0IGluIC0tZm9yY2UtaGVscCwKKyAgICBub3RpY2VkIGJ5IFBldGVyIFdlaXNzIDxQZXRlci5XZWlzc0BJbmZvcm1hdGlrLlVuaS1PbGRlbmJ1cmcuREU+IGFuZAorICAgIG90aGVycy4gWyMyMzU0MiwgcGFydCBvZiAjMTc0MDldLgorICAqIGRwa2cvZHBrZy44OiByZXBsYWNlZCB3aXRoIGEgbmV3ZXIgdmVyc2lvbiBmcm9tIEppbSBWYW4gWmFuZHQKKyAgICA8anJ2QHZhbnphbmR0Lm12LmNvbT4uIFsjMjEwNjFdCisKKyAgKiBkcGtnLWRlYi9idWlsZC5jIChkb19idWlsZCk6IGFkZCBtaXNzaW5nIFxuIGFuZCBpbXByb3ZlIGVycm9yIG1lc3NhZ2UKKyAgICB3aGVuIGNvbmZmaWxlIG5hbWUgaXMgdG9vIGxvbmcuIFsjNzA1N10KKworICAqIHNjcmlwdHMvdXBkYXRlLWFsdGVybmF0aXZlcy44OiByZXBsYWNlZCB3aXRoIGJldHRlciBtYW4gcGFnZSBmcm9tCisgICAgQ2hhcmxlcyBCcmlzY29lLVNtaXRoIDxjcGI0QHVrYy5hYy51az4uIFsjMTcyODNdCisgICogc2NyaXB0cy9kcGtnLXNvdXJjZS4xOiBjb3JyZWN0ZWQgbG9naWMgZXJyb3IgaW4gZG9jdW1lbnRhdGlvbiBmb3IKKyAgICBkcGtnLWdlbmNvbnRyb2wncyAtcCBvcHRpb24sIGFzIG5vdGljZWQgYnkgT2xpdmVyIEVscGhpY2sKKyAgICA8b2xseUBsaW5kYS5sZml4LmNvLnVrPi4gWyMxNDY1NV0KKyAgKiBzY3JpcHRzL2NvbnRyb2xsaWIucGwgKGZpbmRhcmNoKTogY29ycmVjdCB0eXBvIGluIGVycm9yIG1lc3NhZ2UsCisgICAgbm90aWNlZCBieSBZYW5uIERpcnNvbiA8eWRpcnNvbkBhMnBvaW50cy5jb20+LiBbIzIyMTA2XQorICAqIHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2Uuc2g6IGZpeCB0eXBvIHMvc291cmNlIHZlcnNpb24vc291cmNlCisgICAgbWFpbnRhaW5lci8sIG5vdGljZWQgYnkgSm9leSBIZXNzIDxqb2V5QGtpdGUubWwub3JnPiwgQWRhbSBQLiBIYXJyaXMKKyAgICA8YXBoYXJyaXNAb25zaG9yZS5jb20+IGFuZCBvdGhlcnMuIFsjMTAxNzUsICMxNTU1OV0KKyAgKiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDogYXBwbGllZCBwYXRjaCBmcm9tIFJvbWFuIEhvZGVrCisgICAgPFJvbWFuLkhvZGVrQGluZm9ybWF0aWsudW5pLWVybGFuZ2VuLmRlPiB3aGljaCBzb2x2ZXMgcHJvYmxlbXMgd2l0aAorICAgIGFyY2hpdGVjdHVyZSBzcGVjaWZpYyBwYWNrYWdlcyBpbiBtb3N0bHkgYXJjaGl0ZWN0dXJlIGluZGVwZW5kZW50CisgICAgbXVsdGktYmluYXJ5IHNvdXJjZSBwYWNrYWdlcy4gWyMxNDM0MSwgIzIwMTkyXS4KKworICAqIGRvYy9NYWtlZmlsZS5hbTogcmVtb3ZlIGFueSByZWZlcmVuY2UgdG8gdGhlIHBhY2thZ2luZyBtYW51YWwsIGFzIGl0IGlzCisgICAgbm93IHByb3ZpZGVkIGJ5IHRoZSBzZXBhcmF0ZSAicGFja2FnaW5nLW1hbnVhbCIgcGFja2FnZS4KKyAgKiBkb2MvcGFja2FnaW5nLnNnbWw6IHJlbW92ZWQuCisgICogZG9jL2RldmVsb3Blci1rZXlzLnBncDogdXBkYXRlZCB0byB0aGUgY3VycmVudCBkZWJpYW4ga2V5cmluZy4KKworICAqIGFjbG9jYWwubTQ6IGFwcGxpZWQgcGF0Y2ggZnJvbSBKb2VsIEtsZWNrZXIgPGprQGVzcHkub3JnPiB0byBoYW5kbGUKKyAgICBlZ2NzJyAtLXByaW50LWxpYmdjYy1maWxlLW5hbWUgb3V0cHV0LiBbIzIwMzUzXQorICAKKyAgKiBkZWJpYW4vY29weXJpZ2h0OiBjb3JyZWN0IEZTRiBhZGRyZXNzLgorICAqIGRlYmlhbi9ydWxlczogYWRkIGNvZGUgZnJvbSBsZXNzdGlmJ3MgZGViaWFuL3J1bGVzIHRvIG1ha2UgbGlidG9vbAorICAgIGxlc3Mgb2YgYSBmb29sIChpLmUuIG5vdCB1c2UgLXJwYXRoIGFuZCB0byBsaW5rIHNoYXJlZCBsaWJyYXJpZXMKKyAgICBhZ2FpbnN0IGxpYnJhcmllcyBpdCBkZXBlbmRzIG9uKS4gIENvZGUgYnkgUmljaGFyZCBCcmFha21hbgorICAgIDxkYXJrQHhzNGFsbC5ubD4gYW5kIFlhbm4gRGlyc29uIDxkaXJzb25AZGViaWFuLm9yZz4uCisgICogZGViaWFuL3J1bGVzOiByZW1vdmUgYWxsIHJlZmVyZW5jZSB0byB0aGUgcGFja2FnaW5nIG1hbnVhbCBhcyBpdCBpcworICAgIG5vdyBwcm92aWRlZCBieSB0aGUgc2VwYXJhdGUgInBhY2thZ2luZy1tYW51YWwiIHBhY2thZ2UuIFsjMjE1ODEsCisgICAgIzIxMTg2LCAjMjI2OTgsICMyMzM0Ml0KKyAgKiBkZWJpYW4vcnVsZXM6IGxpbmsgZHBrZy1kaXZlcnQuMS5neiB0byB1bmRvY3VtZW50ZWQuNy5neiBhcyB0aGUgbGFjaworICAgIG9mIGEgcmVhbCBtYW5wYWdlIGhhcyBiZWVuIHJlcG9ydGVkIGluICMxMTA5My4KKyAgKiBkZWJpYW4vUkVBRE1FLmNvbXBpbGU6IHJlbW92ZWQgZ2F3ayBhbmQgYm9ndXMgY29tbWVudCBhYm91dCBnZXR0ZXh0CisgICAgYmVpbmcgaW4gZXhwZXJpbWVudGFsLCBhcyByZXBvcnRlZCBieSBTYW50aWFnbyBWaWxhIDxzYW52aWxhQHVuZXguZXM+CisgICAgWyMyMzM0NF0uICBBZGRlZCBsaWJwYXBlcmcgKGRlYmlhbmRvYzJwcyBuZWVkcyBwYXBlcmNvbmYpLgorICAqIGRlYmlhbi9zaGxpYnMuZGVmYXVsdC5pMzg2OiB1cGRhdGVkIGZvciBnbGliYywgcmVwb3J0ZWQgYnkgSGVyYmVydCBYdQorICAgIDxoZXJiZXJ0QGdvbmRvci5hcGFuYS5vcmcuYXU+LiBbIzEzMTQwXQorICAqIGRlYmlhbi9jb250cm9sIChkcGtnLWRldik6IGRlcGVuZCBvbiBwZXJsIGFzIFBPU0lYIChub3QgYSBwYXJ0IG9mCisgICAgcGVybC1iYXNlKSBpcyBuZWVkZWQgYnkgbW9zdCBvZiB0aGUgcGVybCBkcGtnLSogc2NyaXB0cywgbm90aWNlZCBieQorICAgIEpvZWwgS2xlY2tlciA8amtAZXNweS5vcmc+LiBbIzIyMTE1XQorCisgLS0gSmFtZXMgVHJvdXAgPGpqdHJvdXBAY29tcC5icmFkLmFjLnVrPiAgV2VkLCAyNCBKdW4gMTk5OCAxNDozODo1MiArMDIwMAorCitkcGtnICgxLjQuMC4yMy4yKSBmcm96ZW4gdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBOb24tbWFpbnRhaW5lciB1cGxvYWQuCisgICogZHBrZy9tYWluLmM6IFR1cm4gLS1mb3JjZS1vdmVyd3JpdGUgYmFjayBvbiBhcyBkZWZhdWx0LgorCisgLS0gSmFtZXMgVHJvdXAgPGpqdHJvdXBAY29tcC5icmFkLmFjLnVrPiAgVHVlLCAyMyBKdW4gMTk5OCAyMjoxOToyNiArMDIwMAorCitkcGtnICgxLjQuMC4yMy4xKSBmcm96ZW4gdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBObyByZWFsIGNoYW5nZXMsIG9ubHkgYSBuZXcgdmVyc2lvbiBjb2RlIHRvIG1ha2UgdGhpcyBnbyB0byBmcm96ZW4gdG9vLgorCisgLS0gTmlscyBSZW5uZWJhcnRoIDxuaWxzQGRlYmlhbi5vcmc+ICBXZWQsIDEwIEp1biAxOTk4IDE3OjI5OjU4ICswMjAwCisKK2Rwa2cgKDEuNC4wLjIzKSBmcm96ZW4gdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBOb24tbWFpbnRhaW5lciBidWctZml4IHJlbGVhc2UKKyAgKiBVcGRhdGUgdGhlIGRpc2sgbWV0aG9kIHRvIHRoZSBoYW1tIGRpcmVjdG9yeSBzdHJ1Y3R1cmUgKEJ1ZyMyMTAwMCkKKworIC0tIE5pbHMgUmVubmViYXJ0aCA8bmlsc0BkZWJpYW4ub3JnPiAgU3VuLCAgNyBKdW4gMTk5OCAxOToxNDo1MSArMDIwMAorCitkcGtnICgxLjQuMC4yMikgZnJvemVuIHVuc3RhYmxlOyB1cmdlbmN5PW1lZGl1bQorCisgICogTm9uLW1haW50YWluZXIgYnVnLWZpeCByZWxlYXNlCisgICogSW5zdGFsbCBtYWluIGNoYW5nZWxvZyBmaWxlIGFzIGBjaGFuZ2Vsb2cuZ3onIGluc3RlYWQgb2YKKyAgICBgY2hhbmdlbG9nLmRwa2cuZ3onIChEZWJpYW4gUG9saWN5LCBzZWN0aW9uIDUuOCkgKEJ1ZyM2MDUyLDE1MTU3KQorICAqIEF2b2lkIHVzZSBvZiAvdG1wLyouJCQgaW4gcHJlaW5zdCBhbmQgcG9zdGluc3QgKEJ1ZyMxOTcxMikKKyAgKiBNYWtlIHN1cmUgZGl2ZXJzaW9ucyBmaWxlIGlzIGFsd2F5cyBjcmVhdGVkIHdpdGggbW9kZSAwNjQ0IChCdWcjMTk0OTQpCisgICogV2hlbiByZW1vdmluZyBhIGZpbGUsIGNobW9kIGl0IHRvIDAwMCBpZiBpdCdzIGEgY2hhciBvciBibG9jaworICAgIGRldmljZSBvciByZW1vdmUgaXRzIHNbdWddaWQgYml0cywgaWYgYW55IChCdWcjNjAwNikKKyAgKiBNaW5vciBmaXhlcyBpbiB0aGUgcHJvZ3JhbW1lcidzIG1hbnVhbCAoQnVnIzYyMDYpCisgICogQWx3YXlzIGNyZWF0ZSByZWFkYWJsZSBzdGF0dXMgYW5kIGF2YWlsYWJsZSBmaWxlcworICAgIChCdWcjOTg2OSwxMTg4NywxNDYzNiwxNTc4NiwxOTE0NikKKyAgKiBNYWtlIGRwa2ctZ2VuY29udHJvbCBob25vdXIgLURBcmNodGVjdHVyZT14eHh4IChCdWcjOTg5MykKKyAgKiBBbGxvdyBkaWZmZXJlbnQgYXJjaHMgZm9yIHRoZSBzYW1lIGJpbmFyeSBpbiBkZWJpYW4vZmlsZXMgKEJ1ZyM5ODk0KQorICAqIEFkZGVkIHdvcmthcm91bmQgaW4gL3Vzci9saWIvZHBrZy9tZXRob2RzL2Rpc2svc2V0dXAKKyAgICB0byBhdm9pZCBiYXNoIHdhcm5pbmcgKEJ1ZyMxMDExMSwxMDEzMSkKKyAgKiBSZWNvZ25pemUgb2xkIC5kZWIgcGFja2FnZXMgd2l0aCBvdGhlciBsb2NhbGVzIChCdWcjMTIyMzIpCisgICogQWRkZWQgYFNIRUxMPWJhc2gnIHRvIGRlYmlhbi9ydWxlczogaXQgdXNlcyBiYXNoLXNwZWNpZmljIHN0cnVjdHMKKyAgKiBNb3ZlIHNvbWUgZmlsZXMgZnJvbSBkcGtnIHRvIGRwa2ctZGV2IChwYXJ0IG9mIEJ1ZyMxMzI5NSkKKyAgKiBNaW5vciBmaXggaW4gcGFja2FnaW5nIG1hbnVhbCByZWdhcmRpbmcgdG8gU3RhbmRhcmRzLVZlcnNpb24gKEJ1ZyMxNDY5NikKKyAgKiBGaXhlZCAtLWFsdGRpciBhbmQgLS1hZG1pbmRpciBpbiB1cGRhdGUtYWx0ZXJuYXRpdmVzIChCdWcjMTUzMzIpCisgICogU3RyaXAgL3Vzci9saWIvbGliZHBrZyogKEJ1ZyMxNTY3MSkKKyAgKiBkcGtnOiBzZW5kIG91dHB1dCBvZiAtLWhlbHAsIC0tZm9yY2UtaGVscCBhbmQgLURoZWxwIHRvIHN0ZG91dAorICAgIChCdWcjMTYwNTEsMTg1NzQpCisgICogc2VuZCBjb3JyZWN0IHNpZ25hbHMgd2l0aCBzdGFydC1zdG9wLWRhZW1vbiAoQnVnIzE3MjU4KQorICAqIE1ha2UgYGRwa2ctZGl2ZXJ0IC0tdGVzdCAtLXJlbW92ZScgd29yayBhcyBleHBlY3RlZCAoQnVnIzE5NTMxKQorICAqIERldGVybWluZSBwcm9wZXJseSB0aGUgYXJjaGl0ZWN0dXJlIGlmIGdjYyBpcyBlZ2NzIChCdWcjMjAzNTMpCisKKyAtLSBKdWFuIENlc3BlZGVzIDxjZXNwZWRlc0BkZWJpYW4ub3JnPiAgU3VuLCAgNSBBcHIgMTk5OCAxNzozNzowMSArMDIwMAorCitkcGtnICgxLjQuMC4yMSkgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBOb24tbWFpbnRhaW5lciByZWxlYXNlIHRvIGluY2x1ZGUgYSBuZXcgdXBkYXRlLXJjLmQKKyAgKiBGaXhlZCBkYXRlIG9uIGZpbGVzIGluIHRoZSBhcmNoaXZlIGZyb20gMjAxNyBhbmQgMjAxOCBieSBydW5uaW5nCisgICAgdG91Y2ggZm9vOyBmaW5kIC4gLW5ld2VyIGZvbyB8IHhhcmdzIC1yIHRvdWNoOyBybSBmb28KKyAgKiBDaGFuZ2VkIHN0YXJ0LXN0b3AtZGVhbW9uIG1lc3NhZ2UgIk5vIDxwcm9ncmFtPiBmb3VuZDsgbm9uZSBraWxsZWQuIiB0bworICAgICJObyA8cHJvZ3JhbT4gZm91bmQgcnVubmluZzsgbm9uZSBraWxsZWQuIgorCisgLS0gTWlxdWVsIHZhbiBTbW9vcmVuYnVyZyA8bWlxdWVsc0BjaXN0cm9uLm5sPiAgVGh1LCAgNSBNYXIgMTk5OCAxNDoxOTo0NiArMDEwMAorCitkcGtnICgxLjQuMC4yMCkgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBEaXNhYmxlZCAtLWZvcmNlLW92ZXJ3cml0ZXMuCisgICogUmVtb3ZlZCBjb3JlIGZpbGUgZnJvbSBzb3VyY2UKKworIC0tIE1pY2hhZWwgQWxhbiBEb3JtYW4gPG1kb3JtYW5AZGViaWFuLm9yZz4gIFR1ZSwgIDkgSmFuIDE5OTggMDM6MzQ6MjggLTA1MDAKKworZHBrZyAoMS40LjAuMTkpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogQ2hhbmdlZCBtZXRob2RzL2Rpc2suc2V0dXAgdG8gdXNlIG91dHB1dCBvZgorICAgICdkcGtnIC0tcHJpbnQtaW5zdGFsbGF0aW9uLWFyY2hpdGVjdHVyZScgaW5zdGVhZCBvZiBoYXJkLWNvZGVkIAorICAgICcxMzg2JyAoZml4ZXMgIzEwOTk1KS4KKyAgKiBQYXRjaGVkIGRwa2ctc291cmNlIHRvIHByb3Blcmx5IHF1b3RlIG1ldGFjaGFyYWN0ZXJzIGluIHN0cmluZ3MgCisgICAgYmVmb3JlIHVzaW5nIHRoZW0gaW4gcGF0dGVybi1tYXRjaGluZyBleHByZXNzaW9ucyAoZml4ZXMgIzEwODExKS4KKyAgKiBGaXhlZCBzZXZlcmFsIGRvY3VtZW50YXRpb24gdHlwb3MgKGZpeGVzICMxMDc2NCkuCisgICogZHBrZy1zb3VyY2Ugbm93IHdvcmtzIGFyb3VuZCAxMDAtY2hhcmFjdGVyIGZpbGVuYW1lIGxpbWl0YXRpb24gb2YgY3BpbworICAgIChmaXhlcyAjMTA0MDApLgorICAqIGRwa2ctc291cmNlIG5vdyBwcm9wZXJseSBoYW5kbGVzICdcIG5vIG5ld2xpbmUgaW4gc291cmNlJyBtZXNzYWdlIGZyb20KKyAgICBwYXRjaCAoZml4ZXMgIzUwNDEpLgorICAKKyAtLSBLbGVlIERpZW5lcyA8a2xlZUBkZWJpYW4ub3JnPiAgU3VuLCAxMyBKdWwgMTk5NyAxOToyODoyMiAtMDcwMAorCitkcGtnICgxLjQuMC4xOCkgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBkcGtnLXNvdXJjZSBub3cgdXNlcyBuZXcgLXogb3B0aW9uIHRvIEdOVSBwYXRjaCAoc3RpbGwgbmVlZHMgdG8gYmUKKyAgICBjaGFuZ2VkIHRvIGRldGVjdCBhbmQgdXNlIG9sZCB2ZXJzaW9uIGFzIHdlbGwpIChmaXhlcyAjOTkwNCwgIzEwMDA1LCAjMTAwMDcpLgorICAqIEFkZGVkIGk2ODYgdG8gYXJjaHRhYmxlLgorICAqIHNobGlicy5kZWZhdWx0IG5vdyB1c2VzIHhsaWI2IGluc3RlYWQgb2YgZWxmLXgxMXI2bGliIChmaXhlcyAjOTkyNikuCisgICogZGViaWFuLWNoYW5nZWxvZy1tb2RlIG5vdyB1c2VzIGludGVycnVwdGlibGUgY29tcGxldGluZyB0eXBlLWluIGZpZWxkcworICAgIGluc3RlYWQgb2YgdGhlIHByZXZpb3VzICdzZWxlY3QtYS1sZXR0ZXIgbWV0aG9kJy4gIEkgY29uc2lkZXIgdGhpcworICAgIGJldHRlciBhbmQgbW9yZSBzdGFuZGFyZCB0aGFuIHRoZSBwcmV2aW91cyB3YXksIGJ1dCBJJ2Qgd2VsY29tZQorICAgIG9waW5pb25zIHRvIHRoZSBjb250cmFyeS4gIENvbnNpZGVyIHRoaXMgYSAncHJvYmF0aW9uYXJ5JyBjaGFuZ2UgZm9yCisgICAgbm93IChmaXhlcyAjOTg3MywgIzk4NzQpLgorCisgLS0gS2xlZSBEaWVuZXMgPGtsZWVAZGViaWFuLm9yZz4gIFN1biwgMjUgTWF5IDE5OTcgMDk6NTY6MDggLTA0MDAKKworZHBrZyAoMS40LjAuMTcpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogQWxsIG9mIHRoZSBkcGtnIGJpbmFyaWVzIChidXQgbm90IGRwa2ctZGV2IG9yIGRzZWxlY3QpIG5vdyBzcGVhaworICAgIGZyZW5jaCwgdGhhbmtzIHRvIHBhdGNoZXMgZnJvbSBDaHJpc3RvcGhlIExlIEJhcnMgPGNsZWJhcnNAdGVhc2VyLmZyPgorICAqIEZpeCBsZWFkaW5nIHNwYWNlcyBiZWZvcmUgZGF5IGluIDgyMi1kYXRlLgorICAqIENoYW5nZXMgZnJvbSBUb20gTGVlcyA8dG9tQGxwc2cuZGVtb24uY28udWs+IHRvIGJldHRlciBzdXBwb3J0CisgICAgYnVpbGRpbmcgb24gbm9uLURlYmlhbiBzeXN0ZW1zOyBtaW5vciBNYWtlZmlsZSBmaXhlcy4KKyAgKiBBZGRlZCAncHBjIHBvd2VycGMgcG93ZXJwYycgdG8gYXJjaHRhYmxlLgorICAqIENoYW5nZWQgZG9jdW1lbnRhdGlvbiBwYXBlciBzaXplIHRvIFVTL0xldHRlciBpbnN0ZWFkIG9mIEE0IChBNAorICAgIG1heSBiZSBiZXR0ZXIsIGJ1dCBpdCdzIGVhc2llciB0byBwcmludCBVUy9MZXR0ZXIgb24gQTQgdGhhbiBpdCBpcyAKKyAgICB0byBwcmludCBBNCBvbiBVUy9MZXR0ZXIpLgorICAKKyAtLSBLbGVlIERpZW5lcyA8a2xlZUBkZWJpYW4ub3JnPiAgVHVlLCAgMTMgTWF5IDE5OTcgMTU6MjQ6MzEgLTA0MDAKKworZHBrZyAoMS40LjAuMTYpIGV4cGVyaW1lbnRhbDsgdXJnZW5jeT1sb3cKKworICAqIEFkZGVkIGdlbmVyYXRlZCBzb3VyY2VzIHRvIEdOVS1mb3JtYXQgc291cmNlIGFyY2hpdmUgc28gaXQgbm8gbG9uZ2VyCisgICAgcmVxdWlyZXMgcGVybCB0byBidWlsZC4KKworIC0tIEtsZWUgRGllbmVzIDxrbGVlQGRlYmlhbi5vcmc+ICBTYXQsIDEwIE1heSAxOTk3IDE3OjM0OjI5IC0wNDAwCisKK2Rwa2cgKDEuNC4wLjE1KSBleHBlcmltZW50YWw7IHVyZ2VuY3k9bG93CisKKyAgKiBDaGFuZ2VkIGRwa2ctZ2VuY2hhbmdlcyB0byBjaGVjayBmb3IgKCRhcmNoID09ICRzdWJzdHZhcnsnQXJjaCd9KSwgbm90CisgICAgKCRhcmNoIG5lICdhbGwnKSAoZml4ZXMgIzk2ODgpLgorICAqIEZpeGVkIGJ1ZyBpbiBzdGFydC1zdG9wLWRhZW1vbi5jICh3YXMgdXNpbmcgb3B0YXJnIGFmdGVyIGFyZ3VtZW50CisgICAgcGFyc2luZyB3YXMgb3ZlcikgKGZpeGVzICM5NTk3LCAjOTYwMywgIzkzNjQpLgorICAqIFByb3ZpZGUgNTBkcGtnLWRldi5lbCBmb3IgeGVtYWNzIGFzIHdlbGwgYXMgZW1hY3MuCisgICogRXhwbGljaXRseSBwcm92aWRlIHBhdGggZm9yIGRlYmlhbi1jaGFuZ2Vsb2ctbW9kZSBpbiA1MGRwa2ctZGV2IHRvIHVzZQorICAgIC5lbCBmaWxlIGFzIHdvcmthcm91bmQgdW50aWwgeGVtYWNzIGNhbiByZWFkIGVtYWNzMTkgLmVsYyBmaWxlcy4KKyAgKiBQYXNzIHRvcF9kaXN0ZGlyIGV4cGxpY2l0bHkgdG8gJ21ha2UgZGlzdCcgdG8gYWNjb21tb2RhdGUgYnVnIGluCisgICAgYXV0b21ha2VfMS4xby0xLgorICAqIEZpeCBkZWJpYW4vYnVpbGQgdG8gbWFrZSBodG1sIGRvY3VtZW50YXRpb24gd2l0aG91dCBpbmNsdWRpbmcKKyAgICBkaXJlY3RvcmllcyBpbiB0YXIgYXJjaGl2ZXMgKGZpeGVzICM5MzQ4KS4KKyAgCisgLS0gS2xlZSBEaWVuZXMgPGtsZWVAZGViaWFuLm9yZz4gIEZyaSwgIDkgTWF5IDE5OTcgMTM6MTc6MTggLTA0MDAKKworZHBrZyAoMS40LjAuMTQpIGV4cGVyaW1lbnRhbDsgdXJnZW5jeT1sb3cKKworICAqIEZpeGVkIGJ1Z2xldCBpbiBpbnN0YWxsLWluZm8ucGwgKGZpeGVzICM5NDM4KS4KKyAgKiBSZS13cml0ZSBvZiB1cGRhdGUtcmMuZC5wbCwgcHJpbWFyaWx5IGJ5IE1pcXVlbCB2YW4gU21vb3JlbmJ1cmcKKyAgICA8bWlxdWVsc0BjaXN0cm9uLm5sPiAoZml4ZXMgIzk0MzQsICM5NDM2KS4KKyAgKiBSZW5hbWVkICJkcGtnIFByb2dyYW1tZXIncyBNYW51YWwiIHRvICJkcGtnIEludGVybmFscyBNYW51YWwiLgorICAKKyAtLSBLbGVlIERpZW5lcyA8a2xlZUBkZWJpYW4ub3JnPiAgVHVlLCAgNiBNYXkgMTk5NyAyMjowMTowNyAtMDQwMAorCitkcGtnICgxLjQuMC4xMykgZXhwZXJpbWVudGFsOyB1cmdlbmN5PWxvdworCisgICogRml4IHRvIHN0YXJ0LXN0b3AtZGFlbW9uIHNvIHRoYXQgaXQgc3RpbGwgdGFrZXMgbnVtZXJpYyBhcmd1bWVudHMgKGhhZAorICAgIGJlZW4gYnJva2VuIGluIDEuNC4wLjEyKSAoZml4ZXMgIzk1OTgpLgorICAqIEZpeCA4MjItZGF0ZSB0byBzYW5pdHktY2hlY2sgbG9jYWx0aW1lKCkgb3V0cHV0IChzZWNvbmRzIG11c3QgYmUgdGhlCisgICAgc2FtZSBhcyBHTVQpLgorICAqIFBhdGNoIGZyb20gR3V5IE1hb3IgPG1hb3JAZWNlLnV0ZXhhcy5lZHU+IHRvIGRwa2ctc291cmNlLnBsIHRvIHN1cHBvcnQKKyAgICBwcmlzdGluZSAoTUQ1LWVxdWl2YWxlbnQpIHVwc3RyZWFtIHNvdXJjZXMuCisgICogUGF0Y2ggZnJvbSBNaWNoYWVsIEFsYW4gRG9ybWFuIDxtZG9ybWFuQGNhbGRlci5tZWQubWlhbWkuZWR1PiB0bworICAgIHVwZGF0ZS1yYy5kLnBsIHRvIGZpeCBoYW5kbGluZyBtdWx0aXBsZSBzdGFydC9zdG9wIGVudHJpZXMgb24gYSBzaW5nbGUKKyAgICBsaW5lLgorICAqIFNldmVyYWwgZml4ZXMgdG8gZHBrZy1nZW5jaGFuZ2VzIHRvIHN1cHBvcnQgLUIgb3B0aW9uIChhZGRlZCBpbgorICAgIDEuNC4wLjEyKSAoZml4ZXMgIzkzNDApLgorICAqIEhhbmRsZSBlcnJvcnMgZnJvbSA4MjItZGF0ZSBpbiBkZWJpYW4tY2hhbmdlbG9nLW1vZGUuZWwuCisgICogQ2hhbmdlZCBjbC1kZWJpYW4ucGwgdG8gY29ycmVjdGx5IGhhbmRsZSBleHRyYSB3aGl0ZXNwYWNlIGluIGNoYW5nZWxvZworICAgIGRhdGVzdGFtcHMuCisKKyAtLSBLbGVlIERpZW5lcyA8a2xlZUBkZWJpYW4ub3JnPiAgTW9uLCAgNSBNYXkgMTk5NyAxODoxMjo0MyAtMDQwMAorCitkcGtnICgxLjQuMC4xMikgZXhwZXJpbWVudGFsOyB1cmdlbmN5PWxvdworCisgICogUmUtd3JvdGUgODIyLWRhdGUgZm9yIGNsYXJpdHkgYW5kIHRvIHN1cHBvcnQgdGltZXpvbmUgb2Zmc2V0cyA+PSAxMmgKKyAgICAoTmV3IFplYWxhbmQgaW4gRFNUIGlzICsxMzAwLCBmb3IgZXhhbXBsZSkgKGZpeGVzICM3MTMwKS4KKyAgKiBQYXRjaCBmcm9tIEp1ZXJnZW4gTWVuZGVuIDxtZW5kZW5AbW9yZ2FuYS5jYW1lbG90LmRlPiB0byBzdXBwb3J0CisgICAgYXJjaGRlcGVuZGVudC1vbmx5IGJ1aWxkcyAoZml4ZXMgIzg5MTIsICM5MjQ1LCAjNTM1OSkuCisgICogRml4IGFyY2h0YWJsZSBlbnRyeSBmb3IgcG93ZXJwYyAoZml4ZXMgIzg3OTQpLgorICAqIFN0cmlwIC9zYmluLyogYW5kIC91c3Ivc2Jpbi8qIGluIGRlYmlhbi9ydWxlcyAoZml4ZXMgIzg4NTMpLgorICAqIE1vdmVkIHN0YXJ0LXN0b3AtZGFlbW9uIHRvIC9zYmluIChmaXhlcyAjODY2OSkuCisgICogU2V0IHNoYXJlZHN0YXRlZGlyIGFuZCBsb2NhbHN0YXRlZGlyIGZvciAkKE1BS0UpIGluc3RhbGwgaW4KKyAgICBkZWJpYW4vcnVsZXMgKGZpeGVzICM4ODUyKS4KKyAgKiBGaXhlcyBmb3IgdXBkYXRlLXJjLmQoOCkgZnJvbSBKaW0gVmFuIFphbmR0IDxqcnZAdmFuemFuZHQubXYuY29tPgorICAgIChmaXhlcyAjODU3NikuCisgICogTm8gbG9uZ2VyIGRvIHZhcmlhYmxlIHN1YnN0aXR1dGlvbnMgd2hlbiBnZW5lcmF0aW5nIGNoYW5nZSBmaWxlIChmaXhlcworICAgICM1ODYyKS4KKyAgKiBTdXBwb3J0IHN5bWJvbGljIHNpZ25hbCBuYW1lcyBpbiBzdGFydC1zdG9wLWRhZW1vbiAoZml4ZXMgIzc3MTUpLgorICAqIEFkZCBhdXRvbG9hZCBmb3IgZGViaWFuLWNoYW5nZWxvZy1tb2RlIHRvIC9ldGMvZW1hY3Mvc2l0ZS1zdGFydC5kCisgICAgKGZpeGVzICM0NTE5LCAjNTg0MSkuCisgICogQWRkIHJlY29tbWVuZGF0aW9uIGZvciBnY2MgYW5kIG1ha2UgaW4gZHBrZy1kZXYgKGdjYyBpcyBuZWVkZWQgZm9yIGRwa2cKKyAgICAtLXByaW50LWFyY2hpdGVjdHVyZSwgdXNlZCBieSBkcGtnLWdlbmNvbnRyb2w7IG1ha2UgaXMgbmVlZGVkIGZvciBhbnkKKyAgICBkZWJpYW4vcnVsZXMgZmlsZSkgKGZpeGVzICM4NDcwKS4KKyAgKiBNaW5vciBjaGFuZ2VzIHRvIHBhY2thZ2luZyBtYW51YWwgc2VjdGlvbiBvbiBzb3VyY2UgcGFja2FnZQorICAgIGNvbnZlcnNpb24gKGZpeGVzICM2ODAxKS4KKyAgKiBSZW5hbWVkICJwcm9ncmFtbWVyJ3MgbWFudWFsIiB0byAncGFja2FnaW5nIG1hbnVhbCcuCisgICogU3RhcnQgb2YgbmV3ICJwcm9ncmFtbWVyJ3MgbWFudWFsIiBjb250YWluaW5nIGluZm9ybWF0aW9uIG9uIGRwa2cKKyAgICBpbnRlcm5hbHMgYW5kIGJ1aWxkIGluZm9ybWF0aW9uLiAgVGhpcyBtYW51YWwgdXNlcyB0aGUgbmV3CisgICAgVGVYaW5mby1TR01MIGZvcm1hdCwgY3VycmVudGx5IGluY2x1ZGVkIGluIGRvYy8uCisgICogZHNlbGVjdC9wa2dkZXBjb24uY2Mgbm93IGNoZWNrcyBmb3IgZGVidWcgbm90IE5VTEwsIG5vdCBqdXN0IGRlcGRlYnVnLgorICAqIENoYW5nZWQgbWFrZWZpbGVzIHRvIHN1cHBvcnQgYnVpbGRpbmcgb3V0c2lkZSBvZiBzb3VyY2UgZGlyZWN0b3J5LgorICAqIEluY2x1ZGUgR05VLWZvcm1hdCBzb3VyY2UgZGlzdHJpYnV0aW9uIHdpdGggb3RoZXIgbm9uLWRlYmlhbiBwYWNrYWdlcy4KKworIC0tIEtsZWUgRGllbmVzIDxrbGVlQGRlYmlhbi5vcmc+ICBTdW4sICA0IE1heSAxOTk3IDExOjA4OjE5IC0wNTAwCisKK2Rwa2cgKDEuNC4wLjExKSBleHBlcmltZW50YWw7IHVyZ2VuY3k9bG93CisKKyAgKiBQYXRjaGVzIGZvciBhbHBoYSBhbmQgbGliYzYgZnJvbSBNaWNoYWVsIEFsYW4gRG9ybWFuCisgICAgPG1kb3JtYW5AY2FsZGVyLm1lZC5taWFtaS5lZHU+LgorICAqIEZpeGVkIG1pbm9yIHByb2JsZW1zIGluIGRwa2ctc2hsaWJkZXBzIHJlZ3VsYXIgZXhwcmVzc2lvbnMgZm9yIGxpYmM2LgorICAqIEZpeCByZWdleCB0byBkZXRlY3QgZGlyZWN0b3J5IGNyZWF0aW9uIGluIGRwa2ctc291cmNlLnBsLgorICAqIE1pbm9yIGNoYW5nZXMgZm9yIGF1dG9tYWtlLTEuMW4uCisKKyAtLSBLbGVlIERpZW5lcyA8a2xlZUBkZWJpYW4ub3JnPiAgU3VuLCAyMyBNYXIgMTk5NyAxODowOTozMyAtMDUwMAorCitkcGtnICgxLjQuMC4xMCkgdW5zdGFibGU7IHVyZ2VuY3k9bWVkaXVtCisKKyAgKiBGaXhlZCBidWcgaW4gY29udHJvbGxpYi5wbCAoQGZvd25lciB3YXMgZW50aXJlIHBhc3N3ZCBlbnRyeSwKKyAgICBub3QganVzdCBbdWlkLCBnaWRdIGFzIGl0IHNob3VsZCBoYXZlIGJlZW4pLgorCisgLS0gS2xlZSBEaWVuZXMgPGtsZWVAZGViaWFuLm9yZz4gIFRodSwgMjAgTWFyIDE5OTcgMTM6MDY6NTIgLTA1MDAKKworZHBrZyAoMS40LjAuOSkgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBDaGVjayBmcHV0cygpIHJldHVybiB2YWx1ZXMgZm9yIChyZXQgPj0gMCksIG5vdCAocmV0ICE9IDApIChmaXhlcyAjNzUyMikuCisgICogZHBrZy1zaGxpYmRlcHMgbm8gbG9uZ2VyIGdpdmVzIGVycm9yIGZvciBKYXZhIGFuZCBzdGF0aWNhbGx5IGxpbmtlZAorICAgIGJpbmFyaWVzIChmaXhlcyAjNDk4OCkuCisgICogQ2hhbmdlICdkZXRhaWxzIG9mIHRoZSBvbGQgZm9ybWF0JyB0byAnZGV0YWlscyBvZiB0aGUgbmV3IGZvcm1hdCcgaW4KKyAgICBkZWItb2xkLjUgKGZpeGVzICM3NjA1KS4KKyAgKiBkcGtnLXNvdXJjZSAtYiBub3cgd2FybnMgKHdhcyBwcmV2aW91c2x5IHNpbGVudCkgaWYgbWFpbnRhaW5lciBjaGFuZ2VzCisgICAgY3JlYXRlIG5ldyBzdWJkaXJlY3Rvcmllcy4gIGRwa2ctc291cmNlIC14IG5vdyB3YXJucyAocHJldmlvdXNseSBnYXZlCisgICAgZXJyb3IpIGlmIG1haW50YWluZXIgY2hhbmdlcyBjcmVhdGUgbmV3IHN1YmRpcmVjdG9yaWVzIChwYXJ0aWFsbHkKKyAgICBmaXhlcyAjNjg2NiwgIzY2NzEsICM1MDQ1LCAjNjQ4MikuICAgIAorICAqIEFkZGVkIG1hbnVhbCBwYWdlIGZvciBzdGFydC1zdG9wLWRhZW1vbiAoOCkuIAorICAqIEFkZGVkIEMgdmVyc2lvbiBvZiBzdGFydC1zdG9wLWRhZW1vbiBieSAKKyAgICBNYXJlayBNaWNoYWxraWV3aWN6IDxtYXJla21AaTE3bGludXhiLmlzdHMucHdyLndyb2MucGw+IChmaXhlcyAjMTY3MCkuCisgICogQ29udmVydGVkIHRvIHVzZSBHTlUgYXV0b21ha2UgZm9yIHRoZSBidWlsZCBwcm9jZXNzIGJ5IFRvbSBMZWVzIAorICAgIDx0b21AbHBzZy5kZW1vbi5jby51az4uPAorICAqIFByZWxpbWluYXJ5IHN1cHBvcnQgZm9yIGRwa2cgZnVuY3Rpb25zIGFzIGEgc2hhcmVkIGxpYnJhcnkgKG5vdworICAgIHByb3ZpZGVzIGxpYmRwa2cuc28sIGJ1dCBtdWNoIHdvcmsgbmVlZHMgdG8gYmUgZG9uZSBpbiBiZXR0ZXIKKyAgICBzZWdyZWdhdGluZyBhbmQgZGVmaW5pbmcgdGhlIGludGVyZmFjZSkuCisgICogUHJlbGltaW5hcnkgaW50ZXJuYXRpb25hbGl6YXRpb24gc3VwcG9ydCBieSBHYWxlbiBIYXplbHdvb2QKKyAgICA8Z2FsZW5oQGRlYmlhbi5vcmc+LiAgT25seSB0aGUgbGlicmFyeSwgZHBrZy1kZWIsIG1kNXN1bSwgYW5kIGRwa2cKKyAgICBoYXZlIGJlZW4gY29udmVydGVkIHNvIGZhci4gIE5vIHRyYW5zbGF0aW9ucyBoYXZlIHlldCBiZWVuCisgICAgY29uc3RydWN0ZWQuCisgICogSGFuZGxlICdsaWJjLnNvLjYgPT4gL2xpYi9saWJjLnNvLjYgKDB4NDAwMTAwMDApJyBmb3JtYXQgZnJvbSBsaWJjNgorICAgIGxkZCAoZml4ZXMgIzc2MDMsICM3OTI2LCAjODY4OCwgIzkxNzksICM5MTM0LCAjODUxNikuCisgICogUmVtb3ZlZCBwb2xpY3kuc2dtbCAoaXQgaGFzIGJlZW4gbW92ZWQgdG8gdGhlIGRlYmlhbi1wb2xpY3kgcGFja2FnZSkuCisgICogSW5jbHVkZSBwYXRjaCBmcm9tIERhcnJlbiBTdGFsZGVyIDx0b3JpbkBkYWZ0LmNvbT4gZm9yCisgICAgZHBrZy1idWlsZHBhY2thZ2UgdG8gY2hvb3NlIFBHUCBrZXkgYmFzZWQgb24gTWFpbnRhaW5lcjogZmllbGQgb2YgCisgICAgcGFja2FnZSBiZWluZyBidWlsdCAob3IgLW08bWFpbnRhaW5lcj4gb3B0aW9uLCBpZiBwcmVzZW50KSAoZml4ZXMgCisgICAgIzc4OTgpLgorICAqIENoYW5nZWQgY29udHJvbGxpYi5wbCB0byB1c2UgJEVOVntMT0dOQU1FfSwgZ2V0bG9naW4oKSwgYW5kICQ8CisgICAgKGluIHRoYXQgb3JkZXIpIHRvIGRldGVybWluZSB0aGUgaW50ZW5kZWQgb3duZXJzaGlwIG9mIAorICAgIGRlYmlhbi97ZmlsZXMsc3Vic3R2YXJzfSwgIChmaXhlcyAjNzMyNCwgIzY4MjMsICM1NjU5LCAjNTk2NSwgIzU5MjksCisgICAgIzkyMzksICM1MzY2KS4KKyAgKiBEb24ndCBzaWduIC5kc2MgZmlsZSBpbiBkcGtnLWJ1aWxkcGFja2FnZSBpZiBidWlsZGluZyBhIGJpbmFyeS1vbmx5CisgICAgcmVsZWFzZSAoZml4ZXMgIzcyNjApLgorICAqIFVwZGF0ZWQgZGV2ZWxvcGVyLWtleXMucGdwIHRvIGxhdGVzdCByZXZpc2lvbiAoZml4ZXMgIzYxMzQpLgorICAKKyAtLSBLbGVlIERpZW5lcyA8a2xlZUBkZWJpYW4ub3JnPiAgTW9uLCAxNyBNYXIgMTk5NyAxNjoxMToyNCAtMDUwMAorCitkcGtnICgxLjQuMC44KSB1bnN0YWJsZTsgdXJnZW5jeT1tZWRpdW0KKworICAqIENvcnJlY3RlZCB1cGRhdGUtcmMuZCBmb3IgYmFzaCAyLjAKKyAgKiBVcGRhdGVkIGRldmVsb3Blci1rZXlzLnBncCBmcm9tCisgICAgaHR0cDovL3d3dy5pa2kuZmkvbGl3L2RlYmlhbi9kZWJpYW4ta2V5cmluZy50YXIuZ3oKKworIC0tIEd1eSBNYW9yIDxtYW9yQGVjZS51dGV4YXMuZWR1PiAgTW9uLCAzIEZlYiAxOTk3IDA0OjA1OjAxIC0wNjAwCisKK2Rwa2cgKDEuNC4wLjcpIHN0YWJsZSB1bnN0YWJsZTsgdXJnZW5jeT1ISUdICisKKyAgKiBGaXhlZCAtLWFzc2VydC1zdXBwb3J0LXByZWRlcGVuZHMgZmFpbGluZyBiZXR3ZWVuIHVucGFjayAmIGNvbmZpZ3VyZS4KKyAgKiBBZGRlZCAtLWFzc2VydC13b3JraW5nLWVwb2NoIG9wdGlvbi4KKworIC0tIEd1eSBNYW9yIDxtYW9yQGVjZS51dGV4YXMuZWR1PiAgU2F0LCAyNSBKYW4gMTk5NyAyMzowMjoxMSAtMDYwMAorCitkcGtnICgxLjQuMC42KSBzdGFibGUgdW5zdGFibGU7IHVyZ2VuY3k9aGlnaAorCisgICogUGF0Y2hlZCBsaWIvdmVyY21wLmMgdG8gaG9wZWZ1bGx5IGZpeCBkc2VsZWN0IGVwb2NoIHByb2Nlc3NpbmcKKyAgICAoQnVnIzYyMDQpLCAoQnVnIzQ1OTApLgorICAqIFBhdGNoZWQgc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZSwgc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMsCisgICAgc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wgZm9yIGVwb2NoIHByb2Nlc3NpbmcsIGNvdXJ0ZXN5IG9mIExvaWMgUHJ5bGxpIAorICAgIDxscHJ5bGxpQGdyYXZpbGxlLmZkbi5mcj4gKEJ1ZyM2MTM4LCBCdWcjNTIyNSkuCisgICogUGF0Y2hlZCBkcGtnLWdlbmNoYW5nZXMgdG8gYWN0dWFsbHkgaG9ub3IgdGhlIC11IHN3aXRjaCB0byBzcGVjaWZ5CisgICAgZGlyZWN0b3J5IChCdWcjNTU2NCkuCisgICogQXBwbGllZCBwYXRjaCB0byBtYWluL2FyY2hpdmUuYyB0byBjb3JyZWN0IHByb2JsZW1zIHNldHRpbmcgc2V0W2d1XWlkCisgICAgYmluYXJpZXMsIGNvdXJ0ZXN5IG9mIEhlcmJlcnQgWHUgPGhlcmJlcnRAZ3JlYXRoYW4uYXBhbmEub3JnLmF1PgorICAgIChCdWcjNTQ3OSkuIAorICAqIEFwcGxpZWQgcGF0Y2ggdG8gZHBrZy1zb3VyY2UgdG8gY29ycmVjdCBkZWJpYW4tb25seSBwYWNrYWdlIG5hbWVzLAorICAgIGNvdXJ0ZXN5IG9mIEd1eSBNYW9yIDxtYW9yQGVjZS51dGV4YXMuZWR1PiAoQnVnIzUzNTUpLgorCisgLS0gTWljaGFlbCBBbGFuIERvcm1hbiA8bWRvcm1hbkBjYWxkZXIubWVkLm1pYW1pLmVkdT4gIFRodSwgMiBKYW4gMTk5NyAxMTozNjowOSAtMDUwMAorCitkcGtnICgxLjQuMC41KSBzdGFibGUgZnJvemVuIHVuc3RhYmxlOyB1cmdlbmN5PW1lZGl1bQorCisgICogRGlzdHJpYnV0aW9uIGZvciBmcm96ZW4gdG9vLgorCisgLS0gSGVpa28gU2NobGl0dGVybWFubiA8aGVpa29AbG90dGUuc2F4LmRlPiAgVGh1LCA1IERlYyAxOTk2IDA5OjEzOjQyICswMTAwCisKK2Rwa2cgKDEuNC4wLjQpIHN0YWJsZSB1bnN0YWJsZTsgdXJnZW5jeT1tZWRpdW0KKworICAqIEJ1ZzI5NjIgZml4ZWQ6IHBhdGNoIGZyb20gSWFuIEphY2tzb24gYXBwbGllZAorICAgIChjdXJzb3Iga2V5cyB3b24ndCB3b3JrIGFmdGVyIHNlYXJjaCkKKyAgKiBNYW51YWxzIDIuMS4yLjIKKworIC0tIEhlaWtvIFNjaGxpdHRlcm1hbm4gPGhlaWtvQGxvdHRlLnNheC5kZT4gIEZyaSwgMTUgTm92IDE5OTYgMjA6MjE6MTggKzAxMDAKKworZHBrZyAoMS40LjAuMykgdW5zdGFibGU7IHVyZ2VuY3k9bWVkaXVtCisKKyAgKiBkcGtnLXNvdXJjZSAteDogY3JlYXRlZCBiYWQgcGVybWlzc2lvbnMgKHNldCB4LWJpdCBmb3IKKyAgICBhbGwgZmlsZXMgcG9pbnRlZCB0byBieSBhIHN5bWxpbmspCisKKyAtLSBIZWlrbyBTY2hsaXR0ZXJtYW5uIDxoZWlrb0Bsb3R0ZS5zYXguZGU+ICBGcmksIDE4IE9jdCAxOTk2IDE4OjMyOjA2ICswMjAwCisKK2Rwa2cgKDEuNC4wLjIpIHVuc3RhYmxlOyB1cmdlbmN5PW1lZGl1bQorCisgICogZHBrZy1idWlsZHBhY2thZ2Uuc2g6IHJldmVydGVkIHRoZSBxdW90aW5nIGNoYW5nZSAtLSAoeW91CisgICAgc2hvdWxkIHVzZSBzdXBlciwgc3VkbywgcmVhbGx5LCBidXQgbm90IHN1LiAgT3Igd3JpdGUgYSB3cmFwcGVyCisgICAgYXJvdW5kIHN1KQorICAqIGRwa2ctYnVpbGRwYWNrZ2Uuc2g6IHBhc3NpbmcgLW0sIC1DLCAtdiBvcHRpb25zIHRvIGRwa2ctZ2VuY2hhbmdlcworICAgIG1vcmUgdGhlIHdheSBJYW4gbGlrZXMgOy0pCisgICogZHBrZy1zb3VyY2UucGw6IG5ldyBmdW5jdGlvbiBkZW9jdGlmeSgpIGFzIHJlcGxhY2VtZW50IGZvciBldmFsKCkKKyAgICAodHVybiBcZGRkIGludG8gdGhlIGNvcnJlc3BvbmRpbmcgY2hhcmFjdGVyKSBbcmVtOiBwcm9iYWJseSBiZXR0ZXIKKyAgICBzb2x1dGlvbiB3b3VsZCBiZSB0byBjb252ZXJ0IGNwaW9zIG91dHB1dCBuYW1lcyBpbnRvIGNvbXBsZXRlIFxkZGQgCisgICAgcmVwcmVzZW50YXRpb24gYXMgd2VsbCB0YXJzIG91dHB1dCBuYW1lc10gCisgICogZHBrZy1zb3VyY2UucGw6IGZpeGVkIDIgdHlwb3MgaW4gZmFpbHVyZSBtZXNzYWdlIG9uIGNyZWF0aW5nIAorICAgICRvcmlndGFyZ3oudG1wLW5lc3QuCisgICogbWFpbi9tYWluLmM6IHR5cG8gYHRyZWFkJyAtPiBgdHJlYXQnCisgICogbWFpbi9lbnF1aXJ5LmM6IGZpeGVkIHRoZSBpZ25vcmFuY2UgZm9yIHNvbWUgcmVsYXRpb25zIGluIC0tY29tcGFyZS12ZXJzaW9ucworICAqIG1haW4vZW5xdWlyeS5jOiBtaXNzaW5nIHZlcnNpb24gaXMgbm93IGhhbmRsZWQgYXMgZGVzY3JpYmVkIGluIGBkcGtnIC0taGVscCcKKyAgICAob3IgYXQgbGVhc3QgYXMgSSB1bmRlcnN0b29kIGBkcGtnIC0taGVscCcgUExFQVNFIFRSWSBJVCkKKyAgKiBsaWIvcGFyc2VoZWxwLmM6IGZpeGVkIHBhcnNpbmcgb2YgZXBvY2ggaW5mb3JtYXRpb24KKworIC0tIEhlaWtvIFNjaGxpdHRlcm1hbm4gPGhlaWtvQGxvdHRlLnNheC5kZT4gIFN1biwgNiBPY3QgMTk5NiAyMzoyNzo0NyArMDIwMAorCitkcGtnICgxLjQuMC4xKSB1bnN0YWJsZTsgdXJnZW5jeT1tZWRpdW0KKworICAqIGRwa2ctc291cmNlOiBkb2Vzbid0IGdldCBzY3Jld2VkIHVwIGZyb20gaGFyZGxpbmtzCisgICAgaW4gdGhlIGFyY2hpdmUgbm93CisgICogZHBrZy1zb3VyY2U6IGRvZXNuJ3QgZ2V0IHNjcmV3ZWQgdXAgZnJvbSBgdW5wcmludGFibGUnIGNoYXJhY3RlcnMKKyAgICBpbiBmaWxlIG5hbWVzIChlLmcuIGZyb20gdGhlIGtiZCBwYWNrYWdlKSAKKyAgKiBjb250cm9sbGliLnBsOiAkdmFybGlzdHZpbGUgLT4gJHZhcmxpc3RmaWxlICh0aGFueCBLYXJsIFNhY2tldHQpCisgICogZHBrZy1idWlsZHBhY2tnZTogcXVvdGluZyBmb3IgJHJvb3Rjb21tYW5kICh0aGFueCAgTWljaGFlbCBNZXNrZXMpCisgICAgYW5kIGBldmFsJyBhcyBkZWZhdWx0ICRyb290Y29tbWFuZAorICAqIGRwa2ctKiwgY29udHJvbGxpYi5wbDogY3JlYXRlZCBkZWJpYW4vZmlsZXMgYW5kIGRlYmlhbi9zdWJzdHZhcnMKKyAgICBhcmUgY2hvd24nZWQgdG8gYGdldGxvZ2luKCknIGFuZCBpdHMgZ3JvdXAKKyAgKiBkb2MvOiBtdiBjaGFuZ2VkIHRvIG12IC1mCisgICogZHBrZy1idWlsZHBhY2thZ2U6IGFkZGVkIGFuIG9wdGlvbiAtYSBmb3Igb3ZlcnJpZGluZyB0aGUKKyAgICBhcmNoaXRlY3R1cmUgaW4gdGhlIGNoYW5nZXMgX2ZpbGVfbmFtZV8KKyAgKiBkcGtnLWJ1aWxkcGFja2FnZTogcGFzcyAtbSogLXYqIC4uIG9wdGlvbnMgdG8gZHBnay1nZW5jaGFuZ2Vsb2cKKyAgKiBkcGtnLW5hbWUgbW92ZWQgdG8gZHBrZy1kZXYKKworIC0tIEhlaWtvIFNjaGxpdHRlcm1hbm4gPGhlaWtvQGxvdHRlLnNheC5kZT4gIFNhdCwgMjEgU2VwIDE5OTYgMjI6MDY6MDEgKzAyMDAKKworZHBrZyAoMS40LjApIHVuc3RhYmxlOyB1cmdlbmN5PWxvdyAoSElHSCBmb3IgbmV3IHNvdXJjZSBmb3JtYXQpCisKKyAgKiBDb3JyZWN0ZWQgYnVmZmVyIG92ZXJydW4gd2hlbiBkcGtnLWRlYiBnZW5lcmF0ZXMgZmlsZW5hbWUuICAoQnVnIzQ0NjcuKQorICAqIGRwa2ctc2hsaWJkZXBzIHdvcmtzIHdpdGggREVCSUFOL3NobGlicyAodGhhbmtzIEhlaWtvIFNjaGxpdHRlcm1hbm4pLgorICAqIEFkZGVkIGxpYm0uc28uNSB0byBzaGxpYnMuZGVmYXVsdCBmb3IgaTM4Ni9tNjhrLgorCisgICogU3BsaXQgYmluYXJ5IHBhY2thZ2UgaW50byB0d286IGRwa2cgYW5kIGRwa2ctZGV2LgorICAqIGRwa2ctc291cmNlKDEpIGRvY3VtZW50cyBtb2RlIGFuZCBvd25lcnNoaXAgc2V0dGluZyBkdXJpbmcgZXh0cmFjdGlvbi4KKworICAqIGRwa2ctc2NhbnBhY2thZ2VzIG1vdmVkIHRvIC91c3IvYmluLgorICAqIEluY2x1ZGUgL3Vzci9iaW4vZHBrZy1kZWIsIG5vdCBkcGtnLWRlYi5kaXN0OyBkb24ndCByZW5hbWUgaW4gc2NyaXB0cy4KKyAgKiBDb3B5cmlnaHQgZmlsZSBjaGFuZ2VkIHNsaWdodGx5LgorICAqIGRlYmlhbi1jaGFuZ2Vsb2ctbW9kZSB1c2VzIG1hZ2ljIGtleSBzdWJzdGl0dXRpb24gc3RyaW5ncy4gIChCdWcjNDQxOS4pCisgICogQ2hhbmdlZCBlbWFpbCBhZGRyZXNzIGluIGNvbnRyb2wgZmlsZSB0byA8aWFuQGNoaWFyay5ncmVlbmVuZC5vcmcudWs+LgorICAqIE1hbnVhbHMgYW5kIG93biBTdGFuZGFyZHMtVmVyc2lvbjogdXBkYXRlZCB0byAyLjEuMS4wLgorCisgLS0gSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuZ3JlZW5lbmQub3JnLnVrPiAgVGh1LCAxMiBTZXAgMTk5NiAwMToxMzozMyArMDEwMAorCitkcGtnICgxLjMuMTQpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogZHBrZy1idWlsZHBhY2thZ2UgbmV3IC10YyAoY2xlYW4gc291cmNlIHRyZWUpIG9wdGlvbi4KKworICAqIEZvcm1hdHRlZCBkb2N1bWVudGF0aW9uIHJlbW92ZWQgYnkgYG1ha2UgY2xlYW4nIGFuZCBzbyBub3QgaW4gc291cmNlLgorICAqIE1hbnVhbHMgYW5kIG93biBTdGFuZGFyZHMtVmVyc2lvbjogdXBkYXRlZCB0byAyLjEuMC4wLgorICAqIERpc3RyaWJ1dGUge3BvbGljeSxwcm9ncmFtbWVyfS57aHRtbC50YXIscHN9Lmd6IHdpdGggZWFjaCB1cGxvYWQuCisKKyAtLSBJYW4gSmFja3NvbiA8aWFuQGNoaWFyay5jaHUuY2FtLmFjLnVrPiAgU3VuLCAxIFNlcCAxOTk2IDIwOjQzOjQwICswMTAwCisKK2Rwa2cgKDEuMy4xMykgdW5zdGFibGU7IHVyZ2VuY3k9bG93IChISUdIIGZvciBidWlsZGluZyBuZXcgc3JjIFggcHJvZ3JhbXMpCisKKyAgKiBYIHNoYXJlZCBsaWJyYXJpZXMgYWRkZWQgdG8gc2hsaWJzLmRlZmF1bHQgKD0+IGBlbGYteDExcjZsaWInKS4KKyAgKiBkcGtnLXNvdXJjZSB0YXIgaW52b2NhdGlvbiBmaXhlZCBzbyB0aGF0IFRBUEUgZW52IHZhciBkb2Vzbid0IGJyZWFrIGl0LgorICAqIGRwa2ctc291cmNlIGNvcGVzIGJldHRlciB3aXRoIG1pc3NpbmcgZmluYWwgbmV3bGluZSBtZXNzYWdlcyBmcm9tIGRpZmYuCisKKyAgKiBkcGtnLWJ1aWxkcGFja2FnZSB1c2FnZSBtZXNzYWdlIGZpeGVkOiAtc2kgaXMgdGhlIGRlZmF1bHQuICAoQnVnIzQzNTAuKQorICAqIGRwa2ctc291cmNlIGVycm9yIG1lc3NhZ2UgYWJvdXQgc3JjIGRpciBtaXNtYXRjaCB0eXBvIGZpeGVkLiAgKEJ1ZyM0MzQ5LikKKworICAqIGRwa2ctc291cmNlKDEpIGhhcyBzdWdnZXN0aW9ucyBmb3IgZHBrZy1idWlsZHBhY2thZ2UgLXIgb3B0aW9uLgorICAqIGRwa2ctc291cmNlIGNoYW5nZSBkYXRlIGZpeGVkLiAgKEJ1ZyM0MzUxLikKKyAgKiBNb3JlIGRldmVsb3BlcnMnIGtleXMuCisgICogTWFudWFsIHVwZGF0ZXMsIG93biBTdGFuZGFyZHMtVmVyc2lvbiB1cGRhdGVkLgorCisgLS0gSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuY2h1LmNhbS5hYy51az4gIFNhdCwgMzEgQXVnIDE5OTYgMjA6MDg6MTggKzAxMDAKKworZHBrZyAoMS4zLjEyKSB1bnN0YWJsZTsgdXJnZW5jeT1tZWRpdW0KKworICAqIGRwa2cgcHJpbnRzIG9sZCB2ZXJzaW9uIG51bWJlciB3aGVuIHVwZ3JhZGluZy4gIChCdWcjNDM0MC4pCisgICogZHBrZy1kZWIgdHJpZXMgdG8gZGV0ZWN0IGFuZCBmbGFnIGNvcnJ1cHRpb24gYnkgQVNDSUkgZG93bmxvYWQuCisKKyAgKiBkcGtnLWdlbmNoYW5nZXMgYW5kIGRwa2ctYnVpbGRwYWNrYWdlIHNheSB3aGF0IHNvdXJjZSBpcyBpbmNsdWRlZC4KKworICAqIGRwa2ctYnVpbGRwYWNrYWdlIHBhc3NlcyArY2xlYXJzaWc9b24gdG8gUEdQIChvciBwZ3Bjb21tYW5kKS4gIChCdWcjNDM0Mi4pCisKKyAgKiBkcGtnLXNvdXJjZSBwcmludHMgYmV0dGVyIGVycm9yIGZvciBjcGlvIG5vdCBob25vdXJpbmcgLTB0LgorICAqIGNvbnRyb2wgZmlsZSBTdWdnZXN0cyBjcGlvID49IDIuNC4yLCByYXRoZXIgdGhhbiBqdXN0IGNwaW8uCisKKyAtLSBJYW4gSmFja3NvbiA8aWFuQGNoaWFyay5jaHUuY2FtLmFjLnVrPiAgRnJpLCAzMCBBdWcgMTk5NiAxNTozMTo1MSArMDEwMAorCitkcGtnICgxLjMuMTEpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogRUJVU1kgd2hlbiBkcGtnIHJlbW92ZXMgYSBkaXJlY3RvcnkgaXMgb25seSBhIHdhcm5pbmcuCisKKyAgKiBkcGtnLWdlbmNoYW5nZXMgZ2VuZXJhdGVzIHNlbnNpYmxlIHdhcm5pbmcgKG5vdCBjb25mdXNpbmcgZXJyb3IKKyAgICBhYm91dCBtaXNtYXRjaCkgZm9yIG1pc3NpbmcgU2VjdGlvbi9Qcmlvcml0eSBpbiBiaW5hcnkgcGFja2FnZXMuCisKKyAgKiBBZGRlZCBkcGtnIC0tcHJpbnQtZ251LWJ1aWxkLWFyY2hpdGVjdHVyZSBvcHRpb24uCisgICogc2hsaWJzLmRlZmF1bHQgZm9yIG02OGsgcHJvdmlkZWQsIGFzIGEgY29weSBvZiBpMzg2IHZlcnNpb24uCisKKyAtLSBJYW4gSmFja3NvbiA8aWFuQGNoaWFyay5jaHUuY2FtLmFjLnVrPiAgVGh1LCAyOSBBdWcgMTk5NiAxNDowNTowMiArMDEwMAorCitkcGtnICgxLjMuMTApIHVuc3RhYmxlOyB1cmdlbmN5PW1lZGl1bQorCisgICogZHBrZy1zb3VyY2UoMSkgbWFucGFnZSBhbGlhcyBzeW1saW5rcyBhcmUgbm90IGRhbmdsaW5nLgorICAqIGRzZWxlY3Qgc2VsZWN0cyB0aGluZ3MgYnkgZGVmYXVsdCBpZiB0aGV5IGFyZSBpbnN0YWxsZWQuCisgICogQWRkZWQgYHBlbnRpdW0nIGFzIGFsaWFzIGZvciBgaTM4NicgYXJjaGl0ZWN0dXJlLgorICAqIEFkZGVkIGBTdWdnZXN0czogY3BpbywgcGF0Y2gnIGFuZCBleHBsYW5hdG9yeSB0ZXh0IHRvIERlc2NyaXB0aW9uLgorICAgIChCdWdzICM0MjYyLCAjNDI2My4pCisKKyAgKiBNb3JlIGRldmVsb3BlcnMnIFBHUCBrZXlzLgorICAqIE1hbnVhbCB1cGRhdGVzLCBuZXcgc291cmNlIGZvcm1hdCByZWxlYXNlZC4KKworIC0tIElhbiBKYWNrc29uIDxpYW5AY2hpYXJrLmNodS5jYW0uYWMudWs+ICBNb24sIDI2IEF1ZyAxOTk2IDE0OjMwOjQ0ICswMTAwCisKK2Rwa2cgKDEuMy45KSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cgKGhpZ2ggZm9yIG5ldyBzb3VyY2UgZm9ybWF0KQorCisgICogZHBrZyAtLWdldC1zZWxlY3Rpb25zIGFuZCAtLXNldC1zZWxlY3Rpb25zIGFkZGVkLgorICAqIE5ldyBkcGtnIC0tZm9yY2Utbm90LXJvb3QgZmxhZy4KKworICAqIERvbid0IHJlcGxhY2UgZGlyZWN0b3J5IHdpdGggYW5vdGhlciBwYWNrYWdlJ3MgZmlsZS4gIChCdWcjNDIwMi4pCisKKyAgKiBBbGwgbWFucGFnZXMgbm93IGluc3RhbGxlZCBjb21wcmVzc2VkLgorICAqIENvcHlyaWdodCBmaWxlIG1vdmVkIHRvIC91c3IvZG9jL2Rwa2cvY29weXJpZ2h0LgorICAqIFN0YW5kYXJkcy1WZXJzaW9uIHVwZGF0ZWQgKDAuMi4xLjEpLgorCisgLS0gSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuY2h1LmNhbS5hYy51az4gIFNhdCwgMjQgQXVnIDE5OTYgMTk6MDk6MzAgKzAxMDAKKworZHBrZyAoMS4zLjgpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdyAoaGlnaCBmb3IgbmV3IHNvdXJjZSBmb3JtYXQpCisKKyAgKiBkcGtnLWJ1aWxkcGFja2FnZSAtc2EsIC1zaSBvcHRpb25zIHdvcmsgY29ycmVjdGx5LgorCisgICogdXBkYXRlLXJjLmQoOCkgdXBkYXRlZCB0byByZWZsZWN0IGRlc2lnbiBhbmQgcmVhbGl0eS4KKyAgKiBQcm9ncmFtbWVycycgYW5kIHBvbGljeSBtYW51YWwgdXBkYXRlcy4KKworIC0tIElhbiBKYWNrc29uIDxpYW5AY2hpYXJrLmNodS5jYW0uYWMudWs+ICBGcmksIDIzIEF1ZyAxOTk2IDEyOjQ4OjI2ICswMTAwCisKK2Rwa2cgKDEuMy43KSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cgKG1lZGl1bSBmb3Igc291cmNlIHBrZyBkb2NzKQorCisgICogZHNlbGVjdCArLy0vXy89IG9uIGxpbmVzIGZvciBhbGwgYnJva2VuLCBuZXcsIGxvY2FsIG9yIHdoYXRldmVyCisgICAgcGFja2FnZXMgZG8gbm90IGFmZmVjdCBfYWxsXyBwYWNrYWdlcy4gIChCdWcjNDEyOS4pCisKKyAgKiBTdXBwb3J0IGZvciBkaWZmLW9ubHkgdXBsb2FkcyBpbiBzb3VyY2UgcGFja2FnaW5nIHRvb2xzLgorICAqIGRwa2ctZ2VuY2hhbmdlcyAtZDxkZXNjcmlwZmlsZT4gb3B0aW9uIHJlbmFtZWQgdG8gLUMuCisgICogZHBrZy1idWlsZHBhY2thZ2UgdW5kZXJzdGFuZHMgLW0sIC12LCAtQyAoZm9yIGRwa2ctZ2VuY2hhbmdlcykuCisgICogU3VwcG9ydCBmb3IgZGViaWFuL3NobGlicy5sb2NhbCBhZGRlZCB0byBkcGtnLXNobGliZGVwcy4KKyAgKiBTaGFyZWQgbGlicmFyeSBmaWxlcycgc2VhcmNoIG9yZGVyIGRlZmluZWQgaW4gZHBrZy1zb3VyY2UoMSksIGFuZAorICAgIHJlbGV2YW50IGZpbGVzIGFkZGVkIHRvIHRoZSBGSUxFUyBzZWN0aW9uLgorCisgICogUHJvZ3JhbW1lcnMnIG1hbnVhbCBkZXNjcmliZXMgc291cmNlIHBhY2thZ2luZyB0b29scy4KKyAgKiBQb2xpY3kgbWFudWFsIG1lbnRpb25zIHNoYXJlZCBsaWJyYXJ5IGNvbnRyb2wgYXJlYSBmaWxlLgorICAqIGRwa2ctc291cmNlIG1hbnBhZ2UgaW5jbHVkZXMgZHBrZy1zaGxpYmRlcHMgaW4gdGl0bGUgbGluZS4KKyAgKiBNYW51YWxzIGhhdmUgY2hhbmdlbG9nIGFuZCBhdXRvbWF0aWMgdmVyc2lvbiBudW1iZXJpbmcuCisgICogY2hhbmdlbG9ncyAoZm9yIGRwa2cgYW5kIGZvciBtYW51YWxzKSBpbnN0YWxsZWQuCisgICogYmluYXJ5IHRhcmdldCBzcGxpdCBpbnRvIGJpbmFyeS1hcmNoIGFuZCBiaW5hcnktaW5kZXAgaW4gbWFudWFsLgorICAqIE1hbnBhZ2VzIHNob3VsZCBiZSBjb21wcmVzc2VkLgorICAqIENvcHlyaWdodCBmaWxlIGlzIG1vdmVkIHRvIC91c3IvZG9jLzxwYWNrYWdlPi9jb3B5cmlnaHQuCisgICogQ2hhbmdlbG9ncyBtdXN0IGJlIGluc3RhbGxlZCBpbiAvdXNyL2RvYy88cGFja2FnZT4uCisgIAorICAqIGRwa2ctZGViKDgpIG1vdmVkIHRvIGRwa2ctZGViKDEpLgorCisgICogYmluYXJ5IHRhcmdldCBzcGxpdCBpbnRvIGJpbmFyeS1hcmNoIGFuZCBiaW5hcnktaW5kZXAgaW4gc291cmNlLgorICAqIGNoYW5nZWxvZyBlbnRyeSBmb3IgMS4yLjE0IGNvcGllZCBmcm9tIHRoYXQgKGZvcmtlZCkgcmVsZWFzZS4KKworIC0tIElhbiBKYWNrc29uIDxpYW5AY2hpYXJrLmNodS5jYW0uYWMudWs+ICBUaHUsIDIyIEF1ZyAxOTk2IDE1OjM2OjEyICswMTAwCisKK2Rwa2cgKDEuMy42KSBleHBlcmltZW50YWw7IHVyZ2VuY3k9bG93IChISUdIIGZvciBuZXcgc291cmNlIGZvcm1hdCkKKworICAqIGRwa2ctc291cmNlIG5vdyBoYXMgYnJva2VuIGFyZ3VtZW50IHVucGFyc2luZyBmb3IgdGFyLiAgKEJ1ZyM0MTk1LikKKworICAqIGRwa2ctZ2VuY29udHJvbCB3cml0ZXMgdG8gZGViaWFuL3RtcC9ERUJJQU4vY29udHJvbCBieSBkZWZhdWx0LgorICAqIGRwa2ctc2hsaWJkZXBzIHNjcmlwdCBhZGRlZC4KKworICAqIEJhY2sgdG8gb2xkIHNoIHVwZGF0ZS1yYy5kLCBhbmQgcmVtb3ZlZCBtYW5wYWdlLCBiZWNhdXNlIG5ldyBQZXJsCisgICAgdmVyc2lvbiBhbmQgdGhlIG1hbnBhZ2UgaGF2ZSBkaWZmZXJlbnQgc3ludGF4IGFuZCBzZW1hbnRpY3MuCisgICogdXBkYXRlLXJjLmQgcHJpbnRzIHVzYWdlIG1lc3NhZ2UgZm9yIG1pc3NpbmcgdGVybWluYWwgYC4nLiAgKEJ1ZyM0MTIyLikKKworICAqIFVzZSBybSAtcmYgaW5zdGVhZCBvZiBqdXN0IHJtIC1yIGluIGRwa2ctZGViIC0taW5mbyAmYy4gIChCdWcjNDIwMC4pCisKKyAgKiBBZGRlZCBzdXBwb3J0IGZvciBJbnN0YWxsZWQtU2l6ZSB0byBkcGtnLWdlbmNvbnRyb2wsIGFuZCBkb2N1bWVudGVkLgorICAqIFNvdXJjZSBwYWNrYWdpbmcgc3Vic3RpdHV0aW9uIHZhcmlhYmxlcyBhbmQgbmFtZSBzeW50YXggcmF0aW9uYWxpc2VkLgorICAqIGRwa2ctc291cmNlIHNjcmlwdHMnIHVzYWdlIG1lc3NhZ2VzIGltcHJvdmVkIHNsaWdodGx5LgorICAqIGRwa2ctc291cmNlIHdvcmtzIHdpdGggbm9uLWVtcHR5IHNlY29uZCAob3JpZyBkaXIpIGFyZ3VtZW50LgorCisgICogQWRkZWQgcmF0aW9uYWxlIGZvciBjb3B5cmlnaHQgcG9saWN5IHRvIG1hbnVhbC4KKyAgKiBNb3JlIGRldmVsb3BlcnMnIFBHUCBrZXlzLgorICAqIENvbnRyb2wgZGF0YWJhc2UgaGFuZGxpbmcgY2xlYW51cHMgKHVzdS4gU291cmNlIGZpZWxkIGJsYW5rZWQpLgorCisgLS0gSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuY2h1LmNhbS5hYy51az4gIFR1ZSwgMjAgQXVnIDE5OTYgMTU6Mzk6NTggKzAxMDAKKworZHBrZyAoMS4zLjUpIGV4cGVyaW1lbnRhbDsgdXJnZW5jeT1sb3cgKGhpZ2ggZm9yIGRlYmlhbi1jaGFuZ2Vsb2ctbW9kZSkKKworICAqIDgyMi1kYXRlIHNjcmlwdCBpbmNsdWRlZC4gIChCdWcjNDEzNi4pCisgICogZGViaWFuLWNoYW5nZWxvZy1hZGQtdmVyc2lvbiB3b3JrcyBvbiBlbXB0eSBmaWxlLgorICAqIGRlYmlhbi1jaGFuZ2Vsb2ctbW9kZSBtb2RlLWhlbHAgd29ya3MgcHJvcGVybHkuCisKKyAgKiBkcGtnLXNvdXJjZSB0ZWxscyBwYXRjaCBub3QgdG8gbWFrZSBudW1iZXJlZCBiYWNrdXBzLiAgKEJ1ZyM0MTM1LikKKworICAqIE1vcmUgZGV2ZWxvcGVycycgUEdQIGtleXMuCisgICogUGFyYWdyYXBoIG9uIHV1Y3AgLWEgYW5kIC1nIG9wdGlvbnMgcmVtb3ZlZCBmcm9tIHBvbGljeSBtYW51YWwuCisKKyAtLSBJYW4gSmFja3NvbiA8aWFuQGNoaWFyay5jaHUuY2FtLmFjLnVrPiAgV2VkLCAxNCBBdWcgMTk5NiAxNDo0Njo0NyArMDEwMAorCitkcGtnICgxLjMuNCkgZXhwZXJpbWVudGFsOyB1cmdlbmN5PWxvdworCisgICogUmVtb3ZlZCBkZWJ1Z2dpbmcgb3V0cHV0IGZyb20gZHBrZy1zb3VyY2UgLXguICBPb3BzLgorICAqIFJlbW92ZWQgc2VjdGlvbiBvbiBzb3VyY2UgcGFja2FnZSBwZXJtaXNzaW9ucyBmcm9tIHBvbGljeSBtYW51YWwgLQorICAgIGRwa2ctc291cmNlIG5vdyBzb3J0cyB0aGVzZSBvdXQuCisKKyAtLSBJYW4gSmFja3NvbiA8aWFuQGNoaWFyay5jaHUuY2FtLmFjLnVrPiAgU3VuLCAxMSBBdWcgMTk5NiAxMzoyNTo0NCArMDEwMAorCitkcGtnICgxLjMuMykgZXhwZXJpbWVudGFsOyB1cmdlbmN5PWxvdworCisgICogUHJvZ3JhbW1lcnMnICYgcG9saWN5IG1hbnVhbHMgaW4gc291cmNlIHRyZWU7IEhUTUwgaW4gL3Vzci9kb2MvZHBrZy4KKyAgKiBPbGQgZ3VpZGVsaW5lcy5pbmZvIGFuZCB0ZXh0IGZpbGVzIGluIC91c3IvZG9jL2Rwa2cgcmVtb3ZlZC4KKworICAqIGRwa2ctc291cmNlIHNldHMgcGVybWlzc2lvbnMgb24gZXh0cmFjdGVkIGRlYmlhbmlzZWQgc291cmNlIHRyZWUKKyAgICBhbmQgZG9lcyBub3QgY29weSBvd25lcnNoaXBzIG91dCBvZiBhcmNoaXZlIGV2ZW4gaWYgcnVubmluZyBhcyByb290LgorCisgICogRW1hY3MgbW9kZSBgZHBrZyBjaGFuZ2Vsb2cnIHJlbmFtZWQgdG8gYERlYmlhbiBjaGFuZ2Vsb2cnLgorICAqIERlZmF1bHQgY2hhbmdlbG9nIGZvcm1hdCByZW5hbWVkIGZyb20gYGRwa2cnIHRvIGBkZWJpYW4nLgorCisgICogZGViaWFuLWNoYW5nZWxvZy1tb2RlIHNldHMgZmlsbC1wcmVmaXggY29ycmVjdGx5LgorICAqIGRlYmlhbi1jaGFuZ2Vsb2ctbW9kZSB1cmdlbmNpZXMgZXhjZXB0IEhJR0ggbG93ZXJjYXNlIGJ5IGRlZmF1bHQuCisgICogZGViaWFuLWNoYW5nZWxvZy1tb2RlIGRpc3BsYXlzIGtleW1hcCBpbiBkb2Mgc3RyaW5nIGFuZCBzbyBtb2RlIGhlbHAuCisKKyAgKiBNb3JlIG1haW50YWluZXJzJyBQR1Aga2V5cy4KKworICAqIFJlbW92ZSBidWlsdCBjaGFuZ2Vsb2cgcGFyc2VycyB3aXRoIGBjbGVhbicgdGFyZ2V0IGluIHNvdXJjZS4KKworIC0tIElhbiBKYWNrc29uIDxpYW5AY2hpYXJrLmNodS5jYW0uYWMudWs+ICBTYXQsIDEwIEF1ZyAxOTk2IDIzOjM1OjUxICswMTAwCisKK2Rwa2cgKDEuMy4yKSBleHBlcmltZW50YWw7IHVyZ2VuY3k9TE9XIChNRURJVU0gZm9yIGRwa2ctc291cmNlKQorCisgICogRmFzdGVyIHVwZGF0ZS1yYy5kIHdyaXR0ZW4gaW4gUGVybCBieSBNaXF1ZWwgdmFuIFNtb29yZW5idXJnLgorICAqIGluc3RhbGwtaW5mbyAtLXRlc3QgZG9lc24ndCBsb2NrIGRpci4gIChCdWcjMzk5MiwgdGhhbmtzIERhcnJlbikuCisKKyAgKiBkcGtnLXNvdXJjZSBkb2Vzbid0IGJyZWFrIGluIHRoZSBwcmVzZW5jZSBvZiBhbnkgc3ltbGlua3MuCisKKyAgKiBNb3JlIGRldmVsb3BlcnMnIGtleXMgYWRkZWQgdG8gZG9jL2RldmVsb3Blci1rZXlzLnBncC4KKyAgKiBJbnN0YWxsIGRldmVsb3BlcnMnIGtleXMgaW4gL3Vzci9kb2MvZHBrZy9kZXZlbG9wZXIta2V5cy5wZ3AuCisgICogZHBrZy1zb3VyY2UgZG9jdW1lbnRzIHVuZGVmaW5lZCBzdWJzdHZhciBiZWhhdmlvdXIuCisgICogbWlub3IgZGViaWFuL3J1bGVzIGNsZWFudXBzLgorCisgLS0gSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuY2h1LmNhbS5hYy51az4gIFNhdCwgMTAgQXVnIDE5OTYgMDI6MTM6NDcgKzAxMDAKKworZHBrZyAoMS4zLjEpIGV4cGVyaW1lbnRhbDsgdXJnZW5jeT1MT1cKKworICAqIG1hbnBhZ2UgZm9yIGRwa2ctc291cmNlIGV0IGFsIG5vdyBhdmFpbGFibGUuCisgICogZHBrZy1jaGFuZ2Vsb2ctbW9kZS5lbCBpbnN0YWxsZWQgaW4gc2l0ZS1saXNwLCBidXQgc3RpbGwgbm8gYXV0b2xvYWQuCisKKyAgKiBkcGtnLXNvdXJjZSBwcmludHMgY29ycmVjdCBzdHJpbmcgZm9yIG5vdC11bmRlcnN0b29kIHRhciAtdnZ0IG91dHB1dC4KKyAgKiBkcGtnLXNvdXJjZSBwYXJzaW5nIG9mIHRhciAtdnZ0IG91dHB1dCBtYWRlIG1vcmUgcm9idXN0LgorCisgICogZHBrZy1idWlsZHBhY2thZ2UgcHJpbnRzIHVzYWdlIG1lc3NhZ2Ugb24gdXNhZ2UgZXJyb3IuCisgICogZHBrZy1nZW5jb250cm9sIGNhbiBwcmludCB1c2FnZSBtZXNzYWdlLgorICAqIC1UPHZhcmxpc3RmaWxlPiBvcHRpb24gYWRkZWQgdG8gZHBrZy1zb3VyY2UuCisgICogRGVzY3JpcHRpb24gb2YgLWY8ZmlsZXNsaXN0ZmlsZT4gY29ycmVjdGVkIGluIGRwa2ctZGlzdGFkZGZpbGUgdXNhZ2UuCisgICogLW08bWFpbnRhaW5lcj4gc3lub3BzaXMgY2hhbmdlZCBpbiBkcGtnLWdlbmNoYW5nZXMgdXNhZ2UuCisgICogZGViaWFuL3N1YnN0dmFycyBtYXkgbm93IGNvbnRhaW4gYmxhbmsgbGluZXMuCisKKyAtLSBJYW4gSmFja3NvbiA8aWFuQGNoaWFyay5jaHUuY2FtLmFjLnVrPiAgVGh1LCA4IEF1ZyAxOTk2IDAyOjM2OjA0ICswMTAwCisKK2Rwa2cgKDEuMy4wKSBleHBlcmltZW50YWw7IHVyZ2VuY3k9TE9XCisKKyAgKiBkcGtnIGNhbiBpbnN0YWxsIG5hbWVkIHBpcGVzLgorICAqIGRwa2ctZGViIHN1cHBvcnRzIGRpcmVjdG9yeSBmb3IgZGVzdGluYXRpb24sIGdlbmVyYXRlcyBmaWxlbmFtZS4KKyAgKiBkcGtnLXtzb3VyY2UsZ2VuY29udHJvbCxnZW5jaGFuZ2VzLHBhcnNlY2hhbmdlbG9nLGJ1aWxkcGFja2FnZX0sCisgICAgZHBrZy1kaXN0YWRkZmlsZSBzY3JpcHRzIHRvIHN1cHBvcnQgbmV3IHNvdXJjZSBwYWNrYWdlIGZvcm1hdC4KKyAgKiBhLm91dCBidWlsZCBubyBsb25nZXIgc3VwcG9ydGVkLgorICAqIENoYW5nZWQgdG8gbmV3IHNvdXJjZSBwYWNrYWdlIGZvcm1hdC4KKworIC0tIElhbiBKYWNrc29uIDxpYW5AY2hpYXJrLmNodS5jYW0uYWMudWs+ICBUdWUsIDYgQXVnIDE5OTYgMDI6MzE6NTIgKzAxMDAKKworCitkcGtnICgxLjIuMTQpIHN0YWJsZSB1bnN0YWJsZTsgdXJnZW5jeT1NRURJVU0KKworICAqIGRzZWxlY3QgKy8tL18vPSBvbiBsaW5lcyBmb3IgYWxsIGJyb2tlbiwgbmV3LCBsb2NhbCBvciB3aGF0ZXZlcgorICAgIHBhY2thZ2VzIGRvIG5vdCBhZmZlY3QgX2FsbF8gcGFja2FnZXMuICAoQnVnIzQxMjkuKQorCisgICogTk9URSAtIFRIRSBISVNUT1JZIEZPUktTIEhFUkUuICAxLjIuMTQncyBjaGFuZ2UgYXBwZWFycyBpbiAxLjMuNy4KKworIC0tIElhbiBKYWNrc29uIDxpYW5AY2hpYXJrLmNodS5jYW0uYWMudWs+ICBUaHUsIDIyIEF1ZyAxOTk2IDAwOjM5OjUyICswMTAwCisKKworZHBrZyAoMS4yLjEzKSB1bnN0YWJsZTsgdXJnZW5jeT1MT1cKKworICAqIGRwa2cgLS1zZWFyY2ggcHJvZHVjZXMgY29ycmVjdCBvdXRwdXQgZm9yIGRpdmVyc2lvbnMuCisgICogZHBrZy1uYW1lIHJlbW92ZSB1bm5lY2Vzc2FyeSBhcmNoIG1pc3Npbmcgd2FybmluZy4gIChCdWcjMzQ4Mi4pCisKKyAgKiBkcGtnLWRlYiAtLWJ1aWxkIHdhcm5zIGFib3V0IHVwcGVyY2FzZSBjaGFycyBpbiBwYWNrYWdlIG5hbWUuCisKKyAgKiBkcGtnLXNjYW5wYWNrYWdlcyBlcnJvciBtZXNzYWdlcyB1cGRhdGVkIGFuZCBtYW5wYWdlIHByb3ZpZGVkCisgICAgKHRoYW5rcyB0byBNaWNoYWVsIFNoaWVsZHMpLgorICAqIGRwa2ctc2NhbnBhY2thZ2VzIHdhcm5zIGFib3V0IHNwdXJpb3VzIGVudHJpZXMgaW4gb3ZlcnJpZGUgZmlsZS4KKyAgKiBkcGtnLXNjYW5wYWNrYWdlcyBgbm92ZXJyaWRlJyByZW5hbWVkIHRvIGBvdmVycmlkZScgZXZlcnl3aGVyZS4KKyAgKiBkcGtnLXNjYW5wYWNrYWdlcyBmaWVsZCBvcmRlcmluZyB0byBwdXQgQXJjaGl0ZWN0dXJlIGhpZ2hlci4KKyAgKiBkcGtnLXNjYW5wYWNrYWdlcyBmaWVsZCBuYW1lcyBjYXBpdGFsaXNlZCBhcHByb3ByaWF0ZWx5LgorICAqIGRwa2ctc2NhbnBhY2thZ2VzIGludm9rZXMgZmluZCB3aXRoIC1mb2xsb3cuICAoQnVnIzM5NTYuKQorCisgICogZ3VpZGVsaW5lcyBzYXkgIyEvdXNyL2Jpbi9wZXJsIGV2ZXJ5d2hlcmUsIG5vdCAjIS9iaW4vcGVybC4KKyAgKiBNYW55IGRldmVsb3BlcnMnIFBHUCBrZXlzIGFkZGVkLgorCisgICogY29uZmlndXJlIHNjcmlwdCB1c2VzICR7Q0N9IGluc3RlYWQgb2YgJChDQykgKGFnYWluIDotLykuCisgICogZGV2ZWxvcGVycycga2V5cyBpbmNsdWRlZCBpbiBkcGtnIHNvdXJjZSB0cmVlIGFuZCAvdXNyL2RvYy4KKyAgKiBjb25maWd1cmUgcmVtYWRlIHVzaW5nIGF1dG9jb25mIDIuMTAtMyAod2FzIDIuNC0xKS4KKworIC0tIElhbiBKYWNrc29uIDxpYW5AY2hpYXJrLmNodS5jYW0uYWMudWs+ICBUaHUsIDEgQXVnIDE5OTYgMDI6NDY6MzQgKzAxMDAKKworZHBrZyAoMS4yLjEyKTsgcHJpb3JpdHk9TE9XCisKKyAgKiBkcGtnIC0tc2VhcmNoIGFuZCAtLWxpc3QgdW5kZXJzdGFuZCBhbmQgY29tbWVudCBvbiBkaXZlcnNpb25zLgorICAqIGRwa2ctZGl2ZXJ0IGRpc3BsYXlzIGRpdmVyc2lvbnMgbW9yZSBpbnRlbGxpZ2libHkuCisKKyAgKiBHdWlkZWxpbmVzIGFyZSBzb21ld2hhdCBjbGVhcmVyIGFib3V0IGRlc2NyaXB0aW9ucy4KKyAgKiBkZWIoNSkgZGVzY3JpYmVzIG5ldyBmb3JtYXQ7IG9sZCBtb3ZlZCB0byBkZWItb2xkKDUpLiAgKEJ1ZyMzNDM1LikKKyAgKiBkZWItY29udHJvbCg1KSBjYXJyaWVzIGEgd2FybmluZyBhYm91dCBiZWluZyBvdXQgb2YgZGF0ZS4KKworICAqIEFkZGVkIDE5OTYgdG8gZHNlbGVjdCB2ZXJzaW9uL2NvcHlyaWdodC4KKworIC0tIElhbiBKYWNrc29uIDxpYW5AY2hpYXJrLmNodS5jYW0uYWMudWs+ICBUaHUsIDQgSnVsIDE5OTYgMTU6MDQ6NDkgKzAxMDAKKworZHBrZyAoMS4yLjExKTsgcHJpb3JpdHk9TUVESVVNCisKKyAgKiBkc2VsZWN0IGhhZCBkZXBlbmRlbmN5IGJ1ZyBpZiBpbnN0YWxsZWQgcGFja2FnZSBuZXdlciB0aGFuIGF2YWlsLgorICAqIEFkZGVkIGByZXBsYWNlcycgdG8gZHNlbGVjdCdzIGxpc3Qgb2YgcGFja2FnZSByZWxhdGlvbnNoaXAgc3RyaW5ncy4KKworIC0tIElhbiBKYWNrc29uIDxpYW5AY2hpYXJrLmNodS5jYW0uYWMudWs+ICBNb24sIDEgSnVsIDE5OTYgMDI6NTE6MTEgKzAxMDAKKworZHBrZyAoMS4yLjEwKTsgcHJpb3JpdHk9TUVESVVNCisKKyAgKiBGaXhlZCBidWcgaW4gb2xkLXN0eWxlIHZlcnNpb24vcmV2aXNpb24gbnVtYmVyIHBhcnNpbmcuICAoQnVnIzM0NDAuKQorCisgLS0gSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuY2h1LmNhbS5hYy51az4gIFNhdCwgMjkgSnVuIDE5OTYgMDM6MzI6NDUgKzAxMDAKKworZHBrZyAoMS4yLjkpOyBwcmlvcml0eT1NRURJVU0KKworICAqIEZpeGVkIHN0YXR1cyBkYXRhYmFzZSB1cGRhdGVzIHJlYWRpbmcgYnVnLgorICAqIGBTZXR0aW5nIHVwJyBtZXNzYWdlIGluY2x1ZGVzIHZlcnNpb24gbnVtYmVyLgorICAqIGBleGlzdGVuY2UgY2hlY2snIG1lc3NhZ2UgY2hhbmdlZCB0byBzYXkgYGNhbm5vdCBhY2Nlc3MgYXJjaGl2ZScuCisKKyAtLSBJYW4gSmFja3NvbiA8aWFuQGNoaWFyay5jaHUuY2FtLmFjLnVrPiAgVGh1LCAyNyBKdW4gMTk5NiAxMzozOTozNiArMDEwMAorCitkcGtnICgxLjIuOCk7IHByaW9yaXR5PUxPVworCisgICogZHBrZyAtLXJlY29yZC1hdmFpbCBwdXRzIGRhdGEgaW4gU2l6ZSBmaWVsZC4KKyAgKiBzdHJpcCAvIGZvciBybWRpcigyKSBpbiBjbGVhbnVwIHRvIHdvcmsgYXJvdW5kIGtlcm5lbCBidWcuICAoQnVnIzMyNzUuKQorICAqIGRwa2ctc3BsaXQgLS1tc2RvcyBubyBsb25nZXIgYWxsb3dzIGAtJyBhbmQgb3RoZXIgY2hhcnMgaW4gZmlsZW5hbWVzLgorCisgICogbWFudWFsIGRwa2ctc3BsaXQoOCkgd3JpdHRlbi4KKyAgKiBkcGtnLXNwbGl0IG1pbm9yIHR5cG8gaW4gLS1hdXRvIHVzYWdlIGVycm9yIG1lc3NhZ2UgZml4ZWQuCisgICogZHBrZy1kZWIoOCkgdmVyeSBtaW5vciBjb3NtZXRpYyBmaXggdG8gLS1idWlsZCBvcHRpb24uCisKKyAtLSBJYW4gSmFja3NvbiA8aWFuQGNoaWFyay5jaHUuY2FtLmFjLnVrPiAgVHVlLCAyNSBKdW4gMTk5NiAwMzowMDoxNCArMDEwMAorCitkcGtnICgxLjIuNyk7IHByaW9yaXR5PUxPVworCisgICogZHBrZy1zY2FucGFja2FnZXMgc3ludGF4IGVycm9ycyBmaXhlZC4KKworIC0tIElhbiBKYWNrc29uIDxpYW5AY2hpYXJrLmNodS5jYW0uYWMudWs+ICBGcmksIDIxIEp1biAxOTk2IDA0OjEwOjM4ICswMTAwCisKK2Rwa2cgKDEuMi42KTsgcHJpb3JpdHk9TUVESVVNCisKKyAgKiBORlMsIENEUk9NIGFuZCBwYXJ0aXRpb24gZHNlbGVjdCBtZXRob2RzIGluY2x1ZGUgbW91bnRwb2ludAorICAgIGluIHBhdGhzIGdpdmVuIHRvIGRwa2cgaW4gW0ldaW5zdGFsbCwgc28gdGhleSBzaG91bGQgbm93IHdvcmsuCisKKyAgKiBSZW1vdmVkIHNvbWUgbGVmdG92ZXIgZmlsZXMgZnJvbSBzb3VyY2UgdHJlZS4KKworIC0tIElhbiBKYWNrc29uIDxpYW5AY2hpYXJrLmNodS5jYW0uYWMudWs+ICBXZWQsIDEyIEp1biAxOTk2IDE0OjM1OjE5ICswMTAwCisKK2Rwa2cgKDEuMi41KTsgcHJpb3JpdHk9TUVESVVNCisKKyAgKiBBbGxvdywgYnV0IGRvIG5vdCBjcmVhdGUsIHBhY2thZ2VzIGluIGhhbGYtaW5zdGFsbGVkIHN0YXRlCisgICAgd2l0aCBubyB2ZXJzaW9uIG51bWJlci4gIChBYXJnaC4pCisKKyAtLSBJYW4gSmFja3NvbiA8aWFuQGNoaWFyay5jaHUuY2FtLmFjLnVrPiAgTW9uLCAxMCBKdW4gMTk5NiAwNDo1NTo0MyArMDEwMAorCitkcGtnICgxLjIuNCk7IHByaW9yaXR5PU1FRElVTQorCisgICogTmV3IGRwa2ctbmFtZSBmcm9tIEVyaWNrICg8cGtnPl88dmVyc2lvbj5fPGFyY2g+LmRlYiBjb252ZW50aW9uKS4KKyAgKiBEaXNhcHBlYXJlZCBwYWNrYWdlcyBjYW4ndCBvd24gY29uZmZpbGVzIGFueSBtb3JlICEgIChCdWcjMzIxNC4pCisgICogaW5zdGFsbC1pbmZvIGNyZWF0ZXMgTWlzY2VsbGFuZW91cyBzZWN0aW9ucyB3aXRoIGEgbmV3bGluZQorICAgIGZvbGxvd2luZyB0aGUgaGVhZGluZy4gIChCdWcjMzIxOC4pCisgICogY2xlYW51cC1pbmZvIHNjcmlwdCBpbnN0YWxsZWQgaW4gL3Vzci9zYmluOyBjYWxsZWQgYXMgYXBwcm9wcmlhdGUKKyAgICBieSBwb3N0aW5zdC4gIFRoYW5rcyB0byBLaW0tTWluaCBLYXBsYW4uICAoQnVnIzMxMjUuKQorICAqIEFsbG93IHN1cGVyc2VkZWQgRXNzZW50aWFsIHBhY2thZ2VzIHRvIGJlIHB1cmdlZCBhZnRlciB0aGV5J3ZlCisgICAgYmVlbiByZW1vdmVkIChjbGVhciB0aGUgRXNzZW50aWFsIGZsYWcgb24gcmVtb3ZhbCwgYW5kIGlnbm9yZSBpdAorICAgIG9uIHBhY2thZ2VzIHRoYXQgYXJlIGluIHN0YXRfY29uZmlnZmlsZXMpLgorCisgICogZHNlbGVjdCBkaXNrIG1ldGhvZHMgdW5kZXJzdGFuZCBgeScgYXMgd2VsbCBhcyBgeWVzJyBmb3IgdXNpbmcKKyAgICBkZXZlbG9wbWVudCB0cmVlLgorICAqIGRzZWxlY3QgZG9lc24ndCBtYWtlIHBhY2thZ2VzIGFwcGVhciBhcyBgbmV3JyBhZ2FpbiBpZiB1cGRhdGUKKyAgICBvZiBhdmFpbGFibGUgcGFja2FnZXMgZmFpbHMuCisgICogZHNlbGVjdCBwbGFjZXMgbWV0aG9kIHNlbGVjdGlvbiBjdXJzb3Igb3ZlciBvcHRpb24gbGFzdCBzZWxlY3RlZC4KKworICAqIGRwa2ctc2NhbnBhY2thZ2VzIGRvZXNuJ3QgZGllIHdoZW4gcmVwZWF0ZWQgcGFja2FnZXMgYXJlIGZvdW5kLgorICAqIGRwa2ctc2NhbnBhY2thZ2VzIGFsbG93cyBtYW55IG9sZCBtYWludGFpbmVycyAoYC8vJy1zZXBhcmF0ZWQpLgorCisgICogYFZlcnNpb24nIGZpZWxkIGlzIG5vdyBtYW5kYXRvcnkgKHNvbWUgb3BlcmF0aW9ucyBhbHJlYWR5CisgICAgd291bGRuJ3Qgd29yayByaWdodCBhbnl3YXkgaWYgaXQgd2FzJ3QgdGhlcmUpLgorCisgICogdXBkYXRlLXJjLmQoOCkgbm93IHNheXMgeW91IG11c3QgcmVtb3ZlIHRoZSBzY3JpcHQuICAoQnVnIzMyMTUuKQorICAqIGRwa2cgLS1mb3JjZS1oZWxwIHNheXMgdGhhdCAtLWZvcmNlLW92ZXJ3cml0ZSBpcyBvbiBieSBkZWZhdWx0LgorICAqIGRwa2ctZGViIG1hbnBhZ2UgcmV3cml0dGVuLgorICAqIGRlYmlhbi5SRUFETUUgKD0gL3Vzci9kb2MvY29weXJpZ2h0L2Rwa2cpIGVkaXRlZCBzbGlnaHRseS4KKworICAqIFNvbWUgZGF0YWJhc2UgcGFyc2luZyBncnVuZ2UgcmVtb3ZlZCAocGRiX3ByZWZlcnZlcnNpb24sICZjKS4KKyAgKiBTb3VyY2UgdHJlZSBkb2Mvc2dtbCBjb250YWlucyBzb21lIGVtYnJ5b25pYyBtYW51YWxzLgorICAqIExlZnRvdmVyIGZpbGVzIGluIGxpYiBkaXJlY3RvcnkgaW4gc291cmNlIHRyZWUgZGVsZXRlZC4KKworIC0tIElhbiBKYWNrc29uIDxpYW5AY2hpYXJrLmNodS5jYW0uYWMudWs+ICBNb24sIDEwIEp1biAxOTk2IDAzOjUyOjAxICswMTAwCisKK2Rwa2cgKDEuMi4zKTsgcHJpb3JpdHk9SElHSAorCisgICogaW5zdGFsbC1pbmZvIGRvZXNuJ3QgcmVwbGljYXRlIHNlY3Rpb24gaGVhZGluZ3MgKEJ1ZyMzMTI1LCAjMjk3MykuCisgICogTmV3IGRwa2ctbmFtZSBtYW5wYWdlIGJyb2tlbiBvZmYgZnJvbSBzY3JpcHQgKG9vcHMhKS4KKyAgKiBkc2VsZWN0IGhlbHAgc2NyZWVucyBtYWRlIGNvbnNpc3RlbnQgd2l0aCBuZXcgc3RyaW5ncywgZmxhZ3MsICZjLgorICAqIGRzZWxlY3QgZXJyb3IgZmxhZyBjb2x1bW4gbGFiZWxsZWQgRSAoRXJyb3IpLCBub3QgSCAoSG9sZCkuCisgICogYEVzY2FwZScgbm8gbG9uZ2VyIGJvdW5kIHRvIGBleGl0IGxpc3Qgd2l0aG91dCBzYXZpbmcnIGluIGRzZWxlY3QuCisKKyAtLSBJYW4gSmFja3NvbiA8aWFuQGNoaWFyay5jaHUuY2FtLmFjLnVrPiAgVHVlLCAyOCBNYXkgMTk5NiAwMjoxNDo1NyArMDEwMAorCitkcGtnICgxLjIuMik7IHByaW9yaXR5PU1FRElVTQorCisgICogRml4ZWQgZHNlbGVjdCBjb3JlZHVtcCBmb3VuZCBieSBFcmljayBCcmFuZGVyaG9yc3QgKHRoYW5rcykuCisgICogU29ydCBvYnNvbGV0ZSByZW1vdmVkIHBhY2thZ2VzIHNlcGFyYXRlbHksIG5vdCB1bmRlciBBdmFpbGFibGUuCisKKyAtLSBJYW4gSmFja3NvbiA8aWFuQGNoaWFyay5jaHUuY2FtLmFjLnVrPiAgVGh1LCAyMyBNYXkgMTk5NiAyMTozMTowNSArMDEwMAorCitkcGtnICgxLjIuMSk7IHByaW9yaXR5PU1FRElVTQorCisgICogYD0nIGtleSBpbiBkc2VsZWN0IHJlYWxseSBkb2VzIGBob2xkJyByYXRoZXIgdGhhbiBgdW5ob2xkJy4KKyAgKiBkc2VsZWN0IGRlcGVuZGVuY3kgcHJvY2Vzc2luZyBub3cgaW50ZXJhY3RzIGJldHRlciB3aXRoIGBob2xkJy4KKyAgKiBkc2VsZWN0IGBJJyBrZXkgKG5vdCBgaScpIG1vZGlmaWVzIGRpc3BsYXkgb2YgdGhlIGluZm8gd2luZG93LgorICAqIGRzZWxlY3Qgc2hvd3MgdW5hdmFpbGFibGUgcGFja2FnZXMgYXMgYmVpbmcgdW5hdmFpbGFibGUuCisgICogZHNlbGVjdCBtYWluIG1lbnUgaGVhZGluZ3MgYW5kIG1hbnkgb3RoZXIgc3RyaW5ncyBjaGFuZ2VkIHRvIHRyeSB0bworICAgIGRpc2NvdXJhZ2UgcGVvcGxlIGZyb20gZGVzZWxlY3RpbmcgZXZlcnkgcGFja2FnZSBhbmQgdXNpbmcgW1JdZW1vdmUuCisgICAgTm90YWJseSwgYHNlbGVjdCcgY2hhbmdlZCB0byBgbWFyaycgdGhyb3VnaG91dC4KKworICAqIGRzZWxlY3QgZGlzayBtZXRob2RzIG5vdyBwcmludCBhIGZldyBmZXdlciBkb3VibGUgc2xhc2hlcy4KKyAgKiBkc2VsZWN0IGRpc2sgYWNjZXNzIG1ldGhvZHMgd2lsbCBvZmZlciB0byB1c2UgZHBrZyAtLXJlY29yZC1hdmFpbAorICAgIHRvIHNjYW4gdGhlIGF2YWlsYWJsZSBwYWNrYWdlcywgaWYgbm8gUGFja2FnZXMgZmlsZSBpcyBmb3VuZC4KKworICAqIE5ldyBkcGtnIC0tY29tcGFyZS12ZXJzaW9ucyBvcHRpb24sIGZvciB0aGUgYmVuZWZpdCBvZiBzY3JpcHRzICZjLgorICAqIE5ldyBkcGtnIC0tY2xlYXItYXZhaWwgb3B0aW9uIGZvcmdldHMgYWxsIGF2YWlsYWJsZSBwYWNrYWdlcyBpbmZvLgorICAqIE5ldyBkcGtnIC0tcHJpbnQtYXZhaWwgb3B0aW9uLCBwcmludHMgYGF2YWlsYWJsZScgZGF0YSAoZnJvbSBQYWNrYWdlcywgJmMpLgorICAqIGRwa2cgdXNhZ2UgbWVzc2FnZSBpcyBtb3JlIGluZm9ybWF0aXZlLCBidXQgbm8gbG9uZ2VyIGZpdHMgb24gc2NyZWVuLgorICAqIGRwa2cgLS1hdmFpbCBvcHRpb24gcmVuYW1lZCAtLXJlY29yZC1hdmFpbC4KKworICAqIExhdGVzdCBkcGtnLW5hbWUgZnJvbSBFcmljayBCcmFuZGVyaG9yc3QuCisgICogZHBrZy1zY2FucGFja2FnZXMgaGFzIG1vcmUgc2Vuc2libGUgcHJvYmxlbSByZXBvcnRpbmcuCisgICogcG9zdGluc3QgY29uZmlndXJlIG5vdyBnZXRzIG51bGwgYXJndW1lbnQgKG5vdCA8dW5rbm93bj4gb3IgPG5vbmU+KQorICAgIHdoZW4gdGhlcmUgaXMgbm8gcHJldmlvdXNseSBjb25maWd1cmVkIHZlcnNpb24uCisKKyAgKiBHdWlkZWxpbmVzIHNheSB0aGF0IHBvc3RpbnN0IGNvbmZpZ3VyZSBpcyBnaXZlbiBwcmV2aW91cyB2ZXJzaW9uLgorICAqIEd1aWRlbGluZXMgZG9uJ3QgcmVmZXIgdG8gbWFpbnRhaW5lci1zY3JpcHQtYXJncy50eHQgaW4gbWFpbiB0ZXh0LgorICAqIEd1aWRlbGluZXMgKFRleGluZm8gc291cmNlKSB1cGxvYWRlZCBzZXBhcmF0ZWx5LgorCisgICogT3duIHZlcnNpb24gb2Ygc3RyY3B5ICh1c2VkIGZvciBkZWJ1Z2dpbmcpIHJlbW92ZWQuCisgICogSW50ZXJmYWNlIHRvIGFjY2VzcyBtZXRob2RzIGRvY3VtZW50IGluIHNvdXJjZSAoZG9jL2RzZWxlY3QtbWV0aG9kcy50eHQpLgorICAqIGRlYmlhbi5idWlsZHNjcmlwdCBtb3ZlcyBjaGFuZ2VzIGZpbGUgaW50byBwYXJlbnQgZGlyZWN0b3J5LgorCisgLS0gSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuY2h1LmNhbS5hYy51az4gIFdlZCwgMjIgTWF5IDE5OTYgMDE6MjY6MzEgKzAxMDAKKworZHBrZyAoMS4yLjApOyBwcmlvcml0eT1NRURJVU0KKworICAqIGRzZWxlY3QgY2FuIHNvcnQgcGFja2FnZXMgYnkgYXZhaWxhYmxlIGFuZCBpbnN0YWxsZWQgc3RhdGVzLCBhbmQKKyAgICBkaXNwbGF5IHRoZWlyIHZlcnNpb24gbnVtYmVycy4gIChVc2UgTywgbyBhbmQgVi4pCisgICogSG9sZCBpcyBwcm9wZXJseSBpbnRlZ3JhdGVkIGFzIGEgcmVhbCBgd2FudGVkIHN0YXRlJywgcmF0aGVyIHRoYW4KKyAgICBhIHNlcGFyYXRlIGZsYWcuCisgICogRXBvY2hzIGluIHZlcnNpb24gbnVtYmVycyBpbXBsZW1lbnRlZCwgdXNpbmcgdGhlIHN5bnRheAorICAgIDxlcG9jaD46PHZlcnNpb24+LTxyZXZpc2lvbj4uICAoRXBvY2ggbm90IHVzdWFsbHkgZGlzcGxheWVkLikKKyAgKiBkc2VsZWN0IGRpc2sgbWV0aG9kIGlzIGFyY2hpdGVjdHVyZS1pbmRlcGVuZGVudCAodXNlcyBkcGtnJ3MKKyAgICBpbnN0YWxsYXRpb24gYXJjaGl0ZWN0dXJlLCBhbmQgbG9va3MgaW4gdGhlIHJpZ2h0IHBhcnQgb2YgdGhlIHRyZWUpLgorCisgICogZHNlbGVjdCBkaXNrIG1ldGhvZCBkb2Vzbid0IHRyeSB0byBzYXRpc2Z5IHRoZSBwcmVkZXBlbmRlbmNpZXMgb2YKKyAgICBwYWNrYWdlcyB3aGljaCBhcmUgb24gaG9sZC4KKyAgKiBGaXhlZCBjb25mbGljdC1yZWxhdGVkIGFzc2VydGlvbiBmYWlsdXJlLiAgKEJ1ZyMyNzg0LikKKyAgKiBjb25mZmlsZXMgZG8gbm90IGNhdXNlIGZpbGUgY29uZmxpY3RzIGlmIHRoZSBjb25mbGljdGluZyBwYWNrYWdlCisgICAgaXMgaW4gdGhlIGBjb25maWd1cmF0aW9uIG9ubHknIHN0YXRlLiAgKEJ1ZyMyNzIwLikKKyAgKiBGaXhlZCBtZXNzYWdlcyB3aGVyZSBhdmFpbGFibGUgdmVyc2lvbiBudW1iZXIgd2FzIHJlcG9ydGVkIGFzIGluc3RhbGxlZAorICAgIHZlcnNpb24gaW4gY29uZmxpY3QgYW5kIGRlcGVuZGVuY3kgbWVzc2FnZXMuICAoQnVnIzI2NTQsIEJ1ZyMyOTc0LikKKworICAqIE5ldyBmb3JtYXQgLmRlYiBmaWxlcyBhcmUgZGVmYXVsdCBldmVuIGZvciBhLm91dCBjb21waWxlcyAoYnV0CisgICAgYS5vdXQgdmVyc2lvbiBvZiBkcGtnIGlzIGluIG9sZCBmb3JtYXQpLgorICAqIENoYXJhY3RlcnMgQDo9IChhdCBjb2xvbiBlcXVhbHMpIGluIHBhY2thZ2UgbmFtZXMgbm93IHN0cmljdGx5CisgICAgZm9yYmlkZGVuIGV2ZXJ5d2hlcmUgKF8gaXMgc3RpbGwgYWxsb3dlZCBpbiBleGlzdGluZyBwYWNrYWdlcykuCisgICogTmV3IGRwa2cgLS1wcmludC1pbnN0YWxsYXRpb24tYXJjaGl0ZWN0dXJlIG9wdGlvbiBwcmludHMgaW5zdGFsbGF0aW9uCisgICAgYXJjaGl0ZWN0dXJlIChjb21waWxlZCBpbiksIHJhdGhlciB0aGFuIGJ1aWxkIGFyY2hpdGVjdHVyZSAoZGV0ZXJtaW5lZAorICAgIGZyb20gZ2NjIC1wcmludC1saWJnY2MtZmlsZS1uYW1lKS4KKworICAqIFZlcnNpb24gbWVzc2FnZXMgc2hvdyB3aGV0aGVyIGNvbXBpbGVkIGEub3V0IG9yIEVMRiAoaTM4NiBvbmx5KS4KKyAgKiBGaXhlZCBtaXNzaW5nIHNwYWNlIGluIHZlcnNpb24gc3ludGF4IGVycm9yIG1lc3NhZ2VzLgorICAqIE1hbnBhZ2UgZHBrZy44IGluc3RhbGxlZCB3aXRoIHdhcm5pbmcgYWJvdXQgaW5hY2N1cmFjeS4KKworICAqIEd1aWRlbGluZXMgZG9uJ3Qgc2F5IHRvIHN0b3AgYW5kIHJlc3RhcnQgZGFlbW9ucyBpbiBydW5sZXZlbHMgMjM0NTsKKyAgICBpbnN0ZWFkIHRoZXkgc2F5IHRvIHN0YXJ0IGluIDIzNDUgYW5kIHN0b3AgaW4gMDE2LgorICAqIEd1aWRlbGluZXMgYW5kIHZlcnNpb24gbWVzc2FnZXMgc2F5IGp1c3QgRGViaWFuIExpbnV4LgorICAqIEd1aWRlbGluZXMgdHlwbyBmaXggYCJzdG9wMicgPT4gYCJzdG9wIicuICAoQnVnIzI4NjcuKQorCisgICogZG9jL01ha2VmaWxlLmluIGNsZWFuIHByb3Blcmx5IGRlbGV0ZXMgdmFyaW91cyBndWlkZWxpbmVzLmluZm8qIGZpbGVzLgorCisgLS0gSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuY2h1LmNhbS5hYy51az4gIFRodSwgMTYgTWF5IDE5OTYgMDA6MDE6MjEgKzAxMDAKKworZHBrZyAoMS4xLjYpOyBwcmlvcml0eT1NRURJVU0KKworICAqIENoZWNrIHZpcnR1YWwgZGVwZW5kZW5jaWVzIHdoZW4gcmVtb3ZpbmcgKG91Y2ghIC0gdGhhbmtzIFNERS4pCisgICogRml4ZWQgYnVnIGluIGludGVybmFsIGRhdGFiYXNlIHZhbGlkaXR5IG1hbmFnZW1lbnQgdGhhdCBjb3VsZAorICAgIG1ha2UgZHNlbGVjdCBhbmQgZHBrZyBkdW1wIGNvcmUuICAoQnVnIzI2MTMuKQorICAqIEZpeGVkIHR3byBjb3JlZHVtcGluZyBidWdzIHdoZW4gdXNpbmcgbG9jYWwgZGl2ZXJzaW9ucy4gIChCdWcjMjgwNC4pCisgICogRml4ZWQgZGlzYXBwZWFyYW5jZSBvZiBvdmVyd3JpdHRlbiBwYWNrYWdlcy4gIChCdWcjMjY5Ni4pCisgICogaW5zdGFsbC1pbmZvIHdvbid0IG1vZGlmeSBkaXIgZmlsZSBiZWZvcmUgc3RhcnQgb2YgbWVudS4KKyAgKiBpbnN0YWxsLWluZm8gd2lsbCBjcmVhdGUgTWlzY2VsbGFuZW91cyBoZWFkaW5nIGlmIG5vIHNlY3Rpb25zIHlldC4KKworICAqIE9ubHkgYWxwaGFudW1zIGFuZCArLS4gYWxsb3dlZCBpbiBwYWNrYWdlIG5hbWVzIC0gZW5mb3JjZWQgYnkKKyAgICBkcGtnLWRlYiAtLWJ1aWxkIGFuZCBkb2N1bWVudGVkIGluIEd1aWRlbGluZXMuCisgICogZHNlbGVjdCBkb2Vzbid0IGRpc3BsYXkgcGFja2FnZXMgdW5sZXNzIHRoZXkgYXJlIGluc3RhbGxlZCwgc2VsZWN0ZWQKKyAgICBvciBhdmFpbGFibGUuCisgICogZHNlbGVjdCBkb2Vzbid0IHNob3cgc3B1cmlvdXMgc2VjdGlvbiBhbmQgcHJpb3JpdHkgaGVhZGluZ3MuCisgICogZHNlbGVjdCBoYXMgYSBmZXcgZXh0cmEga2V5YmluZGluZ3MgKGZyb20gTGVlIE9sZHMpLgorICAqIC0tZm9yY2UgbWVzc2FnZSBjaGFuZ2VkIHRvIGAtLWZvcmNlIGVuYWJsZWQnIHNvIHRoYXQgZGVmYXVsdCBpcyBPSy4KKworICAqIGRwa2ctbmFtZSBub3cgaW5jbHVkZXMgYXJjaGl0ZWN0dXJlIGNvbXBvbmVudCBpbiAuZGViIGZpbGVuYW1lLAorICAgIGFuZCB0cmFuc2xhdGVzIC0gaW4gcGFja2FnZSBuYW1lIHRvIF8uCisgICogLmRlYiBmaWxlIGhhcyBhcmNoaXRlY3R1cmUgY29tcG9uZW50IGluIGZpbGVuYW1lLgorCisgICogR3VpZGVsaW5lcyBjaGFuZ2VkIHRvIHNheSBQcmUtRGVwZW5kcyBpcyBmb3IgZXhwZXJ0cyBvbmx5LgorICAqIEd1aWRlbGluZXMgc2F5IHRvIHByb3ZpZGUgYSB1bmlkaWZmICgtdSkgcmF0aGVyIHRoYW4gYW4gb2xkIGNvbnRleHQgZGlmZi4KKyAgKiBHdWlkZWxpbmVzIHNheSA3NTUgcm9vdC5yb290IGZvciBzaGFyZWQgbGlicmFyaWVzLgorCisgLS0gSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuY2h1LmNhbS5hYy51az4gIFdlZCwgMSBNYXkgMTk5NiAwMDo0NzoyMiArMDEwMAorCitkcGtnICgxLjEuNSk7IHByaW9yaXR5PU1FRElVTSAoSElHSCBmb3IgZGl2ZXJzaW9ucyB1c2VycykKKworICAqIEZpeGVkIGNvcmVkdW1wIHdoZW4gdXNpbmcgZGl2ZXJzaW9ucy4gIChCdWcjMjYwMy4pCisgICogRml4ZWQgdHlwbyBpbiBkcGtnLWRpdmVydCB3aGljaCBjb3VsZCBsb3NlIGRpdmVyc2lvbnMuICAoQnVnIzI2NjIuKQorCisgICogLS1mb3JjZS1vdmVyd3JpdGUgaXMgdGhlIGRlZmF1bHQuCisgICogZGl2ZXJzaW9ucy50ZXh0IHByb3ZpZGVzIGJldHRlciBleGFtcGxlcy4KKworIC0tIElhbiBKYWNrc29uIDxpYW5AY2hpYXJrLmNodS5jYW0uYWMudWs+ICBXZWQsIDEwIEFwciAxOTk2IDEzOjU5OjMwICswMTAwCisKK2Rwa2cgKDEuMS40KTsgcHJpb3JpdHk9TUVESVVNCisKKyAgKiBBbGxvdyBvdmVyd3JpdGluZyBvZiBjb25mbGljdGluZyBwYWNrYWdlcyBiZWluZyByZW1vdmVkLiAgKEJ1ZyMyNjE0LikKKworICAqIGEub3V0IGNvbnRyb2wgZmlsZSBzYXlzIFByZS1EZXBlbmRzOiBsaWJjNCB8IGxpYmMuICAoQnVnIzI2NDAuKQorICAqIEVMRiBjb250cm9sIGZpbGUgYW5kIGxpYmMgZGVwZW5kZW5jaWVzIGNoYW5nZWQgdG8gdXNlIGZpbmFsaXNlZCBzY2hlbWUuCisgICogRUxGIGNvbnRyb2wgZmlsZSBhbmQgbGliYyBkZXBlbmRlbmNpZXMgZm9yIGkzODYgb25seS4gIChCdWcjMjYxNy4pCisKKyAgKiBHdWlkZWxpbmVzIHNheSB1c2Ugb25seSByZWxlYXNlZCBsaWJyYXJpZXMgYW5kIGNvbXBpbGVycy4KKyAgKiBJbnN0YWxsIHdpc2hsaXN0IGFzIC91c3IvZG9jL2Rwa2cvV0lTSExJU1QuCisgICogUmVtb3ZlIHNwdXJpb3VzIGVudHJpZXMgZm9yIEd1aWRlbGluZXMgaW4gaW5mbyBkaXIgZmlsZS4KKworICAqIGRwa2ctZGViIC0tYnVpbGQgY2hlY2tzIHBlcm1pc3Npb25zIG9uIGNvbnRyb2wgKERFQklBTikgZGlyZWN0b3J5LgorCisgICogU3BhY2VzIGluIGNvbnRyb2wgZmlsZSBmaWVsZHMgbm90IGNvcGllZCBieSBkcGtnLXNwbGl0LiAgKEJ1ZyMyNjMzLikKKyAgKiBTcGFjZXMgaW4gc3BsaXQgZmlsZSBwYXJ0IGNvbnRyb2wgZGF0YSBpZ25vcmUuICAoQnVnIzI2MzMuKQorCisgICogUG9ydGFiaWxpdHkgZml4ZXMsIGluY2x1ZGluZyBwYXRjaCBmcm9tIFJpY2hhcmQgS2V0dGxld2VsbC4KKyAgKiBGaXhlZCBtaW5vciBjb25maWd1cmUuaW4gYnVnIGNhdXNpbmcgbWFuZ2xlZCBHQ0MgLVcgb3B0aW9ucy4KKworIC0tIElhbiBKYWNrc29uIDxpYW5AY2hpYXJrLmNodS5jYW0uYWMudWs+ICBUaHUsIDQgQXByIDE5OTYgMDE6NTg6NDAgKzAxMDAKKworZHBrZyAoMS4xLjMpOyBwcmlvcml0eT1MT1cKKworICAqIGRzZWxlY3QgZGlzayBtZXRob2RzIHN1cHBvcnQgUHJlLURlcGVuZHMgaW5zdGFsbGF0aW9uIG9yZGVyaW5nLgorICAqIFdoZW4gZHBrZyBmYWlscyBhbmQgLS1hdXRvLWRlY29uZmlndXJlIHdvdWxkIGhlbHAgaXQgc2F5cyBzby4KKyAgKiBkcGtnIC0tc2VhcmNoIG91dHB1dCBsaXN0cyBzZXZlcmFsIHBhY2thZ2VzIHdpdGggc2FtZSBmaWxlIG9uIG9uZSBsaW5lLgorICAqIEltcHJvdmVkIGRwa2cgdXNhZ2UgbWVzc2FnZSBzb21ld2hhdC4KKworICAqIGRwa2ctZGViIC0tYnVpbGQgY2hlY2tzIHBlcm1pc3Npb25zIGFuZCB0eXBlcyBvZiBtYWludGFpbmVyIHNjcmlwdHMuCisgICogZHBrZy1kZWIgLS1idWlsZCB0cmVhdHMgbWlzc3BlY2lmaWVkIGNvbmZmaWxlcyBhcyBlcnJvciwgbm90IHdhcm5pbmcuCisgICogZHBrZyAtLXByaW50LWFyY2hpdGVjdHVyZSBwcmludHMgY29tcGlsZXIncyBhcmNoaXRlY3R1cmUgd2hpbGUKKyAgICBkcGtnIC0tdmVyc2lvbiAoJmMpIHByaW50IHN5c3RlbSdzIGFyY2ggKHRoaXMgdG8gaGVscCBjcm9zcy1jb21waWxpbmcpLgorICAqIE1vcmUgbWlub3IgZ3VpZGVsaW5lcyBjaGFuZ2VzLCBpbmNsdWRpbmcgZGlyIGVudHJ5IGZpeHVwLgorCisgICogY29uZmlndXJlIHNjcmlwdCBjYWNoZXMgbW9yZSB2YWx1ZXMuCisgICogQ2hhbmdlZCBtYWludGFpbmVyIGVtYWlsIGFkZHJlc3MgdG8gaWFuQGNoaWFyay5jaHUuY2FtLmFjLnVrLgorCisgLS0gSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuY2h1LmNhbS5hYy51az4gIFNhdCwgMTYgTWFyIDE5OTYgMTk6MTg6MDggKzAwMDAKKworZHBrZyAoMS4xLjIpOyBwcmlvcml0eT1MT1cKKworICAqIFBhY2thZ2luZyBndWlkZWxpbmVzIGluc3RhbGxlZCBwcm9wZXJseSAoYW5kIGFzIGd1aWRlbGluZXMKKyAgICByYXRoZXIgdGhhbiBkZWJpYW4tZ3VpZGVsaW5lcykuCisgICogRUxGIHZlcnNpb24gaGFzIG1vcmUgY2hlY2tzIHRvIHN0b3AgeW91IHdyZWNraW5nIHlvdXIgZHBrZyBpbnN0YWxsYXRpb24uCisgICogZHNlbGVjdCBkaXNrIG1ldGhvZHMgbm93IGxvb2sgZm9yIGEgYGxvY2FsJyB0cmVlIGFzIHdlbGwsIGZvcgorICAgIHBlb3BsZSB3aG8gd2FudCBsb2NhbGx5LWF2YWlsYWJsZSBzb2Z0d2FyZSBvZiB2YXJpb3VzIGtpbmRzLgorICAqIGRwa2ctZGl2ZXJ0IGhhcyBkZWJ1Z2dpbmcgbWVzc2FnZSByZW1vdmVkLgorICAqIE1pbm9yIGd1aWRlbGluZXMgY2hhbmdlcy4KKworICAqIFZhcmlvdXMgbWFrZWZpbGUgY2xlYW51cHMsIG1haW5seSB0byBkbyB3aXRoIEVMRiB2cy4gYS5vdXQgc3VwcG9ydC4KKyAgKiBkZWJpYW4ucnVsZXMgY2xlYW5zIG91dCB+IGZpbGVzIGl0c2VsZiwgYXMgd2VsbCBhcyBjYWxsaW5nIG1ha2UgY2xlYW4uCisgICogZGViaWFuLnJ1bGVzIG5hbWVzIC5ub25kZWJiaW4udGFyLmd6IGZpbGUgRUxGIHRvbywgaWYgYXBwcm9wcmlhdGUuCisKKyAtLSBJYW4gSmFja3NvbiA8aXdqMTBAY3VzLmNhbS5hYy51az4gIFRodSwgMTQgTWFyIDE5OTYgMDM6Mzg6MjkgKzAwMDAKKworZHBrZyAoMS4xLjFlbGYpOyBwcmlvcml0eT1MT1cKKworICAqIEFkZGVkIC91c3IvbGliL2Rwa2cvZWxmLWV4ZWN1dGFibGVzLW9rIGFuZCBlbGYtaW4ta2VybmVsLgorICAqIFJlcGxhY2VzIGZpZWxkIG5vdyBhbGxvd3MgYXV0b21hdGljIHJlbW92YWwgb2YgY29uZmxpY3RpbmcgcGFja2FnZXMuCisgICogUmVwbGFjZXMgZmllbGQgbm93IHJlcXVpcmVkIHRvIG92ZXJ3cml0ZSBvdGhlciBwYWNrYWdlcycgZmlsZXMuCisgICogQXJjaGl0ZWN0dXJlIGZpZWxkLCBhbmQgZHBrZyAtLXByaW50LWFyY2hpdGVjdHVyZSwgc3VwcG9ydGVkLgorICAqIGJ1aWxkIG5ldyBmb3JtYXQgYXJjaGl2ZXMgYnkgZGVmYXVsdCB3aGVuIGNvbXBpbGVkIHdpdGggRUxGIGNvbXBpbGVyLgorCisgICogc3ltbGlua3MgYXJlIG5vdyBpbnN0YWxsZWQgYXRvbWljYWxseSAoZ29vZCBmb3Igc2hhcmVkIGxpYnJhcmllcykuCisgICogY3JlYXRlIC92YXIvbGliL2Rwa2cvZGl2ZXJzaW9ucyBpbiBwb3N0aW5zdCBpZiBuZWNlc3NhcnkgKEJ1ZyMyNDY1LikKKyAgKiBQcmUtRGVwZW5kcyBub3cgY29ycmVjdGx5IGZhaWxzIGlmIHBhY2thZ2UgbmV2ZXIgY29uZmlndXJlZC4KKyAgKiBkc2VsZWN0IGRpc2sgbWV0aG9kcyBtb3VudCB3aXRoIC1vIG5vc3VpZCxub2Rldi4KKyAgKiB1cGRhdGUtcmMuZCBkZWZhdWx0cyBkb2Vzbid0IGFkZCBib3RoIEsgYW5kIFMgaW4gYW55IG9uZSBydW5sZXZlbDsKKyAgICBkcGtnIHBvc3RpbnN0IGZpeGVzIHVwIHRoaXMgc2l0dWF0aW9uIGlmIGl0IHNlZXMgaXQuCisKKyAgKiBBc3NvcnRlZCBmaXh1cHMgdG8gdGhlIEd1aWRlbGluZXMsIHdoaWNoIGFyZSBub3cgaW4gb25lIHBpZWNlLgorICAqIGRwa2cgLS1saXN0IHByaW50cyB2ZXJzaW9uIHN0cmluZyBpbiBvbmUgcGllY2UuCisgICogZHBrZy1zY2FucGFja2FnZXMgZG9lc24ndCBwcm9kdWNlIG5vdGljZSBvbiBvdXRwdXQgd2l0aCBsaXN0IG9mCisgICAgcGFja2FnZXMgd2l0aCBTZWN0aW9uIGFuZC9vciBQcmlvcml0eSBjb250cm9sIGZpbGUgZmllbGRzLgorCisgICogY29udHJvbCBmaWxlIGFuZCBkZWJpYW4ucnVsZXMgd29yayBib3RoIGZvciBFTEYgYW5kIG5vbi1FTEYgY29tcGlsZXMuCisgICogbW9zdCBmaWxlcyBjb21waWxlZCB3aXRoIC1PMiAoLU8zIG9ubHkgZm9yIHNvbWUgY3JpdGljYWwgZmlsZXMpIC0KKyAgICB0aGlzIGZpeGVzIEVMRiBidWlsZC4KKworIC0tIElhbiBKYWNrc29uIDxpd2oxMEBjdXMuY2FtLmFjLnVrPiAgTW9uLCAxMSBNYXIgMTk5NiAwNDoyNToyOCArMDAwMAorCitkcGtnICgxLjEuMCk7IHByaW9yaXR5PUxPVworCisgICogZHBrZyBzdXBwb3J0cyBQcmUtRGVwZW5kcy4KKyAgKiBwb3N0aW5zdCBzY3JpcHQgZ2V0cyBtb3N0LXJlY2VudGx5LWNvbmZpZ3VyZWQgdmVyc2lvbiBhcyAkMi4KKworICAqIGxpYi90YXJmbi5jICNpbmNsdWRlcyA8ZXJybm8uaD4gKHBvcnRhYmlsaXR5IGZpeCkuCisKKyAtLSBJYW4gSmFja3NvbiA8aXdqMTBAY3VzLmNhbS5hYy51az4gIFN1biwgMTEgRmViIDE5OTYgMjE6MDc6MDMgKzAwMDAKKworZHBrZyAoMS4wLjE3KTsgcHJpb3JpdHk9TE9XCisKKyAgKiBkcGtnIC0tcmVjdXJzaXZlIGZvbGxvd3Mgc3ltbGlua3MgKHVzZWZ1bCBmb3IgZGV2ZWwgdHJlZSkuCisKKyAtLSBJYW4gSmFja3NvbiA8aXdqMTBAY3VzLmNhbS5hYy51az4gIFNhdCwgMTAgRmViIDE5OTYgMTU6NTg6NDYgKzAwMDAKKworZHBrZyAoMS4wLjE2KTsgcHJpb3JpdHk9TE9XCisKKyAgKiBkcGtnLWRlYiBtdWNoIGZhc3RlciByZWFkaW5nIG5ldyBmb3JtYXQgYXJjaGl2ZXMuICAoQnVnIzIyNTYuKQorICAqIERldmVsb3BlcnMnIGRvY3VtZW50YXRpb24gaW4gL3Vzci9kb2MvZHBrZy8sIC91c3IvaW5mby8uCisKKyAgKiBGaXhlZCB0eXBvIGluIGNvbnRyb2wgZmlsZSBEZXNjcmlwdGlvbi4KKworICAqIGNvbmZpZ3VyZSBzY3JpcHQgdHJpZXMgdG8gaW1wcm92ZSBtYXR0ZXJzIHdydCBzeXNpbmZvLgorICAqIGFueSBkZWJpYW4tdG1wLmRlYiBpcyBkZWxldGVkIGJ5IGAuL2RlYmlhbi5ydWxlcyBjbGVhbicuCisKKyAtLSBJYW4gSmFja3NvbiA8aXdqMTBAY3VzLmNhbS5hYy51az4gIFN1biwgNCBGZWIgMTk5NiAxNTo1MTo1OSArMDAwMAorCitkcGtnICgxLjAuMTUpOyBwcmlvcml0eT1MT1cKKworICAqIGRzZWxlY3QgZGlzayBtZXRob2RzIHNob3VsZCBuZXZlciB1bm1vdW50IHRoaW5ncyB0aGV5IGRpZG4ndCBtb3VudC4KKyAgKiBkZWJpYW4uUkVBRE1FIGFrYSAvdXNyL2RvYy9jb3B5cmlnaHQgdXBkYXRlZC4KKworIC0tIElhbiBKYWNrc29uIDxpd2oxMEBjdXMuY2FtLmFjLnVrPiAgVHVlLCAzMCBKYW4gMTk5NiAxNTowNTozOSArMDAwMAorCitkcGtnICgxLjAuMTQpOyBwcmlvcml0eT1NRURJVU0KKworICAqIGZpeGVkIGZpbGUgZGVzY3JpcHRvciBsZWFrIGluIGRwa2cgaW50cm9kdWNlZCBpbiAxLjAuMTEuCisgICogaW5jbHVkZWQgZHBrZy1uYW1lIGluIHRoaXMgcGFja2FnZSAoY29uZmxpY3RzIHdpdGggZHBrZy1uYW1lKS4KKworICAqIHJlZHJhdyBpbiBkc2VsZWN0IG1haW4gbWVudSBjaGFuZ2VkIHRvIHVzZSBjbGVhcm9rIChsaWtlIGluIGxpc3RzKS4KKyAgKiBzYV9yZXN0b3JlciBpbiBzdHJ1Y3Qgc2lnYWN0aW9uIG5vIGxvbmdlciB1c2VkIChwb3J0YWJpbGl0eSBmaXgpLgorICAqIHJlbW92ZWQgR3VpZGVsaW5lcyBmcm9tIHNvdXJjZSBwYWNrYWdlLgorCisgLS0gSWFuIEphY2tzb24gPGl3ajEwQGN1cy5jYW0uYWMudWs+ICBUdWUsIDMwIEphbiAxOTk2IDAyOjUyOjI5ICswMDAwCisKK2Rwa2cgKDEuMC4xMyk7IHByaW9yaXR5PU1FRElVTQorCisgICogZHNlbGVjdCBwYXJ0aXRpb24gYW5kIG1vdW50ZWQgbWV0aG9kcyB3b3JrIGFnYWluLgorICAqIGRwa2ctZGViIC0tbm8tYWN0IGluIHVzYWdlIG1lc3NhZ2UuCisKKyAtLSBJYW4gSmFja3NvbiA8aXdqMTBAY3VzLmNhbS5hYy51az4gIEZyaSwgMjYgSmFuIDE5OTYgMTg6Mzc6MDMgKzAwMDAKKworZHBrZyAoMS4wLjEyKTsgcHJpb3JpdHk9TUVESVVNIChISUdIIGZvciB1c2VycyBvZiAxLjAuMTEpCisKKyAgKiBGaXhlZCBmcmVxdWVudCBkcGtnIGNvcmVkdW1wIGludHJvZHVjZWQgaW4gMS4wLjExLiAgKEJ1ZyMyMjE5LikKKyAgKiBkcGtnLWRlYiBlbnN1cmVzIHZlcnNpb24gbnVtYmVycyBzdGFydCB3aXRoIGFscGhhbnVtZXJpY3MuCisKKyAtLSBJYW4gSmFja3NvbiA8aXdqMTBAY3VzLmNhbS5hYy51az4gIFdlZCwgMjQgSmFuIDE5OTYgMDA6NDI6MzEgKzAwMDAKKworZHBrZyAoMS4wLjExKTsgcHJpb3JpdHk9TUVESVVNCisKKyAgKiBjb3JyZWN0ZWQgcG90ZW50aWFsbHkgc2VyaW91cyBwcm9ibGVtIHdpdGggZHBrZyBsb3ctbWVtb3J5IGluLWNvcmUKKyAgICBmaWxlcyBkYXRhYmFzZS4KKyAgKiBkcGtnLXNwbGl0IC0tbXNkb3MgcHV0cyBvdXRwdXQgZmlsZXMgaW4gcmlnaHQgZGlyZWN0b3J5LiAgKEJ1ZyMyMTY1LikKKworICAqIGRpdmVyc2lvbnMgaW1wbGVtZW50ZWQgLSBzZWUgYGRwa2ctZGl2ZXJ0IC0taGVscCcuCisKKyAgKiBkc2VsZWN0IHNob3dzIGFuZCB1c2VzIChmb3IgZGVwZW5kZW5jaWVzKSBjdXJyZW50bHkgaW5zdGFsbGVkCisgICAgdmVyc2lvbiBvZiBhIHBhY2thZ2UgaWYgdGhhdCBpcyBtb3JlIHJlY2VudC4KKyAgKiBkcGtnIC0tZm9yY2UtLi4uIG9wdGlvbnMgYXJlIGluIHNlcGFyYXRlIGhlbHAgc2NyZWVuLgorICAqIGJldHRlciBlcnJvciBtZXNzYWdlcyBmb3IgY29ycnVwdGVkIC5kZWIgYXJjaGl2ZXMuICAoQnVnIzIxNzguKQorICAqIGRzZWxlY3QgTkZTIG1ldGhvZCB3aWxsIHVubW91bnQgY29ycmVjdCBjb3B5IG9mIE5GUyBhcmVhIGlmIG1vdW50ZWQKKyAgICB0d2ljZS4KKworICAqIHJlbW92ZXMgc29tZSBFTEYgY29tcGlsYXRpb24gd2FybmluZ3MuCisKKyAtLSBJYW4gSmFja3NvbiA8aXdqMTBAY3VzLmNhbS5hYy51az4gIEZyaSwgMTkgSmFuIDE5OTYgMDI6NDE6NDYgKzAwMDAKKworZHBrZyAoMS4wLjEwKTsgcHJpb3JpdHk9TUVESVVNCisKKyAgKiBkcGtnLWRlYiBvcHRpb24gcGFyc2luZyB1bm11ZGRsZWQgKC1JIG9wdGlvbiB3YXMgcmVtb3ZlZAorICAgIGluIDEuMC45IGFuZCBicm9rZSBkcGtnLWRlYikuICAoQnVnIzIxMjQuKQorCisgICogZHBrZy1zcGxpdCB3aWxsIHdvcmsgd2hlbiBFTEYgYGFyJyBpcyBpbnN0YWxsZWQsIGFuZCBpcyBmYXN0ZXIuCisKKyAgKiBuZnMgZHNlbGVjdCBtZXRob2Qgbm93IGF2YWlsYWJsZS4KKyAgKiBkaXNrIG1ldGhvZHMgZG9uJ3QgcHJvbXB0IHNwdXJpb3VzbHkgZm9yIFBhY2thZ2VzIGZpbGVzLgorICAqIGNkcm9tK2hhcmRkaXNrIG1ldGhvZHMgY2FuIGZpbmQgUGFja2FnZXMgZmlsZXMuCisKKyAgKiBkcGtnLXNjYW5wYWNrYWdlcyAoY3JlYXRlcyBQYWNrYWdlcyBmaWxlcykgbm93IGluIC91c3Ivc2Jpbi4KKworICAqIHZhcmlvdXMgY2hhbmdlcyB0byBoZWxwIGNvbXBpbGF0aW9uIG9mIGRwa2ctZGViLCBkcGtnLXNwbGl0CisgICAgYW5kIG1kNXN1bSBvbiBub24tRGViaWFuIHN5c3RlbXMuCisgICogPHN5cy9mY250bC5oPiByZXBsYWNlZCBieSA8ZmNudGwuaD4gdGhyb3VnaG91dC4KKworIC0tIElhbiBKYWNrc29uIDxpd2oxMEBjdXMuY2FtLmFjLnVrPiAgU3VuLCAxNCBKYW4gMTk5NiAwMjo1NToxOSArMDAwMAorCitkcGtnICgxLjAuOSk7IHByaW9yaXR5PU1FRElVTQorCisgICogZHNlbGVjdCB1bmluaXRpYWxpc2VkIHZhcmlhYmxlIGNvcmVkdW1wIGZpeGVkICh0aGFua3MgQ2FybCkuCisKKyAgKiB2ZXJzaW9uIG51bWJlcnMgcHJpbnRlZCBieSAtLXZlcnNpb24gZml4ZWQuICAoQnVnIzIxMTUuKQorICAqIGRpc2sgbWV0aG9kIHByb2JsZW0gd2l0aCBtaXNzaW5nIFBhY2thZ2VzIGZpbGVzIGZpeGVkLiAgKEJ1ZyMyMTE0LikKKyAgKiBkZXBlbmRlbmN5IHZlcnNpb24gcmVsYXRpb25zaGlwcyBub3cgPD0gPj0gPDwgPj4gPS4gIChCdWcjMjA2MC4pCisKKyAgKiBpbnN0YWxsLWluZm8gaXMgaW4gL3Vzci9zYmluLCBub3QgL3Vzci9iaW4uICAoQnVnIzE5MjQuKQorICAqIGRwa2cgcmVnYXJkcyBSZXZpc2lvbiBmaWVsZCBhcyBvYnNvbGV0ZS4KKworICAqIDxhc20vdW5pc3RkLmg+IGNoYW5nZWQgdG8gPGxpbnV4L3VuaXN0ZC5oPiAoZm9yIG02OGsgcG9ydCkuCisgICogc2NyaXB0cy9NYWtlZmlsZS5pbiBgY2xlYW4nIHRhcmdldCBkZWxldGVzIHNjcmlwdHMuCisKKyAtLSBJYW4gSmFja3NvbiA8aXdqMTBAY3VzLmNhbS5hYy51az4gIFRodSwgMTEgSmFuIDE5OTYgMjA6NTE6MjAgKzAwMDAKKworZHBrZyAoMS4wLjgpOyBwcmlvcml0eT1MT1cKKworICAqIHVwZGF0ZS1hbHRlcm5hdGl2ZXMgc2xpZ2h0bHkgbW9yZSBoZWxwZnVsIG1lc3NhZ2UuICAoQnVnIzE5NzUuKQorICAqIGNvc21ldGljIGltcHJvdmVtZW50cyB0byBkaXNrIGluc3RhbGxhdGlvbiBtZXRob2QuICAoQnVnIzE5NzAsMTk1Ni4pCisgICogbW91bnRlZCBmaWxlc3lzdGVtIGFuZCB1bm1vdW50ZWQgcGFydGl0aW9uIHNlcGFyYXRlIG1ldGhvZHMuICAoQnVnIzE5NTcuKQorCisgLS0gSWFuIEphY2tzb24gPGl3ajEwQGN1cy5jYW0uYWMudWs+ICBUdWUsIDEyIERlYyAxOTk1IDA0OjA3OjQ3ICswMDAwCisKK2Rwa2cgKDEuMC43KTsgcHJpb3JpdHk9TUVESVVNIChISUdIIHRvIHVwZ3JhZGUgc3lzbG9nZCkKKworICAqIGRzZWxlY3QgaGFyZGRpc2svQ0RST00gbWV0aG9kIHNjcmlwdCBoYW5kbGVzIG11bHRpcGxlIHBhY2thZ2UKKyAgICBhcmVhcy4KKyAgKiBFdmVyeXRoaW5nIGhhcyBhIG1hbnBhZ2UsIHRob3VnaCBtYW55IGFyZSB2ZXJ5IHVuaGVscGZ1bCBpbmRlZWQuCisKKyAtLSBJYW4gSmFja3NvbiA8aXdqMTBAY3VzLmNhbS5hYy51az4gIFRodSwgMzAgTm92IDE5OTUgMDM6NTk6MTQgKzAwMDAKKworZHBrZyAoMS4wLjYpOyBwcmlvcml0eT1NRURJVU0gKEhJR0ggdG8gdXBncmFkZSBzeXNsb2dkKQorCisgICogY29uZmZpbGVzIGNhbiBub3cgYmUgdGFrZW4gb3ZlciBwcm9wZXJseSBmcm9tIG9uZSBwYWNrYWdlIGJ5CisgICAgYW5vdGhlciB3aGljaCByZXBsYWNlcyBpdC4gIChCdWcjMTQ4Mi4pCisgICogZHBrZyB3aWxsIG5vdCBkZWNvbmZpZ3VyZSBlc3NlbnRpYWwgcGFja2FnZXMgd2hlbiAtLWF1dG8tZGVjb25maWd1cmUKKyAgICBpcyBzZXQgKHRoaXMgYnVnIHdhcyBmYWlybHkgdW5saWtlbHkgZXZlciB0byBiZSBleGVyY2lzZWQpLgorCisgICogZHBrZyBjaGVja3MgZm9yIHRoZSBwcmVzZW5jZSBvZiBjZXJ0YWluIGltcG9ydGFudCBwcm9ncmFtcyBvbiB0aGUgUEFUSC4KKyAgKiBkc2VsZWN0IGlzIG5vdyBtb3JlIGluZm9ybWF0aXZlIHdoZW4gYSBkZXBlbmRlbmN5IGlzIG1pc3NpbmcsIHNheWluZworICAgICI8cGFja2FnZT4gZG9lcyBub3QgYXBwZWFyIHRvIGJlIGF2YWlsYWJsZSIuICAoQnVnIzE2NDIsIDE3MDUpLgorCisgICogYG1ha2UgZGlzdGNsZWFuJyBmaXhlZDsgY29uZmlnLiogJmMgcmVtb3ZlZCBmcm9tIHNvdXJjZSBhcmNoaXZlLgorICAqIGxpYi9sb2NrLmMgbm93IHVzZXMgZmNudGwgcmF0aGVyIHRoYW4gZmxvY2ssIGZvciBiZXR0ZXIgcG9ydGFiaWxpdHkuCisKKyAgKiBgUGFja2FnZV9SZXZpc2lvbjogMCcgcmVtb3ZlZCBmcm9tIGNvbnRyb2wgZmlsZS4KKyAgKiBTb21lIGluYWNjdXJhY2llcyBhbmQgYmFkIGZvcm1hdHRpbmcgaW4gdmFyaW91cyBtZXNzYWdlcyBjb3JyZWN0ZWQuCisKKyAtLSBJYW4gSmFja3NvbiA8aXdqMTBAY3VzLmNhbS5hYy51az4gIFR1ZSwgMjEgTm92IDE5OTUgMjA6MTU6MTggKzAwMDAKKworZHBrZyAoMS4wLjUpOyBwcmlvcml0eT1MT1cKKworICAqIGRwa2ctc3BsaXQgYWxsb3dzIHNvbWUgc3BhY2UgZm9yIHRoZSBoZWFkZXIuICAoQnVnIzE2NDkuKQorICAqIGRwa2ctc3BsaXQgbm93IGhhcyAtLW1zZG9zIG9wdGlvbiBmb3IgOC4zIGZpbGVuYW1lcy4KKyAgKiBkcGtnLXNwbGl0IC0tam9pbiAmYyB3aWxsIG5vdCBjb21wbGFpbiBhYm91dCB0cmFpbGluZyBnYXJiYWdlLgorCisgICogZHNlbGVjdCAmIGRwa2cgd2lsbCBubyBsb25nZXIgaWdub3JlIFNJR0hVUCB3aWxsIHJ1bm5pbmcgc3VicHJvY2Vzc2VzLgorCisgLS0gSWFuIEphY2tzb24gPGl3ajEwQGN1cy5jYW0uYWMudWs+ICBGcmksIDEzIE9jdCAxOTk1IDEzOjU5OjUxICswMTAwCisKK2Rwa2cgKDEuMC40KTsgcHJpb3JpdHk9TUVESVVNIChISUdIIGZvciBkc2VsZWN0IHVzZXJzIHdpdGggMS4wLjMpCisKKyAgKiBmaXhlZCBidWcgd2hpY2ggcHJldmVudGVkIGRzZWxlY3QgZnJvbSBkaXNwbGF5aW5nIHRoZSBib3R0b20gbGluZSBvZgorICAgIGFueSBsaXN0aW5nIHNjcmVlbi4gIFRoaXMgd2FzIGludHJvZHVjZWQgaW4gMS4wLjMsIHNvcnJ5ICEKKworICAqIGEgY29uZmZpbGUgd2lsbCBuZXZlciBjYXVzZSBhIHByb21wdCBpZiB0aGUgcGFja2FnZSBtYWludGFpbmVyCisgICAgZGlzdHJpYnV0ZXMgYSBmaWxlIGlkZW50aWNhbCB0byB0aGUgdXNlcidzLCBldmVuIGlmIHRoZSBmaWxlIGhhcworICAgIGJlZW4gZWRpdGVkIGJ5IGJvdGggdGhlIHVzZXIgYW5kIHRoZSBtYWludGFpbmVyIG9yIGlzIGEKKyAgICBuZXdseS1yZWdpc3RlcmVkIGNvbmZmaWxlLiAgKEJ1ZyMxNjM5LikKKworICAqIGRzZWxlY3QgZGlzay9jZHJvbSBtZXRob2Qgc2NyaXB0IHNheXMgd2hlcmUgdG8gZ2V0IFBhY2thZ2VzIGZpbGUuCisgICogZHNlbGVjdCBoZWxwIGhhcyBiZXR0ZXIgZGVzY3JpcHRpb25zIG9mIHRoZSBmdW5jdGlvbnMgb2YgUmV0dXJuIGFuZCBRLgorCisgICogcG9zdGluc3Qgbm93IHdhcm5zIGFib3V0IHNvbWUgcHJvYmxlbXMgd2l0aCAvdXNyL2xpYi9kcGtnL21ldGhvZHMvaGQuCisKKyAtLSBJYW4gSmFja3NvbiA8aXdqMTBAY3VzLmNhbS5hYy51az4gIFRodSwgMTIgT2N0IDE5OTUgMDE6NDU6MzggKzAxMDAKKworZHBrZyAoMS4wLjMpOyBwcmlvcml0eT1NRURJVU0KKworICAqIGRzZWxlY3Q6IGZpeGVkIHNlZ2ZhdWx0IHdoZW4gZG9pbmcgc29tZSBtdWx0aXBsZSAoZGUpc2VsZWN0aW9ucy4KKworIC0tIElhbiBKYWNrc29uIDxpd2oxMEBjdXMuY2FtLmFjLnVrPiAgVHVlLCAxMCBPY3QgMTk5NSAwMzoyMToxMiArMDEwMAorCitkcGtnICgxLjAuMik7IHByaW9yaXR5PU1FRElVTQorCisgICogcHJvYmxlbSB3aXRoIHNjcmVlbiByZWZyZXNoIGFmdGVyIGBvJyAoY2hhbmdlIG9yZGVyKSBjb3JyZWN0ZWQuCisKKyAtLSBJYW4gSmFja3NvbiA8aXdqMTBAY3VzLmNhbS5hYy51az4gIE1vbiwgOSBPY3QgMTk5NSAxMzoxMTowNCArMDEwMAorCitkcGtnICgxLjAuMSk7IHByaW9yaXR5PUxPVworCisgICogbXVjaCBiZXR0ZXIgZHBrZyBwZXJmb3JtYW5jZSBvbiBsb3ctbWVtb3J5IHN5c3RlbXMuCisgICogc3RhcnQtc3RvcC1kYWVtb24gLS1uYW1lIHNob3VsZCBub3cgd29yay4gKG9vcHMhKQorICAqIGZpeGVkIHR5cG8gd2hpY2ggY291bGQgdHVybiBpbnRvIG1lbW9yeSBvdmVyd3JpdGluZyBidWcgc29tZXRpbWUuCisKKyAtLSBJYW4gSmFja3NvbiA8aXdqMTBAY3VzLmNhbS5hYy51az4gIFN1biwgOCBPY3QgMTk5NSAyMDoxMjoyOSArMDEwMAorCitkcGtnICgxLjAuMCk7IHByaW9yaXR5PUxPVworCisgICogVmVyc2lvbiAxLjAuMDogZHBrZyBpcyBubyBsb25nZXIgYmV0YS4KKworICAqIHRhciBleHRyYWN0b3Igbm8gbG9uZ2VyIGxvb2tzIHVwIGFuIGVtcHR5IHN0cmluZyB1c2luZyBnZXRncm5hbQorICAgICh0aGlzIGNhdXNlcyB0aGUgbGliYyB0byBjb3JlZHVtcCB3aGVuIHVzaW5nIE5JUykuCisKKyAtLSBJYW4gSmFja3NvbiA8aXdqMTBAY3VzLmNhbS5hYy51az4gIFN1biwgMSBPY3QgMTk5NSAxMzowNzozNiArMDEwMAorCitkcGtnICgwLjkzLjgwKTsgcHJpb3JpdHk9TE9XCisKKyAgKiBkc2VsZWN0IGhlbHAgc2NyZWVuIGludHJvIGNoYW5nZWQgdG8gcmVtb3ZlIGBtdWNoJyBiZWZvcmUgYGhlbHAnLgorCisgICogdXBkYXRlLWFsdGVybmF0aXZlcy5wbCBjb250YWlucyBoYXJkY29kZWQgRU5PRU5UIHZhbHVlLCBpbnN0ZWFkCisgICAgb2YgcmVxdWlyaW5nIFBPU0lYLnBtIHRvIGJlIHByZXNlbnQuCisKKyAgKiBNYWtlZmlsZXMgY2hhbmdlZCB0byBzdHJpcCB3aGVuIGluc3RhbGxpbmcgaW5zdGVhZCBvZiB3aGVuIGJ1aWxkaW5nLgorCisgLS0gSWFuIEphY2tzb24gPGl3ajEwQGN1cy5jYW0uYWMudWs+ICBTYXQsIDMwIFNlcCAxOTk1IDAxOjQ0OjEyICswMTAwCisKK2Rwa2cgKDAuOTMuNzkpIEJFVEE7IHByaW9yaXR5PUxPVworCisgICogRFBLR19OT19UU1RQIGVudmlyb25tZW50IHZhcmlhYmxlIHdoaWNoIHN0b3BzIGRwa2cgc2VuZGluZyB0aGUKKyAgICBwcm9jZXNzIGdyb3VwIGEgU0lHVFNUUCAoQnVnIzE0OTYpLgorICAqIEVuZCBrZXkgc2hvdWxkIHdvcmsgaW4gZHNlbGVjdCBsaXN0cyAoQnVnIzE1MDEpLgorICAqIHZhcmlvdXMgbWVzc2FnZSB0eXBvcyAobWlzc2luZyBcbidzKSBmaXhlZCAoQnVnIzE1MDQpLgorCisgLS0gSWFuIEphY2tzb24gPGl3ajEwQGN1cy5jYW0uYWMudWs+ICBGcmksIDI5IFNlcCAxOTk1IDAzOjI3OjAxICswMTAwCisKK2Rwa2cgKDAuOTMuNzgpIEJFVEE7IHByaW9yaXR5PUxPVworCisgICogZHNlbGVjdCBrZXlzdHJva2VzIGhlbHAgZmlsZSB0eXBvIGZpeC4KKworIC0tIElhbiBKYWNrc29uIDxpd2oxMEBjdXMuY2FtLmFjLnVrPiAgVGh1LCAyOCBTZXAgMTk5NSAyMDozMTowMiArMDEwMAorCitkcGtnICgwLjkzLjc3KSBCRVRBOyBwcmlvcml0eT1NRURJVU0KKworICAqIGRwa2cgLS1yZW1vdmUgLS1wZW5kaW5nIHdpbGwgcHVyZ2UgdGhpbmdzIHdoZW4gYXBwcm9wcmlhdGUuCisKKyAgKiBmaXhlZCBmYWlsdXJlIHRvIG51bGwtdGVybWluYXRlIGRwa2cgY29uZmxpY3QgcHJvYmxlbSBtZXNzYWdlcy4KKyAgKiBmaXhlZCBidWcgaW4gZm9ybWF0dGluZyBvZiBkZXBlbmRlbmN5IHZlcnNpb24gcHJvYmxlbSBtZXNzYWdlcy4KKworICAqIENvbmZmaWxlcyByZXNvbHV0aW9uIHByb21wdCBmb3IgbmV3IGNvbmZmaWxlOiB0eXBvIGZpeGVkLgorICAqIENoYW5nZWQgZHBrZyB1c2FnZSBlcnJvciB0byBzdWdnZXN0IGAtRGhlbHAnIGluc3RlYWQgb2YgYC0tRGhlbHAnLgorCisgLS0gSWFuIEphY2tzb24gPGl3ajEwQGN1cy5jYW0uYWMudWs+ICBXZWQsIDIwIFNlcCAxOTk1IDIzOjQ0OjM1ICswMTAwCisKK2Rwa2cgKDAuOTMuNzYpIEJFVEE7IHByaW9yaXR5PU1FRElVTQorCisgICogZHBrZyAtLWF1dG8tZGVjb25maWd1cmUgb3B0aW9uICh1c2VkIGF1dG9tYXRpY2FsbHkgYnkgZHNlbGVjdCkgYWxsb3dzCisgICAgYGltcG9ydGFudCcgcGFja2FnZXMgd2hpY2ggbWFueSBvdGhlcnMgZGVwZW5kIG9uIHRvIGJlIHNwbGl0LgorICAqIGRwa2cgc2hvdWxkIG5vIGxvbmdlciBmYWlsIGFuIGFzc2VydGlvbiBkdXJpbmcgY29tcGxpY2F0ZWQKKyAgICBtdWx0aXBsZSBjb25maWd1cmF0aW9ucyBpbnZvbHZpbmcgcGFja2FnZXMgd2hpY2ggYXJlIG9uIGhvbGQuCisKKyAgKiB1cGRhdGUtYWx0ZXJuYXRpdmVzIHN1cHBvcnRzIG5lZ2F0aXZlIHByaW9yaXRpZXMuCisgICogL2V0Yy9hbHRlcm5hdGl2ZXMgaXMgaW5jbHVkZWQgaW4gdGhlIC5kZWIgYXJjaGl2ZS4KKworICAqIFBhY2thZ2UgcHJpb3JpdGllcyBjaGFuZ2VkOiBSZXF1aXJlZCAoUmVxKSwgSW1wb3J0YW50IChJbXApLCBTdGFuZGFyZCAoU3RkKSwKKyAgICBPcHRpb25hbCAoT3B0KSBhbmQgRXh0cmEgKFh0cikuICBGb3IgYmFja3dhcmQgY29tcGF0aWJpbGl0eSBCYXNlIGlzIGFuCisgICAgYWxpYXMgZm9yIFJlcXVpcmVkLCBhbmQgUmVjb21tZW5kZWQgaXMga2VwdCBhcyBhIGxldmVsIGp1c3QgYmVsb3cgU3RhbmRhcmQuCisKKyAgKiBkc2VsZWN0IHNob3dzIGludHJvZHVjdG9yeSBoZWxwIHNjcmVlbiB3aGVuIGVudGVyaW5nIHBhY2thZ2UgbGlzdHMgKGJvdGgKKyAgICBtYWluIGFuZCByZWN1cnNpdmUpLgorICAqIGRzZWxlY3QgaGVscCBtZXNzYWdlcyBtYWRlIG1vcmUgZnJpZW5kbHkuCisgICogZHNlbGVjdCBwYWNrYWdlIGxpc3QgYHF1aXQsIGNvbmZpcm0sIGFuZCBjaGVjayBkZXBlbmRlbmNpZXMnIGtleSBpcworICAgIG5vdyBSZXR1cm4gcmF0aGVyIHRoYW4gbG93ZXJjYXNlIGBxJzsgbGlrZXdpc2UgbWV0aG9kIGxpc3QgYHNlbGVjdCB0aGlzCisgICAgb25lIGFuZCBjb25maWd1cmUgaXQnIGtleS4KKyAgKiBkc2VsZWN0IHNlbGVjdHMgcGFja2FnZXMgd2l0aCBwcmlvcml0eSBgc3RhbmRhcmQnIG9yIGJldHRlciBieSBkZWZhdWx0LgorICAqIGRzZWxlY3QgYHY9dmVyYm9zZScgYmVjb21lcyBgdj10ZXJzZScgd2hlbiBpbiB2ZXJib3NlIG1vZGUuCisKKyAgKiBoYXJkIGRpc2sgbWV0aG9kIHVubW91bnRzIC92YXIvbGliL2Rwa2cvbWV0aG9kcy9tbnQgb24gZmFpbHVyZS4KKyAgKiBkaXNrIG1ldGhvZHMnIGluc3RhbGwgbWVzc2FnZSB1c2VzIGBzdHR5JyB0byBmaW5kIG91dCB3aGF0IHRoZQorICAgIGludGVycnVwdCBjaGFyYWN0ZXIgaXMsIGFuZCB1c2VzIHRoYXQgaW4gdGhlIHByb21wdCAocmF0aGVyIHRoYW4gXkMpLgorICAqIGRwa2cgbm93IHRvbGVyYXRlcyBeWiBjaGFyYWN0ZXJzIGluIFBhY2thZ2VzIGZpbGVzLgorICAqIGhhcmRkaXNrIG1ldGhvZCBkb2Vzbid0IGRpc3BsYXkgZXh0cmEgc2xhc2ggd2hlbiB1cGRhdGluZyBwYWNrYWdlcyBmaWxlLgorICAqIGhhcmRkaXNrIG1ldGhvZCBidXJibGVzIGxlc3MgaWYgaXQgZG9lc24ndCBoYXZlIGEgZ29vZCBkZWZhdWx0LgorCisgICogZHBrZy1kZWIgbm93IHN1cHBvcnRzIG5ldyBmbGV4aWJsZSBmb3JtYXQsIGJ1dCBvbGQgZm9ybWF0IHN0aWxsIGRlZmF1bHQuCisKKyAtLSBJYW4gSmFja3NvbiA8aXdqMTBAY3VzLmNhbS5hYy51az4gIFdlZCwgMjAgU2VwIDE5OTUgMDI6NDk6NDEgKzAxMDAKKworZHBrZyAoMC45My43NSkgQkVUQTsgcHJpb3JpdHk9TUVESVVNCisKKyAgKiBkc2VsZWN0IG5vIGxvbmdlciBzZWdmYXVsdHMgd2hlbiB5b3UgdHJ5IHRvIG1vZGlmeSB0aGUgbGFzdCBpdGVtLgorCisgICogZHNlbGVjdCBNYWtlZmlsZSBjb21waWxlcyB3aXRoIC1nLCBhbmQgbGlua3Mgd2l0aG91dCAtcywgYnV0IGluc3RhbGxzCisgICAgd2l0aCAtcywgc28gdGhhdCBidWlsdCBzb3VyY2UgZGlyZWN0b3J5IGhhcyBkZWJ1Z2FiYmxlIGJpbmFyeS4KKworIC0tIElhbiBKYWNrc29uIDxpd2oxMEBjdXMuY2FtLmFjLnVrPiAgVHVlLCAxMiBTZXAgMTk5NSAwMjo1OToyOSArMDEwMAorCitkcGtnICgwLjkzLjc0KSBCRVRBOyBwcmlvcml0eT1MT1cKKworICAqIGRwa2ctc3BsaXQgaW1wbGVtZW50ZWQgYW5kIGluc3RhbGxlZCBpbiAvdXNyL2Jpbi9kcGtnLXNwbGl0LgorICAgIChOQiB0aGlzIGlzIG5vdCBjb21wYXRpYmxlIHdpdGggQ2FybCBTdHJlZXRlcidzIG9sZCBkcGtnLXNwbGl0IHNjcmlwdC4pCisgICogZHBrZyB1c2VzIGRwa2ctc3BsaXQuCisgICogZmxvcHB5IGRpc2sgbWV0aG9kIGF2YWlsYWJsZSAtIE5CIHRoaXMgaXMgYSBmaXJzdCBhdHRlbXB0IG9ubHkuCisKKyAgKiBoYXJkIGRpc2sgbWV0aG9kIHVzZXMgLS1tZXJnZS1hdmFpbCByYXRoZXIgdGhhbiAtLXVwZGF0ZS1hdmFpbC4KKyAgKiBpbnN0YWxsYXRpb24gYnkgZGVmYXVsdCBvZiBgc3RhbmRhcmQnIHBhY2thZ2VzIHJlbW92ZWQgYWdhaW4uCisgICAgKEkgZG9uJ3QgdGhpbmsgdGhpcyBpcyB0aGUgcmlnaHQgcGxhY2UgdG8gZG8gdGhpcy4pCisgICogdXBkYXRlLWFsdGVybmF0aXZlcyAtLXJlbW92ZSBjb3JyZWN0bHkgZGVsZXRlcyBhbGwgc2xhdmUgbGlua3M7CisgICAgbWlub3IgY29zbWV0aWMgaW1wcm92ZW1lbnRzLgorCisgLS0gSWFuIEphY2tzb24gPGl3ajEwQGN1cy5jYW0uYWMudWs+ICBNb24sIDExIFNlcCAxOTk1IDAyOjA2OjA1ICswMTAwCisKK2Rwa2cgKDAuOTMuNzMpIEJFVEE7IHByaW9yaXR5PUxPVworCisgICogZHNlbGVjdCBtdWx0aS1wYWNrYWdlIHNlbGVjdGlvbiBub3cgZG9uZSBieSBgZGl2aWRlcicgbGluZXMKKyAgICBhY3R1YWxseSBpbiB0aGUgcGFja2FnZSBsaXN0LCByYXRoZXIgdGhhbiBob3Jpem9udGFsIGhpZ2hsaWdodAorICAgIG1vdmVtZW50LgorICAqIGRzZWxlY3QgaGVscCBhdmFpbGFibGUsIGFuZCBrZXliaW5kaW5ncyByYXRpb25hbGlzZWQuCisKKyAgKiBwb3N0aW5zdCByZW1vdmVzIC91c3IvbGliL2Rwa2cvbWV0aG9kcy9oZCBpZiB1cGdyYWRpbmcgZnJvbQorICAgIDAuOTMuNDIuMyBvciBlYXJsaWVyLgorICAqIGBob2xkJyBmbGFnIGNoYW5nZWQgdG8gYmUgc2V0dGFibGUgYnkgdGhlIHVzZXIgb25seSwgYW5kCisgICAgbWFkZSBvcnRob2dvbmFsIHRvIHRoZSBgcmVpbnN0YWxsYXRpb24gcmVxdWlyZWQnIGZsYWcuCisgICogZHBrZyB3aWxsIGluc3RhbGwgYnkgZGVmYXVsdCBhbnkgcGFja2FnZXMgd2l0aCBwcmlvcml0eSBvZgorICAgIGBzdGFuZGFyZCcgb3IgYmV0dGVyIHVubGVzcyB0aGV5J3JlIGV4cGxpY2l0bHkgZGVzZWxlY3RlZC4KKworICAqIGRzZWxlY3QgZGVwZW5kZW5jeS9jb25mbGljdCByZXNvbHV0aW9uIHdpbGwgc3VnZ2VzdCBtYXJraW5nIGFic2VudAorICAgIHBhY2thZ2VzIGZvciBgcHVyZ2UnIHJhdGhlciB0aGFuIGBkZWluc3RhbGwnLgorICAqIGRpc2sgbWV0aG9kIHNjcmlwdCBwcm9kdWNlcyBtZXNzYWdlIGFib3V0IGludm9raW5nIGRwa2cuCisgICogZHBrZyBwcm9kdWNlcyB3YXJuaW5nLCBub3QgZXJyb3IsIHdoZW4gaXQgZ2V0cyBFUEVSTSB0cnlpbmcgdG8KKyAgICByZW1vdmUgYSBkaXJlY3RvcnkgYmVsb25naW5nIHRvIGEgcGFja2FnZSBiZWluZyByZW1vdmVkLgorICAqIGRwa2csIGRwa2ctZGViIHVzYWdlIGVycm9yIHJlcG9ydGluZyBpbXByb3ZlZC4KKyAgKiBkc2VsZWN0IGRldGVjdHMgdG9vLWR1bWIgdGVybWluYWxzIGFuZCBzdG9wcy4KKyAgKiBkcGtnLWRlYig4KSB1cGRhdGVkIGEgbGl0dGxlICh0aGFua3MgdG8gQmlsbCBNaXRjaGVsbCkuCisKKyAgKiBkc2VsZWN0IGRlYnVnbWFrZSBzY3JpcHQgdXNlcyAtTzAuCisKKyAtLSBJYW4gSmFja3NvbiA8aXdqMTBAY3VzLmNhbS5hYy51az4gIFN1biwgMTAgU2VwIDE5OTUgMTI6MjM6MDUgKzAxMDAKKworZHBrZyAoMC45My43MikgQkVUQTsgcHJpb3JpdHk9TUVESVVNCisKKyAgKiAvdXNyL3NiaW4vdXBkYXRlLWFsdGVybmF0aXZlcyBhZGRlZC4KKworICAqIE5ldyBuYW1lcyBmb3IgY2VydGFpbiBjb250cm9sIGZpbGUgZmllbGRzIChvbGQgbmFtZXMgd29yaworICAgIGFzIGFsaWFzZXMpOiBPcHRpb25hbCAtPiBTdWdnZXN0cywgUmVjb21tZW5kZWQgLT4gUmVjb21tZW5kcywKKyAgICBDbGFzcyAtPiBQcmlvcml0eS4KKyAgICAgCisgLS0gSWFuIEphY2tzb24gPGl3ajEwQGN1cy5jYW0uYWMudWs+ICBTdW4sIDMgU2VwIDE5OTUgMTY6Mzc6NDEgKzAxMDAKKworZHBrZyAoMC45My43MSkgQkVUQTsgcHJpb3JpdHk9TE9XCisKKyAgKiBkcGtnIGRvZXNuJ3Qgc2lsZW50bHkgb3ZlcndyaXRlIGBuZXcnIGNvbmZmaWxlcyAoQnVnIzEyODMpLgorICAqIGNhc2Ugbm93IG5vdCBzaWduaWZpY2FudCBpbiBFc3NlbnRpYWwsIFN0YXR1cyBhbmQgQ2xhc3MgKEJ1ZyMxMjgwKS4KKyAgKiBkc2VsZWN0IGNoZWNrcyBtZXRob2Qgc2NyaXB0cyBmb3IgZXhlY3V0ZSwgbm90IGZvciB3cml0ZS4KKworICAqIHNwZWxsaW5nIGZpeGVzIGluIGxpYi9kYm1vZGlmeS5jIGFuZCBkc2VsZWN0L2hlbHBtc2dzLnNyYy4KKworICAqIGRzZWxlY3QgYGNsZWFuJyB0YXJnZXQgZGVsZXRlcyBoZWxwbXNncy5jYyBhbmQgaGVscG1zZ3MuY2MubmV3LgorCisgLS0gSWFuIEphY2tzb24gPGl3ajEwQGN1cy5jYW0uYWMudWs+ICBUaHUsIDMxIEF1ZyAxOTk1IDEzOjU2OjA4ICswMTAwCisKK2Rwa2cgKDAuOTMuNzApIEJFVEE7IHByaW9yaXR5PU1FRElVTQorCisgICogZHNlbGVjdCB1bm1vdW50ZWQgaGFyZGRpc2sgbWV0aG9kIGhhcyBtYW55IHNpbGx5IGJ1Z3MgZml4ZWQuCisKKyAgKiBkcGtnIC0tcm9vdCBvcHRpb24gcmVzdG9yZWQgKHdhcyByZW1vdmVkIGJ5IG1pc3Rha2UgaW4gMC45My42OCkuCisgICogbWlub3IgY29zbWV0aWMgY2hhbmdlIHRvIGRzZWxlY3Qgc3VicHJvY2VzcyBmYWlsdXJlIG1lc3NhZ2UuCisKKyAtLSBJYW4gSmFja3NvbiA8aXdqMTBAY3VzLmNhbS5hYy51az4gIFdlZCwgOSBBdWcgMTk5NSAyMjoxODo1NSArMDEwMAorCitkcGtnICgwLjkzLjY5KSBCRVRBOyBwcmlvcml0eT1NRURJVU0KKworICAqIGRwa2cgLS1jb25maWd1cmUgYW5kIC0tcmVtb3ZlIHNob3VsZCB3b3JrIHByb3Blcmx5IHdoZW4KKyAgICB0aGV5IGhhdmUgdG8gZGVmZXIgcHJvY2Vzc2luZyAodGhpcyB0ZW5kcyB0byBoYXBwZW4gd2hlbiBtYW55CisgICAgcGFja2FnZXMgYXJlIHByb2Nlc3NlZCBhdCBvbmNlKS4gIChCdWcjMTIwOS4pCisKKyAgKiBkcGtnIC0tY29uZmlndXJlIGFuZCAtLXJlbW92ZSB3b3JrIGJldHRlciB3aGVuIGBwcm9jZXNzaW5nJworICAgIHNldmVyYWwgcmVsYXRlZCBwYWNrYWdlcyB3aXRoIC0tbm8tYWN0LgorCisgICogZHBrZyAtLWF1dG8gaXMgbm93IHR3byBvcHRpb25zLCAtLXBlbmRpbmcgb3IgLWEgKGZvciBjb25maWd1cmUsCisgICAgcmVtb3ZlLCAmYykgYW5kIC0tcmVjdXJzaXZlIG9yIC1SIChmb3IgaW5zdGFsbCwgdW5wYWNrLCAmYykuCisKKyAgKiBkcGtnIGRlYnVnIG9wdGlvbnMgaW4gdXNhZ2UgbWVzc2FnZSwgYW5kIHZhbHVlcyBhdmFpbGFibGUgKC1EaCkuCisKKyAtLSBJYW4gSmFja3NvbiA8aXdqMTBAY3VzLmNhbS5hYy51az4gIFdlZCwgOSBBdWcgMTk5NSAyMjoxODo1NSArMDEwMAorCitkcGtnICgwLjkzLjY4KSBCRVRBOyBwcmlvcml0eT1NRURJVU0KKworICAqIGRwa2cgd29uJ3QgZ2V0IGFuIGludGVybmFsIGVycm9yIGlmIHlvdSB0cnkgdG8gdXNlIHRoZSBkZWZhdWx0CisgICAgY29uZmZpbGVzIHJlc3BvbnNlIChpZSwgaWYgeW91IGp1c3QgaGl0IHJldHVybikuICAoQnVnIzEyMDguKQorCisgICogZHNlbGVjdCBoYXJkIGRpc2sgYW5kIENELVJPTSBtZXRob2RzIC0gdGhlIHJlYWwgdGhpbmcsIGJ1dCBBTFBIQS4KKworICAqIGRzZWxlY3QgYWxsb3dzIHlvdSB0byBnbyBzdHJhaWdodCB0byBgdXBkYXRlJyBvciBgaW5zdGFsbCcgaWYKKyAgICB5b3UgaGF2ZSBhbHJlYWR5IHNldCB1cCBhbiBhY2Nlc3MgbWV0aG9kLgorICAqIG5ldyBkcGtnIG9wdGlvbnMgLS15ZXQtdG8tdW5wYWNrLCAtLW1lcmdlLWF2YWlsIGFuZCAtLXVwZGF0ZS1hdmFpbC4KKyAgKiBkcGtnIC1HIGlzIGFuIGFiYnJldmlhdGlvbiBmb3IgZHBrZyAtLXJlZnVzZS1kb3duZ3JhZGUuCisgICogZHBrZyAtUiBhbGlhcyBmb3IgLS1yb290IHdpdGhkcmF3biwgcGVuZGluZyByZXVzZSB3aXRoIGRpZmZlcmVudCBtZWFuaW5nLgorICAqIGRwa2cgLS1oZWxwIG1lc3NhZ2UgcmF0aW9uYWxpc2VkIHNvbWV3aGF0LgorCisgICogT2Jzb2xldGUgYGV4YW1wbGVzJyBhbmQgYGRwa2ctc3BsaXQnIGRpcmVjdG9yaWVzIHJlbW92ZWQgZnJvbQorICAgIHNvdXJjZSB0cmVlLiAgVGhlIGBoZWxsbycgcGFja2FnZSBpcyBhIGJldHRlciBleGFtcGxlLgorCisgLS0gSWFuIEphY2tzb24gPGl3ajEwQGN1cy5jYW0uYWMudWs+ICBNb24sIDcgQXVnIDE5OTUgMDI6MTY6MjUgKzAxMDAKKworZHBrZyAoMC45My42NykgQkVUQTsgcHJpb3JpdHk9TE9XIGZvciBDIGRwa2cgYWxwaGEgdGVzdGVycywgSElHSCBmb3Igb3RoZXJzCisKKyAgKiBkcGtnIG5vIGxvbmdlciBzdGF0aWNhbGx5IGxpbmtlZCBhbmQgLWcuCisgICogY2FsbHMgdG8gYWJvcnQoKSBjaGFuZ2VkIHRvIHByaW50IHN0cmluZywgZmlsZSBhbmQgbGluZSBudW1iZXIgZmlyc3QuCisgICogcmVtb3ZlZCB1bnVzZWQgdmFyaWFibGUgZnJvbSBkcGtnIHNvdXJjZS4KKworIC0tIElhbiBKYWNrc29uIDxpd2oxMEBjdXMuY2FtLmFjLnVrPiAgRnJpLCA0IEF1ZyAxOTk1IDAxOjM5OjUyICswMTAwCisKK2Rwa2cgKDAuOTMuNjYpIEFMUEhBOyBwcmlvcml0eT1NRURJVU0KKworICAqIGRwa2cgd2lsbCBjb3JyZWN0bHkgcmVtb3ZlIG92ZXJ3cml0dGVuIGZpbGVzIGZyb20gdGhlIGxpc3RzIG9mCisgICAgdGhlIHBhY2thZ2UocykgdGhhdCB1c2VkIHRvIGNvbnRhaW4gdGhlbS4KKworICAqIGRwa2cgLS1wdXJnZSBpcyBub3cgYW4gYWN0aW9uLCByYXRoZXIgdGhhbiBhIG1vZGlmaWVyIGZvciAtLXJlbW92ZSwKKyAgICBhbmQgdGhlIC1QIGFsaWFzIGZvciBpdCBpcyB3aXRoZHJhd24uCisKKyAgKiBkcGtnIC0tdW5wYWNrLy0taW5zdGFsbCBmaWxlbmFtZXMgaW4gbWVzc2FnZXMgYXJlIG5vdyBtb3JlIHNlbnNpYmxlCisgICAgYWJvdXQgd2hlbiB0byB1c2UgLi4uLyAoc2hvdyBhcyBtYW55IHRyYWlsaW5nIGNvbXBvbmVudHMgYXMgcG9zc2libGUKKyAgICBpbiA0MCBjaGFyYWN0ZXJzLCBvciB0aGUgd2hvbGUgcGF0aCBpZiB0aGF0IHRoZSBsYXN0IGNvbXBvbmVudCBpcworICAgIGxvbmdlciB0aGFuIHRoYXQpLgorCisgLS0gSWFuIEphY2tzb24gPGl3ajEwQGN1cy5jYW0uYWMudWs+ICBUaHUsIDMgQXVnIDE5OTUgMDI6MTE6MDMgKzAxMDAKKworZHBrZyAoMC45My42NSkgQUxQSEE7IHByaW9yaXR5PU1FRElVTQorCisgICogZHBrZyAtLXJlbW92ZSBzaG91bGQsIHdoZW4gYSBwYWNrYWdlIGJlaW5nIHJlbW92ZWQgaXMgZGVwZW5kZWQtb24KKyAgICBieSBhbm90aGVyIHRoYXQgaXMgYWxzbyBxdWV1ZWQgZm9yIHJlbW92YWwsIGRlZmVyIHRoZSBkZXBlbmRlZC1vbgorICAgIHBhY2thZ2UgcmF0aGVyIHRoYW4gYWJvcnRpbmcgaXQuICAoQnVnIzExODguKQorCisgICogZHBrZyB3aWxsIG5vdCBhdHRlbXB0IHRvIGNvbmZpZ3VyZSBvciByZW1vdmUgYSBwYWNrYWdlIG1vcmUgdGhhbgorICAgIG9uY2UgaW4gdGhlIHNhbWUgcnVuLiAgKEJ1ZyMxMTY5LikKKworICAqIGRwa2cgY29zbWV0aWMgZml4IHRvIGRlcGVuZGVuY3kgcHJvYmxlbXMgbWVzc2FnZSAodGhpcyBidWcKKyAgICBoYXNuJ3QgYmVlbiB0cmlnZ2VyZWQgdG8gbXkga25vd2xlZGdlKS4KKworICAqIHBlcmwtZHBrZyBubyBsb25nZXIgaW5zdGFsbGVkIGluIC91c3IvYmluLgorCisgLS0gSWFuIEphY2tzb24gPGl3ajEwQGN1cy5jYW0uYWMudWs+ICBXZWQsIDIgQXVnIDE5OTUgMTM6MDI6NTggKzAxMDAKKworZHBrZyAoMC45My42NCkgQUxQSEE7IHByaW9yaXR5PU1FRElVTQorCisgICogZHBrZyBtYXJrcyBhIHBhY2thZ2UgYXMgbm8gbG9uZ2VyIGB0byBiZSBjb25maWd1cmVkIGluIHRoaXMgcnVuJworICAgIHdoZW4gYW4gZXJyb3Igb2NjdXJzLCBzbyB0aGF0IG90aGVyIHBhY2thZ2VzIHdoaWNoIGRlcGVuZCBvbiBpdAorICAgIHdpbGwgZmFpbCAocmF0aGVyIHRoYW4gY2F1c2luZyBhIGxvb3AgYW5kIGFuIGFzc2VydGlvbiBmYWlsdXJlLAorICAgICBwYWNrYWdlcy5jOjE2NjogZmFpbGVkIGFzc2VydGlvbiBgZGVwZW5kdHJ5IDw9IDQnKS4KKworICAqIGRzZWxlY3QgaW5pdGlhbCBzZWxlY3Rpb24gZ3JhbnVsYXJpdHkgaXMgc2luZ2xlLXBhY2thZ2UuCisgICogZHBrZyAtLW5vLWFsc28tc2VsZWN0IG9wdGlvbiByZW5hbWVkIHRvIC0tc2VsZWN0ZWQtb25seSAob2xkIG9wdGlvbgorICAgIHN0aWxsIGFjY2VwdGVkLCBidXQgbm8gbG9uZ2VyIGluIC0taGVscCkuICBDaGFuZ2VkIC1OIHRvIC1PLgorCisgICogZHNlbGVjdCBgdXBkYXRlJyBvcHRpb24gY2hhbmdlZCB0byBgaW5zdGFsbCcgKGFuZCBvdGhlciBvcHRpb25zCisgICAgcmVuYW1lZCB0b28pLiAgTkI6IG9sZCBhY2Nlc3MgbWV0aG9kcyB3aWxsIG5vdCB3b3JrLCBiZWNhdXNlCisgICAgdGhlIGB1cGRhdGUnIHNjcmlwdCBzaG91bGQgbm93IGJlIGFuIGBpbnN0YWxsJyBzY3JpcHQuCisKKyAgKiBkc2VsZWN0IGBpbnN0YWxsYXRpb24gbWV0aG9kcycgcmVuYW1lZCB0byBgYWNjZXNzIG1ldGhvZHMnLgorICAqIGRwa2cgLS1za2lwLXNhbWUtdmVyc2lvbiBhbmQgLS1yZWZ1c2UtZG93bmdyYWRlIHByb2R1Y2UgZnJpZW5kbGllcgorICAgIG1lc3NhZ2VzIHdoZW4gdGhleSBza2lwIHBhY2thZ2VzLgorICAqIC0tbGljZW5jZSBvcHRpb24gbm93IHByb3Blcmx5IG1lbnRpb25lZCBpbiBhbGwgcHJvZ3JhbXMnIC0tdmVyc2lvbgorICAgIG1lc3NhZ2VzLgorCisgICogYmFkIGZpeCBmb3IgRUxGIGNvbXBpbGUgcHJvYmxlbSBpbnZvbHZpbmcgbXlvcHQuaCByZW1vdmVkIChjb21waWxlCisgICAgcHJvYmxlbSB0dXJuZWQgb3V0IHRvIGJlIGEgR0NDIGJ1Zy4pCisKKyAtLSBJYW4gSmFja3NvbiA8aXdqMTBAY3VzLmNhbS5hYy51az4gIFR1ZSwgMSBBdWcgMTk5NSAwMzowMzo1OCArMDEwMAorCitkcGtnICgwLjkzLjYzKSBBTFBIQTsgcHJpb3JpdHk9TE9XCisKKyAgKiBwcmVpbnN0IHdvcmtzIGFyb3VuZCBzaGVsbCBidWcvbWlzZmVhdHVyZSBpbnZvbHZpbmcgYHRyYXAnLgorCisgICogZHBrZyAtLXNraXAtc2FtZS12ZXJzaW9uIGRvZXNuJ3Qgc2tpcCBwYWNrYWdlcyB3aGljaCBoYXZlCisgICAgYW4gZXJyb3IgZmxhZyBzZXQgb3Igd2hpY2ggYXJlbid0IGluIGEgc3RhbmRhcmQgYGluc3RhbGxlZCcgc3RhdGUuCisKKyAgKiBkcGtnIC0tc2VhcmNoIG5vdyBkb2VzIGEgc3Vic3RyaW5nIHNlYXJjaCBpZiB0aGUgc3RyaW5nIGRvZXNuJ3QKKyAgICBzdGFydCB3aXRoIGEgd2lsZGNhcmQgY2hhcmFjdGVyICgqLCBbIG9yID8pIG9yIHNsYXNoLgorCisgICogcHJvYmxlbSB3aXRoIEMvQysrIGxpbmthZ2Ugb2Ygc3R1ZmYgaW4gIm15b3B0LmgiIGZpeGVkLCB0byBoZWxwCisgICAgd2l0aCBjb21waWxpbmcgd2l0aCBHQ0MgMi43LjAuCisKKyAgKiBkc2VsZWN0IE1ha2VmaWxlLmluIGBjbGVhbicgZGVsZXRlcyBjdXJrZXlzLmluYyAmYywgc28gdGhhdCB0aGV5IGFyZQorICAgIG5vdCBzaGlwcGVkIGluIHRoZSBkaXN0cmlidXRpb24gc291cmNlIGFuZCB3aWxsIGJlIHJlYnVpbHQgb24gdGhlCisgICAgdGFyZ2V0IHN5c3RlbS4KKworIC0tIElhbiBKYWNrc29uIDxpd2oxMEBjdXMuY2FtLmFjLnVrPiAgVGh1LCAyNyBKdWwgMTk5NSAxMzozODo0NyArMDEwMAorCitkcGtnICgwLjkzLjYyKSBBTFBIQTsgcHJpb3JpdHk9SElHSAorCisgICogZHBrZyBwdXJnZXMgbGVmdG92ZXIgY29udHJvbCBzY3JpcHRzIGZyb20gL3Zhci9saWIvZHBrZy90bXAuY2ksCisgICAgcmF0aGVyIHRoYW4gYXNzb2NpYXRpbmcgdGhlbSB3aXRoIHRoZSB3cm9uZyBwYWNrYWdlLiAgKEJ1ZyMxMTAxLikKKworICAqIGRwa2cgd29uJ3QgYGRpc2FwcGVhcicgcGFja2FnZXMgY29udGFpbmluZyBubyBmaWxlcyBvciBkaXJlY3RvcmllcywKKyAgICBub3IgYSBwYWNrYWdlIHJlcXVpcmVkIGZvciBkZXBlbmRzL3JlY29tbWVuZGVkLiAgKEJ1ZyMxMTI4LikKKworICAqIGRwa2cgZm9sbG93cyBkaXJlY3Rvcnkgc3ltbGlua3MuICAoQnVnIzExMjUuKQorCisgICogZHNlbGVjdCBmaXh1cHMgZm9yIEVMRi9HQ0MyLjcuMCBjb21waWxhdGlvbi4KKworIC0tIElhbiBKYWNrc29uIDxpd2oxMEBjdXMuY2FtLmFjLnVrPiAgRnJpLCAyMSBKdWwgMTk5NSAyMTo0Mzo0MSArMDEwMAorCitkcGtnICgwLjkzLjYxKSBBTFBIQTsgcHJpb3JpdHk9TE9XCisKKyAgKiBkc2VsZWN0IGtleWJpbmRpbmdzIGFuZCBzdGF0dXMgY2hhcmFjdGVycyBhbmQgZGVzY3JpcHRpb25zIGNoYW5nZWQKKyAgICAoaW4gcHVyc3VhbmNlIG9mIEJ1ZyMxMDM3LCB1c2VyIGludGVyZmFjZSBwcm9ibGVtcywgc3RpbGwgb3Blbi4pCisKKyAgKiBTb21lIGNsZWFudXBzIHRvIGZpeCBtaXN0YWtlcyBkaXNjb3ZlcmVkIGJ5IEVMRi1HQ0MgMi43LjAsIGFuZCBmaXh1cAorICAgIGZvciBuZXdlciBDKysgZHJhZnQgc3RhbmRhcmQgKGBmb3InIHZhcmlhYmxlIGRlY2xhcmF0aW9uIHNjb3BlIGNoYW5nZSkuCisKKyAtLSBJYW4gSmFja3NvbiA8aXdqMTBAY3VzLmNhbS5hYy51az4gIFR1ZSwgMTggSnVsIDE5OTUgMDE6NDI6NTEgKzAxMDAKKworZHBrZyAoMC45My42MCkgQUxQSEE7IHByaW9yaXR5PUhJR0gKKworICAqIGRwa2cgZG9lc24ndCB0aGluayBwYWNrYWdlcyBoYXZlIGBkaXNhcHBlYXJlZCcgaWYgeW91IGluc3RhbGwKKyAgICBzZXZlcmFsIHBhY2thZ2VzIGF0IG9uY2UuICAobGF0ZXIgcmVwb3J0ZWQgYXMgQnVnIzExMzIuKQorCisgICogdXNhZ2UgZXJyb3IgbWVzc2FnZXMgdGlkaWVkIHVwLgorCisgLS0gSWFuIEphY2tzb24gPGl3ajEwQGN1cy5jYW0uYWMudWs+ICBTdW4sIDE2IEp1bCAxOTk1IDE3OjU2OjU2ICswMTAwCisKK2Rwa2cgKDAuOTMuNTkpIEFMUEhBOyBwcmlvcml0eT1ISUdICisKKyAgKiBkcGtnIGRvZXNuJ3QgYnJlYWsgbWFpbnRhaW5lciBzY3JpcHRzICZjIGlmIHBhY2thZ2UgYGZvbycgZXhpc3RzCisgICAgd2hlbiBwcm9jZXNzaW5nIHBhY2thZ2UgYGZvb2JhcicuICAoUmVsYXRlZCB0byBCdWcjMTEwMS4pCisKKyAgKiBkcGtnIGltcGxlbWVudHMgYGRpc2FwcGVhcicgZnVuY3Rpb25hbGl0eS4KKyAgKiBkcGtnL2RzZWxlY3QgcmVtb3ZlIGRlYWQgZW50cmllcyBmcm9tIC92YXIvbGliL2Rwa2cvc3RhdHVzLgorCisgICogZHBrZyAtLWxpc3Qgbm93IHNvcnRlZCBjb3JyZWN0bHkgYW5kIG91dHB1dCBzb21ld2hhdCBpbXByb3ZlZC4KKyAgKiBzb21lIGRlYnVnZ2luZyBtZXNzYWdlcyBtb3ZlZCBmcm9tIGRiZ19zdHVwaWRseXZlcmJvc2UgdG8gZGJnX3NjcmlwdHMuCisgICogZHBrZyBwcmludHMgYFJlbW92aW5nIGZvbycgbWVzc2FnZSBldmVuIGlmIGZvbyBpcyBub3QgY29uZmlndXJlZC4KKyAgKiBkcGtnIG9ubHkgcHJpbnRzIGBzZXJpb3VzIHdhcm5pbmc6IGZpbGVzIGxpc3QgZmlsZSAuLi4gbWlzc2luZycKKyAgICBvbmNlIGZvciBlYWNoIHBhY2thZ2UuCisKKyAtLSBJYW4gSmFja3NvbiA8aXdqMTBAY3VzLmNhbS5hYy51az4gIFN1biwgMTYgSnVsIDE5OTUgMDI6MzI6MTEgKzAxMDAKKworZHBrZyAoMC45My41OCkgQUxQSEE7IHByaW9yaXR5PUhJR0gKKworICAqIGRwa2cgc2hvdWxkIHdyaXRlIG91dCBzdGF0dXMgZXZlbiBmb3IgcGFja2FnZXMgd2hpY2ggaXQgaGFzIG9ubHkKKyAgICBlbmNvdW50ZXJlZCBpbiB0aGUgYGF2YWlsYWJsZScgZmlsZSBzbyBmYXIuCisKKyAtLSBJYW4gSmFja3NvbiA8aXdqMTBAY3VzLmNhbS5hYy51az4gIEZyaSwgMTQgSnVsIDE5OTUgMjA6MTk6MjEgKzAxMDAKKworZHBrZyAoMC45My41NykgQUxQSEE7IHByaW9yaXR5PUxPVworCisgICogZHBrZyBkb2VzIGNocm9vdCB3aGVuIHJ1bm5pbmcgbWFpbnRhaW5lciBzY3JpcHRzICgtLWluc3RkaXIKKyAgICBzaG91bGQgd29yayByaWdodCBub3csIHRob3VnaCBJIGhhdmVuJ3QgYmVlbiBhYmxlIHRvIHRlc3QgaXQpLgorCisgLS0gSWFuIEphY2tzb24gPGl3ajEwQGN1cy5jYW0uYWMudWs+ICBGcmksIDE0IEp1bCAxOTk1IDAxOjMyOjMwICswMTAwCisKK2Rwa2cgKDAuOTMuNTYpIEFMUEhBOyBwcmlvcml0eT1ISUdICisKKyAgKiBkcGtnIGNhbiBub3cgb3ZlcndyaXRlIHN5bWxpbmtzIHRvIGRpcmVjdG9yaWVzLCBhbmQgd2lsbAorICAgIGRvIGNvcnJlY3QgaGFuZGxpbmcgb2Ygc3ltbGlua3MgdG8gcGxhaW4gZmlsZXMuCisgICogZHBrZyBzaG91bGQgbm90IHJlcGxhY2UgYW55IGRpcmVjdG9yeSB3aXRoIGEgc3ltbGluay4KKworIC0tIElhbiBKYWNrc29uIDxpd2oxMEBjdXMuY2FtLmFjLnVrPiAgVGh1LCAxMyBKdWwgMTk5NSAwMjo0MzozNiArMDEwMAorCitkcGtnICgwLjkzLjU1KSBBTFBIQTsgcHJpb3JpdHk9TUVESVVNCisKKyAgKiBkcGtnIGNhbiBub3cgZXh0cmFjdCBoYXJkbGlua3MuCisgICogZHBrZyBjb25maWd1cmF0aW9uL3JlbW92YWwgd29ya3MgaW4gdGhlIHByZXNlbmNlIG9mIGRlcGVuZGVuY3kgY3ljbGVzLgorICAqIGRwa2cgc2hvdWxkIG5vIGxvbmdlciBmYWlsIGFuIGFzc2VydGlvbiBhdCBwcm9jZXNzYXJjLmM6MTkzLgorCisgLS0gSWFuIEphY2tzb24gPGl3ajEwQGN1cy5jYW0uYWMudWs+ICBXZWQsIDEyIEp1bCAxOTk1IDAxOjM0OjQ0ICswMTAwCisKK2Rwa2cgKDAuOTMuNTQpIEFMUEhBOyBwcmlvcml0eT1NRURJVU0KKworICAqIGRwa2cgYW5kIGRzZWxlY3Qgbm8gbG9uZ2VyIHRocm93IGF3YXkgYWxsIENsYXNzIGFuZCBTZWN0aW9uCisgICAgaW5mb3JtYXRpb24gaW4gL3Zhci9saWIvZHBrZy9hdmFpbGFibGUuICAoT29wcy4pCisgICogZHBrZyAtLXJlZnVzZS08c29tZXRoaW5nPiBub3cgd29ya3MgKHRoaXMgYnJva2Ugc29tZSBkc2VsZWN0CisgICAgbWV0aG9kIHNjcmlwdHMnIGF0dGVtcHRzIHRvIHVzZSAtLXJlZnVzZS1kb3duZ3JhZGUpLgorICAqIGRwa2cgLS1hdWRpdCBhbmQgLS1saXN0IGltcGxlbWVudGVkLgorCisgLS0gSWFuIEphY2tzb24gPGl3ajEwQGN1cy5jYW0uYWMudWs+ICBNb24sIDEwIEp1bCAxOTk1IDAwOjM1OjEzICswMTAwCisKK2Rwa2cgKDAuOTMuNTMpIEFMUEhBOyBwcmlvcml0eT1MT1cKKworICAqIGRwa2cgLS1pbnN0YWxsLy0tdW5wYWNrIG9ubHkgc2tpcHMgb24taG9sZCBwYWNrYWdlcyB3aXRoIC0tYXV0by4KKyAgKiBkcGtnIGRvZXNuJ3QgZmNsb3NlKCkgdGhlIC0tZnN5cy10YXJmaWxlIHBpcGUgdHdpY2UuCisgICogZHBrZyBlcnJvciBoYW5kbGluZyBhbmQgcmVwb3J0aW5nIGNsZWFuZWQgdXAuCisgICogZHBrZyBub3cgbGlzdHMgYW55IGZhaWxlZCBwYWNrYWdlcy9maWxlcyBqdXN0IGJlZm9yZSBleGl0aW5nLgorCisgLS0gSWFuIEphY2tzb24gPGl3ajEwQGN1cy5jYW0uYWMudWs+ICBTdW4sIDkgSnVsIDE5OTUgMTY6MzE6MzYgKzAxMDAKKworZHBrZyAoMC45My41MikgQUxQSEE7IHByaW9yaXR5PU1FRElVTQorCisgICogZHBrZyB3b24ndCBzZWdmYXVsdCBkdWUgdG8gbWlzc2luZyAoUGFja2FnZV8pUmV2aXNpb24gZmllbGRzLgorICAqIGRwa2cgLS1zZWFyY2ggd29ya3MuCisgICogZHBrZyB3aWxsIHNldCBleGVjdXRlIHBlcm1pc3Npb25zIG9uIHNjcmlwdHMgaWYgbmVjZXNzYXJ5LgorICAqIGRwa2cgcHJpbnRzIGZpbGVuYW1lcyBpbiAtLXVucGFjayBhbmQgLS1pbnN0YWxsLgorCisgLS0gSWFuIEphY2tzb24gPGl3ajEwQGN1cy5jYW0uYWMudWs+ICBTYXQsIDggSnVsIDE5OTUgMTI6NDE6MzkgKzAxMDAKKworZHBrZyAoMC45My41MSkgQUxQSEE7IHByaW9yaXR5PUhJR0gKKworICAqIGRwa2cgLS1zdGF0dXMgYW5kIC0tbGlzdGZpbGVzIG5vdyB3b3JrLgorCisgICogZHBrZyAtLXJlbW92ZSAtLWF1dG8gd29uJ3QgdHJ5IHRvIHJlbW92ZSBldmVyeXRoaW5nICghKQorICAqIGRwa2cgLS11bnBhY2sgZG9lc24ndCBjb3JlZHVtcCBhZnRlciB1bnBhY2tpbmcgdGhlIGZpcnN0IHBhY2thZ2UuCisgICogZHBrZyB3b24ndCBmYWlsIGFuIGFzc2VydGlvbiBpZiBpdCBib21icyBvdXQgb2YgLS1jb25maWd1cmUKKyAgICBvciAtLXJlbW92ZSBiZWNhdXNlIG9mIHRvbyBtYW55IGVycm9ycy4KKworICAqIFN1cHBvcnQgZm9yIGBFc3NlbnRpYWwnIGluIGRwa2cgKG5vdCB5ZXQgaW4gZHNlbGVjdCkuCisgICogYGF2YWlsYWJsZScgKFBhY2thZ2VzKSBmaWxlIGNsYXNzIGFuZCBzZWN0aW9uIG92ZXJyaWRlIHRob3NlCisgICAgZnJvbSBwYWNrYWdlIGNvbnRyb2wgZmlsZXMuCisgICogYEVzc2VudGlhbDogeWVzJyBhZGRlZCB0byBjb250cm9sIGZpbGUuCisKKyAgKiBMb2NraW5nIHN0cmF0ZWd5IGNoYW5nZWQsIG5vdyB1c2VzIGZsb2NrIChubyBtb3JlIHN0YWxlIGxvY2tzKS4KKyAgKiBwcmVpbnN0IG5vdyBtb3JlIGhlbHBmdWwgYWJvdXQgY29uZmZpbGVzIHVwZ3JhZGUgcHJvYmxlbS4KKworIC0tIElhbiBKYWNrc29uIDxpd2oxMEBjdXMuY2FtLmFjLnVrPiAgU2F0LCA4IEp1bCAxOTk1IDAxOjE1OjI2ICswMTAwCisKK2Rwa2cgKDAuOTMuNTApIEFMUEhBCisKKyAgKiBDIGRwa2cgbm93IGluIHNlcnZpY2UuCisKKyAgKiBkc2VsZWN0IG5vdyBpbnN0YWxscyBpbiAvdXNyL2JpbiBpbnN0ZWFkIG9mIC91c3Ivc2Jpbi4KKyAgKiBJbXByb3ZlZCBgZXhwbGFuYXRpb24gb2YgZGlzcGxheScgaGVscCBhbmQgY2hhbmdlZCBIU09DIHRvIEVJT1cuCisgICogZHNlbGVjdCBnb2VzIGJhY2sgdG8gdG9wIG9mIGluZm8gZGlzcGxheSB3aGVuIHlvdSBtb3ZlIHRoZQorICAgIGhpZ2hsaWdodC4KKworICAqIEFkZGVkIDxzeXMvdHlwZXMuaD4gdG8gbWQ1c3VtL21kNS5jLCBmb3IgdGhlIGJlbmVmaXQgb2YgRnJlZUJTRC4KKyAgKiAtLWFkbWluZGlyIGRvZXNuJ3QgYXBwZW5kIGB2YXIvbGliL2Rwa2cnIHRvIGl0cyBhcmd1bWVudC4KKworIC0tIElhbiBKYWNrc29uIDxpd2oxMEBjdXMuY2FtLmFjLnVrPiAgRnJpLCAxOSBNYXkgMTk5NSAyMTowMzowOCArMDEwMAorCitkcGtnICgwLjkzLjQyLjMpIEJFVEE7IHByaW9yaXR5PUxPVworCisgICogUmVidWlsdCB1c2luZyBuY3Vyc2VzIDEuOS4yYy0wLgorICAqIFNpbGVuY2VkIGBzdWJjcml0aWNhbCBlcnJvcicgbWVzc2FnZSBpZiBlcnJubyA9PSBFTk9FTlQuCisKKyAtLSBJYW4gSmFja3NvbiA8aXdqMTBAY3VzLmNhbS5hYy51az4gIE1vbiwgMTIgSnVuIDE5OTUgMTM6MDk6MjQgKzAxMDAKKworZHBrZyAoMC45My40Mi4yKSBCRVRBOyBwcmlvcml0eT1ISUdICisKKyAgKiBpbnN0YWxsLWluZm8gLS1yZW1vdmUgcHJvcGVybHkgcmVtb3ZlcyBtdWx0aS1saW5lIGVudHJpZXMuCisgICogU2xpZ2h0bHkgY2hhbmdlZCBeTCByZWRyYXcgY29kZSBpbiBkc2VsZWN0IHBhY2thZ2UgbGlzdC4KKworIC0tIElhbiBKYWNrc29uIDxpd2oxMEBjdXMuY2FtLmFjLnVrPiAgU2F0LCAxMCBKdW4gMTk5NSAxNDowNjowMSArMDEwMAorCitkcGtnICgwLjkzLjQyLjEpIEJFVEE7IHByaW9yaXR5PUhJR0ggZXNwLiBmb3IgbmV3IGluc3RhbGxhdGlvbnMKKworICAqIHVwZGF0ZS1yYy5kIGRlZmF1bHQgbm8gbG9uZ2VyIGFkZHMgSyBlbnRyaWVzIGluIHJ1bmxldmVscyAyMzQ1LgorCisgLS0gSWFuIEphY2tzb24gPGl3ajEwQGN1cy5jYW0uYWMudWs+ICBUdWUsIDYgSnVuIDE5OTUgMTg6NTY6MjMgKzAxMDAKKworZHBrZyAoMC45My40MikgQkVUQTsgcHJpb3JpdHk9TE9XOyBISUdIIGZvciBkc2VsZWN0IHVzZXJzCisKKyAgKiBGaXggdW5pdGlhbGlzZWQgdmFyaWFibGUgcmVmZXJlbmNlIGJ1ZyBpbiBkc2VsZWN0ICgjODkwKS4KKyAgKiBGaXggcHJvYmxlbSB3aXRoIHdvcmR3cmFwcGluZyBwYWNrYWdlIGFuZCBtZXRob2QgZGVzY3JpcHRpb25zLgorICAqIENyZWF0ZSAvdmFyL2xpYi9kcGtnL21ldGhvZHMvbW50LgorCisgLS0gSWFuIEphY2tzb24gPGl3ajEwQGN1cy5jYW0uYWMudWs+ICBGcmksIDE5IE1heSAxOTk1IDIxOjAzOjA4ICswMTAwCisKK2Rwa2cgKDAuOTMuNDEpIEJFVEE7IHByaW9yaXR5PUxPVworCisgICogQ3JlYXRlIC92YXIvbGliL2Rwa2cvbWV0aG9kcy4KKyAgKiBkcGtnLnBsIG5vaXNpbHkgaWdub3JlcyAtLXNraXAtc2FtZS12ZXJzaW9uIHJhdGhlciB0aGFuIGJhcmZpbmcuCisKKyAtLSBJYW4gSmFja3NvbiA8aXdqMTBAY3VzLmNhbS5hYy51az4gIFR1ZSwgMTYgTWF5IDE5OTUgMTM6Mjg6MjcgKzAxMDAKKworZHBrZyAoMC45My40MCkgQkVUQTsgcHJpb3JpdHk9TE9XCisKKyAgKiBkc2VsZWN0J3Mgc3VicHJvZ3JhbSBmYWlsdXJlIG1lc3NhZ2UgbWFkZSB0byBzdGFuZCBvdXQgbW9yZS4KKworICAqIFdoZW4gc3dpdGNoaW5nIG91dCBvZiBjdXJzZXMsIGFsd2F5cyBtb3ZlIHRoZSBjdXJzb3IgdG8gdGhlCisgICAgYm90dG9tIHJpZ2h0IGNvcm5lciBvZiB0aGUgc2NyZWVuLgorCisgLS0gSWFuIEphY2tzb24gPGl3ajEwQGN1cy5jYW0uYWMudWs+ICBUdWUsIDE2IE1heSAxOTk1IDAxOjAzOjM4ICswMTAwCisKK2Rwa2cgKDAuOTMuMzkpIEJFVEE7IHByaW9yaXR5PUxPVworCisgICogZHNlbGVjdCBjYW4gbm93OgorICAgIC0gYWxsb3cgeW91IHRvIHNlbGVjdCBhbmQgY29uZmlndXJlIGFuIGluc3RhbGxhdGlvbiBtZXRob2Q7CisgICAgLSBpbnZva2UgaW5zdGFsbGF0aW9uIG1ldGhvZCBzY3JpcHRzIHRvIHVwZGF0ZSB0aGUgYXZhaWxhYmxlIGZpbGUKKyAgICAgIGFuZCB1bnBhY2sgcGFja2FnZXM7CisgICAgLSBpbnZva2UgZHBrZyB0byBjb25maWd1cmUgYW5kIHJlbW92ZSBwYWNrYWdlcy4KKyAgICBUaGVyZSBhcmUgbm8gaW5zdGFsbGF0aW9uIG1ldGhvZHMgYXZhaWxhYmxlIHlldC4KKworICAqIFNlYXJjaCBmZWF0dXJlIGluIGRzZWxlY3Qgd29ya3MgKGl0IHdhcyBwdXJlbHkgYW4gbmN1cnNlcyBidWcpLgorCisgICogZHBrZy0qLm5vbmRlYmJpbi50YXIuZ3ogbm93IGF2YWlsYWJsZSAoYnVpbHQgYnkgZGViaWFuLnJ1bGVzKS4KKworICAqIFRoZSB0YXJnZXQgZGlyZWN0b3J5IGZvciBkcGtnLWRlYiAtLWV4dHJhY3QgKGFsc28gYXZhaWxhYmxlIGFzCisgICAgZHBrZyAtLWV4dHJhY3QpIGlzIG5vIGxvbmdlciBvcHRpb25hbC4gIGRwa2ctZGViIHN1Z2dlc3RzIHRoZSB1c2UKKyAgICBvZiBkcGtnIC0taW5zdGFsbCBpZiB5b3Ugb21pdCBpdC4KKworICAqIEFkZGVkIDxlcnJuby5oPiB0byBsaWIvbG9jay5jIGFuZCBmaXhlZCByZWYuIHRvIGBieXRlJyBpbgorICAgIG1kNXN1bS9tZDUuYywgZm9yIHBvcnRhYmlsaXR5IHRvIFNvbGFyaXMgMi4KKworICAqIFJlYnVpbHQgYGNvbmZpZ3VyZScgYW5kIGBjb25maWcuaC5pbicgdXNpbmcgYXV0b2NvbmYgMi4zLgorICAqIFJldmlzZWQgZnVuY3Rpb24gYXR0cmlidXRlIHN1cHBvcnQgY2hlY2tpbmcgaW4gY29uZmlndXJlIHNjcmlwdC4KKyAgKiBSZW1vdmVkIG9ic29sZXRlIGBkc2VsZWN0LnBsJyBmcm9tIHNjcmlwdHMgZGlyZWN0b3J5LgorICAqIE5ldyBvcHRpb24gLS1saWNlbmNlIG9uIGFsbCB0aGUgQyBwcm9ncmFtcy4KKworIC0tIElhbiBKYWNrc29uIDxpd2oxMEBjdXMuY2FtLmFjLnVrPiAgU3VuLCAxNCBNYXkgMTk5NSAxODowNTozOCArMDEwMAorCitkcGtnICgwLjkzLjM4KSBCRVRBOyBwcmlvcml0eT1NRURJVU0KKworICAqIFZlcnNpb24gbnVtYmVyIGNvbXBhcmlzb25zIChpbiBkcGtnIGFuZCBkc2VsZWN0KSBub3cgPj0gPD0KKyAgICBhcyBkb2N1bWVudGVkIChCdWcjODMxOyB0aGFua3MgdG8gQ2hyaXN0aWFuIExpbmhhcnQpLgorCisgICogZHNlbGVjdCBub3cgaGFzIGEgbm9uLXN1cGVydXNlciByZWFkb25seSBtb2RlLgorICAqIGRzZWxlY3QgZG9lc24ndCBwb3AgdXAgdW5zYXRpc2ZpZWQgYE9wdGlvbmFsJ3Mgd2hlbiBxdWl0dGluZy4KKyAgKiBgdW5hYmxlIHRvIGRlbGV0ZSBzYXZlZCBvbGQgZmlsZScgbWVzc2FnZSBmaXhlZCBkcGtnX3RtcCB0byBkcGtnLXRtcC4KKworICAqIE1hZGUgZHBrZyBjb252ZXJ0IGByZXZpc2lvbicgdG8gYHBhY2thZ2VfcmV2aXNpb24nIHdoZW4gcmVhZGluZworICAgIChlZykgdGhlIGBzdGF0dXMnIGZpbGUuICBsaWJkcGtnLmEgaGFzIGByZXZpc2lvbicgYXMgYSBzeW5vbnltCisgICAgZm9yIGBwYWNrYWdlX3JldmlzaW9uJyBhbmQgd3JpdGVzIHRoZSBmb3JtZXIuCisKKyAgKiBNYWpvciBpbXByb3ZlbWVudHMgYW5kIG1hbnkgY2hhbmdlcyB0byBDIG9wdGlvbiBwYXJzaW5nLCBkYXRhYmFzZQorICAgIG1hbmFnZW1lbnQsIGVycm9yIGhhbmRsaW5nLCBNYWtlZmlsZXMgJmMgdG8gc3VwcG9ydCBkcGtnLgorICAqIGRwa2ctZGViIHNob3VsZCBub3cgd29yayBpZiBzaXplb2Yodm9pZCopIDwgc2l6ZW9mKHZvaWQoKikoKSkuCisKKyAtLSBJYW4gSmFja3NvbiA8aXdqMTBAY3VzLmNhbS5hYy51az4gIE1vbiwgMjQgQXByIDE5OTUgMTI6MzQ6MzkgKzAxMDAKKworZHBrZyAoMC45My4zNykgQkVUQTsgcHJpb3JpdHk9TE9XIChNRURJVU0gZm9yIGRzZWxlY3QgdXNlcnMpCisKKyAgKiBGaXhlZCBzZWdmYXVsdCBpZiBubyBkZXNjcmlwdGlvbiBhdmFpbGFibGUgKEJ1ZyM3MzUpOworICAgIHRoYW5rcyB0byBQZXRlciBUb2JpYXMgZm9yIHRoZSBidWcgcmVwb3J0LgorICAqIEZpeGVkIG90aGVyIGFzc29ydGVkIG1pbm9yIGJ1Z3MgaW4gZGVzY3JpcHRpb24gZGlzcGxheXMuCisKKyAgKiBDaGFuZ2VkIGRwa2ctZGViIC0taW5mbyBzaG9ydCBvcHRpb24gZnJvbSAtaSB0byAtSSwgdG8gbWFrZQorICAgIGl0IHVuaXF1ZSBhY3Jvc3MgZHBrZyBhbmQgZHBrZy1kZWIgKC1pIHN0aWxsIHdvcmtzIHdpdGgKKyAgICBkcGtnLWRlYiBmb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHkpLgorCisgICogUHJvZHVjZSBtb3JlIHNlbnNpYmxlIGVycm9yIHdoZW4gbWFpbiBwYWNrYWdlIGxpc3QgaXMgZW1wdHkuCisKKyAtLSBJYW4gSmFja3NvbiA8aXdqMTBAY3VzLmNhbS5hYy51az4gIEZyaSwgNyBBcHIgMTk5NSAwMjoyNDo1NSArMDEwMAorCitkcGtnICgwLjkzLjM2KSBCRVRBOyBwcmlvcml0eT1MT1cgKE1FRElVTSBmb3IgZHNlbGVjdCB1c2VycykKKworICAqIEFsbCB0aGUgQyBjb2RlIChpbmNsdWRpbmcgZHNlbGVjdCkgdXBkYXRlZCB0byBzdXBwb3J0IGBwcm92aWRlcycKKyAgICAodmlydHVhbCBwYWNrYWdlcykuCisgICogUmV2YW1wZWQgZHNlbGVjdCdzIHJlbGF0ZWQgcGFja2FnZSBzZWxlY3Rpb24vZGVzZWxlY3Rpb24KKyAgICBhbGdvcml0aG1zLgorICAqIEV2ZXJ5dGhpbmcgY2FuIG5vdyBoYW5kbGUgYXJiaXRyYXJ5IGBjbGFzcycgdmFsdWVzIChhcyB3ZWxsCisgICAgYXMgdGhlIHByZWRlZmluZWQgb25lcyB3aGljaCB3ZSB1bmRlcnN0YW5kIGFuZCBjYW4gaW50ZXJwcmV0KS4KKyAgKiBGaXhlZCBidWcgdGhhdCBwcmV2ZW50ZWQgZGlzcGxheSB1cGRhdGUgd2hlbiBtb3ZpbmcgZG93biBhIHNtYWxsCisgICAgcmVjdXJzaXZlIHBhY2thZ2UgbGlzdCBpbiBkc2VsZWN0LgorICAqIENvbHVtbiBoZWFkaW5nIGNoYXJhY3RlcnMgY29ycmVjdGVkIGZyb20gYFNIT0MnIHRvIGBIU09DJy4KKworIC0tIElhbiBKYWNrc29uIDxpd2oxMEBjdXMuY2FtLmFjLnVrPiAgVGh1LCA2IEFwciAxOTk1IDEyOjQ4OjEzICswMTAwCisKK2Rwa2cgKDAuOTMuMzUpIEJFVEE7IHByaW9yaXR5PU1FRElVTQorCisgKiBQcmVzZXJ2ZSBvd25lcnNoaXBzIGFuZCBwZXJtaXNzaW9ucyBvbiBjb25maWd1cmF0aW9uIGZpbGVzLgorICogRml4IGJ1ZyBpbiBjb25mZmlsZSB1cGRhdGluZyB0aGF0IGNvdWxkIGxlYXZlIGEgaGFyZGxpbmsKKyAgIDxmb28+LmRwa2ctbmV3IHRvIHRoZSBjb25mZmlsZSA8Zm9vPi4KKworICogSW1wcm92ZWQgZHNlbGVjdCdzIHBhY2thZ2UgbGlzdCBoZWxwIG1lc3NhZ2VzLgorICogSGlnaGxpZ2h0IG5vdyBtb3ZlcyBvbiBhZnRlciAoZGUpc2VsZWN0aW5nIGp1c3Qgb25lIHBhY2thZ2UuCisgKiBCZXR0ZXIgYWxnb3JpdGhtIGZvciBzY3JvbGxpbmcgdXAvZG93biB3aGVuIG1vdmluZyBoaWdobGlnaHQuCisgKiBGaXhlZCBidWcgaW4gZGlzcGxheSBvZiBgcHJlZm9ybWF0dGVkJyBleHRlbmRlZCBEZXNjcmlwdGlvbiBsaW5lcy4KKyAgIChkc2VsZWN0IGlzIHN0aWxsIEFMUEhBLCBidXQgaXMgZmFpcmx5IHN0YWJsZS4pCisKKyAqIEltcHJvdmVkIGRwa2cncyBtZXNzYWdlIHdoZW4gY29uZmlndXJpbmcgYSBwYWNrYWdlIHRoYXQgZG9lc24ndAorICAgZXhpc3QsIGFuZCB3aGVuIHNlbGVjdGluZyBvciBza2lwcGluZyBhIHBhY2thZ2UgdGhhdCBpc24ndAorICAgY3VycmVudGx5IHNlbGVjdGVkIChkdXJpbmcgdW5wYWNrIHByb2Nlc3NpbmcpLgorCisgKiBEZXNjcmlwdGlvbiBpbiBjb250cm9sIGZpbGUgZXhwYW5kZWQuCisKKyAqIFNjcm9sbCBiYWNrIHRvIHRvcCB3aGVuIGNoYW5naW5nIHdoYXQgaXMgaW4gdGhlIGBpbmZvJyBhcmVhLgorCitkcGtnICgwLjkzLjM0KSBCRVRBOyBwcmlvcml0eT1MT1cgKEhJR0ggZm9yIGRzZWxlY3QgdXNlcnMpCisKKyAqIGRzZWxlY3Q6IEZpeGVkIGJ1ZyB3aGljaCBjYXVzZWQgYSBjb3JlZHVtcCBpZiB5b3UgZXhpdGVkIHRoZQorICAgcGFja2FnZSBsaXN0IGlmIHlvdSdkIG1hZGUgYW55IGNoYW5nZXMuICBPdWNoICEKKworICogZHNlbGVjdDogSW1wcm92ZWQgc2VsZWN0aW9uIGFsZ29yaXRobSB0byBzaG93IGZld2VyIGV4dHJhbmVvdXMKKyAgIHBhY2thZ2VzOyBpbXByb3ZlZCBkaXNwbGF5IGZvciB1bmF2YWlsYWJsZSBwYWNrYWdlcy4KKworICogZHBrZzogSW1wcm92ZWQgcHJvZ3Jlc3MgbWVzc2FnZXMgZHVyaW5nIHVucGFja2luZyBzb21ld2hhdC4KKworZHBrZyAoMC45My4zMykgQkVUQTsgcHJpb3JpdHk9TE9XIChISUdIIGZvciBkc2VsZWN0IHVzZXJzKQorCisgKiBkc2VsZWN0IG5vdyBoYXMgYSBtYWluIG1lbnUuCisKKyAqIEZpeGVkIG5hc3R5IHVuaW5pdGlhbGlzZWQgZGF0YSBidWcgaW4gZHNlbGVjdC4KKworICogZHNlbGVjdCBub3cgbG9ja3MgYW5kIHVubG9ja3MgdGhlIHBhY2thZ2VzIGRhdGFiYXNlLgorCitNb24sIDI3IE1hciAxOTk1IDAzOjMwOjUxIEJTVCAgSWFuIEphY2tzb24gPGl3ajEwQGN1cy5jYW0uYWMudWs+CisKKwkqIGRwa2cgKDAuOTMuMzIpOiBBbHBoYSBkc2VsZWN0IHJlbGVhc2VkIGFuZCBpbnN0YWxsZWQgaW4KKwkgICAgICAgICAgICAgICAgICAvdXNyL3NiaW4vZHNlbGVjdC4KKwkqIGRwa2cgKDAuOTMuMzIpOiBNYW55IHBvcnRhYmlsaXR5IGVuaGFuY2VtZW50czogc2hvdWxkIG5vdworCSAgICAgICAgICAgICAgICAgIGNvbXBpbGUgdXNpbmcgR0NDIDIuNi4zLCBhbmQgZHBrZy1kZWIgc2hvdWxkCisJICAgICAgICAgICAgICAgICAgY29tcGlsZSBiZXR0ZXIgb24gbm9uLUxpbnV4IHN5c3RlbXMuCisJKiBkcGtnICgwLjkzLjMyKTogZHBrZyB3aWxsIG5vdCBsb29wIGlmIGl0cyBzdGRpbiBkaXNhcHBlYXJzCisJICAgICAgICAgICAgICAgICAgYW5kIGl0IG5lZWRzIHRvIHByb21wdC4KKwkqIGRwa2cgKDAuOTMuMzIpOiBGaXhlZCByZW1vdmFsIGRlcGVuZGVuY3kgZXJyb3IgdG8gc2hvdworCSAgICAgICAgICAgICAgICAgIGNvcnJlY3QgcGFja2FnZSAoQnVnICM2NDgpLgorCSogZHBrZyAoMC45My4zMik6IFRpZGllZCB1cCBjb3B5cmlnaHQgbm90aWNlcy4KKwkqIGRwa2cgKDAuOTMuMzIpOiBGaXJzdCBkcmFmdCBvZiB1cGRhdGUtcmMuZCBtYW5wYWdlLCBub3QgeWV0CisJICAgICAgICAgICAgICAgICAgaW5zdGFsbGVkIGluIC91c3IvbWFuLgorCSogZHBrZyAoMC45My4zMik6IENoYW5nZXMgdG8gdG9wLWxldmVsIE1ha2VmaWxlLmluIHRvIGltcHJvdmUKKwkgICAgICAgICAgICAgICAgICBlcnJvciB0cmFwcGluZy4KKwkqIGRwa2cgKDAuOTMuMzIpOiBJbXByb3ZlZCBNYWtlZmlsZSBgY2xlYW4nIGFuZCBgZGlzdGNsZWFuJworCSAgICAgICAgICAgICAgICAgIHRhcmdldHMuCisJKiBkcGtnICgwLjkzLjMyKTogRGVsZXRlZCBpcnJlbGV2YW50IGB0LmMnIGZyb20gbGliIGFuZAorCSAgICAgICAgICAgICAgICAgIGRzZWxlY3QgZGlyZWN0b3JpZXMuCisJKiBkcGtnICgwLjkzLjMyKTogQWRkZWQgdmVyY21wLmMgd2l0aCB2ZXJzaW9uIGNvbXBhcmlzb24gY29kZS4KKwkqIGRwa2cgKDAuOTMuMzIpOiB2YXJidWZleHRlbmQgbWVzc2FnZSBjaGFuZ2VkIC0gdmFyYnVmcyBub3QKKwkgICAgICAgICAgICAgICAgICBqdXN0IGZvciBpbnB1dCBidWZmZXJzLgorCSogZHBrZyAoMC45My4zMik6IHZhcmJ1ZiBoYXMgQysrIG1lbWJlciBmdW5jdGlvbnMgaW4gaGVhZGVyCisJICAgICAgICAgICAgICAgICAgI2lmZGVmIF9fY3BsdXNwbHVzLgorCitDaGFuZ2VzIGluIGRwa2cgMC45My4zMToKKworKiBzdGFydC1zdG9wLWRhZW1vbiAtLXBpZGZpbGUgbm93IHdvcmtzIChCdWcjNTcxKS4KKyogRml4ZWQgZGVwZW5kZW5jeSBwcm9jZXNzaW5nIGJ1Z3Mgd2hpY2ggY291bGQgcmVxdWlyZSBhIHJlcnVuIG9mCisgIGRwa2cgLS1jb25maWd1cmUgKEJ1ZyM1NjYpLgorKiBGaXhlZCBnYXJiYWdlIG91dHB1dCBmb3IgYGxhbmd1YWdlJyBvZiBjb250cm9sIGZpbGUgaW4gZHBrZy1kZWIgLS1pbmZvLgorCitDaGFuZ2VzIGluIGRwa2cgMC45My4zMDoKKworKiBBZGRlZCAvdXNyL3NiaW4vc3RhcnQtc3RvcC1kYWVtb24uCisKK0NoYW5nZXMgaW4gZHBrZyAwLjkzLjI5OgorCisqIE1hZGUgcG9zdGluc3Qgc2NyaXB0cyByZWFsbHkgYmUgcnVuIHdoZW4gZHBrZyAtLXB1cmdlIHVzZWQuCisqIEFkZGVkIG5ldyAtLWZvcmNlLWV4dHJhY3RmYWlsIG9wdGlvbiAtIFZFUlkgREFOR0VST1VTLgorCitDaGFuZ2VzIGluIGRwa2cgMC45My4yODoKKworKiBSZW1vdmVkIHVuZGVmIG9mIDB4X3AyMSBpbiByZWFkX2RhdGFiYXNlX2ZpbGUsIHdoaWNoIGNhdXNlZCB0aGUKKyAgdGhlIHdob2xlIHN0YXR1cyBkYXRhYmFzZSB0byBiZWNvbWUgdHJhc2hlZCB3aGVuIGFueSB1cGRhdGUgZmlsZXMKKyAgd2VyZSByZWFkLgorKiBNYWtlIGluZmluaXRlLWxvb3AgcHJldmVudGlvbiBhbmQgY3ljbGUgZGV0ZWN0aW9uIHdvcmsuCisqIE1hZGUgZmluZGJyZWFrY3ljbGUgd29yayAoaWUsIGJyZWFrIHByb3Blcmx5IHdoZW4gY3ljbGUgZGV0ZWN0ZWQpLgorKiBOZXcgc2NyaXB0LCB1cGRhdGUtcmMuZCwgdG8gdXBkYXRlIGxpbmtzIC9ldGMvcmM/LmQvW0tTXT8/Ki4KKyogZHBrZy5wbCBub3cgc2V0cyB0aGUgdW1hc2sgdG8gMDIyLgorKiBDb3NtZXRpYyBlcnJvciBtZXNzYWdlIGZpeCB0byBkcGtnLWRlYi4KKyogRGVsZXRlZCBPTEQgZGlyZWN0b3J5IGFsdG9nZXRoZXIuCisqIEltcHJvdmVkIGVycm9yLXRyYXBwaW5nIGluIHRvcC1sZXZlbCBNYWtlZmlsZSBsb29wcy4KKworQ2hhbmdlcyBpbiBkcGtnIDAuOTMuMjc6CisKKyogTWFrZSB2ZXJzaW9uIG51bWJlciBzcGVjaWZpY2F0aW9ucyBpbiBEZXBlbmRzICZjIHdvcmsuCisqIEFkZGVkIEFDX1BST0dfQ1hYIHRvIGF1dG9jb25mLmluIGZvciBkc2VsZWN0LgorKiBDaGFuZ2VkIG15b3B0Lmggbm90IHRvIGhhdmUgY2lwYWN0aW9uIGZpZWxkIGluIGNtZGluZm8gKHRoaXMgd2FzCisgIHNwZWNpYWxseSBmb3IgZHBrZy1kZWIpIC0gbm93IHdlIGhhdmUgYSBnZW5lcmljIHZvaWQqLgorKiBSZW5hbWVkIGBjbGFzcycgbWVtYmVyIG9mIGBwa2dpbmZvcGVyZmlsZScgdG8gYGNsYXMnIFtzaWNdLgorKiBNdWNoIHdvcmsgaW4gYGRzZWxlY3QnIHN1YmRpcmVjdG9yeS4KKyogRGVsZXRlZCBleGVjdXRhYmxlcywgb2JqZWN0cyBhbmQgbGlicmFyaWVzIGZyb20gT0xEIHRyZWUgIQorKiBNaW5vciBjaGFuZ2VzIHRvIHZhcmlvdXMgY29weXJpZ2h0IG5vdGljZXMgYW5kIHRvcC1vZi1maWxlIGNvbW1lbnRzLgorKiBEb24ndCBpbnN0YWxsIG5hc3R5IFBlcmwgZHNlbGVjdGlzaCB0aGluZyBhcyAvdXNyL2Jpbi9kc2VsZWN0LgorCitDaGFuZ2VzIGluIGRwa2cgMC45My4yNjoKKworKiBBZGRlZCAtLW5vLWFsc28tc2VsZWN0IGluc3RlYWQgb2Ygbm90IGF1dG8tc2VsZWN0aW5nIG9uIC0tdW5wYWNrCisgIGJ1dCBkb2luZyBzbyBvbiAtLWluc3RhbGw7IHJlbW92ZWQgLS1mb3JjZS11bnBhY2stYW55LgorCitDaGFuZ2VzIGluIGRwa2cgMC45My4yNToKKworKiBGaXhlZCBkdXBsaWNhdGUgb3V0cHV0IChmYWlsdXJlIHRvIGZsdXNoIGJlZm9yZSBmb3JrKSBidWcuCisqIE1vcmUgY2xhcmlmaWNhdGlvbiBvZiBtZDVzdW0uYyBjb3B5cmlnaHQuCisqIENvcnJlY3RlZCB0eXBvIGluIENoYW5nZUxvZyBpbiAwLjkzLjI0IHNvdXJjZSBwYWNrYWdlLgorCitDaGFuZ2VzIGluIGRwa2cgMC45My4yNDoKKworKiBkcGtnIGNvdWxkIGNvcHkgY29uZmZpbGVzIGluZm8gZnJvbSBvbmUgcGFja2FnZSB0byBhbm90aGVyLiAgQWFyZ2guCisgIEJ1ZyAjNDI2LgorKiBkcGtnIGZhaWxlZCB0byBpbml0aWFsaXNlIHN0YXR1cyBpZiB5b3UgdHJpZWQgdG8gcmVtb3ZlIG9yCisgIGNvbmZpZ3VyZSBhIG5vbmV4aXN0ZW50IHBhY2thZ2UuICBCdWcgIzQxOS4KKyogaW5zdGFsbC1pbmZvIG5vdyBoYW5kbGVzIFNUQVJULUlORk8tRElSLUVOVFJZIGVudHJpZXMgbGlrZToKKyAgICogR2RiOjogICAgICAgICAgICAgICAgICAgICAgICAgVGhlIEdOVSBkZWJ1Z2dlci4KKyAgUHJldmlvdXNseSBpdCB3b3VsZCBvbmx5IGFjY2VwdCAoQnVnICM0MDcpOgorICAgKiBHZGI6IChnZGIpLiAgICAgICAgICAgICAgICAgICBUaGUgR05VIGRlYnVnZ2VyLgorKiBXaGVuIGluc3RhbGxpbmcgYSBuZXcgZm9vLmluZm9bLmd6XSwgaW5zdGFsbC1pbmZvIG5vdyByZXBsYWNlcworICAgKiBGb286IChmb28uaW5mbykuICAgICAgICAgICAgICBUaGUgR25vbyBGb28uCisgIGFzIHdlbGwgYXMganVzdCAqIEZvbzogKGZvbykuIC4uLgorKiBNb3ZlZCBvcHRpb24gcGFyc2luZyBvdXQgb2YgZHBrZy1kZWIgaW50byBsaWJkcGtnLgorKiBBc3NvcnRlZCBtaW5vciBzb3VyY2UgY29kZSByZWFycmFuZ2VtZW50cy4KKyogRml4ZWQgYXNzb3J0ZWQgY29weXJpZ2h0IG5vdGljZXMsIGNsYXJpZmllZCBtZDVzdW0gY29weXJpZ2h0LgorKiBDb3JyZWN0ZWQgdHlwbyBpbiAwLjkzLjIzIHNvdXJjZSBwYWNrYWdlJ3MgQ2hhbmdlTG9nLgorCitDaGFuZ2VzIGluIGRwa2cgMC45My4yMzoKKworKiBgZHBrZy1kZWInIC0tYnVpbGQgbm93IGRvZXMgYSBzeW50YXggY2hlY2sgb24gdGhlIGNvbnRyb2wgZmlsZS4KKyogYGRzZWxlY3QnIGlzIG5vdyBubyBsb25nZXIgY2FsbGVkIGBkZWJpYW4nLCBzcHVyaW91cyBjb3B5IHJlbW92ZWQKKyAgZnJvbSBwYWNrYWdlIHRvcC1sZXZlbCBzb3VyY2UgZGlyZWN0b3J5LgorKiBDIGNvbnRyb2wgaW5mb3JtYXRpb24gcGFyc2luZyBjb21wbGV0ZSBhbmQgc29tZXdoYXQgdGVzdGVkLgorKiBNb3ZlZCBgZ2xvYmFsJyBpbmNsdWRlIGZpbGVzIGludG8gJChzcmNkaXIpL2luY2x1ZGUgZnJvbSAuLi9saWIsCisgIGFkZGVkIHNvbWUgZmlsZXMgdG8gdGhlIGxpYiBNYWtlZmlsZSwgYW5kIGFycmFuZ2VkIGZvciBwb3BfY2xlYW51cCgpLgorCitDaGFuZ2VzIGluIGRwa2cgMC45My4yMjoKKworKiBGaXhlZCBidWcgd2hpY2ggY2F1c2VkIGRwa2cgdG8gc2VlIGZhaWx1cmVzIG9mIG1kNXN1bSB3aGVyZSB0aGVyZQorICB3ZXJlIG5vbmUgKHdvdWxkIGFsc28gaGF2ZSBjYXVzZWQgZHBrZyB0byBtaXNzIGEgcmVhbCBmYWlsdXJlKS4KKyogRml4ZWQgZmFpbHVyZSB0byB1cGRhdGUgc29tZSBgc3RhdHVzJyBkYXRhYmFzZSBmaWVsZHMuCisKK0NoYW5nZXMgaW4gZHBrZyAwLjkzLjIxOgorCisqIEZpeGVkIGVycm9yLWhhbmRsaW5nIGJ1ZyB3aGljaCBjb3VsZCBjb3JydXB0IGRhdGFiYXNlLgorCitDaGFuZ2VzIGluIGRwa2cgMC45My4yMDoKKworKiBGaXhlZCBidWcgd2hpY2ggcmFuIG9sZCAoL3Zhci9hZG0vZHBrZykgcG9zdGluc3Qgc2NyaXB0cy4KKyogRml4ZWQgZHBrZyB1c2FnZSBtZXNzYWdlIHdoaWNoIGNsYWltZWQgLWkgPT4gYm90aCAtLWluc3RhbGwgJiAtLWluZm8uCisqIFVzZSBDb2xpbiBQbHVtYidzIE1ENSBjb2RlIC0gZmFzdGVyLCBhbmQgYmV0dGVyIGNvcHlyaWdodC4KKyogTWFucGFnZXM6IGRwa2ctZGViKDgpLCBkZWItY29udHJvbCg1KSwgZGViKDUpIC0gdGhhbmtzIHRvIFJhdWwKKyAgRGVsdXRoIE1pbGxlci4gIEFsc28sIGFuIHhmaWcgcGljdHVyZSBvZiBzb21lIEMgcHJvZ3JhbSBpbm5hcmRzLgorCitDaGFuZ2VzIGluIGRwa2cgMC45My4xOToKKworKiBEb24ndCBkZWxldGUgdGhlIGBsaXN0JyBmaWxlIGZyb20gdGhlIGRwa2cgZGF0YWJhc2UuCisqIEZpeGVkIHZhcmlvdXMgYnVncyBpbiB0aGUgY29uZmZpbGUgaGFuZGxpbmcuCisqIENvbmZmaWxlcyB0aGF0IGFyZSBzeW1saW5rcyB3aWxsIG5vdyBiZSB0cmVhdGVkIGFzIGlmIHRoZQorICBgZGVyZWZlcmVuY2VkJyBuYW1lIG9mIHRoZSBmaWxlIHdhcyBsaXN0ZWQgaW4gY29uZmZpbGVzLiAgVGhpcyBtZWFucworICB0aGF0IC9ldGMvZm9vIC0+IC91c3IvZXRjL2ZvbyB3aWxsIGNhdXNlIGFsbCBjb25mZmlsZSB1cGRhdGVzIG9mCisgIC9ldGMvZm9vIHRvIGNyZWF0ZSAvdXNyL2V0Yy9mb28uZHBrZy10bXAgJmMgaW5zdGVhZC4gIEhvd2V2ZXIsIHRoZQorICBsaW5rIHdpbGwgYmUgcmVtb3ZlZCBpZiAtLXB1cmdlIGlzIHVzZWQgdG8gZGVsZXRlIGFsbCB0aGUgY29uZmZpbGVzLgorKiBXaGVuIGRvaW5nIGEgbmV3IGluc3RhbGxhdGlvbiwgb3Igd2hlbiB1cGRhdGluZyBhIGNvbmZmaWxlIHRoYXQKKyAgd2Fzbid0IGxpc3RlZCBhcyBhIGNvbmZmaWxlIGluIHRoZSBvbGQgdmVyc2lvbiBvZiB0aGUgcGFja2FnZSwgZG9uJ3QKKyAgZG8gYW55IHByb21wdGluZyBidXQganVzdCBpbnN0YWxsIHRoZSB2ZXJzaW9uIGZyb20gdGhlIGFyY2hpdmUuCisqIENvcnJlY3RlZCBlcnJvciBtZXNzYWdlIGlmIGV4ZWMgb2YgZHBrZyAtLXZleHRyYWN0IGZhaWxlZAorICBhbmQgLS1pbnN0cm9vdCBvciAtLXJvb3Qgc3BlY2lmaWVkLgorKiBBZGRlZCBuZXcgLS1mb3JjZS11bnBhY2stYW55IG9wdGlvbi4KKyogRXh0cmEgbmV3bGluZSBhZnRlciAtLXN0YXR1cyBvdXRwdXQuCisqIEFkZGVkIC1XIG9wdGlvbnMgdG8gQ0ZMQUdTLgorKiBGaXhlZCBtaXN0YWtlIGluIHByZXZpb3VzIENoYW5nZUxvZyBlbnRyeS4KKworQ2hhbmdlcyBpbiBkcGtnIDAuOTMuMTg6CisKKyogRml4ZWQgaW52b2NhdGlvbiBvZiBkcGtnLWRlYiAtLXZleHRyYWN0IGlmIC0tcm9vdCBvciAtLWluc3RkaXIKKyAgbm90IHNwZWNpZmllZC4KKyogQ3JlYXRlIC92YXIvbGliL2Rwa2cvdXBkYXRlcy4KKworQ2hhbmdlcyBpbiBkcGtnIDAuOTMuMTc6CisKKyogaW5zdGFsbC1pbmZvIC0tcmVtb3ZlIGV4aXRzIHdpdGggc3RhdHVzIDAgaWYgaXQgZG9lc24ndCBmaW5kIHRoZQorICB0aGluZyB0byByZW1vdmUsIGluc3RlYWQgb2Ygc3RhdHVzIDEuCisqIEVycm9yIGhhbmRsaW5nIGZ1bmN0aW9ucyBoYXZlIF9fYXR0cmlidXRlX18oKGZvcm1hdC4uLikpIGlmIEdDQy4KKyogcHVzaF9jbGVhbnVwIGl0cyBhcmcgdGFrZXMgdm9pZCAqKmFyZ3YgaW5zdGVhZCBvZiBjaGFyICoqYXJndi4KKyogVG9wLWxldmVsIE1ha2VmaWxlLmluIGhhcyBzZXQgLWUgYmVmb3JlIGBmb3InIGxvb3BzLgorKiBkcGtnLWRlYiAtLWluZm8gbm90LWFuLWV4aXN0aW5nLWZpbGUgcHJvZHVjZXMgZmV3ZXIgZXJyb3IgbWVzc2FnZXMuCisKK0NoYW5nZXMgaW4gZHBrZyAwLjkzLjE2OgorCisqIE1hZGUgLS1yb290PSBvcHRpb24gcmVhbGx5IGV4dHJhY3QgdG8gJGluc3Ryb290IGluc3RlYWQgb2YgYC8nLgorKiBpbnN0YWxsLWluZm8gY2xlYXJzIHRoZSAwNDQ0IGJpdHMgaW4gaXRzIHVtYXNrLgorKiBGaXhlZCBhIGZldyBkYXRhYmFzZSBoYW5kbGluZyBidWdzIHdoaWNoIGNhdXNlIGRwa2cgYWx3YXlzIHRvIGZhaWwsCisgIGFuZCB1c3VhbGx5IHRvIGNvcnJ1cHQgdGhlIHN0YXR1cyBkYXRhYmFzZSBpbiB2YXJpb3VzIHdheXMuCisqIGRwa2ctZGViIGNvbXBsZXRlbHkgcmV3cml0dGVuLCBub3cgZG9lc24ndCB0aW5rZXIgd2l0aAorICAvdmFyL3thZG0sbGlifS9kcGtnLiAgU2hvdWxkIGJlIGZhc3Rlci4KKyogRGlyZWN0b3J5IHN0cnVjdHVyZSBhbmQgTWFrZWZpbGVzIGluIHNvdXJjZSBwYWNrYWdlIHJlb3JnYW5pc2VkLgorCitDaGFuZ2VzIGluIGRwa2cgMC45My4xNToKKworKiBBZGRlZCBgZGViaWFuJyAoZHNlbGVjdCksIHN0aWxsIHZlcnkgcHJpbWl0aXZlLgorKiBEYXRhYmFzZSBmb3JtYXQgY2hhbmdlZCwgYW5kIG1vdmVkIGZyb20gL3Zhci9hZG0gdG8gL3Zhci9saWIuCisqIEFkZGVkIGRwa2cgLS1hdmFpbCBtb2RlLCAtLWxpc3QsIC0tc3RhdHVzIGFuZCAtLXNlYXJjaC4KKyogU2V0IG9mIGRwa2cgPT4gZHBrZy1kZWIgcGFzcy10aHJvdWdoIG9wZXJhdGlvbnMgY2hhbmdlZCAoYnV0CisgIGRwa2ctZGViIG5vdCB5ZXQgdXBkYXRlZCkuCisqIEFkZGVkIC0tcm9vdCwgLS1hZG1pbmRpciBhbmQgLS1pbnN0ZGlyLCBhcyB3ZWxsIGFzIC0taXNvayAmYy4KKyogTW92ZWQgbXVjaCBzdHVmZiBpbnRvIC91c3IvbGliL2Rwa2ctbGliLnBsLCByZXdyaXR0ZW4gc3RhdHVzCisgIGRhdGFiYXNlIGhhbmRsaW5nLgorKiBQdXQgcGFja2FnZXMgaW4gYHB1cmdlJyBzdGF0ZSBldmVuIGlmIGBkZWluc3RhbGwnIHJlcXVlc3RlZCBpZgorICB0aGV5IGhhdmUgbm8gcG9zdHJtIGFuZCBubyBjb25mZmlsZXMuCisqIFZlcnNpb24gbnVtYmVyIGNvbXBhcmlzb25zIGZpeGVkLgorKiBpbnNlcnQtdmVyc2lvbi5wbCBub3cgaW5zdGFsbGVzIGxpYi5wbCBmaWxlbmFtZSB0b28uCisqIFN0cmlwIHRyYWlsaW5nIHNsYXNoZXMgd2hlbiByZWFkaW5nIGZpbGVzIGZyb20gZmlsZSBsaXN0cy4KKworQ2hhbmdlcyBpbiBkcGtnIDAuOTMuMTQ6CisKKyogRml4ZWQgcGFyc2luZyBvZiBERVBFTkRTICZjIGZpZWxkcyB3aXRoIHRyYWlsaW5nIHdoaXRlc3BhY2UuCisqIHBvc3RpbnN0IG5vdyBmaXhlcyB1cCBicm9rZW4gaXNwZWxsLmNvbnRyb2wgZmlsZS4KKyogQ3ljbGljIGRlcGVuZGVuY3kvbXVsdGlwbGUgcGFja2FnZSByZW1vdmFsIHByb2Nlc3Npbmc6IGRvbid0IGNvbnNpZGVyCisgIHBhY2thZ2VzIHdlJ3ZlIGp1c3QgcmVtb3ZlZCB3aGVuIGxvb2tpbmcgZm9yIGEgcmVhc29uIG5vdCB0byBnbyBhaGVhZC4KKyogQWRkZWQgY2FsbCB0byBwb3N0aW5zdCB3aXRoIGBwdXJnZScgYXJndW1lbnQgZm9yIGV4cHVuZ2luZyBvbGQKKyAgY29uZmlndXJhdGlvbiBldGMuIHRoYXQgYXJlbid0IGxpc3RlZCBpbiBjb25mZmlsZXMuCisKK0NoYW5nZXMgaW4gZHBrZyAwLjkzLjEzOgorCisqIHN1YiBTX0lTUkVHIGRlZmluZWQgaW4gZHBrZy5wbC4KKyogQ2hlY2tpbmcgb2YgREVQRU5EUyAmYyBmaWVsZHMgd2FzIHRvbyBsYXgsIGNhdXNpbmcgYW4gaW50ZXJuYWwgZXJyb3IKKyAgaWYgeW91IGZlZCBpdCBjZXJ0YWluIGtpbmRzIG9mIGJyb2tlbiBjb250cm9sIGZpbGUuCisqIEZpeGVkIG1pc2xlYWRpbmcgbWVzc2FnZSBmcm9tIGJvZ3VzIGluc3RhbGxhdGlvbnN0YXR1cyBjYWxsLgorKiBOZXcgLXUgYW5kIC1VIG9wdGlvbnMgdG8gZHBrZy1kZWIgd2hpY2ggZG9uJ3QgdW5wYWNrIHRoZSAvREVCSUFOCisgIGRpcmVjdG9yeSwgYW5kIHVzZSB0aGVzZSBpbiBkcGtnLnBsOyBjbGVhbiB1cCAvREVCSUFOIGluIHBvc3RpbnN0LgorCitDaGFuZ2VzIGluIGRwa2cgMC45My4xMjoKKworKiBObyBsb25nZXIgbmVlZHMgKi5waCBmaWxlcywgc2luY2UgdGhlc2UgYXBwZWFyIHRvIGJlIGJyb2tlbi4KKyogUG9zdGluc3QgZml4ZXMgdXAgKi5jb250cm9sIGZpbGVzIHdpdGggY3VybHkgYnJhY2tldHMuCisqIGVtYnJ5byBvZiBkc2VsZWN0LgorCitDaGFuZ2VzIGluIGRwa2cgMC45My4xMToKKworKiBOZXcgLS1pZ25vcmUtZGVwZW5kcyBvcHRpb24uCisqIFRoaXMgQ2hhbmdlTG9nIGNoYW5nZWQgZm9ybWF0IGhlcmUuCisKK1dlZCBOb3YgMzAgMTU6Mzg6MjEgR01UIDE5OTQgIElhbiBKYWNrc29uICA8aXdqMTBAY3VzLmNhbS5hYy51az4KKworCSogZHBrZyAwLjkzLjExIHJlbGVhc2VkLgorCisJKiBjb25mZmlsZSB1cGRhdGluZyBmaXhlZC4KKworCSogTWVzc2FnZSBgdXBkZ3JhZGUnIGluIGRwa2cgY2hhbmdlZCB0byBgcmVwbGFjZScuCisKKwkqIGluc3RhbGwtaW5mbyBub3cgY29wZXMgd2l0aCBtdWx0aS1saW5lIGVudHJpZXMuCisKKwkqIHZlcnNpb24gbnVtYmVycyBub3cgZG9uZSBhdXRvbWF0aWNhbGx5IGluIGRwa2cgYW5kIGluc3RhbGwtaW5mby4KKworCSogbW9yZSBkZWJ1Z2dpbmcgYXJvdW5kIGNvbmZmaWxlcyB1cGRhdGVzLgorCisJKiAqLmhhc2ggZmlsZXMgbm90IGRlbGV0ZWQgc28gc29vbi4KKworCSogYWRkcyBicmFuZCBuZXcgcGFja2FnZXMgdG8gc3RhdHVzIGFycmF5IHNvIHdlIGNhbiBpbnN0YWxsIHRoZW0uCisKKwkqIHBvc3RpbnN0IGRvZXMgaDJwaCBmb3Ige3N5cyxsaW51eH0ve3N0YXQsdHlwZXN9LnBoIGlmIHJlcXVpcmVkLgorCitNb24gTm92IDI4IDAyOjAwOjEzIEdNVCAxOTk0ICBJYW4gSmFja3NvbiAgPGl3ajEwQGN1cy5jYW0uYWMudWs+CisKKyAgICAgICAgKiBkcGtnIDAuOTMuMTAgcmVsZWFzZWQuCisKKyAgICAgICAgKiBkcGtnLnBsIGNvbXBsZXRlbHkgcmV3cml0dGVuLgorCisgICAgICAgICogZHBrZy1kZWI6IHJlbW92ZWQgZGFiYXNlLXByb2Nlc3NpbmcgYW5kIC0taW5zdGFsbCBvcHRpb24uCisKKyAgICAgICAgKiBNYWtlZmlsZXMgcmV3b3JrZWQsIGRlYmlhbi5ydWxlcyBhZGRlZC4KKworICAgICAgICAqIERvbid0IGluc3RhbGwgYW55dGhpbmcgaW4gL3Vzci9kb2MvZXhhbXBsZXMuCisKKyAgICAgICAgKiBkcGtnLSouZGViIGNvbnRhaW5zIC91c3IvYmluL2Rwa2ctZGViLmRpc3QsIGZpeGVkIHVwIGJ5IHBvc3RpbnN0LgorCitUaHUgT2N0IDIwIDEzOjIyOjIwIDE5OTQgIElhbiBNdXJkb2NrICAoaW11cmRvY2tAZGVicmEuZGViaWFuLm9yZykKKworICAgICAgICAqIGRwa2cgMC45My45IHJlbGVhc2VkLgorCisgICAgICAgICogZHBrZy5wbDogVXNlICRhcmd1bWVudCwgbm90ICRwYWNrYWdlLCB3aXRoIGAtLWJ1aWxkJy4KKyAgICAgICAgTWFrZSBzdXJlIHRoYXQgc2F2ZWQgcG9zdGluc3Qgc2NyaXB0cyBhcmUgZXhlY3V0YWJsZS4KKworVHVlIE9jdCAxOCAwOTo0MDo1NyAxOTk0ICBJYW4gTXVyZG9jayAgKGltdXJkb2NrQGRlYnJhLmRlYmlhbi5vcmcpCisKKyAgICAgICAgKiBkcGtnIDAuOTMuOCByZWxlYXNlZC4KKworICAgICAgICAqIGRlYi9yZW1vdmUuYyAocGtnX3JlbW92ZSk6IERvIG5vdCByZXBvcnQgYW4gZXJyb3IgZnJvbSBybWRpciAoKQorICAgICAgICB3aGVuIGBlcnJubycgaXMgRU5PVEVNUFRZIChEaXJlY3Rvcnkgbm90IGVtcHR5KSwgYmVjYXVzZSBpbiB0aGlzCisgICAgICAgIGNhc2Ugd2UgaGF2ZSBmb3VuZCB0aGUgaGlnaGVzdC1sZXZlbCBkaXJlY3RvcnkgaW4gdGhlIHBhY2thZ2UgYW5kCisgICAgICAgIGFyZSByZWFkeSB0byBleGl0IHRoZSBsb29wIChpLmUuLCBpdCBpcyBhIG5vcm1hbCBvY2N1cnJlbmNlKS4KKworTW9uIE9jdCAxNyAxMDo0NDozMiAxOTk0ICBJYW4gTXVyZG9jayAgKGltdXJkb2NrQGRlYnJhLmRlYmlhbi5vcmcpCisKKyAgICAgICAgKiBNYWtlZmlsZS5pbjogQWRhcHRlZCBhbGwgTWFrZWZpbGVzIHRvIHRoZSBHTlUgQ29kaW5nIFN0YW5kYXJkcy4KKworICAgICAgICAqIGRlYi9yZW1vdmUuYyAocGtnX3JlbW92ZSk6IE1ha2Ugc3VyZSB0aGF0IHBhcmVudCBkaXJlY3RvcmllcyBhcmUKKyAgICAgICAgcmVtb3ZlZCBMQVNUISAgVGhpcyB3aWxsIHJlc3VsdCBpbiBjb21wbGV0ZSByZW1vdmFsIG9mIHBhY2thZ2VzCisgICAgICAgIHdoZW4gLS1yZW1vdmUgaXMgY2FsbGVkLiAgZHBrZyAwLjkzLjcgKGFuZCBlYXJsaWVyKSBoYWQgcHJvYmxlbXMKKyAgICAgICAgd2l0aCB0aGlzIGJlY2F1c2UgaXQgdHJpZWQgdG8gcmVtb3ZlIGRpcmVjdG9yaWVzIGluIG9yZGVyLCB3aGljaAorICAgICAgICB3aWxsIHdvcmsgbW9zdCBvZiB0aGUgdGltZSwgYnV0IG5vdCBuZWNlc3NhcmlseSBhbGwgb2YgdGhlIHRpbWUuCisKKyAgICAgICAgKiBkZWIvbGlzdC5jIChwa2dfbGlzdCk6IE91dHB1dCBpcyBzb3J0ZWQgYnkgcGFja2FnZSBuYW1lLgorCitUdWUgT2N0ICA0IDEyOjI3OjEwIDE5OTQgIElhbiBNdXJkb2NrICAoaW11cmRvY2tAZGVicmEuZGViaWFuLm9yZykKKworICAgICAgICAqIGRlYi9jb250ZW50cy5jIChwa2dfY29udGVudHMpOiBXaGVuIGEgbGlzdCBmaWxlIGNhbm5vdCBiZQorICAgICAgICBvcGVuZWQsIHNpbGVudGx5IGZhaWwgYW5kIGxldCB0aGUgZnJvbnQtZW5kIGV4cGxhaW4gdGhlIHByb2JsZW0uCisKKyAgICAgICAgKiBkZWIvdXRpbC5jIChyZXR1cm5faW5mbyk6IFdoZW4gYSBjb250cm9sIGZpbGUgY2Fubm90IGJlIG9wZW5lZCwKKyAgICAgICAgc2lsZW50bHkgZmFpbCBhbmQgbGV0IHRoZSBmcm9udC1lbmQgZXhwbGFpbiB0aGUgcHJvYmxlbS4KKworICAgICAgICAqIGRlYi9zZWFyY2guYyAocGtnX3NlYXJjaCk6IEV4aXQgMCBpZiB0aGUgcmVndWxhciBleHByZXNzaW9uIGlzCisgICAgICAgIG1hdGNoZWQgYW5kIDEgaWYgaXQgaXMgbm90LgorCitNb24gT2N0ICAzIDE4OjM4OjUzIDE5OTQgIElhbiBNdXJkb2NrICAoaW11cmRvY2tAZGVicmEuZGViaWFuLm9yZykKKworICAgICAgICAqIGRwa2cucGw6IE5ldyBmaWxlLiAgUmVwbGFjZXMgZHBrZy5zaC4KKworICAgICAgICAqIGRlYi9NYWtlZmlsZS5pbjogUmVuYW1lZCBgZHBrZy11dGlsLmRlYicgdG8gYGRwa2ctZGViJy4KKworICAgICAgICAqIGRlYi9idWlsZC5jIChwa2dfYnVpbGQpOiBgLS1idWlsZCcgaXMgbGVzcyB2ZXJib3NlLCBpbnN0ZWFkCisgICAgICAgIGxldHRpbmcgdGhlIGZyb250LWVuZCBhZGQgdmVyYm9zaXR5IHdoZXJlIGFwcHJvcHJpYXRlLgorCisgICAgICAgICogZGViL2luc3RhbGwuYyAocGtnX2luc3RhbGwpOiBEaXR0by4KKworICAgICAgICAqIGRlYi9yZW1vdmUuYyAocGtnX3JlbW92ZSk6IERpdHRvLgorCisgICAgICAgICogZGViL3NlYXJjaC5jIChwa2dfc2VhcmNoKTogRGl0dG8uCisKKyAgICAgICAgKiBkZWIvZGVzY3JpYmUuYyAocGtnX2Rlc2NyaWJlKTogYC0tZGVzY3JpYmUnIGlzIGxlc3MgdmVyYm9zZSwKKyAgICAgICAgaW5zdGVhZCBsZXR0aW5nIHRoZSBmcm9udC1lbmQgYWRkIHZlcmJvc2l0eSB3aGVyZSBhcHByb3ByaWF0ZS4KKyAgICAgICAgVGhlIGBgRGVzY3JpcHRpb246JycgbGFiZWwgaGFzIGJlZW4gcmVtb3ZlZC4KKworICAgICAgICAqIGRlYi92ZXJzaW9uLmMgKHBrZ192ZXJzaW9uKTogYC0tdmVyc2lvbicgaXMgbGVzcyB2ZXJib3NlLAorICAgICAgICBpbnN0ZWFkIGxldHRpbmcgdGhlIGZyb250LWVuZCBhZGQgdmVyYm9zaXR5IHdoZXJlIGFwcHJvcHJpYXRlLgorICAgICAgICBUaGUgYGBWZXJzaW9uOicnIGxhYmVsIGhhcyBiZWVuIHJlbW92ZWQsIGFzIGhhcyB0aGUgbWFpbnRhaW5lcgorICAgICAgICBpbmZvcm1hdGlvbi4KKworTW9uIFNlcCAxMiAxNDoyMjowNCAxOTk0ICBJYW4gTXVyZG9jayAgKGltdXJkb2NrQGRlYnJhLmRlYmlhbi5vcmcpCisKKyAgICAgICAgKiBkZWIvdmVyc2lvbi5jIChwa2dfdmVyc2lvbik6IGAtLXZlcnNpb24nIG5vdyByZXBvcnRzIHRoZQorICAgICAgICB2ZXJzaW9uIG51bWJlciBvZiBkcGtnIGlmIG5vIGFyZ3VtZW50IGlzIHNwZWNpZmllZC4KKworVGh1IFNlcCAgMSAxMzozMTozNyAxOTk0ICBJYW4gTXVyZG9jayAgKGltdXJkb2NrQGRlYnJhLmRlYmlhbi5vcmcpCisKKyAgICAgICAgKiBkcGtnIDAuOTMuNyByZWxlYXNlZC4KKworICAgICAgICAqIGRlYi9idWlsZC5jIChwa2dfYnVpbGQpOiBjaGVjayBzdGF0dXMgYW5kIGV4aXQgaWYgbm9uLXplcm8uCisKKyAgICAgICAgKiBkZWIvY29udGVudHMuYyAocGtnX2NvbnRlbnRzKTogZGl0dG8uCisKKyAgICAgICAgKiBkZWIvaW5zdGFsbC5jIChhcmNoaXZlX2V4dHJhY3QpOiBkaXR0by4KKworVGh1IFNlcCAgMSAxMzoyMDowOCAxOTk0ICBJYW4gTXVyZG9jayAgKGltdXJkb2NrQGRlYnJhLmRlYmlhbi5vcmcpCisKKyAgICAgICAgKiBkZWIvdmVyc2lvbi5jIChwa2dfdmVyc2lvbik6IGluZGVudCB0byB0aGUgc2FtZSBwb2ludCBhcworICAgICAgICBwa2dfZGVzY3JpYmUuCisKK1RodSBTZXAgIDEgMTI6MjE6MTEgMTk5NCAgSWFuIE11cmRvY2sgIChpbXVyZG9ja0BkZWJyYS5kZWJpYW4ub3JnKQorCisgICAgICAgICogTWFrZWZpbGUuaW4gKGRpc3QpOiBhZGRlZCBkZWJpYW4ucnVsZXMgYmluYXJ5LCBzb3VyY2UgYW5kCisgICAgICAgIGRpc3QgdGFyZ2V0cyB0byBtYWtlIGZpbmFsIGRpc3RyaWJ1dGlvbiBlYXNpZXIgdG8gbWFrZS4KKyAgICAgICAgKGluc3RhbGwpOiBpbnN0YWxsIHByb2dyYW1zIHRvIC91c3IvYmluLgorCisgICAgICAgICogZGViL01ha2VmaWxlLmluIChpbnN0YWxsKTogaW5zdGFsbCBwcm9ncmFtcyB0byAvdXNyL2Jpbi4KKworICAgICAgICAqIGRlYi9saXN0LmMgKHBrZ19saXN0KTogZW5mb3JjZSBhIG1heGltdW0gbGltaXQgb2YgdGVuIGNoYXJhY3RlcnMKKyAgICAgICAgZm9yIHRoZSBwYWNrYWdlIG5hbWUgaW4gdGhlIG91dHB1dC4KKyAgICAgICAgKHBrZ19saXN0KTogbGVmdC1qdXN0aWZ5IHRoZSB2ZXJzaW9uIG51bWJlciB0byBtYWtlIGl0IGVhc2llciBmb3IKKyAgICAgICAgdGhlIGZyb250LWVuZCB0byBwYXJzZSB0aGUgb3V0cHV0LgorICAgICAgICAocGtnX2xpc3QpOiByZXBsYWNlIGZpcnN0ICdcbicgY2hhcmFjdGVyIGluIHBhY2thZ2VzW25dLmRlc2NyaXB0aW9uCisgICAgICAgIHdpdGggJ1wwJy4KKworICAgICAgICAqIGRlYi9pbnN0YWxsLmMgKGFyY2hpdmVfZXh0cmFjdCk6IHVzZSB0aGUgYHAnIG9wdGlvbiB0byBgdGFyJyB0bworICAgICAgICBlbnN1cmUgdGhhdCBwZXJtaXNzaW9ucyBhcmUgcHJlc2VydmVkLgorCitTYXQgQXVnIDI3IDA5OjUzOjM3IDE5OTQgIElhbiBNdXJkb2NrICAoaW11cmRvY2tAZGVicmEuZGViaWFuLm9yZykKKworICAgICAgICAqIGRwa2cgMC45My42IHJlbGVhc2VkLgorCisgICAgICAgICogZGViL3V0aWwuYyAocmV0dXJuX2luZm8pOiBvbmx5IHVubGluayBDT05UUk9MIGlmIEFSQ0hJVkVfRkxBRyBpcworICAgICAgICB0cnVlIQorCitGcmkgQXVnIDI2IDE1OjM4OjIyIDE5OTQgIElhbiBNdXJkb2NrICAoaW11cmRvY2tAZGVicmEuZGViaWFuLm9yZykKKworICAgICAgICAqIGRwa2cgMC45My41IHJlbGVhc2VkLgorCisgICAgICAgICogZGViL2NvbnRlbnRzLmMgKHBrZ19jb250ZW50cyk6IG1lcmdlZCBmdW5jdGlvbiBhcmNoaXZlX2NvbnRlbnRzCisgICAgICAgIGludG8gZnVuY3Rpb24gcGtnX2NvbnRlbnRzLgorCisgICAgICAgICogZGViL2NvbnRlbnRzLmMgKHBrZ19jb250ZW50cyk6IHVzZSBsc3RhdCAocmF0aGVyIHRoYW4gc3RhdCkgc28KKyAgICAgICAgdGhhdCBzeW1ib2xpYyBsaW5rcyBhcmUgcmVjb2duaXplZC4KKyAgICAgICAgKHBrZ19jb250ZW50cyk6IHByaW50IHRoZSB1c3VhbCBgPHBhdGg+IC0+IDxsaW5rX3RvPicgbm93IHRoYXQgd2UKKyAgICAgICAgcmVjb2duaXplIHN5bWJvbGljIGxpbmtzLgorCisgICAgICAgICogZGViL3V0aWwuYyAocmV0dXJuX2luZm8pOiBjcmVhdGUgYSBGSUZPIHRvIHBpcGUgdGhlIG5lZWRlZAorICAgICAgICBpbmZvcm1hdGlvbiB0byB0aGUgYGBmb3JtYXR0ZXInJyByYXRoZXIgdGhhbiBjcmVhdGluZyBhIGRpcmVjdG9yeQorICAgICAgICBpbiAvdG1wIGZvciB0aGUgcGFja2FnZSBpbmZvcm1hdGlvbiwgd2hpY2ggaXMgd2hhdCB3ZSB1c2VkIHRvIGRvLgorCitUaHUgQXVnIDI1IDExOjQ2OjI3IDE5OTQgIElhbiBNdXJkb2NrICAoaW11cmRvY2tAZGVicmEuZGViaWFuLm9yZykKKworICAgICAgICAqIGxpYi9mYWtlLWxzLmMgKG1rX2RhdGVfc3RyaW5nKTogcmV0dXJuIGEgcG9pbnRlciB0byBtYWxsb2MnZWQKKyAgICAgICAgYXJlYS4KKyAgICAgICAgKG1rX21vZGVfc3RyaW5nKTogZGl0dG8uCisKKyAgICAgICAgKiBkcGtnLnNoOiBtYWtlIHN1cmUgdGhlIGNvbnRyb2wgaW5mb3JtYXRpb24gaXMgZXh0cmFjdGVkIHRvIGEKKyAgICAgICAgdW5pcXVlbHktbmFtZWQgdGVtcG9yYXJ5IGRpcmVjdG9yeSBkdXJpbmcgcGFja2FnZSBpbnN0YWxsYXRpb24uCisKKyAgICAgICAgKiBkcGtnLnNoOiBleGVjdXRlIHRoZSBwcmUtIGFuZCBwb3N0LXJlbW92YWwgc2NyaXB0cyBkdXJpbmcKKyAgICAgICAgcGFja2FnZSByZW1vdmFsLgorCisgICAgICAgICogZHBrZy5zaDogZXhpdCBpbW1lZGlhdGVseSBpZiBkcGtnLXV0aWwuZGViIHJlcG9ydHMgZmFpbHVyZS4KKworICAgICAgICAqIGRlYi9pbnN0YWxsLmMgKHBrZ19jb250cm9sKTogbWFrZSBzdXJlIHRoYXQgYHBhY2thZ2UnIGV4aXN0cyBhbmQKKyAgICAgICAgaXMgYSBEZWJpYW4gYXJjaGl2ZSBiZWZvcmUgZG9pbmcgYW55dGhpbmcuCisKKyAgICAgICAgKiBkZWIvaW5zdGFsbC5jIChwa2dfZXh0cmFjdCk6IG1ha2Ugc3VyZSB0aGF0IGBwYWNrYWdlJyBleGlzdHMgYW5kCisgICAgICAgIGlzIGEgRGViaWFuIGFyY2hpdmUgYmVmb3JlIGRvaW5nIGFueXRoaW5nLgorCisgICAgICAgICogZGViL2luc3RhbGwuYyAocGtnX2luc3RhbGwpOiB1bmxpbmsgYGV4dHJhY3Rfb3V0cHV0JyB3aGVuIGRvbmUuCisKKyAgICAgICAgKiBkZWIvcmVtb3ZlLmMgKHBrZ19yZW1vdmUpOiB1c2UgbHN0YXQgKHJhdGhlciB0aGFuIHN0YXQpIHNvIHRoYXQKKyAgICAgICAgLS1yZW1vdmUgZG9lcyBub3QgZ2V0IGNvbmZ1c2VkIGFuZCB0aGluayB0aGF0IGEgc3ltYm9saWMgbGluayB0byBhCisgICAgICAgIGRpcmVjdG9yeSBpcyBhY3R1YWxseSBhIGRpcmVjdG9yeSwgd2hpY2ggcmVzdWx0cyBpbiB0aGUgc3ltYm9saWMKKyAgICAgICAgbGluayBuZXZlciBiZWluZyByZW1vdmVkIGF0IGFsbC4KKworQ2hhbmdlTG9nIGJlZ2lucyBUaHUgQXVnIDI1IDExOjQ2OjI3IDE5OTQgZm9yIGRwa2cgMC45My41LgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9NYWtlY2hlY2suYW0gYi9kcGtnLTEuMTYuMS4xL01ha2VjaGVjay5hbQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40MmJhZGU5Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9NYWtlY2hlY2suYW0KQEAgLTAsMCArMSwyNSBAQAorIyB2aW06c2V0IHN5bj1hdXRvbWFrZToKKworIyBWYXJpYWJsZXMgdG8gYmUgZGVmaW5lZDoKKyMKKyMgIFRFU1RfVkVSQk9TRSAtIHNldCB0byAwIG9yIDEgdG8gY29udHJvbCB0ZXN0IHN1aXRlIHZlcmJvc2l0eQorIyAgVEVTVF9FTlZfVkFSUyAtIGVudmlyb25tZW50IHZhcmlhYmxlcyB0byBiZSBzZXQgZm9yIHRoZSB0ZXN0IHN1aXRlCisjICBURVNUX0NPVkVSQUdFIC0gc2V0IHRvIHRoZSBwZXJsIG1vZHVsZSBpbiBjaGFyZ2Ugb2YgZ2V0dGluZyB0ZXN0IGNvdmVyYWdlCisjICB0ZXN0X3RtcGRpciAtIHRlc3Qgc3VpdGUgdGVtcG9yYXJ5IGRpcmVjdG9yeQorIyAgdGVzdF9jYXNlcyAtIGxpc3Qgb2YgdGVzdCBjYXNlIGZpbGVzCisjICB0ZXN0X2RhdGEgLSBsaXN0IG9mIHRlc3QgZGF0YSBmaWxlcworCitjaGVjay1jbGVhbjoKKwlybSAtZnIgJCh0ZXN0X3RtcGRpcikKKworY2hlY2stbG9jYWw6ICQodGVzdF9kYXRhKSAkKHRlc3RfY2FzZXMpCisJJChta2Rpcl9wKSAkKHRlc3RfdG1wZGlyKQorCVBBVEg9IiQodG9wX2J1aWxkZGlyKS9zcmM6JCh0b3BfYnVpbGRkaXIpL3NjcmlwdHM6JCh0b3BfYnVpbGRkaXIpL3V0aWxzOiQoUEFUSCkiIFwKKwkgIExDX0FMTD1DIFwKKwkgICQoVEVTVF9FTlZfVkFSUykgXAorCSAgc3JjZGlyPSQoc3JjZGlyKSBidWlsZGRpcj0kKGJ1aWxkZGlyKSBcCisJICBQRVJMNUxJQj0kKHRvcF9zcmNkaXIpL3NjcmlwdHMgUEVSTF9ETF9OT05MQVpZPTEgXAorCSAgUEVSTDVPUFQ9JChURVNUX0NPVkVSQUdFKSBcCisJICAkKFBFUkwpIC1JJCh0b3Bfc3JjZGlyKS9zY3JpcHRzIFwKKwkgICAgLU1FeHRVdGlsczo6Q29tbWFuZDo6TU0gLWUgInRlc3RfaGFybmVzcygkKFRFU1RfVkVSQk9TRSksICcuJykiIFwKKwkgICAgJChhZGRwcmVmaXggJChzcmNkaXIpLywkKHRlc3RfY2FzZXMpKQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9NYWtlZmlsZS5hbSBiL2Rwa2ctMS4xNi4xLjEvTWFrZWZpbGUuYW0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZmU0YzJiNwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvTWFrZWZpbGUuYW0KQEAgLTAsMCArMSwxNDkgQEAKKyMjIFByb2Nlc3MgdGhpcyBmaWxlIHdpdGggYXV0b21ha2UgdG8gcHJvZHVjZSBNYWtlZmlsZS5pbgorCitpZiBXSVRIX0RTRUxFQ1QKKyAgTUFZQkVfRFNFTEVDVCA9IGRzZWxlY3QKK2VuZGlmCisKK1NVQkRJUlMgPSBcCisJbGliIFwKKwlkcGtnLWRlYiBcCisJZHBrZy1zcGxpdCBcCisJc3JjIFwKKwl1dGlscyBcCisJJChNQVlCRV9EU0VMRUNUKSBcCisJc2NyaXB0cyBcCisJcG8gXAorCW1hbgorCitBQ0xPQ0FMX0FNRkxBR1MgPSAtSSBtNAorCisKK2Rpc3RfcGtnZGF0YV9EQVRBID0gY3B1dGFibGUgb3N0YWJsZSB0cmlwbGV0dGFibGUKKworRVhUUkFfRElTVCA9IFwKKwkubWFpbG1hcCBcCisJQ2hhbmdlTG9nLm9sZCBcCisJUkVBRE1FLnRyYW5zbGF0b3JzIFwKKwlnZXQtdmVyc2lvbiBcCisJZG9jL1JFQURNRS5hcGkgXAorCWRvYy9SRUFETUUuZmVhdHVyZS1yZW1vdmFsLXNjaGVkdWxlIFwKKwlkb2MvY29kaW5nLXN0eWxlLnR4dCBcCisJZG9jL2xjb3YtZXBpbG9nIFwKKwlkb2MvbGNvdi1wcm9sb2cgXAorCWRvYy90cmlnZ2Vycy50eHQgXAorCWRlYmlhbi9hcmNodGFibGUgXAorCWRlYmlhbi9jaGFuZ2Vsb2cgXAorCWRlYmlhbi9jb21wYXQgXAorCWRlYmlhbi9jb250cm9sIFwKKwlkZWJpYW4vY29weXJpZ2h0IFwKKwlkZWJpYW4vZHBrZy1kZXYuZG9jcyBcCisJZGViaWFuL2Rwa2ctZGV2Lmluc3RhbGwgXAorCWRlYmlhbi9kcGtnLWRldi5wcmVpbnN0IFwKKwlkZWJpYW4vZHBrZy1kZXYubGludGlhbi1vdmVycmlkZXMgXAorCWRlYmlhbi9kcGtnLmNmZyBcCisJZGViaWFuL2Rwa2cuY3Jvbi5kYWlseSBcCisJZGViaWFuL2Rwa2cuZG9jcyBcCisJZGViaWFuL2Rwa2cuaW5zdGFsbCBcCisJZGViaWFuL2Rwa2cucG9zdGluc3QgXAorCWRlYmlhbi9kcGtnLnBvc3RybSBcCisJZGViaWFuL2Rwa2cucHJlaW5zdCBcCisJZGViaWFuL2Rwa2cucHJlcm0gXAorCWRlYmlhbi9kcGtnLmxvZ3JvdGF0ZSBcCisJZGViaWFuL2Rwa2cubGlua3MgXAorCWRlYmlhbi9kcGtnLmxpbnRpYW4tb3ZlcnJpZGVzIFwKKwlkZWJpYW4vZHNlbGVjdC5jZmcgXAorCWRlYmlhbi9kc2VsZWN0LmRvY3MgXAorCWRlYmlhbi9kc2VsZWN0Lmluc3RhbGwgXAorCWRlYmlhbi9kc2VsZWN0LnByZWluc3QgXAorCWRlYmlhbi9kc2VsZWN0LmxpbnRpYW4tb3ZlcnJpZGVzIFwKKwlkZWJpYW4vbGliZHBrZy1kZXYuZG9jcyBcCisJZGViaWFuL2xpYmRwa2ctZGV2Lmluc3RhbGwgXAorCWRlYmlhbi9saWJkcGtnLWRldi5saW50aWFuLW92ZXJyaWRlcyBcCisJZGViaWFuL2xpYmRwa2ctcGVybC5kb2NzIFwKKwlkZWJpYW4vbGliZHBrZy1wZXJsLmluc3RhbGwgXAorCWRlYmlhbi9saWJkcGtnLXBlcmwubGludGlhbi1vdmVycmlkZXMgXAorCWRlYmlhbi9zb3VyY2UvbGludGlhbi1vdmVycmlkZXMgXAorCWRlYmlhbi9zb3VyY2UvZm9ybWF0IFwKKwlkZWJpYW4vc291cmNlL29wdGlvbnMgXAorCWRlYmlhbi91c2VydGFncyBcCisJZGViaWFuL3J1bGVzIFwKKwlkZWJpYW4vc2hsaWJzLmRlZmF1bHQgXAorCWRlYmlhbi9zaGxpYnMub3ZlcnJpZGUKKworLlBIT05ZOiBkb2MKKworZG9jOiBkb2MvRG94eWZpbGUKKwkkKERPWFlHRU4pIGRvYy9Eb3h5ZmlsZQorCitkb2MtY2xlYW46CisJcm0gLXJmIGRvYy9odG1sLworCisjIENvZGUgY292ZXJhZ2Ugc3VwcG9ydAorCisuUEhPTlk6IGNvdmVyYWdlIGNvdmVyYWdlLWNsZWFuCisKK2lmIENPVkVSQUdFX0VOQUJMRUQKK0xDT1ZfT1BUUyA9IC1xIC0tY2hlY2tzdW0KK0xDT1ZfQ0FQVFVSRV9PUFRTID0gJChMQ09WX09QVFMpIC0tbm8tcmVjdXJzaW9uIFwKKwktZCAkKHRvcF9idWlsZGRpcikvbGliL2Rwa2cgXAorCS1kICQodG9wX2J1aWxkZGlyKS9zcmMgXAorCS1kICQodG9wX2J1aWxkZGlyKS91dGlscworCitjb3ZlcmFnZTogYWxsCisJJChSTSkgLWYgKi5sY292CisJZmluZCAtbmFtZSAnKi5nY2RhJyAtbyAtbmFtZSAnKi5nY292JyB8IHhhcmdzICQoUk0pIC1mCisJCisJJChMQ09WKSAkKExDT1ZfQ0FQVFVSRV9PUFRTKSAtYyAtbyBkcGtnX2Jhc2UubGNvdiAtaQorCSQoTUFLRSkgLUMgbGliL2Rwa2cgY2hlY2sKKwkkKE1BS0UpIC1DIHNyYyBjaGVjaworCSQoTUFLRSkgLUMgdXRpbHMgY2hlY2sKKwkkKExDT1YpICQoTENPVl9DQVBUVVJFX09QVFMpIC1jIC1vIGRwa2dfdGVzdC5sY292CisJJChMQ09WKSAkKExDT1ZfT1BUUykgLWEgZHBrZ19iYXNlLmxjb3YgLWEgZHBrZ190ZXN0Lmxjb3YgXAorCSAgLW8gZHBrZ19tZXJnZS5sY292CisJJChMQ09WKSAkKExDT1ZfT1BUUykgLXIgZHBrZ19tZXJnZS5sY292ICcvdXNyL2luY2x1ZGUvKicgLW8gZHBrZy5sY292CisJJChMQ09WX0dFTkhUTUwpIC1xIC0tbGVnZW5kIC0tdGl0bGUgImRwa2cgQyBjb2RlIGNvdmVyYWdlIiBcCisJICAtLWh0bWwtcHJvbG9nICQodG9wX3NyY2RpcikvZG9jL2xjb3YtcHJvbG9nIFwKKwkgIC0taHRtbC1lcGlsb2cgJCh0b3Bfc3JjZGlyKS9kb2MvbGNvdi1lcGlsb2cgXAorCSAgLW8gZG9jL2NvdmVyYWdlIGRwa2cubGNvdgorCQorCSQoTUFLRSkgLUMgc2NyaXB0cyAkQAorCitjb3ZlcmFnZS1jbGVhbjoKKwlybSAtcmYgZG9jL2NvdmVyYWdlLworCWZpbmQgLW5hbWUgJyouZ2NubycgLW8gLW5hbWUgJyouZ2NkYScgLW8gXAorCSAgICAgLW5hbWUgJyouZ2NvdicgLW8gLW5hbWUgJyoubGNvdicgfCB4YXJncyBybSAtZgorZWxzZQorY292ZXJhZ2U6CisJQGVjaG8gIk5lZWQgdG8gcmVjb25maWd1cmUgd2l0aCAtLWVuYWJsZS1jb3ZlcmFnZSIKKworY292ZXJhZ2UtY2xlYW46CitlbmRpZgorCisuUEhPTlk6IHVwZGF0ZS1wbworCit1cGRhdGUtcG86CisJJChNQUtFKSAtQyBwbyB1cGRhdGUtcG8KKwkkKE1BS0UpIC1DIHNjcmlwdHMvcG8gdXBkYXRlLXBvCisJJChNQUtFKSAtQyBkc2VsZWN0L3BvIHVwZGF0ZS1wbworCSQoTUFLRSkgLUMgbWFuIHVwZGF0ZS1wbworCisuUEhPTlk6IENoYW5nZUxvZworRElTVENMRUFORklMRVMgPSBDaGFuZ2VMb2cKKworQ2hhbmdlTG9nOgorCWdpdCBsb2cgLUMgLS1zdGF0IDEuMTUuMC4uID4kQAorCisjIElmIHdlIGNyZWF0ZSB0aGUgZGlzdCB0YXJiYWxsIGZyb20gdGhlIGdpdCByZXBvc2l0b3J5LCBtYWtlIHN1cmUKKyMgdGhhdCB3ZSdyZSBub3QgZm9yZ2V0dGluZyBzb21lIGZpbGVzLi4uCitkaXN0LWhvb2s6CisJZWNobyAkKFZFUlNJT04pID4kKGRpc3RkaXIpLy5kaXN0LXZlcnNpb24KKwlpZiBbIC1lIC5naXQgXTsgdGhlbiBcCisJCWZvciBmaWxlIGluIGBnaXQgbHMtZmlsZXMgfCBncmVwIC12IC5naXRpZ25vcmVgOyBkbyBcCisJCQlpZiBbICEgLWUgIiQoZGlzdGRpcikvJCRmaWxlIiBdOyB0aGVuIFwKKwkJCQllY2hvICIkJGZpbGUgaXMgbWlzc2luZyBpbiAkKGRpc3RkaXIpIiA+JjIgOyBcCisJCQkJZXhpdCAxIDsgXAorCQkJZmkgOyBcCisJCWRvbmUgOyBcCisJZmkKKworY2xlYW4tbG9jYWw6IGRvYy1jbGVhbiBjb3ZlcmFnZS1jbGVhbgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9NYWtlZmlsZS5pbiBiL2Rwa2ctMS4xNi4xLjEvTWFrZWZpbGUuaW4KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNGEwODA1ZgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvTWFrZWZpbGUuaW4KQEAgLTAsMCArMSw5NDkgQEAKKyMgTWFrZWZpbGUuaW4gZ2VuZXJhdGVkIGJ5IGF1dG9tYWtlIDEuMTEuMSBmcm9tIE1ha2VmaWxlLmFtLgorIyBAY29uZmlndXJlX2lucHV0QAorCisjIENvcHlyaWdodCAoQykgMTk5NCwgMTk5NSwgMTk5NiwgMTk5NywgMTk5OCwgMTk5OSwgMjAwMCwgMjAwMSwgMjAwMiwKKyMgMjAwMywgMjAwNCwgMjAwNSwgMjAwNiwgMjAwNywgMjAwOCwgMjAwOSAgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLAorIyBJbmMuCisjIFRoaXMgTWFrZWZpbGUuaW4gaXMgZnJlZSBzb2Z0d2FyZTsgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbgorIyBnaXZlcyB1bmxpbWl0ZWQgcGVybWlzc2lvbiB0byBjb3B5IGFuZC9vciBkaXN0cmlidXRlIGl0LAorIyB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9ucywgYXMgbG9uZyBhcyB0aGlzIG5vdGljZSBpcyBwcmVzZXJ2ZWQuCisKKyMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisjIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWSwgdG8gdGhlIGV4dGVudCBwZXJtaXR0ZWQgYnkgbGF3OyB3aXRob3V0CisjIGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEKKyMgUEFSVElDVUxBUiBQVVJQT1NFLgorCitAU0VUX01BS0VACisKK1ZQQVRIID0gQHNyY2RpckAKK3BrZ2RhdGFkaXIgPSAkKGRhdGFkaXIpL0BQQUNLQUdFQAorcGtnaW5jbHVkZWRpciA9ICQoaW5jbHVkZWRpcikvQFBBQ0tBR0VACitwa2dsaWJkaXIgPSAkKGxpYmRpcikvQFBBQ0tBR0VACitwa2dsaWJleGVjZGlyID0gJChsaWJleGVjZGlyKS9AUEFDS0FHRUAKK2FtX19jZCA9IENEUEFUSD0iJCR7WlNIX1ZFUlNJT04rLn0kKFBBVEhfU0VQQVJBVE9SKSIgJiYgY2QKK2luc3RhbGxfc2hfREFUQSA9ICQoaW5zdGFsbF9zaCkgLWMgLW0gNjQ0CitpbnN0YWxsX3NoX1BST0dSQU0gPSAkKGluc3RhbGxfc2gpIC1jCitpbnN0YWxsX3NoX1NDUklQVCA9ICQoaW5zdGFsbF9zaCkgLWMKK0lOU1RBTExfSEVBREVSID0gJChJTlNUQUxMX0RBVEEpCit0cmFuc2Zvcm0gPSAkKHByb2dyYW1fdHJhbnNmb3JtX25hbWUpCitOT1JNQUxfSU5TVEFMTCA9IDoKK1BSRV9JTlNUQUxMID0gOgorUE9TVF9JTlNUQUxMID0gOgorTk9STUFMX1VOSU5TVEFMTCA9IDoKK1BSRV9VTklOU1RBTEwgPSA6CitQT1NUX1VOSU5TVEFMTCA9IDoKK2J1aWxkX3RyaXBsZXQgPSBAYnVpbGRACitob3N0X3RyaXBsZXQgPSBAaG9zdEAKK3N1YmRpciA9IC4KK0RJU1RfQ09NTU9OID0gUkVBRE1FICQoYW1fX2NvbmZpZ3VyZV9kZXBzKSAkKGRpc3RfcGtnZGF0YV9EQVRBKSBcCisJJChzcmNkaXIpL01ha2VmaWxlLmFtICQoc3JjZGlyKS9NYWtlZmlsZS5pbiBcCisJJChzcmNkaXIpL2NvbmZpZy5oLmluICQodG9wX3NyY2RpcikvY29uZmlndXJlIFwKKwkkKHRvcF9zcmNkaXIpL2RvYy9Eb3h5ZmlsZS5pbiBBQk9VVC1OTFMgQVVUSE9SUyBDT1BZSU5HIFwKKwlDaGFuZ2VMb2cgTkVXUyBUSEFOS1MgVE9ETyBidWlsZC1hdXgvY29uZmlnLmd1ZXNzIFwKKwlidWlsZC1hdXgvY29uZmlnLnJwYXRoIGJ1aWxkLWF1eC9jb25maWcuc3ViIGJ1aWxkLWF1eC9kZXBjb21wIFwKKwlidWlsZC1hdXgvaW5zdGFsbC1zaCBidWlsZC1hdXgvbWlzc2luZyBidWlsZC1hdXgveWx3cmFwCitBQ0xPQ0FMX000ID0gJCh0b3Bfc3JjZGlyKS9hY2xvY2FsLm00CithbV9fYWNsb2NhbF9tNF9kZXBzID0gJCh0b3Bfc3JjZGlyKS9tNC9kcGtnLWFyY2gubTQgXAorCSQodG9wX3NyY2RpcikvbTQvZHBrZy1idWlsZC5tNCBcCisJJCh0b3Bfc3JjZGlyKS9tNC9kcGtnLWNvbXBpbGVyLm00IFwKKwkkKHRvcF9zcmNkaXIpL200L2Rwa2ctY292ZXJhZ2UubTQgXAorCSQodG9wX3NyY2RpcikvbTQvZHBrZy1mdW5jcy5tNCAkKHRvcF9zcmNkaXIpL200L2Rwa2ctbGlicy5tNCBcCisJJCh0b3Bfc3JjZGlyKS9tNC9kcGtnLWxpbmtlci5tNCAkKHRvcF9zcmNkaXIpL200L2Rwa2ctcHJvZ3MubTQgXAorCSQodG9wX3NyY2RpcikvbTQvZHBrZy10eXBlcy5tNCBcCisJJCh0b3Bfc3JjZGlyKS9tNC9kcGtnLXVuaWNvZGUubTQgJCh0b3Bfc3JjZGlyKS9tNC9nZXR0ZXh0Lm00IFwKKwkkKHRvcF9zcmNkaXIpL200L2ljb252Lm00ICQodG9wX3NyY2RpcikvbTQvaW50bG1hY29zeC5tNCBcCisJJCh0b3Bfc3JjZGlyKS9tNC9saWItbGQubTQgJCh0b3Bfc3JjZGlyKS9tNC9saWItbGluay5tNCBcCisJJCh0b3Bfc3JjZGlyKS9tNC9saWItcHJlZml4Lm00ICQodG9wX3NyY2RpcikvbTQvbmxzLm00IFwKKwkkKHRvcF9zcmNkaXIpL200L3BvLm00ICQodG9wX3NyY2RpcikvbTQvcHJvZ3Rlc3QubTQgXAorCSQodG9wX3NyY2RpcikvY29uZmlndXJlLmFjCithbV9fY29uZmlndXJlX2RlcHMgPSAkKGFtX19hY2xvY2FsX200X2RlcHMpICQoQ09ORklHVVJFX0RFUEVOREVOQ0lFUykgXAorCSQoQUNMT0NBTF9NNCkKK2FtX19DT05GSUdfRElTVENMRUFOX0ZJTEVTID0gY29uZmlnLnN0YXR1cyBjb25maWcuY2FjaGUgY29uZmlnLmxvZyBcCisgY29uZmlndXJlLmxpbmVubyBjb25maWcuc3RhdHVzLmxpbmVubworbWtpbnN0YWxsZGlycyA9ICQoaW5zdGFsbF9zaCkgLWQKK0NPTkZJR19IRUFERVIgPSBjb25maWcuaAorQ09ORklHX0NMRUFOX0ZJTEVTID0gZG9jL0RveHlmaWxlCitDT05GSUdfQ0xFQU5fVlBBVEhfRklMRVMgPQorQU1fVl9HRU4gPSAkKGFtX192X0dFTl8kKFYpKQorYW1fX3ZfR0VOXyA9ICQoYW1fX3ZfR0VOXyQoQU1fREVGQVVMVF9WRVJCT1NJVFkpKQorYW1fX3ZfR0VOXzAgPSBAZWNobyAiICBHRU4gICAiICRAOworQU1fVl9hdCA9ICQoYW1fX3ZfYXRfJChWKSkKK2FtX192X2F0XyA9ICQoYW1fX3ZfYXRfJChBTV9ERUZBVUxUX1ZFUkJPU0lUWSkpCithbV9fdl9hdF8wID0gQAorU09VUkNFUyA9CitESVNUX1NPVVJDRVMgPQorUkVDVVJTSVZFX1RBUkdFVFMgPSBhbGwtcmVjdXJzaXZlIGNoZWNrLXJlY3Vyc2l2ZSBkdmktcmVjdXJzaXZlIFwKKwlodG1sLXJlY3Vyc2l2ZSBpbmZvLXJlY3Vyc2l2ZSBpbnN0YWxsLWRhdGEtcmVjdXJzaXZlIFwKKwlpbnN0YWxsLWR2aS1yZWN1cnNpdmUgaW5zdGFsbC1leGVjLXJlY3Vyc2l2ZSBcCisJaW5zdGFsbC1odG1sLXJlY3Vyc2l2ZSBpbnN0YWxsLWluZm8tcmVjdXJzaXZlIFwKKwlpbnN0YWxsLXBkZi1yZWN1cnNpdmUgaW5zdGFsbC1wcy1yZWN1cnNpdmUgaW5zdGFsbC1yZWN1cnNpdmUgXAorCWluc3RhbGxjaGVjay1yZWN1cnNpdmUgaW5zdGFsbGRpcnMtcmVjdXJzaXZlIHBkZi1yZWN1cnNpdmUgXAorCXBzLXJlY3Vyc2l2ZSB1bmluc3RhbGwtcmVjdXJzaXZlCithbV9fdnBhdGhfYWRqX3NldHVwID0gc3JjZGlyc3RyaXA9YGVjaG8gIiQoc3JjZGlyKSIgfCBzZWQgJ3N8LnwufGcnYDsKK2FtX192cGF0aF9hZGogPSBjYXNlICQkcCBpbiBcCisgICAgJChzcmNkaXIpLyopIGY9YGVjaG8gIiQkcCIgfCBzZWQgInN8XiQkc3JjZGlyc3RyaXAvfHwiYDs7IFwKKyAgICAqKSBmPSQkcDs7IFwKKyAgZXNhYzsKK2FtX19zdHJpcF9kaXIgPSBmPWBlY2hvICQkcCB8IHNlZCAtZSAnc3xeLiovfHwnYDsKK2FtX19pbnN0YWxsX21heCA9IDQwCithbV9fbm9iYXNlX3N0cmlwX3NldHVwID0gXAorICBzcmNkaXJzdHJpcD1gZWNobyAiJChzcmNkaXIpIiB8IHNlZCAncy9bXS5bXiQkXFwqfF0vXFxcXCYvZydgCithbV9fbm9iYXNlX3N0cmlwID0gXAorICBmb3IgcCBpbiAkJGxpc3Q7IGRvIGVjaG8gIiQkcCI7IGRvbmUgfCBzZWQgLWUgInN8JCRzcmNkaXJzdHJpcC98fCIKK2FtX19ub2Jhc2VfbGlzdCA9ICQoYW1fX25vYmFzZV9zdHJpcF9zZXR1cCk7IFwKKyAgZm9yIHAgaW4gJCRsaXN0OyBkbyBlY2hvICIkJHAgJCRwIjsgZG9uZSB8IFwKKyAgc2VkICJzfCAkJHNyY2RpcnN0cmlwL3wgfDsiJyAvIC4qXC8vIXMvIC4qLyAuLzsgcyxcKCAuKlwpL1teL10qJCQsXDEsJyB8IFwKKyAgJChBV0spICdCRUdJTiB7IGZpbGVzWyIuIl0gPSAiIiB9IHsgZmlsZXNbJCQyXSA9IGZpbGVzWyQkMl0gIiAiICQkMTsgXAorICAgIGlmICgrK25bJCQyXSA9PSAkKGFtX19pbnN0YWxsX21heCkpIFwKKyAgICAgIHsgcHJpbnQgJCQyLCBmaWxlc1skJDJdOyBuWyQkMl0gPSAwOyBmaWxlc1skJDJdID0gIiIgfSB9IFwKKyAgICBFTkQgeyBmb3IgKGRpciBpbiBmaWxlcykgcHJpbnQgZGlyLCBmaWxlc1tkaXJdIH0nCithbV9fYmFzZV9saXN0ID0gXAorICBzZWQgJyQkIU47JCQhTjskJCFOOyQkIU47JCQhTjskJCFOOyQkIU47cy9cbi8gL2cnIHwgXAorICBzZWQgJyQkIU47JCQhTjskJCFOOyQkIU47cy9cbi8gL2cnCithbV9faW5zdGFsbGRpcnMgPSAiJChERVNURElSKSQocGtnZGF0YWRpcikiCitEQVRBID0gJChkaXN0X3BrZ2RhdGFfREFUQSkKK1JFQ1VSU0lWRV9DTEVBTl9UQVJHRVRTID0gbW9zdGx5Y2xlYW4tcmVjdXJzaXZlIGNsZWFuLXJlY3Vyc2l2ZQlcCisgIGRpc3RjbGVhbi1yZWN1cnNpdmUgbWFpbnRhaW5lci1jbGVhbi1yZWN1cnNpdmUKK0FNX1JFQ1VSU0lWRV9UQVJHRVRTID0gJChSRUNVUlNJVkVfVEFSR0VUUzotcmVjdXJzaXZlPSkgXAorCSQoUkVDVVJTSVZFX0NMRUFOX1RBUkdFVFM6LXJlY3Vyc2l2ZT0pIHRhZ3MgVEFHUyBjdGFncyBDVEFHUyBcCisJZGlzdGRpciBkaXN0IGRpc3QtYWxsIGRpc3RjaGVjaworRVRBR1MgPSBldGFncworQ1RBR1MgPSBjdGFncworRElTVF9TVUJESVJTID0gbGliIGRwa2ctZGViIGRwa2ctc3BsaXQgc3JjIHV0aWxzIGRzZWxlY3Qgc2NyaXB0cyBwbyBcCisJbWFuCitESVNURklMRVMgPSAkKERJU1RfQ09NTU9OKSAkKERJU1RfU09VUkNFUykgJChURVhJTkZPUykgJChFWFRSQV9ESVNUKQorZGlzdGRpciA9ICQoUEFDS0FHRSktJChWRVJTSU9OKQordG9wX2Rpc3RkaXIgPSAkKGRpc3RkaXIpCithbV9fcmVtb3ZlX2Rpc3RkaXIgPSBcCisgIHsgdGVzdCAhIC1kICIkKGRpc3RkaXIpIiBcCisgICAgfHwgeyBmaW5kICIkKGRpc3RkaXIpIiAtdHlwZSBkICEgLXBlcm0gLTIwMCAtZXhlYyBjaG1vZCB1K3cge30gJzsnIFwKKyAgICAgICAgICYmIHJtIC1mciAiJChkaXN0ZGlyKSI7IH07IH0KK2FtX19yZWxhdGl2aXplID0gXAorICBkaXIwPWBwd2RgOyBcCisgIHNlZF9maXJzdD0ncyxeXChbXi9dKlwpLy4qJCQsXDEsJzsgXAorICBzZWRfcmVzdD0ncyxeW14vXSovKiwsJzsgXAorICBzZWRfbGFzdD0ncyxeLiovXChbXi9dKlwpJCQsXDEsJzsgXAorICBzZWRfYnV0bGFzdD0ncywvKlteL10qJCQsLCc7IFwKKyAgd2hpbGUgdGVzdCAtbiAiJCRkaXIxIjsgZG8gXAorICAgIGZpcnN0PWBlY2hvICIkJGRpcjEiIHwgc2VkIC1lICIkJHNlZF9maXJzdCJgOyBcCisgICAgaWYgdGVzdCAiJCRmaXJzdCIgIT0gIi4iOyB0aGVuIFwKKyAgICAgIGlmIHRlc3QgIiQkZmlyc3QiID0gIi4uIjsgdGhlbiBcCisgICAgICAgIGRpcjI9YGVjaG8gIiQkZGlyMCIgfCBzZWQgLWUgIiQkc2VkX2xhc3QiYC8iJCRkaXIyIjsgXAorICAgICAgICBkaXIwPWBlY2hvICIkJGRpcjAiIHwgc2VkIC1lICIkJHNlZF9idXRsYXN0ImA7IFwKKyAgICAgIGVsc2UgXAorICAgICAgICBmaXJzdDI9YGVjaG8gIiQkZGlyMiIgfCBzZWQgLWUgIiQkc2VkX2ZpcnN0ImA7IFwKKyAgICAgICAgaWYgdGVzdCAiJCRmaXJzdDIiID0gIiQkZmlyc3QiOyB0aGVuIFwKKyAgICAgICAgICBkaXIyPWBlY2hvICIkJGRpcjIiIHwgc2VkIC1lICIkJHNlZF9yZXN0ImA7IFwKKyAgICAgICAgZWxzZSBcCisgICAgICAgICAgZGlyMj0iLi4vJCRkaXIyIjsgXAorICAgICAgICBmaTsgXAorICAgICAgICBkaXIwPSIkJGRpcjAiLyIkJGZpcnN0IjsgXAorICAgICAgZmk7IFwKKyAgICBmaTsgXAorICAgIGRpcjE9YGVjaG8gIiQkZGlyMSIgfCBzZWQgLWUgIiQkc2VkX3Jlc3QiYDsgXAorICBkb25lOyBcCisgIHJlbGRpcj0iJCRkaXIyIgorRElTVF9BUkNISVZFUyA9ICQoZGlzdGRpcikudGFyLmd6CitHWklQX0VOViA9IC0tYmVzdAorZGlzdHVuaW5zdGFsbGNoZWNrX2xpc3RmaWxlcyA9IGZpbmQgLiAtdHlwZSBmIC1wcmludAorZGlzdGNsZWFuY2hlY2tfbGlzdGZpbGVzID0gZmluZCAuIC10eXBlIGYgLXByaW50CitBQ0xPQ0FMID0gQEFDTE9DQUxACitBTVRBUiA9IEBBTVRBUkAKK0FNX0RFRkFVTFRfVkVSQk9TSVRZID0gQEFNX0RFRkFVTFRfVkVSQk9TSVRZQAorQVVUT0NPTkYgPSBAQVVUT0NPTkZACitBVVRPSEVBREVSID0gQEFVVE9IRUFERVJACitBVVRPTUFLRSA9IEBBVVRPTUFLRUAKK0FXSyA9IEBBV0tACitCWjJfTElCUyA9IEBCWjJfTElCU0AKK0NDID0gQENDQAorQ0NERVBNT0RFID0gQENDREVQTU9ERUAKK0NGTEFHUyA9IEBDRkxBR1NACitDUFAgPSBAQ1BQQAorQ1BQRkxBR1MgPSBAQ1BQRkxBR1NACitDVVJTRVNfTElCUyA9IEBDVVJTRVNfTElCU0AKK0NYWCA9IEBDWFhACitDWFhERVBNT0RFID0gQENYWERFUE1PREVACitDWFhGTEFHUyA9IEBDWFhGTEFHU0AKK0NZR1BBVEhfVyA9IEBDWUdQQVRIX1dACitERUZTID0gQERFRlNACitERVBESVIgPSBAREVQRElSQAorRE9YWUdFTiA9IEBET1hZR0VOQAorRUNIT19DID0gQEVDSE9fQ0AKK0VDSE9fTiA9IEBFQ0hPX05ACitFQ0hPX1QgPSBARUNIT19UQAorRUdSRVAgPSBARUdSRVBACitFWEVFWFQgPSBARVhFRVhUQAorR0NPViA9IEBHQ09WQAorR0VUVEVYVF9NQUNST19WRVJTSU9OID0gQEdFVFRFWFRfTUFDUk9fVkVSU0lPTkAKK0dNU0dGTVQgPSBAR01TR0ZNVEAKK0dNU0dGTVRfMDE1ID0gQEdNU0dGTVRfMDE1QAorR1JFUCA9IEBHUkVQQAorSEFWRV9ET1QgPSBASEFWRV9ET1RACitJTlNUQUxMID0gQElOU1RBTExACitJTlNUQUxMX0RBVEEgPSBASU5TVEFMTF9EQVRBQAorSU5TVEFMTF9QUk9HUkFNID0gQElOU1RBTExfUFJPR1JBTUAKK0lOU1RBTExfU0NSSVBUID0gQElOU1RBTExfU0NSSVBUQAorSU5TVEFMTF9TVFJJUF9QUk9HUkFNID0gQElOU1RBTExfU1RSSVBfUFJPR1JBTUAKK0lOVExMSUJTID0gQElOVExMSUJTQAorSU5UTF9NQUNPU1hfTElCUyA9IEBJTlRMX01BQ09TWF9MSUJTQAorTENPViA9IEBMQ09WQAorTENPVl9HRU5IVE1MID0gQExDT1ZfR0VOSFRNTEAKK0xERkxBR1MgPSBATERGTEFHU0AKK0xFWCA9IEBMRVhACitMRVhMSUIgPSBATEVYTElCQAorTEVYX09VVFBVVF9ST09UID0gQExFWF9PVVRQVVRfUk9PVEAKK0xJQklDT05WID0gQExJQklDT05WQAorTElCSU5UTCA9IEBMSUJJTlRMQAorTElCT0JKUyA9IEBMSUJPQkpTQAorTElCUyA9IEBMSUJTQAorTFRMSUJJQ09OViA9IEBMVExJQklDT05WQAorTFRMSUJJTlRMID0gQExUTElCSU5UTEAKK0xUTElCT0JKUyA9IEBMVExJQk9CSlNACitNQUtFSU5GTyA9IEBNQUtFSU5GT0AKK01LRElSX1AgPSBATUtESVJfUEAKK01TR0ZNVCA9IEBNU0dGTVRACitNU0dGTVRfMDE1ID0gQE1TR0ZNVF8wMTVACitNU0dNRVJHRSA9IEBNU0dNRVJHRUAKK09CSkVYVCA9IEBPQkpFWFRACitQQUNLQUdFID0gQFBBQ0tBR0VACitQQUNLQUdFX0JVR1JFUE9SVCA9IEBQQUNLQUdFX0JVR1JFUE9SVEAKK1BBQ0tBR0VfTkFNRSA9IEBQQUNLQUdFX05BTUVACitQQUNLQUdFX1NUUklORyA9IEBQQUNLQUdFX1NUUklOR0AKK1BBQ0tBR0VfVEFSTkFNRSA9IEBQQUNLQUdFX1RBUk5BTUVACitQQUNLQUdFX1VSTCA9IEBQQUNLQUdFX1VSTEAKK1BBQ0tBR0VfVkVSU0lPTiA9IEBQQUNLQUdFX1ZFUlNJT05ACitQQVRIX1NFUEFSQVRPUiA9IEBQQVRIX1NFUEFSQVRPUkAKK1BFUkwgPSBAUEVSTEAKK1BFUkxfQ09WRVIgPSBAUEVSTF9DT1ZFUkAKK1BFUkxfQ09WRVJBR0UgPSBAUEVSTF9DT1ZFUkFHRUAKK1BFUkxfTElCRElSID0gQFBFUkxfTElCRElSQAorUEtHX0NPTkZJRyA9IEBQS0dfQ09ORklHQAorUEtHX0NPTkZJR19MSUJESVIgPSBAUEtHX0NPTkZJR19MSUJESVJACitQS0dfQ09ORklHX1BBVEggPSBAUEtHX0NPTkZJR19QQVRIQAorUE80QSA9IEBQTzRBQAorUE9EMk1BTiA9IEBQT0QyTUFOQAorUE9TVUIgPSBAUE9TVUJACitSQU5MSUIgPSBAUkFOTElCQAorU0VMSU5VWF9MSUJTID0gQFNFTElOVVhfTElCU0AKK1NFVF9NQUtFID0gQFNFVF9NQUtFQAorU0hFTEwgPSBAU0hFTExACitTU0RfTElCUyA9IEBTU0RfTElCU0AKK1NUUklQID0gQFNUUklQQAorVVNFX05MUyA9IEBVU0VfTkxTQAorVVNFX1BPNEEgPSBAVVNFX1BPNEFACitVU0VfVU5JQ09ERSA9IEBVU0VfVU5JQ09ERUAKK1ZFUlNJT04gPSBAVkVSU0lPTkAKK1hHRVRURVhUID0gQFhHRVRURVhUQAorWEdFVFRFWFRfMDE1ID0gQFhHRVRURVhUXzAxNUAKK1hHRVRURVhUX0VYVFJBX09QVElPTlMgPSBAWEdFVFRFWFRfRVhUUkFfT1BUSU9OU0AKK1pMSUJfTElCUyA9IEBaTElCX0xJQlNACithYnNfYnVpbGRkaXIgPSBAYWJzX2J1aWxkZGlyQAorYWJzX3NyY2RpciA9IEBhYnNfc3JjZGlyQAorYWJzX3RvcF9idWlsZGRpciA9IEBhYnNfdG9wX2J1aWxkZGlyQAorYWJzX3RvcF9zcmNkaXIgPSBAYWJzX3RvcF9zcmNkaXJACithY19jdF9DQyA9IEBhY19jdF9DQ0AKK2FjX2N0X0NYWCA9IEBhY19jdF9DWFhACithZG1pbmRpciA9IEBhZG1pbmRpckAKK2FtX19pbmNsdWRlID0gQGFtX19pbmNsdWRlQAorYW1fX2xlYWRpbmdfZG90ID0gQGFtX19sZWFkaW5nX2RvdEAKK2FtX19xdW90ZSA9IEBhbV9fcXVvdGVACithbV9fdGFyID0gQGFtX190YXJACithbV9fdW50YXIgPSBAYW1fX3VudGFyQAorYmluZGlyID0gQGJpbmRpckAKK2J1aWxkID0gQGJ1aWxkQAorYnVpbGRfYWxpYXMgPSBAYnVpbGRfYWxpYXNACitidWlsZF9jcHUgPSBAYnVpbGRfY3B1QAorYnVpbGRfb3MgPSBAYnVpbGRfb3NACitidWlsZF92ZW5kb3IgPSBAYnVpbGRfdmVuZG9yQAorYnVpbGRkaXIgPSBAYnVpbGRkaXJACitkYXRhZGlyID0gQGRhdGFkaXJACitkYXRhcm9vdGRpciA9IEBkYXRhcm9vdGRpckAKK2RvY2RpciA9IEBkb2NkaXJACitkdmlkaXIgPSBAZHZpZGlyQAorZXhlY19wcmVmaXggPSBAZXhlY19wcmVmaXhACitob3N0ID0gQGhvc3RACitob3N0X2FsaWFzID0gQGhvc3RfYWxpYXNACitob3N0X2NwdSA9IEBob3N0X2NwdUAKK2hvc3Rfb3MgPSBAaG9zdF9vc0AKK2hvc3RfdmVuZG9yID0gQGhvc3RfdmVuZG9yQAoraHRtbGRpciA9IEBodG1sZGlyQAoraW5jbHVkZWRpciA9IEBpbmNsdWRlZGlyQAoraW5mb2RpciA9IEBpbmZvZGlyQAoraW5zdGFsbF9zaCA9IEBpbnN0YWxsX3NoQAorbGliZGlyID0gQGxpYmRpckAKK2xpYmV4ZWNkaXIgPSBAbGliZXhlY2RpckAKK2xvY2FsZWRpciA9IEBsb2NhbGVkaXJACitsb2NhbHN0YXRlZGlyID0gQGxvY2Fsc3RhdGVkaXJACitsb2dkaXIgPSBAbG9nZGlyQAorbWFuZGlyID0gQG1hbmRpckAKK21rZGlyX3AgPSBAbWtkaXJfcEAKK29sZGluY2x1ZGVkaXIgPSBAb2xkaW5jbHVkZWRpckAKK3BkZmRpciA9IEBwZGZkaXJACitwcmVmaXggPSBAcHJlZml4QAorcHJvZ3JhbV90cmFuc2Zvcm1fbmFtZSA9IEBwcm9ncmFtX3RyYW5zZm9ybV9uYW1lQAorcHNkaXIgPSBAcHNkaXJACitzYmluZGlyID0gQHNiaW5kaXJACitzaGFyZWRzdGF0ZWRpciA9IEBzaGFyZWRzdGF0ZWRpckAKK3NyY2RpciA9IEBzcmNkaXJACitzeXNjb25mZGlyID0gQHN5c2NvbmZkaXJACit0YXJnZXRfYWxpYXMgPSBAdGFyZ2V0X2FsaWFzQAordG9wX2J1aWxkX3ByZWZpeCA9IEB0b3BfYnVpbGRfcHJlZml4QAordG9wX2J1aWxkZGlyID0gQHRvcF9idWlsZGRpckAKK3RvcF9zcmNkaXIgPSBAdG9wX3NyY2RpckAKK0BXSVRIX0RTRUxFQ1RfVFJVRUBNQVlCRV9EU0VMRUNUID0gZHNlbGVjdAorU1VCRElSUyA9IFwKKwlsaWIgXAorCWRwa2ctZGViIFwKKwlkcGtnLXNwbGl0IFwKKwlzcmMgXAorCXV0aWxzIFwKKwkkKE1BWUJFX0RTRUxFQ1QpIFwKKwlzY3JpcHRzIFwKKwlwbyBcCisJbWFuCisKK0FDTE9DQUxfQU1GTEFHUyA9IC1JIG00CitkaXN0X3BrZ2RhdGFfREFUQSA9IGNwdXRhYmxlIG9zdGFibGUgdHJpcGxldHRhYmxlCitFWFRSQV9ESVNUID0gXAorCS5tYWlsbWFwIFwKKwlDaGFuZ2VMb2cub2xkIFwKKwlSRUFETUUudHJhbnNsYXRvcnMgXAorCWdldC12ZXJzaW9uIFwKKwlkb2MvUkVBRE1FLmFwaSBcCisJZG9jL1JFQURNRS5mZWF0dXJlLXJlbW92YWwtc2NoZWR1bGUgXAorCWRvYy9jb2Rpbmctc3R5bGUudHh0IFwKKwlkb2MvbGNvdi1lcGlsb2cgXAorCWRvYy9sY292LXByb2xvZyBcCisJZG9jL3RyaWdnZXJzLnR4dCBcCisJZGViaWFuL2FyY2h0YWJsZSBcCisJZGViaWFuL2NoYW5nZWxvZyBcCisJZGViaWFuL2NvbXBhdCBcCisJZGViaWFuL2NvbnRyb2wgXAorCWRlYmlhbi9jb3B5cmlnaHQgXAorCWRlYmlhbi9kcGtnLWRldi5kb2NzIFwKKwlkZWJpYW4vZHBrZy1kZXYuaW5zdGFsbCBcCisJZGViaWFuL2Rwa2ctZGV2LnByZWluc3QgXAorCWRlYmlhbi9kcGtnLWRldi5saW50aWFuLW92ZXJyaWRlcyBcCisJZGViaWFuL2Rwa2cuY2ZnIFwKKwlkZWJpYW4vZHBrZy5jcm9uLmRhaWx5IFwKKwlkZWJpYW4vZHBrZy5kb2NzIFwKKwlkZWJpYW4vZHBrZy5pbnN0YWxsIFwKKwlkZWJpYW4vZHBrZy5wb3N0aW5zdCBcCisJZGViaWFuL2Rwa2cucG9zdHJtIFwKKwlkZWJpYW4vZHBrZy5wcmVpbnN0IFwKKwlkZWJpYW4vZHBrZy5wcmVybSBcCisJZGViaWFuL2Rwa2cubG9ncm90YXRlIFwKKwlkZWJpYW4vZHBrZy5saW5rcyBcCisJZGViaWFuL2Rwa2cubGludGlhbi1vdmVycmlkZXMgXAorCWRlYmlhbi9kc2VsZWN0LmNmZyBcCisJZGViaWFuL2RzZWxlY3QuZG9jcyBcCisJZGViaWFuL2RzZWxlY3QuaW5zdGFsbCBcCisJZGViaWFuL2RzZWxlY3QucHJlaW5zdCBcCisJZGViaWFuL2RzZWxlY3QubGludGlhbi1vdmVycmlkZXMgXAorCWRlYmlhbi9saWJkcGtnLWRldi5kb2NzIFwKKwlkZWJpYW4vbGliZHBrZy1kZXYuaW5zdGFsbCBcCisJZGViaWFuL2xpYmRwa2ctZGV2LmxpbnRpYW4tb3ZlcnJpZGVzIFwKKwlkZWJpYW4vbGliZHBrZy1wZXJsLmRvY3MgXAorCWRlYmlhbi9saWJkcGtnLXBlcmwuaW5zdGFsbCBcCisJZGViaWFuL2xpYmRwa2ctcGVybC5saW50aWFuLW92ZXJyaWRlcyBcCisJZGViaWFuL3NvdXJjZS9saW50aWFuLW92ZXJyaWRlcyBcCisJZGViaWFuL3NvdXJjZS9mb3JtYXQgXAorCWRlYmlhbi9zb3VyY2Uvb3B0aW9ucyBcCisJZGViaWFuL3VzZXJ0YWdzIFwKKwlkZWJpYW4vcnVsZXMgXAorCWRlYmlhbi9zaGxpYnMuZGVmYXVsdCBcCisJZGViaWFuL3NobGlicy5vdmVycmlkZQorCitAQ09WRVJBR0VfRU5BQkxFRF9UUlVFQExDT1ZfT1BUUyA9IC1xIC0tY2hlY2tzdW0KK0BDT1ZFUkFHRV9FTkFCTEVEX1RSVUVATENPVl9DQVBUVVJFX09QVFMgPSAkKExDT1ZfT1BUUykgLS1uby1yZWN1cnNpb24gXAorQENPVkVSQUdFX0VOQUJMRURfVFJVRUAJLWQgJCh0b3BfYnVpbGRkaXIpL2xpYi9kcGtnIFwKK0BDT1ZFUkFHRV9FTkFCTEVEX1RSVUVACS1kICQodG9wX2J1aWxkZGlyKS9zcmMgXAorQENPVkVSQUdFX0VOQUJMRURfVFJVRUAJLWQgJCh0b3BfYnVpbGRkaXIpL3V0aWxzCisKK0RJU1RDTEVBTkZJTEVTID0gQ2hhbmdlTG9nCithbGw6IGNvbmZpZy5oCisJJChNQUtFKSAkKEFNX01BS0VGTEFHUykgYWxsLXJlY3Vyc2l2ZQorCisuU1VGRklYRVM6CithbS0tcmVmcmVzaDoKKwlAOgorJChzcmNkaXIpL01ha2VmaWxlLmluOiAgJChzcmNkaXIpL01ha2VmaWxlLmFtICAkKGFtX19jb25maWd1cmVfZGVwcykKKwlAZm9yIGRlcCBpbiAkPzsgZG8gXAorCSAgY2FzZSAnJChhbV9fY29uZmlndXJlX2RlcHMpJyBpbiBcCisJICAgICokJGRlcCopIFwKKwkgICAgICBlY2hvICcgY2QgJChzcmNkaXIpICYmICQoQVVUT01BS0UpIC0tZm9yZWlnbic7IFwKKwkgICAgICAkKGFtX19jZCkgJChzcmNkaXIpICYmICQoQVVUT01BS0UpIC0tZm9yZWlnbiBcCisJCSYmIGV4aXQgMDsgXAorCSAgICAgIGV4aXQgMTs7IFwKKwkgIGVzYWM7IFwKKwlkb25lOyBcCisJZWNobyAnIGNkICQodG9wX3NyY2RpcikgJiYgJChBVVRPTUFLRSkgLS1mb3JlaWduIE1ha2VmaWxlJzsgXAorCSQoYW1fX2NkKSAkKHRvcF9zcmNkaXIpICYmIFwKKwkgICQoQVVUT01BS0UpIC0tZm9yZWlnbiBNYWtlZmlsZQorLlBSRUNJT1VTOiBNYWtlZmlsZQorTWFrZWZpbGU6ICQoc3JjZGlyKS9NYWtlZmlsZS5pbiAkKHRvcF9idWlsZGRpcikvY29uZmlnLnN0YXR1cworCUBjYXNlICckPycgaW4gXAorCSAgKmNvbmZpZy5zdGF0dXMqKSBcCisJICAgIGVjaG8gJyAkKFNIRUxMKSAuL2NvbmZpZy5zdGF0dXMnOyBcCisJICAgICQoU0hFTEwpIC4vY29uZmlnLnN0YXR1czs7IFwKKwkgICopIFwKKwkgICAgZWNobyAnIGNkICQodG9wX2J1aWxkZGlyKSAmJiAkKFNIRUxMKSAuL2NvbmZpZy5zdGF0dXMgJEAgJChhbV9fZGVwZmlsZXNfbWF5YmUpJzsgXAorCSAgICBjZCAkKHRvcF9idWlsZGRpcikgJiYgJChTSEVMTCkgLi9jb25maWcuc3RhdHVzICRAICQoYW1fX2RlcGZpbGVzX21heWJlKTs7IFwKKwllc2FjOworCiskKHRvcF9idWlsZGRpcikvY29uZmlnLnN0YXR1czogJCh0b3Bfc3JjZGlyKS9jb25maWd1cmUgJChDT05GSUdfU1RBVFVTX0RFUEVOREVOQ0lFUykKKwkkKFNIRUxMKSAuL2NvbmZpZy5zdGF0dXMgLS1yZWNoZWNrCisKKyQodG9wX3NyY2RpcikvY29uZmlndXJlOiAgJChhbV9fY29uZmlndXJlX2RlcHMpCisJJChhbV9fY2QpICQoc3JjZGlyKSAmJiAkKEFVVE9DT05GKQorJChBQ0xPQ0FMX000KTogICQoYW1fX2FjbG9jYWxfbTRfZGVwcykKKwkkKGFtX19jZCkgJChzcmNkaXIpICYmICQoQUNMT0NBTCkgJChBQ0xPQ0FMX0FNRkxBR1MpCiskKGFtX19hY2xvY2FsX200X2RlcHMpOgorCitjb25maWcuaDogc3RhbXAtaDEKKwlAaWYgdGVzdCAhIC1mICRAOyB0aGVuIFwKKwkgIHJtIC1mIHN0YW1wLWgxOyBcCisJICAkKE1BS0UpICQoQU1fTUFLRUZMQUdTKSBzdGFtcC1oMTsgXAorCWVsc2UgOjsgZmkKKworc3RhbXAtaDE6ICQoc3JjZGlyKS9jb25maWcuaC5pbiAkKHRvcF9idWlsZGRpcikvY29uZmlnLnN0YXR1cworCUBybSAtZiBzdGFtcC1oMQorCWNkICQodG9wX2J1aWxkZGlyKSAmJiAkKFNIRUxMKSAuL2NvbmZpZy5zdGF0dXMgY29uZmlnLmgKKyQoc3JjZGlyKS9jb25maWcuaC5pbjogICQoYW1fX2NvbmZpZ3VyZV9kZXBzKSAKKwkoJChhbV9fY2QpICQodG9wX3NyY2RpcikgJiYgJChBVVRPSEVBREVSKSkKKwlybSAtZiBzdGFtcC1oMQorCXRvdWNoICRACisKK2Rpc3RjbGVhbi1oZHI6CisJLXJtIC1mIGNvbmZpZy5oIHN0YW1wLWgxCitkb2MvRG94eWZpbGU6ICQodG9wX2J1aWxkZGlyKS9jb25maWcuc3RhdHVzICQodG9wX3NyY2RpcikvZG9jL0RveHlmaWxlLmluCisJY2QgJCh0b3BfYnVpbGRkaXIpICYmICQoU0hFTEwpIC4vY29uZmlnLnN0YXR1cyAkQAoraW5zdGFsbC1kaXN0X3BrZ2RhdGFEQVRBOiAkKGRpc3RfcGtnZGF0YV9EQVRBKQorCUAkKE5PUk1BTF9JTlNUQUxMKQorCXRlc3QgLXogIiQocGtnZGF0YWRpcikiIHx8ICQoTUtESVJfUCkgIiQoREVTVERJUikkKHBrZ2RhdGFkaXIpIgorCUBsaXN0PSckKGRpc3RfcGtnZGF0YV9EQVRBKSc7IHRlc3QgLW4gIiQocGtnZGF0YWRpcikiIHx8IGxpc3Q9OyBcCisJZm9yIHAgaW4gJCRsaXN0OyBkbyBcCisJICBpZiB0ZXN0IC1mICIkJHAiOyB0aGVuIGQ9OyBlbHNlIGQ9IiQoc3JjZGlyKS8iOyBmaTsgXAorCSAgZWNobyAiJCRkJCRwIjsgXAorCWRvbmUgfCAkKGFtX19iYXNlX2xpc3QpIHwgXAorCXdoaWxlIHJlYWQgZmlsZXM7IGRvIFwKKwkgIGVjaG8gIiAkKElOU1RBTExfREFUQSkgJCRmaWxlcyAnJChERVNURElSKSQocGtnZGF0YWRpciknIjsgXAorCSAgJChJTlNUQUxMX0RBVEEpICQkZmlsZXMgIiQoREVTVERJUikkKHBrZ2RhdGFkaXIpIiB8fCBleGl0ICQkPzsgXAorCWRvbmUKKwordW5pbnN0YWxsLWRpc3RfcGtnZGF0YURBVEE6CisJQCQoTk9STUFMX1VOSU5TVEFMTCkKKwlAbGlzdD0nJChkaXN0X3BrZ2RhdGFfREFUQSknOyB0ZXN0IC1uICIkKHBrZ2RhdGFkaXIpIiB8fCBsaXN0PTsgXAorCWZpbGVzPWBmb3IgcCBpbiAkJGxpc3Q7IGRvIGVjaG8gJCRwOyBkb25lIHwgc2VkIC1lICdzfF4uKi98fCdgOyBcCisJdGVzdCAtbiAiJCRmaWxlcyIgfHwgZXhpdCAwOyBcCisJZWNobyAiICggY2QgJyQoREVTVERJUikkKHBrZ2RhdGFkaXIpJyAmJiBybSAtZiIgJCRmaWxlcyAiKSI7IFwKKwljZCAiJChERVNURElSKSQocGtnZGF0YWRpcikiICYmIHJtIC1mICQkZmlsZXMKKworIyBUaGlzIGRpcmVjdG9yeSdzIHN1YmRpcmVjdG9yaWVzIGFyZSBtb3N0bHkgaW5kZXBlbmRlbnQ7IHlvdSBjYW4gY2QKKyMgaW50byB0aGVtIGFuZCBydW4gYG1ha2UnIHdpdGhvdXQgZ29pbmcgdGhyb3VnaCB0aGlzIE1ha2VmaWxlLgorIyBUbyBjaGFuZ2UgdGhlIHZhbHVlcyBvZiBgbWFrZScgdmFyaWFibGVzOiBpbnN0ZWFkIG9mIGVkaXRpbmcgTWFrZWZpbGVzLAorIyAoMSkgaWYgdGhlIHZhcmlhYmxlIGlzIHNldCBpbiBgY29uZmlnLnN0YXR1cycsIGVkaXQgYGNvbmZpZy5zdGF0dXMnCisjICAgICAod2hpY2ggd2lsbCBjYXVzZSB0aGUgTWFrZWZpbGVzIHRvIGJlIHJlZ2VuZXJhdGVkIHdoZW4geW91IHJ1biBgbWFrZScpOworIyAoMikgb3RoZXJ3aXNlLCBwYXNzIHRoZSBkZXNpcmVkIHZhbHVlcyBvbiB0aGUgYG1ha2UnIGNvbW1hbmQgbGluZS4KKyQoUkVDVVJTSVZFX1RBUkdFVFMpOgorCUBmYWlsPSBmYWlsY29tPSdleGl0IDEnOyBcCisJZm9yIGYgaW4geCAkJE1BS0VGTEFHUzsgZG8gXAorCSAgY2FzZSAkJGYgaW4gXAorCSAgICAqPSogfCAtLVsha10qKTs7IFwKKwkgICAgKmsqKSBmYWlsY29tPSdmYWlsPXllcyc7OyBcCisJICBlc2FjOyBcCisJZG9uZTsgXAorCWRvdF9zZWVuPW5vOyBcCisJdGFyZ2V0PWBlY2hvICRAIHwgc2VkIHMvLXJlY3Vyc2l2ZS8vYDsgXAorCWxpc3Q9JyQoU1VCRElSUyknOyBmb3Igc3ViZGlyIGluICQkbGlzdDsgZG8gXAorCSAgZWNobyAiTWFraW5nICQkdGFyZ2V0IGluICQkc3ViZGlyIjsgXAorCSAgaWYgdGVzdCAiJCRzdWJkaXIiID0gIi4iOyB0aGVuIFwKKwkgICAgZG90X3NlZW49eWVzOyBcCisJICAgIGxvY2FsX3RhcmdldD0iJCR0YXJnZXQtYW0iOyBcCisJICBlbHNlIFwKKwkgICAgbG9jYWxfdGFyZ2V0PSIkJHRhcmdldCI7IFwKKwkgIGZpOyBcCisJICAoJChhbV9fY2QpICQkc3ViZGlyICYmICQoTUFLRSkgJChBTV9NQUtFRkxBR1MpICQkbG9jYWxfdGFyZ2V0KSBcCisJICB8fCBldmFsICQkZmFpbGNvbTsgXAorCWRvbmU7IFwKKwlpZiB0ZXN0ICIkJGRvdF9zZWVuIiA9ICJubyI7IHRoZW4gXAorCSAgJChNQUtFKSAkKEFNX01BS0VGTEFHUykgIiQkdGFyZ2V0LWFtIiB8fCBleGl0IDE7IFwKKwlmaTsgdGVzdCAteiAiJCRmYWlsIgorCiskKFJFQ1VSU0lWRV9DTEVBTl9UQVJHRVRTKToKKwlAZmFpbD0gZmFpbGNvbT0nZXhpdCAxJzsgXAorCWZvciBmIGluIHggJCRNQUtFRkxBR1M7IGRvIFwKKwkgIGNhc2UgJCRmIGluIFwKKwkgICAgKj0qIHwgLS1bIWtdKik7OyBcCisJICAgICprKikgZmFpbGNvbT0nZmFpbD15ZXMnOzsgXAorCSAgZXNhYzsgXAorCWRvbmU7IFwKKwlkb3Rfc2Vlbj1ubzsgXAorCWNhc2UgIiRAIiBpbiBcCisJICBkaXN0Y2xlYW4tKiB8IG1haW50YWluZXItY2xlYW4tKikgbGlzdD0nJChESVNUX1NVQkRJUlMpJyA7OyBcCisJICAqKSBsaXN0PSckKFNVQkRJUlMpJyA7OyBcCisJZXNhYzsgXAorCXJldj0nJzsgZm9yIHN1YmRpciBpbiAkJGxpc3Q7IGRvIFwKKwkgIGlmIHRlc3QgIiQkc3ViZGlyIiA9ICIuIjsgdGhlbiA6OyBlbHNlIFwKKwkgICAgcmV2PSIkJHN1YmRpciAkJHJldiI7IFwKKwkgIGZpOyBcCisJZG9uZTsgXAorCXJldj0iJCRyZXYgLiI7IFwKKwl0YXJnZXQ9YGVjaG8gJEAgfCBzZWQgcy8tcmVjdXJzaXZlLy9gOyBcCisJZm9yIHN1YmRpciBpbiAkJHJldjsgZG8gXAorCSAgZWNobyAiTWFraW5nICQkdGFyZ2V0IGluICQkc3ViZGlyIjsgXAorCSAgaWYgdGVzdCAiJCRzdWJkaXIiID0gIi4iOyB0aGVuIFwKKwkgICAgbG9jYWxfdGFyZ2V0PSIkJHRhcmdldC1hbSI7IFwKKwkgIGVsc2UgXAorCSAgICBsb2NhbF90YXJnZXQ9IiQkdGFyZ2V0IjsgXAorCSAgZmk7IFwKKwkgICgkKGFtX19jZCkgJCRzdWJkaXIgJiYgJChNQUtFKSAkKEFNX01BS0VGTEFHUykgJCRsb2NhbF90YXJnZXQpIFwKKwkgIHx8IGV2YWwgJCRmYWlsY29tOyBcCisJZG9uZSAmJiB0ZXN0IC16ICIkJGZhaWwiCit0YWdzLXJlY3Vyc2l2ZToKKwlsaXN0PSckKFNVQkRJUlMpJzsgZm9yIHN1YmRpciBpbiAkJGxpc3Q7IGRvIFwKKwkgIHRlc3QgIiQkc3ViZGlyIiA9IC4gfHwgKCQoYW1fX2NkKSAkJHN1YmRpciAmJiAkKE1BS0UpICQoQU1fTUFLRUZMQUdTKSB0YWdzKTsgXAorCWRvbmUKK2N0YWdzLXJlY3Vyc2l2ZToKKwlsaXN0PSckKFNVQkRJUlMpJzsgZm9yIHN1YmRpciBpbiAkJGxpc3Q7IGRvIFwKKwkgIHRlc3QgIiQkc3ViZGlyIiA9IC4gfHwgKCQoYW1fX2NkKSAkJHN1YmRpciAmJiAkKE1BS0UpICQoQU1fTUFLRUZMQUdTKSBjdGFncyk7IFwKKwlkb25lCisKK0lEOiAkKEhFQURFUlMpICQoU09VUkNFUykgJChMSVNQKSAkKFRBR1NfRklMRVMpCisJbGlzdD0nJChTT1VSQ0VTKSAkKEhFQURFUlMpICQoTElTUCkgJChUQUdTX0ZJTEVTKSc7IFwKKwl1bmlxdWU9YGZvciBpIGluICQkbGlzdDsgZG8gXAorCSAgICBpZiB0ZXN0IC1mICIkJGkiOyB0aGVuIGVjaG8gJCRpOyBlbHNlIGVjaG8gJChzcmNkaXIpLyQkaTsgZmk7IFwKKwkgIGRvbmUgfCBcCisJICAkKEFXSykgJ3sgZmlsZXNbJCQwXSA9IDE7IG5vbmVtcHR5ID0gMTsgfSBcCisJICAgICAgRU5EIHsgaWYgKG5vbmVtcHR5KSB7IGZvciAoaSBpbiBmaWxlcykgcHJpbnQgaTsgfTsgfSdgOyBcCisJbWtpZCAtZklEICQkdW5pcXVlCit0YWdzOiBUQUdTCisKK1RBR1M6IHRhZ3MtcmVjdXJzaXZlICQoSEVBREVSUykgJChTT1VSQ0VTKSBjb25maWcuaC5pbiAkKFRBR1NfREVQRU5ERU5DSUVTKSBcCisJCSQoVEFHU19GSUxFUykgJChMSVNQKQorCXNldCB4OyBcCisJaGVyZT1gcHdkYDsgXAorCWlmICgkKEVUQUdTKSAtLWV0YWdzLWluY2x1ZGUgLS12ZXJzaW9uKSA+L2Rldi9udWxsIDI+JjE7IHRoZW4gXAorCSAgaW5jbHVkZV9vcHRpb249LS1ldGFncy1pbmNsdWRlOyBcCisJICBlbXB0eV9maXg9LjsgXAorCWVsc2UgXAorCSAgaW5jbHVkZV9vcHRpb249LS1pbmNsdWRlOyBcCisJICBlbXB0eV9maXg9OyBcCisJZmk7IFwKKwlsaXN0PSckKFNVQkRJUlMpJzsgZm9yIHN1YmRpciBpbiAkJGxpc3Q7IGRvIFwKKwkgIGlmIHRlc3QgIiQkc3ViZGlyIiA9IC47IHRoZW4gOjsgZWxzZSBcCisJICAgIHRlc3QgISAtZiAkJHN1YmRpci9UQUdTIHx8IFwKKwkgICAgICBzZXQgIiQkQCIgIiQkaW5jbHVkZV9vcHRpb249JCRoZXJlLyQkc3ViZGlyL1RBR1MiOyBcCisJICBmaTsgXAorCWRvbmU7IFwKKwlsaXN0PSckKFNPVVJDRVMpICQoSEVBREVSUykgY29uZmlnLmguaW4gJChMSVNQKSAkKFRBR1NfRklMRVMpJzsgXAorCXVuaXF1ZT1gZm9yIGkgaW4gJCRsaXN0OyBkbyBcCisJICAgIGlmIHRlc3QgLWYgIiQkaSI7IHRoZW4gZWNobyAkJGk7IGVsc2UgZWNobyAkKHNyY2RpcikvJCRpOyBmaTsgXAorCSAgZG9uZSB8IFwKKwkgICQoQVdLKSAneyBmaWxlc1skJDBdID0gMTsgbm9uZW1wdHkgPSAxOyB9IFwKKwkgICAgICBFTkQgeyBpZiAobm9uZW1wdHkpIHsgZm9yIChpIGluIGZpbGVzKSBwcmludCBpOyB9OyB9J2A7IFwKKwlzaGlmdDsgXAorCWlmIHRlc3QgLXogIiQoRVRBR1NfQVJHUykkJCokJHVuaXF1ZSI7IHRoZW4gOjsgZWxzZSBcCisJICB0ZXN0IC1uICIkJHVuaXF1ZSIgfHwgdW5pcXVlPSQkZW1wdHlfZml4OyBcCisJICBpZiB0ZXN0ICQkIyAtZ3QgMDsgdGhlbiBcCisJICAgICQoRVRBR1MpICQoRVRBR1NGTEFHUykgJChBTV9FVEFHU0ZMQUdTKSAkKEVUQUdTX0FSR1MpIFwKKwkgICAgICAiJCRAIiAkJHVuaXF1ZTsgXAorCSAgZWxzZSBcCisJICAgICQoRVRBR1MpICQoRVRBR1NGTEFHUykgJChBTV9FVEFHU0ZMQUdTKSAkKEVUQUdTX0FSR1MpIFwKKwkgICAgICAkJHVuaXF1ZTsgXAorCSAgZmk7IFwKKwlmaQorY3RhZ3M6IENUQUdTCitDVEFHUzogY3RhZ3MtcmVjdXJzaXZlICQoSEVBREVSUykgJChTT1VSQ0VTKSBjb25maWcuaC5pbiAkKFRBR1NfREVQRU5ERU5DSUVTKSBcCisJCSQoVEFHU19GSUxFUykgJChMSVNQKQorCWxpc3Q9JyQoU09VUkNFUykgJChIRUFERVJTKSBjb25maWcuaC5pbiAkKExJU1ApICQoVEFHU19GSUxFUyknOyBcCisJdW5pcXVlPWBmb3IgaSBpbiAkJGxpc3Q7IGRvIFwKKwkgICAgaWYgdGVzdCAtZiAiJCRpIjsgdGhlbiBlY2hvICQkaTsgZWxzZSBlY2hvICQoc3JjZGlyKS8kJGk7IGZpOyBcCisJICBkb25lIHwgXAorCSAgJChBV0spICd7IGZpbGVzWyQkMF0gPSAxOyBub25lbXB0eSA9IDE7IH0gXAorCSAgICAgIEVORCB7IGlmIChub25lbXB0eSkgeyBmb3IgKGkgaW4gZmlsZXMpIHByaW50IGk7IH07IH0nYDsgXAorCXRlc3QgLXogIiQoQ1RBR1NfQVJHUykkJHVuaXF1ZSIgXAorCSAgfHwgJChDVEFHUykgJChDVEFHU0ZMQUdTKSAkKEFNX0NUQUdTRkxBR1MpICQoQ1RBR1NfQVJHUykgXAorCSAgICAgJCR1bmlxdWUKKworR1RBR1M6CisJaGVyZT1gJChhbV9fY2QpICQodG9wX2J1aWxkZGlyKSAmJiBwd2RgIFwKKwkgICYmICQoYW1fX2NkKSAkKHRvcF9zcmNkaXIpIFwKKwkgICYmIGd0YWdzIC1pICQoR1RBR1NfQVJHUykgIiQkaGVyZSIKKworZGlzdGNsZWFuLXRhZ3M6CisJLXJtIC1mIFRBR1MgSUQgR1RBR1MgR1JUQUdTIEdTWU1TIEdQQVRIIHRhZ3MKKworZGlzdGRpcjogJChESVNURklMRVMpCisJJChhbV9fcmVtb3ZlX2Rpc3RkaXIpCisJdGVzdCAtZCAiJChkaXN0ZGlyKSIgfHwgbWtkaXIgIiQoZGlzdGRpcikiCisJQHNyY2RpcnN0cmlwPWBlY2hvICIkKHNyY2RpcikiIHwgc2VkICdzL1tdLlteJCRcXCpdL1xcXFwmL2cnYDsgXAorCXRvcHNyY2RpcnN0cmlwPWBlY2hvICIkKHRvcF9zcmNkaXIpIiB8IHNlZCAncy9bXS5bXiQkXFwqXS9cXFxcJi9nJ2A7IFwKKwlsaXN0PSckKERJU1RGSUxFUyknOyBcCisJICBkaXN0X2ZpbGVzPWBmb3IgZmlsZSBpbiAkJGxpc3Q7IGRvIGVjaG8gJCRmaWxlOyBkb25lIHwgXAorCSAgc2VkIC1lICJzfF4kJHNyY2RpcnN0cmlwL3x8O3QiIFwKKwkgICAgICAtZSAic3xeJCR0b3BzcmNkaXJzdHJpcC98JCh0b3BfYnVpbGRkaXIpL3w7dCJgOyBcCisJY2FzZSAkJGRpc3RfZmlsZXMgaW4gXAorCSAgKi8qKSAkKE1LRElSX1ApIGBlY2hvICIkJGRpc3RfZmlsZXMiIHwgXAorCQkJICAgc2VkICcvXC8vIWQ7c3xefCQoZGlzdGRpcikvfDtzLC9bXi9dKiQkLCwnIHwgXAorCQkJICAgc29ydCAtdWAgOzsgXAorCWVzYWM7IFwKKwlmb3IgZmlsZSBpbiAkJGRpc3RfZmlsZXM7IGRvIFwKKwkgIGlmIHRlc3QgLWYgJCRmaWxlIHx8IHRlc3QgLWQgJCRmaWxlOyB0aGVuIGQ9LjsgZWxzZSBkPSQoc3JjZGlyKTsgZmk7IFwKKwkgIGlmIHRlc3QgLWQgJCRkLyQkZmlsZTsgdGhlbiBcCisJICAgIGRpcj1gZWNobyAiLyQkZmlsZSIgfCBzZWQgLWUgJ3MsL1teL10qJCQsLCdgOyBcCisJICAgIGlmIHRlc3QgLWQgIiQoZGlzdGRpcikvJCRmaWxlIjsgdGhlbiBcCisJICAgICAgZmluZCAiJChkaXN0ZGlyKS8kJGZpbGUiIC10eXBlIGQgISAtcGVybSAtNzAwIC1leGVjIGNobW9kIHUrcnd4IHt9IFw7OyBcCisJICAgIGZpOyBcCisJICAgIGlmIHRlc3QgLWQgJChzcmNkaXIpLyQkZmlsZSAmJiB0ZXN0ICQkZCAhPSAkKHNyY2Rpcik7IHRoZW4gXAorCSAgICAgIGNwIC1mcFIgJChzcmNkaXIpLyQkZmlsZSAiJChkaXN0ZGlyKSQkZGlyIiB8fCBleGl0IDE7IFwKKwkgICAgICBmaW5kICIkKGRpc3RkaXIpLyQkZmlsZSIgLXR5cGUgZCAhIC1wZXJtIC03MDAgLWV4ZWMgY2htb2QgdStyd3gge30gXDs7IFwKKwkgICAgZmk7IFwKKwkgICAgY3AgLWZwUiAkJGQvJCRmaWxlICIkKGRpc3RkaXIpJCRkaXIiIHx8IGV4aXQgMTsgXAorCSAgZWxzZSBcCisJICAgIHRlc3QgLWYgIiQoZGlzdGRpcikvJCRmaWxlIiBcCisJICAgIHx8IGNwIC1wICQkZC8kJGZpbGUgIiQoZGlzdGRpcikvJCRmaWxlIiBcCisJICAgIHx8IGV4aXQgMTsgXAorCSAgZmk7IFwKKwlkb25lCisJQGxpc3Q9JyQoRElTVF9TVUJESVJTKSc7IGZvciBzdWJkaXIgaW4gJCRsaXN0OyBkbyBcCisJICBpZiB0ZXN0ICIkJHN1YmRpciIgPSAuOyB0aGVuIDo7IGVsc2UgXAorCSAgICB0ZXN0IC1kICIkKGRpc3RkaXIpLyQkc3ViZGlyIiBcCisJICAgIHx8ICQoTUtESVJfUCkgIiQoZGlzdGRpcikvJCRzdWJkaXIiIFwKKwkgICAgfHwgZXhpdCAxOyBcCisJICBmaTsgXAorCWRvbmUKKwlAbGlzdD0nJChESVNUX1NVQkRJUlMpJzsgZm9yIHN1YmRpciBpbiAkJGxpc3Q7IGRvIFwKKwkgIGlmIHRlc3QgIiQkc3ViZGlyIiA9IC47IHRoZW4gOjsgZWxzZSBcCisJICAgIGRpcjE9JCRzdWJkaXI7IGRpcjI9IiQoZGlzdGRpcikvJCRzdWJkaXIiOyBcCisJICAgICQoYW1fX3JlbGF0aXZpemUpOyBcCisJICAgIG5ld19kaXN0ZGlyPSQkcmVsZGlyOyBcCisJICAgIGRpcjE9JCRzdWJkaXI7IGRpcjI9IiQodG9wX2Rpc3RkaXIpIjsgXAorCSAgICAkKGFtX19yZWxhdGl2aXplKTsgXAorCSAgICBuZXdfdG9wX2Rpc3RkaXI9JCRyZWxkaXI7IFwKKwkgICAgZWNobyAiIChjZCAkJHN1YmRpciAmJiAkKE1BS0UpICQoQU1fTUFLRUZMQUdTKSB0b3BfZGlzdGRpcj0iJCRuZXdfdG9wX2Rpc3RkaXIiIGRpc3RkaXI9IiQkbmV3X2Rpc3RkaXIiIFxcIjsgXAorCSAgICBlY2hvICIgICAgIGFtX19yZW1vdmVfZGlzdGRpcj06IGFtX19za2lwX2xlbmd0aF9jaGVjaz06IGFtX19za2lwX21vZGVfZml4PTogZGlzdGRpcikiOyBcCisJICAgICgkKGFtX19jZCkgJCRzdWJkaXIgJiYgXAorCSAgICAgICQoTUFLRSkgJChBTV9NQUtFRkxBR1MpIFwKKwkgICAgICAgIHRvcF9kaXN0ZGlyPSIkJG5ld190b3BfZGlzdGRpciIgXAorCSAgICAgICAgZGlzdGRpcj0iJCRuZXdfZGlzdGRpciIgXAorCQlhbV9fcmVtb3ZlX2Rpc3RkaXI9OiBcCisJCWFtX19za2lwX2xlbmd0aF9jaGVjaz06IFwKKwkJYW1fX3NraXBfbW9kZV9maXg9OiBcCisJICAgICAgICBkaXN0ZGlyKSBcCisJICAgICAgfHwgZXhpdCAxOyBcCisJICBmaTsgXAorCWRvbmUKKwkkKE1BS0UpICQoQU1fTUFLRUZMQUdTKSBcCisJICB0b3BfZGlzdGRpcj0iJCh0b3BfZGlzdGRpcikiIGRpc3RkaXI9IiQoZGlzdGRpcikiIFwKKwkgIGRpc3QtaG9vaworCS10ZXN0IC1uICIkKGFtX19za2lwX21vZGVfZml4KSIgXAorCXx8IGZpbmQgIiQoZGlzdGRpcikiIC10eXBlIGQgISAtcGVybSAtNzU1IFwKKwkJLWV4ZWMgY2htb2QgdStyd3gsZ28rcngge30gXDsgLW8gXAorCSAgISAtdHlwZSBkICEgLXBlcm0gLTQ0NCAtbGlua3MgMSAtZXhlYyBjaG1vZCBhK3Ige30gXDsgLW8gXAorCSAgISAtdHlwZSBkICEgLXBlcm0gLTQwMCAtZXhlYyBjaG1vZCBhK3Ige30gXDsgLW8gXAorCSAgISAtdHlwZSBkICEgLXBlcm0gLTQ0NCAtZXhlYyAkKGluc3RhbGxfc2gpIC1jIC1tIGErciB7fSB7fSBcOyBcCisJfHwgY2htb2QgLVIgYStyICIkKGRpc3RkaXIpIgorZGlzdC1nemlwOiBkaXN0ZGlyCisJdGFyZGlyPSQoZGlzdGRpcikgJiYgJChhbV9fdGFyKSB8IEdaSVA9JChHWklQX0VOVikgZ3ppcCAtYyA+JChkaXN0ZGlyKS50YXIuZ3oKKwkkKGFtX19yZW1vdmVfZGlzdGRpcikKKworZGlzdC1iemlwMjogZGlzdGRpcgorCXRhcmRpcj0kKGRpc3RkaXIpICYmICQoYW1fX3RhcikgfCBiemlwMiAtOSAtYyA+JChkaXN0ZGlyKS50YXIuYnoyCisJJChhbV9fcmVtb3ZlX2Rpc3RkaXIpCisKK2Rpc3QtbHptYTogZGlzdGRpcgorCXRhcmRpcj0kKGRpc3RkaXIpICYmICQoYW1fX3RhcikgfCBsem1hIC05IC1jID4kKGRpc3RkaXIpLnRhci5sem1hCisJJChhbV9fcmVtb3ZlX2Rpc3RkaXIpCisKK2Rpc3QteHo6IGRpc3RkaXIKKwl0YXJkaXI9JChkaXN0ZGlyKSAmJiAkKGFtX190YXIpIHwgeHogLWMgPiQoZGlzdGRpcikudGFyLnh6CisJJChhbV9fcmVtb3ZlX2Rpc3RkaXIpCisKK2Rpc3QtdGFyWjogZGlzdGRpcgorCXRhcmRpcj0kKGRpc3RkaXIpICYmICQoYW1fX3RhcikgfCBjb21wcmVzcyAtYyA+JChkaXN0ZGlyKS50YXIuWgorCSQoYW1fX3JlbW92ZV9kaXN0ZGlyKQorCitkaXN0LXNoYXI6IGRpc3RkaXIKKwlzaGFyICQoZGlzdGRpcikgfCBHWklQPSQoR1pJUF9FTlYpIGd6aXAgLWMgPiQoZGlzdGRpcikuc2hhci5negorCSQoYW1fX3JlbW92ZV9kaXN0ZGlyKQorCitkaXN0LXppcDogZGlzdGRpcgorCS1ybSAtZiAkKGRpc3RkaXIpLnppcAorCXppcCAtcnEgJChkaXN0ZGlyKS56aXAgJChkaXN0ZGlyKQorCSQoYW1fX3JlbW92ZV9kaXN0ZGlyKQorCitkaXN0IGRpc3QtYWxsOiBkaXN0ZGlyCisJdGFyZGlyPSQoZGlzdGRpcikgJiYgJChhbV9fdGFyKSB8IEdaSVA9JChHWklQX0VOVikgZ3ppcCAtYyA+JChkaXN0ZGlyKS50YXIuZ3oKKwkkKGFtX19yZW1vdmVfZGlzdGRpcikKKworIyBUaGlzIHRhcmdldCB1bnRhcnMgdGhlIGRpc3QgZmlsZSBhbmQgdHJpZXMgYSBWUEFUSCBjb25maWd1cmF0aW9uLiAgVGhlbgorIyBpdCBndWFyYW50ZWVzIHRoYXQgdGhlIGRpc3RyaWJ1dGlvbiBpcyBzZWxmLWNvbnRhaW5lZCBieSBtYWtpbmcgYW5vdGhlcgorIyB0YXJmaWxlLgorZGlzdGNoZWNrOiBkaXN0CisJY2FzZSAnJChESVNUX0FSQ0hJVkVTKScgaW4gXAorCSoudGFyLmd6KikgXAorCSAgR1pJUD0kKEdaSVBfRU5WKSBnemlwIC1kYyAkKGRpc3RkaXIpLnRhci5neiB8ICQoYW1fX3VudGFyKSA7O1wKKwkqLnRhci5iejIqKSBcCisJICBiemlwMiAtZGMgJChkaXN0ZGlyKS50YXIuYnoyIHwgJChhbV9fdW50YXIpIDs7XAorCSoudGFyLmx6bWEqKSBcCisJICBsem1hIC1kYyAkKGRpc3RkaXIpLnRhci5sem1hIHwgJChhbV9fdW50YXIpIDs7XAorCSoudGFyLnh6KikgXAorCSAgeHogLWRjICQoZGlzdGRpcikudGFyLnh6IHwgJChhbV9fdW50YXIpIDs7XAorCSoudGFyLloqKSBcCisJICB1bmNvbXByZXNzIC1jICQoZGlzdGRpcikudGFyLlogfCAkKGFtX191bnRhcikgOztcCisJKi5zaGFyLmd6KikgXAorCSAgR1pJUD0kKEdaSVBfRU5WKSBnemlwIC1kYyAkKGRpc3RkaXIpLnNoYXIuZ3ogfCB1bnNoYXIgOztcCisJKi56aXAqKSBcCisJICB1bnppcCAkKGRpc3RkaXIpLnppcCA7O1wKKwllc2FjCisJY2htb2QgLVIgYS13ICQoZGlzdGRpcik7IGNobW9kIGErdyAkKGRpc3RkaXIpCisJbWtkaXIgJChkaXN0ZGlyKS9fYnVpbGQKKwlta2RpciAkKGRpc3RkaXIpL19pbnN0CisJY2htb2QgYS13ICQoZGlzdGRpcikKKwl0ZXN0IC1kICQoZGlzdGRpcikvX2J1aWxkIHx8IGV4aXQgMDsgXAorCWRjX2luc3RhbGxfYmFzZT1gJChhbV9fY2QpICQoZGlzdGRpcikvX2luc3QgJiYgcHdkIHwgc2VkIC1lICdzLF5bXjpcXC9dOltcXC9dLC8sJ2AgXAorCSAgJiYgZGNfZGVzdGRpcj0iJCR7VE1QRElSLS90bXB9L2FtLWRjLSQkJCQvIiBcCisJICAmJiBhbV9fY3dkPWBwd2RgIFwKKwkgICYmICQoYW1fX2NkKSAkKGRpc3RkaXIpL19idWlsZCBcCisJICAmJiAuLi9jb25maWd1cmUgLS1zcmNkaXI9Li4gLS1wcmVmaXg9IiQkZGNfaW5zdGFsbF9iYXNlIiBcCisJICAgICQoRElTVENIRUNLX0NPTkZJR1VSRV9GTEFHUykgXAorCSAgJiYgJChNQUtFKSAkKEFNX01BS0VGTEFHUykgXAorCSAgJiYgJChNQUtFKSAkKEFNX01BS0VGTEFHUykgZHZpIFwKKwkgICYmICQoTUFLRSkgJChBTV9NQUtFRkxBR1MpIGNoZWNrIFwKKwkgICYmICQoTUFLRSkgJChBTV9NQUtFRkxBR1MpIGluc3RhbGwgXAorCSAgJiYgJChNQUtFKSAkKEFNX01BS0VGTEFHUykgaW5zdGFsbGNoZWNrIFwKKwkgICYmICQoTUFLRSkgJChBTV9NQUtFRkxBR1MpIHVuaW5zdGFsbCBcCisJICAmJiAkKE1BS0UpICQoQU1fTUFLRUZMQUdTKSBkaXN0dW5pbnN0YWxsY2hlY2tfZGlyPSIkJGRjX2luc3RhbGxfYmFzZSIgXAorCSAgICAgICAgZGlzdHVuaW5zdGFsbGNoZWNrIFwKKwkgICYmIGNobW9kIC1SIGEtdyAiJCRkY19pbnN0YWxsX2Jhc2UiIFwKKwkgICYmICh7IFwKKwkgICAgICAgKGNkIC4uLy4uICYmIHVtYXNrIDA3NyAmJiBta2RpciAiJCRkY19kZXN0ZGlyIikgXAorCSAgICAgICAmJiAkKE1BS0UpICQoQU1fTUFLRUZMQUdTKSBERVNURElSPSIkJGRjX2Rlc3RkaXIiIGluc3RhbGwgXAorCSAgICAgICAmJiAkKE1BS0UpICQoQU1fTUFLRUZMQUdTKSBERVNURElSPSIkJGRjX2Rlc3RkaXIiIHVuaW5zdGFsbCBcCisJICAgICAgICYmICQoTUFLRSkgJChBTV9NQUtFRkxBR1MpIERFU1RESVI9IiQkZGNfZGVzdGRpciIgXAorCSAgICAgICAgICAgIGRpc3R1bmluc3RhbGxjaGVja19kaXI9IiQkZGNfZGVzdGRpciIgZGlzdHVuaW5zdGFsbGNoZWNrOyBcCisJICAgICAgfSB8fCB7IHJtIC1yZiAiJCRkY19kZXN0ZGlyIjsgZXhpdCAxOyB9KSBcCisJICAmJiBybSAtcmYgIiQkZGNfZGVzdGRpciIgXAorCSAgJiYgJChNQUtFKSAkKEFNX01BS0VGTEFHUykgZGlzdCBcCisJICAmJiBybSAtcmYgJChESVNUX0FSQ0hJVkVTKSBcCisJICAmJiAkKE1BS0UpICQoQU1fTUFLRUZMQUdTKSBkaXN0Y2xlYW5jaGVjayBcCisJICAmJiBjZCAiJCRhbV9fY3dkIiBcCisJICB8fCBleGl0IDEKKwkkKGFtX19yZW1vdmVfZGlzdGRpcikKKwlAKGVjaG8gIiQoZGlzdGRpcikgYXJjaGl2ZXMgcmVhZHkgZm9yIGRpc3RyaWJ1dGlvbjogIjsgXAorCSAgbGlzdD0nJChESVNUX0FSQ0hJVkVTKSc7IGZvciBpIGluICQkbGlzdDsgZG8gZWNobyAkJGk7IGRvbmUpIHwgXAorCSAgc2VkIC1lIDFoIC1lIDFzLy4vPS9nIC1lIDFwIC1lIDF4IC1lICckJHAnIC1lICckJHgnCitkaXN0dW5pbnN0YWxsY2hlY2s6CisJQCQoYW1fX2NkKSAnJChkaXN0dW5pbnN0YWxsY2hlY2tfZGlyKScgXAorCSYmIHRlc3QgYCQoZGlzdHVuaW5zdGFsbGNoZWNrX2xpc3RmaWxlcykgfCB3YyAtbGAgLWxlIDEgXAorCSAgIHx8IHsgZWNobyAiRVJST1I6IGZpbGVzIGxlZnQgYWZ0ZXIgdW5pbnN0YWxsOiIgOyBcCisJICAgICAgICBpZiB0ZXN0IC1uICIkKERFU1RESVIpIjsgdGhlbiBcCisJICAgICAgICAgIGVjaG8gIiAgKGNoZWNrIERFU1RESVIgc3VwcG9ydCkiOyBcCisJICAgICAgICBmaSA7IFwKKwkgICAgICAgICQoZGlzdHVuaW5zdGFsbGNoZWNrX2xpc3RmaWxlcykgOyBcCisJICAgICAgICBleGl0IDE7IH0gPiYyCitkaXN0Y2xlYW5jaGVjazogZGlzdGNsZWFuCisJQGlmIHRlc3QgJyQoc3JjZGlyKScgPSAuIDsgdGhlbiBcCisJICBlY2hvICJFUlJPUjogZGlzdGNsZWFuY2hlY2sgY2FuIG9ubHkgcnVuIGZyb20gYSBWUEFUSCBidWlsZCIgOyBcCisJICBleGl0IDEgOyBcCisJZmkKKwlAdGVzdCBgJChkaXN0Y2xlYW5jaGVja19saXN0ZmlsZXMpIHwgd2MgLWxgIC1lcSAwIFwKKwkgIHx8IHsgZWNobyAiRVJST1I6IGZpbGVzIGxlZnQgaW4gYnVpbGQgZGlyZWN0b3J5IGFmdGVyIGRpc3RjbGVhbjoiIDsgXAorCSAgICAgICAkKGRpc3RjbGVhbmNoZWNrX2xpc3RmaWxlcykgOyBcCisJICAgICAgIGV4aXQgMTsgfSA+JjIKK2NoZWNrLWFtOiBhbGwtYW0KK2NoZWNrOiBjaGVjay1yZWN1cnNpdmUKK2FsbC1hbTogTWFrZWZpbGUgJChEQVRBKSBjb25maWcuaAoraW5zdGFsbGRpcnM6IGluc3RhbGxkaXJzLXJlY3Vyc2l2ZQoraW5zdGFsbGRpcnMtYW06CisJZm9yIGRpciBpbiAiJChERVNURElSKSQocGtnZGF0YWRpcikiOyBkbyBcCisJICB0ZXN0IC16ICIkJGRpciIgfHwgJChNS0RJUl9QKSAiJCRkaXIiOyBcCisJZG9uZQoraW5zdGFsbDogaW5zdGFsbC1yZWN1cnNpdmUKK2luc3RhbGwtZXhlYzogaW5zdGFsbC1leGVjLXJlY3Vyc2l2ZQoraW5zdGFsbC1kYXRhOiBpbnN0YWxsLWRhdGEtcmVjdXJzaXZlCit1bmluc3RhbGw6IHVuaW5zdGFsbC1yZWN1cnNpdmUKKworaW5zdGFsbC1hbTogYWxsLWFtCisJQCQoTUFLRSkgJChBTV9NQUtFRkxBR1MpIGluc3RhbGwtZXhlYy1hbSBpbnN0YWxsLWRhdGEtYW0KKworaW5zdGFsbGNoZWNrOiBpbnN0YWxsY2hlY2stcmVjdXJzaXZlCitpbnN0YWxsLXN0cmlwOgorCSQoTUFLRSkgJChBTV9NQUtFRkxBR1MpIElOU1RBTExfUFJPR1JBTT0iJChJTlNUQUxMX1NUUklQX1BST0dSQU0pIiBcCisJICBpbnN0YWxsX3NoX1BST0dSQU09IiQoSU5TVEFMTF9TVFJJUF9QUk9HUkFNKSIgSU5TVEFMTF9TVFJJUF9GTEFHPS1zIFwKKwkgIGB0ZXN0IC16ICckKFNUUklQKScgfHwgXAorCSAgICBlY2hvICJJTlNUQUxMX1BST0dSQU1fRU5WPVNUUklQUFJPRz0nJChTVFJJUCknImAgaW5zdGFsbAorbW9zdGx5Y2xlYW4tZ2VuZXJpYzoKKworY2xlYW4tZ2VuZXJpYzoKKworZGlzdGNsZWFuLWdlbmVyaWM6CisJLXRlc3QgLXogIiQoQ09ORklHX0NMRUFOX0ZJTEVTKSIgfHwgcm0gLWYgJChDT05GSUdfQ0xFQU5fRklMRVMpCisJLXRlc3QgLiA9ICIkKHNyY2RpcikiIHx8IHRlc3QgLXogIiQoQ09ORklHX0NMRUFOX1ZQQVRIX0ZJTEVTKSIgfHwgcm0gLWYgJChDT05GSUdfQ0xFQU5fVlBBVEhfRklMRVMpCisJLXRlc3QgLXogIiQoRElTVENMRUFORklMRVMpIiB8fCBybSAtZiAkKERJU1RDTEVBTkZJTEVTKQorCittYWludGFpbmVyLWNsZWFuLWdlbmVyaWM6CisJQGVjaG8gIlRoaXMgY29tbWFuZCBpcyBpbnRlbmRlZCBmb3IgbWFpbnRhaW5lcnMgdG8gdXNlIgorCUBlY2hvICJpdCBkZWxldGVzIGZpbGVzIHRoYXQgbWF5IHJlcXVpcmUgc3BlY2lhbCB0b29scyB0byByZWJ1aWxkLiIKK2NsZWFuOiBjbGVhbi1yZWN1cnNpdmUKKworY2xlYW4tYW06IGNsZWFuLWdlbmVyaWMgY2xlYW4tbG9jYWwgbW9zdGx5Y2xlYW4tYW0KKworZGlzdGNsZWFuOiBkaXN0Y2xlYW4tcmVjdXJzaXZlCisJLXJtIC1mICQoYW1fX0NPTkZJR19ESVNUQ0xFQU5fRklMRVMpCisJLXJtIC1mIE1ha2VmaWxlCitkaXN0Y2xlYW4tYW06IGNsZWFuLWFtIGRpc3RjbGVhbi1nZW5lcmljIGRpc3RjbGVhbi1oZHIgZGlzdGNsZWFuLXRhZ3MKKworZHZpOiBkdmktcmVjdXJzaXZlCisKK2R2aS1hbToKKworaHRtbDogaHRtbC1yZWN1cnNpdmUKKworaHRtbC1hbToKKworaW5mbzogaW5mby1yZWN1cnNpdmUKKworaW5mby1hbToKKworaW5zdGFsbC1kYXRhLWFtOiBpbnN0YWxsLWRpc3RfcGtnZGF0YURBVEEKKworaW5zdGFsbC1kdmk6IGluc3RhbGwtZHZpLXJlY3Vyc2l2ZQorCitpbnN0YWxsLWR2aS1hbToKKworaW5zdGFsbC1leGVjLWFtOgorCitpbnN0YWxsLWh0bWw6IGluc3RhbGwtaHRtbC1yZWN1cnNpdmUKKworaW5zdGFsbC1odG1sLWFtOgorCitpbnN0YWxsLWluZm86IGluc3RhbGwtaW5mby1yZWN1cnNpdmUKKworaW5zdGFsbC1pbmZvLWFtOgorCitpbnN0YWxsLW1hbjoKKworaW5zdGFsbC1wZGY6IGluc3RhbGwtcGRmLXJlY3Vyc2l2ZQorCitpbnN0YWxsLXBkZi1hbToKKworaW5zdGFsbC1wczogaW5zdGFsbC1wcy1yZWN1cnNpdmUKKworaW5zdGFsbC1wcy1hbToKKworaW5zdGFsbGNoZWNrLWFtOgorCittYWludGFpbmVyLWNsZWFuOiBtYWludGFpbmVyLWNsZWFuLXJlY3Vyc2l2ZQorCS1ybSAtZiAkKGFtX19DT05GSUdfRElTVENMRUFOX0ZJTEVTKQorCS1ybSAtcmYgJCh0b3Bfc3JjZGlyKS9hdXRvbTR0ZS5jYWNoZQorCS1ybSAtZiBNYWtlZmlsZQorbWFpbnRhaW5lci1jbGVhbi1hbTogZGlzdGNsZWFuLWFtIG1haW50YWluZXItY2xlYW4tZ2VuZXJpYworCittb3N0bHljbGVhbjogbW9zdGx5Y2xlYW4tcmVjdXJzaXZlCisKK21vc3RseWNsZWFuLWFtOiBtb3N0bHljbGVhbi1nZW5lcmljCisKK3BkZjogcGRmLXJlY3Vyc2l2ZQorCitwZGYtYW06CisKK3BzOiBwcy1yZWN1cnNpdmUKKworcHMtYW06CisKK3VuaW5zdGFsbC1hbTogdW5pbnN0YWxsLWRpc3RfcGtnZGF0YURBVEEKKworLk1BS0U6ICQoUkVDVVJTSVZFX0NMRUFOX1RBUkdFVFMpICQoUkVDVVJTSVZFX1RBUkdFVFMpIGFsbCBcCisJY3RhZ3MtcmVjdXJzaXZlIGluc3RhbGwtYW0gaW5zdGFsbC1zdHJpcCB0YWdzLXJlY3Vyc2l2ZQorCisuUEhPTlk6ICQoUkVDVVJTSVZFX0NMRUFOX1RBUkdFVFMpICQoUkVDVVJTSVZFX1RBUkdFVFMpIENUQUdTIEdUQUdTIFwKKwlhbGwgYWxsLWFtIGFtLS1yZWZyZXNoIGNoZWNrIGNoZWNrLWFtIGNsZWFuIGNsZWFuLWdlbmVyaWMgXAorCWNsZWFuLWxvY2FsIGN0YWdzIGN0YWdzLXJlY3Vyc2l2ZSBkaXN0IGRpc3QtYWxsIGRpc3QtYnppcDIgXAorCWRpc3QtZ3ppcCBkaXN0LWhvb2sgZGlzdC1sem1hIGRpc3Qtc2hhciBkaXN0LXRhclogZGlzdC14eiBcCisJZGlzdC16aXAgZGlzdGNoZWNrIGRpc3RjbGVhbiBkaXN0Y2xlYW4tZ2VuZXJpYyBkaXN0Y2xlYW4taGRyIFwKKwlkaXN0Y2xlYW4tdGFncyBkaXN0Y2xlYW5jaGVjayBkaXN0ZGlyIGRpc3R1bmluc3RhbGxjaGVjayBkdmkgXAorCWR2aS1hbSBodG1sIGh0bWwtYW0gaW5mbyBpbmZvLWFtIGluc3RhbGwgaW5zdGFsbC1hbSBcCisJaW5zdGFsbC1kYXRhIGluc3RhbGwtZGF0YS1hbSBpbnN0YWxsLWRpc3RfcGtnZGF0YURBVEEgXAorCWluc3RhbGwtZHZpIGluc3RhbGwtZHZpLWFtIGluc3RhbGwtZXhlYyBpbnN0YWxsLWV4ZWMtYW0gXAorCWluc3RhbGwtaHRtbCBpbnN0YWxsLWh0bWwtYW0gaW5zdGFsbC1pbmZvIGluc3RhbGwtaW5mby1hbSBcCisJaW5zdGFsbC1tYW4gaW5zdGFsbC1wZGYgaW5zdGFsbC1wZGYtYW0gaW5zdGFsbC1wcyBcCisJaW5zdGFsbC1wcy1hbSBpbnN0YWxsLXN0cmlwIGluc3RhbGxjaGVjayBpbnN0YWxsY2hlY2stYW0gXAorCWluc3RhbGxkaXJzIGluc3RhbGxkaXJzLWFtIG1haW50YWluZXItY2xlYW4gXAorCW1haW50YWluZXItY2xlYW4tZ2VuZXJpYyBtb3N0bHljbGVhbiBtb3N0bHljbGVhbi1nZW5lcmljIHBkZiBcCisJcGRmLWFtIHBzIHBzLWFtIHRhZ3MgdGFncy1yZWN1cnNpdmUgdW5pbnN0YWxsIHVuaW5zdGFsbC1hbSBcCisJdW5pbnN0YWxsLWRpc3RfcGtnZGF0YURBVEEKKworCisuUEhPTlk6IGRvYworCitkb2M6IGRvYy9Eb3h5ZmlsZQorCSQoRE9YWUdFTikgZG9jL0RveHlmaWxlCisKK2RvYy1jbGVhbjoKKwlybSAtcmYgZG9jL2h0bWwvCisKKyMgQ29kZSBjb3ZlcmFnZSBzdXBwb3J0CisKKy5QSE9OWTogY292ZXJhZ2UgY292ZXJhZ2UtY2xlYW4KKworQENPVkVSQUdFX0VOQUJMRURfVFJVRUBjb3ZlcmFnZTogYWxsCitAQ09WRVJBR0VfRU5BQkxFRF9UUlVFQAkkKFJNKSAtZiAqLmxjb3YKK0BDT1ZFUkFHRV9FTkFCTEVEX1RSVUVACWZpbmQgLW5hbWUgJyouZ2NkYScgLW8gLW5hbWUgJyouZ2NvdicgfCB4YXJncyAkKFJNKSAtZgorCitAQ09WRVJBR0VfRU5BQkxFRF9UUlVFQAkkKExDT1YpICQoTENPVl9DQVBUVVJFX09QVFMpIC1jIC1vIGRwa2dfYmFzZS5sY292IC1pCitAQ09WRVJBR0VfRU5BQkxFRF9UUlVFQAkkKE1BS0UpIC1DIGxpYi9kcGtnIGNoZWNrCitAQ09WRVJBR0VfRU5BQkxFRF9UUlVFQAkkKE1BS0UpIC1DIHNyYyBjaGVjaworQENPVkVSQUdFX0VOQUJMRURfVFJVRUAJJChNQUtFKSAtQyB1dGlscyBjaGVjaworQENPVkVSQUdFX0VOQUJMRURfVFJVRUAJJChMQ09WKSAkKExDT1ZfQ0FQVFVSRV9PUFRTKSAtYyAtbyBkcGtnX3Rlc3QubGNvdgorQENPVkVSQUdFX0VOQUJMRURfVFJVRUAJJChMQ09WKSAkKExDT1ZfT1BUUykgLWEgZHBrZ19iYXNlLmxjb3YgLWEgZHBrZ190ZXN0Lmxjb3YgXAorQENPVkVSQUdFX0VOQUJMRURfVFJVRUAJICAtbyBkcGtnX21lcmdlLmxjb3YKK0BDT1ZFUkFHRV9FTkFCTEVEX1RSVUVACSQoTENPVikgJChMQ09WX09QVFMpIC1yIGRwa2dfbWVyZ2UubGNvdiAnL3Vzci9pbmNsdWRlLyonIC1vIGRwa2cubGNvdgorQENPVkVSQUdFX0VOQUJMRURfVFJVRUAJJChMQ09WX0dFTkhUTUwpIC1xIC0tbGVnZW5kIC0tdGl0bGUgImRwa2cgQyBjb2RlIGNvdmVyYWdlIiBcCitAQ09WRVJBR0VfRU5BQkxFRF9UUlVFQAkgIC0taHRtbC1wcm9sb2cgJCh0b3Bfc3JjZGlyKS9kb2MvbGNvdi1wcm9sb2cgXAorQENPVkVSQUdFX0VOQUJMRURfVFJVRUAJICAtLWh0bWwtZXBpbG9nICQodG9wX3NyY2RpcikvZG9jL2xjb3YtZXBpbG9nIFwKK0BDT1ZFUkFHRV9FTkFCTEVEX1RSVUVACSAgLW8gZG9jL2NvdmVyYWdlIGRwa2cubGNvdgorCitAQ09WRVJBR0VfRU5BQkxFRF9UUlVFQAkkKE1BS0UpIC1DIHNjcmlwdHMgJEAKKworQENPVkVSQUdFX0VOQUJMRURfVFJVRUBjb3ZlcmFnZS1jbGVhbjoKK0BDT1ZFUkFHRV9FTkFCTEVEX1RSVUVACXJtIC1yZiBkb2MvY292ZXJhZ2UvCitAQ09WRVJBR0VfRU5BQkxFRF9UUlVFQAlmaW5kIC1uYW1lICcqLmdjbm8nIC1vIC1uYW1lICcqLmdjZGEnIC1vIFwKK0BDT1ZFUkFHRV9FTkFCTEVEX1RSVUVACSAgICAgLW5hbWUgJyouZ2NvdicgLW8gLW5hbWUgJyoubGNvdicgfCB4YXJncyBybSAtZgorQENPVkVSQUdFX0VOQUJMRURfRkFMU0VAY292ZXJhZ2U6CitAQ09WRVJBR0VfRU5BQkxFRF9GQUxTRUAJQGVjaG8gIk5lZWQgdG8gcmVjb25maWd1cmUgd2l0aCAtLWVuYWJsZS1jb3ZlcmFnZSIKKworQENPVkVSQUdFX0VOQUJMRURfRkFMU0VAY292ZXJhZ2UtY2xlYW46CisKKy5QSE9OWTogdXBkYXRlLXBvCisKK3VwZGF0ZS1wbzoKKwkkKE1BS0UpIC1DIHBvIHVwZGF0ZS1wbworCSQoTUFLRSkgLUMgc2NyaXB0cy9wbyB1cGRhdGUtcG8KKwkkKE1BS0UpIC1DIGRzZWxlY3QvcG8gdXBkYXRlLXBvCisJJChNQUtFKSAtQyBtYW4gdXBkYXRlLXBvCisKKy5QSE9OWTogQ2hhbmdlTG9nCisKK0NoYW5nZUxvZzoKKwlnaXQgbG9nIC1DIC0tc3RhdCAxLjE1LjAuLiA+JEAKKworIyBJZiB3ZSBjcmVhdGUgdGhlIGRpc3QgdGFyYmFsbCBmcm9tIHRoZSBnaXQgcmVwb3NpdG9yeSwgbWFrZSBzdXJlCisjIHRoYXQgd2UncmUgbm90IGZvcmdldHRpbmcgc29tZSBmaWxlcy4uLgorZGlzdC1ob29rOgorCWVjaG8gJChWRVJTSU9OKSA+JChkaXN0ZGlyKS8uZGlzdC12ZXJzaW9uCisJaWYgWyAtZSAuZ2l0IF07IHRoZW4gXAorCQlmb3IgZmlsZSBpbiBgZ2l0IGxzLWZpbGVzIHwgZ3JlcCAtdiAuZ2l0aWdub3JlYDsgZG8gXAorCQkJaWYgWyAhIC1lICIkKGRpc3RkaXIpLyQkZmlsZSIgXTsgdGhlbiBcCisJCQkJZWNobyAiJCRmaWxlIGlzIG1pc3NpbmcgaW4gJChkaXN0ZGlyKSIgPiYyIDsgXAorCQkJCWV4aXQgMSA7IFwKKwkJCWZpIDsgXAorCQlkb25lIDsgXAorCWZpCisKK2NsZWFuLWxvY2FsOiBkb2MtY2xlYW4gY292ZXJhZ2UtY2xlYW4KKworIyBUZWxsIHZlcnNpb25zIFszLjU5LDMuNjMpIG9mIEdOVSBtYWtlIHRvIG5vdCBleHBvcnQgYWxsIHZhcmlhYmxlcy4KKyMgT3RoZXJ3aXNlIGEgc3lzdGVtIGxpbWl0IChmb3IgU3lzViBhdCBsZWFzdCkgbWF5IGJlIGV4Y2VlZGVkLgorLk5PRVhQT1JUOgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9ORVdTIGIvZHBrZy0xLjE2LjEuMS9ORVdTCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmRlNzcwZTEKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL05FV1MKQEAgLTAsMCArMSBAQAorU2VlIGRlYmlhbi9jaGFuZ2Vsb2cgZm9yIG1ham9yIGNoYW5nZXMgYmV0d2VlbiBkcGtnIHJlbGVhc2VzLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9SRUFETUUgYi9kcGtnLTEuMTYuMS4xL1JFQURNRQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yMTk1NzA0Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9SRUFETUUKQEAgLTAsMCArMSwxMTIgQEAKK2Rwa2cgLSBEZWJpYW4ncyBwYWNrYWdlIG1haW50ZW5hbmNlIHN5c3RlbQorCitUaGUgcHJpbWFyeSBpbnRlcmZhY2UgZm9yIHRoZSBkcGtnIHN1aXRlIGlzIHRoZSDigJhkc2VsZWN04oCZIHByb2dyYW07CithIG1vcmUgbG93LWxldmVsIGFuZCBsZXNzIHVzZXItZnJpZW5kbHkgaW50ZXJmYWNlIGlzIGF2YWlsYWJsZSBpbgordGhlIGZvcm0gb2YgdGhlIOKAmGRwa2figJkgY29tbWFuZC4KKworCitSZWxlYXNlcworLS0tLS0tLS0KKworVGhlIGN1cnJlbnQgbGVnYWN5LCBzdGFibGUgYW5kIGRldmVsb3BtZW50IHJlbGVhc2VzIGNhbiBiZSBmb3VuZCBhdDoKKworICA8aHR0cDovL2Z0cC5kZWJpYW4ub3JnL2RlYmlhbi9wb29sL21haW4vZC9kcGtnLz4KKworRm9yIG9sZGVyIHJlbGVhc2VzIGNoZWNrOgorCisgIDxodHRwOi8vc25hcHNob3QuZGViaWFuLm9yZy9wYWNrYWdlL2Rwa2cvPgorCisKK01haWxpbmcgTGlzdAorLS0tLS0tLS0tLS0tCisKK1RoZSBzdWJzY3JpcHRpb24gaW50ZXJmYWNlIGFuZCB3ZWIgYXJjaGl2ZXMgY2FuIGJlIGZvdW5kIGF0OgorCisgIDxodHRwOi8vbGlzdHMuZGViaWFuLm9yZy9kZWJpYW4tZHBrZy8+CisKK1RoZSBtYWlsaW5nIGxpc3QgYWRkcmVzcyBpczoKKworICBkZWJpYW4tZHBrZ0BsaXN0cy5kZWJpYW4ub3JnCisKKworU291cmNlIFJlcG9zaXRvcnkKKy0tLS0tLS0tLS0tLS0tLS0tCisKKyAgPGh0dHA6Ly9hbm9uc2NtLmRlYmlhbi5vcmcvZ2l0d2ViLz9wPWRwa2cvZHBrZy5naXQ+CisgIDxnaXQ6Ly9hbm9uc2NtLmRlYmlhbi5vcmcvZHBrZy9kcGtnLmdpdD4KKworCitCdWlsZGluZyBmcm9tIGdpdCBzb3VyY2UKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCitUbyBwcmVwYXJlIHRoZSBzb3VyY2UgdHJlZSBiZWZvcmUgc3RhcnRpbmcgdGhlIGJ1aWxkIHByb2Nlc3MsIHNvbWUgc29mdHdhcmUKK25lZWRzIHRvIGJlIGluc3RhbGxlZCwgYWRkaXRpb25hbCBzb2Z0d2FyZSBtaWdodCBwcm92aWRlIG9wdGlvbmFsIGZlYXR1cmVzLgorCitUaGUgbWluaW11bSBzb2Z0d2FyZSByZXF1aXJlZCB0byBidWlsZCBkcGtnIGlzOgorCisgIEM4OSBjb21waWxlciB3aXRoIGZldyBDOTkgZXh0ZW5zaW9ucyAoc2VlIGRvYy9jb2Rpbmctc3R5bGUudHh0KQorICBHTlUgbWFrZQorICBHTlUgYXV0b2NvbmYgPj0gMi42MAorICBHTlUgYXV0b21ha2UgPj0gMS44CisgIEdOVSBnZXR0ZXh0ICA+PSAwLjE4CisgIHBrZy1jb25maWcKKyAgZmxleAorICBwZXJsCisKK1RvIHJ1biB0aGUgdGVzdCBzdWl0ZSAowqttYWtlIGNoZWNrwrspOgorCisgIFRpbWVEYXRlIHBlcmwgbW9kdWxlCisgIElPLVN0cmluZyBwZXJsIG1vZHVsZQorCitUbyBlbmFibGUgb3B0aW9uYWwgZnVuY3Rpb25hbGl0eSBvciBwcm9ncmFtcywgdGhpcyBzb2Z0d2FyZSBtaWdodCBiZSBuZWVkZWQ6CisKKyAgemxpYiAodXNlZCBpbnN0ZWFkIG9mIHRoZSBjb21tYW5kLWxpbmUgdG9vbCkKKyAgbGlibHptYSAoZnJvbSB0aGUgeHogcHJvamVjdDsgdXNlZCBpbnN0ZWFkIG9mIHRoZSBjb21tYW5kLWxpbmUgdG9vbCkKKyAgbGliYnppcDIgKGZyb20gdGhlIGJ6aXAyIHByb2plY3Q7IHVzZWQgaW5zdGVhZCBvZiB0aGUgY29tbWFuZC1saW5lIHRvb2wpCisgIGxpYnNlbGludXggKG5lZWRlZCBmb3IgU0VMaW51eCBzdXBwb3J0KQorICBjdXJzZXMgY29tcGF0aWJsZSBsaWJyYXJ5IChuZWVkZWQgZm9yIGRzZWxlY3QpCisKK1RvIGVuYWJsZSB0cmFuc2xhdGVkIG9yIGFkZGl0aW9uYWwgKMKrbWFrZSBkb2PCuykgZG9jdW1lbnRhdGlvbiB0aGlzCitzb2Z0d2FyZSB3aWxsIGJlIG5lZWRlZDoKKworICBwbzRhID49IDAuMzYuNAorICBwb2QybWFuCisgIGRveHlnZW4KKyAgZG90CisKK1RvIGVuYWJsZSBjb2RlIGNvdmVyYWdlICjCqy4vY29uZmlndXJlIC0tZW5hYmxlLWNvdmVyYWdlOyBtYWtlIGNvdmVyYWdlwrspCit0aGlzIHNvZnR3YXJlIGlzIG5lZWRlZDoKKworICBsY292IChmcm9tIHRoZSBMaW51eCBUZXN0IFByb2plY3QpCisgIERldmVsLUNvdmVyIHBlcmwgbW9kdWxlCisKKworQWZ0ZXIgaW5zdGFsbGluZyB0aGUgbmVlZGVkIHNvZnR3YXJlLCBhbmQgcnVubmluZyB0aGUgZm9sbG93aW5nIGNvbW1hbmQgb24KK3RoZSBnaXQgdHJlZToKKworICAkIGF1dG9yZWNvbmYgLWYgLWkKKwordGhlIHNvdXJjZSBzaG91bGQgYmUgZXF1aXZhbGVudCB0byB0aGUgZGlzdHJpYnV0ZWQgdGFyIHNvdXJjZS4KKworCitCdWlsZGluZyBmcm9tIHRhciBzb3VyY2UKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCitUaGUgaW5zdHJ1Y3Rpb25zIHRvIGJ1aWxkIHRoZSBkaXN0cmlidXRlZCBzb3VyY2UgYXJlIGluY2x1ZGVkIGluIHRoZQorSU5TVEFMTCBmaWxlLgorCitUaGUgZm9sbG93aW5nIGNvbmZpZ3VyZSBvcHRpb25zIG1pZ2h0IGJlIG9mIGludGVyZXN0IHRvIGRpc2FibGUgc3BlY2lmaWMKK3Byb2dyYW1zOgorCisgIC0td2l0aG91dC1kc2VsZWN0CisgIC0td2l0aG91dC1zdGFydC1zdG9wLWRhZW1vbgorICAtLXdpdGhvdXQtdXBkYXRlLWFsdGVybmF0aXZlcworICAtLXdpdGhvdXQtaW5zdGFsbC1pbmZvCisKK0FuZCB0aGUgZm9sbG93aW5nIHRvIGRpc2FibGUgbW9kaWZpY2F0aW9ucyB0byB0aGUgYnVpbGQgZmxhZ3M6CisKKyAgLS1kaXNhYmxlLWNvbXBpbGVyLXdhcm5pbmdzCisgIC0tZGlzYWJsZS1jb21waWxlci1vcHRpbWlzYXRpb25zCisgIC0tZGlzYWJsZS1saW5rZXItb3B0aW1pc2F0aW9ucworCitUbyBzZWUgYWxsIGF2YWlsYWJsZSBjb25maWd1cmF0aW9uIG9wdGlvbnMgcGxlYXNlIHJ1biDCqy4vY29uZmlndXJlIC0taGVscMK7LgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9SRUFETUUudHJhbnNsYXRvcnMgYi9kcGtnLTEuMTYuMS4xL1JFQURNRS50cmFuc2xhdG9ycwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xNGVlZDAxCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9SRUFETUUudHJhbnNsYXRvcnMKQEAgLTAsMCArMSw3OCBAQAorVHJhbnNsYXRvcnMsIHdoZW4gYWRkaW5nL3VwZGF0aW5nIHlvdXIgdHJhbnNsYXRpb24gZmlsZXMsIHBsZWFzZSBmb2xsb3cKK3RoZSBmb2xsb3dpbmcgcnVsZXM6CisKKyogVXBkYXRlIGRlYmlhbi9jaGFuZ2Vsb2c6CisKKyAgLSBCZXdhcmUgdGhlIHlvdSBzaG91bGQgTk9UIHVwZGF0ZSBhbnkgb2YgdGhlIGxlZ2FjeSBDaGFuZ2VMb2cub2xkCisgICAgZmlsZXMgZm9yIHRyYW5zbGF0aW9uIHVwZGF0ZXMuCisKKyogRm9ybWF0IG9mIGVudHJpZXMgaW4gZGViaWFuL2NoYW5nZWxvZzoKKworICBUcmFuc2xhdGlvbiB1cGRhdGVzIHNob3VsZCBnbyBpbiBhIGRlZGljYXRlZCAiWyBVcGRhdGVkIFRyYW5zbGF0aW9ucyBdIgorICBzZWN0aW9uOgorCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CitkcGtnICgxLjEzLjE1KSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAuLi4vLi4uCisKKyAgWyBVcGRhdGVkIFRyYW5zbGF0aW9ucyBdCisgICogQ2F0YWxhbiAoSm9yZGkgTWFsbGFjaCkuCisgICogUG9ydHVndWVzZSAoTWlndWVsIEZpZ3VlaXJlZG8pLgorICAqIFN3ZWRpc2ggKERhbmllbCBOeWxhbmRlcikuCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisKKyAgTmV3IHRyYW5zbGF0aW9ucyBzaG91bGQgZ28gaW4gYSBkZWRpY2F0ZWQgc2VjdGlvbiBuYW1lZAorICAiWyBOZXcgVHJhbnNsYXRpb25zIF0iOgorCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CitkcGtnICgxLjEzLjE1KSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAuLi4vLi4uCisKKyAgWyBOZXcgVHJhbnNsYXRpb25zIF0KKyAgKiBWb2dvbiAoRG91Z2xhcyBBZGFtcykuCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisKKyAgVGhpcyBmaWxlIGNvbnRlbnRzIE1VU1QgYmUgZW5jb2RlZCBpbiBVVEYtOCwgYW5kIHRoZSBlbnRyaWVzIGluc2VydGVkCisgIGluIGxhbmd1YWdlIGFscGhhYmV0aWNhbCBvcmRlci4KKworKiBGb3JtYXQgb2YgY29tbWl0IG1lc3NhZ2UKKworICBUaGUgZm9ybWF0cyBhYm92ZSBvbmx5IGFwcGx5IHRvIHRoZSBkZWJpYW4vY2hhbmdlbG9nIGZpbGUuCisgIFRoZXkgZG8gbm90IGFwcGx5IHRvIHRoZSBjb21taXQgbWVzc2FnZS4gRm9sbG93aW5nIHJlY29tbWVuZGF0aW9ucworICBvZiBodHRwOi8vd2lraS5kZWJpYW4ub3JnL1RlYW1zL0Rwa2cvR2l0VXNhZ2UgeW91IHNob3VsZCBzdGFydCB0aGUKKyAgY29tbWl0IG1lc3NhZ2Ugd2l0aCBhIHN1bW1hcnkgbGluZSwgZm9sbG93ZWQgYnkgYW4gZW1wdHkgbGluZSBhbmQgYQorICBhIGRldGFpbGVkL2xvbmcgZGVzY3JpcHRpb24uIEZvciBleGFtcGxlOgorCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CitVcGRhdGUgZ2VybWFuIHRyYW5zbGF0aW9uIG9mIG1hbnVhbCBwYWdlcworCitVcGRhdGUgdG8gMTM1NHQuCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisKKyAgTm90ZSB0aGF0IHRoZSB1cGRhdGUgc2hvdWxkIG1lbnRpb24gdGhlIGZpbGUgc3RhdGlzdGljcyBhcyBYWFh0WVlZZlpaWnUuCisKKyAgIlhYWHQiIG1lYW5zICJYWFggdHJhbnNsYXRlZCBzdHJpbmdzIi4KKyAgIllZWWYiIG1lYW5zICJZWVkgZnV6enkgc3RyaW5ncyBzdHJpbmdzIi4KKyAgIlpaWnUiIG1lYW5zICJaWlogdW50cmFuc2xhdGVkIHN0cmluZ3MiLgorICBZWVkgb3IgWlpaIG1heSBiZSBvbWl0dGVkIGlmIHRoZXkgYXJlIG51bGwuCisKKyogVXNlIG9mIHBvL0xJTkdVQVMsIGRzZWxlY3QvcG8vTElOR1VBUyBvciBzY3JpcHRzL3BvL0xJTkdVQVM6CisKKyAgV2hlbiBBRERJTkcgYSBuZXcgdHJhbnNsYXRpb24sIGRvbid0IGZvcmdldCBhZGRpbmcgdGhlIGxhbmd1YWdlIHRvCisgIHRoZSBMSU5HVUFTIGZpbGUsIG90aGVyd2lzZSBpdCB3aWxsIG5vdCBiZSB1c2VkLgorCisqIEFsd2F5cyBDSEVDSyB5b3VyIHRyYW5zbGF0aW9uczoKKworICBZb3UgTVVTVCBjaGVjayB5b3VyIFBPIGZpbGVzIGZvciB2YWxpZGl0eS4KKworICBUaGUgY29ycmVjdCBzeW50YXggZm9yIGRvaW5nIHNvIGlzOgorCisgICQgbXNnbWVyZ2UgLVUgPGZpbGU+IGRwa2cucG90CisgICQgbXNnZm10IC1jIC1vIC9kZXYvbnVsbCAtLXN0YXRpc3RpY3MgPGZpbGU+CisgICQgbXNnY2F0IDxmaWxlPiA+L2Rldi9udWxsCisKKyAgLSBtc2dtZXJnZSB1cGRhdGVzIHlvdXIgZmlsZSB3aXRoIHRoZSBjdXJyZW50IFBPVCBmaWxlLgorICAtIG1zZ2ZtdCBjaGVja3MgaXQgZm9yIHZhbGlkaXR5LgorICAtIG1zZ2NhdCBtYXkgZGV0ZWN0IGVuY29kaW5nIHByb2JsZW1zLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9USEFOS1MgYi9kcGtnLTEuMTYuMS4xL1RIQU5LUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mMjFmYWU4Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9USEFOS1MKQEAgLTAsMCArMSwxNzggQEAKK0EgQ29zdGEgPGFnY29zdGFAZ2lzLm5ldD4KK0Fhcm9uIE0uIFVja28gPHVja29AZGViaWFuLm9yZz4KK0FkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorQWRlb2RhdG8gU2ltw7MgPGFkZW9kYXRvQGRlYmlhbi5vcmc+CitBbGJlcnRvIEdhcmNpYSA8YmVydG9AZ3B1bC5vcmc+CitBbmFuZCBLdW1yaWEgPHdpbGRmaXJlQHByb2dzb2Mub3JnPgorQW5kcmVhcyBCYXJ0aCA8YWJhQG5vdC5zby5hcmdoLm9yZz4KK0FuZHJlYXMgTWV0emxlciA8YW1ldHpsZXJAZGViaWFuLm9yZz4KK0FuZHJlYXMgUMOlaGxzc29uIDxhbmRyZWFzLnBhaGxzc29uQHhjZXJpb24uY29tPgorQW5kcmV3IEZlcnJpZXIgPGFuZHJld0BuZXctZGVzdGlueS5jby51az4KK0FuZHJldyBIb2Jzb24gPGFob2Jzb25AZW5nLm1pbmRzcHJpbmcubmV0PgorQW5kcmV3IFN1ZmZpZWxkIDxhc3VmZmllbGRAZGViaWFuLm9yZz4KK0FudGhvbnkgVG93bnMgPGFqQGF6dXJlLmh1bWJ1Zy5vcmcuYXU+CitBdXJlbGllbiBKYXJubyA8YXVyZWwzMkBkZWJpYW4ub3JnPgorQmFydCBDb3JuZWxpcyA8Y29iYWNvQHNrb2xlbGludXgubm8+CitCYXJ0IE1hcnRlbnMgPGJhcnQubWFydGVuc0BhZHZhbHZhcy5iZT4KK0Jhc3RpYW4gS2xlaW5laWRhbSA8Y2FsdmluQGRlYmlhbi5vcmc+CitCZW4gQ29sbGlucyA8YmNvbGxpbnNAZGViaWFuLm9yZz4KK0JlbiBQZmFmZiA8YmxwQGNzLnN0YW5mb3JkLmVkdT4KK0JpbGwgQWxsb21iZXJ0IDxiYWxsb21iZUBkZWJpYW4ub3JnPgorQnJhbmRlbiBSb2JpbnNvbiA8YnJhbmRlbkBkZWJpYW4ub3JnPgorQnJhbmtvIExhbmtlc3RlcgorQnJpYW4gTS4gQ2FybHNvbiA8c2FuZGFsc0BjcnVzdHl0b290aHBhc3RlLmF0aC5jeD4KK0JydWNlIFBlcmVucyA8YnJ1Y2VAcGl4YXIuY29tPgorQnJ1Y2UgU2FzcyA8Ym1zYXNzQHNoYXcuY2E+CitDYXJsIFN0cmVldGVyIDxzdHJlZXRlckBjYWUud2lzYy5lZHU+CitDYXJsb3MgTGF2aW9sYSA8Y2xhdmlvbGFAYnJmcmVlLmNvbS5icj4KK0NhcmxvcyBaLkYuIExpdSA8Y2FybG9zbGl1QHVzZXJzLnNvdXJjZWZvcmdlLm5ldD4KK0NoYW5nd29vIFJ5dSA8Y3dyeXVAZGViaWFuLm9yZz4KK0NoYXJsZXMgQnJpc2NvZS1TbWl0aCA8Y3Bic0BkZWJpYW4ub3JnPgorQ2hyaXN0aWFuIEhhZ2dzdHJvbSA8Y2htQGMwMC5pbmZvPgorQ2hyaXN0b3BoIE1hc2VyIDxjbUBmaW5hbmNpYWwuY29tPgorQ2hyaXN0b3BoZSBMZSBCYXJzIDxjbGViYXJzQHRlYXNlci5mcj4KK0NsYXVzIEhpbmRzZ2F1bCA8Y2xhdXMuaGluZHNnYXVsQGdtYWlsLmNvbT4KK0NseXRpZSBTaWRkYWxsIDxjbHl0aWVAcml2ZXJsYW5kLm5ldC5hdT4KK0NvbGluIFBsdW1iIDxjb2xpbkBueXgubmV0PgorQ29saW4gV2F0c29uIDxjandhdHNvbkBkZWJpYW4ub3JnPgorRGFmeWRkIEhhcnJpZXMgPGRhZkBtdXNlLjE5aW5jaC5uZXQ+CitEYW4gR29obWFuIDxnb2htYW5kakBtcnMudW1uLmVkdT4KK0RhbmllbCBIYWhsZXIgPGRlYmlhbi1idWdzQHRoZXF1b2QuZGU+CitEYW5pZWwgSmFjb2Jvd2l0eiA8ZGFuQGRlYmlhbi5vcmc+CitEYW5pZWwgTGVpZGVydCA8ZGFuaWVsLmxlaWRlcnRAd2dkZC5kZT4KK0RhbmllbCBOeWxhbmRlciA8eWVhZ2VyQGxpZGtvcGluZy5uZXQ+CitEYXJyZW4gU3RhbGRlciA8dG9yaW5AZGFmdC5jb20+CitEYXZpZCBIdWdnaW5zLURhaW5lcyA8ZGhkQGRlYmlhbi5vcmc+CitEYXZpZCBMb3BleiBNb3Jlbm8gPGRhdmlkLmxvcGV6Lm1vcmVub0BoaXNwYWxpbnV4LmVzPgorRGVuaXMgQmFyYmllciA8YmFyYmllckBkZWJpYW4ub3JnPgorRG9uIEFybXN0cm9uZyA8ZG9uQGRlYmlhbi5vcmc+CitFZGR5IFBldHJpyJlvciA8ZWRkeS5wZXRyaXNvckBnbWFpbC5jb20+CitFcmFzdCBCZW5zb24gPGVyYXN0QGdudXNvbGFyaXMub3JnPgorRXJpY2sgQnJhbmRlcmhvcnN0IDxicmFuZGVyaG9yc3RAaGVlbC5mZ2cuZXVyLm5sPgorRmxhdmlvIFN0YW5jaGluYSA8ZmxhdmlvQHN0YW5jaGluYS5uZXQ+CitGcmFuayBTLiBUaG9tYXMgPGZyYW5rQHRob21hcy1hbGZlbGQuZGU+CitGcsOpZMOpcmljIEJvdGhhbXkgPGZyZWRlcmljLmJvdGhhbXlAZnJlZS5mcj4KK0dhbGVuIEhhemVsd29vZCA8Z2FsZW5oQGRlYmlhbi5vcmc+CitHb3N3aW4gQnJlZGVybG93IDxicmVkZXJsb0BpbmZvcm1hdGlrLnVuaS10dWViaW5nZW4uZGU+CitHdXkgTWFvciA8bWFvckBkZWJpYW4ub3JnPgorSGFucyBGcmVkcmlrIE5vcmRoYXVnIDxoYW5zQG5vcmRoYXVnLnByaXYubm8+CitIYXJ0bXV0IEtvcHRlaW4gPGtvcHRlaW5AbmFmZmVsLmRlPgorSGVpa28gU2NobGl0dGVybWFubiA8aGVpa29AbG90dGUuc2F4LmRlPgorSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitIaXJvc2hpIEtJU0UgPGZ1eXVuZWtvQHJ5dWt5dS5uZS5qcD4KK0hvbGdlciBXYW5zaW5nIDxsaW51eEB3YW5zaW5nLW9ubGluZS5kZT4KK0lhbiBFdXJlIDxpZXVyZUBkZWJpYW4ub3JnPgorSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuZ3JlZW5lbmQub3JnLnVrPgorSWFuIE11cmRvY2sgPGltdXJkb2NrQGRlYmlhbi5vcmc+CitJYW4gWmltbWVybWFuIDxpdHpAYnV1Zy5vcmc+CitJbmdvIFNhaXR6IDxpbmdvQGRlYmlhbi5vcmc+CitJdmFyIFNtb2xpbiA8b2t1bEBsaW51eC5lZT4KK0l2byBUaW1tZXJtYW5zIDxpdGltbWVybWFuc0BiaWdmb290LmNvbT4KK0ouSC5NLiBEYXNzZW4gPGpkYXNzZW5AY2lzdHJvbi5ubD4KK0phY29ibyBUYXJyaW8gPGp0YXJyaW9AZGViaWFuLm9yZz4KK0phbWVzIFIuIFZhbiBaYW5kdCA8anJ2ekBjb21jYXN0Lm5ldD4KK0phbWVzIFRyb3VwIDx0cm91cEBkZWJpYW4ub3JnPgorSmFtZXMgVmVnYSA8amFtZXNzYW5AZGViaWFuLm9yZz4KK0phcmVkIFNwaWVnZWwgPGpycnNAZnJvbnRpZXJuZXQubmV0PgorSmFyaSBBYWx0byA8amFyaS5hYWx0b0BjYW50ZS5uZXQ+CitKYXZpZXIgRmVybsOhbmRlei1TYW5ndWlubyBQZcOxYSA8amZzQGRlYmlhbi5vcmc+CitKZWZmcmV5IFcuIEJha2VyIDxqd2Jha2VyQGFjbS5vcmc+CitKZXJvZW4gdmFuIFdvbGZmZWxhYXIgPGplcm9lbkB3b2xmZmVsYWFyLm5sPgorSmltIFBpY2sgPGppbUBqaW1waWNrLmNvbT4KK0ppbSBWYW4gWmFuZHQgPGpydkB2YW56YW5kdC5tdi5jb20+CitKacWZw60gUGFsZcSNZWsgPGpwYWxlY2VrQHdlYi5kZT4KK0pvYWNoaW0gQnJlaXRuZXIgPG1haWxAam9hY2hpbS1icmVpdG5lci5kZT4KK0pvZWwgS2xlY2tlciA8amtAZXNweS5vcmc+CitKb2V5IEhlc3MgPGpvZXloQGRlYmlhbi5vcmc+CitKb2hhbm5lcyBWZXNlciA8dmVzZXJAZ214LmRlPgorSm9obiBXcmlnaHQgPGpzd0BkZWJpYW4ub3JnPgorSm9obiBaYWl0c2VmZiA8Si5aYWl0c2VmZkB6YXAub3JnLmF1PgorSm9uYXRoYW4gTmllZGVyIDxqcm5pZWRlckBnbWFpbC5jb20+CitKb3JkaSBNYWxsYWNoIDxqb3JkaUBkZWJpYW4ub3JnPgorSm9zaXAgUm9kaW4gPGpyb2RpbkBqYWdvci5zcmNlLmhyPgorSnVhbiBDZXNwZWRlcyA8Y2VzcGVkZXNAZGViaWFuLm9yZz4KK0p1ZXJnZW4gTWVuZGVuIDxtZW5kZW5AbW9yZ2FuYS5jYW1lbG90LmRlPgorSnVobyBWdW9yaSA8amF2dW9yaUBjYy5oZWxzaW5raS5maT4KK0p1bGlhbiBHaWxiZXkgPGpkZ0BkZWJpYW4ub3JnPgorSnVsaWVuIENyaXN0YXUgPGpjcmlzdGF1QGRlYmlhbi5vcmc+CitKdW5pY2hpIFVla2F3YSA8ZGFuY2VyQGRlYmlhbi5vcmc+CitKdXN0aW4gUHJ5emJ5IDxqdXN0aW5wcnl6YnlAdXNlcnMuc291cmNlZm9yZ2UubmV0PgorS2VuIEJsb29tIDxrYmxvb21AZ21haWwuY29tPgorS2Vuc2hpIE11dG8gPGttdXRvQGRlYmlhbi5vcmc+CitLZXZpbiBSeWRlIDx1c2VyNDJAemlwLmNvbS5hdT4KK0tpbS1NaW5oIEthcGxhbiA8a2thcGxhbkBjZGZocDMuaW4ycDMuZnI+CitLbGVlIERpZW5lcyA8a2xlZUBkZWJpYW4ub3JnPgorS29ibGluZ2VyIEVnbW9udCA8ZWdtb250QHVodWxpbnV4Lmh1PgorS3VydCBCLiBLYWlzZXIgPGtia0BzaG9yZS5uZXQ+CitLeWxhbiBSb2JpbnNvbiA8S3lsYW5fUm9iaW5zb25Ac2VsaW5jLmNvbT4KK0xlbGUgR2FpZmF4IDxsZWxlQHNlbGRhdGkuaXQ+CitMZW5uZXJ0IEJ1eXRlbmhlayA8YnV5dGVuaCtkZWJpYW5Ad2FudHN0b2ZseS5vcmc+CitMdWRvdmljIFJvdXNzZWF1IDxyb3Vzc2VhdUBkZWJpYW4ub3JnPgorTWFub2ogU3JpdmFzdGF2YSA8c3JpdmFzdGFAZGViaWFuLm9yZz4KK01hcmMgRGVxdcOobmVzIDxkdWNrQGR1Y2tjb3JwLm9yZz4KK01hcmMgSGFiZXIgPG1oK2RlYmlhbi1wYWNrYWdlc0B6dWdzY2hsdXMuZGU+CitNYXJjZWwgVG9lbGUgPG10b2VsZUBrZXJuLm5sPgorTWFyY28gZCdJdHJpIDxtZEBsaW51eC5pdD4KK01hcmN1cyBCcmlua21hbm4gPGJyaW5rbWRAZGViaWFuLm9yZz4gCitNYXJrIFJvc2Vuc3RhbmQgPG1hcmtAYm9ya3dhcmUubmV0PgorTWFydGluIEtvZXBwZSA8bWtvZXBwZUBnbXguZGU+CitNYXNhdG8gVGFydWlzaGkgPHRhcnVAZGViaWFuLm9yLmpwPgorTWF0aGlhcyBXZWlkbmVyIDxtYXRoaWFzQHdlaWRuZXIuaW4tYmFkLXNjaG1pZWRlYmVyZy5kZT4KK01hdHQgS3JhYWkgPGtyYWFpQGZ0YmZzLm9yZz4KK01hdHQgV2Vsc2ggPG1kd0BzdW5zaXRlLnVuYy5lZHU+CitNYXR0IFppbW1lcm1hbiA8bWR6QGRlYmlhbi5vcmc+CitNYXhpbWlsaWFuIEF0dGVtcyA8ZGViaWFuQHN0ZXJud2VsdGVuLmF0PgorTWljaGFlbCBBbGFuIERvcm1hbiA8bWRvcm1hbkBjYWxkZXIubWVkLm1pYW1pLmVkdT4KK01pY2hhZWwgU2hpZWxkcyA8c2hpZWxkc0Bjcm9zc2xpbmsubmV0PgorTWljaGFlbCBTb2JvbGV2IDxtc3NAdHJhbnNhcy5jb20+CitNaWNoYWVsIFZvZ3QgPG12b0B1YnVudHUuY29tPgorTWljaGVsIExlc3BpbmFzc2UgPHdhbGtlbkB6b3kub3JnPgorTWlndWVsIEZpZ3VlaXJlZG8gPGVsbWlnQGRlYmlhbnB0Lm9yZz4KK01pcXVlbCB2YW4gU21vb3JlbmJ1cmcgPG1pcXVlbHNAY2lzdHJvbi5ubD4KK01pcm9zbGF2IEt1cmUgPGt1cmVtQGRlYmlhbi5jej4KK01vZGVzdGFzIFZhaW5pdXMgPG1vZGF4QGRlYmlhbi5vcmc+CitNb3JpdHogTXVlaGxlbmhvZmYgPGptbUBpbnV0aWwub3JnPgorTklJQkUgWXV0YWthIDxnbmlpYmVAZnNpai5vcmc+CitOaWNvbGFzIEJvbmlmYXMKK05pY29sYXMgRnJhbsOnb2lzIDxuaWNvbGFzLmZyYW5jb2lzQGNlbnRyYWxpZW5zLm5ldD4KK05pY29sw6FzIExpY2h0bWFpZXIgPG5pY2tAZGViaWFuLm9yZz4KK05pbHMgUmVubmViYXJ0aCA8bmlsc0BkZWJpYW4ub3JnPgorUGV0ZXIgS3JlZnRpbmcgPHBldGVya0BkZWJpYW4ub3JnPgorUGV0ZXIgTWFubiA8UGV0ZXIuTWFubkB0dWtlLnNrPgorUGV0ZXIgdmFuIERpamsgPHBldGVyQGRhdGFsb3NzLm5sPgorUGV0ciBDZWNoIDxjZWNoQGF0cmV5Lmthcmxpbi5tZmYuY3VuaS5jej4KK1BoaWxpcHBlIEJhdGFpbGxlciA8cGJhdGFpbGxlckB0ZWFzZXIuZnI+CitQaWVycmUgSGFib3V6aXQgPG1hZGNvZGVyQGRlYmlhbi5vcmc+CitQaW90ciBFbmdlbGtpbmcgPGlua2VybWFuNDJAZ21haWwuY29tPgorUGlvdHIgUm9zemF0eWNraSA8ZGV4dGVyQGZuZXQucGw+CitSYWtlc2ggJ2Fya3knIEFtYmF0aSA8cmFrZXNoX2FtYmF0aUB5YWhvby5jb20+CitSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitSaWNoYXJkIEtldHRsZXdlbGwgPHJqa0BzZmVyZS5ncmVlbmVuZC5vcmcudWs+CitSaWt1IFZvaXBpbyA8cmlrdS52b2lwaW9AaWtpLmZpPgorUm9iZXJ0IEx1YmVyZGEgPHJvYmVydEBkZWJpYW4ub3JnPgorUm9iZXJ0IE1pbGxhbiA8cm1oQGRlYmlhbi5vcmc+CitSb2RlcmljayBTY2hlcnRsZXIgPHJvZGVyaWNrQGFyZ29uLm9yZz4KK1JvbWFuIEhvZGVrIDxSb21hbi5Ib2Rla0BpbmZvcm1hdGlrLnVuaS1lcmxhbmdlbi5kZT4KK1J1c3NlbGwgQ29rZXIgPHJ1c3NlbGxAY29rZXIuY29tLmF1PgorU1pFUlbDgUMgQXR0aWxhIDxzYXNAMzIxLmh1PgorU2FtdWVsIFRoaWJhdWx0IDxzYW11ZWwudGhpYmF1bHRAZW5zLWx5b24ub3JnPgorU2NvdHQgQmFya2VyIDxzY290dEBtb3N0bHlsaW51eC5hYi5jYT4KK1Njb3R0IEphbWVzIFJlbW5hbnQgPHNjb3R0QG5ldHNwbGl0LmNvbT4KK1NlYW4gRmlubmV5IDxzZWFuaXVzQHNlYW5pdXMubmV0PgorU2VyZ2lvIEdlbGF0byA8U2VyZ2lvLkdlbGF0b0Bhc3Ryby5zdS5zZT4KK1N0ZWZhbm8gQ2FuZXBhIDxzY0BsaW51eC5pdD4KK1N0ZXBhbiBHb2xvc3Vub3YgPHN0ZXBhbkBnb2xvc3Vub3YucHAucnU+CitTdGVwaGFuZSBCb3J0em1leWVyIDxzdGVwaGFuZUBzb3VyY2VzLm9yZz4KK1N0ZXZlIExhbmdhc2VrIDx2b3Jsb25AZGViaWFuLm9yZz4KK1N2ZW4gSm9hY2hpbSA8c3ZlbmpvYWNAZ214LmRlPgorU3ZlbiBSdWRvbHBoIDxzcjFAbG9vbS5zYXguZGU+CitUaG9tYXMgTW9yaW4gPHRob21hcy5tb3JpbkBlbnN0LWJyZXRhZ25lLmZyPgorVGltb3RoeSBHIEFiYm90dCA8dGFiYm90dEBNSVQuRURVPgorVG9tIExlZXMgPHRvbUBscHNnLmRlbW9uLmNvLnVrPgorVG9tYXMgUG9zcGlzZWsgPHRwb19kZWJAc291cmNlcG9sZS5jaD4KK1RvcGkgTWlldHRpbmVuIDxUb3BpLk1pZXR0aW5lbkBuaWMuZmk+CitWYXNpbGlzIFZhc2FpdGlzIDx2LnZhc2FpdGlzQHNtcy5lZC5hYy51az4KK1dheW5lIERhdmlzb24gPHdheW5lZEB1c2Vycy5zb3VyY2Vmb3JnZS5uZXQ+CitXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorWXVyaSBLb3psb3YgPGtvemxvdi55QGdtYWlsLmNvbT4KK1plZnJhbSA8emVmcmFtQGZ5c2gub3JnPgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9UT0RPIGIvZHBrZy0xLjE2LjEuMS9UT0RPCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjlhYTA2ZDMKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL1RPRE8KQEAgLTAsMCArMSwxNzcgQEAKK1JvYWRNYXAKKz09PT09PT0KKworICA8aHR0cDovL3dpa2kuZGViaWFuLm9yZy9UZWFtcy9EcGtnL1JvYWRNYXA+CisKK1RPRE8KKz09PT0KKworMS4xNi54Cit+fn5+fn4KKworICogUmV2aWV3IHRoaXMgZmlsZSBhbmQgcmVtb3ZlIG9yIHVwZGF0ZSB0aGUgb2xkIGVudHJpZXMuCisKKyAqIExvb2sgZm9yIEZJWE1FIGFuZCBYWFggaXRlbXMgaW4gdGhlIHNvdXJjZS4KKworICogVHJpYWdlIGFzIG11Y2ggYnVncyBhcyBwb3NzaWJsZSB0byBnZXQgdGhlIGJ1ZyBjb3VudCBiZWxvdyAzMDAgOykgYW5kCisgICBtZXJnZSBhcyBtdWNoIHBhdGNoZXMgYXMgcG9zc2libGUuCisKKyAqIENyZWF0ZSBkZWRpY2F0ZWQgbWFudWFsIHBhZ2VzIGZvciAuY2hhbmdlcyBhbmQgLmRzYyBkb2N1bWVudGluZyB0aGUKKyAgIGZvcm1hdCBvZiB0aGUgZmlsZXMuIChkZWItZm9vIG1pZ2h0IG5vdCBiZSBhcHByaW9yaWF0ZSBhcyB0aG9zZSBhcmUKKyAgIG5vdCBpbnNpZGUgb2YgdGhlIC5kZWIgZmlsZSwgYnV0IGNoYW5nZXMoNSkgc2VlbXMgdG9vIGdlbmVyaWMuKQorICAgRXhwbGFpbiB0aGF0IGJhY2t3YXJkcyBpbmNvbXBhdGlibGUgY2hhbmdlIGludm9sdmUgYSBtYWpvciB2ZXJzaW9uIGJ1bXAKKyAgICgxLnggPT4gMi54KSB3aGlsZSBtaW5vciB2ZXJzaW9uIGJ1bXAgd2lsbCBiZSB1c2VkIGZvciBiYWNrd2FyZHMKKyAgIGNvbXBhdGlibGUgZXh0ZW5zaW9uIChlLmcuIG5ldyBmaWVsZHMpLgorCisgKiBCdWlsZDoKKyAgIC0gTWFrZSBkcGtnIGJvb3RzdHJhcHBhYmxlLgorICAgLSBDaGVjayBhdmFpbGFiaWxpdHkgb2Ygd2FybmluZyBmbGFncyBhdCBjb25maWd1cmUgdGltZS4KKyAgIC0gSGFuZGxlIG1pc3NpbmcgbHN0YXQgYXQgY29uZmlndXJlIHRpbWUgYnkgZXJyb3Jpbmcgb3V0LgorCisgKiBDb2RlIGNsZWFudXAgLyBidWcgZml4ZXM6CisgICAtIEdldCByaWQgb2Ygc3RhdGljIHZhcmlhYmxlcyBpbnNpZGUgZnVuY3Rpb25zLgorICAgLSBDb2FsZXNjZSBhZG1pbmRpciAvIGluZm9kaXIgLyBmb29kaXIgZ2VuZXJhdGlvbi4KKyAgIC0gQ29hbGVzY2UgaGFzaCBhbmQgY2hlY2tzdW0gZnVuY3Rpb25zLgorICAgLSBTcGxpdCBtb2RzdGF0ZGJfcncgaW50byBtb2RlIGFuZCBmbGFncy4KKyAgIC0gTW92ZSBmZCBmdW5jdGlvbiBvdXQgb2YgbWxpYi4KKyAgIC0gQ2xlYW51cCBzdGF0dXMgY2hhcnMgLT4gc3RyaW5ncyBoYXJkY29kZWQgbWFwcGluZ3MgYWxsIG92ZXIgdGhlIHBsYWNlLgorICAgICAoRml4IHRpZWQgZmllbGQgZW51bSB3aXRoIGl0cyBkc2VsZWN0IGRlc2NyaXB0aW9uIChwa2dkaXNwbGF5LmNjKSkKKyAgIC0gUmVmYWN0b3Igc3JjL3Byb2Nlc3NhcmMuYy4KKyAgIC0gU3BsaXQgZHBrZy5oIGludG8gaW5kZXBlbmRlbnQgaGVhZGVycy4KKyAgIC0gRG8gbW9yZSB1bnVzZWQgaGVhZGVyIGluY2x1ZGUgcmVtb3ZhbC4KKyAgIC0gQWRkIG5lZWRlZCBpbmNsdWRlcyB0byBhbGwgaGVhZGVyIGZpbGVzLgorICAgLSBHZXQgcmlkIG9mIHVudXNlZnVsICJ1bnNpZ25lZCIgbW9kaWZpZXJzLgorICAgLSBVc2UgaW50ZXJuZXJyIGluc3RlYWQgb2YgYXNzZXJ0LCBhbmQgcHJpbnQgbW9yZSBtZWFuaW5mdWwgbWVzc2FnZXMuCisgICAtIE1ha2UgYWN0aW9uZnVuY3Rpb24gcmV0dXJuIGludCwgYW5kIGF2b2lkIGdsb2JhbCBleGl0Y29kZSB2YXJpYWJsZXMuCisgICAtIE1ha2UgZGViIGJ1aWxkIHZlcnNpb24gYSB2ZXJzaW9uIGluc3RlYWQgb2YgZG9pbmcgY2hlY2tzIG92ZXIgYSBzdHJpbmcuCisgICAtIFVzZSBlbnVtcyBmb3IgY3VycmVudGx5IGhhcmRjb2RlZCBsaXRlcmFscyAocmVwbGFjaW5nZmlsZXNhbmRzYWlkLAorICAgICBzYWlkcmVhZCwgcm9rLCBmaWxldHJpZ2dlcnNfZWRpdGVkLCBldGMpLgorICAgLSBEbyBub3QgdXNlIG5mbWFsbG9jIChhbmQgZnJpZW5kcykgZm9yIG5vbiBpbi1jb3JlIGRiIG1lbW9yeS4KKyAgIC0gQ2FsbCBuZmZyZWVhbGwgb24gZXhpdCAobmVlZCB0byBkZXRhbmdsZSBuZm1hbGxvYyBmcm9tIG5vbi1kYiBmaXJzdCkuCisgICAtIEFkZCBhIHNpemUgcGFyYW1ldGVyIHRvIHRoZSBidWZmZXIgYXBpIHRvIGF2b2lkIHNvbWUgdXNlbGVzcworICAgICBwaXBlK2ZvcmsrY29weS4KKyAgIC0gSGFuZGxlIGluc3RkaXIgJy8nIHNlcGFyYXRvciBjb25zaXN0ZW50bHkuCisgICAtIENoZWNrIGlmIGNhY2hpbmcgc2VsaW51eCBjb250ZXh0IGZvciBzZWNvbmQgY2FsbCBpcyBwb3NzaWJsZS4KKyAgIC0gQWRkIG1pc3NpbmcgbmV3bGluZXMgaW4gLS12ZXJzaW9uIG91dHB1dC4KKyAgIC0gRml4IGxlYWsgb24gdGFyX2V4dHJhY3QgKG5hbWUsIGxpbmtuYW1lKS4KKyAgIC0gSGFuZGxlIHN5bWxpbmtzIGluIHN0YXRjbWQuYyBzdGF0ZGJfbm9kZV9hcHBseSgpLgorICAgLSBGaXggZHBrZyB0ZXJtaW5hdGlvbiBvbiBTSUdQSVBFIGZyb20gc3RhdHVzLWZkLgorCisgKiBsaWJjb21wYXQgY2xlYW51cDoKKyAgIC0gQWRkIGZubWF0Y2gsIElSSVg1IGRvZXNuJ3QgaGF2ZSBpdC4KKworICogTWFuIHBhZ2VzOgorICAgLSBBZGQgZXhhbXBsZSB0byBkcGtnLXNjYW5mb28gbWFucGFnZXM/CisgICAtIE1lcmdlIHN5bm9wc2lzIGxpbmVzIGluIGRwa2ctdHJpZ2dlcnMuCisgICAtIENoZWNrIGFsbCBjb21tYW5kIHZzIGFjdGlvbi4KKyAgIC0gQ2hlY2sgdXNhZ2Ugb2YgJ3wnIGluc3RlYWQgb2YgJywgJy4KKyAgIC0gQ2hlY2sgcG9zaXRpb24gb2Ygc2hvcnQgb3B0aW9uIGJlZm9yZSBsb25nIG9wdGlvbi4KKyAgIC0gRml4IGRwa2cgbWFuIHBhZ2UsIHJlZnMgdG8gZHBrZy1kZWIgYW5kIGRwa2ctc3BsaXQsIGV0Yy4KKyAgIC0gRml4IMKrLiAgwrsuCisKKyAqIEwxMG46CisgICAtIENoZWNrIGRwa2ctZGl2ZXJ0IHN0cmluZ3MgZm9yIG5ldyBhbmQgZml4YWJsZSBvbmVzLgorICAgLSBTdGFuZGFyZGl6ZSB0cmFuc2xhdGVkIGVycm9yIG1lc3NhZ2VzIGluIHRoZSBwZXJsIGNvZGUgdG8gYXZvaWQgdXNlbGVzcworICAgICB3b3JrIGZvciB0cmFuc2xhdG9ycy4KKyAgIC0gQ2hlY2sgaHR0cDovL2QtaS5hbGlvdGguZGViaWFuLm9yZy9zcGVsbGNoZWNrL2xldmVsNS9pbmRleC5odG1sCisKKyAqIERpc2N1c3MgYW5kIGltcGxlbWVudAorICAgaHR0cDovL3d3dy5oYWRyb25zLm9yZy9+Z3VpbGxlbS9kZWJpYW4vZG9jcy9vcmlnaW4ucHJvcG9zYWwKKworICogRGVwcmVjYXRlIC0tZm9yY2Utbm90LXJvb3QgZmxhZyAocmVtb3ZlIG1vZHN0YXRkYl9ydyByb290bmVlZGVkIGZsYWdzKS4KKworICogVGVzdCBhbmQgcmVlbmFibGUgLS1jb21tYW5kLWZkLgorCisgKiBDaGVjayAtLW5vLWFjdCBmb3IgbG9nX2FjdGlvbigpLgorCisgKiBBZGQgbm9uLXJlZ3Jlc3Npb24gdGVzdHMgZm9yIERwa2c6OlNvdXJjZTo6KgorCisgKiBBZGQgVVRGLTggc3VwcG9ydCB0byBhbGwgcHJvZ3JhbXMuCisKKyAqIEFsbG93IHBhY2thZ2VzIHRvIHJlZ2lzdGVyIGFkZGl0aW9uYWwgZmlsZXMsIGRlY2xhcmUgb3duZXJzaGlwIG9mIGZpbGVzIGZvcgorICAgZHBrZyAtUyBhbmQgLUwgd2l0aG91dCBoYXZpbmcgZHBrZyBhY3Qgb24gdGhpcyAoLnBzdWVkb2xpc3Q/KS4KKworICogTWFrZSBkcGtnLWNoZWNrYnVpbGRkZXBzIGVhc2llciB0byB1c2UgYnkgb3RoZXIgcHJvZ3JhbXMgc3VjaCBhcyBwYnVpbGRlcgorICAgb3Igc2J1aWxkLCBzbyB0aGF0IHRoZXkgY2FuIHN0YXJ0IHVzaW5nIHRoZSBuZXcgYXJjaGl0ZWN0dXJlIHdpbGRjYXJkcworICAgYXV0b21hdGljYWxseS4KKyAgIC0gU3VwcG9ydCBmb3Igb3V0cHV0IGZvcm1hdC4gKCMyMTQ1NjYpCisKKyAqIEZpeCBjb25mbGljdGluZyBhY3Rpb24gLSVjLCB3aGVuIHNob3J0IGlzIDAuCisKKyAqIFdlIHNob3VsZCBzZXQgb3VyIG93biBvYnN0YWNrX2FsbG9jX2ZhaWxlZF9oYW5kbGVyLgorCisgKiBSZW1vdmUgY29tcGF0aWJpbGl0eSBzeW1saW5rcworICAgL3Vzci9zYmluL3t1cGRhdGUtYWx0ZXJuYXRpdmVzLGRwa2ctZGl2ZXJ0LGRwa2ctc3RhdG92ZXJyaWRlfS4KKyAqIFJlbW92ZSBpbnN0YWxsLWluZm8gd3JhcHBlci4KKworCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworT2xkIFRPRE8gZW50cmllcyBmcm9tIFNjb3R0OgorCitzdGFydC1zdG9wLWRhZW1vbgorKiBjYXBhYmlsaXRpZXMgc3VwcG9ydAorKiBkb24ndCBjbG9zZSBGRCdzCisKK2Rwa2cKKyogYWxsb3cgZXh0ZXJuYWwgcHJvZ3JhbSB0byBzcGVjaWZ5IGhvdyB0byBoYW5kbGUgY29uZmZpbGVzCisqIHRyeSB0byByZW1vdmUgZGlyZWN0b3JpZXMgYWdhaW4gYWZ0ZXIgcmVtb3ZpbmcgY29uZmZpbGVzCisqIHZlcmlmeSBFbmhhbmNlcyB3b3JrcyAoaWUgZG9uJ3QgdHJpZ2dlciBzb21lIGFzc2VydGlvbikKKyogYWRkIHRlc3QgdG8gc2VlIGlmIGEgZmlsZSBzaG91bGQgcmVhbGx5IGJlIGluc3RhbGxlZCBhbmQgb3B0aW9uYWxseQorICBza2lwIGl0CisqIGRwa2cgLS1jYWxsLW1haW50LXNjcmlwdD08c2NyaXB0PiAtLW1haW50LXNjcmlwdC1hcmc9PGFyZz4KKyAgLS1tYWludC1zY3JpcHQtYXJnPTxhcmc+IDxwa2c+IDxwa2c+CisgICAgZHBrZyB3aWxsIG5vdCBhbGxvdyA8c2NyaXB0PiB0byBiZSBvbmUgb2Yge3ByZSxwb3N0fXtpbnN0LHJtfS4gIE9ubHkKKyAgICB1bmtub3duIHNjcmlwdHMgY2FuIGJlIGNhbGxlZCB0aGlzIHdheS4gIGRwa2cgd2lsbCBhbHNvIG5vdCBrZWVwIHRyYWNrCisgICAgb2YgYW55IHN0YXRlIGZvciB0aGVzZSBzY3JpcHRzLgorCitGaXg6Cis8am9leWhfPiBwYWNrYWdlIGEgY29uZmxpY3RlZCB3aXRoIG9sZCB2ZXJzaW9ucyBvZiBwYWNrYWdlIGIuIHBhY2thZ2UgYgorICAgICAgY29uZmljdGVkIHdpdGggb2xkIHZlcnNpb25zIG9mIHBhY2thZ2UgYS4gSSBoYWQgdGhlIG9sZCB2ZXJzaW9ucyBvZiBib3RoCisgICAgICBpbnN0YWxsZWQsIGFuZCB0b2xkIGRwa2cgdG8gaW5zdGFsbCB0aGUgbmV3IHZlcnNpb25zIG9mIGEgYW5kIGIKKyAgICAgIHNpbXVsYW50YW5lb3VzbHkuIEl0IHJlZnVzZWQuCisKK2RzZWxlY3Q6CisqIHN1cHBvcnQgRW5oYW5jZXMKKworLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKK09sZCBUT0RPIGVudHJpZXMgZnJvbSBJV0o6CisKK0hlcmUgYXJlIHNvbWUgY3VycmVudGx5LWtub3duIGluYWRlcXVhY2llczoKKwordXJnZW50CisgKiBDb25mbGljdHMgPDwgaW5zdGFsbGF0aW9uIG9yZGVyaW5nCisgKiBWZXJzaW9uIG51bWJlcnMgaW4gcHJlLWRlcGVuZHMgc3R1ZmYKKyAqIFNlYXJjaCBmb3IgYWxsIHByZS1kZXBlbmRzIHRoaW5ncyBhdCBvbmNlLCBib21iIG91dCBpZiBhbnkgbm90IGZvdW5kCisgKiBfYWx3YXlzXyBzaG93IHNlY3Rpb24gaW4gLS15ZXQtdG8tdW5wYWNrCisgKiBhdXRvbWF0aWNhbGx5IGRvIC0teWV0LXRvLXVucGFjayBpbiBpbnN0YWxsYXRpb24gbWV0aG9kcworICogY2hlY2sgZGVwZW5kaW5nIHBhY2thZ2VzIHdoZW4gaW5zdGFsbGluZyBuZXcgdmVyc2lvbi4KKyAqIFNldmVyYWwgdGhpbmdzIG91Z2h0IHRvIGJlIGNvbmZpZ3VyYWJsZSBidXQgYXJlbid0LgorICogRmlsZW5hbWVzIGNvbnRhaW5pbmcgbmV3bGluZXMuICBDb25mZmlsZSBuYW1lcyBjb250YWluaW5nIHNwYWNlcy4KKyAqIGRwa2cgLS1zdGF0dXMgZm9yIHZpcnR1YWwgcGFja2FnZXMKKyAqIG9wZW5wZ3Agc2lnbmF0dXJlcyBpbiB0aGUgcGFja2FnZSBhcmNoaXZlCisKK290aGVyIHN0dWZmIHVubGlrZWx5IHRvIGdldCBkb25lIHNvb24KKyAqIEF1dG9tYXRpY2FsbHkgcmVtb3ZlIDxmaWxlPi5neiBpZiA8ZmlsZT4gY2FuJ3QgYmUgZm91bmQgPyBhbmQgbWF5YmUsCisgICByZW1vdmUgPGZpbGU+IGlmIDxmaWxlLmd6PiBjYW4ndCBiZSBmb3VuZD8gQmlnIG1lc3Mgd2hlbiB3ZSBzdGFydAorICAgdGhpbmtpbmcgYWJvdXQgYnoyIDovCisgKiBMb2NhbCB2ZXJzaW9uIG51bWJlciAodXNpbmcgbm9uLW51bWVyaWMgZXBvY2gsIHBlcmhhcHMsIG9yIGJldHRlciB5ZXQsCisgICBhIC0tbG9jYWwgb3B0aW9uIGluIGRwa2csIHNvIHRoYXQgaXQgbWFya3MgdGhpcyBwYWNrYWdlIGFzIGEgbG9jYWwgaW5zdGFsbAorICAgKHdoZW4gcnVubmluZyBkcGtnIC1pKT8gS2VlcHMgaXQgZnJvbSBiZWluZyBsaXN0ZWQgYXMgb2Jzb2xldGUsIGFuZCBtYXliZQorICAgZnJvbSBiZWluZyBjb25zaWRlcmVkIGZvciBhdXRvLXVwZ3JhZGVzIChhcHQtZ2V0IG5lZWRzIHRvIGtub3cgYWJvdXQgdGhpcworICAgdG9vKQorICogRmlsZW5hbWUgZmllbGQgZ2VuZXJhdGVkIGJ5IC0tcmVjb3JkLWF2YWlsIAorICogdW5kZXJzdGFuZCBSZXBsYWNlcyBpbiBkc2VsZWN0CisgKiBkaXZlcnNpb25zIGxpc3QgYXMgY29udHJvbCBhcmNoaXZlIGVudHJ5CisgKiBzaW5nbGUgbWFpbnRhaW5lciBzY3JpcHQsIGFuZCBuZXcgcGFja2FnZSBnZXR0aW5nIHRoZXJlIGZpcnN0CisgKiBsb2NhbCBjb25mZmlsZXMsIGFzIHdlbGwgYXMgbG9jYWwgZmlsZXMgdGhhdCBkcGtnIHNob3VsZCBjaGVjayBiZWZvcmUKKyAgIG92ZXJ3cml0aW5nCisgKiBob29rcworICogZHNlbGVjdCBwZXItaGFsZiBmb2N1cyBhbmQga2V5YmluZGluZ3MgaW1wcm92ZW1lbnRzLgorICAgIW1pc3NpbmcgYnVnIHJlcG9ydCAjMTU1NSEKKworICogZmxvcHB5IG1hcCAod2hlcmUgYXJlIHRoZSBmaWxlcykKKyAqIGhvdyB0byBjaGFuZ2UgY2FzZSBvZiBwYWNrYWdlIG5hbWVzCisgKiBgZmFrZScgb3IgYG51bGwnIHBhY2thZ2VzCisgKiBkcGtnIC0tcXVlcnkgfCAtUQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9hY2xvY2FsLm00IGIvZHBrZy0xLjE2LjEuMS9hY2xvY2FsLm00Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmJlNGI2NTcKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2FjbG9jYWwubTQKQEAgLTAsMCArMSwxMTU3IEBACisjIGdlbmVyYXRlZCBhdXRvbWF0aWNhbGx5IGJ5IGFjbG9jYWwgMS4xMS4xIC0qLSBBdXRvY29uZiAtKi0KKworIyBDb3B5cmlnaHQgKEMpIDE5OTYsIDE5OTcsIDE5OTgsIDE5OTksIDIwMDAsIDIwMDEsIDIwMDIsIDIwMDMsIDIwMDQsCisjIDIwMDUsIDIwMDYsIDIwMDcsIDIwMDgsIDIwMDkgIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgorIyBUaGlzIGZpbGUgaXMgZnJlZSBzb2Z0d2FyZTsgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbgorIyBnaXZlcyB1bmxpbWl0ZWQgcGVybWlzc2lvbiB0byBjb3B5IGFuZC9vciBkaXN0cmlidXRlIGl0LAorIyB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9ucywgYXMgbG9uZyBhcyB0aGlzIG5vdGljZSBpcyBwcmVzZXJ2ZWQuCisKKyMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisjIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWSwgdG8gdGhlIGV4dGVudCBwZXJtaXR0ZWQgYnkgbGF3OyB3aXRob3V0CisjIGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEKKyMgUEFSVElDVUxBUiBQVVJQT1NFLgorCittNF9pZm5kZWYoW0FDX0FVVE9DT05GX1ZFUlNJT05dLAorICBbbTRfY29weShbbTRfUEFDS0FHRV9WRVJTSU9OXSwgW0FDX0FVVE9DT05GX1ZFUlNJT05dKV0pZG5sCittNF9pZihtNF9kZWZuKFtBQ19BVVRPQ09ORl9WRVJTSU9OXSksIFsyLjY4XSwsCitbbTRfd2FybmluZyhbdGhpcyBmaWxlIHdhcyBnZW5lcmF0ZWQgZm9yIGF1dG9jb25mIDIuNjguCitZb3UgaGF2ZSBhbm90aGVyIHZlcnNpb24gb2YgYXV0b2NvbmYuICBJdCBtYXkgd29yaywgYnV0IGlzIG5vdCBndWFyYW50ZWVkIHRvLgorSWYgeW91IGhhdmUgcHJvYmxlbXMsIHlvdSBtYXkgbmVlZCB0byByZWdlbmVyYXRlIHRoZSBidWlsZCBzeXN0ZW0gZW50aXJlbHkuCitUbyBkbyBzbywgdXNlIHRoZSBwcm9jZWR1cmUgZG9jdW1lbnRlZCBieSB0aGUgcGFja2FnZSwgdHlwaWNhbGx5IGBhdXRvcmVjb25mJy5dKV0pCisKKyMgcGtnLm00IC0gTWFjcm9zIHRvIGxvY2F0ZSBhbmQgdXRpbGlzZSBwa2ctY29uZmlnLiAgICAgICAgICAgIC0qLSBBdXRvY29uZiAtKi0KKyMgc2VyaWFsIDEgKHBrZy1jb25maWctMC4yNCkKKyMgCisjIENvcHlyaWdodCDCqSAyMDA0IFNjb3R0IEphbWVzIFJlbW5hbnQgPHNjb3R0QG5ldHNwbGl0LmNvbT4uCisjCisjIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisjIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisjIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisjIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisjCisjIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLCBidXQKKyMgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVQorIyBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisjCisjIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisjIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCisjIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSAtIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3LCBVU0EuCisjCisjIEFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlLCBpZiB5b3UKKyMgZGlzdHJpYnV0ZSB0aGlzIGZpbGUgYXMgcGFydCBvZiBhIHByb2dyYW0gdGhhdCBjb250YWlucyBhCisjIGNvbmZpZ3VyYXRpb24gc2NyaXB0IGdlbmVyYXRlZCBieSBBdXRvY29uZiwgeW91IG1heSBpbmNsdWRlIGl0IHVuZGVyCisjIHRoZSBzYW1lIGRpc3RyaWJ1dGlvbiB0ZXJtcyB0aGF0IHlvdSB1c2UgZm9yIHRoZSByZXN0IG9mIHRoYXQgcHJvZ3JhbS4KKworIyBQS0dfUFJPR19QS0dfQ09ORklHKFtNSU4tVkVSU0lPTl0pCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KK0FDX0RFRlVOKFtQS0dfUFJPR19QS0dfQ09ORklHXSwKK1ttNF9wYXR0ZXJuX2ZvcmJpZChbXl8/UEtHX1tBLVpfXSskXSkKK200X3BhdHRlcm5fYWxsb3coW15QS0dfQ09ORklHKF8oUEFUSHxMSUJESVJ8U1lTUk9PVF9ESVJ8QUxMT1dfU1lTVEVNXyhDRkxBR1N8TElCUykpKT8kXSkKK200X3BhdHRlcm5fYWxsb3coW15QS0dfQ09ORklHXyhESVNBQkxFX1VOSU5TVEFMTEVEfFRPUF9CVUlMRF9ESVJ8REVCVUdfU1BFVykkXSkKK0FDX0FSR19WQVIoW1BLR19DT05GSUddLCBbcGF0aCB0byBwa2ctY29uZmlnIHV0aWxpdHldKQorQUNfQVJHX1ZBUihbUEtHX0NPTkZJR19QQVRIXSwgW2RpcmVjdG9yaWVzIHRvIGFkZCB0byBwa2ctY29uZmlnJ3Mgc2VhcmNoIHBhdGhdKQorQUNfQVJHX1ZBUihbUEtHX0NPTkZJR19MSUJESVJdLCBbcGF0aCBvdmVycmlkaW5nIHBrZy1jb25maWcncyBidWlsdC1pbiBzZWFyY2ggcGF0aF0pCisKK2lmIHRlc3QgIngkYWNfY3ZfZW52X1BLR19DT05GSUdfc2V0IiAhPSAieHNldCI7IHRoZW4KKwlBQ19QQVRIX1RPT0woW1BLR19DT05GSUddLCBbcGtnLWNvbmZpZ10pCitmaQoraWYgdGVzdCAtbiAiJFBLR19DT05GSUciOyB0aGVuCisJX3BrZ19taW5fdmVyc2lvbj1tNF9kZWZhdWx0KFskMV0sIFswLjkuMF0pCisJQUNfTVNHX0NIRUNLSU5HKFtwa2ctY29uZmlnIGlzIGF0IGxlYXN0IHZlcnNpb24gJF9wa2dfbWluX3ZlcnNpb25dKQorCWlmICRQS0dfQ09ORklHIC0tYXRsZWFzdC1wa2djb25maWctdmVyc2lvbiAkX3BrZ19taW5fdmVyc2lvbjsgdGhlbgorCQlBQ19NU0dfUkVTVUxUKFt5ZXNdKQorCWVsc2UKKwkJQUNfTVNHX1JFU1VMVChbbm9dKQorCQlQS0dfQ09ORklHPSIiCisJZmkKK2ZpW11kbmwKK10pIyBQS0dfUFJPR19QS0dfQ09ORklHCisKKyMgUEtHX0NIRUNLX0VYSVNUUyhNT0RVTEVTLCBbQUNUSU9OLUlGLUZPVU5EXSwgW0FDVElPTi1JRi1OT1QtRk9VTkRdKQorIworIyBDaGVjayB0byBzZWUgd2hldGhlciBhIHBhcnRpY3VsYXIgc2V0IG9mIG1vZHVsZXMgZXhpc3RzLiAgU2ltaWxhcgorIyB0byBQS0dfQ0hFQ0tfTU9EVUxFUygpLCBidXQgZG9lcyBub3Qgc2V0IHZhcmlhYmxlcyBvciBwcmludCBlcnJvcnMuCisjCisjIFBsZWFzZSByZW1lbWJlciB0aGF0IG00IGV4cGFuZHMgQUNfUkVRVUlSRShbUEtHX1BST0dfUEtHX0NPTkZJR10pCisjIG9ubHkgYXQgdGhlIGZpcnN0IG9jY3VyZW5jZSBpbiBjb25maWd1cmUuYWMsIHNvIGlmIHRoZSBmaXJzdCBwbGFjZQorIyBpdCdzIGNhbGxlZCBtaWdodCBiZSBza2lwcGVkIChzdWNoIGFzIGlmIGl0IGlzIHdpdGhpbiBhbiAiaWYiLCB5b3UKKyMgaGF2ZSB0byBjYWxsIFBLR19DSEVDS19FWElTVFMgbWFudWFsbHkKKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KK0FDX0RFRlVOKFtQS0dfQ0hFQ0tfRVhJU1RTXSwKK1tBQ19SRVFVSVJFKFtQS0dfUFJPR19QS0dfQ09ORklHXSlkbmwKK2lmIHRlc3QgLW4gIiRQS0dfQ09ORklHIiAmJiBcCisgICAgQUNfUlVOX0xPRyhbJFBLR19DT05GSUcgLS1leGlzdHMgLS1wcmludC1lcnJvcnMgIiQxIl0pOyB0aGVuCisgIG00X2RlZmF1bHQoWyQyXSwgWzpdKQorbTRfaWZ2YWxuKFskM10sIFtlbHNlCisgICQzXSlkbmwKK2ZpXSkKKworIyBfUEtHX0NPTkZJRyhbVkFSSUFCTEVdLCBbQ09NTUFORF0sIFtNT0RVTEVTXSkKKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCittNF9kZWZpbmUoW19QS0dfQ09ORklHXSwKK1tpZiB0ZXN0IC1uICIkJDEiOyB0aGVuCisgICAgcGtnX2N2X1tdJDE9IiQkMSIKKyBlbGlmIHRlc3QgLW4gIiRQS0dfQ09ORklHIjsgdGhlbgorICAgIFBLR19DSEVDS19FWElTVFMoWyQzXSwKKyAgICAgICAgICAgICAgICAgICAgIFtwa2dfY3ZfW10kMT1gJFBLR19DT05GSUcgLS1bXSQyICIkMyIgMj4vZGV2L251bGxgCisJCSAgICAgIHRlc3QgIngkPyIgIT0gIngwIiAmJiBwa2dfZmFpbGVkPXllcyBdLAorCQkgICAgIFtwa2dfZmFpbGVkPXllc10pCisgZWxzZQorICAgIHBrZ19mYWlsZWQ9dW50cmllZAorZmlbXWRubAorXSkjIF9QS0dfQ09ORklHCisKKyMgX1BLR19TSE9SVF9FUlJPUlNfU1VQUE9SVEVECisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCitBQ19ERUZVTihbX1BLR19TSE9SVF9FUlJPUlNfU1VQUE9SVEVEXSwKK1tBQ19SRVFVSVJFKFtQS0dfUFJPR19QS0dfQ09ORklHXSkKK2lmICRQS0dfQ09ORklHIC0tYXRsZWFzdC1wa2djb25maWctdmVyc2lvbiAwLjIwOyB0aGVuCisgICAgICAgIF9wa2dfc2hvcnRfZXJyb3JzX3N1cHBvcnRlZD15ZXMKK2Vsc2UKKyAgICAgICAgX3BrZ19zaG9ydF9lcnJvcnNfc3VwcG9ydGVkPW5vCitmaVtdZG5sCitdKSMgX1BLR19TSE9SVF9FUlJPUlNfU1VQUE9SVEVECisKKworIyBQS0dfQ0hFQ0tfTU9EVUxFUyhWQVJJQUJMRS1QUkVGSVgsIE1PRFVMRVMsIFtBQ1RJT04tSUYtRk9VTkRdLAorIyBbQUNUSU9OLUlGLU5PVC1GT1VORF0pCisjCisjCisjIE5vdGUgdGhhdCBpZiB0aGVyZSBpcyBhIHBvc3NpYmlsaXR5IHRoZSBmaXJzdCBjYWxsIHRvCisjIFBLR19DSEVDS19NT0RVTEVTIG1pZ2h0IG5vdCBoYXBwZW4sIHlvdSBzaG91bGQgYmUgc3VyZSB0byBpbmNsdWRlIGFuCisjIGV4cGxpY2l0IGNhbGwgdG8gUEtHX1BST0dfUEtHX0NPTkZJRyBpbiB5b3VyIGNvbmZpZ3VyZS5hYworIworIworIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorQUNfREVGVU4oW1BLR19DSEVDS19NT0RVTEVTXSwKK1tBQ19SRVFVSVJFKFtQS0dfUFJPR19QS0dfQ09ORklHXSlkbmwKK0FDX0FSR19WQVIoWyQxXVtfQ0ZMQUdTXSwgW0MgY29tcGlsZXIgZmxhZ3MgZm9yICQxLCBvdmVycmlkaW5nIHBrZy1jb25maWddKWRubAorQUNfQVJHX1ZBUihbJDFdW19MSUJTXSwgW2xpbmtlciBmbGFncyBmb3IgJDEsIG92ZXJyaWRpbmcgcGtnLWNvbmZpZ10pZG5sCisKK3BrZ19mYWlsZWQ9bm8KK0FDX01TR19DSEVDS0lORyhbZm9yICQxXSkKKworX1BLR19DT05GSUcoWyQxXVtfQ0ZMQUdTXSwgW2NmbGFnc10sIFskMl0pCitfUEtHX0NPTkZJRyhbJDFdW19MSUJTXSwgW2xpYnNdLCBbJDJdKQorCittNF9kZWZpbmUoW19QS0dfVEVYVF0sIFtBbHRlcm5hdGl2ZWx5LCB5b3UgbWF5IHNldCB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGVzICQxW11fQ0ZMQUdTCithbmQgJDFbXV9MSUJTIHRvIGF2b2lkIHRoZSBuZWVkIHRvIGNhbGwgcGtnLWNvbmZpZy4KK1NlZSB0aGUgcGtnLWNvbmZpZyBtYW4gcGFnZSBmb3IgbW9yZSBkZXRhaWxzLl0pCisKK2lmIHRlc3QgJHBrZ19mYWlsZWQgPSB5ZXM7IHRoZW4KKyAgIAlBQ19NU0dfUkVTVUxUKFtub10pCisgICAgICAgIF9QS0dfU0hPUlRfRVJST1JTX1NVUFBPUlRFRAorICAgICAgICBpZiB0ZXN0ICRfcGtnX3Nob3J0X2Vycm9yc19zdXBwb3J0ZWQgPSB5ZXM7IHRoZW4KKwkgICAgICAgICQxW11fUEtHX0VSUk9SUz1gJFBLR19DT05GSUcgLS1zaG9ydC1lcnJvcnMgLS1wcmludC1lcnJvcnMgLS1jZmxhZ3MgLS1saWJzICIkMiIgMj4mMWAKKyAgICAgICAgZWxzZSAKKwkgICAgICAgICQxW11fUEtHX0VSUk9SUz1gJFBLR19DT05GSUcgLS1wcmludC1lcnJvcnMgLS1jZmxhZ3MgLS1saWJzICIkMiIgMj4mMWAKKyAgICAgICAgZmkKKwkjIFB1dCB0aGUgbmFzdHkgZXJyb3IgbWVzc2FnZSBpbiBjb25maWcubG9nIHdoZXJlIGl0IGJlbG9uZ3MKKwllY2hvICIkJDFbXV9QS0dfRVJST1JTIiA+JkFTX01FU1NBR0VfTE9HX0ZECisKKwltNF9kZWZhdWx0KFskNF0sIFtBQ19NU0dfRVJST1IoCitbUGFja2FnZSByZXF1aXJlbWVudHMgKCQyKSB3ZXJlIG5vdCBtZXQ6CisKKyQkMV9QS0dfRVJST1JTCisKK0NvbnNpZGVyIGFkanVzdGluZyB0aGUgUEtHX0NPTkZJR19QQVRIIGVudmlyb25tZW50IHZhcmlhYmxlIGlmIHlvdQoraW5zdGFsbGVkIHNvZnR3YXJlIGluIGEgbm9uLXN0YW5kYXJkIHByZWZpeC4KKworX1BLR19URVhUXSlbXWRubAorICAgICAgICBdKQorZWxpZiB0ZXN0ICRwa2dfZmFpbGVkID0gdW50cmllZDsgdGhlbgorICAgICAJQUNfTVNHX1JFU1VMVChbbm9dKQorCW00X2RlZmF1bHQoWyQ0XSwgW0FDX01TR19GQUlMVVJFKAorW1RoZSBwa2ctY29uZmlnIHNjcmlwdCBjb3VsZCBub3QgYmUgZm91bmQgb3IgaXMgdG9vIG9sZC4gIE1ha2Ugc3VyZSBpdAoraXMgaW4geW91ciBQQVRIIG9yIHNldCB0aGUgUEtHX0NPTkZJRyBlbnZpcm9ubWVudCB2YXJpYWJsZSB0byB0aGUgZnVsbAorcGF0aCB0byBwa2ctY29uZmlnLgorCitfUEtHX1RFWFQKKworVG8gZ2V0IHBrZy1jb25maWcsIHNlZSA8aHR0cDovL3BrZy1jb25maWcuZnJlZWRlc2t0b3Aub3JnLz4uXSlbXWRubAorICAgICAgICBdKQorZWxzZQorCSQxW11fQ0ZMQUdTPSRwa2dfY3ZfW10kMVtdX0NGTEFHUworCSQxW11fTElCUz0kcGtnX2N2X1tdJDFbXV9MSUJTCisgICAgICAgIEFDX01TR19SRVNVTFQoW3llc10pCisJJDMKK2ZpW11kbmwKK10pIyBQS0dfQ0hFQ0tfTU9EVUxFUworCisjIENvcHlyaWdodCAoQykgMjAwMiwgMjAwMywgMjAwNSwgMjAwNiwgMjAwNywgMjAwOCAgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCisjCisjIFRoaXMgZmlsZSBpcyBmcmVlIHNvZnR3YXJlOyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uCisjIGdpdmVzIHVubGltaXRlZCBwZXJtaXNzaW9uIHRvIGNvcHkgYW5kL29yIGRpc3RyaWJ1dGUgaXQsCisjIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb25zLCBhcyBsb25nIGFzIHRoaXMgbm90aWNlIGlzIHByZXNlcnZlZC4KKworIyBBTV9BVVRPTUFLRV9WRVJTSU9OKFZFUlNJT04pCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyMgQXV0b21ha2UgWC5ZIHRyYWNlcyB0aGlzIG1hY3JvIHRvIGVuc3VyZSBhY2xvY2FsLm00IGhhcyBiZWVuCisjIGdlbmVyYXRlZCBmcm9tIHRoZSBtNCBmaWxlcyBhY2NvbXBhbnlpbmcgQXV0b21ha2UgWC5ZLgorIyAoVGhpcyBwcml2YXRlIG1hY3JvIHNob3VsZCBub3QgYmUgY2FsbGVkIG91dHNpZGUgdGhpcyBmaWxlLikKK0FDX0RFRlVOKFtBTV9BVVRPTUFLRV9WRVJTSU9OXSwKK1thbV9fYXBpX3ZlcnNpb249JzEuMTEnCitkbmwgU29tZSB1c2VycyBmaW5kIEFNX0FVVE9NQUtFX1ZFUlNJT04gYW5kIG1pc3Rha2UgaXQgZm9yIGEgd2F5IHRvCitkbmwgcmVxdWlyZSBzb21lIG1pbmltdW0gdmVyc2lvbi4gIFBvaW50IHRoZW0gdG8gdGhlIHJpZ2h0IG1hY3JvLgorbTRfaWYoWyQxXSwgWzEuMTEuMV0sIFtdLAorICAgICAgW0FDX0ZBVEFMKFtEbyBub3QgY2FsbCAkMCwgdXNlIEFNX0lOSVRfQVVUT01BS0UoWyQxXSkuXSldKWRubAorXSkKKworIyBfQU1fQVVUT0NPTkZfVkVSU0lPTihWRVJTSU9OKQorIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIyBhY2xvY2FsIHRyYWNlcyB0aGlzIG1hY3JvIHRvIGZpbmQgdGhlIEF1dG9jb25mIHZlcnNpb24uCisjIFRoaXMgaXMgYSBwcml2YXRlIG1hY3JvIHRvby4gIFVzaW5nIG00X2RlZmluZSBzaW1wbGlmaWVzCisjIHRoZSBsb2dpYyBpbiBhY2xvY2FsLCB3aGljaCBjYW4gc2ltcGx5IGlnbm9yZSB0aGlzIGRlZmluaXRpb24uCittNF9kZWZpbmUoW19BTV9BVVRPQ09ORl9WRVJTSU9OXSwgW10pCisKKyMgQU1fU0VUX0NVUlJFTlRfQVVUT01BS0VfVkVSU0lPTgorIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisjIENhbGwgQU1fQVVUT01BS0VfVkVSU0lPTiBhbmQgQU1fQVVUT01BS0VfVkVSU0lPTiBzbyB0aGV5IGNhbiBiZSB0cmFjZWQuCisjIFRoaXMgZnVuY3Rpb24gaXMgQUNfUkVRVUlSRWQgYnkgQU1fSU5JVF9BVVRPTUFLRS4KK0FDX0RFRlVOKFtBTV9TRVRfQ1VSUkVOVF9BVVRPTUFLRV9WRVJTSU9OXSwKK1tBTV9BVVRPTUFLRV9WRVJTSU9OKFsxLjExLjFdKWRubAorbTRfaWZuZGVmKFtBQ19BVVRPQ09ORl9WRVJTSU9OXSwKKyAgW200X2NvcHkoW200X1BBQ0tBR0VfVkVSU0lPTl0sIFtBQ19BVVRPQ09ORl9WRVJTSU9OXSldKWRubAorX0FNX0FVVE9DT05GX1ZFUlNJT04obTRfZGVmbihbQUNfQVVUT0NPTkZfVkVSU0lPTl0pKV0pCisKKyMgQU1fQVVYX0RJUl9FWFBBTkQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0qLSBBdXRvY29uZiAtKi0KKworIyBDb3B5cmlnaHQgKEMpIDIwMDEsIDIwMDMsIDIwMDUgIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgorIworIyBUaGlzIGZpbGUgaXMgZnJlZSBzb2Z0d2FyZTsgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbgorIyBnaXZlcyB1bmxpbWl0ZWQgcGVybWlzc2lvbiB0byBjb3B5IGFuZC9vciBkaXN0cmlidXRlIGl0LAorIyB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9ucywgYXMgbG9uZyBhcyB0aGlzIG5vdGljZSBpcyBwcmVzZXJ2ZWQuCisKKyMgRm9yIHByb2plY3RzIHVzaW5nIEFDX0NPTkZJR19BVVhfRElSKFtmb29dKSwgQXV0b2NvbmYgc2V0cworIyAkYWNfYXV4X2RpciB0byBgJHNyY2Rpci9mb28nLiAgSW4gb3RoZXIgcHJvamVjdHMsIGl0IGlzIHNldCB0bworIyBgJHNyY2RpcicsIGAkc3JjZGlyLy4uJywgb3IgYCRzcmNkaXIvLi4vLi4nLgorIworIyBPZiBjb3Vyc2UsIEF1dG9tYWtlIG11c3QgaG9ub3IgdGhpcyB2YXJpYWJsZSB3aGVuZXZlciBpdCBjYWxscyBhCisjIHRvb2wgZnJvbSB0aGUgYXV4aWxpYXJ5IGRpcmVjdG9yeS4gIFRoZSBwcm9ibGVtIGlzIHRoYXQgJHNyY2RpciAoYW5kCisjIHRoZXJlZm9yZSAkYWNfYXV4X2RpciBhcyB3ZWxsKSBjYW4gYmUgZWl0aGVyIGFic29sdXRlIG9yIHJlbGF0aXZlLAorIyBkZXBlbmRpbmcgb24gaG93IGNvbmZpZ3VyZSBpcyBydW4uICBUaGlzIGlzIHByZXR0eSBhbm5veWluZywgc2luY2UKKyMgaXQgbWFrZXMgJGFjX2F1eF9kaXIgcXVpdGUgdW51c2FibGUgaW4gc3ViZGlyZWN0b3JpZXM6IGluIHRoZSB0b3AKKyMgc291cmNlIGRpcmVjdG9yeSwgYW55IGZvcm0gd2lsbCB3b3JrIGZpbmUsIGJ1dCBpbiBzdWJkaXJlY3RvcmllcyBhCisjIHJlbGF0aXZlIHBhdGggbmVlZHMgdG8gYmUgYWRqdXN0ZWQgZmlyc3QuCisjCisjICRhY19hdXhfZGlyL21pc3NpbmcKKyMgICAgZmFpbHMgd2hlbiBjYWxsZWQgZnJvbSBhIHN1YmRpcmVjdG9yeSBpZiAkYWNfYXV4X2RpciBpcyByZWxhdGl2ZQorIyAkdG9wX3NyY2Rpci8kYWNfYXV4X2Rpci9taXNzaW5nCisjICAgIGZhaWxzIGlmICRhY19hdXhfZGlyIGlzIGFic29sdXRlLAorIyAgICBmYWlscyB3aGVuIGNhbGxlZCBmcm9tIGEgc3ViZGlyZWN0b3J5IGluIGEgVlBBVEggYnVpbGQgd2l0aAorIyAgICAgICAgICBhIHJlbGF0aXZlICRhY19hdXhfZGlyCisjCisjIFRoZSByZWFzb24gb2YgdGhlIGxhdHRlciBmYWlsdXJlIGlzIHRoYXQgJHRvcF9zcmNkaXIgYW5kICRhY19hdXhfZGlyCisjIGFyZSBib3RoIHByZWZpeGVkIGJ5ICRzcmNkaXIuICBJbiBhbiBpbi1zb3VyY2UgYnVpbGQgdGhpcyBpcyB1c3VhbGx5CisjIGhhcm1sZXNzIGJlY2F1c2UgJHNyY2RpciBpcyBgLicsIGJ1dCB0aGluZ3Mgd2lsbCBicm9rZSB3aGVuIHlvdQorIyBzdGFydCBhIFZQQVRIIGJ1aWxkIG9yIHVzZSBhbiBhYnNvbHV0ZSAkc3JjZGlyLgorIworIyBTbyB3ZSBjb3VsZCB1c2Ugc29tZXRoaW5nIHNpbWlsYXIgdG8gJHRvcF9zcmNkaXIvJGFjX2F1eF9kaXIvbWlzc2luZywKKyMgaWZmIHdlIHN0cmlwIHRoZSBsZWFkaW5nICRzcmNkaXIgZnJvbSAkYWNfYXV4X2Rpci4gIFRoYXQgd291bGQgYmU6CisjICAgYW1fYXV4X2Rpcj0nXCQodG9wX3NyY2RpcikvJ2BleHByICIkYWNfYXV4X2RpciIgOiAiJHNyY2Rpci8vKlwoLipcKSJgCisjIGFuZCB0aGVuIHdlIHdvdWxkIGRlZmluZSAkTUlTU0lORyBhcworIyAgIE1JU1NJTkc9Ilwke1NIRUxMfSAkYW1fYXV4X2Rpci9taXNzaW5nIgorIyBUaGlzIHdpbGwgd29yayBhcyBsb25nIGFzIE1JU1NJTkcgaXMgbm90IGNhbGxlZCBmcm9tIGNvbmZpZ3VyZSwgYmVjYXVzZQorIyB1bmZvcnR1bmF0ZWx5ICQodG9wX3NyY2RpcikgaGFzIG5vIG1lYW5pbmcgaW4gY29uZmlndXJlLgorIyBIb3dldmVyIHRoZXJlIGFyZSBvdGhlciB2YXJpYWJsZXMsIGxpa2UgQ0MsIHdoaWNoIGFyZSBvZnRlbiB1c2VkIGluCisjIGNvbmZpZ3VyZSwgYW5kIGNvdWxkIHRoZXJlZm9yZSBub3QgdXNlIHRoaXMgImZpeGVkIiAkYWNfYXV4X2Rpci4KKyMKKyMgQW5vdGhlciBzb2x1dGlvbiwgdXNlZCBoZXJlLCBpcyB0byBhbHdheXMgZXhwYW5kICRhY19hdXhfZGlyIHRvIGFuCisjIGFic29sdXRlIFBBVEguICBUaGUgZHJhd2JhY2sgaXMgdGhhdCB1c2luZyBhYnNvbHV0ZSBwYXRocyBwcmV2ZW50IGEKKyMgY29uZmlndXJlZCB0cmVlIHRvIGJlIG1vdmVkIHdpdGhvdXQgcmVjb25maWd1cmF0aW9uLgorCitBQ19ERUZVTihbQU1fQVVYX0RJUl9FWFBBTkRdLAorW2RubCBSZWx5IG9uIGF1dG9jb25mIHRvIHNldCB1cCBDRFBBVEggcHJvcGVybHkuCitBQ19QUkVSRVEoWzIuNTBdKWRubAorIyBleHBhbmQgJGFjX2F1eF9kaXIgdG8gYW4gYWJzb2x1dGUgcGF0aAorYW1fYXV4X2Rpcj1gY2QgJGFjX2F1eF9kaXIgJiYgcHdkYAorXSkKKworIyBBTV9DT05ESVRJT05BTCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLSotIEF1dG9jb25mIC0qLQorCisjIENvcHlyaWdodCAoQykgMTk5NywgMjAwMCwgMjAwMSwgMjAwMywgMjAwNCwgMjAwNSwgMjAwNiwgMjAwOAorIyBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KKyMKKyMgVGhpcyBmaWxlIGlzIGZyZWUgc29mdHdhcmU7IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24KKyMgZ2l2ZXMgdW5saW1pdGVkIHBlcm1pc3Npb24gdG8gY29weSBhbmQvb3IgZGlzdHJpYnV0ZSBpdCwKKyMgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbnMsIGFzIGxvbmcgYXMgdGhpcyBub3RpY2UgaXMgcHJlc2VydmVkLgorCisjIHNlcmlhbCA5CisKKyMgQU1fQ09ORElUSU9OQUwoTkFNRSwgU0hFTEwtQ09ORElUSU9OKQorIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisjIERlZmluZSBhIGNvbmRpdGlvbmFsLgorQUNfREVGVU4oW0FNX0NPTkRJVElPTkFMXSwKK1tBQ19QUkVSRVEoMi41MilkbmwKKyBpZmVsc2UoWyQxXSwgW1RSVUVdLCAgW0FDX0ZBVEFMKFskMDogaW52YWxpZCBjb25kaXRpb246ICQxXSldLAorCVskMV0sIFtGQUxTRV0sIFtBQ19GQVRBTChbJDA6IGludmFsaWQgY29uZGl0aW9uOiAkMV0pXSlkbmwKK0FDX1NVQlNUKFskMV9UUlVFXSlkbmwKK0FDX1NVQlNUKFskMV9GQUxTRV0pZG5sCitfQU1fU1VCU1RfTk9UTUFLRShbJDFfVFJVRV0pZG5sCitfQU1fU1VCU1RfTk9UTUFLRShbJDFfRkFMU0VdKWRubAorbTRfZGVmaW5lKFtfQU1fQ09ORF9WQUxVRV8kMV0sIFskMl0pZG5sCitpZiAkMjsgdGhlbgorICAkMV9UUlVFPQorICAkMV9GQUxTRT0nIycKK2Vsc2UKKyAgJDFfVFJVRT0nIycKKyAgJDFfRkFMU0U9CitmaQorQUNfQ09ORklHX0NPTU1BTkRTX1BSRSgKK1tpZiB0ZXN0IC16ICIkeyQxX1RSVUV9IiAmJiB0ZXN0IC16ICIkeyQxX0ZBTFNFfSI7IHRoZW4KKyAgQUNfTVNHX0VSUk9SKFtbY29uZGl0aW9uYWwgIiQxIiB3YXMgbmV2ZXIgZGVmaW5lZC4KK1VzdWFsbHkgdGhpcyBtZWFucyB0aGUgbWFjcm8gd2FzIG9ubHkgaW52b2tlZCBjb25kaXRpb25hbGx5Ll1dKQorZmldKV0pCisKKyMgQ29weXJpZ2h0IChDKSAxOTk5LCAyMDAwLCAyMDAxLCAyMDAyLCAyMDAzLCAyMDA0LCAyMDA1LCAyMDA2LCAyMDA5CisjIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgorIworIyBUaGlzIGZpbGUgaXMgZnJlZSBzb2Z0d2FyZTsgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbgorIyBnaXZlcyB1bmxpbWl0ZWQgcGVybWlzc2lvbiB0byBjb3B5IGFuZC9vciBkaXN0cmlidXRlIGl0LAorIyB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9ucywgYXMgbG9uZyBhcyB0aGlzIG5vdGljZSBpcyBwcmVzZXJ2ZWQuCisKKyMgc2VyaWFsIDEwCisKKyMgVGhlcmUgYXJlIGEgZmV3IGRpcnR5IGhhY2tzIGJlbG93IHRvIGF2b2lkIGxldHRpbmcgYEFDX1BST0dfQ0MnIGJlCisjIHdyaXR0ZW4gaW4gY2xlYXIsIGluIHdoaWNoIGNhc2UgYXV0b21ha2UsIHdoZW4gcmVhZGluZyBhY2xvY2FsLm00LAorIyB3aWxsIHRoaW5rIGl0IHNlZXMgYSAqdXNlKiwgYW5kIHRoZXJlZm9yZSB3aWxsIHRyaWdnZXIgYWxsIGl0J3MKKyMgQyBzdXBwb3J0IG1hY2hpbmVyeS4gIEFsc28gbm90ZSB0aGF0IGl0IG1lYW5zIHRoYXQgYXV0b3NjYW4sIHNlZWluZworIyBDQyBldGMuIGluIHRoZSBNYWtlZmlsZSwgd2lsbCBhc2sgZm9yIGFuIEFDX1BST0dfQ0MgdXNlLi4uCisKKworIyBfQU1fREVQRU5ERU5DSUVTKE5BTUUpCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyMgU2VlIGhvdyB0aGUgY29tcGlsZXIgaW1wbGVtZW50cyBkZXBlbmRlbmN5IGNoZWNraW5nLgorIyBOQU1FIGlzICJDQyIsICJDWFgiLCAiR0NKIiwgb3IgIk9CSkMiLgorIyBXZSB0cnkgYSBmZXcgdGVjaG5pcXVlcyBhbmQgdXNlIHRoYXQgdG8gc2V0IGEgc2luZ2xlIGNhY2hlIHZhcmlhYmxlLgorIworIyBXZSBkb24ndCBBQ19SRVFVSVJFIHRoZSBjb3JyZXNwb25kaW5nIEFDX1BST0dfQ0Mgc2luY2UgdGhlIGxhdHRlciB3YXMKKyMgbW9kaWZpZWQgdG8gaW52b2tlIF9BTV9ERVBFTkRFTkNJRVMoQ0MpOyB3ZSB3b3VsZCBoYXZlIGEgY2lyY3VsYXIKKyMgZGVwZW5kZW5jeSwgYW5kIGdpdmVuIHRoYXQgdGhlIHVzZXIgaXMgbm90IGV4cGVjdGVkIHRvIHJ1biB0aGlzIG1hY3JvLAorIyBqdXN0IHJlbHkgb24gQUNfUFJPR19DQy4KK0FDX0RFRlVOKFtfQU1fREVQRU5ERU5DSUVTXSwKK1tBQ19SRVFVSVJFKFtBTV9TRVRfREVQRElSXSlkbmwKK0FDX1JFUVVJUkUoW0FNX09VVFBVVF9ERVBFTkRFTkNZX0NPTU1BTkRTXSlkbmwKK0FDX1JFUVVJUkUoW0FNX01BS0VfSU5DTFVERV0pZG5sCitBQ19SRVFVSVJFKFtBTV9ERVBfVFJBQ0tdKWRubAorCitpZmVsc2UoWyQxXSwgQ0MsICAgW2RlcGNjPSIkQ0MiICAgYW1fY29tcGlsZXJfbGlzdD1dLAorICAgICAgIFskMV0sIENYWCwgIFtkZXBjYz0iJENYWCIgIGFtX2NvbXBpbGVyX2xpc3Q9XSwKKyAgICAgICBbJDFdLCBPQkpDLCBbZGVwY2M9IiRPQkpDIiBhbV9jb21waWxlcl9saXN0PSdnY2MzIGdjYyddLAorICAgICAgIFskMV0sIFVQQywgIFtkZXBjYz0iJFVQQyIgIGFtX2NvbXBpbGVyX2xpc3Q9XSwKKyAgICAgICBbJDFdLCBHQ0osICBbZGVwY2M9IiRHQ0oiICBhbV9jb21waWxlcl9saXN0PSdnY2MzIGdjYyddLAorICAgICAgICAgICAgICAgICAgIFtkZXBjYz0iJCQxIiAgIGFtX2NvbXBpbGVyX2xpc3Q9XSkKKworQUNfQ0FDSEVfQ0hFQ0soW2RlcGVuZGVuY3kgc3R5bGUgb2YgJGRlcGNjXSwKKyAgICAgICAgICAgICAgIFthbV9jdl8kMV9kZXBlbmRlbmNpZXNfY29tcGlsZXJfdHlwZV0sCitbaWYgdGVzdCAteiAiJEFNREVQX1RSVUUiICYmIHRlc3QgLWYgIiRhbV9kZXBjb21wIjsgdGhlbgorICAjIFdlIG1ha2UgYSBzdWJkaXIgYW5kIGRvIHRoZSB0ZXN0cyB0aGVyZS4gIE90aGVyd2lzZSB3ZSBjYW4gZW5kIHVwCisgICMgbWFraW5nIGJvZ3VzIGZpbGVzIHRoYXQgd2UgZG9uJ3Qga25vdyBhYm91dCBhbmQgbmV2ZXIgcmVtb3ZlLiAgRm9yCisgICMgaW5zdGFuY2UgaXQgd2FzIHJlcG9ydGVkIHRoYXQgb24gSFAtVVggdGhlIGdjYyB0ZXN0IHdpbGwgZW5kIHVwCisgICMgbWFraW5nIGEgZHVtbXkgZmlsZSBuYW1lZCBgRCcgLS0gYmVjYXVzZSBgLU1EJyBtZWFucyBgcHV0IHRoZSBvdXRwdXQKKyAgIyBpbiBEJy4KKyAgbWtkaXIgY29uZnRlc3QuZGlyCisgICMgQ29weSBkZXBjb21wIHRvIHN1YmRpciBiZWNhdXNlIG90aGVyd2lzZSB3ZSB3b24ndCBmaW5kIGl0IGlmIHdlJ3JlCisgICMgdXNpbmcgYSByZWxhdGl2ZSBkaXJlY3RvcnkuCisgIGNwICIkYW1fZGVwY29tcCIgY29uZnRlc3QuZGlyCisgIGNkIGNvbmZ0ZXN0LmRpcgorICAjIFdlIHdpbGwgYnVpbGQgb2JqZWN0cyBhbmQgZGVwZW5kZW5jaWVzIGluIGEgc3ViZGlyZWN0b3J5IGJlY2F1c2UKKyAgIyBpdCBoZWxwcyB0byBkZXRlY3QgaW5hcHBsaWNhYmxlIGRlcGVuZGVuY3kgbW9kZXMuICBGb3IgaW5zdGFuY2UKKyAgIyBib3RoIFRydTY0J3MgY2MgYW5kIElDQyBzdXBwb3J0IC1NRCB0byBvdXRwdXQgZGVwZW5kZW5jaWVzIGFzIGEKKyAgIyBzaWRlIGVmZmVjdCBvZiBjb21waWxhdGlvbiwgYnV0IElDQyB3aWxsIHB1dCB0aGUgZGVwZW5kZW5jaWVzIGluCisgICMgdGhlIGN1cnJlbnQgZGlyZWN0b3J5IHdoaWxlIFRydTY0IHdpbGwgcHV0IHRoZW0gaW4gdGhlIG9iamVjdAorICAjIGRpcmVjdG9yeS4KKyAgbWtkaXIgc3ViCisKKyAgYW1fY3ZfJDFfZGVwZW5kZW5jaWVzX2NvbXBpbGVyX3R5cGU9bm9uZQorICBpZiB0ZXN0ICIkYW1fY29tcGlsZXJfbGlzdCIgPSAiIjsgdGhlbgorICAgICBhbV9jb21waWxlcl9saXN0PWBzZWQgLW4gWydzL14jKlwoW2EtekEtWjAtOV0qXCkpJC9cMS9wJ10gPCAuL2RlcGNvbXBgCisgIGZpCisgIGFtX191bml2ZXJzYWw9ZmFsc2UKKyAgbTRfY2FzZShbJDFdLCBbQ0NdLAorICAgIFtjYXNlICIgJGRlcGNjICIgaW4gIygKKyAgICAgKlwgLWFyY2hcICpcIC1hcmNoXCAqKSBhbV9fdW5pdmVyc2FsPXRydWUgOzsKKyAgICAgZXNhY10sCisgICAgW0NYWF0sCisgICAgW2Nhc2UgIiAkZGVwY2MgIiBpbiAjKAorICAgICAqXCAtYXJjaFwgKlwgLWFyY2hcICopIGFtX191bml2ZXJzYWw9dHJ1ZSA7OworICAgICBlc2FjXSkKKworICBmb3IgZGVwbW9kZSBpbiAkYW1fY29tcGlsZXJfbGlzdDsgZG8KKyAgICAjIFNldHVwIGEgc291cmNlIHdpdGggbWFueSBkZXBlbmRlbmNpZXMsIGJlY2F1c2Ugc29tZSBjb21waWxlcnMKKyAgICAjIGxpa2UgdG8gd3JhcCBsYXJnZSBkZXBlbmRlbmN5IGxpc3RzIG9uIGNvbHVtbiA4MCAod2l0aCBcKSwgYW5kCisgICAgIyB3ZSBzaG91bGQgbm90IGNob29zZSBhIGRlcGNvbXAgbW9kZSB3aGljaCBpcyBjb25mdXNlZCBieSB0aGlzLgorICAgICMKKyAgICAjIFdlIG5lZWQgdG8gcmVjcmVhdGUgdGhlc2UgZmlsZXMgZm9yIGVhY2ggdGVzdCwgYXMgdGhlIGNvbXBpbGVyIG1heQorICAgICMgb3ZlcndyaXRlIHNvbWUgb2YgdGhlbSB3aGVuIHRlc3Rpbmcgd2l0aCBvYnNjdXJlIGNvbW1hbmQgbGluZXMuCisgICAgIyBUaGlzIGhhcHBlbnMgYXQgbGVhc3Qgd2l0aCB0aGUgQUlYIEMgY29tcGlsZXIuCisgICAgOiA+IHN1Yi9jb25mdGVzdC5jCisgICAgZm9yIGkgaW4gMSAyIDMgNCA1IDY7IGRvCisgICAgICBlY2hvICcjaW5jbHVkZSAiY29uZnRzdCckaScuaCInID4+IHN1Yi9jb25mdGVzdC5jCisgICAgICAjIFVzaW5nIGA6ID4gc3ViL2NvbmZ0c3QkaS5oJyBjcmVhdGVzIG9ubHkgc3ViL2NvbmZ0c3QxLmggd2l0aAorICAgICAgIyBTb2xhcmlzIDgncyB7L3Vzcix9L2Jpbi9zaC4KKyAgICAgIHRvdWNoIHN1Yi9jb25mdHN0JGkuaAorICAgIGRvbmUKKyAgICBlY2hvICIke2FtX19pbmNsdWRlfSAke2FtX19xdW90ZX1zdWIvY29uZnRlc3QuUG8ke2FtX19xdW90ZX0iID4gY29uZm1mCisKKyAgICAjIFdlIGNoZWNrIHdpdGggYC1jJyBhbmQgYC1vJyBmb3IgdGhlIHNha2Ugb2YgdGhlICJkYXNobXN0ZG91dCIKKyAgICAjIG1vZGUuICBJdCB0dXJucyBvdXQgdGhhdCB0aGUgU3VuUHJvIEMrKyBjb21waWxlciBkb2VzIG5vdCBwcm9wZXJseQorICAgICMgaGFuZGxlIGAtTSAtbycsIGFuZCB3ZSBuZWVkIHRvIGRldGVjdCB0aGlzLiAgQWxzbywgc29tZSBJbnRlbAorICAgICMgdmVyc2lvbnMgaGFkIHRyb3VibGUgd2l0aCBvdXRwdXQgaW4gc3ViZGlycworICAgIGFtX19vYmo9c3ViL2NvbmZ0ZXN0LiR7T0JKRVhULW99CisgICAgYW1fX21pbnVzX29iaj0iLW8gJGFtX19vYmoiCisgICAgY2FzZSAkZGVwbW9kZSBpbgorICAgIGdjYykKKyAgICAgICMgVGhpcyBkZXBtb2RlIGNhdXNlcyBhIGNvbXBpbGVyIHJhY2UgaW4gdW5pdmVyc2FsIG1vZGUuCisgICAgICB0ZXN0ICIkYW1fX3VuaXZlcnNhbCIgPSBmYWxzZSB8fCBjb250aW51ZQorICAgICAgOzsKKyAgICBub3NpZGVlZmZlY3QpCisgICAgICAjIGFmdGVyIHRoaXMgdGFnLCBtZWNoYW5pc21zIGFyZSBub3QgYnkgc2lkZS1lZmZlY3QsIHNvIHRoZXknbGwKKyAgICAgICMgb25seSBiZSB1c2VkIHdoZW4gZXhwbGljaXRseSByZXF1ZXN0ZWQKKyAgICAgIGlmIHRlc3QgIngkZW5hYmxlX2RlcGVuZGVuY3lfdHJhY2tpbmciID0geHllczsgdGhlbgorCWNvbnRpbnVlCisgICAgICBlbHNlCisJYnJlYWsKKyAgICAgIGZpCisgICAgICA7OworICAgIG1zdmlzdWFsY3BwIHwgbXN2Y21zeXMpCisgICAgICAjIFRoaXMgY29tcGlsZXIgd29uJ3QgZ3JvayBgLWMgLW8nLCBidXQgYWxzbywgdGhlIG1pbnVzbyB0ZXN0IGhhcworICAgICAgIyBub3QgcnVuIHlldC4gIFRoZXNlIGRlcG1vZGVzIGFyZSBsYXRlIGVub3VnaCBpbiB0aGUgZ2FtZSwgYW5kCisgICAgICAjIHNvIHdlYWsgdGhhdCB0aGVpciBmdW5jdGlvbmluZyBzaG91bGQgbm90IGJlIGltcGFjdGVkLgorICAgICAgYW1fX29iaj1jb25mdGVzdC4ke09CSkVYVC1vfQorICAgICAgYW1fX21pbnVzX29iaj0KKyAgICAgIDs7CisgICAgbm9uZSkgYnJlYWsgOzsKKyAgICBlc2FjCisgICAgaWYgZGVwbW9kZT0kZGVwbW9kZSBcCisgICAgICAgc291cmNlPXN1Yi9jb25mdGVzdC5jIG9iamVjdD0kYW1fX29iaiBcCisgICAgICAgZGVwZmlsZT1zdWIvY29uZnRlc3QuUG8gdG1wZGVwZmlsZT1zdWIvY29uZnRlc3QuVFBvIFwKKyAgICAgICAkU0hFTEwgLi9kZXBjb21wICRkZXBjYyAtYyAkYW1fX21pbnVzX29iaiBzdWIvY29uZnRlc3QuYyBcCisgICAgICAgICA+L2Rldi9udWxsIDI+Y29uZnRlc3QuZXJyICYmCisgICAgICAgZ3JlcCBzdWIvY29uZnRzdDEuaCBzdWIvY29uZnRlc3QuUG8gPiAvZGV2L251bGwgMj4mMSAmJgorICAgICAgIGdyZXAgc3ViL2NvbmZ0c3Q2Lmggc3ViL2NvbmZ0ZXN0LlBvID4gL2Rldi9udWxsIDI+JjEgJiYKKyAgICAgICBncmVwICRhbV9fb2JqIHN1Yi9jb25mdGVzdC5QbyA+IC9kZXYvbnVsbCAyPiYxICYmCisgICAgICAgJHtNQUtFLW1ha2V9IC1zIC1mIGNvbmZtZiA+IC9kZXYvbnVsbCAyPiYxOyB0aGVuCisgICAgICAjIGljYyBkb2Vzbid0IGNob2tlIG9uIHVua25vd24gb3B0aW9ucywgaXQgd2lsbCBqdXN0IGlzc3VlIHdhcm5pbmdzCisgICAgICAjIG9yIHJlbWFya3MgKGV2ZW4gd2l0aCAtV2Vycm9yKS4gIFNvIHdlIGdyZXAgc3RkZXJyIGZvciBhbnkgbWVzc2FnZQorICAgICAgIyB0aGF0IHNheXMgYW4gb3B0aW9uIHdhcyBpZ25vcmVkIG9yIG5vdCBzdXBwb3J0ZWQuCisgICAgICAjIFdoZW4gZ2l2ZW4gLU1QLCBpY2MgNy4wIGFuZCA3LjEgY29tcGxhaW4gdGh1c2x5OgorICAgICAgIyAgIGljYzogQ29tbWFuZCBsaW5lIHdhcm5pbmc6IGlnbm9yaW5nIG9wdGlvbiAnLU0nOyBubyBhcmd1bWVudCByZXF1aXJlZAorICAgICAgIyBUaGUgZGlhZ25vc2lzIGNoYW5nZWQgaW4gaWNjIDguMDoKKyAgICAgICMgICBpY2M6IENvbW1hbmQgbGluZSByZW1hcms6IG9wdGlvbiAnLU1QJyBub3Qgc3VwcG9ydGVkCisgICAgICBpZiAoZ3JlcCAnaWdub3Jpbmcgb3B0aW9uJyBjb25mdGVzdC5lcnIgfHwKKyAgICAgICAgICBncmVwICdub3Qgc3VwcG9ydGVkJyBjb25mdGVzdC5lcnIpID4vZGV2L251bGwgMj4mMTsgdGhlbiA6OyBlbHNlCisgICAgICAgIGFtX2N2XyQxX2RlcGVuZGVuY2llc19jb21waWxlcl90eXBlPSRkZXBtb2RlCisgICAgICAgIGJyZWFrCisgICAgICBmaQorICAgIGZpCisgIGRvbmUKKworICBjZCAuLgorICBybSAtcmYgY29uZnRlc3QuZGlyCitlbHNlCisgIGFtX2N2XyQxX2RlcGVuZGVuY2llc19jb21waWxlcl90eXBlPW5vbmUKK2ZpCitdKQorQUNfU1VCU1QoWyQxREVQTU9ERV0sIFtkZXBtb2RlPSRhbV9jdl8kMV9kZXBlbmRlbmNpZXNfY29tcGlsZXJfdHlwZV0pCitBTV9DT05ESVRJT05BTChbYW1fX2Zhc3RkZXAkMV0sIFsKKyAgdGVzdCAieCRlbmFibGVfZGVwZW5kZW5jeV90cmFja2luZyIgIT0geG5vIFwKKyAgJiYgdGVzdCAiJGFtX2N2XyQxX2RlcGVuZGVuY2llc19jb21waWxlcl90eXBlIiA9IGdjYzNdKQorXSkKKworCisjIEFNX1NFVF9ERVBESVIKKyMgLS0tLS0tLS0tLS0tLQorIyBDaG9vc2UgYSBkaXJlY3RvcnkgbmFtZSBmb3IgZGVwZW5kZW5jeSBmaWxlcy4KKyMgVGhpcyBtYWNybyBpcyBBQ19SRVFVSVJFZCBpbiBfQU1fREVQRU5ERU5DSUVTCitBQ19ERUZVTihbQU1fU0VUX0RFUERJUl0sCitbQUNfUkVRVUlSRShbQU1fU0VUX0xFQURJTkdfRE9UXSlkbmwKK0FDX1NVQlNUKFtERVBESVJdLCBbIiR7YW1fX2xlYWRpbmdfZG90fWRlcHMiXSlkbmwKK10pCisKKworIyBBTV9ERVBfVFJBQ0sKKyMgLS0tLS0tLS0tLS0tCitBQ19ERUZVTihbQU1fREVQX1RSQUNLXSwKK1tBQ19BUkdfRU5BQkxFKGRlcGVuZGVuY3ktdHJhY2tpbmcsCitbICAtLWRpc2FibGUtZGVwZW5kZW5jeS10cmFja2luZyAgc3BlZWRzIHVwIG9uZS10aW1lIGJ1aWxkCisgIC0tZW5hYmxlLWRlcGVuZGVuY3ktdHJhY2tpbmcgICBkbyBub3QgcmVqZWN0IHNsb3cgZGVwZW5kZW5jeSBleHRyYWN0b3JzXSkKK2lmIHRlc3QgIngkZW5hYmxlX2RlcGVuZGVuY3lfdHJhY2tpbmciICE9IHhubzsgdGhlbgorICBhbV9kZXBjb21wPSIkYWNfYXV4X2Rpci9kZXBjb21wIgorICBBTURFUEJBQ0tTTEFTSD0nXCcKK2ZpCitBTV9DT05ESVRJT05BTChbQU1ERVBdLCBbdGVzdCAieCRlbmFibGVfZGVwZW5kZW5jeV90cmFja2luZyIgIT0geG5vXSkKK0FDX1NVQlNUKFtBTURFUEJBQ0tTTEFTSF0pZG5sCitfQU1fU1VCU1RfTk9UTUFLRShbQU1ERVBCQUNLU0xBU0hdKWRubAorXSkKKworIyBHZW5lcmF0ZSBjb2RlIHRvIHNldCB1cCBkZXBlbmRlbmN5IHRyYWNraW5nLiAgICAgICAgICAgICAgLSotIEF1dG9jb25mIC0qLQorCisjIENvcHlyaWdodCAoQykgMTk5OSwgMjAwMCwgMjAwMSwgMjAwMiwgMjAwMywgMjAwNCwgMjAwNSwgMjAwOAorIyBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KKyMKKyMgVGhpcyBmaWxlIGlzIGZyZWUgc29mdHdhcmU7IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24KKyMgZ2l2ZXMgdW5saW1pdGVkIHBlcm1pc3Npb24gdG8gY29weSBhbmQvb3IgZGlzdHJpYnV0ZSBpdCwKKyMgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbnMsIGFzIGxvbmcgYXMgdGhpcyBub3RpY2UgaXMgcHJlc2VydmVkLgorCisjc2VyaWFsIDUKKworIyBfQU1fT1VUUFVUX0RFUEVOREVOQ1lfQ09NTUFORFMKKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCitBQ19ERUZVTihbX0FNX09VVFBVVF9ERVBFTkRFTkNZX0NPTU1BTkRTXSwKK1t7CisgICMgQXV0b2NvbmYgMi42MiBxdW90ZXMgLS1maWxlIGFyZ3VtZW50cyBmb3IgZXZhbCwgYnV0IG5vdCB3aGVuIGZpbGVzCisgICMgYXJlIGxpc3RlZCB3aXRob3V0IC0tZmlsZS4gIExldCdzIHBsYXkgc2FmZSBhbmQgb25seSBlbmFibGUgdGhlIGV2YWwKKyAgIyBpZiB3ZSBkZXRlY3QgdGhlIHF1b3RpbmcuCisgIGNhc2UgJENPTkZJR19GSUxFUyBpbgorICAqXCcqKSBldmFsIHNldCB4ICIkQ09ORklHX0ZJTEVTIiA7OworICAqKSAgIHNldCB4ICRDT05GSUdfRklMRVMgOzsKKyAgZXNhYworICBzaGlmdAorICBmb3IgbWYKKyAgZG8KKyAgICAjIFN0cmlwIE1GIHNvIHdlIGVuZCB1cCB3aXRoIHRoZSBuYW1lIG9mIHRoZSBmaWxlLgorICAgIG1mPWBlY2hvICIkbWYiIHwgc2VkIC1lICdzLzouKiQvLydgCisgICAgIyBDaGVjayB3aGV0aGVyIHRoaXMgaXMgYW4gQXV0b21ha2UgZ2VuZXJhdGVkIE1ha2VmaWxlIG9yIG5vdC4KKyAgICAjIFdlIHVzZWQgdG8gbWF0Y2ggb25seSB0aGUgZmlsZXMgbmFtZWQgYE1ha2VmaWxlLmluJywgYnV0CisgICAgIyBzb21lIHBlb3BsZSByZW5hbWUgdGhlbTsgc28gaW5zdGVhZCB3ZSBsb29rIGF0IHRoZSBmaWxlIGNvbnRlbnQuCisgICAgIyBHcmVwJ2luZyB0aGUgZmlyc3QgbGluZSBpcyBub3QgZW5vdWdoOiBzb21lIHBlb3BsZSBwb3N0LXByb2Nlc3MKKyAgICAjIGVhY2ggTWFrZWZpbGUuaW4gYW5kIGFkZCBhIG5ldyBsaW5lIG9uIHRvcCBvZiBlYWNoIGZpbGUgdG8gc2F5IHNvLgorICAgICMgR3JlcCdpbmcgdGhlIHdob2xlIGZpbGUgaXMgbm90IGdvb2QgZWl0aGVyOiBBSVggZ3JlcCBoYXMgYSBsaW5lCisgICAgIyBsaW1pdCBvZiAyMDQ4LCBidXQgYWxsIHNlZCdzIHdlIGtub3cgaGF2ZSB1bmRlcnN0YW5kIGF0IGxlYXN0IDQwMDAuCisgICAgaWYgc2VkIC1uICdzLF4jLipnZW5lcmF0ZWQgYnkgYXV0b21ha2UuKixYLHAnICIkbWYiIHwgZ3JlcCBYID4vZGV2L251bGwgMj4mMTsgdGhlbgorICAgICAgZGlycGFydD1gQVNfRElSTkFNRSgiJG1mIilgCisgICAgZWxzZQorICAgICAgY29udGludWUKKyAgICBmaQorICAgICMgRXh0cmFjdCB0aGUgZGVmaW5pdGlvbiBvZiBERVBESVIsIGFtX19pbmNsdWRlLCBhbmQgYW1fX3F1b3RlCisgICAgIyBmcm9tIHRoZSBNYWtlZmlsZSB3aXRob3V0IHJ1bm5pbmcgYG1ha2UnLgorICAgIERFUERJUj1gc2VkIC1uICdzL15ERVBESVIgPSAvL3AnIDwgIiRtZiJgCisgICAgdGVzdCAteiAiJERFUERJUiIgJiYgY29udGludWUKKyAgICBhbV9faW5jbHVkZT1gc2VkIC1uICdzL15hbV9faW5jbHVkZSA9IC8vcCcgPCAiJG1mImAKKyAgICB0ZXN0IC16ICJhbV9faW5jbHVkZSIgJiYgY29udGludWUKKyAgICBhbV9fcXVvdGU9YHNlZCAtbiAncy9eYW1fX3F1b3RlID0gLy9wJyA8ICIkbWYiYAorICAgICMgV2hlbiB1c2luZyBhbnNpMmtuciwgVSBtYXkgYmUgZW1wdHkgb3IgYW4gdW5kZXJzY29yZTsgZXhwYW5kIGl0CisgICAgVT1gc2VkIC1uICdzL15VID0gLy9wJyA8ICIkbWYiYAorICAgICMgRmluZCBhbGwgZGVwZW5kZW5jeSBvdXRwdXQgZmlsZXMsIHRoZXkgYXJlIGluY2x1ZGVkIGZpbGVzIHdpdGgKKyAgICAjICQoREVQRElSKSBpbiB0aGVpciBuYW1lcy4gIFdlIGludm9rZSBzZWQgdHdpY2UgYmVjYXVzZSBpdCBpcyB0aGUKKyAgICAjIHNpbXBsZXN0IGFwcHJvYWNoIHRvIGNoYW5naW5nICQoREVQRElSKSB0byBpdHMgYWN0dWFsIHZhbHVlIGluIHRoZQorICAgICMgZXhwYW5zaW9uLgorICAgIGZvciBmaWxlIGluIGBzZWQgLW4gIgorICAgICAgcy9eJGFtX19pbmNsdWRlICRhbV9fcXVvdGVcKC4qKERFUERJUikuKlwpJGFtX19xdW90ZSInJC9cMS9wJyA8IiRtZiIgfCBcCisJIHNlZCAtZSAncy9cJChERVBESVIpLyciJERFUERJUiInL2cnIC1lICdzL1wkVS8nIiRVIicvZydgOyBkbworICAgICAgIyBNYWtlIHN1cmUgdGhlIGRpcmVjdG9yeSBleGlzdHMuCisgICAgICB0ZXN0IC1mICIkZGlycGFydC8kZmlsZSIgJiYgY29udGludWUKKyAgICAgIGZkaXI9YEFTX0RJUk5BTUUoWyIkZmlsZSJdKWAKKyAgICAgIEFTX01LRElSX1AoWyRkaXJwYXJ0LyRmZGlyXSkKKyAgICAgICMgZWNobyAiY3JlYXRpbmcgJGRpcnBhcnQvJGZpbGUiCisgICAgICBlY2hvICcjIGR1bW15JyA+ICIkZGlycGFydC8kZmlsZSIKKyAgICBkb25lCisgIGRvbmUKK30KK10pIyBfQU1fT1VUUFVUX0RFUEVOREVOQ1lfQ09NTUFORFMKKworCisjIEFNX09VVFBVVF9ERVBFTkRFTkNZX0NPTU1BTkRTCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisjIFRoaXMgbWFjcm8gc2hvdWxkIG9ubHkgYmUgaW52b2tlZCBvbmNlIC0tIHVzZSB2aWEgQUNfUkVRVUlSRS4KKyMKKyMgVGhpcyBjb2RlIGlzIG9ubHkgcmVxdWlyZWQgd2hlbiBhdXRvbWF0aWMgZGVwZW5kZW5jeSB0cmFja2luZworIyBpcyBlbmFibGVkLiAgRklYTUUuICBUaGlzIGNyZWF0ZXMgZWFjaCBgLlAnIGZpbGUgdGhhdCB3ZSB3aWxsCisjIG5lZWQgaW4gb3JkZXIgdG8gYm9vdHN0cmFwIHRoZSBkZXBlbmRlbmN5IGhhbmRsaW5nIGNvZGUuCitBQ19ERUZVTihbQU1fT1VUUFVUX0RFUEVOREVOQ1lfQ09NTUFORFNdLAorW0FDX0NPTkZJR19DT01NQU5EUyhbZGVwZmlsZXNdLAorICAgICBbdGVzdCB4IiRBTURFUF9UUlVFIiAhPSB4IiIgfHwgX0FNX09VVFBVVF9ERVBFTkRFTkNZX0NPTU1BTkRTXSwKKyAgICAgW0FNREVQX1RSVUU9IiRBTURFUF9UUlVFIiBhY19hdXhfZGlyPSIkYWNfYXV4X2RpciJdKQorXSkKKworIyBEbyBhbGwgdGhlIHdvcmsgZm9yIEF1dG9tYWtlLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLSotIEF1dG9jb25mIC0qLQorCisjIENvcHlyaWdodCAoQykgMTk5NiwgMTk5NywgMTk5OCwgMTk5OSwgMjAwMCwgMjAwMSwgMjAwMiwgMjAwMywgMjAwNCwKKyMgMjAwNSwgMjAwNiwgMjAwOCwgMjAwOSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KKyMKKyMgVGhpcyBmaWxlIGlzIGZyZWUgc29mdHdhcmU7IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24KKyMgZ2l2ZXMgdW5saW1pdGVkIHBlcm1pc3Npb24gdG8gY29weSBhbmQvb3IgZGlzdHJpYnV0ZSBpdCwKKyMgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbnMsIGFzIGxvbmcgYXMgdGhpcyBub3RpY2UgaXMgcHJlc2VydmVkLgorCisjIHNlcmlhbCAxNgorCisjIFRoaXMgbWFjcm8gYWN0dWFsbHkgZG9lcyB0b28gbXVjaC4gIFNvbWUgY2hlY2tzIGFyZSBvbmx5IG5lZWRlZCBpZgorIyB5b3VyIHBhY2thZ2UgZG9lcyBjZXJ0YWluIHRoaW5ncy4gIEJ1dCB0aGlzIGlzbid0IHJlYWxseSBhIGJpZyBkZWFsLgorCisjIEFNX0lOSVRfQVVUT01BS0UoUEFDS0FHRSwgVkVSU0lPTiwgW05PLURFRklORV0pCisjIEFNX0lOSVRfQVVUT01BS0UoW09QVElPTlNdKQorIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIyBUaGUgY2FsbCB3aXRoIFBBQ0tBR0UgYW5kIFZFUlNJT04gYXJndW1lbnRzIGlzIHRoZSBvbGQgc3R5bGUKKyMgY2FsbCAocHJlIGF1dG9jb25mLTIuNTApLCB3aGljaCBpcyBiZWluZyBwaGFzZWQgb3V0LiAgUEFDS0FHRQorIyBhbmQgVkVSU0lPTiBzaG91bGQgbm93IGJlIHBhc3NlZCB0byBBQ19JTklUIGFuZCByZW1vdmVkIGZyb20KKyMgdGhlIGNhbGwgdG8gQU1fSU5JVF9BVVRPTUFLRS4KKyMgV2Ugc3VwcG9ydCBib3RoIGNhbGwgc3R5bGVzIGZvciB0aGUgdHJhbnNpdGlvbi4gIEFmdGVyCisjIHRoZSBuZXh0IEF1dG9tYWtlIHJlbGVhc2UsIEF1dG9jb25mIGNhbiBtYWtlIHRoZSBBQ19JTklUCisjIGFyZ3VtZW50cyBtYW5kYXRvcnksIGFuZCB0aGVuIHdlIGNhbiBkZXBlbmQgb24gYSBuZXcgQXV0b2NvbmYKKyMgcmVsZWFzZSBhbmQgZHJvcCB0aGUgb2xkIGNhbGwgc3VwcG9ydC4KK0FDX0RFRlVOKFtBTV9JTklUX0FVVE9NQUtFXSwKK1tBQ19QUkVSRVEoWzIuNjJdKWRubAorZG5sIEF1dG9jb25mIHdhbnRzIHRvIGRpc2FsbG93IEFNXyBuYW1lcy4gIFdlIGV4cGxpY2l0bHkgYWxsb3cKK2RubCB0aGUgb25lcyB3ZSBjYXJlIGFib3V0LgorbTRfcGF0dGVybl9hbGxvdyhbXkFNX1tBLVpdK0ZMQUdTJF0pZG5sCitBQ19SRVFVSVJFKFtBTV9TRVRfQ1VSUkVOVF9BVVRPTUFLRV9WRVJTSU9OXSlkbmwKK0FDX1JFUVVJUkUoW0FDX1BST0dfSU5TVEFMTF0pZG5sCitpZiB0ZXN0ICJgY2QgJHNyY2RpciAmJiBwd2RgIiAhPSAiYHB3ZGAiOyB0aGVuCisgICMgVXNlIC1JJChzcmNkaXIpIG9ubHkgd2hlbiAkKHNyY2RpcikgIT0gLiwgc28gdGhhdCBtYWtlJ3Mgb3V0cHV0CisgICMgaXMgbm90IHBvbGx1dGVkIHdpdGggcmVwZWF0ZWQgIi1JLiIKKyAgQUNfU1VCU1QoW2FtX19pc3JjXSwgWycgLUkkKHNyY2RpciknXSlfQU1fU1VCU1RfTk9UTUFLRShbYW1fX2lzcmNdKWRubAorICAjIHRlc3QgdG8gc2VlIGlmIHNyY2RpciBhbHJlYWR5IGNvbmZpZ3VyZWQKKyAgaWYgdGVzdCAtZiAkc3JjZGlyL2NvbmZpZy5zdGF0dXM7IHRoZW4KKyAgICBBQ19NU0dfRVJST1IoW3NvdXJjZSBkaXJlY3RvcnkgYWxyZWFkeSBjb25maWd1cmVkOyBydW4gIm1ha2UgZGlzdGNsZWFuIiB0aGVyZSBmaXJzdF0pCisgIGZpCitmaQorCisjIHRlc3Qgd2hldGhlciB3ZSBoYXZlIGN5Z3BhdGgKK2lmIHRlc3QgLXogIiRDWUdQQVRIX1ciOyB0aGVuCisgIGlmIChjeWdwYXRoIC0tdmVyc2lvbikgPi9kZXYvbnVsbCAyPi9kZXYvbnVsbDsgdGhlbgorICAgIENZR1BBVEhfVz0nY3lncGF0aCAtdycKKyAgZWxzZQorICAgIENZR1BBVEhfVz1lY2hvCisgIGZpCitmaQorQUNfU1VCU1QoW0NZR1BBVEhfV10pCisKKyMgRGVmaW5lIHRoZSBpZGVudGl0eSBvZiB0aGUgcGFja2FnZS4KK2RubCBEaXN0aW5ndWlzaCBiZXR3ZWVuIG9sZC1zdHlsZSBhbmQgbmV3LXN0eWxlIGNhbGxzLgorbTRfaWZ2YWwoWyQyXSwKK1ttNF9pZnZhbChbJDNdLCBbX0FNX1NFVF9PUFRJT04oW25vLWRlZmluZV0pXSlkbmwKKyBBQ19TVUJTVChbUEFDS0FHRV0sIFskMV0pZG5sCisgQUNfU1VCU1QoW1ZFUlNJT05dLCBbJDJdKV0sCitbX0FNX1NFVF9PUFRJT05TKFskMV0pZG5sCitkbmwgRGlhZ25vc2Ugb2xkLXN0eWxlIEFDX0lOSVQgd2l0aCBuZXctc3R5bGUgQU1fQVVUT01BS0VfSU5JVC4KK200X2lmKG00X2lmZGVmKFtBQ19QQUNLQUdFX05BTUVdLCAxKW00X2lmZGVmKFtBQ19QQUNLQUdFX1ZFUlNJT05dLCAxKSwgMTEsLAorICBbbTRfZmF0YWwoW0FDX0lOSVQgc2hvdWxkIGJlIGNhbGxlZCB3aXRoIHBhY2thZ2UgYW5kIHZlcnNpb24gYXJndW1lbnRzXSldKWRubAorIEFDX1NVQlNUKFtQQUNLQUdFXSwgWydBQ19QQUNLQUdFX1RBUk5BTUUnXSlkbmwKKyBBQ19TVUJTVChbVkVSU0lPTl0sIFsnQUNfUEFDS0FHRV9WRVJTSU9OJ10pXSlkbmwKKworX0FNX0lGX09QVElPTihbbm8tZGVmaW5lXSwsCitbQUNfREVGSU5FX1VOUVVPVEVEKFBBQ0tBR0UsICIkUEFDS0FHRSIsIFtOYW1lIG9mIHBhY2thZ2VdKQorIEFDX0RFRklORV9VTlFVT1RFRChWRVJTSU9OLCAiJFZFUlNJT04iLCBbVmVyc2lvbiBudW1iZXIgb2YgcGFja2FnZV0pXSlkbmwKKworIyBTb21lIHRvb2xzIEF1dG9tYWtlIG5lZWRzLgorQUNfUkVRVUlSRShbQU1fU0FOSVRZX0NIRUNLXSlkbmwKK0FDX1JFUVVJUkUoW0FDX0FSR19QUk9HUkFNXSlkbmwKK0FNX01JU1NJTkdfUFJPRyhBQ0xPQ0FMLCBhY2xvY2FsLSR7YW1fX2FwaV92ZXJzaW9ufSkKK0FNX01JU1NJTkdfUFJPRyhBVVRPQ09ORiwgYXV0b2NvbmYpCitBTV9NSVNTSU5HX1BST0coQVVUT01BS0UsIGF1dG9tYWtlLSR7YW1fX2FwaV92ZXJzaW9ufSkKK0FNX01JU1NJTkdfUFJPRyhBVVRPSEVBREVSLCBhdXRvaGVhZGVyKQorQU1fTUlTU0lOR19QUk9HKE1BS0VJTkZPLCBtYWtlaW5mbykKK0FDX1JFUVVJUkUoW0FNX1BST0dfSU5TVEFMTF9TSF0pZG5sCitBQ19SRVFVSVJFKFtBTV9QUk9HX0lOU1RBTExfU1RSSVBdKWRubAorQUNfUkVRVUlSRShbQU1fUFJPR19NS0RJUl9QXSlkbmwKKyMgV2UgbmVlZCBhd2sgZm9yIHRoZSAiY2hlY2siIHRhcmdldC4gIFRoZSBzeXN0ZW0gImF3ayIgaXMgYmFkIG9uCisjIHNvbWUgcGxhdGZvcm1zLgorQUNfUkVRVUlSRShbQUNfUFJPR19BV0tdKWRubAorQUNfUkVRVUlSRShbQUNfUFJPR19NQUtFX1NFVF0pZG5sCitBQ19SRVFVSVJFKFtBTV9TRVRfTEVBRElOR19ET1RdKWRubAorX0FNX0lGX09QVElPTihbdGFyLXVzdGFyXSwgW19BTV9QUk9HX1RBUihbdXN0YXJdKV0sCisJICAgICAgW19BTV9JRl9PUFRJT04oW3Rhci1wYXhdLCBbX0FNX1BST0dfVEFSKFtwYXhdKV0sCisJCQkgICAgIFtfQU1fUFJPR19UQVIoW3Y3XSldKV0pCitfQU1fSUZfT1BUSU9OKFtuby1kZXBlbmRlbmNpZXNdLCwKK1tBQ19QUk9WSURFX0lGRUxTRShbQUNfUFJPR19DQ10sCisJCSAgW19BTV9ERVBFTkRFTkNJRVMoQ0MpXSwKKwkJICBbZGVmaW5lKFtBQ19QUk9HX0NDXSwKKwkJCSAgZGVmbihbQUNfUFJPR19DQ10pW19BTV9ERVBFTkRFTkNJRVMoQ0MpXSldKWRubAorQUNfUFJPVklERV9JRkVMU0UoW0FDX1BST0dfQ1hYXSwKKwkJICBbX0FNX0RFUEVOREVOQ0lFUyhDWFgpXSwKKwkJICBbZGVmaW5lKFtBQ19QUk9HX0NYWF0sCisJCQkgIGRlZm4oW0FDX1BST0dfQ1hYXSlbX0FNX0RFUEVOREVOQ0lFUyhDWFgpXSldKWRubAorQUNfUFJPVklERV9JRkVMU0UoW0FDX1BST0dfT0JKQ10sCisJCSAgW19BTV9ERVBFTkRFTkNJRVMoT0JKQyldLAorCQkgIFtkZWZpbmUoW0FDX1BST0dfT0JKQ10sCisJCQkgIGRlZm4oW0FDX1BST0dfT0JKQ10pW19BTV9ERVBFTkRFTkNJRVMoT0JKQyldKV0pZG5sCitdKQorX0FNX0lGX09QVElPTihbc2lsZW50LXJ1bGVzXSwgW0FDX1JFUVVJUkUoW0FNX1NJTEVOVF9SVUxFU10pXSlkbmwKK2RubCBUaGUgYHBhcmFsbGVsLXRlc3RzJyBkcml2ZXIgbWF5IG5lZWQgdG8ga25vdyBhYm91dCBFWEVFWFQsIHNvIGFkZCB0aGUKK2RubCBgYW1fX0VYRUVYVCcgY29uZGl0aW9uYWwgaWYgX0FNX0NPTVBJTEVSX0VYRUVYVCB3YXMgc2Vlbi4gIFRoaXMgbWFjcm8KK2RubCBpcyBob29rZWQgb250byBfQUNfQ09NUElMRVJfRVhFRVhUIGVhcmx5LCBzZWUgYmVsb3cuCitBQ19DT05GSUdfQ09NTUFORFNfUFJFKGRubAorW200X3Byb3ZpZGVfaWYoW19BTV9DT01QSUxFUl9FWEVFWFRdLAorICBbQU1fQ09ORElUSU9OQUwoW2FtX19FWEVFWFRdLCBbdGVzdCAtbiAiJEVYRUVYVCJdKV0pXSlkbmwKK10pCisKK2RubCBIb29rIGludG8gYF9BQ19DT01QSUxFUl9FWEVFWFQnIGVhcmx5IHRvIGxlYXJuIGl0cyBleHBhbnNpb24uICBEbyBub3QKK2RubCBhZGQgdGhlIGNvbmRpdGlvbmFsIHJpZ2h0IGhlcmUsIGFzIF9BQ19DT01QSUxFUl9FWEVFWFQgbWF5IGJlIGZ1cnRoZXIKK2RubCBtYW5nbGVkIGJ5IEF1dG9jb25mIGFuZCBydW4gaW4gYSBzaGVsbCBjb25kaXRpb25hbCBzdGF0ZW1lbnQuCittNF9kZWZpbmUoW19BQ19DT01QSUxFUl9FWEVFWFRdLAorbTRfZGVmbihbX0FDX0NPTVBJTEVSX0VYRUVYVF0pW200X3Byb3ZpZGUoW19BTV9DT01QSUxFUl9FWEVFWFRdKV0pCisKKworIyBXaGVuIGNvbmZpZy5zdGF0dXMgZ2VuZXJhdGVzIGEgaGVhZGVyLCB3ZSBtdXN0IHVwZGF0ZSB0aGUgc3RhbXAtaCBmaWxlLgorIyBUaGlzIGZpbGUgcmVzaWRlcyBpbiB0aGUgc2FtZSBkaXJlY3RvcnkgYXMgdGhlIGNvbmZpZyBoZWFkZXIKKyMgdGhhdCBpcyBnZW5lcmF0ZWQuICBUaGUgc3RhbXAgZmlsZXMgYXJlIG51bWJlcmVkIHRvIGhhdmUgZGlmZmVyZW50IG5hbWVzLgorCisjIEF1dG9jb25mIGNhbGxzIF9BQ19BTV9DT05GSUdfSEVBREVSX0hPT0sgKHdoZW4gZGVmaW5lZCkgaW4gdGhlCisjIGxvb3Agd2hlcmUgY29uZmlnLnN0YXR1cyBjcmVhdGVzIHRoZSBoZWFkZXJzLCBzbyB3ZSBjYW4gZ2VuZXJhdGUKKyMgb3VyIHN0YW1wIGZpbGVzIHRoZXJlLgorQUNfREVGVU4oW19BQ19BTV9DT05GSUdfSEVBREVSX0hPT0tdLAorWyMgQ29tcHV0ZSAkMSdzIGluZGV4IGluICRjb25maWdfaGVhZGVycy4KK19hbV9hcmc9JDEKK19hbV9zdGFtcF9jb3VudD0xCitmb3IgX2FtX2hlYWRlciBpbiAkY29uZmlnX2hlYWRlcnMgOjsgZG8KKyAgY2FzZSAkX2FtX2hlYWRlciBpbgorICAgICRfYW1fYXJnIHwgJF9hbV9hcmc6KiApCisgICAgICBicmVhayA7OworICAgICogKQorICAgICAgX2FtX3N0YW1wX2NvdW50PWBleHByICRfYW1fc3RhbXBfY291bnQgKyAxYCA7OworICBlc2FjCitkb25lCitlY2hvICJ0aW1lc3RhbXAgZm9yICRfYW1fYXJnIiA+YEFTX0RJUk5BTUUoWyIkX2FtX2FyZyJdKWAvc3RhbXAtaFtdJF9hbV9zdGFtcF9jb3VudF0pCisKKyMgQ29weXJpZ2h0IChDKSAyMDAxLCAyMDAzLCAyMDA1LCAyMDA4ICBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KKyMKKyMgVGhpcyBmaWxlIGlzIGZyZWUgc29mdHdhcmU7IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24KKyMgZ2l2ZXMgdW5saW1pdGVkIHBlcm1pc3Npb24gdG8gY29weSBhbmQvb3IgZGlzdHJpYnV0ZSBpdCwKKyMgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbnMsIGFzIGxvbmcgYXMgdGhpcyBub3RpY2UgaXMgcHJlc2VydmVkLgorCisjIEFNX1BST0dfSU5TVEFMTF9TSAorIyAtLS0tLS0tLS0tLS0tLS0tLS0KKyMgRGVmaW5lICRpbnN0YWxsX3NoLgorQUNfREVGVU4oW0FNX1BST0dfSU5TVEFMTF9TSF0sCitbQUNfUkVRVUlSRShbQU1fQVVYX0RJUl9FWFBBTkRdKWRubAoraWYgdGVzdCB4IiR7aW5zdGFsbF9zaH0iICE9IHhzZXQ7IHRoZW4KKyAgY2FzZSAkYW1fYXV4X2RpciBpbgorICAqXCAqIHwgKlwJKikKKyAgICBpbnN0YWxsX3NoPSJcJHtTSEVMTH0gJyRhbV9hdXhfZGlyL2luc3RhbGwtc2gnIiA7OworICAqKQorICAgIGluc3RhbGxfc2g9Ilwke1NIRUxMfSAkYW1fYXV4X2Rpci9pbnN0YWxsLXNoIgorICBlc2FjCitmaQorQUNfU1VCU1QoaW5zdGFsbF9zaCldKQorCisjIENvcHlyaWdodCAoQykgMjAwMywgMjAwNSAgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCisjCisjIFRoaXMgZmlsZSBpcyBmcmVlIHNvZnR3YXJlOyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uCisjIGdpdmVzIHVubGltaXRlZCBwZXJtaXNzaW9uIHRvIGNvcHkgYW5kL29yIGRpc3RyaWJ1dGUgaXQsCisjIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb25zLCBhcyBsb25nIGFzIHRoaXMgbm90aWNlIGlzIHByZXNlcnZlZC4KKworIyBzZXJpYWwgMgorCisjIENoZWNrIHdoZXRoZXIgdGhlIHVuZGVybHlpbmcgZmlsZS1zeXN0ZW0gc3VwcG9ydHMgZmlsZW5hbWVzCisjIHdpdGggYSBsZWFkaW5nIGRvdC4gIEZvciBpbnN0YW5jZSBNUy1ET1MgZG9lc24ndC4KK0FDX0RFRlVOKFtBTV9TRVRfTEVBRElOR19ET1RdLAorW3JtIC1yZiAudHN0IDI+L2Rldi9udWxsCitta2RpciAudHN0IDI+L2Rldi9udWxsCitpZiB0ZXN0IC1kIC50c3Q7IHRoZW4KKyAgYW1fX2xlYWRpbmdfZG90PS4KK2Vsc2UKKyAgYW1fX2xlYWRpbmdfZG90PV8KK2ZpCitybWRpciAudHN0IDI+L2Rldi9udWxsCitBQ19TVUJTVChbYW1fX2xlYWRpbmdfZG90XSldKQorCisjIENoZWNrIHRvIHNlZSBob3cgJ21ha2UnIHRyZWF0cyBpbmNsdWRlcy4JICAgICAgICAgICAgLSotIEF1dG9jb25mIC0qLQorCisjIENvcHlyaWdodCAoQykgMjAwMSwgMjAwMiwgMjAwMywgMjAwNSwgMjAwOSAgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCisjCisjIFRoaXMgZmlsZSBpcyBmcmVlIHNvZnR3YXJlOyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uCisjIGdpdmVzIHVubGltaXRlZCBwZXJtaXNzaW9uIHRvIGNvcHkgYW5kL29yIGRpc3RyaWJ1dGUgaXQsCisjIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb25zLCBhcyBsb25nIGFzIHRoaXMgbm90aWNlIGlzIHByZXNlcnZlZC4KKworIyBzZXJpYWwgNAorCisjIEFNX01BS0VfSU5DTFVERSgpCisjIC0tLS0tLS0tLS0tLS0tLS0tCisjIENoZWNrIHRvIHNlZSBob3cgbWFrZSB0cmVhdHMgaW5jbHVkZXMuCitBQ19ERUZVTihbQU1fTUFLRV9JTkNMVURFXSwKK1thbV9tYWtlPSR7TUFLRS1tYWtlfQorY2F0ID4gY29uZmluYyA8PCAnRU5EJworYW1fX2RvaXQ6CisJQGVjaG8gdGhpcyBpcyB0aGUgYW1fX2RvaXQgdGFyZ2V0CisuUEhPTlk6IGFtX19kb2l0CitFTkQKKyMgSWYgd2UgZG9uJ3QgZmluZCBhbiBpbmNsdWRlIGRpcmVjdGl2ZSwganVzdCBjb21tZW50IG91dCB0aGUgY29kZS4KK0FDX01TR19DSEVDS0lORyhbZm9yIHN0eWxlIG9mIGluY2x1ZGUgdXNlZCBieSAkYW1fbWFrZV0pCithbV9faW5jbHVkZT0iIyIKK2FtX19xdW90ZT0KK19hbV9yZXN1bHQ9bm9uZQorIyBGaXJzdCB0cnkgR05VIG1ha2Ugc3R5bGUgaW5jbHVkZS4KK2VjaG8gImluY2x1ZGUgY29uZmluYyIgPiBjb25mbWYKKyMgSWdub3JlIGFsbCBraW5kcyBvZiBhZGRpdGlvbmFsIG91dHB1dCBmcm9tIGBtYWtlJy4KK2Nhc2UgYCRhbV9tYWtlIC1zIC1mIGNvbmZtZiAyPiAvZGV2L251bGxgIGluICMoCisqdGhlXCBhbV9fZG9pdFwgdGFyZ2V0KikKKyAgYW1fX2luY2x1ZGU9aW5jbHVkZQorICBhbV9fcXVvdGU9CisgIF9hbV9yZXN1bHQ9R05VCisgIDs7Citlc2FjCisjIE5vdyB0cnkgQlNEIG1ha2Ugc3R5bGUgaW5jbHVkZS4KK2lmIHRlc3QgIiRhbV9faW5jbHVkZSIgPSAiIyI7IHRoZW4KKyAgIGVjaG8gJy5pbmNsdWRlICJjb25maW5jIicgPiBjb25mbWYKKyAgIGNhc2UgYCRhbV9tYWtlIC1zIC1mIGNvbmZtZiAyPiAvZGV2L251bGxgIGluICMoCisgICAqdGhlXCBhbV9fZG9pdFwgdGFyZ2V0KikKKyAgICAgYW1fX2luY2x1ZGU9LmluY2x1ZGUKKyAgICAgYW1fX3F1b3RlPSJcIiIKKyAgICAgX2FtX3Jlc3VsdD1CU0QKKyAgICAgOzsKKyAgIGVzYWMKK2ZpCitBQ19TVUJTVChbYW1fX2luY2x1ZGVdKQorQUNfU1VCU1QoW2FtX19xdW90ZV0pCitBQ19NU0dfUkVTVUxUKFskX2FtX3Jlc3VsdF0pCitybSAtZiBjb25maW5jIGNvbmZtZgorXSkKKworIyBGYWtlIHRoZSBleGlzdGVuY2Ugb2YgcHJvZ3JhbXMgdGhhdCBHTlUgbWFpbnRhaW5lcnMgdXNlLiAgLSotIEF1dG9jb25mIC0qLQorCisjIENvcHlyaWdodCAoQykgMTk5NywgMTk5OSwgMjAwMCwgMjAwMSwgMjAwMywgMjAwNCwgMjAwNSwgMjAwOAorIyBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KKyMKKyMgVGhpcyBmaWxlIGlzIGZyZWUgc29mdHdhcmU7IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24KKyMgZ2l2ZXMgdW5saW1pdGVkIHBlcm1pc3Npb24gdG8gY29weSBhbmQvb3IgZGlzdHJpYnV0ZSBpdCwKKyMgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbnMsIGFzIGxvbmcgYXMgdGhpcyBub3RpY2UgaXMgcHJlc2VydmVkLgorCisjIHNlcmlhbCA2CisKKyMgQU1fTUlTU0lOR19QUk9HKE5BTUUsIFBST0dSQU0pCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorQUNfREVGVU4oW0FNX01JU1NJTkdfUFJPR10sCitbQUNfUkVRVUlSRShbQU1fTUlTU0lOR19IQVNfUlVOXSkKKyQxPSR7JDEtIiR7YW1fbWlzc2luZ19ydW59JDIifQorQUNfU1VCU1QoJDEpXSkKKworCisjIEFNX01JU1NJTkdfSEFTX1JVTgorIyAtLS0tLS0tLS0tLS0tLS0tLS0KKyMgRGVmaW5lIE1JU1NJTkcgaWYgbm90IGRlZmluZWQgc28gZmFyIGFuZCB0ZXN0IGlmIGl0IHN1cHBvcnRzIC0tcnVuLgorIyBJZiBpdCBkb2VzLCBzZXQgYW1fbWlzc2luZ19ydW4gdG8gdXNlIGl0LCBvdGhlcndpc2UsIHRvIG5vdGhpbmcuCitBQ19ERUZVTihbQU1fTUlTU0lOR19IQVNfUlVOXSwKK1tBQ19SRVFVSVJFKFtBTV9BVVhfRElSX0VYUEFORF0pZG5sCitBQ19SRVFVSVJFX0FVWF9GSUxFKFttaXNzaW5nXSlkbmwKK2lmIHRlc3QgeCIke01JU1NJTkcrc2V0fSIgIT0geHNldDsgdGhlbgorICBjYXNlICRhbV9hdXhfZGlyIGluCisgICpcICogfCAqXAkqKQorICAgIE1JU1NJTkc9Ilwke1NIRUxMfSBcIiRhbV9hdXhfZGlyL21pc3NpbmdcIiIgOzsKKyAgKikKKyAgICBNSVNTSU5HPSJcJHtTSEVMTH0gJGFtX2F1eF9kaXIvbWlzc2luZyIgOzsKKyAgZXNhYworZmkKKyMgVXNlIGV2YWwgdG8gZXhwYW5kICRTSEVMTAoraWYgZXZhbCAiJE1JU1NJTkcgLS1ydW4gdHJ1ZSI7IHRoZW4KKyAgYW1fbWlzc2luZ19ydW49IiRNSVNTSU5HIC0tcnVuICIKK2Vsc2UKKyAgYW1fbWlzc2luZ19ydW49CisgIEFDX01TR19XQVJOKFtgbWlzc2luZycgc2NyaXB0IGlzIHRvbyBvbGQgb3IgbWlzc2luZ10pCitmaQorXSkKKworIyBDb3B5cmlnaHQgKEMpIDIwMDMsIDIwMDQsIDIwMDUsIDIwMDYgIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgorIworIyBUaGlzIGZpbGUgaXMgZnJlZSBzb2Z0d2FyZTsgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbgorIyBnaXZlcyB1bmxpbWl0ZWQgcGVybWlzc2lvbiB0byBjb3B5IGFuZC9vciBkaXN0cmlidXRlIGl0LAorIyB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9ucywgYXMgbG9uZyBhcyB0aGlzIG5vdGljZSBpcyBwcmVzZXJ2ZWQuCisKKyMgQU1fUFJPR19NS0RJUl9QCisjIC0tLS0tLS0tLS0tLS0tLQorIyBDaGVjayBmb3IgYG1rZGlyIC1wJy4KK0FDX0RFRlVOKFtBTV9QUk9HX01LRElSX1BdLAorW0FDX1BSRVJFUShbMi42MF0pZG5sCitBQ19SRVFVSVJFKFtBQ19QUk9HX01LRElSX1BdKWRubAorZG5sIEF1dG9tYWtlIDEuOCB0byAxLjkuNiB1c2VkIHRvIGRlZmluZSBta2Rpcl9wLiAgV2Ugbm93IHVzZSBNS0RJUl9QLAorZG5sIHdoaWxlIGtlZXBpbmcgYSBkZWZpbml0aW9uIG9mIG1rZGlyX3AgZm9yIGJhY2t3YXJkIGNvbXBhdGliaWxpdHkuCitkbmwgQE1LRElSX1BAIGlzIG1hZ2ljOiBBQ19PVVRQVVQgYWRqdXN0cyBpdHMgdmFsdWUgZm9yIGVhY2ggTWFrZWZpbGUuCitkbmwgSG93ZXZlciB3ZSBjYW5ub3QgZGVmaW5lIG1rZGlyX3AgYXMgJChNS0RJUl9QKSBmb3IgdGhlIHNha2Ugb2YKK2RubCBNYWtlZmlsZS5pbnMgdGhhdCBkbyBub3QgZGVmaW5lIE1LRElSX1AsIHNvIHdlIGRvIG91ciBvd24KK2RubCBhZGp1c3RtZW50IHVzaW5nIHRvcF9idWlsZGRpciAod2hpY2ggaXMgZGVmaW5lZCBtb3JlIG9mdGVuIHRoYW4KK2RubCBNS0RJUl9QKS4KK0FDX1NVQlNUKFtta2Rpcl9wXSwgWyIkTUtESVJfUCJdKWRubAorY2FzZSAkbWtkaXJfcCBpbgorICBbW1xcLyRdXSogfCA/OltbXFwvXV0qKSA7OworICAqLyopIG1rZGlyX3A9IlwkKHRvcF9idWlsZGRpcikvJG1rZGlyX3AiIDs7Citlc2FjCitdKQorCisjIEhlbHBlciBmdW5jdGlvbnMgZm9yIG9wdGlvbiBoYW5kbGluZy4gICAgICAgICAgICAgICAgICAgICAtKi0gQXV0b2NvbmYgLSotCisKKyMgQ29weXJpZ2h0IChDKSAyMDAxLCAyMDAyLCAyMDAzLCAyMDA1LCAyMDA4ICBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KKyMKKyMgVGhpcyBmaWxlIGlzIGZyZWUgc29mdHdhcmU7IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24KKyMgZ2l2ZXMgdW5saW1pdGVkIHBlcm1pc3Npb24gdG8gY29weSBhbmQvb3IgZGlzdHJpYnV0ZSBpdCwKKyMgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbnMsIGFzIGxvbmcgYXMgdGhpcyBub3RpY2UgaXMgcHJlc2VydmVkLgorCisjIHNlcmlhbCA0CisKKyMgX0FNX01BTkdMRV9PUFRJT04oTkFNRSkKKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KK0FDX0RFRlVOKFtfQU1fTUFOR0xFX09QVElPTl0sCitbW19BTV9PUFRJT05fXW00X2JwYXRzdWJzdCgkMSwgW1teYS16QS1aMC05X11dLCBbX10pXSkKKworIyBfQU1fU0VUX09QVElPTihOQU1FKQorIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyMgU2V0IG9wdGlvbiBOQU1FLiAgUHJlc2VudGx5IHRoYXQgb25seSBtZWFucyBkZWZpbmluZyBhIGZsYWcgZm9yIHRoaXMgb3B0aW9uLgorQUNfREVGVU4oW19BTV9TRVRfT1BUSU9OXSwKK1ttNF9kZWZpbmUoX0FNX01BTkdMRV9PUFRJT04oWyQxXSksIDEpXSkKKworIyBfQU1fU0VUX09QVElPTlMoT1BUSU9OUykKKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIyBPUFRJT05TIGlzIGEgc3BhY2Utc2VwYXJhdGVkIGxpc3Qgb2YgQXV0b21ha2Ugb3B0aW9ucy4KK0FDX0RFRlVOKFtfQU1fU0VUX09QVElPTlNdLAorW200X2ZvcmVhY2hfdyhbX0FNX09wdGlvbl0sIFskMV0sIFtfQU1fU0VUX09QVElPTihfQU1fT3B0aW9uKV0pXSkKKworIyBfQU1fSUZfT1BUSU9OKE9QVElPTiwgSUYtU0VULCBbSUYtTk9ULVNFVF0pCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyMgRXhlY3V0ZSBJRi1TRVQgaWYgT1BUSU9OIGlzIHNldCwgSUYtTk9ULVNFVCBvdGhlcndpc2UuCitBQ19ERUZVTihbX0FNX0lGX09QVElPTl0sCitbbTRfaWZzZXQoX0FNX01BTkdMRV9PUFRJT04oWyQxXSksIFskMl0sIFskM10pXSkKKworIyBDaGVjayB0byBtYWtlIHN1cmUgdGhhdCB0aGUgYnVpbGQgZW52aXJvbm1lbnQgaXMgc2FuZS4gICAgLSotIEF1dG9jb25mIC0qLQorCisjIENvcHlyaWdodCAoQykgMTk5NiwgMTk5NywgMjAwMCwgMjAwMSwgMjAwMywgMjAwNSwgMjAwOAorIyBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KKyMKKyMgVGhpcyBmaWxlIGlzIGZyZWUgc29mdHdhcmU7IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24KKyMgZ2l2ZXMgdW5saW1pdGVkIHBlcm1pc3Npb24gdG8gY29weSBhbmQvb3IgZGlzdHJpYnV0ZSBpdCwKKyMgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbnMsIGFzIGxvbmcgYXMgdGhpcyBub3RpY2UgaXMgcHJlc2VydmVkLgorCisjIHNlcmlhbCA1CisKKyMgQU1fU0FOSVRZX0NIRUNLCisjIC0tLS0tLS0tLS0tLS0tLQorQUNfREVGVU4oW0FNX1NBTklUWV9DSEVDS10sCitbQUNfTVNHX0NIRUNLSU5HKFt3aGV0aGVyIGJ1aWxkIGVudmlyb25tZW50IGlzIHNhbmVdKQorIyBKdXN0IGluIGNhc2UKK3NsZWVwIDEKK2VjaG8gdGltZXN0YW1wID4gY29uZnRlc3QuZmlsZQorIyBSZWplY3QgdW5zYWZlIGNoYXJhY3RlcnMgaW4gJHNyY2RpciBvciB0aGUgYWJzb2x1dGUgd29ya2luZyBkaXJlY3RvcnkKKyMgbmFtZS4gIEFjY2VwdCBzcGFjZSBhbmQgdGFiIG9ubHkgaW4gdGhlIGxhdHRlci4KK2FtX2xmPScKKycKK2Nhc2UgYHB3ZGAgaW4KKyAgKltbXFxcIlwjXCRcJlwnXGAkYW1fbGZdXSopCisgICAgQUNfTVNHX0VSUk9SKFt1bnNhZmUgYWJzb2x1dGUgd29ya2luZyBkaXJlY3RvcnkgbmFtZV0pOzsKK2VzYWMKK2Nhc2UgJHNyY2RpciBpbgorICAqW1tcXFwiXCNcJFwmXCdcYCRhbV9sZlwgXAldXSopCisgICAgQUNfTVNHX0VSUk9SKFt1bnNhZmUgc3JjZGlyIHZhbHVlOiBgJHNyY2RpciddKTs7Citlc2FjCisKKyMgRG8gYHNldCcgaW4gYSBzdWJzaGVsbCBzbyB3ZSBkb24ndCBjbG9iYmVyIHRoZSBjdXJyZW50IHNoZWxsJ3MKKyMgYXJndW1lbnRzLiAgTXVzdCB0cnkgLUwgZmlyc3QgaW4gY2FzZSBjb25maWd1cmUgaXMgYWN0dWFsbHkgYQorIyBzeW1saW5rOyBzb21lIHN5c3RlbXMgcGxheSB3ZWlyZCBnYW1lcyB3aXRoIHRoZSBtb2QgdGltZSBvZiBzeW1saW5rcworIyAoZWcgRnJlZUJTRCByZXR1cm5zIHRoZSBtb2QgdGltZSBvZiB0aGUgc3ltbGluaydzIGNvbnRhaW5pbmcKKyMgZGlyZWN0b3J5KS4KK2lmICgKKyAgIHNldCBYIGBscyAtTHQgIiRzcmNkaXIvY29uZmlndXJlIiBjb25mdGVzdC5maWxlIDI+IC9kZXYvbnVsbGAKKyAgIGlmIHRlc3QgIiRbKl0iID0gIlgiOyB0aGVuCisgICAgICAjIC1MIGRpZG4ndCB3b3JrLgorICAgICAgc2V0IFggYGxzIC10ICIkc3JjZGlyL2NvbmZpZ3VyZSIgY29uZnRlc3QuZmlsZWAKKyAgIGZpCisgICBybSAtZiBjb25mdGVzdC5maWxlCisgICBpZiB0ZXN0ICIkWypdIiAhPSAiWCAkc3JjZGlyL2NvbmZpZ3VyZSBjb25mdGVzdC5maWxlIiBcCisgICAgICAmJiB0ZXN0ICIkWypdIiAhPSAiWCBjb25mdGVzdC5maWxlICRzcmNkaXIvY29uZmlndXJlIjsgdGhlbgorCisgICAgICAjIElmIG5laXRoZXIgbWF0Y2hlZCwgdGhlbiB3ZSBoYXZlIGEgYnJva2VuIGxzLiAgVGhpcyBjYW4gaGFwcGVuCisgICAgICAjIGlmLCBmb3IgaW5zdGFuY2UsIENPTkZJR19TSEVMTCBpcyBiYXNoIGFuZCBpdCBpbmhlcml0cyBhCisgICAgICAjIGJyb2tlbiBscyBhbGlhcyBmcm9tIHRoZSBlbnZpcm9ubWVudC4gIFRoaXMgaGFzIGFjdHVhbGx5CisgICAgICAjIGhhcHBlbmVkLiAgU3VjaCBhIHN5c3RlbSBjb3VsZCBub3QgYmUgY29uc2lkZXJlZCAic2FuZSIuCisgICAgICBBQ19NU0dfRVJST1IoW2xzIC10IGFwcGVhcnMgdG8gZmFpbC4gIE1ha2Ugc3VyZSB0aGVyZSBpcyBub3QgYSBicm9rZW4KK2FsaWFzIGluIHlvdXIgZW52aXJvbm1lbnRdKQorICAgZmkKKworICAgdGVzdCAiJFsyXSIgPSBjb25mdGVzdC5maWxlCisgICApCit0aGVuCisgICAjIE9rLgorICAgOgorZWxzZQorICAgQUNfTVNHX0VSUk9SKFtuZXdseSBjcmVhdGVkIGZpbGUgaXMgb2xkZXIgdGhhbiBkaXN0cmlidXRlZCBmaWxlcyEKK0NoZWNrIHlvdXIgc3lzdGVtIGNsb2NrXSkKK2ZpCitBQ19NU0dfUkVTVUxUKHllcyldKQorCisjIENvcHlyaWdodCAoQykgMjAwOSAgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCisjCisjIFRoaXMgZmlsZSBpcyBmcmVlIHNvZnR3YXJlOyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uCisjIGdpdmVzIHVubGltaXRlZCBwZXJtaXNzaW9uIHRvIGNvcHkgYW5kL29yIGRpc3RyaWJ1dGUgaXQsCisjIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb25zLCBhcyBsb25nIGFzIHRoaXMgbm90aWNlIGlzIHByZXNlcnZlZC4KKworIyBzZXJpYWwgMQorCisjIEFNX1NJTEVOVF9SVUxFUyhbREVGQVVMVF0pCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisjIEVuYWJsZSBsZXNzIHZlcmJvc2UgYnVpbGQgcnVsZXM7IHdpdGggdGhlIGRlZmF1bHQgc2V0IHRvIERFRkFVTFQKKyMgKGB5ZXMnIGJlaW5nIGxlc3MgdmVyYm9zZSwgYG5vJyBvciBlbXB0eSBiZWluZyB2ZXJib3NlKS4KK0FDX0RFRlVOKFtBTV9TSUxFTlRfUlVMRVNdLAorW0FDX0FSR19FTkFCTEUoW3NpbGVudC1ydWxlc10sCitbICAtLWVuYWJsZS1zaWxlbnQtcnVsZXMgICAgICAgICAgbGVzcyB2ZXJib3NlIGJ1aWxkIG91dHB1dCAodW5kbzogYG1ha2UgVj0xJykKKyAgLS1kaXNhYmxlLXNpbGVudC1ydWxlcyAgICAgICAgIHZlcmJvc2UgYnVpbGQgb3V0cHV0ICh1bmRvOiBgbWFrZSBWPTAnKV0pCitjYXNlICRlbmFibGVfc2lsZW50X3J1bGVzIGluCit5ZXMpIEFNX0RFRkFVTFRfVkVSQk9TSVRZPTA7Oworbm8pICBBTV9ERUZBVUxUX1ZFUkJPU0lUWT0xOzsKKyopICAgQU1fREVGQVVMVF9WRVJCT1NJVFk9bTRfaWYoWyQxXSwgW3llc10sIFswXSwgWzFdKTs7Citlc2FjCitBQ19TVUJTVChbQU1fREVGQVVMVF9WRVJCT1NJVFldKWRubAorQU1fQkFDS1NMQVNIPSdcJworQUNfU1VCU1QoW0FNX0JBQ0tTTEFTSF0pZG5sCitfQU1fU1VCU1RfTk9UTUFLRShbQU1fQkFDS1NMQVNIXSlkbmwKK10pCisKKyMgQ29weXJpZ2h0IChDKSAyMDAxLCAyMDAzLCAyMDA1ICBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KKyMKKyMgVGhpcyBmaWxlIGlzIGZyZWUgc29mdHdhcmU7IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24KKyMgZ2l2ZXMgdW5saW1pdGVkIHBlcm1pc3Npb24gdG8gY29weSBhbmQvb3IgZGlzdHJpYnV0ZSBpdCwKKyMgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbnMsIGFzIGxvbmcgYXMgdGhpcyBub3RpY2UgaXMgcHJlc2VydmVkLgorCisjIEFNX1BST0dfSU5TVEFMTF9TVFJJUAorIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyMgT25lIGlzc3VlIHdpdGggdmVuZG9yIGBpbnN0YWxsJyAoZXZlbiBHTlUpIGlzIHRoYXQgeW91IGNhbid0CisjIHNwZWNpZnkgdGhlIHByb2dyYW0gdXNlZCB0byBzdHJpcCBiaW5hcmllcy4gIFRoaXMgaXMgZXNwZWNpYWxseQorIyBhbm5veWluZyBpbiBjcm9zcy1jb21waWxpbmcgZW52aXJvbm1lbnRzLCB3aGVyZSB0aGUgYnVpbGQncyBzdHJpcAorIyBpcyB1bmxpa2VseSB0byBoYW5kbGUgdGhlIGhvc3QncyBiaW5hcmllcy4KKyMgRm9ydHVuYXRlbHkgaW5zdGFsbC1zaCB3aWxsIGhvbm9yIGEgU1RSSVBQUk9HIHZhcmlhYmxlLCBzbyB3ZQorIyBhbHdheXMgdXNlIGluc3RhbGwtc2ggaW4gYG1ha2UgaW5zdGFsbC1zdHJpcCcsIGFuZCBpbml0aWFsaXplCisjIFNUUklQUFJPRyB3aXRoIHRoZSB2YWx1ZSBvZiB0aGUgU1RSSVAgdmFyaWFibGUgKHNldCBieSB0aGUgdXNlcikuCitBQ19ERUZVTihbQU1fUFJPR19JTlNUQUxMX1NUUklQXSwKK1tBQ19SRVFVSVJFKFtBTV9QUk9HX0lOU1RBTExfU0hdKWRubAorIyBJbnN0YWxsZWQgYmluYXJpZXMgYXJlIHVzdWFsbHkgc3RyaXBwZWQgdXNpbmcgYHN0cmlwJyB3aGVuIHRoZSB1c2VyCisjIHJ1biBgbWFrZSBpbnN0YWxsLXN0cmlwJy4gIEhvd2V2ZXIgYHN0cmlwJyBtaWdodCBub3QgYmUgdGhlIHJpZ2h0CisjIHRvb2wgdG8gdXNlIGluIGNyb3NzLWNvbXBpbGF0aW9uIGVudmlyb25tZW50cywgdGhlcmVmb3JlIEF1dG9tYWtlCisjIHdpbGwgaG9ub3IgdGhlIGBTVFJJUCcgZW52aXJvbm1lbnQgdmFyaWFibGUgdG8gb3ZlcnJ1bGUgdGhpcyBwcm9ncmFtLgorZG5sIERvbid0IHRlc3QgZm9yICRjcm9zc19jb21waWxpbmcgPSB5ZXMsIGJlY2F1c2UgaXQgbWlnaHQgYmUgYG1heWJlJy4KK2lmIHRlc3QgIiRjcm9zc19jb21waWxpbmciICE9IG5vOyB0aGVuCisgIEFDX0NIRUNLX1RPT0woW1NUUklQXSwgW3N0cmlwXSwgOikKK2ZpCitJTlNUQUxMX1NUUklQX1BST0dSQU09IlwkKGluc3RhbGxfc2gpIC1jIC1zIgorQUNfU1VCU1QoW0lOU1RBTExfU1RSSVBfUFJPR1JBTV0pXSkKKworIyBDb3B5cmlnaHQgKEMpIDIwMDYsIDIwMDggIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgorIworIyBUaGlzIGZpbGUgaXMgZnJlZSBzb2Z0d2FyZTsgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbgorIyBnaXZlcyB1bmxpbWl0ZWQgcGVybWlzc2lvbiB0byBjb3B5IGFuZC9vciBkaXN0cmlidXRlIGl0LAorIyB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9ucywgYXMgbG9uZyBhcyB0aGlzIG5vdGljZSBpcyBwcmVzZXJ2ZWQuCisKKyMgc2VyaWFsIDIKKworIyBfQU1fU1VCU1RfTk9UTUFLRShWQVJJQUJMRSkKKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisjIFByZXZlbnQgQXV0b21ha2UgZnJvbSBvdXRwdXR0aW5nIFZBUklBQkxFID0gQFZBUklBQkxFQCBpbiBNYWtlZmlsZS5pbi4KKyMgVGhpcyBtYWNybyBpcyB0cmFjZWQgYnkgQXV0b21ha2UuCitBQ19ERUZVTihbX0FNX1NVQlNUX05PVE1BS0VdKQorCisjIEFNX1NVQlNUX05PVE1BS0UoVkFSSUFCTEUpCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIyBQdWJsaWMgc2lzdGVyIG9mIF9BTV9TVUJTVF9OT1RNQUtFLgorQUNfREVGVU4oW0FNX1NVQlNUX05PVE1BS0VdLCBbX0FNX1NVQlNUX05PVE1BS0UoJEApXSkKKworIyBDaGVjayBob3cgdG8gY3JlYXRlIGEgdGFyYmFsbC4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLSotIEF1dG9jb25mIC0qLQorCisjIENvcHlyaWdodCAoQykgMjAwNCwgMjAwNSAgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCisjCisjIFRoaXMgZmlsZSBpcyBmcmVlIHNvZnR3YXJlOyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uCisjIGdpdmVzIHVubGltaXRlZCBwZXJtaXNzaW9uIHRvIGNvcHkgYW5kL29yIGRpc3RyaWJ1dGUgaXQsCisjIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb25zLCBhcyBsb25nIGFzIHRoaXMgbm90aWNlIGlzIHByZXNlcnZlZC4KKworIyBzZXJpYWwgMgorCisjIF9BTV9QUk9HX1RBUihGT1JNQVQpCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tCisjIENoZWNrIGhvdyB0byBjcmVhdGUgYSB0YXJiYWxsIGluIGZvcm1hdCBGT1JNQVQuCisjIEZPUk1BVCBzaG91bGQgYmUgb25lIG9mIGB2NycsIGB1c3RhcicsIG9yIGBwYXgnLgorIworIyBTdWJzdGl0dXRlIGEgdmFyaWFibGUgJChhbV9fdGFyKSB0aGF0IGlzIGEgY29tbWFuZAorIyB3cml0aW5nIHRvIHN0ZG91dCBhIEZPUk1BVC10YXJiYWxsIGNvbnRhaW5pbmcgdGhlIGRpcmVjdG9yeQorIyAkdGFyZGlyLgorIyAgICAgdGFyZGlyPWRpcmVjdG9yeSAmJiAkKGFtX190YXIpID4gcmVzdWx0LnRhcgorIworIyBTdWJzdGl0dXRlIGEgdmFyaWFibGUgJChhbV9fdW50YXIpIHRoYXQgZXh0cmFjdCBzdWNoCisjIGEgdGFyYmFsbCByZWFkIGZyb20gc3RkaW4uCisjICAgICAkKGFtX191bnRhcikgPCByZXN1bHQudGFyCitBQ19ERUZVTihbX0FNX1BST0dfVEFSXSwKK1sjIEFsd2F5cyBkZWZpbmUgQU1UQVIgZm9yIGJhY2t3YXJkIGNvbXBhdGliaWxpdHkuCitBTV9NSVNTSU5HX1BST0coW0FNVEFSXSwgW3Rhcl0pCittNF9pZihbJDFdLCBbdjddLAorICAgICBbYW1fX3Rhcj0nJHtBTVRBUn0gY2hvZiAtICIkJHRhcmRpciInOyBhbV9fdW50YXI9JyR7QU1UQVJ9IHhmIC0nXSwKKyAgICAgW200X2Nhc2UoWyQxXSwgW3VzdGFyXSwsIFtwYXhdLCwKKyAgICAgICAgICAgICAgW200X2ZhdGFsKFtVbmtub3duIHRhciBmb3JtYXRdKV0pCitBQ19NU0dfQ0hFQ0tJTkcoW2hvdyB0byBjcmVhdGUgYSAkMSB0YXIgYXJjaGl2ZV0pCisjIExvb3Agb3ZlciBhbGwga25vd24gbWV0aG9kcyB0byBjcmVhdGUgYSB0YXIgYXJjaGl2ZSB1bnRpbCBvbmUgd29ya3MuCitfYW1fdG9vbHM9J2dudXRhciBtNF9pZihbJDFdLCBbdXN0YXJdLCBbcGxhaW50YXJdKSBwYXggY3BpbyBub25lJworX2FtX3Rvb2xzPSR7YW1fY3ZfcHJvZ190YXJfJDEtJF9hbV90b29sc30KKyMgRG8gbm90IGZvbGQgdGhlIGFib3ZlIHR3byBsaW5lIGludG8gb25lLCBiZWNhdXNlIFRydTY0IHNoIGFuZAorIyBTb2xhcmlzIHNoIHdpbGwgbm90IGdyb2sgc3BhY2VzIGluIHRoZSByaHMgb2YgYC0nLgorZm9yIF9hbV90b29sIGluICRfYW1fdG9vbHMKK2RvCisgIGNhc2UgJF9hbV90b29sIGluCisgIGdudXRhcikKKyAgICBmb3IgX2FtX3RhciBpbiB0YXIgZ251dGFyIGd0YXI7CisgICAgZG8KKyAgICAgIEFNX1JVTl9MT0coWyRfYW1fdGFyIC0tdmVyc2lvbl0pICYmIGJyZWFrCisgICAgZG9uZQorICAgIGFtX190YXI9IiRfYW1fdGFyIC0tZm9ybWF0PW00X2lmKFskMV0sIFtwYXhdLCBbcG9zaXhdLCBbJDFdKSAtY2hmIC0gIiciJCR0YXJkaXIiJworICAgIGFtX190YXJfPSIkX2FtX3RhciAtLWZvcm1hdD1tNF9pZihbJDFdLCBbcGF4XSwgW3Bvc2l4XSwgWyQxXSkgLWNoZiAtICInIiR0YXJkaXIiJworICAgIGFtX191bnRhcj0iJF9hbV90YXIgLXhmIC0iCisgICAgOzsKKyAgcGxhaW50YXIpCisgICAgIyBNdXN0IHNraXAgR05VIHRhcjogaWYgaXQgZG9lcyBub3Qgc3VwcG9ydCAtLWZvcm1hdD0gaXQgZG9lc24ndCBjcmVhdGUKKyAgICAjIHVzdGFyIHRhcmJhbGwgZWl0aGVyLgorICAgICh0YXIgLS12ZXJzaW9uKSA+L2Rldi9udWxsIDI+JjEgJiYgY29udGludWUKKyAgICBhbV9fdGFyPSd0YXIgY2hmIC0gIiQkdGFyZGlyIicKKyAgICBhbV9fdGFyXz0ndGFyIGNoZiAtICIkdGFyZGlyIicKKyAgICBhbV9fdW50YXI9J3RhciB4ZiAtJworICAgIDs7CisgIHBheCkKKyAgICBhbV9fdGFyPSdwYXggLUwgLXggJDEgLXcgIiQkdGFyZGlyIicKKyAgICBhbV9fdGFyXz0ncGF4IC1MIC14ICQxIC13ICIkdGFyZGlyIicKKyAgICBhbV9fdW50YXI9J3BheCAtcicKKyAgICA7OworICBjcGlvKQorICAgIGFtX190YXI9J2ZpbmQgIiQkdGFyZGlyIiAtcHJpbnQgfCBjcGlvIC1vIC1IICQxIC1MJworICAgIGFtX190YXJfPSdmaW5kICIkdGFyZGlyIiAtcHJpbnQgfCBjcGlvIC1vIC1IICQxIC1MJworICAgIGFtX191bnRhcj0nY3BpbyAtaSAtSCAkMSAtZCcKKyAgICA7OworICBub25lKQorICAgIGFtX190YXI9ZmFsc2UKKyAgICBhbV9fdGFyXz1mYWxzZQorICAgIGFtX191bnRhcj1mYWxzZQorICAgIDs7CisgIGVzYWMKKworICAjIElmIHRoZSB2YWx1ZSB3YXMgY2FjaGVkLCBzdG9wIG5vdy4gIFdlIGp1c3Qgd2FudGVkIHRvIGhhdmUgYW1fX3RhcgorICAjIGFuZCBhbV9fdW50YXIgc2V0LgorICB0ZXN0IC1uICIke2FtX2N2X3Byb2dfdGFyXyQxfSIgJiYgYnJlYWsKKworICAjIHRhci91bnRhciBhIGR1bW15IGRpcmVjdG9yeSwgYW5kIHN0b3AgaWYgdGhlIGNvbW1hbmQgd29ya3MKKyAgcm0gLXJmIGNvbmZ0ZXN0LmRpcgorICBta2RpciBjb25mdGVzdC5kaXIKKyAgZWNobyBHcmVwTWUgPiBjb25mdGVzdC5kaXIvZmlsZQorICBBTV9SVU5fTE9HKFt0YXJkaXI9Y29uZnRlc3QuZGlyICYmIGV2YWwgJGFtX190YXJfID5jb25mdGVzdC50YXJdKQorICBybSAtcmYgY29uZnRlc3QuZGlyCisgIGlmIHRlc3QgLXMgY29uZnRlc3QudGFyOyB0aGVuCisgICAgQU1fUlVOX0xPRyhbJGFtX191bnRhciA8Y29uZnRlc3QudGFyXSkKKyAgICBncmVwIEdyZXBNZSBjb25mdGVzdC5kaXIvZmlsZSA+L2Rldi9udWxsIDI+JjEgJiYgYnJlYWsKKyAgZmkKK2RvbmUKK3JtIC1yZiBjb25mdGVzdC5kaXIKKworQUNfQ0FDSEVfVkFMKFthbV9jdl9wcm9nX3Rhcl8kMV0sIFthbV9jdl9wcm9nX3Rhcl8kMT0kX2FtX3Rvb2xdKQorQUNfTVNHX1JFU1VMVChbJGFtX2N2X3Byb2dfdGFyXyQxXSldKQorQUNfU1VCU1QoW2FtX190YXJdKQorQUNfU1VCU1QoW2FtX191bnRhcl0pCitdKSAjIF9BTV9QUk9HX1RBUgorCittNF9pbmNsdWRlKFttNC9kcGtnLWFyY2gubTRdKQorbTRfaW5jbHVkZShbbTQvZHBrZy1idWlsZC5tNF0pCittNF9pbmNsdWRlKFttNC9kcGtnLWNvbXBpbGVyLm00XSkKK200X2luY2x1ZGUoW200L2Rwa2ctY292ZXJhZ2UubTRdKQorbTRfaW5jbHVkZShbbTQvZHBrZy1mdW5jcy5tNF0pCittNF9pbmNsdWRlKFttNC9kcGtnLWxpYnMubTRdKQorbTRfaW5jbHVkZShbbTQvZHBrZy1saW5rZXIubTRdKQorbTRfaW5jbHVkZShbbTQvZHBrZy1wcm9ncy5tNF0pCittNF9pbmNsdWRlKFttNC9kcGtnLXR5cGVzLm00XSkKK200X2luY2x1ZGUoW200L2Rwa2ctdW5pY29kZS5tNF0pCittNF9pbmNsdWRlKFttNC9nZXR0ZXh0Lm00XSkKK200X2luY2x1ZGUoW200L2ljb252Lm00XSkKK200X2luY2x1ZGUoW200L2ludGxtYWNvc3gubTRdKQorbTRfaW5jbHVkZShbbTQvbGliLWxkLm00XSkKK200X2luY2x1ZGUoW200L2xpYi1saW5rLm00XSkKK200X2luY2x1ZGUoW200L2xpYi1wcmVmaXgubTRdKQorbTRfaW5jbHVkZShbbTQvbmxzLm00XSkKK200X2luY2x1ZGUoW200L3BvLm00XSkKK200X2luY2x1ZGUoW200L3Byb2d0ZXN0Lm00XSkKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvYnVpbGQtYXV4L2NvbmZpZy5ndWVzcyBiL2Rwa2ctMS4xNi4xLjEvYnVpbGQtYXV4L2NvbmZpZy5ndWVzcwpuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwLi40MGVhZWQ0Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9idWlsZC1hdXgvY29uZmlnLmd1ZXNzCkBAIC0wLDAgKzEsMTUxNyBAQAorIyEgL2Jpbi9zaAorIyBBdHRlbXB0IHRvIGd1ZXNzIGEgY2Fub25pY2FsIHN5c3RlbSBuYW1lLgorIyAgIENvcHlyaWdodCAoQykgMTk5MiwgMTk5MywgMTk5NCwgMTk5NSwgMTk5NiwgMTk5NywgMTk5OCwgMTk5OSwKKyMgICAyMDAwLCAyMDAxLCAyMDAyLCAyMDAzLCAyMDA0LCAyMDA1LCAyMDA2LCAyMDA3LCAyMDA4LCAyMDA5LCAyMDEwLAorIyAgIDIwMTEgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCisKK3RpbWVzdGFtcD0nMjAxMS0wNS0xMScKKworIyBUaGlzIGZpbGUgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeSBpdAorIyB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorIworIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwgYnV0CisjIFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUKKyMgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorIworIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQorIyBGb3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdHJlZXQgLSBGaWZ0aCBGbG9vciwgQm9zdG9uLCBNQQorIyAwMjExMC0xMzAxLCBVU0EuCisjCisjIEFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlLCBpZiB5b3UKKyMgZGlzdHJpYnV0ZSB0aGlzIGZpbGUgYXMgcGFydCBvZiBhIHByb2dyYW0gdGhhdCBjb250YWlucyBhCisjIGNvbmZpZ3VyYXRpb24gc2NyaXB0IGdlbmVyYXRlZCBieSBBdXRvY29uZiwgeW91IG1heSBpbmNsdWRlIGl0IHVuZGVyCisjIHRoZSBzYW1lIGRpc3RyaWJ1dGlvbiB0ZXJtcyB0aGF0IHlvdSB1c2UgZm9yIHRoZSByZXN0IG9mIHRoYXQgcHJvZ3JhbS4KKworCisjIE9yaWdpbmFsbHkgd3JpdHRlbiBieSBQZXIgQm90aG5lci4gIFBsZWFzZSBzZW5kIHBhdGNoZXMgKGNvbnRleHQKKyMgZGlmZiBmb3JtYXQpIHRvIDxjb25maWctcGF0Y2hlc0BnbnUub3JnPiBhbmQgaW5jbHVkZSBhIENoYW5nZUxvZworIyBlbnRyeS4KKyMKKyMgVGhpcyBzY3JpcHQgYXR0ZW1wdHMgdG8gZ3Vlc3MgYSBjYW5vbmljYWwgc3lzdGVtIG5hbWUgc2ltaWxhciB0bworIyBjb25maWcuc3ViLiAgSWYgaXQgc3VjY2VlZHMsIGl0IHByaW50cyB0aGUgc3lzdGVtIG5hbWUgb24gc3Rkb3V0LCBhbmQKKyMgZXhpdHMgd2l0aCAwLiAgT3RoZXJ3aXNlLCBpdCBleGl0cyB3aXRoIDEuCisjCisjIFlvdSBjYW4gZ2V0IHRoZSBsYXRlc3QgdmVyc2lvbiBvZiB0aGlzIHNjcmlwdCBmcm9tOgorIyBodHRwOi8vZ2l0LnNhdmFubmFoLmdudS5vcmcvZ2l0d2ViLz9wPWNvbmZpZy5naXQ7YT1ibG9iX3BsYWluO2Y9Y29uZmlnLmd1ZXNzO2hiPUhFQUQKKworbWU9YGVjaG8gIiQwIiB8IHNlZCAtZSAncywuKi8sLCdgCisKK3VzYWdlPSJcCitVc2FnZTogJDAgW09QVElPTl0KKworT3V0cHV0IHRoZSBjb25maWd1cmF0aW9uIG5hbWUgb2YgdGhlIHN5c3RlbSBcYCRtZScgaXMgcnVuIG9uLgorCitPcGVyYXRpb24gbW9kZXM6CisgIC1oLCAtLWhlbHAgICAgICAgICBwcmludCB0aGlzIGhlbHAsIHRoZW4gZXhpdAorICAtdCwgLS10aW1lLXN0YW1wICAgcHJpbnQgZGF0ZSBvZiBsYXN0IG1vZGlmaWNhdGlvbiwgdGhlbiBleGl0CisgIC12LCAtLXZlcnNpb24gICAgICBwcmludCB2ZXJzaW9uIG51bWJlciwgdGhlbiBleGl0CisKK1JlcG9ydCBidWdzIGFuZCBwYXRjaGVzIHRvIDxjb25maWctcGF0Y2hlc0BnbnUub3JnPi4iCisKK3ZlcnNpb249IlwKK0dOVSBjb25maWcuZ3Vlc3MgKCR0aW1lc3RhbXApCisKK09yaWdpbmFsbHkgd3JpdHRlbiBieSBQZXIgQm90aG5lci4KK0NvcHlyaWdodCAoQykgMTk5MiwgMTk5MywgMTk5NCwgMTk5NSwgMTk5NiwgMTk5NywgMTk5OCwgMTk5OSwgMjAwMCwKKzIwMDEsIDIwMDIsIDIwMDMsIDIwMDQsIDIwMDUsIDIwMDYsIDIwMDcsIDIwMDgsIDIwMDksIDIwMTAsIDIwMTEgRnJlZQorU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgorCitUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgc291cmNlIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuICBUaGVyZSBpcyBOTword2FycmFudHk7IG5vdCBldmVuIGZvciBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIgorCitoZWxwPSIKK1RyeSBcYCRtZSAtLWhlbHAnIGZvciBtb3JlIGluZm9ybWF0aW9uLiIKKworIyBQYXJzZSBjb21tYW5kIGxpbmUKK3doaWxlIHRlc3QgJCMgLWd0IDAgOyBkbworICBjYXNlICQxIGluCisgICAgLS10aW1lLXN0YW1wIHwgLS10aW1lKiB8IC10ICkKKyAgICAgICBlY2hvICIkdGltZXN0YW1wIiA7IGV4aXQgOzsKKyAgICAtLXZlcnNpb24gfCAtdiApCisgICAgICAgZWNobyAiJHZlcnNpb24iIDsgZXhpdCA7OworICAgIC0taGVscCB8IC0taCogfCAtaCApCisgICAgICAgZWNobyAiJHVzYWdlIjsgZXhpdCA7OworICAgIC0tICkgICAgICMgU3RvcCBvcHRpb24gcHJvY2Vzc2luZworICAgICAgIHNoaWZ0OyBicmVhayA7OworICAgIC0gKQkjIFVzZSBzdGRpbiBhcyBpbnB1dC4KKyAgICAgICBicmVhayA7OworICAgIC0qICkKKyAgICAgICBlY2hvICIkbWU6IGludmFsaWQgb3B0aW9uICQxJGhlbHAiID4mMgorICAgICAgIGV4aXQgMSA7OworICAgICogKQorICAgICAgIGJyZWFrIDs7CisgIGVzYWMKK2RvbmUKKworaWYgdGVzdCAkIyAhPSAwOyB0aGVuCisgIGVjaG8gIiRtZTogdG9vIG1hbnkgYXJndW1lbnRzJGhlbHAiID4mMgorICBleGl0IDEKK2ZpCisKK3RyYXAgJ2V4aXQgMScgMSAyIDE1CisKKyMgQ0NfRk9SX0JVSUxEIC0tIGNvbXBpbGVyIHVzZWQgYnkgdGhpcyBzY3JpcHQuIE5vdGUgdGhhdCB0aGUgdXNlIG9mIGEKKyMgY29tcGlsZXIgdG8gYWlkIGluIHN5c3RlbSBkZXRlY3Rpb24gaXMgZGlzY291cmFnZWQgYXMgaXQgcmVxdWlyZXMKKyMgdGVtcG9yYXJ5IGZpbGVzIHRvIGJlIGNyZWF0ZWQgYW5kLCBhcyB5b3UgY2FuIHNlZSBiZWxvdywgaXQgaXMgYQorIyBoZWFkYWNoZSB0byBkZWFsIHdpdGggaW4gYSBwb3J0YWJsZSBmYXNoaW9uLgorCisjIEhpc3RvcmljYWxseSwgYENDX0ZPUl9CVUlMRCcgdXNlZCB0byBiZSBuYW1lZCBgSE9TVF9DQycuIFdlIHN0aWxsCisjIHVzZSBgSE9TVF9DQycgaWYgZGVmaW5lZCwgYnV0IGl0IGlzIGRlcHJlY2F0ZWQuCisKKyMgUG9ydGFibGUgdG1wIGRpcmVjdG9yeSBjcmVhdGlvbiBpbnNwaXJlZCBieSB0aGUgQXV0b2NvbmYgdGVhbS4KKworc2V0X2NjX2Zvcl9idWlsZD0nCit0cmFwICJleGl0Y29kZT1cJD87IChybSAtZiBcJHRtcGZpbGVzIDI+L2Rldi9udWxsOyBybWRpciBcJHRtcCAyPi9kZXYvbnVsbCkgJiYgZXhpdCBcJGV4aXRjb2RlIiAwIDsKK3RyYXAgInJtIC1mIFwkdG1wZmlsZXMgMj4vZGV2L251bGw7IHJtZGlyIFwkdG1wIDI+L2Rldi9udWxsOyBleGl0IDEiIDEgMiAxMyAxNSA7Cis6ICR7VE1QRElSPS90bXB9IDsKKyB7IHRtcD1gKHVtYXNrIDA3NyAmJiBta3RlbXAgLWQgIiRUTVBESVIvY2dYWFhYWFgiKSAyPi9kZXYvbnVsbGAgJiYgdGVzdCAtbiAiJHRtcCIgJiYgdGVzdCAtZCAiJHRtcCIgOyB9IHx8CisgeyB0ZXN0IC1uICIkUkFORE9NIiAmJiB0bXA9JFRNUERJUi9jZyQkLSRSQU5ET00gJiYgKHVtYXNrIDA3NyAmJiBta2RpciAkdG1wKSA7IH0gfHwKKyB7IHRtcD0kVE1QRElSL2NnLSQkICYmICh1bWFzayAwNzcgJiYgbWtkaXIgJHRtcCkgJiYgZWNobyAiV2FybmluZzogY3JlYXRpbmcgaW5zZWN1cmUgdGVtcCBkaXJlY3RvcnkiID4mMiA7IH0gfHwKKyB7IGVjaG8gIiRtZTogY2Fubm90IGNyZWF0ZSBhIHRlbXBvcmFyeSBkaXJlY3RvcnkgaW4gJFRNUERJUiIgPiYyIDsgZXhpdCAxIDsgfSA7CitkdW1teT0kdG1wL2R1bW15IDsKK3RtcGZpbGVzPSIkZHVtbXkuYyAkZHVtbXkubyAkZHVtbXkucmVsICRkdW1teSIgOworY2FzZSAkQ0NfRk9SX0JVSUxELCRIT1NUX0NDLCRDQyBpbgorICwsKSAgICBlY2hvICJpbnQgeDsiID4gJGR1bW15LmMgOworCWZvciBjIGluIGNjIGdjYyBjODkgYzk5IDsgZG8KKwkgIGlmICgkYyAtYyAtbyAkZHVtbXkubyAkZHVtbXkuYykgPi9kZXYvbnVsbCAyPiYxIDsgdGhlbgorCSAgICAgQ0NfRk9SX0JVSUxEPSIkYyI7IGJyZWFrIDsKKwkgIGZpIDsKKwlkb25lIDsKKwlpZiB0ZXN0IHgiJENDX0ZPUl9CVUlMRCIgPSB4IDsgdGhlbgorCSAgQ0NfRk9SX0JVSUxEPW5vX2NvbXBpbGVyX2ZvdW5kIDsKKwlmaQorCTs7CisgLCwqKSAgIENDX0ZPUl9CVUlMRD0kQ0MgOzsKKyAsKiwqKSAgQ0NfRk9SX0JVSUxEPSRIT1NUX0NDIDs7Citlc2FjIDsgc2V0X2NjX2Zvcl9idWlsZD0gOycKKworIyBUaGlzIGlzIG5lZWRlZCB0byBmaW5kIHVuYW1lIG9uIGEgUHlyYW1pZCBPU3ggd2hlbiBydW4gaW4gdGhlIEJTRCB1bml2ZXJzZS4KKyMgKGdoYXppQG5vYy5ydXRnZXJzLmVkdSAxOTk0LTA4LTI0KQoraWYgKHRlc3QgLWYgLy5hdHRiaW4vdW5hbWUpID4vZGV2L251bGwgMj4mMSA7IHRoZW4KKwlQQVRIPSRQQVRIOi8uYXR0YmluIDsgZXhwb3J0IFBBVEgKK2ZpCisKK1VOQU1FX01BQ0hJTkU9YCh1bmFtZSAtbSkgMj4vZGV2L251bGxgIHx8IFVOQU1FX01BQ0hJTkU9dW5rbm93bgorVU5BTUVfUkVMRUFTRT1gKHVuYW1lIC1yKSAyPi9kZXYvbnVsbGAgfHwgVU5BTUVfUkVMRUFTRT11bmtub3duCitVTkFNRV9TWVNURU09YCh1bmFtZSAtcykgMj4vZGV2L251bGxgICB8fCBVTkFNRV9TWVNURU09dW5rbm93bgorVU5BTUVfVkVSU0lPTj1gKHVuYW1lIC12KSAyPi9kZXYvbnVsbGAgfHwgVU5BTUVfVkVSU0lPTj11bmtub3duCisKKyMgTm90ZTogb3JkZXIgaXMgc2lnbmlmaWNhbnQgLSB0aGUgY2FzZSBicmFuY2hlcyBhcmUgbm90IGV4Y2x1c2l2ZS4KKworY2FzZSAiJHtVTkFNRV9NQUNISU5FfToke1VOQU1FX1NZU1RFTX06JHtVTkFNRV9SRUxFQVNFfToke1VOQU1FX1ZFUlNJT059IiBpbgorICAgICo6TmV0QlNEOio6KikKKwkjIE5ldEJTRCAobmJzZCkgdGFyZ2V0cyBzaG91bGQgKHdoZXJlIGFwcGxpY2FibGUpIG1hdGNoIG9uZSBvcgorCSMgbW9yZSBvZiB0aGUgdHVwcGxlczogKi0qLW5ldGJzZGVsZiosICotKi1uZXRic2Rhb3V0KiwKKwkjICotKi1uZXRic2RlY29mZiogYW5kICotKi1uZXRic2QqLiAgRm9yIHRhcmdldHMgdGhhdCByZWNlbnRseQorCSMgc3dpdGNoZWQgdG8gRUxGLCAqLSotbmV0YnNkKiB3b3VsZCBzZWxlY3QgdGhlIG9sZAorCSMgb2JqZWN0IGZpbGUgZm9ybWF0LiAgVGhpcyBwcm92aWRlcyBib3RoIGZvcndhcmQKKwkjIGNvbXBhdGliaWxpdHkgYW5kIGEgY29uc2lzdGVudCBtZWNoYW5pc20gZm9yIHNlbGVjdGluZyB0aGUKKwkjIG9iamVjdCBmaWxlIGZvcm1hdC4KKwkjCisJIyBOb3RlOiBOZXRCU0QgZG9lc24ndCBwYXJ0aWN1bGFybHkgY2FyZSBhYm91dCB0aGUgdmVuZG9yCisJIyBwb3J0aW9uIG9mIHRoZSBuYW1lLiAgV2UgYWx3YXlzIHNldCBpdCB0byAidW5rbm93biIuCisJc3lzY3RsPSJzeXNjdGwgLW4gaHcubWFjaGluZV9hcmNoIgorCVVOQU1FX01BQ0hJTkVfQVJDSD1gKC9zYmluLyRzeXNjdGwgMj4vZGV2L251bGwgfHwgXAorCSAgICAvdXNyL3NiaW4vJHN5c2N0bCAyPi9kZXYvbnVsbCB8fCBlY2hvIHVua25vd24pYAorCWNhc2UgIiR7VU5BTUVfTUFDSElORV9BUkNIfSIgaW4KKwkgICAgYXJtZWIpIG1hY2hpbmU9YXJtZWItdW5rbm93biA7OworCSAgICBhcm0qKSBtYWNoaW5lPWFybS11bmtub3duIDs7CisJICAgIHNoM2VsKSBtYWNoaW5lPXNobC11bmtub3duIDs7CisJICAgIHNoM2ViKSBtYWNoaW5lPXNoLXVua25vd24gOzsKKwkgICAgc2g1ZWwpIG1hY2hpbmU9c2g1bGUtdW5rbm93biA7OworCSAgICAqKSBtYWNoaW5lPSR7VU5BTUVfTUFDSElORV9BUkNIfS11bmtub3duIDs7CisJZXNhYworCSMgVGhlIE9wZXJhdGluZyBTeXN0ZW0gaW5jbHVkaW5nIG9iamVjdCBmb3JtYXQsIGlmIGl0IGhhcyBzd2l0Y2hlZAorCSMgdG8gRUxGIHJlY2VudGx5LCBvciB3aWxsIGluIHRoZSBmdXR1cmUuCisJY2FzZSAiJHtVTkFNRV9NQUNISU5FX0FSQ0h9IiBpbgorCSAgICBhcm0qfGkzODZ8bTY4a3xuczMya3xzaDMqfHNwYXJjfHZheCkKKwkJZXZhbCAkc2V0X2NjX2Zvcl9idWlsZAorCQlpZiBlY2hvIF9fRUxGX18gfCAkQ0NfRk9SX0JVSUxEIC1FIC0gMj4vZGV2L251bGwgXAorCQkJfCBncmVwIC1xIF9fRUxGX18KKwkJdGhlbgorCQkgICAgIyBPbmNlIGFsbCB1dGlsaXRpZXMgY2FuIGJlIEVDT0ZGIChuZXRic2RlY29mZikgb3IgYS5vdXQgKG5ldGJzZGFvdXQpLgorCQkgICAgIyBSZXR1cm4gbmV0YnNkIGZvciBlaXRoZXIuICBGSVg/CisJCSAgICBvcz1uZXRic2QKKwkJZWxzZQorCQkgICAgb3M9bmV0YnNkZWxmCisJCWZpCisJCTs7CisJICAgICopCisJCW9zPW5ldGJzZAorCQk7OworCWVzYWMKKwkjIFRoZSBPUyByZWxlYXNlCisJIyBEZWJpYW4gR05VL05ldEJTRCBtYWNoaW5lcyBoYXZlIGEgZGlmZmVyZW50IHVzZXJsYW5kLCBhbmQKKwkjIHRodXMsIG5lZWQgYSBkaXN0aW5jdCB0cmlwbGV0LiBIb3dldmVyLCB0aGV5IGRvIG5vdCBuZWVkCisJIyBrZXJuZWwgdmVyc2lvbiBpbmZvcm1hdGlvbiwgc28gaXQgY2FuIGJlIHJlcGxhY2VkIHdpdGggYQorCSMgc3VpdGFibGUgdGFnLCBpbiB0aGUgc3R5bGUgb2YgbGludXgtZ251LgorCWNhc2UgIiR7VU5BTUVfVkVSU0lPTn0iIGluCisJICAgIERlYmlhbiopCisJCXJlbGVhc2U9Jy1nbnUnCisJCTs7CisJICAgICopCisJCXJlbGVhc2U9YGVjaG8gJHtVTkFNRV9SRUxFQVNFfXxzZWQgLWUgJ3MvWy1fXS4qL1wuLydgCisJCTs7CisJZXNhYworCSMgU2luY2UgQ1BVX1RZUEUtTUFOVUZBQ1RVUkVSLUtFUk5FTC1PUEVSQVRJTkdfU1lTVEVNOgorCSMgY29udGFpbnMgcmVkdW5kYW50IGluZm9ybWF0aW9uLCB0aGUgc2hvcnRlciBmb3JtOgorCSMgQ1BVX1RZUEUtTUFOVUZBQ1RVUkVSLU9QRVJBVElOR19TWVNURU0gaXMgdXNlZC4KKwllY2hvICIke21hY2hpbmV9LSR7b3N9JHtyZWxlYXNlfSIKKwlleGl0IDs7CisgICAgKjpPcGVuQlNEOio6KikKKwlVTkFNRV9NQUNISU5FX0FSQ0g9YGFyY2ggfCBzZWQgJ3MvT3BlbkJTRC4vLydgCisJZWNobyAke1VOQU1FX01BQ0hJTkVfQVJDSH0tdW5rbm93bi1vcGVuYnNkJHtVTkFNRV9SRUxFQVNFfQorCWV4aXQgOzsKKyAgICAqOmVra29CU0Q6KjoqKQorCWVjaG8gJHtVTkFNRV9NQUNISU5FfS11bmtub3duLWVra29ic2Qke1VOQU1FX1JFTEVBU0V9CisJZXhpdCA7OworICAgICo6U29saWRCU0Q6KjoqKQorCWVjaG8gJHtVTkFNRV9NQUNISU5FfS11bmtub3duLXNvbGlkYnNkJHtVTkFNRV9SRUxFQVNFfQorCWV4aXQgOzsKKyAgICBtYWNwcGM6TWlyQlNEOio6KikKKwllY2hvIHBvd2VycGMtdW5rbm93bi1taXJic2Qke1VOQU1FX1JFTEVBU0V9CisJZXhpdCA7OworICAgICo6TWlyQlNEOio6KikKKwllY2hvICR7VU5BTUVfTUFDSElORX0tdW5rbm93bi1taXJic2Qke1VOQU1FX1JFTEVBU0V9CisJZXhpdCA7OworICAgIGFscGhhOk9TRjE6KjoqKQorCWNhc2UgJFVOQU1FX1JFTEVBU0UgaW4KKwkqNC4wKQorCQlVTkFNRV9SRUxFQVNFPWAvdXNyL3NiaW4vc2l6ZXIgLXYgfCBhd2sgJ3twcmludCAkM30nYAorCQk7OworCSo1LiopCisJCVVOQU1FX1JFTEVBU0U9YC91c3Ivc2Jpbi9zaXplciAtdiB8IGF3ayAne3ByaW50ICQ0fSdgCisJCTs7CisJZXNhYworCSMgQWNjb3JkaW5nIHRvIENvbXBhcSwgL3Vzci9zYmluL3BzcmluZm8gaGFzIGJlZW4gYXZhaWxhYmxlIG9uCisJIyBPU0YvMSBhbmQgVHJ1NjQgc3lzdGVtcyBwcm9kdWNlZCBzaW5jZSAxOTk1LiAgSSBob3BlIHRoYXQKKwkjIGNvdmVycyBtb3N0IHN5c3RlbXMgcnVubmluZyB0b2RheS4gIFRoaXMgY29kZSBwaXBlcyB0aGUgQ1BVCisJIyB0eXBlcyB0aHJvdWdoIGhlYWQgLW4gMSwgc28gd2Ugb25seSBkZXRlY3QgdGhlIHR5cGUgb2YgQ1BVIDAuCisJQUxQSEFfQ1BVX1RZUEU9YC91c3Ivc2Jpbi9wc3JpbmZvIC12IHwgc2VkIC1uIC1lICdzL14gIFRoZSBhbHBoYSBcKC4qXCkgcHJvY2Vzc29yLiokL1wxL3AnIHwgaGVhZCAtbiAxYAorCWNhc2UgIiRBTFBIQV9DUFVfVFlQRSIgaW4KKwkgICAgIkVWNCAoMjEwNjQpIikKKwkJVU5BTUVfTUFDSElORT0iYWxwaGEiIDs7CisJICAgICJFVjQuNSAoMjEwNjQpIikKKwkJVU5BTUVfTUFDSElORT0iYWxwaGEiIDs7CisJICAgICJMQ0E0ICgyMTA2Ni8yMTA2OCkiKQorCQlVTkFNRV9NQUNISU5FPSJhbHBoYSIgOzsKKwkgICAgIkVWNSAoMjExNjQpIikKKwkJVU5BTUVfTUFDSElORT0iYWxwaGFldjUiIDs7CisJICAgICJFVjUuNiAoMjExNjRBKSIpCisJCVVOQU1FX01BQ0hJTkU9ImFscGhhZXY1NiIgOzsKKwkgICAgIkVWNS42ICgyMTE2NFBDKSIpCisJCVVOQU1FX01BQ0hJTkU9ImFscGhhcGNhNTYiIDs7CisJICAgICJFVjUuNyAoMjExNjRQQykiKQorCQlVTkFNRV9NQUNISU5FPSJhbHBoYXBjYTU3IiA7OworCSAgICAiRVY2ICgyMTI2NCkiKQorCQlVTkFNRV9NQUNISU5FPSJhbHBoYWV2NiIgOzsKKwkgICAgIkVWNi43ICgyMTI2NEEpIikKKwkJVU5BTUVfTUFDSElORT0iYWxwaGFldjY3IiA7OworCSAgICAiRVY2LjhDQiAoMjEyNjRDKSIpCisJCVVOQU1FX01BQ0hJTkU9ImFscGhhZXY2OCIgOzsKKwkgICAgIkVWNi44QUwgKDIxMjY0QikiKQorCQlVTkFNRV9NQUNISU5FPSJhbHBoYWV2NjgiIDs7CisJICAgICJFVjYuOENYICgyMTI2NEQpIikKKwkJVU5BTUVfTUFDSElORT0iYWxwaGFldjY4IiA7OworCSAgICAiRVY2LjlBICgyMTI2NC9FVjY5QSkiKQorCQlVTkFNRV9NQUNISU5FPSJhbHBoYWV2NjkiIDs7CisJICAgICJFVjcgKDIxMzY0KSIpCisJCVVOQU1FX01BQ0hJTkU9ImFscGhhZXY3IiA7OworCSAgICAiRVY3LjkgKDIxMzY0QSkiKQorCQlVTkFNRV9NQUNISU5FPSJhbHBoYWV2NzkiIDs7CisJZXNhYworCSMgQSBQbi5uIHZlcnNpb24gaXMgYSBwYXRjaGVkIHZlcnNpb24uCisJIyBBIFZuLm4gdmVyc2lvbiBpcyBhIHJlbGVhc2VkIHZlcnNpb24uCisJIyBBIFRuLm4gdmVyc2lvbiBpcyBhIHJlbGVhc2VkIGZpZWxkIHRlc3QgdmVyc2lvbi4KKwkjIEEgWG4ubiB2ZXJzaW9uIGlzIGFuIHVucmVsZWFzZWQgZXhwZXJpbWVudGFsIGJhc2VsZXZlbC4KKwkjIDEuMiB1c2VzICIxLjIiIGZvciB1bmFtZSAtci4KKwllY2hvICR7VU5BTUVfTUFDSElORX0tZGVjLW9zZmBlY2hvICR7VU5BTUVfUkVMRUFTRX0gfCBzZWQgLWUgJ3MvXltQVlRYXS8vJyB8IHRyICdBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWicgJ2FiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6J2AKKwkjIFJlc2V0IEVYSVQgdHJhcCBiZWZvcmUgZXhpdGluZyB0byBhdm9pZCBzcHVyaW91cyBub24temVybyBleGl0IGNvZGUuCisJZXhpdGNvZGU9JD8KKwl0cmFwICcnIDAKKwlleGl0ICRleGl0Y29kZSA7OworICAgIEFscGhhXCAqOldpbmRvd3NfTlQqOiopCisJIyBIb3cgZG8gd2Uga25vdyBpdCdzIEludGVyaXggcmF0aGVyIHRoYW4gdGhlIGdlbmVyaWMgUE9TSVggc3Vic3lzdGVtPworCSMgU2hvdWxkIHdlIGNoYW5nZSBVTkFNRV9NQUNISU5FIGJhc2VkIG9uIHRoZSBvdXRwdXQgb2YgdW5hbWUgaW5zdGVhZAorCSMgb2YgdGhlIHNwZWNpZmljIEFscGhhIG1vZGVsPworCWVjaG8gYWxwaGEtcGMtaW50ZXJpeAorCWV4aXQgOzsKKyAgICAyMTA2NDpXaW5kb3dzX05UOjUwOjMpCisJZWNobyBhbHBoYS1kZWMtd2lubnQzLjUKKwlleGl0IDs7CisgICAgQW1pZ2EqOlVOSVhfU3lzdGVtX1Y6NC4wOiopCisJZWNobyBtNjhrLXVua25vd24tc3lzdjQKKwlleGl0IDs7CisgICAgKjpbQWFdbWlnYVtPb11bU3NdOio6KikKKwllY2hvICR7VU5BTUVfTUFDSElORX0tdW5rbm93bi1hbWlnYW9zCisJZXhpdCA7OworICAgICo6W01tXW9ycGhbT29dW1NzXToqOiopCisJZWNobyAke1VOQU1FX01BQ0hJTkV9LXVua25vd24tbW9ycGhvcworCWV4aXQgOzsKKyAgICAqOk9TLzM5MDoqOiopCisJZWNobyBpMzcwLWlibS1vcGVuZWRpdGlvbgorCWV4aXQgOzsKKyAgICAqOnovVk06KjoqKQorCWVjaG8gczM5MC1pYm0tenZtb2UKKwlleGl0IDs7CisgICAgKjpPUzQwMDoqOiopCisJZWNobyBwb3dlcnBjLWlibS1vczQwMAorCWV4aXQgOzsKKyAgICBhcm06UklTQyo6MS5bMDEyXSo6Knxhcm06cmlzY2l4OjEuWzAxMl0qOiopCisJZWNobyBhcm0tYWNvcm4tcmlzY2l4JHtVTkFNRV9SRUxFQVNFfQorCWV4aXQgOzsKKyAgICBhcm06cmlzY29zOio6Knxhcm06UklTQ09TOio6KikKKwllY2hvIGFybS11bmtub3duLXJpc2NvcworCWV4aXQgOzsKKyAgICBTUjI/MDE6SEktVVgvTVBQOio6KiB8IFNSODAwMDpISS1VWC9NUFA6KjoqKQorCWVjaG8gaHBwYTEuMS1oaXRhY2hpLWhpdXhtcHAKKwlleGl0IDs7CisgICAgUHlyYW1pZCo6T1N4KjoqOiogfCBNSVMqOk9TeCo6KjoqIHwgTUlTKjpTTVBfREMtT1N4KjoqOiopCisJIyBha2VlQHdwZGlzMDMud3BhZmIuYWYubWlsIChFYXJsZSBGLiBBa2UpIGNvbnRyaWJ1dGVkIE1JUyBhbmQgTklMRS4KKwlpZiB0ZXN0ICJgKC9iaW4vdW5pdmVyc2UpIDI+L2Rldi9udWxsYCIgPSBhdHQgOyB0aGVuCisJCWVjaG8gcHlyYW1pZC1weXJhbWlkLXN5c3YzCisJZWxzZQorCQllY2hvIHB5cmFtaWQtcHlyYW1pZC1ic2QKKwlmaQorCWV4aXQgOzsKKyAgICBOSUxFKjoqOio6ZGNvc3gpCisJZWNobyBweXJhbWlkLXB5cmFtaWQtc3ZyNAorCWV4aXQgOzsKKyAgICBEUlM/NjAwMDp1bml4OjQuMDo2KikKKwllY2hvIHNwYXJjLWljbC1ueDYKKwlleGl0IDs7CisgICAgRFJTPzYwMDA6VU5JWF9TVjo0LjIqOjcqIHwgRFJTPzYwMDA6aXNpczo0LjIqOjcqKQorCWNhc2UgYC91c3IvYmluL3VuYW1lIC1wYCBpbgorCSAgICBzcGFyYykgZWNobyBzcGFyYy1pY2wtbng3OyBleGl0IDs7CisJZXNhYyA7OworICAgIHMzOTB4OlN1bk9TOio6KikKKwllY2hvICR7VU5BTUVfTUFDSElORX0taWJtLXNvbGFyaXMyYGVjaG8gJHtVTkFNRV9SRUxFQVNFfXxzZWQgLWUgJ3MvW14uXSovLydgCisJZXhpdCA7OworICAgIHN1bjRIOlN1bk9TOjUuKjoqKQorCWVjaG8gc3BhcmMtaGFsLXNvbGFyaXMyYGVjaG8gJHtVTkFNRV9SRUxFQVNFfXxzZWQgLWUgJ3MvW14uXSovLydgCisJZXhpdCA7OworICAgIHN1bjQqOlN1bk9TOjUuKjoqIHwgdGFkcG9sZSo6U3VuT1M6NS4qOiopCisJZWNobyBzcGFyYy1zdW4tc29sYXJpczJgZWNobyAke1VOQU1FX1JFTEVBU0V9fHNlZCAtZSAncy9bXi5dKi8vJ2AKKwlleGl0IDs7CisgICAgaTg2cGM6QXVyb3JhVVg6NS4qOiogfCBpODZ4ZW46QXVyb3JhVVg6NS4qOiopCisJZWNobyBpMzg2LXBjLWF1cm9yYXV4JHtVTkFNRV9SRUxFQVNFfQorCWV4aXQgOzsKKyAgICBpODZwYzpTdW5PUzo1Lio6KiB8IGk4NnhlbjpTdW5PUzo1Lio6KikKKwlldmFsICRzZXRfY2NfZm9yX2J1aWxkCisJU1VOX0FSQ0g9ImkzODYiCisJIyBJZiB0aGVyZSBpcyBhIGNvbXBpbGVyLCBzZWUgaWYgaXQgaXMgY29uZmlndXJlZCBmb3IgNjQtYml0IG9iamVjdHMuCisJIyBOb3RlIHRoYXQgdGhlIFN1biBjYyBkb2VzIG5vdCB0dXJuIF9fTFA2NF9fIGludG8gMSBsaWtlIGdjYyBkb2VzLgorCSMgVGhpcyB0ZXN0IHdvcmtzIGZvciBib3RoIGNvbXBpbGVycy4KKwlpZiBbICIkQ0NfRk9SX0JVSUxEIiAhPSAnbm9fY29tcGlsZXJfZm91bmQnIF07IHRoZW4KKwkgICAgaWYgKGVjaG8gJyNpZmRlZiBfX2FtZDY0JzsgZWNobyBJU182NEJJVF9BUkNIOyBlY2hvICcjZW5kaWYnKSB8IFwKKwkJKENDT1BUUz0gJENDX0ZPUl9CVUlMRCAtRSAtIDI+L2Rldi9udWxsKSB8IFwKKwkJZ3JlcCBJU182NEJJVF9BUkNIID4vZGV2L251bGwKKwkgICAgdGhlbgorCQlTVU5fQVJDSD0ieDg2XzY0IgorCSAgICBmaQorCWZpCisJZWNobyAke1NVTl9BUkNIfS1wYy1zb2xhcmlzMmBlY2hvICR7VU5BTUVfUkVMRUFTRX18c2VkIC1lICdzL1teLl0qLy8nYAorCWV4aXQgOzsKKyAgICBzdW40KjpTdW5PUzo2KjoqKQorCSMgQWNjb3JkaW5nIHRvIGNvbmZpZy5zdWIsIHRoaXMgaXMgdGhlIHByb3BlciB3YXkgdG8gY2Fub25pY2FsaXplCisJIyBTdW5PUzYuICBIYXJkIHRvIGd1ZXNzIGV4YWN0bHkgd2hhdCBTdW5PUzYgd2lsbCBiZSBsaWtlLCBidXQKKwkjIGl0J3MgbGlrZWx5IHRvIGJlIG1vcmUgbGlrZSBTb2xhcmlzIHRoYW4gU3VuT1M0LgorCWVjaG8gc3BhcmMtc3VuLXNvbGFyaXMzYGVjaG8gJHtVTkFNRV9SRUxFQVNFfXxzZWQgLWUgJ3MvW14uXSovLydgCisJZXhpdCA7OworICAgIHN1bjQqOlN1bk9TOio6KikKKwljYXNlICJgL3Vzci9iaW4vYXJjaCAta2AiIGluCisJICAgIFNlcmllcyp8UzQqKQorCQlVTkFNRV9SRUxFQVNFPWB1bmFtZSAtdmAKKwkJOzsKKwllc2FjCisJIyBKYXBhbmVzZSBMYW5ndWFnZSB2ZXJzaW9ucyBoYXZlIGEgdmVyc2lvbiBudW1iZXIgbGlrZSBgNC4xLjMtSkwnLgorCWVjaG8gc3BhcmMtc3VuLXN1bm9zYGVjaG8gJHtVTkFNRV9SRUxFQVNFfXxzZWQgLWUgJ3MvLS9fLydgCisJZXhpdCA7OworICAgIHN1bjMqOlN1bk9TOio6KikKKwllY2hvIG02OGstc3VuLXN1bm9zJHtVTkFNRV9SRUxFQVNFfQorCWV4aXQgOzsKKyAgICBzdW4qOio6NC4yQlNEOiopCisJVU5BTUVfUkVMRUFTRT1gKHNlZCAxcSAvZXRjL21vdGQgfCBhd2sgJ3twcmludCBzdWJzdHIoJDUsMSwzKX0nKSAyPi9kZXYvbnVsbGAKKwl0ZXN0ICJ4JHtVTkFNRV9SRUxFQVNFfSIgPSAieCIgJiYgVU5BTUVfUkVMRUFTRT0zCisJY2FzZSAiYC9iaW4vYXJjaGAiIGluCisJICAgIHN1bjMpCisJCWVjaG8gbTY4ay1zdW4tc3Vub3Mke1VOQU1FX1JFTEVBU0V9CisJCTs7CisJICAgIHN1bjQpCisJCWVjaG8gc3BhcmMtc3VuLXN1bm9zJHtVTkFNRV9SRUxFQVNFfQorCQk7OworCWVzYWMKKwlleGl0IDs7CisgICAgYXVzaHA6U3VuT1M6KjoqKQorCWVjaG8gc3BhcmMtYXVzcGV4LXN1bm9zJHtVTkFNRV9SRUxFQVNFfQorCWV4aXQgOzsKKyAgICAjIFRoZSBzaXR1YXRpb24gZm9yIE1pTlQgaXMgYSBsaXR0bGUgY29uZnVzaW5nLiAgVGhlIG1hY2hpbmUgbmFtZQorICAgICMgY2FuIGJlIHZpcnR1YWxseSBldmVyeXRoaW5nIChldmVyeXRoaW5nIHdoaWNoIGlzIG5vdAorICAgICMgImF0YXJpc3QiIG9yICJhdGFyaXN0ZSIgYXQgbGVhc3Qgc2hvdWxkIGhhdmUgYSBwcm9jZXNzb3IKKyAgICAjID4gbTY4MDAwKS4gIFRoZSBzeXN0ZW0gbmFtZSByYW5nZXMgZnJvbSAiTWlOVCIgb3ZlciAiRnJlZU1pTlQiCisgICAgIyB0byB0aGUgbG93ZXJjYXNlIHZlcnNpb24gIm1pbnQiIChvciAiZnJlZW1pbnQiKS4gIEZpbmFsbHkKKyAgICAjIHRoZSBzeXN0ZW0gbmFtZSAiVE9TIiBkZW5vdGVzIGEgc3lzdGVtIHdoaWNoIGlzIGFjdHVhbGx5IG5vdAorICAgICMgTWlOVC4gIEJ1dCBNaU5UIGlzIGRvd253YXJkIGNvbXBhdGlibGUgdG8gVE9TLCBzbyB0aGlzIHNob3VsZAorICAgICMgYmUgbm8gcHJvYmxlbS4KKyAgICBhdGFyaXN0W2VdOipNaU5UOio6KiB8IGF0YXJpc3RbZV06Km1pbnQ6KjoqIHwgYXRhcmlzdFtlXToqVE9TOio6KikKKwllY2hvIG02OGstYXRhcmktbWludCR7VU5BTUVfUkVMRUFTRX0KKwlleGl0IDs7CisgICAgYXRhcmkqOipNaU5UOio6KiB8IGF0YXJpKjoqbWludDoqOiogfCBhdGFyaXN0W2VdOipUT1M6KjoqKQorCWVjaG8gbTY4ay1hdGFyaS1taW50JHtVTkFNRV9SRUxFQVNFfQorCWV4aXQgOzsKKyAgICAqZmFsY29uKjoqTWlOVDoqOiogfCAqZmFsY29uKjoqbWludDoqOiogfCAqZmFsY29uKjoqVE9TOio6KikKKwllY2hvIG02OGstYXRhcmktbWludCR7VU5BTUVfUkVMRUFTRX0KKwlleGl0IDs7CisgICAgbWlsYW4qOipNaU5UOio6KiB8IG1pbGFuKjoqbWludDoqOiogfCAqbWlsYW4qOipUT1M6KjoqKQorCWVjaG8gbTY4ay1taWxhbi1taW50JHtVTkFNRV9SRUxFQVNFfQorCWV4aXQgOzsKKyAgICBoYWRlcyo6Kk1pTlQ6KjoqIHwgaGFkZXMqOiptaW50Oio6KiB8ICpoYWRlcyo6KlRPUzoqOiopCisJZWNobyBtNjhrLWhhZGVzLW1pbnQke1VOQU1FX1JFTEVBU0V9CisJZXhpdCA7OworICAgICo6Kk1pTlQ6KjoqIHwgKjoqbWludDoqOiogfCAqOipUT1M6KjoqKQorCWVjaG8gbTY4ay11bmtub3duLW1pbnQke1VOQU1FX1JFTEVBU0V9CisJZXhpdCA7OworICAgIG02OGs6bWFjaHRlbjoqOiopCisJZWNobyBtNjhrLWFwcGxlLW1hY2h0ZW4ke1VOQU1FX1JFTEVBU0V9CisJZXhpdCA7OworICAgIHBvd2VycGM6bWFjaHRlbjoqOiopCisJZWNobyBwb3dlcnBjLWFwcGxlLW1hY2h0ZW4ke1VOQU1FX1JFTEVBU0V9CisJZXhpdCA7OworICAgIFJJU0MqOk1hY2g6KjoqKQorCWVjaG8gbWlwcy1kZWMtbWFjaF9ic2Q0LjMKKwlleGl0IDs7CisgICAgUklTQyo6VUxUUklYOio6KikKKwllY2hvIG1pcHMtZGVjLXVsdHJpeCR7VU5BTUVfUkVMRUFTRX0KKwlleGl0IDs7CisgICAgVkFYKjpVTFRSSVgqOio6KikKKwllY2hvIHZheC1kZWMtdWx0cml4JHtVTkFNRV9SRUxFQVNFfQorCWV4aXQgOzsKKyAgICAyMDIwOkNMSVg6KjoqIHwgMjQzMDpDTElYOio6KikKKwllY2hvIGNsaXBwZXItaW50ZXJncmFwaC1jbGl4JHtVTkFNRV9SRUxFQVNFfQorCWV4aXQgOzsKKyAgICBtaXBzOio6KjpVTUlQUyB8IG1pcHM6KjoqOlJJU0NvcykKKwlldmFsICRzZXRfY2NfZm9yX2J1aWxkCisJc2VkICdzL14JLy8nIDw8IEVPRiA+JGR1bW15LmMKKyNpZmRlZiBfX2NwbHVzcGx1cworI2luY2x1ZGUgPHN0ZGlvLmg+ICAvKiBmb3IgcHJpbnRmKCkgcHJvdG90eXBlICovCisJaW50IG1haW4gKGludCBhcmdjLCBjaGFyICphcmd2W10pIHsKKyNlbHNlCisJaW50IG1haW4gKGFyZ2MsIGFyZ3YpIGludCBhcmdjOyBjaGFyICphcmd2W107IHsKKyNlbmRpZgorCSNpZiBkZWZpbmVkIChob3N0X21pcHMpICYmIGRlZmluZWQgKE1JUFNFQikKKwkjaWYgZGVmaW5lZCAoU1lTVFlQRV9TWVNWKQorCSAgcHJpbnRmICgibWlwcy1taXBzLXJpc2NvcyVzc3lzdlxuIiwgYXJndlsxXSk7IGV4aXQgKDApOworCSNlbmRpZgorCSNpZiBkZWZpbmVkIChTWVNUWVBFX1NWUjQpCisJICBwcmludGYgKCJtaXBzLW1pcHMtcmlzY29zJXNzdnI0XG4iLCBhcmd2WzFdKTsgZXhpdCAoMCk7CisJI2VuZGlmCisJI2lmIGRlZmluZWQgKFNZU1RZUEVfQlNENDMpIHx8IGRlZmluZWQoU1lTVFlQRV9CU0QpCisJICBwcmludGYgKCJtaXBzLW1pcHMtcmlzY29zJXNic2RcbiIsIGFyZ3ZbMV0pOyBleGl0ICgwKTsKKwkjZW5kaWYKKwkjZW5kaWYKKwkgIGV4aXQgKC0xKTsKKwl9CitFT0YKKwkkQ0NfRk9SX0JVSUxEIC1vICRkdW1teSAkZHVtbXkuYyAmJgorCSAgZHVtbXlhcmc9YGVjaG8gIiR7VU5BTUVfUkVMRUFTRX0iIHwgc2VkIC1uICdzL1woWzAtOV0qXCkuKi9cMS9wJ2AgJiYKKwkgIFNZU1RFTV9OQU1FPWAkZHVtbXkgJGR1bW15YXJnYCAmJgorCSAgICB7IGVjaG8gIiRTWVNURU1fTkFNRSI7IGV4aXQ7IH0KKwllY2hvIG1pcHMtbWlwcy1yaXNjb3Mke1VOQU1FX1JFTEVBU0V9CisJZXhpdCA7OworICAgIE1vdG9yb2xhOlBvd2VyTUFYX09TOio6KikKKwllY2hvIHBvd2VycGMtbW90b3JvbGEtcG93ZXJtYXgKKwlleGl0IDs7CisgICAgTW90b3JvbGE6Kjo0LjM6UEw4LSopCisJZWNobyBwb3dlcnBjLWhhcnJpcy1wb3dlcm1heAorCWV4aXQgOzsKKyAgICBOaWdodF9IYXdrOio6KjpQb3dlck1BWF9PUyB8IFN5bmVyZ3k6UG93ZXJNQVhfT1M6KjoqKQorCWVjaG8gcG93ZXJwYy1oYXJyaXMtcG93ZXJtYXgKKwlleGl0IDs7CisgICAgTmlnaHRfSGF3azpQb3dlcl9VTklYOio6KikKKwllY2hvIHBvd2VycGMtaGFycmlzLXBvd2VydW5peAorCWV4aXQgOzsKKyAgICBtODhrOkNYL1VYOjcqOiopCisJZWNobyBtODhrLWhhcnJpcy1jeHV4NworCWV4aXQgOzsKKyAgICBtODhrOio6NCo6UjQqKQorCWVjaG8gbTg4ay1tb3Rvcm9sYS1zeXN2NAorCWV4aXQgOzsKKyAgICBtODhrOio6Myo6UjMqKQorCWVjaG8gbTg4ay1tb3Rvcm9sYS1zeXN2MworCWV4aXQgOzsKKyAgICBBVmlpT046ZGd1eDoqOiopCisJIyBERy9VWCByZXR1cm5zIEFWaWlPTiBmb3IgYWxsIGFyY2hpdGVjdHVyZXMKKwlVTkFNRV9QUk9DRVNTT1I9YC91c3IvYmluL3VuYW1lIC1wYAorCWlmIFsgJFVOQU1FX1BST0NFU1NPUiA9IG1jODgxMDAgXSB8fCBbICRVTkFNRV9QUk9DRVNTT1IgPSBtYzg4MTEwIF0KKwl0aGVuCisJICAgIGlmIFsgJHtUQVJHRVRfQklOQVJZX0lOVEVSRkFDRX14ID0gbTg4a2RndXhlbGZ4IF0gfHwgXAorCSAgICAgICBbICR7VEFSR0VUX0JJTkFSWV9JTlRFUkZBQ0V9eCA9IHggXQorCSAgICB0aGVuCisJCWVjaG8gbTg4ay1kZy1kZ3V4JHtVTkFNRV9SRUxFQVNFfQorCSAgICBlbHNlCisJCWVjaG8gbTg4ay1kZy1kZ3V4YmNzJHtVTkFNRV9SRUxFQVNFfQorCSAgICBmaQorCWVsc2UKKwkgICAgZWNobyBpNTg2LWRnLWRndXgke1VOQU1FX1JFTEVBU0V9CisJZmkKKwlleGl0IDs7CisgICAgTTg4KjpEb2xwaGluT1M6KjoqKQkjIERvbHBoaW5PUyAoU1ZSMykKKwllY2hvIG04OGstZG9scGhpbi1zeXN2MworCWV4aXQgOzsKKyAgICBNODgqOio6UjMqOiopCisJIyBEZWx0YSA4OGsgc3lzdGVtIHJ1bm5pbmcgU1ZSMworCWVjaG8gbTg4ay1tb3Rvcm9sYS1zeXN2MworCWV4aXQgOzsKKyAgICBYRDg4KjoqOio6KikgIyBUZWt0cm9uaXggWEQ4OCBzeXN0ZW0gcnVubmluZyBVVGVrViAoU1ZSMykKKwllY2hvIG04OGstdGVrdHJvbml4LXN5c3YzCisJZXhpdCA7OworICAgIFRlazQzWzAtOV1bMC05XTpVVGVrOio6KikgIyBUZWt0cm9uaXggNDMwMCBzeXN0ZW0gcnVubmluZyBVVGVrIChCU0QpCisJZWNobyBtNjhrLXRla3Ryb25peC1ic2QKKwlleGl0IDs7CisgICAgKjpJUklYKjoqOiopCisJZWNobyBtaXBzLXNnaS1pcml4YGVjaG8gJHtVTkFNRV9SRUxFQVNFfXxzZWQgLWUgJ3MvLS9fL2cnYAorCWV4aXQgOzsKKyAgICA/Pz8/Pz8/PzpBSVg/OlsxMl0uMToyKSAgICMgQUlYIDIuMi4xIG9yIEFJWCAyLjEuMSBpcyBSVC9QQyBBSVguCisJZWNobyByb21wLWlibS1haXggICAgICMgdW5hbWUgLW0gZ2l2ZXMgYW4gOCBoZXgtY29kZSBDUFUgaWQKKwlleGl0IDs7ICAgICAgICAgICAgICAgIyBOb3RlIHRoYXQ6IGVjaG8gIidgdW5hbWUgLXNgJyIgZ2l2ZXMgJ0FJWCAnCisgICAgaSo4NjpBSVg6KjoqKQorCWVjaG8gaTM4Ni1pYm0tYWl4CisJZXhpdCA7OworICAgIGlhNjQ6QUlYOio6KikKKwlpZiBbIC14IC91c3IvYmluL29zbGV2ZWwgXSA7IHRoZW4KKwkJSUJNX1JFVj1gL3Vzci9iaW4vb3NsZXZlbGAKKwllbHNlCisJCUlCTV9SRVY9JHtVTkFNRV9WRVJTSU9OfS4ke1VOQU1FX1JFTEVBU0V9CisJZmkKKwllY2hvICR7VU5BTUVfTUFDSElORX0taWJtLWFpeCR7SUJNX1JFVn0KKwlleGl0IDs7CisgICAgKjpBSVg6MjozKQorCWlmIGdyZXAgYm9zMzI1IC91c3IvaW5jbHVkZS9zdGRpby5oID4vZGV2L251bGwgMj4mMTsgdGhlbgorCQlldmFsICRzZXRfY2NfZm9yX2J1aWxkCisJCXNlZCAncy9eCQkvLycgPDwgRU9GID4kZHVtbXkuYworCQkjaW5jbHVkZSA8c3lzL3N5c3RlbWNmZy5oPgorCisJCW1haW4oKQorCQkJeworCQkJaWYgKCFfX3Bvd2VyX3BjKCkpCisJCQkJZXhpdCgxKTsKKwkJCXB1dHMoInBvd2VycGMtaWJtLWFpeDMuMi41Iik7CisJCQlleGl0KDApOworCQkJfQorRU9GCisJCWlmICRDQ19GT1JfQlVJTEQgLW8gJGR1bW15ICRkdW1teS5jICYmIFNZU1RFTV9OQU1FPWAkZHVtbXlgCisJCXRoZW4KKwkJCWVjaG8gIiRTWVNURU1fTkFNRSIKKwkJZWxzZQorCQkJZWNobyByczYwMDAtaWJtLWFpeDMuMi41CisJCWZpCisJZWxpZiBncmVwIGJvczMyNCAvdXNyL2luY2x1ZGUvc3RkaW8uaCA+L2Rldi9udWxsIDI+JjE7IHRoZW4KKwkJZWNobyByczYwMDAtaWJtLWFpeDMuMi40CisJZWxzZQorCQllY2hvIHJzNjAwMC1pYm0tYWl4My4yCisJZmkKKwlleGl0IDs7CisgICAgKjpBSVg6KjpbNDU2N10pCisJSUJNX0NQVV9JRD1gL3Vzci9zYmluL2xzZGV2IC1DIC1jIHByb2Nlc3NvciAtUyBhdmFpbGFibGUgfCBzZWQgMXEgfCBhd2sgJ3sgcHJpbnQgJDEgfSdgCisJaWYgL3Vzci9zYmluL2xzYXR0ciAtRWwgJHtJQk1fQ1BVX0lEfSB8IGdyZXAgJyBQT1dFUicgPi9kZXYvbnVsbCAyPiYxOyB0aGVuCisJCUlCTV9BUkNIPXJzNjAwMAorCWVsc2UKKwkJSUJNX0FSQ0g9cG93ZXJwYworCWZpCisJaWYgWyAteCAvdXNyL2Jpbi9vc2xldmVsIF0gOyB0aGVuCisJCUlCTV9SRVY9YC91c3IvYmluL29zbGV2ZWxgCisJZWxzZQorCQlJQk1fUkVWPSR7VU5BTUVfVkVSU0lPTn0uJHtVTkFNRV9SRUxFQVNFfQorCWZpCisJZWNobyAke0lCTV9BUkNIfS1pYm0tYWl4JHtJQk1fUkVWfQorCWV4aXQgOzsKKyAgICAqOkFJWDoqOiopCisJZWNobyByczYwMDAtaWJtLWFpeAorCWV4aXQgOzsKKyAgICBpYm1ydDo0LjRCU0Q6Knxyb21wLWlibTpCU0Q6KikKKwllY2hvIHJvbXAtaWJtLWJzZDQuNAorCWV4aXQgOzsKKyAgICBpYm1ydDoqQlNEOip8cm9tcC1pYm06QlNEOiopICAgICAgICAgICAgIyBjb3ZlcnMgUlQvUEMgQlNEIGFuZAorCWVjaG8gcm9tcC1pYm0tYnNkJHtVTkFNRV9SRUxFQVNFfSAgICMgNC4zIHdpdGggdW5hbWUgYWRkZWQgdG8KKwlleGl0IDs7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIHJlcG9ydDogcm9tcC1pYm0gQlNEIDQuMworICAgICo6Qk9TWDoqOiopCisJZWNobyByczYwMDAtYnVsbC1ib3N4CisJZXhpdCA7OworICAgIERQWC8yPzAwOkIuTy5TLjoqOiopCisJZWNobyBtNjhrLWJ1bGwtc3lzdjMKKwlleGl0IDs7CisgICAgOTAwMC9bMzRdPz86NC4zYnNkOjEuKjoqKQorCWVjaG8gbTY4ay1ocC1ic2QKKwlleGl0IDs7CisgICAgaHAzMDA6NC40QlNEOio6KiB8IDkwMDAvWzM0XT8/OjQuM2JzZDoyLio6KikKKwllY2hvIG02OGstaHAtYnNkNC40CisJZXhpdCA7OworICAgIDkwMDAvWzM0Njc4XT8/OkhQLVVYOio6KikKKwlIUFVYX1JFVj1gZWNobyAke1VOQU1FX1JFTEVBU0V9fHNlZCAtZSAncy9bXi5dKi5bMEJdKi8vJ2AKKwljYXNlICIke1VOQU1FX01BQ0hJTkV9IiBpbgorCSAgICA5MDAwLzMxPyApICAgICAgICAgICAgSFBfQVJDSD1tNjgwMDAgOzsKKwkgICAgOTAwMC9bMzRdPz8gKSAgICAgICAgIEhQX0FSQ0g9bTY4ayA7OworCSAgICA5MDAwL1s2NzhdWzAtOV1bMC05XSkKKwkJaWYgWyAteCAvdXNyL2Jpbi9nZXRjb25mIF07IHRoZW4KKwkJICAgIHNjX2NwdV92ZXJzaW9uPWAvdXNyL2Jpbi9nZXRjb25mIFNDX0NQVV9WRVJTSU9OIDI+L2Rldi9udWxsYAorCQkgICAgc2Nfa2VybmVsX2JpdHM9YC91c3IvYmluL2dldGNvbmYgU0NfS0VSTkVMX0JJVFMgMj4vZGV2L251bGxgCisJCSAgICBjYXNlICIke3NjX2NwdV92ZXJzaW9ufSIgaW4KKwkJICAgICAgNTIzKSBIUF9BUkNIPSJocHBhMS4wIiA7OyAjIENQVV9QQV9SSVNDMV8wCisJCSAgICAgIDUyOCkgSFBfQVJDSD0iaHBwYTEuMSIgOzsgIyBDUFVfUEFfUklTQzFfMQorCQkgICAgICA1MzIpICAgICAgICAgICAgICAgICAgICAgICMgQ1BVX1BBX1JJU0MyXzAKKwkJCWNhc2UgIiR7c2Nfa2VybmVsX2JpdHN9IiBpbgorCQkJICAzMikgSFBfQVJDSD0iaHBwYTIuMG4iIDs7CisJCQkgIDY0KSBIUF9BUkNIPSJocHBhMi4wdyIgOzsKKwkJCSAgJycpIEhQX0FSQ0g9ImhwcGEyLjAiIDs7ICAgIyBIUC1VWCAxMC4yMAorCQkJZXNhYyA7OworCQkgICAgZXNhYworCQlmaQorCQlpZiBbICIke0hQX0FSQ0h9IiA9ICIiIF07IHRoZW4KKwkJICAgIGV2YWwgJHNldF9jY19mb3JfYnVpbGQKKwkJICAgIHNlZCAncy9eCQkvLycgPDwgRU9GID4kZHVtbXkuYworCisJCSNkZWZpbmUgX0hQVVhfU09VUkNFCisJCSNpbmNsdWRlIDxzdGRsaWIuaD4KKwkJI2luY2x1ZGUgPHVuaXN0ZC5oPgorCisJCWludCBtYWluICgpCisJCXsKKwkJI2lmIGRlZmluZWQoX1NDX0tFUk5FTF9CSVRTKQorCQkgICAgbG9uZyBiaXRzID0gc3lzY29uZihfU0NfS0VSTkVMX0JJVFMpOworCQkjZW5kaWYKKwkJICAgIGxvbmcgY3B1ICA9IHN5c2NvbmYgKF9TQ19DUFVfVkVSU0lPTik7CisKKwkJICAgIHN3aXRjaCAoY3B1KQorCQkJeworCQkJY2FzZSBDUFVfUEFfUklTQzFfMDogcHV0cyAoImhwcGExLjAiKTsgYnJlYWs7CisJCQljYXNlIENQVV9QQV9SSVNDMV8xOiBwdXRzICgiaHBwYTEuMSIpOyBicmVhazsKKwkJCWNhc2UgQ1BVX1BBX1JJU0MyXzA6CisJCSNpZiBkZWZpbmVkKF9TQ19LRVJORUxfQklUUykKKwkJCSAgICBzd2l0Y2ggKGJpdHMpCisJCQkJeworCQkJCWNhc2UgNjQ6IHB1dHMgKCJocHBhMi4wdyIpOyBicmVhazsKKwkJCQljYXNlIDMyOiBwdXRzICgiaHBwYTIuMG4iKTsgYnJlYWs7CisJCQkJZGVmYXVsdDogcHV0cyAoImhwcGEyLjAiKTsgYnJlYWs7CisJCQkJfSBicmVhazsKKwkJI2Vsc2UgIC8qICFkZWZpbmVkKF9TQ19LRVJORUxfQklUUykgKi8KKwkJCSAgICBwdXRzICgiaHBwYTIuMCIpOyBicmVhazsKKwkJI2VuZGlmCisJCQlkZWZhdWx0OiBwdXRzICgiaHBwYTEuMCIpOyBicmVhazsKKwkJCX0KKwkJICAgIGV4aXQgKDApOworCQl9CitFT0YKKwkJICAgIChDQ09QVFM9ICRDQ19GT1JfQlVJTEQgLW8gJGR1bW15ICRkdW1teS5jIDI+L2Rldi9udWxsKSAmJiBIUF9BUkNIPWAkZHVtbXlgCisJCSAgICB0ZXN0IC16ICIkSFBfQVJDSCIgJiYgSFBfQVJDSD1ocHBhCisJCWZpIDs7CisJZXNhYworCWlmIFsgJHtIUF9BUkNIfSA9ICJocHBhMi4wdyIgXQorCXRoZW4KKwkgICAgZXZhbCAkc2V0X2NjX2Zvcl9idWlsZAorCisJICAgICMgaHBwYTIuMHctaHAtaHB1eCogaGFzIGEgNjQtYml0IGtlcm5lbCBhbmQgYSBjb21waWxlciBnZW5lcmF0aW5nCisJICAgICMgMzItYml0IGNvZGUuICBocHBhNjQtaHAtaHB1eCogaGFzIHRoZSBzYW1lIGtlcm5lbCBhbmQgYSBjb21waWxlcgorCSAgICAjIGdlbmVyYXRpbmcgNjQtYml0IGNvZGUuICBHTlUgYW5kIEhQIHVzZSBkaWZmZXJlbnQgbm9tZW5jbGF0dXJlOgorCSAgICAjCisJICAgICMgJCBDQ19GT1JfQlVJTEQ9Y2MgLi9jb25maWcuZ3Vlc3MKKwkgICAgIyA9PiBocHBhMi4wdy1ocC1ocHV4MTEuMjMKKwkgICAgIyAkIENDX0ZPUl9CVUlMRD0iY2MgK0RBMi4wdyIgLi9jb25maWcuZ3Vlc3MKKwkgICAgIyA9PiBocHBhNjQtaHAtaHB1eDExLjIzCisKKwkgICAgaWYgZWNobyBfX0xQNjRfXyB8IChDQ09QVFM9ICRDQ19GT1JfQlVJTEQgLUUgLSAyPi9kZXYvbnVsbCkgfAorCQlncmVwIC1xIF9fTFA2NF9fCisJICAgIHRoZW4KKwkJSFBfQVJDSD0iaHBwYTIuMHciCisJICAgIGVsc2UKKwkJSFBfQVJDSD0iaHBwYTY0IgorCSAgICBmaQorCWZpCisJZWNobyAke0hQX0FSQ0h9LWhwLWhwdXgke0hQVVhfUkVWfQorCWV4aXQgOzsKKyAgICBpYTY0OkhQLVVYOio6KikKKwlIUFVYX1JFVj1gZWNobyAke1VOQU1FX1JFTEVBU0V9fHNlZCAtZSAncy9bXi5dKi5bMEJdKi8vJ2AKKwllY2hvIGlhNjQtaHAtaHB1eCR7SFBVWF9SRVZ9CisJZXhpdCA7OworICAgIDMwNTAqOkhJLVVYOio6KikKKwlldmFsICRzZXRfY2NfZm9yX2J1aWxkCisJc2VkICdzL14JLy8nIDw8IEVPRiA+JGR1bW15LmMKKwkjaW5jbHVkZSA8dW5pc3RkLmg+CisJaW50CisJbWFpbiAoKQorCXsKKwkgIGxvbmcgY3B1ID0gc3lzY29uZiAoX1NDX0NQVV9WRVJTSU9OKTsKKwkgIC8qIFRoZSBvcmRlciBtYXR0ZXJzLCBiZWNhdXNlIENQVV9JU19IUF9NQzY4SyBlcnJvbmVvdXNseSByZXR1cm5zCisJICAgICB0cnVlIGZvciBDUFVfUEFfUklTQzFfMC4gIENQVV9JU19QQV9SSVNDIHJldHVybnMgY29ycmVjdAorCSAgICAgcmVzdWx0cywgaG93ZXZlci4gICovCisJICBpZiAoQ1BVX0lTX1BBX1JJU0MgKGNwdSkpCisJICAgIHsKKwkgICAgICBzd2l0Y2ggKGNwdSkKKwkJeworCQkgIGNhc2UgQ1BVX1BBX1JJU0MxXzA6IHB1dHMgKCJocHBhMS4wLWhpdGFjaGktaGl1eHdlMiIpOyBicmVhazsKKwkJICBjYXNlIENQVV9QQV9SSVNDMV8xOiBwdXRzICgiaHBwYTEuMS1oaXRhY2hpLWhpdXh3ZTIiKTsgYnJlYWs7CisJCSAgY2FzZSBDUFVfUEFfUklTQzJfMDogcHV0cyAoImhwcGEyLjAtaGl0YWNoaS1oaXV4d2UyIik7IGJyZWFrOworCQkgIGRlZmF1bHQ6IHB1dHMgKCJocHBhLWhpdGFjaGktaGl1eHdlMiIpOyBicmVhazsKKwkJfQorCSAgICB9CisJICBlbHNlIGlmIChDUFVfSVNfSFBfTUM2OEsgKGNwdSkpCisJICAgIHB1dHMgKCJtNjhrLWhpdGFjaGktaGl1eHdlMiIpOworCSAgZWxzZSBwdXRzICgidW5rbm93bi1oaXRhY2hpLWhpdXh3ZTIiKTsKKwkgIGV4aXQgKDApOworCX0KK0VPRgorCSRDQ19GT1JfQlVJTEQgLW8gJGR1bW15ICRkdW1teS5jICYmIFNZU1RFTV9OQU1FPWAkZHVtbXlgICYmCisJCXsgZWNobyAiJFNZU1RFTV9OQU1FIjsgZXhpdDsgfQorCWVjaG8gdW5rbm93bi1oaXRhY2hpLWhpdXh3ZTIKKwlleGl0IDs7CisgICAgOTAwMC83Pz86NC4zYnNkOio6KiB8IDkwMDAvOD9bNzldOjQuM2JzZDoqOiogKQorCWVjaG8gaHBwYTEuMS1ocC1ic2QKKwlleGl0IDs7CisgICAgOTAwMC84Pz86NC4zYnNkOio6KikKKwllY2hvIGhwcGExLjAtaHAtYnNkCisJZXhpdCA7OworICAgICo5Pz8qOk1QRS9pWDoqOiogfCAqMzAwMCo6TVBFL2lYOio6KikKKwllY2hvIGhwcGExLjAtaHAtbXBlaXgKKwlleGl0IDs7CisgICAgaHA3Pz86T1NGMToqOiogfCBocDg/Wzc5XTpPU0YxOio6KiApCisJZWNobyBocHBhMS4xLWhwLW9zZgorCWV4aXQgOzsKKyAgICBocDg/PzpPU0YxOio6KikKKwllY2hvIGhwcGExLjAtaHAtb3NmCisJZXhpdCA7OworICAgIGkqODY6T1NGMToqOiopCisJaWYgWyAteCAvdXNyL3NiaW4vc3lzdmVyc2lvbiBdIDsgdGhlbgorCSAgICBlY2hvICR7VU5BTUVfTUFDSElORX0tdW5rbm93bi1vc2YxbWsKKwllbHNlCisJICAgIGVjaG8gJHtVTkFNRV9NQUNISU5FfS11bmtub3duLW9zZjEKKwlmaQorCWV4aXQgOzsKKyAgICBwYXJpc2MqOkxpdGVzKjoqOiopCisJZWNobyBocHBhMS4xLWhwLWxpdGVzCisJZXhpdCA7OworICAgIEMxKjpDb252ZXhPUzoqOiogfCBjb252ZXg6Q29udmV4T1M6QzEqOiopCisJZWNobyBjMS1jb252ZXgtYnNkCisJZXhpdCA7OworICAgIEMyKjpDb252ZXhPUzoqOiogfCBjb252ZXg6Q29udmV4T1M6QzIqOiopCisJaWYgZ2V0c3lzaW5mbyAtZiBzY2FsYXJfYWNjCisJdGhlbiBlY2hvIGMzMi1jb252ZXgtYnNkCisJZWxzZSBlY2hvIGMyLWNvbnZleC1ic2QKKwlmaQorCWV4aXQgOzsKKyAgICBDMzQqOkNvbnZleE9TOio6KiB8IGNvbnZleDpDb252ZXhPUzpDMzQqOiopCisJZWNobyBjMzQtY29udmV4LWJzZAorCWV4aXQgOzsKKyAgICBDMzgqOkNvbnZleE9TOio6KiB8IGNvbnZleDpDb252ZXhPUzpDMzgqOiopCisJZWNobyBjMzgtY29udmV4LWJzZAorCWV4aXQgOzsKKyAgICBDNCo6Q29udmV4T1M6KjoqIHwgY29udmV4OkNvbnZleE9TOkM0KjoqKQorCWVjaG8gYzQtY29udmV4LWJzZAorCWV4aXQgOzsKKyAgICBDUkFZKlktTVA6KjoqOiopCisJZWNobyB5bXAtY3JheS11bmljb3Mke1VOQU1FX1JFTEVBU0V9IHwgc2VkIC1lICdzL1wuW14uXSokLy5YLycKKwlleGl0IDs7CisgICAgQ1JBWSpbQS1aXTkwOio6KjoqKQorCWVjaG8gJHtVTkFNRV9NQUNISU5FfS1jcmF5LXVuaWNvcyR7VU5BTUVfUkVMRUFTRX0gXAorCXwgc2VkIC1lICdzL0NSQVkuKlwoW0EtWl05MFwpL1wxLycgXAorCSAgICAgIC1lIHkvQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVovYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXovIFwKKwkgICAgICAtZSAncy9cLlteLl0qJC8uWC8nCisJZXhpdCA7OworICAgIENSQVkqVFM6KjoqOiopCisJZWNobyB0OTAtY3JheS11bmljb3Mke1VOQU1FX1JFTEVBU0V9IHwgc2VkIC1lICdzL1wuW14uXSokLy5YLycKKwlleGl0IDs7CisgICAgQ1JBWSpUM0U6KjoqOiopCisJZWNobyBhbHBoYWV2NS1jcmF5LXVuaWNvc21rJHtVTkFNRV9SRUxFQVNFfSB8IHNlZCAtZSAncy9cLlteLl0qJC8uWC8nCisJZXhpdCA7OworICAgIENSQVkqU1YxOio6KjoqKQorCWVjaG8gc3YxLWNyYXktdW5pY29zJHtVTkFNRV9SRUxFQVNFfSB8IHNlZCAtZSAncy9cLlteLl0qJC8uWC8nCisJZXhpdCA7OworICAgICo6VU5JQ09TL21wOio6KikKKwllY2hvIGNyYXludi1jcmF5LXVuaWNvc21wJHtVTkFNRV9SRUxFQVNFfSB8IHNlZCAtZSAncy9cLlteLl0qJC8uWC8nCisJZXhpdCA7OworICAgIEYzMFswMV06VU5JWF9TeXN0ZW1fVjoqOiogfCBGNzAwOlVOSVhfU3lzdGVtX1Y6KjoqKQorCUZVSklUU1VfUFJPQz1gdW5hbWUgLW0gfCB0ciAnQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVonICdhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5eidgCisJRlVKSVRTVV9TWVM9YHVuYW1lIC1wIHwgdHIgJ0FCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaJyAnYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXonIHwgc2VkIC1lICdzL1wvLy8nYAorCUZVSklUU1VfUkVMPWBlY2hvICR7VU5BTUVfUkVMRUFTRX0gfCBzZWQgLWUgJ3MvIC9fLydgCisJZWNobyAiJHtGVUpJVFNVX1BST0N9LWZ1aml0c3UtJHtGVUpJVFNVX1NZU30ke0ZVSklUU1VfUkVMfSIKKwlleGl0IDs7CisgICAgNTAwMDpVTklYX1N5c3RlbV9WOjQuKjoqKQorCUZVSklUU1VfU1lTPWB1bmFtZSAtcCB8IHRyICdBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWicgJ2FiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6JyB8IHNlZCAtZSAncy9cLy8vJ2AKKwlGVUpJVFNVX1JFTD1gZWNobyAke1VOQU1FX1JFTEVBU0V9IHwgdHIgJ0FCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaJyAnYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXonIHwgc2VkIC1lICdzLyAvXy8nYAorCWVjaG8gInNwYXJjLWZ1aml0c3UtJHtGVUpJVFNVX1NZU30ke0ZVSklUU1VfUkVMfSIKKwlleGl0IDs7CisgICAgaSo4NjpCU0QvMzg2Oio6KiB8IGkqODY6QlNEL09TOio6KiB8ICo6QXNjZW5kXCBFbWJlZGRlZC9PUzoqOiopCisJZWNobyAke1VOQU1FX01BQ0hJTkV9LXBjLWJzZGkke1VOQU1FX1JFTEVBU0V9CisJZXhpdCA7OworICAgIHNwYXJjKjpCU0QvT1M6KjoqKQorCWVjaG8gc3BhcmMtdW5rbm93bi1ic2RpJHtVTkFNRV9SRUxFQVNFfQorCWV4aXQgOzsKKyAgICAqOkJTRC9PUzoqOiopCisJZWNobyAke1VOQU1FX01BQ0hJTkV9LXVua25vd24tYnNkaSR7VU5BTUVfUkVMRUFTRX0KKwlleGl0IDs7CisgICAgKjpGcmVlQlNEOio6KikKKwljYXNlICR7VU5BTUVfTUFDSElORX0gaW4KKwkgICAgcGM5OCkKKwkJZWNobyBpMzg2LXVua25vd24tZnJlZWJzZGBlY2hvICR7VU5BTUVfUkVMRUFTRX18c2VkIC1lICdzL1stKF0uKi8vJ2AgOzsKKwkgICAgYW1kNjQpCisJCWVjaG8geDg2XzY0LXVua25vd24tZnJlZWJzZGBlY2hvICR7VU5BTUVfUkVMRUFTRX18c2VkIC1lICdzL1stKF0uKi8vJ2AgOzsKKwkgICAgKikKKwkJZWNobyAke1VOQU1FX01BQ0hJTkV9LXVua25vd24tZnJlZWJzZGBlY2hvICR7VU5BTUVfUkVMRUFTRX18c2VkIC1lICdzL1stKF0uKi8vJ2AgOzsKKwllc2FjCisJZXhpdCA7OworICAgIGkqOkNZR1dJTio6KikKKwllY2hvICR7VU5BTUVfTUFDSElORX0tcGMtY3lnd2luCisJZXhpdCA7OworICAgICo6TUlOR1cqOiopCisJZWNobyAke1VOQU1FX01BQ0hJTkV9LXBjLW1pbmd3MzIKKwlleGl0IDs7CisgICAgaSo6d2luZG93czMyKjoqKQorCSMgdW5hbWUgLW0gaW5jbHVkZXMgIi1wYyIgb24gdGhpcyBzeXN0ZW0uCisJZWNobyAke1VOQU1FX01BQ0hJTkV9LW1pbmd3MzIKKwlleGl0IDs7CisgICAgaSo6UFcqOiopCisJZWNobyAke1VOQU1FX01BQ0hJTkV9LXBjLXB3MzIKKwlleGl0IDs7CisgICAgKjpJbnRlcml4KjoqKQorCWNhc2UgJHtVTkFNRV9NQUNISU5FfSBpbgorCSAgICB4ODYpCisJCWVjaG8gaTU4Ni1wYy1pbnRlcml4JHtVTkFNRV9SRUxFQVNFfQorCQlleGl0IDs7CisJICAgIGF1dGhlbnRpY2FtZCB8IGdlbnVpbmVpbnRlbCB8IEVNNjRUKQorCQllY2hvIHg4Nl82NC11bmtub3duLWludGVyaXgke1VOQU1FX1JFTEVBU0V9CisJCWV4aXQgOzsKKwkgICAgSUE2NCkKKwkJZWNobyBpYTY0LXVua25vd24taW50ZXJpeCR7VU5BTUVfUkVMRUFTRX0KKwkJZXhpdCA7OworCWVzYWMgOzsKKyAgICBbMzQ1XTg2OldpbmRvd3NfOTU6KiB8IFszNDVdODY6V2luZG93c185ODoqIHwgWzM0NV04NjpXaW5kb3dzX05UOiopCisJZWNobyBpJHtVTkFNRV9NQUNISU5FfS1wYy1ta3MKKwlleGl0IDs7CisgICAgODY2NDpXaW5kb3dzX05UOiopCisJZWNobyB4ODZfNjQtcGMtbWtzCisJZXhpdCA7OworICAgIGkqOldpbmRvd3NfTlQqOiogfCBQZW50aXVtKjpXaW5kb3dzX05UKjoqKQorCSMgSG93IGRvIHdlIGtub3cgaXQncyBJbnRlcml4IHJhdGhlciB0aGFuIHRoZSBnZW5lcmljIFBPU0lYIHN1YnN5c3RlbT8KKwkjIEl0IGFsc28gY29uZmxpY3RzIHdpdGggcHJlLTIuMCB2ZXJzaW9ucyBvZiBBVCZUIFVXSU4uIFNob3VsZCB3ZQorCSMgVU5BTUVfTUFDSElORSBiYXNlZCBvbiB0aGUgb3V0cHV0IG9mIHVuYW1lIGluc3RlYWQgb2YgaTM4Nj8KKwllY2hvIGk1ODYtcGMtaW50ZXJpeAorCWV4aXQgOzsKKyAgICBpKjpVV0lOKjoqKQorCWVjaG8gJHtVTkFNRV9NQUNISU5FfS1wYy11d2luCisJZXhpdCA7OworICAgIGFtZDY0OkNZR1dJTio6KjoqIHwgeDg2XzY0OkNZR1dJTio6KjoqKQorCWVjaG8geDg2XzY0LXVua25vd24tY3lnd2luCisJZXhpdCA7OworICAgIHAqOkNZR1dJTio6KikKKwllY2hvIHBvd2VycGNsZS11bmtub3duLWN5Z3dpbgorCWV4aXQgOzsKKyAgICBwcmVwKjpTdW5PUzo1Lio6KikKKwllY2hvIHBvd2VycGNsZS11bmtub3duLXNvbGFyaXMyYGVjaG8gJHtVTkFNRV9SRUxFQVNFfXxzZWQgLWUgJ3MvW14uXSovLydgCisJZXhpdCA7OworICAgICo6R05VOio6KikKKwkjIHRoZSBHTlUgc3lzdGVtCisJZWNobyBgZWNobyAke1VOQU1FX01BQ0hJTkV9fHNlZCAtZSAncyxbLS9dLiokLCwnYC11bmtub3duLWdudWBlY2hvICR7VU5BTUVfUkVMRUFTRX18c2VkIC1lICdzLC8uKiQsLCdgCisJZXhpdCA7OworICAgICo6R05VLyo6KjoqKQorCSMgb3RoZXIgc3lzdGVtcyB3aXRoIEdOVSBsaWJjIGFuZCB1c2VybGFuZAorCWVjaG8gJHtVTkFNRV9NQUNISU5FfS11bmtub3duLWBlY2hvICR7VU5BTUVfU1lTVEVNfSB8IHNlZCAncyxeW14vXSovLCwnIHwgdHIgJ1tBLVpdJyAnW2Etel0nYGBlY2hvICR7VU5BTUVfUkVMRUFTRX18c2VkIC1lICdzL1stKF0uKi8vJ2AtZ251CisJZXhpdCA7OworICAgIGkqODY6TWluaXg6KjoqKQorCWVjaG8gJHtVTkFNRV9NQUNISU5FfS1wYy1taW5peAorCWV4aXQgOzsKKyAgICBhbHBoYTpMaW51eDoqOiopCisJY2FzZSBgc2VkIC1uICcvXmNwdSBtb2RlbC9zL14uKjogXCguKlwpL1wxL3AnIDwgL3Byb2MvY3B1aW5mb2AgaW4KKwkgIEVWNSkgICBVTkFNRV9NQUNISU5FPWFscGhhZXY1IDs7CisJICBFVjU2KSAgVU5BTUVfTUFDSElORT1hbHBoYWV2NTYgOzsKKwkgIFBDQTU2KSBVTkFNRV9NQUNISU5FPWFscGhhcGNhNTYgOzsKKwkgIFBDQTU3KSBVTkFNRV9NQUNISU5FPWFscGhhcGNhNTYgOzsKKwkgIEVWNikgICBVTkFNRV9NQUNISU5FPWFscGhhZXY2IDs7CisJICBFVjY3KSAgVU5BTUVfTUFDSElORT1hbHBoYWV2NjcgOzsKKwkgIEVWNjgqKSBVTkFNRV9NQUNISU5FPWFscGhhZXY2OCA7OworCWVzYWMKKwlvYmpkdW1wIC0tcHJpdmF0ZS1oZWFkZXJzIC9iaW4vc2ggfCBncmVwIC1xIGxkLnNvLjEKKwlpZiB0ZXN0ICIkPyIgPSAwIDsgdGhlbiBMSUJDPSJsaWJjMSIgOyBlbHNlIExJQkM9IiIgOyBmaQorCWVjaG8gJHtVTkFNRV9NQUNISU5FfS11bmtub3duLWxpbnV4LWdudSR7TElCQ30KKwlleGl0IDs7CisgICAgYXJtKjpMaW51eDoqOiopCisJZXZhbCAkc2V0X2NjX2Zvcl9idWlsZAorCWlmIGVjaG8gX19BUk1fRUFCSV9fIHwgJENDX0ZPUl9CVUlMRCAtRSAtIDI+L2Rldi9udWxsIFwKKwkgICAgfCBncmVwIC1xIF9fQVJNX0VBQklfXworCXRoZW4KKwkgICAgZWNobyAke1VOQU1FX01BQ0hJTkV9LXVua25vd24tbGludXgtZ251CisJZWxzZQorCSAgICBpZiBlY2hvIF9fQVJNX1BDU19WRlAgfCAkQ0NfRk9SX0JVSUxEIC1FIC0gMj4vZGV2L251bGwgXAorCQl8IGdyZXAgLXEgX19BUk1fUENTX1ZGUAorCSAgICB0aGVuCisJCWVjaG8gJHtVTkFNRV9NQUNISU5FfS11bmtub3duLWxpbnV4LWdudWVhYmkKKwkgICAgZWxzZQorCQllY2hvICR7VU5BTUVfTUFDSElORX0tdW5rbm93bi1saW51eC1nbnVlYWJpaGYKKwkgICAgZmkKKwlmaQorCWV4aXQgOzsKKyAgICBhdnIzMio6TGludXg6KjoqKQorCWVjaG8gJHtVTkFNRV9NQUNISU5FfS11bmtub3duLWxpbnV4LWdudQorCWV4aXQgOzsKKyAgICBjcmlzOkxpbnV4Oio6KikKKwllY2hvIGNyaXMtYXhpcy1saW51eC1nbnUKKwlleGl0IDs7CisgICAgY3Jpc3YzMjpMaW51eDoqOiopCisJZWNobyBjcmlzdjMyLWF4aXMtbGludXgtZ251CisJZXhpdCA7OworICAgIGZydjpMaW51eDoqOiopCisJZWNobyBmcnYtdW5rbm93bi1saW51eC1nbnUKKwlleGl0IDs7CisgICAgaSo4NjpMaW51eDoqOiopCisJTElCQz1nbnUKKwlldmFsICRzZXRfY2NfZm9yX2J1aWxkCisJc2VkICdzL14JLy8nIDw8IEVPRiA+JGR1bW15LmMKKwkjaWZkZWYgX19kaWV0bGliY19fCisJTElCQz1kaWV0bGliYworCSNlbmRpZgorRU9GCisJZXZhbCBgJENDX0ZPUl9CVUlMRCAtRSAkZHVtbXkuYyAyPi9kZXYvbnVsbCB8IGdyZXAgJ15MSUJDJ2AKKwllY2hvICIke1VOQU1FX01BQ0hJTkV9LXBjLWxpbnV4LSR7TElCQ30iCisJZXhpdCA7OworICAgIGlhNjQ6TGludXg6KjoqKQorCWVjaG8gJHtVTkFNRV9NQUNISU5FfS11bmtub3duLWxpbnV4LWdudQorCWV4aXQgOzsKKyAgICBtMzJyKjpMaW51eDoqOiopCisJZWNobyAke1VOQU1FX01BQ0hJTkV9LXVua25vd24tbGludXgtZ251CisJZXhpdCA7OworICAgIG02OCo6TGludXg6KjoqKQorCWVjaG8gJHtVTkFNRV9NQUNISU5FfS11bmtub3duLWxpbnV4LWdudQorCWV4aXQgOzsKKyAgICBtaXBzOkxpbnV4Oio6KiB8IG1pcHM2NDpMaW51eDoqOiopCisJZXZhbCAkc2V0X2NjX2Zvcl9idWlsZAorCXNlZCAncy9eCS8vJyA8PCBFT0YgPiRkdW1teS5jCisJI3VuZGVmIENQVQorCSN1bmRlZiAke1VOQU1FX01BQ0hJTkV9CisJI3VuZGVmICR7VU5BTUVfTUFDSElORX1lbAorCSNpZiBkZWZpbmVkKF9fTUlQU0VMX18pIHx8IGRlZmluZWQoX19NSVBTRUwpIHx8IGRlZmluZWQoX01JUFNFTCkgfHwgZGVmaW5lZChNSVBTRUwpCisJQ1BVPSR7VU5BTUVfTUFDSElORX1lbAorCSNlbHNlCisJI2lmIGRlZmluZWQoX19NSVBTRUJfXykgfHwgZGVmaW5lZChfX01JUFNFQikgfHwgZGVmaW5lZChfTUlQU0VCKSB8fCBkZWZpbmVkKE1JUFNFQikKKwlDUFU9JHtVTkFNRV9NQUNISU5FfQorCSNlbHNlCisJQ1BVPQorCSNlbmRpZgorCSNlbmRpZgorRU9GCisJZXZhbCBgJENDX0ZPUl9CVUlMRCAtRSAkZHVtbXkuYyAyPi9kZXYvbnVsbCB8IGdyZXAgJ15DUFUnYAorCXRlc3QgeCIke0NQVX0iICE9IHggJiYgeyBlY2hvICIke0NQVX0tdW5rbm93bi1saW51eC1nbnUiOyBleGl0OyB9CisJOzsKKyAgICBvcjMyOkxpbnV4Oio6KikKKwllY2hvIG9yMzItdW5rbm93bi1saW51eC1nbnUKKwlleGl0IDs7CisgICAgcGFkcmU6TGludXg6KjoqKQorCWVjaG8gc3BhcmMtdW5rbm93bi1saW51eC1nbnUKKwlleGl0IDs7CisgICAgcGFyaXNjNjQ6TGludXg6KjoqIHwgaHBwYTY0OkxpbnV4Oio6KikKKwllY2hvIGhwcGE2NC11bmtub3duLWxpbnV4LWdudQorCWV4aXQgOzsKKyAgICBwYXJpc2M6TGludXg6KjoqIHwgaHBwYTpMaW51eDoqOiopCisJIyBMb29rIGZvciBDUFUgbGV2ZWwKKwljYXNlIGBncmVwICdeY3B1W15hLXpdKjonIC9wcm9jL2NwdWluZm8gMj4vZGV2L251bGwgfCBjdXQgLWQnICcgLWYyYCBpbgorCSAgUEE3KikgZWNobyBocHBhMS4xLXVua25vd24tbGludXgtZ251IDs7CisJICBQQTgqKSBlY2hvIGhwcGEyLjAtdW5rbm93bi1saW51eC1nbnUgOzsKKwkgICopICAgIGVjaG8gaHBwYS11bmtub3duLWxpbnV4LWdudSA7OworCWVzYWMKKwlleGl0IDs7CisgICAgcHBjNjQ6TGludXg6KjoqKQorCWVjaG8gcG93ZXJwYzY0LXVua25vd24tbGludXgtZ251CisJZXhpdCA7OworICAgIHBwYzpMaW51eDoqOiopCisJZWNobyBwb3dlcnBjLXVua25vd24tbGludXgtZ251CisJZXhpdCA7OworICAgIHMzOTA6TGludXg6KjoqIHwgczM5MHg6TGludXg6KjoqKQorCWVjaG8gJHtVTkFNRV9NQUNISU5FfS1pYm0tbGludXgKKwlleGl0IDs7CisgICAgc2g2NCo6TGludXg6KjoqKQorCWVjaG8gJHtVTkFNRV9NQUNISU5FfS11bmtub3duLWxpbnV4LWdudQorCWV4aXQgOzsKKyAgICBzaCo6TGludXg6KjoqKQorCWVjaG8gJHtVTkFNRV9NQUNISU5FfS11bmtub3duLWxpbnV4LWdudQorCWV4aXQgOzsKKyAgICBzcGFyYzpMaW51eDoqOiogfCBzcGFyYzY0OkxpbnV4Oio6KikKKwllY2hvICR7VU5BTUVfTUFDSElORX0tdW5rbm93bi1saW51eC1nbnUKKwlleGl0IDs7CisgICAgdGlsZSo6TGludXg6KjoqKQorCWVjaG8gJHtVTkFNRV9NQUNISU5FfS10aWxlcmEtbGludXgtZ251CisJZXhpdCA7OworICAgIHZheDpMaW51eDoqOiopCisJZWNobyAke1VOQU1FX01BQ0hJTkV9LWRlYy1saW51eC1nbnUKKwlleGl0IDs7CisgICAgeDg2XzY0OkxpbnV4Oio6KikKKwllY2hvIHg4Nl82NC11bmtub3duLWxpbnV4LWdudQorCWV4aXQgOzsKKyAgICB4dGVuc2EqOkxpbnV4Oio6KikKKwllY2hvICR7VU5BTUVfTUFDSElORX0tdW5rbm93bi1saW51eC1nbnUKKwlleGl0IDs7CisgICAgaSo4NjpEWU5JWC9wdHg6NCo6KikKKwkjIHB0eCA0LjAgZG9lcyB1bmFtZSAtcyBjb3JyZWN0bHksIHdpdGggRFlOSVgvcHR4IGluIHRoZXJlLgorCSMgZWFybGllciB2ZXJzaW9ucyBhcmUgbWVzc2VkIHVwIGFuZCBwdXQgdGhlIG5vZGVuYW1lIGluIGJvdGgKKwkjIHN5c25hbWUgYW5kIG5vZGVuYW1lLgorCWVjaG8gaTM4Ni1zZXF1ZW50LXN5c3Y0CisJZXhpdCA7OworICAgIGkqODY6VU5JWF9TVjo0LjJNUDoyLiopCisJIyBVbml4d2FyZSBpcyBhbiBvZmZzaG9vdCBvZiBTVlI0LCBidXQgaXQgaGFzIGl0cyBvd24gdmVyc2lvbgorCSMgbnVtYmVyIHNlcmllcyBzdGFydGluZyB3aXRoIDIuLi4KKwkjIEkgYW0gbm90IHBvc2l0aXZlIHRoYXQgb3RoZXIgU1ZSNCBzeXN0ZW1zIHdvbid0IG1hdGNoIHRoaXMsCisJIyBJIGp1c3QgaGF2ZSB0byBob3BlLiAgLS0gcm1zLgorCSMgVXNlIHN5c3Y0LjJ1dy4uLiBzbyB0aGF0IHN5c3Y0KiBtYXRjaGVzIGl0LgorCWVjaG8gJHtVTkFNRV9NQUNISU5FfS1wYy1zeXN2NC4ydXcke1VOQU1FX1ZFUlNJT059CisJZXhpdCA7OworICAgIGkqODY6T1MvMjoqOiopCisJIyBJZiB3ZSB3ZXJlIGFibGUgdG8gZmluZCBgdW5hbWUnLCB0aGVuIEVNWCBVbml4IGNvbXBhdGliaWxpdHkKKwkjIGlzIHByb2JhYmx5IGluc3RhbGxlZC4KKwllY2hvICR7VU5BTUVfTUFDSElORX0tcGMtb3MyLWVteAorCWV4aXQgOzsKKyAgICBpKjg2OlhUUy0zMDA6KjpTVE9QKQorCWVjaG8gJHtVTkFNRV9NQUNISU5FfS11bmtub3duLXN0b3AKKwlleGl0IDs7CisgICAgaSo4NjphdGhlb3M6KjoqKQorCWVjaG8gJHtVTkFNRV9NQUNISU5FfS11bmtub3duLWF0aGVvcworCWV4aXQgOzsKKyAgICBpKjg2OnN5bGxhYmxlOio6KikKKwllY2hvICR7VU5BTUVfTUFDSElORX0tcGMtc3lsbGFibGUKKwlleGl0IDs7CisgICAgaSo4NjpMeW54T1M6Mi4qOiogfCBpKjg2Okx5bnhPUzozLlswMV0qOiogfCBpKjg2Okx5bnhPUzo0LlswMl0qOiopCisJZWNobyBpMzg2LXVua25vd24tbHlueG9zJHtVTkFNRV9SRUxFQVNFfQorCWV4aXQgOzsKKyAgICBpKjg2OipET1M6KjoqKQorCWVjaG8gJHtVTkFNRV9NQUNISU5FfS1wYy1tc2Rvc2RqZ3BwCisJZXhpdCA7OworICAgIGkqODY6Kjo0Lio6KiB8IGkqODY6U1lTVEVNX1Y6NC4qOiopCisJVU5BTUVfUkVMPWBlY2hvICR7VU5BTUVfUkVMRUFTRX0gfCBzZWQgJ3MvXC9NUCQvLydgCisJaWYgZ3JlcCBOb3ZlbGwgL3Vzci9pbmNsdWRlL2xpbmsuaCA+L2Rldi9udWxsIDI+L2Rldi9udWxsOyB0aGVuCisJCWVjaG8gJHtVTkFNRV9NQUNISU5FfS11bml2ZWwtc3lzdiR7VU5BTUVfUkVMfQorCWVsc2UKKwkJZWNobyAke1VOQU1FX01BQ0hJTkV9LXBjLXN5c3Yke1VOQU1FX1JFTH0KKwlmaQorCWV4aXQgOzsKKyAgICBpKjg2Oio6NTpbNjc4XSopCisJIyBVbml4V2FyZSA3LngsIE9wZW5VTklYIGFuZCBPcGVuU2VydmVyIDYuCisJY2FzZSBgL2Jpbi91bmFtZSAtWCB8IGdyZXAgIl5NYWNoaW5lImAgaW4KKwkgICAgKjQ4NiopCSAgICAgVU5BTUVfTUFDSElORT1pNDg2IDs7CisJICAgICpQZW50aXVtKQkgICAgIFVOQU1FX01BQ0hJTkU9aTU4NiA7OworCSAgICAqUGVudCp8KkNlbGVyb24pIFVOQU1FX01BQ0hJTkU9aTY4NiA7OworCWVzYWMKKwllY2hvICR7VU5BTUVfTUFDSElORX0tdW5rbm93bi1zeXN2JHtVTkFNRV9SRUxFQVNFfSR7VU5BTUVfU1lTVEVNfSR7VU5BTUVfVkVSU0lPTn0KKwlleGl0IDs7CisgICAgaSo4NjoqOjMuMjoqKQorCWlmIHRlc3QgLWYgL3Vzci9vcHRpb25zL2NiLm5hbWU7IHRoZW4KKwkJVU5BTUVfUkVMPWBzZWQgLW4gJ3MvLipWZXJzaW9uIC8vcCcgPC91c3Ivb3B0aW9ucy9jYi5uYW1lYAorCQllY2hvICR7VU5BTUVfTUFDSElORX0tcGMtaXNjJFVOQU1FX1JFTAorCWVsaWYgL2Jpbi91bmFtZSAtWCAyPi9kZXYvbnVsbCA+L2Rldi9udWxsIDsgdGhlbgorCQlVTkFNRV9SRUw9YCgvYmluL3VuYW1lIC1YfGdyZXAgUmVsZWFzZXxzZWQgLWUgJ3MvLio9IC8vJylgCisJCSgvYmluL3VuYW1lIC1YfGdyZXAgaTgwNDg2ID4vZGV2L251bGwpICYmIFVOQU1FX01BQ0hJTkU9aTQ4NgorCQkoL2Jpbi91bmFtZSAtWHxncmVwICdeTWFjaGluZS4qUGVudGl1bScgPi9kZXYvbnVsbCkgXAorCQkJJiYgVU5BTUVfTUFDSElORT1pNTg2CisJCSgvYmluL3VuYW1lIC1YfGdyZXAgJ15NYWNoaW5lLipQZW50ICpJSScgPi9kZXYvbnVsbCkgXAorCQkJJiYgVU5BTUVfTUFDSElORT1pNjg2CisJCSgvYmluL3VuYW1lIC1YfGdyZXAgJ15NYWNoaW5lLipQZW50aXVtIFBybycgPi9kZXYvbnVsbCkgXAorCQkJJiYgVU5BTUVfTUFDSElORT1pNjg2CisJCWVjaG8gJHtVTkFNRV9NQUNISU5FfS1wYy1zY28kVU5BTUVfUkVMCisJZWxzZQorCQllY2hvICR7VU5BTUVfTUFDSElORX0tcGMtc3lzdjMyCisJZmkKKwlleGl0IDs7CisgICAgcGM6KjoqOiopCisJIyBMZWZ0IGhlcmUgZm9yIGNvbXBhdGliaWxpdHk6CisJIyB1bmFtZSAtbSBwcmludHMgZm9yIERKR1BQIGFsd2F5cyAncGMnLCBidXQgaXQgcHJpbnRzIG5vdGhpbmcgYWJvdXQKKwkjIHRoZSBwcm9jZXNzb3IsIHNvIHdlIHBsYXkgc2FmZSBieSBhc3N1bWluZyBpNTg2LgorCSMgTm90ZTogd2hhdGV2ZXIgdGhpcyBpcywgaXQgTVVTVCBiZSB0aGUgc2FtZSBhcyB3aGF0IGNvbmZpZy5zdWIKKwkjIHByaW50cyBmb3IgdGhlICJkamdwcCIgaG9zdCwgb3IgZWxzZSBHREIgY29uZmlndXJ5IHdpbGwgZGVjaWRlIHRoYXQKKwkjIHRoaXMgaXMgYSBjcm9zcy1idWlsZC4KKwllY2hvIGk1ODYtcGMtbXNkb3NkamdwcAorCWV4aXQgOzsKKyAgICBJbnRlbDpNYWNoOjMqOiopCisJZWNobyBpMzg2LXBjLW1hY2gzCisJZXhpdCA7OworICAgIHBhcmFnb246KjoqOiopCisJZWNobyBpODYwLWludGVsLW9zZjEKKwlleGl0IDs7CisgICAgaTg2MDoqOjQuKjoqKSAjIGk4NjAtU1ZSNAorCWlmIGdyZXAgU3RhcmRlbnQgL3Vzci9pbmNsdWRlL3N5cy91YWRtaW4uaCA+L2Rldi9udWxsIDI+JjEgOyB0aGVuCisJICBlY2hvIGk4NjAtc3RhcmRlbnQtc3lzdiR7VU5BTUVfUkVMRUFTRX0gIyBTdGFyZGVudCBWaXN0cmEgaTg2MC1TVlI0CisJZWxzZSAjIEFkZCBvdGhlciBpODYwLVNWUjQgdmVuZG9ycyBiZWxvdyBhcyB0aGV5IGFyZSBkaXNjb3ZlcmVkLgorCSAgZWNobyBpODYwLXVua25vd24tc3lzdiR7VU5BTUVfUkVMRUFTRX0gICMgVW5rbm93biBpODYwLVNWUjQKKwlmaQorCWV4aXQgOzsKKyAgICBtaW5pKjpDVElYOlNZUyo1OiopCisJIyAibWluaWZyYW1lIgorCWVjaG8gbTY4MDEwLWNvbnZlcmdlbnQtc3lzdgorCWV4aXQgOzsKKyAgICBtYzY4azpVTklYOlNZU1RFTTU6My41MW0pCisJZWNobyBtNjhrLWNvbnZlcmdlbnQtc3lzdgorCWV4aXQgOzsKKyAgICBNNjgwPzA6RC1OSVg6NS4zOiopCisJZWNobyBtNjhrLWRpYWItZG5peAorCWV4aXQgOzsKKyAgICBNNjgqOio6UjNWWzU2NzhdKjoqKQorCXRlc3QgLXIgL3N5c1Y2OCAmJiB7IGVjaG8gJ202OGstbW90b3JvbGEtc3lzdic7IGV4aXQ7IH0gOzsKKyAgICAzWzM0NV0/PzoqOjQuMDozLjAgfCAzWzM0XT8/QToqOjQuMDozLjAgfCAzWzM0XT8/LCo6Kjo0LjA6My4wIHwgM1szNF0/Py8qOio6NC4wOjMuMCB8IDQ0MDA6Kjo0LjA6My4wIHwgNDg1MDoqOjQuMDozLjAgfCBTS0E0MDoqOjQuMDozLjAgfCBTRFMyOio6NC4wOjMuMCB8IFNIRzI6Kjo0LjA6My4wIHwgUzc1MDEqOio6NC4wOjMuMCkKKwlPU19SRUw9JycKKwl0ZXN0IC1yIC9ldGMvLnJlbGlkIFwKKwkmJiBPU19SRUw9LmBzZWQgLW4gJ3MvW14gXSogW14gXSogXChbMC05XVswLTldXCkuKi9cMS9wJyA8IC9ldGMvLnJlbGlkYAorCS9iaW4vdW5hbWUgLXAgMj4vZGV2L251bGwgfCBncmVwIDg2ID4vZGV2L251bGwgXAorCSAgJiYgeyBlY2hvIGk0ODYtbmNyLXN5c3Y0LjMke09TX1JFTH07IGV4aXQ7IH0KKwkvYmluL3VuYW1lIC1wIDI+L2Rldi9udWxsIHwgL2Jpbi9ncmVwIGVudGl1bSA+L2Rldi9udWxsIFwKKwkgICYmIHsgZWNobyBpNTg2LW5jci1zeXN2NC4zJHtPU19SRUx9OyBleGl0OyB9IDs7CisgICAgM1szNF0/PzoqOjQuMDoqIHwgM1szNF0/PywqOio6NC4wOiopCisJL2Jpbi91bmFtZSAtcCAyPi9kZXYvbnVsbCB8IGdyZXAgODYgPi9kZXYvbnVsbCBcCisJICAmJiB7IGVjaG8gaTQ4Ni1uY3Itc3lzdjQ7IGV4aXQ7IH0gOzsKKyAgICBOQ1IqOio6NC4yOiogfCBNUFJBUyo6Kjo0LjI6KikKKwlPU19SRUw9Jy4zJworCXRlc3QgLXIgL2V0Yy8ucmVsaWQgXAorCSAgICAmJiBPU19SRUw9LmBzZWQgLW4gJ3MvW14gXSogW14gXSogXChbMC05XVswLTldXCkuKi9cMS9wJyA8IC9ldGMvLnJlbGlkYAorCS9iaW4vdW5hbWUgLXAgMj4vZGV2L251bGwgfCBncmVwIDg2ID4vZGV2L251bGwgXAorCSAgICAmJiB7IGVjaG8gaTQ4Ni1uY3Itc3lzdjQuMyR7T1NfUkVMfTsgZXhpdDsgfQorCS9iaW4vdW5hbWUgLXAgMj4vZGV2L251bGwgfCAvYmluL2dyZXAgZW50aXVtID4vZGV2L251bGwgXAorCSAgICAmJiB7IGVjaG8gaTU4Ni1uY3Itc3lzdjQuMyR7T1NfUkVMfTsgZXhpdDsgfQorCS9iaW4vdW5hbWUgLXAgMj4vZGV2L251bGwgfCAvYmluL2dyZXAgcHRlcm9uID4vZGV2L251bGwgXAorCSAgICAmJiB7IGVjaG8gaTU4Ni1uY3Itc3lzdjQuMyR7T1NfUkVMfTsgZXhpdDsgfSA7OworICAgIG02OCo6THlueE9TOjIuKjoqIHwgbTY4KjpMeW54T1M6My4wKjoqKQorCWVjaG8gbTY4ay11bmtub3duLWx5bnhvcyR7VU5BTUVfUkVMRUFTRX0KKwlleGl0IDs7CisgICAgbWM2ODAzMDpVTklYX1N5c3RlbV9WOjQuKjoqKQorCWVjaG8gbTY4ay1hdGFyaS1zeXN2NAorCWV4aXQgOzsKKyAgICBUU1VOQU1JOkx5bnhPUzoyLio6KikKKwllY2hvIHNwYXJjLXVua25vd24tbHlueG9zJHtVTkFNRV9SRUxFQVNFfQorCWV4aXQgOzsKKyAgICByczYwMDA6THlueE9TOjIuKjoqKQorCWVjaG8gcnM2MDAwLXVua25vd24tbHlueG9zJHtVTkFNRV9SRUxFQVNFfQorCWV4aXQgOzsKKyAgICBQb3dlclBDOkx5bnhPUzoyLio6KiB8IFBvd2VyUEM6THlueE9TOjMuWzAxXSo6KiB8IFBvd2VyUEM6THlueE9TOjQuWzAyXSo6KikKKwllY2hvIHBvd2VycGMtdW5rbm93bi1seW54b3Mke1VOQU1FX1JFTEVBU0V9CisJZXhpdCA7OworICAgIFNNW0JFXVM6VU5JWF9TVjoqOiopCisJZWNobyBtaXBzLWRkZS1zeXN2JHtVTkFNRV9SRUxFQVNFfQorCWV4aXQgOzsKKyAgICBSTSo6UmVsaWFudFVOSVgtKjoqOiopCisJZWNobyBtaXBzLXNuaS1zeXN2NAorCWV4aXQgOzsKKyAgICBSTSo6U0lOSVgtKjoqOiopCisJZWNobyBtaXBzLXNuaS1zeXN2NAorCWV4aXQgOzsKKyAgICAqOlNJTklYLSo6KjoqKQorCWlmIHVuYW1lIC1wIDI+L2Rldi9udWxsID4vZGV2L251bGwgOyB0aGVuCisJCVVOQU1FX01BQ0hJTkU9YCh1bmFtZSAtcCkgMj4vZGV2L251bGxgCisJCWVjaG8gJHtVTkFNRV9NQUNISU5FfS1zbmktc3lzdjQKKwllbHNlCisJCWVjaG8gbnMzMmstc25pLXN5c3YKKwlmaQorCWV4aXQgOzsKKyAgICBQRU5USVVNOio6NC4wKjoqKQkjIFVuaXN5cyBgQ2xlYXJQYXRoIEhNUCBJWCA0MDAwJyBTVlI0L01QIGVmZm9ydAorCQkJIyBzYXlzIDxSaWNoYXJkLk0uQmFydGVsQGNjTWFpbC5DZW5zdXMuR09WPgorCWVjaG8gaTU4Ni11bmlzeXMtc3lzdjQKKwlleGl0IDs7CisgICAgKjpVTklYX1N5c3RlbV9WOjQqOkZUWCopCisJIyBGcm9tIEdlcmFsZCBIZXdlcyA8aGV3ZXNAb3Blbm1hcmtldC5jb20+LgorCSMgSG93IGFib3V0IGRpZmZlcmVudGlhdGluZyBiZXR3ZWVuIHN0cmF0dXMgYXJjaGl0ZWN0dXJlcz8gLWRqbQorCWVjaG8gaHBwYTEuMS1zdHJhdHVzLXN5c3Y0CisJZXhpdCA7OworICAgICo6KjoqOkZUWCopCisJIyBGcm9tIHNlYW5mQHN3ZGMuc3RyYXR1cy5jb20uCisJZWNobyBpODYwLXN0cmF0dXMtc3lzdjQKKwlleGl0IDs7CisgICAgaSo4NjpWT1M6KjoqKQorCSMgRnJvbSBQYXVsLkdyZWVuQHN0cmF0dXMuY29tLgorCWVjaG8gJHtVTkFNRV9NQUNISU5FfS1zdHJhdHVzLXZvcworCWV4aXQgOzsKKyAgICAqOlZPUzoqOiopCisJIyBGcm9tIFBhdWwuR3JlZW5Ac3RyYXR1cy5jb20uCisJZWNobyBocHBhMS4xLXN0cmF0dXMtdm9zCisJZXhpdCA7OworICAgIG1jNjgqOkEvVVg6KjoqKQorCWVjaG8gbTY4ay1hcHBsZS1hdXgke1VOQU1FX1JFTEVBU0V9CisJZXhpdCA7OworICAgIG5ld3MqOk5FV1MtT1M6Nio6KikKKwllY2hvIG1pcHMtc29ueS1uZXdzb3M2CisJZXhpdCA7OworICAgIFJbMzRdMDAwOipTeXN0ZW1fVio6KjoqIHwgUjQwMDA6VU5JWF9TWVNWOio6KiB8IFIqMDAwOlVOSVhfU1Y6KjoqKQorCWlmIFsgLWQgL3Vzci9uZWMgXTsgdGhlbgorCQllY2hvIG1pcHMtbmVjLXN5c3Yke1VOQU1FX1JFTEVBU0V9CisJZWxzZQorCQllY2hvIG1pcHMtdW5rbm93bi1zeXN2JHtVTkFNRV9SRUxFQVNFfQorCWZpCisJZXhpdCA7OworICAgIEJlQm94OkJlT1M6KjoqKQkjIEJlT1MgcnVubmluZyBvbiBoYXJkd2FyZSBtYWRlIGJ5IEJlLCBQUEMgb25seS4KKwllY2hvIHBvd2VycGMtYmUtYmVvcworCWV4aXQgOzsKKyAgICBCZU1hYzpCZU9TOio6KikJIyBCZU9TIHJ1bm5pbmcgb24gTWFjIG9yIE1hYyBjbG9uZSwgUFBDIG9ubHkuCisJZWNobyBwb3dlcnBjLWFwcGxlLWJlb3MKKwlleGl0IDs7CisgICAgQmVQQzpCZU9TOio6KikJIyBCZU9TIHJ1bm5pbmcgb24gSW50ZWwgUEMgY29tcGF0aWJsZS4KKwllY2hvIGk1ODYtcGMtYmVvcworCWV4aXQgOzsKKyAgICBCZVBDOkhhaWt1Oio6KikJIyBIYWlrdSBydW5uaW5nIG9uIEludGVsIFBDIGNvbXBhdGlibGUuCisJZWNobyBpNTg2LXBjLWhhaWt1CisJZXhpdCA7OworICAgIFNYLTQ6U1VQRVItVVg6KjoqKQorCWVjaG8gc3g0LW5lYy1zdXBlcnV4JHtVTkFNRV9SRUxFQVNFfQorCWV4aXQgOzsKKyAgICBTWC01OlNVUEVSLVVYOio6KikKKwllY2hvIHN4NS1uZWMtc3VwZXJ1eCR7VU5BTUVfUkVMRUFTRX0KKwlleGl0IDs7CisgICAgU1gtNjpTVVBFUi1VWDoqOiopCisJZWNobyBzeDYtbmVjLXN1cGVydXgke1VOQU1FX1JFTEVBU0V9CisJZXhpdCA7OworICAgIFNYLTc6U1VQRVItVVg6KjoqKQorCWVjaG8gc3g3LW5lYy1zdXBlcnV4JHtVTkFNRV9SRUxFQVNFfQorCWV4aXQgOzsKKyAgICBTWC04OlNVUEVSLVVYOio6KikKKwllY2hvIHN4OC1uZWMtc3VwZXJ1eCR7VU5BTUVfUkVMRUFTRX0KKwlleGl0IDs7CisgICAgU1gtOFI6U1VQRVItVVg6KjoqKQorCWVjaG8gc3g4ci1uZWMtc3VwZXJ1eCR7VU5BTUVfUkVMRUFTRX0KKwlleGl0IDs7CisgICAgUG93ZXIqOlJoYXBzb2R5Oio6KikKKwllY2hvIHBvd2VycGMtYXBwbGUtcmhhcHNvZHkke1VOQU1FX1JFTEVBU0V9CisJZXhpdCA7OworICAgICo6UmhhcHNvZHk6KjoqKQorCWVjaG8gJHtVTkFNRV9NQUNISU5FfS1hcHBsZS1yaGFwc29keSR7VU5BTUVfUkVMRUFTRX0KKwlleGl0IDs7CisgICAgKjpEYXJ3aW46KjoqKQorCVVOQU1FX1BST0NFU1NPUj1gdW5hbWUgLXBgIHx8IFVOQU1FX1BST0NFU1NPUj11bmtub3duCisJY2FzZSAkVU5BTUVfUFJPQ0VTU09SIGluCisJICAgIGkzODYpCisJCWV2YWwgJHNldF9jY19mb3JfYnVpbGQKKwkJaWYgWyAiJENDX0ZPUl9CVUlMRCIgIT0gJ25vX2NvbXBpbGVyX2ZvdW5kJyBdOyB0aGVuCisJCSAgaWYgKGVjaG8gJyNpZmRlZiBfX0xQNjRfXyc7IGVjaG8gSVNfNjRCSVRfQVJDSDsgZWNobyAnI2VuZGlmJykgfCBcCisJCSAgICAgIChDQ09QVFM9ICRDQ19GT1JfQlVJTEQgLUUgLSAyPi9kZXYvbnVsbCkgfCBcCisJCSAgICAgIGdyZXAgSVNfNjRCSVRfQVJDSCA+L2Rldi9udWxsCisJCSAgdGhlbgorCQkgICAgICBVTkFNRV9QUk9DRVNTT1I9Ing4Nl82NCIKKwkJICBmaQorCQlmaSA7OworCSAgICB1bmtub3duKSBVTkFNRV9QUk9DRVNTT1I9cG93ZXJwYyA7OworCWVzYWMKKwllY2hvICR7VU5BTUVfUFJPQ0VTU09SfS1hcHBsZS1kYXJ3aW4ke1VOQU1FX1JFTEVBU0V9CisJZXhpdCA7OworICAgICo6cHJvY250byo6KjoqIHwgKjpRTlg6WzAxMjM0NTY3ODldKjoqKQorCVVOQU1FX1BST0NFU1NPUj1gdW5hbWUgLXBgCisJaWYgdGVzdCAiJFVOQU1FX1BST0NFU1NPUiIgPSAieDg2IjsgdGhlbgorCQlVTkFNRV9QUk9DRVNTT1I9aTM4NgorCQlVTkFNRV9NQUNISU5FPXBjCisJZmkKKwllY2hvICR7VU5BTUVfUFJPQ0VTU09SfS0ke1VOQU1FX01BQ0hJTkV9LW50by1xbngke1VOQU1FX1JFTEVBU0V9CisJZXhpdCA7OworICAgICo6UU5YOio6NCopCisJZWNobyBpMzg2LXBjLXFueAorCWV4aXQgOzsKKyAgICBORU8tPzpOT05TVE9QX0tFUk5FTDoqOiopCisJZWNobyBuZW8tdGFuZGVtLW5zayR7VU5BTUVfUkVMRUFTRX0KKwlleGl0IDs7CisgICAgTlNFLT86Tk9OU1RPUF9LRVJORUw6KjoqKQorCWVjaG8gbnNlLXRhbmRlbS1uc2ske1VOQU1FX1JFTEVBU0V9CisJZXhpdCA7OworICAgIE5TUi0/Ok5PTlNUT1BfS0VSTkVMOio6KikKKwllY2hvIG5zci10YW5kZW0tbnNrJHtVTkFNRV9SRUxFQVNFfQorCWV4aXQgOzsKKyAgICAqOk5vblN0b3AtVVg6KjoqKQorCWVjaG8gbWlwcy1jb21wYXEtbm9uc3RvcHV4CisJZXhpdCA7OworICAgIEJTMjAwMDpQT1NJWCo6KjoqKQorCWVjaG8gYnMyMDAwLXNpZW1lbnMtc3lzdgorCWV4aXQgOzsKKyAgICBEUy8qOlVOSVhfU3lzdGVtX1Y6KjoqKQorCWVjaG8gJHtVTkFNRV9NQUNISU5FfS0ke1VOQU1FX1NZU1RFTX0tJHtVTkFNRV9SRUxFQVNFfQorCWV4aXQgOzsKKyAgICAqOlBsYW45Oio6KikKKwkjICJ1bmFtZSAtbSIgaXMgbm90IGNvbnNpc3RlbnQsIHNvIHVzZSAkY3B1dHlwZSBpbnN0ZWFkLiAzODYKKwkjIGlzIGNvbnZlcnRlZCB0byBpMzg2IGZvciBjb25zaXN0ZW5jeSB3aXRoIG90aGVyIHg4NgorCSMgb3BlcmF0aW5nIHN5c3RlbXMuCisJaWYgdGVzdCAiJGNwdXR5cGUiID0gIjM4NiI7IHRoZW4KKwkgICAgVU5BTUVfTUFDSElORT1pMzg2CisJZWxzZQorCSAgICBVTkFNRV9NQUNISU5FPSIkY3B1dHlwZSIKKwlmaQorCWVjaG8gJHtVTkFNRV9NQUNISU5FfS11bmtub3duLXBsYW45CisJZXhpdCA7OworICAgICo6VE9QUy0xMDoqOiopCisJZWNobyBwZHAxMC11bmtub3duLXRvcHMxMAorCWV4aXQgOzsKKyAgICAqOlRFTkVYOio6KikKKwllY2hvIHBkcDEwLXVua25vd24tdGVuZXgKKwlleGl0IDs7CisgICAgS1MxMDpUT1BTLTIwOio6KiB8IEtMMTA6VE9QUy0yMDoqOiogfCBUWVBFNDpUT1BTLTIwOio6KikKKwllY2hvIHBkcDEwLWRlYy10b3BzMjAKKwlleGl0IDs7CisgICAgWEtMLTE6VE9QUy0yMDoqOiogfCBUWVBFNTpUT1BTLTIwOio6KikKKwllY2hvIHBkcDEwLXhrbC10b3BzMjAKKwlleGl0IDs7CisgICAgKjpUT1BTLTIwOio6KikKKwllY2hvIHBkcDEwLXVua25vd24tdG9wczIwCisJZXhpdCA7OworICAgICo6SVRTOio6KikKKwllY2hvIHBkcDEwLXVua25vd24taXRzCisJZXhpdCA7OworICAgIFNFSToqOio6U0VJVVgpCisJZWNobyBtaXBzLXNlaS1zZWl1eCR7VU5BTUVfUkVMRUFTRX0KKwlleGl0IDs7CisgICAgKjpEcmFnb25GbHk6KjoqKQorCWVjaG8gJHtVTkFNRV9NQUNISU5FfS11bmtub3duLWRyYWdvbmZseWBlY2hvICR7VU5BTUVfUkVMRUFTRX18c2VkIC1lICdzL1stKF0uKi8vJ2AKKwlleGl0IDs7CisgICAgKjoqVk1TOio6KikKKwlVTkFNRV9NQUNISU5FPWAodW5hbWUgLXApIDI+L2Rldi9udWxsYAorCWNhc2UgIiR7VU5BTUVfTUFDSElORX0iIGluCisJICAgIEEqKSBlY2hvIGFscGhhLWRlYy12bXMgOyBleGl0IDs7CisJICAgIEkqKSBlY2hvIGlhNjQtZGVjLXZtcyA7IGV4aXQgOzsKKwkgICAgViopIGVjaG8gdmF4LWRlYy12bXMgOyBleGl0IDs7CisJZXNhYyA7OworICAgICo6WEVOSVg6KjpTeXNWKQorCWVjaG8gaTM4Ni1wYy14ZW5peAorCWV4aXQgOzsKKyAgICBpKjg2OnNreW9zOio6KikKKwllY2hvICR7VU5BTUVfTUFDSElORX0tcGMtc2t5b3NgZWNobyAke1VOQU1FX1JFTEVBU0V9YCB8IHNlZCAtZSAncy8gLiokLy8nCisJZXhpdCA7OworICAgIGkqODY6cmRvczoqOiopCisJZWNobyAke1VOQU1FX01BQ0hJTkV9LXBjLXJkb3MKKwlleGl0IDs7CisgICAgaSo4NjpBUk9TOio6KikKKwllY2hvICR7VU5BTUVfTUFDSElORX0tcGMtYXJvcworCWV4aXQgOzsKK2VzYWMKKworI2VjaG8gJyhObyB1bmFtZSBjb21tYW5kIG9yIHVuYW1lIG91dHB1dCBub3QgcmVjb2duaXplZC4pJyAxPiYyCisjZWNobyAiJHtVTkFNRV9NQUNISU5FfToke1VOQU1FX1NZU1RFTX06JHtVTkFNRV9SRUxFQVNFfToke1VOQU1FX1ZFUlNJT059IiAxPiYyCisKK2V2YWwgJHNldF9jY19mb3JfYnVpbGQKK2NhdCA+JGR1bW15LmMgPDxFT0YKKyNpZmRlZiBfU0VRVUVOVF8KKyMgaW5jbHVkZSA8c3lzL3R5cGVzLmg+CisjIGluY2x1ZGUgPHN5cy91dHNuYW1lLmg+CisjZW5kaWYKK21haW4gKCkKK3sKKyNpZiBkZWZpbmVkIChzb255KQorI2lmIGRlZmluZWQgKE1JUFNFQikKKyAgLyogQkZEIHdhbnRzICJic2QiIGluc3RlYWQgb2YgIm5ld3NvcyIuICBQZXJoYXBzIEJGRCBzaG91bGQgYmUgY2hhbmdlZCwKKyAgICAgSSBkb24ndCBrbm93Li4uLiAgKi8KKyAgcHJpbnRmICgibWlwcy1zb255LWJzZFxuIik7IGV4aXQgKDApOworI2Vsc2UKKyNpbmNsdWRlIDxzeXMvcGFyYW0uaD4KKyAgcHJpbnRmICgibTY4ay1zb255LW5ld3NvcyVzXG4iLAorI2lmZGVmIE5FV1NPUzQKKwkiNCIKKyNlbHNlCisJIiIKKyNlbmRpZgorCSk7IGV4aXQgKDApOworI2VuZGlmCisjZW5kaWYKKworI2lmIGRlZmluZWQgKF9fYXJtKSAmJiBkZWZpbmVkIChfX2Fjb3JuKSAmJiBkZWZpbmVkIChfX3VuaXgpCisgIHByaW50ZiAoImFybS1hY29ybi1yaXNjaXhcbiIpOyBleGl0ICgwKTsKKyNlbmRpZgorCisjaWYgZGVmaW5lZCAoaHAzMDApICYmICFkZWZpbmVkIChocHV4KQorICBwcmludGYgKCJtNjhrLWhwLWJzZFxuIik7IGV4aXQgKDApOworI2VuZGlmCisKKyNpZiBkZWZpbmVkIChOZVhUKQorI2lmICFkZWZpbmVkIChfX0FSQ0hJVEVDVFVSRV9fKQorI2RlZmluZSBfX0FSQ0hJVEVDVFVSRV9fICJtNjhrIgorI2VuZGlmCisgIGludCB2ZXJzaW9uOworICB2ZXJzaW9uPWAoaG9zdGluZm8gfCBzZWQgLW4gJ3MvLipOZVhUIE1hY2ggXChbMC05XSpcKS4qL1wxL3AnKSAyPi9kZXYvbnVsbGA7CisgIGlmICh2ZXJzaW9uIDwgNCkKKyAgICBwcmludGYgKCIlcy1uZXh0LW5leHRzdGVwJWRcbiIsIF9fQVJDSElURUNUVVJFX18sIHZlcnNpb24pOworICBlbHNlCisgICAgcHJpbnRmICgiJXMtbmV4dC1vcGVuc3RlcCVkXG4iLCBfX0FSQ0hJVEVDVFVSRV9fLCB2ZXJzaW9uKTsKKyAgZXhpdCAoMCk7CisjZW5kaWYKKworI2lmIGRlZmluZWQgKE1VTFRJTUFYKSB8fCBkZWZpbmVkIChuMTYpCisjaWYgZGVmaW5lZCAoVU1BWFYpCisgIHByaW50ZiAoIm5zMzJrLWVuY29yZS1zeXN2XG4iKTsgZXhpdCAoMCk7CisjZWxzZQorI2lmIGRlZmluZWQgKENNVSkKKyAgcHJpbnRmICgibnMzMmstZW5jb3JlLW1hY2hcbiIpOyBleGl0ICgwKTsKKyNlbHNlCisgIHByaW50ZiAoIm5zMzJrLWVuY29yZS1ic2RcbiIpOyBleGl0ICgwKTsKKyNlbmRpZgorI2VuZGlmCisjZW5kaWYKKworI2lmIGRlZmluZWQgKF9fMzg2QlNEX18pCisgIHByaW50ZiAoImkzODYtcGMtYnNkXG4iKTsgZXhpdCAoMCk7CisjZW5kaWYKKworI2lmIGRlZmluZWQgKHNlcXVlbnQpCisjaWYgZGVmaW5lZCAoaTM4NikKKyAgcHJpbnRmICgiaTM4Ni1zZXF1ZW50LWR5bml4XG4iKTsgZXhpdCAoMCk7CisjZW5kaWYKKyNpZiBkZWZpbmVkIChuczMyMDAwKQorICBwcmludGYgKCJuczMyay1zZXF1ZW50LWR5bml4XG4iKTsgZXhpdCAoMCk7CisjZW5kaWYKKyNlbmRpZgorCisjaWYgZGVmaW5lZCAoX1NFUVVFTlRfKQorICAgIHN0cnVjdCB1dHNuYW1lIHVuOworCisgICAgdW5hbWUoJnVuKTsKKworICAgIGlmIChzdHJuY21wKHVuLnZlcnNpb24sICJWMiIsIDIpID09IDApIHsKKwlwcmludGYgKCJpMzg2LXNlcXVlbnQtcHR4MlxuIik7IGV4aXQgKDApOworICAgIH0KKyAgICBpZiAoc3RybmNtcCh1bi52ZXJzaW9uLCAiVjEiLCAyKSA9PSAwKSB7IC8qIFhYWCBpcyBWMSBjb3JyZWN0PyAqLworCXByaW50ZiAoImkzODYtc2VxdWVudC1wdHgxXG4iKTsgZXhpdCAoMCk7CisgICAgfQorICAgIHByaW50ZiAoImkzODYtc2VxdWVudC1wdHhcbiIpOyBleGl0ICgwKTsKKworI2VuZGlmCisKKyNpZiBkZWZpbmVkICh2YXgpCisjIGlmICFkZWZpbmVkICh1bHRyaXgpCisjICBpbmNsdWRlIDxzeXMvcGFyYW0uaD4KKyMgIGlmIGRlZmluZWQgKEJTRCkKKyMgICBpZiBCU0QgPT0gNDMKKyAgICAgIHByaW50ZiAoInZheC1kZWMtYnNkNC4zXG4iKTsgZXhpdCAoMCk7CisjICAgZWxzZQorIyAgICBpZiBCU0QgPT0gMTk5MDA2CisgICAgICBwcmludGYgKCJ2YXgtZGVjLWJzZDQuM3Jlbm9cbiIpOyBleGl0ICgwKTsKKyMgICAgZWxzZQorICAgICAgcHJpbnRmICgidmF4LWRlYy1ic2RcbiIpOyBleGl0ICgwKTsKKyMgICAgZW5kaWYKKyMgICBlbmRpZgorIyAgZWxzZQorICAgIHByaW50ZiAoInZheC1kZWMtYnNkXG4iKTsgZXhpdCAoMCk7CisjICBlbmRpZgorIyBlbHNlCisgICAgcHJpbnRmICgidmF4LWRlYy11bHRyaXhcbiIpOyBleGl0ICgwKTsKKyMgZW5kaWYKKyNlbmRpZgorCisjaWYgZGVmaW5lZCAoYWxsaWFudCkgJiYgZGVmaW5lZCAoaTg2MCkKKyAgcHJpbnRmICgiaTg2MC1hbGxpYW50LWJzZFxuIik7IGV4aXQgKDApOworI2VuZGlmCisKKyAgZXhpdCAoMSk7Cit9CitFT0YKKworJENDX0ZPUl9CVUlMRCAtbyAkZHVtbXkgJGR1bW15LmMgMj4vZGV2L251bGwgJiYgU1lTVEVNX05BTUU9YCRkdW1teWAgJiYKKwl7IGVjaG8gIiRTWVNURU1fTkFNRSI7IGV4aXQ7IH0KKworIyBBcG9sbG9zIHB1dCB0aGUgc3lzdGVtIHR5cGUgaW4gdGhlIGVudmlyb25tZW50LgorCit0ZXN0IC1kIC91c3IvYXBvbGxvICYmIHsgZWNobyAke0lTUH0tYXBvbGxvLSR7U1lTVFlQRX07IGV4aXQ7IH0KKworIyBDb252ZXggdmVyc2lvbnMgdGhhdCBwcmVkYXRlIHVuYW1lIGNhbiB1c2UgZ2V0c3lzaW5mbygxKQorCitpZiBbIC14IC91c3IvY29udmV4L2dldHN5c2luZm8gXQordGhlbgorICAgIGNhc2UgYGdldHN5c2luZm8gLWYgY3B1X3R5cGVgIGluCisgICAgYzEqKQorCWVjaG8gYzEtY29udmV4LWJzZAorCWV4aXQgOzsKKyAgICBjMiopCisJaWYgZ2V0c3lzaW5mbyAtZiBzY2FsYXJfYWNjCisJdGhlbiBlY2hvIGMzMi1jb252ZXgtYnNkCisJZWxzZSBlY2hvIGMyLWNvbnZleC1ic2QKKwlmaQorCWV4aXQgOzsKKyAgICBjMzQqKQorCWVjaG8gYzM0LWNvbnZleC1ic2QKKwlleGl0IDs7CisgICAgYzM4KikKKwllY2hvIGMzOC1jb252ZXgtYnNkCisJZXhpdCA7OworICAgIGM0KikKKwllY2hvIGM0LWNvbnZleC1ic2QKKwlleGl0IDs7CisgICAgZXNhYworZmkKKworY2F0ID4mMiA8PEVPRgorJDA6IHVuYWJsZSB0byBndWVzcyBzeXN0ZW0gdHlwZQorCitUaGlzIHNjcmlwdCwgbGFzdCBtb2RpZmllZCAkdGltZXN0YW1wLCBoYXMgZmFpbGVkIHRvIHJlY29nbml6ZQordGhlIG9wZXJhdGluZyBzeXN0ZW0geW91IGFyZSB1c2luZy4gSXQgaXMgYWR2aXNlZCB0aGF0IHlvdQorZG93bmxvYWQgdGhlIG1vc3QgdXAgdG8gZGF0ZSB2ZXJzaW9uIG9mIHRoZSBjb25maWcgc2NyaXB0cyBmcm9tCisKKyAgaHR0cDovL2dpdC5zYXZhbm5haC5nbnUub3JnL2dpdHdlYi8/cD1jb25maWcuZ2l0O2E9YmxvYl9wbGFpbjtmPWNvbmZpZy5ndWVzcztoYj1IRUFECithbmQKKyAgaHR0cDovL2dpdC5zYXZhbm5haC5nbnUub3JnL2dpdHdlYi8/cD1jb25maWcuZ2l0O2E9YmxvYl9wbGFpbjtmPWNvbmZpZy5zdWI7aGI9SEVBRAorCitJZiB0aGUgdmVyc2lvbiB5b3UgcnVuICgkMCkgaXMgYWxyZWFkeSB1cCB0byBkYXRlLCBwbGVhc2UKK3NlbmQgdGhlIGZvbGxvd2luZyBkYXRhIGFuZCBhbnkgaW5mb3JtYXRpb24geW91IHRoaW5rIG1pZ2h0IGJlCitwZXJ0aW5lbnQgdG8gPGNvbmZpZy1wYXRjaGVzQGdudS5vcmc+IGluIG9yZGVyIHRvIHByb3ZpZGUgdGhlIG5lZWRlZAoraW5mb3JtYXRpb24gdG8gaGFuZGxlIHlvdXIgc3lzdGVtLgorCitjb25maWcuZ3Vlc3MgdGltZXN0YW1wID0gJHRpbWVzdGFtcAorCit1bmFtZSAtbSA9IGAodW5hbWUgLW0pIDI+L2Rldi9udWxsIHx8IGVjaG8gdW5rbm93bmAKK3VuYW1lIC1yID0gYCh1bmFtZSAtcikgMj4vZGV2L251bGwgfHwgZWNobyB1bmtub3duYAordW5hbWUgLXMgPSBgKHVuYW1lIC1zKSAyPi9kZXYvbnVsbCB8fCBlY2hvIHVua25vd25gCit1bmFtZSAtdiA9IGAodW5hbWUgLXYpIDI+L2Rldi9udWxsIHx8IGVjaG8gdW5rbm93bmAKKworL3Vzci9iaW4vdW5hbWUgLXAgPSBgKC91c3IvYmluL3VuYW1lIC1wKSAyPi9kZXYvbnVsbGAKKy9iaW4vdW5hbWUgLVggICAgID0gYCgvYmluL3VuYW1lIC1YKSAyPi9kZXYvbnVsbGAKKworaG9zdGluZm8gICAgICAgICAgICAgICA9IGAoaG9zdGluZm8pIDI+L2Rldi9udWxsYAorL2Jpbi91bml2ZXJzZSAgICAgICAgICA9IGAoL2Jpbi91bml2ZXJzZSkgMj4vZGV2L251bGxgCisvdXNyL2Jpbi9hcmNoIC1rICAgICAgID0gYCgvdXNyL2Jpbi9hcmNoIC1rKSAyPi9kZXYvbnVsbGAKKy9iaW4vYXJjaCAgICAgICAgICAgICAgPSBgKC9iaW4vYXJjaCkgMj4vZGV2L251bGxgCisvdXNyL2Jpbi9vc2xldmVsICAgICAgID0gYCgvdXNyL2Jpbi9vc2xldmVsKSAyPi9kZXYvbnVsbGAKKy91c3IvY29udmV4L2dldHN5c2luZm8gPSBgKC91c3IvY29udmV4L2dldHN5c2luZm8pIDI+L2Rldi9udWxsYAorCitVTkFNRV9NQUNISU5FID0gJHtVTkFNRV9NQUNISU5FfQorVU5BTUVfUkVMRUFTRSA9ICR7VU5BTUVfUkVMRUFTRX0KK1VOQU1FX1NZU1RFTSAgPSAke1VOQU1FX1NZU1RFTX0KK1VOQU1FX1ZFUlNJT04gPSAke1VOQU1FX1ZFUlNJT059CitFT0YKKworZXhpdCAxCisKKyMgTG9jYWwgdmFyaWFibGVzOgorIyBldmFsOiAoYWRkLWhvb2sgJ3dyaXRlLWZpbGUtaG9va3MgJ3RpbWUtc3RhbXApCisjIHRpbWUtc3RhbXAtc3RhcnQ6ICJ0aW1lc3RhbXA9JyIKKyMgdGltZS1zdGFtcC1mb3JtYXQ6ICIlOnktJTAybS0lMDJkIgorIyB0aW1lLXN0YW1wLWVuZDogIiciCisjIEVuZDoKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvYnVpbGQtYXV4L2NvbmZpZy5ycGF0aCBiL2Rwa2ctMS4xNi4xLjEvYnVpbGQtYXV4L2NvbmZpZy5ycGF0aApuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwLi4xNzI5OGYyCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9idWlsZC1hdXgvY29uZmlnLnJwYXRoCkBAIC0wLDAgKzEsNjcyIEBACisjISAvYmluL3NoCisjIE91dHB1dCBhIHN5c3RlbSBkZXBlbmRlbnQgc2V0IG9mIHZhcmlhYmxlcywgZGVzY3JpYmluZyBob3cgdG8gc2V0IHRoZQorIyBydW4gdGltZSBzZWFyY2ggcGF0aCBvZiBzaGFyZWQgbGlicmFyaWVzIGluIGFuIGV4ZWN1dGFibGUuCisjCisjICAgQ29weXJpZ2h0IDE5OTYtMjAxMCBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KKyMgICBUYWtlbiBmcm9tIEdOVSBsaWJ0b29sLCAyMDAxCisjICAgT3JpZ2luYWxseSBieSBHb3Jkb24gTWF0emlna2VpdCA8Z29yZEBnbnUuYWkubWl0LmVkdT4sIDE5OTYKKyMKKyMgICBUaGlzIGZpbGUgaXMgZnJlZSBzb2Z0d2FyZTsgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiBnaXZlcworIyAgIHVubGltaXRlZCBwZXJtaXNzaW9uIHRvIGNvcHkgYW5kL29yIGRpc3RyaWJ1dGUgaXQsIHdpdGggb3Igd2l0aG91dAorIyAgIG1vZGlmaWNhdGlvbnMsIGFzIGxvbmcgYXMgdGhpcyBub3RpY2UgaXMgcHJlc2VydmVkLgorIworIyBUaGUgZmlyc3QgYXJndW1lbnQgcGFzc2VkIHRvIHRoaXMgZmlsZSBpcyB0aGUgY2Fub25pY2FsIGhvc3Qgc3BlY2lmaWNhdGlvbiwKKyMgICAgQ1BVX1RZUEUtTUFOVUZBQ1RVUkVSLU9QRVJBVElOR19TWVNURU0KKyMgb3IKKyMgICAgQ1BVX1RZUEUtTUFOVUZBQ1RVUkVSLUtFUk5FTC1PUEVSQVRJTkdfU1lTVEVNCisjIFRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZXMgQ0MsIEdDQywgTERGTEFHUywgTEQsIHdpdGhfZ251X2xkCisjIHNob3VsZCBiZSBzZXQgYnkgdGhlIGNhbGxlci4KKyMKKyMgVGhlIHNldCBvZiBkZWZpbmVkIHZhcmlhYmxlcyBpcyBhdCB0aGUgZW5kIG9mIHRoaXMgc2NyaXB0LgorCisjIEtub3duIGxpbWl0YXRpb25zOgorIyAtIE9uIElSSVggNi41IHdpdGggQ0M9ImNjIiwgdGhlIHJ1biB0aW1lIHNlYXJjaCBwYXRjaCBtdXN0IG5vdCBiZSBsb25nZXIKKyMgICB0aGFuIDI1NiBieXRlcywgb3RoZXJ3aXNlIHRoZSBjb21waWxlciBkcml2ZXIgd2lsbCBkdW1wIGNvcmUuIFRoZSBvbmx5CisjICAga25vd24gd29ya2Fyb3VuZCBpcyB0byBjaG9vc2Ugc2hvcnRlciBkaXJlY3RvcnkgbmFtZXMgZm9yIHRoZSBidWlsZAorIyAgIGRpcmVjdG9yeSBhbmQvb3IgdGhlIGluc3RhbGxhdGlvbiBkaXJlY3RvcnkuCisKKyMgQWxsIGtub3duIGxpbmtlcnMgcmVxdWlyZSBhIGAuYScgYXJjaGl2ZSBmb3Igc3RhdGljIGxpbmtpbmcgKGV4Y2VwdCBNU1ZDLAorIyB3aGljaCBuZWVkcyAnLmxpYicpLgorbGliZXh0PWEKK3NocmV4dD0uc28KKworaG9zdD0iJDEiCitob3N0X2NwdT1gZWNobyAiJGhvc3QiIHwgc2VkICdzL15cKFteLV0qXCktXChbXi1dKlwpLVwoLipcKSQvXDEvJ2AKK2hvc3RfdmVuZG9yPWBlY2hvICIkaG9zdCIgfCBzZWQgJ3MvXlwoW14tXSpcKS1cKFteLV0qXCktXCguKlwpJC9cMi8nYAoraG9zdF9vcz1gZWNobyAiJGhvc3QiIHwgc2VkICdzL15cKFteLV0qXCktXChbXi1dKlwpLVwoLipcKSQvXDMvJ2AKKworIyBDb2RlIHRha2VuIGZyb20gbGlidG9vbC5tNCdzIF9MVF9DQ19CQVNFTkFNRS4KKworZm9yIGNjX3RlbXAgaW4gJENDIiI7IGRvCisgIGNhc2UgJGNjX3RlbXAgaW4KKyAgICBjb21waWxlIHwgKltcXC9dY29tcGlsZSB8IGNjYWNoZSB8ICpbXFwvXWNjYWNoZSApIDs7CisgICAgZGlzdGNjIHwgKltcXC9dZGlzdGNjIHwgcHVyaWZ5IHwgKltcXC9dcHVyaWZ5ICkgOzsKKyAgICBcLSopIDs7CisgICAgKikgYnJlYWs7OworICBlc2FjCitkb25lCitjY19iYXNlbmFtZT1gZWNobyAiJGNjX3RlbXAiIHwgc2VkIC1lICdzJV4uKi8lJSdgCisKKyMgQ29kZSB0YWtlbiBmcm9tIGxpYnRvb2wubTQncyBfTFRfQ09NUElMRVJfUElDLgorCit3bD0KK2lmIHRlc3QgIiRHQ0MiID0geWVzOyB0aGVuCisgIHdsPSctV2wsJworZWxzZQorICBjYXNlICIkaG9zdF9vcyIgaW4KKyAgICBhaXgqKQorICAgICAgd2w9Jy1XbCwnCisgICAgICA7OworICAgIGRhcndpbiopCisgICAgICBjYXNlICRjY19iYXNlbmFtZSBpbgorICAgICAgICB4bGMqKQorICAgICAgICAgIHdsPSctV2wsJworICAgICAgICAgIDs7CisgICAgICBlc2FjCisgICAgICA7OworICAgIG1pbmd3KiB8IGN5Z3dpbiogfCBwdzMyKiB8IG9zMiogfCBjZWdjYyopCisgICAgICA7OworICAgIGhwdXg5KiB8IGhwdXgxMCogfCBocHV4MTEqKQorICAgICAgd2w9Jy1XbCwnCisgICAgICA7OworICAgIGlyaXg1KiB8IGlyaXg2KiB8IG5vbnN0b3B1eCopCisgICAgICB3bD0nLVdsLCcKKyAgICAgIDs7CisgICAgbmV3c29zNikKKyAgICAgIDs7CisgICAgbGludXgqIHwgaypic2QqLWdudSkKKyAgICAgIGNhc2UgJGNjX2Jhc2VuYW1lIGluCisgICAgICAgIGVjYyopCisgICAgICAgICAgd2w9Jy1XbCwnCisgICAgICAgICAgOzsKKyAgICAgICAgaWNjKiB8IGlmb3J0KikKKyAgICAgICAgICB3bD0nLVdsLCcKKyAgICAgICAgICA7OworICAgICAgICBsZjk1KikKKyAgICAgICAgICB3bD0nLVdsLCcKKyAgICAgICAgICA7OworICAgICAgICBwZ2NjIHwgcGdmNzcgfCBwZ2Y5MCkKKyAgICAgICAgICB3bD0nLVdsLCcKKyAgICAgICAgICA7OworICAgICAgICBjY2MqKQorICAgICAgICAgIHdsPSctV2wsJworICAgICAgICAgIDs7CisgICAgICAgIGNvbW8pCisgICAgICAgICAgd2w9Jy1sb3B0PScKKyAgICAgICAgICA7OworICAgICAgICAqKQorICAgICAgICAgIGNhc2UgYCRDQyAtViAyPiYxIHwgc2VkIDVxYCBpbgorICAgICAgICAgICAgKlN1blwgQyopCisgICAgICAgICAgICAgIHdsPSctV2wsJworICAgICAgICAgICAgICA7OworICAgICAgICAgIGVzYWMKKyAgICAgICAgICA7OworICAgICAgZXNhYworICAgICAgOzsKKyAgICBvc2YzKiB8IG9zZjQqIHwgb3NmNSopCisgICAgICB3bD0nLVdsLCcKKyAgICAgIDs7CisgICAgcmRvcyopCisgICAgICA7OworICAgIHNvbGFyaXMqKQorICAgICAgd2w9Jy1XbCwnCisgICAgICA7OworICAgIHN1bm9zNCopCisgICAgICB3bD0nLVFvcHRpb24gbGQgJworICAgICAgOzsKKyAgICBzeXN2NCB8IHN5c3Y0LjJ1dzIqIHwgc3lzdjQuMyopCisgICAgICB3bD0nLVdsLCcKKyAgICAgIDs7CisgICAgc3lzdjQqTVAqKQorICAgICAgOzsKKyAgICBzeXN2NSogfCB1bml4d2FyZSogfCBzY28zLjJ2NSogfCBzY281djYqIHwgT3BlblVOSVgqKQorICAgICAgd2w9Jy1XbCwnCisgICAgICA7OworICAgIHVuaWNvcyopCisgICAgICB3bD0nLVdsLCcKKyAgICAgIDs7CisgICAgdXRzNCopCisgICAgICA7OworICBlc2FjCitmaQorCisjIENvZGUgdGFrZW4gZnJvbSBsaWJ0b29sLm00J3MgX0xUX0xJTktFUl9TSExJQlMuCisKK2hhcmRjb2RlX2xpYmRpcl9mbGFnX3NwZWM9CitoYXJkY29kZV9saWJkaXJfc2VwYXJhdG9yPQoraGFyZGNvZGVfZGlyZWN0PW5vCitoYXJkY29kZV9taW51c19MPW5vCisKK2Nhc2UgIiRob3N0X29zIiBpbgorICBjeWd3aW4qIHwgbWluZ3cqIHwgcHczMiogfCBjZWdjYyopCisgICAgIyBGSVhNRTogdGhlIE1TVkMrKyBwb3J0IGhhc24ndCBiZWVuIHRlc3RlZCBpbiBhIGxvb29vbmcgdGltZQorICAgICMgV2hlbiBub3QgdXNpbmcgZ2NjLCB3ZSBjdXJyZW50bHkgYXNzdW1lIHRoYXQgd2UgYXJlIHVzaW5nCisgICAgIyBNaWNyb3NvZnQgVmlzdWFsIEMrKy4KKyAgICBpZiB0ZXN0ICIkR0NDIiAhPSB5ZXM7IHRoZW4KKyAgICAgIHdpdGhfZ251X2xkPW5vCisgICAgZmkKKyAgICA7OworICBpbnRlcml4KikKKyAgICAjIHdlIGp1c3QgaG9wZS9hc3N1bWUgdGhpcyBpcyBnY2MgYW5kIG5vdCBjODkgKD0gTVNWQysrKQorICAgIHdpdGhfZ251X2xkPXllcworICAgIDs7CisgIG9wZW5ic2QqKQorICAgIHdpdGhfZ251X2xkPW5vCisgICAgOzsKK2VzYWMKKworbGRfc2hsaWJzPXllcworaWYgdGVzdCAiJHdpdGhfZ251X2xkIiA9IHllczsgdGhlbgorICAjIFNldCBzb21lIGRlZmF1bHRzIGZvciBHTlUgbGQgd2l0aCBzaGFyZWQgbGlicmFyeSBzdXBwb3J0LiBUaGVzZQorICAjIGFyZSByZXNldCBsYXRlciBpZiBzaGFyZWQgbGlicmFyaWVzIGFyZSBub3Qgc3VwcG9ydGVkLiBQdXR0aW5nIHRoZW0KKyAgIyBoZXJlIGFsbG93cyB0aGVtIHRvIGJlIG92ZXJyaWRkZW4gaWYgbmVjZXNzYXJ5LgorICAjIFVubGlrZSBsaWJ0b29sLCB3ZSB1c2UgLXJwYXRoIGhlcmUsIG5vdCAtLXJwYXRoLCBzaW5jZSB0aGUgZG9jdW1lbnRlZAorICAjIG9wdGlvbiBvZiBHTlUgbGQgaXMgY2FsbGVkIC1ycGF0aCwgbm90IC0tcnBhdGguCisgIGhhcmRjb2RlX2xpYmRpcl9mbGFnX3NwZWM9JyR7d2x9LXJwYXRoICR7d2x9JGxpYmRpcicKKyAgY2FzZSAiJGhvc3Rfb3MiIGluCisgICAgYWl4WzMtOV0qKQorICAgICAgIyBPbiBBSVgvUFBDLCB0aGUgR05VIGxpbmtlciBpcyB2ZXJ5IGJyb2tlbgorICAgICAgaWYgdGVzdCAiJGhvc3RfY3B1IiAhPSBpYTY0OyB0aGVuCisgICAgICAgIGxkX3NobGlicz1ubworICAgICAgZmkKKyAgICAgIDs7CisgICAgYW1pZ2FvcyopCisgICAgICBoYXJkY29kZV9saWJkaXJfZmxhZ19zcGVjPSctTCRsaWJkaXInCisgICAgICBoYXJkY29kZV9taW51c19MPXllcworICAgICAgIyBTYW11ZWwgQS4gRmFsdm8gSUkgPGtjNXRqYUBkb2xwaGluLm9wZW5wcm9qZWN0cy5uZXQ+IHJlcG9ydHMKKyAgICAgICMgdGhhdCB0aGUgc2VtYW50aWNzIG9mIGR5bmFtaWMgbGlicmFyaWVzIG9uIEFtaWdhT1MsIGF0IGxlYXN0IHVwCisgICAgICAjIHRvIHZlcnNpb24gNCwgaXMgdG8gc2hhcmUgZGF0YSBhbW9uZyBtdWx0aXBsZSBwcm9ncmFtcyBsaW5rZWQKKyAgICAgICMgd2l0aCB0aGUgc2FtZSBkeW5hbWljIGxpYnJhcnkuICBTaW5jZSB0aGlzIGRvZXNuJ3QgbWF0Y2ggdGhlCisgICAgICAjIGJlaGF2aW9yIG9mIHNoYXJlZCBsaWJyYXJpZXMgb24gb3RoZXIgcGxhdGZvcm1zLCB3ZSBjYW5ub3QgdXNlCisgICAgICAjIHRoZW0uCisgICAgICBsZF9zaGxpYnM9bm8KKyAgICAgIDs7CisgICAgYmVvcyopCisgICAgICBpZiAkTEQgLS1oZWxwIDI+JjEgfCBncmVwICc6IHN1cHBvcnRlZCB0YXJnZXRzOi4qIGVsZicgPiAvZGV2L251bGw7IHRoZW4KKyAgICAgICAgOgorICAgICAgZWxzZQorICAgICAgICBsZF9zaGxpYnM9bm8KKyAgICAgIGZpCisgICAgICA7OworICAgIGN5Z3dpbiogfCBtaW5ndyogfCBwdzMyKiB8IGNlZ2NjKikKKyAgICAgICMgaGFyZGNvZGVfbGliZGlyX2ZsYWdfc3BlYyBpcyBhY3R1YWxseSBtZWFuaW5nbGVzcywgYXMgdGhlcmUgaXMKKyAgICAgICMgbm8gc2VhcmNoIHBhdGggZm9yIERMTHMuCisgICAgICBoYXJkY29kZV9saWJkaXJfZmxhZ19zcGVjPSctTCRsaWJkaXInCisgICAgICBpZiAkTEQgLS1oZWxwIDI+JjEgfCBncmVwICdhdXRvLWltcG9ydCcgPiAvZGV2L251bGw7IHRoZW4KKyAgICAgICAgOgorICAgICAgZWxzZQorICAgICAgICBsZF9zaGxpYnM9bm8KKyAgICAgIGZpCisgICAgICA7OworICAgIGludGVyaXhbMy05XSopCisgICAgICBoYXJkY29kZV9kaXJlY3Q9bm8KKyAgICAgIGhhcmRjb2RlX2xpYmRpcl9mbGFnX3NwZWM9JyR7d2x9LXJwYXRoLCRsaWJkaXInCisgICAgICA7OworICAgIGdudSogfCBsaW51eCogfCBrKmJzZCotZ251KQorICAgICAgaWYgJExEIC0taGVscCAyPiYxIHwgZ3JlcCAnOiBzdXBwb3J0ZWQgdGFyZ2V0czouKiBlbGYnID4gL2Rldi9udWxsOyB0aGVuCisgICAgICAgIDoKKyAgICAgIGVsc2UKKyAgICAgICAgbGRfc2hsaWJzPW5vCisgICAgICBmaQorICAgICAgOzsKKyAgICBuZXRic2QqKQorICAgICAgOzsKKyAgICBzb2xhcmlzKikKKyAgICAgIGlmICRMRCAtdiAyPiYxIHwgZ3JlcCAnQkZEIDJcLjgnID4gL2Rldi9udWxsOyB0aGVuCisgICAgICAgIGxkX3NobGlicz1ubworICAgICAgZWxpZiAkTEQgLS1oZWxwIDI+JjEgfCBncmVwICc6IHN1cHBvcnRlZCB0YXJnZXRzOi4qIGVsZicgPiAvZGV2L251bGw7IHRoZW4KKyAgICAgICAgOgorICAgICAgZWxzZQorICAgICAgICBsZF9zaGxpYnM9bm8KKyAgICAgIGZpCisgICAgICA7OworICAgIHN5c3Y1KiB8IHNjbzMuMnY1KiB8IHNjbzV2NiogfCB1bml4d2FyZSogfCBPcGVuVU5JWCopCisgICAgICBjYXNlIGAkTEQgLXYgMj4mMWAgaW4KKyAgICAgICAgKlwgWzAxXS4qIHwgKlwgMi5bMC05XS4qIHwgKlwgMi4xWzAtNV0uKikKKyAgICAgICAgICBsZF9zaGxpYnM9bm8KKyAgICAgICAgICA7OworICAgICAgICAqKQorICAgICAgICAgIGlmICRMRCAtLWhlbHAgMj4mMSB8IGdyZXAgJzogc3VwcG9ydGVkIHRhcmdldHM6LiogZWxmJyA+IC9kZXYvbnVsbDsgdGhlbgorICAgICAgICAgICAgaGFyZGNvZGVfbGliZGlyX2ZsYWdfc3BlYz0nYHRlc3QgLXogIiRTQ09BQlNQQVRIIiAmJiBlY2hvICR7d2x9LXJwYXRoLCRsaWJkaXJgJworICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgIGxkX3NobGlicz1ubworICAgICAgICAgIGZpCisgICAgICAgICAgOzsKKyAgICAgIGVzYWMKKyAgICAgIDs7CisgICAgc3Vub3M0KikKKyAgICAgIGhhcmRjb2RlX2RpcmVjdD15ZXMKKyAgICAgIDs7CisgICAgKikKKyAgICAgIGlmICRMRCAtLWhlbHAgMj4mMSB8IGdyZXAgJzogc3VwcG9ydGVkIHRhcmdldHM6LiogZWxmJyA+IC9kZXYvbnVsbDsgdGhlbgorICAgICAgICA6CisgICAgICBlbHNlCisgICAgICAgIGxkX3NobGlicz1ubworICAgICAgZmkKKyAgICAgIDs7CisgIGVzYWMKKyAgaWYgdGVzdCAiJGxkX3NobGlicyIgPSBubzsgdGhlbgorICAgIGhhcmRjb2RlX2xpYmRpcl9mbGFnX3NwZWM9CisgIGZpCitlbHNlCisgIGNhc2UgIiRob3N0X29zIiBpbgorICAgIGFpeDMqKQorICAgICAgIyBOb3RlOiB0aGlzIGxpbmtlciBoYXJkY29kZXMgdGhlIGRpcmVjdG9yaWVzIGluIExJQlBBVEggaWYgdGhlcmUKKyAgICAgICMgYXJlIG5vIGRpcmVjdG9yaWVzIHNwZWNpZmllZCBieSAtTC4KKyAgICAgIGhhcmRjb2RlX21pbnVzX0w9eWVzCisgICAgICBpZiB0ZXN0ICIkR0NDIiA9IHllczsgdGhlbgorICAgICAgICAjIE5laXRoZXIgZGlyZWN0IGhhcmRjb2Rpbmcgbm9yIHN0YXRpYyBsaW5raW5nIGlzIHN1cHBvcnRlZCB3aXRoIGEKKyAgICAgICAgIyBicm9rZW4gY29sbGVjdDIuCisgICAgICAgIGhhcmRjb2RlX2RpcmVjdD11bnN1cHBvcnRlZAorICAgICAgZmkKKyAgICAgIDs7CisgICAgYWl4WzQtOV0qKQorICAgICAgaWYgdGVzdCAiJGhvc3RfY3B1IiA9IGlhNjQ7IHRoZW4KKyAgICAgICAgIyBPbiBJQTY0LCB0aGUgbGlua2VyIGRvZXMgcnVuIHRpbWUgbGlua2luZyBieSBkZWZhdWx0LCBzbyB3ZSBkb24ndAorICAgICAgICAjIGhhdmUgdG8gZG8gYW55dGhpbmcgc3BlY2lhbC4KKyAgICAgICAgYWl4X3VzZV9ydW50aW1lbGlua2luZz1ubworICAgICAgZWxzZQorICAgICAgICBhaXhfdXNlX3J1bnRpbWVsaW5raW5nPW5vCisgICAgICAgICMgVGVzdCBpZiB3ZSBhcmUgdHJ5aW5nIHRvIHVzZSBydW4gdGltZSBsaW5raW5nIG9yIG5vcm1hbAorICAgICAgICAjIEFJWCBzdHlsZSBsaW5raW5nLiBJZiAtYnJ0bCBpcyBzb21ld2hlcmUgaW4gTERGTEFHUywgd2UKKyAgICAgICAgIyBuZWVkIHRvIGRvIHJ1bnRpbWUgbGlua2luZy4KKyAgICAgICAgY2FzZSAkaG9zdF9vcyBpbiBhaXg0LlsyM118YWl4NC5bMjNdLip8YWl4WzUtOV0qKQorICAgICAgICAgIGZvciBsZF9mbGFnIGluICRMREZMQUdTOyBkbworICAgICAgICAgICAgaWYgKHRlc3QgJGxkX2ZsYWcgPSAiLWJydGwiIHx8IHRlc3QgJGxkX2ZsYWcgPSAiLVdsLC1icnRsIik7IHRoZW4KKyAgICAgICAgICAgICAgYWl4X3VzZV9ydW50aW1lbGlua2luZz15ZXMKKyAgICAgICAgICAgICAgYnJlYWsKKyAgICAgICAgICAgIGZpCisgICAgICAgICAgZG9uZQorICAgICAgICAgIDs7CisgICAgICAgIGVzYWMKKyAgICAgIGZpCisgICAgICBoYXJkY29kZV9kaXJlY3Q9eWVzCisgICAgICBoYXJkY29kZV9saWJkaXJfc2VwYXJhdG9yPSc6JworICAgICAgaWYgdGVzdCAiJEdDQyIgPSB5ZXM7IHRoZW4KKyAgICAgICAgY2FzZSAkaG9zdF9vcyBpbiBhaXg0LlswMTJdfGFpeDQuWzAxMl0uKikKKyAgICAgICAgICBjb2xsZWN0Mm5hbWU9YCR7Q0N9IC1wcmludC1wcm9nLW5hbWU9Y29sbGVjdDJgCisgICAgICAgICAgaWYgdGVzdCAtZiAiJGNvbGxlY3QybmFtZSIgJiYgXAorICAgICAgICAgICAgc3RyaW5ncyAiJGNvbGxlY3QybmFtZSIgfCBncmVwIHJlc29sdmVfbGliX25hbWUgPi9kZXYvbnVsbAorICAgICAgICAgIHRoZW4KKyAgICAgICAgICAgICMgV2UgaGF2ZSByZXdvcmtlZCBjb2xsZWN0MgorICAgICAgICAgICAgOgorICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICMgV2UgaGF2ZSBvbGQgY29sbGVjdDIKKyAgICAgICAgICAgIGhhcmRjb2RlX2RpcmVjdD11bnN1cHBvcnRlZAorICAgICAgICAgICAgaGFyZGNvZGVfbWludXNfTD15ZXMKKyAgICAgICAgICAgIGhhcmRjb2RlX2xpYmRpcl9mbGFnX3NwZWM9Jy1MJGxpYmRpcicKKyAgICAgICAgICAgIGhhcmRjb2RlX2xpYmRpcl9zZXBhcmF0b3I9CisgICAgICAgICAgZmkKKyAgICAgICAgICA7OworICAgICAgICBlc2FjCisgICAgICBmaQorICAgICAgIyBCZWdpbiBfTFRfQUNfU1lTX0xJQlBBVEhfQUlYLgorICAgICAgZWNobyAnaW50IG1haW4gKCkgeyByZXR1cm4gMDsgfScgPiBjb25mdGVzdC5jCisgICAgICAke0NDfSAke0xERkxBR1N9IGNvbmZ0ZXN0LmMgLW8gY29uZnRlc3QKKyAgICAgIGFpeF9saWJwYXRoPWBkdW1wIC1IIGNvbmZ0ZXN0IDI+L2Rldi9udWxsIHwgc2VkIC1uIC1lICcvSW1wb3J0IEZpbGUgU3RyaW5ncy8sL14kLyB7IC9eMC8geyBzL14wICAqXCguKlwpJC9cMS87IHA7IH0KK30nYAorICAgICAgaWYgdGVzdCAteiAiJGFpeF9saWJwYXRoIjsgdGhlbgorICAgICAgICBhaXhfbGlicGF0aD1gZHVtcCAtSFg2NCBjb25mdGVzdCAyPi9kZXYvbnVsbCB8IHNlZCAtbiAtZSAnL0ltcG9ydCBGaWxlIFN0cmluZ3MvLC9eJC8geyAvXjAvIHsgcy9eMCAgKlwoLipcKSQvXDEvOyBwOyB9Cit9J2AKKyAgICAgIGZpCisgICAgICBpZiB0ZXN0IC16ICIkYWl4X2xpYnBhdGgiOyB0aGVuCisgICAgICAgIGFpeF9saWJwYXRoPSIvdXNyL2xpYjovbGliIgorICAgICAgZmkKKyAgICAgIHJtIC1mIGNvbmZ0ZXN0LmMgY29uZnRlc3QKKyAgICAgICMgRW5kIF9MVF9BQ19TWVNfTElCUEFUSF9BSVguCisgICAgICBpZiB0ZXN0ICIkYWl4X3VzZV9ydW50aW1lbGlua2luZyIgPSB5ZXM7IHRoZW4KKyAgICAgICAgaGFyZGNvZGVfbGliZGlyX2ZsYWdfc3BlYz0nJHt3bH0tYmxpYnBhdGg6JGxpYmRpcjonIiRhaXhfbGlicGF0aCIKKyAgICAgIGVsc2UKKyAgICAgICAgaWYgdGVzdCAiJGhvc3RfY3B1IiA9IGlhNjQ7IHRoZW4KKyAgICAgICAgICBoYXJkY29kZV9saWJkaXJfZmxhZ19zcGVjPScke3dsfS1SICRsaWJkaXI6L3Vzci9saWI6L2xpYicKKyAgICAgICAgZWxzZQorICAgICAgICAgIGhhcmRjb2RlX2xpYmRpcl9mbGFnX3NwZWM9JyR7d2x9LWJsaWJwYXRoOiRsaWJkaXI6JyIkYWl4X2xpYnBhdGgiCisgICAgICAgIGZpCisgICAgICBmaQorICAgICAgOzsKKyAgICBhbWlnYW9zKikKKyAgICAgIGhhcmRjb2RlX2xpYmRpcl9mbGFnX3NwZWM9Jy1MJGxpYmRpcicKKyAgICAgIGhhcmRjb2RlX21pbnVzX0w9eWVzCisgICAgICAjIHNlZSBjb21tZW50IGFib3V0IGRpZmZlcmVudCBzZW1hbnRpY3Mgb24gdGhlIEdOVSBsZCBzZWN0aW9uCisgICAgICBsZF9zaGxpYnM9bm8KKyAgICAgIDs7CisgICAgYnNkaVs0NV0qKQorICAgICAgOzsKKyAgICBjeWd3aW4qIHwgbWluZ3cqIHwgcHczMiogfCBjZWdjYyopCisgICAgICAjIFdoZW4gbm90IHVzaW5nIGdjYywgd2UgY3VycmVudGx5IGFzc3VtZSB0aGF0IHdlIGFyZSB1c2luZworICAgICAgIyBNaWNyb3NvZnQgVmlzdWFsIEMrKy4KKyAgICAgICMgaGFyZGNvZGVfbGliZGlyX2ZsYWdfc3BlYyBpcyBhY3R1YWxseSBtZWFuaW5nbGVzcywgYXMgdGhlcmUgaXMKKyAgICAgICMgbm8gc2VhcmNoIHBhdGggZm9yIERMTHMuCisgICAgICBoYXJkY29kZV9saWJkaXJfZmxhZ19zcGVjPScgJworICAgICAgbGliZXh0PWxpYgorICAgICAgOzsKKyAgICBkYXJ3aW4qIHwgcmhhcHNvZHkqKQorICAgICAgaGFyZGNvZGVfZGlyZWN0PW5vCisgICAgICBpZiB0ZXN0ICIkR0NDIiA9IHllcyA7IHRoZW4KKyAgICAgICAgOgorICAgICAgZWxzZQorICAgICAgICBjYXNlICRjY19iYXNlbmFtZSBpbgorICAgICAgICAgIHhsYyopCisgICAgICAgICAgICA7OworICAgICAgICAgICopCisgICAgICAgICAgICBsZF9zaGxpYnM9bm8KKyAgICAgICAgICAgIDs7CisgICAgICAgIGVzYWMKKyAgICAgIGZpCisgICAgICA7OworICAgIGRndXgqKQorICAgICAgaGFyZGNvZGVfbGliZGlyX2ZsYWdfc3BlYz0nLUwkbGliZGlyJworICAgICAgOzsKKyAgICBmcmVlYnNkMSopCisgICAgICBsZF9zaGxpYnM9bm8KKyAgICAgIDs7CisgICAgZnJlZWJzZDIuMiopCisgICAgICBoYXJkY29kZV9saWJkaXJfZmxhZ19zcGVjPSctUiRsaWJkaXInCisgICAgICBoYXJkY29kZV9kaXJlY3Q9eWVzCisgICAgICA7OworICAgIGZyZWVic2QyKikKKyAgICAgIGhhcmRjb2RlX2RpcmVjdD15ZXMKKyAgICAgIGhhcmRjb2RlX21pbnVzX0w9eWVzCisgICAgICA7OworICAgIGZyZWVic2QqIHwgZHJhZ29uZmx5KikKKyAgICAgIGhhcmRjb2RlX2xpYmRpcl9mbGFnX3NwZWM9Jy1SJGxpYmRpcicKKyAgICAgIGhhcmRjb2RlX2RpcmVjdD15ZXMKKyAgICAgIDs7CisgICAgaHB1eDkqKQorICAgICAgaGFyZGNvZGVfbGliZGlyX2ZsYWdfc3BlYz0nJHt3bH0rYiAke3dsfSRsaWJkaXInCisgICAgICBoYXJkY29kZV9saWJkaXJfc2VwYXJhdG9yPToKKyAgICAgIGhhcmRjb2RlX2RpcmVjdD15ZXMKKyAgICAgICMgaGFyZGNvZGVfbWludXNfTDogTm90IHJlYWxseSBpbiB0aGUgc2VhcmNoIFBBVEgsCisgICAgICAjIGJ1dCBhcyB0aGUgZGVmYXVsdCBsb2NhdGlvbiBvZiB0aGUgbGlicmFyeS4KKyAgICAgIGhhcmRjb2RlX21pbnVzX0w9eWVzCisgICAgICA7OworICAgIGhwdXgxMCopCisgICAgICBpZiB0ZXN0ICIkd2l0aF9nbnVfbGQiID0gbm87IHRoZW4KKyAgICAgICAgaGFyZGNvZGVfbGliZGlyX2ZsYWdfc3BlYz0nJHt3bH0rYiAke3dsfSRsaWJkaXInCisgICAgICAgIGhhcmRjb2RlX2xpYmRpcl9zZXBhcmF0b3I9OgorICAgICAgICBoYXJkY29kZV9kaXJlY3Q9eWVzCisgICAgICAgICMgaGFyZGNvZGVfbWludXNfTDogTm90IHJlYWxseSBpbiB0aGUgc2VhcmNoIFBBVEgsCisgICAgICAgICMgYnV0IGFzIHRoZSBkZWZhdWx0IGxvY2F0aW9uIG9mIHRoZSBsaWJyYXJ5LgorICAgICAgICBoYXJkY29kZV9taW51c19MPXllcworICAgICAgZmkKKyAgICAgIDs7CisgICAgaHB1eDExKikKKyAgICAgIGlmIHRlc3QgIiR3aXRoX2dudV9sZCIgPSBubzsgdGhlbgorICAgICAgICBoYXJkY29kZV9saWJkaXJfZmxhZ19zcGVjPScke3dsfStiICR7d2x9JGxpYmRpcicKKyAgICAgICAgaGFyZGNvZGVfbGliZGlyX3NlcGFyYXRvcj06CisgICAgICAgIGNhc2UgJGhvc3RfY3B1IGluCisgICAgICAgICAgaHBwYSo2NCp8aWE2NCopCisgICAgICAgICAgICBoYXJkY29kZV9kaXJlY3Q9bm8KKyAgICAgICAgICAgIDs7CisgICAgICAgICAgKikKKyAgICAgICAgICAgIGhhcmRjb2RlX2RpcmVjdD15ZXMKKyAgICAgICAgICAgICMgaGFyZGNvZGVfbWludXNfTDogTm90IHJlYWxseSBpbiB0aGUgc2VhcmNoIFBBVEgsCisgICAgICAgICAgICAjIGJ1dCBhcyB0aGUgZGVmYXVsdCBsb2NhdGlvbiBvZiB0aGUgbGlicmFyeS4KKyAgICAgICAgICAgIGhhcmRjb2RlX21pbnVzX0w9eWVzCisgICAgICAgICAgICA7OworICAgICAgICBlc2FjCisgICAgICBmaQorICAgICAgOzsKKyAgICBpcml4NSogfCBpcml4NiogfCBub25zdG9wdXgqKQorICAgICAgaGFyZGNvZGVfbGliZGlyX2ZsYWdfc3BlYz0nJHt3bH0tcnBhdGggJHt3bH0kbGliZGlyJworICAgICAgaGFyZGNvZGVfbGliZGlyX3NlcGFyYXRvcj06CisgICAgICA7OworICAgIG5ldGJzZCopCisgICAgICBoYXJkY29kZV9saWJkaXJfZmxhZ19zcGVjPSctUiRsaWJkaXInCisgICAgICBoYXJkY29kZV9kaXJlY3Q9eWVzCisgICAgICA7OworICAgIG5ld3NvczYpCisgICAgICBoYXJkY29kZV9kaXJlY3Q9eWVzCisgICAgICBoYXJkY29kZV9saWJkaXJfZmxhZ19zcGVjPScke3dsfS1ycGF0aCAke3dsfSRsaWJkaXInCisgICAgICBoYXJkY29kZV9saWJkaXJfc2VwYXJhdG9yPToKKyAgICAgIDs7CisgICAgb3BlbmJzZCopCisgICAgICBpZiB0ZXN0IC1mIC91c3IvbGliZXhlYy9sZC5zbzsgdGhlbgorICAgICAgICBoYXJkY29kZV9kaXJlY3Q9eWVzCisgICAgICAgIGlmIHRlc3QgLXogImBlY2hvIF9fRUxGX18gfCAkQ0MgLUUgLSB8IGdyZXAgX19FTEZfX2AiIHx8IHRlc3QgIiRob3N0X29zLSRob3N0X2NwdSIgPSAib3BlbmJzZDIuOC1wb3dlcnBjIjsgdGhlbgorICAgICAgICAgIGhhcmRjb2RlX2xpYmRpcl9mbGFnX3NwZWM9JyR7d2x9LXJwYXRoLCRsaWJkaXInCisgICAgICAgIGVsc2UKKyAgICAgICAgICBjYXNlICIkaG9zdF9vcyIgaW4KKyAgICAgICAgICAgIG9wZW5ic2RbMDFdLiogfCBvcGVuYnNkMi5bMC03XSB8IG9wZW5ic2QyLlswLTddLiopCisgICAgICAgICAgICAgIGhhcmRjb2RlX2xpYmRpcl9mbGFnX3NwZWM9Jy1SJGxpYmRpcicKKyAgICAgICAgICAgICAgOzsKKyAgICAgICAgICAgICopCisgICAgICAgICAgICAgIGhhcmRjb2RlX2xpYmRpcl9mbGFnX3NwZWM9JyR7d2x9LXJwYXRoLCRsaWJkaXInCisgICAgICAgICAgICAgIDs7CisgICAgICAgICAgZXNhYworICAgICAgICBmaQorICAgICAgZWxzZQorICAgICAgICBsZF9zaGxpYnM9bm8KKyAgICAgIGZpCisgICAgICA7OworICAgIG9zMiopCisgICAgICBoYXJkY29kZV9saWJkaXJfZmxhZ19zcGVjPSctTCRsaWJkaXInCisgICAgICBoYXJkY29kZV9taW51c19MPXllcworICAgICAgOzsKKyAgICBvc2YzKikKKyAgICAgIGhhcmRjb2RlX2xpYmRpcl9mbGFnX3NwZWM9JyR7d2x9LXJwYXRoICR7d2x9JGxpYmRpcicKKyAgICAgIGhhcmRjb2RlX2xpYmRpcl9zZXBhcmF0b3I9OgorICAgICAgOzsKKyAgICBvc2Y0KiB8IG9zZjUqKQorICAgICAgaWYgdGVzdCAiJEdDQyIgPSB5ZXM7IHRoZW4KKyAgICAgICAgaGFyZGNvZGVfbGliZGlyX2ZsYWdfc3BlYz0nJHt3bH0tcnBhdGggJHt3bH0kbGliZGlyJworICAgICAgZWxzZQorICAgICAgICAjIEJvdGggY2MgYW5kIGN4eCBjb21waWxlciBzdXBwb3J0IC1ycGF0aCBkaXJlY3RseQorICAgICAgICBoYXJkY29kZV9saWJkaXJfZmxhZ19zcGVjPSctcnBhdGggJGxpYmRpcicKKyAgICAgIGZpCisgICAgICBoYXJkY29kZV9saWJkaXJfc2VwYXJhdG9yPToKKyAgICAgIDs7CisgICAgc29sYXJpcyopCisgICAgICBoYXJkY29kZV9saWJkaXJfZmxhZ19zcGVjPSctUiRsaWJkaXInCisgICAgICA7OworICAgIHN1bm9zNCopCisgICAgICBoYXJkY29kZV9saWJkaXJfZmxhZ19zcGVjPSctTCRsaWJkaXInCisgICAgICBoYXJkY29kZV9kaXJlY3Q9eWVzCisgICAgICBoYXJkY29kZV9taW51c19MPXllcworICAgICAgOzsKKyAgICBzeXN2NCkKKyAgICAgIGNhc2UgJGhvc3RfdmVuZG9yIGluCisgICAgICAgIHNuaSkKKyAgICAgICAgICBoYXJkY29kZV9kaXJlY3Q9eWVzICMgaXMgdGhpcyByZWFsbHkgdHJ1ZT8/PworICAgICAgICAgIDs7CisgICAgICAgIHNpZW1lbnMpCisgICAgICAgICAgaGFyZGNvZGVfZGlyZWN0PW5vCisgICAgICAgICAgOzsKKyAgICAgICAgbW90b3JvbGEpCisgICAgICAgICAgaGFyZGNvZGVfZGlyZWN0PW5vICNNb3Rvcm9sYSBtYW51YWwgc2F5cyB5ZXMsIGJ1dCBteSB0ZXN0cyBzYXkgdGhleSBsaWUKKyAgICAgICAgICA7OworICAgICAgZXNhYworICAgICAgOzsKKyAgICBzeXN2NC4zKikKKyAgICAgIDs7CisgICAgc3lzdjQqTVAqKQorICAgICAgaWYgdGVzdCAtZCAvdXNyL25lYzsgdGhlbgorICAgICAgICBsZF9zaGxpYnM9eWVzCisgICAgICBmaQorICAgICAgOzsKKyAgICBzeXN2NCp1dzIqIHwgc3lzdjVPcGVuVU5JWCogfCBzeXN2NVVuaXhXYXJlNy5bMDFdLlsxMF0qIHwgdW5peHdhcmU3KiB8IHNjbzMuMnY1LjAuWzAyNF0qKQorICAgICAgOzsKKyAgICBzeXN2NSogfCBzY28zLjJ2NSogfCBzY281djYqKQorICAgICAgaGFyZGNvZGVfbGliZGlyX2ZsYWdfc3BlYz0nYHRlc3QgLXogIiRTQ09BQlNQQVRIIiAmJiBlY2hvICR7d2x9LVIsJGxpYmRpcmAnCisgICAgICBoYXJkY29kZV9saWJkaXJfc2VwYXJhdG9yPSc6JworICAgICAgOzsKKyAgICB1dHM0KikKKyAgICAgIGhhcmRjb2RlX2xpYmRpcl9mbGFnX3NwZWM9Jy1MJGxpYmRpcicKKyAgICAgIDs7CisgICAgKikKKyAgICAgIGxkX3NobGlicz1ubworICAgICAgOzsKKyAgZXNhYworZmkKKworIyBDaGVjayBkeW5hbWljIGxpbmtlciBjaGFyYWN0ZXJpc3RpY3MKKyMgQ29kZSB0YWtlbiBmcm9tIGxpYnRvb2wubTQncyBfTFRfU1lTX0RZTkFNSUNfTElOS0VSLgorIyBVbmxpa2UgbGlidG9vbC5tNCwgaGVyZSB3ZSBkb24ndCBjYXJlIGFib3V0IF9hbGxfIG5hbWVzIG9mIHRoZSBsaWJyYXJ5LCBidXQKKyMgb25seSBhYm91dCB0aGUgb25lIHRoZSBsaW5rZXIgZmluZHMgd2hlbiBwYXNzZWQgLWxOQU1FLiBUaGlzIGlzIHRoZSBsYXN0CisjIGVsZW1lbnQgb2YgbGlicmFyeV9uYW1lc19zcGVjIGluIGxpYnRvb2wubTQsIG9yIHBvc3NpYmx5IHR3byBvZiB0aGVtIGlmIHRoZQorIyBsaW5rZXIgaGFzIHNwZWNpYWwgc2VhcmNoIHJ1bGVzLgorbGlicmFyeV9uYW1lc19zcGVjPSAgICAgICMgdGhlIGxhc3QgZWxlbWVudCBvZiBsaWJyYXJ5X25hbWVzX3NwZWMgaW4gbGlidG9vbC5tNAorbGlibmFtZV9zcGVjPSdsaWIkbmFtZScKK2Nhc2UgIiRob3N0X29zIiBpbgorICBhaXgzKikKKyAgICBsaWJyYXJ5X25hbWVzX3NwZWM9JyRsaWJuYW1lLmEnCisgICAgOzsKKyAgYWl4WzQtOV0qKQorICAgIGxpYnJhcnlfbmFtZXNfc3BlYz0nJGxpYm5hbWUkc2hyZXh0JworICAgIDs7CisgIGFtaWdhb3MqKQorICAgIGxpYnJhcnlfbmFtZXNfc3BlYz0nJGxpYm5hbWUuYScKKyAgICA7OworICBiZW9zKikKKyAgICBsaWJyYXJ5X25hbWVzX3NwZWM9JyRsaWJuYW1lJHNocmV4dCcKKyAgICA7OworICBic2RpWzQ1XSopCisgICAgbGlicmFyeV9uYW1lc19zcGVjPSckbGlibmFtZSRzaHJleHQnCisgICAgOzsKKyAgY3lnd2luKiB8IG1pbmd3KiB8IHB3MzIqIHwgY2VnY2MqKQorICAgIHNocmV4dD0uZGxsCisgICAgbGlicmFyeV9uYW1lc19zcGVjPSckbGlibmFtZS5kbGwuYSAkbGlibmFtZS5saWInCisgICAgOzsKKyAgZGFyd2luKiB8IHJoYXBzb2R5KikKKyAgICBzaHJleHQ9LmR5bGliCisgICAgbGlicmFyeV9uYW1lc19zcGVjPSckbGlibmFtZSRzaHJleHQnCisgICAgOzsKKyAgZGd1eCopCisgICAgbGlicmFyeV9uYW1lc19zcGVjPSckbGlibmFtZSRzaHJleHQnCisgICAgOzsKKyAgZnJlZWJzZDEqKQorICAgIDs7CisgIGZyZWVic2QqIHwgZHJhZ29uZmx5KikKKyAgICBjYXNlICIkaG9zdF9vcyIgaW4KKyAgICAgIGZyZWVic2RbMTIzXSopCisgICAgICAgIGxpYnJhcnlfbmFtZXNfc3BlYz0nJGxpYm5hbWUkc2hyZXh0JHZlcnN1ZmZpeCcgOzsKKyAgICAgICopCisgICAgICAgIGxpYnJhcnlfbmFtZXNfc3BlYz0nJGxpYm5hbWUkc2hyZXh0JyA7OworICAgIGVzYWMKKyAgICA7OworICBnbnUqKQorICAgIGxpYnJhcnlfbmFtZXNfc3BlYz0nJGxpYm5hbWUkc2hyZXh0JworICAgIDs7CisgIGhwdXg5KiB8IGhwdXgxMCogfCBocHV4MTEqKQorICAgIGNhc2UgJGhvc3RfY3B1IGluCisgICAgICBpYTY0KikKKyAgICAgICAgc2hyZXh0PS5zbworICAgICAgICA7OworICAgICAgaHBwYSo2NCopCisgICAgICAgIHNocmV4dD0uc2wKKyAgICAgICAgOzsKKyAgICAgICopCisgICAgICAgIHNocmV4dD0uc2wKKyAgICAgICAgOzsKKyAgICBlc2FjCisgICAgbGlicmFyeV9uYW1lc19zcGVjPSckbGlibmFtZSRzaHJleHQnCisgICAgOzsKKyAgaW50ZXJpeFszLTldKikKKyAgICBsaWJyYXJ5X25hbWVzX3NwZWM9JyRsaWJuYW1lJHNocmV4dCcKKyAgICA7OworICBpcml4NSogfCBpcml4NiogfCBub25zdG9wdXgqKQorICAgIGxpYnJhcnlfbmFtZXNfc3BlYz0nJGxpYm5hbWUkc2hyZXh0JworICAgIGNhc2UgIiRob3N0X29zIiBpbgorICAgICAgaXJpeDUqIHwgbm9uc3RvcHV4KikKKyAgICAgICAgbGlic3VmZj0gc2hsaWJzdWZmPQorICAgICAgICA7OworICAgICAgKikKKyAgICAgICAgY2FzZSAkTEQgaW4KKyAgICAgICAgICAqLTMyfCoiLTMyICJ8Ki1tZWxmMzJic21pcHwqIi1tZWxmMzJic21pcCAiKSBsaWJzdWZmPSBzaGxpYnN1ZmY9IDs7CisgICAgICAgICAgKi1uMzJ8KiItbjMyICJ8Ki1tZWxmMzJibWlwbjMyfCoiLW1lbGYzMmJtaXBuMzIgIikgbGlic3VmZj0zMiBzaGxpYnN1ZmY9TjMyIDs7CisgICAgICAgICAgKi02NHwqIi02NCAifCotbWVsZjY0Ym1pcHwqIi1tZWxmNjRibWlwICIpIGxpYnN1ZmY9NjQgc2hsaWJzdWZmPTY0IDs7CisgICAgICAgICAgKikgbGlic3VmZj0gc2hsaWJzdWZmPSA7OworICAgICAgICBlc2FjCisgICAgICAgIDs7CisgICAgZXNhYworICAgIDs7CisgIGxpbnV4Km9sZGxkKiB8IGxpbnV4KmFvdXQqIHwgbGludXgqY29mZiopCisgICAgOzsKKyAgbGludXgqIHwgaypic2QqLWdudSkKKyAgICBsaWJyYXJ5X25hbWVzX3NwZWM9JyRsaWJuYW1lJHNocmV4dCcKKyAgICA7OworICBrbmV0YnNkKi1nbnUpCisgICAgbGlicmFyeV9uYW1lc19zcGVjPSckbGlibmFtZSRzaHJleHQnCisgICAgOzsKKyAgbmV0YnNkKikKKyAgICBsaWJyYXJ5X25hbWVzX3NwZWM9JyRsaWJuYW1lJHNocmV4dCcKKyAgICA7OworICBuZXdzb3M2KQorICAgIGxpYnJhcnlfbmFtZXNfc3BlYz0nJGxpYm5hbWUkc2hyZXh0JworICAgIDs7CisgIG50by1xbngqKQorICAgIGxpYnJhcnlfbmFtZXNfc3BlYz0nJGxpYm5hbWUkc2hyZXh0JworICAgIDs7CisgIG9wZW5ic2QqKQorICAgIGxpYnJhcnlfbmFtZXNfc3BlYz0nJGxpYm5hbWUkc2hyZXh0JHZlcnN1ZmZpeCcKKyAgICA7OworICBvczIqKQorICAgIGxpYm5hbWVfc3BlYz0nJG5hbWUnCisgICAgc2hyZXh0PS5kbGwKKyAgICBsaWJyYXJ5X25hbWVzX3NwZWM9JyRsaWJuYW1lLmEnCisgICAgOzsKKyAgb3NmMyogfCBvc2Y0KiB8IG9zZjUqKQorICAgIGxpYnJhcnlfbmFtZXNfc3BlYz0nJGxpYm5hbWUkc2hyZXh0JworICAgIDs7CisgIHJkb3MqKQorICAgIDs7CisgIHNvbGFyaXMqKQorICAgIGxpYnJhcnlfbmFtZXNfc3BlYz0nJGxpYm5hbWUkc2hyZXh0JworICAgIDs7CisgIHN1bm9zNCopCisgICAgbGlicmFyeV9uYW1lc19zcGVjPSckbGlibmFtZSRzaHJleHQkdmVyc3VmZml4JworICAgIDs7CisgIHN5c3Y0IHwgc3lzdjQuMyopCisgICAgbGlicmFyeV9uYW1lc19zcGVjPSckbGlibmFtZSRzaHJleHQnCisgICAgOzsKKyAgc3lzdjQqTVAqKQorICAgIGxpYnJhcnlfbmFtZXNfc3BlYz0nJGxpYm5hbWUkc2hyZXh0JworICAgIDs7CisgIHN5c3Y1KiB8IHNjbzMuMnY1KiB8IHNjbzV2NiogfCB1bml4d2FyZSogfCBPcGVuVU5JWCogfCBzeXN2NCp1dzIqKQorICAgIGxpYnJhcnlfbmFtZXNfc3BlYz0nJGxpYm5hbWUkc2hyZXh0JworICAgIDs7CisgIHV0czQqKQorICAgIGxpYnJhcnlfbmFtZXNfc3BlYz0nJGxpYm5hbWUkc2hyZXh0JworICAgIDs7Citlc2FjCisKK3NlZF9xdW90ZV9zdWJzdD0ncy9cKFsiYCRcXF1cKS9cXFwxL2cnCitlc2NhcGVkX3dsPWBlY2hvICJYJHdsIiB8IHNlZCAtZSAncy9eWC8vJyAtZSAiJHNlZF9xdW90ZV9zdWJzdCJgCitzaGxpYmV4dD1gZWNobyAiJHNocmV4dCIgfCBzZWQgLWUgJ3MsXlwuLCwnYAorZXNjYXBlZF9saWJuYW1lX3NwZWM9YGVjaG8gIlgkbGlibmFtZV9zcGVjIiB8IHNlZCAtZSAncy9eWC8vJyAtZSAiJHNlZF9xdW90ZV9zdWJzdCJgCitlc2NhcGVkX2xpYnJhcnlfbmFtZXNfc3BlYz1gZWNobyAiWCRsaWJyYXJ5X25hbWVzX3NwZWMiIHwgc2VkIC1lICdzL15YLy8nIC1lICIkc2VkX3F1b3RlX3N1YnN0ImAKK2VzY2FwZWRfaGFyZGNvZGVfbGliZGlyX2ZsYWdfc3BlYz1gZWNobyAiWCRoYXJkY29kZV9saWJkaXJfZmxhZ19zcGVjIiB8IHNlZCAtZSAncy9eWC8vJyAtZSAiJHNlZF9xdW90ZV9zdWJzdCJgCisKK0xDX0FMTD1DIHNlZCAtZSAncy9eXChbYS16QS1aMC05X10qXCk9L2FjbF9jdl9cMT0vJyA8PEVPRgorCisjIEhvdyB0byBwYXNzIGEgbGlua2VyIGZsYWcgdGhyb3VnaCB0aGUgY29tcGlsZXIuCit3bD0iJGVzY2FwZWRfd2wiCisKKyMgU3RhdGljIGxpYnJhcnkgc3VmZml4IChub3JtYWxseSAiYSIpLgorbGliZXh0PSIkbGliZXh0IgorCisjIFNoYXJlZCBsaWJyYXJ5IHN1ZmZpeCAobm9ybWFsbHkgInNvIikuCitzaGxpYmV4dD0iJHNobGliZXh0IgorCisjIEZvcm1hdCBvZiBsaWJyYXJ5IG5hbWUgcHJlZml4LgorbGlibmFtZV9zcGVjPSIkZXNjYXBlZF9saWJuYW1lX3NwZWMiCisKKyMgTGlicmFyeSBuYW1lcyB0aGF0IHRoZSBsaW5rZXIgZmluZHMgd2hlbiBwYXNzZWQgLWxOQU1FLgorbGlicmFyeV9uYW1lc19zcGVjPSIkZXNjYXBlZF9saWJyYXJ5X25hbWVzX3NwZWMiCisKKyMgRmxhZyB0byBoYXJkY29kZSBcJGxpYmRpciBpbnRvIGEgYmluYXJ5IGR1cmluZyBsaW5raW5nLgorIyBUaGlzIG11c3Qgd29yayBldmVuIGlmIFwkbGliZGlyIGRvZXMgbm90IGV4aXN0LgoraGFyZGNvZGVfbGliZGlyX2ZsYWdfc3BlYz0iJGVzY2FwZWRfaGFyZGNvZGVfbGliZGlyX2ZsYWdfc3BlYyIKKworIyBXaGV0aGVyIHdlIG5lZWQgYSBzaW5nbGUgLXJwYXRoIGZsYWcgd2l0aCBhIHNlcGFyYXRlZCBhcmd1bWVudC4KK2hhcmRjb2RlX2xpYmRpcl9zZXBhcmF0b3I9IiRoYXJkY29kZV9saWJkaXJfc2VwYXJhdG9yIgorCisjIFNldCB0byB5ZXMgaWYgdXNpbmcgRElSL2xpYk5BTUUuc28gZHVyaW5nIGxpbmtpbmcgaGFyZGNvZGVzIERJUiBpbnRvIHRoZQorIyByZXN1bHRpbmcgYmluYXJ5LgoraGFyZGNvZGVfZGlyZWN0PSIkaGFyZGNvZGVfZGlyZWN0IgorCisjIFNldCB0byB5ZXMgaWYgdXNpbmcgdGhlIC1MRElSIGZsYWcgZHVyaW5nIGxpbmtpbmcgaGFyZGNvZGVzIERJUiBpbnRvIHRoZQorIyByZXN1bHRpbmcgYmluYXJ5LgoraGFyZGNvZGVfbWludXNfTD0iJGhhcmRjb2RlX21pbnVzX0wiCisKK0VPRgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9idWlsZC1hdXgvY29uZmlnLnN1YiBiL2Rwa2ctMS4xNi4xLjEvYnVpbGQtYXV4L2NvbmZpZy5zdWIKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMC4uMzBmZGNhOAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvYnVpbGQtYXV4L2NvbmZpZy5zdWIKQEAgLTAsMCArMSwxNzYwIEBACisjISAvYmluL3NoCisjIENvbmZpZ3VyYXRpb24gdmFsaWRhdGlvbiBzdWJyb3V0aW5lIHNjcmlwdC4KKyMgICBDb3B5cmlnaHQgKEMpIDE5OTIsIDE5OTMsIDE5OTQsIDE5OTUsIDE5OTYsIDE5OTcsIDE5OTgsIDE5OTksCisjICAgMjAwMCwgMjAwMSwgMjAwMiwgMjAwMywgMjAwNCwgMjAwNSwgMjAwNiwgMjAwNywgMjAwOCwgMjAwOSwgMjAxMCwKKyMgICAyMDExIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgorCit0aW1lc3RhbXA9JzIwMTEtMDMtMjMnCisKKyMgVGhpcyBmaWxlIGlzIChpbiBwcmluY2lwbGUpIGNvbW1vbiB0byBBTEwgR05VIHNvZnR3YXJlLgorIyBUaGUgcHJlc2VuY2Ugb2YgYSBtYWNoaW5lIGluIHRoaXMgZmlsZSBzdWdnZXN0cyB0aGF0IFNPTUUgR05VIHNvZnR3YXJlCisjIGNhbiBoYW5kbGUgdGhhdCBtYWNoaW5lLiAgSXQgZG9lcyBub3QgaW1wbHkgQUxMIEdOVSBzb2Z0d2FyZSBjYW4uCisjCisjIFRoaXMgZmlsZSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisjIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisjIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisjIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisjCisjIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisjIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisjCisjIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisjIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCisjIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCAtIEZpZnRoIEZsb29yLCBCb3N0b24sIE1BCisjIDAyMTEwLTEzMDEsIFVTQS4KKyMKKyMgQXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UsIGlmIHlvdQorIyBkaXN0cmlidXRlIHRoaXMgZmlsZSBhcyBwYXJ0IG9mIGEgcHJvZ3JhbSB0aGF0IGNvbnRhaW5zIGEKKyMgY29uZmlndXJhdGlvbiBzY3JpcHQgZ2VuZXJhdGVkIGJ5IEF1dG9jb25mLCB5b3UgbWF5IGluY2x1ZGUgaXQgdW5kZXIKKyMgdGhlIHNhbWUgZGlzdHJpYnV0aW9uIHRlcm1zIHRoYXQgeW91IHVzZSBmb3IgdGhlIHJlc3Qgb2YgdGhhdCBwcm9ncmFtLgorCisKKyMgUGxlYXNlIHNlbmQgcGF0Y2hlcyB0byA8Y29uZmlnLXBhdGNoZXNAZ251Lm9yZz4uICBTdWJtaXQgYSBjb250ZXh0CisjIGRpZmYgYW5kIGEgcHJvcGVybHkgZm9ybWF0dGVkIEdOVSBDaGFuZ2VMb2cgZW50cnkuCisjCisjIENvbmZpZ3VyYXRpb24gc3Vicm91dGluZSB0byB2YWxpZGF0ZSBhbmQgY2Fub25pY2FsaXplIGEgY29uZmlndXJhdGlvbiB0eXBlLgorIyBTdXBwbHkgdGhlIHNwZWNpZmllZCBjb25maWd1cmF0aW9uIHR5cGUgYXMgYW4gYXJndW1lbnQuCisjIElmIGl0IGlzIGludmFsaWQsIHdlIHByaW50IGFuIGVycm9yIG1lc3NhZ2Ugb24gc3RkZXJyIGFuZCBleGl0IHdpdGggY29kZSAxLgorIyBPdGhlcndpc2UsIHdlIHByaW50IHRoZSBjYW5vbmljYWwgY29uZmlnIHR5cGUgb24gc3Rkb3V0IGFuZCBzdWNjZWVkLgorCisjIFlvdSBjYW4gZ2V0IHRoZSBsYXRlc3QgdmVyc2lvbiBvZiB0aGlzIHNjcmlwdCBmcm9tOgorIyBodHRwOi8vZ2l0LnNhdmFubmFoLmdudS5vcmcvZ2l0d2ViLz9wPWNvbmZpZy5naXQ7YT1ibG9iX3BsYWluO2Y9Y29uZmlnLnN1YjtoYj1IRUFECisKKyMgVGhpcyBmaWxlIGlzIHN1cHBvc2VkIHRvIGJlIHRoZSBzYW1lIGZvciBhbGwgR05VIHBhY2thZ2VzCisjIGFuZCByZWNvZ25pemUgYWxsIHRoZSBDUFUgdHlwZXMsIHN5c3RlbSB0eXBlcyBhbmQgYWxpYXNlcworIyB0aGF0IGFyZSBtZWFuaW5nZnVsIHdpdGggKmFueSogR05VIHNvZnR3YXJlLgorIyBFYWNoIHBhY2thZ2UgaXMgcmVzcG9uc2libGUgZm9yIHJlcG9ydGluZyB3aGljaCB2YWxpZCBjb25maWd1cmF0aW9ucworIyBpdCBkb2VzIG5vdCBzdXBwb3J0LiAgVGhlIHVzZXIgc2hvdWxkIGJlIGFibGUgdG8gZGlzdGluZ3Vpc2gKKyMgYSBmYWlsdXJlIHRvIHN1cHBvcnQgYSB2YWxpZCBjb25maWd1cmF0aW9uIGZyb20gYSBtZWFuaW5nbGVzcworIyBjb25maWd1cmF0aW9uLgorCisjIFRoZSBnb2FsIG9mIHRoaXMgZmlsZSBpcyB0byBtYXAgYWxsIHRoZSB2YXJpb3VzIHZhcmlhdGlvbnMgb2YgYSBnaXZlbgorIyBtYWNoaW5lIHNwZWNpZmljYXRpb24gaW50byBhIHNpbmdsZSBzcGVjaWZpY2F0aW9uIGluIHRoZSBmb3JtOgorIwlDUFVfVFlQRS1NQU5VRkFDVFVSRVItT1BFUkFUSU5HX1NZU1RFTQorIyBvciBpbiBzb21lIGNhc2VzLCB0aGUgbmV3ZXIgZm91ci1wYXJ0IGZvcm06CisjCUNQVV9UWVBFLU1BTlVGQUNUVVJFUi1LRVJORUwtT1BFUkFUSU5HX1NZU1RFTQorIyBJdCBpcyB3cm9uZyB0byBlY2hvIGFueSBvdGhlciB0eXBlIG9mIHNwZWNpZmljYXRpb24uCisKK21lPWBlY2hvICIkMCIgfCBzZWQgLWUgJ3MsLiovLCwnYAorCit1c2FnZT0iXAorVXNhZ2U6ICQwIFtPUFRJT05dIENQVS1NRlItT1BTWVMKKyAgICAgICAkMCBbT1BUSU9OXSBBTElBUworCitDYW5vbmljYWxpemUgYSBjb25maWd1cmF0aW9uIG5hbWUuCisKK09wZXJhdGlvbiBtb2RlczoKKyAgLWgsIC0taGVscCAgICAgICAgIHByaW50IHRoaXMgaGVscCwgdGhlbiBleGl0CisgIC10LCAtLXRpbWUtc3RhbXAgICBwcmludCBkYXRlIG9mIGxhc3QgbW9kaWZpY2F0aW9uLCB0aGVuIGV4aXQKKyAgLXYsIC0tdmVyc2lvbiAgICAgIHByaW50IHZlcnNpb24gbnVtYmVyLCB0aGVuIGV4aXQKKworUmVwb3J0IGJ1Z3MgYW5kIHBhdGNoZXMgdG8gPGNvbmZpZy1wYXRjaGVzQGdudS5vcmc+LiIKKwordmVyc2lvbj0iXAorR05VIGNvbmZpZy5zdWIgKCR0aW1lc3RhbXApCisKK0NvcHlyaWdodCAoQykgMTk5MiwgMTk5MywgMTk5NCwgMTk5NSwgMTk5NiwgMTk5NywgMTk5OCwgMTk5OSwgMjAwMCwKKzIwMDEsIDIwMDIsIDIwMDMsIDIwMDQsIDIwMDUsIDIwMDYsIDIwMDcsIDIwMDgsIDIwMDksIDIwMTAsIDIwMTEgRnJlZQorU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgorCitUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgc291cmNlIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuICBUaGVyZSBpcyBOTword2FycmFudHk7IG5vdCBldmVuIGZvciBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIgorCitoZWxwPSIKK1RyeSBcYCRtZSAtLWhlbHAnIGZvciBtb3JlIGluZm9ybWF0aW9uLiIKKworIyBQYXJzZSBjb21tYW5kIGxpbmUKK3doaWxlIHRlc3QgJCMgLWd0IDAgOyBkbworICBjYXNlICQxIGluCisgICAgLS10aW1lLXN0YW1wIHwgLS10aW1lKiB8IC10ICkKKyAgICAgICBlY2hvICIkdGltZXN0YW1wIiA7IGV4aXQgOzsKKyAgICAtLXZlcnNpb24gfCAtdiApCisgICAgICAgZWNobyAiJHZlcnNpb24iIDsgZXhpdCA7OworICAgIC0taGVscCB8IC0taCogfCAtaCApCisgICAgICAgZWNobyAiJHVzYWdlIjsgZXhpdCA7OworICAgIC0tICkgICAgICMgU3RvcCBvcHRpb24gcHJvY2Vzc2luZworICAgICAgIHNoaWZ0OyBicmVhayA7OworICAgIC0gKQkjIFVzZSBzdGRpbiBhcyBpbnB1dC4KKyAgICAgICBicmVhayA7OworICAgIC0qICkKKyAgICAgICBlY2hvICIkbWU6IGludmFsaWQgb3B0aW9uICQxJGhlbHAiCisgICAgICAgZXhpdCAxIDs7CisKKyAgICAqbG9jYWwqKQorICAgICAgICMgRmlyc3QgcGFzcyB0aHJvdWdoIGFueSBsb2NhbCBtYWNoaW5lIHR5cGVzLgorICAgICAgIGVjaG8gJDEKKyAgICAgICBleGl0IDs7CisKKyAgICAqICkKKyAgICAgICBicmVhayA7OworICBlc2FjCitkb25lCisKK2Nhc2UgJCMgaW4KKyAwKSBlY2hvICIkbWU6IG1pc3NpbmcgYXJndW1lbnQkaGVscCIgPiYyCisgICAgZXhpdCAxOzsKKyAxKSA7OworICopIGVjaG8gIiRtZTogdG9vIG1hbnkgYXJndW1lbnRzJGhlbHAiID4mMgorICAgIGV4aXQgMTs7Citlc2FjCisKKyMgU2VwYXJhdGUgd2hhdCB0aGUgdXNlciBnYXZlIGludG8gQ1BVLUNPTVBBTlkgYW5kIE9TIG9yIEtFUk5FTC1PUyAoaWYgYW55KS4KKyMgSGVyZSB3ZSBtdXN0IHJlY29nbml6ZSBhbGwgdGhlIHZhbGlkIEtFUk5FTC1PUyBjb21iaW5hdGlvbnMuCittYXliZV9vcz1gZWNobyAkMSB8IHNlZCAncy9eXCguKlwpLVwoW14tXSotW14tXSpcKSQvXDIvJ2AKK2Nhc2UgJG1heWJlX29zIGluCisgIG50by1xbngqIHwgbGludXgtZ251KiB8IGxpbnV4LWFuZHJvaWQqIHwgbGludXgtZGlldGxpYmMgfCBsaW51eC1uZXdsaWIqIHwgXAorICBsaW51eC11Y2xpYmMqIHwgdWNsaW51eC11Y2xpYmMqIHwgdWNsaW51eC1nbnUqIHwga2ZyZWVic2QqLWdudSogfCBcCisgIGtuZXRic2QqLWdudSogfCBuZXRic2QqLWdudSogfCBcCisgIGtvcGVuc29sYXJpcyotZ251KiB8IFwKKyAgc3Rvcm0tY2hhb3MqIHwgb3MyLWVteCogfCBydG1rLW5vdmEqKQorICAgIG9zPS0kbWF5YmVfb3MKKyAgICBiYXNpY19tYWNoaW5lPWBlY2hvICQxIHwgc2VkICdzL15cKC4qXCktXChbXi1dKi1bXi1dKlwpJC9cMS8nYAorICAgIDs7CisgICopCisgICAgYmFzaWNfbWFjaGluZT1gZWNobyAkMSB8IHNlZCAncy8tW14tXSokLy8nYAorICAgIGlmIFsgJGJhc2ljX21hY2hpbmUgIT0gJDEgXQorICAgIHRoZW4gb3M9YGVjaG8gJDEgfCBzZWQgJ3MvLiotLy0vJ2AKKyAgICBlbHNlIG9zPTsgZmkKKyAgICA7OworZXNhYworCisjIyMgTGV0J3MgcmVjb2duaXplIGNvbW1vbiBtYWNoaW5lcyBhcyBub3QgYmVpbmcgb3BlcmF0aW5nIHN5c3RlbXMgc28KKyMjIyB0aGF0IHRoaW5ncyBsaWtlIGNvbmZpZy5zdWIgZGVjc3RhdGlvbi0zMTAwIHdvcmsuICBXZSBhbHNvCisjIyMgcmVjb2duaXplIHNvbWUgbWFudWZhY3R1cmVycyBhcyBub3QgYmVpbmcgb3BlcmF0aW5nIHN5c3RlbXMsIHNvIHdlCisjIyMgY2FuIHByb3ZpZGUgZGVmYXVsdCBvcGVyYXRpbmcgc3lzdGVtcyBiZWxvdy4KK2Nhc2UgJG9zIGluCisJLXN1bipvcyopCisJCSMgUHJldmVudCBmb2xsb3dpbmcgY2xhdXNlIGZyb20gaGFuZGxpbmcgdGhpcyBpbnZhbGlkIGlucHV0LgorCQk7OworCS1kZWMqIHwgLW1pcHMqIHwgLXNlcXVlbnQqIHwgLWVuY29yZSogfCAtcGM1MzIqIHwgLXNnaSogfCAtc29ueSogfCBcCisJLWF0dCogfCAtNzMwMCogfCAtMzMwMCogfCAtZGVsdGEqIHwgLW1vdG9yb2xhKiB8IC1zdW5bMjM0XSogfCBcCisJLXVuaWNvbSogfCAtaWJtKiB8IC1uZXh0IHwgLWhwIHwgLWlzaSogfCAtYXBvbGxvIHwgLWFsdG9zKiB8IFwKKwktY29udmVyZ2VudCogfCAtbmNyKiB8IC1uZXdzIHwgLTMyKiB8IC0zNjAwKiB8IC0zMTAwKiB8IC1oaXRhY2hpKiB8XAorCS1jWzEyM10qIHwgLWNvbnZleCogfCAtc3VuIHwgLWNyZHMgfCAtb21yb24qIHwgLWRnIHwgLXVsdHJhIHwgLXR0aSogfCBcCisJLWhhcnJpcyB8IC1kb2xwaGluIHwgLWhpZ2hsZXZlbCB8IC1nb3VsZCB8IC1jYm0gfCAtbnMgfCAtbWFzc2NvbXAgfCBcCisJLWFwcGxlIHwgLWF4aXMgfCAta251dGggfCAtY3JheSB8IC1taWNyb2JsYXplKQorCQlvcz0KKwkJYmFzaWNfbWFjaGluZT0kMQorCQk7OworCS1ibHVlZ2VuZSopCisJCW9zPS1jbmsKKwkJOzsKKwktc2ltIHwgLWNpc2NvIHwgLW9raSB8IC13ZWMgfCAtd2luYm9uZCkKKwkJb3M9CisJCWJhc2ljX21hY2hpbmU9JDEKKwkJOzsKKwktc2NvdXQpCisJCTs7CisJLXdycykKKwkJb3M9LXZ4d29ya3MKKwkJYmFzaWNfbWFjaGluZT0kMQorCQk7OworCS1jaG9ydXNvcyopCisJCW9zPS1jaG9ydXNvcworCQliYXNpY19tYWNoaW5lPSQxCisJCTs7CisJLWNob3J1c3JkYikKKwkJb3M9LWNob3J1c3JkYgorCQliYXNpY19tYWNoaW5lPSQxCisJCTs7CisJLWhpdXgqKQorCQlvcz0taGl1eHdlMgorCQk7OworCS1zY282KQorCQlvcz0tc2NvNXY2CisJCWJhc2ljX21hY2hpbmU9YGVjaG8gJDEgfCBzZWQgLWUgJ3MvODYtLiovODYtcGMvJ2AKKwkJOzsKKwktc2NvNSkKKwkJb3M9LXNjbzMuMnY1CisJCWJhc2ljX21hY2hpbmU9YGVjaG8gJDEgfCBzZWQgLWUgJ3MvODYtLiovODYtcGMvJ2AKKwkJOzsKKwktc2NvNCkKKwkJb3M9LXNjbzMuMnY0CisJCWJhc2ljX21hY2hpbmU9YGVjaG8gJDEgfCBzZWQgLWUgJ3MvODYtLiovODYtcGMvJ2AKKwkJOzsKKwktc2NvMy4yLls0LTldKikKKwkJb3M9YGVjaG8gJG9zIHwgc2VkIC1lICdzL3NjbzMuMi4vc2NvMy4ydi8nYAorCQliYXNpY19tYWNoaW5lPWBlY2hvICQxIHwgc2VkIC1lICdzLzg2LS4qLzg2LXBjLydgCisJCTs7CisJLXNjbzMuMnZbNC05XSopCisJCSMgRG9uJ3QgZm9yZ2V0IHZlcnNpb24gaWYgaXQgaXMgMy4ydjQgb3IgbmV3ZXIuCisJCWJhc2ljX21hY2hpbmU9YGVjaG8gJDEgfCBzZWQgLWUgJ3MvODYtLiovODYtcGMvJ2AKKwkJOzsKKwktc2NvNXY2KikKKwkJIyBEb24ndCBmb3JnZXQgdmVyc2lvbiBpZiBpdCBpcyAzLjJ2NCBvciBuZXdlci4KKwkJYmFzaWNfbWFjaGluZT1gZWNobyAkMSB8IHNlZCAtZSAncy84Ni0uKi84Ni1wYy8nYAorCQk7OworCS1zY28qKQorCQlvcz0tc2NvMy4ydjIKKwkJYmFzaWNfbWFjaGluZT1gZWNobyAkMSB8IHNlZCAtZSAncy84Ni0uKi84Ni1wYy8nYAorCQk7OworCS11ZGsqKQorCQliYXNpY19tYWNoaW5lPWBlY2hvICQxIHwgc2VkIC1lICdzLzg2LS4qLzg2LXBjLydgCisJCTs7CisJLWlzYykKKwkJb3M9LWlzYzIuMgorCQliYXNpY19tYWNoaW5lPWBlY2hvICQxIHwgc2VkIC1lICdzLzg2LS4qLzg2LXBjLydgCisJCTs7CisJLWNsaXgqKQorCQliYXNpY19tYWNoaW5lPWNsaXBwZXItaW50ZXJncmFwaAorCQk7OworCS1pc2MqKQorCQliYXNpY19tYWNoaW5lPWBlY2hvICQxIHwgc2VkIC1lICdzLzg2LS4qLzg2LXBjLydgCisJCTs7CisJLWx5bngqKQorCQlvcz0tbHlueG9zCisJCTs7CisJLXB0eCopCisJCWJhc2ljX21hY2hpbmU9YGVjaG8gJDEgfCBzZWQgLWUgJ3MvODYtLiovODYtc2VxdWVudC8nYAorCQk7OworCS13aW5kb3dzbnQqKQorCQlvcz1gZWNobyAkb3MgfCBzZWQgLWUgJ3Mvd2luZG93c250L3dpbm50LydgCisJCTs7CisJLXBzb3MqKQorCQlvcz0tcHNvcworCQk7OworCS1taW50IHwgLW1pbnRbMC05XSopCisJCWJhc2ljX21hY2hpbmU9bTY4ay1hdGFyaQorCQlvcz0tbWludAorCQk7OworZXNhYworCisjIERlY29kZSBhbGlhc2VzIGZvciBjZXJ0YWluIENQVS1DT01QQU5ZIGNvbWJpbmF0aW9ucy4KK2Nhc2UgJGJhc2ljX21hY2hpbmUgaW4KKwkjIFJlY29nbml6ZSB0aGUgYmFzaWMgQ1BVIHR5cGVzIHdpdGhvdXQgY29tcGFueSBuYW1lLgorCSMgU29tZSBhcmUgb21pdHRlZCBoZXJlIGJlY2F1c2UgdGhleSBoYXZlIHNwZWNpYWwgbWVhbmluZ3MgYmVsb3cuCisJMTc1MGEgfCA1ODAgXAorCXwgYTI5ayBcCisJfCBhbHBoYSB8IGFscGhhZXZbNC04XSB8IGFscGhhZXY1NiB8IGFscGhhZXY2Wzc4XSB8IGFscGhhcGNhNVs2N10gXAorCXwgYWxwaGE2NCB8IGFscGhhNjRldls0LThdIHwgYWxwaGE2NGV2NTYgfCBhbHBoYTY0ZXY2Wzc4XSB8IGFscGhhNjRwY2E1WzY3XSBcCisJfCBhbTMzXzIuMCBcCisJfCBhcmMgfCBhcm0gfCBhcm1bYmxdZSB8IGFybWVbbGJdIHwgYXJtdlsyMzQ1XSB8IGFybXZbMzQ1XVtsYl0gfCBhdnIgfCBhdnIzMiBcCisJfCBiZmluIFwKKwl8IGM0eCB8IGNsaXBwZXIgXAorCXwgZDEwdiB8IGQzMHYgfCBkbHggfCBkc3AxNnh4IFwKKwl8IGZpZG8gfCBmcjMwIHwgZnJ2IFwKKwl8IGg4MzAwIHwgaDg1MDAgfCBocHBhIHwgaHBwYTEuWzAxXSB8IGhwcGEyLjAgfCBocHBhMi4wW253XSB8IGhwcGE2NCBcCisJfCBpMzcwIHwgaTg2MCB8IGk5NjAgfCBpYTY0IFwKKwl8IGlwMmsgfCBpcTIwMDAgXAorCXwgbG0zMiBcCisJfCBtMzJjIHwgbTMyciB8IG0zMnJsZSB8IG02ODAwMCB8IG02OGsgfCBtODhrIFwKKwl8IG1heHEgfCBtYiB8IG1pY3JvYmxhemUgfCBtY29yZSB8IG1lcCB8IG1ldGFnIFwKKwl8IG1pcHMgfCBtaXBzYmUgfCBtaXBzZWIgfCBtaXBzZWwgfCBtaXBzbGUgXAorCXwgbWlwczE2IFwKKwl8IG1pcHM2NCB8IG1pcHM2NGVsIFwKKwl8IG1pcHM2NG9jdGVvbiB8IG1pcHM2NG9jdGVvbmVsIFwKKwl8IG1pcHM2NG9yaW9uIHwgbWlwczY0b3Jpb25lbCBcCisJfCBtaXBzNjRyNTkwMCB8IG1pcHM2NHI1OTAwZWwgXAorCXwgbWlwczY0dnIgfCBtaXBzNjR2cmVsIFwKKwl8IG1pcHM2NHZyNDEwMCB8IG1pcHM2NHZyNDEwMGVsIFwKKwl8IG1pcHM2NHZyNDMwMCB8IG1pcHM2NHZyNDMwMGVsIFwKKwl8IG1pcHM2NHZyNTAwMCB8IG1pcHM2NHZyNTAwMGVsIFwKKwl8IG1pcHM2NHZyNTkwMCB8IG1pcHM2NHZyNTkwMGVsIFwKKwl8IG1pcHNpc2EzMiB8IG1pcHNpc2EzMmVsIFwKKwl8IG1pcHNpc2EzMnIyIHwgbWlwc2lzYTMycjJlbCBcCisJfCBtaXBzaXNhNjQgfCBtaXBzaXNhNjRlbCBcCisJfCBtaXBzaXNhNjRyMiB8IG1pcHNpc2E2NHIyZWwgXAorCXwgbWlwc2lzYTY0c2IxIHwgbWlwc2lzYTY0c2IxZWwgXAorCXwgbWlwc2lzYTY0c3I3MWsgfCBtaXBzaXNhNjRzcjcxa2VsIFwKKwl8IG1pcHN0eDM5IHwgbWlwc3R4MzllbCBcCisJfCBtbjEwMjAwIHwgbW4xMDMwMCBcCisJfCBtb3hpZSBcCisJfCBtdCBcCisJfCBtc3A0MzAgXAorCXwgbmRzMzIgfCBuZHMzMmxlIHwgbmRzMzJiZSBcCisJfCBuaW9zIHwgbmlvczIgXAorCXwgbnMxNmsgfCBuczMyayBcCisJfCBvcGVuOCBcCisJfCBvcjMyIFwKKwl8IHBkcDEwIHwgcGRwMTEgfCBwaiB8IHBqbCBcCisJfCBwb3dlcnBjIHwgcG93ZXJwYzY0IHwgcG93ZXJwYzY0bGUgfCBwb3dlcnBjbGUgXAorCXwgcHlyYW1pZCBcCisJfCByeCBcCisJfCBzY29yZSBcCisJfCBzaCB8IHNoWzEyMzRdIHwgc2hbMjRdYSB8IHNoWzI0XWFlYiB8IHNoWzIzXWUgfCBzaFszNF1lYiB8IHNoZWIgfCBzaGJlIHwgc2hsZSB8IHNoWzEyMzRdbGUgfCBzaDNlbGUgXAorCXwgc2g2NCB8IHNoNjRsZSBcCisJfCBzcGFyYyB8IHNwYXJjNjQgfCBzcGFyYzY0YiB8IHNwYXJjNjR2IHwgc3BhcmM4NnggfCBzcGFyY2xldCB8IHNwYXJjbGl0ZSBcCisJfCBzcGFyY3Y4IHwgc3BhcmN2OSB8IHNwYXJjdjliIHwgc3BhcmN2OXYgXAorCXwgc3B1IFwKKwl8IHRhaG9lIHwgdGljNHggfCB0aWM1NHggfCB0aWM1NXggfCB0aWM2eCB8IHRpYzgwIHwgdHJvbiBcCisJfCB1Ymljb20zMiBcCisJfCB2ODUwIHwgdjg1MGUgXAorCXwgd2UzMmsgXAorCXwgeDg2IHwgeGMxNnggfCB4c3Rvcm15MTYgfCB4dGVuc2EgXAorCXwgejhrIHwgejgwKQorCQliYXNpY19tYWNoaW5lPSRiYXNpY19tYWNoaW5lLXVua25vd24KKwkJOzsKKwljNTR4KQorCQliYXNpY19tYWNoaW5lPXRpYzU0eC11bmtub3duCisJCTs7CisJYzU1eCkKKwkJYmFzaWNfbWFjaGluZT10aWM1NXgtdW5rbm93bgorCQk7OworCWM2eCkKKwkJYmFzaWNfbWFjaGluZT10aWM2eC11bmtub3duCisJCTs7CisJbTY4MTEgfCBtNjhoYzExIHwgbTY4MTIgfCBtNjhoYzEyIHwgcGljb2NoaXApCisJCSMgTW90b3JvbGEgNjhIQzExLzEyLgorCQliYXNpY19tYWNoaW5lPSRiYXNpY19tYWNoaW5lLXVua25vd24KKwkJb3M9LW5vbmUKKwkJOzsKKwltODgxMTAgfCBtNjgwWzEyMzQ2XTAgfCBtNjgzPzIgfCBtNjgzNjAgfCBtNTIwMCB8IHY3MCB8IHc2NSB8IHo4aykKKwkJOzsKKwltczEpCisJCWJhc2ljX21hY2hpbmU9bXQtdW5rbm93bgorCQk7OworCisJc3Ryb25nYXJtIHwgdGh1bWIgfCB4c2NhbGUpCisJCWJhc2ljX21hY2hpbmU9YXJtLXVua25vd24KKwkJOzsKKworCXhzY2FsZWViKQorCQliYXNpY19tYWNoaW5lPWFybWViLXVua25vd24KKwkJOzsKKworCXhzY2FsZWVsKQorCQliYXNpY19tYWNoaW5lPWFybWVsLXVua25vd24KKwkJOzsKKworCSMgV2UgdXNlIGBwYycgcmF0aGVyIHRoYW4gYHVua25vd24nCisJIyBiZWNhdXNlICgxKSB0aGF0J3Mgd2hhdCB0aGV5IG5vcm1hbGx5IGFyZSwgYW5kCisJIyAoMikgdGhlIHdvcmQgInVua25vd24iIHRlbmRzIHRvIGNvbmZ1c2UgYmVnaW5uaW5nIHVzZXJzLgorCWkqODYgfCB4ODZfNjQpCisJICBiYXNpY19tYWNoaW5lPSRiYXNpY19tYWNoaW5lLXBjCisJICA7OworCSMgT2JqZWN0IGlmIG1vcmUgdGhhbiBvbmUgY29tcGFueSBuYW1lIHdvcmQuCisJKi0qLSopCisJCWVjaG8gSW52YWxpZCBjb25maWd1cmF0aW9uIFxgJDFcJzogbWFjaGluZSBcYCRiYXNpY19tYWNoaW5lXCcgbm90IHJlY29nbml6ZWQgMT4mMgorCQlleGl0IDEKKwkJOzsKKwkjIFJlY29nbml6ZSB0aGUgYmFzaWMgQ1BVIHR5cGVzIHdpdGggY29tcGFueSBuYW1lLgorCTU4MC0qIFwKKwl8IGEyOWstKiBcCisJfCBhbHBoYS0qIHwgYWxwaGFldls0LThdLSogfCBhbHBoYWV2NTYtKiB8IGFscGhhZXY2Wzc4XS0qIFwKKwl8IGFscGhhNjQtKiB8IGFscGhhNjRldls0LThdLSogfCBhbHBoYTY0ZXY1Ni0qIHwgYWxwaGE2NGV2Nls3OF0tKiBcCisJfCBhbHBoYXBjYTVbNjddLSogfCBhbHBoYTY0cGNhNVs2N10tKiB8IGFyYy0qIFwKKwl8IGFybS0qICB8IGFybWJlLSogfCBhcm1sZS0qIHwgYXJtZWItKiB8IGFybXYqLSogXAorCXwgYXZyLSogfCBhdnIzMi0qIFwKKwl8IGJmaW4tKiB8IGJzMjAwMC0qIFwKKwl8IGNbMTIzXSogfCBjMzAtKiB8IFtjanRdOTAtKiB8IGM0eC0qIFwKKwl8IGNsaXBwZXItKiB8IGNyYXludi0qIHwgY3lkcmEtKiBcCisJfCBkMTB2LSogfCBkMzB2LSogfCBkbHgtKiBcCisJfCBlbHhzaS0qIFwKKwl8IGYzMFswMV0tKiB8IGY3MDAtKiB8IGZpZG8tKiB8IGZyMzAtKiB8IGZydi0qIHwgZng4MC0qIFwKKwl8IGg4MzAwLSogfCBoODUwMC0qIFwKKwl8IGhwcGEtKiB8IGhwcGExLlswMV0tKiB8IGhwcGEyLjAtKiB8IGhwcGEyLjBbbnddLSogfCBocHBhNjQtKiBcCisJfCBpKjg2LSogfCBpODYwLSogfCBpOTYwLSogfCBpYTY0LSogXAorCXwgaXAyay0qIHwgaXEyMDAwLSogXAorCXwgbG0zMi0qIFwKKwl8IG0zMmMtKiB8IG0zMnItKiB8IG0zMnJsZS0qIFwKKwl8IG02ODAwMC0qIHwgbTY4MFswMTIzNDZdMC0qIHwgbTY4MzYwLSogfCBtNjgzPzItKiB8IG02OGstKiBcCisJfCBtODgxMTAtKiB8IG04OGstKiB8IG1heHEtKiB8IG1jb3JlLSogfCBtZXRhZy0qIHwgbWljcm9ibGF6ZS0qIFwKKwl8IG1pcHMtKiB8IG1pcHNiZS0qIHwgbWlwc2ViLSogfCBtaXBzZWwtKiB8IG1pcHNsZS0qIFwKKwl8IG1pcHMxNi0qIFwKKwl8IG1pcHM2NC0qIHwgbWlwczY0ZWwtKiBcCisJfCBtaXBzNjRvY3Rlb24tKiB8IG1pcHM2NG9jdGVvbmVsLSogXAorCXwgbWlwczY0b3Jpb24tKiB8IG1pcHM2NG9yaW9uZWwtKiBcCisJfCBtaXBzNjRyNTkwMC0qIHwgbWlwczY0cjU5MDBlbC0qIFwKKwl8IG1pcHM2NHZyLSogfCBtaXBzNjR2cmVsLSogXAorCXwgbWlwczY0dnI0MTAwLSogfCBtaXBzNjR2cjQxMDBlbC0qIFwKKwl8IG1pcHM2NHZyNDMwMC0qIHwgbWlwczY0dnI0MzAwZWwtKiBcCisJfCBtaXBzNjR2cjUwMDAtKiB8IG1pcHM2NHZyNTAwMGVsLSogXAorCXwgbWlwczY0dnI1OTAwLSogfCBtaXBzNjR2cjU5MDBlbC0qIFwKKwl8IG1pcHNpc2EzMi0qIHwgbWlwc2lzYTMyZWwtKiBcCisJfCBtaXBzaXNhMzJyMi0qIHwgbWlwc2lzYTMycjJlbC0qIFwKKwl8IG1pcHNpc2E2NC0qIHwgbWlwc2lzYTY0ZWwtKiBcCisJfCBtaXBzaXNhNjRyMi0qIHwgbWlwc2lzYTY0cjJlbC0qIFwKKwl8IG1pcHNpc2E2NHNiMS0qIHwgbWlwc2lzYTY0c2IxZWwtKiBcCisJfCBtaXBzaXNhNjRzcjcxay0qIHwgbWlwc2lzYTY0c3I3MWtlbC0qIFwKKwl8IG1pcHN0eDM5LSogfCBtaXBzdHgzOWVsLSogXAorCXwgbW1peC0qIFwKKwl8IG10LSogXAorCXwgbXNwNDMwLSogXAorCXwgbmRzMzItKiB8IG5kczMybGUtKiB8IG5kczMyYmUtKiBcCisJfCBuaW9zLSogfCBuaW9zMi0qIFwKKwl8IG5vbmUtKiB8IG5wMS0qIHwgbnMxNmstKiB8IG5zMzJrLSogXAorCXwgb3BlbjgtKiBcCisJfCBvcmlvbi0qIFwKKwl8IHBkcDEwLSogfCBwZHAxMS0qIHwgcGotKiB8IHBqbC0qIHwgcG4tKiB8IHBvd2VyLSogXAorCXwgcG93ZXJwYy0qIHwgcG93ZXJwYzY0LSogfCBwb3dlcnBjNjRsZS0qIHwgcG93ZXJwY2xlLSogXAorCXwgcHlyYW1pZC0qIFwKKwl8IHJvbXAtKiB8IHJzNjAwMC0qIHwgcngtKiBcCisJfCBzaC0qIHwgc2hbMTIzNF0tKiB8IHNoWzI0XWEtKiB8IHNoWzI0XWFlYi0qIHwgc2hbMjNdZS0qIHwgc2hbMzRdZWItKiB8IHNoZWItKiB8IHNoYmUtKiBcCisJfCBzaGxlLSogfCBzaFsxMjM0XWxlLSogfCBzaDNlbGUtKiB8IHNoNjQtKiB8IHNoNjRsZS0qIFwKKwl8IHNwYXJjLSogfCBzcGFyYzY0LSogfCBzcGFyYzY0Yi0qIHwgc3BhcmM2NHYtKiB8IHNwYXJjODZ4LSogfCBzcGFyY2xldC0qIFwKKwl8IHNwYXJjbGl0ZS0qIFwKKwl8IHNwYXJjdjgtKiB8IHNwYXJjdjktKiB8IHNwYXJjdjliLSogfCBzcGFyY3Y5di0qIHwgc3YxLSogfCBzeD8tKiBcCisJfCB0YWhvZS0qIFwKKwl8IHRpYzMwLSogfCB0aWM0eC0qIHwgdGljNTR4LSogfCB0aWM1NXgtKiB8IHRpYzZ4LSogfCB0aWM4MC0qIFwKKwl8IHRpbGUtKiB8IHRpbGVneC0qIFwKKwl8IHRyb24tKiBcCisJfCB1Ymljb20zMi0qIFwKKwl8IHY4NTAtKiB8IHY4NTBlLSogfCB2YXgtKiBcCisJfCB3ZTMyay0qIFwKKwl8IHg4Ni0qIHwgeDg2XzY0LSogfCB4YzE2eC0qIHwgeHBzMTAwLSogXAorCXwgeHN0b3JteTE2LSogfCB4dGVuc2EqLSogXAorCXwgeW1wLSogXAorCXwgejhrLSogfCB6ODAtKikKKwkJOzsKKwkjIFJlY29nbml6ZSB0aGUgYmFzaWMgQ1BVIHR5cGVzIHdpdGhvdXQgY29tcGFueSBuYW1lLCB3aXRoIGdsb2IgbWF0Y2guCisJeHRlbnNhKikKKwkJYmFzaWNfbWFjaGluZT0kYmFzaWNfbWFjaGluZS11bmtub3duCisJCTs7CisJIyBSZWNvZ25pemUgdGhlIHZhcmlvdXMgbWFjaGluZSBuYW1lcyBhbmQgYWxpYXNlcyB3aGljaCBzdGFuZAorCSMgZm9yIGEgQ1BVIHR5cGUgYW5kIGEgY29tcGFueSBhbmQgc29tZXRpbWVzIGV2ZW4gYW4gT1MuCisJMzg2YnNkKQorCQliYXNpY19tYWNoaW5lPWkzODYtdW5rbm93bgorCQlvcz0tYnNkCisJCTs7CisJM2IxIHwgNzMwMCB8IDczMDAtYXR0IHwgYXR0LTczMDAgfCBwYzczMDAgfCBzYWZhcmkgfCB1bml4cGMpCisJCWJhc2ljX21hY2hpbmU9bTY4MDAwLWF0dAorCQk7OworCTNiKikKKwkJYmFzaWNfbWFjaGluZT13ZTMyay1hdHQKKwkJOzsKKwlhMjlraGlmKQorCQliYXNpY19tYWNoaW5lPWEyOWstYW1kCisJCW9zPS11ZGkKKwkJOzsKKwlhYmFjdXMpCisJCWJhc2ljX21hY2hpbmU9YWJhY3VzLXVua25vd24KKwkJOzsKKwlhZG9iZTY4aykKKwkJYmFzaWNfbWFjaGluZT1tNjgwMTAtYWRvYmUKKwkJb3M9LXNjb3V0CisJCTs7CisJYWxsaWFudCB8IGZ4ODApCisJCWJhc2ljX21hY2hpbmU9Zng4MC1hbGxpYW50CisJCTs7CisJYWx0b3MgfCBhbHRvczMwNjgpCisJCWJhc2ljX21hY2hpbmU9bTY4ay1hbHRvcworCQk7OworCWFtMjlrKQorCQliYXNpY19tYWNoaW5lPWEyOWstbm9uZQorCQlvcz0tYnNkCisJCTs7CisJYW1kNjQpCisJCWJhc2ljX21hY2hpbmU9eDg2XzY0LXBjCisJCTs7CisJYW1kNjQtKikKKwkJYmFzaWNfbWFjaGluZT14ODZfNjQtYGVjaG8gJGJhc2ljX21hY2hpbmUgfCBzZWQgJ3MvXlteLV0qLS8vJ2AKKwkJOzsKKwlhbWRhaGwpCisJCWJhc2ljX21hY2hpbmU9NTgwLWFtZGFobAorCQlvcz0tc3lzdgorCQk7OworCWFtaWdhIHwgYW1pZ2EtKikKKwkJYmFzaWNfbWFjaGluZT1tNjhrLXVua25vd24KKwkJOzsKKwlhbWlnYW9zIHwgYW1pZ2Fkb3MpCisJCWJhc2ljX21hY2hpbmU9bTY4ay11bmtub3duCisJCW9zPS1hbWlnYW9zCisJCTs7CisJYW1pZ2F1bml4IHwgYW1peCkKKwkJYmFzaWNfbWFjaGluZT1tNjhrLXVua25vd24KKwkJb3M9LXN5c3Y0CisJCTs7CisJYXBvbGxvNjgpCisJCWJhc2ljX21hY2hpbmU9bTY4ay1hcG9sbG8KKwkJb3M9LXN5c3YKKwkJOzsKKwlhcG9sbG82OGJzZCkKKwkJYmFzaWNfbWFjaGluZT1tNjhrLWFwb2xsbworCQlvcz0tYnNkCisJCTs7CisJYXJvcykKKwkJYmFzaWNfbWFjaGluZT1pMzg2LXBjCisJCW9zPS1hcm9zCisJCTs7CisJYXV4KQorCQliYXNpY19tYWNoaW5lPW02OGstYXBwbGUKKwkJb3M9LWF1eAorCQk7OworCWJhbGFuY2UpCisJCWJhc2ljX21hY2hpbmU9bnMzMmstc2VxdWVudAorCQlvcz0tZHluaXgKKwkJOzsKKwlibGFja2ZpbikKKwkJYmFzaWNfbWFjaGluZT1iZmluLXVua25vd24KKwkJb3M9LWxpbnV4CisJCTs7CisJYmxhY2tmaW4tKikKKwkJYmFzaWNfbWFjaGluZT1iZmluLWBlY2hvICRiYXNpY19tYWNoaW5lIHwgc2VkICdzL15bXi1dKi0vLydgCisJCW9zPS1saW51eAorCQk7OworCWJsdWVnZW5lKikKKwkJYmFzaWNfbWFjaGluZT1wb3dlcnBjLWlibQorCQlvcz0tY25rCisJCTs7CisJYzU0eC0qKQorCQliYXNpY19tYWNoaW5lPXRpYzU0eC1gZWNobyAkYmFzaWNfbWFjaGluZSB8IHNlZCAncy9eW14tXSotLy8nYAorCQk7OworCWM1NXgtKikKKwkJYmFzaWNfbWFjaGluZT10aWM1NXgtYGVjaG8gJGJhc2ljX21hY2hpbmUgfCBzZWQgJ3MvXlteLV0qLS8vJ2AKKwkJOzsKKwljNngtKikKKwkJYmFzaWNfbWFjaGluZT10aWM2eC1gZWNobyAkYmFzaWNfbWFjaGluZSB8IHNlZCAncy9eW14tXSotLy8nYAorCQk7OworCWM5MCkKKwkJYmFzaWNfbWFjaGluZT1jOTAtY3JheQorCQlvcz0tdW5pY29zCisJCTs7CisJY2VnY2MpCisJCWJhc2ljX21hY2hpbmU9YXJtLXVua25vd24KKwkJb3M9LWNlZ2NjCisJCTs7CisJY29udmV4LWMxKQorCQliYXNpY19tYWNoaW5lPWMxLWNvbnZleAorCQlvcz0tYnNkCisJCTs7CisJY29udmV4LWMyKQorCQliYXNpY19tYWNoaW5lPWMyLWNvbnZleAorCQlvcz0tYnNkCisJCTs7CisJY29udmV4LWMzMikKKwkJYmFzaWNfbWFjaGluZT1jMzItY29udmV4CisJCW9zPS1ic2QKKwkJOzsKKwljb252ZXgtYzM0KQorCQliYXNpY19tYWNoaW5lPWMzNC1jb252ZXgKKwkJb3M9LWJzZAorCQk7OworCWNvbnZleC1jMzgpCisJCWJhc2ljX21hY2hpbmU9YzM4LWNvbnZleAorCQlvcz0tYnNkCisJCTs7CisJY3JheSB8IGo5MCkKKwkJYmFzaWNfbWFjaGluZT1qOTAtY3JheQorCQlvcz0tdW5pY29zCisJCTs7CisJY3JheW52KQorCQliYXNpY19tYWNoaW5lPWNyYXludi1jcmF5CisJCW9zPS11bmljb3NtcAorCQk7OworCWNyMTYgfCBjcjE2LSopCisJCWJhc2ljX21hY2hpbmU9Y3IxNi11bmtub3duCisJCW9zPS1lbGYKKwkJOzsKKwljcmRzIHwgdW5vcykKKwkJYmFzaWNfbWFjaGluZT1tNjhrLWNyZHMKKwkJOzsKKwljcmlzdjMyIHwgY3Jpc3YzMi0qIHwgZXRyYXhmcyopCisJCWJhc2ljX21hY2hpbmU9Y3Jpc3YzMi1heGlzCisJCTs7CisJY3JpcyB8IGNyaXMtKiB8IGV0cmF4KikKKwkJYmFzaWNfbWFjaGluZT1jcmlzLWF4aXMKKwkJOzsKKwljcngpCisJCWJhc2ljX21hY2hpbmU9Y3J4LXVua25vd24KKwkJb3M9LWVsZgorCQk7OworCWRhMzAgfCBkYTMwLSopCisJCWJhc2ljX21hY2hpbmU9bTY4ay1kYTMwCisJCTs7CisJZGVjc3RhdGlvbiB8IGRlY3N0YXRpb24tMzEwMCB8IHBtYXggfCBwbWF4LSogfCBwbWluIHwgZGVjMzEwMCB8IGRlY3N0YXRuKQorCQliYXNpY19tYWNoaW5lPW1pcHMtZGVjCisJCTs7CisJZGVjc3lzdGVtMTAqIHwgZGVjMTAqKQorCQliYXNpY19tYWNoaW5lPXBkcDEwLWRlYworCQlvcz0tdG9wczEwCisJCTs7CisJZGVjc3lzdGVtMjAqIHwgZGVjMjAqKQorCQliYXNpY19tYWNoaW5lPXBkcDEwLWRlYworCQlvcz0tdG9wczIwCisJCTs7CisJZGVsdGEgfCAzMzAwIHwgbW90b3JvbGEtMzMwMCB8IG1vdG9yb2xhLWRlbHRhIFwKKwkgICAgICB8IDMzMDAtbW90b3JvbGEgfCBkZWx0YS1tb3Rvcm9sYSkKKwkJYmFzaWNfbWFjaGluZT1tNjhrLW1vdG9yb2xhCisJCTs7CisJZGVsdGE4OCkKKwkJYmFzaWNfbWFjaGluZT1tODhrLW1vdG9yb2xhCisJCW9zPS1zeXN2MworCQk7OworCWRpY29zKQorCQliYXNpY19tYWNoaW5lPWk2ODYtcGMKKwkJb3M9LWRpY29zCisJCTs7CisJZGpncHApCisJCWJhc2ljX21hY2hpbmU9aTU4Ni1wYworCQlvcz0tbXNkb3NkamdwcAorCQk7OworCWRweDIwIHwgZHB4MjAtKikKKwkJYmFzaWNfbWFjaGluZT1yczYwMDAtYnVsbAorCQlvcz0tYm9zeAorCQk7OworCWRweDIqIHwgZHB4MiotYnVsbCkKKwkJYmFzaWNfbWFjaGluZT1tNjhrLWJ1bGwKKwkJb3M9LXN5c3YzCisJCTs7CisJZWJtb24yOWspCisJCWJhc2ljX21hY2hpbmU9YTI5ay1hbWQKKwkJb3M9LWVibW9uCisJCTs7CisJZWx4c2kpCisJCWJhc2ljX21hY2hpbmU9ZWx4c2ktZWx4c2kKKwkJb3M9LWJzZAorCQk7OworCWVuY29yZSB8IHVtYXggfCBtbWF4KQorCQliYXNpY19tYWNoaW5lPW5zMzJrLWVuY29yZQorCQk7OworCWVzMTgwMCB8IE9TRTY4ayB8IG9zZTY4ayB8IG9zZSB8IE9TRSkKKwkJYmFzaWNfbWFjaGluZT1tNjhrLWVyaWNzc29uCisJCW9zPS1vc2UKKwkJOzsKKwlmeDI4MDApCisJCWJhc2ljX21hY2hpbmU9aTg2MC1hbGxpYW50CisJCTs7CisJZ2VuaXgpCisJCWJhc2ljX21hY2hpbmU9bnMzMmstbnMKKwkJOzsKKwlnbWljcm8pCisJCWJhc2ljX21hY2hpbmU9dHJvbi1nbWljcm8KKwkJb3M9LXN5c3YKKwkJOzsKKwlnbzMyKQorCQliYXNpY19tYWNoaW5lPWkzODYtcGMKKwkJb3M9LWdvMzIKKwkJOzsKKwloMzA1MHIqIHwgaGl1eCopCisJCWJhc2ljX21hY2hpbmU9aHBwYTEuMS1oaXRhY2hpCisJCW9zPS1oaXV4d2UyCisJCTs7CisJaDgzMDBobXMpCisJCWJhc2ljX21hY2hpbmU9aDgzMDAtaGl0YWNoaQorCQlvcz0taG1zCisJCTs7CisJaDgzMDB4cmF5KQorCQliYXNpY19tYWNoaW5lPWg4MzAwLWhpdGFjaGkKKwkJb3M9LXhyYXkKKwkJOzsKKwloODUwMGhtcykKKwkJYmFzaWNfbWFjaGluZT1oODUwMC1oaXRhY2hpCisJCW9zPS1obXMKKwkJOzsKKwloYXJyaXMpCisJCWJhc2ljX21hY2hpbmU9bTg4ay1oYXJyaXMKKwkJb3M9LXN5c3YzCisJCTs7CisJaHAzMDAtKikKKwkJYmFzaWNfbWFjaGluZT1tNjhrLWhwCisJCTs7CisJaHAzMDBic2QpCisJCWJhc2ljX21hY2hpbmU9bTY4ay1ocAorCQlvcz0tYnNkCisJCTs7CisJaHAzMDBocHV4KQorCQliYXNpY19tYWNoaW5lPW02OGstaHAKKwkJb3M9LWhwdXgKKwkJOzsKKwlocDNrOVswLTldWzAtOV0gfCBocDlbMC05XVswLTldKQorCQliYXNpY19tYWNoaW5lPWhwcGExLjAtaHAKKwkJOzsKKwlocDlrMlswLTldWzAtOV0gfCBocDlrMzFbMC05XSkKKwkJYmFzaWNfbWFjaGluZT1tNjgwMDAtaHAKKwkJOzsKKwlocDlrM1syLTldWzAtOV0pCisJCWJhc2ljX21hY2hpbmU9bTY4ay1ocAorCQk7OworCWhwOWs2WzAtOV1bMC05XSB8IGhwNlswLTldWzAtOV0pCisJCWJhc2ljX21hY2hpbmU9aHBwYTEuMC1ocAorCQk7OworCWhwOWs3WzAtNzldWzAtOV0gfCBocDdbMC03OV1bMC05XSkKKwkJYmFzaWNfbWFjaGluZT1ocHBhMS4xLWhwCisJCTs7CisJaHA5azc4WzAtOV0gfCBocDc4WzAtOV0pCisJCSMgRklYTUU6IHJlYWxseSBocHBhMi4wLWhwCisJCWJhc2ljX21hY2hpbmU9aHBwYTEuMS1ocAorCQk7OworCWhwOWs4WzY3XTEgfCBocDhbNjddMSB8IGhwOWs4MFsyNF0gfCBocDgwWzI0XSB8IGhwOWs4Wzc4XTkgfCBocDhbNzhdOSB8IGhwOWs4OTMgfCBocDg5MykKKwkJIyBGSVhNRTogcmVhbGx5IGhwcGEyLjAtaHAKKwkJYmFzaWNfbWFjaGluZT1ocHBhMS4xLWhwCisJCTs7CisJaHA5azhbMC05XVsxMzY3OV0gfCBocDhbMC05XVsxMzY3OV0pCisJCWJhc2ljX21hY2hpbmU9aHBwYTEuMS1ocAorCQk7OworCWhwOWs4WzAtOV1bMC05XSB8IGhwOFswLTldWzAtOV0pCisJCWJhc2ljX21hY2hpbmU9aHBwYTEuMC1ocAorCQk7OworCWhwcGEtbmV4dCkKKwkJb3M9LW5leHRzdGVwMworCQk7OworCWhwcGFvc2YpCisJCWJhc2ljX21hY2hpbmU9aHBwYTEuMS1ocAorCQlvcz0tb3NmCisJCTs7CisJaHBwcm8pCisJCWJhc2ljX21hY2hpbmU9aHBwYTEuMS1ocAorCQlvcz0tcHJvZWxmCisJCTs7CisJaTM3MC1pYm0qIHwgaWJtKikKKwkJYmFzaWNfbWFjaGluZT1pMzcwLWlibQorCQk7OworIyBJJ20gbm90IHN1cmUgd2hhdCAiU3lzdjMyIiBtZWFucy4gIFNob3VsZCB0aGlzIGJlIHN5c3YzLjI/CisJaSo4NnYzMikKKwkJYmFzaWNfbWFjaGluZT1gZWNobyAkMSB8IHNlZCAtZSAncy84Ni4qLzg2LXBjLydgCisJCW9zPS1zeXN2MzIKKwkJOzsKKwlpKjg2djQqKQorCQliYXNpY19tYWNoaW5lPWBlY2hvICQxIHwgc2VkIC1lICdzLzg2LiovODYtcGMvJ2AKKwkJb3M9LXN5c3Y0CisJCTs7CisJaSo4NnYpCisJCWJhc2ljX21hY2hpbmU9YGVjaG8gJDEgfCBzZWQgLWUgJ3MvODYuKi84Ni1wYy8nYAorCQlvcz0tc3lzdgorCQk7OworCWkqODZzb2wyKQorCQliYXNpY19tYWNoaW5lPWBlY2hvICQxIHwgc2VkIC1lICdzLzg2LiovODYtcGMvJ2AKKwkJb3M9LXNvbGFyaXMyCisJCTs7CisJaTM4Nm1hY2gpCisJCWJhc2ljX21hY2hpbmU9aTM4Ni1tYWNoCisJCW9zPS1tYWNoCisJCTs7CisJaTM4Ni12c3RhIHwgdnN0YSkKKwkJYmFzaWNfbWFjaGluZT1pMzg2LXVua25vd24KKwkJb3M9LXZzdGEKKwkJOzsKKwlpcmlzIHwgaXJpczRkKQorCQliYXNpY19tYWNoaW5lPW1pcHMtc2dpCisJCWNhc2UgJG9zIGluCisJCSAgICAtaXJpeCopCisJCQk7OworCQkgICAgKikKKwkJCW9zPS1pcml4NAorCQkJOzsKKwkJZXNhYworCQk7OworCWlzaTY4IHwgaXNpKQorCQliYXNpY19tYWNoaW5lPW02OGstaXNpCisJCW9zPS1zeXN2CisJCTs7CisJbTY4a25vbW11KQorCQliYXNpY19tYWNoaW5lPW02OGstdW5rbm93bgorCQlvcz0tbGludXgKKwkJOzsKKwltNjhrbm9tbXUtKikKKwkJYmFzaWNfbWFjaGluZT1tNjhrLWBlY2hvICRiYXNpY19tYWNoaW5lIHwgc2VkICdzL15bXi1dKi0vLydgCisJCW9zPS1saW51eAorCQk7OworCW04OGstb21yb24qKQorCQliYXNpY19tYWNoaW5lPW04OGstb21yb24KKwkJOzsKKwltYWdudW0gfCBtMzIzMCkKKwkJYmFzaWNfbWFjaGluZT1taXBzLW1pcHMKKwkJb3M9LXN5c3YKKwkJOzsKKwltZXJsaW4pCisJCWJhc2ljX21hY2hpbmU9bnMzMmstdXRlaworCQlvcz0tc3lzdgorCQk7OworCW1pY3JvYmxhemUpCisJCWJhc2ljX21hY2hpbmU9bWljcm9ibGF6ZS14aWxpbngKKwkJOzsKKwltaW5ndzMyKQorCQliYXNpY19tYWNoaW5lPWkzODYtcGMKKwkJb3M9LW1pbmd3MzIKKwkJOzsKKwltaW5ndzMyY2UpCisJCWJhc2ljX21hY2hpbmU9YXJtLXVua25vd24KKwkJb3M9LW1pbmd3MzJjZQorCQk7OworCW1pbmlmcmFtZSkKKwkJYmFzaWNfbWFjaGluZT1tNjgwMDAtY29udmVyZ2VudAorCQk7OworCSptaW50IHwgLW1pbnRbMC05XSogfCAqTWlOVCB8ICpNaU5UWzAtOV0qKQorCQliYXNpY19tYWNoaW5lPW02OGstYXRhcmkKKwkJb3M9LW1pbnQKKwkJOzsKKwltaXBzMyotKikKKwkJYmFzaWNfbWFjaGluZT1gZWNobyAkYmFzaWNfbWFjaGluZSB8IHNlZCAtZSAncy9taXBzMy9taXBzNjQvJ2AKKwkJOzsKKwltaXBzMyopCisJCWJhc2ljX21hY2hpbmU9YGVjaG8gJGJhc2ljX21hY2hpbmUgfCBzZWQgLWUgJ3MvbWlwczMvbWlwczY0LydgLXVua25vd24KKwkJOzsKKwltb25pdG9yKQorCQliYXNpY19tYWNoaW5lPW02OGstcm9tNjhrCisJCW9zPS1jb2ZmCisJCTs7CisJbW9ycGhvcykKKwkJYmFzaWNfbWFjaGluZT1wb3dlcnBjLXVua25vd24KKwkJb3M9LW1vcnBob3MKKwkJOzsKKwltc2RvcykKKwkJYmFzaWNfbWFjaGluZT1pMzg2LXBjCisJCW9zPS1tc2RvcworCQk7OworCW1zMS0qKQorCQliYXNpY19tYWNoaW5lPWBlY2hvICRiYXNpY19tYWNoaW5lIHwgc2VkIC1lICdzL21zMS0vbXQtLydgCisJCTs7CisJbXZzKQorCQliYXNpY19tYWNoaW5lPWkzNzAtaWJtCisJCW9zPS1tdnMKKwkJOzsKKwluY3IzMDAwKQorCQliYXNpY19tYWNoaW5lPWk0ODYtbmNyCisJCW9zPS1zeXN2NAorCQk7OworCW5ldGJzZDM4NikKKwkJYmFzaWNfbWFjaGluZT1pMzg2LXVua25vd24KKwkJb3M9LW5ldGJzZAorCQk7OworCW5ldHdpbmRlcikKKwkJYmFzaWNfbWFjaGluZT1hcm12NGwtcmViZWwKKwkJb3M9LWxpbnV4CisJCTs7CisJbmV3cyB8IG5ld3M3MDAgfCBuZXdzODAwIHwgbmV3czkwMCkKKwkJYmFzaWNfbWFjaGluZT1tNjhrLXNvbnkKKwkJb3M9LW5ld3NvcworCQk7OworCW5ld3MxMDAwKQorCQliYXNpY19tYWNoaW5lPW02ODAzMC1zb255CisJCW9zPS1uZXdzb3MKKwkJOzsKKwluZXdzLTM2MDAgfCByaXNjLW5ld3MpCisJCWJhc2ljX21hY2hpbmU9bWlwcy1zb255CisJCW9zPS1uZXdzb3MKKwkJOzsKKwluZWN2NzApCisJCWJhc2ljX21hY2hpbmU9djcwLW5lYworCQlvcz0tc3lzdgorCQk7OworCW5leHQgfCBtKi1uZXh0ICkKKwkJYmFzaWNfbWFjaGluZT1tNjhrLW5leHQKKwkJY2FzZSAkb3MgaW4KKwkJICAgIC1uZXh0c3RlcCogKQorCQkJOzsKKwkJICAgIC1uczIqKQorCQkgICAgICBvcz0tbmV4dHN0ZXAyCisJCQk7OworCQkgICAgKikKKwkJICAgICAgb3M9LW5leHRzdGVwMworCQkJOzsKKwkJZXNhYworCQk7OworCW5oMzAwMCkKKwkJYmFzaWNfbWFjaGluZT1tNjhrLWhhcnJpcworCQlvcz0tY3h1eAorCQk7OworCW5oWzQ1XTAwMCkKKwkJYmFzaWNfbWFjaGluZT1tODhrLWhhcnJpcworCQlvcz0tY3h1eAorCQk7OworCW5pbmR5OTYwKQorCQliYXNpY19tYWNoaW5lPWk5NjAtaW50ZWwKKwkJb3M9LW5pbmR5CisJCTs7CisJbW9uOTYwKQorCQliYXNpY19tYWNoaW5lPWk5NjAtaW50ZWwKKwkJb3M9LW1vbjk2MAorCQk7OworCW5vbnN0b3B1eCkKKwkJYmFzaWNfbWFjaGluZT1taXBzLWNvbXBhcQorCQlvcz0tbm9uc3RvcHV4CisJCTs7CisJbnAxKQorCQliYXNpY19tYWNoaW5lPW5wMS1nb3VsZAorCQk7OworCW5lby10YW5kZW0pCisJCWJhc2ljX21hY2hpbmU9bmVvLXRhbmRlbQorCQk7OworCW5zZS10YW5kZW0pCisJCWJhc2ljX21hY2hpbmU9bnNlLXRhbmRlbQorCQk7OworCW5zci10YW5kZW0pCisJCWJhc2ljX21hY2hpbmU9bnNyLXRhbmRlbQorCQk7OworCW9wNTBuLSogfCBvcDYwYy0qKQorCQliYXNpY19tYWNoaW5lPWhwcGExLjEtb2tpCisJCW9zPS1wcm9lbGYKKwkJOzsKKwlvcGVucmlzYyB8IG9wZW5yaXNjLSopCisJCWJhc2ljX21hY2hpbmU9b3IzMi11bmtub3duCisJCTs7CisJb3M0MDApCisJCWJhc2ljX21hY2hpbmU9cG93ZXJwYy1pYm0KKwkJb3M9LW9zNDAwCisJCTs7CisJT1NFNjgwMDAgfCBvc2U2ODAwMCkKKwkJYmFzaWNfbWFjaGluZT1tNjgwMDAtZXJpY3Nzb24KKwkJb3M9LW9zZQorCQk7OworCW9zNjhrKQorCQliYXNpY19tYWNoaW5lPW02OGstbm9uZQorCQlvcz0tb3M2OGsKKwkJOzsKKwlwYS1oaXRhY2hpKQorCQliYXNpY19tYWNoaW5lPWhwcGExLjEtaGl0YWNoaQorCQlvcz0taGl1eHdlMgorCQk7OworCXBhcmFnb24pCisJCWJhc2ljX21hY2hpbmU9aTg2MC1pbnRlbAorCQlvcz0tb3NmCisJCTs7CisJcGFyaXNjKQorCQliYXNpY19tYWNoaW5lPWhwcGEtdW5rbm93bgorCQlvcz0tbGludXgKKwkJOzsKKwlwYXJpc2MtKikKKwkJYmFzaWNfbWFjaGluZT1ocHBhLWBlY2hvICRiYXNpY19tYWNoaW5lIHwgc2VkICdzL15bXi1dKi0vLydgCisJCW9zPS1saW51eAorCQk7OworCXBiZCkKKwkJYmFzaWNfbWFjaGluZT1zcGFyYy10dGkKKwkJOzsKKwlwYmIpCisJCWJhc2ljX21hY2hpbmU9bTY4ay10dGkKKwkJOzsKKwlwYzUzMiB8IHBjNTMyLSopCisJCWJhc2ljX21hY2hpbmU9bnMzMmstcGM1MzIKKwkJOzsKKwlwYzk4KQorCQliYXNpY19tYWNoaW5lPWkzODYtcGMKKwkJOzsKKwlwYzk4LSopCisJCWJhc2ljX21hY2hpbmU9aTM4Ni1gZWNobyAkYmFzaWNfbWFjaGluZSB8IHNlZCAncy9eW14tXSotLy8nYAorCQk7OworCXBlbnRpdW0gfCBwNSB8IGs1IHwgazYgfCBuZXhnZW4gfCB2aWFjMykKKwkJYmFzaWNfbWFjaGluZT1pNTg2LXBjCisJCTs7CisJcGVudGl1bXBybyB8IHA2IHwgNng4NiB8IGF0aGxvbiB8IGF0aGxvbl8qKQorCQliYXNpY19tYWNoaW5lPWk2ODYtcGMKKwkJOzsKKwlwZW50aXVtaWkgfCBwZW50aXVtMiB8IHBlbnRpdW1paWkgfCBwZW50aXVtMykKKwkJYmFzaWNfbWFjaGluZT1pNjg2LXBjCisJCTs7CisJcGVudGl1bTQpCisJCWJhc2ljX21hY2hpbmU9aTc4Ni1wYworCQk7OworCXBlbnRpdW0tKiB8IHA1LSogfCBrNS0qIHwgazYtKiB8IG5leGdlbi0qIHwgdmlhYzMtKikKKwkJYmFzaWNfbWFjaGluZT1pNTg2LWBlY2hvICRiYXNpY19tYWNoaW5lIHwgc2VkICdzL15bXi1dKi0vLydgCisJCTs7CisJcGVudGl1bXByby0qIHwgcDYtKiB8IDZ4ODYtKiB8IGF0aGxvbi0qKQorCQliYXNpY19tYWNoaW5lPWk2ODYtYGVjaG8gJGJhc2ljX21hY2hpbmUgfCBzZWQgJ3MvXlteLV0qLS8vJ2AKKwkJOzsKKwlwZW50aXVtaWktKiB8IHBlbnRpdW0yLSogfCBwZW50aXVtaWlpLSogfCBwZW50aXVtMy0qKQorCQliYXNpY19tYWNoaW5lPWk2ODYtYGVjaG8gJGJhc2ljX21hY2hpbmUgfCBzZWQgJ3MvXlteLV0qLS8vJ2AKKwkJOzsKKwlwZW50aXVtNC0qKQorCQliYXNpY19tYWNoaW5lPWk3ODYtYGVjaG8gJGJhc2ljX21hY2hpbmUgfCBzZWQgJ3MvXlteLV0qLS8vJ2AKKwkJOzsKKwlwbikKKwkJYmFzaWNfbWFjaGluZT1wbi1nb3VsZAorCQk7OworCXBvd2VyKQliYXNpY19tYWNoaW5lPXBvd2VyLWlibQorCQk7OworCXBwYyB8IHBwY2JlKQliYXNpY19tYWNoaW5lPXBvd2VycGMtdW5rbm93bgorCQk7OworCXBwYy0qIHwgcHBjYmUtKikKKwkJYmFzaWNfbWFjaGluZT1wb3dlcnBjLWBlY2hvICRiYXNpY19tYWNoaW5lIHwgc2VkICdzL15bXi1dKi0vLydgCisJCTs7CisJcHBjbGUgfCBwb3dlcnBjbGl0dGxlIHwgcHBjLWxlIHwgcG93ZXJwYy1saXR0bGUpCisJCWJhc2ljX21hY2hpbmU9cG93ZXJwY2xlLXVua25vd24KKwkJOzsKKwlwcGNsZS0qIHwgcG93ZXJwY2xpdHRsZS0qKQorCQliYXNpY19tYWNoaW5lPXBvd2VycGNsZS1gZWNobyAkYmFzaWNfbWFjaGluZSB8IHNlZCAncy9eW14tXSotLy8nYAorCQk7OworCXBwYzY0KQliYXNpY19tYWNoaW5lPXBvd2VycGM2NC11bmtub3duCisJCTs7CisJcHBjNjQtKikgYmFzaWNfbWFjaGluZT1wb3dlcnBjNjQtYGVjaG8gJGJhc2ljX21hY2hpbmUgfCBzZWQgJ3MvXlteLV0qLS8vJ2AKKwkJOzsKKwlwcGM2NGxlIHwgcG93ZXJwYzY0bGl0dGxlIHwgcHBjNjQtbGUgfCBwb3dlcnBjNjQtbGl0dGxlKQorCQliYXNpY19tYWNoaW5lPXBvd2VycGM2NGxlLXVua25vd24KKwkJOzsKKwlwcGM2NGxlLSogfCBwb3dlcnBjNjRsaXR0bGUtKikKKwkJYmFzaWNfbWFjaGluZT1wb3dlcnBjNjRsZS1gZWNobyAkYmFzaWNfbWFjaGluZSB8IHNlZCAncy9eW14tXSotLy8nYAorCQk7OworCXBzMikKKwkJYmFzaWNfbWFjaGluZT1pMzg2LWlibQorCQk7OworCXB3MzIpCisJCWJhc2ljX21hY2hpbmU9aTU4Ni11bmtub3duCisJCW9zPS1wdzMyCisJCTs7CisJcmRvcykKKwkJYmFzaWNfbWFjaGluZT1pMzg2LXBjCisJCW9zPS1yZG9zCisJCTs7CisJcm9tNjhrKQorCQliYXNpY19tYWNoaW5lPW02OGstcm9tNjhrCisJCW9zPS1jb2ZmCisJCTs7CisJcm1bNDZdMDApCisJCWJhc2ljX21hY2hpbmU9bWlwcy1zaWVtZW5zCisJCTs7CisJcnRwYyB8IHJ0cGMtKikKKwkJYmFzaWNfbWFjaGluZT1yb21wLWlibQorCQk7OworCXMzOTAgfCBzMzkwLSopCisJCWJhc2ljX21hY2hpbmU9czM5MC1pYm0KKwkJOzsKKwlzMzkweCB8IHMzOTB4LSopCisJCWJhc2ljX21hY2hpbmU9czM5MHgtaWJtCisJCTs7CisJc2EyOTIwMCkKKwkJYmFzaWNfbWFjaGluZT1hMjlrLWFtZAorCQlvcz0tdWRpCisJCTs7CisJc2IxKQorCQliYXNpY19tYWNoaW5lPW1pcHNpc2E2NHNiMS11bmtub3duCisJCTs7CisJc2IxZWwpCisJCWJhc2ljX21hY2hpbmU9bWlwc2lzYTY0c2IxZWwtdW5rbm93bgorCQk7OworCXNkZSkKKwkJYmFzaWNfbWFjaGluZT1taXBzaXNhMzItc2RlCisJCW9zPS1lbGYKKwkJOzsKKwlzZWkpCisJCWJhc2ljX21hY2hpbmU9bWlwcy1zZWkKKwkJb3M9LXNlaXV4CisJCTs7CisJc2VxdWVudCkKKwkJYmFzaWNfbWFjaGluZT1pMzg2LXNlcXVlbnQKKwkJOzsKKwlzaCkKKwkJYmFzaWNfbWFjaGluZT1zaC1oaXRhY2hpCisJCW9zPS1obXMKKwkJOzsKKwlzaDVlbCkKKwkJYmFzaWNfbWFjaGluZT1zaDVsZS11bmtub3duCisJCTs7CisJc2g2NCkKKwkJYmFzaWNfbWFjaGluZT1zaDY0LXVua25vd24KKwkJOzsKKwlzcGFyY2xpdGUtd3JzIHwgc2ltc28td3JzKQorCQliYXNpY19tYWNoaW5lPXNwYXJjbGl0ZS13cnMKKwkJb3M9LXZ4d29ya3MKKwkJOzsKKwlzcHM3KQorCQliYXNpY19tYWNoaW5lPW02OGstYnVsbAorCQlvcz0tc3lzdjIKKwkJOzsKKwlzcHVyKQorCQliYXNpY19tYWNoaW5lPXNwdXItdW5rbm93bgorCQk7OworCXN0MjAwMCkKKwkJYmFzaWNfbWFjaGluZT1tNjhrLXRhbmRlbQorCQk7OworCXN0cmF0dXMpCisJCWJhc2ljX21hY2hpbmU9aTg2MC1zdHJhdHVzCisJCW9zPS1zeXN2NAorCQk7OworCXN0cm9uZ2FybS0qIHwgdGh1bWItKikKKwkJYmFzaWNfbWFjaGluZT1hcm0tYGVjaG8gJGJhc2ljX21hY2hpbmUgfCBzZWQgJ3MvXlteLV0qLS8vJ2AKKwkJOzsKKwlzdW4yKQorCQliYXNpY19tYWNoaW5lPW02ODAwMC1zdW4KKwkJOzsKKwlzdW4yb3MzKQorCQliYXNpY19tYWNoaW5lPW02ODAwMC1zdW4KKwkJb3M9LXN1bm9zMworCQk7OworCXN1bjJvczQpCisJCWJhc2ljX21hY2hpbmU9bTY4MDAwLXN1bgorCQlvcz0tc3Vub3M0CisJCTs7CisJc3VuM29zMykKKwkJYmFzaWNfbWFjaGluZT1tNjhrLXN1bgorCQlvcz0tc3Vub3MzCisJCTs7CisJc3VuM29zNCkKKwkJYmFzaWNfbWFjaGluZT1tNjhrLXN1bgorCQlvcz0tc3Vub3M0CisJCTs7CisJc3VuNG9zMykKKwkJYmFzaWNfbWFjaGluZT1zcGFyYy1zdW4KKwkJb3M9LXN1bm9zMworCQk7OworCXN1bjRvczQpCisJCWJhc2ljX21hY2hpbmU9c3BhcmMtc3VuCisJCW9zPS1zdW5vczQKKwkJOzsKKwlzdW40c29sMikKKwkJYmFzaWNfbWFjaGluZT1zcGFyYy1zdW4KKwkJb3M9LXNvbGFyaXMyCisJCTs7CisJc3VuMyB8IHN1bjMtKikKKwkJYmFzaWNfbWFjaGluZT1tNjhrLXN1bgorCQk7OworCXN1bjQpCisJCWJhc2ljX21hY2hpbmU9c3BhcmMtc3VuCisJCTs7CisJc3VuMzg2IHwgc3VuMzg2aSB8IHJvYWRydW5uZXIpCisJCWJhc2ljX21hY2hpbmU9aTM4Ni1zdW4KKwkJOzsKKwlzdjEpCisJCWJhc2ljX21hY2hpbmU9c3YxLWNyYXkKKwkJb3M9LXVuaWNvcworCQk7OworCXN5bW1ldHJ5KQorCQliYXNpY19tYWNoaW5lPWkzODYtc2VxdWVudAorCQlvcz0tZHluaXgKKwkJOzsKKwl0M2UpCisJCWJhc2ljX21hY2hpbmU9YWxwaGFldjUtY3JheQorCQlvcz0tdW5pY29zCisJCTs7CisJdDkwKQorCQliYXNpY19tYWNoaW5lPXQ5MC1jcmF5CisJCW9zPS11bmljb3MKKwkJOzsKKwkjIFRoaXMgbXVzdCBiZSBtYXRjaGVkIGJlZm9yZSB0aWxlKi4KKwl0aWxlZ3gqKQorCQliYXNpY19tYWNoaW5lPXRpbGVneC11bmtub3duCisJCW9zPS1saW51eC1nbnUKKwkJOzsKKwl0aWxlKikKKwkJYmFzaWNfbWFjaGluZT10aWxlLXVua25vd24KKwkJb3M9LWxpbnV4LWdudQorCQk7OworCXR4MzkpCisJCWJhc2ljX21hY2hpbmU9bWlwc3R4MzktdW5rbm93bgorCQk7OworCXR4MzllbCkKKwkJYmFzaWNfbWFjaGluZT1taXBzdHgzOWVsLXVua25vd24KKwkJOzsKKwl0b2FkMSkKKwkJYmFzaWNfbWFjaGluZT1wZHAxMC14a2wKKwkJb3M9LXRvcHMyMAorCQk7OworCXRvd2VyIHwgdG93ZXItMzIpCisJCWJhc2ljX21hY2hpbmU9bTY4ay1uY3IKKwkJOzsKKwl0cGYpCisJCWJhc2ljX21hY2hpbmU9czM5MHgtaWJtCisJCW9zPS10cGYKKwkJOzsKKwl1ZGkyOWspCisJCWJhc2ljX21hY2hpbmU9YTI5ay1hbWQKKwkJb3M9LXVkaQorCQk7OworCXVsdHJhMykKKwkJYmFzaWNfbWFjaGluZT1hMjlrLW55dQorCQlvcz0tc3ltMQorCQk7OworCXY4MTAgfCBuZWN2ODEwKQorCQliYXNpY19tYWNoaW5lPXY4MTAtbmVjCisJCW9zPS1ub25lCisJCTs7CisJdmF4dikKKwkJYmFzaWNfbWFjaGluZT12YXgtZGVjCisJCW9zPS1zeXN2CisJCTs7CisJdm1zKQorCQliYXNpY19tYWNoaW5lPXZheC1kZWMKKwkJb3M9LXZtcworCQk7OworCXZwcCp8dnh8dngtKikKKwkJYmFzaWNfbWFjaGluZT1mMzAxLWZ1aml0c3UKKwkJOzsKKwl2eHdvcmtzOTYwKQorCQliYXNpY19tYWNoaW5lPWk5NjAtd3JzCisJCW9zPS12eHdvcmtzCisJCTs7CisJdnh3b3JrczY4KQorCQliYXNpY19tYWNoaW5lPW02OGstd3JzCisJCW9zPS12eHdvcmtzCisJCTs7CisJdnh3b3JrczI5aykKKwkJYmFzaWNfbWFjaGluZT1hMjlrLXdycworCQlvcz0tdnh3b3JrcworCQk7OworCXc2NSopCisJCWJhc2ljX21hY2hpbmU9dzY1LXdkYworCQlvcz0tbm9uZQorCQk7OworCXc4OWstKikKKwkJYmFzaWNfbWFjaGluZT1ocHBhMS4xLXdpbmJvbmQKKwkJb3M9LXByb2VsZgorCQk7OworCXhib3gpCisJCWJhc2ljX21hY2hpbmU9aTY4Ni1wYworCQlvcz0tbWluZ3czMgorCQk7OworCXhwcyB8IHhwczEwMCkKKwkJYmFzaWNfbWFjaGluZT14cHMxMDAtaG9uZXl3ZWxsCisJCTs7CisJeHNjYWxlLSogfCB4c2NhbGVlW2JsXS0qKQorCQliYXNpY19tYWNoaW5lPWBlY2hvICRiYXNpY19tYWNoaW5lIHwgc2VkICdzL154c2NhbGUvYXJtLydgCisJCTs7CisJeW1wKQorCQliYXNpY19tYWNoaW5lPXltcC1jcmF5CisJCW9zPS11bmljb3MKKwkJOzsKKwl6OGstKi1jb2ZmKQorCQliYXNpY19tYWNoaW5lPXo4ay11bmtub3duCisJCW9zPS1zaW0KKwkJOzsKKwl6ODAtKi1jb2ZmKQorCQliYXNpY19tYWNoaW5lPXo4MC11bmtub3duCisJCW9zPS1zaW0KKwkJOzsKKwlub25lKQorCQliYXNpY19tYWNoaW5lPW5vbmUtbm9uZQorCQlvcz0tbm9uZQorCQk7OworCisjIEhlcmUgd2UgaGFuZGxlIHRoZSBkZWZhdWx0IG1hbnVmYWN0dXJlciBvZiBjZXJ0YWluIENQVSB0eXBlcy4gIEl0IGlzIGluCisjIHNvbWUgY2FzZXMgdGhlIG9ubHkgbWFudWZhY3R1cmVyLCBpbiBvdGhlcnMsIGl0IGlzIHRoZSBtb3N0IHBvcHVsYXIuCisJdzg5aykKKwkJYmFzaWNfbWFjaGluZT1ocHBhMS4xLXdpbmJvbmQKKwkJOzsKKwlvcDUwbikKKwkJYmFzaWNfbWFjaGluZT1ocHBhMS4xLW9raQorCQk7OworCW9wNjBjKQorCQliYXNpY19tYWNoaW5lPWhwcGExLjEtb2tpCisJCTs7CisJcm9tcCkKKwkJYmFzaWNfbWFjaGluZT1yb21wLWlibQorCQk7OworCW1taXgpCisJCWJhc2ljX21hY2hpbmU9bW1peC1rbnV0aAorCQk7OworCXJzNjAwMCkKKwkJYmFzaWNfbWFjaGluZT1yczYwMDAtaWJtCisJCTs7CisJdmF4KQorCQliYXNpY19tYWNoaW5lPXZheC1kZWMKKwkJOzsKKwlwZHAxMCkKKwkJIyB0aGVyZSBhcmUgbWFueSBjbG9uZXMsIHNvIERFQyBpcyBub3QgYSBzYWZlIGJldAorCQliYXNpY19tYWNoaW5lPXBkcDEwLXVua25vd24KKwkJOzsKKwlwZHAxMSkKKwkJYmFzaWNfbWFjaGluZT1wZHAxMS1kZWMKKwkJOzsKKwl3ZTMyaykKKwkJYmFzaWNfbWFjaGluZT13ZTMyay1hdHQKKwkJOzsKKwlzaFsxMjM0XSB8IHNoWzI0XWEgfCBzaFsyNF1hZWIgfCBzaFszNF1lYiB8IHNoWzEyMzRdbGUgfCBzaFsyM11lbGUpCisJCWJhc2ljX21hY2hpbmU9c2gtdW5rbm93bgorCQk7OworCXNwYXJjIHwgc3BhcmN2OCB8IHNwYXJjdjkgfCBzcGFyY3Y5YiB8IHNwYXJjdjl2KQorCQliYXNpY19tYWNoaW5lPXNwYXJjLXN1bgorCQk7OworCWN5ZHJhKQorCQliYXNpY19tYWNoaW5lPWN5ZHJhLWN5ZHJvbWUKKwkJOzsKKwlvcmlvbikKKwkJYmFzaWNfbWFjaGluZT1vcmlvbi1oaWdobGV2ZWwKKwkJOzsKKwlvcmlvbjEwNSkKKwkJYmFzaWNfbWFjaGluZT1jbGlwcGVyLWhpZ2hsZXZlbAorCQk7OworCW1hYyB8IG1wdyB8IG1hYy1tcHcpCisJCWJhc2ljX21hY2hpbmU9bTY4ay1hcHBsZQorCQk7OworCXBtYWMgfCBwbWFjLW1wdykKKwkJYmFzaWNfbWFjaGluZT1wb3dlcnBjLWFwcGxlCisJCTs7CisJKi11bmtub3duKQorCQkjIE1ha2Ugc3VyZSB0byBtYXRjaCBhbiBhbHJlYWR5LWNhbm9uaWNhbGl6ZWQgbWFjaGluZSBuYW1lLgorCQk7OworCSopCisJCWVjaG8gSW52YWxpZCBjb25maWd1cmF0aW9uIFxgJDFcJzogbWFjaGluZSBcYCRiYXNpY19tYWNoaW5lXCcgbm90IHJlY29nbml6ZWQgMT4mMgorCQlleGl0IDEKKwkJOzsKK2VzYWMKKworIyBIZXJlIHdlIGNhbm9uaWNhbGl6ZSBjZXJ0YWluIGFsaWFzZXMgZm9yIG1hbnVmYWN0dXJlcnMuCitjYXNlICRiYXNpY19tYWNoaW5lIGluCisJKi1kaWdpdGFsKikKKwkJYmFzaWNfbWFjaGluZT1gZWNobyAkYmFzaWNfbWFjaGluZSB8IHNlZCAncy9kaWdpdGFsLiovZGVjLydgCisJCTs7CisJKi1jb21tb2RvcmUqKQorCQliYXNpY19tYWNoaW5lPWBlY2hvICRiYXNpY19tYWNoaW5lIHwgc2VkICdzL2NvbW1vZG9yZS4qL2NibS8nYAorCQk7OworCSopCisJCTs7Citlc2FjCisKKyMgRGVjb2RlIG1hbnVmYWN0dXJlci1zcGVjaWZpYyBhbGlhc2VzIGZvciBjZXJ0YWluIG9wZXJhdGluZyBzeXN0ZW1zLgorCitpZiBbIHgiJG9zIiAhPSB4IiIgXQordGhlbgorY2FzZSAkb3MgaW4KKwkjIEZpcnN0IG1hdGNoIHNvbWUgc3lzdGVtIHR5cGUgYWxpYXNlcworCSMgdGhhdCBtaWdodCBnZXQgY29uZnVzZWQgd2l0aCB2YWxpZCBzeXN0ZW0gdHlwZXMuCisJIyAtc29sYXJpcyogaXMgYSBiYXNpYyBzeXN0ZW0gdHlwZSwgd2l0aCB0aGlzIG9uZSBleGNlcHRpb24uCisJLWF1cm9yYXV4KQorCQlvcz0tYXVyb3JhdXgKKwkJOzsKKwktc29sYXJpczEgfCAtc29sYXJpczEuKikKKwkJb3M9YGVjaG8gJG9zIHwgc2VkIC1lICdzfHNvbGFyaXMxfHN1bm9zNHwnYAorCQk7OworCS1zb2xhcmlzKQorCQlvcz0tc29sYXJpczIKKwkJOzsKKwktc3ZyNCopCisJCW9zPS1zeXN2NAorCQk7OworCS11bml4d2FyZSopCisJCW9zPS1zeXN2NC4ydXcKKwkJOzsKKwktZ251L2xpbnV4KikKKwkJb3M9YGVjaG8gJG9zIHwgc2VkIC1lICdzfGdudS9saW51eHxsaW51eC1nbnV8J2AKKwkJOzsKKwkjIEZpcnN0IGFjY2VwdCB0aGUgYmFzaWMgc3lzdGVtIHR5cGVzLgorCSMgVGhlIHBvcnRhYmxlIHN5c3RlbXMgY29tZXMgZmlyc3QuCisJIyBFYWNoIGFsdGVybmF0aXZlIE1VU1QgRU5EIElOIEEgKiwgdG8gbWF0Y2ggYSB2ZXJzaW9uIG51bWJlci4KKwkjIC1zeXN2KiBpcyBub3QgaGVyZSBiZWNhdXNlIGl0IGNvbWVzIGxhdGVyLCBhZnRlciBzeXN2cjQuCisJLWdudSogfCAtYnNkKiB8IC1tYWNoKiB8IC1taW5peCogfCAtZ2VuaXgqIHwgLXVsdHJpeCogfCAtaXJpeCogXAorCSAgICAgIHwgLSp2bXMqIHwgLXNjbyogfCAtZXNpeCogfCAtaXNjKiB8IC1haXgqIHwgLWNuayogfCAtc3Vub3MgfCAtc3Vub3NbMzRdKlwKKwkgICAgICB8IC1ocHV4KiB8IC11bm9zKiB8IC1vc2YqIHwgLWx1bmEqIHwgLWRndXgqIHwgLWF1cm9yYXV4KiB8IC1zb2xhcmlzKiBcCisJICAgICAgfCAtc3ltKiB8IC1rb3BlbnNvbGFyaXMqIFwKKwkgICAgICB8IC1hbWlnYW9zKiB8IC1hbWlnYWRvcyogfCAtbXNkb3MqIHwgLW5ld3NvcyogfCAtdW5pY29zKiB8IC1hb2YqIFwKKwkgICAgICB8IC1hb3MqIHwgLWFyb3MqIFwKKwkgICAgICB8IC1uaW5keSogfCAtdnhzaW0qIHwgLXZ4d29ya3MqIHwgLWVibW9uKiB8IC1obXMqIHwgLW12cyogXAorCSAgICAgIHwgLWNsaXgqIHwgLXJpc2NvcyogfCAtdW5pcGx1cyogfCAtaXJpcyogfCAtcnR1KiB8IC14ZW5peCogXAorCSAgICAgIHwgLWhpdXgqIHwgLTM4NmJzZCogfCAta25ldGJzZCogfCAtbWlyYnNkKiB8IC1uZXRic2QqIFwKKwkgICAgICB8IC1vcGVuYnNkKiB8IC1zb2xpZGJzZCogXAorCSAgICAgIHwgLWVra29ic2QqIHwgLWtmcmVlYnNkKiB8IC1mcmVlYnNkKiB8IC1yaXNjaXgqIHwgLWx5bnhvcyogXAorCSAgICAgIHwgLWJvc3gqIHwgLW5leHRzdGVwKiB8IC1jeHV4KiB8IC1hb3V0KiB8IC1lbGYqIHwgLW9hYmkqIFwKKwkgICAgICB8IC1wdHgqIHwgLWNvZmYqIHwgLWVjb2ZmKiB8IC13aW5udCogfCAtZG9tYWluKiB8IC12c3RhKiBcCisJICAgICAgfCAtdWRpKiB8IC1lYWJpKiB8IC1saXRlcyogfCAtaWVlZSogfCAtZ28zMiogfCAtYXV4KiBcCisJICAgICAgfCAtY2hvcnVzb3MqIHwgLWNob3J1c3JkYiogfCAtY2VnY2MqIFwKKwkgICAgICB8IC1jeWd3aW4qIHwgLXBlKiB8IC1wc29zKiB8IC1tb3NzKiB8IC1wcm9lbGYqIHwgLXJ0ZW1zKiBcCisJICAgICAgfCAtbWluZ3czMiogfCAtbGludXgtZ251KiB8IC1saW51eC1hbmRyb2lkKiBcCisJICAgICAgfCAtbGludXgtbmV3bGliKiB8IC1saW51eC11Y2xpYmMqIFwKKwkgICAgICB8IC11eHB2KiB8IC1iZW9zKiB8IC1tcGVpeCogfCAtdWRrKiBcCisJICAgICAgfCAtaW50ZXJpeCogfCAtdXdpbiogfCAtbWtzKiB8IC1yaGFwc29keSogfCAtZGFyd2luKiB8IC1vcGVuZWQqIFwKKwkgICAgICB8IC1vcGVuc3RlcCogfCAtb3NraXQqIHwgLWNvbml4KiB8IC1wdzMyKiB8IC1ub25zdG9wdXgqIFwKKwkgICAgICB8IC1zdG9ybS1jaGFvcyogfCAtdG9wczEwKiB8IC10ZW5leCogfCAtdG9wczIwKiB8IC1pdHMqIFwKKwkgICAgICB8IC1vczIqIHwgLXZvcyogfCAtcGFsbW9zKiB8IC11Y2xpbnV4KiB8IC1udWNsZXVzKiBcCisJICAgICAgfCAtbW9ycGhvcyogfCAtc3VwZXJ1eCogfCAtcnRtayogfCAtcnRtay1ub3ZhKiB8IC13aW5kaXNzKiBcCisJICAgICAgfCAtcG93ZXJtYXgqIHwgLWRuaXgqIHwgLW54NiB8IC1ueDcgfCAtc2VpKiB8IC1kcmFnb25mbHkqIFwKKwkgICAgICB8IC1za3lvcyogfCAtaGFpa3UqIHwgLXJkb3MqIHwgLXRvcHBlcnMqIHwgLWRyb3BzKiB8IC1lcyopCisJIyBSZW1lbWJlciwgZWFjaCBhbHRlcm5hdGl2ZSBNVVNUIEVORCBJTiAqLCB0byBtYXRjaCBhIHZlcnNpb24gbnVtYmVyLgorCQk7OworCS1xbngqKQorCQljYXNlICRiYXNpY19tYWNoaW5lIGluCisJCSAgICB4ODYtKiB8IGkqODYtKikKKwkJCTs7CisJCSAgICAqKQorCQkJb3M9LW50byRvcworCQkJOzsKKwkJZXNhYworCQk7OworCS1udG8tcW54KikKKwkJOzsKKwktbnRvKikKKwkJb3M9YGVjaG8gJG9zIHwgc2VkIC1lICdzfG50b3xudG8tcW54fCdgCisJCTs7CisJLXNpbSB8IC1lczE4MDAqIHwgLWhtcyogfCAteHJheSB8IC1vczY4ayogfCAtbm9uZSogfCAtdjg4ciogXAorCSAgICAgIHwgLXdpbmRvd3MqIHwgLW9zeCB8IC1hYnVnIHwgLW5ldHdhcmUqIHwgLW9zOSogfCAtYmVvcyogfCAtaGFpa3UqIFwKKwkgICAgICB8IC1tYWNvcyogfCAtbXB3KiB8IC1tYWdpYyogfCAtbW1peHdhcmUqIHwgLW1vbjk2MCogfCAtbG5ld3MqKQorCQk7OworCS1tYWMqKQorCQlvcz1gZWNobyAkb3MgfCBzZWQgLWUgJ3N8bWFjfG1hY29zfCdgCisJCTs7CisJLWxpbnV4LWRpZXRsaWJjKQorCQlvcz0tbGludXgtZGlldGxpYmMKKwkJOzsKKwktbGludXgqKQorCQlvcz1gZWNobyAkb3MgfCBzZWQgLWUgJ3N8bGludXh8bGludXgtZ251fCdgCisJCTs7CisJLXN1bm9zNSopCisJCW9zPWBlY2hvICRvcyB8IHNlZCAtZSAnc3xzdW5vczV8c29sYXJpczJ8J2AKKwkJOzsKKwktc3Vub3M2KikKKwkJb3M9YGVjaG8gJG9zIHwgc2VkIC1lICdzfHN1bm9zNnxzb2xhcmlzM3wnYAorCQk7OworCS1vcGVuZWQqKQorCQlvcz0tb3BlbmVkaXRpb24KKwkJOzsKKwktb3M0MDAqKQorCQlvcz0tb3M0MDAKKwkJOzsKKwktd2luY2UqKQorCQlvcz0td2luY2UKKwkJOzsKKwktb3Nmcm9zZSopCisJCW9zPS1vc2Zyb3NlCisJCTs7CisJLW9zZiopCisJCW9zPS1vc2YKKwkJOzsKKwktdXRlayopCisJCW9zPS1ic2QKKwkJOzsKKwktZHluaXgqKQorCQlvcz0tYnNkCisJCTs7CisJLWFjaXMqKQorCQlvcz0tYW9zCisJCTs7CisJLWF0aGVvcyopCisJCW9zPS1hdGhlb3MKKwkJOzsKKwktc3lsbGFibGUqKQorCQlvcz0tc3lsbGFibGUKKwkJOzsKKwktMzg2YnNkKQorCQlvcz0tYnNkCisJCTs7CisJLWN0aXgqIHwgLXV0cyopCisJCW9zPS1zeXN2CisJCTs7CisJLW5vdmEqKQorCQlvcz0tcnRtay1ub3ZhCisJCTs7CisJLW5zMiApCisJCW9zPS1uZXh0c3RlcDIKKwkJOzsKKwktbnNrKikKKwkJb3M9LW5zaworCQk7OworCSMgUHJlc2VydmUgdGhlIHZlcnNpb24gbnVtYmVyIG9mIHNpbml4NS4KKwktc2luaXg1LiopCisJCW9zPWBlY2hvICRvcyB8IHNlZCAtZSAnc3xzaW5peHxzeXN2fCdgCisJCTs7CisJLXNpbml4KikKKwkJb3M9LXN5c3Y0CisJCTs7CisJLXRwZiopCisJCW9zPS10cGYKKwkJOzsKKwktdHJpdG9uKikKKwkJb3M9LXN5c3YzCisJCTs7CisJLW9zcyopCisJCW9zPS1zeXN2MworCQk7OworCS1zdnI0KQorCQlvcz0tc3lzdjQKKwkJOzsKKwktc3ZyMykKKwkJb3M9LXN5c3YzCisJCTs7CisJLXN5c3ZyNCkKKwkJb3M9LXN5c3Y0CisJCTs7CisJIyBUaGlzIG11c3QgY29tZSBhZnRlciAtc3lzdnI0LgorCS1zeXN2KikKKwkJOzsKKwktb3NlKikKKwkJb3M9LW9zZQorCQk7OworCS1lczE4MDAqKQorCQlvcz0tb3NlCisJCTs7CisJLXhlbml4KQorCQlvcz0teGVuaXgKKwkJOzsKKwktKm1pbnQgfCAtbWludFswLTldKiB8IC0qTWlOVCB8IC1NaU5UWzAtOV0qKQorCQlvcz0tbWludAorCQk7OworCS1hcm9zKikKKwkJb3M9LWFyb3MKKwkJOzsKKwkta2FvcyopCisJCW9zPS1rYW9zCisJCTs7CisJLXp2bW9lKQorCQlvcz0tenZtb2UKKwkJOzsKKwktZGljb3MqKQorCQlvcz0tZGljb3MKKwkJOzsKKwktbmFjbCopCisJCTs7CisJLW5vbmUpCisJCTs7CisJKikKKwkJIyBHZXQgcmlkIG9mIHRoZSBgLScgYXQgdGhlIGJlZ2lubmluZyBvZiAkb3MuCisJCW9zPWBlY2hvICRvcyB8IHNlZCAncy9bXi1dKi0vLydgCisJCWVjaG8gSW52YWxpZCBjb25maWd1cmF0aW9uIFxgJDFcJzogc3lzdGVtIFxgJG9zXCcgbm90IHJlY29nbml6ZWQgMT4mMgorCQlleGl0IDEKKwkJOzsKK2VzYWMKK2Vsc2UKKworIyBIZXJlIHdlIGhhbmRsZSB0aGUgZGVmYXVsdCBvcGVyYXRpbmcgc3lzdGVtcyB0aGF0IGNvbWUgd2l0aCB2YXJpb3VzIG1hY2hpbmVzLgorIyBUaGUgdmFsdWUgc2hvdWxkIGJlIHdoYXQgdGhlIHZlbmRvciBjdXJyZW50bHkgc2hpcHMgb3V0IHRoZSBkb29yIHdpdGggdGhlaXIKKyMgbWFjaGluZSBvciBwdXQgYW5vdGhlciB3YXksIHRoZSBtb3N0IHBvcHVsYXIgb3MgcHJvdmlkZWQgd2l0aCB0aGUgbWFjaGluZS4KKworIyBOb3RlIHRoYXQgaWYgeW91J3JlIGdvaW5nIHRvIHRyeSB0byBtYXRjaCAiLU1BTlVGQUNUVVJFUiIgaGVyZSAoc2F5LAorIyAiLXN1biIpLCB0aGVuIHlvdSBoYXZlIHRvIHRlbGwgdGhlIGNhc2Ugc3RhdGVtZW50IHVwIHRvd2FyZHMgdGhlIHRvcAorIyB0aGF0IE1BTlVGQUNUVVJFUiBpc24ndCBhbiBvcGVyYXRpbmcgc3lzdGVtLiAgT3RoZXJ3aXNlLCBjb2RlIGFib3ZlCisjIHdpbGwgc2lnbmFsIGFuIGVycm9yIHNheWluZyB0aGF0IE1BTlVGQUNUVVJFUiBpc24ndCBhbiBvcGVyYXRpbmcKKyMgc3lzdGVtLCBhbmQgd2UnbGwgbmV2ZXIgZ2V0IHRvIHRoaXMgcG9pbnQuCisKK2Nhc2UgJGJhc2ljX21hY2hpbmUgaW4KKwlzY29yZS0qKQorCQlvcz0tZWxmCisJCTs7CisJc3B1LSopCisJCW9zPS1lbGYKKwkJOzsKKwkqLWFjb3JuKQorCQlvcz0tcmlzY2l4MS4yCisJCTs7CisJYXJtKi1yZWJlbCkKKwkJb3M9LWxpbnV4CisJCTs7CisJYXJtKi1zZW1pKQorCQlvcz0tYW91dAorCQk7OworCWM0eC0qIHwgdGljNHgtKikKKwkJb3M9LWNvZmYKKwkJOzsKKwl0aWM1NHgtKikKKwkJb3M9LWNvZmYKKwkJOzsKKwl0aWM1NXgtKikKKwkJb3M9LWNvZmYKKwkJOzsKKwl0aWM2eC0qKQorCQlvcz0tY29mZgorCQk7OworCSMgVGhpcyBtdXN0IGNvbWUgYmVmb3JlIHRoZSAqLWRlYyBlbnRyeS4KKwlwZHAxMC0qKQorCQlvcz0tdG9wczIwCisJCTs7CisJcGRwMTEtKikKKwkJb3M9LW5vbmUKKwkJOzsKKwkqLWRlYyB8IHZheC0qKQorCQlvcz0tdWx0cml4NC4yCisJCTs7CisJbTY4Ki1hcG9sbG8pCisJCW9zPS1kb21haW4KKwkJOzsKKwlpMzg2LXN1bikKKwkJb3M9LXN1bm9zNC4wLjIKKwkJOzsKKwltNjgwMDAtc3VuKQorCQlvcz0tc3Vub3MzCisJCSMgVGhpcyBhbHNvIGV4aXN0cyBpbiB0aGUgY29uZmlndXJlIHByb2dyYW0sIGJ1dCB3YXMgbm90IHRoZQorCQkjIGRlZmF1bHQuCisJCSMgb3M9LXN1bm9zNAorCQk7OworCW02OCotY2lzY28pCisJCW9zPS1hb3V0CisJCTs7CisJbWVwLSopCisJCW9zPS1lbGYKKwkJOzsKKwltaXBzKi1jaXNjbykKKwkJb3M9LWVsZgorCQk7OworCW1pcHMqLSopCisJCW9zPS1lbGYKKwkJOzsKKwlvcjMyLSopCisJCW9zPS1jb2ZmCisJCTs7CisJKi10dGkpCSMgbXVzdCBiZSBiZWZvcmUgc3BhcmMgZW50cnkgb3Igd2UgZ2V0IHRoZSB3cm9uZyBvcy4KKwkJb3M9LXN5c3YzCisJCTs7CisJc3BhcmMtKiB8ICotc3VuKQorCQlvcz0tc3Vub3M0LjEuMQorCQk7OworCSotYmUpCisJCW9zPS1iZW9zCisJCTs7CisJKi1oYWlrdSkKKwkJb3M9LWhhaWt1CisJCTs7CisJKi1pYm0pCisJCW9zPS1haXgKKwkJOzsKKwkqLWtudXRoKQorCQlvcz0tbW1peHdhcmUKKwkJOzsKKwkqLXdlYykKKwkJb3M9LXByb2VsZgorCQk7OworCSotd2luYm9uZCkKKwkJb3M9LXByb2VsZgorCQk7OworCSotb2tpKQorCQlvcz0tcHJvZWxmCisJCTs7CisJKi1ocCkKKwkJb3M9LWhwdXgKKwkJOzsKKwkqLWhpdGFjaGkpCisJCW9zPS1oaXV4CisJCTs7CisJaTg2MC0qIHwgKi1hdHQgfCAqLW5jciB8ICotYWx0b3MgfCAqLW1vdG9yb2xhIHwgKi1jb252ZXJnZW50KQorCQlvcz0tc3lzdgorCQk7OworCSotY2JtKQorCQlvcz0tYW1pZ2FvcworCQk7OworCSotZGcpCisJCW9zPS1kZ3V4CisJCTs7CisJKi1kb2xwaGluKQorCQlvcz0tc3lzdjMKKwkJOzsKKwltNjhrLWNjdXIpCisJCW9zPS1ydHUKKwkJOzsKKwltODhrLW9tcm9uKikKKwkJb3M9LWx1bmEKKwkJOzsKKwkqLW5leHQgKQorCQlvcz0tbmV4dHN0ZXAKKwkJOzsKKwkqLXNlcXVlbnQpCisJCW9zPS1wdHgKKwkJOzsKKwkqLWNyZHMpCisJCW9zPS11bm9zCisJCTs7CisJKi1ucykKKwkJb3M9LWdlbml4CisJCTs7CisJaTM3MC0qKQorCQlvcz0tbXZzCisJCTs7CisJKi1uZXh0KQorCQlvcz0tbmV4dHN0ZXAzCisJCTs7CisJKi1nb3VsZCkKKwkJb3M9LXN5c3YKKwkJOzsKKwkqLWhpZ2hsZXZlbCkKKwkJb3M9LWJzZAorCQk7OworCSotZW5jb3JlKQorCQlvcz0tYnNkCisJCTs7CisJKi1zZ2kpCisJCW9zPS1pcml4CisJCTs7CisJKi1zaWVtZW5zKQorCQlvcz0tc3lzdjQKKwkJOzsKKwkqLW1hc3Njb21wKQorCQlvcz0tcnR1CisJCTs7CisJZjMwWzAxXS1mdWppdHN1IHwgZjcwMC1mdWppdHN1KQorCQlvcz0tdXhwdgorCQk7OworCSotcm9tNjhrKQorCQlvcz0tY29mZgorCQk7OworCSotKmJ1ZykKKwkJb3M9LWNvZmYKKwkJOzsKKwkqLWFwcGxlKQorCQlvcz0tbWFjb3MKKwkJOzsKKwkqLWF0YXJpKikKKwkJb3M9LW1pbnQKKwkJOzsKKwkqKQorCQlvcz0tbm9uZQorCQk7OworZXNhYworZmkKKworIyBIZXJlIHdlIGhhbmRsZSB0aGUgY2FzZSB3aGVyZSB3ZSBrbm93IHRoZSBvcywgYW5kIHRoZSBDUFUgdHlwZSwgYnV0IG5vdCB0aGUKKyMgbWFudWZhY3R1cmVyLiAgV2UgcGljayB0aGUgbG9naWNhbCBtYW51ZmFjdHVyZXIuCit2ZW5kb3I9dW5rbm93bgorY2FzZSAkYmFzaWNfbWFjaGluZSBpbgorCSotdW5rbm93bikKKwkJY2FzZSAkb3MgaW4KKwkJCS1yaXNjaXgqKQorCQkJCXZlbmRvcj1hY29ybgorCQkJCTs7CisJCQktc3Vub3MqKQorCQkJCXZlbmRvcj1zdW4KKwkJCQk7OworCQkJLWNuayp8LWFpeCopCisJCQkJdmVuZG9yPWlibQorCQkJCTs7CisJCQktYmVvcyopCisJCQkJdmVuZG9yPWJlCisJCQkJOzsKKwkJCS1ocHV4KikKKwkJCQl2ZW5kb3I9aHAKKwkJCQk7OworCQkJLW1wZWl4KikKKwkJCQl2ZW5kb3I9aHAKKwkJCQk7OworCQkJLWhpdXgqKQorCQkJCXZlbmRvcj1oaXRhY2hpCisJCQkJOzsKKwkJCS11bm9zKikKKwkJCQl2ZW5kb3I9Y3JkcworCQkJCTs7CisJCQktZGd1eCopCisJCQkJdmVuZG9yPWRnCisJCQkJOzsKKwkJCS1sdW5hKikKKwkJCQl2ZW5kb3I9b21yb24KKwkJCQk7OworCQkJLWdlbml4KikKKwkJCQl2ZW5kb3I9bnMKKwkJCQk7OworCQkJLW12cyogfCAtb3BlbmVkKikKKwkJCQl2ZW5kb3I9aWJtCisJCQkJOzsKKwkJCS1vczQwMCopCisJCQkJdmVuZG9yPWlibQorCQkJCTs7CisJCQktcHR4KikKKwkJCQl2ZW5kb3I9c2VxdWVudAorCQkJCTs7CisJCQktdHBmKikKKwkJCQl2ZW5kb3I9aWJtCisJCQkJOzsKKwkJCS12eHNpbSogfCAtdnh3b3JrcyogfCAtd2luZGlzcyopCisJCQkJdmVuZG9yPXdycworCQkJCTs7CisJCQktYXV4KikKKwkJCQl2ZW5kb3I9YXBwbGUKKwkJCQk7OworCQkJLWhtcyopCisJCQkJdmVuZG9yPWhpdGFjaGkKKwkJCQk7OworCQkJLW1wdyogfCAtbWFjb3MqKQorCQkJCXZlbmRvcj1hcHBsZQorCQkJCTs7CisJCQktKm1pbnQgfCAtbWludFswLTldKiB8IC0qTWlOVCB8IC1NaU5UWzAtOV0qKQorCQkJCXZlbmRvcj1hdGFyaQorCQkJCTs7CisJCQktdm9zKikKKwkJCQl2ZW5kb3I9c3RyYXR1cworCQkJCTs7CisJCWVzYWMKKwkJYmFzaWNfbWFjaGluZT1gZWNobyAkYmFzaWNfbWFjaGluZSB8IHNlZCAicy91bmtub3duLyR2ZW5kb3IvImAKKwkJOzsKK2VzYWMKKworZWNobyAkYmFzaWNfbWFjaGluZSRvcworZXhpdAorCisjIExvY2FsIHZhcmlhYmxlczoKKyMgZXZhbDogKGFkZC1ob29rICd3cml0ZS1maWxlLWhvb2tzICd0aW1lLXN0YW1wKQorIyB0aW1lLXN0YW1wLXN0YXJ0OiAidGltZXN0YW1wPSciCisjIHRpbWUtc3RhbXAtZm9ybWF0OiAiJTp5LSUwMm0tJTAyZCIKKyMgdGltZS1zdGFtcC1lbmQ6ICInIgorIyBFbmQ6CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2J1aWxkLWF1eC9kZXBjb21wIGIvZHBrZy0xLjE2LjEuMS9idWlsZC1hdXgvZGVwY29tcApuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwLi5kZjhlZWE3Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9idWlsZC1hdXgvZGVwY29tcApAQCAtMCwwICsxLDYzMCBAQAorIyEgL2Jpbi9zaAorIyBkZXBjb21wIC0gY29tcGlsZSBhIHByb2dyYW0gZ2VuZXJhdGluZyBkZXBlbmRlbmNpZXMgYXMgc2lkZS1lZmZlY3RzCisKK3NjcmlwdHZlcnNpb249MjAwOS0wNC0yOC4yMTsgIyBVVEMKKworIyBDb3B5cmlnaHQgKEMpIDE5OTksIDIwMDAsIDIwMDMsIDIwMDQsIDIwMDUsIDIwMDYsIDIwMDcsIDIwMDkgRnJlZQorIyBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCisKKyMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiwgb3IgKGF0IHlvdXIgb3B0aW9uKQorIyBhbnkgbGF0ZXIgdmVyc2lvbi4KKworIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorCisjIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisjIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorCisjIEFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlLCBpZiB5b3UKKyMgZGlzdHJpYnV0ZSB0aGlzIGZpbGUgYXMgcGFydCBvZiBhIHByb2dyYW0gdGhhdCBjb250YWlucyBhCisjIGNvbmZpZ3VyYXRpb24gc2NyaXB0IGdlbmVyYXRlZCBieSBBdXRvY29uZiwgeW91IG1heSBpbmNsdWRlIGl0IHVuZGVyCisjIHRoZSBzYW1lIGRpc3RyaWJ1dGlvbiB0ZXJtcyB0aGF0IHlvdSB1c2UgZm9yIHRoZSByZXN0IG9mIHRoYXQgcHJvZ3JhbS4KKworIyBPcmlnaW5hbGx5IHdyaXR0ZW4gYnkgQWxleGFuZHJlIE9saXZhIDxvbGl2YUBkY2MudW5pY2FtcC5icj4uCisKK2Nhc2UgJDEgaW4KKyAgJycpCisgICAgIGVjaG8gIiQwOiBObyBjb21tYW5kLiAgVHJ5IFxgJDAgLS1oZWxwJyBmb3IgbW9yZSBpbmZvcm1hdGlvbi4iIDE+JjIKKyAgICAgZXhpdCAxOworICAgICA7OworICAtaCB8IC0taCopCisgICAgY2F0IDw8XEVPRgorVXNhZ2U6IGRlcGNvbXAgWy0taGVscF0gWy0tdmVyc2lvbl0gUFJPR1JBTSBbQVJHU10KKworUnVuIFBST0dSQU1TIEFSR1MgdG8gY29tcGlsZSBhIGZpbGUsIGdlbmVyYXRpbmcgZGVwZW5kZW5jaWVzCithcyBzaWRlLWVmZmVjdHMuCisKK0Vudmlyb25tZW50IHZhcmlhYmxlczoKKyAgZGVwbW9kZSAgICAgRGVwZW5kZW5jeSB0cmFja2luZyBtb2RlLgorICBzb3VyY2UgICAgICBTb3VyY2UgZmlsZSByZWFkIGJ5IGBQUk9HUkFNUyBBUkdTJy4KKyAgb2JqZWN0ICAgICAgT2JqZWN0IGZpbGUgb3V0cHV0IGJ5IGBQUk9HUkFNUyBBUkdTJy4KKyAgREVQRElSICAgICAgZGlyZWN0b3J5IHdoZXJlIHRvIHN0b3JlIGRlcGVuZGVuY2llcy4KKyAgZGVwZmlsZSAgICAgRGVwZW5kZW5jeSBmaWxlIHRvIG91dHB1dC4KKyAgdG1wZGVwZmlsZSAgVGVtcG9yYXJ5IGZpbGUgdG8gdXNlIHdoZW4gb3V0cHV0aW5nIGRlcGVuZGVuY2llcy4KKyAgbGlidG9vbCAgICAgV2hldGhlciBsaWJ0b29sIGlzIHVzZWQgKHllcy9ubykuCisKK1JlcG9ydCBidWdzIHRvIDxidWctYXV0b21ha2VAZ251Lm9yZz4uCitFT0YKKyAgICBleGl0ICQ/CisgICAgOzsKKyAgLXYgfCAtLXYqKQorICAgIGVjaG8gImRlcGNvbXAgJHNjcmlwdHZlcnNpb24iCisgICAgZXhpdCAkPworICAgIDs7Citlc2FjCisKK2lmIHRlc3QgLXogIiRkZXBtb2RlIiB8fCB0ZXN0IC16ICIkc291cmNlIiB8fCB0ZXN0IC16ICIkb2JqZWN0IjsgdGhlbgorICBlY2hvICJkZXBjb21wOiBWYXJpYWJsZXMgc291cmNlLCBvYmplY3QgYW5kIGRlcG1vZGUgbXVzdCBiZSBzZXQiIDE+JjIKKyAgZXhpdCAxCitmaQorCisjIERlcGVuZGVuY2llcyBmb3Igc3ViL2Jhci5vIG9yIHN1Yi9iYXIub2JqIGdvIGludG8gc3ViLy5kZXBzL2Jhci5Qby4KK2RlcGZpbGU9JHtkZXBmaWxlLWBlY2hvICIkb2JqZWN0IiB8CisgIHNlZCAnc3xbXlxcL10qJHwnJHtERVBESVItLmRlcHN9Jy8mfDtzfFwuXChbXi5dKlwpJHwuUFwxfDtzfFBvYmokfFBvfCdgfQordG1wZGVwZmlsZT0ke3RtcGRlcGZpbGUtYGVjaG8gIiRkZXBmaWxlIiB8IHNlZCAncy9cLlwoW14uXSpcKSQvLlRcMS8nYH0KKworcm0gLWYgIiR0bXBkZXBmaWxlIgorCisjIFNvbWUgbW9kZXMgd29yayBqdXN0IGxpa2Ugb3RoZXIgbW9kZXMsIGJ1dCB1c2UgZGlmZmVyZW50IGZsYWdzLiAgV2UKKyMgcGFyYW1ldGVyaXplIGhlcmUsIGJ1dCBzdGlsbCBsaXN0IHRoZSBtb2RlcyBpbiB0aGUgYmlnIGNhc2UgYmVsb3csCisjIHRvIG1ha2UgZGVwZW5kLm00IGVhc2llciB0byB3cml0ZS4gIE5vdGUgdGhhdCB3ZSAqY2Fubm90KiB1c2UgYSBjYXNlCisjIGhlcmUsIGJlY2F1c2UgdGhpcyBmaWxlIGNhbiBvbmx5IGNvbnRhaW4gb25lIGNhc2Ugc3RhdGVtZW50LgoraWYgdGVzdCAiJGRlcG1vZGUiID0gaHA7IHRoZW4KKyAgIyBIUCBjb21waWxlciB1c2VzIC1NIGFuZCBubyBleHRyYSBhcmcuCisgIGdjY2ZsYWc9LU0KKyAgZGVwbW9kZT1nY2MKK2ZpCisKK2lmIHRlc3QgIiRkZXBtb2RlIiA9IGRhc2hYbXN0ZG91dDsgdGhlbgorICAgIyBUaGlzIGlzIGp1c3QgbGlrZSBkYXNobXN0ZG91dCB3aXRoIGEgZGlmZmVyZW50IGFyZ3VtZW50LgorICAgZGFzaG1mbGFnPS14TQorICAgZGVwbW9kZT1kYXNobXN0ZG91dAorZmkKKworY3lncGF0aF91PSJjeWdwYXRoIC11IC1mIC0iCitpZiB0ZXN0ICIkZGVwbW9kZSIgPSBtc3ZjbXN5czsgdGhlbgorICAgIyBUaGlzIGlzIGp1c3QgbGlrZSBtc3Zpc3VhbGNwcCBidXQgdy9vIGN5Z3BhdGggdHJhbnNsYXRpb24uCisgICAjIEp1c3QgY29udmVydCB0aGUgYmFja3NsYXNoLWVzY2FwZWQgYmFja3NsYXNoZXMgdG8gc2luZ2xlIGZvcndhcmQKKyAgICMgc2xhc2hlcyB0byBzYXRpc2Z5IGRlcGVuZC5tNAorICAgY3lncGF0aF91PSJzZWQgcyxcXFxcXFxcXCwvLGciCisgICBkZXBtb2RlPW1zdmlzdWFsY3BwCitmaQorCitjYXNlICIkZGVwbW9kZSIgaW4KK2djYzMpCisjIyBnY2MgMyBpbXBsZW1lbnRzIGRlcGVuZGVuY3kgdHJhY2tpbmcgdGhhdCBkb2VzIGV4YWN0bHkgd2hhdAorIyMgd2Ugd2FudC4gIFlheSEgIE5vdGU6IGZvciBzb21lIHJlYXNvbiBsaWJ0b29sIDEuNCBkb2Vzbid0IGxpa2UKKyMjIGl0IGlmIC1NRCAtTVAgY29tZXMgYWZ0ZXIgdGhlIC1NRiBzdHVmZi4gIEhtbS4KKyMjIFVuZm9ydHVuYXRlbHksIEZyZWVCU0QgYzg5IGFjY2VwdGFuY2Ugb2YgZmxhZ3MgZGVwZW5kcyB1cG9uCisjIyB0aGUgY29tbWFuZCBsaW5lIGFyZ3VtZW50IG9yZGVyOyBzbyBhZGQgdGhlIGZsYWdzIHdoZXJlIHRoZXkKKyMjIGFwcGVhciBpbiBkZXBlbmQyLmFtLiAgTm90ZSB0aGF0IHRoZSBzbG93ZG93biBpbmN1cnJlZCBoZXJlCisjIyBhZmZlY3RzIG9ubHkgY29uZmlndXJlOiBpbiBtYWtlZmlsZXMsICVGQVNUREVQJSBzaG9ydGN1dHMgdGhpcy4KKyAgZm9yIGFyZworICBkbworICAgIGNhc2UgJGFyZyBpbgorICAgIC1jKSBzZXQgZm5vcmQgIiRAIiAtTVQgIiRvYmplY3QiIC1NRCAtTVAgLU1GICIkdG1wZGVwZmlsZSIgIiRhcmciIDs7CisgICAgKikgIHNldCBmbm9yZCAiJEAiICIkYXJnIiA7OworICAgIGVzYWMKKyAgICBzaGlmdCAjIGZub3JkCisgICAgc2hpZnQgIyAkYXJnCisgIGRvbmUKKyAgIiRAIgorICBzdGF0PSQ/CisgIGlmIHRlc3QgJHN0YXQgLWVxIDA7IHRoZW4gOgorICBlbHNlCisgICAgcm0gLWYgIiR0bXBkZXBmaWxlIgorICAgIGV4aXQgJHN0YXQKKyAgZmkKKyAgbXYgIiR0bXBkZXBmaWxlIiAiJGRlcGZpbGUiCisgIDs7CisKK2djYykKKyMjIFRoZXJlIGFyZSB2YXJpb3VzIHdheXMgdG8gZ2V0IGRlcGVuZGVuY3kgb3V0cHV0IGZyb20gZ2NjLiAgSGVyZSdzCisjIyB3aHkgd2UgcGljayB0aGlzIHJhdGhlciBvYnNjdXJlIG1ldGhvZDoKKyMjIC0gRG9uJ3Qgd2FudCB0byB1c2UgLU1EIGJlY2F1c2Ugd2UnZCBsaWtlIHRoZSBkZXBlbmRlbmNpZXMgdG8gZW5kCisjIyAgIHVwIGluIGEgc3ViZGlyLiAgSGF2aW5nIHRvIHJlbmFtZSBieSBoYW5kIGlzIHVnbHkuCisjIyAgIChXZSBtaWdodCBlbmQgdXAgZG9pbmcgdGhpcyBhbnl3YXkgdG8gc3VwcG9ydCBvdGhlciBjb21waWxlcnMuKQorIyMgLSBUaGUgREVQRU5ERU5DSUVTX09VVFBVVCBlbnZpcm9ubWVudCB2YXJpYWJsZSBtYWtlcyBnY2MgYWN0IGxpa2UKKyMjICAgLU1NLCBub3QgLU0gKGRlc3BpdGUgd2hhdCB0aGUgZG9jcyBzYXkpLgorIyMgLSBVc2luZyAtTSBkaXJlY3RseSBtZWFucyBydW5uaW5nIHRoZSBjb21waWxlciB0d2ljZSAoZXZlbiB3b3JzZQorIyMgICB0aGFuIHJlbmFtaW5nKS4KKyAgaWYgdGVzdCAteiAiJGdjY2ZsYWciOyB0aGVuCisgICAgZ2NjZmxhZz0tTUQsCisgIGZpCisgICIkQCIgLVdwLCIkZ2NjZmxhZyR0bXBkZXBmaWxlIgorICBzdGF0PSQ/CisgIGlmIHRlc3QgJHN0YXQgLWVxIDA7IHRoZW4gOgorICBlbHNlCisgICAgcm0gLWYgIiR0bXBkZXBmaWxlIgorICAgIGV4aXQgJHN0YXQKKyAgZmkKKyAgcm0gLWYgIiRkZXBmaWxlIgorICBlY2hvICIkb2JqZWN0IDogXFwiID4gIiRkZXBmaWxlIgorICBhbHBoYT1BQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWmFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6CisjIyBUaGUgc2Vjb25kIC1lIGV4cHJlc3Npb24gaGFuZGxlcyBET1Mtc3R5bGUgZmlsZSBuYW1lcyB3aXRoIGRyaXZlIGxldHRlcnMuCisgIHNlZCAtZSAncy9eW146XSo6IC8gLycgXAorICAgICAgLWUgJ3MvXlsnJGFscGhhJ106XC9bXjpdKjogLyAvJyA8ICIkdG1wZGVwZmlsZSIgPj4gIiRkZXBmaWxlIgorIyMgVGhpcyBuZXh0IHBpZWNlIG9mIG1hZ2ljIGF2b2lkcyB0aGUgYGRlbGV0ZWQgaGVhZGVyIGZpbGUnIHByb2JsZW0uCisjIyBUaGUgcHJvYmxlbSBpcyB0aGF0IHdoZW4gYSBoZWFkZXIgZmlsZSB3aGljaCBhcHBlYXJzIGluIGEgLlAgZmlsZQorIyMgaXMgZGVsZXRlZCwgdGhlIGRlcGVuZGVuY3kgY2F1c2VzIG1ha2UgdG8gZGllIChiZWNhdXNlIHRoZXJlIGlzCisjIyB0eXBpY2FsbHkgbm8gd2F5IHRvIHJlYnVpbGQgdGhlIGhlYWRlcikuICBXZSBhdm9pZCB0aGlzIGJ5IGFkZGluZworIyMgZHVtbXkgZGVwZW5kZW5jaWVzIGZvciBlYWNoIGhlYWRlciBmaWxlLiAgVG9vIGJhZCBnY2MgZG9lc24ndCBkbworIyMgdGhpcyBmb3IgdXMgZGlyZWN0bHkuCisgIHRyICcgJyAnCisnIDwgIiR0bXBkZXBmaWxlIiB8CisjIyBTb21lIHZlcnNpb25zIG9mIGdjYyBwdXQgYSBzcGFjZSBiZWZvcmUgdGhlIGA6Jy4gIE9uIHRoZSB0aGVvcnkKKyMjIHRoYXQgdGhlIHNwYWNlIG1lYW5zIHNvbWV0aGluZywgd2UgYWRkIGEgc3BhY2UgdG8gdGhlIG91dHB1dCBhcworIyMgd2VsbC4KKyMjIFNvbWUgdmVyc2lvbnMgb2YgdGhlIEhQVVggMTAuMjAgc2VkIGNhbid0IHByb2Nlc3MgdGhpcyBpbnZvY2F0aW9uCisjIyBjb3JyZWN0bHkuICBCcmVha2luZyBpdCBpbnRvIHR3byBzZWQgaW52b2NhdGlvbnMgaXMgYSB3b3JrYXJvdW5kLgorICAgIHNlZCAtZSAncy9eXFwkLy8nIC1lICcvXiQvZCcgLWUgJy86JC9kJyB8IHNlZCAtZSAncy8kLyA6LycgPj4gIiRkZXBmaWxlIgorICBybSAtZiAiJHRtcGRlcGZpbGUiCisgIDs7CisKK2hwKQorICAjIFRoaXMgY2FzZSBleGlzdHMgb25seSB0byBsZXQgZGVwZW5kLm00IGRvIGl0cyB3b3JrLiAgSXQgd29ya3MgYnkKKyAgIyBsb29raW5nIGF0IHRoZSB0ZXh0IG9mIHRoaXMgc2NyaXB0LiAgVGhpcyBjYXNlIHdpbGwgbmV2ZXIgYmUgcnVuLAorICAjIHNpbmNlIGl0IGlzIGNoZWNrZWQgZm9yIGFib3ZlLgorICBleGl0IDEKKyAgOzsKKworc2dpKQorICBpZiB0ZXN0ICIkbGlidG9vbCIgPSB5ZXM7IHRoZW4KKyAgICAiJEAiICItV3AsLU1EdXBkYXRlLCR0bXBkZXBmaWxlIgorICBlbHNlCisgICAgIiRAIiAtTUR1cGRhdGUgIiR0bXBkZXBmaWxlIgorICBmaQorICBzdGF0PSQ/CisgIGlmIHRlc3QgJHN0YXQgLWVxIDA7IHRoZW4gOgorICBlbHNlCisgICAgcm0gLWYgIiR0bXBkZXBmaWxlIgorICAgIGV4aXQgJHN0YXQKKyAgZmkKKyAgcm0gLWYgIiRkZXBmaWxlIgorCisgIGlmIHRlc3QgLWYgIiR0bXBkZXBmaWxlIjsgdGhlbiAgIyB5ZXMsIHRoZSBzb3VyY2VmaWxlIGRlcGVuZCBvbiBvdGhlciBmaWxlcworICAgIGVjaG8gIiRvYmplY3QgOiBcXCIgPiAiJGRlcGZpbGUiCisKKyAgICAjIENsaXAgb2ZmIHRoZSBpbml0aWFsIGVsZW1lbnQgKHRoZSBkZXBlbmRlbnQpLiAgRG9uJ3QgdHJ5IHRvIGJlCisgICAgIyBjbGV2ZXIgYW5kIHJlcGxhY2UgdGhpcyB3aXRoIHNlZCBjb2RlLCBhcyBJUklYIHNlZCB3b24ndCBoYW5kbGUKKyAgICAjIGxpbmVzIHdpdGggbW9yZSB0aGFuIGEgZml4ZWQgbnVtYmVyIG9mIGNoYXJhY3RlcnMgKDQwOTYgaW4KKyAgICAjIElSSVggNi4yIHNlZCwgODE5MiBpbiBJUklYIDYuNSkuICBXZSBhbHNvIHJlbW92ZSBjb21tZW50IGxpbmVzOworICAgICMgdGhlIElSSVggY2MgYWRkcyBjb21tZW50cyBsaWtlIGAjOmZlYycgdG8gdGhlIGVuZCBvZiB0aGUKKyAgICAjIGRlcGVuZGVuY3kgbGluZS4KKyAgICB0ciAnICcgJworJyA8ICIkdG1wZGVwZmlsZSIgXAorICAgIHwgc2VkIC1lICdzL14uKlwubzovLycgLWUgJ3MvIy4qJC8vJyAtZSAnL14kLyBkJyB8IFwKKyAgICB0ciAnCisnICcgJyA+PiAiJGRlcGZpbGUiCisgICAgZWNobyA+PiAiJGRlcGZpbGUiCisKKyAgICAjIFRoZSBzZWNvbmQgcGFzcyBnZW5lcmF0ZXMgYSBkdW1teSBlbnRyeSBmb3IgZWFjaCBoZWFkZXIgZmlsZS4KKyAgICB0ciAnICcgJworJyA8ICIkdG1wZGVwZmlsZSIgXAorICAgfCBzZWQgLWUgJ3MvXi4qXC5vOi8vJyAtZSAncy8jLiokLy8nIC1lICcvXiQvIGQnIC1lICdzLyQvOi8nIFwKKyAgID4+ICIkZGVwZmlsZSIKKyAgZWxzZQorICAgICMgVGhlIHNvdXJjZWZpbGUgZG9lcyBub3QgY29udGFpbiBhbnkgZGVwZW5kZW5jaWVzLCBzbyBqdXN0CisgICAgIyBzdG9yZSBhIGR1bW15IGNvbW1lbnQgbGluZSwgdG8gYXZvaWQgZXJyb3JzIHdpdGggdGhlIE1ha2VmaWxlCisgICAgIyAiaW5jbHVkZSBiYXNlbmFtZS5QbG8iIHNjaGVtZS4KKyAgICBlY2hvICIjZHVtbXkiID4gIiRkZXBmaWxlIgorICBmaQorICBybSAtZiAiJHRtcGRlcGZpbGUiCisgIDs7CisKK2FpeCkKKyAgIyBUaGUgQyBmb3IgQUlYIENvbXBpbGVyIHVzZXMgLU0gYW5kIG91dHB1dHMgdGhlIGRlcGVuZGVuY2llcworICAjIGluIGEgLnUgZmlsZS4gIEluIG9sZGVyIHZlcnNpb25zLCB0aGlzIGZpbGUgYWx3YXlzIGxpdmVzIGluIHRoZQorICAjIGN1cnJlbnQgZGlyZWN0b3J5LiAgQWxzbywgdGhlIEFJWCBjb21waWxlciBwdXRzIGAkb2JqZWN0OicgYXQgdGhlCisgICMgc3RhcnQgb2YgZWFjaCBsaW5lOyAkb2JqZWN0IGRvZXNuJ3QgaGF2ZSBkaXJlY3RvcnkgaW5mb3JtYXRpb24uCisgICMgVmVyc2lvbiA2IHVzZXMgdGhlIGRpcmVjdG9yeSBpbiBib3RoIGNhc2VzLgorICBkaXI9YGVjaG8gIiRvYmplY3QiIHwgc2VkIC1lICdzfC9bXi9dKiR8L3wnYAorICB0ZXN0ICJ4JGRpciIgPSAieCRvYmplY3QiICYmIGRpcj0KKyAgYmFzZT1gZWNobyAiJG9iamVjdCIgfCBzZWQgLWUgJ3N8Xi4qL3x8JyAtZSAncy9cLm8kLy8nIC1lICdzL1wubG8kLy8nYAorICBpZiB0ZXN0ICIkbGlidG9vbCIgPSB5ZXM7IHRoZW4KKyAgICB0bXBkZXBmaWxlMT0kZGlyJGJhc2UudQorICAgIHRtcGRlcGZpbGUyPSRiYXNlLnUKKyAgICB0bXBkZXBmaWxlMz0kZGlyLmxpYnMvJGJhc2UudQorICAgICIkQCIgLVdjLC1NCisgIGVsc2UKKyAgICB0bXBkZXBmaWxlMT0kZGlyJGJhc2UudQorICAgIHRtcGRlcGZpbGUyPSRkaXIkYmFzZS51CisgICAgdG1wZGVwZmlsZTM9JGRpciRiYXNlLnUKKyAgICAiJEAiIC1NCisgIGZpCisgIHN0YXQ9JD8KKworICBpZiB0ZXN0ICRzdGF0IC1lcSAwOyB0aGVuIDoKKyAgZWxzZQorICAgIHJtIC1mICIkdG1wZGVwZmlsZTEiICIkdG1wZGVwZmlsZTIiICIkdG1wZGVwZmlsZTMiCisgICAgZXhpdCAkc3RhdAorICBmaQorCisgIGZvciB0bXBkZXBmaWxlIGluICIkdG1wZGVwZmlsZTEiICIkdG1wZGVwZmlsZTIiICIkdG1wZGVwZmlsZTMiCisgIGRvCisgICAgdGVzdCAtZiAiJHRtcGRlcGZpbGUiICYmIGJyZWFrCisgIGRvbmUKKyAgaWYgdGVzdCAtZiAiJHRtcGRlcGZpbGUiOyB0aGVuCisgICAgIyBFYWNoIGxpbmUgaXMgb2YgdGhlIGZvcm0gYGZvby5vOiBkZXBlbmRlbnQuaCcuCisgICAgIyBEbyB0d28gcGFzc2VzLCBvbmUgdG8ganVzdCBjaGFuZ2UgdGhlc2UgdG8KKyAgICAjIGAkb2JqZWN0OiBkZXBlbmRlbnQuaCcgYW5kIG9uZSB0byBzaW1wbHkgYGRlcGVuZGVudC5oOicuCisgICAgc2VkIC1lICJzLF4uKlwuW2Etel0qOiwkb2JqZWN0OiwiIDwgIiR0bXBkZXBmaWxlIiA+ICIkZGVwZmlsZSIKKyAgICAjIFRoYXQncyBhIHRhYiBhbmQgYSBzcGFjZSBpbiB0aGUgW10uCisgICAgc2VkIC1lICdzLF4uKlwuW2Etel0qOlsJIF0qLCwnIC1lICdzLCQsOiwnIDwgIiR0bXBkZXBmaWxlIiA+PiAiJGRlcGZpbGUiCisgIGVsc2UKKyAgICAjIFRoZSBzb3VyY2VmaWxlIGRvZXMgbm90IGNvbnRhaW4gYW55IGRlcGVuZGVuY2llcywgc28ganVzdAorICAgICMgc3RvcmUgYSBkdW1teSBjb21tZW50IGxpbmUsIHRvIGF2b2lkIGVycm9ycyB3aXRoIHRoZSBNYWtlZmlsZQorICAgICMgImluY2x1ZGUgYmFzZW5hbWUuUGxvIiBzY2hlbWUuCisgICAgZWNobyAiI2R1bW15IiA+ICIkZGVwZmlsZSIKKyAgZmkKKyAgcm0gLWYgIiR0bXBkZXBmaWxlIgorICA7OworCitpY2MpCisgICMgSW50ZWwncyBDIGNvbXBpbGVyIHVuZGVyc3RhbmRzIGAtTUQgLU1GIGZpbGUnLiAgSG93ZXZlciBvbgorICAjICAgIGljYyAtTUQgLU1GIGZvby5kIC1jIC1vIHN1Yi9mb28ubyBzdWIvZm9vLmMKKyAgIyBJQ0MgNy4wIHdpbGwgZmlsbCBmb28uZCB3aXRoIHNvbWV0aGluZyBsaWtlCisgICMgICAgZm9vLm86IHN1Yi9mb28uYworICAjICAgIGZvby5vOiBzdWIvZm9vLmgKKyAgIyB3aGljaCBpcyB3cm9uZy4gIFdlIHdhbnQ6CisgICMgICAgc3ViL2Zvby5vOiBzdWIvZm9vLmMKKyAgIyAgICBzdWIvZm9vLm86IHN1Yi9mb28uaAorICAjICAgIHN1Yi9mb28uYzoKKyAgIyAgICBzdWIvZm9vLmg6CisgICMgSUNDIDcuMSB3aWxsIG91dHB1dAorICAjICAgIGZvby5vOiBzdWIvZm9vLmMgc3ViL2Zvby5oCisgICMgYW5kIHdpbGwgd3JhcCBsb25nIGxpbmVzIHVzaW5nIFwgOgorICAjICAgIGZvby5vOiBzdWIvZm9vLmMgLi4uIFwKKyAgIyAgICAgc3ViL2Zvby5oIC4uLiBcCisgICMgICAgIC4uLgorCisgICIkQCIgLU1EIC1NRiAiJHRtcGRlcGZpbGUiCisgIHN0YXQ9JD8KKyAgaWYgdGVzdCAkc3RhdCAtZXEgMDsgdGhlbiA6CisgIGVsc2UKKyAgICBybSAtZiAiJHRtcGRlcGZpbGUiCisgICAgZXhpdCAkc3RhdAorICBmaQorICBybSAtZiAiJGRlcGZpbGUiCisgICMgRWFjaCBsaW5lIGlzIG9mIHRoZSBmb3JtIGBmb28ubzogZGVwZW5kZW50LmgnLAorICAjIG9yIGBmb28ubzogZGVwMS5oIGRlcDIuaCBcJywgb3IgYCBkZXAzLmggZGVwNC5oIFwnLgorICAjIERvIHR3byBwYXNzZXMsIG9uZSB0byBqdXN0IGNoYW5nZSB0aGVzZSB0bworICAjIGAkb2JqZWN0OiBkZXBlbmRlbnQuaCcgYW5kIG9uZSB0byBzaW1wbHkgYGRlcGVuZGVudC5oOicuCisgIHNlZCAicyxeW146XSo6LCRvYmplY3QgOiwiIDwgIiR0bXBkZXBmaWxlIiA+ICIkZGVwZmlsZSIKKyAgIyBTb21lIHZlcnNpb25zIG9mIHRoZSBIUFVYIDEwLjIwIHNlZCBjYW4ndCBwcm9jZXNzIHRoaXMgaW52b2NhdGlvbgorICAjIGNvcnJlY3RseS4gIEJyZWFraW5nIGl0IGludG8gdHdvIHNlZCBpbnZvY2F0aW9ucyBpcyBhIHdvcmthcm91bmQuCisgIHNlZCAncyxeW146XSo6IFwoLipcKSQsXDEsO3MvXlxcJC8vOy9eJC9kOy86JC9kJyA8ICIkdG1wZGVwZmlsZSIgfAorICAgIHNlZCAtZSAncy8kLyA6LycgPj4gIiRkZXBmaWxlIgorICBybSAtZiAiJHRtcGRlcGZpbGUiCisgIDs7CisKK2hwMikKKyAgIyBUaGUgImhwIiBzdGFuemEgYWJvdmUgZG9lcyBub3Qgd29yayB3aXRoIGFDQyAoQysrKSBhbmQgSFAncyBpYTY0CisgICMgY29tcGlsZXJzLCB3aGljaCBoYXZlIGludGVncmF0ZWQgcHJlcHJvY2Vzc29ycy4gIFRoZSBjb3JyZWN0IG9wdGlvbgorICAjIHRvIHVzZSB3aXRoIHRoZXNlIGlzICtNYWtlZDsgaXQgd3JpdGVzIGRlcGVuZGVuY2llcyB0byBhIGZpbGUgbmFtZWQKKyAgIyAnZm9vLmQnLCB3aGljaCBsYW5kcyBuZXh0IHRvIHRoZSBvYmplY3QgZmlsZSwgd2hlcmV2ZXIgdGhhdAorICAjIGhhcHBlbnMgdG8gYmUuCisgICMgTXVjaCBvZiB0aGlzIGlzIHNpbWlsYXIgdG8gdGhlIHRydTY0IGNhc2U7IHNlZSBjb21tZW50cyB0aGVyZS4KKyAgZGlyPWBlY2hvICIkb2JqZWN0IiB8IHNlZCAtZSAnc3wvW14vXSokfC98J2AKKyAgdGVzdCAieCRkaXIiID0gIngkb2JqZWN0IiAmJiBkaXI9CisgIGJhc2U9YGVjaG8gIiRvYmplY3QiIHwgc2VkIC1lICdzfF4uKi98fCcgLWUgJ3MvXC5vJC8vJyAtZSAncy9cLmxvJC8vJ2AKKyAgaWYgdGVzdCAiJGxpYnRvb2wiID0geWVzOyB0aGVuCisgICAgdG1wZGVwZmlsZTE9JGRpciRiYXNlLmQKKyAgICB0bXBkZXBmaWxlMj0kZGlyLmxpYnMvJGJhc2UuZAorICAgICIkQCIgLVdjLCtNYWtlZAorICBlbHNlCisgICAgdG1wZGVwZmlsZTE9JGRpciRiYXNlLmQKKyAgICB0bXBkZXBmaWxlMj0kZGlyJGJhc2UuZAorICAgICIkQCIgK01ha2VkCisgIGZpCisgIHN0YXQ9JD8KKyAgaWYgdGVzdCAkc3RhdCAtZXEgMDsgdGhlbiA6CisgIGVsc2UKKyAgICAgcm0gLWYgIiR0bXBkZXBmaWxlMSIgIiR0bXBkZXBmaWxlMiIKKyAgICAgZXhpdCAkc3RhdAorICBmaQorCisgIGZvciB0bXBkZXBmaWxlIGluICIkdG1wZGVwZmlsZTEiICIkdG1wZGVwZmlsZTIiCisgIGRvCisgICAgdGVzdCAtZiAiJHRtcGRlcGZpbGUiICYmIGJyZWFrCisgIGRvbmUKKyAgaWYgdGVzdCAtZiAiJHRtcGRlcGZpbGUiOyB0aGVuCisgICAgc2VkIC1lICJzLF4uKlwuW2Etel0qOiwkb2JqZWN0OiwiICIkdG1wZGVwZmlsZSIgPiAiJGRlcGZpbGUiCisgICAgIyBBZGQgYGRlcGVuZGVudC5oOicgbGluZXMuCisgICAgc2VkIC1uZSAnMiwkeworCSAgICAgICBzL14gKi8vCisJICAgICAgIHMvIFxcKiQvLworCSAgICAgICBzLyQvOi8KKwkgICAgICAgcAorCSAgICAgfScgIiR0bXBkZXBmaWxlIiA+PiAiJGRlcGZpbGUiCisgIGVsc2UKKyAgICBlY2hvICIjZHVtbXkiID4gIiRkZXBmaWxlIgorICBmaQorICBybSAtZiAiJHRtcGRlcGZpbGUiICIkdG1wZGVwZmlsZTIiCisgIDs7CisKK3RydTY0KQorICAgIyBUaGUgVHJ1NjQgY29tcGlsZXIgdXNlcyAtTUQgdG8gZ2VuZXJhdGUgZGVwZW5kZW5jaWVzIGFzIGEgc2lkZQorICAgIyBlZmZlY3QuICBgY2MgLU1EIC1vIGZvby5vIC4uLicgcHV0cyB0aGUgZGVwZW5kZW5jaWVzIGludG8gYGZvby5vLmQnLgorICAgIyBBdCBsZWFzdCBvbiBBbHBoYS9SZWRoYXQgNi4xLCBDb21wYXEgQ0NDIFY2LjItNTA0IHNlZW1zIHRvIHB1dAorICAgIyBkZXBlbmRlbmNpZXMgaW4gYGZvby5kJyBpbnN0ZWFkLCBzbyB3ZSBjaGVjayBmb3IgdGhhdCB0b28uCisgICAjIFN1YmRpcmVjdG9yaWVzIGFyZSByZXNwZWN0ZWQuCisgICBkaXI9YGVjaG8gIiRvYmplY3QiIHwgc2VkIC1lICdzfC9bXi9dKiR8L3wnYAorICAgdGVzdCAieCRkaXIiID0gIngkb2JqZWN0IiAmJiBkaXI9CisgICBiYXNlPWBlY2hvICIkb2JqZWN0IiB8IHNlZCAtZSAnc3xeLiovfHwnIC1lICdzL1wubyQvLycgLWUgJ3MvXC5sbyQvLydgCisKKyAgIGlmIHRlc3QgIiRsaWJ0b29sIiA9IHllczsgdGhlbgorICAgICAgIyBXaXRoIFRydTY0IGNjLCBzaGFyZWQgb2JqZWN0cyBjYW4gYWxzbyBiZSB1c2VkIHRvIG1ha2UgYQorICAgICAgIyBzdGF0aWMgbGlicmFyeS4gIFRoaXMgbWVjaGFuaXNtIGlzIHVzZWQgaW4gbGlidG9vbCAxLjQgc2VyaWVzIHRvCisgICAgICAjIGhhbmRsZSBib3RoIHNoYXJlZCBhbmQgc3RhdGljIGxpYnJhcmllcyBpbiBhIHNpbmdsZSBjb21waWxhdGlvbi4KKyAgICAgICMgV2l0aCBsaWJ0b29sIDEuNCwgZGVwZW5kZW5jaWVzIHdlcmUgb3V0cHV0IGluICRkaXIubGlicy8kYmFzZS5sby5kLgorICAgICAgIworICAgICAgIyBXaXRoIGxpYnRvb2wgMS41IHRoaXMgZXhjZXB0aW9uIHdhcyByZW1vdmVkLCBhbmQgbGlidG9vbCBub3cKKyAgICAgICMgZ2VuZXJhdGVzIDIgc2VwYXJhdGUgb2JqZWN0cyBmb3IgdGhlIDIgbGlicmFyaWVzLiAgVGhlc2UgdHdvCisgICAgICAjIGNvbXBpbGF0aW9ucyBvdXRwdXQgZGVwZW5kZW5jaWVzIGluICRkaXIubGlicy8kYmFzZS5vLmQgYW5kCisgICAgICAjIGluICRkaXIkYmFzZS5vLmQuICBXZSBoYXZlIHRvIGNoZWNrIGZvciBib3RoIGZpbGVzLCBiZWNhdXNlCisgICAgICAjIG9uZSBvZiB0aGUgdHdvIGNvbXBpbGF0aW9ucyBjYW4gYmUgZGlzYWJsZWQuICBXZSBzaG91bGQgcHJlZmVyCisgICAgICAjICRkaXIkYmFzZS5vLmQgb3ZlciAkZGlyLmxpYnMvJGJhc2Uuby5kIGJlY2F1c2UgdGhlIGxhdHRlciBpcworICAgICAgIyBhdXRvbWF0aWNhbGx5IGNsZWFuZWQgd2hlbiAubGlicy8gaXMgZGVsZXRlZCwgd2hpbGUgaWdub3JpbmcKKyAgICAgICMgdGhlIGZvcm1lciB3b3VsZCBjYXVzZSBhIGRpc3RjbGVhbmNoZWNrIHBhbmljLgorICAgICAgdG1wZGVwZmlsZTE9JGRpci5saWJzLyRiYXNlLmxvLmQgICAjIGxpYnRvb2wgMS40CisgICAgICB0bXBkZXBmaWxlMj0kZGlyJGJhc2Uuby5kICAgICAgICAgICMgbGlidG9vbCAxLjUKKyAgICAgIHRtcGRlcGZpbGUzPSRkaXIubGlicy8kYmFzZS5vLmQgICAgIyBsaWJ0b29sIDEuNQorICAgICAgdG1wZGVwZmlsZTQ9JGRpci5saWJzLyRiYXNlLmQgICAgICAjIENvbXBhcSBDQ0MgVjYuMi01MDQKKyAgICAgICIkQCIgLVdjLC1NRAorICAgZWxzZQorICAgICAgdG1wZGVwZmlsZTE9JGRpciRiYXNlLm8uZAorICAgICAgdG1wZGVwZmlsZTI9JGRpciRiYXNlLmQKKyAgICAgIHRtcGRlcGZpbGUzPSRkaXIkYmFzZS5kCisgICAgICB0bXBkZXBmaWxlND0kZGlyJGJhc2UuZAorICAgICAgIiRAIiAtTUQKKyAgIGZpCisKKyAgIHN0YXQ9JD8KKyAgIGlmIHRlc3QgJHN0YXQgLWVxIDA7IHRoZW4gOgorICAgZWxzZQorICAgICAgcm0gLWYgIiR0bXBkZXBmaWxlMSIgIiR0bXBkZXBmaWxlMiIgIiR0bXBkZXBmaWxlMyIgIiR0bXBkZXBmaWxlNCIKKyAgICAgIGV4aXQgJHN0YXQKKyAgIGZpCisKKyAgIGZvciB0bXBkZXBmaWxlIGluICIkdG1wZGVwZmlsZTEiICIkdG1wZGVwZmlsZTIiICIkdG1wZGVwZmlsZTMiICIkdG1wZGVwZmlsZTQiCisgICBkbworICAgICB0ZXN0IC1mICIkdG1wZGVwZmlsZSIgJiYgYnJlYWsKKyAgIGRvbmUKKyAgIGlmIHRlc3QgLWYgIiR0bXBkZXBmaWxlIjsgdGhlbgorICAgICAgc2VkIC1lICJzLF4uKlwuW2Etel0qOiwkb2JqZWN0OiwiIDwgIiR0bXBkZXBmaWxlIiA+ICIkZGVwZmlsZSIKKyAgICAgICMgVGhhdCdzIGEgdGFiIGFuZCBhIHNwYWNlIGluIHRoZSBbXS4KKyAgICAgIHNlZCAtZSAncyxeLipcLlthLXpdKjpbCSBdKiwsJyAtZSAncywkLDosJyA8ICIkdG1wZGVwZmlsZSIgPj4gIiRkZXBmaWxlIgorICAgZWxzZQorICAgICAgZWNobyAiI2R1bW15IiA+ICIkZGVwZmlsZSIKKyAgIGZpCisgICBybSAtZiAiJHRtcGRlcGZpbGUiCisgICA7OworCisjbm9zaWRlZWZmZWN0KQorICAjIFRoaXMgY29tbWVudCBhYm92ZSBpcyB1c2VkIGJ5IGF1dG9tYWtlIHRvIHRlbGwgc2lkZS1lZmZlY3QKKyAgIyBkZXBlbmRlbmN5IHRyYWNraW5nIG1lY2hhbmlzbXMgZnJvbSBzbG93ZXIgb25lcy4KKworZGFzaG1zdGRvdXQpCisgICMgSW1wb3J0YW50IG5vdGU6IGluIG9yZGVyIHRvIHN1cHBvcnQgdGhpcyBtb2RlLCBhIGNvbXBpbGVyICptdXN0KgorICAjIGFsd2F5cyB3cml0ZSB0aGUgcHJlcHJvY2Vzc2VkIGZpbGUgdG8gc3Rkb3V0LCByZWdhcmRsZXNzIG9mIC1vLgorICAiJEAiIHx8IGV4aXQgJD8KKworICAjIFJlbW92ZSB0aGUgY2FsbCB0byBMaWJ0b29sLgorICBpZiB0ZXN0ICIkbGlidG9vbCIgPSB5ZXM7IHRoZW4KKyAgICB3aGlsZSB0ZXN0ICJYJDEiICE9ICdYLS1tb2RlPWNvbXBpbGUnOyBkbworICAgICAgc2hpZnQKKyAgICBkb25lCisgICAgc2hpZnQKKyAgZmkKKworICAjIFJlbW92ZSBgLW8gJG9iamVjdCcuCisgIElGUz0iICIKKyAgZm9yIGFyZworICBkbworICAgIGNhc2UgJGFyZyBpbgorICAgIC1vKQorICAgICAgc2hpZnQKKyAgICAgIDs7CisgICAgJG9iamVjdCkKKyAgICAgIHNoaWZ0CisgICAgICA7OworICAgICopCisgICAgICBzZXQgZm5vcmQgIiRAIiAiJGFyZyIKKyAgICAgIHNoaWZ0ICMgZm5vcmQKKyAgICAgIHNoaWZ0ICMgJGFyZworICAgICAgOzsKKyAgICBlc2FjCisgIGRvbmUKKworICB0ZXN0IC16ICIkZGFzaG1mbGFnIiAmJiBkYXNobWZsYWc9LU0KKyAgIyBSZXF1aXJlIGF0IGxlYXN0IHR3byBjaGFyYWN0ZXJzIGJlZm9yZSBzZWFyY2hpbmcgZm9yIGA6JworICAjIGluIHRoZSB0YXJnZXQgbmFtZS4gIFRoaXMgaXMgdG8gY29wZSB3aXRoIERPUy1zdHlsZSBmaWxlbmFtZXM6CisgICMgYSBkZXBlbmRlbmN5IHN1Y2ggYXMgYGM6L2Zvby9iYXInIGNvdWxkIGJlIHNlZW4gYXMgdGFyZ2V0IGBjJyBvdGhlcndpc2UuCisgICIkQCIgJGRhc2htZmxhZyB8CisgICAgc2VkICdzOl5bICBdKlteOiBdW146XVteOl0qXDpbICAgIF0qOiciJG9iamVjdCInXDogOicgPiAiJHRtcGRlcGZpbGUiCisgIHJtIC1mICIkZGVwZmlsZSIKKyAgY2F0IDwgIiR0bXBkZXBmaWxlIiA+ICIkZGVwZmlsZSIKKyAgdHIgJyAnICcKKycgPCAiJHRtcGRlcGZpbGUiIHwgXAorIyMgU29tZSB2ZXJzaW9ucyBvZiB0aGUgSFBVWCAxMC4yMCBzZWQgY2FuJ3QgcHJvY2VzcyB0aGlzIGludm9jYXRpb24KKyMjIGNvcnJlY3RseS4gIEJyZWFraW5nIGl0IGludG8gdHdvIHNlZCBpbnZvY2F0aW9ucyBpcyBhIHdvcmthcm91bmQuCisgICAgc2VkIC1lICdzL15cXCQvLycgLWUgJy9eJC9kJyAtZSAnLzokL2QnIHwgc2VkIC1lICdzLyQvIDovJyA+PiAiJGRlcGZpbGUiCisgIHJtIC1mICIkdG1wZGVwZmlsZSIKKyAgOzsKKworZGFzaFhtc3Rkb3V0KQorICAjIFRoaXMgY2FzZSBvbmx5IGV4aXN0cyB0byBzYXRpc2Z5IGRlcGVuZC5tNC4gIEl0IGlzIG5ldmVyIGFjdHVhbGx5CisgICMgcnVuLCBhcyB0aGlzIG1vZGUgaXMgc3BlY2lhbGx5IHJlY29nbml6ZWQgaW4gdGhlIHByZWFtYmxlLgorICBleGl0IDEKKyAgOzsKKworbWFrZWRlcGVuZCkKKyAgIiRAIiB8fCBleGl0ICQ/CisgICMgUmVtb3ZlIGFueSBMaWJ0b29sIGNhbGwKKyAgaWYgdGVzdCAiJGxpYnRvb2wiID0geWVzOyB0aGVuCisgICAgd2hpbGUgdGVzdCAiWCQxIiAhPSAnWC0tbW9kZT1jb21waWxlJzsgZG8KKyAgICAgIHNoaWZ0CisgICAgZG9uZQorICAgIHNoaWZ0CisgIGZpCisgICMgWCBtYWtlZGVwZW5kCisgIHNoaWZ0CisgIGNsZWFyZWQ9bm8gZWF0PW5vCisgIGZvciBhcmcKKyAgZG8KKyAgICBjYXNlICRjbGVhcmVkIGluCisgICAgbm8pCisgICAgICBzZXQgIiI7IHNoaWZ0CisgICAgICBjbGVhcmVkPXllcyA7OworICAgIGVzYWMKKyAgICBpZiB0ZXN0ICRlYXQgPSB5ZXM7IHRoZW4KKyAgICAgIGVhdD1ubworICAgICAgY29udGludWUKKyAgICBmaQorICAgIGNhc2UgIiRhcmciIGluCisgICAgLUQqfC1JKikKKyAgICAgIHNldCBmbm9yZCAiJEAiICIkYXJnIjsgc2hpZnQgOzsKKyAgICAjIFN0cmlwIGFueSBvcHRpb24gdGhhdCBtYWtlZGVwZW5kIG1heSBub3QgdW5kZXJzdGFuZC4gIFJlbW92ZQorICAgICMgdGhlIG9iamVjdCB0b28sIG90aGVyd2lzZSBtYWtlZGVwZW5kIHdpbGwgcGFyc2UgaXQgYXMgYSBzb3VyY2UgZmlsZS4KKyAgICAtYXJjaCkKKyAgICAgIGVhdD15ZXMgOzsKKyAgICAtKnwkb2JqZWN0KQorICAgICAgOzsKKyAgICAqKQorICAgICAgc2V0IGZub3JkICIkQCIgIiRhcmciOyBzaGlmdCA7OworICAgIGVzYWMKKyAgZG9uZQorICBvYmpfc3VmZml4PWBlY2hvICIkb2JqZWN0IiB8IHNlZCAncy9eLipcLi8uLydgCisgIHRvdWNoICIkdG1wZGVwZmlsZSIKKyAgJHtNQUtFREVQRU5ELW1ha2VkZXBlbmR9IC1vIiRvYmpfc3VmZml4IiAtZiIkdG1wZGVwZmlsZSIgIiRAIgorICBybSAtZiAiJGRlcGZpbGUiCisgIGNhdCA8ICIkdG1wZGVwZmlsZSIgPiAiJGRlcGZpbGUiCisgIHNlZCAnMSwyZCcgIiR0bXBkZXBmaWxlIiB8IHRyICcgJyAnCisnIHwgXAorIyMgU29tZSB2ZXJzaW9ucyBvZiB0aGUgSFBVWCAxMC4yMCBzZWQgY2FuJ3QgcHJvY2VzcyB0aGlzIGludm9jYXRpb24KKyMjIGNvcnJlY3RseS4gIEJyZWFraW5nIGl0IGludG8gdHdvIHNlZCBpbnZvY2F0aW9ucyBpcyBhIHdvcmthcm91bmQuCisgICAgc2VkIC1lICdzL15cXCQvLycgLWUgJy9eJC9kJyAtZSAnLzokL2QnIHwgc2VkIC1lICdzLyQvIDovJyA+PiAiJGRlcGZpbGUiCisgIHJtIC1mICIkdG1wZGVwZmlsZSIgIiR0bXBkZXBmaWxlIi5iYWsKKyAgOzsKKworY3BwKQorICAjIEltcG9ydGFudCBub3RlOiBpbiBvcmRlciB0byBzdXBwb3J0IHRoaXMgbW9kZSwgYSBjb21waWxlciAqbXVzdCoKKyAgIyBhbHdheXMgd3JpdGUgdGhlIHByZXByb2Nlc3NlZCBmaWxlIHRvIHN0ZG91dC4KKyAgIiRAIiB8fCBleGl0ICQ/CisKKyAgIyBSZW1vdmUgdGhlIGNhbGwgdG8gTGlidG9vbC4KKyAgaWYgdGVzdCAiJGxpYnRvb2wiID0geWVzOyB0aGVuCisgICAgd2hpbGUgdGVzdCAiWCQxIiAhPSAnWC0tbW9kZT1jb21waWxlJzsgZG8KKyAgICAgIHNoaWZ0CisgICAgZG9uZQorICAgIHNoaWZ0CisgIGZpCisKKyAgIyBSZW1vdmUgYC1vICRvYmplY3QnLgorICBJRlM9IiAiCisgIGZvciBhcmcKKyAgZG8KKyAgICBjYXNlICRhcmcgaW4KKyAgICAtbykKKyAgICAgIHNoaWZ0CisgICAgICA7OworICAgICRvYmplY3QpCisgICAgICBzaGlmdAorICAgICAgOzsKKyAgICAqKQorICAgICAgc2V0IGZub3JkICIkQCIgIiRhcmciCisgICAgICBzaGlmdCAjIGZub3JkCisgICAgICBzaGlmdCAjICRhcmcKKyAgICAgIDs7CisgICAgZXNhYworICBkb25lCisKKyAgIiRAIiAtRSB8CisgICAgc2VkIC1uIC1lICcvXiMgWzAtOV1bMC05XSogIlwoW14iXSpcKSIuKi8gczo6IFwxIFxcOnAnIFwKKyAgICAgICAtZSAnL14jbGluZSBbMC05XVswLTldKiAiXChbXiJdKlwpIi4qLyBzOjogXDEgXFw6cCcgfAorICAgIHNlZCAnJCBzOiBcXCQ6OicgPiAiJHRtcGRlcGZpbGUiCisgIHJtIC1mICIkZGVwZmlsZSIKKyAgZWNobyAiJG9iamVjdCA6IFxcIiA+ICIkZGVwZmlsZSIKKyAgY2F0IDwgIiR0bXBkZXBmaWxlIiA+PiAiJGRlcGZpbGUiCisgIHNlZCA8ICIkdG1wZGVwZmlsZSIgJy9eJC9kO3MvXiAvLztzLyBcXCQvLztzLyQvIDovJyA+PiAiJGRlcGZpbGUiCisgIHJtIC1mICIkdG1wZGVwZmlsZSIKKyAgOzsKKworbXN2aXN1YWxjcHApCisgICMgSW1wb3J0YW50IG5vdGU6IGluIG9yZGVyIHRvIHN1cHBvcnQgdGhpcyBtb2RlLCBhIGNvbXBpbGVyICptdXN0KgorICAjIGFsd2F5cyB3cml0ZSB0aGUgcHJlcHJvY2Vzc2VkIGZpbGUgdG8gc3Rkb3V0LgorICAiJEAiIHx8IGV4aXQgJD8KKworICAjIFJlbW92ZSB0aGUgY2FsbCB0byBMaWJ0b29sLgorICBpZiB0ZXN0ICIkbGlidG9vbCIgPSB5ZXM7IHRoZW4KKyAgICB3aGlsZSB0ZXN0ICJYJDEiICE9ICdYLS1tb2RlPWNvbXBpbGUnOyBkbworICAgICAgc2hpZnQKKyAgICBkb25lCisgICAgc2hpZnQKKyAgZmkKKworICBJRlM9IiAiCisgIGZvciBhcmcKKyAgZG8KKyAgICBjYXNlICIkYXJnIiBpbgorICAgIC1vKQorICAgICAgc2hpZnQKKyAgICAgIDs7CisgICAgJG9iamVjdCkKKyAgICAgIHNoaWZ0CisgICAgICA7OworICAgICItR20ifCIvR20ifCItR2kifCIvR2kifCItWkkifCIvWkkiKQorCXNldCBmbm9yZCAiJEAiCisJc2hpZnQKKwlzaGlmdAorCTs7CisgICAgKikKKwlzZXQgZm5vcmQgIiRAIiAiJGFyZyIKKwlzaGlmdAorCXNoaWZ0CisJOzsKKyAgICBlc2FjCisgIGRvbmUKKyAgIiRAIiAtRSAyPi9kZXYvbnVsbCB8CisgIHNlZCAtbiAnL14jbGluZSBbMC05XVswLTldKiAiXChbXiJdKlwpIi8gczo6XDE6cCcgfCAkY3lncGF0aF91IHwgc29ydCAtdSA+ICIkdG1wZGVwZmlsZSIKKyAgcm0gLWYgIiRkZXBmaWxlIgorICBlY2hvICIkb2JqZWN0IDogXFwiID4gIiRkZXBmaWxlIgorICBzZWQgPCAiJHRtcGRlcGZpbGUiIC1uIC1lICdzJSAlXFwgJWcnIC1lICcvXlwoLipcKSQvIHM6OglcMSBcXDpwJyA+PiAiJGRlcGZpbGUiCisgIGVjaG8gIgkiID4+ICIkZGVwZmlsZSIKKyAgc2VkIDwgIiR0bXBkZXBmaWxlIiAtbiAtZSAncyUgJVxcICVnJyAtZSAnL15cKC4qXCkkLyBzOjpcMVw6OnAnID4+ICIkZGVwZmlsZSIKKyAgcm0gLWYgIiR0bXBkZXBmaWxlIgorICA7OworCittc3ZjbXN5cykKKyAgIyBUaGlzIGNhc2UgZXhpc3RzIG9ubHkgdG8gbGV0IGRlcGVuZC5tNCBkbyBpdHMgd29yay4gIEl0IHdvcmtzIGJ5CisgICMgbG9va2luZyBhdCB0aGUgdGV4dCBvZiB0aGlzIHNjcmlwdC4gIFRoaXMgY2FzZSB3aWxsIG5ldmVyIGJlIHJ1biwKKyAgIyBzaW5jZSBpdCBpcyBjaGVja2VkIGZvciBhYm92ZS4KKyAgZXhpdCAxCisgIDs7CisKK25vbmUpCisgIGV4ZWMgIiRAIgorICA7OworCisqKQorICBlY2hvICJVbmtub3duIGRlcG1vZGUgJGRlcG1vZGUiIDE+JjIKKyAgZXhpdCAxCisgIDs7Citlc2FjCisKK2V4aXQgMAorCisjIExvY2FsIFZhcmlhYmxlczoKKyMgbW9kZTogc2hlbGwtc2NyaXB0CisjIHNoLWluZGVudGF0aW9uOiAyCisjIGV2YWw6IChhZGQtaG9vayAnd3JpdGUtZmlsZS1ob29rcyAndGltZS1zdGFtcCkKKyMgdGltZS1zdGFtcC1zdGFydDogInNjcmlwdHZlcnNpb249IgorIyB0aW1lLXN0YW1wLWZvcm1hdDogIiU6eS0lMDJtLSUwMmQuJTAySCIKKyMgdGltZS1zdGFtcC10aW1lLXpvbmU6ICJVVEMiCisjIHRpbWUtc3RhbXAtZW5kOiAiOyAjIFVUQyIKKyMgRW5kOgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9idWlsZC1hdXgvaW5zdGFsbC1zaCBiL2Rwa2ctMS4xNi4xLjEvYnVpbGQtYXV4L2luc3RhbGwtc2gKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMC4uNjc4MWI5OAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvYnVpbGQtYXV4L2luc3RhbGwtc2gKQEAgLTAsMCArMSw1MjAgQEAKKyMhL2Jpbi9zaAorIyBpbnN0YWxsIC0gaW5zdGFsbCBhIHByb2dyYW0sIHNjcmlwdCwgb3IgZGF0YWZpbGUKKworc2NyaXB0dmVyc2lvbj0yMDA5LTA0LTI4LjIxOyAjIFVUQworCisjIFRoaXMgb3JpZ2luYXRlcyBmcm9tIFgxMVI1IChtaXQvdXRpbC9zY3JpcHRzL2luc3RhbGwuc2gpLCB3aGljaCB3YXMKKyMgbGF0ZXIgcmVsZWFzZWQgaW4gWDExUjYgKHhjL2NvbmZpZy91dGlsL2luc3RhbGwuc2gpIHdpdGggdGhlCisjIGZvbGxvd2luZyBjb3B5cmlnaHQgYW5kIGxpY2Vuc2UuCisjCisjIENvcHlyaWdodCAoQykgMTk5NCBYIENvbnNvcnRpdW0KKyMKKyMgUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weQorIyBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSAiU29mdHdhcmUiKSwgdG8KKyMgZGVhbCBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUKKyMgcmlnaHRzIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yCisjIHNlbGwgY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzCisjIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6CisjCisjIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluCisjIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLgorIworIyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgIkFTIElTIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUgorIyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSwKKyMgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRQorIyBYIENPTlNPUlRJVU0gQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVIgTElBQklMSVRZLCBXSEVUSEVSIElOCisjIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSwgT1VUIE9GIE9SIElOIENPTk5FQy0KKyMgVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOIFRIRSBTT0ZUV0FSRS4KKyMKKyMgRXhjZXB0IGFzIGNvbnRhaW5lZCBpbiB0aGlzIG5vdGljZSwgdGhlIG5hbWUgb2YgdGhlIFggQ29uc29ydGl1bSBzaGFsbCBub3QKKyMgYmUgdXNlZCBpbiBhZHZlcnRpc2luZyBvciBvdGhlcndpc2UgdG8gcHJvbW90ZSB0aGUgc2FsZSwgdXNlIG9yIG90aGVyIGRlYWwtCisjIGluZ3MgaW4gdGhpcyBTb2Z0d2FyZSB3aXRob3V0IHByaW9yIHdyaXR0ZW4gYXV0aG9yaXphdGlvbiBmcm9tIHRoZSBYIENvbnNvci0KKyMgdGl1bS4KKyMKKyMKKyMgRlNGIGNoYW5nZXMgdG8gdGhpcyBmaWxlIGFyZSBpbiB0aGUgcHVibGljIGRvbWFpbi4KKyMKKyMgQ2FsbGluZyB0aGlzIHNjcmlwdCBpbnN0YWxsLXNoIGlzIHByZWZlcnJlZCBvdmVyIGluc3RhbGwuc2gsIHRvIHByZXZlbnQKKyMgYG1ha2UnIGltcGxpY2l0IHJ1bGVzIGZyb20gY3JlYXRpbmcgYSBmaWxlIGNhbGxlZCBpbnN0YWxsIGZyb20gaXQKKyMgd2hlbiB0aGVyZSBpcyBubyBNYWtlZmlsZS4KKyMKKyMgVGhpcyBzY3JpcHQgaXMgY29tcGF0aWJsZSB3aXRoIHRoZSBCU0QgaW5zdGFsbCBzY3JpcHQsIGJ1dCB3YXMgd3JpdHRlbgorIyBmcm9tIHNjcmF0Y2guCisKK25sPScKKycKK0lGUz0iICIiCSRubCIKKworIyBzZXQgRE9JVFBST0cgdG8gZWNobyB0byB0ZXN0IHRoaXMgc2NyaXB0CisKKyMgRG9uJ3QgdXNlIDotIHNpbmNlIDQuM0JTRCBhbmQgZWFybGllciBzaGVsbHMgZG9uJ3QgbGlrZSBpdC4KK2RvaXQ9JHtET0lUUFJPRy19CitpZiB0ZXN0IC16ICIkZG9pdCI7IHRoZW4KKyAgZG9pdF9leGVjPWV4ZWMKK2Vsc2UKKyAgZG9pdF9leGVjPSRkb2l0CitmaQorCisjIFB1dCBpbiBhYnNvbHV0ZSBmaWxlIG5hbWVzIGlmIHlvdSBkb24ndCBoYXZlIHRoZW0gaW4geW91ciBwYXRoOworIyBvciB1c2UgZW52aXJvbm1lbnQgdmFycy4KKworY2hncnBwcm9nPSR7Q0hHUlBQUk9HLWNoZ3JwfQorY2htb2Rwcm9nPSR7Q0hNT0RQUk9HLWNobW9kfQorY2hvd25wcm9nPSR7Q0hPV05QUk9HLWNob3dufQorY21wcHJvZz0ke0NNUFBST0ctY21wfQorY3Bwcm9nPSR7Q1BQUk9HLWNwfQorbWtkaXJwcm9nPSR7TUtESVJQUk9HLW1rZGlyfQorbXZwcm9nPSR7TVZQUk9HLW12fQorcm1wcm9nPSR7Uk1QUk9HLXJtfQorc3RyaXBwcm9nPSR7U1RSSVBQUk9HLXN0cmlwfQorCitwb3NpeF9nbG9iPSc/JworaW5pdGlhbGl6ZV9wb3NpeF9nbG9iPScKKyAgdGVzdCAiJHBvc2l4X2dsb2IiICE9ICI/IiB8fCB7CisgICAgaWYgKHNldCAtZikgMj4vZGV2L251bGw7IHRoZW4KKyAgICAgIHBvc2l4X2dsb2I9CisgICAgZWxzZQorICAgICAgcG9zaXhfZ2xvYj06CisgICAgZmkKKyAgfQorJworCitwb3NpeF9ta2Rpcj0KKworIyBEZXNpcmVkIG1vZGUgb2YgaW5zdGFsbGVkIGZpbGUuCittb2RlPTA3NTUKKworY2hncnBjbWQ9CitjaG1vZGNtZD0kY2htb2Rwcm9nCitjaG93bmNtZD0KK212Y21kPSRtdnByb2cKK3JtY21kPSIkcm1wcm9nIC1mIgorc3RyaXBjbWQ9CisKK3NyYz0KK2RzdD0KK2Rpcl9hcmc9Citkc3RfYXJnPQorCitjb3B5X29uX2NoYW5nZT1mYWxzZQorbm9fdGFyZ2V0X2RpcmVjdG9yeT0KKwordXNhZ2U9IlwKK1VzYWdlOiAkMCBbT1BUSU9OXS4uLiBbLVRdIFNSQ0ZJTEUgRFNURklMRQorICAgb3I6ICQwIFtPUFRJT05dLi4uIFNSQ0ZJTEVTLi4uIERJUkVDVE9SWQorICAgb3I6ICQwIFtPUFRJT05dLi4uIC10IERJUkVDVE9SWSBTUkNGSUxFUy4uLgorICAgb3I6ICQwIFtPUFRJT05dLi4uIC1kIERJUkVDVE9SSUVTLi4uCisKK0luIHRoZSAxc3QgZm9ybSwgY29weSBTUkNGSUxFIHRvIERTVEZJTEUuCitJbiB0aGUgMm5kIGFuZCAzcmQsIGNvcHkgYWxsIFNSQ0ZJTEVTIHRvIERJUkVDVE9SWS4KK0luIHRoZSA0dGgsIGNyZWF0ZSBESVJFQ1RPUklFUy4KKworT3B0aW9uczoKKyAgICAgLS1oZWxwICAgICBkaXNwbGF5IHRoaXMgaGVscCBhbmQgZXhpdC4KKyAgICAgLS12ZXJzaW9uICBkaXNwbGF5IHZlcnNpb24gaW5mbyBhbmQgZXhpdC4KKworICAtYyAgICAgICAgICAgIChpZ25vcmVkKQorICAtQyAgICAgICAgICAgIGluc3RhbGwgb25seSBpZiBkaWZmZXJlbnQgKHByZXNlcnZlIHRoZSBsYXN0IGRhdGEgbW9kaWZpY2F0aW9uIHRpbWUpCisgIC1kICAgICAgICAgICAgY3JlYXRlIGRpcmVjdG9yaWVzIGluc3RlYWQgb2YgaW5zdGFsbGluZyBmaWxlcy4KKyAgLWcgR1JPVVAgICAgICAkY2hncnBwcm9nIGluc3RhbGxlZCBmaWxlcyB0byBHUk9VUC4KKyAgLW0gTU9ERSAgICAgICAkY2htb2Rwcm9nIGluc3RhbGxlZCBmaWxlcyB0byBNT0RFLgorICAtbyBVU0VSICAgICAgICRjaG93bnByb2cgaW5zdGFsbGVkIGZpbGVzIHRvIFVTRVIuCisgIC1zICAgICAgICAgICAgJHN0cmlwcHJvZyBpbnN0YWxsZWQgZmlsZXMuCisgIC10IERJUkVDVE9SWSAgaW5zdGFsbCBpbnRvIERJUkVDVE9SWS4KKyAgLVQgICAgICAgICAgICByZXBvcnQgYW4gZXJyb3IgaWYgRFNURklMRSBpcyBhIGRpcmVjdG9yeS4KKworRW52aXJvbm1lbnQgdmFyaWFibGVzIG92ZXJyaWRlIHRoZSBkZWZhdWx0IGNvbW1hbmRzOgorICBDSEdSUFBST0cgQ0hNT0RQUk9HIENIT1dOUFJPRyBDTVBQUk9HIENQUFJPRyBNS0RJUlBST0cgTVZQUk9HCisgIFJNUFJPRyBTVFJJUFBST0cKKyIKKword2hpbGUgdGVzdCAkIyAtbmUgMDsgZG8KKyAgY2FzZSAkMSBpbgorICAgIC1jKSA7OworCisgICAgLUMpIGNvcHlfb25fY2hhbmdlPXRydWU7OworCisgICAgLWQpIGRpcl9hcmc9dHJ1ZTs7CisKKyAgICAtZykgY2hncnBjbWQ9IiRjaGdycHByb2cgJDIiCisJc2hpZnQ7OworCisgICAgLS1oZWxwKSBlY2hvICIkdXNhZ2UiOyBleGl0ICQ/OzsKKworICAgIC1tKSBtb2RlPSQyCisJY2FzZSAkbW9kZSBpbgorCSAgKicgJyogfCAqJwknKiB8IConCisnKgkgIHwgKicqJyogfCAqJz8nKiB8IConWycqKQorCSAgICBlY2hvICIkMDogaW52YWxpZCBtb2RlOiAkbW9kZSIgPiYyCisJICAgIGV4aXQgMTs7CisJZXNhYworCXNoaWZ0OzsKKworICAgIC1vKSBjaG93bmNtZD0iJGNob3ducHJvZyAkMiIKKwlzaGlmdDs7CisKKyAgICAtcykgc3RyaXBjbWQ9JHN0cmlwcHJvZzs7CisKKyAgICAtdCkgZHN0X2FyZz0kMgorCXNoaWZ0OzsKKworICAgIC1UKSBub190YXJnZXRfZGlyZWN0b3J5PXRydWU7OworCisgICAgLS12ZXJzaW9uKSBlY2hvICIkMCAkc2NyaXB0dmVyc2lvbiI7IGV4aXQgJD87OworCisgICAgLS0pCXNoaWZ0CisJYnJlYWs7OworCisgICAgLSopCWVjaG8gIiQwOiBpbnZhbGlkIG9wdGlvbjogJDEiID4mMgorCWV4aXQgMTs7CisKKyAgICAqKSAgYnJlYWs7OworICBlc2FjCisgIHNoaWZ0Citkb25lCisKK2lmIHRlc3QgJCMgLW5lIDAgJiYgdGVzdCAteiAiJGRpcl9hcmckZHN0X2FyZyI7IHRoZW4KKyAgIyBXaGVuIC1kIGlzIHVzZWQsIGFsbCByZW1haW5pbmcgYXJndW1lbnRzIGFyZSBkaXJlY3RvcmllcyB0byBjcmVhdGUuCisgICMgV2hlbiAtdCBpcyB1c2VkLCB0aGUgZGVzdGluYXRpb24gaXMgYWxyZWFkeSBzcGVjaWZpZWQuCisgICMgT3RoZXJ3aXNlLCB0aGUgbGFzdCBhcmd1bWVudCBpcyB0aGUgZGVzdGluYXRpb24uICBSZW1vdmUgaXQgZnJvbSAkQC4KKyAgZm9yIGFyZworICBkbworICAgIGlmIHRlc3QgLW4gIiRkc3RfYXJnIjsgdGhlbgorICAgICAgIyAkQCBpcyBub3QgZW1wdHk6IGl0IGNvbnRhaW5zIGF0IGxlYXN0ICRhcmcuCisgICAgICBzZXQgZm5vcmQgIiRAIiAiJGRzdF9hcmciCisgICAgICBzaGlmdCAjIGZub3JkCisgICAgZmkKKyAgICBzaGlmdCAjIGFyZworICAgIGRzdF9hcmc9JGFyZworICBkb25lCitmaQorCitpZiB0ZXN0ICQjIC1lcSAwOyB0aGVuCisgIGlmIHRlc3QgLXogIiRkaXJfYXJnIjsgdGhlbgorICAgIGVjaG8gIiQwOiBubyBpbnB1dCBmaWxlIHNwZWNpZmllZC4iID4mMgorICAgIGV4aXQgMQorICBmaQorICAjIEl0J3MgT0sgdG8gY2FsbCBgaW5zdGFsbC1zaCAtZCcgd2l0aG91dCBhcmd1bWVudC4KKyAgIyBUaGlzIGNhbiBoYXBwZW4gd2hlbiBjcmVhdGluZyBjb25kaXRpb25hbCBkaXJlY3Rvcmllcy4KKyAgZXhpdCAwCitmaQorCitpZiB0ZXN0IC16ICIkZGlyX2FyZyI7IHRoZW4KKyAgdHJhcCAnKGV4aXQgJD8pOyBleGl0JyAxIDIgMTMgMTUKKworICAjIFNldCB1bWFzayBzbyBhcyBub3QgdG8gY3JlYXRlIHRlbXBzIHdpdGggdG9vLWdlbmVyb3VzIG1vZGVzLgorICAjIEhvd2V2ZXIsICdzdHJpcCcgcmVxdWlyZXMgYm90aCByZWFkIGFuZCB3cml0ZSBhY2Nlc3MgdG8gdGVtcHMuCisgIGNhc2UgJG1vZGUgaW4KKyAgICAjIE9wdGltaXplIGNvbW1vbiBjYXNlcy4KKyAgICAqNjQ0KSBjcF91bWFzaz0xMzM7OworICAgICo3NTUpIGNwX3VtYXNrPTIyOzsKKworICAgICpbMC03XSkKKyAgICAgIGlmIHRlc3QgLXogIiRzdHJpcGNtZCI7IHRoZW4KKwl1X3BsdXNfcnc9CisgICAgICBlbHNlCisJdV9wbHVzX3J3PSclIDIwMCcKKyAgICAgIGZpCisgICAgICBjcF91bWFzaz1gZXhwciAnKCcgNzc3IC0gJG1vZGUgJSAxMDAwICcpJyAkdV9wbHVzX3J3YDs7CisgICAgKikKKyAgICAgIGlmIHRlc3QgLXogIiRzdHJpcGNtZCI7IHRoZW4KKwl1X3BsdXNfcnc9CisgICAgICBlbHNlCisJdV9wbHVzX3J3PSx1K3J3CisgICAgICBmaQorICAgICAgY3BfdW1hc2s9JG1vZGUkdV9wbHVzX3J3OzsKKyAgZXNhYworZmkKKworZm9yIHNyYworZG8KKyAgIyBQcm90ZWN0IG5hbWVzIHN0YXJ0aW5nIHdpdGggYC0nLgorICBjYXNlICRzcmMgaW4KKyAgICAtKikgc3JjPS4vJHNyYzs7CisgIGVzYWMKKworICBpZiB0ZXN0IC1uICIkZGlyX2FyZyI7IHRoZW4KKyAgICBkc3Q9JHNyYworICAgIGRzdGRpcj0kZHN0CisgICAgdGVzdCAtZCAiJGRzdGRpciIKKyAgICBkc3RkaXJfc3RhdHVzPSQ/CisgIGVsc2UKKworICAgICMgV2FpdGluZyBmb3IgdGhpcyB0byBiZSBkZXRlY3RlZCBieSB0aGUgIiRjcHByb2cgJHNyYyAkZHN0dG1wIiBjb21tYW5kCisgICAgIyBtaWdodCBjYXVzZSBkaXJlY3RvcmllcyB0byBiZSBjcmVhdGVkLCB3aGljaCB3b3VsZCBiZSBlc3BlY2lhbGx5IGJhZAorICAgICMgaWYgJHNyYyAoYW5kIHRodXMgJGRzdHRtcCkgY29udGFpbnMgJyonLgorICAgIGlmIHRlc3QgISAtZiAiJHNyYyIgJiYgdGVzdCAhIC1kICIkc3JjIjsgdGhlbgorICAgICAgZWNobyAiJDA6ICRzcmMgZG9lcyBub3QgZXhpc3QuIiA+JjIKKyAgICAgIGV4aXQgMQorICAgIGZpCisKKyAgICBpZiB0ZXN0IC16ICIkZHN0X2FyZyI7IHRoZW4KKyAgICAgIGVjaG8gIiQwOiBubyBkZXN0aW5hdGlvbiBzcGVjaWZpZWQuIiA+JjIKKyAgICAgIGV4aXQgMQorICAgIGZpCisKKyAgICBkc3Q9JGRzdF9hcmcKKyAgICAjIFByb3RlY3QgbmFtZXMgc3RhcnRpbmcgd2l0aCBgLScuCisgICAgY2FzZSAkZHN0IGluCisgICAgICAtKikgZHN0PS4vJGRzdDs7CisgICAgZXNhYworCisgICAgIyBJZiBkZXN0aW5hdGlvbiBpcyBhIGRpcmVjdG9yeSwgYXBwZW5kIHRoZSBpbnB1dCBmaWxlbmFtZTsgd29uJ3Qgd29yaworICAgICMgaWYgZG91YmxlIHNsYXNoZXMgYXJlbid0IGlnbm9yZWQuCisgICAgaWYgdGVzdCAtZCAiJGRzdCI7IHRoZW4KKyAgICAgIGlmIHRlc3QgLW4gIiRub190YXJnZXRfZGlyZWN0b3J5IjsgdGhlbgorCWVjaG8gIiQwOiAkZHN0X2FyZzogSXMgYSBkaXJlY3RvcnkiID4mMgorCWV4aXQgMQorICAgICAgZmkKKyAgICAgIGRzdGRpcj0kZHN0CisgICAgICBkc3Q9JGRzdGRpci9gYmFzZW5hbWUgIiRzcmMiYAorICAgICAgZHN0ZGlyX3N0YXR1cz0wCisgICAgZWxzZQorICAgICAgIyBQcmVmZXIgZGlybmFtZSwgYnV0IGZhbGwgYmFjayBvbiBhIHN1YnN0aXR1dGUgaWYgZGlybmFtZSBmYWlscy4KKyAgICAgIGRzdGRpcj1gCisJKGRpcm5hbWUgIiRkc3QiKSAyPi9kZXYvbnVsbCB8fAorCWV4cHIgWCIkZHN0IiA6ICdYXCguKlteL11cKS8vKlteL11bXi9dKi8qJCcgXHwgXAorCSAgICAgWCIkZHN0IiA6ICdYXCgvL1wpW14vXScgXHwgXAorCSAgICAgWCIkZHN0IiA6ICdYXCgvL1wpJCcgXHwgXAorCSAgICAgWCIkZHN0IiA6ICdYXCgvXCknIFx8IC4gMj4vZGV2L251bGwgfHwKKwllY2hvIFgiJGRzdCIgfAorCSAgICBzZWQgJy9eWFwoLipbXi9dXClcL1wvKlteL11bXi9dKlwvKiQveworCQkgICBzLy9cMS8KKwkJICAgcQorCQkgfQorCQkgL15YXChcL1wvXClbXi9dLioveworCQkgICBzLy9cMS8KKwkJICAgcQorCQkgfQorCQkgL15YXChcL1wvXCkkL3sKKwkJICAgcy8vXDEvCisJCSAgIHEKKwkJIH0KKwkJIC9eWFwoXC9cKS4qL3sKKwkJICAgcy8vXDEvCisJCSAgIHEKKwkJIH0KKwkJIHMvLiovLi87IHEnCisgICAgICBgCisKKyAgICAgIHRlc3QgLWQgIiRkc3RkaXIiCisgICAgICBkc3RkaXJfc3RhdHVzPSQ/CisgICAgZmkKKyAgZmkKKworICBvYnNvbGV0ZV9ta2Rpcl91c2VkPWZhbHNlCisKKyAgaWYgdGVzdCAkZHN0ZGlyX3N0YXR1cyAhPSAwOyB0aGVuCisgICAgY2FzZSAkcG9zaXhfbWtkaXIgaW4KKyAgICAgICcnKQorCSMgQ3JlYXRlIGludGVybWVkaWF0ZSBkaXJzIHVzaW5nIG1vZGUgNzU1IGFzIG1vZGlmaWVkIGJ5IHRoZSB1bWFzay4KKwkjIFRoaXMgaXMgbGlrZSBGcmVlQlNEICdpbnN0YWxsJyBhcyBvZiAxOTk3LTEwLTI4LgorCXVtYXNrPWB1bWFza2AKKwljYXNlICRzdHJpcGNtZC4kdW1hc2sgaW4KKwkgICMgT3B0aW1pemUgY29tbW9uIGNhc2VzLgorCSAgKlsyMzY3XVsyMzY3XSkgbWtkaXJfdW1hc2s9JHVtYXNrOzsKKwkgIC4qMFswMl1bMDJdIHwgLlswMl1bMDJdIHwgLlswMl0pIG1rZGlyX3VtYXNrPTIyOzsKKworCSAgKlswLTddKQorCSAgICBta2Rpcl91bWFzaz1gZXhwciAkdW1hc2sgKyAyMiBcCisJICAgICAgLSAkdW1hc2sgJSAxMDAgJSA0MCArICR1bWFzayAlIDIwIFwKKwkgICAgICAtICR1bWFzayAlIDEwICUgNCArICR1bWFzayAlIDIKKwkgICAgYDs7CisJICAqKSBta2Rpcl91bWFzaz0kdW1hc2ssZ28tdzs7CisJZXNhYworCisJIyBXaXRoIC1kLCBjcmVhdGUgdGhlIG5ldyBkaXJlY3Rvcnkgd2l0aCB0aGUgdXNlci1zcGVjaWZpZWQgbW9kZS4KKwkjIE90aGVyd2lzZSwgcmVseSBvbiAkbWtkaXJfdW1hc2suCisJaWYgdGVzdCAtbiAiJGRpcl9hcmciOyB0aGVuCisJICBta2Rpcl9tb2RlPS1tJG1vZGUKKwllbHNlCisJICBta2Rpcl9tb2RlPQorCWZpCisKKwlwb3NpeF9ta2Rpcj1mYWxzZQorCWNhc2UgJHVtYXNrIGluCisJICAqWzEyMzU2N11bMC03XVswLTddKQorCSAgICAjIFBPU0lYIG1rZGlyIC1wIHNldHMgdSt3eCBiaXRzIHJlZ2FyZGxlc3Mgb2YgdW1hc2ssIHdoaWNoCisJICAgICMgaXMgaW5jb21wYXRpYmxlIHdpdGggRnJlZUJTRCAnaW5zdGFsbCcgd2hlbiAodW1hc2sgJiAzMDApICE9IDAuCisJICAgIDs7CisJICAqKQorCSAgICB0bXBkaXI9JHtUTVBESVItL3RtcH0vaW5zJFJBTkRPTS0kJAorCSAgICB0cmFwICdyZXQ9JD87IHJtZGlyICIkdG1wZGlyL2QiICIkdG1wZGlyIiAyPi9kZXYvbnVsbDsgZXhpdCAkcmV0JyAwCisKKwkgICAgaWYgKHVtYXNrICRta2Rpcl91bWFzayAmJgorCQlleGVjICRta2RpcnByb2cgJG1rZGlyX21vZGUgLXAgLS0gIiR0bXBkaXIvZCIpID4vZGV2L251bGwgMj4mMQorCSAgICB0aGVuCisJICAgICAgaWYgdGVzdCAteiAiJGRpcl9hcmciIHx8IHsKKwkJICAgIyBDaGVjayBmb3IgUE9TSVggaW5jb21wYXRpYmlsaXRpZXMgd2l0aCAtbS4KKwkJICAgIyBIUC1VWCAxMS4yMyBhbmQgSVJJWCA2LjUgbWtkaXIgLW0gLXAgc2V0cyBncm91cC0gb3IKKwkJICAgIyBvdGhlci13cml0ZWFibGUgYml0IG9mIHBhcmVudCBkaXJlY3Rvcnkgd2hlbiBpdCBzaG91bGRuJ3QuCisJCSAgICMgRnJlZUJTRCA2LjEgbWtkaXIgLW0gLXAgc2V0cyBtb2RlIG9mIGV4aXN0aW5nIGRpcmVjdG9yeS4KKwkJICAgbHNfbGRfdG1wZGlyPWBscyAtbGQgIiR0bXBkaXIiYAorCQkgICBjYXNlICRsc19sZF90bXBkaXIgaW4KKwkJICAgICBkPz8/Py0/ci0qKSBkaWZmZXJlbnRfbW9kZT03MDA7OworCQkgICAgIGQ/Pz8/LT8tLSopIGRpZmZlcmVudF9tb2RlPTc1NTs7CisJCSAgICAgKikgZmFsc2U7OworCQkgICBlc2FjICYmCisJCSAgICRta2RpcnByb2cgLW0kZGlmZmVyZW50X21vZGUgLXAgLS0gIiR0bXBkaXIiICYmIHsKKwkJICAgICBsc19sZF90bXBkaXJfMT1gbHMgLWxkICIkdG1wZGlyImAKKwkJICAgICB0ZXN0ICIkbHNfbGRfdG1wZGlyIiA9ICIkbHNfbGRfdG1wZGlyXzEiCisJCSAgIH0KKwkJIH0KKwkgICAgICB0aGVuIHBvc2l4X21rZGlyPToKKwkgICAgICBmaQorCSAgICAgIHJtZGlyICIkdG1wZGlyL2QiICIkdG1wZGlyIgorCSAgICBlbHNlCisJICAgICAgIyBSZW1vdmUgYW55IGRpcnMgbGVmdCBiZWhpbmQgYnkgYW5jaWVudCBta2RpciBpbXBsZW1lbnRhdGlvbnMuCisJICAgICAgcm1kaXIgLi8kbWtkaXJfbW9kZSAuLy1wIC4vLS0gMj4vZGV2L251bGwKKwkgICAgZmkKKwkgICAgdHJhcCAnJyAwOzsKKwllc2FjOzsKKyAgICBlc2FjCisKKyAgICBpZgorICAgICAgJHBvc2l4X21rZGlyICYmICgKKwl1bWFzayAkbWtkaXJfdW1hc2sgJiYKKwkkZG9pdF9leGVjICRta2RpcnByb2cgJG1rZGlyX21vZGUgLXAgLS0gIiRkc3RkaXIiCisgICAgICApCisgICAgdGhlbiA6CisgICAgZWxzZQorCisgICAgICAjIFRoZSB1bWFzayBpcyByaWRpY3Vsb3VzLCBvciBta2RpciBkb2VzIG5vdCBjb25mb3JtIHRvIFBPU0lYLAorICAgICAgIyBvciBpdCBmYWlsZWQgcG9zc2libHkgZHVlIHRvIGEgcmFjZSBjb25kaXRpb24uICBDcmVhdGUgdGhlCisgICAgICAjIGRpcmVjdG9yeSB0aGUgc2xvdyB3YXksIHN0ZXAgYnkgc3RlcCwgY2hlY2tpbmcgZm9yIHJhY2VzIGFzIHdlIGdvLgorCisgICAgICBjYXNlICRkc3RkaXIgaW4KKwkvKikgcHJlZml4PScvJzs7CisJLSopIHByZWZpeD0nLi8nOzsKKwkqKSAgcHJlZml4PScnOzsKKyAgICAgIGVzYWMKKworICAgICAgZXZhbCAiJGluaXRpYWxpemVfcG9zaXhfZ2xvYiIKKworICAgICAgb0lGUz0kSUZTCisgICAgICBJRlM9LworICAgICAgJHBvc2l4X2dsb2Igc2V0IC1mCisgICAgICBzZXQgZm5vcmQgJGRzdGRpcgorICAgICAgc2hpZnQKKyAgICAgICRwb3NpeF9nbG9iIHNldCArZgorICAgICAgSUZTPSRvSUZTCisKKyAgICAgIHByZWZpeGVzPQorCisgICAgICBmb3IgZAorICAgICAgZG8KKwl0ZXN0IC16ICIkZCIgJiYgY29udGludWUKKworCXByZWZpeD0kcHJlZml4JGQKKwlpZiB0ZXN0IC1kICIkcHJlZml4IjsgdGhlbgorCSAgcHJlZml4ZXM9CisJZWxzZQorCSAgaWYgJHBvc2l4X21rZGlyOyB0aGVuCisJICAgICh1bWFzaz0kbWtkaXJfdW1hc2sgJiYKKwkgICAgICRkb2l0X2V4ZWMgJG1rZGlycHJvZyAkbWtkaXJfbW9kZSAtcCAtLSAiJGRzdGRpciIpICYmIGJyZWFrCisJICAgICMgRG9uJ3QgZmFpbCBpZiB0d28gaW5zdGFuY2VzIGFyZSBydW5uaW5nIGNvbmN1cnJlbnRseS4KKwkgICAgdGVzdCAtZCAiJHByZWZpeCIgfHwgZXhpdCAxCisJICBlbHNlCisJICAgIGNhc2UgJHByZWZpeCBpbgorCSAgICAgICpcJyopIHFwcmVmaXg9YGVjaG8gIiRwcmVmaXgiIHwgc2VkICJzLycvJ1xcXFxcXFxcJycvZyJgOzsKKwkgICAgICAqKSBxcHJlZml4PSRwcmVmaXg7OworCSAgICBlc2FjCisJICAgIHByZWZpeGVzPSIkcHJlZml4ZXMgJyRxcHJlZml4JyIKKwkgIGZpCisJZmkKKwlwcmVmaXg9JHByZWZpeC8KKyAgICAgIGRvbmUKKworICAgICAgaWYgdGVzdCAtbiAiJHByZWZpeGVzIjsgdGhlbgorCSMgRG9uJ3QgZmFpbCBpZiB0d28gaW5zdGFuY2VzIGFyZSBydW5uaW5nIGNvbmN1cnJlbnRseS4KKwkodW1hc2sgJG1rZGlyX3VtYXNrICYmCisJIGV2YWwgIlwkZG9pdF9leGVjIFwkbWtkaXJwcm9nICRwcmVmaXhlcyIpIHx8CisJICB0ZXN0IC1kICIkZHN0ZGlyIiB8fCBleGl0IDEKKwlvYnNvbGV0ZV9ta2Rpcl91c2VkPXRydWUKKyAgICAgIGZpCisgICAgZmkKKyAgZmkKKworICBpZiB0ZXN0IC1uICIkZGlyX2FyZyI7IHRoZW4KKyAgICB7IHRlc3QgLXogIiRjaG93bmNtZCIgfHwgJGRvaXQgJGNob3duY21kICIkZHN0IjsgfSAmJgorICAgIHsgdGVzdCAteiAiJGNoZ3JwY21kIiB8fCAkZG9pdCAkY2hncnBjbWQgIiRkc3QiOyB9ICYmCisgICAgeyB0ZXN0ICIkb2Jzb2xldGVfbWtkaXJfdXNlZCRjaG93bmNtZCRjaGdycGNtZCIgPSBmYWxzZSB8fAorICAgICAgdGVzdCAteiAiJGNobW9kY21kIiB8fCAkZG9pdCAkY2htb2RjbWQgJG1vZGUgIiRkc3QiOyB9IHx8IGV4aXQgMQorICBlbHNlCisKKyAgICAjIE1ha2UgYSBjb3VwbGUgb2YgdGVtcCBmaWxlIG5hbWVzIGluIHRoZSBwcm9wZXIgZGlyZWN0b3J5LgorICAgIGRzdHRtcD0kZHN0ZGlyL19pbnN0LiQkXworICAgIHJtdG1wPSRkc3RkaXIvX3JtLiQkXworCisgICAgIyBUcmFwIHRvIGNsZWFuIHVwIHRob3NlIHRlbXAgZmlsZXMgYXQgZXhpdC4KKyAgICB0cmFwICdyZXQ9JD87IHJtIC1mICIkZHN0dG1wIiAiJHJtdG1wIiAmJiBleGl0ICRyZXQnIDAKKworICAgICMgQ29weSB0aGUgZmlsZSBuYW1lIHRvIHRoZSB0ZW1wIG5hbWUuCisgICAgKHVtYXNrICRjcF91bWFzayAmJiAkZG9pdF9leGVjICRjcHByb2cgIiRzcmMiICIkZHN0dG1wIikgJiYKKworICAgICMgYW5kIHNldCBhbnkgb3B0aW9uczsgZG8gY2htb2QgbGFzdCB0byBwcmVzZXJ2ZSBzZXR1aWQgYml0cy4KKyAgICAjCisgICAgIyBJZiBhbnkgb2YgdGhlc2UgZmFpbCwgd2UgYWJvcnQgdGhlIHdob2xlIHRoaW5nLiAgSWYgd2Ugd2FudCB0bworICAgICMgaWdub3JlIGVycm9ycyBmcm9tIGFueSBvZiB0aGVzZSwganVzdCBtYWtlIHN1cmUgbm90IHRvIGlnbm9yZQorICAgICMgZXJyb3JzIGZyb20gdGhlIGFib3ZlICIkZG9pdCAkY3Bwcm9nICRzcmMgJGRzdHRtcCIgY29tbWFuZC4KKyAgICAjCisgICAgeyB0ZXN0IC16ICIkY2hvd25jbWQiIHx8ICRkb2l0ICRjaG93bmNtZCAiJGRzdHRtcCI7IH0gJiYKKyAgICB7IHRlc3QgLXogIiRjaGdycGNtZCIgfHwgJGRvaXQgJGNoZ3JwY21kICIkZHN0dG1wIjsgfSAmJgorICAgIHsgdGVzdCAteiAiJHN0cmlwY21kIiB8fCAkZG9pdCAkc3RyaXBjbWQgIiRkc3R0bXAiOyB9ICYmCisgICAgeyB0ZXN0IC16ICIkY2htb2RjbWQiIHx8ICRkb2l0ICRjaG1vZGNtZCAkbW9kZSAiJGRzdHRtcCI7IH0gJiYKKworICAgICMgSWYgLUMsIGRvbid0IGJvdGhlciB0byBjb3B5IGlmIGl0IHdvdWxkbid0IGNoYW5nZSB0aGUgZmlsZS4KKyAgICBpZiAkY29weV9vbl9jaGFuZ2UgJiYKKyAgICAgICBvbGQ9YExDX0FMTD1DIGxzIC1kbEwgIiRkc3QiCTI+L2Rldi9udWxsYCAmJgorICAgICAgIG5ldz1gTENfQUxMPUMgbHMgLWRsTCAiJGRzdHRtcCIJMj4vZGV2L251bGxgICYmCisKKyAgICAgICBldmFsICIkaW5pdGlhbGl6ZV9wb3NpeF9nbG9iIiAmJgorICAgICAgICRwb3NpeF9nbG9iIHNldCAtZiAmJgorICAgICAgIHNldCBYICRvbGQgJiYgb2xkPTokMjokNDokNTokNiAmJgorICAgICAgIHNldCBYICRuZXcgJiYgbmV3PTokMjokNDokNTokNiAmJgorICAgICAgICRwb3NpeF9nbG9iIHNldCArZiAmJgorCisgICAgICAgdGVzdCAiJG9sZCIgPSAiJG5ldyIgJiYKKyAgICAgICAkY21wcHJvZyAiJGRzdCIgIiRkc3R0bXAiID4vZGV2L251bGwgMj4mMQorICAgIHRoZW4KKyAgICAgIHJtIC1mICIkZHN0dG1wIgorICAgIGVsc2UKKyAgICAgICMgUmVuYW1lIHRoZSBmaWxlIHRvIHRoZSByZWFsIGRlc3RpbmF0aW9uLgorICAgICAgJGRvaXQgJG12Y21kIC1mICIkZHN0dG1wIiAiJGRzdCIgMj4vZGV2L251bGwgfHwKKworICAgICAgIyBUaGUgcmVuYW1lIGZhaWxlZCwgcGVyaGFwcyBiZWNhdXNlIG12IGNhbid0IHJlbmFtZSBzb21ldGhpbmcgZWxzZQorICAgICAgIyB0byBpdHNlbGYsIG9yIHBlcmhhcHMgYmVjYXVzZSBtdiBpcyBzbyBhbmNpZW50IHRoYXQgaXQgZG9lcyBub3QKKyAgICAgICMgc3VwcG9ydCAtZi4KKyAgICAgIHsKKwkjIE5vdyByZW1vdmUgb3IgbW92ZSBhc2lkZSBhbnkgb2xkIGZpbGUgYXQgZGVzdGluYXRpb24gbG9jYXRpb24uCisJIyBXZSB0cnkgdGhpcyB0d28gd2F5cyBzaW5jZSBybSBjYW4ndCB1bmxpbmsgaXRzZWxmIG9uIHNvbWUKKwkjIHN5c3RlbXMgYW5kIHRoZSBkZXN0aW5hdGlvbiBmaWxlIG1pZ2h0IGJlIGJ1c3kgZm9yIG90aGVyCisJIyByZWFzb25zLiAgSW4gdGhpcyBjYXNlLCB0aGUgZmluYWwgY2xlYW51cCBtaWdodCBmYWlsIGJ1dCB0aGUgbmV3CisJIyBmaWxlIHNob3VsZCBzdGlsbCBpbnN0YWxsIHN1Y2Nlc3NmdWxseS4KKwl7CisJICB0ZXN0ICEgLWYgIiRkc3QiIHx8CisJICAkZG9pdCAkcm1jbWQgLWYgIiRkc3QiIDI+L2Rldi9udWxsIHx8CisJICB7ICRkb2l0ICRtdmNtZCAtZiAiJGRzdCIgIiRybXRtcCIgMj4vZGV2L251bGwgJiYKKwkgICAgeyAkZG9pdCAkcm1jbWQgLWYgIiRybXRtcCIgMj4vZGV2L251bGw7IDo7IH0KKwkgIH0gfHwKKwkgIHsgZWNobyAiJDA6IGNhbm5vdCB1bmxpbmsgb3IgcmVuYW1lICRkc3QiID4mMgorCSAgICAoZXhpdCAxKTsgZXhpdCAxCisJICB9CisJfSAmJgorCisJIyBOb3cgcmVuYW1lIHRoZSBmaWxlIHRvIHRoZSByZWFsIGRlc3RpbmF0aW9uLgorCSRkb2l0ICRtdmNtZCAiJGRzdHRtcCIgIiRkc3QiCisgICAgICB9CisgICAgZmkgfHwgZXhpdCAxCisKKyAgICB0cmFwICcnIDAKKyAgZmkKK2RvbmUKKworIyBMb2NhbCB2YXJpYWJsZXM6CisjIGV2YWw6IChhZGQtaG9vayAnd3JpdGUtZmlsZS1ob29rcyAndGltZS1zdGFtcCkKKyMgdGltZS1zdGFtcC1zdGFydDogInNjcmlwdHZlcnNpb249IgorIyB0aW1lLXN0YW1wLWZvcm1hdDogIiU6eS0lMDJtLSUwMmQuJTAySCIKKyMgdGltZS1zdGFtcC10aW1lLXpvbmU6ICJVVEMiCisjIHRpbWUtc3RhbXAtZW5kOiAiOyAjIFVUQyIKKyMgRW5kOgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9idWlsZC1hdXgvbWlzc2luZyBiL2Rwa2ctMS4xNi4xLjEvYnVpbGQtYXV4L21pc3NpbmcKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMC4uMjgwNTVkMgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvYnVpbGQtYXV4L21pc3NpbmcKQEAgLTAsMCArMSwzNzYgQEAKKyMhIC9iaW4vc2gKKyMgQ29tbW9uIHN0dWIgZm9yIGEgZmV3IG1pc3NpbmcgR05VIHByb2dyYW1zIHdoaWxlIGluc3RhbGxpbmcuCisKK3NjcmlwdHZlcnNpb249MjAwOS0wNC0yOC4yMTsgIyBVVEMKKworIyBDb3B5cmlnaHQgKEMpIDE5OTYsIDE5OTcsIDE5OTksIDIwMDAsIDIwMDIsIDIwMDMsIDIwMDQsIDIwMDUsIDIwMDYsCisjIDIwMDgsIDIwMDkgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCisjIE9yaWdpbmFsbHkgYnkgRnJhbixjb2lzIFBpbmFyZCA8cGluYXJkQGlyby51bW9udHJlYWwuY2E+LCAxOTk2LgorCisjIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisjIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisjIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIsIG9yIChhdCB5b3VyIG9wdGlvbikKKyMgYW55IGxhdGVyIHZlcnNpb24uCisKKyMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisjIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisjIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKworIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKworIyBBcyBhIHNwZWNpYWwgZXhjZXB0aW9uIHRvIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSwgaWYgeW91CisjIGRpc3RyaWJ1dGUgdGhpcyBmaWxlIGFzIHBhcnQgb2YgYSBwcm9ncmFtIHRoYXQgY29udGFpbnMgYQorIyBjb25maWd1cmF0aW9uIHNjcmlwdCBnZW5lcmF0ZWQgYnkgQXV0b2NvbmYsIHlvdSBtYXkgaW5jbHVkZSBpdCB1bmRlcgorIyB0aGUgc2FtZSBkaXN0cmlidXRpb24gdGVybXMgdGhhdCB5b3UgdXNlIGZvciB0aGUgcmVzdCBvZiB0aGF0IHByb2dyYW0uCisKK2lmIHRlc3QgJCMgLWVxIDA7IHRoZW4KKyAgZWNobyAxPiYyICJUcnkgXGAkMCAtLWhlbHAnIGZvciBtb3JlIGluZm9ybWF0aW9uIgorICBleGl0IDEKK2ZpCisKK3J1bj06CitzZWRfb3V0cHV0PSdzLy4qIC0tb3V0cHV0WyA9XVwoW14gXSpcKS4qL1wxL3AnCitzZWRfbWludXNvPSdzLy4qIC1vIFwoW14gXSpcKS4qL1wxL3AnCisKKyMgSW4gdGhlIGNhc2VzIHdoZXJlIHRoaXMgbWF0dGVycywgYG1pc3NpbmcnIGlzIGJlaW5nIHJ1biBpbiB0aGUKKyMgc3JjZGlyIGFscmVhZHkuCitpZiB0ZXN0IC1mIGNvbmZpZ3VyZS5hYzsgdGhlbgorICBjb25maWd1cmVfYWM9Y29uZmlndXJlLmFjCitlbHNlCisgIGNvbmZpZ3VyZV9hYz1jb25maWd1cmUuaW4KK2ZpCisKK21zZz0ibWlzc2luZyBvbiB5b3VyIHN5c3RlbSIKKworY2FzZSAkMSBpbgorLS1ydW4pCisgICMgVHJ5IHRvIHJ1biByZXF1ZXN0ZWQgcHJvZ3JhbSwgYW5kIGp1c3QgZXhpdCBpZiBpdCBzdWNjZWVkcy4KKyAgcnVuPQorICBzaGlmdAorICAiJEAiICYmIGV4aXQgMAorICAjIEV4aXQgY29kZSA2MyBtZWFucyB2ZXJzaW9uIG1pc21hdGNoLiAgVGhpcyBvZnRlbiBoYXBwZW5zCisgICMgd2hlbiB0aGUgdXNlciB0cnkgdG8gdXNlIGFuIGFuY2llbnQgdmVyc2lvbiBvZiBhIHRvb2wgb24KKyAgIyBhIGZpbGUgdGhhdCByZXF1aXJlcyBhIG1pbmltdW0gdmVyc2lvbi4gIEluIHRoaXMgY2FzZSB3ZQorICAjIHdlIHNob3VsZCBwcm9jZWVkIGhhcyBpZiB0aGUgcHJvZ3JhbSBoYWQgYmVlbiBhYnNlbnQsIG9yCisgICMgaWYgLS1ydW4gaGFkbid0IGJlZW4gcGFzc2VkLgorICBpZiB0ZXN0ICQ/ID0gNjM7IHRoZW4KKyAgICBydW49OgorICAgIG1zZz0icHJvYmFibHkgdG9vIG9sZCIKKyAgZmkKKyAgOzsKKworICAtaHwtLWh8LS1oZXwtLWhlbHwtLWhlbHApCisgICAgZWNobyAiXAorJDAgW09QVElPTl0uLi4gUFJPR1JBTSBbQVJHVU1FTlRdLi4uCisKK0hhbmRsZSBcYFBST0dSQU0gW0FSR1VNRU5UXS4uLicgZm9yIHdoZW4gUFJPR1JBTSBpcyBtaXNzaW5nLCBvciByZXR1cm4gYW4KK2Vycm9yIHN0YXR1cyBpZiB0aGVyZSBpcyBubyBrbm93biBoYW5kbGluZyBmb3IgUFJPR1JBTS4KKworT3B0aW9uczoKKyAgLWgsIC0taGVscCAgICAgIGRpc3BsYXkgdGhpcyBoZWxwIGFuZCBleGl0CisgIC12LCAtLXZlcnNpb24gICBvdXRwdXQgdmVyc2lvbiBpbmZvcm1hdGlvbiBhbmQgZXhpdAorICAtLXJ1biAgICAgICAgICAgdHJ5IHRvIHJ1biB0aGUgZ2l2ZW4gY29tbWFuZCwgYW5kIGVtdWxhdGUgaXQgaWYgaXQgZmFpbHMKKworU3VwcG9ydGVkIFBST0dSQU0gdmFsdWVzOgorICBhY2xvY2FsICAgICAgdG91Y2ggZmlsZSBcYGFjbG9jYWwubTQnCisgIGF1dG9jb25mICAgICB0b3VjaCBmaWxlIFxgY29uZmlndXJlJworICBhdXRvaGVhZGVyICAgdG91Y2ggZmlsZSBcYGNvbmZpZy5oLmluJworICBhdXRvbTR0ZSAgICAgdG91Y2ggdGhlIG91dHB1dCBmaWxlLCBvciBjcmVhdGUgYSBzdHViIG9uZQorICBhdXRvbWFrZSAgICAgdG91Y2ggYWxsIFxgTWFrZWZpbGUuaW4nIGZpbGVzCisgIGJpc29uICAgICAgICBjcmVhdGUgXGB5LnRhYi5bY2hdJywgaWYgcG9zc2libGUsIGZyb20gZXhpc3RpbmcgLltjaF0KKyAgZmxleCAgICAgICAgIGNyZWF0ZSBcYGxleC55eS5jJywgaWYgcG9zc2libGUsIGZyb20gZXhpc3RpbmcgLmMKKyAgaGVscDJtYW4gICAgIHRvdWNoIHRoZSBvdXRwdXQgZmlsZQorICBsZXggICAgICAgICAgY3JlYXRlIFxgbGV4Lnl5LmMnLCBpZiBwb3NzaWJsZSwgZnJvbSBleGlzdGluZyAuYworICBtYWtlaW5mbyAgICAgdG91Y2ggdGhlIG91dHB1dCBmaWxlCisgIHRhciAgICAgICAgICB0cnkgdGFyLCBnbnV0YXIsIGd0YXIsIHRoZW4gdGFyIHdpdGhvdXQgbm9uLXBvcnRhYmxlIGZsYWdzCisgIHlhY2MgICAgICAgICBjcmVhdGUgXGB5LnRhYi5bY2hdJywgaWYgcG9zc2libGUsIGZyb20gZXhpc3RpbmcgLltjaF0KKworVmVyc2lvbiBzdWZmaXhlcyB0byBQUk9HUkFNIGFzIHdlbGwgYXMgdGhlIHByZWZpeGVzIFxgZ251LScsIFxgZ251JywgYW5kCitcYGcnIGFyZSBpZ25vcmVkIHdoZW4gY2hlY2tpbmcgdGhlIG5hbWUuCisKK1NlbmQgYnVnIHJlcG9ydHMgdG8gPGJ1Zy1hdXRvbWFrZUBnbnUub3JnPi4iCisgICAgZXhpdCAkPworICAgIDs7CisKKyAgLXZ8LS12fC0tdmV8LS12ZXJ8LS12ZXJzfC0tdmVyc2l8LS12ZXJzaW98LS12ZXJzaW9uKQorICAgIGVjaG8gIm1pc3NpbmcgJHNjcmlwdHZlcnNpb24gKEdOVSBBdXRvbWFrZSkiCisgICAgZXhpdCAkPworICAgIDs7CisKKyAgLSopCisgICAgZWNobyAxPiYyICIkMDogVW5rbm93biBcYCQxJyBvcHRpb24iCisgICAgZWNobyAxPiYyICJUcnkgXGAkMCAtLWhlbHAnIGZvciBtb3JlIGluZm9ybWF0aW9uIgorICAgIGV4aXQgMQorICAgIDs7CisKK2VzYWMKKworIyBub3JtYWxpemUgcHJvZ3JhbSBuYW1lIHRvIGNoZWNrIGZvci4KK3Byb2dyYW09YGVjaG8gIiQxIiB8IHNlZCAnCisgIHMvXmdudS0vLzsgdAorICBzL15nbnUvLzsgdAorICBzL15nLy87IHQnYAorCisjIE5vdyBleGl0IGlmIHdlIGhhdmUgaXQsIGJ1dCBpdCBmYWlsZWQuICBBbHNvIGV4aXQgbm93IGlmIHdlCisjIGRvbid0IGhhdmUgaXQgYW5kIC0tdmVyc2lvbiB3YXMgcGFzc2VkIChtb3N0IGxpa2VseSB0byBkZXRlY3QKKyMgdGhlIHByb2dyYW0pLiAgVGhpcyBpcyBhYm91dCBub24tR05VIHByb2dyYW1zLCBzbyB1c2UgJDEgbm90CisjICRwcm9ncmFtLgorY2FzZSAkMSBpbgorICBsZXgqfHlhY2MqKQorICAgICMgTm90IEdOVSBwcm9ncmFtcywgdGhleSBkb24ndCBoYXZlIC0tdmVyc2lvbi4KKyAgICA7OworCisgIHRhciopCisgICAgaWYgdGVzdCAtbiAiJHJ1biI7IHRoZW4KKyAgICAgICBlY2hvIDE+JjIgIkVSUk9SOiBcYHRhcicgcmVxdWlyZXMgLS1ydW4iCisgICAgICAgZXhpdCAxCisgICAgZWxpZiB0ZXN0ICJ4JDIiID0gIngtLXZlcnNpb24iIHx8IHRlc3QgIngkMiIgPSAieC0taGVscCI7IHRoZW4KKyAgICAgICBleGl0IDEKKyAgICBmaQorICAgIDs7CisKKyAgKikKKyAgICBpZiB0ZXN0IC16ICIkcnVuIiAmJiAoJDEgLS12ZXJzaW9uKSA+IC9kZXYvbnVsbCAyPiYxOyB0aGVuCisgICAgICAgIyBXZSBoYXZlIGl0LCBidXQgaXQgZmFpbGVkLgorICAgICAgIGV4aXQgMQorICAgIGVsaWYgdGVzdCAieCQyIiA9ICJ4LS12ZXJzaW9uIiB8fCB0ZXN0ICJ4JDIiID0gIngtLWhlbHAiOyB0aGVuCisgICAgICAgIyBDb3VsZCBub3QgcnVuIC0tdmVyc2lvbiBvciAtLWhlbHAuICBUaGlzIGlzIHByb2JhYmx5IHNvbWVvbmUKKyAgICAgICAjIHJ1bm5pbmcgYCRUT09MIC0tdmVyc2lvbicgb3IgYCRUT09MIC0taGVscCcgdG8gY2hlY2sgd2hldGhlcgorICAgICAgICMgJFRPT0wgZXhpc3RzIGFuZCBub3Qga25vd2luZyAkVE9PTCB1c2VzIG1pc3NpbmcuCisgICAgICAgZXhpdCAxCisgICAgZmkKKyAgICA7OworZXNhYworCisjIElmIGl0IGRvZXMgbm90IGV4aXN0LCBvciBmYWlscyB0byBydW4gKHBvc3NpYmx5IGFuIG91dGRhdGVkIHZlcnNpb24pLAorIyB0cnkgdG8gZW11bGF0ZSBpdC4KK2Nhc2UgJHByb2dyYW0gaW4KKyAgYWNsb2NhbCopCisgICAgZWNobyAxPiYyICJcCitXQVJOSU5HOiBcYCQxJyBpcyAkbXNnLiAgWW91IHNob3VsZCBvbmx5IG5lZWQgaXQgaWYKKyAgICAgICAgIHlvdSBtb2RpZmllZCBcYGFjaW5jbHVkZS5tNCcgb3IgXGAke2NvbmZpZ3VyZV9hY30nLiAgWW91IG1pZ2h0IHdhbnQKKyAgICAgICAgIHRvIGluc3RhbGwgdGhlIFxgQXV0b21ha2UnIGFuZCBcYFBlcmwnIHBhY2thZ2VzLiAgR3JhYiB0aGVtIGZyb20KKyAgICAgICAgIGFueSBHTlUgYXJjaGl2ZSBzaXRlLiIKKyAgICB0b3VjaCBhY2xvY2FsLm00CisgICAgOzsKKworICBhdXRvY29uZiopCisgICAgZWNobyAxPiYyICJcCitXQVJOSU5HOiBcYCQxJyBpcyAkbXNnLiAgWW91IHNob3VsZCBvbmx5IG5lZWQgaXQgaWYKKyAgICAgICAgIHlvdSBtb2RpZmllZCBcYCR7Y29uZmlndXJlX2FjfScuICBZb3UgbWlnaHQgd2FudCB0byBpbnN0YWxsIHRoZQorICAgICAgICAgXGBBdXRvY29uZicgYW5kIFxgR05VIG00JyBwYWNrYWdlcy4gIEdyYWIgdGhlbSBmcm9tIGFueSBHTlUKKyAgICAgICAgIGFyY2hpdmUgc2l0ZS4iCisgICAgdG91Y2ggY29uZmlndXJlCisgICAgOzsKKworICBhdXRvaGVhZGVyKikKKyAgICBlY2hvIDE+JjIgIlwKK1dBUk5JTkc6IFxgJDEnIGlzICRtc2cuICBZb3Ugc2hvdWxkIG9ubHkgbmVlZCBpdCBpZgorICAgICAgICAgeW91IG1vZGlmaWVkIFxgYWNjb25maWcuaCcgb3IgXGAke2NvbmZpZ3VyZV9hY30nLiAgWW91IG1pZ2h0IHdhbnQKKyAgICAgICAgIHRvIGluc3RhbGwgdGhlIFxgQXV0b2NvbmYnIGFuZCBcYEdOVSBtNCcgcGFja2FnZXMuICBHcmFiIHRoZW0KKyAgICAgICAgIGZyb20gYW55IEdOVSBhcmNoaXZlIHNpdGUuIgorICAgIGZpbGVzPWBzZWQgLW4gJ3MvXlsgXSpBW0NNXV9DT05GSUdfSEVBREVSKFwoW14pXSpcKSkuKi9cMS9wJyAke2NvbmZpZ3VyZV9hY31gCisgICAgdGVzdCAteiAiJGZpbGVzIiAmJiBmaWxlcz0iY29uZmlnLmgiCisgICAgdG91Y2hfZmlsZXM9CisgICAgZm9yIGYgaW4gJGZpbGVzOyBkbworICAgICAgY2FzZSAkZiBpbgorICAgICAgKjoqKSB0b3VjaF9maWxlcz0iJHRvdWNoX2ZpbGVzICJgZWNobyAiJGYiIHwKKwkJCQkgICAgICAgc2VkIC1lICdzL15bXjpdKjovLycgLWUgJ3MvOi4qLy8nYDs7CisgICAgICAqKSB0b3VjaF9maWxlcz0iJHRvdWNoX2ZpbGVzICRmLmluIjs7CisgICAgICBlc2FjCisgICAgZG9uZQorICAgIHRvdWNoICR0b3VjaF9maWxlcworICAgIDs7CisKKyAgYXV0b21ha2UqKQorICAgIGVjaG8gMT4mMiAiXAorV0FSTklORzogXGAkMScgaXMgJG1zZy4gIFlvdSBzaG91bGQgb25seSBuZWVkIGl0IGlmCisgICAgICAgICB5b3UgbW9kaWZpZWQgXGBNYWtlZmlsZS5hbScsIFxgYWNpbmNsdWRlLm00JyBvciBcYCR7Y29uZmlndXJlX2FjfScuCisgICAgICAgICBZb3UgbWlnaHQgd2FudCB0byBpbnN0YWxsIHRoZSBcYEF1dG9tYWtlJyBhbmQgXGBQZXJsJyBwYWNrYWdlcy4KKyAgICAgICAgIEdyYWIgdGhlbSBmcm9tIGFueSBHTlUgYXJjaGl2ZSBzaXRlLiIKKyAgICBmaW5kIC4gLXR5cGUgZiAtbmFtZSBNYWtlZmlsZS5hbSAtcHJpbnQgfAorCSAgIHNlZCAncy9cLmFtJC8uaW4vJyB8CisJICAgd2hpbGUgcmVhZCBmOyBkbyB0b3VjaCAiJGYiOyBkb25lCisgICAgOzsKKworICBhdXRvbTR0ZSopCisgICAgZWNobyAxPiYyICJcCitXQVJOSU5HOiBcYCQxJyBpcyBuZWVkZWQsIGJ1dCBpcyAkbXNnLgorICAgICAgICAgWW91IG1pZ2h0IGhhdmUgbW9kaWZpZWQgc29tZSBmaWxlcyB3aXRob3V0IGhhdmluZyB0aGUKKyAgICAgICAgIHByb3BlciB0b29scyBmb3IgZnVydGhlciBoYW5kbGluZyB0aGVtLgorICAgICAgICAgWW91IGNhbiBnZXQgXGAkMScgYXMgcGFydCBvZiBcYEF1dG9jb25mJyBmcm9tIGFueSBHTlUKKyAgICAgICAgIGFyY2hpdmUgc2l0ZS4iCisKKyAgICBmaWxlPWBlY2hvICIkKiIgfCBzZWQgLW4gIiRzZWRfb3V0cHV0ImAKKyAgICB0ZXN0IC16ICIkZmlsZSIgJiYgZmlsZT1gZWNobyAiJCoiIHwgc2VkIC1uICIkc2VkX21pbnVzbyJgCisgICAgaWYgdGVzdCAtZiAiJGZpbGUiOyB0aGVuCisJdG91Y2ggJGZpbGUKKyAgICBlbHNlCisJdGVzdCAteiAiJGZpbGUiIHx8IGV4ZWMgPiRmaWxlCisJZWNobyAiIyEgL2Jpbi9zaCIKKwllY2hvICIjIENyZWF0ZWQgYnkgR05VIEF1dG9tYWtlIG1pc3NpbmcgYXMgYSByZXBsYWNlbWVudCBvZiIKKwllY2hvICIjICAkICRAIgorCWVjaG8gImV4aXQgMCIKKwljaG1vZCAreCAkZmlsZQorCWV4aXQgMQorICAgIGZpCisgICAgOzsKKworICBiaXNvbip8eWFjYyopCisgICAgZWNobyAxPiYyICJcCitXQVJOSU5HOiBcYCQxJyAkbXNnLiAgWW91IHNob3VsZCBvbmx5IG5lZWQgaXQgaWYKKyAgICAgICAgIHlvdSBtb2RpZmllZCBhIFxgLnknIGZpbGUuICBZb3UgbWF5IG5lZWQgdGhlIFxgQmlzb24nIHBhY2thZ2UKKyAgICAgICAgIGluIG9yZGVyIGZvciB0aG9zZSBtb2RpZmljYXRpb25zIHRvIHRha2UgZWZmZWN0LiAgWW91IGNhbiBnZXQKKyAgICAgICAgIFxgQmlzb24nIGZyb20gYW55IEdOVSBhcmNoaXZlIHNpdGUuIgorICAgIHJtIC1mIHkudGFiLmMgeS50YWIuaAorICAgIGlmIHRlc3QgJCMgLW5lIDE7IHRoZW4KKyAgICAgICAgZXZhbCBMQVNUQVJHPSJcJHskI30iCisJY2FzZSAkTEFTVEFSRyBpbgorCSoueSkKKwkgICAgU1JDRklMRT1gZWNobyAiJExBU1RBUkciIHwgc2VkICdzL3kkL2MvJ2AKKwkgICAgaWYgdGVzdCAtZiAiJFNSQ0ZJTEUiOyB0aGVuCisJICAgICAgICAgY3AgIiRTUkNGSUxFIiB5LnRhYi5jCisJICAgIGZpCisJICAgIFNSQ0ZJTEU9YGVjaG8gIiRMQVNUQVJHIiB8IHNlZCAncy95JC9oLydgCisJICAgIGlmIHRlc3QgLWYgIiRTUkNGSUxFIjsgdGhlbgorCSAgICAgICAgIGNwICIkU1JDRklMRSIgeS50YWIuaAorCSAgICBmaQorCSAgOzsKKwllc2FjCisgICAgZmkKKyAgICBpZiB0ZXN0ICEgLWYgeS50YWIuaDsgdGhlbgorCWVjaG8gPnkudGFiLmgKKyAgICBmaQorICAgIGlmIHRlc3QgISAtZiB5LnRhYi5jOyB0aGVuCisJZWNobyAnbWFpbigpIHsgcmV0dXJuIDA7IH0nID55LnRhYi5jCisgICAgZmkKKyAgICA7OworCisgIGxleCp8ZmxleCopCisgICAgZWNobyAxPiYyICJcCitXQVJOSU5HOiBcYCQxJyBpcyAkbXNnLiAgWW91IHNob3VsZCBvbmx5IG5lZWQgaXQgaWYKKyAgICAgICAgIHlvdSBtb2RpZmllZCBhIFxgLmwnIGZpbGUuICBZb3UgbWF5IG5lZWQgdGhlIFxgRmxleCcgcGFja2FnZQorICAgICAgICAgaW4gb3JkZXIgZm9yIHRob3NlIG1vZGlmaWNhdGlvbnMgdG8gdGFrZSBlZmZlY3QuICBZb3UgY2FuIGdldAorICAgICAgICAgXGBGbGV4JyBmcm9tIGFueSBHTlUgYXJjaGl2ZSBzaXRlLiIKKyAgICBybSAtZiBsZXgueXkuYworICAgIGlmIHRlc3QgJCMgLW5lIDE7IHRoZW4KKyAgICAgICAgZXZhbCBMQVNUQVJHPSJcJHskI30iCisJY2FzZSAkTEFTVEFSRyBpbgorCSoubCkKKwkgICAgU1JDRklMRT1gZWNobyAiJExBU1RBUkciIHwgc2VkICdzL2wkL2MvJ2AKKwkgICAgaWYgdGVzdCAtZiAiJFNSQ0ZJTEUiOyB0aGVuCisJICAgICAgICAgY3AgIiRTUkNGSUxFIiBsZXgueXkuYworCSAgICBmaQorCSAgOzsKKwllc2FjCisgICAgZmkKKyAgICBpZiB0ZXN0ICEgLWYgbGV4Lnl5LmM7IHRoZW4KKwllY2hvICdtYWluKCkgeyByZXR1cm4gMDsgfScgPmxleC55eS5jCisgICAgZmkKKyAgICA7OworCisgIGhlbHAybWFuKikKKyAgICBlY2hvIDE+JjIgIlwKK1dBUk5JTkc6IFxgJDEnIGlzICRtc2cuICBZb3Ugc2hvdWxkIG9ubHkgbmVlZCBpdCBpZgorCSB5b3UgbW9kaWZpZWQgYSBkZXBlbmRlbmN5IG9mIGEgbWFudWFsIHBhZ2UuICBZb3UgbWF5IG5lZWQgdGhlCisJIFxgSGVscDJtYW4nIHBhY2thZ2UgaW4gb3JkZXIgZm9yIHRob3NlIG1vZGlmaWNhdGlvbnMgdG8gdGFrZQorCSBlZmZlY3QuICBZb3UgY2FuIGdldCBcYEhlbHAybWFuJyBmcm9tIGFueSBHTlUgYXJjaGl2ZSBzaXRlLiIKKworICAgIGZpbGU9YGVjaG8gIiQqIiB8IHNlZCAtbiAiJHNlZF9vdXRwdXQiYAorICAgIHRlc3QgLXogIiRmaWxlIiAmJiBmaWxlPWBlY2hvICIkKiIgfCBzZWQgLW4gIiRzZWRfbWludXNvImAKKyAgICBpZiB0ZXN0IC1mICIkZmlsZSI7IHRoZW4KKwl0b3VjaCAkZmlsZQorICAgIGVsc2UKKwl0ZXN0IC16ICIkZmlsZSIgfHwgZXhlYyA+JGZpbGUKKwllY2hvICIuYWIgaGVscDJtYW4gaXMgcmVxdWlyZWQgdG8gZ2VuZXJhdGUgdGhpcyBwYWdlIgorCWV4aXQgJD8KKyAgICBmaQorICAgIDs7CisKKyAgbWFrZWluZm8qKQorICAgIGVjaG8gMT4mMiAiXAorV0FSTklORzogXGAkMScgaXMgJG1zZy4gIFlvdSBzaG91bGQgb25seSBuZWVkIGl0IGlmCisgICAgICAgICB5b3UgbW9kaWZpZWQgYSBcYC50ZXhpJyBvciBcYC50ZXhpbmZvJyBmaWxlLCBvciBhbnkgb3RoZXIgZmlsZQorICAgICAgICAgaW5kaXJlY3RseSBhZmZlY3RpbmcgdGhlIGFzcGVjdCBvZiB0aGUgbWFudWFsLiAgVGhlIHNwdXJpb3VzCisgICAgICAgICBjYWxsIG1pZ2h0IGFsc28gYmUgdGhlIGNvbnNlcXVlbmNlIG9mIHVzaW5nIGEgYnVnZ3kgXGBtYWtlJyAoQUlYLAorICAgICAgICAgRFUsIElSSVgpLiAgWW91IG1pZ2h0IHdhbnQgdG8gaW5zdGFsbCB0aGUgXGBUZXhpbmZvJyBwYWNrYWdlIG9yCisgICAgICAgICB0aGUgXGBHTlUgbWFrZScgcGFja2FnZS4gIEdyYWIgZWl0aGVyIGZyb20gYW55IEdOVSBhcmNoaXZlIHNpdGUuIgorICAgICMgVGhlIGZpbGUgdG8gdG91Y2ggaXMgdGhhdCBzcGVjaWZpZWQgd2l0aCAtbyAuLi4KKyAgICBmaWxlPWBlY2hvICIkKiIgfCBzZWQgLW4gIiRzZWRfb3V0cHV0ImAKKyAgICB0ZXN0IC16ICIkZmlsZSIgJiYgZmlsZT1gZWNobyAiJCoiIHwgc2VkIC1uICIkc2VkX21pbnVzbyJgCisgICAgaWYgdGVzdCAteiAiJGZpbGUiOyB0aGVuCisgICAgICAjIC4uLiBvciBpdCBpcyB0aGUgb25lIHNwZWNpZmllZCB3aXRoIEBzZXRmaWxlbmFtZSAuLi4KKyAgICAgIGluZmlsZT1gZWNobyAiJCoiIHwgc2VkICdzLy4qIFwoW14gXSpcKSAqJC9cMS8nYAorICAgICAgZmlsZT1gc2VkIC1uICcKKwkvXkBzZXRmaWxlbmFtZS97CisJICBzLy4qIFwoW14gXSpcKSAqJC9cMS8KKwkgIHAKKwkgIHEKKwl9JyAkaW5maWxlYAorICAgICAgIyAuLi4gb3IgaXQgaXMgZGVyaXZlZCBmcm9tIHRoZSBzb3VyY2UgbmFtZSAoZGlyL2YudGV4aSBiZWNvbWVzIGYuaW5mbykKKyAgICAgIHRlc3QgLXogIiRmaWxlIiAmJiBmaWxlPWBlY2hvICIkaW5maWxlIiB8IHNlZCAncywuKi8sLDtzLC5bXi5dKiQsLCdgLmluZm8KKyAgICBmaQorICAgICMgSWYgdGhlIGZpbGUgZG9lcyBub3QgZXhpc3QsIHRoZSB1c2VyIHJlYWxseSBuZWVkcyBtYWtlaW5mbzsKKyAgICAjIGxldCdzIGZhaWwgd2l0aG91dCB0b3VjaGluZyBhbnl0aGluZy4KKyAgICB0ZXN0IC1mICRmaWxlIHx8IGV4aXQgMQorICAgIHRvdWNoICRmaWxlCisgICAgOzsKKworICB0YXIqKQorICAgIHNoaWZ0CisKKyAgICAjIFdlIGhhdmUgYWxyZWFkeSB0cmllZCB0YXIgaW4gdGhlIGdlbmVyaWMgcGFydC4KKyAgICAjIExvb2sgZm9yIGdudXRhci9ndGFyIGJlZm9yZSBpbnZvY2F0aW9uIHRvIGF2b2lkIHVnbHkgZXJyb3IKKyAgICAjIG1lc3NhZ2VzLgorICAgIGlmIChnbnV0YXIgLS12ZXJzaW9uID4gL2Rldi9udWxsIDI+JjEpOyB0aGVuCisgICAgICAgZ251dGFyICIkQCIgJiYgZXhpdCAwCisgICAgZmkKKyAgICBpZiAoZ3RhciAtLXZlcnNpb24gPiAvZGV2L251bGwgMj4mMSk7IHRoZW4KKyAgICAgICBndGFyICIkQCIgJiYgZXhpdCAwCisgICAgZmkKKyAgICBmaXJzdGFyZz0iJDEiCisgICAgaWYgc2hpZnQ7IHRoZW4KKwljYXNlICRmaXJzdGFyZyBpbgorCSpvKikKKwkgICAgZmlyc3Rhcmc9YGVjaG8gIiRmaXJzdGFyZyIgfCBzZWQgcy9vLy9gCisJICAgIHRhciAiJGZpcnN0YXJnIiAiJEAiICYmIGV4aXQgMAorCSAgICA7OworCWVzYWMKKwljYXNlICRmaXJzdGFyZyBpbgorCSpoKikKKwkgICAgZmlyc3Rhcmc9YGVjaG8gIiRmaXJzdGFyZyIgfCBzZWQgcy9oLy9gCisJICAgIHRhciAiJGZpcnN0YXJnIiAiJEAiICYmIGV4aXQgMAorCSAgICA7OworCWVzYWMKKyAgICBmaQorCisgICAgZWNobyAxPiYyICJcCitXQVJOSU5HOiBJIGNhbid0IHNlZW0gdG8gYmUgYWJsZSB0byBydW4gXGB0YXInIHdpdGggdGhlIGdpdmVuIGFyZ3VtZW50cy4KKyAgICAgICAgIFlvdSBtYXkgd2FudCB0byBpbnN0YWxsIEdOVSB0YXIgb3IgRnJlZSBwYXh1dGlscywgb3IgY2hlY2sgdGhlCisgICAgICAgICBjb21tYW5kIGxpbmUgYXJndW1lbnRzLiIKKyAgICBleGl0IDEKKyAgICA7OworCisgICopCisgICAgZWNobyAxPiYyICJcCitXQVJOSU5HOiBcYCQxJyBpcyBuZWVkZWQsIGFuZCBpcyAkbXNnLgorICAgICAgICAgWW91IG1pZ2h0IGhhdmUgbW9kaWZpZWQgc29tZSBmaWxlcyB3aXRob3V0IGhhdmluZyB0aGUKKyAgICAgICAgIHByb3BlciB0b29scyBmb3IgZnVydGhlciBoYW5kbGluZyB0aGVtLiAgQ2hlY2sgdGhlIFxgUkVBRE1FJyBmaWxlLAorICAgICAgICAgaXQgb2Z0ZW4gdGVsbHMgeW91IGFib3V0IHRoZSBuZWVkZWQgcHJlcmVxdWlzaXRlcyBmb3IgaW5zdGFsbGluZworICAgICAgICAgdGhpcyBwYWNrYWdlLiAgWW91IG1heSBhbHNvIHBlZWsgYXQgYW55IEdOVSBhcmNoaXZlIHNpdGUsIGluIGNhc2UKKyAgICAgICAgIHNvbWUgb3RoZXIgcGFja2FnZSB3b3VsZCBjb250YWluIHRoaXMgbWlzc2luZyBcYCQxJyBwcm9ncmFtLiIKKyAgICBleGl0IDEKKyAgICA7OworZXNhYworCitleGl0IDAKKworIyBMb2NhbCB2YXJpYWJsZXM6CisjIGV2YWw6IChhZGQtaG9vayAnd3JpdGUtZmlsZS1ob29rcyAndGltZS1zdGFtcCkKKyMgdGltZS1zdGFtcC1zdGFydDogInNjcmlwdHZlcnNpb249IgorIyB0aW1lLXN0YW1wLWZvcm1hdDogIiU6eS0lMDJtLSUwMmQuJTAySCIKKyMgdGltZS1zdGFtcC10aW1lLXpvbmU6ICJVVEMiCisjIHRpbWUtc3RhbXAtZW5kOiAiOyAjIFVUQyIKKyMgRW5kOgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9idWlsZC1hdXgveWx3cmFwIGIvZHBrZy0xLjE2LjEuMS9idWlsZC1hdXgveWx3cmFwCm5ldyBmaWxlIG1vZGUgMTAwNzU1CmluZGV4IDAwMDAwMDAuLjg0ZDU2MzQKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2J1aWxkLWF1eC95bHdyYXAKQEAgLTAsMCArMSwyMjIgQEAKKyMhIC9iaW4vc2gKKyMgeWx3cmFwIC0gd3JhcHBlciBmb3IgbGV4L3lhY2MgaW52b2NhdGlvbnMuCisKK3NjcmlwdHZlcnNpb249MjAwOS0wNC0yOC4yMTsgIyBVVEMKKworIyBDb3B5cmlnaHQgKEMpIDE5OTYsIDE5OTcsIDE5OTgsIDE5OTksIDIwMDEsIDIwMDIsIDIwMDMsIDIwMDQsIDIwMDUsCisjIDIwMDcsIDIwMDkgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCisjCisjIFdyaXR0ZW4gYnkgVG9tIFRyb21leSA8dHJvbWV5QGN5Z251cy5jb20+LgorIworIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyLCBvciAoYXQgeW91ciBvcHRpb24pCisjIGFueSBsYXRlciB2ZXJzaW9uLgorIworIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorIworIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKworIyBBcyBhIHNwZWNpYWwgZXhjZXB0aW9uIHRvIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSwgaWYgeW91CisjIGRpc3RyaWJ1dGUgdGhpcyBmaWxlIGFzIHBhcnQgb2YgYSBwcm9ncmFtIHRoYXQgY29udGFpbnMgYQorIyBjb25maWd1cmF0aW9uIHNjcmlwdCBnZW5lcmF0ZWQgYnkgQXV0b2NvbmYsIHlvdSBtYXkgaW5jbHVkZSBpdCB1bmRlcgorIyB0aGUgc2FtZSBkaXN0cmlidXRpb24gdGVybXMgdGhhdCB5b3UgdXNlIGZvciB0aGUgcmVzdCBvZiB0aGF0IHByb2dyYW0uCisKKyMgVGhpcyBmaWxlIGlzIG1haW50YWluZWQgaW4gQXV0b21ha2UsIHBsZWFzZSByZXBvcnQKKyMgYnVncyB0byA8YnVnLWF1dG9tYWtlQGdudS5vcmc+IG9yIHNlbmQgcGF0Y2hlcyB0bworIyA8YXV0b21ha2UtcGF0Y2hlc0BnbnUub3JnPi4KKworY2FzZSAiJDEiIGluCisgICcnKQorICAgIGVjaG8gIiQwOiBObyBmaWxlcyBnaXZlbi4gIFRyeSBcYCQwIC0taGVscCcgZm9yIG1vcmUgaW5mb3JtYXRpb24uIiAxPiYyCisgICAgZXhpdCAxCisgICAgOzsKKyAgLS1iYXNlZGlyKQorICAgIGJhc2VkaXI9JDIKKyAgICBzaGlmdCAyCisgICAgOzsKKyAgLWh8LS1oKikKKyAgICBjYXQgPDxcRU9GCitVc2FnZTogeWx3cmFwIFstLWhlbHB8LS12ZXJzaW9uXSBJTlBVVCBbT1VUUFVUIERFU0lSRURdLi4uIC0tIFBST0dSQU0gW0FSR1NdLi4uCisKK1dyYXBwZXIgZm9yIGxleC95YWNjIGludm9jYXRpb25zLCByZW5hbWluZyBmaWxlcyBhcyBkZXNpcmVkLgorCisgIElOUFVUIGlzIHRoZSBpbnB1dCBmaWxlCisgIE9VVFBVVCBpcyBvbmUgZmlsZSBQUk9HIGdlbmVyYXRlcworICBERVNJUkVEIGlzIHRoZSBmaWxlIHdlIGFjdHVhbGx5IHdhbnQgaW5zdGVhZCBvZiBPVVRQVVQKKyAgUFJPR1JBTSBpcyBwcm9ncmFtIHRvIHJ1bgorICBBUkdTIGFyZSBwYXNzZWQgdG8gUFJPRworCitBbnkgbnVtYmVyIG9mIE9VVFBVVCxERVNJUkVEIHBhaXJzIG1heSBiZSB1c2VkLgorCitSZXBvcnQgYnVncyB0byA8YnVnLWF1dG9tYWtlQGdudS5vcmc+LgorRU9GCisgICAgZXhpdCAkPworICAgIDs7CisgIC12fC0tdiopCisgICAgZWNobyAieWx3cmFwICRzY3JpcHR2ZXJzaW9uIgorICAgIGV4aXQgJD8KKyAgICA7OworZXNhYworCisKKyMgVGhlIGlucHV0LgoraW5wdXQ9IiQxIgorc2hpZnQKK2Nhc2UgIiRpbnB1dCIgaW4KKyAgW1xcL10qIHwgPzpbXFwvXSopCisgICAgIyBBYnNvbHV0ZSBwYXRoOyBkbyBub3RoaW5nLgorICAgIDs7CisgICopCisgICAgIyBSZWxhdGl2ZSBwYXRoLiAgTWFrZSBpdCBhYnNvbHV0ZS4KKyAgICBpbnB1dD0iYHB3ZGAvJGlucHV0IgorICAgIDs7Citlc2FjCisKK3BhaXJsaXN0PQord2hpbGUgdGVzdCAiJCMiIC1uZSAwOyBkbworICBpZiB0ZXN0ICIkMSIgPSAiLS0iOyB0aGVuCisgICAgc2hpZnQKKyAgICBicmVhaworICBmaQorICBwYWlybGlzdD0iJHBhaXJsaXN0ICQxIgorICBzaGlmdAorZG9uZQorCisjIFRoZSBwcm9ncmFtIHRvIHJ1bi4KK3Byb2c9IiQxIgorc2hpZnQKKyMgTWFrZSBhbnkgcmVsYXRpdmUgcGF0aCBpbiAkcHJvZyBhYnNvbHV0ZS4KK2Nhc2UgIiRwcm9nIiBpbgorICBbXFwvXSogfCA/OltcXC9dKikgOzsKKyAgKltcXC9dKikgcHJvZz0iYHB3ZGAvJHByb2ciIDs7Citlc2FjCisKKyMgRklYTUU6IGFkZCBob3N0bmFtZSBoZXJlIGZvciBwYXJhbGxlbCBtYWtlcyB0aGF0IHJ1biBjb21tYW5kcyBvbgorIyBvdGhlciBtYWNoaW5lcy4gIEJ1dCB0aGF0IG1pZ2h0IHRha2UgdXMgb3ZlciB0aGUgMTQtY2hhciBsaW1pdC4KK2Rpcm5hbWU9eWx3cmFwJCQKK3RyYXAgImNkICdgcHdkYCc7IHJtIC1yZiAkZGlybmFtZSA+IC9kZXYvbnVsbCAyPiYxIiAxIDIgMyAxNQorbWtkaXIgJGRpcm5hbWUgfHwgZXhpdCAxCisKK2NkICRkaXJuYW1lCisKK2Nhc2UgJCMgaW4KKyAgMCkgIiRwcm9nIiAiJGlucHV0IiA7OworICAqKSAiJHByb2ciICIkQCIgIiRpbnB1dCIgOzsKK2VzYWMKK3JldD0kPworCitpZiB0ZXN0ICRyZXQgLWVxIDA7IHRoZW4KKyAgc2V0IFggJHBhaXJsaXN0CisgIHNoaWZ0CisgIGZpcnN0PXllcworICAjIFNpbmNlIERPUyBmaWxlbmFtZSBjb252ZW50aW9ucyBkb24ndCBhbGxvdyB0d28gZG90cywKKyAgIyB0aGUgRE9TIHZlcnNpb24gb2YgQmlzb24gd3JpdGVzIG91dCB5X3RhYi5jIGluc3RlYWQgb2YgeS50YWIuYworICAjIGFuZCB5X3RhYi5oIGluc3RlYWQgb2YgeS50YWIuaC4gVGVzdCB0byBzZWUgaWYgdGhpcyBpcyB0aGUgY2FzZS4KKyAgeV90YWJfbm9kb3Q9Im5vIgorICBpZiB0ZXN0IC1mIHlfdGFiLmMgfHwgdGVzdCAtZiB5X3RhYi5oOyB0aGVuCisgICAgeV90YWJfbm9kb3Q9InllcyIKKyAgZmkKKworICAjIFRoZSBkaXJlY3RvcnkgaG9sZGluZyB0aGUgaW5wdXQuCisgIGlucHV0X2Rpcj1gZWNobyAiJGlucHV0IiB8IHNlZCAtZSAncyxcKFtcXC9dXClbXlxcL10qJCxcMSwnYAorICAjIFF1b3RlICRJTlBVVF9ESVIgc28gd2UgY2FuIHVzZSBpdCBpbiBhIHJlZ2V4cC4KKyAgIyBGSVhNRTogcmVhbGx5IHdlIHNob3VsZCBjYXJlIGFib3V0IG1vcmUgdGhhbiBgLicgYW5kIGBcJy4KKyAgaW5wdXRfcng9YGVjaG8gIiRpbnB1dF9kaXIiIHwgc2VkICdzLFxcXFwsXFxcXFxcXFwsZztzLFxcLixcXFxcLixnJ2AKKworICB3aGlsZSB0ZXN0ICIkIyIgLW5lIDA7IGRvCisgICAgZnJvbT0iJDEiCisgICAgIyBIYW5kbGUgeV90YWIuYyBhbmQgeV90YWIuaCBvdXRwdXQgYnkgRE9TCisgICAgaWYgdGVzdCAkeV90YWJfbm9kb3QgPSAieWVzIjsgdGhlbgorICAgICAgaWYgdGVzdCAkZnJvbSA9ICJ5LnRhYi5jIjsgdGhlbgorICAgIAlmcm9tPSJ5X3RhYi5jIgorICAgICAgZWxzZQorICAgIAlpZiB0ZXN0ICRmcm9tID0gInkudGFiLmgiOyB0aGVuCisgICAgCSAgZnJvbT0ieV90YWIuaCIKKyAgICAJZmkKKyAgICAgIGZpCisgICAgZmkKKyAgICBpZiB0ZXN0IC1mICIkZnJvbSI7IHRoZW4KKyAgICAgICMgSWYgJDIgaXMgYW4gYWJzb2x1dGUgcGF0aCBuYW1lLCB0aGVuIGp1c3QgdXNlIHRoYXQsCisgICAgICAjIG90aGVyd2lzZSBwcmVwZW5kIGAuLi8nLgorICAgICAgY2FzZSAiJDIiIGluCisgICAgCVtcXC9dKiB8ID86W1xcL10qKSB0YXJnZXQ9IiQyIjs7CisgICAgCSopIHRhcmdldD0iLi4vJDIiOzsKKyAgICAgIGVzYWMKKworICAgICAgIyBXZSBkbyBub3Qgd2FudCB0byBvdmVyd3JpdGUgYSBoZWFkZXIgZmlsZSBpZiBpdCBoYXNuJ3QKKyAgICAgICMgY2hhbmdlZC4gIFRoaXMgYXZvaWQgdXNlbGVzcyByZWNvbXBpbGF0aW9ucy4gIEhvd2V2ZXIgdGhlCisgICAgICAjIHBhcnNlciBpdHNlbGYgKHRoZSBmaXJzdCBmaWxlKSBzaG91bGQgYWx3YXlzIGJlIHVwZGF0ZWQsCisgICAgICAjIGJlY2F1c2UgaXQgaXMgdGhlIGRlc3RpbmF0aW9uIG9mIHRoZSAueS5jIHJ1bGUgaW4gdGhlCisgICAgICAjIE1ha2VmaWxlLiAgRGl2ZXJ0IHRoZSBvdXRwdXQgb2YgYWxsIG90aGVyIGZpbGVzIHRvIGEgdGVtcG9yYXJ5CisgICAgICAjIGZpbGUgc28gd2UgY2FuIGNvbXBhcmUgdGhlbSB0byBleGlzdGluZyB2ZXJzaW9ucy4KKyAgICAgIGlmIHRlc3QgJGZpcnN0ID0gbm87IHRoZW4KKwlyZWFsdGFyZ2V0PSIkdGFyZ2V0IgorCXRhcmdldD0idG1wLWBlY2hvICR0YXJnZXQgfCBzZWQgcy8uKltcXC9dLy9nYCIKKyAgICAgIGZpCisgICAgICAjIEVkaXQgb3V0IGAjbGluZScgb3IgYCMnIGRpcmVjdGl2ZXMuCisgICAgICAjCisgICAgICAjIFdlIGRvbid0IHdhbnQgdGhlIHJlc3VsdGluZyBkZWJ1ZyBpbmZvcm1hdGlvbiB0byBwb2ludCBhdAorICAgICAgIyBhbiBhYnNvbHV0ZSBzcmNkaXI7IGl0IGlzIGJldHRlciBmb3IgaXQgdG8ganVzdCBtZW50aW9uIHRoZQorICAgICAgIyAueSBmaWxlIHdpdGggbm8gcGF0aC4KKyAgICAgICMKKyAgICAgICMgV2Ugd2FudCB0byB1c2UgdGhlIHJlYWwgb3V0cHV0IGZpbGUgbmFtZSwgbm90IHl5LmxleC5jIGZvcgorICAgICAgIyBpbnN0YW5jZS4KKyAgICAgICMKKyAgICAgICMgV2Ugd2FudCB0aGUgaW5jbHVkZSBndWFyZHMgdG8gYmUgYWRqdXN0ZWQgdG9vLgorICAgICAgRlJPTT1gZWNobyAiJGZyb20iIHwgc2VkIFwKKyAgICAgICAgICAgIC1lICd5L2FiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6L0FCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaLydcCisgICAgICAgICAgICAtZSAncy9bXkFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaXS9fL2cnYAorICAgICAgVEFSR0VUPWBlY2hvICIkMiIgfCBzZWQgXAorICAgICAgICAgICAgLWUgJ3kvYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXovQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVovJ1wKKyAgICAgICAgICAgIC1lICdzL1teQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVpdL18vZydgCisKKyAgICAgIHNlZCAtZSAiL14jLyFiIiAtZSAicywkaW5wdXRfcngsLCIgLWUgInMsJGZyb20sJDIsIiBcCisgICAgICAgICAgLWUgInMsJEZST00sJFRBUkdFVCwiICIkZnJvbSIgPiIkdGFyZ2V0IiB8fCByZXQ9JD8KKworICAgICAgIyBDaGVjayB3aGV0aGVyIGhlYWRlciBmaWxlcyBtdXN0IGJlIHVwZGF0ZWQuCisgICAgICBpZiB0ZXN0ICRmaXJzdCA9IG5vOyB0aGVuCisJaWYgdGVzdCAtZiAiJHJlYWx0YXJnZXQiICYmIGNtcCAtcyAiJHJlYWx0YXJnZXQiICIkdGFyZ2V0IjsgdGhlbgorCSAgZWNobyAiJDIiIGlzIHVuY2hhbmdlZAorCSAgcm0gLWYgIiR0YXJnZXQiCisJZWxzZQorICAgICAgICAgIGVjaG8gdXBkYXRpbmcgIiQyIgorICAgICAgICAgIG12IC1mICIkdGFyZ2V0IiAiJHJlYWx0YXJnZXQiCisgICAgICAgIGZpCisgICAgICBmaQorICAgIGVsc2UKKyAgICAgICMgQSBtaXNzaW5nIGZpbGUgaXMgb25seSBhbiBlcnJvciBmb3IgdGhlIGZpcnN0IGZpbGUuICBUaGlzCisgICAgICAjIGlzIGEgYmxhdGFudCBoYWNrIHRvIGxldCB1cyBzdXBwb3J0IHVzaW5nICJ5YWNjIC1kIi4gIElmIC1kCisgICAgICAjIGlzIG5vdCBzcGVjaWZpZWQsIHdlIGRvbid0IHdhbnQgYW4gZXJyb3Igd2hlbiB0aGUgaGVhZGVyCisgICAgICAjIGZpbGUgaXMgIm1pc3NpbmciLgorICAgICAgaWYgdGVzdCAkZmlyc3QgPSB5ZXM7IHRoZW4KKyAgICAgICAgcmV0PTEKKyAgICAgIGZpCisgICAgZmkKKyAgICBzaGlmdAorICAgIHNoaWZ0CisgICAgZmlyc3Q9bm8KKyAgZG9uZQorZWxzZQorICByZXQ9JD8KK2ZpCisKKyMgUmVtb3ZlIHRoZSBkaXJlY3RvcnkuCitjZCAuLgorcm0gLXJmICRkaXJuYW1lCisKK2V4aXQgJHJldAorCisjIExvY2FsIFZhcmlhYmxlczoKKyMgbW9kZTogc2hlbGwtc2NyaXB0CisjIHNoLWluZGVudGF0aW9uOiAyCisjIGV2YWw6IChhZGQtaG9vayAnd3JpdGUtZmlsZS1ob29rcyAndGltZS1zdGFtcCkKKyMgdGltZS1zdGFtcC1zdGFydDogInNjcmlwdHZlcnNpb249IgorIyB0aW1lLXN0YW1wLWZvcm1hdDogIiU6eS0lMDJtLSUwMmQuJTAySCIKKyMgdGltZS1zdGFtcC10aW1lLXpvbmU6ICJVVEMiCisjIHRpbWUtc3RhbXAtZW5kOiAiOyAjIFVUQyIKKyMgRW5kOgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9jb25maWcuaC5pbiBiL2Rwa2ctMS4xNi4xLjEvY29uZmlnLmguaW4KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYWJiMGFhOAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvY29uZmlnLmguaW4KQEAgLTAsMCArMSwzNDAgQEAKKy8qIGNvbmZpZy5oLmluLiAgR2VuZXJhdGVkIGZyb20gY29uZmlndXJlLmFjIGJ5IGF1dG9oZWFkZXIuICAqLworCisvKiBEZWZpbmUgaWYgYnVpbGRpbmcgdW5pdmVyc2FsIChpbnRlcm5hbCBoZWxwZXIgbWFjcm8pICovCisjdW5kZWYgQUNfQVBQTEVfVU5JVkVSU0FMX0JVSUxECisKKy8qIFNldCB0aGlzIHRvIHRoZSBjYW5vbmljYWwgZHBrZyBhcmNoaXRlY3R1cmUgbmFtZS4gKi8KKyN1bmRlZiBBUkNISVRFQ1RVUkUKKworLyogU2V0IHRoaXMgdG8gdGhlIGNhbm9uaWNhbCBkcGtnIENQVSBuYW1lLiAqLworI3VuZGVmIEFSQ0hJVEVDVFVSRV9DUFUKKworLyogU2V0IHRoaXMgdG8gdGhlIGNhbm9uaWNhbCBkcGtnIHN5c3RlbSBuYW1lLiAqLworI3VuZGVmIEFSQ0hJVEVDVFVSRV9PUworCisvKiBEZWZpbmUgdG8gMSBpZiB0cmFuc2xhdGlvbiBvZiBwcm9ncmFtIG1lc3NhZ2VzIHRvIHRoZSB1c2VyJ3MgbmF0aXZlCisgICBsYW5ndWFnZSBpcyByZXF1ZXN0ZWQuICovCisjdW5kZWYgRU5BQkxFX05MUworCisvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYGFscGhhc29ydCcgZnVuY3Rpb24uICovCisjdW5kZWYgSEFWRV9BTFBIQVNPUlQKKworLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBhc3ByaW50ZicgZnVuY3Rpb24uICovCisjdW5kZWYgSEFWRV9BU1BSSU5URgorCisvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYGJjb3B5JyBmdW5jdGlvbi4gKi8KKyN1bmRlZiBIQVZFX0JDT1BZCisKKy8qIERlZmluZSB0byAxIGlmIHRoZSBjb21waWxlciBzdXBwb3J0cyBDOTkuICovCisjdW5kZWYgSEFWRV9DOTkKKworLyogRGVmaW5lIHRvIDEgaWYgdGhlICdzbnByaW50ZicgZmFtaWx5IGlzIEM5OSBjb25mb3JtYW50ICovCisjdW5kZWYgSEFWRV9DOTlfU05QUklOVEYKKworLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIE1hY09TIFggZnVuY3Rpb24gQ0ZMb2NhbGVDb3B5Q3VycmVudCBpbiB0aGUKKyAgIENvcmVGb3VuZGF0aW9uIGZyYW1ld29yay4gKi8KKyN1bmRlZiBIQVZFX0NGTE9DQUxFQ09QWUNVUlJFTlQKKworLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIE1hY09TIFggZnVuY3Rpb24gQ0ZQcmVmZXJlbmNlc0NvcHlBcHBWYWx1ZSBpbgorICAgdGhlIENvcmVGb3VuZGF0aW9uIGZyYW1ld29yay4gKi8KKyN1bmRlZiBIQVZFX0NGUFJFRkVSRU5DRVNDT1BZQVBQVkFMVUUKKworLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIDxjdXJzZXMuaD4gaGVhZGVyIGZpbGUuICovCisjdW5kZWYgSEFWRV9DVVJTRVNfSAorCisvKiBEZWZpbmUgaWYgdGhlIEdOVSBkY2dldHRleHQoKSBmdW5jdGlvbiBpcyBhbHJlYWR5IHByZXNlbnQgb3IgcHJlaW5zdGFsbGVkLgorICAgKi8KKyN1bmRlZiBIQVZFX0RDR0VUVEVYVAorCisvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgZGVjbGFyYXRpb24gb2YgYHN5c19zaWdsaXN0JywgYW5kIHRvIDAgaWYgeW91CisgICBkb24ndC4gKi8KKyN1bmRlZiBIQVZFX0RFQ0xfU1lTX1NJR0xJU1QKKworLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIDxlcnJvci5oPiBoZWFkZXIgZmlsZS4gKi8KKyN1bmRlZiBIQVZFX0VSUk9SX0gKKworLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBnZXRkdGFibGVzaXplJyBmdW5jdGlvbi4gKi8KKyN1bmRlZiBIQVZFX0dFVERUQUJMRVNJWkUKKworLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBnZXRleGVjbmFtZScgZnVuY3Rpb24uICovCisjdW5kZWYgSEFWRV9HRVRFWEVDTkFNRQorCisvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYGdldG9wdCcgZnVuY3Rpb24uICovCisjdW5kZWYgSEFWRV9HRVRPUFQKKworLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBnZXRvcHRfbG9uZycgZnVuY3Rpb24uICovCisjdW5kZWYgSEFWRV9HRVRPUFRfTE9ORworCisvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYGdldHByb2duYW1lJyBmdW5jdGlvbi4gKi8KKyN1bmRlZiBIQVZFX0dFVFBST0dOQU1FCisKKy8qIERlZmluZSBpZiB0aGUgR05VIGdldHRleHQoKSBmdW5jdGlvbiBpcyBhbHJlYWR5IHByZXNlbnQgb3IgcHJlaW5zdGFsbGVkLiAqLworI3VuZGVmIEhBVkVfR0VUVEVYVAorCisvKiBEZWZpbmUgaWYgeW91IGhhdmUgdGhlIGljb252KCkgZnVuY3Rpb24gYW5kIGl0IHdvcmtzLiAqLworI3VuZGVmIEhBVkVfSUNPTlYKKworLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIDxpbnR0eXBlcy5oPiBoZWFkZXIgZmlsZS4gKi8KKyN1bmRlZiBIQVZFX0lOVFRZUEVTX0gKKworLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBpc2FzY2lpJyBmdW5jdGlvbi4gKi8KKyN1bmRlZiBIQVZFX0lTQVNDSUkKKworLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIDxrdm0uaD4gaGVhZGVyIGZpbGUuICovCisjdW5kZWYgSEFWRV9LVk1fSAorCisvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgPGxpYmludGwuaD4gaGVhZGVyIGZpbGUuICovCisjdW5kZWYgSEFWRV9MSUJJTlRMX0gKKworLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIDxsaW51eC9maWVtYXAuaD4gaGVhZGVyIGZpbGUuICovCisjdW5kZWYgSEFWRV9MSU5VWF9GSUVNQVBfSAorCisvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgPGxvY2FsZS5oPiBoZWFkZXIgZmlsZS4gKi8KKyN1bmRlZiBIQVZFX0xPQ0FMRV9ICisKKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgbHV0aW1lcycgZnVuY3Rpb24uICovCisjdW5kZWYgSEFWRV9MVVRJTUVTCisKKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgbWVtY3B5JyBmdW5jdGlvbi4gKi8KKyN1bmRlZiBIQVZFX01FTUNQWQorCisvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgPG1lbW9yeS5oPiBoZWFkZXIgZmlsZS4gKi8KKyN1bmRlZiBIQVZFX01FTU9SWV9ICisKKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgbW1hcCcgZnVuY3Rpb24uICovCisjdW5kZWYgSEFWRV9NTUFQCisKKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8bmN1cnNlc3cvbmN1cnNlcy5oPiBoZWFkZXIgZmlsZS4gKi8KKyN1bmRlZiBIQVZFX05DVVJTRVNXX05DVVJTRVNfSAorCisvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgPG5jdXJzZXN3L3Rlcm0uaD4gaGVhZGVyIGZpbGUuICovCisjdW5kZWYgSEFWRV9OQ1VSU0VTV19URVJNX0gKKworLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIDxuY3Vyc2VzLmg+IGhlYWRlciBmaWxlLiAqLworI3VuZGVmIEhBVkVfTkNVUlNFU19ICisKKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8bmN1cnNlcy9uY3Vyc2VzLmg+IGhlYWRlciBmaWxlLiAqLworI3VuZGVmIEhBVkVfTkNVUlNFU19OQ1VSU0VTX0gKKworLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIDxuY3Vyc2VzL3Rlcm0uaD4gaGVhZGVyIGZpbGUuICovCisjdW5kZWYgSEFWRV9OQ1VSU0VTX1RFUk1fSAorCisvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYG9ic3RhY2tfZnJlZScgZnVuY3Rpb24uICovCisjdW5kZWYgSEFWRV9PQlNUQUNLX0ZSRUUKKworLyogRGVmaW5lIHRvIDEgaWYgJ29mZnNldG9mJyBpcyBkZWNsYXJlZCBpbiA8c3RkZGVmLmg+ICovCisjdW5kZWYgSEFWRV9PRkZTRVRPRgorCisvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYHBvc2l4X2ZhZHZpc2UnIGZ1bmN0aW9uLiAqLworI3VuZGVmIEhBVkVfUE9TSVhfRkFEVklTRQorCisvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSBwcm9ncmFtX2ludm9jYXRpb25fc2hvcnRfbmFtZSAqLworI3VuZGVmIEhBVkVfUFJPR1JBTV9JTlZPQ0FUSU9OX1NIT1JUX05BTUUKKworLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBzY2FuZGlyJyBmdW5jdGlvbi4gKi8KKyN1bmRlZiBIQVZFX1NDQU5ESVIKKworLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBzZXRzaWQnIGZ1bmN0aW9uLiAqLworI3VuZGVmIEhBVkVfU0VUU0lECisKKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8c3RkZGVmLmg+IGhlYWRlciBmaWxlLiAqLworI3VuZGVmIEhBVkVfU1REREVGX0gKKworLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIDxzdGRpbnQuaD4gaGVhZGVyIGZpbGUuICovCisjdW5kZWYgSEFWRV9TVERJTlRfSAorCisvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgPHN0ZGxpYi5oPiBoZWFkZXIgZmlsZS4gKi8KKyN1bmRlZiBIQVZFX1NURExJQl9ICisKKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgc3RyZXJyb3InIGZ1bmN0aW9uLiAqLworI3VuZGVmIEhBVkVfU1RSRVJST1IKKworLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIDxzdHJpbmdzLmg+IGhlYWRlciBmaWxlLiAqLworI3VuZGVmIEhBVkVfU1RSSU5HU19ICisKKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8c3RyaW5nLmg+IGhlYWRlciBmaWxlLiAqLworI3VuZGVmIEhBVkVfU1RSSU5HX0gKKworLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBzdHJubGVuJyBmdW5jdGlvbi4gKi8KKyN1bmRlZiBIQVZFX1NUUk5MRU4KKworLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBzdHJzaWduYWwnIGZ1bmN0aW9uLiAqLworI3VuZGVmIEhBVkVfU1RSU0lHTkFMCisKKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgc3RydG9pbWF4JyBmdW5jdGlvbi4gKi8KKyN1bmRlZiBIQVZFX1NUUlRPSU1BWAorCisvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYHN0cnRvdWwnIGZ1bmN0aW9uLiAqLworI3VuZGVmIEhBVkVfU1RSVE9VTAorCisvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgPHN5cy9jZGVmcy5oPiBoZWFkZXIgZmlsZS4gKi8KKyN1bmRlZiBIQVZFX1NZU19DREVGU19ICisKKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8c3lzL3N0YXQuaD4gaGVhZGVyIGZpbGUuICovCisjdW5kZWYgSEFWRV9TWVNfU1RBVF9ICisKKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8c3lzL3N5c2NhbGwuaD4gaGVhZGVyIGZpbGUuICovCisjdW5kZWYgSEFWRV9TWVNfU1lTQ0FMTF9ICisKKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8c3lzL3R5cGVzLmg+IGhlYWRlciBmaWxlLiAqLworI3VuZGVmIEhBVkVfU1lTX1RZUEVTX0gKKworLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIDx0ZXJtLmg+IGhlYWRlciBmaWxlLiAqLworI3VuZGVmIEhBVkVfVEVSTV9ICisKKy8qIERlZmluZSB0byAxIGlmICdUSU9DTk9UVFknIGlzIGRlY2xhcmVkIGluIDxzeXMvaW9jdGwuaD4gKi8KKyN1bmRlZiBIQVZFX1RJT0NOT1RUWQorCisvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgPHVuaXN0ZC5oPiBoZWFkZXIgZmlsZS4gKi8KKyN1bmRlZiBIQVZFX1VOSVNURF9ICisKKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgdW5zZXRlbnYnIGZ1bmN0aW9uLiAqLworI3VuZGVmIEhBVkVfVU5TRVRFTlYKKworLyogRGVmaW5lIHRvIDEgaWYgdGhlICd2YV9jb3B5JyBtYWNybyBleGlzdHMgKi8KKyN1bmRlZiBIQVZFX1ZBX0NPUFkKKworLyogRGVmaW5lIHRvIDEgaWYgJ1dDT1JFRFVNUCcgaXMgZGVjbGFyZWQgaW4gPHN5cy93YWl0Lmg+ICovCisjdW5kZWYgSEFWRV9XQ09SRURVTVAKKworLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgX19wcm9nbmFtZSAqLworI3VuZGVmIEhBVkVfX19QUk9HTkFNRQorCisvKiBBY2tub3dsZWRnZSB0aGUgdm9sYXRpbGl0eSBvZiB0aGUgQVBJLiAqLworI3VuZGVmIExJQkRQS0dfVk9MQVRJTEVfQVBJCisKKy8qIE5hbWUgb2YgcGFja2FnZSAqLworI3VuZGVmIFBBQ0tBR0UKKworLyogRGVmaW5lIHRvIHRoZSBhZGRyZXNzIHdoZXJlIGJ1ZyByZXBvcnRzIGZvciB0aGlzIHBhY2thZ2Ugc2hvdWxkIGJlIHNlbnQuICovCisjdW5kZWYgUEFDS0FHRV9CVUdSRVBPUlQKKworLyogRGVmaW5lIHRvIHRoZSBmdWxsIG5hbWUgb2YgdGhpcyBwYWNrYWdlLiAqLworI3VuZGVmIFBBQ0tBR0VfTkFNRQorCisvKiBEZWZpbmUgdG8gdGhlIGZ1bGwgbmFtZSBhbmQgdmVyc2lvbiBvZiB0aGlzIHBhY2thZ2UuICovCisjdW5kZWYgUEFDS0FHRV9TVFJJTkcKKworLyogRGVmaW5lIHRvIHRoZSBvbmUgc3ltYm9sIHNob3J0IG5hbWUgb2YgdGhpcyBwYWNrYWdlLiAqLworI3VuZGVmIFBBQ0tBR0VfVEFSTkFNRQorCisvKiBEZWZpbmUgdG8gdGhlIGhvbWUgcGFnZSBmb3IgdGhpcyBwYWNrYWdlLiAqLworI3VuZGVmIFBBQ0tBR0VfVVJMCisKKy8qIERlZmluZSB0byB0aGUgdmVyc2lvbiBvZiB0aGlzIHBhY2thZ2UuICovCisjdW5kZWYgUEFDS0FHRV9WRVJTSU9OCisKKy8qIFRoZSBzaXplIG9mIGB1bnNpZ25lZCBpbnQnLCBhcyBjb21wdXRlZCBieSBzaXplb2YuICovCisjdW5kZWYgU0laRU9GX1VOU0lHTkVEX0lOVAorCisvKiBUaGUgc2l6ZSBvZiBgdW5zaWduZWQgbG9uZycsIGFzIGNvbXB1dGVkIGJ5IHNpemVvZi4gKi8KKyN1bmRlZiBTSVpFT0ZfVU5TSUdORURfTE9ORworCisvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgQU5TSSBDIGhlYWRlciBmaWxlcy4gKi8KKyN1bmRlZiBTVERDX0hFQURFUlMKKworLyogVXNlIHVucmVsaWFibGUgbW1hcCBzdXBwb3J0ICovCisjdW5kZWYgVVNFX01NQVAKKworLyogRW5hYmxlIGV4dGVuc2lvbnMgb24gQUlYIDMsIEludGVyaXguICAqLworI2lmbmRlZiBfQUxMX1NPVVJDRQorIyB1bmRlZiBfQUxMX1NPVVJDRQorI2VuZGlmCisvKiBFbmFibGUgR05VIGV4dGVuc2lvbnMgb24gc3lzdGVtcyB0aGF0IGhhdmUgdGhlbS4gICovCisjaWZuZGVmIF9HTlVfU09VUkNFCisjIHVuZGVmIF9HTlVfU09VUkNFCisjZW5kaWYKKy8qIEVuYWJsZSB0aHJlYWRpbmcgZXh0ZW5zaW9ucyBvbiBTb2xhcmlzLiAgKi8KKyNpZm5kZWYgX1BPU0lYX1BUSFJFQURfU0VNQU5USUNTCisjIHVuZGVmIF9QT1NJWF9QVEhSRUFEX1NFTUFOVElDUworI2VuZGlmCisvKiBFbmFibGUgZXh0ZW5zaW9ucyBvbiBIUCBOb25TdG9wLiAgKi8KKyNpZm5kZWYgX1RBTkRFTV9TT1VSQ0UKKyMgdW5kZWYgX1RBTkRFTV9TT1VSQ0UKKyNlbmRpZgorLyogRW5hYmxlIGdlbmVyYWwgZXh0ZW5zaW9ucyBvbiBTb2xhcmlzLiAgKi8KKyNpZm5kZWYgX19FWFRFTlNJT05TX18KKyMgdW5kZWYgX19FWFRFTlNJT05TX18KKyNlbmRpZgorCisKKy8qIFZlcnNpb24gbnVtYmVyIG9mIHBhY2thZ2UgKi8KKyN1bmRlZiBWRVJTSU9OCisKKy8qIERlZmluZSB0byAxIHRvIHVzZSBiejIgcmF0aGVyIHRoYW4gY29uc29sZSB0b29sICovCisjdW5kZWYgV0lUSF9CWjIKKworLyogRGVmaW5lIHRvIDEgaWYgZHNlbGVjdCBpcyBjb21waWxlZC4gKi8KKyN1bmRlZiBXSVRIX0RTRUxFQ1QKKworLyogRGVmaW5lIHRvIDEgaWYgaW5zdGFsbC1pbmZvIGlzIGNvbXBpbGVkLiAqLworI3VuZGVmIFdJVEhfSU5TVEFMTF9JTkZPCisKKy8qIERlZmluZSB0byAxIHRvIGNvbXBpbGUgaW4gU0VMaW51eCBzdXBwb3J0ICovCisjdW5kZWYgV0lUSF9TRUxJTlVYCisKKy8qIERlZmluZSB0byAxIGlmIHN0YXJ0LXN0b3AtZGFlbW9uIGlzIGNvbXBpbGVkLiAqLworI3VuZGVmIFdJVEhfU1RBUlRfU1RPUF9EQUVNT04KKworLyogRGVmaW5lIHRvIDEgaWYgdXBkYXRlLWFsdGVybmF0aXZlcyBpcyBjb21waWxlZC4gKi8KKyN1bmRlZiBXSVRIX1VQREFURV9BTFRFUk5BVElWRVMKKworLyogRGVmaW5lIHRvIDEgdG8gdXNlIHpsaWIgcmF0aGVyIHRoYW4gY29uc29sZSB0b29sICovCisjdW5kZWYgV0lUSF9aTElCCisKKy8qIERlZmluZSBXT1JEU19CSUdFTkRJQU4gdG8gMSBpZiB5b3VyIHByb2Nlc3NvciBzdG9yZXMgd29yZHMgd2l0aCB0aGUgbW9zdAorICAgc2lnbmlmaWNhbnQgYnl0ZSBmaXJzdCAobGlrZSBNb3Rvcm9sYSBhbmQgU1BBUkMsIHVubGlrZSBJbnRlbCkuICovCisjaWYgZGVmaW5lZCBBQ19BUFBMRV9VTklWRVJTQUxfQlVJTEQKKyMgaWYgZGVmaW5lZCBfX0JJR19FTkRJQU5fXworIyAgZGVmaW5lIFdPUkRTX0JJR0VORElBTiAxCisjIGVuZGlmCisjZWxzZQorIyBpZm5kZWYgV09SRFNfQklHRU5ESUFOCisjICB1bmRlZiBXT1JEU19CSUdFTkRJQU4KKyMgZW5kaWYKKyNlbmRpZgorCisvKiBEZWZpbmUgdG8gMSBpZiBgbGV4JyBkZWNsYXJlcyBgeXl0ZXh0JyBhcyBhIGBjaGFyIConIGJ5IGRlZmF1bHQsIG5vdCBhCisgICBgY2hhcltdJy4gKi8KKyN1bmRlZiBZWVRFWFRfUE9JTlRFUgorCisvKiBOdW1iZXIgb2YgYml0cyBpbiBhIGZpbGUgb2Zmc2V0LCBvbiBob3N0cyB3aGVyZSB0aGlzIGlzIHNldHRhYmxlLiAqLworI3VuZGVmIF9GSUxFX09GRlNFVF9CSVRTCisKKy8qIERlZmluZSBmb3IgbGFyZ2UgZmlsZXMsIG9uIEFJWC1zdHlsZSBob3N0cy4gKi8KKyN1bmRlZiBfTEFSR0VfRklMRVMKKworLyogRGVmaW5lIHRvIDEgaWYgb24gTUlOSVguICovCisjdW5kZWYgX01JTklYCisKKy8qIERlZmluZSB0byAyIGlmIHRoZSBzeXN0ZW0gZG9lcyBub3QgcHJvdmlkZSBQT1NJWC4xIGZlYXR1cmVzIGV4Y2VwdCB3aXRoCisgICB0aGlzIGRlZmluZWQuICovCisjdW5kZWYgX1BPU0lYXzFfU09VUkNFCisKKy8qIERlZmluZSB0byAxIGlmIHlvdSBuZWVkIHRvIGluIG9yZGVyIGZvciBgc3RhdCcgYW5kIG90aGVyIHRoaW5ncyB0byB3b3JrLiAqLworI3VuZGVmIF9QT1NJWF9TT1VSQ0UKKworLyogRGVmaW5lIHRvIGVtcHR5IGlmIGBjb25zdCcgZG9lcyBub3QgY29uZm9ybSB0byBBTlNJIEMuICovCisjdW5kZWYgY29uc3QKKworLyogRGVmaW5lIHRvIGBfX2lubGluZV9fJyBvciBgX19pbmxpbmUnIGlmIHRoYXQncyB3aGF0IHRoZSBDIGNvbXBpbGVyCisgICBjYWxscyBpdCwgb3IgdG8gbm90aGluZyBpZiAnaW5saW5lJyBpcyBub3Qgc3VwcG9ydGVkIHVuZGVyIGFueSBuYW1lLiAgKi8KKyNpZm5kZWYgX19jcGx1c3BsdXMKKyN1bmRlZiBpbmxpbmUKKyNlbmRpZgorCisvKiBEZWZpbmUgdG8gYGludCcgaWYgPHN5cy90eXBlcy5oPiBkb2VzIG5vdCBkZWZpbmUuICovCisjdW5kZWYgbW9kZV90CisKKy8qIERlZmluZSB0byBgaW50JyBpZiA8c3lzL3R5cGVzLmg+IGRvZXMgbm90IGRlZmluZS4gKi8KKyN1bmRlZiBwaWRfdAorCisvKiBEZWZpbmUgdG8gJ2ludCcgaWYgPG1hbGxvYy5oPiBkb2VzIG5vdCBkZWZpbmUuICovCisjdW5kZWYgcHRyZGlmZl90CisKKy8qIERlZmluZSB0byBgdW5zaWduZWQgaW50JyBpZiA8c3lzL3R5cGVzLmg+IGRvZXMgbm90IGRlZmluZS4gKi8KKyN1bmRlZiBzaXplX3QKKworLyogRGVmaW5lIHRvIGVtcHR5IGlmIHRoZSBrZXl3b3JkIGB2b2xhdGlsZScgZG9lcyBub3Qgd29yay4gV2FybmluZzogdmFsaWQKKyAgIGNvZGUgdXNpbmcgYHZvbGF0aWxlJyBjYW4gYmVjb21lIGluY29ycmVjdCB3aXRob3V0LiBEaXNhYmxlIHdpdGggY2FyZS4gKi8KKyN1bmRlZiB2b2xhdGlsZQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9jb25maWd1cmUgYi9kcGtnLTEuMTYuMS4xL2NvbmZpZ3VyZQpuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwLi5lYjgwZTM4Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9jb25maWd1cmUKQEAgLTAsMCArMSwxMjQ0NSBAQAorIyEgL2Jpbi9zaAorIyBHdWVzcyB2YWx1ZXMgZm9yIHN5c3RlbS1kZXBlbmRlbnQgdmFyaWFibGVzIGFuZCBjcmVhdGUgTWFrZWZpbGVzLgorIyBHZW5lcmF0ZWQgYnkgR05VIEF1dG9jb25mIDIuNjggZm9yIGRwa2cgMS4xNi4xLjEuCisjCisjIFJlcG9ydCBidWdzIHRvIDxkZWJpYW4tZHBrZ0BsaXN0cy5kZWJpYW4ub3JnPi4KKyMKKyMKKyMgQ29weXJpZ2h0IChDKSAxOTkyLCAxOTkzLCAxOTk0LCAxOTk1LCAxOTk2LCAxOTk4LCAxOTk5LCAyMDAwLCAyMDAxLAorIyAyMDAyLCAyMDAzLCAyMDA0LCAyMDA1LCAyMDA2LCAyMDA3LCAyMDA4LCAyMDA5LCAyMDEwIEZyZWUgU29mdHdhcmUKKyMgRm91bmRhdGlvbiwgSW5jLgorIworIworIyBUaGlzIGNvbmZpZ3VyZSBzY3JpcHQgaXMgZnJlZSBzb2Z0d2FyZTsgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbgorIyBnaXZlcyB1bmxpbWl0ZWQgcGVybWlzc2lvbiB0byBjb3B5LCBkaXN0cmlidXRlIGFuZCBtb2RpZnkgaXQuCisjIyAtLS0tLS0tLS0tLS0tLS0tLS0tLSAjIworIyMgTTRzaCBJbml0aWFsaXphdGlvbi4gIyMKKyMjIC0tLS0tLS0tLS0tLS0tLS0tLS0tICMjCisKKyMgQmUgbW9yZSBCb3VybmUgY29tcGF0aWJsZQorRFVBTENBU0U9MTsgZXhwb3J0IERVQUxDQVNFICMgZm9yIE1LUyBzaAoraWYgdGVzdCAtbiAiJHtaU0hfVkVSU0lPTitzZXR9IiAmJiAoZW11bGF0ZSBzaCkgPi9kZXYvbnVsbCAyPiYxOyB0aGVuIDoKKyAgZW11bGF0ZSBzaAorICBOVUxMQ01EPToKKyAgIyBQcmUtNC4yIHZlcnNpb25zIG9mIFpzaCBkbyB3b3JkIHNwbGl0dGluZyBvbiAkezErIiRAIn0sIHdoaWNoCisgICMgaXMgY29udHJhcnkgdG8gb3VyIHVzYWdlLiAgRGlzYWJsZSB0aGlzIGZlYXR1cmUuCisgIGFsaWFzIC1nICckezErIiRAIn0nPSciJEAiJworICBzZXRvcHQgTk9fR0xPQl9TVUJTVAorZWxzZQorICBjYXNlIGAoc2V0IC1vKSAyPi9kZXYvbnVsbGAgaW4gIygKKyAgKnBvc2l4KikgOgorICAgIHNldCAtbyBwb3NpeCA7OyAjKAorICAqKSA6CisgICAgIDs7Citlc2FjCitmaQorCisKK2FzX25sPScKKycKK2V4cG9ydCBhc19ubAorIyBQcmludGluZyBhIGxvbmcgc3RyaW5nIGNyYXNoZXMgU29sYXJpcyA3IC91c3IvYmluL3ByaW50Zi4KK2FzX2VjaG89J1xcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFwnCithc19lY2hvPSRhc19lY2hvJGFzX2VjaG8kYXNfZWNobyRhc19lY2hvJGFzX2VjaG8KK2FzX2VjaG89JGFzX2VjaG8kYXNfZWNobyRhc19lY2hvJGFzX2VjaG8kYXNfZWNobyRhc19lY2hvCisjIFByZWZlciBhIGtzaCBzaGVsbCBidWlsdGluIG92ZXIgYW4gZXh0ZXJuYWwgcHJpbnRmIHByb2dyYW0gb24gU29sYXJpcywKKyMgYnV0IHdpdGhvdXQgd2FzdGluZyBmb3JrcyBmb3IgYmFzaCBvciB6c2guCitpZiB0ZXN0IC16ICIkQkFTSF9WRVJTSU9OJFpTSF9WRVJTSU9OIiBcCisgICAgJiYgKHRlc3QgIlhgcHJpbnQgLXIgLS0gJGFzX2VjaG9gIiA9ICJYJGFzX2VjaG8iKSAyPi9kZXYvbnVsbDsgdGhlbgorICBhc19lY2hvPSdwcmludCAtciAtLScKKyAgYXNfZWNob19uPSdwcmludCAtcm4gLS0nCitlbGlmICh0ZXN0ICJYYHByaW50ZiAlcyAkYXNfZWNob2AiID0gIlgkYXNfZWNobyIpIDI+L2Rldi9udWxsOyB0aGVuCisgIGFzX2VjaG89J3ByaW50ZiAlc1xuJworICBhc19lY2hvX249J3ByaW50ZiAlcycKK2Vsc2UKKyAgaWYgdGVzdCAiWGAoL3Vzci91Y2IvZWNobyAtbiAtbiAkYXNfZWNobykgMj4vZGV2L251bGxgIiA9ICJYLW4gJGFzX2VjaG8iOyB0aGVuCisgICAgYXNfZWNob19ib2R5PSdldmFsIC91c3IvdWNiL2VjaG8gLW4gIiQxJGFzX25sIicKKyAgICBhc19lY2hvX249Jy91c3IvdWNiL2VjaG8gLW4nCisgIGVsc2UKKyAgICBhc19lY2hvX2JvZHk9J2V2YWwgZXhwciAiWCQxIiA6ICJYXFwoLipcXCkiJworICAgIGFzX2VjaG9fbl9ib2R5PSdldmFsCisgICAgICBhcmc9JDE7CisgICAgICBjYXNlICRhcmcgaW4gIygKKyAgICAgICoiJGFzX25sIiopCisJZXhwciAiWCRhcmciIDogIlhcXCguKlxcKSRhc19ubCI7CisJYXJnPWBleHByICJYJGFyZyIgOiAiLiokYXNfbmxcXCguKlxcKSJgOzsKKyAgICAgIGVzYWM7CisgICAgICBleHByICJYJGFyZyIgOiAiWFxcKC4qXFwpIiB8IHRyIC1kICIkYXNfbmwiCisgICAgJworICAgIGV4cG9ydCBhc19lY2hvX25fYm9keQorICAgIGFzX2VjaG9fbj0nc2ggLWMgJGFzX2VjaG9fbl9ib2R5IGFzX2VjaG8nCisgIGZpCisgIGV4cG9ydCBhc19lY2hvX2JvZHkKKyAgYXNfZWNobz0nc2ggLWMgJGFzX2VjaG9fYm9keSBhc19lY2hvJworZmkKKworIyBUaGUgdXNlciBpcyBhbHdheXMgcmlnaHQuCitpZiB0ZXN0ICIke1BBVEhfU0VQQVJBVE9SK3NldH0iICE9IHNldDsgdGhlbgorICBQQVRIX1NFUEFSQVRPUj06CisgIChQQVRIPScvYmluOy9iaW4nOyBGUEFUSD0kUEFUSDsgc2ggLWMgOikgPi9kZXYvbnVsbCAyPiYxICYmIHsKKyAgICAoUEFUSD0nL2JpbjovYmluJzsgRlBBVEg9JFBBVEg7IHNoIC1jIDopID4vZGV2L251bGwgMj4mMSB8fAorICAgICAgUEFUSF9TRVBBUkFUT1I9JzsnCisgIH0KK2ZpCisKKworIyBJRlMKKyMgV2UgbmVlZCBzcGFjZSwgdGFiIGFuZCBuZXcgbGluZSwgaW4gcHJlY2lzZWx5IHRoYXQgb3JkZXIuICBRdW90aW5nIGlzCisjIHRoZXJlIHRvIHByZXZlbnQgZWRpdG9ycyBmcm9tIGNvbXBsYWluaW5nIGFib3V0IHNwYWNlLXRhYi4KKyMgKElmIF9BU19QQVRIX1dBTEsgd2VyZSBjYWxsZWQgd2l0aCBJRlMgdW5zZXQsIGl0IHdvdWxkIGRpc2FibGUgd29yZAorIyBzcGxpdHRpbmcgYnkgc2V0dGluZyBJRlMgdG8gZW1wdHkgdmFsdWUuKQorSUZTPSIgIiIJJGFzX25sIgorCisjIEZpbmQgd2hvIHdlIGFyZS4gIExvb2sgaW4gdGhlIHBhdGggaWYgd2UgY29udGFpbiBubyBkaXJlY3Rvcnkgc2VwYXJhdG9yLgorYXNfbXlzZWxmPQorY2FzZSAkMCBpbiAjKCgKKyAgKltcXC9dKiApIGFzX215c2VsZj0kMCA7OworICAqKSBhc19zYXZlX0lGUz0kSUZTOyBJRlM9JFBBVEhfU0VQQVJBVE9SCitmb3IgYXNfZGlyIGluICRQQVRICitkbworICBJRlM9JGFzX3NhdmVfSUZTCisgIHRlc3QgLXogIiRhc19kaXIiICYmIGFzX2Rpcj0uCisgICAgdGVzdCAtciAiJGFzX2Rpci8kMCIgJiYgYXNfbXlzZWxmPSRhc19kaXIvJDAgJiYgYnJlYWsKKyAgZG9uZQorSUZTPSRhc19zYXZlX0lGUworCisgICAgIDs7Citlc2FjCisjIFdlIGRpZCBub3QgZmluZCBvdXJzZWx2ZXMsIG1vc3QgcHJvYmFibHkgd2Ugd2VyZSBydW4gYXMgYHNoIENPTU1BTkQnCisjIGluIHdoaWNoIGNhc2Ugd2UgYXJlIG5vdCB0byBiZSBmb3VuZCBpbiB0aGUgcGF0aC4KK2lmIHRlc3QgIngkYXNfbXlzZWxmIiA9IHg7IHRoZW4KKyAgYXNfbXlzZWxmPSQwCitmaQoraWYgdGVzdCAhIC1mICIkYXNfbXlzZWxmIjsgdGhlbgorICAkYXNfZWNobyAiJGFzX215c2VsZjogZXJyb3I6IGNhbm5vdCBmaW5kIG15c2VsZjsgcmVydW4gd2l0aCBhbiBhYnNvbHV0ZSBmaWxlIG5hbWUiID4mMgorICBleGl0IDEKK2ZpCisKKyMgVW5zZXQgdmFyaWFibGVzIHRoYXQgd2UgZG8gbm90IG5lZWQgYW5kIHdoaWNoIGNhdXNlIGJ1Z3MgKGUuZy4gaW4KKyMgcHJlLTMuMCBVV0lOIGtzaCkuICBCdXQgZG8gbm90IGNhdXNlIGJ1Z3MgaW4gYmFzaCAyLjAxOyB0aGUgInx8IGV4aXQgMSIKKyMgc3VwcHJlc3NlcyBhbnkgIlNlZ21lbnRhdGlvbiBmYXVsdCIgbWVzc2FnZSB0aGVyZS4gICcoKCcgY291bGQKKyMgdHJpZ2dlciBhIGJ1ZyBpbiBwZGtzaCA1LjIuMTQuCitmb3IgYXNfdmFyIGluIEJBU0hfRU5WIEVOViBNQUlMIE1BSUxQQVRICitkbyBldmFsIHRlc3QgeFwkeyRhc192YXIrc2V0fSA9IHhzZXQgXAorICAmJiAoICh1bnNldCAkYXNfdmFyKSB8fCBleGl0IDEpID4vZGV2L251bGwgMj4mMSAmJiB1bnNldCAkYXNfdmFyIHx8IDoKK2RvbmUKK1BTMT0nJCAnCitQUzI9Jz4gJworUFM0PScrICcKKworIyBOTFMgbnVpc2FuY2VzLgorTENfQUxMPUMKK2V4cG9ydCBMQ19BTEwKK0xBTkdVQUdFPUMKK2V4cG9ydCBMQU5HVUFHRQorCisjIENEUEFUSC4KKyh1bnNldCBDRFBBVEgpID4vZGV2L251bGwgMj4mMSAmJiB1bnNldCBDRFBBVEgKKworaWYgdGVzdCAieCRDT05GSUdfU0hFTEwiID0geDsgdGhlbgorICBhc19ib3VybmVfY29tcGF0aWJsZT0iaWYgdGVzdCAtbiBcIlwke1pTSF9WRVJTSU9OK3NldH1cIiAmJiAoZW11bGF0ZSBzaCkgPi9kZXYvbnVsbCAyPiYxOyB0aGVuIDoKKyAgZW11bGF0ZSBzaAorICBOVUxMQ01EPToKKyAgIyBQcmUtNC4yIHZlcnNpb25zIG9mIFpzaCBkbyB3b3JkIHNwbGl0dGluZyBvbiBcJHsxK1wiXCRAXCJ9LCB3aGljaAorICAjIGlzIGNvbnRyYXJ5IHRvIG91ciB1c2FnZS4gIERpc2FibGUgdGhpcyBmZWF0dXJlLgorICBhbGlhcyAtZyAnXCR7MStcIlwkQFwifSc9J1wiXCRAXCInCisgIHNldG9wdCBOT19HTE9CX1NVQlNUCitlbHNlCisgIGNhc2UgXGAoc2V0IC1vKSAyPi9kZXYvbnVsbFxgIGluICMoCisgICpwb3NpeCopIDoKKyAgICBzZXQgLW8gcG9zaXggOzsgIygKKyAgKikgOgorICAgICA7OworZXNhYworZmkKKyIKKyAgYXNfcmVxdWlyZWQ9ImFzX2ZuX3JldHVybiAoKSB7IChleGl0IFwkMSk7IH0KK2FzX2ZuX3N1Y2Nlc3MgKCkgeyBhc19mbl9yZXR1cm4gMDsgfQorYXNfZm5fZmFpbHVyZSAoKSB7IGFzX2ZuX3JldHVybiAxOyB9Cithc19mbl9yZXRfc3VjY2VzcyAoKSB7IHJldHVybiAwOyB9Cithc19mbl9yZXRfZmFpbHVyZSAoKSB7IHJldHVybiAxOyB9CisKK2V4aXRjb2RlPTAKK2FzX2ZuX3N1Y2Nlc3MgfHwgeyBleGl0Y29kZT0xOyBlY2hvIGFzX2ZuX3N1Y2Nlc3MgZmFpbGVkLjsgfQorYXNfZm5fZmFpbHVyZSAmJiB7IGV4aXRjb2RlPTE7IGVjaG8gYXNfZm5fZmFpbHVyZSBzdWNjZWVkZWQuOyB9Cithc19mbl9yZXRfc3VjY2VzcyB8fCB7IGV4aXRjb2RlPTE7IGVjaG8gYXNfZm5fcmV0X3N1Y2Nlc3MgZmFpbGVkLjsgfQorYXNfZm5fcmV0X2ZhaWx1cmUgJiYgeyBleGl0Y29kZT0xOyBlY2hvIGFzX2ZuX3JldF9mYWlsdXJlIHN1Y2NlZWRlZC47IH0KK2lmICggc2V0IHg7IGFzX2ZuX3JldF9zdWNjZXNzIHkgJiYgdGVzdCB4ID0gXCJcJDFcIiApOyB0aGVuIDoKKworZWxzZQorICBleGl0Y29kZT0xOyBlY2hvIHBvc2l0aW9uYWwgcGFyYW1ldGVycyB3ZXJlIG5vdCBzYXZlZC4KK2ZpCit0ZXN0IHhcJGV4aXRjb2RlID0geDAgfHwgZXhpdCAxIgorICBhc19zdWdnZXN0ZWQ9IiAgYXNfbGluZW5vXzE9Ijthc19zdWdnZXN0ZWQ9JGFzX3N1Z2dlc3RlZCRMSU5FTk87YXNfc3VnZ2VzdGVkPSRhc19zdWdnZXN0ZWQiIGFzX2xpbmVub18xYT1cJExJTkVOTworICBhc19saW5lbm9fMj0iO2FzX3N1Z2dlc3RlZD0kYXNfc3VnZ2VzdGVkJExJTkVOTzthc19zdWdnZXN0ZWQ9JGFzX3N1Z2dlc3RlZCIgYXNfbGluZW5vXzJhPVwkTElORU5PCisgIGV2YWwgJ3Rlc3QgXCJ4XCRhc19saW5lbm9fMSdcJGFzX3J1bidcIiAhPSBcInhcJGFzX2xpbmVub18yJ1wkYXNfcnVuJ1wiICYmCisgIHRlc3QgXCJ4XGBleHByIFwkYXNfbGluZW5vXzEnXCRhc19ydW4nICsgMVxgXCIgPSBcInhcJGFzX2xpbmVub18yJ1wkYXNfcnVuJ1wiJyB8fCBleGl0IDEKK3Rlc3QgXCQoKCAxICsgMSApKSA9IDIgfHwgZXhpdCAxIgorICBpZiAoZXZhbCAiJGFzX3JlcXVpcmVkIikgMj4vZGV2L251bGw7IHRoZW4gOgorICBhc19oYXZlX3JlcXVpcmVkPXllcworZWxzZQorICBhc19oYXZlX3JlcXVpcmVkPW5vCitmaQorICBpZiB0ZXN0IHgkYXNfaGF2ZV9yZXF1aXJlZCA9IHh5ZXMgJiYgKGV2YWwgIiRhc19zdWdnZXN0ZWQiKSAyPi9kZXYvbnVsbDsgdGhlbiA6CisKK2Vsc2UKKyAgYXNfc2F2ZV9JRlM9JElGUzsgSUZTPSRQQVRIX1NFUEFSQVRPUgorYXNfZm91bmQ9ZmFsc2UKK2ZvciBhc19kaXIgaW4gL2JpbiRQQVRIX1NFUEFSQVRPUi91c3IvYmluJFBBVEhfU0VQQVJBVE9SJFBBVEgKK2RvCisgIElGUz0kYXNfc2F2ZV9JRlMKKyAgdGVzdCAteiAiJGFzX2RpciIgJiYgYXNfZGlyPS4KKyAgYXNfZm91bmQ9OgorICBjYXNlICRhc19kaXIgaW4gIygKKwkgLyopCisJICAgZm9yIGFzX2Jhc2UgaW4gc2ggYmFzaCBrc2ggc2g1OyBkbworCSAgICAgIyBUcnkgb25seSBzaGVsbHMgdGhhdCBleGlzdCwgdG8gc2F2ZSBzZXZlcmFsIGZvcmtzLgorCSAgICAgYXNfc2hlbGw9JGFzX2Rpci8kYXNfYmFzZQorCSAgICAgaWYgeyB0ZXN0IC1mICIkYXNfc2hlbGwiIHx8IHRlc3QgLWYgIiRhc19zaGVsbC5leGUiOyB9ICYmCisJCSAgICB7ICRhc19lY2hvICIkYXNfYm91cm5lX2NvbXBhdGlibGUiIiRhc19yZXF1aXJlZCIgfCBhc19ydW49YSAiJGFzX3NoZWxsIjsgfSAyPi9kZXYvbnVsbDsgdGhlbiA6CisgIENPTkZJR19TSEVMTD0kYXNfc2hlbGwgYXNfaGF2ZV9yZXF1aXJlZD15ZXMKKwkJICAgaWYgeyAkYXNfZWNobyAiJGFzX2JvdXJuZV9jb21wYXRpYmxlIiIkYXNfc3VnZ2VzdGVkIiB8IGFzX3J1bj1hICIkYXNfc2hlbGwiOyB9IDI+L2Rldi9udWxsOyB0aGVuIDoKKyAgYnJlYWsgMgorZmkKK2ZpCisJICAgZG9uZTs7CisgICAgICAgZXNhYworICBhc19mb3VuZD1mYWxzZQorZG9uZQorJGFzX2ZvdW5kIHx8IHsgaWYgeyB0ZXN0IC1mICIkU0hFTEwiIHx8IHRlc3QgLWYgIiRTSEVMTC5leGUiOyB9ICYmCisJICAgICAgeyAkYXNfZWNobyAiJGFzX2JvdXJuZV9jb21wYXRpYmxlIiIkYXNfcmVxdWlyZWQiIHwgYXNfcnVuPWEgIiRTSEVMTCI7IH0gMj4vZGV2L251bGw7IHRoZW4gOgorICBDT05GSUdfU0hFTEw9JFNIRUxMIGFzX2hhdmVfcmVxdWlyZWQ9eWVzCitmaTsgfQorSUZTPSRhc19zYXZlX0lGUworCisKKyAgICAgIGlmIHRlc3QgIngkQ09ORklHX1NIRUxMIiAhPSB4OyB0aGVuIDoKKyAgIyBXZSBjYW5ub3QgeWV0IGFzc3VtZSBhIGRlY2VudCBzaGVsbCwgc28gd2UgaGF2ZSB0byBwcm92aWRlIGEKKwkjIG5ldXRyYWxpemF0aW9uIHZhbHVlIGZvciBzaGVsbHMgd2l0aG91dCB1bnNldDsgYW5kIHRoaXMgYWxzbworCSMgd29ya3MgYXJvdW5kIHNoZWxscyB0aGF0IGNhbm5vdCB1bnNldCBub25leGlzdGVudCB2YXJpYWJsZXMuCisJIyBQcmVzZXJ2ZSAtdiBhbmQgLXggdG8gdGhlIHJlcGxhY2VtZW50IHNoZWxsLgorCUJBU0hfRU5WPS9kZXYvbnVsbAorCUVOVj0vZGV2L251bGwKKwkodW5zZXQgQkFTSF9FTlYpID4vZGV2L251bGwgMj4mMSAmJiB1bnNldCBCQVNIX0VOViBFTlYKKwlleHBvcnQgQ09ORklHX1NIRUxMCisJY2FzZSAkLSBpbiAjICgoKCgKKwkgICp2KngqIHwgKngqdiogKSBhc19vcHRzPS12eCA7OworCSAgKnYqICkgYXNfb3B0cz0tdiA7OworCSAgKngqICkgYXNfb3B0cz0teCA7OworCSAgKiApIGFzX29wdHM9IDs7CisJZXNhYworCWV4ZWMgIiRDT05GSUdfU0hFTEwiICRhc19vcHRzICIkYXNfbXlzZWxmIiAkezErIiRAIn0KK2ZpCisKKyAgICBpZiB0ZXN0IHgkYXNfaGF2ZV9yZXF1aXJlZCA9IHhubzsgdGhlbiA6CisgICRhc19lY2hvICIkMDogVGhpcyBzY3JpcHQgcmVxdWlyZXMgYSBzaGVsbCBtb3JlIG1vZGVybiB0aGFuIGFsbCIKKyAgJGFzX2VjaG8gIiQwOiB0aGUgc2hlbGxzIHRoYXQgSSBmb3VuZCBvbiB5b3VyIHN5c3RlbS4iCisgIGlmIHRlc3QgeCR7WlNIX1ZFUlNJT04rc2V0fSA9IHhzZXQgOyB0aGVuCisgICAgJGFzX2VjaG8gIiQwOiBJbiBwYXJ0aWN1bGFyLCB6c2ggJFpTSF9WRVJTSU9OIGhhcyBidWdzIGFuZCBzaG91bGQiCisgICAgJGFzX2VjaG8gIiQwOiBiZSB1cGdyYWRlZCB0byB6c2ggNC4zLjQgb3IgbGF0ZXIuIgorICBlbHNlCisgICAgJGFzX2VjaG8gIiQwOiBQbGVhc2UgdGVsbCBidWctYXV0b2NvbmZAZ251Lm9yZyBhbmQKKyQwOiBkZWJpYW4tZHBrZ0BsaXN0cy5kZWJpYW4ub3JnIGFib3V0IHlvdXIgc3lzdGVtLAorJDA6IGluY2x1ZGluZyBhbnkgZXJyb3IgcG9zc2libHkgb3V0cHV0IGJlZm9yZSB0aGlzCiskMDogbWVzc2FnZS4gVGhlbiBpbnN0YWxsIGEgbW9kZXJuIHNoZWxsLCBvciBtYW51YWxseSBydW4KKyQwOiB0aGUgc2NyaXB0IHVuZGVyIHN1Y2ggYSBzaGVsbCBpZiB5b3UgZG8gaGF2ZSBvbmUuIgorICBmaQorICBleGl0IDEKK2ZpCitmaQorZmkKK1NIRUxMPSR7Q09ORklHX1NIRUxMLS9iaW4vc2h9CitleHBvcnQgU0hFTEwKKyMgVW5zZXQgbW9yZSB2YXJpYWJsZXMga25vd24gdG8gaW50ZXJmZXJlIHdpdGggYmVoYXZpb3Igb2YgY29tbW9uIHRvb2xzLgorQ0xJQ09MT1JfRk9SQ0U9IEdSRVBfT1BUSU9OUz0KK3Vuc2V0IENMSUNPTE9SX0ZPUkNFIEdSRVBfT1BUSU9OUworCisjIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gIyMKKyMjIE00c2ggU2hlbGwgRnVuY3Rpb25zLiAjIworIyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tICMjCisjIGFzX2ZuX3Vuc2V0IFZBUgorIyAtLS0tLS0tLS0tLS0tLS0KKyMgUG9ydGFibHkgdW5zZXQgVkFSLgorYXNfZm5fdW5zZXQgKCkKK3sKKyAgeyBldmFsICQxPTsgdW5zZXQgJDE7fQorfQorYXNfdW5zZXQ9YXNfZm5fdW5zZXQKKworIyBhc19mbl9zZXRfc3RhdHVzIFNUQVRVUworIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIyBTZXQgJD8gdG8gU1RBVFVTLCB3aXRob3V0IGZvcmtpbmcuCithc19mbl9zZXRfc3RhdHVzICgpCit7CisgIHJldHVybiAkMQorfSAjIGFzX2ZuX3NldF9zdGF0dXMKKworIyBhc19mbl9leGl0IFNUQVRVUworIyAtLS0tLS0tLS0tLS0tLS0tLQorIyBFeGl0IHRoZSBzaGVsbCB3aXRoIFNUQVRVUywgZXZlbiBpbiBhICJ0cmFwIDAiIG9yICJzZXQgLWUiIGNvbnRleHQuCithc19mbl9leGl0ICgpCit7CisgIHNldCArZQorICBhc19mbl9zZXRfc3RhdHVzICQxCisgIGV4aXQgJDEKK30gIyBhc19mbl9leGl0CisKKyMgYXNfZm5fbWtkaXJfcAorIyAtLS0tLS0tLS0tLS0tCisjIENyZWF0ZSAiJGFzX2RpciIgYXMgYSBkaXJlY3RvcnksIGluY2x1ZGluZyBwYXJlbnRzIGlmIG5lY2Vzc2FyeS4KK2FzX2ZuX21rZGlyX3AgKCkKK3sKKworICBjYXNlICRhc19kaXIgaW4gIygKKyAgLSopIGFzX2Rpcj0uLyRhc19kaXI7OworICBlc2FjCisgIHRlc3QgLWQgIiRhc19kaXIiIHx8IGV2YWwgJGFzX21rZGlyX3AgfHwgeworICAgIGFzX2RpcnM9CisgICAgd2hpbGUgOjsgZG8KKyAgICAgIGNhc2UgJGFzX2RpciBpbiAjKAorICAgICAgKlwnKikgYXNfcWRpcj1gJGFzX2VjaG8gIiRhc19kaXIiIHwgc2VkICJzLycvJ1xcXFxcXFxcJycvZyJgOzsgIycoCisgICAgICAqKSBhc19xZGlyPSRhc19kaXI7OworICAgICAgZXNhYworICAgICAgYXNfZGlycz0iJyRhc19xZGlyJyAkYXNfZGlycyIKKyAgICAgIGFzX2Rpcj1gJGFzX2Rpcm5hbWUgLS0gIiRhc19kaXIiIHx8CiskYXNfZXhwciBYIiRhc19kaXIiIDogJ1hcKC4qW14vXVwpLy8qW14vXVteL10qLyokJyBcfCBcCisJIFgiJGFzX2RpciIgOiAnWFwoLy9cKVteL10nIFx8IFwKKwkgWCIkYXNfZGlyIiA6ICdYXCgvL1wpJCcgXHwgXAorCSBYIiRhc19kaXIiIDogJ1hcKC9cKScgXHwgLiAyPi9kZXYvbnVsbCB8fAorJGFzX2VjaG8gWCIkYXNfZGlyIiB8CisgICAgc2VkICcvXlhcKC4qW14vXVwpXC9cLypbXi9dW14vXSpcLyokL3sKKwkgICAgcy8vXDEvCisJICAgIHEKKwkgIH0KKwkgIC9eWFwoXC9cL1wpW14vXS4qL3sKKwkgICAgcy8vXDEvCisJICAgIHEKKwkgIH0KKwkgIC9eWFwoXC9cL1wpJC97CisJICAgIHMvL1wxLworCSAgICBxCisJICB9CisJICAvXlhcKFwvXCkuKi97CisJICAgIHMvL1wxLworCSAgICBxCisJICB9CisJICBzLy4qLy4vOyBxJ2AKKyAgICAgIHRlc3QgLWQgIiRhc19kaXIiICYmIGJyZWFrCisgICAgZG9uZQorICAgIHRlc3QgLXogIiRhc19kaXJzIiB8fCBldmFsICJta2RpciAkYXNfZGlycyIKKyAgfSB8fCB0ZXN0IC1kICIkYXNfZGlyIiB8fCBhc19mbl9lcnJvciAkPyAiY2Fubm90IGNyZWF0ZSBkaXJlY3RvcnkgJGFzX2RpciIKKworCit9ICMgYXNfZm5fbWtkaXJfcAorIyBhc19mbl9hcHBlbmQgVkFSIFZBTFVFCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyMgQXBwZW5kIHRoZSB0ZXh0IGluIFZBTFVFIHRvIHRoZSBlbmQgb2YgdGhlIGRlZmluaXRpb24gY29udGFpbmVkIGluIFZBUi4gVGFrZQorIyBhZHZhbnRhZ2Ugb2YgYW55IHNoZWxsIG9wdGltaXphdGlvbnMgdGhhdCBhbGxvdyBhbW9ydGl6ZWQgbGluZWFyIGdyb3d0aCBvdmVyCisjIHJlcGVhdGVkIGFwcGVuZHMsIGluc3RlYWQgb2YgdGhlIHR5cGljYWwgcXVhZHJhdGljIGdyb3d0aCBwcmVzZW50IGluIG5haXZlCisjIGltcGxlbWVudGF0aW9ucy4KK2lmIChldmFsICJhc192YXI9MTsgYXNfdmFyKz0yOyB0ZXN0IHhcJGFzX3ZhciA9IHgxMiIpIDI+L2Rldi9udWxsOyB0aGVuIDoKKyAgZXZhbCAnYXNfZm5fYXBwZW5kICgpCisgIHsKKyAgICBldmFsICQxKz1cJDIKKyAgfScKK2Vsc2UKKyAgYXNfZm5fYXBwZW5kICgpCisgIHsKKyAgICBldmFsICQxPVwkJDFcJDIKKyAgfQorZmkgIyBhc19mbl9hcHBlbmQKKworIyBhc19mbl9hcml0aCBBUkcuLi4KKyMgLS0tLS0tLS0tLS0tLS0tLS0tCisjIFBlcmZvcm0gYXJpdGhtZXRpYyBldmFsdWF0aW9uIG9uIHRoZSBBUkdzLCBhbmQgc3RvcmUgdGhlIHJlc3VsdCBpbiB0aGUKKyMgZ2xvYmFsICRhc192YWwuIFRha2UgYWR2YW50YWdlIG9mIHNoZWxscyB0aGF0IGNhbiBhdm9pZCBmb3Jrcy4gVGhlIGFyZ3VtZW50cworIyBtdXN0IGJlIHBvcnRhYmxlIGFjcm9zcyAkKCgpKSBhbmQgZXhwci4KK2lmIChldmFsICJ0ZXN0IFwkKCggMSArIDEgKSkgPSAyIikgMj4vZGV2L251bGw7IHRoZW4gOgorICBldmFsICdhc19mbl9hcml0aCAoKQorICB7CisgICAgYXNfdmFsPSQoKCAkKiApKQorICB9JworZWxzZQorICBhc19mbl9hcml0aCAoKQorICB7CisgICAgYXNfdmFsPWBleHByICIkQCIgfHwgdGVzdCAkPyAtZXEgMWAKKyAgfQorZmkgIyBhc19mbl9hcml0aAorCisKKyMgYXNfZm5fZXJyb3IgU1RBVFVTIEVSUk9SIFtMSU5FTk8gTE9HX0ZEXQorIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisjIE91dHB1dCAiYGJhc2VuYW1lICQwYDogZXJyb3I6IEVSUk9SIiB0byBzdGRlcnIuIElmIExJTkVOTyBhbmQgTE9HX0ZEIGFyZQorIyBwcm92aWRlZCwgYWxzbyBvdXRwdXQgdGhlIGVycm9yIHRvIExPR19GRCwgcmVmZXJlbmNpbmcgTElORU5PLiBUaGVuIGV4aXQgdGhlCisjIHNjcmlwdCB3aXRoIFNUQVRVUywgdXNpbmcgMSBpZiB0aGF0IHdhcyAwLgorYXNfZm5fZXJyb3IgKCkKK3sKKyAgYXNfc3RhdHVzPSQxOyB0ZXN0ICRhc19zdGF0dXMgLWVxIDAgJiYgYXNfc3RhdHVzPTEKKyAgaWYgdGVzdCAiJDQiOyB0aGVuCisgICAgYXNfbGluZW5vPSR7YXNfbGluZW5vLSIkMyJ9IGFzX2xpbmVub19zdGFjaz1hc19saW5lbm9fc3RhY2s9JGFzX2xpbmVub19zdGFjaworICAgICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGVycm9yOiAkMiIgPiYkNAorICBmaQorICAkYXNfZWNobyAiJGFzX21lOiBlcnJvcjogJDIiID4mMgorICBhc19mbl9leGl0ICRhc19zdGF0dXMKK30gIyBhc19mbl9lcnJvcgorCitpZiBleHByIGEgOiAnXChhXCknID4vZGV2L251bGwgMj4mMSAmJgorICAgdGVzdCAiWGBleHByIDAwMDAxIDogJy4qXCguLi5cKSdgIiA9IFgwMDE7IHRoZW4KKyAgYXNfZXhwcj1leHByCitlbHNlCisgIGFzX2V4cHI9ZmFsc2UKK2ZpCisKK2lmIChiYXNlbmFtZSAtLSAvKSA+L2Rldi9udWxsIDI+JjEgJiYgdGVzdCAiWGBiYXNlbmFtZSAtLSAvIDI+JjFgIiA9ICJYLyI7IHRoZW4KKyAgYXNfYmFzZW5hbWU9YmFzZW5hbWUKK2Vsc2UKKyAgYXNfYmFzZW5hbWU9ZmFsc2UKK2ZpCisKK2lmIChhc19kaXI9YGRpcm5hbWUgLS0gL2AgJiYgdGVzdCAiWCRhc19kaXIiID0gWC8pID4vZGV2L251bGwgMj4mMTsgdGhlbgorICBhc19kaXJuYW1lPWRpcm5hbWUKK2Vsc2UKKyAgYXNfZGlybmFtZT1mYWxzZQorZmkKKworYXNfbWU9YCRhc19iYXNlbmFtZSAtLSAiJDAiIHx8CiskYXNfZXhwciBYLyIkMCIgOiAnLiovXChbXi9dW14vXSpcKS8qJCcgXHwgXAorCSBYIiQwIiA6ICdYXCgvL1wpJCcgXHwgXAorCSBYIiQwIiA6ICdYXCgvXCknIFx8IC4gMj4vZGV2L251bGwgfHwKKyRhc19lY2hvIFgvIiQwIiB8CisgICAgc2VkICcvXi4qXC9cKFteL11bXi9dKlwpXC8qJC97CisJICAgIHMvL1wxLworCSAgICBxCisJICB9CisJICAvXlhcL1woXC9cL1wpJC97CisJICAgIHMvL1wxLworCSAgICBxCisJICB9CisJICAvXlhcL1woXC9cKS4qL3sKKwkgICAgcy8vXDEvCisJICAgIHEKKwkgIH0KKwkgIHMvLiovLi87IHEnYAorCisjIEF2b2lkIGRlcGVuZGluZyB1cG9uIENoYXJhY3RlciBSYW5nZXMuCithc19jcl9sZXR0ZXJzPSdhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5eicKK2FzX2NyX0xFVFRFUlM9J0FCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaJworYXNfY3JfTGV0dGVycz0kYXNfY3JfbGV0dGVycyRhc19jcl9MRVRURVJTCithc19jcl9kaWdpdHM9JzAxMjM0NTY3ODknCithc19jcl9hbG51bT0kYXNfY3JfTGV0dGVycyRhc19jcl9kaWdpdHMKKworCisgIGFzX2xpbmVub18xPSRMSU5FTk8gYXNfbGluZW5vXzFhPSRMSU5FTk8KKyAgYXNfbGluZW5vXzI9JExJTkVOTyBhc19saW5lbm9fMmE9JExJTkVOTworICBldmFsICd0ZXN0ICJ4JGFzX2xpbmVub18xJyRhc19ydW4nIiAhPSAieCRhc19saW5lbm9fMickYXNfcnVuJyIgJiYKKyAgdGVzdCAieGBleHByICRhc19saW5lbm9fMSckYXNfcnVuJyArIDFgIiA9ICJ4JGFzX2xpbmVub18yJyRhc19ydW4nIicgfHwgeworICAjIEJsYW1lIExlZSBFLiBNY01haG9uICgxOTMxLTE5ODkpIGZvciBzZWQncyBzeW50YXguICA6LSkKKyAgc2VkIC1uICcKKyAgICBwCisgICAgL1skXUxJTkVOTy89CisgICcgPCRhc19teXNlbGYgfAorICAgIHNlZCAnCisgICAgICBzL1skXUxJTkVOTy4qLyYtLworICAgICAgdCBsaW5lbm8KKyAgICAgIGIKKyAgICAgIDpsaW5lbm8KKyAgICAgIE4KKyAgICAgIDpsb29wCisgICAgICBzL1skXUxJTkVOT1woW14nJGFzX2NyX2FsbnVtJ19dLipcblwpXCguKlwpL1wyXDFcMi8KKyAgICAgIHQgbG9vcAorICAgICAgcy8tXG4uKi8vCisgICAgJyA+JGFzX21lLmxpbmVubyAmJgorICBjaG1vZCAreCAiJGFzX21lLmxpbmVubyIgfHwKKyAgICB7ICRhc19lY2hvICIkYXNfbWU6IGVycm9yOiBjYW5ub3QgY3JlYXRlICRhc19tZS5saW5lbm87IHJlcnVuIHdpdGggYSBQT1NJWCBzaGVsbCIgPiYyOyBhc19mbl9leGl0IDE7IH0KKworICAjIERvbid0IHRyeSB0byBleGVjIGFzIGl0IGNoYW5nZXMgJFswXSwgY2F1c2luZyBhbGwgc29ydCBvZiBwcm9ibGVtcworICAjICh0aGUgZGlybmFtZSBvZiAkWzBdIGlzIG5vdCB0aGUgcGxhY2Ugd2hlcmUgd2UgbWlnaHQgZmluZCB0aGUKKyAgIyBvcmlnaW5hbCBhbmQgc28gb24uICBBdXRvY29uZiBpcyBlc3BlY2lhbGx5IHNlbnNpdGl2ZSB0byB0aGlzKS4KKyAgLiAiLi8kYXNfbWUubGluZW5vIgorICAjIEV4aXQgc3RhdHVzIGlzIHRoYXQgb2YgdGhlIGxhc3QgY29tbWFuZC4KKyAgZXhpdAorfQorCitFQ0hPX0M9IEVDSE9fTj0gRUNIT19UPQorY2FzZSBgZWNobyAtbiB4YCBpbiAjKCgoKCgKKy1uKikKKyAgY2FzZSBgZWNobyAneHlcYydgIGluCisgICpjKikgRUNIT19UPScJJzs7CSMgRUNIT19UIGlzIHNpbmdsZSB0YWIgY2hhcmFjdGVyLgorICB4eSkgIEVDSE9fQz0nXGMnOzsKKyAgKikgICBlY2hvIGBlY2hvIGtzaDg4IGJ1ZyBvbiBBSVggNi4xYCA+IC9kZXYvbnVsbAorICAgICAgIEVDSE9fVD0nCSc7OworICBlc2FjOzsKKyopCisgIEVDSE9fTj0nLW4nOzsKK2VzYWMKKworcm0gLWYgY29uZiQkIGNvbmYkJC5leGUgY29uZiQkLmZpbGUKK2lmIHRlc3QgLWQgY29uZiQkLmRpcjsgdGhlbgorICBybSAtZiBjb25mJCQuZGlyL2NvbmYkJC5maWxlCitlbHNlCisgIHJtIC1mIGNvbmYkJC5kaXIKKyAgbWtkaXIgY29uZiQkLmRpciAyPi9kZXYvbnVsbAorZmkKK2lmIChlY2hvID5jb25mJCQuZmlsZSkgMj4vZGV2L251bGw7IHRoZW4KKyAgaWYgbG4gLXMgY29uZiQkLmZpbGUgY29uZiQkIDI+L2Rldi9udWxsOyB0aGVuCisgICAgYXNfbG5fcz0nbG4gLXMnCisgICAgIyAuLi4gYnV0IHRoZXJlIGFyZSB0d28gZ290Y2hhczoKKyAgICAjIDEpIE9uIE1TWVMsIGJvdGggYGxuIC1zIGZpbGUgZGlyJyBhbmQgYGxuIGZpbGUgZGlyJyBmYWlsLgorICAgICMgMikgREpHUFAgPCAyLjA0IGhhcyBubyBzeW1saW5rczsgYGxuIC1zJyBjcmVhdGVzIGEgd3JhcHBlciBleGVjdXRhYmxlLgorICAgICMgSW4gYm90aCBjYXNlcywgd2UgaGF2ZSB0byBkZWZhdWx0IHRvIGBjcCAtcCcuCisgICAgbG4gLXMgY29uZiQkLmZpbGUgY29uZiQkLmRpciAyPi9kZXYvbnVsbCAmJiB0ZXN0ICEgLWYgY29uZiQkLmV4ZSB8fAorICAgICAgYXNfbG5fcz0nY3AgLXAnCisgIGVsaWYgbG4gY29uZiQkLmZpbGUgY29uZiQkIDI+L2Rldi9udWxsOyB0aGVuCisgICAgYXNfbG5fcz1sbgorICBlbHNlCisgICAgYXNfbG5fcz0nY3AgLXAnCisgIGZpCitlbHNlCisgIGFzX2xuX3M9J2NwIC1wJworZmkKK3JtIC1mIGNvbmYkJCBjb25mJCQuZXhlIGNvbmYkJC5kaXIvY29uZiQkLmZpbGUgY29uZiQkLmZpbGUKK3JtZGlyIGNvbmYkJC5kaXIgMj4vZGV2L251bGwKKworaWYgbWtkaXIgLXAgLiAyPi9kZXYvbnVsbDsgdGhlbgorICBhc19ta2Rpcl9wPSdta2RpciAtcCAiJGFzX2RpciInCitlbHNlCisgIHRlc3QgLWQgLi8tcCAmJiBybWRpciAuLy1wCisgIGFzX21rZGlyX3A9ZmFsc2UKK2ZpCisKK2lmIHRlc3QgLXggLyA+L2Rldi9udWxsIDI+JjE7IHRoZW4KKyAgYXNfdGVzdF94PSd0ZXN0IC14JworZWxzZQorICBpZiBscyAtZEwgLyA+L2Rldi9udWxsIDI+JjE7IHRoZW4KKyAgICBhc19sc19MX29wdGlvbj1MCisgIGVsc2UKKyAgICBhc19sc19MX29wdGlvbj0KKyAgZmkKKyAgYXNfdGVzdF94PScKKyAgICBldmFsIHNoIC1jICdcJycKKyAgICAgIGlmIHRlc3QgLWQgIiQxIjsgdGhlbgorCXRlc3QgLWQgIiQxLy4iOworICAgICAgZWxzZQorCWNhc2UgJDEgaW4gIygKKwktKilzZXQgIi4vJDEiOzsKKwllc2FjOworCWNhc2UgYGxzIC1sZCckYXNfbHNfTF9vcHRpb24nICIkMSIgMj4vZGV2L251bGxgIGluICMoKAorCT8/P1tzeF0qKTo7OyopZmFsc2U7O2VzYWM7ZmkKKyAgICAnXCcnIHNoCisgICcKK2ZpCithc19leGVjdXRhYmxlX3A9JGFzX3Rlc3RfeAorCisjIFNlZCBleHByZXNzaW9uIHRvIG1hcCBhIHN0cmluZyBvbnRvIGEgdmFsaWQgQ1BQIG5hbWUuCithc190cl9jcHA9ImV2YWwgc2VkICd5JSokYXNfY3JfbGV0dGVycyVQJGFzX2NyX0xFVFRFUlMlO3MlW15fJGFzX2NyX2FsbnVtXSVfJWcnIgorCisjIFNlZCBleHByZXNzaW9uIHRvIG1hcCBhIHN0cmluZyBvbnRvIGEgdmFsaWQgdmFyaWFibGUgbmFtZS4KK2FzX3RyX3NoPSJldmFsIHNlZCAneSUqKyVwcCU7cyVbXl8kYXNfY3JfYWxudW1dJV8lZyciCisKKwordGVzdCAtbiAiJERKRElSIiB8fCBleGVjIDc8JjAgPC9kZXYvbnVsbAorZXhlYyA2PiYxCisKKyMgTmFtZSBvZiB0aGUgaG9zdC4KKyMgaG9zdG5hbWUgb24gc29tZSBzeXN0ZW1zIChTVlIzLjIsIG9sZCBHTlUvTGludXgpIHJldHVybnMgYSBib2d1cyBleGl0IHN0YXR1cywKKyMgc28gdW5hbWUgZ2V0cyBydW4gdG9vLgorYWNfaG9zdG5hbWU9YChob3N0bmFtZSB8fCB1bmFtZSAtbikgMj4vZGV2L251bGwgfCBzZWQgMXFgCisKKyMKKyMgSW5pdGlhbGl6YXRpb25zLgorIworYWNfZGVmYXVsdF9wcmVmaXg9L3Vzci9sb2NhbAorYWNfY2xlYW5fZmlsZXM9CithY19jb25maWdfbGlib2JqX2Rpcj0uCitMSUJPQkpTPQorY3Jvc3NfY29tcGlsaW5nPW5vCitzdWJkaXJzPQorTUZMQUdTPQorTUFLRUZMQUdTPQorCisjIElkZW50aXR5IG9mIHRoaXMgcGFja2FnZS4KK1BBQ0tBR0VfTkFNRT0nZHBrZycKK1BBQ0tBR0VfVEFSTkFNRT0nZHBrZycKK1BBQ0tBR0VfVkVSU0lPTj0nMS4xNi4xLjEnCitQQUNLQUdFX1NUUklORz0nZHBrZyAxLjE2LjEuMScKK1BBQ0tBR0VfQlVHUkVQT1JUPSdkZWJpYW4tZHBrZ0BsaXN0cy5kZWJpYW4ub3JnJworUEFDS0FHRV9VUkw9JycKKworYWNfdW5pcXVlX2ZpbGU9ImxpYi9kcGtnL2Rwa2cuaCIKKyMgRmFjdG9yaW5nIGRlZmF1bHQgaGVhZGVycyBmb3IgbW9zdCB0ZXN0cy4KK2FjX2luY2x1ZGVzX2RlZmF1bHQ9IlwKKyNpbmNsdWRlIDxzdGRpby5oPgorI2lmZGVmIEhBVkVfU1lTX1RZUEVTX0gKKyMgaW5jbHVkZSA8c3lzL3R5cGVzLmg+CisjZW5kaWYKKyNpZmRlZiBIQVZFX1NZU19TVEFUX0gKKyMgaW5jbHVkZSA8c3lzL3N0YXQuaD4KKyNlbmRpZgorI2lmZGVmIFNURENfSEVBREVSUworIyBpbmNsdWRlIDxzdGRsaWIuaD4KKyMgaW5jbHVkZSA8c3RkZGVmLmg+CisjZWxzZQorIyBpZmRlZiBIQVZFX1NURExJQl9ICisjICBpbmNsdWRlIDxzdGRsaWIuaD4KKyMgZW5kaWYKKyNlbmRpZgorI2lmZGVmIEhBVkVfU1RSSU5HX0gKKyMgaWYgIWRlZmluZWQgU1REQ19IRUFERVJTICYmIGRlZmluZWQgSEFWRV9NRU1PUllfSAorIyAgaW5jbHVkZSA8bWVtb3J5Lmg+CisjIGVuZGlmCisjIGluY2x1ZGUgPHN0cmluZy5oPgorI2VuZGlmCisjaWZkZWYgSEFWRV9TVFJJTkdTX0gKKyMgaW5jbHVkZSA8c3RyaW5ncy5oPgorI2VuZGlmCisjaWZkZWYgSEFWRV9JTlRUWVBFU19ICisjIGluY2x1ZGUgPGludHR5cGVzLmg+CisjZW5kaWYKKyNpZmRlZiBIQVZFX1NURElOVF9ICisjIGluY2x1ZGUgPHN0ZGludC5oPgorI2VuZGlmCisjaWZkZWYgSEFWRV9VTklTVERfSAorIyBpbmNsdWRlIDx1bmlzdGQuaD4KKyNlbmRpZiIKKworZ3RfbmVlZHM9CithY19zdWJzdF92YXJzPSdhbV9fRVhFRVhUX0ZBTFNFCithbV9fRVhFRVhUX1RSVUUKK0xUTElCT0JKUworTElCT0JKUworSEFWRV9VTlNFVEVOVl9GQUxTRQorSEFWRV9VTlNFVEVOVl9UUlVFCitIQVZFX0FMUEhBU09SVF9GQUxTRQorSEFWRV9BTFBIQVNPUlRfVFJVRQorSEFWRV9TQ0FORElSX0ZBTFNFCitIQVZFX1NDQU5ESVJfVFJVRQorSEFWRV9BU1BSSU5URl9GQUxTRQorSEFWRV9BU1BSSU5URl9UUlVFCitIQVZFX1NUUlNJR05BTF9GQUxTRQorSEFWRV9TVFJTSUdOQUxfVFJVRQorSEFWRV9TVFJFUlJPUl9GQUxTRQorSEFWRV9TVFJFUlJPUl9UUlVFCitIQVZFX1NUUk5MRU5fRkFMU0UKK0hBVkVfU1RSTkxFTl9UUlVFCitIQVZFX09CU1RBQ0tfRlJFRV9GQUxTRQorSEFWRV9PQlNUQUNLX0ZSRUVfVFJVRQorSEFWRV9HRVRPUFRfTE9OR19GQUxTRQorSEFWRV9HRVRPUFRfTE9OR19UUlVFCitIQVZFX0dFVE9QVF9GQUxTRQorSEFWRV9HRVRPUFRfVFJVRQorSEFWRV9DOTlfU05QUklOVEZfRkFMU0UKK0hBVkVfQzk5X1NOUFJJTlRGX1RSVUUKK1NTRF9MSUJTCitDVVJTRVNfTElCUworVVNFX1VOSUNPREUKK1NFTElOVVhfTElCUworUEtHX0NPTkZJR19MSUJESVIKK1BLR19DT05GSUdfUEFUSAorUEtHX0NPTkZJRworQloyX0xJQlMKK1pMSUJfTElCUworUEVSTF9DT1ZFUgorUEVSTF9DT1ZFUkFHRQorTENPVl9HRU5IVE1MCitMQ09WCitHQ09WCitDT1ZFUkFHRV9FTkFCTEVEX0ZBTFNFCitDT1ZFUkFHRV9FTkFCTEVEX1RSVUUKK0JVSUxEX1BPRF9ET0NfRkFMU0UKK0JVSUxEX1BPRF9ET0NfVFJVRQorUE9EMk1BTgorUEVSTF9MSUJESVIKK1BFUkwKK1VTRV9QTzRBCitQTzRBCitIQVZFX0RPVAorRE9YWUdFTgorUkFOTElCCitMRVhMSUIKK0xFWF9PVVRQVVRfUk9PVAorTEVYCithbV9fZmFzdGRlcENYWF9GQUxTRQorYW1fX2Zhc3RkZXBDWFhfVFJVRQorQ1hYREVQTU9ERQorYWNfY3RfQ1hYCitDWFhGTEFHUworQ1hYCitsb2dkaXIKK2FkbWluZGlyCitXSVRIX0lOU1RBTExfSU5GT19GQUxTRQorV0lUSF9JTlNUQUxMX0lORk9fVFJVRQorV0lUSF9VUERBVEVfQUxURVJOQVRJVkVTX0ZBTFNFCitXSVRIX1VQREFURV9BTFRFUk5BVElWRVNfVFJVRQorV0lUSF9TVEFSVF9TVE9QX0RBRU1PTl9GQUxTRQorV0lUSF9TVEFSVF9TVE9QX0RBRU1PTl9UUlVFCitXSVRIX0RTRUxFQ1RfRkFMU0UKK1dJVEhfRFNFTEVDVF9UUlVFCitQT1NVQgorTFRMSUJJTlRMCitMSUJJTlRMCitJTlRMTElCUworTFRMSUJJQ09OVgorTElCSUNPTlYKK0lOVExfTUFDT1NYX0xJQlMKK2hvc3Rfb3MKK2hvc3RfdmVuZG9yCitob3N0X2NwdQoraG9zdAorYnVpbGRfb3MKK2J1aWxkX3ZlbmRvcgorYnVpbGRfY3B1CitidWlsZAorWEdFVFRFWFRfRVhUUkFfT1BUSU9OUworTVNHTUVSR0UKK1hHRVRURVhUXzAxNQorWEdFVFRFWFQKK0dNU0dGTVRfMDE1CitNU0dGTVRfMDE1CitHTVNHRk1UCitNU0dGTVQKK0dFVFRFWFRfTUFDUk9fVkVSU0lPTgorVVNFX05MUworQU1fQkFDS1NMQVNICitBTV9ERUZBVUxUX1ZFUkJPU0lUWQorYW1fX2Zhc3RkZXBDQ19GQUxTRQorYW1fX2Zhc3RkZXBDQ19UUlVFCitDQ0RFUE1PREUKK0FNREVQQkFDS1NMQVNICitBTURFUF9GQUxTRQorQU1ERVBfVFJVRQorYW1fX3F1b3RlCithbV9faW5jbHVkZQorREVQRElSCithbV9fdW50YXIKK2FtX190YXIKK0FNVEFSCithbV9fbGVhZGluZ19kb3QKK1NFVF9NQUtFCitBV0sKK21rZGlyX3AKK01LRElSX1AKK0lOU1RBTExfU1RSSVBfUFJPR1JBTQorU1RSSVAKK2luc3RhbGxfc2gKK01BS0VJTkZPCitBVVRPSEVBREVSCitBVVRPTUFLRQorQVVUT0NPTkYKK0FDTE9DQUwKK1ZFUlNJT04KK1BBQ0tBR0UKK0NZR1BBVEhfVworYW1fX2lzcmMKK0lOU1RBTExfREFUQQorSU5TVEFMTF9TQ1JJUFQKK0lOU1RBTExfUFJPR1JBTQorRUdSRVAKK0dSRVAKK0NQUAorT0JKRVhUCitFWEVFWFQKK2FjX2N0X0NDCitDUFBGTEFHUworTERGTEFHUworQ0ZMQUdTCitDQwordGFyZ2V0X2FsaWFzCitob3N0X2FsaWFzCitidWlsZF9hbGlhcworTElCUworRUNIT19UCitFQ0hPX04KK0VDSE9fQworREVGUworbWFuZGlyCitsb2NhbGVkaXIKK2xpYmRpcgorcHNkaXIKK3BkZmRpcgorZHZpZGlyCitodG1sZGlyCitpbmZvZGlyCitkb2NkaXIKK29sZGluY2x1ZGVkaXIKK2luY2x1ZGVkaXIKK2xvY2Fsc3RhdGVkaXIKK3NoYXJlZHN0YXRlZGlyCitzeXNjb25mZGlyCitkYXRhZGlyCitkYXRhcm9vdGRpcgorbGliZXhlY2Rpcgorc2JpbmRpcgorYmluZGlyCitwcm9ncmFtX3RyYW5zZm9ybV9uYW1lCitwcmVmaXgKK2V4ZWNfcHJlZml4CitQQUNLQUdFX1VSTAorUEFDS0FHRV9CVUdSRVBPUlQKK1BBQ0tBR0VfU1RSSU5HCitQQUNLQUdFX1ZFUlNJT04KK1BBQ0tBR0VfVEFSTkFNRQorUEFDS0FHRV9OQU1FCitQQVRIX1NFUEFSQVRPUgorU0hFTEwnCithY19zdWJzdF9maWxlcz0nJworYWNfdXNlcl9vcHRzPScKK2VuYWJsZV9vcHRpb25fY2hlY2tpbmcKK2VuYWJsZV9kZXBlbmRlbmN5X3RyYWNraW5nCitlbmFibGVfc2lsZW50X3J1bGVzCitlbmFibGVfbmxzCit3aXRoX2dudV9sZAorZW5hYmxlX3JwYXRoCit3aXRoX2xpYmljb252X3ByZWZpeAord2l0aF9saWJpbnRsX3ByZWZpeAord2l0aF9kc2VsZWN0Cit3aXRoX3N0YXJ0X3N0b3BfZGFlbW9uCit3aXRoX3VwZGF0ZV9hbHRlcm5hdGl2ZXMKK3dpdGhfaW5zdGFsbF9pbmZvCit3aXRoX2FkbWluZGlyCit3aXRoX2xvZ2RpcgorZW5hYmxlX2NvdmVyYWdlCitlbmFibGVfbGFyZ2VmaWxlCit3aXRoX3psaWIKK3dpdGhfYnoyCit3aXRoX3NlbGludXgKK2VuYWJsZV91bmljb2RlCitlbmFibGVfbW1hcAorZW5hYmxlX2NvbXBpbGVyX3dhcm5pbmdzCitlbmFibGVfY29tcGlsZXJfb3B0aW1pc2F0aW9ucworZW5hYmxlX2xpbmtlcl9vcHRpbWlzYXRpb25zCisnCisgICAgICBhY19wcmVjaW91c192YXJzPSdidWlsZF9hbGlhcworaG9zdF9hbGlhcwordGFyZ2V0X2FsaWFzCitDQworQ0ZMQUdTCitMREZMQUdTCitMSUJTCitDUFBGTEFHUworQ1BQCitDWFgKK0NYWEZMQUdTCitDQ0MKK1BFUkwKK1BFUkxfTElCRElSCitaTElCX0xJQlMKK0JaMl9MSUJTCitQS0dfQ09ORklHCitQS0dfQ09ORklHX1BBVEgKK1BLR19DT05GSUdfTElCRElSCitTRUxJTlVYX0xJQlMKK0NVUlNFU19MSUJTCitTU0RfTElCUycKKworCisjIEluaXRpYWxpemUgc29tZSB2YXJpYWJsZXMgc2V0IGJ5IG9wdGlvbnMuCithY19pbml0X2hlbHA9CithY19pbml0X3ZlcnNpb249ZmFsc2UKK2FjX3VucmVjb2duaXplZF9vcHRzPQorYWNfdW5yZWNvZ25pemVkX3NlcD0KKyMgVGhlIHZhcmlhYmxlcyBoYXZlIHRoZSBzYW1lIG5hbWVzIGFzIHRoZSBvcHRpb25zLCB3aXRoCisjIGRhc2hlcyBjaGFuZ2VkIHRvIHVuZGVybGluZXMuCitjYWNoZV9maWxlPS9kZXYvbnVsbAorZXhlY19wcmVmaXg9Tk9ORQorbm9fY3JlYXRlPQorbm9fcmVjdXJzaW9uPQorcHJlZml4PU5PTkUKK3Byb2dyYW1fcHJlZml4PU5PTkUKK3Byb2dyYW1fc3VmZml4PU5PTkUKK3Byb2dyYW1fdHJhbnNmb3JtX25hbWU9cyx4LHgsCitzaWxlbnQ9CitzaXRlPQorc3JjZGlyPQordmVyYm9zZT0KK3hfaW5jbHVkZXM9Tk9ORQoreF9saWJyYXJpZXM9Tk9ORQorCisjIEluc3RhbGxhdGlvbiBkaXJlY3Rvcnkgb3B0aW9ucy4KKyMgVGhlc2UgYXJlIGxlZnQgdW5leHBhbmRlZCBzbyB1c2VycyBjYW4gIm1ha2UgaW5zdGFsbCBleGVjX3ByZWZpeD0vZm9vIgorIyBhbmQgYWxsIHRoZSB2YXJpYWJsZXMgdGhhdCBhcmUgc3VwcG9zZWQgdG8gYmUgYmFzZWQgb24gZXhlY19wcmVmaXgKKyMgYnkgZGVmYXVsdCB3aWxsIGFjdHVhbGx5IGNoYW5nZS4KKyMgVXNlIGJyYWNlcyBpbnN0ZWFkIG9mIHBhcmVucyBiZWNhdXNlIHNoLCBwZXJsLCBldGMuIGFsc28gYWNjZXB0IHRoZW0uCisjIChUaGUgbGlzdCBmb2xsb3dzIHRoZSBzYW1lIG9yZGVyIGFzIHRoZSBHTlUgQ29kaW5nIFN0YW5kYXJkcy4pCitiaW5kaXI9JyR7ZXhlY19wcmVmaXh9L2JpbicKK3NiaW5kaXI9JyR7ZXhlY19wcmVmaXh9L3NiaW4nCitsaWJleGVjZGlyPScke2V4ZWNfcHJlZml4fS9saWJleGVjJworZGF0YXJvb3RkaXI9JyR7cHJlZml4fS9zaGFyZScKK2RhdGFkaXI9JyR7ZGF0YXJvb3RkaXJ9Jworc3lzY29uZmRpcj0nJHtwcmVmaXh9L2V0YycKK3NoYXJlZHN0YXRlZGlyPScke3ByZWZpeH0vY29tJworbG9jYWxzdGF0ZWRpcj0nJHtwcmVmaXh9L3ZhcicKK2luY2x1ZGVkaXI9JyR7cHJlZml4fS9pbmNsdWRlJworb2xkaW5jbHVkZWRpcj0nL3Vzci9pbmNsdWRlJworZG9jZGlyPScke2RhdGFyb290ZGlyfS9kb2MvJHtQQUNLQUdFX1RBUk5BTUV9JworaW5mb2Rpcj0nJHtkYXRhcm9vdGRpcn0vaW5mbycKK2h0bWxkaXI9JyR7ZG9jZGlyfScKK2R2aWRpcj0nJHtkb2NkaXJ9JworcGRmZGlyPScke2RvY2Rpcn0nCitwc2Rpcj0nJHtkb2NkaXJ9JworbGliZGlyPScke2V4ZWNfcHJlZml4fS9saWInCitsb2NhbGVkaXI9JyR7ZGF0YXJvb3RkaXJ9L2xvY2FsZScKK21hbmRpcj0nJHtkYXRhcm9vdGRpcn0vbWFuJworCithY19wcmV2PQorYWNfZGFzaGRhc2g9Citmb3IgYWNfb3B0aW9uCitkbworICAjIElmIHRoZSBwcmV2aW91cyBvcHRpb24gbmVlZHMgYW4gYXJndW1lbnQsIGFzc2lnbiBpdC4KKyAgaWYgdGVzdCAtbiAiJGFjX3ByZXYiOyB0aGVuCisgICAgZXZhbCAkYWNfcHJldj1cJGFjX29wdGlvbgorICAgIGFjX3ByZXY9CisgICAgY29udGludWUKKyAgZmkKKworICBjYXNlICRhY19vcHRpb24gaW4KKyAgKj0/KikgYWNfb3B0YXJnPWBleHByICJYJGFjX29wdGlvbiIgOiAnW149XSo9XCguKlwpJ2AgOzsKKyAgKj0pICAgYWNfb3B0YXJnPSA7OworICAqKSAgICBhY19vcHRhcmc9eWVzIDs7CisgIGVzYWMKKworICAjIEFjY2VwdCB0aGUgaW1wb3J0YW50IEN5Z251cyBjb25maWd1cmUgb3B0aW9ucywgc28gd2UgY2FuIGRpYWdub3NlIHR5cG9zLgorCisgIGNhc2UgJGFjX2Rhc2hkYXNoJGFjX29wdGlvbiBpbgorICAtLSkKKyAgICBhY19kYXNoZGFzaD15ZXMgOzsKKworICAtYmluZGlyIHwgLS1iaW5kaXIgfCAtLWJpbmRpIHwgLS1iaW5kIHwgLS1iaW4gfCAtLWJpKQorICAgIGFjX3ByZXY9YmluZGlyIDs7CisgIC1iaW5kaXI9KiB8IC0tYmluZGlyPSogfCAtLWJpbmRpPSogfCAtLWJpbmQ9KiB8IC0tYmluPSogfCAtLWJpPSopCisgICAgYmluZGlyPSRhY19vcHRhcmcgOzsKKworICAtYnVpbGQgfCAtLWJ1aWxkIHwgLS1idWlsIHwgLS1idWkgfCAtLWJ1KQorICAgIGFjX3ByZXY9YnVpbGRfYWxpYXMgOzsKKyAgLWJ1aWxkPSogfCAtLWJ1aWxkPSogfCAtLWJ1aWw9KiB8IC0tYnVpPSogfCAtLWJ1PSopCisgICAgYnVpbGRfYWxpYXM9JGFjX29wdGFyZyA7OworCisgIC1jYWNoZS1maWxlIHwgLS1jYWNoZS1maWxlIHwgLS1jYWNoZS1maWwgfCAtLWNhY2hlLWZpIFwKKyAgfCAtLWNhY2hlLWYgfCAtLWNhY2hlLSB8IC0tY2FjaGUgfCAtLWNhY2ggfCAtLWNhYyB8IC0tY2EgfCAtLWMpCisgICAgYWNfcHJldj1jYWNoZV9maWxlIDs7CisgIC1jYWNoZS1maWxlPSogfCAtLWNhY2hlLWZpbGU9KiB8IC0tY2FjaGUtZmlsPSogfCAtLWNhY2hlLWZpPSogXAorICB8IC0tY2FjaGUtZj0qIHwgLS1jYWNoZS09KiB8IC0tY2FjaGU9KiB8IC0tY2FjaD0qIHwgLS1jYWM9KiB8IC0tY2E9KiB8IC0tYz0qKQorICAgIGNhY2hlX2ZpbGU9JGFjX29wdGFyZyA7OworCisgIC0tY29uZmlnLWNhY2hlIHwgLUMpCisgICAgY2FjaGVfZmlsZT1jb25maWcuY2FjaGUgOzsKKworICAtZGF0YWRpciB8IC0tZGF0YWRpciB8IC0tZGF0YWRpIHwgLS1kYXRhZCkKKyAgICBhY19wcmV2PWRhdGFkaXIgOzsKKyAgLWRhdGFkaXI9KiB8IC0tZGF0YWRpcj0qIHwgLS1kYXRhZGk9KiB8IC0tZGF0YWQ9KikKKyAgICBkYXRhZGlyPSRhY19vcHRhcmcgOzsKKworICAtZGF0YXJvb3RkaXIgfCAtLWRhdGFyb290ZGlyIHwgLS1kYXRhcm9vdGRpIHwgLS1kYXRhcm9vdGQgfCAtLWRhdGFyb290IFwKKyAgfCAtLWRhdGFyb28gfCAtLWRhdGFybyB8IC0tZGF0YXIpCisgICAgYWNfcHJldj1kYXRhcm9vdGRpciA7OworICAtZGF0YXJvb3RkaXI9KiB8IC0tZGF0YXJvb3RkaXI9KiB8IC0tZGF0YXJvb3RkaT0qIHwgLS1kYXRhcm9vdGQ9KiBcCisgIHwgLS1kYXRhcm9vdD0qIHwgLS1kYXRhcm9vPSogfCAtLWRhdGFybz0qIHwgLS1kYXRhcj0qKQorICAgIGRhdGFyb290ZGlyPSRhY19vcHRhcmcgOzsKKworICAtZGlzYWJsZS0qIHwgLS1kaXNhYmxlLSopCisgICAgYWNfdXNlcm9wdD1gZXhwciAieCRhY19vcHRpb24iIDogJ3gtKmRpc2FibGUtXCguKlwpJ2AKKyAgICAjIFJlamVjdCBuYW1lcyB0aGF0IGFyZSBub3QgdmFsaWQgc2hlbGwgdmFyaWFibGUgbmFtZXMuCisgICAgZXhwciAieCRhY191c2Vyb3B0IiA6ICIuKlteLSsuXyRhc19jcl9hbG51bV0iID4vZGV2L251bGwgJiYKKyAgICAgIGFzX2ZuX2Vycm9yICQ/ICJpbnZhbGlkIGZlYXR1cmUgbmFtZTogJGFjX3VzZXJvcHQiCisgICAgYWNfdXNlcm9wdF9vcmlnPSRhY191c2Vyb3B0CisgICAgYWNfdXNlcm9wdD1gJGFzX2VjaG8gIiRhY191c2Vyb3B0IiB8IHNlZCAncy9bLSsuXS9fL2cnYAorICAgIGNhc2UgJGFjX3VzZXJfb3B0cyBpbgorICAgICAgKiIKKyJlbmFibGVfJGFjX3VzZXJvcHQiCisiKikgOzsKKyAgICAgICopIGFjX3VucmVjb2duaXplZF9vcHRzPSIkYWNfdW5yZWNvZ25pemVkX29wdHMkYWNfdW5yZWNvZ25pemVkX3NlcC0tZGlzYWJsZS0kYWNfdXNlcm9wdF9vcmlnIgorCSBhY191bnJlY29nbml6ZWRfc2VwPScsICc7OworICAgIGVzYWMKKyAgICBldmFsIGVuYWJsZV8kYWNfdXNlcm9wdD1ubyA7OworCisgIC1kb2NkaXIgfCAtLWRvY2RpciB8IC0tZG9jZGkgfCAtLWRvYyB8IC0tZG8pCisgICAgYWNfcHJldj1kb2NkaXIgOzsKKyAgLWRvY2Rpcj0qIHwgLS1kb2NkaXI9KiB8IC0tZG9jZGk9KiB8IC0tZG9jPSogfCAtLWRvPSopCisgICAgZG9jZGlyPSRhY19vcHRhcmcgOzsKKworICAtZHZpZGlyIHwgLS1kdmlkaXIgfCAtLWR2aWRpIHwgLS1kdmlkIHwgLS1kdmkgfCAtLWR2KQorICAgIGFjX3ByZXY9ZHZpZGlyIDs7CisgIC1kdmlkaXI9KiB8IC0tZHZpZGlyPSogfCAtLWR2aWRpPSogfCAtLWR2aWQ9KiB8IC0tZHZpPSogfCAtLWR2PSopCisgICAgZHZpZGlyPSRhY19vcHRhcmcgOzsKKworICAtZW5hYmxlLSogfCAtLWVuYWJsZS0qKQorICAgIGFjX3VzZXJvcHQ9YGV4cHIgIngkYWNfb3B0aW9uIiA6ICd4LSplbmFibGUtXChbXj1dKlwpJ2AKKyAgICAjIFJlamVjdCBuYW1lcyB0aGF0IGFyZSBub3QgdmFsaWQgc2hlbGwgdmFyaWFibGUgbmFtZXMuCisgICAgZXhwciAieCRhY191c2Vyb3B0IiA6ICIuKlteLSsuXyRhc19jcl9hbG51bV0iID4vZGV2L251bGwgJiYKKyAgICAgIGFzX2ZuX2Vycm9yICQ/ICJpbnZhbGlkIGZlYXR1cmUgbmFtZTogJGFjX3VzZXJvcHQiCisgICAgYWNfdXNlcm9wdF9vcmlnPSRhY191c2Vyb3B0CisgICAgYWNfdXNlcm9wdD1gJGFzX2VjaG8gIiRhY191c2Vyb3B0IiB8IHNlZCAncy9bLSsuXS9fL2cnYAorICAgIGNhc2UgJGFjX3VzZXJfb3B0cyBpbgorICAgICAgKiIKKyJlbmFibGVfJGFjX3VzZXJvcHQiCisiKikgOzsKKyAgICAgICopIGFjX3VucmVjb2duaXplZF9vcHRzPSIkYWNfdW5yZWNvZ25pemVkX29wdHMkYWNfdW5yZWNvZ25pemVkX3NlcC0tZW5hYmxlLSRhY191c2Vyb3B0X29yaWciCisJIGFjX3VucmVjb2duaXplZF9zZXA9JywgJzs7CisgICAgZXNhYworICAgIGV2YWwgZW5hYmxlXyRhY191c2Vyb3B0PVwkYWNfb3B0YXJnIDs7CisKKyAgLWV4ZWMtcHJlZml4IHwgLS1leGVjX3ByZWZpeCB8IC0tZXhlYy1wcmVmaXggfCAtLWV4ZWMtcHJlZmkgXAorICB8IC0tZXhlYy1wcmVmIHwgLS1leGVjLXByZSB8IC0tZXhlYy1wciB8IC0tZXhlYy1wIHwgLS1leGVjLSBcCisgIHwgLS1leGVjIHwgLS1leGUgfCAtLWV4KQorICAgIGFjX3ByZXY9ZXhlY19wcmVmaXggOzsKKyAgLWV4ZWMtcHJlZml4PSogfCAtLWV4ZWNfcHJlZml4PSogfCAtLWV4ZWMtcHJlZml4PSogfCAtLWV4ZWMtcHJlZmk9KiBcCisgIHwgLS1leGVjLXByZWY9KiB8IC0tZXhlYy1wcmU9KiB8IC0tZXhlYy1wcj0qIHwgLS1leGVjLXA9KiB8IC0tZXhlYy09KiBcCisgIHwgLS1leGVjPSogfCAtLWV4ZT0qIHwgLS1leD0qKQorICAgIGV4ZWNfcHJlZml4PSRhY19vcHRhcmcgOzsKKworICAtZ2FzIHwgLS1nYXMgfCAtLWdhIHwgLS1nKQorICAgICMgT2Jzb2xldGU7IHVzZSAtLXdpdGgtZ2FzLgorICAgIHdpdGhfZ2FzPXllcyA7OworCisgIC1oZWxwIHwgLS1oZWxwIHwgLS1oZWwgfCAtLWhlIHwgLWgpCisgICAgYWNfaW5pdF9oZWxwPWxvbmcgOzsKKyAgLWhlbHA9ciogfCAtLWhlbHA9ciogfCAtLWhlbD1yKiB8IC0taGU9ciogfCAtaHIqKQorICAgIGFjX2luaXRfaGVscD1yZWN1cnNpdmUgOzsKKyAgLWhlbHA9cyogfCAtLWhlbHA9cyogfCAtLWhlbD1zKiB8IC0taGU9cyogfCAtaHMqKQorICAgIGFjX2luaXRfaGVscD1zaG9ydCA7OworCisgIC1ob3N0IHwgLS1ob3N0IHwgLS1ob3MgfCAtLWhvKQorICAgIGFjX3ByZXY9aG9zdF9hbGlhcyA7OworICAtaG9zdD0qIHwgLS1ob3N0PSogfCAtLWhvcz0qIHwgLS1obz0qKQorICAgIGhvc3RfYWxpYXM9JGFjX29wdGFyZyA7OworCisgIC1odG1sZGlyIHwgLS1odG1sZGlyIHwgLS1odG1sZGkgfCAtLWh0bWxkIHwgLS1odG1sIHwgLS1odG0gfCAtLWh0KQorICAgIGFjX3ByZXY9aHRtbGRpciA7OworICAtaHRtbGRpcj0qIHwgLS1odG1sZGlyPSogfCAtLWh0bWxkaT0qIHwgLS1odG1sZD0qIHwgLS1odG1sPSogfCAtLWh0bT0qIFwKKyAgfCAtLWh0PSopCisgICAgaHRtbGRpcj0kYWNfb3B0YXJnIDs7CisKKyAgLWluY2x1ZGVkaXIgfCAtLWluY2x1ZGVkaXIgfCAtLWluY2x1ZGVkaSB8IC0taW5jbHVkZWQgfCAtLWluY2x1ZGUgXAorICB8IC0taW5jbHVkIHwgLS1pbmNsdSB8IC0taW5jbCB8IC0taW5jKQorICAgIGFjX3ByZXY9aW5jbHVkZWRpciA7OworICAtaW5jbHVkZWRpcj0qIHwgLS1pbmNsdWRlZGlyPSogfCAtLWluY2x1ZGVkaT0qIHwgLS1pbmNsdWRlZD0qIHwgLS1pbmNsdWRlPSogXAorICB8IC0taW5jbHVkPSogfCAtLWluY2x1PSogfCAtLWluY2w9KiB8IC0taW5jPSopCisgICAgaW5jbHVkZWRpcj0kYWNfb3B0YXJnIDs7CisKKyAgLWluZm9kaXIgfCAtLWluZm9kaXIgfCAtLWluZm9kaSB8IC0taW5mb2QgfCAtLWluZm8gfCAtLWluZikKKyAgICBhY19wcmV2PWluZm9kaXIgOzsKKyAgLWluZm9kaXI9KiB8IC0taW5mb2Rpcj0qIHwgLS1pbmZvZGk9KiB8IC0taW5mb2Q9KiB8IC0taW5mbz0qIHwgLS1pbmY9KikKKyAgICBpbmZvZGlyPSRhY19vcHRhcmcgOzsKKworICAtbGliZGlyIHwgLS1saWJkaXIgfCAtLWxpYmRpIHwgLS1saWJkKQorICAgIGFjX3ByZXY9bGliZGlyIDs7CisgIC1saWJkaXI9KiB8IC0tbGliZGlyPSogfCAtLWxpYmRpPSogfCAtLWxpYmQ9KikKKyAgICBsaWJkaXI9JGFjX29wdGFyZyA7OworCisgIC1saWJleGVjZGlyIHwgLS1saWJleGVjZGlyIHwgLS1saWJleGVjZGkgfCAtLWxpYmV4ZWNkIHwgLS1saWJleGVjIFwKKyAgfCAtLWxpYmV4ZSB8IC0tbGliZXggfCAtLWxpYmUpCisgICAgYWNfcHJldj1saWJleGVjZGlyIDs7CisgIC1saWJleGVjZGlyPSogfCAtLWxpYmV4ZWNkaXI9KiB8IC0tbGliZXhlY2RpPSogfCAtLWxpYmV4ZWNkPSogfCAtLWxpYmV4ZWM9KiBcCisgIHwgLS1saWJleGU9KiB8IC0tbGliZXg9KiB8IC0tbGliZT0qKQorICAgIGxpYmV4ZWNkaXI9JGFjX29wdGFyZyA7OworCisgIC1sb2NhbGVkaXIgfCAtLWxvY2FsZWRpciB8IC0tbG9jYWxlZGkgfCAtLWxvY2FsZWQgfCAtLWxvY2FsZSkKKyAgICBhY19wcmV2PWxvY2FsZWRpciA7OworICAtbG9jYWxlZGlyPSogfCAtLWxvY2FsZWRpcj0qIHwgLS1sb2NhbGVkaT0qIHwgLS1sb2NhbGVkPSogfCAtLWxvY2FsZT0qKQorICAgIGxvY2FsZWRpcj0kYWNfb3B0YXJnIDs7CisKKyAgLWxvY2Fsc3RhdGVkaXIgfCAtLWxvY2Fsc3RhdGVkaXIgfCAtLWxvY2Fsc3RhdGVkaSB8IC0tbG9jYWxzdGF0ZWQgXAorICB8IC0tbG9jYWxzdGF0ZSB8IC0tbG9jYWxzdGF0IHwgLS1sb2NhbHN0YSB8IC0tbG9jYWxzdCB8IC0tbG9jYWxzKQorICAgIGFjX3ByZXY9bG9jYWxzdGF0ZWRpciA7OworICAtbG9jYWxzdGF0ZWRpcj0qIHwgLS1sb2NhbHN0YXRlZGlyPSogfCAtLWxvY2Fsc3RhdGVkaT0qIHwgLS1sb2NhbHN0YXRlZD0qIFwKKyAgfCAtLWxvY2Fsc3RhdGU9KiB8IC0tbG9jYWxzdGF0PSogfCAtLWxvY2Fsc3RhPSogfCAtLWxvY2Fsc3Q9KiB8IC0tbG9jYWxzPSopCisgICAgbG9jYWxzdGF0ZWRpcj0kYWNfb3B0YXJnIDs7CisKKyAgLW1hbmRpciB8IC0tbWFuZGlyIHwgLS1tYW5kaSB8IC0tbWFuZCB8IC0tbWFuIHwgLS1tYSB8IC0tbSkKKyAgICBhY19wcmV2PW1hbmRpciA7OworICAtbWFuZGlyPSogfCAtLW1hbmRpcj0qIHwgLS1tYW5kaT0qIHwgLS1tYW5kPSogfCAtLW1hbj0qIHwgLS1tYT0qIHwgLS1tPSopCisgICAgbWFuZGlyPSRhY19vcHRhcmcgOzsKKworICAtbmZwIHwgLS1uZnAgfCAtLW5mKQorICAgICMgT2Jzb2xldGU7IHVzZSAtLXdpdGhvdXQtZnAuCisgICAgd2l0aF9mcD1ubyA7OworCisgIC1uby1jcmVhdGUgfCAtLW5vLWNyZWF0ZSB8IC0tbm8tY3JlYXQgfCAtLW5vLWNyZWEgfCAtLW5vLWNyZSBcCisgIHwgLS1uby1jciB8IC0tbm8tYyB8IC1uKQorICAgIG5vX2NyZWF0ZT15ZXMgOzsKKworICAtbm8tcmVjdXJzaW9uIHwgLS1uby1yZWN1cnNpb24gfCAtLW5vLXJlY3Vyc2lvIHwgLS1uby1yZWN1cnNpIFwKKyAgfCAtLW5vLXJlY3VycyB8IC0tbm8tcmVjdXIgfCAtLW5vLXJlY3UgfCAtLW5vLXJlYyB8IC0tbm8tcmUgfCAtLW5vLXIpCisgICAgbm9fcmVjdXJzaW9uPXllcyA7OworCisgIC1vbGRpbmNsdWRlZGlyIHwgLS1vbGRpbmNsdWRlZGlyIHwgLS1vbGRpbmNsdWRlZGkgfCAtLW9sZGluY2x1ZGVkIFwKKyAgfCAtLW9sZGluY2x1ZGUgfCAtLW9sZGluY2x1ZCB8IC0tb2xkaW5jbHUgfCAtLW9sZGluY2wgfCAtLW9sZGluYyBcCisgIHwgLS1vbGRpbiB8IC0tb2xkaSB8IC0tb2xkIHwgLS1vbCB8IC0tbykKKyAgICBhY19wcmV2PW9sZGluY2x1ZGVkaXIgOzsKKyAgLW9sZGluY2x1ZGVkaXI9KiB8IC0tb2xkaW5jbHVkZWRpcj0qIHwgLS1vbGRpbmNsdWRlZGk9KiB8IC0tb2xkaW5jbHVkZWQ9KiBcCisgIHwgLS1vbGRpbmNsdWRlPSogfCAtLW9sZGluY2x1ZD0qIHwgLS1vbGRpbmNsdT0qIHwgLS1vbGRpbmNsPSogfCAtLW9sZGluYz0qIFwKKyAgfCAtLW9sZGluPSogfCAtLW9sZGk9KiB8IC0tb2xkPSogfCAtLW9sPSogfCAtLW89KikKKyAgICBvbGRpbmNsdWRlZGlyPSRhY19vcHRhcmcgOzsKKworICAtcHJlZml4IHwgLS1wcmVmaXggfCAtLXByZWZpIHwgLS1wcmVmIHwgLS1wcmUgfCAtLXByIHwgLS1wKQorICAgIGFjX3ByZXY9cHJlZml4IDs7CisgIC1wcmVmaXg9KiB8IC0tcHJlZml4PSogfCAtLXByZWZpPSogfCAtLXByZWY9KiB8IC0tcHJlPSogfCAtLXByPSogfCAtLXA9KikKKyAgICBwcmVmaXg9JGFjX29wdGFyZyA7OworCisgIC1wcm9ncmFtLXByZWZpeCB8IC0tcHJvZ3JhbS1wcmVmaXggfCAtLXByb2dyYW0tcHJlZmkgfCAtLXByb2dyYW0tcHJlZiBcCisgIHwgLS1wcm9ncmFtLXByZSB8IC0tcHJvZ3JhbS1wciB8IC0tcHJvZ3JhbS1wKQorICAgIGFjX3ByZXY9cHJvZ3JhbV9wcmVmaXggOzsKKyAgLXByb2dyYW0tcHJlZml4PSogfCAtLXByb2dyYW0tcHJlZml4PSogfCAtLXByb2dyYW0tcHJlZmk9KiBcCisgIHwgLS1wcm9ncmFtLXByZWY9KiB8IC0tcHJvZ3JhbS1wcmU9KiB8IC0tcHJvZ3JhbS1wcj0qIHwgLS1wcm9ncmFtLXA9KikKKyAgICBwcm9ncmFtX3ByZWZpeD0kYWNfb3B0YXJnIDs7CisKKyAgLXByb2dyYW0tc3VmZml4IHwgLS1wcm9ncmFtLXN1ZmZpeCB8IC0tcHJvZ3JhbS1zdWZmaSB8IC0tcHJvZ3JhbS1zdWZmIFwKKyAgfCAtLXByb2dyYW0tc3VmIHwgLS1wcm9ncmFtLXN1IHwgLS1wcm9ncmFtLXMpCisgICAgYWNfcHJldj1wcm9ncmFtX3N1ZmZpeCA7OworICAtcHJvZ3JhbS1zdWZmaXg9KiB8IC0tcHJvZ3JhbS1zdWZmaXg9KiB8IC0tcHJvZ3JhbS1zdWZmaT0qIFwKKyAgfCAtLXByb2dyYW0tc3VmZj0qIHwgLS1wcm9ncmFtLXN1Zj0qIHwgLS1wcm9ncmFtLXN1PSogfCAtLXByb2dyYW0tcz0qKQorICAgIHByb2dyYW1fc3VmZml4PSRhY19vcHRhcmcgOzsKKworICAtcHJvZ3JhbS10cmFuc2Zvcm0tbmFtZSB8IC0tcHJvZ3JhbS10cmFuc2Zvcm0tbmFtZSBcCisgIHwgLS1wcm9ncmFtLXRyYW5zZm9ybS1uYW0gfCAtLXByb2dyYW0tdHJhbnNmb3JtLW5hIFwKKyAgfCAtLXByb2dyYW0tdHJhbnNmb3JtLW4gfCAtLXByb2dyYW0tdHJhbnNmb3JtLSBcCisgIHwgLS1wcm9ncmFtLXRyYW5zZm9ybSB8IC0tcHJvZ3JhbS10cmFuc2ZvciBcCisgIHwgLS1wcm9ncmFtLXRyYW5zZm8gfCAtLXByb2dyYW0tdHJhbnNmIFwKKyAgfCAtLXByb2dyYW0tdHJhbnMgfCAtLXByb2dyYW0tdHJhbiBcCisgIHwgLS1wcm9nci10cmEgfCAtLXByb2dyYW0tdHIgfCAtLXByb2dyYW0tdCkKKyAgICBhY19wcmV2PXByb2dyYW1fdHJhbnNmb3JtX25hbWUgOzsKKyAgLXByb2dyYW0tdHJhbnNmb3JtLW5hbWU9KiB8IC0tcHJvZ3JhbS10cmFuc2Zvcm0tbmFtZT0qIFwKKyAgfCAtLXByb2dyYW0tdHJhbnNmb3JtLW5hbT0qIHwgLS1wcm9ncmFtLXRyYW5zZm9ybS1uYT0qIFwKKyAgfCAtLXByb2dyYW0tdHJhbnNmb3JtLW49KiB8IC0tcHJvZ3JhbS10cmFuc2Zvcm0tPSogXAorICB8IC0tcHJvZ3JhbS10cmFuc2Zvcm09KiB8IC0tcHJvZ3JhbS10cmFuc2Zvcj0qIFwKKyAgfCAtLXByb2dyYW0tdHJhbnNmbz0qIHwgLS1wcm9ncmFtLXRyYW5zZj0qIFwKKyAgfCAtLXByb2dyYW0tdHJhbnM9KiB8IC0tcHJvZ3JhbS10cmFuPSogXAorICB8IC0tcHJvZ3ItdHJhPSogfCAtLXByb2dyYW0tdHI9KiB8IC0tcHJvZ3JhbS10PSopCisgICAgcHJvZ3JhbV90cmFuc2Zvcm1fbmFtZT0kYWNfb3B0YXJnIDs7CisKKyAgLXBkZmRpciB8IC0tcGRmZGlyIHwgLS1wZGZkaSB8IC0tcGRmZCB8IC0tcGRmIHwgLS1wZCkKKyAgICBhY19wcmV2PXBkZmRpciA7OworICAtcGRmZGlyPSogfCAtLXBkZmRpcj0qIHwgLS1wZGZkaT0qIHwgLS1wZGZkPSogfCAtLXBkZj0qIHwgLS1wZD0qKQorICAgIHBkZmRpcj0kYWNfb3B0YXJnIDs7CisKKyAgLXBzZGlyIHwgLS1wc2RpciB8IC0tcHNkaSB8IC0tcHNkIHwgLS1wcykKKyAgICBhY19wcmV2PXBzZGlyIDs7CisgIC1wc2Rpcj0qIHwgLS1wc2Rpcj0qIHwgLS1wc2RpPSogfCAtLXBzZD0qIHwgLS1wcz0qKQorICAgIHBzZGlyPSRhY19vcHRhcmcgOzsKKworICAtcSB8IC1xdWlldCB8IC0tcXVpZXQgfCAtLXF1aWUgfCAtLXF1aSB8IC0tcXUgfCAtLXEgXAorICB8IC1zaWxlbnQgfCAtLXNpbGVudCB8IC0tc2lsZW4gfCAtLXNpbGUgfCAtLXNpbCkKKyAgICBzaWxlbnQ9eWVzIDs7CisKKyAgLXNiaW5kaXIgfCAtLXNiaW5kaXIgfCAtLXNiaW5kaSB8IC0tc2JpbmQgfCAtLXNiaW4gfCAtLXNiaSB8IC0tc2IpCisgICAgYWNfcHJldj1zYmluZGlyIDs7CisgIC1zYmluZGlyPSogfCAtLXNiaW5kaXI9KiB8IC0tc2JpbmRpPSogfCAtLXNiaW5kPSogfCAtLXNiaW49KiBcCisgIHwgLS1zYmk9KiB8IC0tc2I9KikKKyAgICBzYmluZGlyPSRhY19vcHRhcmcgOzsKKworICAtc2hhcmVkc3RhdGVkaXIgfCAtLXNoYXJlZHN0YXRlZGlyIHwgLS1zaGFyZWRzdGF0ZWRpIFwKKyAgfCAtLXNoYXJlZHN0YXRlZCB8IC0tc2hhcmVkc3RhdGUgfCAtLXNoYXJlZHN0YXQgfCAtLXNoYXJlZHN0YSBcCisgIHwgLS1zaGFyZWRzdCB8IC0tc2hhcmVkcyB8IC0tc2hhcmVkIHwgLS1zaGFyZSB8IC0tc2hhciBcCisgIHwgLS1zaGEgfCAtLXNoKQorICAgIGFjX3ByZXY9c2hhcmVkc3RhdGVkaXIgOzsKKyAgLXNoYXJlZHN0YXRlZGlyPSogfCAtLXNoYXJlZHN0YXRlZGlyPSogfCAtLXNoYXJlZHN0YXRlZGk9KiBcCisgIHwgLS1zaGFyZWRzdGF0ZWQ9KiB8IC0tc2hhcmVkc3RhdGU9KiB8IC0tc2hhcmVkc3RhdD0qIHwgLS1zaGFyZWRzdGE9KiBcCisgIHwgLS1zaGFyZWRzdD0qIHwgLS1zaGFyZWRzPSogfCAtLXNoYXJlZD0qIHwgLS1zaGFyZT0qIHwgLS1zaGFyPSogXAorICB8IC0tc2hhPSogfCAtLXNoPSopCisgICAgc2hhcmVkc3RhdGVkaXI9JGFjX29wdGFyZyA7OworCisgIC1zaXRlIHwgLS1zaXRlIHwgLS1zaXQpCisgICAgYWNfcHJldj1zaXRlIDs7CisgIC1zaXRlPSogfCAtLXNpdGU9KiB8IC0tc2l0PSopCisgICAgc2l0ZT0kYWNfb3B0YXJnIDs7CisKKyAgLXNyY2RpciB8IC0tc3JjZGlyIHwgLS1zcmNkaSB8IC0tc3JjZCB8IC0tc3JjIHwgLS1zcikKKyAgICBhY19wcmV2PXNyY2RpciA7OworICAtc3JjZGlyPSogfCAtLXNyY2Rpcj0qIHwgLS1zcmNkaT0qIHwgLS1zcmNkPSogfCAtLXNyYz0qIHwgLS1zcj0qKQorICAgIHNyY2Rpcj0kYWNfb3B0YXJnIDs7CisKKyAgLXN5c2NvbmZkaXIgfCAtLXN5c2NvbmZkaXIgfCAtLXN5c2NvbmZkaSB8IC0tc3lzY29uZmQgfCAtLXN5c2NvbmYgXAorICB8IC0tc3lzY29uIHwgLS1zeXNjbyB8IC0tc3lzYyB8IC0tc3lzIHwgLS1zeSkKKyAgICBhY19wcmV2PXN5c2NvbmZkaXIgOzsKKyAgLXN5c2NvbmZkaXI9KiB8IC0tc3lzY29uZmRpcj0qIHwgLS1zeXNjb25mZGk9KiB8IC0tc3lzY29uZmQ9KiB8IC0tc3lzY29uZj0qIFwKKyAgfCAtLXN5c2Nvbj0qIHwgLS1zeXNjbz0qIHwgLS1zeXNjPSogfCAtLXN5cz0qIHwgLS1zeT0qKQorICAgIHN5c2NvbmZkaXI9JGFjX29wdGFyZyA7OworCisgIC10YXJnZXQgfCAtLXRhcmdldCB8IC0tdGFyZ2UgfCAtLXRhcmcgfCAtLXRhciB8IC0tdGEgfCAtLXQpCisgICAgYWNfcHJldj10YXJnZXRfYWxpYXMgOzsKKyAgLXRhcmdldD0qIHwgLS10YXJnZXQ9KiB8IC0tdGFyZ2U9KiB8IC0tdGFyZz0qIHwgLS10YXI9KiB8IC0tdGE9KiB8IC0tdD0qKQorICAgIHRhcmdldF9hbGlhcz0kYWNfb3B0YXJnIDs7CisKKyAgLXYgfCAtdmVyYm9zZSB8IC0tdmVyYm9zZSB8IC0tdmVyYm9zIHwgLS12ZXJibyB8IC0tdmVyYikKKyAgICB2ZXJib3NlPXllcyA7OworCisgIC12ZXJzaW9uIHwgLS12ZXJzaW9uIHwgLS12ZXJzaW8gfCAtLXZlcnNpIHwgLS12ZXJzIHwgLVYpCisgICAgYWNfaW5pdF92ZXJzaW9uPTogOzsKKworICAtd2l0aC0qIHwgLS13aXRoLSopCisgICAgYWNfdXNlcm9wdD1gZXhwciAieCRhY19vcHRpb24iIDogJ3gtKndpdGgtXChbXj1dKlwpJ2AKKyAgICAjIFJlamVjdCBuYW1lcyB0aGF0IGFyZSBub3QgdmFsaWQgc2hlbGwgdmFyaWFibGUgbmFtZXMuCisgICAgZXhwciAieCRhY191c2Vyb3B0IiA6ICIuKlteLSsuXyRhc19jcl9hbG51bV0iID4vZGV2L251bGwgJiYKKyAgICAgIGFzX2ZuX2Vycm9yICQ/ICJpbnZhbGlkIHBhY2thZ2UgbmFtZTogJGFjX3VzZXJvcHQiCisgICAgYWNfdXNlcm9wdF9vcmlnPSRhY191c2Vyb3B0CisgICAgYWNfdXNlcm9wdD1gJGFzX2VjaG8gIiRhY191c2Vyb3B0IiB8IHNlZCAncy9bLSsuXS9fL2cnYAorICAgIGNhc2UgJGFjX3VzZXJfb3B0cyBpbgorICAgICAgKiIKKyJ3aXRoXyRhY191c2Vyb3B0IgorIiopIDs7CisgICAgICAqKSBhY191bnJlY29nbml6ZWRfb3B0cz0iJGFjX3VucmVjb2duaXplZF9vcHRzJGFjX3VucmVjb2duaXplZF9zZXAtLXdpdGgtJGFjX3VzZXJvcHRfb3JpZyIKKwkgYWNfdW5yZWNvZ25pemVkX3NlcD0nLCAnOzsKKyAgICBlc2FjCisgICAgZXZhbCB3aXRoXyRhY191c2Vyb3B0PVwkYWNfb3B0YXJnIDs7CisKKyAgLXdpdGhvdXQtKiB8IC0td2l0aG91dC0qKQorICAgIGFjX3VzZXJvcHQ9YGV4cHIgIngkYWNfb3B0aW9uIiA6ICd4LSp3aXRob3V0LVwoLipcKSdgCisgICAgIyBSZWplY3QgbmFtZXMgdGhhdCBhcmUgbm90IHZhbGlkIHNoZWxsIHZhcmlhYmxlIG5hbWVzLgorICAgIGV4cHIgIngkYWNfdXNlcm9wdCIgOiAiLipbXi0rLl8kYXNfY3JfYWxudW1dIiA+L2Rldi9udWxsICYmCisgICAgICBhc19mbl9lcnJvciAkPyAiaW52YWxpZCBwYWNrYWdlIG5hbWU6ICRhY191c2Vyb3B0IgorICAgIGFjX3VzZXJvcHRfb3JpZz0kYWNfdXNlcm9wdAorICAgIGFjX3VzZXJvcHQ9YCRhc19lY2hvICIkYWNfdXNlcm9wdCIgfCBzZWQgJ3MvWy0rLl0vXy9nJ2AKKyAgICBjYXNlICRhY191c2VyX29wdHMgaW4KKyAgICAgICoiCisid2l0aF8kYWNfdXNlcm9wdCIKKyIqKSA7OworICAgICAgKikgYWNfdW5yZWNvZ25pemVkX29wdHM9IiRhY191bnJlY29nbml6ZWRfb3B0cyRhY191bnJlY29nbml6ZWRfc2VwLS13aXRob3V0LSRhY191c2Vyb3B0X29yaWciCisJIGFjX3VucmVjb2duaXplZF9zZXA9JywgJzs7CisgICAgZXNhYworICAgIGV2YWwgd2l0aF8kYWNfdXNlcm9wdD1ubyA7OworCisgIC0teCkKKyAgICAjIE9ic29sZXRlOyB1c2UgLS13aXRoLXguCisgICAgd2l0aF94PXllcyA7OworCisgIC14LWluY2x1ZGVzIHwgLS14LWluY2x1ZGVzIHwgLS14LWluY2x1ZGUgfCAtLXgtaW5jbHVkIHwgLS14LWluY2x1IFwKKyAgfCAtLXgtaW5jbCB8IC0teC1pbmMgfCAtLXgtaW4gfCAtLXgtaSkKKyAgICBhY19wcmV2PXhfaW5jbHVkZXMgOzsKKyAgLXgtaW5jbHVkZXM9KiB8IC0teC1pbmNsdWRlcz0qIHwgLS14LWluY2x1ZGU9KiB8IC0teC1pbmNsdWQ9KiB8IC0teC1pbmNsdT0qIFwKKyAgfCAtLXgtaW5jbD0qIHwgLS14LWluYz0qIHwgLS14LWluPSogfCAtLXgtaT0qKQorICAgIHhfaW5jbHVkZXM9JGFjX29wdGFyZyA7OworCisgIC14LWxpYnJhcmllcyB8IC0teC1saWJyYXJpZXMgfCAtLXgtbGlicmFyaWUgfCAtLXgtbGlicmFyaSBcCisgIHwgLS14LWxpYnJhciB8IC0teC1saWJyYSB8IC0teC1saWJyIHwgLS14LWxpYiB8IC0teC1saSB8IC0teC1sKQorICAgIGFjX3ByZXY9eF9saWJyYXJpZXMgOzsKKyAgLXgtbGlicmFyaWVzPSogfCAtLXgtbGlicmFyaWVzPSogfCAtLXgtbGlicmFyaWU9KiB8IC0teC1saWJyYXJpPSogXAorICB8IC0teC1saWJyYXI9KiB8IC0teC1saWJyYT0qIHwgLS14LWxpYnI9KiB8IC0teC1saWI9KiB8IC0teC1saT0qIHwgLS14LWw9KikKKyAgICB4X2xpYnJhcmllcz0kYWNfb3B0YXJnIDs7CisKKyAgLSopIGFzX2ZuX2Vycm9yICQ/ICJ1bnJlY29nbml6ZWQgb3B0aW9uOiBcYCRhY19vcHRpb24nCitUcnkgXGAkMCAtLWhlbHAnIGZvciBtb3JlIGluZm9ybWF0aW9uIgorICAgIDs7CisKKyAgKj0qKQorICAgIGFjX2VudnZhcj1gZXhwciAieCRhY19vcHRpb24iIDogJ3hcKFtePV0qXCk9J2AKKyAgICAjIFJlamVjdCBuYW1lcyB0aGF0IGFyZSBub3QgdmFsaWQgc2hlbGwgdmFyaWFibGUgbmFtZXMuCisgICAgY2FzZSAkYWNfZW52dmFyIGluICMoCisgICAgICAnJyB8IFswLTldKiB8ICpbIV8kYXNfY3JfYWxudW1dKiApCisgICAgICBhc19mbl9lcnJvciAkPyAiaW52YWxpZCB2YXJpYWJsZSBuYW1lOiBcYCRhY19lbnZ2YXInIiA7OworICAgIGVzYWMKKyAgICBldmFsICRhY19lbnZ2YXI9XCRhY19vcHRhcmcKKyAgICBleHBvcnQgJGFjX2VudnZhciA7OworCisgICopCisgICAgIyBGSVhNRTogc2hvdWxkIGJlIHJlbW92ZWQgaW4gYXV0b2NvbmYgMy4wLgorICAgICRhc19lY2hvICIkYXNfbWU6IFdBUk5JTkc6IHlvdSBzaG91bGQgdXNlIC0tYnVpbGQsIC0taG9zdCwgLS10YXJnZXQiID4mMgorICAgIGV4cHIgIngkYWNfb3B0aW9uIiA6ICIuKlteLS5fJGFzX2NyX2FsbnVtXSIgPi9kZXYvbnVsbCAmJgorICAgICAgJGFzX2VjaG8gIiRhc19tZTogV0FSTklORzogaW52YWxpZCBob3N0IHR5cGU6ICRhY19vcHRpb24iID4mMgorICAgIDogIiR7YnVpbGRfYWxpYXM9JGFjX29wdGlvbn0gJHtob3N0X2FsaWFzPSRhY19vcHRpb259ICR7dGFyZ2V0X2FsaWFzPSRhY19vcHRpb259IgorICAgIDs7CisKKyAgZXNhYworZG9uZQorCitpZiB0ZXN0IC1uICIkYWNfcHJldiI7IHRoZW4KKyAgYWNfb3B0aW9uPS0tYGVjaG8gJGFjX3ByZXYgfCBzZWQgJ3MvXy8tL2cnYAorICBhc19mbl9lcnJvciAkPyAibWlzc2luZyBhcmd1bWVudCB0byAkYWNfb3B0aW9uIgorZmkKKworaWYgdGVzdCAtbiAiJGFjX3VucmVjb2duaXplZF9vcHRzIjsgdGhlbgorICBjYXNlICRlbmFibGVfb3B0aW9uX2NoZWNraW5nIGluCisgICAgbm8pIDs7CisgICAgZmF0YWwpIGFzX2ZuX2Vycm9yICQ/ICJ1bnJlY29nbml6ZWQgb3B0aW9uczogJGFjX3VucmVjb2duaXplZF9vcHRzIiA7OworICAgICopICAgICAkYXNfZWNobyAiJGFzX21lOiBXQVJOSU5HOiB1bnJlY29nbml6ZWQgb3B0aW9uczogJGFjX3VucmVjb2duaXplZF9vcHRzIiA+JjIgOzsKKyAgZXNhYworZmkKKworIyBDaGVjayBhbGwgZGlyZWN0b3J5IGFyZ3VtZW50cyBmb3IgY29uc2lzdGVuY3kuCitmb3IgYWNfdmFyIGluCWV4ZWNfcHJlZml4IHByZWZpeCBiaW5kaXIgc2JpbmRpciBsaWJleGVjZGlyIGRhdGFyb290ZGlyIFwKKwkJZGF0YWRpciBzeXNjb25mZGlyIHNoYXJlZHN0YXRlZGlyIGxvY2Fsc3RhdGVkaXIgaW5jbHVkZWRpciBcCisJCW9sZGluY2x1ZGVkaXIgZG9jZGlyIGluZm9kaXIgaHRtbGRpciBkdmlkaXIgcGRmZGlyIHBzZGlyIFwKKwkJbGliZGlyIGxvY2FsZWRpciBtYW5kaXIKK2RvCisgIGV2YWwgYWNfdmFsPVwkJGFjX3ZhcgorICAjIFJlbW92ZSB0cmFpbGluZyBzbGFzaGVzLgorICBjYXNlICRhY192YWwgaW4KKyAgICAqLyApCisgICAgICBhY192YWw9YGV4cHIgIlgkYWNfdmFsIiA6ICdYXCguKlteL11cKScgXHwgIlgkYWNfdmFsIiA6ICdYXCguKlwpJ2AKKyAgICAgIGV2YWwgJGFjX3Zhcj1cJGFjX3ZhbDs7CisgIGVzYWMKKyAgIyBCZSBzdXJlIHRvIGhhdmUgYWJzb2x1dGUgZGlyZWN0b3J5IG5hbWVzLgorICBjYXNlICRhY192YWwgaW4KKyAgICBbXFwvJF0qIHwgPzpbXFwvXSogKSAgY29udGludWU7OworICAgIE5PTkUgfCAnJyApIGNhc2UgJGFjX3ZhciBpbiAqcHJlZml4ICkgY29udGludWU7OyBlc2FjOzsKKyAgZXNhYworICBhc19mbl9lcnJvciAkPyAiZXhwZWN0ZWQgYW4gYWJzb2x1dGUgZGlyZWN0b3J5IG5hbWUgZm9yIC0tJGFjX3ZhcjogJGFjX3ZhbCIKK2RvbmUKKworIyBUaGVyZSBtaWdodCBiZSBwZW9wbGUgd2hvIGRlcGVuZCBvbiB0aGUgb2xkIGJyb2tlbiBiZWhhdmlvcjogYCRob3N0JworIyB1c2VkIHRvIGhvbGQgdGhlIGFyZ3VtZW50IG9mIC0taG9zdCBldGMuCisjIEZJWE1FOiBUbyByZW1vdmUgc29tZSBkYXkuCitidWlsZD0kYnVpbGRfYWxpYXMKK2hvc3Q9JGhvc3RfYWxpYXMKK3RhcmdldD0kdGFyZ2V0X2FsaWFzCisKKyMgRklYTUU6IFRvIHJlbW92ZSBzb21lIGRheS4KK2lmIHRlc3QgIngkaG9zdF9hbGlhcyIgIT0geDsgdGhlbgorICBpZiB0ZXN0ICJ4JGJ1aWxkX2FsaWFzIiA9IHg7IHRoZW4KKyAgICBjcm9zc19jb21waWxpbmc9bWF5YmUKKyAgICAkYXNfZWNobyAiJGFzX21lOiBXQVJOSU5HOiBpZiB5b3Ugd2FudGVkIHRvIHNldCB0aGUgLS1idWlsZCB0eXBlLCBkb24ndCB1c2UgLS1ob3N0LgorICAgIElmIGEgY3Jvc3MgY29tcGlsZXIgaXMgZGV0ZWN0ZWQgdGhlbiBjcm9zcyBjb21waWxlIG1vZGUgd2lsbCBiZSB1c2VkIiA+JjIKKyAgZWxpZiB0ZXN0ICJ4JGJ1aWxkX2FsaWFzIiAhPSAieCRob3N0X2FsaWFzIjsgdGhlbgorICAgIGNyb3NzX2NvbXBpbGluZz15ZXMKKyAgZmkKK2ZpCisKK2FjX3Rvb2xfcHJlZml4PQordGVzdCAtbiAiJGhvc3RfYWxpYXMiICYmIGFjX3Rvb2xfcHJlZml4PSRob3N0X2FsaWFzLQorCit0ZXN0ICIkc2lsZW50IiA9IHllcyAmJiBleGVjIDY+L2Rldi9udWxsCisKKworYWNfcHdkPWBwd2RgICYmIHRlc3QgLW4gIiRhY19wd2QiICYmCithY19sc19kaT1gbHMgLWRpIC5gICYmCithY19wd2RfbHNfZGk9YGNkICIkYWNfcHdkIiAmJiBscyAtZGkgLmAgfHwKKyAgYXNfZm5fZXJyb3IgJD8gIndvcmtpbmcgZGlyZWN0b3J5IGNhbm5vdCBiZSBkZXRlcm1pbmVkIgordGVzdCAiWCRhY19sc19kaSIgPSAiWCRhY19wd2RfbHNfZGkiIHx8CisgIGFzX2ZuX2Vycm9yICQ/ICJwd2QgZG9lcyBub3QgcmVwb3J0IG5hbWUgb2Ygd29ya2luZyBkaXJlY3RvcnkiCisKKworIyBGaW5kIHRoZSBzb3VyY2UgZmlsZXMsIGlmIGxvY2F0aW9uIHdhcyBub3Qgc3BlY2lmaWVkLgoraWYgdGVzdCAteiAiJHNyY2RpciI7IHRoZW4KKyAgYWNfc3JjZGlyX2RlZmF1bHRlZD15ZXMKKyAgIyBUcnkgdGhlIGRpcmVjdG9yeSBjb250YWluaW5nIHRoaXMgc2NyaXB0LCB0aGVuIHRoZSBwYXJlbnQgZGlyZWN0b3J5LgorICBhY19jb25mZGlyPWAkYXNfZGlybmFtZSAtLSAiJGFzX215c2VsZiIgfHwKKyRhc19leHByIFgiJGFzX215c2VsZiIgOiAnWFwoLipbXi9dXCkvLypbXi9dW14vXSovKiQnIFx8IFwKKwkgWCIkYXNfbXlzZWxmIiA6ICdYXCgvL1wpW14vXScgXHwgXAorCSBYIiRhc19teXNlbGYiIDogJ1hcKC8vXCkkJyBcfCBcCisJIFgiJGFzX215c2VsZiIgOiAnWFwoL1wpJyBcfCAuIDI+L2Rldi9udWxsIHx8CiskYXNfZWNobyBYIiRhc19teXNlbGYiIHwKKyAgICBzZWQgJy9eWFwoLipbXi9dXClcL1wvKlteL11bXi9dKlwvKiQveworCSAgICBzLy9cMS8KKwkgICAgcQorCSAgfQorCSAgL15YXChcL1wvXClbXi9dLioveworCSAgICBzLy9cMS8KKwkgICAgcQorCSAgfQorCSAgL15YXChcL1wvXCkkL3sKKwkgICAgcy8vXDEvCisJICAgIHEKKwkgIH0KKwkgIC9eWFwoXC9cKS4qL3sKKwkgICAgcy8vXDEvCisJICAgIHEKKwkgIH0KKwkgIHMvLiovLi87IHEnYAorICBzcmNkaXI9JGFjX2NvbmZkaXIKKyAgaWYgdGVzdCAhIC1yICIkc3JjZGlyLyRhY191bmlxdWVfZmlsZSI7IHRoZW4KKyAgICBzcmNkaXI9Li4KKyAgZmkKK2Vsc2UKKyAgYWNfc3JjZGlyX2RlZmF1bHRlZD1ubworZmkKK2lmIHRlc3QgISAtciAiJHNyY2Rpci8kYWNfdW5pcXVlX2ZpbGUiOyB0aGVuCisgIHRlc3QgIiRhY19zcmNkaXJfZGVmYXVsdGVkIiA9IHllcyAmJiBzcmNkaXI9IiRhY19jb25mZGlyIG9yIC4uIgorICBhc19mbl9lcnJvciAkPyAiY2Fubm90IGZpbmQgc291cmNlcyAoJGFjX3VuaXF1ZV9maWxlKSBpbiAkc3JjZGlyIgorZmkKK2FjX21zZz0ic291cmNlcyBhcmUgaW4gJHNyY2RpciwgYnV0IFxgY2QgJHNyY2RpcicgZG9lcyBub3Qgd29yayIKK2FjX2Fic19jb25mZGlyPWAoCisJY2QgIiRzcmNkaXIiICYmIHRlc3QgLXIgIi4vJGFjX3VuaXF1ZV9maWxlIiB8fCBhc19mbl9lcnJvciAkPyAiJGFjX21zZyIKKwlwd2QpYAorIyBXaGVuIGJ1aWxkaW5nIGluIHBsYWNlLCBzZXQgc3JjZGlyPS4KK2lmIHRlc3QgIiRhY19hYnNfY29uZmRpciIgPSAiJGFjX3B3ZCI7IHRoZW4KKyAgc3JjZGlyPS4KK2ZpCisjIFJlbW92ZSB1bm5lY2Vzc2FyeSB0cmFpbGluZyBzbGFzaGVzIGZyb20gc3JjZGlyLgorIyBEb3VibGUgc2xhc2hlcyBpbiBmaWxlIG5hbWVzIGluIG9iamVjdCBmaWxlIGRlYnVnZ2luZyBpbmZvCisjIG1lc3MgdXAgTS14IGdkYiBpbiBFbWFjcy4KK2Nhc2UgJHNyY2RpciBpbgorKi8pIHNyY2Rpcj1gZXhwciAiWCRzcmNkaXIiIDogJ1hcKC4qW14vXVwpJyBcfCAiWCRzcmNkaXIiIDogJ1hcKC4qXCknYDs7Citlc2FjCitmb3IgYWNfdmFyIGluICRhY19wcmVjaW91c192YXJzOyBkbworICBldmFsIGFjX2Vudl8ke2FjX3Zhcn1fc2V0PVwkeyR7YWNfdmFyfStzZXR9CisgIGV2YWwgYWNfZW52XyR7YWNfdmFyfV92YWx1ZT1cJCR7YWNfdmFyfQorICBldmFsIGFjX2N2X2Vudl8ke2FjX3Zhcn1fc2V0PVwkeyR7YWNfdmFyfStzZXR9CisgIGV2YWwgYWNfY3ZfZW52XyR7YWNfdmFyfV92YWx1ZT1cJCR7YWNfdmFyfQorZG9uZQorCisjCisjIFJlcG9ydCB0aGUgLS1oZWxwIG1lc3NhZ2UuCisjCitpZiB0ZXN0ICIkYWNfaW5pdF9oZWxwIiA9ICJsb25nIjsgdGhlbgorICAjIE9taXQgc29tZSBpbnRlcm5hbCBvciBvYnNvbGV0ZSBvcHRpb25zIHRvIG1ha2UgdGhlIGxpc3QgbGVzcyBpbXBvc2luZy4KKyAgIyBUaGlzIG1lc3NhZ2UgaXMgdG9vIGxvbmcgdG8gYmUgYSBzdHJpbmcgaW4gdGhlIEEvVVggMy4xIHNoLgorICBjYXQgPDxfQUNFT0YKK1xgY29uZmlndXJlJyBjb25maWd1cmVzIGRwa2cgMS4xNi4xLjEgdG8gYWRhcHQgdG8gbWFueSBraW5kcyBvZiBzeXN0ZW1zLgorCitVc2FnZTogJDAgW09QVElPTl0uLi4gW1ZBUj1WQUxVRV0uLi4KKworVG8gYXNzaWduIGVudmlyb25tZW50IHZhcmlhYmxlcyAoZS5nLiwgQ0MsIENGTEFHUy4uLiksIHNwZWNpZnkgdGhlbSBhcworVkFSPVZBTFVFLiAgU2VlIGJlbG93IGZvciBkZXNjcmlwdGlvbnMgb2Ygc29tZSBvZiB0aGUgdXNlZnVsIHZhcmlhYmxlcy4KKworRGVmYXVsdHMgZm9yIHRoZSBvcHRpb25zIGFyZSBzcGVjaWZpZWQgaW4gYnJhY2tldHMuCisKK0NvbmZpZ3VyYXRpb246CisgIC1oLCAtLWhlbHAgICAgICAgICAgICAgIGRpc3BsYXkgdGhpcyBoZWxwIGFuZCBleGl0CisgICAgICAtLWhlbHA9c2hvcnQgICAgICAgIGRpc3BsYXkgb3B0aW9ucyBzcGVjaWZpYyB0byB0aGlzIHBhY2thZ2UKKyAgICAgIC0taGVscD1yZWN1cnNpdmUgICAgZGlzcGxheSB0aGUgc2hvcnQgaGVscCBvZiBhbGwgdGhlIGluY2x1ZGVkIHBhY2thZ2VzCisgIC1WLCAtLXZlcnNpb24gICAgICAgICAgIGRpc3BsYXkgdmVyc2lvbiBpbmZvcm1hdGlvbiBhbmQgZXhpdAorICAtcSwgLS1xdWlldCwgLS1zaWxlbnQgICBkbyBub3QgcHJpbnQgXGBjaGVja2luZyAuLi4nIG1lc3NhZ2VzCisgICAgICAtLWNhY2hlLWZpbGU9RklMRSAgIGNhY2hlIHRlc3QgcmVzdWx0cyBpbiBGSUxFIFtkaXNhYmxlZF0KKyAgLUMsIC0tY29uZmlnLWNhY2hlICAgICAgYWxpYXMgZm9yIFxgLS1jYWNoZS1maWxlPWNvbmZpZy5jYWNoZScKKyAgLW4sIC0tbm8tY3JlYXRlICAgICAgICAgZG8gbm90IGNyZWF0ZSBvdXRwdXQgZmlsZXMKKyAgICAgIC0tc3JjZGlyPURJUiAgICAgICAgZmluZCB0aGUgc291cmNlcyBpbiBESVIgW2NvbmZpZ3VyZSBkaXIgb3IgXGAuLiddCisKK0luc3RhbGxhdGlvbiBkaXJlY3RvcmllczoKKyAgLS1wcmVmaXg9UFJFRklYICAgICAgICAgaW5zdGFsbCBhcmNoaXRlY3R1cmUtaW5kZXBlbmRlbnQgZmlsZXMgaW4gUFJFRklYCisgICAgICAgICAgICAgICAgICAgICAgICAgIFskYWNfZGVmYXVsdF9wcmVmaXhdCisgIC0tZXhlYy1wcmVmaXg9RVBSRUZJWCAgIGluc3RhbGwgYXJjaGl0ZWN0dXJlLWRlcGVuZGVudCBmaWxlcyBpbiBFUFJFRklYCisgICAgICAgICAgICAgICAgICAgICAgICAgIFtQUkVGSVhdCisKK0J5IGRlZmF1bHQsIFxgbWFrZSBpbnN0YWxsJyB3aWxsIGluc3RhbGwgYWxsIHRoZSBmaWxlcyBpbgorXGAkYWNfZGVmYXVsdF9wcmVmaXgvYmluJywgXGAkYWNfZGVmYXVsdF9wcmVmaXgvbGliJyBldGMuICBZb3UgY2FuIHNwZWNpZnkKK2FuIGluc3RhbGxhdGlvbiBwcmVmaXggb3RoZXIgdGhhbiBcYCRhY19kZWZhdWx0X3ByZWZpeCcgdXNpbmcgXGAtLXByZWZpeCcsCitmb3IgaW5zdGFuY2UgXGAtLXByZWZpeD1cJEhPTUUnLgorCitGb3IgYmV0dGVyIGNvbnRyb2wsIHVzZSB0aGUgb3B0aW9ucyBiZWxvdy4KKworRmluZSB0dW5pbmcgb2YgdGhlIGluc3RhbGxhdGlvbiBkaXJlY3RvcmllczoKKyAgLS1iaW5kaXI9RElSICAgICAgICAgICAgdXNlciBleGVjdXRhYmxlcyBbRVBSRUZJWC9iaW5dCisgIC0tc2JpbmRpcj1ESVIgICAgICAgICAgIHN5c3RlbSBhZG1pbiBleGVjdXRhYmxlcyBbRVBSRUZJWC9zYmluXQorICAtLWxpYmV4ZWNkaXI9RElSICAgICAgICBwcm9ncmFtIGV4ZWN1dGFibGVzIFtFUFJFRklYL2xpYmV4ZWNdCisgIC0tc3lzY29uZmRpcj1ESVIgICAgICAgIHJlYWQtb25seSBzaW5nbGUtbWFjaGluZSBkYXRhIFtQUkVGSVgvZXRjXQorICAtLXNoYXJlZHN0YXRlZGlyPURJUiAgICBtb2RpZmlhYmxlIGFyY2hpdGVjdHVyZS1pbmRlcGVuZGVudCBkYXRhIFtQUkVGSVgvY29tXQorICAtLWxvY2Fsc3RhdGVkaXI9RElSICAgICBtb2RpZmlhYmxlIHNpbmdsZS1tYWNoaW5lIGRhdGEgW1BSRUZJWC92YXJdCisgIC0tbGliZGlyPURJUiAgICAgICAgICAgIG9iamVjdCBjb2RlIGxpYnJhcmllcyBbRVBSRUZJWC9saWJdCisgIC0taW5jbHVkZWRpcj1ESVIgICAgICAgIEMgaGVhZGVyIGZpbGVzIFtQUkVGSVgvaW5jbHVkZV0KKyAgLS1vbGRpbmNsdWRlZGlyPURJUiAgICAgQyBoZWFkZXIgZmlsZXMgZm9yIG5vbi1nY2MgWy91c3IvaW5jbHVkZV0KKyAgLS1kYXRhcm9vdGRpcj1ESVIgICAgICAgcmVhZC1vbmx5IGFyY2guLWluZGVwZW5kZW50IGRhdGEgcm9vdCBbUFJFRklYL3NoYXJlXQorICAtLWRhdGFkaXI9RElSICAgICAgICAgICByZWFkLW9ubHkgYXJjaGl0ZWN0dXJlLWluZGVwZW5kZW50IGRhdGEgW0RBVEFST09URElSXQorICAtLWluZm9kaXI9RElSICAgICAgICAgICBpbmZvIGRvY3VtZW50YXRpb24gW0RBVEFST09URElSL2luZm9dCisgIC0tbG9jYWxlZGlyPURJUiAgICAgICAgIGxvY2FsZS1kZXBlbmRlbnQgZGF0YSBbREFUQVJPT1RESVIvbG9jYWxlXQorICAtLW1hbmRpcj1ESVIgICAgICAgICAgICBtYW4gZG9jdW1lbnRhdGlvbiBbREFUQVJPT1RESVIvbWFuXQorICAtLWRvY2Rpcj1ESVIgICAgICAgICAgICBkb2N1bWVudGF0aW9uIHJvb3QgW0RBVEFST09URElSL2RvYy9kcGtnXQorICAtLWh0bWxkaXI9RElSICAgICAgICAgICBodG1sIGRvY3VtZW50YXRpb24gW0RPQ0RJUl0KKyAgLS1kdmlkaXI9RElSICAgICAgICAgICAgZHZpIGRvY3VtZW50YXRpb24gW0RPQ0RJUl0KKyAgLS1wZGZkaXI9RElSICAgICAgICAgICAgcGRmIGRvY3VtZW50YXRpb24gW0RPQ0RJUl0KKyAgLS1wc2Rpcj1ESVIgICAgICAgICAgICAgcHMgZG9jdW1lbnRhdGlvbiBbRE9DRElSXQorX0FDRU9GCisKKyAgY2F0IDw8XF9BQ0VPRgorCitQcm9ncmFtIG5hbWVzOgorICAtLXByb2dyYW0tcHJlZml4PVBSRUZJWCAgICAgICAgICAgIHByZXBlbmQgUFJFRklYIHRvIGluc3RhbGxlZCBwcm9ncmFtIG5hbWVzCisgIC0tcHJvZ3JhbS1zdWZmaXg9U1VGRklYICAgICAgICAgICAgYXBwZW5kIFNVRkZJWCB0byBpbnN0YWxsZWQgcHJvZ3JhbSBuYW1lcworICAtLXByb2dyYW0tdHJhbnNmb3JtLW5hbWU9UFJPR1JBTSAgIHJ1biBzZWQgUFJPR1JBTSBvbiBpbnN0YWxsZWQgcHJvZ3JhbSBuYW1lcworCitTeXN0ZW0gdHlwZXM6CisgIC0tYnVpbGQ9QlVJTEQgICAgIGNvbmZpZ3VyZSBmb3IgYnVpbGRpbmcgb24gQlVJTEQgW2d1ZXNzZWRdCisgIC0taG9zdD1IT1NUICAgICAgIGNyb3NzLWNvbXBpbGUgdG8gYnVpbGQgcHJvZ3JhbXMgdG8gcnVuIG9uIEhPU1QgW0JVSUxEXQorX0FDRU9GCitmaQorCitpZiB0ZXN0IC1uICIkYWNfaW5pdF9oZWxwIjsgdGhlbgorICBjYXNlICRhY19pbml0X2hlbHAgaW4KKyAgICAgc2hvcnQgfCByZWN1cnNpdmUgKSBlY2hvICJDb25maWd1cmF0aW9uIG9mIGRwa2cgMS4xNi4xLjE6Ijs7CisgICBlc2FjCisgIGNhdCA8PFxfQUNFT0YKKworT3B0aW9uYWwgRmVhdHVyZXM6CisgIC0tZGlzYWJsZS1vcHRpb24tY2hlY2tpbmcgIGlnbm9yZSB1bnJlY29nbml6ZWQgLS1lbmFibGUvLS13aXRoIG9wdGlvbnMKKyAgLS1kaXNhYmxlLUZFQVRVUkUgICAgICAgZG8gbm90IGluY2x1ZGUgRkVBVFVSRSAoc2FtZSBhcyAtLWVuYWJsZS1GRUFUVVJFPW5vKQorICAtLWVuYWJsZS1GRUFUVVJFWz1BUkddICBpbmNsdWRlIEZFQVRVUkUgW0FSRz15ZXNdCisgIC0tZGlzYWJsZS1kZXBlbmRlbmN5LXRyYWNraW5nICBzcGVlZHMgdXAgb25lLXRpbWUgYnVpbGQKKyAgLS1lbmFibGUtZGVwZW5kZW5jeS10cmFja2luZyAgIGRvIG5vdCByZWplY3Qgc2xvdyBkZXBlbmRlbmN5IGV4dHJhY3RvcnMKKyAgLS1lbmFibGUtc2lsZW50LXJ1bGVzICAgICAgICAgIGxlc3MgdmVyYm9zZSBidWlsZCBvdXRwdXQgKHVuZG86IGBtYWtlIFY9MScpCisgIC0tZGlzYWJsZS1zaWxlbnQtcnVsZXMgICAgICAgICB2ZXJib3NlIGJ1aWxkIG91dHB1dCAodW5kbzogYG1ha2UgVj0wJykKKyAgLS1kaXNhYmxlLW5scyAgICAgICAgICAgZG8gbm90IHVzZSBOYXRpdmUgTGFuZ3VhZ2UgU3VwcG9ydAorICAtLWRpc2FibGUtcnBhdGggICAgICAgICBkbyBub3QgaGFyZGNvZGUgcnVudGltZSBsaWJyYXJ5IHBhdGhzCisgIC0tZW5hYmxlLWNvdmVyYWdlICAgICAgIHdoZXRoZXIgdG8gZW5hYmxlIGNvZGUgY292ZXJhZ2UKKyAgLS1kaXNhYmxlLWxhcmdlZmlsZSAgICAgb21pdCBzdXBwb3J0IGZvciBsYXJnZSBmaWxlcworICAtLWRpc2FibGUtdW5pY29kZSAgICAgICBkbyBub3QgdXNlIFVuaWNvZGUgKHdpZGUgY2hhcnMpIHN1cHBvcnQKKyAgLS1lbmFibGUtbW1hcCAgICAgICAgICAgZW5hYmxlIHVzYWdlIG9mIHVucmVhbGlhYmxlIG1tYXAgaWYgYXZhaWxhYmxlCisgIC0tZGlzYWJsZS1jb21waWxlci13YXJuaW5ncworICAgICAgICAgICAgICAgICAgICAgICAgICBEaXNhYmxlIGFkZGl0aW9uYWwgY29tcGlsZXIgd2FybmluZ3MKKyAgLS1kaXNhYmxlLWNvbXBpbGVyLW9wdGltaXNhdGlvbnMKKyAgICAgICAgICAgICAgICAgICAgICAgICAgRGlzYWJsZSBjb21waWxlciBvcHRpbWlzYXRpb25zCisgIC0tZGlzYWJsZS1saW5rZXItb3B0aW1pc2F0aW9ucworICAgICAgICAgICAgICAgICAgICAgICAgICBEaXNhYmxlIGxpbmtlciBvcHRpbWlzYXRpb25zCisKK09wdGlvbmFsIFBhY2thZ2VzOgorICAtLXdpdGgtUEFDS0FHRVs9QVJHXSAgICB1c2UgUEFDS0FHRSBbQVJHPXllc10KKyAgLS13aXRob3V0LVBBQ0tBR0UgICAgICAgZG8gbm90IHVzZSBQQUNLQUdFIChzYW1lIGFzIC0td2l0aC1QQUNLQUdFPW5vKQorICAtLXdpdGgtZ251LWxkICAgICAgICAgICBhc3N1bWUgdGhlIEMgY29tcGlsZXIgdXNlcyBHTlUgbGQgZGVmYXVsdD1ubworICAtLXdpdGgtbGliaWNvbnYtcHJlZml4Wz1ESVJdICBzZWFyY2ggZm9yIGxpYmljb252IGluIERJUi9pbmNsdWRlIGFuZCBESVIvbGliCisgIC0td2l0aG91dC1saWJpY29udi1wcmVmaXggICAgIGRvbid0IHNlYXJjaCBmb3IgbGliaWNvbnYgaW4gaW5jbHVkZWRpciBhbmQgbGliZGlyCisgIC0td2l0aC1saWJpbnRsLXByZWZpeFs9RElSXSAgc2VhcmNoIGZvciBsaWJpbnRsIGluIERJUi9pbmNsdWRlIGFuZCBESVIvbGliCisgIC0td2l0aG91dC1saWJpbnRsLXByZWZpeCAgICAgZG9uJ3Qgc2VhcmNoIGZvciBsaWJpbnRsIGluIGluY2x1ZGVkaXIgYW5kIGxpYmRpcgorICAtLXdpdGhvdXQtZHNlbGVjdCAgICAgICBkbyBub3QgYnVpbGQgb3IgdXNlIGRzZWxlY3QKKyAgLS13aXRob3V0LXN0YXJ0LXN0b3AtZGFlbW9uCisgICAgICAgICAgICAgICAgICAgICAgICAgIGRvIG5vdCBidWlsZCBvciB1c2Ugc3RhcnQtc3RvcC1kYWVtb24KKyAgLS13aXRob3V0LXVwZGF0ZS1hbHRlcm5hdGl2ZXMKKyAgICAgICAgICAgICAgICAgICAgICAgICAgZG8gbm90IGJ1aWxkIG9yIHVzZSB1cGRhdGUtYWx0ZXJuYXRpdmVzCisgIC0td2l0aG91dC1pbnN0YWxsLWluZm8gIGRvIG5vdCBidWlsZCBvciB1c2UgaW5zdGFsbC1pbmZvCisgIC0td2l0aC1hZG1pbmRpcj1ESVIgICAgIGRwa2cgZGF0YWJhc2UgZGlyZWN0b3J5IFtMT0NBTFNUQVRFRElSL2xpYi9kcGtnXQorICAtLXdpdGgtbG9nZGlyPURJUiAgICAgICBzeXN0ZW0gbG9nZ2luZyBkaXJlY3RvcnkgW0xPQ0FMU1RBVEVESVIvbG9nXQorICAtLXdpdGgtemxpYiAgICAgICAgICAgICB1c2UgemxpYiBsaWJyYXJ5IGZvciBjb21wcmVzc2lvbiBhbmQgZGVjb21wcmVzc2lvbgorICAtLXdpdGgtYnoyICAgICAgICAgICAgICB1c2UgYnoyIGxpYnJhcnkgZm9yIGNvbXByZXNzaW9uIGFuZCBkZWNvbXByZXNzaW9uCisgIC0td2l0aC1zZWxpbnV4ICAgICAgICAgIHVzZSBzZWxpbnV4IGxpYnJhcnkgdG8gc2V0IHNlY3VyaXR5IGNvbnRleHRzCisKK1NvbWUgaW5mbHVlbnRpYWwgZW52aXJvbm1lbnQgdmFyaWFibGVzOgorICBDQyAgICAgICAgICBDIGNvbXBpbGVyIGNvbW1hbmQKKyAgQ0ZMQUdTICAgICAgQyBjb21waWxlciBmbGFncworICBMREZMQUdTICAgICBsaW5rZXIgZmxhZ3MsIGUuZy4gLUw8bGliIGRpcj4gaWYgeW91IGhhdmUgbGlicmFyaWVzIGluIGEKKyAgICAgICAgICAgICAgbm9uc3RhbmRhcmQgZGlyZWN0b3J5IDxsaWIgZGlyPgorICBMSUJTICAgICAgICBsaWJyYXJpZXMgdG8gcGFzcyB0byB0aGUgbGlua2VyLCBlLmcuIC1sPGxpYnJhcnk+CisgIENQUEZMQUdTICAgIChPYmplY3RpdmUpIEMvQysrIHByZXByb2Nlc3NvciBmbGFncywgZS5nLiAtSTxpbmNsdWRlIGRpcj4gaWYKKyAgICAgICAgICAgICAgeW91IGhhdmUgaGVhZGVycyBpbiBhIG5vbnN0YW5kYXJkIGRpcmVjdG9yeSA8aW5jbHVkZSBkaXI+CisgIENQUCAgICAgICAgIEMgcHJlcHJvY2Vzc29yCisgIENYWCAgICAgICAgIEMrKyBjb21waWxlciBjb21tYW5kCisgIENYWEZMQUdTICAgIEMrKyBjb21waWxlciBmbGFncworICBQRVJMICAgICAgICBQZXJsIGludGVycHJldGVyCisgIFBFUkxfTElCRElSIFBlcmwgbGlicmFyeSBkaXJlY3RvcnkKKyAgWkxJQl9MSUJTICAgbGlua2VyIGZsYWdzIGZvciB6bGliIGxpYnJhcnkKKyAgQloyX0xJQlMgICAgbGlua2VyIGZsYWdzIGZvciBiejIgbGlicmFyeQorICBQS0dfQ09ORklHICBwYXRoIHRvIHBrZy1jb25maWcgdXRpbGl0eQorICBQS0dfQ09ORklHX1BBVEgKKyAgICAgICAgICAgICAgZGlyZWN0b3JpZXMgdG8gYWRkIHRvIHBrZy1jb25maWcncyBzZWFyY2ggcGF0aAorICBQS0dfQ09ORklHX0xJQkRJUgorICAgICAgICAgICAgICBwYXRoIG92ZXJyaWRpbmcgcGtnLWNvbmZpZydzIGJ1aWx0LWluIHNlYXJjaCBwYXRoCisgIFNFTElOVVhfTElCUworICAgICAgICAgICAgICBsaW5rZXIgZmxhZ3MgZm9yIHNlbGludXggbGlicmFyeQorICBDVVJTRVNfTElCUyBsaW5rZXIgZmxhZ3MgZm9yIGN1cnNlcyBsaWJyYXJ5CisgIFNTRF9MSUJTICAgIGxpbmtlciBmbGFncyBmb3Igc3RhcnQtc3RvcC1kYWVtb24KKworVXNlIHRoZXNlIHZhcmlhYmxlcyB0byBvdmVycmlkZSB0aGUgY2hvaWNlcyBtYWRlIGJ5IGBjb25maWd1cmUnIG9yIHRvIGhlbHAKK2l0IHRvIGZpbmQgbGlicmFyaWVzIGFuZCBwcm9ncmFtcyB3aXRoIG5vbnN0YW5kYXJkIG5hbWVzL2xvY2F0aW9ucy4KKworUmVwb3J0IGJ1Z3MgdG8gPGRlYmlhbi1kcGtnQGxpc3RzLmRlYmlhbi5vcmc+LgorX0FDRU9GCithY19zdGF0dXM9JD8KK2ZpCisKK2lmIHRlc3QgIiRhY19pbml0X2hlbHAiID0gInJlY3Vyc2l2ZSI7IHRoZW4KKyAgIyBJZiB0aGVyZSBhcmUgc3ViZGlycywgcmVwb3J0IHRoZWlyIHNwZWNpZmljIC0taGVscC4KKyAgZm9yIGFjX2RpciBpbiA6ICRhY19zdWJkaXJzX2FsbDsgZG8gdGVzdCAieCRhY19kaXIiID0geDogJiYgY29udGludWUKKyAgICB0ZXN0IC1kICIkYWNfZGlyIiB8fAorICAgICAgeyBjZCAiJHNyY2RpciIgJiYgYWNfcHdkPWBwd2RgICYmIHNyY2Rpcj0uICYmIHRlc3QgLWQgIiRhY19kaXIiOyB9IHx8CisgICAgICBjb250aW51ZQorICAgIGFjX2J1aWxkZGlyPS4KKworY2FzZSAiJGFjX2RpciIgaW4KKy4pIGFjX2Rpcl9zdWZmaXg9IGFjX3RvcF9idWlsZGRpcl9zdWI9LiBhY190b3BfYnVpbGRfcHJlZml4PSA7OworKikKKyAgYWNfZGlyX3N1ZmZpeD0vYCRhc19lY2hvICIkYWNfZGlyIiB8IHNlZCAnc3xeXC5bXFwvXXx8J2AKKyAgIyBBICIuLiIgZm9yIGVhY2ggZGlyZWN0b3J5IGluICRhY19kaXJfc3VmZml4LgorICBhY190b3BfYnVpbGRkaXJfc3ViPWAkYXNfZWNobyAiJGFjX2Rpcl9zdWZmaXgiIHwgc2VkICdzfC9bXlxcL10qfC8uLnxnO3N8L3x8J2AKKyAgY2FzZSAkYWNfdG9wX2J1aWxkZGlyX3N1YiBpbgorICAiIikgYWNfdG9wX2J1aWxkZGlyX3N1Yj0uIGFjX3RvcF9idWlsZF9wcmVmaXg9IDs7CisgICopICBhY190b3BfYnVpbGRfcHJlZml4PSRhY190b3BfYnVpbGRkaXJfc3ViLyA7OworICBlc2FjIDs7Citlc2FjCithY19hYnNfdG9wX2J1aWxkZGlyPSRhY19wd2QKK2FjX2Fic19idWlsZGRpcj0kYWNfcHdkJGFjX2Rpcl9zdWZmaXgKKyMgZm9yIGJhY2t3YXJkIGNvbXBhdGliaWxpdHk6CithY190b3BfYnVpbGRkaXI9JGFjX3RvcF9idWlsZF9wcmVmaXgKKworY2FzZSAkc3JjZGlyIGluCisgIC4pICAjIFdlIGFyZSBidWlsZGluZyBpbiBwbGFjZS4KKyAgICBhY19zcmNkaXI9LgorICAgIGFjX3RvcF9zcmNkaXI9JGFjX3RvcF9idWlsZGRpcl9zdWIKKyAgICBhY19hYnNfdG9wX3NyY2Rpcj0kYWNfcHdkIDs7CisgIFtcXC9dKiB8ID86W1xcL10qICkgICMgQWJzb2x1dGUgbmFtZS4KKyAgICBhY19zcmNkaXI9JHNyY2RpciRhY19kaXJfc3VmZml4OworICAgIGFjX3RvcF9zcmNkaXI9JHNyY2RpcgorICAgIGFjX2Fic190b3Bfc3JjZGlyPSRzcmNkaXIgOzsKKyAgKikgIyBSZWxhdGl2ZSBuYW1lLgorICAgIGFjX3NyY2Rpcj0kYWNfdG9wX2J1aWxkX3ByZWZpeCRzcmNkaXIkYWNfZGlyX3N1ZmZpeAorICAgIGFjX3RvcF9zcmNkaXI9JGFjX3RvcF9idWlsZF9wcmVmaXgkc3JjZGlyCisgICAgYWNfYWJzX3RvcF9zcmNkaXI9JGFjX3B3ZC8kc3JjZGlyIDs7Citlc2FjCithY19hYnNfc3JjZGlyPSRhY19hYnNfdG9wX3NyY2RpciRhY19kaXJfc3VmZml4CisKKyAgICBjZCAiJGFjX2RpciIgfHwgeyBhY19zdGF0dXM9JD87IGNvbnRpbnVlOyB9CisgICAgIyBDaGVjayBmb3IgZ3Vlc3RlZCBjb25maWd1cmUuCisgICAgaWYgdGVzdCAtZiAiJGFjX3NyY2Rpci9jb25maWd1cmUuZ251IjsgdGhlbgorICAgICAgZWNobyAmJgorICAgICAgJFNIRUxMICIkYWNfc3JjZGlyL2NvbmZpZ3VyZS5nbnUiIC0taGVscD1yZWN1cnNpdmUKKyAgICBlbGlmIHRlc3QgLWYgIiRhY19zcmNkaXIvY29uZmlndXJlIjsgdGhlbgorICAgICAgZWNobyAmJgorICAgICAgJFNIRUxMICIkYWNfc3JjZGlyL2NvbmZpZ3VyZSIgLS1oZWxwPXJlY3Vyc2l2ZQorICAgIGVsc2UKKyAgICAgICRhc19lY2hvICIkYXNfbWU6IFdBUk5JTkc6IG5vIGNvbmZpZ3VyYXRpb24gaW5mb3JtYXRpb24gaXMgaW4gJGFjX2RpciIgPiYyCisgICAgZmkgfHwgYWNfc3RhdHVzPSQ/CisgICAgY2QgIiRhY19wd2QiIHx8IHsgYWNfc3RhdHVzPSQ/OyBicmVhazsgfQorICBkb25lCitmaQorCit0ZXN0IC1uICIkYWNfaW5pdF9oZWxwIiAmJiBleGl0ICRhY19zdGF0dXMKK2lmICRhY19pbml0X3ZlcnNpb247IHRoZW4KKyAgY2F0IDw8XF9BQ0VPRgorZHBrZyBjb25maWd1cmUgMS4xNi4xLjEKK2dlbmVyYXRlZCBieSBHTlUgQXV0b2NvbmYgMi42OAorCitDb3B5cmlnaHQgKEMpIDIwMTAgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCitUaGlzIGNvbmZpZ3VyZSBzY3JpcHQgaXMgZnJlZSBzb2Z0d2FyZTsgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbgorZ2l2ZXMgdW5saW1pdGVkIHBlcm1pc3Npb24gdG8gY29weSwgZGlzdHJpYnV0ZSBhbmQgbW9kaWZ5IGl0LgorX0FDRU9GCisgIGV4aXQKK2ZpCisKKyMjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAjIworIyMgQXV0b2NvbmYgaW5pdGlhbGl6YXRpb24uICMjCisjIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gIyMKKworIyBhY19mbl9jX3RyeV9jb21waWxlIExJTkVOTworIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIyBUcnkgdG8gY29tcGlsZSBjb25mdGVzdC4kYWNfZXh0LCBhbmQgcmV0dXJuIHdoZXRoZXIgdGhpcyBzdWNjZWVkZWQuCithY19mbl9jX3RyeV9jb21waWxlICgpCit7CisgIGFzX2xpbmVubz0ke2FzX2xpbmVuby0iJDEifSBhc19saW5lbm9fc3RhY2s9YXNfbGluZW5vX3N0YWNrPSRhc19saW5lbm9fc3RhY2sKKyAgcm0gLWYgY29uZnRlc3QuJGFjX29iamV4dAorICBpZiB7IHsgYWNfdHJ5PSIkYWNfY29tcGlsZSIKK2Nhc2UgIigoJGFjX3RyeSIgaW4KKyAgKlwiKiB8ICpcYCogfCAqXFwqKSBhY190cnlfZWNobz1cJGFjX3RyeTs7CisgICopIGFjX3RyeV9lY2hvPSRhY190cnk7OworZXNhYworZXZhbCBhY190cnlfZWNobz0iXCJcJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiAkYWNfdHJ5X2VjaG9cIiIKKyRhc19lY2hvICIkYWNfdHJ5X2VjaG8iOyB9ID4mNQorICAoZXZhbCAiJGFjX2NvbXBpbGUiKSAyPmNvbmZ0ZXN0LmVycgorICBhY19zdGF0dXM9JD8KKyAgaWYgdGVzdCAtcyBjb25mdGVzdC5lcnI7IHRoZW4KKyAgICBncmVwIC12ICdeICorJyBjb25mdGVzdC5lcnIgPmNvbmZ0ZXN0LmVyMQorICAgIGNhdCBjb25mdGVzdC5lcjEgPiY1CisgICAgbXYgLWYgY29uZnRlc3QuZXIxIGNvbmZ0ZXN0LmVycgorICBmaQorICAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgdGVzdCAkYWNfc3RhdHVzID0gMDsgfSAmJiB7CisJIHRlc3QgLXogIiRhY19jX3dlcnJvcl9mbGFnIiB8fAorCSB0ZXN0ICEgLXMgY29uZnRlc3QuZXJyCisgICAgICAgfSAmJiB0ZXN0IC1zIGNvbmZ0ZXN0LiRhY19vYmpleHQ7IHRoZW4gOgorICBhY19yZXR2YWw9MAorZWxzZQorICAkYXNfZWNobyAiJGFzX21lOiBmYWlsZWQgcHJvZ3JhbSB3YXM6IiA+JjUKK3NlZCAncy9eL3wgLycgY29uZnRlc3QuJGFjX2V4dCA+JjUKKworCWFjX3JldHZhbD0xCitmaQorICBldmFsICRhc19saW5lbm9fc3RhY2s7ICR7YXNfbGluZW5vX3N0YWNrOis6fSB1bnNldCBhc19saW5lbm8KKyAgYXNfZm5fc2V0X3N0YXR1cyAkYWNfcmV0dmFsCisKK30gIyBhY19mbl9jX3RyeV9jb21waWxlCisKKyMgYWNfZm5fY190cnlfY3BwIExJTkVOTworIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisjIFRyeSB0byBwcmVwcm9jZXNzIGNvbmZ0ZXN0LiRhY19leHQsIGFuZCByZXR1cm4gd2hldGhlciB0aGlzIHN1Y2NlZWRlZC4KK2FjX2ZuX2NfdHJ5X2NwcCAoKQoreworICBhc19saW5lbm89JHthc19saW5lbm8tIiQxIn0gYXNfbGluZW5vX3N0YWNrPWFzX2xpbmVub19zdGFjaz0kYXNfbGluZW5vX3N0YWNrCisgIGlmIHsgeyBhY190cnk9IiRhY19jcHAgY29uZnRlc3QuJGFjX2V4dCIKK2Nhc2UgIigoJGFjX3RyeSIgaW4KKyAgKlwiKiB8ICpcYCogfCAqXFwqKSBhY190cnlfZWNobz1cJGFjX3RyeTs7CisgICopIGFjX3RyeV9lY2hvPSRhY190cnk7OworZXNhYworZXZhbCBhY190cnlfZWNobz0iXCJcJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiAkYWNfdHJ5X2VjaG9cIiIKKyRhc19lY2hvICIkYWNfdHJ5X2VjaG8iOyB9ID4mNQorICAoZXZhbCAiJGFjX2NwcCBjb25mdGVzdC4kYWNfZXh0IikgMj5jb25mdGVzdC5lcnIKKyAgYWNfc3RhdHVzPSQ/CisgIGlmIHRlc3QgLXMgY29uZnRlc3QuZXJyOyB0aGVuCisgICAgZ3JlcCAtdiAnXiAqKycgY29uZnRlc3QuZXJyID5jb25mdGVzdC5lcjEKKyAgICBjYXQgY29uZnRlc3QuZXIxID4mNQorICAgIG12IC1mIGNvbmZ0ZXN0LmVyMSBjb25mdGVzdC5lcnIKKyAgZmkKKyAgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CisgIHRlc3QgJGFjX3N0YXR1cyA9IDA7IH0gPiBjb25mdGVzdC5pICYmIHsKKwkgdGVzdCAteiAiJGFjX2NfcHJlcHJvY193YXJuX2ZsYWckYWNfY193ZXJyb3JfZmxhZyIgfHwKKwkgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgorICAgICAgIH07IHRoZW4gOgorICBhY19yZXR2YWw9MAorZWxzZQorICAkYXNfZWNobyAiJGFzX21lOiBmYWlsZWQgcHJvZ3JhbSB3YXM6IiA+JjUKK3NlZCAncy9eL3wgLycgY29uZnRlc3QuJGFjX2V4dCA+JjUKKworICAgIGFjX3JldHZhbD0xCitmaQorICBldmFsICRhc19saW5lbm9fc3RhY2s7ICR7YXNfbGluZW5vX3N0YWNrOis6fSB1bnNldCBhc19saW5lbm8KKyAgYXNfZm5fc2V0X3N0YXR1cyAkYWNfcmV0dmFsCisKK30gIyBhY19mbl9jX3RyeV9jcHAKKworIyBhY19mbl9jX2NoZWNrX2hlYWRlcl9tb25ncmVsIExJTkVOTyBIRUFERVIgVkFSIElOQ0xVREVTCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyMgVGVzdHMgd2hldGhlciBIRUFERVIgZXhpc3RzLCBnaXZpbmcgYSB3YXJuaW5nIGlmIGl0IGNhbm5vdCBiZSBjb21waWxlZCB1c2luZworIyB0aGUgaW5jbHVkZSBmaWxlcyBpbiBJTkNMVURFUyBhbmQgc2V0dGluZyB0aGUgY2FjaGUgdmFyaWFibGUgVkFSCisjIGFjY29yZGluZ2x5LgorYWNfZm5fY19jaGVja19oZWFkZXJfbW9uZ3JlbCAoKQoreworICBhc19saW5lbm89JHthc19saW5lbm8tIiQxIn0gYXNfbGluZW5vX3N0YWNrPWFzX2xpbmVub19zdGFjaz0kYXNfbGluZW5vX3N0YWNrCisgIGlmIGV2YWwgXCR7JDMrOn0gZmFsc2U7IHRoZW4gOgorICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIGZvciAkMiIgPiY1CiskYXNfZWNob19uICJjaGVja2luZyBmb3IgJDIuLi4gIiA+JjY7IH0KK2lmIGV2YWwgXCR7JDMrOn0gZmFsc2U7IHRoZW4gOgorICAkYXNfZWNob19uICIoY2FjaGVkKSAiID4mNgorZmkKK2V2YWwgYWNfcmVzPVwkJDMKKwkgICAgICAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6ICRhY19yZXMiID4mNQorJGFzX2VjaG8gIiRhY19yZXMiID4mNjsgfQorZWxzZQorICAjIElzIHRoZSBoZWFkZXIgY29tcGlsYWJsZT8KK3sgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgJDIgdXNhYmlsaXR5IiA+JjUKKyRhc19lY2hvX24gImNoZWNraW5nICQyIHVzYWJpbGl0eS4uLiAiID4mNjsgfQorY2F0IGNvbmZkZWZzLmggLSA8PF9BQ0VPRiA+Y29uZnRlc3QuJGFjX2V4dAorLyogZW5kIGNvbmZkZWZzLmguICAqLworJDQKKyNpbmNsdWRlIDwkMj4KK19BQ0VPRgoraWYgYWNfZm5fY190cnlfY29tcGlsZSAiJExJTkVOTyI7IHRoZW4gOgorICBhY19oZWFkZXJfY29tcGlsZXI9eWVzCitlbHNlCisgIGFjX2hlYWRlcl9jb21waWxlcj1ubworZmkKK3JtIC1mIGNvcmUgY29uZnRlc3QuZXJyIGNvbmZ0ZXN0LiRhY19vYmpleHQgY29uZnRlc3QuJGFjX2V4dAoreyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6ICRhY19oZWFkZXJfY29tcGlsZXIiID4mNQorJGFzX2VjaG8gIiRhY19oZWFkZXJfY29tcGlsZXIiID4mNjsgfQorCisjIElzIHRoZSBoZWFkZXIgcHJlc2VudD8KK3sgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgJDIgcHJlc2VuY2UiID4mNQorJGFzX2VjaG9fbiAiY2hlY2tpbmcgJDIgcHJlc2VuY2UuLi4gIiA+JjY7IH0KK2NhdCBjb25mZGVmcy5oIC0gPDxfQUNFT0YgPmNvbmZ0ZXN0LiRhY19leHQKKy8qIGVuZCBjb25mZGVmcy5oLiAgKi8KKyNpbmNsdWRlIDwkMj4KK19BQ0VPRgoraWYgYWNfZm5fY190cnlfY3BwICIkTElORU5PIjsgdGhlbiA6CisgIGFjX2hlYWRlcl9wcmVwcm9jPXllcworZWxzZQorICBhY19oZWFkZXJfcHJlcHJvYz1ubworZmkKK3JtIC1mIGNvbmZ0ZXN0LmVyciBjb25mdGVzdC5pIGNvbmZ0ZXN0LiRhY19leHQKK3sgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiAkYWNfaGVhZGVyX3ByZXByb2MiID4mNQorJGFzX2VjaG8gIiRhY19oZWFkZXJfcHJlcHJvYyIgPiY2OyB9CisKKyMgU28/ICBXaGF0IGFib3V0IHRoaXMgaGVhZGVyPworY2FzZSAkYWNfaGVhZGVyX2NvbXBpbGVyOiRhY19oZWFkZXJfcHJlcHJvYzokYWNfY19wcmVwcm9jX3dhcm5fZmxhZyBpbiAjKCgKKyAgeWVzOm5vOiApCisgICAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBXQVJOSU5HOiAkMjogYWNjZXB0ZWQgYnkgdGhlIGNvbXBpbGVyLCByZWplY3RlZCBieSB0aGUgcHJlcHJvY2Vzc29yISIgPiY1CiskYXNfZWNobyAiJGFzX21lOiBXQVJOSU5HOiAkMjogYWNjZXB0ZWQgYnkgdGhlIGNvbXBpbGVyLCByZWplY3RlZCBieSB0aGUgcHJlcHJvY2Vzc29yISIgPiYyO30KKyAgICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IFdBUk5JTkc6ICQyOiBwcm9jZWVkaW5nIHdpdGggdGhlIGNvbXBpbGVyJ3MgcmVzdWx0IiA+JjUKKyRhc19lY2hvICIkYXNfbWU6IFdBUk5JTkc6ICQyOiBwcm9jZWVkaW5nIHdpdGggdGhlIGNvbXBpbGVyJ3MgcmVzdWx0IiA+JjI7fQorICAgIDs7CisgIG5vOnllczoqICkKKyAgICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IFdBUk5JTkc6ICQyOiBwcmVzZW50IGJ1dCBjYW5ub3QgYmUgY29tcGlsZWQiID4mNQorJGFzX2VjaG8gIiRhc19tZTogV0FSTklORzogJDI6IHByZXNlbnQgYnV0IGNhbm5vdCBiZSBjb21waWxlZCIgPiYyO30KKyAgICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IFdBUk5JTkc6ICQyOiAgICAgY2hlY2sgZm9yIG1pc3NpbmcgcHJlcmVxdWlzaXRlIGhlYWRlcnM/IiA+JjUKKyRhc19lY2hvICIkYXNfbWU6IFdBUk5JTkc6ICQyOiAgICAgY2hlY2sgZm9yIG1pc3NpbmcgcHJlcmVxdWlzaXRlIGhlYWRlcnM/IiA+JjI7fQorICAgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogV0FSTklORzogJDI6IHNlZSB0aGUgQXV0b2NvbmYgZG9jdW1lbnRhdGlvbiIgPiY1CiskYXNfZWNobyAiJGFzX21lOiBXQVJOSU5HOiAkMjogc2VlIHRoZSBBdXRvY29uZiBkb2N1bWVudGF0aW9uIiA+JjI7fQorICAgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogV0FSTklORzogJDI6ICAgICBzZWN0aW9uIFwiUHJlc2VudCBCdXQgQ2Fubm90IEJlIENvbXBpbGVkXCIiID4mNQorJGFzX2VjaG8gIiRhc19tZTogV0FSTklORzogJDI6ICAgICBzZWN0aW9uIFwiUHJlc2VudCBCdXQgQ2Fubm90IEJlIENvbXBpbGVkXCIiID4mMjt9CisgICAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBXQVJOSU5HOiAkMjogcHJvY2VlZGluZyB3aXRoIHRoZSBjb21waWxlcidzIHJlc3VsdCIgPiY1CiskYXNfZWNobyAiJGFzX21lOiBXQVJOSU5HOiAkMjogcHJvY2VlZGluZyB3aXRoIHRoZSBjb21waWxlcidzIHJlc3VsdCIgPiYyO30KKyggJGFzX2VjaG8gIiMjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gIyMKKyMjIFJlcG9ydCB0aGlzIHRvIGRlYmlhbi1kcGtnQGxpc3RzLmRlYmlhbi5vcmcgIyMKKyMjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gIyMiCisgICAgICkgfCBzZWQgInMvXi8kYXNfbWU6IFdBUk5JTkc6ICAgICAvIiA+JjIKKyAgICA7OworZXNhYworICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIGZvciAkMiIgPiY1CiskYXNfZWNob19uICJjaGVja2luZyBmb3IgJDIuLi4gIiA+JjY7IH0KK2lmIGV2YWwgXCR7JDMrOn0gZmFsc2U7IHRoZW4gOgorICAkYXNfZWNob19uICIoY2FjaGVkKSAiID4mNgorZWxzZQorICBldmFsICIkMz1cJGFjX2hlYWRlcl9jb21waWxlciIKK2ZpCitldmFsIGFjX3Jlcz1cJCQzCisJICAgICAgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiAkYWNfcmVzIiA+JjUKKyRhc19lY2hvICIkYWNfcmVzIiA+JjY7IH0KK2ZpCisgIGV2YWwgJGFzX2xpbmVub19zdGFjazsgJHthc19saW5lbm9fc3RhY2s6Kzp9IHVuc2V0IGFzX2xpbmVubworCit9ICMgYWNfZm5fY19jaGVja19oZWFkZXJfbW9uZ3JlbAorCisjIGFjX2ZuX2NfdHJ5X3J1biBMSU5FTk8KKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIyBUcnkgdG8gbGluayBjb25mdGVzdC4kYWNfZXh0LCBhbmQgcmV0dXJuIHdoZXRoZXIgdGhpcyBzdWNjZWVkZWQuIEFzc3VtZXMKKyMgdGhhdCBleGVjdXRhYmxlcyAqY2FuKiBiZSBydW4uCithY19mbl9jX3RyeV9ydW4gKCkKK3sKKyAgYXNfbGluZW5vPSR7YXNfbGluZW5vLSIkMSJ9IGFzX2xpbmVub19zdGFjaz1hc19saW5lbm9fc3RhY2s9JGFzX2xpbmVub19zdGFjaworICBpZiB7IHsgYWNfdHJ5PSIkYWNfbGluayIKK2Nhc2UgIigoJGFjX3RyeSIgaW4KKyAgKlwiKiB8ICpcYCogfCAqXFwqKSBhY190cnlfZWNobz1cJGFjX3RyeTs7CisgICopIGFjX3RyeV9lY2hvPSRhY190cnk7OworZXNhYworZXZhbCBhY190cnlfZWNobz0iXCJcJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiAkYWNfdHJ5X2VjaG9cIiIKKyRhc19lY2hvICIkYWNfdHJ5X2VjaG8iOyB9ID4mNQorICAoZXZhbCAiJGFjX2xpbmsiKSAyPiY1CisgIGFjX3N0YXR1cz0kPworICAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgdGVzdCAkYWNfc3RhdHVzID0gMDsgfSAmJiB7IGFjX3RyeT0nLi9jb25mdGVzdCRhY19leGVleHQnCisgIHsgeyBjYXNlICIoKCRhY190cnkiIGluCisgICpcIiogfCAqXGAqIHwgKlxcKikgYWNfdHJ5X2VjaG89XCRhY190cnk7OworICAqKSBhY190cnlfZWNobz0kYWNfdHJ5OzsKK2VzYWMKK2V2YWwgYWNfdHJ5X2VjaG89IlwiXCRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogJGFjX3RyeV9lY2hvXCIiCiskYXNfZWNobyAiJGFjX3RyeV9lY2hvIjsgfSA+JjUKKyAgKGV2YWwgIiRhY190cnkiKSAyPiY1CisgIGFjX3N0YXR1cz0kPworICAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgdGVzdCAkYWNfc3RhdHVzID0gMDsgfTsgfTsgdGhlbiA6CisgIGFjX3JldHZhbD0wCitlbHNlCisgICRhc19lY2hvICIkYXNfbWU6IHByb2dyYW0gZXhpdGVkIHdpdGggc3RhdHVzICRhY19zdGF0dXMiID4mNQorICAgICAgICRhc19lY2hvICIkYXNfbWU6IGZhaWxlZCBwcm9ncmFtIHdhczoiID4mNQorc2VkICdzL14vfCAvJyBjb25mdGVzdC4kYWNfZXh0ID4mNQorCisgICAgICAgYWNfcmV0dmFsPSRhY19zdGF0dXMKK2ZpCisgIHJtIC1yZiBjb25mdGVzdC5kU1lNIGNvbmZ0ZXN0X2lwYThfY29uZnRlc3Qub28KKyAgZXZhbCAkYXNfbGluZW5vX3N0YWNrOyAke2FzX2xpbmVub19zdGFjazorOn0gdW5zZXQgYXNfbGluZW5vCisgIGFzX2ZuX3NldF9zdGF0dXMgJGFjX3JldHZhbAorCit9ICMgYWNfZm5fY190cnlfcnVuCisKKyMgYWNfZm5fY19jaGVja19oZWFkZXJfY29tcGlsZSBMSU5FTk8gSEVBREVSIFZBUiBJTkNMVURFUworIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisjIFRlc3RzIHdoZXRoZXIgSEVBREVSIGV4aXN0cyBhbmQgY2FuIGJlIGNvbXBpbGVkIHVzaW5nIHRoZSBpbmNsdWRlIGZpbGVzIGluCisjIElOQ0xVREVTLCBzZXR0aW5nIHRoZSBjYWNoZSB2YXJpYWJsZSBWQVIgYWNjb3JkaW5nbHkuCithY19mbl9jX2NoZWNrX2hlYWRlcl9jb21waWxlICgpCit7CisgIGFzX2xpbmVubz0ke2FzX2xpbmVuby0iJDEifSBhc19saW5lbm9fc3RhY2s9YXNfbGluZW5vX3N0YWNrPSRhc19saW5lbm9fc3RhY2sKKyAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBjaGVja2luZyBmb3IgJDIiID4mNQorJGFzX2VjaG9fbiAiY2hlY2tpbmcgZm9yICQyLi4uICIgPiY2OyB9CitpZiBldmFsIFwkeyQzKzp9IGZhbHNlOyB0aGVuIDoKKyAgJGFzX2VjaG9fbiAiKGNhY2hlZCkgIiA+JjYKK2Vsc2UKKyAgY2F0IGNvbmZkZWZzLmggLSA8PF9BQ0VPRiA+Y29uZnRlc3QuJGFjX2V4dAorLyogZW5kIGNvbmZkZWZzLmguICAqLworJDQKKyNpbmNsdWRlIDwkMj4KK19BQ0VPRgoraWYgYWNfZm5fY190cnlfY29tcGlsZSAiJExJTkVOTyI7IHRoZW4gOgorICBldmFsICIkMz15ZXMiCitlbHNlCisgIGV2YWwgIiQzPW5vIgorZmkKK3JtIC1mIGNvcmUgY29uZnRlc3QuZXJyIGNvbmZ0ZXN0LiRhY19vYmpleHQgY29uZnRlc3QuJGFjX2V4dAorZmkKK2V2YWwgYWNfcmVzPVwkJDMKKwkgICAgICAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6ICRhY19yZXMiID4mNQorJGFzX2VjaG8gIiRhY19yZXMiID4mNjsgfQorICBldmFsICRhc19saW5lbm9fc3RhY2s7ICR7YXNfbGluZW5vX3N0YWNrOis6fSB1bnNldCBhc19saW5lbm8KKworfSAjIGFjX2ZuX2NfY2hlY2tfaGVhZGVyX2NvbXBpbGUKKworIyBhY19mbl9jX3RyeV9saW5rIExJTkVOTworIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIyBUcnkgdG8gbGluayBjb25mdGVzdC4kYWNfZXh0LCBhbmQgcmV0dXJuIHdoZXRoZXIgdGhpcyBzdWNjZWVkZWQuCithY19mbl9jX3RyeV9saW5rICgpCit7CisgIGFzX2xpbmVubz0ke2FzX2xpbmVuby0iJDEifSBhc19saW5lbm9fc3RhY2s9YXNfbGluZW5vX3N0YWNrPSRhc19saW5lbm9fc3RhY2sKKyAgcm0gLWYgY29uZnRlc3QuJGFjX29iamV4dCBjb25mdGVzdCRhY19leGVleHQKKyAgaWYgeyB7IGFjX3RyeT0iJGFjX2xpbmsiCitjYXNlICIoKCRhY190cnkiIGluCisgICpcIiogfCAqXGAqIHwgKlxcKikgYWNfdHJ5X2VjaG89XCRhY190cnk7OworICAqKSBhY190cnlfZWNobz0kYWNfdHJ5OzsKK2VzYWMKK2V2YWwgYWNfdHJ5X2VjaG89IlwiXCRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogJGFjX3RyeV9lY2hvXCIiCiskYXNfZWNobyAiJGFjX3RyeV9lY2hvIjsgfSA+JjUKKyAgKGV2YWwgIiRhY19saW5rIikgMj5jb25mdGVzdC5lcnIKKyAgYWNfc3RhdHVzPSQ/CisgIGlmIHRlc3QgLXMgY29uZnRlc3QuZXJyOyB0aGVuCisgICAgZ3JlcCAtdiAnXiAqKycgY29uZnRlc3QuZXJyID5jb25mdGVzdC5lcjEKKyAgICBjYXQgY29uZnRlc3QuZXIxID4mNQorICAgIG12IC1mIGNvbmZ0ZXN0LmVyMSBjb25mdGVzdC5lcnIKKyAgZmkKKyAgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CisgIHRlc3QgJGFjX3N0YXR1cyA9IDA7IH0gJiYgeworCSB0ZXN0IC16ICIkYWNfY193ZXJyb3JfZmxhZyIgfHwKKwkgdGVzdCAhIC1zIGNvbmZ0ZXN0LmVycgorICAgICAgIH0gJiYgdGVzdCAtcyBjb25mdGVzdCRhY19leGVleHQgJiYgeworCSB0ZXN0ICIkY3Jvc3NfY29tcGlsaW5nIiA9IHllcyB8fAorCSAkYXNfdGVzdF94IGNvbmZ0ZXN0JGFjX2V4ZWV4dAorICAgICAgIH07IHRoZW4gOgorICBhY19yZXR2YWw9MAorZWxzZQorICAkYXNfZWNobyAiJGFzX21lOiBmYWlsZWQgcHJvZ3JhbSB3YXM6IiA+JjUKK3NlZCAncy9eL3wgLycgY29uZnRlc3QuJGFjX2V4dCA+JjUKKworCWFjX3JldHZhbD0xCitmaQorICAjIERlbGV0ZSB0aGUgSVBBL0lQTyAoSW50ZXIgUHJvY2VkdXJhbCBBbmFseXNpcy9PcHRpbWl6YXRpb24pIGluZm9ybWF0aW9uCisgICMgY3JlYXRlZCBieSB0aGUgUEdJIGNvbXBpbGVyIChjb25mdGVzdF9pcGE4X2NvbmZ0ZXN0Lm9vKSwgYXMgaXQgd291bGQKKyAgIyBpbnRlcmZlcmUgd2l0aCB0aGUgbmV4dCBsaW5rIGNvbW1hbmQ7IGFsc28gZGVsZXRlIGEgZGlyZWN0b3J5IHRoYXQgaXMKKyAgIyBsZWZ0IGJlaGluZCBieSBBcHBsZSdzIGNvbXBpbGVyLiAgV2UgZG8gdGhpcyBiZWZvcmUgZXhlY3V0aW5nIHRoZSBhY3Rpb25zLgorICBybSAtcmYgY29uZnRlc3QuZFNZTSBjb25mdGVzdF9pcGE4X2NvbmZ0ZXN0Lm9vCisgIGV2YWwgJGFzX2xpbmVub19zdGFjazsgJHthc19saW5lbm9fc3RhY2s6Kzp9IHVuc2V0IGFzX2xpbmVubworICBhc19mbl9zZXRfc3RhdHVzICRhY19yZXR2YWwKKworfSAjIGFjX2ZuX2NfdHJ5X2xpbmsKKworIyBhY19mbl9jeHhfdHJ5X2NvbXBpbGUgTElORU5PCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyMgVHJ5IHRvIGNvbXBpbGUgY29uZnRlc3QuJGFjX2V4dCwgYW5kIHJldHVybiB3aGV0aGVyIHRoaXMgc3VjY2VlZGVkLgorYWNfZm5fY3h4X3RyeV9jb21waWxlICgpCit7CisgIGFzX2xpbmVubz0ke2FzX2xpbmVuby0iJDEifSBhc19saW5lbm9fc3RhY2s9YXNfbGluZW5vX3N0YWNrPSRhc19saW5lbm9fc3RhY2sKKyAgcm0gLWYgY29uZnRlc3QuJGFjX29iamV4dAorICBpZiB7IHsgYWNfdHJ5PSIkYWNfY29tcGlsZSIKK2Nhc2UgIigoJGFjX3RyeSIgaW4KKyAgKlwiKiB8ICpcYCogfCAqXFwqKSBhY190cnlfZWNobz1cJGFjX3RyeTs7CisgICopIGFjX3RyeV9lY2hvPSRhY190cnk7OworZXNhYworZXZhbCBhY190cnlfZWNobz0iXCJcJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiAkYWNfdHJ5X2VjaG9cIiIKKyRhc19lY2hvICIkYWNfdHJ5X2VjaG8iOyB9ID4mNQorICAoZXZhbCAiJGFjX2NvbXBpbGUiKSAyPmNvbmZ0ZXN0LmVycgorICBhY19zdGF0dXM9JD8KKyAgaWYgdGVzdCAtcyBjb25mdGVzdC5lcnI7IHRoZW4KKyAgICBncmVwIC12ICdeICorJyBjb25mdGVzdC5lcnIgPmNvbmZ0ZXN0LmVyMQorICAgIGNhdCBjb25mdGVzdC5lcjEgPiY1CisgICAgbXYgLWYgY29uZnRlc3QuZXIxIGNvbmZ0ZXN0LmVycgorICBmaQorICAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgdGVzdCAkYWNfc3RhdHVzID0gMDsgfSAmJiB7CisJIHRlc3QgLXogIiRhY19jeHhfd2Vycm9yX2ZsYWciIHx8CisJIHRlc3QgISAtcyBjb25mdGVzdC5lcnIKKyAgICAgICB9ICYmIHRlc3QgLXMgY29uZnRlc3QuJGFjX29iamV4dDsgdGhlbiA6CisgIGFjX3JldHZhbD0wCitlbHNlCisgICRhc19lY2hvICIkYXNfbWU6IGZhaWxlZCBwcm9ncmFtIHdhczoiID4mNQorc2VkICdzL14vfCAvJyBjb25mdGVzdC4kYWNfZXh0ID4mNQorCisJYWNfcmV0dmFsPTEKK2ZpCisgIGV2YWwgJGFzX2xpbmVub19zdGFjazsgJHthc19saW5lbm9fc3RhY2s6Kzp9IHVuc2V0IGFzX2xpbmVubworICBhc19mbl9zZXRfc3RhdHVzICRhY19yZXR2YWwKKworfSAjIGFjX2ZuX2N4eF90cnlfY29tcGlsZQorCisjIGFjX2ZuX2NfY2hlY2tfdHlwZSBMSU5FTk8gVFlQRSBWQVIgSU5DTFVERVMKKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIyBUZXN0cyB3aGV0aGVyIFRZUEUgZXhpc3RzIGFmdGVyIGhhdmluZyBpbmNsdWRlZCBJTkNMVURFUywgc2V0dGluZyBjYWNoZQorIyB2YXJpYWJsZSBWQVIgYWNjb3JkaW5nbHkuCithY19mbl9jX2NoZWNrX3R5cGUgKCkKK3sKKyAgYXNfbGluZW5vPSR7YXNfbGluZW5vLSIkMSJ9IGFzX2xpbmVub19zdGFjaz1hc19saW5lbm9fc3RhY2s9JGFzX2xpbmVub19zdGFjaworICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIGZvciAkMiIgPiY1CiskYXNfZWNob19uICJjaGVja2luZyBmb3IgJDIuLi4gIiA+JjY7IH0KK2lmIGV2YWwgXCR7JDMrOn0gZmFsc2U7IHRoZW4gOgorICAkYXNfZWNob19uICIoY2FjaGVkKSAiID4mNgorZWxzZQorICBldmFsICIkMz1ubyIKKyAgY2F0IGNvbmZkZWZzLmggLSA8PF9BQ0VPRiA+Y29uZnRlc3QuJGFjX2V4dAorLyogZW5kIGNvbmZkZWZzLmguICAqLworJDQKK2ludAorbWFpbiAoKQoreworaWYgKHNpemVvZiAoJDIpKQorCSByZXR1cm4gMDsKKyAgOworICByZXR1cm4gMDsKK30KK19BQ0VPRgoraWYgYWNfZm5fY190cnlfY29tcGlsZSAiJExJTkVOTyI7IHRoZW4gOgorICBjYXQgY29uZmRlZnMuaCAtIDw8X0FDRU9GID5jb25mdGVzdC4kYWNfZXh0CisvKiBlbmQgY29uZmRlZnMuaC4gICovCiskNAoraW50CittYWluICgpCit7CitpZiAoc2l6ZW9mICgoJDIpKSkKKwkgICAgcmV0dXJuIDA7CisgIDsKKyAgcmV0dXJuIDA7Cit9CitfQUNFT0YKK2lmIGFjX2ZuX2NfdHJ5X2NvbXBpbGUgIiRMSU5FTk8iOyB0aGVuIDoKKworZWxzZQorICBldmFsICIkMz15ZXMiCitmaQorcm0gLWYgY29yZSBjb25mdGVzdC5lcnIgY29uZnRlc3QuJGFjX29iamV4dCBjb25mdGVzdC4kYWNfZXh0CitmaQorcm0gLWYgY29yZSBjb25mdGVzdC5lcnIgY29uZnRlc3QuJGFjX29iamV4dCBjb25mdGVzdC4kYWNfZXh0CitmaQorZXZhbCBhY19yZXM9XCQkMworCSAgICAgICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogJGFjX3JlcyIgPiY1CiskYXNfZWNobyAiJGFjX3JlcyIgPiY2OyB9CisgIGV2YWwgJGFzX2xpbmVub19zdGFjazsgJHthc19saW5lbm9fc3RhY2s6Kzp9IHVuc2V0IGFzX2xpbmVubworCit9ICMgYWNfZm5fY19jaGVja190eXBlCisKKyMgYWNfZm5fY19jb21wdXRlX2ludCBMSU5FTk8gRVhQUiBWQVIgSU5DTFVERVMKKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyMgVHJpZXMgdG8gZmluZCB0aGUgY29tcGlsZS10aW1lIHZhbHVlIG9mIEVYUFIgaW4gYSBwcm9ncmFtIHRoYXQgaW5jbHVkZXMKKyMgSU5DTFVERVMsIHNldHRpbmcgVkFSIGFjY29yZGluZ2x5LiBSZXR1cm5zIHdoZXRoZXIgdGhlIHZhbHVlIGNvdWxkIGJlCisjIGNvbXB1dGVkCithY19mbl9jX2NvbXB1dGVfaW50ICgpCit7CisgIGFzX2xpbmVubz0ke2FzX2xpbmVuby0iJDEifSBhc19saW5lbm9fc3RhY2s9YXNfbGluZW5vX3N0YWNrPSRhc19saW5lbm9fc3RhY2sKKyAgaWYgdGVzdCAiJGNyb3NzX2NvbXBpbGluZyIgPSB5ZXM7IHRoZW4KKyAgICAjIERlcGVuZGluZyB1cG9uIHRoZSBzaXplLCBjb21wdXRlIHRoZSBsbyBhbmQgaGkgYm91bmRzLgorY2F0IGNvbmZkZWZzLmggLSA8PF9BQ0VPRiA+Y29uZnRlc3QuJGFjX2V4dAorLyogZW5kIGNvbmZkZWZzLmguICAqLworJDQKK2ludAorbWFpbiAoKQoreworc3RhdGljIGludCB0ZXN0X2FycmF5IFsxIC0gMiAqICEoKCQyKSA+PSAwKV07Cit0ZXN0X2FycmF5IFswXSA9IDAKKworICA7CisgIHJldHVybiAwOworfQorX0FDRU9GCitpZiBhY19mbl9jX3RyeV9jb21waWxlICIkTElORU5PIjsgdGhlbiA6CisgIGFjX2xvPTAgYWNfbWlkPTAKKyAgd2hpbGUgOjsgZG8KKyAgICBjYXQgY29uZmRlZnMuaCAtIDw8X0FDRU9GID5jb25mdGVzdC4kYWNfZXh0CisvKiBlbmQgY29uZmRlZnMuaC4gICovCiskNAoraW50CittYWluICgpCit7CitzdGF0aWMgaW50IHRlc3RfYXJyYXkgWzEgLSAyICogISgoJDIpIDw9ICRhY19taWQpXTsKK3Rlc3RfYXJyYXkgWzBdID0gMAorCisgIDsKKyAgcmV0dXJuIDA7Cit9CitfQUNFT0YKK2lmIGFjX2ZuX2NfdHJ5X2NvbXBpbGUgIiRMSU5FTk8iOyB0aGVuIDoKKyAgYWNfaGk9JGFjX21pZDsgYnJlYWsKK2Vsc2UKKyAgYXNfZm5fYXJpdGggJGFjX21pZCArIDEgJiYgYWNfbG89JGFzX3ZhbAorCQkJaWYgdGVzdCAkYWNfbG8gLWxlICRhY19taWQ7IHRoZW4KKwkJCSAgYWNfbG89IGFjX2hpPQorCQkJICBicmVhaworCQkJZmkKKwkJCWFzX2ZuX2FyaXRoIDIgJyonICRhY19taWQgKyAxICYmIGFjX21pZD0kYXNfdmFsCitmaQorcm0gLWYgY29yZSBjb25mdGVzdC5lcnIgY29uZnRlc3QuJGFjX29iamV4dCBjb25mdGVzdC4kYWNfZXh0CisgIGRvbmUKK2Vsc2UKKyAgY2F0IGNvbmZkZWZzLmggLSA8PF9BQ0VPRiA+Y29uZnRlc3QuJGFjX2V4dAorLyogZW5kIGNvbmZkZWZzLmguICAqLworJDQKK2ludAorbWFpbiAoKQoreworc3RhdGljIGludCB0ZXN0X2FycmF5IFsxIC0gMiAqICEoKCQyKSA8IDApXTsKK3Rlc3RfYXJyYXkgWzBdID0gMAorCisgIDsKKyAgcmV0dXJuIDA7Cit9CitfQUNFT0YKK2lmIGFjX2ZuX2NfdHJ5X2NvbXBpbGUgIiRMSU5FTk8iOyB0aGVuIDoKKyAgYWNfaGk9LTEgYWNfbWlkPS0xCisgIHdoaWxlIDo7IGRvCisgICAgY2F0IGNvbmZkZWZzLmggLSA8PF9BQ0VPRiA+Y29uZnRlc3QuJGFjX2V4dAorLyogZW5kIGNvbmZkZWZzLmguICAqLworJDQKK2ludAorbWFpbiAoKQoreworc3RhdGljIGludCB0ZXN0X2FycmF5IFsxIC0gMiAqICEoKCQyKSA+PSAkYWNfbWlkKV07Cit0ZXN0X2FycmF5IFswXSA9IDAKKworICA7CisgIHJldHVybiAwOworfQorX0FDRU9GCitpZiBhY19mbl9jX3RyeV9jb21waWxlICIkTElORU5PIjsgdGhlbiA6CisgIGFjX2xvPSRhY19taWQ7IGJyZWFrCitlbHNlCisgIGFzX2ZuX2FyaXRoICcoJyAkYWNfbWlkICcpJyAtIDEgJiYgYWNfaGk9JGFzX3ZhbAorCQkJaWYgdGVzdCAkYWNfbWlkIC1sZSAkYWNfaGk7IHRoZW4KKwkJCSAgYWNfbG89IGFjX2hpPQorCQkJICBicmVhaworCQkJZmkKKwkJCWFzX2ZuX2FyaXRoIDIgJyonICRhY19taWQgJiYgYWNfbWlkPSRhc192YWwKK2ZpCitybSAtZiBjb3JlIGNvbmZ0ZXN0LmVyciBjb25mdGVzdC4kYWNfb2JqZXh0IGNvbmZ0ZXN0LiRhY19leHQKKyAgZG9uZQorZWxzZQorICBhY19sbz0gYWNfaGk9CitmaQorcm0gLWYgY29yZSBjb25mdGVzdC5lcnIgY29uZnRlc3QuJGFjX29iamV4dCBjb25mdGVzdC4kYWNfZXh0CitmaQorcm0gLWYgY29yZSBjb25mdGVzdC5lcnIgY29uZnRlc3QuJGFjX29iamV4dCBjb25mdGVzdC4kYWNfZXh0CisjIEJpbmFyeSBzZWFyY2ggYmV0d2VlbiBsbyBhbmQgaGkgYm91bmRzLgord2hpbGUgdGVzdCAieCRhY19sbyIgIT0gIngkYWNfaGkiOyBkbworICBhc19mbl9hcml0aCAnKCcgJGFjX2hpIC0gJGFjX2xvICcpJyAvIDIgKyAkYWNfbG8gJiYgYWNfbWlkPSRhc192YWwKKyAgY2F0IGNvbmZkZWZzLmggLSA8PF9BQ0VPRiA+Y29uZnRlc3QuJGFjX2V4dAorLyogZW5kIGNvbmZkZWZzLmguICAqLworJDQKK2ludAorbWFpbiAoKQoreworc3RhdGljIGludCB0ZXN0X2FycmF5IFsxIC0gMiAqICEoKCQyKSA8PSAkYWNfbWlkKV07Cit0ZXN0X2FycmF5IFswXSA9IDAKKworICA7CisgIHJldHVybiAwOworfQorX0FDRU9GCitpZiBhY19mbl9jX3RyeV9jb21waWxlICIkTElORU5PIjsgdGhlbiA6CisgIGFjX2hpPSRhY19taWQKK2Vsc2UKKyAgYXNfZm5fYXJpdGggJygnICRhY19taWQgJyknICsgMSAmJiBhY19sbz0kYXNfdmFsCitmaQorcm0gLWYgY29yZSBjb25mdGVzdC5lcnIgY29uZnRlc3QuJGFjX29iamV4dCBjb25mdGVzdC4kYWNfZXh0Citkb25lCitjYXNlICRhY19sbyBpbiAjKCgKKz8qKSBldmFsICIkMz1cJGFjX2xvIjsgYWNfcmV0dmFsPTAgOzsKKycnKSBhY19yZXR2YWw9MSA7OworZXNhYworICBlbHNlCisgICAgY2F0IGNvbmZkZWZzLmggLSA8PF9BQ0VPRiA+Y29uZnRlc3QuJGFjX2V4dAorLyogZW5kIGNvbmZkZWZzLmguICAqLworJDQKK3N0YXRpYyBsb25nIGludCBsb25ndmFsICgpIHsgcmV0dXJuICQyOyB9CitzdGF0aWMgdW5zaWduZWQgbG9uZyBpbnQgdWxvbmd2YWwgKCkgeyByZXR1cm4gJDI7IH0KKyNpbmNsdWRlIDxzdGRpby5oPgorI2luY2x1ZGUgPHN0ZGxpYi5oPgoraW50CittYWluICgpCit7CisKKyAgRklMRSAqZiA9IGZvcGVuICgiY29uZnRlc3QudmFsIiwgInciKTsKKyAgaWYgKCEgZikKKyAgICByZXR1cm4gMTsKKyAgaWYgKCgkMikgPCAwKQorICAgIHsKKyAgICAgIGxvbmcgaW50IGkgPSBsb25ndmFsICgpOworICAgICAgaWYgKGkgIT0gKCQyKSkKKwlyZXR1cm4gMTsKKyAgICAgIGZwcmludGYgKGYsICIlbGQiLCBpKTsKKyAgICB9CisgIGVsc2UKKyAgICB7CisgICAgICB1bnNpZ25lZCBsb25nIGludCBpID0gdWxvbmd2YWwgKCk7CisgICAgICBpZiAoaSAhPSAoJDIpKQorCXJldHVybiAxOworICAgICAgZnByaW50ZiAoZiwgIiVsdSIsIGkpOworICAgIH0KKyAgLyogRG8gbm90IG91dHB1dCBhIHRyYWlsaW5nIG5ld2xpbmUsIGFzIHRoaXMgY2F1c2VzIFxyXG4gY29uZnVzaW9uCisgICAgIG9uIHNvbWUgcGxhdGZvcm1zLiAgKi8KKyAgcmV0dXJuIGZlcnJvciAoZikgfHwgZmNsb3NlIChmKSAhPSAwOworCisgIDsKKyAgcmV0dXJuIDA7Cit9CitfQUNFT0YKK2lmIGFjX2ZuX2NfdHJ5X3J1biAiJExJTkVOTyI7IHRoZW4gOgorICBlY2hvID4+Y29uZnRlc3QudmFsOyByZWFkICQzIDxjb25mdGVzdC52YWw7IGFjX3JldHZhbD0wCitlbHNlCisgIGFjX3JldHZhbD0xCitmaQorcm0gLWYgY29yZSAqLmNvcmUgY29yZS5jb25mdGVzdC4qIGdtb24ub3V0IGJiLm91dCBjb25mdGVzdCRhY19leGVleHQgXAorICBjb25mdGVzdC4kYWNfb2JqZXh0IGNvbmZ0ZXN0LmJlYW0gY29uZnRlc3QuJGFjX2V4dAorcm0gLWYgY29uZnRlc3QudmFsCisKKyAgZmkKKyAgZXZhbCAkYXNfbGluZW5vX3N0YWNrOyAke2FzX2xpbmVub19zdGFjazorOn0gdW5zZXQgYXNfbGluZW5vCisgIGFzX2ZuX3NldF9zdGF0dXMgJGFjX3JldHZhbAorCit9ICMgYWNfZm5fY19jb21wdXRlX2ludAorCisjIGFjX2ZuX2NfY2hlY2tfZGVjbCBMSU5FTk8gU1lNQk9MIFZBUiBJTkNMVURFUworIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyMgVGVzdHMgd2hldGhlciBTWU1CT0wgaXMgZGVjbGFyZWQgaW4gSU5DTFVERVMsIHNldHRpbmcgY2FjaGUgdmFyaWFibGUgVkFSCisjIGFjY29yZGluZ2x5LgorYWNfZm5fY19jaGVja19kZWNsICgpCit7CisgIGFzX2xpbmVubz0ke2FzX2xpbmVuby0iJDEifSBhc19saW5lbm9fc3RhY2s9YXNfbGluZW5vX3N0YWNrPSRhc19saW5lbm9fc3RhY2sKKyAgYXNfZGVjbF9uYW1lPWBlY2hvICQyfHNlZCAncy8gKiguKi8vJ2AKKyAgYXNfZGVjbF91c2U9YGVjaG8gJDJ8c2VkIC1lICdzLygvKCgvJyAtZSAncy8pLykgMCYvJyAtZSAncy8sLykgMCYgKC9nJ2AKKyAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBjaGVja2luZyB3aGV0aGVyICRhc19kZWNsX25hbWUgaXMgZGVjbGFyZWQiID4mNQorJGFzX2VjaG9fbiAiY2hlY2tpbmcgd2hldGhlciAkYXNfZGVjbF9uYW1lIGlzIGRlY2xhcmVkLi4uICIgPiY2OyB9CitpZiBldmFsIFwkeyQzKzp9IGZhbHNlOyB0aGVuIDoKKyAgJGFzX2VjaG9fbiAiKGNhY2hlZCkgIiA+JjYKK2Vsc2UKKyAgY2F0IGNvbmZkZWZzLmggLSA8PF9BQ0VPRiA+Y29uZnRlc3QuJGFjX2V4dAorLyogZW5kIGNvbmZkZWZzLmguICAqLworJDQKK2ludAorbWFpbiAoKQoreworI2lmbmRlZiAkYXNfZGVjbF9uYW1lCisjaWZkZWYgX19jcGx1c3BsdXMKKyAgKHZvaWQpICRhc19kZWNsX3VzZTsKKyNlbHNlCisgICh2b2lkKSAkYXNfZGVjbF9uYW1lOworI2VuZGlmCisjZW5kaWYKKworICA7CisgIHJldHVybiAwOworfQorX0FDRU9GCitpZiBhY19mbl9jX3RyeV9jb21waWxlICIkTElORU5PIjsgdGhlbiA6CisgIGV2YWwgIiQzPXllcyIKK2Vsc2UKKyAgZXZhbCAiJDM9bm8iCitmaQorcm0gLWYgY29yZSBjb25mdGVzdC5lcnIgY29uZnRlc3QuJGFjX29iamV4dCBjb25mdGVzdC4kYWNfZXh0CitmaQorZXZhbCBhY19yZXM9XCQkMworCSAgICAgICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogJGFjX3JlcyIgPiY1CiskYXNfZWNobyAiJGFjX3JlcyIgPiY2OyB9CisgIGV2YWwgJGFzX2xpbmVub19zdGFjazsgJHthc19saW5lbm9fc3RhY2s6Kzp9IHVuc2V0IGFzX2xpbmVubworCit9ICMgYWNfZm5fY19jaGVja19kZWNsCisKKyMgYWNfZm5fY19jaGVja19mdW5jIExJTkVOTyBGVU5DIFZBUgorIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisjIFRlc3RzIHdoZXRoZXIgRlVOQyBleGlzdHMsIHNldHRpbmcgdGhlIGNhY2hlIHZhcmlhYmxlIFZBUiBhY2NvcmRpbmdseQorYWNfZm5fY19jaGVja19mdW5jICgpCit7CisgIGFzX2xpbmVubz0ke2FzX2xpbmVuby0iJDEifSBhc19saW5lbm9fc3RhY2s9YXNfbGluZW5vX3N0YWNrPSRhc19saW5lbm9fc3RhY2sKKyAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBjaGVja2luZyBmb3IgJDIiID4mNQorJGFzX2VjaG9fbiAiY2hlY2tpbmcgZm9yICQyLi4uICIgPiY2OyB9CitpZiBldmFsIFwkeyQzKzp9IGZhbHNlOyB0aGVuIDoKKyAgJGFzX2VjaG9fbiAiKGNhY2hlZCkgIiA+JjYKK2Vsc2UKKyAgY2F0IGNvbmZkZWZzLmggLSA8PF9BQ0VPRiA+Y29uZnRlc3QuJGFjX2V4dAorLyogZW5kIGNvbmZkZWZzLmguICAqLworLyogRGVmaW5lICQyIHRvIGFuIGlubm9jdW91cyB2YXJpYW50LCBpbiBjYXNlIDxsaW1pdHMuaD4gZGVjbGFyZXMgJDIuCisgICBGb3IgZXhhbXBsZSwgSFAtVVggMTFpIDxsaW1pdHMuaD4gZGVjbGFyZXMgZ2V0dGltZW9mZGF5LiAgKi8KKyNkZWZpbmUgJDIgaW5ub2N1b3VzXyQyCisKKy8qIFN5c3RlbSBoZWFkZXIgdG8gZGVmaW5lIF9fc3R1YiBtYWNyb3MgYW5kIGhvcGVmdWxseSBmZXcgcHJvdG90eXBlcywKKyAgICB3aGljaCBjYW4gY29uZmxpY3Qgd2l0aCBjaGFyICQyICgpOyBiZWxvdy4KKyAgICBQcmVmZXIgPGxpbWl0cy5oPiB0byA8YXNzZXJ0Lmg+IGlmIF9fU1REQ19fIGlzIGRlZmluZWQsIHNpbmNlCisgICAgPGxpbWl0cy5oPiBleGlzdHMgZXZlbiBvbiBmcmVlc3RhbmRpbmcgY29tcGlsZXJzLiAgKi8KKworI2lmZGVmIF9fU1REQ19fCisjIGluY2x1ZGUgPGxpbWl0cy5oPgorI2Vsc2UKKyMgaW5jbHVkZSA8YXNzZXJ0Lmg+CisjZW5kaWYKKworI3VuZGVmICQyCisKKy8qIE92ZXJyaWRlIGFueSBHQ0MgaW50ZXJuYWwgcHJvdG90eXBlIHRvIGF2b2lkIGFuIGVycm9yLgorICAgVXNlIGNoYXIgYmVjYXVzZSBpbnQgbWlnaHQgbWF0Y2ggdGhlIHJldHVybiB0eXBlIG9mIGEgR0NDCisgICBidWlsdGluIGFuZCB0aGVuIGl0cyBhcmd1bWVudCBwcm90b3R5cGUgd291bGQgc3RpbGwgYXBwbHkuICAqLworI2lmZGVmIF9fY3BsdXNwbHVzCitleHRlcm4gIkMiCisjZW5kaWYKK2NoYXIgJDIgKCk7CisvKiBUaGUgR05VIEMgbGlicmFyeSBkZWZpbmVzIHRoaXMgZm9yIGZ1bmN0aW9ucyB3aGljaCBpdCBpbXBsZW1lbnRzCisgICAgdG8gYWx3YXlzIGZhaWwgd2l0aCBFTk9TWVMuICBTb21lIGZ1bmN0aW9ucyBhcmUgYWN0dWFsbHkgbmFtZWQKKyAgICBzb21ldGhpbmcgc3RhcnRpbmcgd2l0aCBfXyBhbmQgdGhlIG5vcm1hbCBuYW1lIGlzIGFuIGFsaWFzLiAgKi8KKyNpZiBkZWZpbmVkIF9fc3R1Yl8kMiB8fCBkZWZpbmVkIF9fc3R1Yl9fXyQyCitjaG9rZSBtZQorI2VuZGlmCisKK2ludAorbWFpbiAoKQoreworcmV0dXJuICQyICgpOworICA7CisgIHJldHVybiAwOworfQorX0FDRU9GCitpZiBhY19mbl9jX3RyeV9saW5rICIkTElORU5PIjsgdGhlbiA6CisgIGV2YWwgIiQzPXllcyIKK2Vsc2UKKyAgZXZhbCAiJDM9bm8iCitmaQorcm0gLWYgY29yZSBjb25mdGVzdC5lcnIgY29uZnRlc3QuJGFjX29iamV4dCBcCisgICAgY29uZnRlc3QkYWNfZXhlZXh0IGNvbmZ0ZXN0LiRhY19leHQKK2ZpCitldmFsIGFjX3Jlcz1cJCQzCisJICAgICAgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiAkYWNfcmVzIiA+JjUKKyRhc19lY2hvICIkYWNfcmVzIiA+JjY7IH0KKyAgZXZhbCAkYXNfbGluZW5vX3N0YWNrOyAke2FzX2xpbmVub19zdGFjazorOn0gdW5zZXQgYXNfbGluZW5vCisKK30gIyBhY19mbl9jX2NoZWNrX2Z1bmMKK2NhdCA+Y29uZmlnLmxvZyA8PF9BQ0VPRgorVGhpcyBmaWxlIGNvbnRhaW5zIGFueSBtZXNzYWdlcyBwcm9kdWNlZCBieSBjb21waWxlcnMgd2hpbGUKK3J1bm5pbmcgY29uZmlndXJlLCB0byBhaWQgZGVidWdnaW5nIGlmIGNvbmZpZ3VyZSBtYWtlcyBhIG1pc3Rha2UuCisKK0l0IHdhcyBjcmVhdGVkIGJ5IGRwa2cgJGFzX21lIDEuMTYuMS4xLCB3aGljaCB3YXMKK2dlbmVyYXRlZCBieSBHTlUgQXV0b2NvbmYgMi42OC4gIEludm9jYXRpb24gY29tbWFuZCBsaW5lIHdhcworCisgICQgJDAgJEAKKworX0FDRU9GCitleGVjIDU+PmNvbmZpZy5sb2cKK3sKK2NhdCA8PF9BU1VOQU1FCisjIyAtLS0tLS0tLS0gIyMKKyMjIFBsYXRmb3JtLiAjIworIyMgLS0tLS0tLS0tICMjCisKK2hvc3RuYW1lID0gYChob3N0bmFtZSB8fCB1bmFtZSAtbikgMj4vZGV2L251bGwgfCBzZWQgMXFgCit1bmFtZSAtbSA9IGAodW5hbWUgLW0pIDI+L2Rldi9udWxsIHx8IGVjaG8gdW5rbm93bmAKK3VuYW1lIC1yID0gYCh1bmFtZSAtcikgMj4vZGV2L251bGwgfHwgZWNobyB1bmtub3duYAordW5hbWUgLXMgPSBgKHVuYW1lIC1zKSAyPi9kZXYvbnVsbCB8fCBlY2hvIHVua25vd25gCit1bmFtZSAtdiA9IGAodW5hbWUgLXYpIDI+L2Rldi9udWxsIHx8IGVjaG8gdW5rbm93bmAKKworL3Vzci9iaW4vdW5hbWUgLXAgPSBgKC91c3IvYmluL3VuYW1lIC1wKSAyPi9kZXYvbnVsbCB8fCBlY2hvIHVua25vd25gCisvYmluL3VuYW1lIC1YICAgICA9IGAoL2Jpbi91bmFtZSAtWCkgMj4vZGV2L251bGwgICAgIHx8IGVjaG8gdW5rbm93bmAKKworL2Jpbi9hcmNoICAgICAgICAgICAgICA9IGAoL2Jpbi9hcmNoKSAyPi9kZXYvbnVsbCAgICAgICAgICAgICAgfHwgZWNobyB1bmtub3duYAorL3Vzci9iaW4vYXJjaCAtayAgICAgICA9IGAoL3Vzci9iaW4vYXJjaCAtaykgMj4vZGV2L251bGwgICAgICAgfHwgZWNobyB1bmtub3duYAorL3Vzci9jb252ZXgvZ2V0c3lzaW5mbyA9IGAoL3Vzci9jb252ZXgvZ2V0c3lzaW5mbykgMj4vZGV2L251bGwgfHwgZWNobyB1bmtub3duYAorL3Vzci9iaW4vaG9zdGluZm8gICAgICA9IGAoL3Vzci9iaW4vaG9zdGluZm8pIDI+L2Rldi9udWxsICAgICAgfHwgZWNobyB1bmtub3duYAorL2Jpbi9tYWNoaW5lICAgICAgICAgICA9IGAoL2Jpbi9tYWNoaW5lKSAyPi9kZXYvbnVsbCAgICAgICAgICAgfHwgZWNobyB1bmtub3duYAorL3Vzci9iaW4vb3NsZXZlbCAgICAgICA9IGAoL3Vzci9iaW4vb3NsZXZlbCkgMj4vZGV2L251bGwgICAgICAgfHwgZWNobyB1bmtub3duYAorL2Jpbi91bml2ZXJzZSAgICAgICAgICA9IGAoL2Jpbi91bml2ZXJzZSkgMj4vZGV2L251bGwgICAgICAgICAgfHwgZWNobyB1bmtub3duYAorCitfQVNVTkFNRQorCithc19zYXZlX0lGUz0kSUZTOyBJRlM9JFBBVEhfU0VQQVJBVE9SCitmb3IgYXNfZGlyIGluICRQQVRICitkbworICBJRlM9JGFzX3NhdmVfSUZTCisgIHRlc3QgLXogIiRhc19kaXIiICYmIGFzX2Rpcj0uCisgICAgJGFzX2VjaG8gIlBBVEg6ICRhc19kaXIiCisgIGRvbmUKK0lGUz0kYXNfc2F2ZV9JRlMKKworfSA+JjUKKworY2F0ID4mNSA8PF9BQ0VPRgorCisKKyMjIC0tLS0tLS0tLS0tICMjCisjIyBDb3JlIHRlc3RzLiAjIworIyMgLS0tLS0tLS0tLS0gIyMKKworX0FDRU9GCisKKworIyBLZWVwIGEgdHJhY2Ugb2YgdGhlIGNvbW1hbmQgbGluZS4KKyMgU3RyaXAgb3V0IC0tbm8tY3JlYXRlIGFuZCAtLW5vLXJlY3Vyc2lvbiBzbyB0aGV5IGRvIG5vdCBwaWxlIHVwLgorIyBTdHJpcCBvdXQgLS1zaWxlbnQgYmVjYXVzZSB3ZSBkb24ndCB3YW50IHRvIHJlY29yZCBpdCBmb3IgZnV0dXJlIHJ1bnMuCisjIEFsc28gcXVvdGUgYW55IGFyZ3MgY29udGFpbmluZyBzaGVsbCBtZXRhLWNoYXJhY3RlcnMuCisjIE1ha2UgdHdvIHBhc3NlcyB0byBhbGxvdyBmb3IgcHJvcGVyIGR1cGxpY2F0ZS1hcmd1bWVudCBzdXBwcmVzc2lvbi4KK2FjX2NvbmZpZ3VyZV9hcmdzPQorYWNfY29uZmlndXJlX2FyZ3MwPQorYWNfY29uZmlndXJlX2FyZ3MxPQorYWNfbXVzdF9rZWVwX25leHQ9ZmFsc2UKK2ZvciBhY19wYXNzIGluIDEgMgorZG8KKyAgZm9yIGFjX2FyZworICBkbworICAgIGNhc2UgJGFjX2FyZyBpbgorICAgIC1uby1jcmVhdGUgfCAtLW5vLWMqIHwgLW4gfCAtbm8tcmVjdXJzaW9uIHwgLS1uby1yKikgY29udGludWUgOzsKKyAgICAtcSB8IC1xdWlldCB8IC0tcXVpZXQgfCAtLXF1aWUgfCAtLXF1aSB8IC0tcXUgfCAtLXEgXAorICAgIHwgLXNpbGVudCB8IC0tc2lsZW50IHwgLS1zaWxlbiB8IC0tc2lsZSB8IC0tc2lsKQorICAgICAgY29udGludWUgOzsKKyAgICAqXCcqKQorICAgICAgYWNfYXJnPWAkYXNfZWNobyAiJGFjX2FyZyIgfCBzZWQgInMvJy8nXFxcXFxcXFwnJy9nImAgOzsKKyAgICBlc2FjCisgICAgY2FzZSAkYWNfcGFzcyBpbgorICAgIDEpIGFzX2ZuX2FwcGVuZCBhY19jb25maWd1cmVfYXJnczAgIiAnJGFjX2FyZyciIDs7CisgICAgMikKKyAgICAgIGFzX2ZuX2FwcGVuZCBhY19jb25maWd1cmVfYXJnczEgIiAnJGFjX2FyZyciCisgICAgICBpZiB0ZXN0ICRhY19tdXN0X2tlZXBfbmV4dCA9IHRydWU7IHRoZW4KKwlhY19tdXN0X2tlZXBfbmV4dD1mYWxzZSAjIEdvdCB2YWx1ZSwgYmFjayB0byBub3JtYWwuCisgICAgICBlbHNlCisJY2FzZSAkYWNfYXJnIGluCisJICAqPSogfCAtLWNvbmZpZy1jYWNoZSB8IC1DIHwgLWRpc2FibGUtKiB8IC0tZGlzYWJsZS0qIFwKKwkgIHwgLWVuYWJsZS0qIHwgLS1lbmFibGUtKiB8IC1nYXMgfCAtLWcqIHwgLW5mcCB8IC0tbmYqIFwKKwkgIHwgLXEgfCAtcXVpZXQgfCAtLXEqIHwgLXNpbGVudCB8IC0tc2lsKiB8IC12IHwgLXZlcmIqIFwKKwkgIHwgLXdpdGgtKiB8IC0td2l0aC0qIHwgLXdpdGhvdXQtKiB8IC0td2l0aG91dC0qIHwgLS14KQorCSAgICBjYXNlICIkYWNfY29uZmlndXJlX2FyZ3MwICIgaW4KKwkgICAgICAiJGFjX2NvbmZpZ3VyZV9hcmdzMSIqIiAnJGFjX2FyZycgIiogKSBjb250aW51ZSA7OworCSAgICBlc2FjCisJICAgIDs7CisJICAtKiApIGFjX211c3Rfa2VlcF9uZXh0PXRydWUgOzsKKwllc2FjCisgICAgICBmaQorICAgICAgYXNfZm5fYXBwZW5kIGFjX2NvbmZpZ3VyZV9hcmdzICIgJyRhY19hcmcnIgorICAgICAgOzsKKyAgICBlc2FjCisgIGRvbmUKK2RvbmUKK3sgYWNfY29uZmlndXJlX2FyZ3MwPTsgdW5zZXQgYWNfY29uZmlndXJlX2FyZ3MwO30KK3sgYWNfY29uZmlndXJlX2FyZ3MxPTsgdW5zZXQgYWNfY29uZmlndXJlX2FyZ3MxO30KKworIyBXaGVuIGludGVycnVwdGVkIG9yIGV4aXQnZCwgY2xlYW51cCB0ZW1wb3JhcnkgZmlsZXMsIGFuZCBjb21wbGV0ZQorIyBjb25maWcubG9nLiAgV2UgcmVtb3ZlIGNvbW1lbnRzIGJlY2F1c2UgYW55d2F5IHRoZSBxdW90ZXMgaW4gdGhlcmUKKyMgd291bGQgY2F1c2UgcHJvYmxlbXMgb3IgbG9vayB1Z2x5LgorIyBXQVJOSU5HOiBVc2UgJ1wnJyB0byByZXByZXNlbnQgYW4gYXBvc3Ryb3BoZSB3aXRoaW4gdGhlIHRyYXAuCisjIFdBUk5JTkc6IERvIG5vdCBzdGFydCB0aGUgdHJhcCBjb2RlIHdpdGggYSBuZXdsaW5lLCBkdWUgdG8gYSBGcmVlQlNEIDQuMCBidWcuCit0cmFwICdleGl0X3N0YXR1cz0kPworICAjIFNhdmUgaW50byBjb25maWcubG9nIHNvbWUgaW5mb3JtYXRpb24gdGhhdCBtaWdodCBoZWxwIGluIGRlYnVnZ2luZy4KKyAgeworICAgIGVjaG8KKworICAgICRhc19lY2hvICIjIyAtLS0tLS0tLS0tLS0tLS0tICMjCisjIyBDYWNoZSB2YXJpYWJsZXMuICMjCisjIyAtLS0tLS0tLS0tLS0tLS0tICMjIgorICAgIGVjaG8KKyAgICAjIFRoZSBmb2xsb3dpbmcgd2F5IG9mIHdyaXRpbmcgdGhlIGNhY2hlIG1pc2hhbmRsZXMgbmV3bGluZXMgaW4gdmFsdWVzLAorKAorICBmb3IgYWNfdmFyIGluIGAoc2V0KSAyPiYxIHwgc2VkIC1uICdcJydzL15cKFthLXpBLVpfXVthLXpBLVowLTlfXSpcKT0uKi9cMS9wJ1wnJ2A7IGRvCisgICAgZXZhbCBhY192YWw9XCQkYWNfdmFyCisgICAgY2FzZSAkYWNfdmFsIGluICMoCisgICAgKiR7YXNfbmx9KikKKyAgICAgIGNhc2UgJGFjX3ZhciBpbiAjKAorICAgICAgKl9jdl8qKSB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IFdBUk5JTkc6IGNhY2hlIHZhcmlhYmxlICRhY192YXIgY29udGFpbnMgYSBuZXdsaW5lIiA+JjUKKyRhc19lY2hvICIkYXNfbWU6IFdBUk5JTkc6IGNhY2hlIHZhcmlhYmxlICRhY192YXIgY29udGFpbnMgYSBuZXdsaW5lIiA+JjI7fSA7OworICAgICAgZXNhYworICAgICAgY2FzZSAkYWNfdmFyIGluICMoCisgICAgICBfIHwgSUZTIHwgYXNfbmwpIDs7ICMoCisgICAgICBCQVNIX0FSR1YgfCBCQVNIX1NPVVJDRSkgZXZhbCAkYWNfdmFyPSA7OyAjKAorICAgICAgKikgeyBldmFsICRhY192YXI9OyB1bnNldCAkYWNfdmFyO30gOzsKKyAgICAgIGVzYWMgOzsKKyAgICBlc2FjCisgIGRvbmUKKyAgKHNldCkgMj4mMSB8CisgICAgY2FzZSAkYXNfbmxgKGFjX3NwYWNlPSdcJycgJ1wnJzsgc2V0KSAyPiYxYCBpbiAjKAorICAgICoke2FzX25sfWFjX3NwYWNlPVwgKikKKyAgICAgIHNlZCAtbiBcCisJInMvJ1wnJy8nXCcnXFxcXCdcJycnXCcnL2c7CisJICBzL15cXChbXyRhc19jcl9hbG51bV0qX2N2X1tfJGFzX2NyX2FsbnVtXSpcXCk9XFwoLipcXCkvXFwxPSdcJydcXDInXCcnL3AiCisgICAgICA7OyAjKAorICAgICopCisgICAgICBzZWQgLW4gIi9eW18kYXNfY3JfYWxudW1dKl9jdl9bXyRhc19jcl9hbG51bV0qPS9wIgorICAgICAgOzsKKyAgICBlc2FjIHwKKyAgICBzb3J0CispCisgICAgZWNobworCisgICAgJGFzX2VjaG8gIiMjIC0tLS0tLS0tLS0tLS0tLS0tICMjCisjIyBPdXRwdXQgdmFyaWFibGVzLiAjIworIyMgLS0tLS0tLS0tLS0tLS0tLS0gIyMiCisgICAgZWNobworICAgIGZvciBhY192YXIgaW4gJGFjX3N1YnN0X3ZhcnMKKyAgICBkbworICAgICAgZXZhbCBhY192YWw9XCQkYWNfdmFyCisgICAgICBjYXNlICRhY192YWwgaW4KKyAgICAgICpcJ1wnJyopIGFjX3ZhbD1gJGFzX2VjaG8gIiRhY192YWwiIHwgc2VkICJzLydcJycvJ1wnJ1xcXFxcXFxcJ1wnJydcJycvZyJgOzsKKyAgICAgIGVzYWMKKyAgICAgICRhc19lY2hvICIkYWNfdmFyPSdcJyckYWNfdmFsJ1wnJyIKKyAgICBkb25lIHwgc29ydAorICAgIGVjaG8KKworICAgIGlmIHRlc3QgLW4gIiRhY19zdWJzdF9maWxlcyI7IHRoZW4KKyAgICAgICRhc19lY2hvICIjIyAtLS0tLS0tLS0tLS0tLS0tLS0tICMjCisjIyBGaWxlIHN1YnN0aXR1dGlvbnMuICMjCisjIyAtLS0tLS0tLS0tLS0tLS0tLS0tICMjIgorICAgICAgZWNobworICAgICAgZm9yIGFjX3ZhciBpbiAkYWNfc3Vic3RfZmlsZXMKKyAgICAgIGRvCisJZXZhbCBhY192YWw9XCQkYWNfdmFyCisJY2FzZSAkYWNfdmFsIGluCisJKlwnXCcnKikgYWNfdmFsPWAkYXNfZWNobyAiJGFjX3ZhbCIgfCBzZWQgInMvJ1wnJy8nXCcnXFxcXFxcXFwnXCcnJ1wnJy9nImA7OworCWVzYWMKKwkkYXNfZWNobyAiJGFjX3Zhcj0nXCcnJGFjX3ZhbCdcJyciCisgICAgICBkb25lIHwgc29ydAorICAgICAgZWNobworICAgIGZpCisKKyAgICBpZiB0ZXN0IC1zIGNvbmZkZWZzLmg7IHRoZW4KKyAgICAgICRhc19lY2hvICIjIyAtLS0tLS0tLS0tLSAjIworIyMgY29uZmRlZnMuaC4gIyMKKyMjIC0tLS0tLS0tLS0tICMjIgorICAgICAgZWNobworICAgICAgY2F0IGNvbmZkZWZzLmgKKyAgICAgIGVjaG8KKyAgICBmaQorICAgIHRlc3QgIiRhY19zaWduYWwiICE9IDAgJiYKKyAgICAgICRhc19lY2hvICIkYXNfbWU6IGNhdWdodCBzaWduYWwgJGFjX3NpZ25hbCIKKyAgICAkYXNfZWNobyAiJGFzX21lOiBleGl0ICRleGl0X3N0YXR1cyIKKyAgfSA+JjUKKyAgcm0gLWYgY29yZSAqLmNvcmUgY29yZS5jb25mdGVzdC4qICYmCisgICAgcm0gLWYgLXIgY29uZnRlc3QqIGNvbmZkZWZzKiBjb25mJCQqICRhY19jbGVhbl9maWxlcyAmJgorICAgIGV4aXQgJGV4aXRfc3RhdHVzCisnIDAKK2ZvciBhY19zaWduYWwgaW4gMSAyIDEzIDE1OyBkbworICB0cmFwICdhY19zaWduYWw9JyRhY19zaWduYWwnOyBhc19mbl9leGl0IDEnICRhY19zaWduYWwKK2RvbmUKK2FjX3NpZ25hbD0wCisKKyMgY29uZmRlZnMuaCBhdm9pZHMgT1MgY29tbWFuZCBsaW5lIGxlbmd0aCBsaW1pdHMgdGhhdCBERUZTIGNhbiBleGNlZWQuCitybSAtZiAtciBjb25mdGVzdCogY29uZmRlZnMuaAorCiskYXNfZWNobyAiLyogY29uZmRlZnMuaCAqLyIgPiBjb25mZGVmcy5oCisKKyMgUHJlZGVmaW5lZCBwcmVwcm9jZXNzb3IgdmFyaWFibGVzLgorCitjYXQgPj5jb25mZGVmcy5oIDw8X0FDRU9GCisjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiJFBBQ0tBR0VfTkFNRSIKK19BQ0VPRgorCitjYXQgPj5jb25mZGVmcy5oIDw8X0FDRU9GCisjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAiJFBBQ0tBR0VfVEFSTkFNRSIKK19BQ0VPRgorCitjYXQgPj5jb25mZGVmcy5oIDw8X0FDRU9GCisjZGVmaW5lIFBBQ0tBR0VfVkVSU0lPTiAiJFBBQ0tBR0VfVkVSU0lPTiIKK19BQ0VPRgorCitjYXQgPj5jb25mZGVmcy5oIDw8X0FDRU9GCisjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICIkUEFDS0FHRV9TVFJJTkciCitfQUNFT0YKKworY2F0ID4+Y29uZmRlZnMuaCA8PF9BQ0VPRgorI2RlZmluZSBQQUNLQUdFX0JVR1JFUE9SVCAiJFBBQ0tBR0VfQlVHUkVQT1JUIgorX0FDRU9GCisKK2NhdCA+PmNvbmZkZWZzLmggPDxfQUNFT0YKKyNkZWZpbmUgUEFDS0FHRV9VUkwgIiRQQUNLQUdFX1VSTCIKK19BQ0VPRgorCisKKyMgTGV0IHRoZSBzaXRlIGZpbGUgc2VsZWN0IGFuIGFsdGVybmF0ZSBjYWNoZSBmaWxlIGlmIGl0IHdhbnRzIHRvLgorIyBQcmVmZXIgYW4gZXhwbGljaXRseSBzZWxlY3RlZCBmaWxlIHRvIGF1dG9tYXRpY2FsbHkgc2VsZWN0ZWQgb25lcy4KK2FjX3NpdGVfZmlsZTE9Tk9ORQorYWNfc2l0ZV9maWxlMj1OT05FCitpZiB0ZXN0IC1uICIkQ09ORklHX1NJVEUiOyB0aGVuCisgICMgV2UgZG8gbm90IHdhbnQgYSBQQVRIIHNlYXJjaCBmb3IgY29uZmlnLnNpdGUuCisgIGNhc2UgJENPTkZJR19TSVRFIGluICMoKAorICAgIC0qKSAgYWNfc2l0ZV9maWxlMT0uLyRDT05GSUdfU0lURTs7CisgICAgKi8qKSBhY19zaXRlX2ZpbGUxPSRDT05GSUdfU0lURTs7CisgICAgKikgICBhY19zaXRlX2ZpbGUxPS4vJENPTkZJR19TSVRFOzsKKyAgZXNhYworZWxpZiB0ZXN0ICJ4JHByZWZpeCIgIT0geE5PTkU7IHRoZW4KKyAgYWNfc2l0ZV9maWxlMT0kcHJlZml4L3NoYXJlL2NvbmZpZy5zaXRlCisgIGFjX3NpdGVfZmlsZTI9JHByZWZpeC9ldGMvY29uZmlnLnNpdGUKK2Vsc2UKKyAgYWNfc2l0ZV9maWxlMT0kYWNfZGVmYXVsdF9wcmVmaXgvc2hhcmUvY29uZmlnLnNpdGUKKyAgYWNfc2l0ZV9maWxlMj0kYWNfZGVmYXVsdF9wcmVmaXgvZXRjL2NvbmZpZy5zaXRlCitmaQorZm9yIGFjX3NpdGVfZmlsZSBpbiAiJGFjX3NpdGVfZmlsZTEiICIkYWNfc2l0ZV9maWxlMiIKK2RvCisgIHRlc3QgIngkYWNfc2l0ZV9maWxlIiA9IHhOT05FICYmIGNvbnRpbnVlCisgIGlmIHRlc3QgL2Rldi9udWxsICE9ICIkYWNfc2l0ZV9maWxlIiAmJiB0ZXN0IC1yICIkYWNfc2l0ZV9maWxlIjsgdGhlbgorICAgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogbG9hZGluZyBzaXRlIHNjcmlwdCAkYWNfc2l0ZV9maWxlIiA+JjUKKyRhc19lY2hvICIkYXNfbWU6IGxvYWRpbmcgc2l0ZSBzY3JpcHQgJGFjX3NpdGVfZmlsZSIgPiY2O30KKyAgICBzZWQgJ3MvXi98IC8nICIkYWNfc2l0ZV9maWxlIiA+JjUKKyAgICAuICIkYWNfc2l0ZV9maWxlIiBcCisgICAgICB8fCB7IHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogZXJyb3I6IGluIFxgJGFjX3B3ZCc6IiA+JjUKKyRhc19lY2hvICIkYXNfbWU6IGVycm9yOiBpbiBcYCRhY19wd2QnOiIgPiYyO30KK2FzX2ZuX2Vycm9yICQ/ICJmYWlsZWQgdG8gbG9hZCBzaXRlIHNjcmlwdCAkYWNfc2l0ZV9maWxlCitTZWUgXGBjb25maWcubG9nJyBmb3IgbW9yZSBkZXRhaWxzIiAiJExJTkVOTyIgNTsgfQorICBmaQorZG9uZQorCitpZiB0ZXN0IC1yICIkY2FjaGVfZmlsZSI7IHRoZW4KKyAgIyBTb21lIHZlcnNpb25zIG9mIGJhc2ggd2lsbCBmYWlsIHRvIHNvdXJjZSAvZGV2L251bGwgKHNwZWNpYWwgZmlsZXMKKyAgIyBhY3R1YWxseSksIHNvIHdlIGF2b2lkIGRvaW5nIHRoYXQuICBESkdQUCBlbXVsYXRlcyBpdCBhcyBhIHJlZ3VsYXIgZmlsZS4KKyAgaWYgdGVzdCAvZGV2L251bGwgIT0gIiRjYWNoZV9maWxlIiAmJiB0ZXN0IC1mICIkY2FjaGVfZmlsZSI7IHRoZW4KKyAgICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGxvYWRpbmcgY2FjaGUgJGNhY2hlX2ZpbGUiID4mNQorJGFzX2VjaG8gIiRhc19tZTogbG9hZGluZyBjYWNoZSAkY2FjaGVfZmlsZSIgPiY2O30KKyAgICBjYXNlICRjYWNoZV9maWxlIGluCisgICAgICBbXFwvXSogfCA/OltcXC9dKiApIC4gIiRjYWNoZV9maWxlIjs7CisgICAgICAqKSAgICAgICAgICAgICAgICAgICAgICAuICIuLyRjYWNoZV9maWxlIjs7CisgICAgZXNhYworICBmaQorZWxzZQorICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNyZWF0aW5nIGNhY2hlICRjYWNoZV9maWxlIiA+JjUKKyRhc19lY2hvICIkYXNfbWU6IGNyZWF0aW5nIGNhY2hlICRjYWNoZV9maWxlIiA+JjY7fQorICA+JGNhY2hlX2ZpbGUKK2ZpCisKK2d0X25lZWRzPSIkZ3RfbmVlZHMgIgorIyBDaGVjayB0aGF0IHRoZSBwcmVjaW91cyB2YXJpYWJsZXMgc2F2ZWQgaW4gdGhlIGNhY2hlIGhhdmUga2VwdCB0aGUgc2FtZQorIyB2YWx1ZS4KK2FjX2NhY2hlX2NvcnJ1cHRlZD1mYWxzZQorZm9yIGFjX3ZhciBpbiAkYWNfcHJlY2lvdXNfdmFyczsgZG8KKyAgZXZhbCBhY19vbGRfc2V0PVwkYWNfY3ZfZW52XyR7YWNfdmFyfV9zZXQKKyAgZXZhbCBhY19uZXdfc2V0PVwkYWNfZW52XyR7YWNfdmFyfV9zZXQKKyAgZXZhbCBhY19vbGRfdmFsPVwkYWNfY3ZfZW52XyR7YWNfdmFyfV92YWx1ZQorICBldmFsIGFjX25ld192YWw9XCRhY19lbnZfJHthY192YXJ9X3ZhbHVlCisgIGNhc2UgJGFjX29sZF9zZXQsJGFjX25ld19zZXQgaW4KKyAgICBzZXQsKQorICAgICAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBlcnJvcjogXGAkYWNfdmFyJyB3YXMgc2V0IHRvIFxgJGFjX29sZF92YWwnIGluIHRoZSBwcmV2aW91cyBydW4iID4mNQorJGFzX2VjaG8gIiRhc19tZTogZXJyb3I6IFxgJGFjX3Zhcicgd2FzIHNldCB0byBcYCRhY19vbGRfdmFsJyBpbiB0aGUgcHJldmlvdXMgcnVuIiA+JjI7fQorICAgICAgYWNfY2FjaGVfY29ycnVwdGVkPTogOzsKKyAgICAsc2V0KQorICAgICAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBlcnJvcjogXGAkYWNfdmFyJyB3YXMgbm90IHNldCBpbiB0aGUgcHJldmlvdXMgcnVuIiA+JjUKKyRhc19lY2hvICIkYXNfbWU6IGVycm9yOiBcYCRhY192YXInIHdhcyBub3Qgc2V0IGluIHRoZSBwcmV2aW91cyBydW4iID4mMjt9CisgICAgICBhY19jYWNoZV9jb3JydXB0ZWQ9OiA7OworICAgICwpOzsKKyAgICAqKQorICAgICAgaWYgdGVzdCAieCRhY19vbGRfdmFsIiAhPSAieCRhY19uZXdfdmFsIjsgdGhlbgorCSMgZGlmZmVyZW5jZXMgaW4gd2hpdGVzcGFjZSBkbyBub3QgbGVhZCB0byBmYWlsdXJlLgorCWFjX29sZF92YWxfdz1gZWNobyB4ICRhY19vbGRfdmFsYAorCWFjX25ld192YWxfdz1gZWNobyB4ICRhY19uZXdfdmFsYAorCWlmIHRlc3QgIiRhY19vbGRfdmFsX3ciICE9ICIkYWNfbmV3X3ZhbF93IjsgdGhlbgorCSAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBlcnJvcjogXGAkYWNfdmFyJyBoYXMgY2hhbmdlZCBzaW5jZSB0aGUgcHJldmlvdXMgcnVuOiIgPiY1CiskYXNfZWNobyAiJGFzX21lOiBlcnJvcjogXGAkYWNfdmFyJyBoYXMgY2hhbmdlZCBzaW5jZSB0aGUgcHJldmlvdXMgcnVuOiIgPiYyO30KKwkgIGFjX2NhY2hlX2NvcnJ1cHRlZD06CisJZWxzZQorCSAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiB3YXJuaW5nOiBpZ25vcmluZyB3aGl0ZXNwYWNlIGNoYW5nZXMgaW4gXGAkYWNfdmFyJyBzaW5jZSB0aGUgcHJldmlvdXMgcnVuOiIgPiY1CiskYXNfZWNobyAiJGFzX21lOiB3YXJuaW5nOiBpZ25vcmluZyB3aGl0ZXNwYWNlIGNoYW5nZXMgaW4gXGAkYWNfdmFyJyBzaW5jZSB0aGUgcHJldmlvdXMgcnVuOiIgPiYyO30KKwkgIGV2YWwgJGFjX3Zhcj1cJGFjX29sZF92YWwKKwlmaQorCXsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogICBmb3JtZXIgdmFsdWU6ICBcYCRhY19vbGRfdmFsJyIgPiY1CiskYXNfZWNobyAiJGFzX21lOiAgIGZvcm1lciB2YWx1ZTogIFxgJGFjX29sZF92YWwnIiA+JjI7fQorCXsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogICBjdXJyZW50IHZhbHVlOiBcYCRhY19uZXdfdmFsJyIgPiY1CiskYXNfZWNobyAiJGFzX21lOiAgIGN1cnJlbnQgdmFsdWU6IFxgJGFjX25ld192YWwnIiA+JjI7fQorICAgICAgZmk7OworICBlc2FjCisgICMgUGFzcyBwcmVjaW91cyB2YXJpYWJsZXMgdG8gY29uZmlnLnN0YXR1cy4KKyAgaWYgdGVzdCAiJGFjX25ld19zZXQiID0gc2V0OyB0aGVuCisgICAgY2FzZSAkYWNfbmV3X3ZhbCBpbgorICAgICpcJyopIGFjX2FyZz0kYWNfdmFyPWAkYXNfZWNobyAiJGFjX25ld192YWwiIHwgc2VkICJzLycvJ1xcXFxcXFxcJycvZyJgIDs7CisgICAgKikgYWNfYXJnPSRhY192YXI9JGFjX25ld192YWwgOzsKKyAgICBlc2FjCisgICAgY2FzZSAiICRhY19jb25maWd1cmVfYXJncyAiIGluCisgICAgICAqIiAnJGFjX2FyZycgIiopIDs7ICMgQXZvaWQgZHVwcy4gIFVzZSBvZiBxdW90ZXMgZW5zdXJlcyBhY2N1cmFjeS4KKyAgICAgICopIGFzX2ZuX2FwcGVuZCBhY19jb25maWd1cmVfYXJncyAiICckYWNfYXJnJyIgOzsKKyAgICBlc2FjCisgIGZpCitkb25lCitpZiAkYWNfY2FjaGVfY29ycnVwdGVkOyB0aGVuCisgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogZXJyb3I6IGluIFxgJGFjX3B3ZCc6IiA+JjUKKyRhc19lY2hvICIkYXNfbWU6IGVycm9yOiBpbiBcYCRhY19wd2QnOiIgPiYyO30KKyAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBlcnJvcjogY2hhbmdlcyBpbiB0aGUgZW52aXJvbm1lbnQgY2FuIGNvbXByb21pc2UgdGhlIGJ1aWxkIiA+JjUKKyRhc19lY2hvICIkYXNfbWU6IGVycm9yOiBjaGFuZ2VzIGluIHRoZSBlbnZpcm9ubWVudCBjYW4gY29tcHJvbWlzZSB0aGUgYnVpbGQiID4mMjt9CisgIGFzX2ZuX2Vycm9yICQ/ICJydW4gXGBtYWtlIGRpc3RjbGVhbicgYW5kL29yIFxgcm0gJGNhY2hlX2ZpbGUnIGFuZCBzdGFydCBvdmVyIiAiJExJTkVOTyIgNQorZmkKKyMjIC0tLS0tLS0tLS0tLS0tLS0tLS0tICMjCisjIyBNYWluIGJvZHkgb2Ygc2NyaXB0LiAjIworIyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0gIyMKKworYWNfZXh0PWMKK2FjX2NwcD0nJENQUCAkQ1BQRkxBR1MnCithY19jb21waWxlPSckQ0MgLWMgJENGTEFHUyAkQ1BQRkxBR1MgY29uZnRlc3QuJGFjX2V4dCA+JjUnCithY19saW5rPSckQ0MgLW8gY29uZnRlc3QkYWNfZXhlZXh0ICRDRkxBR1MgJENQUEZMQUdTICRMREZMQUdTIGNvbmZ0ZXN0LiRhY19leHQgJExJQlMgPiY1JworYWNfY29tcGlsZXJfZ251PSRhY19jdl9jX2NvbXBpbGVyX2dudQorCisKKworCithY19hdXhfZGlyPQorZm9yIGFjX2RpciBpbiBidWlsZC1hdXggIiRzcmNkaXIiL2J1aWxkLWF1eDsgZG8KKyAgaWYgdGVzdCAtZiAiJGFjX2Rpci9pbnN0YWxsLXNoIjsgdGhlbgorICAgIGFjX2F1eF9kaXI9JGFjX2RpcgorICAgIGFjX2luc3RhbGxfc2g9IiRhY19hdXhfZGlyL2luc3RhbGwtc2ggLWMiCisgICAgYnJlYWsKKyAgZWxpZiB0ZXN0IC1mICIkYWNfZGlyL2luc3RhbGwuc2giOyB0aGVuCisgICAgYWNfYXV4X2Rpcj0kYWNfZGlyCisgICAgYWNfaW5zdGFsbF9zaD0iJGFjX2F1eF9kaXIvaW5zdGFsbC5zaCAtYyIKKyAgICBicmVhaworICBlbGlmIHRlc3QgLWYgIiRhY19kaXIvc2h0b29sIjsgdGhlbgorICAgIGFjX2F1eF9kaXI9JGFjX2RpcgorICAgIGFjX2luc3RhbGxfc2g9IiRhY19hdXhfZGlyL3NodG9vbCBpbnN0YWxsIC1jIgorICAgIGJyZWFrCisgIGZpCitkb25lCitpZiB0ZXN0IC16ICIkYWNfYXV4X2RpciI7IHRoZW4KKyAgYXNfZm5fZXJyb3IgJD8gImNhbm5vdCBmaW5kIGluc3RhbGwtc2gsIGluc3RhbGwuc2gsIG9yIHNodG9vbCBpbiBidWlsZC1hdXggXCIkc3JjZGlyXCIvYnVpbGQtYXV4IiAiJExJTkVOTyIgNQorZmkKKworIyBUaGVzZSB0aHJlZSB2YXJpYWJsZXMgYXJlIHVuZG9jdW1lbnRlZCBhbmQgdW5zdXBwb3J0ZWQsCisjIGFuZCBhcmUgaW50ZW5kZWQgdG8gYmUgd2l0aGRyYXduIGluIGEgZnV0dXJlIEF1dG9jb25mIHJlbGVhc2UuCisjIFRoZXkgY2FuIGNhdXNlIHNlcmlvdXMgcHJvYmxlbXMgaWYgYSBidWlsZGVyJ3Mgc291cmNlIHRyZWUgaXMgaW4gYSBkaXJlY3RvcnkKKyMgd2hvc2UgZnVsbCBuYW1lIGNvbnRhaW5zIHVudXN1YWwgY2hhcmFjdGVycy4KK2FjX2NvbmZpZ19ndWVzcz0iJFNIRUxMICRhY19hdXhfZGlyL2NvbmZpZy5ndWVzcyIgICMgUGxlYXNlIGRvbid0IHVzZSB0aGlzIHZhci4KK2FjX2NvbmZpZ19zdWI9IiRTSEVMTCAkYWNfYXV4X2Rpci9jb25maWcuc3ViIiAgIyBQbGVhc2UgZG9uJ3QgdXNlIHRoaXMgdmFyLgorYWNfY29uZmlndXJlPSIkU0hFTEwgJGFjX2F1eF9kaXIvY29uZmlndXJlIiAgIyBQbGVhc2UgZG9uJ3QgdXNlIHRoaXMgdmFyLgorCisKKworYWNfZXh0PWMKK2FjX2NwcD0nJENQUCAkQ1BQRkxBR1MnCithY19jb21waWxlPSckQ0MgLWMgJENGTEFHUyAkQ1BQRkxBR1MgY29uZnRlc3QuJGFjX2V4dCA+JjUnCithY19saW5rPSckQ0MgLW8gY29uZnRlc3QkYWNfZXhlZXh0ICRDRkxBR1MgJENQUEZMQUdTICRMREZMQUdTIGNvbmZ0ZXN0LiRhY19leHQgJExJQlMgPiY1JworYWNfY29tcGlsZXJfZ251PSRhY19jdl9jX2NvbXBpbGVyX2dudQoraWYgdGVzdCAtbiAiJGFjX3Rvb2xfcHJlZml4IjsgdGhlbgorICAjIEV4dHJhY3QgdGhlIGZpcnN0IHdvcmQgb2YgIiR7YWNfdG9vbF9wcmVmaXh9Z2NjIiwgc28gaXQgY2FuIGJlIGEgcHJvZ3JhbSBuYW1lIHdpdGggYXJncy4KK3NldCBkdW1teSAke2FjX3Rvb2xfcHJlZml4fWdjYzsgYWNfd29yZD0kMgoreyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBjaGVja2luZyBmb3IgJGFjX3dvcmQiID4mNQorJGFzX2VjaG9fbiAiY2hlY2tpbmcgZm9yICRhY193b3JkLi4uICIgPiY2OyB9CitpZiAke2FjX2N2X3Byb2dfQ0MrOn0gZmFsc2U7IHRoZW4gOgorICAkYXNfZWNob19uICIoY2FjaGVkKSAiID4mNgorZWxzZQorICBpZiB0ZXN0IC1uICIkQ0MiOyB0aGVuCisgIGFjX2N2X3Byb2dfQ0M9IiRDQyIgIyBMZXQgdGhlIHVzZXIgb3ZlcnJpZGUgdGhlIHRlc3QuCitlbHNlCithc19zYXZlX0lGUz0kSUZTOyBJRlM9JFBBVEhfU0VQQVJBVE9SCitmb3IgYXNfZGlyIGluICRQQVRICitkbworICBJRlM9JGFzX3NhdmVfSUZTCisgIHRlc3QgLXogIiRhc19kaXIiICYmIGFzX2Rpcj0uCisgICAgZm9yIGFjX2V4ZWNfZXh0IGluICcnICRhY19leGVjdXRhYmxlX2V4dGVuc2lvbnM7IGRvCisgIGlmIHsgdGVzdCAtZiAiJGFzX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCIgJiYgJGFzX3Rlc3RfeCAiJGFzX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCI7IH07IHRoZW4KKyAgICBhY19jdl9wcm9nX0NDPSIke2FjX3Rvb2xfcHJlZml4fWdjYyIKKyAgICAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBmb3VuZCAkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IiA+JjUKKyAgICBicmVhayAyCisgIGZpCitkb25lCisgIGRvbmUKK0lGUz0kYXNfc2F2ZV9JRlMKKworZmkKK2ZpCitDQz0kYWNfY3ZfcHJvZ19DQworaWYgdGVzdCAtbiAiJENDIjsgdGhlbgorICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogJENDIiA+JjUKKyRhc19lY2hvICIkQ0MiID4mNjsgfQorZWxzZQorICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogbm8iID4mNQorJGFzX2VjaG8gIm5vIiA+JjY7IH0KK2ZpCisKKworZmkKK2lmIHRlc3QgLXogIiRhY19jdl9wcm9nX0NDIjsgdGhlbgorICBhY19jdF9DQz0kQ0MKKyAgIyBFeHRyYWN0IHRoZSBmaXJzdCB3b3JkIG9mICJnY2MiLCBzbyBpdCBjYW4gYmUgYSBwcm9ncmFtIG5hbWUgd2l0aCBhcmdzLgorc2V0IGR1bW15IGdjYzsgYWNfd29yZD0kMgoreyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBjaGVja2luZyBmb3IgJGFjX3dvcmQiID4mNQorJGFzX2VjaG9fbiAiY2hlY2tpbmcgZm9yICRhY193b3JkLi4uICIgPiY2OyB9CitpZiAke2FjX2N2X3Byb2dfYWNfY3RfQ0MrOn0gZmFsc2U7IHRoZW4gOgorICAkYXNfZWNob19uICIoY2FjaGVkKSAiID4mNgorZWxzZQorICBpZiB0ZXN0IC1uICIkYWNfY3RfQ0MiOyB0aGVuCisgIGFjX2N2X3Byb2dfYWNfY3RfQ0M9IiRhY19jdF9DQyIgIyBMZXQgdGhlIHVzZXIgb3ZlcnJpZGUgdGhlIHRlc3QuCitlbHNlCithc19zYXZlX0lGUz0kSUZTOyBJRlM9JFBBVEhfU0VQQVJBVE9SCitmb3IgYXNfZGlyIGluICRQQVRICitkbworICBJRlM9JGFzX3NhdmVfSUZTCisgIHRlc3QgLXogIiRhc19kaXIiICYmIGFzX2Rpcj0uCisgICAgZm9yIGFjX2V4ZWNfZXh0IGluICcnICRhY19leGVjdXRhYmxlX2V4dGVuc2lvbnM7IGRvCisgIGlmIHsgdGVzdCAtZiAiJGFzX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCIgJiYgJGFzX3Rlc3RfeCAiJGFzX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCI7IH07IHRoZW4KKyAgICBhY19jdl9wcm9nX2FjX2N0X0NDPSJnY2MiCisgICAgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogZm91bmQgJGFzX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCIgPiY1CisgICAgYnJlYWsgMgorICBmaQorZG9uZQorICBkb25lCitJRlM9JGFzX3NhdmVfSUZTCisKK2ZpCitmaQorYWNfY3RfQ0M9JGFjX2N2X3Byb2dfYWNfY3RfQ0MKK2lmIHRlc3QgLW4gIiRhY19jdF9DQyI7IHRoZW4KKyAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6ICRhY19jdF9DQyIgPiY1CiskYXNfZWNobyAiJGFjX2N0X0NDIiA+JjY7IH0KK2Vsc2UKKyAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6IG5vIiA+JjUKKyRhc19lY2hvICJubyIgPiY2OyB9CitmaQorCisgIGlmIHRlc3QgIngkYWNfY3RfQ0MiID0geDsgdGhlbgorICAgIENDPSIiCisgIGVsc2UKKyAgICBjYXNlICRjcm9zc19jb21waWxpbmc6JGFjX3Rvb2xfd2FybmVkIGluCit5ZXM6KQoreyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBXQVJOSU5HOiB1c2luZyBjcm9zcyB0b29scyBub3QgcHJlZml4ZWQgd2l0aCBob3N0IHRyaXBsZXQiID4mNQorJGFzX2VjaG8gIiRhc19tZTogV0FSTklORzogdXNpbmcgY3Jvc3MgdG9vbHMgbm90IHByZWZpeGVkIHdpdGggaG9zdCB0cmlwbGV0IiA+JjI7fQorYWNfdG9vbF93YXJuZWQ9eWVzIDs7Citlc2FjCisgICAgQ0M9JGFjX2N0X0NDCisgIGZpCitlbHNlCisgIENDPSIkYWNfY3ZfcHJvZ19DQyIKK2ZpCisKK2lmIHRlc3QgLXogIiRDQyI7IHRoZW4KKyAgICAgICAgICBpZiB0ZXN0IC1uICIkYWNfdG9vbF9wcmVmaXgiOyB0aGVuCisgICAgIyBFeHRyYWN0IHRoZSBmaXJzdCB3b3JkIG9mICIke2FjX3Rvb2xfcHJlZml4fWNjIiwgc28gaXQgY2FuIGJlIGEgcHJvZ3JhbSBuYW1lIHdpdGggYXJncy4KK3NldCBkdW1teSAke2FjX3Rvb2xfcHJlZml4fWNjOyBhY193b3JkPSQyCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIGZvciAkYWNfd29yZCIgPiY1CiskYXNfZWNob19uICJjaGVja2luZyBmb3IgJGFjX3dvcmQuLi4gIiA+JjY7IH0KK2lmICR7YWNfY3ZfcHJvZ19DQys6fSBmYWxzZTsgdGhlbiA6CisgICRhc19lY2hvX24gIihjYWNoZWQpICIgPiY2CitlbHNlCisgIGlmIHRlc3QgLW4gIiRDQyI7IHRoZW4KKyAgYWNfY3ZfcHJvZ19DQz0iJENDIiAjIExldCB0aGUgdXNlciBvdmVycmlkZSB0aGUgdGVzdC4KK2Vsc2UKK2FzX3NhdmVfSUZTPSRJRlM7IElGUz0kUEFUSF9TRVBBUkFUT1IKK2ZvciBhc19kaXIgaW4gJFBBVEgKK2RvCisgIElGUz0kYXNfc2F2ZV9JRlMKKyAgdGVzdCAteiAiJGFzX2RpciIgJiYgYXNfZGlyPS4KKyAgICBmb3IgYWNfZXhlY19leHQgaW4gJycgJGFjX2V4ZWN1dGFibGVfZXh0ZW5zaW9uczsgZG8KKyAgaWYgeyB0ZXN0IC1mICIkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IiAmJiAkYXNfdGVzdF94ICIkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IjsgfTsgdGhlbgorICAgIGFjX2N2X3Byb2dfQ0M9IiR7YWNfdG9vbF9wcmVmaXh9Y2MiCisgICAgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogZm91bmQgJGFzX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCIgPiY1CisgICAgYnJlYWsgMgorICBmaQorZG9uZQorICBkb25lCitJRlM9JGFzX3NhdmVfSUZTCisKK2ZpCitmaQorQ0M9JGFjX2N2X3Byb2dfQ0MKK2lmIHRlc3QgLW4gIiRDQyI7IHRoZW4KKyAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6ICRDQyIgPiY1CiskYXNfZWNobyAiJENDIiA+JjY7IH0KK2Vsc2UKKyAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6IG5vIiA+JjUKKyRhc19lY2hvICJubyIgPiY2OyB9CitmaQorCisKKyAgZmkKK2ZpCitpZiB0ZXN0IC16ICIkQ0MiOyB0aGVuCisgICMgRXh0cmFjdCB0aGUgZmlyc3Qgd29yZCBvZiAiY2MiLCBzbyBpdCBjYW4gYmUgYSBwcm9ncmFtIG5hbWUgd2l0aCBhcmdzLgorc2V0IGR1bW15IGNjOyBhY193b3JkPSQyCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIGZvciAkYWNfd29yZCIgPiY1CiskYXNfZWNob19uICJjaGVja2luZyBmb3IgJGFjX3dvcmQuLi4gIiA+JjY7IH0KK2lmICR7YWNfY3ZfcHJvZ19DQys6fSBmYWxzZTsgdGhlbiA6CisgICRhc19lY2hvX24gIihjYWNoZWQpICIgPiY2CitlbHNlCisgIGlmIHRlc3QgLW4gIiRDQyI7IHRoZW4KKyAgYWNfY3ZfcHJvZ19DQz0iJENDIiAjIExldCB0aGUgdXNlciBvdmVycmlkZSB0aGUgdGVzdC4KK2Vsc2UKKyAgYWNfcHJvZ19yZWplY3RlZD1ubworYXNfc2F2ZV9JRlM9JElGUzsgSUZTPSRQQVRIX1NFUEFSQVRPUgorZm9yIGFzX2RpciBpbiAkUEFUSAorZG8KKyAgSUZTPSRhc19zYXZlX0lGUworICB0ZXN0IC16ICIkYXNfZGlyIiAmJiBhc19kaXI9LgorICAgIGZvciBhY19leGVjX2V4dCBpbiAnJyAkYWNfZXhlY3V0YWJsZV9leHRlbnNpb25zOyBkbworICBpZiB7IHRlc3QgLWYgIiRhc19kaXIvJGFjX3dvcmQkYWNfZXhlY19leHQiICYmICRhc190ZXN0X3ggIiRhc19kaXIvJGFjX3dvcmQkYWNfZXhlY19leHQiOyB9OyB0aGVuCisgICAgaWYgdGVzdCAiJGFzX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCIgPSAiL3Vzci91Y2IvY2MiOyB0aGVuCisgICAgICAgYWNfcHJvZ19yZWplY3RlZD15ZXMKKyAgICAgICBjb250aW51ZQorICAgICBmaQorICAgIGFjX2N2X3Byb2dfQ0M9ImNjIgorICAgICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGZvdW5kICRhc19kaXIvJGFjX3dvcmQkYWNfZXhlY19leHQiID4mNQorICAgIGJyZWFrIDIKKyAgZmkKK2RvbmUKKyAgZG9uZQorSUZTPSRhc19zYXZlX0lGUworCitpZiB0ZXN0ICRhY19wcm9nX3JlamVjdGVkID0geWVzOyB0aGVuCisgICMgV2UgZm91bmQgYSBib2dvbiBpbiB0aGUgcGF0aCwgc28gbWFrZSBzdXJlIHdlIG5ldmVyIHVzZSBpdC4KKyAgc2V0IGR1bW15ICRhY19jdl9wcm9nX0NDCisgIHNoaWZ0CisgIGlmIHRlc3QgJCMgIT0gMDsgdGhlbgorICAgICMgV2UgY2hvc2UgYSBkaWZmZXJlbnQgY29tcGlsZXIgZnJvbSB0aGUgYm9ndXMgb25lLgorICAgICMgSG93ZXZlciwgaXQgaGFzIHRoZSBzYW1lIGJhc2VuYW1lLCBzbyB0aGUgYm9nb24gd2lsbCBiZSBjaG9zZW4KKyAgICAjIGZpcnN0IGlmIHdlIHNldCBDQyB0byBqdXN0IHRoZSBiYXNlbmFtZTsgdXNlIHRoZSBmdWxsIGZpbGUgbmFtZS4KKyAgICBzaGlmdAorICAgIGFjX2N2X3Byb2dfQ0M9IiRhc19kaXIvJGFjX3dvcmQkezErJyAnfSRAIgorICBmaQorZmkKK2ZpCitmaQorQ0M9JGFjX2N2X3Byb2dfQ0MKK2lmIHRlc3QgLW4gIiRDQyI7IHRoZW4KKyAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6ICRDQyIgPiY1CiskYXNfZWNobyAiJENDIiA+JjY7IH0KK2Vsc2UKKyAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6IG5vIiA+JjUKKyRhc19lY2hvICJubyIgPiY2OyB9CitmaQorCisKK2ZpCitpZiB0ZXN0IC16ICIkQ0MiOyB0aGVuCisgIGlmIHRlc3QgLW4gIiRhY190b29sX3ByZWZpeCI7IHRoZW4KKyAgZm9yIGFjX3Byb2cgaW4gY2wuZXhlCisgIGRvCisgICAgIyBFeHRyYWN0IHRoZSBmaXJzdCB3b3JkIG9mICIkYWNfdG9vbF9wcmVmaXgkYWNfcHJvZyIsIHNvIGl0IGNhbiBiZSBhIHByb2dyYW0gbmFtZSB3aXRoIGFyZ3MuCitzZXQgZHVtbXkgJGFjX3Rvb2xfcHJlZml4JGFjX3Byb2c7IGFjX3dvcmQ9JDIKK3sgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgZm9yICRhY193b3JkIiA+JjUKKyRhc19lY2hvX24gImNoZWNraW5nIGZvciAkYWNfd29yZC4uLiAiID4mNjsgfQoraWYgJHthY19jdl9wcm9nX0NDKzp9IGZhbHNlOyB0aGVuIDoKKyAgJGFzX2VjaG9fbiAiKGNhY2hlZCkgIiA+JjYKK2Vsc2UKKyAgaWYgdGVzdCAtbiAiJENDIjsgdGhlbgorICBhY19jdl9wcm9nX0NDPSIkQ0MiICMgTGV0IHRoZSB1c2VyIG92ZXJyaWRlIHRoZSB0ZXN0LgorZWxzZQorYXNfc2F2ZV9JRlM9JElGUzsgSUZTPSRQQVRIX1NFUEFSQVRPUgorZm9yIGFzX2RpciBpbiAkUEFUSAorZG8KKyAgSUZTPSRhc19zYXZlX0lGUworICB0ZXN0IC16ICIkYXNfZGlyIiAmJiBhc19kaXI9LgorICAgIGZvciBhY19leGVjX2V4dCBpbiAnJyAkYWNfZXhlY3V0YWJsZV9leHRlbnNpb25zOyBkbworICBpZiB7IHRlc3QgLWYgIiRhc19kaXIvJGFjX3dvcmQkYWNfZXhlY19leHQiICYmICRhc190ZXN0X3ggIiRhc19kaXIvJGFjX3dvcmQkYWNfZXhlY19leHQiOyB9OyB0aGVuCisgICAgYWNfY3ZfcHJvZ19DQz0iJGFjX3Rvb2xfcHJlZml4JGFjX3Byb2ciCisgICAgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogZm91bmQgJGFzX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCIgPiY1CisgICAgYnJlYWsgMgorICBmaQorZG9uZQorICBkb25lCitJRlM9JGFzX3NhdmVfSUZTCisKK2ZpCitmaQorQ0M9JGFjX2N2X3Byb2dfQ0MKK2lmIHRlc3QgLW4gIiRDQyI7IHRoZW4KKyAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6ICRDQyIgPiY1CiskYXNfZWNobyAiJENDIiA+JjY7IH0KK2Vsc2UKKyAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6IG5vIiA+JjUKKyRhc19lY2hvICJubyIgPiY2OyB9CitmaQorCisKKyAgICB0ZXN0IC1uICIkQ0MiICYmIGJyZWFrCisgIGRvbmUKK2ZpCitpZiB0ZXN0IC16ICIkQ0MiOyB0aGVuCisgIGFjX2N0X0NDPSRDQworICBmb3IgYWNfcHJvZyBpbiBjbC5leGUKK2RvCisgICMgRXh0cmFjdCB0aGUgZmlyc3Qgd29yZCBvZiAiJGFjX3Byb2ciLCBzbyBpdCBjYW4gYmUgYSBwcm9ncmFtIG5hbWUgd2l0aCBhcmdzLgorc2V0IGR1bW15ICRhY19wcm9nOyBhY193b3JkPSQyCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIGZvciAkYWNfd29yZCIgPiY1CiskYXNfZWNob19uICJjaGVja2luZyBmb3IgJGFjX3dvcmQuLi4gIiA+JjY7IH0KK2lmICR7YWNfY3ZfcHJvZ19hY19jdF9DQys6fSBmYWxzZTsgdGhlbiA6CisgICRhc19lY2hvX24gIihjYWNoZWQpICIgPiY2CitlbHNlCisgIGlmIHRlc3QgLW4gIiRhY19jdF9DQyI7IHRoZW4KKyAgYWNfY3ZfcHJvZ19hY19jdF9DQz0iJGFjX2N0X0NDIiAjIExldCB0aGUgdXNlciBvdmVycmlkZSB0aGUgdGVzdC4KK2Vsc2UKK2FzX3NhdmVfSUZTPSRJRlM7IElGUz0kUEFUSF9TRVBBUkFUT1IKK2ZvciBhc19kaXIgaW4gJFBBVEgKK2RvCisgIElGUz0kYXNfc2F2ZV9JRlMKKyAgdGVzdCAteiAiJGFzX2RpciIgJiYgYXNfZGlyPS4KKyAgICBmb3IgYWNfZXhlY19leHQgaW4gJycgJGFjX2V4ZWN1dGFibGVfZXh0ZW5zaW9uczsgZG8KKyAgaWYgeyB0ZXN0IC1mICIkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IiAmJiAkYXNfdGVzdF94ICIkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IjsgfTsgdGhlbgorICAgIGFjX2N2X3Byb2dfYWNfY3RfQ0M9IiRhY19wcm9nIgorICAgICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGZvdW5kICRhc19kaXIvJGFjX3dvcmQkYWNfZXhlY19leHQiID4mNQorICAgIGJyZWFrIDIKKyAgZmkKK2RvbmUKKyAgZG9uZQorSUZTPSRhc19zYXZlX0lGUworCitmaQorZmkKK2FjX2N0X0NDPSRhY19jdl9wcm9nX2FjX2N0X0NDCitpZiB0ZXN0IC1uICIkYWNfY3RfQ0MiOyB0aGVuCisgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiAkYWNfY3RfQ0MiID4mNQorJGFzX2VjaG8gIiRhY19jdF9DQyIgPiY2OyB9CitlbHNlCisgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiBubyIgPiY1CiskYXNfZWNobyAibm8iID4mNjsgfQorZmkKKworCisgIHRlc3QgLW4gIiRhY19jdF9DQyIgJiYgYnJlYWsKK2RvbmUKKworICBpZiB0ZXN0ICJ4JGFjX2N0X0NDIiA9IHg7IHRoZW4KKyAgICBDQz0iIgorICBlbHNlCisgICAgY2FzZSAkY3Jvc3NfY29tcGlsaW5nOiRhY190b29sX3dhcm5lZCBpbgoreWVzOikKK3sgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogV0FSTklORzogdXNpbmcgY3Jvc3MgdG9vbHMgbm90IHByZWZpeGVkIHdpdGggaG9zdCB0cmlwbGV0IiA+JjUKKyRhc19lY2hvICIkYXNfbWU6IFdBUk5JTkc6IHVzaW5nIGNyb3NzIHRvb2xzIG5vdCBwcmVmaXhlZCB3aXRoIGhvc3QgdHJpcGxldCIgPiYyO30KK2FjX3Rvb2xfd2FybmVkPXllcyA7OworZXNhYworICAgIENDPSRhY19jdF9DQworICBmaQorZmkKKworZmkKKworCit0ZXN0IC16ICIkQ0MiICYmIHsgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBlcnJvcjogaW4gXGAkYWNfcHdkJzoiID4mNQorJGFzX2VjaG8gIiRhc19tZTogZXJyb3I6IGluIFxgJGFjX3B3ZCc6IiA+JjI7fQorYXNfZm5fZXJyb3IgJD8gIm5vIGFjY2VwdGFibGUgQyBjb21waWxlciBmb3VuZCBpbiBcJFBBVEgKK1NlZSBcYGNvbmZpZy5sb2cnIGZvciBtb3JlIGRldGFpbHMiICIkTElORU5PIiA1OyB9CisKKyMgUHJvdmlkZSBzb21lIGluZm9ybWF0aW9uIGFib3V0IHRoZSBjb21waWxlci4KKyRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIGZvciBDIGNvbXBpbGVyIHZlcnNpb24iID4mNQorc2V0IFggJGFjX2NvbXBpbGUKK2FjX2NvbXBpbGVyPSQyCitmb3IgYWNfb3B0aW9uIGluIC0tdmVyc2lvbiAtdiAtViAtcXZlcnNpb247IGRvCisgIHsgeyBhY190cnk9IiRhY19jb21waWxlciAkYWNfb3B0aW9uID4mNSIKK2Nhc2UgIigoJGFjX3RyeSIgaW4KKyAgKlwiKiB8ICpcYCogfCAqXFwqKSBhY190cnlfZWNobz1cJGFjX3RyeTs7CisgICopIGFjX3RyeV9lY2hvPSRhY190cnk7OworZXNhYworZXZhbCBhY190cnlfZWNobz0iXCJcJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiAkYWNfdHJ5X2VjaG9cIiIKKyRhc19lY2hvICIkYWNfdHJ5X2VjaG8iOyB9ID4mNQorICAoZXZhbCAiJGFjX2NvbXBpbGVyICRhY19vcHRpb24gPiY1IikgMj5jb25mdGVzdC5lcnIKKyAgYWNfc3RhdHVzPSQ/CisgIGlmIHRlc3QgLXMgY29uZnRlc3QuZXJyOyB0aGVuCisgICAgc2VkICcxMGFcCisuLi4gcmVzdCBvZiBzdGRlcnIgb3V0cHV0IGRlbGV0ZWQgLi4uCisgICAgICAgICAxMHEnIGNvbmZ0ZXN0LmVyciA+Y29uZnRlc3QuZXIxCisgICAgY2F0IGNvbmZ0ZXN0LmVyMSA+JjUKKyAgZmkKKyAgcm0gLWYgY29uZnRlc3QuZXIxIGNvbmZ0ZXN0LmVycgorICAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgdGVzdCAkYWNfc3RhdHVzID0gMDsgfQorZG9uZQorCitjYXQgY29uZmRlZnMuaCAtIDw8X0FDRU9GID5jb25mdGVzdC4kYWNfZXh0CisvKiBlbmQgY29uZmRlZnMuaC4gICovCisKK2ludAorbWFpbiAoKQoreworCisgIDsKKyAgcmV0dXJuIDA7Cit9CitfQUNFT0YKK2FjX2NsZWFuX2ZpbGVzX3NhdmU9JGFjX2NsZWFuX2ZpbGVzCithY19jbGVhbl9maWxlcz0iJGFjX2NsZWFuX2ZpbGVzIGEub3V0IGEub3V0LmRTWU0gYS5leGUgYi5vdXQiCisjIFRyeSB0byBjcmVhdGUgYW4gZXhlY3V0YWJsZSB3aXRob3V0IC1vIGZpcnN0LCBkaXNyZWdhcmQgYS5vdXQuCisjIEl0IHdpbGwgaGVscCB1cyBkaWFnbm9zZSBicm9rZW4gY29tcGlsZXJzLCBhbmQgZmluZGluZyBvdXQgYW4gaW50dWl0aW9uCisjIG9mIGV4ZWV4dC4KK3sgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgd2hldGhlciB0aGUgQyBjb21waWxlciB3b3JrcyIgPiY1CiskYXNfZWNob19uICJjaGVja2luZyB3aGV0aGVyIHRoZSBDIGNvbXBpbGVyIHdvcmtzLi4uICIgPiY2OyB9CithY19saW5rX2RlZmF1bHQ9YCRhc19lY2hvICIkYWNfbGluayIgfCBzZWQgJ3MvIC1vICpjb25mdGVzdFteIF0qLy8nYAorCisjIFRoZSBwb3NzaWJsZSBvdXRwdXQgZmlsZXM6CithY19maWxlcz0iYS5vdXQgY29uZnRlc3QuZXhlIGNvbmZ0ZXN0IGEuZXhlIGFfb3V0LmV4ZSBiLm91dCBjb25mdGVzdC4qIgorCithY19ybWZpbGVzPQorZm9yIGFjX2ZpbGUgaW4gJGFjX2ZpbGVzCitkbworICBjYXNlICRhY19maWxlIGluCisgICAgKi4kYWNfZXh0IHwgKi54Y29mZiB8ICoudGRzIHwgKi5kIHwgKi5wZGIgfCAqLnhTWU0gfCAqLmJiIHwgKi5iYmcgfCAqLm1hcCB8ICouaW5mIHwgKi5kU1lNIHwgKi5vIHwgKi5vYmogKSA7OworICAgICogKSBhY19ybWZpbGVzPSIkYWNfcm1maWxlcyAkYWNfZmlsZSI7OworICBlc2FjCitkb25lCitybSAtZiAkYWNfcm1maWxlcworCitpZiB7IHsgYWNfdHJ5PSIkYWNfbGlua19kZWZhdWx0IgorY2FzZSAiKCgkYWNfdHJ5IiBpbgorICAqXCIqIHwgKlxgKiB8ICpcXCopIGFjX3RyeV9lY2hvPVwkYWNfdHJ5OzsKKyAgKikgYWNfdHJ5X2VjaG89JGFjX3RyeTs7Citlc2FjCitldmFsIGFjX3RyeV9lY2hvPSJcIlwkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306ICRhY190cnlfZWNob1wiIgorJGFzX2VjaG8gIiRhY190cnlfZWNobyI7IH0gPiY1CisgIChldmFsICIkYWNfbGlua19kZWZhdWx0IikgMj4mNQorICBhY19zdGF0dXM9JD8KKyAgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CisgIHRlc3QgJGFjX3N0YXR1cyA9IDA7IH07IHRoZW4gOgorICAjIEF1dG9jb25mLTIuMTMgY291bGQgc2V0IHRoZSBhY19jdl9leGVleHQgdmFyaWFibGUgdG8gYG5vJy4KKyMgU28gaWdub3JlIGEgdmFsdWUgb2YgYG5vJywgb3RoZXJ3aXNlIHRoaXMgd291bGQgbGVhZCB0byBgRVhFRVhUID0gbm8nCisjIGluIGEgTWFrZWZpbGUuICBXZSBzaG91bGQgbm90IG92ZXJyaWRlIGFjX2N2X2V4ZWV4dCBpZiBpdCB3YXMgY2FjaGVkLAorIyBzbyB0aGF0IHRoZSB1c2VyIGNhbiBzaG9ydC1jaXJjdWl0IHRoaXMgdGVzdCBmb3IgY29tcGlsZXJzIHVua25vd24gdG8KKyMgQXV0b2NvbmYuCitmb3IgYWNfZmlsZSBpbiAkYWNfZmlsZXMgJycKK2RvCisgIHRlc3QgLWYgIiRhY19maWxlIiB8fCBjb250aW51ZQorICBjYXNlICRhY19maWxlIGluCisgICAgKi4kYWNfZXh0IHwgKi54Y29mZiB8ICoudGRzIHwgKi5kIHwgKi5wZGIgfCAqLnhTWU0gfCAqLmJiIHwgKi5iYmcgfCAqLm1hcCB8ICouaW5mIHwgKi5kU1lNIHwgKi5vIHwgKi5vYmogKQorCTs7CisgICAgW2FiXS5vdXQgKQorCSMgV2UgZm91bmQgdGhlIGRlZmF1bHQgZXhlY3V0YWJsZSwgYnV0IGV4ZWV4dD0nJyBpcyBtb3N0CisJIyBjZXJ0YWlubHkgcmlnaHQuCisJYnJlYWs7OworICAgICouKiApCisJaWYgdGVzdCAiJHthY19jdl9leGVleHQrc2V0fSIgPSBzZXQgJiYgdGVzdCAiJGFjX2N2X2V4ZWV4dCIgIT0gbm87CisJdGhlbiA6OyBlbHNlCisJICAgYWNfY3ZfZXhlZXh0PWBleHByICIkYWNfZmlsZSIgOiAnW14uXSpcKFwuLipcKSdgCisJZmkKKwkjIFdlIHNldCBhY19jdl9leGVleHQgaGVyZSBiZWNhdXNlIHRoZSBsYXRlciB0ZXN0IGZvciBpdCBpcyBub3QKKwkjIHNhZmU6IGNyb3NzIGNvbXBpbGVycyBtYXkgbm90IGFkZCB0aGUgc3VmZml4IGlmIGdpdmVuIGFuIGAtbycKKwkjIGFyZ3VtZW50LCBzbyB3ZSBtYXkgbmVlZCB0byBrbm93IGl0IGF0IHRoYXQgcG9pbnQgYWxyZWFkeS4KKwkjIEV2ZW4gaWYgdGhpcyBzZWN0aW9uIGxvb2tzIGNydWZ0eTogaXQgaGFzIHRoZSBhZHZhbnRhZ2Ugb2YKKwkjIGFjdHVhbGx5IHdvcmtpbmcuCisJYnJlYWs7OworICAgICogKQorCWJyZWFrOzsKKyAgZXNhYworZG9uZQordGVzdCAiJGFjX2N2X2V4ZWV4dCIgPSBubyAmJiBhY19jdl9leGVleHQ9CisKK2Vsc2UKKyAgYWNfZmlsZT0nJworZmkKK2lmIHRlc3QgLXogIiRhY19maWxlIjsgdGhlbiA6CisgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiBubyIgPiY1CiskYXNfZWNobyAibm8iID4mNjsgfQorJGFzX2VjaG8gIiRhc19tZTogZmFpbGVkIHByb2dyYW0gd2FzOiIgPiY1CitzZWQgJ3MvXi98IC8nIGNvbmZ0ZXN0LiRhY19leHQgPiY1CisKK3sgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBlcnJvcjogaW4gXGAkYWNfcHdkJzoiID4mNQorJGFzX2VjaG8gIiRhc19tZTogZXJyb3I6IGluIFxgJGFjX3B3ZCc6IiA+JjI7fQorYXNfZm5fZXJyb3IgNzcgIkMgY29tcGlsZXIgY2Fubm90IGNyZWF0ZSBleGVjdXRhYmxlcworU2VlIFxgY29uZmlnLmxvZycgZm9yIG1vcmUgZGV0YWlscyIgIiRMSU5FTk8iIDU7IH0KK2Vsc2UKKyAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6IHllcyIgPiY1CiskYXNfZWNobyAieWVzIiA+JjY7IH0KK2ZpCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIGZvciBDIGNvbXBpbGVyIGRlZmF1bHQgb3V0cHV0IGZpbGUgbmFtZSIgPiY1CiskYXNfZWNob19uICJjaGVja2luZyBmb3IgQyBjb21waWxlciBkZWZhdWx0IG91dHB1dCBmaWxlIG5hbWUuLi4gIiA+JjY7IH0KK3sgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiAkYWNfZmlsZSIgPiY1CiskYXNfZWNobyAiJGFjX2ZpbGUiID4mNjsgfQorYWNfZXhlZXh0PSRhY19jdl9leGVleHQKKworcm0gLWYgLXIgYS5vdXQgYS5vdXQuZFNZTSBhLmV4ZSBjb25mdGVzdCRhY19jdl9leGVleHQgYi5vdXQKK2FjX2NsZWFuX2ZpbGVzPSRhY19jbGVhbl9maWxlc19zYXZlCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIGZvciBzdWZmaXggb2YgZXhlY3V0YWJsZXMiID4mNQorJGFzX2VjaG9fbiAiY2hlY2tpbmcgZm9yIHN1ZmZpeCBvZiBleGVjdXRhYmxlcy4uLiAiID4mNjsgfQoraWYgeyB7IGFjX3RyeT0iJGFjX2xpbmsiCitjYXNlICIoKCRhY190cnkiIGluCisgICpcIiogfCAqXGAqIHwgKlxcKikgYWNfdHJ5X2VjaG89XCRhY190cnk7OworICAqKSBhY190cnlfZWNobz0kYWNfdHJ5OzsKK2VzYWMKK2V2YWwgYWNfdHJ5X2VjaG89IlwiXCRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogJGFjX3RyeV9lY2hvXCIiCiskYXNfZWNobyAiJGFjX3RyeV9lY2hvIjsgfSA+JjUKKyAgKGV2YWwgIiRhY19saW5rIikgMj4mNQorICBhY19zdGF0dXM9JD8KKyAgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CisgIHRlc3QgJGFjX3N0YXR1cyA9IDA7IH07IHRoZW4gOgorICAjIElmIGJvdGggYGNvbmZ0ZXN0LmV4ZScgYW5kIGBjb25mdGVzdCcgYXJlIGBwcmVzZW50JyAod2VsbCwgb2JzZXJ2YWJsZSkKKyMgY2F0Y2ggYGNvbmZ0ZXN0LmV4ZScuICBGb3IgaW5zdGFuY2Ugd2l0aCBDeWd3aW4sIGBscyBjb25mdGVzdCcgd2lsbAorIyB3b3JrIHByb3Blcmx5IChpLmUuLCByZWZlciB0byBgY29uZnRlc3QuZXhlJyksIHdoaWxlIGl0IHdvbid0IHdpdGgKKyMgYHJtJy4KK2ZvciBhY19maWxlIGluIGNvbmZ0ZXN0LmV4ZSBjb25mdGVzdCBjb25mdGVzdC4qOyBkbworICB0ZXN0IC1mICIkYWNfZmlsZSIgfHwgY29udGludWUKKyAgY2FzZSAkYWNfZmlsZSBpbgorICAgICouJGFjX2V4dCB8ICoueGNvZmYgfCAqLnRkcyB8ICouZCB8ICoucGRiIHwgKi54U1lNIHwgKi5iYiB8ICouYmJnIHwgKi5tYXAgfCAqLmluZiB8ICouZFNZTSB8ICoubyB8ICoub2JqICkgOzsKKyAgICAqLiogKSBhY19jdl9leGVleHQ9YGV4cHIgIiRhY19maWxlIiA6ICdbXi5dKlwoXC4uKlwpJ2AKKwkgIGJyZWFrOzsKKyAgICAqICkgYnJlYWs7OworICBlc2FjCitkb25lCitlbHNlCisgIHsgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBlcnJvcjogaW4gXGAkYWNfcHdkJzoiID4mNQorJGFzX2VjaG8gIiRhc19tZTogZXJyb3I6IGluIFxgJGFjX3B3ZCc6IiA+JjI7fQorYXNfZm5fZXJyb3IgJD8gImNhbm5vdCBjb21wdXRlIHN1ZmZpeCBvZiBleGVjdXRhYmxlczogY2Fubm90IGNvbXBpbGUgYW5kIGxpbmsKK1NlZSBcYGNvbmZpZy5sb2cnIGZvciBtb3JlIGRldGFpbHMiICIkTElORU5PIiA1OyB9CitmaQorcm0gLWYgY29uZnRlc3QgY29uZnRlc3QkYWNfY3ZfZXhlZXh0Cit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogJGFjX2N2X2V4ZWV4dCIgPiY1CiskYXNfZWNobyAiJGFjX2N2X2V4ZWV4dCIgPiY2OyB9CisKK3JtIC1mIGNvbmZ0ZXN0LiRhY19leHQKK0VYRUVYVD0kYWNfY3ZfZXhlZXh0CithY19leGVleHQ9JEVYRUVYVAorY2F0IGNvbmZkZWZzLmggLSA8PF9BQ0VPRiA+Y29uZnRlc3QuJGFjX2V4dAorLyogZW5kIGNvbmZkZWZzLmguICAqLworI2luY2x1ZGUgPHN0ZGlvLmg+CitpbnQKK21haW4gKCkKK3sKK0ZJTEUgKmYgPSBmb3BlbiAoImNvbmZ0ZXN0Lm91dCIsICJ3Iik7CisgcmV0dXJuIGZlcnJvciAoZikgfHwgZmNsb3NlIChmKSAhPSAwOworCisgIDsKKyAgcmV0dXJuIDA7Cit9CitfQUNFT0YKK2FjX2NsZWFuX2ZpbGVzPSIkYWNfY2xlYW5fZmlsZXMgY29uZnRlc3Qub3V0IgorIyBDaGVjayB0aGF0IHRoZSBjb21waWxlciBwcm9kdWNlcyBleGVjdXRhYmxlcyB3ZSBjYW4gcnVuLiAgSWYgbm90LCBlaXRoZXIKKyMgdGhlIGNvbXBpbGVyIGlzIGJyb2tlbiwgb3Igd2UgY3Jvc3MgY29tcGlsZS4KK3sgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgd2hldGhlciB3ZSBhcmUgY3Jvc3MgY29tcGlsaW5nIiA+JjUKKyRhc19lY2hvX24gImNoZWNraW5nIHdoZXRoZXIgd2UgYXJlIGNyb3NzIGNvbXBpbGluZy4uLiAiID4mNjsgfQoraWYgdGVzdCAiJGNyb3NzX2NvbXBpbGluZyIgIT0geWVzOyB0aGVuCisgIHsgeyBhY190cnk9IiRhY19saW5rIgorY2FzZSAiKCgkYWNfdHJ5IiBpbgorICAqXCIqIHwgKlxgKiB8ICpcXCopIGFjX3RyeV9lY2hvPVwkYWNfdHJ5OzsKKyAgKikgYWNfdHJ5X2VjaG89JGFjX3RyeTs7Citlc2FjCitldmFsIGFjX3RyeV9lY2hvPSJcIlwkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306ICRhY190cnlfZWNob1wiIgorJGFzX2VjaG8gIiRhY190cnlfZWNobyI7IH0gPiY1CisgIChldmFsICIkYWNfbGluayIpIDI+JjUKKyAgYWNfc3RhdHVzPSQ/CisgICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IFwkPyA9ICRhY19zdGF0dXMiID4mNQorICB0ZXN0ICRhY19zdGF0dXMgPSAwOyB9CisgIGlmIHsgYWNfdHJ5PScuL2NvbmZ0ZXN0JGFjX2N2X2V4ZWV4dCcKKyAgeyB7IGNhc2UgIigoJGFjX3RyeSIgaW4KKyAgKlwiKiB8ICpcYCogfCAqXFwqKSBhY190cnlfZWNobz1cJGFjX3RyeTs7CisgICopIGFjX3RyeV9lY2hvPSRhY190cnk7OworZXNhYworZXZhbCBhY190cnlfZWNobz0iXCJcJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiAkYWNfdHJ5X2VjaG9cIiIKKyRhc19lY2hvICIkYWNfdHJ5X2VjaG8iOyB9ID4mNQorICAoZXZhbCAiJGFjX3RyeSIpIDI+JjUKKyAgYWNfc3RhdHVzPSQ/CisgICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IFwkPyA9ICRhY19zdGF0dXMiID4mNQorICB0ZXN0ICRhY19zdGF0dXMgPSAwOyB9OyB9OyB0aGVuCisgICAgY3Jvc3NfY29tcGlsaW5nPW5vCisgIGVsc2UKKyAgICBpZiB0ZXN0ICIkY3Jvc3NfY29tcGlsaW5nIiA9IG1heWJlOyB0aGVuCisJY3Jvc3NfY29tcGlsaW5nPXllcworICAgIGVsc2UKKwl7IHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogZXJyb3I6IGluIFxgJGFjX3B3ZCc6IiA+JjUKKyRhc19lY2hvICIkYXNfbWU6IGVycm9yOiBpbiBcYCRhY19wd2QnOiIgPiYyO30KK2FzX2ZuX2Vycm9yICQ/ICJjYW5ub3QgcnVuIEMgY29tcGlsZWQgcHJvZ3JhbXMuCitJZiB5b3UgbWVhbnQgdG8gY3Jvc3MgY29tcGlsZSwgdXNlIFxgLS1ob3N0Jy4KK1NlZSBcYGNvbmZpZy5sb2cnIGZvciBtb3JlIGRldGFpbHMiICIkTElORU5PIiA1OyB9CisgICAgZmkKKyAgZmkKK2ZpCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogJGNyb3NzX2NvbXBpbGluZyIgPiY1CiskYXNfZWNobyAiJGNyb3NzX2NvbXBpbGluZyIgPiY2OyB9CisKK3JtIC1mIGNvbmZ0ZXN0LiRhY19leHQgY29uZnRlc3QkYWNfY3ZfZXhlZXh0IGNvbmZ0ZXN0Lm91dAorYWNfY2xlYW5fZmlsZXM9JGFjX2NsZWFuX2ZpbGVzX3NhdmUKK3sgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgZm9yIHN1ZmZpeCBvZiBvYmplY3QgZmlsZXMiID4mNQorJGFzX2VjaG9fbiAiY2hlY2tpbmcgZm9yIHN1ZmZpeCBvZiBvYmplY3QgZmlsZXMuLi4gIiA+JjY7IH0KK2lmICR7YWNfY3Zfb2JqZXh0Kzp9IGZhbHNlOyB0aGVuIDoKKyAgJGFzX2VjaG9fbiAiKGNhY2hlZCkgIiA+JjYKK2Vsc2UKKyAgY2F0IGNvbmZkZWZzLmggLSA8PF9BQ0VPRiA+Y29uZnRlc3QuJGFjX2V4dAorLyogZW5kIGNvbmZkZWZzLmguICAqLworCitpbnQKK21haW4gKCkKK3sKKworICA7CisgIHJldHVybiAwOworfQorX0FDRU9GCitybSAtZiBjb25mdGVzdC5vIGNvbmZ0ZXN0Lm9iagoraWYgeyB7IGFjX3RyeT0iJGFjX2NvbXBpbGUiCitjYXNlICIoKCRhY190cnkiIGluCisgICpcIiogfCAqXGAqIHwgKlxcKikgYWNfdHJ5X2VjaG89XCRhY190cnk7OworICAqKSBhY190cnlfZWNobz0kYWNfdHJ5OzsKK2VzYWMKK2V2YWwgYWNfdHJ5X2VjaG89IlwiXCRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogJGFjX3RyeV9lY2hvXCIiCiskYXNfZWNobyAiJGFjX3RyeV9lY2hvIjsgfSA+JjUKKyAgKGV2YWwgIiRhY19jb21waWxlIikgMj4mNQorICBhY19zdGF0dXM9JD8KKyAgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CisgIHRlc3QgJGFjX3N0YXR1cyA9IDA7IH07IHRoZW4gOgorICBmb3IgYWNfZmlsZSBpbiBjb25mdGVzdC5vIGNvbmZ0ZXN0Lm9iaiBjb25mdGVzdC4qOyBkbworICB0ZXN0IC1mICIkYWNfZmlsZSIgfHwgY29udGludWU7CisgIGNhc2UgJGFjX2ZpbGUgaW4KKyAgICAqLiRhY19leHQgfCAqLnhjb2ZmIHwgKi50ZHMgfCAqLmQgfCAqLnBkYiB8ICoueFNZTSB8ICouYmIgfCAqLmJiZyB8ICoubWFwIHwgKi5pbmYgfCAqLmRTWU0gKSA7OworICAgICopIGFjX2N2X29iamV4dD1gZXhwciAiJGFjX2ZpbGUiIDogJy4qXC5cKC4qXCknYAorICAgICAgIGJyZWFrOzsKKyAgZXNhYworZG9uZQorZWxzZQorICAkYXNfZWNobyAiJGFzX21lOiBmYWlsZWQgcHJvZ3JhbSB3YXM6IiA+JjUKK3NlZCAncy9eL3wgLycgY29uZnRlc3QuJGFjX2V4dCA+JjUKKworeyB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGVycm9yOiBpbiBcYCRhY19wd2QnOiIgPiY1CiskYXNfZWNobyAiJGFzX21lOiBlcnJvcjogaW4gXGAkYWNfcHdkJzoiID4mMjt9Cithc19mbl9lcnJvciAkPyAiY2Fubm90IGNvbXB1dGUgc3VmZml4IG9mIG9iamVjdCBmaWxlczogY2Fubm90IGNvbXBpbGUKK1NlZSBcYGNvbmZpZy5sb2cnIGZvciBtb3JlIGRldGFpbHMiICIkTElORU5PIiA1OyB9CitmaQorcm0gLWYgY29uZnRlc3QuJGFjX2N2X29iamV4dCBjb25mdGVzdC4kYWNfZXh0CitmaQoreyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6ICRhY19jdl9vYmpleHQiID4mNQorJGFzX2VjaG8gIiRhY19jdl9vYmpleHQiID4mNjsgfQorT0JKRVhUPSRhY19jdl9vYmpleHQKK2FjX29iamV4dD0kT0JKRVhUCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIHdoZXRoZXIgd2UgYXJlIHVzaW5nIHRoZSBHTlUgQyBjb21waWxlciIgPiY1CiskYXNfZWNob19uICJjaGVja2luZyB3aGV0aGVyIHdlIGFyZSB1c2luZyB0aGUgR05VIEMgY29tcGlsZXIuLi4gIiA+JjY7IH0KK2lmICR7YWNfY3ZfY19jb21waWxlcl9nbnUrOn0gZmFsc2U7IHRoZW4gOgorICAkYXNfZWNob19uICIoY2FjaGVkKSAiID4mNgorZWxzZQorICBjYXQgY29uZmRlZnMuaCAtIDw8X0FDRU9GID5jb25mdGVzdC4kYWNfZXh0CisvKiBlbmQgY29uZmRlZnMuaC4gICovCisKK2ludAorbWFpbiAoKQoreworI2lmbmRlZiBfX0dOVUNfXworICAgICAgIGNob2tlIG1lCisjZW5kaWYKKworICA7CisgIHJldHVybiAwOworfQorX0FDRU9GCitpZiBhY19mbl9jX3RyeV9jb21waWxlICIkTElORU5PIjsgdGhlbiA6CisgIGFjX2NvbXBpbGVyX2dudT15ZXMKK2Vsc2UKKyAgYWNfY29tcGlsZXJfZ251PW5vCitmaQorcm0gLWYgY29yZSBjb25mdGVzdC5lcnIgY29uZnRlc3QuJGFjX29iamV4dCBjb25mdGVzdC4kYWNfZXh0CithY19jdl9jX2NvbXBpbGVyX2dudT0kYWNfY29tcGlsZXJfZ251CisKK2ZpCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogJGFjX2N2X2NfY29tcGlsZXJfZ251IiA+JjUKKyRhc19lY2hvICIkYWNfY3ZfY19jb21waWxlcl9nbnUiID4mNjsgfQoraWYgdGVzdCAkYWNfY29tcGlsZXJfZ251ID0geWVzOyB0aGVuCisgIEdDQz15ZXMKK2Vsc2UKKyAgR0NDPQorZmkKK2FjX3Rlc3RfQ0ZMQUdTPSR7Q0ZMQUdTK3NldH0KK2FjX3NhdmVfQ0ZMQUdTPSRDRkxBR1MKK3sgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgd2hldGhlciAkQ0MgYWNjZXB0cyAtZyIgPiY1CiskYXNfZWNob19uICJjaGVja2luZyB3aGV0aGVyICRDQyBhY2NlcHRzIC1nLi4uICIgPiY2OyB9CitpZiAke2FjX2N2X3Byb2dfY2NfZys6fSBmYWxzZTsgdGhlbiA6CisgICRhc19lY2hvX24gIihjYWNoZWQpICIgPiY2CitlbHNlCisgIGFjX3NhdmVfY193ZXJyb3JfZmxhZz0kYWNfY193ZXJyb3JfZmxhZworICAgYWNfY193ZXJyb3JfZmxhZz15ZXMKKyAgIGFjX2N2X3Byb2dfY2NfZz1ubworICAgQ0ZMQUdTPSItZyIKKyAgIGNhdCBjb25mZGVmcy5oIC0gPDxfQUNFT0YgPmNvbmZ0ZXN0LiRhY19leHQKKy8qIGVuZCBjb25mZGVmcy5oLiAgKi8KKworaW50CittYWluICgpCit7CisKKyAgOworICByZXR1cm4gMDsKK30KK19BQ0VPRgoraWYgYWNfZm5fY190cnlfY29tcGlsZSAiJExJTkVOTyI7IHRoZW4gOgorICBhY19jdl9wcm9nX2NjX2c9eWVzCitlbHNlCisgIENGTEFHUz0iIgorICAgICAgY2F0IGNvbmZkZWZzLmggLSA8PF9BQ0VPRiA+Y29uZnRlc3QuJGFjX2V4dAorLyogZW5kIGNvbmZkZWZzLmguICAqLworCitpbnQKK21haW4gKCkKK3sKKworICA7CisgIHJldHVybiAwOworfQorX0FDRU9GCitpZiBhY19mbl9jX3RyeV9jb21waWxlICIkTElORU5PIjsgdGhlbiA6CisKK2Vsc2UKKyAgYWNfY193ZXJyb3JfZmxhZz0kYWNfc2F2ZV9jX3dlcnJvcl9mbGFnCisJIENGTEFHUz0iLWciCisJIGNhdCBjb25mZGVmcy5oIC0gPDxfQUNFT0YgPmNvbmZ0ZXN0LiRhY19leHQKKy8qIGVuZCBjb25mZGVmcy5oLiAgKi8KKworaW50CittYWluICgpCit7CisKKyAgOworICByZXR1cm4gMDsKK30KK19BQ0VPRgoraWYgYWNfZm5fY190cnlfY29tcGlsZSAiJExJTkVOTyI7IHRoZW4gOgorICBhY19jdl9wcm9nX2NjX2c9eWVzCitmaQorcm0gLWYgY29yZSBjb25mdGVzdC5lcnIgY29uZnRlc3QuJGFjX29iamV4dCBjb25mdGVzdC4kYWNfZXh0CitmaQorcm0gLWYgY29yZSBjb25mdGVzdC5lcnIgY29uZnRlc3QuJGFjX29iamV4dCBjb25mdGVzdC4kYWNfZXh0CitmaQorcm0gLWYgY29yZSBjb25mdGVzdC5lcnIgY29uZnRlc3QuJGFjX29iamV4dCBjb25mdGVzdC4kYWNfZXh0CisgICBhY19jX3dlcnJvcl9mbGFnPSRhY19zYXZlX2Nfd2Vycm9yX2ZsYWcKK2ZpCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogJGFjX2N2X3Byb2dfY2NfZyIgPiY1CiskYXNfZWNobyAiJGFjX2N2X3Byb2dfY2NfZyIgPiY2OyB9CitpZiB0ZXN0ICIkYWNfdGVzdF9DRkxBR1MiID0gc2V0OyB0aGVuCisgIENGTEFHUz0kYWNfc2F2ZV9DRkxBR1MKK2VsaWYgdGVzdCAkYWNfY3ZfcHJvZ19jY19nID0geWVzOyB0aGVuCisgIGlmIHRlc3QgIiRHQ0MiID0geWVzOyB0aGVuCisgICAgQ0ZMQUdTPSItZyAtTzIiCisgIGVsc2UKKyAgICBDRkxBR1M9Ii1nIgorICBmaQorZWxzZQorICBpZiB0ZXN0ICIkR0NDIiA9IHllczsgdGhlbgorICAgIENGTEFHUz0iLU8yIgorICBlbHNlCisgICAgQ0ZMQUdTPQorICBmaQorZmkKK3sgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgZm9yICRDQyBvcHRpb24gdG8gYWNjZXB0IElTTyBDODkiID4mNQorJGFzX2VjaG9fbiAiY2hlY2tpbmcgZm9yICRDQyBvcHRpb24gdG8gYWNjZXB0IElTTyBDODkuLi4gIiA+JjY7IH0KK2lmICR7YWNfY3ZfcHJvZ19jY19jODkrOn0gZmFsc2U7IHRoZW4gOgorICAkYXNfZWNob19uICIoY2FjaGVkKSAiID4mNgorZWxzZQorICBhY19jdl9wcm9nX2NjX2M4OT1ubworYWNfc2F2ZV9DQz0kQ0MKK2NhdCBjb25mZGVmcy5oIC0gPDxfQUNFT0YgPmNvbmZ0ZXN0LiRhY19leHQKKy8qIGVuZCBjb25mZGVmcy5oLiAgKi8KKyNpbmNsdWRlIDxzdGRhcmcuaD4KKyNpbmNsdWRlIDxzdGRpby5oPgorI2luY2x1ZGUgPHN5cy90eXBlcy5oPgorI2luY2x1ZGUgPHN5cy9zdGF0Lmg+CisvKiBNb3N0IG9mIHRoZSBmb2xsb3dpbmcgdGVzdHMgYXJlIHN0b2xlbiBmcm9tIFJDUyA1LjcncyBzcmMvY29uZi5zaC4gICovCitzdHJ1Y3QgYnVmIHsgaW50IHg7IH07CitGSUxFICogKCpyY3NvcGVuKSAoc3RydWN0IGJ1ZiAqLCBzdHJ1Y3Qgc3RhdCAqLCBpbnQpOworc3RhdGljIGNoYXIgKmUgKHAsIGkpCisgICAgIGNoYXIgKipwOworICAgICBpbnQgaTsKK3sKKyAgcmV0dXJuIHBbaV07Cit9CitzdGF0aWMgY2hhciAqZiAoY2hhciAqICgqZykgKGNoYXIgKiosIGludCksIGNoYXIgKipwLCAuLi4pCit7CisgIGNoYXIgKnM7CisgIHZhX2xpc3QgdjsKKyAgdmFfc3RhcnQgKHYscCk7CisgIHMgPSBnIChwLCB2YV9hcmcgKHYsaW50KSk7CisgIHZhX2VuZCAodik7CisgIHJldHVybiBzOworfQorCisvKiBPU0YgNC4wIENvbXBhcSBjYyBpcyBzb21lIHNvcnQgb2YgYWxtb3N0LUFOU0kgYnkgZGVmYXVsdC4gIEl0IGhhcworICAgZnVuY3Rpb24gcHJvdG90eXBlcyBhbmQgc3R1ZmYsIGJ1dCBub3QgJ1x4SEgnIGhleCBjaGFyYWN0ZXIgY29uc3RhbnRzLgorICAgVGhlc2UgZG9uJ3QgcHJvdm9rZSBhbiBlcnJvciB1bmZvcnR1bmF0ZWx5LCBpbnN0ZWFkIGFyZSBzaWxlbnRseSB0cmVhdGVkCisgICBhcyAneCcuICBUaGUgZm9sbG93aW5nIGluZHVjZXMgYW4gZXJyb3IsIHVudGlsIC1zdGQgaXMgYWRkZWQgdG8gZ2V0CisgICBwcm9wZXIgQU5TSSBtb2RlLiAgQ3VyaW91c2x5ICdceDAwJyE9J3gnIGFsd2F5cyBjb21lcyBvdXQgdHJ1ZSwgZm9yIGFuCisgICBhcnJheSBzaXplIGF0IGxlYXN0LiAgSXQncyBuZWNlc3NhcnkgdG8gd3JpdGUgJ1x4MDAnPT0wIHRvIGdldCBzb21ldGhpbmcKKyAgIHRoYXQncyB0cnVlIG9ubHkgd2l0aCAtc3RkLiAgKi8KK2ludCBvc2Y0X2NjX2FycmF5IFsnXHgwMCcgPT0gMCA/IDEgOiAtMV07CisKKy8qIElCTSBDIDYgZm9yIEFJWCBpcyBhbG1vc3QtQU5TSSBieSBkZWZhdWx0LCBidXQgaXQgcmVwbGFjZXMgbWFjcm8gcGFyYW1ldGVycworICAgaW5zaWRlIHN0cmluZ3MgYW5kIGNoYXJhY3RlciBjb25zdGFudHMuICAqLworI2RlZmluZSBGT08oeCkgJ3gnCitpbnQgeGxjNl9jY19hcnJheVtGT08oYSkgPT0gJ3gnID8gMSA6IC0xXTsKKworaW50IHRlc3QgKGludCBpLCBkb3VibGUgeCk7CitzdHJ1Y3QgczEge2ludCAoKmYpIChpbnQgYSk7fTsKK3N0cnVjdCBzMiB7aW50ICgqZikgKGRvdWJsZSBhKTt9OworaW50IHBhaXJuYW1lcyAoaW50LCBjaGFyICoqLCBGSUxFICooKikoc3RydWN0IGJ1ZiAqLCBzdHJ1Y3Qgc3RhdCAqLCBpbnQpLCBpbnQsIGludCk7CitpbnQgYXJnYzsKK2NoYXIgKiphcmd2OworaW50CittYWluICgpCit7CityZXR1cm4gZiAoZSwgYXJndiwgMCkgIT0gYXJndlswXSAgfHwgIGYgKGUsIGFyZ3YsIDEpICE9IGFyZ3ZbMV07CisgIDsKKyAgcmV0dXJuIDA7Cit9CitfQUNFT0YKK2ZvciBhY19hcmcgaW4gJycgLXFsYW5nbHZsPWV4dGM4OSAtcWxhbmdsdmw9YW5zaSAtc3RkIFwKKwktQWUgIi1BYSAtRF9IUFVYX1NPVVJDRSIgIi1YYyAtRF9fRVhURU5TSU9OU19fIgorZG8KKyAgQ0M9IiRhY19zYXZlX0NDICRhY19hcmciCisgIGlmIGFjX2ZuX2NfdHJ5X2NvbXBpbGUgIiRMSU5FTk8iOyB0aGVuIDoKKyAgYWNfY3ZfcHJvZ19jY19jODk9JGFjX2FyZworZmkKK3JtIC1mIGNvcmUgY29uZnRlc3QuZXJyIGNvbmZ0ZXN0LiRhY19vYmpleHQKKyAgdGVzdCAieCRhY19jdl9wcm9nX2NjX2M4OSIgIT0gInhubyIgJiYgYnJlYWsKK2RvbmUKK3JtIC1mIGNvbmZ0ZXN0LiRhY19leHQKK0NDPSRhY19zYXZlX0NDCisKK2ZpCisjIEFDX0NBQ0hFX1ZBTAorY2FzZSAieCRhY19jdl9wcm9nX2NjX2M4OSIgaW4KKyAgeCkKKyAgICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogbm9uZSBuZWVkZWQiID4mNQorJGFzX2VjaG8gIm5vbmUgbmVlZGVkIiA+JjY7IH0gOzsKKyAgeG5vKQorICAgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiB1bnN1cHBvcnRlZCIgPiY1CiskYXNfZWNobyAidW5zdXBwb3J0ZWQiID4mNjsgfSA7OworICAqKQorICAgIENDPSIkQ0MgJGFjX2N2X3Byb2dfY2NfYzg5IgorICAgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiAkYWNfY3ZfcHJvZ19jY19jODkiID4mNQorJGFzX2VjaG8gIiRhY19jdl9wcm9nX2NjX2M4OSIgPiY2OyB9IDs7Citlc2FjCitpZiB0ZXN0ICJ4JGFjX2N2X3Byb2dfY2NfYzg5IiAhPSB4bm87IHRoZW4gOgorCitmaQorCithY19leHQ9YworYWNfY3BwPSckQ1BQICRDUFBGTEFHUycKK2FjX2NvbXBpbGU9JyRDQyAtYyAkQ0ZMQUdTICRDUFBGTEFHUyBjb25mdGVzdC4kYWNfZXh0ID4mNScKK2FjX2xpbms9JyRDQyAtbyBjb25mdGVzdCRhY19leGVleHQgJENGTEFHUyAkQ1BQRkxBR1MgJExERkxBR1MgY29uZnRlc3QuJGFjX2V4dCAkTElCUyA+JjUnCithY19jb21waWxlcl9nbnU9JGFjX2N2X2NfY29tcGlsZXJfZ251CisKKworYWNfZXh0PWMKK2FjX2NwcD0nJENQUCAkQ1BQRkxBR1MnCithY19jb21waWxlPSckQ0MgLWMgJENGTEFHUyAkQ1BQRkxBR1MgY29uZnRlc3QuJGFjX2V4dCA+JjUnCithY19saW5rPSckQ0MgLW8gY29uZnRlc3QkYWNfZXhlZXh0ICRDRkxBR1MgJENQUEZMQUdTICRMREZMQUdTIGNvbmZ0ZXN0LiRhY19leHQgJExJQlMgPiY1JworYWNfY29tcGlsZXJfZ251PSRhY19jdl9jX2NvbXBpbGVyX2dudQoreyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBjaGVja2luZyBob3cgdG8gcnVuIHRoZSBDIHByZXByb2Nlc3NvciIgPiY1CiskYXNfZWNob19uICJjaGVja2luZyBob3cgdG8gcnVuIHRoZSBDIHByZXByb2Nlc3Nvci4uLiAiID4mNjsgfQorIyBPbiBTdW5zLCBzb21ldGltZXMgJENQUCBuYW1lcyBhIGRpcmVjdG9yeS4KK2lmIHRlc3QgLW4gIiRDUFAiICYmIHRlc3QgLWQgIiRDUFAiOyB0aGVuCisgIENQUD0KK2ZpCitpZiB0ZXN0IC16ICIkQ1BQIjsgdGhlbgorICBpZiAke2FjX2N2X3Byb2dfQ1BQKzp9IGZhbHNlOyB0aGVuIDoKKyAgJGFzX2VjaG9fbiAiKGNhY2hlZCkgIiA+JjYKK2Vsc2UKKyAgICAgICMgRG91YmxlIHF1b3RlcyBiZWNhdXNlIENQUCBuZWVkcyB0byBiZSBleHBhbmRlZAorICAgIGZvciBDUFAgaW4gIiRDQyAtRSIgIiRDQyAtRSAtdHJhZGl0aW9uYWwtY3BwIiAiL2xpYi9jcHAiCisgICAgZG8KKyAgICAgIGFjX3ByZXByb2Nfb2s9ZmFsc2UKK2ZvciBhY19jX3ByZXByb2Nfd2Fybl9mbGFnIGluICcnIHllcworZG8KKyAgIyBVc2UgYSBoZWFkZXIgZmlsZSB0aGF0IGNvbWVzIHdpdGggZ2NjLCBzbyBjb25maWd1cmluZyBnbGliYworICAjIHdpdGggYSBmcmVzaCBjcm9zcy1jb21waWxlciB3b3Jrcy4KKyAgIyBQcmVmZXIgPGxpbWl0cy5oPiB0byA8YXNzZXJ0Lmg+IGlmIF9fU1REQ19fIGlzIGRlZmluZWQsIHNpbmNlCisgICMgPGxpbWl0cy5oPiBleGlzdHMgZXZlbiBvbiBmcmVlc3RhbmRpbmcgY29tcGlsZXJzLgorICAjIE9uIHRoZSBOZVhULCBjYyAtRSBydW5zIHRoZSBjb2RlIHRocm91Z2ggdGhlIGNvbXBpbGVyJ3MgcGFyc2VyLAorICAjIG5vdCBqdXN0IHRocm91Z2ggY3BwLiAiU3ludGF4IGVycm9yIiBpcyBoZXJlIHRvIGNhdGNoIHRoaXMgY2FzZS4KKyAgY2F0IGNvbmZkZWZzLmggLSA8PF9BQ0VPRiA+Y29uZnRlc3QuJGFjX2V4dAorLyogZW5kIGNvbmZkZWZzLmguICAqLworI2lmZGVmIF9fU1REQ19fCisjIGluY2x1ZGUgPGxpbWl0cy5oPgorI2Vsc2UKKyMgaW5jbHVkZSA8YXNzZXJ0Lmg+CisjZW5kaWYKKwkJICAgICBTeW50YXggZXJyb3IKK19BQ0VPRgoraWYgYWNfZm5fY190cnlfY3BwICIkTElORU5PIjsgdGhlbiA6CisKK2Vsc2UKKyAgIyBCcm9rZW46IGZhaWxzIG9uIHZhbGlkIGlucHV0LgorY29udGludWUKK2ZpCitybSAtZiBjb25mdGVzdC5lcnIgY29uZnRlc3QuaSBjb25mdGVzdC4kYWNfZXh0CisKKyAgIyBPSywgd29ya3Mgb24gc2FuZSBjYXNlcy4gIE5vdyBjaGVjayB3aGV0aGVyIG5vbmV4aXN0ZW50IGhlYWRlcnMKKyAgIyBjYW4gYmUgZGV0ZWN0ZWQgYW5kIGhvdy4KKyAgY2F0IGNvbmZkZWZzLmggLSA8PF9BQ0VPRiA+Y29uZnRlc3QuJGFjX2V4dAorLyogZW5kIGNvbmZkZWZzLmguICAqLworI2luY2x1ZGUgPGFjX25vbmV4aXN0ZW50Lmg+CitfQUNFT0YKK2lmIGFjX2ZuX2NfdHJ5X2NwcCAiJExJTkVOTyI7IHRoZW4gOgorICAjIEJyb2tlbjogc3VjY2VzcyBvbiBpbnZhbGlkIGlucHV0LgorY29udGludWUKK2Vsc2UKKyAgIyBQYXNzZXMgYm90aCB0ZXN0cy4KK2FjX3ByZXByb2Nfb2s9OgorYnJlYWsKK2ZpCitybSAtZiBjb25mdGVzdC5lcnIgY29uZnRlc3QuaSBjb25mdGVzdC4kYWNfZXh0CisKK2RvbmUKKyMgQmVjYXVzZSBvZiBgYnJlYWsnLCBfQUNfUFJFUFJPQ19JRkVMU0UncyBjbGVhbmluZyBjb2RlIHdhcyBza2lwcGVkLgorcm0gLWYgY29uZnRlc3QuaSBjb25mdGVzdC5lcnIgY29uZnRlc3QuJGFjX2V4dAoraWYgJGFjX3ByZXByb2Nfb2s7IHRoZW4gOgorICBicmVhaworZmkKKworICAgIGRvbmUKKyAgICBhY19jdl9wcm9nX0NQUD0kQ1BQCisKK2ZpCisgIENQUD0kYWNfY3ZfcHJvZ19DUFAKK2Vsc2UKKyAgYWNfY3ZfcHJvZ19DUFA9JENQUAorZmkKK3sgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiAkQ1BQIiA+JjUKKyRhc19lY2hvICIkQ1BQIiA+JjY7IH0KK2FjX3ByZXByb2Nfb2s9ZmFsc2UKK2ZvciBhY19jX3ByZXByb2Nfd2Fybl9mbGFnIGluICcnIHllcworZG8KKyAgIyBVc2UgYSBoZWFkZXIgZmlsZSB0aGF0IGNvbWVzIHdpdGggZ2NjLCBzbyBjb25maWd1cmluZyBnbGliYworICAjIHdpdGggYSBmcmVzaCBjcm9zcy1jb21waWxlciB3b3Jrcy4KKyAgIyBQcmVmZXIgPGxpbWl0cy5oPiB0byA8YXNzZXJ0Lmg+IGlmIF9fU1REQ19fIGlzIGRlZmluZWQsIHNpbmNlCisgICMgPGxpbWl0cy5oPiBleGlzdHMgZXZlbiBvbiBmcmVlc3RhbmRpbmcgY29tcGlsZXJzLgorICAjIE9uIHRoZSBOZVhULCBjYyAtRSBydW5zIHRoZSBjb2RlIHRocm91Z2ggdGhlIGNvbXBpbGVyJ3MgcGFyc2VyLAorICAjIG5vdCBqdXN0IHRocm91Z2ggY3BwLiAiU3ludGF4IGVycm9yIiBpcyBoZXJlIHRvIGNhdGNoIHRoaXMgY2FzZS4KKyAgY2F0IGNvbmZkZWZzLmggLSA8PF9BQ0VPRiA+Y29uZnRlc3QuJGFjX2V4dAorLyogZW5kIGNvbmZkZWZzLmguICAqLworI2lmZGVmIF9fU1REQ19fCisjIGluY2x1ZGUgPGxpbWl0cy5oPgorI2Vsc2UKKyMgaW5jbHVkZSA8YXNzZXJ0Lmg+CisjZW5kaWYKKwkJICAgICBTeW50YXggZXJyb3IKK19BQ0VPRgoraWYgYWNfZm5fY190cnlfY3BwICIkTElORU5PIjsgdGhlbiA6CisKK2Vsc2UKKyAgIyBCcm9rZW46IGZhaWxzIG9uIHZhbGlkIGlucHV0LgorY29udGludWUKK2ZpCitybSAtZiBjb25mdGVzdC5lcnIgY29uZnRlc3QuaSBjb25mdGVzdC4kYWNfZXh0CisKKyAgIyBPSywgd29ya3Mgb24gc2FuZSBjYXNlcy4gIE5vdyBjaGVjayB3aGV0aGVyIG5vbmV4aXN0ZW50IGhlYWRlcnMKKyAgIyBjYW4gYmUgZGV0ZWN0ZWQgYW5kIGhvdy4KKyAgY2F0IGNvbmZkZWZzLmggLSA8PF9BQ0VPRiA+Y29uZnRlc3QuJGFjX2V4dAorLyogZW5kIGNvbmZkZWZzLmguICAqLworI2luY2x1ZGUgPGFjX25vbmV4aXN0ZW50Lmg+CitfQUNFT0YKK2lmIGFjX2ZuX2NfdHJ5X2NwcCAiJExJTkVOTyI7IHRoZW4gOgorICAjIEJyb2tlbjogc3VjY2VzcyBvbiBpbnZhbGlkIGlucHV0LgorY29udGludWUKK2Vsc2UKKyAgIyBQYXNzZXMgYm90aCB0ZXN0cy4KK2FjX3ByZXByb2Nfb2s9OgorYnJlYWsKK2ZpCitybSAtZiBjb25mdGVzdC5lcnIgY29uZnRlc3QuaSBjb25mdGVzdC4kYWNfZXh0CisKK2RvbmUKKyMgQmVjYXVzZSBvZiBgYnJlYWsnLCBfQUNfUFJFUFJPQ19JRkVMU0UncyBjbGVhbmluZyBjb2RlIHdhcyBza2lwcGVkLgorcm0gLWYgY29uZnRlc3QuaSBjb25mdGVzdC5lcnIgY29uZnRlc3QuJGFjX2V4dAoraWYgJGFjX3ByZXByb2Nfb2s7IHRoZW4gOgorCitlbHNlCisgIHsgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBlcnJvcjogaW4gXGAkYWNfcHdkJzoiID4mNQorJGFzX2VjaG8gIiRhc19tZTogZXJyb3I6IGluIFxgJGFjX3B3ZCc6IiA+JjI7fQorYXNfZm5fZXJyb3IgJD8gIkMgcHJlcHJvY2Vzc29yIFwiJENQUFwiIGZhaWxzIHNhbml0eSBjaGVjaworU2VlIFxgY29uZmlnLmxvZycgZm9yIG1vcmUgZGV0YWlscyIgIiRMSU5FTk8iIDU7IH0KK2ZpCisKK2FjX2V4dD1jCithY19jcHA9JyRDUFAgJENQUEZMQUdTJworYWNfY29tcGlsZT0nJENDIC1jICRDRkxBR1MgJENQUEZMQUdTIGNvbmZ0ZXN0LiRhY19leHQgPiY1JworYWNfbGluaz0nJENDIC1vIGNvbmZ0ZXN0JGFjX2V4ZWV4dCAkQ0ZMQUdTICRDUFBGTEFHUyAkTERGTEFHUyBjb25mdGVzdC4kYWNfZXh0ICRMSUJTID4mNScKK2FjX2NvbXBpbGVyX2dudT0kYWNfY3ZfY19jb21waWxlcl9nbnUKKworCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIGZvciBncmVwIHRoYXQgaGFuZGxlcyBsb25nIGxpbmVzIGFuZCAtZSIgPiY1CiskYXNfZWNob19uICJjaGVja2luZyBmb3IgZ3JlcCB0aGF0IGhhbmRsZXMgbG9uZyBsaW5lcyBhbmQgLWUuLi4gIiA+JjY7IH0KK2lmICR7YWNfY3ZfcGF0aF9HUkVQKzp9IGZhbHNlOyB0aGVuIDoKKyAgJGFzX2VjaG9fbiAiKGNhY2hlZCkgIiA+JjYKK2Vsc2UKKyAgaWYgdGVzdCAteiAiJEdSRVAiOyB0aGVuCisgIGFjX3BhdGhfR1JFUF9mb3VuZD1mYWxzZQorICAjIExvb3AgdGhyb3VnaCB0aGUgdXNlcidzIHBhdGggYW5kIHRlc3QgZm9yIGVhY2ggb2YgUFJPR05BTUUtTElTVAorICBhc19zYXZlX0lGUz0kSUZTOyBJRlM9JFBBVEhfU0VQQVJBVE9SCitmb3IgYXNfZGlyIGluICRQQVRIJFBBVEhfU0VQQVJBVE9SL3Vzci94cGc0L2JpbgorZG8KKyAgSUZTPSRhc19zYXZlX0lGUworICB0ZXN0IC16ICIkYXNfZGlyIiAmJiBhc19kaXI9LgorICAgIGZvciBhY19wcm9nIGluIGdyZXAgZ2dyZXA7IGRvCisgICAgZm9yIGFjX2V4ZWNfZXh0IGluICcnICRhY19leGVjdXRhYmxlX2V4dGVuc2lvbnM7IGRvCisgICAgICBhY19wYXRoX0dSRVA9IiRhc19kaXIvJGFjX3Byb2ckYWNfZXhlY19leHQiCisgICAgICB7IHRlc3QgLWYgIiRhY19wYXRoX0dSRVAiICYmICRhc190ZXN0X3ggIiRhY19wYXRoX0dSRVAiOyB9IHx8IGNvbnRpbnVlCisjIENoZWNrIGZvciBHTlUgYWNfcGF0aF9HUkVQIGFuZCBzZWxlY3QgaXQgaWYgaXQgaXMgZm91bmQuCisgICMgQ2hlY2sgZm9yIEdOVSAkYWNfcGF0aF9HUkVQCitjYXNlIGAiJGFjX3BhdGhfR1JFUCIgLS12ZXJzaW9uIDI+JjFgIGluCisqR05VKikKKyAgYWNfY3ZfcGF0aF9HUkVQPSIkYWNfcGF0aF9HUkVQIiBhY19wYXRoX0dSRVBfZm91bmQ9Ojs7CisqKQorICBhY19jb3VudD0wCisgICRhc19lY2hvX24gMDEyMzQ1Njc4OSA+ImNvbmZ0ZXN0LmluIgorICB3aGlsZSA6CisgIGRvCisgICAgY2F0ICJjb25mdGVzdC5pbiIgImNvbmZ0ZXN0LmluIiA+ImNvbmZ0ZXN0LnRtcCIKKyAgICBtdiAiY29uZnRlc3QudG1wIiAiY29uZnRlc3QuaW4iCisgICAgY3AgImNvbmZ0ZXN0LmluIiAiY29uZnRlc3QubmwiCisgICAgJGFzX2VjaG8gJ0dSRVAnID4+ICJjb25mdGVzdC5ubCIKKyAgICAiJGFjX3BhdGhfR1JFUCIgLWUgJ0dSRVAkJyAtZSAnLShjYW5ub3QgbWF0Y2gpLScgPCAiY29uZnRlc3QubmwiID4iY29uZnRlc3Qub3V0IiAyPi9kZXYvbnVsbCB8fCBicmVhaworICAgIGRpZmYgImNvbmZ0ZXN0Lm91dCIgImNvbmZ0ZXN0Lm5sIiA+L2Rldi9udWxsIDI+JjEgfHwgYnJlYWsKKyAgICBhc19mbl9hcml0aCAkYWNfY291bnQgKyAxICYmIGFjX2NvdW50PSRhc192YWwKKyAgICBpZiB0ZXN0ICRhY19jb3VudCAtZ3QgJHthY19wYXRoX0dSRVBfbWF4LTB9OyB0aGVuCisgICAgICAjIEJlc3Qgb25lIHNvIGZhciwgc2F2ZSBpdCBidXQga2VlcCBsb29raW5nIGZvciBhIGJldHRlciBvbmUKKyAgICAgIGFjX2N2X3BhdGhfR1JFUD0iJGFjX3BhdGhfR1JFUCIKKyAgICAgIGFjX3BhdGhfR1JFUF9tYXg9JGFjX2NvdW50CisgICAgZmkKKyAgICAjIDEwKigyXjEwKSBjaGFycyBhcyBpbnB1dCBzZWVtcyBtb3JlIHRoYW4gZW5vdWdoCisgICAgdGVzdCAkYWNfY291bnQgLWd0IDEwICYmIGJyZWFrCisgIGRvbmUKKyAgcm0gLWYgY29uZnRlc3QuaW4gY29uZnRlc3QudG1wIGNvbmZ0ZXN0Lm5sIGNvbmZ0ZXN0Lm91dDs7Citlc2FjCisKKyAgICAgICRhY19wYXRoX0dSRVBfZm91bmQgJiYgYnJlYWsgMworICAgIGRvbmUKKyAgZG9uZQorICBkb25lCitJRlM9JGFzX3NhdmVfSUZTCisgIGlmIHRlc3QgLXogIiRhY19jdl9wYXRoX0dSRVAiOyB0aGVuCisgICAgYXNfZm5fZXJyb3IgJD8gIm5vIGFjY2VwdGFibGUgZ3JlcCBjb3VsZCBiZSBmb3VuZCBpbiAkUEFUSCRQQVRIX1NFUEFSQVRPUi91c3IveHBnNC9iaW4iICIkTElORU5PIiA1CisgIGZpCitlbHNlCisgIGFjX2N2X3BhdGhfR1JFUD0kR1JFUAorZmkKKworZmkKK3sgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiAkYWNfY3ZfcGF0aF9HUkVQIiA+JjUKKyRhc19lY2hvICIkYWNfY3ZfcGF0aF9HUkVQIiA+JjY7IH0KKyBHUkVQPSIkYWNfY3ZfcGF0aF9HUkVQIgorCisKK3sgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgZm9yIGVncmVwIiA+JjUKKyRhc19lY2hvX24gImNoZWNraW5nIGZvciBlZ3JlcC4uLiAiID4mNjsgfQoraWYgJHthY19jdl9wYXRoX0VHUkVQKzp9IGZhbHNlOyB0aGVuIDoKKyAgJGFzX2VjaG9fbiAiKGNhY2hlZCkgIiA+JjYKK2Vsc2UKKyAgaWYgZWNobyBhIHwgJEdSRVAgLUUgJyhhfGIpJyA+L2Rldi9udWxsIDI+JjEKKyAgIHRoZW4gYWNfY3ZfcGF0aF9FR1JFUD0iJEdSRVAgLUUiCisgICBlbHNlCisgICAgIGlmIHRlc3QgLXogIiRFR1JFUCI7IHRoZW4KKyAgYWNfcGF0aF9FR1JFUF9mb3VuZD1mYWxzZQorICAjIExvb3AgdGhyb3VnaCB0aGUgdXNlcidzIHBhdGggYW5kIHRlc3QgZm9yIGVhY2ggb2YgUFJPR05BTUUtTElTVAorICBhc19zYXZlX0lGUz0kSUZTOyBJRlM9JFBBVEhfU0VQQVJBVE9SCitmb3IgYXNfZGlyIGluICRQQVRIJFBBVEhfU0VQQVJBVE9SL3Vzci94cGc0L2JpbgorZG8KKyAgSUZTPSRhc19zYXZlX0lGUworICB0ZXN0IC16ICIkYXNfZGlyIiAmJiBhc19kaXI9LgorICAgIGZvciBhY19wcm9nIGluIGVncmVwOyBkbworICAgIGZvciBhY19leGVjX2V4dCBpbiAnJyAkYWNfZXhlY3V0YWJsZV9leHRlbnNpb25zOyBkbworICAgICAgYWNfcGF0aF9FR1JFUD0iJGFzX2Rpci8kYWNfcHJvZyRhY19leGVjX2V4dCIKKyAgICAgIHsgdGVzdCAtZiAiJGFjX3BhdGhfRUdSRVAiICYmICRhc190ZXN0X3ggIiRhY19wYXRoX0VHUkVQIjsgfSB8fCBjb250aW51ZQorIyBDaGVjayBmb3IgR05VIGFjX3BhdGhfRUdSRVAgYW5kIHNlbGVjdCBpdCBpZiBpdCBpcyBmb3VuZC4KKyAgIyBDaGVjayBmb3IgR05VICRhY19wYXRoX0VHUkVQCitjYXNlIGAiJGFjX3BhdGhfRUdSRVAiIC0tdmVyc2lvbiAyPiYxYCBpbgorKkdOVSopCisgIGFjX2N2X3BhdGhfRUdSRVA9IiRhY19wYXRoX0VHUkVQIiBhY19wYXRoX0VHUkVQX2ZvdW5kPTo7OworKikKKyAgYWNfY291bnQ9MAorICAkYXNfZWNob19uIDAxMjM0NTY3ODkgPiJjb25mdGVzdC5pbiIKKyAgd2hpbGUgOgorICBkbworICAgIGNhdCAiY29uZnRlc3QuaW4iICJjb25mdGVzdC5pbiIgPiJjb25mdGVzdC50bXAiCisgICAgbXYgImNvbmZ0ZXN0LnRtcCIgImNvbmZ0ZXN0LmluIgorICAgIGNwICJjb25mdGVzdC5pbiIgImNvbmZ0ZXN0Lm5sIgorICAgICRhc19lY2hvICdFR1JFUCcgPj4gImNvbmZ0ZXN0Lm5sIgorICAgICIkYWNfcGF0aF9FR1JFUCIgJ0VHUkVQJCcgPCAiY29uZnRlc3QubmwiID4iY29uZnRlc3Qub3V0IiAyPi9kZXYvbnVsbCB8fCBicmVhaworICAgIGRpZmYgImNvbmZ0ZXN0Lm91dCIgImNvbmZ0ZXN0Lm5sIiA+L2Rldi9udWxsIDI+JjEgfHwgYnJlYWsKKyAgICBhc19mbl9hcml0aCAkYWNfY291bnQgKyAxICYmIGFjX2NvdW50PSRhc192YWwKKyAgICBpZiB0ZXN0ICRhY19jb3VudCAtZ3QgJHthY19wYXRoX0VHUkVQX21heC0wfTsgdGhlbgorICAgICAgIyBCZXN0IG9uZSBzbyBmYXIsIHNhdmUgaXQgYnV0IGtlZXAgbG9va2luZyBmb3IgYSBiZXR0ZXIgb25lCisgICAgICBhY19jdl9wYXRoX0VHUkVQPSIkYWNfcGF0aF9FR1JFUCIKKyAgICAgIGFjX3BhdGhfRUdSRVBfbWF4PSRhY19jb3VudAorICAgIGZpCisgICAgIyAxMCooMl4xMCkgY2hhcnMgYXMgaW5wdXQgc2VlbXMgbW9yZSB0aGFuIGVub3VnaAorICAgIHRlc3QgJGFjX2NvdW50IC1ndCAxMCAmJiBicmVhaworICBkb25lCisgIHJtIC1mIGNvbmZ0ZXN0LmluIGNvbmZ0ZXN0LnRtcCBjb25mdGVzdC5ubCBjb25mdGVzdC5vdXQ7OworZXNhYworCisgICAgICAkYWNfcGF0aF9FR1JFUF9mb3VuZCAmJiBicmVhayAzCisgICAgZG9uZQorICBkb25lCisgIGRvbmUKK0lGUz0kYXNfc2F2ZV9JRlMKKyAgaWYgdGVzdCAteiAiJGFjX2N2X3BhdGhfRUdSRVAiOyB0aGVuCisgICAgYXNfZm5fZXJyb3IgJD8gIm5vIGFjY2VwdGFibGUgZWdyZXAgY291bGQgYmUgZm91bmQgaW4gJFBBVEgkUEFUSF9TRVBBUkFUT1IvdXNyL3hwZzQvYmluIiAiJExJTkVOTyIgNQorICBmaQorZWxzZQorICBhY19jdl9wYXRoX0VHUkVQPSRFR1JFUAorZmkKKworICAgZmkKK2ZpCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogJGFjX2N2X3BhdGhfRUdSRVAiID4mNQorJGFzX2VjaG8gIiRhY19jdl9wYXRoX0VHUkVQIiA+JjY7IH0KKyBFR1JFUD0iJGFjX2N2X3BhdGhfRUdSRVAiCisKKworeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBjaGVja2luZyBmb3IgQU5TSSBDIGhlYWRlciBmaWxlcyIgPiY1CiskYXNfZWNob19uICJjaGVja2luZyBmb3IgQU5TSSBDIGhlYWRlciBmaWxlcy4uLiAiID4mNjsgfQoraWYgJHthY19jdl9oZWFkZXJfc3RkYys6fSBmYWxzZTsgdGhlbiA6CisgICRhc19lY2hvX24gIihjYWNoZWQpICIgPiY2CitlbHNlCisgIGNhdCBjb25mZGVmcy5oIC0gPDxfQUNFT0YgPmNvbmZ0ZXN0LiRhY19leHQKKy8qIGVuZCBjb25mZGVmcy5oLiAgKi8KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlIDxzdGRhcmcuaD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDxmbG9hdC5oPgorCitpbnQKK21haW4gKCkKK3sKKworICA7CisgIHJldHVybiAwOworfQorX0FDRU9GCitpZiBhY19mbl9jX3RyeV9jb21waWxlICIkTElORU5PIjsgdGhlbiA6CisgIGFjX2N2X2hlYWRlcl9zdGRjPXllcworZWxzZQorICBhY19jdl9oZWFkZXJfc3RkYz1ubworZmkKK3JtIC1mIGNvcmUgY29uZnRlc3QuZXJyIGNvbmZ0ZXN0LiRhY19vYmpleHQgY29uZnRlc3QuJGFjX2V4dAorCitpZiB0ZXN0ICRhY19jdl9oZWFkZXJfc3RkYyA9IHllczsgdGhlbgorICAjIFN1bk9TIDQueCBzdHJpbmcuaCBkb2VzIG5vdCBkZWNsYXJlIG1lbSosIGNvbnRyYXJ5IHRvIEFOU0kuCisgIGNhdCBjb25mZGVmcy5oIC0gPDxfQUNFT0YgPmNvbmZ0ZXN0LiRhY19leHQKKy8qIGVuZCBjb25mZGVmcy5oLiAgKi8KKyNpbmNsdWRlIDxzdHJpbmcuaD4KKworX0FDRU9GCitpZiAoZXZhbCAiJGFjX2NwcCBjb25mdGVzdC4kYWNfZXh0IikgMj4mNSB8CisgICRFR1JFUCAibWVtY2hyIiA+L2Rldi9udWxsIDI+JjE7IHRoZW4gOgorCitlbHNlCisgIGFjX2N2X2hlYWRlcl9zdGRjPW5vCitmaQorcm0gLWYgY29uZnRlc3QqCisKK2ZpCisKK2lmIHRlc3QgJGFjX2N2X2hlYWRlcl9zdGRjID0geWVzOyB0aGVuCisgICMgSVNDIDIuMC4yIHN0ZGxpYi5oIGRvZXMgbm90IGRlY2xhcmUgZnJlZSwgY29udHJhcnkgdG8gQU5TSS4KKyAgY2F0IGNvbmZkZWZzLmggLSA8PF9BQ0VPRiA+Y29uZnRlc3QuJGFjX2V4dAorLyogZW5kIGNvbmZkZWZzLmguICAqLworI2luY2x1ZGUgPHN0ZGxpYi5oPgorCitfQUNFT0YKK2lmIChldmFsICIkYWNfY3BwIGNvbmZ0ZXN0LiRhY19leHQiKSAyPiY1IHwKKyAgJEVHUkVQICJmcmVlIiA+L2Rldi9udWxsIDI+JjE7IHRoZW4gOgorCitlbHNlCisgIGFjX2N2X2hlYWRlcl9zdGRjPW5vCitmaQorcm0gLWYgY29uZnRlc3QqCisKK2ZpCisKK2lmIHRlc3QgJGFjX2N2X2hlYWRlcl9zdGRjID0geWVzOyB0aGVuCisgICMgL2Jpbi9jYyBpbiBJcml4LTQuMC41IGdldHMgbm9uLUFOU0kgY3R5cGUgbWFjcm9zIHVubGVzcyB1c2luZyAtYW5zaS4KKyAgaWYgdGVzdCAiJGNyb3NzX2NvbXBpbGluZyIgPSB5ZXM7IHRoZW4gOgorICA6CitlbHNlCisgIGNhdCBjb25mZGVmcy5oIC0gPDxfQUNFT0YgPmNvbmZ0ZXN0LiRhY19leHQKKy8qIGVuZCBjb25mZGVmcy5oLiAgKi8KKyNpbmNsdWRlIDxjdHlwZS5oPgorI2luY2x1ZGUgPHN0ZGxpYi5oPgorI2lmICgoJyAnICYgMHgwRkYpID09IDB4MDIwKQorIyBkZWZpbmUgSVNMT1dFUihjKSAoJ2EnIDw9IChjKSAmJiAoYykgPD0gJ3onKQorIyBkZWZpbmUgVE9VUFBFUihjKSAoSVNMT1dFUihjKSA/ICdBJyArICgoYykgLSAnYScpIDogKGMpKQorI2Vsc2UKKyMgZGVmaW5lIElTTE9XRVIoYykgXAorCQkgICAoKCdhJyA8PSAoYykgJiYgKGMpIDw9ICdpJykgXAorCQkgICAgIHx8ICgnaicgPD0gKGMpICYmIChjKSA8PSAncicpIFwKKwkJICAgICB8fCAoJ3MnIDw9IChjKSAmJiAoYykgPD0gJ3onKSkKKyMgZGVmaW5lIFRPVVBQRVIoYykgKElTTE9XRVIoYykgPyAoKGMpIHwgMHg0MCkgOiAoYykpCisjZW5kaWYKKworI2RlZmluZSBYT1IoZSwgZikgKCgoZSkgJiYgIShmKSkgfHwgKCEoZSkgJiYgKGYpKSkKK2ludAorbWFpbiAoKQoreworICBpbnQgaTsKKyAgZm9yIChpID0gMDsgaSA8IDI1NjsgaSsrKQorICAgIGlmIChYT1IgKGlzbG93ZXIgKGkpLCBJU0xPV0VSIChpKSkKKwl8fCB0b3VwcGVyIChpKSAhPSBUT1VQUEVSIChpKSkKKyAgICAgIHJldHVybiAyOworICByZXR1cm4gMDsKK30KK19BQ0VPRgoraWYgYWNfZm5fY190cnlfcnVuICIkTElORU5PIjsgdGhlbiA6CisKK2Vsc2UKKyAgYWNfY3ZfaGVhZGVyX3N0ZGM9bm8KK2ZpCitybSAtZiBjb3JlICouY29yZSBjb3JlLmNvbmZ0ZXN0LiogZ21vbi5vdXQgYmIub3V0IGNvbmZ0ZXN0JGFjX2V4ZWV4dCBcCisgIGNvbmZ0ZXN0LiRhY19vYmpleHQgY29uZnRlc3QuYmVhbSBjb25mdGVzdC4kYWNfZXh0CitmaQorCitmaQorZmkKK3sgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiAkYWNfY3ZfaGVhZGVyX3N0ZGMiID4mNQorJGFzX2VjaG8gIiRhY19jdl9oZWFkZXJfc3RkYyIgPiY2OyB9CitpZiB0ZXN0ICRhY19jdl9oZWFkZXJfc3RkYyA9IHllczsgdGhlbgorCiskYXNfZWNobyAiI2RlZmluZSBTVERDX0hFQURFUlMgMSIgPj5jb25mZGVmcy5oCisKK2ZpCisKKyMgT24gSVJJWCA1LjMsIHN5cy90eXBlcyBhbmQgaW50dHlwZXMuaCBhcmUgY29uZmxpY3RpbmcuCitmb3IgYWNfaGVhZGVyIGluIHN5cy90eXBlcy5oIHN5cy9zdGF0Lmggc3RkbGliLmggc3RyaW5nLmggbWVtb3J5Lmggc3RyaW5ncy5oIFwKKwkJICBpbnR0eXBlcy5oIHN0ZGludC5oIHVuaXN0ZC5oCitkbyA6CisgIGFzX2FjX0hlYWRlcj1gJGFzX2VjaG8gImFjX2N2X2hlYWRlcl8kYWNfaGVhZGVyIiB8ICRhc190cl9zaGAKK2FjX2ZuX2NfY2hlY2tfaGVhZGVyX2NvbXBpbGUgIiRMSU5FTk8iICIkYWNfaGVhZGVyIiAiJGFzX2FjX0hlYWRlciIgIiRhY19pbmNsdWRlc19kZWZhdWx0CisiCitpZiBldmFsIHRlc3QgXCJ4XCQiJGFzX2FjX0hlYWRlciJcIiA9IHgieWVzIjsgdGhlbiA6CisgIGNhdCA+PmNvbmZkZWZzLmggPDxfQUNFT0YKKyNkZWZpbmUgYCRhc19lY2hvICJIQVZFXyRhY19oZWFkZXIiIHwgJGFzX3RyX2NwcGAgMQorX0FDRU9GCisKK2ZpCisKK2RvbmUKKworCisKKyAgYWNfZm5fY19jaGVja19oZWFkZXJfbW9uZ3JlbCAiJExJTkVOTyIgIm1pbml4L2NvbmZpZy5oIiAiYWNfY3ZfaGVhZGVyX21pbml4X2NvbmZpZ19oIiAiJGFjX2luY2x1ZGVzX2RlZmF1bHQiCitpZiB0ZXN0ICJ4JGFjX2N2X2hlYWRlcl9taW5peF9jb25maWdfaCIgPSB4eWVzOyB0aGVuIDoKKyAgTUlOSVg9eWVzCitlbHNlCisgIE1JTklYPQorZmkKKworCisgIGlmIHRlc3QgIiRNSU5JWCIgPSB5ZXM7IHRoZW4KKworJGFzX2VjaG8gIiNkZWZpbmUgX1BPU0lYX1NPVVJDRSAxIiA+PmNvbmZkZWZzLmgKKworCiskYXNfZWNobyAiI2RlZmluZSBfUE9TSVhfMV9TT1VSQ0UgMiIgPj5jb25mZGVmcy5oCisKKworJGFzX2VjaG8gIiNkZWZpbmUgX01JTklYIDEiID4+Y29uZmRlZnMuaAorCisgIGZpCisKKworICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIHdoZXRoZXIgaXQgaXMgc2FmZSB0byBkZWZpbmUgX19FWFRFTlNJT05TX18iID4mNQorJGFzX2VjaG9fbiAiY2hlY2tpbmcgd2hldGhlciBpdCBpcyBzYWZlIHRvIGRlZmluZSBfX0VYVEVOU0lPTlNfXy4uLiAiID4mNjsgfQoraWYgJHthY19jdl9zYWZlX3RvX2RlZmluZV9fX2V4dGVuc2lvbnNfXys6fSBmYWxzZTsgdGhlbiA6CisgICRhc19lY2hvX24gIihjYWNoZWQpICIgPiY2CitlbHNlCisgIGNhdCBjb25mZGVmcy5oIC0gPDxfQUNFT0YgPmNvbmZ0ZXN0LiRhY19leHQKKy8qIGVuZCBjb25mZGVmcy5oLiAgKi8KKworIwkgIGRlZmluZSBfX0VYVEVOU0lPTlNfXyAxCisJICAkYWNfaW5jbHVkZXNfZGVmYXVsdAoraW50CittYWluICgpCit7CisKKyAgOworICByZXR1cm4gMDsKK30KK19BQ0VPRgoraWYgYWNfZm5fY190cnlfY29tcGlsZSAiJExJTkVOTyI7IHRoZW4gOgorICBhY19jdl9zYWZlX3RvX2RlZmluZV9fX2V4dGVuc2lvbnNfXz15ZXMKK2Vsc2UKKyAgYWNfY3Zfc2FmZV90b19kZWZpbmVfX19leHRlbnNpb25zX189bm8KK2ZpCitybSAtZiBjb3JlIGNvbmZ0ZXN0LmVyciBjb25mdGVzdC4kYWNfb2JqZXh0IGNvbmZ0ZXN0LiRhY19leHQKK2ZpCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogJGFjX2N2X3NhZmVfdG9fZGVmaW5lX19fZXh0ZW5zaW9uc19fIiA+JjUKKyRhc19lY2hvICIkYWNfY3Zfc2FmZV90b19kZWZpbmVfX19leHRlbnNpb25zX18iID4mNjsgfQorICB0ZXN0ICRhY19jdl9zYWZlX3RvX2RlZmluZV9fX2V4dGVuc2lvbnNfXyA9IHllcyAmJgorICAgICRhc19lY2hvICIjZGVmaW5lIF9fRVhURU5TSU9OU19fIDEiID4+Y29uZmRlZnMuaAorCisgICRhc19lY2hvICIjZGVmaW5lIF9BTExfU09VUkNFIDEiID4+Y29uZmRlZnMuaAorCisgICRhc19lY2hvICIjZGVmaW5lIF9HTlVfU09VUkNFIDEiID4+Y29uZmRlZnMuaAorCisgICRhc19lY2hvICIjZGVmaW5lIF9QT1NJWF9QVEhSRUFEX1NFTUFOVElDUyAxIiA+PmNvbmZkZWZzLmgKKworICAkYXNfZWNobyAiI2RlZmluZSBfVEFOREVNX1NPVVJDRSAxIiA+PmNvbmZkZWZzLmgKKworCisKK2FtX19hcGlfdmVyc2lvbj0nMS4xMScKKworIyBGaW5kIGEgZ29vZCBpbnN0YWxsIHByb2dyYW0uICBXZSBwcmVmZXIgYSBDIHByb2dyYW0gKGZhc3RlciksCisjIHNvIG9uZSBzY3JpcHQgaXMgYXMgZ29vZCBhcyBhbm90aGVyLiAgQnV0IGF2b2lkIHRoZSBicm9rZW4gb3IKKyMgaW5jb21wYXRpYmxlIHZlcnNpb25zOgorIyBTeXNWIC9ldGMvaW5zdGFsbCwgL3Vzci9zYmluL2luc3RhbGwKKyMgU3VuT1MgL3Vzci9ldGMvaW5zdGFsbAorIyBJUklYIC9zYmluL2luc3RhbGwKKyMgQUlYIC9iaW4vaW5zdGFsbAorIyBBbWlnYU9TIC9DL2luc3RhbGwsIHdoaWNoIGluc3RhbGxzIGJvb3RibG9ja3Mgb24gZmxvcHB5IGRpc2NzCisjIEFJWCA0IC91c3IvYmluL2luc3RhbGxic2QsIHdoaWNoIGRvZXNuJ3Qgd29yayB3aXRob3V0IGEgLWcgZmxhZworIyBBRlMgL3Vzci9hZnN3cy9iaW4vaW5zdGFsbCwgd2hpY2ggbWlzaGFuZGxlcyBub25leGlzdGVudCBhcmdzCisjIFNWUjQgL3Vzci91Y2IvaW5zdGFsbCwgd2hpY2ggdHJpZXMgdG8gdXNlIHRoZSBub25leGlzdGVudCBncm91cCAic3RhZmYiCisjIE9TLzIncyBzeXN0ZW0gaW5zdGFsbCwgd2hpY2ggaGFzIGEgY29tcGxldGVseSBkaWZmZXJlbnQgc2VtYW50aWMKKyMgLi9pbnN0YWxsLCB3aGljaCBjYW4gYmUgZXJyb25lb3VzbHkgY3JlYXRlZCBieSBtYWtlIGZyb20gLi9pbnN0YWxsLnNoLgorIyBSZWplY3QgaW5zdGFsbCBwcm9ncmFtcyB0aGF0IGNhbm5vdCBpbnN0YWxsIG11bHRpcGxlIGZpbGVzLgoreyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBjaGVja2luZyBmb3IgYSBCU0QtY29tcGF0aWJsZSBpbnN0YWxsIiA+JjUKKyRhc19lY2hvX24gImNoZWNraW5nIGZvciBhIEJTRC1jb21wYXRpYmxlIGluc3RhbGwuLi4gIiA+JjY7IH0KK2lmIHRlc3QgLXogIiRJTlNUQUxMIjsgdGhlbgoraWYgJHthY19jdl9wYXRoX2luc3RhbGwrOn0gZmFsc2U7IHRoZW4gOgorICAkYXNfZWNob19uICIoY2FjaGVkKSAiID4mNgorZWxzZQorICBhc19zYXZlX0lGUz0kSUZTOyBJRlM9JFBBVEhfU0VQQVJBVE9SCitmb3IgYXNfZGlyIGluICRQQVRICitkbworICBJRlM9JGFzX3NhdmVfSUZTCisgIHRlc3QgLXogIiRhc19kaXIiICYmIGFzX2Rpcj0uCisgICAgIyBBY2NvdW50IGZvciBwZW9wbGUgd2hvIHB1dCB0cmFpbGluZyBzbGFzaGVzIGluIFBBVEggZWxlbWVudHMuCitjYXNlICRhc19kaXIvIGluICMoKAorICAuLyB8IC4vLyB8IC9bY0NdLyogfCBcCisgIC9ldGMvKiB8IC91c3Ivc2Jpbi8qIHwgL3Vzci9ldGMvKiB8IC9zYmluLyogfCAvdXNyL2Fmc3dzL2Jpbi8qIHwgXAorICA/OltcXC9db3MyW1xcL11pbnN0YWxsW1xcL10qIHwgPzpbXFwvXU9TMltcXC9dSU5TVEFMTFtcXC9dKiB8IFwKKyAgL3Vzci91Y2IvKiApIDs7CisgICopCisgICAgIyBPU0YxIGFuZCBTQ08gT0RUIDMuMCBoYXZlIHRoZWlyIG93biBuYW1lcyBmb3IgaW5zdGFsbC4KKyAgICAjIERvbid0IHVzZSBpbnN0YWxsYnNkIGZyb20gT1NGIHNpbmNlIGl0IGluc3RhbGxzIHN0dWZmIGFzIHJvb3QKKyAgICAjIGJ5IGRlZmF1bHQuCisgICAgZm9yIGFjX3Byb2cgaW4gZ2luc3RhbGwgc2NvaW5zdCBpbnN0YWxsOyBkbworICAgICAgZm9yIGFjX2V4ZWNfZXh0IGluICcnICRhY19leGVjdXRhYmxlX2V4dGVuc2lvbnM7IGRvCisJaWYgeyB0ZXN0IC1mICIkYXNfZGlyLyRhY19wcm9nJGFjX2V4ZWNfZXh0IiAmJiAkYXNfdGVzdF94ICIkYXNfZGlyLyRhY19wcm9nJGFjX2V4ZWNfZXh0IjsgfTsgdGhlbgorCSAgaWYgdGVzdCAkYWNfcHJvZyA9IGluc3RhbGwgJiYKKwkgICAgZ3JlcCBkc3Btc2cgIiRhc19kaXIvJGFjX3Byb2ckYWNfZXhlY19leHQiID4vZGV2L251bGwgMj4mMTsgdGhlbgorCSAgICAjIEFJWCBpbnN0YWxsLiAgSXQgaGFzIGFuIGluY29tcGF0aWJsZSBjYWxsaW5nIGNvbnZlbnRpb24uCisJICAgIDoKKwkgIGVsaWYgdGVzdCAkYWNfcHJvZyA9IGluc3RhbGwgJiYKKwkgICAgZ3JlcCBwd3BsdXMgIiRhc19kaXIvJGFjX3Byb2ckYWNfZXhlY19leHQiID4vZGV2L251bGwgMj4mMTsgdGhlbgorCSAgICAjIHByb2dyYW0tc3BlY2lmaWMgaW5zdGFsbCBzY3JpcHQgdXNlZCBieSBIUCBwd3BsdXMtLWRvbid0IHVzZS4KKwkgICAgOgorCSAgZWxzZQorCSAgICBybSAtcmYgY29uZnRlc3Qub25lIGNvbmZ0ZXN0LnR3byBjb25mdGVzdC5kaXIKKwkgICAgZWNobyBvbmUgPiBjb25mdGVzdC5vbmUKKwkgICAgZWNobyB0d28gPiBjb25mdGVzdC50d28KKwkgICAgbWtkaXIgY29uZnRlc3QuZGlyCisJICAgIGlmICIkYXNfZGlyLyRhY19wcm9nJGFjX2V4ZWNfZXh0IiAtYyBjb25mdGVzdC5vbmUgY29uZnRlc3QudHdvICJgcHdkYC9jb25mdGVzdC5kaXIiICYmCisJICAgICAgdGVzdCAtcyBjb25mdGVzdC5vbmUgJiYgdGVzdCAtcyBjb25mdGVzdC50d28gJiYKKwkgICAgICB0ZXN0IC1zIGNvbmZ0ZXN0LmRpci9jb25mdGVzdC5vbmUgJiYKKwkgICAgICB0ZXN0IC1zIGNvbmZ0ZXN0LmRpci9jb25mdGVzdC50d28KKwkgICAgdGhlbgorCSAgICAgIGFjX2N2X3BhdGhfaW5zdGFsbD0iJGFzX2Rpci8kYWNfcHJvZyRhY19leGVjX2V4dCAtYyIKKwkgICAgICBicmVhayAzCisJICAgIGZpCisJICBmaQorCWZpCisgICAgICBkb25lCisgICAgZG9uZQorICAgIDs7Citlc2FjCisKKyAgZG9uZQorSUZTPSRhc19zYXZlX0lGUworCitybSAtcmYgY29uZnRlc3Qub25lIGNvbmZ0ZXN0LnR3byBjb25mdGVzdC5kaXIKKworZmkKKyAgaWYgdGVzdCAiJHthY19jdl9wYXRoX2luc3RhbGwrc2V0fSIgPSBzZXQ7IHRoZW4KKyAgICBJTlNUQUxMPSRhY19jdl9wYXRoX2luc3RhbGwKKyAgZWxzZQorICAgICMgQXMgYSBsYXN0IHJlc29ydCwgdXNlIHRoZSBzbG93IHNoZWxsIHNjcmlwdC4gIERvbid0IGNhY2hlIGEKKyAgICAjIHZhbHVlIGZvciBJTlNUQUxMIHdpdGhpbiBhIHNvdXJjZSBkaXJlY3RvcnksIGJlY2F1c2UgdGhhdCB3aWxsCisgICAgIyBicmVhayBvdGhlciBwYWNrYWdlcyB1c2luZyB0aGUgY2FjaGUgaWYgdGhhdCBkaXJlY3RvcnkgaXMKKyAgICAjIHJlbW92ZWQsIG9yIGlmIHRoZSB2YWx1ZSBpcyBhIHJlbGF0aXZlIG5hbWUuCisgICAgSU5TVEFMTD0kYWNfaW5zdGFsbF9zaAorICBmaQorZmkKK3sgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiAkSU5TVEFMTCIgPiY1CiskYXNfZWNobyAiJElOU1RBTEwiID4mNjsgfQorCisjIFVzZSB0ZXN0IC16IGJlY2F1c2UgU3VuT1M0IHNoIG1pc2hhbmRsZXMgYnJhY2VzIGluICR7dmFyLXZhbH0uCisjIEl0IHRoaW5rcyB0aGUgZmlyc3QgY2xvc2UgYnJhY2UgZW5kcyB0aGUgdmFyaWFibGUgc3Vic3RpdHV0aW9uLgordGVzdCAteiAiJElOU1RBTExfUFJPR1JBTSIgJiYgSU5TVEFMTF9QUk9HUkFNPScke0lOU1RBTEx9JworCit0ZXN0IC16ICIkSU5TVEFMTF9TQ1JJUFQiICYmIElOU1RBTExfU0NSSVBUPScke0lOU1RBTEx9JworCit0ZXN0IC16ICIkSU5TVEFMTF9EQVRBIiAmJiBJTlNUQUxMX0RBVEE9JyR7SU5TVEFMTH0gLW0gNjQ0JworCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIHdoZXRoZXIgYnVpbGQgZW52aXJvbm1lbnQgaXMgc2FuZSIgPiY1CiskYXNfZWNob19uICJjaGVja2luZyB3aGV0aGVyIGJ1aWxkIGVudmlyb25tZW50IGlzIHNhbmUuLi4gIiA+JjY7IH0KKyMgSnVzdCBpbiBjYXNlCitzbGVlcCAxCitlY2hvIHRpbWVzdGFtcCA+IGNvbmZ0ZXN0LmZpbGUKKyMgUmVqZWN0IHVuc2FmZSBjaGFyYWN0ZXJzIGluICRzcmNkaXIgb3IgdGhlIGFic29sdXRlIHdvcmtpbmcgZGlyZWN0b3J5CisjIG5hbWUuICBBY2NlcHQgc3BhY2UgYW5kIHRhYiBvbmx5IGluIHRoZSBsYXR0ZXIuCithbV9sZj0nCisnCitjYXNlIGBwd2RgIGluCisgICpbXFxcIlwjXCRcJlwnXGAkYW1fbGZdKikKKyAgICBhc19mbl9lcnJvciAkPyAidW5zYWZlIGFic29sdXRlIHdvcmtpbmcgZGlyZWN0b3J5IG5hbWUiICIkTElORU5PIiA1OzsKK2VzYWMKK2Nhc2UgJHNyY2RpciBpbgorICAqW1xcXCJcI1wkXCZcJ1xgJGFtX2xmXCBcCV0qKQorICAgIGFzX2ZuX2Vycm9yICQ/ICJ1bnNhZmUgc3JjZGlyIHZhbHVlOiBcYCRzcmNkaXInIiAiJExJTkVOTyIgNTs7Citlc2FjCisKKyMgRG8gYHNldCcgaW4gYSBzdWJzaGVsbCBzbyB3ZSBkb24ndCBjbG9iYmVyIHRoZSBjdXJyZW50IHNoZWxsJ3MKKyMgYXJndW1lbnRzLiAgTXVzdCB0cnkgLUwgZmlyc3QgaW4gY2FzZSBjb25maWd1cmUgaXMgYWN0dWFsbHkgYQorIyBzeW1saW5rOyBzb21lIHN5c3RlbXMgcGxheSB3ZWlyZCBnYW1lcyB3aXRoIHRoZSBtb2QgdGltZSBvZiBzeW1saW5rcworIyAoZWcgRnJlZUJTRCByZXR1cm5zIHRoZSBtb2QgdGltZSBvZiB0aGUgc3ltbGluaydzIGNvbnRhaW5pbmcKKyMgZGlyZWN0b3J5KS4KK2lmICgKKyAgIHNldCBYIGBscyAtTHQgIiRzcmNkaXIvY29uZmlndXJlIiBjb25mdGVzdC5maWxlIDI+IC9kZXYvbnVsbGAKKyAgIGlmIHRlc3QgIiQqIiA9ICJYIjsgdGhlbgorICAgICAgIyAtTCBkaWRuJ3Qgd29yay4KKyAgICAgIHNldCBYIGBscyAtdCAiJHNyY2Rpci9jb25maWd1cmUiIGNvbmZ0ZXN0LmZpbGVgCisgICBmaQorICAgcm0gLWYgY29uZnRlc3QuZmlsZQorICAgaWYgdGVzdCAiJCoiICE9ICJYICRzcmNkaXIvY29uZmlndXJlIGNvbmZ0ZXN0LmZpbGUiIFwKKyAgICAgICYmIHRlc3QgIiQqIiAhPSAiWCBjb25mdGVzdC5maWxlICRzcmNkaXIvY29uZmlndXJlIjsgdGhlbgorCisgICAgICAjIElmIG5laXRoZXIgbWF0Y2hlZCwgdGhlbiB3ZSBoYXZlIGEgYnJva2VuIGxzLiAgVGhpcyBjYW4gaGFwcGVuCisgICAgICAjIGlmLCBmb3IgaW5zdGFuY2UsIENPTkZJR19TSEVMTCBpcyBiYXNoIGFuZCBpdCBpbmhlcml0cyBhCisgICAgICAjIGJyb2tlbiBscyBhbGlhcyBmcm9tIHRoZSBlbnZpcm9ubWVudC4gIFRoaXMgaGFzIGFjdHVhbGx5CisgICAgICAjIGhhcHBlbmVkLiAgU3VjaCBhIHN5c3RlbSBjb3VsZCBub3QgYmUgY29uc2lkZXJlZCAic2FuZSIuCisgICAgICBhc19mbl9lcnJvciAkPyAibHMgLXQgYXBwZWFycyB0byBmYWlsLiAgTWFrZSBzdXJlIHRoZXJlIGlzIG5vdCBhIGJyb2tlbgorYWxpYXMgaW4geW91ciBlbnZpcm9ubWVudCIgIiRMSU5FTk8iIDUKKyAgIGZpCisKKyAgIHRlc3QgIiQyIiA9IGNvbmZ0ZXN0LmZpbGUKKyAgICkKK3RoZW4KKyAgICMgT2suCisgICA6CitlbHNlCisgICBhc19mbl9lcnJvciAkPyAibmV3bHkgY3JlYXRlZCBmaWxlIGlzIG9sZGVyIHRoYW4gZGlzdHJpYnV0ZWQgZmlsZXMhCitDaGVjayB5b3VyIHN5c3RlbSBjbG9jayIgIiRMSU5FTk8iIDUKK2ZpCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogeWVzIiA+JjUKKyRhc19lY2hvICJ5ZXMiID4mNjsgfQordGVzdCAiJHByb2dyYW1fcHJlZml4IiAhPSBOT05FICYmCisgIHByb2dyYW1fdHJhbnNmb3JtX25hbWU9InMmXiYkcHJvZ3JhbV9wcmVmaXgmOyRwcm9ncmFtX3RyYW5zZm9ybV9uYW1lIgorIyBVc2UgYSBkb3VibGUgJCBzbyBtYWtlIGlnbm9yZXMgaXQuCit0ZXN0ICIkcHJvZ3JhbV9zdWZmaXgiICE9IE5PTkUgJiYKKyAgcHJvZ3JhbV90cmFuc2Zvcm1fbmFtZT0icyZcJCYkcHJvZ3JhbV9zdWZmaXgmOyRwcm9ncmFtX3RyYW5zZm9ybV9uYW1lIgorIyBEb3VibGUgYW55IFwgb3IgJC4KKyMgQnkgZGVmYXVsdCB3YXMgYHMseCx4JywgcmVtb3ZlIGl0IGlmIHVzZWxlc3MuCithY19zY3JpcHQ9J3MvW1xcJF0vJiYvZztzLztzLHgseCwkLy8nCitwcm9ncmFtX3RyYW5zZm9ybV9uYW1lPWAkYXNfZWNobyAiJHByb2dyYW1fdHJhbnNmb3JtX25hbWUiIHwgc2VkICIkYWNfc2NyaXB0ImAKKworIyBleHBhbmQgJGFjX2F1eF9kaXIgdG8gYW4gYWJzb2x1dGUgcGF0aAorYW1fYXV4X2Rpcj1gY2QgJGFjX2F1eF9kaXIgJiYgcHdkYAorCitpZiB0ZXN0IHgiJHtNSVNTSU5HK3NldH0iICE9IHhzZXQ7IHRoZW4KKyAgY2FzZSAkYW1fYXV4X2RpciBpbgorICAqXCAqIHwgKlwJKikKKyAgICBNSVNTSU5HPSJcJHtTSEVMTH0gXCIkYW1fYXV4X2Rpci9taXNzaW5nXCIiIDs7CisgICopCisgICAgTUlTU0lORz0iXCR7U0hFTEx9ICRhbV9hdXhfZGlyL21pc3NpbmciIDs7CisgIGVzYWMKK2ZpCisjIFVzZSBldmFsIHRvIGV4cGFuZCAkU0hFTEwKK2lmIGV2YWwgIiRNSVNTSU5HIC0tcnVuIHRydWUiOyB0aGVuCisgIGFtX21pc3NpbmdfcnVuPSIkTUlTU0lORyAtLXJ1biAiCitlbHNlCisgIGFtX21pc3NpbmdfcnVuPQorICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IFdBUk5JTkc6IFxgbWlzc2luZycgc2NyaXB0IGlzIHRvbyBvbGQgb3IgbWlzc2luZyIgPiY1CiskYXNfZWNobyAiJGFzX21lOiBXQVJOSU5HOiBcYG1pc3NpbmcnIHNjcmlwdCBpcyB0b28gb2xkIG9yIG1pc3NpbmciID4mMjt9CitmaQorCitpZiB0ZXN0IHgiJHtpbnN0YWxsX3NofSIgIT0geHNldDsgdGhlbgorICBjYXNlICRhbV9hdXhfZGlyIGluCisgICpcICogfCAqXAkqKQorICAgIGluc3RhbGxfc2g9Ilwke1NIRUxMfSAnJGFtX2F1eF9kaXIvaW5zdGFsbC1zaCciIDs7CisgICopCisgICAgaW5zdGFsbF9zaD0iXCR7U0hFTEx9ICRhbV9hdXhfZGlyL2luc3RhbGwtc2giCisgIGVzYWMKK2ZpCisKKyMgSW5zdGFsbGVkIGJpbmFyaWVzIGFyZSB1c3VhbGx5IHN0cmlwcGVkIHVzaW5nIGBzdHJpcCcgd2hlbiB0aGUgdXNlcgorIyBydW4gYG1ha2UgaW5zdGFsbC1zdHJpcCcuICBIb3dldmVyIGBzdHJpcCcgbWlnaHQgbm90IGJlIHRoZSByaWdodAorIyB0b29sIHRvIHVzZSBpbiBjcm9zcy1jb21waWxhdGlvbiBlbnZpcm9ubWVudHMsIHRoZXJlZm9yZSBBdXRvbWFrZQorIyB3aWxsIGhvbm9yIHRoZSBgU1RSSVAnIGVudmlyb25tZW50IHZhcmlhYmxlIHRvIG92ZXJydWxlIHRoaXMgcHJvZ3JhbS4KK2lmIHRlc3QgIiRjcm9zc19jb21waWxpbmciICE9IG5vOyB0aGVuCisgIGlmIHRlc3QgLW4gIiRhY190b29sX3ByZWZpeCI7IHRoZW4KKyAgIyBFeHRyYWN0IHRoZSBmaXJzdCB3b3JkIG9mICIke2FjX3Rvb2xfcHJlZml4fXN0cmlwIiwgc28gaXQgY2FuIGJlIGEgcHJvZ3JhbSBuYW1lIHdpdGggYXJncy4KK3NldCBkdW1teSAke2FjX3Rvb2xfcHJlZml4fXN0cmlwOyBhY193b3JkPSQyCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIGZvciAkYWNfd29yZCIgPiY1CiskYXNfZWNob19uICJjaGVja2luZyBmb3IgJGFjX3dvcmQuLi4gIiA+JjY7IH0KK2lmICR7YWNfY3ZfcHJvZ19TVFJJUCs6fSBmYWxzZTsgdGhlbiA6CisgICRhc19lY2hvX24gIihjYWNoZWQpICIgPiY2CitlbHNlCisgIGlmIHRlc3QgLW4gIiRTVFJJUCI7IHRoZW4KKyAgYWNfY3ZfcHJvZ19TVFJJUD0iJFNUUklQIiAjIExldCB0aGUgdXNlciBvdmVycmlkZSB0aGUgdGVzdC4KK2Vsc2UKK2FzX3NhdmVfSUZTPSRJRlM7IElGUz0kUEFUSF9TRVBBUkFUT1IKK2ZvciBhc19kaXIgaW4gJFBBVEgKK2RvCisgIElGUz0kYXNfc2F2ZV9JRlMKKyAgdGVzdCAteiAiJGFzX2RpciIgJiYgYXNfZGlyPS4KKyAgICBmb3IgYWNfZXhlY19leHQgaW4gJycgJGFjX2V4ZWN1dGFibGVfZXh0ZW5zaW9uczsgZG8KKyAgaWYgeyB0ZXN0IC1mICIkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IiAmJiAkYXNfdGVzdF94ICIkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IjsgfTsgdGhlbgorICAgIGFjX2N2X3Byb2dfU1RSSVA9IiR7YWNfdG9vbF9wcmVmaXh9c3RyaXAiCisgICAgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogZm91bmQgJGFzX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCIgPiY1CisgICAgYnJlYWsgMgorICBmaQorZG9uZQorICBkb25lCitJRlM9JGFzX3NhdmVfSUZTCisKK2ZpCitmaQorU1RSSVA9JGFjX2N2X3Byb2dfU1RSSVAKK2lmIHRlc3QgLW4gIiRTVFJJUCI7IHRoZW4KKyAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6ICRTVFJJUCIgPiY1CiskYXNfZWNobyAiJFNUUklQIiA+JjY7IH0KK2Vsc2UKKyAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6IG5vIiA+JjUKKyRhc19lY2hvICJubyIgPiY2OyB9CitmaQorCisKK2ZpCitpZiB0ZXN0IC16ICIkYWNfY3ZfcHJvZ19TVFJJUCI7IHRoZW4KKyAgYWNfY3RfU1RSSVA9JFNUUklQCisgICMgRXh0cmFjdCB0aGUgZmlyc3Qgd29yZCBvZiAic3RyaXAiLCBzbyBpdCBjYW4gYmUgYSBwcm9ncmFtIG5hbWUgd2l0aCBhcmdzLgorc2V0IGR1bW15IHN0cmlwOyBhY193b3JkPSQyCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIGZvciAkYWNfd29yZCIgPiY1CiskYXNfZWNob19uICJjaGVja2luZyBmb3IgJGFjX3dvcmQuLi4gIiA+JjY7IH0KK2lmICR7YWNfY3ZfcHJvZ19hY19jdF9TVFJJUCs6fSBmYWxzZTsgdGhlbiA6CisgICRhc19lY2hvX24gIihjYWNoZWQpICIgPiY2CitlbHNlCisgIGlmIHRlc3QgLW4gIiRhY19jdF9TVFJJUCI7IHRoZW4KKyAgYWNfY3ZfcHJvZ19hY19jdF9TVFJJUD0iJGFjX2N0X1NUUklQIiAjIExldCB0aGUgdXNlciBvdmVycmlkZSB0aGUgdGVzdC4KK2Vsc2UKK2FzX3NhdmVfSUZTPSRJRlM7IElGUz0kUEFUSF9TRVBBUkFUT1IKK2ZvciBhc19kaXIgaW4gJFBBVEgKK2RvCisgIElGUz0kYXNfc2F2ZV9JRlMKKyAgdGVzdCAteiAiJGFzX2RpciIgJiYgYXNfZGlyPS4KKyAgICBmb3IgYWNfZXhlY19leHQgaW4gJycgJGFjX2V4ZWN1dGFibGVfZXh0ZW5zaW9uczsgZG8KKyAgaWYgeyB0ZXN0IC1mICIkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IiAmJiAkYXNfdGVzdF94ICIkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IjsgfTsgdGhlbgorICAgIGFjX2N2X3Byb2dfYWNfY3RfU1RSSVA9InN0cmlwIgorICAgICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGZvdW5kICRhc19kaXIvJGFjX3dvcmQkYWNfZXhlY19leHQiID4mNQorICAgIGJyZWFrIDIKKyAgZmkKK2RvbmUKKyAgZG9uZQorSUZTPSRhc19zYXZlX0lGUworCitmaQorZmkKK2FjX2N0X1NUUklQPSRhY19jdl9wcm9nX2FjX2N0X1NUUklQCitpZiB0ZXN0IC1uICIkYWNfY3RfU1RSSVAiOyB0aGVuCisgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiAkYWNfY3RfU1RSSVAiID4mNQorJGFzX2VjaG8gIiRhY19jdF9TVFJJUCIgPiY2OyB9CitlbHNlCisgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiBubyIgPiY1CiskYXNfZWNobyAibm8iID4mNjsgfQorZmkKKworICBpZiB0ZXN0ICJ4JGFjX2N0X1NUUklQIiA9IHg7IHRoZW4KKyAgICBTVFJJUD0iOiIKKyAgZWxzZQorICAgIGNhc2UgJGNyb3NzX2NvbXBpbGluZzokYWNfdG9vbF93YXJuZWQgaW4KK3llczopCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IFdBUk5JTkc6IHVzaW5nIGNyb3NzIHRvb2xzIG5vdCBwcmVmaXhlZCB3aXRoIGhvc3QgdHJpcGxldCIgPiY1CiskYXNfZWNobyAiJGFzX21lOiBXQVJOSU5HOiB1c2luZyBjcm9zcyB0b29scyBub3QgcHJlZml4ZWQgd2l0aCBob3N0IHRyaXBsZXQiID4mMjt9CithY190b29sX3dhcm5lZD15ZXMgOzsKK2VzYWMKKyAgICBTVFJJUD0kYWNfY3RfU1RSSVAKKyAgZmkKK2Vsc2UKKyAgU1RSSVA9IiRhY19jdl9wcm9nX1NUUklQIgorZmkKKworZmkKK0lOU1RBTExfU1RSSVBfUFJPR1JBTT0iXCQoaW5zdGFsbF9zaCkgLWMgLXMiCisKK3sgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgZm9yIGEgdGhyZWFkLXNhZmUgbWtkaXIgLXAiID4mNQorJGFzX2VjaG9fbiAiY2hlY2tpbmcgZm9yIGEgdGhyZWFkLXNhZmUgbWtkaXIgLXAuLi4gIiA+JjY7IH0KK2lmIHRlc3QgLXogIiRNS0RJUl9QIjsgdGhlbgorICBpZiAke2FjX2N2X3BhdGhfbWtkaXIrOn0gZmFsc2U7IHRoZW4gOgorICAkYXNfZWNob19uICIoY2FjaGVkKSAiID4mNgorZWxzZQorICBhc19zYXZlX0lGUz0kSUZTOyBJRlM9JFBBVEhfU0VQQVJBVE9SCitmb3IgYXNfZGlyIGluICRQQVRIJFBBVEhfU0VQQVJBVE9SL29wdC9zZncvYmluCitkbworICBJRlM9JGFzX3NhdmVfSUZTCisgIHRlc3QgLXogIiRhc19kaXIiICYmIGFzX2Rpcj0uCisgICAgZm9yIGFjX3Byb2cgaW4gbWtkaXIgZ21rZGlyOyBkbworCSBmb3IgYWNfZXhlY19leHQgaW4gJycgJGFjX2V4ZWN1dGFibGVfZXh0ZW5zaW9uczsgZG8KKwkgICB7IHRlc3QgLWYgIiRhc19kaXIvJGFjX3Byb2ckYWNfZXhlY19leHQiICYmICRhc190ZXN0X3ggIiRhc19kaXIvJGFjX3Byb2ckYWNfZXhlY19leHQiOyB9IHx8IGNvbnRpbnVlCisJICAgY2FzZSBgIiRhc19kaXIvJGFjX3Byb2ckYWNfZXhlY19leHQiIC0tdmVyc2lvbiAyPiYxYCBpbiAjKAorCSAgICAgJ21rZGlyIChHTlUgY29yZXV0aWxzKSAnKiB8IFwKKwkgICAgICdta2RpciAoY29yZXV0aWxzKSAnKiB8IFwKKwkgICAgICdta2RpciAoZmlsZXV0aWxzKSAnNC4xKikKKwkgICAgICAgYWNfY3ZfcGF0aF9ta2Rpcj0kYXNfZGlyLyRhY19wcm9nJGFjX2V4ZWNfZXh0CisJICAgICAgIGJyZWFrIDM7OworCSAgIGVzYWMKKwkgZG9uZQorICAgICAgIGRvbmUKKyAgZG9uZQorSUZTPSRhc19zYXZlX0lGUworCitmaQorCisgIHRlc3QgLWQgLi8tLXZlcnNpb24gJiYgcm1kaXIgLi8tLXZlcnNpb24KKyAgaWYgdGVzdCAiJHthY19jdl9wYXRoX21rZGlyK3NldH0iID0gc2V0OyB0aGVuCisgICAgTUtESVJfUD0iJGFjX2N2X3BhdGhfbWtkaXIgLXAiCisgIGVsc2UKKyAgICAjIEFzIGEgbGFzdCByZXNvcnQsIHVzZSB0aGUgc2xvdyBzaGVsbCBzY3JpcHQuICBEb24ndCBjYWNoZSBhCisgICAgIyB2YWx1ZSBmb3IgTUtESVJfUCB3aXRoaW4gYSBzb3VyY2UgZGlyZWN0b3J5LCBiZWNhdXNlIHRoYXQgd2lsbAorICAgICMgYnJlYWsgb3RoZXIgcGFja2FnZXMgdXNpbmcgdGhlIGNhY2hlIGlmIHRoYXQgZGlyZWN0b3J5IGlzCisgICAgIyByZW1vdmVkLCBvciBpZiB0aGUgdmFsdWUgaXMgYSByZWxhdGl2ZSBuYW1lLgorICAgIE1LRElSX1A9IiRhY19pbnN0YWxsX3NoIC1kIgorICBmaQorZmkKK3sgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiAkTUtESVJfUCIgPiY1CiskYXNfZWNobyAiJE1LRElSX1AiID4mNjsgfQorCitta2Rpcl9wPSIkTUtESVJfUCIKK2Nhc2UgJG1rZGlyX3AgaW4KKyAgW1xcLyRdKiB8ID86W1xcL10qKSA7OworICAqLyopIG1rZGlyX3A9IlwkKHRvcF9idWlsZGRpcikvJG1rZGlyX3AiIDs7Citlc2FjCisKK2ZvciBhY19wcm9nIGluIGdhd2sgbWF3ayBuYXdrIGF3aworZG8KKyAgIyBFeHRyYWN0IHRoZSBmaXJzdCB3b3JkIG9mICIkYWNfcHJvZyIsIHNvIGl0IGNhbiBiZSBhIHByb2dyYW0gbmFtZSB3aXRoIGFyZ3MuCitzZXQgZHVtbXkgJGFjX3Byb2c7IGFjX3dvcmQ9JDIKK3sgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgZm9yICRhY193b3JkIiA+JjUKKyRhc19lY2hvX24gImNoZWNraW5nIGZvciAkYWNfd29yZC4uLiAiID4mNjsgfQoraWYgJHthY19jdl9wcm9nX0FXSys6fSBmYWxzZTsgdGhlbiA6CisgICRhc19lY2hvX24gIihjYWNoZWQpICIgPiY2CitlbHNlCisgIGlmIHRlc3QgLW4gIiRBV0siOyB0aGVuCisgIGFjX2N2X3Byb2dfQVdLPSIkQVdLIiAjIExldCB0aGUgdXNlciBvdmVycmlkZSB0aGUgdGVzdC4KK2Vsc2UKK2FzX3NhdmVfSUZTPSRJRlM7IElGUz0kUEFUSF9TRVBBUkFUT1IKK2ZvciBhc19kaXIgaW4gJFBBVEgKK2RvCisgIElGUz0kYXNfc2F2ZV9JRlMKKyAgdGVzdCAteiAiJGFzX2RpciIgJiYgYXNfZGlyPS4KKyAgICBmb3IgYWNfZXhlY19leHQgaW4gJycgJGFjX2V4ZWN1dGFibGVfZXh0ZW5zaW9uczsgZG8KKyAgaWYgeyB0ZXN0IC1mICIkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IiAmJiAkYXNfdGVzdF94ICIkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IjsgfTsgdGhlbgorICAgIGFjX2N2X3Byb2dfQVdLPSIkYWNfcHJvZyIKKyAgICAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBmb3VuZCAkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IiA+JjUKKyAgICBicmVhayAyCisgIGZpCitkb25lCisgIGRvbmUKK0lGUz0kYXNfc2F2ZV9JRlMKKworZmkKK2ZpCitBV0s9JGFjX2N2X3Byb2dfQVdLCitpZiB0ZXN0IC1uICIkQVdLIjsgdGhlbgorICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogJEFXSyIgPiY1CiskYXNfZWNobyAiJEFXSyIgPiY2OyB9CitlbHNlCisgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiBubyIgPiY1CiskYXNfZWNobyAibm8iID4mNjsgfQorZmkKKworCisgIHRlc3QgLW4gIiRBV0siICYmIGJyZWFrCitkb25lCisKK3sgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgd2hldGhlciAke01BS0UtbWFrZX0gc2V0cyBcJChNQUtFKSIgPiY1CiskYXNfZWNob19uICJjaGVja2luZyB3aGV0aGVyICR7TUFLRS1tYWtlfSBzZXRzIFwkKE1BS0UpLi4uICIgPiY2OyB9CitzZXQgeCAke01BS0UtbWFrZX0KK2FjX21ha2U9YCRhc19lY2hvICIkMiIgfCBzZWQgJ3MvKy9wL2c7IHMvW15hLXpBLVowLTlfXS9fL2cnYAoraWYgZXZhbCBcJHthY19jdl9wcm9nX21ha2VfJHthY19tYWtlfV9zZXQrOn0gZmFsc2U7IHRoZW4gOgorICAkYXNfZWNob19uICIoY2FjaGVkKSAiID4mNgorZWxzZQorICBjYXQgPmNvbmZ0ZXN0Lm1ha2UgPDxcX0FDRU9GCitTSEVMTCA9IC9iaW4vc2gKK2FsbDoKKwlAZWNobyAnQEBAJSUlPSQoTUFLRSk9QEBAJSUlJworX0FDRU9GCisjIEdOVSBtYWtlIHNvbWV0aW1lcyBwcmludHMgIm1ha2VbMV06IEVudGVyaW5nIC4uLiIsIHdoaWNoIHdvdWxkIGNvbmZ1c2UgdXMuCitjYXNlIGAke01BS0UtbWFrZX0gLWYgY29uZnRlc3QubWFrZSAyPi9kZXYvbnVsbGAgaW4KKyAgKkBAQCUlJT0/Kj1AQEAlJSUqKQorICAgIGV2YWwgYWNfY3ZfcHJvZ19tYWtlXyR7YWNfbWFrZX1fc2V0PXllczs7CisgICopCisgICAgZXZhbCBhY19jdl9wcm9nX21ha2VfJHthY19tYWtlfV9zZXQ9bm87OworZXNhYworcm0gLWYgY29uZnRlc3QubWFrZQorZmkKK2lmIGV2YWwgdGVzdCBcJGFjX2N2X3Byb2dfbWFrZV8ke2FjX21ha2V9X3NldCA9IHllczsgdGhlbgorICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogeWVzIiA+JjUKKyRhc19lY2hvICJ5ZXMiID4mNjsgfQorICBTRVRfTUFLRT0KK2Vsc2UKKyAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6IG5vIiA+JjUKKyRhc19lY2hvICJubyIgPiY2OyB9CisgIFNFVF9NQUtFPSJNQUtFPSR7TUFLRS1tYWtlfSIKK2ZpCisKK3JtIC1yZiAudHN0IDI+L2Rldi9udWxsCitta2RpciAudHN0IDI+L2Rldi9udWxsCitpZiB0ZXN0IC1kIC50c3Q7IHRoZW4KKyAgYW1fX2xlYWRpbmdfZG90PS4KK2Vsc2UKKyAgYW1fX2xlYWRpbmdfZG90PV8KK2ZpCitybWRpciAudHN0IDI+L2Rldi9udWxsCisKK0RFUERJUj0iJHthbV9fbGVhZGluZ19kb3R9ZGVwcyIKKworYWNfY29uZmlnX2NvbW1hbmRzPSIkYWNfY29uZmlnX2NvbW1hbmRzIGRlcGZpbGVzIgorCisKK2FtX21ha2U9JHtNQUtFLW1ha2V9CitjYXQgPiBjb25maW5jIDw8ICdFTkQnCithbV9fZG9pdDoKKwlAZWNobyB0aGlzIGlzIHRoZSBhbV9fZG9pdCB0YXJnZXQKKy5QSE9OWTogYW1fX2RvaXQKK0VORAorIyBJZiB3ZSBkb24ndCBmaW5kIGFuIGluY2x1ZGUgZGlyZWN0aXZlLCBqdXN0IGNvbW1lbnQgb3V0IHRoZSBjb2RlLgoreyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBjaGVja2luZyBmb3Igc3R5bGUgb2YgaW5jbHVkZSB1c2VkIGJ5ICRhbV9tYWtlIiA+JjUKKyRhc19lY2hvX24gImNoZWNraW5nIGZvciBzdHlsZSBvZiBpbmNsdWRlIHVzZWQgYnkgJGFtX21ha2UuLi4gIiA+JjY7IH0KK2FtX19pbmNsdWRlPSIjIgorYW1fX3F1b3RlPQorX2FtX3Jlc3VsdD1ub25lCisjIEZpcnN0IHRyeSBHTlUgbWFrZSBzdHlsZSBpbmNsdWRlLgorZWNobyAiaW5jbHVkZSBjb25maW5jIiA+IGNvbmZtZgorIyBJZ25vcmUgYWxsIGtpbmRzIG9mIGFkZGl0aW9uYWwgb3V0cHV0IGZyb20gYG1ha2UnLgorY2FzZSBgJGFtX21ha2UgLXMgLWYgY29uZm1mIDI+IC9kZXYvbnVsbGAgaW4gIygKKyp0aGVcIGFtX19kb2l0XCB0YXJnZXQqKQorICBhbV9faW5jbHVkZT1pbmNsdWRlCisgIGFtX19xdW90ZT0KKyAgX2FtX3Jlc3VsdD1HTlUKKyAgOzsKK2VzYWMKKyMgTm93IHRyeSBCU0QgbWFrZSBzdHlsZSBpbmNsdWRlLgoraWYgdGVzdCAiJGFtX19pbmNsdWRlIiA9ICIjIjsgdGhlbgorICAgZWNobyAnLmluY2x1ZGUgImNvbmZpbmMiJyA+IGNvbmZtZgorICAgY2FzZSBgJGFtX21ha2UgLXMgLWYgY29uZm1mIDI+IC9kZXYvbnVsbGAgaW4gIygKKyAgICp0aGVcIGFtX19kb2l0XCB0YXJnZXQqKQorICAgICBhbV9faW5jbHVkZT0uaW5jbHVkZQorICAgICBhbV9fcXVvdGU9IlwiIgorICAgICBfYW1fcmVzdWx0PUJTRAorICAgICA7OworICAgZXNhYworZmkKKworCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogJF9hbV9yZXN1bHQiID4mNQorJGFzX2VjaG8gIiRfYW1fcmVzdWx0IiA+JjY7IH0KK3JtIC1mIGNvbmZpbmMgY29uZm1mCisKKyMgQ2hlY2sgd2hldGhlciAtLWVuYWJsZS1kZXBlbmRlbmN5LXRyYWNraW5nIHdhcyBnaXZlbi4KK2lmIHRlc3QgIiR7ZW5hYmxlX2RlcGVuZGVuY3lfdHJhY2tpbmcrc2V0fSIgPSBzZXQ7IHRoZW4gOgorICBlbmFibGV2YWw9JGVuYWJsZV9kZXBlbmRlbmN5X3RyYWNraW5nOworZmkKKworaWYgdGVzdCAieCRlbmFibGVfZGVwZW5kZW5jeV90cmFja2luZyIgIT0geG5vOyB0aGVuCisgIGFtX2RlcGNvbXA9IiRhY19hdXhfZGlyL2RlcGNvbXAiCisgIEFNREVQQkFDS1NMQVNIPSdcJworZmkKKyBpZiB0ZXN0ICJ4JGVuYWJsZV9kZXBlbmRlbmN5X3RyYWNraW5nIiAhPSB4bm87IHRoZW4KKyAgQU1ERVBfVFJVRT0KKyAgQU1ERVBfRkFMU0U9JyMnCitlbHNlCisgIEFNREVQX1RSVUU9JyMnCisgIEFNREVQX0ZBTFNFPQorZmkKKworCitpZiB0ZXN0ICJgY2QgJHNyY2RpciAmJiBwd2RgIiAhPSAiYHB3ZGAiOyB0aGVuCisgICMgVXNlIC1JJChzcmNkaXIpIG9ubHkgd2hlbiAkKHNyY2RpcikgIT0gLiwgc28gdGhhdCBtYWtlJ3Mgb3V0cHV0CisgICMgaXMgbm90IHBvbGx1dGVkIHdpdGggcmVwZWF0ZWQgIi1JLiIKKyAgYW1fX2lzcmM9JyAtSSQoc3JjZGlyKScKKyAgIyB0ZXN0IHRvIHNlZSBpZiBzcmNkaXIgYWxyZWFkeSBjb25maWd1cmVkCisgIGlmIHRlc3QgLWYgJHNyY2Rpci9jb25maWcuc3RhdHVzOyB0aGVuCisgICAgYXNfZm5fZXJyb3IgJD8gInNvdXJjZSBkaXJlY3RvcnkgYWxyZWFkeSBjb25maWd1cmVkOyBydW4gXCJtYWtlIGRpc3RjbGVhblwiIHRoZXJlIGZpcnN0IiAiJExJTkVOTyIgNQorICBmaQorZmkKKworIyB0ZXN0IHdoZXRoZXIgd2UgaGF2ZSBjeWdwYXRoCitpZiB0ZXN0IC16ICIkQ1lHUEFUSF9XIjsgdGhlbgorICBpZiAoY3lncGF0aCAtLXZlcnNpb24pID4vZGV2L251bGwgMj4vZGV2L251bGw7IHRoZW4KKyAgICBDWUdQQVRIX1c9J2N5Z3BhdGggLXcnCisgIGVsc2UKKyAgICBDWUdQQVRIX1c9ZWNobworICBmaQorZmkKKworCisjIERlZmluZSB0aGUgaWRlbnRpdHkgb2YgdGhlIHBhY2thZ2UuCisgUEFDS0FHRT0nZHBrZycKKyBWRVJTSU9OPScxLjE2LjEuMScKKworCitjYXQgPj5jb25mZGVmcy5oIDw8X0FDRU9GCisjZGVmaW5lIFBBQ0tBR0UgIiRQQUNLQUdFIgorX0FDRU9GCisKKworY2F0ID4+Y29uZmRlZnMuaCA8PF9BQ0VPRgorI2RlZmluZSBWRVJTSU9OICIkVkVSU0lPTiIKK19BQ0VPRgorCisjIFNvbWUgdG9vbHMgQXV0b21ha2UgbmVlZHMuCisKK0FDTE9DQUw9JHtBQ0xPQ0FMLSIke2FtX21pc3NpbmdfcnVufWFjbG9jYWwtJHthbV9fYXBpX3ZlcnNpb259In0KKworCitBVVRPQ09ORj0ke0FVVE9DT05GLSIke2FtX21pc3NpbmdfcnVufWF1dG9jb25mIn0KKworCitBVVRPTUFLRT0ke0FVVE9NQUtFLSIke2FtX21pc3NpbmdfcnVufWF1dG9tYWtlLSR7YW1fX2FwaV92ZXJzaW9ufSJ9CisKKworQVVUT0hFQURFUj0ke0FVVE9IRUFERVItIiR7YW1fbWlzc2luZ19ydW59YXV0b2hlYWRlciJ9CisKKworTUFLRUlORk89JHtNQUtFSU5GTy0iJHthbV9taXNzaW5nX3J1bn1tYWtlaW5mbyJ9CisKKyMgV2UgbmVlZCBhd2sgZm9yIHRoZSAiY2hlY2siIHRhcmdldC4gIFRoZSBzeXN0ZW0gImF3ayIgaXMgYmFkIG9uCisjIHNvbWUgcGxhdGZvcm1zLgorIyBBbHdheXMgZGVmaW5lIEFNVEFSIGZvciBiYWNrd2FyZCBjb21wYXRpYmlsaXR5LgorCitBTVRBUj0ke0FNVEFSLSIke2FtX21pc3NpbmdfcnVufXRhciJ9CisKK2FtX190YXI9JyR7QU1UQVJ9IGNob2YgLSAiJCR0YXJkaXIiJzsgYW1fX3VudGFyPScke0FNVEFSfSB4ZiAtJworCisKKworCitkZXBjYz0iJENDIiAgIGFtX2NvbXBpbGVyX2xpc3Q9CisKK3sgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgZGVwZW5kZW5jeSBzdHlsZSBvZiAkZGVwY2MiID4mNQorJGFzX2VjaG9fbiAiY2hlY2tpbmcgZGVwZW5kZW5jeSBzdHlsZSBvZiAkZGVwY2MuLi4gIiA+JjY7IH0KK2lmICR7YW1fY3ZfQ0NfZGVwZW5kZW5jaWVzX2NvbXBpbGVyX3R5cGUrOn0gZmFsc2U7IHRoZW4gOgorICAkYXNfZWNob19uICIoY2FjaGVkKSAiID4mNgorZWxzZQorICBpZiB0ZXN0IC16ICIkQU1ERVBfVFJVRSIgJiYgdGVzdCAtZiAiJGFtX2RlcGNvbXAiOyB0aGVuCisgICMgV2UgbWFrZSBhIHN1YmRpciBhbmQgZG8gdGhlIHRlc3RzIHRoZXJlLiAgT3RoZXJ3aXNlIHdlIGNhbiBlbmQgdXAKKyAgIyBtYWtpbmcgYm9ndXMgZmlsZXMgdGhhdCB3ZSBkb24ndCBrbm93IGFib3V0IGFuZCBuZXZlciByZW1vdmUuICBGb3IKKyAgIyBpbnN0YW5jZSBpdCB3YXMgcmVwb3J0ZWQgdGhhdCBvbiBIUC1VWCB0aGUgZ2NjIHRlc3Qgd2lsbCBlbmQgdXAKKyAgIyBtYWtpbmcgYSBkdW1teSBmaWxlIG5hbWVkIGBEJyAtLSBiZWNhdXNlIGAtTUQnIG1lYW5zIGBwdXQgdGhlIG91dHB1dAorICAjIGluIEQnLgorICBta2RpciBjb25mdGVzdC5kaXIKKyAgIyBDb3B5IGRlcGNvbXAgdG8gc3ViZGlyIGJlY2F1c2Ugb3RoZXJ3aXNlIHdlIHdvbid0IGZpbmQgaXQgaWYgd2UncmUKKyAgIyB1c2luZyBhIHJlbGF0aXZlIGRpcmVjdG9yeS4KKyAgY3AgIiRhbV9kZXBjb21wIiBjb25mdGVzdC5kaXIKKyAgY2QgY29uZnRlc3QuZGlyCisgICMgV2Ugd2lsbCBidWlsZCBvYmplY3RzIGFuZCBkZXBlbmRlbmNpZXMgaW4gYSBzdWJkaXJlY3RvcnkgYmVjYXVzZQorICAjIGl0IGhlbHBzIHRvIGRldGVjdCBpbmFwcGxpY2FibGUgZGVwZW5kZW5jeSBtb2Rlcy4gIEZvciBpbnN0YW5jZQorICAjIGJvdGggVHJ1NjQncyBjYyBhbmQgSUNDIHN1cHBvcnQgLU1EIHRvIG91dHB1dCBkZXBlbmRlbmNpZXMgYXMgYQorICAjIHNpZGUgZWZmZWN0IG9mIGNvbXBpbGF0aW9uLCBidXQgSUNDIHdpbGwgcHV0IHRoZSBkZXBlbmRlbmNpZXMgaW4KKyAgIyB0aGUgY3VycmVudCBkaXJlY3Rvcnkgd2hpbGUgVHJ1NjQgd2lsbCBwdXQgdGhlbSBpbiB0aGUgb2JqZWN0CisgICMgZGlyZWN0b3J5LgorICBta2RpciBzdWIKKworICBhbV9jdl9DQ19kZXBlbmRlbmNpZXNfY29tcGlsZXJfdHlwZT1ub25lCisgIGlmIHRlc3QgIiRhbV9jb21waWxlcl9saXN0IiA9ICIiOyB0aGVuCisgICAgIGFtX2NvbXBpbGVyX2xpc3Q9YHNlZCAtbiAncy9eIypcKFthLXpBLVowLTldKlwpKSQvXDEvcCcgPCAuL2RlcGNvbXBgCisgIGZpCisgIGFtX191bml2ZXJzYWw9ZmFsc2UKKyAgY2FzZSAiICRkZXBjYyAiIGluICMoCisgICAgICpcIC1hcmNoXCAqXCAtYXJjaFwgKikgYW1fX3VuaXZlcnNhbD10cnVlIDs7CisgICAgIGVzYWMKKworICBmb3IgZGVwbW9kZSBpbiAkYW1fY29tcGlsZXJfbGlzdDsgZG8KKyAgICAjIFNldHVwIGEgc291cmNlIHdpdGggbWFueSBkZXBlbmRlbmNpZXMsIGJlY2F1c2Ugc29tZSBjb21waWxlcnMKKyAgICAjIGxpa2UgdG8gd3JhcCBsYXJnZSBkZXBlbmRlbmN5IGxpc3RzIG9uIGNvbHVtbiA4MCAod2l0aCBcKSwgYW5kCisgICAgIyB3ZSBzaG91bGQgbm90IGNob29zZSBhIGRlcGNvbXAgbW9kZSB3aGljaCBpcyBjb25mdXNlZCBieSB0aGlzLgorICAgICMKKyAgICAjIFdlIG5lZWQgdG8gcmVjcmVhdGUgdGhlc2UgZmlsZXMgZm9yIGVhY2ggdGVzdCwgYXMgdGhlIGNvbXBpbGVyIG1heQorICAgICMgb3ZlcndyaXRlIHNvbWUgb2YgdGhlbSB3aGVuIHRlc3Rpbmcgd2l0aCBvYnNjdXJlIGNvbW1hbmQgbGluZXMuCisgICAgIyBUaGlzIGhhcHBlbnMgYXQgbGVhc3Qgd2l0aCB0aGUgQUlYIEMgY29tcGlsZXIuCisgICAgOiA+IHN1Yi9jb25mdGVzdC5jCisgICAgZm9yIGkgaW4gMSAyIDMgNCA1IDY7IGRvCisgICAgICBlY2hvICcjaW5jbHVkZSAiY29uZnRzdCckaScuaCInID4+IHN1Yi9jb25mdGVzdC5jCisgICAgICAjIFVzaW5nIGA6ID4gc3ViL2NvbmZ0c3QkaS5oJyBjcmVhdGVzIG9ubHkgc3ViL2NvbmZ0c3QxLmggd2l0aAorICAgICAgIyBTb2xhcmlzIDgncyB7L3Vzcix9L2Jpbi9zaC4KKyAgICAgIHRvdWNoIHN1Yi9jb25mdHN0JGkuaAorICAgIGRvbmUKKyAgICBlY2hvICIke2FtX19pbmNsdWRlfSAke2FtX19xdW90ZX1zdWIvY29uZnRlc3QuUG8ke2FtX19xdW90ZX0iID4gY29uZm1mCisKKyAgICAjIFdlIGNoZWNrIHdpdGggYC1jJyBhbmQgYC1vJyBmb3IgdGhlIHNha2Ugb2YgdGhlICJkYXNobXN0ZG91dCIKKyAgICAjIG1vZGUuICBJdCB0dXJucyBvdXQgdGhhdCB0aGUgU3VuUHJvIEMrKyBjb21waWxlciBkb2VzIG5vdCBwcm9wZXJseQorICAgICMgaGFuZGxlIGAtTSAtbycsIGFuZCB3ZSBuZWVkIHRvIGRldGVjdCB0aGlzLiAgQWxzbywgc29tZSBJbnRlbAorICAgICMgdmVyc2lvbnMgaGFkIHRyb3VibGUgd2l0aCBvdXRwdXQgaW4gc3ViZGlycworICAgIGFtX19vYmo9c3ViL2NvbmZ0ZXN0LiR7T0JKRVhULW99CisgICAgYW1fX21pbnVzX29iaj0iLW8gJGFtX19vYmoiCisgICAgY2FzZSAkZGVwbW9kZSBpbgorICAgIGdjYykKKyAgICAgICMgVGhpcyBkZXBtb2RlIGNhdXNlcyBhIGNvbXBpbGVyIHJhY2UgaW4gdW5pdmVyc2FsIG1vZGUuCisgICAgICB0ZXN0ICIkYW1fX3VuaXZlcnNhbCIgPSBmYWxzZSB8fCBjb250aW51ZQorICAgICAgOzsKKyAgICBub3NpZGVlZmZlY3QpCisgICAgICAjIGFmdGVyIHRoaXMgdGFnLCBtZWNoYW5pc21zIGFyZSBub3QgYnkgc2lkZS1lZmZlY3QsIHNvIHRoZXknbGwKKyAgICAgICMgb25seSBiZSB1c2VkIHdoZW4gZXhwbGljaXRseSByZXF1ZXN0ZWQKKyAgICAgIGlmIHRlc3QgIngkZW5hYmxlX2RlcGVuZGVuY3lfdHJhY2tpbmciID0geHllczsgdGhlbgorCWNvbnRpbnVlCisgICAgICBlbHNlCisJYnJlYWsKKyAgICAgIGZpCisgICAgICA7OworICAgIG1zdmlzdWFsY3BwIHwgbXN2Y21zeXMpCisgICAgICAjIFRoaXMgY29tcGlsZXIgd29uJ3QgZ3JvayBgLWMgLW8nLCBidXQgYWxzbywgdGhlIG1pbnVzbyB0ZXN0IGhhcworICAgICAgIyBub3QgcnVuIHlldC4gIFRoZXNlIGRlcG1vZGVzIGFyZSBsYXRlIGVub3VnaCBpbiB0aGUgZ2FtZSwgYW5kCisgICAgICAjIHNvIHdlYWsgdGhhdCB0aGVpciBmdW5jdGlvbmluZyBzaG91bGQgbm90IGJlIGltcGFjdGVkLgorICAgICAgYW1fX29iaj1jb25mdGVzdC4ke09CSkVYVC1vfQorICAgICAgYW1fX21pbnVzX29iaj0KKyAgICAgIDs7CisgICAgbm9uZSkgYnJlYWsgOzsKKyAgICBlc2FjCisgICAgaWYgZGVwbW9kZT0kZGVwbW9kZSBcCisgICAgICAgc291cmNlPXN1Yi9jb25mdGVzdC5jIG9iamVjdD0kYW1fX29iaiBcCisgICAgICAgZGVwZmlsZT1zdWIvY29uZnRlc3QuUG8gdG1wZGVwZmlsZT1zdWIvY29uZnRlc3QuVFBvIFwKKyAgICAgICAkU0hFTEwgLi9kZXBjb21wICRkZXBjYyAtYyAkYW1fX21pbnVzX29iaiBzdWIvY29uZnRlc3QuYyBcCisgICAgICAgICA+L2Rldi9udWxsIDI+Y29uZnRlc3QuZXJyICYmCisgICAgICAgZ3JlcCBzdWIvY29uZnRzdDEuaCBzdWIvY29uZnRlc3QuUG8gPiAvZGV2L251bGwgMj4mMSAmJgorICAgICAgIGdyZXAgc3ViL2NvbmZ0c3Q2Lmggc3ViL2NvbmZ0ZXN0LlBvID4gL2Rldi9udWxsIDI+JjEgJiYKKyAgICAgICBncmVwICRhbV9fb2JqIHN1Yi9jb25mdGVzdC5QbyA+IC9kZXYvbnVsbCAyPiYxICYmCisgICAgICAgJHtNQUtFLW1ha2V9IC1zIC1mIGNvbmZtZiA+IC9kZXYvbnVsbCAyPiYxOyB0aGVuCisgICAgICAjIGljYyBkb2Vzbid0IGNob2tlIG9uIHVua25vd24gb3B0aW9ucywgaXQgd2lsbCBqdXN0IGlzc3VlIHdhcm5pbmdzCisgICAgICAjIG9yIHJlbWFya3MgKGV2ZW4gd2l0aCAtV2Vycm9yKS4gIFNvIHdlIGdyZXAgc3RkZXJyIGZvciBhbnkgbWVzc2FnZQorICAgICAgIyB0aGF0IHNheXMgYW4gb3B0aW9uIHdhcyBpZ25vcmVkIG9yIG5vdCBzdXBwb3J0ZWQuCisgICAgICAjIFdoZW4gZ2l2ZW4gLU1QLCBpY2MgNy4wIGFuZCA3LjEgY29tcGxhaW4gdGh1c2x5OgorICAgICAgIyAgIGljYzogQ29tbWFuZCBsaW5lIHdhcm5pbmc6IGlnbm9yaW5nIG9wdGlvbiAnLU0nOyBubyBhcmd1bWVudCByZXF1aXJlZAorICAgICAgIyBUaGUgZGlhZ25vc2lzIGNoYW5nZWQgaW4gaWNjIDguMDoKKyAgICAgICMgICBpY2M6IENvbW1hbmQgbGluZSByZW1hcms6IG9wdGlvbiAnLU1QJyBub3Qgc3VwcG9ydGVkCisgICAgICBpZiAoZ3JlcCAnaWdub3Jpbmcgb3B0aW9uJyBjb25mdGVzdC5lcnIgfHwKKyAgICAgICAgICBncmVwICdub3Qgc3VwcG9ydGVkJyBjb25mdGVzdC5lcnIpID4vZGV2L251bGwgMj4mMTsgdGhlbiA6OyBlbHNlCisgICAgICAgIGFtX2N2X0NDX2RlcGVuZGVuY2llc19jb21waWxlcl90eXBlPSRkZXBtb2RlCisgICAgICAgIGJyZWFrCisgICAgICBmaQorICAgIGZpCisgIGRvbmUKKworICBjZCAuLgorICBybSAtcmYgY29uZnRlc3QuZGlyCitlbHNlCisgIGFtX2N2X0NDX2RlcGVuZGVuY2llc19jb21waWxlcl90eXBlPW5vbmUKK2ZpCisKK2ZpCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogJGFtX2N2X0NDX2RlcGVuZGVuY2llc19jb21waWxlcl90eXBlIiA+JjUKKyRhc19lY2hvICIkYW1fY3ZfQ0NfZGVwZW5kZW5jaWVzX2NvbXBpbGVyX3R5cGUiID4mNjsgfQorQ0NERVBNT0RFPWRlcG1vZGU9JGFtX2N2X0NDX2RlcGVuZGVuY2llc19jb21waWxlcl90eXBlCisKKyBpZgorICB0ZXN0ICJ4JGVuYWJsZV9kZXBlbmRlbmN5X3RyYWNraW5nIiAhPSB4bm8gXAorICAmJiB0ZXN0ICIkYW1fY3ZfQ0NfZGVwZW5kZW5jaWVzX2NvbXBpbGVyX3R5cGUiID0gZ2NjMzsgdGhlbgorICBhbV9fZmFzdGRlcENDX1RSVUU9CisgIGFtX19mYXN0ZGVwQ0NfRkFMU0U9JyMnCitlbHNlCisgIGFtX19mYXN0ZGVwQ0NfVFJVRT0nIycKKyAgYW1fX2Zhc3RkZXBDQ19GQUxTRT0KK2ZpCisKKworCisKKyMgQ2hlY2sgd2hldGhlciAtLWVuYWJsZS1zaWxlbnQtcnVsZXMgd2FzIGdpdmVuLgoraWYgdGVzdCAiJHtlbmFibGVfc2lsZW50X3J1bGVzK3NldH0iID0gc2V0OyB0aGVuIDoKKyAgZW5hYmxldmFsPSRlbmFibGVfc2lsZW50X3J1bGVzOworZmkKKworY2FzZSAkZW5hYmxlX3NpbGVudF9ydWxlcyBpbgoreWVzKSBBTV9ERUZBVUxUX1ZFUkJPU0lUWT0wOzsKK25vKSAgQU1fREVGQVVMVF9WRVJCT1NJVFk9MTs7CisqKSAgIEFNX0RFRkFVTFRfVkVSQk9TSVRZPTA7OworZXNhYworQU1fQkFDS1NMQVNIPSdcJworCisKKworCisgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgd2hldGhlciBOTFMgaXMgcmVxdWVzdGVkIiA+JjUKKyRhc19lY2hvX24gImNoZWNraW5nIHdoZXRoZXIgTkxTIGlzIHJlcXVlc3RlZC4uLiAiID4mNjsgfQorICAgICMgQ2hlY2sgd2hldGhlciAtLWVuYWJsZS1ubHMgd2FzIGdpdmVuLgoraWYgdGVzdCAiJHtlbmFibGVfbmxzK3NldH0iID0gc2V0OyB0aGVuIDoKKyAgZW5hYmxldmFsPSRlbmFibGVfbmxzOyBVU0VfTkxTPSRlbmFibGV2YWwKK2Vsc2UKKyAgVVNFX05MUz15ZXMKK2ZpCisKKyAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6ICRVU0VfTkxTIiA+JjUKKyRhc19lY2hvICIkVVNFX05MUyIgPiY2OyB9CisKKworCisKKyAgICAgIEdFVFRFWFRfTUFDUk9fVkVSU0lPTj0wLjE4CisKKworCisKKyMgUHJlcGFyZSBQQVRIX1NFUEFSQVRPUi4KKyMgVGhlIHVzZXIgaXMgYWx3YXlzIHJpZ2h0LgoraWYgdGVzdCAiJHtQQVRIX1NFUEFSQVRPUitzZXR9IiAhPSBzZXQ7IHRoZW4KKyAgZWNobyAiIyEgL2Jpbi9zaCIgPmNvbmYkJC5zaAorICBlY2hvICAiZXhpdCAwIiAgID4+Y29uZiQkLnNoCisgIGNobW9kICt4IGNvbmYkJC5zaAorICBpZiAoUEFUSD0iL25vbmV4aXN0ZW50Oy4iOyBjb25mJCQuc2gpID4vZGV2L251bGwgMj4mMTsgdGhlbgorICAgIFBBVEhfU0VQQVJBVE9SPSc7JworICBlbHNlCisgICAgUEFUSF9TRVBBUkFUT1I9OgorICBmaQorICBybSAtZiBjb25mJCQuc2gKK2ZpCisKKyMgRmluZCBvdXQgaG93IHRvIHRlc3QgZm9yIGV4ZWN1dGFibGUgZmlsZXMuIERvbid0IHVzZSBhIHplcm8tYnl0ZSBmaWxlLAorIyBhcyBzeXN0ZW1zIG1heSB1c2UgbWV0aG9kcyBvdGhlciB0aGFuIG1vZGUgYml0cyB0byBkZXRlcm1pbmUgZXhlY3V0YWJpbGl0eS4KK2NhdCA+Y29uZiQkLmZpbGUgPDxfQVNFT0YKKyMhIC9iaW4vc2gKK2V4aXQgMAorX0FTRU9GCitjaG1vZCAreCBjb25mJCQuZmlsZQoraWYgdGVzdCAteCBjb25mJCQuZmlsZSA+L2Rldi9udWxsIDI+JjE7IHRoZW4KKyAgYWNfZXhlY3V0YWJsZV9wPSJ0ZXN0IC14IgorZWxzZQorICBhY19leGVjdXRhYmxlX3A9InRlc3QgLWYiCitmaQorcm0gLWYgY29uZiQkLmZpbGUKKworIyBFeHRyYWN0IHRoZSBmaXJzdCB3b3JkIG9mICJtc2dmbXQiLCBzbyBpdCBjYW4gYmUgYSBwcm9ncmFtIG5hbWUgd2l0aCBhcmdzLgorc2V0IGR1bW15IG1zZ2ZtdDsgYWNfd29yZD0kMgoreyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBjaGVja2luZyBmb3IgJGFjX3dvcmQiID4mNQorJGFzX2VjaG9fbiAiY2hlY2tpbmcgZm9yICRhY193b3JkLi4uICIgPiY2OyB9CitpZiAke2FjX2N2X3BhdGhfTVNHRk1UKzp9IGZhbHNlOyB0aGVuIDoKKyAgJGFzX2VjaG9fbiAiKGNhY2hlZCkgIiA+JjYKK2Vsc2UKKyAgY2FzZSAiJE1TR0ZNVCIgaW4KKyAgW1xcL10qIHwgPzpbXFwvXSopCisgICAgYWNfY3ZfcGF0aF9NU0dGTVQ9IiRNU0dGTVQiICMgTGV0IHRoZSB1c2VyIG92ZXJyaWRlIHRoZSB0ZXN0IHdpdGggYSBwYXRoLgorICAgIDs7CisgICopCisgICAgYWNfc2F2ZV9JRlM9IiRJRlMiOyBJRlM9JFBBVEhfU0VQQVJBVE9SCisgICAgZm9yIGFjX2RpciBpbiAkUEFUSDsgZG8KKyAgICAgIElGUz0iJGFjX3NhdmVfSUZTIgorICAgICAgdGVzdCAteiAiJGFjX2RpciIgJiYgYWNfZGlyPS4KKyAgICAgIGZvciBhY19leGVjX2V4dCBpbiAnJyAkYWNfZXhlY3V0YWJsZV9leHRlbnNpb25zOyBkbworICAgICAgICBpZiAkYWNfZXhlY3V0YWJsZV9wICIkYWNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IjsgdGhlbgorICAgICAgICAgIGVjaG8gIiRhc19tZTogdHJ5aW5nICRhY19kaXIvJGFjX3dvcmQuLi4iID4mNQorICAgICAgICAgIGlmICRhY19kaXIvJGFjX3dvcmQgLS1zdGF0aXN0aWNzIC9kZXYvbnVsbCA+JjUgMj4mMSAmJgorICAgICAoaWYgJGFjX2Rpci8kYWNfd29yZCAtLXN0YXRpc3RpY3MgL2Rldi9udWxsIDI+JjEgPi9kZXYvbnVsbCB8IGdyZXAgdXNhZ2UgPi9kZXYvbnVsbDsgdGhlbiBleGl0IDE7IGVsc2UgZXhpdCAwOyBmaSk7IHRoZW4KKyAgICAgICAgICAgIGFjX2N2X3BhdGhfTVNHRk1UPSIkYWNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IgorICAgICAgICAgICAgYnJlYWsgMgorICAgICAgICAgIGZpCisgICAgICAgIGZpCisgICAgICBkb25lCisgICAgZG9uZQorICAgIElGUz0iJGFjX3NhdmVfSUZTIgorICB0ZXN0IC16ICIkYWNfY3ZfcGF0aF9NU0dGTVQiICYmIGFjX2N2X3BhdGhfTVNHRk1UPSI6IgorICAgIDs7Citlc2FjCitmaQorTVNHRk1UPSIkYWNfY3ZfcGF0aF9NU0dGTVQiCitpZiB0ZXN0ICIkTVNHRk1UIiAhPSAiOiI7IHRoZW4KKyAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6ICRNU0dGTVQiID4mNQorJGFzX2VjaG8gIiRNU0dGTVQiID4mNjsgfQorZWxzZQorICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogbm8iID4mNQorJGFzX2VjaG8gIm5vIiA+JjY7IH0KK2ZpCisKKyAgIyBFeHRyYWN0IHRoZSBmaXJzdCB3b3JkIG9mICJnbXNnZm10Iiwgc28gaXQgY2FuIGJlIGEgcHJvZ3JhbSBuYW1lIHdpdGggYXJncy4KK3NldCBkdW1teSBnbXNnZm10OyBhY193b3JkPSQyCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIGZvciAkYWNfd29yZCIgPiY1CiskYXNfZWNob19uICJjaGVja2luZyBmb3IgJGFjX3dvcmQuLi4gIiA+JjY7IH0KK2lmICR7YWNfY3ZfcGF0aF9HTVNHRk1UKzp9IGZhbHNlOyB0aGVuIDoKKyAgJGFzX2VjaG9fbiAiKGNhY2hlZCkgIiA+JjYKK2Vsc2UKKyAgY2FzZSAkR01TR0ZNVCBpbgorICBbXFwvXSogfCA/OltcXC9dKikKKyAgYWNfY3ZfcGF0aF9HTVNHRk1UPSIkR01TR0ZNVCIgIyBMZXQgdGhlIHVzZXIgb3ZlcnJpZGUgdGhlIHRlc3Qgd2l0aCBhIHBhdGguCisgIDs7CisgICopCisgIGFzX3NhdmVfSUZTPSRJRlM7IElGUz0kUEFUSF9TRVBBUkFUT1IKK2ZvciBhc19kaXIgaW4gJFBBVEgKK2RvCisgIElGUz0kYXNfc2F2ZV9JRlMKKyAgdGVzdCAteiAiJGFzX2RpciIgJiYgYXNfZGlyPS4KKyAgICBmb3IgYWNfZXhlY19leHQgaW4gJycgJGFjX2V4ZWN1dGFibGVfZXh0ZW5zaW9uczsgZG8KKyAgaWYgeyB0ZXN0IC1mICIkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IiAmJiAkYXNfdGVzdF94ICIkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IjsgfTsgdGhlbgorICAgIGFjX2N2X3BhdGhfR01TR0ZNVD0iJGFzX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCIKKyAgICAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBmb3VuZCAkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IiA+JjUKKyAgICBicmVhayAyCisgIGZpCitkb25lCisgIGRvbmUKK0lGUz0kYXNfc2F2ZV9JRlMKKworICB0ZXN0IC16ICIkYWNfY3ZfcGF0aF9HTVNHRk1UIiAmJiBhY19jdl9wYXRoX0dNU0dGTVQ9IiRNU0dGTVQiCisgIDs7Citlc2FjCitmaQorR01TR0ZNVD0kYWNfY3ZfcGF0aF9HTVNHRk1UCitpZiB0ZXN0IC1uICIkR01TR0ZNVCI7IHRoZW4KKyAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6ICRHTVNHRk1UIiA+JjUKKyRhc19lY2hvICIkR01TR0ZNVCIgPiY2OyB9CitlbHNlCisgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiBubyIgPiY1CiskYXNfZWNobyAibm8iID4mNjsgfQorZmkKKworCisKKyAgICBjYXNlIGAkTVNHRk1UIC0tdmVyc2lvbiB8IHNlZCAxcSB8IHNlZCAtZSAncyxeW14wLTldKiwsJ2AgaW4KKyAgICAnJyB8IDAuWzAtOV0gfCAwLlswLTldLiogfCAwLjFbMC00XSB8IDAuMVswLTRdLiopIE1TR0ZNVF8wMTU9OiA7OworICAgICopIE1TR0ZNVF8wMTU9JE1TR0ZNVCA7OworICBlc2FjCisKKyAgY2FzZSBgJEdNU0dGTVQgLS12ZXJzaW9uIHwgc2VkIDFxIHwgc2VkIC1lICdzLF5bXjAtOV0qLCwnYCBpbgorICAgICcnIHwgMC5bMC05XSB8IDAuWzAtOV0uKiB8IDAuMVswLTRdIHwgMC4xWzAtNF0uKikgR01TR0ZNVF8wMTU9OiA7OworICAgICopIEdNU0dGTVRfMDE1PSRHTVNHRk1UIDs7CisgIGVzYWMKKworCisKKyMgUHJlcGFyZSBQQVRIX1NFUEFSQVRPUi4KKyMgVGhlIHVzZXIgaXMgYWx3YXlzIHJpZ2h0LgoraWYgdGVzdCAiJHtQQVRIX1NFUEFSQVRPUitzZXR9IiAhPSBzZXQ7IHRoZW4KKyAgZWNobyAiIyEgL2Jpbi9zaCIgPmNvbmYkJC5zaAorICBlY2hvICAiZXhpdCAwIiAgID4+Y29uZiQkLnNoCisgIGNobW9kICt4IGNvbmYkJC5zaAorICBpZiAoUEFUSD0iL25vbmV4aXN0ZW50Oy4iOyBjb25mJCQuc2gpID4vZGV2L251bGwgMj4mMTsgdGhlbgorICAgIFBBVEhfU0VQQVJBVE9SPSc7JworICBlbHNlCisgICAgUEFUSF9TRVBBUkFUT1I9OgorICBmaQorICBybSAtZiBjb25mJCQuc2gKK2ZpCisKKyMgRmluZCBvdXQgaG93IHRvIHRlc3QgZm9yIGV4ZWN1dGFibGUgZmlsZXMuIERvbid0IHVzZSBhIHplcm8tYnl0ZSBmaWxlLAorIyBhcyBzeXN0ZW1zIG1heSB1c2UgbWV0aG9kcyBvdGhlciB0aGFuIG1vZGUgYml0cyB0byBkZXRlcm1pbmUgZXhlY3V0YWJpbGl0eS4KK2NhdCA+Y29uZiQkLmZpbGUgPDxfQVNFT0YKKyMhIC9iaW4vc2gKK2V4aXQgMAorX0FTRU9GCitjaG1vZCAreCBjb25mJCQuZmlsZQoraWYgdGVzdCAteCBjb25mJCQuZmlsZSA+L2Rldi9udWxsIDI+JjE7IHRoZW4KKyAgYWNfZXhlY3V0YWJsZV9wPSJ0ZXN0IC14IgorZWxzZQorICBhY19leGVjdXRhYmxlX3A9InRlc3QgLWYiCitmaQorcm0gLWYgY29uZiQkLmZpbGUKKworIyBFeHRyYWN0IHRoZSBmaXJzdCB3b3JkIG9mICJ4Z2V0dGV4dCIsIHNvIGl0IGNhbiBiZSBhIHByb2dyYW0gbmFtZSB3aXRoIGFyZ3MuCitzZXQgZHVtbXkgeGdldHRleHQ7IGFjX3dvcmQ9JDIKK3sgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgZm9yICRhY193b3JkIiA+JjUKKyRhc19lY2hvX24gImNoZWNraW5nIGZvciAkYWNfd29yZC4uLiAiID4mNjsgfQoraWYgJHthY19jdl9wYXRoX1hHRVRURVhUKzp9IGZhbHNlOyB0aGVuIDoKKyAgJGFzX2VjaG9fbiAiKGNhY2hlZCkgIiA+JjYKK2Vsc2UKKyAgY2FzZSAiJFhHRVRURVhUIiBpbgorICBbXFwvXSogfCA/OltcXC9dKikKKyAgICBhY19jdl9wYXRoX1hHRVRURVhUPSIkWEdFVFRFWFQiICMgTGV0IHRoZSB1c2VyIG92ZXJyaWRlIHRoZSB0ZXN0IHdpdGggYSBwYXRoLgorICAgIDs7CisgICopCisgICAgYWNfc2F2ZV9JRlM9IiRJRlMiOyBJRlM9JFBBVEhfU0VQQVJBVE9SCisgICAgZm9yIGFjX2RpciBpbiAkUEFUSDsgZG8KKyAgICAgIElGUz0iJGFjX3NhdmVfSUZTIgorICAgICAgdGVzdCAteiAiJGFjX2RpciIgJiYgYWNfZGlyPS4KKyAgICAgIGZvciBhY19leGVjX2V4dCBpbiAnJyAkYWNfZXhlY3V0YWJsZV9leHRlbnNpb25zOyBkbworICAgICAgICBpZiAkYWNfZXhlY3V0YWJsZV9wICIkYWNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IjsgdGhlbgorICAgICAgICAgIGVjaG8gIiRhc19tZTogdHJ5aW5nICRhY19kaXIvJGFjX3dvcmQuLi4iID4mNQorICAgICAgICAgIGlmICRhY19kaXIvJGFjX3dvcmQgLS1vbWl0LWhlYWRlciAtLWNvcHlyaWdodC1ob2xkZXI9IC0tbXNnaWQtYnVncy1hZGRyZXNzPSAvZGV2L251bGwgPiY1IDI+JjEgJiYKKyAgICAgKGlmICRhY19kaXIvJGFjX3dvcmQgLS1vbWl0LWhlYWRlciAtLWNvcHlyaWdodC1ob2xkZXI9IC0tbXNnaWQtYnVncy1hZGRyZXNzPSAvZGV2L251bGwgMj4mMSA+L2Rldi9udWxsIHwgZ3JlcCB1c2FnZSA+L2Rldi9udWxsOyB0aGVuIGV4aXQgMTsgZWxzZSBleGl0IDA7IGZpKTsgdGhlbgorICAgICAgICAgICAgYWNfY3ZfcGF0aF9YR0VUVEVYVD0iJGFjX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCIKKyAgICAgICAgICAgIGJyZWFrIDIKKyAgICAgICAgICBmaQorICAgICAgICBmaQorICAgICAgZG9uZQorICAgIGRvbmUKKyAgICBJRlM9IiRhY19zYXZlX0lGUyIKKyAgdGVzdCAteiAiJGFjX2N2X3BhdGhfWEdFVFRFWFQiICYmIGFjX2N2X3BhdGhfWEdFVFRFWFQ9IjoiCisgICAgOzsKK2VzYWMKK2ZpCitYR0VUVEVYVD0iJGFjX2N2X3BhdGhfWEdFVFRFWFQiCitpZiB0ZXN0ICIkWEdFVFRFWFQiICE9ICI6IjsgdGhlbgorICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogJFhHRVRURVhUIiA+JjUKKyRhc19lY2hvICIkWEdFVFRFWFQiID4mNjsgfQorZWxzZQorICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogbm8iID4mNQorJGFzX2VjaG8gIm5vIiA+JjY7IH0KK2ZpCisKKyAgICBybSAtZiBtZXNzYWdlcy5wbworCisgICAgY2FzZSBgJFhHRVRURVhUIC0tdmVyc2lvbiB8IHNlZCAxcSB8IHNlZCAtZSAncyxeW14wLTldKiwsJ2AgaW4KKyAgICAnJyB8IDAuWzAtOV0gfCAwLlswLTldLiogfCAwLjFbMC00XSB8IDAuMVswLTRdLiopIFhHRVRURVhUXzAxNT06IDs7CisgICAgKikgWEdFVFRFWFRfMDE1PSRYR0VUVEVYVCA7OworICBlc2FjCisKKworCisjIFByZXBhcmUgUEFUSF9TRVBBUkFUT1IuCisjIFRoZSB1c2VyIGlzIGFsd2F5cyByaWdodC4KK2lmIHRlc3QgIiR7UEFUSF9TRVBBUkFUT1Irc2V0fSIgIT0gc2V0OyB0aGVuCisgIGVjaG8gIiMhIC9iaW4vc2giID5jb25mJCQuc2gKKyAgZWNobyAgImV4aXQgMCIgICA+PmNvbmYkJC5zaAorICBjaG1vZCAreCBjb25mJCQuc2gKKyAgaWYgKFBBVEg9Ii9ub25leGlzdGVudDsuIjsgY29uZiQkLnNoKSA+L2Rldi9udWxsIDI+JjE7IHRoZW4KKyAgICBQQVRIX1NFUEFSQVRPUj0nOycKKyAgZWxzZQorICAgIFBBVEhfU0VQQVJBVE9SPToKKyAgZmkKKyAgcm0gLWYgY29uZiQkLnNoCitmaQorCisjIEZpbmQgb3V0IGhvdyB0byB0ZXN0IGZvciBleGVjdXRhYmxlIGZpbGVzLiBEb24ndCB1c2UgYSB6ZXJvLWJ5dGUgZmlsZSwKKyMgYXMgc3lzdGVtcyBtYXkgdXNlIG1ldGhvZHMgb3RoZXIgdGhhbiBtb2RlIGJpdHMgdG8gZGV0ZXJtaW5lIGV4ZWN1dGFiaWxpdHkuCitjYXQgPmNvbmYkJC5maWxlIDw8X0FTRU9GCisjISAvYmluL3NoCitleGl0IDAKK19BU0VPRgorY2htb2QgK3ggY29uZiQkLmZpbGUKK2lmIHRlc3QgLXggY29uZiQkLmZpbGUgPi9kZXYvbnVsbCAyPiYxOyB0aGVuCisgIGFjX2V4ZWN1dGFibGVfcD0idGVzdCAteCIKK2Vsc2UKKyAgYWNfZXhlY3V0YWJsZV9wPSJ0ZXN0IC1mIgorZmkKK3JtIC1mIGNvbmYkJC5maWxlCisKKyMgRXh0cmFjdCB0aGUgZmlyc3Qgd29yZCBvZiAibXNnbWVyZ2UiLCBzbyBpdCBjYW4gYmUgYSBwcm9ncmFtIG5hbWUgd2l0aCBhcmdzLgorc2V0IGR1bW15IG1zZ21lcmdlOyBhY193b3JkPSQyCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIGZvciAkYWNfd29yZCIgPiY1CiskYXNfZWNob19uICJjaGVja2luZyBmb3IgJGFjX3dvcmQuLi4gIiA+JjY7IH0KK2lmICR7YWNfY3ZfcGF0aF9NU0dNRVJHRSs6fSBmYWxzZTsgdGhlbiA6CisgICRhc19lY2hvX24gIihjYWNoZWQpICIgPiY2CitlbHNlCisgIGNhc2UgIiRNU0dNRVJHRSIgaW4KKyAgW1xcL10qIHwgPzpbXFwvXSopCisgICAgYWNfY3ZfcGF0aF9NU0dNRVJHRT0iJE1TR01FUkdFIiAjIExldCB0aGUgdXNlciBvdmVycmlkZSB0aGUgdGVzdCB3aXRoIGEgcGF0aC4KKyAgICA7OworICAqKQorICAgIGFjX3NhdmVfSUZTPSIkSUZTIjsgSUZTPSRQQVRIX1NFUEFSQVRPUgorICAgIGZvciBhY19kaXIgaW4gJFBBVEg7IGRvCisgICAgICBJRlM9IiRhY19zYXZlX0lGUyIKKyAgICAgIHRlc3QgLXogIiRhY19kaXIiICYmIGFjX2Rpcj0uCisgICAgICBmb3IgYWNfZXhlY19leHQgaW4gJycgJGFjX2V4ZWN1dGFibGVfZXh0ZW5zaW9uczsgZG8KKyAgICAgICAgaWYgJGFjX2V4ZWN1dGFibGVfcCAiJGFjX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCI7IHRoZW4KKyAgICAgICAgICBlY2hvICIkYXNfbWU6IHRyeWluZyAkYWNfZGlyLyRhY193b3JkLi4uIiA+JjUKKyAgICAgICAgICBpZiAkYWNfZGlyLyRhY193b3JkIC0tdXBkYXRlIC1xIC9kZXYvbnVsbCAvZGV2L251bGwgPiY1IDI+JjE7IHRoZW4KKyAgICAgICAgICAgIGFjX2N2X3BhdGhfTVNHTUVSR0U9IiRhY19kaXIvJGFjX3dvcmQkYWNfZXhlY19leHQiCisgICAgICAgICAgICBicmVhayAyCisgICAgICAgICAgZmkKKyAgICAgICAgZmkKKyAgICAgIGRvbmUKKyAgICBkb25lCisgICAgSUZTPSIkYWNfc2F2ZV9JRlMiCisgIHRlc3QgLXogIiRhY19jdl9wYXRoX01TR01FUkdFIiAmJiBhY19jdl9wYXRoX01TR01FUkdFPSI6IgorICAgIDs7Citlc2FjCitmaQorTVNHTUVSR0U9IiRhY19jdl9wYXRoX01TR01FUkdFIgoraWYgdGVzdCAiJE1TR01FUkdFIiAhPSAiOiI7IHRoZW4KKyAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6ICRNU0dNRVJHRSIgPiY1CiskYXNfZWNobyAiJE1TR01FUkdFIiA+JjY7IH0KK2Vsc2UKKyAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6IG5vIiA+JjUKKyRhc19lY2hvICJubyIgPiY2OyB9CitmaQorCisKKyAgICAgICAgdGVzdCAtbiAiJGxvY2FsZWRpciIgfHwgbG9jYWxlZGlyPScke2RhdGFkaXJ9L2xvY2FsZScKKworCisgICAgdGVzdCAtbiAiJHtYR0VUVEVYVF9FWFRSQV9PUFRJT05TK3NldH0iIHx8IFhHRVRURVhUX0VYVFJBX09QVElPTlM9CisKKworICBhY19jb25maWdfY29tbWFuZHM9IiRhY19jb25maWdfY29tbWFuZHMgcG8tZGlyZWN0b3JpZXMiCisKKworCisgICAgICBpZiB0ZXN0ICJYJHByZWZpeCIgPSAiWE5PTkUiOyB0aGVuCisgICAgYWNsX2ZpbmFsX3ByZWZpeD0iJGFjX2RlZmF1bHRfcHJlZml4IgorICBlbHNlCisgICAgYWNsX2ZpbmFsX3ByZWZpeD0iJHByZWZpeCIKKyAgZmkKKyAgaWYgdGVzdCAiWCRleGVjX3ByZWZpeCIgPSAiWE5PTkUiOyB0aGVuCisgICAgYWNsX2ZpbmFsX2V4ZWNfcHJlZml4PScke3ByZWZpeH0nCisgIGVsc2UKKyAgICBhY2xfZmluYWxfZXhlY19wcmVmaXg9IiRleGVjX3ByZWZpeCIKKyAgZmkKKyAgYWNsX3NhdmVfcHJlZml4PSIkcHJlZml4IgorICBwcmVmaXg9IiRhY2xfZmluYWxfcHJlZml4IgorICBldmFsIGFjbF9maW5hbF9leGVjX3ByZWZpeD1cIiRhY2xfZmluYWxfZXhlY19wcmVmaXhcIgorICBwcmVmaXg9IiRhY2xfc2F2ZV9wcmVmaXgiCisKKyMgTWFrZSBzdXJlIHdlIGNhbiBydW4gY29uZmlnLnN1Yi4KKyRTSEVMTCAiJGFjX2F1eF9kaXIvY29uZmlnLnN1YiIgc3VuNCA+L2Rldi9udWxsIDI+JjEgfHwKKyAgYXNfZm5fZXJyb3IgJD8gImNhbm5vdCBydW4gJFNIRUxMICRhY19hdXhfZGlyL2NvbmZpZy5zdWIiICIkTElORU5PIiA1CisKK3sgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgYnVpbGQgc3lzdGVtIHR5cGUiID4mNQorJGFzX2VjaG9fbiAiY2hlY2tpbmcgYnVpbGQgc3lzdGVtIHR5cGUuLi4gIiA+JjY7IH0KK2lmICR7YWNfY3ZfYnVpbGQrOn0gZmFsc2U7IHRoZW4gOgorICAkYXNfZWNob19uICIoY2FjaGVkKSAiID4mNgorZWxzZQorICBhY19idWlsZF9hbGlhcz0kYnVpbGRfYWxpYXMKK3Rlc3QgIngkYWNfYnVpbGRfYWxpYXMiID0geCAmJgorICBhY19idWlsZF9hbGlhcz1gJFNIRUxMICIkYWNfYXV4X2Rpci9jb25maWcuZ3Vlc3MiYAordGVzdCAieCRhY19idWlsZF9hbGlhcyIgPSB4ICYmCisgIGFzX2ZuX2Vycm9yICQ/ICJjYW5ub3QgZ3Vlc3MgYnVpbGQgdHlwZTsgeW91IG11c3Qgc3BlY2lmeSBvbmUiICIkTElORU5PIiA1CithY19jdl9idWlsZD1gJFNIRUxMICIkYWNfYXV4X2Rpci9jb25maWcuc3ViIiAkYWNfYnVpbGRfYWxpYXNgIHx8CisgIGFzX2ZuX2Vycm9yICQ/ICIkU0hFTEwgJGFjX2F1eF9kaXIvY29uZmlnLnN1YiAkYWNfYnVpbGRfYWxpYXMgZmFpbGVkIiAiJExJTkVOTyIgNQorCitmaQoreyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6ICRhY19jdl9idWlsZCIgPiY1CiskYXNfZWNobyAiJGFjX2N2X2J1aWxkIiA+JjY7IH0KK2Nhc2UgJGFjX2N2X2J1aWxkIGluCisqLSotKikgOzsKKyopIGFzX2ZuX2Vycm9yICQ/ICJpbnZhbGlkIHZhbHVlIG9mIGNhbm9uaWNhbCBidWlsZCIgIiRMSU5FTk8iIDU7OworZXNhYworYnVpbGQ9JGFjX2N2X2J1aWxkCithY19zYXZlX0lGUz0kSUZTOyBJRlM9Jy0nCitzZXQgeCAkYWNfY3ZfYnVpbGQKK3NoaWZ0CitidWlsZF9jcHU9JDEKK2J1aWxkX3ZlbmRvcj0kMgorc2hpZnQ7IHNoaWZ0CisjIFJlbWVtYmVyLCB0aGUgZmlyc3QgY2hhcmFjdGVyIG9mIElGUyBpcyB1c2VkIHRvIGNyZWF0ZSAkKiwKKyMgZXhjZXB0IHdpdGggb2xkIHNoZWxsczoKK2J1aWxkX29zPSQqCitJRlM9JGFjX3NhdmVfSUZTCitjYXNlICRidWlsZF9vcyBpbiAqXCAqKSBidWlsZF9vcz1gZWNobyAiJGJ1aWxkX29zIiB8IHNlZCAncy8gLy0vZydgOzsgZXNhYworCisKK3sgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgaG9zdCBzeXN0ZW0gdHlwZSIgPiY1CiskYXNfZWNob19uICJjaGVja2luZyBob3N0IHN5c3RlbSB0eXBlLi4uICIgPiY2OyB9CitpZiAke2FjX2N2X2hvc3QrOn0gZmFsc2U7IHRoZW4gOgorICAkYXNfZWNob19uICIoY2FjaGVkKSAiID4mNgorZWxzZQorICBpZiB0ZXN0ICJ4JGhvc3RfYWxpYXMiID0geDsgdGhlbgorICBhY19jdl9ob3N0PSRhY19jdl9idWlsZAorZWxzZQorICBhY19jdl9ob3N0PWAkU0hFTEwgIiRhY19hdXhfZGlyL2NvbmZpZy5zdWIiICRob3N0X2FsaWFzYCB8fAorICAgIGFzX2ZuX2Vycm9yICQ/ICIkU0hFTEwgJGFjX2F1eF9kaXIvY29uZmlnLnN1YiAkaG9zdF9hbGlhcyBmYWlsZWQiICIkTElORU5PIiA1CitmaQorCitmaQoreyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6ICRhY19jdl9ob3N0IiA+JjUKKyRhc19lY2hvICIkYWNfY3ZfaG9zdCIgPiY2OyB9CitjYXNlICRhY19jdl9ob3N0IGluCisqLSotKikgOzsKKyopIGFzX2ZuX2Vycm9yICQ/ICJpbnZhbGlkIHZhbHVlIG9mIGNhbm9uaWNhbCBob3N0IiAiJExJTkVOTyIgNTs7Citlc2FjCitob3N0PSRhY19jdl9ob3N0CithY19zYXZlX0lGUz0kSUZTOyBJRlM9Jy0nCitzZXQgeCAkYWNfY3ZfaG9zdAorc2hpZnQKK2hvc3RfY3B1PSQxCitob3N0X3ZlbmRvcj0kMgorc2hpZnQ7IHNoaWZ0CisjIFJlbWVtYmVyLCB0aGUgZmlyc3QgY2hhcmFjdGVyIG9mIElGUyBpcyB1c2VkIHRvIGNyZWF0ZSAkKiwKKyMgZXhjZXB0IHdpdGggb2xkIHNoZWxsczoKK2hvc3Rfb3M9JCoKK0lGUz0kYWNfc2F2ZV9JRlMKK2Nhc2UgJGhvc3Rfb3MgaW4gKlwgKikgaG9zdF9vcz1gZWNobyAiJGhvc3Rfb3MiIHwgc2VkICdzLyAvLS9nJ2A7OyBlc2FjCisKKworCisjIENoZWNrIHdoZXRoZXIgLS13aXRoLWdudS1sZCB3YXMgZ2l2ZW4uCitpZiB0ZXN0ICIke3dpdGhfZ251X2xkK3NldH0iID0gc2V0OyB0aGVuIDoKKyAgd2l0aHZhbD0kd2l0aF9nbnVfbGQ7IHRlc3QgIiR3aXRodmFsIiA9IG5vIHx8IHdpdGhfZ251X2xkPXllcworZWxzZQorICB3aXRoX2dudV9sZD1ubworZmkKKworIyBQcmVwYXJlIFBBVEhfU0VQQVJBVE9SLgorIyBUaGUgdXNlciBpcyBhbHdheXMgcmlnaHQuCitpZiB0ZXN0ICIke1BBVEhfU0VQQVJBVE9SK3NldH0iICE9IHNldDsgdGhlbgorICBlY2hvICIjISAvYmluL3NoIiA+Y29uZiQkLnNoCisgIGVjaG8gICJleGl0IDAiICAgPj5jb25mJCQuc2gKKyAgY2htb2QgK3ggY29uZiQkLnNoCisgIGlmIChQQVRIPSIvbm9uZXhpc3RlbnQ7LiI7IGNvbmYkJC5zaCkgPi9kZXYvbnVsbCAyPiYxOyB0aGVuCisgICAgUEFUSF9TRVBBUkFUT1I9JzsnCisgIGVsc2UKKyAgICBQQVRIX1NFUEFSQVRPUj06CisgIGZpCisgIHJtIC1mIGNvbmYkJC5zaAorZmkKK2FjX3Byb2c9bGQKK2lmIHRlc3QgIiRHQ0MiID0geWVzOyB0aGVuCisgICMgQ2hlY2sgaWYgZ2NjIC1wcmludC1wcm9nLW5hbWU9bGQgZ2l2ZXMgYSBwYXRoLgorICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIGZvciBsZCB1c2VkIGJ5IEdDQyIgPiY1CiskYXNfZWNob19uICJjaGVja2luZyBmb3IgbGQgdXNlZCBieSBHQ0MuLi4gIiA+JjY7IH0KKyAgY2FzZSAkaG9zdCBpbgorICAqLSotbWluZ3cqKQorICAgICMgZ2NjIGxlYXZlcyBhIHRyYWlsaW5nIGNhcnJpYWdlIHJldHVybiB3aGljaCB1cHNldHMgbWluZ3cKKyAgICBhY19wcm9nPWAoJENDIC1wcmludC1wcm9nLW5hbWU9bGQpIDI+JjUgfCB0ciAtZCAnXDAxNSdgIDs7CisgICopCisgICAgYWNfcHJvZz1gKCRDQyAtcHJpbnQtcHJvZy1uYW1lPWxkKSAyPiY1YCA7OworICBlc2FjCisgIGNhc2UgJGFjX3Byb2cgaW4KKyAgICAjIEFjY2VwdCBhYnNvbHV0ZSBwYXRocy4KKyAgICBbXFwvXSogfCBbQS1aYS16XTpbXFwvXSopCisgICAgICByZV9kaXJlbHQ9Jy9bXi9dW14vXSovXC5cLi8nCisgICAgICAjIENhbm9uaWNhbGl6ZSB0aGUgcGF0aCBvZiBsZAorICAgICAgYWNfcHJvZz1gZWNobyAkYWNfcHJvZ3wgc2VkICdzJVxcXFwlLyVnJ2AKKyAgICAgIHdoaWxlIGVjaG8gJGFjX3Byb2cgfCBncmVwICIkcmVfZGlyZWx0IiA+IC9kZXYvbnVsbCAyPiYxOyBkbworICAgICAgICBhY19wcm9nPWBlY2hvICRhY19wcm9nfCBzZWQgInMlJHJlX2RpcmVsdCUvJSJgCisgICAgICBkb25lCisgICAgICB0ZXN0IC16ICIkTEQiICYmIExEPSIkYWNfcHJvZyIKKyAgICAgIDs7CisgICIiKQorICAgICMgSWYgaXQgZmFpbHMsIHRoZW4gcHJldGVuZCB3ZSBhcmVuJ3QgdXNpbmcgR0NDLgorICAgIGFjX3Byb2c9bGQKKyAgICA7OworICAqKQorICAgICMgSWYgaXQgaXMgcmVsYXRpdmUsIHRoZW4gc2VhcmNoIGZvciB0aGUgZmlyc3QgbGQgaW4gUEFUSC4KKyAgICB3aXRoX2dudV9sZD11bmtub3duCisgICAgOzsKKyAgZXNhYworZWxpZiB0ZXN0ICIkd2l0aF9nbnVfbGQiID0geWVzOyB0aGVuCisgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgZm9yIEdOVSBsZCIgPiY1CiskYXNfZWNob19uICJjaGVja2luZyBmb3IgR05VIGxkLi4uICIgPiY2OyB9CitlbHNlCisgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgZm9yIG5vbi1HTlUgbGQiID4mNQorJGFzX2VjaG9fbiAiY2hlY2tpbmcgZm9yIG5vbi1HTlUgbGQuLi4gIiA+JjY7IH0KK2ZpCitpZiAke2FjbF9jdl9wYXRoX0xEKzp9IGZhbHNlOyB0aGVuIDoKKyAgJGFzX2VjaG9fbiAiKGNhY2hlZCkgIiA+JjYKK2Vsc2UKKyAgaWYgdGVzdCAteiAiJExEIjsgdGhlbgorICBJRlM9IiR7SUZTPSAJfSI7IGFjX3NhdmVfaWZzPSIkSUZTIjsgSUZTPSIke0lGU30ke1BBVEhfU0VQQVJBVE9SLTp9IgorICBmb3IgYWNfZGlyIGluICRQQVRIOyBkbworICAgIHRlc3QgLXogIiRhY19kaXIiICYmIGFjX2Rpcj0uCisgICAgaWYgdGVzdCAtZiAiJGFjX2Rpci8kYWNfcHJvZyIgfHwgdGVzdCAtZiAiJGFjX2Rpci8kYWNfcHJvZyRhY19leGVleHQiOyB0aGVuCisgICAgICBhY2xfY3ZfcGF0aF9MRD0iJGFjX2Rpci8kYWNfcHJvZyIKKyAgICAgICMgQ2hlY2sgdG8gc2VlIGlmIHRoZSBwcm9ncmFtIGlzIEdOVSBsZC4gIEknZCByYXRoZXIgdXNlIC0tdmVyc2lvbiwKKyAgICAgICMgYnV0IGFwcGFyZW50bHkgc29tZSBHTlUgbGQncyBvbmx5IGFjY2VwdCAtdi4KKyAgICAgICMgQnJlYWsgb25seSBpZiBpdCB3YXMgdGhlIEdOVS9ub24tR05VIGxkIHRoYXQgd2UgcHJlZmVyLgorICAgICAgY2FzZSBgIiRhY2xfY3ZfcGF0aF9MRCIgLXYgMj4mMSA8IC9kZXYvbnVsbGAgaW4KKyAgICAgICpHTlUqIHwgKid3aXRoIEJGRCcqKQorICAgICAgICB0ZXN0ICIkd2l0aF9nbnVfbGQiICE9IG5vICYmIGJyZWFrIDs7CisgICAgICAqKQorICAgICAgICB0ZXN0ICIkd2l0aF9nbnVfbGQiICE9IHllcyAmJiBicmVhayA7OworICAgICAgZXNhYworICAgIGZpCisgIGRvbmUKKyAgSUZTPSIkYWNfc2F2ZV9pZnMiCitlbHNlCisgIGFjbF9jdl9wYXRoX0xEPSIkTEQiICMgTGV0IHRoZSB1c2VyIG92ZXJyaWRlIHRoZSB0ZXN0IHdpdGggYSBwYXRoLgorZmkKK2ZpCisKK0xEPSIkYWNsX2N2X3BhdGhfTEQiCitpZiB0ZXN0IC1uICIkTEQiOyB0aGVuCisgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiAkTEQiID4mNQorJGFzX2VjaG8gIiRMRCIgPiY2OyB9CitlbHNlCisgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiBubyIgPiY1CiskYXNfZWNobyAibm8iID4mNjsgfQorZmkKK3Rlc3QgLXogIiRMRCIgJiYgYXNfZm5fZXJyb3IgJD8gIm5vIGFjY2VwdGFibGUgbGQgZm91bmQgaW4gXCRQQVRIIiAiJExJTkVOTyIgNQoreyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBjaGVja2luZyBpZiB0aGUgbGlua2VyICgkTEQpIGlzIEdOVSBsZCIgPiY1CiskYXNfZWNob19uICJjaGVja2luZyBpZiB0aGUgbGlua2VyICgkTEQpIGlzIEdOVSBsZC4uLiAiID4mNjsgfQoraWYgJHthY2xfY3ZfcHJvZ19nbnVfbGQrOn0gZmFsc2U7IHRoZW4gOgorICAkYXNfZWNob19uICIoY2FjaGVkKSAiID4mNgorZWxzZQorICAjIEknZCByYXRoZXIgdXNlIC0tdmVyc2lvbiBoZXJlLCBidXQgYXBwYXJlbnRseSBzb21lIEdOVSBsZCdzIG9ubHkgYWNjZXB0IC12LgorY2FzZSBgJExEIC12IDI+JjEgPC9kZXYvbnVsbGAgaW4KKypHTlUqIHwgKid3aXRoIEJGRCcqKQorICBhY2xfY3ZfcHJvZ19nbnVfbGQ9eWVzIDs7CisqKQorICBhY2xfY3ZfcHJvZ19nbnVfbGQ9bm8gOzsKK2VzYWMKK2ZpCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogJGFjbF9jdl9wcm9nX2dudV9sZCIgPiY1CiskYXNfZWNobyAiJGFjbF9jdl9wcm9nX2dudV9sZCIgPiY2OyB9Cit3aXRoX2dudV9sZD0kYWNsX2N2X3Byb2dfZ251X2xkCisKKworCisKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgZm9yIHNoYXJlZCBsaWJyYXJ5IHJ1biBwYXRoIG9yaWdpbiIgPiY1CiskYXNfZWNob19uICJjaGVja2luZyBmb3Igc2hhcmVkIGxpYnJhcnkgcnVuIHBhdGggb3JpZ2luLi4uICIgPiY2OyB9CitpZiAke2FjbF9jdl9ycGF0aCs6fSBmYWxzZTsgdGhlbiA6CisgICRhc19lY2hvX24gIihjYWNoZWQpICIgPiY2CitlbHNlCisKKyAgICBDQz0iJENDIiBHQ0M9IiRHQ0MiIExERkxBR1M9IiRMREZMQUdTIiBMRD0iJExEIiB3aXRoX2dudV9sZD0iJHdpdGhfZ251X2xkIiBcCisgICAgJHtDT05GSUdfU0hFTEwtL2Jpbi9zaH0gIiRhY19hdXhfZGlyL2NvbmZpZy5ycGF0aCIgIiRob3N0IiA+IGNvbmZ0ZXN0LnNoCisgICAgLiAuL2NvbmZ0ZXN0LnNoCisgICAgcm0gLWYgLi9jb25mdGVzdC5zaAorICAgIGFjbF9jdl9ycGF0aD1kb25lCisKK2ZpCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogJGFjbF9jdl9ycGF0aCIgPiY1CiskYXNfZWNobyAiJGFjbF9jdl9ycGF0aCIgPiY2OyB9CisgIHdsPSIkYWNsX2N2X3dsIgorICBhY2xfbGliZXh0PSIkYWNsX2N2X2xpYmV4dCIKKyAgYWNsX3NobGliZXh0PSIkYWNsX2N2X3NobGliZXh0IgorICBhY2xfbGlibmFtZV9zcGVjPSIkYWNsX2N2X2xpYm5hbWVfc3BlYyIKKyAgYWNsX2xpYnJhcnlfbmFtZXNfc3BlYz0iJGFjbF9jdl9saWJyYXJ5X25hbWVzX3NwZWMiCisgIGFjbF9oYXJkY29kZV9saWJkaXJfZmxhZ19zcGVjPSIkYWNsX2N2X2hhcmRjb2RlX2xpYmRpcl9mbGFnX3NwZWMiCisgIGFjbF9oYXJkY29kZV9saWJkaXJfc2VwYXJhdG9yPSIkYWNsX2N2X2hhcmRjb2RlX2xpYmRpcl9zZXBhcmF0b3IiCisgIGFjbF9oYXJkY29kZV9kaXJlY3Q9IiRhY2xfY3ZfaGFyZGNvZGVfZGlyZWN0IgorICBhY2xfaGFyZGNvZGVfbWludXNfTD0iJGFjbF9jdl9oYXJkY29kZV9taW51c19MIgorICAgICMgQ2hlY2sgd2hldGhlciAtLWVuYWJsZS1ycGF0aCB3YXMgZ2l2ZW4uCitpZiB0ZXN0ICIke2VuYWJsZV9ycGF0aCtzZXR9IiA9IHNldDsgdGhlbiA6CisgIGVuYWJsZXZhbD0kZW5hYmxlX3JwYXRoOyA6CitlbHNlCisgIGVuYWJsZV9ycGF0aD15ZXMKK2ZpCisKKworCisKKyAgYWNsX2xpYmRpcnN0ZW09bGliCisgIGFjbF9saWJkaXJzdGVtMj0KKyAgY2FzZSAiJGhvc3Rfb3MiIGluCisgICAgc29sYXJpcyopCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIGZvciA2NC1iaXQgaG9zdCIgPiY1CiskYXNfZWNob19uICJjaGVja2luZyBmb3IgNjQtYml0IGhvc3QuLi4gIiA+JjY7IH0KK2lmICR7Z2xfY3Zfc29sYXJpc182NGJpdCs6fSBmYWxzZTsgdGhlbiA6CisgICRhc19lY2hvX24gIihjYWNoZWQpICIgPiY2CitlbHNlCisgIGNhdCBjb25mZGVmcy5oIC0gPDxfQUNFT0YgPmNvbmZ0ZXN0LiRhY19leHQKKy8qIGVuZCBjb25mZGVmcy5oLiAgKi8KKworI2lmZGVmIF9MUDY0CitzaXh0eWZvdXIgYml0cworI2VuZGlmCisKK19BQ0VPRgoraWYgKGV2YWwgIiRhY19jcHAgY29uZnRlc3QuJGFjX2V4dCIpIDI+JjUgfAorICAkRUdSRVAgInNpeHR5Zm91ciBiaXRzIiA+L2Rldi9udWxsIDI+JjE7IHRoZW4gOgorICBnbF9jdl9zb2xhcmlzXzY0Yml0PXllcworZWxzZQorICBnbF9jdl9zb2xhcmlzXzY0Yml0PW5vCitmaQorcm0gLWYgY29uZnRlc3QqCisKKworZmkKK3sgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiAkZ2xfY3Zfc29sYXJpc182NGJpdCIgPiY1CiskYXNfZWNobyAiJGdsX2N2X3NvbGFyaXNfNjRiaXQiID4mNjsgfQorICAgICAgaWYgdGVzdCAkZ2xfY3Zfc29sYXJpc182NGJpdCA9IHllczsgdGhlbgorICAgICAgICBhY2xfbGliZGlyc3RlbT1saWIvNjQKKyAgICAgICAgY2FzZSAiJGhvc3RfY3B1IiBpbgorICAgICAgICAgIHNwYXJjKikgICAgICAgIGFjbF9saWJkaXJzdGVtMj1saWIvc3BhcmN2OSA7OworICAgICAgICAgIGkqODYgfCB4ODZfNjQpIGFjbF9saWJkaXJzdGVtMj1saWIvYW1kNjQgOzsKKyAgICAgICAgZXNhYworICAgICAgZmkKKyAgICAgIDs7CisgICAgKikKKyAgICAgIHNlYXJjaHBhdGg9YChMQ19BTEw9QyAkQ0MgLXByaW50LXNlYXJjaC1kaXJzKSAyPi9kZXYvbnVsbCB8IHNlZCAtbiAtZSAncyxebGlicmFyaWVzOiAsLHAnIHwgc2VkIC1lICdzLF49LCwnYAorICAgICAgaWYgdGVzdCAtbiAiJHNlYXJjaHBhdGgiOyB0aGVuCisgICAgICAgIGFjbF9zYXZlX0lGUz0iJHtJRlM9IAl9IjsgSUZTPSI6IgorICAgICAgICBmb3Igc2VhcmNoZGlyIGluICRzZWFyY2hwYXRoOyBkbworICAgICAgICAgIGlmIHRlc3QgLWQgIiRzZWFyY2hkaXIiOyB0aGVuCisgICAgICAgICAgICBjYXNlICIkc2VhcmNoZGlyIiBpbgorICAgICAgICAgICAgICAqL2xpYjY0LyB8ICovbGliNjQgKSBhY2xfbGliZGlyc3RlbT1saWI2NCA7OworICAgICAgICAgICAgICAqLy4uLyB8ICovLi4gKQorICAgICAgICAgICAgICAgICMgQmV0dGVyIGlnbm9yZSBkaXJlY3RvcmllcyBvZiB0aGlzIGZvcm0uIFRoZXkgYXJlIG1pc2xlYWRpbmcuCisgICAgICAgICAgICAgICAgOzsKKyAgICAgICAgICAgICAgKikgc2VhcmNoZGlyPWBjZCAiJHNlYXJjaGRpciIgJiYgcHdkYAorICAgICAgICAgICAgICAgICBjYXNlICIkc2VhcmNoZGlyIiBpbgorICAgICAgICAgICAgICAgICAgICovbGliNjQgKSBhY2xfbGliZGlyc3RlbT1saWI2NCA7OworICAgICAgICAgICAgICAgICBlc2FjIDs7CisgICAgICAgICAgICBlc2FjCisgICAgICAgICAgZmkKKyAgICAgICAgZG9uZQorICAgICAgICBJRlM9IiRhY2xfc2F2ZV9JRlMiCisgICAgICBmaQorICAgICAgOzsKKyAgZXNhYworICB0ZXN0IC1uICIkYWNsX2xpYmRpcnN0ZW0yIiB8fCBhY2xfbGliZGlyc3RlbTI9IiRhY2xfbGliZGlyc3RlbSIKKworCisKKworCisKKworCisKKworCisKKyAgICB1c2VfYWRkaXRpb25hbD15ZXMKKworICBhY2xfc2F2ZV9wcmVmaXg9IiRwcmVmaXgiCisgIHByZWZpeD0iJGFjbF9maW5hbF9wcmVmaXgiCisgIGFjbF9zYXZlX2V4ZWNfcHJlZml4PSIkZXhlY19wcmVmaXgiCisgIGV4ZWNfcHJlZml4PSIkYWNsX2ZpbmFsX2V4ZWNfcHJlZml4IgorCisgICAgZXZhbCBhZGRpdGlvbmFsX2luY2x1ZGVkaXI9XCIkaW5jbHVkZWRpclwiCisgICAgZXZhbCBhZGRpdGlvbmFsX2xpYmRpcj1cIiRsaWJkaXJcIgorCisgIGV4ZWNfcHJlZml4PSIkYWNsX3NhdmVfZXhlY19wcmVmaXgiCisgIHByZWZpeD0iJGFjbF9zYXZlX3ByZWZpeCIKKworCisjIENoZWNrIHdoZXRoZXIgLS13aXRoLWxpYmljb252LXByZWZpeCB3YXMgZ2l2ZW4uCitpZiB0ZXN0ICIke3dpdGhfbGliaWNvbnZfcHJlZml4K3NldH0iID0gc2V0OyB0aGVuIDoKKyAgd2l0aHZhbD0kd2l0aF9saWJpY29udl9wcmVmaXg7CisgICAgaWYgdGVzdCAiWCR3aXRodmFsIiA9ICJYbm8iOyB0aGVuCisgICAgICB1c2VfYWRkaXRpb25hbD1ubworICAgIGVsc2UKKyAgICAgIGlmIHRlc3QgIlgkd2l0aHZhbCIgPSAiWCI7IHRoZW4KKworICBhY2xfc2F2ZV9wcmVmaXg9IiRwcmVmaXgiCisgIHByZWZpeD0iJGFjbF9maW5hbF9wcmVmaXgiCisgIGFjbF9zYXZlX2V4ZWNfcHJlZml4PSIkZXhlY19wcmVmaXgiCisgIGV4ZWNfcHJlZml4PSIkYWNsX2ZpbmFsX2V4ZWNfcHJlZml4IgorCisgICAgICAgICAgZXZhbCBhZGRpdGlvbmFsX2luY2x1ZGVkaXI9XCIkaW5jbHVkZWRpclwiCisgICAgICAgICAgZXZhbCBhZGRpdGlvbmFsX2xpYmRpcj1cIiRsaWJkaXJcIgorCisgIGV4ZWNfcHJlZml4PSIkYWNsX3NhdmVfZXhlY19wcmVmaXgiCisgIHByZWZpeD0iJGFjbF9zYXZlX3ByZWZpeCIKKworICAgICAgZWxzZQorICAgICAgICBhZGRpdGlvbmFsX2luY2x1ZGVkaXI9IiR3aXRodmFsL2luY2x1ZGUiCisgICAgICAgIGFkZGl0aW9uYWxfbGliZGlyPSIkd2l0aHZhbC8kYWNsX2xpYmRpcnN0ZW0iCisgICAgICAgIGlmIHRlc3QgIiRhY2xfbGliZGlyc3RlbTIiICE9ICIkYWNsX2xpYmRpcnN0ZW0iIFwKKyAgICAgICAgICAgJiYgISB0ZXN0IC1kICIkd2l0aHZhbC8kYWNsX2xpYmRpcnN0ZW0iOyB0aGVuCisgICAgICAgICAgYWRkaXRpb25hbF9saWJkaXI9IiR3aXRodmFsLyRhY2xfbGliZGlyc3RlbTIiCisgICAgICAgIGZpCisgICAgICBmaQorICAgIGZpCisKK2ZpCisKKyAgICAgIExJQklDT05WPQorICBMVExJQklDT05WPQorICBJTkNJQ09OVj0KKyAgTElCSUNPTlZfUFJFRklYPQorICAgICAgSEFWRV9MSUJJQ09OVj0KKyAgcnBhdGhkaXJzPQorICBsdHJwYXRoZGlycz0KKyAgbmFtZXNfYWxyZWFkeV9oYW5kbGVkPQorICBuYW1lc19uZXh0X3JvdW5kPSdpY29udiAnCisgIHdoaWxlIHRlc3QgLW4gIiRuYW1lc19uZXh0X3JvdW5kIjsgZG8KKyAgICBuYW1lc190aGlzX3JvdW5kPSIkbmFtZXNfbmV4dF9yb3VuZCIKKyAgICBuYW1lc19uZXh0X3JvdW5kPQorICAgIGZvciBuYW1lIGluICRuYW1lc190aGlzX3JvdW5kOyBkbworICAgICAgYWxyZWFkeV9oYW5kbGVkPQorICAgICAgZm9yIG4gaW4gJG5hbWVzX2FscmVhZHlfaGFuZGxlZDsgZG8KKyAgICAgICAgaWYgdGVzdCAiJG4iID0gIiRuYW1lIjsgdGhlbgorICAgICAgICAgIGFscmVhZHlfaGFuZGxlZD15ZXMKKyAgICAgICAgICBicmVhaworICAgICAgICBmaQorICAgICAgZG9uZQorICAgICAgaWYgdGVzdCAteiAiJGFscmVhZHlfaGFuZGxlZCI7IHRoZW4KKyAgICAgICAgbmFtZXNfYWxyZWFkeV9oYW5kbGVkPSIkbmFtZXNfYWxyZWFkeV9oYW5kbGVkICRuYW1lIgorICAgICAgICAgICAgICAgICAgICAgICAgdXBwZXJuYW1lPWBlY2hvICIkbmFtZSIgfCBzZWQgLWUgJ3l8YWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXouLy18QUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVpfX198J2AKKyAgICAgICAgZXZhbCB2YWx1ZT1cIlwkSEFWRV9MSUIkdXBwZXJuYW1lXCIKKyAgICAgICAgaWYgdGVzdCAtbiAiJHZhbHVlIjsgdGhlbgorICAgICAgICAgIGlmIHRlc3QgIiR2YWx1ZSIgPSB5ZXM7IHRoZW4KKyAgICAgICAgICAgIGV2YWwgdmFsdWU9XCJcJExJQiR1cHBlcm5hbWVcIgorICAgICAgICAgICAgdGVzdCAteiAiJHZhbHVlIiB8fCBMSUJJQ09OVj0iJHtMSUJJQ09OVn0ke0xJQklDT05WOisgfSR2YWx1ZSIKKyAgICAgICAgICAgIGV2YWwgdmFsdWU9XCJcJExUTElCJHVwcGVybmFtZVwiCisgICAgICAgICAgICB0ZXN0IC16ICIkdmFsdWUiIHx8IExUTElCSUNPTlY9IiR7TFRMSUJJQ09OVn0ke0xUTElCSUNPTlY6KyB9JHZhbHVlIgorICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDoKKyAgICAgICAgICBmaQorICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3VuZF9kaXI9CisgICAgICAgICAgZm91bmRfbGE9CisgICAgICAgICAgZm91bmRfc289CisgICAgICAgICAgZm91bmRfYT0KKyAgICAgICAgICBldmFsIGxpYm5hbWU9XCIkYWNsX2xpYm5hbWVfc3BlY1wiICAgICMgdHlwaWNhbGx5OiBsaWJuYW1lPWxpYiRuYW1lCisgICAgICAgICAgaWYgdGVzdCAtbiAiJGFjbF9zaGxpYmV4dCI7IHRoZW4KKyAgICAgICAgICAgIHNocmV4dD0iLiRhY2xfc2hsaWJleHQiICAgICAgICAgICAgICMgdHlwaWNhbGx5OiBzaHJleHQ9LnNvCisgICAgICAgICAgZWxzZQorICAgICAgICAgICAgc2hyZXh0PQorICAgICAgICAgIGZpCisgICAgICAgICAgaWYgdGVzdCAkdXNlX2FkZGl0aW9uYWwgPSB5ZXM7IHRoZW4KKyAgICAgICAgICAgIGRpcj0iJGFkZGl0aW9uYWxfbGliZGlyIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgdGVzdCAtbiAiJGFjbF9zaGxpYmV4dCI7IHRoZW4KKyAgICAgICAgICAgICAgaWYgdGVzdCAtZiAiJGRpci8kbGlibmFtZSRzaHJleHQiOyB0aGVuCisgICAgICAgICAgICAgICAgZm91bmRfZGlyPSIkZGlyIgorICAgICAgICAgICAgICAgIGZvdW5kX3NvPSIkZGlyLyRsaWJuYW1lJHNocmV4dCIKKyAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIGlmIHRlc3QgIiRhY2xfbGlicmFyeV9uYW1lc19zcGVjIiA9ICckbGlibmFtZSRzaHJleHQkdmVyc3VmZml4JzsgdGhlbgorICAgICAgICAgICAgICAgICAgdmVyPWAoY2QgIiRkaXIiICYmIFwKKyAgICAgICAgICAgICAgICAgICAgICAgIGZvciBmIGluICIkbGlibmFtZSRzaHJleHQiLio7IGRvIGVjaG8gIiRmIjsgZG9uZSBcCisgICAgICAgICAgICAgICAgICAgICAgICB8IHNlZCAtZSAicyxeJGxpYm5hbWUkc2hyZXh0XFxcXC4sLCIgXAorICAgICAgICAgICAgICAgICAgICAgICAgfCBzb3J0IC10ICcuJyAtbiAtciAtazEsMSAtazIsMiAtazMsMyAtazQsNCAtazUsNSBcCisgICAgICAgICAgICAgICAgICAgICAgICB8IHNlZCAxcSApIDI+L2Rldi9udWxsYAorICAgICAgICAgICAgICAgICAgaWYgdGVzdCAtbiAiJHZlciIgJiYgdGVzdCAtZiAiJGRpci8kbGlibmFtZSRzaHJleHQuJHZlciI7IHRoZW4KKyAgICAgICAgICAgICAgICAgICAgZm91bmRfZGlyPSIkZGlyIgorICAgICAgICAgICAgICAgICAgICBmb3VuZF9zbz0iJGRpci8kbGlibmFtZSRzaHJleHQuJHZlciIKKyAgICAgICAgICAgICAgICAgIGZpCisgICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgICAgZXZhbCBsaWJyYXJ5X25hbWVzPVwiJGFjbF9saWJyYXJ5X25hbWVzX3NwZWNcIgorICAgICAgICAgICAgICAgICAgZm9yIGYgaW4gJGxpYnJhcnlfbmFtZXM7IGRvCisgICAgICAgICAgICAgICAgICAgIGlmIHRlc3QgLWYgIiRkaXIvJGYiOyB0aGVuCisgICAgICAgICAgICAgICAgICAgICAgZm91bmRfZGlyPSIkZGlyIgorICAgICAgICAgICAgICAgICAgICAgIGZvdW5kX3NvPSIkZGlyLyRmIgorICAgICAgICAgICAgICAgICAgICAgIGJyZWFrCisgICAgICAgICAgICAgICAgICAgIGZpCisgICAgICAgICAgICAgICAgICBkb25lCisgICAgICAgICAgICAgICAgZmkKKyAgICAgICAgICAgICAgZmkKKyAgICAgICAgICAgIGZpCisgICAgICAgICAgICAgICAgICAgICAgICBpZiB0ZXN0ICJYJGZvdW5kX2RpciIgPSAiWCI7IHRoZW4KKyAgICAgICAgICAgICAgaWYgdGVzdCAtZiAiJGRpci8kbGlibmFtZS4kYWNsX2xpYmV4dCI7IHRoZW4KKyAgICAgICAgICAgICAgICBmb3VuZF9kaXI9IiRkaXIiCisgICAgICAgICAgICAgICAgZm91bmRfYT0iJGRpci8kbGlibmFtZS4kYWNsX2xpYmV4dCIKKyAgICAgICAgICAgICAgZmkKKyAgICAgICAgICAgIGZpCisgICAgICAgICAgICBpZiB0ZXN0ICJYJGZvdW5kX2RpciIgIT0gIlgiOyB0aGVuCisgICAgICAgICAgICAgIGlmIHRlc3QgLWYgIiRkaXIvJGxpYm5hbWUubGEiOyB0aGVuCisgICAgICAgICAgICAgICAgZm91bmRfbGE9IiRkaXIvJGxpYm5hbWUubGEiCisgICAgICAgICAgICAgIGZpCisgICAgICAgICAgICBmaQorICAgICAgICAgIGZpCisgICAgICAgICAgaWYgdGVzdCAiWCRmb3VuZF9kaXIiID0gIlgiOyB0aGVuCisgICAgICAgICAgICBmb3IgeCBpbiAkTERGTEFHUyAkTFRMSUJJQ09OVjsgZG8KKworICBhY2xfc2F2ZV9wcmVmaXg9IiRwcmVmaXgiCisgIHByZWZpeD0iJGFjbF9maW5hbF9wcmVmaXgiCisgIGFjbF9zYXZlX2V4ZWNfcHJlZml4PSIkZXhlY19wcmVmaXgiCisgIGV4ZWNfcHJlZml4PSIkYWNsX2ZpbmFsX2V4ZWNfcHJlZml4IgorICBldmFsIHg9XCIkeFwiCisgIGV4ZWNfcHJlZml4PSIkYWNsX3NhdmVfZXhlY19wcmVmaXgiCisgIHByZWZpeD0iJGFjbF9zYXZlX3ByZWZpeCIKKworICAgICAgICAgICAgICBjYXNlICIkeCIgaW4KKyAgICAgICAgICAgICAgICAtTCopCisgICAgICAgICAgICAgICAgICBkaXI9YGVjaG8gIlgkeCIgfCBzZWQgLWUgJ3MvXlgtTC8vJ2AKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIHRlc3QgLW4gIiRhY2xfc2hsaWJleHQiOyB0aGVuCisgICAgICAgICAgICAgICAgICAgIGlmIHRlc3QgLWYgIiRkaXIvJGxpYm5hbWUkc2hyZXh0IjsgdGhlbgorICAgICAgICAgICAgICAgICAgICAgIGZvdW5kX2Rpcj0iJGRpciIKKyAgICAgICAgICAgICAgICAgICAgICBmb3VuZF9zbz0iJGRpci8kbGlibmFtZSRzaHJleHQiCisgICAgICAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAgICAgICBpZiB0ZXN0ICIkYWNsX2xpYnJhcnlfbmFtZXNfc3BlYyIgPSAnJGxpYm5hbWUkc2hyZXh0JHZlcnN1ZmZpeCc7IHRoZW4KKyAgICAgICAgICAgICAgICAgICAgICAgIHZlcj1gKGNkICIkZGlyIiAmJiBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgZiBpbiAiJGxpYm5hbWUkc2hyZXh0Ii4qOyBkbyBlY2hvICIkZiI7IGRvbmUgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBzZWQgLWUgInMsXiRsaWJuYW1lJHNocmV4dFxcXFwuLCwiIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgc29ydCAtdCAnLicgLW4gLXIgLWsxLDEgLWsyLDIgLWszLDMgLWs0LDQgLWs1LDUgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBzZWQgMXEgKSAyPi9kZXYvbnVsbGAKKyAgICAgICAgICAgICAgICAgICAgICAgIGlmIHRlc3QgLW4gIiR2ZXIiICYmIHRlc3QgLWYgIiRkaXIvJGxpYm5hbWUkc2hyZXh0LiR2ZXIiOyB0aGVuCisgICAgICAgICAgICAgICAgICAgICAgICAgIGZvdW5kX2Rpcj0iJGRpciIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgZm91bmRfc289IiRkaXIvJGxpYm5hbWUkc2hyZXh0LiR2ZXIiCisgICAgICAgICAgICAgICAgICAgICAgICBmaQorICAgICAgICAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAgICAgICAgIGV2YWwgbGlicmFyeV9uYW1lcz1cIiRhY2xfbGlicmFyeV9uYW1lc19zcGVjXCIKKyAgICAgICAgICAgICAgICAgICAgICAgIGZvciBmIGluICRsaWJyYXJ5X25hbWVzOyBkbworICAgICAgICAgICAgICAgICAgICAgICAgICBpZiB0ZXN0IC1mICIkZGlyLyRmIjsgdGhlbgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvdW5kX2Rpcj0iJGRpciIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3VuZF9zbz0iJGRpci8kZiIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhaworICAgICAgICAgICAgICAgICAgICAgICAgICBmaQorICAgICAgICAgICAgICAgICAgICAgICAgZG9uZQorICAgICAgICAgICAgICAgICAgICAgIGZpCisgICAgICAgICAgICAgICAgICAgIGZpCisgICAgICAgICAgICAgICAgICBmaQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgdGVzdCAiWCRmb3VuZF9kaXIiID0gIlgiOyB0aGVuCisgICAgICAgICAgICAgICAgICAgIGlmIHRlc3QgLWYgIiRkaXIvJGxpYm5hbWUuJGFjbF9saWJleHQiOyB0aGVuCisgICAgICAgICAgICAgICAgICAgICAgZm91bmRfZGlyPSIkZGlyIgorICAgICAgICAgICAgICAgICAgICAgIGZvdW5kX2E9IiRkaXIvJGxpYm5hbWUuJGFjbF9saWJleHQiCisgICAgICAgICAgICAgICAgICAgIGZpCisgICAgICAgICAgICAgICAgICBmaQorICAgICAgICAgICAgICAgICAgaWYgdGVzdCAiWCRmb3VuZF9kaXIiICE9ICJYIjsgdGhlbgorICAgICAgICAgICAgICAgICAgICBpZiB0ZXN0IC1mICIkZGlyLyRsaWJuYW1lLmxhIjsgdGhlbgorICAgICAgICAgICAgICAgICAgICAgIGZvdW5kX2xhPSIkZGlyLyRsaWJuYW1lLmxhIgorICAgICAgICAgICAgICAgICAgICBmaQorICAgICAgICAgICAgICAgICAgZmkKKyAgICAgICAgICAgICAgICAgIDs7CisgICAgICAgICAgICAgIGVzYWMKKyAgICAgICAgICAgICAgaWYgdGVzdCAiWCRmb3VuZF9kaXIiICE9ICJYIjsgdGhlbgorICAgICAgICAgICAgICAgIGJyZWFrCisgICAgICAgICAgICAgIGZpCisgICAgICAgICAgICBkb25lCisgICAgICAgICAgZmkKKyAgICAgICAgICBpZiB0ZXN0ICJYJGZvdW5kX2RpciIgIT0gIlgiOyB0aGVuCisgICAgICAgICAgICAgICAgICAgICAgICBMVExJQklDT05WPSIke0xUTElCSUNPTlZ9JHtMVExJQklDT05WOisgfS1MJGZvdW5kX2RpciAtbCRuYW1lIgorICAgICAgICAgICAgaWYgdGVzdCAiWCRmb3VuZF9zbyIgIT0gIlgiOyB0aGVuCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIHRlc3QgIiRlbmFibGVfcnBhdGgiID0gbm8gXAorICAgICAgICAgICAgICAgICB8fCB0ZXN0ICJYJGZvdW5kX2RpciIgPSAiWC91c3IvJGFjbF9saWJkaXJzdGVtIiBcCisgICAgICAgICAgICAgICAgIHx8IHRlc3QgIlgkZm91bmRfZGlyIiA9ICJYL3Vzci8kYWNsX2xpYmRpcnN0ZW0yIjsgdGhlbgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMSUJJQ09OVj0iJHtMSUJJQ09OVn0ke0xJQklDT05WOisgfSRmb3VuZF9zbyIKKyAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYXZlaXQ9CisgICAgICAgICAgICAgICAgZm9yIHggaW4gJGx0cnBhdGhkaXJzOyBkbworICAgICAgICAgICAgICAgICAgaWYgdGVzdCAiWCR4IiA9ICJYJGZvdW5kX2RpciI7IHRoZW4KKyAgICAgICAgICAgICAgICAgICAgaGF2ZWl0PXllcworICAgICAgICAgICAgICAgICAgICBicmVhaworICAgICAgICAgICAgICAgICAgZmkKKyAgICAgICAgICAgICAgICBkb25lCisgICAgICAgICAgICAgICAgaWYgdGVzdCAteiAiJGhhdmVpdCI7IHRoZW4KKyAgICAgICAgICAgICAgICAgIGx0cnBhdGhkaXJzPSIkbHRycGF0aGRpcnMgJGZvdW5kX2RpciIKKyAgICAgICAgICAgICAgICBmaQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiB0ZXN0ICIkYWNsX2hhcmRjb2RlX2RpcmVjdCIgPSB5ZXM7IHRoZW4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExJQklDT05WPSIke0xJQklDT05WfSR7TElCSUNPTlY6KyB9JGZvdW5kX3NvIgorICAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAgIGlmIHRlc3QgLW4gIiRhY2xfaGFyZGNvZGVfbGliZGlyX2ZsYWdfc3BlYyIgJiYgdGVzdCAiJGFjbF9oYXJkY29kZV9taW51c19MIiA9IG5vOyB0aGVuCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMSUJJQ09OVj0iJHtMSUJJQ09OVn0ke0xJQklDT05WOisgfSRmb3VuZF9zbyIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhdmVpdD0KKyAgICAgICAgICAgICAgICAgICAgZm9yIHggaW4gJHJwYXRoZGlyczsgZG8KKyAgICAgICAgICAgICAgICAgICAgICBpZiB0ZXN0ICJYJHgiID0gIlgkZm91bmRfZGlyIjsgdGhlbgorICAgICAgICAgICAgICAgICAgICAgICAgaGF2ZWl0PXllcworICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWsKKyAgICAgICAgICAgICAgICAgICAgICBmaQorICAgICAgICAgICAgICAgICAgICBkb25lCisgICAgICAgICAgICAgICAgICAgIGlmIHRlc3QgLXogIiRoYXZlaXQiOyB0aGVuCisgICAgICAgICAgICAgICAgICAgICAgcnBhdGhkaXJzPSIkcnBhdGhkaXJzICRmb3VuZF9kaXIiCisgICAgICAgICAgICAgICAgICAgIGZpCisgICAgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhdmVpdD0KKyAgICAgICAgICAgICAgICAgICAgZm9yIHggaW4gJExERkxBR1MgJExJQklDT05WOyBkbworCisgIGFjbF9zYXZlX3ByZWZpeD0iJHByZWZpeCIKKyAgcHJlZml4PSIkYWNsX2ZpbmFsX3ByZWZpeCIKKyAgYWNsX3NhdmVfZXhlY19wcmVmaXg9IiRleGVjX3ByZWZpeCIKKyAgZXhlY19wcmVmaXg9IiRhY2xfZmluYWxfZXhlY19wcmVmaXgiCisgIGV2YWwgeD1cIiR4XCIKKyAgZXhlY19wcmVmaXg9IiRhY2xfc2F2ZV9leGVjX3ByZWZpeCIKKyAgcHJlZml4PSIkYWNsX3NhdmVfcHJlZml4IgorCisgICAgICAgICAgICAgICAgICAgICAgaWYgdGVzdCAiWCR4IiA9ICJYLUwkZm91bmRfZGlyIjsgdGhlbgorICAgICAgICAgICAgICAgICAgICAgICAgaGF2ZWl0PXllcworICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWsKKyAgICAgICAgICAgICAgICAgICAgICBmaQorICAgICAgICAgICAgICAgICAgICBkb25lCisgICAgICAgICAgICAgICAgICAgIGlmIHRlc3QgLXogIiRoYXZlaXQiOyB0aGVuCisgICAgICAgICAgICAgICAgICAgICAgTElCSUNPTlY9IiR7TElCSUNPTlZ9JHtMSUJJQ09OVjorIH0tTCRmb3VuZF9kaXIiCisgICAgICAgICAgICAgICAgICAgIGZpCisgICAgICAgICAgICAgICAgICAgIGlmIHRlc3QgIiRhY2xfaGFyZGNvZGVfbWludXNfTCIgIT0gbm87IHRoZW4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMSUJJQ09OVj0iJHtMSUJJQ09OVn0ke0xJQklDT05WOisgfSRmb3VuZF9zbyIKKyAgICAgICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMSUJJQ09OVj0iJHtMSUJJQ09OVn0ke0xJQklDT05WOisgfS1sJG5hbWUiCisgICAgICAgICAgICAgICAgICAgIGZpCisgICAgICAgICAgICAgICAgICBmaQorICAgICAgICAgICAgICAgIGZpCisgICAgICAgICAgICAgIGZpCisgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgIGlmIHRlc3QgIlgkZm91bmRfYSIgIT0gIlgiOyB0aGVuCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExJQklDT05WPSIke0xJQklDT05WfSR7TElCSUNPTlY6KyB9JGZvdW5kX2EiCisgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExJQklDT05WPSIke0xJQklDT05WfSR7TElCSUNPTlY6KyB9LUwkZm91bmRfZGlyIC1sJG5hbWUiCisgICAgICAgICAgICAgIGZpCisgICAgICAgICAgICBmaQorICAgICAgICAgICAgICAgICAgICAgICAgYWRkaXRpb25hbF9pbmNsdWRlZGlyPQorICAgICAgICAgICAgY2FzZSAiJGZvdW5kX2RpciIgaW4KKyAgICAgICAgICAgICAgKi8kYWNsX2xpYmRpcnN0ZW0gfCAqLyRhY2xfbGliZGlyc3RlbS8pCisgICAgICAgICAgICAgICAgYmFzZWRpcj1gZWNobyAiWCRmb3VuZF9kaXIiIHwgc2VkIC1lICdzLF5YLCwnIC1lICJzLC8kYWNsX2xpYmRpcnN0ZW0vIicqJCwsJ2AKKyAgICAgICAgICAgICAgICBpZiB0ZXN0ICIkbmFtZSIgPSAnaWNvbnYnOyB0aGVuCisgICAgICAgICAgICAgICAgICBMSUJJQ09OVl9QUkVGSVg9IiRiYXNlZGlyIgorICAgICAgICAgICAgICAgIGZpCisgICAgICAgICAgICAgICAgYWRkaXRpb25hbF9pbmNsdWRlZGlyPSIkYmFzZWRpci9pbmNsdWRlIgorICAgICAgICAgICAgICAgIDs7CisgICAgICAgICAgICAgICovJGFjbF9saWJkaXJzdGVtMiB8ICovJGFjbF9saWJkaXJzdGVtMi8pCisgICAgICAgICAgICAgICAgYmFzZWRpcj1gZWNobyAiWCRmb3VuZF9kaXIiIHwgc2VkIC1lICdzLF5YLCwnIC1lICJzLC8kYWNsX2xpYmRpcnN0ZW0yLyInKiQsLCdgCisgICAgICAgICAgICAgICAgaWYgdGVzdCAiJG5hbWUiID0gJ2ljb252JzsgdGhlbgorICAgICAgICAgICAgICAgICAgTElCSUNPTlZfUFJFRklYPSIkYmFzZWRpciIKKyAgICAgICAgICAgICAgICBmaQorICAgICAgICAgICAgICAgIGFkZGl0aW9uYWxfaW5jbHVkZWRpcj0iJGJhc2VkaXIvaW5jbHVkZSIKKyAgICAgICAgICAgICAgICA7OworICAgICAgICAgICAgZXNhYworICAgICAgICAgICAgaWYgdGVzdCAiWCRhZGRpdGlvbmFsX2luY2x1ZGVkaXIiICE9ICJYIjsgdGhlbgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIHRlc3QgIlgkYWRkaXRpb25hbF9pbmNsdWRlZGlyIiAhPSAiWC91c3IvaW5jbHVkZSI7IHRoZW4KKyAgICAgICAgICAgICAgICBoYXZlaXQ9CisgICAgICAgICAgICAgICAgaWYgdGVzdCAiWCRhZGRpdGlvbmFsX2luY2x1ZGVkaXIiID0gIlgvdXNyL2xvY2FsL2luY2x1ZGUiOyB0aGVuCisgICAgICAgICAgICAgICAgICBpZiB0ZXN0IC1uICIkR0NDIjsgdGhlbgorICAgICAgICAgICAgICAgICAgICBjYXNlICRob3N0X29zIGluCisgICAgICAgICAgICAgICAgICAgICAgbGludXgqIHwgZ251KiB8IGsqYnNkKi1nbnUpIGhhdmVpdD15ZXM7OworICAgICAgICAgICAgICAgICAgICBlc2FjCisgICAgICAgICAgICAgICAgICBmaQorICAgICAgICAgICAgICAgIGZpCisgICAgICAgICAgICAgICAgaWYgdGVzdCAteiAiJGhhdmVpdCI7IHRoZW4KKyAgICAgICAgICAgICAgICAgIGZvciB4IGluICRDUFBGTEFHUyAkSU5DSUNPTlY7IGRvCisKKyAgYWNsX3NhdmVfcHJlZml4PSIkcHJlZml4IgorICBwcmVmaXg9IiRhY2xfZmluYWxfcHJlZml4IgorICBhY2xfc2F2ZV9leGVjX3ByZWZpeD0iJGV4ZWNfcHJlZml4IgorICBleGVjX3ByZWZpeD0iJGFjbF9maW5hbF9leGVjX3ByZWZpeCIKKyAgZXZhbCB4PVwiJHhcIgorICBleGVjX3ByZWZpeD0iJGFjbF9zYXZlX2V4ZWNfcHJlZml4IgorICBwcmVmaXg9IiRhY2xfc2F2ZV9wcmVmaXgiCisKKyAgICAgICAgICAgICAgICAgICAgaWYgdGVzdCAiWCR4IiA9ICJYLUkkYWRkaXRpb25hbF9pbmNsdWRlZGlyIjsgdGhlbgorICAgICAgICAgICAgICAgICAgICAgIGhhdmVpdD15ZXMKKyAgICAgICAgICAgICAgICAgICAgICBicmVhaworICAgICAgICAgICAgICAgICAgICBmaQorICAgICAgICAgICAgICAgICAgZG9uZQorICAgICAgICAgICAgICAgICAgaWYgdGVzdCAteiAiJGhhdmVpdCI7IHRoZW4KKyAgICAgICAgICAgICAgICAgICAgaWYgdGVzdCAtZCAiJGFkZGl0aW9uYWxfaW5jbHVkZWRpciI7IHRoZW4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSU5DSUNPTlY9IiR7SU5DSUNPTlZ9JHtJTkNJQ09OVjorIH0tSSRhZGRpdGlvbmFsX2luY2x1ZGVkaXIiCisgICAgICAgICAgICAgICAgICAgIGZpCisgICAgICAgICAgICAgICAgICBmaQorICAgICAgICAgICAgICAgIGZpCisgICAgICAgICAgICAgIGZpCisgICAgICAgICAgICBmaQorICAgICAgICAgICAgICAgICAgICAgICAgaWYgdGVzdCAtbiAiJGZvdW5kX2xhIjsgdGhlbgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzYXZlX2xpYmRpcj0iJGxpYmRpciIKKyAgICAgICAgICAgICAgY2FzZSAiJGZvdW5kX2xhIiBpbgorICAgICAgICAgICAgICAgICovKiB8ICpcXCopIC4gIiRmb3VuZF9sYSIgOzsKKyAgICAgICAgICAgICAgICAqKSAuICIuLyRmb3VuZF9sYSIgOzsKKyAgICAgICAgICAgICAgZXNhYworICAgICAgICAgICAgICBsaWJkaXI9IiRzYXZlX2xpYmRpciIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgZGVwIGluICRkZXBlbmRlbmN5X2xpYnM7IGRvCisgICAgICAgICAgICAgICAgY2FzZSAiJGRlcCIgaW4KKyAgICAgICAgICAgICAgICAgIC1MKikKKyAgICAgICAgICAgICAgICAgICAgYWRkaXRpb25hbF9saWJkaXI9YGVjaG8gIlgkZGVwIiB8IHNlZCAtZSAncy9eWC1MLy8nYAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIHRlc3QgIlgkYWRkaXRpb25hbF9saWJkaXIiICE9ICJYL3Vzci8kYWNsX2xpYmRpcnN0ZW0iIFwKKyAgICAgICAgICAgICAgICAgICAgICAgJiYgdGVzdCAiWCRhZGRpdGlvbmFsX2xpYmRpciIgIT0gIlgvdXNyLyRhY2xfbGliZGlyc3RlbTIiOyB0aGVuCisgICAgICAgICAgICAgICAgICAgICAgaGF2ZWl0PQorICAgICAgICAgICAgICAgICAgICAgIGlmIHRlc3QgIlgkYWRkaXRpb25hbF9saWJkaXIiID0gIlgvdXNyL2xvY2FsLyRhY2xfbGliZGlyc3RlbSIgXAorICAgICAgICAgICAgICAgICAgICAgICAgIHx8IHRlc3QgIlgkYWRkaXRpb25hbF9saWJkaXIiID0gIlgvdXNyL2xvY2FsLyRhY2xfbGliZGlyc3RlbTIiOyB0aGVuCisgICAgICAgICAgICAgICAgICAgICAgICBpZiB0ZXN0IC1uICIkR0NDIjsgdGhlbgorICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlICRob3N0X29zIGluCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGludXgqIHwgZ251KiB8IGsqYnNkKi1nbnUpIGhhdmVpdD15ZXM7OworICAgICAgICAgICAgICAgICAgICAgICAgICBlc2FjCisgICAgICAgICAgICAgICAgICAgICAgICBmaQorICAgICAgICAgICAgICAgICAgICAgIGZpCisgICAgICAgICAgICAgICAgICAgICAgaWYgdGVzdCAteiAiJGhhdmVpdCI7IHRoZW4KKyAgICAgICAgICAgICAgICAgICAgICAgIGhhdmVpdD0KKyAgICAgICAgICAgICAgICAgICAgICAgIGZvciB4IGluICRMREZMQUdTICRMSUJJQ09OVjsgZG8KKworICBhY2xfc2F2ZV9wcmVmaXg9IiRwcmVmaXgiCisgIHByZWZpeD0iJGFjbF9maW5hbF9wcmVmaXgiCisgIGFjbF9zYXZlX2V4ZWNfcHJlZml4PSIkZXhlY19wcmVmaXgiCisgIGV4ZWNfcHJlZml4PSIkYWNsX2ZpbmFsX2V4ZWNfcHJlZml4IgorICBldmFsIHg9XCIkeFwiCisgIGV4ZWNfcHJlZml4PSIkYWNsX3NhdmVfZXhlY19wcmVmaXgiCisgIHByZWZpeD0iJGFjbF9zYXZlX3ByZWZpeCIKKworICAgICAgICAgICAgICAgICAgICAgICAgICBpZiB0ZXN0ICJYJHgiID0gIlgtTCRhZGRpdGlvbmFsX2xpYmRpciI7IHRoZW4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYXZlaXQ9eWVzCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgZmkKKyAgICAgICAgICAgICAgICAgICAgICAgIGRvbmUKKyAgICAgICAgICAgICAgICAgICAgICAgIGlmIHRlc3QgLXogIiRoYXZlaXQiOyB0aGVuCisgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIHRlc3QgLWQgIiRhZGRpdGlvbmFsX2xpYmRpciI7IHRoZW4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTElCSUNPTlY9IiR7TElCSUNPTlZ9JHtMSUJJQ09OVjorIH0tTCRhZGRpdGlvbmFsX2xpYmRpciIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgZmkKKyAgICAgICAgICAgICAgICAgICAgICAgIGZpCisgICAgICAgICAgICAgICAgICAgICAgICBoYXZlaXQ9CisgICAgICAgICAgICAgICAgICAgICAgICBmb3IgeCBpbiAkTERGTEFHUyAkTFRMSUJJQ09OVjsgZG8KKworICBhY2xfc2F2ZV9wcmVmaXg9IiRwcmVmaXgiCisgIHByZWZpeD0iJGFjbF9maW5hbF9wcmVmaXgiCisgIGFjbF9zYXZlX2V4ZWNfcHJlZml4PSIkZXhlY19wcmVmaXgiCisgIGV4ZWNfcHJlZml4PSIkYWNsX2ZpbmFsX2V4ZWNfcHJlZml4IgorICBldmFsIHg9XCIkeFwiCisgIGV4ZWNfcHJlZml4PSIkYWNsX3NhdmVfZXhlY19wcmVmaXgiCisgIHByZWZpeD0iJGFjbF9zYXZlX3ByZWZpeCIKKworICAgICAgICAgICAgICAgICAgICAgICAgICBpZiB0ZXN0ICJYJHgiID0gIlgtTCRhZGRpdGlvbmFsX2xpYmRpciI7IHRoZW4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYXZlaXQ9eWVzCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgZmkKKyAgICAgICAgICAgICAgICAgICAgICAgIGRvbmUKKyAgICAgICAgICAgICAgICAgICAgICAgIGlmIHRlc3QgLXogIiRoYXZlaXQiOyB0aGVuCisgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIHRlc3QgLWQgIiRhZGRpdGlvbmFsX2xpYmRpciI7IHRoZW4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTFRMSUJJQ09OVj0iJHtMVExJQklDT05WfSR7TFRMSUJJQ09OVjorIH0tTCRhZGRpdGlvbmFsX2xpYmRpciIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgZmkKKyAgICAgICAgICAgICAgICAgICAgICAgIGZpCisgICAgICAgICAgICAgICAgICAgICAgZmkKKyAgICAgICAgICAgICAgICAgICAgZmkKKyAgICAgICAgICAgICAgICAgICAgOzsKKyAgICAgICAgICAgICAgICAgIC1SKikKKyAgICAgICAgICAgICAgICAgICAgZGlyPWBlY2hvICJYJGRlcCIgfCBzZWQgLWUgJ3MvXlgtUi8vJ2AKKyAgICAgICAgICAgICAgICAgICAgaWYgdGVzdCAiJGVuYWJsZV9ycGF0aCIgIT0gbm87IHRoZW4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhdmVpdD0KKyAgICAgICAgICAgICAgICAgICAgICBmb3IgeCBpbiAkcnBhdGhkaXJzOyBkbworICAgICAgICAgICAgICAgICAgICAgICAgaWYgdGVzdCAiWCR4IiA9ICJYJGRpciI7IHRoZW4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgaGF2ZWl0PXllcworICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhaworICAgICAgICAgICAgICAgICAgICAgICAgZmkKKyAgICAgICAgICAgICAgICAgICAgICBkb25lCisgICAgICAgICAgICAgICAgICAgICAgaWYgdGVzdCAteiAiJGhhdmVpdCI7IHRoZW4KKyAgICAgICAgICAgICAgICAgICAgICAgIHJwYXRoZGlycz0iJHJwYXRoZGlycyAkZGlyIgorICAgICAgICAgICAgICAgICAgICAgIGZpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYXZlaXQ9CisgICAgICAgICAgICAgICAgICAgICAgZm9yIHggaW4gJGx0cnBhdGhkaXJzOyBkbworICAgICAgICAgICAgICAgICAgICAgICAgaWYgdGVzdCAiWCR4IiA9ICJYJGRpciI7IHRoZW4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgaGF2ZWl0PXllcworICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhaworICAgICAgICAgICAgICAgICAgICAgICAgZmkKKyAgICAgICAgICAgICAgICAgICAgICBkb25lCisgICAgICAgICAgICAgICAgICAgICAgaWYgdGVzdCAteiAiJGhhdmVpdCI7IHRoZW4KKyAgICAgICAgICAgICAgICAgICAgICAgIGx0cnBhdGhkaXJzPSIkbHRycGF0aGRpcnMgJGRpciIKKyAgICAgICAgICAgICAgICAgICAgICBmaQorICAgICAgICAgICAgICAgICAgICBmaQorICAgICAgICAgICAgICAgICAgICA7OworICAgICAgICAgICAgICAgICAgLWwqKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWVzX25leHRfcm91bmQ9IiRuYW1lc19uZXh0X3JvdW5kICJgZWNobyAiWCRkZXAiIHwgc2VkIC1lICdzL15YLWwvLydgCisgICAgICAgICAgICAgICAgICAgIDs7CisgICAgICAgICAgICAgICAgICAqLmxhKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lc19uZXh0X3JvdW5kPSIkbmFtZXNfbmV4dF9yb3VuZCAiYGVjaG8gIlgkZGVwIiB8IHNlZCAtZSAncyxeWC4qLywsJyAtZSAncyxebGliLCwnIC1lICdzLFwubGEkLCwnYAorICAgICAgICAgICAgICAgICAgICA7OworICAgICAgICAgICAgICAgICAgKikKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMSUJJQ09OVj0iJHtMSUJJQ09OVn0ke0xJQklDT05WOisgfSRkZXAiCisgICAgICAgICAgICAgICAgICAgIExUTElCSUNPTlY9IiR7TFRMSUJJQ09OVn0ke0xUTElCSUNPTlY6KyB9JGRlcCIKKyAgICAgICAgICAgICAgICAgICAgOzsKKyAgICAgICAgICAgICAgICBlc2FjCisgICAgICAgICAgICAgIGRvbmUKKyAgICAgICAgICAgIGZpCisgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTElCSUNPTlY9IiR7TElCSUNPTlZ9JHtMSUJJQ09OVjorIH0tbCRuYW1lIgorICAgICAgICAgICAgTFRMSUJJQ09OVj0iJHtMVExJQklDT05WfSR7TFRMSUJJQ09OVjorIH0tbCRuYW1lIgorICAgICAgICAgIGZpCisgICAgICAgIGZpCisgICAgICBmaQorICAgIGRvbmUKKyAgZG9uZQorICBpZiB0ZXN0ICJYJHJwYXRoZGlycyIgIT0gIlgiOyB0aGVuCisgICAgaWYgdGVzdCAtbiAiJGFjbF9oYXJkY29kZV9saWJkaXJfc2VwYXJhdG9yIjsgdGhlbgorICAgICAgICAgICAgICAgICAgICAgICAgYWxsZGlycz0KKyAgICAgIGZvciBmb3VuZF9kaXIgaW4gJHJwYXRoZGlyczsgZG8KKyAgICAgICAgYWxsZGlycz0iJHthbGxkaXJzfSR7YWxsZGlyczorJGFjbF9oYXJkY29kZV9saWJkaXJfc2VwYXJhdG9yfSRmb3VuZF9kaXIiCisgICAgICBkb25lCisgICAgICAgICAgICBhY2xfc2F2ZV9saWJkaXI9IiRsaWJkaXIiCisgICAgICBsaWJkaXI9IiRhbGxkaXJzIgorICAgICAgZXZhbCBmbGFnPVwiJGFjbF9oYXJkY29kZV9saWJkaXJfZmxhZ19zcGVjXCIKKyAgICAgIGxpYmRpcj0iJGFjbF9zYXZlX2xpYmRpciIKKyAgICAgIExJQklDT05WPSIke0xJQklDT05WfSR7TElCSUNPTlY6KyB9JGZsYWciCisgICAgZWxzZQorICAgICAgICAgICAgZm9yIGZvdW5kX2RpciBpbiAkcnBhdGhkaXJzOyBkbworICAgICAgICBhY2xfc2F2ZV9saWJkaXI9IiRsaWJkaXIiCisgICAgICAgIGxpYmRpcj0iJGZvdW5kX2RpciIKKyAgICAgICAgZXZhbCBmbGFnPVwiJGFjbF9oYXJkY29kZV9saWJkaXJfZmxhZ19zcGVjXCIKKyAgICAgICAgbGliZGlyPSIkYWNsX3NhdmVfbGliZGlyIgorICAgICAgICBMSUJJQ09OVj0iJHtMSUJJQ09OVn0ke0xJQklDT05WOisgfSRmbGFnIgorICAgICAgZG9uZQorICAgIGZpCisgIGZpCisgIGlmIHRlc3QgIlgkbHRycGF0aGRpcnMiICE9ICJYIjsgdGhlbgorICAgICAgICAgICAgZm9yIGZvdW5kX2RpciBpbiAkbHRycGF0aGRpcnM7IGRvCisgICAgICBMVExJQklDT05WPSIke0xUTElCSUNPTlZ9JHtMVExJQklDT05WOisgfS1SJGZvdW5kX2RpciIKKyAgICBkb25lCisgIGZpCisKKworCisKKworCisKKworCisKKworCisKKworCisKKworCisKKworCisKKworCisKKworCisKKworCisKKyAgICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIGZvciBDRlByZWZlcmVuY2VzQ29weUFwcFZhbHVlIiA+JjUKKyRhc19lY2hvX24gImNoZWNraW5nIGZvciBDRlByZWZlcmVuY2VzQ29weUFwcFZhbHVlLi4uICIgPiY2OyB9CitpZiAke2d0X2N2X2Z1bmNfQ0ZQcmVmZXJlbmNlc0NvcHlBcHBWYWx1ZSs6fSBmYWxzZTsgdGhlbiA6CisgICRhc19lY2hvX24gIihjYWNoZWQpICIgPiY2CitlbHNlCisgIGd0X3NhdmVfTElCUz0iJExJQlMiCisgICAgIExJQlM9IiRMSUJTIC1XbCwtZnJhbWV3b3JrIC1XbCxDb3JlRm91bmRhdGlvbiIKKyAgICAgY2F0IGNvbmZkZWZzLmggLSA8PF9BQ0VPRiA+Y29uZnRlc3QuJGFjX2V4dAorLyogZW5kIGNvbmZkZWZzLmguICAqLworI2luY2x1ZGUgPENvcmVGb3VuZGF0aW9uL0NGUHJlZmVyZW5jZXMuaD4KK2ludAorbWFpbiAoKQoreworQ0ZQcmVmZXJlbmNlc0NvcHlBcHBWYWx1ZShOVUxMLCBOVUxMKQorICA7CisgIHJldHVybiAwOworfQorX0FDRU9GCitpZiBhY19mbl9jX3RyeV9saW5rICIkTElORU5PIjsgdGhlbiA6CisgIGd0X2N2X2Z1bmNfQ0ZQcmVmZXJlbmNlc0NvcHlBcHBWYWx1ZT15ZXMKK2Vsc2UKKyAgZ3RfY3ZfZnVuY19DRlByZWZlcmVuY2VzQ29weUFwcFZhbHVlPW5vCitmaQorcm0gLWYgY29yZSBjb25mdGVzdC5lcnIgY29uZnRlc3QuJGFjX29iamV4dCBcCisgICAgY29uZnRlc3QkYWNfZXhlZXh0IGNvbmZ0ZXN0LiRhY19leHQKKyAgICAgTElCUz0iJGd0X3NhdmVfTElCUyIKK2ZpCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogJGd0X2N2X2Z1bmNfQ0ZQcmVmZXJlbmNlc0NvcHlBcHBWYWx1ZSIgPiY1CiskYXNfZWNobyAiJGd0X2N2X2Z1bmNfQ0ZQcmVmZXJlbmNlc0NvcHlBcHBWYWx1ZSIgPiY2OyB9CisgIGlmIHRlc3QgJGd0X2N2X2Z1bmNfQ0ZQcmVmZXJlbmNlc0NvcHlBcHBWYWx1ZSA9IHllczsgdGhlbgorCiskYXNfZWNobyAiI2RlZmluZSBIQVZFX0NGUFJFRkVSRU5DRVNDT1BZQVBQVkFMVUUgMSIgPj5jb25mZGVmcy5oCisKKyAgZmkKKyAgICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIGZvciBDRkxvY2FsZUNvcHlDdXJyZW50IiA+JjUKKyRhc19lY2hvX24gImNoZWNraW5nIGZvciBDRkxvY2FsZUNvcHlDdXJyZW50Li4uICIgPiY2OyB9CitpZiAke2d0X2N2X2Z1bmNfQ0ZMb2NhbGVDb3B5Q3VycmVudCs6fSBmYWxzZTsgdGhlbiA6CisgICRhc19lY2hvX24gIihjYWNoZWQpICIgPiY2CitlbHNlCisgIGd0X3NhdmVfTElCUz0iJExJQlMiCisgICAgIExJQlM9IiRMSUJTIC1XbCwtZnJhbWV3b3JrIC1XbCxDb3JlRm91bmRhdGlvbiIKKyAgICAgY2F0IGNvbmZkZWZzLmggLSA8PF9BQ0VPRiA+Y29uZnRlc3QuJGFjX2V4dAorLyogZW5kIGNvbmZkZWZzLmguICAqLworI2luY2x1ZGUgPENvcmVGb3VuZGF0aW9uL0NGTG9jYWxlLmg+CitpbnQKK21haW4gKCkKK3sKK0NGTG9jYWxlQ29weUN1cnJlbnQoKTsKKyAgOworICByZXR1cm4gMDsKK30KK19BQ0VPRgoraWYgYWNfZm5fY190cnlfbGluayAiJExJTkVOTyI7IHRoZW4gOgorICBndF9jdl9mdW5jX0NGTG9jYWxlQ29weUN1cnJlbnQ9eWVzCitlbHNlCisgIGd0X2N2X2Z1bmNfQ0ZMb2NhbGVDb3B5Q3VycmVudD1ubworZmkKK3JtIC1mIGNvcmUgY29uZnRlc3QuZXJyIGNvbmZ0ZXN0LiRhY19vYmpleHQgXAorICAgIGNvbmZ0ZXN0JGFjX2V4ZWV4dCBjb25mdGVzdC4kYWNfZXh0CisgICAgIExJQlM9IiRndF9zYXZlX0xJQlMiCitmaQoreyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6ICRndF9jdl9mdW5jX0NGTG9jYWxlQ29weUN1cnJlbnQiID4mNQorJGFzX2VjaG8gIiRndF9jdl9mdW5jX0NGTG9jYWxlQ29weUN1cnJlbnQiID4mNjsgfQorICBpZiB0ZXN0ICRndF9jdl9mdW5jX0NGTG9jYWxlQ29weUN1cnJlbnQgPSB5ZXM7IHRoZW4KKworJGFzX2VjaG8gIiNkZWZpbmUgSEFWRV9DRkxPQ0FMRUNPUFlDVVJSRU5UIDEiID4+Y29uZmRlZnMuaAorCisgIGZpCisgIElOVExfTUFDT1NYX0xJQlM9CisgIGlmIHRlc3QgJGd0X2N2X2Z1bmNfQ0ZQcmVmZXJlbmNlc0NvcHlBcHBWYWx1ZSA9IHllcyB8fCB0ZXN0ICRndF9jdl9mdW5jX0NGTG9jYWxlQ29weUN1cnJlbnQgPSB5ZXM7IHRoZW4KKyAgICBJTlRMX01BQ09TWF9MSUJTPSItV2wsLWZyYW1ld29yayAtV2wsQ29yZUZvdW5kYXRpb24iCisgIGZpCisKKworCisKKworCisgIExJQklOVEw9CisgIExUTElCSU5UTD0KKyAgUE9TVUI9CisKKyAgICBjYXNlICIgJGd0X25lZWRzICIgaW4KKyAgICAqIiBuZWVkLWZvcm1hdHN0cmluZy1tYWNyb3MgIiopIGd0X2FwaV92ZXJzaW9uPTMgOzsKKyAgICAqIiBuZWVkLW5nZXR0ZXh0ICIqKSBndF9hcGlfdmVyc2lvbj0yIDs7CisgICAgKikgZ3RfYXBpX3ZlcnNpb249MSA7OworICBlc2FjCisgIGd0X2Z1bmNfZ251Z2V0dGV4dF9saWJjPSJndF9jdl9mdW5jX2dudWdldHRleHQke2d0X2FwaV92ZXJzaW9ufV9saWJjIgorICBndF9mdW5jX2dudWdldHRleHRfbGliaW50bD0iZ3RfY3ZfZnVuY19nbnVnZXR0ZXh0JHtndF9hcGlfdmVyc2lvbn1fbGliaW50bCIKKworICAgIGlmIHRlc3QgIiRVU0VfTkxTIiA9ICJ5ZXMiOyB0aGVuCisgICAgZ3RfdXNlX3ByZWluc3RhbGxlZF9nbnVnZXR0ZXh0PW5vCisKKworICAgICAgICBpZiB0ZXN0ICRndF9hcGlfdmVyc2lvbiAtZ2UgMzsgdGhlbgorICAgICAgICAgIGd0X3JldmlzaW9uX3Rlc3RfY29kZT0nCisjaWZuZGVmIF9fR05VX0dFVFRFWFRfU1VQUE9SVEVEX1JFVklTSU9OCisjZGVmaW5lIF9fR05VX0dFVFRFWFRfU1VQUE9SVEVEX1JFVklTSU9OKG1ham9yKSAoKG1ham9yKSA9PSAwID8gMCA6IC0xKQorI2VuZGlmCit0eXBlZGVmIGludCBhcnJheSBbMiAqIChfX0dOVV9HRVRURVhUX1NVUFBPUlRFRF9SRVZJU0lPTigwKSA+PSAxKSAtIDFdOworJworICAgICAgICBlbHNlCisgICAgICAgICAgZ3RfcmV2aXNpb25fdGVzdF9jb2RlPQorICAgICAgICBmaQorICAgICAgICBpZiB0ZXN0ICRndF9hcGlfdmVyc2lvbiAtZ2UgMjsgdGhlbgorICAgICAgICAgIGd0X2V4cHJlc3Npb25fdGVzdF9jb2RlPScgKyAqIG5nZXR0ZXh0ICgiIiwgIiIsIDApJworICAgICAgICBlbHNlCisgICAgICAgICAgZ3RfZXhwcmVzc2lvbl90ZXN0X2NvZGU9CisgICAgICAgIGZpCisKKyAgICAgICAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBjaGVja2luZyBmb3IgR05VIGdldHRleHQgaW4gbGliYyIgPiY1CiskYXNfZWNob19uICJjaGVja2luZyBmb3IgR05VIGdldHRleHQgaW4gbGliYy4uLiAiID4mNjsgfQoraWYgZXZhbCBcJHskZ3RfZnVuY19nbnVnZXR0ZXh0X2xpYmMrOn0gZmFsc2U7IHRoZW4gOgorICAkYXNfZWNob19uICIoY2FjaGVkKSAiID4mNgorZWxzZQorICBjYXQgY29uZmRlZnMuaCAtIDw8X0FDRU9GID5jb25mdGVzdC4kYWNfZXh0CisvKiBlbmQgY29uZmRlZnMuaC4gICovCisjaW5jbHVkZSA8bGliaW50bC5oPgorJGd0X3JldmlzaW9uX3Rlc3RfY29kZQorZXh0ZXJuIGludCBfbmxfbXNnX2NhdF9jbnRyOworZXh0ZXJuIGludCAqX25sX2RvbWFpbl9iaW5kaW5nczsKK2ludAorbWFpbiAoKQoreworYmluZHRleHRkb21haW4gKCIiLCAiIik7CityZXR1cm4gKiBnZXR0ZXh0ICgiIikkZ3RfZXhwcmVzc2lvbl90ZXN0X2NvZGUgKyBfbmxfbXNnX2NhdF9jbnRyICsgKl9ubF9kb21haW5fYmluZGluZ3MKKyAgOworICByZXR1cm4gMDsKK30KK19BQ0VPRgoraWYgYWNfZm5fY190cnlfbGluayAiJExJTkVOTyI7IHRoZW4gOgorICBldmFsICIkZ3RfZnVuY19nbnVnZXR0ZXh0X2xpYmM9eWVzIgorZWxzZQorICBldmFsICIkZ3RfZnVuY19nbnVnZXR0ZXh0X2xpYmM9bm8iCitmaQorcm0gLWYgY29yZSBjb25mdGVzdC5lcnIgY29uZnRlc3QuJGFjX29iamV4dCBcCisgICAgY29uZnRlc3QkYWNfZXhlZXh0IGNvbmZ0ZXN0LiRhY19leHQKK2ZpCitldmFsIGFjX3Jlcz1cJCRndF9mdW5jX2dudWdldHRleHRfbGliYworCSAgICAgICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogJGFjX3JlcyIgPiY1CiskYXNfZWNobyAiJGFjX3JlcyIgPiY2OyB9CisKKyAgICAgICAgaWYgeyBldmFsICJndF92YWw9XCQkZ3RfZnVuY19nbnVnZXR0ZXh0X2xpYmMiOyB0ZXN0ICIkZ3RfdmFsIiAhPSAieWVzIjsgfTsgdGhlbgorCisKKworCisKKyAgICAgICAgICBhbV9zYXZlX0NQUEZMQUdTPSIkQ1BQRkxBR1MiCisKKyAgZm9yIGVsZW1lbnQgaW4gJElOQ0lDT05WOyBkbworICAgIGhhdmVpdD0KKyAgICBmb3IgeCBpbiAkQ1BQRkxBR1M7IGRvCisKKyAgYWNsX3NhdmVfcHJlZml4PSIkcHJlZml4IgorICBwcmVmaXg9IiRhY2xfZmluYWxfcHJlZml4IgorICBhY2xfc2F2ZV9leGVjX3ByZWZpeD0iJGV4ZWNfcHJlZml4IgorICBleGVjX3ByZWZpeD0iJGFjbF9maW5hbF9leGVjX3ByZWZpeCIKKyAgZXZhbCB4PVwiJHhcIgorICBleGVjX3ByZWZpeD0iJGFjbF9zYXZlX2V4ZWNfcHJlZml4IgorICBwcmVmaXg9IiRhY2xfc2F2ZV9wcmVmaXgiCisKKyAgICAgIGlmIHRlc3QgIlgkeCIgPSAiWCRlbGVtZW50IjsgdGhlbgorICAgICAgICBoYXZlaXQ9eWVzCisgICAgICAgIGJyZWFrCisgICAgICBmaQorICAgIGRvbmUKKyAgICBpZiB0ZXN0IC16ICIkaGF2ZWl0IjsgdGhlbgorICAgICAgQ1BQRkxBR1M9IiR7Q1BQRkxBR1N9JHtDUFBGTEFHUzorIH0kZWxlbWVudCIKKyAgICBmaQorICBkb25lCisKKworICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIGZvciBpY29udiIgPiY1CiskYXNfZWNob19uICJjaGVja2luZyBmb3IgaWNvbnYuLi4gIiA+JjY7IH0KK2lmICR7YW1fY3ZfZnVuY19pY29udis6fSBmYWxzZTsgdGhlbiA6CisgICRhc19lY2hvX24gIihjYWNoZWQpICIgPiY2CitlbHNlCisKKyAgICBhbV9jdl9mdW5jX2ljb252PSJubywgY29uc2lkZXIgaW5zdGFsbGluZyBHTlUgbGliaWNvbnYiCisgICAgYW1fY3ZfbGliX2ljb252PW5vCisgICAgY2F0IGNvbmZkZWZzLmggLSA8PF9BQ0VPRiA+Y29uZnRlc3QuJGFjX2V4dAorLyogZW5kIGNvbmZkZWZzLmguICAqLworI2luY2x1ZGUgPHN0ZGxpYi5oPgorI2luY2x1ZGUgPGljb252Lmg+CitpbnQKK21haW4gKCkKK3sKK2ljb252X3QgY2QgPSBpY29udl9vcGVuKCIiLCIiKTsKKyAgICAgICBpY29udihjZCxOVUxMLE5VTEwsTlVMTCxOVUxMKTsKKyAgICAgICBpY29udl9jbG9zZShjZCk7CisgIDsKKyAgcmV0dXJuIDA7Cit9CitfQUNFT0YKK2lmIGFjX2ZuX2NfdHJ5X2xpbmsgIiRMSU5FTk8iOyB0aGVuIDoKKyAgYW1fY3ZfZnVuY19pY29udj15ZXMKK2ZpCitybSAtZiBjb3JlIGNvbmZ0ZXN0LmVyciBjb25mdGVzdC4kYWNfb2JqZXh0IFwKKyAgICBjb25mdGVzdCRhY19leGVleHQgY29uZnRlc3QuJGFjX2V4dAorICAgIGlmIHRlc3QgIiRhbV9jdl9mdW5jX2ljb252IiAhPSB5ZXM7IHRoZW4KKyAgICAgIGFtX3NhdmVfTElCUz0iJExJQlMiCisgICAgICBMSUJTPSIkTElCUyAkTElCSUNPTlYiCisgICAgICBjYXQgY29uZmRlZnMuaCAtIDw8X0FDRU9GID5jb25mdGVzdC4kYWNfZXh0CisvKiBlbmQgY29uZmRlZnMuaC4gICovCisjaW5jbHVkZSA8c3RkbGliLmg+CisjaW5jbHVkZSA8aWNvbnYuaD4KK2ludAorbWFpbiAoKQoreworaWNvbnZfdCBjZCA9IGljb252X29wZW4oIiIsIiIpOworICAgICAgICAgaWNvbnYoY2QsTlVMTCxOVUxMLE5VTEwsTlVMTCk7CisgICAgICAgICBpY29udl9jbG9zZShjZCk7CisgIDsKKyAgcmV0dXJuIDA7Cit9CitfQUNFT0YKK2lmIGFjX2ZuX2NfdHJ5X2xpbmsgIiRMSU5FTk8iOyB0aGVuIDoKKyAgYW1fY3ZfbGliX2ljb252PXllcworICAgICAgICBhbV9jdl9mdW5jX2ljb252PXllcworZmkKK3JtIC1mIGNvcmUgY29uZnRlc3QuZXJyIGNvbmZ0ZXN0LiRhY19vYmpleHQgXAorICAgIGNvbmZ0ZXN0JGFjX2V4ZWV4dCBjb25mdGVzdC4kYWNfZXh0CisgICAgICBMSUJTPSIkYW1fc2F2ZV9MSUJTIgorICAgIGZpCisKK2ZpCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogJGFtX2N2X2Z1bmNfaWNvbnYiID4mNQorJGFzX2VjaG8gIiRhbV9jdl9mdW5jX2ljb252IiA+JjY7IH0KKyAgaWYgdGVzdCAiJGFtX2N2X2Z1bmNfaWNvbnYiID0geWVzOyB0aGVuCisgICAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBjaGVja2luZyBmb3Igd29ya2luZyBpY29udiIgPiY1CiskYXNfZWNob19uICJjaGVja2luZyBmb3Igd29ya2luZyBpY29udi4uLiAiID4mNjsgfQoraWYgJHthbV9jdl9mdW5jX2ljb252X3dvcmtzKzp9IGZhbHNlOyB0aGVuIDoKKyAgJGFzX2VjaG9fbiAiKGNhY2hlZCkgIiA+JjYKK2Vsc2UKKworICAgICAgICAgICAgYW1fc2F2ZV9MSUJTPSIkTElCUyIKKyAgICAgIGlmIHRlc3QgJGFtX2N2X2xpYl9pY29udiA9IHllczsgdGhlbgorICAgICAgICBMSUJTPSIkTElCUyAkTElCSUNPTlYiCisgICAgICBmaQorICAgICAgaWYgdGVzdCAiJGNyb3NzX2NvbXBpbGluZyIgPSB5ZXM7IHRoZW4gOgorICBjYXNlICIkaG9zdF9vcyIgaW4KKyAgICAgICAgICAgYWl4KiB8IGhwdXgqKSBhbV9jdl9mdW5jX2ljb252X3dvcmtzPSJndWVzc2luZyBubyIgOzsKKyAgICAgICAgICAgKikgICAgICAgICAgICBhbV9jdl9mdW5jX2ljb252X3dvcmtzPSJndWVzc2luZyB5ZXMiIDs7CisgICAgICAgICBlc2FjCitlbHNlCisgIGNhdCBjb25mZGVmcy5oIC0gPDxfQUNFT0YgPmNvbmZ0ZXN0LiRhY19leHQKKy8qIGVuZCBjb25mZGVmcy5oLiAgKi8KKworI2luY2x1ZGUgPGljb252Lmg+CisjaW5jbHVkZSA8c3RyaW5nLmg+CitpbnQgbWFpbiAoKQoreworICAvKiBUZXN0IGFnYWluc3QgQUlYIDUuMSBidWc6IEZhaWx1cmVzIGFyZSBub3QgZGlzdGluZ3Vpc2hhYmxlIGZyb20gc3VjY2Vzc2Z1bAorICAgICByZXR1cm5zLiAgKi8KKyAgeworICAgIGljb252X3QgY2RfdXRmOF90b184ODU5MSA9IGljb252X29wZW4gKCJJU084ODU5LTEiLCAiVVRGLTgiKTsKKyAgICBpZiAoY2RfdXRmOF90b184ODU5MSAhPSAoaWNvbnZfdCkoLTEpKQorICAgICAgeworICAgICAgICBzdGF0aWMgY29uc3QgY2hhciBpbnB1dFtdID0gIlwzNDJcMjAyXDI1NCI7IC8qIEVVUk8gU0lHTiAqLworICAgICAgICBjaGFyIGJ1ZlsxMF07CisgICAgICAgIGNvbnN0IGNoYXIgKmlucHRyID0gaW5wdXQ7CisgICAgICAgIHNpemVfdCBpbmJ5dGVzbGVmdCA9IHN0cmxlbiAoaW5wdXQpOworICAgICAgICBjaGFyICpvdXRwdHIgPSBidWY7CisgICAgICAgIHNpemVfdCBvdXRieXRlc2xlZnQgPSBzaXplb2YgKGJ1Zik7CisgICAgICAgIHNpemVfdCByZXMgPSBpY29udiAoY2RfdXRmOF90b184ODU5MSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2hhciAqKikgJmlucHRyLCAmaW5ieXRlc2xlZnQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgJm91dHB0ciwgJm91dGJ5dGVzbGVmdCk7CisgICAgICAgIGlmIChyZXMgPT0gMCkKKyAgICAgICAgICByZXR1cm4gMTsKKyAgICAgIH0KKyAgfQorICAvKiBUZXN0IGFnYWluc3QgU29sYXJpcyAxMCBidWc6IEZhaWx1cmVzIGFyZSBub3QgZGlzdGluZ3Vpc2hhYmxlIGZyb20KKyAgICAgc3VjY2Vzc2Z1bCByZXR1cm5zLiAgKi8KKyAgeworICAgIGljb252X3QgY2RfYXNjaWlfdG9fODg1OTEgPSBpY29udl9vcGVuICgiSVNPODg1OS0xIiwgIjY0NiIpOworICAgIGlmIChjZF9hc2NpaV90b184ODU5MSAhPSAoaWNvbnZfdCkoLTEpKQorICAgICAgeworICAgICAgICBzdGF0aWMgY29uc3QgY2hhciBpbnB1dFtdID0gIlwyNjMiOworICAgICAgICBjaGFyIGJ1ZlsxMF07CisgICAgICAgIGNvbnN0IGNoYXIgKmlucHRyID0gaW5wdXQ7CisgICAgICAgIHNpemVfdCBpbmJ5dGVzbGVmdCA9IHN0cmxlbiAoaW5wdXQpOworICAgICAgICBjaGFyICpvdXRwdHIgPSBidWY7CisgICAgICAgIHNpemVfdCBvdXRieXRlc2xlZnQgPSBzaXplb2YgKGJ1Zik7CisgICAgICAgIHNpemVfdCByZXMgPSBpY29udiAoY2RfYXNjaWlfdG9fODg1OTEsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNoYXIgKiopICZpbnB0ciwgJmluYnl0ZXNsZWZ0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICZvdXRwdHIsICZvdXRieXRlc2xlZnQpOworICAgICAgICBpZiAocmVzID09IDApCisgICAgICAgICAgcmV0dXJuIDE7CisgICAgICB9CisgIH0KKyNpZiAwIC8qIFRoaXMgYnVnIGNvdWxkIGJlIHdvcmtlZCBhcm91bmQgYnkgdGhlIGNhbGxlci4gICovCisgIC8qIFRlc3QgYWdhaW5zdCBIUC1VWCAxMS4xMSBidWc6IFBvc2l0aXZlIHJldHVybiB2YWx1ZSBpbnN0ZWFkIG9mIDAuICAqLworICB7CisgICAgaWNvbnZfdCBjZF84ODU5MV90b191dGY4ID0gaWNvbnZfb3BlbiAoInV0ZjgiLCAiaXNvODg1OTEiKTsKKyAgICBpZiAoY2RfODg1OTFfdG9fdXRmOCAhPSAoaWNvbnZfdCkoLTEpKQorICAgICAgeworICAgICAgICBzdGF0aWMgY29uc3QgY2hhciBpbnB1dFtdID0gIlwzMDRyZ2VyIG1pdCBiXDM2NnNlbiBCXDM3NGJjaGVuIG9obmUgQXVnZW5tYVwzMzciOworICAgICAgICBjaGFyIGJ1Zls1MF07CisgICAgICAgIGNvbnN0IGNoYXIgKmlucHRyID0gaW5wdXQ7CisgICAgICAgIHNpemVfdCBpbmJ5dGVzbGVmdCA9IHN0cmxlbiAoaW5wdXQpOworICAgICAgICBjaGFyICpvdXRwdHIgPSBidWY7CisgICAgICAgIHNpemVfdCBvdXRieXRlc2xlZnQgPSBzaXplb2YgKGJ1Zik7CisgICAgICAgIHNpemVfdCByZXMgPSBpY29udiAoY2RfODg1OTFfdG9fdXRmOCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2hhciAqKikgJmlucHRyLCAmaW5ieXRlc2xlZnQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgJm91dHB0ciwgJm91dGJ5dGVzbGVmdCk7CisgICAgICAgIGlmICgoaW50KXJlcyA+IDApCisgICAgICAgICAgcmV0dXJuIDE7CisgICAgICB9CisgIH0KKyNlbmRpZgorICAvKiBUZXN0IGFnYWluc3QgSFAtVVggMTEuMTEgYnVnOiBObyBjb252ZXJ0ZXIgZnJvbSBFVUMtSlAgdG8gVVRGLTggaXMKKyAgICAgcHJvdmlkZWQuICAqLworICBpZiAoLyogVHJ5IHN0YW5kYXJkaXplZCBuYW1lcy4gICovCisgICAgICBpY29udl9vcGVuICgiVVRGLTgiLCAiRVVDLUpQIikgPT0gKGljb252X3QpKC0xKQorICAgICAgLyogVHJ5IElSSVgsIE9TRi8xIG5hbWVzLiAgKi8KKyAgICAgICYmIGljb252X29wZW4gKCJVVEYtOCIsICJldWNKUCIpID09IChpY29udl90KSgtMSkKKyAgICAgIC8qIFRyeSBBSVggbmFtZXMuICAqLworICAgICAgJiYgaWNvbnZfb3BlbiAoIlVURi04IiwgIklCTS1ldWNKUCIpID09IChpY29udl90KSgtMSkKKyAgICAgIC8qIFRyeSBIUC1VWCBuYW1lcy4gICovCisgICAgICAmJiBpY29udl9vcGVuICgidXRmOCIsICJldWNKUCIpID09IChpY29udl90KSgtMSkpCisgICAgcmV0dXJuIDE7CisgIHJldHVybiAwOworfQorX0FDRU9GCitpZiBhY19mbl9jX3RyeV9ydW4gIiRMSU5FTk8iOyB0aGVuIDoKKyAgYW1fY3ZfZnVuY19pY29udl93b3Jrcz15ZXMKK2Vsc2UKKyAgYW1fY3ZfZnVuY19pY29udl93b3Jrcz1ubworZmkKK3JtIC1mIGNvcmUgKi5jb3JlIGNvcmUuY29uZnRlc3QuKiBnbW9uLm91dCBiYi5vdXQgY29uZnRlc3QkYWNfZXhlZXh0IFwKKyAgY29uZnRlc3QuJGFjX29iamV4dCBjb25mdGVzdC5iZWFtIGNvbmZ0ZXN0LiRhY19leHQKK2ZpCisKKyAgICAgIExJQlM9IiRhbV9zYXZlX0xJQlMiCisKK2ZpCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogJGFtX2N2X2Z1bmNfaWNvbnZfd29ya3MiID4mNQorJGFzX2VjaG8gIiRhbV9jdl9mdW5jX2ljb252X3dvcmtzIiA+JjY7IH0KKyAgICBjYXNlICIkYW1fY3ZfZnVuY19pY29udl93b3JrcyIgaW4KKyAgICAgICpubykgYW1fZnVuY19pY29udj1ubyBhbV9jdl9saWJfaWNvbnY9bm8gOzsKKyAgICAgICopICAgYW1fZnVuY19pY29udj15ZXMgOzsKKyAgICBlc2FjCisgIGVsc2UKKyAgICBhbV9mdW5jX2ljb252PW5vIGFtX2N2X2xpYl9pY29udj1ubworICBmaQorICBpZiB0ZXN0ICIkYW1fZnVuY19pY29udiIgPSB5ZXM7IHRoZW4KKworJGFzX2VjaG8gIiNkZWZpbmUgSEFWRV9JQ09OViAxIiA+PmNvbmZkZWZzLmgKKworICBmaQorICBpZiB0ZXN0ICIkYW1fY3ZfbGliX2ljb252IiA9IHllczsgdGhlbgorICAgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgaG93IHRvIGxpbmsgd2l0aCBsaWJpY29udiIgPiY1CiskYXNfZWNob19uICJjaGVja2luZyBob3cgdG8gbGluayB3aXRoIGxpYmljb252Li4uICIgPiY2OyB9CisgICAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6ICRMSUJJQ09OViIgPiY1CiskYXNfZWNobyAiJExJQklDT05WIiA+JjY7IH0KKyAgZWxzZQorICAgICAgICAgICAgQ1BQRkxBR1M9IiRhbV9zYXZlX0NQUEZMQUdTIgorICAgIExJQklDT05WPQorICAgIExUTElCSUNPTlY9CisgIGZpCisKKworCisKKworCisKKworCisKKworICAgIHVzZV9hZGRpdGlvbmFsPXllcworCisgIGFjbF9zYXZlX3ByZWZpeD0iJHByZWZpeCIKKyAgcHJlZml4PSIkYWNsX2ZpbmFsX3ByZWZpeCIKKyAgYWNsX3NhdmVfZXhlY19wcmVmaXg9IiRleGVjX3ByZWZpeCIKKyAgZXhlY19wcmVmaXg9IiRhY2xfZmluYWxfZXhlY19wcmVmaXgiCisKKyAgICBldmFsIGFkZGl0aW9uYWxfaW5jbHVkZWRpcj1cIiRpbmNsdWRlZGlyXCIKKyAgICBldmFsIGFkZGl0aW9uYWxfbGliZGlyPVwiJGxpYmRpclwiCisKKyAgZXhlY19wcmVmaXg9IiRhY2xfc2F2ZV9leGVjX3ByZWZpeCIKKyAgcHJlZml4PSIkYWNsX3NhdmVfcHJlZml4IgorCisKKyMgQ2hlY2sgd2hldGhlciAtLXdpdGgtbGliaW50bC1wcmVmaXggd2FzIGdpdmVuLgoraWYgdGVzdCAiJHt3aXRoX2xpYmludGxfcHJlZml4K3NldH0iID0gc2V0OyB0aGVuIDoKKyAgd2l0aHZhbD0kd2l0aF9saWJpbnRsX3ByZWZpeDsKKyAgICBpZiB0ZXN0ICJYJHdpdGh2YWwiID0gIlhubyI7IHRoZW4KKyAgICAgIHVzZV9hZGRpdGlvbmFsPW5vCisgICAgZWxzZQorICAgICAgaWYgdGVzdCAiWCR3aXRodmFsIiA9ICJYIjsgdGhlbgorCisgIGFjbF9zYXZlX3ByZWZpeD0iJHByZWZpeCIKKyAgcHJlZml4PSIkYWNsX2ZpbmFsX3ByZWZpeCIKKyAgYWNsX3NhdmVfZXhlY19wcmVmaXg9IiRleGVjX3ByZWZpeCIKKyAgZXhlY19wcmVmaXg9IiRhY2xfZmluYWxfZXhlY19wcmVmaXgiCisKKyAgICAgICAgICBldmFsIGFkZGl0aW9uYWxfaW5jbHVkZWRpcj1cIiRpbmNsdWRlZGlyXCIKKyAgICAgICAgICBldmFsIGFkZGl0aW9uYWxfbGliZGlyPVwiJGxpYmRpclwiCisKKyAgZXhlY19wcmVmaXg9IiRhY2xfc2F2ZV9leGVjX3ByZWZpeCIKKyAgcHJlZml4PSIkYWNsX3NhdmVfcHJlZml4IgorCisgICAgICBlbHNlCisgICAgICAgIGFkZGl0aW9uYWxfaW5jbHVkZWRpcj0iJHdpdGh2YWwvaW5jbHVkZSIKKyAgICAgICAgYWRkaXRpb25hbF9saWJkaXI9IiR3aXRodmFsLyRhY2xfbGliZGlyc3RlbSIKKyAgICAgICAgaWYgdGVzdCAiJGFjbF9saWJkaXJzdGVtMiIgIT0gIiRhY2xfbGliZGlyc3RlbSIgXAorICAgICAgICAgICAmJiAhIHRlc3QgLWQgIiR3aXRodmFsLyRhY2xfbGliZGlyc3RlbSI7IHRoZW4KKyAgICAgICAgICBhZGRpdGlvbmFsX2xpYmRpcj0iJHdpdGh2YWwvJGFjbF9saWJkaXJzdGVtMiIKKyAgICAgICAgZmkKKyAgICAgIGZpCisgICAgZmkKKworZmkKKworICAgICAgTElCSU5UTD0KKyAgTFRMSUJJTlRMPQorICBJTkNJTlRMPQorICBMSUJJTlRMX1BSRUZJWD0KKyAgICAgIEhBVkVfTElCSU5UTD0KKyAgcnBhdGhkaXJzPQorICBsdHJwYXRoZGlycz0KKyAgbmFtZXNfYWxyZWFkeV9oYW5kbGVkPQorICBuYW1lc19uZXh0X3JvdW5kPSdpbnRsICcKKyAgd2hpbGUgdGVzdCAtbiAiJG5hbWVzX25leHRfcm91bmQiOyBkbworICAgIG5hbWVzX3RoaXNfcm91bmQ9IiRuYW1lc19uZXh0X3JvdW5kIgorICAgIG5hbWVzX25leHRfcm91bmQ9CisgICAgZm9yIG5hbWUgaW4gJG5hbWVzX3RoaXNfcm91bmQ7IGRvCisgICAgICBhbHJlYWR5X2hhbmRsZWQ9CisgICAgICBmb3IgbiBpbiAkbmFtZXNfYWxyZWFkeV9oYW5kbGVkOyBkbworICAgICAgICBpZiB0ZXN0ICIkbiIgPSAiJG5hbWUiOyB0aGVuCisgICAgICAgICAgYWxyZWFkeV9oYW5kbGVkPXllcworICAgICAgICAgIGJyZWFrCisgICAgICAgIGZpCisgICAgICBkb25lCisgICAgICBpZiB0ZXN0IC16ICIkYWxyZWFkeV9oYW5kbGVkIjsgdGhlbgorICAgICAgICBuYW1lc19hbHJlYWR5X2hhbmRsZWQ9IiRuYW1lc19hbHJlYWR5X2hhbmRsZWQgJG5hbWUiCisgICAgICAgICAgICAgICAgICAgICAgICB1cHBlcm5hbWU9YGVjaG8gIiRuYW1lIiB8IHNlZCAtZSAneXxhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ei4vLXxBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWl9fX3wnYAorICAgICAgICBldmFsIHZhbHVlPVwiXCRIQVZFX0xJQiR1cHBlcm5hbWVcIgorICAgICAgICBpZiB0ZXN0IC1uICIkdmFsdWUiOyB0aGVuCisgICAgICAgICAgaWYgdGVzdCAiJHZhbHVlIiA9IHllczsgdGhlbgorICAgICAgICAgICAgZXZhbCB2YWx1ZT1cIlwkTElCJHVwcGVybmFtZVwiCisgICAgICAgICAgICB0ZXN0IC16ICIkdmFsdWUiIHx8IExJQklOVEw9IiR7TElCSU5UTH0ke0xJQklOVEw6KyB9JHZhbHVlIgorICAgICAgICAgICAgZXZhbCB2YWx1ZT1cIlwkTFRMSUIkdXBwZXJuYW1lXCIKKyAgICAgICAgICAgIHRlc3QgLXogIiR2YWx1ZSIgfHwgTFRMSUJJTlRMPSIke0xUTElCSU5UTH0ke0xUTElCSU5UTDorIH0kdmFsdWUiCisgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOgorICAgICAgICAgIGZpCisgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvdW5kX2Rpcj0KKyAgICAgICAgICBmb3VuZF9sYT0KKyAgICAgICAgICBmb3VuZF9zbz0KKyAgICAgICAgICBmb3VuZF9hPQorICAgICAgICAgIGV2YWwgbGlibmFtZT1cIiRhY2xfbGlibmFtZV9zcGVjXCIgICAgIyB0eXBpY2FsbHk6IGxpYm5hbWU9bGliJG5hbWUKKyAgICAgICAgICBpZiB0ZXN0IC1uICIkYWNsX3NobGliZXh0IjsgdGhlbgorICAgICAgICAgICAgc2hyZXh0PSIuJGFjbF9zaGxpYmV4dCIgICAgICAgICAgICAgIyB0eXBpY2FsbHk6IHNocmV4dD0uc28KKyAgICAgICAgICBlbHNlCisgICAgICAgICAgICBzaHJleHQ9CisgICAgICAgICAgZmkKKyAgICAgICAgICBpZiB0ZXN0ICR1c2VfYWRkaXRpb25hbCA9IHllczsgdGhlbgorICAgICAgICAgICAgZGlyPSIkYWRkaXRpb25hbF9saWJkaXIiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiB0ZXN0IC1uICIkYWNsX3NobGliZXh0IjsgdGhlbgorICAgICAgICAgICAgICBpZiB0ZXN0IC1mICIkZGlyLyRsaWJuYW1lJHNocmV4dCI7IHRoZW4KKyAgICAgICAgICAgICAgICBmb3VuZF9kaXI9IiRkaXIiCisgICAgICAgICAgICAgICAgZm91bmRfc289IiRkaXIvJGxpYm5hbWUkc2hyZXh0IgorICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgaWYgdGVzdCAiJGFjbF9saWJyYXJ5X25hbWVzX3NwZWMiID0gJyRsaWJuYW1lJHNocmV4dCR2ZXJzdWZmaXgnOyB0aGVuCisgICAgICAgICAgICAgICAgICB2ZXI9YChjZCAiJGRpciIgJiYgXAorICAgICAgICAgICAgICAgICAgICAgICAgZm9yIGYgaW4gIiRsaWJuYW1lJHNocmV4dCIuKjsgZG8gZWNobyAiJGYiOyBkb25lIFwKKyAgICAgICAgICAgICAgICAgICAgICAgIHwgc2VkIC1lICJzLF4kbGlibmFtZSRzaHJleHRcXFxcLiwsIiBcCisgICAgICAgICAgICAgICAgICAgICAgICB8IHNvcnQgLXQgJy4nIC1uIC1yIC1rMSwxIC1rMiwyIC1rMywzIC1rNCw0IC1rNSw1IFwKKyAgICAgICAgICAgICAgICAgICAgICAgIHwgc2VkIDFxICkgMj4vZGV2L251bGxgCisgICAgICAgICAgICAgICAgICBpZiB0ZXN0IC1uICIkdmVyIiAmJiB0ZXN0IC1mICIkZGlyLyRsaWJuYW1lJHNocmV4dC4kdmVyIjsgdGhlbgorICAgICAgICAgICAgICAgICAgICBmb3VuZF9kaXI9IiRkaXIiCisgICAgICAgICAgICAgICAgICAgIGZvdW5kX3NvPSIkZGlyLyRsaWJuYW1lJHNocmV4dC4kdmVyIgorICAgICAgICAgICAgICAgICAgZmkKKyAgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgICBldmFsIGxpYnJhcnlfbmFtZXM9XCIkYWNsX2xpYnJhcnlfbmFtZXNfc3BlY1wiCisgICAgICAgICAgICAgICAgICBmb3IgZiBpbiAkbGlicmFyeV9uYW1lczsgZG8KKyAgICAgICAgICAgICAgICAgICAgaWYgdGVzdCAtZiAiJGRpci8kZiI7IHRoZW4KKyAgICAgICAgICAgICAgICAgICAgICBmb3VuZF9kaXI9IiRkaXIiCisgICAgICAgICAgICAgICAgICAgICAgZm91bmRfc289IiRkaXIvJGYiCisgICAgICAgICAgICAgICAgICAgICAgYnJlYWsKKyAgICAgICAgICAgICAgICAgICAgZmkKKyAgICAgICAgICAgICAgICAgIGRvbmUKKyAgICAgICAgICAgICAgICBmaQorICAgICAgICAgICAgICBmaQorICAgICAgICAgICAgZmkKKyAgICAgICAgICAgICAgICAgICAgICAgIGlmIHRlc3QgIlgkZm91bmRfZGlyIiA9ICJYIjsgdGhlbgorICAgICAgICAgICAgICBpZiB0ZXN0IC1mICIkZGlyLyRsaWJuYW1lLiRhY2xfbGliZXh0IjsgdGhlbgorICAgICAgICAgICAgICAgIGZvdW5kX2Rpcj0iJGRpciIKKyAgICAgICAgICAgICAgICBmb3VuZF9hPSIkZGlyLyRsaWJuYW1lLiRhY2xfbGliZXh0IgorICAgICAgICAgICAgICBmaQorICAgICAgICAgICAgZmkKKyAgICAgICAgICAgIGlmIHRlc3QgIlgkZm91bmRfZGlyIiAhPSAiWCI7IHRoZW4KKyAgICAgICAgICAgICAgaWYgdGVzdCAtZiAiJGRpci8kbGlibmFtZS5sYSI7IHRoZW4KKyAgICAgICAgICAgICAgICBmb3VuZF9sYT0iJGRpci8kbGlibmFtZS5sYSIKKyAgICAgICAgICAgICAgZmkKKyAgICAgICAgICAgIGZpCisgICAgICAgICAgZmkKKyAgICAgICAgICBpZiB0ZXN0ICJYJGZvdW5kX2RpciIgPSAiWCI7IHRoZW4KKyAgICAgICAgICAgIGZvciB4IGluICRMREZMQUdTICRMVExJQklOVEw7IGRvCisKKyAgYWNsX3NhdmVfcHJlZml4PSIkcHJlZml4IgorICBwcmVmaXg9IiRhY2xfZmluYWxfcHJlZml4IgorICBhY2xfc2F2ZV9leGVjX3ByZWZpeD0iJGV4ZWNfcHJlZml4IgorICBleGVjX3ByZWZpeD0iJGFjbF9maW5hbF9leGVjX3ByZWZpeCIKKyAgZXZhbCB4PVwiJHhcIgorICBleGVjX3ByZWZpeD0iJGFjbF9zYXZlX2V4ZWNfcHJlZml4IgorICBwcmVmaXg9IiRhY2xfc2F2ZV9wcmVmaXgiCisKKyAgICAgICAgICAgICAgY2FzZSAiJHgiIGluCisgICAgICAgICAgICAgICAgLUwqKQorICAgICAgICAgICAgICAgICAgZGlyPWBlY2hvICJYJHgiIHwgc2VkIC1lICdzL15YLUwvLydgCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiB0ZXN0IC1uICIkYWNsX3NobGliZXh0IjsgdGhlbgorICAgICAgICAgICAgICAgICAgICBpZiB0ZXN0IC1mICIkZGlyLyRsaWJuYW1lJHNocmV4dCI7IHRoZW4KKyAgICAgICAgICAgICAgICAgICAgICBmb3VuZF9kaXI9IiRkaXIiCisgICAgICAgICAgICAgICAgICAgICAgZm91bmRfc289IiRkaXIvJGxpYm5hbWUkc2hyZXh0IgorICAgICAgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgICAgICAgaWYgdGVzdCAiJGFjbF9saWJyYXJ5X25hbWVzX3NwZWMiID0gJyRsaWJuYW1lJHNocmV4dCR2ZXJzdWZmaXgnOyB0aGVuCisgICAgICAgICAgICAgICAgICAgICAgICB2ZXI9YChjZCAiJGRpciIgJiYgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yIGYgaW4gIiRsaWJuYW1lJHNocmV4dCIuKjsgZG8gZWNobyAiJGYiOyBkb25lIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgc2VkIC1lICJzLF4kbGlibmFtZSRzaHJleHRcXFxcLiwsIiBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IHNvcnQgLXQgJy4nIC1uIC1yIC1rMSwxIC1rMiwyIC1rMywzIC1rNCw0IC1rNSw1IFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgc2VkIDFxICkgMj4vZGV2L251bGxgCisgICAgICAgICAgICAgICAgICAgICAgICBpZiB0ZXN0IC1uICIkdmVyIiAmJiB0ZXN0IC1mICIkZGlyLyRsaWJuYW1lJHNocmV4dC4kdmVyIjsgdGhlbgorICAgICAgICAgICAgICAgICAgICAgICAgICBmb3VuZF9kaXI9IiRkaXIiCisgICAgICAgICAgICAgICAgICAgICAgICAgIGZvdW5kX3NvPSIkZGlyLyRsaWJuYW1lJHNocmV4dC4kdmVyIgorICAgICAgICAgICAgICAgICAgICAgICAgZmkKKyAgICAgICAgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgICAgICAgICBldmFsIGxpYnJhcnlfbmFtZXM9XCIkYWNsX2xpYnJhcnlfbmFtZXNfc3BlY1wiCisgICAgICAgICAgICAgICAgICAgICAgICBmb3IgZiBpbiAkbGlicmFyeV9uYW1lczsgZG8KKyAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgdGVzdCAtZiAiJGRpci8kZiI7IHRoZW4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3VuZF9kaXI9IiRkaXIiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm91bmRfc289IiRkaXIvJGYiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgZmkKKyAgICAgICAgICAgICAgICAgICAgICAgIGRvbmUKKyAgICAgICAgICAgICAgICAgICAgICBmaQorICAgICAgICAgICAgICAgICAgICBmaQorICAgICAgICAgICAgICAgICAgZmkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIHRlc3QgIlgkZm91bmRfZGlyIiA9ICJYIjsgdGhlbgorICAgICAgICAgICAgICAgICAgICBpZiB0ZXN0IC1mICIkZGlyLyRsaWJuYW1lLiRhY2xfbGliZXh0IjsgdGhlbgorICAgICAgICAgICAgICAgICAgICAgIGZvdW5kX2Rpcj0iJGRpciIKKyAgICAgICAgICAgICAgICAgICAgICBmb3VuZF9hPSIkZGlyLyRsaWJuYW1lLiRhY2xfbGliZXh0IgorICAgICAgICAgICAgICAgICAgICBmaQorICAgICAgICAgICAgICAgICAgZmkKKyAgICAgICAgICAgICAgICAgIGlmIHRlc3QgIlgkZm91bmRfZGlyIiAhPSAiWCI7IHRoZW4KKyAgICAgICAgICAgICAgICAgICAgaWYgdGVzdCAtZiAiJGRpci8kbGlibmFtZS5sYSI7IHRoZW4KKyAgICAgICAgICAgICAgICAgICAgICBmb3VuZF9sYT0iJGRpci8kbGlibmFtZS5sYSIKKyAgICAgICAgICAgICAgICAgICAgZmkKKyAgICAgICAgICAgICAgICAgIGZpCisgICAgICAgICAgICAgICAgICA7OworICAgICAgICAgICAgICBlc2FjCisgICAgICAgICAgICAgIGlmIHRlc3QgIlgkZm91bmRfZGlyIiAhPSAiWCI7IHRoZW4KKyAgICAgICAgICAgICAgICBicmVhaworICAgICAgICAgICAgICBmaQorICAgICAgICAgICAgZG9uZQorICAgICAgICAgIGZpCisgICAgICAgICAgaWYgdGVzdCAiWCRmb3VuZF9kaXIiICE9ICJYIjsgdGhlbgorICAgICAgICAgICAgICAgICAgICAgICAgTFRMSUJJTlRMPSIke0xUTElCSU5UTH0ke0xUTElCSU5UTDorIH0tTCRmb3VuZF9kaXIgLWwkbmFtZSIKKyAgICAgICAgICAgIGlmIHRlc3QgIlgkZm91bmRfc28iICE9ICJYIjsgdGhlbgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiB0ZXN0ICIkZW5hYmxlX3JwYXRoIiA9IG5vIFwKKyAgICAgICAgICAgICAgICAgfHwgdGVzdCAiWCRmb3VuZF9kaXIiID0gIlgvdXNyLyRhY2xfbGliZGlyc3RlbSIgXAorICAgICAgICAgICAgICAgICB8fCB0ZXN0ICJYJGZvdW5kX2RpciIgPSAiWC91c3IvJGFjbF9saWJkaXJzdGVtMiI7IHRoZW4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTElCSU5UTD0iJHtMSUJJTlRMfSR7TElCSU5UTDorIH0kZm91bmRfc28iCisgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGF2ZWl0PQorICAgICAgICAgICAgICAgIGZvciB4IGluICRsdHJwYXRoZGlyczsgZG8KKyAgICAgICAgICAgICAgICAgIGlmIHRlc3QgIlgkeCIgPSAiWCRmb3VuZF9kaXIiOyB0aGVuCisgICAgICAgICAgICAgICAgICAgIGhhdmVpdD15ZXMKKyAgICAgICAgICAgICAgICAgICAgYnJlYWsKKyAgICAgICAgICAgICAgICAgIGZpCisgICAgICAgICAgICAgICAgZG9uZQorICAgICAgICAgICAgICAgIGlmIHRlc3QgLXogIiRoYXZlaXQiOyB0aGVuCisgICAgICAgICAgICAgICAgICBsdHJwYXRoZGlycz0iJGx0cnBhdGhkaXJzICRmb3VuZF9kaXIiCisgICAgICAgICAgICAgICAgZmkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgdGVzdCAiJGFjbF9oYXJkY29kZV9kaXJlY3QiID0geWVzOyB0aGVuCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMSUJJTlRMPSIke0xJQklOVEx9JHtMSUJJTlRMOisgfSRmb3VuZF9zbyIKKyAgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgICBpZiB0ZXN0IC1uICIkYWNsX2hhcmRjb2RlX2xpYmRpcl9mbGFnX3NwZWMiICYmIHRlc3QgIiRhY2xfaGFyZGNvZGVfbWludXNfTCIgPSBubzsgdGhlbgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTElCSU5UTD0iJHtMSUJJTlRMfSR7TElCSU5UTDorIH0kZm91bmRfc28iCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYXZlaXQ9CisgICAgICAgICAgICAgICAgICAgIGZvciB4IGluICRycGF0aGRpcnM7IGRvCisgICAgICAgICAgICAgICAgICAgICAgaWYgdGVzdCAiWCR4IiA9ICJYJGZvdW5kX2RpciI7IHRoZW4KKyAgICAgICAgICAgICAgICAgICAgICAgIGhhdmVpdD15ZXMKKyAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrCisgICAgICAgICAgICAgICAgICAgICAgZmkKKyAgICAgICAgICAgICAgICAgICAgZG9uZQorICAgICAgICAgICAgICAgICAgICBpZiB0ZXN0IC16ICIkaGF2ZWl0IjsgdGhlbgorICAgICAgICAgICAgICAgICAgICAgIHJwYXRoZGlycz0iJHJwYXRoZGlycyAkZm91bmRfZGlyIgorICAgICAgICAgICAgICAgICAgICBmaQorICAgICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYXZlaXQ9CisgICAgICAgICAgICAgICAgICAgIGZvciB4IGluICRMREZMQUdTICRMSUJJTlRMOyBkbworCisgIGFjbF9zYXZlX3ByZWZpeD0iJHByZWZpeCIKKyAgcHJlZml4PSIkYWNsX2ZpbmFsX3ByZWZpeCIKKyAgYWNsX3NhdmVfZXhlY19wcmVmaXg9IiRleGVjX3ByZWZpeCIKKyAgZXhlY19wcmVmaXg9IiRhY2xfZmluYWxfZXhlY19wcmVmaXgiCisgIGV2YWwgeD1cIiR4XCIKKyAgZXhlY19wcmVmaXg9IiRhY2xfc2F2ZV9leGVjX3ByZWZpeCIKKyAgcHJlZml4PSIkYWNsX3NhdmVfcHJlZml4IgorCisgICAgICAgICAgICAgICAgICAgICAgaWYgdGVzdCAiWCR4IiA9ICJYLUwkZm91bmRfZGlyIjsgdGhlbgorICAgICAgICAgICAgICAgICAgICAgICAgaGF2ZWl0PXllcworICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWsKKyAgICAgICAgICAgICAgICAgICAgICBmaQorICAgICAgICAgICAgICAgICAgICBkb25lCisgICAgICAgICAgICAgICAgICAgIGlmIHRlc3QgLXogIiRoYXZlaXQiOyB0aGVuCisgICAgICAgICAgICAgICAgICAgICAgTElCSU5UTD0iJHtMSUJJTlRMfSR7TElCSU5UTDorIH0tTCRmb3VuZF9kaXIiCisgICAgICAgICAgICAgICAgICAgIGZpCisgICAgICAgICAgICAgICAgICAgIGlmIHRlc3QgIiRhY2xfaGFyZGNvZGVfbWludXNfTCIgIT0gbm87IHRoZW4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMSUJJTlRMPSIke0xJQklOVEx9JHtMSUJJTlRMOisgfSRmb3VuZF9zbyIKKyAgICAgICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMSUJJTlRMPSIke0xJQklOVEx9JHtMSUJJTlRMOisgfS1sJG5hbWUiCisgICAgICAgICAgICAgICAgICAgIGZpCisgICAgICAgICAgICAgICAgICBmaQorICAgICAgICAgICAgICAgIGZpCisgICAgICAgICAgICAgIGZpCisgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgIGlmIHRlc3QgIlgkZm91bmRfYSIgIT0gIlgiOyB0aGVuCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExJQklOVEw9IiR7TElCSU5UTH0ke0xJQklOVEw6KyB9JGZvdW5kX2EiCisgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExJQklOVEw9IiR7TElCSU5UTH0ke0xJQklOVEw6KyB9LUwkZm91bmRfZGlyIC1sJG5hbWUiCisgICAgICAgICAgICAgIGZpCisgICAgICAgICAgICBmaQorICAgICAgICAgICAgICAgICAgICAgICAgYWRkaXRpb25hbF9pbmNsdWRlZGlyPQorICAgICAgICAgICAgY2FzZSAiJGZvdW5kX2RpciIgaW4KKyAgICAgICAgICAgICAgKi8kYWNsX2xpYmRpcnN0ZW0gfCAqLyRhY2xfbGliZGlyc3RlbS8pCisgICAgICAgICAgICAgICAgYmFzZWRpcj1gZWNobyAiWCRmb3VuZF9kaXIiIHwgc2VkIC1lICdzLF5YLCwnIC1lICJzLC8kYWNsX2xpYmRpcnN0ZW0vIicqJCwsJ2AKKyAgICAgICAgICAgICAgICBpZiB0ZXN0ICIkbmFtZSIgPSAnaW50bCc7IHRoZW4KKyAgICAgICAgICAgICAgICAgIExJQklOVExfUFJFRklYPSIkYmFzZWRpciIKKyAgICAgICAgICAgICAgICBmaQorICAgICAgICAgICAgICAgIGFkZGl0aW9uYWxfaW5jbHVkZWRpcj0iJGJhc2VkaXIvaW5jbHVkZSIKKyAgICAgICAgICAgICAgICA7OworICAgICAgICAgICAgICAqLyRhY2xfbGliZGlyc3RlbTIgfCAqLyRhY2xfbGliZGlyc3RlbTIvKQorICAgICAgICAgICAgICAgIGJhc2VkaXI9YGVjaG8gIlgkZm91bmRfZGlyIiB8IHNlZCAtZSAncyxeWCwsJyAtZSAicywvJGFjbF9saWJkaXJzdGVtMi8iJyokLCwnYAorICAgICAgICAgICAgICAgIGlmIHRlc3QgIiRuYW1lIiA9ICdpbnRsJzsgdGhlbgorICAgICAgICAgICAgICAgICAgTElCSU5UTF9QUkVGSVg9IiRiYXNlZGlyIgorICAgICAgICAgICAgICAgIGZpCisgICAgICAgICAgICAgICAgYWRkaXRpb25hbF9pbmNsdWRlZGlyPSIkYmFzZWRpci9pbmNsdWRlIgorICAgICAgICAgICAgICAgIDs7CisgICAgICAgICAgICBlc2FjCisgICAgICAgICAgICBpZiB0ZXN0ICJYJGFkZGl0aW9uYWxfaW5jbHVkZWRpciIgIT0gIlgiOyB0aGVuCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgdGVzdCAiWCRhZGRpdGlvbmFsX2luY2x1ZGVkaXIiICE9ICJYL3Vzci9pbmNsdWRlIjsgdGhlbgorICAgICAgICAgICAgICAgIGhhdmVpdD0KKyAgICAgICAgICAgICAgICBpZiB0ZXN0ICJYJGFkZGl0aW9uYWxfaW5jbHVkZWRpciIgPSAiWC91c3IvbG9jYWwvaW5jbHVkZSI7IHRoZW4KKyAgICAgICAgICAgICAgICAgIGlmIHRlc3QgLW4gIiRHQ0MiOyB0aGVuCisgICAgICAgICAgICAgICAgICAgIGNhc2UgJGhvc3Rfb3MgaW4KKyAgICAgICAgICAgICAgICAgICAgICBsaW51eCogfCBnbnUqIHwgaypic2QqLWdudSkgaGF2ZWl0PXllczs7CisgICAgICAgICAgICAgICAgICAgIGVzYWMKKyAgICAgICAgICAgICAgICAgIGZpCisgICAgICAgICAgICAgICAgZmkKKyAgICAgICAgICAgICAgICBpZiB0ZXN0IC16ICIkaGF2ZWl0IjsgdGhlbgorICAgICAgICAgICAgICAgICAgZm9yIHggaW4gJENQUEZMQUdTICRJTkNJTlRMOyBkbworCisgIGFjbF9zYXZlX3ByZWZpeD0iJHByZWZpeCIKKyAgcHJlZml4PSIkYWNsX2ZpbmFsX3ByZWZpeCIKKyAgYWNsX3NhdmVfZXhlY19wcmVmaXg9IiRleGVjX3ByZWZpeCIKKyAgZXhlY19wcmVmaXg9IiRhY2xfZmluYWxfZXhlY19wcmVmaXgiCisgIGV2YWwgeD1cIiR4XCIKKyAgZXhlY19wcmVmaXg9IiRhY2xfc2F2ZV9leGVjX3ByZWZpeCIKKyAgcHJlZml4PSIkYWNsX3NhdmVfcHJlZml4IgorCisgICAgICAgICAgICAgICAgICAgIGlmIHRlc3QgIlgkeCIgPSAiWC1JJGFkZGl0aW9uYWxfaW5jbHVkZWRpciI7IHRoZW4KKyAgICAgICAgICAgICAgICAgICAgICBoYXZlaXQ9eWVzCisgICAgICAgICAgICAgICAgICAgICAgYnJlYWsKKyAgICAgICAgICAgICAgICAgICAgZmkKKyAgICAgICAgICAgICAgICAgIGRvbmUKKyAgICAgICAgICAgICAgICAgIGlmIHRlc3QgLXogIiRoYXZlaXQiOyB0aGVuCisgICAgICAgICAgICAgICAgICAgIGlmIHRlc3QgLWQgIiRhZGRpdGlvbmFsX2luY2x1ZGVkaXIiOyB0aGVuCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIElOQ0lOVEw9IiR7SU5DSU5UTH0ke0lOQ0lOVEw6KyB9LUkkYWRkaXRpb25hbF9pbmNsdWRlZGlyIgorICAgICAgICAgICAgICAgICAgICBmaQorICAgICAgICAgICAgICAgICAgZmkKKyAgICAgICAgICAgICAgICBmaQorICAgICAgICAgICAgICBmaQorICAgICAgICAgICAgZmkKKyAgICAgICAgICAgICAgICAgICAgICAgIGlmIHRlc3QgLW4gIiRmb3VuZF9sYSI7IHRoZW4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2F2ZV9saWJkaXI9IiRsaWJkaXIiCisgICAgICAgICAgICAgIGNhc2UgIiRmb3VuZF9sYSIgaW4KKyAgICAgICAgICAgICAgICAqLyogfCAqXFwqKSAuICIkZm91bmRfbGEiIDs7CisgICAgICAgICAgICAgICAgKikgLiAiLi8kZm91bmRfbGEiIDs7CisgICAgICAgICAgICAgIGVzYWMKKyAgICAgICAgICAgICAgbGliZGlyPSIkc2F2ZV9saWJkaXIiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yIGRlcCBpbiAkZGVwZW5kZW5jeV9saWJzOyBkbworICAgICAgICAgICAgICAgIGNhc2UgIiRkZXAiIGluCisgICAgICAgICAgICAgICAgICAtTCopCisgICAgICAgICAgICAgICAgICAgIGFkZGl0aW9uYWxfbGliZGlyPWBlY2hvICJYJGRlcCIgfCBzZWQgLWUgJ3MvXlgtTC8vJ2AKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiB0ZXN0ICJYJGFkZGl0aW9uYWxfbGliZGlyIiAhPSAiWC91c3IvJGFjbF9saWJkaXJzdGVtIiBcCisgICAgICAgICAgICAgICAgICAgICAgICYmIHRlc3QgIlgkYWRkaXRpb25hbF9saWJkaXIiICE9ICJYL3Vzci8kYWNsX2xpYmRpcnN0ZW0yIjsgdGhlbgorICAgICAgICAgICAgICAgICAgICAgIGhhdmVpdD0KKyAgICAgICAgICAgICAgICAgICAgICBpZiB0ZXN0ICJYJGFkZGl0aW9uYWxfbGliZGlyIiA9ICJYL3Vzci9sb2NhbC8kYWNsX2xpYmRpcnN0ZW0iIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICB8fCB0ZXN0ICJYJGFkZGl0aW9uYWxfbGliZGlyIiA9ICJYL3Vzci9sb2NhbC8kYWNsX2xpYmRpcnN0ZW0yIjsgdGhlbgorICAgICAgICAgICAgICAgICAgICAgICAgaWYgdGVzdCAtbiAiJEdDQyI7IHRoZW4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAkaG9zdF9vcyBpbgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbnV4KiB8IGdudSogfCBrKmJzZCotZ251KSBoYXZlaXQ9eWVzOzsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgZXNhYworICAgICAgICAgICAgICAgICAgICAgICAgZmkKKyAgICAgICAgICAgICAgICAgICAgICBmaQorICAgICAgICAgICAgICAgICAgICAgIGlmIHRlc3QgLXogIiRoYXZlaXQiOyB0aGVuCisgICAgICAgICAgICAgICAgICAgICAgICBoYXZlaXQ9CisgICAgICAgICAgICAgICAgICAgICAgICBmb3IgeCBpbiAkTERGTEFHUyAkTElCSU5UTDsgZG8KKworICBhY2xfc2F2ZV9wcmVmaXg9IiRwcmVmaXgiCisgIHByZWZpeD0iJGFjbF9maW5hbF9wcmVmaXgiCisgIGFjbF9zYXZlX2V4ZWNfcHJlZml4PSIkZXhlY19wcmVmaXgiCisgIGV4ZWNfcHJlZml4PSIkYWNsX2ZpbmFsX2V4ZWNfcHJlZml4IgorICBldmFsIHg9XCIkeFwiCisgIGV4ZWNfcHJlZml4PSIkYWNsX3NhdmVfZXhlY19wcmVmaXgiCisgIHByZWZpeD0iJGFjbF9zYXZlX3ByZWZpeCIKKworICAgICAgICAgICAgICAgICAgICAgICAgICBpZiB0ZXN0ICJYJHgiID0gIlgtTCRhZGRpdGlvbmFsX2xpYmRpciI7IHRoZW4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYXZlaXQ9eWVzCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgZmkKKyAgICAgICAgICAgICAgICAgICAgICAgIGRvbmUKKyAgICAgICAgICAgICAgICAgICAgICAgIGlmIHRlc3QgLXogIiRoYXZlaXQiOyB0aGVuCisgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIHRlc3QgLWQgIiRhZGRpdGlvbmFsX2xpYmRpciI7IHRoZW4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTElCSU5UTD0iJHtMSUJJTlRMfSR7TElCSU5UTDorIH0tTCRhZGRpdGlvbmFsX2xpYmRpciIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgZmkKKyAgICAgICAgICAgICAgICAgICAgICAgIGZpCisgICAgICAgICAgICAgICAgICAgICAgICBoYXZlaXQ9CisgICAgICAgICAgICAgICAgICAgICAgICBmb3IgeCBpbiAkTERGTEFHUyAkTFRMSUJJTlRMOyBkbworCisgIGFjbF9zYXZlX3ByZWZpeD0iJHByZWZpeCIKKyAgcHJlZml4PSIkYWNsX2ZpbmFsX3ByZWZpeCIKKyAgYWNsX3NhdmVfZXhlY19wcmVmaXg9IiRleGVjX3ByZWZpeCIKKyAgZXhlY19wcmVmaXg9IiRhY2xfZmluYWxfZXhlY19wcmVmaXgiCisgIGV2YWwgeD1cIiR4XCIKKyAgZXhlY19wcmVmaXg9IiRhY2xfc2F2ZV9leGVjX3ByZWZpeCIKKyAgcHJlZml4PSIkYWNsX3NhdmVfcHJlZml4IgorCisgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIHRlc3QgIlgkeCIgPSAiWC1MJGFkZGl0aW9uYWxfbGliZGlyIjsgdGhlbgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhdmVpdD15ZXMKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhaworICAgICAgICAgICAgICAgICAgICAgICAgICBmaQorICAgICAgICAgICAgICAgICAgICAgICAgZG9uZQorICAgICAgICAgICAgICAgICAgICAgICAgaWYgdGVzdCAteiAiJGhhdmVpdCI7IHRoZW4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgdGVzdCAtZCAiJGFkZGl0aW9uYWxfbGliZGlyIjsgdGhlbgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMVExJQklOVEw9IiR7TFRMSUJJTlRMfSR7TFRMSUJJTlRMOisgfS1MJGFkZGl0aW9uYWxfbGliZGlyIgorICAgICAgICAgICAgICAgICAgICAgICAgICBmaQorICAgICAgICAgICAgICAgICAgICAgICAgZmkKKyAgICAgICAgICAgICAgICAgICAgICBmaQorICAgICAgICAgICAgICAgICAgICBmaQorICAgICAgICAgICAgICAgICAgICA7OworICAgICAgICAgICAgICAgICAgLVIqKQorICAgICAgICAgICAgICAgICAgICBkaXI9YGVjaG8gIlgkZGVwIiB8IHNlZCAtZSAncy9eWC1SLy8nYAorICAgICAgICAgICAgICAgICAgICBpZiB0ZXN0ICIkZW5hYmxlX3JwYXRoIiAhPSBubzsgdGhlbgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGF2ZWl0PQorICAgICAgICAgICAgICAgICAgICAgIGZvciB4IGluICRycGF0aGRpcnM7IGRvCisgICAgICAgICAgICAgICAgICAgICAgICBpZiB0ZXN0ICJYJHgiID0gIlgkZGlyIjsgdGhlbgorICAgICAgICAgICAgICAgICAgICAgICAgICBoYXZlaXQ9eWVzCisgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrCisgICAgICAgICAgICAgICAgICAgICAgICBmaQorICAgICAgICAgICAgICAgICAgICAgIGRvbmUKKyAgICAgICAgICAgICAgICAgICAgICBpZiB0ZXN0IC16ICIkaGF2ZWl0IjsgdGhlbgorICAgICAgICAgICAgICAgICAgICAgICAgcnBhdGhkaXJzPSIkcnBhdGhkaXJzICRkaXIiCisgICAgICAgICAgICAgICAgICAgICAgZmkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhdmVpdD0KKyAgICAgICAgICAgICAgICAgICAgICBmb3IgeCBpbiAkbHRycGF0aGRpcnM7IGRvCisgICAgICAgICAgICAgICAgICAgICAgICBpZiB0ZXN0ICJYJHgiID0gIlgkZGlyIjsgdGhlbgorICAgICAgICAgICAgICAgICAgICAgICAgICBoYXZlaXQ9eWVzCisgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrCisgICAgICAgICAgICAgICAgICAgICAgICBmaQorICAgICAgICAgICAgICAgICAgICAgIGRvbmUKKyAgICAgICAgICAgICAgICAgICAgICBpZiB0ZXN0IC16ICIkaGF2ZWl0IjsgdGhlbgorICAgICAgICAgICAgICAgICAgICAgICAgbHRycGF0aGRpcnM9IiRsdHJwYXRoZGlycyAkZGlyIgorICAgICAgICAgICAgICAgICAgICAgIGZpCisgICAgICAgICAgICAgICAgICAgIGZpCisgICAgICAgICAgICAgICAgICAgIDs7CisgICAgICAgICAgICAgICAgICAtbCopCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZXNfbmV4dF9yb3VuZD0iJG5hbWVzX25leHRfcm91bmQgImBlY2hvICJYJGRlcCIgfCBzZWQgLWUgJ3MvXlgtbC8vJ2AKKyAgICAgICAgICAgICAgICAgICAgOzsKKyAgICAgICAgICAgICAgICAgICoubGEpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWVzX25leHRfcm91bmQ9IiRuYW1lc19uZXh0X3JvdW5kICJgZWNobyAiWCRkZXAiIHwgc2VkIC1lICdzLF5YLiovLCwnIC1lICdzLF5saWIsLCcgLWUgJ3MsXC5sYSQsLCdgCisgICAgICAgICAgICAgICAgICAgIDs7CisgICAgICAgICAgICAgICAgICAqKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExJQklOVEw9IiR7TElCSU5UTH0ke0xJQklOVEw6KyB9JGRlcCIKKyAgICAgICAgICAgICAgICAgICAgTFRMSUJJTlRMPSIke0xUTElCSU5UTH0ke0xUTElCSU5UTDorIH0kZGVwIgorICAgICAgICAgICAgICAgICAgICA7OworICAgICAgICAgICAgICAgIGVzYWMKKyAgICAgICAgICAgICAgZG9uZQorICAgICAgICAgICAgZmkKKyAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMSUJJTlRMPSIke0xJQklOVEx9JHtMSUJJTlRMOisgfS1sJG5hbWUiCisgICAgICAgICAgICBMVExJQklOVEw9IiR7TFRMSUJJTlRMfSR7TFRMSUJJTlRMOisgfS1sJG5hbWUiCisgICAgICAgICAgZmkKKyAgICAgICAgZmkKKyAgICAgIGZpCisgICAgZG9uZQorICBkb25lCisgIGlmIHRlc3QgIlgkcnBhdGhkaXJzIiAhPSAiWCI7IHRoZW4KKyAgICBpZiB0ZXN0IC1uICIkYWNsX2hhcmRjb2RlX2xpYmRpcl9zZXBhcmF0b3IiOyB0aGVuCisgICAgICAgICAgICAgICAgICAgICAgICBhbGxkaXJzPQorICAgICAgZm9yIGZvdW5kX2RpciBpbiAkcnBhdGhkaXJzOyBkbworICAgICAgICBhbGxkaXJzPSIke2FsbGRpcnN9JHthbGxkaXJzOiskYWNsX2hhcmRjb2RlX2xpYmRpcl9zZXBhcmF0b3J9JGZvdW5kX2RpciIKKyAgICAgIGRvbmUKKyAgICAgICAgICAgIGFjbF9zYXZlX2xpYmRpcj0iJGxpYmRpciIKKyAgICAgIGxpYmRpcj0iJGFsbGRpcnMiCisgICAgICBldmFsIGZsYWc9XCIkYWNsX2hhcmRjb2RlX2xpYmRpcl9mbGFnX3NwZWNcIgorICAgICAgbGliZGlyPSIkYWNsX3NhdmVfbGliZGlyIgorICAgICAgTElCSU5UTD0iJHtMSUJJTlRMfSR7TElCSU5UTDorIH0kZmxhZyIKKyAgICBlbHNlCisgICAgICAgICAgICBmb3IgZm91bmRfZGlyIGluICRycGF0aGRpcnM7IGRvCisgICAgICAgIGFjbF9zYXZlX2xpYmRpcj0iJGxpYmRpciIKKyAgICAgICAgbGliZGlyPSIkZm91bmRfZGlyIgorICAgICAgICBldmFsIGZsYWc9XCIkYWNsX2hhcmRjb2RlX2xpYmRpcl9mbGFnX3NwZWNcIgorICAgICAgICBsaWJkaXI9IiRhY2xfc2F2ZV9saWJkaXIiCisgICAgICAgIExJQklOVEw9IiR7TElCSU5UTH0ke0xJQklOVEw6KyB9JGZsYWciCisgICAgICBkb25lCisgICAgZmkKKyAgZmkKKyAgaWYgdGVzdCAiWCRsdHJwYXRoZGlycyIgIT0gIlgiOyB0aGVuCisgICAgICAgICAgICBmb3IgZm91bmRfZGlyIGluICRsdHJwYXRoZGlyczsgZG8KKyAgICAgIExUTElCSU5UTD0iJHtMVExJQklOVEx9JHtMVExJQklOVEw6KyB9LVIkZm91bmRfZGlyIgorICAgIGRvbmUKKyAgZmkKKworCisKKworCisKKyAgICAgICAgICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIGZvciBHTlUgZ2V0dGV4dCBpbiBsaWJpbnRsIiA+JjUKKyRhc19lY2hvX24gImNoZWNraW5nIGZvciBHTlUgZ2V0dGV4dCBpbiBsaWJpbnRsLi4uICIgPiY2OyB9CitpZiBldmFsIFwkeyRndF9mdW5jX2dudWdldHRleHRfbGliaW50bCs6fSBmYWxzZTsgdGhlbiA6CisgICRhc19lY2hvX24gIihjYWNoZWQpICIgPiY2CitlbHNlCisgIGd0X3NhdmVfQ1BQRkxBR1M9IiRDUFBGTEFHUyIKKyAgICAgICAgICAgIENQUEZMQUdTPSIkQ1BQRkxBR1MgJElOQ0lOVEwiCisgICAgICAgICAgICBndF9zYXZlX0xJQlM9IiRMSUJTIgorICAgICAgICAgICAgTElCUz0iJExJQlMgJExJQklOVEwiCisgICAgICAgICAgICAgICAgICAgICAgICBjYXQgY29uZmRlZnMuaCAtIDw8X0FDRU9GID5jb25mdGVzdC4kYWNfZXh0CisvKiBlbmQgY29uZmRlZnMuaC4gICovCisjaW5jbHVkZSA8bGliaW50bC5oPgorJGd0X3JldmlzaW9uX3Rlc3RfY29kZQorZXh0ZXJuIGludCBfbmxfbXNnX2NhdF9jbnRyOworZXh0ZXJuCisjaWZkZWYgX19jcGx1c3BsdXMKKyJDIgorI2VuZGlmCitjb25zdCBjaGFyICpfbmxfZXhwYW5kX2FsaWFzIChjb25zdCBjaGFyICopOworaW50CittYWluICgpCit7CitiaW5kdGV4dGRvbWFpbiAoIiIsICIiKTsKK3JldHVybiAqIGdldHRleHQgKCIiKSRndF9leHByZXNzaW9uX3Rlc3RfY29kZSArIF9ubF9tc2dfY2F0X2NudHIgKyAqX25sX2V4cGFuZF9hbGlhcyAoIiIpCisgIDsKKyAgcmV0dXJuIDA7Cit9CitfQUNFT0YKK2lmIGFjX2ZuX2NfdHJ5X2xpbmsgIiRMSU5FTk8iOyB0aGVuIDoKKyAgZXZhbCAiJGd0X2Z1bmNfZ251Z2V0dGV4dF9saWJpbnRsPXllcyIKK2Vsc2UKKyAgZXZhbCAiJGd0X2Z1bmNfZ251Z2V0dGV4dF9saWJpbnRsPW5vIgorZmkKK3JtIC1mIGNvcmUgY29uZnRlc3QuZXJyIGNvbmZ0ZXN0LiRhY19vYmpleHQgXAorICAgIGNvbmZ0ZXN0JGFjX2V4ZWV4dCBjb25mdGVzdC4kYWNfZXh0CisgICAgICAgICAgICAgICAgICAgICAgICBpZiB7IGV2YWwgImd0X3ZhbD1cJCRndF9mdW5jX2dudWdldHRleHRfbGliaW50bCI7IHRlc3QgIiRndF92YWwiICE9IHllczsgfSAmJiB0ZXN0IC1uICIkTElCSUNPTlYiOyB0aGVuCisgICAgICAgICAgICAgIExJQlM9IiRMSUJTICRMSUJJQ09OViIKKyAgICAgICAgICAgICAgY2F0IGNvbmZkZWZzLmggLSA8PF9BQ0VPRiA+Y29uZnRlc3QuJGFjX2V4dAorLyogZW5kIGNvbmZkZWZzLmguICAqLworI2luY2x1ZGUgPGxpYmludGwuaD4KKyRndF9yZXZpc2lvbl90ZXN0X2NvZGUKK2V4dGVybiBpbnQgX25sX21zZ19jYXRfY250cjsKK2V4dGVybgorI2lmZGVmIF9fY3BsdXNwbHVzCisiQyIKKyNlbmRpZgorY29uc3QgY2hhciAqX25sX2V4cGFuZF9hbGlhcyAoY29uc3QgY2hhciAqKTsKK2ludAorbWFpbiAoKQoreworYmluZHRleHRkb21haW4gKCIiLCAiIik7CityZXR1cm4gKiBnZXR0ZXh0ICgiIikkZ3RfZXhwcmVzc2lvbl90ZXN0X2NvZGUgKyBfbmxfbXNnX2NhdF9jbnRyICsgKl9ubF9leHBhbmRfYWxpYXMgKCIiKQorICA7CisgIHJldHVybiAwOworfQorX0FDRU9GCitpZiBhY19mbl9jX3RyeV9saW5rICIkTElORU5PIjsgdGhlbiA6CisgIExJQklOVEw9IiRMSUJJTlRMICRMSUJJQ09OViIKKyAgICAgICAgICAgICAgICBMVExJQklOVEw9IiRMVExJQklOVEwgJExUTElCSUNPTlYiCisgICAgICAgICAgICAgICAgZXZhbCAiJGd0X2Z1bmNfZ251Z2V0dGV4dF9saWJpbnRsPXllcyIKKworZmkKK3JtIC1mIGNvcmUgY29uZnRlc3QuZXJyIGNvbmZ0ZXN0LiRhY19vYmpleHQgXAorICAgIGNvbmZ0ZXN0JGFjX2V4ZWV4dCBjb25mdGVzdC4kYWNfZXh0CisgICAgICAgICAgICBmaQorICAgICAgICAgICAgQ1BQRkxBR1M9IiRndF9zYXZlX0NQUEZMQUdTIgorICAgICAgICAgICAgTElCUz0iJGd0X3NhdmVfTElCUyIKK2ZpCitldmFsIGFjX3Jlcz1cJCRndF9mdW5jX2dudWdldHRleHRfbGliaW50bAorCSAgICAgICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogJGFjX3JlcyIgPiY1CiskYXNfZWNobyAiJGFjX3JlcyIgPiY2OyB9CisgICAgICAgIGZpCisKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiB7IGV2YWwgImd0X3ZhbD1cJCRndF9mdW5jX2dudWdldHRleHRfbGliYyI7IHRlc3QgIiRndF92YWwiID0gInllcyI7IH0gXAorICAgICAgICAgICB8fCB7IHsgZXZhbCAiZ3RfdmFsPVwkJGd0X2Z1bmNfZ251Z2V0dGV4dF9saWJpbnRsIjsgdGVzdCAiJGd0X3ZhbCIgPSAieWVzIjsgfSBcCisgICAgICAgICAgICAgICAgJiYgdGVzdCAiJFBBQ0tBR0UiICE9IGdldHRleHQtcnVudGltZSBcCisgICAgICAgICAgICAgICAgJiYgdGVzdCAiJFBBQ0tBR0UiICE9IGdldHRleHQtdG9vbHM7IH07IHRoZW4KKyAgICAgICAgICBndF91c2VfcHJlaW5zdGFsbGVkX2dudWdldHRleHQ9eWVzCisgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAgICAgTElCSU5UTD0KKyAgICAgICAgICBMVExJQklOVEw9CisgICAgICAgICAgSU5DSU5UTD0KKyAgICAgICAgZmkKKworCisKKyAgICBpZiB0ZXN0IC1uICIkSU5UTF9NQUNPU1hfTElCUyI7IHRoZW4KKyAgICAgIGlmIHRlc3QgIiRndF91c2VfcHJlaW5zdGFsbGVkX2dudWdldHRleHQiID0gInllcyIgXAorICAgICAgICAgfHwgdGVzdCAiJG5sc19jdl91c2VfZ251X2dldHRleHQiID0gInllcyI7IHRoZW4KKyAgICAgICAgICAgICAgICBMSUJJTlRMPSIkTElCSU5UTCAkSU5UTF9NQUNPU1hfTElCUyIKKyAgICAgICAgTFRMSUJJTlRMPSIkTFRMSUJJTlRMICRJTlRMX01BQ09TWF9MSUJTIgorICAgICAgZmkKKyAgICBmaQorCisgICAgaWYgdGVzdCAiJGd0X3VzZV9wcmVpbnN0YWxsZWRfZ251Z2V0dGV4dCIgPSAieWVzIiBcCisgICAgICAgfHwgdGVzdCAiJG5sc19jdl91c2VfZ251X2dldHRleHQiID0gInllcyI7IHRoZW4KKworJGFzX2VjaG8gIiNkZWZpbmUgRU5BQkxFX05MUyAxIiA+PmNvbmZkZWZzLmgKKworICAgIGVsc2UKKyAgICAgIFVTRV9OTFM9bm8KKyAgICBmaQorICBmaQorCisgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgd2hldGhlciB0byB1c2UgTkxTIiA+JjUKKyRhc19lY2hvX24gImNoZWNraW5nIHdoZXRoZXIgdG8gdXNlIE5MUy4uLiAiID4mNjsgfQorICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogJFVTRV9OTFMiID4mNQorJGFzX2VjaG8gIiRVU0VfTkxTIiA+JjY7IH0KKyAgaWYgdGVzdCAiJFVTRV9OTFMiID0gInllcyI7IHRoZW4KKyAgICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIHdoZXJlIHRoZSBnZXR0ZXh0IGZ1bmN0aW9uIGNvbWVzIGZyb20iID4mNQorJGFzX2VjaG9fbiAiY2hlY2tpbmcgd2hlcmUgdGhlIGdldHRleHQgZnVuY3Rpb24gY29tZXMgZnJvbS4uLiAiID4mNjsgfQorICAgIGlmIHRlc3QgIiRndF91c2VfcHJlaW5zdGFsbGVkX2dudWdldHRleHQiID0gInllcyI7IHRoZW4KKyAgICAgIGlmIHsgZXZhbCAiZ3RfdmFsPVwkJGd0X2Z1bmNfZ251Z2V0dGV4dF9saWJpbnRsIjsgdGVzdCAiJGd0X3ZhbCIgPSAieWVzIjsgfTsgdGhlbgorICAgICAgICBndF9zb3VyY2U9ImV4dGVybmFsIGxpYmludGwiCisgICAgICBlbHNlCisgICAgICAgIGd0X3NvdXJjZT0ibGliYyIKKyAgICAgIGZpCisgICAgZWxzZQorICAgICAgZ3Rfc291cmNlPSJpbmNsdWRlZCBpbnRsIGRpcmVjdG9yeSIKKyAgICBmaQorICAgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiAkZ3Rfc291cmNlIiA+JjUKKyRhc19lY2hvICIkZ3Rfc291cmNlIiA+JjY7IH0KKyAgZmkKKworICBpZiB0ZXN0ICIkVVNFX05MUyIgPSAieWVzIjsgdGhlbgorCisgICAgaWYgdGVzdCAiJGd0X3VzZV9wcmVpbnN0YWxsZWRfZ251Z2V0dGV4dCIgPSAieWVzIjsgdGhlbgorICAgICAgaWYgeyBldmFsICJndF92YWw9XCQkZ3RfZnVuY19nbnVnZXR0ZXh0X2xpYmludGwiOyB0ZXN0ICIkZ3RfdmFsIiA9ICJ5ZXMiOyB9OyB0aGVuCisgICAgICAgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgaG93IHRvIGxpbmsgd2l0aCBsaWJpbnRsIiA+JjUKKyRhc19lY2hvX24gImNoZWNraW5nIGhvdyB0byBsaW5rIHdpdGggbGliaW50bC4uLiAiID4mNjsgfQorICAgICAgICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogJExJQklOVEwiID4mNQorJGFzX2VjaG8gIiRMSUJJTlRMIiA+JjY7IH0KKworICBmb3IgZWxlbWVudCBpbiAkSU5DSU5UTDsgZG8KKyAgICBoYXZlaXQ9CisgICAgZm9yIHggaW4gJENQUEZMQUdTOyBkbworCisgIGFjbF9zYXZlX3ByZWZpeD0iJHByZWZpeCIKKyAgcHJlZml4PSIkYWNsX2ZpbmFsX3ByZWZpeCIKKyAgYWNsX3NhdmVfZXhlY19wcmVmaXg9IiRleGVjX3ByZWZpeCIKKyAgZXhlY19wcmVmaXg9IiRhY2xfZmluYWxfZXhlY19wcmVmaXgiCisgIGV2YWwgeD1cIiR4XCIKKyAgZXhlY19wcmVmaXg9IiRhY2xfc2F2ZV9leGVjX3ByZWZpeCIKKyAgcHJlZml4PSIkYWNsX3NhdmVfcHJlZml4IgorCisgICAgICBpZiB0ZXN0ICJYJHgiID0gIlgkZWxlbWVudCI7IHRoZW4KKyAgICAgICAgaGF2ZWl0PXllcworICAgICAgICBicmVhaworICAgICAgZmkKKyAgICBkb25lCisgICAgaWYgdGVzdCAteiAiJGhhdmVpdCI7IHRoZW4KKyAgICAgIENQUEZMQUdTPSIke0NQUEZMQUdTfSR7Q1BQRkxBR1M6KyB9JGVsZW1lbnQiCisgICAgZmkKKyAgZG9uZQorCisgICAgICBmaQorCisKKyRhc19lY2hvICIjZGVmaW5lIEhBVkVfR0VUVEVYVCAxIiA+PmNvbmZkZWZzLmgKKworCiskYXNfZWNobyAiI2RlZmluZSBIQVZFX0RDR0VUVEVYVCAxIiA+PmNvbmZkZWZzLmgKKworICAgIGZpCisKKyAgICAgICAgUE9TVUI9cG8KKyAgZmkKKworCisKKyAgICBJTlRMTElCUz0iJExJQklOVEwiCisKKworCisKKworCisKKyMgQWxsb3cgY29tcGlsYXRpb24gd2l0aG91dCBvcHRpb25hbCBwcm9ncmFtcworCisKKyMgQ2hlY2sgd2hldGhlciAtLXdpdGgtZHNlbGVjdCB3YXMgZ2l2ZW4uCitpZiB0ZXN0ICIke3dpdGhfZHNlbGVjdCtzZXR9IiA9IHNldDsgdGhlbiA6CisgIHdpdGh2YWw9JHdpdGhfZHNlbGVjdDsgYnVpbGRfZHNlbGVjdD0kd2l0aF9kc2VsZWN0CitlbHNlCisgIGJ1aWxkX2RzZWxlY3Q9eWVzCisKK2ZpCisKKyAgIGlmIHRlc3QgIngkYnVpbGRfZHNlbGVjdCIgPSAieHllcyI7IHRoZW4KKyAgV0lUSF9EU0VMRUNUX1RSVUU9CisgIFdJVEhfRFNFTEVDVF9GQUxTRT0nIycKK2Vsc2UKKyAgV0lUSF9EU0VMRUNUX1RSVUU9JyMnCisgIFdJVEhfRFNFTEVDVF9GQUxTRT0KK2ZpCisKKyAgaWYgdGVzdCAieCRidWlsZF9kc2VsZWN0IiA9ICJ4eWVzIjsgdGhlbiA6CisKKworJGFzX2VjaG8gIiNkZWZpbmUgV0lUSF9EU0VMRUNUIDEiID4+Y29uZmRlZnMuaAorCisKK2Vsc2UKKworICAgICRhc19lY2hvICIjZGVmaW5lIFdJVEhfRFNFTEVDVCAwIiA+PmNvbmZkZWZzLmgKKworCitmaQorCisKKworIyBDaGVjayB3aGV0aGVyIC0td2l0aC1zdGFydC1zdG9wLWRhZW1vbiB3YXMgZ2l2ZW4uCitpZiB0ZXN0ICIke3dpdGhfc3RhcnRfc3RvcF9kYWVtb24rc2V0fSIgPSBzZXQ7IHRoZW4gOgorICB3aXRodmFsPSR3aXRoX3N0YXJ0X3N0b3BfZGFlbW9uOyBidWlsZF9zdGFydF9zdG9wX2RhZW1vbj0kd2l0aF9zdGFydF9zdG9wX2RhZW1vbgorZWxzZQorICBidWlsZF9zdGFydF9zdG9wX2RhZW1vbj15ZXMKKworZmkKKworICAgaWYgdGVzdCAieCRidWlsZF9zdGFydF9zdG9wX2RhZW1vbiIgPSAieHllcyI7IHRoZW4KKyAgV0lUSF9TVEFSVF9TVE9QX0RBRU1PTl9UUlVFPQorICBXSVRIX1NUQVJUX1NUT1BfREFFTU9OX0ZBTFNFPScjJworZWxzZQorICBXSVRIX1NUQVJUX1NUT1BfREFFTU9OX1RSVUU9JyMnCisgIFdJVEhfU1RBUlRfU1RPUF9EQUVNT05fRkFMU0U9CitmaQorCisgIGlmIHRlc3QgIngkYnVpbGRfc3RhcnRfc3RvcF9kYWVtb24iID0gInh5ZXMiOyB0aGVuIDoKKworCiskYXNfZWNobyAiI2RlZmluZSBXSVRIX1NUQVJUX1NUT1BfREFFTU9OIDEiID4+Y29uZmRlZnMuaAorCisKK2Vsc2UKKworICAgICRhc19lY2hvICIjZGVmaW5lIFdJVEhfU1RBUlRfU1RPUF9EQUVNT04gMCIgPj5jb25mZGVmcy5oCisKKworZmkKKworCisKKyMgQ2hlY2sgd2hldGhlciAtLXdpdGgtdXBkYXRlLWFsdGVybmF0aXZlcyB3YXMgZ2l2ZW4uCitpZiB0ZXN0ICIke3dpdGhfdXBkYXRlX2FsdGVybmF0aXZlcytzZXR9IiA9IHNldDsgdGhlbiA6CisgIHdpdGh2YWw9JHdpdGhfdXBkYXRlX2FsdGVybmF0aXZlczsgYnVpbGRfdXBkYXRlX2FsdGVybmF0aXZlcz0kd2l0aF91cGRhdGVfYWx0ZXJuYXRpdmVzCitlbHNlCisgIGJ1aWxkX3VwZGF0ZV9hbHRlcm5hdGl2ZXM9eWVzCisKK2ZpCisKKyAgIGlmIHRlc3QgIngkYnVpbGRfdXBkYXRlX2FsdGVybmF0aXZlcyIgPSAieHllcyI7IHRoZW4KKyAgV0lUSF9VUERBVEVfQUxURVJOQVRJVkVTX1RSVUU9CisgIFdJVEhfVVBEQVRFX0FMVEVSTkFUSVZFU19GQUxTRT0nIycKK2Vsc2UKKyAgV0lUSF9VUERBVEVfQUxURVJOQVRJVkVTX1RSVUU9JyMnCisgIFdJVEhfVVBEQVRFX0FMVEVSTkFUSVZFU19GQUxTRT0KK2ZpCisKKyAgaWYgdGVzdCAieCRidWlsZF91cGRhdGVfYWx0ZXJuYXRpdmVzIiA9ICJ4eWVzIjsgdGhlbiA6CisKKworJGFzX2VjaG8gIiNkZWZpbmUgV0lUSF9VUERBVEVfQUxURVJOQVRJVkVTIDEiID4+Y29uZmRlZnMuaAorCisKK2Vsc2UKKworICAgICRhc19lY2hvICIjZGVmaW5lIFdJVEhfVVBEQVRFX0FMVEVSTkFUSVZFUyAwIiA+PmNvbmZkZWZzLmgKKworCitmaQorCisKKworIyBDaGVjayB3aGV0aGVyIC0td2l0aC1pbnN0YWxsLWluZm8gd2FzIGdpdmVuLgoraWYgdGVzdCAiJHt3aXRoX2luc3RhbGxfaW5mbytzZXR9IiA9IHNldDsgdGhlbiA6CisgIHdpdGh2YWw9JHdpdGhfaW5zdGFsbF9pbmZvOyBidWlsZF9pbnN0YWxsX2luZm89JHdpdGhfaW5zdGFsbF9pbmZvCitlbHNlCisgIGJ1aWxkX2luc3RhbGxfaW5mbz15ZXMKKworZmkKKworICAgaWYgdGVzdCAieCRidWlsZF9pbnN0YWxsX2luZm8iID0gInh5ZXMiOyB0aGVuCisgIFdJVEhfSU5TVEFMTF9JTkZPX1RSVUU9CisgIFdJVEhfSU5TVEFMTF9JTkZPX0ZBTFNFPScjJworZWxzZQorICBXSVRIX0lOU1RBTExfSU5GT19UUlVFPScjJworICBXSVRIX0lOU1RBTExfSU5GT19GQUxTRT0KK2ZpCisKKyAgaWYgdGVzdCAieCRidWlsZF9pbnN0YWxsX2luZm8iID0gInh5ZXMiOyB0aGVuIDoKKworCiskYXNfZWNobyAiI2RlZmluZSBXSVRIX0lOU1RBTExfSU5GTyAxIiA+PmNvbmZkZWZzLmgKKworCitlbHNlCisKKyAgICAkYXNfZWNobyAiI2RlZmluZSBXSVRIX0lOU1RBTExfSU5GTyAwIiA+PmNvbmZkZWZzLmgKKworCitmaQorCisKKyMgQWxsb3cgYWx0ZXJuYXRlIGRpcmVjdG9yaWVzCisKKyAgYWRtaW5kaXI9IiR7bG9jYWxzdGF0ZWRpcn0vbGliLyR7UEFDS0FHRV9OQU1FfSIKKworIyBDaGVjayB3aGV0aGVyIC0td2l0aC1hZG1pbmRpciB3YXMgZ2l2ZW4uCitpZiB0ZXN0ICIke3dpdGhfYWRtaW5kaXIrc2V0fSIgPSBzZXQ7IHRoZW4gOgorICB3aXRodmFsPSR3aXRoX2FkbWluZGlyOyBjYXNlICR3aXRoX2FkbWluZGlyIGluICMoCisgICIiKSA6CisgICAgYXNfZm5fZXJyb3IgJD8gImludmFsaWQgYWRtaW5kaXIgc3BlY2lmaWVkIiAiJExJTkVOTyIgNSA7OyAjKAorICAqKSA6CisgICAgYWRtaW5kaXI9IiR3aXRoX2FkbWluZGlyIiA7OworZXNhYworCitmaQorCisKKworCisgIGxvZ2Rpcj0iJHtsb2NhbHN0YXRlZGlyfS9sb2ciCisKKyMgQ2hlY2sgd2hldGhlciAtLXdpdGgtbG9nZGlyIHdhcyBnaXZlbi4KK2lmIHRlc3QgIiR7d2l0aF9sb2dkaXIrc2V0fSIgPSBzZXQ7IHRoZW4gOgorICB3aXRodmFsPSR3aXRoX2xvZ2RpcjsgY2FzZSAkd2l0aF9sb2dkaXIgaW4gIygKKyAgIiIpIDoKKyAgICBhc19mbl9lcnJvciAkPyAiaW52YWxpZCBsb2dkaXIgc3BlY2lmaWVkIiAiJExJTkVOTyIgNSA7OyAjKAorICAqKSA6CisgICAgbG9nZGlyPSIkd2l0aF9sb2dkaXIiIDs7Citlc2FjCisKK2ZpCisKKworCisKKyMgQ2hlY2tzIGZvciBwcm9ncmFtcy4KK2FjX2V4dD1jCithY19jcHA9JyRDUFAgJENQUEZMQUdTJworYWNfY29tcGlsZT0nJENDIC1jICRDRkxBR1MgJENQUEZMQUdTIGNvbmZ0ZXN0LiRhY19leHQgPiY1JworYWNfbGluaz0nJENDIC1vIGNvbmZ0ZXN0JGFjX2V4ZWV4dCAkQ0ZMQUdTICRDUFBGTEFHUyAkTERGTEFHUyBjb25mdGVzdC4kYWNfZXh0ICRMSUJTID4mNScKK2FjX2NvbXBpbGVyX2dudT0kYWNfY3ZfY19jb21waWxlcl9nbnUKK2lmIHRlc3QgLW4gIiRhY190b29sX3ByZWZpeCI7IHRoZW4KKyAgIyBFeHRyYWN0IHRoZSBmaXJzdCB3b3JkIG9mICIke2FjX3Rvb2xfcHJlZml4fWdjYyIsIHNvIGl0IGNhbiBiZSBhIHByb2dyYW0gbmFtZSB3aXRoIGFyZ3MuCitzZXQgZHVtbXkgJHthY190b29sX3ByZWZpeH1nY2M7IGFjX3dvcmQ9JDIKK3sgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgZm9yICRhY193b3JkIiA+JjUKKyRhc19lY2hvX24gImNoZWNraW5nIGZvciAkYWNfd29yZC4uLiAiID4mNjsgfQoraWYgJHthY19jdl9wcm9nX0NDKzp9IGZhbHNlOyB0aGVuIDoKKyAgJGFzX2VjaG9fbiAiKGNhY2hlZCkgIiA+JjYKK2Vsc2UKKyAgaWYgdGVzdCAtbiAiJENDIjsgdGhlbgorICBhY19jdl9wcm9nX0NDPSIkQ0MiICMgTGV0IHRoZSB1c2VyIG92ZXJyaWRlIHRoZSB0ZXN0LgorZWxzZQorYXNfc2F2ZV9JRlM9JElGUzsgSUZTPSRQQVRIX1NFUEFSQVRPUgorZm9yIGFzX2RpciBpbiAkUEFUSAorZG8KKyAgSUZTPSRhc19zYXZlX0lGUworICB0ZXN0IC16ICIkYXNfZGlyIiAmJiBhc19kaXI9LgorICAgIGZvciBhY19leGVjX2V4dCBpbiAnJyAkYWNfZXhlY3V0YWJsZV9leHRlbnNpb25zOyBkbworICBpZiB7IHRlc3QgLWYgIiRhc19kaXIvJGFjX3dvcmQkYWNfZXhlY19leHQiICYmICRhc190ZXN0X3ggIiRhc19kaXIvJGFjX3dvcmQkYWNfZXhlY19leHQiOyB9OyB0aGVuCisgICAgYWNfY3ZfcHJvZ19DQz0iJHthY190b29sX3ByZWZpeH1nY2MiCisgICAgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogZm91bmQgJGFzX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCIgPiY1CisgICAgYnJlYWsgMgorICBmaQorZG9uZQorICBkb25lCitJRlM9JGFzX3NhdmVfSUZTCisKK2ZpCitmaQorQ0M9JGFjX2N2X3Byb2dfQ0MKK2lmIHRlc3QgLW4gIiRDQyI7IHRoZW4KKyAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6ICRDQyIgPiY1CiskYXNfZWNobyAiJENDIiA+JjY7IH0KK2Vsc2UKKyAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6IG5vIiA+JjUKKyRhc19lY2hvICJubyIgPiY2OyB9CitmaQorCisKK2ZpCitpZiB0ZXN0IC16ICIkYWNfY3ZfcHJvZ19DQyI7IHRoZW4KKyAgYWNfY3RfQ0M9JENDCisgICMgRXh0cmFjdCB0aGUgZmlyc3Qgd29yZCBvZiAiZ2NjIiwgc28gaXQgY2FuIGJlIGEgcHJvZ3JhbSBuYW1lIHdpdGggYXJncy4KK3NldCBkdW1teSBnY2M7IGFjX3dvcmQ9JDIKK3sgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgZm9yICRhY193b3JkIiA+JjUKKyRhc19lY2hvX24gImNoZWNraW5nIGZvciAkYWNfd29yZC4uLiAiID4mNjsgfQoraWYgJHthY19jdl9wcm9nX2FjX2N0X0NDKzp9IGZhbHNlOyB0aGVuIDoKKyAgJGFzX2VjaG9fbiAiKGNhY2hlZCkgIiA+JjYKK2Vsc2UKKyAgaWYgdGVzdCAtbiAiJGFjX2N0X0NDIjsgdGhlbgorICBhY19jdl9wcm9nX2FjX2N0X0NDPSIkYWNfY3RfQ0MiICMgTGV0IHRoZSB1c2VyIG92ZXJyaWRlIHRoZSB0ZXN0LgorZWxzZQorYXNfc2F2ZV9JRlM9JElGUzsgSUZTPSRQQVRIX1NFUEFSQVRPUgorZm9yIGFzX2RpciBpbiAkUEFUSAorZG8KKyAgSUZTPSRhc19zYXZlX0lGUworICB0ZXN0IC16ICIkYXNfZGlyIiAmJiBhc19kaXI9LgorICAgIGZvciBhY19leGVjX2V4dCBpbiAnJyAkYWNfZXhlY3V0YWJsZV9leHRlbnNpb25zOyBkbworICBpZiB7IHRlc3QgLWYgIiRhc19kaXIvJGFjX3dvcmQkYWNfZXhlY19leHQiICYmICRhc190ZXN0X3ggIiRhc19kaXIvJGFjX3dvcmQkYWNfZXhlY19leHQiOyB9OyB0aGVuCisgICAgYWNfY3ZfcHJvZ19hY19jdF9DQz0iZ2NjIgorICAgICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGZvdW5kICRhc19kaXIvJGFjX3dvcmQkYWNfZXhlY19leHQiID4mNQorICAgIGJyZWFrIDIKKyAgZmkKK2RvbmUKKyAgZG9uZQorSUZTPSRhc19zYXZlX0lGUworCitmaQorZmkKK2FjX2N0X0NDPSRhY19jdl9wcm9nX2FjX2N0X0NDCitpZiB0ZXN0IC1uICIkYWNfY3RfQ0MiOyB0aGVuCisgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiAkYWNfY3RfQ0MiID4mNQorJGFzX2VjaG8gIiRhY19jdF9DQyIgPiY2OyB9CitlbHNlCisgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiBubyIgPiY1CiskYXNfZWNobyAibm8iID4mNjsgfQorZmkKKworICBpZiB0ZXN0ICJ4JGFjX2N0X0NDIiA9IHg7IHRoZW4KKyAgICBDQz0iIgorICBlbHNlCisgICAgY2FzZSAkY3Jvc3NfY29tcGlsaW5nOiRhY190b29sX3dhcm5lZCBpbgoreWVzOikKK3sgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogV0FSTklORzogdXNpbmcgY3Jvc3MgdG9vbHMgbm90IHByZWZpeGVkIHdpdGggaG9zdCB0cmlwbGV0IiA+JjUKKyRhc19lY2hvICIkYXNfbWU6IFdBUk5JTkc6IHVzaW5nIGNyb3NzIHRvb2xzIG5vdCBwcmVmaXhlZCB3aXRoIGhvc3QgdHJpcGxldCIgPiYyO30KK2FjX3Rvb2xfd2FybmVkPXllcyA7OworZXNhYworICAgIENDPSRhY19jdF9DQworICBmaQorZWxzZQorICBDQz0iJGFjX2N2X3Byb2dfQ0MiCitmaQorCitpZiB0ZXN0IC16ICIkQ0MiOyB0aGVuCisgICAgICAgICAgaWYgdGVzdCAtbiAiJGFjX3Rvb2xfcHJlZml4IjsgdGhlbgorICAgICMgRXh0cmFjdCB0aGUgZmlyc3Qgd29yZCBvZiAiJHthY190b29sX3ByZWZpeH1jYyIsIHNvIGl0IGNhbiBiZSBhIHByb2dyYW0gbmFtZSB3aXRoIGFyZ3MuCitzZXQgZHVtbXkgJHthY190b29sX3ByZWZpeH1jYzsgYWNfd29yZD0kMgoreyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBjaGVja2luZyBmb3IgJGFjX3dvcmQiID4mNQorJGFzX2VjaG9fbiAiY2hlY2tpbmcgZm9yICRhY193b3JkLi4uICIgPiY2OyB9CitpZiAke2FjX2N2X3Byb2dfQ0MrOn0gZmFsc2U7IHRoZW4gOgorICAkYXNfZWNob19uICIoY2FjaGVkKSAiID4mNgorZWxzZQorICBpZiB0ZXN0IC1uICIkQ0MiOyB0aGVuCisgIGFjX2N2X3Byb2dfQ0M9IiRDQyIgIyBMZXQgdGhlIHVzZXIgb3ZlcnJpZGUgdGhlIHRlc3QuCitlbHNlCithc19zYXZlX0lGUz0kSUZTOyBJRlM9JFBBVEhfU0VQQVJBVE9SCitmb3IgYXNfZGlyIGluICRQQVRICitkbworICBJRlM9JGFzX3NhdmVfSUZTCisgIHRlc3QgLXogIiRhc19kaXIiICYmIGFzX2Rpcj0uCisgICAgZm9yIGFjX2V4ZWNfZXh0IGluICcnICRhY19leGVjdXRhYmxlX2V4dGVuc2lvbnM7IGRvCisgIGlmIHsgdGVzdCAtZiAiJGFzX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCIgJiYgJGFzX3Rlc3RfeCAiJGFzX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCI7IH07IHRoZW4KKyAgICBhY19jdl9wcm9nX0NDPSIke2FjX3Rvb2xfcHJlZml4fWNjIgorICAgICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGZvdW5kICRhc19kaXIvJGFjX3dvcmQkYWNfZXhlY19leHQiID4mNQorICAgIGJyZWFrIDIKKyAgZmkKK2RvbmUKKyAgZG9uZQorSUZTPSRhc19zYXZlX0lGUworCitmaQorZmkKK0NDPSRhY19jdl9wcm9nX0NDCitpZiB0ZXN0IC1uICIkQ0MiOyB0aGVuCisgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiAkQ0MiID4mNQorJGFzX2VjaG8gIiRDQyIgPiY2OyB9CitlbHNlCisgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiBubyIgPiY1CiskYXNfZWNobyAibm8iID4mNjsgfQorZmkKKworCisgIGZpCitmaQoraWYgdGVzdCAteiAiJENDIjsgdGhlbgorICAjIEV4dHJhY3QgdGhlIGZpcnN0IHdvcmQgb2YgImNjIiwgc28gaXQgY2FuIGJlIGEgcHJvZ3JhbSBuYW1lIHdpdGggYXJncy4KK3NldCBkdW1teSBjYzsgYWNfd29yZD0kMgoreyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBjaGVja2luZyBmb3IgJGFjX3dvcmQiID4mNQorJGFzX2VjaG9fbiAiY2hlY2tpbmcgZm9yICRhY193b3JkLi4uICIgPiY2OyB9CitpZiAke2FjX2N2X3Byb2dfQ0MrOn0gZmFsc2U7IHRoZW4gOgorICAkYXNfZWNob19uICIoY2FjaGVkKSAiID4mNgorZWxzZQorICBpZiB0ZXN0IC1uICIkQ0MiOyB0aGVuCisgIGFjX2N2X3Byb2dfQ0M9IiRDQyIgIyBMZXQgdGhlIHVzZXIgb3ZlcnJpZGUgdGhlIHRlc3QuCitlbHNlCisgIGFjX3Byb2dfcmVqZWN0ZWQ9bm8KK2FzX3NhdmVfSUZTPSRJRlM7IElGUz0kUEFUSF9TRVBBUkFUT1IKK2ZvciBhc19kaXIgaW4gJFBBVEgKK2RvCisgIElGUz0kYXNfc2F2ZV9JRlMKKyAgdGVzdCAteiAiJGFzX2RpciIgJiYgYXNfZGlyPS4KKyAgICBmb3IgYWNfZXhlY19leHQgaW4gJycgJGFjX2V4ZWN1dGFibGVfZXh0ZW5zaW9uczsgZG8KKyAgaWYgeyB0ZXN0IC1mICIkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IiAmJiAkYXNfdGVzdF94ICIkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IjsgfTsgdGhlbgorICAgIGlmIHRlc3QgIiRhc19kaXIvJGFjX3dvcmQkYWNfZXhlY19leHQiID0gIi91c3IvdWNiL2NjIjsgdGhlbgorICAgICAgIGFjX3Byb2dfcmVqZWN0ZWQ9eWVzCisgICAgICAgY29udGludWUKKyAgICAgZmkKKyAgICBhY19jdl9wcm9nX0NDPSJjYyIKKyAgICAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBmb3VuZCAkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IiA+JjUKKyAgICBicmVhayAyCisgIGZpCitkb25lCisgIGRvbmUKK0lGUz0kYXNfc2F2ZV9JRlMKKworaWYgdGVzdCAkYWNfcHJvZ19yZWplY3RlZCA9IHllczsgdGhlbgorICAjIFdlIGZvdW5kIGEgYm9nb24gaW4gdGhlIHBhdGgsIHNvIG1ha2Ugc3VyZSB3ZSBuZXZlciB1c2UgaXQuCisgIHNldCBkdW1teSAkYWNfY3ZfcHJvZ19DQworICBzaGlmdAorICBpZiB0ZXN0ICQjICE9IDA7IHRoZW4KKyAgICAjIFdlIGNob3NlIGEgZGlmZmVyZW50IGNvbXBpbGVyIGZyb20gdGhlIGJvZ3VzIG9uZS4KKyAgICAjIEhvd2V2ZXIsIGl0IGhhcyB0aGUgc2FtZSBiYXNlbmFtZSwgc28gdGhlIGJvZ29uIHdpbGwgYmUgY2hvc2VuCisgICAgIyBmaXJzdCBpZiB3ZSBzZXQgQ0MgdG8ganVzdCB0aGUgYmFzZW5hbWU7IHVzZSB0aGUgZnVsbCBmaWxlIG5hbWUuCisgICAgc2hpZnQKKyAgICBhY19jdl9wcm9nX0NDPSIkYXNfZGlyLyRhY193b3JkJHsxKycgJ30kQCIKKyAgZmkKK2ZpCitmaQorZmkKK0NDPSRhY19jdl9wcm9nX0NDCitpZiB0ZXN0IC1uICIkQ0MiOyB0aGVuCisgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiAkQ0MiID4mNQorJGFzX2VjaG8gIiRDQyIgPiY2OyB9CitlbHNlCisgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiBubyIgPiY1CiskYXNfZWNobyAibm8iID4mNjsgfQorZmkKKworCitmaQoraWYgdGVzdCAteiAiJENDIjsgdGhlbgorICBpZiB0ZXN0IC1uICIkYWNfdG9vbF9wcmVmaXgiOyB0aGVuCisgIGZvciBhY19wcm9nIGluIGNsLmV4ZQorICBkbworICAgICMgRXh0cmFjdCB0aGUgZmlyc3Qgd29yZCBvZiAiJGFjX3Rvb2xfcHJlZml4JGFjX3Byb2ciLCBzbyBpdCBjYW4gYmUgYSBwcm9ncmFtIG5hbWUgd2l0aCBhcmdzLgorc2V0IGR1bW15ICRhY190b29sX3ByZWZpeCRhY19wcm9nOyBhY193b3JkPSQyCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIGZvciAkYWNfd29yZCIgPiY1CiskYXNfZWNob19uICJjaGVja2luZyBmb3IgJGFjX3dvcmQuLi4gIiA+JjY7IH0KK2lmICR7YWNfY3ZfcHJvZ19DQys6fSBmYWxzZTsgdGhlbiA6CisgICRhc19lY2hvX24gIihjYWNoZWQpICIgPiY2CitlbHNlCisgIGlmIHRlc3QgLW4gIiRDQyI7IHRoZW4KKyAgYWNfY3ZfcHJvZ19DQz0iJENDIiAjIExldCB0aGUgdXNlciBvdmVycmlkZSB0aGUgdGVzdC4KK2Vsc2UKK2FzX3NhdmVfSUZTPSRJRlM7IElGUz0kUEFUSF9TRVBBUkFUT1IKK2ZvciBhc19kaXIgaW4gJFBBVEgKK2RvCisgIElGUz0kYXNfc2F2ZV9JRlMKKyAgdGVzdCAteiAiJGFzX2RpciIgJiYgYXNfZGlyPS4KKyAgICBmb3IgYWNfZXhlY19leHQgaW4gJycgJGFjX2V4ZWN1dGFibGVfZXh0ZW5zaW9uczsgZG8KKyAgaWYgeyB0ZXN0IC1mICIkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IiAmJiAkYXNfdGVzdF94ICIkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IjsgfTsgdGhlbgorICAgIGFjX2N2X3Byb2dfQ0M9IiRhY190b29sX3ByZWZpeCRhY19wcm9nIgorICAgICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGZvdW5kICRhc19kaXIvJGFjX3dvcmQkYWNfZXhlY19leHQiID4mNQorICAgIGJyZWFrIDIKKyAgZmkKK2RvbmUKKyAgZG9uZQorSUZTPSRhc19zYXZlX0lGUworCitmaQorZmkKK0NDPSRhY19jdl9wcm9nX0NDCitpZiB0ZXN0IC1uICIkQ0MiOyB0aGVuCisgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiAkQ0MiID4mNQorJGFzX2VjaG8gIiRDQyIgPiY2OyB9CitlbHNlCisgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiBubyIgPiY1CiskYXNfZWNobyAibm8iID4mNjsgfQorZmkKKworCisgICAgdGVzdCAtbiAiJENDIiAmJiBicmVhaworICBkb25lCitmaQoraWYgdGVzdCAteiAiJENDIjsgdGhlbgorICBhY19jdF9DQz0kQ0MKKyAgZm9yIGFjX3Byb2cgaW4gY2wuZXhlCitkbworICAjIEV4dHJhY3QgdGhlIGZpcnN0IHdvcmQgb2YgIiRhY19wcm9nIiwgc28gaXQgY2FuIGJlIGEgcHJvZ3JhbSBuYW1lIHdpdGggYXJncy4KK3NldCBkdW1teSAkYWNfcHJvZzsgYWNfd29yZD0kMgoreyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBjaGVja2luZyBmb3IgJGFjX3dvcmQiID4mNQorJGFzX2VjaG9fbiAiY2hlY2tpbmcgZm9yICRhY193b3JkLi4uICIgPiY2OyB9CitpZiAke2FjX2N2X3Byb2dfYWNfY3RfQ0MrOn0gZmFsc2U7IHRoZW4gOgorICAkYXNfZWNob19uICIoY2FjaGVkKSAiID4mNgorZWxzZQorICBpZiB0ZXN0IC1uICIkYWNfY3RfQ0MiOyB0aGVuCisgIGFjX2N2X3Byb2dfYWNfY3RfQ0M9IiRhY19jdF9DQyIgIyBMZXQgdGhlIHVzZXIgb3ZlcnJpZGUgdGhlIHRlc3QuCitlbHNlCithc19zYXZlX0lGUz0kSUZTOyBJRlM9JFBBVEhfU0VQQVJBVE9SCitmb3IgYXNfZGlyIGluICRQQVRICitkbworICBJRlM9JGFzX3NhdmVfSUZTCisgIHRlc3QgLXogIiRhc19kaXIiICYmIGFzX2Rpcj0uCisgICAgZm9yIGFjX2V4ZWNfZXh0IGluICcnICRhY19leGVjdXRhYmxlX2V4dGVuc2lvbnM7IGRvCisgIGlmIHsgdGVzdCAtZiAiJGFzX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCIgJiYgJGFzX3Rlc3RfeCAiJGFzX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCI7IH07IHRoZW4KKyAgICBhY19jdl9wcm9nX2FjX2N0X0NDPSIkYWNfcHJvZyIKKyAgICAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBmb3VuZCAkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IiA+JjUKKyAgICBicmVhayAyCisgIGZpCitkb25lCisgIGRvbmUKK0lGUz0kYXNfc2F2ZV9JRlMKKworZmkKK2ZpCithY19jdF9DQz0kYWNfY3ZfcHJvZ19hY19jdF9DQworaWYgdGVzdCAtbiAiJGFjX2N0X0NDIjsgdGhlbgorICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogJGFjX2N0X0NDIiA+JjUKKyRhc19lY2hvICIkYWNfY3RfQ0MiID4mNjsgfQorZWxzZQorICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogbm8iID4mNQorJGFzX2VjaG8gIm5vIiA+JjY7IH0KK2ZpCisKKworICB0ZXN0IC1uICIkYWNfY3RfQ0MiICYmIGJyZWFrCitkb25lCisKKyAgaWYgdGVzdCAieCRhY19jdF9DQyIgPSB4OyB0aGVuCisgICAgQ0M9IiIKKyAgZWxzZQorICAgIGNhc2UgJGNyb3NzX2NvbXBpbGluZzokYWNfdG9vbF93YXJuZWQgaW4KK3llczopCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IFdBUk5JTkc6IHVzaW5nIGNyb3NzIHRvb2xzIG5vdCBwcmVmaXhlZCB3aXRoIGhvc3QgdHJpcGxldCIgPiY1CiskYXNfZWNobyAiJGFzX21lOiBXQVJOSU5HOiB1c2luZyBjcm9zcyB0b29scyBub3QgcHJlZml4ZWQgd2l0aCBob3N0IHRyaXBsZXQiID4mMjt9CithY190b29sX3dhcm5lZD15ZXMgOzsKK2VzYWMKKyAgICBDQz0kYWNfY3RfQ0MKKyAgZmkKK2ZpCisKK2ZpCisKKwordGVzdCAteiAiJENDIiAmJiB7IHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogZXJyb3I6IGluIFxgJGFjX3B3ZCc6IiA+JjUKKyRhc19lY2hvICIkYXNfbWU6IGVycm9yOiBpbiBcYCRhY19wd2QnOiIgPiYyO30KK2FzX2ZuX2Vycm9yICQ/ICJubyBhY2NlcHRhYmxlIEMgY29tcGlsZXIgZm91bmQgaW4gXCRQQVRICitTZWUgXGBjb25maWcubG9nJyBmb3IgbW9yZSBkZXRhaWxzIiAiJExJTkVOTyIgNTsgfQorCisjIFByb3ZpZGUgc29tZSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgY29tcGlsZXIuCiskYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBjaGVja2luZyBmb3IgQyBjb21waWxlciB2ZXJzaW9uIiA+JjUKK3NldCBYICRhY19jb21waWxlCithY19jb21waWxlcj0kMgorZm9yIGFjX29wdGlvbiBpbiAtLXZlcnNpb24gLXYgLVYgLXF2ZXJzaW9uOyBkbworICB7IHsgYWNfdHJ5PSIkYWNfY29tcGlsZXIgJGFjX29wdGlvbiA+JjUiCitjYXNlICIoKCRhY190cnkiIGluCisgICpcIiogfCAqXGAqIHwgKlxcKikgYWNfdHJ5X2VjaG89XCRhY190cnk7OworICAqKSBhY190cnlfZWNobz0kYWNfdHJ5OzsKK2VzYWMKK2V2YWwgYWNfdHJ5X2VjaG89IlwiXCRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogJGFjX3RyeV9lY2hvXCIiCiskYXNfZWNobyAiJGFjX3RyeV9lY2hvIjsgfSA+JjUKKyAgKGV2YWwgIiRhY19jb21waWxlciAkYWNfb3B0aW9uID4mNSIpIDI+Y29uZnRlc3QuZXJyCisgIGFjX3N0YXR1cz0kPworICBpZiB0ZXN0IC1zIGNvbmZ0ZXN0LmVycjsgdGhlbgorICAgIHNlZCAnMTBhXAorLi4uIHJlc3Qgb2Ygc3RkZXJyIG91dHB1dCBkZWxldGVkIC4uLgorICAgICAgICAgMTBxJyBjb25mdGVzdC5lcnIgPmNvbmZ0ZXN0LmVyMQorICAgIGNhdCBjb25mdGVzdC5lcjEgPiY1CisgIGZpCisgIHJtIC1mIGNvbmZ0ZXN0LmVyMSBjb25mdGVzdC5lcnIKKyAgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CisgIHRlc3QgJGFjX3N0YXR1cyA9IDA7IH0KK2RvbmUKKworeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBjaGVja2luZyB3aGV0aGVyIHdlIGFyZSB1c2luZyB0aGUgR05VIEMgY29tcGlsZXIiID4mNQorJGFzX2VjaG9fbiAiY2hlY2tpbmcgd2hldGhlciB3ZSBhcmUgdXNpbmcgdGhlIEdOVSBDIGNvbXBpbGVyLi4uICIgPiY2OyB9CitpZiAke2FjX2N2X2NfY29tcGlsZXJfZ251Kzp9IGZhbHNlOyB0aGVuIDoKKyAgJGFzX2VjaG9fbiAiKGNhY2hlZCkgIiA+JjYKK2Vsc2UKKyAgY2F0IGNvbmZkZWZzLmggLSA8PF9BQ0VPRiA+Y29uZnRlc3QuJGFjX2V4dAorLyogZW5kIGNvbmZkZWZzLmguICAqLworCitpbnQKK21haW4gKCkKK3sKKyNpZm5kZWYgX19HTlVDX18KKyAgICAgICBjaG9rZSBtZQorI2VuZGlmCisKKyAgOworICByZXR1cm4gMDsKK30KK19BQ0VPRgoraWYgYWNfZm5fY190cnlfY29tcGlsZSAiJExJTkVOTyI7IHRoZW4gOgorICBhY19jb21waWxlcl9nbnU9eWVzCitlbHNlCisgIGFjX2NvbXBpbGVyX2dudT1ubworZmkKK3JtIC1mIGNvcmUgY29uZnRlc3QuZXJyIGNvbmZ0ZXN0LiRhY19vYmpleHQgY29uZnRlc3QuJGFjX2V4dAorYWNfY3ZfY19jb21waWxlcl9nbnU9JGFjX2NvbXBpbGVyX2dudQorCitmaQoreyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6ICRhY19jdl9jX2NvbXBpbGVyX2dudSIgPiY1CiskYXNfZWNobyAiJGFjX2N2X2NfY29tcGlsZXJfZ251IiA+JjY7IH0KK2lmIHRlc3QgJGFjX2NvbXBpbGVyX2dudSA9IHllczsgdGhlbgorICBHQ0M9eWVzCitlbHNlCisgIEdDQz0KK2ZpCithY190ZXN0X0NGTEFHUz0ke0NGTEFHUytzZXR9CithY19zYXZlX0NGTEFHUz0kQ0ZMQUdTCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIHdoZXRoZXIgJENDIGFjY2VwdHMgLWciID4mNQorJGFzX2VjaG9fbiAiY2hlY2tpbmcgd2hldGhlciAkQ0MgYWNjZXB0cyAtZy4uLiAiID4mNjsgfQoraWYgJHthY19jdl9wcm9nX2NjX2crOn0gZmFsc2U7IHRoZW4gOgorICAkYXNfZWNob19uICIoY2FjaGVkKSAiID4mNgorZWxzZQorICBhY19zYXZlX2Nfd2Vycm9yX2ZsYWc9JGFjX2Nfd2Vycm9yX2ZsYWcKKyAgIGFjX2Nfd2Vycm9yX2ZsYWc9eWVzCisgICBhY19jdl9wcm9nX2NjX2c9bm8KKyAgIENGTEFHUz0iLWciCisgICBjYXQgY29uZmRlZnMuaCAtIDw8X0FDRU9GID5jb25mdGVzdC4kYWNfZXh0CisvKiBlbmQgY29uZmRlZnMuaC4gICovCisKK2ludAorbWFpbiAoKQoreworCisgIDsKKyAgcmV0dXJuIDA7Cit9CitfQUNFT0YKK2lmIGFjX2ZuX2NfdHJ5X2NvbXBpbGUgIiRMSU5FTk8iOyB0aGVuIDoKKyAgYWNfY3ZfcHJvZ19jY19nPXllcworZWxzZQorICBDRkxBR1M9IiIKKyAgICAgIGNhdCBjb25mZGVmcy5oIC0gPDxfQUNFT0YgPmNvbmZ0ZXN0LiRhY19leHQKKy8qIGVuZCBjb25mZGVmcy5oLiAgKi8KKworaW50CittYWluICgpCit7CisKKyAgOworICByZXR1cm4gMDsKK30KK19BQ0VPRgoraWYgYWNfZm5fY190cnlfY29tcGlsZSAiJExJTkVOTyI7IHRoZW4gOgorCitlbHNlCisgIGFjX2Nfd2Vycm9yX2ZsYWc9JGFjX3NhdmVfY193ZXJyb3JfZmxhZworCSBDRkxBR1M9Ii1nIgorCSBjYXQgY29uZmRlZnMuaCAtIDw8X0FDRU9GID5jb25mdGVzdC4kYWNfZXh0CisvKiBlbmQgY29uZmRlZnMuaC4gICovCisKK2ludAorbWFpbiAoKQoreworCisgIDsKKyAgcmV0dXJuIDA7Cit9CitfQUNFT0YKK2lmIGFjX2ZuX2NfdHJ5X2NvbXBpbGUgIiRMSU5FTk8iOyB0aGVuIDoKKyAgYWNfY3ZfcHJvZ19jY19nPXllcworZmkKK3JtIC1mIGNvcmUgY29uZnRlc3QuZXJyIGNvbmZ0ZXN0LiRhY19vYmpleHQgY29uZnRlc3QuJGFjX2V4dAorZmkKK3JtIC1mIGNvcmUgY29uZnRlc3QuZXJyIGNvbmZ0ZXN0LiRhY19vYmpleHQgY29uZnRlc3QuJGFjX2V4dAorZmkKK3JtIC1mIGNvcmUgY29uZnRlc3QuZXJyIGNvbmZ0ZXN0LiRhY19vYmpleHQgY29uZnRlc3QuJGFjX2V4dAorICAgYWNfY193ZXJyb3JfZmxhZz0kYWNfc2F2ZV9jX3dlcnJvcl9mbGFnCitmaQoreyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6ICRhY19jdl9wcm9nX2NjX2ciID4mNQorJGFzX2VjaG8gIiRhY19jdl9wcm9nX2NjX2ciID4mNjsgfQoraWYgdGVzdCAiJGFjX3Rlc3RfQ0ZMQUdTIiA9IHNldDsgdGhlbgorICBDRkxBR1M9JGFjX3NhdmVfQ0ZMQUdTCitlbGlmIHRlc3QgJGFjX2N2X3Byb2dfY2NfZyA9IHllczsgdGhlbgorICBpZiB0ZXN0ICIkR0NDIiA9IHllczsgdGhlbgorICAgIENGTEFHUz0iLWcgLU8yIgorICBlbHNlCisgICAgQ0ZMQUdTPSItZyIKKyAgZmkKK2Vsc2UKKyAgaWYgdGVzdCAiJEdDQyIgPSB5ZXM7IHRoZW4KKyAgICBDRkxBR1M9Ii1PMiIKKyAgZWxzZQorICAgIENGTEFHUz0KKyAgZmkKK2ZpCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIGZvciAkQ0Mgb3B0aW9uIHRvIGFjY2VwdCBJU08gQzg5IiA+JjUKKyRhc19lY2hvX24gImNoZWNraW5nIGZvciAkQ0Mgb3B0aW9uIHRvIGFjY2VwdCBJU08gQzg5Li4uICIgPiY2OyB9CitpZiAke2FjX2N2X3Byb2dfY2NfYzg5Kzp9IGZhbHNlOyB0aGVuIDoKKyAgJGFzX2VjaG9fbiAiKGNhY2hlZCkgIiA+JjYKK2Vsc2UKKyAgYWNfY3ZfcHJvZ19jY19jODk9bm8KK2FjX3NhdmVfQ0M9JENDCitjYXQgY29uZmRlZnMuaCAtIDw8X0FDRU9GID5jb25mdGVzdC4kYWNfZXh0CisvKiBlbmQgY29uZmRlZnMuaC4gICovCisjaW5jbHVkZSA8c3RkYXJnLmg+CisjaW5jbHVkZSA8c3RkaW8uaD4KKyNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KKyNpbmNsdWRlIDxzeXMvc3RhdC5oPgorLyogTW9zdCBvZiB0aGUgZm9sbG93aW5nIHRlc3RzIGFyZSBzdG9sZW4gZnJvbSBSQ1MgNS43J3Mgc3JjL2NvbmYuc2guICAqLworc3RydWN0IGJ1ZiB7IGludCB4OyB9OworRklMRSAqICgqcmNzb3BlbikgKHN0cnVjdCBidWYgKiwgc3RydWN0IHN0YXQgKiwgaW50KTsKK3N0YXRpYyBjaGFyICplIChwLCBpKQorICAgICBjaGFyICoqcDsKKyAgICAgaW50IGk7Cit7CisgIHJldHVybiBwW2ldOworfQorc3RhdGljIGNoYXIgKmYgKGNoYXIgKiAoKmcpIChjaGFyICoqLCBpbnQpLCBjaGFyICoqcCwgLi4uKQoreworICBjaGFyICpzOworICB2YV9saXN0IHY7CisgIHZhX3N0YXJ0ICh2LHApOworICBzID0gZyAocCwgdmFfYXJnICh2LGludCkpOworICB2YV9lbmQgKHYpOworICByZXR1cm4gczsKK30KKworLyogT1NGIDQuMCBDb21wYXEgY2MgaXMgc29tZSBzb3J0IG9mIGFsbW9zdC1BTlNJIGJ5IGRlZmF1bHQuICBJdCBoYXMKKyAgIGZ1bmN0aW9uIHByb3RvdHlwZXMgYW5kIHN0dWZmLCBidXQgbm90ICdceEhIJyBoZXggY2hhcmFjdGVyIGNvbnN0YW50cy4KKyAgIFRoZXNlIGRvbid0IHByb3Zva2UgYW4gZXJyb3IgdW5mb3J0dW5hdGVseSwgaW5zdGVhZCBhcmUgc2lsZW50bHkgdHJlYXRlZAorICAgYXMgJ3gnLiAgVGhlIGZvbGxvd2luZyBpbmR1Y2VzIGFuIGVycm9yLCB1bnRpbCAtc3RkIGlzIGFkZGVkIHRvIGdldAorICAgcHJvcGVyIEFOU0kgbW9kZS4gIEN1cmlvdXNseSAnXHgwMCchPSd4JyBhbHdheXMgY29tZXMgb3V0IHRydWUsIGZvciBhbgorICAgYXJyYXkgc2l6ZSBhdCBsZWFzdC4gIEl0J3MgbmVjZXNzYXJ5IHRvIHdyaXRlICdceDAwJz09MCB0byBnZXQgc29tZXRoaW5nCisgICB0aGF0J3MgdHJ1ZSBvbmx5IHdpdGggLXN0ZC4gICovCitpbnQgb3NmNF9jY19hcnJheSBbJ1x4MDAnID09IDAgPyAxIDogLTFdOworCisvKiBJQk0gQyA2IGZvciBBSVggaXMgYWxtb3N0LUFOU0kgYnkgZGVmYXVsdCwgYnV0IGl0IHJlcGxhY2VzIG1hY3JvIHBhcmFtZXRlcnMKKyAgIGluc2lkZSBzdHJpbmdzIGFuZCBjaGFyYWN0ZXIgY29uc3RhbnRzLiAgKi8KKyNkZWZpbmUgRk9PKHgpICd4JworaW50IHhsYzZfY2NfYXJyYXlbRk9PKGEpID09ICd4JyA/IDEgOiAtMV07CisKK2ludCB0ZXN0IChpbnQgaSwgZG91YmxlIHgpOworc3RydWN0IHMxIHtpbnQgKCpmKSAoaW50IGEpO307CitzdHJ1Y3QgczIge2ludCAoKmYpIChkb3VibGUgYSk7fTsKK2ludCBwYWlybmFtZXMgKGludCwgY2hhciAqKiwgRklMRSAqKCopKHN0cnVjdCBidWYgKiwgc3RydWN0IHN0YXQgKiwgaW50KSwgaW50LCBpbnQpOworaW50IGFyZ2M7CitjaGFyICoqYXJndjsKK2ludAorbWFpbiAoKQoreworcmV0dXJuIGYgKGUsIGFyZ3YsIDApICE9IGFyZ3ZbMF0gIHx8ICBmIChlLCBhcmd2LCAxKSAhPSBhcmd2WzFdOworICA7CisgIHJldHVybiAwOworfQorX0FDRU9GCitmb3IgYWNfYXJnIGluICcnIC1xbGFuZ2x2bD1leHRjODkgLXFsYW5nbHZsPWFuc2kgLXN0ZCBcCisJLUFlICItQWEgLURfSFBVWF9TT1VSQ0UiICItWGMgLURfX0VYVEVOU0lPTlNfXyIKK2RvCisgIENDPSIkYWNfc2F2ZV9DQyAkYWNfYXJnIgorICBpZiBhY19mbl9jX3RyeV9jb21waWxlICIkTElORU5PIjsgdGhlbiA6CisgIGFjX2N2X3Byb2dfY2NfYzg5PSRhY19hcmcKK2ZpCitybSAtZiBjb3JlIGNvbmZ0ZXN0LmVyciBjb25mdGVzdC4kYWNfb2JqZXh0CisgIHRlc3QgIngkYWNfY3ZfcHJvZ19jY19jODkiICE9ICJ4bm8iICYmIGJyZWFrCitkb25lCitybSAtZiBjb25mdGVzdC4kYWNfZXh0CitDQz0kYWNfc2F2ZV9DQworCitmaQorIyBBQ19DQUNIRV9WQUwKK2Nhc2UgIngkYWNfY3ZfcHJvZ19jY19jODkiIGluCisgIHgpCisgICAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6IG5vbmUgbmVlZGVkIiA+JjUKKyRhc19lY2hvICJub25lIG5lZWRlZCIgPiY2OyB9IDs7CisgIHhubykKKyAgICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogdW5zdXBwb3J0ZWQiID4mNQorJGFzX2VjaG8gInVuc3VwcG9ydGVkIiA+JjY7IH0gOzsKKyAgKikKKyAgICBDQz0iJENDICRhY19jdl9wcm9nX2NjX2M4OSIKKyAgICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogJGFjX2N2X3Byb2dfY2NfYzg5IiA+JjUKKyRhc19lY2hvICIkYWNfY3ZfcHJvZ19jY19jODkiID4mNjsgfSA7OworZXNhYworaWYgdGVzdCAieCRhY19jdl9wcm9nX2NjX2M4OSIgIT0geG5vOyB0aGVuIDoKKworZmkKKworYWNfZXh0PWMKK2FjX2NwcD0nJENQUCAkQ1BQRkxBR1MnCithY19jb21waWxlPSckQ0MgLWMgJENGTEFHUyAkQ1BQRkxBR1MgY29uZnRlc3QuJGFjX2V4dCA+JjUnCithY19saW5rPSckQ0MgLW8gY29uZnRlc3QkYWNfZXhlZXh0ICRDRkxBR1MgJENQUEZMQUdTICRMREZMQUdTIGNvbmZ0ZXN0LiRhY19leHQgJExJQlMgPiY1JworYWNfY29tcGlsZXJfZ251PSRhY19jdl9jX2NvbXBpbGVyX2dudQorCithY19leHQ9Y3BwCithY19jcHA9JyRDWFhDUFAgJENQUEZMQUdTJworYWNfY29tcGlsZT0nJENYWCAtYyAkQ1hYRkxBR1MgJENQUEZMQUdTIGNvbmZ0ZXN0LiRhY19leHQgPiY1JworYWNfbGluaz0nJENYWCAtbyBjb25mdGVzdCRhY19leGVleHQgJENYWEZMQUdTICRDUFBGTEFHUyAkTERGTEFHUyBjb25mdGVzdC4kYWNfZXh0ICRMSUJTID4mNScKK2FjX2NvbXBpbGVyX2dudT0kYWNfY3ZfY3h4X2NvbXBpbGVyX2dudQoraWYgdGVzdCAteiAiJENYWCI7IHRoZW4KKyAgaWYgdGVzdCAtbiAiJENDQyI7IHRoZW4KKyAgICBDWFg9JENDQworICBlbHNlCisgICAgaWYgdGVzdCAtbiAiJGFjX3Rvb2xfcHJlZml4IjsgdGhlbgorICBmb3IgYWNfcHJvZyBpbiBnKysgYysrIGdwcCBhQ0MgQ0MgY3h4IGNjKysgY2wuZXhlIEZDQyBLQ0MgUkNDIHhsQ19yIHhsQworICBkbworICAgICMgRXh0cmFjdCB0aGUgZmlyc3Qgd29yZCBvZiAiJGFjX3Rvb2xfcHJlZml4JGFjX3Byb2ciLCBzbyBpdCBjYW4gYmUgYSBwcm9ncmFtIG5hbWUgd2l0aCBhcmdzLgorc2V0IGR1bW15ICRhY190b29sX3ByZWZpeCRhY19wcm9nOyBhY193b3JkPSQyCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIGZvciAkYWNfd29yZCIgPiY1CiskYXNfZWNob19uICJjaGVja2luZyBmb3IgJGFjX3dvcmQuLi4gIiA+JjY7IH0KK2lmICR7YWNfY3ZfcHJvZ19DWFgrOn0gZmFsc2U7IHRoZW4gOgorICAkYXNfZWNob19uICIoY2FjaGVkKSAiID4mNgorZWxzZQorICBpZiB0ZXN0IC1uICIkQ1hYIjsgdGhlbgorICBhY19jdl9wcm9nX0NYWD0iJENYWCIgIyBMZXQgdGhlIHVzZXIgb3ZlcnJpZGUgdGhlIHRlc3QuCitlbHNlCithc19zYXZlX0lGUz0kSUZTOyBJRlM9JFBBVEhfU0VQQVJBVE9SCitmb3IgYXNfZGlyIGluICRQQVRICitkbworICBJRlM9JGFzX3NhdmVfSUZTCisgIHRlc3QgLXogIiRhc19kaXIiICYmIGFzX2Rpcj0uCisgICAgZm9yIGFjX2V4ZWNfZXh0IGluICcnICRhY19leGVjdXRhYmxlX2V4dGVuc2lvbnM7IGRvCisgIGlmIHsgdGVzdCAtZiAiJGFzX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCIgJiYgJGFzX3Rlc3RfeCAiJGFzX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCI7IH07IHRoZW4KKyAgICBhY19jdl9wcm9nX0NYWD0iJGFjX3Rvb2xfcHJlZml4JGFjX3Byb2ciCisgICAgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogZm91bmQgJGFzX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCIgPiY1CisgICAgYnJlYWsgMgorICBmaQorZG9uZQorICBkb25lCitJRlM9JGFzX3NhdmVfSUZTCisKK2ZpCitmaQorQ1hYPSRhY19jdl9wcm9nX0NYWAoraWYgdGVzdCAtbiAiJENYWCI7IHRoZW4KKyAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6ICRDWFgiID4mNQorJGFzX2VjaG8gIiRDWFgiID4mNjsgfQorZWxzZQorICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogbm8iID4mNQorJGFzX2VjaG8gIm5vIiA+JjY7IH0KK2ZpCisKKworICAgIHRlc3QgLW4gIiRDWFgiICYmIGJyZWFrCisgIGRvbmUKK2ZpCitpZiB0ZXN0IC16ICIkQ1hYIjsgdGhlbgorICBhY19jdF9DWFg9JENYWAorICBmb3IgYWNfcHJvZyBpbiBnKysgYysrIGdwcCBhQ0MgQ0MgY3h4IGNjKysgY2wuZXhlIEZDQyBLQ0MgUkNDIHhsQ19yIHhsQworZG8KKyAgIyBFeHRyYWN0IHRoZSBmaXJzdCB3b3JkIG9mICIkYWNfcHJvZyIsIHNvIGl0IGNhbiBiZSBhIHByb2dyYW0gbmFtZSB3aXRoIGFyZ3MuCitzZXQgZHVtbXkgJGFjX3Byb2c7IGFjX3dvcmQ9JDIKK3sgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgZm9yICRhY193b3JkIiA+JjUKKyRhc19lY2hvX24gImNoZWNraW5nIGZvciAkYWNfd29yZC4uLiAiID4mNjsgfQoraWYgJHthY19jdl9wcm9nX2FjX2N0X0NYWCs6fSBmYWxzZTsgdGhlbiA6CisgICRhc19lY2hvX24gIihjYWNoZWQpICIgPiY2CitlbHNlCisgIGlmIHRlc3QgLW4gIiRhY19jdF9DWFgiOyB0aGVuCisgIGFjX2N2X3Byb2dfYWNfY3RfQ1hYPSIkYWNfY3RfQ1hYIiAjIExldCB0aGUgdXNlciBvdmVycmlkZSB0aGUgdGVzdC4KK2Vsc2UKK2FzX3NhdmVfSUZTPSRJRlM7IElGUz0kUEFUSF9TRVBBUkFUT1IKK2ZvciBhc19kaXIgaW4gJFBBVEgKK2RvCisgIElGUz0kYXNfc2F2ZV9JRlMKKyAgdGVzdCAteiAiJGFzX2RpciIgJiYgYXNfZGlyPS4KKyAgICBmb3IgYWNfZXhlY19leHQgaW4gJycgJGFjX2V4ZWN1dGFibGVfZXh0ZW5zaW9uczsgZG8KKyAgaWYgeyB0ZXN0IC1mICIkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IiAmJiAkYXNfdGVzdF94ICIkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IjsgfTsgdGhlbgorICAgIGFjX2N2X3Byb2dfYWNfY3RfQ1hYPSIkYWNfcHJvZyIKKyAgICAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBmb3VuZCAkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IiA+JjUKKyAgICBicmVhayAyCisgIGZpCitkb25lCisgIGRvbmUKK0lGUz0kYXNfc2F2ZV9JRlMKKworZmkKK2ZpCithY19jdF9DWFg9JGFjX2N2X3Byb2dfYWNfY3RfQ1hYCitpZiB0ZXN0IC1uICIkYWNfY3RfQ1hYIjsgdGhlbgorICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogJGFjX2N0X0NYWCIgPiY1CiskYXNfZWNobyAiJGFjX2N0X0NYWCIgPiY2OyB9CitlbHNlCisgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiBubyIgPiY1CiskYXNfZWNobyAibm8iID4mNjsgfQorZmkKKworCisgIHRlc3QgLW4gIiRhY19jdF9DWFgiICYmIGJyZWFrCitkb25lCisKKyAgaWYgdGVzdCAieCRhY19jdF9DWFgiID0geDsgdGhlbgorICAgIENYWD0iZysrIgorICBlbHNlCisgICAgY2FzZSAkY3Jvc3NfY29tcGlsaW5nOiRhY190b29sX3dhcm5lZCBpbgoreWVzOikKK3sgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogV0FSTklORzogdXNpbmcgY3Jvc3MgdG9vbHMgbm90IHByZWZpeGVkIHdpdGggaG9zdCB0cmlwbGV0IiA+JjUKKyRhc19lY2hvICIkYXNfbWU6IFdBUk5JTkc6IHVzaW5nIGNyb3NzIHRvb2xzIG5vdCBwcmVmaXhlZCB3aXRoIGhvc3QgdHJpcGxldCIgPiYyO30KK2FjX3Rvb2xfd2FybmVkPXllcyA7OworZXNhYworICAgIENYWD0kYWNfY3RfQ1hYCisgIGZpCitmaQorCisgIGZpCitmaQorIyBQcm92aWRlIHNvbWUgaW5mb3JtYXRpb24gYWJvdXQgdGhlIGNvbXBpbGVyLgorJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgZm9yIEMrKyBjb21waWxlciB2ZXJzaW9uIiA+JjUKK3NldCBYICRhY19jb21waWxlCithY19jb21waWxlcj0kMgorZm9yIGFjX29wdGlvbiBpbiAtLXZlcnNpb24gLXYgLVYgLXF2ZXJzaW9uOyBkbworICB7IHsgYWNfdHJ5PSIkYWNfY29tcGlsZXIgJGFjX29wdGlvbiA+JjUiCitjYXNlICIoKCRhY190cnkiIGluCisgICpcIiogfCAqXGAqIHwgKlxcKikgYWNfdHJ5X2VjaG89XCRhY190cnk7OworICAqKSBhY190cnlfZWNobz0kYWNfdHJ5OzsKK2VzYWMKK2V2YWwgYWNfdHJ5X2VjaG89IlwiXCRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogJGFjX3RyeV9lY2hvXCIiCiskYXNfZWNobyAiJGFjX3RyeV9lY2hvIjsgfSA+JjUKKyAgKGV2YWwgIiRhY19jb21waWxlciAkYWNfb3B0aW9uID4mNSIpIDI+Y29uZnRlc3QuZXJyCisgIGFjX3N0YXR1cz0kPworICBpZiB0ZXN0IC1zIGNvbmZ0ZXN0LmVycjsgdGhlbgorICAgIHNlZCAnMTBhXAorLi4uIHJlc3Qgb2Ygc3RkZXJyIG91dHB1dCBkZWxldGVkIC4uLgorICAgICAgICAgMTBxJyBjb25mdGVzdC5lcnIgPmNvbmZ0ZXN0LmVyMQorICAgIGNhdCBjb25mdGVzdC5lcjEgPiY1CisgIGZpCisgIHJtIC1mIGNvbmZ0ZXN0LmVyMSBjb25mdGVzdC5lcnIKKyAgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CisgIHRlc3QgJGFjX3N0YXR1cyA9IDA7IH0KK2RvbmUKKworeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBjaGVja2luZyB3aGV0aGVyIHdlIGFyZSB1c2luZyB0aGUgR05VIEMrKyBjb21waWxlciIgPiY1CiskYXNfZWNob19uICJjaGVja2luZyB3aGV0aGVyIHdlIGFyZSB1c2luZyB0aGUgR05VIEMrKyBjb21waWxlci4uLiAiID4mNjsgfQoraWYgJHthY19jdl9jeHhfY29tcGlsZXJfZ251Kzp9IGZhbHNlOyB0aGVuIDoKKyAgJGFzX2VjaG9fbiAiKGNhY2hlZCkgIiA+JjYKK2Vsc2UKKyAgY2F0IGNvbmZkZWZzLmggLSA8PF9BQ0VPRiA+Y29uZnRlc3QuJGFjX2V4dAorLyogZW5kIGNvbmZkZWZzLmguICAqLworCitpbnQKK21haW4gKCkKK3sKKyNpZm5kZWYgX19HTlVDX18KKyAgICAgICBjaG9rZSBtZQorI2VuZGlmCisKKyAgOworICByZXR1cm4gMDsKK30KK19BQ0VPRgoraWYgYWNfZm5fY3h4X3RyeV9jb21waWxlICIkTElORU5PIjsgdGhlbiA6CisgIGFjX2NvbXBpbGVyX2dudT15ZXMKK2Vsc2UKKyAgYWNfY29tcGlsZXJfZ251PW5vCitmaQorcm0gLWYgY29yZSBjb25mdGVzdC5lcnIgY29uZnRlc3QuJGFjX29iamV4dCBjb25mdGVzdC4kYWNfZXh0CithY19jdl9jeHhfY29tcGlsZXJfZ251PSRhY19jb21waWxlcl9nbnUKKworZmkKK3sgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiAkYWNfY3ZfY3h4X2NvbXBpbGVyX2dudSIgPiY1CiskYXNfZWNobyAiJGFjX2N2X2N4eF9jb21waWxlcl9nbnUiID4mNjsgfQoraWYgdGVzdCAkYWNfY29tcGlsZXJfZ251ID0geWVzOyB0aGVuCisgIEdYWD15ZXMKK2Vsc2UKKyAgR1hYPQorZmkKK2FjX3Rlc3RfQ1hYRkxBR1M9JHtDWFhGTEFHUytzZXR9CithY19zYXZlX0NYWEZMQUdTPSRDWFhGTEFHUworeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBjaGVja2luZyB3aGV0aGVyICRDWFggYWNjZXB0cyAtZyIgPiY1CiskYXNfZWNob19uICJjaGVja2luZyB3aGV0aGVyICRDWFggYWNjZXB0cyAtZy4uLiAiID4mNjsgfQoraWYgJHthY19jdl9wcm9nX2N4eF9nKzp9IGZhbHNlOyB0aGVuIDoKKyAgJGFzX2VjaG9fbiAiKGNhY2hlZCkgIiA+JjYKK2Vsc2UKKyAgYWNfc2F2ZV9jeHhfd2Vycm9yX2ZsYWc9JGFjX2N4eF93ZXJyb3JfZmxhZworICAgYWNfY3h4X3dlcnJvcl9mbGFnPXllcworICAgYWNfY3ZfcHJvZ19jeHhfZz1ubworICAgQ1hYRkxBR1M9Ii1nIgorICAgY2F0IGNvbmZkZWZzLmggLSA8PF9BQ0VPRiA+Y29uZnRlc3QuJGFjX2V4dAorLyogZW5kIGNvbmZkZWZzLmguICAqLworCitpbnQKK21haW4gKCkKK3sKKworICA7CisgIHJldHVybiAwOworfQorX0FDRU9GCitpZiBhY19mbl9jeHhfdHJ5X2NvbXBpbGUgIiRMSU5FTk8iOyB0aGVuIDoKKyAgYWNfY3ZfcHJvZ19jeHhfZz15ZXMKK2Vsc2UKKyAgQ1hYRkxBR1M9IiIKKyAgICAgIGNhdCBjb25mZGVmcy5oIC0gPDxfQUNFT0YgPmNvbmZ0ZXN0LiRhY19leHQKKy8qIGVuZCBjb25mZGVmcy5oLiAgKi8KKworaW50CittYWluICgpCit7CisKKyAgOworICByZXR1cm4gMDsKK30KK19BQ0VPRgoraWYgYWNfZm5fY3h4X3RyeV9jb21waWxlICIkTElORU5PIjsgdGhlbiA6CisKK2Vsc2UKKyAgYWNfY3h4X3dlcnJvcl9mbGFnPSRhY19zYXZlX2N4eF93ZXJyb3JfZmxhZworCSBDWFhGTEFHUz0iLWciCisJIGNhdCBjb25mZGVmcy5oIC0gPDxfQUNFT0YgPmNvbmZ0ZXN0LiRhY19leHQKKy8qIGVuZCBjb25mZGVmcy5oLiAgKi8KKworaW50CittYWluICgpCit7CisKKyAgOworICByZXR1cm4gMDsKK30KK19BQ0VPRgoraWYgYWNfZm5fY3h4X3RyeV9jb21waWxlICIkTElORU5PIjsgdGhlbiA6CisgIGFjX2N2X3Byb2dfY3h4X2c9eWVzCitmaQorcm0gLWYgY29yZSBjb25mdGVzdC5lcnIgY29uZnRlc3QuJGFjX29iamV4dCBjb25mdGVzdC4kYWNfZXh0CitmaQorcm0gLWYgY29yZSBjb25mdGVzdC5lcnIgY29uZnRlc3QuJGFjX29iamV4dCBjb25mdGVzdC4kYWNfZXh0CitmaQorcm0gLWYgY29yZSBjb25mdGVzdC5lcnIgY29uZnRlc3QuJGFjX29iamV4dCBjb25mdGVzdC4kYWNfZXh0CisgICBhY19jeHhfd2Vycm9yX2ZsYWc9JGFjX3NhdmVfY3h4X3dlcnJvcl9mbGFnCitmaQoreyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6ICRhY19jdl9wcm9nX2N4eF9nIiA+JjUKKyRhc19lY2hvICIkYWNfY3ZfcHJvZ19jeHhfZyIgPiY2OyB9CitpZiB0ZXN0ICIkYWNfdGVzdF9DWFhGTEFHUyIgPSBzZXQ7IHRoZW4KKyAgQ1hYRkxBR1M9JGFjX3NhdmVfQ1hYRkxBR1MKK2VsaWYgdGVzdCAkYWNfY3ZfcHJvZ19jeHhfZyA9IHllczsgdGhlbgorICBpZiB0ZXN0ICIkR1hYIiA9IHllczsgdGhlbgorICAgIENYWEZMQUdTPSItZyAtTzIiCisgIGVsc2UKKyAgICBDWFhGTEFHUz0iLWciCisgIGZpCitlbHNlCisgIGlmIHRlc3QgIiRHWFgiID0geWVzOyB0aGVuCisgICAgQ1hYRkxBR1M9Ii1PMiIKKyAgZWxzZQorICAgIENYWEZMQUdTPQorICBmaQorZmkKK2FjX2V4dD1jCithY19jcHA9JyRDUFAgJENQUEZMQUdTJworYWNfY29tcGlsZT0nJENDIC1jICRDRkxBR1MgJENQUEZMQUdTIGNvbmZ0ZXN0LiRhY19leHQgPiY1JworYWNfbGluaz0nJENDIC1vIGNvbmZ0ZXN0JGFjX2V4ZWV4dCAkQ0ZMQUdTICRDUFBGTEFHUyAkTERGTEFHUyBjb25mdGVzdC4kYWNfZXh0ICRMSUJTID4mNScKK2FjX2NvbXBpbGVyX2dudT0kYWNfY3ZfY19jb21waWxlcl9nbnUKKworZGVwY2M9IiRDWFgiICBhbV9jb21waWxlcl9saXN0PQorCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIGRlcGVuZGVuY3kgc3R5bGUgb2YgJGRlcGNjIiA+JjUKKyRhc19lY2hvX24gImNoZWNraW5nIGRlcGVuZGVuY3kgc3R5bGUgb2YgJGRlcGNjLi4uICIgPiY2OyB9CitpZiAke2FtX2N2X0NYWF9kZXBlbmRlbmNpZXNfY29tcGlsZXJfdHlwZSs6fSBmYWxzZTsgdGhlbiA6CisgICRhc19lY2hvX24gIihjYWNoZWQpICIgPiY2CitlbHNlCisgIGlmIHRlc3QgLXogIiRBTURFUF9UUlVFIiAmJiB0ZXN0IC1mICIkYW1fZGVwY29tcCI7IHRoZW4KKyAgIyBXZSBtYWtlIGEgc3ViZGlyIGFuZCBkbyB0aGUgdGVzdHMgdGhlcmUuICBPdGhlcndpc2Ugd2UgY2FuIGVuZCB1cAorICAjIG1ha2luZyBib2d1cyBmaWxlcyB0aGF0IHdlIGRvbid0IGtub3cgYWJvdXQgYW5kIG5ldmVyIHJlbW92ZS4gIEZvcgorICAjIGluc3RhbmNlIGl0IHdhcyByZXBvcnRlZCB0aGF0IG9uIEhQLVVYIHRoZSBnY2MgdGVzdCB3aWxsIGVuZCB1cAorICAjIG1ha2luZyBhIGR1bW15IGZpbGUgbmFtZWQgYEQnIC0tIGJlY2F1c2UgYC1NRCcgbWVhbnMgYHB1dCB0aGUgb3V0cHV0CisgICMgaW4gRCcuCisgIG1rZGlyIGNvbmZ0ZXN0LmRpcgorICAjIENvcHkgZGVwY29tcCB0byBzdWJkaXIgYmVjYXVzZSBvdGhlcndpc2Ugd2Ugd29uJ3QgZmluZCBpdCBpZiB3ZSdyZQorICAjIHVzaW5nIGEgcmVsYXRpdmUgZGlyZWN0b3J5LgorICBjcCAiJGFtX2RlcGNvbXAiIGNvbmZ0ZXN0LmRpcgorICBjZCBjb25mdGVzdC5kaXIKKyAgIyBXZSB3aWxsIGJ1aWxkIG9iamVjdHMgYW5kIGRlcGVuZGVuY2llcyBpbiBhIHN1YmRpcmVjdG9yeSBiZWNhdXNlCisgICMgaXQgaGVscHMgdG8gZGV0ZWN0IGluYXBwbGljYWJsZSBkZXBlbmRlbmN5IG1vZGVzLiAgRm9yIGluc3RhbmNlCisgICMgYm90aCBUcnU2NCdzIGNjIGFuZCBJQ0Mgc3VwcG9ydCAtTUQgdG8gb3V0cHV0IGRlcGVuZGVuY2llcyBhcyBhCisgICMgc2lkZSBlZmZlY3Qgb2YgY29tcGlsYXRpb24sIGJ1dCBJQ0Mgd2lsbCBwdXQgdGhlIGRlcGVuZGVuY2llcyBpbgorICAjIHRoZSBjdXJyZW50IGRpcmVjdG9yeSB3aGlsZSBUcnU2NCB3aWxsIHB1dCB0aGVtIGluIHRoZSBvYmplY3QKKyAgIyBkaXJlY3RvcnkuCisgIG1rZGlyIHN1YgorCisgIGFtX2N2X0NYWF9kZXBlbmRlbmNpZXNfY29tcGlsZXJfdHlwZT1ub25lCisgIGlmIHRlc3QgIiRhbV9jb21waWxlcl9saXN0IiA9ICIiOyB0aGVuCisgICAgIGFtX2NvbXBpbGVyX2xpc3Q9YHNlZCAtbiAncy9eIypcKFthLXpBLVowLTldKlwpKSQvXDEvcCcgPCAuL2RlcGNvbXBgCisgIGZpCisgIGFtX191bml2ZXJzYWw9ZmFsc2UKKyAgY2FzZSAiICRkZXBjYyAiIGluICMoCisgICAgICpcIC1hcmNoXCAqXCAtYXJjaFwgKikgYW1fX3VuaXZlcnNhbD10cnVlIDs7CisgICAgIGVzYWMKKworICBmb3IgZGVwbW9kZSBpbiAkYW1fY29tcGlsZXJfbGlzdDsgZG8KKyAgICAjIFNldHVwIGEgc291cmNlIHdpdGggbWFueSBkZXBlbmRlbmNpZXMsIGJlY2F1c2Ugc29tZSBjb21waWxlcnMKKyAgICAjIGxpa2UgdG8gd3JhcCBsYXJnZSBkZXBlbmRlbmN5IGxpc3RzIG9uIGNvbHVtbiA4MCAod2l0aCBcKSwgYW5kCisgICAgIyB3ZSBzaG91bGQgbm90IGNob29zZSBhIGRlcGNvbXAgbW9kZSB3aGljaCBpcyBjb25mdXNlZCBieSB0aGlzLgorICAgICMKKyAgICAjIFdlIG5lZWQgdG8gcmVjcmVhdGUgdGhlc2UgZmlsZXMgZm9yIGVhY2ggdGVzdCwgYXMgdGhlIGNvbXBpbGVyIG1heQorICAgICMgb3ZlcndyaXRlIHNvbWUgb2YgdGhlbSB3aGVuIHRlc3Rpbmcgd2l0aCBvYnNjdXJlIGNvbW1hbmQgbGluZXMuCisgICAgIyBUaGlzIGhhcHBlbnMgYXQgbGVhc3Qgd2l0aCB0aGUgQUlYIEMgY29tcGlsZXIuCisgICAgOiA+IHN1Yi9jb25mdGVzdC5jCisgICAgZm9yIGkgaW4gMSAyIDMgNCA1IDY7IGRvCisgICAgICBlY2hvICcjaW5jbHVkZSAiY29uZnRzdCckaScuaCInID4+IHN1Yi9jb25mdGVzdC5jCisgICAgICAjIFVzaW5nIGA6ID4gc3ViL2NvbmZ0c3QkaS5oJyBjcmVhdGVzIG9ubHkgc3ViL2NvbmZ0c3QxLmggd2l0aAorICAgICAgIyBTb2xhcmlzIDgncyB7L3Vzcix9L2Jpbi9zaC4KKyAgICAgIHRvdWNoIHN1Yi9jb25mdHN0JGkuaAorICAgIGRvbmUKKyAgICBlY2hvICIke2FtX19pbmNsdWRlfSAke2FtX19xdW90ZX1zdWIvY29uZnRlc3QuUG8ke2FtX19xdW90ZX0iID4gY29uZm1mCisKKyAgICAjIFdlIGNoZWNrIHdpdGggYC1jJyBhbmQgYC1vJyBmb3IgdGhlIHNha2Ugb2YgdGhlICJkYXNobXN0ZG91dCIKKyAgICAjIG1vZGUuICBJdCB0dXJucyBvdXQgdGhhdCB0aGUgU3VuUHJvIEMrKyBjb21waWxlciBkb2VzIG5vdCBwcm9wZXJseQorICAgICMgaGFuZGxlIGAtTSAtbycsIGFuZCB3ZSBuZWVkIHRvIGRldGVjdCB0aGlzLiAgQWxzbywgc29tZSBJbnRlbAorICAgICMgdmVyc2lvbnMgaGFkIHRyb3VibGUgd2l0aCBvdXRwdXQgaW4gc3ViZGlycworICAgIGFtX19vYmo9c3ViL2NvbmZ0ZXN0LiR7T0JKRVhULW99CisgICAgYW1fX21pbnVzX29iaj0iLW8gJGFtX19vYmoiCisgICAgY2FzZSAkZGVwbW9kZSBpbgorICAgIGdjYykKKyAgICAgICMgVGhpcyBkZXBtb2RlIGNhdXNlcyBhIGNvbXBpbGVyIHJhY2UgaW4gdW5pdmVyc2FsIG1vZGUuCisgICAgICB0ZXN0ICIkYW1fX3VuaXZlcnNhbCIgPSBmYWxzZSB8fCBjb250aW51ZQorICAgICAgOzsKKyAgICBub3NpZGVlZmZlY3QpCisgICAgICAjIGFmdGVyIHRoaXMgdGFnLCBtZWNoYW5pc21zIGFyZSBub3QgYnkgc2lkZS1lZmZlY3QsIHNvIHRoZXknbGwKKyAgICAgICMgb25seSBiZSB1c2VkIHdoZW4gZXhwbGljaXRseSByZXF1ZXN0ZWQKKyAgICAgIGlmIHRlc3QgIngkZW5hYmxlX2RlcGVuZGVuY3lfdHJhY2tpbmciID0geHllczsgdGhlbgorCWNvbnRpbnVlCisgICAgICBlbHNlCisJYnJlYWsKKyAgICAgIGZpCisgICAgICA7OworICAgIG1zdmlzdWFsY3BwIHwgbXN2Y21zeXMpCisgICAgICAjIFRoaXMgY29tcGlsZXIgd29uJ3QgZ3JvayBgLWMgLW8nLCBidXQgYWxzbywgdGhlIG1pbnVzbyB0ZXN0IGhhcworICAgICAgIyBub3QgcnVuIHlldC4gIFRoZXNlIGRlcG1vZGVzIGFyZSBsYXRlIGVub3VnaCBpbiB0aGUgZ2FtZSwgYW5kCisgICAgICAjIHNvIHdlYWsgdGhhdCB0aGVpciBmdW5jdGlvbmluZyBzaG91bGQgbm90IGJlIGltcGFjdGVkLgorICAgICAgYW1fX29iaj1jb25mdGVzdC4ke09CSkVYVC1vfQorICAgICAgYW1fX21pbnVzX29iaj0KKyAgICAgIDs7CisgICAgbm9uZSkgYnJlYWsgOzsKKyAgICBlc2FjCisgICAgaWYgZGVwbW9kZT0kZGVwbW9kZSBcCisgICAgICAgc291cmNlPXN1Yi9jb25mdGVzdC5jIG9iamVjdD0kYW1fX29iaiBcCisgICAgICAgZGVwZmlsZT1zdWIvY29uZnRlc3QuUG8gdG1wZGVwZmlsZT1zdWIvY29uZnRlc3QuVFBvIFwKKyAgICAgICAkU0hFTEwgLi9kZXBjb21wICRkZXBjYyAtYyAkYW1fX21pbnVzX29iaiBzdWIvY29uZnRlc3QuYyBcCisgICAgICAgICA+L2Rldi9udWxsIDI+Y29uZnRlc3QuZXJyICYmCisgICAgICAgZ3JlcCBzdWIvY29uZnRzdDEuaCBzdWIvY29uZnRlc3QuUG8gPiAvZGV2L251bGwgMj4mMSAmJgorICAgICAgIGdyZXAgc3ViL2NvbmZ0c3Q2Lmggc3ViL2NvbmZ0ZXN0LlBvID4gL2Rldi9udWxsIDI+JjEgJiYKKyAgICAgICBncmVwICRhbV9fb2JqIHN1Yi9jb25mdGVzdC5QbyA+IC9kZXYvbnVsbCAyPiYxICYmCisgICAgICAgJHtNQUtFLW1ha2V9IC1zIC1mIGNvbmZtZiA+IC9kZXYvbnVsbCAyPiYxOyB0aGVuCisgICAgICAjIGljYyBkb2Vzbid0IGNob2tlIG9uIHVua25vd24gb3B0aW9ucywgaXQgd2lsbCBqdXN0IGlzc3VlIHdhcm5pbmdzCisgICAgICAjIG9yIHJlbWFya3MgKGV2ZW4gd2l0aCAtV2Vycm9yKS4gIFNvIHdlIGdyZXAgc3RkZXJyIGZvciBhbnkgbWVzc2FnZQorICAgICAgIyB0aGF0IHNheXMgYW4gb3B0aW9uIHdhcyBpZ25vcmVkIG9yIG5vdCBzdXBwb3J0ZWQuCisgICAgICAjIFdoZW4gZ2l2ZW4gLU1QLCBpY2MgNy4wIGFuZCA3LjEgY29tcGxhaW4gdGh1c2x5OgorICAgICAgIyAgIGljYzogQ29tbWFuZCBsaW5lIHdhcm5pbmc6IGlnbm9yaW5nIG9wdGlvbiAnLU0nOyBubyBhcmd1bWVudCByZXF1aXJlZAorICAgICAgIyBUaGUgZGlhZ25vc2lzIGNoYW5nZWQgaW4gaWNjIDguMDoKKyAgICAgICMgICBpY2M6IENvbW1hbmQgbGluZSByZW1hcms6IG9wdGlvbiAnLU1QJyBub3Qgc3VwcG9ydGVkCisgICAgICBpZiAoZ3JlcCAnaWdub3Jpbmcgb3B0aW9uJyBjb25mdGVzdC5lcnIgfHwKKyAgICAgICAgICBncmVwICdub3Qgc3VwcG9ydGVkJyBjb25mdGVzdC5lcnIpID4vZGV2L251bGwgMj4mMTsgdGhlbiA6OyBlbHNlCisgICAgICAgIGFtX2N2X0NYWF9kZXBlbmRlbmNpZXNfY29tcGlsZXJfdHlwZT0kZGVwbW9kZQorICAgICAgICBicmVhaworICAgICAgZmkKKyAgICBmaQorICBkb25lCisKKyAgY2QgLi4KKyAgcm0gLXJmIGNvbmZ0ZXN0LmRpcgorZWxzZQorICBhbV9jdl9DWFhfZGVwZW5kZW5jaWVzX2NvbXBpbGVyX3R5cGU9bm9uZQorZmkKKworZmkKK3sgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiAkYW1fY3ZfQ1hYX2RlcGVuZGVuY2llc19jb21waWxlcl90eXBlIiA+JjUKKyRhc19lY2hvICIkYW1fY3ZfQ1hYX2RlcGVuZGVuY2llc19jb21waWxlcl90eXBlIiA+JjY7IH0KK0NYWERFUE1PREU9ZGVwbW9kZT0kYW1fY3ZfQ1hYX2RlcGVuZGVuY2llc19jb21waWxlcl90eXBlCisKKyBpZgorICB0ZXN0ICJ4JGVuYWJsZV9kZXBlbmRlbmN5X3RyYWNraW5nIiAhPSB4bm8gXAorICAmJiB0ZXN0ICIkYW1fY3ZfQ1hYX2RlcGVuZGVuY2llc19jb21waWxlcl90eXBlIiA9IGdjYzM7IHRoZW4KKyAgYW1fX2Zhc3RkZXBDWFhfVFJVRT0KKyAgYW1fX2Zhc3RkZXBDWFhfRkFMU0U9JyMnCitlbHNlCisgIGFtX19mYXN0ZGVwQ1hYX1RSVUU9JyMnCisgIGFtX19mYXN0ZGVwQ1hYX0ZBTFNFPQorZmkKKworCitmb3IgYWNfcHJvZyBpbiBmbGV4IGxleAorZG8KKyAgIyBFeHRyYWN0IHRoZSBmaXJzdCB3b3JkIG9mICIkYWNfcHJvZyIsIHNvIGl0IGNhbiBiZSBhIHByb2dyYW0gbmFtZSB3aXRoIGFyZ3MuCitzZXQgZHVtbXkgJGFjX3Byb2c7IGFjX3dvcmQ9JDIKK3sgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgZm9yICRhY193b3JkIiA+JjUKKyRhc19lY2hvX24gImNoZWNraW5nIGZvciAkYWNfd29yZC4uLiAiID4mNjsgfQoraWYgJHthY19jdl9wcm9nX0xFWCs6fSBmYWxzZTsgdGhlbiA6CisgICRhc19lY2hvX24gIihjYWNoZWQpICIgPiY2CitlbHNlCisgIGlmIHRlc3QgLW4gIiRMRVgiOyB0aGVuCisgIGFjX2N2X3Byb2dfTEVYPSIkTEVYIiAjIExldCB0aGUgdXNlciBvdmVycmlkZSB0aGUgdGVzdC4KK2Vsc2UKK2FzX3NhdmVfSUZTPSRJRlM7IElGUz0kUEFUSF9TRVBBUkFUT1IKK2ZvciBhc19kaXIgaW4gJFBBVEgKK2RvCisgIElGUz0kYXNfc2F2ZV9JRlMKKyAgdGVzdCAteiAiJGFzX2RpciIgJiYgYXNfZGlyPS4KKyAgICBmb3IgYWNfZXhlY19leHQgaW4gJycgJGFjX2V4ZWN1dGFibGVfZXh0ZW5zaW9uczsgZG8KKyAgaWYgeyB0ZXN0IC1mICIkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IiAmJiAkYXNfdGVzdF94ICIkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IjsgfTsgdGhlbgorICAgIGFjX2N2X3Byb2dfTEVYPSIkYWNfcHJvZyIKKyAgICAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBmb3VuZCAkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IiA+JjUKKyAgICBicmVhayAyCisgIGZpCitkb25lCisgIGRvbmUKK0lGUz0kYXNfc2F2ZV9JRlMKKworZmkKK2ZpCitMRVg9JGFjX2N2X3Byb2dfTEVYCitpZiB0ZXN0IC1uICIkTEVYIjsgdGhlbgorICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogJExFWCIgPiY1CiskYXNfZWNobyAiJExFWCIgPiY2OyB9CitlbHNlCisgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiBubyIgPiY1CiskYXNfZWNobyAibm8iID4mNjsgfQorZmkKKworCisgIHRlc3QgLW4gIiRMRVgiICYmIGJyZWFrCitkb25lCit0ZXN0IC1uICIkTEVYIiB8fCBMRVg9IjoiCisKK2lmIHRlc3QgIngkTEVYIiAhPSAieDoiOyB0aGVuCisgIGNhdCA+Y29uZnRlc3QubCA8PF9BQ0VPRgorJSUKK2EgeyBFQ0hPOyB9CitiIHsgUkVKRUNUOyB9CitjIHsgeXltb3JlICgpOyB9CitkIHsgeXlsZXNzICgxKTsgfQorZSB7IHl5bGVzcyAoaW5wdXQgKCkgIT0gMCk7IH0KK2YgeyB1bnB1dCAoeXl0ZXh0WzBdKTsgfQorLiB7IEJFR0lOIElOSVRJQUw7IH0KKyUlCisjaWZkZWYgWVlURVhUX1BPSU5URVIKK2V4dGVybiBjaGFyICp5eXRleHQ7CisjZW5kaWYKK2ludAorbWFpbiAodm9pZCkKK3sKKyAgcmV0dXJuICEgeXlsZXggKCkgKyAhIHl5d3JhcCAoKTsKK30KK19BQ0VPRgoreyB7IGFjX3RyeT0iJExFWCBjb25mdGVzdC5sIgorY2FzZSAiKCgkYWNfdHJ5IiBpbgorICAqXCIqIHwgKlxgKiB8ICpcXCopIGFjX3RyeV9lY2hvPVwkYWNfdHJ5OzsKKyAgKikgYWNfdHJ5X2VjaG89JGFjX3RyeTs7Citlc2FjCitldmFsIGFjX3RyeV9lY2hvPSJcIlwkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306ICRhY190cnlfZWNob1wiIgorJGFzX2VjaG8gIiRhY190cnlfZWNobyI7IH0gPiY1CisgIChldmFsICIkTEVYIGNvbmZ0ZXN0LmwiKSAyPiY1CisgIGFjX3N0YXR1cz0kPworICAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgdGVzdCAkYWNfc3RhdHVzID0gMDsgfQoreyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBjaGVja2luZyBsZXggb3V0cHV0IGZpbGUgcm9vdCIgPiY1CiskYXNfZWNob19uICJjaGVja2luZyBsZXggb3V0cHV0IGZpbGUgcm9vdC4uLiAiID4mNjsgfQoraWYgJHthY19jdl9wcm9nX2xleF9yb290Kzp9IGZhbHNlOyB0aGVuIDoKKyAgJGFzX2VjaG9fbiAiKGNhY2hlZCkgIiA+JjYKK2Vsc2UKKworaWYgdGVzdCAtZiBsZXgueXkuYzsgdGhlbgorICBhY19jdl9wcm9nX2xleF9yb290PWxleC55eQorZWxpZiB0ZXN0IC1mIGxleHl5LmM7IHRoZW4KKyAgYWNfY3ZfcHJvZ19sZXhfcm9vdD1sZXh5eQorZWxzZQorICBhc19mbl9lcnJvciAkPyAiY2Fubm90IGZpbmQgb3V0cHV0IGZyb20gJExFWDsgZ2l2aW5nIHVwIiAiJExJTkVOTyIgNQorZmkKK2ZpCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogJGFjX2N2X3Byb2dfbGV4X3Jvb3QiID4mNQorJGFzX2VjaG8gIiRhY19jdl9wcm9nX2xleF9yb290IiA+JjY7IH0KK0xFWF9PVVRQVVRfUk9PVD0kYWNfY3ZfcHJvZ19sZXhfcm9vdAorCitpZiB0ZXN0IC16ICIke0xFWExJQitzZXR9IjsgdGhlbgorICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIGxleCBsaWJyYXJ5IiA+JjUKKyRhc19lY2hvX24gImNoZWNraW5nIGxleCBsaWJyYXJ5Li4uICIgPiY2OyB9CitpZiAke2FjX2N2X2xpYl9sZXgrOn0gZmFsc2U7IHRoZW4gOgorICAkYXNfZWNob19uICIoY2FjaGVkKSAiID4mNgorZWxzZQorCisgICAgYWNfc2F2ZV9MSUJTPSRMSUJTCisgICAgYWNfY3ZfbGliX2xleD0nbm9uZSBuZWVkZWQnCisgICAgZm9yIGFjX2xpYiBpbiAnJyAtbGZsIC1sbDsgZG8KKyAgICAgIExJQlM9IiRhY19saWIgJGFjX3NhdmVfTElCUyIKKyAgICAgIGNhdCBjb25mZGVmcy5oIC0gPDxfQUNFT0YgPmNvbmZ0ZXN0LiRhY19leHQKKy8qIGVuZCBjb25mZGVmcy5oLiAgKi8KK2BjYXQgJExFWF9PVVRQVVRfUk9PVC5jYAorX0FDRU9GCitpZiBhY19mbl9jX3RyeV9saW5rICIkTElORU5PIjsgdGhlbiA6CisgIGFjX2N2X2xpYl9sZXg9JGFjX2xpYgorZmkKK3JtIC1mIGNvcmUgY29uZnRlc3QuZXJyIGNvbmZ0ZXN0LiRhY19vYmpleHQgXAorICAgIGNvbmZ0ZXN0JGFjX2V4ZWV4dCBjb25mdGVzdC4kYWNfZXh0CisgICAgICB0ZXN0ICIkYWNfY3ZfbGliX2xleCIgIT0gJ25vbmUgbmVlZGVkJyAmJiBicmVhaworICAgIGRvbmUKKyAgICBMSUJTPSRhY19zYXZlX0xJQlMKKworZmkKK3sgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiAkYWNfY3ZfbGliX2xleCIgPiY1CiskYXNfZWNobyAiJGFjX2N2X2xpYl9sZXgiID4mNjsgfQorICB0ZXN0ICIkYWNfY3ZfbGliX2xleCIgIT0gJ25vbmUgbmVlZGVkJyAmJiBMRVhMSUI9JGFjX2N2X2xpYl9sZXgKK2ZpCisKKworeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBjaGVja2luZyB3aGV0aGVyIHl5dGV4dCBpcyBhIHBvaW50ZXIiID4mNQorJGFzX2VjaG9fbiAiY2hlY2tpbmcgd2hldGhlciB5eXRleHQgaXMgYSBwb2ludGVyLi4uICIgPiY2OyB9CitpZiAke2FjX2N2X3Byb2dfbGV4X3l5dGV4dF9wb2ludGVyKzp9IGZhbHNlOyB0aGVuIDoKKyAgJGFzX2VjaG9fbiAiKGNhY2hlZCkgIiA+JjYKK2Vsc2UKKyAgIyBQT1NJWCBzYXlzIGxleCBjYW4gZGVjbGFyZSB5eXRleHQgZWl0aGVyIGFzIGEgcG9pbnRlciBvciBhbiBhcnJheTsgdGhlCisjIGRlZmF1bHQgaXMgaW1wbGVtZW50YXRpb24tZGVwZW5kZW50LiAgRmlndXJlIG91dCB3aGljaCBpdCBpcywgc2luY2UKKyMgbm90IGFsbCBpbXBsZW1lbnRhdGlvbnMgcHJvdmlkZSB0aGUgJXBvaW50ZXIgYW5kICVhcnJheSBkZWNsYXJhdGlvbnMuCithY19jdl9wcm9nX2xleF95eXRleHRfcG9pbnRlcj1ubworYWNfc2F2ZV9MSUJTPSRMSUJTCitMSUJTPSIkTEVYTElCICRhY19zYXZlX0xJQlMiCitjYXQgY29uZmRlZnMuaCAtIDw8X0FDRU9GID5jb25mdGVzdC4kYWNfZXh0CisvKiBlbmQgY29uZmRlZnMuaC4gICovCisKKyAgI2RlZmluZSBZWVRFWFRfUE9JTlRFUiAxCitgY2F0ICRMRVhfT1VUUFVUX1JPT1QuY2AKK19BQ0VPRgoraWYgYWNfZm5fY190cnlfbGluayAiJExJTkVOTyI7IHRoZW4gOgorICBhY19jdl9wcm9nX2xleF95eXRleHRfcG9pbnRlcj15ZXMKK2ZpCitybSAtZiBjb3JlIGNvbmZ0ZXN0LmVyciBjb25mdGVzdC4kYWNfb2JqZXh0IFwKKyAgICBjb25mdGVzdCRhY19leGVleHQgY29uZnRlc3QuJGFjX2V4dAorTElCUz0kYWNfc2F2ZV9MSUJTCisKK2ZpCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogJGFjX2N2X3Byb2dfbGV4X3l5dGV4dF9wb2ludGVyIiA+JjUKKyRhc19lY2hvICIkYWNfY3ZfcHJvZ19sZXhfeXl0ZXh0X3BvaW50ZXIiID4mNjsgfQoraWYgdGVzdCAkYWNfY3ZfcHJvZ19sZXhfeXl0ZXh0X3BvaW50ZXIgPSB5ZXM7IHRoZW4KKworJGFzX2VjaG8gIiNkZWZpbmUgWVlURVhUX1BPSU5URVIgMSIgPj5jb25mZGVmcy5oCisKK2ZpCitybSAtZiBjb25mdGVzdC5sICRMRVhfT1VUUFVUX1JPT1QuYworCitmaQoraWYgdGVzdCAtbiAiJGFjX3Rvb2xfcHJlZml4IjsgdGhlbgorICAjIEV4dHJhY3QgdGhlIGZpcnN0IHdvcmQgb2YgIiR7YWNfdG9vbF9wcmVmaXh9cmFubGliIiwgc28gaXQgY2FuIGJlIGEgcHJvZ3JhbSBuYW1lIHdpdGggYXJncy4KK3NldCBkdW1teSAke2FjX3Rvb2xfcHJlZml4fXJhbmxpYjsgYWNfd29yZD0kMgoreyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBjaGVja2luZyBmb3IgJGFjX3dvcmQiID4mNQorJGFzX2VjaG9fbiAiY2hlY2tpbmcgZm9yICRhY193b3JkLi4uICIgPiY2OyB9CitpZiAke2FjX2N2X3Byb2dfUkFOTElCKzp9IGZhbHNlOyB0aGVuIDoKKyAgJGFzX2VjaG9fbiAiKGNhY2hlZCkgIiA+JjYKK2Vsc2UKKyAgaWYgdGVzdCAtbiAiJFJBTkxJQiI7IHRoZW4KKyAgYWNfY3ZfcHJvZ19SQU5MSUI9IiRSQU5MSUIiICMgTGV0IHRoZSB1c2VyIG92ZXJyaWRlIHRoZSB0ZXN0LgorZWxzZQorYXNfc2F2ZV9JRlM9JElGUzsgSUZTPSRQQVRIX1NFUEFSQVRPUgorZm9yIGFzX2RpciBpbiAkUEFUSAorZG8KKyAgSUZTPSRhc19zYXZlX0lGUworICB0ZXN0IC16ICIkYXNfZGlyIiAmJiBhc19kaXI9LgorICAgIGZvciBhY19leGVjX2V4dCBpbiAnJyAkYWNfZXhlY3V0YWJsZV9leHRlbnNpb25zOyBkbworICBpZiB7IHRlc3QgLWYgIiRhc19kaXIvJGFjX3dvcmQkYWNfZXhlY19leHQiICYmICRhc190ZXN0X3ggIiRhc19kaXIvJGFjX3dvcmQkYWNfZXhlY19leHQiOyB9OyB0aGVuCisgICAgYWNfY3ZfcHJvZ19SQU5MSUI9IiR7YWNfdG9vbF9wcmVmaXh9cmFubGliIgorICAgICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGZvdW5kICRhc19kaXIvJGFjX3dvcmQkYWNfZXhlY19leHQiID4mNQorICAgIGJyZWFrIDIKKyAgZmkKK2RvbmUKKyAgZG9uZQorSUZTPSRhc19zYXZlX0lGUworCitmaQorZmkKK1JBTkxJQj0kYWNfY3ZfcHJvZ19SQU5MSUIKK2lmIHRlc3QgLW4gIiRSQU5MSUIiOyB0aGVuCisgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiAkUkFOTElCIiA+JjUKKyRhc19lY2hvICIkUkFOTElCIiA+JjY7IH0KK2Vsc2UKKyAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6IG5vIiA+JjUKKyRhc19lY2hvICJubyIgPiY2OyB9CitmaQorCisKK2ZpCitpZiB0ZXN0IC16ICIkYWNfY3ZfcHJvZ19SQU5MSUIiOyB0aGVuCisgIGFjX2N0X1JBTkxJQj0kUkFOTElCCisgICMgRXh0cmFjdCB0aGUgZmlyc3Qgd29yZCBvZiAicmFubGliIiwgc28gaXQgY2FuIGJlIGEgcHJvZ3JhbSBuYW1lIHdpdGggYXJncy4KK3NldCBkdW1teSByYW5saWI7IGFjX3dvcmQ9JDIKK3sgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgZm9yICRhY193b3JkIiA+JjUKKyRhc19lY2hvX24gImNoZWNraW5nIGZvciAkYWNfd29yZC4uLiAiID4mNjsgfQoraWYgJHthY19jdl9wcm9nX2FjX2N0X1JBTkxJQis6fSBmYWxzZTsgdGhlbiA6CisgICRhc19lY2hvX24gIihjYWNoZWQpICIgPiY2CitlbHNlCisgIGlmIHRlc3QgLW4gIiRhY19jdF9SQU5MSUIiOyB0aGVuCisgIGFjX2N2X3Byb2dfYWNfY3RfUkFOTElCPSIkYWNfY3RfUkFOTElCIiAjIExldCB0aGUgdXNlciBvdmVycmlkZSB0aGUgdGVzdC4KK2Vsc2UKK2FzX3NhdmVfSUZTPSRJRlM7IElGUz0kUEFUSF9TRVBBUkFUT1IKK2ZvciBhc19kaXIgaW4gJFBBVEgKK2RvCisgIElGUz0kYXNfc2F2ZV9JRlMKKyAgdGVzdCAteiAiJGFzX2RpciIgJiYgYXNfZGlyPS4KKyAgICBmb3IgYWNfZXhlY19leHQgaW4gJycgJGFjX2V4ZWN1dGFibGVfZXh0ZW5zaW9uczsgZG8KKyAgaWYgeyB0ZXN0IC1mICIkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IiAmJiAkYXNfdGVzdF94ICIkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IjsgfTsgdGhlbgorICAgIGFjX2N2X3Byb2dfYWNfY3RfUkFOTElCPSJyYW5saWIiCisgICAgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogZm91bmQgJGFzX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCIgPiY1CisgICAgYnJlYWsgMgorICBmaQorZG9uZQorICBkb25lCitJRlM9JGFzX3NhdmVfSUZTCisKK2ZpCitmaQorYWNfY3RfUkFOTElCPSRhY19jdl9wcm9nX2FjX2N0X1JBTkxJQgoraWYgdGVzdCAtbiAiJGFjX2N0X1JBTkxJQiI7IHRoZW4KKyAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6ICRhY19jdF9SQU5MSUIiID4mNQorJGFzX2VjaG8gIiRhY19jdF9SQU5MSUIiID4mNjsgfQorZWxzZQorICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogbm8iID4mNQorJGFzX2VjaG8gIm5vIiA+JjY7IH0KK2ZpCisKKyAgaWYgdGVzdCAieCRhY19jdF9SQU5MSUIiID0geDsgdGhlbgorICAgIFJBTkxJQj0iOiIKKyAgZWxzZQorICAgIGNhc2UgJGNyb3NzX2NvbXBpbGluZzokYWNfdG9vbF93YXJuZWQgaW4KK3llczopCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IFdBUk5JTkc6IHVzaW5nIGNyb3NzIHRvb2xzIG5vdCBwcmVmaXhlZCB3aXRoIGhvc3QgdHJpcGxldCIgPiY1CiskYXNfZWNobyAiJGFzX21lOiBXQVJOSU5HOiB1c2luZyBjcm9zcyB0b29scyBub3QgcHJlZml4ZWQgd2l0aCBob3N0IHRyaXBsZXQiID4mMjt9CithY190b29sX3dhcm5lZD15ZXMgOzsKK2VzYWMKKyAgICBSQU5MSUI9JGFjX2N0X1JBTkxJQgorICBmaQorZWxzZQorICBSQU5MSUI9IiRhY19jdl9wcm9nX1JBTkxJQiIKK2ZpCisKK2ZvciBhY19wcm9nIGluIGRveHlnZW4KK2RvCisgICMgRXh0cmFjdCB0aGUgZmlyc3Qgd29yZCBvZiAiJGFjX3Byb2ciLCBzbyBpdCBjYW4gYmUgYSBwcm9ncmFtIG5hbWUgd2l0aCBhcmdzLgorc2V0IGR1bW15ICRhY19wcm9nOyBhY193b3JkPSQyCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIGZvciAkYWNfd29yZCIgPiY1CiskYXNfZWNob19uICJjaGVja2luZyBmb3IgJGFjX3dvcmQuLi4gIiA+JjY7IH0KK2lmICR7YWNfY3ZfcHJvZ19ET1hZR0VOKzp9IGZhbHNlOyB0aGVuIDoKKyAgJGFzX2VjaG9fbiAiKGNhY2hlZCkgIiA+JjYKK2Vsc2UKKyAgaWYgdGVzdCAtbiAiJERPWFlHRU4iOyB0aGVuCisgIGFjX2N2X3Byb2dfRE9YWUdFTj0iJERPWFlHRU4iICMgTGV0IHRoZSB1c2VyIG92ZXJyaWRlIHRoZSB0ZXN0LgorZWxzZQorYXNfc2F2ZV9JRlM9JElGUzsgSUZTPSRQQVRIX1NFUEFSQVRPUgorZm9yIGFzX2RpciBpbiAkUEFUSAorZG8KKyAgSUZTPSRhc19zYXZlX0lGUworICB0ZXN0IC16ICIkYXNfZGlyIiAmJiBhc19kaXI9LgorICAgIGZvciBhY19leGVjX2V4dCBpbiAnJyAkYWNfZXhlY3V0YWJsZV9leHRlbnNpb25zOyBkbworICBpZiB7IHRlc3QgLWYgIiRhc19kaXIvJGFjX3dvcmQkYWNfZXhlY19leHQiICYmICRhc190ZXN0X3ggIiRhc19kaXIvJGFjX3dvcmQkYWNfZXhlY19leHQiOyB9OyB0aGVuCisgICAgYWNfY3ZfcHJvZ19ET1hZR0VOPSIkYWNfcHJvZyIKKyAgICAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBmb3VuZCAkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IiA+JjUKKyAgICBicmVhayAyCisgIGZpCitkb25lCisgIGRvbmUKK0lGUz0kYXNfc2F2ZV9JRlMKKworZmkKK2ZpCitET1hZR0VOPSRhY19jdl9wcm9nX0RPWFlHRU4KK2lmIHRlc3QgLW4gIiRET1hZR0VOIjsgdGhlbgorICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogJERPWFlHRU4iID4mNQorJGFzX2VjaG8gIiRET1hZR0VOIiA+JjY7IH0KK2Vsc2UKKyAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6IG5vIiA+JjUKKyRhc19lY2hvICJubyIgPiY2OyB9CitmaQorCisKKyAgdGVzdCAtbiAiJERPWFlHRU4iICYmIGJyZWFrCitkb25lCisKKyMgRXh0cmFjdCB0aGUgZmlyc3Qgd29yZCBvZiAiZG90Iiwgc28gaXQgY2FuIGJlIGEgcHJvZ3JhbSBuYW1lIHdpdGggYXJncy4KK3NldCBkdW1teSBkb3Q7IGFjX3dvcmQ9JDIKK3sgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgZm9yICRhY193b3JkIiA+JjUKKyRhc19lY2hvX24gImNoZWNraW5nIGZvciAkYWNfd29yZC4uLiAiID4mNjsgfQoraWYgJHthY19jdl9wcm9nX0hBVkVfRE9UKzp9IGZhbHNlOyB0aGVuIDoKKyAgJGFzX2VjaG9fbiAiKGNhY2hlZCkgIiA+JjYKK2Vsc2UKKyAgaWYgdGVzdCAtbiAiJEhBVkVfRE9UIjsgdGhlbgorICBhY19jdl9wcm9nX0hBVkVfRE9UPSIkSEFWRV9ET1QiICMgTGV0IHRoZSB1c2VyIG92ZXJyaWRlIHRoZSB0ZXN0LgorZWxzZQorYXNfc2F2ZV9JRlM9JElGUzsgSUZTPSRQQVRIX1NFUEFSQVRPUgorZm9yIGFzX2RpciBpbiAkUEFUSAorZG8KKyAgSUZTPSRhc19zYXZlX0lGUworICB0ZXN0IC16ICIkYXNfZGlyIiAmJiBhc19kaXI9LgorICAgIGZvciBhY19leGVjX2V4dCBpbiAnJyAkYWNfZXhlY3V0YWJsZV9leHRlbnNpb25zOyBkbworICBpZiB7IHRlc3QgLWYgIiRhc19kaXIvJGFjX3dvcmQkYWNfZXhlY19leHQiICYmICRhc190ZXN0X3ggIiRhc19kaXIvJGFjX3dvcmQkYWNfZXhlY19leHQiOyB9OyB0aGVuCisgICAgYWNfY3ZfcHJvZ19IQVZFX0RPVD0iWUVTIgorICAgICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGZvdW5kICRhc19kaXIvJGFjX3dvcmQkYWNfZXhlY19leHQiID4mNQorICAgIGJyZWFrIDIKKyAgZmkKK2RvbmUKKyAgZG9uZQorSUZTPSRhc19zYXZlX0lGUworCisgIHRlc3QgLXogIiRhY19jdl9wcm9nX0hBVkVfRE9UIiAmJiBhY19jdl9wcm9nX0hBVkVfRE9UPSJOTyIKK2ZpCitmaQorSEFWRV9ET1Q9JGFjX2N2X3Byb2dfSEFWRV9ET1QKK2lmIHRlc3QgLW4gIiRIQVZFX0RPVCI7IHRoZW4KKyAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6ICRIQVZFX0RPVCIgPiY1CiskYXNfZWNobyAiJEhBVkVfRE9UIiA+JjY7IH0KK2Vsc2UKKyAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6IG5vIiA+JjUKKyRhc19lY2hvICJubyIgPiY2OyB9CitmaQorCisKKworCitmb3IgYWNfcHJvZyBpbiBwbzRhCitkbworICAjIEV4dHJhY3QgdGhlIGZpcnN0IHdvcmQgb2YgIiRhY19wcm9nIiwgc28gaXQgY2FuIGJlIGEgcHJvZ3JhbSBuYW1lIHdpdGggYXJncy4KK3NldCBkdW1teSAkYWNfcHJvZzsgYWNfd29yZD0kMgoreyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBjaGVja2luZyBmb3IgJGFjX3dvcmQiID4mNQorJGFzX2VjaG9fbiAiY2hlY2tpbmcgZm9yICRhY193b3JkLi4uICIgPiY2OyB9CitpZiAke2FjX2N2X3Byb2dfUE80QSs6fSBmYWxzZTsgdGhlbiA6CisgICRhc19lY2hvX24gIihjYWNoZWQpICIgPiY2CitlbHNlCisgIGlmIHRlc3QgLW4gIiRQTzRBIjsgdGhlbgorICBhY19jdl9wcm9nX1BPNEE9IiRQTzRBIiAjIExldCB0aGUgdXNlciBvdmVycmlkZSB0aGUgdGVzdC4KK2Vsc2UKK2FzX3NhdmVfSUZTPSRJRlM7IElGUz0kUEFUSF9TRVBBUkFUT1IKK2ZvciBhc19kaXIgaW4gJFBBVEgKK2RvCisgIElGUz0kYXNfc2F2ZV9JRlMKKyAgdGVzdCAteiAiJGFzX2RpciIgJiYgYXNfZGlyPS4KKyAgICBmb3IgYWNfZXhlY19leHQgaW4gJycgJGFjX2V4ZWN1dGFibGVfZXh0ZW5zaW9uczsgZG8KKyAgaWYgeyB0ZXN0IC1mICIkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IiAmJiAkYXNfdGVzdF94ICIkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IjsgfTsgdGhlbgorICAgIGFjX2N2X3Byb2dfUE80QT0iJGFjX3Byb2ciCisgICAgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogZm91bmQgJGFzX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCIgPiY1CisgICAgYnJlYWsgMgorICBmaQorZG9uZQorICBkb25lCitJRlM9JGFzX3NhdmVfSUZTCisKK2ZpCitmaQorUE80QT0kYWNfY3ZfcHJvZ19QTzRBCitpZiB0ZXN0IC1uICIkUE80QSI7IHRoZW4KKyAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6ICRQTzRBIiA+JjUKKyRhc19lY2hvICIkUE80QSIgPiY2OyB9CitlbHNlCisgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiBubyIgPiY1CiskYXNfZWNobyAibm8iID4mNjsgfQorZmkKKworCisgIHRlc3QgLW4gIiRQTzRBIiAmJiBicmVhaworZG9uZQorCitpZiB0ZXN0ICIkVVNFX05MUyIgPSAieWVzIiAmJiB0ZXN0IC1uICIkUE80QSI7IHRoZW4KKyAgVVNFX1BPNEE9eWVzCitlbHNlCisgIFVTRV9QTzRBPW5vCitmaQorCisKKyMgRXh0cmFjdCB0aGUgZmlyc3Qgd29yZCBvZiAicGVybCIsIHNvIGl0IGNhbiBiZSBhIHByb2dyYW0gbmFtZSB3aXRoIGFyZ3MuCitzZXQgZHVtbXkgcGVybDsgYWNfd29yZD0kMgoreyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBjaGVja2luZyBmb3IgJGFjX3dvcmQiID4mNQorJGFzX2VjaG9fbiAiY2hlY2tpbmcgZm9yICRhY193b3JkLi4uICIgPiY2OyB9CitpZiAke2FjX2N2X3BhdGhfUEVSTCs6fSBmYWxzZTsgdGhlbiA6CisgICRhc19lY2hvX24gIihjYWNoZWQpICIgPiY2CitlbHNlCisgIGNhc2UgJFBFUkwgaW4KKyAgW1xcL10qIHwgPzpbXFwvXSopCisgIGFjX2N2X3BhdGhfUEVSTD0iJFBFUkwiICMgTGV0IHRoZSB1c2VyIG92ZXJyaWRlIHRoZSB0ZXN0IHdpdGggYSBwYXRoLgorICA7OworICAqKQorICBhc19zYXZlX0lGUz0kSUZTOyBJRlM9JFBBVEhfU0VQQVJBVE9SCitmb3IgYXNfZGlyIGluICRQQVRICitkbworICBJRlM9JGFzX3NhdmVfSUZTCisgIHRlc3QgLXogIiRhc19kaXIiICYmIGFzX2Rpcj0uCisgICAgZm9yIGFjX2V4ZWNfZXh0IGluICcnICRhY19leGVjdXRhYmxlX2V4dGVuc2lvbnM7IGRvCisgIGlmIHsgdGVzdCAtZiAiJGFzX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCIgJiYgJGFzX3Rlc3RfeCAiJGFzX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCI7IH07IHRoZW4KKyAgICBhY19jdl9wYXRoX1BFUkw9IiRhc19kaXIvJGFjX3dvcmQkYWNfZXhlY19leHQiCisgICAgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogZm91bmQgJGFzX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCIgPiY1CisgICAgYnJlYWsgMgorICBmaQorZG9uZQorICBkb25lCitJRlM9JGFzX3NhdmVfSUZTCisKKyAgdGVzdCAteiAiJGFjX2N2X3BhdGhfUEVSTCIgJiYgYWNfY3ZfcGF0aF9QRVJMPSIvdXNyL2Jpbi9wZXJsIgorICA7OworZXNhYworZmkKK1BFUkw9JGFjX2N2X3BhdGhfUEVSTAoraWYgdGVzdCAtbiAiJFBFUkwiOyB0aGVuCisgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiAkUEVSTCIgPiY1CiskYXNfZWNobyAiJFBFUkwiID4mNjsgfQorZWxzZQorICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogbm8iID4mNQorJGFzX2VjaG8gIm5vIiA+JjY7IH0KK2ZpCisKK1BFUkxfTElCRElSPSQoJFBFUkwgLU1Db25maWcgLWUgJ215ICRyID0gJENvbmZpZ3t2ZW5kb3JsaWJleHB9OworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHIgPX4gcy8kQ29uZmlne3ZlbmRvcnByZWZpeGV4cH0vXCQocHJlZml4KS87CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcmludCAkcicpCisKK2ZvciBhY19wcm9nIGluIHBvZDJtYW4KK2RvCisgICMgRXh0cmFjdCB0aGUgZmlyc3Qgd29yZCBvZiAiJGFjX3Byb2ciLCBzbyBpdCBjYW4gYmUgYSBwcm9ncmFtIG5hbWUgd2l0aCBhcmdzLgorc2V0IGR1bW15ICRhY19wcm9nOyBhY193b3JkPSQyCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIGZvciAkYWNfd29yZCIgPiY1CiskYXNfZWNob19uICJjaGVja2luZyBmb3IgJGFjX3dvcmQuLi4gIiA+JjY7IH0KK2lmICR7YWNfY3ZfcHJvZ19QT0QyTUFOKzp9IGZhbHNlOyB0aGVuIDoKKyAgJGFzX2VjaG9fbiAiKGNhY2hlZCkgIiA+JjYKK2Vsc2UKKyAgaWYgdGVzdCAtbiAiJFBPRDJNQU4iOyB0aGVuCisgIGFjX2N2X3Byb2dfUE9EMk1BTj0iJFBPRDJNQU4iICMgTGV0IHRoZSB1c2VyIG92ZXJyaWRlIHRoZSB0ZXN0LgorZWxzZQorYXNfc2F2ZV9JRlM9JElGUzsgSUZTPSRQQVRIX1NFUEFSQVRPUgorZm9yIGFzX2RpciBpbiAkUEFUSAorZG8KKyAgSUZTPSRhc19zYXZlX0lGUworICB0ZXN0IC16ICIkYXNfZGlyIiAmJiBhc19kaXI9LgorICAgIGZvciBhY19leGVjX2V4dCBpbiAnJyAkYWNfZXhlY3V0YWJsZV9leHRlbnNpb25zOyBkbworICBpZiB7IHRlc3QgLWYgIiRhc19kaXIvJGFjX3dvcmQkYWNfZXhlY19leHQiICYmICRhc190ZXN0X3ggIiRhc19kaXIvJGFjX3dvcmQkYWNfZXhlY19leHQiOyB9OyB0aGVuCisgICAgYWNfY3ZfcHJvZ19QT0QyTUFOPSIkYWNfcHJvZyIKKyAgICAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBmb3VuZCAkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IiA+JjUKKyAgICBicmVhayAyCisgIGZpCitkb25lCisgIGRvbmUKK0lGUz0kYXNfc2F2ZV9JRlMKKworZmkKK2ZpCitQT0QyTUFOPSRhY19jdl9wcm9nX1BPRDJNQU4KK2lmIHRlc3QgLW4gIiRQT0QyTUFOIjsgdGhlbgorICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogJFBPRDJNQU4iID4mNQorJGFzX2VjaG8gIiRQT0QyTUFOIiA+JjY7IH0KK2Vsc2UKKyAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6IG5vIiA+JjUKKyRhc19lY2hvICJubyIgPiY2OyB9CitmaQorCisKKyAgdGVzdCAtbiAiJFBPRDJNQU4iICYmIGJyZWFrCitkb25lCisKKyBpZiB0ZXN0ICJ4JFBPRDJNQU4iICE9ICJ4IjsgdGhlbgorICBCVUlMRF9QT0RfRE9DX1RSVUU9CisgIEJVSUxEX1BPRF9ET0NfRkFMU0U9JyMnCitlbHNlCisgIEJVSUxEX1BPRF9ET0NfVFJVRT0nIycKKyAgQlVJTERfUE9EX0RPQ19GQUxTRT0KK2ZpCisKKworCisjIENoZWNrIHdoZXRoZXIgLS1lbmFibGUtY292ZXJhZ2Ugd2FzIGdpdmVuLgoraWYgdGVzdCAiJHtlbmFibGVfY292ZXJhZ2Urc2V0fSIgPSBzZXQ7IHRoZW4gOgorICBlbmFibGV2YWw9JGVuYWJsZV9jb3ZlcmFnZTsKK2Vsc2UKKyAgZW5hYmxlX2NvdmVyYWdlPW5vCitmaQorCisgaWYgdGVzdCB4JGVuYWJsZV9jb3ZlcmFnZSA9IHh5ZXM7IHRoZW4KKyAgQ09WRVJBR0VfRU5BQkxFRF9UUlVFPQorICBDT1ZFUkFHRV9FTkFCTEVEX0ZBTFNFPScjJworZWxzZQorICBDT1ZFUkFHRV9FTkFCTEVEX1RSVUU9JyMnCisgIENPVkVSQUdFX0VOQUJMRURfRkFMU0U9CitmaQorCisKK2lmIHRlc3QgIngkZW5hYmxlX2NvdmVyYWdlIiA9ICJ4eWVzIjsgdGhlbgorICAgaWYgdGVzdCAieCRHQ0MiID0gInhubyI7IHRoZW4KKyAgICAgYXNfZm5fZXJyb3IgJD8gIm5vdCBjb21waWxpbmcgd2l0aCBnY2MsIHdoaWNoIGlzIHJlcXVpcmVkIGZvciBDIGNvdmVyYWdlIHN1cHBvcnQiICIkTElORU5PIiA1CisgICBmaQorCisgICBmb3IgYWNfcHJvZyBpbiBnY292CitkbworICAjIEV4dHJhY3QgdGhlIGZpcnN0IHdvcmQgb2YgIiRhY19wcm9nIiwgc28gaXQgY2FuIGJlIGEgcHJvZ3JhbSBuYW1lIHdpdGggYXJncy4KK3NldCBkdW1teSAkYWNfcHJvZzsgYWNfd29yZD0kMgoreyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBjaGVja2luZyBmb3IgJGFjX3dvcmQiID4mNQorJGFzX2VjaG9fbiAiY2hlY2tpbmcgZm9yICRhY193b3JkLi4uICIgPiY2OyB9CitpZiAke2FjX2N2X3Byb2dfR0NPVis6fSBmYWxzZTsgdGhlbiA6CisgICRhc19lY2hvX24gIihjYWNoZWQpICIgPiY2CitlbHNlCisgIGlmIHRlc3QgLW4gIiRHQ09WIjsgdGhlbgorICBhY19jdl9wcm9nX0dDT1Y9IiRHQ09WIiAjIExldCB0aGUgdXNlciBvdmVycmlkZSB0aGUgdGVzdC4KK2Vsc2UKK2FzX3NhdmVfSUZTPSRJRlM7IElGUz0kUEFUSF9TRVBBUkFUT1IKK2ZvciBhc19kaXIgaW4gJFBBVEgKK2RvCisgIElGUz0kYXNfc2F2ZV9JRlMKKyAgdGVzdCAteiAiJGFzX2RpciIgJiYgYXNfZGlyPS4KKyAgICBmb3IgYWNfZXhlY19leHQgaW4gJycgJGFjX2V4ZWN1dGFibGVfZXh0ZW5zaW9uczsgZG8KKyAgaWYgeyB0ZXN0IC1mICIkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IiAmJiAkYXNfdGVzdF94ICIkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IjsgfTsgdGhlbgorICAgIGFjX2N2X3Byb2dfR0NPVj0iJGFjX3Byb2ciCisgICAgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogZm91bmQgJGFzX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCIgPiY1CisgICAgYnJlYWsgMgorICBmaQorZG9uZQorICBkb25lCitJRlM9JGFzX3NhdmVfSUZTCisKK2ZpCitmaQorR0NPVj0kYWNfY3ZfcHJvZ19HQ09WCitpZiB0ZXN0IC1uICIkR0NPViI7IHRoZW4KKyAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6ICRHQ09WIiA+JjUKKyRhc19lY2hvICIkR0NPViIgPiY2OyB9CitlbHNlCisgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiBubyIgPiY1CiskYXNfZWNobyAibm8iID4mNjsgfQorZmkKKworCisgIHRlc3QgLW4gIiRHQ09WIiAmJiBicmVhaworZG9uZQorCisgICBpZiB0ZXN0IC16ICIkR0NPViI7IHRoZW4KKyAgICAgYXNfZm5fZXJyb3IgJD8gIm1pc3NpbmcgZ2Nvdiwgd2hpY2ggaXMgcmVxdWlyZWQgZm9yIEMgY292ZXJhZ2Ugc3VwcG9ydCIgIiRMSU5FTk8iIDUKKyAgIGZpCisKKyAgIGZvciBhY19wcm9nIGluIGxjb3YKK2RvCisgICMgRXh0cmFjdCB0aGUgZmlyc3Qgd29yZCBvZiAiJGFjX3Byb2ciLCBzbyBpdCBjYW4gYmUgYSBwcm9ncmFtIG5hbWUgd2l0aCBhcmdzLgorc2V0IGR1bW15ICRhY19wcm9nOyBhY193b3JkPSQyCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIGZvciAkYWNfd29yZCIgPiY1CiskYXNfZWNob19uICJjaGVja2luZyBmb3IgJGFjX3dvcmQuLi4gIiA+JjY7IH0KK2lmICR7YWNfY3ZfcHJvZ19MQ09WKzp9IGZhbHNlOyB0aGVuIDoKKyAgJGFzX2VjaG9fbiAiKGNhY2hlZCkgIiA+JjYKK2Vsc2UKKyAgaWYgdGVzdCAtbiAiJExDT1YiOyB0aGVuCisgIGFjX2N2X3Byb2dfTENPVj0iJExDT1YiICMgTGV0IHRoZSB1c2VyIG92ZXJyaWRlIHRoZSB0ZXN0LgorZWxzZQorYXNfc2F2ZV9JRlM9JElGUzsgSUZTPSRQQVRIX1NFUEFSQVRPUgorZm9yIGFzX2RpciBpbiAkUEFUSAorZG8KKyAgSUZTPSRhc19zYXZlX0lGUworICB0ZXN0IC16ICIkYXNfZGlyIiAmJiBhc19kaXI9LgorICAgIGZvciBhY19leGVjX2V4dCBpbiAnJyAkYWNfZXhlY3V0YWJsZV9leHRlbnNpb25zOyBkbworICBpZiB7IHRlc3QgLWYgIiRhc19kaXIvJGFjX3dvcmQkYWNfZXhlY19leHQiICYmICRhc190ZXN0X3ggIiRhc19kaXIvJGFjX3dvcmQkYWNfZXhlY19leHQiOyB9OyB0aGVuCisgICAgYWNfY3ZfcHJvZ19MQ09WPSIkYWNfcHJvZyIKKyAgICAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBmb3VuZCAkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IiA+JjUKKyAgICBicmVhayAyCisgIGZpCitkb25lCisgIGRvbmUKK0lGUz0kYXNfc2F2ZV9JRlMKKworZmkKK2ZpCitMQ09WPSRhY19jdl9wcm9nX0xDT1YKK2lmIHRlc3QgLW4gIiRMQ09WIjsgdGhlbgorICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogJExDT1YiID4mNQorJGFzX2VjaG8gIiRMQ09WIiA+JjY7IH0KK2Vsc2UKKyAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6IG5vIiA+JjUKKyRhc19lY2hvICJubyIgPiY2OyB9CitmaQorCisKKyAgdGVzdCAtbiAiJExDT1YiICYmIGJyZWFrCitkb25lCisKKyAgIGlmIHRlc3QgLXogIiRMQ09WIjsgdGhlbgorICAgICAgYXNfZm5fZXJyb3IgJD8gIm1pc3NpbmcgbGNvdiwgd2hpY2ggaXMgcmVxdWlyZWQgZm9yIEMgY292ZXJhZ2Ugc3VwcG9ydCIgIiRMSU5FTk8iIDUKKyAgIGZpCisKKyAgIGZvciBhY19wcm9nIGluIGdlbmh0bWwKK2RvCisgICMgRXh0cmFjdCB0aGUgZmlyc3Qgd29yZCBvZiAiJGFjX3Byb2ciLCBzbyBpdCBjYW4gYmUgYSBwcm9ncmFtIG5hbWUgd2l0aCBhcmdzLgorc2V0IGR1bW15ICRhY19wcm9nOyBhY193b3JkPSQyCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIGZvciAkYWNfd29yZCIgPiY1CiskYXNfZWNob19uICJjaGVja2luZyBmb3IgJGFjX3dvcmQuLi4gIiA+JjY7IH0KK2lmICR7YWNfY3ZfcHJvZ19MQ09WX0dFTkhUTUwrOn0gZmFsc2U7IHRoZW4gOgorICAkYXNfZWNob19uICIoY2FjaGVkKSAiID4mNgorZWxzZQorICBpZiB0ZXN0IC1uICIkTENPVl9HRU5IVE1MIjsgdGhlbgorICBhY19jdl9wcm9nX0xDT1ZfR0VOSFRNTD0iJExDT1ZfR0VOSFRNTCIgIyBMZXQgdGhlIHVzZXIgb3ZlcnJpZGUgdGhlIHRlc3QuCitlbHNlCithc19zYXZlX0lGUz0kSUZTOyBJRlM9JFBBVEhfU0VQQVJBVE9SCitmb3IgYXNfZGlyIGluICRQQVRICitkbworICBJRlM9JGFzX3NhdmVfSUZTCisgIHRlc3QgLXogIiRhc19kaXIiICYmIGFzX2Rpcj0uCisgICAgZm9yIGFjX2V4ZWNfZXh0IGluICcnICRhY19leGVjdXRhYmxlX2V4dGVuc2lvbnM7IGRvCisgIGlmIHsgdGVzdCAtZiAiJGFzX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCIgJiYgJGFzX3Rlc3RfeCAiJGFzX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCI7IH07IHRoZW4KKyAgICBhY19jdl9wcm9nX0xDT1ZfR0VOSFRNTD0iJGFjX3Byb2ciCisgICAgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogZm91bmQgJGFzX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCIgPiY1CisgICAgYnJlYWsgMgorICBmaQorZG9uZQorICBkb25lCitJRlM9JGFzX3NhdmVfSUZTCisKK2ZpCitmaQorTENPVl9HRU5IVE1MPSRhY19jdl9wcm9nX0xDT1ZfR0VOSFRNTAoraWYgdGVzdCAtbiAiJExDT1ZfR0VOSFRNTCI7IHRoZW4KKyAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6ICRMQ09WX0dFTkhUTUwiID4mNQorJGFzX2VjaG8gIiRMQ09WX0dFTkhUTUwiID4mNjsgfQorZWxzZQorICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogbm8iID4mNQorJGFzX2VjaG8gIm5vIiA+JjY7IH0KK2ZpCisKKworICB0ZXN0IC1uICIkTENPVl9HRU5IVE1MIiAmJiBicmVhaworZG9uZQorCisgICBpZiB0ZXN0IC16ICIkTENPVl9HRU5IVE1MIjsgdGhlbgorICAgICAgYXNfZm5fZXJyb3IgJD8gIm1pc3NpbmcgZ2VuaHRtbCwgd2hpY2ggaXMgcmVxdWlyZWQgZm9yIEMgY292ZXJhZ2Ugc3VwcG9ydCIgIiRMSU5FTk8iIDUKKyAgIGZpCisKKyAgIENGTEFHUz0iJENGTEFHUyAtZnByb2ZpbGUtYXJjcyAtZnRlc3QtY292ZXJhZ2UiCisgICBMREZMQUdTPSIkTERGTEFHUyAtZnByb2ZpbGUtYXJjcyAtZnRlc3QtY292ZXJhZ2UiCisKKyAgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgZm9yIERldmVsOjpDb3ZlciBwZXJsIG1vZHVsZSIgPiY1CiskYXNfZWNob19uICJjaGVja2luZyBmb3IgRGV2ZWw6OkNvdmVyIHBlcmwgbW9kdWxlLi4uICIgPiY2OyB9CisgICBpZiAkKCRQRVJMIC1lICJyZXF1aXJlIERldmVsOjpDb3ZlcjsiIDI+L2Rldi9udWxsKTsgdGhlbgorICAgICAgUEVSTF9DT1ZFUkFHRT0iLU1EZXZlbDo6Q292ZXIiCisKKyAgICAgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiBvayIgPiY1CiskYXNfZWNobyAib2siID4mNjsgfQorICAgZWxzZQorICAgICAgYXNfZm5fZXJyb3IgJD8gIkRldmVsOjpDb3ZlciBwZXJsIG1vZHVsZSBpcyByZXF1aXJlZCBmb3IgY292ZXJhZ2Ugc3VwcG9ydCIgIiRMSU5FTk8iIDUKKyAgIGZpCisgICBmb3IgYWNfcHJvZyBpbiBjb3ZlcgorZG8KKyAgIyBFeHRyYWN0IHRoZSBmaXJzdCB3b3JkIG9mICIkYWNfcHJvZyIsIHNvIGl0IGNhbiBiZSBhIHByb2dyYW0gbmFtZSB3aXRoIGFyZ3MuCitzZXQgZHVtbXkgJGFjX3Byb2c7IGFjX3dvcmQ9JDIKK3sgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgZm9yICRhY193b3JkIiA+JjUKKyRhc19lY2hvX24gImNoZWNraW5nIGZvciAkYWNfd29yZC4uLiAiID4mNjsgfQoraWYgJHthY19jdl9wcm9nX1BFUkxfQ09WRVIrOn0gZmFsc2U7IHRoZW4gOgorICAkYXNfZWNob19uICIoY2FjaGVkKSAiID4mNgorZWxzZQorICBpZiB0ZXN0IC1uICIkUEVSTF9DT1ZFUiI7IHRoZW4KKyAgYWNfY3ZfcHJvZ19QRVJMX0NPVkVSPSIkUEVSTF9DT1ZFUiIgIyBMZXQgdGhlIHVzZXIgb3ZlcnJpZGUgdGhlIHRlc3QuCitlbHNlCithc19zYXZlX0lGUz0kSUZTOyBJRlM9JFBBVEhfU0VQQVJBVE9SCitmb3IgYXNfZGlyIGluICRQQVRICitkbworICBJRlM9JGFzX3NhdmVfSUZTCisgIHRlc3QgLXogIiRhc19kaXIiICYmIGFzX2Rpcj0uCisgICAgZm9yIGFjX2V4ZWNfZXh0IGluICcnICRhY19leGVjdXRhYmxlX2V4dGVuc2lvbnM7IGRvCisgIGlmIHsgdGVzdCAtZiAiJGFzX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCIgJiYgJGFzX3Rlc3RfeCAiJGFzX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCI7IH07IHRoZW4KKyAgICBhY19jdl9wcm9nX1BFUkxfQ09WRVI9IiRhY19wcm9nIgorICAgICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGZvdW5kICRhc19kaXIvJGFjX3dvcmQkYWNfZXhlY19leHQiID4mNQorICAgIGJyZWFrIDIKKyAgZmkKK2RvbmUKKyAgZG9uZQorSUZTPSRhc19zYXZlX0lGUworCitmaQorZmkKK1BFUkxfQ09WRVI9JGFjX2N2X3Byb2dfUEVSTF9DT1ZFUgoraWYgdGVzdCAtbiAiJFBFUkxfQ09WRVIiOyB0aGVuCisgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiAkUEVSTF9DT1ZFUiIgPiY1CiskYXNfZWNobyAiJFBFUkxfQ09WRVIiID4mNjsgfQorZWxzZQorICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogbm8iID4mNQorJGFzX2VjaG8gIm5vIiA+JjY7IH0KK2ZpCisKKworICB0ZXN0IC1uICIkUEVSTF9DT1ZFUiIgJiYgYnJlYWsKK2RvbmUKKworICAgaWYgdGVzdCAteiAiJFBFUkxfQ09WRVIiOyB0aGVuCisgICAgICBhc19mbl9lcnJvciAkPyAibWlzc2luZyBjb3Zlciwgd2hpY2ggaXMgcmVxdWlyZWQgZm9yIHBlcmwgY292ZXJhZ2Ugc3VwcG9ydCIgIiRMSU5FTk8iIDUKKyAgIGZpCitmaQorCisKKyMgQ2hlY2tzIGZvciBvcGVyYXRpbmcgc3lzdGVtIHNlcnZpY2VzIGFuZCBjYXBhYmlsaXRpZXMuCisjIENoZWNrIHdoZXRoZXIgLS1lbmFibGUtbGFyZ2VmaWxlIHdhcyBnaXZlbi4KK2lmIHRlc3QgIiR7ZW5hYmxlX2xhcmdlZmlsZStzZXR9IiA9IHNldDsgdGhlbiA6CisgIGVuYWJsZXZhbD0kZW5hYmxlX2xhcmdlZmlsZTsKK2ZpCisKK2lmIHRlc3QgIiRlbmFibGVfbGFyZ2VmaWxlIiAhPSBubzsgdGhlbgorCisgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgZm9yIHNwZWNpYWwgQyBjb21waWxlciBvcHRpb25zIG5lZWRlZCBmb3IgbGFyZ2UgZmlsZXMiID4mNQorJGFzX2VjaG9fbiAiY2hlY2tpbmcgZm9yIHNwZWNpYWwgQyBjb21waWxlciBvcHRpb25zIG5lZWRlZCBmb3IgbGFyZ2UgZmlsZXMuLi4gIiA+JjY7IH0KK2lmICR7YWNfY3Zfc3lzX2xhcmdlZmlsZV9DQys6fSBmYWxzZTsgdGhlbiA6CisgICRhc19lY2hvX24gIihjYWNoZWQpICIgPiY2CitlbHNlCisgIGFjX2N2X3N5c19sYXJnZWZpbGVfQ0M9bm8KKyAgICAgaWYgdGVzdCAiJEdDQyIgIT0geWVzOyB0aGVuCisgICAgICAgYWNfc2F2ZV9DQz0kQ0MKKyAgICAgICB3aGlsZSA6OyBkbworCSAjIElSSVggNi4yIGFuZCBsYXRlciBkbyBub3Qgc3VwcG9ydCBsYXJnZSBmaWxlcyBieSBkZWZhdWx0LAorCSAjIHNvIHVzZSB0aGUgQyBjb21waWxlcidzIC1uMzIgb3B0aW9uIGlmIHRoYXQgaGVscHMuCisJIGNhdCBjb25mZGVmcy5oIC0gPDxfQUNFT0YgPmNvbmZ0ZXN0LiRhY19leHQKKy8qIGVuZCBjb25mZGVmcy5oLiAgKi8KKyNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KKyAvKiBDaGVjayB0aGF0IG9mZl90IGNhbiByZXByZXNlbnQgMioqNjMgLSAxIGNvcnJlY3RseS4KKyAgICBXZSBjYW4ndCBzaW1wbHkgZGVmaW5lIExBUkdFX09GRl9UIHRvIGJlIDkyMjMzNzIwMzY4NTQ3NzU4MDcsCisgICAgc2luY2Ugc29tZSBDKysgY29tcGlsZXJzIG1hc3F1ZXJhZGluZyBhcyBDIGNvbXBpbGVycworICAgIGluY29ycmVjdGx5IHJlamVjdCA5MjIzMzcyMDM2ODU0Nzc1ODA3LiAgKi8KKyNkZWZpbmUgTEFSR0VfT0ZGX1QgKCgob2ZmX3QpIDEgPDwgNjIpIC0gMSArICgob2ZmX3QpIDEgPDwgNjIpKQorICBpbnQgb2ZmX3RfaXNfbGFyZ2VbKExBUkdFX09GRl9UICUgMjE0NzQ4MzYyOSA9PSA3MjEKKwkJICAgICAgICYmIExBUkdFX09GRl9UICUgMjE0NzQ4MzY0NyA9PSAxKQorCQkgICAgICA/IDEgOiAtMV07CitpbnQKK21haW4gKCkKK3sKKworICA7CisgIHJldHVybiAwOworfQorX0FDRU9GCisJIGlmIGFjX2ZuX2NfdHJ5X2NvbXBpbGUgIiRMSU5FTk8iOyB0aGVuIDoKKyAgYnJlYWsKK2ZpCitybSAtZiBjb3JlIGNvbmZ0ZXN0LmVyciBjb25mdGVzdC4kYWNfb2JqZXh0CisJIENDPSIkQ0MgLW4zMiIKKwkgaWYgYWNfZm5fY190cnlfY29tcGlsZSAiJExJTkVOTyI7IHRoZW4gOgorICBhY19jdl9zeXNfbGFyZ2VmaWxlX0NDPScgLW4zMic7IGJyZWFrCitmaQorcm0gLWYgY29yZSBjb25mdGVzdC5lcnIgY29uZnRlc3QuJGFjX29iamV4dAorCSBicmVhaworICAgICAgIGRvbmUKKyAgICAgICBDQz0kYWNfc2F2ZV9DQworICAgICAgIHJtIC1mIGNvbmZ0ZXN0LiRhY19leHQKKyAgICBmaQorZmkKK3sgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiAkYWNfY3Zfc3lzX2xhcmdlZmlsZV9DQyIgPiY1CiskYXNfZWNobyAiJGFjX2N2X3N5c19sYXJnZWZpbGVfQ0MiID4mNjsgfQorICBpZiB0ZXN0ICIkYWNfY3Zfc3lzX2xhcmdlZmlsZV9DQyIgIT0gbm87IHRoZW4KKyAgICBDQz0kQ0MkYWNfY3Zfc3lzX2xhcmdlZmlsZV9DQworICBmaQorCisgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgZm9yIF9GSUxFX09GRlNFVF9CSVRTIHZhbHVlIG5lZWRlZCBmb3IgbGFyZ2UgZmlsZXMiID4mNQorJGFzX2VjaG9fbiAiY2hlY2tpbmcgZm9yIF9GSUxFX09GRlNFVF9CSVRTIHZhbHVlIG5lZWRlZCBmb3IgbGFyZ2UgZmlsZXMuLi4gIiA+JjY7IH0KK2lmICR7YWNfY3Zfc3lzX2ZpbGVfb2Zmc2V0X2JpdHMrOn0gZmFsc2U7IHRoZW4gOgorICAkYXNfZWNob19uICIoY2FjaGVkKSAiID4mNgorZWxzZQorICB3aGlsZSA6OyBkbworICBjYXQgY29uZmRlZnMuaCAtIDw8X0FDRU9GID5jb25mdGVzdC4kYWNfZXh0CisvKiBlbmQgY29uZmRlZnMuaC4gICovCisjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CisgLyogQ2hlY2sgdGhhdCBvZmZfdCBjYW4gcmVwcmVzZW50IDIqKjYzIC0gMSBjb3JyZWN0bHkuCisgICAgV2UgY2FuJ3Qgc2ltcGx5IGRlZmluZSBMQVJHRV9PRkZfVCB0byBiZSA5MjIzMzcyMDM2ODU0Nzc1ODA3LAorICAgIHNpbmNlIHNvbWUgQysrIGNvbXBpbGVycyBtYXNxdWVyYWRpbmcgYXMgQyBjb21waWxlcnMKKyAgICBpbmNvcnJlY3RseSByZWplY3QgOTIyMzM3MjAzNjg1NDc3NTgwNy4gICovCisjZGVmaW5lIExBUkdFX09GRl9UICgoKG9mZl90KSAxIDw8IDYyKSAtIDEgKyAoKG9mZl90KSAxIDw8IDYyKSkKKyAgaW50IG9mZl90X2lzX2xhcmdlWyhMQVJHRV9PRkZfVCAlIDIxNDc0ODM2MjkgPT0gNzIxCisJCSAgICAgICAmJiBMQVJHRV9PRkZfVCAlIDIxNDc0ODM2NDcgPT0gMSkKKwkJICAgICAgPyAxIDogLTFdOworaW50CittYWluICgpCit7CisKKyAgOworICByZXR1cm4gMDsKK30KK19BQ0VPRgoraWYgYWNfZm5fY190cnlfY29tcGlsZSAiJExJTkVOTyI7IHRoZW4gOgorICBhY19jdl9zeXNfZmlsZV9vZmZzZXRfYml0cz1ubzsgYnJlYWsKK2ZpCitybSAtZiBjb3JlIGNvbmZ0ZXN0LmVyciBjb25mdGVzdC4kYWNfb2JqZXh0IGNvbmZ0ZXN0LiRhY19leHQKKyAgY2F0IGNvbmZkZWZzLmggLSA8PF9BQ0VPRiA+Y29uZnRlc3QuJGFjX2V4dAorLyogZW5kIGNvbmZkZWZzLmguICAqLworI2RlZmluZSBfRklMRV9PRkZTRVRfQklUUyA2NAorI2luY2x1ZGUgPHN5cy90eXBlcy5oPgorIC8qIENoZWNrIHRoYXQgb2ZmX3QgY2FuIHJlcHJlc2VudCAyKio2MyAtIDEgY29ycmVjdGx5LgorICAgIFdlIGNhbid0IHNpbXBseSBkZWZpbmUgTEFSR0VfT0ZGX1QgdG8gYmUgOTIyMzM3MjAzNjg1NDc3NTgwNywKKyAgICBzaW5jZSBzb21lIEMrKyBjb21waWxlcnMgbWFzcXVlcmFkaW5nIGFzIEMgY29tcGlsZXJzCisgICAgaW5jb3JyZWN0bHkgcmVqZWN0IDkyMjMzNzIwMzY4NTQ3NzU4MDcuICAqLworI2RlZmluZSBMQVJHRV9PRkZfVCAoKChvZmZfdCkgMSA8PCA2MikgLSAxICsgKChvZmZfdCkgMSA8PCA2MikpCisgIGludCBvZmZfdF9pc19sYXJnZVsoTEFSR0VfT0ZGX1QgJSAyMTQ3NDgzNjI5ID09IDcyMQorCQkgICAgICAgJiYgTEFSR0VfT0ZGX1QgJSAyMTQ3NDgzNjQ3ID09IDEpCisJCSAgICAgID8gMSA6IC0xXTsKK2ludAorbWFpbiAoKQoreworCisgIDsKKyAgcmV0dXJuIDA7Cit9CitfQUNFT0YKK2lmIGFjX2ZuX2NfdHJ5X2NvbXBpbGUgIiRMSU5FTk8iOyB0aGVuIDoKKyAgYWNfY3Zfc3lzX2ZpbGVfb2Zmc2V0X2JpdHM9NjQ7IGJyZWFrCitmaQorcm0gLWYgY29yZSBjb25mdGVzdC5lcnIgY29uZnRlc3QuJGFjX29iamV4dCBjb25mdGVzdC4kYWNfZXh0CisgIGFjX2N2X3N5c19maWxlX29mZnNldF9iaXRzPXVua25vd24KKyAgYnJlYWsKK2RvbmUKK2ZpCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogJGFjX2N2X3N5c19maWxlX29mZnNldF9iaXRzIiA+JjUKKyRhc19lY2hvICIkYWNfY3Zfc3lzX2ZpbGVfb2Zmc2V0X2JpdHMiID4mNjsgfQorY2FzZSAkYWNfY3Zfc3lzX2ZpbGVfb2Zmc2V0X2JpdHMgaW4gIygKKyAgbm8gfCB1bmtub3duKSA7OworICAqKQorY2F0ID4+Y29uZmRlZnMuaCA8PF9BQ0VPRgorI2RlZmluZSBfRklMRV9PRkZTRVRfQklUUyAkYWNfY3Zfc3lzX2ZpbGVfb2Zmc2V0X2JpdHMKK19BQ0VPRgorOzsKK2VzYWMKK3JtIC1yZiBjb25mdGVzdCoKKyAgaWYgdGVzdCAkYWNfY3Zfc3lzX2ZpbGVfb2Zmc2V0X2JpdHMgPSB1bmtub3duOyB0aGVuCisgICAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBjaGVja2luZyBmb3IgX0xBUkdFX0ZJTEVTIHZhbHVlIG5lZWRlZCBmb3IgbGFyZ2UgZmlsZXMiID4mNQorJGFzX2VjaG9fbiAiY2hlY2tpbmcgZm9yIF9MQVJHRV9GSUxFUyB2YWx1ZSBuZWVkZWQgZm9yIGxhcmdlIGZpbGVzLi4uICIgPiY2OyB9CitpZiAke2FjX2N2X3N5c19sYXJnZV9maWxlcys6fSBmYWxzZTsgdGhlbiA6CisgICRhc19lY2hvX24gIihjYWNoZWQpICIgPiY2CitlbHNlCisgIHdoaWxlIDo7IGRvCisgIGNhdCBjb25mZGVmcy5oIC0gPDxfQUNFT0YgPmNvbmZ0ZXN0LiRhY19leHQKKy8qIGVuZCBjb25mZGVmcy5oLiAgKi8KKyNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KKyAvKiBDaGVjayB0aGF0IG9mZl90IGNhbiByZXByZXNlbnQgMioqNjMgLSAxIGNvcnJlY3RseS4KKyAgICBXZSBjYW4ndCBzaW1wbHkgZGVmaW5lIExBUkdFX09GRl9UIHRvIGJlIDkyMjMzNzIwMzY4NTQ3NzU4MDcsCisgICAgc2luY2Ugc29tZSBDKysgY29tcGlsZXJzIG1hc3F1ZXJhZGluZyBhcyBDIGNvbXBpbGVycworICAgIGluY29ycmVjdGx5IHJlamVjdCA5MjIzMzcyMDM2ODU0Nzc1ODA3LiAgKi8KKyNkZWZpbmUgTEFSR0VfT0ZGX1QgKCgob2ZmX3QpIDEgPDwgNjIpIC0gMSArICgob2ZmX3QpIDEgPDwgNjIpKQorICBpbnQgb2ZmX3RfaXNfbGFyZ2VbKExBUkdFX09GRl9UICUgMjE0NzQ4MzYyOSA9PSA3MjEKKwkJICAgICAgICYmIExBUkdFX09GRl9UICUgMjE0NzQ4MzY0NyA9PSAxKQorCQkgICAgICA/IDEgOiAtMV07CitpbnQKK21haW4gKCkKK3sKKworICA7CisgIHJldHVybiAwOworfQorX0FDRU9GCitpZiBhY19mbl9jX3RyeV9jb21waWxlICIkTElORU5PIjsgdGhlbiA6CisgIGFjX2N2X3N5c19sYXJnZV9maWxlcz1ubzsgYnJlYWsKK2ZpCitybSAtZiBjb3JlIGNvbmZ0ZXN0LmVyciBjb25mdGVzdC4kYWNfb2JqZXh0IGNvbmZ0ZXN0LiRhY19leHQKKyAgY2F0IGNvbmZkZWZzLmggLSA8PF9BQ0VPRiA+Y29uZnRlc3QuJGFjX2V4dAorLyogZW5kIGNvbmZkZWZzLmguICAqLworI2RlZmluZSBfTEFSR0VfRklMRVMgMQorI2luY2x1ZGUgPHN5cy90eXBlcy5oPgorIC8qIENoZWNrIHRoYXQgb2ZmX3QgY2FuIHJlcHJlc2VudCAyKio2MyAtIDEgY29ycmVjdGx5LgorICAgIFdlIGNhbid0IHNpbXBseSBkZWZpbmUgTEFSR0VfT0ZGX1QgdG8gYmUgOTIyMzM3MjAzNjg1NDc3NTgwNywKKyAgICBzaW5jZSBzb21lIEMrKyBjb21waWxlcnMgbWFzcXVlcmFkaW5nIGFzIEMgY29tcGlsZXJzCisgICAgaW5jb3JyZWN0bHkgcmVqZWN0IDkyMjMzNzIwMzY4NTQ3NzU4MDcuICAqLworI2RlZmluZSBMQVJHRV9PRkZfVCAoKChvZmZfdCkgMSA8PCA2MikgLSAxICsgKChvZmZfdCkgMSA8PCA2MikpCisgIGludCBvZmZfdF9pc19sYXJnZVsoTEFSR0VfT0ZGX1QgJSAyMTQ3NDgzNjI5ID09IDcyMQorCQkgICAgICAgJiYgTEFSR0VfT0ZGX1QgJSAyMTQ3NDgzNjQ3ID09IDEpCisJCSAgICAgID8gMSA6IC0xXTsKK2ludAorbWFpbiAoKQoreworCisgIDsKKyAgcmV0dXJuIDA7Cit9CitfQUNFT0YKK2lmIGFjX2ZuX2NfdHJ5X2NvbXBpbGUgIiRMSU5FTk8iOyB0aGVuIDoKKyAgYWNfY3Zfc3lzX2xhcmdlX2ZpbGVzPTE7IGJyZWFrCitmaQorcm0gLWYgY29yZSBjb25mdGVzdC5lcnIgY29uZnRlc3QuJGFjX29iamV4dCBjb25mdGVzdC4kYWNfZXh0CisgIGFjX2N2X3N5c19sYXJnZV9maWxlcz11bmtub3duCisgIGJyZWFrCitkb25lCitmaQoreyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6ICRhY19jdl9zeXNfbGFyZ2VfZmlsZXMiID4mNQorJGFzX2VjaG8gIiRhY19jdl9zeXNfbGFyZ2VfZmlsZXMiID4mNjsgfQorY2FzZSAkYWNfY3Zfc3lzX2xhcmdlX2ZpbGVzIGluICMoCisgIG5vIHwgdW5rbm93bikgOzsKKyAgKikKK2NhdCA+PmNvbmZkZWZzLmggPDxfQUNFT0YKKyNkZWZpbmUgX0xBUkdFX0ZJTEVTICRhY19jdl9zeXNfbGFyZ2VfZmlsZXMKK19BQ0VPRgorOzsKK2VzYWMKK3JtIC1yZiBjb25mdGVzdCoKKyAgZmkKK2ZpCisKKworIyBDaGVja3MgZm9yIGxpYnJhcmllcy4KKworCisKKworIyBDaGVjayB3aGV0aGVyIC0td2l0aC16bGliIHdhcyBnaXZlbi4KK2lmIHRlc3QgIiR7d2l0aF96bGliK3NldH0iID0gc2V0OyB0aGVuIDoKKyAgd2l0aHZhbD0kd2l0aF96bGliOworZmkKKworICBpZiB0ZXN0ICJ4JHdpdGhfemxpYiIgIT0gInhubyI7IHRoZW4KKyAgICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIGZvciBnemRvcGVuIGluIC1seiIgPiY1CiskYXNfZWNob19uICJjaGVja2luZyBmb3IgZ3pkb3BlbiBpbiAtbHouLi4gIiA+JjY7IH0KK2lmICR7YWNfY3ZfbGliX3pfZ3pkb3Blbis6fSBmYWxzZTsgdGhlbiA6CisgICRhc19lY2hvX24gIihjYWNoZWQpICIgPiY2CitlbHNlCisgIGFjX2NoZWNrX2xpYl9zYXZlX0xJQlM9JExJQlMKK0xJQlM9Ii1seiAgJExJQlMiCitjYXQgY29uZmRlZnMuaCAtIDw8X0FDRU9GID5jb25mdGVzdC4kYWNfZXh0CisvKiBlbmQgY29uZmRlZnMuaC4gICovCisKKy8qIE92ZXJyaWRlIGFueSBHQ0MgaW50ZXJuYWwgcHJvdG90eXBlIHRvIGF2b2lkIGFuIGVycm9yLgorICAgVXNlIGNoYXIgYmVjYXVzZSBpbnQgbWlnaHQgbWF0Y2ggdGhlIHJldHVybiB0eXBlIG9mIGEgR0NDCisgICBidWlsdGluIGFuZCB0aGVuIGl0cyBhcmd1bWVudCBwcm90b3R5cGUgd291bGQgc3RpbGwgYXBwbHkuICAqLworI2lmZGVmIF9fY3BsdXNwbHVzCitleHRlcm4gIkMiCisjZW5kaWYKK2NoYXIgZ3pkb3BlbiAoKTsKK2ludAorbWFpbiAoKQoreworcmV0dXJuIGd6ZG9wZW4gKCk7CisgIDsKKyAgcmV0dXJuIDA7Cit9CitfQUNFT0YKK2lmIGFjX2ZuX2NfdHJ5X2xpbmsgIiRMSU5FTk8iOyB0aGVuIDoKKyAgYWNfY3ZfbGliX3pfZ3pkb3Blbj15ZXMKK2Vsc2UKKyAgYWNfY3ZfbGliX3pfZ3pkb3Blbj1ubworZmkKK3JtIC1mIGNvcmUgY29uZnRlc3QuZXJyIGNvbmZ0ZXN0LiRhY19vYmpleHQgXAorICAgIGNvbmZ0ZXN0JGFjX2V4ZWV4dCBjb25mdGVzdC4kYWNfZXh0CitMSUJTPSRhY19jaGVja19saWJfc2F2ZV9MSUJTCitmaQoreyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6ICRhY19jdl9saWJfel9nemRvcGVuIiA+JjUKKyRhc19lY2hvICIkYWNfY3ZfbGliX3pfZ3pkb3BlbiIgPiY2OyB9CitpZiB0ZXN0ICJ4JGFjX2N2X2xpYl96X2d6ZG9wZW4iID0geHllczsgdGhlbiA6CisKKworJGFzX2VjaG8gIiNkZWZpbmUgV0lUSF9aTElCIDEiID4+Y29uZmRlZnMuaAorCisgICAgICBpZiB0ZXN0ICJ4JHdpdGhfemxpYiIgPSAieHN0YXRpYyI7IHRoZW4KKyAgICAgICAgZHBrZ196bGliX2xpYnM9Ii1XbCwtQnN0YXRpYyAtbHogLVdsLC1CZHluYW1pYyIKKyAgICAgIGVsc2UKKyAgICAgICAgZHBrZ196bGliX2xpYnM9Ii1seiIKKyAgICAgIGZpCisgICAgICBaTElCX0xJQlM9IiR7WkxJQl9MSUJTOiskWkxJQl9MSUJTIH0kZHBrZ196bGliX2xpYnMiCisgICAgICB3aXRoX3psaWI9InllcyIKKworZWxzZQorCisgICAgICBpZiB0ZXN0IC1uICIkd2l0aF96bGliIjsgdGhlbgorICAgICAgICB7IHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogZXJyb3I6IGluIFxgJGFjX3B3ZCc6IiA+JjUKKyRhc19lY2hvICIkYXNfbWU6IGVycm9yOiBpbiBcYCRhY19wd2QnOiIgPiYyO30KK2FzX2ZuX2Vycm9yICQ/ICJ6bGliIGxpYnJhcnkgbm90IGZvdW5kCitTZWUgXGBjb25maWcubG9nJyBmb3IgbW9yZSBkZXRhaWxzIiAiJExJTkVOTyIgNTsgfQorICAgICAgZmkKKworZmkKKworCisgICAgYWNfZm5fY19jaGVja19oZWFkZXJfbW9uZ3JlbCAiJExJTkVOTyIgInpsaWIuaCIgImFjX2N2X2hlYWRlcl96bGliX2giICIkYWNfaW5jbHVkZXNfZGVmYXVsdCIKK2lmIHRlc3QgIngkYWNfY3ZfaGVhZGVyX3psaWJfaCIgPSB4eWVzOyB0aGVuIDoKKworZWxzZQorCisgICAgICBpZiB0ZXN0IC1uICIkd2l0aF96bGliIjsgdGhlbgorICAgICAgICB7IHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogZXJyb3I6IGluIFxgJGFjX3B3ZCc6IiA+JjUKKyRhc19lY2hvICIkYXNfbWU6IGVycm9yOiBpbiBcYCRhY19wd2QnOiIgPiYyO30KK2FzX2ZuX2Vycm9yICQ/ICJ6bGliIGhlYWRlciBub3QgZm91bmQKK1NlZSBcYGNvbmZpZy5sb2cnIGZvciBtb3JlIGRldGFpbHMiICIkTElORU5PIiA1OyB9CisgICAgICBmaQorCitmaQorCisKKyAgZmkKKworCisKKworCisKKyMgQ2hlY2sgd2hldGhlciAtLXdpdGgtYnoyIHdhcyBnaXZlbi4KK2lmIHRlc3QgIiR7d2l0aF9iejIrc2V0fSIgPSBzZXQ7IHRoZW4gOgorICB3aXRodmFsPSR3aXRoX2J6MjsKK2ZpCisKKyAgaWYgdGVzdCAieCR3aXRoX2J6MiIgIT0gInhubyI7IHRoZW4KKyAgICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIGZvciBCWjJfYnpkb3BlbiBpbiAtbGJ6MiIgPiY1CiskYXNfZWNob19uICJjaGVja2luZyBmb3IgQloyX2J6ZG9wZW4gaW4gLWxiejIuLi4gIiA+JjY7IH0KK2lmICR7YWNfY3ZfbGliX2J6Ml9CWjJfYnpkb3Blbis6fSBmYWxzZTsgdGhlbiA6CisgICRhc19lY2hvX24gIihjYWNoZWQpICIgPiY2CitlbHNlCisgIGFjX2NoZWNrX2xpYl9zYXZlX0xJQlM9JExJQlMKK0xJQlM9Ii1sYnoyICAkTElCUyIKK2NhdCBjb25mZGVmcy5oIC0gPDxfQUNFT0YgPmNvbmZ0ZXN0LiRhY19leHQKKy8qIGVuZCBjb25mZGVmcy5oLiAgKi8KKworLyogT3ZlcnJpZGUgYW55IEdDQyBpbnRlcm5hbCBwcm90b3R5cGUgdG8gYXZvaWQgYW4gZXJyb3IuCisgICBVc2UgY2hhciBiZWNhdXNlIGludCBtaWdodCBtYXRjaCB0aGUgcmV0dXJuIHR5cGUgb2YgYSBHQ0MKKyAgIGJ1aWx0aW4gYW5kIHRoZW4gaXRzIGFyZ3VtZW50IHByb3RvdHlwZSB3b3VsZCBzdGlsbCBhcHBseS4gICovCisjaWZkZWYgX19jcGx1c3BsdXMKK2V4dGVybiAiQyIKKyNlbmRpZgorY2hhciBCWjJfYnpkb3BlbiAoKTsKK2ludAorbWFpbiAoKQoreworcmV0dXJuIEJaMl9iemRvcGVuICgpOworICA7CisgIHJldHVybiAwOworfQorX0FDRU9GCitpZiBhY19mbl9jX3RyeV9saW5rICIkTElORU5PIjsgdGhlbiA6CisgIGFjX2N2X2xpYl9iejJfQloyX2J6ZG9wZW49eWVzCitlbHNlCisgIGFjX2N2X2xpYl9iejJfQloyX2J6ZG9wZW49bm8KK2ZpCitybSAtZiBjb3JlIGNvbmZ0ZXN0LmVyciBjb25mdGVzdC4kYWNfb2JqZXh0IFwKKyAgICBjb25mdGVzdCRhY19leGVleHQgY29uZnRlc3QuJGFjX2V4dAorTElCUz0kYWNfY2hlY2tfbGliX3NhdmVfTElCUworZmkKK3sgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiAkYWNfY3ZfbGliX2J6Ml9CWjJfYnpkb3BlbiIgPiY1CiskYXNfZWNobyAiJGFjX2N2X2xpYl9iejJfQloyX2J6ZG9wZW4iID4mNjsgfQoraWYgdGVzdCAieCRhY19jdl9saWJfYnoyX0JaMl9iemRvcGVuIiA9IHh5ZXM7IHRoZW4gOgorCisKKyRhc19lY2hvICIjZGVmaW5lIFdJVEhfQloyIDEiID4+Y29uZmRlZnMuaAorCisgICAgICBpZiB0ZXN0ICJ4JHdpdGhfYnoyIiA9ICJ4c3RhdGljIjsgdGhlbgorICAgICAgICBkcGtnX2J6Ml9saWJzPSItV2wsLUJzdGF0aWMgLWxiejIgLVdsLC1CZHluYW1pYyIKKyAgICAgIGVsc2UKKyAgICAgICAgZHBrZ19iejJfbGlicz0iLWxiejIiCisgICAgICBmaQorICAgICAgQloyX0xJQlM9IiR7QloyX0xJQlM6KyRCWjJfTElCUyB9JGRwa2dfYnoyX2xpYnMiCisgICAgICB3aXRoX2J6Mj0ieWVzIgorCitlbHNlCisKKyAgICAgIGlmIHRlc3QgLW4gIiR3aXRoX2J6MiI7IHRoZW4KKyAgICAgICAgeyB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGVycm9yOiBpbiBcYCRhY19wd2QnOiIgPiY1CiskYXNfZWNobyAiJGFzX21lOiBlcnJvcjogaW4gXGAkYWNfcHdkJzoiID4mMjt9Cithc19mbl9lcnJvciAkPyAiYnoyIGxpYnJhcnkgbm90IGZvdW5kCitTZWUgXGBjb25maWcubG9nJyBmb3IgbW9yZSBkZXRhaWxzIiAiJExJTkVOTyIgNTsgfQorICAgICAgZmkKKworZmkKKworCisgICAgYWNfZm5fY19jaGVja19oZWFkZXJfbW9uZ3JlbCAiJExJTkVOTyIgImJ6bGliLmgiICJhY19jdl9oZWFkZXJfYnpsaWJfaCIgIiRhY19pbmNsdWRlc19kZWZhdWx0IgoraWYgdGVzdCAieCRhY19jdl9oZWFkZXJfYnpsaWJfaCIgPSB4eWVzOyB0aGVuIDoKKworZWxzZQorCisgICAgICBpZiB0ZXN0IC1uICIkd2l0aF9iejIiOyB0aGVuCisgICAgICAgIHsgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBlcnJvcjogaW4gXGAkYWNfcHdkJzoiID4mNQorJGFzX2VjaG8gIiRhc19tZTogZXJyb3I6IGluIFxgJGFjX3B3ZCc6IiA+JjI7fQorYXNfZm5fZXJyb3IgJD8gImJ6MiBoZWFkZXIgbm90IGZvdW5kCitTZWUgXGBjb25maWcubG9nJyBmb3IgbW9yZSBkZXRhaWxzIiAiJExJTkVOTyIgNTsgfQorICAgICAgZmkKKworZmkKKworCisgIGZpCisKKworCisKKworCisKKworCitpZiB0ZXN0ICJ4JGFjX2N2X2Vudl9QS0dfQ09ORklHX3NldCIgIT0gInhzZXQiOyB0aGVuCisJaWYgdGVzdCAtbiAiJGFjX3Rvb2xfcHJlZml4IjsgdGhlbgorICAjIEV4dHJhY3QgdGhlIGZpcnN0IHdvcmQgb2YgIiR7YWNfdG9vbF9wcmVmaXh9cGtnLWNvbmZpZyIsIHNvIGl0IGNhbiBiZSBhIHByb2dyYW0gbmFtZSB3aXRoIGFyZ3MuCitzZXQgZHVtbXkgJHthY190b29sX3ByZWZpeH1wa2ctY29uZmlnOyBhY193b3JkPSQyCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIGZvciAkYWNfd29yZCIgPiY1CiskYXNfZWNob19uICJjaGVja2luZyBmb3IgJGFjX3dvcmQuLi4gIiA+JjY7IH0KK2lmICR7YWNfY3ZfcGF0aF9QS0dfQ09ORklHKzp9IGZhbHNlOyB0aGVuIDoKKyAgJGFzX2VjaG9fbiAiKGNhY2hlZCkgIiA+JjYKK2Vsc2UKKyAgY2FzZSAkUEtHX0NPTkZJRyBpbgorICBbXFwvXSogfCA/OltcXC9dKikKKyAgYWNfY3ZfcGF0aF9QS0dfQ09ORklHPSIkUEtHX0NPTkZJRyIgIyBMZXQgdGhlIHVzZXIgb3ZlcnJpZGUgdGhlIHRlc3Qgd2l0aCBhIHBhdGguCisgIDs7CisgICopCisgIGFzX3NhdmVfSUZTPSRJRlM7IElGUz0kUEFUSF9TRVBBUkFUT1IKK2ZvciBhc19kaXIgaW4gJFBBVEgKK2RvCisgIElGUz0kYXNfc2F2ZV9JRlMKKyAgdGVzdCAteiAiJGFzX2RpciIgJiYgYXNfZGlyPS4KKyAgICBmb3IgYWNfZXhlY19leHQgaW4gJycgJGFjX2V4ZWN1dGFibGVfZXh0ZW5zaW9uczsgZG8KKyAgaWYgeyB0ZXN0IC1mICIkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IiAmJiAkYXNfdGVzdF94ICIkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IjsgfTsgdGhlbgorICAgIGFjX2N2X3BhdGhfUEtHX0NPTkZJRz0iJGFzX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCIKKyAgICAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBmb3VuZCAkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IiA+JjUKKyAgICBicmVhayAyCisgIGZpCitkb25lCisgIGRvbmUKK0lGUz0kYXNfc2F2ZV9JRlMKKworICA7OworZXNhYworZmkKK1BLR19DT05GSUc9JGFjX2N2X3BhdGhfUEtHX0NPTkZJRworaWYgdGVzdCAtbiAiJFBLR19DT05GSUciOyB0aGVuCisgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiAkUEtHX0NPTkZJRyIgPiY1CiskYXNfZWNobyAiJFBLR19DT05GSUciID4mNjsgfQorZWxzZQorICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogbm8iID4mNQorJGFzX2VjaG8gIm5vIiA+JjY7IH0KK2ZpCisKKworZmkKK2lmIHRlc3QgLXogIiRhY19jdl9wYXRoX1BLR19DT05GSUciOyB0aGVuCisgIGFjX3B0X1BLR19DT05GSUc9JFBLR19DT05GSUcKKyAgIyBFeHRyYWN0IHRoZSBmaXJzdCB3b3JkIG9mICJwa2ctY29uZmlnIiwgc28gaXQgY2FuIGJlIGEgcHJvZ3JhbSBuYW1lIHdpdGggYXJncy4KK3NldCBkdW1teSBwa2ctY29uZmlnOyBhY193b3JkPSQyCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIGZvciAkYWNfd29yZCIgPiY1CiskYXNfZWNob19uICJjaGVja2luZyBmb3IgJGFjX3dvcmQuLi4gIiA+JjY7IH0KK2lmICR7YWNfY3ZfcGF0aF9hY19wdF9QS0dfQ09ORklHKzp9IGZhbHNlOyB0aGVuIDoKKyAgJGFzX2VjaG9fbiAiKGNhY2hlZCkgIiA+JjYKK2Vsc2UKKyAgY2FzZSAkYWNfcHRfUEtHX0NPTkZJRyBpbgorICBbXFwvXSogfCA/OltcXC9dKikKKyAgYWNfY3ZfcGF0aF9hY19wdF9QS0dfQ09ORklHPSIkYWNfcHRfUEtHX0NPTkZJRyIgIyBMZXQgdGhlIHVzZXIgb3ZlcnJpZGUgdGhlIHRlc3Qgd2l0aCBhIHBhdGguCisgIDs7CisgICopCisgIGFzX3NhdmVfSUZTPSRJRlM7IElGUz0kUEFUSF9TRVBBUkFUT1IKK2ZvciBhc19kaXIgaW4gJFBBVEgKK2RvCisgIElGUz0kYXNfc2F2ZV9JRlMKKyAgdGVzdCAteiAiJGFzX2RpciIgJiYgYXNfZGlyPS4KKyAgICBmb3IgYWNfZXhlY19leHQgaW4gJycgJGFjX2V4ZWN1dGFibGVfZXh0ZW5zaW9uczsgZG8KKyAgaWYgeyB0ZXN0IC1mICIkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IiAmJiAkYXNfdGVzdF94ICIkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IjsgfTsgdGhlbgorICAgIGFjX2N2X3BhdGhfYWNfcHRfUEtHX0NPTkZJRz0iJGFzX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCIKKyAgICAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBmb3VuZCAkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IiA+JjUKKyAgICBicmVhayAyCisgIGZpCitkb25lCisgIGRvbmUKK0lGUz0kYXNfc2F2ZV9JRlMKKworICA7OworZXNhYworZmkKK2FjX3B0X1BLR19DT05GSUc9JGFjX2N2X3BhdGhfYWNfcHRfUEtHX0NPTkZJRworaWYgdGVzdCAtbiAiJGFjX3B0X1BLR19DT05GSUciOyB0aGVuCisgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiAkYWNfcHRfUEtHX0NPTkZJRyIgPiY1CiskYXNfZWNobyAiJGFjX3B0X1BLR19DT05GSUciID4mNjsgfQorZWxzZQorICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogbm8iID4mNQorJGFzX2VjaG8gIm5vIiA+JjY7IH0KK2ZpCisKKyAgaWYgdGVzdCAieCRhY19wdF9QS0dfQ09ORklHIiA9IHg7IHRoZW4KKyAgICBQS0dfQ09ORklHPSIiCisgIGVsc2UKKyAgICBjYXNlICRjcm9zc19jb21waWxpbmc6JGFjX3Rvb2xfd2FybmVkIGluCit5ZXM6KQoreyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBXQVJOSU5HOiB1c2luZyBjcm9zcyB0b29scyBub3QgcHJlZml4ZWQgd2l0aCBob3N0IHRyaXBsZXQiID4mNQorJGFzX2VjaG8gIiRhc19tZTogV0FSTklORzogdXNpbmcgY3Jvc3MgdG9vbHMgbm90IHByZWZpeGVkIHdpdGggaG9zdCB0cmlwbGV0IiA+JjI7fQorYWNfdG9vbF93YXJuZWQ9eWVzIDs7Citlc2FjCisgICAgUEtHX0NPTkZJRz0kYWNfcHRfUEtHX0NPTkZJRworICBmaQorZWxzZQorICBQS0dfQ09ORklHPSIkYWNfY3ZfcGF0aF9QS0dfQ09ORklHIgorZmkKKworZmkKK2lmIHRlc3QgLW4gIiRQS0dfQ09ORklHIjsgdGhlbgorCV9wa2dfbWluX3ZlcnNpb249MC45LjAKKwl7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIHBrZy1jb25maWcgaXMgYXQgbGVhc3QgdmVyc2lvbiAkX3BrZ19taW5fdmVyc2lvbiIgPiY1CiskYXNfZWNob19uICJjaGVja2luZyBwa2ctY29uZmlnIGlzIGF0IGxlYXN0IHZlcnNpb24gJF9wa2dfbWluX3ZlcnNpb24uLi4gIiA+JjY7IH0KKwlpZiAkUEtHX0NPTkZJRyAtLWF0bGVhc3QtcGtnY29uZmlnLXZlcnNpb24gJF9wa2dfbWluX3ZlcnNpb247IHRoZW4KKwkJeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6IHllcyIgPiY1CiskYXNfZWNobyAieWVzIiA+JjY7IH0KKwllbHNlCisJCXsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiBubyIgPiY1CiskYXNfZWNobyAibm8iID4mNjsgfQorCQlQS0dfQ09ORklHPSIiCisJZmkKK2ZpCisKKworCisjIENoZWNrIHdoZXRoZXIgLS13aXRoLXNlbGludXggd2FzIGdpdmVuLgoraWYgdGVzdCAiJHt3aXRoX3NlbGludXgrc2V0fSIgPSBzZXQ7IHRoZW4gOgorICB3aXRodmFsPSR3aXRoX3NlbGludXg7CitmaQorCitpZiB0ZXN0ICJ4JHdpdGhfc2VsaW51eCIgIT0gInhubyI7IHRoZW4KKwl7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIGZvciBpc19zZWxpbnV4X2VuYWJsZWQgaW4gLWxzZWxpbnV4IiA+JjUKKyRhc19lY2hvX24gImNoZWNraW5nIGZvciBpc19zZWxpbnV4X2VuYWJsZWQgaW4gLWxzZWxpbnV4Li4uICIgPiY2OyB9CitpZiAke2FjX2N2X2xpYl9zZWxpbnV4X2lzX3NlbGludXhfZW5hYmxlZCs6fSBmYWxzZTsgdGhlbiA6CisgICRhc19lY2hvX24gIihjYWNoZWQpICIgPiY2CitlbHNlCisgIGFjX2NoZWNrX2xpYl9zYXZlX0xJQlM9JExJQlMKK0xJQlM9Ii1sc2VsaW51eCAgJExJQlMiCitjYXQgY29uZmRlZnMuaCAtIDw8X0FDRU9GID5jb25mdGVzdC4kYWNfZXh0CisvKiBlbmQgY29uZmRlZnMuaC4gICovCisKKy8qIE92ZXJyaWRlIGFueSBHQ0MgaW50ZXJuYWwgcHJvdG90eXBlIHRvIGF2b2lkIGFuIGVycm9yLgorICAgVXNlIGNoYXIgYmVjYXVzZSBpbnQgbWlnaHQgbWF0Y2ggdGhlIHJldHVybiB0eXBlIG9mIGEgR0NDCisgICBidWlsdGluIGFuZCB0aGVuIGl0cyBhcmd1bWVudCBwcm90b3R5cGUgd291bGQgc3RpbGwgYXBwbHkuICAqLworI2lmZGVmIF9fY3BsdXNwbHVzCitleHRlcm4gIkMiCisjZW5kaWYKK2NoYXIgaXNfc2VsaW51eF9lbmFibGVkICgpOworaW50CittYWluICgpCit7CityZXR1cm4gaXNfc2VsaW51eF9lbmFibGVkICgpOworICA7CisgIHJldHVybiAwOworfQorX0FDRU9GCitpZiBhY19mbl9jX3RyeV9saW5rICIkTElORU5PIjsgdGhlbiA6CisgIGFjX2N2X2xpYl9zZWxpbnV4X2lzX3NlbGludXhfZW5hYmxlZD15ZXMKK2Vsc2UKKyAgYWNfY3ZfbGliX3NlbGludXhfaXNfc2VsaW51eF9lbmFibGVkPW5vCitmaQorcm0gLWYgY29yZSBjb25mdGVzdC5lcnIgY29uZnRlc3QuJGFjX29iamV4dCBcCisgICAgY29uZnRlc3QkYWNfZXhlZXh0IGNvbmZ0ZXN0LiRhY19leHQKK0xJQlM9JGFjX2NoZWNrX2xpYl9zYXZlX0xJQlMKK2ZpCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogJGFjX2N2X2xpYl9zZWxpbnV4X2lzX3NlbGludXhfZW5hYmxlZCIgPiY1CiskYXNfZWNobyAiJGFjX2N2X2xpYl9zZWxpbnV4X2lzX3NlbGludXhfZW5hYmxlZCIgPiY2OyB9CitpZiB0ZXN0ICJ4JGFjX2N2X2xpYl9zZWxpbnV4X2lzX3NlbGludXhfZW5hYmxlZCIgPSB4eWVzOyB0aGVuIDoKKworJGFzX2VjaG8gIiNkZWZpbmUgV0lUSF9TRUxJTlVYIDEiID4+Y29uZmRlZnMuaAorCisJCWlmIHRlc3QgLW4gIiRQS0dfQ09ORklHIiAmJiBcCisgICAgeyB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IFwkUEtHX0NPTkZJRyAtLWV4aXN0cyAtLXByaW50LWVycm9ycyBcImxpYnNlbGludXhcIiI7IH0gPiY1CisgICgkUEtHX0NPTkZJRyAtLWV4aXN0cyAtLXByaW50LWVycm9ycyAibGlic2VsaW51eCIpIDI+JjUKKyAgYWNfc3RhdHVzPSQ/CisgICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IFwkPyA9ICRhY19zdGF0dXMiID4mNQorICB0ZXN0ICRhY19zdGF0dXMgPSAwOyB9OyB0aGVuCisKKwkJCWlmIHRlc3QgIngkd2l0aF9zZWxpbnV4IiA9ICJ4c3RhdGljIjsgdGhlbgorCQkJCWRwa2dfc2VsaW51eF9saWJzPSItV2wsLUJzdGF0aWMgIiQoJFBLR19DT05GSUcgLS1zdGF0aWMgLS1saWJzIGxpYnNlbGludXgpIiAtV2wsLUJkeW5hbWljIgorCQkJZWxzZQorCQkJCWRwa2dfc2VsaW51eF9saWJzPSQoJFBLR19DT05GSUcgLS1saWJzIGxpYnNlbGludXgpCisJCQlmaQorCitlbHNlCisKKwkJCWlmIHRlc3QgIngkd2l0aF9zZWxpbnV4IiA9ICJ4c3RhdGljIjsgdGhlbgorCQkJCWRwa2dfc2VsaW51eF9saWJzPSItV2wsLUJzdGF0aWMgLWxzZWxpbnV4IC1sc2Vwb2wgLVdsLC1CZHluYW1pYyIKKwkJCWVsc2UKKwkJCQlkcGtnX3NlbGludXhfbGlicz0iLWxzZWxpbnV4IgorCQkJZmkKKworZmkKKwkJIFNFTElOVVhfTElCUz0iJHtTRUxJTlVYX0xJQlM6KyRTRUxJTlVYX0xJQlMgfSRkcGtnX3NlbGludXhfbGlicyIKKwkJIHdpdGhfc2VsaW51eD0ieWVzIgorZWxzZQorICBpZiB0ZXN0IC1uICIkd2l0aF9zZWxpbnV4IjsgdGhlbgorCQkJeyB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGVycm9yOiBpbiBcYCRhY19wd2QnOiIgPiY1CiskYXNfZWNobyAiJGFzX21lOiBlcnJvcjogaW4gXGAkYWNfcHdkJzoiID4mMjt9Cithc19mbl9lcnJvciAkPyAic2VsaW51eCBsaWJyYXJ5IG5vdCBmb3VuZAorU2VlIFxgY29uZmlnLmxvZycgZm9yIG1vcmUgZGV0YWlscyIgIiRMSU5FTk8iIDU7IH0KKwkJIGZpCitmaQorCisKKwlhY19mbl9jX2NoZWNrX2hlYWRlcl9tb25ncmVsICIkTElORU5PIiAic2VsaW51eC9zZWxpbnV4LmgiICJhY19jdl9oZWFkZXJfc2VsaW51eF9zZWxpbnV4X2giICIkYWNfaW5jbHVkZXNfZGVmYXVsdCIKK2lmIHRlc3QgIngkYWNfY3ZfaGVhZGVyX3NlbGludXhfc2VsaW51eF9oIiA9IHh5ZXM7IHRoZW4gOgorCitlbHNlCisgIGlmIHRlc3QgLW4gIiR3aXRoX3NlbGludXgiOyB0aGVuCisJCQl7IHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogZXJyb3I6IGluIFxgJGFjX3B3ZCc6IiA+JjUKKyRhc19lY2hvICIkYXNfbWU6IGVycm9yOiBpbiBcYCRhY19wd2QnOiIgPiYyO30KK2FzX2ZuX2Vycm9yICQ/ICJzZWxpbnV4IGhlYWRlciBub3QgZm91bmQKK1NlZSBcYGNvbmZpZy5sb2cnIGZvciBtb3JlIGRldGFpbHMiICIkTElORU5PIiA1OyB9CisJCSBmaQorZmkKKworCitmaQorCitpZiB0ZXN0ICJ4JGJ1aWxkX2RzZWxlY3QiID0gInh5ZXMiOyB0aGVuCisKKyAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBjaGVja2luZyB3aGV0aGVyIFVuaWNvZGUgaXMgcmVxdWVzdGVkIiA+JjUKKyRhc19lY2hvX24gImNoZWNraW5nIHdoZXRoZXIgVW5pY29kZSBpcyByZXF1ZXN0ZWQuLi4gIiA+JjY7IH0KKyAgICAjIENoZWNrIHdoZXRoZXIgLS1lbmFibGUtdW5pY29kZSB3YXMgZ2l2ZW4uCitpZiB0ZXN0ICIke2VuYWJsZV91bmljb2RlK3NldH0iID0gc2V0OyB0aGVuIDoKKyAgZW5hYmxldmFsPSRlbmFibGVfdW5pY29kZTsgVVNFX1VOSUNPREU9JGVuYWJsZXZhbAorZWxzZQorICBVU0VfVU5JQ09ERT15ZXMKK2ZpCisKKyAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6ICRVU0VfVU5JQ09ERSIgPiY1CiskYXNfZWNobyAiJFVTRV9VTklDT0RFIiA+JjY7IH0KKworCisKKworZm9yIGFjX2hlYWRlciBpbiBuY3Vyc2VzL25jdXJzZXMuaCBuY3Vyc2VzLmggY3Vyc2VzLmggbmN1cnNlcy90ZXJtLmggdGVybS5oCitkbyA6CisgIGFzX2FjX0hlYWRlcj1gJGFzX2VjaG8gImFjX2N2X2hlYWRlcl8kYWNfaGVhZGVyIiB8ICRhc190cl9zaGAKK2FjX2ZuX2NfY2hlY2tfaGVhZGVyX21vbmdyZWwgIiRMSU5FTk8iICIkYWNfaGVhZGVyIiAiJGFzX2FjX0hlYWRlciIgIiRhY19pbmNsdWRlc19kZWZhdWx0IgoraWYgZXZhbCB0ZXN0IFwieFwkIiRhc19hY19IZWFkZXIiXCIgPSB4InllcyI7IHRoZW4gOgorICBjYXQgPj5jb25mZGVmcy5oIDw8X0FDRU9GCisjZGVmaW5lIGAkYXNfZWNobyAiSEFWRV8kYWNfaGVhZGVyIiB8ICRhc190cl9jcHBgIDEKK19BQ0VPRgorIGhhdmVfY3Vyc2VzX2hlYWRlcj15ZXMKK2ZpCisKK2RvbmUKKworaWYgdGVzdCAieCRVU0VfVU5JQ09ERSIgPSAieHllcyI7IHRoZW4KKyAgZm9yIGFjX2hlYWRlciBpbiBuY3Vyc2Vzdy9uY3Vyc2VzLmggbmN1cnNlc3cvdGVybS5oCitkbyA6CisgIGFzX2FjX0hlYWRlcj1gJGFzX2VjaG8gImFjX2N2X2hlYWRlcl8kYWNfaGVhZGVyIiB8ICRhc190cl9zaGAKK2FjX2ZuX2NfY2hlY2tfaGVhZGVyX21vbmdyZWwgIiRMSU5FTk8iICIkYWNfaGVhZGVyIiAiJGFzX2FjX0hlYWRlciIgIiRhY19pbmNsdWRlc19kZWZhdWx0IgoraWYgZXZhbCB0ZXN0IFwieFwkIiRhc19hY19IZWFkZXIiXCIgPSB4InllcyI7IHRoZW4gOgorICBjYXQgPj5jb25mZGVmcy5oIDw8X0FDRU9GCisjZGVmaW5lIGAkYXNfZWNobyAiSEFWRV8kYWNfaGVhZGVyIiB8ICRhc190cl9jcHBgIDEKK19BQ0VPRgorIGhhdmVfY3Vyc2VzX2hlYWRlcj15ZXMKK2ZpCisKK2RvbmUKKworICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIGZvciBpbml0c2NyIGluIC1sbmN1cnNlc3ciID4mNQorJGFzX2VjaG9fbiAiY2hlY2tpbmcgZm9yIGluaXRzY3IgaW4gLWxuY3Vyc2Vzdy4uLiAiID4mNjsgfQoraWYgJHthY19jdl9saWJfbmN1cnNlc3dfaW5pdHNjcis6fSBmYWxzZTsgdGhlbiA6CisgICRhc19lY2hvX24gIihjYWNoZWQpICIgPiY2CitlbHNlCisgIGFjX2NoZWNrX2xpYl9zYXZlX0xJQlM9JExJQlMKK0xJQlM9Ii1sbmN1cnNlc3cgICRMSUJTIgorY2F0IGNvbmZkZWZzLmggLSA8PF9BQ0VPRiA+Y29uZnRlc3QuJGFjX2V4dAorLyogZW5kIGNvbmZkZWZzLmguICAqLworCisvKiBPdmVycmlkZSBhbnkgR0NDIGludGVybmFsIHByb3RvdHlwZSB0byBhdm9pZCBhbiBlcnJvci4KKyAgIFVzZSBjaGFyIGJlY2F1c2UgaW50IG1pZ2h0IG1hdGNoIHRoZSByZXR1cm4gdHlwZSBvZiBhIEdDQworICAgYnVpbHRpbiBhbmQgdGhlbiBpdHMgYXJndW1lbnQgcHJvdG90eXBlIHdvdWxkIHN0aWxsIGFwcGx5LiAgKi8KKyNpZmRlZiBfX2NwbHVzcGx1cworZXh0ZXJuICJDIgorI2VuZGlmCitjaGFyIGluaXRzY3IgKCk7CitpbnQKK21haW4gKCkKK3sKK3JldHVybiBpbml0c2NyICgpOworICA7CisgIHJldHVybiAwOworfQorX0FDRU9GCitpZiBhY19mbl9jX3RyeV9saW5rICIkTElORU5PIjsgdGhlbiA6CisgIGFjX2N2X2xpYl9uY3Vyc2Vzd19pbml0c2NyPXllcworZWxzZQorICBhY19jdl9saWJfbmN1cnNlc3dfaW5pdHNjcj1ubworZmkKK3JtIC1mIGNvcmUgY29uZnRlc3QuZXJyIGNvbmZ0ZXN0LiRhY19vYmpleHQgXAorICAgIGNvbmZ0ZXN0JGFjX2V4ZWV4dCBjb25mdGVzdC4kYWNfZXh0CitMSUJTPSRhY19jaGVja19saWJfc2F2ZV9MSUJTCitmaQoreyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6ICRhY19jdl9saWJfbmN1cnNlc3dfaW5pdHNjciIgPiY1CiskYXNfZWNobyAiJGFjX2N2X2xpYl9uY3Vyc2Vzd19pbml0c2NyIiA+JjY7IH0KK2lmIHRlc3QgIngkYWNfY3ZfbGliX25jdXJzZXN3X2luaXRzY3IiID0geHllczsgdGhlbiA6CisgIENVUlNFU19MSUJTPSIke0NVUlNFU19MSUJTOiskQ1VSU0VTX0xJQlMgfS1sbmN1cnNlc3ciCitlbHNlCisKK3sgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgZm9yIGluaXRzY3IgaW4gLWxuY3Vyc2VzIiA+JjUKKyRhc19lY2hvX24gImNoZWNraW5nIGZvciBpbml0c2NyIGluIC1sbmN1cnNlcy4uLiAiID4mNjsgfQoraWYgJHthY19jdl9saWJfbmN1cnNlc19pbml0c2NyKzp9IGZhbHNlOyB0aGVuIDoKKyAgJGFzX2VjaG9fbiAiKGNhY2hlZCkgIiA+JjYKK2Vsc2UKKyAgYWNfY2hlY2tfbGliX3NhdmVfTElCUz0kTElCUworTElCUz0iLWxuY3Vyc2VzICAkTElCUyIKK2NhdCBjb25mZGVmcy5oIC0gPDxfQUNFT0YgPmNvbmZ0ZXN0LiRhY19leHQKKy8qIGVuZCBjb25mZGVmcy5oLiAgKi8KKworLyogT3ZlcnJpZGUgYW55IEdDQyBpbnRlcm5hbCBwcm90b3R5cGUgdG8gYXZvaWQgYW4gZXJyb3IuCisgICBVc2UgY2hhciBiZWNhdXNlIGludCBtaWdodCBtYXRjaCB0aGUgcmV0dXJuIHR5cGUgb2YgYSBHQ0MKKyAgIGJ1aWx0aW4gYW5kIHRoZW4gaXRzIGFyZ3VtZW50IHByb3RvdHlwZSB3b3VsZCBzdGlsbCBhcHBseS4gICovCisjaWZkZWYgX19jcGx1c3BsdXMKK2V4dGVybiAiQyIKKyNlbmRpZgorY2hhciBpbml0c2NyICgpOworaW50CittYWluICgpCit7CityZXR1cm4gaW5pdHNjciAoKTsKKyAgOworICByZXR1cm4gMDsKK30KK19BQ0VPRgoraWYgYWNfZm5fY190cnlfbGluayAiJExJTkVOTyI7IHRoZW4gOgorICBhY19jdl9saWJfbmN1cnNlc19pbml0c2NyPXllcworZWxzZQorICBhY19jdl9saWJfbmN1cnNlc19pbml0c2NyPW5vCitmaQorcm0gLWYgY29yZSBjb25mdGVzdC5lcnIgY29uZnRlc3QuJGFjX29iamV4dCBcCisgICAgY29uZnRlc3QkYWNfZXhlZXh0IGNvbmZ0ZXN0LiRhY19leHQKK0xJQlM9JGFjX2NoZWNrX2xpYl9zYXZlX0xJQlMKK2ZpCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogJGFjX2N2X2xpYl9uY3Vyc2VzX2luaXRzY3IiID4mNQorJGFzX2VjaG8gIiRhY19jdl9saWJfbmN1cnNlc19pbml0c2NyIiA+JjY7IH0KK2lmIHRlc3QgIngkYWNfY3ZfbGliX25jdXJzZXNfaW5pdHNjciIgPSB4eWVzOyB0aGVuIDoKKyAgQ1VSU0VTX0xJQlM9IiR7Q1VSU0VTX0xJQlM6KyRDVVJTRVNfTElCUyB9LWxuY3Vyc2VzIgorZWxzZQorICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIGZvciBpbml0c2NyIGluIC1sY3Vyc2VzIiA+JjUKKyRhc19lY2hvX24gImNoZWNraW5nIGZvciBpbml0c2NyIGluIC1sY3Vyc2VzLi4uICIgPiY2OyB9CitpZiAke2FjX2N2X2xpYl9jdXJzZXNfaW5pdHNjcis6fSBmYWxzZTsgdGhlbiA6CisgICRhc19lY2hvX24gIihjYWNoZWQpICIgPiY2CitlbHNlCisgIGFjX2NoZWNrX2xpYl9zYXZlX0xJQlM9JExJQlMKK0xJQlM9Ii1sY3Vyc2VzICAkTElCUyIKK2NhdCBjb25mZGVmcy5oIC0gPDxfQUNFT0YgPmNvbmZ0ZXN0LiRhY19leHQKKy8qIGVuZCBjb25mZGVmcy5oLiAgKi8KKworLyogT3ZlcnJpZGUgYW55IEdDQyBpbnRlcm5hbCBwcm90b3R5cGUgdG8gYXZvaWQgYW4gZXJyb3IuCisgICBVc2UgY2hhciBiZWNhdXNlIGludCBtaWdodCBtYXRjaCB0aGUgcmV0dXJuIHR5cGUgb2YgYSBHQ0MKKyAgIGJ1aWx0aW4gYW5kIHRoZW4gaXRzIGFyZ3VtZW50IHByb3RvdHlwZSB3b3VsZCBzdGlsbCBhcHBseS4gICovCisjaWZkZWYgX19jcGx1c3BsdXMKK2V4dGVybiAiQyIKKyNlbmRpZgorY2hhciBpbml0c2NyICgpOworaW50CittYWluICgpCit7CityZXR1cm4gaW5pdHNjciAoKTsKKyAgOworICByZXR1cm4gMDsKK30KK19BQ0VPRgoraWYgYWNfZm5fY190cnlfbGluayAiJExJTkVOTyI7IHRoZW4gOgorICBhY19jdl9saWJfY3Vyc2VzX2luaXRzY3I9eWVzCitlbHNlCisgIGFjX2N2X2xpYl9jdXJzZXNfaW5pdHNjcj1ubworZmkKK3JtIC1mIGNvcmUgY29uZnRlc3QuZXJyIGNvbmZ0ZXN0LiRhY19vYmpleHQgXAorICAgIGNvbmZ0ZXN0JGFjX2V4ZWV4dCBjb25mdGVzdC4kYWNfZXh0CitMSUJTPSRhY19jaGVja19saWJfc2F2ZV9MSUJTCitmaQoreyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6ICRhY19jdl9saWJfY3Vyc2VzX2luaXRzY3IiID4mNQorJGFzX2VjaG8gIiRhY19jdl9saWJfY3Vyc2VzX2luaXRzY3IiID4mNjsgfQoraWYgdGVzdCAieCRhY19jdl9saWJfY3Vyc2VzX2luaXRzY3IiID0geHllczsgdGhlbiA6CisgIENVUlNFU19MSUJTPSIke0NVUlNFU19MSUJTOiskQ1VSU0VTX0xJQlMgfS1sY3Vyc2VzIgorZWxzZQorICBhc19mbl9lcnJvciAkPyAibm8gY3Vyc2VzIGxpYnJhcnkgZm91bmQiICIkTElORU5PIiA1CitmaQorCitmaQorCitmaQorCitlbHNlCisKK3sgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgZm9yIGluaXRzY3IgaW4gLWxuY3Vyc2VzIiA+JjUKKyRhc19lY2hvX24gImNoZWNraW5nIGZvciBpbml0c2NyIGluIC1sbmN1cnNlcy4uLiAiID4mNjsgfQoraWYgJHthY19jdl9saWJfbmN1cnNlc19pbml0c2NyKzp9IGZhbHNlOyB0aGVuIDoKKyAgJGFzX2VjaG9fbiAiKGNhY2hlZCkgIiA+JjYKK2Vsc2UKKyAgYWNfY2hlY2tfbGliX3NhdmVfTElCUz0kTElCUworTElCUz0iLWxuY3Vyc2VzICAkTElCUyIKK2NhdCBjb25mZGVmcy5oIC0gPDxfQUNFT0YgPmNvbmZ0ZXN0LiRhY19leHQKKy8qIGVuZCBjb25mZGVmcy5oLiAgKi8KKworLyogT3ZlcnJpZGUgYW55IEdDQyBpbnRlcm5hbCBwcm90b3R5cGUgdG8gYXZvaWQgYW4gZXJyb3IuCisgICBVc2UgY2hhciBiZWNhdXNlIGludCBtaWdodCBtYXRjaCB0aGUgcmV0dXJuIHR5cGUgb2YgYSBHQ0MKKyAgIGJ1aWx0aW4gYW5kIHRoZW4gaXRzIGFyZ3VtZW50IHByb3RvdHlwZSB3b3VsZCBzdGlsbCBhcHBseS4gICovCisjaWZkZWYgX19jcGx1c3BsdXMKK2V4dGVybiAiQyIKKyNlbmRpZgorY2hhciBpbml0c2NyICgpOworaW50CittYWluICgpCit7CityZXR1cm4gaW5pdHNjciAoKTsKKyAgOworICByZXR1cm4gMDsKK30KK19BQ0VPRgoraWYgYWNfZm5fY190cnlfbGluayAiJExJTkVOTyI7IHRoZW4gOgorICBhY19jdl9saWJfbmN1cnNlc19pbml0c2NyPXllcworZWxzZQorICBhY19jdl9saWJfbmN1cnNlc19pbml0c2NyPW5vCitmaQorcm0gLWYgY29yZSBjb25mdGVzdC5lcnIgY29uZnRlc3QuJGFjX29iamV4dCBcCisgICAgY29uZnRlc3QkYWNfZXhlZXh0IGNvbmZ0ZXN0LiRhY19leHQKK0xJQlM9JGFjX2NoZWNrX2xpYl9zYXZlX0xJQlMKK2ZpCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogJGFjX2N2X2xpYl9uY3Vyc2VzX2luaXRzY3IiID4mNQorJGFzX2VjaG8gIiRhY19jdl9saWJfbmN1cnNlc19pbml0c2NyIiA+JjY7IH0KK2lmIHRlc3QgIngkYWNfY3ZfbGliX25jdXJzZXNfaW5pdHNjciIgPSB4eWVzOyB0aGVuIDoKKyAgQ1VSU0VTX0xJQlM9IiR7Q1VSU0VTX0xJQlM6KyRDVVJTRVNfTElCUyB9LWxuY3Vyc2VzIgorZWxzZQorICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIGZvciBpbml0c2NyIGluIC1sY3Vyc2VzIiA+JjUKKyRhc19lY2hvX24gImNoZWNraW5nIGZvciBpbml0c2NyIGluIC1sY3Vyc2VzLi4uICIgPiY2OyB9CitpZiAke2FjX2N2X2xpYl9jdXJzZXNfaW5pdHNjcis6fSBmYWxzZTsgdGhlbiA6CisgICRhc19lY2hvX24gIihjYWNoZWQpICIgPiY2CitlbHNlCisgIGFjX2NoZWNrX2xpYl9zYXZlX0xJQlM9JExJQlMKK0xJQlM9Ii1sY3Vyc2VzICAkTElCUyIKK2NhdCBjb25mZGVmcy5oIC0gPDxfQUNFT0YgPmNvbmZ0ZXN0LiRhY19leHQKKy8qIGVuZCBjb25mZGVmcy5oLiAgKi8KKworLyogT3ZlcnJpZGUgYW55IEdDQyBpbnRlcm5hbCBwcm90b3R5cGUgdG8gYXZvaWQgYW4gZXJyb3IuCisgICBVc2UgY2hhciBiZWNhdXNlIGludCBtaWdodCBtYXRjaCB0aGUgcmV0dXJuIHR5cGUgb2YgYSBHQ0MKKyAgIGJ1aWx0aW4gYW5kIHRoZW4gaXRzIGFyZ3VtZW50IHByb3RvdHlwZSB3b3VsZCBzdGlsbCBhcHBseS4gICovCisjaWZkZWYgX19jcGx1c3BsdXMKK2V4dGVybiAiQyIKKyNlbmRpZgorY2hhciBpbml0c2NyICgpOworaW50CittYWluICgpCit7CityZXR1cm4gaW5pdHNjciAoKTsKKyAgOworICByZXR1cm4gMDsKK30KK19BQ0VPRgoraWYgYWNfZm5fY190cnlfbGluayAiJExJTkVOTyI7IHRoZW4gOgorICBhY19jdl9saWJfY3Vyc2VzX2luaXRzY3I9eWVzCitlbHNlCisgIGFjX2N2X2xpYl9jdXJzZXNfaW5pdHNjcj1ubworZmkKK3JtIC1mIGNvcmUgY29uZnRlc3QuZXJyIGNvbmZ0ZXN0LiRhY19vYmpleHQgXAorICAgIGNvbmZ0ZXN0JGFjX2V4ZWV4dCBjb25mdGVzdC4kYWNfZXh0CitMSUJTPSRhY19jaGVja19saWJfc2F2ZV9MSUJTCitmaQoreyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6ICRhY19jdl9saWJfY3Vyc2VzX2luaXRzY3IiID4mNQorJGFzX2VjaG8gIiRhY19jdl9saWJfY3Vyc2VzX2luaXRzY3IiID4mNjsgfQoraWYgdGVzdCAieCRhY19jdl9saWJfY3Vyc2VzX2luaXRzY3IiID0geHllczsgdGhlbiA6CisgIENVUlNFU19MSUJTPSIke0NVUlNFU19MSUJTOiskQ1VSU0VTX0xJQlMgfS1sY3Vyc2VzIgorZWxzZQorICBhc19mbl9lcnJvciAkPyAibm8gY3Vyc2VzIGxpYnJhcnkgZm91bmQiICIkTElORU5PIiA1CitmaQorCitmaQorCitmaQoraWYgdGVzdCAieCRoYXZlX2N1cnNlc19oZWFkZXIiICE9ICJ4eWVzIjsgdGhlbgorICB7IHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogZXJyb3I6IGluIFxgJGFjX3B3ZCc6IiA+JjUKKyRhc19lY2hvICIkYXNfbWU6IGVycm9yOiBpbiBcYCRhY19wd2QnOiIgPiYyO30KK2FzX2ZuX2Vycm9yICQ/ICJjdXJzZXMgaGVhZGVyIG5vdCBmb3VuZAorU2VlIFxgY29uZmlnLmxvZycgZm9yIG1vcmUgZGV0YWlscyIgIiRMSU5FTk8iIDU7IH0KK2ZpCisKK2ZpCitpZiB0ZXN0ICJ4JGJ1aWxkX3N0YXJ0X3N0b3BfZGFlbW9uIiA9ICJ4eWVzIjsgdGhlbgorICAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBjaGVja2luZyBmb3IgaWhhc2hfY3JlYXRlIGluIC1saWhhc2giID4mNQorJGFzX2VjaG9fbiAiY2hlY2tpbmcgZm9yIGloYXNoX2NyZWF0ZSBpbiAtbGloYXNoLi4uICIgPiY2OyB9CitpZiAke2FjX2N2X2xpYl9paGFzaF9paGFzaF9jcmVhdGUrOn0gZmFsc2U7IHRoZW4gOgorICAkYXNfZWNob19uICIoY2FjaGVkKSAiID4mNgorZWxzZQorICBhY19jaGVja19saWJfc2F2ZV9MSUJTPSRMSUJTCitMSUJTPSItbGloYXNoICAkTElCUyIKK2NhdCBjb25mZGVmcy5oIC0gPDxfQUNFT0YgPmNvbmZ0ZXN0LiRhY19leHQKKy8qIGVuZCBjb25mZGVmcy5oLiAgKi8KKworLyogT3ZlcnJpZGUgYW55IEdDQyBpbnRlcm5hbCBwcm90b3R5cGUgdG8gYXZvaWQgYW4gZXJyb3IuCisgICBVc2UgY2hhciBiZWNhdXNlIGludCBtaWdodCBtYXRjaCB0aGUgcmV0dXJuIHR5cGUgb2YgYSBHQ0MKKyAgIGJ1aWx0aW4gYW5kIHRoZW4gaXRzIGFyZ3VtZW50IHByb3RvdHlwZSB3b3VsZCBzdGlsbCBhcHBseS4gICovCisjaWZkZWYgX19jcGx1c3BsdXMKK2V4dGVybiAiQyIKKyNlbmRpZgorY2hhciBpaGFzaF9jcmVhdGUgKCk7CitpbnQKK21haW4gKCkKK3sKK3JldHVybiBpaGFzaF9jcmVhdGUgKCk7CisgIDsKKyAgcmV0dXJuIDA7Cit9CitfQUNFT0YKK2lmIGFjX2ZuX2NfdHJ5X2xpbmsgIiRMSU5FTk8iOyB0aGVuIDoKKyAgYWNfY3ZfbGliX2loYXNoX2loYXNoX2NyZWF0ZT15ZXMKK2Vsc2UKKyAgYWNfY3ZfbGliX2loYXNoX2loYXNoX2NyZWF0ZT1ubworZmkKK3JtIC1mIGNvcmUgY29uZnRlc3QuZXJyIGNvbmZ0ZXN0LiRhY19vYmpleHQgXAorICAgIGNvbmZ0ZXN0JGFjX2V4ZWV4dCBjb25mdGVzdC4kYWNfZXh0CitMSUJTPSRhY19jaGVja19saWJfc2F2ZV9MSUJTCitmaQoreyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6ICRhY19jdl9saWJfaWhhc2hfaWhhc2hfY3JlYXRlIiA+JjUKKyRhc19lY2hvICIkYWNfY3ZfbGliX2loYXNoX2loYXNoX2NyZWF0ZSIgPiY2OyB9CitpZiB0ZXN0ICJ4JGFjX2N2X2xpYl9paGFzaF9paGFzaF9jcmVhdGUiID0geHllczsgdGhlbiA6CisgIFNTRF9MSUJTPSIke1NTRF9MSUJTOiskU1NEX0xJQlMgfS1saWhhc2giCitmaQorCisgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgZm9yIGNsb2NrX2dldHRpbWUgaW4gLWxydCIgPiY1CiskYXNfZWNob19uICJjaGVja2luZyBmb3IgY2xvY2tfZ2V0dGltZSBpbiAtbHJ0Li4uICIgPiY2OyB9CitpZiAke2FjX2N2X2xpYl9ydF9jbG9ja19nZXR0aW1lKzp9IGZhbHNlOyB0aGVuIDoKKyAgJGFzX2VjaG9fbiAiKGNhY2hlZCkgIiA+JjYKK2Vsc2UKKyAgYWNfY2hlY2tfbGliX3NhdmVfTElCUz0kTElCUworTElCUz0iLWxydCAgJExJQlMiCitjYXQgY29uZmRlZnMuaCAtIDw8X0FDRU9GID5jb25mdGVzdC4kYWNfZXh0CisvKiBlbmQgY29uZmRlZnMuaC4gICovCisKKy8qIE92ZXJyaWRlIGFueSBHQ0MgaW50ZXJuYWwgcHJvdG90eXBlIHRvIGF2b2lkIGFuIGVycm9yLgorICAgVXNlIGNoYXIgYmVjYXVzZSBpbnQgbWlnaHQgbWF0Y2ggdGhlIHJldHVybiB0eXBlIG9mIGEgR0NDCisgICBidWlsdGluIGFuZCB0aGVuIGl0cyBhcmd1bWVudCBwcm90b3R5cGUgd291bGQgc3RpbGwgYXBwbHkuICAqLworI2lmZGVmIF9fY3BsdXNwbHVzCitleHRlcm4gIkMiCisjZW5kaWYKK2NoYXIgY2xvY2tfZ2V0dGltZSAoKTsKK2ludAorbWFpbiAoKQoreworcmV0dXJuIGNsb2NrX2dldHRpbWUgKCk7CisgIDsKKyAgcmV0dXJuIDA7Cit9CitfQUNFT0YKK2lmIGFjX2ZuX2NfdHJ5X2xpbmsgIiRMSU5FTk8iOyB0aGVuIDoKKyAgYWNfY3ZfbGliX3J0X2Nsb2NrX2dldHRpbWU9eWVzCitlbHNlCisgIGFjX2N2X2xpYl9ydF9jbG9ja19nZXR0aW1lPW5vCitmaQorcm0gLWYgY29yZSBjb25mdGVzdC5lcnIgY29uZnRlc3QuJGFjX29iamV4dCBcCisgICAgY29uZnRlc3QkYWNfZXhlZXh0IGNvbmZ0ZXN0LiRhY19leHQKK0xJQlM9JGFjX2NoZWNrX2xpYl9zYXZlX0xJQlMKK2ZpCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogJGFjX2N2X2xpYl9ydF9jbG9ja19nZXR0aW1lIiA+JjUKKyRhc19lY2hvICIkYWNfY3ZfbGliX3J0X2Nsb2NrX2dldHRpbWUiID4mNjsgfQoraWYgdGVzdCAieCRhY19jdl9saWJfcnRfY2xvY2tfZ2V0dGltZSIgPSB4eWVzOyB0aGVuIDoKKyAgU1NEX0xJQlM9IiR7U1NEX0xJQlM6KyRTU0RfTElCUyB9LWxydCIKK2ZpCisKK3sgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgZm9yIHByb2Nfc3RhdF9saXN0X2NyZWF0ZSBpbiAtbHBzIiA+JjUKKyRhc19lY2hvX24gImNoZWNraW5nIGZvciBwcm9jX3N0YXRfbGlzdF9jcmVhdGUgaW4gLWxwcy4uLiAiID4mNjsgfQoraWYgJHthY19jdl9saWJfcHNfcHJvY19zdGF0X2xpc3RfY3JlYXRlKzp9IGZhbHNlOyB0aGVuIDoKKyAgJGFzX2VjaG9fbiAiKGNhY2hlZCkgIiA+JjYKK2Vsc2UKKyAgYWNfY2hlY2tfbGliX3NhdmVfTElCUz0kTElCUworTElCUz0iLWxwcyAgJExJQlMiCitjYXQgY29uZmRlZnMuaCAtIDw8X0FDRU9GID5jb25mdGVzdC4kYWNfZXh0CisvKiBlbmQgY29uZmRlZnMuaC4gICovCisKKy8qIE92ZXJyaWRlIGFueSBHQ0MgaW50ZXJuYWwgcHJvdG90eXBlIHRvIGF2b2lkIGFuIGVycm9yLgorICAgVXNlIGNoYXIgYmVjYXVzZSBpbnQgbWlnaHQgbWF0Y2ggdGhlIHJldHVybiB0eXBlIG9mIGEgR0NDCisgICBidWlsdGluIGFuZCB0aGVuIGl0cyBhcmd1bWVudCBwcm90b3R5cGUgd291bGQgc3RpbGwgYXBwbHkuICAqLworI2lmZGVmIF9fY3BsdXNwbHVzCitleHRlcm4gIkMiCisjZW5kaWYKK2NoYXIgcHJvY19zdGF0X2xpc3RfY3JlYXRlICgpOworaW50CittYWluICgpCit7CityZXR1cm4gcHJvY19zdGF0X2xpc3RfY3JlYXRlICgpOworICA7CisgIHJldHVybiAwOworfQorX0FDRU9GCitpZiBhY19mbl9jX3RyeV9saW5rICIkTElORU5PIjsgdGhlbiA6CisgIGFjX2N2X2xpYl9wc19wcm9jX3N0YXRfbGlzdF9jcmVhdGU9eWVzCitlbHNlCisgIGFjX2N2X2xpYl9wc19wcm9jX3N0YXRfbGlzdF9jcmVhdGU9bm8KK2ZpCitybSAtZiBjb3JlIGNvbmZ0ZXN0LmVyciBjb25mdGVzdC4kYWNfb2JqZXh0IFwKKyAgICBjb25mdGVzdCRhY19leGVleHQgY29uZnRlc3QuJGFjX2V4dAorTElCUz0kYWNfY2hlY2tfbGliX3NhdmVfTElCUworZmkKK3sgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiAkYWNfY3ZfbGliX3BzX3Byb2Nfc3RhdF9saXN0X2NyZWF0ZSIgPiY1CiskYXNfZWNobyAiJGFjX2N2X2xpYl9wc19wcm9jX3N0YXRfbGlzdF9jcmVhdGUiID4mNjsgfQoraWYgdGVzdCAieCRhY19jdl9saWJfcHNfcHJvY19zdGF0X2xpc3RfY3JlYXRlIiA9IHh5ZXM7IHRoZW4gOgorICBTU0RfTElCUz0iJHtTU0RfTElCUzorJFNTRF9MSUJTIH0tbHBzIgorZmkKKworeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBjaGVja2luZyBmb3IgZm10X3Bhc3RfdGltZSBpbiAtbHNob3VsZGJlaW5saWJjIiA+JjUKKyRhc19lY2hvX24gImNoZWNraW5nIGZvciBmbXRfcGFzdF90aW1lIGluIC1sc2hvdWxkYmVpbmxpYmMuLi4gIiA+JjY7IH0KK2lmICR7YWNfY3ZfbGliX3Nob3VsZGJlaW5saWJjX2ZtdF9wYXN0X3RpbWUrOn0gZmFsc2U7IHRoZW4gOgorICAkYXNfZWNob19uICIoY2FjaGVkKSAiID4mNgorZWxzZQorICBhY19jaGVja19saWJfc2F2ZV9MSUJTPSRMSUJTCitMSUJTPSItbHNob3VsZGJlaW5saWJjICAkTElCUyIKK2NhdCBjb25mZGVmcy5oIC0gPDxfQUNFT0YgPmNvbmZ0ZXN0LiRhY19leHQKKy8qIGVuZCBjb25mZGVmcy5oLiAgKi8KKworLyogT3ZlcnJpZGUgYW55IEdDQyBpbnRlcm5hbCBwcm90b3R5cGUgdG8gYXZvaWQgYW4gZXJyb3IuCisgICBVc2UgY2hhciBiZWNhdXNlIGludCBtaWdodCBtYXRjaCB0aGUgcmV0dXJuIHR5cGUgb2YgYSBHQ0MKKyAgIGJ1aWx0aW4gYW5kIHRoZW4gaXRzIGFyZ3VtZW50IHByb3RvdHlwZSB3b3VsZCBzdGlsbCBhcHBseS4gICovCisjaWZkZWYgX19jcGx1c3BsdXMKK2V4dGVybiAiQyIKKyNlbmRpZgorY2hhciBmbXRfcGFzdF90aW1lICgpOworaW50CittYWluICgpCit7CityZXR1cm4gZm10X3Bhc3RfdGltZSAoKTsKKyAgOworICByZXR1cm4gMDsKK30KK19BQ0VPRgoraWYgYWNfZm5fY190cnlfbGluayAiJExJTkVOTyI7IHRoZW4gOgorICBhY19jdl9saWJfc2hvdWxkYmVpbmxpYmNfZm10X3Bhc3RfdGltZT15ZXMKK2Vsc2UKKyAgYWNfY3ZfbGliX3Nob3VsZGJlaW5saWJjX2ZtdF9wYXN0X3RpbWU9bm8KK2ZpCitybSAtZiBjb3JlIGNvbmZ0ZXN0LmVyciBjb25mdGVzdC4kYWNfb2JqZXh0IFwKKyAgICBjb25mdGVzdCRhY19leGVleHQgY29uZnRlc3QuJGFjX2V4dAorTElCUz0kYWNfY2hlY2tfbGliX3NhdmVfTElCUworZmkKK3sgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiAkYWNfY3ZfbGliX3Nob3VsZGJlaW5saWJjX2ZtdF9wYXN0X3RpbWUiID4mNQorJGFzX2VjaG8gIiRhY19jdl9saWJfc2hvdWxkYmVpbmxpYmNfZm10X3Bhc3RfdGltZSIgPiY2OyB9CitpZiB0ZXN0ICJ4JGFjX2N2X2xpYl9zaG91bGRiZWlubGliY19mbXRfcGFzdF90aW1lIiA9IHh5ZXM7IHRoZW4gOgorICBTU0RfTElCUz0iJHtTU0RfTElCUzorJFNTRF9MSUJTIH0tbHNob3VsZGJlaW5saWJjIgorZmkKKworeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBjaGVja2luZyBmb3Iga3ZtX29wZW5maWxlcyBpbiAtbGt2bSIgPiY1CiskYXNfZWNob19uICJjaGVja2luZyBmb3Iga3ZtX29wZW5maWxlcyBpbiAtbGt2bS4uLiAiID4mNjsgfQoraWYgJHthY19jdl9saWJfa3ZtX2t2bV9vcGVuZmlsZXMrOn0gZmFsc2U7IHRoZW4gOgorICAkYXNfZWNob19uICIoY2FjaGVkKSAiID4mNgorZWxzZQorICBhY19jaGVja19saWJfc2F2ZV9MSUJTPSRMSUJTCitMSUJTPSItbGt2bSAgJExJQlMiCitjYXQgY29uZmRlZnMuaCAtIDw8X0FDRU9GID5jb25mdGVzdC4kYWNfZXh0CisvKiBlbmQgY29uZmRlZnMuaC4gICovCisKKy8qIE92ZXJyaWRlIGFueSBHQ0MgaW50ZXJuYWwgcHJvdG90eXBlIHRvIGF2b2lkIGFuIGVycm9yLgorICAgVXNlIGNoYXIgYmVjYXVzZSBpbnQgbWlnaHQgbWF0Y2ggdGhlIHJldHVybiB0eXBlIG9mIGEgR0NDCisgICBidWlsdGluIGFuZCB0aGVuIGl0cyBhcmd1bWVudCBwcm90b3R5cGUgd291bGQgc3RpbGwgYXBwbHkuICAqLworI2lmZGVmIF9fY3BsdXNwbHVzCitleHRlcm4gIkMiCisjZW5kaWYKK2NoYXIga3ZtX29wZW5maWxlcyAoKTsKK2ludAorbWFpbiAoKQoreworcmV0dXJuIGt2bV9vcGVuZmlsZXMgKCk7CisgIDsKKyAgcmV0dXJuIDA7Cit9CitfQUNFT0YKK2lmIGFjX2ZuX2NfdHJ5X2xpbmsgIiRMSU5FTk8iOyB0aGVuIDoKKyAgYWNfY3ZfbGliX2t2bV9rdm1fb3BlbmZpbGVzPXllcworZWxzZQorICBhY19jdl9saWJfa3ZtX2t2bV9vcGVuZmlsZXM9bm8KK2ZpCitybSAtZiBjb3JlIGNvbmZ0ZXN0LmVyciBjb25mdGVzdC4kYWNfb2JqZXh0IFwKKyAgICBjb25mdGVzdCRhY19leGVleHQgY29uZnRlc3QuJGFjX2V4dAorTElCUz0kYWNfY2hlY2tfbGliX3NhdmVfTElCUworZmkKK3sgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiAkYWNfY3ZfbGliX2t2bV9rdm1fb3BlbmZpbGVzIiA+JjUKKyRhc19lY2hvICIkYWNfY3ZfbGliX2t2bV9rdm1fb3BlbmZpbGVzIiA+JjY7IH0KK2lmIHRlc3QgIngkYWNfY3ZfbGliX2t2bV9rdm1fb3BlbmZpbGVzIiA9IHh5ZXM7IHRoZW4gOgorICBTU0RfTElCUz0iJHtTU0RfTElCUzorJFNTRF9MSUJTIH0tbGt2bSIKK2ZpCisKKworZmkKKworIyBDaGVja3MgZm9yIGhlYWRlciBmaWxlcy4KK3sgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgZm9yIEFOU0kgQyBoZWFkZXIgZmlsZXMiID4mNQorJGFzX2VjaG9fbiAiY2hlY2tpbmcgZm9yIEFOU0kgQyBoZWFkZXIgZmlsZXMuLi4gIiA+JjY7IH0KK2lmICR7YWNfY3ZfaGVhZGVyX3N0ZGMrOn0gZmFsc2U7IHRoZW4gOgorICAkYXNfZWNob19uICIoY2FjaGVkKSAiID4mNgorZWxzZQorICBjYXQgY29uZmRlZnMuaCAtIDw8X0FDRU9GID5jb25mdGVzdC4kYWNfZXh0CisvKiBlbmQgY29uZmRlZnMuaC4gICovCisjaW5jbHVkZSA8c3RkbGliLmg+CisjaW5jbHVkZSA8c3RkYXJnLmg+CisjaW5jbHVkZSA8c3RyaW5nLmg+CisjaW5jbHVkZSA8ZmxvYXQuaD4KKworaW50CittYWluICgpCit7CisKKyAgOworICByZXR1cm4gMDsKK30KK19BQ0VPRgoraWYgYWNfZm5fY190cnlfY29tcGlsZSAiJExJTkVOTyI7IHRoZW4gOgorICBhY19jdl9oZWFkZXJfc3RkYz15ZXMKK2Vsc2UKKyAgYWNfY3ZfaGVhZGVyX3N0ZGM9bm8KK2ZpCitybSAtZiBjb3JlIGNvbmZ0ZXN0LmVyciBjb25mdGVzdC4kYWNfb2JqZXh0IGNvbmZ0ZXN0LiRhY19leHQKKworaWYgdGVzdCAkYWNfY3ZfaGVhZGVyX3N0ZGMgPSB5ZXM7IHRoZW4KKyAgIyBTdW5PUyA0Lnggc3RyaW5nLmggZG9lcyBub3QgZGVjbGFyZSBtZW0qLCBjb250cmFyeSB0byBBTlNJLgorICBjYXQgY29uZmRlZnMuaCAtIDw8X0FDRU9GID5jb25mdGVzdC4kYWNfZXh0CisvKiBlbmQgY29uZmRlZnMuaC4gICovCisjaW5jbHVkZSA8c3RyaW5nLmg+CisKK19BQ0VPRgoraWYgKGV2YWwgIiRhY19jcHAgY29uZnRlc3QuJGFjX2V4dCIpIDI+JjUgfAorICAkRUdSRVAgIm1lbWNociIgPi9kZXYvbnVsbCAyPiYxOyB0aGVuIDoKKworZWxzZQorICBhY19jdl9oZWFkZXJfc3RkYz1ubworZmkKK3JtIC1mIGNvbmZ0ZXN0KgorCitmaQorCitpZiB0ZXN0ICRhY19jdl9oZWFkZXJfc3RkYyA9IHllczsgdGhlbgorICAjIElTQyAyLjAuMiBzdGRsaWIuaCBkb2VzIG5vdCBkZWNsYXJlIGZyZWUsIGNvbnRyYXJ5IHRvIEFOU0kuCisgIGNhdCBjb25mZGVmcy5oIC0gPDxfQUNFT0YgPmNvbmZ0ZXN0LiRhY19leHQKKy8qIGVuZCBjb25mZGVmcy5oLiAgKi8KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKworX0FDRU9GCitpZiAoZXZhbCAiJGFjX2NwcCBjb25mdGVzdC4kYWNfZXh0IikgMj4mNSB8CisgICRFR1JFUCAiZnJlZSIgPi9kZXYvbnVsbCAyPiYxOyB0aGVuIDoKKworZWxzZQorICBhY19jdl9oZWFkZXJfc3RkYz1ubworZmkKK3JtIC1mIGNvbmZ0ZXN0KgorCitmaQorCitpZiB0ZXN0ICRhY19jdl9oZWFkZXJfc3RkYyA9IHllczsgdGhlbgorICAjIC9iaW4vY2MgaW4gSXJpeC00LjAuNSBnZXRzIG5vbi1BTlNJIGN0eXBlIG1hY3JvcyB1bmxlc3MgdXNpbmcgLWFuc2kuCisgIGlmIHRlc3QgIiRjcm9zc19jb21waWxpbmciID0geWVzOyB0aGVuIDoKKyAgOgorZWxzZQorICBjYXQgY29uZmRlZnMuaCAtIDw8X0FDRU9GID5jb25mdGVzdC4kYWNfZXh0CisvKiBlbmQgY29uZmRlZnMuaC4gICovCisjaW5jbHVkZSA8Y3R5cGUuaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpZiAoKCcgJyAmIDB4MEZGKSA9PSAweDAyMCkKKyMgZGVmaW5lIElTTE9XRVIoYykgKCdhJyA8PSAoYykgJiYgKGMpIDw9ICd6JykKKyMgZGVmaW5lIFRPVVBQRVIoYykgKElTTE9XRVIoYykgPyAnQScgKyAoKGMpIC0gJ2EnKSA6IChjKSkKKyNlbHNlCisjIGRlZmluZSBJU0xPV0VSKGMpIFwKKwkJICAgKCgnYScgPD0gKGMpICYmIChjKSA8PSAnaScpIFwKKwkJICAgICB8fCAoJ2onIDw9IChjKSAmJiAoYykgPD0gJ3InKSBcCisJCSAgICAgfHwgKCdzJyA8PSAoYykgJiYgKGMpIDw9ICd6JykpCisjIGRlZmluZSBUT1VQUEVSKGMpIChJU0xPV0VSKGMpID8gKChjKSB8IDB4NDApIDogKGMpKQorI2VuZGlmCisKKyNkZWZpbmUgWE9SKGUsIGYpICgoKGUpICYmICEoZikpIHx8ICghKGUpICYmIChmKSkpCitpbnQKK21haW4gKCkKK3sKKyAgaW50IGk7CisgIGZvciAoaSA9IDA7IGkgPCAyNTY7IGkrKykKKyAgICBpZiAoWE9SIChpc2xvd2VyIChpKSwgSVNMT1dFUiAoaSkpCisJfHwgdG91cHBlciAoaSkgIT0gVE9VUFBFUiAoaSkpCisgICAgICByZXR1cm4gMjsKKyAgcmV0dXJuIDA7Cit9CitfQUNFT0YKK2lmIGFjX2ZuX2NfdHJ5X3J1biAiJExJTkVOTyI7IHRoZW4gOgorCitlbHNlCisgIGFjX2N2X2hlYWRlcl9zdGRjPW5vCitmaQorcm0gLWYgY29yZSAqLmNvcmUgY29yZS5jb25mdGVzdC4qIGdtb24ub3V0IGJiLm91dCBjb25mdGVzdCRhY19leGVleHQgXAorICBjb25mdGVzdC4kYWNfb2JqZXh0IGNvbmZ0ZXN0LmJlYW0gY29uZnRlc3QuJGFjX2V4dAorZmkKKworZmkKK2ZpCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogJGFjX2N2X2hlYWRlcl9zdGRjIiA+JjUKKyRhc19lY2hvICIkYWNfY3ZfaGVhZGVyX3N0ZGMiID4mNjsgfQoraWYgdGVzdCAkYWNfY3ZfaGVhZGVyX3N0ZGMgPSB5ZXM7IHRoZW4KKworJGFzX2VjaG8gIiNkZWZpbmUgU1REQ19IRUFERVJTIDEiID4+Y29uZmRlZnMuaAorCitmaQorCitmb3IgYWNfaGVhZGVyIGluIHN0ZGRlZi5oIGVycm9yLmggbG9jYWxlLmggbGliaW50bC5oIGt2bS5oIFwKKyAgICAgICAgICAgICAgICAgIHN5cy9jZGVmcy5oIHN5cy9zeXNjYWxsLmggbGludXgvZmllbWFwLmgKK2RvIDoKKyAgYXNfYWNfSGVhZGVyPWAkYXNfZWNobyAiYWNfY3ZfaGVhZGVyXyRhY19oZWFkZXIiIHwgJGFzX3RyX3NoYAorYWNfZm5fY19jaGVja19oZWFkZXJfbW9uZ3JlbCAiJExJTkVOTyIgIiRhY19oZWFkZXIiICIkYXNfYWNfSGVhZGVyIiAiJGFjX2luY2x1ZGVzX2RlZmF1bHQiCitpZiBldmFsIHRlc3QgXCJ4XCQiJGFzX2FjX0hlYWRlciJcIiA9IHgieWVzIjsgdGhlbiA6CisgIGNhdCA+PmNvbmZkZWZzLmggPDxfQUNFT0YKKyNkZWZpbmUgYCRhc19lY2hvICJIQVZFXyRhY19oZWFkZXIiIHwgJGFzX3RyX2NwcGAgMQorX0FDRU9GCisKK2ZpCisKK2RvbmUKKworCisjIENoZWNrcyBmb3IgdHlwZWRlZnMsIHN0cnVjdHVyZXMsIGFuZCBjb21waWxlciBjaGFyYWN0ZXJpc3RpY3MuCisgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBjaGVja2luZyB3aGV0aGVyIGJ5dGUgb3JkZXJpbmcgaXMgYmlnZW5kaWFuIiA+JjUKKyRhc19lY2hvX24gImNoZWNraW5nIHdoZXRoZXIgYnl0ZSBvcmRlcmluZyBpcyBiaWdlbmRpYW4uLi4gIiA+JjY7IH0KK2lmICR7YWNfY3ZfY19iaWdlbmRpYW4rOn0gZmFsc2U7IHRoZW4gOgorICAkYXNfZWNob19uICIoY2FjaGVkKSAiID4mNgorZWxzZQorICBhY19jdl9jX2JpZ2VuZGlhbj11bmtub3duCisgICAgIyBTZWUgaWYgd2UncmUgZGVhbGluZyB3aXRoIGEgdW5pdmVyc2FsIGNvbXBpbGVyLgorICAgIGNhdCBjb25mZGVmcy5oIC0gPDxfQUNFT0YgPmNvbmZ0ZXN0LiRhY19leHQKKy8qIGVuZCBjb25mZGVmcy5oLiAgKi8KKyNpZm5kZWYgX19BUFBMRV9DQ19fCisJICAgICAgIG5vdCBhIHVuaXZlcnNhbCBjYXBhYmxlIGNvbXBpbGVyCisJICAgICAjZW5kaWYKKwkgICAgIHR5cGVkZWYgaW50IGR1bW15OworCitfQUNFT0YKK2lmIGFjX2ZuX2NfdHJ5X2NvbXBpbGUgIiRMSU5FTk8iOyB0aGVuIDoKKworCSMgQ2hlY2sgZm9yIHBvdGVudGlhbCAtYXJjaCBmbGFncy4gIEl0IGlzIG5vdCB1bml2ZXJzYWwgdW5sZXNzCisJIyB0aGVyZSBhcmUgYXQgbGVhc3QgdHdvIC1hcmNoIGZsYWdzIHdpdGggZGlmZmVyZW50IHZhbHVlcy4KKwlhY19hcmNoPQorCWFjX3ByZXY9CisJZm9yIGFjX3dvcmQgaW4gJENDICRDRkxBR1MgJENQUEZMQUdTICRMREZMQUdTOyBkbworCSBpZiB0ZXN0IC1uICIkYWNfcHJldiI7IHRoZW4KKwkgICBjYXNlICRhY193b3JkIGluCisJICAgICBpPzg2IHwgeDg2XzY0IHwgcHBjIHwgcHBjNjQpCisJICAgICAgIGlmIHRlc3QgLXogIiRhY19hcmNoIiB8fCB0ZXN0ICIkYWNfYXJjaCIgPSAiJGFjX3dvcmQiOyB0aGVuCisJCSBhY19hcmNoPSRhY193b3JkCisJICAgICAgIGVsc2UKKwkJIGFjX2N2X2NfYmlnZW5kaWFuPXVuaXZlcnNhbAorCQkgYnJlYWsKKwkgICAgICAgZmkKKwkgICAgICAgOzsKKwkgICBlc2FjCisJICAgYWNfcHJldj0KKwkgZWxpZiB0ZXN0ICJ4JGFjX3dvcmQiID0gIngtYXJjaCI7IHRoZW4KKwkgICBhY19wcmV2PWFyY2gKKwkgZmkKKyAgICAgICBkb25lCitmaQorcm0gLWYgY29yZSBjb25mdGVzdC5lcnIgY29uZnRlc3QuJGFjX29iamV4dCBjb25mdGVzdC4kYWNfZXh0CisgICAgaWYgdGVzdCAkYWNfY3ZfY19iaWdlbmRpYW4gPSB1bmtub3duOyB0aGVuCisgICAgICAjIFNlZSBpZiBzeXMvcGFyYW0uaCBkZWZpbmVzIHRoZSBCWVRFX09SREVSIG1hY3JvLgorICAgICAgY2F0IGNvbmZkZWZzLmggLSA8PF9BQ0VPRiA+Y29uZnRlc3QuJGFjX2V4dAorLyogZW5kIGNvbmZkZWZzLmguICAqLworI2luY2x1ZGUgPHN5cy90eXBlcy5oPgorCSAgICAgI2luY2x1ZGUgPHN5cy9wYXJhbS5oPgorCitpbnQKK21haW4gKCkKK3sKKyNpZiAhIChkZWZpbmVkIEJZVEVfT1JERVIgJiYgZGVmaW5lZCBCSUdfRU5ESUFOIFwKKwkJICAgICAmJiBkZWZpbmVkIExJVFRMRV9FTkRJQU4gJiYgQllURV9PUkRFUiAmJiBCSUdfRU5ESUFOIFwKKwkJICAgICAmJiBMSVRUTEVfRU5ESUFOKQorCSAgICAgIGJvZ3VzIGVuZGlhbiBtYWNyb3MKKwkgICAgICNlbmRpZgorCisgIDsKKyAgcmV0dXJuIDA7Cit9CitfQUNFT0YKK2lmIGFjX2ZuX2NfdHJ5X2NvbXBpbGUgIiRMSU5FTk8iOyB0aGVuIDoKKyAgIyBJdCBkb2VzOyBub3cgc2VlIHdoZXRoZXIgaXQgZGVmaW5lZCB0byBCSUdfRU5ESUFOIG9yIG5vdC4KKwkgY2F0IGNvbmZkZWZzLmggLSA8PF9BQ0VPRiA+Y29uZnRlc3QuJGFjX2V4dAorLyogZW5kIGNvbmZkZWZzLmguICAqLworI2luY2x1ZGUgPHN5cy90eXBlcy5oPgorCQkjaW5jbHVkZSA8c3lzL3BhcmFtLmg+CisKK2ludAorbWFpbiAoKQoreworI2lmIEJZVEVfT1JERVIgIT0gQklHX0VORElBTgorCQkgbm90IGJpZyBlbmRpYW4KKwkJI2VuZGlmCisKKyAgOworICByZXR1cm4gMDsKK30KK19BQ0VPRgoraWYgYWNfZm5fY190cnlfY29tcGlsZSAiJExJTkVOTyI7IHRoZW4gOgorICBhY19jdl9jX2JpZ2VuZGlhbj15ZXMKK2Vsc2UKKyAgYWNfY3ZfY19iaWdlbmRpYW49bm8KK2ZpCitybSAtZiBjb3JlIGNvbmZ0ZXN0LmVyciBjb25mdGVzdC4kYWNfb2JqZXh0IGNvbmZ0ZXN0LiRhY19leHQKK2ZpCitybSAtZiBjb3JlIGNvbmZ0ZXN0LmVyciBjb25mdGVzdC4kYWNfb2JqZXh0IGNvbmZ0ZXN0LiRhY19leHQKKyAgICBmaQorICAgIGlmIHRlc3QgJGFjX2N2X2NfYmlnZW5kaWFuID0gdW5rbm93bjsgdGhlbgorICAgICAgIyBTZWUgaWYgPGxpbWl0cy5oPiBkZWZpbmVzIF9MSVRUTEVfRU5ESUFOIG9yIF9CSUdfRU5ESUFOIChlLmcuLCBTb2xhcmlzKS4KKyAgICAgIGNhdCBjb25mZGVmcy5oIC0gPDxfQUNFT0YgPmNvbmZ0ZXN0LiRhY19leHQKKy8qIGVuZCBjb25mZGVmcy5oLiAgKi8KKyNpbmNsdWRlIDxsaW1pdHMuaD4KKworaW50CittYWluICgpCit7CisjaWYgISAoZGVmaW5lZCBfTElUVExFX0VORElBTiB8fCBkZWZpbmVkIF9CSUdfRU5ESUFOKQorCSAgICAgIGJvZ3VzIGVuZGlhbiBtYWNyb3MKKwkgICAgICNlbmRpZgorCisgIDsKKyAgcmV0dXJuIDA7Cit9CitfQUNFT0YKK2lmIGFjX2ZuX2NfdHJ5X2NvbXBpbGUgIiRMSU5FTk8iOyB0aGVuIDoKKyAgIyBJdCBkb2VzOyBub3cgc2VlIHdoZXRoZXIgaXQgZGVmaW5lZCB0byBfQklHX0VORElBTiBvciBub3QuCisJIGNhdCBjb25mZGVmcy5oIC0gPDxfQUNFT0YgPmNvbmZ0ZXN0LiRhY19leHQKKy8qIGVuZCBjb25mZGVmcy5oLiAgKi8KKyNpbmNsdWRlIDxsaW1pdHMuaD4KKworaW50CittYWluICgpCit7CisjaWZuZGVmIF9CSUdfRU5ESUFOCisJCSBub3QgYmlnIGVuZGlhbgorCQkjZW5kaWYKKworICA7CisgIHJldHVybiAwOworfQorX0FDRU9GCitpZiBhY19mbl9jX3RyeV9jb21waWxlICIkTElORU5PIjsgdGhlbiA6CisgIGFjX2N2X2NfYmlnZW5kaWFuPXllcworZWxzZQorICBhY19jdl9jX2JpZ2VuZGlhbj1ubworZmkKK3JtIC1mIGNvcmUgY29uZnRlc3QuZXJyIGNvbmZ0ZXN0LiRhY19vYmpleHQgY29uZnRlc3QuJGFjX2V4dAorZmkKK3JtIC1mIGNvcmUgY29uZnRlc3QuZXJyIGNvbmZ0ZXN0LiRhY19vYmpleHQgY29uZnRlc3QuJGFjX2V4dAorICAgIGZpCisgICAgaWYgdGVzdCAkYWNfY3ZfY19iaWdlbmRpYW4gPSB1bmtub3duOyB0aGVuCisgICAgICAjIENvbXBpbGUgYSB0ZXN0IHByb2dyYW0uCisgICAgICBpZiB0ZXN0ICIkY3Jvc3NfY29tcGlsaW5nIiA9IHllczsgdGhlbiA6CisgICMgVHJ5IHRvIGd1ZXNzIGJ5IGdyZXBwaW5nIHZhbHVlcyBmcm9tIGFuIG9iamVjdCBmaWxlLgorCSBjYXQgY29uZmRlZnMuaCAtIDw8X0FDRU9GID5jb25mdGVzdC4kYWNfZXh0CisvKiBlbmQgY29uZmRlZnMuaC4gICovCitzaG9ydCBpbnQgYXNjaWlfbW1bXSA9CisJCSAgeyAweDQyNDksIDB4NDc2NSwgMHg2RTQ0LCAweDY5NjEsIDB4NkU1MywgMHg3OTUzLCAwIH07CisJCXNob3J0IGludCBhc2NpaV9paVtdID0KKwkJICB7IDB4Njk0QywgMHg1NDU0LCAweDY1NkMsIDB4NkU0NSwgMHg2OTQ0LCAweDZFNjEsIDAgfTsKKwkJaW50IHVzZV9hc2NpaSAoaW50IGkpIHsKKwkJICByZXR1cm4gYXNjaWlfbW1baV0gKyBhc2NpaV9paVtpXTsKKwkJfQorCQlzaG9ydCBpbnQgZWJjZGljX2lpW10gPQorCQkgIHsgMHg4OUQzLCAweEUzRTMsIDB4ODU5MywgMHg5NUM1LCAweDg5QzQsIDB4OTU4MSwgMCB9OworCQlzaG9ydCBpbnQgZWJjZGljX21tW10gPQorCQkgIHsgMHhDMkM5LCAweEM3ODUsIDB4OTVDNCwgMHg4OTgxLCAweDk1RTIsIDB4QThFMiwgMCB9OworCQlpbnQgdXNlX2ViY2RpYyAoaW50IGkpIHsKKwkJICByZXR1cm4gZWJjZGljX21tW2ldICsgZWJjZGljX2lpW2ldOworCQl9CisJCWV4dGVybiBpbnQgZm9vOworCitpbnQKK21haW4gKCkKK3sKK3JldHVybiB1c2VfYXNjaWkgKGZvbykgPT0gdXNlX2ViY2RpYyAoZm9vKTsKKyAgOworICByZXR1cm4gMDsKK30KK19BQ0VPRgoraWYgYWNfZm5fY190cnlfY29tcGlsZSAiJExJTkVOTyI7IHRoZW4gOgorICBpZiBncmVwIEJJR2VuRGlhblN5UyBjb25mdGVzdC4kYWNfb2JqZXh0ID4vZGV2L251bGw7IHRoZW4KKwkgICAgICBhY19jdl9jX2JpZ2VuZGlhbj15ZXMKKwkgICAgZmkKKwkgICAgaWYgZ3JlcCBMaVRUbGVFbkRpYW4gY29uZnRlc3QuJGFjX29iamV4dCA+L2Rldi9udWxsIDsgdGhlbgorCSAgICAgIGlmIHRlc3QgIiRhY19jdl9jX2JpZ2VuZGlhbiIgPSB1bmtub3duOyB0aGVuCisJCWFjX2N2X2NfYmlnZW5kaWFuPW5vCisJICAgICAgZWxzZQorCQkjIGZpbmRpbmcgYm90aCBzdHJpbmdzIGlzIHVubGlrZWx5IHRvIGhhcHBlbiwgYnV0IHdobyBrbm93cz8KKwkJYWNfY3ZfY19iaWdlbmRpYW49dW5rbm93bgorCSAgICAgIGZpCisJICAgIGZpCitmaQorcm0gLWYgY29yZSBjb25mdGVzdC5lcnIgY29uZnRlc3QuJGFjX29iamV4dCBjb25mdGVzdC4kYWNfZXh0CitlbHNlCisgIGNhdCBjb25mZGVmcy5oIC0gPDxfQUNFT0YgPmNvbmZ0ZXN0LiRhY19leHQKKy8qIGVuZCBjb25mZGVmcy5oLiAgKi8KKyRhY19pbmNsdWRlc19kZWZhdWx0CitpbnQKK21haW4gKCkKK3sKKworCSAgICAgLyogQXJlIHdlIGxpdHRsZSBvciBiaWcgZW5kaWFuPyAgRnJvbSBIYXJiaXNvbiZTdGVlbGUuICAqLworCSAgICAgdW5pb24KKwkgICAgIHsKKwkgICAgICAgbG9uZyBpbnQgbDsKKwkgICAgICAgY2hhciBjW3NpemVvZiAobG9uZyBpbnQpXTsKKwkgICAgIH0gdTsKKwkgICAgIHUubCA9IDE7CisJICAgICByZXR1cm4gdS5jW3NpemVvZiAobG9uZyBpbnQpIC0gMV0gPT0gMTsKKworICA7CisgIHJldHVybiAwOworfQorX0FDRU9GCitpZiBhY19mbl9jX3RyeV9ydW4gIiRMSU5FTk8iOyB0aGVuIDoKKyAgYWNfY3ZfY19iaWdlbmRpYW49bm8KK2Vsc2UKKyAgYWNfY3ZfY19iaWdlbmRpYW49eWVzCitmaQorcm0gLWYgY29yZSAqLmNvcmUgY29yZS5jb25mdGVzdC4qIGdtb24ub3V0IGJiLm91dCBjb25mdGVzdCRhY19leGVleHQgXAorICBjb25mdGVzdC4kYWNfb2JqZXh0IGNvbmZ0ZXN0LmJlYW0gY29uZnRlc3QuJGFjX2V4dAorZmkKKworICAgIGZpCitmaQoreyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6ICRhY19jdl9jX2JpZ2VuZGlhbiIgPiY1CiskYXNfZWNobyAiJGFjX2N2X2NfYmlnZW5kaWFuIiA+JjY7IH0KKyBjYXNlICRhY19jdl9jX2JpZ2VuZGlhbiBpbiAjKAorICAgeWVzKQorICAgICAkYXNfZWNobyAiI2RlZmluZSBXT1JEU19CSUdFTkRJQU4gMSIgPj5jb25mZGVmcy5oCis7OyAjKAorICAgbm8pCisgICAgICA7OyAjKAorICAgdW5pdmVyc2FsKQorCiskYXNfZWNobyAiI2RlZmluZSBBQ19BUFBMRV9VTklWRVJTQUxfQlVJTEQgMSIgPj5jb25mZGVmcy5oCisKKyAgICAgOzsgIygKKyAgICopCisgICAgIGFzX2ZuX2Vycm9yICQ/ICJ1bmtub3duIGVuZGlhbm5lc3MKKyBwcmVzZXR0aW5nIGFjX2N2X2NfYmlnZW5kaWFuPW5vIChvciB5ZXMpIHdpbGwgaGVscCIgIiRMSU5FTk8iIDUgOzsKKyBlc2FjCisKK3sgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgZm9yIGFuIEFOU0kgQy1jb25mb3JtaW5nIGNvbnN0IiA+JjUKKyRhc19lY2hvX24gImNoZWNraW5nIGZvciBhbiBBTlNJIEMtY29uZm9ybWluZyBjb25zdC4uLiAiID4mNjsgfQoraWYgJHthY19jdl9jX2NvbnN0Kzp9IGZhbHNlOyB0aGVuIDoKKyAgJGFzX2VjaG9fbiAiKGNhY2hlZCkgIiA+JjYKK2Vsc2UKKyAgY2F0IGNvbmZkZWZzLmggLSA8PF9BQ0VPRiA+Y29uZnRlc3QuJGFjX2V4dAorLyogZW5kIGNvbmZkZWZzLmguICAqLworCitpbnQKK21haW4gKCkKK3sKKy8qIEZJWE1FOiBJbmNsdWRlIHRoZSBjb21tZW50cyBzdWdnZXN0ZWQgYnkgUGF1bC4gKi8KKyNpZm5kZWYgX19jcGx1c3BsdXMKKyAgLyogVWx0cml4IG1pcHMgY2MgcmVqZWN0cyB0aGlzLiAgKi8KKyAgdHlwZWRlZiBpbnQgY2hhcnNldFsyXTsKKyAgY29uc3QgY2hhcnNldCBjczsKKyAgLyogU3VuT1MgNC4xLjEgY2MgcmVqZWN0cyB0aGlzLiAgKi8KKyAgY2hhciBjb25zdCAqY29uc3QgKnBjcGNjOworICBjaGFyICoqcHBjOworICAvKiBORUMgU1ZSNC4wLjIgbWlwcyBjYyByZWplY3RzIHRoaXMuICAqLworICBzdHJ1Y3QgcG9pbnQge2ludCB4LCB5O307CisgIHN0YXRpYyBzdHJ1Y3QgcG9pbnQgY29uc3QgemVybyA9IHswLDB9OworICAvKiBBSVggWEwgQyAxLjAyLjAuMCByZWplY3RzIHRoaXMuCisgICAgIEl0IGRvZXMgbm90IGxldCB5b3Ugc3VidHJhY3Qgb25lIGNvbnN0IFgqIHBvaW50ZXIgZnJvbSBhbm90aGVyIGluCisgICAgIGFuIGFybSBvZiBhbiBpZi1leHByZXNzaW9uIHdob3NlIGlmLXBhcnQgaXMgbm90IGEgY29uc3RhbnQKKyAgICAgZXhwcmVzc2lvbiAqLworICBjb25zdCBjaGFyICpnID0gInN0cmluZyI7CisgIHBjcGNjID0gJmcgKyAoZyA/IGctZyA6IDApOworICAvKiBIUFVYIDcuMCBjYyByZWplY3RzIHRoZXNlLiAqLworICArK3BjcGNjOworICBwcGMgPSAoY2hhcioqKSBwY3BjYzsKKyAgcGNwY2MgPSAoY2hhciBjb25zdCAqY29uc3QgKikgcHBjOworICB7IC8qIFNDTyAzLjJ2NCBjYyByZWplY3RzIHRoaXMuICAqLworICAgIGNoYXIgKnQ7CisgICAgY2hhciBjb25zdCAqcyA9IDAgPyAoY2hhciAqKSAwIDogKGNoYXIgY29uc3QgKikgMDsKKworICAgICp0KysgPSAwOworICAgIGlmIChzKSByZXR1cm4gMDsKKyAgfQorICB7IC8qIFNvbWVvbmUgdGhpbmtzIHRoZSBTdW4gc3VwcG9zZWRseS1BTlNJIGNvbXBpbGVyIHdpbGwgcmVqZWN0IHRoaXMuICAqLworICAgIGludCB4W10gPSB7MjUsIDE3fTsKKyAgICBjb25zdCBpbnQgKmZvbyA9ICZ4WzBdOworICAgICsrZm9vOworICB9CisgIHsgLyogU3VuIFNDMS4wIEFOU0kgY29tcGlsZXIgcmVqZWN0cyB0aGlzIC0tIGJ1dCBub3QgdGhlIGFib3ZlLiAqLworICAgIHR5cGVkZWYgY29uc3QgaW50ICppcHRyOworICAgIGlwdHIgcCA9IDA7CisgICAgKytwOworICB9CisgIHsgLyogQUlYIFhMIEMgMS4wMi4wLjAgcmVqZWN0cyB0aGlzIHNheWluZworICAgICAgICJrLmMiLCBsaW5lIDIuMjc6IDE1MDYtMDI1IChTKSBPcGVyYW5kIG11c3QgYmUgYSBtb2RpZmlhYmxlIGx2YWx1ZS4gKi8KKyAgICBzdHJ1Y3QgcyB7IGludCBqOyBjb25zdCBpbnQgKmFwWzNdOyB9OworICAgIHN0cnVjdCBzICpiOyBiLT5qID0gNTsKKyAgfQorICB7IC8qIFVMVFJJWC0zMiBWMy4xIChSZXYgOSkgdmNjIHJlamVjdHMgdGhpcyAqLworICAgIGNvbnN0IGludCBmb28gPSAxMDsKKyAgICBpZiAoIWZvbykgcmV0dXJuIDA7CisgIH0KKyAgcmV0dXJuICFjc1swXSAmJiAhemVyby54OworI2VuZGlmCisKKyAgOworICByZXR1cm4gMDsKK30KK19BQ0VPRgoraWYgYWNfZm5fY190cnlfY29tcGlsZSAiJExJTkVOTyI7IHRoZW4gOgorICBhY19jdl9jX2NvbnN0PXllcworZWxzZQorICBhY19jdl9jX2NvbnN0PW5vCitmaQorcm0gLWYgY29yZSBjb25mdGVzdC5lcnIgY29uZnRlc3QuJGFjX29iamV4dCBjb25mdGVzdC4kYWNfZXh0CitmaQoreyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6ICRhY19jdl9jX2NvbnN0IiA+JjUKKyRhc19lY2hvICIkYWNfY3ZfY19jb25zdCIgPiY2OyB9CitpZiB0ZXN0ICRhY19jdl9jX2NvbnN0ID0gbm87IHRoZW4KKworJGFzX2VjaG8gIiNkZWZpbmUgY29uc3QgLyoqLyIgPj5jb25mZGVmcy5oCisKK2ZpCisKK3sgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgZm9yIGlubGluZSIgPiY1CiskYXNfZWNob19uICJjaGVja2luZyBmb3IgaW5saW5lLi4uICIgPiY2OyB9CitpZiAke2FjX2N2X2NfaW5saW5lKzp9IGZhbHNlOyB0aGVuIDoKKyAgJGFzX2VjaG9fbiAiKGNhY2hlZCkgIiA+JjYKK2Vsc2UKKyAgYWNfY3ZfY19pbmxpbmU9bm8KK2ZvciBhY19rdyBpbiBpbmxpbmUgX19pbmxpbmVfXyBfX2lubGluZTsgZG8KKyAgY2F0IGNvbmZkZWZzLmggLSA8PF9BQ0VPRiA+Y29uZnRlc3QuJGFjX2V4dAorLyogZW5kIGNvbmZkZWZzLmguICAqLworI2lmbmRlZiBfX2NwbHVzcGx1cwordHlwZWRlZiBpbnQgZm9vX3Q7CitzdGF0aWMgJGFjX2t3IGZvb190IHN0YXRpY19mb28gKCkge3JldHVybiAwOyB9CiskYWNfa3cgZm9vX3QgZm9vICgpIHtyZXR1cm4gMDsgfQorI2VuZGlmCisKK19BQ0VPRgoraWYgYWNfZm5fY190cnlfY29tcGlsZSAiJExJTkVOTyI7IHRoZW4gOgorICBhY19jdl9jX2lubGluZT0kYWNfa3cKK2ZpCitybSAtZiBjb3JlIGNvbmZ0ZXN0LmVyciBjb25mdGVzdC4kYWNfb2JqZXh0IGNvbmZ0ZXN0LiRhY19leHQKKyAgdGVzdCAiJGFjX2N2X2NfaW5saW5lIiAhPSBubyAmJiBicmVhaworZG9uZQorCitmaQoreyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6ICRhY19jdl9jX2lubGluZSIgPiY1CiskYXNfZWNobyAiJGFjX2N2X2NfaW5saW5lIiA+JjY7IH0KKworY2FzZSAkYWNfY3ZfY19pbmxpbmUgaW4KKyAgaW5saW5lIHwgeWVzKSA7OworICAqKQorICAgIGNhc2UgJGFjX2N2X2NfaW5saW5lIGluCisgICAgICBubykgYWNfdmFsPTs7CisgICAgICAqKSBhY192YWw9JGFjX2N2X2NfaW5saW5lOzsKKyAgICBlc2FjCisgICAgY2F0ID4+Y29uZmRlZnMuaCA8PF9BQ0VPRgorI2lmbmRlZiBfX2NwbHVzcGx1cworI2RlZmluZSBpbmxpbmUgJGFjX3ZhbAorI2VuZGlmCitfQUNFT0YKKyAgICA7OworZXNhYworCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIGZvciB3b3JraW5nIHZvbGF0aWxlIiA+JjUKKyRhc19lY2hvX24gImNoZWNraW5nIGZvciB3b3JraW5nIHZvbGF0aWxlLi4uICIgPiY2OyB9CitpZiAke2FjX2N2X2Nfdm9sYXRpbGUrOn0gZmFsc2U7IHRoZW4gOgorICAkYXNfZWNob19uICIoY2FjaGVkKSAiID4mNgorZWxzZQorICBjYXQgY29uZmRlZnMuaCAtIDw8X0FDRU9GID5jb25mdGVzdC4kYWNfZXh0CisvKiBlbmQgY29uZmRlZnMuaC4gICovCisKK2ludAorbWFpbiAoKQoreworCit2b2xhdGlsZSBpbnQgeDsKK2ludCAqIHZvbGF0aWxlIHkgPSAoaW50ICopIDA7CityZXR1cm4gIXggJiYgIXk7CisgIDsKKyAgcmV0dXJuIDA7Cit9CitfQUNFT0YKK2lmIGFjX2ZuX2NfdHJ5X2NvbXBpbGUgIiRMSU5FTk8iOyB0aGVuIDoKKyAgYWNfY3ZfY192b2xhdGlsZT15ZXMKK2Vsc2UKKyAgYWNfY3ZfY192b2xhdGlsZT1ubworZmkKK3JtIC1mIGNvcmUgY29uZnRlc3QuZXJyIGNvbmZ0ZXN0LiRhY19vYmpleHQgY29uZnRlc3QuJGFjX2V4dAorZmkKK3sgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiAkYWNfY3ZfY192b2xhdGlsZSIgPiY1CiskYXNfZWNobyAiJGFjX2N2X2Nfdm9sYXRpbGUiID4mNjsgfQoraWYgdGVzdCAkYWNfY3ZfY192b2xhdGlsZSA9IG5vOyB0aGVuCisKKyRhc19lY2hvICIjZGVmaW5lIHZvbGF0aWxlIC8qKi8iID4+Y29uZmRlZnMuaAorCitmaQorCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIHdoZXRoZXIgY29tcGlsZXIgc3VwcG9ydHMgQzk5IGZlYXR1cmVzIiA+JjUKKyRhc19lY2hvX24gImNoZWNraW5nIHdoZXRoZXIgY29tcGlsZXIgc3VwcG9ydHMgQzk5IGZlYXR1cmVzLi4uICIgPiY2OyB9CitpZiAke2Rwa2dfY3ZfYzk5Kzp9IGZhbHNlOyB0aGVuIDoKKyAgJGFzX2VjaG9fbiAiKGNhY2hlZCkgIiA+JjYKK2Vsc2UKKyAgY2F0IGNvbmZkZWZzLmggLSA8PF9BQ0VPRiA+Y29uZnRlc3QuJGFjX2V4dAorLyogZW5kIGNvbmZkZWZzLmguICAqLworCisjaW5jbHVkZSA8aW50dHlwZXMuaD4KKyNpbmNsdWRlIDxzdGRib29sLmg+CisjaW5jbHVkZSA8c3RkaW8uaD4KKworLyogVmFyaWFkaWMgbWFjcm8gYXJndW1lbnRzLiAqLworI2RlZmluZSB2YXJpYWRpY19tYWNybyhmb28sIC4uLikgcHJpbnRmKGZvbywgX19WQV9BUkdTX18pCisKK2ludAorbWFpbiAoKQoreworCisJaW50IHJjOworCisJLyogQ29tcG91bmQgaW5pdGlhbGl6ZXJzLiAqLworCXN0cnVjdCB7IGludCBhLCBiOyB9IGZvbyA9IHsgLmEgPSAxLCAuYiA9IDIgfTsKKworCS8qIFRyYWlsaW5nIGNvbW1hIGluIGVudW0uICovCisJZW51bSB7IGZpcnN0LCBzZWNvbmQsIH0gcXV1eDsKKworCS8qIEJvb2xlYW4gdHlwZS4gKi8KKwlib29sIGJhciA9IGZhbHNlOworCisJLyogU3BlY2lmaWMgc2l6ZSB0eXBlLiAqLworCXVpbnQzMl90IGJheiA9IDA7CisJc2l6ZV90IHNpemUgPSBTSVpFX01BWDsKKwlpbnRtYXhfdCBpbWF4ID0gSU5UTUFYX01BWDsKKworCS8qIEZvcm1hdCBtb2RpZmllcnMuICovCisJcmMgPSBwcmludGYoIiVqZCIsIGltYXgpOworCWlmIChyYyA9PSAzKQorCQlyZXR1cm4gMTsKKwlyYyA9IHByaW50ZigiJXp1Iiwgc2l6ZSk7CisJaWYgKHJjID09IDMpCisJCXJldHVybiAxOworCisJLyogTWFnaWMgX19mdW5jX18gdmFyaWFibGUuICovCisJcHJpbnRmKCIlcyIsIF9fZnVuY19fKTsKKworICA7CisgIHJldHVybiAwOworfQorX0FDRU9GCitpZiBhY19mbl9jX3RyeV9jb21waWxlICIkTElORU5PIjsgdGhlbiA6CisgIGRwa2dfY3ZfYzk5PXllcworZWxzZQorICBkcGtnX2N2X2M5OT1ubworZmkKK3JtIC1mIGNvcmUgY29uZnRlc3QuZXJyIGNvbmZ0ZXN0LiRhY19vYmpleHQgY29uZnRlc3QuJGFjX2V4dAorZmkKK3sgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiAkZHBrZ19jdl9jOTkiID4mNQorJGFzX2VjaG8gIiRkcGtnX2N2X2M5OSIgPiY2OyB9CitpZiB0ZXN0ICJ4JGRwa2dfY3ZfYzk5IiA9ICJ4eWVzIjsgdGhlbiA6CisKKyRhc19lY2hvICIjZGVmaW5lIEhBVkVfQzk5IDEiID4+Y29uZmRlZnMuaAorCitlbHNlCisgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgd2hhdCBhcmd1bWVudCBtYWtlcyBjb21waWxlciBzdXBwb3J0IEM5OSBmZWF0dXJlcyIgPiY1CiskYXNfZWNob19uICJjaGVja2luZyB3aGF0IGFyZ3VtZW50IG1ha2VzIGNvbXBpbGVyIHN1cHBvcnQgQzk5IGZlYXR1cmVzLi4uICIgPiY2OyB9CitpZiAke2Rwa2dfY3ZfYzk5X2FyZys6fSBmYWxzZTsgdGhlbiA6CisgICRhc19lY2hvX24gIihjYWNoZWQpICIgPiY2CitlbHNlCisgIGRwa2dfY3ZfYzk5X2FyZz1ub25lCisJCSBkcGtnX3NhdmVfQ0M9IiRDQyIKKwkJIGZvciBhcmcgaW4gIi1zdGQ9Z251OTkiICItc3RkPWM5OSIgIi1jOTkiICItQUM5OSIgXAorCQkgICAgICAgICAgICAiLXhjOTk9YWxsIiAiLXFsYW5nbHZsPWV4dGM5OSI7IGRvCisJCSAgICBDQz0iJGRwa2dfc2F2ZV9DQyAkYXJnIgorCQkgICAgY2F0IGNvbmZkZWZzLmggLSA8PF9BQ0VPRiA+Y29uZnRlc3QuJGFjX2V4dAorLyogZW5kIGNvbmZkZWZzLmguICAqLworCisjaW5jbHVkZSA8aW50dHlwZXMuaD4KKyNpbmNsdWRlIDxzdGRib29sLmg+CisjaW5jbHVkZSA8c3RkaW8uaD4KKworLyogVmFyaWFkaWMgbWFjcm8gYXJndW1lbnRzLiAqLworI2RlZmluZSB2YXJpYWRpY19tYWNybyhmb28sIC4uLikgcHJpbnRmKGZvbywgX19WQV9BUkdTX18pCisKK2ludAorbWFpbiAoKQoreworCisJaW50IHJjOworCisJLyogQ29tcG91bmQgaW5pdGlhbGl6ZXJzLiAqLworCXN0cnVjdCB7IGludCBhLCBiOyB9IGZvbyA9IHsgLmEgPSAxLCAuYiA9IDIgfTsKKworCS8qIFRyYWlsaW5nIGNvbW1hIGluIGVudW0uICovCisJZW51bSB7IGZpcnN0LCBzZWNvbmQsIH0gcXV1eDsKKworCS8qIEJvb2xlYW4gdHlwZS4gKi8KKwlib29sIGJhciA9IGZhbHNlOworCisJLyogU3BlY2lmaWMgc2l6ZSB0eXBlLiAqLworCXVpbnQzMl90IGJheiA9IDA7CisJc2l6ZV90IHNpemUgPSBTSVpFX01BWDsKKwlpbnRtYXhfdCBpbWF4ID0gSU5UTUFYX01BWDsKKworCS8qIEZvcm1hdCBtb2RpZmllcnMuICovCisJcmMgPSBwcmludGYoIiVqZCIsIGltYXgpOworCWlmIChyYyA9PSAzKQorCQlyZXR1cm4gMTsKKwlyYyA9IHByaW50ZigiJXp1Iiwgc2l6ZSk7CisJaWYgKHJjID09IDMpCisJCXJldHVybiAxOworCisJLyogTWFnaWMgX19mdW5jX18gdmFyaWFibGUuICovCisJcHJpbnRmKCIlcyIsIF9fZnVuY19fKTsKKworICA7CisgIHJldHVybiAwOworfQorX0FDRU9GCitpZiBhY19mbl9jX3RyeV9jb21waWxlICIkTElORU5PIjsgdGhlbiA6CisgIGRwa2dfYXJnX3dvcmtlZD15ZXMKK2Vsc2UKKyAgZHBrZ19hcmdfd29ya2VkPW5vCitmaQorcm0gLWYgY29yZSBjb25mdGVzdC5lcnIgY29uZnRlc3QuJGFjX29iamV4dCBjb25mdGVzdC4kYWNfZXh0CisJCSAgICBDQz0iJGRwa2dfc2F2ZV9DQyIKKworCQkgICAgaWYgdGVzdCAieCRkcGtnX2FyZ193b3JrZWQiID0gInh5ZXMiOyB0aGVuIDoKKyAgZHBrZ19jdl9jOTlfYXJnPSIkYXJnIjsgYnJlYWsKK2ZpCisJCSBkb25lCitmaQoreyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6ICRkcGtnX2N2X2M5OV9hcmciID4mNQorJGFzX2VjaG8gIiRkcGtnX2N2X2M5OV9hcmciID4mNjsgfQorCSBpZiB0ZXN0ICJ4JGRwa2dfY3ZfYzk5X2FyZyIgIT0gInhub25lIjsgdGhlbiA6CisgIENDPSIkQ0MgJGRwa2dfY3ZfYzk5X2FyZyIKKwkJJGFzX2VjaG8gIiNkZWZpbmUgSEFWRV9DOTkgMSIgPj5jb25mZGVmcy5oCisKK2Vsc2UKKyAgYXNfZm5fZXJyb3IgJD8gInVuc3VwcG9ydGVkIHJlcXVpcmVkIEM5OSBleHRlbnNpb25zIiAiJExJTkVOTyIgNQorZmkKK2ZpCithY19mbl9jX2NoZWNrX3R5cGUgIiRMSU5FTk8iICJtb2RlX3QiICJhY19jdl90eXBlX21vZGVfdCIgIiRhY19pbmNsdWRlc19kZWZhdWx0IgoraWYgdGVzdCAieCRhY19jdl90eXBlX21vZGVfdCIgPSB4eWVzOyB0aGVuIDoKKworZWxzZQorCitjYXQgPj5jb25mZGVmcy5oIDw8X0FDRU9GCisjZGVmaW5lIG1vZGVfdCBpbnQKK19BQ0VPRgorCitmaQorCithY19mbl9jX2NoZWNrX3R5cGUgIiRMSU5FTk8iICJwaWRfdCIgImFjX2N2X3R5cGVfcGlkX3QiICIkYWNfaW5jbHVkZXNfZGVmYXVsdCIKK2lmIHRlc3QgIngkYWNfY3ZfdHlwZV9waWRfdCIgPSB4eWVzOyB0aGVuIDoKKworZWxzZQorCitjYXQgPj5jb25mZGVmcy5oIDw8X0FDRU9GCisjZGVmaW5lIHBpZF90IGludAorX0FDRU9GCisKK2ZpCisKK2FjX2ZuX2NfY2hlY2tfdHlwZSAiJExJTkVOTyIgInNpemVfdCIgImFjX2N2X3R5cGVfc2l6ZV90IiAiJGFjX2luY2x1ZGVzX2RlZmF1bHQiCitpZiB0ZXN0ICJ4JGFjX2N2X3R5cGVfc2l6ZV90IiA9IHh5ZXM7IHRoZW4gOgorCitlbHNlCisKK2NhdCA+PmNvbmZkZWZzLmggPDxfQUNFT0YKKyNkZWZpbmUgc2l6ZV90IHVuc2lnbmVkIGludAorX0FDRU9GCisKK2ZpCisKK2FjX2ZuX2NfY2hlY2tfdHlwZSAiJExJTkVOTyIgInB0cmRpZmZfdCIgImFjX2N2X3R5cGVfcHRyZGlmZl90IiAiJGFjX2luY2x1ZGVzX2RlZmF1bHQiCitpZiB0ZXN0ICJ4JGFjX2N2X3R5cGVfcHRyZGlmZl90IiA9IHh5ZXM7IHRoZW4gOgorCitlbHNlCisKK2NhdCA+PmNvbmZkZWZzLmggPDxfQUNFT0YKKyNkZWZpbmUgcHRyZGlmZl90IGludAorX0FDRU9GCisKK2ZpCisKKyMgVGhlIGNhc3QgdG8gbG9uZyBpbnQgd29ya3MgYXJvdW5kIGEgYnVnIGluIHRoZSBIUCBDIENvbXBpbGVyCisjIHZlcnNpb24gSFA5MjQ1My0wMSBCLjExLjExLjIzNzA5LkdQLCB3aGljaCBpbmNvcnJlY3RseSByZWplY3RzCisjIGRlY2xhcmF0aW9ucyBsaWtlIGBpbnQgYTNbWyhzaXplb2YgKHVuc2lnbmVkIGNoYXIpKSA+PSAwXV07Jy4KKyMgVGhpcyBidWcgaXMgSFAgU1IgbnVtYmVyIDg2MDYyMjMzNjQuCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIHNpemUgb2YgdW5zaWduZWQgaW50IiA+JjUKKyRhc19lY2hvX24gImNoZWNraW5nIHNpemUgb2YgdW5zaWduZWQgaW50Li4uICIgPiY2OyB9CitpZiAke2FjX2N2X3NpemVvZl91bnNpZ25lZF9pbnQrOn0gZmFsc2U7IHRoZW4gOgorICAkYXNfZWNob19uICIoY2FjaGVkKSAiID4mNgorZWxzZQorICBpZiBhY19mbl9jX2NvbXB1dGVfaW50ICIkTElORU5PIiAiKGxvbmcgaW50KSAoc2l6ZW9mICh1bnNpZ25lZCBpbnQpKSIgImFjX2N2X3NpemVvZl91bnNpZ25lZF9pbnQiICAgICAgICAiJGFjX2luY2x1ZGVzX2RlZmF1bHQiOyB0aGVuIDoKKworZWxzZQorICBpZiB0ZXN0ICIkYWNfY3ZfdHlwZV91bnNpZ25lZF9pbnQiID0geWVzOyB0aGVuCisgICAgIHsgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBlcnJvcjogaW4gXGAkYWNfcHdkJzoiID4mNQorJGFzX2VjaG8gIiRhc19tZTogZXJyb3I6IGluIFxgJGFjX3B3ZCc6IiA+JjI7fQorYXNfZm5fZXJyb3IgNzcgImNhbm5vdCBjb21wdXRlIHNpemVvZiAodW5zaWduZWQgaW50KQorU2VlIFxgY29uZmlnLmxvZycgZm9yIG1vcmUgZGV0YWlscyIgIiRMSU5FTk8iIDU7IH0KKyAgIGVsc2UKKyAgICAgYWNfY3Zfc2l6ZW9mX3Vuc2lnbmVkX2ludD0wCisgICBmaQorZmkKKworZmkKK3sgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiAkYWNfY3Zfc2l6ZW9mX3Vuc2lnbmVkX2ludCIgPiY1CiskYXNfZWNobyAiJGFjX2N2X3NpemVvZl91bnNpZ25lZF9pbnQiID4mNjsgfQorCisKKworY2F0ID4+Y29uZmRlZnMuaCA8PF9BQ0VPRgorI2RlZmluZSBTSVpFT0ZfVU5TSUdORURfSU5UICRhY19jdl9zaXplb2ZfdW5zaWduZWRfaW50CitfQUNFT0YKKworCisjIFRoZSBjYXN0IHRvIGxvbmcgaW50IHdvcmtzIGFyb3VuZCBhIGJ1ZyBpbiB0aGUgSFAgQyBDb21waWxlcgorIyB2ZXJzaW9uIEhQOTI0NTMtMDEgQi4xMS4xMS4yMzcwOS5HUCwgd2hpY2ggaW5jb3JyZWN0bHkgcmVqZWN0cworIyBkZWNsYXJhdGlvbnMgbGlrZSBgaW50IGEzW1soc2l6ZW9mICh1bnNpZ25lZCBjaGFyKSkgPj0gMF1dOycuCisjIFRoaXMgYnVnIGlzIEhQIFNSIG51bWJlciA4NjA2MjIzMzY0LgoreyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBjaGVja2luZyBzaXplIG9mIHVuc2lnbmVkIGxvbmciID4mNQorJGFzX2VjaG9fbiAiY2hlY2tpbmcgc2l6ZSBvZiB1bnNpZ25lZCBsb25nLi4uICIgPiY2OyB9CitpZiAke2FjX2N2X3NpemVvZl91bnNpZ25lZF9sb25nKzp9IGZhbHNlOyB0aGVuIDoKKyAgJGFzX2VjaG9fbiAiKGNhY2hlZCkgIiA+JjYKK2Vsc2UKKyAgaWYgYWNfZm5fY19jb21wdXRlX2ludCAiJExJTkVOTyIgIihsb25nIGludCkgKHNpemVvZiAodW5zaWduZWQgbG9uZykpIiAiYWNfY3Zfc2l6ZW9mX3Vuc2lnbmVkX2xvbmciICAgICAgICAiJGFjX2luY2x1ZGVzX2RlZmF1bHQiOyB0aGVuIDoKKworZWxzZQorICBpZiB0ZXN0ICIkYWNfY3ZfdHlwZV91bnNpZ25lZF9sb25nIiA9IHllczsgdGhlbgorICAgICB7IHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogZXJyb3I6IGluIFxgJGFjX3B3ZCc6IiA+JjUKKyRhc19lY2hvICIkYXNfbWU6IGVycm9yOiBpbiBcYCRhY19wd2QnOiIgPiYyO30KK2FzX2ZuX2Vycm9yIDc3ICJjYW5ub3QgY29tcHV0ZSBzaXplb2YgKHVuc2lnbmVkIGxvbmcpCitTZWUgXGBjb25maWcubG9nJyBmb3IgbW9yZSBkZXRhaWxzIiAiJExJTkVOTyIgNTsgfQorICAgZWxzZQorICAgICBhY19jdl9zaXplb2ZfdW5zaWduZWRfbG9uZz0wCisgICBmaQorZmkKKworZmkKK3sgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiAkYWNfY3Zfc2l6ZW9mX3Vuc2lnbmVkX2xvbmciID4mNQorJGFzX2VjaG8gIiRhY19jdl9zaXplb2ZfdW5zaWduZWRfbG9uZyIgPiY2OyB9CisKKworCitjYXQgPj5jb25mZGVmcy5oIDw8X0FDRU9GCisjZGVmaW5lIFNJWkVPRl9VTlNJR05FRF9MT05HICRhY19jdl9zaXplb2ZfdW5zaWduZWRfbG9uZworX0FDRU9GCisKKworZm9yIGFjX2hlYWRlciBpbiB1bmlzdGQuaAorZG8gOgorICBhY19mbl9jX2NoZWNrX2hlYWRlcl9tb25ncmVsICIkTElORU5PIiAidW5pc3RkLmgiICJhY19jdl9oZWFkZXJfdW5pc3RkX2giICIkYWNfaW5jbHVkZXNfZGVmYXVsdCIKK2lmIHRlc3QgIngkYWNfY3ZfaGVhZGVyX3VuaXN0ZF9oIiA9IHh5ZXM7IHRoZW4gOgorICBjYXQgPj5jb25mZGVmcy5oIDw8X0FDRU9GCisjZGVmaW5lIEhBVkVfVU5JU1REX0ggMQorX0FDRU9GCisKK2ZpCisKK2RvbmUKKworYWNfZm5fY19jaGVja19kZWNsICIkTElORU5PIiAic3lzX3NpZ2xpc3QiICJhY19jdl9oYXZlX2RlY2xfc3lzX3NpZ2xpc3QiICIjaW5jbHVkZSA8c2lnbmFsLmg+CisvKiBOZXRCU0QgZGVjbGFyZXMgc3lzX3NpZ2xpc3QgaW4gdW5pc3RkLmguICAqLworI2lmIEhBVkVfVU5JU1REX0gKKyMgIGluY2x1ZGUgPHVuaXN0ZC5oPgorI2VuZGlmCisKKyIKK2lmIHRlc3QgIngkYWNfY3ZfaGF2ZV9kZWNsX3N5c19zaWdsaXN0IiA9IHh5ZXM7IHRoZW4gOgorICBhY19oYXZlX2RlY2w9MQorZWxzZQorICBhY19oYXZlX2RlY2w9MAorZmkKKworY2F0ID4+Y29uZmRlZnMuaCA8PF9BQ0VPRgorI2RlZmluZSBIQVZFX0RFQ0xfU1lTX1NJR0xJU1QgJGFjX2hhdmVfZGVjbAorX0FDRU9GCisKKworIyBDaGVja3MgZm9yIGxpYnJhcnkgZnVuY3Rpb25zLgoreyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBjaGVja2luZyBmb3IgdmFfY29weSIgPiY1CiskYXNfZWNob19uICJjaGVja2luZyBmb3IgdmFfY29weS4uLiAiID4mNjsgfQoraWYgJHtkcGtnX2N2X3ZhX2NvcHkrOn0gZmFsc2U7IHRoZW4gOgorICAkYXNfZWNob19uICIoY2FjaGVkKSAiID4mNgorZWxzZQorICBpZiB0ZXN0ICIkY3Jvc3NfY29tcGlsaW5nIiA9IHllczsgdGhlbiA6CisgIGRwa2dfY3ZfdmFfY29weT1ubworZWxzZQorICBjYXQgY29uZmRlZnMuaCAtIDw8X0FDRU9GID5jb25mdGVzdC4kYWNfZXh0CisvKiBlbmQgY29uZmRlZnMuaC4gICovCisjaW5jbHVkZSA8c3RkYXJnLmg+CitpbnQgbWFpbigpCit7Cit2YV9saXN0IHYxLCB2MjsKK3ZhX2NvcHkgKHYxLCB2Mik7CitleGl0ICgwKTsKK30KKworX0FDRU9GCitpZiBhY19mbl9jX3RyeV9ydW4gIiRMSU5FTk8iOyB0aGVuIDoKKyAgZHBrZ19jdl92YV9jb3B5PXllcworZWxzZQorICBkcGtnX2N2X3ZhX2NvcHk9bm8KK2ZpCitybSAtZiBjb3JlICouY29yZSBjb3JlLmNvbmZ0ZXN0LiogZ21vbi5vdXQgYmIub3V0IGNvbmZ0ZXN0JGFjX2V4ZWV4dCBcCisgIGNvbmZ0ZXN0LiRhY19vYmpleHQgY29uZnRlc3QuYmVhbSBjb25mdGVzdC4kYWNfZXh0CitmaQorCitmaQoreyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6ICRkcGtnX2N2X3ZhX2NvcHkiID4mNQorJGFzX2VjaG8gIiRkcGtnX2N2X3ZhX2NvcHkiID4mNjsgfQoraWYgdGVzdCAieCRkcGtnX2N2X3ZhX2NvcHkiID0gInh5ZXMiOyB0aGVuIDoKKworJGFzX2VjaG8gIiNkZWZpbmUgSEFWRV9WQV9DT1BZIDEiID4+Y29uZmRlZnMuaAorCitmaQorCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIGZvciBDOTkgc25wcmludGYgZnVuY3Rpb25zIiA+JjUKKyRhc19lY2hvX24gImNoZWNraW5nIGZvciBDOTkgc25wcmludGYgZnVuY3Rpb25zLi4uICIgPiY2OyB9CitpZiAke2Rwa2dfY3ZfYzk5X3NucHJpbnRmKzp9IGZhbHNlOyB0aGVuIDoKKyAgJGFzX2VjaG9fbiAiKGNhY2hlZCkgIiA+JjYKK2Vsc2UKKyAgaWYgdGVzdCAiJGNyb3NzX2NvbXBpbGluZyIgPSB5ZXM7IHRoZW4gOgorICBkcGtnX2N2X2M5OV9zbnByaW50Zj1ubworZWxzZQorICBjYXQgY29uZmRlZnMuaCAtIDw8X0FDRU9GID5jb25mdGVzdC4kYWNfZXh0CisvKiBlbmQgY29uZmRlZnMuaC4gICovCisKKyNpbmNsdWRlIDxzdGRhcmcuaD4KKyNpbmNsdWRlIDxzdGRpby5oPgorI2luY2x1ZGUgPHN0cmluZy5oPgoraW50IHRlc3RfdnNucHJpbnRmKGNvbnN0IGNoYXIgKmZtdCwgLi4uKQoreworCWludCBuOworCXZhX2xpc3QgYXJnczsKKworCXZhX3N0YXJ0KGFyZ3MsIGZtdCk7CisJbiA9IHZzbnByaW50ZihOVUxMLCAwLCBmbXQsIGFyZ3MpOworCXZhX2VuZChhcmdzKTsKKworCXJldHVybiBuOworfQoraW50IG1haW4oKQoreworCWludCBuOworCisJbiA9IHNucHJpbnRmKE5VTEwsIDAsICJmb3JtYXQgJXMgJWQiLCAic3RyaW5nIiwgMTApOworCWlmIChuICE9IHN0cmxlbigiZm9ybWF0IHN0cmluZyAxMCIpKQorCQlyZXR1cm4gMTsKKworCW4gPSB0ZXN0X3ZzbnByaW50ZigiZm9ybWF0ICVzICVkIiwgInN0cmluZyIsIDEwKTsKKwlpZiAobiAhPSBzdHJsZW4oImZvcm1hdCBzdHJpbmcgMTAiKSkKKwkJcmV0dXJuIDE7CisKKwlyZXR1cm4gMDsKK30KKworX0FDRU9GCitpZiBhY19mbl9jX3RyeV9ydW4gIiRMSU5FTk8iOyB0aGVuIDoKKyAgZHBrZ19jdl9jOTlfc25wcmludGY9eWVzCitlbHNlCisgIGRwa2dfY3ZfYzk5X3NucHJpbnRmPW5vCitmaQorcm0gLWYgY29yZSAqLmNvcmUgY29yZS5jb25mdGVzdC4qIGdtb24ub3V0IGJiLm91dCBjb25mdGVzdCRhY19leGVleHQgXAorICBjb25mdGVzdC4kYWNfb2JqZXh0IGNvbmZ0ZXN0LmJlYW0gY29uZnRlc3QuJGFjX2V4dAorZmkKKworZmkKK3sgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiAkZHBrZ19jdl9jOTlfc25wcmludGYiID4mNQorJGFzX2VjaG8gIiRkcGtnX2N2X2M5OV9zbnByaW50ZiIgPiY2OyB9CitpZiB0ZXN0ICJ4JGRwa2dfY3ZfYzk5X3NucHJpbnRmIiA9ICJ4eWVzIjsgdGhlbiA6CisKKyRhc19lY2hvICIjZGVmaW5lIEhBVkVfQzk5X1NOUFJJTlRGIDEiID4+Y29uZmRlZnMuaAorCitmaQorIGlmIHRlc3QgIngkZHBrZ19jdl9jOTlfc25wcmludGYiID0gInh5ZXMiOyB0aGVuCisgIEhBVkVfQzk5X1NOUFJJTlRGX1RSVUU9CisgIEhBVkVfQzk5X1NOUFJJTlRGX0ZBTFNFPScjJworZWxzZQorICBIQVZFX0M5OV9TTlBSSU5URl9UUlVFPScjJworICBIQVZFX0M5OV9TTlBSSU5URl9GQUxTRT0KK2ZpCisKKworCisgIGFjX2ZuX2NfY2hlY2tfZGVjbCAiJExJTkVOTyIgIm9mZnNldG9mIiAiYWNfY3ZfaGF2ZV9kZWNsX29mZnNldG9mIiAiI2luY2x1ZGUgPHN0ZGRlZi5oPgorIgoraWYgdGVzdCAieCRhY19jdl9oYXZlX2RlY2xfb2Zmc2V0b2YiID0geHllczsgdGhlbiA6CisKKyRhc19lY2hvICIjZGVmaW5lIEhBVkVfT0ZGU0VUT0YgMSIgPj5jb25mZGVmcy5oCisKK2ZpCisKKworCisgIGFjX2ZuX2NfY2hlY2tfZGVjbCAiJExJTkVOTyIgIldDT1JFRFVNUCIgImFjX2N2X2hhdmVfZGVjbF9XQ09SRURVTVAiICIjaW5jbHVkZSA8c3lzL3dhaXQuaD4KKyIKK2lmIHRlc3QgIngkYWNfY3ZfaGF2ZV9kZWNsX1dDT1JFRFVNUCIgPSB4eWVzOyB0aGVuIDoKKworJGFzX2VjaG8gIiNkZWZpbmUgSEFWRV9XQ09SRURVTVAgMSIgPj5jb25mZGVmcy5oCisKK2ZpCisKKworCisgIGFjX2ZuX2NfY2hlY2tfZGVjbCAiJExJTkVOTyIgIlRJT0NOT1RUWSIgImFjX2N2X2hhdmVfZGVjbF9USU9DTk9UVFkiICIjaW5jbHVkZSA8c3lzL2lvY3RsLmg+CisiCitpZiB0ZXN0ICJ4JGFjX2N2X2hhdmVfZGVjbF9USU9DTk9UVFkiID0geHllczsgdGhlbiA6CisKKyRhc19lY2hvICIjZGVmaW5lIEhBVkVfVElPQ05PVFRZIDEiID4+Y29uZmRlZnMuaAorCitmaQorCisKKworICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIGZvciBwcm9ncmFtX2ludm9jYXRpb25fc2hvcnRfbmFtZSIgPiY1CiskYXNfZWNob19uICJjaGVja2luZyBmb3IgcHJvZ3JhbV9pbnZvY2F0aW9uX3Nob3J0X25hbWUuLi4gIiA+JjY7IH0KKyAgY2F0IGNvbmZkZWZzLmggLSA8PF9BQ0VPRiA+Y29uZnRlc3QuJGFjX2V4dAorLyogZW5kIGNvbmZkZWZzLmguICAqLworI2luY2x1ZGUgPGVycm5vLmg+CitpbnQKK21haW4gKCkKK3sKK2NvbnN0IGNoYXIgKnAgPSBwcm9ncmFtX2ludm9jYXRpb25fc2hvcnRfbmFtZTsKKyAgOworICByZXR1cm4gMDsKK30KK19BQ0VPRgoraWYgYWNfZm5fY190cnlfbGluayAiJExJTkVOTyI7IHRoZW4gOgorCiskYXNfZWNobyAiI2RlZmluZSBIQVZFX1BST0dSQU1fSU5WT0NBVElPTl9TSE9SVF9OQU1FIDEiID4+Y29uZmRlZnMuaAorCisgICAgICAgICAgICAgICAgICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogeWVzIiA+JjUKKyRhc19lY2hvICJ5ZXMiID4mNjsgfQorZWxzZQorICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogbm8iID4mNQorJGFzX2VjaG8gIm5vIiA+JjY7IH0KK2ZpCitybSAtZiBjb3JlIGNvbmZ0ZXN0LmVyciBjb25mdGVzdC4kYWNfb2JqZXh0IFwKKyAgICBjb25mdGVzdCRhY19leGVleHQgY29uZnRlc3QuJGFjX2V4dAorCisgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgZm9yIF9fcHJvZ25hbWUiID4mNQorJGFzX2VjaG9fbiAiY2hlY2tpbmcgZm9yIF9fcHJvZ25hbWUuLi4gIiA+JjY7IH0KKyAgY2F0IGNvbmZkZWZzLmggLSA8PF9BQ0VPRiA+Y29uZnRlc3QuJGFjX2V4dAorLyogZW5kIGNvbmZkZWZzLmguICAqLworCitpbnQKK21haW4gKCkKK3sKK2V4dGVybiBjaGFyICpfX3Byb2duYW1lOworICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKnAgPSBfX3Byb2duYW1lOworICA7CisgIHJldHVybiAwOworfQorX0FDRU9GCitpZiBhY19mbl9jX3RyeV9saW5rICIkTElORU5PIjsgdGhlbiA6CisKKyRhc19lY2hvICIjZGVmaW5lIEhBVkVfX19QUk9HTkFNRSAxIiA+PmNvbmZkZWZzLmgKKworICAgICAgICAgICAgICAgICAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6IHllcyIgPiY1CiskYXNfZWNobyAieWVzIiA+JjY7IH0KK2Vsc2UKKyAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6IG5vIiA+JjUKKyRhc19lY2hvICJubyIgPiY2OyB9CitmaQorcm0gLWYgY29yZSBjb25mdGVzdC5lcnIgY29uZnRlc3QuJGFjX29iamV4dCBcCisgICAgY29uZnRlc3QkYWNfZXhlZXh0IGNvbmZ0ZXN0LiRhY19leHQKKworCisgIGZvciBhY19mdW5jIGluIGdldG9wdCBnZXRvcHRfbG9uZyBvYnN0YWNrX2ZyZWUgXAorICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm5sZW4gc3RyZXJyb3Igc3Ryc2lnbmFsIGFzcHJpbnRmIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICBzY2FuZGlyIGFscGhhc29ydCB1bnNldGVudgorZG8gOgorICBhc19hY192YXI9YCRhc19lY2hvICJhY19jdl9mdW5jXyRhY19mdW5jIiB8ICRhc190cl9zaGAKK2FjX2ZuX2NfY2hlY2tfZnVuYyAiJExJTkVOTyIgIiRhY19mdW5jIiAiJGFzX2FjX3ZhciIKK2lmIGV2YWwgdGVzdCBcInhcJCIkYXNfYWNfdmFyIlwiID0geCJ5ZXMiOyB0aGVuIDoKKyAgY2F0ID4+Y29uZmRlZnMuaCA8PF9BQ0VPRgorI2RlZmluZSBgJGFzX2VjaG8gIkhBVkVfJGFjX2Z1bmMiIHwgJGFzX3RyX2NwcGAgMQorX0FDRU9GCisKK2ZpCitkb25lCisKKworICAgICBpZiB0ZXN0ICJ4JGFjX2N2X2Z1bmNfZ2V0b3B0IiA9ICJ4eWVzIjsgdGhlbgorICBIQVZFX0dFVE9QVF9UUlVFPQorICBIQVZFX0dFVE9QVF9GQUxTRT0nIycKK2Vsc2UKKyAgSEFWRV9HRVRPUFRfVFJVRT0nIycKKyAgSEFWRV9HRVRPUFRfRkFMU0U9CitmaQorCisKKyAgICAgaWYgdGVzdCAieCRhY19jdl9mdW5jX2dldG9wdF9sb25nIiA9ICJ4eWVzIjsgdGhlbgorICBIQVZFX0dFVE9QVF9MT05HX1RSVUU9CisgIEhBVkVfR0VUT1BUX0xPTkdfRkFMU0U9JyMnCitlbHNlCisgIEhBVkVfR0VUT1BUX0xPTkdfVFJVRT0nIycKKyAgSEFWRV9HRVRPUFRfTE9OR19GQUxTRT0KK2ZpCisKKworICAgICBpZiB0ZXN0ICJ4JGFjX2N2X2Z1bmNfb2JzdGFja19mcmVlIiA9ICJ4eWVzIjsgdGhlbgorICBIQVZFX09CU1RBQ0tfRlJFRV9UUlVFPQorICBIQVZFX09CU1RBQ0tfRlJFRV9GQUxTRT0nIycKK2Vsc2UKKyAgSEFWRV9PQlNUQUNLX0ZSRUVfVFJVRT0nIycKKyAgSEFWRV9PQlNUQUNLX0ZSRUVfRkFMU0U9CitmaQorCisKKyAgICAgaWYgdGVzdCAieCRhY19jdl9mdW5jX3N0cm5sZW4iID0gInh5ZXMiOyB0aGVuCisgIEhBVkVfU1RSTkxFTl9UUlVFPQorICBIQVZFX1NUUk5MRU5fRkFMU0U9JyMnCitlbHNlCisgIEhBVkVfU1RSTkxFTl9UUlVFPScjJworICBIQVZFX1NUUk5MRU5fRkFMU0U9CitmaQorCisKKyAgICAgaWYgdGVzdCAieCRhY19jdl9mdW5jX3N0cmVycm9yIiA9ICJ4eWVzIjsgdGhlbgorICBIQVZFX1NUUkVSUk9SX1RSVUU9CisgIEhBVkVfU1RSRVJST1JfRkFMU0U9JyMnCitlbHNlCisgIEhBVkVfU1RSRVJST1JfVFJVRT0nIycKKyAgSEFWRV9TVFJFUlJPUl9GQUxTRT0KK2ZpCisKKworICAgICBpZiB0ZXN0ICJ4JGFjX2N2X2Z1bmNfc3Ryc2lnbmFsIiA9ICJ4eWVzIjsgdGhlbgorICBIQVZFX1NUUlNJR05BTF9UUlVFPQorICBIQVZFX1NUUlNJR05BTF9GQUxTRT0nIycKK2Vsc2UKKyAgSEFWRV9TVFJTSUdOQUxfVFJVRT0nIycKKyAgSEFWRV9TVFJTSUdOQUxfRkFMU0U9CitmaQorCisKKyAgICAgaWYgdGVzdCAieCRhY19jdl9mdW5jX2FzcHJpbnRmIiA9ICJ4eWVzIjsgdGhlbgorICBIQVZFX0FTUFJJTlRGX1RSVUU9CisgIEhBVkVfQVNQUklOVEZfRkFMU0U9JyMnCitlbHNlCisgIEhBVkVfQVNQUklOVEZfVFJVRT0nIycKKyAgSEFWRV9BU1BSSU5URl9GQUxTRT0KK2ZpCisKKworICAgICBpZiB0ZXN0ICJ4JGFjX2N2X2Z1bmNfc2NhbmRpciIgPSAieHllcyI7IHRoZW4KKyAgSEFWRV9TQ0FORElSX1RSVUU9CisgIEhBVkVfU0NBTkRJUl9GQUxTRT0nIycKK2Vsc2UKKyAgSEFWRV9TQ0FORElSX1RSVUU9JyMnCisgIEhBVkVfU0NBTkRJUl9GQUxTRT0KK2ZpCisKKworICAgICBpZiB0ZXN0ICJ4JGFjX2N2X2Z1bmNfYWxwaGFzb3J0IiA9ICJ4eWVzIjsgdGhlbgorICBIQVZFX0FMUEhBU09SVF9UUlVFPQorICBIQVZFX0FMUEhBU09SVF9GQUxTRT0nIycKK2Vsc2UKKyAgSEFWRV9BTFBIQVNPUlRfVFJVRT0nIycKKyAgSEFWRV9BTFBIQVNPUlRfRkFMU0U9CitmaQorCisKKyAgICAgaWYgdGVzdCAieCRhY19jdl9mdW5jX3Vuc2V0ZW52IiA9ICJ4eWVzIjsgdGhlbgorICBIQVZFX1VOU0VURU5WX1RSVUU9CisgIEhBVkVfVU5TRVRFTlZfRkFMU0U9JyMnCitlbHNlCisgIEhBVkVfVU5TRVRFTlZfVFJVRT0nIycKKyAgSEFWRV9VTlNFVEVOVl9GQUxTRT0KK2ZpCisKKworCitmb3IgYWNfZnVuYyBpbiBzdHJ0b3VsIHN0cnRvaW1heCBpc2FzY2lpIGJjb3B5IG1lbWNweSBzZXRzaWQgZ2V0ZHRhYmxlc2l6ZSBcCisgICAgICAgICAgICAgICAgZ2V0cHJvZ25hbWUgZ2V0ZXhlY25hbWUgbHV0aW1lcyBwb3NpeF9mYWR2aXNlCitkbyA6CisgIGFzX2FjX3Zhcj1gJGFzX2VjaG8gImFjX2N2X2Z1bmNfJGFjX2Z1bmMiIHwgJGFzX3RyX3NoYAorYWNfZm5fY19jaGVja19mdW5jICIkTElORU5PIiAiJGFjX2Z1bmMiICIkYXNfYWNfdmFyIgoraWYgZXZhbCB0ZXN0IFwieFwkIiRhc19hY192YXIiXCIgPSB4InllcyI7IHRoZW4gOgorICBjYXQgPj5jb25mZGVmcy5oIDw8X0FDRU9GCisjZGVmaW5lIGAkYXNfZWNobyAiSEFWRV8kYWNfZnVuYyIgfCAkYXNfdHJfY3BwYCAxCitfQUNFT0YKKworZmkKK2RvbmUKKworCisKKyAgIyBDaGVjayB3aGV0aGVyIC0tZW5hYmxlLW1tYXAgd2FzIGdpdmVuLgoraWYgdGVzdCAiJHtlbmFibGVfbW1hcCtzZXR9IiA9IHNldDsgdGhlbiA6CisgIGVuYWJsZXZhbD0kZW5hYmxlX21tYXA7CitlbHNlCisgIGVuYWJsZV9tbWFwPW5vCitmaQorCisKKyAgaWYgdGVzdCAieCRlbmFibGVfbW1hcCIgPSAieHllcyI7IHRoZW4gOgorCisgICAgZm9yIGFjX2Z1bmMgaW4gbW1hcAorZG8gOgorICBhY19mbl9jX2NoZWNrX2Z1bmMgIiRMSU5FTk8iICJtbWFwIiAiYWNfY3ZfZnVuY19tbWFwIgoraWYgdGVzdCAieCRhY19jdl9mdW5jX21tYXAiID0geHllczsgdGhlbiA6CisgIGNhdCA+PmNvbmZkZWZzLmggPDxfQUNFT0YKKyNkZWZpbmUgSEFWRV9NTUFQIDEKK19BQ0VPRgorCitmaQorZG9uZQorCisKKyRhc19lY2hvICIjZGVmaW5lIFVTRV9NTUFQIDEiID4+Y29uZmRlZnMuaAorCisKK2ZpCisKKworIyBDaGVja3MgZm9yIHRoZSBidWlsZCBtYWNoaW5lcnkuCisKKyRhc19lY2hvICIjZGVmaW5lIExJQkRQS0dfVk9MQVRJTEVfQVBJIDEiID4+Y29uZmRlZnMuaAorCisjIENoZWNrIHdoZXRoZXIgLS1lbmFibGUtY29tcGlsZXItd2FybmluZ3Mgd2FzIGdpdmVuLgoraWYgdGVzdCAiJHtlbmFibGVfY29tcGlsZXJfd2FybmluZ3Mrc2V0fSIgPSBzZXQ7IHRoZW4gOgorICBlbmFibGV2YWw9JGVuYWJsZV9jb21waWxlcl93YXJuaW5nczsKK2Vsc2UKKyAgZW5hYmxlX2NvbXBpbGVyX3dhcm5pbmdzPXllcworZmkKKworCitXRkxBR1M9Ii1XYWxsIC1XZXh0cmEgLVduby11bnVzZWQtcGFyYW1ldGVyIC1Xbm8tbWlzc2luZy1maWVsZC1pbml0aWFsaXplcnMgXAorCSAtV21pc3NpbmctZGVjbGFyYXRpb25zIC1XbWlzc2luZy1mb3JtYXQtYXR0cmlidXRlIFwKKwkgLVdmb3JtYXQtc2VjdXJpdHkgLVdwb2ludGVyLWFyaXRoIFwKKwkgLVd2bGEgLVdpbml0LXNlbGYgLVd3cml0ZS1zdHJpbmdzIC1XY2FzdC1hbGlnbiAtV3NoYWRvdyIKK1dDRkxBR1M9Ii1XZGVjbGFyYXRpb24tYWZ0ZXItc3RhdGVtZW50IC1XbmVzdGVkLWV4dGVybnMgLVdiYWQtZnVuY3Rpb24tY2FzdCBcCisJIC1Xc3RyaWN0LXByb3RvdHlwZXMgLVdtaXNzaW5nLXByb3RvdHlwZXMgLVdvbGQtc3R5bGUtZGVmaW5pdGlvbiIKKyMgVGVtcG9yYXJpbHkgaGVyZSB1bnRpbCAjNTQyMDMxIGdldHMgZml4ZWQgaW4gbmN1cnNlcworV0NYWEZMQUdTPSItV25vLXVudXNlZC12YWx1ZSIKK2lmIHRlc3QgIngkZW5hYmxlX2NvbXBpbGVyX3dhcm5pbmdzIiA9ICJ4eWVzIjsgdGhlbgorCWlmIHRlc3QgIngkR0NDIiA9ICJ4eWVzIjsgdGhlbgorCQlDRkxBR1M9IiRXRkxBR1MgJFdDRkxBR1MgJENGTEFHUyIKKyAgICAgICAgZmkKKwlpZiB0ZXN0ICJ4JEdYWCIgPSAieHllcyI7IHRoZW4KKwkJQ1hYRkxBR1M9IiRXRkxBR1MgJFdDWFhGTEFHUyAkQ1hYRkxBR1MiCisJZmkKK2ZpCisKKyMgQ2hlY2sgd2hldGhlciAtLWVuYWJsZS1jb21waWxlci1vcHRpbWlzYXRpb25zIHdhcyBnaXZlbi4KK2lmIHRlc3QgIiR7ZW5hYmxlX2NvbXBpbGVyX29wdGltaXNhdGlvbnMrc2V0fSIgPSBzZXQ7IHRoZW4gOgorICBlbmFibGV2YWw9JGVuYWJsZV9jb21waWxlcl9vcHRpbWlzYXRpb25zOworZWxzZQorICBlbmFibGVfY29tcGlsZXJfb3B0aW1pc2F0aW9ucz15ZXMKK2ZpCisKKworICBpZiB0ZXN0ICJ4JGVuYWJsZV9jb21waWxlcl9vcHRpbWlzYXRpb25zIiA9ICJ4bm8iOyB0aGVuIDoKKworICAgIENGTEFHUz0kKGVjaG8gIiRDRkxBR1MiIHwgc2VkIC1lICJzLyAtT1sxLTldKlxiLyAtTzAvZyIpCisKK2ZpCisKKyMgQ2hlY2sgd2hldGhlciAtLWVuYWJsZS1saW5rZXItb3B0aW1pc2F0aW9ucyB3YXMgZ2l2ZW4uCitpZiB0ZXN0ICIke2VuYWJsZV9saW5rZXJfb3B0aW1pc2F0aW9ucytzZXR9IiA9IHNldDsgdGhlbiA6CisgIGVuYWJsZXZhbD0kZW5hYmxlX2xpbmtlcl9vcHRpbWlzYXRpb25zOworZWxzZQorICBlbmFibGVfbGlua2VyX29wdGltaXNhdGlvbnM9eWVzCitmaQorCisKKyAgaWYgdGVzdCAieCRlbmFibGVfbGlua2VyX29wdGltaXNhdGlvbnMiID0gInhubyI7IHRoZW4gOgorCisgICAgTERGTEFHUz0kKGVjaG8gIiRMREZMQUdTIiB8IHNlZCAtZSAicy8gLVdsLC1PWzAtOV0qXGIvL2ciKQorCitlbHNlCisKKyAgICBMREZMQUdTPSIkTERGTEFHUyAtV2wsLU8xIgorCitmaQorCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIGRwa2cgY3B1IHR5cGUiID4mNQorJGFzX2VjaG9fbiAiY2hlY2tpbmcgZHBrZyBjcHUgdHlwZS4uLiAiID4mNjsgfQorCitjcHVfdHlwZT0kKGNkICRzcmNkaXIvc2NyaXB0czsgXAorICAgIFBFUkw1TElCPSQocHdkKSAkUEVSTCBkcGtnLWFyY2hpdGVjdHVyZS5wbCAtdCRob3N0IC1xREVCX0hPU1RfQVJDSF9DUFUgMj4vZGV2L251bGwpCisKK2lmIHRlc3QgIngkY3B1X3R5cGUiID0gIngiOyB0aGVuCisJY3B1X3R5cGU9JGhvc3RfY3B1CisJeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6ICRjcHVfdHlwZSIgPiY1CiskYXNfZWNobyAiJGNwdV90eXBlIiA+JjY7IH0KKwl7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IFdBUk5JTkc6ICRob3N0X2NwdSBub3QgZm91bmQgaW4gY3B1dGFibGUiID4mNQorJGFzX2VjaG8gIiRhc19tZTogV0FSTklORzogJGhvc3RfY3B1IG5vdCBmb3VuZCBpbiBjcHV0YWJsZSIgPiYyO30KK2Vsc2UKKwl7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogJGNwdV90eXBlIiA+JjUKKyRhc19lY2hvICIkY3B1X3R5cGUiID4mNjsgfQorZmkKKworY2F0ID4+Y29uZmRlZnMuaCA8PF9BQ0VPRgorI2RlZmluZSBBUkNISVRFQ1RVUkVfQ1BVICIke2NwdV90eXBlfSIKK19BQ0VPRgorCisKK3sgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgZHBrZyBvcGVyYXRpbmcgc3lzdGVtIHR5cGUiID4mNQorJGFzX2VjaG9fbiAiY2hlY2tpbmcgZHBrZyBvcGVyYXRpbmcgc3lzdGVtIHR5cGUuLi4gIiA+JjY7IH0KKworb3NfdHlwZT0kKGNkICRzcmNkaXIvc2NyaXB0czsgXAorICAgIFBFUkw1TElCPSQocHdkKSAkUEVSTCBkcGtnLWFyY2hpdGVjdHVyZS5wbCAtdCRob3N0IC1xREVCX0hPU1RfQVJDSF9PUyAyPi9kZXYvbnVsbCkKKworaWYgdGVzdCAieCRvc190eXBlIiA9ICJ4IjsgdGhlbgorCW9zX3R5cGU9JGhvc3Rfb3MKKwl7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogJG9zX3R5cGUiID4mNQorJGFzX2VjaG8gIiRvc190eXBlIiA+JjY7IH0KKwl7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IFdBUk5JTkc6ICRob3N0X29zIG5vdCBmb3VuZCBpbiBvc3RhYmxlIiA+JjUKKyRhc19lY2hvICIkYXNfbWU6IFdBUk5JTkc6ICRob3N0X29zIG5vdCBmb3VuZCBpbiBvc3RhYmxlIiA+JjI7fQorZWxzZQorCXsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiAkb3NfdHlwZSIgPiY1CiskYXNfZWNobyAiJG9zX3R5cGUiID4mNjsgfQorZmkKKworY2F0ID4+Y29uZmRlZnMuaCA8PF9BQ0VPRgorI2RlZmluZSBBUkNISVRFQ1RVUkVfT1MgIiR7b3NfdHlwZX0iCitfQUNFT0YKKworCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIGRwa2cgYXJjaGl0ZWN0dXJlIG5hbWUiID4mNQorJGFzX2VjaG9fbiAiY2hlY2tpbmcgZHBrZyBhcmNoaXRlY3R1cmUgbmFtZS4uLiAiID4mNjsgfQorCitkcGtnX2FyY2g9JChjZCAkc3JjZGlyL3NjcmlwdHM7IFwKKyAgICBQRVJMNUxJQj0kKHB3ZCkgJFBFUkwgZHBrZy1hcmNoaXRlY3R1cmUucGwgLXQkaG9zdCAtcURFQl9IT1NUX0FSQ0ggMj4vZGV2L251bGwpCisKK2lmIHRlc3QgIngkZHBrZ19hcmNoIiA9ICJ4IjsgdGhlbgorCWFzX2ZuX2Vycm9yICQ/ICJjYW5ub3QgZGV0ZXJtaW5lIGhvc3QgZHBrZyBhcmNoaXRlY3R1cmUiICIkTElORU5PIiA1CitlbHNlCisJeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6ICRkcGtnX2FyY2giID4mNQorJGFzX2VjaG8gIiRkcGtnX2FyY2giID4mNjsgfQorZmkKKworY2F0ID4+Y29uZmRlZnMuaCA8PF9BQ0VPRgorI2RlZmluZSBBUkNISVRFQ1RVUkUgIiR7ZHBrZ19hcmNofSIKK19BQ0VPRgorCisKKworYWNfY29uZmlnX2ZpbGVzPSIkYWNfY29uZmlnX2ZpbGVzIE1ha2VmaWxlIGRwa2ctZGViL01ha2VmaWxlIGRwa2ctc3BsaXQvTWFrZWZpbGUgZHNlbGVjdC9NYWtlZmlsZSBkc2VsZWN0L21ldGhvZHMvTWFrZWZpbGUgZHNlbGVjdC9wby9NYWtlZmlsZS5pbiBsaWIvTWFrZWZpbGUgbGliL2NvbXBhdC9NYWtlZmlsZSBsaWIvZHBrZy9NYWtlZmlsZSBsaWIvZHBrZy9saWJkcGtnLnBjIGxpYi9kcGtnL3Rlc3QvTWFrZWZpbGUgZG9jL0RveHlmaWxlIG1hbi9NYWtlZmlsZSBwby9NYWtlZmlsZS5pbiBzY3JpcHRzL01ha2VmaWxlIHNjcmlwdHMvbWsvTWFrZWZpbGUgc2NyaXB0cy9wby9NYWtlZmlsZS5pbiBzcmMvTWFrZWZpbGUgdXRpbHMvTWFrZWZpbGUiCisKK2FjX2NvbmZpZ19oZWFkZXJzPSIkYWNfY29uZmlnX2hlYWRlcnMgY29uZmlnLmgiCisKK2NhdCA+Y29uZmNhY2hlIDw8XF9BQ0VPRgorIyBUaGlzIGZpbGUgaXMgYSBzaGVsbCBzY3JpcHQgdGhhdCBjYWNoZXMgdGhlIHJlc3VsdHMgb2YgY29uZmlndXJlCisjIHRlc3RzIHJ1biBvbiB0aGlzIHN5c3RlbSBzbyB0aGV5IGNhbiBiZSBzaGFyZWQgYmV0d2VlbiBjb25maWd1cmUKKyMgc2NyaXB0cyBhbmQgY29uZmlndXJlIHJ1bnMsIHNlZSBjb25maWd1cmUncyBvcHRpb24gLS1jb25maWctY2FjaGUuCisjIEl0IGlzIG5vdCB1c2VmdWwgb24gb3RoZXIgc3lzdGVtcy4gIElmIGl0IGNvbnRhaW5zIHJlc3VsdHMgeW91IGRvbid0CisjIHdhbnQgdG8ga2VlcCwgeW91IG1heSByZW1vdmUgb3IgZWRpdCBpdC4KKyMKKyMgY29uZmlnLnN0YXR1cyBvbmx5IHBheXMgYXR0ZW50aW9uIHRvIHRoZSBjYWNoZSBmaWxlIGlmIHlvdSBnaXZlIGl0CisjIHRoZSAtLXJlY2hlY2sgb3B0aW9uIHRvIHJlcnVuIGNvbmZpZ3VyZS4KKyMKKyMgYGFjX2N2X2Vudl9mb28nIHZhcmlhYmxlcyAoc2V0IG9yIHVuc2V0KSB3aWxsIGJlIG92ZXJyaWRkZW4gd2hlbgorIyBsb2FkaW5nIHRoaXMgZmlsZSwgb3RoZXIgKnVuc2V0KiBgYWNfY3ZfZm9vJyB3aWxsIGJlIGFzc2lnbmVkIHRoZQorIyBmb2xsb3dpbmcgdmFsdWVzLgorCitfQUNFT0YKKworIyBUaGUgZm9sbG93aW5nIHdheSBvZiB3cml0aW5nIHRoZSBjYWNoZSBtaXNoYW5kbGVzIG5ld2xpbmVzIGluIHZhbHVlcywKKyMgYnV0IHdlIGtub3cgb2Ygbm8gd29ya2Fyb3VuZCB0aGF0IGlzIHNpbXBsZSwgcG9ydGFibGUsIGFuZCBlZmZpY2llbnQuCisjIFNvLCB3ZSBraWxsIHZhcmlhYmxlcyBjb250YWluaW5nIG5ld2xpbmVzLgorIyBVbHRyaXggc2ggc2V0IHdyaXRlcyB0byBzdGRlcnIgYW5kIGNhbid0IGJlIHJlZGlyZWN0ZWQgZGlyZWN0bHksCisjIGFuZCBzZXRzIHRoZSBoaWdoIGJpdCBpbiB0aGUgY2FjaGUgZmlsZSB1bmxlc3Mgd2UgYXNzaWduIHRvIHRoZSB2YXJzLgorKAorICBmb3IgYWNfdmFyIGluIGAoc2V0KSAyPiYxIHwgc2VkIC1uICdzL15cKFthLXpBLVpfXVthLXpBLVowLTlfXSpcKT0uKi9cMS9wJ2A7IGRvCisgICAgZXZhbCBhY192YWw9XCQkYWNfdmFyCisgICAgY2FzZSAkYWNfdmFsIGluICMoCisgICAgKiR7YXNfbmx9KikKKyAgICAgIGNhc2UgJGFjX3ZhciBpbiAjKAorICAgICAgKl9jdl8qKSB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IFdBUk5JTkc6IGNhY2hlIHZhcmlhYmxlICRhY192YXIgY29udGFpbnMgYSBuZXdsaW5lIiA+JjUKKyRhc19lY2hvICIkYXNfbWU6IFdBUk5JTkc6IGNhY2hlIHZhcmlhYmxlICRhY192YXIgY29udGFpbnMgYSBuZXdsaW5lIiA+JjI7fSA7OworICAgICAgZXNhYworICAgICAgY2FzZSAkYWNfdmFyIGluICMoCisgICAgICBfIHwgSUZTIHwgYXNfbmwpIDs7ICMoCisgICAgICBCQVNIX0FSR1YgfCBCQVNIX1NPVVJDRSkgZXZhbCAkYWNfdmFyPSA7OyAjKAorICAgICAgKikgeyBldmFsICRhY192YXI9OyB1bnNldCAkYWNfdmFyO30gOzsKKyAgICAgIGVzYWMgOzsKKyAgICBlc2FjCisgIGRvbmUKKworICAoc2V0KSAyPiYxIHwKKyAgICBjYXNlICRhc19ubGAoYWNfc3BhY2U9JyAnOyBzZXQpIDI+JjFgIGluICMoCisgICAgKiR7YXNfbmx9YWNfc3BhY2U9XCAqKQorICAgICAgIyBgc2V0JyBkb2VzIG5vdCBxdW90ZSBjb3JyZWN0bHksIHNvIGFkZCBxdW90ZXM6IGRvdWJsZS1xdW90ZQorICAgICAgIyBzdWJzdGl0dXRpb24gdHVybnMgXFxcXCBpbnRvIFxcLCBhbmQgc2VkIHR1cm5zIFxcIGludG8gXC4KKyAgICAgIHNlZCAtbiBcCisJInMvJy8nXFxcXCcnL2c7CisJICBzL15cXChbXyRhc19jcl9hbG51bV0qX2N2X1tfJGFzX2NyX2FsbnVtXSpcXCk9XFwoLipcXCkvXFwxPSdcXDInL3AiCisgICAgICA7OyAjKAorICAgICopCisgICAgICAjIGBzZXQnIHF1b3RlcyBjb3JyZWN0bHkgYXMgcmVxdWlyZWQgYnkgUE9TSVgsIHNvIGRvIG5vdCBhZGQgcXVvdGVzLgorICAgICAgc2VkIC1uICIvXltfJGFzX2NyX2FsbnVtXSpfY3ZfW18kYXNfY3JfYWxudW1dKj0vcCIKKyAgICAgIDs7CisgICAgZXNhYyB8CisgICAgc29ydAorKSB8CisgIHNlZCAnCisgICAgIC9eYWNfY3ZfZW52Xy9iIGVuZAorICAgICB0IGNsZWFyCisgICAgIDpjbGVhcgorICAgICBzL15cKFtePV0qXCk9XCguKlt7fV0uKlwpJC90ZXN0ICIke1wxK3NldH0iID0gc2V0IHx8ICYvCisgICAgIHQgZW5kCisgICAgIHMvXlwoW149XSpcKT1cKC4qXCkkL1wxPSR7XDE9XDJ9LworICAgICA6ZW5kJyA+PmNvbmZjYWNoZQoraWYgZGlmZiAiJGNhY2hlX2ZpbGUiIGNvbmZjYWNoZSA+L2Rldi9udWxsIDI+JjE7IHRoZW4gOjsgZWxzZQorICBpZiB0ZXN0IC13ICIkY2FjaGVfZmlsZSI7IHRoZW4KKyAgICBpZiB0ZXN0ICJ4JGNhY2hlX2ZpbGUiICE9ICJ4L2Rldi9udWxsIjsgdGhlbgorICAgICAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiB1cGRhdGluZyBjYWNoZSAkY2FjaGVfZmlsZSIgPiY1CiskYXNfZWNobyAiJGFzX21lOiB1cGRhdGluZyBjYWNoZSAkY2FjaGVfZmlsZSIgPiY2O30KKyAgICAgIGlmIHRlc3QgISAtZiAiJGNhY2hlX2ZpbGUiIHx8IHRlc3QgLWggIiRjYWNoZV9maWxlIjsgdGhlbgorCWNhdCBjb25mY2FjaGUgPiIkY2FjaGVfZmlsZSIKKyAgICAgIGVsc2UKKyAgICAgICAgY2FzZSAkY2FjaGVfZmlsZSBpbiAjKAorICAgICAgICAqLyogfCA/OiopCisJICBtdiAtZiBjb25mY2FjaGUgIiRjYWNoZV9maWxlIiQkICYmCisJICBtdiAtZiAiJGNhY2hlX2ZpbGUiJCQgIiRjYWNoZV9maWxlIiA7OyAjKAorICAgICAgICAqKQorCSAgbXYgLWYgY29uZmNhY2hlICIkY2FjaGVfZmlsZSIgOzsKKwllc2FjCisgICAgICBmaQorICAgIGZpCisgIGVsc2UKKyAgICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IG5vdCB1cGRhdGluZyB1bndyaXRhYmxlIGNhY2hlICRjYWNoZV9maWxlIiA+JjUKKyRhc19lY2hvICIkYXNfbWU6IG5vdCB1cGRhdGluZyB1bndyaXRhYmxlIGNhY2hlICRjYWNoZV9maWxlIiA+JjY7fQorICBmaQorZmkKK3JtIC1mIGNvbmZjYWNoZQorCit0ZXN0ICJ4JHByZWZpeCIgPSB4Tk9ORSAmJiBwcmVmaXg9JGFjX2RlZmF1bHRfcHJlZml4CisjIExldCBtYWtlIGV4cGFuZCBleGVjX3ByZWZpeC4KK3Rlc3QgIngkZXhlY19wcmVmaXgiID0geE5PTkUgJiYgZXhlY19wcmVmaXg9JyR7cHJlZml4fScKKworREVGUz0tREhBVkVfQ09ORklHX0gKKworYWNfbGlib2Jqcz0KK2FjX2x0bGlib2Jqcz0KK1U9Citmb3IgYWNfaSBpbiA6ICRMSUJPQkpTOyBkbyB0ZXN0ICJ4JGFjX2kiID0geDogJiYgY29udGludWUKKyAgIyAxLiBSZW1vdmUgdGhlIGV4dGVuc2lvbiwgYW5kICRVIGlmIGFscmVhZHkgaW5zdGFsbGVkLgorICBhY19zY3JpcHQ9J3MvXCRVXC4vLi87cy9cLm8kLy87cy9cLm9iaiQvLycKKyAgYWNfaT1gJGFzX2VjaG8gIiRhY19pIiB8IHNlZCAiJGFjX3NjcmlwdCJgCisgICMgMi4gUHJlcGVuZCBMSUJPQkpESVIuICBXaGVuIHVzZWQgd2l0aCBhdXRvbWFrZT49MS4xMCBMSUJPQkpESVIKKyAgIyAgICB3aWxsIGJlIHNldCB0byB0aGUgZGlyZWN0b3J5IHdoZXJlIExJQk9CSlMgb2JqZWN0cyBhcmUgYnVpbHQuCisgIGFzX2ZuX2FwcGVuZCBhY19saWJvYmpzICIgXCR7TElCT0JKRElSfSRhY19pXCRVLiRhY19vYmpleHQiCisgIGFzX2ZuX2FwcGVuZCBhY19sdGxpYm9ianMgIiBcJHtMSUJPQkpESVJ9JGFjX2kiJyRVLmxvJworZG9uZQorTElCT0JKUz0kYWNfbGlib2JqcworCitMVExJQk9CSlM9JGFjX2x0bGlib2JqcworCisKK2lmIHRlc3QgLXogIiR7QU1ERVBfVFJVRX0iICYmIHRlc3QgLXogIiR7QU1ERVBfRkFMU0V9IjsgdGhlbgorICBhc19mbl9lcnJvciAkPyAiY29uZGl0aW9uYWwgXCJBTURFUFwiIHdhcyBuZXZlciBkZWZpbmVkLgorVXN1YWxseSB0aGlzIG1lYW5zIHRoZSBtYWNybyB3YXMgb25seSBpbnZva2VkIGNvbmRpdGlvbmFsbHkuIiAiJExJTkVOTyIgNQorZmkKK2lmIHRlc3QgLXogIiR7YW1fX2Zhc3RkZXBDQ19UUlVFfSIgJiYgdGVzdCAteiAiJHthbV9fZmFzdGRlcENDX0ZBTFNFfSI7IHRoZW4KKyAgYXNfZm5fZXJyb3IgJD8gImNvbmRpdGlvbmFsIFwiYW1fX2Zhc3RkZXBDQ1wiIHdhcyBuZXZlciBkZWZpbmVkLgorVXN1YWxseSB0aGlzIG1lYW5zIHRoZSBtYWNybyB3YXMgb25seSBpbnZva2VkIGNvbmRpdGlvbmFsbHkuIiAiJExJTkVOTyIgNQorZmkKKyBpZiB0ZXN0IC1uICIkRVhFRVhUIjsgdGhlbgorICBhbV9fRVhFRVhUX1RSVUU9CisgIGFtX19FWEVFWFRfRkFMU0U9JyMnCitlbHNlCisgIGFtX19FWEVFWFRfVFJVRT0nIycKKyAgYW1fX0VYRUVYVF9GQUxTRT0KK2ZpCisKK2lmIHRlc3QgLXogIiR7V0lUSF9EU0VMRUNUX1RSVUV9IiAmJiB0ZXN0IC16ICIke1dJVEhfRFNFTEVDVF9GQUxTRX0iOyB0aGVuCisgIGFzX2ZuX2Vycm9yICQ/ICJjb25kaXRpb25hbCBcIldJVEhfRFNFTEVDVFwiIHdhcyBuZXZlciBkZWZpbmVkLgorVXN1YWxseSB0aGlzIG1lYW5zIHRoZSBtYWNybyB3YXMgb25seSBpbnZva2VkIGNvbmRpdGlvbmFsbHkuIiAiJExJTkVOTyIgNQorZmkKK2lmIHRlc3QgLXogIiR7V0lUSF9TVEFSVF9TVE9QX0RBRU1PTl9UUlVFfSIgJiYgdGVzdCAteiAiJHtXSVRIX1NUQVJUX1NUT1BfREFFTU9OX0ZBTFNFfSI7IHRoZW4KKyAgYXNfZm5fZXJyb3IgJD8gImNvbmRpdGlvbmFsIFwiV0lUSF9TVEFSVF9TVE9QX0RBRU1PTlwiIHdhcyBuZXZlciBkZWZpbmVkLgorVXN1YWxseSB0aGlzIG1lYW5zIHRoZSBtYWNybyB3YXMgb25seSBpbnZva2VkIGNvbmRpdGlvbmFsbHkuIiAiJExJTkVOTyIgNQorZmkKK2lmIHRlc3QgLXogIiR7V0lUSF9VUERBVEVfQUxURVJOQVRJVkVTX1RSVUV9IiAmJiB0ZXN0IC16ICIke1dJVEhfVVBEQVRFX0FMVEVSTkFUSVZFU19GQUxTRX0iOyB0aGVuCisgIGFzX2ZuX2Vycm9yICQ/ICJjb25kaXRpb25hbCBcIldJVEhfVVBEQVRFX0FMVEVSTkFUSVZFU1wiIHdhcyBuZXZlciBkZWZpbmVkLgorVXN1YWxseSB0aGlzIG1lYW5zIHRoZSBtYWNybyB3YXMgb25seSBpbnZva2VkIGNvbmRpdGlvbmFsbHkuIiAiJExJTkVOTyIgNQorZmkKK2lmIHRlc3QgLXogIiR7V0lUSF9JTlNUQUxMX0lORk9fVFJVRX0iICYmIHRlc3QgLXogIiR7V0lUSF9JTlNUQUxMX0lORk9fRkFMU0V9IjsgdGhlbgorICBhc19mbl9lcnJvciAkPyAiY29uZGl0aW9uYWwgXCJXSVRIX0lOU1RBTExfSU5GT1wiIHdhcyBuZXZlciBkZWZpbmVkLgorVXN1YWxseSB0aGlzIG1lYW5zIHRoZSBtYWNybyB3YXMgb25seSBpbnZva2VkIGNvbmRpdGlvbmFsbHkuIiAiJExJTkVOTyIgNQorZmkKK2lmIHRlc3QgLXogIiR7YW1fX2Zhc3RkZXBDWFhfVFJVRX0iICYmIHRlc3QgLXogIiR7YW1fX2Zhc3RkZXBDWFhfRkFMU0V9IjsgdGhlbgorICBhc19mbl9lcnJvciAkPyAiY29uZGl0aW9uYWwgXCJhbV9fZmFzdGRlcENYWFwiIHdhcyBuZXZlciBkZWZpbmVkLgorVXN1YWxseSB0aGlzIG1lYW5zIHRoZSBtYWNybyB3YXMgb25seSBpbnZva2VkIGNvbmRpdGlvbmFsbHkuIiAiJExJTkVOTyIgNQorZmkKK2lmIHRlc3QgLXogIiR7QlVJTERfUE9EX0RPQ19UUlVFfSIgJiYgdGVzdCAteiAiJHtCVUlMRF9QT0RfRE9DX0ZBTFNFfSI7IHRoZW4KKyAgYXNfZm5fZXJyb3IgJD8gImNvbmRpdGlvbmFsIFwiQlVJTERfUE9EX0RPQ1wiIHdhcyBuZXZlciBkZWZpbmVkLgorVXN1YWxseSB0aGlzIG1lYW5zIHRoZSBtYWNybyB3YXMgb25seSBpbnZva2VkIGNvbmRpdGlvbmFsbHkuIiAiJExJTkVOTyIgNQorZmkKK2lmIHRlc3QgLXogIiR7Q09WRVJBR0VfRU5BQkxFRF9UUlVFfSIgJiYgdGVzdCAteiAiJHtDT1ZFUkFHRV9FTkFCTEVEX0ZBTFNFfSI7IHRoZW4KKyAgYXNfZm5fZXJyb3IgJD8gImNvbmRpdGlvbmFsIFwiQ09WRVJBR0VfRU5BQkxFRFwiIHdhcyBuZXZlciBkZWZpbmVkLgorVXN1YWxseSB0aGlzIG1lYW5zIHRoZSBtYWNybyB3YXMgb25seSBpbnZva2VkIGNvbmRpdGlvbmFsbHkuIiAiJExJTkVOTyIgNQorZmkKKworaWYgdGVzdCAteiAiJHtIQVZFX0M5OV9TTlBSSU5URl9UUlVFfSIgJiYgdGVzdCAteiAiJHtIQVZFX0M5OV9TTlBSSU5URl9GQUxTRX0iOyB0aGVuCisgIGFzX2ZuX2Vycm9yICQ/ICJjb25kaXRpb25hbCBcIkhBVkVfQzk5X1NOUFJJTlRGXCIgd2FzIG5ldmVyIGRlZmluZWQuCitVc3VhbGx5IHRoaXMgbWVhbnMgdGhlIG1hY3JvIHdhcyBvbmx5IGludm9rZWQgY29uZGl0aW9uYWxseS4iICIkTElORU5PIiA1CitmaQoraWYgdGVzdCAteiAiJHtIQVZFX0dFVE9QVF9UUlVFfSIgJiYgdGVzdCAteiAiJHtIQVZFX0dFVE9QVF9GQUxTRX0iOyB0aGVuCisgIGFzX2ZuX2Vycm9yICQ/ICJjb25kaXRpb25hbCBcIkhBVkVfR0VUT1BUXCIgd2FzIG5ldmVyIGRlZmluZWQuCitVc3VhbGx5IHRoaXMgbWVhbnMgdGhlIG1hY3JvIHdhcyBvbmx5IGludm9rZWQgY29uZGl0aW9uYWxseS4iICIkTElORU5PIiA1CitmaQoraWYgdGVzdCAteiAiJHtIQVZFX0dFVE9QVF9MT05HX1RSVUV9IiAmJiB0ZXN0IC16ICIke0hBVkVfR0VUT1BUX0xPTkdfRkFMU0V9IjsgdGhlbgorICBhc19mbl9lcnJvciAkPyAiY29uZGl0aW9uYWwgXCJIQVZFX0dFVE9QVF9MT05HXCIgd2FzIG5ldmVyIGRlZmluZWQuCitVc3VhbGx5IHRoaXMgbWVhbnMgdGhlIG1hY3JvIHdhcyBvbmx5IGludm9rZWQgY29uZGl0aW9uYWxseS4iICIkTElORU5PIiA1CitmaQoraWYgdGVzdCAteiAiJHtIQVZFX09CU1RBQ0tfRlJFRV9UUlVFfSIgJiYgdGVzdCAteiAiJHtIQVZFX09CU1RBQ0tfRlJFRV9GQUxTRX0iOyB0aGVuCisgIGFzX2ZuX2Vycm9yICQ/ICJjb25kaXRpb25hbCBcIkhBVkVfT0JTVEFDS19GUkVFXCIgd2FzIG5ldmVyIGRlZmluZWQuCitVc3VhbGx5IHRoaXMgbWVhbnMgdGhlIG1hY3JvIHdhcyBvbmx5IGludm9rZWQgY29uZGl0aW9uYWxseS4iICIkTElORU5PIiA1CitmaQoraWYgdGVzdCAteiAiJHtIQVZFX1NUUk5MRU5fVFJVRX0iICYmIHRlc3QgLXogIiR7SEFWRV9TVFJOTEVOX0ZBTFNFfSI7IHRoZW4KKyAgYXNfZm5fZXJyb3IgJD8gImNvbmRpdGlvbmFsIFwiSEFWRV9TVFJOTEVOXCIgd2FzIG5ldmVyIGRlZmluZWQuCitVc3VhbGx5IHRoaXMgbWVhbnMgdGhlIG1hY3JvIHdhcyBvbmx5IGludm9rZWQgY29uZGl0aW9uYWxseS4iICIkTElORU5PIiA1CitmaQoraWYgdGVzdCAteiAiJHtIQVZFX1NUUkVSUk9SX1RSVUV9IiAmJiB0ZXN0IC16ICIke0hBVkVfU1RSRVJST1JfRkFMU0V9IjsgdGhlbgorICBhc19mbl9lcnJvciAkPyAiY29uZGl0aW9uYWwgXCJIQVZFX1NUUkVSUk9SXCIgd2FzIG5ldmVyIGRlZmluZWQuCitVc3VhbGx5IHRoaXMgbWVhbnMgdGhlIG1hY3JvIHdhcyBvbmx5IGludm9rZWQgY29uZGl0aW9uYWxseS4iICIkTElORU5PIiA1CitmaQoraWYgdGVzdCAteiAiJHtIQVZFX1NUUlNJR05BTF9UUlVFfSIgJiYgdGVzdCAteiAiJHtIQVZFX1NUUlNJR05BTF9GQUxTRX0iOyB0aGVuCisgIGFzX2ZuX2Vycm9yICQ/ICJjb25kaXRpb25hbCBcIkhBVkVfU1RSU0lHTkFMXCIgd2FzIG5ldmVyIGRlZmluZWQuCitVc3VhbGx5IHRoaXMgbWVhbnMgdGhlIG1hY3JvIHdhcyBvbmx5IGludm9rZWQgY29uZGl0aW9uYWxseS4iICIkTElORU5PIiA1CitmaQoraWYgdGVzdCAteiAiJHtIQVZFX0FTUFJJTlRGX1RSVUV9IiAmJiB0ZXN0IC16ICIke0hBVkVfQVNQUklOVEZfRkFMU0V9IjsgdGhlbgorICBhc19mbl9lcnJvciAkPyAiY29uZGl0aW9uYWwgXCJIQVZFX0FTUFJJTlRGXCIgd2FzIG5ldmVyIGRlZmluZWQuCitVc3VhbGx5IHRoaXMgbWVhbnMgdGhlIG1hY3JvIHdhcyBvbmx5IGludm9rZWQgY29uZGl0aW9uYWxseS4iICIkTElORU5PIiA1CitmaQoraWYgdGVzdCAteiAiJHtIQVZFX1NDQU5ESVJfVFJVRX0iICYmIHRlc3QgLXogIiR7SEFWRV9TQ0FORElSX0ZBTFNFfSI7IHRoZW4KKyAgYXNfZm5fZXJyb3IgJD8gImNvbmRpdGlvbmFsIFwiSEFWRV9TQ0FORElSXCIgd2FzIG5ldmVyIGRlZmluZWQuCitVc3VhbGx5IHRoaXMgbWVhbnMgdGhlIG1hY3JvIHdhcyBvbmx5IGludm9rZWQgY29uZGl0aW9uYWxseS4iICIkTElORU5PIiA1CitmaQoraWYgdGVzdCAteiAiJHtIQVZFX0FMUEhBU09SVF9UUlVFfSIgJiYgdGVzdCAteiAiJHtIQVZFX0FMUEhBU09SVF9GQUxTRX0iOyB0aGVuCisgIGFzX2ZuX2Vycm9yICQ/ICJjb25kaXRpb25hbCBcIkhBVkVfQUxQSEFTT1JUXCIgd2FzIG5ldmVyIGRlZmluZWQuCitVc3VhbGx5IHRoaXMgbWVhbnMgdGhlIG1hY3JvIHdhcyBvbmx5IGludm9rZWQgY29uZGl0aW9uYWxseS4iICIkTElORU5PIiA1CitmaQoraWYgdGVzdCAteiAiJHtIQVZFX1VOU0VURU5WX1RSVUV9IiAmJiB0ZXN0IC16ICIke0hBVkVfVU5TRVRFTlZfRkFMU0V9IjsgdGhlbgorICBhc19mbl9lcnJvciAkPyAiY29uZGl0aW9uYWwgXCJIQVZFX1VOU0VURU5WXCIgd2FzIG5ldmVyIGRlZmluZWQuCitVc3VhbGx5IHRoaXMgbWVhbnMgdGhlIG1hY3JvIHdhcyBvbmx5IGludm9rZWQgY29uZGl0aW9uYWxseS4iICIkTElORU5PIiA1CitmaQorCis6ICIke0NPTkZJR19TVEFUVVM9Li9jb25maWcuc3RhdHVzfSIKK2FjX3dyaXRlX2ZhaWw9MAorYWNfY2xlYW5fZmlsZXNfc2F2ZT0kYWNfY2xlYW5fZmlsZXMKK2FjX2NsZWFuX2ZpbGVzPSIkYWNfY2xlYW5fZmlsZXMgJENPTkZJR19TVEFUVVMiCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNyZWF0aW5nICRDT05GSUdfU1RBVFVTIiA+JjUKKyRhc19lY2hvICIkYXNfbWU6IGNyZWF0aW5nICRDT05GSUdfU1RBVFVTIiA+JjY7fQorYXNfd3JpdGVfZmFpbD0wCitjYXQgPiRDT05GSUdfU1RBVFVTIDw8X0FTRU9GIHx8IGFzX3dyaXRlX2ZhaWw9MQorIyEgJFNIRUxMCisjIEdlbmVyYXRlZCBieSAkYXNfbWUuCisjIFJ1biB0aGlzIGZpbGUgdG8gcmVjcmVhdGUgdGhlIGN1cnJlbnQgY29uZmlndXJhdGlvbi4KKyMgQ29tcGlsZXIgb3V0cHV0IHByb2R1Y2VkIGJ5IGNvbmZpZ3VyZSwgdXNlZnVsIGZvciBkZWJ1Z2dpbmcKKyMgY29uZmlndXJlLCBpcyBpbiBjb25maWcubG9nIGlmIGl0IGV4aXN0cy4KKworZGVidWc9ZmFsc2UKK2FjX2NzX3JlY2hlY2s9ZmFsc2UKK2FjX2NzX3NpbGVudD1mYWxzZQorCitTSEVMTD1cJHtDT05GSUdfU0hFTEwtJFNIRUxMfQorZXhwb3J0IFNIRUxMCitfQVNFT0YKK2NhdCA+PiRDT05GSUdfU1RBVFVTIDw8XF9BU0VPRiB8fCBhc193cml0ZV9mYWlsPTEKKyMjIC0tLS0tLS0tLS0tLS0tLS0tLS0tICMjCisjIyBNNHNoIEluaXRpYWxpemF0aW9uLiAjIworIyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0gIyMKKworIyBCZSBtb3JlIEJvdXJuZSBjb21wYXRpYmxlCitEVUFMQ0FTRT0xOyBleHBvcnQgRFVBTENBU0UgIyBmb3IgTUtTIHNoCitpZiB0ZXN0IC1uICIke1pTSF9WRVJTSU9OK3NldH0iICYmIChlbXVsYXRlIHNoKSA+L2Rldi9udWxsIDI+JjE7IHRoZW4gOgorICBlbXVsYXRlIHNoCisgIE5VTExDTUQ9OgorICAjIFByZS00LjIgdmVyc2lvbnMgb2YgWnNoIGRvIHdvcmQgc3BsaXR0aW5nIG9uICR7MSsiJEAifSwgd2hpY2gKKyAgIyBpcyBjb250cmFyeSB0byBvdXIgdXNhZ2UuICBEaXNhYmxlIHRoaXMgZmVhdHVyZS4KKyAgYWxpYXMgLWcgJyR7MSsiJEAifSc9JyIkQCInCisgIHNldG9wdCBOT19HTE9CX1NVQlNUCitlbHNlCisgIGNhc2UgYChzZXQgLW8pIDI+L2Rldi9udWxsYCBpbiAjKAorICAqcG9zaXgqKSA6CisgICAgc2V0IC1vIHBvc2l4IDs7ICMoCisgICopIDoKKyAgICAgOzsKK2VzYWMKK2ZpCisKKworYXNfbmw9JworJworZXhwb3J0IGFzX25sCisjIFByaW50aW5nIGEgbG9uZyBzdHJpbmcgY3Jhc2hlcyBTb2xhcmlzIDcgL3Vzci9iaW4vcHJpbnRmLgorYXNfZWNobz0nXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXCcKK2FzX2VjaG89JGFzX2VjaG8kYXNfZWNobyRhc19lY2hvJGFzX2VjaG8kYXNfZWNobworYXNfZWNobz0kYXNfZWNobyRhc19lY2hvJGFzX2VjaG8kYXNfZWNobyRhc19lY2hvJGFzX2VjaG8KKyMgUHJlZmVyIGEga3NoIHNoZWxsIGJ1aWx0aW4gb3ZlciBhbiBleHRlcm5hbCBwcmludGYgcHJvZ3JhbSBvbiBTb2xhcmlzLAorIyBidXQgd2l0aG91dCB3YXN0aW5nIGZvcmtzIGZvciBiYXNoIG9yIHpzaC4KK2lmIHRlc3QgLXogIiRCQVNIX1ZFUlNJT04kWlNIX1ZFUlNJT04iIFwKKyAgICAmJiAodGVzdCAiWGBwcmludCAtciAtLSAkYXNfZWNob2AiID0gIlgkYXNfZWNobyIpIDI+L2Rldi9udWxsOyB0aGVuCisgIGFzX2VjaG89J3ByaW50IC1yIC0tJworICBhc19lY2hvX249J3ByaW50IC1ybiAtLScKK2VsaWYgKHRlc3QgIlhgcHJpbnRmICVzICRhc19lY2hvYCIgPSAiWCRhc19lY2hvIikgMj4vZGV2L251bGw7IHRoZW4KKyAgYXNfZWNobz0ncHJpbnRmICVzXG4nCisgIGFzX2VjaG9fbj0ncHJpbnRmICVzJworZWxzZQorICBpZiB0ZXN0ICJYYCgvdXNyL3VjYi9lY2hvIC1uIC1uICRhc19lY2hvKSAyPi9kZXYvbnVsbGAiID0gIlgtbiAkYXNfZWNobyI7IHRoZW4KKyAgICBhc19lY2hvX2JvZHk9J2V2YWwgL3Vzci91Y2IvZWNobyAtbiAiJDEkYXNfbmwiJworICAgIGFzX2VjaG9fbj0nL3Vzci91Y2IvZWNobyAtbicKKyAgZWxzZQorICAgIGFzX2VjaG9fYm9keT0nZXZhbCBleHByICJYJDEiIDogIlhcXCguKlxcKSInCisgICAgYXNfZWNob19uX2JvZHk9J2V2YWwKKyAgICAgIGFyZz0kMTsKKyAgICAgIGNhc2UgJGFyZyBpbiAjKAorICAgICAgKiIkYXNfbmwiKikKKwlleHByICJYJGFyZyIgOiAiWFxcKC4qXFwpJGFzX25sIjsKKwlhcmc9YGV4cHIgIlgkYXJnIiA6ICIuKiRhc19ubFxcKC4qXFwpImA7OworICAgICAgZXNhYzsKKyAgICAgIGV4cHIgIlgkYXJnIiA6ICJYXFwoLipcXCkiIHwgdHIgLWQgIiRhc19ubCIKKyAgICAnCisgICAgZXhwb3J0IGFzX2VjaG9fbl9ib2R5CisgICAgYXNfZWNob19uPSdzaCAtYyAkYXNfZWNob19uX2JvZHkgYXNfZWNobycKKyAgZmkKKyAgZXhwb3J0IGFzX2VjaG9fYm9keQorICBhc19lY2hvPSdzaCAtYyAkYXNfZWNob19ib2R5IGFzX2VjaG8nCitmaQorCisjIFRoZSB1c2VyIGlzIGFsd2F5cyByaWdodC4KK2lmIHRlc3QgIiR7UEFUSF9TRVBBUkFUT1Irc2V0fSIgIT0gc2V0OyB0aGVuCisgIFBBVEhfU0VQQVJBVE9SPToKKyAgKFBBVEg9Jy9iaW47L2Jpbic7IEZQQVRIPSRQQVRIOyBzaCAtYyA6KSA+L2Rldi9udWxsIDI+JjEgJiYgeworICAgIChQQVRIPScvYmluOi9iaW4nOyBGUEFUSD0kUEFUSDsgc2ggLWMgOikgPi9kZXYvbnVsbCAyPiYxIHx8CisgICAgICBQQVRIX1NFUEFSQVRPUj0nOycKKyAgfQorZmkKKworCisjIElGUworIyBXZSBuZWVkIHNwYWNlLCB0YWIgYW5kIG5ldyBsaW5lLCBpbiBwcmVjaXNlbHkgdGhhdCBvcmRlci4gIFF1b3RpbmcgaXMKKyMgdGhlcmUgdG8gcHJldmVudCBlZGl0b3JzIGZyb20gY29tcGxhaW5pbmcgYWJvdXQgc3BhY2UtdGFiLgorIyAoSWYgX0FTX1BBVEhfV0FMSyB3ZXJlIGNhbGxlZCB3aXRoIElGUyB1bnNldCwgaXQgd291bGQgZGlzYWJsZSB3b3JkCisjIHNwbGl0dGluZyBieSBzZXR0aW5nIElGUyB0byBlbXB0eSB2YWx1ZS4pCitJRlM9IiAiIgkkYXNfbmwiCisKKyMgRmluZCB3aG8gd2UgYXJlLiAgTG9vayBpbiB0aGUgcGF0aCBpZiB3ZSBjb250YWluIG5vIGRpcmVjdG9yeSBzZXBhcmF0b3IuCithc19teXNlbGY9CitjYXNlICQwIGluICMoKAorICAqW1xcL10qICkgYXNfbXlzZWxmPSQwIDs7CisgICopIGFzX3NhdmVfSUZTPSRJRlM7IElGUz0kUEFUSF9TRVBBUkFUT1IKK2ZvciBhc19kaXIgaW4gJFBBVEgKK2RvCisgIElGUz0kYXNfc2F2ZV9JRlMKKyAgdGVzdCAteiAiJGFzX2RpciIgJiYgYXNfZGlyPS4KKyAgICB0ZXN0IC1yICIkYXNfZGlyLyQwIiAmJiBhc19teXNlbGY9JGFzX2Rpci8kMCAmJiBicmVhaworICBkb25lCitJRlM9JGFzX3NhdmVfSUZTCisKKyAgICAgOzsKK2VzYWMKKyMgV2UgZGlkIG5vdCBmaW5kIG91cnNlbHZlcywgbW9zdCBwcm9iYWJseSB3ZSB3ZXJlIHJ1biBhcyBgc2ggQ09NTUFORCcKKyMgaW4gd2hpY2ggY2FzZSB3ZSBhcmUgbm90IHRvIGJlIGZvdW5kIGluIHRoZSBwYXRoLgoraWYgdGVzdCAieCRhc19teXNlbGYiID0geDsgdGhlbgorICBhc19teXNlbGY9JDAKK2ZpCitpZiB0ZXN0ICEgLWYgIiRhc19teXNlbGYiOyB0aGVuCisgICRhc19lY2hvICIkYXNfbXlzZWxmOiBlcnJvcjogY2Fubm90IGZpbmQgbXlzZWxmOyByZXJ1biB3aXRoIGFuIGFic29sdXRlIGZpbGUgbmFtZSIgPiYyCisgIGV4aXQgMQorZmkKKworIyBVbnNldCB2YXJpYWJsZXMgdGhhdCB3ZSBkbyBub3QgbmVlZCBhbmQgd2hpY2ggY2F1c2UgYnVncyAoZS5nLiBpbgorIyBwcmUtMy4wIFVXSU4ga3NoKS4gIEJ1dCBkbyBub3QgY2F1c2UgYnVncyBpbiBiYXNoIDIuMDE7IHRoZSAifHwgZXhpdCAxIgorIyBzdXBwcmVzc2VzIGFueSAiU2VnbWVudGF0aW9uIGZhdWx0IiBtZXNzYWdlIHRoZXJlLiAgJygoJyBjb3VsZAorIyB0cmlnZ2VyIGEgYnVnIGluIHBka3NoIDUuMi4xNC4KK2ZvciBhc192YXIgaW4gQkFTSF9FTlYgRU5WIE1BSUwgTUFJTFBBVEgKK2RvIGV2YWwgdGVzdCB4XCR7JGFzX3ZhcitzZXR9ID0geHNldCBcCisgICYmICggKHVuc2V0ICRhc192YXIpIHx8IGV4aXQgMSkgPi9kZXYvbnVsbCAyPiYxICYmIHVuc2V0ICRhc192YXIgfHwgOgorZG9uZQorUFMxPSckICcKK1BTMj0nPiAnCitQUzQ9JysgJworCisjIE5MUyBudWlzYW5jZXMuCitMQ19BTEw9QworZXhwb3J0IExDX0FMTAorTEFOR1VBR0U9QworZXhwb3J0IExBTkdVQUdFCisKKyMgQ0RQQVRILgorKHVuc2V0IENEUEFUSCkgPi9kZXYvbnVsbCAyPiYxICYmIHVuc2V0IENEUEFUSAorCisKKyMgYXNfZm5fZXJyb3IgU1RBVFVTIEVSUk9SIFtMSU5FTk8gTE9HX0ZEXQorIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisjIE91dHB1dCAiYGJhc2VuYW1lICQwYDogZXJyb3I6IEVSUk9SIiB0byBzdGRlcnIuIElmIExJTkVOTyBhbmQgTE9HX0ZEIGFyZQorIyBwcm92aWRlZCwgYWxzbyBvdXRwdXQgdGhlIGVycm9yIHRvIExPR19GRCwgcmVmZXJlbmNpbmcgTElORU5PLiBUaGVuIGV4aXQgdGhlCisjIHNjcmlwdCB3aXRoIFNUQVRVUywgdXNpbmcgMSBpZiB0aGF0IHdhcyAwLgorYXNfZm5fZXJyb3IgKCkKK3sKKyAgYXNfc3RhdHVzPSQxOyB0ZXN0ICRhc19zdGF0dXMgLWVxIDAgJiYgYXNfc3RhdHVzPTEKKyAgaWYgdGVzdCAiJDQiOyB0aGVuCisgICAgYXNfbGluZW5vPSR7YXNfbGluZW5vLSIkMyJ9IGFzX2xpbmVub19zdGFjaz1hc19saW5lbm9fc3RhY2s9JGFzX2xpbmVub19zdGFjaworICAgICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGVycm9yOiAkMiIgPiYkNAorICBmaQorICAkYXNfZWNobyAiJGFzX21lOiBlcnJvcjogJDIiID4mMgorICBhc19mbl9leGl0ICRhc19zdGF0dXMKK30gIyBhc19mbl9lcnJvcgorCisKKyMgYXNfZm5fc2V0X3N0YXR1cyBTVEFUVVMKKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyMgU2V0ICQ/IHRvIFNUQVRVUywgd2l0aG91dCBmb3JraW5nLgorYXNfZm5fc2V0X3N0YXR1cyAoKQoreworICByZXR1cm4gJDEKK30gIyBhc19mbl9zZXRfc3RhdHVzCisKKyMgYXNfZm5fZXhpdCBTVEFUVVMKKyMgLS0tLS0tLS0tLS0tLS0tLS0KKyMgRXhpdCB0aGUgc2hlbGwgd2l0aCBTVEFUVVMsIGV2ZW4gaW4gYSAidHJhcCAwIiBvciAic2V0IC1lIiBjb250ZXh0LgorYXNfZm5fZXhpdCAoKQoreworICBzZXQgK2UKKyAgYXNfZm5fc2V0X3N0YXR1cyAkMQorICBleGl0ICQxCit9ICMgYXNfZm5fZXhpdAorCisjIGFzX2ZuX3Vuc2V0IFZBUgorIyAtLS0tLS0tLS0tLS0tLS0KKyMgUG9ydGFibHkgdW5zZXQgVkFSLgorYXNfZm5fdW5zZXQgKCkKK3sKKyAgeyBldmFsICQxPTsgdW5zZXQgJDE7fQorfQorYXNfdW5zZXQ9YXNfZm5fdW5zZXQKKyMgYXNfZm5fYXBwZW5kIFZBUiBWQUxVRQorIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisjIEFwcGVuZCB0aGUgdGV4dCBpbiBWQUxVRSB0byB0aGUgZW5kIG9mIHRoZSBkZWZpbml0aW9uIGNvbnRhaW5lZCBpbiBWQVIuIFRha2UKKyMgYWR2YW50YWdlIG9mIGFueSBzaGVsbCBvcHRpbWl6YXRpb25zIHRoYXQgYWxsb3cgYW1vcnRpemVkIGxpbmVhciBncm93dGggb3ZlcgorIyByZXBlYXRlZCBhcHBlbmRzLCBpbnN0ZWFkIG9mIHRoZSB0eXBpY2FsIHF1YWRyYXRpYyBncm93dGggcHJlc2VudCBpbiBuYWl2ZQorIyBpbXBsZW1lbnRhdGlvbnMuCitpZiAoZXZhbCAiYXNfdmFyPTE7IGFzX3Zhcis9MjsgdGVzdCB4XCRhc192YXIgPSB4MTIiKSAyPi9kZXYvbnVsbDsgdGhlbiA6CisgIGV2YWwgJ2FzX2ZuX2FwcGVuZCAoKQorICB7CisgICAgZXZhbCAkMSs9XCQyCisgIH0nCitlbHNlCisgIGFzX2ZuX2FwcGVuZCAoKQorICB7CisgICAgZXZhbCAkMT1cJCQxXCQyCisgIH0KK2ZpICMgYXNfZm5fYXBwZW5kCisKKyMgYXNfZm5fYXJpdGggQVJHLi4uCisjIC0tLS0tLS0tLS0tLS0tLS0tLQorIyBQZXJmb3JtIGFyaXRobWV0aWMgZXZhbHVhdGlvbiBvbiB0aGUgQVJHcywgYW5kIHN0b3JlIHRoZSByZXN1bHQgaW4gdGhlCisjIGdsb2JhbCAkYXNfdmFsLiBUYWtlIGFkdmFudGFnZSBvZiBzaGVsbHMgdGhhdCBjYW4gYXZvaWQgZm9ya3MuIFRoZSBhcmd1bWVudHMKKyMgbXVzdCBiZSBwb3J0YWJsZSBhY3Jvc3MgJCgoKSkgYW5kIGV4cHIuCitpZiAoZXZhbCAidGVzdCBcJCgoIDEgKyAxICkpID0gMiIpIDI+L2Rldi9udWxsOyB0aGVuIDoKKyAgZXZhbCAnYXNfZm5fYXJpdGggKCkKKyAgeworICAgIGFzX3ZhbD0kKCggJCogKSkKKyAgfScKK2Vsc2UKKyAgYXNfZm5fYXJpdGggKCkKKyAgeworICAgIGFzX3ZhbD1gZXhwciAiJEAiIHx8IHRlc3QgJD8gLWVxIDFgCisgIH0KK2ZpICMgYXNfZm5fYXJpdGgKKworCitpZiBleHByIGEgOiAnXChhXCknID4vZGV2L251bGwgMj4mMSAmJgorICAgdGVzdCAiWGBleHByIDAwMDAxIDogJy4qXCguLi5cKSdgIiA9IFgwMDE7IHRoZW4KKyAgYXNfZXhwcj1leHByCitlbHNlCisgIGFzX2V4cHI9ZmFsc2UKK2ZpCisKK2lmIChiYXNlbmFtZSAtLSAvKSA+L2Rldi9udWxsIDI+JjEgJiYgdGVzdCAiWGBiYXNlbmFtZSAtLSAvIDI+JjFgIiA9ICJYLyI7IHRoZW4KKyAgYXNfYmFzZW5hbWU9YmFzZW5hbWUKK2Vsc2UKKyAgYXNfYmFzZW5hbWU9ZmFsc2UKK2ZpCisKK2lmIChhc19kaXI9YGRpcm5hbWUgLS0gL2AgJiYgdGVzdCAiWCRhc19kaXIiID0gWC8pID4vZGV2L251bGwgMj4mMTsgdGhlbgorICBhc19kaXJuYW1lPWRpcm5hbWUKK2Vsc2UKKyAgYXNfZGlybmFtZT1mYWxzZQorZmkKKworYXNfbWU9YCRhc19iYXNlbmFtZSAtLSAiJDAiIHx8CiskYXNfZXhwciBYLyIkMCIgOiAnLiovXChbXi9dW14vXSpcKS8qJCcgXHwgXAorCSBYIiQwIiA6ICdYXCgvL1wpJCcgXHwgXAorCSBYIiQwIiA6ICdYXCgvXCknIFx8IC4gMj4vZGV2L251bGwgfHwKKyRhc19lY2hvIFgvIiQwIiB8CisgICAgc2VkICcvXi4qXC9cKFteL11bXi9dKlwpXC8qJC97CisJICAgIHMvL1wxLworCSAgICBxCisJICB9CisJICAvXlhcL1woXC9cL1wpJC97CisJICAgIHMvL1wxLworCSAgICBxCisJICB9CisJICAvXlhcL1woXC9cKS4qL3sKKwkgICAgcy8vXDEvCisJICAgIHEKKwkgIH0KKwkgIHMvLiovLi87IHEnYAorCisjIEF2b2lkIGRlcGVuZGluZyB1cG9uIENoYXJhY3RlciBSYW5nZXMuCithc19jcl9sZXR0ZXJzPSdhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5eicKK2FzX2NyX0xFVFRFUlM9J0FCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaJworYXNfY3JfTGV0dGVycz0kYXNfY3JfbGV0dGVycyRhc19jcl9MRVRURVJTCithc19jcl9kaWdpdHM9JzAxMjM0NTY3ODknCithc19jcl9hbG51bT0kYXNfY3JfTGV0dGVycyRhc19jcl9kaWdpdHMKKworRUNIT19DPSBFQ0hPX049IEVDSE9fVD0KK2Nhc2UgYGVjaG8gLW4geGAgaW4gIygoKCgoCistbiopCisgIGNhc2UgYGVjaG8gJ3h5XGMnYCBpbgorICAqYyopIEVDSE9fVD0nCSc7OwkjIEVDSE9fVCBpcyBzaW5nbGUgdGFiIGNoYXJhY3Rlci4KKyAgeHkpICBFQ0hPX0M9J1xjJzs7CisgICopICAgZWNobyBgZWNobyBrc2g4OCBidWcgb24gQUlYIDYuMWAgPiAvZGV2L251bGwKKyAgICAgICBFQ0hPX1Q9JwknOzsKKyAgZXNhYzs7CisqKQorICBFQ0hPX049Jy1uJzs7Citlc2FjCisKK3JtIC1mIGNvbmYkJCBjb25mJCQuZXhlIGNvbmYkJC5maWxlCitpZiB0ZXN0IC1kIGNvbmYkJC5kaXI7IHRoZW4KKyAgcm0gLWYgY29uZiQkLmRpci9jb25mJCQuZmlsZQorZWxzZQorICBybSAtZiBjb25mJCQuZGlyCisgIG1rZGlyIGNvbmYkJC5kaXIgMj4vZGV2L251bGwKK2ZpCitpZiAoZWNobyA+Y29uZiQkLmZpbGUpIDI+L2Rldi9udWxsOyB0aGVuCisgIGlmIGxuIC1zIGNvbmYkJC5maWxlIGNvbmYkJCAyPi9kZXYvbnVsbDsgdGhlbgorICAgIGFzX2xuX3M9J2xuIC1zJworICAgICMgLi4uIGJ1dCB0aGVyZSBhcmUgdHdvIGdvdGNoYXM6CisgICAgIyAxKSBPbiBNU1lTLCBib3RoIGBsbiAtcyBmaWxlIGRpcicgYW5kIGBsbiBmaWxlIGRpcicgZmFpbC4KKyAgICAjIDIpIERKR1BQIDwgMi4wNCBoYXMgbm8gc3ltbGlua3M7IGBsbiAtcycgY3JlYXRlcyBhIHdyYXBwZXIgZXhlY3V0YWJsZS4KKyAgICAjIEluIGJvdGggY2FzZXMsIHdlIGhhdmUgdG8gZGVmYXVsdCB0byBgY3AgLXAnLgorICAgIGxuIC1zIGNvbmYkJC5maWxlIGNvbmYkJC5kaXIgMj4vZGV2L251bGwgJiYgdGVzdCAhIC1mIGNvbmYkJC5leGUgfHwKKyAgICAgIGFzX2xuX3M9J2NwIC1wJworICBlbGlmIGxuIGNvbmYkJC5maWxlIGNvbmYkJCAyPi9kZXYvbnVsbDsgdGhlbgorICAgIGFzX2xuX3M9bG4KKyAgZWxzZQorICAgIGFzX2xuX3M9J2NwIC1wJworICBmaQorZWxzZQorICBhc19sbl9zPSdjcCAtcCcKK2ZpCitybSAtZiBjb25mJCQgY29uZiQkLmV4ZSBjb25mJCQuZGlyL2NvbmYkJC5maWxlIGNvbmYkJC5maWxlCitybWRpciBjb25mJCQuZGlyIDI+L2Rldi9udWxsCisKKworIyBhc19mbl9ta2Rpcl9wCisjIC0tLS0tLS0tLS0tLS0KKyMgQ3JlYXRlICIkYXNfZGlyIiBhcyBhIGRpcmVjdG9yeSwgaW5jbHVkaW5nIHBhcmVudHMgaWYgbmVjZXNzYXJ5LgorYXNfZm5fbWtkaXJfcCAoKQoreworCisgIGNhc2UgJGFzX2RpciBpbiAjKAorICAtKikgYXNfZGlyPS4vJGFzX2Rpcjs7CisgIGVzYWMKKyAgdGVzdCAtZCAiJGFzX2RpciIgfHwgZXZhbCAkYXNfbWtkaXJfcCB8fCB7CisgICAgYXNfZGlycz0KKyAgICB3aGlsZSA6OyBkbworICAgICAgY2FzZSAkYXNfZGlyIGluICMoCisgICAgICAqXCcqKSBhc19xZGlyPWAkYXNfZWNobyAiJGFzX2RpciIgfCBzZWQgInMvJy8nXFxcXFxcXFwnJy9nImA7OyAjJygKKyAgICAgICopIGFzX3FkaXI9JGFzX2Rpcjs7CisgICAgICBlc2FjCisgICAgICBhc19kaXJzPSInJGFzX3FkaXInICRhc19kaXJzIgorICAgICAgYXNfZGlyPWAkYXNfZGlybmFtZSAtLSAiJGFzX2RpciIgfHwKKyRhc19leHByIFgiJGFzX2RpciIgOiAnWFwoLipbXi9dXCkvLypbXi9dW14vXSovKiQnIFx8IFwKKwkgWCIkYXNfZGlyIiA6ICdYXCgvL1wpW14vXScgXHwgXAorCSBYIiRhc19kaXIiIDogJ1hcKC8vXCkkJyBcfCBcCisJIFgiJGFzX2RpciIgOiAnWFwoL1wpJyBcfCAuIDI+L2Rldi9udWxsIHx8CiskYXNfZWNobyBYIiRhc19kaXIiIHwKKyAgICBzZWQgJy9eWFwoLipbXi9dXClcL1wvKlteL11bXi9dKlwvKiQveworCSAgICBzLy9cMS8KKwkgICAgcQorCSAgfQorCSAgL15YXChcL1wvXClbXi9dLioveworCSAgICBzLy9cMS8KKwkgICAgcQorCSAgfQorCSAgL15YXChcL1wvXCkkL3sKKwkgICAgcy8vXDEvCisJICAgIHEKKwkgIH0KKwkgIC9eWFwoXC9cKS4qL3sKKwkgICAgcy8vXDEvCisJICAgIHEKKwkgIH0KKwkgIHMvLiovLi87IHEnYAorICAgICAgdGVzdCAtZCAiJGFzX2RpciIgJiYgYnJlYWsKKyAgICBkb25lCisgICAgdGVzdCAteiAiJGFzX2RpcnMiIHx8IGV2YWwgIm1rZGlyICRhc19kaXJzIgorICB9IHx8IHRlc3QgLWQgIiRhc19kaXIiIHx8IGFzX2ZuX2Vycm9yICQ/ICJjYW5ub3QgY3JlYXRlIGRpcmVjdG9yeSAkYXNfZGlyIgorCisKK30gIyBhc19mbl9ta2Rpcl9wCitpZiBta2RpciAtcCAuIDI+L2Rldi9udWxsOyB0aGVuCisgIGFzX21rZGlyX3A9J21rZGlyIC1wICIkYXNfZGlyIicKK2Vsc2UKKyAgdGVzdCAtZCAuLy1wICYmIHJtZGlyIC4vLXAKKyAgYXNfbWtkaXJfcD1mYWxzZQorZmkKKworaWYgdGVzdCAteCAvID4vZGV2L251bGwgMj4mMTsgdGhlbgorICBhc190ZXN0X3g9J3Rlc3QgLXgnCitlbHNlCisgIGlmIGxzIC1kTCAvID4vZGV2L251bGwgMj4mMTsgdGhlbgorICAgIGFzX2xzX0xfb3B0aW9uPUwKKyAgZWxzZQorICAgIGFzX2xzX0xfb3B0aW9uPQorICBmaQorICBhc190ZXN0X3g9JworICAgIGV2YWwgc2ggLWMgJ1wnJworICAgICAgaWYgdGVzdCAtZCAiJDEiOyB0aGVuCisJdGVzdCAtZCAiJDEvLiI7CisgICAgICBlbHNlCisJY2FzZSAkMSBpbiAjKAorCS0qKXNldCAiLi8kMSI7OworCWVzYWM7CisJY2FzZSBgbHMgLWxkJyRhc19sc19MX29wdGlvbicgIiQxIiAyPi9kZXYvbnVsbGAgaW4gIygoCisJPz8/W3N4XSopOjs7KilmYWxzZTs7ZXNhYztmaQorICAgICdcJycgc2gKKyAgJworZmkKK2FzX2V4ZWN1dGFibGVfcD0kYXNfdGVzdF94CisKKyMgU2VkIGV4cHJlc3Npb24gdG8gbWFwIGEgc3RyaW5nIG9udG8gYSB2YWxpZCBDUFAgbmFtZS4KK2FzX3RyX2NwcD0iZXZhbCBzZWQgJ3klKiRhc19jcl9sZXR0ZXJzJVAkYXNfY3JfTEVUVEVSUyU7cyVbXl8kYXNfY3JfYWxudW1dJV8lZyciCisKKyMgU2VkIGV4cHJlc3Npb24gdG8gbWFwIGEgc3RyaW5nIG9udG8gYSB2YWxpZCB2YXJpYWJsZSBuYW1lLgorYXNfdHJfc2g9ImV2YWwgc2VkICd5JSorJXBwJTtzJVteXyRhc19jcl9hbG51bV0lXyVnJyIKKworCitleGVjIDY+JjEKKyMjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICMjCisjIyBNYWluIGJvZHkgb2YgJENPTkZJR19TVEFUVVMgc2NyaXB0LiAjIworIyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gIyMKK19BU0VPRgordGVzdCAkYXNfd3JpdGVfZmFpbCA9IDAgJiYgY2htb2QgK3ggJENPTkZJR19TVEFUVVMgfHwgYWNfd3JpdGVfZmFpbD0xCisKK2NhdCA+PiRDT05GSUdfU1RBVFVTIDw8XF9BQ0VPRiB8fCBhY193cml0ZV9mYWlsPTEKKyMgU2F2ZSB0aGUgbG9nIG1lc3NhZ2UsIHRvIGtlZXAgJDAgYW5kIHNvIG9uIG1lYW5pbmdmdWwsIGFuZCB0bworIyByZXBvcnQgYWN0dWFsIGlucHV0IHZhbHVlcyBvZiBDT05GSUdfRklMRVMgZXRjLiBpbnN0ZWFkIG9mIHRoZWlyCisjIHZhbHVlcyBhZnRlciBvcHRpb25zIGhhbmRsaW5nLgorYWNfbG9nPSIKK1RoaXMgZmlsZSB3YXMgZXh0ZW5kZWQgYnkgZHBrZyAkYXNfbWUgMS4xNi4xLjEsIHdoaWNoIHdhcworZ2VuZXJhdGVkIGJ5IEdOVSBBdXRvY29uZiAyLjY4LiAgSW52b2NhdGlvbiBjb21tYW5kIGxpbmUgd2FzCisKKyAgQ09ORklHX0ZJTEVTICAgID0gJENPTkZJR19GSUxFUworICBDT05GSUdfSEVBREVSUyAgPSAkQ09ORklHX0hFQURFUlMKKyAgQ09ORklHX0xJTktTICAgID0gJENPTkZJR19MSU5LUworICBDT05GSUdfQ09NTUFORFMgPSAkQ09ORklHX0NPTU1BTkRTCisgICQgJDAgJEAKKworb24gYChob3N0bmFtZSB8fCB1bmFtZSAtbikgMj4vZGV2L251bGwgfCBzZWQgMXFgCisiCisKK19BQ0VPRgorCitjYXNlICRhY19jb25maWdfZmlsZXMgaW4gKiIKKyIqKSBzZXQgeCAkYWNfY29uZmlnX2ZpbGVzOyBzaGlmdDsgYWNfY29uZmlnX2ZpbGVzPSQqOzsKK2VzYWMKKworY2FzZSAkYWNfY29uZmlnX2hlYWRlcnMgaW4gKiIKKyIqKSBzZXQgeCAkYWNfY29uZmlnX2hlYWRlcnM7IHNoaWZ0OyBhY19jb25maWdfaGVhZGVycz0kKjs7Citlc2FjCisKKworY2F0ID4+JENPTkZJR19TVEFUVVMgPDxfQUNFT0YgfHwgYWNfd3JpdGVfZmFpbD0xCisjIEZpbGVzIHRoYXQgY29uZmlnLnN0YXR1cyB3YXMgbWFkZSBmb3IuCitjb25maWdfZmlsZXM9IiRhY19jb25maWdfZmlsZXMiCitjb25maWdfaGVhZGVycz0iJGFjX2NvbmZpZ19oZWFkZXJzIgorY29uZmlnX2NvbW1hbmRzPSIkYWNfY29uZmlnX2NvbW1hbmRzIgorCitfQUNFT0YKKworY2F0ID4+JENPTkZJR19TVEFUVVMgPDxcX0FDRU9GIHx8IGFjX3dyaXRlX2ZhaWw9MQorYWNfY3NfdXNhZ2U9IlwKK1xgJGFzX21lJyBpbnN0YW50aWF0ZXMgZmlsZXMgYW5kIG90aGVyIGNvbmZpZ3VyYXRpb24gYWN0aW9ucworZnJvbSB0ZW1wbGF0ZXMgYWNjb3JkaW5nIHRvIHRoZSBjdXJyZW50IGNvbmZpZ3VyYXRpb24uICBVbmxlc3MgdGhlIGZpbGVzCithbmQgYWN0aW9ucyBhcmUgc3BlY2lmaWVkIGFzIFRBR3MsIGFsbCBhcmUgaW5zdGFudGlhdGVkIGJ5IGRlZmF1bHQuCisKK1VzYWdlOiAkMCBbT1BUSU9OXS4uLiBbVEFHXS4uLgorCisgIC1oLCAtLWhlbHAgICAgICAgcHJpbnQgdGhpcyBoZWxwLCB0aGVuIGV4aXQKKyAgLVYsIC0tdmVyc2lvbiAgICBwcmludCB2ZXJzaW9uIG51bWJlciBhbmQgY29uZmlndXJhdGlvbiBzZXR0aW5ncywgdGhlbiBleGl0CisgICAgICAtLWNvbmZpZyAgICAgcHJpbnQgY29uZmlndXJhdGlvbiwgdGhlbiBleGl0CisgIC1xLCAtLXF1aWV0LCAtLXNpbGVudAorICAgICAgICAgICAgICAgICAgIGRvIG5vdCBwcmludCBwcm9ncmVzcyBtZXNzYWdlcworICAtZCwgLS1kZWJ1ZyAgICAgIGRvbid0IHJlbW92ZSB0ZW1wb3JhcnkgZmlsZXMKKyAgICAgIC0tcmVjaGVjayAgICB1cGRhdGUgJGFzX21lIGJ5IHJlY29uZmlndXJpbmcgaW4gdGhlIHNhbWUgY29uZGl0aW9ucworICAgICAgLS1maWxlPUZJTEVbOlRFTVBMQVRFXQorICAgICAgICAgICAgICAgICAgIGluc3RhbnRpYXRlIHRoZSBjb25maWd1cmF0aW9uIGZpbGUgRklMRQorICAgICAgLS1oZWFkZXI9RklMRVs6VEVNUExBVEVdCisgICAgICAgICAgICAgICAgICAgaW5zdGFudGlhdGUgdGhlIGNvbmZpZ3VyYXRpb24gaGVhZGVyIEZJTEUKKworQ29uZmlndXJhdGlvbiBmaWxlczoKKyRjb25maWdfZmlsZXMKKworQ29uZmlndXJhdGlvbiBoZWFkZXJzOgorJGNvbmZpZ19oZWFkZXJzCisKK0NvbmZpZ3VyYXRpb24gY29tbWFuZHM6CiskY29uZmlnX2NvbW1hbmRzCisKK1JlcG9ydCBidWdzIHRvIDxkZWJpYW4tZHBrZ0BsaXN0cy5kZWJpYW4ub3JnPi4iCisKK19BQ0VPRgorY2F0ID4+JENPTkZJR19TVEFUVVMgPDxfQUNFT0YgfHwgYWNfd3JpdGVfZmFpbD0xCithY19jc19jb25maWc9ImAkYXNfZWNobyAiJGFjX2NvbmZpZ3VyZV9hcmdzIiB8IHNlZCAncy9eIC8vOyBzL1tcXCIiXGBcJF0vXFxcXCYvZydgIgorYWNfY3NfdmVyc2lvbj0iXFwKK2Rwa2cgY29uZmlnLnN0YXR1cyAxLjE2LjEuMQorY29uZmlndXJlZCBieSAkMCwgZ2VuZXJhdGVkIGJ5IEdOVSBBdXRvY29uZiAyLjY4LAorICB3aXRoIG9wdGlvbnMgXFwiXCRhY19jc19jb25maWdcXCIKKworQ29weXJpZ2h0IChDKSAyMDEwIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgorVGhpcyBjb25maWcuc3RhdHVzIHNjcmlwdCBpcyBmcmVlIHNvZnR3YXJlOyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uCitnaXZlcyB1bmxpbWl0ZWQgcGVybWlzc2lvbiB0byBjb3B5LCBkaXN0cmlidXRlIGFuZCBtb2RpZnkgaXQuIgorCithY19wd2Q9JyRhY19wd2QnCitzcmNkaXI9JyRzcmNkaXInCitJTlNUQUxMPSckSU5TVEFMTCcKK01LRElSX1A9JyRNS0RJUl9QJworQVdLPSckQVdLJwordGVzdCAtbiAiXCRBV0siIHx8IEFXSz1hd2sKK19BQ0VPRgorCitjYXQgPj4kQ09ORklHX1NUQVRVUyA8PFxfQUNFT0YgfHwgYWNfd3JpdGVfZmFpbD0xCisjIFRoZSBkZWZhdWx0IGxpc3RzIGFwcGx5IGlmIHRoZSB1c2VyIGRvZXMgbm90IHNwZWNpZnkgYW55IGZpbGUuCithY19uZWVkX2RlZmF1bHRzPToKK3doaWxlIHRlc3QgJCMgIT0gMAorZG8KKyAgY2FzZSAkMSBpbgorICAtLSo9PyopCisgICAgYWNfb3B0aW9uPWBleHByICJYJDEiIDogJ1hcKFtePV0qXCk9J2AKKyAgICBhY19vcHRhcmc9YGV4cHIgIlgkMSIgOiAnWFtePV0qPVwoLipcKSdgCisgICAgYWNfc2hpZnQ9OgorICAgIDs7CisgIC0tKj0pCisgICAgYWNfb3B0aW9uPWBleHByICJYJDEiIDogJ1hcKFtePV0qXCk9J2AKKyAgICBhY19vcHRhcmc9CisgICAgYWNfc2hpZnQ9OgorICAgIDs7CisgICopCisgICAgYWNfb3B0aW9uPSQxCisgICAgYWNfb3B0YXJnPSQyCisgICAgYWNfc2hpZnQ9c2hpZnQKKyAgICA7OworICBlc2FjCisKKyAgY2FzZSAkYWNfb3B0aW9uIGluCisgICMgSGFuZGxpbmcgb2YgdGhlIG9wdGlvbnMuCisgIC1yZWNoZWNrIHwgLS1yZWNoZWNrIHwgLS1yZWNoZWMgfCAtLXJlY2hlIHwgLS1yZWNoIHwgLS1yZWMgfCAtLXJlIHwgLS1yKQorICAgIGFjX2NzX3JlY2hlY2s9OiA7OworICAtLXZlcnNpb24gfCAtLXZlcnNpbyB8IC0tdmVyc2kgfCAtLXZlcnMgfCAtLXZlciB8IC0tdmUgfCAtLXYgfCAtViApCisgICAgJGFzX2VjaG8gIiRhY19jc192ZXJzaW9uIjsgZXhpdCA7OworICAtLWNvbmZpZyB8IC0tY29uZmkgfCAtLWNvbmYgfCAtLWNvbiB8IC0tY28gfCAtLWMgKQorICAgICRhc19lY2hvICIkYWNfY3NfY29uZmlnIjsgZXhpdCA7OworICAtLWRlYnVnIHwgLS1kZWJ1IHwgLS1kZWIgfCAtLWRlIHwgLS1kIHwgLWQgKQorICAgIGRlYnVnPTogOzsKKyAgLS1maWxlIHwgLS1maWwgfCAtLWZpIHwgLS1mICkKKyAgICAkYWNfc2hpZnQKKyAgICBjYXNlICRhY19vcHRhcmcgaW4KKyAgICAqXCcqKSBhY19vcHRhcmc9YCRhc19lY2hvICIkYWNfb3B0YXJnIiB8IHNlZCAicy8nLydcXFxcXFxcXCcnL2ciYCA7OworICAgICcnKSBhc19mbl9lcnJvciAkPyAibWlzc2luZyBmaWxlIGFyZ3VtZW50IiA7OworICAgIGVzYWMKKyAgICBhc19mbl9hcHBlbmQgQ09ORklHX0ZJTEVTICIgJyRhY19vcHRhcmcnIgorICAgIGFjX25lZWRfZGVmYXVsdHM9ZmFsc2U7OworICAtLWhlYWRlciB8IC0taGVhZGUgfCAtLWhlYWQgfCAtLWhlYSApCisgICAgJGFjX3NoaWZ0CisgICAgY2FzZSAkYWNfb3B0YXJnIGluCisgICAgKlwnKikgYWNfb3B0YXJnPWAkYXNfZWNobyAiJGFjX29wdGFyZyIgfCBzZWQgInMvJy8nXFxcXFxcXFwnJy9nImAgOzsKKyAgICBlc2FjCisgICAgYXNfZm5fYXBwZW5kIENPTkZJR19IRUFERVJTICIgJyRhY19vcHRhcmcnIgorICAgIGFjX25lZWRfZGVmYXVsdHM9ZmFsc2U7OworICAtLWhlIHwgLS1oKQorICAgICMgQ29uZmxpY3QgYmV0d2VlbiAtLWhlbHAgYW5kIC0taGVhZGVyCisgICAgYXNfZm5fZXJyb3IgJD8gImFtYmlndW91cyBvcHRpb246IFxgJDEnCitUcnkgXGAkMCAtLWhlbHAnIGZvciBtb3JlIGluZm9ybWF0aW9uLiI7OworICAtLWhlbHAgfCAtLWhlbCB8IC1oICkKKyAgICAkYXNfZWNobyAiJGFjX2NzX3VzYWdlIjsgZXhpdCA7OworICAtcSB8IC1xdWlldCB8IC0tcXVpZXQgfCAtLXF1aWUgfCAtLXF1aSB8IC0tcXUgfCAtLXEgXAorICB8IC1zaWxlbnQgfCAtLXNpbGVudCB8IC0tc2lsZW4gfCAtLXNpbGUgfCAtLXNpbCB8IC0tc2kgfCAtLXMpCisgICAgYWNfY3Nfc2lsZW50PTogOzsKKworICAjIFRoaXMgaXMgYW4gZXJyb3IuCisgIC0qKSBhc19mbl9lcnJvciAkPyAidW5yZWNvZ25pemVkIG9wdGlvbjogXGAkMScKK1RyeSBcYCQwIC0taGVscCcgZm9yIG1vcmUgaW5mb3JtYXRpb24uIiA7OworCisgICopIGFzX2ZuX2FwcGVuZCBhY19jb25maWdfdGFyZ2V0cyAiICQxIgorICAgICBhY19uZWVkX2RlZmF1bHRzPWZhbHNlIDs7CisKKyAgZXNhYworICBzaGlmdAorZG9uZQorCithY19jb25maWd1cmVfZXh0cmFfYXJncz0KKworaWYgJGFjX2NzX3NpbGVudDsgdGhlbgorICBleGVjIDY+L2Rldi9udWxsCisgIGFjX2NvbmZpZ3VyZV9leHRyYV9hcmdzPSIkYWNfY29uZmlndXJlX2V4dHJhX2FyZ3MgLS1zaWxlbnQiCitmaQorCitfQUNFT0YKK2NhdCA+PiRDT05GSUdfU1RBVFVTIDw8X0FDRU9GIHx8IGFjX3dyaXRlX2ZhaWw9MQoraWYgXCRhY19jc19yZWNoZWNrOyB0aGVuCisgIHNldCBYICckU0hFTEwnICckMCcgJGFjX2NvbmZpZ3VyZV9hcmdzIFwkYWNfY29uZmlndXJlX2V4dHJhX2FyZ3MgLS1uby1jcmVhdGUgLS1uby1yZWN1cnNpb24KKyAgc2hpZnQKKyAgXCRhc19lY2hvICJydW5uaW5nIENPTkZJR19TSEVMTD0kU0hFTEwgXCQqIiA+JjYKKyAgQ09ORklHX1NIRUxMPSckU0hFTEwnCisgIGV4cG9ydCBDT05GSUdfU0hFTEwKKyAgZXhlYyAiXCRAIgorZmkKKworX0FDRU9GCitjYXQgPj4kQ09ORklHX1NUQVRVUyA8PFxfQUNFT0YgfHwgYWNfd3JpdGVfZmFpbD0xCitleGVjIDU+PmNvbmZpZy5sb2cKK3sKKyAgZWNobworICBzZWQgJ2g7cy8uLy0vZztzL14uLi4vIyMgLztzLy4uLiQvICMjLztwO3g7cDt4JyA8PF9BU0JPWAorIyMgUnVubmluZyAkYXNfbWUuICMjCitfQVNCT1gKKyAgJGFzX2VjaG8gIiRhY19sb2ciCit9ID4mNQorCitfQUNFT0YKK2NhdCA+PiRDT05GSUdfU1RBVFVTIDw8X0FDRU9GIHx8IGFjX3dyaXRlX2ZhaWw9MQorIworIyBJTklULUNPTU1BTkRTCisjCitBTURFUF9UUlVFPSIkQU1ERVBfVFJVRSIgYWNfYXV4X2Rpcj0iJGFjX2F1eF9kaXIiCisjIENhcHR1cmUgdGhlIHZhbHVlIG9mIG9ic29sZXRlIEFMTF9MSU5HVUFTIGJlY2F1c2Ugd2UgbmVlZCBpdCB0byBjb21wdXRlCisgICAgIyBQT0ZJTEVTLCBVUERBVEVQT0ZJTEVTLCBEVU1NWVBPRklMRVMsIEdNT0ZJTEVTLCBDQVRBTE9HUy4gQnV0IGhpZGUgaXQKKyAgICAjIGZyb20gYXV0b21ha2UgPCAxLjUuCisgICAgZXZhbCAnT0JTT0xFVEVfQUxMX0xJTkdVQVMnJz0iJEFMTF9MSU5HVUFTIicKKyAgICAjIENhcHR1cmUgdGhlIHZhbHVlIG9mIExJTkdVQVMgYmVjYXVzZSB3ZSBuZWVkIGl0IHRvIGNvbXB1dGUgQ0FUQUxPR1MuCisgICAgTElOR1VBUz0iJHtMSU5HVUFTLSVVTlNFVCV9IgorCisKK19BQ0VPRgorCitjYXQgPj4kQ09ORklHX1NUQVRVUyA8PFxfQUNFT0YgfHwgYWNfd3JpdGVfZmFpbD0xCisKKyMgSGFuZGxpbmcgb2YgYXJndW1lbnRzLgorZm9yIGFjX2NvbmZpZ190YXJnZXQgaW4gJGFjX2NvbmZpZ190YXJnZXRzCitkbworICBjYXNlICRhY19jb25maWdfdGFyZ2V0IGluCisgICAgImRlcGZpbGVzIikgQ09ORklHX0NPTU1BTkRTPSIkQ09ORklHX0NPTU1BTkRTIGRlcGZpbGVzIiA7OworICAgICJwby1kaXJlY3RvcmllcyIpIENPTkZJR19DT01NQU5EUz0iJENPTkZJR19DT01NQU5EUyBwby1kaXJlY3RvcmllcyIgOzsKKyAgICAiTWFrZWZpbGUiKSBDT05GSUdfRklMRVM9IiRDT05GSUdfRklMRVMgTWFrZWZpbGUiIDs7CisgICAgImRwa2ctZGViL01ha2VmaWxlIikgQ09ORklHX0ZJTEVTPSIkQ09ORklHX0ZJTEVTIGRwa2ctZGViL01ha2VmaWxlIiA7OworICAgICJkcGtnLXNwbGl0L01ha2VmaWxlIikgQ09ORklHX0ZJTEVTPSIkQ09ORklHX0ZJTEVTIGRwa2ctc3BsaXQvTWFrZWZpbGUiIDs7CisgICAgImRzZWxlY3QvTWFrZWZpbGUiKSBDT05GSUdfRklMRVM9IiRDT05GSUdfRklMRVMgZHNlbGVjdC9NYWtlZmlsZSIgOzsKKyAgICAiZHNlbGVjdC9tZXRob2RzL01ha2VmaWxlIikgQ09ORklHX0ZJTEVTPSIkQ09ORklHX0ZJTEVTIGRzZWxlY3QvbWV0aG9kcy9NYWtlZmlsZSIgOzsKKyAgICAiZHNlbGVjdC9wby9NYWtlZmlsZS5pbiIpIENPTkZJR19GSUxFUz0iJENPTkZJR19GSUxFUyBkc2VsZWN0L3BvL01ha2VmaWxlLmluIiA7OworICAgICJsaWIvTWFrZWZpbGUiKSBDT05GSUdfRklMRVM9IiRDT05GSUdfRklMRVMgbGliL01ha2VmaWxlIiA7OworICAgICJsaWIvY29tcGF0L01ha2VmaWxlIikgQ09ORklHX0ZJTEVTPSIkQ09ORklHX0ZJTEVTIGxpYi9jb21wYXQvTWFrZWZpbGUiIDs7CisgICAgImxpYi9kcGtnL01ha2VmaWxlIikgQ09ORklHX0ZJTEVTPSIkQ09ORklHX0ZJTEVTIGxpYi9kcGtnL01ha2VmaWxlIiA7OworICAgICJsaWIvZHBrZy9saWJkcGtnLnBjIikgQ09ORklHX0ZJTEVTPSIkQ09ORklHX0ZJTEVTIGxpYi9kcGtnL2xpYmRwa2cucGMiIDs7CisgICAgImxpYi9kcGtnL3Rlc3QvTWFrZWZpbGUiKSBDT05GSUdfRklMRVM9IiRDT05GSUdfRklMRVMgbGliL2Rwa2cvdGVzdC9NYWtlZmlsZSIgOzsKKyAgICAiZG9jL0RveHlmaWxlIikgQ09ORklHX0ZJTEVTPSIkQ09ORklHX0ZJTEVTIGRvYy9Eb3h5ZmlsZSIgOzsKKyAgICAibWFuL01ha2VmaWxlIikgQ09ORklHX0ZJTEVTPSIkQ09ORklHX0ZJTEVTIG1hbi9NYWtlZmlsZSIgOzsKKyAgICAicG8vTWFrZWZpbGUuaW4iKSBDT05GSUdfRklMRVM9IiRDT05GSUdfRklMRVMgcG8vTWFrZWZpbGUuaW4iIDs7CisgICAgInNjcmlwdHMvTWFrZWZpbGUiKSBDT05GSUdfRklMRVM9IiRDT05GSUdfRklMRVMgc2NyaXB0cy9NYWtlZmlsZSIgOzsKKyAgICAic2NyaXB0cy9tay9NYWtlZmlsZSIpIENPTkZJR19GSUxFUz0iJENPTkZJR19GSUxFUyBzY3JpcHRzL21rL01ha2VmaWxlIiA7OworICAgICJzY3JpcHRzL3BvL01ha2VmaWxlLmluIikgQ09ORklHX0ZJTEVTPSIkQ09ORklHX0ZJTEVTIHNjcmlwdHMvcG8vTWFrZWZpbGUuaW4iIDs7CisgICAgInNyYy9NYWtlZmlsZSIpIENPTkZJR19GSUxFUz0iJENPTkZJR19GSUxFUyBzcmMvTWFrZWZpbGUiIDs7CisgICAgInV0aWxzL01ha2VmaWxlIikgQ09ORklHX0ZJTEVTPSIkQ09ORklHX0ZJTEVTIHV0aWxzL01ha2VmaWxlIiA7OworICAgICJjb25maWcuaCIpIENPTkZJR19IRUFERVJTPSIkQ09ORklHX0hFQURFUlMgY29uZmlnLmgiIDs7CisKKyAgKikgYXNfZm5fZXJyb3IgJD8gImludmFsaWQgYXJndW1lbnQ6IFxgJGFjX2NvbmZpZ190YXJnZXQnIiAiJExJTkVOTyIgNTs7CisgIGVzYWMKK2RvbmUKKworCisjIElmIHRoZSB1c2VyIGRpZCBub3QgdXNlIHRoZSBhcmd1bWVudHMgdG8gc3BlY2lmeSB0aGUgaXRlbXMgdG8gaW5zdGFudGlhdGUsCisjIHRoZW4gdGhlIGVudnZhciBpbnRlcmZhY2UgaXMgdXNlZC4gIFNldCBvbmx5IHRob3NlIHRoYXQgYXJlIG5vdC4KKyMgV2UgdXNlIHRoZSBsb25nIGZvcm0gZm9yIHRoZSBkZWZhdWx0IGFzc2lnbm1lbnQgYmVjYXVzZSBvZiBhbiBleHRyZW1lbHkKKyMgYml6YXJyZSBidWcgb24gU3VuT1MgNC4xLjMuCitpZiAkYWNfbmVlZF9kZWZhdWx0czsgdGhlbgorICB0ZXN0ICIke0NPTkZJR19GSUxFUytzZXR9IiA9IHNldCB8fCBDT05GSUdfRklMRVM9JGNvbmZpZ19maWxlcworICB0ZXN0ICIke0NPTkZJR19IRUFERVJTK3NldH0iID0gc2V0IHx8IENPTkZJR19IRUFERVJTPSRjb25maWdfaGVhZGVycworICB0ZXN0ICIke0NPTkZJR19DT01NQU5EUytzZXR9IiA9IHNldCB8fCBDT05GSUdfQ09NTUFORFM9JGNvbmZpZ19jb21tYW5kcworZmkKKworIyBIYXZlIGEgdGVtcG9yYXJ5IGRpcmVjdG9yeSBmb3IgY29udmVuaWVuY2UuICBNYWtlIGl0IGluIHRoZSBidWlsZCB0cmVlCisjIHNpbXBseSBiZWNhdXNlIHRoZXJlIGlzIG5vIHJlYXNvbiBhZ2FpbnN0IGhhdmluZyBpdCBoZXJlLCBhbmQgaW4gYWRkaXRpb24sCisjIGNyZWF0aW5nIGFuZCBtb3ZpbmcgZmlsZXMgZnJvbSAvdG1wIGNhbiBzb21ldGltZXMgY2F1c2UgcHJvYmxlbXMuCisjIEhvb2sgZm9yIGl0cyByZW1vdmFsIHVubGVzcyBkZWJ1Z2dpbmcuCisjIE5vdGUgdGhhdCB0aGVyZSBpcyBhIHNtYWxsIHdpbmRvdyBpbiB3aGljaCB0aGUgZGlyZWN0b3J5IHdpbGwgbm90IGJlIGNsZWFuZWQ6CisjIGFmdGVyIGl0cyBjcmVhdGlvbiBidXQgYmVmb3JlIGl0cyBuYW1lIGhhcyBiZWVuIGFzc2lnbmVkIHRvIGAkdG1wJy4KKyRkZWJ1ZyB8fAoreworICB0bXA9IGFjX3RtcD0KKyAgdHJhcCAnZXhpdF9zdGF0dXM9JD8KKyAgOiAiJHthY190bXA6PSR0bXB9IgorICB7IHRlc3QgISAtZCAiJGFjX3RtcCIgfHwgcm0gLWZyICIkYWNfdG1wIjsgfSAmJiBleGl0ICRleGl0X3N0YXR1cworJyAwCisgIHRyYXAgJ2FzX2ZuX2V4aXQgMScgMSAyIDEzIDE1Cit9CisjIENyZWF0ZSBhIChzZWN1cmUpIHRtcCBkaXJlY3RvcnkgZm9yIHRtcCBmaWxlcy4KKworeworICB0bXA9YCh1bWFzayAwNzcgJiYgbWt0ZW1wIC1kICIuL2NvbmZYWFhYWFgiKSAyPi9kZXYvbnVsbGAgJiYKKyAgdGVzdCAtZCAiJHRtcCIKK30gIHx8Cit7CisgIHRtcD0uL2NvbmYkJC0kUkFORE9NCisgICh1bWFzayAwNzcgJiYgbWtkaXIgIiR0bXAiKQorfSB8fCBhc19mbl9lcnJvciAkPyAiY2Fubm90IGNyZWF0ZSBhIHRlbXBvcmFyeSBkaXJlY3RvcnkgaW4gLiIgIiRMSU5FTk8iIDUKK2FjX3RtcD0kdG1wCisKKyMgU2V0IHVwIHRoZSBzY3JpcHRzIGZvciBDT05GSUdfRklMRVMgc2VjdGlvbi4KKyMgTm8gbmVlZCB0byBnZW5lcmF0ZSB0aGVtIGlmIHRoZXJlIGFyZSBubyBDT05GSUdfRklMRVMuCisjIFRoaXMgaGFwcGVucyBmb3IgaW5zdGFuY2Ugd2l0aCBgLi9jb25maWcuc3RhdHVzIGNvbmZpZy5oJy4KK2lmIHRlc3QgLW4gIiRDT05GSUdfRklMRVMiOyB0aGVuCisKKworYWNfY3I9YGVjaG8gWCB8IHRyIFggJ1wwMTUnYAorIyBPbiBjeWd3aW4sIGJhc2ggY2FuIGVhdCBcciBpbnNpZGUgYGAgaWYgdGhlIHVzZXIgcmVxdWVzdGVkIGlnbmNyLgorIyBCdXQgd2Uga25vdyBvZiBubyBvdGhlciBzaGVsbCB3aGVyZSBhY19jciB3b3VsZCBiZSBlbXB0eSBhdCB0aGlzCisjIHBvaW50LCBzbyB3ZSBjYW4gdXNlIGEgYmFzaGlzbSBhcyBhIGZhbGxiYWNrLgoraWYgdGVzdCAieCRhY19jciIgPSB4OyB0aGVuCisgIGV2YWwgYWNfY3I9XCRcJ1xcclwnCitmaQorYWNfY3NfYXdrX2NyPWAkQVdLICdCRUdJTiB7IHByaW50ICJhXHJiIiB9JyA8L2Rldi9udWxsIDI+L2Rldi9udWxsYAoraWYgdGVzdCAiJGFjX2NzX2F3a19jciIgPSAiYSR7YWNfY3J9YiI7IHRoZW4KKyAgYWNfY3NfYXdrX2NyPSdcXHInCitlbHNlCisgIGFjX2NzX2F3a19jcj0kYWNfY3IKK2ZpCisKK2VjaG8gJ0JFR0lOIHsnID4iJGFjX3RtcC9zdWJzMS5hd2siICYmCitfQUNFT0YKKworCit7CisgIGVjaG8gImNhdCA+Y29uZiQkc3Vicy5hd2sgPDxfQUNFT0YiICYmCisgIGVjaG8gIiRhY19zdWJzdF92YXJzIiB8IHNlZCAncy8uKi8mISQmJGFjX2RlbGltLycgJiYKKyAgZWNobyAiX0FDRU9GIgorfSA+Y29uZiQkc3Vicy5zaCB8fAorICBhc19mbl9lcnJvciAkPyAiY291bGQgbm90IG1ha2UgJENPTkZJR19TVEFUVVMiICIkTElORU5PIiA1CithY19kZWxpbV9udW09YGVjaG8gIiRhY19zdWJzdF92YXJzIiB8IGdyZXAgLWMgJ14nYAorYWNfZGVsaW09JyUhXyEjICcKK2ZvciBhY19sYXN0X3RyeSBpbiBmYWxzZSBmYWxzZSBmYWxzZSBmYWxzZSBmYWxzZSA6OyBkbworICAuIC4vY29uZiQkc3Vicy5zaCB8fAorICAgIGFzX2ZuX2Vycm9yICQ/ICJjb3VsZCBub3QgbWFrZSAkQ09ORklHX1NUQVRVUyIgIiRMSU5FTk8iIDUKKworICBhY19kZWxpbV9uPWBzZWQgLW4gInMvLiokYWNfZGVsaW1cJC9YL3AiIGNvbmYkJHN1YnMuYXdrIHwgZ3JlcCAtYyBYYAorICBpZiB0ZXN0ICRhY19kZWxpbV9uID0gJGFjX2RlbGltX251bTsgdGhlbgorICAgIGJyZWFrCisgIGVsaWYgJGFjX2xhc3RfdHJ5OyB0aGVuCisgICAgYXNfZm5fZXJyb3IgJD8gImNvdWxkIG5vdCBtYWtlICRDT05GSUdfU1RBVFVTIiAiJExJTkVOTyIgNQorICBlbHNlCisgICAgYWNfZGVsaW09IiRhY19kZWxpbSEkYWNfZGVsaW0gXyRhY19kZWxpbSEhICIKKyAgZmkKK2RvbmUKK3JtIC1mIGNvbmYkJHN1YnMuc2gKKworY2F0ID4+JENPTkZJR19TVEFUVVMgPDxfQUNFT0YgfHwgYWNfd3JpdGVfZmFpbD0xCitjYXQgPj4iXCRhY190bXAvc3ViczEuYXdrIiA8PFxcX0FDQVdLICYmCitfQUNFT0YKK3NlZCAtbiAnCitoCitzL14vU1siLzsgcy8hLiovIl09LworcAorZworcy9eW14hXSohLy8KKzpyZXBsCit0IHJlcGwKK3MvJyIkYWNfZGVsaW0iJyQvLwordCBkZWxpbQorOm5sCitoCitzL1woLlx7MTQ4XH1cKS4uKi9cMS8KK3QgbW9yZTEKK3MvWyJcXF0vXFwmL2c7IHMvXi8iLzsgcy8kL1xcbiJcXC8KK3AKK24KK2IgcmVwbAorOm1vcmUxCitzL1siXFxdL1xcJi9nOyBzL14vIi87IHMvJC8iXFwvCitwCitnCitzLy5cezE0OFx9Ly8KK3QgbmwKKzpkZWxpbQoraAorcy9cKC5cezE0OFx9XCkuLiovXDEvCit0IG1vcmUyCitzL1siXFxdL1xcJi9nOyBzL14vIi87IHMvJC8iLworcAorYgorOm1vcmUyCitzL1siXFxdL1xcJi9nOyBzL14vIi87IHMvJC8iXFwvCitwCitnCitzLy5cezE0OFx9Ly8KK3QgZGVsaW0KKycgPGNvbmYkJHN1YnMuYXdrIHwgc2VkICcKKy9eW14iIl0veworICBOCisgIHMvXG4vLworfQorJyA+PiRDT05GSUdfU1RBVFVTIHx8IGFjX3dyaXRlX2ZhaWw9MQorcm0gLWYgY29uZiQkc3Vicy5hd2sKK2NhdCA+PiRDT05GSUdfU1RBVFVTIDw8X0FDRU9GIHx8IGFjX3dyaXRlX2ZhaWw9MQorX0FDQVdLCitjYXQgPj4iXCRhY190bXAvc3ViczEuYXdrIiA8PF9BQ0FXSyAmJgorICBmb3IgKGtleSBpbiBTKSBTX2lzX3NldFtrZXldID0gMQorICBGUyA9ICIHIgorCit9Cit7CisgIGxpbmUgPSAkIDAKKyAgbmZpZWxkcyA9IHNwbGl0KGxpbmUsIGZpZWxkLCAiQCIpCisgIHN1YnN0ZWQgPSAwCisgIGxlbiA9IGxlbmd0aChmaWVsZFsxXSkKKyAgZm9yIChpID0gMjsgaSA8IG5maWVsZHM7IGkrKykgeworICAgIGtleSA9IGZpZWxkW2ldCisgICAga2V5bGVuID0gbGVuZ3RoKGtleSkKKyAgICBpZiAoU19pc19zZXRba2V5XSkgeworICAgICAgdmFsdWUgPSBTW2tleV0KKyAgICAgIGxpbmUgPSBzdWJzdHIobGluZSwgMSwgbGVuKSAiIiB2YWx1ZSAiIiBzdWJzdHIobGluZSwgbGVuICsga2V5bGVuICsgMykKKyAgICAgIGxlbiArPSBsZW5ndGgodmFsdWUpICsgbGVuZ3RoKGZpZWxkWysraV0pCisgICAgICBzdWJzdGVkID0gMQorICAgIH0gZWxzZQorICAgICAgbGVuICs9IDEgKyBrZXlsZW4KKyAgfQorCisgIHByaW50IGxpbmUKK30KKworX0FDQVdLCitfQUNFT0YKK2NhdCA+PiRDT05GSUdfU1RBVFVTIDw8XF9BQ0VPRiB8fCBhY193cml0ZV9mYWlsPTEKK2lmIHNlZCAicy8kYWNfY3IvLyIgPCAvZGV2L251bGwgPiAvZGV2L251bGwgMj4mMTsgdGhlbgorICBzZWQgInMvJGFjX2NyXCQvLzsgcy8kYWNfY3IvJGFjX2NzX2F3a19jci9nIgorZWxzZQorICBjYXQKK2ZpIDwgIiRhY190bXAvc3ViczEuYXdrIiA+ICIkYWNfdG1wL3N1YnMuYXdrIiBcCisgIHx8IGFzX2ZuX2Vycm9yICQ/ICJjb3VsZCBub3Qgc2V0dXAgY29uZmlnIGZpbGVzIG1hY2hpbmVyeSIgIiRMSU5FTk8iIDUKK19BQ0VPRgorCisjIFZQQVRIIG1heSBjYXVzZSB0cm91YmxlIHdpdGggc29tZSBtYWtlcywgc28gd2UgcmVtb3ZlIHNvbGUgJChzcmNkaXIpLAorIyAke3NyY2Rpcn0gYW5kIEBzcmNkaXJAIGVudHJpZXMgZnJvbSBWUEFUSCBpZiBzcmNkaXIgaXMgIi4iLCBzdHJpcCBsZWFkaW5nIGFuZAorIyB0cmFpbGluZyBjb2xvbnMgYW5kIHRoZW4gcmVtb3ZlIHRoZSB3aG9sZSBsaW5lIGlmIFZQQVRIIGJlY29tZXMgZW1wdHkKKyMgKGFjdHVhbGx5IHdlIGxlYXZlIGFuIGVtcHR5IGxpbmUgdG8gcHJlc2VydmUgbGluZSBudW1iZXJzKS4KK2lmIHRlc3QgIngkc3JjZGlyIiA9IHguOyB0aGVuCisgIGFjX3Zwc3ViPScvXlsJIF0qVlBBVEhbCSBdKj1bCSBdKi97CitoCitzLy8vCitzL14vOi8KK3MvWwkgXSokLzovCitzLzpcJChzcmNkaXIpOi86L2cKK3MvOlwke3NyY2Rpcn06LzovZworcy86QHNyY2RpckA6LzovZworcy9eOiovLworcy86KiQvLworeAorcy9cKD1bCSBdKlwpLiovXDEvCitHCitzL1xuLy8KK3MvXltePV0qPVsJIF0qJC8vCit9JworZmkKKworY2F0ID4+JENPTkZJR19TVEFUVVMgPDxcX0FDRU9GIHx8IGFjX3dyaXRlX2ZhaWw9MQorZmkgIyB0ZXN0IC1uICIkQ09ORklHX0ZJTEVTIgorCisjIFNldCB1cCB0aGUgc2NyaXB0cyBmb3IgQ09ORklHX0hFQURFUlMgc2VjdGlvbi4KKyMgTm8gbmVlZCB0byBnZW5lcmF0ZSB0aGVtIGlmIHRoZXJlIGFyZSBubyBDT05GSUdfSEVBREVSUy4KKyMgVGhpcyBoYXBwZW5zIGZvciBpbnN0YW5jZSB3aXRoIGAuL2NvbmZpZy5zdGF0dXMgTWFrZWZpbGUnLgoraWYgdGVzdCAtbiAiJENPTkZJR19IRUFERVJTIjsgdGhlbgorY2F0ID4iJGFjX3RtcC9kZWZpbmVzLmF3ayIgPDxcX0FDQVdLIHx8CitCRUdJTiB7CitfQUNFT0YKKworIyBUcmFuc2Zvcm0gY29uZmRlZnMuaCBpbnRvIGFuIGF3ayBzY3JpcHQgYGRlZmluZXMuYXdrJywgZW1iZWRkZWQgYXMKKyMgaGVyZS1kb2N1bWVudCBpbiBjb25maWcuc3RhdHVzLCB0aGF0IHN1YnN0aXR1dGVzIHRoZSBwcm9wZXIgdmFsdWVzIGludG8KKyMgY29uZmlnLmguaW4gdG8gcHJvZHVjZSBjb25maWcuaC4KKworIyBDcmVhdGUgYSBkZWxpbWl0ZXIgc3RyaW5nIHRoYXQgZG9lcyBub3QgZXhpc3QgaW4gY29uZmRlZnMuaCwgdG8gZWFzZQorIyBoYW5kbGluZyBvZiBsb25nIGxpbmVzLgorYWNfZGVsaW09JyUhXyEjICcKK2ZvciBhY19sYXN0X3RyeSBpbiBmYWxzZSBmYWxzZSA6OyBkbworICBhY190dD1gc2VkIC1uICIvJGFjX2RlbGltL3AiIGNvbmZkZWZzLmhgCisgIGlmIHRlc3QgLXogIiRhY190dCI7IHRoZW4KKyAgICBicmVhaworICBlbGlmICRhY19sYXN0X3RyeTsgdGhlbgorICAgIGFzX2ZuX2Vycm9yICQ/ICJjb3VsZCBub3QgbWFrZSAkQ09ORklHX0hFQURFUlMiICIkTElORU5PIiA1CisgIGVsc2UKKyAgICBhY19kZWxpbT0iJGFjX2RlbGltISRhY19kZWxpbSBfJGFjX2RlbGltISEgIgorICBmaQorZG9uZQorCisjIEZvciB0aGUgYXdrIHNjcmlwdCwgRCBpcyBhbiBhcnJheSBvZiBtYWNybyB2YWx1ZXMga2V5ZWQgYnkgbmFtZSwKKyMgbGlrZXdpc2UgUCBjb250YWlucyBtYWNybyBwYXJhbWV0ZXJzIGlmIGFueS4gIFByZXNlcnZlIGJhY2tzbGFzaAorIyBuZXdsaW5lIHNlcXVlbmNlcy4KKworYWNfd29yZF9yZT1bXyRhc19jcl9MZXR0ZXJzXVtfJGFzX2NyX2FsbnVtXSoKK3NlZCAtbiAnCitzLy5cezE0OFx9LyYnIiRhY19kZWxpbSInL2cKK3QgcnNldAorOnJzZXQKK3MvXlsJIF0qI1sJIF0qZGVmaW5lWwkgXVsJIF0qLyAvCit0IGRlZgorZAorOmRlZgorcy9cXCQvLwordCBic25sCitzL1siXFxdL1xcJi9nCitzL14gXCgnIiRhY193b3JkX3JlIidcKVwoKFteKCldKilcKVsJIF0qXCguKlwpL1BbIlwxIl09IlwyIlwKK0RbIlwxIl09IiBcMyIvcAorcy9eIFwoJyIkYWNfd29yZF9yZSInXClbCSBdKlwoLipcKS9EWyJcMSJdPSIgXDIiL3AKK2QKKzpic25sCitzL1siXFxdL1xcJi9nCitzL14gXCgnIiRhY193b3JkX3JlIidcKVwoKFteKCldKilcKVsJIF0qXCguKlwpL1BbIlwxIl09IlwyIlwKK0RbIlwxIl09IiBcM1xcXFxcXG4iXFwvcAordCBjb250CitzL14gXCgnIiRhY193b3JkX3JlIidcKVsJIF0qXCguKlwpL0RbIlwxIl09IiBcMlxcXFxcXG4iXFwvcAordCBjb250CitkCis6Y29udAorbgorcy8uXHsxNDhcfS8mJyIkYWNfZGVsaW0iJy9nCit0IGNsZWFyCis6Y2xlYXIKK3MvXFwkLy8KK3QgYnNubGMKK3MvWyJcXF0vXFwmL2c7IHMvXi8iLzsgcy8kLyIvcAorZAorOmJzbmxjCitzL1siXFxdL1xcJi9nOyBzL14vIi87IHMvJC9cXFxcXFxuIlxcL3AKK2IgY29udAorJyA8Y29uZmRlZnMuaCB8IHNlZCAnCitzLyciJGFjX2RlbGltIicvIlxcXAorIi9nJyA+PiRDT05GSUdfU1RBVFVTIHx8IGFjX3dyaXRlX2ZhaWw9MQorCitjYXQgPj4kQ09ORklHX1NUQVRVUyA8PF9BQ0VPRiB8fCBhY193cml0ZV9mYWlsPTEKKyAgZm9yIChrZXkgaW4gRCkgRF9pc19zZXRba2V5XSA9IDEKKyAgRlMgPSAiByIKK30KKy9eW1x0IF0qI1tcdCBdKihkZWZpbmV8dW5kZWYpW1x0IF0rJGFjX3dvcmRfcmUoW1x0IChdfFwkKS8geworICBsaW5lID0gXCQgMAorICBzcGxpdChsaW5lLCBhcmcsICIgIikKKyAgaWYgKGFyZ1sxXSA9PSAiIyIpIHsKKyAgICBkZWZ1bmRlZiA9IGFyZ1syXQorICAgIG1hYzEgPSBhcmdbM10KKyAgfSBlbHNlIHsKKyAgICBkZWZ1bmRlZiA9IHN1YnN0cihhcmdbMV0sIDIpCisgICAgbWFjMSA9IGFyZ1syXQorICB9CisgIHNwbGl0KG1hYzEsIG1hYzIsICIoIikgIykKKyAgbWFjcm8gPSBtYWMyWzFdCisgIHByZWZpeCA9IHN1YnN0cihsaW5lLCAxLCBpbmRleChsaW5lLCBkZWZ1bmRlZikgLSAxKQorICBpZiAoRF9pc19zZXRbbWFjcm9dKSB7CisgICAgIyBQcmVzZXJ2ZSB0aGUgd2hpdGUgc3BhY2Ugc3Vycm91bmRpbmcgdGhlICIjIi4KKyAgICBwcmludCBwcmVmaXggImRlZmluZSIsIG1hY3JvIFBbbWFjcm9dIERbbWFjcm9dCisgICAgbmV4dAorICB9IGVsc2UgeworICAgICMgUmVwbGFjZSAjdW5kZWYgd2l0aCBjb21tZW50cy4gIFRoaXMgaXMgbmVjZXNzYXJ5LCBmb3IgZXhhbXBsZSwKKyAgICAjIGluIHRoZSBjYXNlIG9mIF9QT1NJWF9TT1VSQ0UsIHdoaWNoIGlzIHByZWRlZmluZWQgYW5kIHJlcXVpcmVkCisgICAgIyBvbiBzb21lIHN5c3RlbXMgd2hlcmUgY29uZmlndXJlIHdpbGwgbm90IGRlY2lkZSB0byBkZWZpbmUgaXQuCisgICAgaWYgKGRlZnVuZGVmID09ICJ1bmRlZiIpIHsKKyAgICAgIHByaW50ICIvKiIsIHByZWZpeCBkZWZ1bmRlZiwgbWFjcm8sICIqLyIKKyAgICAgIG5leHQKKyAgICB9CisgIH0KK30KK3sgcHJpbnQgfQorX0FDQVdLCitfQUNFT0YKK2NhdCA+PiRDT05GSUdfU1RBVFVTIDw8XF9BQ0VPRiB8fCBhY193cml0ZV9mYWlsPTEKKyAgYXNfZm5fZXJyb3IgJD8gImNvdWxkIG5vdCBzZXR1cCBjb25maWcgaGVhZGVycyBtYWNoaW5lcnkiICIkTElORU5PIiA1CitmaSAjIHRlc3QgLW4gIiRDT05GSUdfSEVBREVSUyIKKworCitldmFsIHNldCBYICIgIDpGICRDT05GSUdfRklMRVMgIDpIICRDT05GSUdfSEVBREVSUyAgICA6QyAkQ09ORklHX0NPTU1BTkRTIgorc2hpZnQKK2ZvciBhY190YWcKK2RvCisgIGNhc2UgJGFjX3RhZyBpbgorICA6W0ZITENdKSBhY19tb2RlPSRhY190YWc7IGNvbnRpbnVlOzsKKyAgZXNhYworICBjYXNlICRhY19tb2RlJGFjX3RhZyBpbgorICA6W0ZITF0qOiopOzsKKyAgOkwqIHwgOkMqOiopIGFzX2ZuX2Vycm9yICQ/ICJpbnZhbGlkIHRhZyBcYCRhY190YWcnIiAiJExJTkVOTyIgNTs7CisgIDpbRkhdLSkgYWNfdGFnPS06LTs7CisgIDpbRkhdKikgYWNfdGFnPSRhY190YWc6JGFjX3RhZy5pbjs7CisgIGVzYWMKKyAgYWNfc2F2ZV9JRlM9JElGUworICBJRlM9OgorICBzZXQgeCAkYWNfdGFnCisgIElGUz0kYWNfc2F2ZV9JRlMKKyAgc2hpZnQKKyAgYWNfZmlsZT0kMQorICBzaGlmdAorCisgIGNhc2UgJGFjX21vZGUgaW4KKyAgOkwpIGFjX3NvdXJjZT0kMTs7CisgIDpbRkhdKQorICAgIGFjX2ZpbGVfaW5wdXRzPQorICAgIGZvciBhY19mCisgICAgZG8KKyAgICAgIGNhc2UgJGFjX2YgaW4KKyAgICAgIC0pIGFjX2Y9IiRhY190bXAvc3RkaW4iOzsKKyAgICAgICopICMgTG9vayBmb3IgdGhlIGZpbGUgZmlyc3QgaW4gdGhlIGJ1aWxkIHRyZWUsIHRoZW4gaW4gdGhlIHNvdXJjZSB0cmVlCisJICMgKGlmIHRoZSBwYXRoIGlzIG5vdCBhYnNvbHV0ZSkuICBUaGUgYWJzb2x1dGUgcGF0aCBjYW5ub3QgYmUgRE9TLXN0eWxlLAorCSAjIGJlY2F1c2UgJGFjX2YgY2Fubm90IGNvbnRhaW4gYDonLgorCSB0ZXN0IC1mICIkYWNfZiIgfHwKKwkgICBjYXNlICRhY19mIGluCisJICAgW1xcLyRdKikgZmFsc2U7OworCSAgICopIHRlc3QgLWYgIiRzcmNkaXIvJGFjX2YiICYmIGFjX2Y9IiRzcmNkaXIvJGFjX2YiOzsKKwkgICBlc2FjIHx8CisJICAgYXNfZm5fZXJyb3IgMSAiY2Fubm90IGZpbmQgaW5wdXQgZmlsZTogXGAkYWNfZiciICIkTElORU5PIiA1OzsKKyAgICAgIGVzYWMKKyAgICAgIGNhc2UgJGFjX2YgaW4gKlwnKikgYWNfZj1gJGFzX2VjaG8gIiRhY19mIiB8IHNlZCAicy8nLydcXFxcXFxcXCcnL2ciYDs7IGVzYWMKKyAgICAgIGFzX2ZuX2FwcGVuZCBhY19maWxlX2lucHV0cyAiICckYWNfZiciCisgICAgZG9uZQorCisgICAgIyBMZXQncyBzdGlsbCBwcmV0ZW5kIGl0IGlzIGBjb25maWd1cmUnIHdoaWNoIGluc3RhbnRpYXRlcyAoaS5lLiwgZG9uJ3QKKyAgICAjIHVzZSAkYXNfbWUpLCBwZW9wbGUgd291bGQgYmUgc3VycHJpc2VkIHRvIHJlYWQ6CisgICAgIyAgICAvKiBjb25maWcuaC4gIEdlbmVyYXRlZCBieSBjb25maWcuc3RhdHVzLiAgKi8KKyAgICBjb25maWd1cmVfaW5wdXQ9J0dlbmVyYXRlZCBmcm9tICdgCisJICAkYXNfZWNobyAiJCoiIHwgc2VkICdzfF5bXjpdKi98fDtzfDpbXjpdKi98LCB8ZycKKwlgJyBieSBjb25maWd1cmUuJworICAgIGlmIHRlc3QgeCIkYWNfZmlsZSIgIT0geC07IHRoZW4KKyAgICAgIGNvbmZpZ3VyZV9pbnB1dD0iJGFjX2ZpbGUuICAkY29uZmlndXJlX2lucHV0IgorICAgICAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBjcmVhdGluZyAkYWNfZmlsZSIgPiY1CiskYXNfZWNobyAiJGFzX21lOiBjcmVhdGluZyAkYWNfZmlsZSIgPiY2O30KKyAgICBmaQorICAgICMgTmV1dHJhbGl6ZSBzcGVjaWFsIGNoYXJhY3RlcnMgaW50ZXJwcmV0ZWQgYnkgc2VkIGluIHJlcGxhY2VtZW50IHN0cmluZ3MuCisgICAgY2FzZSAkY29uZmlndXJlX2lucHV0IGluICMoCisgICAgKlwmKiB8ICpcfCogfCAqXFwqICkKKyAgICAgICBhY19zZWRfY29uZl9pbnB1dD1gJGFzX2VjaG8gIiRjb25maWd1cmVfaW5wdXQiIHwKKyAgICAgICBzZWQgJ3MvW1xcXFwmfF0vXFxcXCYvZydgOzsgIygKKyAgICAqKSBhY19zZWRfY29uZl9pbnB1dD0kY29uZmlndXJlX2lucHV0OzsKKyAgICBlc2FjCisKKyAgICBjYXNlICRhY190YWcgaW4KKyAgICAqOi06KiB8ICo6LSkgY2F0ID4iJGFjX3RtcC9zdGRpbiIgXAorICAgICAgfHwgYXNfZm5fZXJyb3IgJD8gImNvdWxkIG5vdCBjcmVhdGUgJGFjX2ZpbGUiICIkTElORU5PIiA1IDs7CisgICAgZXNhYworICAgIDs7CisgIGVzYWMKKworICBhY19kaXI9YCRhc19kaXJuYW1lIC0tICIkYWNfZmlsZSIgfHwKKyRhc19leHByIFgiJGFjX2ZpbGUiIDogJ1hcKC4qW14vXVwpLy8qW14vXVteL10qLyokJyBcfCBcCisJIFgiJGFjX2ZpbGUiIDogJ1hcKC8vXClbXi9dJyBcfCBcCisJIFgiJGFjX2ZpbGUiIDogJ1hcKC8vXCkkJyBcfCBcCisJIFgiJGFjX2ZpbGUiIDogJ1hcKC9cKScgXHwgLiAyPi9kZXYvbnVsbCB8fAorJGFzX2VjaG8gWCIkYWNfZmlsZSIgfAorICAgIHNlZCAnL15YXCguKlteL11cKVwvXC8qW14vXVteL10qXC8qJC97CisJICAgIHMvL1wxLworCSAgICBxCisJICB9CisJICAvXlhcKFwvXC9cKVteL10uKi97CisJICAgIHMvL1wxLworCSAgICBxCisJICB9CisJICAvXlhcKFwvXC9cKSQveworCSAgICBzLy9cMS8KKwkgICAgcQorCSAgfQorCSAgL15YXChcL1wpLioveworCSAgICBzLy9cMS8KKwkgICAgcQorCSAgfQorCSAgcy8uKi8uLzsgcSdgCisgIGFzX2Rpcj0iJGFjX2RpciI7IGFzX2ZuX21rZGlyX3AKKyAgYWNfYnVpbGRkaXI9LgorCitjYXNlICIkYWNfZGlyIiBpbgorLikgYWNfZGlyX3N1ZmZpeD0gYWNfdG9wX2J1aWxkZGlyX3N1Yj0uIGFjX3RvcF9idWlsZF9wcmVmaXg9IDs7CisqKQorICBhY19kaXJfc3VmZml4PS9gJGFzX2VjaG8gIiRhY19kaXIiIHwgc2VkICdzfF5cLltcXC9dfHwnYAorICAjIEEgIi4uIiBmb3IgZWFjaCBkaXJlY3RvcnkgaW4gJGFjX2Rpcl9zdWZmaXguCisgIGFjX3RvcF9idWlsZGRpcl9zdWI9YCRhc19lY2hvICIkYWNfZGlyX3N1ZmZpeCIgfCBzZWQgJ3N8L1teXFwvXSp8Ly4ufGc7c3wvfHwnYAorICBjYXNlICRhY190b3BfYnVpbGRkaXJfc3ViIGluCisgICIiKSBhY190b3BfYnVpbGRkaXJfc3ViPS4gYWNfdG9wX2J1aWxkX3ByZWZpeD0gOzsKKyAgKikgIGFjX3RvcF9idWlsZF9wcmVmaXg9JGFjX3RvcF9idWlsZGRpcl9zdWIvIDs7CisgIGVzYWMgOzsKK2VzYWMKK2FjX2Fic190b3BfYnVpbGRkaXI9JGFjX3B3ZAorYWNfYWJzX2J1aWxkZGlyPSRhY19wd2QkYWNfZGlyX3N1ZmZpeAorIyBmb3IgYmFja3dhcmQgY29tcGF0aWJpbGl0eToKK2FjX3RvcF9idWlsZGRpcj0kYWNfdG9wX2J1aWxkX3ByZWZpeAorCitjYXNlICRzcmNkaXIgaW4KKyAgLikgICMgV2UgYXJlIGJ1aWxkaW5nIGluIHBsYWNlLgorICAgIGFjX3NyY2Rpcj0uCisgICAgYWNfdG9wX3NyY2Rpcj0kYWNfdG9wX2J1aWxkZGlyX3N1YgorICAgIGFjX2Fic190b3Bfc3JjZGlyPSRhY19wd2QgOzsKKyAgW1xcL10qIHwgPzpbXFwvXSogKSAgIyBBYnNvbHV0ZSBuYW1lLgorICAgIGFjX3NyY2Rpcj0kc3JjZGlyJGFjX2Rpcl9zdWZmaXg7CisgICAgYWNfdG9wX3NyY2Rpcj0kc3JjZGlyCisgICAgYWNfYWJzX3RvcF9zcmNkaXI9JHNyY2RpciA7OworICAqKSAjIFJlbGF0aXZlIG5hbWUuCisgICAgYWNfc3JjZGlyPSRhY190b3BfYnVpbGRfcHJlZml4JHNyY2RpciRhY19kaXJfc3VmZml4CisgICAgYWNfdG9wX3NyY2Rpcj0kYWNfdG9wX2J1aWxkX3ByZWZpeCRzcmNkaXIKKyAgICBhY19hYnNfdG9wX3NyY2Rpcj0kYWNfcHdkLyRzcmNkaXIgOzsKK2VzYWMKK2FjX2Fic19zcmNkaXI9JGFjX2Fic190b3Bfc3JjZGlyJGFjX2Rpcl9zdWZmaXgKKworCisgIGNhc2UgJGFjX21vZGUgaW4KKyAgOkYpCisgICMKKyAgIyBDT05GSUdfRklMRQorICAjCisKKyAgY2FzZSAkSU5TVEFMTCBpbgorICBbXFwvJF0qIHwgPzpbXFwvXSogKSBhY19JTlNUQUxMPSRJTlNUQUxMIDs7CisgICopIGFjX0lOU1RBTEw9JGFjX3RvcF9idWlsZF9wcmVmaXgkSU5TVEFMTCA7OworICBlc2FjCisgIGFjX01LRElSX1A9JE1LRElSX1AKKyAgY2FzZSAkTUtESVJfUCBpbgorICBbXFwvJF0qIHwgPzpbXFwvXSogKSA7OworICAqLyopIGFjX01LRElSX1A9JGFjX3RvcF9idWlsZF9wcmVmaXgkTUtESVJfUCA7OworICBlc2FjCitfQUNFT0YKKworY2F0ID4+JENPTkZJR19TVEFUVVMgPDxcX0FDRU9GIHx8IGFjX3dyaXRlX2ZhaWw9MQorIyBJZiB0aGUgdGVtcGxhdGUgZG9lcyBub3Qga25vdyBhYm91dCBkYXRhcm9vdGRpciwgZXhwYW5kIGl0LgorIyBGSVhNRTogVGhpcyBoYWNrIHNob3VsZCBiZSByZW1vdmVkIGEgZmV3IHllYXJzIGFmdGVyIDIuNjAuCithY19kYXRhcm9vdGRpcl9oYWNrPTsgYWNfZGF0YXJvb3RkaXJfc2Vlbj0KK2FjX3NlZF9kYXRhcm9vdD0nCisvZGF0YXJvb3RkaXIvIHsKKyAgcAorICBxCit9CisvQGRhdGFkaXJAL3AKKy9AZG9jZGlyQC9wCisvQGluZm9kaXJAL3AKKy9AbG9jYWxlZGlyQC9wCisvQG1hbmRpckAvcCcKK2Nhc2UgYGV2YWwgInNlZCAtbiBcIlwkYWNfc2VkX2RhdGFyb290XCIgJGFjX2ZpbGVfaW5wdXRzImAgaW4KKypkYXRhcm9vdGRpciopIGFjX2RhdGFyb290ZGlyX3NlZW49eWVzOzsKKypAZGF0YWRpckAqfCpAZG9jZGlyQCp8KkBpbmZvZGlyQCp8KkBsb2NhbGVkaXJAKnwqQG1hbmRpckAqKQorICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IFdBUk5JTkc6ICRhY19maWxlX2lucHV0cyBzZWVtcyB0byBpZ25vcmUgdGhlIC0tZGF0YXJvb3RkaXIgc2V0dGluZyIgPiY1CiskYXNfZWNobyAiJGFzX21lOiBXQVJOSU5HOiAkYWNfZmlsZV9pbnB1dHMgc2VlbXMgdG8gaWdub3JlIHRoZSAtLWRhdGFyb290ZGlyIHNldHRpbmciID4mMjt9CitfQUNFT0YKK2NhdCA+PiRDT05GSUdfU1RBVFVTIDw8X0FDRU9GIHx8IGFjX3dyaXRlX2ZhaWw9MQorICBhY19kYXRhcm9vdGRpcl9oYWNrPScKKyAgcyZAZGF0YWRpckAmJGRhdGFkaXImZworICBzJkBkb2NkaXJAJiRkb2NkaXImZworICBzJkBpbmZvZGlyQCYkaW5mb2RpciZnCisgIHMmQGxvY2FsZWRpckAmJGxvY2FsZWRpciZnCisgIHMmQG1hbmRpckAmJG1hbmRpciZnCisgIHMmXFxcJHtkYXRhcm9vdGRpcn0mJGRhdGFyb290ZGlyJmcnIDs7Citlc2FjCitfQUNFT0YKKworIyBOZXV0cmFsaXplIFZQQVRIIHdoZW4gYCRzcmNkaXInID0gYC4nLgorIyBTaGVsbCBjb2RlIGluIGNvbmZpZ3VyZS5hYyBtaWdodCBzZXQgZXh0cmFzdWIuCisjIEZJWE1FOiBkbyB3ZSByZWFsbHkgd2FudCB0byBtYWludGFpbiB0aGlzIGZlYXR1cmU/CitjYXQgPj4kQ09ORklHX1NUQVRVUyA8PF9BQ0VPRiB8fCBhY193cml0ZV9mYWlsPTEKK2FjX3NlZF9leHRyYT0iJGFjX3Zwc3ViCiskZXh0cmFzdWIKK19BQ0VPRgorY2F0ID4+JENPTkZJR19TVEFUVVMgPDxcX0FDRU9GIHx8IGFjX3dyaXRlX2ZhaWw9MQorOnQKKy9AW2EtekEtWl9dW2EtekEtWl8wLTldKkAvIWIKK3N8QGNvbmZpZ3VyZV9pbnB1dEB8JGFjX3NlZF9jb25mX2lucHV0fDt0IHQKK3MmQHRvcF9idWlsZGRpckAmJGFjX3RvcF9idWlsZGRpcl9zdWImO3QgdAorcyZAdG9wX2J1aWxkX3ByZWZpeEAmJGFjX3RvcF9idWlsZF9wcmVmaXgmO3QgdAorcyZAc3JjZGlyQCYkYWNfc3JjZGlyJjt0IHQKK3MmQGFic19zcmNkaXJAJiRhY19hYnNfc3JjZGlyJjt0IHQKK3MmQHRvcF9zcmNkaXJAJiRhY190b3Bfc3JjZGlyJjt0IHQKK3MmQGFic190b3Bfc3JjZGlyQCYkYWNfYWJzX3RvcF9zcmNkaXImO3QgdAorcyZAYnVpbGRkaXJAJiRhY19idWlsZGRpciY7dCB0CitzJkBhYnNfYnVpbGRkaXJAJiRhY19hYnNfYnVpbGRkaXImO3QgdAorcyZAYWJzX3RvcF9idWlsZGRpckAmJGFjX2Fic190b3BfYnVpbGRkaXImO3QgdAorcyZASU5TVEFMTEAmJGFjX0lOU1RBTEwmO3QgdAorcyZATUtESVJfUEAmJGFjX01LRElSX1AmO3QgdAorJGFjX2RhdGFyb290ZGlyX2hhY2sKKyIKK2V2YWwgc2VkIFwiXCRhY19zZWRfZXh0cmFcIiAiJGFjX2ZpbGVfaW5wdXRzIiB8ICRBV0sgLWYgIiRhY190bXAvc3Vicy5hd2siIFwKKyAgPiRhY190bXAvb3V0IHx8IGFzX2ZuX2Vycm9yICQ/ICJjb3VsZCBub3QgY3JlYXRlICRhY19maWxlIiAiJExJTkVOTyIgNQorCit0ZXN0IC16ICIkYWNfZGF0YXJvb3RkaXJfaGFjayRhY19kYXRhcm9vdGRpcl9zZWVuIiAmJgorICB7IGFjX291dD1gc2VkIC1uICcvXCR7ZGF0YXJvb3RkaXJ9L3AnICIkYWNfdG1wL291dCJgOyB0ZXN0IC1uICIkYWNfb3V0IjsgfSAmJgorICB7IGFjX291dD1gc2VkIC1uICcvXlsJIF0qZGF0YXJvb3RkaXJbCSBdKjoqPS9wJyBcCisgICAgICAiJGFjX3RtcC9vdXQiYDsgdGVzdCAteiAiJGFjX291dCI7IH0gJiYKKyAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBXQVJOSU5HOiAkYWNfZmlsZSBjb250YWlucyBhIHJlZmVyZW5jZSB0byB0aGUgdmFyaWFibGUgXGBkYXRhcm9vdGRpcicKK3doaWNoIHNlZW1zIHRvIGJlIHVuZGVmaW5lZC4gIFBsZWFzZSBtYWtlIHN1cmUgaXQgaXMgZGVmaW5lZCIgPiY1CiskYXNfZWNobyAiJGFzX21lOiBXQVJOSU5HOiAkYWNfZmlsZSBjb250YWlucyBhIHJlZmVyZW5jZSB0byB0aGUgdmFyaWFibGUgXGBkYXRhcm9vdGRpcicKK3doaWNoIHNlZW1zIHRvIGJlIHVuZGVmaW5lZC4gIFBsZWFzZSBtYWtlIHN1cmUgaXQgaXMgZGVmaW5lZCIgPiYyO30KKworICBybSAtZiAiJGFjX3RtcC9zdGRpbiIKKyAgY2FzZSAkYWNfZmlsZSBpbgorICAtKSBjYXQgIiRhY190bXAvb3V0IiAmJiBybSAtZiAiJGFjX3RtcC9vdXQiOzsKKyAgKikgcm0gLWYgIiRhY19maWxlIiAmJiBtdiAiJGFjX3RtcC9vdXQiICIkYWNfZmlsZSI7OworICBlc2FjIFwKKyAgfHwgYXNfZm5fZXJyb3IgJD8gImNvdWxkIG5vdCBjcmVhdGUgJGFjX2ZpbGUiICIkTElORU5PIiA1CisgOzsKKyAgOkgpCisgICMKKyAgIyBDT05GSUdfSEVBREVSCisgICMKKyAgaWYgdGVzdCB4IiRhY19maWxlIiAhPSB4LTsgdGhlbgorICAgIHsKKyAgICAgICRhc19lY2hvICIvKiAkY29uZmlndXJlX2lucHV0ICAqLyIgXAorICAgICAgJiYgZXZhbCAnJEFXSyAtZiAiJGFjX3RtcC9kZWZpbmVzLmF3ayInICIkYWNfZmlsZV9pbnB1dHMiCisgICAgfSA+IiRhY190bXAvY29uZmlnLmgiIFwKKyAgICAgIHx8IGFzX2ZuX2Vycm9yICQ/ICJjb3VsZCBub3QgY3JlYXRlICRhY19maWxlIiAiJExJTkVOTyIgNQorICAgIGlmIGRpZmYgIiRhY19maWxlIiAiJGFjX3RtcC9jb25maWcuaCIgPi9kZXYvbnVsbCAyPiYxOyB0aGVuCisgICAgICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306ICRhY19maWxlIGlzIHVuY2hhbmdlZCIgPiY1CiskYXNfZWNobyAiJGFzX21lOiAkYWNfZmlsZSBpcyB1bmNoYW5nZWQiID4mNjt9CisgICAgZWxzZQorICAgICAgcm0gLWYgIiRhY19maWxlIgorICAgICAgbXYgIiRhY190bXAvY29uZmlnLmgiICIkYWNfZmlsZSIgXAorCXx8IGFzX2ZuX2Vycm9yICQ/ICJjb3VsZCBub3QgY3JlYXRlICRhY19maWxlIiAiJExJTkVOTyIgNQorICAgIGZpCisgIGVsc2UKKyAgICAkYXNfZWNobyAiLyogJGNvbmZpZ3VyZV9pbnB1dCAgKi8iIFwKKyAgICAgICYmIGV2YWwgJyRBV0sgLWYgIiRhY190bXAvZGVmaW5lcy5hd2siJyAiJGFjX2ZpbGVfaW5wdXRzIiBcCisgICAgICB8fCBhc19mbl9lcnJvciAkPyAiY291bGQgbm90IGNyZWF0ZSAtIiAiJExJTkVOTyIgNQorICBmaQorIyBDb21wdXRlICIkYWNfZmlsZSIncyBpbmRleCBpbiAkY29uZmlnX2hlYWRlcnMuCitfYW1fYXJnPSIkYWNfZmlsZSIKK19hbV9zdGFtcF9jb3VudD0xCitmb3IgX2FtX2hlYWRlciBpbiAkY29uZmlnX2hlYWRlcnMgOjsgZG8KKyAgY2FzZSAkX2FtX2hlYWRlciBpbgorICAgICRfYW1fYXJnIHwgJF9hbV9hcmc6KiApCisgICAgICBicmVhayA7OworICAgICogKQorICAgICAgX2FtX3N0YW1wX2NvdW50PWBleHByICRfYW1fc3RhbXBfY291bnQgKyAxYCA7OworICBlc2FjCitkb25lCitlY2hvICJ0aW1lc3RhbXAgZm9yICRfYW1fYXJnIiA+YCRhc19kaXJuYW1lIC0tICIkX2FtX2FyZyIgfHwKKyRhc19leHByIFgiJF9hbV9hcmciIDogJ1hcKC4qW14vXVwpLy8qW14vXVteL10qLyokJyBcfCBcCisJIFgiJF9hbV9hcmciIDogJ1hcKC8vXClbXi9dJyBcfCBcCisJIFgiJF9hbV9hcmciIDogJ1hcKC8vXCkkJyBcfCBcCisJIFgiJF9hbV9hcmciIDogJ1hcKC9cKScgXHwgLiAyPi9kZXYvbnVsbCB8fAorJGFzX2VjaG8gWCIkX2FtX2FyZyIgfAorICAgIHNlZCAnL15YXCguKlteL11cKVwvXC8qW14vXVteL10qXC8qJC97CisJICAgIHMvL1wxLworCSAgICBxCisJICB9CisJICAvXlhcKFwvXC9cKVteL10uKi97CisJICAgIHMvL1wxLworCSAgICBxCisJICB9CisJICAvXlhcKFwvXC9cKSQveworCSAgICBzLy9cMS8KKwkgICAgcQorCSAgfQorCSAgL15YXChcL1wpLioveworCSAgICBzLy9cMS8KKwkgICAgcQorCSAgfQorCSAgcy8uKi8uLzsgcSdgL3N0YW1wLWgkX2FtX3N0YW1wX2NvdW50CisgOzsKKworICA6QykgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogZXhlY3V0aW5nICRhY19maWxlIGNvbW1hbmRzIiA+JjUKKyRhc19lY2hvICIkYXNfbWU6IGV4ZWN1dGluZyAkYWNfZmlsZSBjb21tYW5kcyIgPiY2O30KKyA7OworICBlc2FjCisKKworICBjYXNlICRhY19maWxlJGFjX21vZGUgaW4KKyAgICAiZGVwZmlsZXMiOkMpIHRlc3QgeCIkQU1ERVBfVFJVRSIgIT0geCIiIHx8IHsKKyAgIyBBdXRvY29uZiAyLjYyIHF1b3RlcyAtLWZpbGUgYXJndW1lbnRzIGZvciBldmFsLCBidXQgbm90IHdoZW4gZmlsZXMKKyAgIyBhcmUgbGlzdGVkIHdpdGhvdXQgLS1maWxlLiAgTGV0J3MgcGxheSBzYWZlIGFuZCBvbmx5IGVuYWJsZSB0aGUgZXZhbAorICAjIGlmIHdlIGRldGVjdCB0aGUgcXVvdGluZy4KKyAgY2FzZSAkQ09ORklHX0ZJTEVTIGluCisgICpcJyopIGV2YWwgc2V0IHggIiRDT05GSUdfRklMRVMiIDs7CisgICopICAgc2V0IHggJENPTkZJR19GSUxFUyA7OworICBlc2FjCisgIHNoaWZ0CisgIGZvciBtZgorICBkbworICAgICMgU3RyaXAgTUYgc28gd2UgZW5kIHVwIHdpdGggdGhlIG5hbWUgb2YgdGhlIGZpbGUuCisgICAgbWY9YGVjaG8gIiRtZiIgfCBzZWQgLWUgJ3MvOi4qJC8vJ2AKKyAgICAjIENoZWNrIHdoZXRoZXIgdGhpcyBpcyBhbiBBdXRvbWFrZSBnZW5lcmF0ZWQgTWFrZWZpbGUgb3Igbm90LgorICAgICMgV2UgdXNlZCB0byBtYXRjaCBvbmx5IHRoZSBmaWxlcyBuYW1lZCBgTWFrZWZpbGUuaW4nLCBidXQKKyAgICAjIHNvbWUgcGVvcGxlIHJlbmFtZSB0aGVtOyBzbyBpbnN0ZWFkIHdlIGxvb2sgYXQgdGhlIGZpbGUgY29udGVudC4KKyAgICAjIEdyZXAnaW5nIHRoZSBmaXJzdCBsaW5lIGlzIG5vdCBlbm91Z2g6IHNvbWUgcGVvcGxlIHBvc3QtcHJvY2VzcworICAgICMgZWFjaCBNYWtlZmlsZS5pbiBhbmQgYWRkIGEgbmV3IGxpbmUgb24gdG9wIG9mIGVhY2ggZmlsZSB0byBzYXkgc28uCisgICAgIyBHcmVwJ2luZyB0aGUgd2hvbGUgZmlsZSBpcyBub3QgZ29vZCBlaXRoZXI6IEFJWCBncmVwIGhhcyBhIGxpbmUKKyAgICAjIGxpbWl0IG9mIDIwNDgsIGJ1dCBhbGwgc2VkJ3Mgd2Uga25vdyBoYXZlIHVuZGVyc3RhbmQgYXQgbGVhc3QgNDAwMC4KKyAgICBpZiBzZWQgLW4gJ3MsXiMuKmdlbmVyYXRlZCBieSBhdXRvbWFrZS4qLFgscCcgIiRtZiIgfCBncmVwIFggPi9kZXYvbnVsbCAyPiYxOyB0aGVuCisgICAgICBkaXJwYXJ0PWAkYXNfZGlybmFtZSAtLSAiJG1mIiB8fAorJGFzX2V4cHIgWCIkbWYiIDogJ1hcKC4qW14vXVwpLy8qW14vXVteL10qLyokJyBcfCBcCisJIFgiJG1mIiA6ICdYXCgvL1wpW14vXScgXHwgXAorCSBYIiRtZiIgOiAnWFwoLy9cKSQnIFx8IFwKKwkgWCIkbWYiIDogJ1hcKC9cKScgXHwgLiAyPi9kZXYvbnVsbCB8fAorJGFzX2VjaG8gWCIkbWYiIHwKKyAgICBzZWQgJy9eWFwoLipbXi9dXClcL1wvKlteL11bXi9dKlwvKiQveworCSAgICBzLy9cMS8KKwkgICAgcQorCSAgfQorCSAgL15YXChcL1wvXClbXi9dLioveworCSAgICBzLy9cMS8KKwkgICAgcQorCSAgfQorCSAgL15YXChcL1wvXCkkL3sKKwkgICAgcy8vXDEvCisJICAgIHEKKwkgIH0KKwkgIC9eWFwoXC9cKS4qL3sKKwkgICAgcy8vXDEvCisJICAgIHEKKwkgIH0KKwkgIHMvLiovLi87IHEnYAorICAgIGVsc2UKKyAgICAgIGNvbnRpbnVlCisgICAgZmkKKyAgICAjIEV4dHJhY3QgdGhlIGRlZmluaXRpb24gb2YgREVQRElSLCBhbV9faW5jbHVkZSwgYW5kIGFtX19xdW90ZQorICAgICMgZnJvbSB0aGUgTWFrZWZpbGUgd2l0aG91dCBydW5uaW5nIGBtYWtlJy4KKyAgICBERVBESVI9YHNlZCAtbiAncy9eREVQRElSID0gLy9wJyA8ICIkbWYiYAorICAgIHRlc3QgLXogIiRERVBESVIiICYmIGNvbnRpbnVlCisgICAgYW1fX2luY2x1ZGU9YHNlZCAtbiAncy9eYW1fX2luY2x1ZGUgPSAvL3AnIDwgIiRtZiJgCisgICAgdGVzdCAteiAiYW1fX2luY2x1ZGUiICYmIGNvbnRpbnVlCisgICAgYW1fX3F1b3RlPWBzZWQgLW4gJ3MvXmFtX19xdW90ZSA9IC8vcCcgPCAiJG1mImAKKyAgICAjIFdoZW4gdXNpbmcgYW5zaTJrbnIsIFUgbWF5IGJlIGVtcHR5IG9yIGFuIHVuZGVyc2NvcmU7IGV4cGFuZCBpdAorICAgIFU9YHNlZCAtbiAncy9eVSA9IC8vcCcgPCAiJG1mImAKKyAgICAjIEZpbmQgYWxsIGRlcGVuZGVuY3kgb3V0cHV0IGZpbGVzLCB0aGV5IGFyZSBpbmNsdWRlZCBmaWxlcyB3aXRoCisgICAgIyAkKERFUERJUikgaW4gdGhlaXIgbmFtZXMuICBXZSBpbnZva2Ugc2VkIHR3aWNlIGJlY2F1c2UgaXQgaXMgdGhlCisgICAgIyBzaW1wbGVzdCBhcHByb2FjaCB0byBjaGFuZ2luZyAkKERFUERJUikgdG8gaXRzIGFjdHVhbCB2YWx1ZSBpbiB0aGUKKyAgICAjIGV4cGFuc2lvbi4KKyAgICBmb3IgZmlsZSBpbiBgc2VkIC1uICIKKyAgICAgIHMvXiRhbV9faW5jbHVkZSAkYW1fX3F1b3RlXCguKihERVBESVIpLipcKSRhbV9fcXVvdGUiJyQvXDEvcCcgPCIkbWYiIHwgXAorCSBzZWQgLWUgJ3MvXCQoREVQRElSKS8nIiRERVBESVIiJy9nJyAtZSAncy9cJFUvJyIkVSInL2cnYDsgZG8KKyAgICAgICMgTWFrZSBzdXJlIHRoZSBkaXJlY3RvcnkgZXhpc3RzLgorICAgICAgdGVzdCAtZiAiJGRpcnBhcnQvJGZpbGUiICYmIGNvbnRpbnVlCisgICAgICBmZGlyPWAkYXNfZGlybmFtZSAtLSAiJGZpbGUiIHx8CiskYXNfZXhwciBYIiRmaWxlIiA6ICdYXCguKlteL11cKS8vKlteL11bXi9dKi8qJCcgXHwgXAorCSBYIiRmaWxlIiA6ICdYXCgvL1wpW14vXScgXHwgXAorCSBYIiRmaWxlIiA6ICdYXCgvL1wpJCcgXHwgXAorCSBYIiRmaWxlIiA6ICdYXCgvXCknIFx8IC4gMj4vZGV2L251bGwgfHwKKyRhc19lY2hvIFgiJGZpbGUiIHwKKyAgICBzZWQgJy9eWFwoLipbXi9dXClcL1wvKlteL11bXi9dKlwvKiQveworCSAgICBzLy9cMS8KKwkgICAgcQorCSAgfQorCSAgL15YXChcL1wvXClbXi9dLioveworCSAgICBzLy9cMS8KKwkgICAgcQorCSAgfQorCSAgL15YXChcL1wvXCkkL3sKKwkgICAgcy8vXDEvCisJICAgIHEKKwkgIH0KKwkgIC9eWFwoXC9cKS4qL3sKKwkgICAgcy8vXDEvCisJICAgIHEKKwkgIH0KKwkgIHMvLiovLi87IHEnYAorICAgICAgYXNfZGlyPSRkaXJwYXJ0LyRmZGlyOyBhc19mbl9ta2Rpcl9wCisgICAgICAjIGVjaG8gImNyZWF0aW5nICRkaXJwYXJ0LyRmaWxlIgorICAgICAgZWNobyAnIyBkdW1teScgPiAiJGRpcnBhcnQvJGZpbGUiCisgICAgZG9uZQorICBkb25lCit9CisgOzsKKyAgICAicG8tZGlyZWN0b3JpZXMiOkMpCisgICAgZm9yIGFjX2ZpbGUgaW4gJENPTkZJR19GSUxFUzsgZG8KKyAgICAgICMgU3VwcG9ydCAib3V0ZmlsZVs6aW5maWxlWzppbmZpbGUuLi5dXSIKKyAgICAgIGNhc2UgIiRhY19maWxlIiBpbgorICAgICAgICAqOiopIGFjX2ZpbGU9YGVjaG8gIiRhY19maWxlInxzZWQgJ3MlOi4qJSUnYCA7OworICAgICAgZXNhYworICAgICAgIyBQTyBkaXJlY3RvcmllcyBoYXZlIGEgTWFrZWZpbGUuaW4gZ2VuZXJhdGVkIGZyb20gTWFrZWZpbGUuaW4uaW4uCisgICAgICBjYXNlICIkYWNfZmlsZSIgaW4gKi9NYWtlZmlsZS5pbikKKyAgICAgICAgIyBBZGp1c3QgYSByZWxhdGl2ZSBzcmNkaXIuCisgICAgICAgIGFjX2Rpcj1gZWNobyAiJGFjX2ZpbGUifHNlZCAncyUvW14vXVteL10qJCUlJ2AKKyAgICAgICAgYWNfZGlyX3N1ZmZpeD0iL2BlY2hvICIkYWNfZGlyInxzZWQgJ3MlXlwuLyUlJ2AiCisgICAgICAgIGFjX2RvdHM9YGVjaG8gIiRhY19kaXJfc3VmZml4InxzZWQgJ3MlL1teL10qJS4uLyVnJ2AKKyAgICAgICAgIyBJbiBhdXRvY29uZi0yLjEzIGl0IGlzIGNhbGxlZCAkYWNfZ2l2ZW5fc3JjZGlyLgorICAgICAgICAjIEluIGF1dG9jb25mLTIuNTAgaXQgaXMgY2FsbGVkICRzcmNkaXIuCisgICAgICAgIHRlc3QgLW4gIiRhY19naXZlbl9zcmNkaXIiIHx8IGFjX2dpdmVuX3NyY2Rpcj0iJHNyY2RpciIKKyAgICAgICAgY2FzZSAiJGFjX2dpdmVuX3NyY2RpciIgaW4KKyAgICAgICAgICAuKSAgdG9wX3NyY2Rpcj1gZWNobyAkYWNfZG90c3xzZWQgJ3MlLyQlJSdgIDs7CisgICAgICAgICAgLyopIHRvcF9zcmNkaXI9IiRhY19naXZlbl9zcmNkaXIiIDs7CisgICAgICAgICAgKikgIHRvcF9zcmNkaXI9IiRhY19kb3RzJGFjX2dpdmVuX3NyY2RpciIgOzsKKyAgICAgICAgZXNhYworICAgICAgICAjIFRyZWF0IGEgZGlyZWN0b3J5IGFzIGEgUE8gZGlyZWN0b3J5IGlmIGFuZCBvbmx5IGlmIGl0IGhhcyBhCisgICAgICAgICMgUE9URklMRVMuaW4gZmlsZS4gVGhpcyBhbGxvd3MgcGFja2FnZXMgdG8gaGF2ZSBtdWx0aXBsZSBQTworICAgICAgICAjIGRpcmVjdG9yaWVzIHVuZGVyIGRpZmZlcmVudCBuYW1lcyBvciBpbiBkaWZmZXJlbnQgbG9jYXRpb25zLgorICAgICAgICBpZiB0ZXN0IC1mICIkYWNfZ2l2ZW5fc3JjZGlyLyRhY19kaXIvUE9URklMRVMuaW4iOyB0aGVuCisgICAgICAgICAgcm0gLWYgIiRhY19kaXIvUE9URklMRVMiCisgICAgICAgICAgdGVzdCAtbiAiJGFzX21lIiAmJiBlY2hvICIkYXNfbWU6IGNyZWF0aW5nICRhY19kaXIvUE9URklMRVMiIHx8IGVjaG8gImNyZWF0aW5nICRhY19kaXIvUE9URklMRVMiCisgICAgICAgICAgY2F0ICIkYWNfZ2l2ZW5fc3JjZGlyLyRhY19kaXIvUE9URklMRVMuaW4iIHwgc2VkIC1lICIvXiMvZCIgLWUgIi9eWyAJXSpcJC9kIiAtZSAicywuKiwgICAgICR0b3Bfc3JjZGlyLyYgXFxcXCwiIHwgc2VkIC1lICJcJHMvXCguKlwpIFxcXFwvXDEvIiA+ICIkYWNfZGlyL1BPVEZJTEVTIgorICAgICAgICAgIFBPTUFLRUZJTEVERVBTPSJQT1RGSUxFUy5pbiIKKyAgICAgICAgICAjIEFMTF9MSU5HVUFTLCBQT0ZJTEVTLCBVUERBVEVQT0ZJTEVTLCBEVU1NWVBPRklMRVMsIEdNT0ZJTEVTIGRlcGVuZAorICAgICAgICAgICMgb24gJGFjX2RpciBidXQgZG9uJ3QgZGVwZW5kIG9uIHVzZXItc3BlY2lmaWVkIGNvbmZpZ3VyYXRpb24KKyAgICAgICAgICAjIHBhcmFtZXRlcnMuCisgICAgICAgICAgaWYgdGVzdCAtZiAiJGFjX2dpdmVuX3NyY2Rpci8kYWNfZGlyL0xJTkdVQVMiOyB0aGVuCisgICAgICAgICAgICAjIFRoZSBMSU5HVUFTIGZpbGUgY29udGFpbnMgdGhlIHNldCBvZiBhdmFpbGFibGUgbGFuZ3VhZ2VzLgorICAgICAgICAgICAgaWYgdGVzdCAtbiAiJE9CU09MRVRFX0FMTF9MSU5HVUFTIjsgdGhlbgorICAgICAgICAgICAgICB0ZXN0IC1uICIkYXNfbWUiICYmIGVjaG8gIiRhc19tZTogc2V0dGluZyBBTExfTElOR1VBUyBpbiBjb25maWd1cmUuaW4gaXMgb2Jzb2xldGUiIHx8IGVjaG8gInNldHRpbmcgQUxMX0xJTkdVQVMgaW4gY29uZmlndXJlLmluIGlzIG9ic29sZXRlIgorICAgICAgICAgICAgZmkKKyAgICAgICAgICAgIEFMTF9MSU5HVUFTXz1gc2VkIC1lICIvXiMvZCIgLWUgInMvIy4qLy8iICIkYWNfZ2l2ZW5fc3JjZGlyLyRhY19kaXIvTElOR1VBUyJgCisgICAgICAgICAgICAjIEhpZGUgdGhlIEFMTF9MSU5HVUFTIGFzc2lnbWVudCBmcm9tIGF1dG9tYWtlIDwgMS41LgorICAgICAgICAgICAgZXZhbCAnQUxMX0xJTkdVQVMnJz0kQUxMX0xJTkdVQVNfJworICAgICAgICAgICAgUE9NQUtFRklMRURFUFM9IiRQT01BS0VGSUxFREVQUyBMSU5HVUFTIgorICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICMgVGhlIHNldCBvZiBhdmFpbGFibGUgbGFuZ3VhZ2VzIHdhcyBnaXZlbiBpbiBjb25maWd1cmUuaW4uCisgICAgICAgICAgICAjIEhpZGUgdGhlIEFMTF9MSU5HVUFTIGFzc2lnbWVudCBmcm9tIGF1dG9tYWtlIDwgMS41LgorICAgICAgICAgICAgZXZhbCAnQUxMX0xJTkdVQVMnJz0kT0JTT0xFVEVfQUxMX0xJTkdVQVMnCisgICAgICAgICAgZmkKKyAgICAgICAgICAjIENvbXB1dGUgUE9GSUxFUworICAgICAgICAgICMgYXMgICAgICAkKGZvcmVhY2ggbGFuZywgJChBTExfTElOR1VBUyksICQoc3JjZGlyKS8kKGxhbmcpLnBvKQorICAgICAgICAgICMgQ29tcHV0ZSBVUERBVEVQT0ZJTEVTCisgICAgICAgICAgIyBhcyAgICAgICQoZm9yZWFjaCBsYW5nLCAkKEFMTF9MSU5HVUFTKSwgJChsYW5nKS5wby11cGRhdGUpCisgICAgICAgICAgIyBDb21wdXRlIERVTU1ZUE9GSUxFUworICAgICAgICAgICMgYXMgICAgICAkKGZvcmVhY2ggbGFuZywgJChBTExfTElOR1VBUyksICQobGFuZykubm9wKQorICAgICAgICAgICMgQ29tcHV0ZSBHTU9GSUxFUworICAgICAgICAgICMgYXMgICAgICAkKGZvcmVhY2ggbGFuZywgJChBTExfTElOR1VBUyksICQoc3JjZGlyKS8kKGxhbmcpLmdtbykKKyAgICAgICAgICBjYXNlICIkYWNfZ2l2ZW5fc3JjZGlyIiBpbgorICAgICAgICAgICAgLikgc3JjZGlycHJlPSA7OworICAgICAgICAgICAgKikgc3JjZGlycHJlPSckKHNyY2RpcikvJyA7OworICAgICAgICAgIGVzYWMKKyAgICAgICAgICBQT0ZJTEVTPQorICAgICAgICAgIFVQREFURVBPRklMRVM9CisgICAgICAgICAgRFVNTVlQT0ZJTEVTPQorICAgICAgICAgIEdNT0ZJTEVTPQorICAgICAgICAgIGZvciBsYW5nIGluICRBTExfTElOR1VBUzsgZG8KKyAgICAgICAgICAgIFBPRklMRVM9IiRQT0ZJTEVTICRzcmNkaXJwcmUkbGFuZy5wbyIKKyAgICAgICAgICAgIFVQREFURVBPRklMRVM9IiRVUERBVEVQT0ZJTEVTICRsYW5nLnBvLXVwZGF0ZSIKKyAgICAgICAgICAgIERVTU1ZUE9GSUxFUz0iJERVTU1ZUE9GSUxFUyAkbGFuZy5ub3AiCisgICAgICAgICAgICBHTU9GSUxFUz0iJEdNT0ZJTEVTICRzcmNkaXJwcmUkbGFuZy5nbW8iCisgICAgICAgICAgZG9uZQorICAgICAgICAgICMgQ0FUQUxPR1MgZGVwZW5kcyBvbiBib3RoICRhY19kaXIgYW5kIHRoZSB1c2VyJ3MgTElOR1VBUworICAgICAgICAgICMgZW52aXJvbm1lbnQgdmFyaWFibGUuCisgICAgICAgICAgSU5TVF9MSU5HVUFTPQorICAgICAgICAgIGlmIHRlc3QgLW4gIiRBTExfTElOR1VBUyI7IHRoZW4KKyAgICAgICAgICAgIGZvciBwcmVzZW50bGFuZyBpbiAkQUxMX0xJTkdVQVM7IGRvCisgICAgICAgICAgICAgIHVzZWl0PW5vCisgICAgICAgICAgICAgIGlmIHRlc3QgIiVVTlNFVCUiICE9ICIkTElOR1VBUyI7IHRoZW4KKyAgICAgICAgICAgICAgICBkZXNpcmVkbGFuZ3VhZ2VzPSIkTElOR1VBUyIKKyAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIGRlc2lyZWRsYW5ndWFnZXM9IiRBTExfTElOR1VBUyIKKyAgICAgICAgICAgICAgZmkKKyAgICAgICAgICAgICAgZm9yIGRlc2lyZWRsYW5nIGluICRkZXNpcmVkbGFuZ3VhZ2VzOyBkbworICAgICAgICAgICAgICAgICMgVXNlIHRoZSBwcmVzZW50bGFuZyBjYXRhbG9nIGlmIGRlc2lyZWRsYW5nIGlzCisgICAgICAgICAgICAgICAgIyAgIGEuIGVxdWFsIHRvIHByZXNlbnRsYW5nLCBvcgorICAgICAgICAgICAgICAgICMgICBiLiBhIHZhcmlhbnQgb2YgcHJlc2VudGxhbmcgKGJlY2F1c2UgaW4gdGhpcyBjYXNlLAorICAgICAgICAgICAgICAgICMgICAgICBwcmVzZW50bGFuZyBjYW4gYmUgdXNlZCBhcyBhIGZhbGxiYWNrIGZvciBtZXNzYWdlcworICAgICAgICAgICAgICAgICMgICAgICB3aGljaCBhcmUgbm90IHRyYW5zbGF0ZWQgaW4gdGhlIGRlc2lyZWRsYW5nIGNhdGFsb2cpLgorICAgICAgICAgICAgICAgIGNhc2UgIiRkZXNpcmVkbGFuZyIgaW4KKyAgICAgICAgICAgICAgICAgICIkcHJlc2VudGxhbmciKikgdXNlaXQ9eWVzOzsKKyAgICAgICAgICAgICAgICBlc2FjCisgICAgICAgICAgICAgIGRvbmUKKyAgICAgICAgICAgICAgaWYgdGVzdCAkdXNlaXQgPSB5ZXM7IHRoZW4KKyAgICAgICAgICAgICAgICBJTlNUX0xJTkdVQVM9IiRJTlNUX0xJTkdVQVMgJHByZXNlbnRsYW5nIgorICAgICAgICAgICAgICBmaQorICAgICAgICAgICAgZG9uZQorICAgICAgICAgIGZpCisgICAgICAgICAgQ0FUQUxPR1M9CisgICAgICAgICAgaWYgdGVzdCAtbiAiJElOU1RfTElOR1VBUyI7IHRoZW4KKyAgICAgICAgICAgIGZvciBsYW5nIGluICRJTlNUX0xJTkdVQVM7IGRvCisgICAgICAgICAgICAgIENBVEFMT0dTPSIkQ0FUQUxPR1MgJGxhbmcuZ21vIgorICAgICAgICAgICAgZG9uZQorICAgICAgICAgIGZpCisgICAgICAgICAgdGVzdCAtbiAiJGFzX21lIiAmJiBlY2hvICIkYXNfbWU6IGNyZWF0aW5nICRhY19kaXIvTWFrZWZpbGUiIHx8IGVjaG8gImNyZWF0aW5nICRhY19kaXIvTWFrZWZpbGUiCisgICAgICAgICAgc2VkIC1lICIvXlBPVEZJTEVTID0vciAkYWNfZGlyL1BPVEZJTEVTIiAtZSAiL14jIE1ha2V2YXJzL3IgJGFjX2dpdmVuX3NyY2Rpci8kYWNfZGlyL01ha2V2YXJzIiAtZSAic3xAUE9GSUxFU0B8JFBPRklMRVN8ZyIgLWUgInN8QFVQREFURVBPRklMRVNAfCRVUERBVEVQT0ZJTEVTfGciIC1lICJzfEBEVU1NWVBPRklMRVNAfCREVU1NWVBPRklMRVN8ZyIgLWUgInN8QEdNT0ZJTEVTQHwkR01PRklMRVN8ZyIgLWUgInN8QENBVEFMT0dTQHwkQ0FUQUxPR1N8ZyIgLWUgInN8QFBPTUFLRUZJTEVERVBTQHwkUE9NQUtFRklMRURFUFN8ZyIgIiRhY19kaXIvTWFrZWZpbGUuaW4iID4gIiRhY19kaXIvTWFrZWZpbGUiCisgICAgICAgICAgZm9yIGYgaW4gIiRhY19naXZlbl9zcmNkaXIvJGFjX2RpciIvUnVsZXMtKjsgZG8KKyAgICAgICAgICAgIGlmIHRlc3QgLWYgIiRmIjsgdGhlbgorICAgICAgICAgICAgICBjYXNlICIkZiIgaW4KKyAgICAgICAgICAgICAgICAqLm9yaWcgfCAqLmJhayB8ICp+KSA7OworICAgICAgICAgICAgICAgICopIGNhdCAiJGYiID4+ICIkYWNfZGlyL01ha2VmaWxlIiA7OworICAgICAgICAgICAgICBlc2FjCisgICAgICAgICAgICBmaQorICAgICAgICAgIGRvbmUKKyAgICAgICAgZmkKKyAgICAgICAgOzsKKyAgICAgIGVzYWMKKyAgICBkb25lIDs7CisKKyAgZXNhYworZG9uZSAjIGZvciBhY190YWcKKworCithc19mbl9leGl0IDAKK19BQ0VPRgorYWNfY2xlYW5fZmlsZXM9JGFjX2NsZWFuX2ZpbGVzX3NhdmUKKwordGVzdCAkYWNfd3JpdGVfZmFpbCA9IDAgfHwKKyAgYXNfZm5fZXJyb3IgJD8gIndyaXRlIGZhaWx1cmUgY3JlYXRpbmcgJENPTkZJR19TVEFUVVMiICIkTElORU5PIiA1CisKKworIyBjb25maWd1cmUgaXMgd3JpdGluZyB0byBjb25maWcubG9nLCBhbmQgdGhlbiBjYWxscyBjb25maWcuc3RhdHVzLgorIyBjb25maWcuc3RhdHVzIGRvZXMgaXRzIG93biByZWRpcmVjdGlvbiwgYXBwZW5kaW5nIHRvIGNvbmZpZy5sb2cuCisjIFVuZm9ydHVuYXRlbHksIG9uIERPUyB0aGlzIGZhaWxzLCBhcyBjb25maWcubG9nIGlzIHN0aWxsIGtlcHQgb3BlbgorIyBieSBjb25maWd1cmUsIHNvIGNvbmZpZy5zdGF0dXMgd29uJ3QgYmUgYWJsZSB0byB3cml0ZSB0byBpdDsgaXRzCisjIG91dHB1dCBpcyBzaW1wbHkgZGlzY2FyZGVkLiAgU28gd2UgZXhlYyB0aGUgRkQgdG8gL2Rldi9udWxsLAorIyBlZmZlY3RpdmVseSBjbG9zaW5nIGNvbmZpZy5sb2csIHNvIGl0IGNhbiBiZSBwcm9wZXJseSAocmUpb3BlbmVkIGFuZAorIyBhcHBlbmRlZCB0byBieSBjb25maWcuc3RhdHVzLiAgV2hlbiBjb21pbmcgYmFjayB0byBjb25maWd1cmUsIHdlCisjIG5lZWQgdG8gbWFrZSB0aGUgRkQgYXZhaWxhYmxlIGFnYWluLgoraWYgdGVzdCAiJG5vX2NyZWF0ZSIgIT0geWVzOyB0aGVuCisgIGFjX2NzX3N1Y2Nlc3M9OgorICBhY19jb25maWdfc3RhdHVzX2FyZ3M9CisgIHRlc3QgIiRzaWxlbnQiID0geWVzICYmCisgICAgYWNfY29uZmlnX3N0YXR1c19hcmdzPSIkYWNfY29uZmlnX3N0YXR1c19hcmdzIC0tcXVpZXQiCisgIGV4ZWMgNT4vZGV2L251bGwKKyAgJFNIRUxMICRDT05GSUdfU1RBVFVTICRhY19jb25maWdfc3RhdHVzX2FyZ3MgfHwgYWNfY3Nfc3VjY2Vzcz1mYWxzZQorICBleGVjIDU+PmNvbmZpZy5sb2cKKyAgIyBVc2UgfHwsIG5vdCAmJiwgdG8gYXZvaWQgZXhpdGluZyBmcm9tIHRoZSBpZiB3aXRoICQ/ID0gMSwgd2hpY2gKKyAgIyB3b3VsZCBtYWtlIGNvbmZpZ3VyZSBmYWlsIGlmIHRoaXMgaXMgdGhlIGxhc3QgaW5zdHJ1Y3Rpb24uCisgICRhY19jc19zdWNjZXNzIHx8IGFzX2ZuX2V4aXQgMQorZmkKK2lmIHRlc3QgLW4gIiRhY191bnJlY29nbml6ZWRfb3B0cyIgJiYgdGVzdCAiJGVuYWJsZV9vcHRpb25fY2hlY2tpbmciICE9IG5vOyB0aGVuCisgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogV0FSTklORzogdW5yZWNvZ25pemVkIG9wdGlvbnM6ICRhY191bnJlY29nbml6ZWRfb3B0cyIgPiY1CiskYXNfZWNobyAiJGFzX21lOiBXQVJOSU5HOiB1bnJlY29nbml6ZWQgb3B0aW9uczogJGFjX3VucmVjb2duaXplZF9vcHRzIiA+JjI7fQorZmkKKwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9jb25maWd1cmUuYWMgYi9kcGtnLTEuMTYuMS4xL2NvbmZpZ3VyZS5hYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jODQ0YjNiCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9jb25maWd1cmUuYWMKQEAgLTAsMCArMSwxMTggQEAKKyMgUHJvY2VzcyB0aGlzIGZpbGUgd2l0aCBhdXRvY29uZiB0byBwcm9kdWNlIGEgY29uZmlndXJlIHNjcmlwdC4KKworQUNfUFJFUkVRKDIuNjApCitBQ19JTklUKFtkcGtnXSwgbTRfZXN5c2NtZChbLi9nZXQtdmVyc2lvbl0pLCBbZGViaWFuLWRwa2dAbGlzdHMuZGViaWFuLm9yZ10pCitBQ19DT05GSUdfU1JDRElSKFtsaWIvZHBrZy9kcGtnLmhdKQorQUNfQ09ORklHX01BQ1JPX0RJUihbbTRdKQorQUNfQ09ORklHX0FVWF9ESVIoW2J1aWxkLWF1eF0pCisKK0FDX1VTRV9TWVNURU1fRVhURU5TSU9OUworCitBTV9JTklUX0FVVE9NQUtFKFsxLjggZm9yZWlnbiBub3N0ZGluY10pCisKK200X2lmZGVmKFtBTV9TSUxFTlRfUlVMRVNdLCBbQU1fU0lMRU5UX1JVTEVTKFt5ZXNdKV0sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgW0FDX1NVQlNUKFtBTV9ERUZBVUxUX1ZFUkJPU0lUWV0sIFsxXSldKQorCitBTV9HTlVfR0VUVEVYVF9WRVJTSU9OKFswLjE4XSkKK0FNX0dOVV9HRVRURVhUKFtleHRlcm5hbF0pCisKKyMgQWxsb3cgY29tcGlsYXRpb24gd2l0aG91dCBvcHRpb25hbCBwcm9ncmFtcworRFBLR19XSVRIX1BST0coW2RzZWxlY3RdKQorRFBLR19XSVRIX1BST0coW3N0YXJ0LXN0b3AtZGFlbW9uXSkKK0RQS0dfV0lUSF9QUk9HKFt1cGRhdGUtYWx0ZXJuYXRpdmVzXSkKK0RQS0dfV0lUSF9QUk9HKFtpbnN0YWxsLWluZm9dKQorCisjIEFsbG93IGFsdGVybmF0ZSBkaXJlY3RvcmllcworRFBLR19XSVRIX0RJUihbYWRtaW5kaXJdLCBbJHtsb2NhbHN0YXRlZGlyfS9saWIvJHtQQUNLQUdFX05BTUV9XSwKKyAgICAgICAgICAgICAgW2Rwa2cgZGF0YWJhc2UgZGlyZWN0b3J5IFtMT0NBTFNUQVRFRElSL2xpYi9kcGtnXV0pCitEUEtHX1dJVEhfRElSKFtsb2dkaXJdLCBbJHtsb2NhbHN0YXRlZGlyfS9sb2ddLAorICAgICAgICAgICAgICBbc3lzdGVtIGxvZ2dpbmcgZGlyZWN0b3J5IFtMT0NBTFNUQVRFRElSL2xvZ11dKQorCisjIENoZWNrcyBmb3IgcHJvZ3JhbXMuCitBQ19QUk9HX0NDCitBQ19QUk9HX0NYWAorQUNfUFJPR19MRVgKK0FDX1BST0dfUkFOTElCCitBQ19DSEVDS19QUk9HUyhbRE9YWUdFTl0sIFtkb3h5Z2VuXSkKK0FDX0NIRUNLX1BST0coW0hBVkVfRE9UXSwgW2RvdF0sIFtZRVNdLCBbTk9dKQorRFBLR19QUk9HX1BPNEEKK0RQS0dfUFJPR19QRVJMCitEUEtHX1BST0dfUE9EMk1BTgorRFBLR19DT0RFX0NPVkVSQUdFCisKKyMgQ2hlY2tzIGZvciBvcGVyYXRpbmcgc3lzdGVtIHNlcnZpY2VzIGFuZCBjYXBhYmlsaXRpZXMuCitBQ19TWVNfTEFSR0VGSUxFCisKKyMgQ2hlY2tzIGZvciBsaWJyYXJpZXMuCitEUEtHX0xJQl9aTElCCitEUEtHX0xJQl9CWjIKK0RQS0dfTElCX1NFTElOVVgKK2lmIHRlc3QgIngkYnVpbGRfZHNlbGVjdCIgPSAieHllcyI7IHRoZW4KKyAgIERQS0dfTElCX0NVUlNFUworZmkKK2lmIHRlc3QgIngkYnVpbGRfc3RhcnRfc3RvcF9kYWVtb24iID0gInh5ZXMiOyB0aGVuCisgICBEUEtHX0xJQl9TU0QKK2ZpCisKKyMgQ2hlY2tzIGZvciBoZWFkZXIgZmlsZXMuCitBQ19IRUFERVJfU1REQworQUNfQ0hFQ0tfSEVBREVSUyhbc3RkZGVmLmggZXJyb3IuaCBsb2NhbGUuaCBsaWJpbnRsLmgga3ZtLmggXAorICAgICAgICAgICAgICAgICAgc3lzL2NkZWZzLmggc3lzL3N5c2NhbGwuaCBsaW51eC9maWVtYXAuaF0pCisKKyMgQ2hlY2tzIGZvciB0eXBlZGVmcywgc3RydWN0dXJlcywgYW5kIGNvbXBpbGVyIGNoYXJhY3RlcmlzdGljcy4KK0FDX0NfQklHRU5ESUFOCitBQ19DX0NPTlNUCitBQ19DX0lOTElORQorQUNfQ19WT0xBVElMRQorRFBLR19DX0M5OQorQUNfVFlQRV9NT0RFX1QKK0FDX1RZUEVfUElEX1QKK0FDX1RZUEVfU0laRV9UCitEUEtHX1RZUEVfUFRSRElGRl9UCitBQ19DSEVDS19TSVpFT0YoW3Vuc2lnbmVkIGludF0pCitBQ19DSEVDS19TSVpFT0YoW3Vuc2lnbmVkIGxvbmddKQorRFBLR19ERUNMX1NZU19TSUdMSVNUCisKKyMgQ2hlY2tzIGZvciBsaWJyYXJ5IGZ1bmN0aW9ucy4KK0RQS0dfRlVOQ19WQV9DT1BZCitEUEtHX0ZVTkNfQzk5X1NOUFJJTlRGCitEUEtHX0NIRUNLX0RFQ0woW29mZnNldG9mXSwgW3N0ZGRlZi5oXSkKK0RQS0dfQ0hFQ0tfREVDTChbV0NPUkVEVU1QXSwgW3N5cy93YWl0LmhdKQorRFBLR19DSEVDS19ERUNMKFtUSU9DTk9UVFldLCBbc3lzL2lvY3RsLmhdKQorRFBLR19DSEVDS19QUk9HTkFNRQorRFBLR19DSEVDS19DT01QQVRfRlVOQ1MoW2dldG9wdCBnZXRvcHRfbG9uZyBvYnN0YWNrX2ZyZWUgXAorICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm5sZW4gc3RyZXJyb3Igc3Ryc2lnbmFsIGFzcHJpbnRmIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICBzY2FuZGlyIGFscGhhc29ydCB1bnNldGVudl0pCitBQ19DSEVDS19GVU5DUyhbc3RydG91bCBzdHJ0b2ltYXggaXNhc2NpaSBiY29weSBtZW1jcHkgc2V0c2lkIGdldGR0YWJsZXNpemUgXAorICAgICAgICAgICAgICAgIGdldHByb2duYW1lIGdldGV4ZWNuYW1lIGx1dGltZXMgcG9zaXhfZmFkdmlzZV0pCisKK0RQS0dfTU1BUAorCisjIENoZWNrcyBmb3IgdGhlIGJ1aWxkIG1hY2hpbmVyeS4KK0FDX0RFRklORShMSUJEUEtHX1ZPTEFUSUxFX0FQSSwgMSwgW0Fja25vd2xlZGdlIHRoZSB2b2xhdGlsaXR5IG9mIHRoZSBBUEkuXSkKK0RQS0dfQ09NUElMRVJfV0FSTklOR1MKK0RQS0dfQ09NUElMRVJfT1BUSU1JU0FUSU9OUworRFBLR19MSU5LRVJfT1BUSU1JU0FUSU9OUworRFBLR19BUkNISVRFQ1RVUkUKKworQUNfQ09ORklHX0ZJTEVTKFsgTWFrZWZpbGUKKwkJICBkcGtnLWRlYi9NYWtlZmlsZQorCQkgIGRwa2ctc3BsaXQvTWFrZWZpbGUKKwkJICBkc2VsZWN0L01ha2VmaWxlCisJCSAgZHNlbGVjdC9tZXRob2RzL01ha2VmaWxlCisJCSAgZHNlbGVjdC9wby9NYWtlZmlsZS5pbgorCQkgIGxpYi9NYWtlZmlsZQorCQkgIGxpYi9jb21wYXQvTWFrZWZpbGUKKwkJICBsaWIvZHBrZy9NYWtlZmlsZQorCQkgIGxpYi9kcGtnL2xpYmRwa2cucGMKKwkJICBsaWIvZHBrZy90ZXN0L01ha2VmaWxlCisJCSAgZG9jL0RveHlmaWxlCisJCSAgbWFuL01ha2VmaWxlCisJCSAgcG8vTWFrZWZpbGUuaW4KKwkJICBzY3JpcHRzL01ha2VmaWxlCisJCSAgc2NyaXB0cy9tay9NYWtlZmlsZQorCQkgIHNjcmlwdHMvcG8vTWFrZWZpbGUuaW4KKwkJICBzcmMvTWFrZWZpbGUKKwkJICB1dGlscy9NYWtlZmlsZSBdKQorQUNfQ09ORklHX0hFQURFUlMoW2NvbmZpZy5oXSkKK0FDX09VVFBVVApkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9jcHV0YWJsZSBiL2Rwa2ctMS4xNi4xLjEvY3B1dGFibGUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOGI2MjgwYgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvY3B1dGFibGUKQEAgLTAsMCArMSw0MCBAQAorIyBUaGlzIGZpbGUgY29udGFpbnMgdGhlIHRhYmxlIG9mIGtub3duIENQVSBuYW1lcy4KKyMKKyMgQXJjaGl0ZWN0dXJlIG5hbWVzIGFyZSBmb3JtZWQgYXMgYSBjb21iaW5hdGlvbiBvZiB0aGUgc3lzdGVtIG5hbWUKKyMgKGZyb20gb3N0YWJsZSkgYW5kIENQVSBuYW1lIChmcm9tIHRoaXMgdGFibGUpIGFmdGVyIG1hcHBpbmcgZnJvbQorIyB0aGUgRGViaWFuIHRyaXBsZXQgKGZyb20gdHJpcGxldHRhYmxlKS4gQSBsaXN0IG9mIGFyY2hpdGVjdHVyZQorIyBuYW1lcyBpbiB0aGUgRGViaWFuIOKAmHNpZOKAmSBkaXN0cmlidXRpb24gY2FuIGJlIGZvdW5kIGluIHRoZSBhcmNodGFibGUKKyMgZmlsZS4KKyMKKyMgQ29sdW1uIDEgaXMgdGhlIERlYmlhbiBuYW1lIGZvciB0aGUgQ1BVLCB1c2VkIHRvIGZvcm0gdGhlIGNwdSBwYXJ0IGluCisjIHRoZSBEZWJpYW4gdHJpcGxldC4KKyMgQ29sdW1uIDIgaXMgdGhlIEdOVSBuYW1lIGZvciB0aGUgQ1BVLCB1c2VkIHRvIG91dHB1dCBidWlsZCBhbmQgaG9zdAorIyB0YXJnZXRzIGluIOKAmGRwa2ctYXJjaGl0ZWN0dXJl4oCZLgorIyBDb2x1bW4gMyBpcyBhbiBleHRlbmRlZCByZWd1bGFyIGV4cHJlc3Npb24gdXNlZCB0byBtYXRjaCBhZ2FpbnN0IHRoZQorIyBDUFUgcGFydCBvZiB0aGUgb3V0cHV0IG9mIHRoZSBHTlUgY29uZmlnLmd1ZXNzIHNjcmlwdC4KKyMgQ29sdW1uIDQgaXMgdGhlIHNpemUgKGluIGJpdHMpIG9mIHRoZSBpbnRlZ2Vycy9wb2ludGVycworIyBDb2x1bW4gNSBpcyB0aGUgZW5kaWFubmVzcyAoYnl0ZSBvcmRlcmluZyBpbiBudW1iZXJzKQorIworIyA8RGViaWFuIG5hbWU+CTxHTlUgbmFtZT4JPGNvbmZpZy5ndWVzcyByZWdleD4JPEJpdHM+CTxFbmRpYW5uZXNzPgoraTM4NgkJaTQ4NgkJKGlbMzQ1Nl04NnxwZW50aXVtKQkzMglsaXR0bGUKK2lhNjQJCWlhNjQJCWlhNjQJCQk2NAlsaXR0bGUKK2FscGhhCQlhbHBoYQkJYWxwaGEuKgkJCTY0CWxpdHRsZQorYW1kNjQJCXg4Nl82NAkJeDg2XzY0CQkJNjQJbGl0dGxlCithcm1lYgkJYXJtZWIJCWFybS4qYgkJCTMyCWJpZworYXJtCQlhcm0JCWFybS4qCQkJMzIJbGl0dGxlCithdnIzMgkJYXZyMzIJCWF2cjMyCQkJMzIJYmlnCitocHBhCQlocHBhCQlocHBhLioJCQkzMgliaWcKK20zMnIJCW0zMnIJCW0zMnIJCQkzMgliaWcKK202OGsJCW02OGsJCW02OGsJCQkzMgliaWcKK21pcHMJCW1pcHMJCW1pcHMoZWIpPwkJMzIJYmlnCittaXBzZWwJCW1pcHNlbAkJbWlwc2VsCQkJMzIJbGl0dGxlCitwb3dlcnBjCQlwb3dlcnBjCQkocG93ZXJwY3xwcGMpCQkzMgliaWcKK3BwYzY0CQlwb3dlcnBjNjQJKHBvd2VycGN8cHBjKTY0CQk2NAliaWcKK3MzOTAJCXMzOTAJCXMzOTAJCQkzMgliaWcKK3MzOTB4CQlzMzkweAkJczM5MHgJCQk2NAliaWcKK3NoMwkJc2gzCQlzaDMJCQkzMglsaXR0bGUKK3NoM2ViCQlzaDNlYgkJc2gzZWIJCQkzMgliaWcKK3NoNAkJc2g0CQlzaDQJCQkzMglsaXR0bGUKK3NoNGViCQlzaDRlYgkJc2g0ZWIJCQkzMgliaWcKK3NwYXJjCQlzcGFyYwkJc3BhcmMJCQkzMgliaWcKK3NwYXJjNjQJCXNwYXJjNjQJCXNwYXJjNjQJCQk2NAliaWcKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZGViaWFuL2FyY2h0YWJsZSBiL2Rwa2ctMS4xNi4xLjEvZGViaWFuL2FyY2h0YWJsZQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hNTAzMjhiCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kZWJpYW4vYXJjaHRhYmxlCkBAIC0wLDAgKzEsMjkgQEAKKyMgVGhpcyBmaWxlIGNvbnRhaW5zIHRoZSBsaXN0IG9mIGFyY2hpdGVjdHVyZSBuYW1lcyBpbiBEZWJpYW4ncyDigJhzaWTigJkKKyMgZGlzdHJpYnV0aW9uLgorIworIyBBcmNoaXRlY3R1cmUgbmFtZXMgYXJlIGZvcm1lZCBhcyBhIGNvbWJpbmF0aW9uIG9mIHRoZSBzeXN0ZW0gbmFtZQorIyAoZnJvbSBvc3RhYmxlKSBhbmQgQ1BVIG5hbWUgKGZyb20gY3B1dGFibGUpIGFmdGVyIG1hcHBpbmcgZnJvbQorIyB0aGUgRGViaWFuIHRyaXBsZXQgKGZyb20gdHJpcGxldHRhYmxlKS4gU3VwcG9ydCBmb3IgbmV3CisjIGFyY2hpdGVjdHVyZXMgaW4gZHBrZyBpcyBhZGRlZCBpbiB0aG9zZSBmaWxlcywgYXJjaGl0ZWN0dXJlIG5hbWVzCisjIGFyZSBvbmx5IGFkZGVkIHRvIHRoaXMgZmlsZSB3aGVuIGFkZGVkIHRvIHRoZSBkaXN0cmlidXRpb24uCisjCisjIENvbHVtbiAxIGlzIHByZXNlbnQgZm9yIGhpc3RvcmljYWwgcmVhc29ucyBvbmx5LCBhbmQgc2hvdWxkIGJlIGlnbm9yZWQuCisjIENvbHVtbiAyIGNvbnRhaW5zIHRoZSBEZWJpYW4gbmFtZSBmb3IgdGhlIGFyY2hpdGVjdHVyZSwgd2hpY2ggaXMgcmV0dXJuZWQKKyMgYnkg4oCYZHBrZyAtLXByaW50LWFyY2hpdGVjdHVyZeKAmS4KKyMgCisjIDxpZ25vcmU+CQkJPERlYmlhbiBuYW1lPgoraTQ4Ni1saW51eC1nbnUJCQlpMzg2CitpYTY0LWxpbnV4LWdudQkJCWlhNjQKK2FscGhhLWxpbnV4LWdudQkJCWFscGhhCit4ODZfNjQtbGludXgtZ251CQlhbWQ2NAorYXJtLWxpbnV4LWdudQkJCWFybQorYXJtLWxpbnV4LWdudWVhYmkJCWFybWVsCitocHBhLWxpbnV4LWdudQkJCWhwcGEKK21pcHMtbGludXgtZ251CQkJbWlwcworbWlwc2VsLWxpbnV4LWdudQkJbWlwc2VsCitwb3dlcnBjLWxpbnV4LWdudQkJcG93ZXJwYworczM5MC1saW51eC1nbnUJCQlzMzkwCitzcGFyYy1saW51eC1nbnUJCQlzcGFyYworaTQ4Ni1nbnUJCQlodXJkLWkzODYKK2k0ODYta2ZyZWVic2QtZ251CQlrZnJlZWJzZC1pMzg2Cit4ODZfNjQta2ZyZWVic2QtZ251CQlrZnJlZWJzZC1hbWQ2NApkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kZWJpYW4vY2hhbmdlbG9nIGIvZHBrZy0xLjE2LjEuMS9kZWJpYW4vY2hhbmdlbG9nCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjg2ZmY4N2UKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RlYmlhbi9jaGFuZ2Vsb2cKQEAgLTAsMCArMSw4NzA4IEBACitkcGtnICgxLjE2LjEuMSkgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgWyBSYXBoYcOrbCBIZXJ0em9nIF0KKyAgKiBGaXggZHBrZy1zb3VyY2UgdG8gbm90IGlnbm9yZSB0aGUgYXV0b21hdGljIHBhdGNoIHdoZW4gY2hlY2tpbmcKKyAgICBmb3IgdW5yZWNvcmRlZCBjaGFuZ2VzLiBDbG9zZXM6ICM2NDMxNDgKKyAgKiBMZXQgZHBrZy1zb3VyY2UgLS1jb21taXQgY3JlYXRlIGRlYmlhbi9wYXRjaGVzIHdoZW4gcmVxdWlyZWQuCisgICAgQ2xvc2VzOiAjNjQzMDM3CisgICogRml4IGRwa2ctYnVpbGRmbGFncyAtLWR1bXAgdG8gcmV0dXJuIDAgYXMgZXhpdCBjb2RlIGFuZCBub3QgMS4KKyAgKiBVcGRhdGUgZHBrZy1idWlsZGZsYWdzKDEpIHRvIG5vdCBpbmNsdWRlIHF1b3RlcyBpbiB0aGUgZXhhbXBsZXMKKyAgICBzZXR0aW5nIERFQl9CVUlMRF9NQUlOVF9PUFRJT05TLgorICAqIFN0b3Agb3V0cHV0dGluZyBidWlsZCBmbGFncyBpbiBkcGtnLWJ1aWxkcGFja2FnZSBhcyBpdCBjb25mdXNlcworICAgIG1haW50YWluZXJzIHdobyBhcmUgb3ZlcnJpZGluZyB0aGVtIGluIGRlYmlhbi9ydWxlcyBhbmQgd2hvCisgICAgYXJlIG5vdCBzZWVpbmcgdGhlIGV4cGVjdGVkIHZhbHVlIGluIHRoZSBidWlsZCBsb2cuCisgICogRml4IHRyaWdnZXIgc2V0dXAgY29kZSB0byBub3QgcmVzZXQgdGhlIHN0YXR1cyBvZiBwYWNrYWdlcworICAgIHdoZW4gdGhleSBhcmUgaW4gYSBzdGF0dXMgZGlmZmVyZW50IGZyb20gdHJpZ2dlcnMtYXdhaXRlZCwKKyAgICB0cmlnZ2Vycy1wZW5kaW5nIG9yIGluc3RhbGxlZC4gQ2xvc2VzOiAjNjQ0NDkyCisgICogRml4IGRwa2ctc291cmNlIHRvIGlnbm9yZSBjaGFuZ2VzIG9uIGRlYmlhbi9wYXRjaGVzLy5kcGtnLXNvdXJjZS1hcHBsaWVkCisgICAgd2hlbiBidWlsZGluZyBhICIyLjAiIHNvdXJjZSBwYWNrYWdlLiBDbG9zZXM6ICM2NDI2NTYKKyAgKiBGaXggYnVpbGRmbGFncy5tayB0byByZS1leHBvcnQgdGhlIGVudmlyb25tZW50IHZhcmlhYmxlcyB0aGF0CisgICAgdGhlIG1haW50YWluZXIgY2FuIHVzZSB0byBjaGFuZ2UgdGhlIGJ1aWxkIGZsYWdzLiBDbG9zZXM6ICM2NDQ0MTIKKworICBbIEd1aWxsZW0gSm92ZXIgXQorICAqIENoYW5nZSBkcGtnLWJ1aWxkZmxhZ3MgdG8gc2V0IHByZXByb2Nlc3NvciBvcHRpb24gLURfRk9SVElGWV9TT1VSQ0U9MgorICAgIGluIENQUEZMQUdTLCBpbnN0ZWFkIG9mIENGTEFHUyBhbmQgQ1hYRkxBR1MuIENsb3NlczogIzY0MjUyMSwgIzY0MzYzMgorICAqIEZpeCB0eXBvIHRvIGNvcnJlY3RseSBzZXQgREVCXypfQVJDSF9CSVRTIGluc3RlYWQgb2YgREVCXypfQVJDSCBpbgorICAgIGFyY2hpdGVjdHVyZS5tay4gVGhhbmtzIHRvIFRob3JzdGVuIEdsYXNlciA8dGdAbWlyYnNkLm9yZz4uCisgICogTWFrZSBkcGtnLWJ1aWxkZmxhZ3MgZGlzYWJsZSBmdWxsIHJlbHJvIChiaW5kbm93KSBpZiByZWxybyBpcyBub3QgZW5hYmxlZC4KKworIC0tIEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4gIEZyaSwgMTQgT2N0IDIwMTEgMDc6MDg6MzEgKzAyMDAKKworZHBrZyAoMS4xNi4xKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICBbIFJhcGhhw6tsIEhlcnR6b2cgXQorICAqIERwa2c6OkRlcHM6IEltcGxlbWVudCBuZXcgInJlc2V0IiBtZXRob2QgYW5kIGJ1bXAgbW9kdWxlIHZlcnNpb24gdG8gMS4wMQorICAgIGR1ZSB0byB0aGlzLgorICAqIEltcHJvdmVkIGRlc2NyaXB0aW9uIG9mIC0tc2VhcmNoIGluIGRwa2ctcXVlcnkoMSkuIENsb3NlczogIzYyMTA2NgorICAgIFRoYW5rcyB0byBMYXJzIEJ1aXRpbmNrIDxsYXJzbWFuc0BnbWFpbC5jb20+IGZvciB0aGUgcGF0Y2guCisgICogTGV0IHVwZGF0ZS1hbHRlcm5hdGl2ZXMgZnN5bmMoKSBpdHMgYWRtaW5pc3RyYXRpdmUgZmlsZXMgYmVmb3JlCisgICAgbW92aW5nIHRoZW0gaW4gcGxhY2UgdG8gYXZvaWQgZW1wdHkgZmlsZXMgd2l0aCBzb21lIGZpbGVzeXN0ZW1zLgorICAgIExQOiAjMzQ0MDE5CisgICogVGlnaHRlbiB0aGUgcmVnZXhwIHVzZWQgYnkgZHBrZy1zb3VyY2UgdG8gaWdub3JlIHRoZSAucGMgZGlyZWN0b3J5IG9mCisgICAgcXVpbHQuIFRoYW5rcyB0byBNaWtlIEhvbW1leSBmb3Igbm90aWNpbmcgdGhlIHByb2JsZW0uCisgICogQ2hhbmdlIGJlaGF2aW91ciBvZiBkcGtnLXNvdXJjZSdzIC0tZXh0ZW5kLWRpZmYtaWdub3JlIHRvIGFsc28KKyAgICBleHRlbmQgdGhlIGN1cnJlbnQgZGlmZi1pZ25vcmUgaWYgaXQgaGFzIGFscmVhZHkgYmVlbiBzZXQuCisgICogRml4IGRlcGVuZGVuY3kgY2hlY2tpbmcgY29kZSB0byBjb25zaWRlciBhIGRlcGVuZGVuY3kgb24gYSB2aXJ0dWFsCisgICAgcGFja2FnZSBwcm92aWRlZCBieSBhIHBhY2thZ2UgaW4gdHJpZ2dlcnMtcGVuZGluZyBzdGF0dXMgYXMgc2F0aXNmaWVkLgorICAqIERvIG5vdCBmYWlsIHdoZW4gZW5jb3VudGVyaW5nIGEgcHJlLWRlcGVuZGVuY3kgaW4gdHJpZ2dlcnMtYXdhaXRlZCBzdGF0ZSwKKyAgICBpbnN0ZWFkIHByb2Nlc3MgdGhlIGF3YWl0ZWQgdHJpZ2dlcnMuIENsb3NlczogIzUyNjc3NAorICAqICJhbnkiIG5vIGxvbmdlciBoaWRlcyAiYWxsIiBpbiB0aGUgQXJjaGl0ZWN0dXJlIGZpZWxkIG9mIGEgLmRzYy4KKyAgKiBGaXggZHBrZyAtLXJlbW92ZSB0byByZWFsbHkgcmVtb3ZlIHRoZSB0cmlnZ2VycyBmcm9tIHRoZSB2YXJpb3VzCisgICAgaW50ZXJuYWwgZmlsZXMgaW4gL3Zhci9saWIvZHBrZy9pbmZvL3RyaWdnZXJzLy4gQ2xvc2VzOiAjNTI1MTYwCisgICogQXZvaWQgYSBwZXJsIHdhcm5pbmcgaW4gZHBrZy1nZW5zeW1ib2xzIHdoZW4gbm8gc3ltYm9scyBmaWxlIGhhcyBiZWVuCisgICAgZ2VuZXJhdGVkIChiZWNhdXNlIGl0IHdvdWxkIGhhdmUgYmVlbiBlbXB0eSkuIENsb3NlczogIzYyNjY4NAorICAqIFJlLWVuYWJsZSB0aGUgUGFja2FnZS1MaXN0IGZpZWxkIGJ1dCBkcm9wIHRoZSBBcmNoaXRlY3R1cmUgY29sdW1uIHNpbmNlIHdlCisgICAgaGF2ZSBubyBjbGVhciB1c2UgY2FzZSB5ZXQuIEl0IGNhbiBhbHdheXMgYmUgYWRkZWQgbGF0ZXIgb24uCisgICAgQWxzbyBkcm9wIHRoZSBzb3VyY2UgbGluZSBzaW5jZSBpdCBkdXBsaWNhdGVzIG90aGVyIGZpZWxkcy4KKyAgICBDbG9zZXM6ICM2MTkxMzEKKyAgKiBBZGQgdGhlIGV4dHJhY3Rpb24gcGFydCBvZiBEcGtnOjpTb3VyY2U6OlBhY2thZ2UgdG8gdGhlIHN1cHBvcnRlZCBBUEkuCisgICAgVXNlZnVsIHRvIGV4dHJhY3Qgc291cmNlIHBhY2thZ2VzIHdpdGhvdXQgaGF2aW5nIHRvIGRlcGVuZCBvbiBkcGtnLXNvdXJjZQorICAgIChhbmQgaGVuY2UgZHBrZy1kZXYpLgorICAqIEFkZCB0aGUgRHBrZzo6VmVuZG9yIG1vZHVsZSB0byB0aGUgc3VwcG9ydGVkIEFQSS4gVXNlZnVsIGZvciBsaW50aWFuCisgICAgd2hlbiBkcGtnLWRldiBpcyBhYnNlbnQuCisgICogQ2hlY2sgcHJlc2VuY2Ugb2YgcmVxdWlyZWQgcGFyYW1ldGVycyBpbiBkcGtnLXZlbmRvci4gQ2xvc2VzOiAjNjI4NzI2CisgICAgVGhhbmtzIHRvIE5pZWxzIFRoeWtpZXIgPG5pZWxzQHRoeWtpZXIubmV0PiBmb3IgdGhlIHBhdGNoLgorICAqIEF2b2lkIGEgUGVybCB3YXJuaW5nIGluIGRwa2ctYnVpbGRmbGFncyB3aGVuIEhPTUUgaXMgbm90IHNldC4KKyAgICBDbG9zZXM6ICM2MzU0NjcKKyAgKiBkcGtnLXNvdXJjZSBjYW4gbm93IGFsc28gdXNlIGRlYmlhbi9zb3VyY2UvbG9jYWwtcGF0Y2gtaGVhZGVyICh0aGF0IGlzIG5vdAorICAgIGluY2x1ZGVkIGluIHRoZSBnZW5lcmF0ZWQgc291cmNlIHBhY2thZ2UpIGluc3RlYWQgb2YKKyAgICBkZWJpYW4vc291cmNlL3BhdGNoLWhlYWRlci4gQ2xvc2VzOiAjNjI5NTgyCisgICogQ2hhbmdlZCBkcGtnLXNvdXJjZSAtLWFmdGVyLWJ1aWxkIHRvIGF1dG9tYXRpY2FsbHkgdW5hcHBseSBwYXRjaGVzIHRoYXQgaXQKKyAgICBoYXMgYXBwbGllZCBkdXJpbmcgLS1iZWZvcmUtYnVpbGQuCisgICogRml4IHR3byBwb3NzaWJsZSBjYXVzZXMgZm9yIHRoZSBhc3NlcnRpb24gZmFpbHVyZSAicGlncC0+dHJpZ3BlbmRfaGVhZCIuCisgICAgTFA6ICM3OTg3OTMsICM0MjQzNTggQ2xvc2VzOiAjNTYwMjUxCisgICogVXNlICJzcGVjaWFsIiBpbnN0ZWFkIG9mICJwYXJ0aWN1bGFyIiB0byBxdWFsaWZ5IHRoZSAiMy4wIChjdXN0b20pIiBmb3JtYXQKKyAgICBpbiBkcGtnLXNvdXJjZSgxKS4gQ2xvc2VzOiAjNjMxNDM1CisgICogQWRkIHNvbWUgc3VwcGxlbWVudGFyeSBjaGVja3MgdG8gZW5zdXJlIGRlYmlhbi9jb250cm9sIGhhcyB0aGUgcmVxdWlyZWQKKyAgICBmaWVsZHMuIENsb3NlczogIzYzMTQzOQorICAqIGRwa2ctZ2Vuc3ltYm9scygxKTogZG9jdW1lbnQgc3ludGF4IG9mIGNvbW1lbnRzLiBDbG9zZXM6ICM2MzA5OTYKKyAgKiBBbGxvdyBlbXB0eSBsaW5lcyBpbiBzeW1ib2xzIGZpbGVzIHRvIGJldHRlciBkZWxpbWl0IG11bHRpcGxlIGxpYnJhcmllcy4KKyAgICBUaGFua3MgdG8gQ3lyaWwgQnJ1bGVib2lzIDxraWJpQGRlYmlhbi5vcmc+IGZvciB0aGUgcGF0Y2guCisgICogZHBrZzogaWYgInByZXJtIHVwZ3JhZGUiIGZhaWxzIHdoZW4gZG93bmdyYWRpbmcsIGRvIG5vdCB0cnkgdG8gcnVuCisgICAgInByZXJtIGZhaWxlZC11cGdyYWRlIiB3aXRoIHRoZSBwcmVybSBvZiB0aGUgb2xkZXN0IHByZXJtLCBpdCBjYW4ndCB3b3JrCisgICAgYXJvdW5kIGEgYnVnIG9mIGEgbmV3ZXIgcHJlcm0gYW55d2F5LgorICAqIGRwa2c6IHN1cHBvcnQgbmV3ICJpbnRlcmVzdC1ub2F3YWl0IiBhbmQgImFjdGl2YXRlLW5vYXdhaXQiIHRyaWdnZXIKKyAgICBkaXJlY3RpdmVzLgorICAqIGRwa2ctYnVpbGRmbGFncygxKTogbWFrZSBpdCBjbGVhciB0aGF0IERFQl8qXyhTRVR8QVBQRU5EKSBlbnZpcm9ubWVudAorICAgIHZhcmlhYmxlcyBhcmUgbWVhbnQgZm9yIHVzZXJzIGFuZCBzaG91bGQgbm90IGJlIHVzZWQgYnkgcGFja2FnZXMuCisgICogdXBkYXRlLWFsdGVybmF0aXZlczogZG8gbm90IGFsbG93IHRvIHJldXNlIGEgc2xhdmUgbGluayBpbiBhbm90aGVyCisgICAgc2xhdmUgYWx0ZXJuYXRpdmUuIENsb3NlczogIzYzMTU0NworICAqIEltcHJvdmUgZHBrZy1zb3VyY2UncyBsb2dpYyB0byBpZGVudGlmeSBpZ25vcmVkIGZpbGVzLiBDbG9zZXM6ICM2MzIxNjgKKyAgKiBGaXggYSBzbWFsbCB0eXBvIGluIGRwa2ctc291cmNlKDEpLiBDbG9zZXM6ICM2MzI5MzcKKyAgKiBSZXdvcmQgdGhlIGRlc2NyaXB0aW9uIG9mIGRwa2ctc291cmNlIC0tYmVmb3JlLWJ1aWxkIGFuZCAtLWFmdGVyLWJ1aWxkCisgICAgdG8gYmUgY2xlYXJlci4gQ2xvc2VzOiAjNjA4MjYwCisgICogZHBrZy1idWlsZHBhY2thZ2Ugbm8gbG9uZ2VyIGV4cG9ydHMgdGhlIGNvbXBpbGVyIGZsYWdzLiBDbG9zZXM6ICM1NjAwNzAKKyAgICBQYWNrYWdlcyBtdXN0IGRpcmVjdGx5IGNhbGwgZHBrZy1idWlsZGZsYWdzIHRvIHJldHJpZXZlIHRoZW0uCisgICogZHBrZy1idWlsZGZsYWdzIHN1cHBvcnRzIGEgcHJlcGVuZCBjb21tYW5kIHRvIG1vZGlmeSB0aGUgYnVpbGQKKyAgICBmbGFncy4gUGFydGljdWxhcmx5IHVzZWZ1bCBmb3IgcGFja2FnZSBtYWludGFpbmVycyB3aG8gZG9uJ3Qgd2FudAorICAgIHRoZWlyIHN1cHBsZW1lbnRhcnkgZmxhZ3MgdG8gdGFrZSBwcmVjZWRlbmNlIG92ZXIgdXNlciBzdWJtaXR0ZWQKKyAgICBmbGFncy4KKyAgKiBBZGQgbmV3IC0tZHVtcCBhY3Rpb24gdG8gZHBrZy1idWlsZGZsYWdzIGFuZCBtYWtlIGl0IHRoZSBkZWZhdWx0IGFjdGlvbi4KKyAgICBDbG9zZXM6ICM2MDM0MzUKKyAgKiBkcGtnLW1lcmdlY2hhbmdlbG9ncyBub3cgY2hlY2tzIHRoZSByZXR1cm4gdmFsdWUgb2YgdGhlIGNsb3NlKCkgY2FsbC4KKyAgICBUaGFua3MgdG8gTmllbHMgVGh5a2llciA8bmllbHNAdGh5a2llci5uZXQ+IGZvciB0aGUgcGF0Y2guIENsb3NlczogIzYzMzUzOQorICAqIFNpbWlsYXIgY2hhbmdlcyB0byBkcGtnLXNobGliZGVwcyBhbmQgZHBrZy1nZW5jb250cm9sLCBhbHNvIGJ5IE5pZWxzLgorICAqIEZpeCB1cGRhdGUtYWx0ZXJuYXRpdmVzIHRvIG5vdCByZW1vdmUgYSByZWFsIGZpbGUgd2hlbiBkcm9wcGluZyBhCisgICAgc3ltbGluayBmb3IgYSBzbGF2ZSB0aGF0J3Mgbm90IHByb3ZpZGVkIGJ5IHRoZSBuZXcgY3VycmVudCBjaG9pY2UuCisgICAgQ2xvc2VzOiAjNjMzNjI3CisgICogSW1wcm92ZSBkcGtnLXNvdXJjZSdzIGVycm9yIG1lc3NhZ2UgY29tcGxhaW5pbmcgYWJvdXQgdGhlIGxhY2sKKyAgICBvZiB0aGUgdXBzdHJlYW0gdGFyYmFsbC4gQ2xvc2VzOiAjNjM0NTEwCisgICogQWRkIHNvbWUgY29tbW9uIG1ha2VmaWxlIHNuaXBwZXRzIGZvciB1c2UgaW4gcnVsZXMgZmlsZXMgaW4KKyAgICAvdXNyL3NoYXJlL2Rwa2cvOiBkZWZhdWx0Lm1rLCBhcmNoaXRlY3R1cmUubWssIGJ1aWxkZmxhZ3MubWssIHBrZy1pbmZvLm1rLAorICAgIHZlbmRvci5tayBDbG9zZXM6ICM2MDY4MzkKKyAgKiBGaXggdGhlIGRwa2ctZGl2ZXJ0IHRlc3Qtc3VpdGUgdG8gYWxzbyBza2lwIHRlc3QgdGhhdCB3b3VsZCBmYWlsIGlmIHJ1bgorICAgIHVuZGVyIHJvb3QuIENsb3NlczogIzYzNDk2MQorICAqIENoYW5nZSBtZXJnZSBjb25mbGljdCBzZXBhcmF0b3JzIGNyZWF0ZWQgYnkgZHBrZy1tZXJnZWNoYW5nZWxvZ3MgdG8gbWF0Y2gKKyAgICB0aGUgdXN1YWwgbm9ybSBvZiBiZWluZyBjb21wb3NlZCBvZiA3IGNoYXJhY3RlcnMuIExQOiAjODE1NzAwCisgICogV2l0aCBzb3VyY2UgZm9ybWF0IDIuMCBhbmQgMy4wIChxdWlsdCksIGRwa2ctc291cmNlIG5vdyBmYWlscyBieSBkZWZhdWx0CisgICAgd2hlbiB1cHN0cmVhbSBjaGFuZ2VzIGhhdmUgbm90IGJlZW4gcmVjb3JkZWQgaW4gYSBxdWlsdCBwYXRjaC4gVGhlIG5ldworICAgIC0tY29tbWl0IG9wZXJhdGlvbiBjYW4gYmUgdXNlZCB0byBwcm9wZXJseSByZWNvcmQgdGhlIGNoYW5nZXMgYmVmb3JlLWhhbmQuCisgICAgTFA6ICM3OTc4MzkKKyAgICBBbmQgaXQgZmFpbHMgYmVmb3JlIGluc3RhbGxpbmcgdGhlIGF1dG9tYXRpYyBwYXRjaCBpbiBkZWJpYW4vcGF0Y2hlcy8KKyAgICBDbG9zZXM6ICM2MTU4OTkKKyAgKiBkcGtnLWJ1aWxkZmxhZ3Mgbm93IHN1cHBvcnRzICItLWV4cG9ydD1jb25maWd1cmUiIHRvIG91dHB1dCBjb21waWxhdGlvbgorICAgIGZsYWdzIG9uIGEgc2luZ2xlIGxpbmUgd2l0aCBkb3VibGUgcXVvdGVzIGFzIGRlbGltaXRlciBvZiB0aGUgdmFyaW91cworICAgIHZhbHVlcy4gSXQgYWxzbyB1c2VzIERFQl88ZmxhZz5fTUFJTlRfPG9wPiB0byBsZXQgdGhlIG1haW50YWluZXIKKyAgICBleHRlbmQgdGhlIGJ1aWxkIGZsYWdzIHRvIHVzZS4gTGFzdCBidXQgbm90IGxlYXN0LCBpdCBjYW4gbm93IGFsc28gc3RyaXAKKyAgICBvcHRpb25zIGZyb20gdGhlIHJldHVybmVkIGJ1aWxkIGZsYWdzLgorICAqIEZpeCBwb3NzaWJsZSBzZWdmYXVsdCBvZiBkcGtnIGluIGZpbmRicmVha2N5Y2xlKCkuIExQOiAjNzMzNDE0CisgICogZHBrZy1zb3VyY2Ugbm93IHByb3Blcmx5IGNsZWFucyB1cCB0aGUgdGVtcG9yYXJ5IHRhcmJhbGwgZ2VuZXJhdGVkIGZvcgorICAgIG5hdGl2ZSBmb3JtYXRzIGluIGNhc2Ugb2YgdW5leHBlY3RlZCBpbnRlcnJ1cHRpb24uIENsb3NlczogIzYzMTQ5NAorICAqIEZpeCBzaW1wbGlmaWNhdGlvbiBsb2dpYyBvZiB1bmlvbiBkZXBlbmRlbmNpZXMuIENsb3NlczogIzYzNzU2NAorICAqIEZpeCBkcGtnJ3MgaGFuZGxpbmcgb2YgYSBoYXJkbGluayBwb2ludGluZyB0byBhIGNvbmZmaWxlLiBDbG9zZXM6ICM2MzgyOTEKKyAgKiBBZGQgZXhhbXBsZSBvZiBleHRlbmQtZGlmZi1pZ25vcmUncyB1c2FnZSBpbiBkcGtnLXNvdXJjZSgxKS4KKyAgICBDbG9zZXM6ICM2NDAxOTgKKyAgKiBkcGtnLWJ1aWxkZmxhZ3Mgbm93IHJldHVybnMgaGFyZGVuaW5nIGZsYWdzIGJ5IGRlZmF1bHQuIENsb3NlczogIzQ4OTc3MQorICAgIFRoZXkgY2FuIGJlIGluZGl2aWR1YWxseSBlbmFibGVkL2Rpc2FibGVkIHZpYSBERUJfQlVJTERfTUFJTlRfT1BUSU9OUywKKyAgICBzZWUgZHBrZy1idWlsZGZsYWdzKDEpLiBUaGFua3MgdG8gS2VlcyBDb29rIGZvciBoaXMgaGVscC4KKworICBbIEd1aWxsZW0gSm92ZXIgXQorICAqIEluc3RhbGwgZGViLXNyYy1jb250cm9sKDUpIG1hbiBwYWdlcyBpbiBkcGtnLWRldi4gQ2xvc2VzOiAjNjIwNTIwCisgICogQWRkIOKAmC5naXRtb2R1bGVz4oCZIHRvIHRoZSBkZWZhdWx0IGRwa2ctc291cmNlIGlnbm9yZSBsaXN0cy4gQ2xvc2VzOiAjNjIwNDkwCisgICogRG9jdW1lbnQgaW4gZHBrZy1xdWVyeSgxKSBtYW4gcGFnZSB0aGF0IG9uIC0tbGlzdGZpbGVzIGVhY2ggbGlzdCBvZgorICAgIGZpbGVzIHBlciBwYWNrYWdlIG5hbWUgaXMgc2VwYXJhdGVkIGJ5IGEgYmxhbmsgbGluZS4gU2FtZSBnb2VzIGZvcgorICAgIC0tc3RhdHVzIGFuZCAtLXByaW50LWF2YWlsLgorICAqIFVzZSBleGVjdnAoMykgdW5jb25kaXRpb25hbGx5IGluIGNvbW1hbmRfZXhlYygpLiBNYWtpbmcgdGhlIGNhbGwgYWx3YXlzCisgICAgZmFsbGJhY2sgdG8gdXNlIHRoZSBzeXN0ZW0gc2hlbGwgaW4gY2FzZSBvZiBlcnJvciwgc3VjaCBhcyB3aXRoIGVtcHR5CisgICAgbWFpbnRhaW5lciBzY3JpcHRzLiBUaGFua3MgdG8gSm9uYXRoYW4gTmllZGVyIDxqcm5pZWRlckBnbWFpbC5jb20+LgorICAgIENsb3NlczogIzYyMjA5NAorICAqIEltcHJvdmUgZGViLXNwbGl0KDUpIGZvcm1hdCBkZXNjcmlwdGlvbiBieSBzcGxpdHRpbmcgZGViaWFuLXNwbGl0CisgICAgbWVtYmVyIGNvbnRlbnRzIGludG8gYSBsaXN0LgorICAqIFN3aXRjaCB0byBkZWJoZWxwZXIgY29tcGF0aWJpbGl0eSBsZXZlbCA3LgorICAgIC0gVXNlIGRoX3ByZXAgaW5zdGVhZCBvZiBkZXByZWNhdGVkIOKAnGRoX2NsZWFuIC1r4oCdLgorICAqIEJ1bXAgU3RhbmRhcmRzLVZlcnNpb24gdG8gMy45LjIgKG5vIGNoYW5nZXMgbmVlZGVkKS4KKyAgKiBHZW5lcmF0ZSBmaWxlbmFtZXMgZm9sbG93aW5nIGN1cnJlbnQgY29udmVudGlvbnMgb24g4oCcZHBrZy1zcGxpdCAtLWpvaW7igJ0sCisgICAgYnkgaW5jbHVkaW5nIHRoZSBhcmNoaXRlY3R1cmUgaW4gdGhlIGRlYmlhbi1zcGxpdCBtZW1iZXIgb2YgYSBzcGxpdAorICAgIHBhY2thZ2UgYW5kIHVzaW5nIHVuZGVyc2NvcmVzIHRvIHNlcGFyYXRlIGZpbGVuYW1lIHBhcnRzLgorICAqIFN1cHBvcnQgY29uZmZpbGVzIHdpdGggc3BhY2VzIHdoZW4gZGlmZmluZyB0aGVtLiBDbG9zZXM6ICMxNDc1ODMKKyAgKiBBbGxvdyBpbnN0YWxsaW5nIHBhY2thZ2VzIHdpdGggYm9ndXMgdmVyc2lvbnMgd2l0aCBuZXcKKyAgICAtLWZvcmNlLWJhZC12ZXJzaW9uLgorICAqIERvIG5vdCBmYWlsIHdoZW4gdW5wYWNraW5nIGEgZGl2ZXJ0ZWQgaGFyZGxpbmsuIENsb3NlczogIzI0NTMyMgorICAgIEJhc2VkIG9uIGEgcGF0Y2ggYnkgQ2hyaXN0b3BoZXIgQmFpbmVzIDxjYmFpbmVzOEBnbWFpbC5jb20+LgorICAqIERvY3VtZW50IGluIGRwa2ctZGViKDEpIHRoYXQgLS1mc3lzLXRhcmZpbGUgd2lsbCBhbHdheXMgcHJvY2VzcyB0aGUKKyAgICBpbnB1dCBhcmNoaXZlIHNlcXVlbnRpYWxseS4gQ2xvc2VzOiAjNjE2NjA5CisgICogUmVtb3ZlIGxvbmcgbm9uLWZ1bmN0aW9uYWwgLS1uZXcgYW5kIC0tb2xkIGRwa2ctZGViIG9wdGlvbiBoYW5kbGluZworICAgIGZyb20gZHBrZyB3aGljaCB3ZXJlIGJlaW5nIHRyZWF0ZWQgYXMgZHBrZyBjb21tYW5kcy4KKyAgKiBSZW1vdmUgcmVmZXJlbmNlIHRvIC0tbm9jaGVjayBkcGtnLWRlYiBvcHRpb24gZnJvbSBkcGtnIG1hbiBwYWdlIGFzCisgICAgdGhlIGxhdHRlciBkb2VzIG5vdCBwYXNzIGl0IHRvIHRoZSBmb3JtZXIuCisgICogQ2xhcmlmeSB0aGUgY3VycmVudCBkcGtnIGJlaGF2aW91ciB3aGVuIHJ1bm5pbmcgdGhlIGRwa2ctZGViIGFuZAorICAgIGRwa2ctcXVlcnkgYmFjay1lbmRzLCBvZiBub3QgcGFzc2luZyB0aHJvdWdoIGJhY2stZW5kIHNwZWNpZmljIG9wdGlvbnMKKyAgICB3aGVuIHJ1bm5pbmcgdGhlbSBmcm9tIGRwa2cuIENsb3NlczogIzYxMDk0MAorICAqIFVzZSDigJx1bnNlbGVjdGVk4oCdIGFzIGFuIGFkamVjdGl2ZSBpbiBkcGtnIG91dHB1dCBtZXNzYWdlcyBpbnN0ZWFkIG9mCisgICAg4oCcZGVzZWxlY3RlZOKAnS4gQ2xvc2VzOiAjMjMxMDg5CisgICogQ2xhcmlmeSBleGl0IHN0YXR1cyBpbiBkcGtnLXNwbGl0IGFuZCBzdGFydC1zdG9wLWRhZW1vbiAtLWhlbHAgb3V0cHV0LgorICAqIENsYXJpZnkg4oCcRVhJVCBTVEFUVVPigJ0gc2VjdGlvbiBpbiBtYW4gcGFnZXMgYnkgdXNpbmcgYSB0YWJsZS4KKyAgKiBBZGQgYSAtLXN0YXR1cyBjb21tYW5kIHRvIHN0YXJ0LXN0b3AtZGFlbW9uIHJldHVybmluZyBMU0IgSW5pdCBTY3JpcHQKKyAgICBzdGF0dXMgYWN0aW9uIGV4aXQgY29kZXMuCisgICogQWRkIHN0YXJ0LXN0b3AtZGFlbW9uIHByb2Nlc3MgbmFtZSBrZXJuZWwgbGltaXRzIGZvciBTb2xhcmlzLCBOZXRCU0QsCisgICAgT3BlbkJTRCwgRnJlZUJTRCBhbmQgRGFyd2luLgorICAqIE9uIHBhY2thZ2UgcmVtb3ZhbCwga2VlcCBvbmx5IGRpcmVjdG9yaWVzIGFjdHVhbGx5IGNvbnRhaW5pbmcgY29uZmZpbGVzLAorICAgIGFuZCBub3QgZGlyZWN0b3JpZXMganVzdCBtYXRjaGluZyB0aGUgc3Vic3RyaW5nIGluIHRoZSBjb25mZmlsZSBvciB0aGUKKyAgICBkaXJlY3RvcnkgaXRzZWxmLiBUaGFua3MgdG8gT25kxZllaiBTdXLDvSA8b25kcmVqQGRlYmlhbi5vcmc+LgorICAqIE9uIHB1cmdlIGNvcnJlY3RseSByZW1vdmUgc3ltbGlua3MgYWN0aW5nIGFzIGRpcmVjdG9yaWVzLCB3aGVuIHRoZXkgYXJlCisgICAgbm90IGJlaW5nIHVzZWQgYnkgYW55IG90aGVyIHBhY2thZ2UncyBmaWxlcy4KKyAgKiBEbyBub3QgbG9zZSB0cmFjayBvZiBwYXJlbnQgZGlyZWN0b3JpZXMgb24gcmVtb3ZhbCBzbyB0aGF0IHRoZXkgY2FuCisgICAgYmUgcHJvcGVybHkgY2xlYW5lZCB1cCBvbiBwdXJnZSBpZiBub3QgdXNlZCBieSBhbnkgb3RoZXIgcGFja2FnZS4KKyAgICBCYXNlZCBvbiBhIHBhdGNoIGJ5IE9uZMWZZWogU3Vyw70gPG9uZHJlakBkZWJpYW4ub3JnPi4gQ2xvc2VzOiAjNDU0Njk0CisgICogQWRkIOKAmC5oZ3NpZ3PigJkgdG8gdGhlIGRlZmF1bHQgZHBrZy1zb3VyY2UgaWdub3JlIGxpc3RzLgorICAgIEJhc2VkIG9uIGEgcGF0Y2ggYnkgSmFrdWIgV2lsayA8andpbGtAZGViaWFuLm9yZz4uIENsb3NlczogIzYyNzQ2MgorICAqIERvIG5vdCBhbGxvdyBibGFuayBsaW5lcyBpbiBmaWVsZCB2YWx1ZXMuIENsb3NlczogIzMwODA4MgorICAqIERvIG5vdCB3YXJuIG9uIG1pc3NpbmcgYXJjaGl0ZWN0dXJlIG9uIHBhY2thZ2VzIGluIGNvbmZpZy1maWxlcyBzdGF0ZSwKKyAgICBidXQgdGhlbiBtYWtlIHN1cmUgdGhlIGFyY2hpdGVjdHVyZSBmaWVsZCBpcyB1c2FibGUuIENsb3NlczogIzYwNDI0MQorICAqIFJ1biBkdSB3aXRoIC0tYXBwYXJlbnQtc2l6ZSB3aGVuIGdlbmVyYXRpbmcgdGhlIEluc3RhbGxlZC1TaXplIGZpZWxkIGluCisgICAgZHBrZy1nZW5jb250cm9sIHRvIGdldCBjb25zaXN0ZW50IHJlc3VsdHMgaW5kZXBlbmRlbnQgb2YgYnVpbGQgc3lzdGVtLgorICAgIFRoYW5rcyB0byBMdWRvdmljIEJyZW50YSA8bHVkb3ZpY0BsdWRvdmljLWJyZW50YS5vcmc+LiBDbG9zZXM6ICM2MzA1MzMKKyAgKiBEbyBub3QgZmFpbCB0byB1bnBhY2sgc2hhcmVkIGRpcmVjdG9yaWVzIG1pc3Npbmcgb24gdGhlIGZpbGUgc3lzdGVtCisgICAgZnJvbSBwYWNrYWdlcyBiZWluZyByZXBsYWNlZCBieSBvdGhlciBwYWNrYWdlcy4gQ2xvc2VzOiAjNjMxODA4CisgICogRG8gbm90IHJlcXVpcmUgcHJvZ3JhbXMgdG8gZGVmaW5lIHRoaXNuYW1lLCBwcm92aWRlIHR3byBuZXcgZnVuY3Rpb25zCisgICAgdG8gaGFuZGxlIHRoZSBwcm9ncmFtIG5hbWUgKGRwa2dfc2V0X3Byb2duYW1lIGFuZCBkcGtnX2dldF9wcm9nbmFtZSkuCisgICAgQ2xvc2VzOiAjNjMxNzU3CisgICogTWFuIHBhZ2VzIGNsZWFudXA6CisgICAgLSBSZW5hbWUg4oCcVVNBR0XigJ0gZHNlbGVjdCgxKSBzZWN0aW9uIHRvIOKAnEFDVElPTlPigJ0gYW5kIGNsYXJpZnkgdGhleSBjYW4KKyAgICAgIGJlIHBlcmZvcm1lZCBpbnRlcmFjdGl2ZWx5IG9yIGZyb20gY29tbWFuZCBsaW5lLgorICAgIC0gQWRkIG1pc3NpbmcgYnVpbHQtaW4gbWV0aG9kcyB0byBkc2VsZWN0KDEpLgorICAgIC0gQWRkIG1pc3NpbmcgZXNjYXBpbmcgdG8gZmllbGQgZGFzaGVzIGluIGRlYi1jb250cm9sKDUpLgorICAgIC0gVXNlIGRhc2hlcyBpbnN0ZWFkIG9mIHVuZGVyc2NvcmVzIGZvciB2YXJpYWJsZSB0ZXh0LgorICAgIC0gQ2xhcmlmeSB0aGF0IHNldmVyYWwgZnJvbnQtZW5kIGZpZWxkcyBhcmUgbm90IGRzZWxlY3Qgc3BlY2lmaWMgaW4KKyAgICAgIGRwa2ctcXVlcnkoMSkuCisgICAgLSBVc2UgW29wdGlvbi4uLl0gaW5zdGVhZCBvZiBbb3B0aW9uc10gYW5kIGZyaWVuZHMuCisgICAgLSBVc2UgaXRhbGljcyBvciBib2xkIGluc3RlYWQgb2Ygc3Vycm91bmRpbmcgdGhlIHRleHQgd2l0aCA8Pi4KKyAgICAtIENvcnJlY3RseSBmb3JtYXQgdGV4dCB3aXRoIGJvbGQgYW5kIGl0YWxpY3MuCisgICAgLSBVc2UgbWludXMgc2lnbnMgYW5kIGh5cGhlbnMgY29uc2lzdGVudGx5IGluIG1hbiBwYWdlcy4KKyAgICAtIEZpeCByZWZlcmVuY2UgdG8gL2V0Yy9kcGtnL2RzZWxlY3QuY2ZnLmQgaW5zdGVhZCBvZiBkcGtnLmNmZy5kIGluCisgICAgICBkc2VsZWN0KDEpLgorICAgIC0gQWRkIG1pc3Npbmcgb3B0aW9uYWwgZ3JvdXB8Z2lkIC0tY2h1aWQgYXJndW1lbnQgaW4gc3RhcnQtc3RvcC1kYWVtb24oOCkuCisgICogUmVmZXIgdG8gU291cmNlcyBhbmQgUGFja2FnZXMgZmlsZXMgYXMgcGFydCBvZiBhIHJlcG9zaXRvcnkgaW5zdGVhZCBvZgorICAgIGFzIGJlaW5nIG9mIGV4Y2x1c2l2ZSB1c2Ugb3Igb3duZWQgYnkgQVBULCB3aGljaCBoYXMgbmV2ZXIgYmVlbiB0aGUgY2FzZS4KKyAgKiBVbmlmeSBzb21ld2hhdCBkcGtnLW1haW50c2NyaXB0LWhlbHBlciAtLWhlbHAgb3V0cHV0IHdpdGggb3RoZXIgY29tbWFuZHMuCisgICogQWRkIGJ1aWxkLWluZGVwIGFuZCBidWlsZC1hcmNoIHRhcmdldHMgYXMgYWxpYXNlcyBmb3IgYnVpbGQgaW4KKyAgICBkZWJpYW4vcnVsZXMuCisgICogVXNlIHRoZSBwZXJsIGludGVycHJldGVyIGZvdW5kIGJ5IGNvbmZpZ3VyZSB0byBjYWxsIGRwa2ctYXJjaGl0ZWN0dXJlLnBsCisgICAgaW4gdGhlIG00IERQS0dfQVJDSElURUNUVVJFIG1hY3JvLgorICAqIEFkZCBuZXcgLS12ZXJib3NlIG9wdGlvbiB0byBkcGtnLWRlYiBhbmQgY2hhbmdlIC0tZXh0cmFjdCB0byBob25vdXIgaXQuCisgICAgQ2xvc2VzOiAjMjkzMjgwCisgICogQWRkIG5ldyAtLXJhdy1leHRyYWN0IG9wdGlvbiB0byBkcGtnLWRlYiBjb21iaW5pbmcgLS1jb250cm9sIGFuZAorICAgIC0tZXh0cmFjdC4gQ2xvc2VzOiAjNTUyMTIzCisgICogRGVmZXIgaGFyZGxpbmsgcmVuYW1lcyBzbyB0aGF0IHRoZXJlJ3MgbmV2ZXIgYSBwb2ludCB3ZXJlIHRoZSBuZXcKKyAgICBmaWxlIGNvbnRlbnRzIGFyZSBhY2Nlc3NpYmxlIGZyb20gdGhlIGZpbmFsIHBhdGggYmVmb3JlIHRoZXkgaGF2ZQorICAgIGJlZW4gZnN5bmMoKWVkIGFuZCBjYW5ub3QgYmUgZXhlY3V0ZWQgY2F1c2luZyBFVFhUQlNZIHdoZW4gdHJ5aW5nCisgICAgdG8gb3BlbiB0aGUgdG8gYmUgaW5zdGFsbGVkIHBhdGhzIGZvciB3cml0aW5nLgorICAgIFRoYW5rcyB0byBKb25hdGhhbiBOaWVkZXIgPGpybmllZGVyQGdtYWlsLmNvbT4uIENsb3NlczogIzYzNTY4MworICAqIENsYXJpZnkgdGhlIGRlZmF1bHQgZHBrZy1kZWIgY29tcHJlc3Npb24tbGV2ZWxzIG9uIHRoZSBtYW4gcGFnZS4KKyAgKiBDbGFyaWZ5IGRwa2cgLS11cGRhdGUtYXZhaWwgdXNhZ2UgZXJyb3IgbWVzc2FnZS4gQ2xvc2VzOiAjNjI4MDU1CisgICogQ2hhbmdlIERwa2c6OkNvbXByZXNzaW9uIGRlZmF1bHQgdmFsdWVzIGRlcGVuZGluZyBvbiB0aGUgY29tcHJlc3NvcgorICAgIHVzZWQsIGFuZCBhcyBzdWNoIGRwa2ctc291cmNlIGluaGVyaXRzIHRoaXMgZnVuY3Rpb25hbGl0eS4KKyAgICBQcm9tcHRlZCBieSBUaW1vIEp1aGFuaSBMaW5kZm9ycyA8dGltby5saW5kZm9yc0Bpa2kuZmk+LgorICAqIFByaW50IGFuIGFjdHVhbCBlcnJvciBvciB3YXJuaW5nIG1lc3NhZ2UgaW5zdGVhZCBvZiBhc3NlcnQoKWluZyBvbgorICAgIHJlYWRsaW5rKCkvc3RhdCgpIHNpemUgZGlzY3JlcGFuY2llcy4gQ2xvc2VzOiAjNjM5MjI5CisgICogVXBkYXRlIGFsdGVybmF0aXZlIGxpbmtzIG9ubHkgaWYgdGhleSBjaGFuZ2UuIFRoaXMgYWxsb3dzIGZvciBhCisgICAgcmVhZC1vbmx5IGZpbGUgc3lzdGVtIGFuZCBhIHdyaXRhYmxlIGRhdGFiYXNlLiBDbG9zZXM6ICM2MzY3MDAKKyAgICBCYXNlZCBvbiBhIHBhdGNoIGJ5IFNhbHZhdG9yZSBCb25hY2NvcnNvIDxjYXJuaWxAZGViaWFuLm9yZz4uCisgICogRml4IGRvdWJsZSDigJxlcnJvcjrigJ0gc3RyaW5nIGluIGRwa2cgbWlzc2luZyBQQVRIIGVycm9yIG91dHB1dC4KKyAgICBDbG9zZXM6ICM2Mzk5OTcKKyAgKiBEbyBub3Qgd2FybiBvbiBzdHJhbmdlIHRpbWVzdGFtcHMgd2hlbiB1bnBhY2tpbmcgd2l0aCBkcGtnLWRlYi4KKyAgICBDbG9zZXM6ICM2NDAyOTgKKyAgKiBSZWR1Y2UgZHBrZy10cmlnZ2VyIGJpbmFyeSBzaXplIGJ5IHJlZmFjdG9yaW5nIGxpYmRwa2cgbW9kdWxlcyBzbyB0aGF0CisgICAgaXQgZG9lcyBub3QgZW5kIHVwIHB1bGxpbmcgdHJpZ2xpYi4KKyAgKiBSZWR1Y2UgZHBrZy1kZWIgYmluYXJ5IHNpemUgYnkgcmVmZWN0b3JpbmcgbGliZHBrZyBtb2R1bGVzIHNvIHRoYXQgaXQKKyAgICBkb2VzIG5vdCBlbmQgdXAgcHVsbGluZyB0cmlnbGliLgorICAqIERvIG5vdCBmYWlsIG9uIC0tY29tcGFyZS12ZXJzaW9uIHdoZW4gZ2VuZXJhdGluZyBwYXJzZSB3YXJuaW5ncy4KKyAgICBFeGlzdGluZyBwYWNrYWdlcyB3aXRoIGludmFsaWQgdmVyc2lvbnMgc2hvdWxkIG5vdCBmYWlsIG9uIHRoZWlyCisgICAgbWFpbnRhaW5lciBzY3JpcHRzIGR1ZSB0byB0aGF0LgorICAqIFVzZSB0aGUgdXNlciBuYW1lIChpbnN0ZWFkIG9mIHRoZSB1c2VyIGlkKSB3aGVuIHNldHRpbmcgdGhlIHN1cHBsZW1lbnRhcnkKKyAgICBncm91cHMgaW4gc3RhcnQtc3RvcC1kYWVtb24uIENsb3NlczogIzY0MTgzNAorICAqIFVzZSAtLXNyY2RpciBhbmQgLS1kZXN0ZGlyIHBvNGEgb3B0aW9ucywgYW5kIGJ1bXAgQnVpbGQtRGVwZW5kcyB2ZXJzaW9uCisgICAgdG8gMC4zNi40LgorCisgIFsgVXBkYXRlZCBkcGtnIHRyYW5zbGF0aW9ucyBdCisgICogR2VybWFuIChTdmVuIEpvYWNoaW0pLiBDbG9zZXM6ICM2MjAzMTIKKyAgKiBTd2VkaXNoIChQZXRlciBLcmVmdGluZykuCisgICogRnJlbmNoIChDaHJpc3RpYW4gUGVycmllcikuCisKKyAgWyBVcGRhdGVkIG1hbiBwYWdlIHRyYW5zbGF0aW9ucyBdCisgICogRnJlbmNoIChDaHJpc3RpYW4gUGVycmllcikuCisgICogR2VybWFuIChIZWxnZSBLcmV1dHptYW5uKSBpbmNsdWRpbmcgaW1wcm92ZW1lbnQgYnkgIkZsbyIuCisgICogU3dlZGlzaCAoUGV0ZXIgS3JlZnRpbmcpLgorCisgIFsgVXBkYXRlZCBzY3JpcHRzIHRyYW5zbGF0aW9ucyBdCisgICogRnJlbmNoIChDaHJpc3RpYW4gUGVycmllciwgU3lsdmVzdHJlIExlZHJ1KS4gQ2xvc2VzOiAjNjM3MDk2CisgICogR2VybWFuIChIZWxnZSBLcmV1dHptYW5uKS4KKyAgKiBTd2VkaXNoIChQZXRlciBLcmVmdGluZykuCisKKyAtLSBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+ICBGcmksIDIzIFNlcCAyMDExIDA2OjAwOjExICswMjAwCisKK2Rwa2cgKDEuMTYuMC4zKSB1bnN0YWJsZTsgdXJnZW5jeT1tZWRpdW0KKworICAqIEFsbG93IGFnYWluIFByaW9yaXR5IGZpZWxkIHZhbHVlcyBub3Qga25vd24gdG8gZHBrZy4gUmVncmVzc2lvbgorICAgIGludHJvZHVjZWQgaW4gMS4xNi4wLgorCisgLS0gR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPiAgV2VkLCAwNCBNYXkgMjAxMSAxMDowMTozMCArMDIwMAorCitkcGtnICgxLjE2LjAuMikgdW5zdGFibGU7IHVyZ2VuY3k9aGlnaAorCisgICogRml4IGRwa2ctc3BsaXQgLS1hdXRvIHRvIG5vdCBmYWlsIHdoZW4gb3BlbmluZyB0aGUgbmV3IGRlcG90IGZpbGUuCisgICogRml4IGRwa2ctc3BsaXQgdG8gY29ycmVjdGx5IHNldCB0aGUgbGFzdCBwYXJ0IHNwbGl0IHNpemUuCisgICogRml4IGJ1aWxkIGZhaWx1cmUgb24gREVCX0JVSUxEX09QVElPTlM9bm9vcHQgZHVlIHRvIGEgbWlzc2luZyA8bG9jYWxlLmg+CisgICAgaW5jbHVkZSBpbiBnZXR0ZXh0LmggbmVlZGVkIGJ5IHRoZSBnZXR0ZXh0IGNvbnRleHQgZnVuY3Rpb25zLgorCisgLS0gR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPiAgU2F0LCAxNiBBcHIgMjAxMSAwMDoxNDoxNSArMDIwMAorCitkcGtnICgxLjE2LjAuMSkgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgWyBSYXBoYcOrbCBIZXJ0em9nIF0KKyAgKiBGaXggcmVncmVzc2lvbiBhZmZlY3RpbmcgZHBrZyAtUi4gQ2xvc2VzOiAjNjIwNjM2CisgICogRG9uJ3QgZmFpbCBkdXJpbmcgdW5wYWNrIGlmIHRoZSBzeXN0ZW0gZG9lc24ndCBzdXBwb3J0IGNoYW5naW5nIHRpbWVzdGFtcHMKKyAgICBvZiBzeW1saW5rcy4gQ2xvc2VzOiAjNjIwNjc5CisKKyAtLSBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+ICBUdWUsIDA1IEFwciAyMDExIDA3OjI4OjIwICswMjAwCisKK2Rwa2cgKDEuMTYuMCkgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgWyBHdWlsbGVtIEpvdmVyIF0KKyAgKiBVc2UgRFBLR19NQUlOVFNDUklQVF9QQUNLQUdFIGVudmlyb25tZW50IHZhcmlhYmxlIGFzIHBhY2thZ2UgbmFtZSBvbgorICAgIGRwa2ctZGl2ZXJ0IHdoZW4gbm8gLS1wYWNrYWdlIG9yIC0tbG9jYWwgb3B0aW9ucyBoYXZlIGJlZW4gc3BlY2lmaWVkLgorICAqIERvIG5vdCBhbGxvdyB2ZXJzaW9ucyBzdGFydGluZyB3aXRoIG5vbi1kaWdpdCB3aGVuIGRvaW5nIHN0cmljdCBwYXJzaW5nLAorICAgIHdhcm4gb3RoZXJ3aXNlLgorICAqIFVwZGF0ZSBkcGtnKDEpIHRvIG5vdGUgdGhhdCAtLXN0YXR1cy1mZCBvdXRwdXQgZG9lcyBub3QgY29udGFpbiBuZXdsaW5lcworICAgIGluIGVycm9yIG1lc3NhZ2VzIGFueW1vcmUgKHRoaXMgd2FzIGZpeGVkIGluIDEuMTUuMCkuCisgICogQWRkIGEgbmV3IC0tc3RhdHVzLWxvZ2dlciBvcHRpb24gdG8gZHBrZywgc2ltaWxhciB0byAtLXN0YXR1cy1mZCBidXQKKyAgICBpbnN0ZWFkIGludm9rZSB0aGUgY29tbWFuZCBvdXJzZWx2ZXMgYW5kIGZlZWQgdGhlIHN0YXR1cyBpbmZvcm1hdGlvbgorICAgIHRvIGl0cyBzdGFuZGFyZCBpbnB1dC4gU3VnZ2VzdGVkIGJ5IFJhcGhhw6tsIEhlcnR6b2cuCisgICogQWRkIG1pc3Npbmcgc3BhY2UgaW4gdXBkYXRlLWFsdGVybmF0aXZlIC0tc2V0LXNlbGVjdGlvbnMgb3V0cHV0LgorICAqIEFkZCBtaXNzaW5nIG9wdGlvbnMgdG8gdXBkYXRlLWFsdGVybmF0aXZlIC0taGVscCBvdXRwdXQuCisgICogQ291bnQg4oCcY29uZmZpbGUgbmFtZSBpcyBkdXBsaWNhdGVk4oCdIGZvciBkcGtnLWRlYiB3YXJuaW5nIGNvdW50IHN1bW1hcnkuCisgICogSW1wcm92ZSBhbmQgY2xhcmlmeSBzdHJpbmdzIGZvciB0cmFuc2xhdGlvbi4gQ2xvc2VzOiAjNjA0OTE0CisgICogUHJlZml4IGFsbCBmYXRhbCBlcnJvciBtZXNzYWdlcyB3aXRoIOKAnGVycm9yOiDigJ0uCisgICogRG8gbm90IGNoZWNrIHByZXNlbmNlIG9mIHVwZGF0ZS1yYy5kIGluIHRoZSBQQVRIIGluIGRwa2csIGFzIGl0J3Mgbm90CisgICAgYSBwcm9ncmFtIG5lZWRlZCBmb3IgZHBrZyBjb3JyZWN0IG9wZXJhdGlvbi4KKyAgKiBGaXggZHBrZyAtR0VPIG9wdGlvbnMgb24gbXVsdGlwbGUgdmVyc2lvbnMgb2YgdGhlIHNhbWUgcGFja2FnZXMuCisgICAgQ2xvc2VzOiAjMzExNDEKKyAgKiBQcm9wYWdhdGUgLS1hZG1pbmRpciB0byBwcm9ncmFtcyBydW4gZnJvbSBtYWludGFpbmVyIHNjcml0cHRzLgorICAgIENsb3NlczogIzk3MDc2CisgICogRG8gbm90IGZhaWwgd2hlbiB0cnlpbmcgdG8gcmVtb3ZlIHRoZSByb290IGRpcmVjdG9yeS4gVGhpcyB3aWxsIG9ubHkKKyAgICBoYXBwZW4gZWl0aGVyIG9uIGRpc3RyaWJ1dGlvbnMgd2hlcmUgZHBrZyBpcyBhIGZvcmVpZ24gcGFja2FnZSBtYW5hZ2VyLAorICAgIG9yIG9uIGFydGlmaWNpYWwgZHBrZyBkYXRhYmFzZXMuCisgICogQWx3YXlzIHdhcm4gd2hlbiBwYXJzaW5nIGFueSBwYWNrYWdlIGNvbnRyb2wgZGF0YSB3aGljaCBkb2VzIG5vdCBoYXZlCisgICAgYW4gQXJjaGl0ZWN0dXJlIGZpZWxkIGV4Y2VwdCBmb3Igc3RhdHVzIGFuZCBzdGF0dXMgbG9nIGZpbGVzIHdoZW4KKyAgICBwYWNrYWdlcyBhcmUgbm90LWluc3RhbGxlZCBvciBoYWxmLWluc3RhbGxlZC4KKyAgKiBCeSBkZWZhdWx0IHJlamVjdCBpbnN0YWxsaW5nIHBhY2thZ2VzIHcvbyBhbiBBcmNoaXRlY3R1cmUgZmllbGQuIFRoZXkKKyAgICBub3cgbmVlZCAtLWZvcmNlLWFyY2hpdGVjdHVyZSwgZHBrZyB3aWxsIHN0aWxsIHdhcm4gYWJvdXQgdGhlbSB0aG91Z2guCisgICogRml4IGJ1aWxkIGZhaWx1cmUgd2hlbiBwYXNzaW5nIC0tZGlzYWJsZS1ubHMgdG8gY29uZmlndXJlLgorICAqIERvIG5vdCBzZWdmYXVsdCBvbiDigJxkcGtnIC1pIC0tbm8tYWN04oCdLgorICAqIEFkZCBtaXNzaW5nIHNlbWljb2xvbiB0byB0aGUgdnNucHJpbnRmKCkgY29tcGF0IGRlY2xhcmF0aW9uLgorICAgIFRoYW5rcyB0byBSb2JlcnQgTWlsbGFuLiBDbG9zZXM6ICM2MTIyMDMKKyAgKiBPbiBpbnN0YWxsIGZvciBVYnVudHUgYWRqdXN0IHRoZSBpMzg2IEdOVSBjcHUgbmFtZSBpbiBjcHV0YWJsZS4KKyAgICBUaGFua3MgdG8gQ29saW4gV2F0c29uIDxjandhdHNvbkB1YnVudHUuY29tPi4gQ2xvc2VzOiAjNjExNzQxCisgICogU3luYyB0aGUgaW5mbyBkYXRhYmFzZSBkaXJlY3Rvcnkgb24gdW5wYWNrIGluc3RlYWQgb2YgdGhlIHRlbXBvcmFyeQorICAgIGNvbnRyb2wgaW5mb3JtYXRpb24gZGlyZWN0b3J5LCBhbmQgcHJpbnQgdGhlIGNvcnJlY3QgcGF0aG5hbWUgb24gZXJyb3IKKyAgICBpbnN0ZWFkIG9mIHRoZSBsYXN0IGZpbGUgYWN0ZWQgb24gdGhhdCBkaXJlY3RvcnkuCisgICogRG9jdW1lbnQgaW4gZHBrZy1xdWVyeSAtLWhlbHAgb3V0cHV0IGFuZCBtYW4gcGFnZSB0aGF0IC0tbGlzdCBhbmQgLS1zaG93CisgICAgYXJndW1lbnRzIGFyZSBvcHRpb25hbC4KKyAgKiBEbyBub3QgcmVhZCBhbmQgd3JpdGUgdGhlIGF2YWlsYWJsZSBmaWxlIHVubmVjZXNzYXJpbHkuCisgICAgVGhhbmtzIHRvIE1pY2hlbCBMZXNwaW5hc3NlIDx3YWxrZW5Aem95Lm9yZz4uIENsb3NlczogIzM5NzEyMQorICAqIEZpeCB0eXBvIGluIMKrZHBrZy1uYW1lIC0tb3ZlcndyaXRlwrsgYXJndW1lbnQgcGFyc2luZyBzbyB0aGF0IGl0IGFjdHVhbGx5CisgICAgd29ya3MgYXQgYWxsLiBUaGFua3MgdG8gSXZhbiBHYWdpcyA8aWdhZ2lzQGdtYWlsLmNvbT4uIExQOiAjNzI4NzA4CisgICogQWRkIGFybWhmIHN1cHBvcnQgdG8gb3N0YWJsZSBhbmQgdHJpcGxldHRhYmxlLiBDbG9zZXM6ICM1OTQxNzkKKyAgKiBTZXQgdGhlIG1vZGlmaWNhdGlvbiB0aW1lIGZvciB1bnBhY2tlZCBzeW1saW5rcyBvbiBzdXBwb3J0ZWQgc3lzdGVtcy4KKyAgKiBGaXggdW5kZWZpbmVkIHZhbHVlIHVzYWdlIGluIGRwa2ctZ2VuY2hhbmdlcyB3aGVuIGFkZGluZyBmaWxlcyB3L28gYQorICAgIG1hdGNoaW5nIGFyY2hpdGVjdHVyZSwgYmVjYXVzZSB0aGV5IGFyZSBub3QgcHJlc2VudCBpbiBkZWJpYW4vY29udHJvbCwKKyAgICB0aGlzIGlzIG1vc3QgY29tbW9ubHkgdGhlIGNhc2UgZHVlIHRvIGRwa2ctZGlzdGFkZGZpbGUuCisgICogVGVybWluYXRlIGltbWVkaWF0ZWx5IG9uIGRwa2ctZGl2ZXJ0IHJlbmFtZSBlcnJvcnMgaW5zdGVhZCBvZiBwcm9wYWdhdGluZworICAgIHVwIHRoZSBlcnJvciBjb2RlcywgdGhpcyBpbXByb3ZlcyBlcnJvciByZXBvcnRpbmcgYW5kIGF2b2lkcyB0cmlnZ2VyaW5nCisgICAgbGVhayBkZXRlY3RvcnMuIENsb3NlczogIzYyMDM4MAorICAqIFdoZW4gbW92aW5nIGEgZGl2ZXJ0ZWQgZmlsZSBhY3Jvc3MgZmlsZXN5c3RlbXMgaW4gZHBrZy1kaXZlcnQsIHJlbW92ZQorICAgIHRoZSBzb3VyY2UgZmlsZS4KKyAgKiBGaXggbGFyZ2UgZmlsZSBzdXBwb3J0IGZvciAuZGViIGFuZCBzcGxpdCAuZGViIGluIGRwa2ctZGViLCBkcGtnLXNwbGl0CisgICAgYW5kIGRwa2cgb24gMzItYml0IGFyY2hpdGVjdHVyZXMuCisKKyAgWyBSYXBoYcOrbCBIZXJ0em9nIF0KKyAgKiBGYWlsIHByb3Blcmx5IHdoZW4gZGViaWFuL3NvdXJjZS9mb3JtYXQgaXMgZW1wdHkuIENsb3NlczogIzYwMDg1NAorICAqIEFkZCBuZXcgZGViLXNyYy1jb250cm9sKDUpIG1hbnVhbCBwYWdlIGRvY3VtZW50aW5nIHRoZSBkZWJpYW4vY29udHJvbAorICAgIGZpbGUgY29udGFpbmVkIGluIHNvdXJjZSBwYWNrYWdlcy4KKyAgICAtIGl0IGRvY3VtZW50cyB0aGUgWFtTQkNdLSBwcmVmaXguIENsb3NlczogIzQ3NjMzNQorICAgIC0gaXQgZG9jdW1lbnRzIHRoZSBWQ1MtKiBmaWVsZHMgdG9vLiBDbG9zZXM6ICM0ODMxMTkKKyAgICBUaGFua3MgdG8gT3hhbiB2YW4gTGVldXdlbiA8b3hhbkBveGFudmFubGVldXdlbi5ubD4gd2hvIHdyb3RlIGl0CisgICAgYXMgcGFydCBvZiB0aGUgR29vZ2xlIENvZGUgSW4gcHJvZ3JhbS4KKyAgKiBFbmhhbmNlIGRwa2ctc2hsaWJkZXBzIHRvIG5vdCBmYWlsIGltbWVkaWF0ZWx5IHdoZW4gYSBsaWJyYXJ5IGlzIG5vdCBmb3VuZC4KKyAgICBJbnN0ZWFkIGNvbnRpbnVlIGFuZCBmYWlsIGFmdGVyIGFsbCBwcm9ibGVtcyBoYXZlIGJlZW4gcmVwb3J0ZWQuIFRoYW5rcworICAgIHRvIENocmlzIEJhaW5lcyA8Y2JhaW5lczhAZ21haWwuY29tPiBmb3IgdGhlIHBhdGNoLiBDbG9zZXM6ICM1OTY4NDEKKyAgKiBGaXggZHBrZy1zb3VyY2UgdG8gbm90IGxpc3QgRGViaWFuIHBhY2thZ2luZyBmaWxlcyBhcyBtb2RpZmllZAorICAgIHVwc3RyZWFtIGZpbGVzIGluIEZvcm1hdCAiMS4wIiB3aGVuIHVucGFja2luZyB0byBhIG5vbi1zdGFuZGFyZAorICAgIGRpcmVjdG9yeS4KKyAgKiBBcHBseSBwYXRjaCBmcm9tIENvbGluIFdhdHNvbiB0byBsZXQgZHBrZy1idWlsZGZsYWdzIHJldHVybiAtTzMKKyAgICBpbnN0ZWFkIG9mIC1PMiB3aGVuIGJ1aWxkaW5nIHBwYzY0IHBhY2thZ2VzIG9uIFVidW50dS4gQ2xvc2VzOiAjNjEyNDcyCisgICogQWRkIG5ldyBmdW5jdGlvbiBnZXRfY29udHJvbF9wYXRoKCkgdG8gRHBrZzo6UGF0aCwgaXQgd3JhcHMgZHBrZy1xdWVyeQorICAgIC0tY29udHJvbC1wYXRoLgorICAqIFVwZGF0ZSBkcGtnLXNobGliZGVwcyB0byBiZSBtdWx0aWFyY2gtcmVhZHk6CisgICAgLSB1c2UgZ2V0X2NvbnRyb2xfcGF0aCgpIHRvIGZpbmQgc3ltYm9scy9zaGxpYnMgZmlsZXMKKyAgICAtIHBhcnNlIGNvcnJlY3RseSB0aGUgb3V0cHV0IG9mIGRwa2cgLS1zZWFyY2gKKyAgKiBTbWFsbCBmaXggdG8gc3VwcG9ydCBmaWxlcyA+MkdCIGluIC5kZWIgb24gNjQtYml0IHN5c3RlbXMuIENsb3NlczogIzYxNjUwMgorICAgIFRoYW5rcyB0byBNYXJ0aW4gRG9yZXkgPG1kb3JleUBibHVlYXJjLmNvbT4gZm9yIHRoZSBwYXRjaC4KKyAgKiBkcGtnLXNvdXJjZSBub3cga2VlcHMgdGhlIGZpbGUgb3JkZXJpbmcgaW4gdGhlIGF1dG9nZW5lcmF0ZWQgcGF0Y2ggd2hlbgorICAgIHJlZ2VuZXJhdGluZyBpdC4gQ2xvc2VzOiAjNjA2MDgwCisgICAgVGhhbmtzIHRvIENvbGluIFdhdHNvbiBmb3IgdGhlIHBhdGNoLgorICAqIGRwa2ctc291cmNlIG5vdyB1c2VzIGEgdGltZXN0YW1wIHJldHJpZXZlZCBmcm9tIHRoZSBmaWxlc3lzdGVtIHdoZW4KKyAgICByZXNldHRpbmcgdGhlIHRpbWVzdGFtcCBvZiBwYXRjaGVkIGZpbGVzIHNvIHRoYXQgYSB0aW1lIHNrZXcgd2hlbiB1c2luZworICAgIE5GUyBkb2Vzbid0IGludHJvZHVjZSBhbnkgaW5jb25zaXN0ZW5jeS4gQ2xvc2VzOiAjNjEzMDIzCisgICAgVGhhbmtzIHRvIEpvbmF0aGFuIE5pZWRlciA8anJuaWVkZXJAZ21haWwuY29tPiBmb3IgdGhlIHBhdGNoIGFuZCB0aGUKKyAgICBkaWFnbm9zaXMuCisgICogZHBrZy1zb3VyY2Ugd2lsbCBub3cgcmVtb3ZlIHF1aWx0J3MgLnBjIGRpcmVjdG9yeSB3aGVuIC0tdW5hcHBseS1wYXRjaGVzCisgICAgaXMgaW4gdXNlLiBDbG9zZXM6ICM1OTE4NTgKKyAgKiBkcGtnLXNvdXJjZSBpcyBub3cgYSBiaXQgbGVzcyBzdHJpY3Qgd2hlbiBwYXJzaW5nIHBhdGNoZXM6CisgICAgLSBpdCBhY2NlcHRzIHNlZWluZyB0aGUgc2FtZSBmaWxlIHR3aWNlOyBDbG9zZXM6ICM2MDg4MjkKKyAgICAtIGl0IGRvZXNuJ3QgbWF0Y2ggb24gdGhlIEVuZ2xpc2ggdGV4dCAiTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZSIgYXMgaXQKKyAgICAgIG1pZ2h0IGJlIHRyYW5zbGF0ZWQgaW4gc29tZSBjYXNlcy4gQ2xvc2VzOiAjNjEyNDY1CisgICogSW1wcm92ZSBwYXJzZXIgaW4gRHBrZzo6Q29udHJvbDo6SGFzaCB0byBub3QgcmVxdWlyZSBhbiBlbXB0eSBsaW5lCisgICAgYmVmb3JlIHRoZSBQR1Agc2lnbmF0dXJlLiBDbG9zZXM6ICM2MTc5MjMKKyAgICBUaGFua3MgdG8gUm9nZXIgTGVpZ2ggZm9yIHRoZSBpbml0aWFsIHBhdGNoLgorICAqIEZpeCBhIHJlZ3Jlc3Npb24gaW4gZHBrZy1kaXZlcnQgd2hlcmUgdXNpbmcgLS1yZW5hbWUgbGVkIHRvIGEgZmFpbHVyZSB3aGVuCisgICAgdGhlIHJlbmFtZSBpbXBsaWVzIGNyb3NzaW5nIGZpbGUgc3lzdGVtcy4gVGhhbmtzIHRvIER1cmsgU3Ryb29pc21hIGZvcgorICAgIHNwb3R0aW5nIGl0LgorICAqIFVzZSB0aGUgY29ycmVjdCBtdGltZSB3aGVuIGluc3RhbGxpbmcgYSBmaWxlIHdpdGggc3RhdG92ZXJyaWRlcy4KKyAgICBSZWdyZXNzaW9uIGludHJvZHVjZWQgaW4gMS4xNi4wLiBMUDogIzczOTE3OQorICAqIFJlbW92ZSBkdXBsaWNhdGUgd29yZCBpbiBnZXJtYW4gdHJhbnNsYXRpb24gb2YgZHBrZygxKS4gQ2xvc2VzOiAjNjE2MDk2CisgICogU3RyaXAgcmVwZWF0ZWQgbm9uLXNpZ25pZmljYW50IHNwYWNlcyBiZWZvcmUgYW5kIGFmdGVyIG5ld2xpbmVzCisgICAgaW4gVXBsb2FkZXJzLiBDbG9zZXM6ICM1OTg5MjIKKyAgKiBJZ25vcmUgd2hpdGVzcGFjZXMgYWZ0ZXIgb3B0aW9ucyBpbiBoZWFkZXJzIG9mIGNoYW5nZWxvZyBlbnRyaWVzLgorICAgIENsb3NlczogIzYwNTcxOQorICAqIEZpeCBkcGtnLXNvdXJjZSdzIHJlZ3Jlc3Npb24gd2l0aCBlbXB0eSBwYXRjaGVzIChpbnRyb2R1Y2VkIHdoaWxlIGZpeGluZworICAgICM2MTMwMjMpLiBDbG9zZXM6ICM2MTk1NDEKKworICBbIEpvbmF0aGFuIE5pZWRlciBdCisgICogUmVtb3ZlIHN1cHBvcnQgZm9yIHVzZSBvZiBzeW5jaHJvbm91cyBzeW5jKDIpLCBkdWUgdG8gaXRzIHBlcm5pY2lvdXMKKyAgICBzaWRlLWVmZmVjdHMgYW5kIHRvIGVhc2UgbWFpbnRlbmFuY2UuCisgICogQ2xhcmlmeSB0aGF0IGFuIHVwLXRvLWRhdGUgZHBrZyBvbmx5IG5lZWRzIHRvIGJlIHVucGFja2VkIGZvcgorICAgIGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyIHRvIHdvcmsuCisKKyAgWyBTdGV2ZSBMYW5nYXNlayBdCisgICogQWRkIG5ldyB2YXJpYWJsZXMgdG8gZHBrZy1hcmNoaXRlY3R1cmUsIERFQl9IT1NUX01VTFRJQVJDSCBhbmQKKyAgICBERUJfQlVJTERfTVVMVElBUkNILCB0aGF0IHJldHVybiB0aGUgImlkZWFsIiBHTlUgdHJpcGxldCBmb3IgZWFjaAorICAgIGFyY2hpdGVjdHVyZSB3aGljaCBzaG91bGQgYmUgdXNlZCBhcyB0aGUgcGF0aCBjb21wb25lbnQgZm9yIGxpYnJhcnkKKyAgICBpbnN0YWxsYXRpb24uCisKKyAgWyBNYXJrIEh5bWVycyBdCisgICogQWRkIHN1cHBvcnQgZm9yIEJ1aWx0LVVzaW5nIGZpZWxkLiBDbG9zZXM6ICM2MTkzMTEKKworICBbIFVwZGF0ZWQgcHJvZ3JhbXMgdHJhbnNsYXRpb25zIF0KKyAgKiBHZXJtYW4gKFN2ZW4gSm9hY2hpbSkuCisgICogUG9ydHVndWVzZSAoTWlndWVsIEZpZ3VlaXJlZG8pLgorICAqIFNwYW5pc2ggKEphdmllciBGZXJuYW5kZXotU2FuZ3Vpbm8pLgorICAqIFN3ZWRpc2ggKFBldGVyIEtyZWZ0aW5nKS4KKworICBbIFVwZGF0ZWQgbWFuIHBhZ2UgdHJhbnNsYXRpb25zIF0KKyAgKiBHZXJtYW4gKEhlbGdlIEtyZXV0em1hbm4pLgorICAqIFN3ZWRpc2ggKFBldGVyIEtyZWZ0aW5nKS4KKworICBbIFVwZGF0ZWQgc2NyaXB0cyB0cmFuc2xhdGlvbnMgXQorICAqIEdlcm1hbiAoSGVsZ2UgS3JldXR6bWFubikuCisgICogU3dlZGlzaCAoUGV0ZXIgS3JlZnRpbmcpLgorCisgIFsgVXBkYXRlZCBkc2VsZWN0IHRyYW5zbGF0aW9ucyBdCisgICogU3BhbmlzaCAoSmF2aWVyIEZlcm5hbmRlei1TYW5ndWlubykuCisKKyAtLSBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+ICBGcmksIDAxIEFwciAyMDExIDIzOjU2OjU0ICswMjAwCisKK2Rwa2cgKDEuMTUuOC4xMCkgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBEbyBub3Qgc2VnZmF1bHQgb24g4oCcdXBkYXRlLWFsdGVybmF0aXZlcyAtLWF1dG/igJ0gd2hlbiB0aGUgbGluayBncm91cCBvbmx5CisgICAgaGFzIGFsdGVybmF0aXZlcyB3aGljaCBhcmUgZGFuZ2xpbmcgc3ltbGlua3MuIENsb3NlczogIzYxMTU0NQorCisgLS0gR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPiAgU3VuLCAzMCBKYW4gMjAxMSAyMDoyODoyNyArMDEwMAorCitkcGtnICgxLjE1LjguOSkgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgWyBSYXBoYcOrbCBIZXJ0em9nIF0KKyAgKiBEcm9wIEJyZWFrcyBvbiBrb25xdWVyb3IgdG8gYXZvaWQgc29tZSBsZW5ueSAtPiBzcXVlZXplIHVwZ3JhZGUKKyAgICBwcm9ibGVtcy4gSXQgd2FzIG9ubHkgbmVlZGVkIHRvIGVuc3VyZSBpbnN0YWxsLWluZm8gaXMgaW5zdGFsbGVkCisgICAgZXZlbiBmb3IgcGFydGlhbCB1cGdyYWRlcy4gQ2xvc2VzOiAjNjEwOTkxCisgICogRG8gdGhlIHNhbWUgZm9yIGFsbCBlbWFjcy9qZWQgcGFja2FnZXMuIEZvciBqZWQsIHRoZSBicmVha3MgaGFzIGJlZW4KKyAgICByZW5kZXJlZCB1c2VsZXNzIGFzIHRoZSBtYWludGFpbmVycyBkcm9wcGVkIHRoZSBpbnN0YWxsLWluZm8gZGVwZW5kZW5jaWVzCisgICAgYW55d2F5LgorCisgIFsgVXBkYXRlZCBkcGtnIHRyYW5zbGF0aW9ucyBdCisgICogUmVtb3ZlIHNwYWNlIGJlZm9yZSAi4oCmIiBpbiBzZXZlcmFsIENhdGFsYW4gc3RyaW5ncyAoSm9yZGkgTWFsbGFjaCkuCisgICogUm9tYW5pYW4gKFN0YW4gSW9hbi1FdWdlbikuCisKKyAtLSBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+ICBNb24sIDI0IEphbiAyMDExIDIwOjI0OjUzICswMTAwCisKK2Rwa2cgKDEuMTUuOC44KSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICBbIEd1aWxsZW0gSm92ZXIgXQorICAqIFRydW5jYXRlIHRoZSBvdXRwdXQgcGFydCBmaWxlIG9uIOKAnGRwa2ctc3BsaXQgLXPigJ0uIFJlZ3Jlc3Npb24gaW50cm9kdWNlZAorICAgIHdpdGggdGhlIEMgcmV3cml0ZS4KKworICBbIFVwZGF0ZWQgbWFuIHBhZ2UgdHJhbnNsYXRpb25zIF0KKyAgKiBUd28gdHlwb3MgZml4ZWQgaW4gRnJlbmNoIChDaHJpc3RpYW4gUGVycmllciwgdGhhbmtzIHRvIEp1bGllbgorICAgIFZhbHJvZmYpLgorCisgIFsgUmFwaGHDq2wgSGVydHpvZyBdCisgICogRml4IG11bHRpcGxlIHNlY3VyaXR5IGlzc3VlcyB3aXRoIGRwa2ctc291cmNlIChDVkUtMjAxMC0xNjc5KToKKyAgICAtIEVuaGFuY2UgY2hlY2tzIHRvIGNhdGNoIG1hbGljaW91c2x5IGNyYWZ0ZWQgcGF0Y2hlcyB3aGljaCBjb3VsZCBtb2RpZnkKKyAgICAgIGZpbGVzIG91dHNpZGUgb2YgdGhlIHVucGFja2VkIHNvdXJjZSBwYWNrYWdlLgorICAgIC0gRG8gbm90IGNvbnNpZGVyIGEgdG9wLWxldmVsIHN5bWxpbmsgbGlrZSBhIGRpcmVjdG9yeSB3aGVuCisgICAgICBleHRyYWN0aW5nIGEgdGFyYmFsbC4KKyAgICAtIEV4Y2x1ZGUgLnBjIHdoaWxlIGV4dHJhY3RpbmcgdGhlIHVwc3RyZWFtIHRhcmJhbGwgaW4gMy4wIChxdWlsdCkKKyAgICAgIGFzIHBhdGNoIGJsaW5kbHkgd3JpdGVzIGluIHRoYXQgZGlyZWN0b3J5IGR1cmluZyB1bnBhY2sgKGFuZCB3b3VsZAorICAgICAgZm9sbG93IGFueSBleGlzdGluZyBzeW1saW5rKS4KKworIC0tIFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4gIFRodSwgMDYgSmFuIDIwMTEgMjE6MDQ6MzMgKzAxMDAKKworZHBrZyAoMS4xNS44LjcpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgIFsgR3VpbGxlbSBKb3ZlciBdCisgICogRGVmZXIgc3ltbGluayByZW5hbWVzIHNvIHRoYXQgdGhlcmUncyBuZXZlciBhIHBvaW50IHdlcmUgYSBzeW1saW5rCisgICAgaXMgYnJva2VuLCB0aGlzIGlzIHBhcnRpY3VsYXJseSBpbXBvcnRhbnQgZm9yIHNoYXJlZCBsaWJyYXJpZXMuCisgICAgQ2xvc2VzOiAjNjA1NTM2CisgICogT24gTGludXggdXNlIHN5bmNfZmlsZV9yYW5nZSgpIHRvIGluaXRpYXRlIGFzeW5jaHJvbm91cyB3cml0ZWJhY2sKKyAgICBvZiBqdXN0IHVucGFja2VkIGZpbGVzLiBTdWdnZXN0ZWQgYnkgVGVkIFRzJ28gPHR5dHNvQG1pdC5lZHU+LgorICAgIFRoYW5rcyB0byBKb25hdGhhbiBOaWVkZXIgPGpybmllZGVyQGdtYWlsLmNvbT4uIENsb3NlczogIzYwNTAwOQorICAqIE9uIG5vbi1MaW51eCB1c2UgcG9zaXhfZmFkdmlzZShQT1NJWF9GQURWX0RPTlRORUVEKSB0byBub3RpZnkgdGhlIGtlcm5lbAorICAgIGRwa2cgZG9lcyBub3QgbmVlZCB0aGUgdW5wYWNrZWQgZmlsZXMgYW55IGxvbmdlciwgYW5kIHRoYXQgaXQgY2FuIHN0YXJ0CisgICAgd3JpdGViYWNrIHRvIGJlIGFibGUgdG8gZXZpY3QgdGhlbSBmcm9tIHRoZSBjYWNoZSBhdCBhIGxhdGVyIHBvaW50LgorICAqIEZpeCBzdGFuemEgZGVsaW1pdGluZyBvbiAtTCwgLXMgYW5kIC1wIG91dHB1dC4gVGhpcyB3YXMgbWFraW5nIHRoZSBvdXRwdXQKKyAgICBmb3IgbXVsdGlwbGUgcGFja2FnZXMgdW5yZWFsaWFibGUgdG8gcGFyc2UuIENsb3NlczogIzYwNjMxNQorCisgIFsgVXBkYXRlZCBkcGtnIHRyYW5zbGF0aW9ucyBdCisgICogQmFzcXVlIChJw7Fha2kgTGFycmHDsWFnYSBNdXJnb2l0aW8pLiBDbG9zZXM6ICM2MDcyNTMKKyAgKiBDYXRhbGFuIChHdWlsbGVtIEpvdmVyKS4KKyAgKiBDemVjaCAoTWlyb3NsYXYgS3VyZSkuIENsb3NlczogIzYwNTA5OQorICAqIEVzcGVyYW50byAoRmVsaXBlIEUuIEYuIGRlIENhc3RybykuIENsb3NlczogIzYwNzQzNworICAqIEZyZW5jaCAoQ2hyaXN0aWFuIFBlcnJpZXIpLgorICAqIEdlcm1hbiAoU3ZlbiBKb2FjaGltKS4KKyAgKiBJbmRvbmVzaWFuIChBcmllZiBTIEZpdHJpYW50bykuIENsb3NlczogIzYwNTI0OAorICAqIEl0YWxpYW4gKE1pbG8gQ2FzYWdyYW5kZSkuIENsb3NlczogIzYwNzMwNgorICAqIEphcGFuZXNlIChLZW5zaGkgTXV0bykuIENsb3NlczogIzYwNzI1OQorICAqIE5vcndlZ2lhbiBCb2ttw6VsIChIYW5zIEZyZWRyaWsgTm9yZGhhdWcpLgorICAqIFBvcnR1Z3Vlc2UgKE1pZ3VlbCBGaWd1ZWlyZWRvKS4gQ2xvc2VzOiAjNjA1NTA2CisgICogUnVzc2lhbiAoWXVyaSBLb3psb3YpLiBDbG9zZXM6ICM2MDcyOTIKKyAgKiBTaW1wbGlmaWVkIENoaW5lc2UgKEFyb24gWHUpLgorICAqIFNsb3ZhayAoSXZhbiBNYXPDoXIpLiBDbG9zZXM6ICM2MDczMDIKKyAgKiBTcGFuaXNoIChKYXZpZXIgRmVybmFuZGV6LVNhbmd1aW5vKS4KKyAgKiBUaGFpIChUaGVwcGl0YWsgS2Fyb29uYm9vbnlhbmFuKS4gQ2xvc2VzOiAjNjA3NTAxCisKKyAgWyBVcGRhdGVkIG1hbiBwYWdlIHRyYW5zbGF0aW9ucyBdCisgICogRnJlbmNoIChDaHJpc3RpYW4gUGVycmllcikuCisgICogR2VybWFuIChIZWxnZSBLcmV1dHptYW5uKS4KKyAgKiBTcGFuaXNoIChPbWFyIENhbXBhZ25lKS4KKworICBbIFVwZGF0ZWQgZHNlbGVjdCB0cmFuc2xhdGlvbnMgXQorICAqIFNwYW5pc2ggKEphdmllciBGZXJuYW5kZXotU2FuZ3Vpbm8pLgorCisgIFsgVXBkYXRlZCBzY3JpcHRzIHRyYW5zbGF0aW9ucyBdCisgICogR2VybWFuIChmaXggYnkgU3ZlbiBKb2FjaGltKS4KKyAgKiBTcGFuaXNoIChKYXZpZXIgRmVybmFuZGV6LVNhbmd1aW5vKS4KKworIC0tIEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4gIE1vbiwgMjAgRGVjIDIwMTAgMDI6MjY6MjYgKzAxMDAKKworZHBrZyAoMS4xNS44LjYpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgIFsgUmFwaGHDq2wgSGVydHpvZyBdCisgICogRW5zdXJlIGRlYmlhbi9zb3VyY2UvbG9jYWwtb3B0aW9ucyBpcyBhbHdheXMgZXhjbHVkZWQgZnJvbSB0aGUgc291cmNlCisgICAgcGFja2FnZSBldmVuIGlmIHRoZSB1c2VyIHByb3ZpZGVzIGN1c3RvbWl6ZWQgLWkgb3IgLUkgb3B0aW9ucy4KKyAgICBDbG9zZXM6ICM1OTcwMjMKKyAgKiBGaXggRHBrZzo6VmVyc2lvbidzIGhhbmRsaW5nIG9mIHZlcnNpb24gd2l0aCBhIGRlYmlhbiByZXZpc2lvbiBidXQgYW4KKyAgICBlbXB0eSB2ZXJzaW9uIChlLmcuICItMC4xIikuIFRoYW5rcyB0byBKYW1lcyBWZWdhIDxqYW1lc3NhbkBkZWJpYW4ub3JnPgorICAgIGZvciB0aGUgcGF0Y2guIENsb3NlczogIzU5NzY1MQorICAqIFdpdGggIjMuMCAocXVpbHQpIiBzb3VyY2UgcGFja2FnZSwgY3JlYXRlIC5wYy8ucXVpbHRfc2VyaWVzIHdpdGggdGhlCisgICAgY29ycmVjdCBzZXJpZXMgZmlsZSBpZiB0aGUgc291cmNlIHBhY2thZ2UgcHJvdmlkZXMgdmVuZG9yIHNwZWNpZmljIHBhdGNoCisgICAgc2V0cy4KKworICBbIEd1aWxsZW0gSm92ZXIgXQorICAqIERpc2FibGUgYnkgZGVmYXVsdCB1c2FnZSBvZiBzeW5jaHJvbm91cyBzeW5jKDIpLCBhcyBpdCBjYXVzZXMgdW5kZXNpcmVkCisgICAgSS9PIG9uIHVucmVsYXRlZCBmaWxlIHN5c3RlbXMuIENsb3NlczogIzU4ODMzOSwgIzU5NTkyNywgIzYwMDA3NQorICAqIEFkZCBuZXcgLS1mb3JjZS11bnNhZmUtaW8gdG8gZGlzYWJsZSBzYWZlIEkvTyBvcGVyYXRpb25zIG9uIHVucGFjay4KKyAgICBDbG9zZXM6ICM1ODQyNTQKKworICBbIFVwZGF0ZWQgbWFuIHBhZ2UgdHJhbnNsYXRpb25zIF0KKyAgKiBGcmVuY2ggKENocmlzdGlhbiBQZXJyaWVyKS4gSW5jbHVkaW5nIGEgdHlwbyBmaXggYW5kIGEgdHlwb2dyYXBoaWNhbAorICAgIGNoYW5nZSByZXBvcnRlZCBieSBWaW5jZW50IERhbmplYW4uIENsb3NlczogIzYwMTg1MgorICAqIFNwYW5pc2ggKE9tYXIgQ2FtcGFnbmUpLiBDbG9zZXM6ICM1OTY1MTkKKworICBbIFVwZGF0ZWQgcHJvZ3JhbXMgdHJhbnNsYXRpb25zIF0KKyAgKiBCYXNxdWUgKEnDsWFraSBMYXJyYcOxYWdhIE11cmdvaXRpbykuIENsb3NlczogIzU5OTkyMworICAqIENhdGFsYW4gKEpvcmRpIE1hbGxhY2gpLgorICAqIERhbmlzaCAoQXNrIEhqb3J0aCBMYXJzZW4pLiBDbG9zZXM6ICM2MDAyNDAKKyAgKiBHZXJtYW4gKFN2ZW4gSm9hY2hpbSkuIEltcHJvdmVkIGJ5IEhvbGdlciBXYW5zaW5nLgorICAqIEl0YWxpYW4gKFBpZXRybyBCYXR0aXN0b24pLiBGaXggdHJhbnNsYXRpb24gb2YgImhvd2V2ZXIiLiBDbG9zZXM6ICM2MDI1MTgKKyAgKiBQb3J0dWd1ZXNlIChNaWd1ZWwgRmlndWVpcmVkbykuIENsb3NlczogIzU5NjE2OAorICAqIFJvbWFuaWFuIChBbmRyZWkgUG9wZXNjdSkuIENsb3NlczogIzYwNDc2OQorICAqIFJ1c3NpYW4gKFl1cmkgS296bG92KS4gQ2xvc2VzOiAjNTk1NDU1CisgICogVmlldG5hbWVzZSAoQ2x5dGllIFNpZGRhbGwpLiBDbG9zZXM6ICM1OTg0NzMKKworICBbIFVwZGF0ZWQgc2NyaXB0cyB0cmFuc2xhdGlvbnMgXQorICAqIENhdGFsYW4gKEpvcmRpIE1hbGxhY2gpLgorICAqIEdlcm1hbiAoU3ZlbiBKb2FjaGltKS4KKworICBbIFVwZGF0ZWQgZHNlbGVjdCB0cmFuc2xhdGlvbnMgXQorICAqIENhdGFsYW4gKEpvcmRpIE1hbGxhY2gpLgorICAqIEdlcm1hbiAoU3ZlbiBKb2FjaGltKS4KKworIC0tIEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4gIFRodSwgMjUgTm92IDIwMTAgMDc6MTA6NDggKzAxMDAKKworZHBrZyAoMS4xNS44LjUpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgIFsgR3VpbGxlbSBKb3ZlciBdCisgICogRG8gbm90IHByaW50IGEgd2FybmluZyB3aGVuIHBhcnNpbmcgc3RhdHVzIG9yIHN0YXR1cyBsb2cgZmlsZXMgb24KKyAgICBoYWxmLWluc3RhbGxlZCBwYWNrYWdlcyB3L28gYSBEZXNjcmlwdGlvbiBvciBNYWludGFpbmVyIGZpZWxkLCBhcworICAgIHRoaXMgaGFwcGVucyBub3JtYWxseSB3aGVuIHRoZSBwYWNrYWdlIHdhcyBuZXZlciBpbnN0YWxsZWQgYmVmb3JlLgorICAgIENsb3NlczogIzU5NDE2NworICAqIEltcHJvdmUgZ2l0IGZvcm1hdCBkb2N1bWVudGF0aW9uIGluIGRwa2ctc291cmNlKDEpLgorICAgIFRoYW5rcyB0byBKb2V5IEhlc3MsIGJhc2VkIG9uIGEgcGF0Y2ggYnkgVGFuZ3V5IE9ydG9sby4KKyAgKiBDbGFyaWZ5IGVmZmVjdCBvZiDigJxkcGtnIC0tcHVyZ2XigJ0gb24gaG9tZWRpciBmaWxlcyBpbiBkcGtnKDEpLgorICAgIFRoYW5rcyB0byBUaGUgRnVuZ2kgPGZ1bmdpQHl1Z2dvdGgub3JnPi4gQ2xvc2VzOiAjNTkzNjI4CisgICogQWRkIGdldHRleHQgcGx1cmFscyBpbmZyYXN0cnVjdHVyZSBzdXBwb3J0LgorICAqIEFkZCBnZXR0ZXh0IG1lc3NhZ2VzIGZvciBwbHVyYWwgZm9ybXMuIENsb3NlczogIzU5NDIxOAorICAqIEZpeCBwb3NzaWJsZSBidXQgaW1wcm9iYWJsZSBzZWdmYXVsdCBpbiB1cGRhdGUtYWx0ZXJuYXRpdmVzIGluIGNhc2UKKyAgICB0aGUgbWFzdGVyIGZpbGUgbmFtZSBjb250YWlucyBhIGZvcm1hdCBzdHJpbmcgc3BlY2lmaWVyLiBSZXBvcnRlZCBieQorICAgIFNhbmRybyBDYXp6YW5pZ2EuCisgICogRml4IHJlYWxsb2MgdXNhZ2Ugb24gY29tcGF0IHNjYW5kaXIoKSBpbXBsZW1lbnRhdGlvbi4KKworICBbIFJhcGhhw6tsIEhlcnR6b2cgXQorICAqIEZpeCBkcGtnLWdlbmNoYW5nZXMgdG8gbm90IHNwbGl0IHRoZSBzaG9ydCBkZXNjcmlwdGlvbiBpbiB0aGUgbWlkZGxlIG9mIGEKKyAgICBVVEY4IGNoYXJhY3Rlci4gQ2xvc2VzOiAjNTkzNDQyCisgICogRHJvcCAtayBwYXJhbWV0ZXIgZnJvbSB0aGUgdGFyIGNhbGwgdXNlZCBieSBkcGtnLXNvdXJjZSB0byBleHRyYWN0CisgICAgdGFyYmFsbHMuIFVwc3RyZWFtIGJpbmFyeSBmaWxlcyBtb2RpZmllZCBieSB0aGUgcGFja2FnZXIgd2VyZSBub3QgcHJvcGVybHkKKyAgICBpbnN0YWxsZWQgZHVlIHRvIHRoaXMuIFRoYW5rcyB0byBKYW1lcyBXZXN0YnkgZm9yIHRoZSByZXBvcnQuCisgICAgQ2xvc2VzOiAjNTk0NDQwCisgICogTWFrZSBkcGtnIEJyZWFrczogZHBrZy1kZXYgKDw8IDEuMTUuOCkgc28gdGhhdCBvbGRlciB2ZXJzaW9ucyBvZiBkcGtnLWRldgorICAgIHRoYXQgZGlkIG5vdCBkZXBlbmQgb24gbGliZHBrZy1wZXJsIG11c3QgYmUgdXBncmFkZWQgdG9nZXRoZXIgd2l0aCBkcGtnLgorICAgIENsb3NlczogIzU5NjQxNworCisgIFsgSGVsZ2UgS3JldXR6bWFubiBdCisgICogRml4IGVuY29kaW5nIG9mIEdlcm1hbiBhZGRlbmR1bS4gQ2xvc2VzOiAjNTk1NjQzCisKKyAgWyBVcGRhdGVkIHByb2dyYW1zIHRyYW5zbGF0aW9ucyBdCisgICogRXNwZXJhbnRvIChGZWxpcGUgQ2FzdHJvKS4gQ2xvc2VzOiAjNTk2MTczCisgICogRnJlbmNoIChDaHJpc3RpYW4gUGVycmllcikuCisgICogR2VybWFuIChTdmVuIEpvYWNoaW0pLgorICAqIEluZG9uZXNpYW4gKEFyaWVmIFMgRml0cmlhbnRvKS4gQ2xvc2VzOiAjNTk2NjU3CisgICogSXRhbGlhbiAoTWlsbyBDYXNhZ3JhbmRlKS4gQ2xvc2VzOiAjNTkyOTUzLCAjNTk1NjE1CisgICogSmFwYW5lc2UgKEtlbnNoaSBNdXRvKS4gQ2xvc2VzOiAjNTk1NDY4CisgICogS29yZWFuIChDaGFuZ3dvbyBSeXUpLiBDbG9zZXM6ICM1OTU1NTYKKyAgKiBOb3J3ZWdpYW4gQm9rbcOlbCAoSGFucyBOb3JkaGF1ZykuIENsb3NlczogIzU5NTIwOAorICAqIFNpbXBsaWZpZWQgQ2hpbmVzZSAoQXJvbiBYdSkuIENsb3NlczogIzU5NDUxMworICAqIFNsb3ZhayAoSXZhbiBNYXPDoXIpLiBDbG9zZXM6ICM1OTU5NjgKKyAgKiBTd2VkaXNoIChQZXRlciBLcmVmdGluZykuCisgICogVGhhaSAoVGhlcHBpdGFrIEthcm9vbmJvb255YW5hbikuIENsb3NlczogIzU5NDAxMQorCisgIFsgVXBkYXRlZCBtYW4gcGFnZSB0cmFuc2xhdGlvbnMgXQorICAqIEZyZW5jaCAoQ2hyaXN0aWFuIFBlcnJpZXIpLgorICAqIEdlcm1hbiAoSGVsZ2UgS3JldXR6bWFubikuCisgICogU3dlZGlzaCAoUGV0ZXIgS3JlZnRpbmcpLgorCisgIFsgVXBkYXRlZCBzY3JpcHRzIHRyYW5zbGF0aW9ucyBdCisgICogRnJlbmNoIChDaHJpc3RpYW4gUGVycmllcikuIEluY2x1ZGVzIGEgZml4IHRvIGEgc3BlY2lmaWMKKyAgICBtZXNzYWdlIHRyYW5zbGF0aW9uIHRoYXQgd2FzIGltcHJlY2lzZS4gQ2xvc2VzOiAjNTk2MzMzCisgICogR2VybWFuIChIZWxnZSBLcmV1dHptYW5uKS4gSW1wcm92ZWQgYnkgSG9sZ2VyIFdhbnNpbmcuCisgICogTm9yd2VnaWFuIEJva23DpWwgKEhhbnMgRnJlZHJpayBOb3JkaGF1ZykuIENsb3NlczogIzU5NTI5OQorICAqIFNwYW5pc2ggKE9tYXIgQ2FtcGFnbmUpLiAgQ2xvc2VzOiAjNTk2NTE4CisgICogU3dlZGlzaCAoUGV0ZXIgS3JlZnRpbmcpLgorICAqIFJ1c3NpYW4gKFl1cmkgS296bG92KS4gQ2xvc2VzOiAjNTk1MTc1CisKKyAtLSBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+ICBUdWUsIDE0IFNlcCAyMDEwIDAxOjI2OjIxICswMjAwCisKK2Rwa2cgKDEuMTUuOC40KSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICBbIEd1aWxsZW0gSm92ZXIgXQorICAqIEZpeCB1c2UgYWZ0ZXIgZnJlZSBzZWdmYXVsdCBvbiB1cGRhdGUtYWx0ZXJuYXRpdmVzIC0tcmVtb3ZlLWFsbC4KKyAgICBDbG9zZXM6ICM1OTE2NTMsICM1OTE2NTQKKyAgKiBBbHdheXMgcHJpbnQgYSBtZXNzYWdlIG9uIHdhcm5pbmcgd2hlbiBwYXJzaW5nIGNvbnRyb2wgZmlsZXMuCisgICogT24gZGF0YWJhc2UgcGFyc2luZyBvbmx5IHdhcm4gb24gYm9ndXMgdmVyc2lvbnMgcHJldmlvdXNseSBhY2NlcHRlZCwKKyAgICB0aGUgb3RoZXIgaW5zdGFuY2VzIHdpbGwga2VlcCBwcm9kdWNpbmcgZXJyb3JzLCB0byBhdm9pZCBuZXdseQorICAgIGludHJvZHVjZWQgYm9nb3NpdHkuIENsb3NlczogIzU5MDg4NSwgIzU5MDg5NiwgIzU5MTY5MiwgIzU5MTg4NQorICAqIEZpeCBjb21waWxhdGlvbiBvbiBTb2xhcmlzIGFuZCBEYXJ3aW46CisgICAgLSBMaW5rIHVwZGF0ZS1hbHRlcm5hdGl2ZXMgYWdhaW5zdCBsaWJpbnRsIGlmIGxpYmMgZG9lcyBub3QgaGF2ZSBpMThuCisgICAgICBzdXBwb3J0LgorICAgIC0gSW5jbHVkZSA8bGltaXRzLmg+IGZvciBfUE9TSVhfTUFYX1BBVEggaW4gdXBkYXRlLWFsdGVybmF0aXZlcy4KKyAgICBUaGFua3MgdG8gRmFiaWFuIEdyb2ZmZW4gPGdyb2JpYW5AZ2VudG9vLm9yZz4uCisKKyAgWyBSYXBoYcOrbCBIZXJ0em9nIF0KKyAgKiBGaXggbWFrZSAtQyBtYW4gaW5zdGFsbCBzbyB0aGF0IGl0IGFjdHVhbGx5IGZpbmRzIHRoZSBtYW51YWwgcGFnZXMKKyAgICB0byBpbnN0YWxsLiBDbG9zZXM6ICM1OTE1ODgKKyAgKiBXaGVuIGFuYWx5emluZyB0aGUgRUxGIGZvcm1hdCBvZiBhIGJpbmFyeSBpbiBkcGtnLXNobGliZGVwcywgZmFsbGJhY2sgb24KKyAgICB1c3VhbCBvYmpkdW1wIHdoZW4gdGhlIGNyb3NzIG9iamR1bXAgZmFpbGVkLiBDbG9zZXM6ICM1OTE1MjIKKworICBbIFN2ZW4gSm9hY2hpbSBdCisgICogRW5zdXJlIHJlbW92YWwgb2YgbGVmdG92ZXIgYmFja3VwIC5kcGtnLXRtcCBmaWxlcyBhZnRlciB1bnBhY2tpbmcKKyAgICBmYWlsdXJlcywgd2hlbiB0aGUgYmFja3VwIGlzIHN0aWxsIGEgaGFyZCBsaW5rIHRvIHRoZSBvcmlnaW5hbCBmaWxlLgorICAgIENsb3NlczogIzU5MTk5MworCisgLS0gR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPiAgRnJpLCAxMyBBdWcgMjAxMCAwNjowMjoxMCArMDIwMAorCitkcGtnICgxLjE1LjguMykgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgWyBSYXBoYcOrbCBIZXJ0em9nIF0KKyAgKiBGaXggZHBrZy1kaXZlcnQgdGVzdCBzdWl0ZSB0byBjb3BlIHdpdGggKyBhbmQgb3RoZXIgc3BlY2lhbCBjaGFyYWN0ZXJzIGZvcgorICAgIHJlZ2V4cHMgaW4gdGhlIGJ1aWxkIGRpcmVjdG9yeSBuYW1lLiBUaGFua3MgdG8gSm9uYXRoYW4gTmllZGVyIGZvciB0aGUKKyAgICBwYXRjaCBhbmQgdG8gUGhpbCBLZXJuIGZvciB0aGUgcmVwb3J0LiBDbG9zZXM6ICM1OTExODIKKworICBbIEd1aWxsZW0gSm92ZXIgXQorICAqIEZpeCBidWZmZXIgb3ZlcmZsb3cgaW4gZHBrZ19hcl9tZW1iZXJfcHV0X2hlYWRlciBjYXVzaW5nIGl0IHRvIHdyaXRlIHRoZQorICAgIGhlYWRlciB0byBmZCAwIChpbnN0ZWFkIG9mIGFyX2ZkKSBkZXBlbmRpbmcgb24gdGhlIHN0YWNrIGxheW91dCwgYWZmZWN0aW5nCisgICAgYXJtZWwuIFRoYW5rcyB0byBQaGlsIEtlcm4gZm9yIHRoZSBhbmFseXNpcyBhbmQgUmVpbmhhcmQgVGFydGxlciBmb3IgdGhlCisgICAgaW5pdGlhbCBwYXRjaC4gQ2xvc2VzOiAjNTkxMzEyCisKKyAtLSBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+ICBNb24sIDAyIEF1ZyAyMDEwIDEwOjM4OjA3ICswMjAwCisKK2Rwa2cgKDEuMTUuOC4yKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIEJ1bXAgbGliZHBrZy1wZXJsIERlcGVuZHMgb24gZHBrZyB0byAxLjE1LjgsIGFzIGl0IHdpbGwgYnJlYWsgZHBrZworICAgIHZlcnNpb25zIGJlZm9yZSB0aGF0IHdoZW4gaW5zdGFsbGluZyBhbmQgcmVtb3ZpbmcgbGliZHBrZy1wZXJsLAorICAgIGJlY2F1c2Ugb2xkZXIgdXBkYXRlLWFsdGVybmF0aXZlcyBhbmQgZHBrZy1kaXZlcnQgcmVxdWlyZSBEcGtnLnBtIGFuZAorICAgIERwa2cvR2V0dGV4dC5wbSB3aGljaCB3aWxsIGRpc2FwcGVhciBkdWUgdG8gdGhlIFJlcGxhY2VzLiBDbG9zZXM6ICM1OTA4NjcKKyAgICBUaGFua3MgdG8gU3ZlbiBKb2FjaGltIDxzdmVuam9hY0BnbXguZGU+IGZvciB0aGUgYW5hbHlzaXMuCisgICogQWxsb3cgc3BlY2lmeWluZyBhZ2FpbiBhYnNvbHV0ZSBhbmQgcmVsYXRpdmUgcGF0aHMgZm9yIGRwa2ctYnVpbGRwYWNrYWdlCisgICAgLXIgb3B0aW9uLiBDbG9zZXM6ICM1OTEwMTAKKworIC0tIEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4gIFNhdCwgMzEgSnVsIDIwMTAgMDQ6MjA6MDEgKzAyMDAKKworZHBrZyAoMS4xNS44LjEpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogRml4IG9mZi1ieS1vbmUgZXJyb3IgaW4gdXBkYXRlLWFsdGVybmF0aXZlcyB0aGF0IGxlYWQgdG8gYW4gaW5maW5pdGUgbG9vcAorICAgIHdoaWxlIHdyaXRpbmcgdGhlIGFkbWluaXN0cmF0aXZlIGZpbGUuIENsb3NlczogIzU5MDg1NAorCisgLS0gUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPiAgVGh1LCAyOSBKdWwgMjAxMCAyMToxODoxNiArMDIwMAorCitkcGtnICgxLjE1LjgpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgIFsgUmFwaGHDq2wgSGVydHpvZyBdCisgICogQWRkIG5ldyBjb21tYW5kcyAtLWJlZm9yZS1idWlsZCBhbmQgLS1hZnRlci1idWlsZCB0byBkcGtnLXNvdXJjZQorICAgIGFuZCBtb2RpZnkgZHBrZy1idWlsZHBhY2thZ2UgdG8gY2FsbCB0aGVtIGF1dG9tYXRpY2FsbHkgYXQgdGhlCisgICAgc3RhcnQgYW5kIGF0IHRoZSBlbmQgb2YgdGhlIHByb2Nlc3MuIFdpdGggIjMuMCAocXVpbHQpIiBzb3VyY2UgcGFja2FnZXMKKyAgICB0aGlzIGVuc3VyZXMgcGF0Y2hlcyBhcmUgYXBwbGllZCBldmVuIGluIGNhc2Ugb2YgYmluYXJ5LW9ubHkgYnVpbGRzLgorICAgIENsb3NlczogIzU3MjUyNgorICAqIE1lcmdlIG5vbi1yZWdyZXNzaW9uIHRlc3QgZm9yIFVidW50dSdzIHNwZWNpZmljaXRpZXMgY29uY2VybmluZworICAgIGNoYW5nZWxvZyBoYW5kbGluZy4gQ2xvc2VzOiAjNTgyMzg5CisgICogRml4IHNvbWUgY29weS1wYXN0ZSBtaXN0YWtlcyBpbiBkcGtnLWFyY2hpdGVjdHVyZSgxKS4gVGhhbmtzIHRvIElhbiBGbGVtaW5nCisgICAgPGlmbGVtYUB5YWhvby5jb20uYXU+IGZvciB0aGUgcGF0Y2ggYW5kIENvbGluIFdhdHNvbiBmb3IgZm9yd2FyZGluZyBvdXQgb2YKKyAgICBMYXVuY2hwYWQuIENsb3NlczogIzU4MjQwNCBMUDogIzU2NDMwOAorICAqIENsYXJpZnkgZGVzY3JpcHRpb24gb2YgZHBrZyAtLWNvbmZpZ3VyZSBpbiBkcGtnKDEpLiBUaGFua3MgdG8gQ29saW4gV2F0c29uCisgICAgZm9yIHRoZSBwYXRjaCBhbmQgdG8gUm9iZXJ0IFBlcnNzb24gZm9yIHRoZSByZXBvcnQuCisgICAgQ2xvc2VzOiAjNTgyNDA2IExQOiAjNzcyODcKKyAgKiBGaXggdGhlIG5vbi1yZWdyZXNzaW9uIHRlc3QgbGliL2Rwa2cvdGVzdC90LWFyLmMgYnkgbm90IG92ZXJmbG93aW5nIHRoZQorICAgIHNpemUgb2YgYXJfbmFtZS4gVGhhbmtzIHRvIENvbGluIFdhdHNvbiBmb3IgdGhlIHJlcG9ydCwgYW5hbHlzaXMgYW5kIHBhdGNoLgorICAgIENsb3NlczogIzU4MjQwMQorICAqIE1vZGlmeSBEcGtnOjpTaGxpYnM6Ok9iamR1bXAgdG8gdXNlIHRoZSBjcm9zcyBvYmpkdW1wIGJpbmFyeSB3aGVuIGNyb3NzCisgICAgY29tcGlsaW5nLiBUaGFua3MgdG8gTG/Dr2MgTWluaWVyIGZvciB0aGUgaW5pdGlhbCBwYXRjaC4gQ2xvc2VzOiAjNTc4MzY1CisgICogTWFrZSBkcGtnLW1haW50c2NyaXB0LWhlbHBlciBtb3JlIHJvYnVzdCB3aGVuIHJlcXVpcmVkIHBhcmFtZXRlcnMgYXJlCisgICAgbWlzc2luZy4gQ2xvc2VzOiAjNTgyODE0CisgICogQ2xhcmlmeSB0aGF0IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyIHJtX2NvbmZmaWxlIG5lZWRzIHRoZSBsYXN0IHZlcnNpb24gb2YKKyAgICB0aGUgcGFja2FnZSB0aGF0IGRpZCBub3QgcmVtb3ZlIHRoZSBvYnNvbGV0ZSBjb25mZmlsZSBpZiB0aGlzIHdhcyBub3QKKyAgICBpbXBsZW1lbnRlZCBhdCB0aGUgdGltZSB0aGUgZmlsZSBiZWNhbWUgb2Jzb2xldGUuIENsb3NlczogIzU4Mjg5MworICAqIEVuaGFuY2UgZHBrZy1tYWludHNjcmlwdC1oZWxwZXIgcm1fY29uZmZpbGUgYW5kIG12X2NvbmZmaWxlIHRvIHdvcmsKKyAgICBwcm9wZXJseSB3aGVuIDxsYXN0dmVyc2lvbj4gaXMgbm90IGdpdmVuIChvciBpcyBlbXB0eSkuIENsb3NlczogIzU4MjgxOQorICAqIFNtYWxsIGZpeCBpbiBkcGtnLWdlbnN5bWJvbHMnIGhhbmRsaW5nIG9mIHRhZ3MuIENsb3NlczogIzU4MzY1NgorICAgIFRoYW5rcyB0byBNaWNoYWVsIFRhdXRzY2huaWcgPG10QGRlYmlhbi5vcmc+IGZvciB0aGUgcmVwb3J0IGFuZCB0aGUgZml4LgorICAqIHVwZGF0ZS1hbHRlcm5hdGl2ZXMgaGFzIGJlZW4gcmV3cml0dGVuIGluIEMsIHRoZSBvbmx5IGZlYXR1cmUgY2hhbmdlCisgICAgc2hvdWxkIGJlIHRoYXQgaXQgdXNlcyBpdHMgb3duIGxvZ2ZpbGUgL3Zhci9sb2cvYWx0ZXJuYXRpdmVzLmxvZyAocm90YXRlZAorICAgIGxpa2UgZHBrZy5sb2cpLgorICAqIEltcGxlbWVudCBuZXcgLS11bmFwcGx5LXBhdGNoZXMgb3B0aW9uIGZvciBkcGtnLXNvdXJjZSB3aXRoIHNvdXJjZSBmb3JtYXRzCisgICAgMi4wIGFuZCAzLjAgKHF1aWx0KSB0aGF0IHVuYXBwbGllcyB0aGUgcGF0Y2hlcyBhZnRlciBhIHN1Y2Nlc3NmdWwgYnVpbGQuCisgICAgVGhpcyBvcHRpb24gY2FuIGJlIHB1dCBpbiBkZWJpYW4vc291cmNlL2xvY2FsLW9wdGlvbnMgaW4gdGhlIHBhY2thZ2UgVkNTCisgICAgcmVwb3NpdG9yeSBmb3IgaW5zdGFuY2UuCisgICogSW1wbGVtZW50IG5ldyAtLWFib3J0LW9uLXVwc3RyZWFtLWNoYW5nZXMgb3B0aW9uIGZvciBkcGtnLXNvdXJjZSB3aXRoCisgICAgc291cmNlIGZvcm1hdHMgMS4wLCAyLjAgYW5kIDMuMCAocXVpbHQpLiBJdCBhYm9ydHMgZXZlcnkgdGltZSB0aGF0IHlvdSB0cnkKKyAgICB0byBidWlsZCBhIHNvdXJjZSBwYWNrYWdlIHdoaWNoIGNvbnRhaW5zICh1bm1hbmFnZWQpIGNoYW5nZXMgdG8gdGhlCisgICAgdXBzdHJlYW0gc291cmNlIGNvZGUuIENsb3NlczogIzU3OTAxMgorICAqIGRwa2ctc291cmNlIG5vdyBjYXB0dXJlcyB0aGUgb3V0cHV0IG9mIHBhdGNoIGFuZCBwcmludHMgaXQgb24gZXJyb3Igc28KKyAgICB0aGF0IHRoZSB1c2VyIGNhbiBiZXR0ZXIgZGlhZ25vc2Ugd2hhdCB3ZW50IHdyb25nLiBDbG9zZXM6ICM1NzUzMDQKKyAgKiBGaXggRHBrZzo6Q2hhbmdlbG9nIHRvIGNvcGUgcHJvcGVybHkgd2l0aCBhbiBlbnRyeSBvZiB2ZXJzaW9uICIwIi4KKyAgICBBZGQgbm9uLXJlZ3Jlc3Npb24gdGVzdCBmb3IgdGhpcy4gQ2xvc2VzOiAjNTg3MzgyCisgICogQWRkIC0tZXhwb3J0IGNvbW1hbmQgdG8gZHBrZy1idWlsZGZsYWdzIHRvIGJlIHVzZWQgaW4gc2hlbGwgd2l0aCBldmFsLgorICAqIE1vZGlmeSBzb3VyY2UgZm9ybWF0ICIzLjAgKGdpdCkiIHRvIHVzZSBnaXQgYnVuZGxlcy4gVGhhbmtzIHRvIEpvZXkgSGVzcworICAgIGZvciB0aGUgcGF0Y2guCisgICAgVGhlIHVzYWdlIG9mIGdpdCBidW5kbGUgYXZvaWRzIGRpc3RyaWJ1dGluZyBjcnVmdC4gQ2xvc2VzOiAjNDc3OTU0CisgICAgSXQncyBubyBsb25nZXIgbmVlZGVkIHRvIHRlbGwgd2hpY2ggYnJhbmNoIGNvbnRhaW5zIHRoZSBkZWJpYW4gcGFja2FnaW5nLAorICAgIGl0IHVzZXMgYXV0b21hdGljYWxseSB0aGUgb25lIHRoYXQgd2FzIHVzZWQgYXQgYnVpbGQtdGltZS4gQ2xvc2VzOiAjNTM0NjM3CisgICogUGFzcyAtLW5vLW5hbWUgb3B0aW9uIHRvIGd6aXAgdG8gYXZvaWQgZW5jb2RpbmcgdGhlIHRpbWVzdGFtcCBpbiB0aGUgZmlsZQorICAgIHNvIHRoYXQgdGhlIHJlc3VsdCBpcyBtb3JlIHByZWRpY3RhYmxlLiBDbG9zZXM6ICM1ODc3MjQKKyAgICBBbHNvIHBhc3MgLS1yc3luY2FibGUgdG8gbWFrZSBzb3VyY2UgcGFja2FnZXMgbW9yZSByc3luYyBmcmllbmRseS4KKyAgKiBSZXBsYWNlIGRwa2ctc291cmNlJ3MgdGFyIGlnbm9yZSBwYXR0ZXJuICIqfiIgd2l0aCAiKi8qfiIgdG8gYXZvaWQKKyAgICBtYXRjaGluZyBvbiB0aGUgdG9wIGxldmVsIGRpcmVjdG9yeS4gQ2xvc2VzOiAjNTg4MjY1CisgICogSW4gc291cmNlIGZvcm1hdHMgIjIuMCIgYW5kICIzLjAgKHF1aWx0KSIsIG1ha2Ugc3VyZSB0byByZW1vdmUgdGhlCisgICAgdXBzdHJlYW0tcHJvdmlkZWQgZGViaWFuIGRpcmVjdG9yeSBiZWZvcmUgY29weWluZyB0aGUgZGViaWFuLXByb3ZpZGVkCisgICAgdmVyc2lvbiBvZiB0aGF0IGRpcmVjdG9yeSBpbiBwbGFjZS4gQ2xvc2VzOiAjNTkwMjk3CisKKyAgWyBHdWlsbGVtIEpvdmVyIF0KKyAgKiBSZXF1aXJlIGdldHRleHQgMC4xODoKKyAgICAtIFJlbW92ZSBlbWJlZGRlZCBnZXR0ZXh0IGZpbGVzIGZyb20gdGhlIHJlcG9zaXRvcnksIG5vdyBwcm9wZXJseQorICAgICAgaW5zdGFsbGVkIGJ5IGF1dG9wb2ludCBmb3IgYWxsIHBvLyBkaXJlY3Rvcmllcy4KKyAgICAtIEFkZCB2ZXJzaW9uZWQgQnVpbGQtRGVwZW5kcy4KKyAgKiBGaXggdmFyaWFibGUgdXNhZ2UgYWZ0ZXIgZGVsZXRlIGluIGRzZWxlY3QuCisgICogQ2hhbmdlIGRlZmF1bHQgY29uZmlndXJlIGFkbWluZGlyIHRvIExPQ0FMU1RBVEVESVIvbGliL2Rwa2cgZnJvbQorICAgIExPQ0FMU1RBVEVESVIvZHBrZywgc28gdGhhdCB3ZSBjYW4gdXNlIGEgY29ycmVjdCAtLWxvY2Fsc3RhdGVkaXI9L3Zhci4KKyAgKiBBZGQgdHdvIG5ldyBkcGtnIG9wdGlvbnMgLS1wYXRoLWV4Y2x1ZGUgYW5kIC0tcGF0aC1pbmNsdWRlIGZvciBmaWx0ZXJpbmcKKyAgICBmaWxlcyBvbiBwYWNrYWdlIGluc3RhbGxhdGlvbi4gVGhpcyBhbGxvd3MgZW1iZWRkZWQgc3lzdGVtcyB0byBza2lwCisgICAgL3Vzci9zaGFyZS9kb2MsIG1hbnBhZ2VzLCBldGMuIEJhc2VkIG9uIHdvcmsgZnJvbSBUb2xsZWYgRm9nIEhlZW4gYW5kCisgICAgTWFydGluIFBpdHQsIHRoYW5rcyEgQ2xvc2VzOiAjNjg3ODgsICM2ODg2MSwgIzQ5NzMwNCwgIzUyNTU2NywgIzU4MzkwMgorICAqIFJlbW92ZSBvYnNvbGV0ZSBpbnRlcm5hbCBzdGF0dXMgYWxpYXNlcyDigJxwb3N0aW5zdC1mYWlsZWTigJ0gZm9yCisgICAgc3RhdF9oYWxmY29uZmlndXJlZCBhbmQg4oCccmVtb3ZhbC1mYWlsZWTigJ0gZm9yIHN0YXRfaGFsZmluc3RhbGxlZC4KKyAgKiBDaGVjayB2ZXJzaW9uIHN5bnRheCB3aGVuIHBhcnNpbmcgaXQgZnJvbSBsaWJkcGtnIGJhc2VkIHByb2dyYW1zLgorICAgIENsb3NlczogIzU3NDcwNAorICAqIFJld3JpdGUgbWtzcGxpdCBpbiBDLCBhbmQgbWVyZ2UgaXQgaW50byBkcGtnLXNwbGl0LgorICAqIFJld3JpdGUgZHBrZy1kaXZlcnQgaW4gQy4KKyAgKiBVc2UgbGludXgtYW55IHdpbGRjYXJkIGZvciBsaWJzZWxpbnV4MS1kZXYgQnVpbGQtRGVwZW5kcyBpbnN0ZWFkIG9mCisgICAgdXNpbmcgYSBsaXN0IG9mIG5lZ2F0ZWQgYXJjaGl0ZWN0dXJlcy4KKyAgKiBVc2UgQnJlYWtzIGluc3RlYWQgb2YgQ29uZmxpY3RzIGluIGRwa2csIGRwa2ctZGV2IGFuZCBsaWJkcGtnLXBlcmwgYmluYXJ5CisgICAgcGFja2FnZXMuCisgICogTW92ZSBEcGtnLnBtIGFuZCBEcGtnL0dldHRleHQucG0gZnJvbSBkcGtnIHRvIGxpYmRwa2ctcGVybC4KKyAgKiBCdW1wIFN0YW5kYXJkcy1WZXJzaW9uIHRvIDMuOS4xLgorICAqIERldGVjdCB3aGVuIGFub3RoZXIgcHJvY2VzcyBoYXMgbG9ja2VkIHRoZSBkYXRhYmFzZSwgYW5kIG1lbnRpb24gdGhhdAorICAgIHByb2JsZW1hdGljIGRwa2cgLS1hdWRpdCByZXN1bHRzIG1pZ2h0IGJlIGR1ZSB0byBvbmdvaW5nIG9wZXJhdGlvbnMuCisgICAgQ2xvc2VzOiAjODAyNTIKKyAgKiBBZGQgbmV3IGRwa2cgLS1mb3JjZS1jb25mYXNrIG9wdGlvbiB0aGF0IGZvcmNlcyBhIGNvbmZmaWxlIHByb21wdCB3aGVuCisgICAgdGhlIGNvbmZmaWxlIGZyb20gdGhlIG5ldyBwYWNrYWdlIGRvZXMgbm90IGRpZmZlciBmcm9tIHRoZSBwcmV2aW91cyBvbmUuCisgICAgVGhhbmtzIHRvIEhlbm5pbmcgTWFraG9sbSA8aGVubmluZ0BtYWtob2xtLm5ldD4uIENsb3NlczogIzEwMjYwOQorICAqIE9uIGRwa2ctZGl2ZXJ0IC0tcmVuYW1lLCBjaGVjayBpZiB0aGUgc291cmNlIGZpbGUgZXhpc3RzLCBhbmQgZGlzYWJsZQorICAgIHJlbmFtaW5nIGlmIGl0IGRvZXMgbm90LiBDbG9zZXM6ICM1NTAyNTIKKyAgICBBcyBhIHNpZGUgZWZmZWN0LCB0aGlzIGF2b2lkcyB1c2VsZXNzIGVycm9ycyB3aGVuIHRoZSBkZXN0aW5hdGlvbgorICAgIGRpcmVjdG9yeSBpcyBub3QgZXhpc3RlbnQgb3Igd3JpdGFibGUuIENsb3NlczogIzU4MTU0NAorICAqIFByb3Blcmx5IGNvbXB1dGUgdGhlIGxvbmdlc3QgcGFja2FnZSBkZXNjcmlwdGlvbiBmcm9tIGFsbCB0byBiZSBkaXNwbGF5ZWQKKyAgICBvbiDigJxkcGtnLXF1ZXJ5IC0tbGlzdOKAnSwgc28gdGhhdCBpdCBkb2VzIG5vdCBnZXQgaW5jb3JyZWN0bHkgdHJpbW1lZC4KKyAgKiBDb25zaXN0ZW50bHkgdXNlIGVhcmxpZXIvbGF0ZXIgaW5zdGVhZCBvZiBzbWFsbGVyL2JpZ2dlciB3aGVuIGRlc2NyaWJpbmcKKyAgICBjb21wYXJpc29uIHJlbGF0aW9uc2hpcHMuIENsb3NlczogIzU4NzY0MQorICAqIFN0b3AgZXhwb3J0aW5nIERQS0dfTElCRElSIHRvIG1haW50YWluZXIgc2NyaXB0cywgbm8gbmVlZCBmb3IgaXQgYW55bW9yZS4KKyAgKiBBc3NpZ24gY29ycmVjdCBTRSBMaW51eCBsYWJlbCBvbiBub24tcmVndWxhciBmaWxlcy4gQmFzZWQgb24gYSBwYXRjaCBieQorICAgIFJ1c3NlbGwgQ29rZXIgPHJ1c3NlbGxAY29rZXIuY29tLmF1Pi4gQ2xvc2VzOiAjNTg3OTQ5CisgICogQWRkIC1GIG9wdGlvbiB0byBkcGtnLWJ1aWxkcGFja2FnZSB0byBiZSBhYmxlIHRvIGV4cGxpY2l0bHkgc3BlY2lmeSBhCisgICAgbm9ybWFsIGZ1bGwgYnVpbGQgYW5kIGNvbWJpbmUgaXQgd2l0aCAtbmMuIENsb3NlczogIzU0Nzk5MworICAqIEFkZCBtaXNzaW5nIG1lbnRpb25zIG9mIHRoZSBCcmVha3MgZmllbGQgYWxvbmdzaWRlIHRoZSBvdGhlciBmaWVsZHMKKyAgICBzaGFyaW5nIHRoZSBzYW1lIHN5bnRheCBpbiBkZWItY29udHJvbCg1KS4KKyAgICBUaGFua3MgdG8gT3NhbXUgQW9raSA8b3NhbXVAZGViaWFuLm9yZz4uIENsb3NlczogIzU5MDQ3MgorCisgIFsgVXBkYXRlZCBwcm9ncmFtcyB0cmFuc2xhdGlvbnMgXQorICAqIENhdGFsYW4gKEd1aWxsZW0gSm92ZXIpLgorICAqIEdlcm1hbiAoU3ZlbiBKb2FjaGltKS4KKyAgKiBSdXNzaWFuIChZdXJpIEtvemxvdikuIENsb3NlczogIzU3OTE0OQorICAqIFN3ZWRpc2ggKFBldGVyIEtyZWZ0aW5nKS4KKworICBbIFVwZGF0ZWQgbWFuIHBhZ2UgdHJhbnNsYXRpb25zIF0KKyAgKiBHZXJtYW4gKEhlbGdlIEtyZXV0em1hbm4pLgorICAqIFJ1c3NpYW4gKFl1cmkgS296bG92KS4gQ2xvc2VzOiAjNTc5MTQ5CisgICogU3BhbmlzaCAoT21hciBDYW1wYWduZSkuCisgICogU3dlZGlzaCAoUGV0ZXIgS3JlZnRpbmcpLgorCisgIFsgTmV3IHNjcmlwdHMgdHJhbnNsYXRpb24gXQorICAqIFNwYW5pc2ggKE9tYXIgQ2FtcGFnbmUpLgorCisgIFsgVXBkYXRlZCBzY3JpcHRzIHRyYW5zbGF0aW9ucyBdCisgICogRnJlbmNoIChDaHJpc3RpYW4gUGVycmllcikuCisgICogR2VybWFuIChIZWxnZSBLcmV1dHptYW5uKS4gSW1wcm92ZWQgYnkgSG9sZ2VyIFdhbnNpbmcuCisgICogUnVzc2lhbiAoWXVyaSBLb3psb3YpLiBDbG9zZXM6ICM1NzkxNDkKKyAgKiBTd2VkaXNoIChQZXRlciBLcmVmdGluZykuCisKKyAtLSBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+ICBUaHUsIDI5IEp1bCAyMDEwIDA5OjM3OjM1ICswMjAwCisKK2Rwa2cgKDEuMTUuNy4yKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICBbIFJhcGhhw6tsIEhlcnR6b2cgXQorICAqIFVwZGF0ZSBkcGtnLWJ1aWxkZmxhZ3MgdG8gcmVzcGVjdCAkWERHX0NPTkZJR19IT01FIGFuZCB0byB1c2UKKyAgICAkWERHX0NPTkZJR19IT01FL2Rwa2cvYnVpbGRmbGFncy5jb25mIGJ5IGRlZmF1bHQuCisgICogVXBkYXRlIGRlYi1zdWJzdHZhcnMoNSkgdG8gY29kaWZ5IGhvdyB2YXJpYWJsZXMgY29udGFpbmluZyBtdWx0aXBsZQorICAgIGxpbmVzIG11c3QgYmUgbWFuYWdlZC4KKyAgKiBGaXggYm9vbGVhbiBldmFsdWF0aW9uIG9mIERwa2c6OlZlcnNpb24gc28gdGhhdCB2ZXJzaW9uIDAgZXZhbHVhdGVzIHRvCisgICAgZmFsc2UgYW5kIGRwa2ctc2hsaWJkZXBzIGNhbiBzdHJpcCB0aGUgbWluaW1hbCB2ZXJzaW9uIHNwZWNpZmljYXRpb24uCisgICAgQ2xvc2VzOiAjNTc5NzI0CisgICAgRG9jdW1lbnQgdGhpcyBiZWhhdmlvdXIgaW4gdGhlIEFQSSBhbmQgYWRkIG5vbi1yZWdyZXNzaW9uIHRlc3QgdG8gZW5zdXJlCisgICAgaXQncyBrZXB0LgorICAqIExldCBkcGtnLWJ1aWxkZmxhZ3MgZXJyb3Igb3V0IHdoZW4gYSByZXF1aXJlZCBwYXJhbWV0ZXIgaXMgbWlzc2luZy4KKyAgICBDbG9zZXM6ICM1Nzk3MjIKKyAgKiBBZGQgQnVnLVVidW50dSBmaWVsZCBpbiBERVAtMyB0ZW1wbGF0ZSBwcm92aWRlZCBpbiB0aGUgYXV0b21hdGljIGhlYWRlcgorICAgIG9mIHBhdGNoZXMgaW4gMy4wIChxdWlsdCkgc291cmNlIHBhY2thZ2VzLiBUaGFua3MgdG8gQmVuamFtaW4gRHJ1bmcKKyAgICA8YmRydW5nQHVidW50dS5jb20+IGZvciB0aGUgcGF0Y2guIENsb3NlczogIzU3ODAwMgorICAqIFVwZGF0ZSBkZWItb3ZlcnJpZGUoNSkgYnkgcmVtb3ZpbmcgcmVmZXJlbmNlcyB0byB1c2FnZSBvZiBzZWN0aW9ucworICAgIHRvIHBsYWNlIHRoZSBwYWNrYWdlcyBvbiB0aGUgbWlycm9ycyBhbmQgYnkgaW5kaWNhdGluZyB0aGF0IHRoZSBEZWJpYW4KKyAgICBwb2xpY3kgb2ZmZXJzIGEgbGlzdCBvZiBhbGxvd2VkIHZhbHVlcyBmb3Igc2VjdGlvbiBhbmQgcHJpb3JpdHkuCisgICAgQ2xvc2VzOiAjNTc1NDEwCisgICogVXBkYXRlIHJlZmVyZW5jZSB0byB0cmlnZ2Vycy50eHQuZ3ogaW4gZHBrZy10cmlnZ2VyKDEpIGFuZCBkZWItdHJpZ2dlcnMoNSkKKyAgICB0byBtYXRjaCB0aGUgbmV3IGxvY2F0aW9uLiBDbG9zZXM6ICM1ODA3NzQKKyAgKiBEcm9wIG1lbnRpb24gb2YgUEtHX0NPTkZJR19MSUJESVIgaW4gZHBrZy1idWlsZHBhY2thZ2UoMSksIHRoZSBmZWF0dXJlIGhhcworICAgIGJlZW4gcmVtb3ZlZCBpbiAxLjE1LjYuCisgICogUmVuYW1lIC91c3IvbGliL2Rwa2cvbWFpbnRzY3JpcHQtaGVscGVyIGludG8KKyAgICAvdXNyL2Jpbi9kcGtnLW1haW50c2NyaXB0LWhlbHBlciwgaXQgaXMgYSBwdWJsaWMgaW50ZXJmYWNlIGV2ZW4gaWYgd29ya2luZworICAgIGFyb3VuZCBrbm93biBsaW1pdGF0aW9ucy4KKyAgKiBBZGQgInN1cHBvcnRzIiBjb21tYW5kIHRvIGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyIHRvIGVuc3VyZSB0aGUgd2FudGVkCisgICAgY29tbWFuZCBpcyBzdXBwb3J0ZWQgYmVmb3JlIGNhbGxpbmcgaXQuCisKKyAgWyBHdWlsbGVtIEpvdmVyIF0KKyAgKiBBZGQgcG93ZXJwY3NwZSBzdXBwb3J0IHRvIG9zdGFibGUgYW5kIHRyaXBsZXR0YWJsZS4KKyAgICBUaGFua3MgdG8gU2ViYXN0aWFuIEFuZHJ6ZWogU2lld2lvciA8c2ViYXN0aWFuQGJyZWFrcG9pbnQuY2M+IGFuZAorICAgIEt5bGUgTW9mZmV0dCA8S3lsZS5ELk1vZmZldHRAYm9laW5nLmNvbT4uIENsb3NlczogIzU2ODEyMywgIzU3NTE1OAorICAqIEZpeCBkcGtnIC0tcm9vdCBieSBwcm9wZXJseSBzdHJpcHBpbmcgYWdhaW4gdGhlIHJvb3QgZGlyZWN0b3J5IGZyb20gdGhlCisgICAgcGF0aCBvZiB0aGUgbWFpbnRhaW5lciBzY3JpcHQgdG8gZXhlY3V0ZS4gQ2xvc2VzOiAjNTgwOTg0CisgICogT24gTGludXggdXNlIHN5bmMoKSBpbnN0ZWFkIG9mIGFuIGZzeW5jKCkgcGVyIGZpbGUgb24gZGVmZXJyZWQgZXh0cmFjdGlvbiwKKyAgICB0byB3b3JrYXJvdW5kIHBlcmZvcm1hbmNlIGRlZ3JhZGF0aW9uIG9uIGV4dDQuIENsb3NlczogIzU3ODYzNQorCisgIFsgR2VyZnJpZWQgRnVjaHMgXQorICAqIEZpeCBzeW50YXggZXJyb3IgaW4gZHBrZy1uYW1lLiBDbG9zZXM6ICM1ODEzMTUKKworIC0tIEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4gIFdlZCwgMTkgTWF5IDIwMTAgMDc6NTc6MTQgKzAyMDAKKworZHBrZyAoMS4xNS43LjEpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogRml4IGRwa2ctc291cmNlIC1iICh3aXRob3V0IC1pKSBmb3Igc291cmNlIHBhY2thZ2VzIDEuMC4gQ2xvc2VzOiAjNTc4NjkzCisgICAgSXQgd2FzIGVycm9uZW91c2x5IGlnbm9yaW5nIGFsbCBjaGFuZ2VzIGJlY2F1c2UgdGhlIGlnbm9yZSByZWdleCB3YXMKKyAgICB3cm9uZyAoZHVlIHRvIHRoZSBjaGFuZ2UgdG8gaWdub3JlIGRlYmlhbi9zb3VyY2UvbG9jYWwtb3B0aW9ucykuCisgICogQWRkIG1pc3NpbmcgY2FsbCB0byB0ZXh0ZG9tYWluKCkgaW4gZHBrZy1tZXJnZWNoYW5nZWxvZ3MgdG8gbWFrZQorICAgIHRyYW5zbGF0aW9ucyB3b3JrLgorCisgLS0gUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPiAgVGh1LCAyMiBBcHIgMjAxMCAwODowNToyMCArMDIwMAorCitkcGtnICgxLjE1LjcpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgIFsgUmFwaGHDq2wgSGVydHpvZyBdCisgICogQ2xhcmlmeSB0aGUgcGxhbiBjb25jZXJuaW5nIGRwa2ctc291cmNlLCBkZWJpYW4vc291cmNlL2Zvcm1hdCBhbmQKKyAgICB0aGUgZGVmYXVsdCBzb3VyY2UgZm9ybWF0IGluIGRwa2ctc291cmNlKDEpLiBBZGQgYSB3YXJuaW5nCisgICAgaW4gZHBrZy1zb3VyY2UgdG8gaW52aXRlIHBlb3BsZSB0byBhbHdheXMgY3JlYXRlIGRlYmlhbi9zb3VyY2UvZm9ybWF0LgorICAgIFdlIGRlcHJlY2F0ZSB0aGUgZmFsbGJhY2sgdG8gIjEuMCIgKGl0J3MgdGhlcmUgZm9yIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5CisgICAgb25seSkgYW5kIGRlYmlhbi9zb3VyY2UvZm9ybWF0IGlzIGdvaW5nIHRvIGJlIG1hbmRhdG9yeSBhdCBzb21lIHBvaW50IGluCisgICAgdGhlIGZ1dHVyZS4gQ2xvc2VzOiAjNTUzOTI4CisgICogQWRkIC5naXRhdHRyaWJ1dGVzIHRvIGxpc3Qgb2YgZmlsZXMgaWdub3JlZCBieSBkcGtnLXNvdXJjZS4KKyAgKiBEb2N1bWVudCBtb3N0IGNvbW1vbiB3YXJuaW5ncyBhbmQgZXJyb3JzIG9mIGRwa2ctc291cmNlIGluIGl0cyBtYW51YWwKKyAgICBwYWdlLgorICAqIExldCBkcGtnLXNvdXJjZSByZWFkIG9wdGlvbnMgZnJvbSBkZWJpYW4vc291cmNlL2xvY2FsLW9wdGlvbnMgYXMgd2VsbCBidXQKKyAgICBkbyBub3QgaW5jbHVkZSB0aGF0IGZpbGUgaW4gdGhlIGdlbmVyYXRlZCBzb3VyY2UgcGFja2FnZS4KKyAgKiBJbXByb3ZlIGV4cGxhbmF0aW9uIG9mIC0tYWxsIG9wdGlvbiBpbiBkcGtnLXBhcnNlY2hhbmdlbG9nKDEpLiBUaGFua3MgdG8KKyAgICBKYXJpIEFhbHRvLiBDbG9zZXM6ICM1NzU3MDYKKyAgKiBGaXggZHBrZyB0byBub3QgbG9zZSBwYWNrYWdlIG1ldGFkYXRhIG9uIGZpbGVzeXN0ZW1zIHdoZXJlIHJlYWRkaXIoKQorICAgIHJldHVybnMgbmV3IGZpbGVzIGFkZGVkIGFmdGVyIHRoZSBvcGVuZGlyKCkgY2FsbCwgYnRyZnMgaW4gcGFydGljdWxhcgorICAgIHRyaWdnZXJlZCB0aGUgcHJvYmxlbWF0aWMgYmVoYXZpb3VyLiBDbG9zZXM6ICM1NzU4OTEKKyAgKiBUaWd0aGVuIHRoZSByZWdleCB1c2VkIGJ5IGRwa2ctc291cmNlIHRvIG1hdGNoIHRoZSBjb21wb25lbnQgbmFtZSBvZgorICAgIHN1cHBsZW1lbnRhcnkgdGFyYmFsbHMgc28gdGhhdCB1bmRlcnNjb3JlIChfKSBhcmUgbm90IGFsbG93ZWQgYXMgaXQgd2FzCisgICAgc3VwcG9zZWQgdG8gYmUuCisgICogSW50cm9kdWNlIGEgbmV3IHNjcmlwdCBjYWxsZWQgZHBrZy1idWlsZGZsYWdzOiBpdHMgcHVycG9zZSBpcyB0byByZXRyaWV2ZQorICAgIGNvbXBpbGF0aW9uIGZsYWdzIGFuZCBpdCBzaG91bGQgYmUgdXNlZCB3aXRoaW4gZGViaWFuL3J1bGVzIHRvIHBhc3MKKyAgICB0aGUgcmlnaHQgY29tcGlsYXRpb24gZmxhZ3MgdG8gdGhlIGJ1aWxkIHByb2Nlc3MuIGRwa2ctYnVpbHBhY2thZ2Ugc3RpbGwKKyAgICBleHBvcnRzIHRoZW0gdG8gbm90IGJyZWFrIHBhY2thZ2VzIGN1cnJlbnRseSByZWx5aW5nIG9uIHRoZW0gYnV0IHBhY2thZ2VzCisgICAgc2hvdWxkIG5vdyBzdGFydCB1c2luZyBkcGtnLWJ1aWxkZmxhZ3MgaW5zdGVhZC4gQ2xvc2VzOiAjNTYwMDcwCisgICogRm9yIFVidW50dSBzZXQgZGVmYXVsdCB2YWx1ZSBvZiBMREZMQUdTIHRvIC1XbCwtQnN5bWJvbGljLWZ1bmN0aW9ucy4KKyAgKiBDbGVhbnVwIHNvbWUgb2xkIENvbmZsaWN0cy9SZXBsYWNlcywgdGhhbmtzIHRvIEhlbGdlIEtyZXV0em1hbm4uCisgICogTW9kaWZ5IGRzZWxlY3QgdG8gdHJlYXQgYWxsIHVua25vd24gcGFja2FnZSBhcyBrbm93biBhbmQgbWFya2VkIGZvciBwdXJnZS4KKyAgICBUaGlzIGlzIGEgdGVtcG9yYXJ5IHdvcmstYXJvdW5kIHNvIHRoYXQgZHNlbGVjdCBkb2Vzbid0IHRyeSB0byByZWluc3RhbGwKKyAgICBwYWNrYWdlcyBvZiBwcmlvcml0eSA+IHN0YW5kYXJkIHRoYXQgd2VyZSByZW1vdmVkIG9yIG5vdCBpbnN0YWxsZWQuIFRoYW5rcworICAgIHRvIFJvYmVydCBMdWJlcmRhIGZvciB0aGUgcGF0Y2guIENsb3NlczogIzU1OTUxOSwgIzU1Njg4OQorICAqIGRwa2cgbm93IGV4cG9ydHMgRFBLR19NQUlOVFNDUklQVF9OQU1FIHRvIG1haW50YWluZXIgc2NyaXB0cyB3aXRoIHRoZQorICAgIHR5cGUgb2YgbWFpbnRhaW5lciBzY3JpcHQgY3VycmVudGx5IHJ1bm5pbmcgKHByZWluc3QsIHBvc3RpbnN0LCBwcmVybSwKKyAgICBwb3N0cm0pLiBDbG9zZXM6ICM1NDY1NzcKKyAgKiBkcGtnIG5vdyBleHBvcnRzIERQS0dfTElCRElSIHRvIG1haW50YWluZXIgc2NyaXB0cyBwb2ludGluZyB0byB0aGUKKyAgICBwcml2YXRlIGRpcmVjdG9yeSBjb250YWluaW5nIGludGVybmFsIHByb2dyYW1zIGxpa2UgdGhlIHVwY29taW5nCisgICAgbWFpbnRzY3JpcHQtaGVscGVyLgorICAqIEFkZCAkRFBLR19MSUJESVIvbWFpbnRzY3JpcHQtaGVscGVyIHByb2dyYW0gdGhhdCBjYW4gYmUgdXNlZCBpbgorICAgIG1haW50YWluZXIgc2NyaXB0cyB0byBwZXJmb3JtIGNvbW1vbiBvcGVyYXRpb25zIHdvcmtpbmcgYXJvdW5kCisgICAgY3VycmVudCBkcGtnIGxpbWl0YXRpb25zOiBmaXJzdCB2ZXJzaW9uIHN1cHBvcnRzIHJlbW92aW5nIG9ic29sZXRlCisgICAgY29uZmZpbGVzIGFuZCByZW5hbWluZyBjb25mZmlsZXMuIENsb3NlczogIzUxNDMxNgorICAqIEZpeCAiZHBrZy1zY2Fuc291cmNlcyAtZSIsIGl0IHdhcyBjYWxsaW5nIGEgbm9uLWV4aXN0aW5nIGZ1bmN0aW9uLgorICAgIENsb3NlczogIzU3ODE2MgorICAqIEFkZCBuZXcgc2NyaXB0IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzIHRvIGRvIDMtd2F5IG1lcmdlcyBvZiBEZWJpYW4KKyAgICBjaGFuZ2Vsb2dzLiBBZGQgbGliYWxnb3JpdGhtLW1lcmdlLXBlcmwgdG8gUmVjb21tZW5kcyBmb3IgdGhlCisgICAgYmVuZWZpdCBvZiB0aGlzIHNjcmlwdC4KKworICBbIENvbGluIFdhdHNvbiBdCisgICogTW9kZXJuIHRhciBmaWxlcyB0eXBpY2FsbHkgdXNlIE5vcm1hbEZpbGUxIHJhdGhlciB0aGFuIE5vcm1hbEZpbGUwIGZvcgorICAgIGZpbGUgb2JqZWN0cy4gQSB0eXBvIG1lYW50IHRoYXQgdGhlIGZvcm1lciBuZXZlciB0cmlnZ2VyZWQgcmVuYW1lCisgICAgZGVmZXJyYWwuIENsb3NlczogIzU3Nzc1NgorICAqIFVzZSB0aGUgbmV3IGxpc3Qgb2YgZmlsZXMgb24gcmVuYW1lIGRlZmVycmFsIGluc3RlYWQgb2Ygb2xkIG9uZSwgc28gdGhhdAorICAgIG5ld2x5IGFkZGVkIGZpbGVzIGdldCBpbnN0YWxsZWQuCisKKyAgWyBHdWlsbGVtIEpvdmVyIF0KKyAgKiBSZXBvcnQgZGVmZXJyZWQgdHJpZ2dlciBlcnJvcnMgb24gc3RhdHVzLWZkLiBDbG9zZXM6ICM1NzQ1OTkKKyAgICBUaGFua3MgdG8gTWljaGFlbCBWb2d0IDxtaWNoYWVsLnZvZ3RAdWJ1bnR1LmNvbT4uCisgICogV2hlbiBjcmVhdGluZyBoYXJkIGxpbmtzIHRvIG5vcm1hbCBmaWxlcyBvbiBleHRyYWN0aW9uIHVzZSB0aGUgLmRwa2ctbmV3CisgICAgZmlsZW5hbWUgZm9yIHNvdXJjZSBhcyB0aGUgZmlsZSBpcyBub3QgeWV0IGluIHBsYWNlIGR1ZSB0byB0aGUgcmVuYW1lCisgICAgZGVmZXJyYWwuIFRoYW5rcyB0byBDb2xpbiBXYXRzb24gZm9yIHRoZSBpbml0aWFsIHBhdGNoLgorICAqIERvIG5vdCBvdXRwdXQgdGhlIFBhY2thZ2UtVHlwZSBmaWVsZCBvbiB1ZGViLgorICAqIEZpeCB2ZXJzaW9uZWQgUmVwbGFjZXMgdG8gbm90IHByb2R1Y2UgZmlsZSBvdmVyd3JpdGUgZXJyb3JzIG9uIGRvd25ncmFkZXMuCisgICAgQ2xvc2VzOiAjNTY4NTY2CisgICogRml4IGluc3RhbGxhdGlvbiBvZiByZXBsYWNlZCBhbmQgcmVwbGFjaW5nIHBhY2thZ2VzIGluIHJldmVyc2Ugb3JkZXIKKyAgICAoZmlyc3QgdGhlIHJlcGxhY2luZyB0aGVuIHRoZSByZXBsYWNlZCkgZm9yIHdoaWNoIHRoZSByZXBsYWNlZCBwYWNrYWdlCisgICAgaXMgc3VwcG9zZWQgdG8gZ2V0IGRpc2FwcGVhcmVkLCB0byBkaXNhcHBlYXIgdGhlIGNvcnJlY3QgcGFja2FnZSBhbmQgbm90CisgICAgbG9zZSB0cmFjayBvZiB0aGUgb3duZXJzaGlwIG9mIHRoZSByZXBsYWNlZCBmaWxlcy4KKworICBbIFVwZGF0ZWQgZHBrZyB0cmFuc2xhdGlvbnMgXQorICAqIEdlcm1hbiAoU3ZlbiBKb2FjaGltKS4KKworICBbIFVwZGF0ZWQgZHNlbGVjdCB0cmFuc2xhdGlvbnMgXQorICAqIEdlcm1hbiAoU3ZlbiBKb2FjaGltKS4KKworICBbIFVwZGF0ZWQgbWFuIHBhZ2UgdHJhbnNsYXRpb25zIF0KKyAgKiBHZXJtYW4gKEhlbGdlIEtyZXV0em1hbm4pLgorCisgIFsgVXBkYXRlZCBzY3JpcHRzIHRyYW5zbGF0aW9ucyBdCisgICogR2VybWFuIChIZWxnZSBLcmV1dHptYW5uKS4KKworIC0tIEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4gIFdlZCwgMjEgQXByIDIwMTAgMDQ6MDU6NTUgKzAyMDAKKworZHBrZyAoMS4xNS42LjEpIGV4cGVyaW1lbnRhbDsgdXJnZW5jeT1sb3cKKworICBbIEd1aWxsZW0gSm92ZXIgXQorICAqIEZpeCB0d28gbWVtb3J5IGxlYWtzIGludHJvZHVjZWQgaW4gMS4xNS42LgorICAqIEFsd2F5cyB1c2UgQzk5IHZhcmlhZGljIG1hY3JvcywgYXMgdGhlIGJ1aWxkIHJlcXVpcmVzIHRoZW0gYW55d2F5LCB3ZQorICAgIGF2b2lkIGV4cG9zaW5nIHRoZSBjb25maWd1cmUgdmFyaWFibGUgSEFWRV9DOTkgb24gaW5zdGFsbGVkIGhlYWRlcnMuCisgICogVXNlIF9fYXR0cmlidXRlX18ga2V5d29yZCBkZXBlbmRpbmcgb24gY29tcGlsZXIgc3VwcG9ydCwgd2UgYXZvaWQKKyAgICBleHBvc2luZyB0aGUgY29uZmlndXJlIHZhcmlhYmxlIEhBVkVfQ19BVFRSSUJVVEUgb24gaW5zdGFsbGVkIGhlYWRlcnMuCisgICogRG8gbm90IGFsbG93IGEgLS1yZXRyeSBzY2hlZHVsZSBpbiBzdGFydC1zdG9wLWRhZW1vbiB3aGVyZSBmb3JldmVyIGlzCisgICAgdGhlIGxhc3QgaXRlbSwgYXMgaXQgbmVlZHMgc29tZXRoaW5nIHRvIHJlcGVhdCBvdmVyLiBDbG9zZXM6ICM1NzA5MzgKKyAgKiBTaG93IGRzZWxlY3QgZGVwZW5kZW5jeS9jb25mbGljdHMgcmVzb2x1dGlvbiBzY3JlZW4gYWdhaW4sIGJ5IHN3aXRjaGluZworICAgIHRoZSBjb2RlIHRvIHVzZSBTVEwncyBtaW4oKSBhbmQgbWF4KCkgaW5zdGVhZCBvZiBwcmVwcm9jZXNzb3IgbWFjcm9zLCB0bworICAgIGF2b2lkIG11bHRpcGxlIGV2YWx1YXRpb24gb2YgYXJndW1lbnRzLiBSZWdyZXNzaW9uIGludHJvZHVjZWQgaW4gMS4xNS42LgorICAgIEJhc2VkIG9uIGEgcGF0Y2ggYnkgUm9iZXJ0IEx1YmVyZGEgPHJvYmVydEBkZWJpYW4ub3JnPi4gQ2xvc2VzOiAjNTc0ODE2CisgICogRGVmZXIgdGhlIGZzeW5jIGFuZCByZW5hbWUgZm9yIG5vcm1hbCBmaWxlcyBpbiB0YXIgZXh0cmFjdGlvbiBzbyB0aGF0CisgICAgaXQncyBkb25lIGluIG9uZSBwYXNzIGFmdGVyd2FyZHMsIHRvIGF2b2lkIG1hc3NpdmUgSS9PIGRlZ3JhZGF0aW9uIGR1ZSB0bworICAgIHRoZSBzZXJpYWxpemF0aW9uIGZyb20gZWFjaCB3cml0ZSArIGZzeW5jLiBUaGlzIHJlc3RvcmVzIGV4dHJhY3Rpb24gdGltZXMKKyAgICB0byBudW1iZXJzIGNsb3NlciB0byB0aGUgb25lcyBiZWZvcmUgdGhlIGZzeW5jIHBhdGNoIGludHJvZHVjZWQgaW4gMS4xNS42LgorCisgIFsgUmFwaGHDq2wgSGVydHpvZyBdCisgICogQWNjZXB0IHNvdXJjZSBwYWNrYWdlcyB3aXRob3V0ICJGb3JtYXQiIGZpZWxkIGZvciBjb21wYXRpYmlsaXR5IHdpdGggdmVyeQorICAgIG9sZCBzb3VyY2UgcGFja2FnZXMuIFRoYW5rcyB0byBDb2xpbiBXYXRzb24gZm9yIHRoZSByZXBvcnQgYW5kIHRoZSBwYXRjaC4KKyAgICBDbG9zZXM6ICM1NzQwOTcKKworICBbIFVwZGF0ZWQgZHBrZyB0cmFuc2xhdGlvbnMgXQorICAqIEZyZW5jaCAoQ2hyaXN0aWFuIFBlcnJpZXIpLgorICAqIFN3ZWRpc2ggKFBldGVyIEtyZWZ0aW5nKS4KKworICBbIFVwZGF0ZWQgc2NyaXB0cyB0cmFuc2xhdGlvbnMgXQorICAqIFN3ZWRpc2ggKFBldGVyIEtyZWZ0aW5nKS4KKworIC0tIEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4gIFdlZCwgMjQgTWFyIDIwMTAgMTM6NTY6MjggKzAxMDAKKworZHBrZyAoMS4xNS42KSBleHBlcmltZW50YWw7IHVyZ2VuY3k9bG93CisKKyAgWyBSYXBoYcOrbCBIZXJ0em9nIF0KKyAgKiBkZWJpYW4vY29udHJvbDogQWRkIHRoZSBhY2NlbnQgb24gbXkgZmlyc3QgbmFtZS4KKyAgKiBQZXJsIEFQSSBjbGVhbnVwOgorICAgIC0gcmVuYW1lIERwa2c6OkRlcHMgZHVtcCgpIG1ldGhvZHMgaW50byBvdXRwdXQoWyRmaF0pLCBvdmVybG9hZCBzdHJpbmcKKyAgICAgIHJlcHJlc2VudGF0aW9uICgiJGRlcCIpIHRvIHByb3ZpZGUgdGhlIHJlc3VsdCBvZiAkZGVwLT5vdXRwdXQoKQorICAgIC0gcHJlZml4IHB1YmxpYyBmdW5jdGlvbnMgaW4gRHBrZzo6RGVwcyB3aXRoIGRlcHNfIGFuZCBleHBvcnQgdGhlbQorICAgICAgYnkgZGVmYXVsdAorICAgIC0gcmVuYW1lIERwa2c6OlNvdXJjZTo6Q29tcHJlc3NvciBpbiBEcGtnOjpDb21wcmVzc2lvbjo6UHJvY2VzcworICAgIC0gcmVuYW1lIERwa2c6OlNvdXJjZTo6Q29tcHJlc3NlZEZpbGUgaW4gRHBrZzo6Q29tcHJlc3Npb246OkZpbGVIYW5kbGUKKyAgICAgIGFuZCBjb21wbGV0ZWx5IHJlZGVzaWduIGl0cyBBUEkKKyAgICAtIHVwZGF0ZSBEcGtnOjpDb21wcmVzc2lvbidzIEFQSSB0byB1c2UgY29tcHJlc3Npb25fKiBmdW5jdGlvbnMKKyAgICAgIGluc3RlYWQgb2YgZ3JhbnRpbmcgZGlyZWN0IGFjY2VzcyB0byB2YXJpYWJsZXMsIGludGVncmF0ZQorICAgICAgdGhlcmUgbWFuYWdlbWVudCBvZiBkZWZhdWx0IGNvbXByZXNzaW9uCisgICAgLSBpbnRyb2R1Y2UgRHBrZzo6SW50ZXJmYWNlOjpTdG9yYWJsZSBhbmQgdXBkYXRlIG1hbnkgbW9kdWxlcworICAgICAgdG8gbWFrZSB1c2Ugb2YgaXQKKyAgICAtIHVwZGF0ZSBEcGtnOjpCdWlsZE9wdGlvbnMgdG8gcHJvdmlkZSBhbiBvYmplY3Qtb3JpZW50ZWQgaW50ZXJmYWNlCisgICAgLSB1cGRhdGUgRHBrZzo6Q2hlY2tzdW1zIHRvIHByb3ZpZGUgYW4gb2JqZWN0LW9yaWVudGVkIGludGVyZmFjZQorICAqIERyb3AgZGViaWFuLW1haW50YWluZXJzIGZyb20gU3VnZ2VzdHMgc2luY2UgaXQncyBvYnNvbGV0ZSwgdGhlCisgICAgY29ycmVzcG9uZGluZyBrZXlyaW5nIGlzIGluIGRlYmlhbi1rZXlyaW5nLgorICAqIE1lcmdlIHN1cHBvcnQgb2Ygc3ltYm9sIHBhdHRlcm5zIGluIGRwa2ctZ2Vuc3ltYm9scy4gVGhhbmtzIHRvCisgICAgTW9kZXN0YXMgVmFpbml1cyBmb3IgaGlzIHdvcmsgKHNlZSBmdXJ0aGVyIGZvciBtb3JlIGRldGFpbHMpLgorICAqIEFjY2VwdCBmaWxlbmFtZSB3aXRoIHNwYWNlcyBhbmQgY29sb24gaW4gdGhlIG91dHB1dCBvZiBvYmpkdW1wLgorICAgIFJlcXVpcmVkIHNvIHRoYXQgZHBrZy1zaGxpYmRlcHMgc3VwcG9ydCBzdWNoIGZpbGVzIHByb3Blcmx5LgorICAgIFRoYW5rcyB0byBSYXBoYcOrbCBHZWlzc2VydCBmb3IgdGhlIHBhdGNoLiBDbG9zZXM6ICM1NjU3MTIKKyAgKiBXaGVuIHVucGFja2luZyBhICIzLjAgKHF1aWx0KSIgc291cmNlIHBhY2thZ2UsIHRlbGwgcXVpbHQgd2hlcmUKKyAgICBwYXRjaGVzIGFyZSAodG8gYmUpIHN0b3JlZC4gUmVxdWlyZXMgcXVpbHQgPj0gMC40OC01IHRvIHdvcmsuCisgICAgQ2xvc2VzOiAjNTU3NjE5CisgICogRml4IHVwZGF0ZS1hbHRlcm5hdGl2ZXMgdG8gbm90IHRyeSB0byByZWluc3RhbGwgYW4gdW5rbm93biBhbHRlcm5hdGl2ZQorICAgIHdoZW4gdGhlIGxpbmsgZ3JvdXAgaXMgYnJva2VuLCBpbnN0ZWFkIHN3aXRjaCB0byB0aGUgYmVzdCBjaG9pY2UgaW4KKyAgICBhdXRvbWF0aWMgbW9kZS4gQ2xvc2VzOiAjNTY2NDA2CisgICogRG9uJ3QgcmV0dXJuIGR1cGxpY2F0ZSBidWcgbnVtYmVycyBpbiBMYXVuY2hwYWQtQnVncy1GaXhlZDouCisgICAgVGhhbmtzIHRvIEJyaWFuIE11cnJheSA8YnJpYW5AdWJ1bnR1LmNvbT4gZm9yIHRoZSByZXBvcnQKKyAgICBhbmQgdGhlIHBhdGNoLiBDbG9zZXM6ICM1Njk2MTgKKyAgKiBBZGQgJFZFUlNJT04gbnVtYmVycyB0byBhbGwgcGVybCBtb2R1bGVzLiBDbG9zZXM6ICM0NjUyNTYKKyAgICAxLjAwIGFuZCBoaWdoZXIgbWVhbnMgdGhhdCB0aGUgQVBJIHNob3VsZCBiZSBzdGFibGUKKyAgKiBXaGlsZSBwYXJzaW5nIGRpZmYncyBvdXRwdXQsIGFjY2VwdCBhbnkgc2VudGVuY2UgdGhhdCBjb250YWlucyB0aGUgd29yZAorICAgIGRpZmZlciAoYXMgc3BlY2lmaWVkIGJ5IFBPU0lYKSB0byBpZGVudGlmeSB0aGF0IGJpbmFyeSBmaWxlcyBjb3VsZCBub3QgYmUKKyAgICBjb21wYXJlZC4gQ2xvc2VzOiAjNTcwMDA4CisgICogZHBrZy1nZW5jb250cm9sIGRvZXMgbm8gbG9uZ2VyIGFjY2VwdCBhcmNoLXNwZWNpZmljIGRlcGVuZGVuY2llcyBpbgorICAgIGFyY2g6IGFsbCBwYWNrYWdlcy4gQ2xvc2VzOiAjNTYwMDcxCisgICogZHBrZy1nZW5jb250cm9sIG5vIGxvbmdlciB3YXJucyBpZiBhIHN1YnN0aXR1dGlvbiB2YXJpYWJsZSBwcm92aWRlZCBieSAtVgorICAgIGlzIG5vdCB1c2VkICh0aGUgd2FybmluZyBpcyBtZWFudCB0byBjYXRjaCB1bnVzZWQgc3Vic3RpdHV0aW9ucyBjb21pbmcKKyAgICBmcm9tIHRoZSBmaWxlLCB0aG9zZSBhcmUgcGFja2FnZSBzcGVjaWZpYyB3aXRoIGRlYmhlbHBlcikuIENsb3NlczogIzU1NzEzMworICAqIGRwa2ctZ2VuY29udHJvbCBub3cgaW5kaWNhdGVzIHdoaWNoIHBhY2thZ2UgaXMgY29uY2VybmVkIGJ5IHRoZSBzdWJzdHZhcnMKKyAgICB3YXJuaW5nIHRoYXQgaXQgZGlzcGxheXMuIENsb3NlczogIzU2NjgzNworICAqIGRwa2ctYnVpbGRwYWNrYWdlIG5vdyBzdXBwb3J0cyBvcHRpb25zIC0tc291cmNlLW9wdGlvbj08b3B0PiBhbmQKKyAgICAtLWNoYW5nZXMtb3B0aW9uPTxvcHQ+IHRvIGZvcndhcmQgYXJiaXRyYXJ5IG9wdGlvbnMgdG8gZHBrZy1zb3VyY2UgYW5kCisgICAgZHBrZy1nZW5jaGFuZ2VzIHJlc3BlY3RpdmVseS4gQ2xvc2VzOiAjNTY2MjMwCisgICogVGhlIC1UIG9wdGlvbiBvZiBkcGtnLXtzb3VyY2UsZ2VuY29udHJvbCxnZW5jaGFuZ2VzfSBjYW4gbm93IGJlIHVzZWQKKyAgICBtdWx0aXBsZSB0aW1lcyB0byByZWFkIHN1YnN0aXR1dGlvbiB2YXJpYWJsZXMgZnJvbSBtdWx0aXBsZSBmaWxlcy4KKyAgICBDbG9zZXM6ICMzNjMzMjMKKyAgKiBkcGtnLXNvdXJjZSBub3cgc3VwcG9ydHMgYW4gb3B0aW9uIC0tY3JlYXRlLWVtcHR5LW9yaWcgaW4gZm9ybWF0cworICAgICIyLjAiIGFuZCAiMy4wIChxdWlsdCkiIHRvIGF1dG8tY3JlYXRlIHRoZSBtYWluIG9yaWdpbmFsIHRhcmJhbGwgd2hlbgorICAgIHRoZXJlIGFyZSBzdXBwbGVtZW50YXJ5IHRhcmJhbGxzLiBUaGlzIG1ha2VzIGl0IGVhc2llciB0byBidW5kbGUKKyAgICBtdWx0aXBsZSBzb2Z0d2FyZSB0b2dldGhlci4gQ2xvc2VzOiAjNTU0NDg4CisgICogZHBrZy1zb3VyY2Ugc3VwcG9ydHMgbG9uZyBvcHRpb24gbmFtZXMgLS1kaWZmLWlnbm9yZSBhbmQgLS10YXItaWdub3JlIGZvcgorICAgIC1pIGFuZCAtSS4gQSBuZXcgb3B0aW9uIC0tZXh0ZW5kLWRpZmYtaWdub3JlIGlzIGludHJvZHVjZWQuIFRob3NlIG9wdGlvbnMKKyAgICBjYW4gdGh1cyBub3cgYmUgdXNlZCBpbiBkZWJpYW4vc291cmNlL29wdGlvbnMuCisgICogR2VuZXJhdGUgbWFudWFsIHBhZ2VzIGZvciBwZXJsIG1vZHVsZXMuCisgICogSW50cm9kdWNlIHRoZSBsaWJkcGtnLXBlcmwgcGFja2FnZSBhbmQgY2xhcmlmeSBpdHMgc3RhdHVzIGluIFJFQURNRS5hcGkuCisgICogVXBkYXRlIFN0YW5kYXJkcy1WZXJzaW9uIHRvIDMuOC40IChubyBjaGFuZ2VzIG5lZWRlZCkuCisgICogRHJvcCB1bnVzZWQgbGludGlhbiBvdmVycmlkZSBmb3IgYXJjaC1kZXAtcGFja2FnZS1oYXMtYmlnLXVzci1zaGFyZSBvbgorICAgIGRzZWxlY3QuCisgICogVGhlIHJld3JpdHRlbiBEcGtnOjpDaGVja3N1bXMgZGVhbHMgcHJvcGVybHkgd2l0aCBmaWxlbmFtZXMgd2l0aAorICAgIHNwYWNlcy4gQ2xvc2VzOiAjNTcyMDMwCisgICogZHBrZy1zb3VyY2UgZG9lcyBubyBsb25nZXIgZmFsbGJhY2sgdG8gb3RoZXIgc291cmNlIGZvcm1hdHMgaWYgdGhlCisgICAgcmVxdWVzdGVkIG9uZSBpcyBub3QgdXNhYmxlLiBDbG9zZXM6ICM1NTc0NTkKKyAgKiBNb2RpZnkgZHBrZy1zb3VyY2UgdG8gZXJyb3Igb3V0IHdoZW4gaXQgd291bGQgYXBwbHkgcGF0Y2hlcyBjb250YWluaW5nCisgICAgaW5zZWN1cmUgcGF0aHMgKHdpdGggIi8uLi8iKSBhbmQgYWxzbyBlcnJvciBvdXQgd2hlbiBpdCB3b3VsZCBhcHBseSBhCisgICAgcGF0Y2ggdGhyb3VnaCBhIHN5bWxpbmsuIFRob3NlIGNoZWNrcyBhcmUgcmVxdWlyZWQgYXMgcGF0Y2ggd2lsbCBoYXBwaWx5CisgICAgbW9kaWZ5IGZpbGVzIG91dHNpZGUgb2YgdGhlIHRhcmdldCBkaXJlY3RvcnkgYW5kIHVucGFja2luZyBhIHNvdXJjZSBwYWNrYWdlCisgICAgc2hvdWxkIG5vdCBiZSBhYmxlIHRvIGhhdmUgYW55IHNpZGUtZWZmZWN0IG91dHNpZGUgb2YgdGhlIHRhcmdldAorICAgIGRpcmVjdG9yeS4gRml4ZXMgQ1ZFLTIwMTAtMDM5Ni4KKyAgKiBBbHNvIGVycm9yIG91dCB3aGVuIHRoZSBxdWlsdCBzZXJpZXMgY29udGFpbnMgYSBwYXRoIHdpdGggIi8uLi8iIGFzIHRoaXMKKyAgICBjYW4gY2F1c2UgcGF0Y2ggdG8gY3JlYXRlIGZpbGVzIG91dHNpZGUgb2YgdGhlIHNvdXJjZSBwYWNrYWdlIGR1ZQorICAgIHRvIHRoZSAtQiAucGMvJHBhdGggb3B0aW9uIHRoYXQgaXQgZ2V0cy4KKworICBbIEd1aWxsZW0gSm92ZXIgXQorICAqIEhhbmRsZSBhcmd1bWVudCBwYXJzaW5nIGluIGRwa2ctY2hlY2tidWlsZGRlcHMgYW5kIGRwa2ctc2NhbnBhY2thZ2VzCisgICAgaW4gYSB3YXkgY29uc2lzdGVudCB3aXRoIHRoZSByZXN0IG9mIHRoZSB0b29scy4KKyAgKiBSZWNvZ25pemUgLS1oZWxwIGluIGFkZGl0aW9uIHRvIC1oIGluIGRwa2ctY2hlY2tidWlsZGRlcHMuCisgICogQWRkIGEgLS12ZXJzaW9uIG9wdGlvbiB0byBkcGtnLWNoZWNrYnVpbGRkZXBzLgorICAqIEltcHJvdmUgYW5kIG1hcmsgbW9yZSBtZXNzYWdlcyBpbiB3cml0ZWRiKCkgdG8gbWFrZSB0cmFuc2xhdG9ycyBsaWZlcworICAgIGVhc2llci4gQ2xvc2VzOiAjNDA4NTI1CisgICogSW1wcm92ZSB1cGRhdGUtYWx0ZXJuYXRpdmVzIC0tZGlzcGxheSBvdXRwdXQgdG8gdXNlIHR3byBsZWFkaW5nIHNwYWNlcworICAgIGZvciBjdXJyZW50IGxpbmsgYW5kIHNsYXZlIGluZm9ybWF0aW9uLiBVc2Ugc2luZ2xlIHF1b3RlcyBmb3IgYm90aCDigJxiZXN04oCdCisgICAgYW5kIHRoZSBhbHRlcm5hdGl2ZSBpdCdzIHBvaW50aW5nIHRvLiBDbG9zZXM6ICM1NDkxNjcKKyAgKiBSZWZlciB0byDigJxoYWxmIGNvbmZpZ3VyZWTigJ0gaW5zdGVhZCBvZiDigJxmYWlsZWQgY29uZmln4oCdIGluIMKrZHBrZy1xdWVyeSAtbMK7CisgICAgaGVhZGVyIGFuZCBkc2VsZWN0IHBhY2thZ2Ugc3RhdHVzIHByaW50aW5nIGZvciBjb25zaXN0ZW5jeS4KKyAgKiBNYWtlIOKAnGRwa2ctc3RhdG92ZXJyaWRlIC0tcXVpZXTigJ0gYWN0dWFsbHkgZG8gc29tZXRoaW5nLCBhbmQgcXVpZXNjZQorICAgIG1vc3Qgb2YgdGhlIGlub3F1b3VzIHdhcm5pbmcgbWVzc2FnZXMuIENsb3NlczogIzQwMzIxMQorICAqIE1ha2Ug4oCcZHBrZy1zdGF0b3ZlcnJpZGUgLS11cGRhdGUgLS1hZGTigJ0gZmFpbCBpZiBpdCBjYW5ub3QgdXBkYXRlIHRoZQorICAgIG1vZGUgYW5kIG93bmVyIG9mIHRoZSBmaWxlLiBUaGlzIHdvdWxkIGZhaWwgbGF0ZXIgb24gd2hlbiBkcGtnIGl0c2VsZgorICAgIGFwcGxpZXMgdGhlIG92ZXJyaWRlcywgc28gYmV0dGVyIHRvIHNpZ25hbCB0aGlzIGVhcmxpZXIuCisgICogQWRkIHNwYXJjNjQgdG8gY3B1dGFibGUuIFRoYW5rcyB0byBBdXJlbGllbiBKYXJubyA8YXVyZWwzMkBkZWJpYW4ub3JnPi4KKyAgICBDbG9zZXM6ICM1NjAwMTAKKyAgKiBEbyBub3QgYWxsb3cgZGl2ZXJ0aW5nIGEgZmlsZSB0byBpdHNlbGYsIHdoaWNoIG1ha2VzIHRoZSBmaWxlIHRvIGdldAorICAgIHJlbW92ZWQuIENsb3NlczogIzMxMjIwNgorICAqIE1ha2UgdGhlIGNoZWNrIGZvciBkdXBsaWNhdGUgZmllbGRzIGluIGEgc3RhbnphIGluIGxpYmRwa2cgYWN0dWFsbHkgd29yaywKKyAgICB3aGljaCBub3cgbWFrZXMgaXQgZmF0YWwsIGFzIHdhcyBpbnRlbmRlZCBvcmlnaW5hbGx5LiBUaGlzIHNob3VsZCBub3QKKyAgICBjYXVzZSBwcm9ibGVtcyBmb3IgYW55dGhpbmcgdXNpbmcgZHBrZy1kZXYgdG8gYnVpbGQgcGFja2FnZXMgYXMgdGhvc2UKKyAgICBhcmUgYWxyZWFkeSBmYXRhbCBvbiB0aGF0IGNhc2UuCisgICogQWRkIG5ldyBkZWItc3BsaXQoNSkgbWFuIHBhZ2UuCisgICogRml4IG1pc3NwZWxsaW5ncyBvZiDigJxleHBsaWNpdGx54oCdIGFsbCBvdmVyIHRoZSBwbGFjZS4KKyAgKiBOb3JtYWxpemUgYXIgbWVtYmVyIG5hbWVzIHdoZW4gcmVhZGluZyAocmVtb3ZpbmcgdHJhaWxpbmcgc3BhY2VzIGFuZAorICAgIHNsYXNoKSwgdGhpcyBhbGxvd3MgZGViLXNwbGl0IHBhY2thZ2VzIGJlIGNyZWF0ZWQgd2l0aCBHTlUgYXIuCisgICogVmFsaWRhdGUgY29tcHJlc3Npb24gbGV2ZWwgb24gZHBrZy1kZWIgYXJndW1lbnQgcGFyc2luZy4KKyAgKiBGaXggZXJyb3IgaGFuZGxpbmcsIGNsZWFuIHVwIGFuZCByZWZhY3RvciBjb21wcmVzc2lvbiBjb2RlLgorICAgIFRoYW5rcyB0byBKb25hdGhhbiBOaWVkZXIgZm9yIHNldmVyYWwgb2YgdGhlIHBhdGNoZXMuCisgICogRG8gbm90IHByaW50IHVuYW1iaWd1b3VzIGVwb2NoIG9uIGRwa2cgZmlsZSBvdmVyd3JpdGUgZXJyb3IuCisgICogUmVuYW1lIERwa2c6OklQQzo6Zm9ya19hbmRfZXhlYygpIHRvIERwa2c6OklQQzo6c3Bhd24oKS4KKyAgKiBDaGFuZ2UgZHBrZy1kZXYgdG8gRGVwZW5kIG9uIHBlcmwgaW5zdGVhZCBvZiBwZXJsNSBhbmQgcGVybC1tb2R1bGVzLgorICAqIEZpeCBzbWFsbCBtZW1vcnkgbGVha3MgcmVsYXRlZCB0byBzY2FuZGlyKCkgaW4gZHBrZy1kZWIgYW5kIGxpYmRwa2cuCisgICogRml4IGRwa2ctcXVlcnkgYW5kIGRwa2ctdHJpZ2dlciB0byBhY3R1YWxseSBwcmludCBhIHZlcnNpb24gb24gLS12ZXJzaW9uLgorICAqIEFsd2F5cyBzcGF3biBhIG5ldyBzaGVsbCBvbiBjb25mZmlsZSBwcm9tcHQsIGluc3RlYWQgb2Ygc3VwcG9ydGluZworICAgIHNlbGYgYmFja2dyb3VuZGluZywgcmVtb3ZlIERQS0dfTk9fVFNUUCBlbnZpcm9ubWVudCB2YXJpYWJsZSBzdXBwb3J0LgorICAgIENsb3NlczogIzM4MzM0CisgICogU2V0IERQS0dfU0hFTExfUkVBU09OLCBEUEtHX0NPTkZGSUxFX09MRCBhbmQgRFBLR19DT05GRklMRV9ORVcgZW52aXJvbm1lbnQKKyAgICB2YXJpYWJsZXMgd2hlbiBzcGF3bmluZyBhIHNoZWxsIGZvciBjb25mZmlsZSBleGFtaW5hdGlvbi4gQ2xvc2VzOiAjNjAzMjkKKyAgICBUaGFua3MgdG8gRGFuaWVsIE1hcnRpbiA8RGFuaWVsLk1hcnRpbkBqaHUuZWR1PiBmb3IgdGhlIGlkZWEuCisgICogQWRkIHN1cHBvcnQgZm9yIGRpc2FibGluZyB1cGRhdGUtYWx0ZXJuYXRpdmVzIGF0IGNvbmZpZ3VyZSB0aW1lIHVzaW5nCisgICAgLS13aXRob3V0LXVwZGF0ZS1hbHRlcm5hdGl2ZXMuCisgICogQWRkIHN1cHBvcnQgZm9yIGRpc2FibGluZyBpbnN0YWxsLWluZm8gYXQgY29uZmlndXJlIHRpbWUgdXNpbmcKKyAgICAtLXdpdGhvdXQtaW5zdGFsbC1pbmZvLgorICAqIFVwZGF0ZSBkZWJpYW4vY29weXJpZ2h0LgorICAqIFVzZSBEZWJpYW4gaW5zdGVhZCBvZiDigJhEZWJpYW4gR05VL0xpbnV44oCZIHdoZW4gcmVmZXJyaW5nIHRvIHRoZQorICAgIGRpc3RyaWJ1dGlvbi4KKyAgKiBPbiBkcGtnIC0tbm8tYWN0IHdpdGggLS1pbnN0YWxsLCAtLXVucGFjayBvciAtLXJlY29yZC1hdmFpbCwgYW5kCisgICAgZHBrZy1kZWIgLS1pbmZvIG9yIC0tZmllbGQgdXNlIG1rZHRlbXAoKSB0byBjcmVhdGUgYSB0ZW1wb3JhcnkgZGlyZWN0b3J5CisgICAgaW5zdGVhZCBvZiBpbnNlY3VyZSB0ZW1wbmFtKCkgb3IgdG1wbmFtKCkgZnVuY3Rpb25zLgorICAqIFJlbW92ZSAtLWxpY2Vuc2UgYW5kIC0tbGljZW5jZSBvcHRpb25zIGZyb20gdG9vbHMuCisgICogU2VjdXJlbHkgcmVtb3ZlIG5ld2x5IGluc3RhbGxlZCBmaWxlcyB3aGVuIHJvbGxpbmctYmFjayBhIGZhaWxlZCB1bnBhY2suCisgICogQ2hhbmdlIGRlZmF1bHQgbHptYSBjb21wcmVzc2lvbiBsZXZlbCBmcm9tIDkgdG8gNi4KKyAgICBUaGFua3MgdG8gSm9uYXRoYW4gTmllZGVyIGZvciB0aGUgaW5pdGlhbCBwYXRjaC4KKyAgKiBBZGQgc3VwcG9ydCBmb3IgeHogY29tcHJlc3NlZCBkYXRhLnRhciBtZW1iZXIgb2YgYmluYXJ5IHBhY2thZ2VzLiBBZGQKKyAgICB4ei11dGlscyB0byBkcGtnJ3MgUHJlLURlcGVuZHMuIENsb3NlczogIzU0MjE2MAorICAgIFRoYW5rcyB0byBKb25hdGhhbiBOaWVkZXIgZm9yIHRoZSBpbml0aWFsIHBhdGNoLgorICAqIFVzZSB4eiBjb21tYW5kIHRvIGhhbmRsZSBsem1hIGNvbXByZXNzZWQgZmlsZXMgaW4gZHBrZyBhbmQgZHBrZy1kZXYuCisgICAgVGhpcyByZW1vdmVzIHRoZSBsem1hIHBhY2thZ2UgZnJvbSBib3RoIGRwa2cgYW5kIGRwa2ctZGV2IGRlcGVuZGVuY2llcy4KKyAgKiBEbyBub3Qgc2V0IFBLR19DT05GSUdfTElCRElSIGluIGRwa2ctYnVpbGRwYWNrYWdlIHdoZW4gY3Jvc3MtYnVpbGRpbmcuCisgICAgVGhlIHByb3BlciBzb2x1dGlvbiB0byB0aGlzIGlzIHRvIGxldCB0aGUgYnVpbGQgc3lzdGVtIGNob29zZSB0aGUKKyAgICBhcHByb3ByaWF0ZSBwa2ctY29uZmlnIGJpbmFyeSBmb3IgdGhlIGJ1aWxkIG9yIGhvc3Qgc3lzdGVtIGluIHRoZSBzYW1lCisgICAgd2F5IHBrZy5tNCBpcyBoYW5kbGluZyBpdCBub3cuIENsb3NlczogIzU1MTExOAorICAqIER5bmFtaWNhbGx5IGxpbmsgYWdhaW5zdCBhbGwgZXh0ZXJuYWwgbGlicmFyaWVzLiBUaGlzIGluY2x1ZGVzIGxpYmJ6MgorICAgIGFuZCB6bGliIGZvciBkcGtnLWRlYiBhbmQgYW5kIGxpYnNlbGludXggZm9yIGRwa2cgb24gR05VL0xpbnV4LgorICAqIE1hcmsgdGhlIGxpYmRwa2cuYSBBUEkgYXMgdm9sYXRpbGUgYW5kIHJlcXVpcmUgYW55IHBvc3NpYmxlIHVzZXJzIHRvIHNldAorICAgIExJQkRQS0dfVk9MQVRJTEVfQVBJIHRvIGFja25vd2xlZGdlIHRoYXQgZmFjdC4KKyAgKiBBZGQgYSBuZXcgbGliZHBrZy1kZXYgcGFja2FnZSB3aXRoIHRoZSBoZWFkZXJzIGFuZCB0aGUgc3RhdGljIGxpYnJhcnksCisgICAgYWx0aG91Z2ggaXRzIEFQSSBzaG91bGQgYmUgY29uc2lkZXJlZCB2b2xhdGlsZS4KKyAgKiBSZW9yZ2FuaXplIHRoZSBkb2MgY29udGVudHMgdGhhdCBnb2VzIGludG8gZWFjaCBwYWNrYWdlOgorICAgIC0gUkVBRE1FLm11bHRpY2Qgb25seSBpbiBkc2VsZWN0LgorICAgIC0gUkVBRE1FLmFwaSBvbmx5IGluIGRldmVsb3BtZW50IHBhY2thZ2VzLCBkcGtnLWRldiBhbmQgbGliZHBrZy1kZXYuCisgICAgLSB0cmlnZ2Vycy50eHQgb25seSBpbiBkcGtnLWRldi4KKyAgKiBNb3ZlIHNvdXJjZS5saW50aWFuLW92ZXJyaWRlcyB0byBkZWJpYW4vc291cmNlL2xpbnRpYW4tb3ZlcnJpZGVzLgorICAqIFN3aXRjaCBTRSBMaW51eCBzdXBwb3J0IHRvIGV4cGxpY2l0bHkgc2V0IHBhdGggY29udGV4dC4gVGhpcyBmaXhlcyB0aGUKKyAgICBtaXNsYWJlbGluZyBvZiBmaWxlcyB1bmRlciA8YWRtaW5kaXI+IG9uIGNvbmZmaWxlIGV4dHJhY3Rpb24gb3Igb24gdW5wYWNrCisgICAgZXJyb3JzLCBkdWUgdG8gaW1wcm9wZXIgZGVmYXVsdCBjb250ZXh0IHJlc3RvcmF0aW9uLiBDbG9zZXM6ICM0OTg0MzgKKyAgKiBVc2UgRklFTUFQIHdoZW4gYXZhaWxhYmxlIChvbiBMaW51eCBiYXNlZCBzeXN0ZW1zKSB0byBzb3J0IHRoZSAubGlzdAorICAgIGZpbGVzIGxvYWRpbmcgb3JkZXIuIFdpdGggYSBjb2xkIGNhY2hlIGl0IGltcHJvdmVzIHVwIHRvIGEgNzAlLgorICAgIFRoYW5rcyB0byBNb3J0ZW4gSHVzdHZlaXQgPG1vcnRlbkBkZWJpYW4ub3JnPi4KKyAgKiBXaGVuIEZJRU1BUCBpcyBub3QgYXZhaWxhYmxlIHVzZSBwb3NpeF9mYWR2aXNlKCkgdG8gc3RhcnQgcHJlbG9hZGluZyB0aGUKKyAgICAubGlzdCBmaWxlcyBiZWZvcmUgbG9hZGluZyB0aGVtLiBXaXRoIGEgY29sZCBjYWNoZSBpdCBpbXByb3ZlcyB1cCB0byA0MCUuCisgICAgVGhhbmtzIHRvIFN0ZWZhbiBGcml0c2NoIDxzZkBzZnJpdHNjaC5kZT4uIENsb3NlczogIzU1NzU2MAorICAqIENhbGwgZnN5bmMoMikgYWZ0ZXIgd3JpdGluZyBmaWxlcyBvbiBkaXNrLCB0byBnZXQgdGhlIGF0b21pY2l0eQorICAgIGd1YXJhbnRlZXMgd2hlbiBkb2luZyByZW5hbWUoMikuIEJhc2VkIG9uIGEgcGF0Y2ggYnkKKyAgICBKZWFuLUJhcHRpc3RlIExhbGxlbWVudCA8amVhbmJhcHRpc3RlLmxhbGxlbWVudEBnbWFpbC5jb20+LgorICAgIENsb3NlczogIzQzMDk1OAorICAqIENhbGwgZnN5bmMoMikgb24gZGF0YWJhc2UgZGlyZWN0b3JpZXMgYWZ0ZXIgY3JlYXRpbmcsIHJlbmFtaW5nIG9yCisgICAgdW5saW5raW5nIGZpbGVzLCB0byBndWFyYW50ZWUgdGhlIG5ldyBmaWxlIGVudHJ5IGlzIGNvcnJlY3RseSBsaXN0ZWQKKyAgICBpbiB0aGUgZGlyZWN0b3J5LiBCYXNlIG9uIGEgcGF0Y2ggYnkKKyAgICBKZWFuLUJhcHRpc3RlIExhbGxlbWVudCA8amVhbmJhcHRpc3RlLmxhbGxlbWVudEBnbWFpbC5jb20+LgorICAqIERvY3VtZW50IGluIHRoZSBtYW4gcGFnZSB0aGUgZWZmZWN0cyBvZiBzZXR0aW5nIFRNUERJUiBmb3IgZHBrZyBhbmQKKyAgICBkcGtnLWRlYiwgSE9NRSBmb3IgZHNlbGVjdCBhbmQgZHBrZyBhbmQgUEFHRVIgZm9yIGRwa2cuIENsb3NlczogIzU3MjgzNgorICAqIERvY3VtZW50IHRoZSBleGl0IGNvZGVzIGZvciBkcGtnLXF1ZXJ5LiBDbG9zZXM6ICM1NzE3OTgKKyAgKiBEb2N1bWVudCDigJxkcGtnLXF1ZXJ5IC1s4oCdIGFiYnJldmlhdGVkIHN0YXRlIGluZm9ybWF0aW9uIGluIHRoZSBtYW4gcGFnZS4KKyAgICBCYXNlZCBvbiBhIHBhdGNoIGJ5IE1hcmMtSmFubyBLbm9wcCA8cHViX2JyX2RlYmlhbi5vcmdAbWFyYy1qYW5vLmRlPi4KKyAgICBDbG9zZXM6ICMzODM4NjkKKyAgKiBIb25vdXIgTElOR1VBUyBlbnZpcm9ubWVudCB2YXJpYWJsZSB3aGVuIGluc3RhbGxpbmcgdHJhbnNsYXRlZCBtYW4gcGFnZXMuCisgICogQWxsb3cgZGlzYWJsaW5nIGF0IGNvbmZpZ3VyZSB0aW1lIFVuaWNvZGUgbmN1cnNlcyBzdXBwb3J0IGZvciBkc2VsZWN0LgorICAgIEJhc2VkIG9uIGEgcGF0Y2ggYnkgWXVyaSBWYXNpbGV2c2tpIDx5dmFzaWxldkBnZW50b28ub3JnPi4KKworICBbIE1vZGVzdGFzIFZhaW5pdXMgXQorICAqIEltcGxlbWVudCBzeW1ib2wgcGF0dGVybnMgKENsb3NlczogIzU2Mzc1MikuIEZyb20gbm93IG9uLCBpdCBpcyBwb3NzaWJsZSB0bworICAgIG1hdGNoIG11bHRpcGxlIHN5bWJvbHMgd2l0aCBhIHNpbmdsZSBlbnRyeSBpbiB0aGUgc3ltYm9sIGZpbGUgdGVtcGxhdGUuCisgICAgV2hpbGUgdGhlIGNvbmNlcHQgaXMgbm90IG5ldyAod2lsZGNhcmRzIGFsc28gbWF0Y2ggbXVsdGlwbGUgc3ltYm9scyksCisgICAgcGF0dGVybnMgY292ZXIgbXVjaCBtb3JlIGdyb3VuZCBhbmQgYXJlIGEgbG90IG1vcmUgZmxleGlibGUuIFRvZ2V0aGVyIHdpdGgKKyAgICB0aGUgZnJhbWV3b3JrLCAzIGJhc2ljIHBhdHRlcm4gdHlwZXMgYXJlIHN1cHBvcnRlZDoKKyAgICAtIGMrKyAtIG1hdGNoaW5nIEMrKyBzeW1ib2xzIGJ5IHRoZWlyIGRlbWFuZ2xlZCBuYW1lIChhcyBlbWl0dGVkIGJ5CisgICAgICBjKytmaWx0KTsKKyAgICAtIHN5bXZlciAtIG1hdGNoaW5nIGJ5IHN5bWJvbCB2ZXJzaW9uLiBJdCByZXBsYWNlcyB0aGUgd2lsZGNhcmRzIGZlYXR1cmUKKyAgICAgIHdoaWNoIGlzIHN0aWxsIHN1cHBvcnRlZCBmb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHkgYnV0IGlzIHJlaW1wbGVtZW50ZWQKKyAgICAgIG9uIHRvcCBvZiB0aGUgbmV3IGZyYW1ld29yazsKKyAgICAtIHJlZ2V4IC0gbWF0Y2hpbmcgc3ltYm9sIG5hbWVzIHdpdGggcGVybCByZWd1bGFyIGV4cHJlc3Npb24uCisgICAgQmFzaWMgcGF0dGVybnMgbWF5IGJlIGNvbWJpbmVkIHdoZXJlIGl0IG1ha2VzIHNlbnNlLgorICAqIEFzIGEgcG9zaXRpdmUgc2lkZSBlZmZlY3Qgb2YgdGhlIG5ldyBzeW1ib2wgcGF0dGVybnMgaW1wbGVtZW50YXRpb24sCisgICAgcGF0dGVybnMgYXJlIG5vdyB0cmVhdGVkIGxpa2Ugbm9ybWFsIHN5bWJvbHMgd2hlbmV2ZXIgcG9zc2libGUsIGUuZy4gYQorICAgIHBhdHRlcm4gaXMgTUlTU0lORyBpZiBpdCBkb2VzIG5vdCBtYXRjaCBhbnl0aGluZy4gQXMgYSByZXN1bHQsCisgICAgZHBrZy1nZW5zeW1ib2xzIGlzIG5vdyBhYmxlIHRvIGRldGVjdCBORVcvTUlTU0lORyBzeW1ib2xzIHdoZW4gcGF0dGVybnMgYXJlCisgICAgcHJlc2VudCBpbiB0aGUgc3ltYm9sIGZpbGUgKENsb3NlczogIzU0MTQ2NCkuIFBsZWFzZSBub3RlLCBob3dldmVyLCB0aGF0CisgICAgdGhlcmUgaXMgbm8gd2F5IHRvIGRldGVjdCBzeW1ib2wgY2hhbmdlcyBpbiB0aGUgcGF0dGVybiBtYXRjaCBzZXRzLgorICAqIEFkZCBzb3VyY2UgdmVyc2lvbiB0byB0aGUgZHBrZy1nZW5zeW1ib2xzIGRpZmYgbGFiZWwsIHJlZm9ybWF0IGl0IGFjY29yZGluZworICAgIHRvIHRoZSBydWxlcyBvZiBkcGtnLW5hbWUuCisgICogQWRkIC1hPGFyY2g+IG9wdGlvbiB0byBkcGtnLWdlbnN5bWJvbHMuCisgICogQWRkIC1xIG9wdGlvbiB0byBkcGtnLWdlbnN5bWJvbHMuIC1jMCB3aWxsIG5ldmVyIGZhaWwgYnV0IHN0aWxsIGdlbmVyYXRlIGEKKyAgICBkaWZmLiBVc2UgLWMwIC1xIHRvIGtlZXAgZHBrZy1nZW5zeW1ib2xzIGNvbXBsZXRlbHkgcXVpZXQgYXMgYmVmb3JlCisgICAgKENsb3NlczogIzU2ODIyOCkuCisKKyAgWyBKb25hdGhhbiBOaWVkZXIgXQorICAqIEZpeCBhIGZpbGUgaGFuZGxlIGxlYWsgaW4g4oCcZHBrZy1kZWIgLS1pbmZv4oCdLiBUaGFua3MgdG8gUmFwaGFlbCBHZWlzc2VydAorICAgIGZvciB0aGUgcmVwb3J0IGFuZCBwYXRjaC4KKworICBbIEhlbGdlIEtyZXV0em1hbm4gXQorICAqIEFkZCBkcGtnLWdlbnN5bWJvbHMuMSB0byB0aGUgdHJhbnNsYXRhYmxlIG1hbiBwYWdlIHNldC4KKworICBbIFVwZGF0ZWQgZHBrZyB0cmFuc2xhdGlvbnMgXQorICAqIENhdGFsYW4gKEd1aWxsZW0gSm92ZXIpLgorICAqIEZyZW5jaCAoQ2hyaXN0aWFuIFBFUlJJRVIpLgorICAqIEdlcm1hbiAoU3ZlbiBKb2FjaGltKS4KKyAgKiBJdGFsaWFuICdNaWxvIENhc2FncmFuZGUpLiBDbG9zZXM6ICM1Njc1MzEKKyAgKiBTaW1wbGlmaWVkIENoaW5lc2UgKEFyb24gWHVhKS4gQ2xvc2VzOiAjNTU4Nzk0CisgICogU2xvdmFrIChJdmFuIE1hc8OhcikuIENsb3NlczogIzU1OTI2OQorICAqIFN3ZWRpc2ggKFBldGVyIEtyZWZ0aW5nKS4KKworICBbIFVwZGF0ZWQgZHNlbGVjdCB0cmFuc2xhdGlvbnMgXQorICAqIENhdGFsYW4gKEd1aWxsZW0gSm92ZXIpLgorICAqIEZyZW5jaCAoQ2hyaXN0aWFuIFBlcnJpZXIpLgorICAqIEdlcm1hbiAoU3ZlbiBKb2FjaGltKS4KKyAgKiBTcGFuaXNoIChKYXZpZXIgRmVybsOhbmRlei1TYW5ndWlubykuIENsb3NlczogIzU3Mjg2MQorICAqIFN3ZWRpc2ggKFBldGVyIEtyZWZ0aW5nKS4KKworICBbIFVwZGF0ZWQgbWFuIHBhZ2UgdHJhbnNsYXRpb25zIF0KKyAgKiBGcmVuY2ggKENocmlzdGlhbiBQZXJyaWVyKTogY29ycmVjdGluZyBpbmNvbnNpc3RlbmNpZXMgZm9yIHRoZSB0cmFuc2xhdGlvbgorICAgIG9mICJvcmlnaW5hbCIgaGVyZSBhbmQgdGhlcmUuIFRoYW5rcyB0byBKdWxpZW4gVmFscm9mZiBmb3IgcG9pbnRpbmcgdGhpcy4KKyAgKiBHZXJtYW4gKEhlbGdlIEtyZXV0em1hbm4pLgorICAqIFN3ZWRpc2ggKFBldGVyIEtyZWZ0aW5nKS4KKworICBbIFVwZGF0ZWQgc2NyaXB0cyB0cmFuc2xhdGlvbnMgXQorICAqIENhdGFsYW4gKEd1aWxsZW0gSm92ZXIpLgorICAqIEZyZW5jaCAoQ2hyaXN0aWFuIFBFUlJJRVIpLgorICAqIEdlcm1hbiAoSGVsZ2UgS3JldXR6bWFubikuCisgICogU3dlZGlzaCAoUGV0ZXIgS3JlZnRpbmcpLgorCisgLS0gR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPiAgRnJpLCAxMiBNYXIgMjAxMCAwMDoxNTozMSArMDEwMAorCitkcGtnICgxLjE1LjUuNikgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBkcGtnLXNvdXJjZTogd2l0aCBmb3JtYXQgIjMuMCAocXVpbHQpIiBlbnN1cmUgcXVpbHQncyAucGMgZGlyZWN0b3J5IGlzCisgICAgY3JlYXRlZCBiZWZvcmUgdHJ5aW5nIHRvIHJlZ2lzdGVyIGEgbmV3IHBhdGNoIGluIC5wYy9hcHBsaWVkLXBhdGNoZXMuCisgICAgVGhhbmtzIHRvIFRvbW1pIFZhaW5pa2FpbmVuIDx0aHYrZGViaWFuQGlraS5maT4gZm9yIHRoZSByZXBvcnQgYW5kIHRoZQorICAgIHBhdGNoLiBDbG9zZXM6ICM1NjEyMzcKKyAgKiBGaXggZHBrZy1idWlsZHBhY2thZ2UgdG8gc2V0ICJwYXJhbGxlbD0iIGluIERFQl9CVUlMRF9PUFRJT05TIGluc3RlYWQgb2YKKyAgICB0aGUgaW52YWxpZCAicGFyYWxsZWw9LTEiIHdoZW4gb3B0aW9uICItaiIgaXMgZ2l2ZW4uIENsb3NlczogIzU2MjAzOAorICAqIENsYXJpZnkgaG93IGRwa2ctc291cmNlIC0tcHJpbnQtZm9ybWF0IHdvcmtzIGFuZCBkaXNwbGF5IG1lc3NhZ2VzIG9uCisgICAgU1RERVJSIHdoZW4gdGhlIHJlcXVlc3RlZCBmb3JtYXQgaXMgZGlzY2FyZGVkLiBDbG9zZXM6ICM1NjAzOTEKKyAgKiBBZGQgJHttaXNjOkRlcGVuZHN9IGluIGFsbCBEZXBlbmRzIGZpZWxkcy4KKworIC0tIFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4gIEZyaSwgMDggSmFuIDIwMTAgMTc6NTc6NDMgKzAxMDAKKworZHBrZyAoMS4xNS41LjUpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogQWxsb3cgYWdhaW4gbmV3IGxpbmVzIGluIGRwa2ctc291cmNlIGFuZCBkcGtnLWdlbmNoYW5nZXMgb24gc3Vic3R2YXIgYW5kCisgICAgbWFpbnRhaW5lciBhcmd1bWVudHMuCisKKyAtLSBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+ICBUdWUsIDIyIERlYyAyMDA5IDA5OjQ5OjQ5ICswMTAwCisKK2Rwa2cgKDEuMTUuNS40KSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIEZpeCBEcGtnOjpJbmRleDo6Z2V0KCkgYW5kIHJlbW92ZSgpLiBUaGFua3MgdG8gUm9kZXJpY2ggU2NodXBwCisgICAgPHJvZGVyaWNoLnNjaHVwcEBnb29nbGVtYWlsLmNvbT4gZm9yIHRoZSBwYXRjaC4gQ2xvc2VzOiAjNTU4NTk1CisgICogTW9kaWZ5IGltcGxlbWVudGF0aW9uIG9mICIzLjAgKHF1aWx0KSIgc291cmNlIGZvcm1hdCB0byBub3QgYmUKKyAgICBiZWhhdmUgZGlmZmVyZW50bHkgZGVwZW5kaW5nIG9uIHdoZXRoZXIgcXVpbHQgaXMgaW5zdGFsbGVkIG9yIG5vdC4KKyAgICBUaGUgb3B0aW9uIC0td2l0aG91dC1xdWlsdCBpcyB0aHVzIGdvbmUgYW5kIGRwa2ctc291cmNlIGNyZWF0ZXMKKyAgICBhbmQgcmVsaWVzIG9uIHRoZSAucGMgZGlyZWN0b3J5IHRvIGtub3cgd2hldGhlciBwYXRjaGVzIGFyZSBhcHBsaWVkCisgICAgb3Igbm90LiBDbG9zZXM6ICM1NTc2NjcKKyAgKiBBZGQgbmV3IGRwa2ctc291cmNlIG9wdGlvbiAtLXNpbmdsZS1kZWJpYW4tcGF0Y2ggc3VwcG9ydGVkIGJ5IHRoZSBzb3VyY2UKKyAgICBmb3JtYXQgIjMuMCAocXVpbHQpIiBzbyB0aGF0IGl0IGJlaGF2ZXMgbW9yZSBsaWtlIDEuMCBhbmQgaXRzIHNpbmdsZSBkaWZmCisgICAgdGhhdCBpcyBjb25zdGFudGx5IHVwZGF0ZWQgd2l0aCBhbGwgdXBzdHJlYW0gY2hhbmdlcy4gVXNlZnVsIGlmIHRoZQorICAgIHdvcmtmbG93IGlzIFZDUyBiYXNlZCBhbmQgY2FuJ3QgZ2VuZXJhdGUgYSBmdWxsIHBhdGNoIHNldC4KKyAgKiBkcGtnLXNvdXJjZSBub3cgdXNlcyBkZWJpYW4vc291cmNlL3BhdGNoLWhlYWRlciBhcyBoZWFkZXIgb2YgdGhlIGF1dG9tYXRpYworICAgIERlYmlhbiBwYXRjaCBpbiBmb3JtYXQgIjMuMCAocXVpbHQpIi4KKyAgKiBGaXggRGViaWFuIGNoYW5nZWxvZyBwYXJzZXIgc28gdGhhdCB0aGUgdHJhaWxlciBsaW5lIGlzIGFnYWluIGNoZWNrZWQuCisKKyAtLSBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+ICBNb24sIDA3IERlYyAyMDA5IDA5OjI0OjMxICswMTAwCisKK2Rwa2cgKDEuMTUuNS4zKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICBbIFJhcGhhw6tsIEhlcnR6b2cgXQorICAqIEF2b2lkIHVzYWdlIG9mIElPOjpTdHJpbmcgaW4gZHBrZy1zY2FucGFja2FnZXMsIHJlbHkgb24gRHBrZzo6SVBDCisgICAgaW5zdGVhZCB0byBkaXJlY3RseSBnZXQgYSBwaXBlIGZpbGUgZGVzY3JpcHRvci4gQ2xvc2VzOiAjNTU3MDEzCisgICogUHV0ICIzLjAgKHF1aWx0KSIgaW4gdGhlIGRlZmF1bHQgbGlzdCBvZiBmb3JtYXRzIHRyaWVkIGJ5IGRwa2ctc291cmNlCisgICAgYWZ0ZXIgIjEuMCIgYW5kIGJlZm9yZSAiMy4wIChuYXRpdmUpIi4KKyAgKiBMZXQgZHBrZy1zb3VyY2UgZmFpbCBpZiBzZXZlcmFsIHVwc3RyZWFtIG9yaWcudGFyIGZpbGVzIGFyZSBhdmFpbGFibGUKKyAgICAodXNpbmcgZGlmZmVyZW50IGNvbXByZXNzaW9uIHNjaGVtZSkgc2luY2Ugd2UgZG9uJ3Qga25vdyB3aGljaCBvbmUKKyAgICB0byB1c2UuCisgICogQWRkIG1pc3NpbmcgInVzZSBEcGtnOjpHZXR0ZXh0IiBpbiBEcGtnOjpDaGFuZ2Vsb2c6OkVudHJ5OjpEZWJpYW4uCisgICAgQ2xvc2VzOiAjNTU3NjY4CisgICogV2hlbiBidWlsZGluZyAiMy4wIChxdWlsdCkiIHNvdXJjZSBwYWNrYWdlcywgdXNlIFFVSUxUX1BBVENIX09QVFM9Ii10IC1GIDAKKyAgICAtTiAtdSAtViBuZXZlciAtZzAiIHNvIHRoYXQgcXVpbHQgaXMgYXMgc3RyaWN0IGFzIGRwa2ctc291cmNlJ3MgaW50ZXJuYWwKKyAgICBpbXBsZW1lbnRhdGlvbiBvZiBxdWlsdC4gQ2xvc2VzOiAjNTU3NjY0LCAjNTU4MjMzCisgICogQmVmb3JlIGFjY2VwdGluZyB0byBidWlsZCBhIDMuMCAocXVpbHQpIHNvdXJjZSBwYWNrYWdlcywgZW5zdXJlIHRoYXQKKyAgICBkZWJpYW4vcGF0Y2hlcyBpcyBhIGRpcmVjdG9yeSAob3Igbm9uLWV4aXN0aW5nKSBhbmQgdGhhdAorICAgIGRlYmlhbi9wYXRjaGVzL3NlcmllcyBpcyBhIGZpbGUgKG9yIG5vbi1leGlzdGluZykuIENsb3NlczogIzU1NzYxOAorICAqIERwa2c6OklQQzo6Zm9ya19hbmRfZXhlYygpIG5vdyBpbmNsdWRlcyB0aGUgY2hhbmdlZCBlbnZpcm9ubWVudAorICAgIHZhcmlhYmxlcyBpbiB0aGUgZGVmYXVsdCBlcnJvciBtZXNzYWdlIGRpc3BsYXllZCB3aGVuIHRoZSBzdWItcHJvY2VzcworICAgIGZhaWxzLgorCisgIFsgR3VpbGxlbSBKb3ZlciBdCisgICogVmVyaWZ5IHRoYXQgdGhlIGFsdGVybmF0aXZlIHVzZWQgaW4gdXBkYXRlLWFsdGVybmF0aXZlcyAtLXNldCBoYXMgYmVlbgorICAgIHJlZ2lzdGVyZWQgaW5zdGVhZCBvZiBmYWlsaW5nIHdpdGggYW4gdW5kZWZpbmVkIHZhbHVlIGluIHRoZSBzbGF2ZQorICAgIG1ldGhvZC4gQ2xvc2VzOiAjNTU0MTM2CisgICogU3RyaXAgbGVhZGluZyBzcGFjZXMgaW4gdGhlIGZpcnN0IGxpbmUgb2YgYSBmaWVsZCdzIHZhbHVlIGluCisgICAgRHBrZzo6Q29udHJvbDo6SGFzaC4gQ2xvc2VzOiAjNTU3NTQ3CisKKyAtLSBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+ICBGcmksIDI3IE5vdiAyMDA5IDE5OjIzOjM2ICswMTAwCisKK2Rwa2cgKDEuMTUuNS4yKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIENoYW5nZSBEcGtnOjpWZXJzaW9uIEFQSSB0byBhY2NlcHQgaW52YWxpZCB2ZXJzaW9ucyBieSBkZWZhdWx0IGFuZCBhZGQKKyAgICBpc192YWxpZCgpIG1ldGhvZC4gVGhlIGJvb2xlYW4gZXZhbHVhdGlvbiBvZiBhIHZlcnNpb24gb2JqZWN0IHJldHVybnMKKyAgICB0cnVlIGlmIHRoZSB2ZXJzaW9uIGlzIHZhbGlkLCBmYWxzZSBvdGhlcndpc2UuCisgICogVXBkYXRlIGRwa2ctc2hsaWJkZXBzIHRvIGFsd2F5cyB1c2UgRHBrZzo6VmVyc2lvbiBub3cgdGhhdCBpdCBjYW4KKyAgICBjb250YWluIHRoZSBlbXB0eSB2ZXJzaW9uIHN0cmluZy4gQ2xvc2VzOiAjNTU2Nzg2CisgICogS2VlcCBjb21wYXRpYmlsaXR5IHdpdGggcGVybCA1LjggYnkgYXZvaWRpbmcgdGhlIF8gcHJvdG90eXBlLgorCisgLS0gUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPiAgV2VkLCAxOCBOb3YgMjAwOSAxMTo1NDo1MCArMDEwMAorCitkcGtnICgxLjE1LjUuMSkgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBGaXggYnVpbGQgZmFpbHVyZXMgZHVlIHRvIG9mZl90IHR5cGUgbWlzbWF0Y2ggY2F1c2VkIGJ5IG5vdCBpbmNsdWRpbmcKKyAgICA8Y29uZmlnLmg+IGZpcnN0IG9uIHRoZSB1bml0IHRlc3RzLiBTdWdnZXN0ZWQgYnkgUGllcnJlIEhhYm91eml0IGFuZAorICAgIEp1bGllbiBDcmlzdGF1LCB0aGFua3MhCisKKyAtLSBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+ICBUdWUsIDE3IE5vdiAyMDA5IDE2OjQyOjAwICswMTAwCisKK2Rwa2cgKDEuMTUuNSkgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgWyBHdWlsbGVtIEpvdmVyIF0KKyAgKiBSZW1vdmUgb2Jzb2xldGUgY29uZmZpbGVzIG9uIHB1cmdlLiBDbG9zZXM6ICM0MjEzNjcsICM0NTMwMDUsICM0NTQ2MjgKKyAgKiBVcGRhdGUgbGlzdCBvZiBiaW5hcmllcyBkcGtnIGNoZWNrcyBvbiB0aGUgUEFUSC4KKyAgICAtIFJlbW92ZSBpbnN0YWxsLWluZm8sIG5vdyBhIHdyYXBwZXIgdGhhdCB3aWxsIGRpc2FwcGVhciBzb29uaXNoLgorICAgIC0gQWRkIHByb2dyYW1zIHVzZWQgYnkgZHBrZyBpdHNlbGY6IHNoLCBybSwgZmluZCwgdGFyIGFuZCBkcGtnLWRlYi4KKyAgKiBDaGVjayBhbmQgd2FybiBvbiBkdXBsaWNhdGUgY29uZmZpbGVzIGluIGRwa2ctZGViLiBDbG9zZXM6ICMxMzE2MzMKKyAgKiBNYWtlIHRoZSB1cHN0cmVhbSBidWlsZCBzeXN0ZW0gc2lsZW50IGJ5IGRlZmF1bHQgd2l0aCBhdXRvbWFrZSAxLjExIG9yCisgICAgbmV3ZXIsIGFuZCBhbHdheXMgdmVyYm9zZSB3aGVuIGJ1aWxkaW5nIHRoZSBEZWJpYW4gcGFja2FnZXMuCisgICogRml4IHNtYWxsIGxlYWsgd2hlbiBwYXJzaW5nIOKAmC0taWdub3JlLWRlcGVuZHPigJkgb3B0aW9uIHZhbHVlcy4KKyAgKiBEZWZpbmUgY29tcGF0aWJpbGl0eSBXQ09SRURVTVAgb25seSBpZiB0aGUgc3lzdGVtIGRvZXMgbm90IGhhdmUgaXQuCisgICogV2hlbiBzdGFydC1zdG9wLWRhZW1vbiBmYWlscyB0byBzZXQgdGhlIGlvIHNjaGVkdWxpbmcgd2FybiBpbnN0ZWFkIG9mCisgICAgZmluaXNoaW5nIGZhdGFsbHkuIENsb3NlczogIzU1MzU4MAorICAqIFVwZGF0ZSBtZDUgZmlsZSBwYXRocyBpbiBkZWJpYW4vY29weXJpZ2h0LgorICAgIFRoYW5rcyB0byBKb25hdGhhbiBOaWVkZXIgPGpybmllZGVyQGdtYWlsLmNvbT4uCisgICogT24g4oCYZHBrZy10cmlnZ2VyIC0taGVscOKAmSBwcmludCB0aGUgZGVmYXVsdCBhZG1pbmRpciBpbnN0ZWFkIG9mIHRoZSBvbmUKKyAgICBwYXNzZWQgb24gdGhlIGNvbW1hbmQgbGluZS4KKyAgKiBBYm9ydCBvbiBjb25maWd1cmUgaWYgdGhlIHJlcXVpcmVkIEM5OSBleHRlbnNpb25zIGFyZSBub3Qgc3VwcG9ydGVkLgorICAqIEFkZCBDIGNvZGluZyBzdHlsZSBkb2N1bWVudC4KKyAgKiBNYWtlIGRwa2cgYXMgc3RyaWN0IGFzIGRwa2ctc3RhdG92ZXJyaWRlIG9uIGlucHV0IHdoZW4gdmFsaWRhdGluZyB0aGUKKyAgICBwYXJzZWQgZGF0YSBmcm9tIHRoZSBzdGF0ZGIuCisgICogUmV3cml0ZSBkcGtnLXN0YXRvdmVycmlkZSBpbiBDLgorICAqIFVzZSBDOTkgc25wcmludGYgZnVuY3Rpb24gZmFtaWx5IHNlbWFudGljcyB0byBhdm9pZCBoYXZpbmcgdG8gY2FsbCB0aGVtCisgICAgaW4gYSBsb29wIHRvIGdyb3cgdGhlIHZhcmJ1ZiBidWZmZXIuIFRoaXMgc2hvdWxkIHJlZHVjZSBtZW1vcnkgdXNhZ2UgYW5kCisgICAgYmUgc2xpZ2h0bHkgZmFzdGVyIG9uIHZhcmJ1ZnByaW50ZiBjYWxscy4KKyAgKiBVc2UgdGhlIHNpemUgZnJvbSBzdGF0IHRvIGFsbG9jYXRlIHRoZSBidWZmZXJzIGZvciByZWFkbGluaywgaW5zdGVhZCBvZgorICAgIGluZGVmaW5pdGVseSBjYWxsaW5nIHJlYWRsaW5rIGFuZCBncm93aW5nIHRoZSBidWZmZXIuIFRoaXMgc2hvdWxkIHJlZHVjZQorICAgIG1lbW9yeSB1c2FnZSB3aGVuIGhhbmRsaW5nIGxvdHMgb2Ygc3ltbGlua3MsIGFuZCBiZSBzbGlnaHRseSBmYXN0ZXIuCisgICogUmV3b3JrIHZhcmJ1ZiBhcGkgdG8gYXZvaWQgaW5jcmVhc2luZyBidWZmZXJzIGluZGVmaW5pdGVseSB3aGVuIGFkZGluZworICAgIGNvbnRlbnQgdG8gdGhlbSwgcmVnYXJkbGVzcyBvZiBzcGFjZSBiZWluZyBhbHJlYWR5IGF2YWlsYWJsZS4KKyAgKiBGaXggYnVpbGQgbWFjcm9zIHRvIGFsbG93IHN0YXJ0LXN0b3AtZGVhZW1vbiB0byB1c2UgVElPQ05PVFRZLgorICAqIEdlbmVyYXRlIHRoZSBhdXRvY29uZiB2ZXJzaW9uIGZyb20gZ2l0IHRvIG1ha2UgaXQgZWFzaWVyIHRvIHNlZSB3aGVuIGEKKyAgICBzbmFwc2hvdCB2ZXJzaW9uIGlzIGJlaW5nIHVzZWQuCisgICogQWRkIGluZnJhc3RydWN0dXJlIGZvciBkb3h5Z2VuLCBmb3Igbm93IG5vdCBpbnN0YWxsZWQgYW55d2hlcmUuCisgICogQWxsb3cgb3ZlcnJpZGluZyB0aGUgcGtnLWNvbmZpZyBwYXRoIHRvIGVhc2UgY3Jvc3MtY29tcGlsYXRpb24uCisgICAgU3VnZ2VzdGVkIGJ5IFRvbGxlZiBGb2cgSGVlbiA8dGZoZWVuQGVyci5ubz4uCisgICogRml4IHNwZWxsaW5nIGVycm9ycyBpbiB0aGUgQ2F0YWxhbiB0cmFuc2xhdGlvbi4gQ2xvc2VzOiAjNTUzMzI4CisgICAgVGhhbmtzIHRvIFJvYmVydCBNaWxsYW4uCisgICogVXBkYXRlIHRoZSBGU0YgcG9zdGFsIGFkZHJlc3MgaW4gdGhlIHNvdXJjZSBjb2RlIGxpY2Vuc2UgaGVhZGVycyBieQorICAgIHJlcGxhY2luZyBpdCB3aXRoIGEgVVJMIHRvIHRoZSBnbnUub3JnIHBhZ2UuCisgICogRml4IGEgZmlsZSBkZXNjcmlwdG9yIGxlYWsgaW4gZHBrZy1kZWIuCisgICAgUmVwb3J0ZWQgYnkgUmFwaGFlbCBHZWlzc2VydCA8YXRvbW82NEBnbWFpbC5jb20+LgorICAqIEZpeCByZXNvdXJjZSBsZWFrcyBvbiBlcnJvciBjb25kaXRpb25zIGluIGNvbXBhdCBzY2FuZGlyLgorICAqIEFkZCBhIG5ldyBzdGF0dXMtZmQgYWN0aW9uIHdoZW4gZGlzYXBwZWFyaW5nIGEgcGFja2FnZS4gQ2xvc2VzOiAjNTM3MzM4CisKKyAgWyBSYXBoYcOrbCBIZXJ0em9nIF0KKyAgKiBBZGQgdmVyc2lvbmVkIGRlcGVuZGVuY3kgb24gYmFzZS1maWxlcyAoPj0gNS4wLjApIHRvIGRwa2ctZGV2IHRvIGVuc3VyZQorICAgIHRoYXQgL2V0Yy9kcGtnL29yaWdpbnMvZGVmYXVsdCBleGlzdHMuIENsb3NlczogIzU0NTI3NAorICAqIFVwZGF0ZSBTdGFuZGFyZHMtVmVyc2lvbiB0byAzLjguMyAobm8gY2hhbmdlcyBuZWVkZWQpLgorICAqIE1ham9yIGNoYW5nZXMgdG8gdGhlIHBlcmwgQVBJOgorICAgIC0gRHBrZzo6Q29udHJvbCBpcyBub3cgRHBrZzo6Q29udHJvbDo6SW5mbworICAgIC0gRHBrZzo6Q2RhdGEgaXMgZ29uZSBhbmQgaXMgcmVwbGFjZWQgYnkgYSBuZXcgRHBrZzo6Q29udHJvbAorICAgIC0gRHBrZzo6Q29udHJvbDo6RmllbGRzIGNvbnRhaW5zIGF1dGhvcml0YXRpdmUgaW5mb3JtYXRpb24KKyAgICAgIGFib3V0IGZpZWxkcyBhbGxvd2VkIGluIHZhcmlvdXMgdHlwZXMgb2YgY29udHJvbCBpbmZvcm1hdGlvbgorICAgICAgKGFuZCBjYW4gYmUgY3VzdG9taXplZCBieSBlYWNoIHZlbmRvcikuIEl0IGFsc28gaW50ZWdyYXRlcworICAgICAgaW5mb3JtYXRpb24gdGhhdCB3YXMgcHJldmlvdXNseSBhdmFpbGFibGUgdGhyb3VnaCBEcGtnOjpEZXBzLgorICAgIC0gRHBrZzo6Q2hhbmdlbG9nIGhhcyBiZWVuIHNwbGl0IGluIG11bHRpcGxlIG1vZHVsZXMgYW5kIGxhcmdlbHkKKyAgICAgIG1vZGlmaWVkIHRvIG9mZmVyIGFuIGludGVyZmFjZSB0aGF0IGlzIG5vdyBtb3JlIGluIGxpbmUgd2l0aCB0aGUKKyAgICAgIG90aGVyIG1vZHVsZXMuCisgICogQWxsIGRwa2ctKiBwZXJsIHByb2dyYW1zIHRoYXQgd29yayB3aXRoIGNvbnRyb2wgaW5mb3JtYXRpb24gaGF2ZSBiZWVuCisgICAgdXBkYXRlZCB0byB1c2UgdGhlIG5ldyBEcGtnOjpDb250cm9sIGludGVyZmFjZS4KKyAgICBJbiB0aGlzIHByb2Nlc3MsIGRwa2ctc2NhbnBhY2thZ2VzIGhhcyBiZWVuIGZpeGVkIHRvIG5vdCBza2lwIG5vbi1zdGFuZGFyZAorICAgIGZpZWxkcy4gQ2xvc2VzOiAjNDk0MTM2CisgICogQ3JlYXRlIExhdW5jaHBhZC1CdWdzLUZpeGVkIGRpcmVjdGx5IGluIHRoZSBjaGFuZ2Vsb2cgcGFyc2luZyBjb2RlIHRoYW5rcworICAgIHRvIGEgbmV3IHZlbmRvciBob29rIHBvc3QtcHJvY2Vzcy1jaGFuZ2Vsb2ctZW50cnkuIENsb3NlczogIzUzNjA2NgorICAqIEludGVncmF0ZSBkcGtnLWZ0cCBpbnRvIGRzZWxlY3QuIEFkZCB0aGUgcmVxdWlyZWQgUmVwbGFjZXMgYW5kIENvbmZsaWN0cy4KKyAgKiBkcGtnLXNjYW5wYWNrYWdlcy9kcGtnLXNjYW5zb3VyY2VzIG5vdyBzdXBwb3J0cyBjb21wcmVzc2VkIG92ZXJyaWRlIGZpbGVzLgorICAqIGRwa2ctc2NhbnBhY2thZ2VzIG5vdyBzdXBwb3J0cyBhIG5ldyAtLW1lZGl1bSBvcHRpb24gYXMgbmVlZGVkIHRvCisgICAgZ2VuZXJhdGUgUGFja2FnZXMuY2QgZmlsZSBmb3IgY29uc3VtcHRpb24gYnkgdGhlIG11bHRpY2QgZHNlbGVjdCBhY2Nlc3MKKyAgICBtZXRob2QuIENsb3NlczogIzQwMjUyNworICAqIEludGVncmF0ZSBkcGtnLW11bHRpY2QgaW50byBkc2VsZWN0LiBBZGQgdGhlIHJlcXVpcmVkIFJlcGxhY2VzIGFuZAorICAgIENvbmZsaWN0cy4gVGhlIGRwa2ctc2NhbnBhY2thZ2VzIGZvcmsgaXMgZHJvcHBlZC4gQ2xvc2VzOiAjNTE2NjMxCisgICogRml4IGJhc2hpc21zIGluIGRzZWxlY3QgbXVsdGljZCBhY2Nlc3MgbWV0aG9kLiBDbG9zZXM6ICM1MzAwNzAKKyAgKiBBZGQgc3VwcG9ydCBvZiAieHoiIGNvbXByZXNzaW9uIG1ldGhvZCBmb3Igc291cmNlIHBhY2thZ2VzLiBBZGQgZGVwZW5kZW5jeQorICAgIGRwa2ctZGV2IOKGkiB4ei11dGlscyB0byBlbnN1cmUgeHogYW5kIHVueHogYXJlIGF2YWlsYWJsZS4KKyAgKiBGaXggZHBrZy1zb3VyY2UgLS1pbmNsdWRlLWJpbmFyaWVzIHRvIGNvcnJlY3RseSBjb21wdXRlIHRoZSBwYXRoIG5hbWUgb2YKKyAgICB0aGUgZGlzY292ZXJlZCBiaW5hcnkgZmlsZXMuIENsb3NlczogIzU1NDYxMgorICAqIFJlbW92ZSBleHRyYSBxdW90aW5nIHRoYXQgc2hvdWxkIG5vdCBiZSB0aGVyZSB3aGlsZSBwYXNzaW5nIGFuIGV4Y2x1ZGUKKyAgICBmaWxlIHRvIGdpdCBscy1maWxlcyBkdXJpbmcgYnVpbGQgb2YgMy4wIChnaXQpIHNvdXJjZSBwYWNrYWdlLgorICAgIFRoYW5rcyB0byBDb3VydG5leSBCYW5lIGZvciB0aGUgcGF0Y2guIENsb3NlczogIzU1MTgyOQorICAqIE9wdGltaXplIGRwa2ctc291cmNlIC1iIGJ5IGF2b2lkaW5nIG1hbnkgZGlmZiBjYWxscyB3aGVuIG5vdCByZXF1aXJlZC4KKyAgICBUaGFua3MgdG8gTWlrZSBIb21tZXkgZm9yIHRoZSBpZGVhLiBDbG9zZXM6ICM1NTQ2ODkKKyAgKiBBZGQgbmV3IG9wdGlvbiAtLXByaW50LWZvcm1hdCB0byBkcGtnLXNvdXJjZSB0byBiZSBhYmxlIHRvIGtub3cgYnkgYWR2YW5jZQorICAgIHRoZSBzb3VyY2UgZm9ybWF0IHRoYXQgd291bGQgYmUgdXNlZCBkdXJpbmcgYSBidWlsZC4KKyAgKiBNb2RpZnkgZHBrZy1zb3VyY2UgLWIgdG8gdXNlIGRlZmF1bHQgYnVpbGQgb3B0aW9ucyBmcm9tCisgICAgZGViaWFuL3NvdXJjZS9vcHRpb25zLiBUaHVzIGl0J3Mgbm93IHBvc3NpYmxlIHRvIGhhdmUgc3RpY2t5IG9wdGlvbnMsIGZvcgorICAgIGV4YW1wbGUgZm9yIHRoZSBjaG9pY2Ugb2YgYSBjb21wcmVzc2lvbiBtZXRob2QgKC0tY29tcHJlc3Npb249PGNvbXA+KS4KKyAgKiBkcGtnLXNvdXJjZSBvdXRwdXRzIHRoZSBsaXN0IG9mIHVwc3RyZWFtIGZpbGVzIG1vZGlmaWVkIGJ5IHRoZSBkaWZmLmd6CisgICAgKGFwcGxpZXMgb25seSB0byBzb3VyY2UgcGFja2FnZXMgdXNpbmcgZm9ybWF0IDEuMCkuIENsb3NlczogIzQ4MjE2NgorICAgIEl0IGFsc28gcmVjb21tZW5kcyB1c2FnZSBvZiAzLjAgKHF1aWx0KSBmb3JtYXQgZHVyaW5nIGRwa2ctc291cmNlIC1iIGlmIGl0CisgICAgZGV0ZWN0cyBjaGFuZ2VzIHRvIHVwc3RyZWFtIGZpbGVzIHRoYXQgYXJlIHN0b3JlZCBpbiB0aGUgLmRpZmYuZ3ouCisgICogQWRkIERFUC0zIGNvbXBsaWFudCBoZWFkZXJzIHRvIGF1dG9tYXRpYyBwYXRjaGVzIGNyZWF0ZWQgYnkgZHBrZy1zb3VyY2UKKyAgICBpbiAzLjAgKHF1aWx0KSBzb3VyY2UgZm9ybWF0LiBDbG9zZXM6ICM1NDM1ODEKKyAgKiBTd2l0Y2ggZHBrZyB0byBzb3VyY2UgZm9ybWF0ICIzLjAgKG5hdGl2ZSkiIHdpdGggYnppcDIgY29tcHJlc3Npb24uCisKKyAgWyBVcGRhdGVkIGRwa2cgdHJhbnNsYXRpb25zIF0KKyAgKiBDemVjaCAoTWlyb3NsYXYgS3VyZSkuCisgICogRnJlbmNoIChDaHJpc3RpYW4gUGVycmllcikuCisgICogR2VybWFuIChTdmVuIEpvYWNoaW0pLgorICAqIEl0YWxpYW4gKE1pbG8gQ2FzYWdyYW5kZSkuIENsb3NlczogIzU0ODYxNSwgIzU1NTgwNgorICAqIFBvbGlzaCAoV2lrdG9yIFdhbmRhY2hvd2ljeikuIENsb3NlczogIzU0ODU0MQorICAqIFN3ZWRpc2ggKFBldGVyIEtyZWZ0aW5nKS4KKworICBbIFVwZGF0ZWQgZHNlbGVjdCB0cmFuc2xhdGlvbnMgXQorICAqIEN6ZWNoIChNaXJvc2xhdiBLdXJlKS4KKyAgKiBGcmVuY2ggKENocmlzdGlhbiBQZXJyaWVyKS4KKyAgKiBHZXJtYW4gKFN2ZW4gSm9hY2hpbSkuCisgICogUG9saXNoIChXaWt0b3IgV2FuZGFjaG93aWN6KS4gQ2xvc2VzOiAjNTQ4NTQxCisgICogU3dlZGlzaCAoUGV0ZXIgS3JlZnRpbmcpLgorCisgIFsgVXBkYXRlZCBtYW4gcGFnZSB0cmFuc2xhdGlvbnMgXQorICAqIEZyZW5jaCAoQ2hyaXN0aWFuIFBlcnJpZXIpLgorICAqIEZyZW5jaCB0cmFuc2xhdGlvbiBlcnJvciBmaXhlZCAoQ2hyaXN0aWFuIFBlcnJpZXIpCisgICAgVGhhbmtzIHRvIFBpZXRybyBCYXR0aXN0b24gZm9yIHNwb3R0aW5nIGl0LiBDbG9zZXM6ICM1NDU0NDYKKyAgKiBHZXJtYW4gKEhlbGdlIEtyZXV0em1hbm4pLgorICAqIFBvbGlzaCAoV2lrdG9yIFdhbmRhY2hvd2ljeikuIENsb3NlczogIzU0ODU0MQorICAqIFN3ZWRpc2ggKFBldGVyIEtyZWZ0aW5nKS4KKworICBbIFVwZGF0ZWQgc2NyaXB0cyB0cmFuc2xhdGlvbnMgXQorICAqIEdlcm1hbiAoSGVsZ2UgS3JldXR6bWFubikuCisgICogUG9saXNoIChXaWt0b3IgV2FuZGFjaG93aWN6KS4gQ2xvc2VzOiAjNTQ4NTQxCisgICogU3dlZGlzaCAoUGV0ZXIgS3JlZnRpbmcpLgorCisgLS0gR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPiAgVHVlLCAxNyBOb3YgMjAwOSAxMDoxNzo1NyArMDEwMAorCitkcGtnICgxLjE1LjQuMSkgdW5zdGFibGU7IHVyZ2VuY3k9bWVkaXVtCisKKyAgKiBEbyBub3QgbWFyayBhbnkgcGFja2FnZSBhcyB1bnNlZW4gaW4gZHNlbGVjdC4gVGhpcyBpcyBhIHdvcmthcm91bmQKKyAgICB1bnRpbCBpdCBsZWFybnMgaG93IHRvIHN0b3JlIHN1Y2ggaW5mb3JtYXRpb24gYWdhaW4uIENsb3NlczogIzU0NTM2NgorCisgLS0gR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPiAgTW9uLCAxOSBPY3QgMjAwOSAxNToxNToxNyArMDIwMAorCitkcGtnICgxLjE1LjQpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgIFsgR3VpbGxlbSBKb3ZlciBdCisgICogQ2FsbCBfZyBpbnN0ZWFkIG9mIGdfIGluIGRwa2ctbmFtZS4KKyAgKiBGaXggaW52ZXJ0ZWQgbG9naWMgd2hlbiBkZWNpZGluZyB0byBhc3N1bWUgdGhlIGFyY2hpdGVjdHVyZSBpbiBkcGtnLW5hbWUKKyAgICB3aGVuIHRoZSBwYWNrYWdlIGRpZG4ndCBoYXZlIHN1Y2ggZmllbGQuCisgICogRG8gbm90IHRha2UgaW50byBhY2NvdW50IFJldmlzaW9uIGFuZCBQYWNrYWdlX1JldmlzaW9uIGZpZWxkcyBpbiBkcGtnLW5hbWUKKyAgICBhbmQgZHBrZy1zY2FucGFja2FnZXMgYXMgdGhleSBoYXZlIGJlZW4gaGFuZGxlZCBhbHJlYWR5IGJ5IOKAnGRwa2ctZGViIC1J4oCdLgorICAqIFN3aXRjaCBkcGtnLXNjYW5zb3VyY2VzIHRvIHVzZSBEcGtnOjpDZGF0YSBpbnN0ZWFkIG9mIGR1cGxpY2F0aW5nIHRoZQorICAgIC5kc2MgcGFyc2luZyBjb2RlLiBBcyBhIHNpZGUgZWZmZWN0IGl0IG5vdyBoYW5kbGVzIHByb3Blcmx5IGJvZ3VzIGZpbGVzLgorICAqIERvIG5vdCByZW1hcCBvYnNvbGV0ZSBmaWVsZHMgaW4gZHBrZy1zY2FucGFja2FnZXMgYXMgdGhleSBoYXZlIGJlZW4KKyAgICBoYW5kbGVkIGFscmVhZHkgYnkg4oCcZHBrZy1kZWIgLUnigJ0uCisgICogUHJvcGVybHkgbWFyayBwYWNrYWdlcyBiZWluZyBwdXJnZWQgZm9yIGRpc2FwcGVhcmFuY2UgZnJvbSB0aGUgZGF0YWJhc2UuCisgICAgVGhpcyB3aWxsIG1ha2UgdGhlIHN0YXR1cyBkYXRhYmFzZSBub3QgYmUgbGVmdCBiZWhpbmQgd2l0aCB0cmFjZXMgb2Ygb2xkCisgICAgbm90LWluc3RhbGxlZCBwYWNrYWdlcy4gQ2xvc2VzOiAjNDcyMjA4CisgICogT24gcGFyc2UgbWFyayBub3QtaW5zdGFsbGVkIGxlZnRvdmVyIHBhY2thZ2VzIGZvciBhdXRvbWF0aWMgcmVtb3ZhbCBmcm9tCisgICAgdGhlIGRhdGFiYXNlIG9uIG5leHQgZHVtcC4gVGhpcyBvYnNvbGV0ZXMgdGhlIC0tZm9yZ2V0LW9sZC11bmF2YWlsIG9wdGlvbiwKKyAgICB0aHVzIG1ha2luZyBpdCBub3cgYSBuby1vcC4gQ2xvc2VzOiAjMzMzOTQsICM0MjkyNjIKKyAgKiBEb2N1bWVudCDigJxob2xk4oCdIHVuZGVyIHBhY2thZ2Ugc2VsZWN0aW9uIHN0YXRlcyBpbnN0ZWFkIG9mIGZsYWdzIGluIGRwa2coMSkuCisgICogUmVtb3ZlIHRyYWlsaW5nIOKAmC/igJkgYW5kIOKAmC8u4oCZIGZyb20gdGhlIGRpcmVjdG9yeSBuYW1lIHRvIGJlIHVzZWQgYXMgdGhlCisgICAgcGFja2FnZSBuYW1lIG9uIOKAnGRwa2ctZGViIC1i4oCdLiBDbG9zZXM6ICMyMTgwMTgsICMzNzM2MDIKKyAgKiBSZW1vdmUgb2Jzb2xldGUg4oCYaG9sZOKAmSBhbmQg4oCYaG9sZC1yZWluc3RyZXHigJkgaW50ZXJuYWwgc3RhdHVzIGZsYWdzLgorICAqIEFkZCBmYWtlcm9vdCB0byBkcGtnLWRldiBSZWNvbW1lbmRzLiBDbG9zZXM6ICM1MzY4MjEKKyAgKiBGaXggYW4gYWx3YXlzIGZhbHNlIHRlc3Qgd2hlbiB0cnlpbmcgdG8gZGVjaWRlIHdoaWNoIHBhY2thZ2UgdG8gZGVzZWxlY3QKKyAgICB0byByZXNvbHZlIGEgZGVwZW5kZW5jeSBwcm9ibGVtIGluIGRzZWxlY3QuCisgICogQWRkIHVDbGliYyBMaW51eCBzdXBwb3J0IHRvIG9zdGFibGUgYW5kIHRyaXBsZXR0YWJsZS4gQ2xvc2VzOiAjNDU1NTAxCisgICogQWRkIHVDbGludXggc3VwcG9ydCB0byBvc3RhYmxlIGFuZCB0cmlwbGV0dGFibGUuCisgICAgVGhhbmtzIHRvIFNpbW9uIFJpY2h0ZXIgPHNqckBkZWJpYW4ub3JnPi4KKyAgKiBXaGVuIGFib3J0aW5nIGR1ZSB0byBmaWxlIGNvbmZsaWN0cyBwcmludCB0aGUgdmVyc2lvbiBvZiB0aGUgY29uZmxpY3RlZAorICAgIHBhY2thZ2UuIENsb3NlczogIzU0MDAxOQorICAqIFJlbW92ZSBkb3VibGUgc2xhc2ggaW4gZGF0YWJhc2UgcGF0aCB2aXNpYmxlIHRvIHRoZSB1c2VyIGluIHNvbWUgZXJyb3IKKyAgICBjb25kaXRpb25zLgorICAqIFN0b3AgbWF0Y2hpbmcgc3BhcmM2NC0qLSogR05VIHRyaXBsZXRzIHdpdGggc3BhcmMgRGViaWFuIGFyY2hpdGVjdHVyZS4KKyAgKiBBZGQgc3VwcG9ydCBmb3IgY29uZmlnLmQgc3R5bGUgZGlyZWN0b3JpZXMgaW4gZHBrZyBhbmQgZHNlbGVjdCwKKyAgICAoL2V0Yy9kcGtnL2Rwa2cuY2ZnLmQgYW5kIC9ldGMvZHBrZy9kc2VsZWN0LmNmZy5kIHJlc3BlY3RpdmVseSkuCisgICogRGVmaW5lIERQS0dfTUFJTlRTQ1JJUFRfQVJDSCBvbiB0aGUgbWFpbnRhaW5lciBzY3JpcHQgZW52aXJvbm1lbnQgdG8gdGhlCisgICAgYXJjaGl0ZWN0dXJlIHRoZSBwYWNrYWdlIGdvdCBidWlsdCBmb3IuCisgICogRG9jdW1lbnQgRFBLR19NQUlOVFNDUklQVF9QQUNLQUdFIG1haW50YWluZXIgc2NyaXB0IGVudmlyb25tZW50IHZhcmlhYmxlCisgICAgaW4gZHBrZyBtYW4gcGFnZS4KKyAgKiBEb2N1bWVudCBEUEtHX1JVTk5JTkdfVkVSU0lPTiBtYWludGFpbmVyIHNjcmlwdCBlbnZpcm9ubWVudCB2YXJpYWJsZQorICAgIGluIGRwa2cgbWFuIHBhZ2UuCisgICogQ2hhbmdlIHBvNGEgdXNhZ2UgdG8gbm90IGNyZWF0ZSB1bndhbnRlZCBjaGFuZ2VzIGRlcGVuZGluZyBpZiBkb2luZyBvdXQgb3IKKyAgICBpbi10cmVlIGJ1aWxkcy4KKyAgKiBVc2UgcG80YSDigJwtLXByZXZpb3Vz4oCdIHN1cHBvcnQgd2hlbiB1cGRhdGluZyB0aGUgbWFuIHBhZ2VzLgorICAgIFN1Z2dlc3RlZCBieSBDaHJpc3RpYW4gUGVycmllciA8YnVidWxsZUBkZWJpYW4ub3JnPi4KKyAgKiBPbiBjb25maWd1cmF0aW9uIGVycm9yIHByaW50IGZpbGUgbmFtZSBhbmQgbGluZSBudW1iZXIuCisgICogQWxsb3cgcXVvdGluZyB2YWx1ZXMgaW4gY29uZmlndXJhdGlvbiBmaWxlIG9wdGlvbnMuCisgICogQWRkIG5ldyAtLXByZS1pbnZva2UgYW5kIC0tcG9zdC1pbnZva2UgaG9va3MgaW4gZHBrZy4KKyAgKiBBZGQgbmV3IC0tY29udHJvbC1wYXRoIGNvbW1hbmQgdG8gZHBrZy1xdWVyeS4KKyAgKiBVc2Ugb2hzaGl0IG9uIGJhZCB2ZXJzaW9uIHN5bnRheCBpbiAtLWNvbXBhcmUtdmVyc2lvbnMuCisgICogQWRkIE11bHRpLUFyY2ggdG8gdGhlIGxpc3Qgb2Yga25vd24gYmluYXJ5IHBhY2thZ2UgZmllbGRzIGZvciBkcGtnLWRldi4KKyAgICBUaGFua3MgdG8gU3RldmUgTGFuZ2FzZWsgPHZvcmxvbkBkZWJpYW4ub3JnPi4KKworICBbIFJhcGhhw6tsIEhlcnR6b2cgXQorICAqIFJlcGxhY2UgaW5zdGFsbC1pbmZvIGJ5IGEgd3JhcHBlciBhcm91bmQgR05VJ3MgaW5zdGFsbC1pbmZvLiBUaGUgd3JhcHBlcgorICAgIHdpbGwgYmUgZHJvcHBlZCBpbiBzcXVlZXplKzEuIGRwa2cgbm93IEJyZWFrczogb2xkIHZlcnNpb25zIG9mCisgICAgaW5mby1icm93c2VycyB0aGF0IGRvIG5vdCBkZXBlbmQgb24gdGhlIG5ldyBpbnN0YWxsLWluZm8gcGFja2FnZQorICAgIHRoYXQgcHJvdmlkZXMgdGhlIHJlYWwgZnVuY3Rpb25hbGl0eS4gQ2xvc2VzOiAjOTc3MSwgIzUyMzk4MAorICAgIFNlZSBodHRwOi8vd2lraS5kZWJpYW4ub3JnL1RyYW5zaXRpb25zL0Rwa2dUb0dudUluc3RhbGxJbmZvIGZvciBkZXRhaWxzLgorICAqIEZpeCBkcGtnJ3MgcHJlaW5zdCBpbiBjYXNlIC92YXIvbGliL2Rwa2cvYWx0ZXJuYXRpdmVzIGNvbnRhaW5zIHVuZXhwZWN0ZWQKKyAgICBzdWItZGlyZWN0b3JpZXMuIENsb3NlczogIzUzNTEzOAorICAgIEFuZCBhbHNvIHdoZW4gb25lIG9mIHRoZSBmaWxlIGRvZXNuJ3QgY29udGFpbiBjb3JyZWN0IGFsdGVybmF0aXZlcworICAgIGluZm9ybWF0aW9uIChpbXByb3BlciBudW1iZXIgb2YgbGluZXMpLiBDbG9zZXM6ICM1Mzc1NTgKKyAgKiBVcGdyYWRlIFN0YW5kYXJkcy1WZXJzaW9uIHRvIDMuOC4yIChubyBjaGFuZ2VzKS4KKyAgKiBVcGRhdGUgZGViLXN1YnN0dmFycyg1KSB0byBsaXN0IGZpZWxkcyB0aGF0IGRvIG5vdCBzdXBwb3J0IHN1YnN0dmFycy4KKyAgICBDbG9zZXM6ICM1MzUzNTMKKyAgKiBGaXggZHBrZy1wYXJzZWNoYW5nZWxvZyB0byBpbmNsdWRlIGFsbCBlbnRyaWVzIHdpdGggLXYwIHBhcmFtZXRlci4KKyAgICBDbG9zZXM6ICM1Mzc4MDAKKyAgKiBGaXggdXBkYXRlLWFsdGVybmF0aXZlcyB0byBtZW50aW9uIHRoZSBjb3JyZWN0IHNsYXZlIGxpbmsgdGhhdCBjYW4ndAorICAgIGJlIGluc3RhbGxlZCBkdWUgdG8gYSBjb25mbGljdGluZyBmaWxlIGluc3RlYWQgb2YgcXVvdGluZyB0aGUgbWFzdGVyIGxpbmsuCisgICogQWRkIHN1cHBvcnQgZm9yIGV4dHJhIG92ZXJyaWRlIGZpbGUgaW4gZHBrZy1zY2FucGFja2FnZXMuIFRoYW5rcyB0byBSb2JlcnQKKyAgICBNaWxsYW4gZm9yIHRoZSBwYXRjaC4gQ2xvc2VzOiAjNTM3NTU5CisgICogQWRkIHN1cHBvcnQgZm9yIGV4dHJhIG92ZXJyaWRlIGZpbGUgaW4gZHBrZy1zY2Fuc291cmNlcy4KKyAgKiBEb2N1bWVudCBmb3JtYXQgb2YgZXh0cmEgb3ZlcnJpZGUgZmlsZSBpbiBhIG5ldyBtYW51YWwgcGFnZQorICAgIGRlYi1leHRyYS1vdmVycmlkZSg1KS4KKyAgKiBVcGRhdGUgc2FtcGxlIGluIGRwa2ctZ2Vuc3ltYm9scygxKSB0byBnaXZlIGFuIGFjY3VyYXRlIGxpc3Rpbmcgb2YKKyAgICA2NCBiaXQgYXJjaGVzLiBUaGFua3MgdG8gSnVsaWVuIENyaXN0YXUgZm9yIHRoZSBwYXRjaC4gQ2xvc2VzOiAjNTQwMzgyCisgICogQ3JlYXRlIC9ldGMvY3Jvbi5kYWlseS9kcGtnIHRvIGhhbmRsZSB0aGUgYmFja3VwIG9mCisgICAgL3Zhci9saWIvZHBrZy9zdGF0dXMgaW4gL3Zhci9iYWNrdXBzLiBUaGlzIGlzIHRha2VuIG91dCBvZiB0aGUgY3JvbgorICAgIHBhY2thZ2UgYW5kIG5lZWQgbm8gY29uZmxpY3RzL2JyZWFrcyBhcyB0aGUgY29kZSBkb2VzIG5vdGhpbmcgaWYKKyAgICB0aGUgY3VycmVudCBzdGF0dXMgZmlsZSBpcyBhbHJlYWR5IGJhY2t1cGVkLiBUaGFua3MgdG8gTGVvICdjb3N0ZWxhJworICAgIEFudHVuZXMgPGNvc3RlbGFAZGViaWFuLm9yZz4gZm9yIHRoZSBwYXRjaC4gQ2xvc2VzOiAjNTQxNDEyCisgICogQ2hhbmdlIGJlaGF2aW91ciBvZiBkcGtnIC0tbWVyZ2UtYXZhaWwgdG8gbm90IHVwZGF0ZSBhIHBhY2thZ2UncworICAgIGluZm9ybWF0aW9uIGlmIHRoZSB2ZXJzaW9uIHByb3ZpZGVkIGlzIG9sZGVyIHRoYW4gdGhlIG9uZSBhbHJlYWR5IGxpc3RlZAorICAgIGluIHRoZSBhdmFpbGFibGUgZmlsZS4gVGhhbmtzIHRvIElhbiBKYWNrc29uCisgICAgPGlhbkBkYXZlbmFudC5ncmVlbmVuZC5vcmcudWs+IGZvciB0aGUgcGF0Y2guIENsb3NlczogIzQ5NjExNAorICAqIGRwa2ctYXJjaGl0ZWN0dXJlIGNhbiBub3cgZXhwb3J0IERFQl97SE9TVCxCVUlMRH1fQVJDSF97QklUUyxFTkRJQU59CisgICAgKHBvaW50ZXIgc2l6ZSBhbmQgZW5kaWFubmVzcyk6CisgICAgLSBjcHV0YWJsZSAoaW4gZHBrZykgbW9kaWZpZWQgdG8gY29udGFpbiB0aG9zZSBpbmZvcm1hdGlvbgorICAgIC0gZHBrZy1kZXYgZGVwZW5kcyBvbiBkcGtnICg+PSAxLjE1LjQpIHRvIGVuc3VyZSB0aGF0IHdlIGhhdmUgYW4gdXBkYXRlZAorICAgICAgY3B1dGFibGUgKGFuZCBzbyB0aGF0IGEgdmVyc2lvbmVkIGJ1aWxkLWRlcGVuZGVuY3kgb24gZHBrZy1kZXYgaXMgZW5vdWdoCisgICAgICB0byB1c2UgdGhpcyBuZXcgZmVhdHVyZSkKKyAgICBDbG9zZXM6ICM1MzEzMDcKKyAgKiBTcGxpdCBvdmVybHkgbG9uZyBCaW5hcnk6IGZpZWxkIHZhbHVlcyBvdmVyIG11bHRpcGxlIGxpbmVzLiBUaGlzIGlzCisgICAgYWxsb3dlZCBzaW5jZSBwb2xpY3kgMy44LjMuIENsb3NlczogIzQ5NDcxNAorICAqIEltcHJvdmUgcGVyZm9ybWFuY2Ugb2YgZHBrZy1zaGxpYmRlcHMgYnkgY2FjaGluZyBtaW5pbWFsIHZlcnNpb24KKyAgICBhc3NvY2lhdGVkIHRvIGVhY2ggbGlicmFyeSBpbiBEcGtnOjpTaGxpYjo6U3ltYm9sRmlsZS4gVGhhbmtzIHRvCisgICAgSmnFmcOtIFBhbGXEjWVrIDxqcGFsZWNla0B3ZWIuZGU+IGZvciB0aGUgcGF0Y2guCisgICogU2xpZ2h0bHkgaW1wcm92ZSBkcGtnLXNvdXJjZSgxKSBieSBnaXZpbmcgdGhlIHNlY3Rpb24gbmFtZSB0aGF0IHdlJ3JlCisgICAgcmVmZXJyaW5nIHRvLiBDbG9zZXM6ICM1NDQwMzcKKyAgKiBGaXggdHJhbnNsYXRpb24gZXJyb3IgaW4gR2VybWFuIG1hbnBhZ2Ugb2YgZHBrZy1idWlsZHBhY2thZ2UuIFRoYW5rcworICAgIHRvIEpvYWNoaW0gQnJlaXRuZXIgPG5vbWVhdGFAZGViaWFuLm9yZz4uIENsb3NlczogIzU0MTgyOQorCisgIFsgTW9kZXN0YXMgVmFpbml1cyBdCisgICogUHJvdmlkZSBhIG1lYW5pbmdmdWwgbGFiZWwgZm9yIGRwa2ctZ2Vuc3ltYm9scyBkaWZmLgorCisgIFsgVXBkYXRlZCBkcGtnIHRyYW5zbGF0aW9ucyBdCisgICogQXN0dXJpYW4gKE1hcmNvcyBBbHZhcmV6IENvc3RhbGVzKS4gQ2xvc2VzOiAjNTM1MzI3CisgICogRnJlbmNoIChDaHJpc3RpYW4gUGVycmllcikuCisgICogR2VybWFuIChTdmVuIEpvYWNoaW0pLgorICAqIEl0YWxpYW4gKE1pbG8gQ2FzYWdyYW5kZSkuIENsb3NlczogIzUzNjUzOAorICAqIFJ1c3NpYW4gKFl1cmkgS296bG92KS4gQ2xvc2VzOiAjNTQyMjU0CisgICogU2xvdmFrIChJdmFuIE1hc8OhcikuIENsb3NlczogIzUzNzc0MgorICAqIFN3ZWRpc2ggKFBldGVyIEtyZWZ0aW5nKS4KKworICBbIFVwZGF0ZWQgZHNlbGVjdCB0cmFuc2xhdGlvbnMgXQorICAqIFJ1c3NpYW4gKFl1cmkgS296bG92KS4gQ2xvc2VzOiAjNTQyMjU0CisgICogU2xvdmFrIChJdmFuIE1hc8OhcikuIENsb3NlczogIzUzNzc0MQorCisgIFsgVXBkYXRlZCBtYW4gcGFnZSB0cmFuc2xhdGlvbnMgXQorICAqIEZyZW5jaCAoQ2hyaXN0aWFuIFBlcnJpZXIpLgorICAqIEdlcm1hbiAoSGVsZ2UgS3JldXR6bWFubiksIHByb29mcmVhZCBieSBKZW5zIFNlaWRlbC4KKyAgKiBTd2VkaXNoIChQZXRlciBLcmVmdGluZykuCisKKyAgWyBVcGRhdGVkIHNjcmlwdHMgdHJhbnNsYXRpb25zIF0KKyAgKiBGcmVuY2ggY29tcGxldGVkIChDaHJpc3RpYW4gUGVycmllcikuCisgICogR2VybWFuIChIZWxnZSBLcmV1dHptYW5uKS4KKyAgKiBSdXNzaWFuIChZdXJpIEtvemxvdikuIENsb3NlczogIzU0MjI1NAorICAqIFN3ZWRpc2ggKFBldGVyIEtyZWZ0aW5nKS4KKworIC0tIEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4gIFN1biwgMDYgU2VwIDIwMDkgMDk6Mzc6NDUgKzAyMDAKKworZHBrZyAoMS4xNS4zLjEpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgIFsgTW9kZXN0YXMgVmFpbml1cyBdCisgICogRml4IHdpbGRjYXJkIHN1cHBvcnQgaW4gc3ltYm9sIGZpbGVzLiBDbG9zZXM6ICM1MzYwMzQKKworIC0tIEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4gIFdlZCwgMDggSnVsIDIwMDkgMTE6MjY6MzYgKzAyMDAKKworZHBrZyAoMS4xNS4zKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICBbIEd1aWxsZW0gSm92ZXIgXQorICAqIFVuc2V0IFRBUl9PUFRJT05TIHdoZW4gZXh0cmFjdGluZyAuZGViIGFyY2hpdmVzLgorICAqIFVzZSBkZWZhdWx0IGNvbXByZXNzb3IgdmFsdWVzIGluIGRwa2ctc291cmNlIGZyb20gRHBrZzo6U291cmNlOjpDb21wcmVzc29yLgorICAqIEZpeCBkcGtnLXNjYW5wYWNrYWdlcyB0byBwcm9wZXJseSBkZXRlY3Qgc3B1cmlvdXMgb3ZlcnJpZGVzLgorICAqIFJld3JpdGUgZHBrZy1uYW1lIGluIHBlcmwuCisgICogRG8gbm90IGNsb3NlIGFscmVhZHkgY2xvc2VkIGZpbGVzIGluIHNvbWUgZXJyb3IgY29uZGl0aW9ucyBpbiBsaWJkcGtnLgorICAqIFVzZSB0aGUgY29ycmVjdCB1bml0cyAoS2lCKSBpbiBkcGtnLXNwbGl0IHdoZW4gcmVmZXJyaW5nIHRvIHBhcnRzaXplLgorICAqIERvY3VtZW50IGluIGRwa2ctc3RhdG92ZXJyaWRlKDgpIHRoYXQgbW9kZSBuZWVkcyB0byBiZSBzcGVjaWZpZWQgaW4KKyAgICBvY3RhbC4gQ2xvc2VzOiAjNTM0NTUxCisgICogTWFyayBhcmd1bWVudCBuYW1lcyBpbiBkcGtnLXN0YXRvdmVycmlkZS4xIGluIGl0YWxpYy4KKyAgKiBFeHBsaWNpdGx5IHBhc3MgZmllbGQgYXJndW1lbnQgdG8gRHBrZzo6RXJyb3JIYW5kbGluZzo6dW5rbm93bigpLgorICAqIE1vdmUgdW5rbm93bigpIGZyb20gRHBrZzo6RXJyb3JIYW5kbGluZyB0byBEcGtnOjpGaWVsZHMuCisKKyAgWyBSYXBoYcOrbCBIZXJ0em9nIF0KKyAgKiBVbnNldCBUQVJfT1BUSU9OUyB3aGVuIGNyZWF0aW5nL2V4dHJhY3RpbmcgdGFyIGFyY2hpdmVzIGZvciBzb3VyY2UKKyAgICBwYWNrYWdlcy4gQ2xvc2VzOiAjNTMwODYwCisgICogQWRkIGNsZWFudXAgb2YgYWxsIGludmFsaWQgKG1hc3RlcikgYWx0ZXJuYXRpdmVzIGluIHByZWluc3Qgc2NyaXB0LgorICAgIENsb3NlczogIzUzMDYzMywgIzUzMTYxMSwgIzUzMjczOSwgIzUyMTc2MAorICAqIExldCB1cGRhdGUtYWx0ZXJuYXRpdmVzIGZpeCBhIG1hbnVhbCBhbHRlcm5hdGl2ZSB3aXRoIGEgZGFuZ2xpbmcgc3ltbGluaworICAgIGJ5IHN3aXRjaGluZyBpdCB0byBhdXRvbWF0aWMgbW9kZS4gQ2xvc2VzOiAjNTI5OTk5CisgICogQWRkIG1pc3NpbmcgcGFyYWdyYXBoIHNlcGFyYXRvciBpbiBkcGtnLWJ1aWxkcGFja2FnZSgxKS4gVGhhbmtzIHRvIFBlcgorICAgIEFuZGVyc3NvbiA8YXZ0b2JpZmZAZ21haWwuY29tPi4gQ2xvc2VzOiAjNTMyNzY5CisgICogRml4IEVuZ2xpc2ggbWlzdGFrZSAo4oCcYXMgeW91IHJlcXVlc3TigJ0g4oaSIOKAnGFzIHlvdSByZXF1ZXN0ZWTigJ0pIGluIHNldmVyYWwKKyAgICBwbGFjZXMuIFRoYW5rcyB0byBEYXZpZCBTdGFuc2J5IGZvciB0aGUgcGF0Y2guIENsb3NlczogIzUzMzE3MQorICAqIFN1cHBvcnQgdGFncyBiZWZvcmUgc3ltYm9scyBpbiBzeW1ib2xzIGZpbGUgY29udGFpbmVkIGluIHNvdXJjZSBwYWNrYWdlcy4KKyAgICBUaGUgZmlyc3QgdHdvIHRhZ3MgYXJlICJvcHRpb25hbCIgKHVzZSBpdCB0byBub3QgZmFpbCBpZiB0aGUgc3ltYm9sIG1pZ2h0CisgICAgZGlzYXBwZWFyIGZyb20gdGhlIGxpYnJhcnkgd2l0aG91dCBicmVha2luZyB0aGUgQUJJKSBhbmQgImFyY2giIHRvCisgICAgcmVzdHJpY3QgdGhlIHNldCBvZiBhcmNoaXRlY3R1cmVzIHdoZXJlIHRoZSBzeW1ib2wgaXMgc3VwcG9zZWQgdG8gZXhpc3QuCisgICAgVGhhbmtzIHRvIE1vZGVzdGFzIFZhaW5pdXMgPG1vZGVzdGFzQHZhaW5pdXMuZXU+IGZvciB0aGUgcGF0Y2guCisgICAgU2VlIGRwa2ctZ2Vuc3ltYm9scygxKSBmb3IgbW9yZSBpbmZvcm1hdGlvbi4gQ2xvc2VzOiAjNTIxNTUxCisgICogRG8gbm90IGluY2x1ZGUgI01JU1NJTkcgbGluZXMgaW4gc3ltYm9scyBmaWxlcyBpbnRlZ3JhdGVkIGluIGJpbmFyeQorICAgIHBhY2thZ2VzLiBDbG9zZXM6ICM1MjYyNTEKKyAgKiBBc3N1bWUgYW4gaW1wbGljaXQgdmVyc2lvbiBvZiAiQmFzZSIgZm9yIGFsbCB1bnZlcnNpb25lZCBzeW1ib2xzCisgICAgdGhhdCBhcmUgbWVyZ2VkIGludG8gYSBTeW1ib2xGaWxlLiBDbG9zZXM6ICM1MzMxODEKKyAgKiBBZGQgbmV3IHRhZyAiaWdub3JlLWJsYWNrbGlzdCIgdG8gZm9yY2UtaW5jbHVkZSBzeW1ib2xzIHdoaWNoIGFyZQorICAgIG5vcm1hbGx5IGJsYWNrbGlzdGVkLiBUaGlzIGNhbiBiZSB1c2VmdWwgZm9yIGxpYmdjYyB0byBpbmNsdWRlIHN5bWJvbHMKKyAgICB0aGF0IHRoZSB0b29sY2hhaW4gYWxsb3dzIHRvIGJlIHNoYXJlZCBidXQgdGhhdCBhcmUgb2Z0ZW4gc3RhdGljIChhbmQKKyAgICBoZW5jZSBhcmUgYmxhY2tsaXN0ZWQgZm9yIHRoaXMgcmVhc29uKS4gQ2xvc2VzOiAjNTMzNjQyCisgICogSW4gZHBrZy1zb3VyY2UsIGV4cGxpY2l0bHkgcGFzcyAtLWtleXJpbmcgfi8uZ251cGcvdHJ1c3RlZGtleXMuZ3BnIHRvCisgICAgZ3BndiBhcyBpdCBkb2VzIG5vdCB1c2UgaXQgaWYgb3RoZXIgLS1rZXlyaW5nIHBhcmFtZXRlcnMgYXJlIGdpdmVuLgorICAgIENsb3NlczogIzUzMDc2OQorICAqIEluIGRwa2ctdmVuZG9yLCBhbGxvdyB0byB1c2UgZGFzaGVzIGluc3RlYWQgb2Ygc3BhY2VzIGluIHZlbmRvcgorICAgIGZpbGVuYW1lcy4gQ2xvc2VzOiAjNTMyMjIyCisgICogU2tpcCBkcGtnLWdlbmNoYW5nZXMnIHdhcm5pbmcgYWJvdXQgbG93ZXIgdmVyc2lvbiBudW1iZXJzIGZvciBiYWNrcG9ydHMKKyAgICAocmVjb2duaXplZCBieSB+YnBvIG9yIH52b2xhIGluIHRoZWlyIHZlcnNpb24gbnVtYmVyKS4gQ2xvc2VzOiAjNTI1MTE1CisgICogU3VwcG9ydCBhbGwgY2hlY2tzdW0gYWxnb3JpdGhtcyBpbiBkcGtnLXNjYW5wYWNrYWdlcy9kcGtnLXNjYW5zb3VyY2VzLgorICAgIENsb3NlczogIzUzMzgyOAorICAqIEZpeCBkZXBlbmRlbmN5IHBhcnNpbmcgY29kZSBpbiBEcGtnOjpEZXBzIHRvIG5vdCBhY2NlcHQgImZvb1xuYmFyIgorICAgIGV2ZW4gaWYgZm9vIGlzIHZhbGlkLiBDbG9zZXM6ICM1MzQ0NjQKKyAgICBUaGFua3MgdG8gQW5kcmV3IFNheWVycyBmb3Igc3BvdHRpbmcgdGhlIHByb2JsZW0uCisKKyAgWyBKb2FjaGltIEJyZWl0bmVyIF0KKyAgKiBXYXJuIGFib3V0IHVudXNlZCBzdWJzdHZhcnMgaW4gZHBrZy1nZW5jb250cm9sLiBDbG9zZXM6ICM1MzI3NjAKKworICBbIFVwZGF0ZWQgZHBrZyB0cmFuc2xhdGlvbnMgXQorICAqIENhdGFsYW4gKEpvcmRpIE1hbGxhY2gpLiBDbG9zZXM6ICM1MzIxMDkKKyAgKiBDemVjaCAoTWlyb3NsYXYgS3VyZSkuCisgICogR2VybWFuIChTdmVuIEpvYWNoaW0pLiBDbG9zZXM6ICM1MzQ4MzEKKyAgKiBTaW1wbGlmaWVkIENoaW5lc2UgKERlbmcgWGl5dWUpLiBDbG9zZXM6ICM1MzEzODcKKyAgKiBTd2VkaXNoIChQZXRlciBLcmVmdGluZykuCisKKyAgWyBVcGRhdGVkIGRzZWxlY3QgdHJhbnNsYXRpb25zIF0KKyAgKiBDemVjaCAoTWlyb3NsYXYgS3VyZSkuCisKKyAgWyBVcGRhdGVkIG1hbiBwYWdlIHRyYW5zbGF0aW9ucyBdCisgICogR2VybWFuIChIZWxnZSBLcmV1dHptYW5uKS4KKyAgKiBTd2VkaXNoIChQZXRlciBLcmVmdGluZykuCisKKyAgWyBVcGRhdGVkIHNjcmlwdHMgdHJhbnNsYXRpb25zIF0KKyAgKiBHZXJtYW4gKEhlbGdlIEtyZXV0em1hbm4pLgorICAqIFN3ZWRpc2ggKFBldGVyIEtyZWZ0aW5nKS4KKworIC0tIEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4gIFNhdCwgMjcgSnVuIDIwMDkgMTk6MDY6NDMgKzAyMDAKKworZHBrZyAoMS4xNS4yKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICBbIEd1aWxsZW0gSm92ZXIgXQorICAqIEZpeCBGVEJGUyBvbiBHTlUvSHVyZCBkdWUgdG8gYSBtaXNtYXRjaGVkIGRlZmluZSB1c2FnZSBpbgorICAgIHN0YXJ0LXN0b3AtZGFlbW9uLiBDbG9zZXM6ICM1MzA0NDYKKyAgKiBSZW1vdmUgb2Jzb2xldGUgcHJpb3JpdGllcyBzdXBwb3J0IGZyb20gZHNlbGVjdC4KKyAgICBUaGFua3MgdG8gU3ZlbiBKb2FjaGltIDxzdmVuam9hY0BnbXguZGU+LgorICAqIEZpeCBiYXNoaXNtICjigJxlY2hvIC1l4oCdKSBpbiBkc2VsZWN0IGRpc2sgc2V0dXAgbWV0aG9kLiBDbG9zZXM6ICM1MzAwNzEKKyAgKiBQcm9wZXJseSBwYXJzZSBmZGlzayBvdXRwdXQgaW4gZHNlbGVjdCBkaXNrIHNldHVwIG1ldGhvZC4KKyAgKiBGaXggbWVtb3J5IGxlYWtzIGR1ZSB0byBub3QgZGVzdHJveWluZyBzb21lIHBrZyBpdGVyYXRvcnMuCisKKyAgWyBVcGRhdGVkIGRwa2cgdHJhbnNsYXRpb25zIF0KKyAgKiBBc3R1cmlhbiAoTWFyY29zIEFsdmFyZXogQ29zdGFsZXMpLiBDbG9zZXM6ICM1Mjk4ODkKKyAgKiBCYXNxdWUgKFBpYXJyZXMgQmVvYmlkZSkuIENsb3NlczogIzUyOTg1NworICAqIEZyZW5jaCAoQ2hyaXN0aWFuIFBlcnJpZXIpLgorICAqIEdlcm1hbiAoU3ZlbiBKb2FjaGltKS4KKworICBbIFVwZGF0ZWQgbWFuIHBhZ2UgdHJhbnNsYXRpb25zIF0KKyAgKiBHZXJtYW4gKEhlbGdlIEtyZXV0em1hbm4pLgorCisgIFsgVXBkYXRlZCBkc2VsZWN0IHRyYW5zbGF0aW9ucyBdCisgICogRnJlbmNoIChDaHJpc3RpYW4gUGVycmllcikuCisKKyAgWyBVcGRhdGVkIHNjcmlwdHMgdHJhbnNsYXRpb25zIF0KKyAgKiBGcmVuY2ggKENocmlzdGlhbiBQZXJyaWVyKS4KKyAgKiBHZXJtYW4gKEhlbGdlIEtyZXV0em1hbm4pLgorCisgLS0gR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPiAgVHVlLCAyNiBNYXkgMjAwOSAwMTowMDozNiArMDIwMAorCitkcGtnICgxLjE1LjEpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgIFsgUmFwaGHDq2wgSGVydHpvZyBdCisgICogRml4IGRwa2ctZ2VuY2hhbmdlcyB0byBub3QgaW5jbHVkZSB0aGUgYWRkaXRpb25hbCB1cHN0cmVhbSB0YXJiYWxscworICAgIHdoZW4gdGhleSBhcmUgbm90IGRlc2lyZWQgKHNwZWNpZmljIHRvIHNvdXJjZSBwYWNrYWdlcyB1c2luZyBmb3JtYXQgMy4wCisgICAgcXVpbHQpLgorICAqIENhbGwgcXVpbHQgb25seSBvbmNlIHRvIGFwcGx5IGFsbCBwYXRjaGVzIGluc3RlYWQgb2Ygb25jZSBwZXIgcGF0Y2gKKyAgICB3aGVuIGJ1aWxkaW5nIDMuMCAocXVpbHQpIHNvdXJjZSBwYWNrYWdlcy4gQ2xvc2VzOiAjNTE4NDUzCisgICogRml4IGRwa2ctc2hsaWJkZXBzIHNvIHRoYXQgaXQgd29ya3MgYWdhaW4gd2hlbiBhbmFseXppbmcgYmluYXJpZXMKKyAgICBvdXRzaWRlIG9mIHBhY2thZ2UncyBkaXJlY3RvcnkuIENsb3NlczogIzUxODY4NworICAqIE1vZGlmeSBkcGtnLXNobGliZGVwcyB0byBsZXQgc2hsaWJzLmxvY2FsIG92ZXJyaWRlIHN5bWJvbHMgZmlsZXMgdG9vLgorICAqIERyb3Agc3VwcG9ydCBvZiBkZWJpYW4vY29udHJvbCdzIOKAnEZvcm1hdOKAnSBmaWVsZCB1c2VkIGJ5IGRwa2ctc291cmNlIHdoaWxlCisgICAgaXQncyBub3QgdG9vIGxhdGUuIEluc3RlYWQgZGViaWFuL3NvdXJjZS9mb3JtYXQgc2hvdWxkIGJlIHVzZWQgdG8gaW5kaWNhdGUKKyAgICB0aGUgZGVzaXJlZCBzb3VyY2UgcGFja2FnZSBmb3JtYXQuCisgICogVXBkYXRlIGRlYi10cmlnZ2Vycyg1KSBhbmQgZHBrZy10cmlnZ2VyKDEpIHRvIGFkZCBhIHJlZmVyZW5jZSB0bworICAgIC91c3Ivc2hhcmUvZG9jL2Rwa2cvdHJpZ2dlcnMudHh0Lmd6LiBDbG9zZXM6ICM1MTk3MTcKKyAgKiBBdm9pZCBwZXJsIHdhcm5pbmdzIGluIGRwa2ctZ2VuY29udHJvbCBhbmQgZHBrZy1nZW5jaGFuZ2VzIHdoZW4gdGhlCisgICAgQXJjaGl0ZWN0dXJlIGZpZWxkIGlzIG1pc3NpbmcgaW4gYSBiaW5hcnkgcGFja2FnZS4gQ2xvc2VzOiAjNTEwMjgyCisgICogTW9kaWZ5IERwa2c6OlZlcnNpb246OmNoZWNrX3ZlcnNpb24oKSB0byBub3QgZGllIGJ5IGRlZmF1bHQuCisgICAgQ2xvc2VzOiAjNTEwNjE1CisgICogZHBrZy1zb3VyY2Ugbm93IGlnbm9yZXMgYWxsIHBvc3NpYmxlIHZpIHN3YXAgZmlsZSBleHRlbnNpb25zIChhbmQgbm90CisgICAgb25seSAuc3dwKS4gVGhlIGNvcnJlc3BvbmRpbmcgZXhjbHVkZSBwYXR0ZXJuIGZvciAtSSBhbHNvIGdvdCB0aWdodGVuZWQgdG8KKyAgICBvbmx5IGNhdGNoIGZpbGVuYW1lcyBzdGFydGluZyB3aXRoIGEgZG90LiBDbG9zZXM6ICM1MTU1NDAKKyAgKiBkcGtnLWdlbmNvbnRyb2wgZGlzcGxheXMgYSBiZXR0ZXIgZXJyb3IgbWVzc2FnZSB3aGVuIGFuIE9SZWQgZGVwZW5kZW5jeQorICAgIGlzIHVzZWQgaW4gYSB1bmlvbiBmaWVsZCBsaWtlIENvbmZsaWN0cywgUmVwbGFjZXMgb3IgQnJlYWtzLgorICAgIENsb3NlczogIzQ4OTIzOAorICAqIGRwa2ctc291cmNlJ3Mgc2lnbmF0dXJlIGNoZWNrIGlzIG5vdyBkb25lIHdpdGggZ3BndiBpZiBwb3NzaWJsZSBhbmQKKyAgICB0aW1lb3V0cyBpZiBub3QgY29tcGxldGVkIHdpdGhpbiAxMCBzZWNvbmRzLiBDbG9zZXM6ICM0OTA5MjkKKyAgICBXaGVuIHVzaW5nIGdwZywgdXNlIC0tbm8tZGVmYXVsdC1rZXlyaW5nIHRvIGJlIGNvbnNpc3RlbnQgd2l0aCBncGd2J3MKKyAgICBiZWhhdmlvdXIgdG8gbm90IHVzZSB0aGUgdXNlcidzIGtleXJpbmcuIENsb3NlczogIzQ0MDg0MQorICAqIFVwZGF0ZSBkcGtnLWRldiBkZXBlbmRlbmNpZXM6IENsb3NlczogIzQ3Mjk0MgorICAgIC0gTW92ZSBnbnVwZyB0byBSZWNvbW1lbmRzLiBJdCdzIG5lZWRlZCB0byBzaWduIC5kc2MgYW5kIC5jaGFuZ2VzLgorICAgIC0gQWRkIGdwZ3YgdG8gUmVjb21tZW5kcy4gVXNlZnVsIHRvIGNoZWNrIHNpZ25hdHVyZXMgb2YgZXh0cmFjdGVkIHBhY2thZ2VzLgorICAgIC0gQWRkIGRlYmlhbi1tYWludGFpbmVycyB0byBTdWdnZXN0cy4gVG9nZXRoZXIgd2l0aCBkZWJpYW4ta2V5cmluZyB0aGV5CisgICAgY29udGFpbiBhbGwgdGhlIEdQRyBrZXlzIHJlcXVpcmVkIHRvIHZlcmlmeSBvZmZpY2lhbCBEZWJpYW4gcGFja2FnZXMuCisgICogRHJvcCAvZXRjL2Rwa2cvb3JpZ2lucyBhcyBpdCdzIHRha2VuIG92ZXIgYnkgYmFzZS1maWxlcyAoc2VlICM0ODc0MzcpLgorICAqIEZpeCBkcGtnLXNobGliZGVwcyB0byBwcm9wZXJseSBpbml0aWFsaXplIGEgc3ltYm9sLWJhc2VkIGRlcGVuZGVuY3kKKyAgICBldmVuIHdoZW4gc29tZSBzeW1ib2xzIGFyZSBhc3NvY2lhdGVkIHdpdGggYSAoZmFrZSkgdmVyc2lvbiAiMCIuIFN1Y2ggYQorICAgIHZlcnNpb24gbWVhbnMgdGhhdCB0aGUgc3ltYm9sIGhhcyBhbHdheXMgZXhpc3RlZCBpbiBhbGwgdmVyc2lvbnMgb2YgdGhlCisgICAgcGFja2FnZS4KKyAgKiBXaGVuIGRwa2cgZGVsZWdhdGVzIHRvIGRwa2ctcXVlcnkgb3IgZHBrZy1kZWIgdG8gZG8gdGhlIGFjdHVhbCB3b3JrLCBhZGQKKyAgICB0aGUgIi0tIiBtYXJrZXIgdG8gZXhwbGljaXRseSBkb2N1bWVudCB0aGUgZW5kIG9mIG9wdGlvbnMgc28gdGhhdAorICAgIGFyZ3VtZW50cyBzdGFydGluZyB3aXRoIGEgZGFzaCBhcmUgbm90IGludGVycHJldGVkIGFzIG9wdGlvbnMuCisgICAgQ2xvc2VzOiAjMjkzMTYzCisgICAgVGhhbmtzIHRvIEJpbGwgQWxsb21iZXJ0IGZvciB0aGUgcGF0Y2guCisgICogZHBrZyBub3cgY29ycmVjdGx5IHJlZnVzZXMgZW1wdHkgcGFyYW1ldGVycyB3aGVuIGFuIGludGVnZXIgdmFsdWUgaXMKKyAgICB3YW50ZWQuIENsb3NlczogIzM4NjE5NyBCYXNlZCBvbiBhIHBhdGNoIGJ5IEJpbGwgQWxsb21iZXJ0LgorICAqIEZpeCBhIG1pc3Rha2UgaW4gdGhlIGZyZW5jaCB0cmFuc2xhdGlvbiBvZiBkcGtnJ3MgbWFudWFsIHBhZ2UuCisgICAgVGhhbmtzIHRvIEpvbmF0aGFuIEdpYmVydC4gQ2xvc2VzOiAjNTIyMDMyCisgICogRml4IGRwa2ctc291cmNlIHRvIG5vdCBkaWUgd2hlbiB1bmNvbXByZXNzb3IgcHJvY2Vzc2VzIGFyZSBraWxsZWQgYnkKKyAgICBTSUdQSVBFIGR1ZSB0byB0YXIgY2xvc2luZyB0aGUgcGlwZSB3aXRob3V0IGV4aGF1c3RpbmcgYWxsIHRoZSBkYXRhCisgICAgYXZhaWxhYmxlLiBDbG9zZXM6ICM1MjMzMjkKKyAgKiBkcGtnLWdlbmNvbnRyb2wgbm93IGhhbmRsZXMgcHJvcGVybHkgKGVtcHR5KSBkZXBlbmRlbmNpZXMgd2hpY2ggY29udGFpbgorICAgIG9ubHkgc3BhY2VzLiBDbG9zZXM6ICM1MjI3ODcKKyAgKiBkcGtnLXNvdXJjZSBub3cgYWNjZXB0cyBhZGRpdGlvbmFsIHRhcmJhbGxzIChpbiBmb3JtYXQgIjMuMCAocXVpbHQpIikKKyAgICB3aXRoIGEgImNvbXBvbmVudCIgbmFtZSBjb250YWluaW5nIGRhc2hlcy4gQ2xvc2VzOiAjNTI0Mzc2CisgICogRml4IGRwa2ctc291cmNlIHRvIG5vdCBjb21wbGFpbiBvbiBiaW5hcnkgZmlsZXMgdGhhdCBhcmUgaWdub3JlZCBhbmQgYXJlCisgICAgbm90IGdvaW5nIHRvIGJlIGluY2x1ZGVkIGluIHRoZSBkZWJpYW4gdGFyYmFsbCBvZiBhICIzLjAgKHF1aWx0KSIgc291cmNlCisgICAgcGFja2FnZS4gQ2xvc2VzOiAjNTI0Mzc1CisgICogQnVtcCBTdGFuZGFyZHMtVmVyc2lvbiB0byAzLjguMSAobm8gY2hhbmdlIHJlcXVpcmVkKS4KKyAgKiBEbyBub3Qgc3RvcmUgdXNlcm5hbWVzIGFuZCBncm91cCBuYW1lcyBpbiB0YXJiYWxscyBjcmVhdGVkIGJ5IGRwa2ctc291cmNlLAorICAgIHRoZXkgYXJlIGFueXdheSBpZ25vcmVkIGF0IHVucGFjayB0aW1lLiBDbG9zZXM6ICM1MjMxODQKKyAgKiBGaXggdXBkYXRlLWFsdGVybmF0aXZlcyB0byBub3QgcmVtb3ZlIHJlYWwgZmlsZXMgaW5zdGFsbGVkIGluIHBsYWNlIG9mCisgICAgYW4gYWx0ZXJuYXRpdmUgbGluayB3aGVuIHRoZSBjb3JyZXNwb25kaW5nIGFsdGVybmF0aXZlIGlzIGZ1bGx5IHJlbW92ZWQuCisgICAgQ2xvc2VzOiAjNTI2NTM4CisgICogQWRkIGEgbmV3IGRwa2ctdmVuZG9yIHRvb2wgdG8gcXVlcnkgdmVuZG9yIGluZm9ybWF0aW9uIHN0b3JlZCBpbgorICAgIC9ldGMvZHBrZy9vcmlnaW5zLiBJdCBjYW4gYmUgdXNlZCBpbiBkZWJpYW4vcnVsZXMgdG8gZW5hYmxlIGRpZmZlcmVudAorICAgIGJlaGF2aW91ciBkZXBlbmRpbmcgb24gdGhlIGN1cnJlbnQgdmVuZG9yIGF0IHRoZSB0aW1lIG9mIHRoZSBidWlsZC4KKyAgICBDbG9zZXM6ICM0OTgzODAKKyAgICBNb2RpZnkgZHBrZy1idWlsZHBhY2thZ2UgdG8gbm90IHNldCB0aGUgREVCX1ZFTkRPUiBlbnZpcm9ubWVudCB2YXJpYWJsZSwKKyAgICBwYWNrYWdlcyBzaG91bGQgdXNlIHRoZSBkcGtnLXZlbmRvciBwcm9ncmFtIGluc3RlYWQuCisgICogRW5zdXJlIHRoYXQgdGhlIGF1dG9tYXRpYyBwYXRjaCBjcmVhdGVkIGluIGZvcm1hdCAiMy4wIChxdWlsdCkiIGlzIGFsd2F5cworICAgIHdlbGwgcmVnaXN0ZXJlZCB3aXRoIHF1aWx0IGV2ZW4gd2hlbiBpdCdzIHVwZGF0ZWQgYnkgYSBuZXcgY2FsbCB0bworICAgIGRwa2ctc291cmNlLiBUaGFua3MgdG8gR29zd2luIHZvbiBCcmVkZXJsb3cgZm9yIHRoZSBpbml0aWFsIHBhdGNoLgorICAgIENsb3NlczogIzUyNTg1OAorICAqIERvIG5vdCB1cGRhdGUvY3JlYXRlIGRlYmlhbi9wYXRjaGVzLy5kcGtnLXNvdXJjZS1hcHBsaWVkIGR1cmluZyBidWlsZCwKKyAgICBpdCdzIG9ubHkgbWVhbnQgdG8gZG9jdW1lbnQgd2hhdCBwYXRjaGVzIGhhdmUgYmVlbiBhcHBsaWVkIGF0IGV4dHJhY3Rpb24KKyAgICB0aW1lLiBDbG9zZXM6ICM1MjU4MzUKKyAgKiBMZXQgZHBrZy1idWlsZHBhY2thZ2UgYWRkIHRoZSBtaXNzaW5nIGV4ZWN1dGUgcmlnaHQgb24gZGViaWFuL3J1bGVzIGlmCisgICAgbmVlZGVkLiBEaXNwbGF5IGEgd2FybmluZyB3aGVuIGl0IGhhcHBlbnMuIENsb3NlczogIzQ5OTA4OAorICAqIEFsbG93IHRvIGNvbWJpbmUgLW5jIGFuZCAtUyBpbiBkcGtnLWJ1aWxkcGFja2FnZSBidXQgZGlzcGxheSBhIHdhcm5pbmcKKyAgICBzYXlpbmcgdGhhdCBpdCdzIG5vdCBhZHZpc2VkLiBDbG9zZXM6ICMzMDQ0MDQKKyAgKiBMZXQgZHBrZy1idWlsZHBhY2thZ2UgZXJyb3Igb3V0IHdpdGggc3VicHJvY2VycigpIHdoZW4gZHBrZy1jaGVja2J1aWxkZGVwcworICAgIGlzIGludGVycnVwdGVkL2tpbGxlZCBieSBhIHNpZ25hbC4gQ2xvc2VzOiAjNDk4NzM0CisgICogRml4IGRwa2ctYnVpbGRwYWNrYWdlL2Rwa2ctZ2VuY2hhbmdlcyB0byBwcm9wZXJseSBpbnRlcnByZXQgb3B0aW9uIC12MC4KKyAgICBDbG9zZXM6ICM0NzU5MTYKKyAgKiBJbXByb3ZlcyBob3cgZHBrZy1wYXJzZWNoYW5nZWxvZyBoYW5kbGVzIG5vbi1leGlzdGluZyB2ZXJzaW9ucworICAgIGluIGl0cyAtLXNpbmNlLCAtLXVudGlsLCAtLXRvLCAtLWZyb20gb3B0aW9ucy4gQXBwcm94aW1hdGUgdGhlIGludGVudAorICAgIGJ5IHNlbGVjdGluZyB0aGUgbmVhcmVzdCB2ZXJzaW9uIGluc3RlYWQuIENsb3NlczogIzQ3NzYzOAorICAqIFVwZGF0ZSBkcGtnLXBhcnNlY2hhbmdlbG9nJ3MgZG9jdW1lbnRhdGlvbiB0byBtYWtlIGl0IGNsZWFyZXIgdGhhdCBzcGFjZXMKKyAgICBhcmUgbm90IGFsbG93ZWQgYmV0d2VlbiBzaW5nbGUgY2hhcmFjdGVycyBvcHRpb25zIGFuZCB0aGVpciB2YWx1ZXMuCisgICAgQ2xvc2VzOiAjNDk0ODgzCisgICogRG9uJ3QgbGV0IGRwa2ctc2NhbnBhY2thZ2VzIGNvbXBsYWluIGFib3V0IG1pc3Npbmcgb3ZlcnJpZGVzIHdoZW4KKyAgICBubyBvdmVycmlkZXMgZmlsZSBoYXMgYmVlbiBnaXZlbi4gQ2xvc2VzOiAjNDY4MTA2CisgICAgVGhhbmtzIHRvIFBpb3RyIEVuZ2Vsa2luZyBmb3IgdGhlIHBhdGNoLgorCisgIFsgR3VpbGxlbSBKb3ZlciBdCisgICogRml4IHR5cG8gaW4gZHBrZyBvdXRwdXQgKOKAmHVuZXhlY3B0ZWTigJkg4oaSIOKAmHVuZXhwZWN0ZWTigJkpLiBDbG9zZXM6ICM1MTkwODIKKyAgICBUaGFua3MgdG8gSXZhbiBNYXPDoXIuCisgICogU3luYyBhcmNodGFibGUgd2l0aCBhcmNoaXRlY3R1cmVzIGN1cnJlbnRseSBwcmVzZW50IGluIERlYmlhbiBzaWQuCisgICAgLSBSZW1vdmUgbTY4ay4KKyAgICAtIEFkZCBrZnJlZWJzZC1pMzg2IGFuZCBrZnJlZWJzZC1hbWQ2NC4KKyAgKiBBZGQgYXZyMzIgdG8gY3B1dGFibGUuIENsb3NlczogIzUyMzQ1NgorICAqIERldGVjdCB0aGUgY3Vyc2VzIGhlYWRlcnMgdG8gdXNlIGluc3RlYWQgb2YgaGFyZGNvZGluZyB0aGVtLgorICAqIE1ha2UgZHBrZy1zb3VyY2UgZG8gbm90IHNldCBhcmNoOmFueSBpbiAuZHNjIG9uIGFyY2gtcmVzdHJpY3RlZCBwYWNrYWdlcy4KKyAgICBUaGFua3MgdG8gUGhpbGlwcCBLZXJuIDxwa2VybkBkZWJpYW4ub3JnPi4gQ2xvc2VzOiAjNTI2NjE3CisgICogQWRkICcuaGd0YWdzJyB0byB0aGUgZGVmYXVsdCBkcGtnLXNvdXJjZSAtaSByZWdleCBhbmQgLUkgcGF0dGVybi4KKyAgICBDbG9zZXM6ICM1MjU4NTQKKyAgKiBVc2UgYmFja3RpY2tzIGluc3RlYWQgb2Ygbm9uLXBvcnRhYmxlIG1ha2UgJChzaGVsbCkgZnVuY3Rpb24gaW4gYXV0b21ha2UuCisgICogRG8gbm90IGluc3RhbGwgZHNlbGVjdCBhbmQgc3RhcnQtc3RvcC1kYWVtb24gbWFuIHBhZ2VzIHdoZW4gdGhlIHByb2dyYW1zCisgICAgaGF2ZSBiZWVuIGRpc2FibGVkIGZyb20gY29uZmlndXJlLgorICAqIE1vdmUgRGViaWFuIHNwZWNpZmljIGtleXJpbmdzIHRvIHRoZSBEZWJpYW4gdmVuZG9yIGNsYXNzIGFuZCBjaGFuZ2UgdGhlCisgICAgVWJ1bnR1IHZlbmRvciBjbGFzcyB0byBpbmhlcml0IGZyb20gaXQuCisgICogRG8gbm90IHNldCB0aGUgQXJjaCBzdWJzdHZhciBpbiBkcGtnLXNvdXJjZSwgYXZvaWRpbmcgZ2VuZXJhdGluZyB3YXJuaW5ncworICAgIHdoZW4gdGhlcmUncyBubyBjb21waWxlciBwcmVzZW50LiBDbG9zZXM6ICM1MjYxMzIKKyAgKiBQcmVzZXJ2ZSBmYXVsdGluZyBlcnJubyB3aGVuIHByaW50aW5nIHJlYXNvbiBpbiBzdGFydC1zdG9wLWRhZW1vbiBmYXRhbAorICAgIGZ1bmN0aW9uLgorICAqIE9ubHkgcHJpbnQgZmF0YWwgZXJybm8gc3RyaW5nIGluIHN0YXJ0LXN0b3AtZGFlbW9uIGlmIGl0IHdhcyBub24temVyby4KKyAgKiBQcmludCB0aGUgdmFsaWQgdmFsdWVzIGZvciB0aGUgSU8gc2NoZWR1bGVyIGNsYXNzIGluIHN0YXJ0LXN0b3AtZGFlbW9uCisgICAgLS1oZWxwIG91dHB1dC4KKyAgKiBQcmludCBhIHdhcm5pbmcgd2hlbiB1c2luZyBvYnNvbGV0ZSAnLS1wcmludC1pbnN0YWxsYXRpb24tYXJjaGl0ZWN0dXJlJy4KKyAgICBDbG9zZXM6ICM1MjgxNzEKKyAgKiBSZW1vdmUgb2Jzb2xldGUgLS1sYXJnZW1lbSBhbmQgLS1zbWFsbG1lbSBkcGtnIG9wdGlvbnMuCisgICogUmVtb3ZlIG9ic29sZXRlIC0tZm9yY2UtYXV0by1zZWxlY3QgZHBrZyBvcHRpb24uCisgICogUmVtb3ZlIG9ic29sZXRlIHByaW9yaXRpZXMgc3VwcG9ydCBmcm9tIGRwa2cuCisgICogUmVtb3ZlIG9ic29sZXRlIDgyMi1kYXRlIHByb2dyYW0uCisgICogRG8gbm90IHJpZ2h0IGp1c3RpZnkgdGhlIGRhdGFiYXNlIHJlYWRpbmcgcHJvZ3Jlc3MgcGVyY2VudCBjb3VudGVyLgorICAqIFJlbW92ZSBkZXByZWNhdGVkIHN0YXR1cyBvbiBzdWJzdHZhcnMgZm9yIGRwa2ctc291cmNlIGRwa2ctZ2VuY2hhbmdlcywKKyAgICBhbmQgc3RvcCBwcm9kdWNpbmcgd2FybmluZ3MuCisgICogTWFrZSBkZXByZWNhdGVkIGRwa2ctc2NhbnBhY2thZ2VzIC0tdWRlYiBvcHRpb24gcHJvZHVjZSBhIHdhcm5pbmcuCisgICogQ2hhbmdlIGRwa2ctc291cmNlIC0taGVscCBvdXRwdXQgdG8gc3RhdGUgdGhlcmUncyBubyBkZWZhdWx0IHN1YnN0dmFyCisgICAgZmlsZSB0byBtYXRjaCByZWFsaXR5LgorICAqIFdhcm4gaW4gc3RhcnQtc3RvcC1kYWVtb24gaWYgdGhlIGFyZ3VtZW50IHRvIC0tbmFtZSBpcyBsb25nZXIgdGhhbiB0aGUKKyAgICBzdXBwb3J0ZWQga2VybmVsIHByb2Nlc3MgbmFtZSBzaXplLiBDbG9zZXM6ICMzNTMwMTUsICM1MTkxMjgKKyAgKiBEbyBub3Qgd2FybiBpbiBkcGtnLWRlYiB3aGVuIHBhcnNpbmcgdW5rbm93biBmaWVsZHMgd2l0aCB0aGUg4oCcUHJpdmF0ZS3igJ0KKyAgICBwcmVmaXguIEJhc2VkIG9uIGEgcGF0Y2ggYnkgTmlscyBSZW5uZWJhcnRoLiBDbG9zZXM6ICMzNTMwNDAKKworICBbIEZyYW5rIExpY2h0ZW5oZWxkIF0KKyAgKiBEcGtnOjpWZXJzaW9uOiBSZW1vdmUgdW5uZWNlc3NhcnkgZnVuY3Rpb24gbmV4dF9lbGVtIHdoaWNoIGp1c3QKKyAgICByZXBsaWNhdGVzIHRoZSBzdGFuZGFyZCBzaGlmdCBiZWhhdmlvdXIuCisKKyAgWyBDb2xpbiBXYXRzb24gXQorICAqIEFkZCAia2V5cmluZ3MiIHZlbmRvciBob29rLCB1c2VkIGJ5IGRwa2ctc291cmNlIHRvIGFsbG93IHZlbmRvcnMgdG8KKyAgICBzdXBwbHkgYWRkaXRpb25hbCBrZXlyaW5ncyBhZ2FpbnN0IHdoaWNoIHNvdXJjZSBwYWNrYWdlIHNpZ25hdHVyZXMgd2lsbAorICAgIGJlIHZlcmlmaWVkLiBJbXBsZW1lbnQgdGhpcyBmb3IgVWJ1bnR1LiBDbG9zZXM6ICM1MjU4MzQKKworICBbIFVwZGF0ZWQgZHNlbGVjdCB0cmFuc2xhdGlvbnMgXQorICAqIEdlcm1hbiAoU3ZlbiBKb2FjaGltKS4KKyAgKiBTd2VkaXNoIChQZXRlciBLcmVmdGluZykuCisKKyAgWyBVcGRhdGVkIHNjcmlwdHMgdHJhbnNsYXRpb25zIF0KKyAgKiBGcmVuY2ggKENocmlzdGlhbiBQZXJyaWVyKS4KKyAgKiBHZXJtYW4gKEhlbGdlIEtyZXV0em1hbm4pLgorICAqIFN3ZWRpc2ggKFBldGVyIEtyZWZ0aW5nKS4KKworICBbIEFkZGVkIGRwa2cgdHJhbnNsYXRpb25zIF0KKyAgKiBBc3R1cmlhbiAoTWFyY29zIEFsdmFyZXogQ29zdGFsZXMpLiBDbG9zZXM6ICM1MTk0NzgsICM1MTk4MTMsICM1MTk5OTgKKyAgKiBFc3BlcmFudG8gKEZlbGlwZSBDYXN0cm8pLiBDbG9zZXM6ICM1MjMwMjMKKworICBbIFVwZGF0ZWQgZHBrZyB0cmFuc2xhdGlvbnMgXQorICAqIEZyZW5jaCAoQ2hyaXN0aWFuIFBlcnJpZXIpLgorICAqIEdlcm1hbiAoU3ZlbiBKb2FjaGltKS4KKyAgKiBTbG92YWsgKEl2YW4gTWFzw6FyKS4gQ2xvc2VzOiAjNTE5MDg0CisgICogU3dlZGlzaCAoUGV0ZXIgS3JlZnRpbmcpLgorICAqIFJ1c3NpYW4gKFl1cmkgS296bG92KS4gQ2xvc2VzOiAjNTI2NjU5CisKKyAgWyBVcGRhdGVkIG1hbiBwYWdlIHRyYW5zbGF0aW9ucyBdCisgICogR2VybWFuIChIZWxnZSBLcmV1dHptYW5uKS4KKyAgKiBTd2VkaXNoIChQZXRlciBLcmVmdGluZykuCisKKyAtLSBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+ICBUaHUsIDIxIE1heSAyMDA5IDA2OjQ1OjQ1ICswMjAwCisKK2Rwa2cgKDEuMTUuMCkgZXhwZXJpbWVudGFsOyB1cmdlbmN5PWxvdworCisgIFsgR3VpbGxlbSBKb3ZlciBdCisgICogRG8gbm90IHN1Z2dlc3QgbWFudWFsbHkgY2hhbmdpbmcgdGhlIGFsdGVybmF0aXZlIHN5bWxpbmtzIG9uCisgICAgdXBkYXRlLWFsdGVybmF0aXZlJ3MgdmVyYm9zZSBtb2RlLiBDbG9zZXM6ICM0MTI0ODcKKyAgKiBSZWZhY3RvciBzdWJwcm9jZXNzIHNpZ25hbCBzZXR1cC4KKyAgKiBNYXJrIGFuZCBjb2FsZXNjZSBzaW1pbGFyIHN0cmluZ3MgZm9yIHRyYW5zbGF0aW9uLgorICAqIEFkZCAnLmJlJyB0byB0aGUgZGVmYXVsdCBkcGtnLXNvdXJjZSAtaSByZWdleC4gQ2xvc2VzOiAjNDgxNzE2CisgICAgQmFzZWQgb24gYSBwYXRjaCBieSBCZW4gRmlubmV5LgorICAqIEZpeCBsaW5rIG9yZGVyIHdoZW4gdXNpbmcgbGliY29tcGF0LmEgYW5kIGxpYmludGwuYSBieSBwbGFjaW5nIHRoZW0gYWZ0ZXIKKyAgICBsaWJkcGtnLmEuIEJhc2VkIG9uIGEgcGF0Y2ggYnkgTWFydGluIEtvZXBwZS4gQ2xvc2VzOiAjNDgxODA1CisgICogUmVtb3ZlIGR1cGxpY2F0ZSBwcm9ncmFtIG5hbWUgZnJvbSBkcGtnLXRyaWdnZXIgYmFkdXNhZ2Ugb3V0cHV0LgorICAqIFRyaW0gdHJhaWxpbmcgc2xhc2ggYW5kIHNsYXNoIGRvdCBmcm9tICdkcGtnIC1TJyBhcmd1bWVudHMgd2hlbiB0aG9zZQorICAgIGFyZSBwYXRoIG5hbWVzLCBidXQgbm90IG9uIHBhdHRlcm5zLiBDbG9zZXM6ICMxMjk1NzcKKyAgKiBGaXggdGhlIHN1cHBvcnQgZm9yIHBhc3NpbmcgbW9yZSB0aGFuIG9uZSAtLXN0YXR1cy1mZCBvcHRpb24gdG8gZHBrZy4KKyAgICBVbnRpbCBub3cgb25seSB0aGUgbGFzdCBvbmUgd2FzIGJlaW5nIHVzZWQuCisgICogUmVwbGFjZSByZWFsbG9jIHBsdXMgZXJyb3IgY2hlY2tpbmcgdXNhZ2Ugd2l0aCBtX3JlYWxsb2MuCisgICogQWRkICcuaGdpZ25vcmUnIHRvIHRoZSBkZWZhdWx0IGRwa2ctc291cmNlIC1pIHJlZ2V4IGFuZCAtSSBwYXR0ZXJuLgorICAgIENsb3NlczogIzQ4NTM2NQorICAqIFN1cHBvcnQgZGl2ZXJ0aW5nIGZpbGVzIHdoZW4gb3JpZ2luIGFuZCBkZXN0aW5hdGlvbiBhcmUgb24gZGlmZmVyZW50IGZpbGUKKyAgICBzeXN0ZW1zLiBCYXNlZCBvbiBhIHBhdGNoIGJ5IEp1ZXJnZW4gS3JlaWxlZGVyLiBDbG9zZXM6ICMxMDIxNDQsICMxNDk5NjEKKyAgKiBEbyBub3Qgc2lsZW50bHkgZW5hYmxlIC0tcmVuYW1lIG9uIGRwa2ctZGl2ZXJ0IC0tcmVtb3ZlLiBDbG9zZXM6ICMxNjA4NDgKKyAgKiBEbyBub3QgYWxsb2NhdGUgbWVtb3J5IHdoZW4gbHN0YXQgZmFpbHMgZHVyaW5nIHBhY2thZ2UgdXBncmFkZS4KKyAgKiBQcm9wZXJseSBsc3RhdCB0aGUgY29ycmVjdCBmaWxlIHdoZW4gdXNpbmcgLS1yb290IG9uIHBhY2thZ2UgdXBncmFkZS4KKyAgICBUaGFua3MgdG8gRWdtb250IEtvYmxpbmdlci4gQ2xvc2VzOiAjMjgxMDU3CisgICogUHJpbnQgYSBsb25nZXIgc3RyaW5nIHdoZW4gYSBkaXNhbGxvd2VkIGZpZWxkIHZhbHVlIGlzIGZvdW5kIHdoZW4gcGFyc2luZy4KKyAgKiBVc2UgJChmaWx0ZXIgLi4uKSBpbnN0ZWFkIG9mICQoZmluZHN0cmluZyAuLi4pIHRvIGV4dHJhY3Qgc3BhY2Ugc2VwYXJhdGVkCisgICAgb3B0aW9ucyBmcm9tIERFQl9CVUlMRF9PUFRJT05TIGluIGRlYmlhbi9ydWxlcy4KKyAgKiBEbyBub3QgbGVhdmUgbmV3IGNvbmZmaWxlIGFzIC5kcGtnLW5ldyB3aGVuIGl0IGhhcyBiZWVuIGRpdmVydGVkLCBhbHNvCisgICAgcHJvcGVybHkgYWN0aXZhdGUgdGhlIGZpbGUgdHJpZ2dlciBmb3IgdGhlIGRpdmVydGVkIGNvbmZmaWxlLgorICAgIEJhc2VkIG9uIGEgcGF0Y2ggYnkgVGltb3RoeSBHIEFiYm90dC4gQ2xvc2VzOiAjNTg3MzUsICM0NzY4OTkKKyAgKiBJbXByb3ZlIGNvbW1lbnQgb24gQlVHUyBzZWN0aW9uIGluIGRwa2ctZGViLjEgYWJvdXQgbGFjayBvZiBhdXRoZW50aWNhdGlvbgorICAgIGFuZCBjaGVja3N1bSBzdXBwb3J0IGluIC5kZWIgZmlsZXMuIENsb3NlczogIzQ5MjA1MgorICAqIFVzZSBhIHRyb2ZmIHNwZWNpYWwgY2hhcmFjdGVyIGZvciB0aGUgY29weXJpZ2h0IHN5bWJvbCBvbiBtYW4gcGFnZXMuCisgICogTWFyayBwcm9ncmFtIG5hbWVzIGluIGRwa2ctdHJpZ2dlci4xIGluIGJvbGQuCisgICogVW5tYXJrIGRzZWxlY3QgZGVidWcgbWVzc2FnZXMgZm9yIHRyYW5zbGF0aW9uLgorICAqIFVzZSBhIHRoZSB3YXJuaW5nIGZ1bmN0aW9uIHRvIHVuaWZvcm1seSBwcmludCBhbGwgd2FybmluZyBtZXNzYWdlcy4KKyAgKiBQcm9wZXJseSB1c2UgaW50ZXJuZXJyIHRvIHJlcG9ydCBhYm91dCBwcm9ncmFtbWluZyBidWdzLgorICAqIERvIG5vdCBsb2cgcmVwZWF0ZWQgc3RyaW5ncyB3aGVuIHRoZSB3cml0ZSBjYWxsIHdyb3RlIHBhcnRpYWwgZGF0YS4KKyAgKiBDaGFuZ2UgZGlyIHRvIC8gYWZ0ZXIgY2hyb290IHdoZW4gdXNpbmcgLS1pbnN0ZGlyLgorICAgIFRoYW5rcyB0byBDb2xpbiBXYXRzb24gPGNqd2F0c29uQHVidW50dS5jb20+LiBDbG9zZXM6ICM1MDk1NzgKKyAgKiBNYWtlIGRwa2cgbG9nIGZpbGVzIHVzZXIgcmVhZGFibGUuIENsb3NlczogIzQ4MDU1NgorICAqIENsYXJpZnkgaW4gdGhlIHN0YXJ0LXN0b3AtZGFlbW9uIG1hbiBwYWdlIHRoYXQgdGhlIHNpZ25hbCBzZW50IGJ5IGRlZmF1bHQKKyAgICBpcyBURVJNIG5vdCBLSUxMLiBDbG9zZXM6ICM1MDc1NjgKKyAgKiBXYXJuIGluIGRwa2ctZGViIG1hbiBwYWdlIHRoYXQgLXggd2lsbCBtb2RpZnkgdGhlIGV4dHJhY3Rpb24gZGlyZWN0b3J5CisgICAgcGVybWlzc2lvbnMuIENsb3NlczogIzUwMjQ5NgorICAqIE1ha2Ugc3RhcnQtc3RvcC1kYWVtb24gYmVoYXZlIHRoZSBzYW1lIHdheSB3aGV0aGVyIC0tY2h1aWQgZ2V0cyBhIHVzZXIKKyAgICBuYW1lIG9yIGEgdWlkLiBDbG9zZXM6ICMzNjgwMDAKKyAgKiBBZGQgbmV3IG9wdGlvbiAtLXByb2NzY2hlZCB0byBzdGFydC1zdG9wLWRhZW1vbiB0byBiZSBhYmxlIHRvIHNldCB0aGUKKyAgICBwcm9jZXNzIHNjaGVkdWxpbmcgcG9saWN5IGFuZCBwcmlvcml0eS4gQ2xvc2VzOiAjMTc1NzQwCisgICogQWRkIGluaXRpYWwgQyB1bml0IHRlc3Qgc3VpdGUgZm9yIGxpYmRwa2cuCisgICogU2FuaXRpemUgLS1zdGF0dXMtZmQgb3V0cHV0IGJ5IHJlcGxhY2luZyBuZXdsaW5lcyB3aXRoIHNwYWNlcy4KKyAgICBDbG9zZXM6ICM1MDUxNzIKKyAgKiBSZW1vdmUgdW5uZWVkZWQgY3BpbyBkZXBlbmRlbmN5IGZyb20gZHBrZy1kZXYuCisgICogQWRkIGtvcGVuc29sYXJpcyBzdXBwb3J0IHRvIG9zdGFibGUgYW5kIHRyaXBsZXR0YWJsZS4gQ2xvc2VzOiAjNTA5MzEyCisgICogRG9jdW1lbnQgaW4gZGViLjUgaW4gZGV0YWlsIHRoZSBjdXJyZW50bHkgc3VwcG9ydGVkIGZvcm1hdCwgYXIgbWVtYmVyCisgICAgbmFtZXMsIHR5cGVzIG9mIHRhciBhcmNoaXZlcyBhbmQgZGF0YS50YXIgbWVtYmVycy4KKyAgKiBQcmludCBjb3JyZWN0IGZlYXR1cmUgbmFtZSBvbiDCq2Rwa2cgLS1hc3NlcnQtKsK7IGZhaWx1cmVzLgorICAqIEFkZCBwcm9ncmVzcyByZXBvcnRpbmcgdG8gZHBrZyB3aGlsZSByZWFkaW5nIHRoZSBmaWxlIGxpc3QgZGF0YWJhc2UuCisgICAgQmFzZWQgb24gYSBwYXRjaCBieSBSb21haW4gRnJhbmNvaXNlLgorICAqIEFkZCBuZXcgb3B0aW9uIC0taW9zY2hlZCB0byBzdGFydC1zdG9wLWRhZW1vbiB0byBiZSBhYmxlIHRvIHNldCB0aGUKKyAgICBJTyBzY2hlZHVsaW5nIGNsYXNzIGFuZCBwcmlvcml0eS4gQ2xvc2VzOiAjNDQzNTM1CisgICAgVGhhbmtzIHRvIENocmlzIENvdWxzb24gPGNocmlzY2NvdWxzb25AZ29vZ2xlbWFpbC5jb20+LgorICAqIEFkZCB0YXIgZm9ybWF0IGRldGVjdGlvbiBzdXBwb3J0IHRvIHRoZSBpbnRlcm5hbCBleHRyYWN0b3IuCisgICogQWRkIHN1cHBvcnQgZm9yIHVzdGFyIGxvbmcgbmFtZXMgdXNpbmcgdGhlIHByZWZpeCBmaWVsZC4gQ2xvc2VzOiAjNDc0MDkyCisgICogQ29kZSByZWZhY3RvcmluZyBhbmQgY2xlYW51cCwgc29tZSBvZiB0aGUgbWFqb3IgY2hhbmdlcyBpbmNsdWRlOgorICAgIC0gVXNlIHN0YW5kYXJkIGludGVyZmFjZXMgaW5zdGVhZCBvZiBhZC1ob2Mgb25lcy4KKyAgICAtIEZpeCBtZW1vcnkgbGVha3MuCisgICAgLSBGaXggY29tcGlsYXRpb24gd2FybmluZ3MuCisgICAgLSBDb25zdGlmeSBzdHJpbmcgbWVtYmVycyBpbiBzdHJ1Y3R1cmVzIGFuZCBhcmd1bWVudHMgaW4gZnVuY3Rpb25zLgorICAgIC0gTWFrZSBsb2NhbCBmdW5jdGlvbnMgc3RhdGljLgorICAgIC0gUmVtb3ZlIHVudXNlZCBmdW5jdGlvbnMsIG1hY3JvcyBhbmQgdmFyaWFibGVzLgorICAgIC0gRml4IGFuZCBjbGVhbnVwIGxpYmNvbXBhdCBicm9rZW4gcmVwbGFjZW1lbnQgaW1wbGVtZW50YXRpb25zLgorICAgIC0gUmVkdWN0aW9uIG9mIG1vZHVsZSBpbnRlcmRlcGVuZGVuY2llcy4KKyAgICAtIFJlbmFtZSBmdW5jdGlvbiBhbmQgdmFyaWFibGUgbmFtZXMgdG8gbWFrZSB0aGVtIG1vcmUgY2xlYXIuCisgICAgLSBDbGVhbnVwIGFuZCBzcGxpdCBvZiBoZWFkZXIgZmlsZXMuCisKKyAgWyBSYXBoYcOrbCBIZXJ0em9nIF0KKyAgKiBFbmhhbmNlIGRwa2ctc2hsaWJkZXBzJyBlcnJvciBtZXNzYWdlIHdoZW4gYSBsaWJyYXJ5IGNhbid0IGJlIGZvdW5kIHRvCisgICAgaW5jbHVkZSB0aGUgRUxGIGZvcm1hdCBvZiB0aGUgZGVzaXJlZCBsaWJyYXJ5LiBDbG9zZXM6ICM0NzQ2NzEKKyAgKiBkcGtnLWdlbnN5bWJvbHMgbm93IHJlZnVzZXMgZW1wdHkgdmFsdWVzIGZvciB0aGUgdGhlIC12IC1QIGFuZCAtZQorICAgIHBhcmFtZXRlcnMuCisgICogVXBkYXRlIGRwa2coMSkgdG8gcmVmZXIgdG8gY29uZmZpbGUgd2hlbmV2ZXIgd2Ugc3BlYWsgb2YgY29uZmlndXJhdGlvbgorICAgIGZpbGUgaGFuZGxlZCBieSBkcGtnLiBUaHVzIGhhcm1vbml6ZSB2b2NhYnVsYXJ5IHdpdGggdGhlIHBvbGljeS4gVGhhbmtzCisgICAgdG8gSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+LiBDbG9zZXM6ICMzODEyMTkKKyAgKiBJbXByb3ZlIGVycm9yIG1lc3NhZ2Ugc3RhdGluZyB0aGF0IGRwa2cgaXMgdW5hYmxlIHRvIGNyZWF0ZSBhIGZpbGUgc28gdGhhdAorICAgIGl0IGFsc28gcmVmZXJzIHRvIHRoZSByZWFsIGZpbGVuYW1lIGluc3RlYWQgb2YgdGhlIG5vbi1kaXZlcnRlZCBuYW1lIG9ubHkuCisgICAgVGhhbmtzIHRvIERhbmllbCBIYWhsZXIgZm9yIHRoZSBwYXRjaC4gQ2xvc2VzOiAjNDU3MTM1CisgICogZHBrZy1nZW5jb250cm9sIGNhbiBub3cgYWdhaW4gcmVhZCB0aGUgY29udHJvbCBmaWxlIGZyb20gaXRzIHN0YW5kYXJkCisgICAgaW5wdXQgd2l0aCAiLWMtIi4gQ2xvc2VzOiAjNDY1MzQwCisgICogQWRkIERFQl9WRU5ET1IgZW52aXJvbm1lbnQgdmFyaWFibGUgaW4gdGhlIGJ1aWxkIGVudmlyb25tZW50IHRvIGJlIGFibGUKKyAgICB0byBjaGFuZ2UgYmVoYXZpb3VyIGR5bmFtaWNhbGx5IGRlcGVuZGluZyBvbiB0aGUgdmVuZG9yIG9mIHRoZSBjdXJyZW50CisgICAgc3lzdGVtIChvciB0YXJnZXQgc3lzdGVtIHdoZW4gdGhlIHVzZXIgb3ZlcnJpZGVzIERFQl9WRU5ET1IgYnkgc2V0dGluZworICAgIGl0IGhpbXNlbGYpLiBDbG9zZXM6ICM0NTczNzEKKyAgKiBkcGtnLXNobGliZGVwcyBnaXZlIGxlc3Mgc3Ryb25nIHdhcm5pbmdzIGZvciBzeW1ib2xzIG5vdCBmb3VuZCBpbiBORUVERUQKKyAgICBsaWJyYXJpZXMgd2hlbiB0aGUgc2hhcmVkIGxpYnJhcnkgaXMgYSBub24tcHVibGljIGRpcmVjdG9yeSBhbmQgaXMgbGlrZWx5CisgICAgdG8gYmUgYSBwbHVnaW4uIENsb3NlczogIzQ4MTE2NQorICAqIENsYXJpZnkgbGlzdCBvZiBwYWNrYWdlcyBkaXNwbGF5ZWQgYnkgZHBrZyAtLWdldC1zZWxlY3Rpb25zIGFuZAorICAgIGRwa2ctcXVlcnkgLWwuIFRoYW5rcyB0byBKaWRhbm5pLiBDbG9zZXM6ICM0ODc0NTUKKyAgKiBEb2N1bWVudCAtQSBvcHRpb24gaW4gZHBrZy1idWlsZHBhY2thZ2UoMSkuIENsb3NlczogIzQ4MjgzNAorICAqIEFkZCBzb21lIHdhcm5pbmcgY29uY2VybmluZyB0aGUgYXZhaWxhYmxlIGZpbGUgYW5kIHRoZSByZWxhdGVkIGNvbW1hbmRzLgorICAgIFRoZXkgYXJlIG1vc3RseSBvYnNvbGV0ZSBmb3IgQVBUIHVzZXJzLiBDbG9zZXM6ICM0ODExODUKKyAgKiBBZGQgbmV3IG9wdGlvbiAtLWxpc3RwYWNrYWdlIHRvIGRwa2ctZGl2ZXJ0LiBUaGFua3MgdG8gVGltb3RoeSBHIEFiYm90dAorICAgIDx0YWJib3R0QE1JVC5FRFU+IGZvciB0aGUgcGF0Y2guIENsb3NlczogIzQ4NTAxMgorICAqIEFkZCBuZXcgb3B0aW9uIC0tcmVxdWlyZS12YWxpZC1zaWduYXR1cmUgdG8gZHBrZy1zb3VyY2UuIENsb3NlczogIzM5MDI4MgorICAqIEluIGRwa2ctcXVlcnkoMSkgZG9jdW1lbnQgdGhlIG9yaWdpbiBvZiB0aGUgdmFyaW91cyBmaWVsZHMgYW5kIHdhcm4gdGhhdAorICAgIHRoZXkgYXJlIG5vdCBhbHdheXMgYXZhaWxhYmxlLiBDbG9zZXM6ICM0ODgyOTMKKyAgKiBJbXByb3ZlIGVycm9yIG1lc3NhZ2UgaW4gaW5zdGFsbC1pbmZvIHdoZW4gdGhlIGZpbGUgZG9lc24ndCBleGlzdC4KKyAgICBUaGFua3MgdG8gVGhvbWFzIEhvb2QgPGpkdGhvb2RAeWFob28uY28udWs+LiBDbG9zZXM6ICMxMDcwOTgKKyAgKiBVc2UgZGVzY3JpcHRpb24gb2YgaW5zdGFsbGVkIHBhY2thZ2UgYXMgZmFsbGJhY2sgaW4gZHNlbGVjdC4KKyAgICBCYXNlZCBvbiBhIHBhdGNoIGZyb20gQnJ1Y2UgU2FzcyA8Ym1zYXNzQHNoYXcuY2E+LiBDbG9zZXM6ICMyMTY1OQorICAqIFJlZHVjZSBtZW1vcnkgdXNhZ2Ugb2YgZHNlbGVjdCBieSBhdm9pZGluZyB1c2FnZSBvZiBhIGJpZyBpbmZvcGFkLgorICAgIFRoYW5rcyB0byBNaWNoZWwgTGVzcGluYXNzZSA8d2Fsa2VuQHpveS5vcmc+IGZvciB0aGUgcGF0Y2guCisgICAgQ2xvc2VzOiAjMzk1MTQwCisgICogTGFyZ2VseSBpbXByb3ZlIGFuZCB1cGRhdGUgZHBrZy1idWlsZHBhY2thZ2UncyBtYW51YWwgcGFnZS4KKyAgKiBDbGFyaWZ5IHR3byBwb2ludHMgaW4gZHBrZy1zb3VyY2UoMSkuIENsb3NlczogIzQ5MDY5MworICAqIFN1cHBvcnQgUlVOUEFUSCBleGFjdGx5IGxpa2UgUlBBVEggaW4gZHBrZy1zaGxpYmRlcHMuIENsb3NlczogIzUwMjI1OAorICAgIFRoYW5rcyB0byBKYXZpZXIgU2VycmFubyBQb2xvIDxqYXNwMDBAdGVycmEuZXM+LgorICAqIFNldCBTdGFuZGFyZHMtVmVyc2lvbiB0byAzLjguMCAobm8gY2hhbmdlcyBuZWVkZWQpLgorICAqIERyb3Agc29tZSB1bm5lZWRlZCBsaW50aWFuIG92ZXJyaWRlcy4KKyAgKiBGaXggYSBjaG1vZCBjYWxsIGluIGRwa2ctc291cmNlIHRvIG5vdCBmYWlsIHdoZW4gUE9TSVhMWV9DT1JSRUNUIGlzIHNldC4KKyAgICBDbG9zZXM6ICM1MDYwMjgKKyAgKiBPcHRpbWl6ZSBkcGtnLXNobGliZGVwcyBieSBjYWNoaW5nIHBhcnNlZCBzeW1ib2xzIGZpbGVzIGFuZAorICAgIG9iamR1bXAgb2JqZWN0cy4gVGhhbmtzIHRvIE1vZGVzdGFzIFZhaW5pdXMgPG1vZGVzdGFzQHZhaW5pdXMuZXU+IGZvciB0aGUKKyAgICBwYXRjaC4gQ2xvc2VzOiAjNTAzOTU0CisgICogQWRkIG5ldyBmcmFtZXdvcmsgdG8gaG9vayB2ZW5kb3Itc3BlY2lmaWMgbG9naWMgKHNlZQorICAgIG1vZHVsZSBEcGtnOjpWZW5kb3I6OkRlZmF1bHQpLgorICAqIEFkZCBVYnVudHUgdmVuZG9yIG9iamVjdCBpbXBsZW1lbnRpbmcgbG9va3VwIG9mIGxhdW5jaHBhZCBidWdzIGluCisgICAgY2hhbmdlbG9ncyBhbmQgYSBzYWZldHktY2hlY2sgZm9yIE1haW50YWluZXIgZmllbGRzIG9mIGZvcmtlZCBwYWNrYWdlcworICAgIChsYXVuY2hlZCBkdXJpbmcgc291cmNlIGJ1aWxkKS4gQ2xvc2VzOiAjNDI2NzUyLCAjNDk5OTI0CisgICogSW1wcm92ZSBiZWhhdmlvdXIgb2YgdXBkYXRlLWFsdGVybmF0aXZlcyAtLWNvbmZpZy4gVGhhbmtzIHRvCisgICAgT3NhbXUgQW9raSA8b3NhbXVAZGViaWFuLm9yZz4gZm9yIHRoZSBpbml0aWFsIHBhdGNoLiBXZSBjYW4ga25vdworICAgIHNlbGVjdCBiZXR3ZWVuIG1hbnVhbCBhbmQgYXV0byBpbiAtLWNvbmZpZyBhbmQgLS1hbGwuIENsb3NlczogIzM5MjQzMAorICAqIEZpeCB1cGRhdGUtYWx0ZXJuYXRpdmVzIHRvIG5vdCBzd2l0Y2ggdG8gbWFudWFsIG1vZGUgYW4gYWx0ZXJuYXRpdmUKKyAgICB3aXRoIGEgYnJva2VuIHN5bWxpbmsgKGluc3RlYWQgbGV0IHRoZSBjdXJyZW50IGFjdGlvbiBmaXggaXQpLgorICAgIEFsc28gZW5zdXJlIHRoYXQgYSBtZXNzYWdlIGlzIGRpc3BsYXllZCBieSBkZWZhdWx0IHdoZW4gc3VjaCBhIHN3aXRjaCBpcworICAgIG1hZGUuIENsb3NlczogIzE0MTMyNSwgIzg3Njc3CisgICogRml4IHVwZGF0ZS1hbHRlcm5hdGl2ZXMnIGxvZ2ljIHRvIHJlbmFtZSBmaWxlcy4gSXQgZmFpbGVkIHRvIGlnbm9yZSBlcnJvcnMKKyAgICBpbiBzb21lIGNhc2VzIHdoZXJlIGl0IHdhbnRlZCB0byB3aGVuIHRoZSBzb3VyY2UgZmlsZSBkaWRuJ3QgZXhpc3QuCisgICAgQ2xvc2VzOiAjOTk4NzAKKyAgICBUaGlzIGFsc28gbWFrZXMgdXBkYXRlLWFsdGVybmF0aXZlcyBsZXNzIG5vaXN5IHdoZW4gdGhpcyBoYXBwZW5zIHNpbmNlIHdlCisgICAgZG9uJ3QgY2FsbCBtdiB3aGVuIHdlIGtub3cgdGhhdCBpdCdzIGdvaW5nIHRvIGZhaWwuCisgICAgQ2xvc2VzOiAjOTg4MjIKKyAgKiBQcm9wZXJseSByZW1vdmUgaW5hcHByb3ByaWF0ZSBzbGF2ZSBsaW5rcyBpbiB1cGRhdGUtYWx0ZXJuYXRpdmVzIGV2ZW4gd2hlbgorICAgIHdlIHN3aXRjaCB0byBtYW51YWwgbW9kZSB3aXRoIC0tc2V0IG9yIC0tY29uZmlnLiBDbG9zZXM6ICMzODgzMTMKKyAgKiBNb2RpZnkgdXBkYXRlLWFsdGVybmF0aXZlcyB0byBhbHdheXMgcmVtb3ZlIHRoZSBhbHRlcm5hdGl2ZSBncm91cCB3aGVuIHRoZQorICAgIGxhc3QgYWx0ZXJuYXRpdmUgaXMgcmVtb3ZlZCAoZXZlbiBpbiBtYW51YWwgbW9kZSkuCisgICogRW5zdXJlIHRoYXQgdXBkYXRlLWFsdGVybmF0aXZlIC0taW5zdGFsbCBmaXggdGhlIGxpbmtzIGlmIHRoZSBhbHRlcm5hdGl2ZQorICAgIGluc3RhbGxlZCBpcyB0aGUgb25lIGN1cnJlbnRseSBzZWxlY3RlZC4gQ2xvc2VzOiAjMTAwMTM1CisgICogTGV0IHVwZGF0ZS1hbHRlcm5hdGl2ZXMgZGVhbCB3aXRoIGVtcHR5IGZpbGVzIGluIGl0cyBhZG1pbmlzdHJhdGl2ZQorICAgIGRpcmVjdG9yeSBieSBpZ25vcmluZyB0aGVtLiBDbG9zZXM6ICM0NTc4NjMKKyAgKiBBZGQgbmV3IC0tdGFyZ2V0IGFuZCAtLWFzLXJvb3Qgb3B0aW9ucyB0byBkcGtnLWJ1aWxkcGFja2FnZSB0byBjYWxsCisgICAgYW55IGRlYmlhbi9ydWxlcyB0YXJnZXQgd2l0aCB0aGUgcHJvcGVyIGJ1aWxkIGVudmlyb25tZW50LgorICAgIENsb3NlczogIzQ3NzkxNgorICAqIE1vdmUgdXBkYXRlLWFsdGVybmF0aXZlcywgZHBrZy1kaXZlcnQgYW5kIGRwa2ctc3RhdG92ZXJyaWRlIHRvIC91c3IvYmluCisgICAgYnV0IGtlZXAgY29tcGF0aWJpbGl0eSBzeW1saW5rcyBpbiAvdXNyL3NiaW4gZm9yIHRoZSBzcXVlZXplIHJlbGVhc2UKKyAgICB1bnRpbCBhbGwgbWFpbnRhaW5lciBzY3JpcHRzIGFyZSBmaXhlZCAoc2VlCisgICAgaHR0cDovL2xpbnRpYW4uZGViaWFuLm9yZy90YWdzL2NvbW1hbmQtd2l0aC1wYXRoLWluLW1haW50YWluZXItc2NyaXB0Lmh0bWwpLgorICAgIENsb3NlczogIzIxNjYwNgorICAqIFVzZSBkaF9saW50aWFuIHRvIGluc3RhbGwgbGludGlhbiBvdmVycmlkZXMuIEJ1aWxkLURlcGVuZHMgb24gZGViaGVscGVyCisgICAgKD49IDYuMC43KSBmb3IgdGhpcy4gVXBkYXRlIGRlYmhlbHBlciBjb21wYXRpYmlsaXR5IGxldmVsIHRvIDYgYXQgdGhlIHNhbWUKKyAgICB0aW1lLgorICAqIERyb3AgY2xlYW51cC1pbmZvIHNjcmlwdC4KKyAgKiBSZXNldCB1bWFzayB0byAwMDIyIGluIGRwa2ctZ2VuY29udHJvbCBhbmQgZHBrZy1nZW5zeW1ib2xzIHRvIGVuc3VyZSB0aGF0CisgICAgZmlsZXMgY3JlYXRlZCBpbiB0aGUgREVCSUFOIGRpcmVjdG9yeSBoYXZlIHNhbmUgcGVybWlzc2lvbnMuCisgICAgQ2xvc2VzOiAjNTE2NDgxCisgICogUmV3cml0ZSB1cGRhdGUtYWx0ZXJuYXRpdmVzIChzbyB0aGF0IHdlIGNhbiB1bmRlcnN0YW5kIGl0IGFnYWluKSBhbmQKKyAgICBpbXBsZW1lbnQgbmV3IGZlYXR1cmVzIG9uIHRvcCBvZiBpdDoKKyAgICAtIHRoZSAtLWNvbmZpZyBvdXRwdXQgaXMgbm93IHNvcnRlZC4gQ2xvc2VzOiAjNDM3MDYwCisgICAgLSBpdCBub3cgbG9ncyBpbmZvcm1hdGlvbiB0byAvdmFyL2xvZy9kcGtnLmxvZy4gQ2xvc2VzOiAjNDQ1MjcwCisgICAgLSBpdCBmb3JiaWRzIHJldXNpbmcgbWFzdGVyIGFsdGVybmF0aXZlIGFzIHNsYXZlIGFuZCB2aWNlLXZlcnNhLgorICAgICAgQ2xvc2VzOiAjMzQyNTY2CisgICAgLSBpdCBmb3JiaWRzIHJldXNpbmcgYWx0ZXJuYXRpdmUgbGlua3MgbWFuYWdlZCBieSBvdGhlciBhbHRlcm5hdGl2ZXMKKyAgICAtIG5ldyBzYW5pdHkgY2hlY2tzIG9uIC0taW5zdGFsbCBwYXJhbWV0ZXJzLiBDbG9zZXM6ICM0MjMxNzYKKyAgICAtIGluc3RhbGwgc2xhdmUgbGluayBvbmx5IGlmIHRoZSBjb3JyZXNwb25kaW5nIHNsYXZlIGZpbGUgaXMgYXZhaWxhYmxlLgorICAgICAgQ2xvc2VzOiAjMTQzNzAxCisgICAgLSBuZXcgb3B0aW9uIC0tZ2V0LXNlbGVjdGlvbnMgdG8gZXhwb3J0IHRoZSBjb25maWd1cmF0aW9uIG9mIGFsbAorICAgICAgYWx0ZXJuYXRpdmVzLiBJdCdzIGEgc2ltcGxlIHdheSB0byBkaXNjb3ZlciB0aGUgbmFtZSBvZiBhbGwgYXZhaWxhYmxlCisgICAgICBhbHRlcm5hdGl2ZXMuIENsb3NlczogIzI3MzQwNiwgIzM5MjQyOQorICAgIC0gbmV3IG9wdGlvbiAtLXNldC1zZWxlY3Rpb25zIHRvIHJlY29uZmlndXJlIGEgc2V0IG9mIGFsdGVybmF0aXZlcyBpbgorICAgICAgYSBzaW5nbGUgY29tbWFuZC4KKyAgKiBEb2N1bWVudCBpbiB1cGRhdGUtYWx0ZXJuYXRpdmVzKDgpIGhvdyBvbmUgY2FuIHJlcGFpciBhbGwgYnJva2VuCisgICAgYWx0ZXJuYXRpdmVzIHdpdGggYSBzaW5nbGUgY29tbWFuZC4gQ2xvc2VzOiAjMjUwMjU4LCAjMzk1NTU2CisgICogTW9kaWZ5IGRwa2ctZ2Vuc3ltYm9scyB0byByZXBsYWNlICNQQUNLQUdFIyBvbiB0aGUgZmx5IHdoaWxlIGluc3RhbGxpbmcKKyAgICBzeW1ib2xzIGZpbGVzIHNvIHRoYXQgcGFja2FnZSBoYXZpbmcgbGlicmFyaWVzIHdob3NlIG5hbWUgdmFyaWVzIGJldHdlZW4KKyAgICBhcmNoaXRlY3R1cmVzIGRvIG5vdCBuZWVkIHRvIGhhcmRjb2RlIHRoZSBwYWNrYWdlIG5hbWUuIENsb3NlczogIzUxNzI2NAorCisgIFsgUGllcnJlIEhhYm91eml0IF0KKyAgKiBBZGQgYSAtLXF1ZXJ5IG9wdGlvbiB0byB1cGRhdGUtYWx0ZXJuYXRpdmVzLiBDbG9zZXM6ICMzMzYwOTEsICM0NDE5MDQKKworICBbIFVwZGF0ZWQgc2NyaXB0cyB0cmFuc2xhdGlvbnMgXQorICAqIFBvbGlzaCAoV2lrdG9yIFdhbmRhY2hvd2ljeikuIENsb3NlczogIzUxNDEwNgorCisgIFsgVXBkYXRlZCBtYW5wYWdlcyB0cmFuc2xhdGlvbnMgXQorICAqIFBvbGlzaCAoV2lrdG9yIFdhbmRhY2hvd2ljeikuIENsb3NlczogIzUxNDEwNgorCisgIFsgVXBkYXRlZCBkcGtnIHRyYW5zbGF0aW9ucyBdCisgICogUG9ydHVndWVzZSAoTWlndWVsIEZpZ3VlaXJlZG8pLgorICAqIEtvcmVhbiAoQ2hhbmd3b28gUnl1KS4KKyAgKiBSb21hbmlhbiAoRWRkeSBQZXRyaT9vcikKKyAgKiBTbG92YWsgKEl2YW4gTWFzw6FyKS4gQ2xvc2VzOiAjNTE0NDkwCisKKyAtLSBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+ICBNb24sIDAyIE1hciAyMDA5IDA2OjEzOjUzICswMjAwCisKK2Rwa2cgKDEuMTQuMjUpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgIFsgR3VpbGxlbSBKb3ZlciBdCisgICogRml4IHR5cG8gaW4gcGFja2FnZSBkZXNjcmlwdGlvbiAoJ3ByaXZpZGVzJyAtPiAncHJvdmlkZXMnKS4KKyAgICBUaGFua3MgdG8gUGFzY2FsIERlIFZ1eXN0IDxwYXNjYWwuZGV2dXlzdEBnbWFpbC5jb20+LiBDbG9zZXM6ICM1MTA3NTUKKyAgKiBEbyBub3QgbG9zZSBjb25mZmlsZXMgd2hpbGUgcmVwbGFjaW5nIHRoZW0gZnJvbSBhbm90aGVyIHBhY2thZ2Ugb24gdGhlCisgICAgc2FtZSBpbnN0YWxsIHJ1bi4gQ2xvc2VzOiAjNTEzODU3CisgICAgQXMgYSBzaWRlIGVmZmVjdCB0aGlzIGZpeGVzIHRoZSBmb2xsb3dpbmcgc3ltcHRvbXM6CisgICAgLSBEbyBub3QgZG8gdW5uZWVkZWQgY29uZmZpbGUgcHJvbXB0cyB3aGVuIGl0IHdhc24ndCBsb2NhbGx5IGNoYW5nZWQuCisgICAgLSBEbyBub3QgZW5zdXJlIChhbmQgdGh1cyBkbyBub3Qgb3V0cHV0IGRlYnVnIGluZm9ybWF0aW9uKSB0aGF0IHRoZQorICAgICAuZHBrZy1uZXcgYW5kIC5kcGtnLXRtcCBkaXJlY3RvcmllcyBmb3IgYW4gZXhpc3RpbmcgZGlyZWN0b3J5IGRvIG5vdAorICAgICAgZXhpc3QuIENsb3NlczogIzgwNDE2CisKKyAgWyBSYXBoYcOrbCBIZXJ0em9nIF0KKyAgKiBkcGtnLWRlYiBub3cgYWx3YXlzIHByb2R1Y2VzIEdOVSB0YXJiYWxscyBpbnNpZGUgLmRlYiBhbmQgaWdub3JlcworICAgIFRBUl9PUFRJT05TLiBDbG9zZXM6ICM1MTM4NjMKKworICBbIFVwZGF0ZWQgZHBrZyB0cmFuc2xhdGlvbnMgXQorICAqIEJhc3F1ZSAoUGlhcnJlcyBCZW9iaWRlKS4gQ2xvc2VzOiAjNTA2MDkyLCAjNTA5ODUxCisgICogU2ltcGxpZmllZCBDaGluZXNlIChEZW5nIFhpeXVlKS4gQ2xvc2VzOiAjNTA2MTc3CisgICogVHJhZGl0aW9uYWwgQ2hpbmVzZSAoVGV0cmFsZXQpLiBDbG9zZXM6ICM1MTMzMTIKKworICBbIFVwZGF0ZWQgZHNlbGVjdCB0cmFuc2xhdGlvbnMgXQorICAqIEJhc3F1ZSAoUGlhcnJlcyBCZW9iaWRlKS4gQ2xvc2VzOiAjNTA5ODUyCisgICogTm9yd2VnaWFuIEJva23DpWwgKEhhbnMgRi4gTm9yZGhhdWcpLgorICAqIFBvcnR1Z3Vlc2UgKE1pZ3VlbCBGaWd1ZWlyZWRvKS4gQ2xvc2VzOiAjNTA5OTA0CisKKyAgWyBVcGRhdGVkIHNjcmlwdHMgdHJhbnNsYXRpb25zIF0KKyAgKiBBZGQgbWlzc2luZyBzcGFjZSBpbiBGcmVuY2ggdHJhbnNsYXRpb24uCisgICAgVGhhbmtzIHRvIEN5cmlsICJPZWlsIGRlIGx5bngiIEJydWxlYm9pcy4KKworIC0tIEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4gIFR1ZSwgMDMgRmViIDIwMDkgMDA6MDA6NDEgKzAyMDAKKworZHBrZyAoMS4xNC4yNCkgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgWyBSYXBoYcOrbCBIZXJ0em9nIF0KKyAgKiBGaXggcGFyc2luZyBvZiBvYmpkdW1wIG91dHB1dCAoYnkgZHBrZy1zaGxpYmRlcHMpIGluIGEgc3BlY2lhbCBjYXNlIHdoZXJlCisgICAgdGhlIHN5bWJvbCBuYW1lIGlzIHNlcGFyYXRlZCBvbmx5IHdpdGggYSBzaW5nbGUgc3BhY2UuIENsb3NlczogIzUwNjEzOQorICAqIEZpeCBkcGtnLXNobGliZGVwcyBiZWhhdmlvdXIgd2hlbiBCdWlsZC1EZXBlbmRzLVBhY2thZ2UgaXMgdXNlZCBpbiB0aGUKKyAgICBzeW1ib2xzIGZpbGUuIEl0IHdhcyBtZXJnaW5nIGFsbCBkZXBlbmRlbmN5IHRlbXBsYXRlcyBpbnRvIHRoZSBnZW5lcmF0ZWQKKyAgICBkZXBlbmRlbmN5IGluc3RlYWQgb2Ygc2ltcGx5IG1vZGlmeWluZyB0aGUgbWluaW1hbCB2ZXJzaW9uLiBUaGFua3MgdG8KKyAgICBNb2Rlc3RhcyBWYWluaXVzIDxtb2Rlc3Rhc0B2YWluaXVzLmV1Pi4gQ2xvc2VzOiAjNTA3MzQ2CisgICogRml4IGRwa2ctc291cmNlIHRvIGNvcnJlY3RseSBleHRyYWN0IGEgc291cmNlIHBhY2thZ2UgZXZlbiB3aGVuIGNhbGxlZAorICAgIGZyb20gYSBub24td3JpdGFibGUgZGlyZWN0b3J5IHdoZW4gYSB0YXJnZXQgZGlyZWN0b3J5IGhhcyBiZWVuIHNwZWNpZmllZAorICAgIG9uIHRoZSBjb21tYW5kIGxpbmUuIENsb3NlczogIzUwNzIxNywgIzUwNzIxOQorCisgIFsgR3VpbGxlbSBKb3ZlciBdCisgICogRG8gbm90IGFsbG93IGluc3RhbGxpbmcgcGFja2FnZXMgd2l0aCBub24tb2Jzb2xldGUgY29uZmZpbGVzIG93bmVkIGJ5CisgICAgb3RoZXIgcGFja2FnZXMgd2l0aG91dCBhIHByb3BlciBSZXBsYWNlcyBmaWVsZC4gQ2xvc2VzOiAjNTA4MzkyCisKKyAgWyBVcGRhdGVkIGRzZWxlY3QgdHJhbnNsYXRpb25zIF0KKyAgKiBHYWxpY2lhbiAoTWFyY2UgVmlsbGFyaW5vKS4gQ2xvc2VzOiAjNTA5ODg3CisKKyAgWyBVcGRhdGVkIGRwa2cgdHJhbnNsYXRpb25zIF0KKyAgKiBHYWxpY2lhbiAoTWFyY2UgVmlsbGFyaW5vKS4gQ2xvc2VzOiAjNTA5MTUwCisgICogVmlldG5hbWVzZSAoQ2x5dGllIFNpZGRhbGwpLiBDbG9zZXM6ICM1MDk0MjQKKworICBbIFVwZGF0ZWQgc2NyaXB0cyB0cmFuc2xhdGlvbnMgXQorICAqIEltcHJvdmUgR2VybWFuIHRyYW5zbGF0aW9uLgorCisgLS0gR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPiAgTW9uLCAyOSBEZWMgMjAwOCAwNTozODozMSArMDEwMAorCitkcGtnICgxLjE0LjIzKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICBbIFJhcGhhw6tsIEhlcnR6b2cgXQorICAqIEJsYWNrbGlzdCAiX19nbnVfbG9jYWxfZ3AiIHN5bWJvbCBmb3IgZHBrZy1nZW5zeW1ib2xzLiBDbG9zZXM6ICM1MDAxODgKKyAgICBUaGFua3MgdG8gVGhpZW1vIFNldWZlciA8dGhzQGRlYmlhbi5vcmc+LgorICAqIEltcG9ydGFudCBidWdmaXggaW4gZHBrZy1nZW5zeW1ib2xzIGZvciBwZW9wbGUgdXNpbmcgaW5jbHVkZXMgaW4gc3ltYm9sCisgICAgZmlsZXM6IHRoZSBjdXJyZW50IG9iamVjdCBkaWRuJ3QgZmxvdyBiYWNrIGZyb20gdGhlIGluY2x1ZGVkIGZpbGUgdG8KKyAgICB0aGUgaW5jbHVkaW5nIGZpbGUuCisgICogRml4IERwa2c6OlZlcnNpb24gY29tcGFyaXNvbiBjb2RlLiBDbG9zZXM6ICM1MDQxMzUKKworICBbIEd1aWxsZW0gSm92ZXIgXQorICAqIFVudGFuZ2xlIGZhdGFsIGFib3J0IGNvbmRpdGlvbiBmcm9tIHRoZSDigJx0b28gbWFueSBlcnJvcnPigJ0gb25lIGluIHRoZQorICAgIGFyY2hpdmVzIGFuZCBwYWNrYWdlcyBwcm9jZXNzaW5nIGxvb3AuIENsb3NlczogIzM2NzIyNgorICAqIEFib3J0IG9uIHVucmVjb3ZlcmFibGUgZmF0YWwgZXJyb3JzIGluc3RlYWQgb2YgY29udGludWluZyBleGVjdXRpb24sIGFzCisgICAgdGhlIHJlY292ZXJ5IGNvZGUgYXNzdW1lZCB0aGUgZXhlY3V0aW9uIHdvdWxkIG5vdCBiZSByZWFjaGluZyBpdCBhZ2FpbgorICAgIGFuZCBzb21lIHRpbWVzIGJvZ3VzIHVwZGF0ZSBmaWxlcyB3ZXJlIGNyZWF0ZWQgZWl0aGVyIHdpdGggaW5jb21wbGV0ZWx5CisgICAgd3JpdHRlbiBjb250ZW50IG9yIHdpdGggJyNwYWRkaW5nJyBsaW5lcy4gQ2xvc2VzOiAjNDk3MDQxLCAjNDk5MDcwCisKKyAgWyBVcGRhdGVkIGRwa2cgdHJhbnNsYXRpb25zIF0KKyAgKiBCcmF6aWxpYW4gUG9ydHVndWVzZSAoRmVsaXBlIEF1Z3VzdG8gdmFuIGRlIFdpZWwpLgorICAqIENhdGFsYW4gKEpvcmRpIE1hbGxhY2gpLgorICAqIEN6ZWNoIChNaXJvc2xhdiBLdXJlKS4gQ2xvc2VzOiAjNTA1OTEwCisgICogRnJlbmNoIChDaHJpc3RpYW4gUGVycmllcikKKyAgKiBHZXJtYW4gKFN2ZW4gSm9hY2hpbSkuCisgICogR3JlZWsgKEVtbWFudWVsIEdhbGF0b3VsYXMpLiBDbG9zZXM6ICM0OTg1ODUKKyAgKiBKYXBhbmVzZSAoS2Vuc2hpIE11dG8pLgorICAqIEtvcmVhbiAoQ2hhbmd3b28gUnl1KS4gQ2xvc2VzOiAjNTA1Nzc3CisgICogTm9yd2VnaWFuIEJva23DpWwgKEhhbnMgRi4gTm9yZGhhdWcpLgorICAqIFBvbGlzaCAoV2lrdG9yIFdhbmRhY2hvd2ljeikuCisgICogUG9ydHVndWVzZSAoTWlndWVsIEZpZ3VlaXJlZG8pLiBDbG9zZXM6ICM1MDU4NjkKKyAgKiBSdXNzaWFuIChZdXJpIEtvemxvdikuIENsb3NlczogIzQ5OTAyOCwgIzUwNTczNQorICAqIFJvbWFuaWFuIChFZGR5IFBldHJpP29yKS4KKyAgKiBTbG92YWsgKEl2YW4gTWFzw6FyKS4gQ2xvc2VzOiAjNTA2MDI0CisgICogU3BhbmlzaCAoSmF2aWVyIEZlcm5hbmRlei1TYW5ndWlubykuIENsb3NlczogIzUwNTgzNgorICAqIFN3ZWRpc2ggKFBldGVyIEtyZWZ0aW5nKS4KKworICBbIFVwZGF0ZWQgc2NyaXB0cyB0cmFuc2xhdGlvbnMgXQorICAqIEZpeCB0eXBvIGluIFJ1c3NpYW4uIENsb3NlczogIzQ5OTczNgorICAqIEZpeCB3cm9uZyB0cmFuc2xhdGlvbiBpbiBGcmVuY2guIENsb3NlczogIzUwNDEyMworICAqIEZyZW5jaCAoQ2hyaXN0aWFuIFBlcnJpZXIpLgorCisgIFsgVXBkYXRlZCBtYW5wYWdlcyB0cmFuc2xhdGlvbnMgXQorICAqIEdlcm1hbiAoSGVsZ2UgS3JldXR6bWFubikuCisKKyAtLSBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+ICBUdWUsIDE4IE5vdiAyMDA4IDExOjUwOjU2ICswMjAwCisKK2Rwa2cgKDEuMTQuMjIpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgIFsgUmFwaGHDq2wgSGVydHpvZyBdCisgICogVGhlIGxhc3QgInNtYWxsIGZpeCIgYWN0dWFsbHkgYnJva2UgY29udmVyc2lvbiBvZiBzb3VyY2UgcGFja2FnZXMgdG8KKyAgICAiMy4wIChxdWlsdCkiIGZvcm1hdCB3aGVuIHRoZXkgaGF2ZSBsb2NhbCBjaGFuZ2VzIGFuZCBubyBwcmUtZXhpc3RpbmcKKyAgICBxdWlsdCBzZXJpZXMgZmlsZS4gTm93IGFsd2F5cyBwcm92aWRlIGEgdmFsaWQgbmFtZSBpbiBRVUlMVF9TRVJJRVMuCisgICAgQ2xvc2VzOiAjNDk2OTIwCisgICogRml4IHBlcm1pc3Npb25zIG9mIHRoZSBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlZCBwYXRjaCBpbiAiMi4wIiBhbmQgIjMuMAorICAgIChxdWlsdCkiIGZvcm1hdC4gVGhleSB3ZXJlIGltcHJvcGVybHkgc2V0IHRvIDA2MDAgZHVlIHRvIHRlbXBmaWxlKCkKKyAgICBhbmQgd2VyZSBub3QgcmVzZXQgdG8gYSBzYW5lIHZhbHVlLiBDbG9zZXM6ICM0OTY5MjUKKyAgKiBGaXggZHBrZy1nZW5zeW1ib2xzIHRvIG5vdCBzY2FuIChyZWFsKSBkaXJlY3RvcmllcyBhY2Nlc3NlZCB0aHJvdWdoIGEKKyAgICBzeW1saW5rIGNvbnRhaW5lZCBpbiB0aGUgYnVpbGQgdHJlZSBhcyB0aGV5IG1heSB3ZWxsIG5vdCBiZSBwYXJ0IG9mCisgICAgdGhlIHBhY2thZ2UgKHdpdGggYWJzb2x1dGUgc3ltbGlua3MpLiBJdCB3YXMgYWxyZWFkeSBza2lwcGluZyBzeW1saW5rcworICAgIChzaW5jZSAxLjE0LjE2LjYpIGZvciBzaW1pbGFyIHJlYXNvbnMuCisKKyAgWyBVcGRhdGVkIGRwa2cgdHJhbnNsYXRpb25zIF0KKyAgKiBCYXNxdWUgKFBpYXJyZXMgQmVvYmlkZSkuIENsb3NlczogIzQ5Njc1MworICAqIEJyYXppbGlhbiBQb3J0dWd1ZXNlIChGZWxpcGUgQXVndXN0byB2YW4gZGUgV2llbCkuCisgICogR2FsaWNpYW4gKEphY29ibyBUYXJyaW8pLgorICAqIE5vcndlZ2lhbiBCb2ttYWwgKEhhbnMgRnJlZHJpayBOb3JkaGF1ZykuIENsb3NlczogIzQ5NzMwOQorICAqIFN3ZWRpc2ggKERhbmllbCBOeWxhbmRlciBhbmQgUGV0ZXIgS3JlZnRpbmcpLgorICAqIFZpZXRuYW1lc2UgKENseXRpZSBTaWRkYWxsKS4gQ2xvc2VzOiAjNDk3ODkzCisKKyAgWyBVcGRhdGVkIG1hbnBhZ2VzIHRyYW5zbGF0aW9ucyBdCisgICogU3dlZGlzaCAoUGV0ZXIgS3JlZnRpbmcpLgorCisgIFsgVXBkYXRlZCBzY3JpcHRzIHRyYW5zbGF0aW9ucyBdCisgICogU3dlZGlzaCAoUGV0ZXIgS3JlZnRpbmcpLgorCisgLS0gUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPiAgRnJpLCAwNSBTZXAgMjAwOCAxNjo1NDo0NSArMDIwMAorCitkcGtnICgxLjE0LjIxKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICBbIFJhcGhhw6tsIEhlcnR6b2cgXQorICAqIFNtYWxsIGZpeCBpbiAiMy4wIChxdWlsdCkiIHNvdXJjZSBmb3JtYXQgd2hlbiB1c2luZyBub24tc3RhbmRhcmQgbmFtZQorICAgIG9mIHRoZSBxdWlsdCBzZXJpZXMuCisgICogSGFuZGxlIGRlYmlhbi50YXIuZ3ogZmlsZXMgbGlrZSBkaWZmLmd6IGluIGRwa2ctYnVpbGRwYWNrYWdlIGFuZAorICAgIGRwa2ctZ2VuY2hhbmdlcyB0byBkZXRlY3QgdGhlIGtpbmQgb2YgdXBsb2FkLgorICAqIEFkZCAiYXJtZWwiIHRvIC91c3Ivc2hhcmUvZHBrZy9hcmNodGFibGUuIENsb3NlczogIzQ4Nzc2OAorICAqIE1vZGlmaWVkIERwa2c6OkJ1aWxkT3B0aW9ucyB0byByZWNvZ25pemUgYW5kIHVzZSBzcGFjZXMgYXMgc2VwYXJhdG9yCisgICAgaW4gREVCX0JVSUxEX09QVElPTlMgKGluIG9yZGVyIHRvIGNvbmZvcm0gd2l0aCB0aGUgRGViaWFuIHBvbGljeQorICAgIHJ1bGluZyBlc3RhYmxpc2hlZCBpbiAjNDMwNjQ5KS4gQ2xvc2VzOiAjNDg2OTM3CisgICogRml4IGRwa2ctc291cmNlIHRvIG5vdCB1c2UgLWkgYW5kIC1JIGJ5IGRlZmF1bHQgd2l0aCAiMS4wIiBzb3VyY2UKKyAgICBwYWNrYWdlcy4gQ2xvc2VzOiAjNDk1MTM4CisKKyAgWyBHdWlsbGVtIEpvdmVyIF0KKyAgKiBXaGVuIGxvYWRpbmcgdGhlIHN0YXR1cyBmaWxlIGZpeCB1cCBhbnkgaW5jb25zaXN0ZW50IHBhY2thZ2UgaW4gc3RhdGUKKyAgICB0cmlnZ2Vycy1hd2FpdGVkIHcvbyB0aGUgY29ycmVzcG9uZGluZyBwYWNrYWdlIHdpdGggcGVuZGluZyB0cmlnZ2Vycy4KKyAgICBDbG9zZXM6ICM0ODc2MzcsICM0ODY4NDMsICM0ODkwNjgKKyAgKiBGaXggLS1uby1hY3QgaW4gdHJpZ2dlcnMgcmVsYXRlZCBjb2RlLiBDbG9zZXM6ICM0OTUwOTcKKyAgKiBEbyBub3QgYXNzZXJ0IHdoZW4gZHBrZyBzdG9wcyBwcm9jZXNzaW5nIHBhY2thZ2VzIGR1ZSB0byB0b28gbWFueQorICAgIGVycm9ycyBvY2N1cnJlZCB3aGlsZSBjb25maWd1cmluZyBvciByZW1vdmluZyBwYWNrYWdlcy4KKyAgICBUaGFua3MgdG8gSWFuIEphY2tzb24gPGlhbkBkYXZlbmFudC5ncmVlbmVuZC5vcmcudWs+LiBDbG9zZXM6ICM0ODM2NTUKKyAgKiBNb3ZlIGx6bWEgZnJvbSBkcGtnIFN1Z2dlc3RzIHRvIFByZS1EZXBlbmRzLiBDbG9zZXM6ICM0NTYzMzIKKyAgKiBNYXRjaCBkZXNjcmlwdGlvbiBvZiAtc2kgb3B0aW9uIGluIGRwa2ctYnVpbGRwYWNrYWdlIHRvIHRoZSBvbmUgaW4KKyAgICBkcGtnLWdlbmNoYW5nZXMuIENsb3NlczogIzQ5Mzc0MworICAqIENsb3NlIC0tc3RhdHVzLWZkIGZpbGUgZGVzY3JpcHRvcnMgb24gZXhlYywgc28gdGhhdCB0aGV5IGFyZSBub3QKKyAgICBpbmhlcml0ZWQgYnkgdGhlIGNoaWxkcy4gQ2xvc2VzOiAjNDcxNDg4LCAjNDg3Njg0CisgICogU3RhdGUgdGhhdCB0aGUgcHJlZmVycmVkIGZyb250LWVuZCBpcyBhcHRpdHVkZSBhbmQgcmVwbGFjZSBvbmUgaW5zdGFuY2UKKyAgICBvZiBkc2VsZWN0IHVzYWdlIHdpdGggYXB0LWdldC4gQ2xvc2VzOiAjNDgzNzg1CisKKyAgWyBVcGRhdGVkIG1hbnBhZ2VzIHRyYW5zbGF0aW9ucyBdCisgICogRnJlbmNoIChGbG9yZW50IFVzc2VpbCkuCisgICogR2VybWFuIChIZWxnZSBLcmV1dHptYW5uKS4KKworICBbIFVwZGF0ZWQgc2NyaXB0cyB0cmFuc2xhdGlvbnMgXQorICAqIFJ1c3NpYW4gKFl1cmkgS296bG92KS4gQ2xvc2VzOiAjNDkwMDc2CisgICogR2VybWFuIChIZWxnZSBLcmV1dHptYW5uKS4KKworICBbIFVwZGF0ZWQgZHBrZyB0cmFuc2xhdGlvbnMgXQorICAqIEJhc3F1ZSAoUGlhcnJlcyBCZW9iaWRlKS4gQ2xvc2VzOiAjNDkwOTA1CisgICogQ3plY2ggKE1pcm9zbGF2IEt1cmUpLgorICAqIEZyZW5jaCAoQ2hyaXN0aWFuIFBlcnJpZXIpLgorICAqIEdlcm1hbiAoU3ZlbiBKb2FjaGltKS4KKyAgKiBLb3JlYW4gKENoYW5nd29vIFJ5dSkuCisgICogUm9tYW5pYW4gKEVkZHkgUGV0cmk/b3IpLgorICAqIFJ1c3NpYW4gKFl1cmkgS296bG92KS4gQ2xvc2VzOiAjNDg4Njg5CisgICogU2ltcGxpZmllZCBDaGluZXNlIChEZW5nIFhpeXVlKS4gQ2xvc2VzOiAjNDk2MTc2CisgICogU2xvdmFrIChJdmFuIE1hc8OhcikuIENsb3NlczogIzQ4ODkwMywgIzQ5NTUwNQorICAqIFRoYWkgKFRoZXBwaXRhayBLYXJvb25ib29ueWFuYW4pLiBDbG9zZXM6ICM0ODgwOTAKKworICBbIEFkZGVkIGRwa2cgdHJhbnNsYXRpb25zIF0KKyAgKiBMaXRodWFuaWFuIChHaW50YXV0YXMgTWlsaWF1c2thcykuIENsb3NlczogIzQ5MzMyNgorCisgIFsgVXBkYXRlZCBkc2VsZWN0IHRyYW5zbGF0aW9ucyBdCisgICogUm9tYW5pYW4gKEVkZHkgUGV0cmk/b3IpLgorCisgLS0gR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPiAgVHVlLCAyNiBBdWcgMjAwOCAwNTozMjozOSArMDMwMAorCitkcGtnICgxLjE0LjIwKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICBbIEd1aWxsZW0gSm92ZXIgXQorICAqIENoYW5nZSBVVEYtOCAnwqknIHRvICcoQyknIGluIGRlYi12ZXJzaW9uLjUgKHVuZnV6enkgdHJhbnNsYXRpb25zKS4KKyAgKiBEb2N1bWVudCAtLWZvcmNlLWJyZWFrcyBpbiAnZHBrZyAtLWZvcmNlLWhlbHAnIG91dHB1dC4KKyAgKiBEb2N1bWVudCB0cmlnZ2VycyAtLWRlYnVnIHZhbHVlcyBpbiBkcGtnLjEuIFRoYW5rcyB0byBTdmVuIEpvYWNoaW0uCisgICogSW1wcm92ZSBwYWNrYWdlIGRlc2NyaXB0aW9ucyBmb3IgZHBrZywgZHBrZy1kZXYgYW5kIGRzZWxlY3QuCisgICAgVGhhbmtzIHRvIEp1c3RpbiBCIFJ5ZSBmb3IgdGhlIHJldmlldyBhbmQgY29ycmVjdGlvbnMuIENsb3NlczogIzQ4NDAwMgorICAqIFdoZW4gZHBrZy1kaXZlcnQgZG9lcyByZW5hbWVzIGRvIG5vIGNoZWNrIHRoZSB0YXJnZXQgZmlsZSBpZiB0aGUgc291cmNlCisgICAgZG9lcyBub3QgZXhpc3QgYW5kIHRoZSByZW5hbWUgaXMgdGh1cyBiZWluZyBkaXNhYmxlZC4gVGhpcyBhbHNvIGFsbG93cworICAgIHRvIHJlbW92ZSBib2d1cyBkaXZlcnNpb25zLiBDbG9zZXM6ICM0NzY5NzMsICM0NjkwMzMKKyAgKiBQcm9wZXJseSBjbG9zZSB0cmlnZ2VycyAnRmlsZScgZmlsZSwgc28gaXQgZG9lcyBub3QgZ2V0IGxlYWtlZCB0byBjaGlsZHMuCisKKyAgWyBSYXBoYcOrbCBIZXJ0em9nIF0KKyAgKiBBZGQgbWlzc2luZyAndXNlIEZpbGU6OlBhdGgnIGluIERwa2c6OlNvdXJjZTo6UGFja2FnZTo6VjM6OnF1aWx0LgorICAqIFVzZSBkZWJpYW4vcGF0Y2hlcy9kZWJpYW4tY2hhbmdlcy08dmVyc2lvbj4gKHdpdGhvdXQgdGhlIHRyYWlsaW5nICIuZGlmZiIpCisgICAgYXMgZGVmYXVsdCBuYW1lIGZvciB0aGUgYXV0b21hdGljIHBhdGNoIGNyZWF0ZWQgYnkgdGhlIGZvcm1hdCAiMy4wCisgICAgKHF1aWx0KSIuIFRoaXMgZW5zdXJlcyBhIHNhbmVyIGNvaGFiaXRhdGlvbiB3aXRoIHBhdGNoIHN5c3RlbXMgdGhhdAorICAgIGFwcGx5IGFsbCBvZiBkZWJpYW4vcGF0Y2hlcy8qLntkaWZmLHBhdGNofS4KKyAgKiBJbXByb3ZlIHBhdGNoIHBhcnNlciB0byBhY2NlcHQgbW9yZSBwYXRjaGVzIHRoYXQgYXJlIGFjY2VwdGVkIGJ5IHBhdGNoCisgICAgaXRzZWxmLgorICAqIENvcnJlY3RseSBza2lwIGNvbW1lbnRzIGluIHF1aWx0IHNlcmllcyBmaWxlcyAoY29uY2VybnMgIjMuMCAocXVpbHQpIiBzb3VyY2UKKyAgICBwYWNrYWdlcykuIENsb3NlczogIzQ4NjMyMworICAqIFRoZSBhdXRvbWF0aWNhbGx5IGNyZWF0ZWQgcGF0Y2hlcyAoaW4gc291cmNlIHBhY2thZ2UgZm9ybWF0cyAiMi4wIiBhbmQKKyAgICAiMy4wIChxdWlsdCkiKSB3aWxsIG5vdyBjb250YWluICIvZGV2L251bGwiIGFzIHByZXZpb3VzIGZpbGVuYW1lIHdoZW4gdGhlCisgICAgcGF0Y2ggY3JlYXRlcyBhIG5ldyBmaWxlIChpbnN0ZWFkIG9mIHB1dHRpbmcgdGhlIHNhbWUgbmFtZSkuCisgICogU2V0IFBFUkxfRExfTk9OTFpZIHRvIDEgaW4gcGVybCBzY3JpcHRzIHRoYXQgYXJlIGxpa2VseSB0byBiZSBjYWxsZWQgaW4KKyAgICBwYWNrYWdlJ3MgY29uZmlndXJhdGlvbiBzY3JpcHRzIHRvIHdvcmsgYXJvdW5kIHRoZSBwZXJsIGJ1ZyAjNDc5NzExLgorCisgIFsgSGVsZ2UgS3JldXR6bWFubiBdCisgICogRml4IGEgdHlwbyBpbiBkc2VsZWN0LjEuCisKKyAgWyBVcGRhdGVkIGRwa2cgdHJhbnNsYXRpb25zIF0KKyAgKiBCYXNxdWUgKFBpYXJyZXMgQmVvYmlkZSkuIENsb3NlczogIzQ4MTA0MworICAqIEJyYXppbGlhbiBQb3J0dWd1ZXNlIChGZWxpcGUgQXVndXN0byB2YW4gZGUgV2llbCkuCisgICogQ2F0YWxhbiAoSm9yZGkgTWFsbGFjaCkuIENsb3NlczogIzM4MzQ0OAorICAqIEN6ZWNoIChNaXJvc2xhdiBLdXJlKS4KKyAgKiBGcmVuY2ggKENocmlzdGlhbiBQZXJyaWVyKS4KKyAgKiBHYWxpY2lhbiAoSmFjb2JvIFRhcnJpbykuIENsb3NlczogIzQ4MzQ0MQorICAqIEdlcm1hbiAoU3ZlbiBKb2FjaGltKS4KKyAgKiBOb3J3ZWdpYW4gQm9rbWFsIChIYW5zIEZyZWRyaWsgTm9yZGhhdWcpLiBDbG9zZXM6ICM0ODA2MjYKKyAgKiBQb2xpc2ggKFdpa3RvciBXYW5kYWNob3dpY3opLgorICAqIFNpbXBsaWZpZWQgQ2hpbmVzZSAoRGVuZyBYaXl1ZSkuIENsb3NlczogIzQ4MzE0MworICAqIFN3ZWRpc2ggKFBldGVyIEthcmxzc29uKS4KKyAgKiBWaWV0bmFtZXNlIChDbHl0aWUgU2lkZGFsbCkuIENsb3NlczogIzQ4MTE5OQorCisgIFsgVXBkYXRlZCBtYW5wYWdlcyB0cmFuc2xhdGlvbnMgXQorICAqIEdlcm1hbiAoSGVsZ2UgS3JldXR6bWFubikuCisgICogUG9saXNoIChXaWt0b3IgV2FuZGFjaG93aWN6KS4KKyAgKiBTd2VkaXNoIChQZXRlciBLYXJsc3NvbikuCisKKyAgWyBVcGRhdGVkIHNjcmlwdHMgdHJhbnNsYXRpb25zIF0KKyAgKiBGcmVuY2ggKENocmlzdGlhbiBQZXJyaWVyKS4KKyAgKiBHZXJtYW4gKEhlbGdlIEtyZXV0em1hbm4pLgorICAqIFBvbGlzaCAoV2lrdG9yIFdhbmRhY2hvd2ljeikuCisgICogUnVzc2lhbiAoWXVyaSBLb3psb3YpLgorICAqIFN3ZWRpc2ggKFBldGVyIEthcmxzc29uKS4KKworICBbIFVwZGF0ZWQgZHNlbGVjdCB0cmFuc2xhdGlvbnMgXQorICAqIEJyYXppbGlhbiBQb3J0dWd1ZXNlIChGZWxpcGUgQXVndXN0byB2YW4gZGUgV2llbCkuCisgICogUG9saXNoIChXaWt0b3IgV2FuZGFjaG93aWN6KS4KKworIC0tIFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4gIFdlZCwgMTggSnVuIDIwMDggMDk6MzM6NTQgKzAyMDAKKworZHBrZyAoMS4xNC4xOSkgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgWyBHdWlsbGVtIEpvdmVyIF0KKyAgKiBGaXggYSBkb3VibGUtZnJlZSBieSBzZXR0aW5nIHNjb250ZXh0IHRvIE5VTEwgYWZ0ZXIgY2FsbGluZyBmcmVlY29uLgorICAgIEJhc2VkIG9uIGEgcGF0Y2ggYnkgUnVzc2VsbCBDb2tlci4gQ2xvc2VzOiAjNDc0MzM5CisgICogQWRkIG1pc3NpbmcgaW1wb3J0IG9mIGludGVybmVyciBpbiBEcGtnOjpTb3VyY2U6OlBhdGNoLnBtLgorICAgIFRoYW5rcyB0byBNYXJjbyBkJ0l0cmkuIENsb3NlczogIzQ3OTIwNQorICAqIENvbnNpZGVyIGFsc28gY3VzdG9tIFBhY2thZ2UtVHlwZSBmaWVsZHMgd2hlbiBwcmludGluZyB3YXJuaW5ncyBpbgorICAgIGRwa2ctZ2VuY29udHJvbC4gQ2xvc2VzOiAjNDUyMjczCisKKyAgWyBSYXBoYcOrbCBIZXJ0em9nIF0KKyAgKiBBZGQgbWlzc2luZyBpbXBvcnQgb2Ygc3VicHJvY2VyciBpbiBEcGtnOjpTb3VyY2U6OlBhY2thZ2UuIFRoYW5rcyB0byBTdmVuCisgICAgSm9hY2hpbSBmb3IgdGhlIHBhdGNoLgorICAqIEhhbmRsZSBzeW1saW5rcyBiZXR0ZXIgd2hlbiBkZWNpZGluZyBpZiBkcGtnLXNvdXJjZSBoYXMgdG8gY29weSB0aGUKKyAgICBvcmlnaW5hbCB0YXJiYWxsIGluIHRoZSBjdXJyZW50IGV4dHJhY3Rpb24gZGlyZWN0b3J5LiBDbG9zZXM6ICM0NzU2NjgKKyAgKiBGaXggdGhlIGRwa2ctc291cmNlIGVycm9yIG1lc3NhZ2UgYWJvdXQgdW5yZXByZXNlbnRhYmxlIGNoYW5nZXMgdG8KKyAgICBzb3VyY2UgYmVjYXVzZSB0aGUgdHlwZSBvZiBhIGZpbGUgY2hhbmdlZCAobmV3IGFuZCBvbGQgd2VyZSBpbnZlcnRlZCkuCisgICogRml4IGRwa2ctZ2VuY2hhbmdlcyB0byBkZXRlY3QgdWRlYiBiYXNlZCBvbiBQYWNrYWdlLVR5cGUgY29udHJvbAorICAgIGhlYWRlciBpbnN0ZWFkIG9mIGZpbGUgZXh0ZW5zaW9uIGFuYWx5c2lzIG9uIHVwbG9hZGVkIGZpbGVzLgorICAgIENsb3NlczogIzQ3NjExMworICAqIEZpeCBkcGtnLXNvdXJjZSB0byBncmFudCBjb3JyZWN0IHBlcm1pc3Npb25zIHRvIHRhcmJhbGxzIG9mIG5hdGl2ZQorICAgIHNvdXJjZSBwYWNrYWdlcy4gQ2xvc2VzOiAjNDc3Nzg0CisgICogQWRkIENvbmZsaWN0czogZGV2c2NyaXB0cyAoPDwgMi4xMC4yNikgdG8gZW5zdXJlIHRoYXQgcGVvcGxlIGFyZQorICAgIHVzaW5nIHZlcnNpb25zIG9mIGRlYnNpZ24vbWVyZ2VjaGFuZ2VzIHRoYXQgc3VwcG9ydCB0aGUgQ2hlY2tzdW1zIGZpZWxkcworICAgIGluICouZHNjIGFuZCAqLmNoYW5nZXMuCisgICogQ2xlYW51cCB0aGUgdmFyaW91cyBDb25mbGljdHMvUmVwbGFjZXMgZmllbGRzIHRvIHJlbW92ZSByZWZlcmVuY2VzCisgICAgdG8gcGFja2FnZSB0aGF0IGhhdmUgZGlzYXBwZWFyZWQgYmVmb3JlIHNhcmdlICh0aGlzIGluY2x1ZGVzIGRwa2ctZG9jLWphLAorICAgIGRwa2duYW1lLCBhbmQgZHBrZy1zdGF0aWMgd2hpY2ggaGFzIG5ldmVyIG9mZmljaWFsbHkgYmVlbiBidWlsdCkuCisgICAgZHBrZy1pYXNlYXJjaCBoYXMgYmVlbiBrZXB0IGFzIHBvcGNvbiBzdGlsbCByZXBvcnRzIGEgZmV3IGluc3RhbGxhdGlvbnMuCisgICogQ29sbGFwc2VkIG11bHRpcGxlIGNvbmZsaWN0cyBvZiBkcGtnIHdpdGggb2xkIHZlcnNpb25zIG9mIGRwa2ctZGV2CisgICAgaW4gYSBzaW5nbGUgQ29uZmxpY3RzOiBkcGtnLWRldiAoPDwgMS4xNC4xNikuCisgICogVGhlICIzLjAgKHF1aWx0KSIgc291cmNlIHBhY2thZ2UgZm9ybWF0IG5vdyBwYXJzZXMgY29ycmVjdGx5IHNlcmllcyBmaWxlcworICAgIHdpdGggcGF0Y2ggb3B0aW9ucyBhbmQgd2FybiBpZiBzb21ldGhpbmcgZWxzZSB0aGFuIC1wMSBpcyB1c2VkLgorICAqIENoYW5nZSB0aGUgd2F5IGRwa2ctc291cmNlIGZpbmRzIHRoZSBwZXJsIG9iamVjdCB0byB1c2UgdG8gdW5wYWNrL2J1aWxkCisgICAgYSBzb3VyY2UgcGFja2FnZSB0byBpZ25vcmUgdGhlIG1pbm9yIHBhcnQgb2YgdGhlIEZvcm1hdDogdmVyc2lvbi4KKyAgICBGb3IgZXhhbXBsZSAiMS4wIiBhbmQgIjEuMSIgd291bGQgYm90aCBtYXAgdG8gRHBrZzo6U291cmNlOjpQYWNrYWdlOjpWMQorICAgIGluc3RlYWQgb2YgOjpWMV8wIGFuZCA6OlYxXzEgYmVmb3JlLiBTaW1pbGFybHkgIjMuMCAocXVpbHQpIiBub3cgbWFwcyB0bworICAgIDo6VjM6OnF1aWx0IGluc3RlYWQgb2YgOjpWM18wOjpxdWlsdC4KKyAgKiBGaXggY2hhbmdlbG9nIHBhcnNlciB0byBub3QgZmFpbCB3aGVuIGFuIHVuZXhwZWN0ZWQgY2hhbmdlbG9nIGVudHJ5CisgICAgYXBwZWFycyB3aXRob3V0IHRoZSBwcmVjZWRpbmcgaGVhZGluZyBsaW5lLiBDbG9zZXM6ICM0Nzg5MjUKKyAgKiBDaGFuZ2UgdGhlICIyLjAiIGFuZCAiMy4wIChxdWlsdCkiIHNvdXJjZSBwYWNrYWdlcyB0byByZWZ1c2UgYnkgZGVmYXVsdAorICAgIGJpbmFyeSBmaWxlcyBpbiB0aGUgZGViaWFuIHN1Yi1kaXJlY3RvcnkuIFRoZXkgaGF2ZSB0byBiZSB3aGl0ZWxpc3RlZAorICAgIHRocm91Z2ggZGViaWFuL3NvdXJjZS9pbmNsdWRlLWJpbmFyaWVzLiBDbG9zZXM6ICM0NzMwNDEKKyAgKiBNYWtlIHN1cmUgdHJpZ2dlcnMgYXJlIGFjdGl2YXRlZCB3aGVuIGEgZmlsZSBpcyByZW1vdmVkIGluIGEgZGlyZWN0b3J5CisgICAgc2hhcmVkIGJ5IG11bHRpcGxlIHBhY2thZ2VzLiBDbG9zZXM6ICM0Nzk4NTAKKworICBbIEhlbGdlIEtyZXV0em1hbm4gXQorICAqIE1pbm9yIGZpeGVzIGFuZCBjbGFyaWZpY2F0aW9ucyB0byBtYW4gcGFnZXMuCisKKyAgWyBVcGRhdGVkIGRwa2cgdHJhbnNsYXRpb25zIF0KKyAgKiBCcmF6aWxpYW4gUG9ydHVndWVzZSAoRmVsaXBlIEF1Z3VzdG8gdmFuIGRlIFdpZWwpLiBDbG9zZXM6ICM0ODA1NzkKKyAgKiBDemVjaCAoTWlyb3NsYXYgS3VyZSkuCisgICogRnJlbmNoIChGbG9yZW50IFVzc2VsKS4KKyAgKiBHYWxpY2lhbiAoSmFjb2JvIFRhcnJpbykuCisgICogR2VybWFuIChTdmVuIEpvYWNoaW0pLgorICAqIFBvbGlzaCAoV2lrdG9yIFdhbmRhY2hvd2ljeikuCisgICogUG9ydHVndWVzZSAoTWlndWVsIEZpZ3VlaXJlZG8pLgorICAqIFJ1c3NpYW4gKFl1cmkgS296bG92KS4gQ2xvc2VzOiAjNDc4ODI3CisgICogU2xvdmFrIChJdmFuIE1hc8OhcikuIENsb3NlczogIzQ3ODg5NworICAqIFN3ZWRpc2ggKFBldGVyIEthcmxzc29uKS4KKworICBbIFVwZGF0ZWQgbWFucGFnZXMgdHJhbnNsYXRpb25zIF0KKyAgKiBHZXJtYW4gKEhlbGdlIEtyZXV0em1hbm4pLgorICAqIFBvbGlzaCAoV2lrdG9yIFdhbmRhY2hvd2ljeikuCisgICogU3dlZGlzaCAoUGV0ZXIgS2FybHNzb24pLgorCisgIFsgVXBkYXRlZCBzY3JpcHRzIHRyYW5zbGF0aW9ucyBdCisgICogR2VybWFuIChIZWxnZSBLcmV1dHptYW5uKS4KKyAgKiBQb2xpc2ggKFdpa3RvciBXYW5kYWNob3dpY3opLgorICAqIFJ1c3NpYW4gKFl1cmkgS296bG92KS4gQ2xvc2VzOiAjNDc5MTQyCisgICogU3dlZGlzaCAoUGV0ZXIgS2FybHNzb24pLgorCisgIFsgVXBkYXRlZCBkc2VsZWN0IHRyYW5zbGF0aW9ucyBdCisgICogQnJhemlsaWFuIFBvcnR1Z3Vlc2UgKEZlbGlwZSBBdWd1c3RvIHZhbiBkZSBXaWVsKS4KKyAgKiBDemVjaCAoTWlyb3NsYXYgS3VyZSkuCisgICogRnJlbmNoIChDaHJpc3RpYW4gUGVycmllcikuCisgICogR2VybWFuIChTdmVuIEpvYWNoaW0pLgorICAqIFJ1c3NpYW4gKFl1cmkgS296bG92KS4gQ2xvc2VzOiAjNDc4ODAyCisgICogU2xvdmFrIChJdmFuIE1hc8OhcikuIENsb3NlczogIzQ3OTAwNworCisgLS0gR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPiAgTW9uLCAxMiBNYXkgMjAwOCAwODozMzowNyArMDMwMAorCitkcGtnICgxLjE0LjE4KSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICBbIEd1aWxsZW0gSm92ZXIgXQorICAqIEJ1bXAgcG80YSB2ZXJzaW9uIGluIEJ1aWxkLURlcGVuZHMgdG8gMC4zMy4xLTEsIGFzIHVzYWdlIG9mIFVURi04CisgICAgaW4gb3JpZ2luYWwgbWFuIHBhZ2VzIHdhcyBjYXVzaW5nIGJ1aWxkIGZhaWx1cmVzLiBDbG9zZXM6ICM0NzM0OTgKKyAgKiBBZGQgdHJpZ2dlcnMgZG9jdW1lbnRhdGlvbiB0byBkcGtnLWRldi4gQ2xvc2VzOiAjNDczNDQ5CisgICogQWRkIGRlYi10cmlnZ2Vycy41IGFuZCBkcGtnLXRyaWdnZXIuMSBtYW4gcGFnZXMsIGFuZCBkb2N1bWVudCBuZXcKKyAgICBzdGF0dXNlcyBhbmQgb3B0aW9ucyBpbiBkcGtnLjEuCisKKyAgWyBSYXBoYcOrbCBIZXJ0em9nIF0KKyAgKiBXaGVuIGRwa2ctc291cmNlIGJ1aWxkcyBhIHNvdXJjZSBwYWNrYWdlIG9mIEZvcm1hdDogMi4wIG9yIDMuMCAocXVpbHQpIGl0CisgICAgYXBwbGllcyB0aGUgcGF0Y2hlcyBiZWZvcmUgdGhlIGJ1aWxkIGlmCisgICAgZGViaWFuL3BhdGNoZXMvLmRwa2ctc291cmNlLWFwcGxpZWQgZG9lc24ndCBleGlzdC4gVGhpcyBmaWxlIGlzIGNyZWF0ZWQKKyAgICBkdXJpbmcgZXh0cmFjdGlvbiBpZiBwYXRjaGVzIGFyZSBhcHBsaWVkLCBhbmQgaXMgYXV0by1leGNsdWRlZCBmcm9tIHRoZQorICAgIGRlYmlhbiB0YXJiYWxsLiBUaGlzIGVuYWJsZXMgb24tdGhlLWZseSBjb252ZXJzaW9uIG9mIHNvdXJjZSBwYWNrYWdlcyBmcm9tCisgICAgRm9ybWF0OiAxLjAgdG8gRm9ybWF0OiAzLjAgKHF1aWx0KSB3aXRob3V0IG1hbnVhbCBpbnRlcnZlbnRpb24gb2YgdGhlCisgICAgdXNlci4gVGhpcyBmZWF0dXJlIGNhbiBiZSBkaXNhYmxlZCB3aXRoIHRoZSBvcHRpb24gLS1uby1wcmVwYXJhdGlvbi4KKyAgKiBUaGUgZHBrZy1zb3VyY2Ugb3B0aW9uIC0tc2tpcC1wYXRjaGVzIGRpc2FibGVzIGFwcGxpY2F0aW9uIG9mIHBhdGNoZXMKKyAgICBkdXJpbmcgZXh0cmFjdGlvbiBvZiBzb3VyY2UgcGFja2FnZXMgdXNpbmcgRm9ybWF0OiAyLjAgb3IgRm9ybWF0OiAzLjAKKyAgICAocXVpbHQpLgorICAqIEVuc3VyZSB0aGUgRmlsZXMgZmllbGQgaXMgbGFzdCBpbiAqLmRzYyBhbmQgKi5jaGFuZ2VzLiBUaGlzIGlzIGEKKyAgICB3b3JrLWFyb3VuZCBmb3Igc29tZSBicmFpbmRlYWQgZHNjIHBhcnNlcnMgKGR1cGxvYWQgYW5kIHNidWlsZCBmb3IKKyAgICBpbnN0YW5jZSwgc2VlICM0NzM1MTggYW5kICM0NzA0NDApLgorICAqIEluaXRpYWxpemUgZGVwZW5kZW5jaWVzIGZvciBsaWJyYXJpZXMgaGF2aW5nIHN5bWJvbHMgZmlsZXMgd2l0aCB0aGUKKyAgICBzbWFsbGVzdCBtaW5pbWFsIHZlcnNpb24gbGlzdGVkIGluIHRoZSBzeW1ib2xzIGZpbGUgaW5zdGVhZCBvZiB1c2luZworICAgIGFuIHVudmVyc2lvbmVkIGRlcGVuZGVuY3kuIEl0J3MgdGhlIG9ubHkgd2F5IHRvIGVuc3VyZSB0aGUgbGlicmFyeQorICAgIHByZXNlbmNlIGlmIGl0IHdhc24ndCBhdmFpbGFibGUgaW4gYWxsIHZlcnNpb25zIG9mIHRoZSBwYWNrYWdlIHRoYXQgZXZlcgorICAgIGV4aXN0ZWQuIENsb3NlczogIzQ3NDA3OQorICAqIERvbid0IHVzZSB0aGUgLXAgb3B0aW9uIG9mIGRpZmYgZm9yIEZvcm1hdDogMS4wIHNvdXJjZSBwYWNrYWdlcy4KKyAgICBkcGtnLXNvdXJjZSBvZiBzYXJnZSBkb2Vzbid0IGFjY2VwdCBkYXRhIGFmdGVyIEBALiBDbG9zZXM6ICM0NzQ0MTcKKworICBbIFVwZGF0ZWQgZHNlbGVjdCB0cmFuc2xhdGlvbnMgXQorICAqIEdlcm1hbi4gKFN2ZW4gSm9hY2hpbSkuCisgICogU3dlZGlzaCAoUGV0ZXIgS2FybHNzb24pLgorCisgIFsgVXBkYXRlZCBkcGtnIHRyYW5zbGF0aW9ucyBdCisgICogUG9ydHVndWVzZSAoTWlndWVsIEZpZ3VlaXJlZG8pLgorICAqIFNpbXBsaWZpZWQgQ2hpbmVzZSAoRGVuZyBYaXl1ZSkuIENsb3NlczogIzQ3MzUyMworICAqIFN3ZWRpc2ggKFBldGVyIEthcmxzc29uKS4KKyAgKiBWaWV0bmFtZXNlIChDbHl0aWUgU2lkZGFsbCkuIENsb3NlczogIzQ3MzcyNgorCisgIFsgVXBkYXRlZCBtYW5wYWdlcyB0cmFuc2xhdGlvbnMgXQorICAqIEdlcm1hbiAoSGVsZ2UgS3JldXR6bWFubikuCisgICogU3dlZGlzaCAoUGV0ZXIgS2FybHNzb24pLgorCisgIFsgVXBkYXRlZCBzY3JpcHRzIHRyYW5zbGF0aW9ucyBdCisgICogR2VybWFuIChIZWxnZSBLcmV1dHptYW5uKS4KKyAgKiBTd2VkaXNoIChQZXRlciBLYXJsc3NvbikuCisKKyAtLSBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+ICBUdWUsIDA4IEFwciAyMDA4IDA3OjAwOjEwICswMzAwCisKK2Rwa2cgKDEuMTQuMTcpIGV4cGVyaW1lbnRhbDsgdXJnZW5jeT1sb3cKKworICBbIEd1aWxsZW0gSm92ZXIgXQorICAqIFJlcGxhY2Ugc3RyZHVwIHBsdXMgZXJyb3IgY2hlY2tpbmcgdXNhZ2Ugd2l0aCBhIG5ldyBtX3N0cmR1cCBmdW5jdGlvbi4KKyAgICBDbG9zZXM6ICMzNzkwMjgKKyAgKiBBZGQgbmV3IGtleWJpbmRpbmcgaW4gZHNlbGVjdCB0byByZXN0b3JlIGFsbCBzZWxlY3Rpb25zIGJhY2sgdG8KKyAgICB3aGF0ZXZlcidzIGN1cnJlbnRseSBpbnN0YWxsZWQuIENsb3NlczogIzE1MTU0MAorICAgIFRoYW5rcyB0byBDb2xpbiBXYXRzb24uCisgICogVXNlIHN5c3RlbSB0aW1lcnN1YiBhbmQgZml4IHRpbWV2YWwgbm9ybWFsaXphdGlvbiBpbiBtdWx0aXBsaWNhdGlvbiBpbgorICAgIHN0YXJ0LXN0b3AtZGFlbW9uLiBUaGFua3MgdG8gQW5kcmVhcyBQw6VobHNzb24uIENsb3NlczogIzQ2MjIyNQorICAqIENvc21ldGljIGZpeGVzIHRvIHN0YXJ0LXN0b3AtZGFlbW9uIG91dHB1dCBhbmQgbWFuIHBhZ2UuIERvY3VtZW50IHRoYXQKKyAgICAtLWNodWlkIHdpbGwgY2hhbmdlIHRoZSBncm91cCBldmVuIGlmIGl0IGhhcyBub3QgYmVlbiBzcGVjaWZpZWQuIEFkZAorICAgIEVYSVQgU1RBVFVTIGFuZCBFWEFNUExFIHNlY3Rpb25zIHRvIG1hbiBwYWdlLiBUaGFua3MgdG8gSnVzdGluIFByeXpieS4KKyAgKiBBZGQgUmFwaGHDq2wgSGVydHpvZyB0byBVcGxvYWRlcnMsIGFuZCByZW1vdmUgQnJlbmRhbiBPJ0RlYSBhbmQKKyAgICBDaHJpc3RpYW4gUGVycmllciB3aXRoIHRoZWlyIHBlcm1pc3Npb24uCisgICogVXNlIGZ1bmN0aW9ucyBmcm9tIGxpYmNvbXBhdCB3aGVuIHRob3NlIGFyZSBub3QgcHJvdmlkZWQgYnkgdGhlIHN5c3RlbS4KKyAgICAtIEFkZCBzdHJubGVuIHRvIGxpYmNvbXBhdC4KKyAgICAtIExpbmsgcHJvZ3JhbXMgYWdhaW5zdCBsaWJjb21wYXQgd2hpY2ggcHJvdmlkZXMgb2JzdGFjay4gQ2xvc2VzOiAjMTQyMDQyCisgICogQ2hhbmdlIGRwa2ctZ2VuY29udHJvbCB0byBub3Qgb3V0cHV0IHRoZSBIb21hcGFnZSBmaWVsZCBvbiB1ZGViLgorICAqIFJlaW50cm9kdWNlICduby1kZWJzaWcnIGJhY2sgaW4gZHBrZy5jZmcgdG8gYXZvaWQgZmFpbGluZyB0byBpbnN0YWxsIGFueQorICAgIHBhY2thZ2Ugd2hlbiBkZWJzaWctdmVyaWZ5IGlzIGluc3RhbGxlZC4gQ2xvc2VzOiAjMzExODQzCisgICogRml4IHNvbWUgc21hbGwgbWVtb3J5IGxlYWtzLiBDbG9zZXM6ICM0Njk1MjAKKyAgICBUaGFua3MgdG8gU2VhbiBGaW5uZXkuCisgICogQ29ycmVjdCBicm9rZW4gZHNlbGVjdCBsb2dpYyBmb3Igc2VsZi1jb25mbGljdGluZyBwYWNrYWdlcy4KKyAgICBUaGFua3MgdG8gSWFuIEphY2tzb24uCisgICogSW1wbGVtZW50ICdCcmVha3MnIHByb3Blcmx5IGluIGRzZWxlY3QuIENsb3NlczogIzQ0ODk0NgorICAgIFRoYW5rcyB0byBJYW4gSmFja3Nvbi4KKyAgKiBGaXggZXJyb25lb3VzIGRlc2NyaXB0aW9uIG9mIEJyZWFrcyBpbiBkc2VsZWN0IG91dHB1dC4KKyAgICBUaGFua3MgdG8gSWFuIEphY2tzb24uCisgICogQWxsb3cgY29tcGlsYXRpb24gd2l0aCAtLWRpc2FibGUtbmxzIG9uIHN5c3RlbXMgd2l0aG91dCBsaWJpbnRsLmggd2hlcmUKKyAgICBhIG5vbiBnbGliYyBjbGFpbXMgdG8gYmUgZ2xpYmMuIENsb3NlczogIzQ2NTQyMAorICAqIEZpeCBjcmFzaCB3aGVuIGEgLmRlYiBmaWxlIGJlY29tZXMgdW5yZWFkYWJsZSB3aGlsZSBkcGtnIGlzIHN0YXJ0aW5nLgorICAgIFRoYW5rcyB0byBJYW4gSmFja3Nvbi4gQ2xvc2VzOiAjMjU1ODgyCisgICogRmV3IGZpbGUgZGVzY3JpcHRvciBjbGVhbnVwIGFuZCBlcnJvciBoYW5kbGluZyBmaXhlcy4KKyAgICBUaGFua3MgdG8gSWFuIEphY2tzb24uIENsb3NlczogIzQ0MzMzOAorICAqIE1vdmUgdGVzdCBzdWl0ZSBpbnZvY2F0aW9uIHRvIGEgbmV3IGNoZWNrIHRhcmdldCBpbiBkZWJpYW4vcnVsZXMuCisgICogQWRkIHN1cHBvcnQgZm9yIG5vY2hlY2sgREVCX0JVSUxEX09QVElPTlMgaW4gZGViaWFuL3J1bGVzLCBzbyB0aGF0IHRoZQorICAgIGRwa2cgdGVzdCBzdWl0ZSBjYW4gYmUgc2tlcHQgaWYgZGVzaXJlZC4KKyAgKiBJbXByb3ZlIGxvZyBhbmQgc3RhdHVzLWZkIG91dHB1dCBieSBwcmludGluZyBtb3JlIHN0YXR1cyBjaGFuZ2UgdXBkYXRlcworICAgIGFuZCBhY3Rpb25zLiBUaGFua3MgdG8gSWFuIEphY2tzb24uCisgICogSW1wbGVtZW50IHRyaWdnZXJzIHN1cHBvcnQuIFRoYW5rcyB0byBJYW4gSmFja3Nvbi4KKyAgICBDbG9zZXM6ICMxNzI0MywgIzY4OTgxLCAjMjE1Mzc0LCAjMjE3NjIyLCAjMjQ4NjkzLCAjMzA4Mjg1CisKKyAgWyBSYXBoYcOrbCBIZXJ0em9nIF0KKyAgKiBBZGQgYSB3YXJuaW5nIGRpc3BsYXllZCBieSBkcGtnLWdlbmNoYW5nZXMgaWYgdGhlIGN1cnJlbnQgdmVyc2lvbiBpcworICAgIHNtYWxsZXIgdGhhbiB0aGUgcHJldmlvdXMgb25lLiBDbG9zZXM6ICM0NjU1CisgICogQWRkIC1kIGFuZCAtYyBvcHRpb25zIGluIGRwa2ctY2hlY2tidWlsZGRlcHMgdG8gb3ZlcnJpZGUKKyAgICBidWlsZC1kZXBlbmRzL2NvbmZsaWN0cy4gQ2xvc2VzOiAjMTE0Nzc0CisgICogSW5jbHVkZSBsaXN0IG9mIGxpYnJhcmllcyBpbiBkcGtnLWdlbnN5bWJvbHMnIHdhcm5pbmcgYWJvdXQgbmV3L2xvc3QKKyAgICBsaWJyYXJpZXMuCisgICogQWRkIC1SIG9wdGlvbiB0byBkcGtnLWJ1aWxkcGFja2FnZSBzbyB0aGF0IG9uZSBjYW4gcmVwbGFjZSB0aGUgdXN1YWwKKyAgICAiZGViaWFuL3J1bGVzIiBieSBzb21ldGhpbmcgZWxzZS4gQ2xvc2VzOiAjMzU1NjU0CisgICogQWx3YXlzIGxpc3QgYWxsIGJpbmFyeSBwYWNrYWdlcyBpbiB0aGUgRGVzY3JpcHRpb246IGZpZWxkIG9mIC5jaGFuZ2VzCisgICAgZmlsZXMuIEl0J3MgbmljZSBmb3IgcmV2aWV3ZXJzIGFuZCBtZW50b3JzLmRlYmlhbi5uZXQgd2FzIHVzaW5nIHRoaXMgZmllbGQKKyAgICBvbiBzb3VyY2Ugb25seSB1cGxvYWRzIHRvIGRpc3BsYXkgc2hvcnQgZGVzY3JpcHRpb24gb2Ygd2hhdCB0aGUgcGFja2FnZSBpcworICAgIGFib3V0LgorICAqIEhhbmRsZSB0aGUgY2FzZSB3aGVuIHRoZSBsaWJyYXJ5IGhhcyBhIGRpZmZlcmVudCBTT05BTUUgdGhhbiB0aGUgb25lIHVzZWQKKyAgICB0byBmaW5kIGl0LiBDbG9zZXM6ICM0NjI0MTMKKyAgKiBGaXggRHBrZzo6VmVyc2lvbiBhbmQgRHBrZzo6RmllbGRzOjpPYmplY3QgdG8gaW1wb3J0IF9nKCkgZnJvbQorICAgIERwa2c6OkdldHRleHQuIFRoYW5rcyB0byBBZGFtIEhlYXRoIGFuZCBPbGl2aWVyIEJlcmdlciBmb3Igc3BvdHRpbmcKKyAgICB0aGlzLiBDbG9zZXM6ICM0NjU2NTEKKyAgKiBDaGFuZ2UgUEFUSCBkdXJpbmcgbWFrZSBjaGVjayB0byBsb29rIGludG8gYnVpbGQgZGlyZWN0b3JpZXMgY29udGFpbmluZworICAgIGRwa2cgYW5kIHRoZSByZWxhdGVkIHNjcmlwdHMuIFRoYW5rcyB0byBNaWtlIEZyeXNpbmdlci4gQ2xvc2VzOiAjNDY2OTU3CisgICogU29tZSBsaW50aWFuIGNsZWFudXA6CisgICAgLSBhZGQgb3ZlcnJpZGVzIGZvciBzb21lIHVzZWxlc3MgSTogdGFncworICAgIC0gZHJvcCB1bnVzZWQgb3ZlcnJpZGVzCisgICAgLSB1cGRhdGVkIHNldmVyYWwgbWFudWFsIHBhZ2VzIHRvIGZpeCBoeXBoZW4tdXNlZC1hcy1taW51cy1zaWduCisgICAgLSBmaXhlZCBtYW5wYWdlLWhhcy1lcnJvcnMtZnJvbS1tYW4gaW4gc2V2ZXJhbCBtYW51YWwgcGFnZXMKKyAgICAtIHJlbW92ZWQgZW1wdHkgZGViaWFuL2Rwa2cucHJlcm0KKyAgKiBSZW1vdmVkIG9sZCB1cGdyYWRlIGNvZGUgZnJvbSBkcGtnJ3MgcHJlaW5zdCBhbmQgcG9zdGluc3Qgd2hpY2ggb25seQorICAgIGNvbmNlcm5zIHVwZ3JhZGluZyBmcm9tIGRwa2cgdmVyc2lvbiBvbGRlciB0aGFuIHRoZSBvbmUgaW4gb2xkc3RhYmxlCisgICAgYWxyZWFkeS4gQW5kIHRodXMgd2UgZ2V0IHJpZCBvZiBvbGQgdGhlIGxhc3QgdXNhZ2Ugb2YgcmVhZCBpbiB0aG9zZQorICAgIHNjcmlwdHMgKGZpeGVzIGxpbnRpYW4ncyB3YXJuaW5nIHJlYWQtaW4tbWFpbnRhaW5lci1zY3JpcHQpLgorICAqIFJlbW92ZWQgc29ydGluZyBvZiBkZXBlbmRlbmNpZXMgaW4gZHBrZy1nZW5jb250cm9sIGFuZCBkcGtnLXNvdXJjZS4gQnV0CisgICAga2VwdCBpdCBmb3IgYWxsIG90aGVyIGZpZWxkcyAoRW5oYW5jZXMsIENvbmZsaWN0cywgUmVwbGFjZXMsIEJyZWFrcywKKyAgICBCdWlsZC1Db25mbGljdHMgYW5kIEJ1aWxkLUNvbmZsaWN0cy1JbmRlcCkuCisgICogSW5zdGVhZCBjaGFuZ2VkIGRwa2ctc2hsaWJkZXBzIHRvIHNvcnQgdGhlIGRlcGVuZGVuY2llcyBnZW5lcmF0ZWQgaW4KKyAgICAke3NobGliczoqfSB2YXJpYWJsZXMuCisgICogQ2hhbmdlZCB0aGUgbG9naWMgb2Ygc2ltcGxpZmljYXRpb24gb2YgZGVwZW5kZW5jaWVzOiBpZiBhbnkgZGVwZW5kZW5jeQorICAgIG11c3QgYmUgZGlzY2FyZGVkIGR1ZSB0byBhbm90aGVyIGRlcGVuZGVuY3kgYXBwZWFyaW5nIGZ1cnRoZXIKKyAgICBpbiB0aGUgZmllbGQsIHRoZSBzdXBlcnNlZGluZyBkZXBlbmRlbmN5IHdpbGwgdGFrZSB0aGUgcGxhY2Ugb2YgdGhlCisgICAgZGlzY2FyZGVkIG9uZS4gQWRkZWQgYSB0ZXN0IGNhc2UgZm9yIHRoaXMuCisgICogZHBrZy1zaGxpYmRlcHMgcHJvcGVybHkgYWNjb3VudHMgdXNhZ2Ugb2Ygc3ltYm9scyBwcm92aWRlZCBieSBwcml2YXRlCisgICAgbGlicmFyaWVzIHdpdGhvdXQgU09OQU1FLiBDbG9zZXM6ICM0Njk4MzgKKyAgKiBBZGQgYSBuZXcgd2FybmluZyB0byBkcGtnLXNobGliZGVwcyB3aGVuIGEgbGlicmFyeSBORUVERUQgaXMgaW4gZmFjdAorICAgIG5vdCB1c2VkIGJ5IGFueSBvZiB0aGUgYmluYXJpZXMgYW5hbHl6ZWQuIENsb3NlczogIzQ3MjMzMgorICAqIEFkZCBhIG5ldyAtLXdhcm5pbmdzPTx2YWx1ZT4gb3B0aW9uIHRvIHNlbGVjdCB0aGUgc2V0IG9mIHdhcm5pbmdzIHRvCisgICAgYWN0aXZhdGUuIEJ5IGRlZmF1bHQsIGRvIG5vdCBhY3RpdmF0ZSB0aGUgd2FybmluZyBhYm91dCB1c2VsZXNzCisgICAgbGlicmFyaWVzIGF0IHRoZSBiaW5hcnkgbGV2ZWwgKGluc3RlYWQgdGhlIG5ldyB3YXJuaW5nIGFib3ZlIGlzIGFjdGl2YXRlZAorICAgIGJ5IGRlZmF1bHQ6IGl0J3MgbGVzcyBzdHJpY3QgYW5kIG1vcmUgdXNlZnVsKS4KKyAgKiBkcGtnLXNvdXJjZSBoYXMgYmVlbiBoZWF2aWx5IHJlZmFjdG9yZWQgdG8gbWFrZSBpdCBlYXNpZXIgdG8gc3VwcG9ydAorICAgIG11bHRpcGxlIHNvdXJjZSBwYWNrYWdlIGZvcm1hdHMuIFNldmVyYWwgbmV3IHNvdXJjZSBwYWNrYWdlIGZvcm1hdHMgaGF2ZQorICAgIGJlZW4gYWRkZWQ6CisgICAgLSB0aGUgZm9ybWF0ICIyLjAiIGlzIHRoZSBvcmlnaW5hbCB3aWcmcGVuCisgICAgLSB0aGUgZm9ybWF0ICIzLjAgKHF1aWx0KSIgaXMgYmFzZWQgb24gMi4wLiBJdCB1c2VzIGEgdGFyYmFsbCBmb3IgdGhlCisgICAgICBkZWJpYW4gZGlyZWN0b3J5IGFuZCBjYW4gdGh1cyBpbmNsdWRlIGJpbmFyeSBmaWxlcy4gQmluYXJpZXMKKyAgICAgIG91dHNpZGUgb2YgdGhlIGRlYmlhbiBkaXJlY3RvcnkgY2FuIGJlIGFsc28gaW5jbHVkZWQgaWYgdGhleQorICAgICAgYXJlIGxpc3RlZCBpbiBkZWJpYW4vc291cmNlL2luY2x1ZGUtYmluYXJpZXMgKGFuZCBvcHRpb24KKyAgICAgIC0taW5jbHVkZS1iaW5hcmllcyB3aWxsIGdlbmVyYXRlIHRoaXMgZmlsZSBhdXRvbWF0aWNhbGx5KS4KKyAgICAgIENsb3NlczogIzQ1ODgsICM0NjI4CisgICAgLSB0aHVzIGl0IHdpbGwgYWxzbyBwcmVzZXJ2ZSB0aW1lc3RhbXBzIG9uIERlYmlhbi1wcm92aWRlZAorICAgICAgZG9jdW1lbnRhdGlvbiBsaWtlIFJFQURNRS5EZWJpYW4uIENsb3NlczogIzM2NjU1NQorICAgIC0gaXQgaGFuZGxlcyBhbiBleHBsaWNpdCBzZXJpZXMgb2YgcGF0Y2hlcyBhbmQgdGhlIHBhdGNoIGNhbiB0aHVzIGJlCisgICAgICBuYW1lZCB3aXRob3V0IGNvbnN0cmFpbnRzLiBQYXRjaGVzIGNhbiBjb250YWluIGFyYml0cmFyeQorICAgICAgaGVhZGVycy9jb21tZW50cyBiZXR3ZWVuIGZpbGUgY2h1bmtzLiBDbG9zZXM6ICMzNjMwMTgKKyAgICAtIGl0IGlnbm9yZXMgY2hhbmdlcyBvbiBhIG51bWJlciBvZiB0ZW1wb3JhcnkgYW5kIFZDUy1zcGVjaWZpYyBmaWxlcworICAgICAgYnkgZGVmYXVsdC4gQ2xvc2VzOiAjMjAzNzkyLCAjMzIzOTA5CisgICAgLSB0aGUgcGF0Y2hlcyBpbiBkZWJpYW4vcGF0Y2hlcyBjYW4gcmVtb3ZlIGZpbGVzLiBDbG9zZXM6ICMxMjU2NAorICAgIC0gdGhlIHBhdGNoZXMgYXJlIGFwcGxpZWQgYXQgdW5wYWNrIHRpbWUuIENsb3NlczogIzQ2MzA0OAorICAgIC0gdGhlIGZvcm1hdHMgIjMuMCAocXVpbHQvbmF0aXZlKSIgZG9uJ3QgaW5jbHVkZSBWQ1MgZGlyZWN0b3JpZXMgYnkKKyAgICAgIGRlZmF1bHQuIENsb3NlczogIzQzNTEyNgorICAgIC0gdGhlIGZvcm1hdCAiMy4wIChjdXN0b20pIiBjYW4gYmUgdXNlZCB0byBjcmVhdGUgYSBzb3VyY2UgcGFja2FnZQorICAgICAgY29udGFpbmluZyBhcmJpdHJhcnkgZmlsZXMuIEl0J3MgdXNlZnVsIGZvciBoZWxwZXIgdG9vbHMgdGhhdCBjYW4KKyAgICAgIGdlbmVyYXRlIHRoZSBmaWxlcyBieSB0aGVtc2VsdmVzIGluIGEgbW9yZSBlZmZpY2llbnQgd2F5CisgICAgICAobGlrZSBhbGwgdGhlICotYnVpbGRwYWNrYWdlIHRvb2xzKS4gQ2xvc2VzOiAjMjQ2OTE4CisgICAgLSB0aGUgZm9ybWF0cyAiMy4wIChnaXQvYnpyKSIgYXJlIGV4cGVyaW1lbnRhbCBmb3JtYXRzIGJhc2VkCisgICAgICBvbiBjb3JyZXNwb25kaW5nIFZDUyByZXBvc2l0b3JpZXMuIFRoYW5rcyB0byBKb2V5IEhlc3MgYW5kIENvbGluIFdhdHNvbgorICAgICAgcmVzcGVjdGl2ZWx5LgorICAqIGRwa2ctc291cmNlIGhhcyBhIG5ldyAtLW5vLWNoZWNrIG9wdGlvbi4gSXQgZGlzYWJsZXMgR1BHIGNoZWNrIGFuZAorICAgIGNoZWNrc3VtcyBjaGVja3MuIENsb3NlczogIzIyMDc1OAorICAqIGRwa2ctc2hsaWJkZXBzIGlzIG5vdyBhYmxlIHRvIGxvb2sgaW50byBkaXJlY3RvcmllcyBjb250YWluaW5nIGxpYnJhcmllcworICAgIHVzZWQgYnkgY3Jvc3MtYnVpbHQgYmluYXJpZXMgcHJvdmlkZWQgdGhhdCB0aGUgcmlnaHQgZW52aXJvbm1lbnQgdmFyaWFibGUKKyAgICBhcmUgc2V0LiBDbG9zZXM6ICM0NTMyNjcKKyAgKiBDaGFuZ2UgZGVmYXVsdCB2YWx1ZSBvZiBMREZMQUdTIChzZXQgYnkgZHBrZy1idWlsZHBhY2thZ2UpIHRvICcnCisgICAgaW5zdGVhZCBvZiAnLVdsLC1Cc3ltYm9saWMtZnVuY3Rpb25zJy4gSXQncyBzYWZlciBhdCB0aGlzIHBvaW50IG9mIHRoZQorICAgIHJlbGVhc2UgY3ljbGUuCisgICogZHBrZy1idWlsZHBhY2thZ2Ugd2lsbCBzZXQgUEtHX0NPTkZJR19MSUJESVIgKGJ1dCBub3Qgb3ZlcnJpZGUgYW4gZXhpc3RpbmcKKyAgICB2YWx1ZSkgaW4gY2FzZSBvZiBjcm9zcy1jb21waWxhdGlvbiBzbyB0aGF0IHBrZ2NvbmZpZyBmaW5kcyAucGMgZmlsZXMKKyAgICBpbiB0aGUgZGlyZWN0b3J5IHNwZWNpZmljIHRvIHRoZSB0YXJnZXQgYXJjaGl0ZWN0dXJlLiBDbG9zZXM6ICM0Mzk5NzkKKworICBbIEZyYW5rIExpY2h0ZW5oZWxkIF0KKyAgKiBBZGQgYSB3YXJuaW5nIGluIGRwa2ctYnVpbGRwYWNrYWdlIGlmIHRoZSBidWlsZC1kZXBlbmRlbmNpZXMgYXJlIG5vdAorICAgIHNhdGlzZmllZCBkdXJpbmcgLVMuIENsb3NlczogIzQ0NTU1MgorICAqIEFkZCBhIG1pc3Npbmcgc3BhY2UgaW4gdGhlIEdlcm1hbiBzY3JpcHRzIHRyYW5zbGF0aW9uLiBDbG9zZXM6ICM0NjMzOTgKKyAgKiBBZGQgaW1wcm92ZWQgZGViLXNobGlicy41IG1hbnVhbCBwYWdlIGJ5IFphY2sgV2VpbmJlcmcuIENsb3NlczogIzQ2NjEzNQorICAqIGRwa2ctYnVpbGRwYWNrYWdlIGV4cG9ydHMgc29tZSBidWlsZCByZWxhdGVkIGVudmlyb25tZW50IHZhcmlhYmxlcworICAgIG5vdy4gQmFzZWQgb24gYSBwYXRjaCBieSBNYXR0aGlhcyBLbG9zZS4gQ2xvc2VzOiAjNDY1MjgyCisgICAgKFNlZSBkcGtnLWJ1aWxkcGFja2FnZSgxKSBhbmQgaHR0cHM6Ly93aWtpLnVidW50dS5jb20vRGlzdENvbXBpbGVyRmxhZ3MKKyAgICAgZm9yIGRldGFpbHMpCisgICogQWRkIHN1cHBvcnQgZm9yIHVzZSBvZiBTSEExIGFuZCBTSEEyNTYgY2hlY2tzdW1zIGluIC5kc2MgYW5kCisgICAgLmNoYW5nZXMgZmlsZXMuIEluZm9ybWF0aW9uIHdpbGwgYmUgYXZhaWxhYmxlIGluIENoZWNrc3Vtcy1TaGF7MSwyNTZ9CisgICAgZmllbGRzLiAuY2hhbmdlcyBmb3JtYXQgdmVyc2lvbiBpbmNyZWFzZWQgdG8gMS44LgorICAqIExpbmsgZHNlbGVjdCBhZ2FpbnN0IGxpYm5jdXJzZXN3LiBDbG9zZXM6ICM0NjYzMjEKKyAgKiBGb3J3YXJkIHBvcnQgYSBwYXRjaCBmcm9tIHRoZSBvbGQgY2hhbmdlbG9nIHBhcnNlciB0byB0aGUgbmV3CisgICAgb25lIHRoYXQgZ290IGxvc3QgZHVyaW5nIHRoZSB0cmFuc2l0aW9uLiAnKycgYW5kICcuJyBjYW4gbm93CisgICAgYmUgdXNlZCBpbiBkaXN0cmlidXRpb24gbmFtZXMgeWV0IGFnYWluLiBSZXBvcnRlZCBieSBkYW5uIGZyYXppZXIuCisgICAgQ2xvc2VzOiAjNDY3NDcwCisKKyAgWyBVcGRhdGVkIGRwa2cgdHJhbnNsYXRpb25zIF0KKyAgKiBLb3JlYW4gKENoYW5nd29vIFJ5dSkuCisgICogUG9saXNoIChSb2JlcnQgTHViZXJkYSkuCisgICogUm9tYW5pYW4gKEVkZHkgUGV0cmnFn29yKS4KKyAgKiBTbG92YWsgKEl2YW4gTWFzw6FyKS4gQ2xvc2VzOiAjNDcxMzQyCisgICogU3dlZGlzaCAoUGV0ZXIgS2FybHNzb24pLgorICAqIFRoYWkgKFRoZXBwaXRhayBLYXJvb25ib29ueWFuYW4pLiBDbG9zZXM6ICM0Njg5MTYKKworICBbIFVwZGF0ZWQgbWFucGFnZXMgdHJhbnNsYXRpb25zIF0KKyAgKiBHZXJtYW4gKEhlbGdlIEtyZXV0em1hbm4pLgorICAqIFBvbGlzaCAoUm9iZXJ0IEx1YmVyZGEpLgorICAqIFN3ZWRpc2ggKFBldGVyIEthcmxzc29uKS4KKworICBbIFVwZGF0ZWQgZHNlbGVjdCB0cmFuc2xhdGlvbnMgXQorICAqIEJhc3F1ZSAoUGlhcnJlcyBCZW9iaWRlKS4gQ2xvc2VzOiAjNDYyNDAzCisKKyAgWyBVcGRhdGVkIHNjcmlwdHMgdHJhbnNsYXRpb25zIF0KKyAgKiBHZXJtYW4gKEhlbGdlIEtyZXV0em1hbm4pLgorICAqIFBvbGlzaCAoUm9iZXJ0IEx1YmVyZGEpLgorICAqIFN3ZWRpc2ggKFBldGVyIEthcmxzc29uKS4KKworICBbIFVwZGF0ZWQgZHNlbGVjdCB0cmFuc2xhdGlvbnMgXQorICAqIFBvbGlzaCAoUm9iZXJ0IEx1YmVyZGEpLgorICAqIFJvbWFuaWFuIChFZGR5IFBldHJpxZ9vcikuCisKKyAtLSBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+ICBTdW4sIDMwIE1hciAyMDA4IDEyOjQ4OjIyICswMzAwCisKK2Rwa2cgKDEuMTQuMTYuNikgdW5zdGFibGU7IHVyZ2VuY3k9bWVkaXVtCisKKyAgKiBMZXQgZHBrZy1nZW5zeW1ib2xzIHNraXAgZGlyZWN0b3JpZXMgd2hpY2ggYXJlIGp1c3Qgc3ltbGlua3Mgd2hlbiBzY2FubmluZworICAgIHRoZSBwYWNrYWdlIGJ1aWxkIGRpci4KKyAgKiBCdW1wIHVyZ2VuY3kgdG8gbWVkaXVtIHRvIGNvbXBlbnNhdGUgbG9zdCBkYXlzIGluIHRlc3RpbmcgbWlncmF0aW9uIGR1ZSB0bworICAgIHRoZSB0d28gbGFzdCB1cGxvYWRzLgorCisgLS0gUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPiAgU2F0LCAyNiBKYW4gMjAwOCAxOToyMDo0MCArMDEwMAorCitkcGtnICgxLjE0LjE2LjUpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogRml4IGRwa2ctZ2Vuc3ltYm9scyBoYW5kbGluZyBvZiAjaW5jbHVkZSBzbyB0aGF0IG9uZSBjYW4gaW5jbHVkZSBtdWx0aXBsZQorICAgIHRpbWVzIHRoZSBzYW1lIGZpbGUgYW5kIGhhdmUgaXQgcHJvcGVybHkgdGFrZW4gaW50byBhY2NvdW50LgorICAqIEFkZCBtYW55IGFybWVsLXNwZWNpZmljIHN5bWJvbHMgdG8gZHBrZy1nZW5zeW1ib2xzJyBibGFja2xpc3QuCisgICAgQ2xvc2VzOiAjNDYyMzE4CisKKyAtLSBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+ICBUaHUsIDI0IEphbiAyMDA4IDE0OjIwOjEwICswMTAwCisKK2Rwa2cgKDEuMTQuMTYuNCkgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBJbXBvcnQgY2FwaXQgaW4gRHBrZzo6Q2RhdGEgZnJvbSBEcGtnOjpGaWVsZHMuIENsb3NlczogIzQ2MjE3MgorCisgLS0gR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPiAgV2VkLCAyMyBKYW4gMjAwOCAwODo0NDozMiArMDIwMAorCitkcGtnICgxLjE0LjE2LjMpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgIFsgUmFwaGHDq2wgSGVydHpvZyBdCisgICogUmVtb3ZlIHRoZSAiOnV0ZjgiIGxheWVyIHRoYXQgdXRmOC1lbmNvZGVzIGFscmVhZHkgdmFsaWQgdXRmOC4KKyAgICBDbG9zZXM6ICM0NjIwOTgKKyAgKiBEaXNhYmxlIHZhcmlhYmxlIHN1YnN0aXR1dGlvbiBpbiBkcGtnLWdlbmNoYW5nZXMuIENsb3NlczogIzQ2MjA3OSwgIzQ2MjA4OQorCisgIFsgR3VpbGxlbSBKb3ZlciBdCisgICogTWFrZSBzdGFydC1zdG9wLWRhZW1vbiBzZXQgdGhlIHN1cHBsZW1lbnRhcnkgZ3JvdXBzIGlmIHRoZSByZWFsIHVzZXIgb3IKKyAgICBncm91cCBhcmUgZGlmZmVyZW50IHRoYW4gdGhlIG9uZXMgd2Ugc2hvdWxkIHN3aXRjaCB0by4gQ2xvc2VzOiAjNDYyMDc1CisgICogRml4IHNlZ2ZhdWx0IGluIHN0YXJ0LXN0b3AtZGFlbW9uIHdoZW4gdXNpbmcgLS1ncm91cCB3L28gLS1jaHVpZCAoYXMKKyAgICBhIHNpZGUgZWZmZWN0LCB1c2luZyAtLWdyb3VwIGFsb25lIHdvcmtzIGZvciB0aGUgZmlyc3QgdGltZSBpbiB5ZWFycykuCisgICAgQ2xvc2VzOiAjNDYyMDcyCisgICogRml4IHRpbWVvdXQgY29tcHV0YXRpb25zIGZvciBzdGFydC1zdG9wLWRhZW1vbiAtLXJldHJ5IG9wdGlvbi4gVGhpcyBoYXMKKyAgICBub3Qgd29ya2VkIHByb3Blcmx5IGZvciBhIGxvbmcgdGltZSAobWF5YmUgbmV2ZXIpLCBidXQgY2FtZSB0byBsaWdodAorICAgIGR1ZSB0byAjNDYwOTAzJ3MgZml4LiBDbG9zZXM6ICM0NjIxMDQKKworIC0tIEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4gIFR1ZSwgMjIgSmFuIDIwMDggMjM6Mzk6NTkgKzAyMDAKKworZHBrZyAoMS4xNC4xNi4yKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIENoYW5nZSB1aWQgYWZ0ZXIgY2hhbmdpbmcgZ2lkIGFuZCBpbml0aWFsaXppbmcgc3VwcGxlbWVudGFyeSBncm91cHMgaW4KKyAgICBzdGFydC1zdG9wLWRhZW1vbi4gQ2xvc2VzOiAjNDYyMDE4CisgICogQ2hhbmdlIHRlbXBvcmFyeSBkcGtnIEJyZWFrcyBvbiBkcGtnLWRldiAoPSAxLjE0LjEzKSBhbmQgKD0gMS4xNC4xNCkKKyAgICB0byBDb25mbGljdHMsIHNvIHRoYXQgdXNlcnMgZnJvbSBldGNoIGNhbiB1cGdyYWRlIHRvIHNpZCAob3IgbGVubnkKKyAgICBvbmNlIGRwa2cgaGFzIG1pZ3JhdGVkKS4KKworIC0tIEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4gIFR1ZSwgMjIgSmFuIDIwMDggMTM6MDU6MjIgKzAyMDAKKworZHBrZyAoMS4xNC4xNi4xKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIEFkZCBsaWJ0aW1lZGF0ZS1wZXJsIHRvIGRwa2ctZGV2J3MgRGVwZW5kcyBhbmQgdG8gQnVpbGQtRGVwZW5kcy4KKyAgICBSZXBvcnRlZCBieSBBdXJlbGllbiBKYXJuby4gQ2xvc2VzOiAjNDYxODc1CisKKyAtLSBGcmFuayBMaWNodGVuaGVsZCA8ZGpwaWdAZGViaWFuLm9yZz4gIE1vbiwgMjEgSmFuIDIwMDggMTI6NDg6NTEgKzAxMDAKKworZHBrZyAoMS4xNC4xNikgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgWyBHdWlsbGVtIEpvdmVyIF0KKyAgKiBBZGQgYnVpbGQtZXNzZW50aWFsIGFzIGFuIGltcGxpY2l0IEJ1aWxkLURlcGVuZHMgaW4gZHBrZy1jaGVja2J1aWxkZGVwcy4KKyAgICBDbG9zZXM6ICM0MDI5MDEKKyAgKiBBZGQgYnVpbGQtZXNzZW50aWFsIHRvIGRwa2ctZGV2IFJlY29tbWVuZHMuCisgICogRG8gbm90IHdhcm4gYWJvdXQgdW5yZWNvZ25pemVkIEhvbWVwYWdlIGZpZWxkIGluIGJpbmFyeSBwYWNrYWdlIHN0YW56YXMKKyAgICBpbiBkcGtnLWdlbmNoYW5nZXMgYW5kIGRwa2ctc291cmNlLiBDbG9zZXM6ICM0NjAzMDkKKyAgKiBEbyBub3QgdXNlIHRoZSBlbm9lbnQgaGVscGVyIGJpbmFyeSwgYW5kIHVzZSBwZXJsIFBPU0lYIG1vZHVsZSBpbnN0ZWFkLgorICAqIEtlZXAgY2hlY2tpbmcgZm9yIHRoZSBwcm9jZXNzIHdoZW4gc3RhcnQtc3RvcC1kYWVtb24gaXMgY2FsbGVkIHdpdGgKKyAgICAtLXJldHJ5IGV2ZW4gaWYgdGhlIGRhZW1vbiByZW1vdmVkIHRoZSBwaWRmaWxlLiBDbG9zZXM6ICM0NjA5MDMKKyAgICBUaGFua3MgdG8gSnVzdGluIFByeXpieSBmb3IgdGhlIGFuYWx5c2lzLgorICAqIE1ha2UgLS1xdWlldCBzaWxlbmNlIC0tdGVzdCBpbiBzdGFydC1zdG9wLWRhZW1vbi4gQ2xvc2VzOiAjMzY3OTk4CisgICogQ2hlY2sgY3VycmVudCB1aWQgYW5kIGdpZCBpbiBzdGFydC1zdG9wLWRhZW1vbiBiZWZvcmUgY2FsbGluZyBzZXR1aWQsCisgICAgc2V0Z2lkIGFuZCBpbml0Z3JvdXBzLiBDbG9zZXM6ICMyMjI1MjQKKyAgICBCYXNlZCBvbiBhIHBhdGNoIGJ5IFNhbXVlbCBUaGliYXVsdC4KKyAgKiBSZW1vdmUgdW5pbXBsZW1lbnRlZCAtLXRlc3Qgb3B0aW9uIGZyb20gdXBkYXRlLWFsdGVybmF0aXZlcy4KKyAgICBDbG9zZXM6ICMzOTI0MzIsICM0NjEyNDcKKyAgKiBBZGRpdGlvbmFsbHkgY2hlY2sgaWYgZXJybm8gaXMgRUVYSVNUIGFmdGVyIHJtZGlyKDIpLCBhcyBTVVN2MyBzcGVjaWZpZXMKKyAgICB0aGF0IG9uIG5vbi1lbXB0eSBkaXJlY3RvcmllcyBpdCBjYW4gZWl0aGVyIHJldHVybiB0aGF0IG9yIEVOT1RFTVBUWS4KKyAgICBUaGlzIGZpeGVzIHJ1biB0aW1lIHByb2JsZW1zIG9uIFNvbGFyaXMuCisgICogRml4IHN0YXJ0LXN0b3AtZGFlbW9uIC0taGVscCBvdXRwdXQgdG8gc3RhdGUgdGhhdCAtLW5hbWUgaXMgb25lIG9mIHRoZQorICAgIHBvc3NpYmxlIHJlcXVpcmVkIG9wdGlvbnMgdG8gdXNlLiBDbG9zZXM6ICMzNTQ5OTkKKyAgKiBEZW1vdGUgZHNlbGVjdCBmcm9tIHByaW9yaXR5IGltcG9ydGFudCB0byBvcHRpb25hbC4gQ2xvc2VzOiAjNDYxMzI3CisgICogRml4IHBvcnRhYmlsaXR5IGlzc3VlcyBvbiBIUC1VWCwgYnkgbm90IHVzaW5nIGJhY2t0aWNrcyBpbnNpZGUgZG91YmxlCisgICAgcXVvdGVzIGluIG00IGZpbGVzLiBDbG9zZXM6ICMyNDUxNAorICAqIFN3aXRjaCBNYWludGFpbmVyIGFkZHJlc3MgdG8gPGRlYmlhbi1kcGtnQGxpc3RzLmRlYmlhbi5vcmc+IGZyb20KKyAgICA8dGVhbUBkcGtnLm9yZz4uCisgICogQWRkIFJFQURNRS5mZWF0dXJlLXJlbW92YWwtc2NoZWR1bGUgZGVzY3JpYmluZyB0aGUgZmVhdHVyZXMgdG8gYmUgcmVtb3ZlZAorICAgIGFuZCBSRUFETUUuYXBpIGRlc2NyaWJpbmcgdGhlIHByb3ZpZGVkIEFQSXMuCisKKyAgWyBGcmFuayBMaWNodGVuaGVsZCBdCisgICogTWFrZSB0aGUgLUwgb3B0aW9uIG9mIGRwa2ctcGFyc2VjaGFuZ2Vsb2cgYWN0dWFsbHkgd29yayAoaXQncworICAgIG9ubHkgYmVlbiBlbGV2ZW4geWVhcnMuLi4pCisgICogSW1wb3J0IHRoZSBjb2RlIGZyb20gbXkgZXh0ZXJuYWwgUGFyc2U6OkRlYmlhbkNoYW5nZWxvZyBhcworICAgIERwa2c6OkNoYW5nZWxvZyBhbmQgRHBrZzo6Q2hhbmdlbG9nOjpEZWJpYW4uIFVzaW5nIHRoaXMKKyAgICBmcm9tIHBhcnNlY2hhbmdlbG9nL2RlYmlhbiBhZGRzIHRoZSBmb2xsb3dpbmcgcmVxdWVzdGVkCisgICAgZmVhdHVyZXM6CisgICAgIC0gT3B0aW9uIHRvIHVzZSBhIG5vbi1sb3NzeSBmb3JtYXQuIENsb3NlczogIzk1NTc5CisgICAgIC0gVmFyaW91cyBvcHRpb25zIHRvIGJldHRlciBjb250cm9sIGhvdyBtYW55IGVudHJpZXMKKyAgICAgICBzaG91bGQgYmUgZGlzcGxheWVkLiBDbG9zZXM6ICMyMjY5MzIKKworICBbIFJhcGhhw6tsIEhlcnR6b2cgXQorICAqIFJlcGxhY2VkIGFsbCB0aGUgcmVtYWluaW5nIGNvZGUgaW4gY29udHJvbGxpYi5wbCBieSBuZXcgbW9kdWxlcy4gQWxsCisgICAgc2NyaXB0cyBoYXZlIGJlZW4gYWRqdXN0ZWQgdG8gdXNlIHRoZSBuZXcgbW9kdWxlcyBhbmQgY29udHJvbGxpYi5wbCBoYXMKKyAgICBiZWVuIHJlbW92ZWQuCisgICogVGhlIGNvZGUgdG8gcGFyc2UgZGViaWFuL2NvbnRyb2wgaXMgYXZhaWxhYmxlIGluIGEgcGVybCBtb2R1bGUKKyAgICBEcGtnOjpDb250cm9sLiBDbG9zZXM6ICMyNjU1NAorICAqIFRlbXBvcmFyaWx5IGFkZCBhIEJyZWFrczogZHBrZy1kZXYgKD0gMS4xNC4xMyksIGRwa2ctZGV2ICg9IDEuMTQuMTQpIG9uCisgICAgZHBrZyBmb3IgdGhlIGNvbnZlbmllbmNlIG9mIHNpZCB1c2Vycy4gQ2xvc2VzOiAjNDU5ODE1CisgICogVXBkYXRlIGRwa2ctc291cmNlKDEpIHRvIGV4cGxhaW4gYmV0dGVyIHdoYXQgdGhlIGRpcmVjdG9yeSBhZnRlciAtYiBpcy4KKyAgICBDbG9zZXM6ICMzMjM2MDYKKyAgKiBBbHNvIGZvcmNlIHZlcnNpb24gaW4gJHtiaW5hcnk6VmVyc2lvbn0gaWYgZHBrZy1nZW5jb250cm9sIC12PHZlcnNpb24+CisgICAgaXMgdXNlZC4gVGhhdCB3YXkgd2UncmUgY29uc2lzdGVudCB3aXRoIHRoZSBkZWZpbml0aW9uIG9mIHRoYXQgdmFyaWFibGUKKyAgICBpbiBkZWItc3Vic3R2YXJzKDUpLiBDbG9zZXM6ICM0MzM0NzcKKyAgKiBBZGQgc3VwcG9ydCBvZiBEbS1VcGxvYWQtQWxsb3dlZCBmaWVsZC4gQ2xvc2VzOiAjNDUzNDAwCisgICogRml4IGRwa2ctc2hsaWJkZXBzJyBmaWx0ZXJpbmcgb2YgZHVwbGljYXRlZCBkZXBlbmRlbmNpZXMgaW4gZmllbGRzIG9mCisgICAgbGVzc2VyIHByaW9yaXR5ICh3aGVuIC1kIGlzIHVzZWQpLgorICAqIEZpeCBiZWhhdmlvdXIgb2YgZHBrZy1zaGxpYmRlcHMgd2hlbiB0aGUgc2FtZSBiaW5hcnkgd2FzIHBhc3NlZCBtdWx0aXBsZQorICAgIHRpbWVzIGZvciB1c2UgaW4gZGlmZmVyZW50IGRlcGVuZGVuY3kgZmllbGRzICgtZCBvcHRpb24pLgorICAqIENoYW5nZSBsb2dpYyBvZiAtc2kgb3B0aW9uIG9mIGRwa2ctZ2VuY2hhbmdlcyB0byBpbmNsdWRlIHRoZSBvcmlnaW5hbAorICAgIHRhcmJhbGwgb25seSBpZiB0aGUgY3VycmVudCB1cHN0cmVhbSB2ZXJzaW9uIGRpZmZlcnMgZnJvbSB0aGUgdXBzdHJlYW0KKyAgICB2ZXJzaW9uIG9mIHRoZSBwcmV2aW91cyBjaGFuZ2Vsb2cgZW50cnkuIFJlcGxhY2VzIHRoZSBoZXVyaXN0aWMgYmFzZWQKKyAgICBvbiByZXZpc2lvbiBudW1iZXIgKC0wLCAtMC4xIG9yIC0xKS4gQ2xvc2VzOiAjMjg3MDEKKyAgKiBTb21lIGNvZGUgcmVmYWN0b3Jpbmcgb24gZHBrZy1nZW5jaGFuZ2VzIGFuZCBidWcgZml4ZXMgaW4gdGhlIGdlbmVyYXRpb24KKyAgICBvZiB0aGUgRGVzY3JpcHRpb246IGZpZWxkLiBBcyBhIHJlc3VsdCwgc291cmNlIG9ubHkgdXBsb2FkcyB3aWxsIG5vIG1vcmUKKyAgICBoYXZlIERlc2NyaXB0aW9uIGZpZWxkcy4KKyAgKiBBZGQgc3VwcG9ydCBvZiB3aWxkY2FyZCBlbnRyaWVzIGluIHN5bWJvbHMgZmlsZXMuIFRoaXMgbWFrZXMgaXQgbXVjaAorICAgIHNpbXBsZXIgdG8gd3JpdGUgc3ltYm9scyBmaWxlcyBmb3Igd2VsbCBtYW5hZ2VkIGxpYnJhcmllcyBidXQgaW4gdGhhdCBjYXNlCisgICAgZHBrZy1nZW5zeW1ib2xzIGNhbid0IGNoZWNrIGFueSBtb3JlIGlmIHN5bWJvbHMgaGF2ZSBkaXNhcHBlYXJlZC4KKyAgICBDbG9zZXM6ICM0NTkzNTkKKworICBbIFVwZGF0ZWQgbWFucGFnZXMgdHJhbnNsYXRpb25zIF0KKyAgKiBGaXggdHlwbyBpbiBGcmVuY2guIENsb3NlczogIzQ2MDAyMQorICAqIEdlcm1hbiAoSGVsZ2UgS3JldXR6bWFubikuCisKKyAgWyBVcGRhdGVkIGRwa2cgdHJhbnNsYXRpb25zIF0KKyAgKiBCYXNxdWUgKFBpYXJyZXMgQmVvYmlkZSkuIENsb3NlczogIzQ1OTU2NQorICAqIEZyZW5jaCAoQ2hyaXN0aWFuIFBlcnJpZXIpLgorICAqIEdlcm1hbiwgQmFzcXVlLCBOb3J3ZWdpYW4gQm9rbcOlbCwgU3dlZGlzaCwgVmlldG5hbWVzZSwgU2ltcGxpZmllZCBDaGluZXNlLAorICAgIEdhbGljaWFuIHVuZnV6emllZC4KKyAgKiBSdXNzaWFuIChZdXJpIEtvemxvdikuIENsb3NlczogIzQ2MDcwOAorCisgIFsgVXBkYXRlZCBzY3JpcHRzIHRyYW5zbGF0aW9ucyBdCisgICogUnVzc2lhbiAoWXVyaSBLb3psb3YpLiBDbG9zZXM6ICM0NjA3MDkKKyAgKiBTd2VkaXNoIChQZXRlciBLYXJsc3NvbikuCisKKyAtLSBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+ICBNb24sIDIxIEphbiAyMDA4IDEwOjAwOjQ1ICswMjAwCisKK2Rwa2cgKDEuMTQuMTUpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgIFsgUmFwaGHDq2wgSGVydHpvZyBdCisgICogTWFrZSBzdXJlIHtkcGtnLWRldixkc2VsZWN0fS5wcmVpbnN0IGFyZSBpbmNsdWRlZCBpbiB0aGUgc291cmNlIHRhcmJhbGwuCisgICAgQ2xvc2VzOiAjNDUyNzMwCisgICogQmxhY2tsaXN0IGFybWVsLXNwZWNpZmljIHN5bWJvbHMgaW4gZHBrZy1nZW5zeW1ib2xzLiBSZXBvcnRlZCBieSBSaWt1CisgICAgVm9pcGlvLiBDbG9zZXM6ICM0NTc5NjQKKyAgKiBGaXggdHlwb3MgaW4gdmFyaW91cyBtYW5wYWdlcy4gUGF0Y2ggZnJvbSBBLiBDb3N0YS4gQ2xvc2VzOiAjNDU4Mjc2CisgICogTWFrZSBkcGtnLXNobGliZGVwcyBjaG9vc2UgdGhlIHJpZ2h0IHN5bWJvbHMgZmlsZXMgd2hlbiB3ZSBoYXZlIHNldmVyYWwKKyAgICBkZWJpYW4vKi9ERUJJQU4vc3ltYm9scyBmb3IgYSBnaXZlbiBzb25hbWUuIENsb3NlczogIzQ1ODg2MAorICAqIEFkZCBhIC1TPHBrZ2J1aWxkZGlyPiBvcHRpb24gdG8gZHBrZy1zaGxpYmRlcHMgdG8gaW5kaWNhdGUgYSBwYWNrYWdlIGJ1aWxkCisgICAgdHJlZSB0byBzY2FuIGZpcnN0IHdoZW4gdHJ5aW5nIHRvIGZpbmQgYSBuZWVkZWQgbGlicmFyeS4KKyAgKiBDaGFuZ2UgZHBrZy1nZW5zeW1ib2xzIHRvIG1hcmsgc3ltYm9scyB0aGF0IGRpc2FwcGVhcmVkIHdpdGggI01JU1NJTkcKKyAgICBpbnN0ZWFkIG9mICNERVBSRUNBVEVELCBpdCdzIGNsZWFyZXIgZm9yIHBlb3BsZS4KKyAgKiBGaXggRHBrZzo6U2hsaWJzOjpPYmpkdW1wIHRvIHByb3Blcmx5IHRha2UgaW50byBhY2NvdW50IFJfKl9DT1BZCisgICAgcmVsb2NhdGlvbnMuIENsb3NlczogIzQ1NDAzNgorICAqIEV4cGxhaW4gYmV0dGVyIHRoZSBvcmRlciBpbiB3aGljaCBwb3N0aW5zdC9wcmVybSBzY3JpcHRzIGFyZSBjYWxsZWQKKyAgICBiZXR3ZWVuIGEgcGFja2FnZSBhbmQgaXRzIGRlcGVuZGVuY2llcy4gVGhhbmtzIHRvIE5pY29sYXMgRnJhbsOnb2lzIGFuZAorICAgIEhlbGdlIEtyZXV0em1hbm4gZm9yIHRoZWlyIHN1Z2dlc3Rpb25zLiBDbG9zZXM6ICMzNzk2NDEKKyAgKiBGaXggRHBrZzo6QnVpbGRPcHRpb25zIHNvIHRoYXQgZHBrZy1idWlsZHBhY2thZ2UgZG9lc24ndCBkb3VibGUgYWxsCisgICAgb3B0aW9ucyBpbiBERUJfQlVJTERfT1BUSU9OUyB3aGVuIGNhbGxlZCB3aXRoIHRoZSAtaiBwYXJhbWV0ZXIuCisgICAgQ2xvc2VzOiAjNDUzNjU2CisKKyAgWyBHdWlsbGVtIEpvdmVyIF0KKyAgKiBNb3ZlIGNvbXByZXNzaW9uIHJlbGF0ZWQgdmFyaWFibGVzIHRvIGEgbmV3IERwa2c6OkNvbXByZXNzaW9uIG1vZHVsZS4KKyAgKiBSZW1vdmUgZGlzYWJsZWQsIG9ic29sZXRlIGFuZCBxdWl0ZSBpbmNvbXBsZXRlIEhlYnJldyB0cmFuc2xhdGlvbnMuCisgICogUmV2ZXJ0IGRwa2ctZGV2IHZlcnNpb25lZCBkZXBlbmRlbmN5IGJ1bXAgb24gZHBrZyA+PSAxLjE0LjEzIGJhY2sgdG8KKyAgICA+PSAxLjE0LjYsIGFzIHRoZSBjb21wcmVzc2lvbiB2YXJpYWJsZXMgYXJlIG5vdyBpbiBhIG1vZHVsZSBpbiBkcGtnLWRldi4KKyAgKiBEbyBub3QgZGlzcGxheSBnYXJiYWdlIGluIGRzZWxlY3Qgb24gbW9ub2Nocm9tZSB0ZXJtaW5hbHMsIGJ5IHNldHRpbmcKKyAgICBhIG1pc3NpbmcgbmN1cnNlcyBjaGFyYWN0ZXIgYXR0cmlidXRlLiBDbG9zZXM6ICMxNTU3NDEsICMxNTcwOTMKKyAgICBUaGFua3MgdG8gU3ZlbiBSdWRvbHBoLgorICAqIERvIG5vdCBsb29wIGVuZGxlc3NseSBpbiBkc2VsZWN0IHdpdGggdmVyeSBsb25nIHBhY2thZ2UgZGVzY3JpcHRpb25zLgorICAgIENsb3NlczogIzE3OTMyMCwgIzM0MjQ5NQorICAgIFRoYW5rcyB0byBKb2huIFphaXRzZWZmLgorICAqIElnbm9yZSB3cmFwcGVkIGxpbmVzIGluIGluc3RhbGwtaW5mbyB3aGVuIG1hdGNoaW5nIHNlY3Rpb24gdGl0bGVzLgorICAgIENsb3NlczogIzIxNDY4NAorICAgIFRoYW5rcyB0byBBbmRyZWFzIE1ldHpsZXIgYW5kIElhbiBaaW1tZXJtYW4uCisgICogRG8gbm90IHVzZSBzdHJkdXAgZm9yIGV4ZWN2cCBhcmd1bWVudHMuIENsb3NlczogIzM3OTAyNworICAqIERvIG5vdCBwcmludCAnZmFpbGVkIHRvIGtpbGwnIHdhcm5pbmcgaW4gc3RhcnQtc3RvcC1kYWVtb24gd2hlbiBwb2xsaW5nCisgICAgdGhlIHBpZC4gQ2xvc2VzOiAjMTU3MzA1LCAjMzUyNTU0CisgICAgVGhhbmtzIHRvIFNhbXVlbCBUaGliYXVsdC4KKyAgKiBQcm9wZXJseSBwcmludCBidWlsZCBtZXNzYWdlIGluIGRwa2ctYnVpbGRwYWNrYWdlIGZvciBsem1hIGFuZCBiemlwMgorICAgIGNvbXByZXNzZWQgc291cmNlcy4gQ2xvc2VzOiAjNDU4NTE5CisgICogUHJvbW90ZSBiemlwMiBSZWNvbW1lbmRzIHRvIERlcGVuZHMgZm9yIGRwa2ctZGV2LiBDbG9zZXM6ICM0NTg1MjEKKyAgKiBBZGQgbHptYSB0byBkcGtnLWRldiBEZXBlbmRzLgorICAqIERvIG5vdCBhdXRvbWF0aWNhbGx5IGVuYWJsZSAtaiBpZiBERUJfQlVJTERfT1BUSU9OUyBjb250YWlucyBwYXJhbGxlbD1uLAorICAgIGFuZCBhbGxvdyBvdmVycmlkaW5nIGl0cyB2YWx1ZSBmcm9tIHRoZSBlbnZpcm9ubWVudC4gQ2xvc2VzOiAjNDU4NTg5CisgICogRml4IERwa2c6OkJ1aWxkT3B0aW9ucyB0byBwYXJzZSBhbGwgb3B0aW9ucyBpbiBERUJfQlVJTERfT1BUSU9OUywgc28KKyAgICB0aGF0IGRwa2ctYnVpbGRwYWNrYWdlIGNhbGxlZCB3aXRoIC1qIHByZXNlcnZlcyB1bnJlY29nbml6ZWQgb3B0aW9ucy4KKyAgKiBGaXggc2V2ZXJhbCBzaWduZWQgdnMgdW5zaWduZWQgdmFsdWUgY29tcGFyaXNvbnMgdGhhdCB3ZXJlIG1ha2luZyBzb21lCisgICAgY29kZSB0byBuZXZlciBiZSBleGVjdXRlZC4KKworICBbIFVwZGF0ZWQgZHBrZyB0cmFuc2xhdGlvbnMgXQorICAqIEZyZW5jaCAoQ2hyaXN0aWFuIFBlcnJpZXIpLgorICAqIEdlcm1hbiAoU3ZlbiBKb2FjaGltKS4gQ2xvc2VzOiAjNDU5MjIzCisgICogTm9yd2VnaWFuIEJva23DpWwgKEhhbnMgRnJlZHJpayBOb3JkaGF1ZykuIENsb3NlczogIzQ1NzkxOCwgIzQ1ODczMgorICAqIFNpbXBsaWZpZWQgQ2hpbmVzZSAoRGVuZyBYaXl1ZSkuIENsb3NlczogIzQ1OTAxOAorICAqIFN3ZWRpc2ggKFBldGVyIEthcmxzc29uKS4KKyAgKiBWaWV0bmFtZXNlIChDbHl0aWUgU2lkZGFsbCkuIENsb3NlczogIzQ1OTAxNgorCisgIFsgVXBkYXRlZCBzY3JpcHRzIHRyYW5zbGF0aW9ucyBdCisgICogRnJlbmNoIChDaHJpc3RpYW4gUGVycmllcikuCisgICogU3dlZGlzaCAoUGV0ZXIgS2FybHNzb24pLgorCisgIFsgVXBkYXRlZCBtYW4gcGFnZXMgdHJhbnNsYXRpb25zIF0KKyAgKiBTd2VkaXNoIChQZXRlciBLYXJsc3NvbikuCisKKyAtLSBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+ICBNb24sIDA3IEphbiAyMDA4IDEyOjEyOjE2ICswMjAwCisKK2Rwa2cgKDEuMTQuMTQpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogRml4IG92ZXJyaWRlIGRpc3Bhcml0eTogc2V0IHByaW9yaXR5IG9mIGRzZWxlY3QgdG8gaW1wb3J0YW50LgorICAqIEFkZCBsaWJpby1zdHJpbmctcGVybCB0byBCdWlsZC1EZXBlbmRzIGFzIGl0J3MgbmVlZGVkIGJ5IGEgbm9uLXJlZ3Jlc3Npb24KKyAgICB0ZXN0IChmaXggRlRCRlMsIHRodXMgYSBxdWljayB1cGxvYWQpLgorICAqIE1ha2UgZHBrZy1kZXYgZGVwZW5kIG9uIGRwa2cgKD49IDEuMTQuMTMpIGFzIHRoZSBsYXRlc3QgRHBrZy5wbSBpcyBuZWVkZWQKKyAgICBmb3IgZHBrZy1zb3VyY2UuCisKKyAtLSBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+ICBUaHUsIDI3IERlYyAyMDA3IDExOjIwOjM4ICswMTAwCisKK2Rwa2cgKDEuMTQuMTMpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgIFsgRnJhbmsgTGljaHRlbmhlbGQgXQorICAqIEFkZCBhbiBvd24gbWFucGFnZSBmb3IgRHBrZydzIHZlcnNpb24gZm9ybWF0LiBNb3N0bHkgc3RvbGVuCisgICAgZnJvbSBwb2xpY3kuIENsb3NlczogIzM3MzAwMworICAqIEZpeCBjb250cm9sIGZpbGUgcGFyc2luZyBmb3IgZmllbGQgdmFsdWVzIHN0YXJ0aW5nIHdpdGggYSBjb2xvbi4KKyAgICBBcHBhcmVudGx5IG5vYm9keSBldmVyIG5lZWRlZCB0aGlzIHVudGlsIFZjcy1DdnMgY2FtZSBhbG9uZy4KKyAgICBDbG9zZXM6ICM0NTMzNjQKKyAgKiBDb3B5IHRoZSB1c3Ivc2hhcmUvZG9jIGRpcmVjdG9yeSB0byBkcGtnLWRldiBhbmQgZHNlbGVjdCAoSW5zdGVhZAorICAgIG9mIHVzaW5nIHN5bWxpbmtzKS4gVGhlIHNwYWNlIHJlcXVpcmVtZW50cyBhcmUgbWluaW1hbCBhbmQgYWRkaW5nCisgICAgdGhlIG5lZWRlZCBkZXBlbmRlbmNpZXMgdG8gY29tcGx5IHdpdGggcG9saWN5IHdvdWxkIGJlIHdheSBtb3JlCisgICAgaW5jb252ZW5pZW50LiBQb2ludGVkIG91dCBieSBSZW5lIEVuZ2VsaGFyZC4gQ2xvc2VzOiAjNDUyNzMwCisgICogQWxsb3cgbW9yZSB0aGFuIG9uZSBhcmNoIGFuZCBtb3JlIHRoYW4gb25lIHR5cGUgb2YgYSBwYWNrYWdlCisgICAgaW4gZGViaWFuL2ZpbGVzLiBQYXJ0cyBvZiB0aGUgcGF0Y2ggYnkgR29zd2luIHZvbiBCcmVkZXJsb3cKKyAgICBhbmQgQmFzdGlhbiBCbGFuay4gQ2xvc2VzOiAjMzU2Mjk5LCAjMzc3NDAwLCAjMjI5MTQzCisgICogQWxsb3cgYnVpbGRpbmcgb25seSBhcmNoaXRlY3R1cmUgaW5kZXBlbmRlbnQgcGFja2FnZXMgKC1BKS4KKyAgICBDbG9zZXM6ICMxMDk3OTQsICMyMDA0NTQKKyAgKiBCdW1wIFN0YW5kYXJkcy1WZXJzaW9uIHRvIDMuNy4zIChubyBjaGFuZ2VzKQorCisgIFsgUmFwaGHDq2wgSGVydHpvZyBdCisgICogV2hlbiBkcGtnLXNobGliZGVwcyBmaW5kcyBhIGxpYiBpbiBhIGRpcmVjdG9yeSB3aGljaCBpcyBqdXN0IGEgc3ltbGluayB0bworICAgIGFub3RoZXIgZGlyZWN0b3J5IHRoYXQgaXMgYWxzbyBjb25zaWRlcmVkLCByZW1lbWJlciB0aGUgb3RoZXIgZGlyZWN0b3J5CisgICAgbmFtZSBhcyB0aGUgY2Fub25pY2FsIG9uZS4gQ2xvc2VzOiAjNDUzODg1CisgICogZHBrZy1zaGxpYmRlcHMgZG9lc24ndCB3YXJuIGFueSBtb3JlIGFib3V0IGxpYm0uc28uNiBiZWluZyB1bnVzZWQgaWYgdGhlCisgICAgYmluYXJ5IGlzIGFsc28gbGlua2VkIGFnYWluc3QgbGlic3RkYysrIHNpbmNlIGcrKyBhbHdheXMgYWRkIGFuIGltcGxpY2l0CisgICAgLWxtLiBDbG9zZXM6ICM0NTQ2MTYKKyAgKiBJbmNsdWRlZCBmaWxlcyBpbiBzeW1ib2xzIGZpbGVzICh2aWEgI2luY2x1ZGUpIGRvIG5vIG1vcmUgbmVlZCB0byByZXBlYXQKKyAgICB0aGUgaGVhZGVyIGxpbmUuIENsb3NlczogIzQ1NTI2MAorICAqIFR3ZWFrIHRoZSBzb3J0IGFsZ29yaXRobSBiZXR3ZWVuIGRlcGVuZGVuY2llcyBzbyB0aGF0IGludGVydmFscworICAgIGFyZSBkaXNwbGF5ZWQgYXMgImEgKD49IDEpLCBhICg8PCAyKSIgaW5zdGVhZCBvZiB0aGUgb3Bwb3NpdGUuCisgICAgQ2xvc2VzOiAjNDU1NTIwCisgICogRXh0ZW5kIGZvcm1hdCBvZiBzeW1ib2xzIGZpbGVzIHRvIHN1cHBvcnQgYXJiaXRyYXJ5IGZpZWxkcyBvZgorICAgIG1ldGEtaW5mb3JtYXRpb24uIEZpcnN0IGZpZWxkIGlzIEJ1aWxkLURlcGVuZHMtUGFja2FnZSB1c2VkIHRvIGV4dHJhY3QgdGhlCisgICAgdmVyc2lvbiByZXF1aXJlbWVudCBwb3NzaWJseSBlbmNvZGVkIGluIHRoZSBCdWlsZC1EZXBlbmRzIGZpZWxkIGFuZCBtYWtlCisgICAgc3VyZSB0aGF0IHRoZSBnZW5lcmF0ZWQgZGVwZW5kZW5jeSBpcyBhdCBsZWFzdCBhcyBzdHJpY3QgYXMgdGhpcyBvbmUuCisgICogRml4IGRwa2ctZ2Vuc3ltYm9scyB0byBub3QgdXBkYXRlIHZlcnNpb24gaW5mbyBvZiBhIGRlcHJlY2F0ZWQgc3ltYm9sLgorICAgIENsb3NlczogIzQ1NzczOQorICAqIEZpeCBkcGtnLXNvdXJjZSdzIGJlaGF2aW91ciB3aXRoIG9wdGlvbnMgLXNrIC1zSyAtc3AgLXNQLiBDbG9zZXM6ICM0NTc3ODQKKworICBbIEd1aWxsZW0gSm92ZXIgXQorICAqIElnbm9yZSB0aGUgbWFuIHBhZ2VzIHdoZW4gYnVpbGRpbmcgd2l0aG91dCBOTFMgc3VwcG9ydC4gQ2xvc2VzOiAjNDU3NjczCisgICogRml4IHBlcmwgd2FybmluZ3M6CisgICAgLSBDaGVjayBmb3IgdW5kZWZpbmVkIHZhbHVlcyB3aGVuIHJlYWRpbmcgZnJvbSB0aGUgYWx0ZXJuYXRpdmUgZGIuCisgICogUHJvcGVybHkgaGFuZGxlIHN5bWxpbmtzIGZvciBhbHRlcm5hdGl2ZXMgd2l0aCBub25leGlzdGVudCBzbGF2ZSBsaW5rcy4KKyAgICBDbG9zZXM6ICM3NjI5NSwgIzI0NjkwNiwgIzQzMzU2NywgIzQ1MTg3MiwgIzIyMDA0NCwgIzM5MjQ0MCwgIzQ0MTAyMQorICAgIENsb3NlczogIzQ0MzI0MQorICAgIEJhc2VkIG9uIGEgcGF0Y2ggYnkgRGFuaWVsIExlaWRlcnQgPGRhbmllbC5sZWlkZXJ0QHdnZGQuZGU+LgorICAqIEZhaWwgd2hlbiBkaXZlcnRpbmcgdG8gYSBub24gZXhpc3RlbnQgZGlyZWN0b3J5LiBDbG9zZXM6ICMyNDU1NjIKKyAgICBUaGFua3MgdG8gRmxhdmlvIFN0YW5jaGluYSA8ZmxhdmlvQHN0YW5jaGluYS5uZXQ+LgorICAqIFJlZmFjdG9yIHVwZGF0ZS1hbHRlcm5hdGl2ZXMuCisKKyAgWyBVcGRhdGVkIGRwa2cgdHJhbnNsYXRpb25zIF0KKyAgKiBGcmVuY2ggKENocmlzdGlhbiBQZXJyaWVyLCBhcyB0aGlzIHdhcyB0cml2aWFsKS4KKyAgKiBTcGFuaXNoIChKYXZpZXIgRmVybsOhbmRlei1TYW5ndWlubyBQZcOxYSkuIENsb3NlczogIzQ1Njk4NAorICAqIFN3ZWRpc2ggKFBldGVyIEthcmxzc29uKS4KKworICBbIFVwZGF0ZWQgbWFuIHBhZ2VzIHRyYW5zbGF0aW9ucyBdCisgICogR2VybWFuIChIZWxnZSBLcmV1dHptYW5uKS4KKyAgKiBTd2VkaXNoIChQZXRlciBLYXJsc3NvbikuCisKKyAgWyBVcGRhdGVkIHNjcmlwdHMgdHJhbnNsYXRpb25zIF0KKyAgKiBGcmVuY2ggKEZyw6lkw6lyaWMgQm90aGFteSkuCisgICogR2VybWFuIChIZWxnZSBLcmV1dHptYW5uKS4KKyAgKiBKYXBhbmVzZSAoS2Vuc2hpIE11dG8pLiBDbG9zZXM6ICM0NTU4NDEKKyAgKiBTd2VkaXNoIChQZXRlciBLYXJsc3NvbikuCisKKyAtLSBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+ICBUaHUsIDI3IERlYyAyMDA3IDA5OjE2OjQ1ICswMjAwCisKK2Rwa2cgKDEuMTQuMTIpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgIFsgUmFwaGHDq2wgSGVydHpvZyBdCisgICogQWRkIC1JPGZpbGU+IG9wdGlvbiB0byBkcGtnLWdlbnN5bWJvbHMgdG8gZm9yY2UgdGhlIHVzYWdlIG9mIGEgc3BlY2lmaWMKKyAgICBzeW1ib2xzIGZpbGUuCisgICogRHBrZzo6U2hsaWJzOjpmaW5kX2xpYnJhcnkoKSBub3cgcmV0dXJucyBjYW5vbmljYWxpemVkIHBhdGhzLgorICAqIGRwa2ctc2hsaWJkZXBzIGFsd2F5cyB0cmllcyB0aGUgcmVhbHBhdGgoKSBvZiBhIGxpYiBhcyBmYWxsYmFjayB3aGVuCisgICAgdHJ5aW5nIHRvIGlkZW50aWZ5IHRoZSBwYWNrYWdlIG9mIGEgbGliIChhbmQgbm90IG9ubHkgZm9yIHN5bWxpbmtzKS4KKyAgKiBkcGtnLXNobGliZGVwcyBkb2Vzbid0IGZhaWwgYW55IG1vcmUgaWYgaXQgY2FuJ3QgZmluZCB1bnZlcnNpb25lZAorICAgIGxpYnJhcmllcyBvbiB0aGUgcHJlc3VtcHRpb24gdGhhdCB0aGV5IGFyZSBqdXN0IHByaXZhdGUgbGlicmFyaWVzLiBPdXRwdXRzCisgICAgYSB3YXJuaW5nIGluc3RlYWQuCisgICogRXhwYW5kIHRoZSBkcGtnLXNobGliZGVwcyBtYW51YWwgcGFnZSB3aXRoIGV4cGxhbmF0aW9ucyBjb25jZXJuaW5nCisgICAgZmFpbHVyZXMuCisgICogVGhlIGVudmlyb25tZW50IHZhcmlhYmxlIERQS0dfR0VOU1lNQk9MU19DSEVDS19MRVZFTCBjYW4gYmUgdXNlZCB0byBmb3JjZQorICAgIGRwa2ctZ2Vuc3ltYm9scyB0byB1c2UgYSBwcmVjaXNlIGxldmVsIG9mIGNoZWNrcy4gQ2xvc2VzOiAjNDUyMDIyCisKKyAgWyBHdWlsbGVtIEpvdmVyIF0KKyAgKiBEZWZpbmUgc2V2ZXJhbCBwcml2YXRlIGZ1bmN0aW9ucyBhbmQgdmFyaWFibGVzIGFzIHN0YXRpYy4KKyAgKiBNb3ZlIGV4dGVybiBkZWNsYXJhdGlvbnMgdG8gaGVhZGVyIGZpbGVzIGFuZCBzdG9wIGRlZmluaW5nIHRoZW0gYXMgZXh0ZXJuLgorICAqIFVuaWZ5IHBhcnNpbmcgb2YgU2VjdGlvbiBhbmQgUHJpb3JpdHkgaW4gZHBrZy1nZW5jb250cm9sIHdpdGggSG9tZXBhZ2UuCisgICogU3dpdGNoIGRwa2ctc2NhbnBhY2thZ2VzIHRvIHVzZSB0aGUgbmV3IERwa2c6OkVycm9ySGFuZGxpbmcgYW5kCisgICAgRHBrZzo6VmVyc2lvbnMgbW9kdWxlcy4KKworIC0tIEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4gIFRodSwgMjkgTm92IDIwMDcgMDY6MTQ6MDkgKzAyMDAKKworZHBrZyAoMS4xNC4xMSkgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgWyBSYXBoYcOrbCBIZXJ0em9nIF0KKyAgKiBkcGtnLXNobGliZGVwcyBub3cgaWdub3JlcyB0aGUgbGFjayBvZiBkZXBlbmRlbmN5IGluZm9ybWF0aW9uIGluIHNvbWUKKyAgICBzcGVjaWZpYyBjYXNlcyAoaW5zdGVhZCBvZiBmYWlsaW5nKToKKyAgICAtIHdoZW4gdGhlIGxpYnJhcnkgaXMgaW4gdGhlIHNhbWUgcGFja2FnZSB0aGFuIHRoZSBiaW5hcnkgYW5hbHl6ZWQKKyAgICAtIHdoZW4gdGhlIGxpYnJhcnkgaXMgbm90IHZlcnNpb25lZCBhbmQgY2FuJ3QgaGF2ZSBhIHNobGlicyBmaWxlCisgICogZHBrZy1zaGxpYmRlcHMgbm93IG9ubHkgZGlzcGxheXMgMTAgd2FybmluZ3MgYWJvdXQgc3ltYm9scyBub3QgZm91bmQgZm9yCisgICAgZWFjaCBiaW5hcnkgYW5kIGEgY291bnQgb2Ygc2tpcHBlZCB3YXJuaW5ncy4gQ2xvc2VzOiAjNDUyMzE4CisgICogZHBrZy1zaGxpYmRlcHM6IG9wdGltaXplICJkcGtnIC1TIiBsb29rdXBzIGJ5IGNhY2hpbmcgcmVzdWx0cywgcGF0Y2gKKyAgICBmcm9tIEFhcm9uIE0uIFVja28gPHVja29AZGViaWFuLm9yZz4uIENsb3NlczogIzQ1MjU3NworCisgIFsgR3VpbGxlbSBKb3ZlciBdCisgICogRml4IGRwa2ctc2NhbnBhY2thZ2VzIHRvIHByb3Blcmx5IHN1cHBvcnQgYW4gb3B0aW9uYWwgb3ZlcnJpZGUgZmlsZS4KKyAgICBDbG9zZXM6ICM0NTI2MjEKKworIC0tIEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4gIFNhdCwgMjQgTm92IDIwMDcgMDc6MTk6MDIgKzAyMDAKKworZHBrZyAoMS4xNC4xMCkgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgWyBSYXBoYcOrbCBIZXJ0em9nIF0KKyAgKiBkcGtnLXNobGliZGVwcyBub3cgY29ycmVjdGx5IGlkZW50aWZ5IHByaXZhdGUgbGlicmFyaWVzIChhdm9pZCBtYW55CisgICAgd2FybmluZ3Mgd2l0aCBwZXJsL3B5dGhvbiBtb2R1bGVzKS4gQ2xvc2VzOiAjNDUyMzM4CisgICogTW92ZSBjYXBpdCgpIHRvIGEgRHBrZzo6RmllbGRzIG1vZHVsZSBhbmQgdXNlIGl0IGluIGRwa2ctc2hsaWJkZXBzLgorICAgIENsb3NlczogIzQ1MjI2MgorICAqIEFkZCBtb3JlIGRlYnVnIG1lc3NhZ2VzIHRvIGRwa2ctc2hsaWJkZXBzIHRvIGVhc2UgY29sbGVjdGluZyBpbmZvcm1hdGlvbgorICAgIGluIGNhc2Ugb2YgcHJvYmxlbXMuCisgICogZHBrZy1zaGxpYmRlcHMgbm93IGFjY2VwdHMgYWdhaW4gZW1wdHkgZGVwZW5kZW5jaWVzIGluIHNobGlicyBmaWxlcy4KKyAgKiBkcGtnLXNobGliZGVwcyB3aWxsIHRyeSBoYXJkZXIgdG8gaWRlbnRpZnkgcGFja2FnZXMgcHJvdmlkaW5nIGEgbGlicmFyeQorICAgIGJ5IGxvb2tpbmcgdXAgZHBrZyAtUyBvbiB0aGUgcmVhbHBhdGggb2YgYW55IHN5bWxpbmsgdG8gYSBsaWJyYXJ5LgorICAgIENsb3NlczogIzQ1MjMzOQorICAqIGRwa2ctc291cmNlIG5vdyBjb3JyZWN0bHkgaWRlbnRpZmllcyB0aGUgZXh0ZW5zaW9uIG9mIHRoZQorICAgIG9yaWcudGFyLntneixiejIsbHptYX0gZmlsZSBhbmQgd29uJ3QgdW5leHBlY3RlZGx5IGNyZWF0ZSAiRm9ybWF0OiAyLjAiCisgICAgLmRzYyBmaWxlcy4KKworICBbIEd1aWxsZW0gSm92ZXIgXQorICAqIEFkZCBzdXBwb3J0IGZvciBQYWNrYWdlLVR5cGUgaW4gZHBrZy1uYW1lLgorICAqIFJlc3RvcmUgY3Jvc3MgY29tcGlsYXRpb24gc3VwcG9ydCBieSBob25vdXJpbmcgdGhlIGVudmlyb25tZW50IGhvc3QgYW5kCisgICAgYXJjaCB2YXJpYWJsZXMgdG8gb3ZlcnJpZGUgdGhlIGRlZmF1bHQgdmFsdWVzIG9uIHRoZSBkcGtnLWRldiBzY3JpcHRzLgorCisgIFsgVXBkYXRlZCBtYW4gcGFnZXMgdHJhbnNsYXRpb25zIF0KKyAgKiBTd2VkaXNoIChQZXRlciBLYXJsc3NvbikKKworICBbIEFkZGVkIHNjcmlwdHMgdHJhbnNsYXRpb25zIF0KKyAgKiBTd2VkaXNoIChQZXRlciBLYXJsc3NvbikKKworIC0tIEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4gIEZyaSwgMjMgTm92IDIwMDcgMDY6MzI6MjcgKzAyMDAKKworZHBrZyAoMS4xNC45KSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICBbIFJhcGhhw6tsIEhlcnR6b2cgXQorICAqIEZpeCBiYWQgYmVoYXZpb3VyIG9mIERwa2c6OlBhdGg6OmdldF9wa2dfcm9vdF9kaXIoKSBhbmQgYWRqdXN0CisgICAgZHBrZy1zaGxpYmRlcHMgYWNjb3JkaW5nbHkuIENsb3NlczogIzQ1MjAxMgorICAqIEZpeCBEcGtnOjpEZXBzIHRvIGFjY2VwdCBlbXB0eSBmaWVsZHMuIENsb3NlczogIzQ1MjAxMworCisgIFsgVXBkYXRlZCBtYW4gcGFnZXMgdHJhbnNsYXRpb25zIF0KKyAgKiBHZXJtYW4gKEhlbGdlIEtyZXV0em1hbm4pLgorCisgLS0gR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPiAgVHVlLCAyMCBOb3YgMjAwNyAwNzoxNTo0MSArMDIwMAorCitkcGtnICgxLjE0LjgpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgIFsgUmFwaGHDq2wgSGVydHpvZyBdCisgICogSGVhdnkgcmV3b3JrIG9mIGRwa2ctc2hsaWJkZXBzOgorICAgIC0gU3VwcG9ydCAic3ltYm9scyIgZmlsZXMgdG8gZ2VuZXJhdGUgZmluZXItZ3JhaW5lZCBkZXBlbmRlbmNpZXMuCisgICAgICBUaG9zZSBmaWxlcyBjYW4gYmUgY3JlYXRlZCBieSB0aGUgbmV3IGRwa2ctZ2Vuc3ltYm9scyBjb21tYW5kLgorICAgICAgQ2xvc2VzOiAjNDMwMzY3CisgICAgLSBVc2VzIG5vdyBhbGwgcGF0aHMgaW4gUlBBVEggKGluc3RlYWQgb2Ygb25seSB0aGUgZmlyc3QpLgorICAgICAgQ2xvc2VzOiAjMzk1OTQyCisgICAgLSBTdXBwb3J0IHBhcnNpbmcgaW5jbHVkZSBkaXJlY3RpdmVzIGluIC9ldGMvbGQuc28uY29uZi4gQ2xvc2VzOiAjNDMxNTk3CisgICAgLSBMaWJyYXJpZXMgYXJlIGFsc28gc2VhcmNoZWQgaW4gdGhlIHB1YmxpYyBkaXJlY3RvcmllcyBvZiBwYWNrYWdlcworICAgICAgYmVpbmcgYnVpbHQgYW5kIHRodXMgZGViaWFuL3NobGlicy5sb2NhbCBjYW4gZWZmZWN0aXZlbHkgZGVmaW5lCisgICAgICBkZXBlbmRlbmNpZXMgZm9yIGxpYnJhcmllcyB0aGF0IGFyZSBiZWluZyBidWlsdC4gQ2xvc2VzOiAjODAzNDAKKyAgICAtICJzeW1ib2xzIiBmaWxlcyB1c2UgdGhlIGZ1bGwgU09OQU1FIGFzIGtleSBpbnN0ZWFkIG9mIHNwbGl0dGluZyBpdCBpbgorICAgICAgKG5hbWUsIHZlcnNpb24pIGxpa2UgaW4gdGhlICJzaGxpYnMiIGZvcm1hdC4gVGhpcyBhbGxvd3MgYmluYXJpZXMgdG8KKyAgICAgIGJlIGxpbmtlZCB3aXRoIHVudmVyc2lvbmVkIGxpYnJhcmllcyBhbmQgbm90IGZhaWwuIE5vdGUgdGhhdAorICAgICAgdW52ZXJzaW9uZWQgbGlicmFyaWVzIGFyZSBzdGlsbCBhIHZlcnkgYmFkIGlkZWEuICBDbG9zZXM6ICM0ODIwOAorICAgIC0gZHBrZy1zaGxpYmRlcHMgbm93IHN1cHBvcnRzICcteDxwYWNrYWdlPicgb3B0aW9ucyB0aGF0IGNhbiBiZSB1c2VkIHRvCisgICAgICBleGNsdWRlIHBhY2thZ2VzIGZyb20gZ2VuZXJhdGVkIGRlcGVuZGVuY2llcyAodXNlIHdpdGggY2FyZSB0aG91Z2gpLgorICAgICAgQ2xvc2VzOiAjNDE5MDcsICMxMDk5NTQKKyAgICAtIElmIGRwa2ctc2hsaWJkZXBzIGRvZXNuJ3QgZmluZCBhbnkgZGVwZW5kZW5jeSBpbmZvcm1hdGlvbiBmb3IgYQorICAgICAgc2hhcmVkIGxpYnJhcnkgdGhhdCBpcyBhY3RpdmVseSB1c2VkLCB0aGVuIGl0IHdpbGwgZmFpbC4gVGhpcyBjYW4gYmUKKyAgICAgIGRpc2FibGVkIHdpdGggdGhlIG9wdGlvbiAnLS1pZ25vcmUtbWlzc2luZy1pbmZvJy4gQ2xvc2VzOiAjMTA4MDcKKyAgKiBTd2l0Y2ggcGVybCBwcm9ncmFtcyB0byB1c2UgdGhlIG5ldyBEcGtnOjpEZXBzIG1vZHVsZS4gVGhpcyBjaGFuZ2VzIHRoZQorICAgIGJlaGF2aW91ciBvZiBkcGtnLWdlbmNvbnRyb2wgYW5kIGRwa2ctc291cmNlIHdoaWNoIHdpbGwgcmV3cml0ZSBhbmQKKyAgICBzaW1wbGlmeSBkZXBlbmRlbmNpZXMgYW5kIGJ1aWxkIGRlcGVuZGVuY2llcyBhcyBwb3NzaWJsZS4gTXVsdGlwbGUKKyAgICBkZXBlbmRlbmNpZXMgb24gdGhlIHNhbWUgcGFja2FnZSBhcmUgcmVwbGFjZWQgYnkgdGhlaXIgaW50ZXJzZWN0aW9uLgorICAgIENsb3NlczogIzE3ODIwMywgIzE4NjgwOSwgIzIyMjY1MgorCisgIFsgRnJhbmsgTGljaHRlbmhlbGQgXQorICAqIEFkZCAkKE1BS0UpIGNoZWNrIHRvIGJ1aWxkIHRhcmdldAorICAqIEFsbG93IHRvIHVzZSBvdGhlciBjb21wcmVzc2lvbnMgdGhhbiBnemlwIG9uIGRwa2ctc291cmNlIC1iCisgICAgKE5PVEU6IHRoaXMgd2lsbCByZXN1bHQgaW4gYSBGb3JtYXQ6IDIuMCBzb3VyY2UgcGFja2FnZSEpLgorICAgIENsb3NlczogIzM4MjY3MworICAqIFZhcmlvdXMgc21hbGwgZml4ZXMgdG8gdGhlIG1hbnBhZ2VzIHN1Z2dlc3RlZCBieSBIZWxnZSBLcmV1dHptYW5uLgorICAgIENsb3NlczogIzQ0NTg1OAorICAqIEZpeCBEcGtnOjpCdWlsZE9wdGlvbnMgKGFuZCB0aGVyZWJ5IGRwa2ctYnVpbGRwYWNrYWdlKSB0byByZWFsbHkKKyAgICBzZXQgREVCX0JVSUxEX09QVElPTlMuIEZvdW5kIGJ5IERhbmllbCBTaGVwbGVyLiBDbG9zZXM6ICM0NDYxMTkKKyAgKiBDaGFuZ2Ugc29tZSAnIGluIHNoZWxsIGNvZGUgaW4gZHBrZy1zb3VyY2UuMSBhbmQgZHBrZy1xdWVyeS4xIHRvCisgICAgcHJvcGVyIFwoYXEuIFJlcG9ydGVkIGJ5IERhbmllbCB2YW4gRWVkZW4uIENsb3NlczogIzQ0NzQ3NgorCisgIFsgR3VpbGxlbSBKb3ZlciBdCisgICogVXNlIHNoaXBwZWQgcGVybCBtb2R1bGVzIHdoZW4gY2FsbGluZyBwZXJsIHByb2dyYW1zIGF0IGJ1aWxkIHRpbWUuCisgICogU3dpdGNoIHBlcmwgcHJvZ3JhbXMgdG8gdXNlIHRoZSBuZXcgRHBrZzo6RXJyb3JIYW5kbGluZyBhbmQgRHBrZzo6QXJjaAorICAgIHBlcmwgbW9kdWxlcy4KKyAgKiBBZGQgc3VwcG9ydCBmb3IgZm9ybWF0IHN0cmluZ3MgaW4gRHBrZzo6RXJyb3JIYW5kbGluZyBmdW5jdGlvbnMuCisgICogTW92ZSBidWlsZCBhbmQgaG9zdCBhcmNoIGRldGVjdGlvbiBjb2RlIGZyb20gZHBrZy1hcmNoaXRlY3R1cmUgdG8KKyAgICBEcGtnOjpBcmNoLgorICAqIEFkZCBpbml0aWFsIHVkZWIgc3VwcG9ydDoKKyAgICAtIFN1cHBvcnQgbmV3IGZpZWxkcyBmaWVsZHMgUGFja2FnZS1UeXBlLCBTdWJhcmNoaXRlY3R1cmUsIEtlcm5lbC1WZXJzaW9uCisgICAgICBhbmQgSW5zdGFsbGVyLU1lbnUtSXRlbS4gQ2xvc2VzOiAjMzgzOTE2CisgICAgLSBOZXcgJy0tdHlwZScgb3B0aW9uIGZvciBkcGtnLXNjYW5wYWNrYWdlcy4KKyAgKiBNYWtlIGRwa2ctZGV2IENvbmZsaWN0IG9uIGRwa2ctY3Jvc3MgPDwgMi4wLjAgd2hpY2ggd2FzIHNvdXJjaW5nCisgICAgZHBrZy1idWlsZHBhY2thZ2UgZXhwZWN0aW5nIGl0IHRvIGJlIGEgc2hlbGwgc2NyaXB0LiBDbG9zZXM6ICM0NDU4NTIKKyAgKiBHZXQgcmlkIG9mIHVuZGVmaW5lZCBtYWNyb3MgZnJvbSBtYW4gcGFnZXMuIFRoYW5rcyB0byBDb2xpbiBXYXRzb24KKyAgICBmb3IgdGhlIGFuYWx5c2lzLgorCisgIFsgVXBkYXRlZCBkc2VsZWN0IHRyYW5zbGF0aW9ucyBdCisgICogQ3plY2ggKE1pcm9zbGF2IEt1cmUpLgorCisgIFsgQWRkZWQgZHBrZyB0cmFuc2xhdGlvbnMgXQorICAqIFRoYWkgKFRoZXBwaXRhayBLYXJvb25ib29ueWFuYW4pLiBDbG9zZXM6ICM0NDY1MDEKKworICBbIFVwZGF0ZWQgZHBrZyB0cmFuc2xhdGlvbnMgXQorICAqIEN6ZWNoIChNaXJvc2xhdiBLdXJlKS4KKyAgKiBHYWxpY2lhbiAoSmFjb2JvIFRhcnJpbykuIENsb3NlczogIzQ0NjYyNAorICAqIFBvbGlzaCAoUm9iZXJ0IEx1YmVyZGEpLgorICAqIFJ1c3NpYW4gKFl1cmkgS296bG92KS4gQ2xvc2VzOiAjNDQ2Mjc4CisKKyAgWyBVcGRhdGVkIG1hbiBwYWdlcyB0cmFuc2xhdGlvbnMgXQorICAqIEdlcm1hbiAoSGVsZ2UgS3JldXR6bWFubikuIENsb3NlczogIzQ0ODM1NAorICAqIFBvbGlzaCAoUm9iZXJ0IEx1YmVyZGEpLgorICAqIFN3ZWRpc2ggKFBldGVyIEthcmxzc29uKS4KKworICBbIEFkZGVkIHNjcmlwdHMgdHJhbnNsYXRpb25zIF0KKyAgKiBHZXJtYW4gKEhlbGdlIEtyZXV0em1hbm4pLiBDbG9zZXM6ICM0NDgzNTMKKworICBbIFVwZGF0ZWQgc2NyaXB0cyB0cmFuc2xhdGlvbnMgXQorICAqIFBvbGlzaCAoUm9iZXJ0IEx1YmVyZGEpLgorICAqIFN3ZWRpc2ggKFBldGVyIEthcmxzc29uKS4KKworIC0tIEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4gIE1vbiwgMTkgTm92IDIwMDcgMTA6MzY6MzAgKzAyMDAKKworZHBrZyAoMS4xNC43KSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICBbIEd1aWxsZW0gSm92ZXIgXQorICAqIEFkZCBiYWNrICRkcGtnbGliIGludG8gQElOQywgbmVlZGVkIGJ5IHRoZSBjb250cm9sbGliLnBsIHJlcXVpcmUgaW4KKyAgICA4MjItZGF0ZS4gQ2xvc2VzOiAjNDQwOTYyCisgICogRG9jdW1lbnQgaW4gZHBrZy1zY2FucGFja2FnZXMgdGhhdCBhcHQgbm93IHJlcXVpcmVzIFBhY2thZ2VzLmJ6MiBpbgorICAgIHByZWZlcmVuY2UgdG8gUGFja2FnZXMuZ3ouIENsb3NlczogIzQ0MDk3MworICAqIFN0b3AgcmVjb2duaXppbmcgdGhlIG9ic29sZXRlIE9wdGlvbmFsIGZpZWxkIHdoZW4gYnVpbGRpbmcgcGFja2FnZXMuCisgICogVXNlIGZha2Vyb290LCBpZiBwcmVzZW50LCBieSBkZWZhdWx0IHRvIGdhaW4gcm9vdCBwcml2aWxlZ2VzIGluCisgICAgZHBrZy1idWlsZHBhY2thZ2UuCisgICogRml4IHR5cG9zIGluIGRwa2ctZGViLjEgYW5kIHN0YXJ0LXN0b3AtZGFlbW9uLjguIENsb3NlczogIzQ0MTA1MQorICAgIFRoYW5rcyB0byBBLiBDb3N0YS4KKyAgKiBBZnRlciAnPHByZXJtPiByZW1vdmUnIGZhaWxzIGFuZCB3aGlsZSBkb2luZyB0aGUgZXJyb3IgdW53aW5kaW5nLCBpZgorICAgIHRoZSAnPHBvc3RpbnN0PiBhYm9ydC1yZW1vdmUnIGNhbGwgc3VjY2VlZHMsIHByZXNlcnZlIHRoZSBvbGQgc3RhdHVzCisgICAgaW5zdGVhZCBvZiB1bmNvbmRpdGlvbmFsbHkgc2V0dGluZyBpdCB0byAnSW5zdGFsbGVkJy4gQ2xvc2VzOiAjNDMyODkzCisgICAgVGhhbmtzIHRvIEJyaWFuIE0uIENhcmxzb24uCisgICogQWRkIFZjcy1Ccm93c2VyIGFuZCBWY3MtR2l0IGZpZWxkcyB0byBkZWJpYW4vY29udHJvbC4KKyAgKiBBZGQgYSBIb21lcGFnZSBmaWVsZCB0byBkZWJpYW4vY29udHJvbCAodG8gYmUgY2hhbmdlZCBsYXRlciB3aGVuCisgICAgdGhlcmUncyBhIG1vcmUgZm9ybWFsIHNpdGUpLgorICAqIEFsbG93IGNvbXBhcmluZyB1bnN1cHBvcnRlZCBhcmNoaXRlY3R1cmVzIGZvciBlcXVhbGl0eSBhbmQgaWRlbnRpdHkuCisgICAgQmFzZWQgb24gYSBwYXRjaCBieSBGcmFuayBMaWNodGVuaGVsZC4gQ2xvc2VzOiAjNDI3MjEwCisgICogRG9jdW1lbnQgT3JpZ2luIGFuZCBCdWdzIGZpZWxkcyBpbiBkZWItY29udHJvbC41LiBDbG9zZXM6ICMxNzM0NjMKKyAgKiBEbyBub3QgcmVwbGFjZSBzdWJzdHZhcnMgZm9yIGJ1aWxkIGRlcGVuZGVuY2llcyAoaXQgd2FzIG5vdCBzdXBwb3J0ZWQKKyAgICBhbnl3YXkpLgorCisgIFsgRnJhbmsgTGljaHRlbmhlbGQgXQorICAqIEFkZCBfTVROIHRvIGRwa2ctc291cmNlIC1pIGRlZmF1bHQgcmVnZXguIFN1Z2dlc3RlZCBieSBKYXJpIEFhbHRvLgorICAqIENvbnZlcnQgZHBrZy1idWlsZHBhY2thZ2UgdG8gYSBQZXJsIHNjcmlwdC4KKyAgICBGaXggc29tZSBidWdzIGluIHRoZSBuZXcgc2NyaXB0IGRldGVjdGVkIGluIGV4cGVyaW1lbnRhbDoKKyAgICBDbG9zZXM6ICM0NDQzNjIKKyAgKiBkcGtnLWJ1aWxkcGFja2FnZSBhY2NlcHRzIGEgLWo8bj4gb3B0aW9uIG5vdyB3aGljaCB3aWxsIHNldAorICAgIE1BS0VGTEFHUygtajxuPikgYW5kIERFQl9CVUlMRF9PUFRJT05TKHBhcmFsbGVsPTxuPikgYWNjb3JkaW5nbHkuCisgICAgcGFyYWxsZWw9PG4+IGluIERFQl9CVUlMRF9PUFRJT05TIHdpbGwgYmUgcGFzc2VkIHRvIE1BS0VGTEFHUyBhcworICAgIHdlbGwuIEJhc2VkIG9uIGFuIGlkZWEgYnkgUm9iZXJ0IE1pbGxhbi4gQ2xvc2VzOiAjNDQwNjM2CisgICogQWxsb3cgZHBrZy1zb3VyY2UgLUkgd2l0aG91dCBhIHBhdHRlcm4gd2hpY2ggd2lsbCBsb2FkIGEgZGVmYXVsdAorICAgIGxpc3Qgb2YgcGF0dGVybiBzaW1pbGFyIHRvIC1pIHdpdGhvdXQgcmVnZXhwLiBQYXRjaCBieQorICAgIEphcmkgQWFsdG8uIENsb3NlczogIzQ0MDk3MgorICAqIFJld29yayBkb2N1bWVudGF0aW9uIG9mIGRwa2ctc291cmNlJ3MgLWkgYW5kIC1JIG9wdGlvbnMuCisgICAgQ2xvc2VzOiAjMzIzOTExLCAjNDQwOTU2CisgICogQWRkIC0tdXRmOC1zdHJpbmdzIHRvIGdwZyBjYWxsIGluIGRwa2ctYnVpbGRwYWNrYWdlIHNpbmNlCisgICAgdGhhdCBzZWVtcyB0byBiZSB0aGUgYmV0dGVyIGRlZmF1bHQuIFN1Z2dlc3RlZCBieSBTesOpa2VseWkgU3phYm9sY3MuCisgICAgQ2xvc2VzOiAjMzc5NDE4CisgICogTGV0IGRwa2ctYnVpbGRwYWNrYWdlIGVycm9yIG91dCBlYXJseSBpZiB0aGUgdmVyc2lvbiBudW1iZXIgZnJvbQorICAgIHRoZSBjaGFuZ2Vsb2cgaXMgbm90IGEgdmFsaWQgRGViaWFuIHZlcnNpb24uIENsb3NlczogIzIxNjA3NQorICAqIEZpeCBkcGtnLXNvdXJjZSB0byBjcmVhdGUgY29ycmVjdCBkaWZmcyBmb3IgZmlsZXMgd2l0aCBzcGFjZXMgaW4KKyAgICB0aGVpciBuYW1lIChhcHBhcmVudGx5IHdlIGRvbid0IGhhdmUgbWFueSBvZiB0aG9zZSA7KS4KKyAgICBCYXNlZCBvbiBhIHBhdGNoIGJ5IE1hcmNlbCBUb2VsZS4gQ2xvc2VzOiAjNDQ1MzgwCisKKyAgWyBVcGRhdGVkIGRwa2cgdHJhbnNsYXRpb25zIF0KKyAgKiBCYXNxdWUgKFBpYXJyZXMgQmVvYmlkZSkuIENsb3NlczogIzQ0MDg1OQorICAqIERhbmlzaCAoQ2xhdXMgSGluZHNnYXVsKS4gQ2xvc2VzOiAjNDQxMTA2CisgICogRnJlbmNoIChGcsOpZMOpcmljIEJvdGhhbXkpLgorICAqIEdlcm1hbiAoU3ZlbiBKb2FjaGltKS4gQ2xvc2VzOiAjNDQwNTM3CisgICogTmVwYWxpIChTaGl2YSBQcmFzYWQgUG9raGFyZWwpLiBDbG9zZXM6ICM0Mzc4MjUKKyAgKiBQb3J0dWd1ZXNlIChNaWd1ZWwgRmlndWVpcmVkbykuIENsb3NlczogIzQ0MTExMworICAqIFJvbWFuaWFuIChFZGR5IFBldHJpxZ9vcikuCisgICogVmlldG5hbWVzZSAoQ2x5dGllIFNpZGRhbGwpLiBDbG9zZXM6ICM0NDA1MDIKKyAgKiBLb3JlYW4gKFN1bmphZSBQYXJrKS4gQ2xvc2VzOiAjNDQzMTkwCisKKyAgWyBVcGRhdGVkIG1hbiBwYWdlcyB0cmFuc2xhdGlvbnMgXQorICAqIEdlcm1hbiAoSGVsZ2UgS3JldXR6bWFubikuCisgICogU3dlZGlzaCAoUGV0ZXIgS2FybHNzb24pLgorICAqIEtvcmVhbiAoU3VuamFlIFBhcmspLiBDbG9zZXM6ICM0NDMxOTEKKworICBbIFVwZGF0ZWQgc2NyaXB0cyB0cmFuc2xhdGlvbnMgXQorICAqIENvcnJlY3QgYSB0eXBvIGluIHRoZSBGcmVuY2ggdHJhbnNsYXRpb24uIENsb3NlczogIzQ0MzI3NgorICAqIFN3ZWRpc2ggKFBldGVyIEthcmxzc29uKS4KKworIC0tIEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4gIE1vbiwgMDggT2N0IDIwMDcgMDc6MzE6MzQgKzAzMDAKKworZHBrZyAoMS4xNC42KSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICBbIEZyYW5rIExpY2h0ZW5oZWxkIF0KKyAgKiBTeW5jaHJvbmlzZSB1c2FnZSBpbmZvcm1hdGlvbiBvZiBkcGtnLCBkcGtnLWRlYiwgYW5kCisgICAgZHBrZy1xdWVyeSBtYW4gcGFnZXMuIFRoaXMgZml4ZXMgc29tZSBzbWFsbCBtaXN0YWtlcworICAgIGFuZCBhbHNvIENsb3NlczogIzMyMTUyMAorCisgIFsgR3VpbGxlbSBKb3ZlciBdCisgICogTWFuIHBhZ2VzIGNsZWFudXA6CisgICAgLSBTb21lIGl0YWxpY3MgYW5kIGJvbGQgZml4ZXMuCisgICAgLSBVbmlmeSBlbGxpcHNpcywgYXJndW1lbnQgc2VwYXJhdG9yLCBhbmQgcmVtb3ZlIHJlZHVuZGFudCBwcm9ncmFtIG5hbWUKKyAgICAgIHByZWNlZGluZyB0aGUgb3B0aW9ucy4KKyAgICAtIFN1YnN0aXR1dGUgJ0ZJTEVTJyBoZWFkZXIgd2l0aCAnU0VFIEFMU08nIGluIGRwa2ctYnVpbGRwYWNrYWdlKDEpLAorICAgICAgYW5kIHJlbW92ZSBsZWZ0b3ZlciBzdHJpbmcgZnJvbSBtYW4gcGFnZSBzcGxpdC4gQ2xvc2VzOiAjNDM5MzA2CisgICAgLSBTcGxpdCBvcHRpb24gZGVzY3JpcHRpb25zIHNvIHRoYXQgaXQgZ2V0cyBlYXNpZXIgdG8gZGlzdGluZ3Vpc2guCisgICAgLSBVbmlmeSBhdXRob3IgYW5kIGNvcHlyaWdodCBpbmZvcm1hdGlvbiBmb3JtYXR0aW5nLgorICAqIE1vdmUgdmFyaWFibGVzIGF1dG9tYXRpY2FsbHkgbW9kaWZpZWQgYXQgYnVpbGQgdGltZSBmb3IgdGhlIHBlcmwgc2NyaXB0cworICAgIHRvIGEgbmV3IHN0eWxlIHBlcmwgbW9kdWxlIChEcGtnKSBhbmQgbWFrZSBhbGwgcHJvZ3JhbXMgdXNlIGl0LgorICAqIFN3aXRjaCAnZHBrZy1nZXR0ZXh0LnBsJyB0byBhIG5ldyBzdHlsZSBwZXJsIG1vZHVsZSAoRHBrZzo6R2V0dGV4dCkuCisgICogSW1wbGVtZW50IHN1cHBvcnQgZm9yIEJyZWFrcyBmaWVsZC4gQ2xvc2VzOiAjMzc5MTQwCisgICAgVGhhbmtzIHRvIElhbiBKYWNrc29uLgorICAqIFJ1biB0aGUgZGVjb25maWd1cmF0aW9uIG9mIGVhY2ggcGFja2FnZSB0byBiZSBkZWNvbmZpZ3VyZWQgb25jZSwgaW5zdGVhZAorICAgIG9mIG9uY2UgcGVyIGVhY2ggY29uZmxpY3RpbmcgcGFja2FnZSBiZWluZyByZW1vdmVkLiBDbG9zZXM6ICMzNzgwMDMKKyAgICBUaGFua3MgdG8gSWFuIEphY2tzb24uCisgICogRG8gbm90IHNlZ2ZhdWx0IHdoZW4gdGhlIHJlc3VsdCBmcm9tIGEgJ2Rwa2ctcXVlcnkgLWwnIGlzIGJpZ2dlciB0aGFuCisgICAgdGhlIHRvdGFsIG51bWJlciBvZiBjdXJyZW50IHBhY2thZ2VzLCBhbmQgZG8gbm90IHByb2R1Y2UgcmVwZWF0ZWQKKyAgICByZXN1bHRzIHdpdGggb3ZlcmxhcHBpbmcgcGF0dGVybnMgb24gJ2Rwa2ctcXVlcnkgLVcnLiBDbG9zZXM6ICM0Mjg0MjcKKyAgKiBUaWdodGVuaW5nIGRwa2ctZGV2IHZlcnNpb25lZCBEZXBlbmRzIHRvIGRwa2cgMS4xNC42LCBhbmQgZHBrZyBDb25mbGljdHMKKyAgICBhZ2FpbnN0IDw8IGRwa2ctZGV2IDEuMTQuNiwgd2hlcmUgdGhlIHBlcmwgbW9kdWxhcml6YXRpb24gc3RhcnRlZC4KKyAgKiBEbyBub3QgcHJpbnQgZW1wdHkgbGluZXMgYWZ0ZXIgJ1NldHRpbmcgdXAgLi4uJyBvdXRwdXQuIENsb3NlczogIzM5MjMxNworICAqIFdoZW4gYSBzbGF2ZSBhbHRlcm5hdGl2ZSBpcyBpbmFwcGxpY2FibGUgZG8gbm90IGF0dGVtcHQgdG8gY3JlYXRlIHRoZQorICAgIHNsYXZlIGxpbmsgYmVmb3JlIHJlbW92aW5nIGl0IGFnYWluLiBDbG9zZXM6ICM0MTE2OTkKKyAgICBUaGFua3MgdG8gSWFuIEphY2tzb24uCisgICogRG8gbm90IGNvbnNpZGVyIGl0IGEgZmlsZSBjb25mbGljdCBpZiB0aGUgcGFja2FnZSBjb250YWlucyBhIHN5bWxpbmsKKyAgICB0byBhIGRpcmVjdG9yeSB3aGVyZSB0aGUgZXhpc3Rpbmcgc3ltbGluayBvbi1kaXNrIHBvaW50cyB0byB0aGUKKyAgICBzYW1lIHBsYWNlLiBDbG9zZXM6ICMzNzc2ODIKKyAgICBUaGFua3MgdG8gSWFuIEphY2tzb24uCisgICogRml4IHBlcmwgd2FybmluZ3M6CisgICAgLSBXaGVuIHJlbW92aW5nIGEgbm9uIGRpdmVydGVkIGZpbGUgd2l0aCBkcGtnLWRpdmVydC4gQ2xvc2VzOiAjNDM4NDE2CisgICogSW1wbGVtZW50IHN1cHBvcnQgZm9yIEhvbWVwYWdlIGZpZWxkLiBDbG9zZXM6ICMxNDIzMjQKKyAgKiBJZ25vcmUgWEItIGZpZWxkcyBpbnN0ZWFkIG9mIFhDLSBmaWVsZHMgZnJvbSBjb250cm9sIGZpbGUgYmluYXJ5IHBhY2thZ2UKKyAgICBzdGFuemFzIGluIGRwa2ctZ2VuY2hhbmdlcy4KKyAgKiBFeHBsaWNpdGx5IGlnbm9yZSBhbGwga25vd24gZmllbGRzIGZyb20gdGhlIGNvbnRyb2wgZmlsZSBzb3VyY2UgcGFja2FnZQorICAgIHN0YW56YSBpbiBkcGtnLWdlbmNoYW5nZXMsIGluc3RlYWQgb2YgbGVhdmluZyB1bmtub3duIGZpZWxkcyB1bndhcm5lZC4KKyAgKiBJbXBsZW1lbnQgc3VwcG9ydCBmb3IgVmNzLUJyb3dzZXIsIFZjcy1BcmNoLCBWY3MtQnpyLCBWY3MtQ3ZzLCBWY3MtRGFyY3MsCisgICAgVmNzLUdpdCwgVmNzLUhnLCBWY3MtTXRuIGFuZCBWY3MtU3ZuIGZpZWxkcyBpbiBjb250cm9sIGZpbGUgc291cmNlCisgICAgcGFja2FnZSBzdGFuemEuCisgICogSW1wbGVtZW50IHN1cHBvcnQgZm9yIFRhZyBmaWVsZC4KKworICBbIFVwZGF0ZWQgc2NyaXB0cyB0cmFuc2xhdGlvbnMgXQorICAqIEZyZW5jaCAoRnLDqWTDqXJpYyBCb3RoYW15LCBDaHJpc3RpYW4gUGVycmllcikuCisgICogU3dlZGlzaCAoUGV0ZXIgS2FybHNzb24pLgorCisgIFsgVXBkYXRlZCBkcGtnIHRyYW5zbGF0aW9ucyBdCisgICogRHpvbmdraGEgKFRzaGV3YW5nIE5vcmJ1KS4gQ2xvc2VzOiAjNDMwOTMxCisgICogTmVwYWxpIChTaGl2YSBQcmFzYWQgUG9raGFyZWwpLiBDbG9zZXM6ICM0MzUzNTMKKyAgKiBQb2xpc2ggKFJvYmVydCBMdWJlcmRhKS4KKyAgKiBSdXNzaWFuIChZdXJpIEtvemxvdikuIENsb3NlczogIzQzNjE0NworICAqIFN3ZWRpc2ggKFBldGVyIEthcmxzc29uKS4KKworICBbIFVwZGF0ZWQgZHNlbGVjdCB0cmFuc2xhdGlvbnMgXQorICAqIFJ1c3NpYW4gKFl1cmkgS296bG92KS4gQ2xvc2VzOiAjNDM2MTQ5CisgICogU3dlZGlzaCAoUGV0ZXIgS2FybHNzb24pLgorCisgIFsgVXBkYXRlZCBtYW4gcGFnZXMgdHJhbnNsYXRpb25zIF0KKyAgKiBHZXJtYW4gKEhlbGdlIEtyZXV0em1hbm4pLgorICAqIFBvbGlzaCAoUm9iZXJ0IEx1YmVyZGEpLgorICAqIFN3ZWRpc2ggKFBldGVyIEthcmxzc29uKS4KKworIC0tIEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4gIFdlZCwgMDUgU2VwIDIwMDcgMDc6MzY6MDIgKzAzMDAKKworZHBrZyAoMS4xNC41KSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICBbIEd1aWxsZW0gSm92ZXIgXQorICAqIEFkZCBscGlhIHN1cHBvcnQgdG8gb3N0YWJsZSBhbmQgdHJpcGxldHRhYmxlLgorICAqIEZpeCBkcGtnLXNvdXJjZSB0byBub3QgZW1pdCBkdXBsaWNhdGVkIGVudHJpZXMgZm9yIHRoZSBBcmNoaXRlY3R1cmUgZmllbGQKKyAgICBpbiB0aGUgLmRzYyBmaWxlLgorICAqIEZpeCBkcGtnLXNjYW5wYWNrYWdlcyB0byBsb2FkIHRoZSBvdmVycmlkZSBmaWxlIGFmdGVyIGhhdmluZyBmaWxsZWQgdGhlCisgICAgcGFja2FnZXMgaW5mb3JtYXRpb24uIENsb3NlczogIzQyODE2OSwgIzQyODQ3MAorICAqIEFkZCAnLnNoZWxmJyB0byB0aGUgZGVmYXVsdCBkcGtnLXNvdXJjZSAtaSByZWdleC4gQ2xvc2VzOiAjNDI3ODI3CisgICAgVGhhbmtzIHRvIEFkZW9kYXRvIFNpbcOzLgorICAqIFN1cHBvcnQgYSBjb2xvbiBzZXBhcmF0ZWQgbGlzdCBvZiBwYXRocyBmcm9tIHRoZSBFTEYgUlBBVEggZmllbGQgaW4KKyAgICBkcGtnLXNobGliZGVwcy4gVGhhbmtzIHRvIEppxZnDrSBQYWxlxI1lay4gQ2xvc2VzOiAjNDI3OTg4CisgICogTWFuIHBhZ2VzIGNsZWFudXA6CisgICAgLSBSZWZlcmVuY2UgZGViLXN1YnN0dmFycyg1KSBpbnN0ZWFkIG9mIGRwa2ctc3Vic3R2YXJzKDUpLiBDbG9zZXM6ICM0MjkxODIKKyAgICAtIE1hcmsgZHBrZy0qIGNvbW1hbmRzIGluIGJvbGQuCisgICAgLSBVbmlmeSB0aXRsZSBoZWFkZXIuCisgICAgLSBSZW1vdmUgYW4gYWRkaXRpb25hbCBzcGFjZSBpbiBpbnN0YWxsLWluZm8oOCkgYW5kIG1hcmsgZ3ppcCBpbiBib2xkCisgICAgICBhbmQgcmVtb3ZlIHJlZHVuZGFudCByZWZlcmVuY2UgdG8gR05VLgorICAgIC0gRml4IGV4cGxhbmF0aW9uIG9mIGRwa2ctc291cmNlICctYicgb3B0aW9uLCByZW1vdmUgYSByZWZlcmVuY2UgdG8KKyAgICAgIGNoZWNraW5nIGZvciBhIG1pc3NpbmcgZW1wdHkgc3RyaW5nIGFyZ3VtZW50LCBhbmQgYWRkIGEgcmVmZXJlbmNlCisgICAgICB0byAnLXNYJyBhcmd1bWVudHMgYWZmZWN0aW5nIHRoZSBiZWhhdmlvdXIuIENsb3NlczogIzQyODE2NworICAgIC0gUmVtb3ZlIGRvY3VtZW50ZWQgZHBrZy1nZW5jb250cm9sIG9wdGlvbnMgaW4gZHBrZy1zb3VyY2UgbGVmdCBvdmVyCisgICAgICBmcm9tIHRoZSBtYW4gcGFnZXMgc3BsaXQuCisKKyAgWyBGcmFuayBMaWNodGVuaGVsZCBdCisgICogRml4IHR5cG8gaW4gR2VybWFuIHRyYW5zbGF0aW9uIG9mIHN0YXJ0LXN0b3AtZGFlbW9uKDgpLgorICAgIE5vdGVkIGJ5IEpvYWNoaW0gQnJlaXRuZXIuIENsb3NlczogIzQzMDAwOAorICAqIENvcnJlY3QgcGVybWlzc2lvbiBhbmQgb3duZXIvZ3JvdXAgaGFuZGxpbmcgd2hlbiBleHRyYWN0aW5nCisgICAgdGFyIGJhbGxzIHRvIG1hdGNoIG1vcmUgdGhlIHVzZXIncyBwcmVmZXJlbmNlcyBpbnN0ZWFkIG9mCisgICAgb3VycyBvciB0aGUgb25lcyBmcm9tIHRoZSBvcmlnaW5hdG9yIG9mIHRoZSB0YXIgYmFsbC4gUGF0Y2gKKyAgICBieSBJYW4gSmFja3Nvbi4gQ2xvc2VzOiAjMzkwOTE1LCAjMjA3Mjg5CisgICogZHBrZy1zb3VyY2Ugd2FybnMgbm93IGFib3V0IG5ldyBlbXB0eSBmaWxlcyBzaW5jZSB0aG9zZSB3aWxsCisgICAgbm90IGJlIHJlcHJlc2VudGVkIGluIHRoZSBkaWZmLiBDbG9zZXM6ICMzODMzOTQKKworICBbIFVwZGF0ZWQgZHNlbGVjdCB0cmFuc2xhdGlvbnMgXQorICAqIEZyZW5jaCAoQ2hyaXN0aWFuIFBlcnJpZXIpLgorICAqIFJvbWFuaWFuIChFZGR5IFBldHJpxZ9vcikuCisKKyAgWyBVcGRhdGVkIGRwa2cgdHJhbnNsYXRpb25zIF0KKyAgKiBFc3RvbmlhbiAoSXZhciBTbW9saW4pLiBDbG9zZXM6ICM0Mjc1ODkKKyAgKiBQb3J0dWd1ZXNlIChNaWd1ZWwgRmlndWVpcmVkbykuCisgICogUm9tYW5pYW4gKEVkZHkgUGV0cmnFn29yKS4KKyAgKiBTcGFuaXNoIChKYXZpZXIgRmVybmFuZGV6LVNhbmd1aW5vKS4gQ2xvc2VzOiAjNDI5OTU4CisKKyAgWyBVcGRhdGVkIG1hbiBwYWdlcyB0cmFuc2xhdGlvbnMgXQorICAqIEdlcm1hbiAoSGVsZ2UgS3JldXR6bWFubikuCisKKyAtLSBGcmFuayBMaWNodGVuaGVsZCA8ZGpwaWdAZGViaWFuLm9yZz4gIFR1ZSwgMDMgSnVsIDIwMDcgMDA6Mjc6MDcgKzAyMDAKKworZHBrZyAoMS4xNC40KSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICBbIEd1aWxsZW0gSm92ZXIgXQorICAqIEZpeCBwZXJsIHdhcm5pbmdzOgorICAgIC0gV2hlbiB1bnBhY2tpbmcgYSBzb3VyY2UgcGFja2FnZSB3aXRoIC1zcCBmcm9tIGEgZGlmZmVyZW50IGRpcmVjdG9yeQorICAgICAgdGhhbiB0aGUgb25lIGNvbnRhaW5pbmcgdGhlIHRhcmJhbGwuIENsb3NlczogIzQyNDk5OAorICAqIFJlbW92ZSBhbiB1bnVzZWQgdmFyaWFibGUgaW4gZHBrZy1zdGF0b3ZlcnJpZGUgYnkgcmVuYW1pbmcgaXQgdG8gdGhlCisgICAgaW5pdGlhbGx5IGludGVuZGVkIG5hbWUuIENsb3NlczogIzQyNTA0MQorICAqIEZpeCBsb29zZSByZWdleCBpbiBkcGtnLXNvdXJjZSAoL1wuZGViaWFuLnRhci8gLT4gL1wuZGViaWFuXC50YXIvKS4KKyAgICBUaGFua3MgdG8gS3lsYW4gUm9iaW5zb24uIENsb3NlczogIzQyNTYyOQorICAqIFJldmVydCBjaGFuZ2Ugb24gMS4xNC4wIGZyb20gQWFyb24gTS4gVWNrby4gVHJpbSBkb3duIGR1cGVkIGVudHJpZXMgb25seQorICAgIHdoZW4gcGFzc2luZyB0aGVtIHRvIGRwa2ctcXVlcnkgaW5zdGVhZC4gQ2xvc2VzOiAjNDI1NjQxCisgICogUmVjb2duaXplIGFnYWluIGFyY2hpdGVjdHVyZSB3aWxkY2FyZHMuIENsb3NlczogIzQyNDY3MAorCisgIFsgVXBkYXRlZCBkcGtnIHRyYW5zbGF0aW9ucyBdCisgICogQmFzcXVlIChQaWFycmVzIEJlb2JpZGUpLiBDbG9zZXM6ICM0MjU3NzYKKyAgKiBGcmVuY2ggKEZyw6lkw6lyaWMgQm90aGFteSkuCisgICogR2FsaWNpYW4gKEphY29ibyBUYXJyw61vKS4KKworIC0tIEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4gIFRodSwgMjQgTWF5IDIwMDcgMTk6MzA6MjYgKzAzMDAKKworZHBrZyAoMS4xNC4zKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICBbIEd1aWxsZW0gSm92ZXIgXQorICAqIEZpeCBwZXJsIHdhcm5pbmdzOgorICAgIC0gSW4gZHBrZy1nZW5jaGFuZ2VzIHdoZW4gY2FsbGVkIHdpdGggLVMuIENsb3NlczogIzQyMzE5MworICAgIC0gSW4gYXJjaGl0ZWN0dXJlIGNvbXBhcmlzb24gb3BlcmF0aW9ucy4gQ2xvc2VzOiAjNDIzNDUyCisgICAgLSBGaWxsIHNsYXZlcGF0aHMgdW5kZWZpbmVkIGVudHJpZXMgd2l0aCBhbiBlbXB0eSBzdHJpbmcgdG8gZ3VhcmFudGVlCisgICAgICB0aGV5IGFyZSBhbHdheXMgZGVmaW5lZC4gQ2xvc2VzOiAjNDIzMTQwLCAjNDIzNDUxLCAjNDIzNTQ0LCAjNDIzNTU1CisgICogSW5jbHVkZSB0aGUgbmV3IHNwbGl0IG1hbiBwYWdlcyBkZWItc3Vic3R2YXJzLjUsIGRlYi1vdmVycmlkZS41IGFuZAorICAgIGRlYi1zaGxpYnMuNSBpbiBkcGtnLWRldi4KKyAgKiBGaXggZGViLXN1YnN0dmFycy41IHNlY3Rpb24gdG8gbWF0Y2ggcmVhbGl0eS4KKyAgKiBSZWZhY3RvciB1cGRhdGUtYWx0ZXJuYXRpdmVzLgorICAqIEZpeCBkcGtnLWRpdmVydCB0byB3b3JrIGFnYWluIHcvbyBzcGVjaWZ5aW5nIHRoZSAnLS1kaXZlcnQnIGFuZAorICAgICctLXBhY2thZ2UnIG9yICctLWxvY2FsJyBvcHRpb25zLiBDbG9zZXM6ICM0MjM4NjQKKyAgKiBEb2N1bWVudCBpbiBpbnN0YWxsLWluZm8uOCB0aGF0IHdoZW4gbm8gJy0tc2VjdGlvbicgb3B0aW9uIGlzIHNwZWNpZmllZCwKKyAgICBpbnN0YWxsLWluZm8gd2lsbCB0cnkgdG8gdXNlIHRoZSBJTkZPLURJUi1TRUNUSU9OIGVudHJ5IGZyb20gdGhlIGluZm8KKyAgICBmaWxlLiBBZGQgbWlzc2luZyBjb21tYXMuIFRoYW5rcyB0byBLdXJ0IEIuIEthaXNlci4gQ2xvc2VzOiAjMzk3NzM3CisgICogRGlzYW1iaWd1YXRlIGluIGluc3RhbGwtaW5mby44IHRoZSB1c2Ugb2YgJ0luZm8gZGlyZWN0b3J5JyB3aXRoCisgICAgJ0luZm8gZGlyIGZpbGUnLiBDbG9zZXM6ICM0MjA3NjYKKyAgKiBEb2N1bWVudCBpbiBkZWItY29udHJvbC41IHRoYXQgdGhlIGNvbnRyb2wgZmlsZSBjYW4gaGF2ZSAnIyctc3R5bGUKKyAgICBjb21tZW50cy4gQ2xvc2VzOiAjNDA2NDgxCisgICogTWFrZSBzdGFydC1zdG9wLWRhZW1vbiBmb3JrIHR3aWNlIHdoaWxlIGRhZW1vbml6aW5nLgorCisgIFsgVXBkYXRlZCBkcGtnLWRldiB0cmFuc2xhdGlvbnMgXQorICAqIEZyZW5jaCAoRnLDqWTDqXJpYyBCb3RoYW15KS4gQ2xvc2VzOiAjNDIzMzkyCisKKyAgWyBVcGRhdGVkIGRwa2cgdHJhbnNsYXRpb25zIF0KKyAgKiBGcmVuY2ggKENocmlzdGlhbiBQZXJyaWVyKS4KKyAgKiBHZXJtYW4gKFN2ZW4gSm9hY2hpbSkuIENsb3NlczogIzQyMzQwMQorCisgIFsgVXBkYXRlZCBkc2VsZWN0IHRyYW5zbGF0aW9ucyBdCisgICogR2VybWFuIChTdmVuIEpvYWNoaW0pLiBDbG9zZXM6ICM0MjM0MDMKKworIC0tIEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4gIFR1ZSwgMTUgTWF5IDIwMDcgMTY6MDI6NTkgKzAzMDAKKworZHBrZyAoMS4xNC4yKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICBbIEd1aWxsZW0gSm92ZXIgXQorICAqIFJlbW92ZSBiYXNoaXNtcyBpbiBkcGtnLWJ1aWxkcGFja2FnZS4gQ2xvc2VzOiAjNDIyMjM5CisgICogSGFuZGxlIGNhc2UgaW4gdXBkYXRlLWFsdGVybmF0aXZlcyB3aGVuIHRoZXJlJ3Mgbm8gZXhpc3RpbmcgYWx0ZXJuYXRpdmUKKyAgICB0byBjb25maWd1cmUuIENsb3NlczogIzI2MDk4NywgIzM1MzI1MiwgIzM2NzcxNywgIzM5MjQzMQorICAqIEFkZCBzb2xhcmlzIHN1cHBvcnQgdG8gb3N0YWJsZSBhbmQgdHJpcGxldHRhYmxlLiBDbG9zZXM6ICMzNjE4NjYKKyAgKiBQcm9wZXJseSBjcmVhdGUgdGhlIGdlbmVyaWMgbmFtZSBzeW1saW5rIGluIHVwZGF0ZS1hbHRlcm5hdGl2ZXMgZm9yIG5ldworICAgIGFsdGVybmF0aXZlcy4gQ2xvc2VzOiAjNDIyOTc5CisgICogSW5jbHVkZSB0cmFuc2xhdGlvbnMgYWdhaW4sIHdoaWNoIGRpc2FwcGVhcmVkIGR1ZSB0byBhIGRpcnR5IHNvdXJjZSB0cmVlCisgICAgYW5kIGEgYm9ndXMgTWFrZWZpbGUuYW0gZm9yIHRoZSBtYW4gcGFnZXMuIENsb3NlczogIzQyMzAyOSwgIzQyMzA4NQorCisgLS0gR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPiAgV2VkLCAwOSBNYXkgMjAwNyAyMjoyMjo0NSArMDMwMAorCitkcGtnICgxLjE0LjEpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgIFsgR3VpbGxlbSBKb3ZlciBdCisgICogRml4IHBhcnRpYWwgdXBncmFkZXMgYnkgdGlnaHRlbmluZyBkcGtnLWRldiB2ZXJzaW9uZWQgRGVwZW5kcyB0bworICAgIGRwa2cgMS4xNC4wLCBhbmQgZHBrZyBDb25mbGljdHMgYWdhaW5zdCA8PCBkcGtnLWRldiAxLjE0LjAsIHdoZXJlCisgICAgdGhlIHRyaXBsZXR0YWJsZSBzdXBwb3J0IGZpcnN0IGFwcGVhcmVkLiBDbG9zZXM6ICM0MjI4NDgKKworIC0tIEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4gIFR1ZSwgMDggTWF5IDIwMDcgMTg6MjM6NDkgKzAzMDAKKworZHBrZyAoMS4xNC4wKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICBbIEd1aWxsZW0gSm92ZXIgXQorICAqIE1ha2UgdGhlIGNvcHlyaWdodCBpbmZvcm1hdGlvbiBpbiBkcGtnLWRlYi4xIGFuZCBkcGtnLXNwbGl0LjEgbWF0Y2ggdGhlCisgICAgb25lIGluIHRoZSBzb3VyY2UuIFRoYW5rcyB0byBOaWNvbGFzIEZyYW7Dp29pcy4gQ2xvc2VzOiAjMzc5MzIwCisgICogQWxsb3cgZHBrZy1idWlsZHBhY2thZ2UgdG8gcHJvcGVybHkgb3ZlcnJpZGUgJy1iJyB3aGVuIHBhc3NlZCBhZnRlciAnLUInLgorICAgIFRoYW5rcyB0byBKdWxpYW4gR2lsYmV5LiBDbG9zZXM6ICMzOTc0NzkKKyAgKiBNb3ZlIHJldHJpZXZhbCBvZiB1aWQgYW5kIGdpZCBpbmZvcm1hdGlvbiBmcm9tIGNvbnRyb2xsaWIucGwgaW50byBhCisgICAgZnVuY3Rpb24sIHNvIHRoYXQgc2NyaXB0cyBub3QgbmVlZGluZyBpdCBkbyBub3QgZXhlY3V0ZSB0aGF0IGNvZGUuCisgICAgQmFzZWQgb24gYSBwYXRjaCBieSBSaWt1IFZvaXBpby4gQ2xvc2VzOiAjMzk2ODg0CisgICogRG8gbm90IGJhaWwgb3V0IGluIGRwa2cgd2hlbiBidWlsZGluZyB3aXRob3V0IHN0YXJ0LXN0b3AtZGFlbW9uIHN1cHBvcnQsCisgICAgYnkgY2hlY2tpbmcgaWYgdGhlIG1hY3JvIHZhbHVlIGlzIHRydWUgaW5zdGVhZCBvZiBpdCBiZWluZyBkZWZpbmVkLgorICAgIFRoYW5rcyB0byBNYXJrIFJvc2Vuc3RhbmQuCisgICogTWFrZSBhbGwgcGVybCBzY3JpcHRzIHVzZSBzdHJpY3QgYW5kIHdhcm5pbmdzLCB0byBlYXNlIGNhdGNoaW5nIGVycm9ycy4KKyAgKiBSZWZhY3RvciB1cGRhdGUtYWx0ZXJuYXRpdmVzIGNvZGUsIHdpdGggdGhlIHNpZGUgZWZmZWN0IHRoYXQgbm93IGNvbW1hbmRzCisgICAgb24gbm9uIGV4aXN0aW5nIGxpbmsgZ3JvdXAgZmlsZXMgd2lsbCByZXR1cm4gYW4gZXJyb3IgY29kZSAoZXhjZXB0CisgICAgZm9yIC0tcmVtb3ZlLCBub3cpLiBDbG9zZXM6ICMyNzM0MDcKKyAgKiBBZGQgYSBtaXNzaW5nIG5ld2xpbmUgdG8gYSB3YXJuaW5nIG1lc3NhZ2UgaW4gZHBrZy4gQ2xvc2VzOiAjMzkwOTE0CisgICAgVGhhbmtzIHRvIElhbiBKYWNrc29uLgorICAqIEZpeCB0eXBvIGluIHZhcmlhYmxlIG5hbWUgaW4gZHBrZy1zb3VyY2Ugd2hpY2ggd2FzIGNhdXNpbmcgaXQgdG8gbm90CisgICAgY3JlYXRlIGRpcmVjdG9yaWVzIHdoZW4gZXh0cmFjdGluZyB0aGUgZGlmZi4gQ2xvc2VzOiAjMzc0NjQ1CisgICogRml4IHVwIGFuZCBkb3duIGtleXN0cm9rZXMgaW4gdGhlIGRzZWxlY3QgaGVscCBtZXNzYWdlLiBDbG9zZXM6ICMzODM0MzgKKyAgICBUaGFua3MgdG8gU3ZlbiBKb2FjaGltLgorICAqIENvbnZlcnQgODIyLWRhdGUgdG8gYmUgYSBzaW1wbGUgd3JhcHBlciBhcm91bmQgJ2RhdGUgLVInLiA4MjItZGF0ZSBpcworICAgIG5vdyBkZXByZWNhdGVkIGFuZCBzaG91bGQgbm90IGJlIHVzZWQgYW55bW9yZS4gSXQgbWlnaHQgYmUgcmVtb3ZlZAorICAgIHNvbWV0aW1lIGluIHRoZSBmdXR1cmUuIENsb3NlczogIzMxNjM0LCAjMzY3NzEyLCAjMzE0NDYyCisgICAgVGhhbmtzIHRvIEZyYW5rIExpY2h0ZW5oZWxkLgorICAqIEFkZCAnLmdpdGlnbm9yZScgdG8gdGhlIGRlZmF1bHQgZHBrZy1zb3VyY2UgLWkgcmVnZXguIENsb3NlczogIzQwOTU2NgorICAgIFRoYW5rcyB0byBKdWxpZW4gQ3Jpc3RhdS4KKyAgKiBBZGQgJy5oZycgdG8gdGhlIGRlZmF1bHQgZHBrZy1zb3VyY2UgLWkgcmVnZXguIENsb3NlczogIzQxNDc5NAorICAqIFVzZSBsMTBuLWZyaWVuZGxpZXIgc3RyaW5ncyB0byBkZXNjcmliZSBkZXBlbmRlbmNpZXMuIENsb3NlczogIzM5MDkxNgorICAgIFRoYW5rcyB0byBJYW4gSmFja3Nvbi4KKyAgKiBDaGFuZ2UgcHJpb3JpdHkgZm9yIGRwa2ctZGV2IGZyb20gc3RhbmRhcmQgdG8gb3B0aW9uYWwgdG8gbWF0Y2ggdGhlCisgICAgb3ZlcnJpZGUuCisgICogRG8gbm90IHVzZSBhIGJ1aWxkLXN0YW1wIGluIGRlYmlhbi9ydWxlcy4KKyAgKiBGaXggY29uZnVzaW5nIGJvdHRvbSBzdGF0dXMgbGluZXMgaW4gZHNlbGVjdCwgdW5pZnlpbmcgdGhlbSBieSByZW1vdmluZworICAgIHRoZSBtZXRob2Qgb3IgcGFja2FnZSBuYW1lIGFuZCBjYXBpdGFsaXppbmcuIENsb3NlczogIzkwODUKKyAgKiBDaGVjayBwcm9wZXIgZXJyb3IgdmFsdWUgcmV0dXJuZWQgYnkgQloyX2J6ZXJyb3IuIENsb3NlczogIzQxMDYwNQorICAqIEV4aXQgd2l0aCBhbiBlcnJvciBpbnN0ZWFkIG9mIGFuIGFzc2VydCBpZiBhIGZpbGUgbmFtZSBpcyB0b28gbG9uZyB3aGVuCisgICAgYnVpbGRpbmcgYSAuZGViIHBhY2thZ2UuIENsb3NlczogIzM5MzA2OQorICAqIEV4aXQgd2l0aCBhbiBlcnJvciBpbnN0ZWFkIG9mIGFuIGFzc2VydCBpZiB0aGUgbnVtYmVyIG9mIGNvbmZsaWN0b3JzIGlzCisgICAgZXhjZWVkZWQuIFJlbW92ZSBib2d1cyBjb21tZW50cy4gQ2xvc2VzOiAjMzc3ODU1CisgICogRml4IHJlZ3VsYXIgZXhwcmVzc2lvbiBzcGVjaWFsLWNhc2luZyBPcmlnaW4sIEJ1Z3MgYW5kIE1haW50YWluZXIgZmllbGRzCisgICAgd2hpY2ggd2FzIG1ha2luZyBYW1NCQ10tIGZpZWxkcyBjb250YWluaW5nIHN1Y2ggc3RyaW5ncyB0byBwcm9wYWdhdGUgaW50bworICAgIHRoZSAuZGViIGNvbnRyb2wgZmlsZSB1bnByb2Nlc3NlZC4gVGhhbmtzIHRvIENvbGluIFdhdHNvbi4KKyAgKiBBZGQgc3VwcG9ydCBmb3IgJy0tYWRtaW5kaXInIGluIGRwa2ctYnVpbGRwYWNrYWdlLCBkcGtnLWNoZWNrYnVpbGRkZXBzCisgICAgYW5kIGRwa2ctc2hsaWJkZXBzLiBDbG9zZXM6ICMxNjIzNDgKKyAgKiBDbGVhbmluZyBhbmQgZm9ybWF0IHVuaWZpY2F0aW9uIG9mIG1hbnVhbCBwYWdlcy4KKyAgKiBNYWtlIHRoZSBvdmVycmlkZS1maWxlIGFyZ3VtZW50IHRvIGRwa2ctc2NhbnBhY2thZ2VzIG9wdGlvbmFsLgorICAqIFJlZmFjdG9yIGNvbXByZXNzaW9uIGZpbHRlcmluZyBjb2RlLgorICAqIFNwbGl0IG92ZXJyaWRlIGZpbGUgaW5mb3JtYXRpb24gZnJvbSBkcGtnLXNjYW5wYWNrYWdlcy4xIGludG8KKyAgICBkZWItb3ZlcnJpZGUuNSBtYW51YWwgcGFnZS4KKyAgKiBTcGxpdCBkcGtnLXNvdXJjZS4xIGludG8gaW5kZXBlbmRlbnQgbWFuIHBhZ2VzLCBuYW1lbHkgZGViLXN1YnN0dmFycy41LAorICAgIGRlYi1zaGxpYnMuNSwgZHBrZy1idWlsZHBhY2thZ2UuMSwgZHBrZy1kaXN0YWRkZmlsZS4xLCBkcGtnLWdlbmNoYW5nZXMuMSwKKyAgICBkcGtnLWdlbmNvbnRyb2wuMSwgZHBrZy1wYXJzZWNoYW5nZWxvZy4xIGFuZCBkcGtnLXNobGliZGVwcy4xLgorICAqIFN1cHBvcnQgYnVpbGRpbmcgYmluYXJ5IHBhY2thZ2VzIHdpdGggdGhlIG1lbWJlciBkYXRhLnRhci5sem1hIGNvbXByZXNzZWQKKyAgICB3aXRoIGx6bWEuCisgICogUmVxdWlyZSBnZXR0ZXh0IDAuMTYuMS4KKyAgKiBTaG93IHRoZSBlcG9jaCAoaWYgcHJlc2VudCkgd2hlbiBkaXNwbGF5aW5nIHBhY2thZ2UgdmVyc2lvbnMuCisgICAgQ2xvc2VzOiAjMTA3NDQ5LCAjMTc5OTEzLCAjMzQ1NTk0LCAjMzkzOTI0LCAjNDA1NjY4CisgICAgQmFzZWQgb24gYSBwYXRjaCBieSBKZWZmcmV5IFcuIEJha2VyLgorICAqIFN3aXRjaCBmcm9tIHBzZXVkby10YWdzIHRvIHVzZXJ0YWdzLCBhbmQgdXBkYXRlIHRoZSBkb2N1bWVudGF0aW9uLgorICAqIEZpeCB0eXBvIGluIEdlcm1hbiBkcGtnIG1hbiBwYWdlLiBDbG9zZXM6ICM0MTYxNjcKKyAgICBUaGFua3MgdG8gTWFydGluIFdlaXMuCisgICogUHJvcGVybHkgc29ydCBVcGxvYWRlcnMgZmllbGQgaW4gZ2VuZXJhdGVkIC5kc2MgZmlsZXMuCisgICogUmVvcmRlciBhIGJpdCB0aGUgZmllbGRzIGluIG91dHB1dCBmaWxlcy4KKyAgKiBTcGVlZCB1cCBkcGtnLXNobGliZGVwcyBieSBhdm9pZGluZyBkb2luZyBhIGRwa2ctcXVlcnkgZm9yIGR1cGVkCisgICAgbGlicmFyaWVzLiBUaGFua3MgdG8gQWFyb24gTS4gVWNrby4gQ2xvc2VzOiAjNDIxMjkwCisgICogR2VuZXJhbGl6ZSBzb3VyY2UgYXJjaGl0ZWN0dXJlIGhhbmRsaW5nIGJ5IGFic3RyYWN0aW5nIGl0IHRocm91Z2ggdGhlIG5ldworICAgIERlYmlhbiB0cmlwbGV0IGFuZCB0aGUgbmV3IHRyaXBsZXR0YWJsZS4KKyAgKiBBZGQgYXJtZWwgc3VwcG9ydCB0byBvc3RhYmxlIGFuZCB0cmlwbGV0dGFibGUuIENsb3NlczogIzQxNDA4NworCisgIFsgVXBkYXRlZCBkcGtnIHRyYW5zbGF0aW9ucyBdCisgICogRHV0Y2ggKEJhcnQgQ29ybmVsaXMpLgorICAqIEZyZW5jaCAoRnLDqWTDqXJpYyBCb3RoYW15KS4KKyAgKiBQb2xpc2ggKFJvYmVydCBMdWJlcmRhKS4KKyAgKiBSb21hbmlhbiAoRWRkeSBQZXRyacWfb3IpLgorICAqIFNpbXBsaWZpZWQgQ2hpbmVzZSAoQW50aG9ueSBXb25nKS4gQ2xvc2VzOiAjNDE1MzIwCisgICogVHJhZGl0aW9uYWwgQ2hpbmVzZSAoQW50aG9ueSBXb25nKS4gQ2xvc2VzOiAjNDE1MjMwCisKKyAgWyBBZGRlZCBkcGtnIHRyYW5zbGF0aW9ucyBdCisgICogRXN0b25pYW4gYWRkZWQgKEl2YXIgU21vbGluKS4gQ2xvc2VzOiAjNDIyNDA0CisgICogS3VyZGlzaCBhZGRlZCAoRXJkYWwgUm9uYWhpKS4gQ2xvc2VzOiAjNDE4MTU0CisgICogTWFyYXRoaSBhZGRlZCAoUHJpdGkgUGF0aWwpLiBDbG9zZXM6ICM0MTY4MTAKKworICBbIFVwZGF0ZWQgbWFuIHBhZ2VzIHRyYW5zbGF0aW9ucyBdCisgICogR2VybWFuIChHZXJtYW4gbDEwbiB0ZWFtKS4gQ2xvc2VzOiAjNDE4NTI4CisgICogUG9saXNoIChSb2JlcnQgTHViZXJkYSkuCisKKyAgWyBVcGRhdGVkIGRzZWxlY3QgdHJhbnNsYXRpb25zIF0KKyAgKiBEdXRjaCAoQmFydCBDb3JuZWxpcykuCisgICogUG9saXNoIChSb2JlcnQgTHViZXJkYSkuCisKKyAtLSBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+ICBUdWUsIDA4IE1heSAyMDA3IDExOjExOjUwICswMzAwCisKK2Rwa2cgKDEuMTMuMjUpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgIFsgR3VpbGxlbSBKb3ZlciBdCisgICogRml4IHllYXIgMjAxOCBpbiBjaGFuZ2Vsb2cgZm9yIE1pY2hhZWwgQWxhbiBEb3JtYW4ncyB1cGxvYWQgaW4gMTk5OCwKKyAgICB3aGljaCB3YXMgY29uZnVzaW5nIHRoZSBjaGFuZ2Vsb2cgcGFyc2Vycy4gQ2xvc2VzOiAjNDAyNTI2CisgICogRG9jdW1lbnQgaW4gaXRzIG1hbiBwYWdlIHRoYXQgdXBkYXRlLWFsdGVybmF0aXZlcyByZXF1aXJlcyBjb29wZXJhdGlvbgorICAgIGZyb20gYWxsIHBhY2thZ2VzIGRlYWxpbmcgd2l0aCB0aGUgc3BlY2lmaWMgZmlsZS4gQ2xvc2VzOiAjMzk2MzM4CisgICAgVGhhbmtzIHRvIFRvbWFzIFBvc3Bpc2VrIDx0cG9fZGViQHNvdXJjZXBvbGUuY2g+LgorICAqIFJlcXVpcmUgUE9TSVggaW5zaWRlIHN1YnByb2NlcnIgaW4gY29udHJvbGxpYi5wbC4gQ2xvc2VzOiAjMzkwNjM2CisgICAgVGhhbmtzIHRvIEJyZW5kYW4gTydEZWEgPGJvZEBkZWJpYW4ub3JnPi4KKyAgKiBTdXBwb3J0IGV4dHJhY3RpbmcgbHptYSBjb21wcmVzc2VkIHNvdXJjZSBhbmQgYmluYXJ5IHBhY2thZ2VzLAorICAgIGFuZCBhZGQgYSBTdWdnZXN0cyBvbiBwYWNrYWdlIGx6bWEuIENsb3NlczogIzM0NzcxNQorICAqIEFkZCAnL2VtdWwvaWEzMi1saW51eCcgYmlhcmNoIHBhdGhzIHRvIGRwa2ctc2hsaWJkZXBzLiBDbG9zZXM6ICM0MDMyMTYKKyAgKiBSZW1vdmUgbm9uLW1vZGlmaWVkIC9ldGMvZHBrZy9kcGtnLmNmZyBjb25maWd1cmF0aW9uIGZpbGUgd2hlbiB1cGdyYWRpbmcKKyAgICBmcm9tIHZlcnNpb25zIDEuOS4yMSB0aHJvdWdoIDEuMTAuMjgsIHRvIGF2b2lkIGdldHRpbmcgcHJvbXB0ZWQgYWJvdXQKKyAgICBjb25mZmlsZSBjaGFuZ2VzLiBDbG9zZXM6ICMzOTgwNjEKKworICBbIFVwZGF0ZWQgZHBrZyB0cmFuc2xhdGlvbnMgXQorICAqIENoaW5lc2UgKFRyYWRpdGlvbmFsLCBBc2hvIFllaCkuCisgICogS29yZWFuIChTdW5qYWUgUGFyaykuIENsb3NlczogIzM5NDEzNSwgIzQwNDkzOAorICAqIE5vcndlZ2lhbiBCb2ttYWwgKEhhbnMgRnJlZHJpayBOb3JkaGF1ZykuIENsb3NlczogIzM5MTE0MworICAqIE5lcGFsaSAoU2hpdmEgUHJhc2FkIFBva2hhcmVsKS4KKyAgKiBSb21hbmlhbiAoRWRkeSBQZXRyacWfb3IpLgorICAqIENhdGFsYW4gKEpvcmTDoCBQb2xvKS4KKyAgKiBTd2VkaXNoIChQZXRlciBLYXJsc3NvbikuCisgICogVmlldG5hbWVzZSAoQ2x5dGllIFNpZGRhbGwpLiBDbG9zZXM6ICMzOTkzNDMKKworICBbIEFkZGVkIGRwa2cgdHJhbnNsYXRpb25zIF0KKyAgKiBQdW5qYWJpIChBIFMgQWxhbSkuCisKKyAgWyBVcGRhdGVkIGRwa2ctZGV2IHRyYW5zbGF0aW9ucyBdCisgICogQ2F0YWxhbiAoSm9yZGkgTWFsbGFjaCkuCisKKyAgWyBVcGRhdGVkIGRzZWxlY3QgdHJhbnNsYXRpb25zIF0KKyAgKiBLb3JlYW4gKFN1bmphZSBQYXJrKS4gQ2xvc2VzOiAjNDA0OTQzCisKKyAtLSBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+ICBUdWUsICAyIEphbiAyMDA3IDAwOjIzOjU3ICswMjAwCisKK2Rwa2cgKDEuMTMuMjQpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgIFsgR3VpbGxlbSBKb3ZlciBdCisgICogRml4IGRzZWxlY3Qgc2VnZmF1bHQgYnkgYWRkaW5nIGEgZmllbGQgZGVzY3JpcHRpb24gbWF0Y2hpbmcgdGhlCisgICAgZGVwZW5kZW5jeSBmaWVsZCBlbnVtIHBvc2l0aW9uLiBDbG9zZXM6ICMzOTI3MzEsICMzOTI3MjQKKworICBbIFVwZGF0ZWQgZHBrZyBUcmFuc2xhdGlvbnMgXQorICAqIE5lcGFsaSAoU2hpdmEgUHJhc2FkIFBva2hhcmVsKS4gQ2xvc2VzOiAjMzczNzI4CisKKyAtLSBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+ICBGcmksIDEzIE9jdCAyMDA2IDE2OjM0OjM5ICswMzAwCisKK2Rwa2cgKDEuMTMuMjMpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgIFsgR3VpbGxlbSBKb3ZlciBdCisgICogQWRkIGluaXRpYWwgc3VwcG9ydCBmb3IgdGhlIEJyZWFrcyBmaWVsZCwgYnkgcGFyc2luZyBidXQgcmVqZWN0aW5nIGl0LgorICAgIFRoYW5rcyB0byBJYW4gSmFja3NvbiA8aXdqQHVidW50dS5jb20+LiBDbG9zZXM6ICMzNzU3MDMKKyAgKiBVc2UgZHBrZy1hcmNoaXRlY3R1cmUgZnJvbSB0aGUgc291cmNlIHRyZWUgdG8gZ2V0IHRoZSB0YXJnZXQgRGViaWFuCisgICAgYXJjaGl0ZWN0dXJlLCBpbnN0ZWFkIG9mIGR1cGxpY2F0aW5nIHRoZSBsb2dpYyBpbiB0aGUgbTQgZmlsZXMuCisgICogUmVtb3ZlIGNvbW1lbnQgaGVhZGVycyBpbiBkc2VsZWN0L2hlbHBtc2dzLntjYyxofSBhYm91dCB0aGUgZmlsZXMgYmVpbmcKKyAgICBhdXRvZ2VuZXJhdGVkLCByZXBsYWNlIHRoZW0gd2l0aCBhIHByb3BlciBsaWNlbnNlIGFuZCBjb3B5cmlnaHQgY29tbWVudC4KKyAgICBDbG9zZXM6ICMzODIzMDgKKyAgKiBBZGQgYSBuZXcgbGluZSBhdCB0aGUgZW5kIG9mIG00L2NvbXBpbGVyLm00IGZpbGUsIHRvIGNvcGUgd2l0aCBhbgorICAgIGF1dG9yZWNvbmYgZmFpbHVyZSBkdWUgdG8gdGhlIG5ldyBtNCAxLjQuNy4KKworICBbIE5pY29sYXMgRnJhbsOnb2lzIF0KKyAgKiBTcGVjaWZ5IC0tbnVsbCBiZWZvcmUgdGhlIC1UIHRhcidzIG9wdGlvbiB0byBhdm9pZCB0aGUgInRhcjogLTogZmlsZSBuYW1lCisgICAgcmVhZCBjb250YWlucyBudWwgY2hhcmFjdGVyIiB3YXJuaW5nLgorICAgIENsb3NlczogIzM3NjM1MSwgIzM3NTc0OSwgIzM3NjcyNCwgIzM3NzI3OQorCisgIFsgQWRkZWQgZHBrZyBUcmFuc2xhdGlvbnMgXQorICAqIER6b25na2hhIChLaW5sZXkgVHNoZXJpbmcpLgorCisgIFsgVXBkYXRlZCBkcGtnIFRyYW5zbGF0aW9ucyBdCisgICogQmFzcXVlIChQaWFycmVzIEJlb2JpZGUpLiBDbG9zZXM6ICMzNzUxMTgKKyAgKiBCcmF6aWxpYW4gUG9ydHVndWVzZSAoQW5kcmUgTHVpcyBMb3BlcykuCisgICogQ2F0YWxhbiAoUm9iZXJ0IE1pbGxhbiwgSm9yZGkgTWFsbGFjaCkuIENsb3NlczogIzM4MzQ0OAorICAqIEN6ZWNoIChNaXJvc2xhdiBLdXJlKS4KKyAgKiBEYW5pc2ggKENsYXVzIEhpbmRzZ2F1bCkuCisgICogRHV0Y2ggKEJhcnQgQ29ybmVsaXMpLgorICAqIER6b25na2hhIChUZW56aW4gRGVuZHVwKS4gQ2xvc2VzOiAjMzg4MTkyCisgICogRnJlbmNoIChGcsOpZMOpcmljIEJvdGhhbXkpLgorICAqIEdhbGljaWFuIChKYWNvYm8gVGFycmlvKS4KKyAgKiBHZXJtYW4gKFN2ZW4gSm9hY2hpbSkuIENsb3NlczogIzM4MTQwOSwgIzM4MTc0MAorICAqIEh1bmdhcmlhbiAoU1pFUlbDgUMgQXR0aWxhKS4KKyAgKiBJdGFsaWFuIChTdGVmYW5vIENhbmVwYSwgRGF2aWRlIFZpdGkpLiBDbG9zZXM6ICMzODc4MjEKKyAgKiBKYXBhbmVzZSAoS2Vuc2hpIE11dG8pLiBDbG9zZXM6ICMzODY5NjMKKyAgKiBLaG1lciAoS2hvZW0gU29raGVtKS4gQ2xvc2VzOiAjMzc1MDk5CisgICogUG9ydHVndWVzZSAoTWlndWVsIEZpZ3VlaXJlZG8sIFJ1aSBCcmFuY28pLgorICAqIFJvbWFuaWFuIChFZGR5IFBldHJpxZ9vcikuCisgICogUnVzc2lhbiAoWXVyaSBLb3psb3YpLiBDbG9zZXM6ICMzNzY3NDYsICMzOTExNDMKKyAgKiBTbG92YWsgKFBldGVyIE1hbm4pLiBDbG9zZXM6ICMzODcyODIKKyAgKiBTcGFuaXNoIChKYXZpZXIgRmVybmFuZGV6LVNhbmd1aW5vKS4gQ2xvc2VzOiAjMzg2NzU5CisgICogU3dlZGlzaCAoRGFuaWVsIE55bGFuZGVyKS4gQ2xvc2VzOiAjMzgzNjQzCisgICogVmlldG5hbWVzZSAoQ2x5dGllIFNpZGRhbGwpLiBDbG9zZXM6ICMzODM1ODgKKworICBbIEFkZGVkIGRwa2ctZGV2IFRyYW5zbGF0aW9ucyBdCisgICogQ2F0YWxhbiAoSm9yZGkgTWFsbGFjaCkuCisgICogRnJlbmNoIChQaGlsaXBwZSBCYXRhaWxsZXIpLgorCisgIFsgVXBkYXRlZCBkc2VsZWN0IFRyYW5zbGF0aW9ucyBdCisgICogQnJhemlsaWFuIFBvcnR1Z3Vlc2UgKEFuZHJlIEx1aXMgTG9wZXMpLgorICAqIENhdGFsYW4gKFJvYmVydCBNaWxsYW4sIEpvcmRpIE1hbGxhY2gpLgorICAqIERhbmlzaCAoQ2xhdXMgSGluZHNnYXVsKS4KKyAgKiBHZXJtYW4gKFN2ZW4gSm9hY2hpbSkuIENsb3NlczogIzM4NDg0MworICAgIChTdmVuIGlzIG5vdyB0aGUgbmV3IEdlcm1hbiB0cmFuc2xhdGlvbiBtYWludGFpbmVyIGZvciBkcGtnIGFuZCBkc2VsZWN0KS4KKyAgKiBIdW5nYXJpYW4gKFNaRVJWw4FDIEF0dGlsYSkuCisgICogSW5kb25lc2lhbiAoQXJpZWYgUyBGaXRyaWFudG8pLiBDbG9zZXM6ICMzOTExNDQKKyAgKiBJdGFsaWFuIChTdGVmYW5vIENhbmVwYSkuCisgICogSmFwYW5lc2UgKEtlbnNoaSBNdXRvKS4KKyAgKiBOb3J3ZWdpYW4gQm9rbcOlbCAoSGFucyBGci4gTm9yZGhhdWcpLgorICAqIFJ1c3NpYW4gKFl1cmkgS296bG92KS4KKyAgKiBTbG92YWsgKFBldGVyIE1hbm4pLgorICAqIFNwYW5pc2ggKEphdmllciBGZXJuw6FuZGV6LVNhbmd1aW5vIFBlw7FhKS4gQ2xvc2VzOiAjMzkxMTQ0CisgICogU3dlZGlzaCAoRGFuaWVsIE55bGFuZGVyKS4KKyAgKiBWaWV0bmFtZXNlIChDbHl0aWUgU2lkZGFsbCkuCisKKyAgWyBVcGRhdGVkIG1hbiBwYWdlcyB0cmFuc2xhdGlvbnMgXQorICAqIEZyZW5jaCAoUGhpbGlwcGUgQmF0YWlsbGVyKS4KKyAgKiBHZXJtYW4gKEhlbGdlIEtyZXV0em1hbm4pLiBDbG9zZXM6ICMzNzkwMzAKKworICBbIEFkZGVkIG1hbiBwYWdlcyB0cmFuc2xhdGlvbnMgXQorICAqIEdlcm1hbiAoSGVsZ2UgS3JldXR6bWFubikuCisgICAgQ2xvc2VzOiAjMzc5Mjg2LCAjMzc5Mjk4LCAjMzc5NDE3LCAjMzc5NDMzLCAjMzc5NjYxLCAjMzc5Nzk4LCAjMzc5ODI1CisgICAgQ2xvc2VzOiAjMzc5OTg1LCAjMzgwMTMwLCAjMzgwMjM5LCAjMzgwMzY1LCAjMzgxMDQ3LCAjMzgwNjYwLCAjMzgwNDQzCisgICAgQ2xvc2VzOiAjMzgxMzQ5LCAjMzgxNDg4CisgICogSmFwYW5lc2UgKEtJU0UgSGlyb3NoaSkuCisgICAgQ2xvc2VzOiAjMzgxMTQxLCAjMzgxODY1LCAjMzg0NzY4LCAjMzg1Njc1LCAjMzg2OTY1LCAjMzg4ODM3CisKKyAtLSBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+ICBUaHUsIDEyIE9jdCAyMDA2IDAyOjU2OjA5ICswMzAwCisKK2Rwa2cgKDEuMTMuMjIpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgIFsgR3VpbGxlbSBKb3ZlciBdCisgICogVmVyc2lvbiB0aGUgcG80YSBCdWlsZC1EZXBlbmRzIHRvID49IDAuMjMgYXMgd2UgYXJlIHVzaW5nIG9wdGlvbnMKKyAgICBpbnRyb2R1Y2VkIGluIHRoYXQgdmVyc2lvbi4gVGhhbmtzIHRvIFNlcmdpbyBHZWxhdG8uIENsb3NlczogIzM3MDUzNgorICAqIEFkZCAnLmJ6cnRhZ3MnIGRpcmVjdG9yeSB0byBkZWZhdWx0IGRwa2ctc291cmNlIC1pIHJlZ2V4LgorICAgIFN1Z2dlc3RlZCBieSBBZGVvZGF0byBTaW3Dsy4gQ2xvc2VzOiAjMzcwMzkyCisgICogUHJpbnQgdXBkYXRlLWFsdGVybmF0aXZlcyAnLS1jb25maWcnIGxpc3RpbmcgbGF5b3V0IGV2ZW5seSBzcGFjZWQuCisgICAgQ2xvc2VzOiAjMzI1ODk1CisgICogQ2xhcmlmeSB0aGUgbGVnZW5kIGluIHVwZGF0ZS1hbHRlcm5hdGl2ZXMgJy0taGVscCcgKEFuZHJldyBGZXJyaWVyKS4KKyAgICBDbG9zZXM6ICMzMDUzMTgKKyAgKiBBZGQgdGhlIHNvdXJjZSB2ZXJzaW9uIGluc2lkZSBwYXJlbnRoZXNpcyB0byB0aGUgU291cmNlIGZpZWxkIGluIHRoZQorICAgIGdlbmVyYXRlZCAuY2hhbmdlcyBhbmQgYmluYXJ5IHBhY2thZ2VzIGlmIHRoZSBiaW5hcnkgcGFja2FnZSB2ZXJzaW9uCisgICAgZGlmZmVycyAobGlrZSBpbiBiaW5OTVVzKS4gQ2xvc2VzOiAjNjI1MjkKKyAgKiBBZGQgbWlzc2luZyBjb21tZW50IHNlcnZpbmcgYXMgZG9jdW1lbnRhdGlvbiBhYm91dCBhYm9ydC1yZW1vdmUgb24KKyAgICByZW1vdmFsIGluIGRwa2cucG9zdGluc3QgKEp1c3RpbiBQcnl6YnkpLiBDbG9zZXM6ICMzNzIxNDUKKyAgKiBGaXggdHlwbyBpbiBkcGtnLWRlYiBtYW5wYWdlIChSb2JlcnQgTHViZXJkYSkuIENsb3NlczogIzM3Mzk5OQorICAqIENsYXJpZnkgZHBrZy1hcmNoaXRlY3R1cmUgbmV3IG9wdGlvbnMgJy1lJyBhbmQgJy1pJyBpbiBtYW4gcGFnZSwgYWRkCisgICAgYmFja3dhcmQgY29tcGF0aWJpbGl0eSBpbmZvcm1hdGlvbiBhbmQgZ2l2ZSBzb21lIGV4YW1wbGVzLgorICAgIFRoYW5rcyBmb3IgdGhlIGluaXRpYWwgc3VnZ2VzdGlvbnMgdG8gSnVuaWNoaSBVZWthd2EuIENsb3NlczogIzM3MDgzMAorICAqIE1vZGlmaWVkIHNvbWUgc3RyaW5ncyB0byBiZSBhYmxlIHRvIG1lcmdlIHRoZW0gaW4gdGhlIC5wb3QgZmlsZXMuCisgICogQWRkIG5ldyAnLS11bWFzaycgb3B0aW9uIHRvIHN0YXJ0LXN0b3AtZGFlbW9uLiBDbG9zZXM6ICMzNjgwMDMKKworICBbIEZyYW5rIExpY2h0ZW5oZWxkIF0KKyAgKiBkcGtnLXNvdXJjZSBpc3N1ZWQgc3B1cmlvdXMgd2FybmluZ3MgYWJvdXQgZmllbGRzIGRlZmluZWQgd2l0aAorICAgIFhCLS4gVGhleSBub3cgZ2V0IGNvcnJlY3RseSBzdXBwcmVzc2VkLiBDbG9zZXM6ICMzNzQxNTQKKyAgKiBHaXZlIGEgY29ycmVjdCB3YXJuaW5nIHdoZW4gdGhlIHVzZXIgcmVxdWVzdGVkIGFuIHVua25vd24KKyAgICBzaWduIGNvbW1hbmQgdGhhdCB3ZSB3aWxsIGRlZmF1bHQgdG8gYSBwZ3Agc3R5bGUgaW50ZXJmYWNlLgorICAgIENsb3NlczogIzEzMzQ3MAorCisgIFsgVXBkYXRlZCBkcGtnIFRyYW5zbGF0aW9ucyBdCisgICogUm9tYW5pYW4gKEVkZHkgUGV0cmnFn29yKS4KKyAgKiBHYWxpY2lhbiAoSmFjb2JvIFRhcnJpbykuCisgICogRnJlbmNoIChDaHJpc3RpYW4gUGVycmllcikuCisgICogU3dlZGlzaCAoUGV0ZXIgS2FybHNzb24pLgorICAqIEJhc3F1ZSAoUGlhcnJlcyBCZW9iaWRlKS4gQ2xvc2VzOiAjMzczMTA3CisgICogUG9saXNoIChSb2JlcnQgTHViZXJkYSkuCisgICogQ2F0YWxhbiAoR3VpbGxlbSBKb3ZlcikuCisKKyAgWyBOZXcgZHBrZyBUcmFuc2xhdGlvbnMgXQorICAqIE5lcGFsaSAoUGFyYXMgUHJhZGhhbikuIENsb3NlczogIzM3MzcyOAorCisgIFsgVXBkYXRlZCBkc2VsZWN0IFRyYW5zbGF0aW9ucyBdCisgICogU2ltcGxpZmllZCBDaGluZXNlIChLb3YgVGNoYWkpLiBDbG9zZXM6ICMzNjYyNjAKKworICBbIFVwZGF0ZWQgbWFuIHBhZ2VzIHRyYW5zbGF0aW9ucyBdCisgICogUG9saXNoIChSb2JlcnQgTHViZXJkYSkuCisKKyAgWyBDaHJpc3RpYW4gUGVycmllciBdCisgICogVHlwbyBmaXggaW4gdXBkYXRlLWFsdGVybmF0aXZlcyAoImFsdGVybmF0aXZzZSIpLiBUaGFua3MgdG8gRWRkeSBQZXRyaXNvcgorICAgIGZvciBzcG90dGluZyBpdC4gVHJhbnNsYXRpb25zIHVuZnV6emllZC4KKyAgKiBNYWtlIHNpbWlsYXIgbWVzc2FnZXMgaW4gZHBrZy1zdGF0b3ZlcnJpZGUgYW5kIGRwa2ctZGl2ZXJ0IGV4YWN0bHkgc2ltaWxhcgorICAgIFRoYW5rcyB0byBFZGR5IFBldHJpc28gZm9yIHNwb3R0aW5nIHRoZW0sIGFnYWluLgorCisgLS0gR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPiAgV2VkLCAyMSBKdW4gMjAwNiAxODowMzoyOSArMDMwMAorCitkcGtnICgxLjEzLjIxKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICBbIEd1aWxsZW0gSm92ZXIgXQorICAqIERpc2FtYmlndWF0ZSBlcnJvciBtZXNzYWdlIGFib3V0IGNvbmZsaWN0aW5nIGNvbW1hbmQgbGluZSBhY3Rpb25zIGJ5CisgICAgcHJvdmlkaW5nIGJvdGggbG9uZyBhbmQgc2hvcnQgb3B0aW9uIG5hbWVzLiBCYXNlZCBvbiBhIHN1Z2dlc3Rpb24gYnkKKyAgICBKb3NpcCBSb2Rpbi4gQ2xvc2VzOiAjNDU1NzUKKyAgKiBBZGQgJy9saWIzMicgYW5kICcvdXNyL2xpYjMyJyB0byB0aGUgZHBrZy1zaGxpYmRlcHMgbGlicmFyeSBwYXRoIHNlYXJjaAorICAgIGxpc3QuIENsb3NlczogIzM2Nzg5MgorICAqIFJldmVydCB1c2FnZSBvZiBFbmdsaXNoIHBlcmwgbm9uLWVzc2VudGlhbCBtb2R1bGUgZnJvbSBpbnN0YWxsLWluZm8uCisgICAgQ2xvc2VzOiAjMzY5OTI4LCAjMzY5OTU4LCAjMzcwMTU3LCAjMzcwMTc0LCAjMzcwMjEwCisgICogUHJpbnQgdGhlIGNvcnJlY3QgZmlsZSBiZWluZyBwYXJzZWQgYnkgZHBrZy1wYXJzZWNoYW5nZWxvZydzIGRlYmlhbgorICAgIHBhcnNlci4gQ2xvc2VzOiAjMzY4OTYxCisgICogRml4IGRlcGVuZGVuY3kgY3ljbGUgYnJlYWtpbmcgaW4gdGhlIGNhc2Ugd2hlbiBldmVyeSBsaW5rIGludm9sdmVzCisgICAgYSBQcm92aWRlcyAoSWFuIEphY2tzb24pLiBUaGlzIGlzIGEgcHJvcGVyIGZpeCBmb3IgIzM0OTQ0Mi4KKyAgICBDbG9zZXM6ICMzNzAwMTcKKworICBbIFVwZGF0ZWQgZHBrZyBUcmFuc2xhdGlvbnMgXQorICAqIEN6ZWNoIChNaXJvc2xhdiBLdXJlKS4KKyAgKiBWaWV0bmFtZXNlIChDbHl0aWUgU2lkZGFsbCkuCisKKyAtLSBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+ICBTdW4sICA0IEp1biAyMDA2IDE5OjAyOjQ0ICswMzAwCisKK2Rwa2cgKDEuMTMuMjApIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgIFsgRnJhbmsgTGljaHRlbmhlbGQgXQorICAqIEFkZCBnZXR0ZXh0IHN1cHBvcnQgZm9yIHRoZSBQZXJsIHNjcmlwdHMuIEJhc2VkIG9uIGEgcGF0Y2ggYnkKKyAgICBOaWNvbGFzIEZyYW7Dp29pcy4gQ2xvc2VzOiAjMTY1ODQzCisgICogT25seSBwcmludCB1c2FnZSBpbmZvcm1hdGlvbiBvZiBkcGtnLXNjYW5wYWNrYWdlcyBvbiBzdGRvdXQKKyAgICBpZiByZXF1ZXN0ZWQgZXhwbGljaXRseS4gVXNlIHN0ZGVyciBpbiBjYXNlIG9mIGVycm9yLgorICAgIENsb3NlczogIzM2NjY1OQorICAqIEFkZCByZW1hcmtzIHRvIGRwa2ctc2NhbnNvdXJjZXMgYW5kIGRwa2ctc2NhbnBhY2thZ2VzCisgICAgbWFuIHBhZ2VzIGFib3V0IHRoZSBuZWVkIHRvIGNvbXByZXNzIHRoZSBnZW5lcmF0ZWQgZmlsZXMKKyAgICB0byBiZSBhYmxlIHRvIGFjY2VzcyB0aGVtIHZpYSBhcHQuIENsb3NlczogIzY1ODM5CisgICogQWxsb3cgJysnIGFuZCAnLicgaW4gZGlzdHJpYnV0aW9uIG5hbWVzIGluIERlYmlhbiBjaGFuZ2Vsb2dzLgorICAgIEJhc2VkIG9uIGEgcGF0Y2ggYnkgSm9obiBXcmlnaHQuCisgICAgQ2xvc2VzOiAjMzYxMTcxCisgICogVXNlIHRoZSBEZWJpYW4ga2V5cmluZyBpbiBkcGtnLXNvdXJjZSB3aGVuIGNoZWNraW5nIHNpZ25hdHVyZXMKKyAgICBvZiAuZHNjIGZpbGVzLCBpZiBhdmFpbGFibGUuIENsb3NlczogIzM2NDcyNgorICAqIExldCBkcGtnLWJ1aWxkcGFja2FnZSBwYXNzIHRocm91Z2ggYWxsIHJlbW90ZWx5IHNlbnNpYmxlCisgICAgLXNYIG9wdGlvbnMgdG8gZHBrZy1zb3VyY2UgKC1zW25zQWt1cktVUl0gY3VycmVudGx5KS4KKyAgICBDbG9zZXM6ICMzNjU4NgorICAqIEltcHJvdmUgdGhlIGRlc2NyaXB0aW9uIG9mIC0tc2hvd2Zvcm1hdCBpbiBkcGtnLWRlYgorICAgIG1hbiBwYWdlIGFuZCBhZGQgYSBwb2ludGVyIHRvIHRoZSBjb21wbGV0ZSBkZXNjcmlwdGlvbgorICAgIG9mIHRoZSBvcHRpb24gaW4gZHBrZy1xdWVyeS4KKyAgKiBEb24ndCBzcGV3IG91dCBnYXJiYWdlIGZyb20gZHBrZy1kZWIsIGlmIHRoZSBzZWNvbmQgYXJndW1lbnQKKyAgICB0byAtSSBpcyBhIGFic29sdXRlIGZpbGVuYW1lLiBCYXNlZCBvbiBhIHBhdGNoIGJ5IElhbiBFdXJlLgorICAgIENsb3NlczogIzM1NTczCisgICogRml4IC0taWdub3JlLWRlcGVuZHMgYXJndW1lbnQgdmFsdWUgcGFyc2luZy4gQ2xvc2VzOiAjMTY5MTI1CisgICogQ29tcGxldGVseSByZW1vdmUgbWQ1c3VtIGRpdmVyc2lvbiBtYWRuZXNzLiAgSW5zdGVhZCwgd2UgUHJlLURlcGVuZAorICAgIG9uIGEgdmVyc2lvbiBvZiB0ZXh0dXRpbHMgd2hpY2ggcHJvdmlkZXMgL3Vzci9iaW4vbWQ1c3VtLiAgV2UgcmVseSBvbgorICAgIHRoZSBsb2dpYyBpbiBjb3JldXRpbHMgdG8gcmVtb3ZlIG91ciBkaXZlcnNpb25zLiBQYXRjaCBieQorICAgIElhbiBKYWNrc29uLiBDbG9zZXM6ICMzMTU3ODQsICMzMTM2MDUKKyAgKiBUcnkgaGFyZGVyIHRvIGRldGVjdCBkZXBlbmRlbmN5IGN5Y2xlcyB0aGF0IGNvbnRhaW4gUHJvdmlkZXMKKyAgICBsaW5rcy4gQ2xvc2VzOiAjMzQ5MTIwLCAjMzQ5NDQyCisgICogVXBkYXRlIGFyY2h0YWJsZSB0byByZWZsZWN0IGN1cnJlbnQgYXJjaGl2ZTogQWRkIGFtZDY0IGFuZCByZW1vdmUKKyAgICBzaC4gQ2xvc2VzOiAjMzY3MzI5CisgICogRG9uJ3QgY2xhaW0gaW4gZHBrZyBtYW4gcGFnZSB0aGF0IHdlIHNldCBEUEtHX09MRF9DT05GRklMRSBhbmQKKyAgICBEUEtHX05FV19DT05GRklMRSBvbiBzdWIgc2hlbGxzIHNpbmNlIHdlIGFjdHVhbGx5IGRvbid0LgorICAqIEZpeCBwcmludGluZyBvZiB1c2VyIGRlZmluZWQgZmllbGRzIHdpdGggLS1zaG93Zm9ybWF0IGFuZAorICAgIGRvY3VtZW50IHRoZSBleGlzdGVuY2Ugb2YgdGhpcyBmZWF0dXJlIGluIGRwa2ctcXVlcnkgbWFuIHBhZ2UuCisgICogTWFrZSAtLWZvcmdldC1vbGQtdW5hdmFpbCBtb3JlIHJlbGlhYmxlIGJ5IGRlbGV0aW5nIGFyY2hpdGVjdHVyZQorICAgIGluZm9ybWF0aW9uIG9mIHJlbW92ZWQgcGFja2FnZXMuIFBhdGNoIGJ5IFBpb3RyIEVuZ2Vsa2luZy4KKyAgICBDbG9zZXM6ICMyMDg1MzIKKyAgKiBXaGVuIGJ1aWxkaW5nIHBhY2thZ2VzIHdpdGggZHBrZy1kZWIgZ2l2ZSBhIG1vcmUgdXNlZnVsIGVycm9yCisgICAgbWVzc2FnZSBpbiBjYXNlIGEgY29uZmZpbGUgZW50cnkgaGFzIGxlYWRpbmcgd2hpdGVzcGFjZS4gUGF0Y2gKKyAgICBieSBEYXZpZCBMb3BleiBNb3Jlbm8uIENsb3NlczogIzI4MTU2MgorICAqIERvbid0IGRyb3AgZGlyZWN0b3JpZXMgdGhhdCBjb250YWluIG91ciBjb25mZmlsZXMgdG9vIGVhcmx5IGZyb20KKyAgICBvdXIgZmlsZSBsaXN0aW5nLiBPdGhlcndpc2Ugd2UgbWlnaHQgbGVhdmUgdGhlbSBiZWhpbmQgb24gcHVyZ2UKKyAgICBpZiB3ZSBzaGFyZSB0aGVtIHdpdGggb3RoZXIgcGFja2FnZXMuCisgICAgQ2xvc2VzOiAjMTc0MTgwLCAjMTk4MTI4LCAjMTk4NTIyLCAjMzE4ODI1LCAjMzY2MTc4CisKKyAgWyBOaWNvbGFzIEZyYW7Dp29pcyBdCisgICogRml4IHR5cG9zIGluIHRoZSBSdXNzaWFuIG1hbiBwYWdlcy4gVGhhbmtzIHRvIFN0ZXBhbiBHb2xvc3Vub3YuCisgICAgQ2xvc2VzOiAjMzY2NTg3CisgICogSG9ub3VyIHRhYmJpbmcgcmVxdWVzdGVkIHZpYSAtLXNob3dmb3JtYXQgZXZlbiBpZiB0aGUgZmllbGQgdG8KKyAgICBiZSBwcmludGVkIGlzIGVtcHR5LiBDbG9zZXM6ICMzNjE2NzEKKyAgKiBGbHVzaCB0aGUgdGVybWluYWwncyBpbnB1dCBiZWZvcmUgcHJvbXB0aW5nIHdoYXQgdG8gZG8gd2l0aCBhCisgICAgY29uZmlndXJhdGlvbiBmaWxlLiBDbG9zZXM6ICMzMTY1NTEKKyAgKiBGaXggdGhlIC0tZm9yY2UtZGVwZW5kcy12ZXJzaW9uIG9wdGlvbi4gQ2xvc2VzOiAjNTcxMDQKKworICBbIEd1aWxsZW0gSm92ZXIgXQorICAqIFN0YW5kYXJkaXplIHNjcmlwdHMgdXNhZ2Ugb3V0cHV0IGZvcm1hdCBhbmQgYXQgdGhlIHNhbWUgdGltZSBtYWtlCisgICAgdGhlIHN0cmluZ3MgZWFzaWVyIGZvciB0aGUgdHJhbnNsYXRvcnMuIEFkZCAnLS1oZWxwJyBhbmQgJy0tdmVyc2lvbicKKyAgICBmb3IgbW9zdCBvZiB0aGUgc2NyaXB0cy4gUHJpbnQgdGhlIHVzYWdlIGFuZCB2ZXJzaW9uIHRvIHN0ZG91dC4KKyAgKiBEbyBub3Qgc3RyaXAgdGhlIGVwb2NoIGZyb20gdGhlIHNvdXJjZTpVcHN0cmVhbS1WZXJzaW9uIHN1YnN0dmFyLgorICAgIENsb3NlczogIzM2NjM1MQorICAqIFByb3Blcmx5IGNoZWNrIGFuZCByZXBvcnQgbG9jayBmaWxlIGV4aXN0ZW5jZSBpbiBpbnN0YWxsLWluZm8uCisgICAgQmFzZWQgb24gcGF0Y2ggYnkgQmVuIFBmYWZmLiBDbG9zZXM6ICMzNjg4NzQKKyAgKiBDb3JyZWN0IGRlZmF1bHQgaW5mbyBkaXJlY3RvcnkgZm9yICctLWluZm9kaXInIGluIGludGFsbC1pbmZvIG1hbgorICAgIHBhZ2UgKEJlbiBQZmFmZikuIENsb3NlczogIzM2ODg3NQorICAqIFByaW50IHRoZSBib2d1cyB2ZXJzaW9uIGFuZCBwcmVmaXggdGhlIGVycm9yIG1lc3NhZ2Ugd2l0aCAnZHBrZzogJworICAgIHdoZW4gdXNpbmcgJy0tY29tcGFyZS12ZXJzaW9ucycuIENsb3NlczogIzM2OTE3NworICAqIFJlbW92ZSBkdXBsaWNhdGVkIHN0cmluZyAiICwgYXQgY2hhbmdlbG9nICIgaW4gZHBrZy1wYXJzZWNoYW5nZWxvZydzCisgICAgZGViaWFuIHN0eWxlIHBhcnNlciAoSnVsaWFuIEdpbGJleSkuIENsb3NlczogIzM2OTIwNQorICAqIFVwZGF0ZSB0aGUgU2VjdGlvbiBhbmQgUHJpb3JpdHkgZmllbGRzIGluIHRoZSBzdGF0dXMgZmlsZSBmcm9tIHRoZQorICAgIG5ldyBwYWNrYWdlcy4gV2UgYXNzdW1lIHRoYXQgdGhlIGluZm9ybWF0aW9uIGZyb20gdGhlIGJpbmFyeSBwYWNrYWdlCisgICAgaXMgY29ycmVjdCwgb3RoZXJ3aXNlIGl0IHNob3VsZCBiZSBmaXhlZCB0aGVyZSB0byBtYXRjaCB0aGUgYXJjaGl2ZQorICAgIG92ZXJyaWRlIGZpbGUgKEtvYmxpbmdlciBFZ21vbnQpLgorICAgIENsb3NlczogIzU0NTI5LCAjNTgxMDYsICM4MTE3MSwgIzIzMDYxMCwgIzIzNzYyMiwgIzIzNzYyNgorICAqIEJ1bXAgU3RhbmRhcmRzLVZlcnNpb24gdG8gMy43LjIgKG5vIGNoYW5nZXMgbmVlZGVkKS4KKyAgKiBBZGQgbGludGlhbiBvdmVycmlkZXMgZm9yIGRwa2csIGRwa2ctZGV2LCBkc2VsZWN0IGFuZCBzb3VyY2VzLgorICAqIFJlcGxhY2UgbG9ncm90YXRlIGluc3RhbGxhdGlvbiBsb2dpYyB3aXRoIGRoX2luc3RhbGxsb2dyb3RhdGUuCisKKyAgWyBVcGRhdGVkIGRwa2cgVHJhbnNsYXRpb25zIF0KKyAgKiBQb3J0dWd1ZXNlIChNaWd1ZWwgRmlndWVpcmVkbykuCisgICogUG9saXNoIChSb2JlcnQgTHViZXJkYSkuCisgICogSHVuZ2FyaWFuIChTWkVSVsOBQyBBdHRpbGEpLgorICAqIFJvbWFuaWFuIChFZGR5IFBldHJpxZ9vcikuCisgICogUnVzc2lhbiAoWXVyaSBLb3psb3YpLiBDbG9zZXM6ICMzNjYzNTMKKyAgKiBDemVjaCAoTWlyb3NsYXYgS3VyZSkuCisgICogU2ltcGxpZmllZCBDaGluZXNlIChLb3YgVGNoYWkpLiBDbG9zZXM6ICMzNjY5ODUKKyAgKiBTd2VkaXNoIChQZXRlciBLYXJsc3NvbikuCisgICogR2FsaWNpYW4gKEphY29ibyBUYXJyaW8pLgorICAqIFNsb3ZhayAoUGV0ZXIgTWFubikuCisgICogRHV0Y2ggKEJhcnQgQ29ybmVsaXMpLgorICAqIEJhc3F1ZSAoUGlhcnJlcyBCZW9iaWRlKS4gQ2xvc2VzOiAjMzY2MTg1CisKKyAgWyBVcGRhdGVkIGRzZWxlY3QgVHJhbnNsYXRpb25zIF0KKyAgKiBQb2xpc2ggKFJvYmVydCBMdWJlcmRhKS4KKyAgKiBCYXNxdWUgKFBpYXJyZXMgQmVvYmlkZSkuIENsb3NlczogIzM2NjE4NworICAqIEN6ZWNoIChNaXJvc2xhdiBLdXJlKS4KKyAgKiBSb21hbmlhbiAoRWRkeSBQZXRyacWfb3IpLgorCisgIFsgVXBkYXRlZCBtYW4gcGFnZXMgdHJhbnNsYXRpb25zIF0KKyAgKiBQb2xpc2ggKFJvYmVydCBMdWJlcmRhKS4KKworIC0tIEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4gIFdlZCwgMzEgTWF5IDIwMDYgMDc6NDM6MTYgKzAzMDAKKworZHBrZyAoMS4xMy4xOSkgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgWyBGcmFuayBMaWNodGVuaGVsZCBdCisgICogQWRkIC1mb2xsb3cgKGJhY2spIHRvIGZpbmQgY2FsbCBpbiBkcGtnLXNjYW5wYWNrYWdlcy4KKyAgICBDbG9zZXM6ICMzNTgwMTEKKyAgKiBGaXggZXJyb3IgaW4gYXJjaGl2ZS5jIHRoYXQgbGVhZCB0byBhIGluZmluaXRlIGxvb3Agd2hlbgorICAgIGluc3RhbGxpbmcgZmlsZXMgd2l0aCBsb25nLCBub24tQVNDSUkgZmlsZW5hbWVzIGluCisgICAgY2VydGFpbiBsb2NhbGVzLiBDbG9zZXM6ICMzNDY0MzYKKworICBbIFVwZGF0ZWQgZHBrZyBUcmFuc2xhdGlvbnMgXQorICAqIEZyZW5jaCAoQ2hyaXN0aWFuIFBlcnJpZXIpLgorICAqIEdhbGljaWFuIChKYWNvYm8gVGFycmlvKS4KKyAgKiBSb21hbmlhbiAoRWRkeSBQZXRyacWfb3IpLgorICAqIER1dGNoIChCYXJ0IENvcm5lbGlzKS4KKyAgKiBTd2VkaXNoIChQZXRlciBLYXJsc3NvbikuCisgICogRGFuaXNoIChDbGF1cyBIaW5kc2dhdWwpLiBDbG9zZXM6ICMzNjIzMTcKKyAgKiBDemVjaCAoTWlyb3NsYXYga3VyZSkuCisgICogVmlldG5hbWVzZSAoQ2x5dGllIFNpZGRhbGwpLiBDbG9zZXM6ICMzNjMyNjQKKyAgKiBTcGFuaXNoIChKYXZpZXIgRmVybsOhbmRlei1TYW5ndWlubyBQZcOxYSkuIENsb3NlczogIzM1NzkxMQorICAqIEJhc3F1ZSAoUGlhcnJlcyBCZW9iaWRlKS4gQ2xvc2VzOiAjMzYzNjgzLCAjMzYzNjc5CisgICogSmFwYW5lc2UgKEtlbnNoaSBNdXRvKS4gQ2xvc2VzOiAjMzY1MzM0CisKKyAgWyBVcGRhdGVkIGRzZWxlY3QgVHJhbnNsYXRpb25zIF0KKyAgKiBSb21hbmlhbiAoRWRkeSBQZXRyacWfb3IpLgorICAqIEdhbGljaWFuIChKYWNvYm8gVGFycmlvKS4KKyAgKiBGcmVuY2ggKENocmlzdGlhbiBQZXJyaWVyKS4KKyAgKiBEdXRjaCAoQmFydCBDb3JuZWxpcykuCisKKyAgWyBOaWNvbGFzIEZyYW5jb2lzIF0KKyAgKiBHZW5lcmF0ZSB0aGUgUnVzc2lhbiBtYW4gcGFnZXMgaW4gdGhlIEtPSTgtUiBjaGFyc2V0LiBDbG9zZXM6ICMzNjE5ODcKKyAgKiBEb2N1bWVudCB0aGUgc2hsaWJzLmxvY2FsIGZvcm1hdCBpbiBkcGtnLXNvdXJjZSgxKS4gQ2xvc2VzOiAjMzE2NDg1CisgICogRml4IGEgdHlwbyBpbiBhbiBlcnJvciBtZXNzYWdlLiBUaGFua3MgdG8gSnVzdGluIFByeXpieS4gQ2xvc2VzOiAjMzY0NTM5CisKKyAgWyBHdWlsbGVtIEpvdmVyIF0KKyAgKiBGaXggc3RyaW5ncyBzbyB0aGF0IHRoZXkgY2FuIGJlIG1vcmUgZWFzaWx5IHRyYW5zbGF0ZWQuIENsb3NlczogIzEzNDM1OAorICAqIEFkZCBuZXcgc3Vic3R2YXJzIHNvdXJjZTpWZXJzaW9uLCBzb3VyY2U6VXBzdHJlYW0tVmVyc2lvbiBhbmQKKyAgICBiaW5hcnk6VmVyc2lvbiBzbyBwYWNrYWdlcyB3aWxsIGJlIGFibGUgdG8gYXZvaWQgYnJlYWtpbmcgb24gYmluTk1Vcy4KKyAgICBCYXNlZCBvbiBhIHBhdGNoIGJ5IEtlbiBCbG9vbSBhbmQgSmVyb2VuIHZhbiBXb2xmZmVsYWFyLiBDbG9zZXM6ICMzNTg1MzAKKyAgKiBTdXBwb3J0IGJpbk5NVSBzYWZlIHBhY2thZ2VzIGV2ZW4gd2hlbiBzb3VyY2UgYW5kIGJpbmFyeSBkaWZmZXIgaW4KKyAgICB2ZXJzaW9uLgorICAqIFJlbmFtZSBkcGtnOlVwc3RyZWFtVmVyc2lvbiB0byBkcGtnOlVwc3RyZWFtLVZlcnNpb24uIE1ha2UgZHBrZzpWZXJzaW9uCisgICAgYW5kIGRwa2c6VXBzdHJlYW0tVmVyc2lvbiBnZXQgdGhlIGN1cnJlbnQgZHBrZyB2ZXJzaW9ucyBpbnN0ZWFkIG9mIHRoZQorICAgIG9uZXMgZnJvbSB0aGUgcGFja2FnZSBiZWluZyBidWlsdC4KKyAgKiBTcGxpdCB1c2FnZSBzdHJpbmdzIHRvIG1ha2UgaXQgZWFzaWVyIGZvciB0cmFuc2xhdG9ycyB3aGVuIHRob3NlIGNoYW5nZS4KKyAgICBDbG9zZXM6ICMzMjM5NTcKKyAgKiBTdGFuZGFyZGl6ZSBzdGFydC1zdG9wLWRhZW1vbiB1c2FnZSBvdXRwdXQgZm9ybWF0LgorICAqIE1ha2UgaW5zdGFsbC1pbmZvICctLWRpci1maWxlJyBvcHRpb24gY29tcGF0aWJsZSB3aXRoIEdOVSBpbnN0YWxsLWluZm8KKyAgICBieSByZW5hbWluZyB0aGUgaW5mb2RpciB2YXJpYWJsZSB0byBkaXJmaWxlIGFuZCBub3QgYXBwZW5kaW5nIHRoZQorICAgICcvZGlyJyBzdHJpbmcgZXhjZXB0IHdoZW4gaW5pdGlhbGl6aW5nIGZyb20gJy0taW5mby1kaXInIG9yCisgICAgJy0taW5mb2RpcicgKFdheW5lIERhdmlzb24pLiBDbG9zZXM6ICM2MTY0MCwgIzY3MjM3LCAjMjg2Mjc1CisgICogTWFrZSBpbnN0YWxsLWluZm8gYWRkIGEgbmV3IGxpbmUgYWZ0ZXIgYWRkaW5nIHRoZSBsYXN0IGVudHJ5IGF0IHRoZQorICAgIGVuZCBvZiB0aGUgZGlyIGZpbGUsIHdoaWNoIG1ha2VzIHRoZSBpbmZvIHJlYWRlcnMgYWJsZSB0byBzZWUgdGhvc2UKKyAgICBsYXN0IGVudHJpZXMgKE5pY29sYXMgRnJhbsOnb2lzKS4gQ2xvc2VzOiAjMTY0NDk1CisgICogVXNlIHRoZSBudW1lcmljYWwgdmFsdWUgb2YgZXJybm8gaW5zdGVhZCBvZiBhIHN0cmluZyBpbiBpbnN0YWxsLWluZm8KKyAgICB3aGVuIGNoZWNraW5nIGlmIHRoZSBsb2NraW5nIGVycm9yIHdhcyBkdWUgdG8gYW4gYWxyZWFkeSBleGlzdGluZworICAgIGZpbGUsIHdoaWNoIGlzIGxvY2FsZSBkZXBlbmRlbnQsIGFuZCBkaWUgYWNjb3JkaW5nbHkuIEJhc2VkIG9uIGEgcGF0Y2gKKyAgICBieSBOaWNvbGFzIEZyYW7Dp29pcy4gQ2xvc2VzOiAjMTk5MjA0LCAjMjEwNzgxCisgICogRXNjYXBlIGh5cGhlbnMgaW4gbWFuIHBhZ2VzLgorICAqIEJ1bXAgU3RhbmRhcmRzLVZlcnNpb24gdG8gMy43LjEuCisgICogV3JhcHBlZCBkZWJpYW4vY29udHJvbCBmaWVsZHMgZXhjZXB0IFVwbG9hZGVycyBnaXZlbiBjdXJyZW50IHBvbGljeS4KKworIC0tIEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4gIFRodSwgIDQgTWF5IDIwMDYgMTQ6MDU6MjEgKzAzMDAKKworZHBrZyAoMS4xMy4xOCkgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgWyBVcGRhdGVkIGRwa2cgVHJhbnNsYXRpb25zIF0KKyAgKiBSb21hbmlhbiAoU29yaW4gQmF0YXJpdWMpLiBDbG9zZXM6ICMzNTY2NjQKKyAgKiBEYW5pc2ggKENsYXVzIEhpbmRzZ2F1bCkuIENsb3NlczogIzM1NjE4OAorICAqIFBvbGlzaCAoUm9iZXJ0IEx1YmVyZGEpLgorICAqIER1dGNoIChCYXJ0IENvcm5lbGlzKS4KKworICBbIFVwZGF0ZWQgZHNlbGVjdCBUcmFuc2xhdGlvbnMgXQorICAqIFNwYW5pc2ggKEphdmllciBGZXJuw6FuZGV6LVNhbmd1aW5vIFBlw7FhKS4gQ2xvc2VzOiAjMzU3OTEyCisgICogRGFuaXNoIChDbGF1cyBIaW5kc2dhdWwpLiBDbG9zZXM6ICMzNTYxODgKKyAgKiBQb2xpc2ggKFJvYmVydCBMdWJlcmRhKS4KKyAgKiBSdXNzaWFuIChZdXJpIEtvd2xvdikuIENsb3NlczogIzM2MTQxNQorCisgIFsgVXBkYXRlZCBtYW4gcGFnZXMgdHJhbnNsYXRpb25zIF0KKyAgKiBUeXBvcyBjb3JyZWN0ZWQgaW4gRnJlbmNoIGRwa2ctc291cmNlIG1hbiBwYWdlCisgICAgVGhhbmtzIHRvIE5pY29sYXMgQm9uaWZhcyB3aG8gc3BvdHRlZCB0aGVtCisgICogUnVzc2lhbiBjb21wbGV0ZWQuIFRoYW5rcyB0byBZdXJpIEtvemxvdi4KKyAgICBDbG9zZXM6ICMzNjE0MTUKKworICBbIENocmlzdGlhbiBQZXJyaWVyIF0KKyAgKiBDb3JyZWN0IHR5cG9zIGluIG1hbiBwYWdlcy4gVGhhbmtzIHRvIEEuIENvc3RhIGZvciBzcG90dGluZyB0aGVtCisgICAgQ2xvc2VzOiAjMzU4MDkxLCAjMzU4MDkyLCAjMzU4MDkzLCAjMzU4MDk0LCAjMzU4MDk1CisKKyAgWyBHdWlsbGVtIEpvdmVyIF0KKyAgKiBBZGQgYSAnWyFdJyBpbiAtLWZvcmNlLWFsbCBoZWxwIGRlbm90aW5nIHRoYXQgaXQgaXMgYSBkYW5nZXJvdXMgb3B0aW9uLgorICAgIENsb3NlczogIzM1OTkzNQorICAqIFByZWZpeCBhbnkgY2hyb290IHBhdGggdG8gdGhlIGV4ZWMgZmlsZSBuYW1lIHdoZW4gc3RhdGluZyBpdCBpbgorICAgIHN0YXJ0LXN0b3AtZGFlbW9uLiBDbG9zZXM6ICMzMTg3NzEsICMzMzMwNjYKKyAgKiBBZGQgJy1yJyB0byB0aGUgaGVscCBvdXRwdXQgb2Ygc3RhcnQtc3RvcC1kYWVtb24gKEphcmVkIFNwaWVnZWwpLgorICAgIENsb3NlczogIzM1NDg2OQorICAqIFVzZSBtdXN0c2V0dmFyIHdoZW4gc2V0dGluZyB0aGUgdmFsdWUgb2YgdGhlIHN2ZXJzaW9uIHZhcmlhYmxlIGluCisgICAgZHBrZy1idWlsZHBhY2thZ2UgKEFuZHJldyBTdWZmaWVsZCkuIENsb3NlczogIzE1ODk1MworICAqIFBhc3MgJy0tYWRtaW5kaXInIG9wdGlvbiBvdmVyIHRvIGRwa2ctcXVlcnkgd2hlbiBwYXNzaW5nICctLWFkbWluZGlyJyBvcgorICAgICctLXJvb3QnIHRvIGRwa2cgKGluaXRpYWwgcGF0Y2ggYnkgQnJhbmRlbiBSb2JpbnNvbikuCisgICAgQ2xvc2VzOiAjMTUzMzA1LCAjMjcxMDQxLCAjMjgyODUzLCAjMzA3NzE1LCAjMzU1OTE1CisgICogU3VwcG9ydCBzeXN0ZW0gbGlicmFyeSBkaXJlY3RvcmllcyBpbiBkcGtnLXNobGliZGVwcyBzeW1saW5rZWQgZnJvbQorICAgICcvbGliL2xkY29uZmlnJy4gQ2xvc2VzOiAjMzU2NDUyCisgICogRG9jdW1lbnQgdGhhdCAnZHBrZyAtLWdldC1zZWxlY3Rpb25zJyBhbmQgJ2Rwa2ctcXVlcnkgLWwnIHdpdGhvdXQgYQorICAgIHBhdHRlcm4gd2lsbCBub3QgbGlzdCBwYWNrYWdlcyBpbiBzdGF0ZSBwdXJnZS4gQ2xvc2VzOiAjMzU1NjMzCisgICogT2Jzb2xldGUgZm9yY2UvcmVmdXNlICdhdXRvLXNlbGVjdCcgZHBrZyBvcHRpb24uCisgICogQWRkIG5ldyAnLS1jbGVhci1zZWxlY3Rpb25zJyBvcHRpb24gdG8gZHBrZyAoQW5kcmV3IFN1ZmZpZWxkKS4KKyAgICBDbG9zZXM6ICMxMTIzODgKKyAgKiBVc2UgJy0tY2xlYXItc2VsZWN0aW9ucycgaW4gdGhlIGRwa2cgbWFuIHBhZ2UgZXhhbXBsZSBvbiBob3cgdG8gdHJhbnNmZXIKKyAgICB0aGUgc3RhdHVzIHRvIGFub3RoZXIgaW5zdGFsbGF0aW9uLiBDbG9zZXM6ICMxMzc0NDIKKworIC0tIEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4gIE1vbiwgMTAgQXByIDIwMDYgMDY6NDA6MjIgKzAzMDAKKworZHBrZyAoMS4xMy4xNykgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgWyBGcmFuayBMaWNodGVuaGVsZCBdCisgICogRml4IGhhbmRsaW5nIG9mIC1EQXJjaGl0ZWN1cmU9Zm9vIGluIGRwa2ctZ2VuY29udHJvbC4gQ2xvc2VzOiAjMjUxOTExCisgICogSGFuZGxlIGFyY2hpdGVjdHVyZXMgaW4gYWxsIGRlcGVuZGVuY3kgZmllbGRzIGluIGRlYmlhbi9jb250cm9sLAorICAgIGV2ZW4gdGhvc2Ugb2YgYmluYXJ5IHBhY2thZ2VzLiBDbG9zZXM6ICMyNTI2NTcsICMzMjQ3NDEsICMzNDc4MTkKKyAgKiBNb3JlIGRwa2ctc2NhbnBhY2thZ2VzIGZpeGVzICgtLWFyY2ggb3B0aW9uIGhhbmRsaW5nKS4gQ2xvc2VzOiAjMzUzNTA2CisKKyAgWyBHdWlsbGVtIEpvdmVyIF0KKyAgKiBBZGQgbWlzc2luZyBwYXJlbnRoZXNlcyBzdXJyb3VuZGluZyBhIG1hbiBwYWdlIHNlY3Rpb24gcmVmZXJlbmNlCisgICAgaW4gdGhlIGRwa2ctc291cmNlIG1hbiBwYWdlIChNYXR0IEtyYWFpKS4gQ2xvc2VzOiAjMzUzNzMxCisgICogRml4IG1pc3NwZWxsaW5nIG9mICJvY2N1cnJlZCIgYXMgIm9jY291cmVkIiBpbiBkcGtnLWdlbmNvbnRyb2wgYW5kCisgICAgZHBrZy1zb3VyY2UgKE1hdHQgS3JhYWkpLiBDbG9zZXM6ICMzNTM5NDkKKyAgKiBNYWpvciBjbGVhbnVwIG9mIG1hbnBhZ2VzLCBieSB1c2luZyBwcm9wZXJseSB0aGUgYm9sZCBhbmQgaXRhbGljCisgICAgYXR0cmlidXRlcyBhbmQgb3RoZXIgZW1iZWxsaXNobWVudHMuCisgICogQWRkIGRwa2ctcXVlcnkoMSkgaW4gdGhlIFNFRSBBTFNPIHNlY3Rpb24gaW4gZHBrZygxKS4gQ2xvc2VzOiAjMzU0NjQzCisgICogRG9uJ3QgdHJ5IHRvIGNvbXBpbGUgaW4gU0VMaW51eCBzdXBwb3J0IG9uIEdOVS9rRnJlZUJTRCBhbWQ2NC4KKyAgKiBBZGQgbmV3IHF1aWV0IG9wdGlvbiB0byBkcGtnLXNvdXJjZSB0byBzdXBwcmVzcyB3YXJuaW5ncy4gQ2xvc2VzOiAjMzU1MDY1CisgICogRG8gbm90IGV4cGFuZCBhcmNoaXRlY3R1cmUgYWxpYXNlcyBhbnltb3JlIGluIC5kc2MgZmlsZXMuCisgICogQ2hhbmdlIHN0YXJ0LXN0b3AtZGFlbW9uJ3MgLS1leGVjIGJlaGF2aW91ciBhZ2FpbiBvbiBHTlUvTGludXggdG8gY29tcGFyZQorICAgIHRoZSByZWZlcnJlZCBmaWxlIHBvaW50ZWQgYnkgdGhlICcvcHJvYy88cGlkPi9leGUnIHN5bWxpbmssIHN0cmlwcGluZworICAgIGFueSAnIChkZWxldGVkKScgc3RyaW5nIGFuZCBzdGF0aW5nIHRoZSByZXN1bHQuIENsb3NlczogIzM1NDg2NworCisgIFsgVXBkYXRlZCBtYW4gcGFnZXMgdHJhbnNsYXRpb25zIF0KKyAgKiBQb2xpc2ggKFJvYmVydCBMdWJlcmRhKS4gQ2xvc2VzOiAjMzUzNzgyCisgICogRnJlbmNoIChQaGlsaXBwZSBCYXRhaWxsZXIpLgorCisgIFsgVXBkYXRlZCBkc2VsZWN0IFRyYW5zbGF0aW9ucyBdCisgICogSHVuZ2FyaWFuIChTemVydsOhYyBBdHRpbGEpLgorICAqIER1dGNoIChCYXJ0IENvcm5lbGlzKS4KKyAgKiBDemVjaCAoTWlyb3NsYXYgS3VyZSkuCisKKyAgWyBVcGRhdGVkIGRwa2cgVHJhbnNsYXRpb25zIF0KKyAgKiBJdGFsaWFuIChMZWxlIEdhaWZheCkKKyAgKiBTaW1wbGlmaWVkIENoaW5lc2UgKENhcmxvcyBaLkYuIExpdSkuCisgICogUG9ydHVndWVzZSAoTWlndWVsIEZpZ3VlaXJlZG8pLgorICAqIER1dGNoIChCYXJ0IENvcm5lbGlzKS4KKyAgKiBIdW5nYXJpYW4gKFN6ZXJ2w6FjIEF0dGlsYSkuCisgICogQ3plY2ggKE1pcm9zbGF2IEt1cmUpLgorICAqIFJ1c3NpYW4gKFl1cmkgS296bG92KS4gQ2xvc2VzOiAjMzU3NzI0CisKKyAtLSBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+ICBNb24sIDIwIE1hciAyMDA2IDAzOjMzOjAzICswMjAwCisKK2Rwa2cgKDEuMTMuMTYpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogVGhlICJub3QgcmVhbGx5IGEgYnJvd24gcGFwZXIgYmFnIG5lZWRlZCBidXQgaXQncyBjbG9zZSIgcmVsZWFzZQorCisgIFsgR3VpbGxlbSBKb3ZlciBdCisgICogTW92ZSBhdXhpbGlhcnkgYXV0b3Rvb2xzIHNjcmlwdHMgdG8gY29uZmlnLy4KKyAgKiBSZXF1aXJlIGdldHRleHQgMC4xNC41LgorICAqIE1vdmUgdGhlIG1ldGhvZHMgZGlyZWN0b3J5IHRvIGRzZWxlY3QvbWV0aG9kcywgc28gdGhlIGNvbnRlbnRzIHdpbGwgbm90CisgICAgYmUgaW5zdGFsbGVkIGlmIGRzZWxlY3QgaXMgbm90IHRvIGJlIGJ1aWx0LgorICAqIE1vdmUgZHNlbGVjdCBnZXR0ZXh0IHN0cmluZ3MgdG8gaXRzIG93biBkb21haW4gcHJvdmlkZWQgbm93IGJ5IHRoZQorICAgIGRzZWxlY3QgcGFja2FnZS4KKworICBbIEZyYW5rIExpY2h0ZW5oZWxkIF0KKyAgKiBGaXggb3ZlcnJpZGUgaGFuZGxpbmcgaW4gZHBrZy1zY2FucGFja2FnZXMgd2hpY2ggd2FzIGJyb2tlbiBpbgorICAgIDEuMTMuMTQgYW5kIC4xNS4gQ2xvc2VzOiAjMzUzMzA1CisgICogTWFrZSAtaXNwIHRoZSBkZWZhdWx0IGJlaGF2aW91ciBvZiBkcGtnLWdlbmNvbnRyb2wgYXMgaXQgaXMKKyAgICBhbHdheXMgdXNlZCBhbnl3YXkgdGhlc2UgZGF5cy4gU3VnZ2VzdGVkIGJ5IE1hdHRoZXcgVmVybm9uLgorICAgIENsb3NlczogIzIxNTIzMworICAqIFR5cG8gZml4ZXMgaW4gbWFuIHBhZ2VzIGJ5IEEuIENvc3RhOgorICAgIC0gZHBrZy1kZWIuMSBDbG9zZXM6ICMzNTM0MjQKKyAgICAtIGRwa2ctc3RhdG92ZXJyaWRlLjggQ2xvc2VzOiAjMzUzNDI1CisgICAgLSBpbnN0YWxsLWluZm8uOCBDbG9zZXM6ICMzNTM0MjYKKyAgICAtIHN0YXJ0LXN0b3AtZGFlbW9uLjggQ2xvc2VzOiAjMzUzNDI3CisgICAgLSB1cGRhdGUtYWx0ZXJuYXRpdmVzLjggQ2xvc2VzOiAjMzUzNDI4CisgICAgLSBkcGtnLjEsIGRwa2cuY2ZnLjUgQ2xvc2VzOiAjMzUzNDI5CisKKyAtLSBGcmFuayBMaWNodGVuaGVsZCA8ZGpwaWdAZGViaWFuLm9yZz4gIFNhdCwgMTggRmViIDIwMDYgMTc6NTk6MDAgKzAxMDAKKworZHBrZyAoMS4xMy4xNSkgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgWyBHdWlsbGVtIEpvdmVyIF0KKyAgKiBBZGQgYSBtaXNzaW5nIGNsb3NpbmcgcGFyZW50aGVzaXMgaW4gYSBkcGtnIHN0cmluZyAoSm9yZGkgTWFsbGFjaCkuCisKKyAgWyBDaHJpc3RpYW4gUGVycmllciBdCisgICogVXBkYXRlZCBUcmFuc2xhdGlvbnM6CisgICAgLSBCcmF6aWxpYW4gUG9ydHVndWVzZSAoQW5kcmUgTHVpcyBMb3BlcykuIENsb3NlczogIzM1MjQzMgorICAgIC0gR2FsaWNpYW4gKEphY29ibyBUYXJyaW8pLiBDbG9zZXM6ICMzNTI0NDMKKworICBbIFVwZGF0ZWQgVHJhbnNsYXRpb25zIF0KKyAgKiBDYXRhbGFuIChKb3JkaSBNYWxsYWNoKS4KKyAgKiBQb3J0dWd1ZXNlIChNaWd1ZWwgRmlndWVpcmVkbykuCisgICogU3dlZGlzaCAoRGFuaWVsIE55bGFuZGVyKS4KKworICBbIE5ldyBUcmFuc2xhdGlvbnMgXQorICAqIEh1bmdhcmlhbiAoU3plcnbDoWMgQXR0aWxhKS4KKworICBbIE5ldyBNYW5wYWdlIFRyYW5zbGF0aW9ucyBdCisgICogSHVuZ2FyaWFuIChTemVydsOhYyBBdHRpbGEpOiBkcGtnLmNmZy41IGFuZCBkc2VsZWN0LmNmZy41LgorCisgLS0gRnJhbmsgTGljaHRlbmhlbGQgPGRqcGlnQGRlYmlhbi5vcmc+ICBXZWQsIDE1IEZlYiAyMDA2IDIzOjM3OjQwICswMTAwCisKK2Rwa2cgKDEuMTMuMTQpIGV4cGVyaW1lbnRhbDsgdXJnZW5jeT1sb3cKKworICBbIEd1aWxsZW0gSm92ZXIgXQorICAqIE1ha2Ugc3RhcnQtc3RvcC1kYWVtb24gcHJpbnQgdGhlIHByb3BlciB2ZXJzaW9uIGluc3RlYWQgb2YgJ1ZFUlNJT04nLgorICAqIFNldCB0aGUgSE9NRSBlbnZpcm9ubWVudCB2YXJpYWJsZSB3aGVuIHVzaW5nIHRoZSAtLWNodWlkIHN3aXRjaCBpbgorICAgIHN0YXJ0LXN0b3AtZGFlbW9uLiBDbG9zZXM6ICMyOTUxNjksICMyNjc3ODQKKyAgKiBDbGVhbnVwIGFuZCB1bmlmeSBwcm9ncmFtIHVzYWdlIGFuZCB2ZXJzaW9uIG91dHB1dCwgbWFrZSBpdCBtb3JlIGkxOG4KKyAgICBmcmllbmRseS4gRml4IHdyb25nIGdldHRleHQgdXNhZ2Ugd2l0aCBpbnRlcnBhcnNlZCBtYWNyb3MuCisgICAgVGhhbmtzIHRvIENoYW5nd29vIFJ5dSBmb3Igbm90aWNpbmcuIENsb3NlczogIzIzNzkxNQorICAqIE1hcmsgc29tZSBzdHJpbmdzIGFzIHRyYW5zbGF0YWJsZSAoQ2hhbmd3b28gUnl1KS4gQ2xvc2VzOiAjMjU2Mzg3CisgICogUmVtb3ZlIGEgdHJhaWxpbmcgJ0MnIGNoYXJhY3RlciBmcm9tIHVwZGF0ZS1hbHRlcm5hdGl2ZXMgbWFucGFnZS4KKyAgKiBVc2UgcGtnLWNvbmZpZyB0byBnZXQgdGhlIHByb3BlciBmbGFncyB0byBsaW5rIGFnYWluc3QgbGlic2VsaW51eC4KKyAgICBBZGQgYSBCdWlsZC1EZXBlbmRlbmN5IG9uIHBrZy1jb25maWcsIHRpZ2h0ZW4gbGlic2VsaW51eDEtZGV2IHRvCisgICAgYXQgbGVhc3QgdmVyc2lvbiAxLjI4LTQgd2hpY2ggcHJvdmlkZXMgYSAucGMgZmlsZSwgYW5kIHJlbW92ZQorICAgIGxpYnNlcG9sMS1kZXYgYXMgbGlic2VsaW51eDEtZGV2IGlzIERlcGVuZGluZyBvbiBpdC4KKyAgKiBBZGQgY29tbWFuZCBkZXNjcmlwdGlvbnMgaW4gdGhlIHN5bm9wc2lzLCBhbmQgYWRkIGEgdXNhZ2UgZXhhbXBsZSBmb3IKKyAgICAtZiBpbiB0aGUgZHBrZy1xdWVyeSBtYW5wYWdlLiBUaGFua3MgZm9yIHRoZSBpbml0aWFsIHBhdGNoIHRvCisgICAgUGhpbGlwcGUgQmF0YWlsbGVyLiBDbG9zZXM6ICMzNTIwOTEKKyAgKiBEb2N1bWVudCBhYm91dCB0aGUgZGVmYXVsdCBsb2cgZmlsZSwgdGhlIGJlaGF2aW91ciBpbiBjYXNlIG9mIG11bHRpcGxlCisgICAgLS1sb2cgb3B0aW9ucyBhbmQgYWRkIGEgcmVmZXJlbmNlIHRvIGRwa2cuY2ZnIG1hbnBhZ2UgaW4gdGhlIGRwa2cgbWFucGFnZS4KKyAgICBUaGFua3MgdG8gSmFtZXMgUi4gVmFuIFphbmR0LiBDbG9zZXM6ICMzNTA0NDAKKyAgKiBFc2NhcGUgYCBhbmQgJyBpbiBtYW5wYWdlcyBvdGhlcndpc2UgdGhleSBhcmUgY29udmVydGVkIHRvIHF1b3RhdGlvbgorICAgIG1hcmtzLCB3aGljaCBtYWtlcyBjdXQgYW5kIHBhc3RlIG5vdCB3b3JrLiBUaGFua3MgdG8gRGVuaXMgQmFyYmllci4KKyAgICBDbG9zZXM6ICMzNDk5MjUKKworICBbIEZyYW5rIExpY2h0ZW5oZWxkIF0KKyAgKiBMZXQgZHBrZy1zb3VyY2UgaWdub3JlIGNvbW1lbnRzIGluIHRoZSBodW5rIGhlYWRlciBhcyB1c2VkIGJ5CisgICAgZGlmZiAtcCAoQW5hbmQgS3VtcmlhKS4gQ2xvc2VzOiAjMzQ0ODgwCisgICogTGV0IGRwa2ctYnVpbGRwYWNrYWdlIGNyZWF0ZSBhIC5jaGFuZ2VzIGZpbGUgZXZlbiBpZiBzaWduaW5nIHRoZQorICAgIC5kc2MgZmlsZSBmYWlsZWQuIFRoaXMgbWFrZXMgaXQgZWFzaWVyIHRvIGp1c3Qgc2lnbiB0aGUgcGFja2FnZQorICAgIGxhdGVyIChKdWxpYW4gR2lsYmV5KS4gQ2xvc2VzOiAjMjE3OTYzCisgICogQ2hhbmdlIGhldXJpc3RpY3Mgb2YgZHBrZy1idWlsZHBhY2thZ2UncyBncGcgY2hlY2sgdG8gYWxsb3cgZm9yCisgICAgbW9yZSBjb21wbGV4IHNldHVwcyAoSnVsaWFuIEdpbGJleSkuIENsb3NlczogIzE2MzA2MQorICAqIEFkZCBmaWxlcyBhbmQgZGlycyB1c2VkIGJ5IGJ6ciB0byBkZWZhdWx0IGRwa2ctc291cmNlIC1pIHJlZ2V4CisgICAgKG1heGltaWxpYW4gYXR0ZW1zKS4gQ2xvc2VzOiAjMzQ1MTY0CisgICogQWRkIC5naXQgZGlyZWN0b3J5IHRvIGRlZmF1bHQgZHBrZy1zb3VyY2UgLWkgcmVnZXguCisgICAgU3VnZ2VzdGVkIGJ5IEhhbnMgVWxyaWNoIE5pZWRlcm1hbm4uIENsb3NlczogIzM1MTg4NQorICAqIGRwa2ctc2NhbnBhY2thZ2VzIGNhbiBub3cgb3V0cHV0IFBhY2thZ2VzIGZpbGVzIHdpdGggbXVsdGlwbGUKKyAgICB2ZXJzaW9ucyBvZiBhIHNpbmdsZSBwYWNrYWdlIChEb24gQXJtc3Ryb25nKS4gQ2xvc2VzOiAjMjI5NTg5LgorICAqIGRwa2ctc2NhbnBhY2thZ2VzIG91dHB1dHMgaGVscCB3aGVuIGdpdmVuIHRoZSAtLWhlbHAgb3IgLWggb3B0aW9uCisgICAgKERvbiBBcm1zdHJvbmcpLiBDbG9zZXM6ICMzMTk1NDEKKyAgKiBEb2N1bWVudCBkcGtnLXNjYW5wYWNrYWdlIC1tIGluIG1hbiBwYWdlLgorICAqIExldCB3YXJuIGRwa2ctc291cmNlIGlmIG1vcmUgdGhhbiBvbmUgLXNYIG9wdGlvbiB3YXMgZ2l2ZW4gYW5kCisgICAgZG9jdW1lbnQgdGhlIGJlaGF2aW91ciBpbiB0aGlzIGNhc2UgaW4gdGhlIG1hbiBwYWdlLgorICAgIENsb3NlczogIzI0NjYzNworICAqIE1ha2UgZHBrZy1zb3VyY2UgLWIgbW9yZSByb2J1c3QgcmVnYXJkaW5nIHRvIGV4aXN0aW5nIHN5bWxpbmtzCisgICAgYnkgY3JlYXRpbmcgbmV3IGZpbGVzIGluIGEgc2VjdXJlIG1hbm5lci4gQ2xvc2VzOiAjMTc4ODM5LCAjMzM4NTkxCisgICogRml4IHNvbWUgc2VtYW50aWMgZXJyb3JzIGluIGRwa2ctc2hsaWJkZXBzIGR1ZSB0byB0eXBvcyBpbiB1c2VkCisgICAgdmFyaWFibGVzLgorICAqIE9uIHBhY2thZ2UgY29uZmlndXJhdGlvbiwgZGlmZmVyZW50aWF0ZSBiZXR3ZWVuIG1vZGlmaWVkIGFuZAorICAgIGRlbGV0ZWQgY29uZmlndXJhdGlvbiBmaWxlcyAoSWFuIEphY2tzb24pLiBDbG9zZXM6ICMzNTEzNjEKKyAgKiBJbXByb3ZlIHByb2Nlc3Npbmcgb2YgZGlzYXBwZWFyaW5nIGNvbmZmaWxlcyAoSWFuIEphY2tzb24pLgorICAgIFRoaXMgaXMgcGFydCBvZiB0aGUgZml4IGZvciAjMTA4NTg3LgorICAqIExldCBkcGtnLXNvdXJjZSAteCB0b3VjaCBhbGwgcGF0Y2hlZCBmaWxlcyB0byBoYXZlIHRoZSBzYW1lCisgICAgdGltZXN0YW1wIHRvIG1pdGlnYXRlIHRpbWUtc2tldyBwcm9ibGVtcyAoRGVuaXMgQmFyYmllcikuCisgICAgQ2xvc2VzOiAjMTA1NzUwCisgICogU3RyaXAgYW55IG5ld2xpbmVzIGZyb20gVXBsb2FkZXJzIGZpZWxkIG9uIGRwa2ctc291cmNlIC1iLgorICAgIENsb3NlczogIzI1NDQ0OQorCisgIFsgQ2hyaXN0aWFuIFBlcnJpZXIgXQorICAqIFN3aXRjaCB0byBwbzRhIGZvciBtYW5wYWdlcyB0cmFuc2xhdGlvbi4gQ2xvc2VzOiAjMzIwMTIyCisgICAgVGhpcyBhZGRzIGEgQnVpbGQtRGVwZW5kcyBvbiBwbzRhLgorICAqIEFkZCBWaWV0bmFtZXNlIHRvIHBvL0xJTkdVQVMgYXMgaXQgd2FzIHByZXZpb3VzbHkgbWlzc2luZy4KKyAgKiBVcGRhdGVkIFRyYW5zbGF0aW9uczoKKyAgICAtIENhdGFsYW4gKEpvcmRpIE1hbGxhY2gpLiBDbG9zZXM6ICMzNTE1ODcKKyAgICAtIEZyZW5jaCAoQ2hyaXN0aWFuIFBlcnJpZXIpOiAxMDExdC4KKyAgICAtIEdhbGljaWFuIChKYWNvYm8gVGFycmlvKTogMTAwMnQuIENsb3NlczogIzM1MTc5NQorICAgIC0gQmFzcXVlIChQaWFycmVzIEJlb2JpZGUpOiAxMDAydC4gQ2xvc2VzOiAjMzUxODQ1CisgICAgLSBTbG92YWsgKFBldGVyIE1hbm4pOiAxMDAydC4gQ2xvc2VzOiAjMzUyMDg3LCAjMzUyMzExCisgICAgLSBWaWV0bmFtZXNlIChDbHl0aWUgU2lkZGFsKTogMTAxMXQuIENsb3NlczogIzM1MjMwNworCisgLS0gRnJhbmsgTGljaHRlbmhlbGQgPGRqcGlnQGRlYmlhbi5vcmc+ICBTdW4sIDEyIEZlYiAyMDA2IDAyOjMyOjEyICswMTAwCisKK2Rwa2cgKDEuMTMuMTMpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgIFsgRnJhbmsgTGljaHRlbmhlbGQgXQorICAqIGRwa2cgYW5kIGRzZWxlY3QgYXJlIG5vdyBpbiBzZWN0aW9uIGFkbWluLCBub3Qgc2VjdGlvbiBiYXNlLgorICAgIENvcnJlY3QgaW5mbyBpbiB0aGUgY29udHJvbCBmaWxlLgorICAqIEJ1bXAgU3RhbmRhcmRzLVZlcnNpb24gdG8gMy42LjIgKG5vIGNoYW5nZXMpLgorICAqIEZpeCB0eXBvIGluIGRwa2ctYXJjaGl0ZWN0dXJlIG1hbiBwYWdlLiBDbG9zZXM6ICMzMzQzMzAKKyAgKiBIb25vciBMRF9MSUJSQVJZX1BBVEggaW4gZHBrZy1zaGxpYmRlcHMuIEZpeGVzIGEgcmVncmVzc2lvbgorICAgIGZyb20gMS4xMy4xMSB0byAuMTIuCisgICogRG9uJ3QgcmVjdXJzZSBpbnRvIHBhY2thZ2UgZGlyZWN0b3JpZXMgdG8gc2VhcmNoIGZvciBsb2NhbAorICAgIHNobGlicyBmaWxlcyBzaW5jZSBpdCBpcyBvYnZpb3VzbHkgYSB3YXN0ZSBvZiB0aW1lLiBCYXNlZAorICAgIG9uIGEgc3VnZ2VzdGlvbiBieSBTdGV2ZSBMYW5nYXNlay4gQ2xvc2VzOiAjMzM4NzI1CisKKyAgWyBDaHJpc3RpYW4gUGVycmllciBdCisgICogVXBkYXRlZCBUcmFuc2xhdGlvbnM6CisgICAgLSBEdXRjaCAoQmFydCBDb3JuZWxpcykuIEZpeCBlcnJvciBtZW50aW9uZWQgaW4gIzMyMzkwOCBieQorICAgICAgU3RlcGhhbiBLcmFtZXIuCisgICAgLSBKYXBhbmVzZSAoS2Vuc2hpIE11dG8pLiBDbG9zZXM6ICMzNDk4MDgKKworICBbIEd1aWxsZW0gSm92ZXIgXQorICAqIEZpeCB0eXBvIGluIGRwa2ctc3RhdG92ZXJyaWRlIG1hbnBhZ2UuIENsb3NlczogIzM0ODExMworICAgIFRoYW5rcyB0byBNYXJjIEhhYmVyIDxtaCtkZWJpYW4tcGFja2FnZXNAenVnc2NobHVzLmRlPi4KKyAgKiBEb2N1bWVudCB0aGUgLS1uby1kZWJzaWcgb3B0aW9uIGluIGRwa2cgbWFucGFnZS4gQ2xvc2VzOiAjMzE2MzY3CisgICAgVGhhbmtzIHRvIEJhc3RpYW4gS2xlaW5laWRhbSA8Y2FsdmluQGRlYmlhbi5vcmc+LgorICAqIEZpeCB0eXBvcyBpbiBkc2VsZWN0IG1hbnBhZ2UuIENsb3NlczogIzMxMDM1OAorICAgIFRoYW5rcyB0byBBIENvc3RhIDxhZ2Nvc3RhQGdpcy5uZXQ+LgorICAqIEZpeCB0eXBvIGluIHN0YXJ0LXN0b3AtZGFlbW9uJ3MgaGVscCBvdXRwdXQuIENsb3NlczogIzMzMzY3MworICAgIFRoYW5rcyB0byBDaHJpc3RvcGggTWFzZXIgPGNtQGZpbmFuY2lhbC5jb20+LgorICAqIERvY3VtZW50IHRoZSBjb3JyZWN0IGZvcm1hdCBzdHJpbmcgZm9yIGRwa2ctcXVlcnkgLS1zaG93Zm9ybWF0IG9wdGlvbi4KKyAgICBVcGRhdGUgLWwgZXhhbXBsZSBhbmQgbG93ZXIgY2FzZSB0aGUgcHJvZ3JhbSBuYW1lIGluIHRoZSB0aXRsZSBoZWFkZXIuCisgICAgVGhhbmtzIHRvIFplZnJhbSA8emVmcmFtQGZ5c2gub3JnPi4gQ2xvc2VzOiAjMTc0OTc2CisgICogTWFrZSBkcGtnLWFyY2hpdGVjdHVyZSBub3QgcHJpbnQgdGhlIHdhcm5pbmcgYWJvdXQgYSBtaXNtYXRjaCBiZXR3ZWVuCisgICAgZ2NjIHRhcmdldCBtYWNoaW5lIHR5cGUgYW5kIEdOVSB0YXJnZXQgc3lzdGVtIHR5cGUgaWYgdGhlIGFjdGlvbnMgYXJlCisgICAgJy1lJyBvciAnLWknLgorCisgLS0gRnJhbmsgTGljaHRlbmhlbGQgPGRqcGlnQGRlYmlhbi5vcmc+ICBTYXQsIDI4IEphbiAyMDA2IDEzOjA0OjE2ICswMTAwCisKK2Rwa2cgKDEuMTMuMTIpIGV4cGVyaW1lbnRhbDsgdXJnZW5jeT1sb3cKKworICAqIER1ZSB0byB0aGUgY2hhbmdlcyBpbiBkcGtnLXNobGliZGVwcyBpdCBpcyBub3QgcmVjb21tZW5kZWQKKyAgICB0byB1c2UgdGhpcyB2ZXJzaW9uIGZvciBidWlsZGluZyBwYWNrYWdlcyBpbnRlbmRlZCB0byBiZQorICAgIHVwbG9hZGVkIGludG8gYW4gb2ZmaWNpYWwgYXJjaGl2ZSwgeWV0LgorCisgIFsgRnJhbmsgTGljaHRlbmhlbGQgXQorICAqIFVwZGF0ZSBBVVRIT1JTIGFuZCBkZWJpYW4vY29weXJpZ2h0IGZvciBuZXcgbWFpbnRhaW5lciB0ZWFtLgorCisgICogRG9uJ3QgdXNlIHRoZSBsZGQgb3V0cHV0IGluIGRwa2ctc2hsaWJkZXBzLiBTZWFyY2ggZm9yIHRoZQorICAgIG1hdGNoaW5nIGxpYnJhcmllcyBvdXJzZWxmLiBUaGlzIGZpeGVzIHByb2JsZW1zIHdpdGggYm90aAorICAgIHN5bWxpbmtlZCBkaXJlY3RvcmllcywgQ2xvc2VzOiAjMTAzMDI0LCAjMTQ1NzE0LCAjMTY0MDIwLCAjMjg1ODU3CisgICAgYW5kIGJpYXJjaCBidWlsZHMuIENsb3NlczogIzMxNzA4MgorICAqIExldCBkcGtnLWdlbmNvbnRyb2wgYmFpbCBvdXQgd2l0aCBhbiBlcnJvciBpZiBwYXJzZWRlcAorICAgIGZvdW5kIGFuIGVycm9yIHdoaWxlIHBhcnNpbmcgYSBkZXBlbmRlbmN5IGZpZWxkLiBDbG9zZXM6ICMyMjgxMjUKKyAgKiBkcGtnLXNvdXJjZSAteCBub3cgdHJpZXMgdG8gY2hvd24gYWxsIGZpbGVzIGV4dHJhY3RlZCBmcm9tCisgICAgdGFyIGZpbGVzLiBUaGUgdGVtcG9yYXJ5IGRpcmVjdG9yeSBpcyBub3cgY3JlYXRlZCB3aXRoIG1vZGUKKyAgICAwNzAwLCB0b28uIFRvZ2V0aGVyIHRoaXMgc2hvdWxkIG1ha2UgaXQgc2FmZXIgdG8gcnVuCisgICAgZHBrZy1zb3VyY2UgLXggYXMgcm9vdC4gQmFzZWQgb24gc3VnZ2VzdGlvbnMgYnkgTWFyY3VzCisgICAgQnJpbmttYW5uIGFuZCBDb2xpbiBXYXRzb24uIENsb3NlczogIzE0NDU3MSwgIzIzODQ2MAorICAqIExldCBkcGtnLXNvdXJjZSAtYiBjaGVjayB0aGUgYnVpbGQgcmVsYXRpb24gZmllbGRzIGJlZm9yZQorICAgIHB1dHRpbmcgdGhlbSBpbnRvIHRoZSAuZHNjLiBBcyBhIHNpZGUgZWZmZWN0IHRoZXkgYWxzbworICAgIGdldCBub3JtYWxpemVkLiBDbG9zZXM6ICMyNTQ0NDkKKyAgKiBDaGVjayB0aGUgZ3BnIHNpZ25hdHVyZXMgb2YgLmRzYyBmaWxlcyBiZWZvcmUgdW5wYWNraW5nLiBTZWUKKyAgICB0aGUgdXBzdHJlYW0gY2hhbmdlbG9nIGZvciBhIGZ1bGwgZGVzY3JpcHRpb24gb2YgdGhlIHNlbWFudGljcy4KKyAgICBCYXNlZCBvbiBhIHBhdGNoIGJ5IE1hdHQgWmltbWVybWFuLiBDbG9zZXM6ICM0ODcxMQorICAqIExldCBkcGtnLXNvdXJjZSBlbnN1cmUgKGFzIGdvb2QgYXMgcG9zc2libGUpIHRoYXQgYWxsCisgICAgYnVpbGQgc291cmNlIHBhY2thZ2VzIGNhbiBhbHNvIGJlIHVucGFja2VkLgorICAgIENsb3NlczogIzY4MjAsICM3MDE0CisgICAgQWxzbyBmaXhlZCBoYW5kbGluZyBvZiBtZDVzdW0gLWIgb3V0cHV0IGluIGRwa2ctc291cmNlIG9uCisgICAgdGhlIHdheS4gQmFzZWQgb24gYSBwYXRjaCBieSBJbmdvIFNhaXR6LiBDbG9zZXM6ICMzMTYxMjMKKyAgKiBDaGVjayBmb3IgaWxsZWdhbCBhcmNoaXRlY3R1cmUgc3RyaW5ncyBpbiBkcGtnLWdlbmNvbnRyb2wgYW5kCisgICAgZHBrZy1zb3VyY2UuIGRwa2ctZ2VuY29udHJvbCB3aWxsIG9ubHkgaXNzdWUgYSB3YXJuaW5nIHdoaWxlCisgICAgZHBrZy1zb3VyY2Ugd2lsbCBlcnJvciBvdXQuIENsb3NlczogIzk2OTIwCisgICogQWRkIHN1cHBvcnQgInBhY2thZ2UgdHlwZXMiIHRvIGRwa2ctc2hsaWJkZXBzLiBQYXRjaCBieSBKb2V5IEhlc3MuCisgICAgQ2xvc2VzOiAjMzM1MDU2LCAjMzQ1NDc1CisgICogRml4IG1hbiBwYWdlIHJlZmVyZW5jZXMgdG8gZHBrZyBhbmQgZHNlbGVjdCBtYW4gcGFnZXMuIE1hbnkKKyAgICBvZiB0aGVtIHN0aWxsIGhhZCBhIHdyb25nIHNlY3Rpb24uCisgICAgQ2xvc2VzOiAjMzMyODI2CisgICogTGV0IGRwa2ctc291cmNlIC1iIHdhcm4gYWJvdXQgc3BlY2lhbCBwZXJtaXNzaW9ucyBvZiBmaWxlcyBhZGRlZAorICAgIGluIHRoZSBkaWZmIHNpbmNlIHRoZXNlIHdpbGwgZ2V0IGxvc3QuIENsb3NlczogIzMwNjEyNQorICAqIGRwa2ctc291cmNlIC14IGRpZG4ndCB3b3JrIGluIGNhc2UgdGhlIHVwc3RyZWFtIHZlcnNpb24gb3IKKyAgICB0aGUgRGViaWFuIHZlcnNpb24gZW5kZWQgd2l0aCB+LiBGaXhlZC4KKworICBbIENocmlzdGlhbiBQZXJyaWVyIF0KKyAgKiBVcGRhdGVkIFRyYW5zbGF0aW9uczoKKyAgICAtIEZyZW5jaCAoQ2hyaXN0aWFuIFBlcnJpZXIpLgorICAgIC0gUG9saXNoIChCYXJ0b3N6IEZlbnNraSkuIENsb3NlczogIzMxNDIzNworICAgIC0gTm9yd2VnaWFuIEJva21hbCAoSGFucyBGLiBOb3JkaGF1ZykuIENsb3NlczogIzMxNTU0OCwgIzMxNTk5MAorICAgIC0gQ3plY2ggKE1pcm9zbGF2IEt1cmUpLiBDbG9zZXM6ICMzMjM3NzUsICMzNDUzNDcKKyAgICAtIFJ1c3NpYW4gKFl1cmkgS296bG92KS4gQ2xvc2VzOiAjMzIzODIxLCAjMzM1MTcwCisgICAgLSBKYXBhbmVzZSAoS2Vuc2hpIE11dG8pLiBDbG9zZXM6ICMzMjM5MzgKKyAgICAtIEJyYXppbGlhbiBQb3J0dWd1ZXNlIChBbmRyZSBMdWlzIExvcGVzKS4gQ2xvc2VzOiAjMzI1MjI0LCAjMzMyODcyCisgICAgLSBSdXNzaWFuIChZdXJpIEtvemxvdikuIENsb3NlczogIzMzNTE3MCwgIzM0OTE1MQorICAgIC0gU3dlZGlzaCAoUGV0ZXIga2FybHNzb24pLiBDbG9zZXM6ICMzMjU5OTAsICMzNDQwNTgsICMzMzcxNjQsICMzMzQwNjMKKyAgICAtIE5vcndlZ2lhbiBOeW5vcnNrIChIw6V2YXJkIEtvcnN2b2xsKS4gQ2xvc2VzOiAjMzE1OTg3CisgICAgLSBQb3J0dWd1ZXNlIChNaWd1ZWwgRmlndWVpcmVkbykuCisgICAgICBDbG9zZXM6ICMzMTU0NjEsICMzMjM2NzQsICMzMjM2NDIsICMzMzAwMjEKKyAgICAtIFNwYW5pc2ggKEphdmllciBGZXJuw6FuZGV6LVNhbmd1aW5vIFBlw7FhKS4gQ2xvc2VzOiAjMzIzNjYyLCAjMzE1MjUzCisgICAgLSBEYW5pc2ggKENsYXVzIEhpbmRzZ2F1bCkuIENsb3NlczogIzM0ODU3NSwgIzMyMzc3OSwgIzMzNzk0OCwgIzMyNTY4NworICAgIC0gRHV0Y2ggKEJhcnQgQ29ybmVsaXMpLiBDbG9zZXM6ICMzMjM5MDgKKyAgICAtIEdlcm1hbiAoTWljaGFlbCBQaWVmZWwpLiBDbG9zZXM6ICMzMjM5NjQKKyAgICAtIEl0YWxpYW4gKFN0ZWZhbm8gQ2FuZXBhKS4gQ2xvc2VzOiAjMzI0MTE0LCAjMzQ0NjcxLCAjMzQ3MjI1CisgICAgLSBDYXRhbGFuIChKb3JkaSBNYWxsYWNoKS4gQ2xvc2VzOiAjMzI0NDU2CisgICAgLSBCYXNxdWUgKFBpYXJyZXMgQmVvYmlkZSkuIENsb3NlczogIzM0MjA4OSwgIzMzMjY5OAorICAgIC0gVGFnYWxvZyAoRXJpYyBQYXJlamEpLiBDbG9zZXM6ICMzMzczMDcKKyAgICAtIFNpbXBsaWZpZWQgQ2hpbmVzZSAoVGNoYWlrb3YpLiBDbG9zZXM6ICMzMzgyNjgKKyAgICAtIEdhbGljaWFuIChKYWNvYm8gVGFycsOtbykuIENsb3NlczogIzMzODkwNAorICAgIC0gUm9tYW5pYW4gKEVkZHkgUGV0cmnFn29yKS4gQ2xvc2VzOiAjMzQwNjc0CisgICAgLSBWaWV0bmFtZXNlIChQaGFuIFZpbmggVGhpbmgsIENseXRpZSBTaWRkYWxsKS4KKyAgICAtIEluZG9uZXNpYW4gKFBhcmxpbiBJbWFudWVsKS4gQ2xvc2VzOiAjMzQ0NTEzCisgICAgLSBHcmVlayAoR2FsYXhpY28pLiBDbG9zZXM6ICMzNDQ2NDYKKyAgICAtIEN6ZWNoIChNaXJvc2xhdiBLdXJlKS4gQ2xvc2VzOiAjMzQ1MzQ3CisgICogRml4ZWQgYnJva2VuIHRyYW5zbGF0aW9uOgorICAgIC0gQnJhemlsaWFuIFBvcnR1Z3Vlc2UgKEphbWVzIFRyb3VwKS4gQ2xvc2VzOiAjMzMyODcyCisgICogRml4IFJ1c3NpYW4gbWFuIHBhZ2UgZm9yIHN0YXJ0LXN0b3AtZGVhbW9uKDgpCisgICAgQ2xvc2VzOiAjMzI1ODA0CisgICogRml4IEdlcm1hbiBtYW4gcGFnZSBmb3IgdXBkYXRlLWFsdGVybmF0aXZlcyg4KQorICAgIENsb3NlczogIzMyOTkwOAorICAqIEZpeCB0eXBvIGluIGRwa2cgb25saW5lIGhlbHAgbWVzc2FnZS4gVW5mdXp6eSB0cmFuc2xhdGlvbnMKKyAgICBDbG9zZXM6ICMzNDkyOTkKKworICBbIEd1aWxsZW0gSm92ZXIgXQorICAqIEFkZCBhcm1lYiB0byBjcHV0YWJsZS4gQ2xvc2VzOiAjMzMxMjMyCisgICAgVGhhbmtzIHRvIExlbm5lcnQgQnV5dGVuaGVrIDxidXl0ZW5oK2RlYmlhbkB3YW50c3RvZmx5Lm9yZz4uCisgICogRG9uJ3QgdHJ5IHRvIGNvbXBpbGUgaW4gU0VMaW51eCBzdXBwb3J0IG9uIEdOVS9rRnJlZUJTRC4gIENsb3NlczogIzMxMzMwMAorICAgIFRoYW5rcyB0byBBdXJlbGllbiBKYXJubyA8YXVyZWwzMkBkZWJpYW4ub3JnPi4KKyAgKiBXaGVuIGxpbmtpbmcgc3RhdGljYWxseSwgZXhwbGljaXRseSBhZGQgbGlic2Vwb2wsIGV2ZW4gaWYgaXRzIG9ubHkgYQorICAgIHRyYW5zaXRpdmUgbGlicmFyeS4gVGhlIHByb3BlciBmaXggc2hvdWxkIGNvbWUgd2l0aCBhIHBrZy1jb25maWcgZmlsZS4KKyAgICBCYXNlZCBvbiBhIHBhdGNoIGJ5IEJhcnQgTWFydGVucyA8YmFydC5tYXJ0ZW5zQGFkdmFsdmFzLmJlPi4KKyAgICBDbG9zZXM6ICMzNDc3NDQsICMzNDg2NTkKKyAgKiBBZGQgc3VwcG9ydCBmb3IgYXJjaGl0ZWN0dXJlIHdpbGRjYXJkcywgYnV0IGZvciBub3cgdGhleSB3aWxsIG9ubHkgYmUKKyAgICBleHBvc2VkIGluIGRlYmlhbi9jb250cm9sIGZpbGVzLCBub3QgaW4gYmluYXJ5IG5vciBzb3VyY2UgcGFja2FnZXMuCisgICAgQ2xvc2VzOiAjMjkxOTM5CisgICogQ2hhbmdlIHN0YXJ0LXN0b3AtZGFlbW9uJ3MgLS1leGVjIG9wdGlvbiBiZWhhdmlvdXIgb24gR05VL0xpbnV4IHRvCisgICAgY29tcGFyZSB0aGUgZmlsZW5hbWUgcG9pbnRlZCBieSAnL3Byb2MvPHBpZD4vZXhlJyBpbnN0ZWFkIG9mIHRoZSBpbm9kZQorICAgIGFuZCBkZXZpY2UgbnVtYmVycy4gVGhhbmtzIHRvIFZhc2lsaXMgVmFzYWl0aXMgPHYudmFzYWl0aXNAc21zLmVkLmFjLnVrPi4KKyAgICBDbG9zZXM6ICMzMzc5NDIKKworIC0tIEZyYW5rIExpY2h0ZW5oZWxkIDxkanBpZ0BkZWJpYW4ub3JnPiAgVHVlLCAyNCBKYW4gMjAwNiAxMToxNTozNiArMDEwMAorCitkcGtnICgxLjEzLjExLjEpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogQ2hhbmdlIG1haW50YWluZXJzIHRvIG5ldyB0ZWFtLgorCisgLS0gU2NvdHQgSmFtZXMgUmVtbmFudCA8c2NvdHRAbmV0c3BsaXQuY29tPiAgVGh1LCAxMiBKYW4gMjAwNiAwNzo1Njo0OSArMDAwMAorCitkcGtnICgxLjEzLjExKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKyAgCisgIFRoZSAiR29vZCwgY2xlYW4gZnVuIiBSZWxlYXNlLgorCisgICogRml4ZWQgdGhlIGFsd2F5cyBicm9rZW4gZXJyb3IgaGFuZGxpbmcgc28gdGhhdCBvbmx5IHRoZSBpbnRlbmRlZAorICAgIGNsZWFudXAgaGFuZGxlcnMgYXJlIHJ1biwgcmF0aGVyIHRoYW4gb25lcyB0aGF0IHdlIGRpZG4ndCBleHBlY3QuCisgICAgVGhpcyBjb3JyZWN0cyB0aGUgYnVnIHdoZW4gYSBwYWNrYWdlJ3MgcG9zdHJtIGZhaWxzIGFuZCB0aGUgcGFja2FnZSBpcworICAgIGxlZnQgaW4gYW4gaW5zdGFsbGVkIHN0YXRlIHdpdGggbm8gZmlsZXM7IHRoZSBwYWNrYWdlIHdpbGwgbm93IGJlIGxlZnQKKyAgICBpbiBhIGhhbGYtaW5zdGFsbGVkIHN0YXRlLCBhcyBvcmlnaW5hbGx5IGludGVuZGVkLiAgRm91bmQgYnkgTWFyZ2EKKyAgICBNYW50ZXJvbGEgd2hpbGUgZG9jdW1lbnRpbmcgdGhlIG1haW50YWluZXIgc2NyaXB0cy4gIENsb3NlczogIzI5NjAyNi4KKyAgKiBGaXhlZCByZW1vdmFsIG9mIGZpbGVzIGludm9sdmVkIGluIGRpdmVyc2lvbnMgZHVyaW5nIHVwZ3JhZGUsIGNhdXNlZCBieQorICAgIGNoZWNraW5nIHdoZXRoZXIgdGhlICJkaXJlY3RvcnkiIHdhcyBpbiB1c2UgYnkgYW5vdGhlciBwYWNrYWdlIHdpdGhvdXQKKyAgICBhY3R1YWxseSBjaGVja2luZyB3aGV0aGVyIG9yIG5vdCBpdCB3YXMgYSBkaXJlY3RvcnkuICBDbG9zZXM6ICMzMTAzOTAuCisgICogRml4ZWQgcGFja2FnZSBzYXZpbmcgdG8gbm90IGRpc2FwcGVhciBwYWNrYWdlcyB3aG8gZGl2ZXJ0IGFueXRoaW5nIGZyb20KKyAgICB0aGUgaW5zdGFsbGluZyBwYWNrYWdlIG91dCBvZiB0aGUgd2F5LiAgQ2xvc2VzOiAjMTEzNjI2LgorICAqIEltcHJvdmVkIGNsZWFuLXVwIG9mIHVucGFjayBmYWlsdXJlIGR1cmluZyBpbnN0YWxsIG9yIHVwZ3JhZGUsIHRvIGxlYXZlCisgICAgdGhlIHN5c3RlbSBpbiBleGFjdGx5IHRoZSBzYW1lIHN0YXRlIGFzIGl0IHN0YXJ0ZWQgaW4uCisgICAgQ2xvc2VzOiAjNDc0MDQsICM4MjQwNywgIzEyMTE3MywgIzE3MDg2OSwgIzIwMTg0OCwgIzIzNjczMywgIzI2ODYzOS4KKyAgKiBGaXhlZCBjcmFzaCB3aGVuIHVucGFja2luZyBhIHBhY2thZ2Ugd2hpY2ggaGFzIGFuIHVudmVyc2lvbmVkIFJlcGxhY2VzCisgICAgZGVjbGFyZWQgb24gaXQgYnkgYW5vdGhlciBwYWNrYWdlIHByZXZpb3VzbHkgdW5wYWNrZWQgaW4gdGhlIHNhbWUgcnVuCisgICAgKENvbGluIFdhdHNvbikuICBDbG9zZXM6ICMzMjI1OTUuCisKKyAgKiBOZXcgaW5zdGFsbCB1bndpbmRpbmcgZml4ZWQgdG8gZW5zdXJlIHdlIGRvbid0IGxlYXZlIGEgdmVyc2lvbiBpbiB0aGUKKyAgICBzdGF0dXMgZGIgZm9yIGEgbm90LWluc3RhbGxlZCBwYWNrYWdlLgorICAqIENvcnJlY3RlZCBlcnJvciBjYWxsIHdoZW4gZW5jb3VudGVyaW5nIGEgY29ycnVwdGVkIGZpbGVzeXN0ZW0gdGFyZmlsZQorICAgIHRvIG5vdCBwcmludCAiU3VjY2VzcyIuICBDbG9zZXM6ICM5NTU3MC4KKyAgKiBGaXhlZCBjYXN0cmF0aW9uIG9mIHBvdGVudGlhbGx5IHVuc2FmZSBkZXZpY2VzIHRvIG5vdCBmb2xsb3cgc3ltbGlua3MuCisgICAgQ2xvc2VzOiAjMTY5OTI4LgorICAqIE1hcmtlZCBsb2cgZmlsZSBkZXNjcmlwdG9yIGFzIGNsb3NlLW9uLWV4ZWMuICBDbG9zZXM6ICMzMjA5MjUuCisgICogUmUtd29ya2VkIGRwa2ctc291cmNlIC14IHRvIGFsbG93IGFsbCBtYW5uZXIgb2Ygc3RyYW5nZSB0aGluZ3MgbWFpbnRhaW5lcnMKKyAgICBzZWVtIHRvIGRvLCB1bnBhY2tpbmcgaXNuJ3QgdGhlIHJpZ2h0IHBsYWNlIHRvIGVuZm9yY2Ugc2FuaXR5OyB3ZSdsbAorICAgIGRvIGl0IGluIC1iIGxhdGVyIG9uID46LSkuICBDbG9zZXM6ICMzMTY0NzAsICMzMTc3NjAsICMzMTg0NzMsICMzMTg3NDUsCisgICAgIzMyMjM1OSwgIzMyMjM2MSwgIzMyMjM2Mi4KKworICAqIENvcnJlY3RlZCBkc2VsZWN0IHN5bm9wc2lzIGxpbmUgdG8gbWF0Y2ggY29uc2Vuc3VzLiAgQ2xvc2VzOiAjMzE4NjU5LgorICAqIENoYW5nZWQgZHBrZy1uYW1lIHRvIHVzZSBhIHNoZWxsIHJlZGlyZWN0IHJhdGhlciB0aGFuIHRoZSAvZGV2L3N0ZGVycgorICAgIGRldmljZSB0aGF0IG1heSBub3QgYmUgd3JpdGFibGUuICBDbG9zZXM6ICMzMTgzNzYuCisgICogQWRqdXN0ZWQgdmFyaW91cyBkcGtnLXF1ZXJ5IG9wdGlvbnMgdG8gYXZvaWQgb3V0cHV0dGluZyBhIHRyYWlsaW5nCisgICAgbmV3bGluZS4gIENsb3NlczogIzE1MTY1MSwgIzMxOTc4MS4KKyAgKiBDaGFuZ2VkIHJlZmVyZW5jZXMgdG8gInN0YXR1c292ZXJyaWRlIiBmaWxlIHRvIGp1c3QgInN0YXRvdmVycmlkZSIKKyAgICB0byBtYWtlIGl0IG1hdGNoIHJlYWxpdHkuICBDbG9zZXM6ICMzMjA5NTIuCisgICogRml4ZWQgc2V2ZXJhbCBidWdzIHdpdGggdGhlIGRlZmF1bHQgZGlmZiBpZ25vcmUgbGlzdCB1c2VkIGJ5IGRwa2ctc291cmNlLgorICAqIEFkZGVkICwsKiB0byB0aGUgbGlzdCBvZiBkZWZhdWx0IGRpZmYgaWdub3JlIGxpc3QuICBDbG9zZXM6ICMzMjI5MTcuCisKKyAgKiBGaXhlcyB0byBkcGtnLWRldiAoRnJhbmsgTGljaHRlbmhlbGQpOgorICAgIC0gZHBrZy1jaGVja2J1aWxkZGVwcyB3aWxsIG5vdyBleGl0IHdpdGggYW4gZXJyb3IgaWYgaXQgaXMgdW5hYmxlIHRvCisgICAgICBwYXJzZSBhIGRlcGVuZGVuY3kgZmllbGQuICBDbG9zZXM6ICMxNzE3NjIsICMzMDIyMjkuCisgICAgLSBkcGtnLWdlbmNoYW5nZXMgd2lsbCBub3cgb3V0cHV0IGEgd2FybmluZyBpZiBnaXZlbiAtc2QgZm9yIGEgbmF0aXZlCisgICAgICBwYWNrYWdlLCBhcyBpdCdzIGdvaW5nIHRvIGlnbm9yZSBpdC4gIENsb3NlczogIzU1NzEuCisgICAgLSBkcGtnLXNvdXJjZSBmaXhlZCB0byBnaXZlIGEgbW9yZSBtZWFuaW5nZnVsIGVycm9yIG1lc3NhZ2UgaWYgZ2l2ZW4KKyAgICAgIGEgZGlyZWN0b3J5IGFzIHRoZSBmaXJzdCBhcmd1bWVudC4gIENsb3NlczogIzMwNjg3NC4KKyAgICAtIGRwa2ctc291cmNlIGZpeGVkIHRvIGhhbmRsZSBiZWluZyBnaXZlbiBhbiBhYnNvbHV0ZSBwYXRoIHRvIC1iLgorICAgICAgQ2xvc2VzOiAjMTQ3NTc0LgorICAgIC0gRml4IGNvbnRyb2xsaWIucGwgdG8gYWxsb3cgd2hpdGVzcGFjZSBiZWZvcmUgdmVyc2lvbiBvcGVyYXRvcnMuCisgICAgICBDbG9zZXM6ICMyNzM0ODksICMzMTAzMDYuCisgICAgLSBGaXggYXJjaGl0ZWN0dXJlIGRlcGVuZGVuY3kgcGFyc2luZyB0aGF0IHNvbWV0aW1lcyBnZW5lcmF0ZWQgd3JvbmcKKyAgICAgIGxpc3Qgb2YgcmVxdWlyZW1lbnRzLiAgQ2xvc2VzOiAjMzE5ODE2LgorICAgIC0gTWFrZSB0aGUgZGVmYXVsdCBjb250cm9sIGZpZWxkIG5hbWUgbWFuZ2xpbmcgYmVoYXZpb3VyICJuaWNlciIgYnkKKyAgICAgIHVwcGVyLWNhc2luZyBhbGwgbGV0dGVycyB0aGF0IGNvbWUgYWZ0ZXIgYSBkYXNoLiAgQ2xvc2VzOiAjMzA2NDc0LgorICAgIC0gSWdub3JlIHRyYWlsaW5nIG5ld2xpbmVzIGluIHNpbmdsZSBwYXJhZ3JhcGggY29udHJvbCBmaWxlcy4KKyAgICAgIENsb3NlczogIzU3MTk0LCAjMTU2MzE5CisgICogRG9jdW1lbnRhdGlvbjoKKyAgICAtIEZpeGVkIHR5cG8gaW4gZHBrZy1hcmNoaXRlY3R1cmUgbWFuIHBhZ2UuICBDbG9zZXM6ICMzMTc3NzAuCisgICAgLSBEb2N1bWVudGVkIGRwa2ctZGViIC1XLy0tc2hvdyBhbmQgLS1zaG93Zm9ybWF0LiAgQ2xvc2VzOiAjMzE5Nzg0LgorCisgLS0gU2NvdHQgSmFtZXMgUmVtbmFudCA8c2NvdHRAbmV0c3BsaXQuY29tPiAgV2VkLCAxNyBBdWcgMjAwNSAwNDo0NDo0NCArMDEwMAorCitkcGtnICgxLjEzLjEwKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKyAgCisgIFRoZSAiQnVsbHkncyBTcGVjaWFsIFByaXplIiBSZWxlYXNlLgorCisgICogUmVtb3ZlZCAvdXNyL3NiaW4vc3RhcnQtc3RvcC1kYWVtb24uICBDbG9zZXM6ICMzMTM0MDAuCisgICogRml4ZWQgbWQ1c3VtIGRpdmVyc2lvbiByZW1vdmFsLiAgQ2xvc2VzOiAjMzEzNDE1LgorICAqIEZpeGVkIGRwa2ctc291cmNlIHRvIGhhbmRsZSBuYXRpdmUgdGFyYmFsbHMgd2l0aCBhIERlYmlhbiByZXZpc2lvbi4KKyAgICBDbG9zZXM6ICMzMTMzODEsICMzMTM0MzMuCisgICogRml4ZWQgdXBncmFkZSBmcm9tIHByZS1zYXJnZSBkcGtnIG91dHNpZGUgb2YgZHNlbGVjdC4gIENsb3NlczogIzMxNDU3NS4KKyAgKiBDaGFuZ2VkIGxvZyB0aW1lcyB0byBiZSBsb2NhbCByYXRoZXIgdGhhbiBVVEMuICBDbG9zZXM6ICMzMTMzNDcuCisgICogQ2hhbmdlZCBsb2cgd3JpdGluZyB0byBiZSBsaW5lLWJ1ZmZlcmVkLiAgQ2xvc2VzOiAjMzE0NTUwLgorICAqIE1vdmVkIGxvZyBjcmVhdGlvbiB0byBwb3N0aW5zdCwgYW5kIGRvbid0IGZhaWwgaWYgYmFzZS1wYXNzd2QgaGFzbid0CisgICAgYmVlbiBjb25maWd1cmVkIHlldC4gIENsb3NlczogIzMxNjA4NC4KKyAgKiBEb24ndCB0cnkgdG8gY29tcGlsZSBpbiBTRUxpbnV4IHN1cHBvcnQgb24gSHVyZC4gIENsb3NlczogIzMxMzM5OC4KKyAgKiBQbGFjZSBjb2RlIGZvciBTRUxpbnV4IHN1cHBvcnQgaW4gdGhlIHJpZ2h0IHBsYWNlIHNvIGl0IHdpbGwgYWN0dWFsbHkKKyAgICBnZXQgY29tcGlsZWQgaW4gYW5kIHVzZWQgKE1hbm9qIFNyaXZhc3RhdmEpLiAgQ2xvc2VzOiAjMzE0ODg2LgorCisgICogRG9jdW1lbnRhdGlvbjoKKyAgICAtIEFkZGVkIG1pc3Npbmcgd29yZCB0byBkcGtnLWFyY2hpdGVjdHVyZSBtYW5wYWdlLiAgQ2xvc2VzOiAjMzEzNTU0LgorICAgIC0gUmVmZXJlbmNlIHRvIGRwa2cgbWFucGFnZSBpbiBkcGtnLmNmZyBjb3JyZWN0ZWQuICBDbG9zZXM6ICMzMTQyNjIuCisgICogVXBkYXRlZCBUcmFuc2xhdGlvbnMgKENocmlzdGlhbiBQZXJyaWVyKToKKyAgICAtIEJhc3F1ZSAoUGlhcnJlcyBCZW9iaWRlIEVnYW5hKS4gIENsb3NlczogIzMxMzQ3NC4KKyAgICAtIENhdGFsYW4gKEpvcmRpIE1hbGxhY2gpLiAgQ2xvc2VzOiAjMzEzMjg4LgorICAgIC0gQ3plY2ggKE1pcm9zbGF2IEt1cmUpLiAgQ2xvc2VzOiAjMzE0NDMxLgorICAgIC0gRGFuaXNoIChDbGF1cyBIaW5kc2dhdWwpLgorICAgIC0gRnJlbmNoIChDaHJpc3RpYW4gUGVycmllcikuCisgICAgLSBHZXJtYW4gKEplbnMgU2VpZGVsKS4gIENsb3NlczogIzMxNDEyNS4KKyAgICAtIEdyZWVrIChHcmVlayB0ZWFtKS4gIENsb3NlczogIzMxNDgyOC4KKyAgICAtIEl0YWxpYW4gKExlbGUgR2FpZmF4KS4KKyAgICAtIEphcGFuZXNlIChLZW5zaGkgTXV0bykuICBDbG9zZXM6ICMzMTMzMzAuCisgICAgLSBSdXNzaWFuIChZdXJpIEtvemxvdikuICBDbG9zZXM6ICMzMTM2MjAuCisgICogSGVicmV3IHRyYW5zbGF0aW9uIGRlLWFjdGl2YXRlZCBvbiByZXF1ZXN0IG9mIHRoZSB0cmFuc2xhdG9yIHVudGlsIHRoZXJlCisgICAgaXMgYmV0dGVyIHN1cHBvcnQgZm9yIFJUTCBsYW5ndWFnZXMuICBDbG9zZXM6ICMzMTMyODIuCisKKyAtLSBTY290dCBKYW1lcyBSZW1uYW50IDxzY290dEBuZXRzcGxpdC5jb20+ICBUdWUsIDI4IEp1biAyMDA1IDE0OjE5OjA2ICswMTAwCisKK2Rwa2cgKDEuMTMuOSkgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisgIAorICBUaGUgIk9uIGxpa2UgRG9ua2V5IEtvbmciIFJlbGVhc2UuCisKKyAgKiBPbmx5IG9wZW4gdGhlIGxvZyBmaWxlIHdoZW4gd2UgZmlyc3QgbmVlZCB0byB3cml0ZSB0byBpdCwgdGhpcyBhdm9pZHMKKyAgICB0aGUgbmVlZCB0byBzdXBwcmVzcyBlcnJvcnMgd2hlbiBub3Qgcm9vdCB3aGljaCBmYWtlcm9vdCBkZWZlYXRlZCBhbnl3YXkuCisgICogU3RvcCBkcGtnLXNvdXJjZSBjbG9iYmVyaW5nIGFuIGV4aXN0aW5nIC5vcmlnIGRpcmVjdG9yeSBkdXJpbmcgdW5wYWNraW5nLgorICAgIENsb3NlczogIzIxMjM2LgorICAqIEFsbG93IGFuIGFsdGVybmF0ZSBvdXRwdXQgZGlyZWN0b3J5IHRvIGJlIHNwZWNpZmllZCB0byBkcGtnLXNvdXJjZSBieQorICAgIGdpdmluZyBhIHNlY29uZCBhcmd1bWVudCB0byAteC4gIENsb3NlczogIzI0NjgwMiwgIzI4MjMyMy4KKyAgKiBBZGRlZCAuYXJjaC1pbnZlbnRvcnkgdG8gZGVmYXVsdCBkaWZmIGlnbm9yZSByZWdleHAuICBDbG9zZXM6ICMzMDQyOTcuCisKKyAgU0VMaW51eCBzdXBwb3J0IChNYW5vaiBTcml2YXN0YXZhKToKKyAgKiBPbiBTRUxpbnV4LWVuYWJsZWQgc3lzdGVtcywgdHJ5IHRvIHNldCB0aGUgc2VjdXJpdHkgY29udGV4dCB3aGVuIHRoZQorICAgIHBhY2thZ2UgaXMgdW5wYWNrZWQuICBDbG9zZXM6ICMxOTM2NTMsICMyNDk0OTYsICMzMDcxMzkuCisgICogQWRkZWQgYnVpbGQtZGVwZW5kZW5jeSBvbiBsaWJzZWxpbnV4MS1kZXYuCisKKyAgSW1wcm92ZW1lbnRzIHRvIGRwa2ctc291cmNlIChCcmVuZGFuIE8nRGVhKToKKyAgKiBTdXBwb3J0IHVucGFja2luZyBvZiAiV2lnIEFuZCBQZW4iIChGb3JtYXQgMi4wKSBzb3VyY2UgcGFja2FnZXMuCisgICogTXVsdGlwbGUgcHJpc3RpbmUgdXBzdHJlYW0gdGFyYmFsbHMgYWxsb3dlZC4KKyAgKiBOYXRpdmUgYW5kIHVwc3RyZWFtIHRhcmJhbGxzIG1heSBiZSBiemlwMi1jb21wcmVzc2VkIGluc3RlYWQgb2YgZ3ppcCwKKyAgICBhcyBtYXkgdGhlIGRlYmlhbiBkaWZmIG9yIHRhcmJhbGwuCisgICogVW5zdXBwb3J0ZWQgZm9ybWF0IGVycm9yIGZpeGVkIHRvIG91dHB1dCB0aGUgdW5zdXBwb3J0ZWQgZm9ybWF0CisgICAgcmF0aGVyIHRoYW4gdGhlIHN1cHBvcnRlZCBvbmUuICBDbG9zZXM6ICMxNTYzMTcuCisKKyAtLSBTY290dCBKYW1lcyBSZW1uYW50IDxzY290dEBuZXRzcGxpdC5jb20+ICBTdW4sIDEyIEp1biAyMDA1IDE1OjUyOjQzICswMTAwCisKK2Rwa2cgKDEuMTMuOCkgZXhwZXJpbWVudGFsOyB1cmdlbmN5PWxvdworICAKKyAgVGhlICJJbiBsaWtlIEZseW5uIiBSZWxlYXNlLgorCisgICogTGludXggMi42LjEyIGNoYW5nZWQgdGhlIGJlaGF2aW91ciBvZiBtbWFwIHRvIGZhaWwgYW5kIHNldCBFSU5WQUwgd2hlbgorICAgIGdpdmVuIGEgemVybyBsZW5ndGgsIHJhdGhlciB0aGFuIHJldHVybmluZyBOVUxMLiAgVGhpcyBpcyBQT1NJWGx5CisgICAgY29ycmVjdCwgc28gaGFuZGxlIHplcm8tbGVuZ3RoIHBhY2thZ2UgY29udHJvbCBmaWxlcyAobGlrZSBhdmFpbGFibGUpLgorCisgLS0gU2NvdHQgSmFtZXMgUmVtbmFudCA8c2NvdHRAbmV0c3BsaXQuY29tPiAgRnJpLCAxMCBKdW4gMjAwNSAwNzozOTo0NCArMDEwMAorCitkcGtnICgxLjEzLjcpIGV4cGVyaW1lbnRhbDsgdXJnZW5jeT1sb3cKKyAgCisgIFRoZSAiTWFpZGVuaGVhZCBDcmVlcGluZyBXYXRlciBQbGFudCIgUmVsZWFzZS4KKworICAqIFJlZHVjZWQgaW5hYmlsaXR5IHRvIG9wZW4gYSBsb2cgZmlsZSB0byBhIHdhcm5pbmcsIHN1cHByZXNzZWQgZm9yCisgICAgbm9uLXJvb3Qgb3BlcmF0aW9ucy4gIENsb3NlczogIzMxMjM4My4KKworIC0tIFNjb3R0IEphbWVzIFJlbW5hbnQgPHNjb3R0QG5ldHNwbGl0LmNvbT4gIFRodSwgIDkgSnVuIDIwMDUgMDY6MTI6NTYgKzAxMDAKKworZHBrZyAoMS4xMy42KSBleHBlcmltZW50YWw7IHVyZ2VuY3k9bG93CisgIAorICBUaGUgIkp1c3Qga2lkZGluZyBhYm91dCB0aGUgR29kIHBhcnQiIFJlbGVhc2UuCisKKyAgKiBGaXhlZCBpbmNvcnJlY3QgaW5zdGFsbGF0aW9uIGxvY2F0aW9uIG9mIC9ldGMvbG9ncm90YXRlLmQvZHBrZyBjYXVzZWQKKyAgICBieSBhIG1pcy11bmRlcnN0YW5kaW5nIG9mIGRoX2luc3RhbGwncyBhYmlsaXRpZXMuCisKKyAtLSBTY290dCBKYW1lcyBSZW1uYW50IDxzY290dEBuZXRzcGxpdC5jb20+ICBNb24sICA2IEp1biAyMDA1IDA1OjU4OjM2ICswMTAwCisKK2Rwa2cgKDEuMTMuNSkgZXhwZXJpbWVudGFsOyB1cmdlbmN5PWxvdworICAKKyAgVGhlICJGbGF0dWxlbnQgRWxtIG9mIFdlc3QgUnVpc2xpcCIgUmVsZWFzZS4KKworICAqIEFjdGlvbnMgYW5kIHBhY2thZ2Ugc3RhdGVzIGFyZSBub3cgbG9nZ2VkIGJ5IGRlZmF1bHQgaW4gdGhlCisgICAgL3Zhci9sb2cvZHBrZy5sb2cgZmlsZS4gIFRoaXMgZmlsZSBpcyByb3RhdGVkIG1vbnRobHkgYW5kIGNhbiBiZQorICAgIGRpc2FibGVkIGJ5IGNvbW1lbnRpbmcgdGhlIGxpbmUgaW4gL2V0Yy9kcGtnL2Rwa2cuY2ZnLgorICAqIFVzZXIgZGVjaXNpb25zIGFib3V0IGNvbmZmaWxlcyBhcmUgbm93IGxvZ2dlZC4KKyAgKiBkcGtnLXNvdXJjZSBubyBsb25nZXIgY29tcGxhaW5zIGFib3V0IEVuaGFuY2VzIGZpZWxkLiAgQ2xvc2VzOiAjMTU5NjQyLAorICAgICMxNTk3NDUsICMxNTk3NDYuCisgICogcHJlaW5zdCBubyBsb25nZXIgcmVsaWVzIG9uIHByb2NwcyBiZWluZyBpbnN0YWxsZWQuICBDbG9zZXM6ICMzMTE4MDguCisKKyAgKiBBcmNoaXRlY3R1cmUgU3VwcG9ydDoKKyAgICAtIENoYW5nZSBERUJfKl9HTlVfQ1BVIGZyb20gaTM4NiB0byBpNDg2LCB0byByZWZsZWN0IHJlYWxpdHkuCisgICAgICBERUJfKl9BUkNIX0NQVSByZW1haW5zIGF0IGkzODYsIHlvdSBzaG91bGQgYmUgY2hlY2tpbmcgYWdhaW5zdCB0aGF0LgorICAgICAgQ2xvc2VzOiAjMzEwMzk0LgorICAgIC0gRml4ZWQgb3JkZXIgb3N0YWJsZSBpcyByZWFkIHRvIHByZXZlbnQgTGludXggYmVjb21pbmcgdGhlIEh1cmQuCisgICAgICBDbG9zZXM6ICMzMDk2MDMuCisgICogVXBkYXRlZCBNYW5wYWdlIFRyYW5zbGF0aW9ucyAoQ2hyaXN0aWFuIFBlcnJpZXIpOgorICAgIC0gU3ludGF4IGVycm9yIGNvcnJlY3RlZCBpbiBTd2VkaXNoIG1hbiBwYWdlIGZvciBkcGtnLWRlYi4KKyAgICAgIENsb3NlczogIzMwMDk4MC4KKyAgICAtIFN5bnRheCBlcnJvciBjb3JyZWN0ZWQgaW4gU3BhbmlzaCBtYW4gcGFnZSBmb3IgZHBrZy1zY2FucGFja2FnZXMuCisgICAgICBDbG9zZXM6ICMzMDA5ODEKKworIC0tIFNjb3R0IEphbWVzIFJlbW5hbnQgPHNjb3R0QG5ldHNwbGl0LmNvbT4gIE1vbiwgIDYgSnVuIDIwMDUgMDU6MzQ6MjEgKzAxMDAKKworZHBrZyAoMS4xMy40KSBleHBlcmltZW50YWw7IHVyZ2VuY3k9bG93CisgIAorICBUaGUgIk9yIHRoZSBXYWJiaXQgZ2V0cyBpdCIgUmVsZWFzZS4KKworICAqIEFkZCAtTCBvcHRpb24gdG8gZHBrZy1hcmNoaXRlY3R1cmUgdG8gbGlzdCBhcmNoaXRlY3R1cmUgc3RyaW5ncworICAgIHdlIGNhbiBhY2NlcHQuCisKKyAtLSBTY290dCBKYW1lcyBSZW1uYW50IDxzY290dEBuZXRzcGxpdC5jb20+ICBUdWUsIDI5IE1hciAyMDA1IDEzOjMxOjE1ICswMTAwCisKK2Rwa2cgKDEuMTMuMykgZXhwZXJpbWVudGFsOyB1cmdlbmN5PWxvdworICAKKyAgVGhlICJQYXlpbmcgb2ZmIEthcm1hIGF0IGEgdmFzdGx5IGFjY2VsZXJhdGVkIHJhdGUiIFJlbGVhc2UuCisKKyAgKiBNaXNzaW5nIG5ld2xpbmUgYWRkZWQgdG8gd2FybmluZyBvdXRwdXQgZnVuY3Rpb24uICBDbG9zZXM6ICMyODM3OTguCisgICogRml4ZWQgcHJvdG90eXBlIHdhcm5pbmcgaW4gZHBrZy1zY2Fuc291cmNlcy4gIENsb3NlczogIzIxMzU3NywgIzIxOTc2MCwKKyAgICAjMjY3NTA1LgorICAqIFJlbW92ZWQgdHJhaWxpbmcgbGluZSBmcm9tIGRlYmlhbiBvcmlnaW5zIGZpbGUuICBDbG9zZXM6ICMyNjQ5MDQuCisgICogQ2hhbmdlZCBkcGtnLWJ1aWxkcGFja2FnZSB0byBzYXkgInNvdXJjZSBjaGFuZ2VkIGJ5IiByYXRoZXIgdGhhbgorICAgICJzb3VyY2UgbWFpbnRhaW5lciBpcyIuICBDbG9zZXM6ICMyNDczMTMuCisgICogRml4ZWQgZHBrZy1nZW5jb250cm9sIHRvIGFsbG93ICctJyBpbiBhcmNoaXRlY3R1cmUgbmFtZXMuICBDbG9zZXM6ICMyNzQ2NzcuCisgICogRml4ZWQgInVua25vd24gaW5mb3JtYXRpb24gZmllbGQiIGVycm9yIHRvIHJlcG9ydCBmaWVsZCB0aGF0IGl0IGRvZXNuJ3QKKyAgICBrbm93IGFib3V0LiAgQ2xvc2VzOiAjMjc1MjQzLgorCisgICogRG9jdW1lbnRhdGlvbjoKKyAgICAtIFJlbW92ZSAibWVkaXVtLWxldmVsIiBmcm9tIGRlc2NyaXB0aW9uIG9mIGRwa2cuICBDbG9zZXM6ICMyOTI0NTQuCisgICAgLSBIYXJtb25pc2VkIGFyZ3VtZW50IG5hbWVzIGluIHVwZGF0ZS1hbHRlcm5hdGl2ZXMoOCkuCisgICAgICBDbG9zZXM6ICMyNjcwOTUsICMyODQ5NDEKKyAgICAtIERvY3VtZW50ZWQgd2hhdCB0aGUgJysnIGFuZCAnKicgbWVhbiBpbiB1cGRhdGUtYWx0ZXJuYXRpdmVzIC0tY29uZmlnCisgICAgICBvdXRwdXQuICBDbG9zZXM6ICMyNzA0ODYuCisgICAgLSBNZW50aW9uIGFwdGl0dWRlIGFsb25nc2lkZSBkc2VsZWN0IGluICdkcGtnIC0tdXNhZ2UnIGFuZAorICAgICAgJ2Rwa2ctZGViIC0taGVscCcsIGZpeCBxdW90ZSBzdHlsZSBvZiBtZW50aW9uIGluICdkcGtnIC0taGVscCcuCisgICAgICBDbG9zZXM6ICMyNzQ4MDAsICMyNzgxMTguCisgICAgLSBBc3NvY2lhdGUgLS10cnVlbmFtZSB3aXRoIHRoZSBkZXNjcmlwdGlvbiBvZiB3aGF0IGl0IGRvZXMgaW4KKyAgICAgIGRwa2ctZGl2ZXJ0KDgpLiAgQ2xvc2VzOiAjMjc3MDc2LgorICAgIC0gUmVtb3ZlZCBsYXN0IHJlbWFpbmluZyByZWZlcmVuY2VzIHRvIHRoZSBwYWNrYWdpbmcgbWFudWFsLCByZXBsYWNpbmcKKyAgICAgIHdpdGggYmV0dGVyIHJlZmVyZW5jZXMuICBDbG9zZXM6ICMyNjI3NzUuCisgICAgLSBEb2N1bWVudGVkIGZvcm1hdCBvZiBmaWxlIGRwa2cgLS1zZXQtc2VsZWN0aW9ucyB0YWtlcy4gIENsb3NlczogIzI3MDA0My4KKworIC0tIFNjb3R0IEphbWVzIFJlbW5hbnQgPHNjb3R0QG5ldHNwbGl0LmNvbT4gIE1vbiwgMjEgTWFyIDIwMDUgMDM6MTA6MjcgKzAwMDAKKworZHBrZyAoMS4xMy4yKSBleHBlcmltZW50YWw7IHVyZ2VuY3k9bG93CisgIAorICBUaGUgIk15c3RlcmlvdXNseSBVbm5hbWVkIiBSZWxlYXNlLgorCisgICogbWQ1c3VtIGhhcyBiZWVuIHJlbW92ZWQsIHRoZSBjb3JldXRpbHMgb3IgdGV4dHV0aWxzIHZlcnNpb24gd2lsbCBiZQorICAgIGRpdmVydGVkIHRvIC91c3IvYmluL21kNXN1bS4gIENsb3NlczogIzY2MzMsICMxMzYxMTAuCisgICAgVGhlIGZvbGxvd2luZyBidWdzIGFyZSBmaWxlZCBhZ2FpbnN0IHRoZSBkcGtnIG1kNXN1bSwgc28gbm8gbG9uZ2VyIGFwcGx5LgorICAgIENsb3NlczogIzk1NzU1LCAjMTkzODc3LCAjMjIzMzgxLCAjMjY0MTk1LCAjMjcwMjQxLCAjMjg2NjMyLAorICAqIFRha2UgUmVwbGFjZXMgaW50byBhY2NvdW50IHdoZW4gaW5zdGFsbGluZyBwYWNrYWdlczsgZG9uJ3QgaXNzdWUgYQorICAgICJ0cnlpbmcgdG8gb3ZlcndyaXRlIiBlcnJvciBpZiB0aGUgZmlsZSB0aGF0IGFscmVhZHkgZXhpc3RzIGlzIGluCisgICAgYSBwYWNrYWdlIHRoYXQgUmVwbGFjZXMgdGhlIG9uZSBiZWluZyBpbnN0YWxsZWQuCisgICAgQ2xvc2VzOiAjMTY0NTk1LCAjMTg0NjM1LCAjMjc3ODkwLgorICAqIEFsbG93IGFjdGlvbnMgYW5kIHN0YXR1cyBjaGFuZ2VzIHRvIGJlIGxvZ2dlZCB0byBhIGZpbGUuICBEaXNhYmxlZCBieQorICAgIGRlZmF1bHQsIHVuY29tbWVudCBsaW5lIGluIC9ldGMvZHBrZy9kcGtnLmNmZyB0byBlbmFibGUuCisgICAgQ2xvc2VzOiAjOTU3LCAjNTMzNzYsICM3NzEwOSwgIzE0Mzg4MiwgIzI4NDQ5OS4KKyAgKiBEb24ndCB0cnVuY2F0ZSBvdXRwdXQgb2YgJ2Rwa2cgLWwnIHdoZW4gc3Rkb3V0IGlzIG5vdCBhIHR0eS4KKyAgICBDbG9zZXM6ICM5MjI2MywgIzI1Mzg2MCwgIzI1ODYwOCwgIzI2MTgyMiwgIzI4Mjc5MC4KKyAgKiBGaXggZnVydGhlciBjb21waWxhdGlvbiBwcm9ibGVtcyB3aXRoIGdjYyA0LjAuICBDbG9zZXM6ICMyOTk2OTkKKyAgKiBIYW5kbGUgdGFyIGZpbGVzIHdpdGhvdXQgdHJhaWxpbmcgc2xhc2ggaW4gZGlyZWN0b3J5IG5hbWVzLgorICAgIENsb3NlczogIzI4NzE1Mi4KKyAgKiBPdXRwdXQgYXJndW1lbnRzIHRvIG1haW50YWluZXIgc2NyaXB0cyB3aXRoIC1EMi4gIENsb3NlczogIzIzNzY4NCwKKyAgICAjMjk2MDMwLgorICAKKyAgKiBBcmNoaXRlY3R1cmUgU3VwcG9ydDoKKyAgICAtIEFkZGVkIHBwYzY0LiAgQ2xvc2VzOiAjMjYzNzQzLgorICAgIC0gU3BsaXQgYXJjaHRhYmxlIGludG8gY3B1dGFibGUgYW5kIG9zdGFibGUsIGFyY2h0YWJsZSBpcyByZXRhaW5lZAorICAgICAgZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBvdGhlciBwYWNrYWdlcyB0aGF0IG1pZ2h0IHVzZSBpdCBvbmx5LgorICAgIC0gZHBrZy1hcmNoaXRlY3R1cmUgbm8gbG9uZ2VyIGNhbm9uaXNlcyAtdCBhcmd1bWVudC4gIENsb3NlczogIzE3MzIwNS4KKyAgICAtIGRwa2ctYXJjaGl0ZWN0dXJlIG91dHB1dCBpbmNsdWRlcyBuZXcgREVCXypfQVJDSF9PUyBhbmQKKyAgICAgIERFQl8qX0FSQ0hfQ1BVIHZhcmlhYmxlcyB0aGF0IGNvbnRhaW4gdGhlIERlYmlhbiBzeXN0ZW0gYW5kIENQVQorICAgICAgbmFtZXMgcmVzcGVjdGl2ZWx5LgorICAgIC0gZHBrZy1hcmNoaXRlY3R1cmUgb3V0cHV0cyAobW9zdGx5KSBjb3JyZWN0IEdOVSBzeXN0ZW0gbmFtZXMgbm93LAorICAgICAgaW4gcGFydGljdWxhciB0aGlzIG1lYW5zIHRoYXQgaXQgd2lsbCBvdXRwdXQgImxpbnV4LWdudSIgaW5zdGVhZAorICAgICAgb2YgImxpbnV4Ii4gIFlvdSBzaG91bGQgdXNlIHRoZSBuZXcgX0FSQ0hfT1MgdmFyaWFibGVzIGluc3RlYWQuCisgICogRG9jdW1lbnRhdGlvbjoKKyAgICAtIEFkZCBleGFtcGxlcyB0byBkcGtnLWRpdmVydCg4KS4gIENsb3NlczogIzI5MTgxNi4KKyAgICAtIENvcnJlY3QgdHlwbyBpbiBkcGtnLWFyY2hpdGVjdHVyZSgxKS4gIENsb3NlczogIzI5OTA5MC4KKworIC0tIFNjb3R0IEphbWVzIFJlbW5hbnQgPHNjb3R0QG5ldHNwbGl0LmNvbT4gIEZyaSwgMTggTWFyIDIwMDUgMTY6MjE6MzIgKzAwMDAKKworZHBrZyAoMS4xMy4xKSBleHBlcmltZW50YWw7IHVyZ2VuY3k9bG93CisgIAorICBUaGUgIkxpdmluJyBsaWtlIGEgZ29vZCBib3kgb3VnaHRhIiBSZWxlYXNlLgorICAKKyAgKiBSZW1vdmVkIGRwa2cgLS1wcmludC1nbnUtYnVpbGQtYXJjaGl0ZWN0dXJlIG9wdGlvbi4gIFVzZSB2YXJpYWJsZXMKKyAgICBkZWZpbmVkIGJ5IGRwa2ctYXJjaGl0ZWN0dXJlIGluc3RlYWQuCisgICogU29mdC1kZXByZWNhdGVkIGRwa2cgLS1wcmludC1pbnN0YWxsYXRpb24tYXJjaGl0ZWN0dXJlLiAgVXNlCisgICAgZHBrZyAtLXByaW50LWFyY2hpdGVjdHVyZSBpbnN0ZWFkLCB3aGljaCBub3cgZG9lcyB0aGUgc2FtZSB0aGluZy4KKyAgKiBkcGtnIC0tcHJpbnQtYXJjaGl0ZWN0dXJlIG5vIGxvbmdlciBjYWxscyBjLWNvbXBpbGVyLiAgQ2xvc2VzOiAjMTY0ODYzLgorICAqIFJlbW92ZWQgdGhpcmQgZmllbGQgZnJvbSAvdXNyL3NoYXJlL2Rwa2cvYXJjaHRhYmxlLgorCisgICogTm93IHdlIG5vLWxvbmdlciBwcmUtZGVwZW5kIG9uIGRzZWxlY3QsIGNoZWNrIHRoZSB1cGdyYWRlIHdpbGwgd29yaworICAgIGluIHByZWluc3QgYW5kIGdpdmUgdGhlIHVzZXIgYSBjaGFuY2UgdG8gYWJvcnQgaWYgdGhleSBoYXZlbid0IHlldAorICAgIGluc3RhbGxlZCBkc2VsZWN0IGFuZCBuZWVkIHRvLiAgQ2xvc2VzOiAjMjgyMzM1LgorICAqIEZpeCBoYW5kbGluZyBvZiBHTlUgbG9uZ25hbWUgYW5kIGxvbmdsaW5rIHdoZW4gYSB0YXJmaWxlIGVudHJ5IGhhcworICAgIGJvdGguICBDbG9zZXM6ICMxMjgzODguCisgICogbWQ1c3VtIG5vIGxvbmdlciBvdXRwdXRzICItIiB3aGVuIG5vIGFyZ3VtZW50IGlzIHN1cHBsaWVkLgorICAgIENsb3NlczogIzE2NDU5MSwgIzE2NDg4OS4KKyAgKiBBZGQgZGFyY3MgbWV0YWRpcmVjdG9yeSB0byBkcGtnLXNvdXJjZSBkaWZmIGlnbm9yZSBsaXN0LiAgQ2xvc2VzOiAjMjg5NzYwLgorICAqIEFkZCBuZXcgJy1mJyBzaG9ydCBvcHRpb24gdG8gZHBrZy1xdWVyeSBhcyBlcXVpdmFsZW50IHRvIC0tc2hvd2Zvcm1hdC4KKyAgICBDbG9zZXM6ICMyODE2MjcuCisgICogUmVwb3J0IGNvbmZmaWxlIGNvbmZsaWN0cyBhbmQgcGVyLXBhY2thZ2UgZXJyb3JzIG9uIHRoZSBzdGF0dXMtZmQuCisgICAgQ2xvc2VzOiAjMjk3ODgwLgorICAqIENvcnJlY3QgdHlwbyBpbiBkcGtnLWFyY2hpdGVjdHVyZS4gIENsb3NlczogIzI4MjcwMS4KKyAgKiBGaXggc3RhcnQtc3RvcC1kYWVtb24ncyBzdXBwb3J0IGZvciBHTlUva0ZyZWVCU0QuICBDbG9zZXM6ICMyNTgwNTEuCisKKyAgKiBBcmNoaXRlY3R1cmUgU3VwcG9ydDoKKyAgICAtIEFkZGVkIGtmcmVlYnNkLWFtZDY0LiAgQ2xvc2VzOiAjMjgwOTYzLgorICAgIC0gQWRkZWQgbTMyci4gIENsb3NlczogIzI4MDcxMC4KKyAgICAtIENsZWFuIHVwIG9mIGFyY2h0YWJsZS4gIENsb3NlczogIzExODkxMCwgIzI4Njg5OC4KKyAgICAtIENsZWFuIHVwIG9mIGRwa2ctYXJjaGl0ZWN0dXJlLiAgQ2xvc2VzOiAjMjU2MzIzLgorICAqIFVwZGF0ZWQgVHJhbnNsYXRpb25zIChDaHJpc3RpYW4gUGVycmllcik6CisgICAgLSBGcmVuY2ggKEZyZW5jaCBUZWFtKS4KKyAgICAtIEdyZWVrIChLb25zdGFudGlub3MgTWFyZ2FyaXRpcykuICBDbG9zZXM6ICMyOTU5MjIuCisKKyAtLSBTY290dCBKYW1lcyBSZW1uYW50IDxzY290dEBuZXRzcGxpdC5jb20+ICBUaHUsICAzIE1hciAyMDA1IDEyOjA5OjA3ICswMDAwCisKK2Rwa2cgKDEuMTMuMCkgZXhwZXJpbWVudGFsOyB1cmdlbmN5PWxvdworICAKKyAgVGhlICJUaHJlZSBiYW5hbmEgc3RyYXRlZ3kiIFJlbGVhc2UuCisKKyAgKiBSZW1vdmUgdGhlIC91c3IvaW5mbyBvciAvdXNyL2luZm8vZGlyIHN5bWxpbmtzIHdlIHVzZWQgdG8gY3JlYXRlLgorICAgIENsb3NlczogIzIwNjA2MywgIzI4ODQxNS4KKyAgKiBGaXggY2FzdCBpbiBsdmFsdWUgYXNzaWdubWVudCB0aGF0IGdjYyA0LjAgZG9lc24ndCBsaWtlLgorICAgIENsb3NlczogIzI4MjY2OSwgIzI4NDc5Ny4KKyAgKiBDb3JyZWN0IGJhc2hpc20gaW4gZGlzayBtZXRob2QgdXBkYXRlIHNjcmlwdC4gIENsb3NlczogIzI2MDU2OC4KKworICAqIFNjb3JjaGVkLWVhcnRoIHJlaW1wbGVtZW50YXRpb24gb2YgdGhlIGJ1aWxkIHByb2Nlc3MgYW5kIGNvbnRyb2wgZmlsZXMKKyAgICB3aXRoIGRlYmhlbHBlciBhbmQgYXV0b21ha2UuICBDbG9zZXM6ICMyMDA2ODMsICMyMTc5NDYsICMyMjk2MjksICMyNjA1NjgsCisgICAgIzI2Njk5NSwgIzI3OTcwMSwgIzI4MzY0MCwgIzI5Mjk3MywgIzI5MzA0MS4KKyAgKiBSZW1vdmUgU0dNTCBhbmQgUE9EIGRvY3VtZW50YXRpb24gZm9ybWF0cyBkdWUgdG8gYm90aCBsaWNlbnNpbmcgYW5kCisgICAgc2FuaXR5IGlzc3Vlcy4gIENsb3NlczogIzI4NTgwNi4KKyAgKiBUaGUgZHBrZy1kb2MgYW5kIGRwa2ctc3RhdGljIHBhY2thZ2VzIGFyZSBubyBtb3JlLgorICAqIGRwa2cuY2ZnIGNsZWFuZWQgdXAgdG8gcmVtb3ZlIG5vbi11c2VmdWwgZXhhbXBsZXMuCisgICAgQ2xvc2VzOiAjMTY5NjE4LCAjMzA1MTkyLgorICAKKyAtLSBTY290dCBKYW1lcyBSZW1uYW50IDxzY290dEBuZXRzcGxpdC5jb20+ICBGcmksIDE0IEphbiAyMDA1IDE5OjI4OjAwICswMDAwCisKK2Rwa2cgKDEuMTAuMjgpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworICAKKyAgVGhlICJBd2gsIHllYWg/ICBSaXBwZXIhIiBSZWxlYXNlLgorCisgICogTmV3IFRyYW5zbGF0aW9ucyAoQ2hyaXN0aWFuIFBlcnJpZXIpOgorICAgIC0gUm9tYW5pYW4gKEVkZHkgUGV0cmlzb3IpLiAgQ2xvc2VzOiAjMzA5NzE0LgorICAgIC0gVGFnYWxvZyAoRXJpYyBQYXJlamEpLiAgQ2xvc2VzOiAjMjk2NDA3LgorICAqIFVwZGF0ZWQgVHJhbnNsYXRpb25zIChDaHJpc3RpYW4gUGVycmllcik6CisgICAgLSBGcmVuY2ggKENocmlzdGlhbiBQZXJyaWVyKS4KKyAgICAtIEdyZWVrIChLb25zdGFudGlub3MgTWFyZ2FyaXRpcykuICBDbG9zZXM6ICMyOTU5MjIKKyAgICAtIEluZG9uZXNpYW4gKEFyaWVmIFMgRml0cmlhbnRvKS4gIENsb3NlczogIzI5NjczMworICAqIFVwZGF0ZWQgTWFucGFnZSBUcmFuc2xhdGlvbnMgKENocmlzdGlhbiBQZXJyaWVyKToKKyAgICAtIEZyZW5jaCAoUGhpbGlwcGUgQmF0YWlsbGVyKS4KKyAgICAtIFN5bnRheCBlcnJvciBjb3JyZWN0ZWQgaW4gQnJhemlsaWFuIFBvcnR1Z3Vlc2UgbWFuIHBhZ2UgZm9yCisgICAgICB1cGRhdGUtYWx0ZXJuYXRpdmVzLiAgQ2xvc2VzOiAjMzAwNjQ2CisKKyAtLSBTY290dCBKYW1lcyBSZW1uYW50IDxzY290dEBuZXRzcGxpdC5jb20+ICBUaHUsIDI2IE1heSAyMDA1IDE4OjE4OjEwICswMTAwCisKK2Rwa2cgKDEuMTAuMjcpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgIFRoZSAiR3JhYiB5b3VyIGd1biBhbmQgYnJpbmcgaW4gdGhlIGNhdCIgUmVsZWFzZS4KKworICAqIE5ldyBUcmFuc2xhdGlvbnMgKENocmlzdGlhbiBQZXJyaWVyKToKKyAgICAtIEluZG9uZXNpYW4gKEFyaWVmIFMgRml0cmlhbnRvKS4KKyAgICAtIE5vcndlZ2lhbiBCb2ttw6VsIChCam9ybiBTdGVlbnNydWQpLgorICAqIFVwZGF0ZWQgVHJhbnNsYXRpb25zIChDaHJpc3RpYW4gUGVycmllcik6CisgICAgLSBEdXRjaCAoY29uZnVzaW5nIG9wdGlvbiBjb3JyZWN0ZWQgYnkgQ2hyaXN0aWFuIFBlcnJpZXIpLgorICAgIC0gR2FsaWNpYW4gKEphY29ibyBUYXJyaW8pLgorICAgIC0gS29yZWFuIChTZW8gU2FuZ2h5ZW9uKS4KKyAgICAtIFNpbXBsaWZpZWQgQ2hpbmVzZSAoQ2FybG9zIExpdSkuCisgICAgLSBUcmFkaXRpb25hbCBDaGluZXNlIChBc2hvIFllaCkuCisKKyAtLSBTY290dCBKYW1lcyBSZW1uYW50IDxzY290dEBuZXRzcGxpdC5jb20+ICBUaHUsIDEwIEZlYiAyMDA1IDE1OjEwOjIyICswMDAwCisKK2Rwa2cgKDEuMTAuMjYpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgIFRoZSAiQ2FwdGFpbiBUaWdodC1QYW50cyIgUmVsZWFzZS4KKworICAqIEZpeCBpbmNvcnJlY3QgY2xhaW0gdGhhdCAnUScgaW4gZHNlbGVjdCBxdWl0cyB3aXRob3V0IHNhdmluZyBjaGFuZ2VzCisgICAgKHJlYWxseSAnWCcpLgorICAqIFJldmVydCB0byBjdXJyZW50ICdzdGFibGUnIGJlaGF2aW91ciBvZiBTcGFjZS9FbnRlci8nUScgaW4gdGhlIGRzZWxlY3QKKyAgICBoZWxwIHNjcmVlbiwgU3BhY2UgbGVhdmVzIHRoZSBoZWxwIHNjcmVlbiBhbmQgRW50ZXIgYW5kICdRJyBkbyBub3RoaW5nLgorICAgIEl0J3MgZGFuZ2Vyb3VzIHRvIGVuY291cmFnZSB1c2VycyB0byBwcmVzcyBFbnRlciBvciAnUScgc2luY2UgdGhleQorICAgIGNvbW1pdCBjaGFuZ2VzIGluIHRoZSBwYWNrYWdlIHNlbGVjdGlvbiBzY3JlZW4uCisKKyAgKiBOZXcgVHJhbnNsYXRpb25zIChDaHJpc3RpYW4gUGVycmllcik6CisgICAgLSBCYXNxdWUgKFBpYXJyZXMgQmVvYmlkZSBFZ2HDsWEpLiAgQ2xvc2VzOiAjMjgxMjQ1LgorICAgICAgKFdhcyByZWFsbHkgYWRkZWQgaW4gMS4xMC4yNCwgYnV0IGZvcmdvdHRlbiBmcm9tIEFMTF9MSU5HVUFTLikKKyAgICAtIEJvc25pYW4gKFNhZmlyIMWgZcSHZXJvdmnEhykuCisgICAgLSBTbG92YWsgKGJlbmNvKS4gIENsb3NlczogIzI4NDg5NiwgIzI4OTM0MQorICAgIC0gVHJhZGl0aW9uYWwgQ2hpbmVzZSAoQXNobyBZZWgpLiAgQ2xvc2VzOiAjMjg3Mzc1LgorICAqIFVwZGF0ZWQgVHJhbnNsYXRpb25zIChDaHJpc3RpYW4gUGVycmllcik6CisgICAgLSBCcmF6aWxpYW4gUG9ydHVndWVzZSAoQW5kcsOpIEx1w61zIExvcGVzKS4gIENsb3NlczogIzI4MTIyOC4KKyAgICAtIENhdGFsYW4gKEpvcmRpIE1hbGxhY2gpLiAgQ2xvc2VzOiAjMjgxMzMzLgorICAgIC0gQ3plY2ggKE1pcm9zbGF2IEt1cmUpLiAgQ2xvc2VzOiAjMjgxMjMxLgorICAgIC0gRGFuaXNoIChDbGF1cyBIaW5kc2dhdWwpLiAgQ2xvc2VzOiAjMjgxMTAzLgorICAgIC0gRHV0Y2ggKENocmlzdGlhbiBQZXJyaWVyKS4gIENsb3NlczogIzI4MjA4Ny4KKyAgICAtIEdhbGljaWFuIChIw6ljdG9yIEZlcm7DqW5kZXogTMOzcGV6KS4KKyAgICAtIEdlcm1hbiAoTWljaGFlbCBQaWVmZWwpLiAgQ2xvc2VzOiAjMjgxNTAzLgorICAgIC0gSXRhbGlhbiAoU3RlZmFubyBDYW5lcGEpLiBDbG9zZXM6ICMyODI1NDMuCisgICAgLSBKYXBhbmVzZSAoS2Vuc2hpIE11dG8pLiAgQ2xvc2VzOiAjMjgxMTQ0LgorICAgIC0gS29yZWFuIChDaGFuZ3dvbyBSeXUpLiAgQ2xvc2VzOiAjMjgyMjQ2LgorICAgIC0gTm9yd2VnaWFuIE55bm9yc2sgKEjDpXZhcmQgS29yc3ZvbGwpLiAgQ2xvc2VzOiAjMjgxNDU2LgorICAgIC0gUG9saXNoIChCYXJ0b3N6IEZlw7Fza2kpLgorICAgIC0gUG9ydHVndWVzZSAoTWlndWVsIEZpZ3VlaXJlZG8pLiAgQ2xvc2VzOiAjMjgxMTIyLCAjMjg5MzU5LgorICAgIC0gUnVzc2lhbiAoWXVyaSBLb3psb3YpLiAgQ2xvc2VzOiAjMjgxMTY2LgorICAgIC0gU2ltcGxpZmllZCBDaGluZXNlIChUY2hhaWtvdiwgQ2FybG9zIExpdSkuCisgICAgLSBTcGFuaXNoIChKYXZpZXIgRmVybsOhbmRlei1TYW5ndWlubyBQZcOxYSkuICBDbG9zZXM6ICMyODExMTcuCisgICAgLSBTd2VkaXNoIChQZXRlciBLYXJsc3NvbikuICBDbG9zZXM6ICMyODExNjUuCisKKyAtLSBTY290dCBKYW1lcyBSZW1uYW50IDxzY290dEBuZXRzcGxpdC5jb20+ICBUdWUsIDExIEphbiAyMDA1IDE2OjI2OjUxICswMDAwCisKK2Rwa2cgKDEuMTAuMjUpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgIFRoZSAi5L2g5LuW5aq955qE5aSp5LiL5omA5pyJ55qE5Lq66YO96Kmy5q27IiBSZWxlYXNlLgorCisgIFRoaXMgcmVsZWFzZSBpcyB0byBjb3JyZWN0IHRoZSBtYW5nbGVkIFNpbXBsaWZpZWQgQ2hpbmVzZSB0cmFuc2xhdGlvbgorICBpbmNsdWRlZCBpbiAxLjEwLjI0IGNhdXNlZCBieSByZWJlbGxpb24gb2YgdGhlIHRyYW5zbGF0b3IncyBtYWlsIGNsaWVudC4KKworICAqIFVwZGF0ZWQgVHJhbnNsYXRpb25zIChDaHJpc3RpYW4gUGVycmllcik6CisgICAgLSBEdXRjaCAoQmFydCBDb3JuZWxpcykuICBDbG9zZXM6ICMyNzg3MDAuCisgICAgLSBQb2xpc2ggKEJhcnRvc3ogRmVuc2tpKS4gIENsb3NlczogIzI4MDQwNi4KKyAgICAtIFNpbXBsaWZpZWQgQ2hpbmVzZSAoVGNoYWlrb3YsIENhcmxvcyBMaXUpLiAgQ2xvc2VzOiAjMjc4Njc2LgorCisgLS0gU2NvdHQgSmFtZXMgUmVtbmFudCA8c2NvdHRAbmV0c3BsaXQuY29tPiAgVGh1LCAxMSBOb3YgMjAwNCAyMDowNjo1NyArMDAwMAorCitkcGtnICgxLjEwLjI0KSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICBUaGUgIkRvbmFsZCwgd2hlcmUncyB5b3VyIHRyb29zZXJzPyIgUmVsZWFzZS4KKworICAqIEFkZCBzdXBwb3J0IGZvciB1bmNvbXByZXNzZWQgZGF0YS50YXIgYXJjaGl2ZSBtZW1iZXJzIGFuZCBiemlwMi0KKyAgICBjb21wcmVzc2VkIGRhdGEudGFyLmJ6MiBtZW1iZXJzIG9mIGJpbmFyeSBwYWNrYWdlcy4gIENsb3NlczogIzM0NzI3LgorCisgICogTmV3IFRyYW5zbGF0aW9ucyAoQ2hyaXN0aWFuIFBlcnJpZXIpOgorICAgIC0gQmFzcXVlIChQaWFycmVzIEJlb2JpZGUpLiAgQ2xvc2VzOiAjMjY1NDkxLgorICAgIC0gR3JlZWsgKEdlb3JnZSBQYXBhbWljaGVsYWtpcykuICBDbG9zZXM6ICMyNjA4MDkuCisgICAgLSBIZWJyZXcgKExpb3IgS2FwbGFuKS4gIENsb3NlczogIzI3NTI2Ny4KKyAgICAtIFNpbXBsaWZpZWQgQ2hpbmVzZSAoVGNoYWlrb3YsIENhcmxvcyBMaXUpLiAgQ2xvc2VzOiAjMjY1MTk3LgorICAqIFVwZGF0ZWQgVHJhbnNsYXRpb25zIChDaHJpc3RpYW4gUGVycmllcik6CisgICAgLSBCcmF6aWxpYW4gUG9ydHVndWVzZSAoQW5kcmUgTHVpcyBMb3BlcykuICBDbG9zZXM6ICMyNjA5NjQsICMyNzM5NDcsCisgICAgICAjMjc4MDYzLgorICAgIC0gQ3plY2ggKE1pcm9zbGF2IEt1cmUpLiAgQ2xvc2VzOiAjMjU1OTA0LCAjMjc4MTc4LgorICAgIC0gQ2F0YWxhbiAoSm9yZGkgTWFsbGFjaCkuICBDbG9zZXM6ICMyNzgwOTguCisgICAgLSBEYW5pc2ggKENsYXVzIEhpbmRzZ2F1bCkuICBDbG9zZXM6ICMyNzgwOTcuCisgICAgLSBEdXRjaCAoQmFydCBDb3JuZWxpcykuICBDbG9zZXM6ICMyNjgyNzEsICMyNjg4ODYsICMyNzQzNjYsICMyNzgwNjEuCisgICAgLSBHYWxpY2lhbiAoSGVjdG9yIEZlcm5hbmRleikuCisgICAgLSBHZXJtYW4gKE1pY2hhZWwgUGllZmVsKS4gIENsb3NlczogIzI3NjQ2MiwgIzI3ODE2OC4KKyAgICAtIEZyZW5jaCAoQ2hyaXN0aWFuIFBlcnJpZXIpLgorICAgIC0gSmFwYW5lc2UgKEtlbnNoaSBNdXRvKS4gIENsb3NlczogIzI3MjQ1NiwgIzI3ODE0MS4KKyAgICAtIEl0YWxpYW4gKExlbGUgR2FpZmF4KS4KKyAgICAtIEtvcmVhbiAoQ2hhbmd3b28gUnl1KS4gIENsb3NlczogIzI2MTUyOCwgIzI3ODE0Mi4KKyAgICAtIE5vcndlZ2lhbiBOeW5vcnNrIChIw6V2YXJkIEtvcnN2b2xsKS4gIENsb3NlczogIzI3NTM4NywgIzI3ODI4Ni4KKyAgICAtIFBvbGlzaCAoQmFydG9zeiBGZW5za2kpLiAgQ2xvc2VzOiAjMjY4NDUyLCAjMjc4MDY0LgorICAgIC0gUG9ydHVndWVzZSAoTWlndWVsIEZpZ3VlaXJlZG8pLiAgQ2xvc2VzOiAjMjY4MjY2LCAjMjYxNDI0LCAjMjYxNTE5LAorICAgICAgIzI3ODI5NC4KKyAgICAtIFJ1c3NpYW4gKFl1cmkgS296bG92KS4gIENsb3NlczogIzI2ODQ1MiwgIzI3ODE1NC4KKyAgICAtIFNwYW5pc2ggKEphdmllciBGZXJuw6FuZGV6LVNhbmd1aW5vIFBlw7FhKS4gIENsb3NlczogIzI3NzE3MywgIzI3ODExNy4KKyAgICAtIFN3ZWRpc2ggKFBldGVyIEthcmxzc29uKS4KKyAgKiBVcGRhdGVkIE1hbnBhZ2UgVHJhbnNsYXRpb25zIChDaHJpc3RpYW4gUGVycmllcik6CisgICAgLSBGcmVuY2ggKFBoaWxpcHBlIEJhdGFpbGxlcikuICBDbG9zZXM6ICMyNjgwNDguCisgICAgLSBTcGFuaXNoIChSdWJlbiBQb3JyYXMpLiAgQ2xvc2VzOiAjMjYxODA3LgorICAgIC0gU3dlZGlzaCAoUGV0ZXIgS2FybHNzb24pLgorCisgLS0gU2NvdHQgSmFtZXMgUmVtbmFudCA8c2NvdHRAbmV0c3BsaXQuY29tPiAgV2VkLCAyNyBPY3QgMjAwNCAwOToyNTo1OCArMDEwMAorCitkcGtnICgxLjEwLjIzKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICBUaGUgIkxldCB0aGUgV29va2llIHdpbiIgUmVsZWFzZS4KKworICAqIFVwZGF0ZWQgaHVyZCBzdGFydC1zdG9wLWRhZW1vbiBzdXBwb3J0LiAgQ2xvc2VzOiAjMTMzNjQwLCAjMjU0MTgwLgorICAqIFJlbW92ZWQgdXNhZ2Ugb2Ygbm9uLVBPU0lYIHRlc3Qgb3B0aW9ucy4gIENsb3NlczogIzI1NjMwMi4KKworICAqIEFyY2hpdGVjdHVyZSBTdXBwb3J0OgorICAgIC0gUmVuYW1lZCB4ODYtNjQgdG8gYW1kNjQuICBDbG9zZXM6ICMyNTIzNDYsICMyNTQ1OTguCisgICogRG9jdW1lbnRhdGlvbjoKKyAgICAtIENvcnJlY3QgdHlwbyBpbiBkcGtnLWRpdmVydCg4KS4gIENsb3NlczogIzI1NDE3NS4KKyAgKiBOZXcgVHJhbnNsYXRpb25zOgorICAgIC0gS29yZWFuIChDaGFuZ3dvbyBSeXUpLiAgQ2xvc2VzOiAjMjU0NTkwLgorICAqIFVwZGF0ZWQgVHJhbnNsYXRpb25zOgorICAgIC0gQ2F0YWxhbiAoSm9yZGkgTWFsbGFjaCkuCisgICAgLSBEYW5pc2ggKENsYXVzIEhpbmRzZ2F1bCkuICBDbG9zZXM6ICMyNTI0MDcuCisgICAgLSBGcmVuY2ggKENocmlzdGlhbiBQZXJyaWVyKS4gIENsb3NlczogIzI1MjU4Ni4KKyAgICAtIEl0YWxpYW4gKExlbGUgR2FpZmF4KS4KKyAgICAtIFBvbGlzaCAoQmFydG9zeiBGZW5za2kpLiAgQ2xvc2VzOiAjMjU0MjA5LgorICAgIC0gU3BhbmlzaCBtYW5wYWdlcyAoUnViZW4gUG9ycmFzKS4gIENsb3NlczogIzI0NjE1OCwgIzI0NjE1OSwgIzI0NjE2MCwKKyAgICAgICMyNDYxNjEsICMyNDYxNjIsICMyNDYxNjMsICMyNDYxNjQuCisKKyAtLSBTY290dCBKYW1lcyBSZW1uYW50IDxzY290dEBuZXRzcGxpdC5jb20+ICBNb24sIDE5IEp1bCAyMDA0IDE5OjUyOjE0ICswMTAwCisKK2Rwa2cgKDEuMTAuMjIpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgIFRoZSBEZWJDb25mNCBSZWxlYXNlLgorCisgIFRoaXMgcmVsZWFzZSBpcyBtb3N0bHkgaW50ZW5kZWQgdG8gbW9wIHVwIHRoZSBtaW5vciBhbmQgdHJpdmlhbCBidWcKKyAgZml4ZXMgaW4gdGhlIGxpc3QgYW5kIGNsZWFyIG91dCB0aGUgZG9jdW1lbnRhdGlvbiBjaGFuZ2VzLiAgQXMgc3VjaCwKKyAgaXQgc2hvdWxkIGJlIHRyZWF0ZWQgd2l0aCBldmVuIG1vcmUgc3VzcGljaW9uIHRoYW4gaXMgbm9ybWFsLgorCisgICogVXNlIGNvbG91cmluZyB0byBicmVhayBjeWNsZXMgZWFybGllciB0byBhdm9pZCBsb25nIGxvb3BzIHdoaWxzdAorICAgIGluc3RhbGxpbmcgb3IgY29uZmlndXJpbmcgcGFja2FnZXMuICBDbG9zZXM6ICMyMzI0NDUsICMyNDY4NTcuCisgICogRG9uJ3QgdHJ5IHRvIGNvbmZpZ3VyZSBwYWNrYWdlcyB0aGF0IGRpc2FwcGVhcmVkIGluIHRoZSBzYW1lCisgICAgcnVuLiAgQ2xvc2VzOiAjMjAyOTk3LgorICAqIEZpeCBzZWdmYXVsdCB3aGVuICJnY2MgLWR1bXBtYWNoaW5lIiByZXR1cm5zIGEgbm9uLW1hdGNoaW5nIHRyaXBsZXQuCisgICAgQ2xvc2VzOiAjMjExODUwLgorICAqIFJlbW92ZSByZXN0cmljdGlvbiB0aGF0IHBhY2thZ2UgbmFtZXMgYmUgYXQgbGVhc3QgdHdvIGNoYXJhY3RlcnMgbG9uZy4KKyAgICBDbG9zZXM6ICMyMzc3MzQuCisgICogRml4IGRwa2ctc291cmNlIChhY3R1YWxseSBjb250cm9sbGliLnBsKSB0byBvdXRwdXQgdGhlIGZpZWxkIG5hbWUKKyAgICBwcm9wZXJseSBhZ2Fpbi4gIENsb3NlczogIzIyNjkzMSwgIzI0NjU5NS4KKyAgKiBNYWtlIGRwa2ctc2NhbnBhY2thZ2VzIG91dHB1dCBPcmlnaW4gYW5kIEJ1Z3MgZmllbGRzIHdpdGggcHJvcGVyCisgICAgY2FzaW5nLiAgQ2xvc2VzOiAjMTU0NDIyLgorICAqIEFkZCBzdXBwb3J0IGZvciBET1MgbGluZS1lbmRpbmdzIHRvIG1kNXN1bS4gIENsb3NlczogIzI0NjEwMy4KKyAgKiBGaXggc3RhcnQtc3RvcC1kYWVtb24gc2VnZmF1bHQgb24gSHVyZC4gIENsb3NlczogIzEzMzY0MC4KKyAgKiBBbGxvdyBkcGtnLXNobGliZGVwcyB0byBydW4gYXMgbm9uLXJvb3QgdXNlcnMuICBDbG9zZXM6ICM5Njg4MS4KKyAgKiBDb3JyZWN0IHZhcmlvdXMgY29tcGlsZXIgd2FybmluZ3MuICBDbG9zZXM6ICMyMjk3NjYuCisKKyAgKiBBcmNoaXRlY3R1cmUgU3VwcG9ydDoKKyAgICAtIEFkZGVkIHg4Ni02NCAoeDg2XzY0IC8gYW1kNjQpLiAgQ2xvc2VzOiAjMjM4NDgzLCAjMjQxOTM4LgorICAgIC0gQWRkZWQgaT84Ni1nbnUgKEh1cmQpLiAgQ2xvc2VzOiAjMjE2Njk1LCAjMjM2MzMxLgorICAgIC0gQWRkZWQgaTM4Ni1rZnJlZWJzZC1nbnUgYW5kIGkzODYta25ldGJzZC1nbnUuICBDbG9zZXM6ICMyNTAxNzYuCisgICogUGFja2FnaW5nOgorICAgIC0gQ3JlYXRlICQoZG9jZGlyKSBldmVuIHdoZW4gLS13aXRob3V0LXNnbWwtZG9jIGlzIHBhc3NlZCBzbyB0aGUKKyAgICAgIENoYW5nZUxvZyBjYW4gYmUgaW5zdGFsbGVkLiAgQ2xvc2VzOiAjMTM3NzE5LgorICAgIC0gU3RvcCBoYXJkY29kaW5nIHRoZSBsaXN0IG9mIG1hbnVhbCBwYWdlIGxhbmd1YWdlcyBpbiBkZWJpYW4vcnVsZXMsCisgICAgICBzbyB3ZSBpbmNsdWRlIFNwYW5pc2gsIFJ1c3NpYW4gYW5kIEJyYXppbGlhbiBQb3J0dWdlc2UuICBDbG9zZXM6ICMyNDU5OTQuCisgICAgLSBRdW90ZSBMREZMQUdTIGluIGRlYmlhbi9ydWxlcyB0byBhbGxvdyBtdWx0aXBsZSBvcHRpb25zLgorICAgICAgQ2xvc2VzOiAjMjMwMjQyLgorICAqIERvY3VtZW50YXRpb246CisgICAgLSBNb3ZlIGRwa2ctc2NhbnBhY2thZ2VzIGFuZCBkcGtnLXNjYW5zb3VyY2VzIHRvIHNlY3Rpb24gMSBhcyB0aGV5CisgICAgICBhcmUgdXNlciB0b29scy4gIENsb3NlczogIzExNDk0Ni4KKyAgICAtIENvcnJlY3QgaHlwaGVuIGNoYXJhY3RlcnMgaW4gbWFucGFnZXMuICBDbG9zZXM6ICMyMTIyODQsICMyNDcwODYsICMyMjY4MDAuCisgICAgLSBSZW1vdmUgb2Jzb2xldGUgcmVmZXJlbmNlcyB0byB0aGUgRGViaWFuIFBhY2thZ2luZyBNYW51YWwuCisgICAgICBDbG9zZXM6ICMxMjI5MTAsICMxNDA2OTUuCisgICAgLSBDb3JyZWN0ICduJyBhbmQgJ3AnIGtleSBkZXNjcmlwdGlvbnMgaW4gZHNlbGVjdCBoZWxwIG1lc3NhZ2UuCisgICAgICBDbG9zZXM6ICMxMjA1NjIuCisgICAgLSBBZGQgLS1mb3JjZS1iYWQtdmVyaWZ5IHRvIGRwa2cgbWFucGFnZS4gIENsb3NlczogIzE5MjgxMi4KKyAgICAtIENvcnJlY3QgZHBrZyBtYW5wYWdlIHRvIHJlZmVyIHRvIC0tZm9yY2UtcmVtb3ZlLXJlaW5zdHJlcSBpbnN0ZWFkIG9mCisgICAgICBub24tZXhpc3RlbnQgLS1mb3JjZS1yZWluc3RyZXEgb3B0aW9uLiAgQ2xvc2VzOiAjMjMyODMxLgorICAgIC0gQ29ycmVjdCBkb2N1bWVudGF0aW9uIG9mIC0tY29tcGFyZS12ZXJzaW9ucyBhcmd1bWVudHMuICBDbG9zZXM6ICMyMzIzMTcuCisgICAgLSBDb3JyZWN0IHVzYWdlIG9mICJldCBhbCIgdG8gImV0IGFsLiIuICBDbG9zZXM6ICMyMzA3NTEuCisgICAgLSBBZGQgZHBrZy1yZWNvbmZpZ3VyZSg4KSB0byBTRUUgQUxTTyBzZWN0aW9uIG9mIGRwa2coOCkuICBDbG9zZXM6ICMyMzMyODIuCisgICAgLSBTdWdnZXN0IHBhY2thZ2VzIHRoYXQgcHJvdmlkZSBhZGRpdGlvbmFsIGZ1bmN0aW9uYWxpdHkgaW4gdGhlIGRwa2cKKyAgICAgIG1hbnBhZ2UuICBDbG9zZXM6ICM4MTM1NS4KKyAgICAtIFN1Z2dlc3QgZHNlbGVjdCB1cGRhdGUgaW4gZGVzY3JpcHRpb24gb2YgZHBrZyAtLXVwZGF0ZS1hdmFpbC4KKyAgICAgIENsb3NlczogIzIwNjE2My4KKyAgICAtIFN1Z2dlc3QgYXB0aXR1ZGUgYXMgd2VsbCBhcyBkc2VsZWN0LiAgQ2xvc2VzOiAjMjE3MDQyLgorICAgIC0gU3VnZ2VzdCBmYWtlcm9vdCBmb3IgZHBrZy1zb3VyY2UgLXIuICBDbG9zZXM6ICMxNzU4OTcuCisgICAgLSBDb3JyZWN0IGRvY3VtZW50YXRpb24gb2Ygc3RhcnQtc3RvcC1kYWVtb24uICBDbG9zZXM6ICM0MTU1NCwgIzIxMTg1Ni4KKyAgICAtIENvcnJlY3QgZG9jdW1lbnRhdGlvbiBvZiBzdGFydC1zdG9wLWRhZW1vbiBtYW5wYWdlIHRvIHJlZmVyIHRvIC0tcmV0cnkKKyAgICAgIGFsb25nc2lkZSAtLXN0b3AuICBDbG9zZXM6ICMyMDQ2OTEuCisgICAgLSBBZGQgbm90ZSB0aGF0IHN0YXJ0LXN0b3AtZGFlbW9uIHdpbGwgY2hkaXIoIi8iKSB1bmxlc3MgLWQgaXMgc3BlY2lmaWVkLgorICAgICAgQ2xvc2VzOiAjMjE3ODIzLCAjMjE4MDYwLgorICAgIC0gQ29ycmVjdCBkb2N1bWVudGF0aW9uIG9mIGRwa2ctcXVlcnkgLS1saXN0LiAgQ2xvc2VzOiAjMjMyNjM5LgorICAgIC0gQ29ycmVjdCBpbnZhbGlkIHVzZSBvZiAmcXVvdDsgd2l0aGluIHVwZGF0ZS1hbHRlcm5hdGl2ZXMoOCkgd2l0aCAuQlIuCisgICAgICBDbG9zZXM6ICMyNDQ2MjQuCisgICAgLSBSZXdyaXRlIGRlc2NyaXB0aW9uIG9mIGRwa2ctc291cmNlIC1pIHRvIGluZGljYXRlIHRoZSBpbnRlbnQgb2YgdGhlCisgICAgICBkZWZhdWx0IHNldHRpbmcgcmF0aGVyIHRoYW4gdGhlIGV4YWN0IGV4Y2x1c2lvbnMuICBDbG9zZXM6ICMyMjcxNjkuCisgICAgLSBDb3JyZWN0IGRvY3VtZW50YXRpb24gb2YgZHBrZy1zdGF0b3ZlcnJpZGUgLS11cGRhdGUuICBDbG9zZXM6ICM4NTA3OS4KKyAgICAtIENvcnJlY3QgZG9jdW1lbnRhdGlvbiBvZiB1cGRhdGUtYWx0ZXJuYXRpdmVzIC0taW5zdGFsbC4gIENsb3NlczogIzE3OTY0OC4KKyAgICAtIERvY3VtZW50ZWQgZHBrZzpWZXJzaW9uIGFuZCBkcGtnOlVwc3RyZWFtVmVyc2lvbiBzdWJzdHZhcnMuCisgICAgICBDbG9zZXM6ICM4NTgxNSwgIzg1ODE4LgorICAgIC0gRml4IHNwZWxsaW5nIGVycm9yIGluIHV0aWxzL21kNXN1bS4xLiAgQ2xvc2VzOiAjMjUwMjgxLgorICAgIC0gUmVwbGFjZSAiJmMuIiB3aXRoIHRoZSBzbGlnaHRseSBjbGVhcmVyICJldGMuIi4gIENsb3NlczogIzIzNTc3My4KKyAgICAtIENvcnJlY3QgdmFyaW91cyB0eXBvcy4gIENsb3NlczogIzIxOTYyMywgIzIyMTIzNS4KKyAgKiBVcGRhdGVkIFRyYW5zbGF0aW9uczoKKyAgICAtIENhdGFsYW4gKEpvcmRpIE1hbGxhY2gpLgorICAgIC0gRnJlbmNoIChDaHJpc3RpYW4gUGVycmllcikuICBDbG9zZXM6ICMyNDYzNTkuCisgICAgLSBJdGFsaWFuIChMZWxlIEdhaWZheCkuCisgICAgLSBKYXBhbmVzZSBtYW5wYWdlcyAoS0lTRSBIaXJvc2hpKS4gIENsb3NlczogIzI0ODQ4My4KKyAgICAtIFJ1c3NpYW4gKE5pa29sYWkgUHJva29zY2hlbmtvKS4gIENsb3NlczogIzI0OTI1NC4KKyAgICAtIFNwYW5pc2ggbWFucGFnZXMgKFJ1YmVuIFBvcnJhcykuICBDbG9zZXM6ICMyNDYxNTgsICMyNDYxNTksICMyNDYxNjAsCisgICAgICAjMjQ2MTYxLCAjMjQ2MTYyLCAjMjQ2MTYzLCAjMjUxODMwLgorICAqIE5ldyBUcmFuc2xhdGlvbnM6CisgICAgLSBHZXJtYW4gc3RhcnQtc3RvcC1kYWVtb24gYW5kIHVwZGF0ZS1hbHRlcm5hdGl2ZXMgbWFucGFnZXMKKyAgICAgIChIZWxnZSBLcmV1dHptYW5uKS4gIENsb3NlczogIzI0NzExNiwgIzI0OTQ1NC4KKyAgICAtIFNwYW5pc2ggZHBrZy1zY2Fuc291cmNlcyBtYW5wYWdlIChSdWJlbiBQb3JyYXMpLiAgQ2xvc2VzOiAjMjQ2MTY0LgorCisgLS0gU2NvdHQgSmFtZXMgUmVtbmFudCA8c2NvdHRAbmV0c3BsaXQuY29tPiAgVHVlLCAgMSBKdW4gMjAwNCAxODoyMTo0MCAtMDMwMAorCitkcGtnICgxLjEwLjIxKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIEZpeCBpbmNvcnJlY3QgbGlua2VkIGxpc3Qgbm9kZSByZW1vdmFsIGNvZGUgdGhhdCBjYXVzZWQgZXZlcnkgc2Vjb25kCisgICAgc2hhcmVkIG9yIGRpdmVydGVkIGNvbmZmaWxlIHRvIGJlIGRlbGV0ZWQgYnkgZHBrZy4KKyAgICBDbG9zZXM6ICMxMDg3OSwgIzMzMDQ2LCAjNDcyNjcsICM5MDYyMywgIzk4MjEwLCAjMTA5NjkxLCAjMTQ2MTY3LgorICAgIENsb3NlczogIzE1NTQ1NiwgIzIwNDI3NS4KKyAgKiBDYWxsIG1rbm9kIHdpdGggdGhlIHJlcXVpcmVkIGRldmljZSB0eXBlLiAgQ2xvc2VzOiAjMTU4OTE2LgorICAqIENvcnJlY3QgdGhlIGRlZmF1bHQgcXVlcnkgb3V0cHV0IGZvcm1hdCB0byBiZSBjb25zaXN0ZW50IHdpdGgKKyAgICB3aGF0IHRoZSB1bmRlcmx5aW5nIGxpYnJhcnkgZXhwZWN0cy4gIENsb3NlczogIzE3NDk3My4KKyAgKiBGaXggbWlzc2luZyBOVUxMLXRlcm1pbmF0aW9uIGluIGRwa2ctcXVlcnkgLVcgZGlzcGxheSBvZiBkZXBlbmRlbmN5CisgICAgZmllbGRzLiAgQ2xvc2VzOiAjMTc0OTc4CisgICogU3RyaXAgb3V0cHV0IGZyb20gbWQ1c3VtKDEpIGFmdGVyIHRoZSBmaXJzdCB3aGl0ZXNwYWNlIGNoYXJhY3Rlci4KKyAgICBDbG9zZXM6ICMyMDA3NjMuCisgICogT3V0cHV0IGEgd2FybmluZyBpZiB3ZSBjYW5ub3Qgb3BlbiBhIGNvbmZpZ3VyYXRpb24gZmlsZSBpbnN0ZWFkIG9mCisgICAgdHJlYXRpbmcgaXQgYXMgYSBmYXRhbCBlcnJvciwgaW4gY2FzZSBvdXIgaG9tZSBkaXJlY3RvcnkgaXMgbm90IHJlYWRhYmxlCisgICAgYnkgcm9vdC4gIENsb3NlczogIzIwMDcwMS4KKyAgKiBTZXQgTENfQUxMIHRvIEMgYmVmb3JlIHNwYXduaW5nIG9mZiBkcGtnIC0tc2VhcmNoLCB0byBhdm9pZCBzZWFyY2hpbmcKKyAgICBvbiBsb2NhbGl6ZWQgc3RyaW5ncy4gIENsb3NlczogIzI0NDMxNi4KKyAgKiBEb24ndCByZXF1aXJlIGFyZ3VtZW50IGZvciBzdGFydC1zdG9wLWRhZW1vbiAtVi4gIENsb3NlczogIzIzNzU4OS4KKyAgKiBDb3JyZWN0IHVzZSBvZiBAQVJHViB3aXRoaW4gZHBrZy1zY2FucGFja2FnZXMsIGFsbG93aW5nIC11IHRvIHdvcmsKKyAgICBvbmNlIGFnYWluLiAgQ2xvc2VzOiAjMjI1MDg2LCAjMjQxNTAzLgorICAqIE1ha2Ugc3VyZSBmaWxlIHBlcm1pc3Npb25zIHBhc3NlZCB0byBkcGtnLXN0YXRvdmVycmlkZSBhcmUgbnVtZXJpYy4KKyAgICBDbG9zZXM6ICMxNjExNTYuCisgICogQ29ycmVjdGx5IGJyZWFrIG91dCBvZiB0aGUgbG9vcCBpbiBpbnN0YWxsLWluZm8uCisgICAgQ2xvc2VzOiAjMTI0MjI1LCAjMTYwNzYxLgorICAqIEFkZCAtLWRpci1maWxlIG9wdGlvbiB0byBpbnN0YWxsLWluZm8gZm9yIEdOVSBpbnN0YWxsLWluZm8KKyAgICBjb21wYXRpYmlsaXR5LiAgQ2xvc2VzOiAjMTc5MTkyCisgICogUmVmZXIgdG8gZGViaWFuLXBvbGljeSBpbiBkcGtnLWRvYydzIGRlc2NyaXB0aW9uIGluc3RlYWQgb2YgdGhlCisgICAgbm9uLWV4aXN0ZW50IHBhY2thZ2luZy1tYW51YWwuICBDbG9zZXM6ICMxMjA5NzAuCisgICogUmVtb3ZlIGluY29ycmVjdCBtZW50aW9uIG9mIGJ1aWxkLWVzc2VudGlhbCBmcm9tIGRwa2ctY2hlY2tidWlsZGRlcHMKKyAgICBtYW5wYWdlLiAgQ2xvc2VzOiAjMjE5MjEwLgorICAqIEFkZCBhIG5vdGUgYWJvdXQgZGl2ZXJ0aW5nIHNoYXJlZCBsaWJyYXJpZXMgdG8gdGhlIGRwa2ctZGl2ZXJ0CisgICAgbWFucGFnZS4gIENsb3NlczogIzIxNDY5OS4KKyAgKiBVcGRhdGVkIFRyYW5zbGF0aW9uczoKKyAgICAtIEJyYXppbGlhbiBQb3J0dWdlc2UgKEFuZHJlIEx1aXMgTG9wZXMpLiAgQ2xvc2VzOiAjMjM3ODY0LgorICAgIC0gQ2F0YWxhbiAoSm9yZGkgTWFsbGFjaCkuCisgICAgLSBEYW5pc2ggKENsYXVzIEhpbmRzZ2F1bCkuICBDbG9zZXM6ICMyMzc2MjQuCisgICAgLSBEdXRjaCAoUGlldGVyLVBhdWwgU3BpZXJ0eiwgQmFydCBDb3JuZWxpcywgRXJ3aW4pLgorICAgICAgQ2xvc2VzOiAjMTAyMDk0LCAjMTUxNzk5LCAjMjA3NzU4LgorICAgIC0gRnJlbmNoIChTYW0gSG9jZXZhcikuICBDbG9zZXM6ICMyNDMxOTEuCisgICAgLSBHZXJtYW4gKEZsb3JpYW4gRXJuc3QpLiAgQ2xvc2VzOiAjMTA5NjY5LCAjMTE1MzUyLCAjMTg3OTUyLCAjMjQ0MDk4LgorICAgIC0gSmFwYW5lc2UgbWFucGFnZXMgKEtJU0UgSGlyb3NoaSkuICBDbG9zZXM6ICMyMjA3NzYuCisgICAgLSBQb2xpc2ggKEJhcnRvc3ogRmVuc2tpKS4gIENsb3NlczogIzI0Mjg3MC4KKyAgICAtIFNwYW5pc2ggKEphdmllciBGZXJuw6FuZGV6LVNhbmd1aW5vIFBlw7FhKS4gIENsb3NlczogIzE2NjA1Mi4KKyAgICAtIFN3ZWRpc2ggKFBldGVyIEthcmxzc29uKS4KKyAgKiBOZXcgVHJhbnNsYXRpb25zOgorICAgIC0gSmFwYW5lc2UgZHBrZy1zb3VyY2UgbWFucGFnZSAoS0lTRSBIaXJvc2hpKS4gIENsb3NlczogIzIzOTAwMC4KKyAgICAtIE5vcndlZ2lhbiBOeW5vcnNrIChHYXV0ZSBIdm9zbGVmIEt2YWxuZXMpLiAgQ2xvc2VzOiAjMjMzNjE0LgorICAgIC0gUG9ydGd1ZXNlIChNaWd1ZWwgRmlndWVpcmVkbykuICBDbG9zZXM6ICMyNDAwODEuCisgICAgLSBTcGFuaXNoIGRwa2ctc291cmNlIG1hbnBhZ2UgKFJ1YmVuIFBvcnJhcykuICBDbG9zZXM6ICMxNzE0ODkuCisKKyAtLSBTY290dCBKYW1lcyBSZW1uYW50IDxzY290dEBuZXRzcGxpdC5jb20+ICBTdW4sIDI1IEFwciAyMDA0IDE4OjU1OjEwICswMTAwCisKK2Rwa2cgKDEuMTAuMjApIHVuc3RhYmxlOyB1cmdlbmN5PWhpZ2gKKworICAqIFVwZGF0ZSBKYXBhbmVzZSB0cmFuc2xhdGlvbi4gIENsb3NlczogIzIyNDYxNgorICAqIFVwZGF0ZSBGcmVuY2ggdHJhbnNsYXRpb24uICBDbG9zZXM6ICMyMTg3MTMKKyAgKiBGaXggc3BlbGxpbmcgZXJyb3IgaW4gR2VybWFuIG1kNXN1bSBtYW4gcGFnZS4gIENsb3NlczogIzIzMDc1MAorICAqIEZpeCB0eXBvIGluIHB0X0JSIHBvIGZpbGUuICBDbG9zZXM6ICMxOTIxMDIKKyAgKiBSZXZlcnQgZml4IGZvciAjMjMyOTE2LCB0aGlzIHR1cm5zIG91dCB0byBiZSBhIGJ1ZyBpbiB0aGUgcGdwZ3AKKyAgICB3cmFwcGVyLCBkcGtnIHdvcmtlZCBmaW5lIHdpdGggcGdwIGl0c2VsZi4KKworIC0tIFNjb3R0IEphbWVzIFJlbW5hbnQgPHNjb3R0QG5ldHNwbGl0LmNvbT4gIFRodSwgMTEgTWFyIDIwMDQgMTE6MjQ6NTQgKzAwMDAKKworZHBrZyAoMS4xMC4xOSkgdW5zdGFibGU7IHVyZ2VuY3k9aGlnaAorCisgICogRGlzdGluZ3Vpc2ggdW5tZXQgYnVpbGQgZGVwZW5kZW5jaWVzIGZyb20gYnVpbGQgY29uZmxpY3RzLgorICAgIENsb3NlczogIzIxNzk0MywgIzIzNTI2Ni4KKyAgKiBGb3JjZSBOVUxMLXRlcm1pbmF0aW9uIG9mIGFsbCB0YXIgZmlsZSBlbnRyeSBuYW1lcy4gIENsb3NlczogIzIzMjAyNS4KKyAgKiBBbGxvdyBkc2VsZWN0IHRvIHVzZSB0aGUgZnVsbCB3aW5kb3cgd2lkdGguICBDbG9zZXM6ICMxMzk3ODEuCisgICogUGFzcyBjb3JyZWN0IG51bWJlciBvZiBhcmd1bWVudHMgZm9yIGZvcm1hdCBzdHJpbmcgd2hlbiBvdXQgb2YgZGlzaworICAgIHNwYWNlLiAgQ2xvc2VzOiAjMjEzMDM4LCAjMjE3Mjg2LCAjMjEzNTQzLCAjMjEzODQ2LgorICAqIFJlbW92ZSBkdXBsaWNhdGVkIGVudHJpZXMgZnJvbSBDaGFuZ2VMb2cuICBDbG9zZXM6ICMxNTc0MzcuCisgICogRml4IGRwa2ctYnVpbGRwYWNrYWdlIHdoZW4gdXNlZCB3aXRoIFBHUC4gIENsb3NlczogIzIzMjkxNi4KKyAgKiBVcGRhdGUgc3VwcG9ydCBmb3IgRGViaWFuIEZyZWVCU0QuICBDbG9zZXM6ICMyMTE1NjYuCisgICogU3RvcmUgQXJjaGl0ZWN0dXJlIGluIHRoZSBzdGF0dXMgZmlsZS4gIENsb3NlczogIzIyODI1My4KKyAgKiBEb24ndCBwcmludCBvZmZlbmRpbmcgbGluZXMgaW4gbWQ1c3VtLiAgQ2xvc2VzOiAjMTcwOTUzLgorICAqIENoZWNrIGJvdW5kcyBvZiBtZDVzdW0gbGluZXMuICBDbG9zZXM6ICMxNjg0NDMsICMxOTk0ODksICMxOTk2OTMuCisKKyAtLSBTY290dCBKYW1lcyBSZW1uYW50IDxzY290dEBuZXRzcGxpdC5jb20+ICBNb24sICA4IE1hciAyMDA0IDE5OjA1OjMyICswMDAwCisKK2Rwa2cgKDEuMTAuMTguMSkgdW5zdGFibGU7IHVyZ2VuY3k9bWVkaXVtCisKKyAgKiBOb24tbWFpbnRhaW5lciB1cGxvYWQgdG8gZml4IHJlbGVhc2UtY3JpdGljYWwgYnVncy4KKyAgKiBUZXJtaW5hdGUgc3RyaW5nIGJ1ZmZlciBpbiBtYWluL3JlbW92ZS5jLiAgQ2xvc2VzOiAjMjI4Mzc5LgorICAqIFByZXZlbnQgc3Rhc2hpbmcgb2YgaGFyZGxpbmtlZCBkZXZpY2VzIGFuZCBzZXR1aWQgb3Igc2V0Z2lkIGJpbmFyaWVzCisgICAgYnkgcmVtb3ZpbmcgcGVybWlzc2lvbnMgb24gdXBncmFkZSBhcyB3ZWxsIGFzIG9uIHJlbW92ZS4KKyAgICBDbG9zZXM6ICMyMjU2OTIuCisgICogVXBkYXRlIGRwa2cgY29uZmxpY3RzIHRvIDw8IDEuMTAsIGluc3RlYWQgb2YgMS45LgorICAgIENsb3NlczogIzE5MDYxMSwgIzIyMTk4OSwgIzIyMjc2MC4KKworIC0tIFNjb3R0IEphbWVzIFJlbW5hbnQgPHNjb3R0QG5ldHNwbGl0LmNvbT4gIFRodSwgMjYgRmViIDIwMDQgMDE6MTc6MjcgKzAwMDAKKworZHBrZyAoMS4xMC4xOCkgdW5zdGFibGU7IHVyZ2VuY3k9bWVkaXVtCisKKyAgKiBSZWJ1aWxkLCB0YWdnaW5nIGFuZCByZWxlYXNpbmcgY29ycmVjdGx5IGZyb20gY3ZzIHRoaXMgdGltZS4KKworIC0tIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPiAgTW9uLCAyNyBPY3QgMjAwMyAxMzozOTo1NiAtMDYwMAorCitkcGtnICgxLjEwLjE3KSB1bnN0YWJsZTsgdXJnZW5jeT1tZWRpdW0KKworICAqIE1ha2UgZHNlbGVjdCBkbyBjb25mbGljdCByZXNvbHV0aW9uIHdoZW4gZGVhbGluZyB3aXRoIGF1dG9tYXRpY2FsbHkKKyAgICBzZWxlY3RlZCByZWNvbW1lbmRlZCBwYWNrYWdlLiBUaGFua3MgdG8gQ29saW4gV2F0c29uIGZvciB0aGUgYW5hbHlzaXMKKyAgICBhbmQgcGF0Y2guIENsb3NlczogQnVnIzE1MTY2MworICAqIEJyYW5kZW4gUm9iaW5zb24gPGJyYW5kZW5AZGViaWFuLm9yZz46CisgICAgcy9kcGtnLWNoZWNrYnVpbGQvZHBrZy1jaGVja2J1aWxkZGVwcy8gaW4gdXNhZ2UuCisgICogZHBrZy1jaGVja2J1aWxkZGVwcyBub3cgc2V0cyAkcmVkdWNlX2FyY2guICBDbG9zZXM6ICMyMTI3OTYuCisgICogR29zd2luIEJyZWRlcmxvdyA8YnJlZGVybG9AaW5mb3JtYXRpay51bmktdHVlYmluZ2VuLmRlPjoKKyAgICBBZGQgLXUgaW4gZHBrZy1zY2FucGFja2FnZXMuICBDbG9zZXM6ICMyMTQxMjMuCisgICAgQWRkIC1hPGFyY2g+IGNvbW1hbmQgdG8gZHBrZy1zY2FucGFja2FnZXMuCisgICogQWRkIC4jKiB0byBkcGtnLXNvdXJjZSdzIGRlZmF1bHQgaWdub3JlIGZpbHRlci4gIENsb3NlczogIzIxNzM4MC4KKyAgKiBNYXR0aGlhcyBVcmxpY2hzIDxzbXVyZkBzbXVyZi5ub3Jpcy5kZT46CisgICAgRG9uJ3QgYXNzdW1lIC91c3IvaW5mby9kaXIgZXhpc3RzIGlmIC91c3IvaW5mbyBkb2VzLiAgQ2xvc2VzOiAjMTY1NzcwLgorICAqIEpvcmRpIE1hbGxhY2ggPGpvcmRpQGRlYmlhbi5vcmc+OgorICAgIFVwZGF0ZSBDYXRhbGFuIHRyYW5zbGF0aW9uLgorICAqIEZpeCBlcnJvcnMgd2l0aCBkZXBlbmRlbmN5IGZpZWxkcyB0aGF0IHJlZmVyZW5jZSAke2Rwa2c6VmVyc2lvbn0uCisgICAgQ2xvc2VzOiAjMjEzMTA4LgorCisgLS0gQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+ICBNb24sIDI3IE9jdCAyMDAzIDEzOjA0OjU3IC0wNjAwCisKK2Rwa2cgKDEuMTAuMTYpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogQWxtb3N0ICpFVkVSWSogZGFtbiBmaWxlIHdhcyBpbmNsdWRpbmcgY29uZmlnLmggaW4gdGhlIHdyb25nIHNwb3QuCisgICAgQWZ0ZXIgbWFraW5nIGl0IHRoZSBmaXJzdCBpbmNsdWRlLCB0aGVuIG9mZl90L3NpemVfdC9ldGMgY291bGQgYWN0dWFsbHkKKyAgICBiZSByZWRlZmluZWQgdG8gYmUgNjQtYml0IGNvbXBhdGlibGUuCisgICogSm9yZGkgTWFsbGFjaCA8am9yZGlAZGViaWFuLm9yZz46CisgICAgRml4IGNvbmZpZ3VyZSB0byBzZXQgSEFWRV9TRVRMT0NBTEUuICBDbG9zZXM6ICMyMTE4MTYKKyAgKiAiTG/Dr2MgTGUgTG9hcmVyIiA8bGxsX2RlYkBtNHgub3JnPjoKKyAgICBBZGQgYSAtZHwtLWNoZGlyIG9wdGlvbiB0byBzdGFydC1zdG9wLWRhZW1vbi4gIENsb3NlczogIzE1MTgwMgorICAqIFNwbGl0IHRoZSBiYWNrZ3JvdW5kIGJsb2NrIGludG8gMiBwYXJ0czogb25lIHRoYXQgZG9lcyB0aGUgZm9yaywgYW5kCisgICAgb3BlbnMgL2Rldi90dHkgYW5kIC9kZXYvbnVsbCwgYW5kIG9uZSB0aGF0IGRvZXMgZXZlcnl0aGluZyBlbHNlLiAgVGhlCisgICAgc2Vjb25kIGJsb2NrIGlzIHRoZW4gbW92ZWQgdG8gYmUgcnVuIHJpZ2h0IGJlZm9yZSB0aGUgZXhlYy4gIFRoaXMKKyAgICBhbGxvd3MgZXJyb3IgbWVzc2FnZXMgdG8gYmUgc2VlbiBmcm9tIHRoZSBjaGlsZChwcmV2aW91c2x5LCB0aGV5IHdlcmUKKyAgICBsb3N0KSwgYW5kIGFsbG93cyBmb3IgdGhlIGNocm9vdCB0byBub3QgcmVxdWlyZSB0aGUgZGV2aWNlIGZpbGVzLgorICAgIFRoZXNlIGNoYW5nZXMgYmFzZWQgb24gdGhlIGJ1Z3MgZmlsZWQgYnk6CisgICAgTWFyYyBIZXJiZXJ0IDxNYXJjLkhlcmJlcnRAZW5zLWx5b24uZnI+OiBDbG9zZXM6ICMxNTUyMTkKKyAgICBMb8OvYyBMZSBMb2FyZXIgPGxsbF9kZWJAbTR4Lm9yZz46IENsb3NlczogIzE1MTgwMAorICAqIE1hcmlvIExhbmcgPG1sYW5nQGRlYmlhbi5vcmc+OgorICAgIFdoZW4gLS1zdGFydCwgLS1zdGFydGFzIGFuZCAtLXBpZGZpbGUgYXJlIGdpdmVuLCBwcmludCAncHJvY2VzcycKKyAgICBpbnN0ZWFkIG9mICcobnVsbCknIGZvciB0aGUgcHJvY2VzcyBuYW1lLCBpZiBpdCdzIGFscmVhZHkgcnVubmluZy4KKyAgICBDbG9zZXM6ICMyMDkzNTUKKyAgKiBJbXBvcnRlZCBzZXZlcmFsIHRyYW5zbGF0ZWQgbWFucGFnZXMsIGZyb20gZGViaWFuLWRvYyBjdnM6CisgICAgKiBTcGFuaXNoOiA4MjItZGF0ZS4xIGNsZWFudXAtaW5mby44IGRlYi1jb250cm9sLjUgZGViLW9sZC41CisgICAgICBkZWIuNSBkcGtnLWNoZWNrYnVpbGRkZXBzLjEgZHBrZy1kZWIuMSBkcGtnLWRpdmVydC44IGRwa2ctbmFtZS4xCisgICAgICBkcGtnLXNjYW5wYWNrYWdlcy44IGRwa2ctc3BsaXQuOCBkcGtnLXN0YXRvdmVycmlkZS44IGRwa2cuOAorICAgICAgZHNlbGVjdC44IG1kNXN1bS4xIHN0YXJ0LXN0b3AtZGFlbW9uLjggdXBkYXRlLWFsdGVybmF0aXZlcy44CisgICAgICAiRXN0ZWJhbiBNYW5jaGFkbyBWZWzDoXpxdWV6IiA8em9zb0BkZWJpYW4ub3JnPjogQ2xvc2VzOiAjMTcxNDg5CisgICAgKiBGcmVuY2g6IGRlYi41CisgICAgICBKdWxpZW4gTG91aXMgPGFydGh1cjUxQGlmcmFuY2UuY29tPjogQ2xvc2VzOiAjMTY0OTA2CisgICAgKiBQb3J0dWd1ZXNlOiBkcGtnLjggZHNlbGVjdC44CisgICogTWF0dCBaaW1tZXJtYW4gPG1kekBkZWJpYW4ub3JnPgorICAgIEluIGRwa2cncyBtYW5wYWdlLCAtTyBoYWQgYW4gaW52ZXJ0ZWQgd29yZC4gIENsb3NlczogIzExMTcxMQorICAqIE1hcmNpbiBPd3NpYW55IDxwb3JyaWRnZUBkZWJpYW4ub3JnPjoKKyAgICBGaXggUG9saXNoIHRyYW5zbGF0aW9uIG9mICdjb25mbGljdHMgd2l0aCcgIENsb3NlczogIzExMjA1NworICAqIEppcmkgTWFzaWsgPG1hc2lrQGRhcmJ1amFuLmZ6dS5jej46CisgICAgSW1wcm92ZSBDemVjaCB0cmFuc2xhdGlvbiBvZjogImRwa2cgLSB3YXJuaW5nOiBpZ25vcmluZyByZXF1ZXN0IHRvCisgICAgcmVtb3ZlICVzIHdoaWNoIGlzbid0IGluc3RhbGxlZC4iICBDbG9zZXM6ICMxMTc1MTgKKyAgKiBNYXJjbyBOZW5jaWFyaW5pIDxtbmVuY2lhQHByYXRvLmxpbnV4Lml0PjoKKyAgICBGaXggbWlzc2luZyBzcGFjZSBpbiBJdGFsaWFuIHRyYW5zbGF0aW9uIHdoZW4gbGlzdGluZyBmaWxlcywgYW5kIHRoZQorICAgIGZpbGUgaXMgZGl2ZXJ0ZWQuICBDbG9zZXM6ICMxMzgyNDQKKyAgKiBQaW90ciBSb3N6YXR5Y2tpIDxQaW90cl9Sb3N6YXR5Y2tpQG5ldGlhLm5ldC5wbD46CisgICAgVXBkYXRlIFBvbGlzaCB0cmFuc2xhdGlvbi4gIENsb3NlczogIzE0MjM3MAorICAqIE1hcnRpbiBRdWluc29uIDxtcXVpbnNvbkBlbnMtbHlvbi5mcj46CisgICAgRml4IG1pc3Npbmcgc3BhY2UgaW4gRnJlbmNoIHRyYW5zbGF0aW9uIG9mOiAiJXMgLSB3YXJuaW5nOiBkb3duZ3JhZGluZworICAgICUuMjUwcyBmcm9tICUuMjUwcyB0byAlLjI1MHMuXG4iICBDbG9zZXM6ICMxNDkxNDIKKyAgKiBIaWRldGFrYSBJd2FpIDx0eXV5dUBzaW5ncy5qcD46CisgICAgRml4IHR5cG8gaW4gSmFwYW5lc2UgdHJhbnNsYXRpb24gb2YgZHBrZyAtLWZvcmNlLWhlbHA7IGRvd2dyYWRlIC0+CisgICAgZG93bmdyYWRlOiAgQ2xvc2VzOiAjMTU3ODE5CisgICogTWFydGluIFF1aW5zb24gPG1xdWluc29uQGVucy1seW9uLmZyPjoKKyAgICBGaXggRnJlbmNoIHRyYW5zbGF0aW9uIHdoZW4gbGlzdGluZyBmaWxlcywgYW5kIHRoZSBmaWxlIGlzIGRpdmVydGVkLgorICAgIENsb3NlczogIzE2MjE1NAorICAqIFJ1bmUgU2NoamVsbGVydXAgPG9sYmVyZEBvZGVuc2Uua29sbGVnaWVuZXQuZGs+OgorICAgIEZpeCBEYW5pc2ggdHJhbnNsYXRpb24gb2Yod2FzIG1pc3NpbmcgdGhlIGxlYWRpbmcgc3BhY2UpOiAiIGRvZXMgbm90CisgICAgYXBwZWFyIHRvIGJlIGF2YWlsYWJsZVxuIiAgQ2xvc2VzOiAjMTkyOTcyCisgICogRml4IG1kNXN1bSB3aGVuIGhhbmRsaW5nIGxhcmdlIGZpbGVzLiAgQ2xvc2VzOiAjMTYyNjkxCisgICogRml4IGRwa2ctY2hlY2tidWlsZGRlcHMgY2FsbGluZyBvZiBwYXJzZWRlcC4gIEl0IHdhc24ndCBzZXR0aW5nCisgICAgdXNlX2FyY2guICBDbG9zZXM6ICMyMTI3OTYuCisgICogSm9leSBIZXNzIDxqb2V5aEBkZWJpYW4ub3JnPjoKKyAgICBDaGFuZ2UgZm9ybWF0dGluZyBvZiBpbmZvLmRpci4gIENsb3NlczogIzE2NzM3OS4KKworIC0tIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPiAgU2F0LCAyNSBPY3QgMjAwMyAxNTo0NjoxNiAtMDUwMAorCitkcGtnICgxLjEwLjE1KSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIEZpeCBkZXRlY3Rpb24gb2YgdmFfY29weS4KKyAgKiBCYWNrIG91dCBkZWJpYW4vcnVsZXMgYnVpbGQtYXJjaCBkZXRlY3Rpb24uICBJdCBpcyAqbm90KiBwb3NzaWJsZSAqYXQKKyAgICBhbGwqIHRvIGRldGVjdCBhdmFpbGFibGUgdGFyZ2V0cyBpbiBhIHJ1bGVzIGZpbGUuICBQZXJpb2QuCisKKyAtLSBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4gIEZyaSwgMTkgU2VwIDIwMDMgMjA6MDI6MTkgLTA1MDAKKworZHBrZyAoMS4xMC4xNCkgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBjb250cm9sbGliLnBsOgorICAgICogUmV3cm90ZSB0aGUgcGFyc2VkZXAgc3R1ZmYsIHNvIHRoYXQgaXQgd2Fzbid0IGRvbmUgZHVyaW5nIGNvbnRyb2wKKyAgICAgIGZpbGUgcGFyc2luZy4gIFNjcmlwdHMgdGhhdCBuZWVkIHRoZSBpbnRlcm5hbCBwYXJzZWQgZm9ybWF0IHNob3VsZAorICAgICAgY2FsbCBwYXJzZWRlcCBvbiB0aGUgZmllbGQncyB2YWx1ZS4KKyAgICAqIFNwbGl0IHRoZSBzdWJzdHZhcnMgcGFyc2luZyBpbnRvIGEgc2VwYXJhdGUgZnVuY3Rpb24uCisgICAgKiBObyBsb25nZXIgdmFsaWRhdGUgZGVwZW5kZW5jeSBmaWVsZHMgd2hlbiByZWFkaW5nIHRoZSBjb250cm9sIGZpbGUuCisgICAgICBTb21lIGZpZWxkcyBtYXkgaGF2ZSB2YXJzIGluIHRoZW0sIHdoaWNoIGJyZWFrcyB0aGUgdmFsaWRhdGlvbi4KKyAgICAqIGRwa2ctZ2VuY29udHJvbCBjYWxscyBzdWJzdHZhcnMgYWZ0ZXIgcGFyc2luZyB0aGUgY29udHJvbCBmaWxlLCBhbmQKKyAgICAgIHRoZW4gdmFsaWRhdGVzIHRoZSBzdWJzdGl0dXRlZCBkZXBlbmRzIGxpbmVzLiAgT3JpZ2luYWxseSwKKyAgICAgIHN1YnN0aXR1dGlvbiBvY2N1cnJlZCBvbmx5IGR1cmluZyB3cml0aW5nIG9mIHRoZSBmaW5hbCBvdXRwdXQgZmlsZS4KKyAgICAqIEFuZHJlYXMgQmFydGggPGFiYUBub3Quc28uYXJnaC5vcmc+OgorICAgICAgRml4IGJhZCByZWdleCB0aGF0IGRpZG4ndCBhbGxvdyBzcGFjZXMgaW4gZGVwZW5kZW5jeSBmaWVsZCBwYXJzaW5nLgorICAgICAgSXQgbm93IGRpcmVjdGx5IG1hdGNoZXMgd2hhdCB0aGUgYyBjb2RlIGV4cGVjdHMuICBJdCBwcmV2aW91c2x5IHdhcworICAgICAgYWxsb3dpbmcgYWxsIG9mIFxTLCB3aGljaCBtYXRjaGVkIG9uICcoJy4KKyAgICAgIENsb3NlczogIzIxMTY2MC4KKyAgKiBSZW1vdmUgc3RhbGUgZGVidWcgaW4gZGViaWFuL2NvbnRyb2wgdGhhdCB3b3VsZCBoYXZlIGJyb2tlbgorICAgIGluc3RhbGxhdGlvbiBvbiBzMzkwLgorICAqIFdlIHdlcmUgY2FsbGluZyBvdXIgb3duIGxvY2FsIGNvcHkgb2YgZHBrZy1nZW5jb250cm9sLCBidXQgdGhlCisgICAgc3lzdGVtLWluc3RhbGxlZCBjb3B5IG9mIGRwa2ctc2hsaWJkZXBzLiAgTm93LCBib3RoIGFyZSBjYWxsZWQgZnJvbQorICAgIHRoZSBidWlsZCBkaXJlY3RvcnkuCisKKyAtLSBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4gIEZyaSwgMTkgU2VwIDIwMDMgMTI6Mjk6MzQgLTA1MDAKKworZHBrZyAoMS4xMC4xMykgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBGaXggcGFyc2luZyBvZiBkZXBzIHdoZW4gYm90aCAoKSBhbmQgW10gYXJlIHNwZWNpZmllZC4KKyAgKiBTZXQgJGhvc3RfYXJjaCBpbiBjb250cm9sbGliLnBsOnBhcnNlZGVwLgorICAqIGRwa2ctY2hlY2tidWlsZGRlcHMgZG9lc24ndCBvdXRwdXQgdGhlIFtdIHN0dWZmIHdoZW4gZmluZGluZyBpbnZhbGlkCisgICAgZGVwcy4KKworIC0tIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPiAgV2VkLCAxNyBTZXAgMjAwMyAxMzoyMzoxNSAtMDUwMAorCitkcGtnICgxLjEwLjEyKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIEZpeCBkcGtnLXNvdXJjZSBvdXRwdXQgb2YgYnVpbGQtZGVwZW5kcyBsaW5lcy4KKworIC0tIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPiAgVHVlLCAxNiBTZXAgMjAwMyAxMzo0Mzo0NSAtMDUwMAorCitkcGtnICgxLjEwLjExKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIGRwa2cgbm8gbG9uZ2VyIHByb3ZpZGVzIGFueSBCWUhBTkQgZmlsZXMuICBJZiB5b3UgbmVlZCB0aGUgc291cmNlCisgICAgdGFyYmFsbCwgdXNlIHRoZSBvcmlnLnRhci5neiBmaWxlIGF2YWlsYWJsZSBpbiB0aGUgcG9vbC4gIFRoZQorICAgIHByZWNvbXBpbGVkIHRhcnMgd2VyZSBob2xkLW92ZXJzIGZyb20gd2hlbiBkZWJzIHdlcmUgbm90IHN0YW5kYXJkCisgICAgYXIvdGFyIGZpbGVzLgorICAqIEluc3RhbGwgL3Vzci9zaGFyZS9kb2MvZHBrZy9wc2V1ZG8tdGFncywgd2hpY2ggdGFsa3MgYWJvdXQgdGhlIGJ1ZworICAgIHRpdGxpbmcgd2UgdXNlIHRvIG1hcmsgYnVncyBmb3IgZmlsdGVyaW5nIGluIHRoZSBEZWJpYW4gYnRzLgorICAqIFVwZGF0ZWQgY2EucG8uCisgICogVGVhY2ggZHBrZy1zb3VyY2UgdGhhdCB+IGlzIGxlZ2FsIGluIHZlcnNpb24gbnVtYmVycworICAqIEFkZCBidWlsZC1kZXBlbmRzIG9uIHNnbWwtYmFzZSwgYW5kIGluY3JlYXNlIGdldHRleHQgYnVpbGQtZGVwZW5kcyB0bworICAgIDAuMTIuMS0zLgorICAqIFVwZGF0ZWQgY29uZmlnLnN1YiBhbmQgY29uZmlnLmd1ZXNzIGluIGN2cy4KKyAgKiBDaGFuZ2UgdXNlIG9mIHN0cm5jcHkgaW4gcGFyc2VkYiB0byBtZW1jcHkuICBDbG9zZXM6ICMxNjA0NDcKKyAgKiBObyBsb25nZXIgZ2VuZXJhdGUgaGVscG1zZ3Mue2NjLGh9LgorICAqIHNldmVyYWwgY29udHJvbGxpYiBjaGFuZ2VzOgorICAgICogTW92ZWQgZGVwZW5kZW5jeSBwYXJzaW5nIGxvZ2ljIGZyb20gZHBrZy1jaGVja2J1aWxkZGVwcy4KKyAgICAgIFRoZSBkcGtnLWNoZWNrYnVpbGRkZXBzIHBhcnNlciBkaWRuJ3Qgc3VwcG9ydCBlbXB0eSBmaWVsZHMsIHdoaWxlCisgICAgICB0aGUgY29udHJvbGxpYiBwYXJzZXIgZGlkLgorICAgICogQWxsIGRlcGVuZGVuY3kgZmllbGRzIHBhcnNlZCBieSBjb250cm9sbGliLnBsIHN1cHBvcnQgW2FyY2hdCisgICAgICBzcGVjaWZpZXJzLiAgSWYgdGhlIGFyY2ggc3BlY2lmaWVyIGRvZXNuJ3QgYXBwbHkgZm9yIHRoZSBjdXJyZW50CisgICAgICBhcmNoLCB0aGVuIHRoZSBpdGVtIHdpbGwgbm90IGJlIGFkZGVkIHRvIHRoZSBpbnRlcm5hbCBsaXN0IHN0cnVjdHVyZS4KKyAgICAqIENvbW1lbnQgbGluZXModGhhdCBiZWdpbiB3aXRoICcjJykgYXJlIHJlbW92ZWQgZHVyaW5nIHBhcnNpbmcuCisgICAgKiBTdG9yZSB0aGUgb3JpZ2luYWwgY2FzaW5nIG9mIGZpZWxkIG5hbWVzLCBmb3IgdXNlIGluIGVycm9yIHJlcG9ydGluZy4KKyAgICAqIFN0b3JlIHRoZSBvcmlnaW5hbCBmaWVsZCdzIGNhc2luZyB3aXRoICdvOicgcHJlcGVuZGVkIGluICVmaS4KKyAgICAgICogYmFsbG9tYmVAbWVydWxvLmRlYmlhbi5vcmc6CisgICAgICAgIGRwa2ctY2hlY2tidWlsZGRlcHMgbm93IGhhbmRsZXMgZW1wdHkgZmllbGRzLiAgQ2xvc2VzOiAjMTExNTYyCisgICAgICAqIEJyYW5kZW4gUm9iaW5zb24gPGJyYW5kZW5AZGViaWFuLm9yZz46CisgICAgICAgIHN1cHBvcnQgY29tbWVudHMoZmlyc3QgY2hhciBvbiBsaW5lIGJlZ2lucyB3aXRoICcjJykgaW4KKyAgICAgICAgZGViaWFuL2NvbnRyb2wuICBDbG9zZXM6ICMxOTE4MTAKKyAgICAgICogQmFzdGlhbiBCbGFuayA8d2FsZGlAZGViaWFuLm9yZz46CisgICAgICAgIEFsbG93IGZvciBwZXItYXJjaCBnZW5lcmF0ZWQgZGVwZW5kZW5jeSBmaWVsZHMuICBDbG9zZXM6ICMxNzA1NzUKKyAgICAgICogQnJhbmRlbiBSb2JpbnNvbiA8YnJhbmRlbkBkZWJpYW4ub3JnPjoKKyAgICAgICAgUmVwb3J0IHRoZSBvcmlnaW5hbCBjYXNpbmcgb2YgZmllbGQgbmFtZXMgd2hlbiB0aGV5IGFyZSB1bmtub3duLgorICAgICAgICBDbG9zZXM6ICMxNzc3NTMKKyAgKiBQYXRjaCBkcGtnLWJ1aWxkcGFja2FnZSB0byBjYWxsIGRlYmlhbi9ydWxlcyAtcW4gYnVpbGQtYXJjaCwgYW5kIGlmCisgICAgaXQncyBhdmFpbGFibGUsIG1vZGlmeSAtQiBoYW5kbGluZyBhcHByb3ByaWF0ZWx5LiAgSWYgYnVpbGQtYXJjaCBpcyBub3QKKyAgICBhdmFpbGFibGUsIHRoZW4gd2hlbiAtQiB3YXMgY2FsbGVkLCBkbyAqbm90KiBwYXNzIC1CIG9uIHRvCisgICAgZHBrZy1jaGVja2J1aWxkZGVwcy4gIENsb3NlczogIzIwMzA5NworICAqIEZyYW5rIExpY2h0ZW5oZWxkIDxmcmFua0BsaWNodGVuaGVsZC5kZT46CisgICAgQXBwbHkgcGF0Y2gsIHRvIGhhbmRsZSBtaXNzaW5nIGluZm9kaXIuYmFrLCBhbmQgZW1wdHkgZmlsZXMuICBDbG9zZXM6CisgICAgIzE5NjM2MQorICAqIENoYW5nZSBzdGFuZGFyZF9zdGFydHVwIGFuZCBzdGFuZGFyZF9zaHV0ZG93biBpbnRvIG1hY3Jvcy4gIENsb3NlczoKKyAgICAjMjAwMzUxLgorICAqIEFuZHJldyBTdWZmaWVsZCA8YXN1ZmZpZWxkQGRlYmlhbi5vcmc+OgorICAgIEZpeCBpbnZlcnRlZCB0ZXN0IG9mIGVvZiBpbiBwYXJzZWRiLCB3aGlsZSBsb29raW5nIGZvciBlb2YgYWZ0ZXIKKyAgICBmaWVsZCBuYW1lLiAgQ2xvc2VzOiAjMTk4MjE4CisgICogWWFubiBEaXJzb24gPGRpcnNvbkBkZWJpYW4ub3JnPgorICAgIEFkZCBzZXQgLWUgdG8gZHBrZy1kb2MucG9zdGluc3QuICBDbG9zZXM6ICMxOTEyNjEKKyAgKiBNaWNoYWVsIFdlYmVyIDxtaWNoYWVsd0BkZWJpYW4ub3JnPjoKKyAgICBkcGtnIC0tcHJpbnQtYXJjaGl0ZWN0dXJlIG5vdyBkb2VzIGdjYyAtZHVtcG1hY2hpbmUgaW5zdGVhZCBvZgorICAgIC0tcHJpbnQtbGliZ2NjLWZpbGUtbmFtZS4gIENsb3NlczogIzEzMTg5MywgIzgyNDEsICMxMDY3OTMsICMyMTAyODUKKyAgKiBEYW5pZWwgU2lsdmVyc3RvbmUgPGRzaWx2ZXJzQGRpZ2l0YWwtc2N1cmYub3JnPjoKKyAgICBBcHBseSBwYXRjaCB0byBjaGFuZ2UgaGFzaGluZyBmdW5jdGlvbiwgYW5kIGluY3JlYXNlIGJpbiBzaXplLCBmb3IKKyAgICB0aGUgcGFja2FnZSBkYXRhYmFzZS4gIENsb3NlczogIzIwNjQxNgorICAqIFBhdWwgRWdnZXJ0IDxlZ2dlcnRAQ1MuVUNMQS5FRFU+OgorICAgIEFwcGx5IHBhdGNoIHRvIG1ha2UgZHBrZyB3b3JrIHdpdGggUE9TSVggMTAwMy4xLTIwMDEuICBDbG9zZXM6CisgICAgIzIwNDg5NAorICAqIEpvZXkgSGVzcyA8am9leWhAZGViaWFuLm9yZz46CisgICAgRml4ICJzdHJpcHBpbmcgdHJhaWxpbmcgLyIgbWVzc2FnZSBmcm9tIGRwa2ctc3RhdG92ZXJyaWRlLiAgQ2xvc2VzOgorICAgICMyMDM3ODIKKyAgKiBTYW1pIExpZWRlcyA8c2xpZWRlc0BjYy5odXQuZmk+OgorICAgIEluY3JlYXNlIGZpbGVzZGIgYmluIHNpemUsIGFuZCBhbHRlciBoYXNoaW5nIGZ1bmN0aW9uLiAgQ2xvc2VzOgorICAgICMxNzkzODUKKyAgKiBBbnRob255IFRvd25zIDxhakBhenVyZS5odW1idWcub3JnLmF1PjoKKyAgICBSZXRyeSByZW1vdmluZyBlbXB0eSBkaXJzIGR1cmluZyBwdXJnZS4gIENsb3NlczogIzExMjM4NgorICAqIERhcnJlbiBTYWx0IDxsaW51eEB5b3VtdXN0YmVqb2tpbmcuZGVtb24uY28udWs+OgorICAgIEFkZCAuY3ZzaWdub3JlIHRvIGRwa2ctc291cmNlJ3MgZGVmYXVsdCBkaWZmIGlnbm9yZSByZWdleC4gIEFsc28gZml4CisgICAgbWlzc2luZyBcIGVzY2FwZSBmb3IgLmRlcHMuICBDbG9zZXM6ICMxNzQwMTMKKyAgKiBLb2JsaW5nZXIgRWdtb250IDxlZ21vbnRAdWh1bGludXguaHU+OgorICAgIEZpeCBzZWdmYXVsdCB3aXRoIC0tc3RhdHVzLWZkLiAgQ2xvc2VzOiAjMTczNjE4CisgICogQ29saW4gV2F0c29uIDxjandhdHNvbkBkZWJpYW4ub3JnPiwKKyAgICBBbmRyZXcgU3VmZmllbGQgPGFzdWZmaWVsZEBkZWJpYW4ub3JnPjoKKyAgICBBZGQgLnN2biwge2FyY2h9LCBhbmQgLmFyY2gtaWRzIHRvIGRwa2ctc291cmNlIC1pIGRlZmF1bHQgcmVnZXguCisgICAgQ2xvc2VzOiAjMTY5MzU5CisgICogRmFsayBIdWVmZm5lciA8ZmFsa0BkZWJpYW4ub3JnPjoKKyAgICBBZGRlZCBhbHBoYWV2NjgtbGludXgtZ251IHRvIGFyY2h0YWJsZS4gIENsb3NlczogIzE5OTM2MAorICAqIEVsaWUgUm9zZW5ibHVtIDxmbm9yZEBkZWJpYW4ub3JnPjoKKyAgICBBcHBseSBwYXRjaCB0byBzdXBwb3J0IE9wZW5CU0QuICBDbG9zZXM6ICMxNTQyNzcKKyAgKiBHZW9mZiBSaWNoYXJkcyA8cWVmQGxheGFuLmNvbT46CisgICAgQWRkIC0tY29uZmlnIHRvIGFjdGlvbiBzZWN0aW9uLCBhbmQgYWRkIGFzIEVYQU1QTEVTIHNlY3Rpb24uICBDbG9zZXM6CisgICAgIzIwODAxNCwgIzExNTc1OQorICAqIFlhbm4gRGlyc29uIDxkaXJzb25AZGViaWFuLm9yZz46CisgICAgaW5zdGFsbC1pbmZvIC0tdmVyc2lvbiBhbmQgLS1oZWxwIG5vdyBkaXNwbGF5IG9uIHN0ZG91dC4gIENsb3NlczoKKyAgICAjMTU0NjMzCisgICogRGFuIEphY29ic29uIDxqaWRhbm5pQGRtYW4uZGR0cy5uZXQ+OgorICAgIE1lbnRpb24gd2hhdCBkcGtnIGFuZCBkcGtnLXF1ZXJ5IC1TIHdpbGwgbm90IGZpbmQuICBDbG9zZXM6ICMxNTMwOTYKKyAgKiBTZWJhc3RpYW4gTGVza2UgPHNsZXNrZUBlbnRlcnByaXNlLm1hdGhlbWF0aWsudW5pLWVzc2VuLmRlPjoKKyAgICBNZW50aW9uIGluIGRwa2coOCkgdGhhdCBkb3duZ3JhZGluZyBhIHBhY2thZ2UgY2FuIGhhdmUgc2VyaW91cworICAgIGNvbnNlcXVlbmNlcy4gIENsb3NlczogIzYxMTU2CisgICogRGFuIEphY29ic29uIDxqaWRhbm5pQGRtYW4uZGR0cy5uZXQ+OgorICAgIEluIGRwa2ctc2NhbnBhY2thZ2VzKDgpLCBpbmNsdWRpbmcgc21hbGwgbm90ZSB0aGF0IG90aGVyIHRvb2xzIG1pZ2h0CisgICAgdXNlIHRoZSBnZW5lcmF0ZWQgUGFja2FnZXMgZmlsZS4gIENsb3NlczogIzIwODg5NAorICAqIFdhcnJlbiBUdXJrYWwgPHd0dXJrYWxAY2J1LmVkdT46CisgICAgRml4IHNvbWUgdHlwb3MgaW4gZHBrZy1zb3VyY2UoMSkuICBDbG9zZXM6ICMyMDcyNTksICMyMDQxMjMsICMxNjc0MjYKKyAgKiBEYW4gSmFjb2Jzb24gPGppZGFubmlAZG1hbi5kZHRzLm5ldD46CisgICAgQWx0ZXIgdGV4dCBpbiBkc2VsZWN0KDgpLCBpbXBseWluZyB0aGF0IG90aGVyIGludGVyZmFjZXMgYXJlIGF2YWlsYWJsZQorICAgIGZvciBpbnN0YWxsaW5nIHBhY2thZ2VzLiAgQ2xvc2VzOiAjMjA2MTY0LgorICAqIERhbmllbCBCb25uaW90IDxib25uaW90QHVzZXJzLnNvdXJjZWZvcmdlLm5ldD46CisgICAgTm90ZSBpbiBzdGFydC1zdG9wLWRhZW1vbig4KSB0aGF0IC0tbmljZWxldmVsIHRha2VzIGFuIGFyZ3VtZW50LgorICAqIFJ1YmVuIFBvcnJhcyA8bmFob284MkB0ZWxlZm9uaWNhLm5ldD46CisgICAgUmVtb3ZlIGR1cGxpY2F0ZSAnY2FuJyBpbiBkZWItY29udHJvbCg1KS4gIENsb3NlczogIzE4Mzg0MAorICAqIERhbiBKYWNvYnNvbiA8amlkYW5uaUBkbWFuLmRkdHMubmV0PjoKKyAgICBGaXggc2hvcnQgZGVzY3JpcHRpb24gaW4gZHBrZy1zY2Fuc291cmNlcyg4KS4gIENsb3NlczogIzE3NTc3MAorICAqIFplZnJhbSA8emVmcmFtQGZ5c2gub3JnPjoKKyAgICBJbiBkcGtnKDgpLCBtb3ZlIGRwa2ctcXVlcnkgb3B0aW9ucyB0byB0aGVpciBvd24gc3Vic2VjdGlvbiwgbGlrZQorICAgIGRwa2ctZGViLiAgQ2xvc2VzOiAjMTc0OTcxCisgICogVGhvbWFzIEhvb2QgPGpkdGhvb2RAeWFob28uY28udWs+CisgICAgQWRkIC0tZHJ5LXJ1biBhbmQgLS1zaW11bGF0ZSBhcyBzeW5vbnltcyB0byAtLW5vLWFjdC4gIENsb3NlczoKKyAgICAjMTY1MDk5CisgICogSnVuaWNoaSBVZWthd2EgPGRhbmNlckBuZXRmb3J0LmdyLmpwPjoKKyAgICBGaXggd3JvbmcgcmVmZXJlbmNlIHRvIERFQl9CVUlMRF9HTlVfU1lTVEVNIG9uIC0taG9zdCBpbgorICAgIGRwa2ctYXJjaGl0ZWN0dXJlKDEpLiAgQ2xvc2VzOiAjMTYzNjIxCisgICogTWljaGFlbCBLbGVpbiA8bWljaGFlbC5rbGVpbkBwdWZmaW4ubGIuc2h1dHRsZS5kZT46CisgICAgcy9Vc3VhdWxseS9Vc3VhbGx5LyBpbiBkZWItY29udHJvbC41LiAgQ2xvc2VzOiAjMTYxODE5CisgICogSm9leSBIZXNzIDxqb2V5aEBkZWJpYW4ub3JnPjoKKyAgICBSZW1vdmVkIHJlZmVyZW5jZSBpbiBkc2VsZWN0KDgpIGFib3V0IHJlY29tbWVuZHMgbm90IGJlaW5nIGhhbmRsZWQKKyAgICB3ZWxsLiAgQ2xvc2VzOiAjMTU3OTczCisgICogQW5kcmV3IFN1ZmZpZWxkIDxhcHMxMDBAZG9jLmljLmFjLnVrPjoKKyAgICBzL2Rwa2ctc291cmNlL2Rwa2ctcGFyc2VjaGFuZ2Vsb2cvIGluIGRwa2ctcGFyc2VjaGFuZ2Vsb2cgLWguCisgICAgQ2xvc2VzOiAjMTU1ODIyCisgICogTWF0ZWogVmVsYSA8dmVsYUBkZWJpYW4ub3JnPjoKKyAgICBVbmhpZ2hsaWdodCAiTWF5IGJlIHJlcGVhdGVkIG11bHRpcGxlIHRpbWVzLiIgaW4gZHBrZy1zb3VyY2UoMSkuCisgICAgQ2xvc2VzOiAjMTUxODQ1CisgICogSm9yZGkgTWFsbGFjaCA8am9yZGlAZGViaWFuLm9yZz46CisgICAgTWFrZSBhbGwgYWN0aW9ucyBpbiBkcGtnLWRlYiAtaCBsb3dlciBjYXNlLiAgQ2xvc2VzOiAjMTUwNjQyCisgICogQWxleGFuZGVyIEh2b3N0b3YgPHJvb3RAYW9pLmR5bmRucy5vcmc+OgorICAgIEFkZCAtZ3wtLWdyb3VwIHRvIHN0YXJ0LXN0b3AtZGFlbW9uLCBhbmQgZG9jdW1lbnQgcHJvcGVybHkuICBDbG9zZXM6CisgICAgIzEyNzM0MgorICAqIFN6ZXJiIFRhbWFzIDx0b21hQG1sZi5saW51eC5ydWxlei5vcmc+OgorICAgIHMvVEhBTktTL1RIQU5LUy5nei8gaW4gZHBrZyg4KS4gIENsb3NlczogIzkxMzQ4CisgICogIkphbWVzIFIuIFZhbiBaYW5kdCIgPGpydkB2YW56YW5kdC1wYy5taXRyZS5vcmc+OgorICAgIEluIGRwa2coOCksIG1lbnRpb24gcnVubmluZyBkc2VsZWN0LCBpbnN0YWxsIGFmdGVyIC0tc2V0LXNlbGVjdGlvbnMuCisgICAgQ2xvc2VzOiAjMTc1MjM2CisgICogWWFubiBEaXJzb24gPGRpcnNvbkBkZWJpYW4ub3JnPjoKKyAgICBSZW1vdmUgZGlzYWJsZWQgLS1jb21tYW5kLWZkIGZyb20gaGVscC4gIENsb3NlczogIzE2OTYxOQorICAqIFRvYmlhcyBCdXJudXMgPHRidXJudXNAcGh5c2lrLmZ1LWJlcmxpbi5kZT46CisgICAgQXBwbHkgcGF0Y2ggdG8gdXBkYXRlLWFsdGVybmF0aXZlcyB0aGF0IHByb3ZpZGVzIC0tc2V0IGFuZCAtLXJlbW92ZS1hbGwKKyAgICBjb21tYW5kcy4gIENsb3NlczogIzEzMzc0NS4KKyAgKiBPc2FtdSBBb2tpIDxkZWJpYW5AYW9raWNvbnN1bHRpbmcuY29tPjoKKyAgICBBZGQgLS1hbGwgdG8gdXBkYXRlLWFsdGVybmF0aXZlcywgdGhhdCBjYWxscyAtLWNvbmZpZyBvbiBhbGwKKyAgICBhbHRlcm5hdGl2ZXMuICBDbG9zZXM6ICMxMjY2MjEKKyAgKiBEYW4gSmFjb2Jzb24gPGppZGFubmlAamlkYW5uaS5vcmc+OgorICAgIEFsdGVyIC0tY29uZmlnIHByb21wdCwgdG8gYmUgbW9yZSBjbGVhciwgdGhhdCBvbmUgbXVzdCAncHJlc3MnIGVudGVyIHRvCisgICAgYWNjZXB0IHRoZSBkZWZhdWx0LiAgQ2xvc2VzOiAjMjAzNTU3CisgICogUGV0ZXIgTW91bGRlciA8cG1vdWxkZXJAYm93bWFuLmNzc2UubW9uYXNoLmVkdS5hdT46CisgICAgRml4IHNvbWUgLXcgaXNzdWVzIGluIHVwZGF0ZS1hbHRlcm5hdGl2ZXMuICBDbG9zZXM6ICMxMzczMTMKKyAgKiBFZHVhcmQgQmxvY2ggPGVkaUBnbXguZGU+OgorICAgIEFwcGx5IHBhdGNoIHRvIGNoZWNrIHdoZXRoZXIgdGhlIHRhcmdldCBwYXRoIGV4aXN0cyBvbiByZW1vdmluZy4KKyAgICBDbG9zZXM6ICMzNzI1NAorICAqIENvbGluIFdhbHRlcnMgPHdhbHRlcnNAZGViaWFuLm9yZz46CisgICAgQWZ0ZXIgb3BlbmluZyBmaWxlcywgc2V0IGJpbm1vZGUuICBDbG9zZXM6ICMxNzUzNjMKKworIC0tIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPiAgVHVlLCAxNiBTZXAgMjAwMyAxMjo1MjoxMSAtMDUwMAorCitkcGtnICgxLjEwLjEwKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIFVwZGF0ZSBhcmNodGFibGUgZm9yIGh1cmQuICBDbG9zZXM6ICMxODc1MDkuCisgICogTWFrZSB0aGUgZHBrZy1pYXNlYXJjaCBjb25mbGljdHMgdmVyc2lvbmVkLiAgQ2xvc2VzOiAjMTcwNjk4LgorICAqIFN1cnJvdW5kIHNlZCBjYWxsIHdpdGggJycgaW4gTWFrZWZpbGUuaW4uICBDbG9zZXM6ICMxODc1MzQuCisgICogU3RyaXAgdHJhaWxpbmcgLyBmcm9tIHRoZSBmaWxlIGFyZ3MgaW4gZHBrZy1zdGF0b3ZlcnJpZGUuICBDbG9zZXM6CisgICAgIzE4NDIzOS4KKyAgKiBNb2RpZmllZCB0byB1c2UgYXV0b3Rvb2xzLWRldi4gIENsb3NlczogIzE3OTY1Ni4KKyAgKiBBZGQgbmV0YnNkIHN1cHBvcnQuICBDbG9zZXM6ICMxNzk2NTgsICMxNzk2NTkuCisgICogU3VwcG9ydCBoeXBlbmF0ZWQgdmFsdWVzIGluIGRwa2ctYXJjaGl0ZXR1cmUuIENsb3NlczogIzE3OTY2MQorICAqIE5vIGxvbmdlciBtYW5hZ2VkIHRoZSAvdXNyL2RvYyBzeW1saW5rcy4KKworIC0tIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPiAgU2F0LCAyNiBBcHIgMjAwMyAxNToxMDoyNCAtMDUwMAorCitkcGtnICgxLjEwLjkpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogRml4IGRlcmVmZXJlbmNlIGluIG1haW4vaGVscC5jOmN1X2Nsb3NlZmQoKSwgd2hpY2ggd2FzIHRoZSBjYXVzZSBvZgorICAgIGNsb3NlKHJhbmRvbSBudW1iZXIpIG9uIG1vc3QgYXJjaGVzLCBidXQgY2xvc2UoMCkgb24gczM5MHguCisgICogQWRkIHMzOTB4IHRvIGFyY2h0YWJsZS4gIENsb3NlczogIzE2MDk3Ni4KKworIC0tIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPiAgU3VuLCAxNSBTZXAgMjAwMiAxMzoyMTozOCAtMDUwMAorCitkcGtnICgxLjEwLjgpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogTWFrZSB0aGUgbXVsdGlsaW5lIHJlZ2V4IGhhdmUgYW4gdXBwZXIgYm91bmQsIGluc3RlYWQgb2YgYmVpbmcKKyAgICB1bmJvdW5kZWQsIGFzIG5ld2VyIHBlcmxzIGhhdmUgYSBsYXJnZXIgc3RhY2sgZnJhbWUsIHdoaWNoIGNhdXNlIHRoZW0KKyAgICB0byBzZWdmYXVsdCBxdWlja2VyIHdpdGggbGFyZ2VyIGlucHV0cy4gIENsb3NlczogIzE1OTc1Ni4KKworIC0tIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPiAgVGh1LCAgNSBTZXAgMjAwMiAxNjozMjowMSAtMDUwMAorCitkcGtnICgxLjEwLjcpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogRml4IGRvdWJsZSBmcmVlIGluIG1vZHN0YXRkYl9pbml0LCBpbiB0aGUgY2FzZSB0aGF0IG1vZHN0YXRkYl9zaHV0ZG93bgorICAgIHdhcyBjYWxsZWQgcHJldmlvdXNseS4gIENsb3NlczogIzE1OTUxNS4KKworIC0tIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPiAgVHVlLCAgMyBTZXAgMjAwMiAxODo1OToxOSAtMDUwMAorCitkcGtnICgxLjEwLjYpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogRG9uJ3QgY2FsbCBuZmZyZWVhbGwsIGluIGFueSBvZiB0aGUgYy9jKysgcHJvZ3JhbXMuICBJdCBhcHBlYXJzIGRzZWxlY3QKKyAgICBzbGlnaHRseSBjb3JydXB0cyBpdCdzIG1lbW9yeSBlbm91Z2ggdGhhdCBpdCBjYW4ndCBiZSBmcmVlZCB3aXRob3V0CisgICAgc2VnZmF1bHRpbmcuICBDbG9zZXM6ICMxNTkwMjMuCisKKyAtLSBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4gIFN1biwgIDEgU2VwIDIwMDIgMDA6MTk6MTggLTA1MDAKKworZHBrZyAoMS4xMC41KSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIEZpeCBzZWdmYXVsdCBpbiBtZDVzdW0gaWYgdGhlIGZpbGUgYmVpbmcgY2hlY2tlZCBkb2Vzbid0IGV4aXN0LgorICAgIENsb3NlczogIzE1NDUwMy4KKyAgKiBGaXggZXh0cmFjdGlvbiBvZiBtZDVzdW0gaW4gZHBrZy1zY2FucGFja2FnZXMuICBDbG9zZXM6ICMxNTM3NjkuCisgICogSGFuZGxlIGRpcmVjdG9yaWVzIGJldHRlciBpbiBtZDVzdW0uICBDbG9zZXM6ICMxNTc0NTMuCisgICogRml4IHJlYWQgcGFzdCBidWZmZXIgaW4gbGliL25mbWFsbG9jLmMuICBDbG9zZXM6ICMxNTczMDQuCisgICogRml4IHNldmVyYWwgcmVhZCBwYXNzIGJ1ZmZlciBidWdzLCBhbmQgYSBtZW1sZWFrLiAgQ2xvc2VzOiAjMTU1MzYyLgorICAqIEZpeCBzZWdmYXVsdCB3aGVuIC0tYXV0by1kZWNvbmZpZ3VyZSBpcyBnaXZlbi4gIENsb3NlczogIzE1Nzc2Mi4KKyAgKiBBbGxvdyBzcGFjZXMgYmV0d2VlbiB0aGUgZW5kIG9mIGEgdmVyc2lvbiwgYW5kIHRoZSB0cmFpbGluZyAnKScuCisgICAgQ2xvc2VzOiAjMTU0ODk4LgorICAqIEZpeGVzIGZvciBIVVJEOiAgQ2xvc2VzOiAjMTU2NTQ1CisgICAgKiBBZGQgaTM4Ni1nbnUwLjMgdG8gYXJjaHRhYmxlLgorICAgICogRml4IGhhbmRsaW5nIG9mIHN0YXRpYyBjb21waWxlcywgd2l0aCByZWdhcmQgdG8gemxpYi4KKyAgKiBQcmV2aW91cyBpbnN0YWxsLWluZm9zKGJlZm9yZSAxLjEwKSBoYW5kbGVkIG11bHRpcGxlIGRpciBmaWxlIGVudHJpZXMsCisgICAgYmVjYXVzZSB0aGV5IHdvdWxkIGNvcHkgdGhlIGVudGlyZSBzdGFuemEgdW5tb2RpZmllZC4gIFRoZSBuZXdlc3QKKyAgICB2ZXJzaW9uIGRvZXMgbm90IGRvIHRoaXMsIGFzIGl0IHJlZm9ybWF0cyB0aGUgb3B0aW9ucywgYW5kIHRoZXJlYnkKKyAgICBvbmx5IHRha2VzIHRoZSBmaXJzdCBsaW5lLiAgU28sIHdlIG5vdyBzcGxpdCBhbGwgdGhlIGxpbmVzIGZyb20gdGhlCisgICAgc3RhbnphLCBhbmQgcHJvY2VzcyB0aGVtIGFsbC4gIENsb3NlczogIzE0NzQ5Mi4KKyAgKiBGaXggY29ycnVwdGlvbiBvZiBhdmFpbGFibGUgZmlsZSwgY2F1c2VkIGJ5IHVzZSBvZiBtZW1vcnkgdGhhdCB3YXMKKyAgICBwcmV2aW91c2x5IGZyZWVkLiAgQ2xvc2VzOiAjMTU0MjU3LgorICAqIEZpeCBzZXZlcmFsIG1pbm9yIG1lbWxlYWtzLgorICAqIFJlbW92ZSAvdXNyL3NiaW4vc3RhcnQtc3RvcC1kYWVtb24uICBDbG9zZXM6ICMxNTY0MzcuCisKKyAtLSBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4gIFRodSwgMjkgQXVnIDIwMDIgMTY6NDM6MTUgLTA1MDAKKworZHBrZyAoMS4xMC40KSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIFJlbW92ZSAtZmZ1bmN0aW9uLXNlY3Rpb25zIGFuZCAtZmRhdGEtc2VjdGlvbnMuICBDbG9zZXM6ICMxNTIxMzAuCisgICogSW5zdGFsbCBhcmNodGFibGUgaW50byAvdXNyL3NoYXJlL2Rwa2cvLgorCisgLS0gQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+ICBTdW4sIDE0IEp1bCAyMDAyIDE1OjE3OjU2IC0wNTAwCisKK2Rwa2cgKDEuMTAuMykgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBNb3ZlIGRzZWxlY3QuY2ZnIHRvIGRzZWxlY3QgcGFja2FnZS4gQ2xvc2VzOiBCdWcjMTUyMTMyCisgICogSW5zdGFsbCBtZXRob2RzIGludG8gL3Vzci9saWIvZHBrZy9tZXRob2RzLCBub3QgL3Vzci9saWIvZHBrZy4gIENsb3NlczoKKyAgICAjMTUyMTYxLgorICAqIEZpeCB0ZXN0IGludmVyc2lvbiBpbiBzdGFydC1zdG9wLWRhZW1vbiwgd2hlbiBjaGVja2luZyB0aGUgcGlkIGdpdmVuIGluCisgICAgYSBwaWQgZmlsZS4gIFRoYW5rcyBUaG9tYXMgTW9yaW4gPHRob21hcy5tb3JpbkBlbnN0LWJyZXRhZ25lLmZyPi4KKyAgICBDbG9zZXM6ICMxNTIyNzAuCisgICogSWYgaW4gLS10ZXN0IG1vZGUsIGFuZCAtLXN0b3AgaXMgZ2l2ZW4sIGluY3JlbWVudCBuX2tpbGxlZCwgc28gdGhhdAorICAgIHN0YXJ0LXN0b3AtZGFlbW9uIHJldHVybnMgdGhlIHByb3BlciBleGl0IHZhbHVlLiAgVGhhbmtzIFRob21hcyBNb3JpbgorICAgIDx0aG9tYXMubW9yaW5AZW5zdC1icmV0YWduZS5mcj4uICBDbG9zZXM6ICMxNTE5OTIuCisKKyAtLSBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4gIFRodSwgMTEgSnVsIDIwMDIgMjI6NTg6NDMgLTA1MDAKKworZHBrZyAoMS4xMC4yKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIE1ha2UgY29uZmlndXJhdGlvbiBmaWxlcyBpbiAkSE9NRSB3b3JrIGFnYWluCisgICogZHBrZyArIGRwa2ctc3RhdGljIGNvbmZsaWN0IHdpdGggZHBrZy1kZXYgPDwgMS45LCB0byBmaXggbWQ1c3VtIGVycm9yCisgICAgaW4gZHBrZy1zb3VyY2UuICBDbG9zZXM6ICMxNTE2OTEuCisgICogUmVtb3ZlIC1aIGZyb20gcGF0Y2ggY2FsbCwgaW4gZHBrZy1zb3VyY2UsIGFzIGl0IG1ha2VzIHBhdGNoIHdhcm4gYWJvdXQKKyAgICBtaXNzaW5nIHRpbWVzdGFtcHMuICBDbG9zZXM6ICMxNTE5NjUKKyAgKiBJbnN0YWxsIGRlYmlhbi9kc2VsZWN0LmNvbmZmaWxlcy4KKworIC0tIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPiAgVGh1LCAgNCBKdWwgMjAwMiAyMTowODowOSAtMDUwMAorCitkcGtnICgxLjEwLjEpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogQWRkIGNvbmZsaWN0IHdpdGggZHBrZy1pYXNlYXJjaCB3aGljaCBpbnRydWRlZCBvbiBvdXIgbmFtZXNwYWNlLgorICAqIFJlcGxhY2UgbWFucGFnZXMtZGUgd2hpY2ggaW5jbHVkZXMgb25lIG9mIG91ciBtYW5wYWdlcy4gIENsb3NlczogIzE1MTQ4NQorICAqIERvbid0IGFsd2F5cyBjYWxsIGF1dG9oZWFkZXIgd2hlbiBidWlsZGluZy4gQ2xvc2VzOiAjMTUxNDcxCisgICogRml4IGRvdWJsZSBjb25mbGljdCBpbiBkcGtnLiBDbG9zZXM6IEJ1ZyMxNTE1ODEKKyAgKiBNb3ZlIGRzZWxlY3QgbWV0aG9kcyB0byBkc2VsZWN0IHBhY2thZ2UuCisgICogZHBrZy1jaGVja2J1aWxkZGVwcyBubyBsb25nZXIgY2hlY2tzIGZvciBidWlsZC1lc3NlbnRpYWwuIGRwa2cgc2hvdWxkCisgICAgbm90IGhhcmRjb2RlIERlYmlhbiBwb2xpY3kuCisgICogTWFrZSBkcGtnLWdlbmNoYW5nZXMgYWNjZXB0IH4gYXMgcGFydCBvZiBhIHBhY2thZ2UgZmlsZW5hbWUuCisgICAgQ2xvc2VzOiBCdWcjMTUwNzM5CisgICogTW92ZSBkcGtnLmNmZyBhbmQgZHNlbGVjdC5jZmcgbWFucGFnZXMgaW50byBkcGtnIHBhY2thZ2UuIENsb3NlczogQnVnIzEzMjkwMQorCisgLS0gV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4gIFR1ZSwgIDIgSnVsIDIwMDIgMTI6MzQ6MDcgKzAyMDAKKworZHBrZyAoMS4xMCkgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBkcGtnIG5vdyByZW9yZGVycyBzeW1saW5rcyB3aGVuIGV4dHJhY3RpbmcgZGVicy4gIEhvd2V2ZXIsIHRoaXMgaXMgYWxzbworICAgIHN0aWxsIGRvbmUgd2hlbiBidWlsZGluZyBkZWJzLiAgQWZ0ZXIgYSBzdGFibGUgcmVsZWFzZSBvZiBEZWJpYW4gaGFzCisgICAgb2NjdXJyZWQgd2l0aCB0aGlzIG1vZGlmaWVkIGRwa2csIHRoZSByZW9yZGVyaW5nIHdoZW4gYnVpbGRpbmcgY2FuIGJlCisgICAgcmVtb3ZlZC4KKyAgKiBGaXhlZCB1cHBlci9sb3dlcmNhc2UgcHJvYmxlbXMgd2l0aCBwYWNrYWdlIG5hbWVzLiBDbG9zZXM6IEJ1ZyM1ODA5MQorICAgIChhbmQgMyBvdGhlcnMpLgorICAqIEFkZCBSdXNzaWFuIG1hbnVhbCBwYWdlcworICAqIEZpeCBuIGluIGRzZWxlY3QgcGFja2FnZSBsaXN0IChwZXJmb3JtcyBzZWFyY2hhZ2FpbiBub3cpCisgICogRml4IGxheW91dCBwcm9ibGVtIGluIGRwa2ctZGl2ZXJ0IG1hbnBhZ2UuIENsb3NlczogQnVnIzEwMzY2NworICAqIFdoZW4gYSBwYWNrYWdlIGlzIHNldCB0byBob2xkLCBhbmQgYSByZWluc3RhbGxhdGlvbiBpcyByZXF1ZXN0ZWQsCisgICAgLUUgd2lsbCBub3QgcHJvcGVybHkgc2tpcCBpdC4gIENsb3NlczogIzQ1Nzg3LgorICAqIE1ha2UgZHBrZy1jaGVja2J1aWxkZGVwcyB1c2UgZHBrZy1hcmNoaXRlY3R1cmUuIENsb3NlczogQnVnIzEwNDIzMAorICAqIEltcHJvdmUgZHBrZy1hcmNodGVjdHVyZSBkb2N1bWVudGF0aW9uLiBDbG9zZXM6IEJ1ZyMxMDQyMzIKKyAgKiBVcGRhdGUgR2VybWFuIHRyYW5zbGF0aW9uLiBDbG9zZXM6IEJ1ZyM5NzIzOQorICAqIFVwZGF0ZSBQb2xpc2ggdHJhbnNsYXRpb24uIENsb3NlczogQnVnIzExNTc4MworICAqIFVwZGF0ZSBGcmVuY2ggdHJhbnNsYXRpb24uCisgICogVXBkYXRlIEJyYXppbGlhbiB0cmFuc2xhdGlvbi4KKyAgKiBVcGRhdGUgRGFuaXNoIHRyYW5zbGF0aW9uLgorICAqIFVwZGF0ZSBHYWxpY2lhbiB0cmFuc2xhdGlvbi4KKyAgKiBVcGRhdGUgUG9ydHVndWVzZSB0cmFuc2xhdGlvbnMuCisgICogQWRkIENhdGFsYW4gdHJhbnNsYXRpb24KKyAgKiBBZGQgR2VybWFuIG1kNXN1bSBtYW5wYWdlCisgICogQWRkIEJyYXppbGlhbiB1cGRhdGUtYWx0ZXJuYXRpdmVzIG1hbnBhZ2UuIENsb3NlczogQnVnIzEyMjEzMgorICAqIEltcHJvdmUgZHNlbGVjdCBtYW5wYWdlLiBDbG9zZXM6IEJ1ZyMxMDM4MzkKKyAgKiBkcGtnLW5hbWUoMSkgbm8gbG9uZ2VyIG1lbnRpb25zIHRoZSBub24tZXhpc3RpbmcgZHBrZyg1KSBtYW5wYWdlLgorICAgIENsb3NlczogQnVnIzEwNDIxNAorICAqIEltcHJvdmUgaGFuZGxpbmcgb2YgUmVjb21tZW5kcyBhbmQgU3VnZ2VzdHMgaW4gZHNlbGVjdC4gQ2xvc2VzOiBCdWcjMzQ5NDIKKyAgKiBBZGQgcGVyLXVzZXIgY29uZmlndXJhdGlvbiBmaWxlcy4gQ2xvc2VzOiBCdWcjMTAzODQ1CisgICogU3BsaXQgZHNlbGVjdCBpbnRvIGl0cyBvd24gcGFja2FnZS4gZHBrZyBQcmUtRGVwZW5kcyBvbiBpdAorICAgIHRvIG1ha2Ugc3VyZSBubyB3ZWlyZCB0aGluZ3MgaGFwcGVuIGR1cmluZyBhbiB1cGdyYWRlIGJ1dCB0aGlzCisgICAgd2lsbCBhbGxvdyB1cyB0byBtYWtlIGRzZWxlY3Qgb3B0aW9uIGF0IHNvbWUgcG9pbnQgaW4gdGhlIGZ1dHVyZS4KKyAgICBDbG9zZXM6ICMxMTQyNDkuCisgICogTWFrZSBjb2xvdXJzIGluIGRzZWxlY3QgdXNlci1jb25maWd1cmFibGUuIENsb3NlczogQnVnIzEwMzk5NAorICAqIE1ha2UgUSBkbyBhbiBhYm9ydCBpbiB0aGUgbWV0aG9kIHNlbGVjdGlvbiBtZW51IHRvIG1ha2UgdGhpbmdzIG1vcmUKKyAgICBjb25zaXN0ZW50IHdpdGggdGhlIHBhY2thZ2UgbGlzdAorICAqIEZpeCB0ZXN0IGZvciBuaWNlKDIpIGZhaWx1cmUgaW4gc3RhcnQtc3RvcC1kYWVtb24uIENsb3NlczogQnVnIzEwNDU2MQorICAqIEltcHJvdmUgdGhlIGRzZWxlY3QgaGVscHNjcmVlbiBhIGJpdC4gQ2xvc2VzOiBCdWcjNzI2MzQKKyAgKiBOZXcgdmVyc2lvbiBjb21wYXJpc29uIHJvdXRpbmUgdGhhdCBjYW4gaGFuZGxlIGFyYml0cmFyaWx5IGxhcmdlIG51bWJlcnMKKyAgICBhbmQgYWNjZXB0cyBgficgYXMgYSBsb3ctc29ydGluZyBjaGFyYWN0ZXIuIENsb3NlczogQnVnIzkzMzg2CisgICogZHNlbGVjdCBub3cgYWNjZXB0cyByZWd1bGFyIGV4cHJlc3Npb25zIHdoZW4gc2VhcmNoaW5nIGZvciBwYWNrYWdlcworICAgIGFuZCBjYW4gc2VhcmNoIGluIHBhY2thZ2UgZGVzY3JpcHRpb25zIGFzIHdlbGwuCisgICAgQ2xvc2VzOiBCdWcjODEwMDksIzgzMTM5CisgICogTW92ZSBxdWVyeSBjb21tYW5kcyBpbnRvIGEgc2VwYXJhdGUgZHBrZy1xdWVyeSBjb21tYW5kLiBGb3IgdGhlIG9sZCBvcHRpb25zCisgICAgKC1MLC1sLC1zLC1TKSBkcGtnIHdpbGwgc3RpbGwgY2FsbCBpdCBmb3IgeW91LgorICAqIEFkZCBjb25maWd1cmFibGUgcGFja2FnZSBsaXN0aW5nIHN1cHBvcnQgdG8gZHBrZy1xdWVyeQorICAqIEhhbmRsZSB3aW5kb3cgcmVzaXplIGluIGRzZWxlY3QgbWFpbiBtZW51LiBDbG9zZXM6IEJ1ZyM5ODI3NQorICAqIHVwZGF0ZS1yYy5kIG1vdmVkIHRvIHRoZSBzeXN2aW5pdCBwYWNrYWdlLiBDbG9zZXM6IEJ1ZyMxMDg4ODcsIzEwOTI4MgorICAqIEFkZCAtLXNob3dmb3JtYXQgYW5kIC0tc2hvdyBvcHRpb25zIHRvIGRwa2ctZGViIGFuZCBkcGtnLXF1ZXJ5IHRvCisgICAgYWxsb3cgb25lIHRvIGN1c3RvbWl6ZSB0aGUgb3V0cHV0IGZvcm1hdAorICAqIHNldmVyYWwgaW5zdGFsbC1pbmZvIGNsZWFudXBzOgorICAgICogTW92ZSAvdXNyL2luZm8vZGlyIHRvIC91c3Ivc2hhcmUvaW5mby9kaXIuICBDbG9zZXM6ICM2NzE3NC4KKyAgICAqIElmIC91c3Ivc2hhcmUvaW5mbyBkb2Vzbid0IGV4aXN0LCBwcmludCBhIG1lc3NhZ2Ugc2F5aW5nIHNvLAorICAgICAgaW5zdGVhZCBvZiB0aGUgY29uZnVzaW5nICJjb3VsZG4ndCBsb2NrIiBlcnJvci4gIENsb3NlczogIzI1MzEuCisgICAgKiBJZiAvdXNyL3NoYXJlL2luZm8vZGlyIGRvZXNuJ3QgZXhpc3QsIG9yIGlzIGVtcHR5LCB0cnkgdG8gY29weSB0aGUKKyAgICAgIGJhY2t1cCBmcm9tIC92YXIvYmFja3Vwcy9pbmZvZGlyLmJhay4gIENsb3NlczogIzEyMTMwOS4KKyAgICAqIEFkZCBhIC0tcmVtb3ZlLWV4YWN0bHkgb3B0aW9uLCBhbmQgYWxsb3cgZm9yIHJlbGF0aXZlIGZpbGVuYW1lcy4KKyAgICAgIENsb3NlczogIzkyNjUwLgorICAgICogVXNlIHRoZSBzZWN0aW9uIGZyb20gdGhlIC5pbmZvIGZpbGUgaWYgLS1zZWN0aW9uIGlzIG5vdCBnaXZlbi4KKyAgICAgIENsb3NlczogIzc2MTAwLgorICAgICogRXJyb3IgbWVzc2FnZXMgbm93IGluY2x1ZGUgdGhlIGZpbGVuYW1lIGJlaW5nIHByb2Nlc3NlZC4KKyAgICAgIENsb3NlczogIzY2NzM1CisgICAgKiAvdXNyL3NoYXJlL2luZm8vZGlyIG5vdyBoYXMgaXQncyBlbnRyaWVzIGZvcm1hdHRlZCB0byBldmVuIHdpZHRocy4gCisgICAgICBDbG9zZXM6ICMxMTIyOAorICAgICogLS1jYWxpZ258LS1hbGlnbnwtLW1heHdpZHRoIGFyZSBub3cgaWdub3JlZC4KKyAgKiBzdHJpcCBlbm9lbnQgYXMgd2VsbC4gQ2xvc2VzOiBCdWcjMTEyMzc4CisgICogRml4IGZvcm1hdCBlcnJvciBpbiBEdXRjaCB0cmFuc2xhdGlvbi4gQ2xvc2VzOiBCdWcjMTEzMTIwCisgICogV2hlbiBwYXJzaW5nIHN0ZGluLCBtZDVzdW0gbm93IGRpc3BsYXlzICctJyBhcyB0aGUgZmlsZW5hbWUsIHRvIG1hdGNoCisgICAgdGV4dHV0aWxzIG1kNXN1bS4gIENsb3NlczogIzEyMTQ4OS4KKyAgKiBBcHBseSBwYXRjaCBmcm9tIGJ1ZywgdG8gZ2l2ZSB1cGRhdGUtYWx0ZXJuYXRpdmVzIGEgLS1saXN0IGNvbW1hbmQuCisgICAgQ2xvc2VzOiAjMTIwOTI0LgorICAqIE1ha2UgZHBrZy1jaGVja2J1aWxkZGVwcyBhbHdheXMgY2hlY2sgZm9yIGJ1aWxkLWVzc2VudGlhbC4KKyAgICBDbG9zZXM6IEJ1ZyMxMTg0MjAuCisgICogVXNlIHNwYWNlIHNlcGFyYXRlZCBvdXRwdXQgaW5zdGVhZCBvZiBjb21tYSBzZXBhcmF0ZWQgaW4KKyAgICBkcGtnLWNoZWNrYnVpbGRkZXBzCisgICogVXBkYXRlIGRlZmF1bHQgaWdub3JlIGV4cHJlc3Npb24gaW4gZHBrZy1zb3VyY2UgdG8gYWxzbyBtYXRjaCAqfiBhbmQKKyAgICAqLnN3cCBpbiBzdWJkaXJzLiBDbG9zZXM6IEJ1ZyMxMjc0NTgKKyAgKiBIYW5kbGUgZXJyb3JzIHdoZW4gdmVyaWZ5aW5nIG1kNXN1bXMuIENsb3NlczogQnVnIzEwMjM2NworICAqIGRwa2ctc291cmNlIG5vdyB1c2VzIHJlbGlhYmxlIHRpbWVzdGFtcHMgZm9yIGNoYW5nZWQgZmlsZXMuCisgICAgQ2xvc2VzOiBCdWcjMTA1NzUwCisgICogRml4IHR5cG8gaW4gc3RhcnQtc3RvcC1kYWVtb24gaGVscCBtZXNzYWdlLiBDbG9zZXM6IEJ1ZyMxMzE0MzkKKyAgKiB1cGRhdGUtYWx0ZXJuYXRpdmUgZXhpdHMgd2l0aCBhIG5vbi16ZXJvIGV4aXQgY29kZSB3aGVuIGRpc3BsYXlpbmcKKyAgICBhIG5vbi1leGlzdGluZyBhbHRlcm5hdGl2ZS4gQ2xvc2VzOiBCdWcjMTMxNDk2CisgICogVXNlIGd6aXAgLWMgaW4gaW5zdGFsbC1pbmZvLiBDbG9zZXM6IEJ1ZyMxMzE3NTgKKyAgKiBzdGFydC1zdG9wLWRhZW1vbiB3b3JrcyBvbiBIUC1VWCBub3cuIENsb3NlczogQnVnIzEzMDEzMAorICAqIEZpeCBkc2VsZWN0IHNwaW4gd2hlbiBydW4gd2l0aG91dCBpbnB1dC4gQ2xvc2VzOiBCdWcjMTMyNDc2CisgICogVXBkYXRlLWFsdGVybmF0aXZlcyBub3cgY29ycmVjdGx5IHJlc3RvcmVzIGFuIGFsdGVybmF0aXZlIHRvIGF1dG8gbW9kZQorICAgIHdoZW4gcmVtb3ZpbmcgYSBtYW51YWxseSBzZWxlY3RlZCBhbHRlcm5hdGl2ZS4gQ2xvc2VzOiBCdWcjMTMyNjMyCisgICogQ29weSBidWdzIGFuZCBvcmlnaW4gaW5mb3JtYXRpb24gaW50byBzdGF0dXMgZmlsZS4gQ2xvc2VzOiBCdWcjMTMyNzE0CisgICogSW1wcm92ZSB3b3JkaW5nIG9mIHVwZGF0ZS1hbHRlcm5hdGl2ZXMgLS1jb25maWcgdGV4dC4gQ2xvc2VzOiBCdWcjMTMzMDM1CisgICogQWRkIG1hbnBhZ2VzIGZvciBkcGtnLmNmZyBhbmQgZHNlbGVjdC5jZmcuIENsb3NlczogQnVnIzEzMjkwMQorICAqIEltcHJvdmUgdGVzdCBmb3IgaWxsZWdhbCBwYWNrYWdlbmFtZSBmb3IgZHBrZy1nZW5jb250cm9sIC1wIG9wdGlvbgorICAqIEZpeCBzZWdmYXVsdCB3aGVuIGdldGVudigiUEFUSCIpIHJldHVybnMgbnVsbC4gIENsb3NlczogQnVnIzEzNjM0OQorICAqIEFkZCBMYXJnZSBGaWxlIFN1bW1pdCBleHRlbnNpb25zLiBDbG9zZXM6IEJ1ZyMxMzA1MDkKKyAgKiBGaXggdHlwbyBpbiBkcGtnLXNvdXJjZSBtYW5wYWdlLiBDbG9zZXM6IEJ1ZyMxNDE5MDYKKyAgKiBSZS1maXggaGFuZGxpbmcgb2YgbXVsdGlwbGUgYmxhbmsgbGluZXMgaW4gY29udHJvbC4gQ2xvc2VzOiBCdWcjMTQzMTE3CisgICogRG9jdW1lbnQgLS1mb3JjZS1jb25mbWlzcyBhbmQgLS1mb3JjZS1iYWQtdmVyaWZ5LiBDbG9zZXM6IEJ1ZyMxNDY4NTUKKyAgKiBEcm9wIHVwZ3JhZGUgY29tcGF0IHN0dWZmIGluIGRwa2cgcG9zdGluc3QgZm9yIGFuY2llbnQgdmVyc2lvbnMgKG92ZXIKKyAgICA1IHllYXJzIG9sZCkKKyAgKiBBbHdheXMgc2V0IENMT0VYRUMgb24gdGhlIGxvY2sgZmQuICBDbG9zZXM6IEJ1ZyMxNDc4NzIKKyAgKiBDbGVhbiB1cCB0bXAgZmlsZXMgd2hlbiBjdHJsLWMgaXMgc2VudCB0byBkcGtnLXNvdXJjZS4gIENsb3NlczoKKyAgICBCdWcjNTg2NTMuCisgICogZHBrZy1zb3VyY2Ugbm8gbG9uZ2VyIHJlcXVpcmVzIGV4YWN0IGNhc2UgbWF0Y2hlcyBmb3IgZmllbGRzIGluCisgICAgZGViaWFuL2NvbnRyb2wuICBDbG9zZXM6IEJ1ZyMxMzkxNTkuCisgICogZHBrZy1zY2FucGFja2FnZXMgbm93IGdpdmVzIHByb3BlciBjYXNlIGZvciBTb3VyY2UgYW5kIEluc3RhbGxlZC1TaXplLgorICAgIENsb3NlczogQnVnIzExOTUzMi4KKyAgKiBkcGtnLWFyY2hpdGVjdHVyZTogcy9idWlsZCBvbi9idWlsdCBvbi87IHNhbWUgZm9yICdidWlsZCBmb3InLgorICAgIENsb3NlczogQnVnIzE0MDQ0MS4KKyAgKiBjbC1kZWJpYW4ucGwgbm93IHJlY29nbml6ZXMgZW1lcmdlbmN5IGFzIHZhbGlkIGluIGNoYW5nZWxvZ3MuCisgICAgQ2xvc2VzOiBCdWcjMTM4MDEzLgorICAqIFByb3Blcmx5IGNvdW50IHJlY3Vyc2l2ZSBleHBhbnNpb24gb2YgdmFyaWFibGVzLCBpbnN0ZWFkIG9mIGp1c3QKKyAgICBjb3VudGluZyBhbGwgdmFyaWFibGUgZXhwYW5zaW9ucy4gIENsb3NlczogIzE0NDEyMS4KKyAgKiBBZGQgLUk8ZmlsZW5hbWU+IHRvIGRwa2ctYnVpbGRwYWNrYWdlIGFuZCBkcGtnLXNvdXJjZSwgdG8gZXhjbHVkZXMKKyAgICBmaWxlcyBmcm9tIHRhciwgd2hlbiBidWlsZGluZyBhIG5hdGl2ZSBwYWNrYWdlLiAgQ2xvc2VzOiBCdWcjNzU5NDcuCisgICogQ2xvc2UgdGhlIG9sZCBkZWJpYW4vZmlsZXMgZmlsZSwgYmVmb3JlIGRvaW5nIGEgcmVuYW1lLiAgQ2xvc2VzOgorICAgIEJ1ZyMxMTE1MDMuCisgICogRml4IGRvY3VtZW50YXRpb24gb2YgLXY8dmVyc2lvbj4gZm9yIGRwa2ctcGFyc2VjaGFuZ2Vsb2csIHJlbW92aW5nIHRoZQorICAgIHJlcXVpcmVtZW50IHRoYXQgdGhlIHZlcnNpb24gaGFzIHRvIGJlIGluIHRoZSBjaGFuZ2Vsb2cuICBDbG9zZXM6CisgICAgQnVnIzExNzk2OC4KKyAgKiBGaXggdHlwbyBpbiBkcGtnLXNvdXJjZSgxKSwgcy8tc3UvLXNVLy4gIENsb3NlczogQnVnIzEyNjM0MC4KKyAgKiBBZGQgZHBrZy1zY2Fuc291cmNlcyB0byBkcGtnLXNjYW5wYWNrYWdlcyg4KS4gIENsb3NlczogQnVnIzE0NzkyNC4KKyAgKiBDaGFuZ2UgL3Vzci9pbmZvIGludG8gYSBzeW1saW5rIHRvIC91c3Ivc2hhcmUvaW5mbyBpZiBwb3NzaWJsZQorCisgLS0gV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4gIEZyaSwgMjEgSnVuIDIwMDIgMjE6NTM6MTUgKzAyMDAKKworZHBrZyAoMS45LjIxKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIEZpeCBjb3JydXB0IFN3ZWRpc2ggdHJhbnNsYXRpb25zIHRoYXQgd291bGQgc29tZSBlcnJvciBtZXNzYWdlcyBkaXNwbGF5CisgICAgaW5jb3JyZWN0bHkuCisgICogRW5hYmxlIC0tZm9yY2Utb3ZlcndyaXRlIGJ5IGRlZmF1bHQgaW4gL2V0Yy9kcGtnL2Rwa2cuY2ZnCisgICogZHBrZy5jZmcgaXMgbm93IG5vIGxvbmdlciBhIGNvbmZmaWxlLiBUaGlzIG1lYW5zIHRoZSBpbnN0YWxsZXIgY2FuCisgICAgY2hhbmdlIGRlZmF1bHRzIGRlcGVuZGluZyBvbiBob3cgYW4gaW5zdGFsbCBpcyBkb25lCisgICogRGV0ZWN0IHRydW5jYXRlZCBkZWJzLCBhbmQgYWJvcnQgdGhlIHVucGFjay4gIENsb3NlczogIzEzODU2OS4KKyAgKiBJbXByb3ZlIGRwa2coOCkgLS1mb3JjZSBkb2N1bWVudGF0aW9uCisgICogRml4IGVycm9yIGluIFJ1c3NpYW4gZHNlbGVjdCB0cmFuc2xhdGlvbgorCisgLS0gV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4gIFRodSwgMTYgTWF5IDIwMDIgMTk6NDI6MjkgKzAyMDAKKworZHBrZyAoMS45LjIwKSB1bnN0YWJsZTsgdXJnZW5jeT1tZWRpdW0KKworICAqIEZpeCBhc3NlcnRpb24gd2hlbiAtLWF1dG8tZGVjb25maWd1cmUgaXMgc2V0LiAgQ2xvc2VzOiAjMTM3NzY1LgorICAqIEZpeCBzZWdmYXVsdCBkaXNjb3ZlcmVkIGJ5IGZpeGluZyB0aGUgYWJvdmUuCisgICogRml4IHNlZ2ZhdWx0IHdoZW4gZ2V0ZW52KCJQQVRIIikgcmV0dXJucyBudWxsLiAgQ2xvc2VzOiAjMTM2MzQ5CisgICogUmVjb21waWxlZCBhZ2FpbnN0IHVwZGF0ZWQgemxpYiwgdG8gZml4IHBvc3NpYmxlIHNlY3VyaXR5IGlzc3VlLiAgQWxzbworICAgIGJ1bXBlZCBidWlsZC1kZXBlbmRzIHRvIG1hdGNoLiAgQ2xvc2VzOiAjMTM3OTMxKGdyYXZlKQorCisgLS0gQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+ICBTdW4sIDE3IE1hciAyMDAyIDAyOjUyOjQ0IC0wNjAwCisKK2Rwa2cgKDEuOS4xOSkgdW5zdGFibGU7IHVyZ2VuY3k9bWVkaXVtCisKKyAgKiBpbnN0YWxsLWluZm8gY29udGludWVzIHRvIHJlYWQgYWxsIGRhdGEgZnJvbSBhIHBpcGUsIHVudGlsIEVPRi4KKyAgICBDbG9zZXM6ICM5OTgxNihncmF2ZSkuCisgICogQWRkIENhdGFsYW4gdHJhbnNsYXRpb24KKyAgKiBVcGRhdGUgRGFuaXNoIHRyYW5zbGF0aW9uLiBDbG9zZXM6IEJ1ZyMxMzE4NjkKKyAgKiBVcGRhdGUgRnJlbmNoIHRyYW5zbGF0aW9uLgorICAqIHVwZGF0ZS1hbHRlcm5hdGl2ZSBleGl0cyB3aXRoIGEgbm9uLXplcm8gZXhpdCBjb2RlIHdoZW4gZGlzcGxheWluZworICAgIGEgbm9uLWV4aXN0aW5nIGFsdGVybmF0aXZlLiBDbG9zZXM6IEJ1ZyMxMzE0OTYKKyAgKiBDaGFuZ2VkIE1haW50YWluZXIgdG8gZGViaWFuLWRwa2dAbGlzdHMuCisgICogRml4ICJVcCB0byBkYXRlIGluc3RhbGxlZCBwYWNrYWdlcyIgZm9yIHBvbGlzaCB0cmFuc2xhdGlvbi4gIENsb3NlczoKKyAgICAjMTE2Mzk4LgorICAqIFN3YXAgdXBkYXRlZC91cC10by1kYXRlIHBvbGlzaCB0cmFuc2xhdGlvbnModGhleSB3ZXJlIHJldmVyc2VkKS4KKyAgICBDbG9zZXM6ICMxMTc1ODMsICMxMDI5NjEuCisgICogTWFyayAvZXRjL2FsdGVybmF0aXZlcy9SRUFETUUgYXMgYSBjb25mZmlsZS4KKyAgKiBTdHJpcCAubm90ZSwgLmNvbW1lbnQsIGFuZCAvdXNyL2xpYi9kcGtnL2Vub2VudC4KKyAgKiBNYWtlIGRwa2ctZ2VuY29udHJvbCBub3Qgd2FybiBhYm91dCBVcGxvYWRlcnMuICBDbG9zZXM6ICMxMTEwOTAuCisKKyAtLSBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4gIFNhdCwgIDIgRmViIDIwMDIgMTE6NDc6MzQgLTA2MDAKKworZHBrZyAoMS45LjE4KSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIEZpeCBNRDVTdW0gY29ycnVwdGlvbiB3aGVuIHVwZ3JhZGluZyBhIHBhY2thZ2UuICBDbG9zZXM6IEJ1ZyMxMTM5NjEuCisgICogQWRkIFdpY2hlcnQgYW5kIEkgdG8gZGViaWFuL2NvbnRyb2w6VXBsb2FkZXJzLgorCisgLS0gQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+ICBTYXQsICAzIE5vdiAyMDAxIDAwOjMxOjAwIC0wNjAwCisKK2Rwa2cgKDEuOS4xNykgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiB1cGRhdGVkLXJjLmQgbW92ZWQgdG8gdGhlIHN5c3Zpbml0IHBhY2thZ2UuIENsb3NlczogQnVnIzEwODg4NywjMTA5MjgyCisKKyAtLSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPiAgV2VkLCAyMiBBdWcgMjAwMSAwMToyNDo1MiArMDIwMAorCitkcGtnICgxLjkuMTYpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogUmV2ZXJ0IGFyY2hpdGVjdHVyZS1jaGFuZ2UgdG8gZHBrZy1zb3VyY2UgZnJvbSAxLjkuMTEsIHNlZSBDaGFuZ2VMb2cKKyAgICBmb3IgZGV0YWlscy4KKworIC0tIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+ICBUaHUsICA1IEp1bCAyMDAxIDIyOjQyOjExICswMjAwCisKK2Rwa2cgKDEuOS4xNSkgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBDaGFuZ2UgcG9saWN5IG9mIGhhbmRsaW5nIGRzY2Zvcm1hdCBpbiBkcGtnLXNvdXJjZQorICAqIEZpeCB0aGUgYXJnbGlzdCBjb25zdHJ1Y3Rpb24gZm9yIG1haW50YWluZXIgc2NyaXB0cworICAqIFJldmVydCBkc2Nmb3JtYXQgdG8gMS4wIHNpbmNlIG9sZGVyIGRwa2ctc291cmNlIHZlcnNpb25zIGRvIG5vdCBoYXZlCisgICAgdGhlIG5ldyBwb2xpY3kuIEluIHRoZSBmdXR1cmUgKHN0YXJ0aW5nIGF0IGZvcm1hdCAyLjAgdG8gbWFpbnRhaW4KKyAgICBjb21wYXRpYmlsaXR5IHdpdGggb2xkIGRwa2ctc291cmNlIGltcGxlbWVudGF0aW9ucykgbWlub3IgY2hhbmdlcyB0bworICAgIHRoZSBkc2Nmb3JtYXQgaGF2ZSB0byBiZSBmdWxseSBiYWNrd2FyZCBhbmQgZm9yd2FyZCBjb21wYXRpYmxlLgorCisgLS0gV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4gIFNhdCwgMzAgSnVuIDIwMDEgMTY6NDE6NDMgKzAyMDAKKworZHBrZyAoMS45LjE0KSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIE1ha2UgdGhlIFVwbG9hZGVycyBmaWVsZCBpbiBhIC5kc2MgZmlsZSBvcHRpb25hbC4KKyAgKiBEaXNhYmxlZCBzYW5pdHkgY2hlY2tpbmcgb2Ygc291cmNlIHBhY2thZ2VzLiAgCisgCisgLS0gQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+ICBNb24sIDI1IEp1biAyMDAxIDAyOjIyOjQwIC0wNTAwCisKK2Rwa2cgKDEuOS4xMykgdW5zdGFibGU7IHVyZ2VuY3k9bWVkaXVtCisKKyAgKiBBZGQgYSAtVyBvcHRpb24gdG8gZHBrZy1zb3VyY2UoYW5kIHRoZSBvdGhlciB1dGlscywgd2hlcmUgaXQgaXMganVzdAorICAgIHBhc3NlZCB0aHJ1KSwgdG8gdHVybiBjZXJ0YWluIGVycm9ycyBpbnRvIHdhcm5pbmdzKG9mIHdoaWNoLCBvbmx5CisgICAgb25lIGlzIGNoYW5nZWQsIG5hbWVseSwgdGhlICd0YXIgZG9lc24ndCBjb250YWluIHByZWNlZGluZyBkaXJlY3RvcnknCisgICAgZXJyb3IpLiAgQ2xvc2VzOiAjMTAxODEzLCBhbmQgcGFydGlhbGx5IDEwMTg0NS4KKyAgKiBEb24ndCBlcnJvciBvdXQgaWYgdGhlIGZpbGVzIGluIHRoZSB0YXIgaGF2ZSBsZWFkaW5nICcuLycsIGZvcgorICAgIGRwa2ctc291cmNlLiAgKGFub3RoZXIgcGFydGlhbCBjbG9zZSBvZiAxMDE4NDUpLgorICAqIEhhbmRsZSB0aGUgY2FzZSB3aGVyZSBhIHNpbmdsZSBkaXJlY3RvcnkgZXhpc3RzIGluIHRoZSBvcmlnLnRhci5neiwgYnV0CisgICAgaXQgaXMgTk9UIG9mIHRoZSBmb3JtIDxwa2c+LTx2ZXI+LiAgQ2xvc2VzOiAjMTAxODQ1LgorICAqIFNldCBMQ19BTEwgaW4gZHBrZy1zb3VyY2Ugd2hlbiB3ZSBjYWxsIGV4dGVybmFsIHByb2dyYW1zIHdoZW4gd2UgYXJlCisgICAgZ29pbmcgdG8gcGFyc2UgdGhlaXIgb3V0cHV0LiAgQW5vdGhlciBidWcgZnJvbSAxMDE4NDUuCisgICogSGFuZGxlIHN0YXRpbmcgb2YgdHJ1bmNhdGVkIGNwaW8gZmlsZW5hbWVzKDEwMCBjaGFyIGxpbWl0LCBiYWgpLCBpbgorICAgIGRwa2ctc291cmNlLiAgQW5vdGhlciBidWcgZnJvbSAxMDE4NDUuCisgICogQWRkIHN1cHBvcnQgZm9yIGFuIFVwbG9hZGVycyBmaWVsZCwgd2hpY2ggaXMgcmVhZCBmcm9tIHRoZSBmaXJzdAorICAgIHBhcmFncmFwaCBvZiBkZWJpYW4vY29udHJvbCwgYW5kIHByb3BhZ2F0ZWQgdG8gdGhlIC5kc2MuICBUaGlzIGxpc3RzCisgICAgdGhlIHBlb3BsZSBhbGxvd2VkIHRvIHVwbG9hZCBhIHBhY2thZ2UuICBJZiBpdCBpcyBub3Qgc2V0LCB0aGVuIHRoZQorICAgIHZhbHVlIG9mIHRoZSBNYWludGFpbmVyIGlzIHBsYWNlZCBpbnRvIHRoaXMgZmllbGQgb2YgdGhlIC5kc2MuICBUaGlzCisgICAgYnVtcHMgdGhlIC5kc2MgZm9ybWF0IHRvIDEuMS4gIENsb3NlczogIzEwMTgxNS4KKyAgKiBIYW5kbGUgc3ltbGlua3MgaW4gdGhlIHRhcmJhbGwsIGFuZCBkb24ndCBlcnJvciBvdXQgaWYgZm91bmQuCisgICogaW4gY29udHJvbGxpYiwgbWFrZSB3YXJuZXJyb3JzIGRlZmF1bHQgdG8gd2FybmluZ3MuICBBZmZlY3RzCisgICAgZHBrZy1zb3VyY2UuICBUaGlzIHdpbGwgYmUgY2hhbmdlZCB0byBiZSBlcnJvcnMgaW4gdGhlIGZ1dHVyZS4KKworIC0tIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPiAgU3VuLCAyNCBKdW4gMjAwMSAxMzo0ODo1MiAtMDUwMAorCitkcGtnICgxLjkuMTIpIHVuc3RhYmxlOyB1cmdlbmN5PW1lZGl1bQorCisgICogRml4IGRvX3NjcmlwdCgpIGJ1Zy4gQ2xvc2VzOiBCdWcjMTAxNTUyCisgICogRml4IGJ1aWxkaW5nIGFuZCBleHRyYWN0aW5nIG9mIGNlcnRhaW4ga2luZHMgb2Ygc291cmNlIHBhY2thZ2VzLgorICAgIENsb3NlczogIzEwMTY4NC4KKyAgKiBBZGRlZCBDb2xpbiBXYXRzb24gdG8gVEhBTktTLgorCisgLS0gQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+ICBXZWQsIDIwIEp1biAyMDAxIDE4OjI3OjAzIC0wNTAwCisKK2Rwa2cgKDEuOS4xMSkgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBUaGUgIkhhbmcgb24gdG8geW91ciBoYXRzLCBpdCBnZXRzIGJ1bXB5IGZyb20gaGVyZS4iIHJlbGVhc2UuCisgICogVHJpbSB0cmFpbGluZyBzcGFjZXMgZnJvbSBwYWNrYWdlIG5hbWVzIHdoZW4gY2hlY2tpbmcgYnVpbGRkZXBzLgorICAgIENsb3NlczogIzEwMTMwNC4KKyAgKiBBcHBseSBwYXRjaCBmcm9tIGJ1ZyB0byBmaXggbG9naWMgZXJyb3IgdGhhdCBrZXB0IGV2ZXJ5dGhpbmcgYnV0CisgICAgQnVpbGQtRGVwcyBmcm9tIHdvcmtpbmcgaW4gY2hlY2tidWlsZGRlcHMuICBDbG9zZXM6ICMxMDE1MTEuCisgICogQXBwbHkgcGF0Y2ggdG8gY29ycmVjdGx5IGNoZWNrIHRoZSBvdXRwdXQgb2YgZ2NjIG9uIGh1cmQsIGZvcgorICAgIGRwa2ctYXJjaGl0ZWN0dXJlLiBDbG9zZXM6ICM5OTg3NC4KKyAgKiBUaGUgaW50ZXJuYWwgcG9kIGRvY3MgaW4gZHBrZy1hcmNoaXRlY3R1cmUgd2VyZSB1cGRhdGVkIHRvIHJlZmxlY3QKKyAgICB0aGF0IC1mIHdhcyBubyBsb25nZXIgaW1wbGllZCB3aGVuIC1xIHdhcyBnaXZlbiwgYnV0IHRoZSBidWlsZCBzeXN0ZW0KKyAgICB3YXNuJ3QgZ2VuZXJhdGluZyBuZXcgZG9jdW1lbnRhdGlvbi4gIENsb3NlczogIzEwMDk5Ny4KKyAgKiBkZWIoNSkgbm93IGhhcyBhIHNlZS1hbHNvIGZvciBkZWItb2xkKDUpLiAgQ2xvc2VzOiAjOTk2MjAuCisgICogRml4IGRwa2ctc2hsaWJkZXBzIGluZmluaXRlIGRpcmVjdG9yeSByZWN1cnNpb24gdGhydSBzeW1saW5rcy4KKyAgICBDbG9zZXM6ICM5NzYyMi4KKyAgKiBTZXQgdGhlIEFyY2hpdGVjdHVyZSB0byAnc291cmNlJyBvbmx5IHdoZW4gZG9pbmcgc291cmNlIG9ubHkgdXBsb2FkcworICAgIGluIHRoZSBnZW5lcmF0ZWQgY2hhbmdlcyBmaWxlcy4gIENsb3NlczogIzEwMDE0NC4KKyAgKiBEb2N1bWVudCAtbmMgaW4gdGhlIGRwa2ctYnVpbGRwYWNrYWdlIG1hbnBhZ2UuICBDbG9zZXM6ICMxMDEwMzguCisgICogTWFrZSBkcGtnLXNvdXJjZSB3b3JrIHdpdGggR05VIG1kNXN1bS4gIENsb3NlczogIzk3NjY2LgorICAqIGluIGRwa2ctc291cmNlLCB3aGVuIGJvdGggYXJjaDogYWxsIGFuZCBhcmNoOiA8YXJjaD4gcGFja2FnZXMgZXhpc3QgaW4KKyAgICBkZWJpYW4vY29udHJvbCwgZG9uJ3QgcHJvbW90ZSB0aGUgc291cmNlIGFyY2g6IHRvIGFueSwgYnV0IG9ubHkgbGlzdAorICAgIGFsbCBhbmQgPGFyY2g+LiAgQ2xvc2VzOiAjOTQ2MDgKKyAgKiBBcHBseSBwYXRjaCBmcm9tIENvbGluIFdhdHNvbjogIENsb3NlczogIzg5Njc5CisgICAgKiBSZXNldCBTSUdQSVBFIHRvIERFRkFVTFQgd2hlbiBmb3JraW5nIGd6aXAuCisgICAgKiBzZXQgTEFORyB0byBDIGJlZm9yZSBleGVjaW5nIGNwaW8sIGFzIHdlIHBhcnNlIGl0cyBvdXRwdXQuCisgICAgKiBJbiBjaGVja3RhcmNwaW8oKSBhbmQgY2hlY2t0YXJzYW5lKCksIHVzZSB0aGUgcHJldmlvdXNseSBvcGVuIHBpcGVzLAorICAgICAgaW5zdGVhZCBvZiB0aGUgb3BlbmluZyBmaWxlcyBvbiBkaXNrKHdoaWNoIHdhcyB0aGUgb2xkLCBhbmNpZW50IHdheSkuCisgICAgKiBJbXByb3ZlIHRoZSBvdXRwdXQgcGFyc2luZyBvZiB0YXIgaW4gY2hlY2t0YXJzYW5lKCkuCisgICogd2FybiBpbnN0ZWFkIG9mIGRpZSB3aGVuIGZpbmQgcmV0dXJucyBhbiBlcnJvcih3aGljaCBoYXBwZW5zIGlmIHRoZXJlCisgICAgaXMgYSBkYW5nbGluZyBzeW1saW5rLCBiZWNhdXNlIHdlIHVzZSAtZm9sbG93KS4gIENsb3NlczogIzUxNDc5LgorICAqIENoYW5nZSBsaXN0IG9mIGFsbG93ZWQgdXJnZW5jaWVzIGluIGRlYmlhbi9jaGFuZ2Vsb2cgdG86IGxvdywgbWVkaXVtLAorICAgIGhpZ2gsIGFuZCBjcml0Y2lhbC4gIENsb3NlczogIzk0NDc1LgorICAqIEVycm9yIG91dCBpZiBhbiBpbGxlZ2FsIHBhY2thZ2UgbmFtZSBpcyB1c2VkIGluIGRwa2ctZ2VuY29udHJvbC5wbC4KKyAgICBDbG9zZXM6ICM2MTIxMQorICAqIEFwcGx5IHBhdGNoIGZyb20gTWFyY3VzIEJyaW5rbWFubiB0byBkcGtnLWJ1aWxkcGFja2FnZTogIENsb3NlczoKKyAgICAjOTgyMDEuCisgICAgKiBPcHRpb24gLWEgaW1wbGllcyBvcHRpb24gLWQuCisgICAgKiBTZXQgQVJDSCBjb3JyZWN0bHkgdG8gaG9zdCBhcmNoaXRlY3R1cmUsIHJhdGhlciB0aGFuIGJ1aWxkIGFyY2guCisKKyAtLSBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4gIFR1ZSwgMTkgSnVuIDIwMDEgMjI6MTU6MjUgLTA1MDAKKworZHBrZyAoMS45LjEwKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIEZpeCBbYXJjaF0gcGFyc2luZywgYW5kIGhhbmRsZSBleHRyYSBzcGFjZXMgYmV0dGVyLiAgQ2xvc2VzOiAjMTAwNTEyLAorICAgICMxMDEwMzEuCisgICogQXBwbHkgcGF0Y2ggZnJvbSBidWcsIHRvIGZpeCBjbGVhbnVwIG9mIGRwa2ctZGl2ZXJ0IHRlbXAgZmlsZXMuCisgICAgQ2xvc2VzOiAjMTAwNDc0LgorICAqIFN3YXAgai9rIGtleXMgb24gdGhlIG1haW4gbWVudSwgc28gdGhleSBmdW5jdGlvbiBsaWtlIHRoZSBwYWNrYWdlCisgICAgc2VsZWN0aW9uIHNjcmVlbihhbmQgbGlrZSB2aSkuICBDbG9zZXM6ICMxMDA1MDIuCisgICogTXVsdGlwbGUgZml4ZXMgaW4gYnVnOiBDbG9zZXM6ICM5OTg5Mi4KKyAgICAqIHMvREVBRF9KT0UvREVBREpPRS8gaW4gZHBrZy1zb3VyY2UuCisgICAgKiBTd2l0Y2ggdG8gYXV0byBtb2RlIGlmIGFsdGVybmF0aXZlIHN5bWxpbmsgaXMgbWlzc2luZy4KKyAgKiBVcGRhdGUgU3BhbmlzaCB0cmFuc2xhdGlvbgorCisgLS0gQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+ICBTYXQsIDE2IEp1biAyMDAxIDE0OjU3OjQ1IC0wNTAwCisKK2Rwa2cgKDEuOS45KSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIFRoZSBsZWFkaW5nIGFuZCB0cmFpbGluZyBzcGFjZXMgcGF0Y2ggaW4gdGhlIGxhc3QgdXBsb2FkIGhhZCBzb21lCisgICAgaXNzdWVzIHdpdGggdHJhaWxpbmcgc3BhY2VzLiAgVGhpcyBmaXhlcyB0aGVtLiAgTm8gYnVnIHRvIGNsb3NlLCBhcyB0aGUKKyAgICBidHMgaXMgc3RpbGwgZG93bi4KKworIC0tIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPiAgV2VkLCAgNiBKdW4gMjAwMSAyMjozNjo1NyAtMDUwMAorCitkcGtnICgxLjkuOCkgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBSZW1vdmUgbGVhZGluZyBhbmQgdHJhaWxpbmcgc3BhY2VzIGZyb20gdmVyc2lvbnMsIGFuZCBjaGVjayBmb3IKKyAgICBlbWJlZGRlZCBzcGFjZXMsIGluc2lkZSBkcGtnLiAgQ2xvc2VzOiAjOTkxODYuCisgICogSGFuZGxlIHZhcmllZCB1c2Ugb2Ygc3BhY2VzIGluIGRwa2ctY2hlY2tidWlsZGRlcHMuICBDbG9zZXM6ICM5ODg5OS4KKyAgKiBSZXNldCBTSUdQSVBFIGJhY2sgdG8gZGVmYXVsdCwgaW4gZHBrZy1zb3VyY2UuICBDbG9zZXM6ICM5ODU2My4KKyAgKiBSZW1vdmUgYm9ndXMgJCEgY2hlY2sgZnJvbSBkcGtnLWFyY2hpdGVjdHVyZS4gIENsb3NlczogIzk5NDI4LgorCisgLS0gQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+ICBTYXQsICAyIEp1biAyMDAxIDE1OjE1OjA0IC0wNTAwCisKK2Rwa2cgKDEuOS43KSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIElmIGEgbmV3IGZpbGUgZG9lc24ndCBleGlzdCBvbiBkaXNrLCBidXQgaXMgYSBnb2luZyB0byBiZSBpbnN0YWxsZWQgYXMKKyAgICBhIGRpcmVjdG9yeSwgdGhlbiBkb24ndCBlcnJvciBvdXQuICBDbG9zZXM6IEJ1ZyMxNzM4MS4KKyAgKiBVcGRhdGUgamFwYW5lc2UgbWFucGFnZXMuICBDbG9zZXM6IEJ1ZyM5NzgzMS4KKyAgKiBVcGRhdGUgaXQucG8uICBDbG9zZXM6IEJ1ZyM5ODI3My4KKyAgKiBGaXggYmFkIGNsZWFudXAgaW4gZHBrZy1kaXZlcnQuICBDbG9zZXM6IEJ1ZyM5ODU3OCwjOTg4MjgsIzk4ODMxLgorCisgLS0gQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+ICBNb24sIDI4IE1heSAyMDAxIDE4OjU5OjAzIC0wNTAwCisKK2Rwa2cgKDEuOS40KSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIE9vcHMuICBFT0ZfbW1hcCBpbmNvcnJlY3RseSBkZXRlY3RpbmcgdGhlIGVuZCBvZiB0aGUgZGF0YSBibG9jay4KKyAgICBDbG9zZXM6IEJ1ZyM5NTk4MS4KKyAgKiBBZnRlciBmaXhpbmcgdGhlIGFib3ZlIGJ1ZywgYW5kIHVzaW5nIGRlYm9vdHN0cmFwIHRvIGJ1aWxkIGEgc2lkCisgICAgY2hyb290LCBJIGRpc2NvdmVyZWQgdGhhdCBteSBwcmV2aW91cyBkZXBlbmRlbmN5IGN5Y2xlIGZpeCBjb3VsZCBjYXVzZQorICAgIHNlZ2ZhdWx0cyBpbiBzb21lIHNpdHVhdGlvbnMuCisKKyAtLSBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4gIFR1ZSwgIDEgTWF5IDIwMDEgMjM6MDQ6NDYgLTA1MDAKKworZHBrZyAoMS45LjMpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogRml4IGNvbXBpbGVzIG9uIHBwYy4gQ2xvc2VzOiBCdWcjOTU5MTguCisKKyAtLSBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4gIFR1ZSwgIDEgTWF5IDIwMDEgMDA6Mjk6NDUgLTA1MDAKKyAgIAorZHBrZyAoMS45LjIpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogUmVjb21waWxlLCB0byBmaXggaW5jb3JyZWN0IHBhdGggMS45LjEvZHBrZy1kaXZlcnQuIENsb3NlczogQnVnIzk1ODQ1CisKKyAtLSBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4gIE1vbiwgMzAgQXByIDIwMDEgMTQ6MjE6MjggLTA0MDAKKworZHBrZyAoMS45LjEpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogRml4IHNlZ2ZhdWx0IHdpdGggZW1wdHkgc3RhdHVzIGFuZCBhdmFpbGFibGUsIGFuZCB3aGVuIG1pc3NpbmcgYQorICAgIHRyYWlsaW5nIG5ldyBsaW5lLiAgQ2xvc2VzOiBCdWcjOTU0OTYKKyAgKiBNYWtlIGRwa2ctc2hsaWJkZXBzIG5vdCBjYXJlIGlmIGRwa2cgLS1zZWFyY2ggcmV0dXJuIHdpdGggYW4gZXJyb3IuCisgICAgQ2xvc2VzOiBCdWcjOTU1NjgKKyAgKiBGaXggY29ycnVwdGlvbiBvZiB1c2VyLWRlZmluZWQgZmllbGRzIGluIHN0YXR1cyBhbmQgYXZhaWxhYmxlLgorICAgIENsb3NlczogQnVnIzk1NTY3LgorICAqIENoYW5nZWQgZHBrZy5jZmcgdG8gaW5jbHVkZSBuby1kZWJzaWcgYnkgZGVmYXVsdCwgYXMgbm8gZGVicyBhcmUKKyAgICBjdXJyZW50bHkgc2lnbmVkLCBhbmQgd2UgZ2V0IGZhbHNlIGVycm9ycyB3aGVuIGRlYnNpZy12ZXJpZnkgaXMKKyAgICBpbnN0YWxsZWQuICBUaGlzIHdpbGwgYmUgcmVtb3ZlZCBpbiB0aGUgZnV0dXJlLCB3aGVuIHRoZSBhcmNoaXZlIHRvb2xzCisgICAgc3VwcG9ydCBwYWNrYWdlIHNpZ25hdHVyZXMuICBDbG9zZXM6IEJ1ZyM5NTU3MworICAqIGRwa2ctYnVpbGRwYWNrYWdlIHNob3VsZCBvbmx5IGNoZWNrIGZvciB2YWxpZCBzaWduaW50ZXJmYWNlIGlmIHRoZQorICAgIHVzZXIgc3BlY2lmaWVzIG9uZS4gQ2xvc2VzOiBCdWcjOTU1OTgKKyAgKiBGaXggcmVtb3Zpbmcgb2YgZGl2ZXJzaW9ucy4gIENsb3NlczogQnVnIzk1NjU1CisgICogRml4IG1kNXN1bSAtYy4gQ2xvc2VzOiBCdWcjOTU1ODYKKworIC0tIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPiAgU2F0LCAyOCBBcHIgMjAwMSAxNjoyODoyMSAtMDUwMAorCitkcGtnICgxLjkuMCkgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBUaGluZ3Mgc2hvdWxkIG1vc3RseSB3b3JrIE9wZW5CU0QgMi44IGFzIHdlbGwgbm93CisgICogQWRkZWQgYSAtLXN0YXR1cy1waXBlIG9wdGlvbi4KKyAgKiBGaXhlZCBzZXZlcmFsIG1lbWxlYWtzLgorICAqIFByb2ZpbGVkIGRwa2cuCisgICAgKiBSZXdvcmtlZCBsaWIvcGFyc2UuYzpwYXJzZWRiKCkuICBJbnN0ZWFkIG9mIHVzaW5nIGdldGMoKSwgdGhlbgorICAgICAgY2FsbGluZyB2YXJidWZhZGRjKCksIGl0IG5vdyByZWFkcyB0aGUgZW50aXJlIGZpbGUgYXQgb25jZSBpbnRvIGEKKyAgICAgIGh1Z2UgYnVmZmVyLCB0aGVuIG1vdmVzIHBvaW50ZXJzIGFyb3VuZCwgdG8gZG8gdGhlIHBhcnNpbmcuICBUaGlzCisgICAgICBnYXZlIGEgc3BlZWR1cCBvZiAzMyUgb24gYSBkdWFsIGNlbGVyb24gMzMzLCB3aGVuIHJlYWRpbmcgc3RhdHVzIGFuZAorICAgICAgYXZhaWxhYmxlLgorICAgICogdmFyaW91cyBvdGhlciBzcGVlZHVwcy4KKyAgKiBSZW1vdmVkIGFsbCAtLXNtYWxsbWVtIGNvZGUsIGFzIHNtYWxsbWVtIGFuZCBsYXJnZW1lbSBub3cgYWN0dWFsbHkKKyAgICB1c2UgYWJvdXQgdGhlIHNhbWUgYW1vdW50IG9mIG1lbW9yeSwgYW5kIGxhcmdlbWVtIGlzIGZhc3Rlci4gIEJvdGgKKyAgICAtLWxhcmdlbWVtIGFuZCAtLXNtYWxsbWVtIGFyZSBub3cgb2JzZWxldGUgb3B0aW9ucywgYW5kIHdpbGwgcHJpbnQKKyAgICBhIHdhcm5pbmcgaWYgdXNlZC4gQ2xvc2VzOiBCdWcjODQ5MDUsICM2NzUyOAorICAqIEluaXRpYWxpemUgdW5pdGlhbGl6ZWQgdmFyaWFibGVzLiAgVGhpcyBzaG91bGQgc29sdmUgc2V2ZXJhbAorICAgIHNlZ2ZhdWx0cy4gQ2xvc2VzOiBCdWcjMjUzMTcocGx1cyA5IG90aGVycywgdGhydSB0aGUgYmVhdXR5IG9mCisgICAgbWVyZ2VzKQorICAqIEZvdW5kIHRoYXQgd2hlbiB3b3JraW5nIHdpdGggZGVwZW5kZW5jeSBjeWNsZXMsIGFuZCBwYXJ0IG9mIHRoZSBjeWNsZQorICAgIHdhcyBhIHByb3ZpZGUsIHRoZSBwcm92aWRlciB3YXMgbm90IGJlaW5nIGNvbnNpZGVyZWQsIHNvIHRoZSBjeWNsZQorICAgIGNvdWxkIG5vdCBiZSBicm9rZW4uIENsb3NlczogQnVnIzg3OTg1KGFuZCAzIG90aGVycykKKyAgKiBVcGRhdGUgR2VybWFuIHRyYW5zbGF0aW9uLCBDbG9zZXM6IEJ1ZyM4MDUyOSwjODA1MzIsIzg3NTgxCisgICogVXBkYXRlIEZyZW5jaCB0cmFuc2xhdGlvbiwgQ2xvc2VzOiBCdWcjNjUyODQsIzg1MDM1LCM4NzIzOAorICAqIFVwZGF0ZSBKYXBhbmVzZSB0cmFuc2xhdGlvbiwgQ2xvc2VzOiBCdWcjOTM4NzMKKyAgKiBVcGRhdGVkIGFsbCBvdGhlciB0cmFuc2xhdGlvbnMgKGJ1dCBubyBidWdzIGZpbGVkKQorICAqIEFkZCBEYW5pc2ggdHJhbnNsYXRpb24KKyAgKiBSZW1vdmUgc3B1cmlvdXMgJyVzJyBpbiBQb2xpc2ggdHJhbnNsYXRpb24sIENsb3NlczogQnVnIzc0ODE0CisgICogQWRkIEZyZW5jaCBtYW5wYWdlcywgY291cnRlc3kgb2YgUGhpbGlwcGUgQmF0YWlsbGVyCisgICogSW5nb3JlIHZpbSBzd2FwZmlsZXMgaW4gZHBrZy1zb3VyY2UsIENsb3NlczogQnVnIzgxNjMwCisgICogcmVtb3ZlIC0taW1wb3J0IG9wdGlvbiBmcm9tIGRwa2ctc3RhdG92ZXJyaWRlLCBDbG9zZXM6IEJ1ZyM4MTM1OAorICAqIFJlcGxhY2UgbmZtYWxsb2MgaW1wbGVtZW50YXRpb24gd2l0aCBvYnN0YWNrLiBBZGRlZCBvYnN0YWNrLltjaF0gdG8KKyAgICBvcHRsaWIsIGZvciBub24tR05VIHN5c3RlbXMuCisgICogZHBrZy1kaXZlcnQgb25seSBhbGxvd3MgYWJzb2x1dGUgZmlsZW5hbWVzIG5vdy4gQ2xvc2VzOiBCdWcjODI0MTkKKyAgKiBIYW5kbGUgZGlmZnMgZnJvbSBub24tZXhpc3RpbmcgZmlsZXMgdG8gZXhpc3RpbmcgZmlsZXMuIENsb3NlczogQnVnIzgyNzA4LAorICAgICM5MDk4Mi4KKyAgKiBTbWFsbCBmaXhlcyB0byB0aGUgYnVpbGRzeXN0ZW0uIENsb3NlczogQnVnIzg0MzYxCisgICogRml4IGRwa2ctc3RhdG92ZXJyaWRlIC0tdXBkYXRlIGZvciB0aGluZ3Mgb3RoZXIgdGhlbiBwbGFpbiBmaWxlcy4KKyAgICBDbG9zZXM6IEJ1ZyM4NDQ0OQorICAqIEZpeCByYWNlIHdpdGggc291cmNlIGRpcmVjdG9yeSBkaXNhcHBlYXJpbmcgaW4gZHBrZy1zb3VyY2UuCisgICAgQ2xvc2VzOiBCdWcjNDU1MTEKKyAgKiBGaXggbWFucGFnZSBmb3IgZHBrZy1nZW5jb250cm9sLiBDbG9zZXM6IEJ1ZyM4NDYyNQorICAqIEFkZCAtbiBvcHRpb24gZm9yIGRwa2ctZ2VuY29udHJvbCB0byBzcGVjaWZ5IGEgZmlsZW5hbWUuIENsb3NlczogQnVnIzc1Nzk2CisgICogVXNlIFBPU0lYIGdsb2IgaW5zdGVhZCBvZiByZWdleHAgaW4gZGViaWFuL3J1bGVzLiBDbG9zZXM6IEJ1ZyM4MzA0MiwKKyAgICAjODQ1ODIKKyAgKiBmaXggdHlwbyBpbiB1c2FnZSBtZXNzYWdlIGZvciBkcGtnLWRpdmVydCwgQ2xvc2VzOiBCdWcjODU5NzcKKyAgKiBVc2UgZnVsbCBwYXRoIGZvciBhcmd2WzBdIHdoZW4gY2FsbGluZyBzY3JpcHRzLiBDbG9zZXM6IEJ1ZyM2ODc4MworICAqIEFkZCBpYTY0IHN1cHBvcnQgdG8gZHBrZy1hcmNoaXRlY3R1cmUuCisgICogTWlub3Igc2NyaXB0IGNoYW5nZXMsIENsb3NlczogQnVnIzg3NDg1CisgICogU3RvcCBkcGtnLWdlbmNoYW5nZXMgZnJvbSBjb21wbGFpbmluZyBhYm91dCBtaXNzaW5nIHBhY2thZ2VzCisgICAgd2hlbiBkb2luZyBhIHNvdXJjZS1vbmx5IGJ1aWxkLiBDbG9zZXM6IEJ1ZyM4NzU3MSwjMTU2NDQsIzI1NDk2CisgICogVmFyaW91cyBkcGtnLWFyY2hpdGVjdHVyZSBjbGVhbnVwcy4gQ2xvc2VzOiBCdWcjODc1MDUKKyAgKiBNb2RpZnkgZHBrZy1hcmNoaXRlY3R1cmUgdG8gaGFuZGxlIGdjYyB2ZXJzaW9ucyBjb250YWluaW5nIGxldHRlcnMuCisgICAgQ2xvc2VzOiBCdWcjODMwODMKKyAgKiBkcGtnLWJ1aWxkcGFja2FnZSB1cGRhdGVzOiBDbG9zZXM6IEJ1ZyM4NzU3MiwjODU4NDcKKyAgICArIG1ha2UgLUMgd29yayBwcm9wZXJseQorICAgICsgZml4IHRlc3QgZm9yIGdwZyBzZWNyZXQga2V5cmluZworICAgICsgaW1wcm92ZSBzb3VyY2UgbWVzc2FnZXMKKyAgICArIHNraXAgc2lnbmluZyBwYXVzZSB3aGVuIGJ1aWxkaW5nIHVuc2lnbmVkIHBhY2thZ2VzCisgICAgKyB0ZXN0IGZvciBpbnZhbGlkIHNpZ25pbnRlcmZhY2UuIENsb3NlczogQnVnIzg3NTc5CisgICAgKyByZW1vdmUgZGVic2lnbiBzdXBwb3J0LCBpdCdzIHVzZWxlc3MgYW5kIGRvZXNuJ3Qgd29yaworICAgICsgVXNlIGNvcnJlY3QgYXJjaGl0ZWN0dXJlIHdoZW4gbmFtaW5nIC5jaGFuZ2VzIGZpbGUuIENsb3NlczogQnVnIzg4MDE1CisgICogRml4IHdvcmRpbmcgaW4gZHBrZy1zdGF0b3ZlcnJpZGUgbWFucGFnZSBmb3IgLS1hZGQuIENsb3NlczogQnVnIzg1MDgwCisgICogRml4IHR5cG8gaW4gc3RhcnQtc3RvcC1kYWVtb24gbWFucGFnZS4gQ2xvc2VzOiBCdWcjODgyMjUKKyAgKiBBZGQgZHBrZy1jaGVja2J1aWxkZGVwcyB0byBjaGVjayBpZiBidWlsZCBkZXBlbmRlbmNpZXMgYXJlIHNhdGlzZmllZAorICAgIGFuZCBtb2RpZnkgZHBrZy1idWlsZHBhY2thZ2UgdG8gY2FsbCBpdCBpZiB3YW50ZWQuCisgICAgQ2xvc2VzOiBCdWcjODY0NTMsIzgzODEyLCM2MDcxNywjNzQzNzIsIzY3ODk2LCM2MDcxNywjMTM5NjEKKyAgKiBkcGtnLXBhcnNlY2hhbmdlbG9nIGNhbiByZWFkIGEgY2hhbmdlbG9nIGZyb20gc3RkaW4gbm93LiBDbG9zZXM6IEJ1ZyM4MDE0MgorICAqIEZpeCBjb25mdXNpbmcgd29yZGluZyBmb3IgZHBrZy1idWlsZHBhY2thZ2UgLXVjIG9wdGlvbiBpbiBtYW5wYWdlLgorICAgIENsb3NlczogQnVnIzgzNDY4CisgICogZHBrZy1zdGF0b3ZlcnJpZGUgbm93IGV4aXRzIHdpdGggZXhpdGNvZGUgMSBpZiB3ZSBkbyBhIC0tbGlzdCBidXQgZG9uJ3QKKyAgICBvdXRwdXQgYW55dGhpbmcuIENsb3NlczogQnVnIzg0MzI4CisgICogUmVtb3ZlIExpbnV4IHJlZmVyZW5jZSBmcm9tIGFsbCBzY3JpcHRzLCB0aGV5IHNob3VsZCBydW4gZmluZSBvbgorICAgIG90aGVyIE9TZXMgYXMgd2VsbC4KKyAgKiBNYXJrIGxhc3QgYXJndW1lbnQgaW4gZHBrZy1zY2FucGFja2FnZXMgdXNhZ2UgaW5mbyBhcyBvcHRpb25hbC4KKyAgICBDbG9zZXM6IEJ1ZyM4NjY1OAorICAqIEZpeCBjYWNoZSBpbiBkcGtnLXNjYW5wYWNrYWdlcyB2ZXJzaW9uIGNvbXBhcmlzb24uIENsb3NlczogQnVnIzkwNzIyCisgICogRml4IGZvcm1hdHRpbmcgZXJyb3IgaW4gZHBrZy1zb3VyY2UuMS4gQ2xvc2VzOiBCdWcjODI3MjMKKyAgKiBDaGFuZ2UgZHBrZy1nZW5jb250cm9sIHRvIGZpeCBjb21tYS1yZWxhdGVkIHN5bnRheCBlcnJvcnMgYWZ0ZXIKKyAgICBwcm9jZXNzaW5nIHN1YnN0dmFycy4gQ2xvc2VzOiBCdWcjOTI5MDgKKyAgKiBWZXJpZnkgcGFja2FnZSBzaWduYXR1cmVzIGlmIGRlYnNpZy12ZXJpZnkgaXMgaW5zdGFsbGVkLiBDbG9zZXM6IEJ1ZyMzNzAxNworICAqIEhhbmRsZSB3aW5kb3cgcmVzaXplIGluIGRzZWxlY3QgbWFpbiBtZW51LiBDbG9zZXM6IEJ1ZyM5MzU1OQorICAqIEluaXRpYWxpemUgYWxsIHBhcnRzIG9mIHRoZSBwYWNrYWdlIHJlY29yZC4gIFRoaXMgc2hvdWxkIGZpeCBzZXZlcmFsCisgICAgc2VnZmF1bHRzIHBlb3BsZSBoYXZlIGJlZW4gc2VlaW5nIGluIGRwa2cuICBDbG9zZXM6IEJ1ZyM5MDMyOC4KKyAgKiBBcHBseSBwYXRjaCBmcm9tIGJ1ZyM4Njg0NywgdGhhdCBlc2NhcGVzIGludGwgY2hhcnMgaW4gZmlsZW5hbWVzLgorICAgIENsb3NlczogQnVnIzgzNzUyLCAjODUwNDAsICM4Njg0NywgIzg5MDAwLgorICAqIEVycm9ycyBkdXJpbmcgZHBrZyAtcyhhbmQgb3RoZXIgc2ltaWxhciBjb21tYW5kcykgYXJlIG5vdyBwcmludGVkCisgICAgb24gc3RkZXJyLiAgQ2xvc2VzOiBCdWcjODg5ODcuCisgICogQWRkIGEgLS1yZXRyeSBvcHRpb24gdG8gc3RhcnQtc3RvcC1kYWVtb24uIENsb3NlczogQnVnIzc1MTM5CisgICogRml4IHJlZ2VwcyB0byBleHRyYWN0IENsb3NlcyBtYWdpYyBmcm9tIGEgY2hhbmdlbG9nIHNvIHRoZSAjCisgICAgaXMgcmVhbGx5IG9wdGlvbmFsLiBDbG9zZXM6IEJ1ZyM5NDQ3NAorICAqIFJlbW92ZSB1c2VsZXNzIHN0YXRlbWVudCBmcm9tIGRwa2ctc2hsaWJkZXBzLiBDbG9zZXM6IEJ1ZyM5MDUxNgorICAqIE1ha2UgdGhlIGRlYmlhbiBjaGFuZ2Vsb2cgcGFyc2VyIGlkZW50aWZ5IGl0c2VsZiB3aXRoICRwcm9nbmFtZS4KKyAgICBDbG9zZXM6IEJ1ZyM4OTQwOQorICAqIEdpdmUgYSBzeW50YXggZXJyb3Igd2hlbiB3ZSBnZXQgYW4gdW5leHBlY3RlZCBQR1Agc2lnbmF0dXJlIGluIGNvbnRyb2wKKyAgICBmaWxlcy4gQ2xvc2VzOiBCdWcjNzU1NjIKKyAgKiBDaGFuZ2UgZHBrZyBtYW5wYWdlIHRvIHJlZmxlY3QgdGhhdCAtLWZvcmNlLXN0YXRvdmVyaWRlIGlzIG5vIGVuYWJsZWQKKyAgICBieSBkZWZhdWx0LiBDbG9zZXM6IEJ1ZyM5NTAyMworICAqIEhhbmRsZSBkYW5nbGluZyBzeW1saW5rcywgYnkgaWdub3JpbmcgZXJyb3IgY29kZSAxIGZyb20gZmluZCwgd2hlbgorICAgIHByb2Nlc3NpbmcgLS1yZWN1cnNpdmUuIENsb3NlczogQnVnIzQ3ODQKKyAgKiBkcGtnIC1MLCAtUywgLWwsIC1zLCBhbmQgLXAgbm93IHJldHVybiBhbiBlcnJvciBjb2RlIGlmIGFueSBwYWNrYWdlCisgICAgZG9lcyBub3QgZXhpc3QuIENsb3NlczogQnVnIzQ5NzQsICM3MjQwNgorICAqIGRzZWxlY3QgaGFzIGEgY29uZmlndXJhdGlvbiBmaWxlIGFzIHdlbGwgbm93CisgICogR2V0IEVOT0VOVCB2YWx1ZSBhdCBydW50aW1lIGluIGRwa2ctZGl2ZXJ0IGluc3RlYWQgb2YgaGFyZGNvZGluZyBpdC4KKyAgICBDbG9zZXM6IEJ1ZyMgMzE2MjAKKyAgKiBGaXggd3JvbmcgRU5PRU5UIHRlc3QgaW4gZHBrZy1kaXZlcnQuIENsb3NlczogQnVnIzk1MDg4CisgICogQWRkIHN1cHBvcnQgZm9yIG1vcmUgU3VwZXJIIHZhcmlhbnRzIChzaFszNF17LGVifS1saW51eC1nbnUpCisgICogRml4IGZvcm1hdGluZyBhbmQgYSB0eXBvIGluIHRoZSBkcGtnIG1hbnBhZ2UKKyAgKiBEb2N1bWVudCB0aGUgZHBrZy5jZmcgY29uZmlndXJhdGlvbiBmaWxlIGluIGRwa2coOCkKKworIC0tIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+ICBUaHUsIDI2IEFwciAyMDAxIDEyOjM5OjE2ICswMjAwCisKK2Rwa2cgKDEuOC4zLjEpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogUmV2ZXJ0IGNoYW5nZSB0byBuZm1hbGxvYy5jIHRoYXQgd2FzIGNhdXNpbmcgU0lHQlVTIG9uIHNwYXJjLgorCisgLS0gQmVuIENvbGxpbnMgPGJjb2xsaW5zQGRlYmlhbi5vcmc+ICBTYXQsIDEzIEphbiAyMDAxIDA4OjUyOjExIC0wNTAwCisKK2Rwa2cgKDEuOC4zKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIERvIGNob3duIGJlZm9yZSBjaG1vZCBpbiBkcGtnLXN0YXRvdmVycmlkZSwgQ2xvc2VzOiBCdWcjODE5NDMKKyAgKiBGaXggcmVjdXNpb24gaW4gZHBrZy1zaGxpYmRlcHMsIENsb3NlczogQnVnIzgxMzIyCisgICogUmVhbGx5IGNvbXBsZXRlbHkgcmV2ZXJ0IGRwa2ctc291cmNlIHBhdGNoZXMgd2hpY2ggYnJva2UgYmFja3dhcmRzCisgICAgY29tcGF0aWJpbGl0eQorCisgLS0gV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4gIEZyaSwgMTIgSmFuIDIwMDEgMDA6MDI6MjIgLTA4MDAKKworZHBrZyAoMS44LjIpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogRG9uJ3QgYXR0ZW1wdCB0byByZWFkIGZyb20gYW4gaW5wdXQgc291cmNlIHdoZW4gd2Ugb25seSB3YW50IDAgYnl0ZXMuCisgICAgQWxzbyBoYW5kbGUgYnVnZ3kgc3lzdGVtcyB0aGF0IHJldHVybiBFQUdBSU4gaW5zdGVhZCBvZiBFSU5UUi4gIENsb3NlczoKKyAgICAjODE4ODEuCisgCisgLS0gQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+ICBUaHUsIDExIEphbiAyMDAxIDAwOjQzOjUwIC0wNjAwCisKK2Rwa2cgKDEuOC4xLjEpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogQXBwbHkgcGF0Y2ggZnJvbSBidWcgdG8gZml4IGJhZGx5IGdlbmVyYXRlZCBkaWZmcyhpbiBzb21lCisgICAgY2lyY3Vtc3RhbmNlcykuICBDbG9zZXM6ICM4MTE1MgorCisgLS0gQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+ICBTYXQsICA2IEphbiAyMDAxIDE2OjA3OjMzIC0wNjAwCisKK2Rwa2cgKDEuOC4xKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIE1ha2UgLS1uYW1lIGEgdmFsaWQgb3B0aW9uLiAgQ2xvc2VzOiAjMzEyMDYsICM1MTk1My4KKyAgKiBkcGtnLWRlYiAtSSA8cGtnPiA8Y29udHJvbD4gd29ya3MgYWdhaW4KKyAgKiBVcGRhdGUgU3dlZGlzaCB0cmFuc2xhdGlvbgorCisgLS0gV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4gIFRodSwgIDQgSmFuIDIwMDEgMTk6MzE6MTMgKzAxMDAKKworZHBrZyAoMS44LjApIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogQWRkIC1rfC0tc3ltbGluayBvcHRpb24gdG8gZHBrZy1uYW1lLiAgQ2xvc2VzOiAjMzUwNDAKKyAgKiBNYWRlIHRoZSBhY2NlbGVyYXRvciBrZXlzIGluIGRzZWxlY3QncyBtYWluIG1lbnUgc2VwYXJhdGUgb3B0aW9ucywgc28KKyAgICB0aGF0IHRoZXkgY2FuIGJlIHRyYW5zbGF0ZWQgc2VwYXJhdGVseS4gIENsb3NlczogIzUwOTU1LgorICAqIEFkZGVkIGRlcGVuZHMgb24gc3lzdmluaXQgKD49IDIuNzIpLCBzbyB0aGF0IHdlIGNhbiBtYWtlIHN1cmUgdGhhdAorICAgIC9ldGMvcmNTLmQgZXhpc3RzLiAgQ2xvc2VzOiAjNTUwMzcuCisgICogdXBkYXRlLXJjLmQ6IENoYW5nZWQgZG9jdW1lbnRhdGlvbiBhbmQgaGVscCwgYXMgLWYgb25seSBhcHBsaWVzIGR1cmluZworICAgIHJlbW92ZS4gIENsb3NlczogIzU1MDQ5LgorICAqIEFkZGVkIGEgLS1mb3JjZS1hbGwgb3B0aW9uLiAgQ2xvc2VzOiAjNjEzNTQuCisgICogRm9ybWF0IGhlbHAgc3RyaW5nIGZvciAtLWFib3J0LWFmdGVyIGxpa2Ugb3RoZXIgb3B0aW9uIGhlbHAgc3RyaW5ncy4KKyAgICBDbG9zZXM6ICM2MjQ2NC4KKyAgKiBGaXggZHNlbGVjdCBtZXRob2RzIHRvIHBhc3MgYWRtaW5kaXIgdG8gZHBrZyBmcm9tIGRzZWxlY3QuCisgICogTWlub3IgdHdlYWsgc28gdGhhdCB3aGVuIHBhdGNoIDIuNS40IGlzIG1hbnVhbGx5IHVzZWQgdG8gYXBwbHkgYSBkaWZmLAorICAgIGl0IGRvZXNuJ3QgZ2V0IGFwcGxpZWQgbXVsdGlwbGUgdGltZXMuICBDbG9zZXM6ICM2NTAyMQorICAqIEFkZCAtLW5pY2VsZXZlbCB0byBzdGFydC1zdG9wLWRhZW1vbiwgdG8gYWx0ZXIgYSBwcm9ncmFtcyBwcmlvcml0eQorICAgIGJlZm9yZSBzdGFydGluZy4gIENsb3NlczogIzY1MTkxLgorICAqIERvY3VtZW50IHRoYXQgLS1sYXJnZW1lbSBpcyB0aGUgZGVmYXVsdCwgYW5kIHRoYXQgdGhlIHRlc3QgcG9pbnQgaXMKKyAgICAyNCBtZWdzLiAgQ2xvc2VzOiAjNjU2MDcuCisgICogRG9jdW1lbnQgdGhhdCAtLXNldC1zZWxlY3Rpb25zIGRvZXMgbm90IGFjdHVhbGx5IGluc3RhbGwgYW55CisgICAgcGFja2FnZXMuICBDbG9zZXM6ICM2NTM0MC4KKyAgKiBGaXggdHlwbyBpbiBkcGtnLWRlYi4xLiAgQ2xvc2VzOiAjNjU5NDUuCisgICogQWRkIC0tdHJ1ZW5hbWUgb3B0aW9uIHRvIGRwa2ctZGl2ZXJ0LiAgQ2xvc2VzOiAjNjg0ODkuCisgICogRG9jdW1lbnRlZCBDT0xVTU5TIGluIGRwa2coOCkuICBDbG9zZXM6ICM3NzAwMS4KKyAgKiBNb2RpZmllZCBEUEtHX0NfR0NDX1RSWV9XQVJOUygpIHRvIGNhbGwgQUNfU1VCU1QsIHNvIHRoYXQgd2UgY2FuCisgICAgdXNlIHRoZSByZXN1bHQgb2YgdGhlIHRlc3QgZHVyaW5nIGJ1aWxkIHRpbWUuICBDbG9zZXM6IEJ1ZyM3NTEzOAorICAqIEFkZGVkIGRlc2NyaXB0aW9uIGZvciAic3VnZ2VzdHMiIGluIG1haW4vZGVwY29uLmM6ZGVzY3JpYmVkZXBjb24oKS4KKyAgICBDbG9zZXM6IEJ1ZyM3NDExMworICAqIFJlbW92ZWQgYmFzaGluZyBmcm9tIGRwa2cucG9zdGluc3QuCisgICogTWFrZSAnIycgb3B0aW9uYWwgaW4gQ2xvc2VzOiB0YWdzLiAgQ2xvc2VzOiBCdWcjNjMxMzcuCisgICogQWRkIC10IHRvIC1oIG91dHB1dCBpbiBkcGtnLWJ1aWxkcGFja2FnZTogIENsb3NlczogQnVnIzQ5NTk4LgorICAqIEZpeCB0eXBvIGluIC0tY29tcGFyZS12ZXJzaW9ucyBlcnJvciBtZXNzYWdlLiAgQ2xvc2VzOiBCdWcjNjY0NzQuCisgICogLVIgZG9lc24ndCBtZWFuIC0tcm9vdC4gIENsb3NlczogQnVnIzY2MDY4LCAjNzIwMTMKKyAgKiBBZGQgYXJtdjNsIHRvIGFyY2h0YWJsZS4gIENsb3NlczogQnVnIzcyMTI1CisgICogRml4IHR3byBtZW1vcnkgbGVha3MsIGFuZCBsZXNzb24gdGhlIG1lbW9yeSBmb290IHByaW50IGEgdGFkLiAgSGludHMKKyAgICB0YWtlbiBmcm9tIDc0MjU5LgorICAqIEZpeCBzb21lIHRoaW5ncyBwZXJsNS42IGNvbXBsYWlucyBhYm91dC4gQ2xvc2VzOiBCdWcjNzczMzcKKyAgKiBGaXggcmVmZXJlbmVzIHRvIGRwa2ctZGViIG1hbnBhZ2UuIENsb3NlczogQnVnIzc3ODU1CisgICogVXBkYXRlIEdhbGlzaCB0cmFuc2xhdGlvbgorICAqIEFkZCBuZXcgLS1pbXBvcnQgb3B0aW9uIHRvIGRwa2ctc3RhdG92ZXJyaWRlIHRvIG1ha2UgaXQgZWFzeSB0bworICAgIGltcG9ydCBzdWlkbWFuYWdlciBzZXR0aW5ncy4KKyAgKiBTcGVlZHVwIHBhdGNoZXMgYnkgQWRhbSBIZWF0aAorICAqIHN0YXRvdmVycmlkZSBmaXhlcyBieSBSb2JlcnQgTHViZXJkYSwgQ2xvc2VzOiBCdWcjNzg0MzYKKyAgKiBBZGQgTGludXggUy8zOTAgc3VwcG9ydC4gQ2xvc2VzOiBCdWcjNzkwNjMKKyAgKiBVc2luZyBsaWJ6IHRvIGRlY29tcHJlc3MgZGF0YSBpbnN0ZWFkIG9mIGNhbGxpbmcgZ3ppcC4KKyAgICBDbG9zZXM6IEJ1ZyM0OTU4MQorICAqIEFkZCBnZXR0ZXh0IHRvIGJ1aWxkLWRlcGVuZHMKKyAgKiBGaXggd2FybmluZyB3aGVuIHRyeWluZyB0byByZW1vdmUgYSBub24tZXhpc3Rpbmcgc3RhdG92ZXJyaWRlLgorICAgIENsb3NlczogQnVnIzc5MzUyCisgICogQmUgbW9yZSBwYXJhbm9pZCB3aXRoIGZpbGUgcGVybWlzc2lvbnMgd2hlbiBleHRyYWNpbmcgZmlsZXMKKyAgKiBBcHBseSBzdGF0b3ZlcnJpZGVzIHRvIG1vcmUgdGhlbiBqdXN0IGZpbGVzCisgICogVXBkYXRlIHVwZGF0ZS1hbHRlcm5hdGl2ZXMgbWFucGFnZSB0byB1c2UgRkhTIGluc3RlYWQgb2YgRlNTVE5ELgorICAgIENsb3NlczogQnVnIzgwMjM3CisgICogTGlzdCBkZXNjcmlwdGlvbnMgZm9yIHVkZWJzIGluIC5jaGFuZ2VzCisKKyAtLSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPiAgTW9uLCAyNSBEZWMgMjAwMCAxNzoxOTozMSArMDEwMAorCitkcGtnICgxLjcuMikgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBGaXggcGFyc2luZyBvZiBjb25maWd1cmF0aW9uIGZpbGVzCisgICogQWRkIG5ldyBwb3dlcnBjLWxpbnV4LWdudSBlbnRyeSB0byBhcmNodGFibGUuIENsb3NlczogQnVnIzc2NTIyCisgICogTm8gbG9uZ2VyIGJvdGhlciB0byBpbnN0YWxsIGVtYWNzIHRoaW5ncy4gSSBkb24ndCB1c2UgZW1hY3MgbXlzZWxmCisgICAgYW5kIGNhbid0IHN1cHBvcnQgdGhhdCBwcm9wZXJseS4KKyAgKiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOiBNYWtlIGl0IHBhcnNlIHNvbmFtZSdzIGluIHRoZSBmb3JtYXQgb2YKKyAgICAibGliZm9vLVguWC5zbyIgKGUuZy4gbGliZGItMy4xLnNvKSBhbmQgdXNlIGl0LiBBbHNvIG1ha2UgaXQgZ2l2ZSBhCisgICAgd2FybmluZyBpZiB0aGVyZSBpcyBhIE5FRURFRCBsaW5lIGluIHRoZSBvYmpkdW1wIG91dHB1dCB0aGF0IHdlIGNhbm5vdAorICAgIGdyb2suCisgICogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDogcmVzb2x2ZSBsaWJyYXJ5IHBhdGhzIHVzaW5nIGEgY29tYmluYXRpb24KKyAgICBvZiB0aGUgbGliYyBtYWpvciB2ZXJzaW9uLCBhbmQgbGRjb25maWcgLXAgb3V0cHV0LiBTb2x2ZXMgcHJvYmxlbXMKKyAgICB3aXRoIGVycmFudCBsaWJjNSBkZXBzLgorICAqIENvcnJlY3QgbmFtZSBvZiAuY2hhbmdlcyBmaWxlIHdoZW4gZG9pbmcgc291cmNlLW9ubHkgYnVpbGRzCisgICogRml4IC1hcCBvcHRpb24gZm9yIGRwa2ctYnVpbGRwYWNrYWdlLiBDbG9zZXM6IEJ1ZyM3NzMwNQorICAqIEZpeCB0eXBvIGluIHVwZGF0ZS1hbHRlcm5hdGl2ZXMgbWFucGFnZS4gQ2xvc2VzOiBCdWcjNzc4MjkKKyAgKiBGaXggdHlwbyBpbiBzY3JpcHQtcmVnZXhwIHVwZGF0ZS1yYy5kLiBDbG9zZXM6IEJ1ZyM3NjAyOQorCisgLS0gV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4gIFRodSwgMjMgTm92IDIwMDAgMTg6NTU6NTAgKzAxMDAKKworZHBrZyAoMS43LjEpIHVuc3RhYmxlOyB1cmdlbmN5PW1lZGl1bQorCisgICogRml4IGEgdHlwbyBpbiB0aGUgZHBrZy1zdGF0b3ZlcmlkZSBtYW5wYWdlCisgICogZHBrZy1zdGF0b3ZlcnJpZGUgcmVhZHMgYW5kIHdyaXRlcyB0aGUgcmlnaHQgZmlsZSBub3cKKyAgKiBNYWtlIHVwZGF0ZS1hbHRlcm5hdGl2ZXMgdXNlIHRoZSByaWdodCBkaXIgZm9yIGFsdGVybmF0aXZlcyBhZ2FpbgorCisgLS0gV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4gIFR1ZSwgIDcgTm92IDIwMDAgMDE6MTY6MzkgKzAxMDAKKworZHBrZyAoMS43LjApIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogQWxsb3cgdGhlIGFkbWluaXN0cmF0b3IgdG8gb3ZlcnJpZGUgZmlsZSBtb2RlIGFuZCBvd25lcnNoaXAgdXNpbmcgdGhlCisgICAgbmV3IGRwa2ctc3RhdG92ZXJyaWRlIHRvb2wuCisgICogVXNlIG9iamR1bXAgaW5zdGVhZCBvZiBsZGQgaW4gZHBrZy1zaGxpYmRlcHMKKyAgKiBGaXggbG9naWMgaW4gZHBrZy1zaGxpYmRlcHMgc28gaXQgbG9va3MgZm9yIGRlcGVuZGVuY2llcyBhcyBzcGVjaWZpZWQKKyAgICBpbiBpdHMgZG9jdW1lbnRhdGlvbgorICAqIE1ha2UgdXBkYXRlLWFsdGVybmF0aXZlcyB1cGRhdGUgc2xhdmUgbGlua3Mgd2l0aCAtLWNvbmZpZyBhbmQgcHJvcGVybHkKKyAgICBzd2l0Y2ggdGhlIGFsdGVybmF0aXZlIHRvIG1hbnVhbCBtb2RlCisgICogSFVSRCB1cGRhdGVzLCBDbG9zZXM6IEJ1ZyM1Nzc1MywjNTc3NTQsIzU3NzU1CisgICogZHBrZy1hcmNoaXRlY3R1cmU6IC1xIHNob3VsZCBub3QgaW1wbHkgLWYsIENsb3NlczogQnVnIzU3NzYxCisgICogYWRkIGRwa2c6VXBzdHJlYW1WZXJzaW9uIGFuZCBkcGtnOlZlcnNpb24gc3Vic3R2YXJzIGluIGRwa2ctZ2VuY2hhbmdlcworICAgIGFuZCBkcGtnLWdlbmNvbnRyb2wuICBDbG9zZXM6IEJ1ZyM2MjA2OSwjNjQ3NzQKKyAgKiBkcGtnLWdlbmNoYW5nZXM6IGFkZCBuZXcgQ2hhbmdlZC1CeSBmaWVsZCB0byAuY2hhbmdlcyB3aXRoIHRoZSBsYXN0CisgICAgcGVyc29uIHdobyBtYWRlIGEgY2hhbmdlLCBhbmQgbW9kaWZ5IHRoZSBNYWludGFpbmVyLWZpZWxkIHRvIGJlIHRoZQorICAgIGFjdHVhbCBtYWludGFpbmVyLiBVcGRhdGUgdGhlIGZvcm1hdC12ZXJzaW9uIHRvIDEuNyB0byByZWZsZWN0IHRoaXMuCisgICogZHBrZy1nZW5jaGFuZ2VzOiBhbGxvdyBhIHNwYWNlIGJldHdlZW4gIyBhbmQgYSB0by1iZS1jbG9zZWQgYnVnbnVtYmVyCisgICogZHBrZy1kZWI6IHJlb3JkZXIgZmlsZXMgd2hlbiBidWlsZGluZyBhIHBhY2thZ2UKKyAgKiBkcGtnLXN0YXRvdmVycmlkZTogbmV3IHRvb2wgdG8gb3ZlcnJpZGUgb3duZXJzaGlwIGFuZCBtb2RlcyBmb3IgZmlsZXMKKyAgKiBDaGVjayBDT0xVTU5TIGVudmlyb25tZW50IGZvciBkcGtnIC1sIG91dHB1dC4gQ2xvc2VzOiBCdWcjNjU1MzYKKyAgKiBBZGQgT3JpZ2luIGFuZCBCdWdzIGZpZWxkcyB0byB0aGUgY29udHJvbCBmaWxlCisgICogSW5zdGFsbCBuZXcgL2V0Yy9kcGtnL29yaWdpbnMvZGViaWFuIGZpbGUKKyAgKiBDb3JyZWN0aW9ucyBhbmQgdXBkYXRlcyB0byBTd2VkaXNoIHRyYW5zbGF0aW9uLgorICAqIEFkZCBHYWxpY2lhbiwgR2VybWFuLCBEdXRjaCBhbmQgQnJhemlsaWFuIHRyYW5zbGF0aW9ucworICAqIGFyY2h0YWJsZTogYWRkIGlhNjQgYW5kIHNoOyByZXZlcnQgc3BhcmM2NCBzbyB0aGF0IGl0IHR1cm5zIGludG8gc3BhcmMuCisgICAgVGhlcmUgd29udCBiZSBhIGZ1bGwgYmluYXJ5LXNwYXJjNjQgcG9ydC4gQ2xvc2VzOiBCdWcjNzA3ODgKKyAgKiBkc2VsZWN0L21haW4uY2M6IHNtYWxsIGZpeHVwcyB0byBnZXQgaXQgdG8gY29tcGlsZSB3aXRoIGdjYy0yLjk2CisgICogQ2xlYW4gdXAgZmQgaGFuZGxpbmcgaW4gc29tZSBwbGFjZXMuIENsb3NlczogQnVnIzY5MzU5LCM2OTM2MCwjNjkzNjEKKyAgKiBEb2N1bWVudCAtayBvcHRpb24gZm9yIGRwa2ctYnVpbGRwYWNrYWdlLiBDbG9zZXM6IEJ1ZyM3MTgwOAorICAqIEluc3RhbGwgY29tbWVudGVkIGR1bW15IHNobGlicy5kZWZhdWx0IGFuZCBzaGxpYnMub3ZlcnJpZGUgZmlsZXMKKyAgKiBHaXZlIGRwa2cgYSBjb25maWd1cmF0aW9uZmlsZQorICAqIGRwa2ctc2NhbnBhY2thZ2VzIG5vdyB1c2VzIHRoZSBtb3N0IHJlY2VudCB2ZXJzaW9uIGlmIG11bHRpcGxlIHZlcnNpb25zCisgICAgb2YgYSBwYWNrYWdlIGFyZSBmb3VuZC4KKyAgKiBkb24ndCByZW5hbWUgYSBmaWxlIHRvIGl0c2VsZiBpbiBkcGtnLXNvdXJjZS4gQ2xvc2VzOiBCdWcjNzUwNjAKKyAgKiBGaXggYnVmZmVyIG92ZXJmbG93IGluIGNtZG5hbWUgaGFuZGxpbmcgaW4gc3RhcnQtc3RvcC1kYWVtb24uCisgICAgQ2xvc2VzOiBCdWcjNzUxMDMKKyAgKiBEb24ndCBhYm9ydCBpZiBzdGFydC1zdG9wLWRhZW1vbiB0cmllcyB0byByZWFkIGEgbm9uLWV4aXN0aW5nIHBpZGZpbGUuCisgICAgQ2xvc2VzOiBCdWcjNzUxMDUKKyAgKiBVcGRhdGUgZm9ybWF0aW5nIG9mIHN0YXJ0LXN0b3AtZGFlbW9uIG1hbnBhZ2UuIENsb3NlczogQnVnIzc1MTEwCisgICogTWFrZSBhIG1pc3NpbmcgcGFja2FnZSBhIHdhcm5pbmcgaW5zdGVhZCBvZiBhbiBlcnJvciBpbiBkcGtnLWdlbmNoYW5nZXMKKworIC0tIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+ICBTdW4sICA1IE5vdiAyMDAwIDE3OjI4OjM5ICswMTAwCisKK2Rwa2cgKDEuNi4xMykgZnJvemVuIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogQWRkIEZvcm1hdC1mbGFnIHRvIC5kc2MgZm9ybWF0OiB3ZSBrbm93IHdlIGFyZSBnb2luZyB0byBjaGFuZ2UgdGhlCisgICAgZm9ybWF0IGluIHRoZSBuZXh0IHJlbGVhc2UsIHRoaXMgY2hhbmdlIHdpbGwgbWFrZSBkcGtnLXNvdXJjZSBhYm9ydAorICAgIHdpdGggYSByZWFzb25hYmxlIGVycm9yIGluc3RlYWQgb2YgZG9pbmcgdW5leHBlY3RlZCB0aGluZ3MuCisgICogRml4IGVycm9yIGluIGdldHRleHQnaXplZCBzdHJpbmcKKyAgKiBVcGRhdGVkIEN6ZWNoLCBGcmVuY2gsIFBvbGlzaCBhbmQgU3BhbmlzaCB0cmFuc2xhdGlvbnMuIENsb3NlczogQnVnIzYzNjYzCisgICogZGViaWFuLWNoYW5nZWxvZy1tb2RlLmVsOiBmaXggZG9jdW1lbnRhdGlvbiBzdHJpbmcgZm9yCisgICAgZGViaWFuLWNoYW5nZWxvZy1maW5hbGlzZS1sYXN0LiBDbG9zZXM6IEJ1ZyM2MzAwMworCisgLS0gV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4gIE1vbiwgIDggTWF5IDIwMDAgMTY6MDg6NTMgKzAyMDAKKworZHBrZyAoMS42LjEyLjk5KSBmcm96ZW4gdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBQcmUtcmVsZWFzZSBmb3IgMS42LjEzLiB3aGljaCB3aWxsIG9ubHkgZmVhdHVyZSB0cmFuc2xhdGlvbiB1cGRhdGVzCisgICogRml4IHR5cG8gaW4gZHBrZy1kaXZlcnQsIENsb3NlczogQnVnIzYwMjQzCisgICogZHBrZy1nZW5jaGFuZ2VzOiByZWNvZ25pemUgbm9uLWRlYiBwYWNrYWdlcyAodGFyYmFsbHMsIHN1Y2ggYXMKKyAgICBkcGtnLW5vbi1kZWIgYW5kIGJvb3QtZmxvcHBpZXMgZGlzayB0YXJiYWxscykuIFRoaXMgbWFrZXMgc3VyZSB0aGF0IHdlCisgICAgaW5jbHVkZSB0aGVtIHdoZW4gZmlndXJpbmcgb3V0IHRoZSBBcmNoIGZpZWxkIGluIHRoZSAuY2hhbmdlcworICAqIG1hcmsgYW5vdGhlciBzdHJpbmcgYXMgdHJhbnNsYXRlYWJsZSwgQ2xvc2VzOiBCdWcjNjI1NDMKKyAgKiBmaXggbG9jYXRpb24gb2YgLS1hYm9ydC1hZnRlciBpbiAtLWhlbHAgb3V0cHV0LCBDbG9zZXM6IEJ1ZyM2MjQ2NAorICAqIGZpeCBhbGxvY2F0aW9uIGVycm9yIGluIGNoZWNrcGF0aCgpLCBDbG9zZXM6IEJ1ZyM2MjM2NAorICAqIGFkZCBIb2xkIHRvIGxpc3Qgb2YgZGVzaXJlZCBwYWNrYWdlIHN0YXRlcyBpbiAtbCBvdXRwdXQsIENsb3NlczogQnVnIzU4NzY1CisKKyAtLSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPiAgRnJpLCAyMSBBcHIgMjAwMCAxMTo1Mjo1OSArMDIwMAorCitkcGtnICgxLjYuMTIpIGZyb3plbiB1bnN0YWJsZTsgdXJnZW5jeT1oaWdoCisKKyAgKiBGaXggdGVzdCBmb3IgZ3BnL3BncCBpbiBkcGtnLWJ1aWxkcGFja2FnZS4gWW91IGNhbiBub3cgYnVpbGQKKyAgICB1bnNpZ25lZCBwYWNrYWdlcyBhZ2Fpbi4gQ2xvc2VzOiBCdWcjNjAzOTUKKyAgKiBVcGRhdGVkIFNwYW5pc2ggYW5kIFN3ZWRpc2ggdHJhbnNsYXRpb25zLiBDbG9zZXM6IEJ1ZyM0MTczNQorICAqIE1lcmdlIHBhdGNoIGZyb20gSm9lbCBLbGVja2VyIHRvIHJlbW92ZSBlbWFjc2VuLWNvbW1vbiBzdHVmZiBmcm9tIGRwa2ctZGV2CisKKyAtLSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPiAgTW9uLCAgMyBBcHIgMjAwMCAxNjo1MDowMiArMDIwMAorCitkcGtnICgxLjYuMTEpIGZyb3plbiB1bnN0YWJsZTsgdXJnZW5jeT1oaWdoCisKKyAgKiBPb3BzLCBtaXNzZWQgb25lIGNhc2Ugd2hlcmUgdGhlIGxpYmMvbmN1cnNlcyBjb25mbGljdCByZWFyZWQgaXRzCisgICAgdWdseSBoZWFkIGFuZCBicm9rZSBkc2VsZWN0IG1pc2VyYWJseS4gCisgICogZml4IHN5bnRheCBlcnJvciBpbiBkcGtnLWRpdmVydC4gQ2xvc2VzOiBCdWcjNjAwNTAKKworIC0tIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+ICBGcmksIDEwIE1hciAyMDAwIDExOjUyOjA3ICsxMTAwCisKK2Rwa2cgKDEuNi4xMCkgZnJvemVuIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogVGhlIGBpdCByYWlucyBpbiBTeWRuZXknIHJlbGVhc2UKKyAgKiBNYXJrIGFub3RoZXIgc3RyaW5nIGluIGRzZWxlY3QgYXMgdHJhbnNsYXRlYWJsZSwgQ2xvc2VzOiBCdWcjNTg2MTgKKyAgKiBGaXggdHlwb3MsIENsb3NlczogQnVnIzU4NjE5CisgICogQ2hhbmdlIGRzZWxlY3Qga2V5YmluZGluZ3Mgc2xpZ2h0bHkgc28gYG4nIHJlYWxseSBkb2VzIHNlYXJjaGFnYWluCisgICogVXBkYXRlZCBDemVjaCBhbmQgU3BhbmlzaCB0cmFuc2xhdGlvbnMsIENsb3NlczogQnVnIzU4NjE3CisgICogZHBrZy1kaXZlcnQucGw6IHJlaW5zdGF0ZSBsYXN0IHdyaXRlYWJpbGl0eS1wYXRjaC4gTW9kaWZpZWQKKyAgICB0byBub3QgYWJvcnQgb24gRU5PRU5UOiB0aGlzIGluZGljYXRlcyBhIGRpcmVjdG9yeSBkb2VzIG5vdCAoeWV0KQorICAgIGV4aXN0LiBJZiB0aGlzIGhhcHBlbnMgZG9uJ3QgdHJ5IHRvIHJlbmFtZS4gVGhpcyBzaG91bGQgZml4IGFsbAorICAgIGN1cnJlbnQgZHBrZy1kaXZlcnQgcHJvYmxlbXMuIENsb3NlczogQnVnIzU5MjA3LCM1ODU5NgorICAqIHVwZGF0ZS1hbHRlcm5hdGl2ZXM6IHN3aXRjaCBiYWNrIHRvIGF1dG8tbW9kZSB3aGVuIG1hbnVhbGx5IHNlbGVjdGVkCisgICAgYWx0ZXJuYXRpdmUgaXMgcmVtb3ZlZCwgQ2xvc2VzOiBCdWcjNTQ5MzMKKyAgKiBkc2VsZWN0IG5vIGxvbmdlciBzZWdmYXVsdHMgb24gU0lHV0lOQ0ggYnV0IGRvZXMgVGhlIFJpZ2h0IFRoaW5nCisgICAgaW5zdGVhZC4gQ2xvc2VzOiBCdWcjNTQzMDMsIzU4Njk3LCM1OTQxOQorCisgLS0gV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4gIFR1ZSwgIDcgTWFyIDIwMDAgMTU6MDk6NDcgKzExMDAKKworZHBrZyAoMS42LjkpIGZyb3plbiB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIEZpeCB0eXBvIGluIHVwZGF0ZS1hbHRlcm5hdGl2ZXMgbWFucGFnZQorICAqIGRwa2ctYXJjaGl0ZWN0dXJlOiAtcSBzaG91bGQgbm90IGltcGx5IC1mLCBDbG9zZXM6IEJ1ZyM1Nzc2MQorICAqIENsZWFudXAgYml0cyBvZiBpbnN0YWxsLWluZm8gdG8gbWFrZSBpdCBtb3JlIHN0YWJsZQorICAqIEZpeCBCdWlsZC1EZXBlbmRlbmN5IGZvciBuY3Vyc2VzLCBDbG9zZXM6IEJ1ZyM1ODA3MworICAqIFNvbWUgbW9yZSBkb2N1bWVudGF0aW9uIHVwZGF0ZXMsIENsb3NlczogQnVnIzU3OTg1CisgICogUmV2ZXJ0IHBhdGNoIHRvIGNoZWNrIGZvciB3cml0ZWFibGUgZmlsZXN5c3RlbXMgaW4gZHBrZy1kaXZlcnQsCisgICAgQ2xvc2VzOiBCdWcjNTc4NDAKKworIC0tIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+ICBGcmksIDE4IEZlYiAyMDAwIDEyOjExOjU4ICswMTAwCisKK2Rwa2cgKDEuNi44KSBmcm96ZW4gdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBUdXJuIC0tZm9yY2Utb3ZlcndyaXRlIG9uIGJ5IGRlZmF1bHQKKyAgKiBGaXggYSBjb3VwbGUgb2Ygc21hbGwgYnVpbGRzeXN0ZW0gZXJyb3JzCisgICogU3VwcG9ydCBtdWx0aXBsZSBhZGphY2VudCBuZXdsaW5lcyBpbiBjb250cm9sLXN0eWxlIGZpbGVzLCBDbG9zZXM6IEJ1ZyM1NjA1NgorICAqIFVwZGF0ZWQgQ3plY2ggYW5kIFN3ZWRpc2ggdHJhbnNsYXRpb25zCisgICogUmV2ZXJ0IHBhdGNoIHRvIGNoYW5nZSBvcmRlciBvZiB0aGluZ3Mgd2hlbiBwdXJnaW5nIGEgcGFja2FnZSwKKyAgICBDbG9zZXM6IEJ1ZyM1NjM3NAorICAqIEhhbmRsZSBmYWlsZWQgb3BlbiBvZiAvZGV2L3R0eSBpbiBkcGtnIC1sLCBDbG9zZXM6IEJ1ZyMgNTUwNDEKKyAgKiBVcGRhdGUgSmFwYW5lc2UgdHJhbnNsYXRpb25zLCBDbG9zZXM6IEJ1ZyMgNTY2NDEsICM1NzQ5NCwgIzU3NTk1CisgICogVXBkYXRlIGV4dGVuZGVkIGRlc2NyaXB0aW9uIGZvciBkcGtnLWRldiwgQ2xvc2VzOiBCdWcjIDU2Njc1CisgICogSW1wbGVtZW50IHZlcmJvc2Ugb3B0aW9uIGZvciB1cGRhdGUtYWx0ZXJuYXRpdmUKKyAgKiBGaXggY29uZmxpY3RzIGhhbmRsaW5nCisKKyAtLSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPiAgVGh1LCAxMCBGZWIgMjAwMCAxNTozMTozMSArMDEwMAorCitkcGtnICgxLjYuNykgZnJvemVuIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogZHBrZyBjb21waWxlcyBvbiBIUC1VWCwgU29sYXJpcyBhbmQgSVJJWCBub3cKKyAgKiBzdGFydC1zdG9wLWRhZW1vbiBjYW4gY2hyb290IG5vdywgQ2xvc2VzOiBCdWcjNTQ1MTMKKyAgKiBBbGxvdyBzcGFjZSBiZXR3ZWVuICMgYW5kIHRoZSBidWdudW1iZXIgaW4gdGhlIGNoYW5nZWxvZworICAqIERpc3BsYXkgcGFja2FnZSBkZXNjcmlwdGlvbiB3aXRoIHdhZGRuc3RyLCBDbG9zZXM6IEJ1ZyM1NDMxMworICAqIFVwZGF0ZWQgSmFwYW5lc2UgbWFucGFnZXMsIENsb3NlczogQnVnIzU0NjkwLCAjNTUwODAKKyAgKiBVcGxvYWQgZnVsbCBzb3VyY2UgZm9yIHBhY2thZ2VzIHdpdGggdmVyc2lvbiAqLTAuMSwgQ2xvc2VzOiBCdWcjNTQ2NTEKKworIC0tIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+ICBTdW4sIDE2IEphbiAyMDAwIDE4OjM2OjEwICswMTAwCisKK2Rwa2cgKDEuNi42KSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIGRwa2ctYnVpbGRwYWNrYWdlIHN1cHBvcnRzIGRlYnNpZ24sIENsb3NlczogQnVnIzU4MzMzCisgICogZml4IHVwZGF0ZS1hbHRlcm5hdGl2ZXMgbWFucGFnZSwgQ2xvc2VzOiBCdWcjNTM4NTkKKyAgKiBVcGRhdGVkIFBvbGlzaCB0cmFuc2xhdGlvbgorICAqIFBhc3MgYWRtaW5kaXIgdG8gZHBrZywgQ2xvc2VzOiBCdWcjNTQwMzkKKyAgKiBGaXggZHBrZyAtbCBvdXRwdXQKKyAgKiBSZW1vdmUgZHBrZy1zYWZlbGlzdCBhZ2FpbiwgaXQgaGFkIGlzc3VlcworCisgLS0gV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4gIEZyaSwgIDcgSmFuIDIwMDAgMTk6NTE6NDUgKzAxMDAKKworZHBrZyAoMS42LjUpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogVXBkYXRlIFNwYW5pc2ggdHJhbnNsYXRpb24KKyAgKiBEb24ndCBzdHJpcCA4dGggYml0IGluIGRzZWxlY3QgcGFja2FnZWxpc3RzLCBDbG9zZXM6IEJ1ZyMgNDkwNjEKKyAgKiBEb24ndCB1c2UgXHogaW4gZHBrZy1zY2Fuc291cmNlcywgQ2xvc2VzOiBCdWcjIDUzMTgyCisgICogQ29ycmVjdGx5IHVucmVnaXN0ZXIgaW50ZXJuYWxzIG1hbnVhbCwgQ2xvc2VzOiBCdWcjIDUzMjAwCisgICogZHNlbGVjdCBoZWxwZXNzYWdlcyBjYW4gYmUgdHJhbnNsYXRlZCBub3csIENsb3NlczogQnVnIyA1MTM4MQorICAqIGRzZWxlY3QgVUkgdHdlYWtzLCBpbmNsdWRpbmcgYSBuZXcgLS1leHBlcnQgbW9kZQorICAqIEFkZGVkIGJ1aWxkLWRlcGVuZHMsIENsb3NlczogQnVnIyA1MzM5NAorICAqIEFkZGVkIFRIQU5LUy1maWxlIHdpdGggcGVvcGxlIHdobyBoYXZlIGNvbnRyaWJ1dGVkIHRvIHRoZSBjb2RlCisgICogVXNlIGZ1bGwgd2lkdGggb2YgdHR5IGluIHBhY2thZ2VsaXN0aW5nLCBDbG9zZXM6IEJ1ZyMgNTMzOTUKKyAgKiBBZGQgLXogb3B0aW9uIHRvIGRwa2ctZGViIHRvIHNldCBjb21wcmVzc2lvbmxldmVsIHdoZW4gYnVpbGRpbmcKKyAgICBwYWNrYWdlcywgQ2xvc2VzOiBCdWcjIDUzMzk4CisgICogRml4IHNlZ2ZhdWx0cyB3aGVuIHByb2R1Y2luZyBhIGRpZmYgYmV0d2VlbiBjdXJyZW50IGFuZCBuZXcgY29uZmZpbGUsCisgICAgQ2xvc2VzOiBCdWcjIDUyMTk3CisKKyAtLSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPiAgU2F0LCAyNSBEZWMgMTk5OSAwNDo0NzowOSArMDEwMAorCitkcGtnICgxLjYuNCkgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBObyBsb25nZXIgYnl0ZS1jb21waWxlIGZvciBlbWFjcworICAqIEFkZCBTd2VkaXNoIHRyYW5zbGF0aW9uCisgICogc3RhcnQtc3RvcC1kYWVtb246IGhvbm91ciAtLW9rbm9kbyBpZiB3ZSBmYWlsIHRvIGtpbGwgYSBwcm9jZXNzCisgICAgQ2xvc2VzOiBCdWcjNTI1ODAsIzUyMTg1LCM1MjQ1NworICAqIEZpeCBkc2VsZWN0IHByb2dyYW0gZGVzY3JpcHRpb24sIENsb3NlczogQnVnIzUyMzI4CisgICogRml4IGFyY2hpdGVjdHVyZS1kZXRlY3Rpb24gaW4gZHBrZy1nZW5jb250cm9sLCBDbG9zZXM6IEJ1ZyM1MjYxNgorICAqIEFjY2VwdCBzaW5nbGUtbnVtYmVyIHZhbHVlcyBpbiB1cGRhdGUtcmMuZCwgQ2xvc2VzOiBCdWcjNDY4MTAKKworIC0tIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+ICBTdW4sIDE5IERlYyAxOTk5IDE2OjI3OjQ4ICswMTAwCisKK2Rwa2cgKDEuNi4zKSB1bnN0YWJsZTsgdXJnZW5jeT1oaWdoCisKKyAgKiBDb21tZW50IGRzZWxlY3QgY2hhbmdlcyBmcm9tIDEuNi4yLCB0aGV5IHNlZW0gdG8gaGF2ZSBhIHByb2JsZW0KKyAgICBDbG9zZXM6ICM1MjA0Myw1MjA1OCw1MjA4OCw1MTQzNworICAqIFJlYWxseSBmaXggZW1hY3Mtc3R1ZmYuIEhvcGVmdWxseS4gQ2xvc2VzOiAjNTE5MTksNTE1MjUKKyAgKiBGaXggY29weXJpZ2h0IGRpc3BsYXkgaW4gZHNlbGVjdCBtZW51LCBDbG9zZXM6ICM1MjA5MworICAqIEZpeCB1aWQvZ2lkLWNoYW5nZXMgaW4gc3RhcnQtc3RvcC1kYWVtb24sIENsb3NlczogIzUyMDgxCisKKyAtLSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPiAgVHVlLCAgNyBEZWMgMTk5OSAxNzowNjowMCArMDEwMAorCitkcGtnICgxLjYuMikgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBOZXcgZHBrZy1zY2Fuc291cmNlcywgQ2xvc2VzOiAjNTE4ODgKKyAgKiBGaXggZGVmYXVsdCBmb3IgZWxpc3BkaXIsIENsb3NlczogIzUxOTE5LDUxNTI1CisgICogTmV3IG1hbnBhZ2VzIGZvciBjbGVhbnVwLWluZm8gYW5kIGRwa2ctZGl2ZXJ0LCBDbG9zZXM6ICM1MTUzOSwgNDY2NTcKKyAgKiBCdWlsZHN5c3RlbSB1cGRhdGVzLCBDbG9zZXM6ICM1MTUyNSwgNTE4NTUsIDUxOTE0CisgICogTW9kaWZ5IGRzZWxlY3QgYmVoYXZpb3VyIGZvciBzdWdnZXN0cyBhbmQgcmVjb21tZW5kcworCisgLS0gV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4gIFN1biwgIDUgRGVjIDE5OTkgMTk6Mjk6NTAgKzAxMDAKKworZHBrZyAoMS42LjEpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogRml4IHNvbWUgc2xpZ2h0IHBhY2thZ2luZyBlcnJvcnMKKworIC0tIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+ICBGcmksIDI2IE5vdiAxOTk5IDIwOjE4OjQ4ICswMTAwCisKK2Rwa2cgKDEuNikgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBNYWpvciBvdmVyaGF1bCBvZiB0aGUgYnVpbGRzeXN0ZW0KKyAgKiBVcGRhdGUgU3RhbmRhcmRzLVZlcnNpb24gdG8gMy4xLjAKKyAgKiBNb3ZlIHRvIHZlcnNpb24gMS42IHRvIHJlZmxlY3QgdGhlIGFtb3VudCBvZiBjaGFuZ2VzIG1hZGUKKyAgKiBGaXggbWl4dXAgd2l0aCBDemVjaCBhbmQgUG9saXNoIHRyYW5zbGF0aW9ucywgQ2xvc2VzOiBCdWcjIDQ4OTg2CisgICogdXRpbHMvc3RhcnQtc3RvcC1kYWVtb24uYzogQWRkZWQgYWJpbGl0eSBmb3IgdXNlci5ncm91cCBhcmcgdG8KKyAgICAtLWNodWlkLiBBbHNvLCBhbHdheXMgY2FsbCBpbml0Z3JvdXBzKCkgd2hlbiB1c2luZyAtLWNodWlkLgorICAqIHV0aWxzL3N0YXJ0LXN0b3AtZGFlbW9uLjg6IERvY3VtZW50IGFib3ZlIGNoYW5nZSwgYWxzbyBhZGQgbm90ZSB0byB0aGUKKyAgICAtLW1ha2UtcGlkZmlsZSBvcHRpb24gY29uY2VybmluZyBpdHMgcHJvYmxlbSB3aXRoIGRhZW1vbnMgdGhhdCBmb3JrCisKKyAtLSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPiAgVGh1LCAyNSBOb3YgMTk5OSAwNDozMDowMSArMDEwMAorCitkcGtnICgxLjQuMS4xOSkgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBGaXggcmVwbGFjZXMgZm9yIGRwa2ctZGV2CisgICogQWRkIGdldHRleHQtc3VwcG9ydCB0byBkc2VsZWN0CisgICogQWRkZWQgQ3plY2ggYW5kIFBvbGlzaCB0cmFuc2xhdGlvbnMgZm9yIGRwa2cKKyAgKiBGaXhlZCBpbmNvcnJlY3QgcGF0Y2ggZm9yIC0tcHJpbnQtYXJjaGl0ZWN0dXJlIChvb3BzLCBvaCB3ZWxsCisgICAgaXQgd2FzIGFscmVhZHkgYnJva2VuIHdoZW4gdGhlcmUgd2FzIG5vIGdjYyBhbnl3YXkgOikKKyAgKiBGaXhlZCBtaXNzaW5nIG1pcHNlYiB0aGF0IHdhcyBzdXBwb3NlZCB0byBiZSBpbiB0aGUgYXJjaHRhYmxlCisgICogQmV0dGVyIG91dHB1dCBpbiB1cGRhdGUtYWx0ZXJuYXRpdmVzIC0tY29uZmlnLCBub3cgc2hvd3MgdGhlCisgICAgY3VycmVudCwgYW5kIHRoZSBwcmVmZXJyZWQgY2hvaWNlcy4KKyAgKiBkcGtnLW5hbWU6IGlnbm9yZSBlcG9jaCB3aGVuIGdldHRpbmcgdmVyc2lvbgorICAqIDUwZHBrZy1kZXYuZWw6IGFkZCBpdCBhcyBhIGNvbmZmaWxlIGZvciBkcGtnLWRldgorICAqIGludGVybmFscy5zZ21sOiBSZW1vdmVkIHJlZmVyZW5jZXMgdG8gdGhlIHZlcnNpb25zIG9mIGJ1aWxkIHRvb2xzLAorICAgIHRoZXkgZGF0ZSB0aGUgZG9jdW1lbnQuCisgICogZGViaWFuLWNoYW5nZWxvZy1tb2RlLmVsOiBhZGRlZCBoaW50IGZvciBiZXR0ZXIgbG9nLWVtYWlsIGhhbmRsaW5nCisgICogQWRkZWQgcmVjb2duaXRpb24gZm9yIG5ldyBzb3VyY2UtZGVwZW5kcyBmaWVsZHMgZm9yIHBvbGljeQorICAgIHJlZmVyZW5jZWQgaW4gYnVnICM0MTIzMgorICAqIGRwa2ctYnVpbGRwYWNrYWdlOiBhZGQgLWFwIG9wdGlvbiB0byBmb3JjZSBhIHBhdXNlIHByaW9yIHRvIHN0YXJ0aW5nCisgICAgdGhlIHNpZ24gcHJvY2Vzcy4gVGhpcyBoZWxwcyBmb3IgcGVvcGxlIHdobyBkb24ndCBrZWVwIHRoZWlyIHNpZ25hdHVyZXMKKyAgICBvbiB0aGUgZmlsZXN5c3RlbSAob24gYSBmbG9wcHkgcGVyaGFwcywgdGhlbiBtb3VudCBhcyBuZWVkZWQpLgorICAqIG1pbm9yIHNjcmlwdCBjb3JyZWN0aW9ucworICAqIGRwa2ctZGV2IGNvbnRyb2w6IENoYW5nZSBnY2MgdG8gYy1jb21waWxlciBpbiB0aGUgcmVjb21tZW5kcyBmaWVsZCwgYW5kCisgICAgbW92ZSBjcGlvLCBwYXRjaCBhbmQgbWFrZSB0byB0aGUgZGVwZW5kcyBsaW5lCisgICogTGVhdmUgZmlsZSBpbmZvIGludGFjdCBpbiBhdmFpbGFibGUgd2hlbiBpbnN0YWxsaW5nIHBhY2thZ2VzLiBNRDVzdW0sCisgICAgRmlsZW5hbWUsIGFuZCBNU0RPUy1GaWxlbmFtZSB1c2VkIHRvIGdldCBsb3N0IHdoZW4gaW5zdGFsbGluZyBhCisgICAgcGFja2FnZS4KKyAgKiBBZGRlZCBhcm12NGwgdG8gYXJjaHRhYmxlCisgICogQWRkZWQgJ0QnIHRvIHRoZSBsaXN0IG9mIGNob2ljZXMgZm9yIGNvbmZmaWxlIGhhbmRsaW5nLCBjbG9zZXM6ICM0ODEzNworICAqIENvbnZlcnRlZCBpbnRlcm5hbHMuc2dtbCB0byBkZWJpYW5kb2MgZm9ybWF0LiBBbHNvIGFkZGVkIGEgZHBrZy1kb2MKKyAgICBwYWNrYWdlIHRoYXQgY29udGFpbnMgdGhlIGdlbmVyYXRlZCBvdXRwdXQgZnJvbSB0aGlzIGZpbGUgKC5wcywgLmh0bWwKKyAgICBhbmQgLmluZm8pLCBpbmNsdWRlcyBkb2MtYmFzZSBzdXBwb3J0LiBJbnRlcm5hbHMuc2dtbCBpcyBhbHNvIG5vdAorICAgIGdlbmVyYXRlZCBvbiB0aGUgYmluYXJ5LWFyY2ggdGFyZ2V0LCBhbmQgaXMgbm8gbG9uZ2VyICJieWhhbmQiCisgICogZHBrZy1nZW5jb250cm9sOiBhZGQgIlNvdXJjZSIgdG8gdGhlIGZpZWxkcyBwbGFjZWQgaW4gdGhlIGNvbnRyb2wgZmlsZQorICAqIGRwa2ctcGFyc2VjaGFuZ2Vsb2c6IGZpeGVkIGxvb3AgZm9yIHBhcnNlcGF0aCAoIzQ4NTI2KQorICAqIG1haW4ve3Byb2Nlc3NhcmMuYyxkZXBjb24uY306IGFkZGVkIG5ldyBzdHJ1Y3R1cmUgZm9yIGNvbmZsaWN0b3JzLAorICAgIHdoaWNoIGNvbnRhaW5zIGEgc3RydWN0IGZvciBjb25mbGljdHMuIFRoaXMgaXMgdXNlZCB0byBjcmVhdGUgYW4gYXJyYXkKKyAgICBvZiBjb25mbGljdGluZyBwYWNrYWdlcywgd2hpY2ggYXJlIGdvaW5nIHRvIGJlIHJlcGxhY2VkLiBBbGxvd3MgZm9yCisgICAgbXVsdGlwbGUgY29uZmxpY3RzIGFuZCByZXBsYWNlcy4gQWxsIGNvbmZsaWN0b3IgaGFuZGxlcnMgd2VyZQorICAgIGNvbnZlcnRlZCB0byBsb29wcyB0byBoYW5kbGUgZWFjaCBvbmUgKHByb2Nlc3NhcmMuYykuCisgICogZHBrZy1kaXZlcnQ6IEZpeCBjaGVjayBmb3Igd3JpdGFibGUgZmlsZXN5c3RlbSwgY2xvc2VzOiAjNDg2NDYKKworIC0tIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+ICBTYXQsIDMwIE9jdCAxOTk5IDE1OjE0OjQwICswMjAwCisKK2Rwa2cgKDEuNC4xLjE4KSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIEJhY2tvdXQgZGVwIGNoZWNrIHBhdGNoCisKKyAtLSBCZW4gQ29sbGlucyA8YmNvbGxpbnNAZGViaWFuLm9yZz4gIFNhdCwgMjMgT2N0IDE5OTkgMDA6Mzk6MjQgLTA0MDAKKworZHBrZyAoMS40LjEuMTcpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogQWRkIHN1cHBvcnQgZm9yIGxvbmcgZmlsZW5hbWVzLCBhbG9uZyB3aXRoIC0tYXNzZXJ0LWxvbmdmaWxlbmFtZXMKKyAgKiBBZGRlZCAtLWNodWlkIG9wdGlvbiB0byBzdGFydC1zdG9wLWRhZW1vbiB0byBhbGxvdyBzd2l0Y2hpbmcgdG8KKyAgICBhIGRpZmZlcmVudCB1aWQgd2hlbiBzdGFydGluZyBhIHByb2Nlc3MKKyAgKiBBZGQgbWlwc2ViIGFuZCBtaXBzZWwgdG8gdGhlIGFyY2h0YWJsZSB0b28sIHNpbmNlIG1pcHMgYW5kIG1pcHNlYiBhcmUKKyAgICBib3RoIHZpYWJsZSBuYW1lcyBmb3IgdGhlIG1pcHMgYmlnIGVuZGlhbiBhcmNoLCBhbmQgbWlwc2VsIGlzIGFsc28gbmVlZGVkCisgICogVXBkYXRlIGRwa2ctYXJjaGl0ZWN1cmUncyBhcmNodGFibGUKKyAgKiBBZGRlZCAtLWNvbmZpZyBvcHRpb24gdG8gdXBkYXRlLWFsdGVybmF0aXZlcyB0byBhbGxvdyBlYXN5IGNoYW5naW5nCisgICAgb2YgdGhlIHJlZ2lzdGVyZWQgYWx0ZXJuYXRpdmVzIGZvciBhIHNwZWNpZmljIG5hbWUKKyAgKiBVcGRhdGVkIHRoZSBkZWItY29udHJvbCg1KSBtYW4gcGFnZSB3aXRoIGFsbCB0aGUgY3VycmVudCBmaWVsZHMKKyAgICBhbmQgdXNlcworICAqIE1hZGUgdGhlIGxhcmdlIGluZm8gc2NyZWVuIHNob3cgNSBsaW5lcyBvZiB0aGUgcGtnbGlzdCBzbyB0aGF0CisgICAgaXQgc2Nyb2xsZWQgcHJvcGVybHksIGFuZCBzdGlsbCBzaG93ZWQgdGhlIGN1cnNvciBpbiBkc2VsZWN0CisgICogUmVtb3ZlZCByZWZlcmVuY2VzIHRvIGRwa2coNSkgd2hpY2ggc2VlbXMgdG8gbm90IGV4aXN0IGFueW1vcmUKKyAgKiBGaXhlZCBgZHBrZy1kZWIgLS1oZWxwJyBhbmQgZHBrZy1kZWIoMSkgZnJvbSByZXBvcnRpbmcgLS1uby1jaGVjaworICAgIHdoZW4gaXQncyBhY3R1YWxseSAtLW5vY2hlY2sgKHdlbnQgd2l0aCB0aGUgaGFyZGNvZGVkIG9wdGlvbiwgc28KKyAgICB0aGlzIGlzIGp1c3QgYSBkb2N1bWVudGF0aW9uIGZpeCkuCisgICogQWRkZWQgYmV0dGVyIGNoZWNrIGluIGRpc2suc2V0dXAgZm9yIGEgd29ya2luZyBORlMgc2VydmVyLiBNYWtlcworICAgIGl0IGNvbXBhdGlibGUgd2l0aCBvdGhlciBub24tTGludXggc2VydmVycy4KKyAgKiBDb3JyZWN0ZWQgZHBrZyg4KSdzIGV4YW1wbGUgb2YgdXNpbmcgZHBrZyAtaSAoc2hvd2VkIGl0IHVzZWQgd2l0aAorICAgIGEgLnRhci5neiBpbnN0ZWFkIG9mIGEgLmRlYikKKyAgKiBBcHBsaWVkIHBhdGNoIHRvIGNvcnJlY3QgaW1wcm9wZXIgVE1QRElSIGhhbmRsaW5nIGluIGRwa2ctZGViCisgICogV2hlbiBlbmNvdW50ZXJpbmcgYW4gZXJyb3IgaW4gZXh0cmFjdGluZyB0aGUgdGFyIGFyY2hpdmVzIGluIHRoZQorICAgIHBhY2thZ2VzLCB3ZSBzaG91bGQgYWJvcnQgdGhlIGluc3RhbGwsIG5vdCBzaW1wbHkgZ2l2ZSBhbiBlcnJvcgorICAgIGFuZCBjb250aW51ZS4KKyAgKiBNYWtlIGRwa2cgZ2l2ZSB0aGUgYnVpbHRpbiBhcmNoIGlmIHRoZXJlIHdhcyBhbiBlcnJvciB3aGlsZSBleGVjKCknaW5nCisgICAgdGhlIEMgY29tcGlsZXIgd2l0aCAtLXByaW50LWFyY2hpdGVjdHVyZS4gV2Ugc3RpbGwgZmFpbCBpZiB0aGUKKyAgICBvdXRwdXQgZnJvbSBnY2Mgd2FzIGJhZCBpbiBzb21lIHdheSwgc2luY2UgdGhleSBtYXkgYmUgb2YgaW1wb3J0YW5jZS4KKyAgKiBSZW1vdmVkIHRoZSBtYWludGFpbmVyLWNvbmZpZ3VyZSBwb3J0aW9uIGluIGRlYmlhbi9ydWxlcywgc2luY2UKKyAgICB3ZSBzaG91bGQgYmUgc2hpcHBpbmcgdGhlIHNvdXJjZSB3aXRoIGFsbCB0aGUgYXV0byogc3R1ZmYKKyAgICBhbHJlYWR5IGdlbmVyYXRlZCBhbnl3YXkKKyAgKiBSZW1vdmVkIHRoZSBsdGNvbmZpZyBwYXRjaCwgYW5kIHJlc29ydCB0byBhIGRlYmlhbi9ydWxlcyBmaXgKKyAgICB0byBsaWJ0b29sIGl0c2VsZiBhZnRlciBydW5uaW5nIGNvbmZpZ3VyZQorICAqIFJlbW92ZWQgc2hsaWJzLmRlZmF1bHQuaTM4Ni4gSXQncyBub3cgYSB0ZW1wbGF0ZSBmb3IgYXJjaCBwb3J0aW5nIHRvCisgICAgRGViaWFuL2Rwa2csIHdlIGluc3RhbGwgaXQgc3RpbGwsIGlmIHRoZXJlIGV4aXN0cyBhIGZpbGUgbWF0Y2hpbmcgdGhlCisgICAgYXJjaAorICAqIFJlaW1wbGVtZW50ZWQgYSBiZXR0ZXIgKnN0YXQgY2FjaGUgZm9yIHRoZSByZW1vdmFsIGNoZWNraW5nIGNvZGUsCisgICAgdGhpcyBoZWxwcyBhIGxvdCB3aGVuIGRvaW5nIHVwZ3JhZGVzIHdoZXJlIHRoZSBwYWNrYWdlcyBhcmUgYSBsb3QKKyAgICBkaWZmZXJlbnQgaW4gbGF5b3V0CisgICogSW5jcmVhc2VkIGxhcmdlbWVtIGF1dG8gZGV0ZWN0aW9uIHRvID49IDI0bWVncywgc2luY2UgaXQncyBub3QgdW5jb21tb24KKyAgICBmb3IgZHBrZyB0byBhY3R1YWxseSB1c2UgMTZtZWdzIG9mIHJhbSBhbGwgb24gaXRzIG93biB3aGVuIHVzaW5nIHRoZQorICAgIGxhcmdlbWVtIHNldHRpbmcgKG9sZCBtaW5pbXVtIHdhcyAxNm1lZ3MpCisgICogZGViaWFuL3J1bGVzOiBjaG1vZCAteCBldmVyeXRoaW5nIGluIC91c3IvbGliIHRvIG1ha2UgbGludGlhbiBoYXBweS4KKyAgICBpbiB0aGUgY2xlYW4gcGhhc2UganVzdCBybSAtcmYgJChCVUlMRCksIHdlIGRvbid0IG5lZWQgdG8gcnVuCisgICAgZGlzdGNsZWFuIGFuZCBhbGwgdGhhdCBvdGhlciBzdHVmZi4gRG9uJ3QgcnVuICJtYWtlIGRpc3QiLCB3ZQorICAgIHNpbXBseSBjb3B5IHRoZSAudGFyLmd6IHRoYXQgZHBrZy1zb3VyY2UgY3JlYXRlcyBmb3IgdGhlIGJ5aGFuZAorICAgIHNvdXJjZS4KKyAgKiBNYWtlIHN0YXJ0LXN0b3AtZGFlbW9uIGV4aXQoMSkgd2hlbiB3ZSBkb24ndCBmaW5kIG9uZSBvZiB0aGUKKyAgICBwaWQncyB3ZSBhcmUgdHJ5aW5nIHRvIGtpbGwsIGluIGFjY29yZGFuY2Ugd2l0aCB0aGUgbWFuIHBhZ2UuCisgICogV2hlbiBydW5uaW5nIC0tY29uZmlndXJlIG9uIGFuIGFscmVhZHkgaW5zdGFsbGVkIHBhY2thZ2UsIGp1c3QKKyAgICBzYXkgaXQncyBpbnN0YWxsZWQsIGFuZCBub3QgdGhhdCBpdCBpcyBpbiBhbiB1bmNvbmZpZ3VyYWJsZQorICAgIHN0YXRlCisgICogRml4ZWQgc29tZSBjb21waWxlciB3YXJuaW5ncworICAqIE1ha2UgZHBrZyBjaGVjayBmb3IgdWlkIDAgcmVxdWlyZW1lbnQsIGJlZm9yZSBjaGVja2luZyB0aGUgcGF0aAorICAgIHNpbmNlIG5vdCBiZWluZyByb290LCBpcyBwcm9iYWJseSB0aGUgcmVhc29uIHRoYXQgdGhlIFBBVEggaXMKKyAgICBib3JrZWQgaW4gdGhlIGZpcnN0IHBsYWNlCisgICogTWFrZSAtcCBzaG9ydCBmb3IgLS1wcmludC1hdmFpbCwgYW5kIC1QIHNob3J0IGZvciAtLXB1cmdlCisgICogRml4IHR5cG8gaW4gbWQ1c3VtKDEpIG1hbiBwYWdlCisgICogc3RhcnQtc3RvcC1kYWVtb246IEFkZCAtLWJhY2tncm91bmQgYW5kIC0tbWFrZS1waWRmaWxlIG9wdGlvbnMKKyAgKiB1cGRhdGUtYWx0ZXJuYXRpdmVzOiBtYWtlIHN1cmUgd2UgcmVtb3ZlICJvbGQiIHN5bWxpbmtzIHdoZW4gdGhleQorICAgIGFyZSBubyBsb25nZXIgcGVydGluZW50LiBBZGQgL2V0Yy9hbHRlcm5hdGl2ZXMvUkVBRE1FIHRoYXQgcmVmZXJzCisgICAgdG8gdGhlIHVwZGF0ZS1hbHRlcm5hdGl2ZXMoOCkgbWFuIHBhZ2UuCisgICogZHBrZy1kaXZlcnQ6IEFkZCBjaGVjayBmb3IgYmVpbmcgYWJsZSB0byB3cml0ZSB0byB0aGUgb2xkL25ldworICAgIGRlc3RpbmF0aW9uIGJlZm9yZSBkb2luZyBhIHJlbmFtZS4gV2UgZmFpbCBvbiB0aGlzLCB3aXRob3V0CisgICAgY2hhbmdpbmcgdGhlIGRpdmVyc2lvbiByZWdpc3RyeQorICAqIEZpeCBiYWQgcmVnZXggaW4gdXBkYXRlLXJjLmQKKworIC0tIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+ICBUaHUsIDIxIE9jdCAxOTk5IDE3OjQ5OjAzICswMjAwCisKK2Rwa2cgKDEuNC4xLjE2KSB1bnN0YWJsZTsgdXJnZW5jeT1tZWRpdW0KKworICAqIEhhcmRjb2RlIEVOT0VOVCBhZ2FpbiBzaW5jZSB0aGUgZXJybm8tcGFydCBvZiB0aGUgUE9TSVggbW9kdWxlCisgICAgaXNuJ3QgaW4gcGVybC0qLWJhc2UuIHNpZ2guCisKKyAtLSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPiAgRnJpLCAxNSBPY3QgMTk5OSAwNDowMToxNCArMDIwMAorCitkcGtnICgxLjQuMS4xNSkgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBub24tbWFpbnRhaW5lciByZWxlYXNlLgorICAqIE1vdmUgZHNlbGVjdCBpbnRvIGl0cyBvd24gcGFja2FnZQorICAqIFJlbW92ZSBjb25mZmlsZXMgYmVmb3JlIGRpcmVjdG9yaWVzIHdoZW4gcHVyZ2luZworICAqIENoZWNrIGlmIGludGVncml0eSBmcm9tIG90aGVyIHBhY2thZ2VzIHdpbGwgYnJva2VuIHdoZW4gcHJvY2Vzc2luZworICAgIGFuIGFyY2hpdmUKKyAgKiBkcGtnLWRlYiBjYW4gaGFuZGxlIHBhY2thZ2UgbWFkZSB3aXRoIExpbnV4IGFyLgorICAqIEFkZCBjaGVjayB0byB1cGRhdGUtYWx0ZXJuYXRpdmVzIHRvIHNlZSBpZiB0aGUgc2VxdWVuY2Vjb2RlIGlzIGJldHdlZW4KKyAgICAwIGFuZCA5OQorICAqIEZpeCBmYWlsZWQgYXNzZXJ0aW9uLCB3aGljaCB3YXMgYWN0dWFsbHkgdHdvIGJ1Z3M6IGEgbG9naWMgZXJyb3IgaW4KKyAgICBjaGVja2ZvcnJlbW92YWwgYW5kIGEgd3JvbmcgYXNzdW1wdGlvbiBpbiBmaW5kYnJlYWtjeWNsZQorICAqIGRzZWxlY3QgZG9lc24ndCBkaWUgd2hlbiB5b3UgcmVzaXplIHRoZSB0ZXJtaW5hbAorICAqIGNoZWNrIGlmIGEgZmlsZSBpcyBhbHNvIGluIGEgbmV3IHBhY2thZ2UgYmVmb3JlIHJlbW92aW5nIGl0IHdoZW4gdXBncmFkaW5nCisgICogb2ZmZXIgdG8gc2hvdyBhIGRpZmYgYmV0d2VlbiB0aGUgb2xkIGFuZCBuZXcgY29uZmZpbGUKKyAgKiBkcGtnLXNjYW5wYWNrYWdlczogZG9uJ3QgYWJvcnQgYnV0IG9ubHkgc2tpcCBhIHBhY2thZ2UgaWYgd2UgY2FuJ3QKKyAgICBvcGVuIGl0CisgICogQWRkIEhVUkQtc3VwcG9ydCB0byAgc3RhcnQtc3RvcC1kYWVtb24KKyAgKiBSZWluc3RhdGUgcGF0Y2ggdG8gbm90IHJlYWQgYXZhaWxhYmxlIHdoZW4gZG9pbmcgLS1saXN0LWZpbGVzCisgICogQWRkIGEgY291cGxlIG9mIC0tZm9yY2Ugb3B0aW9ucyB0byBoYW5kbGUgY2hhbmdlZCBjb25mZmlsZXMKKworIC0tIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+ICBUaHUsIDE0IE9jdCAxOTk5IDA0OjIwOjU2ICswMjAwCisKK2Rwa2cgKDEuNC4xLjE0KSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIG5vbi1tYWludGFpbmVyIHJlbGVhc2UuCisgICogZHBrZy1zb3VyY2Ugd29ya3MgYWdhaW4gb24gZW1wdHkgZGlmZnMsIENsb3NlczogQnVnIyA0NjE1OQorICAqIEluc3RhbGwgbG9jYWxlLWZpbGVzIGluIC91c3Ivc2hhcmUsIENsb3NlczogQnVnIyA0NjYzMQorICAqIE1ha2UgL3Vzci9zaGFyZS9kb2MvZHBrZy1kZXYgYSBzeW1saW5rIHRvIC91c3Ivc2hhcmUvZG9jL2Rwa2cKKyAgKiBBY3R1YWxseSBpbmNsdWRlIGZpeCB0byBtYWtlIHVwZGF0ZS1hbHRlcm5hdGl2ZXMgd29ya3MgZmlsZXN5c3RlbXMgKG9vcHMhKQorICAqIENoZWNrIGlmIGNvZGVudW1iZXIgaXMgYmV0d2VlbiAwIGFuZCA5OSwgQ2xvc2VzOiBCdWcjIDQ2ODEwCisKKyAtLSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPiAgVHVlLCAgNSBPY3QgMTk5OSAxOToxOTowNSArMDIwMAorCitkcGtnICgxLjQuMS4xMykgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBOb24tbWFpbnRhaW5lciByZWxlYXNlLgorICAqIE5NVSBudW1iZXIgMTMsIGxldHMgc2VlIHdoYXQgYnJlYWtzIDopCisgICogdXBkYXRlLWFsdGVybmF0aXZlcyB3b3JrcyBhY3Jvc3MgZmlsZXN5c3RlbXMgbm93CisgICogTWFrZSAtc2dwZyB3b3JrIGluIGRwa2ctYnVpbGRwYWNrYWdlICh0eXBvKQorCisgLS0gV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4gIFR1ZSwgMjggU2VwIDE5OTkgMDE6MjY6MTkgKzAyMDAKKworZHBrZyAoMS40LjEuMTIpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogTm9uLW1haW50YWluZXIgcmVsZWFzZS4KKyAgKiBGaXggdHlwbyBpbiBjaG1vZHNhZmVfdW5saW5rIHRoYXQgbWFkZSBkcGtnIGNobW9kIGZpbGVzIHRoYXQKKyAgICB3ZXJlbid0IHNldHVpZCBvciBzZXRnaWQKKworIC0tIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+ICBTdW4sIDI2IFNlcCAxOTk5IDAyOjQxOjMwICswMjAwCisKK2Rwa2cgKDEuNC4xLjExKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIE5vbi1tYWludGFpbmVyIHJlbGVhc2UuCisgICogQWRkZWQgc3BhcmM2NCB0byBhcmNodGFibGUKKyAgKiBBZGRlZCBlbnRyaWVzIGZvciBuZXdlciBhbHBoYSBhcmNoaXRlY3R1cmVzIHRvIHRoZSBhcmNodGFibGUKKyAgKiBBbHdheXMgcnVuIHBhdGNoIGFuZCBkaWZmIHdpdGggTEFORyBzZXQgdG8gQy4KKyAgKiBIYW5kbGUgZGlmZiB3YXJuaW5nIGZvciBmaWxlcyB3aXRoIG5vIG5ld2xpbmUgYXQgdGhlIGVuZCBvZiBmaWxlCisgICAgQ2xvc2VzOiBCdWcjNDU2NDIKKworIC0tIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+ICBGcmksIDI0IFNlcCAxOTk5IDAzOjIzOjU0ICswMjAwCisKK2Rwa2cgKDEuNC4xLjEwKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIE5vbi1tYWludGFpbmVyIHJlbGVhc2UuCisgICogQnVpbGQgZHBrZy1zY2Fuc291cmNlcyBtYW5wYWdlcyB1c2luZyBwb2QybWFuCisgICogZHBrZy1idWlsZHBhY2thZ2UgY2hhbmdlczoKKyAgICArIGZpeCBzaWduaW50ZXJmYWNlLWRldGVjdGlvbgorICAgICsgdXNlIGdwZyBieSBkZWZhdWx0IGlmICRIT01FLy5nbnVwZy9zZWNyaW5nLmdwZyBleGlzdHMKKworIC0tIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+ICBUaHUsIDE2IFNlcCAxOTk5IDE1OjM2OjQzICswMjAwCisKK2Rwa2cgKDEuNC4xLjkpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogTm9uLW1haW50YWluZXIgcmVsZWFzZS4KKyAgKiBVcGRhdGVkIGRwa2ctc2NhbnNvdXJjZXMgdG8gY3VycmVudCB2ZXJzaW9uIGZyb20gUm9kZXJpY2sgU2NoZXJ0bGVyCisgICogVXBkYXRlIGxvY2F0aW9uIG9mIEdQTCBpbiBpbnRlcm5hbHMtbWFudWFsCisgICogVXBkYXRlIGxvY2F0aW9uIG9mIEdQTCBhbmQgZHBrZyBjb3B5cmlnaHQgaW4gYWxsIG1hbnBhZ2VzCisgICogSW5jbHVkZSBwYXRjaCBmcm9tIFJvbWFuIEhvZGVrIGZvciBkcGtnLXNvdXJjZSB0byBoYW5kbGUgZGlmZnMgb2YgZmlsZXMKKyAgICB3aXRoIGxpbmVzIHRoYXQgYmVnaW4gd2l0aCB0d28gZGFzaGVzLgorICAqIE1vdmUgZHBrZy1zY2Fuc291cmNlcyB0byBkcGtnLWRldiBwYWNrYWdlCisgICogTW92ZSBkcGtnLXNjYW5zb3VyY2VzIG1hbnBhZ2UgdG8gc2VjdGlvbiA4CisgICogRml4IGVycm9yIHRoYXQgbW92ZWQgYSBsb3Qgb2YgbWFucGFnZXMgdG8gdGhlIGRwa2cgcGFja2FnZS4KKyAgKiBJdCBsb29rcyBsaWtlIG5vdCByZWFkaW5nIHRoZSBhdmFpbGFibGUtZmlsZSBmb3IgbGlzdGZpbGVzIHdhcyBub3QgZ3JlZXRlZAorICAgIHdpdGggbXVjaCBlbnRoaW91c2lhc20sIHNvIHJldmVyc2UgdGhlIGNoYW5nZS4KKworIC0tIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+ICBXZWQsIDE1IFNlcCAxOTk5IDAzOjQ1OjA3ICswMjAwCisKK2Rwa2cgKDEuNC4xLjgpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogTm9uLW1haW50YWluZXIgcmVsZWFzZS4KKyAgKiBNZXJnZSBkcGtnLWRvYy1qYQorICAqIEFkZCBwYXRjaCBmcm9tIFJhcGhhw6tsIEhlcnR6b2cgPHJoZXJ0em9nQGhybmV0LmZyPiBmb3IgZHBrZy1zY2Fuc291cmNlcworICAgIHRvIHNraXAgY29tbWVudHMgaW4gc2lnbmF0dXJlcy4gVGhpcyBhbGxvd3MgcGFja2FnZXMgdG8gYWxzbyB1c2UgR251UEcuCisKKyAtLSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPiAgTW9uLCAxMyBTZXAgMTk5OSAwNDoxNjozMyArMDIwMAorCitkcGtnICgxLjQuMS43KSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIE5vbi1tYWludGFpbmVyIHJlbGVhc2UuCisgICogVXNlIC91c3Ivc2hhcmUvZG9jCisgICogTWVyZ2UgY2hhbmdlcyBmcm9tIGRwa2ctaXdqIHRyZWU6CisgICAgKyBjaGFuZ2Ugc2VjdGlvbiBpbiBkcGtnLWRlYi4xIHRvIDEKKyAgICArIFVzZSBDT1BZSU5HRklMRSBpbnN0ZWFkIG9mIGhhcmRjb2RlZCBHUEwtbG9jYXRpb24gaW4gc2hvd2NvcHlyaWdodCgpCisgICAgKyB2YXJidWZwcmludGYgKHVzZWQgZm9yIHNvbWUgZXJyb3IgbWVzc2FnZXMpIHZzbnByaW50ZiByZXR1cm4gdmFsdWUKKyAgICAgIGFzc3VtcHRpb24gY2hhbmdlZCB0byBjb3JyZXNwb25kIHRvIHJlYWxpdHkgcmF0aGVyIHRoYW4gZ2xpYmMtZG9jLgorICAgICsgRG9uJ3QgcmVhZCBhdmFpbGFibGUtaW5mbyB3aGVuIG5vdCBuZWVkZWQgKHNsaWdodGx5IGltcHJvdmVkIGZyb20gCisgICAgICBkcGtnLWl3ajogZG9uJ3QgcmVhZCBmb3IgbGlzdGZpbGVzIGVpdGhlciA6KQorICAgICsgQ2xlYW51cCAtLWFzc2VydC0qIGNvZGUKKyAgICArIEFzc3VtZSBsYXJnZW1lbSBvbiBzeXN0ZW1zIHdpdGhvdXQgc3lzaW5mbygyKS4KKyAgICArIG1vZGlmeSBwcmVleGVjLXNjcmlwdCBmb3IgZWFzaWVyIHNjcmlwdCBleGVjdXRpb24KKyAgICArIERvIG5vdCBjaG1vZCgiLi4uL3BhdGgvdG8vc3ltbGluayIsMDYwMCkgY2F1c2luZyBtYW55IGJhZCBwZXJtcy4KKyAgICArIFNhbml0eS1jaGVjayBudW1iZXJzIGZvciBwYXJhbWV0ZXJzCisgICAgKyBNb3ZlIHNvbWUgbG9naWMgZnJvbSBwcm9jZXNzX2FyY2hpdmUgaW50byB3YW50aW5zdGFsbAorICAgICsgUHJpbnQgJzAnIGluIGRwa2ctc2NhbnBhY2thZ2VzIGlmIG5vIHBhY2thZ2VzIGZvdW5kLgorCisgLS0gV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4gIEZyaSwgMTAgU2VwIDE5OTkgMDQ6MDY6MzIgKzAyMDAKKworZHBrZyAoMS40LjEuNikgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBOb24tbWFpbnRhaW5lciByZWxlYXNlLgorICAqIHNjcmlwdHMvZHBrZy1hcmNoaXRlY3R1cmUucGw6IFVwZGF0ZSB0byBsYXRlc3QgdmVyc2lvbi4KKyAgKiBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLjE6IExpa2V3aXNlLgorICAKKyAtLSBNYXJjdXMgQnJpbmttYW5uIDxicmlua21kQGRlYmlhbi5vcmc+ICBTYXQsIDI0IEp1bCAxOTk5IDE4OjI0OjIxICswMjAwCisKK2Rwa2cgKDEuNC4xLjUpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogTm9uLW1haW50YWluZXIgcmVsZWFzZS4KKyAgKiAoZHBrZy1kZXYpOiBVc2UgZW1hY3Nlbi1jb21tb24gZm9yIGRlYmlhbi1jaGFuZ2Vsb2ctbW9kZS5lbAorICAgIChjbG9zZXM6QnVnIzIwNzc2LCMzMTAzMCkuCisgICogUmVtb3ZlZCByZWZlcmVuY2VzIHRvIHRoZSBwYWNrYWdpbmcgYW5kIHBvbGljeSBtYW51YWxzIGZyb20gZGViaWFuL2NvbnRyb2wuCisgICogUHV0IGRlYmlhbi1jaGFuZ2Vsb2ctbW9kZS5lbCBpbiBkcGtnLWRldiBhbmQgcmVtb3ZlIGZyb20gZHBrZyAoY2xvc2VzOkJ1ZyMyOTI3MSkuCisgICogRml4IHBhdGhzIGluIDUwZHBrZy1kZXYuZWwgdXNpbmcgUm9kZXJpY2sgU2NoZXJ0bGVyJ3MgcGF0Y2gKKyAgICAoY2xvc2VzOkJ1ZyMyODI3MCwjMjk3MDIsIzI2ODc2LCMyOTE4NCxhbmQgb3RoZXJzKS4KKyAgKiBOb3RlIHRoYXQgYnVnIG51bWJlciAxNzM2NyB3YXMgZml4ZWQgaW4gMS40LjAuMjYuCisgICogQWRkIFphY2sgV2VpbmJlcmcncyBpbnN0YWxsLWluZm8gcGF0Y2ggZm9yIEdOVSBpbnN0YWxsLWluZm8KKyAgICBjb21wYXRpYmlsaXR5IChjbG9zZXM6QnVnIzI4OTY1KS4KKyAgKiBBZGQgZHBrZy1hcmNoaXRlY3R1cmUgc3R1ZmYgZnJvbSBNYXJjdXMgQnJpbmttYW5uLgorICAqIFJlbW92ZSBkZWJpYW4ta2V5cmluZyBzdWdnZXN0cyBmcm9tIGRwa2cuCisgICogQWRkIC1rPGtleWlkPiBmbGFnIHRvIGRwa2ctYnVpbGRwYWNrYWdlLgorICAqIC0tdGV4dG1vZGUgd29ya3MgaW4gZ3BnLCByZW1vdmUga2x1Z2UgZnJvbSBkcGtnLWJ1aWxkcGFja2FnZS4KKyAgKiBDbGVhbnVwIGNvbmZpZ3VyZS5pbiBzbGlnaHRseSAoc3RvcCB1c2luZyB0bF8gbWFjcm9zLCBmaXggZ2V0dGV4dCBzdHVmZikuCisgICogQXR0ZW1wdCB0byBtYWtlIERlYmlhbiBzb3VyY2UgdXNlZnVsIGZvciBub24tRGViaWFuIHN5c3RlbXMKKyAgICAoaS5lLiBkaXN0Y2xlYW4gdHJlZSBpbnN0ZWFkIG9mIG1haW50YWluZXItY2xlYW4gdHJlZSkuCisgICogU3luYyB3aXRoIHdpY2hlcnQncyAxLjQuMS40LgorICAqIEFkZCBteSBsdGNvbmZpZy0xLjMuMi5kaWZmIChSUEFUSCB3b3JrYXJvdW5kKS4KKyAgKiBBZGQgZHBrZy1zY2Fuc291cmNlcyBwcm9ncmFtIGFuZCBtYW4gcGFnZS4KKyAgKiBNYW4gcGFnZXMgaW4gL3Vzci9zaGFyZS9tYW4uCisKKyAtLSBKb2VsIEtsZWNrZXIgPGVzcHlAZGViaWFuLm9yZz4gIFR1ZSwgMTMgSnVsIDE5OTkgMTg6MTI6MTUgLTA3MDAKKworZHBrZyAoMS40LjEuNCkgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBBbHNvIGNoYW5nZSBkZXZlbG9wZXIta2V5cmluZyB0byBkZWJpYW4ta2V5cmluZyBmb3IgZHBrZy1kZXYgcGFja2FnZQorICAqIEluY2x1ZGUgc3BhbmlzaCB0cmFuc2xhdGlvbiBmcm9tIE5pY29sw6FzIExpY2h0bWFpZXIgPG5pY2tAZGViaWFuLm9yZz4KKyAgKiBEZXBlbmQgb24gcGVybDUgaW5zdGVhZCBvZiBwZXJsCisKKyAtLSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPiAgTW9uLCAgNSBKdWwgMTk5OSAwMDowNDoxNCArMDIwMAorCitkcGtnICgxLjQuMS4zKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIE1vZGlmeSB0YXJvYmplY3QoKSBzbyBpdCBkb2VzIG5vdCBjb21wbGFpbiBpZiB3ZSBhcmUgY3JlYXRpbmcgYQorICAgIGRpcmVjdG9yeSB0aGF0IHJlcGxhY2VzIGEgcmVtb3ZlZCBmaWxlLiBUaGlzIHdvcmtzIGFyb3VuZCB0aGUKKyAgICBwcm9ibGVtIHRoYXQgdGhlIGZpbGVkYXRhYmFzZSBkb2Vzbid0IHJlbWVtYmVyIHdoYXQgZmlsZXR5cGUgYQorICAgIGZpbGUgd2FzIGJ5IGFzc3VtaW5nIGl0IGFscmVhZHkgd2FzIGEgZGlyZWN0b3J5CisKKyAtLSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPiAgTW9uLCAzMSBNYXkgMTk5OSAyMzo0OToyMyArMDIwMAorCitkcGtnICgxLjQuMS4yKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIE5vbi1tYWludGFpbmVyIHVwbG9hZAorICAqIFJlYnVpbGQsIHNvIHRoaXMgaXMgZ2xpYmMyLjEgKHVubGVzcyB5b3UncmUgb24gbTY4ayksIHdoaWNoIGlzIHJ1bW91cmVkCisgICAgdG8gYWxzbyBmaXggdGhlIGk4bi1wcm9ibGVtcy4KKyAgKiBJbmNvcnBvcmF0ZSAxLjYgZm9ybWF0IG9mIC5jaGFuZ2VzLCBwYXRjaCBmcm9tIEd1eSBNYW9yCisgICogRml4IGJ1ZyBpbiBzZWN0aW9uLWhhbmRsaW5nIG9mIGRwa2ctc2NhbnBhY2thZ2VzLCBwYXRjaCBmcm9tIEd1eSBNYW9yCisgICogRGlzYWJsZSBmb3JjZS1vdmVyd3JpdGVzIGFnYWluLCBzaW5jZSB3ZSdyZSBpbiB1bnN0YWJsZQorICAqIEFzc3VtZSBsYXJnZW1lbSBvbiBzeXN0ZW1zIGZvciB3aGljaCBzeXNpbmZvIGlzIG5vdCBhdmFpbGFibGUsIEJ1ZyMgMzM2NTgKKworIC0tIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+ICBXZWQsIDI2IE1heSAxOTk5IDE1OjUwOjE3ICswMjAwCisKK2Rwa2cgKDEuNC4xLjEpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogTm9uLW1haW50YWluZXIgdXBsb2FkCisgICogSW5zdGFsbCBlbWFjcy1zdGFydHVwIHNjcmlwdHMgd2l0aCBtb2RlIDA2NDQgKGxpbnRpYW4pCisgICogSW5jb3Jwb3JhdGUgY2hhbmdlcyBpbiBOTVUgMS40LjAuMzIgbWFkZSBieSBWaW5jZW50IFJlbmFyZGlhcworICAgIDx2aW5jZW50QHdhdy5jb20+IGZvciBzbGluazoKKyAgICArIEFwcGx5IHBhdGNoIGZyb20gSmltIFBpY2sgZm9yIHVwZGF0ZS1hbHRlcm5hdGl2ZXMucGwgdG8KKyAgICAgIGZpeCAnSW1wb3J0YW50JyBidWdzICMzMDg5MSBpbiBkcGtnIGFuZCAoIzI3MzgyLCAjMjczODMsICMyNzY5NiwKKyAgICAgICMyNzcwMywgIzI3NzM2LCAjMjcwOTcobWVyZ2VkIGJ1Z3MpKSBpbiBqZGsxLjEuCisgICogSW5jb3Jwb3JhdGUgY2hhbmdlcyBpbiBOTVUgMS40LjAuMzMgbWFkZSBieSBtZSBmb3Igc2xpbms6CisgICAgKyBGaXggaWxsZWdhbCBwZXJsIGNvbnN0cnVjdCAoQnVnIyAzMDk4NSkKKyAgICArIEluaXRpYWxpemUgb2lhbHRuYW1lLT51c2VpbnN0ZWFkIGFuZCBvaWNvbnRlc3QtPmNhbWVmcm9tIHRvIDAgKEJ1ZyMgMzAzOTcpCisgICAgKyBVcGRhdGUgc2hsaWJzLmRlZmF1bHQgZm9yIGxpYm5jdXJzZXMgNCAoQnVnIyAzMDMzMikKKyAgICArIFN1Z2dlc3QgZGViaWFuLWtleXJpbmcgaW5zdGVhZCBvZiBkZXZlbG9wZXIta2V5cmluZyAoQnVnIyAyNzM3NiwgMzAyNDgpCisgICAgKyBBYm9ydCBkcGtnLWRpdmVydCB3aGVuIGF0dGVtcHRpbmcgdG8gZGl2ZXJ0IGEgZGlyZWN0b3J5IChCdWcjIDMwMTI2KQorICAgICsgTWFrZSBkcGtnLWRlYi4xIGF3YXJlIHRoYXQgaXQgaXMgaW4gc2VjdGlvbiAxLCBub3QgOAorICAgICsgRml4IHNlY3Rpb24gaW4gcmVmZXJlbmNlIHRvIGRwa2ctZGViIGluIGRwa2cuOCAoQnVnIyAyOTc0MCkKKyAgICArIEZpeCB0eXBvIGluIC0tZm9yY2UtaGVscCAoQnVnIyAyNjE5MykKKyAgICArIENvcnJlY3QgcGF0aCBmb3IgZGViaWFuLWNoYW5nZWxvZy1tb2RlLmVsIChCdWcjIDI0NjA2KQorICAgICsgTWFrZSBkaXNrLW1ldGhvZCBmb3IgZHBrZyB1c2UgL3Zhci9ydW4gaW5zdGVhZCBvZiAvdG1wIHRvIGZpeAorICAgICAgc3ltbGluay1hdHRhY2tzIChCdWcjIDIxMzk5KQorICAgICsgRG9jdW1lbnQgLW4gYW5kIC1mIG9wdGlvbnMgZm9yIHVwZGF0ZS1yYy5kIGluIG1hbnBhZ2UgKEJ1ZyMgMTU5MTMpCisgICAgKyBBZGQgLS1hYm9ydC1hZnRlciBvcHRpb24gdG8gY2hhbmdlIGFmdGVyIGhvdyBtYW55IGVycm9ycyB3ZSBhYm9ydCBhbmQKKyAgICAgIGNoYW5nZSB0aGUgZGVmYXVsdCB0byA1MCAoQnVnIyAyMjk0MCkKKyAgICArIEZpeCBjb250cm9sbGliLnBsOiBkb24ndCBjaGVjayBkZWJpYW4vc3Vic3R2YXJzIHVubGVzcyBuZWVkZWQsIGFuZAorICAgICAgZG9uJ3QgZGVwZW5kIG9uIGxhbmd1YWdlIHNldHRpbmdzIChCdWcjIDMxNTA4KQorICAgICsgQWxsb3cgYSAtIGluIHRoZSBhcmNoaXRlY3R1cmUtZmllbGQgKEJ1ZyMgMjU1MzcpCisKKyAtLSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPiAgTW9uLCAgMSBGZWIgMTk5OSAwMDo0NDowMSArMDEwMAorCitkcGtnICgxLjQuMSkgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBNYWludGFpbmVyIHJlbGVhc2UgYnkgSVdKLgorICAqIENoYW5nZWQgTWFpbnRhaW5lcjogZmllbGQgZGVzY3JpcHRpb24uCisgICogVmFyaW91cyBjaGFuZ2VzIHRvIG1ha2UgdGhlIGRhbW4gdGhpbmcgYnVpbGQuCisgICogQWRkIC5jdnNpZ25vcmUgZmlsZXMuCisKKyAtLSBJYW4gSmFja3NvbiA8aWFuQGRhdmVuYW50LmdyZWVuZW5kLm9yZy51az4gIFN1biwgIDEgTm92IDE5OTggMTc6MzM6MzggKzAwMDAKKworZHBrZyAoMS40LjAuMzEpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogZHBrZy9wcm9jZXNzYXJjLmM6IE1ha2UgbmV3ZmlsZXNsaXN0IHN0YXRpYyBsaWtlIHRoZSBvdGhlciBhcmd1bWVudHMKKyAgICBmb3IgcmVnaXN0ZXJfY2xlYW51cCdzIGN1XyogZnVuY3Rpb25zLgorICAqIE4tdGggZml4IGZvciBjb250cm9sbGliLnBsIChzaW11bGF0ZSBvbGQgYmVoYXZpb3IgYnkgdHJ5aW5nIHN0ZGluLAorICAgIHN0ZG91dCwgYW5kIHN0ZGVyciBmb3IgZ2V0bG9naW4oKSkuCisgICogRW5hYmxlIC0tZm9yY2Utb3ZlcndyaXRlIGZvciBzbGluayByZWxlYXNlLCBhbmQgY29tbWVudCB3aGVyZSB0byBkbworICAgIHNvIChkcGtnL21haW4uYykuCisgICogUmVjb21waWxlIGFnYWluc3QgbmN1cnNlczQuCisKKyAtLSBEYW5pZWwgSmFjb2Jvd2l0eiA8ZGFuQGRlYmlhbi5vcmc+ICBUaHUsIDIyIE9jdCAxOTk4IDE3OjM3OjIzIC0wNDAwCisKK2Rwa2cgKDEuNC4wLjMwKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIGRwa2ctZGV2IGlzbid0IGFsbG93ZWQgdG8gaGF2ZSBhIFJlY29tbWVuZHM6IGRlYmlhbi1rZXlyaW5nIChhcyB0aGF0J3MKKyAgICBpbiBjb250cmliKSwgc28gaXQncyBub3cgbG93ZXJlZCB0byBhIFN1Z2dlc3RzOiAuIFRoYW5rcyB0byBKYW1lcyBUcm91cAorICAgIGZvciBwb2ludGluZyB0aGlzIG91dC4gCisKKyAtLSBKLkguTS4gRGFzc2VuIChSYXkpIDxqZGFzc2VuQHdpLkxlaWRlblVuaXYubmw+ICBTYXQsIDI2IFNlcCAxOTk4IDEzOjU5OjIzICswMjAwCisKK2Rwa2cgKDEuNC4wLjI5KSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIEZvciBub3csIHByZWZlciBQR1Agb3ZlciBHUEcuCisKKyAtLSBKLkguTS4gRGFzc2VuIChSYXkpIDxqZGFzc2VuQHdpLkxlaWRlblVuaXYubmw+ICBUdWUsIDIyIFNlcCAxOTk4IDA5OjM4OjA5ICswMjAwCisKK2Rwa2cgKDEuNC4wLjI4KSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIEFkZGVkIGdwZyAoR05VIFByaXZhY3kgR3VhcmQpIHN1cHBvcnQ6CisgICAgKiBzY3JpcHRzL2J1aWxkcGFja2FnZS5zaDogZGVmYXVsdCB0byBHUEcgKHVubGVzcyBubyBHUEcsIGJ1dCBvbmx5IGEgUEdQCisgICAgICBzZWNyZXQga2V5IGZpbGUgaXMgZm91bmQpLCBhcyBHUEcsIHVubGlrZSBQR1AsIGlzIERGU0ctZnJlZS4KKyAgICAqIFVwZGF0ZWQgZHBrZy1zb3VyY2UoMSksIGFuZCBhZGRlZCBncGcoMSkgYW5kIHBncCgxKSB0byB0aGUgU0VFIEFMU08KKyAgICAgIHNlY3Rpb24uCisgICAgKiBXb3JrZWQgYXJvdW5kIGJyb2tlbiB0ZXh0bW9kZSBpbXBsZW1lbnRhdGlvbiBpbiBHUEcuCisgICAgKiBkcGtnLWRldiBub3cgU3VnZ2VzdHM6IGdudXBnIC4KKyAgKiBObyBsb25nZXIgaW5jbHVkZXMgZGV2ZWxvcGVyLWtleXMucGdwIC4gSW5zdGVhZCwgZHBrZyBub3cgU3VnZ2VzdHM6IGFuZAorICAgIGRwa2ctZGV2IG5vdyBSZWNvbW1lbmRzOiBkZXZlbG9wZXIta2V5cmluZy4KKyAgKiBDb21waWxlZCB3aXRoIGxhdGVzdCBsaWJzdGRjKysgKDIuOSkuCisKKyAtLSBKLkguTS4gRGFzc2VuIChSYXkpIDxqZGFzc2VuQHdpLkxlaWRlblVuaXYubmw+ICBNb24sIDIxIFNlcCAxOTk4IDEzOjE3OjE0ICswMjAwCisKKworZHBrZyAoMS40LjAuMjcpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogUkVBTExZIGZpeGVkIGRwa2ctZGV2LCBhbmQgbmV3IGF0dGVtcHQgdG8gcGxhY2F0ZSBpbnN0YWxsZXIgb24gaW50ZXJuYWxzLgorCisgLS0gRGFuaWVsIEphY29ib3dpdHogPGRhbkBkZWJpYW4ub3JnPiAgRnJpLCAyNyBKdWwgMTk5OCAxNTo1ODowNCAtMDQwMAorCitkcGtnICgxLjQuMC4yNi4wLjEpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogQmluYXJ5LW9ubHkgdXBsb2FkIGZvciB4ODYgYW5kIGZpeGVkIGRwa2ctZGV2CisKKyAtLSBEYW5pZWwgSmFjb2Jvd2l0eiA8ZGFuQGRlYmlhbi5vcmc+ICBGcmksIDI0IEp1bCAxOTk4IDE1OjU4OjA0IC0wNDAwCisKK2Rwa2cgKDEuNC4wLjI2KSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIE5vbi1tYWludGFpbmVyIHVwbG9hZC4KKworICAqIE1ha2UgLS1yb290IHdvcmsgd2l0aCBtYWludGFpbmVyIHNjcmlwdHMgKFBhdGNoIGJ5IFNjb3R0IEJhcmtlciwKKyAgICBidWdzICM0ODYzIGFuZCAjMzE3MCkuCisgICogRml4ICQobGlzcGRpcikgYnVnIGlmIGNvbXBpbGluZyB3aXRob3V0IGVtYWNzIChub3RpY2VkIGJ5IEpvZXkgSGVzcykuCisKKyAtLSBEYW5pZWwgSmFjb2Jvd2l0eiA8ZGFuQGRlYmlhbi5vcmc+ICBUaHUsIDIzIEp1bCAxOTk4IDEyOjAyOjA0IC0wNDAwCisKK2Rwa2cgKDEuNC4wLjI1KSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIE5vbi1tYWludGFpbmVyIHVwbG9hZC4KKyAgCisgICogQWRkIHRoZSByZXF1ZXN0ZWQgLW5jIG9wdGlvbiB0byBkcGtnLWJ1aWxkcGFja2FnZSAoRG8KKyAgICBub3QgY2xlYW4gc291cmNlIHRyZWUsIHVzZWZ1bCBpbiBkZWJ1Z2dpbmcgY3ljbGVzKS4KKyAgKiBjb250cm9sbGliLnBsOiBBZ2FpbiBieSBwb3B1bGFyIGFjY2xhbWF0aW9uLCBmaXggdGhlIGdldGxvZ2luKCkgd2FybmluZ3MuCisgICAgSSByZWRpcmVjdGVkIFNUREVSUiBvbnRvIGZkIDAgYmVmb3JlIGNhbGxpbmcgZ2V0bG9naW4oKS4KKyAgKiB0b29scy5tNDogRml4IGRpc3BsYXkgb2Ygd2hldGhlciBjKysgd29ya3MuCisgICogZHBrZy1kZWIvZXh0cmFjdC5jOiBnbGliYyAyLjEgYW5kIHNvbWUga2VybmVscyB3YW50IHRvIG1ha2UKKyAgICBmZmx1c2goKSBtb3ZlIHRoZSBjdXJyZW50IGZwb3MuICBVbnRpbCBzb21lb25lIGNhbiBmaXggdGhhdCwKKyAgICBwcm90ZWN0IHdpdGggc2Vlay4KKyAgKiBBZGQgYW4gZXh0cmEgMCwgdG8gZHNlbGVjdC97cGtnLG1ldGh9a2V5cy5jYyBzbyBpdCBjb21waWxlcyBhZ2Fpbi4KKyAgKiBTdGFydCB1c2luZyBsY2hvd24oKSBpZiBhdmFpbGFibGUuCisgICogUmVhbGx5IGZpeCAjMjAzNTMuIChhY2xvY2FsLm00IHdhcyB0aGUgd3JvbmcgcGxhY2U7IHRoYXQncyBhIGdlbmVyYXRlZAorICAgIGZpbGUuICBUaGUgY29ycmVjdCBwbGFjZSBpcyBpbiB0bF9jYW5vbi5tNC4pCisKKyAtLSBEYW5pZWwgSmFjb2Jvd2l0eiA8ZGFuQGRlYmlhbi5vcmc+ICBUdWUsIDIxIEp1bCAxOTk4IDAzOjE0OjE0IC0wNDAwCisKK2Rwa2cgKDEuNC4wLjI0KSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIE5vbi1tYWludGFpbmVyIHVwbG9hZC4KKworICAqIGRwa2cvbWFpbi5jOiBUdXJuIC0tZm9yY2Utb3ZlcndyaXRlIG9mZiBhcyBkZWZhdWx0LgorICAqIGRwa2cvbWFpbi5jOiBkb24ndCBsaXN0IC0tZm9yY2Utb3ZlcndyaXRlIGFzIGRlZmF1bHQgaW4gLS1mb3JjZS1oZWxwLAorICAgIG5vdGljZWQgYnkgUGV0ZXIgV2Vpc3MgPFBldGVyLldlaXNzQEluZm9ybWF0aWsuVW5pLU9sZGVuYnVyZy5ERT4gYW5kCisgICAgb3RoZXJzLiBbIzIzNTQyLCBwYXJ0IG9mICMxNzQwOV0uCisgICogZHBrZy9kcGtnLjg6IHJlcGxhY2VkIHdpdGggYSBuZXdlciB2ZXJzaW9uIGZyb20gSmltIFZhbiBaYW5kdAorICAgIDxqcnZAdmFuemFuZHQubXYuY29tPi4gWyMyMTA2MV0KKworICAqIGRwa2ctZGViL2J1aWxkLmMgKGRvX2J1aWxkKTogYWRkIG1pc3NpbmcgXG4gYW5kIGltcHJvdmUgZXJyb3IgbWVzc2FnZQorICAgIHdoZW4gY29uZmZpbGUgbmFtZSBpcyB0b28gbG9uZy4gWyM3MDU3XQorCisgICogc2NyaXB0cy91cGRhdGUtYWx0ZXJuYXRpdmVzLjg6IHJlcGxhY2VkIHdpdGggYmV0dGVyIG1hbiBwYWdlIGZyb20KKyAgICBDaGFybGVzIEJyaXNjb2UtU21pdGggPGNwYjRAdWtjLmFjLnVrPi4gWyMxNzI4M10KKyAgKiBzY3JpcHRzL2Rwa2ctc291cmNlLjE6IGNvcnJlY3RlZCBsb2dpYyBlcnJvciBpbiBkb2N1bWVudGF0aW9uIGZvcgorICAgIGRwa2ctZ2VuY29udHJvbCdzIC1wIG9wdGlvbiwgYXMgbm90aWNlZCBieSBPbGl2ZXIgRWxwaGljaworICAgIDxvbGx5QGxpbmRhLmxmaXguY28udWs+LiBbIzE0NjU1XQorICAqIHNjcmlwdHMvY29udHJvbGxpYi5wbCAoZmluZGFyY2gpOiBjb3JyZWN0IHR5cG8gaW4gZXJyb3IgbWVzc2FnZSwKKyAgICBub3RpY2VkIGJ5IFlhbm4gRGlyc29uIDx5ZGlyc29uQGEycG9pbnRzLmNvbT4uIFsjMjIxMDZdCisgICogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5zaDogZml4IHR5cG8gcy9zb3VyY2UgdmVyc2lvbi9zb3VyY2UKKyAgICBtYWludGFpbmVyLywgbm90aWNlZCBieSBKb2V5IEhlc3MgPGpvZXlAa2l0ZS5tbC5vcmc+LCBBZGFtIFAuIEhhcnJpcworICAgIDxhcGhhcnJpc0BvbnNob3JlLmNvbT4gYW5kIG90aGVycy4gWyMxMDE3NSwgIzE1NTU5XQorICAqIHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOiBhcHBsaWVkIHBhdGNoIGZyb20gUm9tYW4gSG9kZWsKKyAgICA8Um9tYW4uSG9kZWtAaW5mb3JtYXRpay51bmktZXJsYW5nZW4uZGU+IHdoaWNoIHNvbHZlcyBwcm9ibGVtcyB3aXRoCisgICAgYXJjaGl0ZWN0dXJlIHNwZWNpZmljIHBhY2thZ2VzIGluIG1vc3RseSBhcmNoaXRlY3R1cmUgaW5kZXBlbmRlbnQKKyAgICBtdWx0aS1iaW5hcnkgc291cmNlIHBhY2thZ2VzLiBbIzE0MzQxLCAjMjAxOTJdLgorCisgICogZG9jL01ha2VmaWxlLmFtOiByZW1vdmUgYW55IHJlZmVyZW5jZSB0byB0aGUgcGFja2FnaW5nIG1hbnVhbCwgYXMgaXQgaXMKKyAgICBub3cgcHJvdmlkZWQgYnkgdGhlIHNlcGFyYXRlICJwYWNrYWdpbmctbWFudWFsIiBwYWNrYWdlLgorICAqIGRvYy9wYWNrYWdpbmcuc2dtbDogcmVtb3ZlZC4KKyAgKiBkb2MvZGV2ZWxvcGVyLWtleXMucGdwOiB1cGRhdGVkIHRvIHRoZSBjdXJyZW50IGRlYmlhbiBrZXlyaW5nLgorCisgICogYWNsb2NhbC5tNDogYXBwbGllZCBwYXRjaCBmcm9tIEpvZWwgS2xlY2tlciA8amtAZXNweS5vcmc+IHRvIGhhbmRsZQorICAgIGVnY3MnIC0tcHJpbnQtbGliZ2NjLWZpbGUtbmFtZSBvdXRwdXQuIFsjMjAzNTNdCisgIAorICAqIGRlYmlhbi9jb3B5cmlnaHQ6IGNvcnJlY3QgRlNGIGFkZHJlc3MuCisgICogZGViaWFuL3J1bGVzOiBhZGQgY29kZSBmcm9tIGxlc3N0aWYncyBkZWJpYW4vcnVsZXMgdG8gbWFrZSBsaWJ0b29sCisgICAgbGVzcyBvZiBhIGZvb2wgKGkuZS4gbm90IHVzZSAtcnBhdGggYW5kIHRvIGxpbmsgc2hhcmVkIGxpYnJhcmllcworICAgIGFnYWluc3QgbGlicmFyaWVzIGl0IGRlcGVuZHMgb24pLiAgQ29kZSBieSBSaWNoYXJkIEJyYWFrbWFuCisgICAgPGRhcmtAeHM0YWxsLm5sPiBhbmQgWWFubiBEaXJzb24gPGRpcnNvbkBkZWJpYW4ub3JnPi4KKyAgKiBkZWJpYW4vcnVsZXM6IHJlbW92ZSBhbGwgcmVmZXJlbmNlIHRvIHRoZSBwYWNrYWdpbmcgbWFudWFsIGFzIGl0IGlzCisgICAgbm93IHByb3ZpZGVkIGJ5IHRoZSBzZXBhcmF0ZSAicGFja2FnaW5nLW1hbnVhbCIgcGFja2FnZS4gWyMyMTU4MSwKKyAgICAjMjExODYsICMyMjY5OCwgIzIzMzQyXQorICAqIGRlYmlhbi9ydWxlczogbGluayBkcGtnLWRpdmVydC4xLmd6IHRvIHVuZG9jdW1lbnRlZC43Lmd6IGFzIHRoZSBsYWNrCisgICAgb2YgYSByZWFsIG1hbnBhZ2UgaGFzIGJlZW4gcmVwb3J0ZWQgaW4gIzExMDkzLgorICAqIGRlYmlhbi9SRUFETUUuY29tcGlsZTogcmVtb3ZlZCBnYXdrIGFuZCBib2d1cyBjb21tZW50IGFib3V0IGdldHRleHQKKyAgICBiZWluZyBpbiBleHBlcmltZW50YWwsIGFzIHJlcG9ydGVkIGJ5IFNhbnRpYWdvIFZpbGEgPHNhbnZpbGFAdW5leC5lcz4KKyAgICBbIzIzMzQ0XS4gIEFkZGVkIGxpYnBhcGVyZyAoZGViaWFuZG9jMnBzIG5lZWRzIHBhcGVyY29uZikuCisgICogZGViaWFuL3NobGlicy5kZWZhdWx0LmkzODY6IHVwZGF0ZWQgZm9yIGdsaWJjLCByZXBvcnRlZCBieSBIZXJiZXJ0IFh1CisgICAgPGhlcmJlcnRAZ29uZG9yLmFwYW5hLm9yZy5hdT4uIFsjMTMxNDBdCisgICogZGViaWFuL2NvbnRyb2wgKGRwa2ctZGV2KTogZGVwZW5kIG9uIHBlcmwgYXMgUE9TSVggKG5vdCBhIHBhcnQgb2YKKyAgICBwZXJsLWJhc2UpIGlzIG5lZWRlZCBieSBtb3N0IG9mIHRoZSBwZXJsIGRwa2ctKiBzY3JpcHRzLCBub3RpY2VkIGJ5CisgICAgSm9lbCBLbGVja2VyIDxqa0Blc3B5Lm9yZz4uIFsjMjIxMTVdCisKKyAtLSBKYW1lcyBUcm91cCA8amp0cm91cEBjb21wLmJyYWQuYWMudWs+ICBXZWQsIDI0IEp1biAxOTk4IDE0OjM4OjUyICswMjAwCisKK2Rwa2cgKDEuNC4wLjIzLjIpIGZyb3plbiB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIE5vbi1tYWludGFpbmVyIHVwbG9hZC4KKyAgKiBkcGtnL21haW4uYzogVHVybiAtLWZvcmNlLW92ZXJ3cml0ZSBiYWNrIG9uIGFzIGRlZmF1bHQuCisKKyAtLSBKYW1lcyBUcm91cCA8amp0cm91cEBjb21wLmJyYWQuYWMudWs+ICBUdWUsIDIzIEp1biAxOTk4IDIyOjE5OjI2ICswMjAwCisKK2Rwa2cgKDEuNC4wLjIzLjEpIGZyb3plbiB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIE5vIHJlYWwgY2hhbmdlcywgb25seSBhIG5ldyB2ZXJzaW9uIGNvZGUgdG8gbWFrZSB0aGlzIGdvIHRvIGZyb3plbiB0b28uCisKKyAtLSBOaWxzIFJlbm5lYmFydGggPG5pbHNAZGViaWFuLm9yZz4gIFdlZCwgMTAgSnVuIDE5OTggMTc6Mjk6NTggKzAyMDAKKworZHBrZyAoMS40LjAuMjMpIGZyb3plbiB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIE5vbi1tYWludGFpbmVyIGJ1Zy1maXggcmVsZWFzZQorICAqIFVwZGF0ZSB0aGUgZGlzayBtZXRob2QgdG8gdGhlIGhhbW0gZGlyZWN0b3J5IHN0cnVjdHVyZSAoQnVnIzIxMDAwKQorCisgLS0gTmlscyBSZW5uZWJhcnRoIDxuaWxzQGRlYmlhbi5vcmc+ICBTdW4sICA3IEp1biAxOTk4IDE5OjE0OjUxICswMjAwCisKK2Rwa2cgKDEuNC4wLjIyKSBmcm96ZW4gdW5zdGFibGU7IHVyZ2VuY3k9bWVkaXVtCisKKyAgKiBOb24tbWFpbnRhaW5lciBidWctZml4IHJlbGVhc2UKKyAgKiBJbnN0YWxsIG1haW4gY2hhbmdlbG9nIGZpbGUgYXMgYGNoYW5nZWxvZy5neicgaW5zdGVhZCBvZgorICAgIGBjaGFuZ2Vsb2cuZHBrZy5neicgKERlYmlhbiBQb2xpY3ksIHNlY3Rpb24gNS44KSAoQnVnIzYwNTIsMTUxNTcpCisgICogQXZvaWQgdXNlIG9mIC90bXAvKi4kJCBpbiBwcmVpbnN0IGFuZCBwb3N0aW5zdCAoQnVnIzE5NzEyKQorICAqIE1ha2Ugc3VyZSBkaXZlcnNpb25zIGZpbGUgaXMgYWx3YXlzIGNyZWF0ZWQgd2l0aCBtb2RlIDA2NDQgKEJ1ZyMxOTQ5NCkKKyAgKiBXaGVuIHJlbW92aW5nIGEgZmlsZSwgY2htb2QgaXQgdG8gMDAwIGlmIGl0J3MgYSBjaGFyIG9yIGJsb2NrCisgICAgZGV2aWNlIG9yIHJlbW92ZSBpdHMgc1t1Z11pZCBiaXRzLCBpZiBhbnkgKEJ1ZyM2MDA2KQorICAqIE1pbm9yIGZpeGVzIGluIHRoZSBwcm9ncmFtbWVyJ3MgbWFudWFsIChCdWcjNjIwNikKKyAgKiBBbHdheXMgY3JlYXRlIHJlYWRhYmxlIHN0YXR1cyBhbmQgYXZhaWxhYmxlIGZpbGVzCisgICAgKEJ1ZyM5ODY5LDExODg3LDE0NjM2LDE1Nzg2LDE5MTQ2KQorICAqIE1ha2UgZHBrZy1nZW5jb250cm9sIGhvbm91ciAtREFyY2h0ZWN0dXJlPXh4eHggKEJ1ZyM5ODkzKQorICAqIEFsbG93IGRpZmZlcmVudCBhcmNocyBmb3IgdGhlIHNhbWUgYmluYXJ5IGluIGRlYmlhbi9maWxlcyAoQnVnIzk4OTQpCisgICogQWRkZWQgd29ya2Fyb3VuZCBpbiAvdXNyL2xpYi9kcGtnL21ldGhvZHMvZGlzay9zZXR1cAorICAgIHRvIGF2b2lkIGJhc2ggd2FybmluZyAoQnVnIzEwMTExLDEwMTMxKQorICAqIFJlY29nbml6ZSBvbGQgLmRlYiBwYWNrYWdlcyB3aXRoIG90aGVyIGxvY2FsZXMgKEJ1ZyMxMjIzMikKKyAgKiBBZGRlZCBgU0hFTEw9YmFzaCcgdG8gZGViaWFuL3J1bGVzOiBpdCB1c2VzIGJhc2gtc3BlY2lmaWMgc3RydWN0cworICAqIE1vdmUgc29tZSBmaWxlcyBmcm9tIGRwa2cgdG8gZHBrZy1kZXYgKHBhcnQgb2YgQnVnIzEzMjk1KQorICAqIE1pbm9yIGZpeCBpbiBwYWNrYWdpbmcgbWFudWFsIHJlZ2FyZGluZyB0byBTdGFuZGFyZHMtVmVyc2lvbiAoQnVnIzE0Njk2KQorICAqIEZpeGVkIC0tYWx0ZGlyIGFuZCAtLWFkbWluZGlyIGluIHVwZGF0ZS1hbHRlcm5hdGl2ZXMgKEJ1ZyMxNTMzMikKKyAgKiBTdHJpcCAvdXNyL2xpYi9saWJkcGtnKiAoQnVnIzE1NjcxKQorICAqIGRwa2c6IHNlbmQgb3V0cHV0IG9mIC0taGVscCwgLS1mb3JjZS1oZWxwIGFuZCAtRGhlbHAgdG8gc3Rkb3V0CisgICAgKEJ1ZyMxNjA1MSwxODU3NCkKKyAgKiBzZW5kIGNvcnJlY3Qgc2lnbmFscyB3aXRoIHN0YXJ0LXN0b3AtZGFlbW9uIChCdWcjMTcyNTgpCisgICogTWFrZSBgZHBrZy1kaXZlcnQgLS10ZXN0IC0tcmVtb3ZlJyB3b3JrIGFzIGV4cGVjdGVkIChCdWcjMTk1MzEpCisgICogRGV0ZXJtaW5lIHByb3Blcmx5IHRoZSBhcmNoaXRlY3R1cmUgaWYgZ2NjIGlzIGVnY3MgKEJ1ZyMyMDM1MykKKworIC0tIEp1YW4gQ2VzcGVkZXMgPGNlc3BlZGVzQGRlYmlhbi5vcmc+ICBTdW4sICA1IEFwciAxOTk4IDE3OjM3OjAxICswMjAwCisKK2Rwa2cgKDEuNC4wLjIxKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIE5vbi1tYWludGFpbmVyIHJlbGVhc2UgdG8gaW5jbHVkZSBhIG5ldyB1cGRhdGUtcmMuZAorICAqIEZpeGVkIGRhdGUgb24gZmlsZXMgaW4gdGhlIGFyY2hpdmUgZnJvbSAyMDE3IGFuZCAyMDE4IGJ5IHJ1bm5pbmcKKyAgICB0b3VjaCBmb287IGZpbmQgLiAtbmV3ZXIgZm9vIHwgeGFyZ3MgLXIgdG91Y2g7IHJtIGZvbworICAqIENoYW5nZWQgc3RhcnQtc3RvcC1kZWFtb24gbWVzc2FnZSAiTm8gPHByb2dyYW0+IGZvdW5kOyBub25lIGtpbGxlZC4iIHRvCisgICAgIk5vIDxwcm9ncmFtPiBmb3VuZCBydW5uaW5nOyBub25lIGtpbGxlZC4iCisKKyAtLSBNaXF1ZWwgdmFuIFNtb29yZW5idXJnIDxtaXF1ZWxzQGNpc3Ryb24ubmw+ICBUaHUsICA1IE1hciAxOTk4IDE0OjE5OjQ2ICswMTAwCisKK2Rwa2cgKDEuNC4wLjIwKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIERpc2FibGVkIC0tZm9yY2Utb3ZlcndyaXRlcy4KKyAgKiBSZW1vdmVkIGNvcmUgZmlsZSBmcm9tIHNvdXJjZQorCisgLS0gTWljaGFlbCBBbGFuIERvcm1hbiA8bWRvcm1hbkBkZWJpYW4ub3JnPiAgVHVlLCAgOSBKYW4gMTk5OCAwMzozNDoyOCAtMDUwMAorCitkcGtnICgxLjQuMC4xOSkgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBDaGFuZ2VkIG1ldGhvZHMvZGlzay5zZXR1cCB0byB1c2Ugb3V0cHV0IG9mCisgICAgJ2Rwa2cgLS1wcmludC1pbnN0YWxsYXRpb24tYXJjaGl0ZWN0dXJlJyBpbnN0ZWFkIG9mIGhhcmQtY29kZWQgCisgICAgJzEzODYnIChmaXhlcyAjMTA5OTUpLgorICAqIFBhdGNoZWQgZHBrZy1zb3VyY2UgdG8gcHJvcGVybHkgcXVvdGUgbWV0YWNoYXJhY3RlcnMgaW4gc3RyaW5ncyAKKyAgICBiZWZvcmUgdXNpbmcgdGhlbSBpbiBwYXR0ZXJuLW1hdGNoaW5nIGV4cHJlc3Npb25zIChmaXhlcyAjMTA4MTEpLgorICAqIEZpeGVkIHNldmVyYWwgZG9jdW1lbnRhdGlvbiB0eXBvcyAoZml4ZXMgIzEwNzY0KS4KKyAgKiBkcGtnLXNvdXJjZSBub3cgd29ya3MgYXJvdW5kIDEwMC1jaGFyYWN0ZXIgZmlsZW5hbWUgbGltaXRhdGlvbiBvZiBjcGlvCisgICAgKGZpeGVzICMxMDQwMCkuCisgICogZHBrZy1zb3VyY2Ugbm93IHByb3Blcmx5IGhhbmRsZXMgJ1wgbm8gbmV3bGluZSBpbiBzb3VyY2UnIG1lc3NhZ2UgZnJvbQorICAgIHBhdGNoIChmaXhlcyAjNTA0MSkuCisgIAorIC0tIEtsZWUgRGllbmVzIDxrbGVlQGRlYmlhbi5vcmc+ICBTdW4sIDEzIEp1bCAxOTk3IDE5OjI4OjIyIC0wNzAwCisKK2Rwa2cgKDEuNC4wLjE4KSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIGRwa2ctc291cmNlIG5vdyB1c2VzIG5ldyAteiBvcHRpb24gdG8gR05VIHBhdGNoIChzdGlsbCBuZWVkcyB0byBiZQorICAgIGNoYW5nZWQgdG8gZGV0ZWN0IGFuZCB1c2Ugb2xkIHZlcnNpb24gYXMgd2VsbCkgKGZpeGVzICM5OTA0LCAjMTAwMDUsICMxMDAwNykuCisgICogQWRkZWQgaTY4NiB0byBhcmNodGFibGUuCisgICogc2hsaWJzLmRlZmF1bHQgbm93IHVzZXMgeGxpYjYgaW5zdGVhZCBvZiBlbGYteDExcjZsaWIgKGZpeGVzICM5OTI2KS4KKyAgKiBkZWJpYW4tY2hhbmdlbG9nLW1vZGUgbm93IHVzZXMgaW50ZXJydXB0aWJsZSBjb21wbGV0aW5nIHR5cGUtaW4gZmllbGRzCisgICAgaW5zdGVhZCBvZiB0aGUgcHJldmlvdXMgJ3NlbGVjdC1hLWxldHRlciBtZXRob2QnLiAgSSBjb25zaWRlciB0aGlzCisgICAgYmV0dGVyIGFuZCBtb3JlIHN0YW5kYXJkIHRoYW4gdGhlIHByZXZpb3VzIHdheSwgYnV0IEknZCB3ZWxjb21lCisgICAgb3BpbmlvbnMgdG8gdGhlIGNvbnRyYXJ5LiAgQ29uc2lkZXIgdGhpcyBhICdwcm9iYXRpb25hcnknIGNoYW5nZSBmb3IKKyAgICBub3cgKGZpeGVzICM5ODczLCAjOTg3NCkuCisKKyAtLSBLbGVlIERpZW5lcyA8a2xlZUBkZWJpYW4ub3JnPiAgU3VuLCAyNSBNYXkgMTk5NyAwOTo1NjowOCAtMDQwMAorCitkcGtnICgxLjQuMC4xNykgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBBbGwgb2YgdGhlIGRwa2cgYmluYXJpZXMgKGJ1dCBub3QgZHBrZy1kZXYgb3IgZHNlbGVjdCkgbm93IHNwZWFrCisgICAgZnJlbmNoLCB0aGFua3MgdG8gcGF0Y2hlcyBmcm9tIENocmlzdG9waGUgTGUgQmFycyA8Y2xlYmFyc0B0ZWFzZXIuZnI+CisgICogRml4IGxlYWRpbmcgc3BhY2VzIGJlZm9yZSBkYXkgaW4gODIyLWRhdGUuCisgICogQ2hhbmdlcyBmcm9tIFRvbSBMZWVzIDx0b21AbHBzZy5kZW1vbi5jby51az4gdG8gYmV0dGVyIHN1cHBvcnQKKyAgICBidWlsZGluZyBvbiBub24tRGViaWFuIHN5c3RlbXM7IG1pbm9yIE1ha2VmaWxlIGZpeGVzLgorICAqIEFkZGVkICdwcGMgcG93ZXJwYyBwb3dlcnBjJyB0byBhcmNodGFibGUuCisgICogQ2hhbmdlZCBkb2N1bWVudGF0aW9uIHBhcGVyIHNpemUgdG8gVVMvTGV0dGVyIGluc3RlYWQgb2YgQTQgKEE0CisgICAgbWF5IGJlIGJldHRlciwgYnV0IGl0J3MgZWFzaWVyIHRvIHByaW50IFVTL0xldHRlciBvbiBBNCB0aGFuIGl0IGlzIAorICAgIHRvIHByaW50IEE0IG9uIFVTL0xldHRlcikuCisgIAorIC0tIEtsZWUgRGllbmVzIDxrbGVlQGRlYmlhbi5vcmc+ICBUdWUsICAxMyBNYXkgMTk5NyAxNToyNDozMSAtMDQwMAorCitkcGtnICgxLjQuMC4xNikgZXhwZXJpbWVudGFsOyB1cmdlbmN5PWxvdworCisgICogQWRkZWQgZ2VuZXJhdGVkIHNvdXJjZXMgdG8gR05VLWZvcm1hdCBzb3VyY2UgYXJjaGl2ZSBzbyBpdCBubyBsb25nZXIKKyAgICByZXF1aXJlcyBwZXJsIHRvIGJ1aWxkLgorCisgLS0gS2xlZSBEaWVuZXMgPGtsZWVAZGViaWFuLm9yZz4gIFNhdCwgMTAgTWF5IDE5OTcgMTc6MzQ6MjkgLTA0MDAKKworZHBrZyAoMS40LjAuMTUpIGV4cGVyaW1lbnRhbDsgdXJnZW5jeT1sb3cKKworICAqIENoYW5nZWQgZHBrZy1nZW5jaGFuZ2VzIHRvIGNoZWNrIGZvciAoJGFyY2ggPT0gJHN1YnN0dmFyeydBcmNoJ30pLCBub3QKKyAgICAoJGFyY2ggbmUgJ2FsbCcpIChmaXhlcyAjOTY4OCkuCisgICogRml4ZWQgYnVnIGluIHN0YXJ0LXN0b3AtZGFlbW9uLmMgKHdhcyB1c2luZyBvcHRhcmcgYWZ0ZXIgYXJndW1lbnQKKyAgICBwYXJzaW5nIHdhcyBvdmVyKSAoZml4ZXMgIzk1OTcsICM5NjAzLCAjOTM2NCkuCisgICogUHJvdmlkZSA1MGRwa2ctZGV2LmVsIGZvciB4ZW1hY3MgYXMgd2VsbCBhcyBlbWFjcy4KKyAgKiBFeHBsaWNpdGx5IHByb3ZpZGUgcGF0aCBmb3IgZGViaWFuLWNoYW5nZWxvZy1tb2RlIGluIDUwZHBrZy1kZXYgdG8gdXNlCisgICAgLmVsIGZpbGUgYXMgd29ya2Fyb3VuZCB1bnRpbCB4ZW1hY3MgY2FuIHJlYWQgZW1hY3MxOSAuZWxjIGZpbGVzLgorICAqIFBhc3MgdG9wX2Rpc3RkaXIgZXhwbGljaXRseSB0byAnbWFrZSBkaXN0JyB0byBhY2NvbW1vZGF0ZSBidWcgaW4KKyAgICBhdXRvbWFrZV8xLjFvLTEuCisgICogRml4IGRlYmlhbi9idWlsZCB0byBtYWtlIGh0bWwgZG9jdW1lbnRhdGlvbiB3aXRob3V0IGluY2x1ZGluZworICAgIGRpcmVjdG9yaWVzIGluIHRhciBhcmNoaXZlcyAoZml4ZXMgIzkzNDgpLgorICAKKyAtLSBLbGVlIERpZW5lcyA8a2xlZUBkZWJpYW4ub3JnPiAgRnJpLCAgOSBNYXkgMTk5NyAxMzoxNzoxOCAtMDQwMAorCitkcGtnICgxLjQuMC4xNCkgZXhwZXJpbWVudGFsOyB1cmdlbmN5PWxvdworCisgICogRml4ZWQgYnVnbGV0IGluIGluc3RhbGwtaW5mby5wbCAoZml4ZXMgIzk0MzgpLgorICAqIFJlLXdyaXRlIG9mIHVwZGF0ZS1yYy5kLnBsLCBwcmltYXJpbHkgYnkgTWlxdWVsIHZhbiBTbW9vcmVuYnVyZworICAgIDxtaXF1ZWxzQGNpc3Ryb24ubmw+IChmaXhlcyAjOTQzNCwgIzk0MzYpLgorICAqIFJlbmFtZWQgImRwa2cgUHJvZ3JhbW1lcidzIE1hbnVhbCIgdG8gImRwa2cgSW50ZXJuYWxzIE1hbnVhbCIuCisgIAorIC0tIEtsZWUgRGllbmVzIDxrbGVlQGRlYmlhbi5vcmc+ICBUdWUsICA2IE1heSAxOTk3IDIyOjAxOjA3IC0wNDAwCisKK2Rwa2cgKDEuNC4wLjEzKSBleHBlcmltZW50YWw7IHVyZ2VuY3k9bG93CisKKyAgKiBGaXggdG8gc3RhcnQtc3RvcC1kYWVtb24gc28gdGhhdCBpdCBzdGlsbCB0YWtlcyBudW1lcmljIGFyZ3VtZW50cyAoaGFkCisgICAgYmVlbiBicm9rZW4gaW4gMS40LjAuMTIpIChmaXhlcyAjOTU5OCkuCisgICogRml4IDgyMi1kYXRlIHRvIHNhbml0eS1jaGVjayBsb2NhbHRpbWUoKSBvdXRwdXQgKHNlY29uZHMgbXVzdCBiZSB0aGUKKyAgICBzYW1lIGFzIEdNVCkuCisgICogUGF0Y2ggZnJvbSBHdXkgTWFvciA8bWFvckBlY2UudXRleGFzLmVkdT4gdG8gZHBrZy1zb3VyY2UucGwgdG8gc3VwcG9ydAorICAgIHByaXN0aW5lIChNRDUtZXF1aXZhbGVudCkgdXBzdHJlYW0gc291cmNlcy4KKyAgKiBQYXRjaCBmcm9tIE1pY2hhZWwgQWxhbiBEb3JtYW4gPG1kb3JtYW5AY2FsZGVyLm1lZC5taWFtaS5lZHU+IHRvCisgICAgdXBkYXRlLXJjLmQucGwgdG8gZml4IGhhbmRsaW5nIG11bHRpcGxlIHN0YXJ0L3N0b3AgZW50cmllcyBvbiBhIHNpbmdsZQorICAgIGxpbmUuCisgICogU2V2ZXJhbCBmaXhlcyB0byBkcGtnLWdlbmNoYW5nZXMgdG8gc3VwcG9ydCAtQiBvcHRpb24gKGFkZGVkIGluCisgICAgMS40LjAuMTIpIChmaXhlcyAjOTM0MCkuCisgICogSGFuZGxlIGVycm9ycyBmcm9tIDgyMi1kYXRlIGluIGRlYmlhbi1jaGFuZ2Vsb2ctbW9kZS5lbC4KKyAgKiBDaGFuZ2VkIGNsLWRlYmlhbi5wbCB0byBjb3JyZWN0bHkgaGFuZGxlIGV4dHJhIHdoaXRlc3BhY2UgaW4gY2hhbmdlbG9nCisgICAgZGF0ZXN0YW1wcy4KKworIC0tIEtsZWUgRGllbmVzIDxrbGVlQGRlYmlhbi5vcmc+ICBNb24sICA1IE1heSAxOTk3IDE4OjEyOjQzIC0wNDAwCisKK2Rwa2cgKDEuNC4wLjEyKSBleHBlcmltZW50YWw7IHVyZ2VuY3k9bG93CisKKyAgKiBSZS13cm90ZSA4MjItZGF0ZSBmb3IgY2xhcml0eSBhbmQgdG8gc3VwcG9ydCB0aW1lem9uZSBvZmZzZXRzID49IDEyaAorICAgIChOZXcgWmVhbGFuZCBpbiBEU1QgaXMgKzEzMDAsIGZvciBleGFtcGxlKSAoZml4ZXMgIzcxMzApLgorICAqIFBhdGNoIGZyb20gSnVlcmdlbiBNZW5kZW4gPG1lbmRlbkBtb3JnYW5hLmNhbWVsb3QuZGU+IHRvIHN1cHBvcnQKKyAgICBhcmNoZGVwZW5kZW50LW9ubHkgYnVpbGRzIChmaXhlcyAjODkxMiwgIzkyNDUsICM1MzU5KS4KKyAgKiBGaXggYXJjaHRhYmxlIGVudHJ5IGZvciBwb3dlcnBjIChmaXhlcyAjODc5NCkuCisgICogU3RyaXAgL3NiaW4vKiBhbmQgL3Vzci9zYmluLyogaW4gZGViaWFuL3J1bGVzIChmaXhlcyAjODg1MykuCisgICogTW92ZWQgc3RhcnQtc3RvcC1kYWVtb24gdG8gL3NiaW4gKGZpeGVzICM4NjY5KS4KKyAgKiBTZXQgc2hhcmVkc3RhdGVkaXIgYW5kIGxvY2Fsc3RhdGVkaXIgZm9yICQoTUFLRSkgaW5zdGFsbCBpbgorICAgIGRlYmlhbi9ydWxlcyAoZml4ZXMgIzg4NTIpLgorICAqIEZpeGVzIGZvciB1cGRhdGUtcmMuZCg4KSBmcm9tIEppbSBWYW4gWmFuZHQgPGpydkB2YW56YW5kdC5tdi5jb20+CisgICAgKGZpeGVzICM4NTc2KS4KKyAgKiBObyBsb25nZXIgZG8gdmFyaWFibGUgc3Vic3RpdHV0aW9ucyB3aGVuIGdlbmVyYXRpbmcgY2hhbmdlIGZpbGUgKGZpeGVzCisgICAgIzU4NjIpLgorICAqIFN1cHBvcnQgc3ltYm9saWMgc2lnbmFsIG5hbWVzIGluIHN0YXJ0LXN0b3AtZGFlbW9uIChmaXhlcyAjNzcxNSkuCisgICogQWRkIGF1dG9sb2FkIGZvciBkZWJpYW4tY2hhbmdlbG9nLW1vZGUgdG8gL2V0Yy9lbWFjcy9zaXRlLXN0YXJ0LmQKKyAgICAoZml4ZXMgIzQ1MTksICM1ODQxKS4KKyAgKiBBZGQgcmVjb21tZW5kYXRpb24gZm9yIGdjYyBhbmQgbWFrZSBpbiBkcGtnLWRldiAoZ2NjIGlzIG5lZWRlZCBmb3IgZHBrZworICAgIC0tcHJpbnQtYXJjaGl0ZWN0dXJlLCB1c2VkIGJ5IGRwa2ctZ2VuY29udHJvbDsgbWFrZSBpcyBuZWVkZWQgZm9yIGFueQorICAgIGRlYmlhbi9ydWxlcyBmaWxlKSAoZml4ZXMgIzg0NzApLgorICAqIE1pbm9yIGNoYW5nZXMgdG8gcGFja2FnaW5nIG1hbnVhbCBzZWN0aW9uIG9uIHNvdXJjZSBwYWNrYWdlCisgICAgY29udmVyc2lvbiAoZml4ZXMgIzY4MDEpLgorICAqIFJlbmFtZWQgInByb2dyYW1tZXIncyBtYW51YWwiIHRvICdwYWNrYWdpbmcgbWFudWFsJy4KKyAgKiBTdGFydCBvZiBuZXcgInByb2dyYW1tZXIncyBtYW51YWwiIGNvbnRhaW5pbmcgaW5mb3JtYXRpb24gb24gZHBrZworICAgIGludGVybmFscyBhbmQgYnVpbGQgaW5mb3JtYXRpb24uICBUaGlzIG1hbnVhbCB1c2VzIHRoZSBuZXcKKyAgICBUZVhpbmZvLVNHTUwgZm9ybWF0LCBjdXJyZW50bHkgaW5jbHVkZWQgaW4gZG9jLy4KKyAgKiBkc2VsZWN0L3BrZ2RlcGNvbi5jYyBub3cgY2hlY2tzIGZvciBkZWJ1ZyBub3QgTlVMTCwgbm90IGp1c3QgZGVwZGVidWcuCisgICogQ2hhbmdlZCBtYWtlZmlsZXMgdG8gc3VwcG9ydCBidWlsZGluZyBvdXRzaWRlIG9mIHNvdXJjZSBkaXJlY3RvcnkuCisgICogSW5jbHVkZSBHTlUtZm9ybWF0IHNvdXJjZSBkaXN0cmlidXRpb24gd2l0aCBvdGhlciBub24tZGViaWFuIHBhY2thZ2VzLgorCisgLS0gS2xlZSBEaWVuZXMgPGtsZWVAZGViaWFuLm9yZz4gIFN1biwgIDQgTWF5IDE5OTcgMTE6MDg6MTkgLTA1MDAKKworZHBrZyAoMS40LjAuMTEpIGV4cGVyaW1lbnRhbDsgdXJnZW5jeT1sb3cKKworICAqIFBhdGNoZXMgZm9yIGFscGhhIGFuZCBsaWJjNiBmcm9tIE1pY2hhZWwgQWxhbiBEb3JtYW4KKyAgICA8bWRvcm1hbkBjYWxkZXIubWVkLm1pYW1pLmVkdT4uCisgICogRml4ZWQgbWlub3IgcHJvYmxlbXMgaW4gZHBrZy1zaGxpYmRlcHMgcmVndWxhciBleHByZXNzaW9ucyBmb3IgbGliYzYuCisgICogRml4IHJlZ2V4IHRvIGRldGVjdCBkaXJlY3RvcnkgY3JlYXRpb24gaW4gZHBrZy1zb3VyY2UucGwuCisgICogTWlub3IgY2hhbmdlcyBmb3IgYXV0b21ha2UtMS4xbi4KKworIC0tIEtsZWUgRGllbmVzIDxrbGVlQGRlYmlhbi5vcmc+ICBTdW4sIDIzIE1hciAxOTk3IDE4OjA5OjMzIC0wNTAwCisKK2Rwa2cgKDEuNC4wLjEwKSB1bnN0YWJsZTsgdXJnZW5jeT1tZWRpdW0KKworICAqIEZpeGVkIGJ1ZyBpbiBjb250cm9sbGliLnBsIChAZm93bmVyIHdhcyBlbnRpcmUgcGFzc3dkIGVudHJ5LAorICAgIG5vdCBqdXN0IFt1aWQsIGdpZF0gYXMgaXQgc2hvdWxkIGhhdmUgYmVlbikuCisKKyAtLSBLbGVlIERpZW5lcyA8a2xlZUBkZWJpYW4ub3JnPiAgVGh1LCAyMCBNYXIgMTk5NyAxMzowNjo1MiAtMDUwMAorCitkcGtnICgxLjQuMC45KSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIENoZWNrIGZwdXRzKCkgcmV0dXJuIHZhbHVlcyBmb3IgKHJldCA+PSAwKSwgbm90IChyZXQgIT0gMCkgKGZpeGVzICM3NTIyKS4KKyAgKiBkcGtnLXNobGliZGVwcyBubyBsb25nZXIgZ2l2ZXMgZXJyb3IgZm9yIEphdmEgYW5kIHN0YXRpY2FsbHkgbGlua2VkCisgICAgYmluYXJpZXMgKGZpeGVzICM0OTg4KS4KKyAgKiBDaGFuZ2UgJ2RldGFpbHMgb2YgdGhlIG9sZCBmb3JtYXQnIHRvICdkZXRhaWxzIG9mIHRoZSBuZXcgZm9ybWF0JyBpbgorICAgIGRlYi1vbGQuNSAoZml4ZXMgIzc2MDUpLgorICAqIGRwa2ctc291cmNlIC1iIG5vdyB3YXJucyAod2FzIHByZXZpb3VzbHkgc2lsZW50KSBpZiBtYWludGFpbmVyIGNoYW5nZXMKKyAgICBjcmVhdGUgbmV3IHN1YmRpcmVjdG9yaWVzLiAgZHBrZy1zb3VyY2UgLXggbm93IHdhcm5zIChwcmV2aW91c2x5IGdhdmUKKyAgICBlcnJvcikgaWYgbWFpbnRhaW5lciBjaGFuZ2VzIGNyZWF0ZSBuZXcgc3ViZGlyZWN0b3JpZXMgKHBhcnRpYWxseQorICAgIGZpeGVzICM2ODY2LCAjNjY3MSwgIzUwNDUsICM2NDgyKS4gICAgCisgICogQWRkZWQgbWFudWFsIHBhZ2UgZm9yIHN0YXJ0LXN0b3AtZGFlbW9uICg4KS4gCisgICogQWRkZWQgQyB2ZXJzaW9uIG9mIHN0YXJ0LXN0b3AtZGFlbW9uIGJ5IAorICAgIE1hcmVrIE1pY2hhbGtpZXdpY3ogPG1hcmVrbUBpMTdsaW51eGIuaXN0cy5wd3Iud3JvYy5wbD4gKGZpeGVzICMxNjcwKS4KKyAgKiBDb252ZXJ0ZWQgdG8gdXNlIEdOVSBhdXRvbWFrZSBmb3IgdGhlIGJ1aWxkIHByb2Nlc3MgYnkgVG9tIExlZXMgCisgICAgPHRvbUBscHNnLmRlbW9uLmNvLnVrPi48CisgICogUHJlbGltaW5hcnkgc3VwcG9ydCBmb3IgZHBrZyBmdW5jdGlvbnMgYXMgYSBzaGFyZWQgbGlicmFyeSAobm93CisgICAgcHJvdmlkZXMgbGliZHBrZy5zbywgYnV0IG11Y2ggd29yayBuZWVkcyB0byBiZSBkb25lIGluIGJldHRlcgorICAgIHNlZ3JlZ2F0aW5nIGFuZCBkZWZpbmluZyB0aGUgaW50ZXJmYWNlKS4KKyAgKiBQcmVsaW1pbmFyeSBpbnRlcm5hdGlvbmFsaXphdGlvbiBzdXBwb3J0IGJ5IEdhbGVuIEhhemVsd29vZAorICAgIDxnYWxlbmhAZGViaWFuLm9yZz4uICBPbmx5IHRoZSBsaWJyYXJ5LCBkcGtnLWRlYiwgbWQ1c3VtLCBhbmQgZHBrZworICAgIGhhdmUgYmVlbiBjb252ZXJ0ZWQgc28gZmFyLiAgTm8gdHJhbnNsYXRpb25zIGhhdmUgeWV0IGJlZW4KKyAgICBjb25zdHJ1Y3RlZC4KKyAgKiBIYW5kbGUgJ2xpYmMuc28uNiA9PiAvbGliL2xpYmMuc28uNiAoMHg0MDAxMDAwMCknIGZvcm1hdCBmcm9tIGxpYmM2CisgICAgbGRkIChmaXhlcyAjNzYwMywgIzc5MjYsICM4Njg4LCAjOTE3OSwgIzkxMzQsICM4NTE2KS4KKyAgKiBSZW1vdmVkIHBvbGljeS5zZ21sIChpdCBoYXMgYmVlbiBtb3ZlZCB0byB0aGUgZGViaWFuLXBvbGljeSBwYWNrYWdlKS4KKyAgKiBJbmNsdWRlIHBhdGNoIGZyb20gRGFycmVuIFN0YWxkZXIgPHRvcmluQGRhZnQuY29tPiBmb3IKKyAgICBkcGtnLWJ1aWxkcGFja2FnZSB0byBjaG9vc2UgUEdQIGtleSBiYXNlZCBvbiBNYWludGFpbmVyOiBmaWVsZCBvZiAKKyAgICBwYWNrYWdlIGJlaW5nIGJ1aWx0IChvciAtbTxtYWludGFpbmVyPiBvcHRpb24sIGlmIHByZXNlbnQpIChmaXhlcyAKKyAgICAjNzg5OCkuCisgICogQ2hhbmdlZCBjb250cm9sbGliLnBsIHRvIHVzZSAkRU5We0xPR05BTUV9LCBnZXRsb2dpbigpLCBhbmQgJDwKKyAgICAoaW4gdGhhdCBvcmRlcikgdG8gZGV0ZXJtaW5lIHRoZSBpbnRlbmRlZCBvd25lcnNoaXAgb2YgCisgICAgZGViaWFuL3tmaWxlcyxzdWJzdHZhcnN9LCAgKGZpeGVzICM3MzI0LCAjNjgyMywgIzU2NTksICM1OTY1LCAjNTkyOSwKKyAgICAjOTIzOSwgIzUzNjYpLgorICAqIERvbid0IHNpZ24gLmRzYyBmaWxlIGluIGRwa2ctYnVpbGRwYWNrYWdlIGlmIGJ1aWxkaW5nIGEgYmluYXJ5LW9ubHkKKyAgICByZWxlYXNlIChmaXhlcyAjNzI2MCkuCisgICogVXBkYXRlZCBkZXZlbG9wZXIta2V5cy5wZ3AgdG8gbGF0ZXN0IHJldmlzaW9uIChmaXhlcyAjNjEzNCkuCisgIAorIC0tIEtsZWUgRGllbmVzIDxrbGVlQGRlYmlhbi5vcmc+ICBNb24sIDE3IE1hciAxOTk3IDE2OjExOjI0IC0wNTAwCisKK2Rwa2cgKDEuNC4wLjgpIHVuc3RhYmxlOyB1cmdlbmN5PW1lZGl1bQorCisgICogQ29ycmVjdGVkIHVwZGF0ZS1yYy5kIGZvciBiYXNoIDIuMAorICAqIFVwZGF0ZWQgZGV2ZWxvcGVyLWtleXMucGdwIGZyb20KKyAgICBodHRwOi8vd3d3LmlraS5maS9saXcvZGViaWFuL2RlYmlhbi1rZXlyaW5nLnRhci5negorCisgLS0gR3V5IE1hb3IgPG1hb3JAZWNlLnV0ZXhhcy5lZHU+ICBNb24sIDMgRmViIDE5OTcgMDQ6MDU6MDEgLTA2MDAKKworZHBrZyAoMS40LjAuNykgc3RhYmxlIHVuc3RhYmxlOyB1cmdlbmN5PUhJR0gKKworICAqIEZpeGVkIC0tYXNzZXJ0LXN1cHBvcnQtcHJlZGVwZW5kcyBmYWlsaW5nIGJldHdlZW4gdW5wYWNrICYgY29uZmlndXJlLgorICAqIEFkZGVkIC0tYXNzZXJ0LXdvcmtpbmctZXBvY2ggb3B0aW9uLgorCisgLS0gR3V5IE1hb3IgPG1hb3JAZWNlLnV0ZXhhcy5lZHU+ICBTYXQsIDI1IEphbiAxOTk3IDIzOjAyOjExIC0wNjAwCisKK2Rwa2cgKDEuNC4wLjYpIHN0YWJsZSB1bnN0YWJsZTsgdXJnZW5jeT1oaWdoCisKKyAgKiBQYXRjaGVkIGxpYi92ZXJjbXAuYyB0byBob3BlZnVsbHkgZml4IGRzZWxlY3QgZXBvY2ggcHJvY2Vzc2luZworICAgIChCdWcjNjIwNCksIChCdWcjNDU5MCkuCisgICogUGF0Y2hlZCBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLCBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcywKKyAgICBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbCBmb3IgZXBvY2ggcHJvY2Vzc2luZywgY291cnRlc3kgb2YgTG9pYyBQcnlsbGkgCisgICAgPGxwcnlsbGlAZ3JhdmlsbGUuZmRuLmZyPiAoQnVnIzYxMzgsIEJ1ZyM1MjI1KS4KKyAgKiBQYXRjaGVkIGRwa2ctZ2VuY2hhbmdlcyB0byBhY3R1YWxseSBob25vciB0aGUgLXUgc3dpdGNoIHRvIHNwZWNpZnkKKyAgICBkaXJlY3RvcnkgKEJ1ZyM1NTY0KS4KKyAgKiBBcHBsaWVkIHBhdGNoIHRvIG1haW4vYXJjaGl2ZS5jIHRvIGNvcnJlY3QgcHJvYmxlbXMgc2V0dGluZyBzZXRbZ3VdaWQKKyAgICBiaW5hcmllcywgY291cnRlc3kgb2YgSGVyYmVydCBYdSA8aGVyYmVydEBncmVhdGhhbi5hcGFuYS5vcmcuYXU+CisgICAgKEJ1ZyM1NDc5KS4gCisgICogQXBwbGllZCBwYXRjaCB0byBkcGtnLXNvdXJjZSB0byBjb3JyZWN0IGRlYmlhbi1vbmx5IHBhY2thZ2UgbmFtZXMsCisgICAgY291cnRlc3kgb2YgR3V5IE1hb3IgPG1hb3JAZWNlLnV0ZXhhcy5lZHU+IChCdWcjNTM1NSkuCisKKyAtLSBNaWNoYWVsIEFsYW4gRG9ybWFuIDxtZG9ybWFuQGNhbGRlci5tZWQubWlhbWkuZWR1PiAgVGh1LCAyIEphbiAxOTk3IDExOjM2OjA5IC0wNTAwCisKK2Rwa2cgKDEuNC4wLjUpIHN0YWJsZSBmcm96ZW4gdW5zdGFibGU7IHVyZ2VuY3k9bWVkaXVtCisKKyAgKiBEaXN0cmlidXRpb24gZm9yIGZyb3plbiB0b28uCisKKyAtLSBIZWlrbyBTY2hsaXR0ZXJtYW5uIDxoZWlrb0Bsb3R0ZS5zYXguZGU+ICBUaHUsIDUgRGVjIDE5OTYgMDk6MTM6NDIgKzAxMDAKKworZHBrZyAoMS40LjAuNCkgc3RhYmxlIHVuc3RhYmxlOyB1cmdlbmN5PW1lZGl1bQorCisgICogQnVnMjk2MiBmaXhlZDogcGF0Y2ggZnJvbSBJYW4gSmFja3NvbiBhcHBsaWVkCisgICAgKGN1cnNvciBrZXlzIHdvbid0IHdvcmsgYWZ0ZXIgc2VhcmNoKQorICAqIE1hbnVhbHMgMi4xLjIuMgorCisgLS0gSGVpa28gU2NobGl0dGVybWFubiA8aGVpa29AbG90dGUuc2F4LmRlPiAgRnJpLCAxNSBOb3YgMTk5NiAyMDoyMToxOCArMDEwMAorCitkcGtnICgxLjQuMC4zKSB1bnN0YWJsZTsgdXJnZW5jeT1tZWRpdW0KKworICAqIGRwa2ctc291cmNlIC14OiBjcmVhdGVkIGJhZCBwZXJtaXNzaW9ucyAoc2V0IHgtYml0IGZvcgorICAgIGFsbCBmaWxlcyBwb2ludGVkIHRvIGJ5IGEgc3ltbGluaykKKworIC0tIEhlaWtvIFNjaGxpdHRlcm1hbm4gPGhlaWtvQGxvdHRlLnNheC5kZT4gIEZyaSwgMTggT2N0IDE5OTYgMTg6MzI6MDYgKzAyMDAKKworZHBrZyAoMS40LjAuMikgdW5zdGFibGU7IHVyZ2VuY3k9bWVkaXVtCisKKyAgKiBkcGtnLWJ1aWxkcGFja2FnZS5zaDogcmV2ZXJ0ZWQgdGhlIHF1b3RpbmcgY2hhbmdlIC0tICh5b3UKKyAgICBzaG91bGQgdXNlIHN1cGVyLCBzdWRvLCByZWFsbHksIGJ1dCBub3Qgc3UuICBPciB3cml0ZSBhIHdyYXBwZXIKKyAgICBhcm91bmQgc3UpCisgICogZHBrZy1idWlsZHBhY2tnZS5zaDogcGFzc2luZyAtbSwgLUMsIC12IG9wdGlvbnMgdG8gZHBrZy1nZW5jaGFuZ2VzCisgICAgbW9yZSB0aGUgd2F5IElhbiBsaWtlcyA7LSkKKyAgKiBkcGtnLXNvdXJjZS5wbDogbmV3IGZ1bmN0aW9uIGRlb2N0aWZ5KCkgYXMgcmVwbGFjZW1lbnQgZm9yIGV2YWwoKQorICAgICh0dXJuIFxkZGQgaW50byB0aGUgY29ycmVzcG9uZGluZyBjaGFyYWN0ZXIpIFtyZW06IHByb2JhYmx5IGJldHRlcgorICAgIHNvbHV0aW9uIHdvdWxkIGJlIHRvIGNvbnZlcnQgY3Bpb3Mgb3V0cHV0IG5hbWVzIGludG8gY29tcGxldGUgXGRkZCAKKyAgICByZXByZXNlbnRhdGlvbiBhcyB3ZWxsIHRhcnMgb3V0cHV0IG5hbWVzXSAKKyAgKiBkcGtnLXNvdXJjZS5wbDogZml4ZWQgMiB0eXBvcyBpbiBmYWlsdXJlIG1lc3NhZ2Ugb24gY3JlYXRpbmcgCisgICAgJG9yaWd0YXJnei50bXAtbmVzdC4KKyAgKiBtYWluL21haW4uYzogdHlwbyBgdHJlYWQnIC0+IGB0cmVhdCcKKyAgKiBtYWluL2VucXVpcnkuYzogZml4ZWQgdGhlIGlnbm9yYW5jZSBmb3Igc29tZSByZWxhdGlvbnMgaW4gLS1jb21wYXJlLXZlcnNpb25zCisgICogbWFpbi9lbnF1aXJ5LmM6IG1pc3NpbmcgdmVyc2lvbiBpcyBub3cgaGFuZGxlZCBhcyBkZXNjcmliZWQgaW4gYGRwa2cgLS1oZWxwJworICAgIChvciBhdCBsZWFzdCBhcyBJIHVuZGVyc3Rvb2QgYGRwa2cgLS1oZWxwJyBQTEVBU0UgVFJZIElUKQorICAqIGxpYi9wYXJzZWhlbHAuYzogZml4ZWQgcGFyc2luZyBvZiBlcG9jaCBpbmZvcm1hdGlvbgorCisgLS0gSGVpa28gU2NobGl0dGVybWFubiA8aGVpa29AbG90dGUuc2F4LmRlPiAgU3VuLCA2IE9jdCAxOTk2IDIzOjI3OjQ3ICswMjAwCisKK2Rwa2cgKDEuNC4wLjEpIHVuc3RhYmxlOyB1cmdlbmN5PW1lZGl1bQorCisgICogZHBrZy1zb3VyY2U6IGRvZXNuJ3QgZ2V0IHNjcmV3ZWQgdXAgZnJvbSBoYXJkbGlua3MKKyAgICBpbiB0aGUgYXJjaGl2ZSBub3cKKyAgKiBkcGtnLXNvdXJjZTogZG9lc24ndCBnZXQgc2NyZXdlZCB1cCBmcm9tIGB1bnByaW50YWJsZScgY2hhcmFjdGVycworICAgIGluIGZpbGUgbmFtZXMgKGUuZy4gZnJvbSB0aGUga2JkIHBhY2thZ2UpIAorICAqIGNvbnRyb2xsaWIucGw6ICR2YXJsaXN0dmlsZSAtPiAkdmFybGlzdGZpbGUgKHRoYW54IEthcmwgU2Fja2V0dCkKKyAgKiBkcGtnLWJ1aWxkcGFja2dlOiBxdW90aW5nIGZvciAkcm9vdGNvbW1hbmQgKHRoYW54ICBNaWNoYWVsIE1lc2tlcykKKyAgICBhbmQgYGV2YWwnIGFzIGRlZmF1bHQgJHJvb3Rjb21tYW5kCisgICogZHBrZy0qLCBjb250cm9sbGliLnBsOiBjcmVhdGVkIGRlYmlhbi9maWxlcyBhbmQgZGViaWFuL3N1YnN0dmFycworICAgIGFyZSBjaG93bidlZCB0byBgZ2V0bG9naW4oKScgYW5kIGl0cyBncm91cAorICAqIGRvYy86IG12IGNoYW5nZWQgdG8gbXYgLWYKKyAgKiBkcGtnLWJ1aWxkcGFja2FnZTogYWRkZWQgYW4gb3B0aW9uIC1hIGZvciBvdmVycmlkaW5nIHRoZQorICAgIGFyY2hpdGVjdHVyZSBpbiB0aGUgY2hhbmdlcyBfZmlsZV9uYW1lXworICAqIGRwa2ctYnVpbGRwYWNrYWdlOiBwYXNzIC1tKiAtdiogLi4gb3B0aW9ucyB0byBkcGdrLWdlbmNoYW5nZWxvZworICAqIGRwa2ctbmFtZSBtb3ZlZCB0byBkcGtnLWRldgorCisgLS0gSGVpa28gU2NobGl0dGVybWFubiA8aGVpa29AbG90dGUuc2F4LmRlPiAgU2F0LCAyMSBTZXAgMTk5NiAyMjowNjowMSArMDIwMAorCitkcGtnICgxLjQuMCkgdW5zdGFibGU7IHVyZ2VuY3k9bG93IChISUdIIGZvciBuZXcgc291cmNlIGZvcm1hdCkKKworICAqIENvcnJlY3RlZCBidWZmZXIgb3ZlcnJ1biB3aGVuIGRwa2ctZGViIGdlbmVyYXRlcyBmaWxlbmFtZS4gIChCdWcjNDQ2Ny4pCisgICogZHBrZy1zaGxpYmRlcHMgd29ya3Mgd2l0aCBERUJJQU4vc2hsaWJzICh0aGFua3MgSGVpa28gU2NobGl0dGVybWFubikuCisgICogQWRkZWQgbGlibS5zby41IHRvIHNobGlicy5kZWZhdWx0IGZvciBpMzg2L202OGsuCisKKyAgKiBTcGxpdCBiaW5hcnkgcGFja2FnZSBpbnRvIHR3bzogZHBrZyBhbmQgZHBrZy1kZXYuCisgICogZHBrZy1zb3VyY2UoMSkgZG9jdW1lbnRzIG1vZGUgYW5kIG93bmVyc2hpcCBzZXR0aW5nIGR1cmluZyBleHRyYWN0aW9uLgorCisgICogZHBrZy1zY2FucGFja2FnZXMgbW92ZWQgdG8gL3Vzci9iaW4uCisgICogSW5jbHVkZSAvdXNyL2Jpbi9kcGtnLWRlYiwgbm90IGRwa2ctZGViLmRpc3Q7IGRvbid0IHJlbmFtZSBpbiBzY3JpcHRzLgorICAqIENvcHlyaWdodCBmaWxlIGNoYW5nZWQgc2xpZ2h0bHkuCisgICogZGViaWFuLWNoYW5nZWxvZy1tb2RlIHVzZXMgbWFnaWMga2V5IHN1YnN0aXR1dGlvbiBzdHJpbmdzLiAgKEJ1ZyM0NDE5LikKKyAgKiBDaGFuZ2VkIGVtYWlsIGFkZHJlc3MgaW4gY29udHJvbCBmaWxlIHRvIDxpYW5AY2hpYXJrLmdyZWVuZW5kLm9yZy51az4uCisgICogTWFudWFscyBhbmQgb3duIFN0YW5kYXJkcy1WZXJzaW9uOiB1cGRhdGVkIHRvIDIuMS4xLjAuCisKKyAtLSBJYW4gSmFja3NvbiA8aWFuQGNoaWFyay5ncmVlbmVuZC5vcmcudWs+ICBUaHUsIDEyIFNlcCAxOTk2IDAxOjEzOjMzICswMTAwCisKK2Rwa2cgKDEuMy4xNCkgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBkcGtnLWJ1aWxkcGFja2FnZSBuZXcgLXRjIChjbGVhbiBzb3VyY2UgdHJlZSkgb3B0aW9uLgorCisgICogRm9ybWF0dGVkIGRvY3VtZW50YXRpb24gcmVtb3ZlZCBieSBgbWFrZSBjbGVhbicgYW5kIHNvIG5vdCBpbiBzb3VyY2UuCisgICogTWFudWFscyBhbmQgb3duIFN0YW5kYXJkcy1WZXJzaW9uOiB1cGRhdGVkIHRvIDIuMS4wLjAuCisgICogRGlzdHJpYnV0ZSB7cG9saWN5LHByb2dyYW1tZXJ9LntodG1sLnRhcixwc30uZ3ogd2l0aCBlYWNoIHVwbG9hZC4KKworIC0tIElhbiBKYWNrc29uIDxpYW5AY2hpYXJrLmNodS5jYW0uYWMudWs+ICBTdW4sIDEgU2VwIDE5OTYgMjA6NDM6NDAgKzAxMDAKKworZHBrZyAoMS4zLjEzKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cgKEhJR0ggZm9yIGJ1aWxkaW5nIG5ldyBzcmMgWCBwcm9ncmFtcykKKworICAqIFggc2hhcmVkIGxpYnJhcmllcyBhZGRlZCB0byBzaGxpYnMuZGVmYXVsdCAoPT4gYGVsZi14MTFyNmxpYicpLgorICAqIGRwa2ctc291cmNlIHRhciBpbnZvY2F0aW9uIGZpeGVkIHNvIHRoYXQgVEFQRSBlbnYgdmFyIGRvZXNuJ3QgYnJlYWsgaXQuCisgICogZHBrZy1zb3VyY2UgY29wZXMgYmV0dGVyIHdpdGggbWlzc2luZyBmaW5hbCBuZXdsaW5lIG1lc3NhZ2VzIGZyb20gZGlmZi4KKworICAqIGRwa2ctYnVpbGRwYWNrYWdlIHVzYWdlIG1lc3NhZ2UgZml4ZWQ6IC1zaSBpcyB0aGUgZGVmYXVsdC4gIChCdWcjNDM1MC4pCisgICogZHBrZy1zb3VyY2UgZXJyb3IgbWVzc2FnZSBhYm91dCBzcmMgZGlyIG1pc21hdGNoIHR5cG8gZml4ZWQuICAoQnVnIzQzNDkuKQorCisgICogZHBrZy1zb3VyY2UoMSkgaGFzIHN1Z2dlc3Rpb25zIGZvciBkcGtnLWJ1aWxkcGFja2FnZSAtciBvcHRpb24uCisgICogZHBrZy1zb3VyY2UgY2hhbmdlIGRhdGUgZml4ZWQuICAoQnVnIzQzNTEuKQorICAqIE1vcmUgZGV2ZWxvcGVycycga2V5cy4KKyAgKiBNYW51YWwgdXBkYXRlcywgb3duIFN0YW5kYXJkcy1WZXJzaW9uIHVwZGF0ZWQuCisKKyAtLSBJYW4gSmFja3NvbiA8aWFuQGNoaWFyay5jaHUuY2FtLmFjLnVrPiAgU2F0LCAzMSBBdWcgMTk5NiAyMDowODoxOCArMDEwMAorCitkcGtnICgxLjMuMTIpIHVuc3RhYmxlOyB1cmdlbmN5PW1lZGl1bQorCisgICogZHBrZyBwcmludHMgb2xkIHZlcnNpb24gbnVtYmVyIHdoZW4gdXBncmFkaW5nLiAgKEJ1ZyM0MzQwLikKKyAgKiBkcGtnLWRlYiB0cmllcyB0byBkZXRlY3QgYW5kIGZsYWcgY29ycnVwdGlvbiBieSBBU0NJSSBkb3dubG9hZC4KKworICAqIGRwa2ctZ2VuY2hhbmdlcyBhbmQgZHBrZy1idWlsZHBhY2thZ2Ugc2F5IHdoYXQgc291cmNlIGlzIGluY2x1ZGVkLgorCisgICogZHBrZy1idWlsZHBhY2thZ2UgcGFzc2VzICtjbGVhcnNpZz1vbiB0byBQR1AgKG9yIHBncGNvbW1hbmQpLiAgKEJ1ZyM0MzQyLikKKworICAqIGRwa2ctc291cmNlIHByaW50cyBiZXR0ZXIgZXJyb3IgZm9yIGNwaW8gbm90IGhvbm91cmluZyAtMHQuCisgICogY29udHJvbCBmaWxlIFN1Z2dlc3RzIGNwaW8gPj0gMi40LjIsIHJhdGhlciB0aGFuIGp1c3QgY3Bpby4KKworIC0tIElhbiBKYWNrc29uIDxpYW5AY2hpYXJrLmNodS5jYW0uYWMudWs+ICBGcmksIDMwIEF1ZyAxOTk2IDE1OjMxOjUxICswMTAwCisKK2Rwa2cgKDEuMy4xMSkgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBFQlVTWSB3aGVuIGRwa2cgcmVtb3ZlcyBhIGRpcmVjdG9yeSBpcyBvbmx5IGEgd2FybmluZy4KKworICAqIGRwa2ctZ2VuY2hhbmdlcyBnZW5lcmF0ZXMgc2Vuc2libGUgd2FybmluZyAobm90IGNvbmZ1c2luZyBlcnJvcgorICAgIGFib3V0IG1pc21hdGNoKSBmb3IgbWlzc2luZyBTZWN0aW9uL1ByaW9yaXR5IGluIGJpbmFyeSBwYWNrYWdlcy4KKworICAqIEFkZGVkIGRwa2cgLS1wcmludC1nbnUtYnVpbGQtYXJjaGl0ZWN0dXJlIG9wdGlvbi4KKyAgKiBzaGxpYnMuZGVmYXVsdCBmb3IgbTY4ayBwcm92aWRlZCwgYXMgYSBjb3B5IG9mIGkzODYgdmVyc2lvbi4KKworIC0tIElhbiBKYWNrc29uIDxpYW5AY2hpYXJrLmNodS5jYW0uYWMudWs+ICBUaHUsIDI5IEF1ZyAxOTk2IDE0OjA1OjAyICswMTAwCisKK2Rwa2cgKDEuMy4xMCkgdW5zdGFibGU7IHVyZ2VuY3k9bWVkaXVtCisKKyAgKiBkcGtnLXNvdXJjZSgxKSBtYW5wYWdlIGFsaWFzIHN5bWxpbmtzIGFyZSBub3QgZGFuZ2xpbmcuCisgICogZHNlbGVjdCBzZWxlY3RzIHRoaW5ncyBieSBkZWZhdWx0IGlmIHRoZXkgYXJlIGluc3RhbGxlZC4KKyAgKiBBZGRlZCBgcGVudGl1bScgYXMgYWxpYXMgZm9yIGBpMzg2JyBhcmNoaXRlY3R1cmUuCisgICogQWRkZWQgYFN1Z2dlc3RzOiBjcGlvLCBwYXRjaCcgYW5kIGV4cGxhbmF0b3J5IHRleHQgdG8gRGVzY3JpcHRpb24uCisgICAgKEJ1Z3MgIzQyNjIsICM0MjYzLikKKworICAqIE1vcmUgZGV2ZWxvcGVycycgUEdQIGtleXMuCisgICogTWFudWFsIHVwZGF0ZXMsIG5ldyBzb3VyY2UgZm9ybWF0IHJlbGVhc2VkLgorCisgLS0gSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuY2h1LmNhbS5hYy51az4gIE1vbiwgMjYgQXVnIDE5OTYgMTQ6MzA6NDQgKzAxMDAKKworZHBrZyAoMS4zLjkpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdyAoaGlnaCBmb3IgbmV3IHNvdXJjZSBmb3JtYXQpCisKKyAgKiBkcGtnIC0tZ2V0LXNlbGVjdGlvbnMgYW5kIC0tc2V0LXNlbGVjdGlvbnMgYWRkZWQuCisgICogTmV3IGRwa2cgLS1mb3JjZS1ub3Qtcm9vdCBmbGFnLgorCisgICogRG9uJ3QgcmVwbGFjZSBkaXJlY3Rvcnkgd2l0aCBhbm90aGVyIHBhY2thZ2UncyBmaWxlLiAgKEJ1ZyM0MjAyLikKKworICAqIEFsbCBtYW5wYWdlcyBub3cgaW5zdGFsbGVkIGNvbXByZXNzZWQuCisgICogQ29weXJpZ2h0IGZpbGUgbW92ZWQgdG8gL3Vzci9kb2MvZHBrZy9jb3B5cmlnaHQuCisgICogU3RhbmRhcmRzLVZlcnNpb24gdXBkYXRlZCAoMC4yLjEuMSkuCisKKyAtLSBJYW4gSmFja3NvbiA8aWFuQGNoaWFyay5jaHUuY2FtLmFjLnVrPiAgU2F0LCAyNCBBdWcgMTk5NiAxOTowOTozMCArMDEwMAorCitkcGtnICgxLjMuOCkgdW5zdGFibGU7IHVyZ2VuY3k9bG93IChoaWdoIGZvciBuZXcgc291cmNlIGZvcm1hdCkKKworICAqIGRwa2ctYnVpbGRwYWNrYWdlIC1zYSwgLXNpIG9wdGlvbnMgd29yayBjb3JyZWN0bHkuCisKKyAgKiB1cGRhdGUtcmMuZCg4KSB1cGRhdGVkIHRvIHJlZmxlY3QgZGVzaWduIGFuZCByZWFsaXR5LgorICAqIFByb2dyYW1tZXJzJyBhbmQgcG9saWN5IG1hbnVhbCB1cGRhdGVzLgorCisgLS0gSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuY2h1LmNhbS5hYy51az4gIEZyaSwgMjMgQXVnIDE5OTYgMTI6NDg6MjYgKzAxMDAKKworZHBrZyAoMS4zLjcpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdyAobWVkaXVtIGZvciBzb3VyY2UgcGtnIGRvY3MpCisKKyAgKiBkc2VsZWN0ICsvLS9fLz0gb24gbGluZXMgZm9yIGFsbCBicm9rZW4sIG5ldywgbG9jYWwgb3Igd2hhdGV2ZXIKKyAgICBwYWNrYWdlcyBkbyBub3QgYWZmZWN0IF9hbGxfIHBhY2thZ2VzLiAgKEJ1ZyM0MTI5LikKKworICAqIFN1cHBvcnQgZm9yIGRpZmYtb25seSB1cGxvYWRzIGluIHNvdXJjZSBwYWNrYWdpbmcgdG9vbHMuCisgICogZHBrZy1nZW5jaGFuZ2VzIC1kPGRlc2NyaXBmaWxlPiBvcHRpb24gcmVuYW1lZCB0byAtQy4KKyAgKiBkcGtnLWJ1aWxkcGFja2FnZSB1bmRlcnN0YW5kcyAtbSwgLXYsIC1DIChmb3IgZHBrZy1nZW5jaGFuZ2VzKS4KKyAgKiBTdXBwb3J0IGZvciBkZWJpYW4vc2hsaWJzLmxvY2FsIGFkZGVkIHRvIGRwa2ctc2hsaWJkZXBzLgorICAqIFNoYXJlZCBsaWJyYXJ5IGZpbGVzJyBzZWFyY2ggb3JkZXIgZGVmaW5lZCBpbiBkcGtnLXNvdXJjZSgxKSwgYW5kCisgICAgcmVsZXZhbnQgZmlsZXMgYWRkZWQgdG8gdGhlIEZJTEVTIHNlY3Rpb24uCisKKyAgKiBQcm9ncmFtbWVycycgbWFudWFsIGRlc2NyaWJlcyBzb3VyY2UgcGFja2FnaW5nIHRvb2xzLgorICAqIFBvbGljeSBtYW51YWwgbWVudGlvbnMgc2hhcmVkIGxpYnJhcnkgY29udHJvbCBhcmVhIGZpbGUuCisgICogZHBrZy1zb3VyY2UgbWFucGFnZSBpbmNsdWRlcyBkcGtnLXNobGliZGVwcyBpbiB0aXRsZSBsaW5lLgorICAqIE1hbnVhbHMgaGF2ZSBjaGFuZ2Vsb2cgYW5kIGF1dG9tYXRpYyB2ZXJzaW9uIG51bWJlcmluZy4KKyAgKiBjaGFuZ2Vsb2dzIChmb3IgZHBrZyBhbmQgZm9yIG1hbnVhbHMpIGluc3RhbGxlZC4KKyAgKiBiaW5hcnkgdGFyZ2V0IHNwbGl0IGludG8gYmluYXJ5LWFyY2ggYW5kIGJpbmFyeS1pbmRlcCBpbiBtYW51YWwuCisgICogTWFucGFnZXMgc2hvdWxkIGJlIGNvbXByZXNzZWQuCisgICogQ29weXJpZ2h0IGZpbGUgaXMgbW92ZWQgdG8gL3Vzci9kb2MvPHBhY2thZ2U+L2NvcHlyaWdodC4KKyAgKiBDaGFuZ2Vsb2dzIG11c3QgYmUgaW5zdGFsbGVkIGluIC91c3IvZG9jLzxwYWNrYWdlPi4KKyAgCisgICogZHBrZy1kZWIoOCkgbW92ZWQgdG8gZHBrZy1kZWIoMSkuCisKKyAgKiBiaW5hcnkgdGFyZ2V0IHNwbGl0IGludG8gYmluYXJ5LWFyY2ggYW5kIGJpbmFyeS1pbmRlcCBpbiBzb3VyY2UuCisgICogY2hhbmdlbG9nIGVudHJ5IGZvciAxLjIuMTQgY29waWVkIGZyb20gdGhhdCAoZm9ya2VkKSByZWxlYXNlLgorCisgLS0gSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuY2h1LmNhbS5hYy51az4gIFRodSwgMjIgQXVnIDE5OTYgMTU6MzY6MTIgKzAxMDAKKworZHBrZyAoMS4zLjYpIGV4cGVyaW1lbnRhbDsgdXJnZW5jeT1sb3cgKEhJR0ggZm9yIG5ldyBzb3VyY2UgZm9ybWF0KQorCisgICogZHBrZy1zb3VyY2Ugbm93IGhhcyBicm9rZW4gYXJndW1lbnQgdW5wYXJzaW5nIGZvciB0YXIuICAoQnVnIzQxOTUuKQorCisgICogZHBrZy1nZW5jb250cm9sIHdyaXRlcyB0byBkZWJpYW4vdG1wL0RFQklBTi9jb250cm9sIGJ5IGRlZmF1bHQuCisgICogZHBrZy1zaGxpYmRlcHMgc2NyaXB0IGFkZGVkLgorCisgICogQmFjayB0byBvbGQgc2ggdXBkYXRlLXJjLmQsIGFuZCByZW1vdmVkIG1hbnBhZ2UsIGJlY2F1c2UgbmV3IFBlcmwKKyAgICB2ZXJzaW9uIGFuZCB0aGUgbWFucGFnZSBoYXZlIGRpZmZlcmVudCBzeW50YXggYW5kIHNlbWFudGljcy4KKyAgKiB1cGRhdGUtcmMuZCBwcmludHMgdXNhZ2UgbWVzc2FnZSBmb3IgbWlzc2luZyB0ZXJtaW5hbCBgLicuICAoQnVnIzQxMjIuKQorCisgICogVXNlIHJtIC1yZiBpbnN0ZWFkIG9mIGp1c3Qgcm0gLXIgaW4gZHBrZy1kZWIgLS1pbmZvICZjLiAgKEJ1ZyM0MjAwLikKKworICAqIEFkZGVkIHN1cHBvcnQgZm9yIEluc3RhbGxlZC1TaXplIHRvIGRwa2ctZ2VuY29udHJvbCwgYW5kIGRvY3VtZW50ZWQuCisgICogU291cmNlIHBhY2thZ2luZyBzdWJzdGl0dXRpb24gdmFyaWFibGVzIGFuZCBuYW1lIHN5bnRheCByYXRpb25hbGlzZWQuCisgICogZHBrZy1zb3VyY2Ugc2NyaXB0cycgdXNhZ2UgbWVzc2FnZXMgaW1wcm92ZWQgc2xpZ2h0bHkuCisgICogZHBrZy1zb3VyY2Ugd29ya3Mgd2l0aCBub24tZW1wdHkgc2Vjb25kIChvcmlnIGRpcikgYXJndW1lbnQuCisKKyAgKiBBZGRlZCByYXRpb25hbGUgZm9yIGNvcHlyaWdodCBwb2xpY3kgdG8gbWFudWFsLgorICAqIE1vcmUgZGV2ZWxvcGVycycgUEdQIGtleXMuCisgICogQ29udHJvbCBkYXRhYmFzZSBoYW5kbGluZyBjbGVhbnVwcyAodXN1LiBTb3VyY2UgZmllbGQgYmxhbmtlZCkuCisKKyAtLSBJYW4gSmFja3NvbiA8aWFuQGNoaWFyay5jaHUuY2FtLmFjLnVrPiAgVHVlLCAyMCBBdWcgMTk5NiAxNTozOTo1OCArMDEwMAorCitkcGtnICgxLjMuNSkgZXhwZXJpbWVudGFsOyB1cmdlbmN5PWxvdyAoaGlnaCBmb3IgZGViaWFuLWNoYW5nZWxvZy1tb2RlKQorCisgICogODIyLWRhdGUgc2NyaXB0IGluY2x1ZGVkLiAgKEJ1ZyM0MTM2LikKKyAgKiBkZWJpYW4tY2hhbmdlbG9nLWFkZC12ZXJzaW9uIHdvcmtzIG9uIGVtcHR5IGZpbGUuCisgICogZGViaWFuLWNoYW5nZWxvZy1tb2RlIG1vZGUtaGVscCB3b3JrcyBwcm9wZXJseS4KKworICAqIGRwa2ctc291cmNlIHRlbGxzIHBhdGNoIG5vdCB0byBtYWtlIG51bWJlcmVkIGJhY2t1cHMuICAoQnVnIzQxMzUuKQorCisgICogTW9yZSBkZXZlbG9wZXJzJyBQR1Aga2V5cy4KKyAgKiBQYXJhZ3JhcGggb24gdXVjcCAtYSBhbmQgLWcgb3B0aW9ucyByZW1vdmVkIGZyb20gcG9saWN5IG1hbnVhbC4KKworIC0tIElhbiBKYWNrc29uIDxpYW5AY2hpYXJrLmNodS5jYW0uYWMudWs+ICBXZWQsIDE0IEF1ZyAxOTk2IDE0OjQ2OjQ3ICswMTAwCisKK2Rwa2cgKDEuMy40KSBleHBlcmltZW50YWw7IHVyZ2VuY3k9bG93CisKKyAgKiBSZW1vdmVkIGRlYnVnZ2luZyBvdXRwdXQgZnJvbSBkcGtnLXNvdXJjZSAteC4gIE9vcHMuCisgICogUmVtb3ZlZCBzZWN0aW9uIG9uIHNvdXJjZSBwYWNrYWdlIHBlcm1pc3Npb25zIGZyb20gcG9saWN5IG1hbnVhbCAtCisgICAgZHBrZy1zb3VyY2Ugbm93IHNvcnRzIHRoZXNlIG91dC4KKworIC0tIElhbiBKYWNrc29uIDxpYW5AY2hpYXJrLmNodS5jYW0uYWMudWs+ICBTdW4sIDExIEF1ZyAxOTk2IDEzOjI1OjQ0ICswMTAwCisKK2Rwa2cgKDEuMy4zKSBleHBlcmltZW50YWw7IHVyZ2VuY3k9bG93CisKKyAgKiBQcm9ncmFtbWVycycgJiBwb2xpY3kgbWFudWFscyBpbiBzb3VyY2UgdHJlZTsgSFRNTCBpbiAvdXNyL2RvYy9kcGtnLgorICAqIE9sZCBndWlkZWxpbmVzLmluZm8gYW5kIHRleHQgZmlsZXMgaW4gL3Vzci9kb2MvZHBrZyByZW1vdmVkLgorCisgICogZHBrZy1zb3VyY2Ugc2V0cyBwZXJtaXNzaW9ucyBvbiBleHRyYWN0ZWQgZGViaWFuaXNlZCBzb3VyY2UgdHJlZQorICAgIGFuZCBkb2VzIG5vdCBjb3B5IG93bmVyc2hpcHMgb3V0IG9mIGFyY2hpdmUgZXZlbiBpZiBydW5uaW5nIGFzIHJvb3QuCisKKyAgKiBFbWFjcyBtb2RlIGBkcGtnIGNoYW5nZWxvZycgcmVuYW1lZCB0byBgRGViaWFuIGNoYW5nZWxvZycuCisgICogRGVmYXVsdCBjaGFuZ2Vsb2cgZm9ybWF0IHJlbmFtZWQgZnJvbSBgZHBrZycgdG8gYGRlYmlhbicuCisKKyAgKiBkZWJpYW4tY2hhbmdlbG9nLW1vZGUgc2V0cyBmaWxsLXByZWZpeCBjb3JyZWN0bHkuCisgICogZGViaWFuLWNoYW5nZWxvZy1tb2RlIHVyZ2VuY2llcyBleGNlcHQgSElHSCBsb3dlcmNhc2UgYnkgZGVmYXVsdC4KKyAgKiBkZWJpYW4tY2hhbmdlbG9nLW1vZGUgZGlzcGxheXMga2V5bWFwIGluIGRvYyBzdHJpbmcgYW5kIHNvIG1vZGUgaGVscC4KKworICAqIE1vcmUgbWFpbnRhaW5lcnMnIFBHUCBrZXlzLgorCisgICogUmVtb3ZlIGJ1aWx0IGNoYW5nZWxvZyBwYXJzZXJzIHdpdGggYGNsZWFuJyB0YXJnZXQgaW4gc291cmNlLgorCisgLS0gSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuY2h1LmNhbS5hYy51az4gIFNhdCwgMTAgQXVnIDE5OTYgMjM6MzU6NTEgKzAxMDAKKworZHBrZyAoMS4zLjIpIGV4cGVyaW1lbnRhbDsgdXJnZW5jeT1MT1cgKE1FRElVTSBmb3IgZHBrZy1zb3VyY2UpCisKKyAgKiBGYXN0ZXIgdXBkYXRlLXJjLmQgd3JpdHRlbiBpbiBQZXJsIGJ5IE1pcXVlbCB2YW4gU21vb3JlbmJ1cmcuCisgICogaW5zdGFsbC1pbmZvIC0tdGVzdCBkb2Vzbid0IGxvY2sgZGlyLiAgKEJ1ZyMzOTkyLCB0aGFua3MgRGFycmVuKS4KKworICAqIGRwa2ctc291cmNlIGRvZXNuJ3QgYnJlYWsgaW4gdGhlIHByZXNlbmNlIG9mIGFueSBzeW1saW5rcy4KKworICAqIE1vcmUgZGV2ZWxvcGVycycga2V5cyBhZGRlZCB0byBkb2MvZGV2ZWxvcGVyLWtleXMucGdwLgorICAqIEluc3RhbGwgZGV2ZWxvcGVycycga2V5cyBpbiAvdXNyL2RvYy9kcGtnL2RldmVsb3Blci1rZXlzLnBncC4KKyAgKiBkcGtnLXNvdXJjZSBkb2N1bWVudHMgdW5kZWZpbmVkIHN1YnN0dmFyIGJlaGF2aW91ci4KKyAgKiBtaW5vciBkZWJpYW4vcnVsZXMgY2xlYW51cHMuCisKKyAtLSBJYW4gSmFja3NvbiA8aWFuQGNoaWFyay5jaHUuY2FtLmFjLnVrPiAgU2F0LCAxMCBBdWcgMTk5NiAwMjoxMzo0NyArMDEwMAorCitkcGtnICgxLjMuMSkgZXhwZXJpbWVudGFsOyB1cmdlbmN5PUxPVworCisgICogbWFucGFnZSBmb3IgZHBrZy1zb3VyY2UgZXQgYWwgbm93IGF2YWlsYWJsZS4KKyAgKiBkcGtnLWNoYW5nZWxvZy1tb2RlLmVsIGluc3RhbGxlZCBpbiBzaXRlLWxpc3AsIGJ1dCBzdGlsbCBubyBhdXRvbG9hZC4KKworICAqIGRwa2ctc291cmNlIHByaW50cyBjb3JyZWN0IHN0cmluZyBmb3Igbm90LXVuZGVyc3Rvb2QgdGFyIC12dnQgb3V0cHV0LgorICAqIGRwa2ctc291cmNlIHBhcnNpbmcgb2YgdGFyIC12dnQgb3V0cHV0IG1hZGUgbW9yZSByb2J1c3QuCisKKyAgKiBkcGtnLWJ1aWxkcGFja2FnZSBwcmludHMgdXNhZ2UgbWVzc2FnZSBvbiB1c2FnZSBlcnJvci4KKyAgKiBkcGtnLWdlbmNvbnRyb2wgY2FuIHByaW50IHVzYWdlIG1lc3NhZ2UuCisgICogLVQ8dmFybGlzdGZpbGU+IG9wdGlvbiBhZGRlZCB0byBkcGtnLXNvdXJjZS4KKyAgKiBEZXNjcmlwdGlvbiBvZiAtZjxmaWxlc2xpc3RmaWxlPiBjb3JyZWN0ZWQgaW4gZHBrZy1kaXN0YWRkZmlsZSB1c2FnZS4KKyAgKiAtbTxtYWludGFpbmVyPiBzeW5vcHNpcyBjaGFuZ2VkIGluIGRwa2ctZ2VuY2hhbmdlcyB1c2FnZS4KKyAgKiBkZWJpYW4vc3Vic3R2YXJzIG1heSBub3cgY29udGFpbiBibGFuayBsaW5lcy4KKworIC0tIElhbiBKYWNrc29uIDxpYW5AY2hpYXJrLmNodS5jYW0uYWMudWs+ICBUaHUsIDggQXVnIDE5OTYgMDI6MzY6MDQgKzAxMDAKKworZHBrZyAoMS4zLjApIGV4cGVyaW1lbnRhbDsgdXJnZW5jeT1MT1cKKworICAqIGRwa2cgY2FuIGluc3RhbGwgbmFtZWQgcGlwZXMuCisgICogZHBrZy1kZWIgc3VwcG9ydHMgZGlyZWN0b3J5IGZvciBkZXN0aW5hdGlvbiwgZ2VuZXJhdGVzIGZpbGVuYW1lLgorICAqIGRwa2cte3NvdXJjZSxnZW5jb250cm9sLGdlbmNoYW5nZXMscGFyc2VjaGFuZ2Vsb2csYnVpbGRwYWNrYWdlfSwKKyAgICBkcGtnLWRpc3RhZGRmaWxlIHNjcmlwdHMgdG8gc3VwcG9ydCBuZXcgc291cmNlIHBhY2thZ2UgZm9ybWF0LgorICAqIGEub3V0IGJ1aWxkIG5vIGxvbmdlciBzdXBwb3J0ZWQuCisgICogQ2hhbmdlZCB0byBuZXcgc291cmNlIHBhY2thZ2UgZm9ybWF0LgorCisgLS0gSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuY2h1LmNhbS5hYy51az4gIFR1ZSwgNiBBdWcgMTk5NiAwMjozMTo1MiArMDEwMAorCisKK2Rwa2cgKDEuMi4xNCkgc3RhYmxlIHVuc3RhYmxlOyB1cmdlbmN5PU1FRElVTQorCisgICogZHNlbGVjdCArLy0vXy89IG9uIGxpbmVzIGZvciBhbGwgYnJva2VuLCBuZXcsIGxvY2FsIG9yIHdoYXRldmVyCisgICAgcGFja2FnZXMgZG8gbm90IGFmZmVjdCBfYWxsXyBwYWNrYWdlcy4gIChCdWcjNDEyOS4pCisKKyAgKiBOT1RFIC0gVEhFIEhJU1RPUlkgRk9SS1MgSEVSRS4gIDEuMi4xNCdzIGNoYW5nZSBhcHBlYXJzIGluIDEuMy43LgorCisgLS0gSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuY2h1LmNhbS5hYy51az4gIFRodSwgMjIgQXVnIDE5OTYgMDA6Mzk6NTIgKzAxMDAKKworCitkcGtnICgxLjIuMTMpIHVuc3RhYmxlOyB1cmdlbmN5PUxPVworCisgICogZHBrZyAtLXNlYXJjaCBwcm9kdWNlcyBjb3JyZWN0IG91dHB1dCBmb3IgZGl2ZXJzaW9ucy4KKyAgKiBkcGtnLW5hbWUgcmVtb3ZlIHVubmVjZXNzYXJ5IGFyY2ggbWlzc2luZyB3YXJuaW5nLiAgKEJ1ZyMzNDgyLikKKworICAqIGRwa2ctZGViIC0tYnVpbGQgd2FybnMgYWJvdXQgdXBwZXJjYXNlIGNoYXJzIGluIHBhY2thZ2UgbmFtZS4KKworICAqIGRwa2ctc2NhbnBhY2thZ2VzIGVycm9yIG1lc3NhZ2VzIHVwZGF0ZWQgYW5kIG1hbnBhZ2UgcHJvdmlkZWQKKyAgICAodGhhbmtzIHRvIE1pY2hhZWwgU2hpZWxkcykuCisgICogZHBrZy1zY2FucGFja2FnZXMgd2FybnMgYWJvdXQgc3B1cmlvdXMgZW50cmllcyBpbiBvdmVycmlkZSBmaWxlLgorICAqIGRwa2ctc2NhbnBhY2thZ2VzIGBub3ZlcnJpZGUnIHJlbmFtZWQgdG8gYG92ZXJyaWRlJyBldmVyeXdoZXJlLgorICAqIGRwa2ctc2NhbnBhY2thZ2VzIGZpZWxkIG9yZGVyaW5nIHRvIHB1dCBBcmNoaXRlY3R1cmUgaGlnaGVyLgorICAqIGRwa2ctc2NhbnBhY2thZ2VzIGZpZWxkIG5hbWVzIGNhcGl0YWxpc2VkIGFwcHJvcHJpYXRlbHkuCisgICogZHBrZy1zY2FucGFja2FnZXMgaW52b2tlcyBmaW5kIHdpdGggLWZvbGxvdy4gIChCdWcjMzk1Ni4pCisKKyAgKiBndWlkZWxpbmVzIHNheSAjIS91c3IvYmluL3BlcmwgZXZlcnl3aGVyZSwgbm90ICMhL2Jpbi9wZXJsLgorICAqIE1hbnkgZGV2ZWxvcGVycycgUEdQIGtleXMgYWRkZWQuCisKKyAgKiBjb25maWd1cmUgc2NyaXB0IHVzZXMgJHtDQ30gaW5zdGVhZCBvZiAkKENDKSAoYWdhaW4gOi0vKS4KKyAgKiBkZXZlbG9wZXJzJyBrZXlzIGluY2x1ZGVkIGluIGRwa2cgc291cmNlIHRyZWUgYW5kIC91c3IvZG9jLgorICAqIGNvbmZpZ3VyZSByZW1hZGUgdXNpbmcgYXV0b2NvbmYgMi4xMC0zICh3YXMgMi40LTEpLgorCisgLS0gSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuY2h1LmNhbS5hYy51az4gIFRodSwgMSBBdWcgMTk5NiAwMjo0NjozNCArMDEwMAorCitkcGtnICgxLjIuMTIpOyBwcmlvcml0eT1MT1cKKworICAqIGRwa2cgLS1zZWFyY2ggYW5kIC0tbGlzdCB1bmRlcnN0YW5kIGFuZCBjb21tZW50IG9uIGRpdmVyc2lvbnMuCisgICogZHBrZy1kaXZlcnQgZGlzcGxheXMgZGl2ZXJzaW9ucyBtb3JlIGludGVsbGlnaWJseS4KKworICAqIEd1aWRlbGluZXMgYXJlIHNvbWV3aGF0IGNsZWFyZXIgYWJvdXQgZGVzY3JpcHRpb25zLgorICAqIGRlYig1KSBkZXNjcmliZXMgbmV3IGZvcm1hdDsgb2xkIG1vdmVkIHRvIGRlYi1vbGQoNSkuICAoQnVnIzM0MzUuKQorICAqIGRlYi1jb250cm9sKDUpIGNhcnJpZXMgYSB3YXJuaW5nIGFib3V0IGJlaW5nIG91dCBvZiBkYXRlLgorCisgICogQWRkZWQgMTk5NiB0byBkc2VsZWN0IHZlcnNpb24vY29weXJpZ2h0LgorCisgLS0gSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuY2h1LmNhbS5hYy51az4gIFRodSwgNCBKdWwgMTk5NiAxNTowNDo0OSArMDEwMAorCitkcGtnICgxLjIuMTEpOyBwcmlvcml0eT1NRURJVU0KKworICAqIGRzZWxlY3QgaGFkIGRlcGVuZGVuY3kgYnVnIGlmIGluc3RhbGxlZCBwYWNrYWdlIG5ld2VyIHRoYW4gYXZhaWwuCisgICogQWRkZWQgYHJlcGxhY2VzJyB0byBkc2VsZWN0J3MgbGlzdCBvZiBwYWNrYWdlIHJlbGF0aW9uc2hpcCBzdHJpbmdzLgorCisgLS0gSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuY2h1LmNhbS5hYy51az4gIE1vbiwgMSBKdWwgMTk5NiAwMjo1MToxMSArMDEwMAorCitkcGtnICgxLjIuMTApOyBwcmlvcml0eT1NRURJVU0KKworICAqIEZpeGVkIGJ1ZyBpbiBvbGQtc3R5bGUgdmVyc2lvbi9yZXZpc2lvbiBudW1iZXIgcGFyc2luZy4gIChCdWcjMzQ0MC4pCisKKyAtLSBJYW4gSmFja3NvbiA8aWFuQGNoaWFyay5jaHUuY2FtLmFjLnVrPiAgU2F0LCAyOSBKdW4gMTk5NiAwMzozMjo0NSArMDEwMAorCitkcGtnICgxLjIuOSk7IHByaW9yaXR5PU1FRElVTQorCisgICogRml4ZWQgc3RhdHVzIGRhdGFiYXNlIHVwZGF0ZXMgcmVhZGluZyBidWcuCisgICogYFNldHRpbmcgdXAnIG1lc3NhZ2UgaW5jbHVkZXMgdmVyc2lvbiBudW1iZXIuCisgICogYGV4aXN0ZW5jZSBjaGVjaycgbWVzc2FnZSBjaGFuZ2VkIHRvIHNheSBgY2Fubm90IGFjY2VzcyBhcmNoaXZlJy4KKworIC0tIElhbiBKYWNrc29uIDxpYW5AY2hpYXJrLmNodS5jYW0uYWMudWs+ICBUaHUsIDI3IEp1biAxOTk2IDEzOjM5OjM2ICswMTAwCisKK2Rwa2cgKDEuMi44KTsgcHJpb3JpdHk9TE9XCisKKyAgKiBkcGtnIC0tcmVjb3JkLWF2YWlsIHB1dHMgZGF0YSBpbiBTaXplIGZpZWxkLgorICAqIHN0cmlwIC8gZm9yIHJtZGlyKDIpIGluIGNsZWFudXAgdG8gd29yayBhcm91bmQga2VybmVsIGJ1Zy4gIChCdWcjMzI3NS4pCisgICogZHBrZy1zcGxpdCAtLW1zZG9zIG5vIGxvbmdlciBhbGxvd3MgYC0nIGFuZCBvdGhlciBjaGFycyBpbiBmaWxlbmFtZXMuCisKKyAgKiBtYW51YWwgZHBrZy1zcGxpdCg4KSB3cml0dGVuLgorICAqIGRwa2ctc3BsaXQgbWlub3IgdHlwbyBpbiAtLWF1dG8gdXNhZ2UgZXJyb3IgbWVzc2FnZSBmaXhlZC4KKyAgKiBkcGtnLWRlYig4KSB2ZXJ5IG1pbm9yIGNvc21ldGljIGZpeCB0byAtLWJ1aWxkIG9wdGlvbi4KKworIC0tIElhbiBKYWNrc29uIDxpYW5AY2hpYXJrLmNodS5jYW0uYWMudWs+ICBUdWUsIDI1IEp1biAxOTk2IDAzOjAwOjE0ICswMTAwCisKK2Rwa2cgKDEuMi43KTsgcHJpb3JpdHk9TE9XCisKKyAgKiBkcGtnLXNjYW5wYWNrYWdlcyBzeW50YXggZXJyb3JzIGZpeGVkLgorCisgLS0gSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuY2h1LmNhbS5hYy51az4gIEZyaSwgMjEgSnVuIDE5OTYgMDQ6MTA6MzggKzAxMDAKKworZHBrZyAoMS4yLjYpOyBwcmlvcml0eT1NRURJVU0KKworICAqIE5GUywgQ0RST00gYW5kIHBhcnRpdGlvbiBkc2VsZWN0IG1ldGhvZHMgaW5jbHVkZSBtb3VudHBvaW50CisgICAgaW4gcGF0aHMgZ2l2ZW4gdG8gZHBrZyBpbiBbSV1pbnN0YWxsLCBzbyB0aGV5IHNob3VsZCBub3cgd29yay4KKworICAqIFJlbW92ZWQgc29tZSBsZWZ0b3ZlciBmaWxlcyBmcm9tIHNvdXJjZSB0cmVlLgorCisgLS0gSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuY2h1LmNhbS5hYy51az4gIFdlZCwgMTIgSnVuIDE5OTYgMTQ6MzU6MTkgKzAxMDAKKworZHBrZyAoMS4yLjUpOyBwcmlvcml0eT1NRURJVU0KKworICAqIEFsbG93LCBidXQgZG8gbm90IGNyZWF0ZSwgcGFja2FnZXMgaW4gaGFsZi1pbnN0YWxsZWQgc3RhdGUKKyAgICB3aXRoIG5vIHZlcnNpb24gbnVtYmVyLiAgKEFhcmdoLikKKworIC0tIElhbiBKYWNrc29uIDxpYW5AY2hpYXJrLmNodS5jYW0uYWMudWs+ICBNb24sIDEwIEp1biAxOTk2IDA0OjU1OjQzICswMTAwCisKK2Rwa2cgKDEuMi40KTsgcHJpb3JpdHk9TUVESVVNCisKKyAgKiBOZXcgZHBrZy1uYW1lIGZyb20gRXJpY2sgKDxwa2c+Xzx2ZXJzaW9uPl88YXJjaD4uZGViIGNvbnZlbnRpb24pLgorICAqIERpc2FwcGVhcmVkIHBhY2thZ2VzIGNhbid0IG93biBjb25mZmlsZXMgYW55IG1vcmUgISAgKEJ1ZyMzMjE0LikKKyAgKiBpbnN0YWxsLWluZm8gY3JlYXRlcyBNaXNjZWxsYW5lb3VzIHNlY3Rpb25zIHdpdGggYSBuZXdsaW5lCisgICAgZm9sbG93aW5nIHRoZSBoZWFkaW5nLiAgKEJ1ZyMzMjE4LikKKyAgKiBjbGVhbnVwLWluZm8gc2NyaXB0IGluc3RhbGxlZCBpbiAvdXNyL3NiaW47IGNhbGxlZCBhcyBhcHByb3ByaWF0ZQorICAgIGJ5IHBvc3RpbnN0LiAgVGhhbmtzIHRvIEtpbS1NaW5oIEthcGxhbi4gIChCdWcjMzEyNS4pCisgICogQWxsb3cgc3VwZXJzZWRlZCBFc3NlbnRpYWwgcGFja2FnZXMgdG8gYmUgcHVyZ2VkIGFmdGVyIHRoZXkndmUKKyAgICBiZWVuIHJlbW92ZWQgKGNsZWFyIHRoZSBFc3NlbnRpYWwgZmxhZyBvbiByZW1vdmFsLCBhbmQgaWdub3JlIGl0CisgICAgb24gcGFja2FnZXMgdGhhdCBhcmUgaW4gc3RhdF9jb25maWdmaWxlcykuCisKKyAgKiBkc2VsZWN0IGRpc2sgbWV0aG9kcyB1bmRlcnN0YW5kIGB5JyBhcyB3ZWxsIGFzIGB5ZXMnIGZvciB1c2luZworICAgIGRldmVsb3BtZW50IHRyZWUuCisgICogZHNlbGVjdCBkb2Vzbid0IG1ha2UgcGFja2FnZXMgYXBwZWFyIGFzIGBuZXcnIGFnYWluIGlmIHVwZGF0ZQorICAgIG9mIGF2YWlsYWJsZSBwYWNrYWdlcyBmYWlscy4KKyAgKiBkc2VsZWN0IHBsYWNlcyBtZXRob2Qgc2VsZWN0aW9uIGN1cnNvciBvdmVyIG9wdGlvbiBsYXN0IHNlbGVjdGVkLgorCisgICogZHBrZy1zY2FucGFja2FnZXMgZG9lc24ndCBkaWUgd2hlbiByZXBlYXRlZCBwYWNrYWdlcyBhcmUgZm91bmQuCisgICogZHBrZy1zY2FucGFja2FnZXMgYWxsb3dzIG1hbnkgb2xkIG1haW50YWluZXJzIChgLy8nLXNlcGFyYXRlZCkuCisKKyAgKiBgVmVyc2lvbicgZmllbGQgaXMgbm93IG1hbmRhdG9yeSAoc29tZSBvcGVyYXRpb25zIGFscmVhZHkKKyAgICB3b3VsZG4ndCB3b3JrIHJpZ2h0IGFueXdheSBpZiBpdCB3YXMndCB0aGVyZSkuCisKKyAgKiB1cGRhdGUtcmMuZCg4KSBub3cgc2F5cyB5b3UgbXVzdCByZW1vdmUgdGhlIHNjcmlwdC4gIChCdWcjMzIxNS4pCisgICogZHBrZyAtLWZvcmNlLWhlbHAgc2F5cyB0aGF0IC0tZm9yY2Utb3ZlcndyaXRlIGlzIG9uIGJ5IGRlZmF1bHQuCisgICogZHBrZy1kZWIgbWFucGFnZSByZXdyaXR0ZW4uCisgICogZGViaWFuLlJFQURNRSAoPSAvdXNyL2RvYy9jb3B5cmlnaHQvZHBrZykgZWRpdGVkIHNsaWdodGx5LgorCisgICogU29tZSBkYXRhYmFzZSBwYXJzaW5nIGdydW5nZSByZW1vdmVkIChwZGJfcHJlZmVydmVyc2lvbiwgJmMpLgorICAqIFNvdXJjZSB0cmVlIGRvYy9zZ21sIGNvbnRhaW5zIHNvbWUgZW1icnlvbmljIG1hbnVhbHMuCisgICogTGVmdG92ZXIgZmlsZXMgaW4gbGliIGRpcmVjdG9yeSBpbiBzb3VyY2UgdHJlZSBkZWxldGVkLgorCisgLS0gSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuY2h1LmNhbS5hYy51az4gIE1vbiwgMTAgSnVuIDE5OTYgMDM6NTI6MDEgKzAxMDAKKworZHBrZyAoMS4yLjMpOyBwcmlvcml0eT1ISUdICisKKyAgKiBpbnN0YWxsLWluZm8gZG9lc24ndCByZXBsaWNhdGUgc2VjdGlvbiBoZWFkaW5ncyAoQnVnIzMxMjUsICMyOTczKS4KKyAgKiBOZXcgZHBrZy1uYW1lIG1hbnBhZ2UgYnJva2VuIG9mZiBmcm9tIHNjcmlwdCAob29wcyEpLgorICAqIGRzZWxlY3QgaGVscCBzY3JlZW5zIG1hZGUgY29uc2lzdGVudCB3aXRoIG5ldyBzdHJpbmdzLCBmbGFncywgJmMuCisgICogZHNlbGVjdCBlcnJvciBmbGFnIGNvbHVtbiBsYWJlbGxlZCBFIChFcnJvciksIG5vdCBIIChIb2xkKS4KKyAgKiBgRXNjYXBlJyBubyBsb25nZXIgYm91bmQgdG8gYGV4aXQgbGlzdCB3aXRob3V0IHNhdmluZycgaW4gZHNlbGVjdC4KKworIC0tIElhbiBKYWNrc29uIDxpYW5AY2hpYXJrLmNodS5jYW0uYWMudWs+ICBUdWUsIDI4IE1heSAxOTk2IDAyOjE0OjU3ICswMTAwCisKK2Rwa2cgKDEuMi4yKTsgcHJpb3JpdHk9TUVESVVNCisKKyAgKiBGaXhlZCBkc2VsZWN0IGNvcmVkdW1wIGZvdW5kIGJ5IEVyaWNrIEJyYW5kZXJob3JzdCAodGhhbmtzKS4KKyAgKiBTb3J0IG9ic29sZXRlIHJlbW92ZWQgcGFja2FnZXMgc2VwYXJhdGVseSwgbm90IHVuZGVyIEF2YWlsYWJsZS4KKworIC0tIElhbiBKYWNrc29uIDxpYW5AY2hpYXJrLmNodS5jYW0uYWMudWs+ICBUaHUsIDIzIE1heSAxOTk2IDIxOjMxOjA1ICswMTAwCisKK2Rwa2cgKDEuMi4xKTsgcHJpb3JpdHk9TUVESVVNCisKKyAgKiBgPScga2V5IGluIGRzZWxlY3QgcmVhbGx5IGRvZXMgYGhvbGQnIHJhdGhlciB0aGFuIGB1bmhvbGQnLgorICAqIGRzZWxlY3QgZGVwZW5kZW5jeSBwcm9jZXNzaW5nIG5vdyBpbnRlcmFjdHMgYmV0dGVyIHdpdGggYGhvbGQnLgorICAqIGRzZWxlY3QgYEknIGtleSAobm90IGBpJykgbW9kaWZpZXMgZGlzcGxheSBvZiB0aGUgaW5mbyB3aW5kb3cuCisgICogZHNlbGVjdCBzaG93cyB1bmF2YWlsYWJsZSBwYWNrYWdlcyBhcyBiZWluZyB1bmF2YWlsYWJsZS4KKyAgKiBkc2VsZWN0IG1haW4gbWVudSBoZWFkaW5ncyBhbmQgbWFueSBvdGhlciBzdHJpbmdzIGNoYW5nZWQgdG8gdHJ5IHRvCisgICAgZGlzY291cmFnZSBwZW9wbGUgZnJvbSBkZXNlbGVjdGluZyBldmVyeSBwYWNrYWdlIGFuZCB1c2luZyBbUl1lbW92ZS4KKyAgICBOb3RhYmx5LCBgc2VsZWN0JyBjaGFuZ2VkIHRvIGBtYXJrJyB0aHJvdWdob3V0LgorCisgICogZHNlbGVjdCBkaXNrIG1ldGhvZHMgbm93IHByaW50IGEgZmV3IGZld2VyIGRvdWJsZSBzbGFzaGVzLgorICAqIGRzZWxlY3QgZGlzayBhY2Nlc3MgbWV0aG9kcyB3aWxsIG9mZmVyIHRvIHVzZSBkcGtnIC0tcmVjb3JkLWF2YWlsCisgICAgdG8gc2NhbiB0aGUgYXZhaWxhYmxlIHBhY2thZ2VzLCBpZiBubyBQYWNrYWdlcyBmaWxlIGlzIGZvdW5kLgorCisgICogTmV3IGRwa2cgLS1jb21wYXJlLXZlcnNpb25zIG9wdGlvbiwgZm9yIHRoZSBiZW5lZml0IG9mIHNjcmlwdHMgJmMuCisgICogTmV3IGRwa2cgLS1jbGVhci1hdmFpbCBvcHRpb24gZm9yZ2V0cyBhbGwgYXZhaWxhYmxlIHBhY2thZ2VzIGluZm8uCisgICogTmV3IGRwa2cgLS1wcmludC1hdmFpbCBvcHRpb24sIHByaW50cyBgYXZhaWxhYmxlJyBkYXRhIChmcm9tIFBhY2thZ2VzLCAmYykuCisgICogZHBrZyB1c2FnZSBtZXNzYWdlIGlzIG1vcmUgaW5mb3JtYXRpdmUsIGJ1dCBubyBsb25nZXIgZml0cyBvbiBzY3JlZW4uCisgICogZHBrZyAtLWF2YWlsIG9wdGlvbiByZW5hbWVkIC0tcmVjb3JkLWF2YWlsLgorCisgICogTGF0ZXN0IGRwa2ctbmFtZSBmcm9tIEVyaWNrIEJyYW5kZXJob3JzdC4KKyAgKiBkcGtnLXNjYW5wYWNrYWdlcyBoYXMgbW9yZSBzZW5zaWJsZSBwcm9ibGVtIHJlcG9ydGluZy4KKyAgKiBwb3N0aW5zdCBjb25maWd1cmUgbm93IGdldHMgbnVsbCBhcmd1bWVudCAobm90IDx1bmtub3duPiBvciA8bm9uZT4pCisgICAgd2hlbiB0aGVyZSBpcyBubyBwcmV2aW91c2x5IGNvbmZpZ3VyZWQgdmVyc2lvbi4KKworICAqIEd1aWRlbGluZXMgc2F5IHRoYXQgcG9zdGluc3QgY29uZmlndXJlIGlzIGdpdmVuIHByZXZpb3VzIHZlcnNpb24uCisgICogR3VpZGVsaW5lcyBkb24ndCByZWZlciB0byBtYWludGFpbmVyLXNjcmlwdC1hcmdzLnR4dCBpbiBtYWluIHRleHQuCisgICogR3VpZGVsaW5lcyAoVGV4aW5mbyBzb3VyY2UpIHVwbG9hZGVkIHNlcGFyYXRlbHkuCisKKyAgKiBPd24gdmVyc2lvbiBvZiBzdHJjcHkgKHVzZWQgZm9yIGRlYnVnZ2luZykgcmVtb3ZlZC4KKyAgKiBJbnRlcmZhY2UgdG8gYWNjZXNzIG1ldGhvZHMgZG9jdW1lbnQgaW4gc291cmNlIChkb2MvZHNlbGVjdC1tZXRob2RzLnR4dCkuCisgICogZGViaWFuLmJ1aWxkc2NyaXB0IG1vdmVzIGNoYW5nZXMgZmlsZSBpbnRvIHBhcmVudCBkaXJlY3RvcnkuCisKKyAtLSBJYW4gSmFja3NvbiA8aWFuQGNoaWFyay5jaHUuY2FtLmFjLnVrPiAgV2VkLCAyMiBNYXkgMTk5NiAwMToyNjozMSArMDEwMAorCitkcGtnICgxLjIuMCk7IHByaW9yaXR5PU1FRElVTQorCisgICogZHNlbGVjdCBjYW4gc29ydCBwYWNrYWdlcyBieSBhdmFpbGFibGUgYW5kIGluc3RhbGxlZCBzdGF0ZXMsIGFuZAorICAgIGRpc3BsYXkgdGhlaXIgdmVyc2lvbiBudW1iZXJzLiAgKFVzZSBPLCBvIGFuZCBWLikKKyAgKiBIb2xkIGlzIHByb3Blcmx5IGludGVncmF0ZWQgYXMgYSByZWFsIGB3YW50ZWQgc3RhdGUnLCByYXRoZXIgdGhhbgorICAgIGEgc2VwYXJhdGUgZmxhZy4KKyAgKiBFcG9jaHMgaW4gdmVyc2lvbiBudW1iZXJzIGltcGxlbWVudGVkLCB1c2luZyB0aGUgc3ludGF4CisgICAgPGVwb2NoPjo8dmVyc2lvbj4tPHJldmlzaW9uPi4gIChFcG9jaCBub3QgdXN1YWxseSBkaXNwbGF5ZWQuKQorICAqIGRzZWxlY3QgZGlzayBtZXRob2QgaXMgYXJjaGl0ZWN0dXJlLWluZGVwZW5kZW50ICh1c2VzIGRwa2cncworICAgIGluc3RhbGxhdGlvbiBhcmNoaXRlY3R1cmUsIGFuZCBsb29rcyBpbiB0aGUgcmlnaHQgcGFydCBvZiB0aGUgdHJlZSkuCisKKyAgKiBkc2VsZWN0IGRpc2sgbWV0aG9kIGRvZXNuJ3QgdHJ5IHRvIHNhdGlzZnkgdGhlIHByZWRlcGVuZGVuY2llcyBvZgorICAgIHBhY2thZ2VzIHdoaWNoIGFyZSBvbiBob2xkLgorICAqIEZpeGVkIGNvbmZsaWN0LXJlbGF0ZWQgYXNzZXJ0aW9uIGZhaWx1cmUuICAoQnVnIzI3ODQuKQorICAqIGNvbmZmaWxlcyBkbyBub3QgY2F1c2UgZmlsZSBjb25mbGljdHMgaWYgdGhlIGNvbmZsaWN0aW5nIHBhY2thZ2UKKyAgICBpcyBpbiB0aGUgYGNvbmZpZ3VyYXRpb24gb25seScgc3RhdGUuICAoQnVnIzI3MjAuKQorICAqIEZpeGVkIG1lc3NhZ2VzIHdoZXJlIGF2YWlsYWJsZSB2ZXJzaW9uIG51bWJlciB3YXMgcmVwb3J0ZWQgYXMgaW5zdGFsbGVkCisgICAgdmVyc2lvbiBpbiBjb25mbGljdCBhbmQgZGVwZW5kZW5jeSBtZXNzYWdlcy4gIChCdWcjMjY1NCwgQnVnIzI5NzQuKQorCisgICogTmV3IGZvcm1hdCAuZGViIGZpbGVzIGFyZSBkZWZhdWx0IGV2ZW4gZm9yIGEub3V0IGNvbXBpbGVzIChidXQKKyAgICBhLm91dCB2ZXJzaW9uIG9mIGRwa2cgaXMgaW4gb2xkIGZvcm1hdCkuCisgICogQ2hhcmFjdGVycyBAOj0gKGF0IGNvbG9uIGVxdWFscykgaW4gcGFja2FnZSBuYW1lcyBub3cgc3RyaWN0bHkKKyAgICBmb3JiaWRkZW4gZXZlcnl3aGVyZSAoXyBpcyBzdGlsbCBhbGxvd2VkIGluIGV4aXN0aW5nIHBhY2thZ2VzKS4KKyAgKiBOZXcgZHBrZyAtLXByaW50LWluc3RhbGxhdGlvbi1hcmNoaXRlY3R1cmUgb3B0aW9uIHByaW50cyBpbnN0YWxsYXRpb24KKyAgICBhcmNoaXRlY3R1cmUgKGNvbXBpbGVkIGluKSwgcmF0aGVyIHRoYW4gYnVpbGQgYXJjaGl0ZWN0dXJlIChkZXRlcm1pbmVkCisgICAgZnJvbSBnY2MgLXByaW50LWxpYmdjYy1maWxlLW5hbWUpLgorCisgICogVmVyc2lvbiBtZXNzYWdlcyBzaG93IHdoZXRoZXIgY29tcGlsZWQgYS5vdXQgb3IgRUxGIChpMzg2IG9ubHkpLgorICAqIEZpeGVkIG1pc3Npbmcgc3BhY2UgaW4gdmVyc2lvbiBzeW50YXggZXJyb3IgbWVzc2FnZXMuCisgICogTWFucGFnZSBkcGtnLjggaW5zdGFsbGVkIHdpdGggd2FybmluZyBhYm91dCBpbmFjY3VyYWN5LgorCisgICogR3VpZGVsaW5lcyBkb24ndCBzYXkgdG8gc3RvcCBhbmQgcmVzdGFydCBkYWVtb25zIGluIHJ1bmxldmVscyAyMzQ1OworICAgIGluc3RlYWQgdGhleSBzYXkgdG8gc3RhcnQgaW4gMjM0NSBhbmQgc3RvcCBpbiAwMTYuCisgICogR3VpZGVsaW5lcyBhbmQgdmVyc2lvbiBtZXNzYWdlcyBzYXkganVzdCBEZWJpYW4gTGludXguCisgICogR3VpZGVsaW5lcyB0eXBvIGZpeCBgInN0b3AyJyA9PiBgInN0b3AiJy4gIChCdWcjMjg2Ny4pCisKKyAgKiBkb2MvTWFrZWZpbGUuaW4gY2xlYW4gcHJvcGVybHkgZGVsZXRlcyB2YXJpb3VzIGd1aWRlbGluZXMuaW5mbyogZmlsZXMuCisKKyAtLSBJYW4gSmFja3NvbiA8aWFuQGNoaWFyay5jaHUuY2FtLmFjLnVrPiAgVGh1LCAxNiBNYXkgMTk5NiAwMDowMToyMSArMDEwMAorCitkcGtnICgxLjEuNik7IHByaW9yaXR5PU1FRElVTQorCisgICogQ2hlY2sgdmlydHVhbCBkZXBlbmRlbmNpZXMgd2hlbiByZW1vdmluZyAob3VjaCEgLSB0aGFua3MgU0RFLikKKyAgKiBGaXhlZCBidWcgaW4gaW50ZXJuYWwgZGF0YWJhc2UgdmFsaWRpdHkgbWFuYWdlbWVudCB0aGF0IGNvdWxkCisgICAgbWFrZSBkc2VsZWN0IGFuZCBkcGtnIGR1bXAgY29yZS4gIChCdWcjMjYxMy4pCisgICogRml4ZWQgdHdvIGNvcmVkdW1waW5nIGJ1Z3Mgd2hlbiB1c2luZyBsb2NhbCBkaXZlcnNpb25zLiAgKEJ1ZyMyODA0LikKKyAgKiBGaXhlZCBkaXNhcHBlYXJhbmNlIG9mIG92ZXJ3cml0dGVuIHBhY2thZ2VzLiAgKEJ1ZyMyNjk2LikKKyAgKiBpbnN0YWxsLWluZm8gd29uJ3QgbW9kaWZ5IGRpciBmaWxlIGJlZm9yZSBzdGFydCBvZiBtZW51LgorICAqIGluc3RhbGwtaW5mbyB3aWxsIGNyZWF0ZSBNaXNjZWxsYW5lb3VzIGhlYWRpbmcgaWYgbm8gc2VjdGlvbnMgeWV0LgorCisgICogT25seSBhbHBoYW51bXMgYW5kICstLiBhbGxvd2VkIGluIHBhY2thZ2UgbmFtZXMgLSBlbmZvcmNlZCBieQorICAgIGRwa2ctZGViIC0tYnVpbGQgYW5kIGRvY3VtZW50ZWQgaW4gR3VpZGVsaW5lcy4KKyAgKiBkc2VsZWN0IGRvZXNuJ3QgZGlzcGxheSBwYWNrYWdlcyB1bmxlc3MgdGhleSBhcmUgaW5zdGFsbGVkLCBzZWxlY3RlZAorICAgIG9yIGF2YWlsYWJsZS4KKyAgKiBkc2VsZWN0IGRvZXNuJ3Qgc2hvdyBzcHVyaW91cyBzZWN0aW9uIGFuZCBwcmlvcml0eSBoZWFkaW5ncy4KKyAgKiBkc2VsZWN0IGhhcyBhIGZldyBleHRyYSBrZXliaW5kaW5ncyAoZnJvbSBMZWUgT2xkcykuCisgICogLS1mb3JjZSBtZXNzYWdlIGNoYW5nZWQgdG8gYC0tZm9yY2UgZW5hYmxlZCcgc28gdGhhdCBkZWZhdWx0IGlzIE9LLgorCisgICogZHBrZy1uYW1lIG5vdyBpbmNsdWRlcyBhcmNoaXRlY3R1cmUgY29tcG9uZW50IGluIC5kZWIgZmlsZW5hbWUsCisgICAgYW5kIHRyYW5zbGF0ZXMgLSBpbiBwYWNrYWdlIG5hbWUgdG8gXy4KKyAgKiAuZGViIGZpbGUgaGFzIGFyY2hpdGVjdHVyZSBjb21wb25lbnQgaW4gZmlsZW5hbWUuCisKKyAgKiBHdWlkZWxpbmVzIGNoYW5nZWQgdG8gc2F5IFByZS1EZXBlbmRzIGlzIGZvciBleHBlcnRzIG9ubHkuCisgICogR3VpZGVsaW5lcyBzYXkgdG8gcHJvdmlkZSBhIHVuaWRpZmYgKC11KSByYXRoZXIgdGhhbiBhbiBvbGQgY29udGV4dCBkaWZmLgorICAqIEd1aWRlbGluZXMgc2F5IDc1NSByb290LnJvb3QgZm9yIHNoYXJlZCBsaWJyYXJpZXMuCisKKyAtLSBJYW4gSmFja3NvbiA8aWFuQGNoaWFyay5jaHUuY2FtLmFjLnVrPiAgV2VkLCAxIE1heSAxOTk2IDAwOjQ3OjIyICswMTAwCisKK2Rwa2cgKDEuMS41KTsgcHJpb3JpdHk9TUVESVVNIChISUdIIGZvciBkaXZlcnNpb25zIHVzZXJzKQorCisgICogRml4ZWQgY29yZWR1bXAgd2hlbiB1c2luZyBkaXZlcnNpb25zLiAgKEJ1ZyMyNjAzLikKKyAgKiBGaXhlZCB0eXBvIGluIGRwa2ctZGl2ZXJ0IHdoaWNoIGNvdWxkIGxvc2UgZGl2ZXJzaW9ucy4gIChCdWcjMjY2Mi4pCisKKyAgKiAtLWZvcmNlLW92ZXJ3cml0ZSBpcyB0aGUgZGVmYXVsdC4KKyAgKiBkaXZlcnNpb25zLnRleHQgcHJvdmlkZXMgYmV0dGVyIGV4YW1wbGVzLgorCisgLS0gSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuY2h1LmNhbS5hYy51az4gIFdlZCwgMTAgQXByIDE5OTYgMTM6NTk6MzAgKzAxMDAKKworZHBrZyAoMS4xLjQpOyBwcmlvcml0eT1NRURJVU0KKworICAqIEFsbG93IG92ZXJ3cml0aW5nIG9mIGNvbmZsaWN0aW5nIHBhY2thZ2VzIGJlaW5nIHJlbW92ZWQuICAoQnVnIzI2MTQuKQorCisgICogYS5vdXQgY29udHJvbCBmaWxlIHNheXMgUHJlLURlcGVuZHM6IGxpYmM0IHwgbGliYy4gIChCdWcjMjY0MC4pCisgICogRUxGIGNvbnRyb2wgZmlsZSBhbmQgbGliYyBkZXBlbmRlbmNpZXMgY2hhbmdlZCB0byB1c2UgZmluYWxpc2VkIHNjaGVtZS4KKyAgKiBFTEYgY29udHJvbCBmaWxlIGFuZCBsaWJjIGRlcGVuZGVuY2llcyBmb3IgaTM4NiBvbmx5LiAgKEJ1ZyMyNjE3LikKKworICAqIEd1aWRlbGluZXMgc2F5IHVzZSBvbmx5IHJlbGVhc2VkIGxpYnJhcmllcyBhbmQgY29tcGlsZXJzLgorICAqIEluc3RhbGwgd2lzaGxpc3QgYXMgL3Vzci9kb2MvZHBrZy9XSVNITElTVC4KKyAgKiBSZW1vdmUgc3B1cmlvdXMgZW50cmllcyBmb3IgR3VpZGVsaW5lcyBpbiBpbmZvIGRpciBmaWxlLgorCisgICogZHBrZy1kZWIgLS1idWlsZCBjaGVja3MgcGVybWlzc2lvbnMgb24gY29udHJvbCAoREVCSUFOKSBkaXJlY3RvcnkuCisKKyAgKiBTcGFjZXMgaW4gY29udHJvbCBmaWxlIGZpZWxkcyBub3QgY29waWVkIGJ5IGRwa2ctc3BsaXQuICAoQnVnIzI2MzMuKQorICAqIFNwYWNlcyBpbiBzcGxpdCBmaWxlIHBhcnQgY29udHJvbCBkYXRhIGlnbm9yZS4gIChCdWcjMjYzMy4pCisKKyAgKiBQb3J0YWJpbGl0eSBmaXhlcywgaW5jbHVkaW5nIHBhdGNoIGZyb20gUmljaGFyZCBLZXR0bGV3ZWxsLgorICAqIEZpeGVkIG1pbm9yIGNvbmZpZ3VyZS5pbiBidWcgY2F1c2luZyBtYW5nbGVkIEdDQyAtVyBvcHRpb25zLgorCisgLS0gSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuY2h1LmNhbS5hYy51az4gIFRodSwgNCBBcHIgMTk5NiAwMTo1ODo0MCArMDEwMAorCitkcGtnICgxLjEuMyk7IHByaW9yaXR5PUxPVworCisgICogZHNlbGVjdCBkaXNrIG1ldGhvZHMgc3VwcG9ydCBQcmUtRGVwZW5kcyBpbnN0YWxsYXRpb24gb3JkZXJpbmcuCisgICogV2hlbiBkcGtnIGZhaWxzIGFuZCAtLWF1dG8tZGVjb25maWd1cmUgd291bGQgaGVscCBpdCBzYXlzIHNvLgorICAqIGRwa2cgLS1zZWFyY2ggb3V0cHV0IGxpc3RzIHNldmVyYWwgcGFja2FnZXMgd2l0aCBzYW1lIGZpbGUgb24gb25lIGxpbmUuCisgICogSW1wcm92ZWQgZHBrZyB1c2FnZSBtZXNzYWdlIHNvbWV3aGF0LgorCisgICogZHBrZy1kZWIgLS1idWlsZCBjaGVja3MgcGVybWlzc2lvbnMgYW5kIHR5cGVzIG9mIG1haW50YWluZXIgc2NyaXB0cy4KKyAgKiBkcGtnLWRlYiAtLWJ1aWxkIHRyZWF0cyBtaXNzcGVjaWZpZWQgY29uZmZpbGVzIGFzIGVycm9yLCBub3Qgd2FybmluZy4KKyAgKiBkcGtnIC0tcHJpbnQtYXJjaGl0ZWN0dXJlIHByaW50cyBjb21waWxlcidzIGFyY2hpdGVjdHVyZSB3aGlsZQorICAgIGRwa2cgLS12ZXJzaW9uICgmYykgcHJpbnQgc3lzdGVtJ3MgYXJjaCAodGhpcyB0byBoZWxwIGNyb3NzLWNvbXBpbGluZykuCisgICogTW9yZSBtaW5vciBndWlkZWxpbmVzIGNoYW5nZXMsIGluY2x1ZGluZyBkaXIgZW50cnkgZml4dXAuCisKKyAgKiBjb25maWd1cmUgc2NyaXB0IGNhY2hlcyBtb3JlIHZhbHVlcy4KKyAgKiBDaGFuZ2VkIG1haW50YWluZXIgZW1haWwgYWRkcmVzcyB0byBpYW5AY2hpYXJrLmNodS5jYW0uYWMudWsuCisKKyAtLSBJYW4gSmFja3NvbiA8aWFuQGNoaWFyay5jaHUuY2FtLmFjLnVrPiAgU2F0LCAxNiBNYXIgMTk5NiAxOToxODowOCArMDAwMAorCitkcGtnICgxLjEuMik7IHByaW9yaXR5PUxPVworCisgICogUGFja2FnaW5nIGd1aWRlbGluZXMgaW5zdGFsbGVkIHByb3Blcmx5IChhbmQgYXMgZ3VpZGVsaW5lcworICAgIHJhdGhlciB0aGFuIGRlYmlhbi1ndWlkZWxpbmVzKS4KKyAgKiBFTEYgdmVyc2lvbiBoYXMgbW9yZSBjaGVja3MgdG8gc3RvcCB5b3Ugd3JlY2tpbmcgeW91ciBkcGtnIGluc3RhbGxhdGlvbi4KKyAgKiBkc2VsZWN0IGRpc2sgbWV0aG9kcyBub3cgbG9vayBmb3IgYSBgbG9jYWwnIHRyZWUgYXMgd2VsbCwgZm9yCisgICAgcGVvcGxlIHdobyB3YW50IGxvY2FsbHktYXZhaWxhYmxlIHNvZnR3YXJlIG9mIHZhcmlvdXMga2luZHMuCisgICogZHBrZy1kaXZlcnQgaGFzIGRlYnVnZ2luZyBtZXNzYWdlIHJlbW92ZWQuCisgICogTWlub3IgZ3VpZGVsaW5lcyBjaGFuZ2VzLgorCisgICogVmFyaW91cyBtYWtlZmlsZSBjbGVhbnVwcywgbWFpbmx5IHRvIGRvIHdpdGggRUxGIHZzLiBhLm91dCBzdXBwb3J0LgorICAqIGRlYmlhbi5ydWxlcyBjbGVhbnMgb3V0IH4gZmlsZXMgaXRzZWxmLCBhcyB3ZWxsIGFzIGNhbGxpbmcgbWFrZSBjbGVhbi4KKyAgKiBkZWJpYW4ucnVsZXMgbmFtZXMgLm5vbmRlYmJpbi50YXIuZ3ogZmlsZSBFTEYgdG9vLCBpZiBhcHByb3ByaWF0ZS4KKworIC0tIElhbiBKYWNrc29uIDxpd2oxMEBjdXMuY2FtLmFjLnVrPiAgVGh1LCAxNCBNYXIgMTk5NiAwMzozODoyOSArMDAwMAorCitkcGtnICgxLjEuMWVsZik7IHByaW9yaXR5PUxPVworCisgICogQWRkZWQgL3Vzci9saWIvZHBrZy9lbGYtZXhlY3V0YWJsZXMtb2sgYW5kIGVsZi1pbi1rZXJuZWwuCisgICogUmVwbGFjZXMgZmllbGQgbm93IGFsbG93cyBhdXRvbWF0aWMgcmVtb3ZhbCBvZiBjb25mbGljdGluZyBwYWNrYWdlcy4KKyAgKiBSZXBsYWNlcyBmaWVsZCBub3cgcmVxdWlyZWQgdG8gb3ZlcndyaXRlIG90aGVyIHBhY2thZ2VzJyBmaWxlcy4KKyAgKiBBcmNoaXRlY3R1cmUgZmllbGQsIGFuZCBkcGtnIC0tcHJpbnQtYXJjaGl0ZWN0dXJlLCBzdXBwb3J0ZWQuCisgICogYnVpbGQgbmV3IGZvcm1hdCBhcmNoaXZlcyBieSBkZWZhdWx0IHdoZW4gY29tcGlsZWQgd2l0aCBFTEYgY29tcGlsZXIuCisKKyAgKiBzeW1saW5rcyBhcmUgbm93IGluc3RhbGxlZCBhdG9taWNhbGx5IChnb29kIGZvciBzaGFyZWQgbGlicmFyaWVzKS4KKyAgKiBjcmVhdGUgL3Zhci9saWIvZHBrZy9kaXZlcnNpb25zIGluIHBvc3RpbnN0IGlmIG5lY2Vzc2FyeSAoQnVnIzI0NjUuKQorICAqIFByZS1EZXBlbmRzIG5vdyBjb3JyZWN0bHkgZmFpbHMgaWYgcGFja2FnZSBuZXZlciBjb25maWd1cmVkLgorICAqIGRzZWxlY3QgZGlzayBtZXRob2RzIG1vdW50IHdpdGggLW8gbm9zdWlkLG5vZGV2LgorICAqIHVwZGF0ZS1yYy5kIGRlZmF1bHRzIGRvZXNuJ3QgYWRkIGJvdGggSyBhbmQgUyBpbiBhbnkgb25lIHJ1bmxldmVsOworICAgIGRwa2cgcG9zdGluc3QgZml4ZXMgdXAgdGhpcyBzaXR1YXRpb24gaWYgaXQgc2VlcyBpdC4KKworICAqIEFzc29ydGVkIGZpeHVwcyB0byB0aGUgR3VpZGVsaW5lcywgd2hpY2ggYXJlIG5vdyBpbiBvbmUgcGllY2UuCisgICogZHBrZyAtLWxpc3QgcHJpbnRzIHZlcnNpb24gc3RyaW5nIGluIG9uZSBwaWVjZS4KKyAgKiBkcGtnLXNjYW5wYWNrYWdlcyBkb2Vzbid0IHByb2R1Y2Ugbm90aWNlIG9uIG91dHB1dCB3aXRoIGxpc3Qgb2YKKyAgICBwYWNrYWdlcyB3aXRoIFNlY3Rpb24gYW5kL29yIFByaW9yaXR5IGNvbnRyb2wgZmlsZSBmaWVsZHMuCisKKyAgKiBjb250cm9sIGZpbGUgYW5kIGRlYmlhbi5ydWxlcyB3b3JrIGJvdGggZm9yIEVMRiBhbmQgbm9uLUVMRiBjb21waWxlcy4KKyAgKiBtb3N0IGZpbGVzIGNvbXBpbGVkIHdpdGggLU8yICgtTzMgb25seSBmb3Igc29tZSBjcml0aWNhbCBmaWxlcykgLQorICAgIHRoaXMgZml4ZXMgRUxGIGJ1aWxkLgorCisgLS0gSWFuIEphY2tzb24gPGl3ajEwQGN1cy5jYW0uYWMudWs+ICBNb24sIDExIE1hciAxOTk2IDA0OjI1OjI4ICswMDAwCisKK2Rwa2cgKDEuMS4wKTsgcHJpb3JpdHk9TE9XCisKKyAgKiBkcGtnIHN1cHBvcnRzIFByZS1EZXBlbmRzLgorICAqIHBvc3RpbnN0IHNjcmlwdCBnZXRzIG1vc3QtcmVjZW50bHktY29uZmlndXJlZCB2ZXJzaW9uIGFzICQyLgorCisgICogbGliL3RhcmZuLmMgI2luY2x1ZGVzIDxlcnJuby5oPiAocG9ydGFiaWxpdHkgZml4KS4KKworIC0tIElhbiBKYWNrc29uIDxpd2oxMEBjdXMuY2FtLmFjLnVrPiAgU3VuLCAxMSBGZWIgMTk5NiAyMTowNzowMyArMDAwMAorCitkcGtnICgxLjAuMTcpOyBwcmlvcml0eT1MT1cKKworICAqIGRwa2cgLS1yZWN1cnNpdmUgZm9sbG93cyBzeW1saW5rcyAodXNlZnVsIGZvciBkZXZlbCB0cmVlKS4KKworIC0tIElhbiBKYWNrc29uIDxpd2oxMEBjdXMuY2FtLmFjLnVrPiAgU2F0LCAxMCBGZWIgMTk5NiAxNTo1ODo0NiArMDAwMAorCitkcGtnICgxLjAuMTYpOyBwcmlvcml0eT1MT1cKKworICAqIGRwa2ctZGViIG11Y2ggZmFzdGVyIHJlYWRpbmcgbmV3IGZvcm1hdCBhcmNoaXZlcy4gIChCdWcjMjI1Ni4pCisgICogRGV2ZWxvcGVycycgZG9jdW1lbnRhdGlvbiBpbiAvdXNyL2RvYy9kcGtnLywgL3Vzci9pbmZvLy4KKworICAqIEZpeGVkIHR5cG8gaW4gY29udHJvbCBmaWxlIERlc2NyaXB0aW9uLgorCisgICogY29uZmlndXJlIHNjcmlwdCB0cmllcyB0byBpbXByb3ZlIG1hdHRlcnMgd3J0IHN5c2luZm8uCisgICogYW55IGRlYmlhbi10bXAuZGViIGlzIGRlbGV0ZWQgYnkgYC4vZGViaWFuLnJ1bGVzIGNsZWFuJy4KKworIC0tIElhbiBKYWNrc29uIDxpd2oxMEBjdXMuY2FtLmFjLnVrPiAgU3VuLCA0IEZlYiAxOTk2IDE1OjUxOjU5ICswMDAwCisKK2Rwa2cgKDEuMC4xNSk7IHByaW9yaXR5PUxPVworCisgICogZHNlbGVjdCBkaXNrIG1ldGhvZHMgc2hvdWxkIG5ldmVyIHVubW91bnQgdGhpbmdzIHRoZXkgZGlkbid0IG1vdW50LgorICAqIGRlYmlhbi5SRUFETUUgYWthIC91c3IvZG9jL2NvcHlyaWdodCB1cGRhdGVkLgorCisgLS0gSWFuIEphY2tzb24gPGl3ajEwQGN1cy5jYW0uYWMudWs+ICBUdWUsIDMwIEphbiAxOTk2IDE1OjA1OjM5ICswMDAwCisKK2Rwa2cgKDEuMC4xNCk7IHByaW9yaXR5PU1FRElVTQorCisgICogZml4ZWQgZmlsZSBkZXNjcmlwdG9yIGxlYWsgaW4gZHBrZyBpbnRyb2R1Y2VkIGluIDEuMC4xMS4KKyAgKiBpbmNsdWRlZCBkcGtnLW5hbWUgaW4gdGhpcyBwYWNrYWdlIChjb25mbGljdHMgd2l0aCBkcGtnLW5hbWUpLgorCisgICogcmVkcmF3IGluIGRzZWxlY3QgbWFpbiBtZW51IGNoYW5nZWQgdG8gdXNlIGNsZWFyb2sgKGxpa2UgaW4gbGlzdHMpLgorICAqIHNhX3Jlc3RvcmVyIGluIHN0cnVjdCBzaWdhY3Rpb24gbm8gbG9uZ2VyIHVzZWQgKHBvcnRhYmlsaXR5IGZpeCkuCisgICogcmVtb3ZlZCBHdWlkZWxpbmVzIGZyb20gc291cmNlIHBhY2thZ2UuCisKKyAtLSBJYW4gSmFja3NvbiA8aXdqMTBAY3VzLmNhbS5hYy51az4gIFR1ZSwgMzAgSmFuIDE5OTYgMDI6NTI6MjkgKzAwMDAKKworZHBrZyAoMS4wLjEzKTsgcHJpb3JpdHk9TUVESVVNCisKKyAgKiBkc2VsZWN0IHBhcnRpdGlvbiBhbmQgbW91bnRlZCBtZXRob2RzIHdvcmsgYWdhaW4uCisgICogZHBrZy1kZWIgLS1uby1hY3QgaW4gdXNhZ2UgbWVzc2FnZS4KKworIC0tIElhbiBKYWNrc29uIDxpd2oxMEBjdXMuY2FtLmFjLnVrPiAgRnJpLCAyNiBKYW4gMTk5NiAxODozNzowMyArMDAwMAorCitkcGtnICgxLjAuMTIpOyBwcmlvcml0eT1NRURJVU0gKEhJR0ggZm9yIHVzZXJzIG9mIDEuMC4xMSkKKworICAqIEZpeGVkIGZyZXF1ZW50IGRwa2cgY29yZWR1bXAgaW50cm9kdWNlZCBpbiAxLjAuMTEuICAoQnVnIzIyMTkuKQorICAqIGRwa2ctZGViIGVuc3VyZXMgdmVyc2lvbiBudW1iZXJzIHN0YXJ0IHdpdGggYWxwaGFudW1lcmljcy4KKworIC0tIElhbiBKYWNrc29uIDxpd2oxMEBjdXMuY2FtLmFjLnVrPiAgV2VkLCAyNCBKYW4gMTk5NiAwMDo0MjozMSArMDAwMAorCitkcGtnICgxLjAuMTEpOyBwcmlvcml0eT1NRURJVU0KKworICAqIGNvcnJlY3RlZCBwb3RlbnRpYWxseSBzZXJpb3VzIHByb2JsZW0gd2l0aCBkcGtnIGxvdy1tZW1vcnkgaW4tY29yZQorICAgIGZpbGVzIGRhdGFiYXNlLgorICAqIGRwa2ctc3BsaXQgLS1tc2RvcyBwdXRzIG91dHB1dCBmaWxlcyBpbiByaWdodCBkaXJlY3RvcnkuICAoQnVnIzIxNjUuKQorCisgICogZGl2ZXJzaW9ucyBpbXBsZW1lbnRlZCAtIHNlZSBgZHBrZy1kaXZlcnQgLS1oZWxwJy4KKworICAqIGRzZWxlY3Qgc2hvd3MgYW5kIHVzZXMgKGZvciBkZXBlbmRlbmNpZXMpIGN1cnJlbnRseSBpbnN0YWxsZWQKKyAgICB2ZXJzaW9uIG9mIGEgcGFja2FnZSBpZiB0aGF0IGlzIG1vcmUgcmVjZW50LgorICAqIGRwa2cgLS1mb3JjZS0uLi4gb3B0aW9ucyBhcmUgaW4gc2VwYXJhdGUgaGVscCBzY3JlZW4uCisgICogYmV0dGVyIGVycm9yIG1lc3NhZ2VzIGZvciBjb3JydXB0ZWQgLmRlYiBhcmNoaXZlcy4gIChCdWcjMjE3OC4pCisgICogZHNlbGVjdCBORlMgbWV0aG9kIHdpbGwgdW5tb3VudCBjb3JyZWN0IGNvcHkgb2YgTkZTIGFyZWEgaWYgbW91bnRlZAorICAgIHR3aWNlLgorCisgICogcmVtb3ZlcyBzb21lIEVMRiBjb21waWxhdGlvbiB3YXJuaW5ncy4KKworIC0tIElhbiBKYWNrc29uIDxpd2oxMEBjdXMuY2FtLmFjLnVrPiAgRnJpLCAxOSBKYW4gMTk5NiAwMjo0MTo0NiArMDAwMAorCitkcGtnICgxLjAuMTApOyBwcmlvcml0eT1NRURJVU0KKworICAqIGRwa2ctZGViIG9wdGlvbiBwYXJzaW5nIHVubXVkZGxlZCAoLUkgb3B0aW9uIHdhcyByZW1vdmVkCisgICAgaW4gMS4wLjkgYW5kIGJyb2tlIGRwa2ctZGViKS4gIChCdWcjMjEyNC4pCisKKyAgKiBkcGtnLXNwbGl0IHdpbGwgd29yayB3aGVuIEVMRiBgYXInIGlzIGluc3RhbGxlZCwgYW5kIGlzIGZhc3Rlci4KKworICAqIG5mcyBkc2VsZWN0IG1ldGhvZCBub3cgYXZhaWxhYmxlLgorICAqIGRpc2sgbWV0aG9kcyBkb24ndCBwcm9tcHQgc3B1cmlvdXNseSBmb3IgUGFja2FnZXMgZmlsZXMuCisgICogY2Ryb20raGFyZGRpc2sgbWV0aG9kcyBjYW4gZmluZCBQYWNrYWdlcyBmaWxlcy4KKworICAqIGRwa2ctc2NhbnBhY2thZ2VzIChjcmVhdGVzIFBhY2thZ2VzIGZpbGVzKSBub3cgaW4gL3Vzci9zYmluLgorCisgICogdmFyaW91cyBjaGFuZ2VzIHRvIGhlbHAgY29tcGlsYXRpb24gb2YgZHBrZy1kZWIsIGRwa2ctc3BsaXQKKyAgICBhbmQgbWQ1c3VtIG9uIG5vbi1EZWJpYW4gc3lzdGVtcy4KKyAgKiA8c3lzL2ZjbnRsLmg+IHJlcGxhY2VkIGJ5IDxmY250bC5oPiB0aHJvdWdob3V0LgorCisgLS0gSWFuIEphY2tzb24gPGl3ajEwQGN1cy5jYW0uYWMudWs+ICBTdW4sIDE0IEphbiAxOTk2IDAyOjU1OjE5ICswMDAwCisKK2Rwa2cgKDEuMC45KTsgcHJpb3JpdHk9TUVESVVNCisKKyAgKiBkc2VsZWN0IHVuaW5pdGlhbGlzZWQgdmFyaWFibGUgY29yZWR1bXAgZml4ZWQgKHRoYW5rcyBDYXJsKS4KKworICAqIHZlcnNpb24gbnVtYmVycyBwcmludGVkIGJ5IC0tdmVyc2lvbiBmaXhlZC4gIChCdWcjMjExNS4pCisgICogZGlzayBtZXRob2QgcHJvYmxlbSB3aXRoIG1pc3NpbmcgUGFja2FnZXMgZmlsZXMgZml4ZWQuICAoQnVnIzIxMTQuKQorICAqIGRlcGVuZGVuY3kgdmVyc2lvbiByZWxhdGlvbnNoaXBzIG5vdyA8PSA+PSA8PCA+PiA9LiAgKEJ1ZyMyMDYwLikKKworICAqIGluc3RhbGwtaW5mbyBpcyBpbiAvdXNyL3NiaW4sIG5vdCAvdXNyL2Jpbi4gIChCdWcjMTkyNC4pCisgICogZHBrZyByZWdhcmRzIFJldmlzaW9uIGZpZWxkIGFzIG9ic29sZXRlLgorCisgICogPGFzbS91bmlzdGQuaD4gY2hhbmdlZCB0byA8bGludXgvdW5pc3RkLmg+IChmb3IgbTY4ayBwb3J0KS4KKyAgKiBzY3JpcHRzL01ha2VmaWxlLmluIGBjbGVhbicgdGFyZ2V0IGRlbGV0ZXMgc2NyaXB0cy4KKworIC0tIElhbiBKYWNrc29uIDxpd2oxMEBjdXMuY2FtLmFjLnVrPiAgVGh1LCAxMSBKYW4gMTk5NiAyMDo1MToyMCArMDAwMAorCitkcGtnICgxLjAuOCk7IHByaW9yaXR5PUxPVworCisgICogdXBkYXRlLWFsdGVybmF0aXZlcyBzbGlnaHRseSBtb3JlIGhlbHBmdWwgbWVzc2FnZS4gIChCdWcjMTk3NS4pCisgICogY29zbWV0aWMgaW1wcm92ZW1lbnRzIHRvIGRpc2sgaW5zdGFsbGF0aW9uIG1ldGhvZC4gIChCdWcjMTk3MCwxOTU2LikKKyAgKiBtb3VudGVkIGZpbGVzeXN0ZW0gYW5kIHVubW91bnRlZCBwYXJ0aXRpb24gc2VwYXJhdGUgbWV0aG9kcy4gIChCdWcjMTk1Ny4pCisKKyAtLSBJYW4gSmFja3NvbiA8aXdqMTBAY3VzLmNhbS5hYy51az4gIFR1ZSwgMTIgRGVjIDE5OTUgMDQ6MDc6NDcgKzAwMDAKKworZHBrZyAoMS4wLjcpOyBwcmlvcml0eT1NRURJVU0gKEhJR0ggdG8gdXBncmFkZSBzeXNsb2dkKQorCisgICogZHNlbGVjdCBoYXJkZGlzay9DRFJPTSBtZXRob2Qgc2NyaXB0IGhhbmRsZXMgbXVsdGlwbGUgcGFja2FnZQorICAgIGFyZWFzLgorICAqIEV2ZXJ5dGhpbmcgaGFzIGEgbWFucGFnZSwgdGhvdWdoIG1hbnkgYXJlIHZlcnkgdW5oZWxwZnVsIGluZGVlZC4KKworIC0tIElhbiBKYWNrc29uIDxpd2oxMEBjdXMuY2FtLmFjLnVrPiAgVGh1LCAzMCBOb3YgMTk5NSAwMzo1OToxNCArMDAwMAorCitkcGtnICgxLjAuNik7IHByaW9yaXR5PU1FRElVTSAoSElHSCB0byB1cGdyYWRlIHN5c2xvZ2QpCisKKyAgKiBjb25mZmlsZXMgY2FuIG5vdyBiZSB0YWtlbiBvdmVyIHByb3Blcmx5IGZyb20gb25lIHBhY2thZ2UgYnkKKyAgICBhbm90aGVyIHdoaWNoIHJlcGxhY2VzIGl0LiAgKEJ1ZyMxNDgyLikKKyAgKiBkcGtnIHdpbGwgbm90IGRlY29uZmlndXJlIGVzc2VudGlhbCBwYWNrYWdlcyB3aGVuIC0tYXV0by1kZWNvbmZpZ3VyZQorICAgIGlzIHNldCAodGhpcyBidWcgd2FzIGZhaXJseSB1bmxpa2VseSBldmVyIHRvIGJlIGV4ZXJjaXNlZCkuCisKKyAgKiBkcGtnIGNoZWNrcyBmb3IgdGhlIHByZXNlbmNlIG9mIGNlcnRhaW4gaW1wb3J0YW50IHByb2dyYW1zIG9uIHRoZSBQQVRILgorICAqIGRzZWxlY3QgaXMgbm93IG1vcmUgaW5mb3JtYXRpdmUgd2hlbiBhIGRlcGVuZGVuY3kgaXMgbWlzc2luZywgc2F5aW5nCisgICAgIjxwYWNrYWdlPiBkb2VzIG5vdCBhcHBlYXIgdG8gYmUgYXZhaWxhYmxlIi4gIChCdWcjMTY0MiwgMTcwNSkuCisKKyAgKiBgbWFrZSBkaXN0Y2xlYW4nIGZpeGVkOyBjb25maWcuKiAmYyByZW1vdmVkIGZyb20gc291cmNlIGFyY2hpdmUuCisgICogbGliL2xvY2suYyBub3cgdXNlcyBmY250bCByYXRoZXIgdGhhbiBmbG9jaywgZm9yIGJldHRlciBwb3J0YWJpbGl0eS4KKworICAqIGBQYWNrYWdlX1JldmlzaW9uOiAwJyByZW1vdmVkIGZyb20gY29udHJvbCBmaWxlLgorICAqIFNvbWUgaW5hY2N1cmFjaWVzIGFuZCBiYWQgZm9ybWF0dGluZyBpbiB2YXJpb3VzIG1lc3NhZ2VzIGNvcnJlY3RlZC4KKworIC0tIElhbiBKYWNrc29uIDxpd2oxMEBjdXMuY2FtLmFjLnVrPiAgVHVlLCAyMSBOb3YgMTk5NSAyMDoxNToxOCArMDAwMAorCitkcGtnICgxLjAuNSk7IHByaW9yaXR5PUxPVworCisgICogZHBrZy1zcGxpdCBhbGxvd3Mgc29tZSBzcGFjZSBmb3IgdGhlIGhlYWRlci4gIChCdWcjMTY0OS4pCisgICogZHBrZy1zcGxpdCBub3cgaGFzIC0tbXNkb3Mgb3B0aW9uIGZvciA4LjMgZmlsZW5hbWVzLgorICAqIGRwa2ctc3BsaXQgLS1qb2luICZjIHdpbGwgbm90IGNvbXBsYWluIGFib3V0IHRyYWlsaW5nIGdhcmJhZ2UuCisKKyAgKiBkc2VsZWN0ICYgZHBrZyB3aWxsIG5vIGxvbmdlciBpZ25vcmUgU0lHSFVQIHdpbGwgcnVubmluZyBzdWJwcm9jZXNzZXMuCisKKyAtLSBJYW4gSmFja3NvbiA8aXdqMTBAY3VzLmNhbS5hYy51az4gIEZyaSwgMTMgT2N0IDE5OTUgMTM6NTk6NTEgKzAxMDAKKworZHBrZyAoMS4wLjQpOyBwcmlvcml0eT1NRURJVU0gKEhJR0ggZm9yIGRzZWxlY3QgdXNlcnMgd2l0aCAxLjAuMykKKworICAqIGZpeGVkIGJ1ZyB3aGljaCBwcmV2ZW50ZWQgZHNlbGVjdCBmcm9tIGRpc3BsYXlpbmcgdGhlIGJvdHRvbSBsaW5lIG9mCisgICAgYW55IGxpc3Rpbmcgc2NyZWVuLiAgVGhpcyB3YXMgaW50cm9kdWNlZCBpbiAxLjAuMywgc29ycnkgIQorCisgICogYSBjb25mZmlsZSB3aWxsIG5ldmVyIGNhdXNlIGEgcHJvbXB0IGlmIHRoZSBwYWNrYWdlIG1haW50YWluZXIKKyAgICBkaXN0cmlidXRlcyBhIGZpbGUgaWRlbnRpY2FsIHRvIHRoZSB1c2VyJ3MsIGV2ZW4gaWYgdGhlIGZpbGUgaGFzCisgICAgYmVlbiBlZGl0ZWQgYnkgYm90aCB0aGUgdXNlciBhbmQgdGhlIG1haW50YWluZXIgb3IgaXMgYQorICAgIG5ld2x5LXJlZ2lzdGVyZWQgY29uZmZpbGUuICAoQnVnIzE2MzkuKQorCisgICogZHNlbGVjdCBkaXNrL2Nkcm9tIG1ldGhvZCBzY3JpcHQgc2F5cyB3aGVyZSB0byBnZXQgUGFja2FnZXMgZmlsZS4KKyAgKiBkc2VsZWN0IGhlbHAgaGFzIGJldHRlciBkZXNjcmlwdGlvbnMgb2YgdGhlIGZ1bmN0aW9ucyBvZiBSZXR1cm4gYW5kIFEuCisKKyAgKiBwb3N0aW5zdCBub3cgd2FybnMgYWJvdXQgc29tZSBwcm9ibGVtcyB3aXRoIC91c3IvbGliL2Rwa2cvbWV0aG9kcy9oZC4KKworIC0tIElhbiBKYWNrc29uIDxpd2oxMEBjdXMuY2FtLmFjLnVrPiAgVGh1LCAxMiBPY3QgMTk5NSAwMTo0NTozOCArMDEwMAorCitkcGtnICgxLjAuMyk7IHByaW9yaXR5PU1FRElVTQorCisgICogZHNlbGVjdDogZml4ZWQgc2VnZmF1bHQgd2hlbiBkb2luZyBzb21lIG11bHRpcGxlIChkZSlzZWxlY3Rpb25zLgorCisgLS0gSWFuIEphY2tzb24gPGl3ajEwQGN1cy5jYW0uYWMudWs+ICBUdWUsIDEwIE9jdCAxOTk1IDAzOjIxOjEyICswMTAwCisKK2Rwa2cgKDEuMC4yKTsgcHJpb3JpdHk9TUVESVVNCisKKyAgKiBwcm9ibGVtIHdpdGggc2NyZWVuIHJlZnJlc2ggYWZ0ZXIgYG8nIChjaGFuZ2Ugb3JkZXIpIGNvcnJlY3RlZC4KKworIC0tIElhbiBKYWNrc29uIDxpd2oxMEBjdXMuY2FtLmFjLnVrPiAgTW9uLCA5IE9jdCAxOTk1IDEzOjExOjA0ICswMTAwCisKK2Rwa2cgKDEuMC4xKTsgcHJpb3JpdHk9TE9XCisKKyAgKiBtdWNoIGJldHRlciBkcGtnIHBlcmZvcm1hbmNlIG9uIGxvdy1tZW1vcnkgc3lzdGVtcy4KKyAgKiBzdGFydC1zdG9wLWRhZW1vbiAtLW5hbWUgc2hvdWxkIG5vdyB3b3JrLiAob29wcyEpCisgICogZml4ZWQgdHlwbyB3aGljaCBjb3VsZCB0dXJuIGludG8gbWVtb3J5IG92ZXJ3cml0aW5nIGJ1ZyBzb21ldGltZS4KKworIC0tIElhbiBKYWNrc29uIDxpd2oxMEBjdXMuY2FtLmFjLnVrPiAgU3VuLCA4IE9jdCAxOTk1IDIwOjEyOjI5ICswMTAwCisKK2Rwa2cgKDEuMC4wKTsgcHJpb3JpdHk9TE9XCisKKyAgKiBWZXJzaW9uIDEuMC4wOiBkcGtnIGlzIG5vIGxvbmdlciBiZXRhLgorCisgICogdGFyIGV4dHJhY3RvciBubyBsb25nZXIgbG9va3MgdXAgYW4gZW1wdHkgc3RyaW5nIHVzaW5nIGdldGdybmFtCisgICAgKHRoaXMgY2F1c2VzIHRoZSBsaWJjIHRvIGNvcmVkdW1wIHdoZW4gdXNpbmcgTklTKS4KKworIC0tIElhbiBKYWNrc29uIDxpd2oxMEBjdXMuY2FtLmFjLnVrPiAgU3VuLCAxIE9jdCAxOTk1IDEzOjA3OjM2ICswMTAwCisKK2Rwa2cgKDAuOTMuODApOyBwcmlvcml0eT1MT1cKKworICAqIGRzZWxlY3QgaGVscCBzY3JlZW4gaW50cm8gY2hhbmdlZCB0byByZW1vdmUgYG11Y2gnIGJlZm9yZSBgaGVscCcuCisKKyAgKiB1cGRhdGUtYWx0ZXJuYXRpdmVzLnBsIGNvbnRhaW5zIGhhcmRjb2RlZCBFTk9FTlQgdmFsdWUsIGluc3RlYWQKKyAgICBvZiByZXF1aXJpbmcgUE9TSVgucG0gdG8gYmUgcHJlc2VudC4KKworICAqIE1ha2VmaWxlcyBjaGFuZ2VkIHRvIHN0cmlwIHdoZW4gaW5zdGFsbGluZyBpbnN0ZWFkIG9mIHdoZW4gYnVpbGRpbmcuCisKKyAtLSBJYW4gSmFja3NvbiA8aXdqMTBAY3VzLmNhbS5hYy51az4gIFNhdCwgMzAgU2VwIDE5OTUgMDE6NDQ6MTIgKzAxMDAKKworZHBrZyAoMC45My43OSkgQkVUQTsgcHJpb3JpdHk9TE9XCisKKyAgKiBEUEtHX05PX1RTVFAgZW52aXJvbm1lbnQgdmFyaWFibGUgd2hpY2ggc3RvcHMgZHBrZyBzZW5kaW5nIHRoZQorICAgIHByb2Nlc3MgZ3JvdXAgYSBTSUdUU1RQIChCdWcjMTQ5NikuCisgICogRW5kIGtleSBzaG91bGQgd29yayBpbiBkc2VsZWN0IGxpc3RzIChCdWcjMTUwMSkuCisgICogdmFyaW91cyBtZXNzYWdlIHR5cG9zIChtaXNzaW5nIFxuJ3MpIGZpeGVkIChCdWcjMTUwNCkuCisKKyAtLSBJYW4gSmFja3NvbiA8aXdqMTBAY3VzLmNhbS5hYy51az4gIEZyaSwgMjkgU2VwIDE5OTUgMDM6Mjc6MDEgKzAxMDAKKworZHBrZyAoMC45My43OCkgQkVUQTsgcHJpb3JpdHk9TE9XCisKKyAgKiBkc2VsZWN0IGtleXN0cm9rZXMgaGVscCBmaWxlIHR5cG8gZml4LgorCisgLS0gSWFuIEphY2tzb24gPGl3ajEwQGN1cy5jYW0uYWMudWs+ICBUaHUsIDI4IFNlcCAxOTk1IDIwOjMxOjAyICswMTAwCisKK2Rwa2cgKDAuOTMuNzcpIEJFVEE7IHByaW9yaXR5PU1FRElVTQorCisgICogZHBrZyAtLXJlbW92ZSAtLXBlbmRpbmcgd2lsbCBwdXJnZSB0aGluZ3Mgd2hlbiBhcHByb3ByaWF0ZS4KKworICAqIGZpeGVkIGZhaWx1cmUgdG8gbnVsbC10ZXJtaW5hdGUgZHBrZyBjb25mbGljdCBwcm9ibGVtIG1lc3NhZ2VzLgorICAqIGZpeGVkIGJ1ZyBpbiBmb3JtYXR0aW5nIG9mIGRlcGVuZGVuY3kgdmVyc2lvbiBwcm9ibGVtIG1lc3NhZ2VzLgorCisgICogQ29uZmZpbGVzIHJlc29sdXRpb24gcHJvbXB0IGZvciBuZXcgY29uZmZpbGU6IHR5cG8gZml4ZWQuCisgICogQ2hhbmdlZCBkcGtnIHVzYWdlIGVycm9yIHRvIHN1Z2dlc3QgYC1EaGVscCcgaW5zdGVhZCBvZiBgLS1EaGVscCcuCisKKyAtLSBJYW4gSmFja3NvbiA8aXdqMTBAY3VzLmNhbS5hYy51az4gIFdlZCwgMjAgU2VwIDE5OTUgMjM6NDQ6MzUgKzAxMDAKKworZHBrZyAoMC45My43NikgQkVUQTsgcHJpb3JpdHk9TUVESVVNCisKKyAgKiBkcGtnIC0tYXV0by1kZWNvbmZpZ3VyZSBvcHRpb24gKHVzZWQgYXV0b21hdGljYWxseSBieSBkc2VsZWN0KSBhbGxvd3MKKyAgICBgaW1wb3J0YW50JyBwYWNrYWdlcyB3aGljaCBtYW55IG90aGVycyBkZXBlbmQgb24gdG8gYmUgc3BsaXQuCisgICogZHBrZyBzaG91bGQgbm8gbG9uZ2VyIGZhaWwgYW4gYXNzZXJ0aW9uIGR1cmluZyBjb21wbGljYXRlZAorICAgIG11bHRpcGxlIGNvbmZpZ3VyYXRpb25zIGludm9sdmluZyBwYWNrYWdlcyB3aGljaCBhcmUgb24gaG9sZC4KKworICAqIHVwZGF0ZS1hbHRlcm5hdGl2ZXMgc3VwcG9ydHMgbmVnYXRpdmUgcHJpb3JpdGllcy4KKyAgKiAvZXRjL2FsdGVybmF0aXZlcyBpcyBpbmNsdWRlZCBpbiB0aGUgLmRlYiBhcmNoaXZlLgorCisgICogUGFja2FnZSBwcmlvcml0aWVzIGNoYW5nZWQ6IFJlcXVpcmVkIChSZXEpLCBJbXBvcnRhbnQgKEltcCksIFN0YW5kYXJkIChTdGQpLAorICAgIE9wdGlvbmFsIChPcHQpIGFuZCBFeHRyYSAoWHRyKS4gIEZvciBiYWNrd2FyZCBjb21wYXRpYmlsaXR5IEJhc2UgaXMgYW4KKyAgICBhbGlhcyBmb3IgUmVxdWlyZWQsIGFuZCBSZWNvbW1lbmRlZCBpcyBrZXB0IGFzIGEgbGV2ZWwganVzdCBiZWxvdyBTdGFuZGFyZC4KKworICAqIGRzZWxlY3Qgc2hvd3MgaW50cm9kdWN0b3J5IGhlbHAgc2NyZWVuIHdoZW4gZW50ZXJpbmcgcGFja2FnZSBsaXN0cyAoYm90aAorICAgIG1haW4gYW5kIHJlY3Vyc2l2ZSkuCisgICogZHNlbGVjdCBoZWxwIG1lc3NhZ2VzIG1hZGUgbW9yZSBmcmllbmRseS4KKyAgKiBkc2VsZWN0IHBhY2thZ2UgbGlzdCBgcXVpdCwgY29uZmlybSwgYW5kIGNoZWNrIGRlcGVuZGVuY2llcycga2V5IGlzCisgICAgbm93IFJldHVybiByYXRoZXIgdGhhbiBsb3dlcmNhc2UgYHEnOyBsaWtld2lzZSBtZXRob2QgbGlzdCBgc2VsZWN0IHRoaXMKKyAgICBvbmUgYW5kIGNvbmZpZ3VyZSBpdCcga2V5LgorICAqIGRzZWxlY3Qgc2VsZWN0cyBwYWNrYWdlcyB3aXRoIHByaW9yaXR5IGBzdGFuZGFyZCcgb3IgYmV0dGVyIGJ5IGRlZmF1bHQuCisgICogZHNlbGVjdCBgdj12ZXJib3NlJyBiZWNvbWVzIGB2PXRlcnNlJyB3aGVuIGluIHZlcmJvc2UgbW9kZS4KKworICAqIGhhcmQgZGlzayBtZXRob2QgdW5tb3VudHMgL3Zhci9saWIvZHBrZy9tZXRob2RzL21udCBvbiBmYWlsdXJlLgorICAqIGRpc2sgbWV0aG9kcycgaW5zdGFsbCBtZXNzYWdlIHVzZXMgYHN0dHknIHRvIGZpbmQgb3V0IHdoYXQgdGhlCisgICAgaW50ZXJydXB0IGNoYXJhY3RlciBpcywgYW5kIHVzZXMgdGhhdCBpbiB0aGUgcHJvbXB0IChyYXRoZXIgdGhhbiBeQykuCisgICogZHBrZyBub3cgdG9sZXJhdGVzIF5aIGNoYXJhY3RlcnMgaW4gUGFja2FnZXMgZmlsZXMuCisgICogaGFyZGRpc2sgbWV0aG9kIGRvZXNuJ3QgZGlzcGxheSBleHRyYSBzbGFzaCB3aGVuIHVwZGF0aW5nIHBhY2thZ2VzIGZpbGUuCisgICogaGFyZGRpc2sgbWV0aG9kIGJ1cmJsZXMgbGVzcyBpZiBpdCBkb2Vzbid0IGhhdmUgYSBnb29kIGRlZmF1bHQuCisKKyAgKiBkcGtnLWRlYiBub3cgc3VwcG9ydHMgbmV3IGZsZXhpYmxlIGZvcm1hdCwgYnV0IG9sZCBmb3JtYXQgc3RpbGwgZGVmYXVsdC4KKworIC0tIElhbiBKYWNrc29uIDxpd2oxMEBjdXMuY2FtLmFjLnVrPiAgV2VkLCAyMCBTZXAgMTk5NSAwMjo0OTo0MSArMDEwMAorCitkcGtnICgwLjkzLjc1KSBCRVRBOyBwcmlvcml0eT1NRURJVU0KKworICAqIGRzZWxlY3Qgbm8gbG9uZ2VyIHNlZ2ZhdWx0cyB3aGVuIHlvdSB0cnkgdG8gbW9kaWZ5IHRoZSBsYXN0IGl0ZW0uCisKKyAgKiBkc2VsZWN0IE1ha2VmaWxlIGNvbXBpbGVzIHdpdGggLWcsIGFuZCBsaW5rcyB3aXRob3V0IC1zLCBidXQgaW5zdGFsbHMKKyAgICB3aXRoIC1zLCBzbyB0aGF0IGJ1aWx0IHNvdXJjZSBkaXJlY3RvcnkgaGFzIGRlYnVnYWJibGUgYmluYXJ5LgorCisgLS0gSWFuIEphY2tzb24gPGl3ajEwQGN1cy5jYW0uYWMudWs+ICBUdWUsIDEyIFNlcCAxOTk1IDAyOjU5OjI5ICswMTAwCisKK2Rwa2cgKDAuOTMuNzQpIEJFVEE7IHByaW9yaXR5PUxPVworCisgICogZHBrZy1zcGxpdCBpbXBsZW1lbnRlZCBhbmQgaW5zdGFsbGVkIGluIC91c3IvYmluL2Rwa2ctc3BsaXQuCisgICAgKE5CIHRoaXMgaXMgbm90IGNvbXBhdGlibGUgd2l0aCBDYXJsIFN0cmVldGVyJ3Mgb2xkIGRwa2ctc3BsaXQgc2NyaXB0LikKKyAgKiBkcGtnIHVzZXMgZHBrZy1zcGxpdC4KKyAgKiBmbG9wcHkgZGlzayBtZXRob2QgYXZhaWxhYmxlIC0gTkIgdGhpcyBpcyBhIGZpcnN0IGF0dGVtcHQgb25seS4KKworICAqIGhhcmQgZGlzayBtZXRob2QgdXNlcyAtLW1lcmdlLWF2YWlsIHJhdGhlciB0aGFuIC0tdXBkYXRlLWF2YWlsLgorICAqIGluc3RhbGxhdGlvbiBieSBkZWZhdWx0IG9mIGBzdGFuZGFyZCcgcGFja2FnZXMgcmVtb3ZlZCBhZ2Fpbi4KKyAgICAoSSBkb24ndCB0aGluayB0aGlzIGlzIHRoZSByaWdodCBwbGFjZSB0byBkbyB0aGlzLikKKyAgKiB1cGRhdGUtYWx0ZXJuYXRpdmVzIC0tcmVtb3ZlIGNvcnJlY3RseSBkZWxldGVzIGFsbCBzbGF2ZSBsaW5rczsKKyAgICBtaW5vciBjb3NtZXRpYyBpbXByb3ZlbWVudHMuCisKKyAtLSBJYW4gSmFja3NvbiA8aXdqMTBAY3VzLmNhbS5hYy51az4gIE1vbiwgMTEgU2VwIDE5OTUgMDI6MDY6MDUgKzAxMDAKKworZHBrZyAoMC45My43MykgQkVUQTsgcHJpb3JpdHk9TE9XCisKKyAgKiBkc2VsZWN0IG11bHRpLXBhY2thZ2Ugc2VsZWN0aW9uIG5vdyBkb25lIGJ5IGBkaXZpZGVyJyBsaW5lcworICAgIGFjdHVhbGx5IGluIHRoZSBwYWNrYWdlIGxpc3QsIHJhdGhlciB0aGFuIGhvcml6b250YWwgaGlnaGxpZ2h0CisgICAgbW92ZW1lbnQuCisgICogZHNlbGVjdCBoZWxwIGF2YWlsYWJsZSwgYW5kIGtleWJpbmRpbmdzIHJhdGlvbmFsaXNlZC4KKworICAqIHBvc3RpbnN0IHJlbW92ZXMgL3Vzci9saWIvZHBrZy9tZXRob2RzL2hkIGlmIHVwZ3JhZGluZyBmcm9tCisgICAgMC45My40Mi4zIG9yIGVhcmxpZXIuCisgICogYGhvbGQnIGZsYWcgY2hhbmdlZCB0byBiZSBzZXR0YWJsZSBieSB0aGUgdXNlciBvbmx5LCBhbmQKKyAgICBtYWRlIG9ydGhvZ29uYWwgdG8gdGhlIGByZWluc3RhbGxhdGlvbiByZXF1aXJlZCcgZmxhZy4KKyAgKiBkcGtnIHdpbGwgaW5zdGFsbCBieSBkZWZhdWx0IGFueSBwYWNrYWdlcyB3aXRoIHByaW9yaXR5IG9mCisgICAgYHN0YW5kYXJkJyBvciBiZXR0ZXIgdW5sZXNzIHRoZXkncmUgZXhwbGljaXRseSBkZXNlbGVjdGVkLgorCisgICogZHNlbGVjdCBkZXBlbmRlbmN5L2NvbmZsaWN0IHJlc29sdXRpb24gd2lsbCBzdWdnZXN0IG1hcmtpbmcgYWJzZW50CisgICAgcGFja2FnZXMgZm9yIGBwdXJnZScgcmF0aGVyIHRoYW4gYGRlaW5zdGFsbCcuCisgICogZGlzayBtZXRob2Qgc2NyaXB0IHByb2R1Y2VzIG1lc3NhZ2UgYWJvdXQgaW52b2tpbmcgZHBrZy4KKyAgKiBkcGtnIHByb2R1Y2VzIHdhcm5pbmcsIG5vdCBlcnJvciwgd2hlbiBpdCBnZXRzIEVQRVJNIHRyeWluZyB0bworICAgIHJlbW92ZSBhIGRpcmVjdG9yeSBiZWxvbmdpbmcgdG8gYSBwYWNrYWdlIGJlaW5nIHJlbW92ZWQuCisgICogZHBrZywgZHBrZy1kZWIgdXNhZ2UgZXJyb3IgcmVwb3J0aW5nIGltcHJvdmVkLgorICAqIGRzZWxlY3QgZGV0ZWN0cyB0b28tZHVtYiB0ZXJtaW5hbHMgYW5kIHN0b3BzLgorICAqIGRwa2ctZGViKDgpIHVwZGF0ZWQgYSBsaXR0bGUgKHRoYW5rcyB0byBCaWxsIE1pdGNoZWxsKS4KKworICAqIGRzZWxlY3QgZGVidWdtYWtlIHNjcmlwdCB1c2VzIC1PMC4KKworIC0tIElhbiBKYWNrc29uIDxpd2oxMEBjdXMuY2FtLmFjLnVrPiAgU3VuLCAxMCBTZXAgMTk5NSAxMjoyMzowNSArMDEwMAorCitkcGtnICgwLjkzLjcyKSBCRVRBOyBwcmlvcml0eT1NRURJVU0KKworICAqIC91c3Ivc2Jpbi91cGRhdGUtYWx0ZXJuYXRpdmVzIGFkZGVkLgorCisgICogTmV3IG5hbWVzIGZvciBjZXJ0YWluIGNvbnRyb2wgZmlsZSBmaWVsZHMgKG9sZCBuYW1lcyB3b3JrCisgICAgYXMgYWxpYXNlcyk6IE9wdGlvbmFsIC0+IFN1Z2dlc3RzLCBSZWNvbW1lbmRlZCAtPiBSZWNvbW1lbmRzLAorICAgIENsYXNzIC0+IFByaW9yaXR5LgorICAgICAKKyAtLSBJYW4gSmFja3NvbiA8aXdqMTBAY3VzLmNhbS5hYy51az4gIFN1biwgMyBTZXAgMTk5NSAxNjozNzo0MSArMDEwMAorCitkcGtnICgwLjkzLjcxKSBCRVRBOyBwcmlvcml0eT1MT1cKKworICAqIGRwa2cgZG9lc24ndCBzaWxlbnRseSBvdmVyd3JpdGUgYG5ldycgY29uZmZpbGVzIChCdWcjMTI4MykuCisgICogY2FzZSBub3cgbm90IHNpZ25pZmljYW50IGluIEVzc2VudGlhbCwgU3RhdHVzIGFuZCBDbGFzcyAoQnVnIzEyODApLgorICAqIGRzZWxlY3QgY2hlY2tzIG1ldGhvZCBzY3JpcHRzIGZvciBleGVjdXRlLCBub3QgZm9yIHdyaXRlLgorCisgICogc3BlbGxpbmcgZml4ZXMgaW4gbGliL2RibW9kaWZ5LmMgYW5kIGRzZWxlY3QvaGVscG1zZ3Muc3JjLgorCisgICogZHNlbGVjdCBgY2xlYW4nIHRhcmdldCBkZWxldGVzIGhlbHBtc2dzLmNjIGFuZCBoZWxwbXNncy5jYy5uZXcuCisKKyAtLSBJYW4gSmFja3NvbiA8aXdqMTBAY3VzLmNhbS5hYy51az4gIFRodSwgMzEgQXVnIDE5OTUgMTM6NTY6MDggKzAxMDAKKworZHBrZyAoMC45My43MCkgQkVUQTsgcHJpb3JpdHk9TUVESVVNCisKKyAgKiBkc2VsZWN0IHVubW91bnRlZCBoYXJkZGlzayBtZXRob2QgaGFzIG1hbnkgc2lsbHkgYnVncyBmaXhlZC4KKworICAqIGRwa2cgLS1yb290IG9wdGlvbiByZXN0b3JlZCAod2FzIHJlbW92ZWQgYnkgbWlzdGFrZSBpbiAwLjkzLjY4KS4KKyAgKiBtaW5vciBjb3NtZXRpYyBjaGFuZ2UgdG8gZHNlbGVjdCBzdWJwcm9jZXNzIGZhaWx1cmUgbWVzc2FnZS4KKworIC0tIElhbiBKYWNrc29uIDxpd2oxMEBjdXMuY2FtLmFjLnVrPiAgV2VkLCA5IEF1ZyAxOTk1IDIyOjE4OjU1ICswMTAwCisKK2Rwa2cgKDAuOTMuNjkpIEJFVEE7IHByaW9yaXR5PU1FRElVTQorCisgICogZHBrZyAtLWNvbmZpZ3VyZSBhbmQgLS1yZW1vdmUgc2hvdWxkIHdvcmsgcHJvcGVybHkgd2hlbgorICAgIHRoZXkgaGF2ZSB0byBkZWZlciBwcm9jZXNzaW5nICh0aGlzIHRlbmRzIHRvIGhhcHBlbiB3aGVuIG1hbnkKKyAgICBwYWNrYWdlcyBhcmUgcHJvY2Vzc2VkIGF0IG9uY2UpLiAgKEJ1ZyMxMjA5LikKKworICAqIGRwa2cgLS1jb25maWd1cmUgYW5kIC0tcmVtb3ZlIHdvcmsgYmV0dGVyIHdoZW4gYHByb2Nlc3NpbmcnCisgICAgc2V2ZXJhbCByZWxhdGVkIHBhY2thZ2VzIHdpdGggLS1uby1hY3QuCisKKyAgKiBkcGtnIC0tYXV0byBpcyBub3cgdHdvIG9wdGlvbnMsIC0tcGVuZGluZyBvciAtYSAoZm9yIGNvbmZpZ3VyZSwKKyAgICByZW1vdmUsICZjKSBhbmQgLS1yZWN1cnNpdmUgb3IgLVIgKGZvciBpbnN0YWxsLCB1bnBhY2ssICZjKS4KKworICAqIGRwa2cgZGVidWcgb3B0aW9ucyBpbiB1c2FnZSBtZXNzYWdlLCBhbmQgdmFsdWVzIGF2YWlsYWJsZSAoLURoKS4KKworIC0tIElhbiBKYWNrc29uIDxpd2oxMEBjdXMuY2FtLmFjLnVrPiAgV2VkLCA5IEF1ZyAxOTk1IDIyOjE4OjU1ICswMTAwCisKK2Rwa2cgKDAuOTMuNjgpIEJFVEE7IHByaW9yaXR5PU1FRElVTQorCisgICogZHBrZyB3b24ndCBnZXQgYW4gaW50ZXJuYWwgZXJyb3IgaWYgeW91IHRyeSB0byB1c2UgdGhlIGRlZmF1bHQKKyAgICBjb25mZmlsZXMgcmVzcG9uc2UgKGllLCBpZiB5b3UganVzdCBoaXQgcmV0dXJuKS4gIChCdWcjMTIwOC4pCisKKyAgKiBkc2VsZWN0IGhhcmQgZGlzayBhbmQgQ0QtUk9NIG1ldGhvZHMgLSB0aGUgcmVhbCB0aGluZywgYnV0IEFMUEhBLgorCisgICogZHNlbGVjdCBhbGxvd3MgeW91IHRvIGdvIHN0cmFpZ2h0IHRvIGB1cGRhdGUnIG9yIGBpbnN0YWxsJyBpZgorICAgIHlvdSBoYXZlIGFscmVhZHkgc2V0IHVwIGFuIGFjY2VzcyBtZXRob2QuCisgICogbmV3IGRwa2cgb3B0aW9ucyAtLXlldC10by11bnBhY2ssIC0tbWVyZ2UtYXZhaWwgYW5kIC0tdXBkYXRlLWF2YWlsLgorICAqIGRwa2cgLUcgaXMgYW4gYWJicmV2aWF0aW9uIGZvciBkcGtnIC0tcmVmdXNlLWRvd25ncmFkZS4KKyAgKiBkcGtnIC1SIGFsaWFzIGZvciAtLXJvb3Qgd2l0aGRyYXduLCBwZW5kaW5nIHJldXNlIHdpdGggZGlmZmVyZW50IG1lYW5pbmcuCisgICogZHBrZyAtLWhlbHAgbWVzc2FnZSByYXRpb25hbGlzZWQgc29tZXdoYXQuCisKKyAgKiBPYnNvbGV0ZSBgZXhhbXBsZXMnIGFuZCBgZHBrZy1zcGxpdCcgZGlyZWN0b3JpZXMgcmVtb3ZlZCBmcm9tCisgICAgc291cmNlIHRyZWUuICBUaGUgYGhlbGxvJyBwYWNrYWdlIGlzIGEgYmV0dGVyIGV4YW1wbGUuCisKKyAtLSBJYW4gSmFja3NvbiA8aXdqMTBAY3VzLmNhbS5hYy51az4gIE1vbiwgNyBBdWcgMTk5NSAwMjoxNjoyNSArMDEwMAorCitkcGtnICgwLjkzLjY3KSBCRVRBOyBwcmlvcml0eT1MT1cgZm9yIEMgZHBrZyBhbHBoYSB0ZXN0ZXJzLCBISUdIIGZvciBvdGhlcnMKKworICAqIGRwa2cgbm8gbG9uZ2VyIHN0YXRpY2FsbHkgbGlua2VkIGFuZCAtZy4KKyAgKiBjYWxscyB0byBhYm9ydCgpIGNoYW5nZWQgdG8gcHJpbnQgc3RyaW5nLCBmaWxlIGFuZCBsaW5lIG51bWJlciBmaXJzdC4KKyAgKiByZW1vdmVkIHVudXNlZCB2YXJpYWJsZSBmcm9tIGRwa2cgc291cmNlLgorCisgLS0gSWFuIEphY2tzb24gPGl3ajEwQGN1cy5jYW0uYWMudWs+ICBGcmksIDQgQXVnIDE5OTUgMDE6Mzk6NTIgKzAxMDAKKworZHBrZyAoMC45My42NikgQUxQSEE7IHByaW9yaXR5PU1FRElVTQorCisgICogZHBrZyB3aWxsIGNvcnJlY3RseSByZW1vdmUgb3ZlcndyaXR0ZW4gZmlsZXMgZnJvbSB0aGUgbGlzdHMgb2YKKyAgICB0aGUgcGFja2FnZShzKSB0aGF0IHVzZWQgdG8gY29udGFpbiB0aGVtLgorCisgICogZHBrZyAtLXB1cmdlIGlzIG5vdyBhbiBhY3Rpb24sIHJhdGhlciB0aGFuIGEgbW9kaWZpZXIgZm9yIC0tcmVtb3ZlLAorICAgIGFuZCB0aGUgLVAgYWxpYXMgZm9yIGl0IGlzIHdpdGhkcmF3bi4KKworICAqIGRwa2cgLS11bnBhY2svLS1pbnN0YWxsIGZpbGVuYW1lcyBpbiBtZXNzYWdlcyBhcmUgbm93IG1vcmUgc2Vuc2libGUKKyAgICBhYm91dCB3aGVuIHRvIHVzZSAuLi4vIChzaG93IGFzIG1hbnkgdHJhaWxpbmcgY29tcG9uZW50cyBhcyBwb3NzaWJsZQorICAgIGluIDQwIGNoYXJhY3RlcnMsIG9yIHRoZSB3aG9sZSBwYXRoIGlmIHRoYXQgdGhlIGxhc3QgY29tcG9uZW50IGlzCisgICAgbG9uZ2VyIHRoYW4gdGhhdCkuCisKKyAtLSBJYW4gSmFja3NvbiA8aXdqMTBAY3VzLmNhbS5hYy51az4gIFRodSwgMyBBdWcgMTk5NSAwMjoxMTowMyArMDEwMAorCitkcGtnICgwLjkzLjY1KSBBTFBIQTsgcHJpb3JpdHk9TUVESVVNCisKKyAgKiBkcGtnIC0tcmVtb3ZlIHNob3VsZCwgd2hlbiBhIHBhY2thZ2UgYmVpbmcgcmVtb3ZlZCBpcyBkZXBlbmRlZC1vbgorICAgIGJ5IGFub3RoZXIgdGhhdCBpcyBhbHNvIHF1ZXVlZCBmb3IgcmVtb3ZhbCwgZGVmZXIgdGhlIGRlcGVuZGVkLW9uCisgICAgcGFja2FnZSByYXRoZXIgdGhhbiBhYm9ydGluZyBpdC4gIChCdWcjMTE4OC4pCisKKyAgKiBkcGtnIHdpbGwgbm90IGF0dGVtcHQgdG8gY29uZmlndXJlIG9yIHJlbW92ZSBhIHBhY2thZ2UgbW9yZSB0aGFuCisgICAgb25jZSBpbiB0aGUgc2FtZSBydW4uICAoQnVnIzExNjkuKQorCisgICogZHBrZyBjb3NtZXRpYyBmaXggdG8gZGVwZW5kZW5jeSBwcm9ibGVtcyBtZXNzYWdlICh0aGlzIGJ1ZworICAgIGhhc24ndCBiZWVuIHRyaWdnZXJlZCB0byBteSBrbm93bGVkZ2UpLgorCisgICogcGVybC1kcGtnIG5vIGxvbmdlciBpbnN0YWxsZWQgaW4gL3Vzci9iaW4uCisKKyAtLSBJYW4gSmFja3NvbiA8aXdqMTBAY3VzLmNhbS5hYy51az4gIFdlZCwgMiBBdWcgMTk5NSAxMzowMjo1OCArMDEwMAorCitkcGtnICgwLjkzLjY0KSBBTFBIQTsgcHJpb3JpdHk9TUVESVVNCisKKyAgKiBkcGtnIG1hcmtzIGEgcGFja2FnZSBhcyBubyBsb25nZXIgYHRvIGJlIGNvbmZpZ3VyZWQgaW4gdGhpcyBydW4nCisgICAgd2hlbiBhbiBlcnJvciBvY2N1cnMsIHNvIHRoYXQgb3RoZXIgcGFja2FnZXMgd2hpY2ggZGVwZW5kIG9uIGl0CisgICAgd2lsbCBmYWlsIChyYXRoZXIgdGhhbiBjYXVzaW5nIGEgbG9vcCBhbmQgYW4gYXNzZXJ0aW9uIGZhaWx1cmUsCisgICAgIHBhY2thZ2VzLmM6MTY2OiBmYWlsZWQgYXNzZXJ0aW9uIGBkZXBlbmR0cnkgPD0gNCcpLgorCisgICogZHNlbGVjdCBpbml0aWFsIHNlbGVjdGlvbiBncmFudWxhcml0eSBpcyBzaW5nbGUtcGFja2FnZS4KKyAgKiBkcGtnIC0tbm8tYWxzby1zZWxlY3Qgb3B0aW9uIHJlbmFtZWQgdG8gLS1zZWxlY3RlZC1vbmx5IChvbGQgb3B0aW9uCisgICAgc3RpbGwgYWNjZXB0ZWQsIGJ1dCBubyBsb25nZXIgaW4gLS1oZWxwKS4gIENoYW5nZWQgLU4gdG8gLU8uCisKKyAgKiBkc2VsZWN0IGB1cGRhdGUnIG9wdGlvbiBjaGFuZ2VkIHRvIGBpbnN0YWxsJyAoYW5kIG90aGVyIG9wdGlvbnMKKyAgICByZW5hbWVkIHRvbykuICBOQjogb2xkIGFjY2VzcyBtZXRob2RzIHdpbGwgbm90IHdvcmssIGJlY2F1c2UKKyAgICB0aGUgYHVwZGF0ZScgc2NyaXB0IHNob3VsZCBub3cgYmUgYW4gYGluc3RhbGwnIHNjcmlwdC4KKworICAqIGRzZWxlY3QgYGluc3RhbGxhdGlvbiBtZXRob2RzJyByZW5hbWVkIHRvIGBhY2Nlc3MgbWV0aG9kcycuCisgICogZHBrZyAtLXNraXAtc2FtZS12ZXJzaW9uIGFuZCAtLXJlZnVzZS1kb3duZ3JhZGUgcHJvZHVjZSBmcmllbmRsaWVyCisgICAgbWVzc2FnZXMgd2hlbiB0aGV5IHNraXAgcGFja2FnZXMuCisgICogLS1saWNlbmNlIG9wdGlvbiBub3cgcHJvcGVybHkgbWVudGlvbmVkIGluIGFsbCBwcm9ncmFtcycgLS12ZXJzaW9uCisgICAgbWVzc2FnZXMuCisKKyAgKiBiYWQgZml4IGZvciBFTEYgY29tcGlsZSBwcm9ibGVtIGludm9sdmluZyBteW9wdC5oIHJlbW92ZWQgKGNvbXBpbGUKKyAgICBwcm9ibGVtIHR1cm5lZCBvdXQgdG8gYmUgYSBHQ0MgYnVnLikKKworIC0tIElhbiBKYWNrc29uIDxpd2oxMEBjdXMuY2FtLmFjLnVrPiAgVHVlLCAxIEF1ZyAxOTk1IDAzOjAzOjU4ICswMTAwCisKK2Rwa2cgKDAuOTMuNjMpIEFMUEhBOyBwcmlvcml0eT1MT1cKKworICAqIHByZWluc3Qgd29ya3MgYXJvdW5kIHNoZWxsIGJ1Zy9taXNmZWF0dXJlIGludm9sdmluZyBgdHJhcCcuCisKKyAgKiBkcGtnIC0tc2tpcC1zYW1lLXZlcnNpb24gZG9lc24ndCBza2lwIHBhY2thZ2VzIHdoaWNoIGhhdmUKKyAgICBhbiBlcnJvciBmbGFnIHNldCBvciB3aGljaCBhcmVuJ3QgaW4gYSBzdGFuZGFyZCBgaW5zdGFsbGVkJyBzdGF0ZS4KKworICAqIGRwa2cgLS1zZWFyY2ggbm93IGRvZXMgYSBzdWJzdHJpbmcgc2VhcmNoIGlmIHRoZSBzdHJpbmcgZG9lc24ndAorICAgIHN0YXJ0IHdpdGggYSB3aWxkY2FyZCBjaGFyYWN0ZXIgKCosIFsgb3IgPykgb3Igc2xhc2guCisKKyAgKiBwcm9ibGVtIHdpdGggQy9DKysgbGlua2FnZSBvZiBzdHVmZiBpbiAibXlvcHQuaCIgZml4ZWQsIHRvIGhlbHAKKyAgICB3aXRoIGNvbXBpbGluZyB3aXRoIEdDQyAyLjcuMC4KKworICAqIGRzZWxlY3QgTWFrZWZpbGUuaW4gYGNsZWFuJyBkZWxldGVzIGN1cmtleXMuaW5jICZjLCBzbyB0aGF0IHRoZXkgYXJlCisgICAgbm90IHNoaXBwZWQgaW4gdGhlIGRpc3RyaWJ1dGlvbiBzb3VyY2UgYW5kIHdpbGwgYmUgcmVidWlsdCBvbiB0aGUKKyAgICB0YXJnZXQgc3lzdGVtLgorCisgLS0gSWFuIEphY2tzb24gPGl3ajEwQGN1cy5jYW0uYWMudWs+ICBUaHUsIDI3IEp1bCAxOTk1IDEzOjM4OjQ3ICswMTAwCisKK2Rwa2cgKDAuOTMuNjIpIEFMUEhBOyBwcmlvcml0eT1ISUdICisKKyAgKiBkcGtnIHB1cmdlcyBsZWZ0b3ZlciBjb250cm9sIHNjcmlwdHMgZnJvbSAvdmFyL2xpYi9kcGtnL3RtcC5jaSwKKyAgICByYXRoZXIgdGhhbiBhc3NvY2lhdGluZyB0aGVtIHdpdGggdGhlIHdyb25nIHBhY2thZ2UuICAoQnVnIzExMDEuKQorCisgICogZHBrZyB3b24ndCBgZGlzYXBwZWFyJyBwYWNrYWdlcyBjb250YWluaW5nIG5vIGZpbGVzIG9yIGRpcmVjdG9yaWVzLAorICAgIG5vciBhIHBhY2thZ2UgcmVxdWlyZWQgZm9yIGRlcGVuZHMvcmVjb21tZW5kZWQuICAoQnVnIzExMjguKQorCisgICogZHBrZyBmb2xsb3dzIGRpcmVjdG9yeSBzeW1saW5rcy4gIChCdWcjMTEyNS4pCisKKyAgKiBkc2VsZWN0IGZpeHVwcyBmb3IgRUxGL0dDQzIuNy4wIGNvbXBpbGF0aW9uLgorCisgLS0gSWFuIEphY2tzb24gPGl3ajEwQGN1cy5jYW0uYWMudWs+ICBGcmksIDIxIEp1bCAxOTk1IDIxOjQzOjQxICswMTAwCisKK2Rwa2cgKDAuOTMuNjEpIEFMUEhBOyBwcmlvcml0eT1MT1cKKworICAqIGRzZWxlY3Qga2V5YmluZGluZ3MgYW5kIHN0YXR1cyBjaGFyYWN0ZXJzIGFuZCBkZXNjcmlwdGlvbnMgY2hhbmdlZAorICAgIChpbiBwdXJzdWFuY2Ugb2YgQnVnIzEwMzcsIHVzZXIgaW50ZXJmYWNlIHByb2JsZW1zLCBzdGlsbCBvcGVuLikKKworICAqIFNvbWUgY2xlYW51cHMgdG8gZml4IG1pc3Rha2VzIGRpc2NvdmVyZWQgYnkgRUxGLUdDQyAyLjcuMCwgYW5kIGZpeHVwCisgICAgZm9yIG5ld2VyIEMrKyBkcmFmdCBzdGFuZGFyZCAoYGZvcicgdmFyaWFibGUgZGVjbGFyYXRpb24gc2NvcGUgY2hhbmdlKS4KKworIC0tIElhbiBKYWNrc29uIDxpd2oxMEBjdXMuY2FtLmFjLnVrPiAgVHVlLCAxOCBKdWwgMTk5NSAwMTo0Mjo1MSArMDEwMAorCitkcGtnICgwLjkzLjYwKSBBTFBIQTsgcHJpb3JpdHk9SElHSAorCisgICogZHBrZyBkb2Vzbid0IHRoaW5rIHBhY2thZ2VzIGhhdmUgYGRpc2FwcGVhcmVkJyBpZiB5b3UgaW5zdGFsbAorICAgIHNldmVyYWwgcGFja2FnZXMgYXQgb25jZS4gIChsYXRlciByZXBvcnRlZCBhcyBCdWcjMTEzMi4pCisKKyAgKiB1c2FnZSBlcnJvciBtZXNzYWdlcyB0aWRpZWQgdXAuCisKKyAtLSBJYW4gSmFja3NvbiA8aXdqMTBAY3VzLmNhbS5hYy51az4gIFN1biwgMTYgSnVsIDE5OTUgMTc6NTY6NTYgKzAxMDAKKworZHBrZyAoMC45My41OSkgQUxQSEE7IHByaW9yaXR5PUhJR0gKKworICAqIGRwa2cgZG9lc24ndCBicmVhayBtYWludGFpbmVyIHNjcmlwdHMgJmMgaWYgcGFja2FnZSBgZm9vJyBleGlzdHMKKyAgICB3aGVuIHByb2Nlc3NpbmcgcGFja2FnZSBgZm9vYmFyJy4gIChSZWxhdGVkIHRvIEJ1ZyMxMTAxLikKKworICAqIGRwa2cgaW1wbGVtZW50cyBgZGlzYXBwZWFyJyBmdW5jdGlvbmFsaXR5LgorICAqIGRwa2cvZHNlbGVjdCByZW1vdmUgZGVhZCBlbnRyaWVzIGZyb20gL3Zhci9saWIvZHBrZy9zdGF0dXMuCisKKyAgKiBkcGtnIC0tbGlzdCBub3cgc29ydGVkIGNvcnJlY3RseSBhbmQgb3V0cHV0IHNvbWV3aGF0IGltcHJvdmVkLgorICAqIHNvbWUgZGVidWdnaW5nIG1lc3NhZ2VzIG1vdmVkIGZyb20gZGJnX3N0dXBpZGx5dmVyYm9zZSB0byBkYmdfc2NyaXB0cy4KKyAgKiBkcGtnIHByaW50cyBgUmVtb3ZpbmcgZm9vJyBtZXNzYWdlIGV2ZW4gaWYgZm9vIGlzIG5vdCBjb25maWd1cmVkLgorICAqIGRwa2cgb25seSBwcmludHMgYHNlcmlvdXMgd2FybmluZzogZmlsZXMgbGlzdCBmaWxlIC4uLiBtaXNzaW5nJworICAgIG9uY2UgZm9yIGVhY2ggcGFja2FnZS4KKworIC0tIElhbiBKYWNrc29uIDxpd2oxMEBjdXMuY2FtLmFjLnVrPiAgU3VuLCAxNiBKdWwgMTk5NSAwMjozMjoxMSArMDEwMAorCitkcGtnICgwLjkzLjU4KSBBTFBIQTsgcHJpb3JpdHk9SElHSAorCisgICogZHBrZyBzaG91bGQgd3JpdGUgb3V0IHN0YXR1cyBldmVuIGZvciBwYWNrYWdlcyB3aGljaCBpdCBoYXMgb25seQorICAgIGVuY291bnRlcmVkIGluIHRoZSBgYXZhaWxhYmxlJyBmaWxlIHNvIGZhci4KKworIC0tIElhbiBKYWNrc29uIDxpd2oxMEBjdXMuY2FtLmFjLnVrPiAgRnJpLCAxNCBKdWwgMTk5NSAyMDoxOToyMSArMDEwMAorCitkcGtnICgwLjkzLjU3KSBBTFBIQTsgcHJpb3JpdHk9TE9XCisKKyAgKiBkcGtnIGRvZXMgY2hyb290IHdoZW4gcnVubmluZyBtYWludGFpbmVyIHNjcmlwdHMgKC0taW5zdGRpcgorICAgIHNob3VsZCB3b3JrIHJpZ2h0IG5vdywgdGhvdWdoIEkgaGF2ZW4ndCBiZWVuIGFibGUgdG8gdGVzdCBpdCkuCisKKyAtLSBJYW4gSmFja3NvbiA8aXdqMTBAY3VzLmNhbS5hYy51az4gIEZyaSwgMTQgSnVsIDE5OTUgMDE6MzI6MzAgKzAxMDAKKworZHBrZyAoMC45My41NikgQUxQSEE7IHByaW9yaXR5PUhJR0gKKworICAqIGRwa2cgY2FuIG5vdyBvdmVyd3JpdGUgc3ltbGlua3MgdG8gZGlyZWN0b3JpZXMsIGFuZCB3aWxsCisgICAgZG8gY29ycmVjdCBoYW5kbGluZyBvZiBzeW1saW5rcyB0byBwbGFpbiBmaWxlcy4KKyAgKiBkcGtnIHNob3VsZCBub3QgcmVwbGFjZSBhbnkgZGlyZWN0b3J5IHdpdGggYSBzeW1saW5rLgorCisgLS0gSWFuIEphY2tzb24gPGl3ajEwQGN1cy5jYW0uYWMudWs+ICBUaHUsIDEzIEp1bCAxOTk1IDAyOjQzOjM2ICswMTAwCisKK2Rwa2cgKDAuOTMuNTUpIEFMUEhBOyBwcmlvcml0eT1NRURJVU0KKworICAqIGRwa2cgY2FuIG5vdyBleHRyYWN0IGhhcmRsaW5rcy4KKyAgKiBkcGtnIGNvbmZpZ3VyYXRpb24vcmVtb3ZhbCB3b3JrcyBpbiB0aGUgcHJlc2VuY2Ugb2YgZGVwZW5kZW5jeSBjeWNsZXMuCisgICogZHBrZyBzaG91bGQgbm8gbG9uZ2VyIGZhaWwgYW4gYXNzZXJ0aW9uIGF0IHByb2Nlc3NhcmMuYzoxOTMuCisKKyAtLSBJYW4gSmFja3NvbiA8aXdqMTBAY3VzLmNhbS5hYy51az4gIFdlZCwgMTIgSnVsIDE5OTUgMDE6MzQ6NDQgKzAxMDAKKworZHBrZyAoMC45My41NCkgQUxQSEE7IHByaW9yaXR5PU1FRElVTQorCisgICogZHBrZyBhbmQgZHNlbGVjdCBubyBsb25nZXIgdGhyb3cgYXdheSBhbGwgQ2xhc3MgYW5kIFNlY3Rpb24KKyAgICBpbmZvcm1hdGlvbiBpbiAvdmFyL2xpYi9kcGtnL2F2YWlsYWJsZS4gIChPb3BzLikKKyAgKiBkcGtnIC0tcmVmdXNlLTxzb21ldGhpbmc+IG5vdyB3b3JrcyAodGhpcyBicm9rZSBzb21lIGRzZWxlY3QKKyAgICBtZXRob2Qgc2NyaXB0cycgYXR0ZW1wdHMgdG8gdXNlIC0tcmVmdXNlLWRvd25ncmFkZSkuCisgICogZHBrZyAtLWF1ZGl0IGFuZCAtLWxpc3QgaW1wbGVtZW50ZWQuCisKKyAtLSBJYW4gSmFja3NvbiA8aXdqMTBAY3VzLmNhbS5hYy51az4gIE1vbiwgMTAgSnVsIDE5OTUgMDA6MzU6MTMgKzAxMDAKKworZHBrZyAoMC45My41MykgQUxQSEE7IHByaW9yaXR5PUxPVworCisgICogZHBrZyAtLWluc3RhbGwvLS11bnBhY2sgb25seSBza2lwcyBvbi1ob2xkIHBhY2thZ2VzIHdpdGggLS1hdXRvLgorICAqIGRwa2cgZG9lc24ndCBmY2xvc2UoKSB0aGUgLS1mc3lzLXRhcmZpbGUgcGlwZSB0d2ljZS4KKyAgKiBkcGtnIGVycm9yIGhhbmRsaW5nIGFuZCByZXBvcnRpbmcgY2xlYW5lZCB1cC4KKyAgKiBkcGtnIG5vdyBsaXN0cyBhbnkgZmFpbGVkIHBhY2thZ2VzL2ZpbGVzIGp1c3QgYmVmb3JlIGV4aXRpbmcuCisKKyAtLSBJYW4gSmFja3NvbiA8aXdqMTBAY3VzLmNhbS5hYy51az4gIFN1biwgOSBKdWwgMTk5NSAxNjozMTozNiArMDEwMAorCitkcGtnICgwLjkzLjUyKSBBTFBIQTsgcHJpb3JpdHk9TUVESVVNCisKKyAgKiBkcGtnIHdvbid0IHNlZ2ZhdWx0IGR1ZSB0byBtaXNzaW5nIChQYWNrYWdlXylSZXZpc2lvbiBmaWVsZHMuCisgICogZHBrZyAtLXNlYXJjaCB3b3Jrcy4KKyAgKiBkcGtnIHdpbGwgc2V0IGV4ZWN1dGUgcGVybWlzc2lvbnMgb24gc2NyaXB0cyBpZiBuZWNlc3NhcnkuCisgICogZHBrZyBwcmludHMgZmlsZW5hbWVzIGluIC0tdW5wYWNrIGFuZCAtLWluc3RhbGwuCisKKyAtLSBJYW4gSmFja3NvbiA8aXdqMTBAY3VzLmNhbS5hYy51az4gIFNhdCwgOCBKdWwgMTk5NSAxMjo0MTozOSArMDEwMAorCitkcGtnICgwLjkzLjUxKSBBTFBIQTsgcHJpb3JpdHk9SElHSAorCisgICogZHBrZyAtLXN0YXR1cyBhbmQgLS1saXN0ZmlsZXMgbm93IHdvcmsuCisKKyAgKiBkcGtnIC0tcmVtb3ZlIC0tYXV0byB3b24ndCB0cnkgdG8gcmVtb3ZlIGV2ZXJ5dGhpbmcgKCEpCisgICogZHBrZyAtLXVucGFjayBkb2Vzbid0IGNvcmVkdW1wIGFmdGVyIHVucGFja2luZyB0aGUgZmlyc3QgcGFja2FnZS4KKyAgKiBkcGtnIHdvbid0IGZhaWwgYW4gYXNzZXJ0aW9uIGlmIGl0IGJvbWJzIG91dCBvZiAtLWNvbmZpZ3VyZQorICAgIG9yIC0tcmVtb3ZlIGJlY2F1c2Ugb2YgdG9vIG1hbnkgZXJyb3JzLgorCisgICogU3VwcG9ydCBmb3IgYEVzc2VudGlhbCcgaW4gZHBrZyAobm90IHlldCBpbiBkc2VsZWN0KS4KKyAgKiBgYXZhaWxhYmxlJyAoUGFja2FnZXMpIGZpbGUgY2xhc3MgYW5kIHNlY3Rpb24gb3ZlcnJpZGUgdGhvc2UKKyAgICBmcm9tIHBhY2thZ2UgY29udHJvbCBmaWxlcy4KKyAgKiBgRXNzZW50aWFsOiB5ZXMnIGFkZGVkIHRvIGNvbnRyb2wgZmlsZS4KKworICAqIExvY2tpbmcgc3RyYXRlZ3kgY2hhbmdlZCwgbm93IHVzZXMgZmxvY2sgKG5vIG1vcmUgc3RhbGUgbG9ja3MpLgorICAqIHByZWluc3Qgbm93IG1vcmUgaGVscGZ1bCBhYm91dCBjb25mZmlsZXMgdXBncmFkZSBwcm9ibGVtLgorCisgLS0gSWFuIEphY2tzb24gPGl3ajEwQGN1cy5jYW0uYWMudWs+ICBTYXQsIDggSnVsIDE5OTUgMDE6MTU6MjYgKzAxMDAKKworZHBrZyAoMC45My41MCkgQUxQSEEKKworICAqIEMgZHBrZyBub3cgaW4gc2VydmljZS4KKworICAqIGRzZWxlY3Qgbm93IGluc3RhbGxzIGluIC91c3IvYmluIGluc3RlYWQgb2YgL3Vzci9zYmluLgorICAqIEltcHJvdmVkIGBleHBsYW5hdGlvbiBvZiBkaXNwbGF5JyBoZWxwIGFuZCBjaGFuZ2VkIEhTT0MgdG8gRUlPVy4KKyAgKiBkc2VsZWN0IGdvZXMgYmFjayB0byB0b3Agb2YgaW5mbyBkaXNwbGF5IHdoZW4geW91IG1vdmUgdGhlCisgICAgaGlnaGxpZ2h0LgorCisgICogQWRkZWQgPHN5cy90eXBlcy5oPiB0byBtZDVzdW0vbWQ1LmMsIGZvciB0aGUgYmVuZWZpdCBvZiBGcmVlQlNELgorICAqIC0tYWRtaW5kaXIgZG9lc24ndCBhcHBlbmQgYHZhci9saWIvZHBrZycgdG8gaXRzIGFyZ3VtZW50LgorCisgLS0gSWFuIEphY2tzb24gPGl3ajEwQGN1cy5jYW0uYWMudWs+ICBGcmksIDE5IE1heSAxOTk1IDIxOjAzOjA4ICswMTAwCisKK2Rwa2cgKDAuOTMuNDIuMykgQkVUQTsgcHJpb3JpdHk9TE9XCisKKyAgKiBSZWJ1aWx0IHVzaW5nIG5jdXJzZXMgMS45LjJjLTAuCisgICogU2lsZW5jZWQgYHN1YmNyaXRpY2FsIGVycm9yJyBtZXNzYWdlIGlmIGVycm5vID09IEVOT0VOVC4KKworIC0tIElhbiBKYWNrc29uIDxpd2oxMEBjdXMuY2FtLmFjLnVrPiAgTW9uLCAxMiBKdW4gMTk5NSAxMzowOToyNCArMDEwMAorCitkcGtnICgwLjkzLjQyLjIpIEJFVEE7IHByaW9yaXR5PUhJR0gKKworICAqIGluc3RhbGwtaW5mbyAtLXJlbW92ZSBwcm9wZXJseSByZW1vdmVzIG11bHRpLWxpbmUgZW50cmllcy4KKyAgKiBTbGlnaHRseSBjaGFuZ2VkIF5MIHJlZHJhdyBjb2RlIGluIGRzZWxlY3QgcGFja2FnZSBsaXN0LgorCisgLS0gSWFuIEphY2tzb24gPGl3ajEwQGN1cy5jYW0uYWMudWs+ICBTYXQsIDEwIEp1biAxOTk1IDE0OjA2OjAxICswMTAwCisKK2Rwa2cgKDAuOTMuNDIuMSkgQkVUQTsgcHJpb3JpdHk9SElHSCBlc3AuIGZvciBuZXcgaW5zdGFsbGF0aW9ucworCisgICogdXBkYXRlLXJjLmQgZGVmYXVsdCBubyBsb25nZXIgYWRkcyBLIGVudHJpZXMgaW4gcnVubGV2ZWxzIDIzNDUuCisKKyAtLSBJYW4gSmFja3NvbiA8aXdqMTBAY3VzLmNhbS5hYy51az4gIFR1ZSwgNiBKdW4gMTk5NSAxODo1NjoyMyArMDEwMAorCitkcGtnICgwLjkzLjQyKSBCRVRBOyBwcmlvcml0eT1MT1c7IEhJR0ggZm9yIGRzZWxlY3QgdXNlcnMKKworICAqIEZpeCB1bml0aWFsaXNlZCB2YXJpYWJsZSByZWZlcmVuY2UgYnVnIGluIGRzZWxlY3QgKCM4OTApLgorICAqIEZpeCBwcm9ibGVtIHdpdGggd29yZHdyYXBwaW5nIHBhY2thZ2UgYW5kIG1ldGhvZCBkZXNjcmlwdGlvbnMuCisgICogQ3JlYXRlIC92YXIvbGliL2Rwa2cvbWV0aG9kcy9tbnQuCisKKyAtLSBJYW4gSmFja3NvbiA8aXdqMTBAY3VzLmNhbS5hYy51az4gIEZyaSwgMTkgTWF5IDE5OTUgMjE6MDM6MDggKzAxMDAKKworZHBrZyAoMC45My40MSkgQkVUQTsgcHJpb3JpdHk9TE9XCisKKyAgKiBDcmVhdGUgL3Zhci9saWIvZHBrZy9tZXRob2RzLgorICAqIGRwa2cucGwgbm9pc2lseSBpZ25vcmVzIC0tc2tpcC1zYW1lLXZlcnNpb24gcmF0aGVyIHRoYW4gYmFyZmluZy4KKworIC0tIElhbiBKYWNrc29uIDxpd2oxMEBjdXMuY2FtLmFjLnVrPiAgVHVlLCAxNiBNYXkgMTk5NSAxMzoyODoyNyArMDEwMAorCitkcGtnICgwLjkzLjQwKSBCRVRBOyBwcmlvcml0eT1MT1cKKworICAqIGRzZWxlY3QncyBzdWJwcm9ncmFtIGZhaWx1cmUgbWVzc2FnZSBtYWRlIHRvIHN0YW5kIG91dCBtb3JlLgorCisgICogV2hlbiBzd2l0Y2hpbmcgb3V0IG9mIGN1cnNlcywgYWx3YXlzIG1vdmUgdGhlIGN1cnNvciB0byB0aGUKKyAgICBib3R0b20gcmlnaHQgY29ybmVyIG9mIHRoZSBzY3JlZW4uCisKKyAtLSBJYW4gSmFja3NvbiA8aXdqMTBAY3VzLmNhbS5hYy51az4gIFR1ZSwgMTYgTWF5IDE5OTUgMDE6MDM6MzggKzAxMDAKKworZHBrZyAoMC45My4zOSkgQkVUQTsgcHJpb3JpdHk9TE9XCisKKyAgKiBkc2VsZWN0IGNhbiBub3c6CisgICAgLSBhbGxvdyB5b3UgdG8gc2VsZWN0IGFuZCBjb25maWd1cmUgYW4gaW5zdGFsbGF0aW9uIG1ldGhvZDsKKyAgICAtIGludm9rZSBpbnN0YWxsYXRpb24gbWV0aG9kIHNjcmlwdHMgdG8gdXBkYXRlIHRoZSBhdmFpbGFibGUgZmlsZQorICAgICAgYW5kIHVucGFjayBwYWNrYWdlczsKKyAgICAtIGludm9rZSBkcGtnIHRvIGNvbmZpZ3VyZSBhbmQgcmVtb3ZlIHBhY2thZ2VzLgorICAgIFRoZXJlIGFyZSBubyBpbnN0YWxsYXRpb24gbWV0aG9kcyBhdmFpbGFibGUgeWV0LgorCisgICogU2VhcmNoIGZlYXR1cmUgaW4gZHNlbGVjdCB3b3JrcyAoaXQgd2FzIHB1cmVseSBhbiBuY3Vyc2VzIGJ1ZykuCisKKyAgKiBkcGtnLSoubm9uZGViYmluLnRhci5neiBub3cgYXZhaWxhYmxlIChidWlsdCBieSBkZWJpYW4ucnVsZXMpLgorCisgICogVGhlIHRhcmdldCBkaXJlY3RvcnkgZm9yIGRwa2ctZGViIC0tZXh0cmFjdCAoYWxzbyBhdmFpbGFibGUgYXMKKyAgICBkcGtnIC0tZXh0cmFjdCkgaXMgbm8gbG9uZ2VyIG9wdGlvbmFsLiAgZHBrZy1kZWIgc3VnZ2VzdHMgdGhlIHVzZQorICAgIG9mIGRwa2cgLS1pbnN0YWxsIGlmIHlvdSBvbWl0IGl0LgorCisgICogQWRkZWQgPGVycm5vLmg+IHRvIGxpYi9sb2NrLmMgYW5kIGZpeGVkIHJlZi4gdG8gYGJ5dGUnIGluCisgICAgbWQ1c3VtL21kNS5jLCBmb3IgcG9ydGFiaWxpdHkgdG8gU29sYXJpcyAyLgorCisgICogUmVidWlsdCBgY29uZmlndXJlJyBhbmQgYGNvbmZpZy5oLmluJyB1c2luZyBhdXRvY29uZiAyLjMuCisgICogUmV2aXNlZCBmdW5jdGlvbiBhdHRyaWJ1dGUgc3VwcG9ydCBjaGVja2luZyBpbiBjb25maWd1cmUgc2NyaXB0LgorICAqIFJlbW92ZWQgb2Jzb2xldGUgYGRzZWxlY3QucGwnIGZyb20gc2NyaXB0cyBkaXJlY3RvcnkuCisgICogTmV3IG9wdGlvbiAtLWxpY2VuY2Ugb24gYWxsIHRoZSBDIHByb2dyYW1zLgorCisgLS0gSWFuIEphY2tzb24gPGl3ajEwQGN1cy5jYW0uYWMudWs+ICBTdW4sIDE0IE1heSAxOTk1IDE4OjA1OjM4ICswMTAwCisKK2Rwa2cgKDAuOTMuMzgpIEJFVEE7IHByaW9yaXR5PU1FRElVTQorCisgICogVmVyc2lvbiBudW1iZXIgY29tcGFyaXNvbnMgKGluIGRwa2cgYW5kIGRzZWxlY3QpIG5vdyA+PSA8PQorICAgIGFzIGRvY3VtZW50ZWQgKEJ1ZyM4MzE7IHRoYW5rcyB0byBDaHJpc3RpYW4gTGluaGFydCkuCisKKyAgKiBkc2VsZWN0IG5vdyBoYXMgYSBub24tc3VwZXJ1c2VyIHJlYWRvbmx5IG1vZGUuCisgICogZHNlbGVjdCBkb2Vzbid0IHBvcCB1cCB1bnNhdGlzZmllZCBgT3B0aW9uYWwncyB3aGVuIHF1aXR0aW5nLgorICAqIGB1bmFibGUgdG8gZGVsZXRlIHNhdmVkIG9sZCBmaWxlJyBtZXNzYWdlIGZpeGVkIGRwa2dfdG1wIHRvIGRwa2ctdG1wLgorCisgICogTWFkZSBkcGtnIGNvbnZlcnQgYHJldmlzaW9uJyB0byBgcGFja2FnZV9yZXZpc2lvbicgd2hlbiByZWFkaW5nCisgICAgKGVnKSB0aGUgYHN0YXR1cycgZmlsZS4gIGxpYmRwa2cuYSBoYXMgYHJldmlzaW9uJyBhcyBhIHN5bm9ueW0KKyAgICBmb3IgYHBhY2thZ2VfcmV2aXNpb24nIGFuZCB3cml0ZXMgdGhlIGZvcm1lci4KKworICAqIE1ham9yIGltcHJvdmVtZW50cyBhbmQgbWFueSBjaGFuZ2VzIHRvIEMgb3B0aW9uIHBhcnNpbmcsIGRhdGFiYXNlCisgICAgbWFuYWdlbWVudCwgZXJyb3IgaGFuZGxpbmcsIE1ha2VmaWxlcyAmYyB0byBzdXBwb3J0IGRwa2cuCisgICogZHBrZy1kZWIgc2hvdWxkIG5vdyB3b3JrIGlmIHNpemVvZih2b2lkKikgPCBzaXplb2Yodm9pZCgqKSgpKS4KKworIC0tIElhbiBKYWNrc29uIDxpd2oxMEBjdXMuY2FtLmFjLnVrPiAgTW9uLCAyNCBBcHIgMTk5NSAxMjozNDozOSArMDEwMAorCitkcGtnICgwLjkzLjM3KSBCRVRBOyBwcmlvcml0eT1MT1cgKE1FRElVTSBmb3IgZHNlbGVjdCB1c2VycykKKworICAqIEZpeGVkIHNlZ2ZhdWx0IGlmIG5vIGRlc2NyaXB0aW9uIGF2YWlsYWJsZSAoQnVnIzczNSk7CisgICAgdGhhbmtzIHRvIFBldGVyIFRvYmlhcyBmb3IgdGhlIGJ1ZyByZXBvcnQuCisgICogRml4ZWQgb3RoZXIgYXNzb3J0ZWQgbWlub3IgYnVncyBpbiBkZXNjcmlwdGlvbiBkaXNwbGF5cy4KKworICAqIENoYW5nZWQgZHBrZy1kZWIgLS1pbmZvIHNob3J0IG9wdGlvbiBmcm9tIC1pIHRvIC1JLCB0byBtYWtlCisgICAgaXQgdW5pcXVlIGFjcm9zcyBkcGtnIGFuZCBkcGtnLWRlYiAoLWkgc3RpbGwgd29ya3Mgd2l0aAorICAgIGRwa2ctZGViIGZvciBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eSkuCisKKyAgKiBQcm9kdWNlIG1vcmUgc2Vuc2libGUgZXJyb3Igd2hlbiBtYWluIHBhY2thZ2UgbGlzdCBpcyBlbXB0eS4KKworIC0tIElhbiBKYWNrc29uIDxpd2oxMEBjdXMuY2FtLmFjLnVrPiAgRnJpLCA3IEFwciAxOTk1IDAyOjI0OjU1ICswMTAwCisKK2Rwa2cgKDAuOTMuMzYpIEJFVEE7IHByaW9yaXR5PUxPVyAoTUVESVVNIGZvciBkc2VsZWN0IHVzZXJzKQorCisgICogQWxsIHRoZSBDIGNvZGUgKGluY2x1ZGluZyBkc2VsZWN0KSB1cGRhdGVkIHRvIHN1cHBvcnQgYHByb3ZpZGVzJworICAgICh2aXJ0dWFsIHBhY2thZ2VzKS4KKyAgKiBSZXZhbXBlZCBkc2VsZWN0J3MgcmVsYXRlZCBwYWNrYWdlIHNlbGVjdGlvbi9kZXNlbGVjdGlvbgorICAgIGFsZ29yaXRobXMuCisgICogRXZlcnl0aGluZyBjYW4gbm93IGhhbmRsZSBhcmJpdHJhcnkgYGNsYXNzJyB2YWx1ZXMgKGFzIHdlbGwKKyAgICBhcyB0aGUgcHJlZGVmaW5lZCBvbmVzIHdoaWNoIHdlIHVuZGVyc3RhbmQgYW5kIGNhbiBpbnRlcnByZXQpLgorICAqIEZpeGVkIGJ1ZyB0aGF0IHByZXZlbnRlZCBkaXNwbGF5IHVwZGF0ZSB3aGVuIG1vdmluZyBkb3duIGEgc21hbGwKKyAgICByZWN1cnNpdmUgcGFja2FnZSBsaXN0IGluIGRzZWxlY3QuCisgICogQ29sdW1uIGhlYWRpbmcgY2hhcmFjdGVycyBjb3JyZWN0ZWQgZnJvbSBgU0hPQycgdG8gYEhTT0MnLgorCisgLS0gSWFuIEphY2tzb24gPGl3ajEwQGN1cy5jYW0uYWMudWs+ICBUaHUsIDYgQXByIDE5OTUgMTI6NDg6MTMgKzAxMDAKKworZHBrZyAoMC45My4zNSkgQkVUQTsgcHJpb3JpdHk9TUVESVVNCisKKyAqIFByZXNlcnZlIG93bmVyc2hpcHMgYW5kIHBlcm1pc3Npb25zIG9uIGNvbmZpZ3VyYXRpb24gZmlsZXMuCisgKiBGaXggYnVnIGluIGNvbmZmaWxlIHVwZGF0aW5nIHRoYXQgY291bGQgbGVhdmUgYSBoYXJkbGluaworICAgPGZvbz4uZHBrZy1uZXcgdG8gdGhlIGNvbmZmaWxlIDxmb28+LgorCisgKiBJbXByb3ZlZCBkc2VsZWN0J3MgcGFja2FnZSBsaXN0IGhlbHAgbWVzc2FnZXMuCisgKiBIaWdobGlnaHQgbm93IG1vdmVzIG9uIGFmdGVyIChkZSlzZWxlY3RpbmcganVzdCBvbmUgcGFja2FnZS4KKyAqIEJldHRlciBhbGdvcml0aG0gZm9yIHNjcm9sbGluZyB1cC9kb3duIHdoZW4gbW92aW5nIGhpZ2hsaWdodC4KKyAqIEZpeGVkIGJ1ZyBpbiBkaXNwbGF5IG9mIGBwcmVmb3JtYXR0ZWQnIGV4dGVuZGVkIERlc2NyaXB0aW9uIGxpbmVzLgorICAgKGRzZWxlY3QgaXMgc3RpbGwgQUxQSEEsIGJ1dCBpcyBmYWlybHkgc3RhYmxlLikKKworICogSW1wcm92ZWQgZHBrZydzIG1lc3NhZ2Ugd2hlbiBjb25maWd1cmluZyBhIHBhY2thZ2UgdGhhdCBkb2Vzbid0CisgICBleGlzdCwgYW5kIHdoZW4gc2VsZWN0aW5nIG9yIHNraXBwaW5nIGEgcGFja2FnZSB0aGF0IGlzbid0CisgICBjdXJyZW50bHkgc2VsZWN0ZWQgKGR1cmluZyB1bnBhY2sgcHJvY2Vzc2luZykuCisKKyAqIERlc2NyaXB0aW9uIGluIGNvbnRyb2wgZmlsZSBleHBhbmRlZC4KKworICogU2Nyb2xsIGJhY2sgdG8gdG9wIHdoZW4gY2hhbmdpbmcgd2hhdCBpcyBpbiB0aGUgYGluZm8nIGFyZWEuCisKK2Rwa2cgKDAuOTMuMzQpIEJFVEE7IHByaW9yaXR5PUxPVyAoSElHSCBmb3IgZHNlbGVjdCB1c2VycykKKworICogZHNlbGVjdDogRml4ZWQgYnVnIHdoaWNoIGNhdXNlZCBhIGNvcmVkdW1wIGlmIHlvdSBleGl0ZWQgdGhlCisgICBwYWNrYWdlIGxpc3QgaWYgeW91J2QgbWFkZSBhbnkgY2hhbmdlcy4gIE91Y2ggIQorCisgKiBkc2VsZWN0OiBJbXByb3ZlZCBzZWxlY3Rpb24gYWxnb3JpdGhtIHRvIHNob3cgZmV3ZXIgZXh0cmFuZW91cworICAgcGFja2FnZXM7IGltcHJvdmVkIGRpc3BsYXkgZm9yIHVuYXZhaWxhYmxlIHBhY2thZ2VzLgorCisgKiBkcGtnOiBJbXByb3ZlZCBwcm9ncmVzcyBtZXNzYWdlcyBkdXJpbmcgdW5wYWNraW5nIHNvbWV3aGF0LgorCitkcGtnICgwLjkzLjMzKSBCRVRBOyBwcmlvcml0eT1MT1cgKEhJR0ggZm9yIGRzZWxlY3QgdXNlcnMpCisKKyAqIGRzZWxlY3Qgbm93IGhhcyBhIG1haW4gbWVudS4KKworICogRml4ZWQgbmFzdHkgdW5pbml0aWFsaXNlZCBkYXRhIGJ1ZyBpbiBkc2VsZWN0LgorCisgKiBkc2VsZWN0IG5vdyBsb2NrcyBhbmQgdW5sb2NrcyB0aGUgcGFja2FnZXMgZGF0YWJhc2UuCisKK01vbiwgMjcgTWFyIDE5OTUgMDM6MzA6NTEgQlNUICBJYW4gSmFja3NvbiA8aXdqMTBAY3VzLmNhbS5hYy51az4KKworCSogZHBrZyAoMC45My4zMik6IEFscGhhIGRzZWxlY3QgcmVsZWFzZWQgYW5kIGluc3RhbGxlZCBpbgorCSAgICAgICAgICAgICAgICAgIC91c3Ivc2Jpbi9kc2VsZWN0LgorCSogZHBrZyAoMC45My4zMik6IE1hbnkgcG9ydGFiaWxpdHkgZW5oYW5jZW1lbnRzOiBzaG91bGQgbm93CisJICAgICAgICAgICAgICAgICAgY29tcGlsZSB1c2luZyBHQ0MgMi42LjMsIGFuZCBkcGtnLWRlYiBzaG91bGQKKwkgICAgICAgICAgICAgICAgICBjb21waWxlIGJldHRlciBvbiBub24tTGludXggc3lzdGVtcy4KKwkqIGRwa2cgKDAuOTMuMzIpOiBkcGtnIHdpbGwgbm90IGxvb3AgaWYgaXRzIHN0ZGluIGRpc2FwcGVhcnMKKwkgICAgICAgICAgICAgICAgICBhbmQgaXQgbmVlZHMgdG8gcHJvbXB0LgorCSogZHBrZyAoMC45My4zMik6IEZpeGVkIHJlbW92YWwgZGVwZW5kZW5jeSBlcnJvciB0byBzaG93CisJICAgICAgICAgICAgICAgICAgY29ycmVjdCBwYWNrYWdlIChCdWcgIzY0OCkuCisJKiBkcGtnICgwLjkzLjMyKTogVGlkaWVkIHVwIGNvcHlyaWdodCBub3RpY2VzLgorCSogZHBrZyAoMC45My4zMik6IEZpcnN0IGRyYWZ0IG9mIHVwZGF0ZS1yYy5kIG1hbnBhZ2UsIG5vdCB5ZXQKKwkgICAgICAgICAgICAgICAgICBpbnN0YWxsZWQgaW4gL3Vzci9tYW4uCisJKiBkcGtnICgwLjkzLjMyKTogQ2hhbmdlcyB0byB0b3AtbGV2ZWwgTWFrZWZpbGUuaW4gdG8gaW1wcm92ZQorCSAgICAgICAgICAgICAgICAgIGVycm9yIHRyYXBwaW5nLgorCSogZHBrZyAoMC45My4zMik6IEltcHJvdmVkIE1ha2VmaWxlIGBjbGVhbicgYW5kIGBkaXN0Y2xlYW4nCisJICAgICAgICAgICAgICAgICAgdGFyZ2V0cy4KKwkqIGRwa2cgKDAuOTMuMzIpOiBEZWxldGVkIGlycmVsZXZhbnQgYHQuYycgZnJvbSBsaWIgYW5kCisJICAgICAgICAgICAgICAgICAgZHNlbGVjdCBkaXJlY3Rvcmllcy4KKwkqIGRwa2cgKDAuOTMuMzIpOiBBZGRlZCB2ZXJjbXAuYyB3aXRoIHZlcnNpb24gY29tcGFyaXNvbiBjb2RlLgorCSogZHBrZyAoMC45My4zMik6IHZhcmJ1ZmV4dGVuZCBtZXNzYWdlIGNoYW5nZWQgLSB2YXJidWZzIG5vdAorCSAgICAgICAgICAgICAgICAgIGp1c3QgZm9yIGlucHV0IGJ1ZmZlcnMuCisJKiBkcGtnICgwLjkzLjMyKTogdmFyYnVmIGhhcyBDKysgbWVtYmVyIGZ1bmN0aW9ucyBpbiBoZWFkZXIKKwkgICAgICAgICAgICAgICAgICAjaWZkZWYgX19jcGx1c3BsdXMuCisKK0NoYW5nZXMgaW4gZHBrZyAwLjkzLjMxOgorCisqIHN0YXJ0LXN0b3AtZGFlbW9uIC0tcGlkZmlsZSBub3cgd29ya3MgKEJ1ZyM1NzEpLgorKiBGaXhlZCBkZXBlbmRlbmN5IHByb2Nlc3NpbmcgYnVncyB3aGljaCBjb3VsZCByZXF1aXJlIGEgcmVydW4gb2YKKyAgZHBrZyAtLWNvbmZpZ3VyZSAoQnVnIzU2NikuCisqIEZpeGVkIGdhcmJhZ2Ugb3V0cHV0IGZvciBgbGFuZ3VhZ2UnIG9mIGNvbnRyb2wgZmlsZSBpbiBkcGtnLWRlYiAtLWluZm8uCisKK0NoYW5nZXMgaW4gZHBrZyAwLjkzLjMwOgorCisqIEFkZGVkIC91c3Ivc2Jpbi9zdGFydC1zdG9wLWRhZW1vbi4KKworQ2hhbmdlcyBpbiBkcGtnIDAuOTMuMDk6CisKKyogTWFkZSBwb3N0aW5zdCBzY3JpcHRzIHJlYWxseSBiZSBydW4gd2hlbiBkcGtnIC0tcHVyZ2UgdXNlZC4KKyogQWRkZWQgbmV3IC0tZm9yY2UtZXh0cmFjdGZhaWwgb3B0aW9uIC0gVkVSWSBEQU5HRVJPVVMuCisKK0NoYW5nZXMgaW4gZHBrZyAwLjkzLjI4OgorCisqIFJlbW92ZWQgdW5kZWYgb2YgMHhfcDIxIGluIHJlYWRfZGF0YWJhc2VfZmlsZSwgd2hpY2ggY2F1c2VkIHRoZQorICB0aGUgd2hvbGUgc3RhdHVzIGRhdGFiYXNlIHRvIGJlY29tZSB0cmFzaGVkIHdoZW4gYW55IHVwZGF0ZSBmaWxlcworICB3ZXJlIHJlYWQuCisqIE1ha2UgaW5maW5pdGUtbG9vcCBwcmV2ZW50aW9uIGFuZCBjeWNsZSBkZXRlY3Rpb24gd29yay4KKyogTWFkZSBmaW5kYnJlYWtjeWNsZSB3b3JrIChpZSwgYnJlYWsgcHJvcGVybHkgd2hlbiBjeWNsZSBkZXRlY3RlZCkuCisqIE5ldyBzY3JpcHQsIHVwZGF0ZS1yYy5kLCB0byB1cGRhdGUgbGlua3MgL2V0Yy9yYz8uZC9bS1NdPz8qLgorKiBkcGtnLnBsIG5vdyBzZXRzIHRoZSB1bWFzayB0byAwMjIuCisqIENvc21ldGljIGVycm9yIG1lc3NhZ2UgZml4IHRvIGRwa2ctZGViLgorKiBEZWxldGVkIE9MRCBkaXJlY3RvcnkgYWx0b2dldGhlci4KKyogSW1wcm92ZWQgZXJyb3ItdHJhcHBpbmcgaW4gdG9wLWxldmVsIE1ha2VmaWxlIGxvb3BzLgorCitDaGFuZ2VzIGluIGRwa2cgMC45My4yNzoKKworKiBNYWtlIHZlcnNpb24gbnVtYmVyIHNwZWNpZmljYXRpb25zIGluIERlcGVuZHMgJmMgd29yay4KKyogQWRkZWQgQUNfUFJPR19DWFggdG8gYXV0b2NvbmYuaW4gZm9yIGRzZWxlY3QuCisqIENoYW5nZWQgbXlvcHQuaCBub3QgdG8gaGF2ZSBjaXBhY3Rpb24gZmllbGQgaW4gY21kaW5mbyAodGhpcyB3YXMKKyAgc3BlY2lhbGx5IGZvciBkcGtnLWRlYikgLSBub3cgd2UgaGF2ZSBhIGdlbmVyaWMgdm9pZCouCisqIFJlbmFtZWQgYGNsYXNzJyBtZW1iZXIgb2YgYHBrZ2luZm9wZXJmaWxlJyB0byBgY2xhcycgW3NpY10uCisqIE11Y2ggd29yayBpbiBgZHNlbGVjdCcgc3ViZGlyZWN0b3J5LgorKiBEZWxldGVkIGV4ZWN1dGFibGVzLCBvYmplY3RzIGFuZCBsaWJyYXJpZXMgZnJvbSBPTEQgdHJlZSAhCisqIE1pbm9yIGNoYW5nZXMgdG8gdmFyaW91cyBjb3B5cmlnaHQgbm90aWNlcyBhbmQgdG9wLW9mLWZpbGUgY29tbWVudHMuCisqIERvbid0IGluc3RhbGwgbmFzdHkgUGVybCBkc2VsZWN0aXNoIHRoaW5nIGFzIC91c3IvYmluL2RzZWxlY3QuCisKK0NoYW5nZXMgaW4gZHBrZyAwLjkzLjI2OgorCisqIEFkZGVkIC0tbm8tYWxzby1zZWxlY3QgaW5zdGVhZCBvZiBub3QgYXV0by1zZWxlY3Rpbmcgb24gLS11bnBhY2sKKyAgYnV0IGRvaW5nIHNvIG9uIC0taW5zdGFsbDsgcmVtb3ZlZCAtLWZvcmNlLXVucGFjay1hbnkuCisKK0NoYW5nZXMgaW4gZHBrZyAwLjkzLjI1OgorCisqIEZpeGVkIGR1cGxpY2F0ZSBvdXRwdXQgKGZhaWx1cmUgdG8gZmx1c2ggYmVmb3JlIGZvcmspIGJ1Zy4KKyogTW9yZSBjbGFyaWZpY2F0aW9uIG9mIG1kNXN1bS5jIGNvcHlyaWdodC4KKyogQ29ycmVjdGVkIHR5cG8gaW4gQ2hhbmdlTG9nIGluIDAuOTMuMjQgc291cmNlIHBhY2thZ2UuCisKK0NoYW5nZXMgaW4gZHBrZyAwLjkzLjI0OgorCisqIGRwa2cgY291bGQgY29weSBjb25mZmlsZXMgaW5mbyBmcm9tIG9uZSBwYWNrYWdlIHRvIGFub3RoZXIuICBBYXJnaC4KKyAgQnVnICM0MjYuCisqIGRwa2cgZmFpbGVkIHRvIGluaXRpYWxpc2Ugc3RhdHVzIGlmIHlvdSB0cmllZCB0byByZW1vdmUgb3IKKyAgY29uZmlndXJlIGEgbm9uZXhpc3RlbnQgcGFja2FnZS4gIEJ1ZyAjNDE5LgorKiBpbnN0YWxsLWluZm8gbm93IGhhbmRsZXMgU1RBUlQtSU5GTy1ESVItRU5UUlkgZW50cmllcyBsaWtlOgorICAgKiBHZGI6OiAgICAgICAgICAgICAgICAgICAgICAgICBUaGUgR05VIGRlYnVnZ2VyLgorICBQcmV2aW91c2x5IGl0IHdvdWxkIG9ubHkgYWNjZXB0IChCdWcgIzQwNyk6CisgICAqIEdkYjogKGdkYikuICAgICAgICAgICAgICAgICAgIFRoZSBHTlUgZGVidWdnZXIuCisqIFdoZW4gaW5zdGFsbGluZyBhIG5ldyBmb28uaW5mb1suZ3pdLCBpbnN0YWxsLWluZm8gbm93IHJlcGxhY2VzCisgICAqIEZvbzogKGZvby5pbmZvKS4gICAgICAgICAgICAgIFRoZSBHbm9vIEZvby4KKyAgYXMgd2VsbCBhcyBqdXN0ICogRm9vOiAoZm9vKS4gLi4uCisqIE1vdmVkIG9wdGlvbiBwYXJzaW5nIG91dCBvZiBkcGtnLWRlYiBpbnRvIGxpYmRwa2cuCisqIEFzc29ydGVkIG1pbm9yIHNvdXJjZSBjb2RlIHJlYXJyYW5nZW1lbnRzLgorKiBGaXhlZCBhc3NvcnRlZCBjb3B5cmlnaHQgbm90aWNlcywgY2xhcmlmaWVkIG1kNXN1bSBjb3B5cmlnaHQuCisqIENvcnJlY3RlZCB0eXBvIGluIDAuOTMuMjMgc291cmNlIHBhY2thZ2UncyBDaGFuZ2VMb2cuCisKK0NoYW5nZXMgaW4gZHBrZyAwLjkzLjIzOgorCisqIGBkcGtnLWRlYicgLS1idWlsZCBub3cgZG9lcyBhIHN5bnRheCBjaGVjayBvbiB0aGUgY29udHJvbCBmaWxlLgorKiBgZHNlbGVjdCcgaXMgbm93IG5vIGxvbmdlciBjYWxsZWQgYGRlYmlhbicsIHNwdXJpb3VzIGNvcHkgcmVtb3ZlZAorICBmcm9tIHBhY2thZ2UgdG9wLWxldmVsIHNvdXJjZSBkaXJlY3RvcnkuCisqIEMgY29udHJvbCBpbmZvcm1hdGlvbiBwYXJzaW5nIGNvbXBsZXRlIGFuZCBzb21ld2hhdCB0ZXN0ZWQuCisqIE1vdmVkIGBnbG9iYWwnIGluY2x1ZGUgZmlsZXMgaW50byAkKHNyY2RpcikvaW5jbHVkZSBmcm9tIC4uL2xpYiwKKyAgYWRkZWQgc29tZSBmaWxlcyB0byB0aGUgbGliIE1ha2VmaWxlLCBhbmQgYXJyYW5nZWQgZm9yIHBvcF9jbGVhbnVwKCkuCisKK0NoYW5nZXMgaW4gZHBrZyAwLjkzLjIyOgorCisqIEZpeGVkIGJ1ZyB3aGljaCBjYXVzZWQgZHBrZyB0byBzZWUgZmFpbHVyZXMgb2YgbWQ1c3VtIHdoZXJlIHRoZXJlCisgIHdlcmUgbm9uZSAod291bGQgYWxzbyBoYXZlIGNhdXNlZCBkcGtnIHRvIG1pc3MgYSByZWFsIGZhaWx1cmUpLgorKiBGaXhlZCBmYWlsdXJlIHRvIHVwZGF0ZSBzb21lIGBzdGF0dXMnIGRhdGFiYXNlIGZpZWxkcy4KKworQ2hhbmdlcyBpbiBkcGtnIDAuOTMuMjE6CisKKyogRml4ZWQgZXJyb3ItaGFuZGxpbmcgYnVnIHdoaWNoIGNvdWxkIGNvcnJ1cHQgZGF0YWJhc2UuCisKK0NoYW5nZXMgaW4gZHBrZyAwLjkzLjIwOgorCisqIEZpeGVkIGJ1ZyB3aGljaCByYW4gb2xkICgvdmFyL2FkbS9kcGtnKSBwb3N0aW5zdCBzY3JpcHRzLgorKiBGaXhlZCBkcGtnIHVzYWdlIG1lc3NhZ2Ugd2hpY2ggY2xhaW1lZCAtaSA9PiBib3RoIC0taW5zdGFsbCAmIC0taW5mby4KKyogVXNlIENvbGluIFBsdW1iJ3MgTUQ1IGNvZGUgLSBmYXN0ZXIsIGFuZCBiZXR0ZXIgY29weXJpZ2h0LgorKiBNYW5wYWdlczogZHBrZy1kZWIoOCksIGRlYi1jb250cm9sKDUpLCBkZWIoNSkgLSB0aGFua3MgdG8gUmF1bAorICBEZWx1dGggTWlsbGVyLiAgQWxzbywgYW4geGZpZyBwaWN0dXJlIG9mIHNvbWUgQyBwcm9ncmFtIGlubmFyZHMuCisKK0NoYW5nZXMgaW4gZHBrZyAwLjkzLjE5OgorCisqIERvbid0IGRlbGV0ZSB0aGUgYGxpc3QnIGZpbGUgZnJvbSB0aGUgZHBrZyBkYXRhYmFzZS4KKyogRml4ZWQgdmFyaW91cyBidWdzIGluIHRoZSBjb25mZmlsZSBoYW5kbGluZy4KKyogQ29uZmZpbGVzIHRoYXQgYXJlIHN5bWxpbmtzIHdpbGwgbm93IGJlIHRyZWF0ZWQgYXMgaWYgdGhlCisgIGBkZXJlZmVyZW5jZWQnIG5hbWUgb2YgdGhlIGZpbGUgd2FzIGxpc3RlZCBpbiBjb25mZmlsZXMuICBUaGlzIG1lYW5zCisgIHRoYXQgL2V0Yy9mb28gLT4gL3Vzci9ldGMvZm9vIHdpbGwgY2F1c2UgYWxsIGNvbmZmaWxlIHVwZGF0ZXMgb2YKKyAgL2V0Yy9mb28gdG8gY3JlYXRlIC91c3IvZXRjL2Zvby5kcGtnLXRtcCAmYyBpbnN0ZWFkLiAgSG93ZXZlciwgdGhlCisgIGxpbmsgd2lsbCBiZSByZW1vdmVkIGlmIC0tcHVyZ2UgaXMgdXNlZCB0byBkZWxldGUgYWxsIHRoZSBjb25mZmlsZXMuCisqIFdoZW4gZG9pbmcgYSBuZXcgaW5zdGFsbGF0aW9uLCBvciB3aGVuIHVwZGF0aW5nIGEgY29uZmZpbGUgdGhhdAorICB3YXNuJ3QgbGlzdGVkIGFzIGEgY29uZmZpbGUgaW4gdGhlIG9sZCB2ZXJzaW9uIG9mIHRoZSBwYWNrYWdlLCBkb24ndAorICBkbyBhbnkgcHJvbXB0aW5nIGJ1dCBqdXN0IGluc3RhbGwgdGhlIHZlcnNpb24gZnJvbSB0aGUgYXJjaGl2ZS4KKyogQ29ycmVjdGVkIGVycm9yIG1lc3NhZ2UgaWYgZXhlYyBvZiBkcGtnIC0tdmV4dHJhY3QgZmFpbGVkCisgIGFuZCAtLWluc3Ryb290IG9yIC0tcm9vdCBzcGVjaWZpZWQuCisqIEFkZGVkIG5ldyAtLWZvcmNlLXVucGFjay1hbnkgb3B0aW9uLgorKiBFeHRyYSBuZXdsaW5lIGFmdGVyIC0tc3RhdHVzIG91dHB1dC4KKyogQWRkZWQgLVcgb3B0aW9ucyB0byBDRkxBR1MuCisqIEZpeGVkIG1pc3Rha2UgaW4gcHJldmlvdXMgQ2hhbmdlTG9nIGVudHJ5LgorCitDaGFuZ2VzIGluIGRwa2cgMC45My4xODoKKworKiBGaXhlZCBpbnZvY2F0aW9uIG9mIGRwa2ctZGViIC0tdmV4dHJhY3QgaWYgLS1yb290IG9yIC0taW5zdGRpcgorICBub3Qgc3BlY2lmaWVkLgorKiBDcmVhdGUgL3Zhci9saWIvZHBrZy91cGRhdGVzLgorCitDaGFuZ2VzIGluIGRwa2cgMC45My4xNzoKKworKiBpbnN0YWxsLWluZm8gLS1yZW1vdmUgZXhpdHMgd2l0aCBzdGF0dXMgMCBpZiBpdCBkb2Vzbid0IGZpbmQgdGhlCisgIHRoaW5nIHRvIHJlbW92ZSwgaW5zdGVhZCBvZiBzdGF0dXMgMS4KKyogRXJyb3IgaGFuZGxpbmcgZnVuY3Rpb25zIGhhdmUgX19hdHRyaWJ1dGVfXygoZm9ybWF0Li4uKSkgaWYgR0NDLgorKiBwdXNoX2NsZWFudXAgaXRzIGFyZyB0YWtlcyB2b2lkICoqYXJndiBpbnN0ZWFkIG9mIGNoYXIgKiphcmd2LgorKiBUb3AtbGV2ZWwgTWFrZWZpbGUuaW4gaGFzIHNldCAtZSBiZWZvcmUgYGZvcicgbG9vcHMuCisqIGRwa2ctZGViIC0taW5mbyBub3QtYW4tZXhpc3RpbmctZmlsZSBwcm9kdWNlcyBmZXdlciBlcnJvciBtZXNzYWdlcy4KKworQ2hhbmdlcyBpbiBkcGtnIDAuOTMuMTY6CisKKyogTWFkZSAtLXJvb3Q9IG9wdGlvbiByZWFsbHkgZXh0cmFjdCB0byAkaW5zdHJvb3QgaW5zdGVhZCBvZiBgLycuCisqIGluc3RhbGwtaW5mbyBjbGVhcnMgdGhlIDA0NDQgYml0cyBpbiBpdHMgdW1hc2suCisqIEZpeGVkIGEgZmV3IGRhdGFiYXNlIGhhbmRsaW5nIGJ1Z3Mgd2hpY2ggY2F1c2UgZHBrZyBhbHdheXMgdG8gZmFpbCwKKyAgYW5kIHVzdWFsbHkgdG8gY29ycnVwdCB0aGUgc3RhdHVzIGRhdGFiYXNlIGluIHZhcmlvdXMgd2F5cy4KKyogZHBrZy1kZWIgY29tcGxldGVseSByZXdyaXR0ZW4sIG5vdyBkb2Vzbid0IHRpbmtlciB3aXRoCisgIC92YXIve2FkbSxsaWJ9L2Rwa2cuICBTaG91bGQgYmUgZmFzdGVyLgorKiBEaXJlY3Rvcnkgc3RydWN0dXJlIGFuZCBNYWtlZmlsZXMgaW4gc291cmNlIHBhY2thZ2UgcmVvcmdhbmlzZWQuCisKK0NoYW5nZXMgaW4gZHBrZyAwLjkzLjE1OgorCisqIEFkZGVkIGBkZWJpYW4nIChkc2VsZWN0KSwgc3RpbGwgdmVyeSBwcmltaXRpdmUuCisqIERhdGFiYXNlIGZvcm1hdCBjaGFuZ2VkLCBhbmQgbW92ZWQgZnJvbSAvdmFyL2FkbSB0byAvdmFyL2xpYi4KKyogQWRkZWQgZHBrZyAtLWF2YWlsIG1vZGUsIC0tbGlzdCwgLS1zdGF0dXMgYW5kIC0tc2VhcmNoLgorKiBTZXQgb2YgZHBrZyA9PiBkcGtnLWRlYiBwYXNzLXRocm91Z2ggb3BlcmF0aW9ucyBjaGFuZ2VkIChidXQKKyAgZHBrZy1kZWIgbm90IHlldCB1cGRhdGVkKS4KKyogQWRkZWQgLS1yb290LCAtLWFkbWluZGlyIGFuZCAtLWluc3RkaXIsIGFzIHdlbGwgYXMgLS1pc29rICZjLgorKiBNb3ZlZCBtdWNoIHN0dWZmIGludG8gL3Vzci9saWIvZHBrZy1saWIucGwsIHJld3JpdHRlbiBzdGF0dXMKKyAgZGF0YWJhc2UgaGFuZGxpbmcuCisqIFB1dCBwYWNrYWdlcyBpbiBgcHVyZ2UnIHN0YXRlIGV2ZW4gaWYgYGRlaW5zdGFsbCcgcmVxdWVzdGVkIGlmCisgIHRoZXkgaGF2ZSBubyBwb3N0cm0gYW5kIG5vIGNvbmZmaWxlcy4KKyogVmVyc2lvbiBudW1iZXIgY29tcGFyaXNvbnMgZml4ZWQuCisqIGluc2VydC12ZXJzaW9uLnBsIG5vdyBpbnN0YWxsZXMgbGliLnBsIGZpbGVuYW1lIHRvby4KKyogU3RyaXAgdHJhaWxpbmcgc2xhc2hlcyB3aGVuIHJlYWRpbmcgZmlsZXMgZnJvbSBmaWxlIGxpc3RzLgorCitDaGFuZ2VzIGluIGRwa2cgMC45My4xNDoKKworKiBGaXhlZCBwYXJzaW5nIG9mIERFUEVORFMgJmMgZmllbGRzIHdpdGggdHJhaWxpbmcgd2hpdGVzcGFjZS4KKyogcG9zdGluc3Qgbm93IGZpeGVzIHVwIGJyb2tlbiBpc3BlbGwuY29udHJvbCBmaWxlLgorKiBDeWNsaWMgZGVwZW5kZW5jeS9tdWx0aXBsZSBwYWNrYWdlIHJlbW92YWwgcHJvY2Vzc2luZzogZG9uJ3QgY29uc2lkZXIKKyAgcGFja2FnZXMgd2UndmUganVzdCByZW1vdmVkIHdoZW4gbG9va2luZyBmb3IgYSByZWFzb24gbm90IHRvIGdvIGFoZWFkLgorKiBBZGRlZCBjYWxsIHRvIHBvc3RpbnN0IHdpdGggYHB1cmdlJyBhcmd1bWVudCBmb3IgZXhwdW5naW5nIG9sZAorICBjb25maWd1cmF0aW9uIGV0Yy4gdGhhdCBhcmVuJ3QgbGlzdGVkIGluIGNvbmZmaWxlcy4KKworQ2hhbmdlcyBpbiBkcGtnIDAuOTMuMTM6CisKKyogc3ViIFNfSVNSRUcgZGVmaW5lZCBpbiBkcGtnLnBsLgorKiBDaGVja2luZyBvZiBERVBFTkRTICZjIGZpZWxkcyB3YXMgdG9vIGxheCwgY2F1c2luZyBhbiBpbnRlcm5hbCBlcnJvcgorICBpZiB5b3UgZmVkIGl0IGNlcnRhaW4ga2luZHMgb2YgYnJva2VuIGNvbnRyb2wgZmlsZS4KKyogRml4ZWQgbWlzbGVhZGluZyBtZXNzYWdlIGZyb20gYm9ndXMgaW5zdGFsbGF0aW9uc3RhdHVzIGNhbGwuCisqIE5ldyAtdSBhbmQgLVUgb3B0aW9ucyB0byBkcGtnLWRlYiB3aGljaCBkb24ndCB1bnBhY2sgdGhlIC9ERUJJQU4KKyAgZGlyZWN0b3J5LCBhbmQgdXNlIHRoZXNlIGluIGRwa2cucGw7IGNsZWFuIHVwIC9ERUJJQU4gaW4gcG9zdGluc3QuCisKK0NoYW5nZXMgaW4gZHBrZyAwLjkzLjEyOgorCisqIE5vIGxvbmdlciBuZWVkcyAqLnBoIGZpbGVzLCBzaW5jZSB0aGVzZSBhcHBlYXIgdG8gYmUgYnJva2VuLgorKiBQb3N0aW5zdCBmaXhlcyB1cCAqLmNvbnRyb2wgZmlsZXMgd2l0aCBjdXJseSBicmFja2V0cy4KKyogZW1icnlvIG9mIGRzZWxlY3QuCisKK0NoYW5nZXMgaW4gZHBrZyAwLjkzLjExOgorCisqIE5ldyAtLWlnbm9yZS1kZXBlbmRzIG9wdGlvbi4KKyogVGhpcyBDaGFuZ2VMb2cgY2hhbmdlZCBmb3JtYXQgaGVyZS4KKworV2VkIE5vdiAzMCAxNTozODoyMSBHTVQgMTk5NCAgSWFuIEphY2tzb24gIDxpd2oxMEBjdXMuY2FtLmFjLnVrPgorCisJKiBkcGtnIDAuOTMuMTEgcmVsZWFzZWQuCisKKwkqIGNvbmZmaWxlIHVwZGF0aW5nIGZpeGVkLgorCisJKiBNZXNzYWdlIGB1cGRncmFkZScgaW4gZHBrZyBjaGFuZ2VkIHRvIGByZXBsYWNlJy4KKworCSogaW5zdGFsbC1pbmZvIG5vdyBjb3BlcyB3aXRoIG11bHRpLWxpbmUgZW50cmllcy4KKworCSogdmVyc2lvbiBudW1iZXJzIG5vdyBkb25lIGF1dG9tYXRpY2FsbHkgaW4gZHBrZyBhbmQgaW5zdGFsbC1pbmZvLgorCisJKiBtb3JlIGRlYnVnZ2luZyBhcm91bmQgY29uZmZpbGVzIHVwZGF0ZXMuCisKKwkqICouaGFzaCBmaWxlcyBub3QgZGVsZXRlZCBzbyBzb29uLgorCisJKiBhZGRzIGJyYW5kIG5ldyBwYWNrYWdlcyB0byBzdGF0dXMgYXJyYXkgc28gd2UgY2FuIGluc3RhbGwgdGhlbS4KKworCSogcG9zdGluc3QgZG9lcyBoMnBoIGZvciB7c3lzLGxpbnV4fS97c3RhdCx0eXBlc30ucGggaWYgcmVxdWlyZWQuCisKK01vbiBOb3YgMjggMDI6MDA6MTMgR01UIDE5OTQgIElhbiBKYWNrc29uICA8aXdqMTBAY3VzLmNhbS5hYy51az4KKworICAgICAgICAqIGRwa2cgMC45My4xMCByZWxlYXNlZC4KKworICAgICAgICAqIGRwa2cucGwgY29tcGxldGVseSByZXdyaXR0ZW4uCisKKyAgICAgICAgKiBkcGtnLWRlYjogcmVtb3ZlZCBkYWJhc2UtcHJvY2Vzc2luZyBhbmQgLS1pbnN0YWxsIG9wdGlvbi4KKworICAgICAgICAqIE1ha2VmaWxlcyByZXdvcmtlZCwgZGViaWFuLnJ1bGVzIGFkZGVkLgorCisgICAgICAgICogRG9uJ3QgaW5zdGFsbCBhbnl0aGluZyBpbiAvdXNyL2RvYy9leGFtcGxlcy4KKworICAgICAgICAqIGRwa2ctKi5kZWIgY29udGFpbnMgL3Vzci9iaW4vZHBrZy1kZWIuZGlzdCwgZml4ZWQgdXAgYnkgcG9zdGluc3QuCisKK1RodSBPY3QgMjAgMTM6MjI6MjAgMTk5NCAgSWFuIE11cmRvY2sgIChpbXVyZG9ja0BkZWJyYS5kZWJpYW4ub3JnKQorCisgICAgICAgICogZHBrZyAwLjkzLjkgcmVsZWFzZWQuCisKKyAgICAgICAgKiBkcGtnLnBsOiBVc2UgJGFyZ3VtZW50LCBub3QgJHBhY2thZ2UsIHdpdGggYC0tYnVpbGQnLgorICAgICAgICBNYWtlIHN1cmUgdGhhdCBzYXZlZCBwb3N0aW5zdCBzY3JpcHRzIGFyZSBleGVjdXRhYmxlLgorCitUdWUgT2N0IDE4IDA5OjQwOjU3IDE5OTQgIElhbiBNdXJkb2NrICAoaW11cmRvY2tAZGVicmEuZGViaWFuLm9yZykKKworICAgICAgICAqIGRwa2cgMC45My44IHJlbGVhc2VkLgorCisgICAgICAgICogZGViL3JlbW92ZS5jIChwa2dfcmVtb3ZlKTogRG8gbm90IHJlcG9ydCBhbiBlcnJvciBmcm9tIHJtZGlyICgpCisgICAgICAgIHdoZW4gYGVycm5vJyBpcyBFTk9URU1QVFkgKERpcmVjdG9yeSBub3QgZW1wdHkpLCBiZWNhdXNlIGluIHRoaXMKKyAgICAgICAgY2FzZSB3ZSBoYXZlIGZvdW5kIHRoZSBoaWdoZXN0LWxldmVsIGRpcmVjdG9yeSBpbiB0aGUgcGFja2FnZSBhbmQKKyAgICAgICAgYXJlIHJlYWR5IHRvIGV4aXQgdGhlIGxvb3AgKGkuZS4sIGl0IGlzIGEgbm9ybWFsIG9jY3VycmVuY2UpLgorCitNb24gT2N0IDE3IDEwOjQ0OjMyIDE5OTQgIElhbiBNdXJkb2NrICAoaW11cmRvY2tAZGVicmEuZGViaWFuLm9yZykKKworICAgICAgICAqIE1ha2VmaWxlLmluOiBBZGFwdGVkIGFsbCBNYWtlZmlsZXMgdG8gdGhlIEdOVSBDb2RpbmcgU3RhbmRhcmRzLgorCisgICAgICAgICogZGViL3JlbW92ZS5jIChwa2dfcmVtb3ZlKTogTWFrZSBzdXJlIHRoYXQgcGFyZW50IGRpcmVjdG9yaWVzIGFyZQorICAgICAgICByZW1vdmVkIExBU1QhICBUaGlzIHdpbGwgcmVzdWx0IGluIGNvbXBsZXRlIHJlbW92YWwgb2YgcGFja2FnZXMKKyAgICAgICAgd2hlbiAtLXJlbW92ZSBpcyBjYWxsZWQuICBkcGtnIDAuOTMuNyAoYW5kIGVhcmxpZXIpIGhhZCBwcm9ibGVtcworICAgICAgICB3aXRoIHRoaXMgYmVjYXVzZSBpdCB0cmllZCB0byByZW1vdmUgZGlyZWN0b3JpZXMgaW4gb3JkZXIsIHdoaWNoCisgICAgICAgIHdpbGwgd29yayBtb3N0IG9mIHRoZSB0aW1lLCBidXQgbm90IG5lY2Vzc2FyaWx5IGFsbCBvZiB0aGUgdGltZS4KKworICAgICAgICAqIGRlYi9saXN0LmMgKHBrZ19saXN0KTogT3V0cHV0IGlzIHNvcnRlZCBieSBwYWNrYWdlIG5hbWUuCisKK1R1ZSBPY3QgIDQgMTI6Mjc6MTAgMTk5NCAgSWFuIE11cmRvY2sgIChpbXVyZG9ja0BkZWJyYS5kZWJpYW4ub3JnKQorCisgICAgICAgICogZGViL2NvbnRlbnRzLmMgKHBrZ19jb250ZW50cyk6IFdoZW4gYSBsaXN0IGZpbGUgY2Fubm90IGJlCisgICAgICAgIG9wZW5lZCwgc2lsZW50bHkgZmFpbCBhbmQgbGV0IHRoZSBmcm9udC1lbmQgZXhwbGFpbiB0aGUgcHJvYmxlbS4KKworICAgICAgICAqIGRlYi91dGlsLmMgKHJldHVybl9pbmZvKTogV2hlbiBhIGNvbnRyb2wgZmlsZSBjYW5ub3QgYmUgb3BlbmVkLAorICAgICAgICBzaWxlbnRseSBmYWlsIGFuZCBsZXQgdGhlIGZyb250LWVuZCBleHBsYWluIHRoZSBwcm9ibGVtLgorCisgICAgICAgICogZGViL3NlYXJjaC5jIChwa2dfc2VhcmNoKTogRXhpdCAwIGlmIHRoZSByZWd1bGFyIGV4cHJlc3Npb24gaXMKKyAgICAgICAgbWF0Y2hlZCBhbmQgMSBpZiBpdCBpcyBub3QuCisKK01vbiBPY3QgIDMgMTg6Mzg6NTMgMTk5NCAgSWFuIE11cmRvY2sgIChpbXVyZG9ja0BkZWJyYS5kZWJpYW4ub3JnKQorCisgICAgICAgICogZHBrZy5wbDogTmV3IGZpbGUuICBSZXBsYWNlcyBkcGtnLnNoLgorCisgICAgICAgICogZGViL01ha2VmaWxlLmluOiBSZW5hbWVkIGBkcGtnLXV0aWwuZGViJyB0byBgZHBrZy1kZWInLgorCisgICAgICAgICogZGViL2J1aWxkLmMgKHBrZ19idWlsZCk6IGAtLWJ1aWxkJyBpcyBsZXNzIHZlcmJvc2UsIGluc3RlYWQKKyAgICAgICAgbGV0dGluZyB0aGUgZnJvbnQtZW5kIGFkZCB2ZXJib3NpdHkgd2hlcmUgYXBwcm9wcmlhdGUuCisKKyAgICAgICAgKiBkZWIvaW5zdGFsbC5jIChwa2dfaW5zdGFsbCk6IERpdHRvLgorCisgICAgICAgICogZGViL3JlbW92ZS5jIChwa2dfcmVtb3ZlKTogRGl0dG8uCisKKyAgICAgICAgKiBkZWIvc2VhcmNoLmMgKHBrZ19zZWFyY2gpOiBEaXR0by4KKworICAgICAgICAqIGRlYi9kZXNjcmliZS5jIChwa2dfZGVzY3JpYmUpOiBgLS1kZXNjcmliZScgaXMgbGVzcyB2ZXJib3NlLAorICAgICAgICBpbnN0ZWFkIGxldHRpbmcgdGhlIGZyb250LWVuZCBhZGQgdmVyYm9zaXR5IHdoZXJlIGFwcHJvcHJpYXRlLgorICAgICAgICBUaGUgYGBEZXNjcmlwdGlvbjonJyBsYWJlbCBoYXMgYmVlbiByZW1vdmVkLgorCisgICAgICAgICogZGViL3ZlcnNpb24uYyAocGtnX3ZlcnNpb24pOiBgLS12ZXJzaW9uJyBpcyBsZXNzIHZlcmJvc2UsCisgICAgICAgIGluc3RlYWQgbGV0dGluZyB0aGUgZnJvbnQtZW5kIGFkZCB2ZXJib3NpdHkgd2hlcmUgYXBwcm9wcmlhdGUuCisgICAgICAgIFRoZSBgYFZlcnNpb246JycgbGFiZWwgaGFzIGJlZW4gcmVtb3ZlZCwgYXMgaGFzIHRoZSBtYWludGFpbmVyCisgICAgICAgIGluZm9ybWF0aW9uLgorCitNb24gU2VwIDEyIDE0OjIyOjA0IDE5OTQgIElhbiBNdXJkb2NrICAoaW11cmRvY2tAZGVicmEuZGViaWFuLm9yZykKKworICAgICAgICAqIGRlYi92ZXJzaW9uLmMgKHBrZ192ZXJzaW9uKTogYC0tdmVyc2lvbicgbm93IHJlcG9ydHMgdGhlCisgICAgICAgIHZlcnNpb24gbnVtYmVyIG9mIGRwa2cgaWYgbm8gYXJndW1lbnQgaXMgc3BlY2lmaWVkLgorCitUaHUgU2VwICAxIDEzOjMxOjM3IDE5OTQgIElhbiBNdXJkb2NrICAoaW11cmRvY2tAZGVicmEuZGViaWFuLm9yZykKKworICAgICAgICAqIGRwa2cgMC45My43IHJlbGVhc2VkLgorCisgICAgICAgICogZGViL2J1aWxkLmMgKHBrZ19idWlsZCk6IGNoZWNrIHN0YXR1cyBhbmQgZXhpdCBpZiBub24temVyby4KKworICAgICAgICAqIGRlYi9jb250ZW50cy5jIChwa2dfY29udGVudHMpOiBkaXR0by4KKworICAgICAgICAqIGRlYi9pbnN0YWxsLmMgKGFyY2hpdmVfZXh0cmFjdCk6IGRpdHRvLgorCitUaHUgU2VwICAxIDEzOjIwOjA4IDE5OTQgIElhbiBNdXJkb2NrICAoaW11cmRvY2tAZGVicmEuZGViaWFuLm9yZykKKworICAgICAgICAqIGRlYi92ZXJzaW9uLmMgKHBrZ192ZXJzaW9uKTogaW5kZW50IHRvIHRoZSBzYW1lIHBvaW50IGFzCisgICAgICAgIHBrZ19kZXNjcmliZS4KKworVGh1IFNlcCAgMSAxMjoyMToxMSAxOTk0ICBJYW4gTXVyZG9jayAgKGltdXJkb2NrQGRlYnJhLmRlYmlhbi5vcmcpCisKKyAgICAgICAgKiBNYWtlZmlsZS5pbiAoZGlzdCk6IGFkZGVkIGRlYmlhbi5ydWxlcyBiaW5hcnksIHNvdXJjZSBhbmQKKyAgICAgICAgZGlzdCB0YXJnZXRzIHRvIG1ha2UgZmluYWwgZGlzdHJpYnV0aW9uIGVhc2llciB0byBtYWtlLgorICAgICAgICAoaW5zdGFsbCk6IGluc3RhbGwgcHJvZ3JhbXMgdG8gL3Vzci9iaW4uCisKKyAgICAgICAgKiBkZWIvTWFrZWZpbGUuaW4gKGluc3RhbGwpOiBpbnN0YWxsIHByb2dyYW1zIHRvIC91c3IvYmluLgorCisgICAgICAgICogZGViL2xpc3QuYyAocGtnX2xpc3QpOiBlbmZvcmNlIGEgbWF4aW11bSBsaW1pdCBvZiB0ZW4gY2hhcmFjdGVycworICAgICAgICBmb3IgdGhlIHBhY2thZ2UgbmFtZSBpbiB0aGUgb3V0cHV0LgorICAgICAgICAocGtnX2xpc3QpOiBsZWZ0LWp1c3RpZnkgdGhlIHZlcnNpb24gbnVtYmVyIHRvIG1ha2UgaXQgZWFzaWVyIGZvcgorICAgICAgICB0aGUgZnJvbnQtZW5kIHRvIHBhcnNlIHRoZSBvdXRwdXQuCisgICAgICAgIChwa2dfbGlzdCk6IHJlcGxhY2UgZmlyc3QgJ1xuJyBjaGFyYWN0ZXIgaW4gcGFja2FnZXNbbl0uZGVzY3JpcHRpb24KKyAgICAgICAgd2l0aCAnXDAnLgorCisgICAgICAgICogZGViL2luc3RhbGwuYyAoYXJjaGl2ZV9leHRyYWN0KTogdXNlIHRoZSBgcCcgb3B0aW9uIHRvIGB0YXInIHRvCisgICAgICAgIGVuc3VyZSB0aGF0IHBlcm1pc3Npb25zIGFyZSBwcmVzZXJ2ZWQuCisKK1NhdCBBdWcgMjcgMDk6NTM6MzcgMTk5NCAgSWFuIE11cmRvY2sgIChpbXVyZG9ja0BkZWJyYS5kZWJpYW4ub3JnKQorCisgICAgICAgICogZHBrZyAwLjkzLjYgcmVsZWFzZWQuCisKKyAgICAgICAgKiBkZWIvdXRpbC5jIChyZXR1cm5faW5mbyk6IG9ubHkgdW5saW5rIENPTlRST0wgaWYgQVJDSElWRV9GTEFHIGlzCisgICAgICAgIHRydWUhCisKK0ZyaSBBdWcgMjYgMTU6Mzg6MjIgMTk5NCAgSWFuIE11cmRvY2sgIChpbXVyZG9ja0BkZWJyYS5kZWJpYW4ub3JnKQorCisgICAgICAgICogZHBrZyAwLjkzLjUgcmVsZWFzZWQuCisKKyAgICAgICAgKiBkZWIvY29udGVudHMuYyAocGtnX2NvbnRlbnRzKTogbWVyZ2VkIGZ1bmN0aW9uIGFyY2hpdmVfY29udGVudHMKKyAgICAgICAgaW50byBmdW5jdGlvbiBwa2dfY29udGVudHMuCisKKyAgICAgICAgKiBkZWIvY29udGVudHMuYyAocGtnX2NvbnRlbnRzKTogdXNlIGxzdGF0IChyYXRoZXIgdGhhbiBzdGF0KSBzbworICAgICAgICB0aGF0IHN5bWJvbGljIGxpbmtzIGFyZSByZWNvZ25pemVkLgorICAgICAgICAocGtnX2NvbnRlbnRzKTogcHJpbnQgdGhlIHVzdWFsIGA8cGF0aD4gLT4gPGxpbmtfdG8+JyBub3cgdGhhdCB3ZQorICAgICAgICByZWNvZ25pemUgc3ltYm9saWMgbGlua3MuCisKKyAgICAgICAgKiBkZWIvdXRpbC5jIChyZXR1cm5faW5mbyk6IGNyZWF0ZSBhIEZJRk8gdG8gcGlwZSB0aGUgbmVlZGVkCisgICAgICAgIGluZm9ybWF0aW9uIHRvIHRoZSBgYGZvcm1hdHRlcicnIHJhdGhlciB0aGFuIGNyZWF0aW5nIGEgZGlyZWN0b3J5CisgICAgICAgIGluIC90bXAgZm9yIHRoZSBwYWNrYWdlIGluZm9ybWF0aW9uLCB3aGljaCBpcyB3aGF0IHdlIHVzZWQgdG8gZG8uCisKK1RodSBBdWcgMjUgMTE6NDY6MjcgMTk5NCAgSWFuIE11cmRvY2sgIChpbXVyZG9ja0BkZWJyYS5kZWJpYW4ub3JnKQorCisgICAgICAgICogbGliL2Zha2UtbHMuYyAobWtfZGF0ZV9zdHJpbmcpOiByZXR1cm4gYSBwb2ludGVyIHRvIG1hbGxvYydlZAorICAgICAgICBhcmVhLgorICAgICAgICAobWtfbW9kZV9zdHJpbmcpOiBkaXR0by4KKworICAgICAgICAqIGRwa2cuc2g6IG1ha2Ugc3VyZSB0aGUgY29udHJvbCBpbmZvcm1hdGlvbiBpcyBleHRyYWN0ZWQgdG8gYQorICAgICAgICB1bmlxdWVseS1uYW1lZCB0ZW1wb3JhcnkgZGlyZWN0b3J5IGR1cmluZyBwYWNrYWdlIGluc3RhbGxhdGlvbi4KKworICAgICAgICAqIGRwa2cuc2g6IGV4ZWN1dGUgdGhlIHByZS0gYW5kIHBvc3QtcmVtb3ZhbCBzY3JpcHRzIGR1cmluZworICAgICAgICBwYWNrYWdlIHJlbW92YWwuCisKKyAgICAgICAgKiBkcGtnLnNoOiBleGl0IGltbWVkaWF0ZWx5IGlmIGRwa2ctdXRpbC5kZWIgcmVwb3J0cyBmYWlsdXJlLgorCisgICAgICAgICogZGViL2luc3RhbGwuYyAocGtnX2NvbnRyb2wpOiBtYWtlIHN1cmUgdGhhdCBgcGFja2FnZScgZXhpc3RzIGFuZAorICAgICAgICBpcyBhIERlYmlhbiBhcmNoaXZlIGJlZm9yZSBkb2luZyBhbnl0aGluZy4KKworICAgICAgICAqIGRlYi9pbnN0YWxsLmMgKHBrZ19leHRyYWN0KTogbWFrZSBzdXJlIHRoYXQgYHBhY2thZ2UnIGV4aXN0cyBhbmQKKyAgICAgICAgaXMgYSBEZWJpYW4gYXJjaGl2ZSBiZWZvcmUgZG9pbmcgYW55dGhpbmcuCisKKyAgICAgICAgKiBkZWIvaW5zdGFsbC5jIChwa2dfaW5zdGFsbCk6IHVubGluayBgZXh0cmFjdF9vdXRwdXQnIHdoZW4gZG9uZS4KKworICAgICAgICAqIGRlYi9yZW1vdmUuYyAocGtnX3JlbW92ZSk6IHVzZSBsc3RhdCAocmF0aGVyIHRoYW4gc3RhdCkgc28gdGhhdAorICAgICAgICAtLXJlbW92ZSBkb2VzIG5vdCBnZXQgY29uZnVzZWQgYW5kIHRoaW5rIHRoYXQgYSBzeW1ib2xpYyBsaW5rIHRvIGEKKyAgICAgICAgZGlyZWN0b3J5IGlzIGFjdHVhbGx5IGEgZGlyZWN0b3J5LCB3aGljaCByZXN1bHRzIGluIHRoZSBzeW1ib2xpYworICAgICAgICBsaW5rIG5ldmVyIGJlaW5nIHJlbW92ZWQgYXQgYWxsLgorCitDaGFuZ2VMb2cgYmVnaW5zIFRodSBBdWcgMjUgMTE6NDY6MjcgMTk5NCBmb3IgZHBrZyAwLjkzLjUuCisKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZGViaWFuL2NvbXBhdCBiL2Rwa2ctMS4xNi4xLjEvZGViaWFuL2NvbXBhdApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43ZjhmMDExCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kZWJpYW4vY29tcGF0CkBAIC0wLDAgKzEgQEAKKzcKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZGViaWFuL2NvbnRyb2wgYi9kcGtnLTEuMTYuMS4xL2RlYmlhbi9jb250cm9sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjVjNDk0MDIKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RlYmlhbi9jb250cm9sCkBAIC0wLDAgKzEsMTEwIEBACitTb3VyY2U6IGRwa2cKK1NlY3Rpb246IGFkbWluCitQcmlvcml0eTogcmVxdWlyZWQKK01haW50YWluZXI6IERwa2cgRGV2ZWxvcGVycyA8ZGViaWFuLWRwa2dAbGlzdHMuZGViaWFuLm9yZz4KK1VwbG9hZGVyczogR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPiwgUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorT3JpZ2luOiBkZWJpYW4KK0J1Z3M6IGRlYmJ1Z3M6Ly9idWdzLmRlYmlhbi5vcmcKK0hvbWVwYWdlOiBodHRwOi8vd2lraS5kZWJpYW4ub3JnL1RlYW1zL0Rwa2cKK1Zjcy1Ccm93c2VyOiBodHRwOi8vZ2l0LmRlYmlhbi5vcmcvP3A9ZHBrZy9kcGtnLmdpdAorVmNzLUdpdDogZ2l0Oi8vZ2l0LmRlYmlhbi5vcmcvZ2l0L2Rwa2cvZHBrZy5naXQKK1N0YW5kYXJkcy1WZXJzaW9uOiAzLjkuMgorQnVpbGQtRGVwZW5kczogZGViaGVscGVyICg+PSA3KSwgcGtnLWNvbmZpZywgZmxleCwKKyBnZXR0ZXh0ICg+PSAwLjE4KSwgcG80YSAoPj0gMC4zNi40KSwKKyB6bGliMWctZGV2ICg+PSAxOjEuMS4zLTE5LjEpLCBsaWJiejItZGV2LAorIGxpYnNlbGludXgxLWRldiAoPj0gMS4yOC00KSBbbGludXgtYW55XSwKKyBsaWJuY3Vyc2VzdzUtZGV2LAorIGxpYnRpbWVkYXRlLXBlcmwsIGxpYmlvLXN0cmluZy1wZXJsCisKK1BhY2thZ2U6IGxpYmRwa2ctZGV2CitTZWN0aW9uOiBsaWJkZXZlbAorUHJpb3JpdHk6IG9wdGlvbmFsCitBcmNoaXRlY3R1cmU6IGFueQorRGVwZW5kczogJHttaXNjOkRlcGVuZHN9CitEZXNjcmlwdGlvbjogRGViaWFuIHBhY2thZ2UgbWFuYWdlbWVudCBzdGF0aWMgbGlicmFyeQorIFRoaXMgcGFja2FnZSBwcm92aWRlcyB0aGUgaGVhZGVyIGZpbGVzIGFuZCBzdGF0aWMgbGlicmFyeSBuZWNlc3NhcnkgdG8KKyBkZXZlbG9wIHNvZnR3YXJlIHVzaW5nIGxpYmRwa2csIHRoZSBzYW1lIGxpYnJhcnkgdXNlZCBpbnRlcm5hbGx5IGJ5IGRwa2cuCisgLgorIE5vdGUgdGhvdWdoLCB0aGF0IHRoZSBBUEkgaXMgdG8gYmUgY29uc2lkZXJlZCB2b2xhdGlsZSwgYW5kIG1pZ2h0IGNoYW5nZQorIGF0IGFueSB0aW1lLCB1c2UgYXQgeW91ciBvd24gcmlzay4KKworUGFja2FnZTogZHBrZworQXJjaGl0ZWN0dXJlOiBhbnkKK0Vzc2VudGlhbDogeWVzCitQcmUtRGVwZW5kczogJHtzaGxpYnM6RGVwZW5kc30sIGNvcmV1dGlscyAoPj0gNS45My0xKSwgeHotdXRpbHMKK0RlcGVuZHM6ICR7bWlzYzpEZXBlbmRzfQorQnJlYWtzOiBkcGtnLWRldiAoPDwgMS4xNS44KSwgbGliZHBrZy1wZXJsICg8PCAxLjE1LjgpLAorIGFwdCAoPDwgMC43LjcpLCBhcHRpdHVkZSAoPDwgMC40LjctMSksCisjIGluc3RhbGwtaW5mbyB0cmFuc2l0aW9uCisjIHNlZSBodHRwOi8vd2lraS5kZWJpYW4ub3JnL1RyYW5zaXRpb25zL0Rwa2dUb0dudUluc3RhbGxJbmZvCisgdGtpbmZvICg8PCAyLjgtMy4xKSwgcGluZm8gKDw8IDAuNi45LTMuMSkKK1N1Z2dlc3RzOiBhcHQKK0Rlc2NyaXB0aW9uOiBEZWJpYW4gcGFja2FnZSBtYW5hZ2VtZW50IHN5c3RlbQorIFRoaXMgcGFja2FnZSBwcm92aWRlcyB0aGUgbG93LWxldmVsIGluZnJhc3RydWN0dXJlIGZvciBoYW5kbGluZyB0aGUKKyBpbnN0YWxsYXRpb24gYW5kIHJlbW92YWwgb2YgRGViaWFuIHNvZnR3YXJlIHBhY2thZ2VzLgorIC4KKyBGb3IgRGViaWFuIHBhY2thZ2UgZGV2ZWxvcG1lbnQgdG9vbHMsIGluc3RhbGwgZHBrZy1kZXYuCisKK1BhY2thZ2U6IGRwa2ctZGV2CitTZWN0aW9uOiB1dGlscworUHJpb3JpdHk6IG9wdGlvbmFsCitBcmNoaXRlY3R1cmU6IGFsbAorRGVwZW5kczogbGliZHBrZy1wZXJsICg9ICR7c291cmNlOlZlcnNpb259KSwgYnppcDIsIHh6LXV0aWxzLAorIHBhdGNoLCBtYWtlLCBiaW51dGlscywgYmFzZS1maWxlcyAoPj0gNS4wLjApLCAke21pc2M6RGVwZW5kc30KK1JlY29tbWVuZHM6IGdjYyB8IGMtY29tcGlsZXIsIGJ1aWxkLWVzc2VudGlhbCwgZmFrZXJvb3QsIGdudXBnLCBncGd2LCBsaWJhbGdvcml0aG0tbWVyZ2UtcGVybAorU3VnZ2VzdHM6IGRlYmlhbi1rZXlyaW5nCitCcmVha3M6IGRwa2ctY3Jvc3MgKDw8IDIuMC4wKSwgZGV2c2NyaXB0cyAoPDwgMi4xMC4yNikKK0Rlc2NyaXB0aW9uOiBEZWJpYW4gcGFja2FnZSBkZXZlbG9wbWVudCB0b29scworIFRoaXMgcGFja2FnZSBwcm92aWRlcyB0aGUgZGV2ZWxvcG1lbnQgdG9vbHMgKGluY2x1ZGluZyBkcGtnLXNvdXJjZSkKKyByZXF1aXJlZCB0byB1bnBhY2ssIGJ1aWxkIGFuZCB1cGxvYWQgRGViaWFuIHNvdXJjZSBwYWNrYWdlcy4KKyAuCisgTW9zdCBEZWJpYW4gc291cmNlIHBhY2thZ2VzIHdpbGwgcmVxdWlyZSBhZGRpdGlvbmFsIHRvb2xzIHRvIGJ1aWxkOworIGZvciBleGFtcGxlLCBtb3N0IHBhY2thZ2VzIG5lZWQgbWFrZSBhbmQgdGhlIEMgY29tcGlsZXIgZ2NjLgorCitQYWNrYWdlOiBsaWJkcGtnLXBlcmwKK1NlY3Rpb246IHBlcmwKK1ByaW9yaXR5OiBvcHRpb25hbAorQXJjaGl0ZWN0dXJlOiBhbGwKK0RlcGVuZHM6IGRwa2cgKD49IDEuMTUuOCksIHBlcmwsIGxpYnRpbWVkYXRlLXBlcmwsICR7bWlzYzpEZXBlbmRzfQorUmVjb21tZW5kczogYnppcDIsIHh6LXV0aWxzCitTdWdnZXN0czogZGViaWFuLWtleXJpbmcsIGdudXBnLCBncGd2LCBiaW51dGlscywgcGF0Y2gKK0JyZWFrczogZHBrZy1kZXYgKDw8IDEuMTUuNikKK1JlcGxhY2VzOiBkcGtnICg8PCAxLjE1LjgpLCBkcGtnLWRldiAoPDwgMS4xNS42KQorRGVzY3JpcHRpb246IERwa2cgcGVybCBtb2R1bGVzCisgVGhpcyBwYWNrYWdlIHByb3ZpZGVzIHRoZSBwZXJsIG1vZHVsZXMgdXNlZCBieSB0aGUgc2NyaXB0cworIGluIGRwa2ctZGV2LiBUaGV5IGNvdmVyIGEgd2lkZSByYW5nZSBvZiBmdW5jdGlvbmFsaXRpZXMuIEFtb25nIHRoZW0KKyB0aGVyZSBhcmUgdGhlIGZvbGxvd2luZyBtb2R1bGVzOgorIC4KKyAgLSBEcGtnOjpBcmNoOiBtYW5pcHVsYXRlIERlYmlhbiBhcmNoaXRlY3R1cmUgaW5mb3JtYXRpb24KKyAgLSBEcGtnOjpCdWlsZE9wdGlvbnM6IHBhcnNlIGFuZCBtYW5pcHVsYXRlIERFQl9CVUlMRF9PUFRJT05TCisgIC0gRHBrZzo6Q2hhbmdlbG9nOiBwYXJzZSBEZWJpYW4gY2hhbmdlbG9ncworICAtIERwa2c6OkNoZWNrc3VtczogZ2VuZXJhdGUgYW5kIHBhcnNlIGNoZWNrc3VtcworICAtIERwa2c6OkNvbXByZXNzaW9uOjpQcm9jZXNzOiB3cmFwcGVyIGFyb3VuZCBjb21wcmVzc2lvbiB0b29scworICAtIERwa2c6OkNvbXByZXNzaW9uOjpGaWxlSGFuZGxlOiB0cmFuc3BhcmVudGx5IChkZSljb21wcmVzcyBmaWxlcworICAtIERwa2c6OkNvbnRyb2w6IHBhcnNlIGFuZCBtYW5pcHVsYXRlIERlYmlhbiBjb250cm9sIGluZm9ybWF0aW9uCisgICAgKC5kc2MsIC5jaGFuZ2VzLCBQYWNrYWdlcy9Tb3VyY2VzIGVudHJpZXMsIGV0Yy4pCisgIC0gRHBrZzo6RGVwczogcGFyc2UgYW5kIG1hbmlwdWxhdGUgZGVwZW5kZW5jaWVzCisgIC0gRHBrZzo6RXJyb3JIYW5kbGluZzogY29tbW9uIGVycm9yIGZ1bmN0aW9ucworICAtIERwa2c6OkluZGV4OiBjb2xsZWN0aW9ucyBvZiBEcGtnOjpDb250cm9sIChQYWNrYWdlcy9Tb3VyY2VzIGZpbGVzIGZvcgorICAgIGV4YW1wbGUpCisgIC0gRHBrZzo6SVBDOiBzcGF3biBzdWItcHJvY2Vzc2VzIGFuZCBmZWVkL3JldHJpZXZlIGRhdGEKKyAgLSBEcGtnOjpTdWJzdHZhcnM6IHN1YnN0aXR1dGUgdmFyaWFibGVzIGluIHN0cmluZ3MKKyAgLSBEcGtnOjpWZW5kb3I6IGlkZW50aWZ5IGN1cnJlbnQgZGlzdHJpYnV0aW9uIHZlbmRvcgorICAtIERwa2c6OlZlcnNpb246IHBhcnNlIGFuZCBtYW5pcHVsYXRlIERlYmlhbiBwYWNrYWdlIHZlcnNpb25zCisgLgorIEFsbCB0aGUgcGFja2FnZXMgbGlzdGVkIGluIFN1Z2dlc3RzIG9yIFJlY29tbWVuZHMgYXJlIHVzZWQgYnkgc29tZSBvZiB0aGUKKyBtb2R1bGVzLgorCitQYWNrYWdlOiBkc2VsZWN0CitQcmlvcml0eTogb3B0aW9uYWwKK0FyY2hpdGVjdHVyZTogYW55CitEZXBlbmRzOiAke3NobGliczpEZXBlbmRzfSwgZHBrZyAoPj0gMS4xMy4xKSwgJHttaXNjOkRlcGVuZHN9CitTdWdnZXN0czogcGVybAorQ29uZmxpY3RzOiBkcGtnLWZ0cCwgZHBrZy1tdWx0aWNkCitSZXBsYWNlczogZHBrZy1mdHAsIGRwa2ctbXVsdGljZAorRGVzY3JpcHRpb246IERlYmlhbiBwYWNrYWdlIG1hbmFnZW1lbnQgZnJvbnQtZW5kCisgZHNlbGVjdCBpcyBhIGhpZ2gtbGV2ZWwgaW50ZXJmYWNlIGZvciBtYW5hZ2luZyB0aGUgaW5zdGFsbGF0aW9uIGFuZAorIHJlbW92YWwgb2YgRGViaWFuIHNvZnR3YXJlIHBhY2thZ2VzLgorIC4KKyBNYW55IHVzZXJzIGZpbmQgZHNlbGVjdCBpbnRpbWlkYXRpbmcgYW5kIG5ldyB1c2VycyBtYXkgcHJlZmVyIHRvIHVzZQorIGFwdC1iYXNlZCB1c2VyIGludGVyZmFjZXMuCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2RlYmlhbi9jb3B5cmlnaHQgYi9kcGtnLTEuMTYuMS4xL2RlYmlhbi9jb3B5cmlnaHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZmU5OWE2MAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZGViaWFuL2NvcHlyaWdodApAQCAtMCwwICsxLDYwIEBACitUaGlzIGlzIERlYmlhbidzIHBhY2thZ2UgbWFpbnRlbmFuY2Ugc3lzdGVtLgorCitDb3B5cmlnaHQgwqkgMjAwOS0yMDEwIE1vZGVzdGFzIFZhaW5pdXMgPG1vZGF4QGRlYmlhbi5vcmc+CitDb3B5cmlnaHQgwqkgMjAwOSBSb21haW4gRnJhbmNvaXNlIDxyZnJhbmNvaXNlQGRlYmlhbi5vcmc+CitDb3B5cmlnaHQgwqkgMjAwOCBaYWNrIFdlaW5iZXJnIDx6YWNrd0BwYW5peC5jb20+CitDb3B5cmlnaHQgwqkgMjAwNyBDb2xpbiBXYXRzb24gPGNqd2F0c29uQGRlYmlhbi5vcmc+CitDb3B5cmlnaHQgwqkgMjAwNyBEb24gQXJtc3Ryb25nIDxkb25AZG9uYXJtc3Ryb25nLmNvbT4KK0NvcHlyaWdodCDCqSAyMDA3IE5pY29sYXMgRnJhbsOnb2lzIDxuaWNvbGFzLmZyYW5jb2lzQGNlbnRyYWxpZW5zLm5ldD4KK0NvcHlyaWdodCDCqSAyMDA3LTIwMTAgUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorQ29weXJpZ2h0IMKpIDIwMDYtMjAxMCBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CitDb3B5cmlnaHQgwqkgMjAwNi0yMDA4IEZyYW5rIExpY2h0ZW5oZWxkIDxkanBpZ0BkZWJpYW4ub3JnPgorQ29weXJpZ2h0IMKpIDIwMDQtMjAwNSBTY290dCBKYW1lcyBSZW1uYW50IDxzY290dEBuZXRzcGxpdC5jb20+CitDb3B5cmlnaHQgwqkgMjAwNC0yMDA1LCAyMDA3LTIwMDggQ2Fub25pY2FsIEx0ZC4KK0NvcHlyaWdodCDCqSAyMDAxLDIwMDcgSm9leSBIZXNzIDxqb2V5aEBkZWJpYW4ub3JnPgorQ29weXJpZ2h0IMKpIDE5OTktMjAwMiBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorQ29weXJpZ2h0IMKpIDE5OTktMjAwMSBNYXJjdXMgQnJpbmttYW5uIDxicmlua21kQGRlYmlhbi5vcmc+CitDb3B5cmlnaHQgwqkgMTk5OSBSaWNoYXJkIEtldHRsZXdlbGwgPHJqa0BzZmVyZS5ncmVlbmVuZC5vcmcudWs+CitDb3B5cmlnaHQgwqkgMTk5OSBCZW4gQ29sbGlucyA8YmNvbGxpbnNAZGViaWFuLm9yZz4KK0NvcHlyaWdodCDCqSAxOTk5IFJvZGVyaWNrIFNoZXJ0bGVyIDxyb2Rlcmlja0Bhcmdvbi5vcmc+CitDb3B5cmlnaHQgwqkgMTk5OC0xOTk5IE1hcnRpbiBTY2h1bHplIDxqb2V5QGluZm9kcm9tLm5vcnRoLmRlPgorQ29weXJpZ2h0IMKpIDE5OTggSGVpa28gU2NobGl0dGVybWFubiA8aGVpa29AbG90dGUuc2F4LmRlPgorQ29weXJpZ2h0IMKpIDE5OTggTmlscyBSZW5uZWJhcnRoIDxuaWxzQGRlYmlhbi5vcmc+CitDb3B5cmlnaHQgwqkgMTk5OCBKdWFuIENlc3BlZGVzIDxjZXNwZWRlc0BkZWJpYW4ub3JnPgorQ29weXJpZ2h0IMKpIDE5OTggSmltIFZhbiBaYW5kdCA8anJ2QHZhbnphbmR0Lm12LmNvbT4KK0NvcHlyaWdodCDCqSAxOTk4IEtvaWNoaSBTZWtpZG8gPHNla2lkb0BtYm94Lmt5b3RvLWluZXQub3IuanA+CitDb3B5cmlnaHQgwqkgMTk5Ny0xOTk4IEp1aG8gVnVvcmkgPGphdnVvcmlAY2MuaGVsc2lua2kuZmk+CitDb3B5cmlnaHQgwqkgMTk5Ny0xOTk4IENoYXJsZXMgQnJpc2NvZS1TbWl0aCA8Y3Bic0BkZWJpYW4ub3JnPgorQ29weXJpZ2h0IMKpIDE5OTYtMTk5OCBNaXF1ZWwgdmFuIFNtb29yZW5idXJnIDxtaXF1ZWxzQGNpc3Ryb24ubmw+CitDb3B5cmlnaHQgwqkgMTk5NiBLaW0tTWluaCBLYXBsYW4gPGtrYXBsYW5AY2RmaHAzLmluMnAzLmZyPgorQ29weXJpZ2h0IMKpIDE5OTYgS2xlZSBEaWVuZXMgPGtsZWVAZGViaWFuLm9yZz4KK0NvcHlyaWdodCDCqSAxOTk2IE1pY2hhZWwgU2hpZWxkcyA8c2hpZWxkc0Bjcm9zc2xpbmsubmV0PgorQ29weXJpZ2h0IMKpIDE5OTUtMTk5NiBFcmljayBCcmFuZGVyaG9yc3QgPGJyYW5kZXJob3JzdEBoZWVsLmZnZy5ldXIubmw+CitDb3B5cmlnaHQgwqkgMTk5NSBCcnVjZSBQZXJlbnMgPGJydWNlQHBpeGFyLmNvbT4KK0NvcHlyaWdodCDCqSAxOTk0LTE5OTkgSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuZ3JlZW5lbmQub3JnLnVrPgorQ29weXJpZ2h0IMKpIDE5OTQgQ2FybCBTdHJlZXRlciA8c3RyZWV0ZXJAY2FlLndpc2MuZWR1PgorQ29weXJpZ2h0IMKpIDE5OTQgTWF0dCBXZWxzaCA8bWR3QHN1bnNpdGUudW5jLmVkdT4KK0NvcHlyaWdodCDCqSAxOTk0IElhbiBNdXJkb2NrIDxpbXVyZG9ja0BkZWJpYW4ub3JnPgorCitJbmNsdWRlcyBwdWJsaWMgZG9tYWluIE1ENSBjb2RlOgorCWxpYi9kcGtnL21kNS5jIGFuZCBsaWIvZHBrZy9tZDUuaCBvcmlnaW5hbGx5IHdyaXR0ZW4gYnkgQ29saW4gUGx1bWIsCisKK0luY2x1ZGVzIGNvZGUgZnJvbSDigJhnZXRvcHTigJkgYW5kIOKAmGdldHRleHTigJk6CisJQ29weXJpZ2h0IMKpIDE5ODQtMjAwMiBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KKworCitMaWNlbnNlOgorCitUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQoraXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKK3RoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorCitUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKK2J1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCitNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCitHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorCitPbiBEZWJpYW4gc3lzdGVtcywgdGhlIGNvbXBsZXRlIHRleHQgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCitjYW4gYmUgZm91bmQgaW4g4oCYL3Vzci9zaGFyZS9jb21tb24tbGljZW5zZXMvR1BM4oCZIG9yIGluIHRoZSBkcGtnIHNvdXJjZQorYXMgdGhlIGZpbGUg4oCYQ09QWUlOR+KAmS4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZGViaWFuL2Rwa2ctZGV2LmRvY3MgYi9kcGtnLTEuMTYuMS4xL2RlYmlhbi9kcGtnLWRldi5kb2NzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmYyMjk4N2UKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RlYmlhbi9kcGtnLWRldi5kb2NzCkBAIC0wLDAgKzEsNiBAQAorQVVUSE9SUworVEhBTktTCitkZWJpYW4vdXNlcnRhZ3MKK2RvYy9SRUFETUUuYXBpCitkb2MvUkVBRE1FLmZlYXR1cmUtcmVtb3ZhbC1zY2hlZHVsZQorZG9jL3RyaWdnZXJzLnR4dApkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kZWJpYW4vZHBrZy1kZXYuaW5zdGFsbCBiL2Rwa2ctMS4xNi4xLjEvZGViaWFuL2Rwa2ctZGV2Lmluc3RhbGwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZjlmYzg0YgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZGViaWFuL2Rwa2ctZGV2Lmluc3RhbGwKQEAgLTAsMCArMSw0OCBAQAorLi4vc2hsaWJzLmRlZmF1bHQgZXRjL2Rwa2cKKy4uL3NobGlicy5vdmVycmlkZSBldGMvZHBrZworCit1c3IvYmluL2Rwa2ctYXJjaGl0ZWN0dXJlCit1c3IvYmluL2Rwa2ctYnVpbGRmbGFncwordXNyL2Jpbi9kcGtnLWJ1aWxkcGFja2FnZQordXNyL2Jpbi9kcGtnLWNoZWNrYnVpbGRkZXBzCit1c3IvYmluL2Rwa2ctZGlzdGFkZGZpbGUKK3Vzci9iaW4vZHBrZy1nZW5jaGFuZ2VzCit1c3IvYmluL2Rwa2ctZ2VuY29udHJvbAordXNyL2Jpbi9kcGtnLWdlbnN5bWJvbHMKK3Vzci9iaW4vZHBrZy1tZXJnZWNoYW5nZWxvZ3MKK3Vzci9iaW4vZHBrZy1uYW1lCit1c3IvYmluL2Rwa2ctcGFyc2VjaGFuZ2Vsb2cKK3Vzci9iaW4vZHBrZy1zY2FucGFja2FnZXMKK3Vzci9iaW4vZHBrZy1zY2Fuc291cmNlcwordXNyL2Jpbi9kcGtnLXNobGliZGVwcwordXNyL2Jpbi9kcGtnLXNvdXJjZQordXNyL2Jpbi9kcGtnLXZlbmRvcgordXNyL3NoYXJlL2Rwa2cvKi5tawordXNyL3NoYXJlL21hbi97Ki8qLCp9L2RlYi1jb250cm9sLjUKK3Vzci9zaGFyZS9tYW4veyovKiwqfS9kZWItc3JjLWNvbnRyb2wuNQordXNyL3NoYXJlL21hbi97Ki8qLCp9L2RlYi12ZXJzaW9uLjUKK3Vzci9zaGFyZS9tYW4veyovKiwqfS9kZWItc3Vic3R2YXJzLjUKK3Vzci9zaGFyZS9tYW4veyovKiwqfS9kZWItb3ZlcnJpZGUuNQordXNyL3NoYXJlL21hbi97Ki8qLCp9L2RlYi1leHRyYS1vdmVycmlkZS41Cit1c3Ivc2hhcmUvbWFuL3sqLyosKn0vZGViLXNobGlicy41Cit1c3Ivc2hhcmUvbWFuL3sqLyosKn0vZGViLXNwbGl0LjUKK3Vzci9zaGFyZS9tYW4veyovKiwqfS9kZWItc3ltYm9scy41Cit1c3Ivc2hhcmUvbWFuL3sqLyosKn0vZGViLXRyaWdnZXJzLjUKK3Vzci9zaGFyZS9tYW4veyovKiwqfS9kZWItb2xkLjUKK3Vzci9zaGFyZS9tYW4veyovKiwqfS9kZWIuNQordXNyL3NoYXJlL21hbi97Ki8qLCp9L2Rwa2ctYXJjaGl0ZWN0dXJlLjEKK3Vzci9zaGFyZS9tYW4veyovKiwqfS9kcGtnLWJ1aWxkZmxhZ3MuMQordXNyL3NoYXJlL21hbi97Ki8qLCp9L2Rwa2ctYnVpbGRwYWNrYWdlLjEKK3Vzci9zaGFyZS9tYW4veyovKiwqfS9kcGtnLWNoZWNrYnVpbGRkZXBzLjEKK3Vzci9zaGFyZS9tYW4veyovKiwqfS9kcGtnLWRpc3RhZGRmaWxlLjEKK3Vzci9zaGFyZS9tYW4veyovKiwqfS9kcGtnLWdlbmNoYW5nZXMuMQordXNyL3NoYXJlL21hbi97Ki8qLCp9L2Rwa2ctZ2VuY29udHJvbC4xCit1c3Ivc2hhcmUvbWFuL3sqLyosKn0vZHBrZy1nZW5zeW1ib2xzLjEKK3Vzci9zaGFyZS9tYW4veyovKiwqfS9kcGtnLW1lcmdlY2hhbmdlbG9ncy4xCit1c3Ivc2hhcmUvbWFuL3sqLyosKn0vZHBrZy1uYW1lLjEKK3Vzci9zaGFyZS9tYW4veyovKiwqfS9kcGtnLXBhcnNlY2hhbmdlbG9nLjEKK3Vzci9zaGFyZS9tYW4veyovKiwqfS9kcGtnLXNjYW5wYWNrYWdlcy4xCit1c3Ivc2hhcmUvbWFuL3sqLyosKn0vZHBrZy1zY2Fuc291cmNlcy4xCit1c3Ivc2hhcmUvbWFuL3sqLyosKn0vZHBrZy1zaGxpYmRlcHMuMQordXNyL3NoYXJlL21hbi97Ki8qLCp9L2Rwa2ctc291cmNlLjEKK3Vzci9zaGFyZS9tYW4veyovKiwqfS9kcGtnLXZlbmRvci4xCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2RlYmlhbi9kcGtnLWRldi5saW50aWFuLW92ZXJyaWRlcyBiL2Rwa2ctMS4xNi4xLjEvZGViaWFuL2Rwa2ctZGV2LmxpbnRpYW4tb3ZlcnJpZGVzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmY2ZmNkMDgKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RlYmlhbi9kcGtnLWRldi5saW50aWFuLW92ZXJyaWRlcwpAQCAtMCwwICsxLDIgQEAKK2Rwa2ctZGV2OiByZWR1bmRhbnQtb3JpZ2luLWZpZWxkCitkcGtnLWRldjogcmVkdW5kYW50LWJ1Z3MtZmllbGQKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZGViaWFuL2Rwa2ctZGV2LnByZWluc3QgYi9kcGtnLTEuMTYuMS4xL2RlYmlhbi9kcGtnLWRldi5wcmVpbnN0Cm5ldyBmaWxlIG1vZGUgMTAwNzU1CmluZGV4IDAwMDAwMDAuLmYwYTM3NWYKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RlYmlhbi9kcGtnLWRldi5wcmVpbnN0CkBAIC0wLDAgKzEsNDIgQEAKKyMhL2Jpbi9zaCAtZQorIyBUaGlzIHNjcmlwdCBjYW4gYmUgY2FsbGVkIGluIHRoZSBmb2xsb3dpbmcgd2F5czoKKyMKKyMgQmVmb3JlIHRoZSBwYWNrYWdlIGlzIGluc3RhbGxlZDoKKyMJPG5ldy1wcmVpbnN0PiBpbnN0YWxsCisjCisjIEJlZm9yZSByZW1vdmVkIHBhY2thZ2UgaXMgdXBncmFkZWQ6CisjCTxuZXctcHJlaW5zdD4gaW5zdGFsbCA8b2xkLXZlcnNpb24+CisjCisjIEJlZm9yZSB0aGUgcGFja2FnZSBpcyB1cGdyYWRlZDoKKyMJPG5ldy1wcmVpbnN0PiB1cGdyYWRlIDxvbGQtdmVyc2lvbj4KKyMKKyMKKyMgSWYgcG9zdHJtIGZhaWxzIGR1cmluZyB1cGdyYWRlIG9yIGZhaWxzIG9uIGZhaWxlZCB1cGdyYWRlOgorIwk8b2xkLXByZWluc3Q+IGFib3J0LXVwZ3JhZGUgPG5ldy12ZXJzaW9uPgorCityZW1vdmVfZG9jX3N5bWxpbmsoKSB7CisgICAgaWYgWyAtTCAvdXNyL3NoYXJlL2RvYy9kcGtnLWRldiBdOyB0aGVuCisJcm0gL3Vzci9zaGFyZS9kb2MvZHBrZy1kZXYKKyAgICBmaQorfQorCitjYXNlICIkMSIgaW4KKyAgICBpbnN0YWxsKQorCTs7CisKKyAgICB1cGdyYWRlKQorCXJlbW92ZV9kb2Nfc3ltbGluaworCTs7CisKKyAgICBhYm9ydC11cGdyYWRlKQorCTs7CisKKworICAgICopCisJZWNobyAiJDAgY2FsbGVkIHdpdGggdW5rbm93biBhcmd1bWVudCBcYCQxJyIgMT4mMgorCWV4aXQgMQorCTs7Citlc2FjCisKKyNERUJIRUxQRVIjCitleGl0IDAKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZGViaWFuL2Rwa2cuY2ZnIGIvZHBrZy0xLjE2LjEuMS9kZWJpYW4vZHBrZy5jZmcKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYmE4OThlZQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZGViaWFuL2Rwa2cuY2ZnCkBAIC0wLDAgKzEsMTMgQEAKKyMgZHBrZyBjb25maWd1cmF0aW9uIGZpbGUKKyMKKyMgVGhpcyBmaWxlIGNhbiBjb250YWluIGRlZmF1bHQgb3B0aW9ucyBmb3IgZHBrZy4gIEFsbCBjb21tYW5kLWxpbmUKKyMgb3B0aW9ucyBhcmUgYWxsb3dlZC4gIFZhbHVlcyBjYW4gYmUgc3BlY2lmaWVkIGJ5IHB1dHRpbmcgdGhlbSBhZnRlcgorIyB0aGUgb3B0aW9uLCBzZXBhcmF0ZWQgYnkgd2hpdGVzcGFjZSBhbmQvb3IgYW4gYD0nIHNpZ24uCisjCisKKyMgRG8gbm90IGVuYWJsZSBkZWJzaWctdmVyaWZ5IGJ5IGRlZmF1bHQ7IHNpbmNlIHRoZSBkaXN0cmlidXRpb24gaXMgbm90IHVzaW5nCisjIGVtYmVkZGVkIHNpZ25hdHVyZXMsIGRlYnNpZy12ZXJpZnkgd291bGQgcmVqZWN0IGFsbCBwYWNrYWdlcy4KK25vLWRlYnNpZworCisjIExvZyBzdGF0dXMgY2hhbmdlcyBhbmQgYWN0aW9ucyB0byBhIGZpbGUuCitsb2cgL3Zhci9sb2cvZHBrZy5sb2cKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZGViaWFuL2Rwa2cuY3Jvbi5kYWlseSBiL2Rwa2ctMS4xNi4xLjEvZGViaWFuL2Rwa2cuY3Jvbi5kYWlseQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45OWY0ZjZiCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kZWJpYW4vZHBrZy5jcm9uLmRhaWx5CkBAIC0wLDAgKzEsMTAgQEAKKyMhL2Jpbi9zaAorCisjIEJhY2t1cCB0aGUgNyBsYXN0IHZlcnNpb25zIG9mIGRwa2cncyBzdGF0dXMgZmlsZQoraWYgY2QgL3Zhci9iYWNrdXBzIDsgdGhlbgorICAgIGlmICEgY21wIC1zIGRwa2cuc3RhdHVzLjAgL3Zhci9saWIvZHBrZy9zdGF0dXMgOyB0aGVuCisgICAgICAgICAgICBjcCAtcCAvdmFyL2xpYi9kcGtnL3N0YXR1cyBkcGtnLnN0YXR1cworICAgICAgICAgICAgc2F2ZWxvZyAtYyA3IGRwa2cuc3RhdHVzID4vZGV2L251bGwKKyAgICBmaQorZmkKKwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kZWJpYW4vZHBrZy5kb2NzIGIvZHBrZy0xLjE2LjEuMS9kZWJpYW4vZHBrZy5kb2NzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjYzOTI0OTcKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RlYmlhbi9kcGtnLmRvY3MKQEAgLTAsMCArMSw0IEBACitBVVRIT1JTCitUSEFOS1MKK2RlYmlhbi91c2VydGFncworZG9jL1JFQURNRS5mZWF0dXJlLXJlbW92YWwtc2NoZWR1bGUKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZGViaWFuL2Rwa2cuaW5zdGFsbCBiL2Rwa2ctMS4xNi4xLjEvZGViaWFuL2Rwa2cuaW5zdGFsbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jOTVmNmEzCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kZWJpYW4vZHBrZy5pbnN0YWxsCkBAIC0wLDAgKzEsMzIgQEAKKy4uL2Rwa2cuY2ZnIGV0Yy9kcGtnCisuLi9hcmNodGFibGUgdXNyL3NoYXJlL2Rwa2cKKworZXRjL2Rwa2cvZHBrZy5jZmcuZAorZXRjL2FsdGVybmF0aXZlcwordXNyL2Jpbi9kcGtnCit1c3IvYmluL2Rwa2ctZGViCit1c3IvYmluL2Rwa2ctZGl2ZXJ0Cit1c3IvYmluL2Rwa2ctbWFpbnRzY3JpcHQtaGVscGVyCit1c3IvYmluL2Rwa2ctcXVlcnkKK3Vzci9iaW4vZHBrZy1zcGxpdAordXNyL2Jpbi9kcGtnLXN0YXRvdmVycmlkZQordXNyL2Jpbi9kcGtnLXRyaWdnZXIKK3Vzci9iaW4vdXBkYXRlLWFsdGVybmF0aXZlcwordXNyL3NiaW4KK3Vzci9zaGFyZS9kcGtnLyp0YWJsZQordXNyL3NoYXJlL2xvY2FsZS8qL0xDX01FU1NBR0VTL2Rwa2cubW8KK3Vzci9zaGFyZS9tYW4veyovKiwqfS9kcGtnLWRlYi4xCit1c3Ivc2hhcmUvbWFuL3sqLyosKn0vZHBrZy1kaXZlcnQuOAordXNyL3NoYXJlL21hbi97Ki8qLCp9L2Rwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjEKK3Vzci9zaGFyZS9tYW4veyovKiwqfS9kcGtnLXF1ZXJ5LjEKK3Vzci9zaGFyZS9tYW4veyovKiwqfS9kcGtnLXNwbGl0LjEKK3Vzci9zaGFyZS9tYW4veyovKiwqfS9kcGtnLXN0YXRvdmVycmlkZS44Cit1c3Ivc2hhcmUvbWFuL3sqLyosKn0vZHBrZy10cmlnZ2VyLjEKK3Vzci9zaGFyZS9tYW4veyovKiwqfS9kcGtnLmNmZy41Cit1c3Ivc2hhcmUvbWFuL3sqLyosKn0vZHBrZy4xCit1c3Ivc2hhcmUvbWFuL3sqLyosKn0vc3RhcnQtc3RvcC1kYWVtb24uOAordXNyL3NoYXJlL21hbi97Ki8qLCp9L3VwZGF0ZS1hbHRlcm5hdGl2ZXMuOAordmFyL2xpYi9kcGtnL2FsdGVybmF0aXZlcwordmFyL2xpYi9kcGtnL2luZm8KK3Zhci9saWIvZHBrZy9wYXJ0cwordmFyL2xpYi9kcGtnL3VwZGF0ZXMKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZGViaWFuL2Rwa2cubGlua3MgYi9kcGtnLTEuMTYuMS4xL2RlYmlhbi9kcGtnLmxpbmtzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQyOWFiMTUKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RlYmlhbi9kcGtnLmxpbmtzCkBAIC0wLDAgKzEsMyBAQAordXNyL2Jpbi9kcGtnLWRpdmVydCB1c3Ivc2Jpbi9kcGtnLWRpdmVydAordXNyL2Jpbi9kcGtnLXN0YXRvdmVycmlkZSB1c3Ivc2Jpbi9kcGtnLXN0YXRvdmVycmlkZQordXNyL2Jpbi91cGRhdGUtYWx0ZXJuYXRpdmVzIHVzci9zYmluL3VwZGF0ZS1hbHRlcm5hdGl2ZXMKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZGViaWFuL2Rwa2cubGludGlhbi1vdmVycmlkZXMgYi9kcGtnLTEuMTYuMS4xL2RlYmlhbi9kcGtnLmxpbnRpYW4tb3ZlcnJpZGVzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjZhOWM0MTgKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RlYmlhbi9kcGtnLmxpbnRpYW4tb3ZlcnJpZGVzCkBAIC0wLDAgKzEsMTAgQEAKK2Rwa2c6IHJlZHVuZGFudC1vcmlnaW4tZmllbGQKK2Rwa2c6IHJlZHVuZGFudC1idWdzLWZpZWxkCitkcGtnOiBhcmNoLWRlcC1wYWNrYWdlLWhhcy1iaWctdXNyLXNoYXJlCisjIEZhbHNlIHBvc2l0aXZlcywgd2UgcmVhZCBmcm9tIGEgZmlsZSBub3QgZnJvbSBhIHR0eQorZHBrZzogcmVhZC1pbi1tYWludGFpbmVyLXNjcmlwdCBwcmVpbnN0OjQwCitkcGtnOiByZWFkLWluLW1haW50YWluZXItc2NyaXB0IHByZWluc3Q6NDEKK2Rwa2c6IHJlYWQtaW4tbWFpbnRhaW5lci1zY3JpcHQgcHJlaW5zdDo0MworZHBrZzogcmVhZC1pbi1tYWludGFpbmVyLXNjcmlwdCBwcmVpbnN0OjUxCisjIE9uIHB1cnBvc2UsIGluc3RhbGwtaW5mbyBpcyBvbmx5IGEgd3JhcHBlciB0aGF0IHdpbGwgYmUgcmVtb3ZlZCBzb29uCitkcGtnOiBiaW5hcnktd2l0aG91dC1tYW5wYWdlIHVzci9zYmluL2luc3RhbGwtaW5mbwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kZWJpYW4vZHBrZy5sb2dyb3RhdGUgYi9kcGtnLTEuMTYuMS4xL2RlYmlhbi9kcGtnLmxvZ3JvdGF0ZQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iMDcxNjk4Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kZWJpYW4vZHBrZy5sb2dyb3RhdGUKQEAgLTAsMCArMSwxOCBAQAorL3Zhci9sb2cvZHBrZy5sb2cgeworCW1vbnRobHkKKwlyb3RhdGUgMTIKKwljb21wcmVzcworCWRlbGF5Y29tcHJlc3MKKwltaXNzaW5nb2sKKwlub3RpZmVtcHR5CisJY3JlYXRlIDY0NCByb290IHJvb3QKK30KKy92YXIvbG9nL2FsdGVybmF0aXZlcy5sb2cgeworCW1vbnRobHkKKwlyb3RhdGUgMTIKKwljb21wcmVzcworCWRlbGF5Y29tcHJlc3MKKwltaXNzaW5nb2sKKwlub3RpZmVtcHR5CisJY3JlYXRlIDY0NCByb290IHJvb3QKK30KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZGViaWFuL2Rwa2cucG9zdGluc3QgYi9kcGtnLTEuMTYuMS4xL2RlYmlhbi9kcGtnLnBvc3RpbnN0Cm5ldyBmaWxlIG1vZGUgMTAwNzU1CmluZGV4IDAwMDAwMDAuLjg3NGY3NWMKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RlYmlhbi9kcGtnLnBvc3RpbnN0CkBAIC0wLDAgKzEsODcgQEAKKyMhL2Jpbi9zaCAtZQorIyBUaGlzIHNjcmlwdCBjYW4gYmUgY2FsbGVkIGluIHRoZSBmb2xsb3dpbmcgd2F5czoKKyMKKyMgQWZ0ZXIgdGhlIHBhY2thZ2Ugd2FzIGluc3RhbGxlZDoKKyMJPHBvc3RpbnN0PiBjb25maWd1cmUgPG9sZC12ZXJzaW9uPgorIworIworIyBJZiBwcmVybSBmYWlscyBkdXJpbmcgdXBncmFkZSBvciBmYWlscyBvbiBmYWlsZWQgdXBncmFkZToKKyMJPG9sZC1wb3N0aW5zdD4gYWJvcnQtdXBncmFkZSA8bmV3LXZlcnNpb24+CisjCisjIElmIHByZXJtIGZhaWxzIGR1cmluZyByZW1vdmFsOgorIwk8b2xkLXBvc3RpbnN0PiBhYm9ydC1yZW1vdmUKKyMKKyMgSWYgcHJlcm0gZmFpbHMgZHVyaW5nIGRlY29uZmlndXJhdGlvbiBvZiBhIHBhY2thZ2U6CisjCTxwb3N0aW5zdD4gYWJvcnQtZGVjb25maWd1cmUgaW4tZmF2b3VyIDxuZXctcGFja2FnZT4gPHZlcnNpb24+CisjCQkgICByZW1vdmluZyA8b2xkLXBhY2thZ2U+IDx2ZXJzaW9uPgorIworIyBJZiBwcmVybSBmYWlscyBkdXJpbmcgcmVwbGFjZW1lbnQgZHVlIHRvIGNvbmZsaWN0OgorIwk8cG9zdGluc3Q+IGFib3J0LXJlbW92ZSBpbi1mYXZvdXIgPG5ldy1wYWNrYWdlPiA8dmVyc2lvbj4KKworCisjIENyZWF0ZSB0aGUgZGF0YWJhc2UgZmlsZXMgaWYgdGhleSBkb24ndCBhbHJlYWR5IGV4aXN0CitjcmVhdGVfZGF0YWJhc2UoKSB7CisgICAgYWRtaW5kaXI9JHtEUEtHX0FETUlORElSOi0vdmFyL2xpYi9kcGtnfQorCisgICAgZm9yIGZpbGUgaW4gZGl2ZXJzaW9ucyBzdGF0b3ZlcnJpZGUgc3RhdHVzOyBkbworCWlmIFsgISAtZiAiJGFkbWluZGlyLyRmaWxlIiBdOyB0aGVuCisJICAgIHRvdWNoICIkYWRtaW5kaXIvJGZpbGUiCisJZmkKKyAgICBkb25lCit9CisKKworIyBNb3ZlIHRoZSBpbmZvIGRpcmVjdG9yeSBmcm9tIC91c3IvaW5mbyB0byAvdXNyL3NoYXJlL2luZm8KK21vdmVfaW5mb19kaXJlY3RvcnkoKSB7CisgICAgaWYgWyAtZCAvdXNyL2luZm8gXSAmJiBbICEgLUwgL3Vzci9pbmZvIF0gXAorCSYmIFsgLWYgL3Vzci9pbmZvL2RpciBdICYmIFsgISAtTCAvdXNyL2luZm8vZGlyIF0KKyAgICB0aGVuCisJZWNobyAiTW92aW5nIC91c3IvaW5mby9kaXIgdG8gL3Vzci9zaGFyZS9pbmZvL2RpciAuLi4iCisJbXYgL3Vzci9pbmZvL2RpciAvdXNyL3NoYXJlL2luZm8vZGlyCisJaWYgWyAtZiAvdXNyL2luZm8vZGlyLm9sZCBdOyB0aGVuCisJICAgIG12IC91c3IvaW5mby9kaXIub2xkIC91c3Ivc2hhcmUvaW5mby9kaXIub2xkCisJZmkKKyAgICBmaQorfQorCisKKyMgUmVtb3ZlIHRoZSAvdXNyL2luZm8gc3ltbGlua3Mgd2UgdXNlZCB0byBnZW5lcmF0ZQorcmVtb3ZlX2luZm9fc3ltbGluaygpIHsKKyAgICBpZiBbIC1MIC91c3IvaW5mbyBdOyB0aGVuCisJZWNobyAiUmVtb3ZpbmcgL3Vzci9pbmZvIHN5bWxpbmsgLi4uIgorCXJtIC91c3IvaW5mbworICAgIGVsaWYgWyAtTCAvdXNyL2luZm8vZGlyIF07IHRoZW4KKwllY2hvICJSZW1vdmluZyAvdXNyL2luZm8vZGlyIHN5bWxpbmsgLi4uIgorCXJtIC91c3IvaW5mby9kaXIKKyAgICBmaQorfQorCisjIENyZWF0ZSBsb2cgZmlsZSBhbmQgc2V0IGRlZmF1bHQgcGVybWlzc2lvbnMgaWYgcG9zc2libGUKK2NyZWF0ZV9sb2dmaWxlKCkgeworICAgIGxvZ2ZpbGU9L3Zhci9sb2cvZHBrZy5sb2cKKyAgICB0b3VjaCAkbG9nZmlsZQorICAgIGNobW9kIDY0NCAkbG9nZmlsZQorICAgIGNob3duIHJvb3Q6cm9vdCAkbG9nZmlsZSAyPi9kZXYvbnVsbCB8fCBjaG93biAwOjAgJGxvZ2ZpbGUKK30KKworCitjYXNlICIkMSIgaW4KKyAgICBjb25maWd1cmUpCisJY3JlYXRlX2RhdGFiYXNlCisJY3JlYXRlX2xvZ2ZpbGUKKworCW1vdmVfaW5mb19kaXJlY3RvcnkKKwlyZW1vdmVfaW5mb19zeW1saW5rCisJOzsKKworICAgIGFib3J0LXVwZ3JhZGV8YWJvcnQtZGVjb25maWd1cmV8YWJvcnQtcmVtb3ZlKQorCTs7CisKKyAgICAqKQorCWVjaG8gIiQwIGNhbGxlZCB3aXRoIHVua25vd24gYXJndW1lbnQgXGAkMSciIDE+JjIKKwlleGl0IDEKKwk7OworZXNhYworCisjREVCSEVMUEVSIworZXhpdCAwCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2RlYmlhbi9kcGtnLnBvc3RybSBiL2Rwa2ctMS4xNi4xLjEvZGViaWFuL2Rwa2cucG9zdHJtCm5ldyBmaWxlIG1vZGUgMTAwNzU1CmluZGV4IDAwMDAwMDAuLjA2NTlhZWEKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RlYmlhbi9kcGtnLnBvc3RybQpAQCAtMCwwICsxLDU1IEBACisjIS9iaW4vc2ggLWUKKyMgVGhpcyBzY3JpcHQgY2FuIGJlIGNhbGxlZCBpbiB0aGUgZm9sbG93aW5nIHdheXM6CisjCisjIEFmdGVyIHRoZSBwYWNrYWdlIHdhcyByZW1vdmVkOgorIwk8cG9zdHJtPiByZW1vdmUKKyMKKyMgQWZ0ZXIgdGhlIHBhY2thZ2Ugd2FzIHB1cmdlZDoKKyMJPHBvc3RybT4gcHVyZ2UKKyMKKyMgQWZ0ZXIgdGhlIHBhY2thZ2Ugd2FzIHVwZ3JhZGVkOgorIwk8b2xkLXBvc3RybT4gdXBncmFkZSA8bmV3LXZlcnNpb24+CisjIGlmIHRoYXQgZmFpbHM6CisjCTxuZXctcG9zdHJtPiBmYWlsZWQtdXBncmFkZSA8b2xkLXZlcnNpb24+CisjCisjCisjIEFmdGVyIGFsbCBvZiB0aGUgcGFja2FnZXMgZmlsZXMgaGF2ZSBiZWVuIHJlcGxhY2VkOgorIwk8cG9zdHJtPiBkaXNhcHBlYXIgPG92ZXJ3cml0aW5nLXBhY2thZ2U+IDx2ZXJzaW9uPgorIworIworIyBJZiBwcmVpbnN0IGZhaWxzIGR1cmluZyBpbnN0YWxsOgorIwk8bmV3LXBvc3RybT4gYWJvcnQtaW5zdGFsbAorIworIyBJZiBwcmVpbnN0IGZhaWxzIGR1cmluZyB1cGdyYWRlIG9mIHJlbW92ZWQgcGFja2FnZToKKyMJPG5ldy1wb3N0cm0+IGFib3J0LWluc3RhbGwgPG9sZC12ZXJzaW9uPgorIworIyBJZiBwcmVpbnN0IGZhaWxzIGR1cmluZyB1cGdyYWRlOgorIwk8bmV3LXBvc3RybT4gYWJvcnQtdXBncmFkZSA8b2xkLXZlcnNpb24+CisKKworIyBSZW1vdmUgbG9nIGZpbGUgd2hlbiBkcGtnIGlzIHB1cmdlZAorcmVtb3ZlX2xvZ2ZpbGUoKSB7CisgICAgcm0gLWYgL3Zhci9sb2cvZHBrZy5sb2cgL3Zhci9sb2cvZHBrZy5sb2cuKiAyPi9kZXYvbnVsbAorfQorCisKK2Nhc2UgIiQxIiBpbgorICAgIHJlbW92ZSkKKwk7OworCisgICAgcHVyZ2UpCisJcmVtb3ZlX2xvZ2ZpbGUKKwk7OworCisgICAgdXBncmFkZXxmYWlsZWQtdXBncmFkZXxkaXNhcHBlYXJ8YWJvcnQtaW5zdGFsbHxhYm9ydC11cGdyYWRlKQorCTs7CisKKworICAgICopCisJZWNobyAiJDAgY2FsbGVkIHdpdGggdW5rbm93biBhcmd1bWVudCBcYCQxJyIgMT4mMgorCWV4aXQgMQorCTs7Citlc2FjCisKKyNERUJIRUxQRVIjCitleGl0IDAKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZGViaWFuL2Rwa2cucHJlaW5zdCBiL2Rwa2ctMS4xNi4xLjEvZGViaWFuL2Rwa2cucHJlaW5zdApuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwLi4xM2ZjZGUzCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kZWJpYW4vZHBrZy5wcmVpbnN0CkBAIC0wLDAgKzEsODcgQEAKKyMhL2Jpbi9zaCAtZQorIyBUaGlzIHNjcmlwdCBjYW4gYmUgY2FsbGVkIGluIHRoZSBmb2xsb3dpbmcgd2F5czoKKyMKKyMgQmVmb3JlIHRoZSBwYWNrYWdlIGlzIGluc3RhbGxlZDoKKyMJPG5ldy1wcmVpbnN0PiBpbnN0YWxsCisjCisjIEJlZm9yZSByZW1vdmVkIHBhY2thZ2UgaXMgdXBncmFkZWQ6CisjCTxuZXctcHJlaW5zdD4gaW5zdGFsbCA8b2xkLXZlcnNpb24+CisjCisjIEJlZm9yZSB0aGUgcGFja2FnZSBpcyB1cGdyYWRlZDoKKyMJPG5ldy1wcmVpbnN0PiB1cGdyYWRlIDxvbGQtdmVyc2lvbj4KKyMKKyMKKyMgSWYgcG9zdHJtIGZhaWxzIGR1cmluZyB1cGdyYWRlIG9yIGZhaWxzIG9uIGZhaWxlZCB1cGdyYWRlOgorIwk8b2xkLXByZWluc3Q+IGFib3J0LXVwZ3JhZGUgPG5ldy12ZXJzaW9uPgorCisjIEhhbmRsZSB1cGdyYWRlcyBmcm9tIHByZS1jb25mZmlsZSBkcGtnLmNmZwordXBncmFkZV9kcGtnX25vbl9jb25mZmlsZSgpCit7CisgICAgaWYgWyAtciAvZXRjL2Rwa2cvZHBrZy5jZmcgXTsgdGhlbgorCWRwa2dfY2ZnX21kNT0iNTM1NTUyYWQ1ZWU5MTQ1ZGJjN2EzNGMyNjRkZjRlNTkgIC9ldGMvZHBrZy9kcGtnLmNmZyIKKwlpZiBlY2hvICIkZHBrZ19jZmdfbWQ1IiB8IG1kNXN1bSAtYyA+L2Rldi9udWxsIDI+JjE7IHRoZW4KKwkgICAgZWNobyAiUmVtb3Zpbmcgbm9uLW1vZGlmaWVkIGRwa2cuY2ZnIHRvIGJlIHJlcGxhY2VkIGJ5IGEgY29uZmZpbGUgLi4uIgorCSAgICBybSAtZiAvZXRjL2Rwa2cvZHBrZy5jZmcKKwlmaQorICAgIGZpCit9CisKK2tpbGxfYmFkX2FsdGVybmF0aXZlcyAoKSB7CisgICAgbG9jYWwgSUZTPSIiCisgICAgYWRtaW5kaXI9JHtEUEtHX0FETUlORElSOi0vdmFyL2xpYi9kcGtnfQorICAgIEFMVERJUj0iJGFkbWluZGlyL2FsdGVybmF0aXZlcyIKKyAgICBmb3IgYWx0IGluICRBTFRESVIvKjsgZG8KKyAgICAgICAgaWYgWyAhIC1mICRhbHQgXTsgdGhlbgorICAgICAgICAgICAgIyBJbiBjYXNlIGl0J3MgYmVlbiByZW1vdmVkIGJ5IHRoZSBjb2RlIGJlbG93LCBvciBpbiBjYXNlCisgICAgICAgICAgICAjIGl0J3Mgbm90IGEgcmVhbCBmaWxlCisgICAgICAgICAgICBjb250aW51ZQorICAgICAgICBmaQorICAgICAgICB7CisgICAgICAgICAgICByZWFkIG1vZGUgfHwgY29udGludWUKKyAgICAgICAgICAgIHJlYWQgbWFpbmxpbmsgfHwgY29udGludWUKKyAgICAgICAgICAgIHdoaWxlIHRydWU7IGRvCisgICAgICAgICAgICAgICAgcmVhZCBzbGF2ZSB8fCBicmVhaworICAgICAgICAgICAgICAgIGlmIFsgIiRzbGF2ZSIgPSAiIiBdOyB0aGVuCisgICAgICAgICAgICAgICAgICAgIGJyZWFrCisgICAgICAgICAgICAgICAgZmkKKyAgICAgICAgICAgICAgICBpZiBbIC1lICIkQUxURElSLyRzbGF2ZSIgXTsgdGhlbgorICAgICAgICAgICAgICAgICAgICBlY2hvICJSZW1vdmluZyBjb25mbGljdGluZyBtYXN0ZXIgYWx0ZXJuYXRpdmUgJHNsYXZlIChpdCBpcyBzbGF2ZSBvZiAkKGJhc2VuYW1lICRhbHQpKS4uLiIKKyAgICAgICAgICAgICAgICAgICAgcm0gLWYgIiRBTFRESVIvJHNsYXZlIgorICAgICAgICAgICAgICAgIGZpCisgICAgICAgICAgICAgICAgcmVhZCBzbGF2ZWxpbmsgfHwgYnJlYWsKKyAgICAgICAgICAgIGRvbmUKKyAgICAgICAgfSA8JGFsdAorICAgIGRvbmUKK30KKworY2FzZSAiJDEiIGluCisgICAgaW5zdGFsbCkKKwk7OworCisgICAgdXBncmFkZSkKKyAgICAgICAgIyBDbGVhbnVwIGJhZCBhbHRlcm5hdGl2ZXMgdGhhdCB3b3VsZCBjaG9rZSB3aXRoIG5ldworICAgICAgICAjIHVwZGF0ZS1hbHRlcm5hdGl2ZXMgKHNlZSAjNTMwNjMzLCAjNTMxNjExLCAjNTMyNzM5LCAjNTIxNzYwKQorICAgICAgICBpZiBkcGtnIC0tY29tcGFyZS12ZXJzaW9ucyAiJDIiIGx0IDEuMTUuMzsgdGhlbgorICAgICAgICAgICAga2lsbF9iYWRfYWx0ZXJuYXRpdmVzCisgICAgICAgIGZpCisKKwljYXNlICIkMiIgaW4KKwkgICAgIyBVcGdyYWRlIGZyb20gcHJlLWNvbmZmaWxlIGRwa2cuY2ZnCisJICAgIDEuOS4yMSB8IDEuMTAuKiApCisJCXVwZ3JhZGVfZHBrZ19ub25fY29uZmZpbGUKKwkJOzsKKwllc2FjCisJOzsKKworICAgIGFib3J0LXVwZ3JhZGUpCisJOzsKKworCisgICAgKikKKwllY2hvICIkMCBjYWxsZWQgd2l0aCB1bmtub3duIGFyZ3VtZW50IFxgJDEnIiAxPiYyCisJZXhpdCAxCisJOzsKK2VzYWMKKworI0RFQkhFTFBFUiMKK2V4aXQgMApkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kZWJpYW4vZHBrZy5wcmVybSBiL2Rwa2ctMS4xNi4xLjEvZGViaWFuL2Rwa2cucHJlcm0KbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMC4uYWI1MTE1NwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZGViaWFuL2Rwa2cucHJlcm0KQEAgLTAsMCArMSw4MSBAQAorIyEvYmluL3NoIC1lCisjIFRoaXMgc2NyaXB0IGNhbiBiZSBjYWxsZWQgaW4gdGhlIGZvbGxvd2luZyB3YXlzOgorIworIyBCZWZvcmUgdGhlIHBhY2thZ2UgaXMgcmVtb3ZlZDoKKyMgICAgICA8cHJlcm0+IHJlbW92ZQorIworIyBCZWZvcmUgYW4gdXBncmFkZToKKyMgICAgICA8b2xkLXByZXJtPiB1cGdyYWRlIDxuZXctdmVyc2lvbj4KKyMgaWYgdGhhdCBmYWlsczoKKyMgICAgICA8bmV3LXByZXJtPiBmYWlsZWQtdXBncmFkZSA8b2xkLXZlcnNpb24+CisjCisjCisjIEJlZm9yZSBwYWNrYWdlIGlzIGRlY29uZmlndXJlZCB3aGlsZSBkZXBlbmRlbmN5IGlzIHJlcGxhY2VkIGR1ZSB0byBjb25mbGljdDoKKyMgICAgICA8cHJlcm0+IGRlY29uZmlndXJlIGluLWZhdm91ciA8bmV3LXBhY2thZ2U+IDx2ZXJzaW9uPgorIyAgICAgICAgICAgICAgcmVtb3ZpbmcgPG9sZC1wYWNrYWdlPiA8dmVyc2lvbj4KKyMKKyMgQmVmb3JlIHRoZSBwYWNrYWdlIGlzIHJlcGxhY2VkIGR1ZSB0byBjb25mbGljdDoKKyMgICAgICA8cHJlcm0+IHJlbW92ZSBpbi1mYXZvdXIgPG5ldy1wYWNrYWdlPiA8dmVyc2lvbj4KKworZW5zdXJlX25vX3RyaWdnZXJzX25vYXdhaXQoKQoreworICAgIGFkbWluZGlyPSR7RFBLR19BRE1JTkRJUjotL3Zhci9saWIvZHBrZ30KKyAgICBwa2dhZG1pbmRpcj0kYWRtaW5kaXIvaW5mbworCisgICAgdHJpZ19ub2F3YWl0PSQoZmluZCAiJHBrZ2FkbWluZGlyIiAtbmFtZSAiKi50cmlnZ2VycyIgLXR5cGUgZiB8IFwKKyAgICAgICAgICAgICAgICAgICB4YXJncyAtciBncmVwIC1FbCAiXihpbnRlcmVzdHxhY3RpdmF0ZSktKG5vKT9hd2FpdCIgfCBcCisJCSAgIHNlZCAtZSAncyxeLiovXChbXi8uOl1cK1wpW14vXVwrJCxcMSwnKQorCisgICAgIyBBYm9ydCBpZiB3ZSBjYW5ub3QgcG9zc2libHkgZG93bmdyYWRlCisgICAgaWYgWyAtbiAiJHRyaWdfbm9hd2FpdCIgXTsgdGhlbgorICAgICAgICBjYXQgPDwtIE1TRworCWRwa2c6IGVycm9yOiBZb3UgaGF2ZSBwYWNrYWdlcyB1c2luZyB0aGUgImludGVyZXN0LW5vYXdhaXQiIGFuZC9vcgorCSJhY3RpdmF0ZS1ub2F3YWl0IiB0cmlnZ2VyIGRpcmVjdGl2ZXMgYnV0IHRoZSBkcGtnIHZlcnNpb24gdGhhdAorCXlvdSdyZSB0cnlpbmcgdG8gZG93bmdyYWRlIHRvIGRvZXNuJ3Qgc3VwcG9ydCB0aGVtLiBBYm9ydGluZworCWRvd25ncmFkZS4KKworCUxpc3Qgb2YgYWZmZWN0ZWQgcGFja2FnZXM6CisKKwkkdHJpZ19ub2F3YWl0CisJTVNHCisgICAgICAgIGV4aXQgMQorICAgIGZpCisKKyAgICBiYWRfdHJpZ2dlcnNfZmlsZXM9JChmaW5kICIkYWRtaW5kaXIvdHJpZ2dlcnMiIC10eXBlIGYgfCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgeGFyZ3MgLXIgZ3JlcCAtbCAiL25vYXdhaXQkIiB8fCB0cnVlKQorICAgIGlmIFsgLW4gIiRiYWRfdHJpZ2dlcnNfZmlsZXMiIF07IHRoZW4KKyAgICAgICAgY2F0IDw8LSBNU0cKKwlkcGtnOiBlcnJvcjogU29tZSBpbnRlcm5hbCB0cmlnZ2VyIGZpbGVzIHVuZXhwZWN0ZWRseSByZWZlcmVuY2UKKwlwYWNrYWdlcyB0YWdnZWQgd2l0aCAiL25vYXdhaXQiIHdoaWxlIHRoZWlyIGNvcnJlc3BvbmRpbmcKKwlpbmZvZGIgZmlsZXMgZG9lc24ndCBzZWVtIHRvIGNvbnRhaW4gYW55ICJpbnRlcmVzdC1ub2F3YWl0IgorCWRpcmVjdGl2ZS4gQWJvcnRpbmcgdGhlIGRvd25ncmFkZSBhcyB0aG9zZSB0YWdzIGFyZSBub3Qgc3VwcG9ydGVkCisJYnkgdGhlIHZlcnNpb24geW91J3JlIHRyeWluZyB0byBkb3duZ3JhZGUgdG8uCisKKwlMaXN0IG9mIGludGVybmFsIHRyaWdnZXIgZmlsZXMgdGhhdCBhcmUgYWZmZWN0ZWQ6CisKKwkkYmFkX3RyaWdnZXJzX2ZpbGVzCisJTVNHCisJZXhpdCAxCisgICAgZmkKK30KKworY2FzZSAiJDEiIGluCisgICAgdXBncmFkZSkKKyAgICAgICAgIyBBbGxvdyB0aGUgZG93bmdyYWRlIG9ubHkgaWYgbm8gcGFja2FnZSBpcyB1c2luZyB0aGUKKwkjIChpbnRlcmVzdHxhY3RpdmF0ZSktbm9hd2FpdCB0cmlnZ2VyIGRpcmVjdGl2ZXMKKyAgICAgICAgaWYgZHBrZyAtLWNvbXBhcmUtdmVyc2lvbnMgIiQyIiBsdCAxLjE2LjF+OyB0aGVuCisgICAgICAgICAgICBlbnN1cmVfbm9fdHJpZ2dlcnNfbm9hd2FpdAorICAgICAgICBmaQorICAgICAgICA7OworCisgICAgcmVtb3ZlfGZhaWxlZC11cGdyYWRlfGRlY29uZmlndXJlKQorICAgICAgICA7OworCisgICAgKikKKyAgICAgICAgZWNobyAiJDAgY2FsbGVkIHdpdGggdW5rbm93biBhcmd1bWVudCBcYCQxJyIgMT4mMgorICAgICAgICBleGl0IDEKKyAgICAgICAgOzsKK2VzYWMKKworI0RFQkhFTFBFUiMKK2V4aXQgMApkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kZWJpYW4vZHNlbGVjdC5jZmcgYi9kcGtnLTEuMTYuMS4xL2RlYmlhbi9kc2VsZWN0LmNmZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yZDY5NjkxCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kZWJpYW4vZHNlbGVjdC5jZmcKQEAgLTAsMCArMSw2IEBACisjIGRzZWxlY3QgY29uZmlndXJhdGlvbiBmaWxlCisjCisjIFRoaXMgZmlsZSBjYW4gY29udGFpbiBkZWZhdWx0IG9wdGlvbnMgZm9yIGRzZWxlY3QuICBBbGwgY29tbWFuZC1saW5lCisjIG9wdGlvbnMgYXJlIGFsbG93ZWQuICBWYWx1ZXMgY2FuIGJlIHNwZWNpZmllZCBieSBwdXR0aW5nIHRoZW0gYWZ0ZXIKKyMgdGhlIG9wdGlvbiwgc2VwYXJhdGVkIGJ5IHdoaXRlc3BhY2UgYW5kL29yIGFuIGA9JyBzaWduLgorIwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kZWJpYW4vZHNlbGVjdC5kb2NzIGIvZHBrZy0xLjE2LjEuMS9kZWJpYW4vZHNlbGVjdC5kb2NzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjdjY2IyMTUKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RlYmlhbi9kc2VsZWN0LmRvY3MKQEAgLTAsMCArMSw1IEBACitBVVRIT1JTCitUSEFOS1MKK2RlYmlhbi91c2VydGFncworZG9jL1JFQURNRS5mZWF0dXJlLXJlbW92YWwtc2NoZWR1bGUKK2RzZWxlY3QvbWV0aG9kcy9tdWx0aWNkL1JFQURNRS5tdWx0aWNkCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2RlYmlhbi9kc2VsZWN0Lmluc3RhbGwgYi9kcGtnLTEuMTYuMS4xL2RlYmlhbi9kc2VsZWN0Lmluc3RhbGwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTMxMTc2MQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZGViaWFuL2RzZWxlY3QuaW5zdGFsbApAQCAtMCwwICsxLDEwIEBACisuLi9kc2VsZWN0LmNmZyBldGMvZHBrZworCitldGMvZHBrZy9kc2VsZWN0LmNmZy5kCit1c3IvYmluL2RzZWxlY3QKK3Vzci9saWIvZHBrZy9tZXRob2RzCit1c3Ivc2hhcmUvbG9jYWxlLyovTENfTUVTU0FHRVMvZHNlbGVjdC5tbwordXNyL3NoYXJlL21hbi97Ki8qLCp9L2RzZWxlY3QuY2ZnLjUKK3Vzci9zaGFyZS9tYW4veyovKiwqfS9kc2VsZWN0LjEKK3Vzci9zaGFyZS9wZXJsNS9EZWJpYW4KK3Zhci9saWIvZHBrZy9tZXRob2RzCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2RlYmlhbi9kc2VsZWN0LmxpbnRpYW4tb3ZlcnJpZGVzIGIvZHBrZy0xLjE2LjEuMS9kZWJpYW4vZHNlbGVjdC5saW50aWFuLW92ZXJyaWRlcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yMjQzZGUyCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kZWJpYW4vZHNlbGVjdC5saW50aWFuLW92ZXJyaWRlcwpAQCAtMCwwICsxLDIgQEAKK2RzZWxlY3Q6IHJlZHVuZGFudC1vcmlnaW4tZmllbGQKK2RzZWxlY3Q6IHJlZHVuZGFudC1idWdzLWZpZWxkCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2RlYmlhbi9kc2VsZWN0LnByZWluc3QgYi9kcGtnLTEuMTYuMS4xL2RlYmlhbi9kc2VsZWN0LnByZWluc3QKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMC4uYzEyZjczNwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZGViaWFuL2RzZWxlY3QucHJlaW5zdApAQCAtMCwwICsxLDQyIEBACisjIS9iaW4vc2ggLWUKKyMgVGhpcyBzY3JpcHQgY2FuIGJlIGNhbGxlZCBpbiB0aGUgZm9sbG93aW5nIHdheXM6CisjCisjIEJlZm9yZSB0aGUgcGFja2FnZSBpcyBpbnN0YWxsZWQ6CisjCTxuZXctcHJlaW5zdD4gaW5zdGFsbAorIworIyBCZWZvcmUgcmVtb3ZlZCBwYWNrYWdlIGlzIHVwZ3JhZGVkOgorIwk8bmV3LXByZWluc3Q+IGluc3RhbGwgPG9sZC12ZXJzaW9uPgorIworIyBCZWZvcmUgdGhlIHBhY2thZ2UgaXMgdXBncmFkZWQ6CisjCTxuZXctcHJlaW5zdD4gdXBncmFkZSA8b2xkLXZlcnNpb24+CisjCisjCisjIElmIHBvc3RybSBmYWlscyBkdXJpbmcgdXBncmFkZSBvciBmYWlscyBvbiBmYWlsZWQgdXBncmFkZToKKyMJPG9sZC1wcmVpbnN0PiBhYm9ydC11cGdyYWRlIDxuZXctdmVyc2lvbj4KKworcmVtb3ZlX2RvY19zeW1saW5rKCkgeworICAgIGlmIFsgLUwgL3Vzci9zaGFyZS9kb2MvZHNlbGVjdCBdOyB0aGVuCisJcm0gL3Vzci9zaGFyZS9kb2MvZHNlbGVjdAorICAgIGZpCit9CisKK2Nhc2UgIiQxIiBpbgorICAgIGluc3RhbGwpCisJOzsKKworICAgIHVwZ3JhZGUpCisJcmVtb3ZlX2RvY19zeW1saW5rCisJOzsKKworICAgIGFib3J0LXVwZ3JhZGUpCisJOzsKKworCisgICAgKikKKwllY2hvICIkMCBjYWxsZWQgd2l0aCB1bmtub3duIGFyZ3VtZW50IFxgJDEnIiAxPiYyCisJZXhpdCAxCisJOzsKK2VzYWMKKworI0RFQkhFTFBFUiMKK2V4aXQgMApkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kZWJpYW4vbGliZHBrZy1kZXYuZG9jcyBiL2Rwa2ctMS4xNi4xLjEvZGViaWFuL2xpYmRwa2ctZGV2LmRvY3MKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uN2VlYWZlOAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZGViaWFuL2xpYmRwa2ctZGV2LmRvY3MKQEAgLTAsMCArMSw1IEBACitBVVRIT1JTCitUSEFOS1MKK2RlYmlhbi91c2VydGFncworZG9jL1JFQURNRS5hcGkKK2RvYy9SRUFETUUuZmVhdHVyZS1yZW1vdmFsLXNjaGVkdWxlCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2RlYmlhbi9saWJkcGtnLWRldi5pbnN0YWxsIGIvZHBrZy0xLjE2LjEuMS9kZWJpYW4vbGliZHBrZy1kZXYuaW5zdGFsbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hZTUwYmRkCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kZWJpYW4vbGliZHBrZy1kZXYuaW5zdGFsbApAQCAtMCwwICsxLDMgQEAKK3Vzci9pbmNsdWRlL2Rwa2cvKi5oCit1c3IvbGliL3BrZ2NvbmZpZy9saWJkcGtnLnBjCit1c3IvbGliL2xpYmRwa2cuYQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kZWJpYW4vbGliZHBrZy1kZXYubGludGlhbi1vdmVycmlkZXMgYi9kcGtnLTEuMTYuMS4xL2RlYmlhbi9saWJkcGtnLWRldi5saW50aWFuLW92ZXJyaWRlcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44M2ZmM2Y0Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kZWJpYW4vbGliZHBrZy1kZXYubGludGlhbi1vdmVycmlkZXMKQEAgLTAsMCArMSwyIEBACitsaWJkcGtnLWRldjogcmVkdW5kYW50LW9yaWdpbi1maWVsZAorbGliZHBrZy1kZXY6IHJlZHVuZGFudC1idWdzLWZpZWxkCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2RlYmlhbi9saWJkcGtnLXBlcmwuZG9jcyBiL2Rwa2ctMS4xNi4xLjEvZGViaWFuL2xpYmRwa2ctcGVybC5kb2NzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmVmZDM0ZGUKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RlYmlhbi9saWJkcGtnLXBlcmwuZG9jcwpAQCAtMCwwICsxLDQgQEAKK0FVVEhPUlMKK1RIQU5LUworZG9jL1JFQURNRS5hcGkKK2RvYy9SRUFETUUuZmVhdHVyZS1yZW1vdmFsLXNjaGVkdWxlCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2RlYmlhbi9saWJkcGtnLXBlcmwuaW5zdGFsbCBiL2Rwa2ctMS4xNi4xLjEvZGViaWFuL2xpYmRwa2ctcGVybC5pbnN0YWxsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjRkNGMyM2QKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RlYmlhbi9saWJkcGtnLXBlcmwuaW5zdGFsbApAQCAtMCwwICsxLDQgQEAKK3Vzci9saWIvZHBrZy9wYXJzZWNoYW5nZWxvZwordXNyL3NoYXJlL2xvY2FsZS8qL0xDX01FU1NBR0VTL2Rwa2ctZGV2Lm1vCit1c3Ivc2hhcmUvbWFuL21hbjMvRHBrZyouMwordXNyL3NoYXJlL3Blcmw1L0Rwa2cqCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2RlYmlhbi9saWJkcGtnLXBlcmwubGludGlhbi1vdmVycmlkZXMgYi9kcGtnLTEuMTYuMS4xL2RlYmlhbi9saWJkcGtnLXBlcmwubGludGlhbi1vdmVycmlkZXMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDdjZDhhMAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZGViaWFuL2xpYmRwa2ctcGVybC5saW50aWFuLW92ZXJyaWRlcwpAQCAtMCwwICsxLDIgQEAKK2xpYmRwa2ctcGVybDogcmVkdW5kYW50LW9yaWdpbi1maWVsZAorbGliZHBrZy1wZXJsOiByZWR1bmRhbnQtYnVncy1maWVsZApkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kZWJpYW4vcnVsZXMgYi9kcGtnLTEuMTYuMS4xL2RlYmlhbi9ydWxlcwpuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwLi44ZDU2ZDI1Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kZWJpYW4vcnVsZXMKQEAgLTAsMCArMSwxMzYgQEAKKyMhL3Vzci9iaW4vbWFrZSAtZgorIyBkZWJpYW4vcnVsZXMgZm9yIHRoZSBkcGtnIHN1aXRlLgorIyBDb3B5cmlnaHQgwqkgMjAwNCBTY290dCBKYW1lcyBSZW1uYW50IDxzY290dEBuZXRzcGxpdC5jb20+CisKK1dGTEFHUyA6PSAtV2FsbCAtV2V4dHJhIC1Xbm8tdW51c2VkLXBhcmFtZXRlciAtV25vLW1pc3NpbmctZmllbGQtaW5pdGlhbGl6ZXJzCisKKyMgVXNlIHRoZSBpbi10cmVlIGRwa2ctYnVpbGRmbGFncworZHBrZ19idWlsZGZsYWdzID0gREVCX0NGTEFHU19NQUlOVF9BUFBFTkQ9IiQoV0ZMQUdTKSIgREVCX0NYWEZMQUdTX01BSU5UX0FQUEVORD0iJChXRkxBR1MpIiBQRVJMNUxJQj0kKENVUkRJUikvc2NyaXB0cyBEUEtHX0RBVEFESVI9JChDVVJESVIpIHBlcmwgJChDVVJESVIpL3NjcmlwdHMvZHBrZy1idWlsZGZsYWdzLnBsCisKKyMgVGhlc2UgYXJlIHVzZWQgZm9yIGNyb3NzLWNvbXBpbGluZyBhbmQgZm9yIHNhdmluZyB0aGUgY29uZmlndXJlIHNjcmlwdAorIyBmcm9tIGhhdmluZyB0byBndWVzcyBvdXIgcGxhdGZvcm0gKHNpbmNlIHdlIGtub3cgaXQgYWxyZWFkeSkKK0RFQl9IT1NUX0dOVV9UWVBFICAgPz0gJChzaGVsbCBkcGtnLWFyY2hpdGVjdHVyZSAtcURFQl9IT1NUX0dOVV9UWVBFKQorREVCX0JVSUxEX0dOVV9UWVBFICA/PSAkKHNoZWxsIGRwa2ctYXJjaGl0ZWN0dXJlIC1xREVCX0JVSUxEX0dOVV9UWVBFKQorCitpZmVxICgkKERFQl9CVUlMRF9HTlVfVFlQRSksICQoREVCX0hPU1RfR05VX1RZUEUpKQorCWNvbmZmbGFncyArPSAtLWJ1aWxkPSQoREVCX0hPU1RfR05VX1RZUEUpCitlbHNlCisJY29uZmZsYWdzICs9IC0tYnVpbGQ9JChERUJfQlVJTERfR05VX1RZUEUpIC0taG9zdD0kKERFQl9IT1NUX0dOVV9UWVBFKQorZW5kaWYKKworIyBEb24ndCBlbmFibGUgZXZlcnl0aGluZyBvbiBhbGwgcGxhdGZvcm1zCitERUJfSE9TVF9BUkNIX09TICA/PSAkKHNoZWxsIGRwa2ctYXJjaGl0ZWN0dXJlIC1xREVCX0hPU1RfQVJDSF9PUykKKworaWZlcSAoJChERUJfSE9TVF9BUkNIX09TKSxsaW51eCkKKwljb25mZmxhZ3MgKz0gLS13aXRoLXNlbGludXgKK2VuZGlmCitpZmVxICgsJChmaWx0ZXIgbWFpbnRhaW5lci1idWlsZCwkKERFQl9CVUlMRF9PUFRJT05TKSkpCisJY29uZmZsYWdzICs9IC0tZGlzYWJsZS1zaWxlbnQtcnVsZXMKK2VuZGlmCisKKyMgQ3JlYXRlIGNvbmZpZ3VyZSBzY3JpcHQgaWYgbmVjZXNzYXJ5LCBhdXRvbWFrZSBoYW5kbGVzIHJlYnVpbGRpbmcgaXQuCitjb25maWd1cmU6CisJZGhfdGVzdGRpcgorCisJYXV0b3JlY29uZiAtdiAtaQorCisjIENvbmZpZ3VyZSB0aGUgYnVpbGQgdHJlZQorYnVpbGQtdHJlZS9jb25maWcuc3RhdHVzOiBjb25maWd1cmUKKwlkaF90ZXN0ZGlyCisKKwlpbnN0YWxsIC1kIGJ1aWxkLXRyZWUKKwljZCBidWlsZC10cmVlICYmIC4uL2NvbmZpZ3VyZSAkKGNvbmZmbGFncykgXAorCQkkKHNoZWxsICQoZHBrZ19idWlsZGZsYWdzKSAtLWV4cG9ydD1jb25maWd1cmUpIFwKKwkJLS1wcmVmaXg9L3VzciBcCisJCS0tbWFuZGlyPVwkJHtkYXRhZGlyfS9tYW4gXAorCQktLWluZm9kaXI9XCQke2RhdGFkaXJ9L2luZm8gXAorCQktLXN5c2NvbmZkaXI9L2V0YyBcCisJCS0tbG9jYWxzdGF0ZWRpcj0vdmFyIFwKKwkJLS13aXRoLXpsaWIgXAorCQktLXdpdGgtYnoyCisKKyMgQnVpbGQgdGhlIHBhY2thZ2UgaW4gYnVpbGQtdHJlZQorYnVpbGQtaW5kZXAgYnVpbGQtYXJjaCBidWlsZDogYnVpbGQtdHJlZS9jb25maWcuc3RhdHVzCisJZGhfdGVzdGRpcgorCisJY2QgYnVpbGQtdHJlZSAmJiAkKE1BS0UpCisKKyMgUnVuIHRoZSB0ZXN0IHN1aXRlcworY2hlY2s6IGJ1aWxkCisJZGhfdGVzdGRpcgorCitpZmVxICgsJChmaWx0ZXIgbm9jaGVjaywkKERFQl9CVUlMRF9PUFRJT05TKSkpCisJY2QgYnVpbGQtdHJlZSAmJiAkKE1BS0UpIGNoZWNrCitlbmRpZgorCisjIEluc3RhbGwgdGhlIHBhY2thZ2UgdW5kZXJuZWF0aCBkZWJpYW4vdG1wCitpbnN0YWxsOiBjaGVjaworCWRoX3Rlc3RkaXIKKwlkaF90ZXN0cm9vdAorCWRoX3ByZXAKKwlkaF9pbnN0YWxsZGlycworCisJY2QgYnVpbGQtdHJlZSAmJiAkKE1BS0UpIERFU1RESVI9IiQoQ1VSRElSKS9kZWJpYW4vdG1wIiBpbnN0YWxsCisKK2lmZXEgKHllcywkKHNoZWxsIGRwa2ctdmVuZG9yIC0tZGVyaXZlcy1mcm9tIFVidW50dSAmJiBlY2hvIHllcykpCisJIyBVYnVudHUncyDCq2kzODbCuyBhcmNoaXRlY3R1cmUgaXMgYnVpbHQgZm9yIGk2ODYgKHRoZSBEZWJpYW4gZGVmYXVsdAorCSMgaXMgaTQ4NikuCisJc2VkIC1yaSAncy9eKGkzODZbWzpzcGFjZTpdXSspW15bOnNwYWNlOl1dKy9cMWk2ODYvJyBcCisJICAgICAgICAkKENVUkRJUikvZGViaWFuL3RtcC91c3Ivc2hhcmUvZHBrZy9jcHV0YWJsZQorZW5kaWYKKworIyBQdXQgdG9nZXRoZXIgdGhlIGRwa2cgYW5kIGRzZWxlY3QgcGFja2FnZXMKK2JpbmFyeS1hcmNoOiBpbnN0YWxsCisJZGhfdGVzdGRpciAtYQorCWRoX3Rlc3Ryb290IC1hCisJZGhfaW5zdGFsbCAtLXNvdXJjZWRpcj1kZWJpYW4vdG1wIC1hCisJZGhfaW5zdGFsbGNyb24gLWEKKwlkaF9pbnN0YWxsbG9ncm90YXRlIC1hCisKKwlpbnN0YWxsIC1kIGRlYmlhbi9kcGtnL3NiaW4KKwltdiBkZWJpYW4vZHBrZy91c3Ivc2Jpbi9zdGFydC1zdG9wLWRhZW1vbiBkZWJpYW4vZHBrZy9zYmluCisKKwlkaF9pbnN0YWxsY2hhbmdlbG9ncyAtYSBDaGFuZ2VMb2cqCisJZGhfaW5zdGFsbGRvY3MgLWEKKwlkaF9saW5rIC1hCisJZGhfbGludGlhbiAtYQorCWRoX3N0cmlwIC1hCisJZGhfY29tcHJlc3MgLWEKKwlkaF9maXhwZXJtcyAtYQorCWRoX2luc3RhbGxkZWIgLWEKKwlkaF9zaGxpYmRlcHMgLWEKKwlkaF9nZW5jb250cm9sIC1hCisJZGhfbWQ1c3VtcyAtYQorCWRoX2J1aWxkZGViIC1hCisKKyMgUHV0IHRvZ2V0aGVyIHRoZSBkcGtnLWRldiBwYWNrYWdlCitiaW5hcnktaW5kZXA6IGluc3RhbGwKKwlkaF90ZXN0ZGlyIC1pCisJZGhfdGVzdHJvb3QgLWkKKwlkaF9pbnN0YWxsIC0tc291cmNlZGlyPWRlYmlhbi90bXAgLWkKKwlkaF9pbnN0YWxsY3JvbiAtaQorCWRoX2luc3RhbGxjaGFuZ2Vsb2dzIC1pIENoYW5nZUxvZyoKKwlkaF9pbnN0YWxsZG9jcyAtaQorCWRoX2xpbmsgLWkKKwlkaF9saW50aWFuIC1pCisJZGhfc3RyaXAgLWkKKwlkaF9jb21wcmVzcyAtaQorCWRoX2ZpeHBlcm1zIC1pCisJZGhfaW5zdGFsbGRlYiAtaQorCWRoX2dlbmNvbnRyb2wgLWkKKwlkaF9tZDVzdW1zIC1pCisJZGhfYnVpbGRkZWIgLWkKKworYmluYXJ5OiBiaW5hcnktYXJjaCBiaW5hcnktaW5kZXAKKworCisjIENsZWFuIHVwIHRoZSBtZXNzIHdlIG1hZGUKK2NsZWFuOgorCWRoX3Rlc3RkaXIKKworCVsgISAtZiBNYWtlZmlsZSBdIHx8ICQoTUFLRSkgZGlzdGNsZWFuCisJcm0gLXJmIGJ1aWxkLXRyZWUKKwlkaF9jbGVhbgorCisKKy5QSE9OWTogYnVpbGQgY2hlY2sgaW5zdGFsbCBiaW5hcnktYXJjaCBiaW5hcnktaW5kZXAgYmluYXJ5IGNsZWFuCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2RlYmlhbi9zaGxpYnMuZGVmYXVsdCBiL2Rwa2ctMS4xNi4xLjEvZGViaWFuL3NobGlicy5kZWZhdWx0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjY2MWE4ODkKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RlYmlhbi9zaGxpYnMuZGVmYXVsdApAQCAtMCwwICsxLDcgQEAKKyMgZHBrZyBzaGxpYnMgZGVmYXVsdHMgZmlsZQorIworIyBUaGlzIGZpbGUgY29udGFpbnMgc2hsaWJzIGVudHJpZXMgdGhhdCBhcmUgdXNlZCBhcyBhIGxhc3QgcmVzb3J0IHdoZW4KKyMgbm8gbWF0Y2hpbmcgZW50cmllcyBhcmUgZm91bmQgZWxzZXdoZXJlLiAgRm9yIG1vcmUgaW5mb3JtYXRpb24gc2VlIHRoZQorIyBkcGtnLXNobGliZGVwcygxKSBtYW51YWwgcGFnZS4gCisjCisjIDxsaWJyYXJ5IG5hbWU+CTx2ZXJzaW9uL3NvbmFtZT4JPGRlcGVuZGVuY2llcz4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZGViaWFuL3NobGlicy5vdmVycmlkZSBiL2Rwa2ctMS4xNi4xLjEvZGViaWFuL3NobGlicy5vdmVycmlkZQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mYmRiNjhkCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kZWJpYW4vc2hsaWJzLm92ZXJyaWRlCkBAIC0wLDAgKzEsOCBAQAorIyBkcGtnIHNobGlicyBvdmVycmlkZSBmaWxlCisjCisjIEVudHJpZXMgaW4gdGhpcyBmaWxlIHdpbGwgb3ZlcnJpZGUgYWxsIG90aGVycywgb25seSB1c2UgaWYgeW91CisjIGFyZSByZWFsbHkgc3VyZSB0aGF0IGlzIHdoYXQgeW91IHdhbnQhCisjIAorIyBGb3IgbW9yZSBpbmZvcm1hdGlvbiBzZWUgdGhlIGRwa2ctc2hsaWJkZXBzKDEpIG1hbnVhbCBwYWdlLiAKKyMKKyMgPGxpYnJhcnkgbmFtZT4JPHZlcnNpb24vc29uYW1lPgk8ZGVwZW5kZW5jaWVzPgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kZWJpYW4vc291cmNlL2Zvcm1hdCBiL2Rwa2ctMS4xNi4xLjEvZGViaWFuL3NvdXJjZS9mb3JtYXQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODlhZTlkYgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZGViaWFuL3NvdXJjZS9mb3JtYXQKQEAgLTAsMCArMSBAQAorMy4wIChuYXRpdmUpCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2RlYmlhbi9zb3VyY2UvbGludGlhbi1vdmVycmlkZXMgYi9kcGtnLTEuMTYuMS4xL2RlYmlhbi9zb3VyY2UvbGludGlhbi1vdmVycmlkZXMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzBjZWY2ZgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZGViaWFuL3NvdXJjZS9saW50aWFuLW92ZXJyaWRlcwpAQCAtMCwwICsxIEBACitkcGtnIHNvdXJjZTogcmVkdW5kYW50LW9yaWdpbi1maWVsZApkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kZWJpYW4vc291cmNlL29wdGlvbnMgYi9kcGtnLTEuMTYuMS4xL2RlYmlhbi9zb3VyY2Uvb3B0aW9ucwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41YjFjY2YzCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kZWJpYW4vc291cmNlL29wdGlvbnMKQEAgLTAsMCArMSwyIEBACisjIFVzZSBiemlwMiBjb21wcmVzc2lvbiBieSBkZWZhdWx0LCB3ZSBzYXZlIDIuNU1iCitjb21wcmVzc2lvbiA9ICJiemlwMiIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZGViaWFuL3VzZXJ0YWdzIGIvZHBrZy0xLjE2LjEuMS9kZWJpYW4vdXNlcnRhZ3MKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTM1M2JjOAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZGViaWFuL3VzZXJ0YWdzCkBAIC0wLDAgKzEsMTg1IEBACitUbyBtYWtlIG1hbmFnZW1lbnQgb2YgYnVncyBhZ2FpbnN0IHRoZSBkcGtnIHN1aXRlIGVhc2llciB3ZSBhZGQgYXMgbWFueSBvZgordGhlIGZvbGxvd2luZyB1c2VydGFncyBhcyBhcHBseSB0byB0aGUgYnVnLgorCitXaGVuIGZpbGluZyBidWdzLCBwbGVhc2UgZG8gdGhlIHNhbWUgdG8gYWlkIHRyaWFnZSwgYnkgaW5jbHVkaW5nIGluIHRoZQorYnVnIHJlcG9ydCBwc2V1ZG8taGVhZGVyOgorCisJVXNlcjogZHBrZ0BwYWNrYWdlcy5kZWJpYW4ub3JnCisJVXNlcnRhZ3M6IDx1c2VydGFnLi4uPgorCitUaG9zZSBhcmUgdGhlIGN1cnJlbnRseSB1c2VkIHVzZXJ0YWdzIChhbmQgdGhlIG1hdGNoaW5ncyBhZ2FpbnN0IHRoZSBvbGQKK+KAnHBzZXVkby10YWdz4oCdLCB3aGljaCB3ZXJlIGVuY29kZWQgaW4gdGhlIGJ1ZyB0aXRsZSk6CisKK0dlbmVyaWMgdGFncworPT09PT09PT09PT09CisKK3VzZXJ0YWcJCXBzZXVkby10YWcJZGVzY3JpcHRpb24KKy0tLS0tLS0JCS0tLS0tLS0tLS0JLS0tLS0tLS0tLS0KKworYXNzZXJ0CQlbQVNTRVJUXQlFcnJvcnMgY2F1c2VkIGJ5IGFzc2VydCgpLgorc2VnZmF1bHQJW1NFR0ZBVUxUXQlFcnJvcnMgdGhhdCBjYXVzZSBzZWdtZW50YXRpb24gZmF1bHRzLgorY29uZmZpbGUJW0NPTkZGSUxFXQlJc3N1ZXMgd2l0aCBjb25maWd1cmF0aW9uIGZpbGUgaGFuZGxpbmcuCitzeW1saW5rCQkJCUlzc3VlcyByZWxhdGVkIHRvIHN5bWxpbmsgaGFuZGxpbmcuCitkZXBlbmRzCQlbREVQRU5EU10JSXNzdWVzIHdpdGggZGVwZW5kZW5jeSByZWxhdGlvbnNoaXAgaGFuZGxpbmcuCittYWludC1zY3JpcHQJCQlFcnJvcnMgcmVsYXRlZCB0byBtYWludGFpbmVyIHNjcmlwdHMuCitkYgkJCQlJc3N1ZXMgaGFuZGxpbmcgdGhlIGRhdGFiYXNlLgorZmlsZS1tZXRhZGF0YQkJCUZpbGUgbWV0YWRhdGEgdHJhY2tpbmcgKHBlcm0sIGFjbCwgY2FwLCBoYXNoKS4KK3RyaXZpYWwJCVtUUklWSUFMXQlCdWcgc2hvdWxkIGJlIHRyaXZpYWwgdG8gZml4LgorcGVyZgkJW1BFUkZdCQlQZXJmb3JtYW5jZSBwcm9ibGVtcy4KK25ldy1maWVsZAkJCVJlcXVlc3QgZm9yIG5ldyBjb250cm9sIGZpbGUgZmllbGRzLgorbmV3LW9wdGlvbgkJCVJlcXVlc3QgZm9yIG5ldyBjb21tYW5kIGxpbmUgb3B0aW9uLgorZGViLWZvcm1hdAkJCUNoYW5nZXMgdG8gdGhlIGJpbmFyeSAoLmRlYikgZm9ybWF0LgorZHNjLWZvcm1hdAkJCUNoYW5nZXMgdG8gdGhlIHNvdXJjZSAoLmRzYykgZm9ybWF0LgorYXJjaAkJW0FSQ0hdCQlVcGRhdGVzIHRvIOKAmGNwdXRhYmxl4oCZLCDigJhvc3RhYmxl4oCZIGFuZCBwb3J0aW5nCisJCQkJcGF0Y2hlcy4KK3ZlbmRvcgkJCQlWZW5kb3Igc3VwcG9ydCBhbmQgbmVlZGVkIG1vZGlmaWNhdGlvbnMuCitidWlsZAkJCQlQcm9qZWN0IGJ1aWxkIHN5c3RlbSBpc3N1ZXMuCitpMThuCQlbVVRGLThdCQlDb252ZXJzaW9uIHRvIHRoZSBVVEYtOCBlbmNvZGluZy4KK2kxOG4JCVtJTlRMXQkJSW50ZXJuYXRpb25hbGl6YXRpb24gcHJvYmxlbXMuCitsMTBuCQlbSU5UTF0JCU5ldyBvciB1cGRhdGVkIHRyYW5zbGF0aW9ucyBhbmQgYnVncyBhZmZlY3RpbmcKKwkJCQl0cmFuc2xhdGlvbi4gSW5jbHVkZSB0aGUgbGFuZ3VhZ2UgY29kZSBpbiB0aGUKKwkJCQl0YWcsIGUuZy4gW0lOVEw6Y3lfR0JdLgorZG9jCQlbRE9DXQkJRG9jdW1lbnRhdGlvbiBidWdzLCBpbmNsdWRpbmcgLS1oZWxwLCBwcm9ncmFtCisJCQkJb3V0cHV0IGFuZCBtYW5wYWdlcy4KKworQmVpbmcgY29uc2lkZXJlZCB0YWdzCis9PT09PT09PT09PT09PT09PT09PT0KKwordXNlcnRhZwkJCWRlc2NyaXB0aW9uCistLS0tLS0tCQkJLS0tLS0tLS0tLS0KKworZGl2ZXJzaW9uCQlJc3N1ZXMgcmVsYXRlZCB0byBkaXZlcnNpb25zLgorYXB0LWZlYXR1cmUJCT8/CisKK1Byb2dyYW0gdGFncworPT09PT09PT09PT09CisKK3VzZXJ0YWcJCQlwc2V1ZG8tdGFnCQlkZXNjcmlwdGlvbgorLS0tLS0tLQkJCS0tLS0tLS0tLS0JCS0tLS0tLS0tLS0tCisKK2Rwa2cJCQlbRFBLR10KK2Rwa2ctYXJjaGl0ZWN0dXJlCVtEUEtHLUFSQ0hJVEVDVFVSRV0KK2Rwa2ctYnVpbGRmbGFncworZHBrZy1idWlsZHBhY2thZ2UJW0RQS0ctQlVJTERQQUNLQUdFXQorZHBrZy1jaGVja2J1aWxkZGVwcwlbRFBLRy1DSEVDS0JVSUxEREVQU10KK2Rwa2ctZGViCQlbRFBLRy1ERUJdCitkcGtnLWRpc3RhZGRmaWxlCVtEUEtHLURJU1RBRERGSUxFXQorZHBrZy1kaXZlcnQJCVtEUEtHLURJVkVSVF0KK2Rwa2ctZ2VuY2hhbmdlcwkJW0RQS0ctR0VOQ0hBTkdFU10KK2Rwa2ctZ2VuY29udHJvbAkJW0RQS0ctR0VOQ09OVFJPTF0KK2Rwa2ctZ2Vuc3ltYm9scwkJW0RQS0ctR0VOQ1NZTUJPTFNdCitkcGtnLW1haW50c2NyaXB0LWhlbHBlcgorZHBrZy1tZXJnZWNoYW5nZWxvZ3MKK2Rwa2ctbmFtZQkJW0RQS0ctTkFNRV0KK2Rwa2ctcGFyc2VjaGFuZ2Vsb2cJW0RQS0ctUEFSU0VDSEFOR0VMT0ddCitkcGtnLXF1ZXJ5CQlbRFBLRy1RVUVSWV0KK2Rwa2ctc2NhbnBhY2thZ2VzCVtEUEtHLVNDQU5QQUNLQUdFU10KK2Rwa2ctc2NhbnNvdXJjZXMJW0RQS0ctU0NBTlNPVVJDRVNdCitkcGtnLXNobGliZGVwcwkJW0RQS0ctU0hMSUJERVBTXQorZHBrZy1zb3VyY2UJCVtEUEtHLVNPVVJDRV0KK2Rwa2ctc3BsaXQJCVtEUEtHLVNQTElUXQorZHBrZy1zdGF0b3ZlcnJpZGUJW0RQS0ctU1RBVE9WRVJSSURFXQorZHBrZy12ZW5kb3IKK3Mtcy1kCQkJW1MtUy1EXQkJCXN0YXJ0LXN0b3AtZGFlbW9uCit1LWEJCQlbVS1BXQkJCXVwZGF0ZS1hbHRlcm5hdGl2ZXMKKworaW5zdGFsbC1pbmZvCQlbSU5TVEFMTC1JTkZPXQorCitDdXJyZW50IGNhdGVnb3JpZXMKKz09PT09PT09PT09PT09PT09PQorCissLS0tIERlZmluaXRpb24gLS0tCit1c2VyIGRwa2dAcGFja2FnZXMuZGViaWFuLm9yZworCit1c2VyY2F0ZWdvcnkgZHBrZy1zdGF0dXMgW2hpZGRlbl0KKyAqIFN0YXR1cyBbcGVuZGluZz1dCisgICArIE91dHN0YW5kaW5nIHdpdGggUGF0Y2ggQXZhaWxhYmxlIFswOnBlbmRpbmcrdGFnPXBhdGNoXQorICAgKyBPdXRzdGFuZGluZyBhbmQgQ29uZmlybWVkIFsxOnBlbmRpbmcrdGFnPWNvbmZpcm1lZF0KKyAgICsgT3V0c3RhbmRpbmcgYW5kIE1vcmUgSW5mbyBOZWVkZWQgW3BlbmRpbmcrdGFnPW1vcmVpbmZvXQorICAgKyBPdXRzdGFuZGluZyBidXQgV2lsbCBOb3QgRml4IFtwZW5kaW5nK3RhZz13b250Zml4XQorICAgKyBPdXRzdGFuZGluZyBhbmQgVW5jbGFzc2lmaWVkIFsyOnBlbmRpbmddCisgICArIEZyb20gb3RoZXIgQnJhbmNoIFthYnNlbnRdCisgICArIFBlbmRpbmcgVXBsb2FkIFtwZW5kaW5nLWZpeGVkXQorICAgKyBGaXhlZCBpbiBOTVUgW2ZpeGVkXQorICAgKyBSZXNvbHZlZCBbZG9uZV0KKyAgICsgVW5rbm93biBQZW5kaW5nIFN0YXR1cyBbXQorCit1c2VyY2F0ZWdvcnkgZHBrZy1wcm9ncmFtIFtoaWRkZW5dCisgKiBEcGtnIFByb2dyYW0KKyAgKyBkcGtnIHByb2dyYW0gW3RhZz1kcGtnXQorICArIGRwa2ctZGViIFt0YWc9ZHBrZy1kZWJdCisgICsgZHBrZy1kaXZlcnQgW3RhZz1kcGtnLWRpdmVydF0KKyAgKyBkcGtnLXF1ZXJ5IFt0YWc9ZHBrZy1xdWVyeV0KKyAgKyBkcGtnLXNwbGl0IFt0YWc9ZHBrZy1zcGxpdF0KKyAgKyBkcGtnLXN0YXRvdmVycmlkZSBbdGFnPWRwa2ctc3RhdG92ZXJyaWRlXQorICArIGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyIFt0YWc9ZHBrZy1tYWludHNjcmlwdC1oZWxwZXJdCisgICsgc3RhcnQtc3RvcC1kYWVtb24gW3RhZz1zLXMtZF0KKyAgKyB1cGRhdGUtYWx0ZXJuYXRpdmVzIFt0YWc9dS1hXQorICArIGxpYmRwa2cgW3BhY2thZ2U9bGliZHBrZy1kZXZdCisgICsgZHBrZy1hcmNoaXRlY3R1cmUgW3RhZz1kcGtnLWFyY2hpdGVjdHVyZV0KKyAgKyBkcGtnLWJ1aWxkZmxhZ3MgW3RhZz1kcGtnLWJ1aWxkZmxhZ3NdCisgICsgZHBrZy1idWlsZHBhY2thZ2UgW3RhZz1kcGtnLWJ1aWxkcGFja2FnZV0KKyAgKyBkcGtnLWNoZWNrYnVpbGRkZXBzIFt0YWc9ZHBrZy1jaGVja2J1aWxkZGVwc10KKyAgKyBkcGtnLWRpc3RhZGRmaWxlIFt0YWc9ZHBrZy1kaXN0YWRkZmlsZV0KKyAgKyBkcGtnLWdlbmNoYW5nZXMgW3RhZz1kcGtnLWdlbmNoYW5nZXNdCisgICsgZHBrZy1nZW5jb250cm9sIFt0YWc9ZHBrZy1nZW5jb250cm9sXQorICArIGRwa2ctZ2Vuc3ltYm9scyBbdGFnPWRwa2ctZ2Vuc3ltYm9sc10KKyAgKyBkcGtnLW1lcmdlY2hhbmdlbG9ncyBbdGFnPWRwa2ctbWVyZ2VjaGFuZ2Vsb2dzXQorICArIGRwa2ctbmFtZSBbdGFnPWRwa2ctbmFtZV0KKyAgKyBkcGtnLXBhcnNlY2hhbmdlbG9nIFt0YWc9ZHBrZy1wYXJzZWNoYW5nZWxvZ10KKyAgKyBkcGtnLXNjYW5wYWNrYWdlcyBbdGFnPWRwa2ctc2NhbnBhY2thZ2VzXQorICArIGRwa2ctc2NhbnNvdXJjZXMgW3RhZz1kcGtnLXNjYW5zb3VyY2VzXQorICArIGRwa2ctc2hsaWJkZXBzIFt0YWc9ZHBrZy1zaGxpYmRlcHNdCisgICsgZHBrZy1zb3VyY2UgW3RhZz1kcGtnLXNvdXJjZV0KKyAgKyBkcGtnLXZlbmRvciBbdGFnPWRwa2ctdmVuZG9yXQorICArIERwa2cgcGVybCBtb2R1bGVzIFtwYWNrYWdlPWxpYmRwa2ctcGVybF0KKyAgKyBpbnN0YWxsLWluZm8gW3RhZz1pbnN0YWxsLWluZm9dCisgICsgZHNlbGVjdCBbcGFja2FnZT1kc2VsZWN0XQorICArIE90aGVyIFswOl0KKwordXNlcmNhdGVnb3J5IGRwa2ctcHJvZ3JhbS12aWV3CisgKiBkcGtnLXN0YXR1cworICogZHBrZy1wcm9ncmFtCisgKiBzZXZlcml0eQorCit1c2VyY2F0ZWdvcnkgZHBrZy1jbGFzcyBbaGlkZGVuXQorICogRHBrZyBDbGFzc2lmaWNhdGlvbiBbdGFnPV0KKyAgKyBTZWdmYXVsdCBbc2VnZmF1bHRdCisgICsgQXNzZXJ0aW9uIGZhaWx1cmUgW2Fzc2VydF0KKyAgKyBEZXBlbmRlbmN5IHJlbGF0aW9uc2hpcCBoYW5kbGluZyBbZGVwZW5kc10KKyAgKyBDb25mZmlsZSBoYW5kbGluZyBbY29uZmZpbGVdCisgICsgU3ltbGluayBoYW5kbGluZyBbc3ltbGlua10KKyAgKyBEYXRhYmFzZSBoYW5kbGluZyBbZGJdCisgICsgRmlsZSBtZXRhZGF0YSB0cmFja2luZyBbZmlsZS1tZXRhZGF0YV0KKyAgKyBNYWludGFpbmVyIHNjcmlwdCBoYW5kbGluZyBbbWFpbnQtc2NyaXB0XQorICArIFBlcmZvcm1hbmNlIGlzc3VlIFtwZXJmXQorICArIFRyaXZpYWwgZml4IFt0cml2aWFsXQorICArIE5ldyBjb250cm9sIGZpZWxkIFtuZXctZmllbGRdCisgICsgTmV3IGNvbW1hbmQgbGluZSBvcHRpb24gW25ldy1vcHRpb25dCisgICsgQmluYXJ5IHBhY2thZ2UgZm9ybWF0IFtkZWItZm9ybWF0XQorICArIFNvdXJjZSBwYWNrYWdlIGZvcm1hdCBbZHNjLWZvcm1hdF0KKyAgKyBBcmNoaXRlY3R1cmUgc3BlY2lmaWMgaXNzdWUgW2FyY2hdCisgICsgVmVuZG9yIHNwZWNpZmljIGlzc3VlIFt2ZW5kb3JdCisgICsgT3duIGJ1aWxkIHN5c3RlbSBbYnVpbGRdCisgICsgSW50ZXJuYXRpb25hbGl6YXRpb24gW2kxOG5dCisgICsgTG9jYWxpemF0aW9uIFtsMTBuXQorICArIERvY3VtZW50YXRpb24gW2RvY10KKyAgKyBPdGhlciBbMDpdCisKK3VzZXJjYXRlZ29yeSBkcGtnLWNsYXNzLXZpZXcKKyAqIGRwa2ctc3RhdHVzCisgKiBkcGtnLWNsYXNzCisgKiBzZXZlcml0eQorCisjIENoYW5nZSBkZWZhdWx0IHZpZXcKK3VzZXJjYXRlZ29yeSBub3JtYWwKKyAqIGRwa2ctc3RhdHVzCisgKiBzZXZlcml0eQorICogZHBrZy1wcm9ncmFtCisgKiBkcGtnLWNsYXNzCisKK3VzZXJjYXRlZ29yeSBvbGQtbm9ybWFsCisgKiBzdGF0dXMKKyAqIHNldmVyaXR5CisgKiBjbGFzc2lmaWNhdGlvbgorYC0tLQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kb2MvRG94eWZpbGUuaW4gYi9kcGtnLTEuMTYuMS4xL2RvYy9Eb3h5ZmlsZS5pbgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43YTE0NGQ3Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kb2MvRG94eWZpbGUuaW4KQEAgLTAsMCArMSwxNTIxIEBACisjIERveHlmaWxlIDEuNi4xCisKKyMgVGhpcyBmaWxlIGRlc2NyaWJlcyB0aGUgc2V0dGluZ3MgdG8gYmUgdXNlZCBieSB0aGUgZG9jdW1lbnRhdGlvbiBzeXN0ZW0KKyMgZG94eWdlbiAod3d3LmRveHlnZW4ub3JnKSBmb3IgYSBwcm9qZWN0CisjCisjIEFsbCB0ZXh0IGFmdGVyIGEgaGFzaCAoIykgaXMgY29uc2lkZXJlZCBhIGNvbW1lbnQgYW5kIHdpbGwgYmUgaWdub3JlZAorIyBUaGUgZm9ybWF0IGlzOgorIyAgICAgICBUQUcgPSB2YWx1ZSBbdmFsdWUsIC4uLl0KKyMgRm9yIGxpc3RzIGl0ZW1zIGNhbiBhbHNvIGJlIGFwcGVuZGVkIHVzaW5nOgorIyAgICAgICBUQUcgKz0gdmFsdWUgW3ZhbHVlLCAuLi5dCisjIFZhbHVlcyB0aGF0IGNvbnRhaW4gc3BhY2VzIHNob3VsZCBiZSBwbGFjZWQgYmV0d2VlbiBxdW90ZXMgKCIgIikKKworIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIyBQcm9qZWN0IHJlbGF0ZWQgY29uZmlndXJhdGlvbiBvcHRpb25zCisjLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKKyMgVGhpcyB0YWcgc3BlY2lmaWVzIHRoZSBlbmNvZGluZyB1c2VkIGZvciBhbGwgY2hhcmFjdGVycyBpbiB0aGUgY29uZmlnIGZpbGUKKyMgdGhhdCBmb2xsb3cuIFRoZSBkZWZhdWx0IGlzIFVURi04IHdoaWNoIGlzIGFsc28gdGhlIGVuY29kaW5nIHVzZWQgZm9yIGFsbAorIyB0ZXh0IGJlZm9yZSB0aGUgZmlyc3Qgb2NjdXJyZW5jZSBvZiB0aGlzIHRhZy4gRG94eWdlbiB1c2VzIGxpYmljb252IChvciB0aGUKKyMgaWNvbnYgYnVpbHQgaW50byBsaWJjKSBmb3IgdGhlIHRyYW5zY29kaW5nLiBTZWUKKyMgaHR0cDovL3d3dy5nbnUub3JnL3NvZnR3YXJlL2xpYmljb252IGZvciB0aGUgbGlzdCBvZiBwb3NzaWJsZSBlbmNvZGluZ3MuCisKK0RPWFlGSUxFX0VOQ09ESU5HICAgICAgPSBVVEYtOAorCisjIFRoZSBQUk9KRUNUX05BTUUgdGFnIGlzIGEgc2luZ2xlIHdvcmQgKG9yIGEgc2VxdWVuY2Ugb2Ygd29yZHMgc3Vycm91bmRlZAorIyBieSBxdW90ZXMpIHRoYXQgc2hvdWxkIGlkZW50aWZ5IHRoZSBwcm9qZWN0LgorCitQUk9KRUNUX05BTUUgICAgICAgICAgID0gQFBBQ0tBR0VACisKKyMgVGhlIFBST0pFQ1RfTlVNQkVSIHRhZyBjYW4gYmUgdXNlZCB0byBlbnRlciBhIHByb2plY3Qgb3IgcmV2aXNpb24gbnVtYmVyLgorIyBUaGlzIGNvdWxkIGJlIGhhbmR5IGZvciBhcmNoaXZpbmcgdGhlIGdlbmVyYXRlZCBkb2N1bWVudGF0aW9uIG9yCisjIGlmIHNvbWUgdmVyc2lvbiBjb250cm9sIHN5c3RlbSBpcyB1c2VkLgorCitQUk9KRUNUX05VTUJFUiAgICAgICAgID0gQFZFUlNJT05ACisKKyMgVGhlIE9VVFBVVF9ESVJFQ1RPUlkgdGFnIGlzIHVzZWQgdG8gc3BlY2lmeSB0aGUgKHJlbGF0aXZlIG9yIGFic29sdXRlKQorIyBiYXNlIHBhdGggd2hlcmUgdGhlIGdlbmVyYXRlZCBkb2N1bWVudGF0aW9uIHdpbGwgYmUgcHV0LgorIyBJZiBhIHJlbGF0aXZlIHBhdGggaXMgZW50ZXJlZCwgaXQgd2lsbCBiZSByZWxhdGl2ZSB0byB0aGUgbG9jYXRpb24KKyMgd2hlcmUgZG94eWdlbiB3YXMgc3RhcnRlZC4gSWYgbGVmdCBibGFuayB0aGUgY3VycmVudCBkaXJlY3Rvcnkgd2lsbCBiZSB1c2VkLgorCitPVVRQVVRfRElSRUNUT1JZICAgICAgID0gZG9jLworCisjIElmIHRoZSBDUkVBVEVfU1VCRElSUyB0YWcgaXMgc2V0IHRvIFlFUywgdGhlbiBkb3h5Z2VuIHdpbGwgY3JlYXRlCisjIDQwOTYgc3ViLWRpcmVjdG9yaWVzIChpbiAyIGxldmVscykgdW5kZXIgdGhlIG91dHB1dCBkaXJlY3Rvcnkgb2YgZWFjaCBvdXRwdXQKKyMgZm9ybWF0IGFuZCB3aWxsIGRpc3RyaWJ1dGUgdGhlIGdlbmVyYXRlZCBmaWxlcyBvdmVyIHRoZXNlIGRpcmVjdG9yaWVzLgorIyBFbmFibGluZyB0aGlzIG9wdGlvbiBjYW4gYmUgdXNlZnVsIHdoZW4gZmVlZGluZyBkb3h5Z2VuIGEgaHVnZSBhbW91bnQgb2YKKyMgc291cmNlIGZpbGVzLCB3aGVyZSBwdXR0aW5nIGFsbCBnZW5lcmF0ZWQgZmlsZXMgaW4gdGhlIHNhbWUgZGlyZWN0b3J5IHdvdWxkCisjIG90aGVyd2lzZSBjYXVzZSBwZXJmb3JtYW5jZSBwcm9ibGVtcyBmb3IgdGhlIGZpbGUgc3lzdGVtLgorCitDUkVBVEVfU1VCRElSUyAgICAgICAgID0gTk8KKworIyBUaGUgT1VUUFVUX0xBTkdVQUdFIHRhZyBpcyB1c2VkIHRvIHNwZWNpZnkgdGhlIGxhbmd1YWdlIGluIHdoaWNoIGFsbAorIyBkb2N1bWVudGF0aW9uIGdlbmVyYXRlZCBieSBkb3h5Z2VuIGlzIHdyaXR0ZW4uIERveHlnZW4gd2lsbCB1c2UgdGhpcworIyBpbmZvcm1hdGlvbiB0byBnZW5lcmF0ZSBhbGwgY29uc3RhbnQgb3V0cHV0IGluIHRoZSBwcm9wZXIgbGFuZ3VhZ2UuCisjIFRoZSBkZWZhdWx0IGxhbmd1YWdlIGlzIEVuZ2xpc2gsIG90aGVyIHN1cHBvcnRlZCBsYW5ndWFnZXMgYXJlOgorIyBBZnJpa2FhbnMsIEFyYWJpYywgQnJhemlsaWFuLCBDYXRhbGFuLCBDaGluZXNlLCBDaGluZXNlLVRyYWRpdGlvbmFsLAorIyBDcm9hdGlhbiwgQ3plY2gsIERhbmlzaCwgRHV0Y2gsIEVzcGVyYW50bywgRmFyc2ksIEZpbm5pc2gsIEZyZW5jaCwgR2VybWFuLAorIyBHcmVlaywgSHVuZ2FyaWFuLCBJdGFsaWFuLCBKYXBhbmVzZSwgSmFwYW5lc2UtZW4gKEphcGFuZXNlIHdpdGggRW5nbGlzaAorIyBtZXNzYWdlcyksIEtvcmVhbiwgS29yZWFuLWVuLCBMaXRodWFuaWFuLCBOb3J3ZWdpYW4sIE1hY2Vkb25pYW4sIFBlcnNpYW4sCisjIFBvbGlzaCwgUG9ydHVndWVzZSwgUm9tYW5pYW4sIFJ1c3NpYW4sIFNlcmJpYW4sIFNlcmJpYW4tQ3lyaWxpYywgU2xvdmFrLAorIyBTbG92ZW5lLCBTcGFuaXNoLCBTd2VkaXNoLCBVa3JhaW5pYW4sIGFuZCBWaWV0bmFtZXNlLgorCitPVVRQVVRfTEFOR1VBR0UgICAgICAgID0gRW5nbGlzaAorCisjIElmIHRoZSBCUklFRl9NRU1CRVJfREVTQyB0YWcgaXMgc2V0IHRvIFlFUyAodGhlIGRlZmF1bHQpIERveHlnZW4gd2lsbAorIyBpbmNsdWRlIGJyaWVmIG1lbWJlciBkZXNjcmlwdGlvbnMgYWZ0ZXIgdGhlIG1lbWJlcnMgdGhhdCBhcmUgbGlzdGVkIGluCisjIHRoZSBmaWxlIGFuZCBjbGFzcyBkb2N1bWVudGF0aW9uIChzaW1pbGFyIHRvIEphdmFEb2MpLgorIyBTZXQgdG8gTk8gdG8gZGlzYWJsZSB0aGlzLgorCitCUklFRl9NRU1CRVJfREVTQyAgICAgID0gWUVTCisKKyMgSWYgdGhlIFJFUEVBVF9CUklFRiB0YWcgaXMgc2V0IHRvIFlFUyAodGhlIGRlZmF1bHQpIERveHlnZW4gd2lsbCBwcmVwZW5kCisjIHRoZSBicmllZiBkZXNjcmlwdGlvbiBvZiBhIG1lbWJlciBvciBmdW5jdGlvbiBiZWZvcmUgdGhlIGRldGFpbGVkIGRlc2NyaXB0aW9uLgorIyBOb3RlOiBpZiBib3RoIEhJREVfVU5ET0NfTUVNQkVSUyBhbmQgQlJJRUZfTUVNQkVSX0RFU0MgYXJlIHNldCB0byBOTywgdGhlCisjIGJyaWVmIGRlc2NyaXB0aW9ucyB3aWxsIGJlIGNvbXBsZXRlbHkgc3VwcHJlc3NlZC4KKworUkVQRUFUX0JSSUVGICAgICAgICAgICA9IFlFUworCisjIFRoaXMgdGFnIGltcGxlbWVudHMgYSBxdWFzaS1pbnRlbGxpZ2VudCBicmllZiBkZXNjcmlwdGlvbiBhYmJyZXZpYXRvcgorIyB0aGF0IGlzIHVzZWQgdG8gZm9ybSB0aGUgdGV4dCBpbiB2YXJpb3VzIGxpc3RpbmdzLiBFYWNoIHN0cmluZworIyBpbiB0aGlzIGxpc3QsIGlmIGZvdW5kIGFzIHRoZSBsZWFkaW5nIHRleHQgb2YgdGhlIGJyaWVmIGRlc2NyaXB0aW9uLCB3aWxsIGJlCisjIHN0cmlwcGVkIGZyb20gdGhlIHRleHQgYW5kIHRoZSByZXN1bHQgYWZ0ZXIgcHJvY2Vzc2luZyB0aGUgd2hvbGUgbGlzdCwgaXMKKyMgdXNlZCBhcyB0aGUgYW5ub3RhdGVkIHRleHQuIE90aGVyd2lzZSwgdGhlIGJyaWVmIGRlc2NyaXB0aW9uIGlzIHVzZWQgYXMtaXMuCisjIElmIGxlZnQgYmxhbmssIHRoZSBmb2xsb3dpbmcgdmFsdWVzIGFyZSB1c2VkICgiJG5hbWUiIGlzIGF1dG9tYXRpY2FsbHkKKyMgcmVwbGFjZWQgd2l0aCB0aGUgbmFtZSBvZiB0aGUgZW50aXR5KTogIlRoZSAkbmFtZSBjbGFzcyIgIlRoZSAkbmFtZSB3aWRnZXQiCisjICJUaGUgJG5hbWUgZmlsZSIgImlzIiAicHJvdmlkZXMiICJzcGVjaWZpZXMiICJjb250YWlucyIKKyMgInJlcHJlc2VudHMiICJhIiAiYW4iICJ0aGUiCisKK0FCQlJFVklBVEVfQlJJRUYgICAgICAgPQorCisjIElmIHRoZSBBTFdBWVNfREVUQUlMRURfU0VDIGFuZCBSRVBFQVRfQlJJRUYgdGFncyBhcmUgYm90aCBzZXQgdG8gWUVTIHRoZW4KKyMgRG94eWdlbiB3aWxsIGdlbmVyYXRlIGEgZGV0YWlsZWQgc2VjdGlvbiBldmVuIGlmIHRoZXJlIGlzIG9ubHkgYSBicmllZgorIyBkZXNjcmlwdGlvbi4KKworQUxXQVlTX0RFVEFJTEVEX1NFQyAgICA9IE5PCisKKyMgSWYgdGhlIElOTElORV9JTkhFUklURURfTUVNQiB0YWcgaXMgc2V0IHRvIFlFUywgZG94eWdlbiB3aWxsIHNob3cgYWxsCisjIGluaGVyaXRlZCBtZW1iZXJzIG9mIGEgY2xhc3MgaW4gdGhlIGRvY3VtZW50YXRpb24gb2YgdGhhdCBjbGFzcyBhcyBpZiB0aG9zZQorIyBtZW1iZXJzIHdlcmUgb3JkaW5hcnkgY2xhc3MgbWVtYmVycy4gQ29uc3RydWN0b3JzLCBkZXN0cnVjdG9ycyBhbmQgYXNzaWdubWVudAorIyBvcGVyYXRvcnMgb2YgdGhlIGJhc2UgY2xhc3NlcyB3aWxsIG5vdCBiZSBzaG93bi4KKworSU5MSU5FX0lOSEVSSVRFRF9NRU1CICA9IE5PCisKKyMgSWYgdGhlIEZVTExfUEFUSF9OQU1FUyB0YWcgaXMgc2V0IHRvIFlFUyB0aGVuIERveHlnZW4gd2lsbCBwcmVwZW5kIHRoZSBmdWxsCisjIHBhdGggYmVmb3JlIGZpbGVzIG5hbWUgaW4gdGhlIGZpbGUgbGlzdCBhbmQgaW4gdGhlIGhlYWRlciBmaWxlcy4gSWYgc2V0CisjIHRvIE5PIHRoZSBzaG9ydGVzdCBwYXRoIHRoYXQgbWFrZXMgdGhlIGZpbGUgbmFtZSB1bmlxdWUgd2lsbCBiZSB1c2VkLgorCitGVUxMX1BBVEhfTkFNRVMgICAgICAgID0gWUVTCisKKyMgSWYgdGhlIEZVTExfUEFUSF9OQU1FUyB0YWcgaXMgc2V0IHRvIFlFUyB0aGVuIHRoZSBTVFJJUF9GUk9NX1BBVEggdGFnCisjIGNhbiBiZSB1c2VkIHRvIHN0cmlwIGEgdXNlci1kZWZpbmVkIHBhcnQgb2YgdGhlIHBhdGguIFN0cmlwcGluZyBpcworIyBvbmx5IGRvbmUgaWYgb25lIG9mIHRoZSBzcGVjaWZpZWQgc3RyaW5ncyBtYXRjaGVzIHRoZSBsZWZ0LWhhbmQgcGFydCBvZgorIyB0aGUgcGF0aC4gVGhlIHRhZyBjYW4gYmUgdXNlZCB0byBzaG93IHJlbGF0aXZlIHBhdGhzIGluIHRoZSBmaWxlIGxpc3QuCisjIElmIGxlZnQgYmxhbmsgdGhlIGRpcmVjdG9yeSBmcm9tIHdoaWNoIGRveHlnZW4gaXMgcnVuIGlzIHVzZWQgYXMgdGhlCisjIHBhdGggdG8gc3RyaXAuCisKK1NUUklQX0ZST01fUEFUSCAgICAgICAgPQorCisjIFRoZSBTVFJJUF9GUk9NX0lOQ19QQVRIIHRhZyBjYW4gYmUgdXNlZCB0byBzdHJpcCBhIHVzZXItZGVmaW5lZCBwYXJ0IG9mCisjIHRoZSBwYXRoIG1lbnRpb25lZCBpbiB0aGUgZG9jdW1lbnRhdGlvbiBvZiBhIGNsYXNzLCB3aGljaCB0ZWxscworIyB0aGUgcmVhZGVyIHdoaWNoIGhlYWRlciBmaWxlIHRvIGluY2x1ZGUgaW4gb3JkZXIgdG8gdXNlIGEgY2xhc3MuCisjIElmIGxlZnQgYmxhbmsgb25seSB0aGUgbmFtZSBvZiB0aGUgaGVhZGVyIGZpbGUgY29udGFpbmluZyB0aGUgY2xhc3MKKyMgZGVmaW5pdGlvbiBpcyB1c2VkLiBPdGhlcndpc2Ugb25lIHNob3VsZCBzcGVjaWZ5IHRoZSBpbmNsdWRlIHBhdGhzIHRoYXQKKyMgYXJlIG5vcm1hbGx5IHBhc3NlZCB0byB0aGUgY29tcGlsZXIgdXNpbmcgdGhlIC1JIGZsYWcuCisKK1NUUklQX0ZST01fSU5DX1BBVEggICAgPQorCisjIElmIHRoZSBTSE9SVF9OQU1FUyB0YWcgaXMgc2V0IHRvIFlFUywgZG94eWdlbiB3aWxsIGdlbmVyYXRlIG11Y2ggc2hvcnRlcgorIyAoYnV0IGxlc3MgcmVhZGFibGUpIGZpbGUgbmFtZXMuIFRoaXMgY2FuIGJlIHVzZWZ1bCBpcyB5b3VyIGZpbGUgc3lzdGVtcworIyBkb2Vzbid0IHN1cHBvcnQgbG9uZyBuYW1lcyBsaWtlIG9uIERPUywgTWFjLCBvciBDRC1ST00uCisKK1NIT1JUX05BTUVTICAgICAgICAgICAgPSBOTworCisjIElmIHRoZSBKQVZBRE9DX0FVVE9CUklFRiB0YWcgaXMgc2V0IHRvIFlFUyB0aGVuIERveHlnZW4KKyMgd2lsbCBpbnRlcnByZXQgdGhlIGZpcnN0IGxpbmUgKHVudGlsIHRoZSBmaXJzdCBkb3QpIG9mIGEgSmF2YURvYy1zdHlsZQorIyBjb21tZW50IGFzIHRoZSBicmllZiBkZXNjcmlwdGlvbi4gSWYgc2V0IHRvIE5PLCB0aGUgSmF2YURvYworIyBjb21tZW50cyB3aWxsIGJlaGF2ZSBqdXN0IGxpa2UgcmVndWxhciBRdC1zdHlsZSBjb21tZW50cworIyAodGh1cyByZXF1aXJpbmcgYW4gZXhwbGljaXQgQGJyaWVmIGNvbW1hbmQgZm9yIGEgYnJpZWYgZGVzY3JpcHRpb24uKQorCitKQVZBRE9DX0FVVE9CUklFRiAgICAgID0gWUVTCisKKyMgSWYgdGhlIFFUX0FVVE9CUklFRiB0YWcgaXMgc2V0IHRvIFlFUyB0aGVuIERveHlnZW4gd2lsbAorIyBpbnRlcnByZXQgdGhlIGZpcnN0IGxpbmUgKHVudGlsIHRoZSBmaXJzdCBkb3QpIG9mIGEgUXQtc3R5bGUKKyMgY29tbWVudCBhcyB0aGUgYnJpZWYgZGVzY3JpcHRpb24uIElmIHNldCB0byBOTywgdGhlIGNvbW1lbnRzCisjIHdpbGwgYmVoYXZlIGp1c3QgbGlrZSByZWd1bGFyIFF0LXN0eWxlIGNvbW1lbnRzICh0aHVzIHJlcXVpcmluZworIyBhbiBleHBsaWNpdCBcYnJpZWYgY29tbWFuZCBmb3IgYSBicmllZiBkZXNjcmlwdGlvbi4pCisKK1FUX0FVVE9CUklFRiAgICAgICAgICAgPSBOTworCisjIFRoZSBNVUxUSUxJTkVfQ1BQX0lTX0JSSUVGIHRhZyBjYW4gYmUgc2V0IHRvIFlFUyB0byBtYWtlIERveHlnZW4KKyMgdHJlYXQgYSBtdWx0aS1saW5lIEMrKyBzcGVjaWFsIGNvbW1lbnQgYmxvY2sgKGkuZS4gYSBibG9jayBvZiAvLyEgb3IgLy8vCisjIGNvbW1lbnRzKSBhcyBhIGJyaWVmIGRlc2NyaXB0aW9uLiBUaGlzIHVzZWQgdG8gYmUgdGhlIGRlZmF1bHQgYmVoYXZpb3VyLgorIyBUaGUgbmV3IGRlZmF1bHQgaXMgdG8gdHJlYXQgYSBtdWx0aS1saW5lIEMrKyBjb21tZW50IGJsb2NrIGFzIGEgZGV0YWlsZWQKKyMgZGVzY3JpcHRpb24uIFNldCB0aGlzIHRhZyB0byBZRVMgaWYgeW91IHByZWZlciB0aGUgb2xkIGJlaGF2aW91ciBpbnN0ZWFkLgorCitNVUxUSUxJTkVfQ1BQX0lTX0JSSUVGID0gTk8KKworIyBJZiB0aGUgSU5IRVJJVF9ET0NTIHRhZyBpcyBzZXQgdG8gWUVTICh0aGUgZGVmYXVsdCkgdGhlbiBhbiB1bmRvY3VtZW50ZWQKKyMgbWVtYmVyIGluaGVyaXRzIHRoZSBkb2N1bWVudGF0aW9uIGZyb20gYW55IGRvY3VtZW50ZWQgbWVtYmVyIHRoYXQgaXQKKyMgcmUtaW1wbGVtZW50cy4KKworSU5IRVJJVF9ET0NTICAgICAgICAgICA9IFlFUworCisjIElmIHRoZSBTRVBBUkFURV9NRU1CRVJfUEFHRVMgdGFnIGlzIHNldCB0byBZRVMsIHRoZW4gZG94eWdlbiB3aWxsIHByb2R1Y2UKKyMgYSBuZXcgcGFnZSBmb3IgZWFjaCBtZW1iZXIuIElmIHNldCB0byBOTywgdGhlIGRvY3VtZW50YXRpb24gb2YgYSBtZW1iZXIgd2lsbAorIyBiZSBwYXJ0IG9mIHRoZSBmaWxlL2NsYXNzL25hbWVzcGFjZSB0aGF0IGNvbnRhaW5zIGl0LgorCitTRVBBUkFURV9NRU1CRVJfUEFHRVMgID0gTk8KKworIyBUaGUgVEFCX1NJWkUgdGFnIGNhbiBiZSB1c2VkIHRvIHNldCB0aGUgbnVtYmVyIG9mIHNwYWNlcyBpbiBhIHRhYi4KKyMgRG94eWdlbiB1c2VzIHRoaXMgdmFsdWUgdG8gcmVwbGFjZSB0YWJzIGJ5IHNwYWNlcyBpbiBjb2RlIGZyYWdtZW50cy4KKworVEFCX1NJWkUgICAgICAgICAgICAgICA9IDgKKworIyBUaGlzIHRhZyBjYW4gYmUgdXNlZCB0byBzcGVjaWZ5IGEgbnVtYmVyIG9mIGFsaWFzZXMgdGhhdCBhY3RzCisjIGFzIGNvbW1hbmRzIGluIHRoZSBkb2N1bWVudGF0aW9uLiBBbiBhbGlhcyBoYXMgdGhlIGZvcm0gIm5hbWU9dmFsdWUiLgorIyBGb3IgZXhhbXBsZSBhZGRpbmcgInNpZGVlZmZlY3Q9XHBhciBTaWRlIEVmZmVjdHM6XG4iIHdpbGwgYWxsb3cgeW91IHRvCisjIHB1dCB0aGUgY29tbWFuZCBcc2lkZWVmZmVjdCAob3IgQHNpZGVlZmZlY3QpIGluIHRoZSBkb2N1bWVudGF0aW9uLCB3aGljaAorIyB3aWxsIHJlc3VsdCBpbiBhIHVzZXItZGVmaW5lZCBwYXJhZ3JhcGggd2l0aCBoZWFkaW5nICJTaWRlIEVmZmVjdHM6Ii4KKyMgWW91IGNhbiBwdXQgXG4ncyBpbiB0aGUgdmFsdWUgcGFydCBvZiBhbiBhbGlhcyB0byBpbnNlcnQgbmV3bGluZXMuCisKK0FMSUFTRVMgICAgICAgICAgICAgICAgPQorCisjIFNldCB0aGUgT1BUSU1JWkVfT1VUUFVUX0ZPUl9DIHRhZyB0byBZRVMgaWYgeW91ciBwcm9qZWN0IGNvbnNpc3RzIG9mIEMKKyMgc291cmNlcyBvbmx5LiBEb3h5Z2VuIHdpbGwgdGhlbiBnZW5lcmF0ZSBvdXRwdXQgdGhhdCBpcyBtb3JlIHRhaWxvcmVkIGZvciBDLgorIyBGb3IgaW5zdGFuY2UsIHNvbWUgb2YgdGhlIG5hbWVzIHRoYXQgYXJlIHVzZWQgd2lsbCBiZSBkaWZmZXJlbnQuIFRoZSBsaXN0CisjIG9mIGFsbCBtZW1iZXJzIHdpbGwgYmUgb21pdHRlZCwgZXRjLgorCitPUFRJTUlaRV9PVVRQVVRfRk9SX0MgID0gWUVTCisKKyMgU2V0IHRoZSBPUFRJTUlaRV9PVVRQVVRfSkFWQSB0YWcgdG8gWUVTIGlmIHlvdXIgcHJvamVjdCBjb25zaXN0cyBvZiBKYXZhCisjIHNvdXJjZXMgb25seS4gRG94eWdlbiB3aWxsIHRoZW4gZ2VuZXJhdGUgb3V0cHV0IHRoYXQgaXMgbW9yZSB0YWlsb3JlZCBmb3IKKyMgSmF2YS4gRm9yIGluc3RhbmNlLCBuYW1lc3BhY2VzIHdpbGwgYmUgcHJlc2VudGVkIGFzIHBhY2thZ2VzLCBxdWFsaWZpZWQKKyMgc2NvcGVzIHdpbGwgbG9vayBkaWZmZXJlbnQsIGV0Yy4KKworT1BUSU1JWkVfT1VUUFVUX0pBVkEgICA9IE5PCisKKyMgU2V0IHRoZSBPUFRJTUlaRV9GT1JfRk9SVFJBTiB0YWcgdG8gWUVTIGlmIHlvdXIgcHJvamVjdCBjb25zaXN0cyBvZiBGb3J0cmFuCisjIHNvdXJjZXMgb25seS4gRG94eWdlbiB3aWxsIHRoZW4gZ2VuZXJhdGUgb3V0cHV0IHRoYXQgaXMgbW9yZSB0YWlsb3JlZCBmb3IKKyMgRm9ydHJhbi4KKworT1BUSU1JWkVfRk9SX0ZPUlRSQU4gICA9IE5PCisKKyMgU2V0IHRoZSBPUFRJTUlaRV9PVVRQVVRfVkhETCB0YWcgdG8gWUVTIGlmIHlvdXIgcHJvamVjdCBjb25zaXN0cyBvZiBWSERMCisjIHNvdXJjZXMuIERveHlnZW4gd2lsbCB0aGVuIGdlbmVyYXRlIG91dHB1dCB0aGF0IGlzIHRhaWxvcmVkIGZvcgorIyBWSERMLgorCitPUFRJTUlaRV9PVVRQVVRfVkhETCAgID0gTk8KKworIyBEb3h5Z2VuIHNlbGVjdHMgdGhlIHBhcnNlciB0byB1c2UgZGVwZW5kaW5nIG9uIHRoZSBleHRlbnNpb24gb2YgdGhlIGZpbGVzIGl0IHBhcnNlcy4KKyMgV2l0aCB0aGlzIHRhZyB5b3UgY2FuIGFzc2lnbiB3aGljaCBwYXJzZXIgdG8gdXNlIGZvciBhIGdpdmVuIGV4dGVuc2lvbi4KKyMgRG94eWdlbiBoYXMgYSBidWlsdC1pbiBtYXBwaW5nLCBidXQgeW91IGNhbiBvdmVycmlkZSBvciBleHRlbmQgaXQgdXNpbmcgdGhpcyB0YWcuCisjIFRoZSBmb3JtYXQgaXMgZXh0PWxhbmd1YWdlLCB3aGVyZSBleHQgaXMgYSBmaWxlIGV4dGVuc2lvbiwgYW5kIGxhbmd1YWdlIGlzIG9uZSBvZgorIyB0aGUgcGFyc2VycyBzdXBwb3J0ZWQgYnkgZG94eWdlbjogSURMLCBKYXZhLCBKYXZhc2NyaXB0LCBDIywgQywgQysrLCBELCBQSFAsCisjIE9iamVjdGl2ZS1DLCBQeXRob24sIEZvcnRyYW4sIFZIREwsIEMsIEMrKy4gRm9yIGluc3RhbmNlIHRvIG1ha2UgZG94eWdlbiB0cmVhdAorIyAuaW5jIGZpbGVzIGFzIEZvcnRyYW4gZmlsZXMgKGRlZmF1bHQgaXMgUEhQKSwgYW5kIC5mIGZpbGVzIGFzIEMgKGRlZmF1bHQgaXMgRm9ydHJhbiksCisjIHVzZTogaW5jPUZvcnRyYW4gZj1DLiBOb3RlIHRoYXQgZm9yIGN1c3RvbSBleHRlbnNpb25zIHlvdSBhbHNvIG5lZWQgdG8gc2V0IEZJTEVfUEFUVEVSTlMgb3RoZXJ3aXNlIHRoZSBmaWxlcyBhcmUgbm90IHJlYWQgYnkgZG94eWdlbi4KKworIyBMZXQncyBjb25zaWRlciB0aGUgbGV4IGZpbGVzIGFzIEMKK0VYVEVOU0lPTl9NQVBQSU5HICAgICAgPSBsPUMKKworIyBJZiB5b3UgdXNlIFNUTCBjbGFzc2VzIChpLmUuIHN0ZDo6c3RyaW5nLCBzdGQ6OnZlY3RvciwgZXRjLikgYnV0IGRvIG5vdCB3YW50CisjIHRvIGluY2x1ZGUgKGEgdGFnIGZpbGUgZm9yKSB0aGUgU1RMIHNvdXJjZXMgYXMgaW5wdXQsIHRoZW4geW91IHNob3VsZAorIyBzZXQgdGhpcyB0YWcgdG8gWUVTIGluIG9yZGVyIHRvIGxldCBkb3h5Z2VuIG1hdGNoIGZ1bmN0aW9ucyBkZWNsYXJhdGlvbnMgYW5kCisjIGRlZmluaXRpb25zIHdob3NlIGFyZ3VtZW50cyBjb250YWluIFNUTCBjbGFzc2VzIChlLmcuIGZ1bmMoc3RkOjpzdHJpbmcpOyB2LnMuCisjIGZ1bmMoc3RkOjpzdHJpbmcpIHt9KS4gVGhpcyBhbHNvIG1ha2UgdGhlIGluaGVyaXRhbmNlIGFuZCBjb2xsYWJvcmF0aW9uCisjIGRpYWdyYW1zIHRoYXQgaW52b2x2ZSBTVEwgY2xhc3NlcyBtb3JlIGNvbXBsZXRlIGFuZCBhY2N1cmF0ZS4KKworQlVJTFRJTl9TVExfU1VQUE9SVCAgICA9IE5PCisKKyMgSWYgeW91IHVzZSBNaWNyb3NvZnQncyBDKysvQ0xJIGxhbmd1YWdlLCB5b3Ugc2hvdWxkIHNldCB0aGlzIG9wdGlvbiB0byBZRVMgdG8KKyMgZW5hYmxlIHBhcnNpbmcgc3VwcG9ydC4KKworQ1BQX0NMSV9TVVBQT1JUICAgICAgICA9IE5PCisKKyMgU2V0IHRoZSBTSVBfU1VQUE9SVCB0YWcgdG8gWUVTIGlmIHlvdXIgcHJvamVjdCBjb25zaXN0cyBvZiBzaXAgc291cmNlcyBvbmx5LgorIyBEb3h5Z2VuIHdpbGwgcGFyc2UgdGhlbSBsaWtlIG5vcm1hbCBDKysgYnV0IHdpbGwgYXNzdW1lIGFsbCBjbGFzc2VzIHVzZSBwdWJsaWMKKyMgaW5zdGVhZCBvZiBwcml2YXRlIGluaGVyaXRhbmNlIHdoZW4gbm8gZXhwbGljaXQgcHJvdGVjdGlvbiBrZXl3b3JkIGlzIHByZXNlbnQuCisKK1NJUF9TVVBQT1JUICAgICAgICAgICAgPSBOTworCisjIEZvciBNaWNyb3NvZnQncyBJREwgdGhlcmUgYXJlIHByb3BnZXQgYW5kIHByb3BwdXQgYXR0cmlidXRlcyB0byBpbmRpY2F0ZSBnZXR0ZXIKKyMgYW5kIHNldHRlciBtZXRob2RzIGZvciBhIHByb3BlcnR5LiBTZXR0aW5nIHRoaXMgb3B0aW9uIHRvIFlFUyAodGhlIGRlZmF1bHQpCisjIHdpbGwgbWFrZSBkb3h5Z2VuIHRvIHJlcGxhY2UgdGhlIGdldCBhbmQgc2V0IG1ldGhvZHMgYnkgYSBwcm9wZXJ0eSBpbiB0aGUKKyMgZG9jdW1lbnRhdGlvbi4gVGhpcyB3aWxsIG9ubHkgd29yayBpZiB0aGUgbWV0aG9kcyBhcmUgaW5kZWVkIGdldHRpbmcgb3IKKyMgc2V0dGluZyBhIHNpbXBsZSB0eXBlLiBJZiB0aGlzIGlzIG5vdCB0aGUgY2FzZSwgb3IgeW91IHdhbnQgdG8gc2hvdyB0aGUKKyMgbWV0aG9kcyBhbnl3YXksIHlvdSBzaG91bGQgc2V0IHRoaXMgb3B0aW9uIHRvIE5PLgorCitJRExfUFJPUEVSVFlfU1VQUE9SVCAgID0gWUVTCisKKyMgSWYgbWVtYmVyIGdyb3VwaW5nIGlzIHVzZWQgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kIHRoZSBESVNUUklCVVRFX0dST1VQX0RPQworIyB0YWcgaXMgc2V0IHRvIFlFUywgdGhlbiBkb3h5Z2VuIHdpbGwgcmV1c2UgdGhlIGRvY3VtZW50YXRpb24gb2YgdGhlIGZpcnN0CisjIG1lbWJlciBpbiB0aGUgZ3JvdXAgKGlmIGFueSkgZm9yIHRoZSBvdGhlciBtZW1iZXJzIG9mIHRoZSBncm91cC4gQnkgZGVmYXVsdAorIyBhbGwgbWVtYmVycyBvZiBhIGdyb3VwIG11c3QgYmUgZG9jdW1lbnRlZCBleHBsaWNpdGx5LgorCitESVNUUklCVVRFX0dST1VQX0RPQyAgID0gTk8KKworIyBTZXQgdGhlIFNVQkdST1VQSU5HIHRhZyB0byBZRVMgKHRoZSBkZWZhdWx0KSB0byBhbGxvdyBjbGFzcyBtZW1iZXIgZ3JvdXBzIG9mCisjIHRoZSBzYW1lIHR5cGUgKGZvciBpbnN0YW5jZSBhIGdyb3VwIG9mIHB1YmxpYyBmdW5jdGlvbnMpIHRvIGJlIHB1dCBhcyBhCisjIHN1Ymdyb3VwIG9mIHRoYXQgdHlwZSAoZS5nLiB1bmRlciB0aGUgUHVibGljIEZ1bmN0aW9ucyBzZWN0aW9uKS4gU2V0IGl0IHRvCisjIE5PIHRvIHByZXZlbnQgc3ViZ3JvdXBpbmcuIEFsdGVybmF0aXZlbHksIHRoaXMgY2FuIGJlIGRvbmUgcGVyIGNsYXNzIHVzaW5nCisjIHRoZSBcbm9zdWJncm91cGluZyBjb21tYW5kLgorCitTVUJHUk9VUElORyAgICAgICAgICAgID0gWUVTCisKKyMgV2hlbiBUWVBFREVGX0hJREVTX1NUUlVDVCBpcyBlbmFibGVkLCBhIHR5cGVkZWYgb2YgYSBzdHJ1Y3QsIHVuaW9uLCBvciBlbnVtCisjIGlzIGRvY3VtZW50ZWQgYXMgc3RydWN0LCB1bmlvbiwgb3IgZW51bSB3aXRoIHRoZSBuYW1lIG9mIHRoZSB0eXBlZGVmLiBTbworIyB0eXBlZGVmIHN0cnVjdCBUeXBlUyB7fSBUeXBlVCwgd2lsbCBhcHBlYXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYXMgYSBzdHJ1Y3QKKyMgd2l0aCBuYW1lIFR5cGVULiBXaGVuIGRpc2FibGVkIHRoZSB0eXBlZGVmIHdpbGwgYXBwZWFyIGFzIGEgbWVtYmVyIG9mIGEgZmlsZSwKKyMgbmFtZXNwYWNlLCBvciBjbGFzcy4gQW5kIHRoZSBzdHJ1Y3Qgd2lsbCBiZSBuYW1lZCBUeXBlUy4gVGhpcyBjYW4gdHlwaWNhbGx5CisjIGJlIHVzZWZ1bCBmb3IgQyBjb2RlIGluIGNhc2UgdGhlIGNvZGluZyBjb252ZW50aW9uIGRpY3RhdGVzIHRoYXQgYWxsIGNvbXBvdW5kCisjIHR5cGVzIGFyZSB0eXBlZGVmJ2VkIGFuZCBvbmx5IHRoZSB0eXBlZGVmIGlzIHJlZmVyZW5jZWQsIG5ldmVyIHRoZSB0YWcgbmFtZS4KKworVFlQRURFRl9ISURFU19TVFJVQ1QgICA9IE5PCisKKyMgVGhlIFNZTUJPTF9DQUNIRV9TSVpFIGRldGVybWluZXMgdGhlIHNpemUgb2YgdGhlIGludGVybmFsIGNhY2hlIHVzZSB0bworIyBkZXRlcm1pbmUgd2hpY2ggc3ltYm9scyB0byBrZWVwIGluIG1lbW9yeSBhbmQgd2hpY2ggdG8gZmx1c2ggdG8gZGlzay4KKyMgV2hlbiB0aGUgY2FjaGUgaXMgZnVsbCwgbGVzcyBvZnRlbiB1c2VkIHN5bWJvbHMgd2lsbCBiZSB3cml0dGVuIHRvIGRpc2suCisjIEZvciBzbWFsbCB0byBtZWRpdW0gc2l6ZSBwcm9qZWN0cyAoPDEwMDAgaW5wdXQgZmlsZXMpIHRoZSBkZWZhdWx0IHZhbHVlIGlzCisjIHByb2JhYmx5IGdvb2QgZW5vdWdoLiBGb3IgbGFyZ2VyIHByb2plY3RzIGEgdG9vIHNtYWxsIGNhY2hlIHNpemUgY2FuIGNhdXNlCisjIGRveHlnZW4gdG8gYmUgYnVzeSBzd2FwcGluZyBzeW1ib2xzIHRvIGFuZCBmcm9tIGRpc2sgbW9zdCBvZiB0aGUgdGltZQorIyBjYXVzaW5nIGEgc2lnbmlmaWNhbnQgcGVyZm9ybWFuY2UgcGVuYWxpdHkuCisjIElmIHRoZSBzeXN0ZW0gaGFzIGVub3VnaCBwaHlzaWNhbCBtZW1vcnkgaW5jcmVhc2luZyB0aGUgY2FjaGUgd2lsbCBpbXByb3ZlIHRoZQorIyBwZXJmb3JtYW5jZSBieSBrZWVwaW5nIG1vcmUgc3ltYm9scyBpbiBtZW1vcnkuIE5vdGUgdGhhdCB0aGUgdmFsdWUgd29ya3Mgb24KKyMgYSBsb2dhcml0aG1pYyBzY2FsZSBzbyBpbmNyZWFzaW5nIHRoZSBzaXplIGJ5IG9uZSB3aWxsIHJvdWdobHkgZG91YmxlIHRoZQorIyBtZW1vcnkgdXNhZ2UuIFRoZSBjYWNoZSBzaXplIGlzIGdpdmVuIGJ5IHRoaXMgZm9ybXVsYToKKyMgMl4oMTYrU1lNQk9MX0NBQ0hFX1NJWkUpLiBUaGUgdmFsaWQgcmFuZ2UgaXMgMC4uOSwgdGhlIGRlZmF1bHQgaXMgMCwKKyMgY29ycmVzcG9uZGluZyB0byBhIGNhY2hlIHNpemUgb2YgMl4xNiA9IDY1NTM2IHN5bWJvbHMKKworU1lNQk9MX0NBQ0hFX1NJWkUgICAgICA9IDAKKworIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIyBCdWlsZCByZWxhdGVkIGNvbmZpZ3VyYXRpb24gb3B0aW9ucworIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCisjIElmIHRoZSBFWFRSQUNUX0FMTCB0YWcgaXMgc2V0IHRvIFlFUyBkb3h5Z2VuIHdpbGwgYXNzdW1lIGFsbCBlbnRpdGllcyBpbgorIyBkb2N1bWVudGF0aW9uIGFyZSBkb2N1bWVudGVkLCBldmVuIGlmIG5vIGRvY3VtZW50YXRpb24gd2FzIGF2YWlsYWJsZS4KKyMgUHJpdmF0ZSBjbGFzcyBtZW1iZXJzIGFuZCBzdGF0aWMgZmlsZSBtZW1iZXJzIHdpbGwgYmUgaGlkZGVuIHVubGVzcworIyB0aGUgRVhUUkFDVF9QUklWQVRFIGFuZCBFWFRSQUNUX1NUQVRJQyB0YWdzIGFyZSBzZXQgdG8gWUVTCisKK0VYVFJBQ1RfQUxMICAgICAgICAgICAgPSBZRVMKKworIyBJZiB0aGUgRVhUUkFDVF9QUklWQVRFIHRhZyBpcyBzZXQgdG8gWUVTIGFsbCBwcml2YXRlIG1lbWJlcnMgb2YgYSBjbGFzcworIyB3aWxsIGJlIGluY2x1ZGVkIGluIHRoZSBkb2N1bWVudGF0aW9uLgorCitFWFRSQUNUX1BSSVZBVEUgICAgICAgID0gTk8KKworIyBJZiB0aGUgRVhUUkFDVF9TVEFUSUMgdGFnIGlzIHNldCB0byBZRVMgYWxsIHN0YXRpYyBtZW1iZXJzIG9mIGEgZmlsZQorIyB3aWxsIGJlIGluY2x1ZGVkIGluIHRoZSBkb2N1bWVudGF0aW9uLgorCitFWFRSQUNUX1NUQVRJQyAgICAgICAgID0gTk8KKworIyBJZiB0aGUgRVhUUkFDVF9MT0NBTF9DTEFTU0VTIHRhZyBpcyBzZXQgdG8gWUVTIGNsYXNzZXMgKGFuZCBzdHJ1Y3RzKQorIyBkZWZpbmVkIGxvY2FsbHkgaW4gc291cmNlIGZpbGVzIHdpbGwgYmUgaW5jbHVkZWQgaW4gdGhlIGRvY3VtZW50YXRpb24uCisjIElmIHNldCB0byBOTyBvbmx5IGNsYXNzZXMgZGVmaW5lZCBpbiBoZWFkZXIgZmlsZXMgYXJlIGluY2x1ZGVkLgorCitFWFRSQUNUX0xPQ0FMX0NMQVNTRVMgID0gWUVTCisKKyMgVGhpcyBmbGFnIGlzIG9ubHkgdXNlZnVsIGZvciBPYmplY3RpdmUtQyBjb2RlLiBXaGVuIHNldCB0byBZRVMgbG9jYWwKKyMgbWV0aG9kcywgd2hpY2ggYXJlIGRlZmluZWQgaW4gdGhlIGltcGxlbWVudGF0aW9uIHNlY3Rpb24gYnV0IG5vdCBpbgorIyB0aGUgaW50ZXJmYWNlIGFyZSBpbmNsdWRlZCBpbiB0aGUgZG9jdW1lbnRhdGlvbi4KKyMgSWYgc2V0IHRvIE5PICh0aGUgZGVmYXVsdCkgb25seSBtZXRob2RzIGluIHRoZSBpbnRlcmZhY2UgYXJlIGluY2x1ZGVkLgorCitFWFRSQUNUX0xPQ0FMX01FVEhPRFMgID0gTk8KKworIyBJZiB0aGlzIGZsYWcgaXMgc2V0IHRvIFlFUywgdGhlIG1lbWJlcnMgb2YgYW5vbnltb3VzIG5hbWVzcGFjZXMgd2lsbCBiZQorIyBleHRyYWN0ZWQgYW5kIGFwcGVhciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhcyBhIG5hbWVzcGFjZSBjYWxsZWQKKyMgJ2Fub255bW91c19uYW1lc3BhY2V7ZmlsZX0nLCB3aGVyZSBmaWxlIHdpbGwgYmUgcmVwbGFjZWQgd2l0aCB0aGUgYmFzZQorIyBuYW1lIG9mIHRoZSBmaWxlIHRoYXQgY29udGFpbnMgdGhlIGFub255bW91cyBuYW1lc3BhY2UuIEJ5IGRlZmF1bHQKKyMgYW5vbnltb3VzIG5hbWVzcGFjZSBhcmUgaGlkZGVuLgorCitFWFRSQUNUX0FOT05fTlNQQUNFUyAgID0gTk8KKworIyBJZiB0aGUgSElERV9VTkRPQ19NRU1CRVJTIHRhZyBpcyBzZXQgdG8gWUVTLCBEb3h5Z2VuIHdpbGwgaGlkZSBhbGwKKyMgdW5kb2N1bWVudGVkIG1lbWJlcnMgb2YgZG9jdW1lbnRlZCBjbGFzc2VzLCBmaWxlcyBvciBuYW1lc3BhY2VzLgorIyBJZiBzZXQgdG8gTk8gKHRoZSBkZWZhdWx0KSB0aGVzZSBtZW1iZXJzIHdpbGwgYmUgaW5jbHVkZWQgaW4gdGhlCisjIHZhcmlvdXMgb3ZlcnZpZXdzLCBidXQgbm8gZG9jdW1lbnRhdGlvbiBzZWN0aW9uIGlzIGdlbmVyYXRlZC4KKyMgVGhpcyBvcHRpb24gaGFzIG5vIGVmZmVjdCBpZiBFWFRSQUNUX0FMTCBpcyBlbmFibGVkLgorCitISURFX1VORE9DX01FTUJFUlMgICAgID0gTk8KKworIyBJZiB0aGUgSElERV9VTkRPQ19DTEFTU0VTIHRhZyBpcyBzZXQgdG8gWUVTLCBEb3h5Z2VuIHdpbGwgaGlkZSBhbGwKKyMgdW5kb2N1bWVudGVkIGNsYXNzZXMgdGhhdCBhcmUgbm9ybWFsbHkgdmlzaWJsZSBpbiB0aGUgY2xhc3MgaGllcmFyY2h5LgorIyBJZiBzZXQgdG8gTk8gKHRoZSBkZWZhdWx0KSB0aGVzZSBjbGFzc2VzIHdpbGwgYmUgaW5jbHVkZWQgaW4gdGhlIHZhcmlvdXMKKyMgb3ZlcnZpZXdzLiBUaGlzIG9wdGlvbiBoYXMgbm8gZWZmZWN0IGlmIEVYVFJBQ1RfQUxMIGlzIGVuYWJsZWQuCisKK0hJREVfVU5ET0NfQ0xBU1NFUyAgICAgPSBOTworCisjIElmIHRoZSBISURFX0ZSSUVORF9DT01QT1VORFMgdGFnIGlzIHNldCB0byBZRVMsIERveHlnZW4gd2lsbCBoaWRlIGFsbAorIyBmcmllbmQgKGNsYXNzfHN0cnVjdHx1bmlvbikgZGVjbGFyYXRpb25zLgorIyBJZiBzZXQgdG8gTk8gKHRoZSBkZWZhdWx0KSB0aGVzZSBkZWNsYXJhdGlvbnMgd2lsbCBiZSBpbmNsdWRlZCBpbiB0aGUKKyMgZG9jdW1lbnRhdGlvbi4KKworSElERV9GUklFTkRfQ09NUE9VTkRTICA9IE5PCisKKyMgSWYgdGhlIEhJREVfSU5fQk9EWV9ET0NTIHRhZyBpcyBzZXQgdG8gWUVTLCBEb3h5Z2VuIHdpbGwgaGlkZSBhbnkKKyMgZG9jdW1lbnRhdGlvbiBibG9ja3MgZm91bmQgaW5zaWRlIHRoZSBib2R5IG9mIGEgZnVuY3Rpb24uCisjIElmIHNldCB0byBOTyAodGhlIGRlZmF1bHQpIHRoZXNlIGJsb2NrcyB3aWxsIGJlIGFwcGVuZGVkIHRvIHRoZQorIyBmdW5jdGlvbidzIGRldGFpbGVkIGRvY3VtZW50YXRpb24gYmxvY2suCisKK0hJREVfSU5fQk9EWV9ET0NTICAgICAgPSBOTworCisjIFRoZSBJTlRFUk5BTF9ET0NTIHRhZyBkZXRlcm1pbmVzIGlmIGRvY3VtZW50YXRpb24KKyMgdGhhdCBpcyB0eXBlZCBhZnRlciBhIFxpbnRlcm5hbCBjb21tYW5kIGlzIGluY2x1ZGVkLiBJZiB0aGUgdGFnIGlzIHNldAorIyB0byBOTyAodGhlIGRlZmF1bHQpIHRoZW4gdGhlIGRvY3VtZW50YXRpb24gd2lsbCBiZSBleGNsdWRlZC4KKyMgU2V0IGl0IHRvIFlFUyB0byBpbmNsdWRlIHRoZSBpbnRlcm5hbCBkb2N1bWVudGF0aW9uLgorCitJTlRFUk5BTF9ET0NTICAgICAgICAgID0gTk8KKworIyBJZiB0aGUgQ0FTRV9TRU5TRV9OQU1FUyB0YWcgaXMgc2V0IHRvIE5PIHRoZW4gRG94eWdlbiB3aWxsIG9ubHkgZ2VuZXJhdGUKKyMgZmlsZSBuYW1lcyBpbiBsb3dlci1jYXNlIGxldHRlcnMuIElmIHNldCB0byBZRVMgdXBwZXItY2FzZSBsZXR0ZXJzIGFyZSBhbHNvCisjIGFsbG93ZWQuIFRoaXMgaXMgdXNlZnVsIGlmIHlvdSBoYXZlIGNsYXNzZXMgb3IgZmlsZXMgd2hvc2UgbmFtZXMgb25seSBkaWZmZXIKKyMgaW4gY2FzZSBhbmQgaWYgeW91ciBmaWxlIHN5c3RlbSBzdXBwb3J0cyBjYXNlIHNlbnNpdGl2ZSBmaWxlIG5hbWVzLiBXaW5kb3dzCisjIGFuZCBNYWMgdXNlcnMgYXJlIGFkdmlzZWQgdG8gc2V0IHRoaXMgb3B0aW9uIHRvIE5PLgorCitDQVNFX1NFTlNFX05BTUVTICAgICAgID0gWUVTCisKKyMgSWYgdGhlIEhJREVfU0NPUEVfTkFNRVMgdGFnIGlzIHNldCB0byBOTyAodGhlIGRlZmF1bHQpIHRoZW4gRG94eWdlbgorIyB3aWxsIHNob3cgbWVtYmVycyB3aXRoIHRoZWlyIGZ1bGwgY2xhc3MgYW5kIG5hbWVzcGFjZSBzY29wZXMgaW4gdGhlCisjIGRvY3VtZW50YXRpb24uIElmIHNldCB0byBZRVMgdGhlIHNjb3BlIHdpbGwgYmUgaGlkZGVuLgorCitISURFX1NDT1BFX05BTUVTICAgICAgID0gTk8KKworIyBJZiB0aGUgU0hPV19JTkNMVURFX0ZJTEVTIHRhZyBpcyBzZXQgdG8gWUVTICh0aGUgZGVmYXVsdCkgdGhlbiBEb3h5Z2VuCisjIHdpbGwgcHV0IGEgbGlzdCBvZiB0aGUgZmlsZXMgdGhhdCBhcmUgaW5jbHVkZWQgYnkgYSBmaWxlIGluIHRoZSBkb2N1bWVudGF0aW9uCisjIG9mIHRoYXQgZmlsZS4KKworU0hPV19JTkNMVURFX0ZJTEVTICAgICA9IFlFUworCisjIElmIHRoZSBJTkxJTkVfSU5GTyB0YWcgaXMgc2V0IHRvIFlFUyAodGhlIGRlZmF1bHQpIHRoZW4gYSB0YWcgW2lubGluZV0KKyMgaXMgaW5zZXJ0ZWQgaW4gdGhlIGRvY3VtZW50YXRpb24gZm9yIGlubGluZSBtZW1iZXJzLgorCitJTkxJTkVfSU5GTyAgICAgICAgICAgID0gWUVTCisKKyMgSWYgdGhlIFNPUlRfTUVNQkVSX0RPQ1MgdGFnIGlzIHNldCB0byBZRVMgKHRoZSBkZWZhdWx0KSB0aGVuIGRveHlnZW4KKyMgd2lsbCBzb3J0IHRoZSAoZGV0YWlsZWQpIGRvY3VtZW50YXRpb24gb2YgZmlsZSBhbmQgY2xhc3MgbWVtYmVycworIyBhbHBoYWJldGljYWxseSBieSBtZW1iZXIgbmFtZS4gSWYgc2V0IHRvIE5PIHRoZSBtZW1iZXJzIHdpbGwgYXBwZWFyIGluCisjIGRlY2xhcmF0aW9uIG9yZGVyLgorCitTT1JUX01FTUJFUl9ET0NTICAgICAgID0gWUVTCisKKyMgSWYgdGhlIFNPUlRfQlJJRUZfRE9DUyB0YWcgaXMgc2V0IHRvIFlFUyB0aGVuIGRveHlnZW4gd2lsbCBzb3J0IHRoZQorIyBicmllZiBkb2N1bWVudGF0aW9uIG9mIGZpbGUsIG5hbWVzcGFjZSBhbmQgY2xhc3MgbWVtYmVycyBhbHBoYWJldGljYWxseQorIyBieSBtZW1iZXIgbmFtZS4gSWYgc2V0IHRvIE5PICh0aGUgZGVmYXVsdCkgdGhlIG1lbWJlcnMgd2lsbCBhcHBlYXIgaW4KKyMgZGVjbGFyYXRpb24gb3JkZXIuCisKK1NPUlRfQlJJRUZfRE9DUyAgICAgICAgPSBOTworCisjIElmIHRoZSBTT1JUX01FTUJFUlNfQ1RPUlNfMVNUIHRhZyBpcyBzZXQgdG8gWUVTIHRoZW4gZG94eWdlbiB3aWxsIHNvcnQgdGhlIChicmllZiBhbmQgZGV0YWlsZWQpIGRvY3VtZW50YXRpb24gb2YgY2xhc3MgbWVtYmVycyBzbyB0aGF0IGNvbnN0cnVjdG9ycyBhbmQgZGVzdHJ1Y3RvcnMgYXJlIGxpc3RlZCBmaXJzdC4gSWYgc2V0IHRvIE5PICh0aGUgZGVmYXVsdCkgdGhlIGNvbnN0cnVjdG9ycyB3aWxsIGFwcGVhciBpbiB0aGUgcmVzcGVjdGl2ZSBvcmRlcnMgZGVmaW5lZCBieSBTT1JUX01FTUJFUl9ET0NTIGFuZCBTT1JUX0JSSUVGX0RPQ1MuIFRoaXMgdGFnIHdpbGwgYmUgaWdub3JlZCBmb3IgYnJpZWYgZG9jcyBpZiBTT1JUX0JSSUVGX0RPQ1MgaXMgc2V0IHRvIE5PIGFuZCBpZ25vcmVkIGZvciBkZXRhaWxlZCBkb2NzIGlmIFNPUlRfTUVNQkVSX0RPQ1MgaXMgc2V0IHRvIE5PLgorCitTT1JUX01FTUJFUlNfQ1RPUlNfMVNUID0gTk8KKworIyBJZiB0aGUgU09SVF9HUk9VUF9OQU1FUyB0YWcgaXMgc2V0IHRvIFlFUyB0aGVuIGRveHlnZW4gd2lsbCBzb3J0IHRoZQorIyBoaWVyYXJjaHkgb2YgZ3JvdXAgbmFtZXMgaW50byBhbHBoYWJldGljYWwgb3JkZXIuIElmIHNldCB0byBOTyAodGhlIGRlZmF1bHQpCisjIHRoZSBncm91cCBuYW1lcyB3aWxsIGFwcGVhciBpbiB0aGVpciBkZWZpbmVkIG9yZGVyLgorCitTT1JUX0dST1VQX05BTUVTICAgICAgID0gTk8KKworIyBJZiB0aGUgU09SVF9CWV9TQ09QRV9OQU1FIHRhZyBpcyBzZXQgdG8gWUVTLCB0aGUgY2xhc3MgbGlzdCB3aWxsIGJlCisjIHNvcnRlZCBieSBmdWxseS1xdWFsaWZpZWQgbmFtZXMsIGluY2x1ZGluZyBuYW1lc3BhY2VzLiBJZiBzZXQgdG8KKyMgTk8gKHRoZSBkZWZhdWx0KSwgdGhlIGNsYXNzIGxpc3Qgd2lsbCBiZSBzb3J0ZWQgb25seSBieSBjbGFzcyBuYW1lLAorIyBub3QgaW5jbHVkaW5nIHRoZSBuYW1lc3BhY2UgcGFydC4KKyMgTm90ZTogVGhpcyBvcHRpb24gaXMgbm90IHZlcnkgdXNlZnVsIGlmIEhJREVfU0NPUEVfTkFNRVMgaXMgc2V0IHRvIFlFUy4KKyMgTm90ZTogVGhpcyBvcHRpb24gYXBwbGllcyBvbmx5IHRvIHRoZSBjbGFzcyBsaXN0LCBub3QgdG8gdGhlCisjIGFscGhhYmV0aWNhbCBsaXN0LgorCitTT1JUX0JZX1NDT1BFX05BTUUgICAgID0gTk8KKworIyBUaGUgR0VORVJBVEVfVE9ET0xJU1QgdGFnIGNhbiBiZSB1c2VkIHRvIGVuYWJsZSAoWUVTKSBvcgorIyBkaXNhYmxlIChOTykgdGhlIHRvZG8gbGlzdC4gVGhpcyBsaXN0IGlzIGNyZWF0ZWQgYnkgcHV0dGluZyBcdG9kbworIyBjb21tYW5kcyBpbiB0aGUgZG9jdW1lbnRhdGlvbi4KKworR0VORVJBVEVfVE9ET0xJU1QgICAgICA9IFlFUworCisjIFRoZSBHRU5FUkFURV9URVNUTElTVCB0YWcgY2FuIGJlIHVzZWQgdG8gZW5hYmxlIChZRVMpIG9yCisjIGRpc2FibGUgKE5PKSB0aGUgdGVzdCBsaXN0LiBUaGlzIGxpc3QgaXMgY3JlYXRlZCBieSBwdXR0aW5nIFx0ZXN0CisjIGNvbW1hbmRzIGluIHRoZSBkb2N1bWVudGF0aW9uLgorCitHRU5FUkFURV9URVNUTElTVCAgICAgID0gWUVTCisKKyMgVGhlIEdFTkVSQVRFX0JVR0xJU1QgdGFnIGNhbiBiZSB1c2VkIHRvIGVuYWJsZSAoWUVTKSBvcgorIyBkaXNhYmxlIChOTykgdGhlIGJ1ZyBsaXN0LiBUaGlzIGxpc3QgaXMgY3JlYXRlZCBieSBwdXR0aW5nIFxidWcKKyMgY29tbWFuZHMgaW4gdGhlIGRvY3VtZW50YXRpb24uCisKK0dFTkVSQVRFX0JVR0xJU1QgICAgICAgPSBZRVMKKworIyBUaGUgR0VORVJBVEVfREVQUkVDQVRFRExJU1QgdGFnIGNhbiBiZSB1c2VkIHRvIGVuYWJsZSAoWUVTKSBvcgorIyBkaXNhYmxlIChOTykgdGhlIGRlcHJlY2F0ZWQgbGlzdC4gVGhpcyBsaXN0IGlzIGNyZWF0ZWQgYnkgcHV0dGluZworIyBcZGVwcmVjYXRlZCBjb21tYW5kcyBpbiB0aGUgZG9jdW1lbnRhdGlvbi4KKworR0VORVJBVEVfREVQUkVDQVRFRExJU1Q9IFlFUworCisjIFRoZSBFTkFCTEVEX1NFQ1RJT05TIHRhZyBjYW4gYmUgdXNlZCB0byBlbmFibGUgY29uZGl0aW9uYWwKKyMgZG9jdW1lbnRhdGlvbiBzZWN0aW9ucywgbWFya2VkIGJ5IFxpZiBzZWN0aW9ubmFtZSAuLi4gXGVuZGlmLgorCitFTkFCTEVEX1NFQ1RJT05TICAgICAgID0KKworIyBUaGUgTUFYX0lOSVRJQUxJWkVSX0xJTkVTIHRhZyBkZXRlcm1pbmVzIHRoZSBtYXhpbXVtIG51bWJlciBvZiBsaW5lcworIyB0aGUgaW5pdGlhbCB2YWx1ZSBvZiBhIHZhcmlhYmxlIG9yIGRlZmluZSBjb25zaXN0cyBvZiBmb3IgaXQgdG8gYXBwZWFyIGluCisjIHRoZSBkb2N1bWVudGF0aW9uLiBJZiB0aGUgaW5pdGlhbGl6ZXIgY29uc2lzdHMgb2YgbW9yZSBsaW5lcyB0aGFuIHNwZWNpZmllZAorIyBoZXJlIGl0IHdpbGwgYmUgaGlkZGVuLiBVc2UgYSB2YWx1ZSBvZiAwIHRvIGhpZGUgaW5pdGlhbGl6ZXJzIGNvbXBsZXRlbHkuCisjIFRoZSBhcHBlYXJhbmNlIG9mIHRoZSBpbml0aWFsaXplciBvZiBpbmRpdmlkdWFsIHZhcmlhYmxlcyBhbmQgZGVmaW5lcyBpbiB0aGUKKyMgZG9jdW1lbnRhdGlvbiBjYW4gYmUgY29udHJvbGxlZCB1c2luZyBcc2hvd2luaXRpYWxpemVyIG9yIFxoaWRlaW5pdGlhbGl6ZXIKKyMgY29tbWFuZCBpbiB0aGUgZG9jdW1lbnRhdGlvbiByZWdhcmRsZXNzIG9mIHRoaXMgc2V0dGluZy4KKworTUFYX0lOSVRJQUxJWkVSX0xJTkVTICA9IDMwCisKKyMgU2V0IHRoZSBTSE9XX1VTRURfRklMRVMgdGFnIHRvIE5PIHRvIGRpc2FibGUgdGhlIGxpc3Qgb2YgZmlsZXMgZ2VuZXJhdGVkCisjIGF0IHRoZSBib3R0b20gb2YgdGhlIGRvY3VtZW50YXRpb24gb2YgY2xhc3NlcyBhbmQgc3RydWN0cy4gSWYgc2V0IHRvIFlFUyB0aGUKKyMgbGlzdCB3aWxsIG1lbnRpb24gdGhlIGZpbGVzIHRoYXQgd2VyZSB1c2VkIHRvIGdlbmVyYXRlIHRoZSBkb2N1bWVudGF0aW9uLgorCitTSE9XX1VTRURfRklMRVMgICAgICAgID0gWUVTCisKKyMgSWYgdGhlIHNvdXJjZXMgaW4geW91ciBwcm9qZWN0IGFyZSBkaXN0cmlidXRlZCBvdmVyIG11bHRpcGxlIGRpcmVjdG9yaWVzCisjIHRoZW4gc2V0dGluZyB0aGUgU0hPV19ESVJFQ1RPUklFUyB0YWcgdG8gWUVTIHdpbGwgc2hvdyB0aGUgZGlyZWN0b3J5IGhpZXJhcmNoeQorIyBpbiB0aGUgZG9jdW1lbnRhdGlvbi4gVGhlIGRlZmF1bHQgaXMgTk8uCisKK1NIT1dfRElSRUNUT1JJRVMgICAgICAgPSBOTworCisjIFNldCB0aGUgU0hPV19GSUxFUyB0YWcgdG8gTk8gdG8gZGlzYWJsZSB0aGUgZ2VuZXJhdGlvbiBvZiB0aGUgRmlsZXMgcGFnZS4KKyMgVGhpcyB3aWxsIHJlbW92ZSB0aGUgRmlsZXMgZW50cnkgZnJvbSB0aGUgUXVpY2sgSW5kZXggYW5kIGZyb20gdGhlCisjIEZvbGRlciBUcmVlIFZpZXcgKGlmIHNwZWNpZmllZCkuIFRoZSBkZWZhdWx0IGlzIFlFUy4KKworU0hPV19GSUxFUyAgICAgICAgICAgICA9IFlFUworCisjIFNldCB0aGUgU0hPV19OQU1FU1BBQ0VTIHRhZyB0byBOTyB0byBkaXNhYmxlIHRoZSBnZW5lcmF0aW9uIG9mIHRoZQorIyBOYW1lc3BhY2VzIHBhZ2UuCisjIFRoaXMgd2lsbCByZW1vdmUgdGhlIE5hbWVzcGFjZXMgZW50cnkgZnJvbSB0aGUgUXVpY2sgSW5kZXgKKyMgYW5kIGZyb20gdGhlIEZvbGRlciBUcmVlIFZpZXcgKGlmIHNwZWNpZmllZCkuIFRoZSBkZWZhdWx0IGlzIFlFUy4KKworU0hPV19OQU1FU1BBQ0VTICAgICAgICA9IFlFUworCisjIFRoZSBGSUxFX1ZFUlNJT05fRklMVEVSIHRhZyBjYW4gYmUgdXNlZCB0byBzcGVjaWZ5IGEgcHJvZ3JhbSBvciBzY3JpcHQgdGhhdAorIyBkb3h5Z2VuIHNob3VsZCBpbnZva2UgdG8gZ2V0IHRoZSBjdXJyZW50IHZlcnNpb24gZm9yIGVhY2ggZmlsZSAodHlwaWNhbGx5IGZyb20KKyMgdGhlIHZlcnNpb24gY29udHJvbCBzeXN0ZW0pLiBEb3h5Z2VuIHdpbGwgaW52b2tlIHRoZSBwcm9ncmFtIGJ5IGV4ZWN1dGluZyAodmlhCisjIHBvcGVuKCkpIHRoZSBjb21tYW5kIDxjb21tYW5kPiA8aW5wdXQtZmlsZT4sIHdoZXJlIDxjb21tYW5kPiBpcyB0aGUgdmFsdWUgb2YKKyMgdGhlIEZJTEVfVkVSU0lPTl9GSUxURVIgdGFnLCBhbmQgPGlucHV0LWZpbGU+IGlzIHRoZSBuYW1lIG9mIGFuIGlucHV0IGZpbGUKKyMgcHJvdmlkZWQgYnkgZG94eWdlbi4gV2hhdGV2ZXIgdGhlIHByb2dyYW0gd3JpdGVzIHRvIHN0YW5kYXJkIG91dHB1dAorIyBpcyB1c2VkIGFzIHRoZSBmaWxlIHZlcnNpb24uIFNlZSB0aGUgbWFudWFsIGZvciBleGFtcGxlcy4KKworRklMRV9WRVJTSU9OX0ZJTFRFUiAgICA9ICJnaXQgbG9nIC1uIDEgLS1wcmV0dHk9Zm9ybWF0OiVoIgorCisjIFRoZSBMQVlPVVRfRklMRSB0YWcgY2FuIGJlIHVzZWQgdG8gc3BlY2lmeSBhIGxheW91dCBmaWxlIHdoaWNoIHdpbGwgYmUgcGFyc2VkIGJ5CisjIGRveHlnZW4uIFRoZSBsYXlvdXQgZmlsZSBjb250cm9scyB0aGUgZ2xvYmFsIHN0cnVjdHVyZSBvZiB0aGUgZ2VuZXJhdGVkIG91dHB1dCBmaWxlcworIyBpbiBhbiBvdXRwdXQgZm9ybWF0IGluZGVwZW5kZW50IHdheS4gVGhlIGNyZWF0ZSB0aGUgbGF5b3V0IGZpbGUgdGhhdCByZXByZXNlbnRzCisjIGRveHlnZW4ncyBkZWZhdWx0cywgcnVuIGRveHlnZW4gd2l0aCB0aGUgLWwgb3B0aW9uLiBZb3UgY2FuIG9wdGlvbmFsbHkgc3BlY2lmeSBhCisjIGZpbGUgbmFtZSBhZnRlciB0aGUgb3B0aW9uLCBpZiBvbWl0dGVkIERveHlnZW5MYXlvdXQueG1sIHdpbGwgYmUgdXNlZCBhcyB0aGUgbmFtZQorIyBvZiB0aGUgbGF5b3V0IGZpbGUuCisKK0xBWU9VVF9GSUxFICAgICAgICAgICAgPQorCisjLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisjIGNvbmZpZ3VyYXRpb24gb3B0aW9ucyByZWxhdGVkIHRvIHdhcm5pbmcgYW5kIHByb2dyZXNzIG1lc3NhZ2VzCisjLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKKyMgVGhlIFFVSUVUIHRhZyBjYW4gYmUgdXNlZCB0byB0dXJuIG9uL29mZiB0aGUgbWVzc2FnZXMgdGhhdCBhcmUgZ2VuZXJhdGVkCisjIGJ5IGRveHlnZW4uIFBvc3NpYmxlIHZhbHVlcyBhcmUgWUVTIGFuZCBOTy4gSWYgbGVmdCBibGFuayBOTyBpcyB1c2VkLgorCitRVUlFVCAgICAgICAgICAgICAgICAgID0gWUVTCisKKyMgVGhlIFdBUk5JTkdTIHRhZyBjYW4gYmUgdXNlZCB0byB0dXJuIG9uL29mZiB0aGUgd2FybmluZyBtZXNzYWdlcyB0aGF0IGFyZQorIyBnZW5lcmF0ZWQgYnkgZG94eWdlbi4gUG9zc2libGUgdmFsdWVzIGFyZSBZRVMgYW5kIE5PLiBJZiBsZWZ0IGJsYW5rCisjIE5PIGlzIHVzZWQuCisKK1dBUk5JTkdTICAgICAgICAgICAgICAgPSBZRVMKKworIyBJZiBXQVJOX0lGX1VORE9DVU1FTlRFRCBpcyBzZXQgdG8gWUVTLCB0aGVuIGRveHlnZW4gd2lsbCBnZW5lcmF0ZSB3YXJuaW5ncworIyBmb3IgdW5kb2N1bWVudGVkIG1lbWJlcnMuIElmIEVYVFJBQ1RfQUxMIGlzIHNldCB0byBZRVMgdGhlbiB0aGlzIGZsYWcgd2lsbAorIyBhdXRvbWF0aWNhbGx5IGJlIGRpc2FibGVkLgorCitXQVJOX0lGX1VORE9DVU1FTlRFRCAgID0gWUVTCisKKyMgSWYgV0FSTl9JRl9ET0NfRVJST1IgaXMgc2V0IHRvIFlFUywgZG94eWdlbiB3aWxsIGdlbmVyYXRlIHdhcm5pbmdzIGZvcgorIyBwb3RlbnRpYWwgZXJyb3JzIGluIHRoZSBkb2N1bWVudGF0aW9uLCBzdWNoIGFzIG5vdCBkb2N1bWVudGluZyBzb21lCisjIHBhcmFtZXRlcnMgaW4gYSBkb2N1bWVudGVkIGZ1bmN0aW9uLCBvciBkb2N1bWVudGluZyBwYXJhbWV0ZXJzIHRoYXQKKyMgZG9uJ3QgZXhpc3Qgb3IgdXNpbmcgbWFya3VwIGNvbW1hbmRzIHdyb25nbHkuCisKK1dBUk5fSUZfRE9DX0VSUk9SICAgICAgPSBZRVMKKworIyBUaGlzIFdBUk5fTk9fUEFSQU1ET0Mgb3B0aW9uIGNhbiBiZSBhYmxlZCB0byBnZXQgd2FybmluZ3MgZm9yCisjIGZ1bmN0aW9ucyB0aGF0IGFyZSBkb2N1bWVudGVkLCBidXQgaGF2ZSBubyBkb2N1bWVudGF0aW9uIGZvciB0aGVpciBwYXJhbWV0ZXJzCisjIG9yIHJldHVybiB2YWx1ZS4gSWYgc2V0IHRvIE5PICh0aGUgZGVmYXVsdCkgZG94eWdlbiB3aWxsIG9ubHkgd2FybiBhYm91dAorIyB3cm9uZyBvciBpbmNvbXBsZXRlIHBhcmFtZXRlciBkb2N1bWVudGF0aW9uLCBidXQgbm90IGFib3V0IHRoZSBhYnNlbmNlIG9mCisjIGRvY3VtZW50YXRpb24uCisKK1dBUk5fTk9fUEFSQU1ET0MgICAgICAgPSBOTworCisjIFRoZSBXQVJOX0ZPUk1BVCB0YWcgZGV0ZXJtaW5lcyB0aGUgZm9ybWF0IG9mIHRoZSB3YXJuaW5nIG1lc3NhZ2VzIHRoYXQKKyMgZG94eWdlbiBjYW4gcHJvZHVjZS4gVGhlIHN0cmluZyBzaG91bGQgY29udGFpbiB0aGUgJGZpbGUsICRsaW5lLCBhbmQgJHRleHQKKyMgdGFncywgd2hpY2ggd2lsbCBiZSByZXBsYWNlZCBieSB0aGUgZmlsZSBhbmQgbGluZSBudW1iZXIgZnJvbSB3aGljaCB0aGUKKyMgd2FybmluZyBvcmlnaW5hdGVkIGFuZCB0aGUgd2FybmluZyB0ZXh0LiBPcHRpb25hbGx5IHRoZSBmb3JtYXQgbWF5IGNvbnRhaW4KKyMgJHZlcnNpb24sIHdoaWNoIHdpbGwgYmUgcmVwbGFjZWQgYnkgdGhlIHZlcnNpb24gb2YgdGhlIGZpbGUgKGlmIGl0IGNvdWxkCisjIGJlIG9idGFpbmVkIHZpYSBGSUxFX1ZFUlNJT05fRklMVEVSKQorCitXQVJOX0ZPUk1BVCAgICAgICAgICAgID0gIiRmaWxlOiRsaW5lOiAkdGV4dCIKKworIyBUaGUgV0FSTl9MT0dGSUxFIHRhZyBjYW4gYmUgdXNlZCB0byBzcGVjaWZ5IGEgZmlsZSB0byB3aGljaCB3YXJuaW5nCisjIGFuZCBlcnJvciBtZXNzYWdlcyBzaG91bGQgYmUgd3JpdHRlbi4gSWYgbGVmdCBibGFuayB0aGUgb3V0cHV0IGlzIHdyaXR0ZW4KKyMgdG8gc3RkZXJyLgorCitXQVJOX0xPR0ZJTEUgICAgICAgICAgID0KKworIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIyBjb25maWd1cmF0aW9uIG9wdGlvbnMgcmVsYXRlZCB0byB0aGUgaW5wdXQgZmlsZXMKKyMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworIyBUaGUgSU5QVVQgdGFnIGNhbiBiZSB1c2VkIHRvIHNwZWNpZnkgdGhlIGZpbGVzIGFuZC9vciBkaXJlY3RvcmllcyB0aGF0IGNvbnRhaW4KKyMgZG9jdW1lbnRlZCBzb3VyY2UgZmlsZXMuIFlvdSBtYXkgZW50ZXIgZmlsZSBuYW1lcyBsaWtlICJteWZpbGUuY3BwIiBvcgorIyBkaXJlY3RvcmllcyBsaWtlICIvdXNyL3NyYy9teXByb2plY3QiLiBTZXBhcmF0ZSB0aGUgZmlsZXMgb3IgZGlyZWN0b3JpZXMKKyMgd2l0aCBzcGFjZXMuCisKK0lOUFVUICAgICAgICAgICAgICAgICAgPSBsaWIvZHBrZyBcCisgICAgICAgICAgICAgICAgICAgICAgICAgZHBrZy1kZWIgXAorICAgICAgICAgICAgICAgICAgICAgICAgIGRwa2ctc3BsaXQgXAorICAgICAgICAgICAgICAgICAgICAgICAgIHNyYyBcCisgICAgICAgICAgICAgICAgICAgICAgICAgdXRpbHMKKworIyBUaGlzIHRhZyBjYW4gYmUgdXNlZCB0byBzcGVjaWZ5IHRoZSBjaGFyYWN0ZXIgZW5jb2Rpbmcgb2YgdGhlIHNvdXJjZSBmaWxlcworIyB0aGF0IGRveHlnZW4gcGFyc2VzLiBJbnRlcm5hbGx5IGRveHlnZW4gdXNlcyB0aGUgVVRGLTggZW5jb2RpbmcsIHdoaWNoIGlzCisjIGFsc28gdGhlIGRlZmF1bHQgaW5wdXQgZW5jb2RpbmcuIERveHlnZW4gdXNlcyBsaWJpY29udiAob3IgdGhlIGljb252IGJ1aWx0CisjIGludG8gbGliYykgZm9yIHRoZSB0cmFuc2NvZGluZy4gU2VlIGh0dHA6Ly93d3cuZ251Lm9yZy9zb2Z0d2FyZS9saWJpY29udiBmb3IKKyMgdGhlIGxpc3Qgb2YgcG9zc2libGUgZW5jb2RpbmdzLgorCitJTlBVVF9FTkNPRElORyAgICAgICAgID0gVVRGLTgKKworIyBJZiB0aGUgdmFsdWUgb2YgdGhlIElOUFVUIHRhZyBjb250YWlucyBkaXJlY3RvcmllcywgeW91IGNhbiB1c2UgdGhlCisjIEZJTEVfUEFUVEVSTlMgdGFnIHRvIHNwZWNpZnkgb25lIG9yIG1vcmUgd2lsZGNhcmQgcGF0dGVybiAobGlrZSAqLmNwcAorIyBhbmQgKi5oKSB0byBmaWx0ZXIgb3V0IHRoZSBzb3VyY2UtZmlsZXMgaW4gdGhlIGRpcmVjdG9yaWVzLiBJZiBsZWZ0CisjIGJsYW5rIHRoZSBmb2xsb3dpbmcgcGF0dGVybnMgYXJlIHRlc3RlZDoKKyMgKi5jICouY2MgKi5jeHggKi5jcHAgKi5jKysgKi5qYXZhICouaWkgKi5peHggKi5pcHAgKi5pKysgKi5pbmwgKi5oICouaGggKi5oeHgKKyMgKi5ocHAgKi5oKysgKi5pZGwgKi5vZGwgKi5jcyAqLnBocCAqLnBocDMgKi5pbmMgKi5tICoubW0gKi5weSAqLmY5MAorCitGSUxFX1BBVFRFUk5TICAgICAgICAgID0gKi5jIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAqLmggXAorICAgICAgICAgICAgICAgICAgICAgICAgICoubAorCisjIFRoZSBSRUNVUlNJVkUgdGFnIGNhbiBiZSB1c2VkIHRvIHR1cm4gc3BlY2lmeSB3aGV0aGVyIG9yIG5vdCBzdWJkaXJlY3RvcmllcworIyBzaG91bGQgYmUgc2VhcmNoZWQgZm9yIGlucHV0IGZpbGVzIGFzIHdlbGwuIFBvc3NpYmxlIHZhbHVlcyBhcmUgWUVTIGFuZCBOTy4KKyMgSWYgbGVmdCBibGFuayBOTyBpcyB1c2VkLgorCitSRUNVUlNJVkUgICAgICAgICAgICAgID0gWUVTCisKKyMgVGhlIEVYQ0xVREUgdGFnIGNhbiBiZSB1c2VkIHRvIHNwZWNpZnkgZmlsZXMgYW5kL29yIGRpcmVjdG9yaWVzIHRoYXQgc2hvdWxkCisjIGV4Y2x1ZGVkIGZyb20gdGhlIElOUFVUIHNvdXJjZSBmaWxlcy4gVGhpcyB3YXkgeW91IGNhbiBlYXNpbHkgZXhjbHVkZSBhCisjIHN1YmRpcmVjdG9yeSBmcm9tIGEgZGlyZWN0b3J5IHRyZWUgd2hvc2Ugcm9vdCBpcyBzcGVjaWZpZWQgd2l0aCB0aGUgSU5QVVQgdGFnLgorCitFWENMVURFICAgICAgICAgICAgICAgID0gbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmMKKworIyBUaGUgRVhDTFVERV9TWU1MSU5LUyB0YWcgY2FuIGJlIHVzZWQgc2VsZWN0IHdoZXRoZXIgb3Igbm90IGZpbGVzIG9yCisjIGRpcmVjdG9yaWVzIHRoYXQgYXJlIHN5bWJvbGljIGxpbmtzIChhIFVuaXggZmlsZXN5c3RlbSBmZWF0dXJlKSBhcmUgZXhjbHVkZWQKKyMgZnJvbSB0aGUgaW5wdXQuCisKK0VYQ0xVREVfU1lNTElOS1MgICAgICAgPSBOTworCisjIElmIHRoZSB2YWx1ZSBvZiB0aGUgSU5QVVQgdGFnIGNvbnRhaW5zIGRpcmVjdG9yaWVzLCB5b3UgY2FuIHVzZSB0aGUKKyMgRVhDTFVERV9QQVRURVJOUyB0YWcgdG8gc3BlY2lmeSBvbmUgb3IgbW9yZSB3aWxkY2FyZCBwYXR0ZXJucyB0byBleGNsdWRlCisjIGNlcnRhaW4gZmlsZXMgZnJvbSB0aG9zZSBkaXJlY3Rvcmllcy4gTm90ZSB0aGF0IHRoZSB3aWxkY2FyZHMgYXJlIG1hdGNoZWQKKyMgYWdhaW5zdCB0aGUgZmlsZSB3aXRoIGFic29sdXRlIHBhdGgsIHNvIHRvIGV4Y2x1ZGUgYWxsIHRlc3QgZGlyZWN0b3JpZXMKKyMgZm9yIGV4YW1wbGUgdXNlIHRoZSBwYXR0ZXJuICovdGVzdC8qCisKK0VYQ0xVREVfUEFUVEVSTlMgICAgICAgPSAqL3Rlc3QvKgorCisjIFRoZSBFWENMVURFX1NZTUJPTFMgdGFnIGNhbiBiZSB1c2VkIHRvIHNwZWNpZnkgb25lIG9yIG1vcmUgc3ltYm9sIG5hbWVzCisjIChuYW1lc3BhY2VzLCBjbGFzc2VzLCBmdW5jdGlvbnMsIGV0Yy4pIHRoYXQgc2hvdWxkIGJlIGV4Y2x1ZGVkIGZyb20gdGhlCisjIG91dHB1dC4gVGhlIHN5bWJvbCBuYW1lIGNhbiBiZSBhIGZ1bGx5IHF1YWxpZmllZCBuYW1lLCBhIHdvcmQsIG9yIGlmIHRoZQorIyB3aWxkY2FyZCAqIGlzIHVzZWQsIGEgc3Vic3RyaW5nLiBFeGFtcGxlczogQU5hbWVzcGFjZSwgQUNsYXNzLAorIyBBQ2xhc3M6OkFOYW1lc3BhY2UsIEFOYW1lc3BhY2U6OipUZXN0CisKK0VYQ0xVREVfU1lNQk9MUyAgICAgICAgPQorCisjIFRoZSBFWEFNUExFX1BBVEggdGFnIGNhbiBiZSB1c2VkIHRvIHNwZWNpZnkgb25lIG9yIG1vcmUgZmlsZXMgb3IKKyMgZGlyZWN0b3JpZXMgdGhhdCBjb250YWluIGV4YW1wbGUgY29kZSBmcmFnbWVudHMgdGhhdCBhcmUgaW5jbHVkZWQgKHNlZQorIyB0aGUgXGluY2x1ZGUgY29tbWFuZCkuCisKK0VYQU1QTEVfUEFUSCAgICAgICAgICAgPQorCisjIElmIHRoZSB2YWx1ZSBvZiB0aGUgRVhBTVBMRV9QQVRIIHRhZyBjb250YWlucyBkaXJlY3RvcmllcywgeW91IGNhbiB1c2UgdGhlCisjIEVYQU1QTEVfUEFUVEVSTlMgdGFnIHRvIHNwZWNpZnkgb25lIG9yIG1vcmUgd2lsZGNhcmQgcGF0dGVybiAobGlrZSAqLmNwcAorIyBhbmQgKi5oKSB0byBmaWx0ZXIgb3V0IHRoZSBzb3VyY2UtZmlsZXMgaW4gdGhlIGRpcmVjdG9yaWVzLiBJZiBsZWZ0CisjIGJsYW5rIGFsbCBmaWxlcyBhcmUgaW5jbHVkZWQuCisKK0VYQU1QTEVfUEFUVEVSTlMgICAgICAgPQorCisjIElmIHRoZSBFWEFNUExFX1JFQ1VSU0lWRSB0YWcgaXMgc2V0IHRvIFlFUyB0aGVuIHN1YmRpcmVjdG9yaWVzIHdpbGwgYmUKKyMgc2VhcmNoZWQgZm9yIGlucHV0IGZpbGVzIHRvIGJlIHVzZWQgd2l0aCB0aGUgXGluY2x1ZGUgb3IgXGRvbnRpbmNsdWRlCisjIGNvbW1hbmRzIGlycmVzcGVjdGl2ZSBvZiB0aGUgdmFsdWUgb2YgdGhlIFJFQ1VSU0lWRSB0YWcuCisjIFBvc3NpYmxlIHZhbHVlcyBhcmUgWUVTIGFuZCBOTy4gSWYgbGVmdCBibGFuayBOTyBpcyB1c2VkLgorCitFWEFNUExFX1JFQ1VSU0lWRSAgICAgID0gTk8KKworIyBUaGUgSU1BR0VfUEFUSCB0YWcgY2FuIGJlIHVzZWQgdG8gc3BlY2lmeSBvbmUgb3IgbW9yZSBmaWxlcyBvcgorIyBkaXJlY3RvcmllcyB0aGF0IGNvbnRhaW4gaW1hZ2UgdGhhdCBhcmUgaW5jbHVkZWQgaW4gdGhlIGRvY3VtZW50YXRpb24gKHNlZQorIyB0aGUgXGltYWdlIGNvbW1hbmQpLgorCitJTUFHRV9QQVRIICAgICAgICAgICAgID0KKworIyBUaGUgSU5QVVRfRklMVEVSIHRhZyBjYW4gYmUgdXNlZCB0byBzcGVjaWZ5IGEgcHJvZ3JhbSB0aGF0IGRveHlnZW4gc2hvdWxkCisjIGludm9rZSB0byBmaWx0ZXIgZm9yIGVhY2ggaW5wdXQgZmlsZS4gRG94eWdlbiB3aWxsIGludm9rZSB0aGUgZmlsdGVyIHByb2dyYW0KKyMgYnkgZXhlY3V0aW5nICh2aWEgcG9wZW4oKSkgdGhlIGNvbW1hbmQgPGZpbHRlcj4gPGlucHV0LWZpbGU+LCB3aGVyZSA8ZmlsdGVyPgorIyBpcyB0aGUgdmFsdWUgb2YgdGhlIElOUFVUX0ZJTFRFUiB0YWcsIGFuZCA8aW5wdXQtZmlsZT4gaXMgdGhlIG5hbWUgb2YgYW4KKyMgaW5wdXQgZmlsZS4gRG94eWdlbiB3aWxsIHRoZW4gdXNlIHRoZSBvdXRwdXQgdGhhdCB0aGUgZmlsdGVyIHByb2dyYW0gd3JpdGVzCisjIHRvIHN0YW5kYXJkIG91dHB1dC4KKyMgSWYgRklMVEVSX1BBVFRFUk5TIGlzIHNwZWNpZmllZCwgdGhpcyB0YWcgd2lsbCBiZQorIyBpZ25vcmVkLgorCitJTlBVVF9GSUxURVIgICAgICAgICAgID0KKworIyBUaGUgRklMVEVSX1BBVFRFUk5TIHRhZyBjYW4gYmUgdXNlZCB0byBzcGVjaWZ5IGZpbHRlcnMgb24gYSBwZXIgZmlsZSBwYXR0ZXJuCisjIGJhc2lzLgorIyBEb3h5Z2VuIHdpbGwgY29tcGFyZSB0aGUgZmlsZSBuYW1lIHdpdGggZWFjaCBwYXR0ZXJuIGFuZCBhcHBseSB0aGUKKyMgZmlsdGVyIGlmIHRoZXJlIGlzIGEgbWF0Y2guCisjIFRoZSBmaWx0ZXJzIGFyZSBhIGxpc3Qgb2YgdGhlIGZvcm06CisjIHBhdHRlcm49ZmlsdGVyIChsaWtlICouY3BwPW15X2NwcF9maWx0ZXIpLiBTZWUgSU5QVVRfRklMVEVSIGZvciBmdXJ0aGVyCisjIGluZm8gb24gaG93IGZpbHRlcnMgYXJlIHVzZWQuIElmIEZJTFRFUl9QQVRURVJOUyBpcyBlbXB0eSwgSU5QVVRfRklMVEVSCisjIGlzIGFwcGxpZWQgdG8gYWxsIGZpbGVzLgorCitGSUxURVJfUEFUVEVSTlMgICAgICAgID0KKworIyBJZiB0aGUgRklMVEVSX1NPVVJDRV9GSUxFUyB0YWcgaXMgc2V0IHRvIFlFUywgdGhlIGlucHV0IGZpbHRlciAoaWYgc2V0IHVzaW5nCisjIElOUFVUX0ZJTFRFUikgd2lsbCBiZSB1c2VkIHRvIGZpbHRlciB0aGUgaW5wdXQgZmlsZXMgd2hlbiBwcm9kdWNpbmcgc291cmNlCisjIGZpbGVzIHRvIGJyb3dzZSAoaS5lLiB3aGVuIFNPVVJDRV9CUk9XU0VSIGlzIHNldCB0byBZRVMpLgorCitGSUxURVJfU09VUkNFX0ZJTEVTICAgID0gTk8KKworIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIyBjb25maWd1cmF0aW9uIG9wdGlvbnMgcmVsYXRlZCB0byBzb3VyY2UgYnJvd3NpbmcKKyMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworIyBJZiB0aGUgU09VUkNFX0JST1dTRVIgdGFnIGlzIHNldCB0byBZRVMgdGhlbiBhIGxpc3Qgb2Ygc291cmNlIGZpbGVzIHdpbGwKKyMgYmUgZ2VuZXJhdGVkLiBEb2N1bWVudGVkIGVudGl0aWVzIHdpbGwgYmUgY3Jvc3MtcmVmZXJlbmNlZCB3aXRoIHRoZXNlIHNvdXJjZXMuCisjIE5vdGU6IFRvIGdldCByaWQgb2YgYWxsIHNvdXJjZSBjb2RlIGluIHRoZSBnZW5lcmF0ZWQgb3V0cHV0LCBtYWtlIHN1cmUgYWxzbworIyBWRVJCQVRJTV9IRUFERVJTIGlzIHNldCB0byBOTy4KKworU09VUkNFX0JST1dTRVIgICAgICAgICA9IE5PCisKKyMgU2V0dGluZyB0aGUgSU5MSU5FX1NPVVJDRVMgdGFnIHRvIFlFUyB3aWxsIGluY2x1ZGUgdGhlIGJvZHkKKyMgb2YgZnVuY3Rpb25zIGFuZCBjbGFzc2VzIGRpcmVjdGx5IGluIHRoZSBkb2N1bWVudGF0aW9uLgorCitJTkxJTkVfU09VUkNFUyAgICAgICAgID0gTk8KKworIyBTZXR0aW5nIHRoZSBTVFJJUF9DT0RFX0NPTU1FTlRTIHRhZyB0byBZRVMgKHRoZSBkZWZhdWx0KSB3aWxsIGluc3RydWN0CisjIGRveHlnZW4gdG8gaGlkZSBhbnkgc3BlY2lhbCBjb21tZW50IGJsb2NrcyBmcm9tIGdlbmVyYXRlZCBzb3VyY2UgY29kZQorIyBmcmFnbWVudHMuIE5vcm1hbCBDIGFuZCBDKysgY29tbWVudHMgd2lsbCBhbHdheXMgcmVtYWluIHZpc2libGUuCisKK1NUUklQX0NPREVfQ09NTUVOVFMgICAgPSBZRVMKKworIyBJZiB0aGUgUkVGRVJFTkNFRF9CWV9SRUxBVElPTiB0YWcgaXMgc2V0IHRvIFlFUworIyB0aGVuIGZvciBlYWNoIGRvY3VtZW50ZWQgZnVuY3Rpb24gYWxsIGRvY3VtZW50ZWQKKyMgZnVuY3Rpb25zIHJlZmVyZW5jaW5nIGl0IHdpbGwgYmUgbGlzdGVkLgorCitSRUZFUkVOQ0VEX0JZX1JFTEFUSU9OID0gWUVTCisKKyMgSWYgdGhlIFJFRkVSRU5DRVNfUkVMQVRJT04gdGFnIGlzIHNldCB0byBZRVMKKyMgdGhlbiBmb3IgZWFjaCBkb2N1bWVudGVkIGZ1bmN0aW9uIGFsbCBkb2N1bWVudGVkIGVudGl0aWVzCisjIGNhbGxlZC91c2VkIGJ5IHRoYXQgZnVuY3Rpb24gd2lsbCBiZSBsaXN0ZWQuCisKK1JFRkVSRU5DRVNfUkVMQVRJT04gICAgPSBZRVMKKworIyBJZiB0aGUgUkVGRVJFTkNFU19MSU5LX1NPVVJDRSB0YWcgaXMgc2V0IHRvIFlFUyAodGhlIGRlZmF1bHQpCisjIGFuZCBTT1VSQ0VfQlJPV1NFUiB0YWcgaXMgc2V0IHRvIFlFUywgdGhlbiB0aGUgaHlwZXJsaW5rcyBmcm9tCisjIGZ1bmN0aW9ucyBpbiBSRUZFUkVOQ0VTX1JFTEFUSU9OIGFuZCBSRUZFUkVOQ0VEX0JZX1JFTEFUSU9OIGxpc3RzIHdpbGwKKyMgbGluayB0byB0aGUgc291cmNlIGNvZGUuCisjIE90aGVyd2lzZSB0aGV5IHdpbGwgbGluayB0byB0aGUgZG9jdW1lbnRhdGlvbi4KKworUkVGRVJFTkNFU19MSU5LX1NPVVJDRSA9IFlFUworCisjIElmIHRoZSBVU0VfSFRBR1MgdGFnIGlzIHNldCB0byBZRVMgdGhlbiB0aGUgcmVmZXJlbmNlcyB0byBzb3VyY2UgY29kZQorIyB3aWxsIHBvaW50IHRvIHRoZSBIVE1MIGdlbmVyYXRlZCBieSB0aGUgaHRhZ3MoMSkgdG9vbCBpbnN0ZWFkIG9mIGRveHlnZW4KKyMgYnVpbHQtaW4gc291cmNlIGJyb3dzZXIuIFRoZSBodGFncyB0b29sIGlzIHBhcnQgb2YgR05VJ3MgZ2xvYmFsIHNvdXJjZQorIyB0YWdnaW5nIHN5c3RlbSAoc2VlIGh0dHA6Ly93d3cuZ251Lm9yZy9zb2Z0d2FyZS9nbG9iYWwvZ2xvYmFsLmh0bWwpLiBZb3UKKyMgd2lsbCBuZWVkIHZlcnNpb24gNC44LjYgb3IgaGlnaGVyLgorCitVU0VfSFRBR1MgICAgICAgICAgICAgID0gTk8KKworIyBJZiB0aGUgVkVSQkFUSU1fSEVBREVSUyB0YWcgaXMgc2V0IHRvIFlFUyAodGhlIGRlZmF1bHQpIHRoZW4gRG94eWdlbgorIyB3aWxsIGdlbmVyYXRlIGEgdmVyYmF0aW0gY29weSBvZiB0aGUgaGVhZGVyIGZpbGUgZm9yIGVhY2ggY2xhc3MgZm9yCisjIHdoaWNoIGFuIGluY2x1ZGUgaXMgc3BlY2lmaWVkLiBTZXQgdG8gTk8gdG8gZGlzYWJsZSB0aGlzLgorCitWRVJCQVRJTV9IRUFERVJTICAgICAgID0gWUVTCisKKyMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyMgY29uZmlndXJhdGlvbiBvcHRpb25zIHJlbGF0ZWQgdG8gdGhlIGFscGhhYmV0aWNhbCBjbGFzcyBpbmRleAorIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCisjIElmIHRoZSBBTFBIQUJFVElDQUxfSU5ERVggdGFnIGlzIHNldCB0byBZRVMsIGFuIGFscGhhYmV0aWNhbCBpbmRleAorIyBvZiBhbGwgY29tcG91bmRzIHdpbGwgYmUgZ2VuZXJhdGVkLiBFbmFibGUgdGhpcyBpZiB0aGUgcHJvamVjdAorIyBjb250YWlucyBhIGxvdCBvZiBjbGFzc2VzLCBzdHJ1Y3RzLCB1bmlvbnMgb3IgaW50ZXJmYWNlcy4KKworQUxQSEFCRVRJQ0FMX0lOREVYICAgICA9IE5PCisKKyMgSWYgdGhlIGFscGhhYmV0aWNhbCBpbmRleCBpcyBlbmFibGVkIChzZWUgQUxQSEFCRVRJQ0FMX0lOREVYKSB0aGVuCisjIHRoZSBDT0xTX0lOX0FMUEhBX0lOREVYIHRhZyBjYW4gYmUgdXNlZCB0byBzcGVjaWZ5IHRoZSBudW1iZXIgb2YgY29sdW1ucworIyBpbiB3aGljaCB0aGlzIGxpc3Qgd2lsbCBiZSBzcGxpdCAoY2FuIGJlIGEgbnVtYmVyIGluIHRoZSByYW5nZSBbMS4uMjBdKQorCitDT0xTX0lOX0FMUEhBX0lOREVYICAgID0gNQorCisjIEluIGNhc2UgYWxsIGNsYXNzZXMgaW4gYSBwcm9qZWN0IHN0YXJ0IHdpdGggYSBjb21tb24gcHJlZml4LCBhbGwKKyMgY2xhc3NlcyB3aWxsIGJlIHB1dCB1bmRlciB0aGUgc2FtZSBoZWFkZXIgaW4gdGhlIGFscGhhYmV0aWNhbCBpbmRleC4KKyMgVGhlIElHTk9SRV9QUkVGSVggdGFnIGNhbiBiZSB1c2VkIHRvIHNwZWNpZnkgb25lIG9yIG1vcmUgcHJlZml4ZXMgdGhhdAorIyBzaG91bGQgYmUgaWdub3JlZCB3aGlsZSBnZW5lcmF0aW5nIHRoZSBpbmRleCBoZWFkZXJzLgorCitJR05PUkVfUFJFRklYICAgICAgICAgID0KKworIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIyBjb25maWd1cmF0aW9uIG9wdGlvbnMgcmVsYXRlZCB0byB0aGUgSFRNTCBvdXRwdXQKKyMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworIyBJZiB0aGUgR0VORVJBVEVfSFRNTCB0YWcgaXMgc2V0IHRvIFlFUyAodGhlIGRlZmF1bHQpIERveHlnZW4gd2lsbAorIyBnZW5lcmF0ZSBIVE1MIG91dHB1dC4KKworR0VORVJBVEVfSFRNTCAgICAgICAgICA9IFlFUworCisjIFRoZSBIVE1MX09VVFBVVCB0YWcgaXMgdXNlZCB0byBzcGVjaWZ5IHdoZXJlIHRoZSBIVE1MIGRvY3Mgd2lsbCBiZSBwdXQuCisjIElmIGEgcmVsYXRpdmUgcGF0aCBpcyBlbnRlcmVkIHRoZSB2YWx1ZSBvZiBPVVRQVVRfRElSRUNUT1JZIHdpbGwgYmUKKyMgcHV0IGluIGZyb250IG9mIGl0LiBJZiBsZWZ0IGJsYW5rIGBodG1sJyB3aWxsIGJlIHVzZWQgYXMgdGhlIGRlZmF1bHQgcGF0aC4KKworSFRNTF9PVVRQVVQgICAgICAgICAgICA9IGh0bWwKKworIyBUaGUgSFRNTF9GSUxFX0VYVEVOU0lPTiB0YWcgY2FuIGJlIHVzZWQgdG8gc3BlY2lmeSB0aGUgZmlsZSBleHRlbnNpb24gZm9yCisjIGVhY2ggZ2VuZXJhdGVkIEhUTUwgcGFnZSAoZm9yIGV4YW1wbGU6IC5odG0sLnBocCwuYXNwKS4gSWYgaXQgaXMgbGVmdCBibGFuaworIyBkb3h5Z2VuIHdpbGwgZ2VuZXJhdGUgZmlsZXMgd2l0aCAuaHRtbCBleHRlbnNpb24uCisKK0hUTUxfRklMRV9FWFRFTlNJT04gICAgPSAuaHRtbAorCisjIFRoZSBIVE1MX0hFQURFUiB0YWcgY2FuIGJlIHVzZWQgdG8gc3BlY2lmeSBhIHBlcnNvbmFsIEhUTUwgaGVhZGVyIGZvcgorIyBlYWNoIGdlbmVyYXRlZCBIVE1MIHBhZ2UuIElmIGl0IGlzIGxlZnQgYmxhbmsgZG94eWdlbiB3aWxsIGdlbmVyYXRlIGEKKyMgc3RhbmRhcmQgaGVhZGVyLgorCitIVE1MX0hFQURFUiAgICAgICAgICAgID0KKworIyBUaGUgSFRNTF9GT09URVIgdGFnIGNhbiBiZSB1c2VkIHRvIHNwZWNpZnkgYSBwZXJzb25hbCBIVE1MIGZvb3RlciBmb3IKKyMgZWFjaCBnZW5lcmF0ZWQgSFRNTCBwYWdlLiBJZiBpdCBpcyBsZWZ0IGJsYW5rIGRveHlnZW4gd2lsbCBnZW5lcmF0ZSBhCisjIHN0YW5kYXJkIGZvb3Rlci4KKworSFRNTF9GT09URVIgICAgICAgICAgICA9CisKKyMgVGhlIEhUTUxfU1RZTEVTSEVFVCB0YWcgY2FuIGJlIHVzZWQgdG8gc3BlY2lmeSBhIHVzZXItZGVmaW5lZCBjYXNjYWRpbmcKKyMgc3R5bGUgc2hlZXQgdGhhdCBpcyB1c2VkIGJ5IGVhY2ggSFRNTCBwYWdlLiBJdCBjYW4gYmUgdXNlZCB0bworIyBmaW5lLXR1bmUgdGhlIGxvb2sgb2YgdGhlIEhUTUwgb3V0cHV0LiBJZiB0aGUgdGFnIGlzIGxlZnQgYmxhbmsgZG94eWdlbgorIyB3aWxsIGdlbmVyYXRlIGEgZGVmYXVsdCBzdHlsZSBzaGVldC4gTm90ZSB0aGF0IGRveHlnZW4gd2lsbCB0cnkgdG8gY29weQorIyB0aGUgc3R5bGUgc2hlZXQgZmlsZSB0byB0aGUgSFRNTCBvdXRwdXQgZGlyZWN0b3J5LCBzbyBkb24ndCBwdXQgeW91ciBvd24KKyMgc3R5bGVzaGVldCBpbiB0aGUgSFRNTCBvdXRwdXQgZGlyZWN0b3J5IGFzIHdlbGwsIG9yIGl0IHdpbGwgYmUgZXJhc2VkIQorCitIVE1MX1NUWUxFU0hFRVQgICAgICAgID0KKworIyBJZiB0aGUgSFRNTF9BTElHTl9NRU1CRVJTIHRhZyBpcyBzZXQgdG8gWUVTLCB0aGUgbWVtYmVycyBvZiBjbGFzc2VzLAorIyBmaWxlcyBvciBuYW1lc3BhY2VzIHdpbGwgYmUgYWxpZ25lZCBpbiBIVE1MIHVzaW5nIHRhYmxlcy4gSWYgc2V0IHRvCisjIE5PIGEgYnVsbGV0IGxpc3Qgd2lsbCBiZSB1c2VkLgorCitIVE1MX0FMSUdOX01FTUJFUlMgICAgID0gWUVTCisKKyMgSWYgdGhlIEhUTUxfRFlOQU1JQ19TRUNUSU9OUyB0YWcgaXMgc2V0IHRvIFlFUyB0aGVuIHRoZSBnZW5lcmF0ZWQgSFRNTAorIyBkb2N1bWVudGF0aW9uIHdpbGwgY29udGFpbiBzZWN0aW9ucyB0aGF0IGNhbiBiZSBoaWRkZW4gYW5kIHNob3duIGFmdGVyIHRoZQorIyBwYWdlIGhhcyBsb2FkZWQuIEZvciB0aGlzIHRvIHdvcmsgYSBicm93c2VyIHRoYXQgc3VwcG9ydHMKKyMgSmF2YVNjcmlwdCBhbmQgREhUTUwgaXMgcmVxdWlyZWQgKGZvciBpbnN0YW5jZSBNb3ppbGxhIDEuMCssIEZpcmVmb3gKKyMgTmV0c2NhcGUgNi4wKywgSW50ZXJuZXQgZXhwbG9yZXIgNS4wKywgS29ucXVlcm9yLCBvciBTYWZhcmkpLgorCitIVE1MX0RZTkFNSUNfU0VDVElPTlMgID0gTk8KKworIyBJZiB0aGUgR0VORVJBVEVfRE9DU0VUIHRhZyBpcyBzZXQgdG8gWUVTLCBhZGRpdGlvbmFsIGluZGV4IGZpbGVzCisjIHdpbGwgYmUgZ2VuZXJhdGVkIHRoYXQgY2FuIGJlIHVzZWQgYXMgaW5wdXQgZm9yIEFwcGxlJ3MgWGNvZGUgMworIyBpbnRlZ3JhdGVkIGRldmVsb3BtZW50IGVudmlyb25tZW50LCBpbnRyb2R1Y2VkIHdpdGggT1NYIDEwLjUgKExlb3BhcmQpLgorIyBUbyBjcmVhdGUgYSBkb2N1bWVudGF0aW9uIHNldCwgZG94eWdlbiB3aWxsIGdlbmVyYXRlIGEgTWFrZWZpbGUgaW4gdGhlCisjIEhUTUwgb3V0cHV0IGRpcmVjdG9yeS4gUnVubmluZyBtYWtlIHdpbGwgcHJvZHVjZSB0aGUgZG9jc2V0IGluIHRoYXQKKyMgZGlyZWN0b3J5IGFuZCBydW5uaW5nICJtYWtlIGluc3RhbGwiIHdpbGwgaW5zdGFsbCB0aGUgZG9jc2V0IGluCisjIH4vTGlicmFyeS9EZXZlbG9wZXIvU2hhcmVkL0RvY3VtZW50YXRpb24vRG9jU2V0cyBzbyB0aGF0IFhjb2RlIHdpbGwgZmluZAorIyBpdCBhdCBzdGFydHVwLgorIyBTZWUgaHR0cDovL2RldmVsb3Blci5hcHBsZS5jb20vdG9vbHMvY3JlYXRpbmdkb2NzZXRzd2l0aGRveHlnZW4uaHRtbCBmb3IgbW9yZSBpbmZvcm1hdGlvbi4KKworR0VORVJBVEVfRE9DU0VUICAgICAgICA9IE5PCisKKyMgV2hlbiBHRU5FUkFURV9ET0NTRVQgdGFnIGlzIHNldCB0byBZRVMsIHRoaXMgdGFnIGRldGVybWluZXMgdGhlIG5hbWUgb2YgdGhlCisjIGZlZWQuIEEgZG9jdW1lbnRhdGlvbiBmZWVkIHByb3ZpZGVzIGFuIHVtYnJlbGxhIHVuZGVyIHdoaWNoIG11bHRpcGxlCisjIGRvY3VtZW50YXRpb24gc2V0cyBmcm9tIGEgc2luZ2xlIHByb3ZpZGVyIChzdWNoIGFzIGEgY29tcGFueSBvciBwcm9kdWN0IHN1aXRlKQorIyBjYW4gYmUgZ3JvdXBlZC4KKworRE9DU0VUX0ZFRUROQU1FICAgICAgICA9ICJEb3h5Z2VuIGdlbmVyYXRlZCBkb2NzIgorCisjIFdoZW4gR0VORVJBVEVfRE9DU0VUIHRhZyBpcyBzZXQgdG8gWUVTLCB0aGlzIHRhZyBzcGVjaWZpZXMgYSBzdHJpbmcgdGhhdAorIyBzaG91bGQgdW5pcXVlbHkgaWRlbnRpZnkgdGhlIGRvY3VtZW50YXRpb24gc2V0IGJ1bmRsZS4gVGhpcyBzaG91bGQgYmUgYQorIyByZXZlcnNlIGRvbWFpbi1uYW1lIHN0eWxlIHN0cmluZywgZS5nLiBjb20ubXljb21wYW55Lk15RG9jU2V0LiBEb3h5Z2VuCisjIHdpbGwgYXBwZW5kIC5kb2NzZXQgdG8gdGhlIG5hbWUuCisKK0RPQ1NFVF9CVU5ETEVfSUQgICAgICAgPSBvcmcuZG94eWdlbi5Qcm9qZWN0CisKKyMgSWYgdGhlIEdFTkVSQVRFX0hUTUxIRUxQIHRhZyBpcyBzZXQgdG8gWUVTLCBhZGRpdGlvbmFsIGluZGV4IGZpbGVzCisjIHdpbGwgYmUgZ2VuZXJhdGVkIHRoYXQgY2FuIGJlIHVzZWQgYXMgaW5wdXQgZm9yIHRvb2xzIGxpa2UgdGhlCisjIE1pY3Jvc29mdCBIVE1MIGhlbHAgd29ya3Nob3AgdG8gZ2VuZXJhdGUgYSBjb21waWxlZCBIVE1MIGhlbHAgZmlsZSAoLmNobSkKKyMgb2YgdGhlIGdlbmVyYXRlZCBIVE1MIGRvY3VtZW50YXRpb24uCisKK0dFTkVSQVRFX0hUTUxIRUxQICAgICAgPSBOTworCisjIElmIHRoZSBHRU5FUkFURV9IVE1MSEVMUCB0YWcgaXMgc2V0IHRvIFlFUywgdGhlIENITV9GSUxFIHRhZyBjYW4KKyMgYmUgdXNlZCB0byBzcGVjaWZ5IHRoZSBmaWxlIG5hbWUgb2YgdGhlIHJlc3VsdGluZyAuY2htIGZpbGUuIFlvdQorIyBjYW4gYWRkIGEgcGF0aCBpbiBmcm9udCBvZiB0aGUgZmlsZSBpZiB0aGUgcmVzdWx0IHNob3VsZCBub3QgYmUKKyMgd3JpdHRlbiB0byB0aGUgaHRtbCBvdXRwdXQgZGlyZWN0b3J5LgorCitDSE1fRklMRSAgICAgICAgICAgICAgID0KKworIyBJZiB0aGUgR0VORVJBVEVfSFRNTEhFTFAgdGFnIGlzIHNldCB0byBZRVMsIHRoZSBISENfTE9DQVRJT04gdGFnIGNhbgorIyBiZSB1c2VkIHRvIHNwZWNpZnkgdGhlIGxvY2F0aW9uIChhYnNvbHV0ZSBwYXRoIGluY2x1ZGluZyBmaWxlIG5hbWUpIG9mCisjIHRoZSBIVE1MIGhlbHAgY29tcGlsZXIgKGhoYy5leGUpLiBJZiBub24tZW1wdHkgZG94eWdlbiB3aWxsIHRyeSB0byBydW4KKyMgdGhlIEhUTUwgaGVscCBjb21waWxlciBvbiB0aGUgZ2VuZXJhdGVkIGluZGV4LmhocC4KKworSEhDX0xPQ0FUSU9OICAgICAgICAgICA9CisKKyMgSWYgdGhlIEdFTkVSQVRFX0hUTUxIRUxQIHRhZyBpcyBzZXQgdG8gWUVTLCB0aGUgR0VORVJBVEVfQ0hJIGZsYWcKKyMgY29udHJvbHMgaWYgYSBzZXBhcmF0ZSAuY2hpIGluZGV4IGZpbGUgaXMgZ2VuZXJhdGVkIChZRVMpIG9yIHRoYXQKKyMgaXQgc2hvdWxkIGJlIGluY2x1ZGVkIGluIHRoZSBtYXN0ZXIgLmNobSBmaWxlIChOTykuCisKK0dFTkVSQVRFX0NISSAgICAgICAgICAgPSBOTworCisjIElmIHRoZSBHRU5FUkFURV9IVE1MSEVMUCB0YWcgaXMgc2V0IHRvIFlFUywgdGhlIENITV9JTkRFWF9FTkNPRElORworIyBpcyB1c2VkIHRvIGVuY29kZSBIdG1sSGVscCBpbmRleCAoaGhrKSwgY29udGVudCAoaGhjKSBhbmQgcHJvamVjdCBmaWxlCisjIGNvbnRlbnQuCisKK0NITV9JTkRFWF9FTkNPRElORyAgICAgPQorCisjIElmIHRoZSBHRU5FUkFURV9IVE1MSEVMUCB0YWcgaXMgc2V0IHRvIFlFUywgdGhlIEJJTkFSWV9UT0MgZmxhZworIyBjb250cm9scyB3aGV0aGVyIGEgYmluYXJ5IHRhYmxlIG9mIGNvbnRlbnRzIGlzIGdlbmVyYXRlZCAoWUVTKSBvciBhCisjIG5vcm1hbCB0YWJsZSBvZiBjb250ZW50cyAoTk8pIGluIHRoZSAuY2htIGZpbGUuCisKK0JJTkFSWV9UT0MgICAgICAgICAgICAgPSBOTworCisjIFRoZSBUT0NfRVhQQU5EIGZsYWcgY2FuIGJlIHNldCB0byBZRVMgdG8gYWRkIGV4dHJhIGl0ZW1zIGZvciBncm91cCBtZW1iZXJzCisjIHRvIHRoZSBjb250ZW50cyBvZiB0aGUgSFRNTCBoZWxwIGRvY3VtZW50YXRpb24gYW5kIHRvIHRoZSB0cmVlIHZpZXcuCisKK1RPQ19FWFBBTkQgICAgICAgICAgICAgPSBOTworCisjIElmIHRoZSBHRU5FUkFURV9RSFAgdGFnIGlzIHNldCB0byBZRVMgYW5kIGJvdGggUUhQX05BTUVTUEFDRSBhbmQgUUhQX1ZJUlRVQUxfRk9MREVSCisjIGFyZSBzZXQsIGFuIGFkZGl0aW9uYWwgaW5kZXggZmlsZSB3aWxsIGJlIGdlbmVyYXRlZCB0aGF0IGNhbiBiZSB1c2VkIGFzIGlucHV0IGZvcgorIyBRdCdzIHFoZWxwZ2VuZXJhdG9yIHRvIGdlbmVyYXRlIGEgUXQgQ29tcHJlc3NlZCBIZWxwICgucWNoKSBvZiB0aGUgZ2VuZXJhdGVkCisjIEhUTUwgZG9jdW1lbnRhdGlvbi4KKworR0VORVJBVEVfUUhQICAgICAgICAgICA9IE5PCisKKyMgSWYgdGhlIFFIR19MT0NBVElPTiB0YWcgaXMgc3BlY2lmaWVkLCB0aGUgUUNIX0ZJTEUgdGFnIGNhbgorIyBiZSB1c2VkIHRvIHNwZWNpZnkgdGhlIGZpbGUgbmFtZSBvZiB0aGUgcmVzdWx0aW5nIC5xY2ggZmlsZS4KKyMgVGhlIHBhdGggc3BlY2lmaWVkIGlzIHJlbGF0aXZlIHRvIHRoZSBIVE1MIG91dHB1dCBmb2xkZXIuCisKK1FDSF9GSUxFICAgICAgICAgICAgICAgPQorCisjIFRoZSBRSFBfTkFNRVNQQUNFIHRhZyBzcGVjaWZpZXMgdGhlIG5hbWVzcGFjZSB0byB1c2Ugd2hlbiBnZW5lcmF0aW5nCisjIFF0IEhlbHAgUHJvamVjdCBvdXRwdXQuIEZvciBtb3JlIGluZm9ybWF0aW9uIHBsZWFzZSBzZWUKKyMgaHR0cDovL2RvYy50cm9sbHRlY2guY29tL3F0aGVscHByb2plY3QuaHRtbCNuYW1lc3BhY2UKKworUUhQX05BTUVTUEFDRSAgICAgICAgICA9CisKKyMgVGhlIFFIUF9WSVJUVUFMX0ZPTERFUiB0YWcgc3BlY2lmaWVzIHRoZSBuYW1lc3BhY2UgdG8gdXNlIHdoZW4gZ2VuZXJhdGluZworIyBRdCBIZWxwIFByb2plY3Qgb3V0cHV0LiBGb3IgbW9yZSBpbmZvcm1hdGlvbiBwbGVhc2Ugc2VlCisjIGh0dHA6Ly9kb2MudHJvbGx0ZWNoLmNvbS9xdGhlbHBwcm9qZWN0Lmh0bWwjdmlydHVhbC1mb2xkZXJzCisKK1FIUF9WSVJUVUFMX0ZPTERFUiAgICAgPSBkb2MKKworIyBJZiBRSFBfQ1VTVF9GSUxURVJfTkFNRSBpcyBzZXQsIGl0IHNwZWNpZmllcyB0aGUgbmFtZSBvZiBhIGN1c3RvbSBmaWx0ZXIgdG8gYWRkLgorIyBGb3IgbW9yZSBpbmZvcm1hdGlvbiBwbGVhc2Ugc2VlCisjIGh0dHA6Ly9kb2MudHJvbGx0ZWNoLmNvbS9xdGhlbHBwcm9qZWN0Lmh0bWwjY3VzdG9tLWZpbHRlcnMKKworUUhQX0NVU1RfRklMVEVSX05BTUUgICA9CisKKyMgVGhlIFFIUF9DVVNUX0ZJTFRfQVRUUlMgdGFnIHNwZWNpZmllcyB0aGUgbGlzdCBvZiB0aGUgYXR0cmlidXRlcyBvZiB0aGUgY3VzdG9tIGZpbHRlciB0byBhZGQuRm9yIG1vcmUgaW5mb3JtYXRpb24gcGxlYXNlIHNlZQorIyA8YSBocmVmPSJodHRwOi8vZG9jLnRyb2xsdGVjaC5jb20vcXRoZWxwcHJvamVjdC5odG1sI2N1c3RvbS1maWx0ZXJzIj5RdCBIZWxwIFByb2plY3QgLyBDdXN0b20gRmlsdGVyczwvYT4uCisKK1FIUF9DVVNUX0ZJTFRFUl9BVFRSUyAgPQorCisjIFRoZSBRSFBfU0VDVF9GSUxURVJfQVRUUlMgdGFnIHNwZWNpZmllcyB0aGUgbGlzdCBvZiB0aGUgYXR0cmlidXRlcyB0aGlzIHByb2plY3QncworIyBmaWx0ZXIgc2VjdGlvbiBtYXRjaGVzLgorIyA8YSBocmVmPSJodHRwOi8vZG9jLnRyb2xsdGVjaC5jb20vcXRoZWxwcHJvamVjdC5odG1sI2ZpbHRlci1hdHRyaWJ1dGVzIj5RdCBIZWxwIFByb2plY3QgLyBGaWx0ZXIgQXR0cmlidXRlczwvYT4uCisKK1FIUF9TRUNUX0ZJTFRFUl9BVFRSUyAgPQorCisjIElmIHRoZSBHRU5FUkFURV9RSFAgdGFnIGlzIHNldCB0byBZRVMsIHRoZSBRSEdfTE9DQVRJT04gdGFnIGNhbgorIyBiZSB1c2VkIHRvIHNwZWNpZnkgdGhlIGxvY2F0aW9uIG9mIFF0J3MgcWhlbHBnZW5lcmF0b3IuCisjIElmIG5vbi1lbXB0eSBkb3h5Z2VuIHdpbGwgdHJ5IHRvIHJ1biBxaGVscGdlbmVyYXRvciBvbiB0aGUgZ2VuZXJhdGVkCisjIC5xaHAgZmlsZS4KKworUUhHX0xPQ0FUSU9OICAgICAgICAgICA9CisKKyMgVGhlIERJU0FCTEVfSU5ERVggdGFnIGNhbiBiZSB1c2VkIHRvIHR1cm4gb24vb2ZmIHRoZSBjb25kZW5zZWQgaW5kZXggYXQKKyMgdG9wIG9mIGVhY2ggSFRNTCBwYWdlLiBUaGUgdmFsdWUgTk8gKHRoZSBkZWZhdWx0KSBlbmFibGVzIHRoZSBpbmRleCBhbmQKKyMgdGhlIHZhbHVlIFlFUyBkaXNhYmxlcyBpdC4KKworRElTQUJMRV9JTkRFWCAgICAgICAgICA9IE5PCisKKyMgVGhpcyB0YWcgY2FuIGJlIHVzZWQgdG8gc2V0IHRoZSBudW1iZXIgb2YgZW51bSB2YWx1ZXMgKHJhbmdlIFsxLi4yMF0pCisjIHRoYXQgZG94eWdlbiB3aWxsIGdyb3VwIG9uIG9uZSBsaW5lIGluIHRoZSBnZW5lcmF0ZWQgSFRNTCBkb2N1bWVudGF0aW9uLgorCitFTlVNX1ZBTFVFU19QRVJfTElORSAgID0gNAorCisjIFRoZSBHRU5FUkFURV9UUkVFVklFVyB0YWcgaXMgdXNlZCB0byBzcGVjaWZ5IHdoZXRoZXIgYSB0cmVlLWxpa2UgaW5kZXgKKyMgc3RydWN0dXJlIHNob3VsZCBiZSBnZW5lcmF0ZWQgdG8gZGlzcGxheSBoaWVyYXJjaGljYWwgaW5mb3JtYXRpb24uCisjIElmIHRoZSB0YWcgdmFsdWUgaXMgc2V0IHRvIFlFUywgYSBzaWRlIHBhbmVsIHdpbGwgYmUgZ2VuZXJhdGVkCisjIGNvbnRhaW5pbmcgYSB0cmVlLWxpa2UgaW5kZXggc3RydWN0dXJlIChqdXN0IGxpa2UgdGhlIG9uZSB0aGF0CisjIGlzIGdlbmVyYXRlZCBmb3IgSFRNTCBIZWxwKS4gRm9yIHRoaXMgdG8gd29yayBhIGJyb3dzZXIgdGhhdCBzdXBwb3J0cworIyBKYXZhU2NyaXB0LCBESFRNTCwgQ1NTIGFuZCBmcmFtZXMgaXMgcmVxdWlyZWQgKGkuZS4gYW55IG1vZGVybiBicm93c2VyKS4KKyMgV2luZG93cyB1c2VycyBhcmUgcHJvYmFibHkgYmV0dGVyIG9mZiB1c2luZyB0aGUgSFRNTCBoZWxwIGZlYXR1cmUuCisKK0dFTkVSQVRFX1RSRUVWSUVXICAgICAgPSBOTworCisjIEJ5IGVuYWJsaW5nIFVTRV9JTkxJTkVfVFJFRVMsIGRveHlnZW4gd2lsbCBnZW5lcmF0ZSB0aGUgR3JvdXBzLCBEaXJlY3RvcmllcywKKyMgYW5kIENsYXNzIEhpZXJhcmNoeSBwYWdlcyB1c2luZyBhIHRyZWUgdmlldyBpbnN0ZWFkIG9mIGFuIG9yZGVyZWQgbGlzdC4KKworVVNFX0lOTElORV9UUkVFUyAgICAgICA9IE5PCisKKyMgSWYgdGhlIHRyZWV2aWV3IGlzIGVuYWJsZWQgKHNlZSBHRU5FUkFURV9UUkVFVklFVykgdGhlbiB0aGlzIHRhZyBjYW4gYmUKKyMgdXNlZCB0byBzZXQgdGhlIGluaXRpYWwgd2lkdGggKGluIHBpeGVscykgb2YgdGhlIGZyYW1lIGluIHdoaWNoIHRoZSB0cmVlCisjIGlzIHNob3duLgorCitUUkVFVklFV19XSURUSCAgICAgICAgID0gMjUwCisKKyMgVXNlIHRoaXMgdGFnIHRvIGNoYW5nZSB0aGUgZm9udCBzaXplIG9mIExhdGV4IGZvcm11bGFzIGluY2x1ZGVkCisjIGFzIGltYWdlcyBpbiB0aGUgSFRNTCBkb2N1bWVudGF0aW9uLiBUaGUgZGVmYXVsdCBpcyAxMC4gTm90ZSB0aGF0CisjIHdoZW4geW91IGNoYW5nZSB0aGUgZm9udCBzaXplIGFmdGVyIGEgc3VjY2Vzc2Z1bCBkb3h5Z2VuIHJ1biB5b3UgbmVlZAorIyB0byBtYW51YWxseSByZW1vdmUgYW55IGZvcm1fKi5wbmcgaW1hZ2VzIGZyb20gdGhlIEhUTUwgb3V0cHV0IGRpcmVjdG9yeQorIyB0byBmb3JjZSB0aGVtIHRvIGJlIHJlZ2VuZXJhdGVkLgorCitGT1JNVUxBX0ZPTlRTSVpFICAgICAgID0gMTAKKworIyBXaGVuIHRoZSBTRUFSQ0hFTkdJTkUgdGFnIGlzIGVuYWJsZSBkb3h5Z2VuIHdpbGwgZ2VuZXJhdGUgYSBzZWFyY2ggYm94IGZvciB0aGUgSFRNTCBvdXRwdXQuIFRoZSB1bmRlcmx5aW5nIHNlYXJjaCBlbmdpbmUgdXNlcyBqYXZhc2NyaXB0CisjIGFuZCBESFRNTCBhbmQgc2hvdWxkIHdvcmsgb24gYW55IG1vZGVybiBicm93c2VyLiBOb3RlIHRoYXQgd2hlbiB1c2luZyBIVE1MIGhlbHAgKEdFTkVSQVRFX0hUTUxIRUxQKSBvciBRdCBoZWxwIChHRU5FUkFURV9RSFApCisjIHRoZXJlIGlzIGFscmVhZHkgYSBzZWFyY2ggZnVuY3Rpb24gc28gdGhpcyBvbmUgc2hvdWxkIHR5cGljYWxseQorIyBiZSBkaXNhYmxlZC4KKworU0VBUkNIRU5HSU5FICAgICAgICAgICA9IFlFUworCisjLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisjIGNvbmZpZ3VyYXRpb24gb3B0aW9ucyByZWxhdGVkIHRvIHRoZSBMYVRlWCBvdXRwdXQKKyMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworIyBJZiB0aGUgR0VORVJBVEVfTEFURVggdGFnIGlzIHNldCB0byBZRVMgKHRoZSBkZWZhdWx0KSBEb3h5Z2VuIHdpbGwKKyMgZ2VuZXJhdGUgTGF0ZXggb3V0cHV0LgorCitHRU5FUkFURV9MQVRFWCAgICAgICAgID0gTk8KKworIyBUaGUgTEFURVhfT1VUUFVUIHRhZyBpcyB1c2VkIHRvIHNwZWNpZnkgd2hlcmUgdGhlIExhVGVYIGRvY3Mgd2lsbCBiZSBwdXQuCisjIElmIGEgcmVsYXRpdmUgcGF0aCBpcyBlbnRlcmVkIHRoZSB2YWx1ZSBvZiBPVVRQVVRfRElSRUNUT1JZIHdpbGwgYmUKKyMgcHV0IGluIGZyb250IG9mIGl0LiBJZiBsZWZ0IGJsYW5rIGBsYXRleCcgd2lsbCBiZSB1c2VkIGFzIHRoZSBkZWZhdWx0IHBhdGguCisKK0xBVEVYX09VVFBVVCAgICAgICAgICAgPSBsYXRleAorCisjIFRoZSBMQVRFWF9DTURfTkFNRSB0YWcgY2FuIGJlIHVzZWQgdG8gc3BlY2lmeSB0aGUgTGFUZVggY29tbWFuZCBuYW1lIHRvIGJlCisjIGludm9rZWQuIElmIGxlZnQgYmxhbmsgYGxhdGV4JyB3aWxsIGJlIHVzZWQgYXMgdGhlIGRlZmF1bHQgY29tbWFuZCBuYW1lLgorCitMQVRFWF9DTURfTkFNRSAgICAgICAgID0gbGF0ZXgKKworIyBUaGUgTUFLRUlOREVYX0NNRF9OQU1FIHRhZyBjYW4gYmUgdXNlZCB0byBzcGVjaWZ5IHRoZSBjb21tYW5kIG5hbWUgdG8KKyMgZ2VuZXJhdGUgaW5kZXggZm9yIExhVGVYLiBJZiBsZWZ0IGJsYW5rIGBtYWtlaW5kZXgnIHdpbGwgYmUgdXNlZCBhcyB0aGUKKyMgZGVmYXVsdCBjb21tYW5kIG5hbWUuCisKK01BS0VJTkRFWF9DTURfTkFNRSAgICAgPSBtYWtlaW5kZXgKKworIyBJZiB0aGUgQ09NUEFDVF9MQVRFWCB0YWcgaXMgc2V0IHRvIFlFUyBEb3h5Z2VuIGdlbmVyYXRlcyBtb3JlIGNvbXBhY3QKKyMgTGFUZVggZG9jdW1lbnRzLiBUaGlzIG1heSBiZSB1c2VmdWwgZm9yIHNtYWxsIHByb2plY3RzIGFuZCBtYXkgaGVscCB0bworIyBzYXZlIHNvbWUgdHJlZXMgaW4gZ2VuZXJhbC4KKworQ09NUEFDVF9MQVRFWCAgICAgICAgICA9IE5PCisKKyMgVGhlIFBBUEVSX1RZUEUgdGFnIGNhbiBiZSB1c2VkIHRvIHNldCB0aGUgcGFwZXIgdHlwZSB0aGF0IGlzIHVzZWQKKyMgYnkgdGhlIHByaW50ZXIuIFBvc3NpYmxlIHZhbHVlcyBhcmU6IGE0LCBhNHdpZGUsIGxldHRlciwgbGVnYWwgYW5kCisjIGV4ZWN1dGl2ZS4gSWYgbGVmdCBibGFuayBhNHdpZGUgd2lsbCBiZSB1c2VkLgorCitQQVBFUl9UWVBFICAgICAgICAgICAgID0gYTR3aWRlCisKKyMgVGhlIEVYVFJBX1BBQ0tBR0VTIHRhZyBjYW4gYmUgdG8gc3BlY2lmeSBvbmUgb3IgbW9yZSBuYW1lcyBvZiBMYVRlWAorIyBwYWNrYWdlcyB0aGF0IHNob3VsZCBiZSBpbmNsdWRlZCBpbiB0aGUgTGFUZVggb3V0cHV0LgorCitFWFRSQV9QQUNLQUdFUyAgICAgICAgID0KKworIyBUaGUgTEFURVhfSEVBREVSIHRhZyBjYW4gYmUgdXNlZCB0byBzcGVjaWZ5IGEgcGVyc29uYWwgTGFUZVggaGVhZGVyIGZvcgorIyB0aGUgZ2VuZXJhdGVkIGxhdGV4IGRvY3VtZW50LiBUaGUgaGVhZGVyIHNob3VsZCBjb250YWluIGV2ZXJ5dGhpbmcgdW50aWwKKyMgdGhlIGZpcnN0IGNoYXB0ZXIuIElmIGl0IGlzIGxlZnQgYmxhbmsgZG94eWdlbiB3aWxsIGdlbmVyYXRlIGEKKyMgc3RhbmRhcmQgaGVhZGVyLiBOb3RpY2U6IG9ubHkgdXNlIHRoaXMgdGFnIGlmIHlvdSBrbm93IHdoYXQgeW91IGFyZSBkb2luZyEKKworTEFURVhfSEVBREVSICAgICAgICAgICA9CisKKyMgSWYgdGhlIFBERl9IWVBFUkxJTktTIHRhZyBpcyBzZXQgdG8gWUVTLCB0aGUgTGFUZVggdGhhdCBpcyBnZW5lcmF0ZWQKKyMgaXMgcHJlcGFyZWQgZm9yIGNvbnZlcnNpb24gdG8gcGRmICh1c2luZyBwczJwZGYpLiBUaGUgcGRmIGZpbGUgd2lsbAorIyBjb250YWluIGxpbmtzIChqdXN0IGxpa2UgdGhlIEhUTUwgb3V0cHV0KSBpbnN0ZWFkIG9mIHBhZ2UgcmVmZXJlbmNlcworIyBUaGlzIG1ha2VzIHRoZSBvdXRwdXQgc3VpdGFibGUgZm9yIG9ubGluZSBicm93c2luZyB1c2luZyBhIHBkZiB2aWV3ZXIuCisKK1BERl9IWVBFUkxJTktTICAgICAgICAgPSBZRVMKKworIyBJZiB0aGUgVVNFX1BERkxBVEVYIHRhZyBpcyBzZXQgdG8gWUVTLCBwZGZsYXRleCB3aWxsIGJlIHVzZWQgaW5zdGVhZCBvZgorIyBwbGFpbiBsYXRleCBpbiB0aGUgZ2VuZXJhdGVkIE1ha2VmaWxlLiBTZXQgdGhpcyBvcHRpb24gdG8gWUVTIHRvIGdldCBhCisjIGhpZ2hlciBxdWFsaXR5IFBERiBkb2N1bWVudGF0aW9uLgorCitVU0VfUERGTEFURVggICAgICAgICAgID0gWUVTCisKKyMgSWYgdGhlIExBVEVYX0JBVENITU9ERSB0YWcgaXMgc2V0IHRvIFlFUywgZG94eWdlbiB3aWxsIGFkZCB0aGUgXFxiYXRjaG1vZGUuCisjIGNvbW1hbmQgdG8gdGhlIGdlbmVyYXRlZCBMYVRlWCBmaWxlcy4gVGhpcyB3aWxsIGluc3RydWN0IExhVGVYIHRvIGtlZXAKKyMgcnVubmluZyBpZiBlcnJvcnMgb2NjdXIsIGluc3RlYWQgb2YgYXNraW5nIHRoZSB1c2VyIGZvciBoZWxwLgorIyBUaGlzIG9wdGlvbiBpcyBhbHNvIHVzZWQgd2hlbiBnZW5lcmF0aW5nIGZvcm11bGFzIGluIEhUTUwuCisKK0xBVEVYX0JBVENITU9ERSAgICAgICAgPSBOTworCisjIElmIExBVEVYX0hJREVfSU5ESUNFUyBpcyBzZXQgdG8gWUVTIHRoZW4gZG94eWdlbiB3aWxsIG5vdAorIyBpbmNsdWRlIHRoZSBpbmRleCBjaGFwdGVycyAoc3VjaCBhcyBGaWxlIEluZGV4LCBDb21wb3VuZCBJbmRleCwgZXRjLikKKyMgaW4gdGhlIG91dHB1dC4KKworTEFURVhfSElERV9JTkRJQ0VTICAgICA9IE5PCisKKyMgSWYgTEFURVhfU09VUkNFX0NPREUgaXMgc2V0IHRvIFlFUyB0aGVuIGRveHlnZW4gd2lsbCBpbmNsdWRlIHNvdXJjZSBjb2RlIHdpdGggc3ludGF4IGhpZ2hsaWdodGluZyBpbiB0aGUgTGFUZVggb3V0cHV0LiBOb3RlIHRoYXQgd2hpY2ggc291cmNlcyBhcmUgc2hvd24gYWxzbyBkZXBlbmRzIG9uIG90aGVyIHNldHRpbmdzIHN1Y2ggYXMgU09VUkNFX0JST1dTRVIuCisKK0xBVEVYX1NPVVJDRV9DT0RFICAgICAgPSBOTworCisjLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisjIGNvbmZpZ3VyYXRpb24gb3B0aW9ucyByZWxhdGVkIHRvIHRoZSBSVEYgb3V0cHV0CisjLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKKyMgSWYgdGhlIEdFTkVSQVRFX1JURiB0YWcgaXMgc2V0IHRvIFlFUyBEb3h5Z2VuIHdpbGwgZ2VuZXJhdGUgUlRGIG91dHB1dAorIyBUaGUgUlRGIG91dHB1dCBpcyBvcHRpbWl6ZWQgZm9yIFdvcmQgOTcgYW5kIG1heSBub3QgbG9vayB2ZXJ5IHByZXR0eSB3aXRoCisjIG90aGVyIFJURiByZWFkZXJzIG9yIGVkaXRvcnMuCisKK0dFTkVSQVRFX1JURiAgICAgICAgICAgPSBOTworCisjIFRoZSBSVEZfT1VUUFVUIHRhZyBpcyB1c2VkIHRvIHNwZWNpZnkgd2hlcmUgdGhlIFJURiBkb2NzIHdpbGwgYmUgcHV0LgorIyBJZiBhIHJlbGF0aXZlIHBhdGggaXMgZW50ZXJlZCB0aGUgdmFsdWUgb2YgT1VUUFVUX0RJUkVDVE9SWSB3aWxsIGJlCisjIHB1dCBpbiBmcm9udCBvZiBpdC4gSWYgbGVmdCBibGFuayBgcnRmJyB3aWxsIGJlIHVzZWQgYXMgdGhlIGRlZmF1bHQgcGF0aC4KKworUlRGX09VVFBVVCAgICAgICAgICAgICA9IHJ0ZgorCisjIElmIHRoZSBDT01QQUNUX1JURiB0YWcgaXMgc2V0IHRvIFlFUyBEb3h5Z2VuIGdlbmVyYXRlcyBtb3JlIGNvbXBhY3QKKyMgUlRGIGRvY3VtZW50cy4gVGhpcyBtYXkgYmUgdXNlZnVsIGZvciBzbWFsbCBwcm9qZWN0cyBhbmQgbWF5IGhlbHAgdG8KKyMgc2F2ZSBzb21lIHRyZWVzIGluIGdlbmVyYWwuCisKK0NPTVBBQ1RfUlRGICAgICAgICAgICAgPSBOTworCisjIElmIHRoZSBSVEZfSFlQRVJMSU5LUyB0YWcgaXMgc2V0IHRvIFlFUywgdGhlIFJURiB0aGF0IGlzIGdlbmVyYXRlZAorIyB3aWxsIGNvbnRhaW4gaHlwZXJsaW5rIGZpZWxkcy4gVGhlIFJURiBmaWxlIHdpbGwKKyMgY29udGFpbiBsaW5rcyAoanVzdCBsaWtlIHRoZSBIVE1MIG91dHB1dCkgaW5zdGVhZCBvZiBwYWdlIHJlZmVyZW5jZXMuCisjIFRoaXMgbWFrZXMgdGhlIG91dHB1dCBzdWl0YWJsZSBmb3Igb25saW5lIGJyb3dzaW5nIHVzaW5nIFdPUkQgb3Igb3RoZXIKKyMgcHJvZ3JhbXMgd2hpY2ggc3VwcG9ydCB0aG9zZSBmaWVsZHMuCisjIE5vdGU6IHdvcmRwYWQgKHdyaXRlKSBhbmQgb3RoZXJzIGRvIG5vdCBzdXBwb3J0IGxpbmtzLgorCitSVEZfSFlQRVJMSU5LUyAgICAgICAgID0gTk8KKworIyBMb2FkIHN0eWxlc2hlZXQgZGVmaW5pdGlvbnMgZnJvbSBmaWxlLiBTeW50YXggaXMgc2ltaWxhciB0byBkb3h5Z2VuJ3MKKyMgY29uZmlnIGZpbGUsIGkuZS4gYSBzZXJpZXMgb2YgYXNzaWdubWVudHMuIFlvdSBvbmx5IGhhdmUgdG8gcHJvdmlkZQorIyByZXBsYWNlbWVudHMsIG1pc3NpbmcgZGVmaW5pdGlvbnMgYXJlIHNldCB0byB0aGVpciBkZWZhdWx0IHZhbHVlLgorCitSVEZfU1RZTEVTSEVFVF9GSUxFICAgID0KKworIyBTZXQgb3B0aW9uYWwgdmFyaWFibGVzIHVzZWQgaW4gdGhlIGdlbmVyYXRpb24gb2YgYW4gcnRmIGRvY3VtZW50LgorIyBTeW50YXggaXMgc2ltaWxhciB0byBkb3h5Z2VuJ3MgY29uZmlnIGZpbGUuCisKK1JURl9FWFRFTlNJT05TX0ZJTEUgICAgPQorCisjLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisjIGNvbmZpZ3VyYXRpb24gb3B0aW9ucyByZWxhdGVkIHRvIHRoZSBtYW4gcGFnZSBvdXRwdXQKKyMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworIyBJZiB0aGUgR0VORVJBVEVfTUFOIHRhZyBpcyBzZXQgdG8gWUVTICh0aGUgZGVmYXVsdCkgRG94eWdlbiB3aWxsCisjIGdlbmVyYXRlIG1hbiBwYWdlcworCitHRU5FUkFURV9NQU4gICAgICAgICAgID0gTk8KKworIyBUaGUgTUFOX09VVFBVVCB0YWcgaXMgdXNlZCB0byBzcGVjaWZ5IHdoZXJlIHRoZSBtYW4gcGFnZXMgd2lsbCBiZSBwdXQuCisjIElmIGEgcmVsYXRpdmUgcGF0aCBpcyBlbnRlcmVkIHRoZSB2YWx1ZSBvZiBPVVRQVVRfRElSRUNUT1JZIHdpbGwgYmUKKyMgcHV0IGluIGZyb250IG9mIGl0LiBJZiBsZWZ0IGJsYW5rIGBtYW4nIHdpbGwgYmUgdXNlZCBhcyB0aGUgZGVmYXVsdCBwYXRoLgorCitNQU5fT1VUUFVUICAgICAgICAgICAgID0gbWFuCisKKyMgVGhlIE1BTl9FWFRFTlNJT04gdGFnIGRldGVybWluZXMgdGhlIGV4dGVuc2lvbiB0aGF0IGlzIGFkZGVkIHRvCisjIHRoZSBnZW5lcmF0ZWQgbWFuIHBhZ2VzIChkZWZhdWx0IGlzIHRoZSBzdWJyb3V0aW5lJ3Mgc2VjdGlvbiAuMykKKworTUFOX0VYVEVOU0lPTiAgICAgICAgICA9IC4zCisKKyMgSWYgdGhlIE1BTl9MSU5LUyB0YWcgaXMgc2V0IHRvIFlFUyBhbmQgRG94eWdlbiBnZW5lcmF0ZXMgbWFuIG91dHB1dCwKKyMgdGhlbiBpdCB3aWxsIGdlbmVyYXRlIG9uZSBhZGRpdGlvbmFsIG1hbiBmaWxlIGZvciBlYWNoIGVudGl0eQorIyBkb2N1bWVudGVkIGluIHRoZSByZWFsIG1hbiBwYWdlKHMpLiBUaGVzZSBhZGRpdGlvbmFsIGZpbGVzCisjIG9ubHkgc291cmNlIHRoZSByZWFsIG1hbiBwYWdlLCBidXQgd2l0aG91dCB0aGVtIHRoZSBtYW4gY29tbWFuZAorIyB3b3VsZCBiZSB1bmFibGUgdG8gZmluZCB0aGUgY29ycmVjdCBwYWdlLiBUaGUgZGVmYXVsdCBpcyBOTy4KKworTUFOX0xJTktTICAgICAgICAgICAgICA9IE5PCisKKyMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyMgY29uZmlndXJhdGlvbiBvcHRpb25zIHJlbGF0ZWQgdG8gdGhlIFhNTCBvdXRwdXQKKyMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworIyBJZiB0aGUgR0VORVJBVEVfWE1MIHRhZyBpcyBzZXQgdG8gWUVTIERveHlnZW4gd2lsbAorIyBnZW5lcmF0ZSBhbiBYTUwgZmlsZSB0aGF0IGNhcHR1cmVzIHRoZSBzdHJ1Y3R1cmUgb2YKKyMgdGhlIGNvZGUgaW5jbHVkaW5nIGFsbCBkb2N1bWVudGF0aW9uLgorCitHRU5FUkFURV9YTUwgICAgICAgICAgID0gTk8KKworIyBUaGUgWE1MX09VVFBVVCB0YWcgaXMgdXNlZCB0byBzcGVjaWZ5IHdoZXJlIHRoZSBYTUwgcGFnZXMgd2lsbCBiZSBwdXQuCisjIElmIGEgcmVsYXRpdmUgcGF0aCBpcyBlbnRlcmVkIHRoZSB2YWx1ZSBvZiBPVVRQVVRfRElSRUNUT1JZIHdpbGwgYmUKKyMgcHV0IGluIGZyb250IG9mIGl0LiBJZiBsZWZ0IGJsYW5rIGB4bWwnIHdpbGwgYmUgdXNlZCBhcyB0aGUgZGVmYXVsdCBwYXRoLgorCitYTUxfT1VUUFVUICAgICAgICAgICAgID0geG1sCisKKyMgVGhlIFhNTF9TQ0hFTUEgdGFnIGNhbiBiZSB1c2VkIHRvIHNwZWNpZnkgYW4gWE1MIHNjaGVtYSwKKyMgd2hpY2ggY2FuIGJlIHVzZWQgYnkgYSB2YWxpZGF0aW5nIFhNTCBwYXJzZXIgdG8gY2hlY2sgdGhlCisjIHN5bnRheCBvZiB0aGUgWE1MIGZpbGVzLgorCitYTUxfU0NIRU1BICAgICAgICAgICAgID0KKworIyBUaGUgWE1MX0RURCB0YWcgY2FuIGJlIHVzZWQgdG8gc3BlY2lmeSBhbiBYTUwgRFRELAorIyB3aGljaCBjYW4gYmUgdXNlZCBieSBhIHZhbGlkYXRpbmcgWE1MIHBhcnNlciB0byBjaGVjayB0aGUKKyMgc3ludGF4IG9mIHRoZSBYTUwgZmlsZXMuCisKK1hNTF9EVEQgICAgICAgICAgICAgICAgPQorCisjIElmIHRoZSBYTUxfUFJPR1JBTUxJU1RJTkcgdGFnIGlzIHNldCB0byBZRVMgRG94eWdlbiB3aWxsCisjIGR1bXAgdGhlIHByb2dyYW0gbGlzdGluZ3MgKGluY2x1ZGluZyBzeW50YXggaGlnaGxpZ2h0aW5nCisjIGFuZCBjcm9zcy1yZWZlcmVuY2luZyBpbmZvcm1hdGlvbikgdG8gdGhlIFhNTCBvdXRwdXQuIE5vdGUgdGhhdAorIyBlbmFibGluZyB0aGlzIHdpbGwgc2lnbmlmaWNhbnRseSBpbmNyZWFzZSB0aGUgc2l6ZSBvZiB0aGUgWE1MIG91dHB1dC4KKworWE1MX1BST0dSQU1MSVNUSU5HICAgICA9IFlFUworCisjLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisjIGNvbmZpZ3VyYXRpb24gb3B0aW9ucyBmb3IgdGhlIEF1dG9HZW4gRGVmaW5pdGlvbnMgb3V0cHV0CisjLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKKyMgSWYgdGhlIEdFTkVSQVRFX0FVVE9HRU5fREVGIHRhZyBpcyBzZXQgdG8gWUVTIERveHlnZW4gd2lsbAorIyBnZW5lcmF0ZSBhbiBBdXRvR2VuIERlZmluaXRpb25zIChzZWUgYXV0b2dlbi5zZi5uZXQpIGZpbGUKKyMgdGhhdCBjYXB0dXJlcyB0aGUgc3RydWN0dXJlIG9mIHRoZSBjb2RlIGluY2x1ZGluZyBhbGwKKyMgZG9jdW1lbnRhdGlvbi4gTm90ZSB0aGF0IHRoaXMgZmVhdHVyZSBpcyBzdGlsbCBleHBlcmltZW50YWwKKyMgYW5kIGluY29tcGxldGUgYXQgdGhlIG1vbWVudC4KKworR0VORVJBVEVfQVVUT0dFTl9ERUYgICA9IE5PCisKKyMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyMgY29uZmlndXJhdGlvbiBvcHRpb25zIHJlbGF0ZWQgdG8gdGhlIFBlcmwgbW9kdWxlIG91dHB1dAorIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCisjIElmIHRoZSBHRU5FUkFURV9QRVJMTU9EIHRhZyBpcyBzZXQgdG8gWUVTIERveHlnZW4gd2lsbAorIyBnZW5lcmF0ZSBhIFBlcmwgbW9kdWxlIGZpbGUgdGhhdCBjYXB0dXJlcyB0aGUgc3RydWN0dXJlIG9mCisjIHRoZSBjb2RlIGluY2x1ZGluZyBhbGwgZG9jdW1lbnRhdGlvbi4gTm90ZSB0aGF0IHRoaXMKKyMgZmVhdHVyZSBpcyBzdGlsbCBleHBlcmltZW50YWwgYW5kIGluY29tcGxldGUgYXQgdGhlCisjIG1vbWVudC4KKworR0VORVJBVEVfUEVSTE1PRCAgICAgICA9IE5PCisKKyMgSWYgdGhlIFBFUkxNT0RfTEFURVggdGFnIGlzIHNldCB0byBZRVMgRG94eWdlbiB3aWxsIGdlbmVyYXRlCisjIHRoZSBuZWNlc3NhcnkgTWFrZWZpbGUgcnVsZXMsIFBlcmwgc2NyaXB0cyBhbmQgTGFUZVggY29kZSB0byBiZSBhYmxlCisjIHRvIGdlbmVyYXRlIFBERiBhbmQgRFZJIG91dHB1dCBmcm9tIHRoZSBQZXJsIG1vZHVsZSBvdXRwdXQuCisKK1BFUkxNT0RfTEFURVggICAgICAgICAgPSBOTworCisjIElmIHRoZSBQRVJMTU9EX1BSRVRUWSB0YWcgaXMgc2V0IHRvIFlFUyB0aGUgUGVybCBtb2R1bGUgb3V0cHV0IHdpbGwgYmUKKyMgbmljZWx5IGZvcm1hdHRlZCBzbyBpdCBjYW4gYmUgcGFyc2VkIGJ5IGEgaHVtYW4gcmVhZGVyLgorIyBUaGlzIGlzIHVzZWZ1bAorIyBpZiB5b3Ugd2FudCB0byB1bmRlcnN0YW5kIHdoYXQgaXMgZ29pbmcgb24uCisjIE9uIHRoZSBvdGhlciBoYW5kLCBpZiB0aGlzCisjIHRhZyBpcyBzZXQgdG8gTk8gdGhlIHNpemUgb2YgdGhlIFBlcmwgbW9kdWxlIG91dHB1dCB3aWxsIGJlIG11Y2ggc21hbGxlcgorIyBhbmQgUGVybCB3aWxsIHBhcnNlIGl0IGp1c3QgdGhlIHNhbWUuCisKK1BFUkxNT0RfUFJFVFRZICAgICAgICAgPSBZRVMKKworIyBUaGUgbmFtZXMgb2YgdGhlIG1ha2UgdmFyaWFibGVzIGluIHRoZSBnZW5lcmF0ZWQgZG94eXJ1bGVzLm1ha2UgZmlsZQorIyBhcmUgcHJlZml4ZWQgd2l0aCB0aGUgc3RyaW5nIGNvbnRhaW5lZCBpbiBQRVJMTU9EX01BS0VWQVJfUFJFRklYLgorIyBUaGlzIGlzIHVzZWZ1bCBzbyBkaWZmZXJlbnQgZG94eXJ1bGVzLm1ha2UgZmlsZXMgaW5jbHVkZWQgYnkgdGhlIHNhbWUKKyMgTWFrZWZpbGUgZG9uJ3Qgb3ZlcndyaXRlIGVhY2ggb3RoZXIncyB2YXJpYWJsZXMuCisKK1BFUkxNT0RfTUFLRVZBUl9QUkVGSVggPQorCisjLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisjIENvbmZpZ3VyYXRpb24gb3B0aW9ucyByZWxhdGVkIHRvIHRoZSBwcmVwcm9jZXNzb3IKKyMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworIyBJZiB0aGUgRU5BQkxFX1BSRVBST0NFU1NJTkcgdGFnIGlzIHNldCB0byBZRVMgKHRoZSBkZWZhdWx0KSBEb3h5Z2VuIHdpbGwKKyMgZXZhbHVhdGUgYWxsIEMtcHJlcHJvY2Vzc29yIGRpcmVjdGl2ZXMgZm91bmQgaW4gdGhlIHNvdXJjZXMgYW5kIGluY2x1ZGUKKyMgZmlsZXMuCisKK0VOQUJMRV9QUkVQUk9DRVNTSU5HICAgPSBZRVMKKworIyBJZiB0aGUgTUFDUk9fRVhQQU5TSU9OIHRhZyBpcyBzZXQgdG8gWUVTIERveHlnZW4gd2lsbCBleHBhbmQgYWxsIG1hY3JvCisjIG5hbWVzIGluIHRoZSBzb3VyY2UgY29kZS4gSWYgc2V0IHRvIE5PICh0aGUgZGVmYXVsdCkgb25seSBjb25kaXRpb25hbAorIyBjb21waWxhdGlvbiB3aWxsIGJlIHBlcmZvcm1lZC4gTWFjcm8gZXhwYW5zaW9uIGNhbiBiZSBkb25lIGluIGEgY29udHJvbGxlZAorIyB3YXkgYnkgc2V0dGluZyBFWFBBTkRfT05MWV9QUkVERUYgdG8gWUVTLgorCitNQUNST19FWFBBTlNJT04gICAgICAgID0gTk8KKworIyBJZiB0aGUgRVhQQU5EX09OTFlfUFJFREVGIGFuZCBNQUNST19FWFBBTlNJT04gdGFncyBhcmUgYm90aCBzZXQgdG8gWUVTCisjIHRoZW4gdGhlIG1hY3JvIGV4cGFuc2lvbiBpcyBsaW1pdGVkIHRvIHRoZSBtYWNyb3Mgc3BlY2lmaWVkIHdpdGggdGhlCisjIFBSRURFRklORUQgYW5kIEVYUEFORF9BU19ERUZJTkVEIHRhZ3MuCisKK0VYUEFORF9PTkxZX1BSRURFRiAgICAgPSBOTworCisjIElmIHRoZSBTRUFSQ0hfSU5DTFVERVMgdGFnIGlzIHNldCB0byBZRVMgKHRoZSBkZWZhdWx0KSB0aGUgaW5jbHVkZXMgZmlsZXMKKyMgaW4gdGhlIElOQ0xVREVfUEFUSCAoc2VlIGJlbG93KSB3aWxsIGJlIHNlYXJjaCBpZiBhICNpbmNsdWRlIGlzIGZvdW5kLgorCitTRUFSQ0hfSU5DTFVERVMgICAgICAgID0gWUVTCisKKyMgVGhlIElOQ0xVREVfUEFUSCB0YWcgY2FuIGJlIHVzZWQgdG8gc3BlY2lmeSBvbmUgb3IgbW9yZSBkaXJlY3RvcmllcyB0aGF0CisjIGNvbnRhaW4gaW5jbHVkZSBmaWxlcyB0aGF0IGFyZSBub3QgaW5wdXQgZmlsZXMgYnV0IHNob3VsZCBiZSBwcm9jZXNzZWQgYnkKKyMgdGhlIHByZXByb2Nlc3Nvci4KKworSU5DTFVERV9QQVRIICAgICAgICAgICA9CisKKyMgWW91IGNhbiB1c2UgdGhlIElOQ0xVREVfRklMRV9QQVRURVJOUyB0YWcgdG8gc3BlY2lmeSBvbmUgb3IgbW9yZSB3aWxkY2FyZAorIyBwYXR0ZXJucyAobGlrZSAqLmggYW5kICouaHBwKSB0byBmaWx0ZXIgb3V0IHRoZSBoZWFkZXItZmlsZXMgaW4gdGhlCisjIGRpcmVjdG9yaWVzLiBJZiBsZWZ0IGJsYW5rLCB0aGUgcGF0dGVybnMgc3BlY2lmaWVkIHdpdGggRklMRV9QQVRURVJOUyB3aWxsCisjIGJlIHVzZWQuCisKK0lOQ0xVREVfRklMRV9QQVRURVJOUyAgPQorCisjIFRoZSBQUkVERUZJTkVEIHRhZyBjYW4gYmUgdXNlZCB0byBzcGVjaWZ5IG9uZSBvciBtb3JlIG1hY3JvIG5hbWVzIHRoYXQKKyMgYXJlIGRlZmluZWQgYmVmb3JlIHRoZSBwcmVwcm9jZXNzb3IgaXMgc3RhcnRlZCAoc2ltaWxhciB0byB0aGUgLUQgb3B0aW9uIG9mCisjIGdjYykuIFRoZSBhcmd1bWVudCBvZiB0aGUgdGFnIGlzIGEgbGlzdCBvZiBtYWNyb3Mgb2YgdGhlIGZvcm06IG5hbWUKKyMgb3IgbmFtZT1kZWZpbml0aW9uIChubyBzcGFjZXMpLiBJZiB0aGUgZGVmaW5pdGlvbiBhbmQgdGhlID0gYXJlCisjIG9taXR0ZWQgPTEgaXMgYXNzdW1lZC4gVG8gcHJldmVudCBhIG1hY3JvIGRlZmluaXRpb24gZnJvbSBiZWluZworIyB1bmRlZmluZWQgdmlhICN1bmRlZiBvciByZWN1cnNpdmVseSBleHBhbmRlZCB1c2UgdGhlIDo9IG9wZXJhdG9yCisjIGluc3RlYWQgb2YgdGhlID0gb3BlcmF0b3IuCisKK1BSRURFRklORUQgICAgICAgICAgICAgPQorCisjIElmIHRoZSBNQUNST19FWFBBTlNJT04gYW5kIEVYUEFORF9PTkxZX1BSRURFRiB0YWdzIGFyZSBzZXQgdG8gWUVTIHRoZW4KKyMgdGhpcyB0YWcgY2FuIGJlIHVzZWQgdG8gc3BlY2lmeSBhIGxpc3Qgb2YgbWFjcm8gbmFtZXMgdGhhdCBzaG91bGQgYmUgZXhwYW5kZWQuCisjIFRoZSBtYWNybyBkZWZpbml0aW9uIHRoYXQgaXMgZm91bmQgaW4gdGhlIHNvdXJjZXMgd2lsbCBiZSB1c2VkLgorIyBVc2UgdGhlIFBSRURFRklORUQgdGFnIGlmIHlvdSB3YW50IHRvIHVzZSBhIGRpZmZlcmVudCBtYWNybyBkZWZpbml0aW9uLgorCitFWFBBTkRfQVNfREVGSU5FRCAgICAgID0KKworIyBJZiB0aGUgU0tJUF9GVU5DVElPTl9NQUNST1MgdGFnIGlzIHNldCB0byBZRVMgKHRoZSBkZWZhdWx0KSB0aGVuCisjIGRveHlnZW4ncyBwcmVwcm9jZXNzb3Igd2lsbCByZW1vdmUgYWxsIGZ1bmN0aW9uLWxpa2UgbWFjcm9zIHRoYXQgYXJlIGFsb25lCisjIG9uIGEgbGluZSwgaGF2ZSBhbiBhbGwgdXBwZXJjYXNlIG5hbWUsIGFuZCBkbyBub3QgZW5kIHdpdGggYSBzZW1pY29sb24uIFN1Y2gKKyMgZnVuY3Rpb24gbWFjcm9zIGFyZSB0eXBpY2FsbHkgdXNlZCBmb3IgYm9pbGVyLXBsYXRlIGNvZGUsIGFuZCB3aWxsIGNvbmZ1c2UKKyMgdGhlIHBhcnNlciBpZiBub3QgcmVtb3ZlZC4KKworU0tJUF9GVU5DVElPTl9NQUNST1MgICA9IFlFUworCisjLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisjIENvbmZpZ3VyYXRpb246OmFkZGl0aW9ucyByZWxhdGVkIHRvIGV4dGVybmFsIHJlZmVyZW5jZXMKKyMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworIyBUaGUgVEFHRklMRVMgb3B0aW9uIGNhbiBiZSB1c2VkIHRvIHNwZWNpZnkgb25lIG9yIG1vcmUgdGFnZmlsZXMuCisjIE9wdGlvbmFsbHkgYW4gaW5pdGlhbCBsb2NhdGlvbiBvZiB0aGUgZXh0ZXJuYWwgZG9jdW1lbnRhdGlvbgorIyBjYW4gYmUgYWRkZWQgZm9yIGVhY2ggdGFnZmlsZS4gVGhlIGZvcm1hdCBvZiBhIHRhZyBmaWxlIHdpdGhvdXQKKyMgdGhpcyBsb2NhdGlvbiBpcyBhcyBmb2xsb3dzOgorIworIyBUQUdGSUxFUyA9IGZpbGUxIGZpbGUyIC4uLgorIyBBZGRpbmcgbG9jYXRpb24gZm9yIHRoZSB0YWcgZmlsZXMgaXMgZG9uZSBhcyBmb2xsb3dzOgorIworIyBUQUdGSUxFUyA9IGZpbGUxPWxvYzEgImZpbGUyID0gbG9jMiIgLi4uCisjIHdoZXJlICJsb2MxIiBhbmQgImxvYzIiIGNhbiBiZSByZWxhdGl2ZSBvciBhYnNvbHV0ZSBwYXRocyBvcgorIyBVUkxzLiBJZiBhIGxvY2F0aW9uIGlzIHByZXNlbnQgZm9yIGVhY2ggdGFnLCB0aGUgaW5zdGFsbGRveCB0b29sCisjIGRvZXMgbm90IGhhdmUgdG8gYmUgcnVuIHRvIGNvcnJlY3QgdGhlIGxpbmtzLgorIyBOb3RlIHRoYXQgZWFjaCB0YWcgZmlsZSBtdXN0IGhhdmUgYSB1bmlxdWUgbmFtZQorIyAod2hlcmUgdGhlIG5hbWUgZG9lcyBOT1QgaW5jbHVkZSB0aGUgcGF0aCkKKyMgSWYgYSB0YWcgZmlsZSBpcyBub3QgbG9jYXRlZCBpbiB0aGUgZGlyZWN0b3J5IGluIHdoaWNoIGRveHlnZW4KKyMgaXMgcnVuLCB5b3UgbXVzdCBhbHNvIHNwZWNpZnkgdGhlIHBhdGggdG8gdGhlIHRhZ2ZpbGUgaGVyZS4KKworVEFHRklMRVMgICAgICAgICAgICAgICA9CisKKyMgV2hlbiBhIGZpbGUgbmFtZSBpcyBzcGVjaWZpZWQgYWZ0ZXIgR0VORVJBVEVfVEFHRklMRSwgZG94eWdlbiB3aWxsIGNyZWF0ZQorIyBhIHRhZyBmaWxlIHRoYXQgaXMgYmFzZWQgb24gdGhlIGlucHV0IGZpbGVzIGl0IHJlYWRzLgorCitHRU5FUkFURV9UQUdGSUxFICAgICAgID0KKworIyBJZiB0aGUgQUxMRVhURVJOQUxTIHRhZyBpcyBzZXQgdG8gWUVTIGFsbCBleHRlcm5hbCBjbGFzc2VzIHdpbGwgYmUgbGlzdGVkCisjIGluIHRoZSBjbGFzcyBpbmRleC4gSWYgc2V0IHRvIE5PIG9ubHkgdGhlIGluaGVyaXRlZCBleHRlcm5hbCBjbGFzc2VzCisjIHdpbGwgYmUgbGlzdGVkLgorCitBTExFWFRFUk5BTFMgICAgICAgICAgID0gTk8KKworIyBJZiB0aGUgRVhURVJOQUxfR1JPVVBTIHRhZyBpcyBzZXQgdG8gWUVTIGFsbCBleHRlcm5hbCBncm91cHMgd2lsbCBiZSBsaXN0ZWQKKyMgaW4gdGhlIG1vZHVsZXMgaW5kZXguIElmIHNldCB0byBOTywgb25seSB0aGUgY3VycmVudCBwcm9qZWN0J3MgZ3JvdXBzIHdpbGwKKyMgYmUgbGlzdGVkLgorCitFWFRFUk5BTF9HUk9VUFMgICAgICAgID0gWUVTCisKKyMgVGhlIFBFUkxfUEFUSCBzaG91bGQgYmUgdGhlIGFic29sdXRlIHBhdGggYW5kIG5hbWUgb2YgdGhlIHBlcmwgc2NyaXB0CisjIGludGVycHJldGVyIChpLmUuIHRoZSByZXN1bHQgb2YgYHdoaWNoIHBlcmwnKS4KKworUEVSTF9QQVRIICAgICAgICAgICAgICA9IC91c3IvYmluL3BlcmwKKworIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIyBDb25maWd1cmF0aW9uIG9wdGlvbnMgcmVsYXRlZCB0byB0aGUgZG90IHRvb2wKKyMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworIyBJZiB0aGUgQ0xBU1NfRElBR1JBTVMgdGFnIGlzIHNldCB0byBZRVMgKHRoZSBkZWZhdWx0KSBEb3h5Z2VuIHdpbGwKKyMgZ2VuZXJhdGUgYSBpbmhlcml0YW5jZSBkaWFncmFtIChpbiBIVE1MLCBSVEYgYW5kIExhVGVYKSBmb3IgY2xhc3NlcyB3aXRoIGJhc2UKKyMgb3Igc3VwZXIgY2xhc3Nlcy4gU2V0dGluZyB0aGUgdGFnIHRvIE5PIHR1cm5zIHRoZSBkaWFncmFtcyBvZmYuIE5vdGUgdGhhdAorIyB0aGlzIG9wdGlvbiBpcyBzdXBlcnNlZGVkIGJ5IHRoZSBIQVZFX0RPVCBvcHRpb24gYmVsb3cuIFRoaXMgaXMgb25seSBhCisjIGZhbGxiYWNrLiBJdCBpcyByZWNvbW1lbmRlZCB0byBpbnN0YWxsIGFuZCB1c2UgZG90LCBzaW5jZSBpdCB5aWVsZHMgbW9yZQorIyBwb3dlcmZ1bCBncmFwaHMuCisKK0NMQVNTX0RJQUdSQU1TICAgICAgICAgPSBZRVMKKworIyBZb3UgY2FuIGRlZmluZSBtZXNzYWdlIHNlcXVlbmNlIGNoYXJ0cyB3aXRoaW4gZG94eWdlbiBjb21tZW50cyB1c2luZyB0aGUgXG1zYworIyBjb21tYW5kLiBEb3h5Z2VuIHdpbGwgdGhlbiBydW4gdGhlIG1zY2dlbiB0b29sIChzZWUKKyMgaHR0cDovL3d3dy5tY3Rlcm5hbi5tZS51ay9tc2NnZW4vKSB0byBwcm9kdWNlIHRoZSBjaGFydCBhbmQgaW5zZXJ0IGl0IGluIHRoZQorIyBkb2N1bWVudGF0aW9uLiBUaGUgTVNDR0VOX1BBVEggdGFnIGFsbG93cyB5b3UgdG8gc3BlY2lmeSB0aGUgZGlyZWN0b3J5IHdoZXJlCisjIHRoZSBtc2NnZW4gdG9vbCByZXNpZGVzLiBJZiBsZWZ0IGVtcHR5IHRoZSB0b29sIGlzIGFzc3VtZWQgdG8gYmUgZm91bmQgaW4gdGhlCisjIGRlZmF1bHQgc2VhcmNoIHBhdGguCisKK01TQ0dFTl9QQVRIICAgICAgICAgICAgPQorCisjIElmIHNldCB0byBZRVMsIHRoZSBpbmhlcml0YW5jZSBhbmQgY29sbGFib3JhdGlvbiBncmFwaHMgd2lsbCBoaWRlCisjIGluaGVyaXRhbmNlIGFuZCB1c2FnZSByZWxhdGlvbnMgaWYgdGhlIHRhcmdldCBpcyB1bmRvY3VtZW50ZWQKKyMgb3IgaXMgbm90IGEgY2xhc3MuCisKK0hJREVfVU5ET0NfUkVMQVRJT05TICAgPSBZRVMKKworIyBJZiB5b3Ugc2V0IHRoZSBIQVZFX0RPVCB0YWcgdG8gWUVTIHRoZW4gZG94eWdlbiB3aWxsIGFzc3VtZSB0aGUgZG90IHRvb2wgaXMKKyMgYXZhaWxhYmxlIGZyb20gdGhlIHBhdGguIFRoaXMgdG9vbCBpcyBwYXJ0IG9mIEdyYXBodml6LCBhIGdyYXBoIHZpc3VhbGl6YXRpb24KKyMgdG9vbGtpdCBmcm9tIEFUJlQgYW5kIEx1Y2VudCBCZWxsIExhYnMuIFRoZSBvdGhlciBvcHRpb25zIGluIHRoaXMgc2VjdGlvbgorIyBoYXZlIG5vIGVmZmVjdCBpZiB0aGlzIG9wdGlvbiBpcyBzZXQgdG8gTk8gKHRoZSBkZWZhdWx0KQorCitIQVZFX0RPVCAgICAgICAgICAgICAgID0gQEhBVkVfRE9UQAorCisjIEJ5IGRlZmF1bHQgZG94eWdlbiB3aWxsIHdyaXRlIGEgZm9udCBjYWxsZWQgRnJlZVNhbnMudHRmIHRvIHRoZSBvdXRwdXQKKyMgZGlyZWN0b3J5IGFuZCByZWZlcmVuY2UgaXQgaW4gYWxsIGRvdCBmaWxlcyB0aGF0IGRveHlnZW4gZ2VuZXJhdGVzLiBUaGlzCisjIGZvbnQgZG9lcyBub3QgaW5jbHVkZSBhbGwgcG9zc2libGUgdW5pY29kZSBjaGFyYWN0ZXJzIGhvd2V2ZXIsIHNvIHdoZW4geW91IG5lZWQKKyMgdGhlc2UgKG9yIGp1c3Qgd2FudCBhIGRpZmZlcmVudGx5IGxvb2tpbmcgZm9udCkgeW91IGNhbiBzcGVjaWZ5IHRoZSBmb250IG5hbWUKKyMgdXNpbmcgRE9UX0ZPTlROQU1FLiBZb3UgbmVlZCBuZWVkIHRvIG1ha2Ugc3VyZSBkb3QgaXMgYWJsZSB0byBmaW5kIHRoZSBmb250LAorIyB3aGljaCBjYW4gYmUgZG9uZSBieSBwdXR0aW5nIGl0IGluIGEgc3RhbmRhcmQgbG9jYXRpb24gb3IgYnkgc2V0dGluZyB0aGUKKyMgRE9URk9OVFBBVEggZW52aXJvbm1lbnQgdmFyaWFibGUgb3IgYnkgc2V0dGluZyBET1RfRk9OVFBBVEggdG8gdGhlIGRpcmVjdG9yeQorIyBjb250YWluaW5nIHRoZSBmb250LgorCitET1RfRk9OVE5BTUUgICAgICAgICAgID0gRnJlZVNhbnMKKworIyBUaGUgRE9UX0ZPTlRTSVpFIHRhZyBjYW4gYmUgdXNlZCB0byBzZXQgdGhlIHNpemUgb2YgdGhlIGZvbnQgb2YgZG90IGdyYXBocy4KKyMgVGhlIGRlZmF1bHQgc2l6ZSBpcyAxMHB0LgorCitET1RfRk9OVFNJWkUgICAgICAgICAgID0gMTAKKworIyBCeSBkZWZhdWx0IGRveHlnZW4gd2lsbCB0ZWxsIGRvdCB0byB1c2UgdGhlIG91dHB1dCBkaXJlY3RvcnkgdG8gbG9vayBmb3IgdGhlCisjIEZyZWVTYW5zLnR0ZiBmb250ICh3aGljaCBkb3h5Z2VuIHdpbGwgcHV0IHRoZXJlIGl0c2VsZikuIElmIHlvdSBzcGVjaWZ5IGEKKyMgZGlmZmVyZW50IGZvbnQgdXNpbmcgRE9UX0ZPTlROQU1FIHlvdSBjYW4gc2V0IHRoZSBwYXRoIHdoZXJlIGRvdAorIyBjYW4gZmluZCBpdCB1c2luZyB0aGlzIHRhZy4KKworRE9UX0ZPTlRQQVRIICAgICAgICAgICA9CisKKyMgSWYgdGhlIENMQVNTX0dSQVBIIGFuZCBIQVZFX0RPVCB0YWdzIGFyZSBzZXQgdG8gWUVTIHRoZW4gZG94eWdlbgorIyB3aWxsIGdlbmVyYXRlIGEgZ3JhcGggZm9yIGVhY2ggZG9jdW1lbnRlZCBjbGFzcyBzaG93aW5nIHRoZSBkaXJlY3QgYW5kCisjIGluZGlyZWN0IGluaGVyaXRhbmNlIHJlbGF0aW9ucy4gU2V0dGluZyB0aGlzIHRhZyB0byBZRVMgd2lsbCBmb3JjZSB0aGUKKyMgdGhlIENMQVNTX0RJQUdSQU1TIHRhZyB0byBOTy4KKworQ0xBU1NfR1JBUEggICAgICAgICAgICA9IFlFUworCisjIElmIHRoZSBDT0xMQUJPUkFUSU9OX0dSQVBIIGFuZCBIQVZFX0RPVCB0YWdzIGFyZSBzZXQgdG8gWUVTIHRoZW4gZG94eWdlbgorIyB3aWxsIGdlbmVyYXRlIGEgZ3JhcGggZm9yIGVhY2ggZG9jdW1lbnRlZCBjbGFzcyBzaG93aW5nIHRoZSBkaXJlY3QgYW5kCisjIGluZGlyZWN0IGltcGxlbWVudGF0aW9uIGRlcGVuZGVuY2llcyAoaW5oZXJpdGFuY2UsIGNvbnRhaW5tZW50LCBhbmQKKyMgY2xhc3MgcmVmZXJlbmNlcyB2YXJpYWJsZXMpIG9mIHRoZSBjbGFzcyB3aXRoIG90aGVyIGRvY3VtZW50ZWQgY2xhc3Nlcy4KKworQ09MTEFCT1JBVElPTl9HUkFQSCAgICA9IFlFUworCisjIElmIHRoZSBHUk9VUF9HUkFQSFMgYW5kIEhBVkVfRE9UIHRhZ3MgYXJlIHNldCB0byBZRVMgdGhlbiBkb3h5Z2VuCisjIHdpbGwgZ2VuZXJhdGUgYSBncmFwaCBmb3IgZ3JvdXBzLCBzaG93aW5nIHRoZSBkaXJlY3QgZ3JvdXBzIGRlcGVuZGVuY2llcworCitHUk9VUF9HUkFQSFMgICAgICAgICAgID0gWUVTCisKKyMgSWYgdGhlIFVNTF9MT09LIHRhZyBpcyBzZXQgdG8gWUVTIGRveHlnZW4gd2lsbCBnZW5lcmF0ZSBpbmhlcml0YW5jZSBhbmQKKyMgY29sbGFib3JhdGlvbiBkaWFncmFtcyBpbiBhIHN0eWxlIHNpbWlsYXIgdG8gdGhlIE9NRydzIFVuaWZpZWQgTW9kZWxpbmcKKyMgTGFuZ3VhZ2UuCisKK1VNTF9MT09LICAgICAgICAgICAgICAgPSBOTworCisjIElmIHNldCB0byBZRVMsIHRoZSBpbmhlcml0YW5jZSBhbmQgY29sbGFib3JhdGlvbiBncmFwaHMgd2lsbCBzaG93IHRoZQorIyByZWxhdGlvbnMgYmV0d2VlbiB0ZW1wbGF0ZXMgYW5kIHRoZWlyIGluc3RhbmNlcy4KKworVEVNUExBVEVfUkVMQVRJT05TICAgICA9IE5PCisKKyMgSWYgdGhlIEVOQUJMRV9QUkVQUk9DRVNTSU5HLCBTRUFSQ0hfSU5DTFVERVMsIElOQ0xVREVfR1JBUEgsIGFuZCBIQVZFX0RPVAorIyB0YWdzIGFyZSBzZXQgdG8gWUVTIHRoZW4gZG94eWdlbiB3aWxsIGdlbmVyYXRlIGEgZ3JhcGggZm9yIGVhY2ggZG9jdW1lbnRlZAorIyBmaWxlIHNob3dpbmcgdGhlIGRpcmVjdCBhbmQgaW5kaXJlY3QgaW5jbHVkZSBkZXBlbmRlbmNpZXMgb2YgdGhlIGZpbGUgd2l0aAorIyBvdGhlciBkb2N1bWVudGVkIGZpbGVzLgorCitJTkNMVURFX0dSQVBIICAgICAgICAgID0gWUVTCisKKyMgSWYgdGhlIEVOQUJMRV9QUkVQUk9DRVNTSU5HLCBTRUFSQ0hfSU5DTFVERVMsIElOQ0xVREVEX0JZX0dSQVBILCBhbmQKKyMgSEFWRV9ET1QgdGFncyBhcmUgc2V0IHRvIFlFUyB0aGVuIGRveHlnZW4gd2lsbCBnZW5lcmF0ZSBhIGdyYXBoIGZvciBlYWNoCisjIGRvY3VtZW50ZWQgaGVhZGVyIGZpbGUgc2hvd2luZyB0aGUgZG9jdW1lbnRlZCBmaWxlcyB0aGF0IGRpcmVjdGx5IG9yCisjIGluZGlyZWN0bHkgaW5jbHVkZSB0aGlzIGZpbGUuCisKK0lOQ0xVREVEX0JZX0dSQVBIICAgICAgPSBZRVMKKworIyBJZiB0aGUgQ0FMTF9HUkFQSCBhbmQgSEFWRV9ET1Qgb3B0aW9ucyBhcmUgc2V0IHRvIFlFUyB0aGVuCisjIGRveHlnZW4gd2lsbCBnZW5lcmF0ZSBhIGNhbGwgZGVwZW5kZW5jeSBncmFwaCBmb3IgZXZlcnkgZ2xvYmFsIGZ1bmN0aW9uCisjIG9yIGNsYXNzIG1ldGhvZC4gTm90ZSB0aGF0IGVuYWJsaW5nIHRoaXMgb3B0aW9uIHdpbGwgc2lnbmlmaWNhbnRseSBpbmNyZWFzZQorIyB0aGUgdGltZSBvZiBhIHJ1bi4gU28gaW4gbW9zdCBjYXNlcyBpdCB3aWxsIGJlIGJldHRlciB0byBlbmFibGUgY2FsbCBncmFwaHMKKyMgZm9yIHNlbGVjdGVkIGZ1bmN0aW9ucyBvbmx5IHVzaW5nIHRoZSBcY2FsbGdyYXBoIGNvbW1hbmQuCisKK0NBTExfR1JBUEggICAgICAgICAgICAgPSBZRVMKKworIyBJZiB0aGUgQ0FMTEVSX0dSQVBIIGFuZCBIQVZFX0RPVCB0YWdzIGFyZSBzZXQgdG8gWUVTIHRoZW4KKyMgZG94eWdlbiB3aWxsIGdlbmVyYXRlIGEgY2FsbGVyIGRlcGVuZGVuY3kgZ3JhcGggZm9yIGV2ZXJ5IGdsb2JhbCBmdW5jdGlvbgorIyBvciBjbGFzcyBtZXRob2QuIE5vdGUgdGhhdCBlbmFibGluZyB0aGlzIG9wdGlvbiB3aWxsIHNpZ25pZmljYW50bHkgaW5jcmVhc2UKKyMgdGhlIHRpbWUgb2YgYSBydW4uIFNvIGluIG1vc3QgY2FzZXMgaXQgd2lsbCBiZSBiZXR0ZXIgdG8gZW5hYmxlIGNhbGxlcgorIyBncmFwaHMgZm9yIHNlbGVjdGVkIGZ1bmN0aW9ucyBvbmx5IHVzaW5nIHRoZSBcY2FsbGVyZ3JhcGggY29tbWFuZC4KKworQ0FMTEVSX0dSQVBIICAgICAgICAgICA9IFlFUworCisjIElmIHRoZSBHUkFQSElDQUxfSElFUkFSQ0hZIGFuZCBIQVZFX0RPVCB0YWdzIGFyZSBzZXQgdG8gWUVTIHRoZW4gZG94eWdlbgorIyB3aWxsIGdyYXBoaWNhbCBoaWVyYXJjaHkgb2YgYWxsIGNsYXNzZXMgaW5zdGVhZCBvZiBhIHRleHR1YWwgb25lLgorCitHUkFQSElDQUxfSElFUkFSQ0hZICAgID0gWUVTCisKKyMgSWYgdGhlIERJUkVDVE9SWV9HUkFQSCwgU0hPV19ESVJFQ1RPUklFUyBhbmQgSEFWRV9ET1QgdGFncyBhcmUgc2V0IHRvIFlFUworIyB0aGVuIGRveHlnZW4gd2lsbCBzaG93IHRoZSBkZXBlbmRlbmNpZXMgYSBkaXJlY3RvcnkgaGFzIG9uIG90aGVyIGRpcmVjdG9yaWVzCisjIGluIGEgZ3JhcGhpY2FsIHdheS4gVGhlIGRlcGVuZGVuY3kgcmVsYXRpb25zIGFyZSBkZXRlcm1pbmVkIGJ5IHRoZSAjaW5jbHVkZQorIyByZWxhdGlvbnMgYmV0d2VlbiB0aGUgZmlsZXMgaW4gdGhlIGRpcmVjdG9yaWVzLgorCitESVJFQ1RPUllfR1JBUEggICAgICAgID0gWUVTCisKKyMgVGhlIERPVF9JTUFHRV9GT1JNQVQgdGFnIGNhbiBiZSB1c2VkIHRvIHNldCB0aGUgaW1hZ2UgZm9ybWF0IG9mIHRoZSBpbWFnZXMKKyMgZ2VuZXJhdGVkIGJ5IGRvdC4gUG9zc2libGUgdmFsdWVzIGFyZSBwbmcsIGpwZywgb3IgZ2lmCisjIElmIGxlZnQgYmxhbmsgcG5nIHdpbGwgYmUgdXNlZC4KKworRE9UX0lNQUdFX0ZPUk1BVCAgICAgICA9IHBuZworCisjIFRoZSB0YWcgRE9UX1BBVEggY2FuIGJlIHVzZWQgdG8gc3BlY2lmeSB0aGUgcGF0aCB3aGVyZSB0aGUgZG90IHRvb2wgY2FuIGJlCisjIGZvdW5kLiBJZiBsZWZ0IGJsYW5rLCBpdCBpcyBhc3N1bWVkIHRoZSBkb3QgdG9vbCBjYW4gYmUgZm91bmQgaW4gdGhlIHBhdGguCisKK0RPVF9QQVRIICAgICAgICAgICAgICAgPQorCisjIFRoZSBET1RGSUxFX0RJUlMgdGFnIGNhbiBiZSB1c2VkIHRvIHNwZWNpZnkgb25lIG9yIG1vcmUgZGlyZWN0b3JpZXMgdGhhdAorIyBjb250YWluIGRvdCBmaWxlcyB0aGF0IGFyZSBpbmNsdWRlZCBpbiB0aGUgZG9jdW1lbnRhdGlvbiAoc2VlIHRoZQorIyBcZG90ZmlsZSBjb21tYW5kKS4KKworRE9URklMRV9ESVJTICAgICAgICAgICA9CisKKyMgVGhlIERPVF9HUkFQSF9NQVhfTk9ERVMgdGFnIGNhbiBiZSB1c2VkIHRvIHNldCB0aGUgbWF4aW11bSBudW1iZXIgb2YKKyMgbm9kZXMgdGhhdCB3aWxsIGJlIHNob3duIGluIHRoZSBncmFwaC4gSWYgdGhlIG51bWJlciBvZiBub2RlcyBpbiBhIGdyYXBoCisjIGJlY29tZXMgbGFyZ2VyIHRoYW4gdGhpcyB2YWx1ZSwgZG94eWdlbiB3aWxsIHRydW5jYXRlIHRoZSBncmFwaCwgd2hpY2ggaXMKKyMgdmlzdWFsaXplZCBieSByZXByZXNlbnRpbmcgYSBub2RlIGFzIGEgcmVkIGJveC4gTm90ZSB0aGF0IGRveHlnZW4gaWYgdGhlCisjIG51bWJlciBvZiBkaXJlY3QgY2hpbGRyZW4gb2YgdGhlIHJvb3Qgbm9kZSBpbiBhIGdyYXBoIGlzIGFscmVhZHkgbGFyZ2VyIHRoYW4KKyMgRE9UX0dSQVBIX01BWF9OT0RFUyB0aGVuIHRoZSBncmFwaCB3aWxsIG5vdCBiZSBzaG93biBhdCBhbGwuIEFsc28gbm90ZQorIyB0aGF0IHRoZSBzaXplIG9mIGEgZ3JhcGggY2FuIGJlIGZ1cnRoZXIgcmVzdHJpY3RlZCBieSBNQVhfRE9UX0dSQVBIX0RFUFRILgorCitET1RfR1JBUEhfTUFYX05PREVTICAgID0gNTAKKworIyBUaGUgTUFYX0RPVF9HUkFQSF9ERVBUSCB0YWcgY2FuIGJlIHVzZWQgdG8gc2V0IHRoZSBtYXhpbXVtIGRlcHRoIG9mIHRoZQorIyBncmFwaHMgZ2VuZXJhdGVkIGJ5IGRvdC4gQSBkZXB0aCB2YWx1ZSBvZiAzIG1lYW5zIHRoYXQgb25seSBub2RlcyByZWFjaGFibGUKKyMgZnJvbSB0aGUgcm9vdCBieSBmb2xsb3dpbmcgYSBwYXRoIHZpYSBhdCBtb3N0IDMgZWRnZXMgd2lsbCBiZSBzaG93bi4gTm9kZXMKKyMgdGhhdCBsYXkgZnVydGhlciBmcm9tIHRoZSByb290IG5vZGUgd2lsbCBiZSBvbWl0dGVkLiBOb3RlIHRoYXQgc2V0dGluZyB0aGlzCisjIG9wdGlvbiB0byAxIG9yIDIgbWF5IGdyZWF0bHkgcmVkdWNlIHRoZSBjb21wdXRhdGlvbiB0aW1lIG5lZWRlZCBmb3IgbGFyZ2UKKyMgY29kZSBiYXNlcy4gQWxzbyBub3RlIHRoYXQgdGhlIHNpemUgb2YgYSBncmFwaCBjYW4gYmUgZnVydGhlciByZXN0cmljdGVkIGJ5CisjIERPVF9HUkFQSF9NQVhfTk9ERVMuIFVzaW5nIGEgZGVwdGggb2YgMCBtZWFucyBubyBkZXB0aCByZXN0cmljdGlvbi4KKworTUFYX0RPVF9HUkFQSF9ERVBUSCAgICA9IDAKKworIyBTZXQgdGhlIERPVF9UUkFOU1BBUkVOVCB0YWcgdG8gWUVTIHRvIGdlbmVyYXRlIGltYWdlcyB3aXRoIGEgdHJhbnNwYXJlbnQKKyMgYmFja2dyb3VuZC4gVGhpcyBpcyBkaXNhYmxlZCBieSBkZWZhdWx0LCBiZWNhdXNlIGRvdCBvbiBXaW5kb3dzIGRvZXMgbm90CisjIHNlZW0gdG8gc3VwcG9ydCB0aGlzIG91dCBvZiB0aGUgYm94LiBXYXJuaW5nOiBEZXBlbmRpbmcgb24gdGhlIHBsYXRmb3JtIHVzZWQsCisjIGVuYWJsaW5nIHRoaXMgb3B0aW9uIG1heSBsZWFkIHRvIGJhZGx5IGFudGktYWxpYXNlZCBsYWJlbHMgb24gdGhlIGVkZ2VzIG9mCisjIGEgZ3JhcGggKGkuZS4gdGhleSBiZWNvbWUgaGFyZCB0byByZWFkKS4KKworRE9UX1RSQU5TUEFSRU5UICAgICAgICA9IFlFUworCisjIFNldCB0aGUgRE9UX01VTFRJX1RBUkdFVFMgdGFnIHRvIFlFUyBhbGxvdyBkb3QgdG8gZ2VuZXJhdGUgbXVsdGlwbGUgb3V0cHV0CisjIGZpbGVzIGluIG9uZSBydW4gKGkuZS4gbXVsdGlwbGUgLW8gYW5kIC1UIG9wdGlvbnMgb24gdGhlIGNvbW1hbmQgbGluZSkuIFRoaXMKKyMgbWFrZXMgZG90IHJ1biBmYXN0ZXIsIGJ1dCBzaW5jZSBvbmx5IG5ld2VyIHZlcnNpb25zIG9mIGRvdCAoPjEuOC4xMCkKKyMgc3VwcG9ydCB0aGlzLCB0aGlzIGZlYXR1cmUgaXMgZGlzYWJsZWQgYnkgZGVmYXVsdC4KKworRE9UX01VTFRJX1RBUkdFVFMgICAgICA9IFlFUworCisjIElmIHRoZSBHRU5FUkFURV9MRUdFTkQgdGFnIGlzIHNldCB0byBZRVMgKHRoZSBkZWZhdWx0KSBEb3h5Z2VuIHdpbGwKKyMgZ2VuZXJhdGUgYSBsZWdlbmQgcGFnZSBleHBsYWluaW5nIHRoZSBtZWFuaW5nIG9mIHRoZSB2YXJpb3VzIGJveGVzIGFuZAorIyBhcnJvd3MgaW4gdGhlIGRvdCBnZW5lcmF0ZWQgZ3JhcGhzLgorCitHRU5FUkFURV9MRUdFTkQgICAgICAgID0gWUVTCisKKyMgSWYgdGhlIERPVF9DTEVBTlVQIHRhZyBpcyBzZXQgdG8gWUVTICh0aGUgZGVmYXVsdCkgRG94eWdlbiB3aWxsCisjIHJlbW92ZSB0aGUgaW50ZXJtZWRpYXRlIGRvdCBmaWxlcyB0aGF0IGFyZSB1c2VkIHRvIGdlbmVyYXRlCisjIHRoZSB2YXJpb3VzIGdyYXBocy4KKworRE9UX0NMRUFOVVAgICAgICAgICAgICA9IFlFUwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kb2MvUkVBRE1FLmFwaSBiL2Rwa2ctMS4xNi4xLjEvZG9jL1JFQURNRS5hcGkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNmNkOGViMgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZG9jL1JFQURNRS5hcGkKQEAgLTAsMCArMSw0MSBAQAorVGhpcyBpcyBhbiAoaW5jb21wbGV0ZSkgbGlzdCBvZiBjdXJyZW50bHkgcHJvdmlkZWQgQVBJcyBieSBkcGtnLCBhbmQKK3RoZWlyIHN1cHBvcnRlZCBzdGF0dXMuCisKKworV2hhdDogbGliZHBrZy5hIChDIHN0YXRpYyBsaWJyYXJ5KQorU3RhdHVzOiB2b2xhdGlsZQorRGVzY3JpcHRpb246CisgVGhlIEFQSSBwcm92aWRlZCBieSB0aGlzIGxpYnJhcnkgaXMgaGlnaGx5IHZvbGF0aWxlLCBzdGlsbCBpbiB0aGUgcHJvY2VzcworIG9mIGJlaW5nIGNsZWFuZWQgdXAuIEl0J3Mgb25seSBzdXBwb3NlZCB0byBiZSB1c2VkIGludGVybmFsbHkgYnkgZHBrZyBmb3IKKyBub3cuIEhlYWRlciBmaWxlcywgZnVuY3Rpb25zLCB2YXJpYWJsZXMgYW5kIHR5cGVzIG1pZ2h0IGdldCByZW5hbWVkLAorIHJlbW92ZWQgb3IgY2hhbmdlIHNlbWFudGljcy4gSWYgeW91IHN0aWxsIGhhdmUgYSBuZWVkIHRvIHVzZSBpdCwgd2hpY2gKKyB5b3UnZCBiZSBkb2luZyBhbnl3YXksIHNheSBieSBsb2NhbGx5IGJ1aWxkaW5nIGRwa2cgdG8gZ2V0IHRoZSBsaWJyYXJ5LAorIHRoZW4gZGVmaW5lIHRoZSBDIHByZXByb2Nlc3NvciBtYWNybyBMSUJEUEtHX1ZPTEFUSUxFX0FQSSBpbiB5b3VyIGJ1aWxkCisgdG8gYWNrbm93bGVkZ2UgdGhhdCBmYWN0LgorCitXaGF0OiBsaWJkcGtnLXBlcmwgKHBlcmwgbW9kdWxlcykKK1N0YXR1czogc3RhYmxlCitEZXNjcmlwdGlvbjoKKyBBbW9uZyB0aGUgcGVybCBtb2R1bGVzIHByb3ZpZGVkIGJ5IGxpYmRwa2ctcGVybCwgeW91IGNhbiBzYWZlbHkgcmVseSBvbgorIHRob3NlIHRoYXQgaGF2ZSAkVkVSU0lPTiBzZXQgdG8gMS4wMCAob3IgaGlnaGVyKS4gTm90ZSBob3dldmVyIHRoYXQgdGhlCisgQVBJIGlzIGRlZmluZWQgYnkgd2hhdCdzIGRvY3VtZW50ZWQgaW4gdGhlIGNvcnJlc3BvbmRpbmcgbWFudWFsIHBhZ2VzIGFuZAorIG5vdGhpbmcgbW9yZS4gWW91IGNhbid0IGFzc3VtZSBhbnl0aGluZyBlbHNlIGJhc2VkIG9uIHdoYXQgeW91IHJlYWQgaW4KKyB0aGUgc291cmNlIGNvZGUuIElmIHlvdSBmZWVsIHRoZSBuZWVkIGZvciBmdXJ0aGVyIHJlZmluZW1lbnRzIGluIHRoZQorIGRvY3VtZW50ZWQgQVBJLCBkb24ndCBoZXNpdGF0ZSB0byBmaWxlIGEgd2lzaGxpc3QgYnVnIGFnYWluc3QKKyBsaWJkcGtnLXBlcmwuCisgLgorIEluIGNhc2Ugb2YgQVBJLWJyZWFraW5nIGNoYW5nZXMsIHRoZSBtYWpvciBudW1iZXIgaW4gJFZFUlNJT04gd2lsbCBiZQorIGluY3JlYXNlZC4gRm9yIEFQSSBleHRlbnNpb25zLCB0aGUgbWlub3IgbnVtYmVyIHdpbGwgYmUgaW5jcmVhc2VkLgorCitXaGF0OiBjdXN0b20gY2hhbmdlbG9nIHBhcnNlcnMgaW4gL3Vzci9saWIvZHBrZy9wYXJzZWNoYW5nZWxvZworU3RhdHVzOiBzdGFibGUKK1ZlcnNpb246IDIuMAorRGVzY3JpcHRpb246CisgU2luY2UgZHBrZyAxLjE0LjE2LCB0aGUgc2V0IG9mIGNvbW1hbmQgbGluZSBvcHRpb25zIHRoYXQgY3VzdG9tCisgY2hhbmdlbG9nIHBhcnNlcnMgbXVzdCBzdXBwb3J0IGhhcyBiZWVuIGV4cGFuZGVkIChzZWUKKyBkcGtnLXBhcnNlY2hhbmdlbG9nKDEpKS4gRm9yIGNvbXBhdGliaWxpdHksIGNoYW5nZWxvZyBwYXJzZXJzIHN1cHBvcnRpbmcKKyBvbmx5IHRoZSBvbGQgb3B0aW9ucyBhcmUgc3VwcG9ydGVkIGluIGxlbm55LiBJbiBsZW5ueSsxLCB0aGF0IHN1cHBvcnQKKyB3aWxsIGJlIGRyb3BwZWQuCisgLgorIEZvciByZWZlcmVuY2UsIG9ubHkgdGhlIC12IG9wdGlvbiB3YXMgc3VwcG9ydGVkIGluIHZlcnNpb24gMS4wIG9mIHRoaXMKKyBBUEkuCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2RvYy9SRUFETUUuZmVhdHVyZS1yZW1vdmFsLXNjaGVkdWxlIGIvZHBrZy0xLjE2LjEuMS9kb2MvUkVBRE1FLmZlYXR1cmUtcmVtb3ZhbC1zY2hlZHVsZQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hMDg1YWM5Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kb2MvUkVBRE1FLmZlYXR1cmUtcmVtb3ZhbC1zY2hlZHVsZQpAQCAtMCwwICsxLDExNiBAQAorVGhpcyBpcyBhIGxpc3Qgb2YgZmVhdHVyZXMgdGhhdCBhcmUgc2NoZWR1bGVkIHRvIGJlIHJlbW92ZWQgZnJvbSBkcGtnLgorCitXaGF0OiBmYWxsYmFjayBvZiBkcGtnLXNvdXJjZSB0byBzb3VyY2UgZm9ybWF0ICIxLjAiIHdpdGhvdXQgZXhwbGljaXQgZGViaWFuL3NvdXJjZS9mb3JtYXQKK1N0YXR1czogZGVwcmVjYXRlZAorV2hlbjogMS4xNy54CitXYXJuaW5nOiBwcm9ncmFtIGFuZCBsaW50aWFuIChtaXNzaW5nLWRlYmlhbi1zb3VyY2UtZm9ybWF0KQorV2h5OgorIFdpdGggdGhlIHN1cHBvcnQgb2YgbXVsdGlwbGUgc291cmNlIGZvcm1hdHMsIHRoZSB1c2VyIHNob3VsZCBiZSBleHBsaWNpdAorIGFib3V0IHRoZSBkZXNpcmVkIHNvdXJjZSBmb3JtYXQuIFRoZSBmYWxsYmFjayB0byAiMS4wIiBpcyB0aGVyZSBvbmx5IGZvcgorIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5IGJ1dCB3aWxsIGJlIHJlbW92ZWQgb25jZSBhbGwgcGFja2FnZXMgaGF2ZSB0aGUKKyBkZWJpYW4vc291cmNlL2Zvcm1hdCBmaWxlLiBUaGlzIGlzIHVubGlrZWx5IHRvIGhhcHBlbiBiZWZvcmUgMS4xNy54LgorCitXaGF0OiBTb3VyY2UtVmVyc2lvbiAoc3Vic3R2YXIpCitTdGF0dXM6IG9ic29sZXRlCitXaGVuOiAxLjE2LngKK1dhcm5pbmc6IGxpbnRpYW4gKHN1YnN0dmFyLXNvdXJjZS12ZXJzaW9uLWlzLWRlcHJlY2F0ZWQpCitXaHk6CisgVGhlIHNlbWFudGljcyBvZiBTb3VyY2UtVmVyc2lvbiBhcmUgbWlzc2xlYWRpbmcgd2hlbiBhcHBsaWVkIHRvIGJpbk5NVXMuCisgU2hvdWxkIHN3aXRjaCB0byB1c2UgYmluYXJ5OlZlcnNpb24gb3Igc291cmNlOlZlcnNpb24gc3Vic3R2YXJzLgorCitXaGF0OiBSZXZpc2lvbiwgUGFja2FnZS1SZXZpc2lvbiwgUGFja2FnZV9SZXZpc2lvbiwgQ2xhc3MsIFJlY29tbWVuZGVkLAorICAgICAgT3B0aW9uYWwgKGZpZWxkKQorU3RhdHVzOiBvYnNvbGV0ZQorV2hlbjogMS4xNS54CitXYXJuaW5nOiBwcm9ncmFtCitXaHk6CisgVGhlc2UgZmllbGRzIGhhdmUgYmVlbiBzdXBlcnNlZGVkIGJ5IGVpdGhlciBvdGhlciBmaWVsZHMgd2l0aCBiZXR0ZXIgbmFtZXMKKyBvciB2YWx1ZXMgaW4gb3RoZXIgZmllbGRzLgorCitXaGF0OiAtdSwgLS11ZGViIChkcGtnLXNjYW5wYWNrYWdlcyBvcHRpb24pCitTdGF0dXM6IGRlcHJlY2F0ZWQKK1doZW46IDEuMTYueAorV2FybmluZzogcHJvZ3JhbQorV2h5OgorIFRoaXMgb3B0aW9uIGhhcyBiZWVuIHN1cGVyc2VkZWQgYnkgLXR1ZGViLgorCitXaGF0OiBzdXBwb3J0IG9mIFBHUAorU3RhdHVzOiBkZXByZWNhdGVkCitXaGVuOiAxLjE1LngKK1dhcm5pbmc6IHByb2dyYW0KK1doeToKKyBQR1AgaXMgbm90IHBhcnQgb2YgRGViaWFuIGFuZCBHbnVQRyBoYXMgYmVlbiB0aGUgc3RhbmRhcmQgdG9vbCBmb3IgZGlnaXRhbAorIHNpZ25hdHVyZXMgZm9yIHNldmVyYWwgeWVhcnMgYWxyZWFkeS4gU3VwcG9ydGluZyBvbmx5IEdudVBHIGVuYWJsZXMgdXMgdG8KKyByZWx5IG9uIHNvbWUgb2YgaXRzIGZlYXR1cmVzLgorCitXaGF0OiAtLXByaW50LWluc3RhbGxhdGlvbi1hcmNoaXRlY3R1cmUgKGRwa2cgb3B0aW9uKQorU3RhdHVzOiBvYnNvbGV0ZQorV2hlbjogMS4xNS54CitXYXJuaW5nOiBwcm9ncmFtCitXaHk6CisgT2Jzb2xldGVkIGxvbmcgdGltZSBhZ28gKDIwMDUtMDEtMjIpLiBSZW1haW5pbmcgcGFja2FnZXMgc2hvdWxkIHN3aXRjaCB0bworIHVzZSAnZHBrZyAtLXByaW50LWFyY2hpdGVjdHVyZScuCisKK1doYXQgLS1mb3JnZXQtb2xkLXVuYXZhaWwgKGRwa2cgb3B0aW9uKQorU3RhdHVzOiBvYnNvbGV0ZQorV2hlbjogMS4xNi54CitXYXJuaW5nOiBwcm9ncmFtCitXaHk6CisgUHVyZ2VkIHBhY2thZ2VzIGFyZSBwcm9wZXJseSBjbGVhbmVkIHVwIG5vdyBieSBkcGtnLCBhbmQgb2xkIHVuYXZhaWxhYmxlCisgbGVmdG92ZXJzIGFyZSBhdXRvbWF0aWNhbGx5IGNsZWFuZWQgdXAgb24gZGF0YWJhc2UgcGFyc2luZy4gU28gdGhlcmUncyBubworIG5lZWQgYW55bW9yZSBmb3IgdGhpcyBtYW51YWwgYWN0aW9uLgorCitIaXN0b3J5IG9mIGZlYXR1cmUgcmVtb3ZhbHMKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCitXaGF0OiBjbGVhbnVwLWluZm8gKHByb2dyYW0pCitTdGF0dXM6IHJlbW92ZWQKK1NpbmNlOiAxLjE1LjAKK1doeToKKyBUaGlzIHByb2dyYW0gd2FzIG5lZWRlZCBsb25nIHRpbWUgYWdvIHRvIGZpeHVwIGJyb2tlbiBpbmZvIGRpciBmaWxlcworIGdlbmVyYXRlZCBieSBidWdneSBpbnN0YWxsLWluZm8gcHJvZ3JhbXMuIFNob3VsZCBub3QgYmUgbmVlZGVkIGFueW1vcmUuCisKK1doYXQ6IC0tbGFyZ2VtZW0sIC0tc21hbGxtZW0gKGRwa2cgb3B0aW9uKQorU3RhdHVzOiByZW1vdmVkCitXaGVuOiAxLjE1LjEKK1doeToKKyBUaGVzZSBvcHRpb25zIGhhdmUgYmVlbiBuby1vcHMgZm9yIGEgbG9uZyB0aW1lLgorCitXaGF0OiAtLWZvcmNlLWF1dG8tc2VsZWN0IChkcGtnIG9wdGlvbikKK1N0YXR1czogcmVtb3ZlZAorV2hlbjogMS4xNS4xCitXaHk6CisgVGhpcyBvcHRpb24gaGFzIGJlZW4gYSBuby1vcCBmb3Igc28gbG9uZywgdGhhdCB0aGVyZSdzIG5vIHRyYWNlcyBvbiBnaXQKKyBoaXN0b3J5IG9mIGl0cyB1c2FnZS4KKworV2hhdDogcmVjb21tZW5kZWQsIGNvbnRyaWIsIGJhc2UgKHByaW9yaXR5KQorU3RhdHVzOiByZW1vdmVkCitXaGVuOiAxLjE1LjEKK1doeToKKyBUaGVzZSBwcmlvcml0aWVzIGhhdmUgYmVlbiBzdXBlcnNlZGVkIGJ5IGVpdGhlciBvdGhlciBmaWVsZHMgb3IgdmFsdWVzIGluCisgb3RoZXIgZmllbGRzLgorCitXaGF0OiA4MjItZGF0ZSAocHJvZ3JhbSkKK1N0YXR1czogcmVtb3ZlZAorV2hlbjogMS4xNS4xCitXaHk6CisgU2hvdWxkIHN3aXRjaCB0byB1c2UgJ2RhdGUgLVInLgorCitXaGF0OiBzdXBwb3J0IG9mIGN1c3RvbSBjaGFuZ2Vsb2cgcGFyc2VycyB1bmRlcnN0YW5kaW5nIG9ubHkgLXYKK1N0YXR1czogcmVtb3ZlZAorU2luY2U6IDEuMTUuNQorV2h5OgorIFRoZSBkZWJpYW4gY2hhbmdlbG9nIHBhcnNlciBoYXMgYmVlbiBlbmhhbmNlZC4gSXQgc3VwcG9ydHMgbmV3IG9wdGlvbnMKKyB0aGF0IGVuYWJsZSBtb3JlIGZpbmUtZ3JhaW5lZCByZXRyaWV2YWwgb2YgaW5mb3JtYXRpb24uIFRob3NlIG5ldyBvcHRpb25zCisgd2lsbCBiZSB1c2VkIGJ5IHNjcmlwdHMgKGxpa2UgZHBrZy1nZW5jaGFuZ2VzKS4KKyAuCisgQ3VzdG9tIGNoYW5nZWxvZyBwYXJzZXJzIG11c3QgYmUgdXBkYXRlZCB0byBzdXBwb3J0IHRoZSBuZXcgQVBJIChzZWUKKyBkcGtnLXBhcnNlY2hhbmdlbG9nKDEpIGFuZCBSRUFETUUuYXBpKS4KKworV2hhdDogc3VwcG9ydCBmb3IgZW52aXJvbm1lbnQgdmFyaWFibGUgRFBLR19OT19UU1RQCitTdGF0dXM6IHJlbW92ZWQKK1NpbmNlOiAxLjE1LjYKK1doeToKKyBIYXZpbmcgdHdvIHdheXMgdG8gbGV0IHRoZSBhZG1pbmlzdHJhdG9yIGdldCB0byBhIHNoZWxsIG9uIGNvbmZmaWxlIHByb21wdAorIGlzIGNvbmZ1c2luZywgaXQgYWxzbyBkaWZmaWN1bHRzIHNldHRpbmcgdXAgYSBjb25zaXN0ZW50IGVudmlyb25tZW50IHRvIGJlCisgdXNlZCBieSBleHRlcm5hbCBwcm9ncmFtcy4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZG9jL2NvZGluZy1zdHlsZS50eHQgYi9kcGtnLTEuMTYuMS4xL2RvYy9jb2Rpbmctc3R5bGUudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmVkYzVhMjUKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RvYy9jb2Rpbmctc3R5bGUudHh0CkBAIC0wLDAgKzEsMjE1IEBACitEcGtnIEMgY29kaW5nIHN0eWxlIDIwMDktMDktMjkKKz09PT09PT09PT09PT09PT09PT0KKworQyBsYW5ndWFnZSBleHRlbnNpb25zCit+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKworVGhlIGNvZGUgYmFzZSBhc3N1bWVzIEM4OSBwbHVzIHRoZSBmb2xsb3dpbmcgQzk5IGV4dGVuc2lvbnM6CisKKyAqIE5hbWVkIGluaXRpYWxpemVycy4KKyAqIFRyYWlsaW5nIGNvbW1hIGluIGVudW0uCisgKiBWYXJpYWRpYyBtYWNyb3MuCisgKiBXb3JraW5nIGJvb2wgdHlwZSBpbiA8c3RkYm9vbC5oPi4KKworVGhvc2UgYXJlIGNoZWNrZWQgYXQgYnVpbGQgdGltZSwgYW5kIGl0IHdpbGwgYWJvcnQgaW4gY2FzZSBhIG5lZWRlZCBleHRlbnNpb24KK2lzIG5vdCBzdXBwb3J0ZWQuCisKK0dlbmVyYWwKK35+fn5+fn4KKworTW9zdCBvZiB0aGUgTGludXggQ29kaW5nU3R5bGUgYXBwbGllcy4KKworVGhlIGNvZGUgaGFzIGEgbWl4IG9mIGFuIG9sZCBjb2Rpbmcgc3R5bGUgYmVpbmcgcGhhc2VkIG91dCBhbmQgdGhlIG5ldworc3R5bGUuIE5ldyBmaWxlcyBzaG91bGQgdXNlIHRoZSBuZXcgc3R5bGUsIGNoYW5nZXMgdG8gZmlsZXMgd2l0aCB0aGUgb2xkCitzdHlsZSBzaG91bGQgc3dpdGNoIHRoZSBjb2RlIGJlaW5nIHRvdWNoZWQgZXhjZXB0IGZvciB0aGUgaW5kZW50YXRpb24gbGV2ZWwsCit3aGljaCBzaG91bGQgYmUgcHJlc2VydmVkIHRvIG1hdGNoICgyIHNwYWNlcykuCisKK0NvZGUgc2hvdWxkIGdlbmVyYWxseSBzdHJpdmUgZm9yIGNsYXJpdHkuIE1vbnN0ZXIgZnVuY3Rpb25zIHNob3VsZCBiZSBzcGxpdAoraW50byBsb2dpY2FsIGFuZCBzbWFsbCBwaWVjZXMuCisKK1ZhcmlhYmxlIGFuZCBmdW5jdGlvbiBuYW1lcyBzaG91bGQgYmUgZ2VuZXJhbGx5IGRlc2NyaXB0aXZlLCBub3QgbmVlZGVkCitmb3IgdmFyaWFibGVzIGNvbW1vbmx5IHVzZWQgKGZvciBleGFtcGxlIGFuZCBpbmRleCBpbnNpZGUgYSBsb29wLCBldGMpLAorYWNyb255bXMgc2hvdWxkIG9ubHkgYmUgdXNlZCBpZiB0aGV5IGFyZSB3aWRlbHkga25vd24gZXh0ZXJuYWxseSBvcgoraW5zaWRlIHRoZSBwcm9qZWN0LiBUaGUgbmFtZXMgc2hvdWxkIHNlcGFyYXRlIGxvZ2ljYWwgY29uY2VwdHMgd2l0aGluCit3aXRoIHVuZGVyc2NvcmVzLgorCitPbiBjb21tZW50cyB1c2UgVVRGLTggY2hhcmFjdGVycyBmb3IgcXVvdGVzLCBjb3B5cmlndGggc3ltYm9scywgZXRjLgorCitPbiBzdHJpbmdzIGluIGNvZGUgdXNlIHNpbXBsZSBvciBkb3VibGUgcXVvdGVzIMKrJyfCuyDCqyIiwrsuIE5vdCB0aGUgdW5wYWlyZWQKK29uZXMgwqtgJ8K7LiBTdHJpbmdzIG1hcmtlZCBmb3IgdHJhbnNsYXRpb24sIHNob3VsZCBvbmx5IGJlIGZpeGVkIGlmIHRoZXJlJ3MKK290aGVyIGNoYW5nZXMgdG8gYmUgZG9uZSBvbiB0aGVtLCBvdGVyd2lzZSB3ZSBnZXQgdW5uZWVkZWQgZnV6emllcy4KKworICA8aHR0cDovL3d3dy5jbC5jYW0uYWMudWsvfm1nazI1L3Vjcy9xdW90ZXMuaHRtbD4KKworQ29kZSBkb2N1bWVudGF0aW9uCit+fn5+fn5+fn5+fn5+fn5+fn4KKworUHVibGljIGRlY2xhcmF0aW9ucyBzaG91bGQgYmUgZG9jdW1lbnRlZCB1c2luZyBKYXZhRG9jIHN0eWxlIGNvbW1lbnRzLgorCitJbmRlbnRhdGlvbiwgYWxpZ25tZW50IGFuZCBzcGFjaW5nCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisKK0xpbmVzIHNob3VsZCBiZSA4MCBjaGFycyBtYXguIEluZGVudGF0aW9uIGlzIGRvbmUgd2l0aCBoYXJkIHRhYnMgKHdoaWNoCitzaG91bGQgYmUgY29uc2lkZXJlZCB0byB0YWtlIDggc3BhY2VzIHdpZHRoKS4gQWxpZ25pbmcgd2l0aCBzcGFjZXM6CisKK3N0YXRpYyB2b2lkCitmdW5jdGlvbih2b2lkICpwdHIsIGludCB2YWx1ZSkKK3sKKwl2b2lkICpyZWZfcHRyID0gZ2V0X3JlZihwdHIpOworCWludCByZWZfdmFsdWUgPSBnZXRfdmFsdWUocmVmKTsKKworCWlmICh2YWx1ZSA+IDEwKQorCQlkb19zb21ldGhpbmcoR0xPQkFMX01BQ1JPLCBwdHIsIHZhbHVlLCAic29tZS1zdHJpbmciLAorCSAgICAgICAgICAgICAgICAgICAgIHJlZl9wdHIsIHJlZl92YWx1ZSwgIm90aGVyLXN0cmluZyIsCisJICAgICAgICAgICAgICAgICAgICAgImV4dHJhLXN0cmluZyIpOworfQorCitXaGVuIHdyYXBwaW5nLCBsb2dpY2FsIG9wZXJhdG9ycyBzaG91bGQgYmUga2VwdCBvbiB0aGUgcHJlY2VkaW5nIGxpbmU6CisKKwlpZiAocmVhbGx5X2xvbmdfdmFyaWFibGVfdG9fYmVfY2hlY2tlZF9hZ2FpbnN0X2EgJiYKKwkgICAgcmVhbGx5X2xvbmdfdmFyaWFibGVfdG9fYmVfY2hlY2tlZF9hZ2FpbnN0X2IpCisJCWZvbygpOworCitTcGFjZXMgYmV0d2VlbiBvcGVyYXRvcnM6CisKKwlpZiAoYSAmJiAoYiB8fCBjKSAmJiBjID09IGQpCisJCWJyZWFrOworCisJYSA9IChiICsgNCAqICg1IC0gNikpICYgMHhmZjsKKworU3BhY2VzIGJldHdlZW4gYXNpZ25tZW50czoKKworCWEgKz0gYjsKKworU3BhY2VzIGFmdGVyIGNvbW1hOgorCisJZm9vKGEsIGIpOworCitTcGFjZSBhZnRlciBrZXl3b3JkcyAoZm9yLCB3aGlsZSwgZG8sIGlmLCBldGMsIGJ1dCBzaXplb2Ygc2hvdWxkIGJlCit0cmVhdGVkIGxpa2UgYSBmdW5jdGlvbik6CisKKwlmb3IgKGkgPSAwOyBpIDwgMTA7IGkrKykKKwkJZm9vKGkpOworCisJbWVtY3B5KGRzdCwgc3JjLCBzaXplb2Yoc3JjKSk7CisKK0RlZmluaXRpb24gb2YgbG9jYWwgdmFyaWFibGVzLCByZWxhdGVkIGNvZGUgYmxvY2tzLCBmdW5jdGlvbnMgYm9kaWVzCitzaG91bGQgYmUgc3BsaXQgd2l0aCBibGFuayBsaW5lczoKKworaW50CitmdW5jdGlvbih2b2lkKQoreworCWludCBhOworCisJZm9vKCk7CisJYmFyKCk7CisKKwlxdXV4KCk7CisKKwlyZXR1cm4gMDsKK30KKworQnJhY2VzCit+fn5+fn4KKworQnJhY2VzIHNob3VsZCBiZSBwbGFjZWQgb24gdGhlIHNhbWUgbGluZSBhcyB0aGUga2V5d29yZCwgYnV0IG9uIGEgbmV3IGxpbmUKK2ZvciB0aGUgZnVuY3Rpb24gYm9keS4gTm8gYnJhY2VzIHNob3VsZCBiZSB1c2VkIGZvciB1bmFtYmlndW91cyBvbmUgbGluZQorc3RhdGVtZW50czoKKworCWlmIChhID4gMCkgeworCQlmb28oYSk7CisJCWJhcihhKTsKKwl9IGVsc2UgeworCQlxdXV4KDApCisJCWJhcigwKTsKKwl9CisKKwlmb3IgKDs7KSB7CisJCWZvbygpOworCQliYXIoKTsKKwl9CisKKwlkbyB7CisJCWZvbygpOworCQliYXIoKTsKKwl9IHdoaWxlIChxdXV4KCkpOworCisJc3dpdGNoIChmb28pIHsKKwljYXNlIGE6CisJCWJhcigpOworCQlicmVhazsKKwljYXNlIGI6CisJZGVmYXVsdDoKKwkJYmF6KCk7CisJCWJyZWFrOworCX0KKworQ29kZSBjb252ZW50aW9ucworfn5+fn5+fn5+fn5+fn5+fgorCitQcmVmZXIgYXNzaWduaW5nIG91dHNpZGUgb2YgY29uZGl0aW9uYWxzOgorCisJbiA9IHJlYWRfaXRlbXMoKTsKKwlpZiAobiA8IDEwMCkKKwkJZm9vKCk7CisKK1N0cmluZyBjb21wYXJpc29ucyBzaG91bGQgdXNlIGNvbXBhcmlzb24gb3BlcmF0b3JzIHRvIG1ha2UgaXQgZWFzaWVyIHRvCitzZWUgd2hhdCBvcGVyYXRpb24gaXMgYmVpbmcgZG9uZToKKworCWlmIChzdHJjbXAoYSwgYikgPT0gMCkKKwkJZm9vKCk7CisKKwlpZiAoc3RyY21wKGEsIGIpIDwgMCkKKwkJZm9vKCk7CisKKworRHBrZyBQZXJsIGNvZGluZyBzdHlsZSAyMDEwLTA1LTEwCis9PT09PT09PT09PT09PT09PT09PT09CisKK0dlbmVyYWwKK35+fn5+fn4KKworSW4gZ2VuZXJhbCB5b3Ugc2hvdWxkIGZvbGxvdyB0aGUgY29udmVudGlvbnMgbGlzdGVkIGluIHBlcmxzdHlsZSgxKS4KK0FsbCB0aGUgY29kZSBzaG91bGQgcnVuIHdpdGggdGhlIOKAnHVzZSBzdHJpY3TigJ0gYW5kIOKAnHVzZSB3YXJuaW5nc+KAnSBwcmFnbWFzLgorCitDb2RlIGRvY3VtZW50YXRpb24KK35+fn5+fn5+fn5+fn5+fn5+fgorCitQdWJsaWMgbW9kdWxlcyBzaG91bGQgYmUgZG9jdW1lbnRlZCB3aXRoIFBPRCAoc2VlIHBlcmxwb2QoMSkpLiBQcml2YXRlCitjb2RlIGRvZXNuJ3QgaGF2ZSB0byB1c2UgUE9ELCBzaW1wbGUgY29tbWVudCBsaW5lcyAoc3RhcnRpbmcgd2l0aCAiIyIpIGFyZQorZW5vdWdoLiBQdWJsaWMgc2NyaXB0cyBhcmUgZG9jdW1lbnRlZCBpbiB0aGVpciBjb3JyZXNwb25kaW5nIG1hbnVhbCBwYWdlcy4KKworSW5kZW50YXRpb24sIGFsaWdubWVudCBhbmQgc3BhY2luZworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCitMaW5lcyBzaG91bGQgYmUgODAgY2hhcnMgbWF4LiBUaGUgaW5kZW50YXRpb24gbGV2ZWwgaXMgNCBjaGFyYWN0ZXJzLCBhbmQKK2luZGVudGF0aW9uIGlzIGRvbmUgd2l0aCBoYXJkIHRhYnMgKHdoaWNoIHNob3VsZCBiZSBjb25zaWRlcmVkIHRvIHRha2UgOAorc3BhY2VzIHdpZHRoKSBhbmQgc3BhY2VzLgorCitpZiAoJGZvbykgeworICAgIGlmICgkYmFyKSB7CisJcHJpbnQgIkhlbGxvXG4iOworCXVubGVzcyAoJGJheikgeworCSAgICBwcmludCAiV2hvIGFyZSB5b3U/XG4iOworCX0KKyAgICB9Cit9CisKK1BlcmwgdmVyc2lvbgorfn5+fn5+fn5+fn5+CitXZSBkb24ndCB3YW50IHRvIGltcG9zZSBhIHRvby1yZWNlbnQgUGVybCB2ZXJzaW9uLCBzbyBvbmx5IHVzZSBmZWF0dXJlcworc3VwcG9ydGVkIGJ5IHRoZSBQZXJsIHZlcnNpb24gdGhhdCBpcyBjdXJyZW50bHkgaW4gRGViaWFuIG9sZHN0YWJsZSB3aGVuCitwb3NzaWJsZS4gQ3VycmVudGx5IHRoYXQgbWVhbnMgUGVybCA1LjguOC4KKworT2JqZWN0IG1ldGhvZHMKK35+fn5+fn5+fn5+fn5+CitVc2UgYSBzaW5nbGUgbGluZSB0byByZXRyaWV2ZSBhbGwgdGhlIGFyZ3VtZW50cyBhbmQgdXNlICRzZWxmIGFzIG5hbWUKK2ZvciB0aGUgY3VycmVudCBvYmplY3Q6CisKK3N1YiBkb19zb21ldGhpbmcgeworICAgIG15ICgkc2VsZiwgJGFyZzEsICRhcmcyLCAlb3B0cykgPSBAXzsKKyAgICAuLi4KK30KKworU3VwcGxlbWVudGFyeSBvcHRpb25hbCBhcmd1bWVudHMgc2hvdWxkIGJlIG5hbWVkIGFuZCB0aHVzIHN0b3JlZCBpbiBhCitoYXNoLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kb2MvbGNvdi1lcGlsb2cgYi9kcGtnLTEuMTYuMS4xL2RvYy9sY292LWVwaWxvZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44YmM2NjBjCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kb2MvbGNvdi1lcGlsb2cKQEAgLTAsMCArMSw4IEBACisgIDx0YWJsZSB3aWR0aD0iMTAwJSIgYm9yZGVyPTAgY2VsbHNwYWNpbmc9MCBjZWxscGFkZGluZz0wPgorICAgIDx0cj4KKyAgICAgIDx0ZCBjbGFzcz0iY292ZXJGaWxlIj48YSBocmVmPSJzY3JpcHRzL2NvdmVyYWdlLmh0bWwiPnNjcmlwdHM8L2E+PC90ZD4KKyAgICA8L3RyPgorICA8L3RhYmxlPgorICA8YnIgLz4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZG9jL2xjb3YtcHJvbG9nIGIvZHBrZy0xLjE2LjEuMS9kb2MvbGNvdi1wcm9sb2cKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNDlmMmE0YgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZG9jL2xjb3YtcHJvbG9nCkBAIC0wLDAgKzEsOCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiI+Cis8aHRtbCBsYW5nPSJlbiI+Cis8aGVhZD4KKyAgPG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9VVRGLTgiPgorICA8dGl0bGU+QHBhZ2V0aXRsZUA8L3RpdGxlPgorICA8bGluayByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIiBocmVmPSJAYmFzZWRpckBnY292LmNzcyI+Cis8L2hlYWQ+Cis8Ym9keT4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZG9jL3RyaWdnZXJzLnR4dCBiL2Rwa2ctMS4xNi4xLjEvZG9jL3RyaWdnZXJzLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yZDg5MWZmCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kb2MvdHJpZ2dlcnMudHh0CkBAIC0wLDAgKzEsODE2IEBACitUUklHR0VSUworPT09PT09PT0KKworSW50cm9kdWN0aW9uCistLS0tLS0tLS0tLS0KKworQSBkcGtnIHRyaWdnZXIgaXMgYSBmYWNpbGl0eSB0aGF0IGFsbG93cyBldmVudHMgY2F1c2VkIGJ5IG9uZSBwYWNrYWdlCitidXQgb2YgaW50ZXJlc3QgdG8gYW5vdGhlciBwYWNrYWdlIHRvIGJlIHJlY29yZGVkIGFuZCBhZ2dyZWdhdGVkLCBhbmQKK3Byb2Nlc3NlZCBsYXRlciBieSB0aGUgaW50ZXJlc3RlZCBwYWNrYWdlLiAgVGhpcyBmZWF0dXJlIHNpbXBsaWZpZXMKK3ZhcmlvdXMgcmVnaXN0cmF0aW9uIGFuZCBzeXN0ZW0tdXBkYXRlIHRhc2tzIGFuZCByZWR1Y2VzIGR1cGxpY2F0aW9uCitvZiBwcm9jZXNzaW5nLgorCisoTkI6IFRyaWdnZXJzIGFyZSBpbnRlbmRlZCBmb3IgZXZlbnRzIHRoYXQgb2NjdXIgZHVyaW5nIHBhY2thZ2UKK2luc3RhbGxhdGlvbiwgbm90IGV2ZW50cyB0aGF0IG9jY3VyIGluIGdlbmVyYWwgb3BlcmF0aW9uLikKKworCitDb25jZXB0cworLS0tLS0tLS0KKworRWFjaCB0cmlnZ2VyIGlzIG5hbWVkLCBhbmQgYXQgYW55IHRpbWUgemVybyBvciBtb3JlIHBhY2thZ2VzIG1heSBiZQoraW50ZXJlc3RlZCBpbiBpdC4KKworV2UgY3VycmVudGx5IGVudmlzYWdlIHRocmVlIGtpbmRzIG9mIHRyaWdnZXJzOgorICogRXhwbGljaXQgdHJpZ2dlcnMuICBUaGVzZSBjYW4gYmUgYWN0aXZhdGVkIGJ5IGFueSBwcm9ncmFtCisgICBieSBydW5uaW5nIGRwa2ctdHJpZ2dlciAoYXQgYW55IHRpbWUsIGJ1dCBpZGVhbGx5IGZyb20gYSBtYWludGFpbmVyCisgICBzY3JpcHQpLgorICogRmlsZSB0cmlnZ2Vycy4gIFRoZXNlIGFyZSBhY3RpdmF0ZWQgYXV0b21hdGljYWxseSBieSBkcGtnCisgICB3aGVuIGEgbWF0Y2hpbmcgZmlsZSBpcyBpbnN0YWxsZWQsIHVwZ3JhZGVkIG9yIHJlbW92ZWQgYXMgcGFydAorICAgb2YgYSBwYWNrYWdlLiAgVGhleSBtYXkgYWxzbyBiZSBleHBsaWNpdGx5IGFjdGl2YXRlZCBieSBydW5uaW5nCisgICBkcGtnLXRyaWdnZXIuCisgKiBGdXR1cmUga2luZHMgb2Ygc3BlY2lhbCB0cmlnZ2Vycywgd2hpY2ggYXJlIGFjdGl2YXRlZCBieSBtYWdpYyBjb2RlCisgICBpbiBkcGtnIGl0c2VsZi4gIEN1cnJlbnRseSBub25lIGFyZSBkZWZpbmVkIGJlc2lkZXMgZmlsZSB0cmlnZ2Vycy4KKworQSB0cmlnZ2VyIGlzIGFsd2F5cyBhY3RpdmF0ZWQgYnkgYSBwYXJ0aWN1bGFyIHBhY2thZ2UuCisKK1RyaWdnZXIgbmFtZXMgY29udGFpbiBvbmx5IHByaW50aW5nIDctYml0IGFzY2lpIGNoYXJhY3RlcnMgKG5vCit3aGl0ZXNwYWNlKS4gIEVhY2ggdHJpZ2dlciBraW5kIGhhcyBhIGRpc3RpbmN0IHN1YnNldCBvZiB0aGUgdHJpZ2dlcgorbmFtZSBzcGFjZSBzbyB0aGF0IHRoZSBraW5kIGNhbiBiZSBkZXRlcm1pbmVkIGZyb20gdGhlIG5hbWUuICBBZnRlciB3ZQorcnVuIG91dCBvZiBzdHJhaWdodGZvcndhcmQgc3ludGF4ZXMsIHdlIHdpbGwgdXNlIDxraW5kPjo8ZGV0YWlscz4uCisKK1doZW4gYSB0cmlnZ2VyIGlzIGFjdGl2YXRlZCwgaXQgYmVjb21lcyBwZW5kaW5nIGZvciBldmVyeSBwYWNrYWdlCit3aGljaCBpcyBpbnRlcmVzdGVkIGluIHRoZSB0cmlnZ2VyIGF0IHRoYXQgdGltZS4gIEVhY2ggcGFja2FnZSBoYXMgYQorbGlzdCBvZiB6ZXJvIG9yIG1vcmUgcGVuZGluZyB0cmlnZ2Vycy4gIFJlcGVhdGVkIGFjdGl2YXRpb24gb2YgdGhlCitzYW1lIHRyaWdnZXIgaGFzIG5vIGFkZGl0aW9uYWwgZWZmZWN0LiAgTm90ZSB0aGF0IGluIGdlbmVyYWwgYSB0cmlnZ2VyCit3aWxsIG5vdCBiZSBwcm9jZXNzZWQgaW1tZWRpYXRlbHkgd2hlbiBpdCBpcyBhY3RpdmF0ZWQ7IHByb2Nlc3NpbmcgaXMKK2RlZmVycmVkIHVudGlsIGl0IGlzIGNvbnZlbmllbnQgKGFzIGRlc2NyaWJlZCBiZWxvdykuCisKK0F0IGEgdHJpZ2dlciBhY3RpdmF0aW9uLCB0aGUgaW50ZXJlc3RlZCBwYWNrYWdlcyhzKSBhcmUgYWRkZWQgdG8gdGhlCit0cmlnZ2VyaW5nIHBhY2thZ2UncyBsaXN0IG9mIHRyaWdnZXJzLWF3YWl0ZWQgcGFja2FnZXMgKHVubGVzcyB0aGUKK3RyaWdnZXIgaGFzIGJlZW4gY29uZmlndXJlZCB0byBub3QgcmVxdWlyZSBpdCk7IHRoZSB0cmlnZ2VyaW5nCitwYWNrYWdlIGlzIHNhaWQgdG8gYXdhaXQgdGhlIHRyaWdnZXIgcHJvY2Vzc2luZy4KKworQSBwYWNrYWdlIHdoaWNoIGhhcyBwZW5kaW5nIHRyaWdnZXJzLCBvciB3aGljaCBhd2FpdHMgdHJpZ2dlcnMsIGlzIG5vdAorY29uc2lkZXJlZCBwcm9wZXJseSBpbnN0YWxsZWQuICBUaGVyZSBhcmUgdHdvIG5ldyBkcGtnIHN0YXR1cyB2YWx1ZXMsCitgdHJpZ2dlcnMtcGVuZGluZycgYW5kIGB0cmlnZ2Vycy1hd2FpdGVkJywgd2hpY2ggbGllIGJldHdlZW4KK2Bjb25maWctZmFpbGVkJyBhbmQgYGluc3RhbGxlZCcuCisKKworRGV0YWlscyAtIE92ZXJ2aWV3IHRhYmxlCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworICBTdGF0dXMgICAgICBQZW5kaW5nICAgQXdhaXRlZCAgIFNhdGlzZmllcyAgUmVtZWR5CisgICAgICAgICAgICAgIHRyaWdnZXJzICB0cmlnZ2VycyAgRGVwZW5kcworCisgIHVucGFja2VkICAgIG5ldmVyICAgICAgbWF5YmUgICAgTm8gICAgcG9zdGluc3QgY29uZmlndXJlCisgIGMuLWZhaWxlZCAgIG5ldmVyICAgICAgbWF5YmUgICAgTm8gICAgcG9zdGluc3QgY29uZmlndXJlICh3aGVuIHJlcXVlc3RlZCkKKyAgdC4tYXdhaXRlZCAgeWVzICAgICAgICBhbHdheXMgICBObyAgICBwb3N0aW5zdCB0cmlnZ2VyZWQgKyBmaXggYXdhaXRlZCBwa2cocykKKyAgdC4tYXdhaXRlZCAgbm8gICAgICAgICBhbHdheXMgICBObyAgICBmaXggYXdhaXRlZCBwYWNrYWdlKHMpCisgIHQuLXBlbmRpbmcgIGFsd2F5cyAgICAgbmV2ZXIgICAgWWVzICAgcG9zdGluc3QgdHJpZ2dlcmVkCisgIGluc3RhbGxlZCAgIG5ldmVyICAgICAgbmV2ZXIgICAgWWVzICAgbi9hCisKK1BhY2thZ2VzIGluIHQtYXdhaXRlZCBhbmQgdC1wZW5kaW5nIGRlbWFuZCBzYXRpc2ZhY3Rpb24gb2YgdGhlaXIKK2RlcGVuZGVuY2llcyBqdXN0IGxpa2UgcGFja2FnZXMgaW4gaW5zdGFsbGVkLgorCisKK0RldGFpbHMgLSB0cmlnZ2VyaW5nIHBhY2thZ2UKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworV2hlbiBhIHBhY2thZ2UgVCBhY3RpdmF0ZXMgYSB0cmlnZ2VyIGluIHdoaWNoIGEgcGFja2FnZSBJIGlzCitpbnRlcmVzdGVkLCBJIGlzIGFkZGVkIHRvIHRoZSBsaXN0IG9mIHBhY2thZ2VzIHdob3NlIHRyaWdnZXIKK3Byb2Nlc3NpbmcgaXMgYXdhaXRlZCBieSBULiAgWmVybyBvciBtb3JlIHBhY2thZ2VzIEkgbWF5IGJlIGFkZGVkIGFzIGEKK3Jlc3VsdCBvZiBhbnkgcGFydGljdWxhciB0cmlnZ2VyIGFjdGl2YXRpb24sIGRlcGVuZGluZyBvbiBob3cgbWFueQorcGFja2FnZXMgd2VyZSBpbnRlcmVzdGVkLiAgKElmIFQgY2hvb3NlcywgZXhwbGljaXQgdHJpZ2dlciBhY3RpdmF0aW9uCit1c2luZyBkcGtnLXRyaWdnZXIgb2YgSSBieSBUIG5lZWQgbm90IG1ha2UgVCBiZWNvbWUgdHJpZ2dlcnMtYXdhaXRlZAoraW4gdGhpcyB3YXkuLikKKworQSBwYWNrYWdlIHdoaWNoIGF3YWl0cyB0cmlnZ2VyIHByb2Nlc3NpbmcgYnV0IHdvdWxkIG90aGVyd2lzZSBiZQorYGluc3RhbGxlZCcgb3IgYHRyaWdnZXJzLXBlbmRpbmcnIGlzIGNvbnNpZGVyZWQgdG8gYmUgaW4gc3RhdGUKK2B0cmlnZ2Vycy1hd2FpdGVkJy4gIFBhY2thZ2VzIGluIGB0cmlnZ2Vycy1hd2FpdGVkJyBkbyBub3Qgc2F0aXNmeQorRGVwZW5kcyBkZXBlbmRlbmNpZXMuCisKK0V2ZXJ5IHRyaWdnZXJlZCBwYWNrYWdlIEkgaW4gVCdzIGxpc3Qgb2YgYXdhaXRlZCBwYWNrYWdlcyBlaXRoZXIgaGFzIGEKK25vbmVtcHR5IGxpc3Qgb2YgcGVuZGluZyB0cmlnZ2Vycywgb3IgaXMgaW4gYGNvbmZpZy1mYWlsZWQnIG9yIHdvcnNlLgorV2hlbiBJIGVudGVycyBgaW5zdGFsbGVkJyAob3IgYGNvbmZpZy1maWxlcycgb3IgYG5vdC1pbnN0YWxsZWQnKSwgdGhlCitlbnRyeSBpbiBUJ3MgbGlzdCBvZiBhd2FpdGVkIHBhY2thZ2VzIGlzIHJlbW92ZWQgc28gdGhhdCBUIG1heSwgaWYgaXQKK25vIGxvbmdlciBhd2FpdHMgYW55IHBhY2thZ2VzLCBiZWNvbWUgYGluc3RhbGxlZCcgb3IKK2B0cmlnZ2Vycy1wZW5kaW5nJy4KKworUGFja2FnZXMgaW4gYGNvbmZpZy1maWxlcycgb3IgYG5vdC1pbnN0YWxsZWQnIGRvIG5vdCBhd2FpdCB0cmlnZ2Vycy4KKworCitEZXRhaWxzIC0gdHJpZ2dlcmVkIHBhY2thZ2UKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCitXaGVuIG9uZSBvZiB0aGUgdHJpZ2dlcnMgaW4gd2hpY2ggYSBwYWNrYWdlIGlzIGludGVyZXN0ZWQgaXMKK2FjdGl2YXRlZCwgdGhlIHRyaWdnZXJlZCBwYWNrYWdlIGhhcyB0aGUgdHJpZ2dlciBhZGRlZCB0byBpdHMgbGlzdCBvZgorcGVuZGluZyB0cmlnZ2Vycy4gIFBhY2thZ2VzIHdpdGggYSBub25lbXB0eSBsaXN0IG9mIHBlbmRpbmcgdHJpZ2dlcnMKK3doaWNoIHdvdWxkIG90aGVyd2lzZSBiZSBpbiBzdGF0ZSBgaW5zdGFsbGVkJyBhcmUgaW4gc3RhdGUKK2B0cmlnZ2Vycy1wZW5kaW5nJyBpbnN0ZWFkLCBzbyBpZiB0aGUgcGFja2FnZSB3YXMgcHJldmlvdXNseQorYGluc3RhbGxlZCcgaXQgYmVjb21lcyBgdHJpZ2dlcnMtcGVuZGluZycuCisKK0lmIGEgcGFja2FnZSBoYXMgbm9uZW1wdHkgbGlzdHMgYm90aCBvZiBwZW5kaW5nIGFuZCBhd2FpdGVkIHRyaWdnZXJzLAordGhlbiBpdCBpcyBpbiBgdHJpZ2dlcnMtYXdhaXRlZCcuICBOZXZlcnRoZWxlc3MgZWZmb3J0cyB3aWxsIHN0aWxsIGJlCittYWRlIHRvIHByb2Nlc3MgaXRzIHRyaWdnZXJzIHNvIGFzIHRvIG1ha2UgdGhlIGxpc3Qgb2YgcGVuZGluZwordHJpZ2dlcnMgZW1wdHkuCisKK1RvIHJlc3RvcmUgYSBwYWNrYWdlIGluIHN0YXRlIGB0cmlnZ2Vycy1wZW5kaW5nJyB0byBgaW5zdGFsbGVkJywgb3IgdG8KK3Byb2Nlc3MgcGVuZGluZyB0cmlnZ2VycyBvZiBhIHBhY2thZ2Ugd2l0aCBib3RoIHBlbmRpbmcgYW5kIGF3YWl0ZWQKK3RyaWdnZXJzLCBkcGtnIHdpbGwgcnVuIHRoZSBwb3N0aW5zdCBzY3JpcHQ6CisgICBwb3N0aW5zdCB0cmlnZ2VyZWQgIjx0cmlnZ2VyLW5hbWU+IDx0cmlnZ2VyLW5hbWU+IC4uLiIKKworVGhpcyB3aWxsIGJlIGF0dGVtcHRlZCBmb3IgZWFjaCByZWxldmFudCBwYWNrYWdlIGF0IHRoZSBlbmQgb2YgZWFjaAorZHBrZyBydW47IHNvLCBub3JtYWxseSwgaW4gdGhlIHNhbWUgZHBrZyBydW4gYXMgdGhlIGV2ZW50IHdoaWNoIG1hZGUKK3RoZSBwYWNrYWdlIGdvIHRvIGB0cmlnZ2Vycy1wZW5kaW5nJy4gIFRoaXMgbGVhdmVzIHBhY2thZ2VzIGluCityZWFzb25hYmxlIHN0YXRlcyBieSBkZWZhdWx0LgorCitJZiB0aGUgYHBvc3RpbnN0IHRyaWdnZXJlZCcgcnVuIGZhaWxzIHRoZSBwYWNrYWdlIGdvZXMgdG8KK2Bjb25maWctZmFpbGVkJywgc28gdGhhdCB0aGUgdHJpZ2dlciBwcm9jZXNzaW5nIHdpbGwgbm90IGJlIGF0dGVtcHRlZAorYWdhaW4gdW50aWwgZXhwbGljaXRseSByZXF1ZXN0ZWQuCisKKworICAgICAgICAgICAgIHwKKyAgICAgICAgICAgICBWCisgICAgICAgLC0tLS0tLS0tLS0tLS4KKyAgICAgICB8ICB1bnBhY2tlZCAgfAorICAgICAgIGAtLS0tLS0tLS0tLS0nCisgICAgICAgICAgICAgfAorICAgICAgICAgICAgIHwKKyAgKGF1dG9tYXRpYyl8ICAgICAsLS0tLS0tLS0tLS4KKyAgICAgICAgICAgICB8ICAgICB8IGNvbmZpZy0gIHwKKyAgICAgICAgICAgICB8ICAgICB8ICBmYWlsZWQgIHwKKyAgICAgICAgICAgICB8ICAgICBgLS0tLS0tLS0tLScKKyAgICAgICAgICAgICB8ICAgICAgIHwgICAgICBeCisgICAgICAgICAgICAgfCAgICAgICB8ICAgICAgfAorICAgICAgICAgICAgIHwsLS0tPC0tJyAgICAgIHwgICAgICAgLC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS4KKyAgICAgICAgICAgICB8ICAodXNlciAgICAgICB8ICAgICAgIHwgICAgdHJpZ2dlcnMtcGVuZGluZyAgICAgICAgICB8CisgICAgcG9zdGluc3QgfCAgIHJlcXVlc3QpICAgfCAgICAgICB8ICAgICAgICAgICAgb3IgICAgICAgICAgICAgICAgfAorICJjb25maWd1cmUiIHwgICAgICAgICAgICAgIHwgICAgICAgfCB0Li1hd2FpdGVkIHdpdGggc29tZSBwZW5kaW5nIHwKKyAgICAgICAgICAgICB8ICAgICAgICAgICAgICB8ICAgICAgIGAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0nCisgICAgICAgICAgICAgfCAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgIHwgICAgXgorICAgICAgICAgICAgIHxgLS0tLS0+LS0tLS0tJ3wgICAgICAgICAgICAgICAgICB8ICAgIHwKKyAgICAgICAgICAgICB8ICAgIGVycm9yICAgICB8ICAgICAgICBwb3N0aW5zdCAgfCAgICB8CisgICAgICAgICAgICAgfCAgICAgICAgICAgICAgfCAgICAgICJ0cmlnZ2VyZWQiIHwgICAgfCB0cmlnZ2VyKHMpCisgICAgICAgICAgICAgfCAgICAgICAgICAgICAgfCAgICAgIChhdXRvbWF0aWMpIHwgICAgfCAgYWN0aXZhdGVkCisgICAgICAgICAgICAgfCAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgIHwgICAgfAorICAgICAgICAgICAgIHwgICAgICAgICAgICAgIGAtLS0tLTwtLS0tLS0tLS0tLSd8ICAgIHwKKyAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgZXJyb3IgICAgICAgICAgfCAgICB8CisgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgfAorICAgICAgICAgICAgIFYgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBWICAgIHwKKyAgICAgICAsLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0uCisgICAgICAgfCAgIGluc3RhbGxlZCAgb3IgIHQuLWF3YWl0ZWQgd2l0aCBub25lIHBlbmRpbmcgICAgfAorICAgICAgIGAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLScKKworUGFja2FnZXMgaW4gYGNvbmZpZy1mYWlsZWQnIG9yIHdvcnNlIGFyZSBuZXZlciBjb25zaWRlcmVkIHRvIGhhdmUKK2xpc3RzIG9mIHBlbmRpbmcgdHJpZ2dlcnMuICBBIHBhY2thZ2Ugd2hvc2UgcG9zdGluc3QgaXMgYmVpbmcgcnVuCitjYW4gaG93ZXZlciBhY3F1aXJlIHBlbmRpbmcgdHJpZ2dlcnMgZHVyaW5nIHRoYXQgcnVuIChpZSwgYSBwYWNrYWdlCitjYW4gdHJpZ2dlciBpdHNlbGYpLgorCitUaGlzIG1lYW5zIHRoYXQgaWYgYSB0cmlnZ2VyaW5nIHBhY2thZ2UgVCBhd2FpdHMgdHJpZ2dlciBwcm9jZXNzaW5nIGJ5CithbiBpbnRlcmVzdGVkIHBhY2thZ2UgSSwgYW5kIEkgZ29lcyB0byBgY29uZmlnLWZhaWxlZCcgb3Igd29yc2UgKGVnLAorZHVyaW5nIHVucGFjayBmb3IgdXBncmFkZSksIHRoZW4gd2hlbiBJIGlzIHJlY29uZmlndXJlZCAoZ29lcyB0bworYGluc3RhbGxlZCcpIG9yIHJlbW92ZWQsIFQgd2lsbCBubyBsb25nZXIgYXdhaXQgcHJvY2Vzc2luZyBieSBJLCBzbwordGhhdCBUIG1heSBhdXRvbWF0aWNhbGx5IGdvIGZyb20gYHRyaWdnZXJzLWF3YWl0ZWQnIHRvIGBpbnN0YWxsZWQnLgorCitPciB0byBwdXQgaXQgYW5vdGhlciB3YXksIHRyaWdnZXJlZCBhY3Rpb25zIGFyZSBjb25zaWRlcmVkIGlycmVsZXZhbnQKK2lmIHRoZSBpbnRlcmVzdGVkIHBhY2thZ2UgSSBpcyBub3QgY29uZmlndXJlZC4gIFdoZW4gSSdzIHBvc3RpbnN0IGlzCitjYWxsZWQgd2l0aCBgY29uZmlndXJlJywgaXQgbXVzdCBkbyB3aGF0ZXZlciBhY3Rpb25zIGFyZSBuZWNlc3NhcnkgdG8KK2RlYWwgd2l0aCBhbnkgdHJpZ2dlciBhY3RpdmF0aW9ucyB3aGljaCBtaWdodCBoYXZlIG9jY3VycmVkIHdoaWxlIGl0Cit3YXMgbm90IGNvbmZpZ3VyZWQsIGp1c3QgYXMgaWYgdGhlIHBhY2thZ2Ugd2FzIGJlaW5nIGNvbmZpZ3VyZWQgZm9yCit0aGUgZmlyc3QgdGltZS4KKworVHJpZ2dlciBwcm9jZXNzaW5nIHNob3VsZCBiZSBpZGVtcG90ZW50LiAgVGhlIGxpc3Qgb2YgdHJpZ2dlcnMgYmVpbmcKK3Byb2Nlc3NlZCBpcyBwcm92aWRlZCB0byB0aGUgcG9zdGluc3Qgb25seSBzbyB0aGF0IGl0IGNhbiBvcHRpbWlzZQorYXdheSByZWR1bmRhbnQgcHJvY2Vzc2luZy4KKworSW4gdGhhdCBjYXNlLCB3aGVyZSBhbiBpbnRlcmVzdGVkIHBhY2thZ2UgaGFzIG1vcmUgdGhhbiBvbmUgdHJpZ2dlcgorYW5kIHdhbnRzIHRvIHByb2Nlc3MgdGhlbSBkaWZmZXJlbnRseSwgdGhlIGxpc3Qgb2YgdHJpZ2dlcnMgY2FuIGJlIGNhbgorYmUgZXhhbWluZWQgaW4gYSBzaGVsbCBzY3JpcHQgbGlrZSB0aGlzOgorICAgY2FzZSAiICQyICIgaW4KKyAgICoiIHRyaWdnZXItbmFtZS1hICIqKSAgcHJvY2Vzcy10cmlnZ2VyLWEgOzsKKyAgIGVzYWMKK0dlbmVyYWxseSBlYWNoIHRyaWdnZXIgbmFtZSBzaG91bGQgYmUgdGVzdGVkIGZvciBzZXBhcmF0ZWx5LCBhcyB0aGUKK3Bvc3RpbnN0IHdpbGwgb2Z0ZW4gYmUgY2FsbGVkIGZvciBzZXZlcmFsIHRyaWdnZXJzIGF0IG9uY2UuCisKK05vdGUgdGhhdCBpZiBhIHBhY2thZ2UgYm90aCBhY3RpdmF0ZXMgdHJpZ2dlcnMgaW4gb3RoZXIgcGFja2FnZXMsIGFuZAoraXMgaW50ZXJlc3RlZCBpbiB0cmlnZ2VycyBvZiBpdHMgb3duLCBpdHMgcG9zdGluc3QgbWF5IHJ1biBmb3IgdHJpZ2dlcgorcHJvY2Vzc2luZyBiZWZvcmUgdGhlIHBvc3RpbnN0KHMpIG9mIHRoZSBwYWNrYWdlKHMpIGl0IGhhcyB0cmlnZ2VyZWQuCisKKworVGltaW5nIGd1YXJhbnRlZXMsIHJhY2VzLCBldGMuCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworQWN0aXZhdGluZyBhIHRyaWdnZXIgd2lsbCBub3QgaGF2ZSBhbnkgaW1tZWRpYXRlIGVmZmVjdCwgYWx0aG91Z2gKK3B1dGF0aXZlIHJlc3VsdGluZyBzdGF0dXMgY2hhbmdlcyB3aWxsIHNob3cgdXAgaW4gZHBrZyAtLXN0YXR1cyBldGMuCisoUHV0YXRpdmUgYmVjYXVzZSB0aGUgYWN0dWFsIHN0YXR1cyBjaGFuZ2VzIG1heSBkZXBlbmQgb24gdGhlIHN0YXRlIG9mCit0cmlnZ2VyIGludGVyZXN0cyB3aGVuIGRwa2cgcHJvY2Vzc2VzIHRoZSB0cmlnZ2VyIGFjdGl2YXRpb24gaW50bwordGhlIHN0YXR1cyBkYXRhYmFzZSwgcmF0aGVyIHRoYW4gdGhhdCB3aGVuIGRwa2cgLS1zdGF0dXMgaXMgcnVuLikKKworQSBwYWNrYWdlIGlzIG9ubHkgZ3VhcmFudGVlZCB0byBiZWNvbWUgbm90aWZpZWQgb2YgYSB0cmlnZ2VyCithY3RpdmF0aW9uIGlmIGl0IGlzIGNvbnRpbnVvdXNseSBpbnRlcmVzdGVkIGluIHRoZSB0cmlnZ2VyLCBhbmQgbmV2ZXIKK2luIGBjb25maWctZmFpbGVkJyBvciB3b3JzZSwgZHVyaW5nIHRoZSBwZXJpb2QgZnJvbSB3aGVuIHRoZSB0cmlnZ2VyCitpcyBhY3RpdmF0ZWQgdW50aWwgZHBrZyBydW5zIHRoZSBwYWNrYWdlIHBvc3RpbnN0IChlaXRoZXIgZHVlIHRvCistLWNvbmZpZ3VyZSAtLXBlbmRpbmcsIG9yIGF0IHRoZSBlbmQgb2YgdGhlIHJlbGV2YW50IHJ1biwgYXMgZGVzY3JpYmVkCithYm92ZSkuICBTdWJzZXF1ZW50IHRvIGFjdGl2YXRpb24gYW5kIGJlZm9yZSBub3RpZmljYXRpb24sIHRoZQoraW50ZXJlc3RlZCBwYWNrYWdlIHdpbGwgbm90IGJlIGNvbnNpZGVyZWQgaW4gc3RhdGUgYGluc3RhbGxlZCcsIHNvCitsb25nIGFzIHRoZSBwYWNrYWdlIHJlbWFpbnMgaW50ZXJlc3RlZCwgYW5kIHRoZSB0cmlnZ2VyaW5nIHBhY2thZ2UKK3dpbGwgbm90IGJlIGNvbnNpZGVyZWQgYGluc3RhbGxlZCcuCisKK0lmIHRoZSBwYWNrYWdlIGlzIG5vdCBpbiBzdGF0ZSBgaW5zdGFsbGVkJywgYHRyaWdnZXJzLXBlbmRpbmcnIG9yCitgdHJpZ2dlcnMtYXdhaXRlZCcgdGhlbiBwZW5kaW5nIHRyaWdnZXJzIGFyZSBub3QgYWNjdW11bGF0ZWQuCitIb3dldmVyLCBpZiBzdWNoIGEgcGFja2FnZSAoYmV0d2VlbiBgaGFsZi1pbnN0YWxsZWQnIGFuZAorYGNvbmZpZy1mYWlsZWQnIGluY2x1c2l2ZSkgZGVjbGFyZXMgc29tZSB0cmlnZ2VyIGludGVyZXN0cyB0aGVuIHRoZQordHJpZ2dlcmluZyBwYWNrYWdlcyAqd2lsbCogYXdhaXQgdGhlaXIgY29uZmlndXJhdGlvbiAod2hpY2ggaW1wbGllcworY29tcGxldGlvbiBvZiBhbnkgbmVjZXNzYXJ5IHRyaWdnZXIgcHJvY2Vzc2luZykgb3IgcmVtb3ZhbC4KKworSXQgaXMgbm90IGRlZmluZWQgaW4gd2hhdCBvcmRlciB0cmlnZ2VycyB3aWxsIHJ1bi4gIGRwa2cgd2lsbCBtYWtlCitzb21lIGVmZm9ydCB0byBtaW5pbWlzZSByZWR1bmRhbnQgd29yayBpbiB0aGUgY2FzZSB3aGVyZSBtYW55IHBhY2thZ2VzCitoYXZlIHBvc3RpbnN0IHRyaWdnZXIgcHJvY2Vzc2luZyBhY3RpdmF0aW5nIGFub3RoZXIgcGFja2FnZSdzIHRyaWdnZXJzCisoZm9yIGV4YW1wbGUsIGJ5IHByb2Nlc3NpbmcgdHJpZ2dlcnMgaW4gZmlmbyBvcmRlciBkdXJpbmcgYSBzaW5nbGUKK2Rwa2cgcnVuKS4gIEN5Y2xlcyBpbiB0aGUgdHJpZ2dlcmluZyBncmFwaCBhcmUgcHJvaGliaXRlZCBhbmQgd2lsbAorZXZlbnR1YWxseSwgcGVyaGFwcyBhZnRlciBzb21lIGxvb3BpbmcsIGJlIGRldGVjdGVkIGJ5IGRwa2cgYW5kIGNhdXNlCit0cmlnZ2VyIHByb2Nlc3NpbmcgdG8gZmFpbDsgd2hlbiB0aGlzIGhhcHBlbnMgb25lIG9mIHRoZSBwYWNrYWdlcworaW52b2x2ZWQgd2lsbCBiZSBwdXQgaW4gc3RhdGUgYGNvbmZpZy1mYWlsZWQnIHNvIHRoYXQgdGhlIHRyaWdnZXIgbG9vcAord2lsbCBub3QgYmUgcmVhdHRlbXB0ZWQuICBTZWUgYEN5Y2xlIGRldGVjdGlvbicgYmVsb3cuCisKKworRXhwbGljaXQgdHJpZ2dlcnMKKy0tLS0tLS0tLS0tLS0tLS0tCisKK0V4cGxpY2l0IHRyaWdnZXJzIGhhdmUgbmFtZXMgd2l0aCB0aGUgc2FtZSBzeW50YXggYXMgcGFja2FnZSBuYW1lcywKKypidXQqIHNob3VsZCAqbm90KiBub3JtYWxseSBiZSBuYW1lZCBpZGVudGljYWxseSB0byBhIHBhY2thZ2UuCisKK1doZW4gY2hvb3NpbmcgYW4gZXhwbGljaXQgdHJpZ2dlciBuYW1lIGl0IGlzIHVzdWFsbHkgZ29vZCB0byBpbmNsdWRlIGEKK3JlbGV2YW50IHBhY2thZ2UgbmFtZSBvciBzb21lIG90aGVyIHVzZWZ1bCBpZGVudGlmaWVyIHRvIGhlbHAgbWFrZSB0aGUKK3RyaWdnZXIgbmFtZSB1bmlxdWUuICBPbiB0aGUgb3RoZXIgaGFuZCwgZXhwbGljaXQgdHJpZ2dlcnMgc2hvdWxkCitnZW5lcmFsbHkgbm90IGJlIHJlbmFtZWQganVzdCBiZWNhdXNlIHRoZSBpbnRlcmVzdGVkIG9yIHRyaWdnZXJpbmcKK3BhY2thZ2VzJyBuYW1lcyBjaGFuZ2UuCisKK0V4cGxpY2l0IHRyaWdnZXIgbmFtZXMgZm9ybSBwYXJ0IG9mIHRoZSBpbnRlcmZhY2UgYmV0d2VlbiBwYWNrYWdlcy4KK1RoZXJlZm9yZSBpbiBjYXNlIG9mIHdpZGVyIHVzZSBvZiBhbnkgdHJpZ2dlciB0aGUgbmFtZSBhbmQgcHVycG9zZQorc2hvdWxkIGJlIGRpc2N1c3NlZCBpbiB0aGUgdXN1YWwgd2F5IGFuZCBkb2N1bWVudGVkIGluIHRoZSBhcHByb3ByaWF0ZQorcGFja2FnaW5nIGd1aWRlbGluZXMgKGVnLCBpbiBwb2xpY3kpLgorCisKK0ZpbGUgdHJpZ2dlcnMKKy0tLS0tLS0tLS0tLS0KKworRmlsZSB0cmlnZ2VycyBoYXZlIG5hbWVzIG9mIHRoZSBmb3JtCisgIC9wYXRoL3RvL2RpcmVjdG9yeS9vci9maWxlCithbmQgYXJlIGFjdGl2YXRlZCB3aGVuIHRoZSBzcGVjaWZpZWQgZmlsZXN5c3RlbSBvYmplY3QsIG9yIGFueSBvYmplY3QKK3VuZGVyIHRoZSBzcGVjaWZpZWQgc3ViZGlyZWN0b3J5LCBpcyBjcmVhdGVkLCB1cGRhdGVkIG9yIGRlbGV0ZWQgYnkKK2Rwa2cgZHVyaW5nIHBhY2thZ2UgdW5wYWNrIG9yIHJlbW92YWwuICBUaGUgcGF0aG5hbWUgbXVzdCBiZSBhYnNvbHV0ZS4KKworRmlsZSB0cmlnZ2VycyBzaG91bGQgbm90IGdlbmVyYWxseSBiZSB1c2VkIHdpdGhvdXQgbXV0dWFsIGNvbnNlbnQuCitUaGUgdXNlIG9mIGEgZmlsZSB0cmlnZ2VyLCBhbmQgdGhlIG5hbWUgb2YgdGhlIHRyaWdnZXIgdXNlZCwgc2hvdWxkIGJlCitzdGF0ZWQgaW4gcG9saWN5LCBzbyB0aGF0IGEgcGFja2FnZSB3aGljaCBjcmVhdGVzIGEgcmVsZXZhbnQgZmlsZSBpbiBhCittYWludGFpbmVyIHNjcmlwdCBjYW4gYWN0aXZhdGUgdGhlIHRyaWdnZXIgZXhwbGljaXRseS4KKworRmlsZSB0cmlnZ2VycyBtdXN0IGRlZmluaXRlbHkgbm90IGJlIHVzZWQgYXMgYW4gZXNjYWxhdGlvbiB0b29sIGluCitkaXNhZ3JlZW1lbnRzIGJldHdlZW4gZGlmZmVyZW50IHBhY2thZ2VzIGFzIHRvIHRoZSBkZXNpcmVkIGNvbnRlbnRzIG9mCit0aGUgZmlsZXN5c3RlbS4gIFRyaWdnZXIgYWN0aXZhdGlvbiBkdWUgdG8gYSBwYXJ0aWN1bGFyIGZpbGUgc2hvdWxkCitub3QgZ2VuZXJhbGx5IG1vZGlmeSB0aGF0IGZpbGUgYWdhaW4uCisKK0NvbmZpZ3VyYXRpb24gZmlsZXMgKHdoZXRoZXIgZHBrZy1oYW5kbGVkIGNvbmZmaWxlcyBvciBub3QpLCBvciBhbnkKK290aGVyIGZpbGVzIHdoaWNoIGFyZSBtb2RpZmllZCBhdCB0aW1lcyBvdGhlciB0aGFuIHBhY2thZ2UgbWFuYWdlbWVudCwKK3Nob3VsZCBub3QgcmVseSBvbiBmaWxlIHRyaWdnZXJzIGRldGVjdGluZyBhbGwgbW9kaWZpY2F0aW9uczsgZHBrZwordHJpZ2dlcnMgYXJlIG5vdCBhIGdlbmVyYWwgbWVjaGFuaXNtIGZvciBmaWxlc3lzdGVtIG1vbml0b3JpbmcuCisKK0lmIHRoZXJlIGFyZSBvciBtaWdodCBiZSBkaXJlY3Rvcnkgc3ltbGlua3Mgd2hpY2ggcmVzdWx0IGluIHBhY2thZ2VzCityZWZlcnJpbmcgdG8gZmlsZXMgYnkgZGlmZmVyZW50IG5hbWVzLCB0aGVuIHRvIGJlIHN1cmUgb2YgYWN0aXZhdGlvbgorYWxsIG9mIHRoZSBwYXRocyB3aGljaCBtaWdodCBiZSBpbmNsdWRlZCBpbiBwYWNrYWdlcyBzaG91bGQgYmUgbGlzdGVkLgorVGhlIHBhdGggc3BlY2lmaWVkIGJ5IHRoZSBpbnRlcmVzdGVkIHBhY2thZ2UgaXMgbWF0Y2hlZCBhZ2FpbnN0IHRoZQorcGF0aCBpbmNsdWRlZCBpbiB0aGUgdHJpZ2dlcmluZyBwYWNrYWdlLCBub3QgYWdhaW5zdCB0aGUgdHJ1ZW5hbWUgb2YKK3RoZSBmaWxlIGFzIGluc3RhbGxlZC4gIE9ubHkgdGV4dHVhbGx5IGlkZW50aWNhbCBmaWxlbmFtZXMgKG9yCitmaWxlbmFtZXMgd2hlcmUgdGhlIGludGVyZXN0IGlzIGEgZGlyZWN0b3J5IHByZWZpeCBvZiB0aGUgaW5zdGFsbGVkCitmaWxlKSBhcmUgZ3VhcmFudGVlZCB0byBtYXRjaC4KKworQSBmaWxlIHRyaWdnZXIgaXMgZ3VhcmFudGVlZCB0byBiZSBhY3RpdmF0ZWQgYmVmb3JlIHRoZSBmaWxlIGluCitxdWVzdGlvbiBpcyBtb2RpZmllZCBieSBkcGtnOyBvbiB0aGUgb3RoZXIgaGFuZCwgYSBmaWxlIHRyaWdnZXIgbWlnaHQKK2JlIGFjdGl2YXRlZCBldmVuIHRob3VnaCBubyBmaWxlIHdhcyBhY3R1YWxseSBtb2RpZmllZC4gIENoYW5nZXMgbWFkZQorYnkgZHBrZyB0byB0aGUgbGluayBjb3VudCBvZiBhIGZpbGUsIG9yIHRvIHNvbGVseSB0aGUgaW5vZGUgbnVtYmVyCisoaWUsIGlmIGRwa2cgYXRvbWljYWxseSByZXBsYWNlcyBpdCB3aXRoIGFub3RoZXIgaWRlbnRpY2FsIGZpbGUpLCBhcmUKK25vdCBndWFyYW50ZWVkIHRvIGNhdXNlIHRyaWdnZXIgYWN0aXZhdGlvbi4KKworQmVjYXVzZSBvZiB0aGUgcmVzdHJpY3Rpb24gb24gdHJpZ2dlciBuYW1lcywgaXQgaXMgbm90IHBvc3NpYmxlIHRvCitkZWNsYXJlIGEgZmlsZSB0cmlnZ2VyIGZvciBhIGRpcmVjdG9yeSB3aG9zZSBuYW1lIGNvbnRhaW5zIHdoaXRlc3BhY2UsCitpMThuIGNoYXJhY3RlcnMsIGV0Yy4gIFN1Y2ggYSB0cmlnZ2VyIHNob3VsZCBub3QgYmUgbmVjZXNzYXJ5LgorCisKK1BhY2thZ2UgZGVjbGFyYXRpb25zIHJlZ2FyZGluZyB0cmlnZ2VycworLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKK1NlZSBkZWItdHJpZ2dlcnMoNSkuCisKK1N1cHBvcnQgZnV0dXJlIGV4dGVuc2lvbiBvZiB0aGUgdHJpZ2dlciBuYW1lIHN5bnRheCB3aXRoIGFkZGl0aW9uYWwKK2Rwa2ctZ2VuZXJhdGVkIHRyaWdnZXJzIGlzIGFzIGZvbGxvd3M6IGEgcGFja2FnZSB3aGljaCBpcyBpbnRlcmVzdGVkCitpbiBhbnkgdW5zdXBwb3J0ZWQgdHJpZ2dlciBraW5kcyBjYW5ub3QgYmUgY29uZmlndXJlZCAoc2luY2Ugc3VjaCBhCitwYWNrYWdlIGNhbm5vdCBiZSBndWFyYW50ZWVkIHRvIGhhdmUgdGhlc2UgdHJpZ2dlcnMgcHJvcGVybHkgYWN0aXZhdGVkCitieSBkcGtnKS4gIFRoZXJlZm9yZSBubyBwYWNrYWdlIGNhbiBiZSBpbnRlcmVzdGVkIGluIGFueSB1bnN1cHBvcnRlZAordHJpZ2dlciBraW5kcyBhbmQgdGhleSBjYW4gYmUgZnJlZWx5IGFjdGl2YXRlZCAoYm90aCBieSBgYWN0aXZhdGUnIGFuZAorYnkgZHBrZy10cmlnZ2VyKS4gIGRwa2ctZGViIHdpbGwgYmUgY2hhbmdlZCB0byB3YXJuIGFib3V0IHVucmVjb2duaXNlZAordHJpZ2dlciBuYW1lcyBzeW50YXhlcyBhbmQgdW5yZWNvZ25pc2VkIHRyaWdnZXIgY29udHJvbCBkaXJlY3RpdmVzLgorCisKK05ldyBjb21tYW5kIGxpbmUgaW50ZXJmYWNlcyB0byBkcGtnIHRvb2xzCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCitTZWUgZHBrZygxKS4KKworSGVyZSBpcyBhIHN1bW1hcnkgb2YgdGhlIGJlaGF2aW91cnM6CisKKyBDb21tYW5kIGxpbmUJCVRyaWdwcm9jCVRyaWdwcm9jCUNvbmZpZ3VyZQorCQkJdGhlc2UJCWFueSB0cmlnZ2VyZWQKKyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0KKyAtLXVucGFjawkJbm8JCXVzdWFsbHlbMV0Jbm9uZQorIC0tcmVtb3ZlCQluL2EJCXVzdWFsbHlbMV0Jbm9uZQorIC0taW5zdGFsbAkJbi9hCQl1c3VhbGx5WzFdCXRoZXNlCisgLS1jb25maWd1cmUgLWEJCWFueSBuZWVkZWQJdXN1YWxseVsxXQlhbnkgbmVlZGVkCisgLS1jb25maWd1cmUgPHNvbWU+CWlmIG5lZWRlZAl1c3VhbGx5WzFdCW11c3QsIG9yIHRyaWdwcm9jCisgLS10cmlnZ2Vycy1vbmx5IC1hCWFueSBuZWVkZWQJdXN1YWxseVsxXQlub25lCisgLS10cmlnZ2Vycy1vbmx5IDxzb21lPgltdXN0CQl1c3VhbGx5IG5vdFsxXQlub25lCisKKyBbMV0gY2FuIGJlIHNwZWNpZmllZCBleHBsaWNpdGx5IGJ5IC0tdHJpZ2dlcnMgb3IgLS1uby10cmlnZ2VycworCisKK1NlZSBkcGtnLXRyaWdnZXIoMSkuCisKK0EgdHJpZ2dlciBtYXkgYmUgYWN0aXZhdGVkIGV4cGxpY2l0bHkgd2l0aDoKKyAgIGRwa2ctdHJpZ2dlciBbLS1ieS1wYWNrYWdlIDxwYWNrYWdlPl0gPG5hbWUtb2YtdHJpZ2dlcj4KKyAgIGRwa2ctdHJpZ2dlciAtLW5vLWF3YWl0IDxuYW1lLW9mLXRyaWdnZXI+CisKK1RoZXJlIHdpbGwgYmUgbm8gb3V0cHV0IHRvIHN0ZG91dCwgYW5kIG5vbmUgdG8gc3RkZXJyIHVubGVzcworZHBrZy10cmlnZ2VyIGlzIHVuYWJsZSB0byBtYWtlIGEgcmVjb3JkIG9mIHRoZSB0cmlnZ2VyIGFjdGl2YXRpb24uCisKK05CIHRoYXQgaW4gdGhlIGNhc2Ugb2YgYSBmaWxlIHRyaWdnZXIgdGhlIG5hbWUgb2YgdGhlIHRyaWdnZXIgaXMKK25lZWRlZCwgbm90IHRoZSBuYW1lIG9mIGEgZmlsZSB3aGljaCB3b3VsZCBtYXRjaCB0aGUgdHJpZ2dlci4KKworCithcHQgYW5kIGFwdGl0dWRlCistLS0tLS0tLS0tLS0tLS0tCisKK1RoZXNlIG11c3QgYmUgdGF1Z2h0IGFib3V0IHRoZSBuZXcgYHRyaWdnZXJzLWF3YWl0ZWQnIGFuZAorYHRyaWdnZXJzLXBlbmRpbmcnIHN0YXRlcy4gIFBhY2thZ2VzIGluIHRoZXNlIHN0YXRlcyBzaG91bGQgYmUgdHJlYXRlZAorcm91Z2hseSBsaWtlIHRob3NlIGluIGB1bnBhY2tlZCc6IHRoZSByZW1lZHkgaXMgdG8gcnVuIGRwa2cKKy0tY29uZmlndXJlLgorCitOb3JtYWxseSBhcHQgYW5kIGFwdGl0dWRlIHdpbGwgbm90IHNlZSBwYWNrYWdlcyBpbiBgdHJpZ2dlcnMtcGVuZGluZycKK3NpbmNlIGRwa2cgd2lsbCBnZW5lcmFsbHkgYXR0ZW1wdCB0byBydW4gdGhlIHRyaWdnZXJzIHRodXMgbGVhdmluZyB0aGUKK3BhY2thZ2UgaW4gYGNvbmZpZy1mYWlsZWQnIG9yIGBpbnN0YWxsZWQnLgorCitOb3RlIHRoYXQgYXV0b21hdGljIHBhY2thZ2UgbWFuYWdlbWVudCB0b29scyB3aGljaCBjYWxsIGRwa2cgKGxpa2UgYXB0CithbmQgYXB0aXR1ZGUpIHNob3VsZCBub3QgYXR0ZW1wdCB0byBjb25maWd1cmUgaW5kaXZpZHVhbCBwYWNrYWdlcyBpbgorc3RhdGUgYHRyaWdnZXJzLXBlbmRpbmcnIChvciBpbmRlZWQgYHRyaWdnZXJzLWF3YWl0ZWQnKSB3aXRoIGRwa2cKKy0tdHJpZ2dlcnMtb25seSA8cGFja2FnZT4uLi4gb3IgZHBrZyAtLW5vLXRyaWdnZXJzIC0tY29uZmlndXJlIDxwYWNrYWdlPi4uLiwKK29yIHNpbWlsYXIgYXBwcm9hY2hlcy4gVGhpcyBtaWdodCBkZWZlYXQgZHBrZydzIHRyaWdnZXIgY3ljbGUgZGV0ZWN0aW9uLgorCitBIHBhY2thZ2UgbWFuYWdlbWVudCB0b29sIHdoaWNoIHdpbGwgcnVuIGRwa2cgLS1jb25maWd1cmUgLS1wZW5kaW5nIGF0Cit0aGUgZW5kIG1heSB1c2UgLS1uby10cmlnZ2VycyBvbiBpdHMgb3RoZXIgZHBrZyBydW5zLiAgVGhpcyB3b3VsZCBiZQorbW9yZSBlZmZpY2llbnQgYXMgaXQgYWxsb3dzIG1vcmUgYWdncmVzc2l2ZSBkZWZlcnJhbCAoYW5kIGhlbmNlIG1vcmUKK3VuaWZpY2F0aW9uKSBvZiB0cmlnZ2VyIHByb2Nlc3NpbmcuCisKKworRXJyb3IgaGFuZGxpbmcKKy0tLS0tLS0tLS0tLS0tCisKK1BhY2thZ2VzIHNob3VsZCBiZSB3cml0dGVuIHNvIHRoYXQgdGhleSBETyBOT1QgQlJFQUsganVzdCBiZWNhdXNlCit0aGVpciBwZW5kaW5nIHRyaWdnZXJzIGhhdmUgbm90IHlldCBiZWVuIHJ1bi4gIEl0IGlzIGFsbG93ZWQgZm9yIHRoZQorZnVuY3Rpb25hbGl0eSByZWxhdGluZyB0byB0aGUgdW5wcm9jZXNzZWQgdHJpZ2dlciB0byBmYWlsIChpZSwgdGhlCitwYWNrYWdlIHdoaWNoIGlzIGF3YWl0aW5nIHRoZSB0cmlnZ2VyIHByb2Nlc3NpbmcgbWF5IGJlIGJyb2tlbiksIGJ1dAordGhlIHJlbWFpbmRlciBvZiB0aGUgaW50ZXJlc3RlZCBwYWNrYWdlIG11c3Qgd29yayBub3JtYWxseS4KKworRm9yIGV4YW1wbGUsIGEgcGFja2FnZSB3aGljaCB1c2VzIGZpbGUgdHJpZ2dlcnMgdG8gcmVnaXN0ZXIgYWRkb25zCittdXN0IGNvcGUgd2l0aCAoYSkgYW4gYWRkb24gYmVpbmcgZHJvcHBlZCBpbnRvIHRoZSBmaWxlc3lzdGVtIGJ1dCBub3QKK3lldCByZWdpc3RlcmVkIGFuZCAoYikgYW4gYWRkb24gYmVpbmcgcmVtb3ZlZCBidXQgbm90IHlldAorZGVyZWdpc3RlcmVkLiAgSW4gYm90aCBvZiB0aGVzZSBjYXNlcyB0aGUgcGFja2FnZSdzIG1haW4gZnVuY3Rpb25hbGl0eQorbXVzdCBjb250aW51ZSB0byB3b3JrIG5vcm1hbGx5OyBmYWlsdXJlIG9mIHRoZSBhZGRvbiBpbiBxdWVzdGlvbiBpcworZXhwZWN0ZWQsIHdhcm5pbmcgbWVzc2FnZXMgYXJlIHRvbGVyYWJsZSwgYnV0IGNvbXBsZXRlIGZhaWx1cmUgb2YgdGhlCit3aG9sZSBwYWNrYWdlLCBvciBmYWlsdXJlcyBvZiBvdGhlciBhZGRvbnMsIGFyZSBub3QgYWNjZXB0YWJsZS4KKworZHBrZyBjYW5ub3QgZW5zdXJlIHRoYXQgdHJpZ2dlcnMgYXJlIHJ1biBpbiBhIHRpbWVseSBlbm91Z2ggbWFubmVyIGZvcgorcGF0aG9sb2dpY2FsIGVycm9yIGJlaGF2aW91cnMgdG8gYmUgdG9sZXJhYmxlLgorCisKK1doZXJlIGEgdHJpZ2dlciBzY3JpcHQgZmluZHMgYmFkIGRhdGEgcHJvdmlkZWQgYnkgYSB0cmlnZ2VyaW5nCitwYWNrYWdlLCBpdCBzaG91bGQgZ2VuZXJhbGx5IHJlcG9ydCB0byBzdGRlcnIgdGhlIHByb2JsZW0gd2l0aCB0aGUgYmFkCitkYXRhIGFuZCBleGl0IG5vbnplcm8sIGxlYXZpbmcgdGhlIGludGVyZXN0ZWQgcGFja2FnZSBpbiBjb25maWctZmFpbGVkCithbmQgdGhlIHRyaWdnZXJpbmcgcGFja2FnZSBpbiB0cmlnZ2Vycy1hd2FpdGVkIGFuZCB0aHVzIHNpZ25hbGxpbmcgdGhlCitwcm9ibGVtIHRvIHRoZSB1c2VyLgorCitBbHRlcm5hdGl2ZWx5LCBpbiBzb21lIHNpdHVhdGlvbnMgaXQgbWF5IGJlIG1vcmUgZGVzaXJhYmxlIHRvIGFsbG93Cit0aGUgaW50ZXJlc3RlZCBwYWNrYWdlIHRvIGJlIGNvbmZpZ3VyZWQgZXZlbiB0aG91Z2ggaXQgY2FuIG9ubHkKK3Byb3ZpZGUgcGFydGlhbCBzZXJ2aWNlLiAgSW4gdGhpcyBjYXNlIGNsZWFyIGluZm9ybWF0aW9uIHdpbGwgaGF2ZSB0bworYmUgZ2l2ZW4gaW4gYXBwcm9wcmlhdGUgcGxhY2VzIGFib3V0IHRoZSBtaXNzaW5nIGZ1bmN0aW9uYWxpdHksIGFuZCBhCityZWNvcmQgc2hvdWxkIGJlIG1hZGUgb2YgdGhlIGNhdXNlIG9mIHRoZSBlcnJvcnMuICBUaGlzIG9wdGlvbiBpcworcmVjb21tZW5kZWQgZm9yIHNpdHVhdGlvbnMgd2hlcmUgdGhlIGNvdXBsaW5nIGJldHdlZW4gdGhlIGludGVyZXN0ZWQKK2FuZCB0cmlnZ2VyaW5nIHBhY2thZ2UgaXMgcGFydGljdWxhcmx5IGxvb3NlOyBhbiBleGFtcGxlIG9mIHN1Y2ggYQorbG9vc2UgY291cGxpbmcgd291bGQgYmUgUHl0aG9uIG1vZHVsZXMuCisKKworCitXT1JLRUQgRVhBTVBMRSAtIFNDUk9MTEtFRVBFUgorPT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworQ3VycmVudGx5LCBldmVyeSBHbm9tZSBwcm9ncmFtIHdoaWNoIGNvbWVzIHdpdGggc29tZSBoZWxwIGluc3RhbGxzIHRoZQoraGVscCBmaWxlcyBpbiAvdXNyL3NoYXJlL2dub21lL2hlbHAgYW5kIHRoZW4gaW4gdGhlIHBvc3RpbnN0IHJ1bnMKK3Njcm9sbGtlZXBlci11cGRhdGUuICBzY3JvbGxrZWVwZXItdXBkYXRlIHJlYWRzLCBwYXJzZXMgYW5kIHJld3JpdGVzCitzb21lIGxhcmdlIHhtbCBmaWxlcyBpbiAvdmFyL2xpYi9zY3JvbGxrZWVwZXI7IGN1cnJlbnRseSB0aGlzCitvY2N1cnMgYXQgZXZlcnkgcmVsZXZhbnQgcGFja2FnZSBpbnN0YWxsYXRpb24sIHVwZ3JhZGUgb3IgcmVtb3ZhbC4KKworV2hlbiB0cmlnZ2VycyBhcmUgYXZhaWxhYmxlLCB0aGlzIHdpbGwgd29yayBhcyBmb2xsb3dzOgorCisgKiBnbm9tZS1mb29iYXIgd2lsbCBzaGlwIGl0cyBgb21mJyBmaWxlIGluIC91c3Ivc2hhcmUvb21mIGFzCisgICBub3JtYWwsIGJ1dCB3aWxsIG5vdCBjb250YWluIGFueSBzcGVjaWFsIG1hY2hpbmVyeSB0byBpbnZva2UKKyAgIHNjcm9sbGtlZXBlci4KKworICogc2Nyb2xsa2VlcGVyIHdpbGwgaW4gaXRzIHRyaWdnZXJzIGNvbnRyb2wgZmlsZSBzYXk6CisgICAgICAgaW50ZXJlc3QgL3Vzci9zaGFyZS9vbWYKKyAgIGFuZCBpbiBpdHMgcG9zdGluc3Qgc2F5OgorICAgICAgIHNjcm9sbGtlZXBlci11cGRhdGUtbm93IC1xCisKKyAgIGRwa2cgd2lsbCBhcnJhbmdlIHRoYXQgdGhpcyBpcyBydW4gb25jZSBhdCB0aGUgZW5kIG9mIGVhY2ggcnVuCisgICB3aGVyZSBhbnkgZG9jdW1lbnRhdGlvbiB3YXMgdXBkYXRlZC4KKworICAgTm90ZSB0aGF0IGl0IGlzIG5vdCBuZWNlc3NhcnkgdG8gZXhlY3V0ZSB0aGlzIG9ubHkgb24gcGFydGljdWxhcgorICAgcG9zdGluc3QgIiQxIiB2YWx1ZXM7IGhvd2V2ZXIsIGF0IHRoZSB0aW1lIG9mIHdyaXRpbmcsIHNjcm9sbGtlZXBlcgorICAgZG9lcyB0aGlzOgorCisgICAgICAgaWYgWyAiJDEiID0gImNvbmZpZ3VyZSIgXTsgdGhlbgorICAgICAgICAgcHJpbnRmICJSZWJ1aWxkaW5nIHRoZSBkYXRhYmFzZS4gVGhpcyBtYXkgdGFrZSBzb21lIHRpbWUuXG4iCisgICAgICAgICBzY3JvbGxrZWVwZXItcmVidWlsZGRiIC1xCisgICAgICAgZmkKKworICAgYW5kIHRvIHJldGFpbiB0aGlzIGJlaGF2aW91ciwgc29tZXRoaW5nIGFsb25nIHRoZSBmb2xsb3dpbmcgbGluZXMKKyAgIHdvdWxkIGJlIHNlbnNpYmxlOgorCisgICAgICAgaWYgWyAiJDEiID0gImNvbmZpZ3VyZSIgXTsgdGhlbgorICAgICAgICAgcHJpbnRmICJSZWJ1aWxkaW5nIHRoZSBkYXRhYmFzZS4gVGhpcyBtYXkgdGFrZSBzb21lIHRpbWUuXG4iCisgICAgICAgICBzY3JvbGxrZWVwZXItcmVidWlsZGRiIC1xCisgICAgICAgZWxzZQorICAgICAgICAgcHJpbnRmICJVcGRhdGluZyBHTk9NRSBoZWxwIGRhdGFiYXNlLlxuIgorICAgICAgICAgc2Nyb2xsa2VlcGVyLXVwZGF0ZS1ub3cgLXEKKyAgICAgICBmaQorCisgKiBkaF9zY3JvbGxrZWVwZXIgd2lsbCBvbmx5IGFkanVzdCB0aGUgRFREIGRlY2xhcmF0aW9ucyBhbmQgbm8gbG9uZ2VyCisgICBlZGl0IG1haW50YWluZXIgc2NyaXB0cy4KKworCitGdWxsIGltcGxlbWVudGF0aW9uIG9mIHRoZSB0cmFuc2l0aW9uIHBsYW4gZGVmaW5lZCBiZWxvdywgZm9yCitzY3JvbGxrZWVwZXIsIGdvZXMgbGlrZSB0aGlzOgorCisgMS4gVXBkYXRlIHNjcm9sbGtlZXBlcjoKKyAgICAgLSBBZGQgYSBgdHJpZ2dlcnMnIGNvbnRyb2wgYXJjaGl2ZSBmaWxlIGNvbnRhaW5pbmcKKyAgICAgICAgICAgaW50ZXJlc3QgL3Vzci9zaGFyZS9vbWYKKyAgICAgLSBNYWtlIHRoZSBwb3N0aW5zdCBtb2RpZmljYXRpb25zIGFzIGRlc2NyaWJlZCBhYm92ZS4KKyAgICAgLSBSZW5hbWUgc2Nyb2xsa2VlcGVyLXVwZGF0ZSB0byBzY3JvbGxrZWVwZXItdXBkYXRlLW5vdworICAgICAtIFByb3ZpZGUgYSBuZXcgd3JhcHBlciBzY3JpcHQgYXMgc2Nyb2xsa2VlcGVyLXVwZGF0ZToKKwkgICAjIS9iaW4vc2ggLWUKKwkgICBpZiB0eXBlIGRwa2ctdHJpZ2dlciA+L2Rldi9udWxsIDI+JjEgJiYgXAorCSAgICAgIGRwa2ctdHJpZ2dlciAvdXNyL3NoYXJlL29tZjsgdGhlbgorCQkgZXhpdCAwCisJICAgZmkKKwkgICBleGVjIHNjcm9sbGtlZXBlci11cGRhdGUtbm93ICIkQCIKKworIDIuIEluIGdub21lLXBvbGljeSBjaGFwdGVyIDIsIGBVc2Ugb2Ygc2Nyb2xsa2VlcGVyJywKKyAgICAgLSBkZWxldGUgdGhlIHJlcXVpcmVtZW50IHRoYXQgdGhlIHBhY2thZ2UgbXVzdCBkZXBlbmQgb24KKyAgICAgICBzY3JvbGxrZWVwZXIKKyAgICAgLSBkZWxldGUgdGhlIHJlcXVpcmVtZW50IHRoYXQgdGhlIHBhY2thZ2UgbXVzdCBpbnZva2UKKyAgICAgICBzY3JvbGxrZWVwZXIgaW4gdGhlIHBvc3RpbnN0IGFuZCBwb3N0cm0KKyAgICAgLSBpbnN0ZWFkIHNheToKKworICAgICAgICAgT01GIGZpbGVzIHNob3VsZCBiZSBpbnN0YWxsZWQgdW5kZXIgL3Vzci9zaGFyZS9vbWYgaW4gdGhlCisgICAgICAgICB1c3VhbCB3YXkuICBBIGRwa2cgdHJpZ2dlciBpcyB1c2VkIHRvIGFycmFuZ2UgdG8gdXBkYXRlIHRoZQorICAgICAgICAgc2Nyb2xsa2VlcGVyIGRvY3VtZW50YXRpb24gaW5kZXggYXV0b21hdGljYWxseSBhbmQgbm8gc3BlY2lhbAorICAgICAgICAgY2FyZSBuZWVkIGJlIHRha2VuIGluIHBhY2thZ2VzIHdoaWNoIHN1cHBseSBPTUZzLgorCisgICAgICAgICBJZiBhbiBPTUYgZmlsZSBpcyBwbGFjZWQsIG1vZGlmaWVkIG9yIHJlbW92ZWQgb3RoZXIgdGhhbiBhcworICAgICAgICAgYW4gZmlsZSBpbnN0YWxsZWQgaW4gdGhlIG9yZGluYXJ5IHdheSBieSBkcGtnLCB0aGUgZHBrZyBmaWxlCisgICAgICAgICB0cmlnZ2VyIGAvdXNyL3NoYXJlL29tZicgc2hvdWxkIGJlIGFjdGl2YXRlZDsgc2VlIHRoZSBkcGtnCisgICAgICAgICB0cmlnZ2VycyBzcGVjaWZpY2F0aW9uIGZvciBkZXRhaWxzLgorCisgICAgICAgICBFeGlzdGluZyBwYWNrYWdlcyB3aGljaCBEZXBlbmQgb24gc2Nyb2xsa2VlcGVyICg+PSAzLjgpCisgICAgICAgICBiZWNhdXNlIG9mIGRoX3Njcm9sbGtlZXBlciBvciBleHBsaWNpdCBjYWxscyB0bworICAgICAgICAgc2Nyb2xsa2VlcGVyLXVwZGF0ZSBzaG91bGQgYmUgbW9kaWZpZWQgbm90IHRvIERlcGVuZCBvbgorICAgICAgICAgc2Nyb2xsa2VlcGVyLgorCisgMy4gVXBkYXRlIGRlYmhlbHBlcidzIGRoX3Njcm9sbGtlZXBlciBub3QgdG8gZWRpdCBtYWludGFpbmVyCisgICAgc2NyaXB0cy4gIE9uZSBvZiBkaF9zY3JvbGxrZWVwZXIgb3IgbGludGlhbiBzaG91bGQgYmUgY2hhbmdlZCB0bworICAgIGlzc3VlIGEgd2FybmluZyBmb3IgcGFja2FnZXMgd2l0aCBzY3JvbGxrZWVwZXIgKD49IDMuOCkgaW4gdGhlCisgICAgRGVwZW5kcyBjb250cm9sIGZpbGUgbGluZS4KKworIDQuIFJlbW92ZSB0aGUgc3B1cmlvdXMgZGVwZW5kZW5jaWVzIG9uIHNjcm9sbGtlZXBlciwgYXQgb3VyIGxlaXN1cmUuCisgICAgQXMgYSBib251cywgYWZ0ZXIgdGhpcyBpcyBjb21wbGV0ZSBpdCB3aWxsIGJlIHBvc3NpYmxlIHRvIHJlbW92ZQorICAgIHNjcm9sbGtlZXBlciB3aGlsZSBrZWVwaW5nIGFsbCBvZiB0aGUgZG9jdW1lbnRhdGlvbi1zdXBwbHlpbmcKKyAgICBnbm9tZSBwYWNrYWdlcyBpbnN0YWxsZWQuCisKKyA1LiBJZiB0aGVyZSBhcmUgYW55IHBhY2thZ2VzIHdoaWNoIGRvIGJ5IGhhbmQgd2hhdCBkaF9zY3JvbGxrZWVwZXIKKyAgICBkb2VzLCBjaGFuZ2UgdGhlbSBub3QgdG8gY2FsbCBzY3JvbGxrZWVwZXItdXBkYXRlIGFuZCBkcm9wCisgICAgdGhlaXIgZGVwZW5kZW5jeSBvbiBzY3JvbGxrZWVwZXIuCisKK1RoaXMgaXMgbm90IDEwMCUgaW4ga2VlcGluZyB3aXRoIHRoZSBmdWxsIHRyYW5zaXRpb24gcGxhbiBkZWZpbmVkCitiZWxvdzogaWYgYSBuZXcgZ25vbWUgcGFja2FnZSBpcyB1c2VkIHdpdGggYW4gb2xkIHNjcm9sbGtlZXBlciwgdGhlcmUKK2lzIHNvbWUgcG9zc2liaWxpdHkgdGhhdCB0aGUgaGVscCB3aWxsIG5vdCBwcm9wZXJseSBiZSBhdmFpbGFibGUuCisKK1VuZm9ydHVuYXRlbHksIGRoX3Njcm9sbGtlZXBlciBkb2Vzbid0IGdlbmVyYXRlIHRoZSBzY3JvbGxrZWVwZXIKK2RlcGVuZGVuY3kgaW4gdGhlIGNvbnRyb2wgZmlsZSwgd2hpY2ggbWFrZXMgaXQgZXhjZXNzaXZlbHkgaGFyZCB0byBnZXQKK3RoZSBkZXBlbmRlbmN5IHVwIHRvIGRhdGUuICBUaGUgYmFkIGNvbnNlcXVlbmNlcyBvZiB0aGUgaW5hY2N1cmF0ZQorZGVwZW5kZW5jaWVzIGFyZSBsZXNzIHNldmVyZSB0aGFuIHRoZSBjb250b3J0aW9ucyB3aGljaCB3b3VsZCBiZQorcmVxdWlyZWQgdG8gZGVhbCB3aXRoIHRoZSBwcm9ibGVtLgorCisKK1RSQU5TSVRJT04gUExBTgorPT09PT09PT09PT09PT09CisKKworT2xkIGRwa2cgdG8gbmV3IGRwa2cKKy0tLS0tLS0tLS0tLS0tLS0tLS0tCisKK1RoZSBmaXJzdCB0aW1lIGEgdHJpZ2dlci1zdXBwb3J0aW5nIGRwa2cgaXMgcnVuIG9uIGFueSBzeXN0ZW0sIGl0IHdpbGwKK2FjdGl2YXRlIGFsbCB0cmlnZ2VycyBpbiB3aGljaCBhbnlvbmUgaXMgaW50ZXJlc3RlZCwgaW1tZWRpYXRlbHkuCisKK1RoZXNlIHRyaWdnZXIgYWN0aXZhdGlvbnMgd2lsbCBub3QgYmUgcHJvY2Vzc2VkIGluIHRoZSBzYW1lIGRwa2cgcnVuLAordG8gYXZvaWQgdW5leHBlY3RlZGx5IHByb2Nlc3NpbmcgdHJpZ2dlcnMgd2hpbGUgYXR0ZW1wdGluZyBhbgordW5yZWxhdGVkIG9wZXJhdGlvbi4gIGRwa2cgLS1jb25maWd1cmUgLS1wZW5kaW5nIChhbmQgbm90IG90aGVyIGRwa2cKK29wZXJhdGlvbnMpIHdpbGwgcnVuIHRoZSB0cmlnZ2VycywgYW5kIHRoZSBkcGtnIHBvc3RpbnN0IHdpbGwgd2FybiB0aGUKK3VzZXIgYWJvdXQgdGhlIG5lZWQgdG8gcnVuIGl0IChpZiB0aGlzIGRlZmVycmVkIHRyaWdnZXJzIGNvbmRpdGlvbgorZXhpc3RzKS4gIChBbnkgdHJpZ2dlcnMgYWN0aXZhdGVkIG9yIHJlYWN0aXZhdGVkICphZnRlciogdGhpcworbWFzcy1hY3RpdmF0aW9uIHdpbGwgYmUgcHJvY2Vzc2VkIGluIHRoZSBub3JtYWwgd2F5LikKKworVG8gdXNlIHRoaXMgY29ycmVjdGx5OgorICogUGFja2FnZXMgd2hpY2ggYXJlIGludGVyZXN0ZWQgaW4gdHJpZ2dlcnMsIG9yIHdoaWNoIHdhbnQgdG8KKyAgICBleHBsaWNpdGx5IGFjdGl2YXRlIHRyaWdnZXJzLCBzaG91bGQgRGVwZW5kIG9uIHRoZQorICAgIHRyaWdnZXJzLXN1cHBvcnRpbmcgdmVyc2lvbiBvZiBkcGtnLgorICogVXBkYXRlIGluc3RydWN0aW9ucyBhbmQgdG9vbHMgc2hvdWxkIGFycmFuZ2UgdG8gcnVuCisgICAgZHBrZyAtLWNvbmZpZ3VyZSAtLXBlbmRpbmcKKyAgIGFmdGVyIHRoZSBpbnN0YWxsOyB0aGlzIHdpbGwgcHJvY2VzcyB0aGUgcGVuZGluZyB0cmlnZ2Vycy4KKworZHBrZydzIHByZXJtIHdpbGwgY2hlY2sgZm9yIGF0dGVtcHRzIHRvIGRvd25ncmFkZSB3aGlsZSB0cmlnZ2VycyBhcmUKK3BlbmRpbmcgYW5kIHJlZnVzZS4gIChTaW5jZSB0aGUgbmV3IGRwa2cgd291bGQgYmUgaW5zdGFsbGVkIGJ1dCB0aGVuCityZWZ1c2UgdG8gcmVhZCB0aGUgc3RhdHVzIGZpbGUuKSAgSW4gY2FzZSB0aGlzIGlzIG5lY2Vzc2FyeSBhIHNlcGFyYXRlCit0b29sIHdpbGwgYmUgcHJvdmlkZWQgd2hpY2ggd2lsbDoKKyAgKiBQdXQgYWxsIHBhY2thZ2VzIHdpdGggYW55IHBlbmRpbmcgdHJpZ2dlcnMgaW50byBzdGF0ZQorICAgIGBjb25maWctZmFpbGVkJyBhbmQgcmVtb3ZlIHRoZSBsaXN0IG9mIHBlbmRpbmcgdHJpZ2dlcnMuCisgICogUmVtb3ZlIHRoZSBsaXN0IG9mIGF3YWl0ZWQgdHJpZ2dlcnMgZnJvbSBldmVyeSBwYWNrYWdlLiAgVGhpcworICAgIG1heSBjYXVzZSBwYWNrYWdlcyB0byBnbyBmcm9tIGB0cmlnZ2Vycy1hd2FpdGVkJyB0byBgaW5zdGFsbGVkJworICAgIHdoaWNoIGlzIG5vdCAxMDAlIGFjY3VyYXRlIGJ1dCB0aGUgYmVzdCB0aGF0IGNhbiBiZSBkb25lLgorICAqIFJlbW92ZSAvdmFyL2xpYi9kcGtnL3RyaWdnZXJzICh0byBwdXQgdGhlIHNpdHVhdGlvbiB0byB0aGF0IHdoaWNoCisgICAgd2Ugd291bGQgaGF2ZSBzZWVuIGlmIHRoZSB0cmlnZ2VyLXN1cHBvcnRpbmcgZHBrZyBoYWQgbmV2ZXIgYmVlbgorICAgIGluc3RhbGxlZCkuCisKKworSGlnaGVyLWxldmVsIHByb2dyYW1zCistLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworVGhlIG5ldyBkcGtnIHdpbGwgZGVjbGFyZSB2ZXJzaW9uZWQgQ29uZmxpY3RzIGFnYWluc3QgYXB0IGFuZCBhcHRpdHVkZQorYW5kIG90aGVyIGNyaXRpY2FsIHBhY2thZ2UgbWFuYWdlbWVudCB0b29scyB3aGljaCB3aWxsIGJlIGJyb2tlbiBieQordGhlIG5ldyBTdGF0dXMgZmllbGQgdmFsdWVzLiAgVGhlcmVmb3JlLCB0aGUgbmV3IGhpZ2hlci1sZXZlbCB0b29scword2lsbCBoYXZlIHRvIGJlIGRlcGxveWVkIGZpcnN0LgorCitUaGUgbmV3IGRwa2cgd2lsbCBkZWNsYXJlIHZlcnNpb25lZCBCcmVha3MgYWdhaW5zdCBhbnkga25vd24KK25vbmNyaXRpY2FsIHBhY2thZ2UgbWFuYWdlbWVudCB0b29scyB3aGljaCB3aWxsIGJlIGJyb2tlbiBieSB0aGUgbmV3CitTdGF0dXMgZmllbGQgdmFsdWUuCisKKworVHJhbnNpdGlvbiBoaW50cyBmb3IgZXhpc3RpbmcgcGFja2FnZXMKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKK1doZW4gYSBjZW50cmFsIChjb25zdW1lcikgcGFja2FnZSBkZWZpbmVzIGEgZGlyZWN0b3J5IHdoZXJlIG90aGVyIGxlYWYKKyhwcm9kdWNlcikgcGFja2FnZXMgbWF5IHBsYWNlIGZpbGVzIGFuZC9vciBkaXJlY3RvcmllcywgYW5kIGN1cnJlbnRseQordGhlIHByb2R1Y2VyIHBhY2thZ2VzIGFyZSByZXF1aXJlZCB0byBydW4gYW4gYHVwZGF0ZS1jb25zdW1lcicgc2NyaXB0CitpbiB0aGVpciBwb3N0aW5zdDoKKyAxLiBJbiB0aGUgcmVsZXZhbnQgcG9saWN5LCBkZWZpbmUgYSB0cmlnZ2VyIG5hbWUgd2hpY2ggaXMgdGhlIG5hbWUgb2YKKyAgICB0aGUgZGlyZWN0b3J5IHdoZXJlIHRoZSBpbmRpdmlkdWFsIGZpbGVzIGFyZSBwbGFjZWQgYnkgcHJvZHVjZXIKKyAgICBwYWNrYWdlcy4KKyAyLiBVcGRhdGUgdGhlIGNvbnN1bWVyIHBhY2thZ2U6CisgICAgKiBEZWNsYXJlIGFuIGludGVyZXN0IGluIHRoZSB0cmlnZ2VyLgorICAgICogRWRpdCB1cGRhdGUtY29uc3VtZXIgc28gdGhhdCBpZiBpdCBpcyBjYWxsZWQgd2l0aG91dCAtLXJlYWwKKyAgICAgIGl0IGRvZXMgdGhlIGZvbGxvd2luZzoKKwkgIGlmIHR5cGUgZHBrZy10cmlnZ2VyID4vZGV2L251bGwgMj4mMSAmJiBcCisJICAgICBkcGtnLXRyaWdnZXIgbmFtZS1vZi10cmlnZ2VyOyB0aGVuCisJCWV4aXQgMAorCSAgZmkKKyAgICAgIElmIHRoaXMgZmFpbHMgdG8gY2F1c2UgdXBkYXRlLWNvbnN1bWVyIHRvIGV4aXQsIGl0IHNob3VsZCBkbworICAgICAgaXRzIG5vcm1hbCB1cGRhdGUgcHJvY2Vzc2luZy4gIEFsdGVybmF0aXZlbHksIGlmIGl0IGlzIG1vcmUKKyAgICAgIGNvbnZlbmllbnQsIHVwZGF0ZS1jb25zdW1lciBjb3VsZCBiZSByZW5hbWVkIGFuZCBzdXBwbGFudGVkIHdpdGgKKyAgICAgIGEgd3JhcHBlciBzY3JpcHQgd2hpY2ggY29uZGl0aW9uYWxseSBydW5zIHRoZSByZWFsCisgICAgICB1cGRhdGUtY29uc3VtZXIuCisgICAgKiBJbiB0aGUgcG9zdGluc3QsIGFycmFuZ2UgZm9yIHRoZSBuZXcgYHRyaWdnZXJlZCcgaW52b2NhdGlvbiB0bworICAgICAgcnVuIHVwZGF0ZS1jb25zdW1lciAtLXJlYWwuICBUaGUgY29uc3VtZXIgcGFja2FnZSdzIHBvc3RpbnN0CisgICAgICB3aWxsIGFscmVhZHkgcnVuIHVwZGF0ZS1jb25zdW1lciBkdXJpbmcgY29uZmlndXJhdGlvbiwgYW5kIHRoaXMKKyAgICAgIHNob3VsZCBiZSByZXRhaW5lZCBhbmQgc3VwcGxlbWVudGVkIHdpdGggdGhlIC0tcmVhbCBvcHRpb24gKG9yCisgICAgICBjaGFuZ2VkIHRvIGNhbGwgdGhlIHJlYWwgc2NyaXB0IHJhdGhlciB0aGFuIHRoZSB3cmFwcGVyKS4KKyAzLiBVcGRhdGUgdGhlIHByb2R1Y2VyIHBhY2thZ2VzOgorICAgICogSW4gdGhlIHBvc3RpbnN0LCByZW1vdmUgdGhlIGNhbGwgdG8gdXBkYXRlLWNvbnN1bWVyCisgICAgKiBDaGFuZ2UgdGhlIGRlcGVuZGVuY3kgb24gY29uc3VtZXIgdG8gYmUgdmVyc2lvbmVkLCBzcGVjaWZ5aW5nIGEKKyAgICAgIHRyaWdnZXItaW50ZXJlc3RlZCBjb25zdW1lci4KKyAgICBUaGlzIGNhbiBiZSBkb25lIGF0IG91ciBsZWlzdXJlLiAgSWRlYWxseSBmb3IgbG9vc2VseSBjb3VwbGVkCisgICAgcGFja2FnZXMgdGhpcyB3b3VsZCBiZSBkb25lIG9ubHkgaW4gdGhlIHJlbGVhc2UgYWZ0ZXIgdGhlIG9uZQorICAgIGNvbnRhaW5pbmcgdGhlIHRyaWdnZXJzLWludGVyZXN0ZWQgY29uc3VtZXIsIHRvIGZhY2lsaXRhdGUgcGFydGlhbAorICAgIHVwZ3JhZGVzIGFuZCBiYWNrcG9ydHMuCisgNC4gQWZ0ZXIgYWxsIHByb2R1Y2VyIHBhY2thZ2VzIGhhdmUgYmVlbiB1cGRhdGVkIGFjY29yZGluZyB0byBzdGVwIDMsCisgICAgYHVwZGF0ZS1jb25zdW1lcicgaGFzIGJlY29tZSBhbiBpbnRlcmZhY2UgaW50ZXJuYWwgdG8gdGhlIGNvbnN1bWVyCisgICAgYW5kIG5lZWQgbm8gbG9uZ2VyIGJlIGtlcHQgc3RhYmxlLiAgSWYgdW4tdXBkYXRlZCBwcm9kdWNlcnMgYXJlCisgICAgc3RpbGwgb2YgaW50ZXJlc3QsIGluY29tcGF0aWJsZSBjaGFuZ2VzIHRvIGB1cGRhdGUtY29uc3VtZXInIGltcGx5CisgICAgYSB2ZXJzaW9uZWQgQnJlYWtzIGFnYWluc3QgdGhlIG9sZCBwcm9kdWNlcnMuCisoU2VlIGFsc28gYFRyYW5zaXRpb24gcGxhbicsIGJlbG93LikKKworSWYgdGhlcmUgYXJlIHNldmVyYWwgY29uc3VtZXIgcGFja2FnZXMgYWxsIG9mIHdoaWNoIGFyZSBpbnRlcmVzdGVkIGluCit0aGUgZmVhdHVyZXMgcHJvdmlkZWQgYnkgcHJvZHVjZXIgcGFja2FnZXMsIHRoZSBjdXJyZW50IGFycmFuZ2VtZW50cwordXN1YWxseSBpbnZvbHZlIGFuIGFkZGl0aW9uYWwgY2VudHJhbCBzd2l0Y2hib2FyZCBwYWNrYWdlIChlZywKK2VtYWNzZW4tY29tbW9uKS4gIEluIHRoaXMgY2FzZToKKworIC0tIE5PVEUgLSB0aGlzIHBhcnQgb2YgdGhlIHRyYW5zaXRpb24gcGxhbiBpcyBzdGlsbCBhIHByb29mIG9mCisgICAgICAgICAgIGNvbmNlcHQgYW5kIHdlIG1pZ2h0IHlldCBpbXByb3ZlIG9uIGl0CisKKyAxLiBEZWZpbmUgdGhlIHRyaWdnZXIgbmFtZS4KKyAyLiBVcGRhdGUgdGhlIHN3aXRjaGJvYXJkIHRvIGhhdmUgYW55IG5ldyBmdW5jdGlvbmFsaXR5IG5lZWRlZCBieSB0aGUKKyAgICBjb25zdW1lcnMgaW4gc3RlcCAzICgybmQgYnVsbGV0KS4KKyAzLiBVcGRhdGUgdGhlIGNvbnN1bWVyIHBhY2thZ2VzOgorICAgICogRGVjbGFyZSBhbiBpbnRlcmVzdCBpbiB0aGUgdHJpZ2dlci4KKyAgICAqIEluIHRoZSBwb3N0aW5zdCwgYXJyYW5nZSBmb3IgdGhlIG5ldyBgdHJpZ2dlcicgaW52b2NhdGlvbiB0byBydW4KKyAgICAgIHRoZSBjb21waWxhdGlvbi9yZWdpc3RyYXRpb24gcHJvY2Vzcy4gIFRoaXMgbWF5IGludm9sdmUgc2Nhbm5pbmcKKyAgICAgIGZvciBuZXcgb3IgcmVtb3ZlZCBwcm9kdWNlcnMsIGFuZCBtYXkgaW52b2x2ZSBuZXcgY29tbW9uCisgICAgICBmdW5jdGlvbmFsaXR5IGZyb20gdGhlIHN3aXRjaGJvYXJkIChpbiB3aGljaCBjYXNlIGEgdmVyc2lvbmVkCisgICAgICBEZXBlbmRzIGlzIG5lZWRlZCkuCisgICAgKiBUaGUgb2xkIGludGVyZmFjZSBhbGxvd2luZyB0aGUgc3dpdGNoYm9hcmQgdG8gcnVuCisgICAgICBjb21waWxhdGlvbi9yZWdpc3RyYXRpb24gc2hvdWxkIGJlIHByZXNlcnZlZCwgaW5jbHVkaW5nCisgICAgICBjYWxscyB0byB0aGUgc3dpdGNoYm9hcmQgdG8gcmVnaXN0ZXIgdGhpcyBjb25zdW1lci4KKyA0LiBXaGVuIGFsbCBjb25zdW1lcnMgaGF2ZSBiZWVuIHVwZGF0ZWQsIHVwZGF0ZSB0aGUgc3dpdGNoYm9hcmQ6CisgICAgKiBNYWtlIHRoZSByZWdpc3RyYXRpb24gc2NyaXB0cyBjYWxsZWQgYnkgcHJvZHVjZXJzIHRyeSB0bworICAgICAgYWN0aXZhdGUgdGhlIHRyaWdnZXIgYW5kIGlmIHRoYXQgc3VjY2VlZHMgcXVpdCB3aXRob3V0CisgICAgICBkb2luZyBhbnkgd29yayAoYXMgZm9yIGJ1bGxldCAyIGluIHRoZSBzaW1wbGUgY2FzZSBhYm92ZSkuCisgICAgKiBWZXJzaW9uZWQgQnJlYWtzLCBhZ2FpbnN0IHRoZSBvbGQgKHByZS1zdGVwLTMpIGNvbnN1bWVycy4KKyA1LiBBZnRlciB0aGUgc3dpdGNoYm9hcmQgaGFzIGJlZW4gdXBkYXRlZCwgcHJvZHVjZXJzIGNhbiBiZSB1cGRhdGVkOgorICAgICogUmVtb3ZlIHRoZSBjYWxscyB0byB0aGUgc3dpdGNoYm9hcmQgcmVnaXN0cmF0aW9uL2NvbXBpbGF0aW9uCisgICAgICBmdW5jdGlvbnMuCisgICAgKiBDaGFuZ2UgdGhlIGRlcGVuZGVuY3kgb24gdGhlIHN3aXRjaGJvYXJkIHRvIGEgdmVyc2lvbmVkIG9uZSwKKyAgICAgIHNwZWNpZnlpbmcgdGhlIG9uZSB3aGljaCBCcmVha3Mgb2xkIGNvbnN1bWVycy4gIEFsdGVybmF0aXZlbHksCisgICAgICBpdCBtYXkgYmUgdGhlIGNhc2UgdGhhdCB0aGUgc3dpdGNoYm9hcmQgaXMgbm8gbG9uZ2VyIG5lZWRlZCAob3IKKyAgICAgIG5vdCBuZWVkZWQgZm9yIHRoaXMgcHJvZHVjZXIpLCBpbiB3aGljaCBjYXNlIHRoZSBkZXBlbmRlbmN5IG9uCisgICAgICB0aGUgc3dpdGNoYm9hcmQgY2FuIGJlIHJlbW92ZWQgaW4gZmF2b3VyIG9mIGFuIGFwcHJvcHJpYXRlCisgICAgICB2ZXJzaW9uZWQgQnJlYWtzIChwcm9iYWJseSwgaWRlbnRpY2FsIHRvIHRoYXQgaW4gdGhlIG5ldworICAgICAgc3dpdGNoYm9hcmQpLgorIDYuIEFmdGVyIGFsbCB0aGUgcHJvZHVjZXJzIGhhdmUgYmVlbiB1cGRhdGVkLCB0aGUgY3J1ZnQgaW4gdGhlCisgICAgY29uc3VtZXJzIGNhbiBnbyBhd2F5OgorICAgICogUmVtb3ZlIHRoZSBjYWxscyB0byB0aGUgc3dpdGNoYm9hcmQncyByZWdpc3RyYXRpb24gc3lzdGVtLgorICAgICogVmVyc2lvbmVkIEJyZWFrcyBhZ2FpbnN0IG9sZCBzd2l0Y2hib2FyZHMsIG9yIHZlcnNpb25lZCBEZXBlbmRzCisgICAgICBvbiBuZXcgc3dpdGNoYm9hcmRzLCBkZXBlbmRpbmcgb24gd2hldGhlciB0aGUgc3dpdGNoYm9hcmQgaXMKKyAgICAgIHN0aWxsIG5lZWRlZCBmb3Igb3RoZXIgY29tbW9uIGZ1bmN0aW9uYWxpdHkuCisgNy4gQWZ0ZXIgYWxsIG9mIHRoZSBwcm9kdWNlcnMgYW5kIGNvbnN1bWVycyBoYXZlIGJlZW4gdXBkYXRlZCwgdGhlCisgICAgY3J1ZnQgaW4gdGhlIHN3aXRjaGJvYXJkIGNhbiBnbyBhd2F5OgorICAgICogUmVtb3ZlIHRoZSBzd2l0Y2hib2FyZCdzIHJlZ2lzdHJhdGlvbiBzeXN0ZW0gKGJ1dCBub3Qgb2J2aW91c2x5CisgICAgICB0aGUgY29tbW9uIGZ1bmN0aW9uYWxpdHkgZnJvbSBzdGVwIDMsIGRpc2N1c3NlZCBhYm92ZSkuCisgICAgKiBWZXJzaW9uZWQgQnJlYWtzIGFnYWluc3QgcHJlLXN0ZXAtNiBjb25zdW1lcnMgYW5kIHByZS1zdGVwLTUKKyAgICAgIHByb2R1Y2Vycy4KKworCitESVNDVVNTSU9OCis9PT09PT09PT09CisKK1RoZSBhY3RpdmF0aW9uIG9mIGEgdHJpZ2dlciBkb2VzIG5vdCByZWNvcmQgZGV0YWlscyBvZiB0aGUgYWN0aXZhdGluZworZXZlbnQuICBGb3IgZXhhbXBsZSwgZmlsZSB0cmlnZ2VycyBkbyBub3QgaW5mb3JtIHRoZSBwYWNrYWdlIG9mIHRoZQorZmlsZW5hbWUuICBJbiB0aGUgZnV0dXJlIHRoaXMgbWlnaHQgYmUgYWRkZWQgYXMgYW4gYWRkaXRpb25hbCBmZWF0dXJlLAorYnV0IHRoZXJlIGFyZSBzb21lIHByb2JsZW1zIHdpdGggdGhpcy4KKworCitCcm9rZW4gcHJvZHVjZXIgcGFja2FnZXMsIGFuZCBlcnJvciByZXBvcnRpbmcKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCitPZnRlbiB0cmlnZ2VyIHByb2Nlc3Npbmcgd2lsbCBpbnZvbHZlIGEgY2VudHJhbCBwYWNrYWdlIHJlZ2lzdGVyaW5nLAorY29tcGlsaW5nIG9yIGdlbmVyYWxseSBwYXJzaW5nIHNvbWUgZGF0YSBwcm92aWRlZCBieSBhIGxlYWYgcGFja2FnZS4KKworSWYgdGhlIGNlbnRyYWwgcGFja2FnZSBmaW5kcyBwcm9ibGVtcyB3aXRoIHRoZSBsZWFmIHBhY2thZ2UgZGF0YSBpdCBpcwordXN1YWxseSBtb3JlIGNvcnJlY3QgZm9yIG9ubHkgdGhlIGluZGl2aWR1YWwgbGVhZiBwYWNrYWdlIHRvIGJlCityZWNvcmRlZCBhcyBub3QgcHJvcGVybHkgaW5zdGFsbGVkLiAgVGhlcmUgaXMgbm90IGN1cnJlbnRseSBhbnkgd2F5IHRvCitkbyB0aGlzIGFuZCB0aGVyZSBhcmUgbm8gcGxhbnMgdG8gcHJvdmlkZSBvbmUuCisKK1RoZSBuYWl2ZSBhcHByb2FjaCBvZiBnaXZpbmcgdGhlIHBvc3RpbnN0IGEgbGlzdCBvZiB0aGUgdHJpZ2dlcmluZworcGFja2FnZXMgZG9lcyBub3Qgd29yayBiZWNhdXNlIHRoaXMgaW5mb3JtYXRpb24gaXMgbm90IHJlY29yZGVkIGluIHRoZQorcmlnaHQgd2F5IChpdCBtaWdodCBzdWZmZXIgZnJvbSBsYWN1bmFlKTsgZW5oYW5jaW5nIHRoZSBib29ra2VlcGluZworZm9yIHRoaXMgdG8gd29yayB3b3VsZCBiZSBwb3NzaWJsZSBidXQgaXQgaXMgZmFyIGJldHRlciBzaW1wbHkgdG8gbWFrZQordGhlIHN5c3RlbSBtb3JlIGlkZW1wb3RlbnQuICBTZWUgYWJvdmUgZm9yIHRoZSByZWNvbW1lbmRlZCBhcHByb2FjaC4KKworCisKKworSU5URVJOQUxTCis9PT09PT09PT0KKworT24tZGlzayBzdGF0ZQorLS0tLS0tLS0tLS0tLQorCitBIHNpbmdsZSBmaWxlIC92YXIvbGliL2Rwa2cvdHJpZ2dlcnMvRmlsZSBsaXN0cyBhbGwgb2YgdGhlIGZpbGVuYW1lCit0cmlnZ2VyIGludGVyZXN0cyBpbiB0aGUgZm9ybQorICAgL3BhdGgvdG8vZGlyZWN0b3J5L29yL2ZpbGUgcGFja2FnZQorCitGb3IgZWFjaCBleHBsaWNpdCB0cmlnZ2VyIGluIHdoaWNoIGFueSBwYWNrYWdlIGlzIGludGVyZXN0ZWQsCithIGZpbGUgL3Zhci9saWIvZHBrZy90cmlnZ2Vycy88bmFtZS1vZi10cmlnZ2VyPiBpcyBhIGxpc3Qgb2YKK3RoZSBpbnRlcmVzdGVkIHBhY2thZ2VzLCBvbmUgcGVyIGxpbmUuCisKK1RoZXNlIGludGVyZXN0IGZpbGVzIGFyZSBub3QgdXBkYXRlZCB0byByZW1vdmUgYSBwYWNrYWdlIGp1c3QgYmVjYXVzZQorYSBzdGF0ZSBjaGFuZ2UgY2F1c2VzIGl0IG5vdCB0byBiZSBpbnRlcmVzdGVkIGluIGFueSB0cmlnZ2VycyBhbnkgbW9yZQorLSB0aGV5IGFyZSB1cGRhdGVkIHdoZW4gd2UgcmVtb3ZlIG9yIHVucGFjay4KKworRm9yIGVhY2ggcGFja2FnZSB3aGljaCBoYXMgcGVuZGluZyB0cmlnZ2VycywgdGhlIHN0YXR1cyBmaWxlIGNvbnRhaW5zCithIFRyaWdnZXJzLVBlbmRpbmcgZmllbGQgd2hpY2ggY29udGFpbnMgdGhlIHNwYWNlLXNlcGFyYXRlZCBuYW1lcyBvZgordGhlIHBlbmRpbmcgdHJpZ2dlcnMuICBGb3IgZWFjaCBwYWNrYWdlIHdoaWNoIGF3YWl0cyB0cmlnZ2VycyB0aGUKK3N0YXR1cyBmaWxlIGNvbnRhaW5zIGEgVHJpZ2dlcnMtQXdhaXRlZCBmaWVsZCB3aGljaCBjb250YWlucyB0aGUKKypwYWNrYWdlKiBuYW1lcyBvZiB0aGUgcGFja2FnZXMgd2hvc2UgdHJpZ2dlciBwcm9jZXNzaW5nIGlzIGF3YWl0ZWQuCitTZWUgYERldGFpbHMgLSBPdmVydmlldyB0YWJsZScgYWJvdmUgZm9yIHRoZSBpbnZhcmlhbnRzIHdoaWNoIHJlbGF0ZQorVHJpZ2dlcnMtUGVuZGluZywgVHJpZ2dlcnMtQXdhaXRlZCwgYW5kIFN0YXR1cy4KKworRHVyaW5nIGRwa2cncyBleGVjdXRpb24sIC92YXIvbGliL2Rwa2cvdHJpZ2dlcnMvVW5pbmNvcnAgaXMgYSBsaXN0IG9mCit0aGUgdHJpZ2dlcnMgd2hpY2ggaGF2ZSBiZWVuIHJlcXVlc3RlZCBieSBkcGtnLXRyaWdnZXIgYnV0IG5vdCB5ZXQKK2luY29ycG9yYXRlZCBpbiB0aGUgc3RhdHVzIGZpbGUuICBFYWNoIGxpbmUgaXMgYSB0cmlnZ2VyIG5hbWUgZm9sbG93ZWQKK2J5IG9uZSBvciBtb3JlIHRyaWdnZXJpbmcgcGFja2FnZSBuYW1lcy4gIFRoZSB0cmlnZ2VyaW5nIHBhY2thZ2UgbmFtZQorIi0iIGlzIHVzZWQgdG8gaW5kaWNhdGUgb25lIG9yIG1vcmUgcGFja2FnZShzKSB3aGljaCBkaWQgbm90IG5lZWQgdG8KK2F3YWl0IHRoZSB0cmlnZ2VyLgorCisvdmFyL2xpYi9kcGtnL3RyaWdnZXJzL0xvY2sgaXMgdGhlIGZjbnRsIGxvY2tmaWxlIGZvciB0aGUgdHJpZ2dlcgorc3lzdGVtLiAgUHJvY2Vzc2VzIGhhbmcgb250byB0aGlzIGxvY2sgb25seSBicmllZmx5OiBkcGtnLXRyaWdnZXIKK3RvIGFkZCBuZXcgYWN0aXZhdGlvbnMsIG9yIGRwa2cgdG8gaW5jb3Jwb3JhdGUgYWN0aXZhdGlvbnMgKGFuZAorcGVyaGFwcyB3aGVuIGl0IHVwZGF0ZXMgaW50ZXJlc3RzKS4gIFRoZXJlZm9yZSB0aGlzIGxvY2sgaXMgYWx3YXlzCithY3F1aXJlZCB3aXRoIEZfR0VUTEtXIHNvIGFzIHRvIHNlcmlhbGlzZSByYXRoZXIgdGhhbiBmYWlsIG9uCitjb250ZW50aW9uLgorCisKK1Byb2Nlc3NpbmcKKy0tLS0tLS0tLS0KKworZHBrZy10cmlnZ2VyIHVwZGF0ZXMgdHJpZ2dlcnMvVW5pbmNvcnAsIGFuZCBkb2VzIG5vdCByZWFkIG9yIHdyaXRlIHRoZQorc3RhdHVzIGZpbGUgb3IgdGFrZSBvdXQgdGhlIGRwa2cgc3RhdHVzIGxvY2suICBkcGtnIChhbmQgZHBrZy1xdWVyeSkKK3JlYWRzIHRyaWdnZXJzL1VuaW5jb3JwIGFmdGVyIHJlYWRpbmcgL3Zhci9saWIvZHBrZy9zdGF0dXMsIGFuZCBhZnRlcgorcnVubmluZyBhIG1haW50YWluZXIgc2NyaXB0LiAgSWYgdGhlIHN0YXR1cyBkYXRhYmFzZSBpcyBvcGVuZWQgZm9yCit3cml0aW5nIHRoZW4gdGhlIGRhdGEgZnJvbSBVbmluY29ycCBpcyBtb3ZlZCB0byB1cGRhdGVzIGFzCitUcmlnZ2Vycy1QZW5kaW5nIGFuZCBUcmlnZ2Vycy1Bd2FpdGVkIGVudHJpZXMgYW5kIGNvcnJlc3BvbmRpbmcgU3RhdHVzCitjaGFuZ2VzLgorCitUaGlzIG1lYW5zIHRoYXQgZHBrZyBpcyBndWFyYW50ZWVkIHRvIHJlaW5jb3Jwb3JhdGUgcGVuZGluZyB0cmlnZ2VyCitpbmZvcm1hdGlvbiBpbnRvIHRoZSBzdGF0dXMgZmlsZSBvbmx5IDEuIHdoZW4gYSBtYWludGFpbmVyIHNjcmlwdCBoYXMKK2ZpbmlzaGVkLCBvciAyLiB3aGVuIGRwa2cgc3RhcnRzIHVwIHdpdGggYSB2aWV3IHRvIHBlcmZvcm1pbmcgc29tZQorb3BlcmF0aW9uLgorCitXaGVuIGEgcGFja2FnZSBpcyB1bnBhY2tlZCBvciByZW1vdmVkLCBpdHMgdHJpZ2dlcnMgY29udHJvbCBmaWxlIHdpbGwKK2JlIHBhcnNlZCBhbmQgL3Zhci9saWIvZHBrZy90cmlnZ2Vycy8qIHVwZGF0ZWQgYWNjb3JkaW5nbHkuCisKK1RyaWdnZXJzIGFyZSBydW4gYXMgcGFydCBvZiBjb25maWd1cmF0aW9uLiAgZHBrZyB3aWxsIHRyeSB0byBmaXJzdAorY29uZmlndXJlIGFsbCBwYWNrYWdlcyB3aGljaCBkbyBub3QgZGVwZW5kIG9uIHBhY2thZ2VzIHdoaWNoIGFyZQorYXdhaXRpbmcgdHJpZ2dlcnMsIGFuZCB0aGVuIHJ1biB0cmlnZ2VycyBvbmUgcGFja2FnZSBhdCBhIHRpbWUgaW4gdGhlCitob3BlIG9mIG1ha2luZyB1c2VmdWwgcHJvZ3Jlc3MuICAoVGhpcyB3aWxsIGludm9sdmUgYSBuZXcgYGRlcGVuZHRyeScKK2xldmVsIGluIGNvbmZpZ3VyZS5jJ3MgYWxnb3JpdGhtLikgIFRoZSBvbmx5IGNvbnN0cmFpbnQgb24gdGhlCitvcmRlcmluZyBvZiBwb3N0aW5zdHMgaXMgb25seSB0aGUgbm9ybWFsIERlcGVuZHMgY29uc3RyYWludCwgc28gdGhlCit1c3VhbCBEZXBlbmRzIGN5Y2xlIGJyZWFraW5nIHdpbGwgZnVuY3Rpb24gcHJvcGVybHkuICBTZWUgYEN5Y2xlCitkZXRlY3Rpb24nIGJlbG93IHJlZ2FyZGluZyBjeWNsZXMgaW4gdGhlIGBBIHRyaWdnZXJzIEInIHJlbGF0aW9uLgorCisKK1Byb2Nlc3NpbmcgLSBUcmFuc2l0aW9uYWwKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworVGhlIGNhc2Ugd2hlcmUgYSB0cmlnZ2Vycy1zdXBwb3J0aW5nIGRwa2cgaXMgcnVuIGZvciB0aGUgZmlyc3QgdGltZSBpcworZGV0ZWN0ZWQgYnkgdGhlIGFic2VuY2Ugb2YgL3Zhci9saWIvZHBrZy90cmlnZ2Vycy9VbmluY29ycC4gIFdoZW4gdGhlCit0cmlnZ2Vycy1zdXBwb3J0aW5nIGRwa2cgc3RhcnRzIHVwIHdpdGhvdXQgdGhpcyBpdCB3aWxsIHNldCBlYWNoCitwYWNrYWdlJ3MgbGlzdCBvZiBwZW5kaW5nIHRyaWdnZXJzIGVxdWFsIHRvIGl0cyBpbnRlcmVzdHMgKG9idmlvdXNseQorb25seSBmb3IgcGFja2FnZXMgd2hpY2ggYXJlIGluIGBpbnN0YWxsZWQnIG9yIGB0cmlnZ2Vycy1wZW5kaW5nJykuCitUaGlzIG1heSByZXN1bHQgaW4gYSBwYWNrYWdlIGdvaW5nIGZyb20gYGluc3RhbGxlZCcgdG8KK2B0cmlnZ2Vycy1wZW5kaW5nJyBidXQgaXQgd2lsbCBub3QgY3JlYXRlIHRoZSBkaXJlY3RvcnkgYXQgdGhpcyB0aW1lLgorUGFja2FnZXMgbWFya2VkIGFzIHRyaWdnZXJzLXBlbmRpbmcgaW4gdGhpcyB3YXkgd2lsbCBub3QgYmUgc2NoZWR1bGVkCitmb3IgdHJpZ2dlciBwcm9jZXNzaW5nIGluIHRoaXMgZHBrZyBydW4uCisKK2Rwa2cgd2lsbCBhbHNvIGF0IHRoaXMgdGltZSBjcmVhdGUgL3Zhci9saWIvZHBrZy90cmlnZ2VycyBpZgorbmVjZXNzYXJ5LCB0cmlnZ2Vycy9GaWxlLCB0cmlnZ2Vycy9VbmluY29ycCwgYW5kIHRoZSBwZXItdHJpZ2dlcgorcGFja2FnZSBsaXN0cyBpbiAvdmFyL2xpYi9kcGtnL3RyaWdnZXJzLzx0cmlnZ2VyLW5hbWU+LCBzbyB0aGF0IGZ1dHVyZQordHJpZ2dlciBhY3RpdmF0aW9ucyB3aWxsIGJlIHByb2Nlc3NlZCBwcm9wZXJseS4KKworT25seSBkcGtnIG1heSBjcmVhdGUgL3Zhci9saWIvZHBrZy90cmlnZ2VycyBhbmQgb25seSB3aGVuIGl0IGlzCitob2xkaW5nIHRoZSBvdmVyYWxsIGRwa2cgc3RhdHVzIGxvY2suCisKK2Rwa2cgYW5kL29yIGRwa2ctZGViIHdpbGwgYmUgbWFkZSB0byByZWplY3QgcGFja2FnZXMgY29udGFpbmluZworVHJpZ2dlcnMtUGVuZGluZyBhbmQgVHJpZ2dlcnMtQXdhaXRlZCBjb250cm9sIGZpbGUgZmllbGRzLCB0byBwcmV2ZW50CithY2NpZGVudHMuCisKKworQ3ljbGUgZGV0ZWN0aW9uCistLS0tLS0tLS0tLS0tLS0KKworSW4gYWRkaXRpb24gdG8gZGVwZW5kZW5jeSBjeWNsZXMsIHRyaWdnZXJzIHJhaXNlIHRoZSBwb3NzaWJpbGl0eSBvZgorbXV0dWFsbHkgdHJpZ2dlcmluZyBwYWNrYWdlcyAtIGEgY3ljbGUgZGV0ZWN0YWJsZSBvbmx5IGR5bmFtaWNhbGx5LAord2hpY2ggd2Ugd2lsbCBjYWxsIGEgYHRyaWdnZXIgY3ljbGUnLgorCitUcmlnZ2VyIGN5Y2xlcyBhcmUgZGV0ZWN0ZWQgdXNpbmcgdGhlIHVzdWFsIGhhcmUtYW5kLXRvcnRvaXNlCithcHByb2FjaC4gIEVhY2ggdGltZSBhZnRlciBkcGtnIHJ1bnMgYSBwb3N0aW5zdCBmb3IgdHJpZ2dlcnMsIGRwa2cKK3JlY29yZHMgdGhlIHNldCBvZiBwZW5kaW5nIHRyaWdnZXJzIChpZSwgdGhlIHNldCBvZiBhY3RpdmF0ZWQgPHBlbmRpbmcKK3BhY2thZ2UsIHRyaWdnZXIgbmFtZT4gdHVwbGVzKS4gIElmIHRoZSBoYXJlIHNldCBpcyBhIHN1cGVyc2V0IG9mIHRoZQordG9ydG9pc2Ugc2V0LCBhIGN5Y2xlIGhhcyBiZWVuIGZvdW5kLgorCitGb3IgZ3VhcmFudGVlZCB0ZXJtaW5hdGlvbiwgaXQgd291bGQgYmUgc3VmZmljaWVudCB0byBkZWNsYXJlIGEgY3ljbGUKK29ubHkgd2hlbiB0aGUgdHdvIHNldHMgYXJlIGlkZW50aWNhbCwgYnV0IGJlY2F1c2Ugb2YgdGhlIHJlcXVpcmVtZW50Cit0byBtYWtlIHByb2dyZXNzIHdlIGNhbiBjdXQgdGhpcyBzaG9ydC4gIEZvcm1hbGx5LCB0aGVyZSBpcyBzdXBwb3NlZAordG8gYmUgYSBjb21wbGV0ZSBvcmRlcmluZyBvZiBwZW5kaW5nIHRyaWdnZXIgc2V0cyBzYXRpc2Z5aW5nIHRoZQorY29uZGl0aW9uIHRoYXQgYW55IHNldCBvZiBwZW5kaW5nIHRyaWdnZXJzIGlzIChzdHJpY3RseSkgZ3JlYXRlciB0aGFuCithbGwgaXRzIChzdHJpY3QpIHN1YnNldHMuICBUcmlnZ2VyIHByb2Nlc3NpbmcgaXMgc3VwcG9zZWQgdG8KK21vbm90b25pY2FsbHkgZGVjcmVhc2UgdGhlIHNldCBpbiB0aGlzIG9yZGVyaW5nLiAgKFRoZSBzZXQgZWxlbWVudHMKK2FyZSA8cGFja2FnZSwgdHJpZ2dlciBuYW1lPiB0dXBsZXMuKQorCisoU2VlIGBQcm9jZXNzaW5nJyBhYm92ZSBmb3IgZGlzY3Vzc2lvbiBvZiBkZXBlbmRlbmN5IGN5Y2xlcy4pCisKKy0tCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2Rwa2ctZGViL01ha2VmaWxlLmFtIGIvZHBrZy0xLjE2LjEuMS9kcGtnLWRlYi9NYWtlZmlsZS5hbQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42ZjExOGNmCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kcGtnLWRlYi9NYWtlZmlsZS5hbQpAQCAtMCwwICsxLDI1IEBACisjIyBQcm9jZXNzIHRoaXMgZmlsZSB3aXRoIGF1dG9tYWtlIHRvIHByb2R1Y2UgTWFrZWZpbGUuaW4KKworbG9jYWxlZGlyID0gJChkYXRhZGlyKS9sb2NhbGUKK0FNX0NQUEZMQUdTID0gXAorCS1ETE9DQUxFRElSPVwiJChsb2NhbGVkaXIpXCIgXAorCS1pZGlyYWZ0ZXIgJCh0b3Bfc3JjZGlyKS9saWIvY29tcGF0IFwKKwktSSQodG9wX2J1aWxkZGlyKSBcCisJLUkkKHRvcF9zcmNkaXIpL2xpYgorCisKK2Jpbl9QUk9HUkFNUyA9IGRwa2ctZGViCisKK2Rwa2dfZGViX1NPVVJDRVMgPSBcCisJZHBrZy1kZWIuaCBcCisJYnVpbGQuYyBcCisJZXh0cmFjdC5jIFwKKwlpbmZvLmMgXAorCW1haW4uYworCitkcGtnX2RlYl9MREFERCA9IFwKKwkuLi9saWIvZHBrZy9saWJkcGtnLmEgXAorCS4uL2xpYi9jb21wYXQvbGliY29tcGF0LmEgXAorCSQoTElCSU5UTCkgXAorCSQoWkxJQl9MSUJTKSBcCisJJChCWjJfTElCUykKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZHBrZy1kZWIvTWFrZWZpbGUuaW4gYi9kcGtnLTEuMTYuMS4xL2Rwa2ctZGViL01ha2VmaWxlLmluCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmE0NzhkMDEKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2Rwa2ctZGViL01ha2VmaWxlLmluCkBAIC0wLDAgKzEsNTYwIEBACisjIE1ha2VmaWxlLmluIGdlbmVyYXRlZCBieSBhdXRvbWFrZSAxLjExLjEgZnJvbSBNYWtlZmlsZS5hbS4KKyMgQGNvbmZpZ3VyZV9pbnB1dEAKKworIyBDb3B5cmlnaHQgKEMpIDE5OTQsIDE5OTUsIDE5OTYsIDE5OTcsIDE5OTgsIDE5OTksIDIwMDAsIDIwMDEsIDIwMDIsCisjIDIwMDMsIDIwMDQsIDIwMDUsIDIwMDYsIDIwMDcsIDIwMDgsIDIwMDkgIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwKKyMgSW5jLgorIyBUaGlzIE1ha2VmaWxlLmluIGlzIGZyZWUgc29mdHdhcmU7IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24KKyMgZ2l2ZXMgdW5saW1pdGVkIHBlcm1pc3Npb24gdG8gY29weSBhbmQvb3IgZGlzdHJpYnV0ZSBpdCwKKyMgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbnMsIGFzIGxvbmcgYXMgdGhpcyBub3RpY2UgaXMgcHJlc2VydmVkLgorCisjIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFksIHRvIHRoZSBleHRlbnQgcGVybWl0dGVkIGJ5IGxhdzsgd2l0aG91dAorIyBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBCisjIFBBUlRJQ1VMQVIgUFVSUE9TRS4KKworQFNFVF9NQUtFQAorCitWUEFUSCA9IEBzcmNkaXJACitwa2dkYXRhZGlyID0gJChkYXRhZGlyKS9AUEFDS0FHRUAKK3BrZ2luY2x1ZGVkaXIgPSAkKGluY2x1ZGVkaXIpL0BQQUNLQUdFQAorcGtnbGliZGlyID0gJChsaWJkaXIpL0BQQUNLQUdFQAorcGtnbGliZXhlY2RpciA9ICQobGliZXhlY2RpcikvQFBBQ0tBR0VACithbV9fY2QgPSBDRFBBVEg9IiQke1pTSF9WRVJTSU9OKy59JChQQVRIX1NFUEFSQVRPUikiICYmIGNkCitpbnN0YWxsX3NoX0RBVEEgPSAkKGluc3RhbGxfc2gpIC1jIC1tIDY0NAoraW5zdGFsbF9zaF9QUk9HUkFNID0gJChpbnN0YWxsX3NoKSAtYworaW5zdGFsbF9zaF9TQ1JJUFQgPSAkKGluc3RhbGxfc2gpIC1jCitJTlNUQUxMX0hFQURFUiA9ICQoSU5TVEFMTF9EQVRBKQordHJhbnNmb3JtID0gJChwcm9ncmFtX3RyYW5zZm9ybV9uYW1lKQorTk9STUFMX0lOU1RBTEwgPSA6CitQUkVfSU5TVEFMTCA9IDoKK1BPU1RfSU5TVEFMTCA9IDoKK05PUk1BTF9VTklOU1RBTEwgPSA6CitQUkVfVU5JTlNUQUxMID0gOgorUE9TVF9VTklOU1RBTEwgPSA6CitidWlsZF90cmlwbGV0ID0gQGJ1aWxkQAoraG9zdF90cmlwbGV0ID0gQGhvc3RACitiaW5fUFJPR1JBTVMgPSBkcGtnLWRlYiQoRVhFRVhUKQorc3ViZGlyID0gZHBrZy1kZWIKK0RJU1RfQ09NTU9OID0gJChzcmNkaXIpL01ha2VmaWxlLmFtICQoc3JjZGlyKS9NYWtlZmlsZS5pbgorQUNMT0NBTF9NNCA9ICQodG9wX3NyY2RpcikvYWNsb2NhbC5tNAorYW1fX2FjbG9jYWxfbTRfZGVwcyA9ICQodG9wX3NyY2RpcikvbTQvZHBrZy1hcmNoLm00IFwKKwkkKHRvcF9zcmNkaXIpL200L2Rwa2ctYnVpbGQubTQgXAorCSQodG9wX3NyY2RpcikvbTQvZHBrZy1jb21waWxlci5tNCBcCisJJCh0b3Bfc3JjZGlyKS9tNC9kcGtnLWNvdmVyYWdlLm00IFwKKwkkKHRvcF9zcmNkaXIpL200L2Rwa2ctZnVuY3MubTQgJCh0b3Bfc3JjZGlyKS9tNC9kcGtnLWxpYnMubTQgXAorCSQodG9wX3NyY2RpcikvbTQvZHBrZy1saW5rZXIubTQgJCh0b3Bfc3JjZGlyKS9tNC9kcGtnLXByb2dzLm00IFwKKwkkKHRvcF9zcmNkaXIpL200L2Rwa2ctdHlwZXMubTQgXAorCSQodG9wX3NyY2RpcikvbTQvZHBrZy11bmljb2RlLm00ICQodG9wX3NyY2RpcikvbTQvZ2V0dGV4dC5tNCBcCisJJCh0b3Bfc3JjZGlyKS9tNC9pY29udi5tNCAkKHRvcF9zcmNkaXIpL200L2ludGxtYWNvc3gubTQgXAorCSQodG9wX3NyY2RpcikvbTQvbGliLWxkLm00ICQodG9wX3NyY2RpcikvbTQvbGliLWxpbmsubTQgXAorCSQodG9wX3NyY2RpcikvbTQvbGliLXByZWZpeC5tNCAkKHRvcF9zcmNkaXIpL200L25scy5tNCBcCisJJCh0b3Bfc3JjZGlyKS9tNC9wby5tNCAkKHRvcF9zcmNkaXIpL200L3Byb2d0ZXN0Lm00IFwKKwkkKHRvcF9zcmNkaXIpL2NvbmZpZ3VyZS5hYworYW1fX2NvbmZpZ3VyZV9kZXBzID0gJChhbV9fYWNsb2NhbF9tNF9kZXBzKSAkKENPTkZJR1VSRV9ERVBFTkRFTkNJRVMpIFwKKwkkKEFDTE9DQUxfTTQpCitta2luc3RhbGxkaXJzID0gJChpbnN0YWxsX3NoKSAtZAorQ09ORklHX0hFQURFUiA9ICQodG9wX2J1aWxkZGlyKS9jb25maWcuaAorQ09ORklHX0NMRUFOX0ZJTEVTID0KK0NPTkZJR19DTEVBTl9WUEFUSF9GSUxFUyA9CithbV9faW5zdGFsbGRpcnMgPSAiJChERVNURElSKSQoYmluZGlyKSIKK1BST0dSQU1TID0gJChiaW5fUFJPR1JBTVMpCithbV9kcGtnX2RlYl9PQkpFQ1RTID0gYnVpbGQuJChPQkpFWFQpIGV4dHJhY3QuJChPQkpFWFQpIGluZm8uJChPQkpFWFQpIFwKKwltYWluLiQoT0JKRVhUKQorZHBrZ19kZWJfT0JKRUNUUyA9ICQoYW1fZHBrZ19kZWJfT0JKRUNUUykKK2FtX19ERVBFTkRFTkNJRVNfMSA9CitkcGtnX2RlYl9ERVBFTkRFTkNJRVMgPSAuLi9saWIvZHBrZy9saWJkcGtnLmEgXAorCS4uL2xpYi9jb21wYXQvbGliY29tcGF0LmEgJChhbV9fREVQRU5ERU5DSUVTXzEpIFwKKwkkKGFtX19ERVBFTkRFTkNJRVNfMSkgJChhbV9fREVQRU5ERU5DSUVTXzEpCitERUZBVUxUX0lOQ0xVREVTID0gCitkZXBjb21wID0gJChTSEVMTCkgJCh0b3Bfc3JjZGlyKS9idWlsZC1hdXgvZGVwY29tcAorYW1fX2RlcGZpbGVzX21heWJlID0gZGVwZmlsZXMKK2FtX19tdiA9IG12IC1mCitDT01QSUxFID0gJChDQykgJChERUZTKSAkKERFRkFVTFRfSU5DTFVERVMpICQoSU5DTFVERVMpICQoQU1fQ1BQRkxBR1MpIFwKKwkkKENQUEZMQUdTKSAkKEFNX0NGTEFHUykgJChDRkxBR1MpCitBTV9WX0NDID0gJChhbV9fdl9DQ18kKFYpKQorYW1fX3ZfQ0NfID0gJChhbV9fdl9DQ18kKEFNX0RFRkFVTFRfVkVSQk9TSVRZKSkKK2FtX192X0NDXzAgPSBAZWNobyAiICBDQyAgICAiICRAOworQU1fVl9hdCA9ICQoYW1fX3ZfYXRfJChWKSkKK2FtX192X2F0XyA9ICQoYW1fX3ZfYXRfJChBTV9ERUZBVUxUX1ZFUkJPU0lUWSkpCithbV9fdl9hdF8wID0gQAorQ0NMRCA9ICQoQ0MpCitMSU5LID0gJChDQ0xEKSAkKEFNX0NGTEFHUykgJChDRkxBR1MpICQoQU1fTERGTEFHUykgJChMREZMQUdTKSAtbyAkQAorQU1fVl9DQ0xEID0gJChhbV9fdl9DQ0xEXyQoVikpCithbV9fdl9DQ0xEXyA9ICQoYW1fX3ZfQ0NMRF8kKEFNX0RFRkFVTFRfVkVSQk9TSVRZKSkKK2FtX192X0NDTERfMCA9IEBlY2hvICIgIENDTEQgICIgJEA7CitBTV9WX0dFTiA9ICQoYW1fX3ZfR0VOXyQoVikpCithbV9fdl9HRU5fID0gJChhbV9fdl9HRU5fJChBTV9ERUZBVUxUX1ZFUkJPU0lUWSkpCithbV9fdl9HRU5fMCA9IEBlY2hvICIgIEdFTiAgICIgJEA7CitTT1VSQ0VTID0gJChkcGtnX2RlYl9TT1VSQ0VTKQorRElTVF9TT1VSQ0VTID0gJChkcGtnX2RlYl9TT1VSQ0VTKQorRVRBR1MgPSBldGFncworQ1RBR1MgPSBjdGFncworRElTVEZJTEVTID0gJChESVNUX0NPTU1PTikgJChESVNUX1NPVVJDRVMpICQoVEVYSU5GT1MpICQoRVhUUkFfRElTVCkKK0FDTE9DQUwgPSBAQUNMT0NBTEAKK0FNVEFSID0gQEFNVEFSQAorQU1fREVGQVVMVF9WRVJCT1NJVFkgPSBAQU1fREVGQVVMVF9WRVJCT1NJVFlACitBVVRPQ09ORiA9IEBBVVRPQ09ORkAKK0FVVE9IRUFERVIgPSBAQVVUT0hFQURFUkAKK0FVVE9NQUtFID0gQEFVVE9NQUtFQAorQVdLID0gQEFXS0AKK0JaMl9MSUJTID0gQEJaMl9MSUJTQAorQ0MgPSBAQ0NACitDQ0RFUE1PREUgPSBAQ0NERVBNT0RFQAorQ0ZMQUdTID0gQENGTEFHU0AKK0NQUCA9IEBDUFBACitDUFBGTEFHUyA9IEBDUFBGTEFHU0AKK0NVUlNFU19MSUJTID0gQENVUlNFU19MSUJTQAorQ1hYID0gQENYWEAKK0NYWERFUE1PREUgPSBAQ1hYREVQTU9ERUAKK0NYWEZMQUdTID0gQENYWEZMQUdTQAorQ1lHUEFUSF9XID0gQENZR1BBVEhfV0AKK0RFRlMgPSBAREVGU0AKK0RFUERJUiA9IEBERVBESVJACitET1hZR0VOID0gQERPWFlHRU5ACitFQ0hPX0MgPSBARUNIT19DQAorRUNIT19OID0gQEVDSE9fTkAKK0VDSE9fVCA9IEBFQ0hPX1RACitFR1JFUCA9IEBFR1JFUEAKK0VYRUVYVCA9IEBFWEVFWFRACitHQ09WID0gQEdDT1ZACitHRVRURVhUX01BQ1JPX1ZFUlNJT04gPSBAR0VUVEVYVF9NQUNST19WRVJTSU9OQAorR01TR0ZNVCA9IEBHTVNHRk1UQAorR01TR0ZNVF8wMTUgPSBAR01TR0ZNVF8wMTVACitHUkVQID0gQEdSRVBACitIQVZFX0RPVCA9IEBIQVZFX0RPVEAKK0lOU1RBTEwgPSBASU5TVEFMTEAKK0lOU1RBTExfREFUQSA9IEBJTlNUQUxMX0RBVEFACitJTlNUQUxMX1BST0dSQU0gPSBASU5TVEFMTF9QUk9HUkFNQAorSU5TVEFMTF9TQ1JJUFQgPSBASU5TVEFMTF9TQ1JJUFRACitJTlNUQUxMX1NUUklQX1BST0dSQU0gPSBASU5TVEFMTF9TVFJJUF9QUk9HUkFNQAorSU5UTExJQlMgPSBASU5UTExJQlNACitJTlRMX01BQ09TWF9MSUJTID0gQElOVExfTUFDT1NYX0xJQlNACitMQ09WID0gQExDT1ZACitMQ09WX0dFTkhUTUwgPSBATENPVl9HRU5IVE1MQAorTERGTEFHUyA9IEBMREZMQUdTQAorTEVYID0gQExFWEAKK0xFWExJQiA9IEBMRVhMSUJACitMRVhfT1VUUFVUX1JPT1QgPSBATEVYX09VVFBVVF9ST09UQAorTElCSUNPTlYgPSBATElCSUNPTlZACitMSUJJTlRMID0gQExJQklOVExACitMSUJPQkpTID0gQExJQk9CSlNACitMSUJTID0gQExJQlNACitMVExJQklDT05WID0gQExUTElCSUNPTlZACitMVExJQklOVEwgPSBATFRMSUJJTlRMQAorTFRMSUJPQkpTID0gQExUTElCT0JKU0AKK01BS0VJTkZPID0gQE1BS0VJTkZPQAorTUtESVJfUCA9IEBNS0RJUl9QQAorTVNHRk1UID0gQE1TR0ZNVEAKK01TR0ZNVF8wMTUgPSBATVNHRk1UXzAxNUAKK01TR01FUkdFID0gQE1TR01FUkdFQAorT0JKRVhUID0gQE9CSkVYVEAKK1BBQ0tBR0UgPSBAUEFDS0FHRUAKK1BBQ0tBR0VfQlVHUkVQT1JUID0gQFBBQ0tBR0VfQlVHUkVQT1JUQAorUEFDS0FHRV9OQU1FID0gQFBBQ0tBR0VfTkFNRUAKK1BBQ0tBR0VfU1RSSU5HID0gQFBBQ0tBR0VfU1RSSU5HQAorUEFDS0FHRV9UQVJOQU1FID0gQFBBQ0tBR0VfVEFSTkFNRUAKK1BBQ0tBR0VfVVJMID0gQFBBQ0tBR0VfVVJMQAorUEFDS0FHRV9WRVJTSU9OID0gQFBBQ0tBR0VfVkVSU0lPTkAKK1BBVEhfU0VQQVJBVE9SID0gQFBBVEhfU0VQQVJBVE9SQAorUEVSTCA9IEBQRVJMQAorUEVSTF9DT1ZFUiA9IEBQRVJMX0NPVkVSQAorUEVSTF9DT1ZFUkFHRSA9IEBQRVJMX0NPVkVSQUdFQAorUEVSTF9MSUJESVIgPSBAUEVSTF9MSUJESVJACitQS0dfQ09ORklHID0gQFBLR19DT05GSUdACitQS0dfQ09ORklHX0xJQkRJUiA9IEBQS0dfQ09ORklHX0xJQkRJUkAKK1BLR19DT05GSUdfUEFUSCA9IEBQS0dfQ09ORklHX1BBVEhACitQTzRBID0gQFBPNEFACitQT0QyTUFOID0gQFBPRDJNQU5ACitQT1NVQiA9IEBQT1NVQkAKK1JBTkxJQiA9IEBSQU5MSUJACitTRUxJTlVYX0xJQlMgPSBAU0VMSU5VWF9MSUJTQAorU0VUX01BS0UgPSBAU0VUX01BS0VACitTSEVMTCA9IEBTSEVMTEAKK1NTRF9MSUJTID0gQFNTRF9MSUJTQAorU1RSSVAgPSBAU1RSSVBACitVU0VfTkxTID0gQFVTRV9OTFNACitVU0VfUE80QSA9IEBVU0VfUE80QUAKK1VTRV9VTklDT0RFID0gQFVTRV9VTklDT0RFQAorVkVSU0lPTiA9IEBWRVJTSU9OQAorWEdFVFRFWFQgPSBAWEdFVFRFWFRACitYR0VUVEVYVF8wMTUgPSBAWEdFVFRFWFRfMDE1QAorWEdFVFRFWFRfRVhUUkFfT1BUSU9OUyA9IEBYR0VUVEVYVF9FWFRSQV9PUFRJT05TQAorWkxJQl9MSUJTID0gQFpMSUJfTElCU0AKK2Fic19idWlsZGRpciA9IEBhYnNfYnVpbGRkaXJACithYnNfc3JjZGlyID0gQGFic19zcmNkaXJACithYnNfdG9wX2J1aWxkZGlyID0gQGFic190b3BfYnVpbGRkaXJACithYnNfdG9wX3NyY2RpciA9IEBhYnNfdG9wX3NyY2RpckAKK2FjX2N0X0NDID0gQGFjX2N0X0NDQAorYWNfY3RfQ1hYID0gQGFjX2N0X0NYWEAKK2FkbWluZGlyID0gQGFkbWluZGlyQAorYW1fX2luY2x1ZGUgPSBAYW1fX2luY2x1ZGVACithbV9fbGVhZGluZ19kb3QgPSBAYW1fX2xlYWRpbmdfZG90QAorYW1fX3F1b3RlID0gQGFtX19xdW90ZUAKK2FtX190YXIgPSBAYW1fX3RhckAKK2FtX191bnRhciA9IEBhbV9fdW50YXJACitiaW5kaXIgPSBAYmluZGlyQAorYnVpbGQgPSBAYnVpbGRACitidWlsZF9hbGlhcyA9IEBidWlsZF9hbGlhc0AKK2J1aWxkX2NwdSA9IEBidWlsZF9jcHVACitidWlsZF9vcyA9IEBidWlsZF9vc0AKK2J1aWxkX3ZlbmRvciA9IEBidWlsZF92ZW5kb3JACitidWlsZGRpciA9IEBidWlsZGRpckAKK2RhdGFkaXIgPSBAZGF0YWRpckAKK2RhdGFyb290ZGlyID0gQGRhdGFyb290ZGlyQAorZG9jZGlyID0gQGRvY2RpckAKK2R2aWRpciA9IEBkdmlkaXJACitleGVjX3ByZWZpeCA9IEBleGVjX3ByZWZpeEAKK2hvc3QgPSBAaG9zdEAKK2hvc3RfYWxpYXMgPSBAaG9zdF9hbGlhc0AKK2hvc3RfY3B1ID0gQGhvc3RfY3B1QAoraG9zdF9vcyA9IEBob3N0X29zQAoraG9zdF92ZW5kb3IgPSBAaG9zdF92ZW5kb3JACitodG1sZGlyID0gQGh0bWxkaXJACitpbmNsdWRlZGlyID0gQGluY2x1ZGVkaXJACitpbmZvZGlyID0gQGluZm9kaXJACitpbnN0YWxsX3NoID0gQGluc3RhbGxfc2hACitsaWJkaXIgPSBAbGliZGlyQAorbGliZXhlY2RpciA9IEBsaWJleGVjZGlyQAorbG9jYWxlZGlyID0gJChkYXRhZGlyKS9sb2NhbGUKK2xvY2Fsc3RhdGVkaXIgPSBAbG9jYWxzdGF0ZWRpckAKK2xvZ2RpciA9IEBsb2dkaXJACittYW5kaXIgPSBAbWFuZGlyQAorbWtkaXJfcCA9IEBta2Rpcl9wQAorb2xkaW5jbHVkZWRpciA9IEBvbGRpbmNsdWRlZGlyQAorcGRmZGlyID0gQHBkZmRpckAKK3ByZWZpeCA9IEBwcmVmaXhACitwcm9ncmFtX3RyYW5zZm9ybV9uYW1lID0gQHByb2dyYW1fdHJhbnNmb3JtX25hbWVACitwc2RpciA9IEBwc2RpckAKK3NiaW5kaXIgPSBAc2JpbmRpckAKK3NoYXJlZHN0YXRlZGlyID0gQHNoYXJlZHN0YXRlZGlyQAorc3JjZGlyID0gQHNyY2RpckAKK3N5c2NvbmZkaXIgPSBAc3lzY29uZmRpckAKK3RhcmdldF9hbGlhcyA9IEB0YXJnZXRfYWxpYXNACit0b3BfYnVpbGRfcHJlZml4ID0gQHRvcF9idWlsZF9wcmVmaXhACit0b3BfYnVpbGRkaXIgPSBAdG9wX2J1aWxkZGlyQAordG9wX3NyY2RpciA9IEB0b3Bfc3JjZGlyQAorQU1fQ1BQRkxBR1MgPSBcCisJLURMT0NBTEVESVI9XCIkKGxvY2FsZWRpcilcIiBcCisJLWlkaXJhZnRlciAkKHRvcF9zcmNkaXIpL2xpYi9jb21wYXQgXAorCS1JJCh0b3BfYnVpbGRkaXIpIFwKKwktSSQodG9wX3NyY2RpcikvbGliCisKK2Rwa2dfZGViX1NPVVJDRVMgPSBcCisJZHBrZy1kZWIuaCBcCisJYnVpbGQuYyBcCisJZXh0cmFjdC5jIFwKKwlpbmZvLmMgXAorCW1haW4uYworCitkcGtnX2RlYl9MREFERCA9IFwKKwkuLi9saWIvZHBrZy9saWJkcGtnLmEgXAorCS4uL2xpYi9jb21wYXQvbGliY29tcGF0LmEgXAorCSQoTElCSU5UTCkgXAorCSQoWkxJQl9MSUJTKSBcCisJJChCWjJfTElCUykKKworYWxsOiBhbGwtYW0KKworLlNVRkZJWEVTOgorLlNVRkZJWEVTOiAuYyAubyAub2JqCiskKHNyY2RpcikvTWFrZWZpbGUuaW46ICAkKHNyY2RpcikvTWFrZWZpbGUuYW0gICQoYW1fX2NvbmZpZ3VyZV9kZXBzKQorCUBmb3IgZGVwIGluICQ/OyBkbyBcCisJICBjYXNlICckKGFtX19jb25maWd1cmVfZGVwcyknIGluIFwKKwkgICAgKiQkZGVwKikgXAorCSAgICAgICggY2QgJCh0b3BfYnVpbGRkaXIpICYmICQoTUFLRSkgJChBTV9NQUtFRkxBR1MpIGFtLS1yZWZyZXNoICkgXAorCSAgICAgICAgJiYgeyBpZiB0ZXN0IC1mICRAOyB0aGVuIGV4aXQgMDsgZWxzZSBicmVhazsgZmk7IH07IFwKKwkgICAgICBleGl0IDE7OyBcCisJICBlc2FjOyBcCisJZG9uZTsgXAorCWVjaG8gJyBjZCAkKHRvcF9zcmNkaXIpICYmICQoQVVUT01BS0UpIC0tZm9yZWlnbiBkcGtnLWRlYi9NYWtlZmlsZSc7IFwKKwkkKGFtX19jZCkgJCh0b3Bfc3JjZGlyKSAmJiBcCisJICAkKEFVVE9NQUtFKSAtLWZvcmVpZ24gZHBrZy1kZWIvTWFrZWZpbGUKKy5QUkVDSU9VUzogTWFrZWZpbGUKK01ha2VmaWxlOiAkKHNyY2RpcikvTWFrZWZpbGUuaW4gJCh0b3BfYnVpbGRkaXIpL2NvbmZpZy5zdGF0dXMKKwlAY2FzZSAnJD8nIGluIFwKKwkgICpjb25maWcuc3RhdHVzKikgXAorCSAgICBjZCAkKHRvcF9idWlsZGRpcikgJiYgJChNQUtFKSAkKEFNX01BS0VGTEFHUykgYW0tLXJlZnJlc2g7OyBcCisJICAqKSBcCisJICAgIGVjaG8gJyBjZCAkKHRvcF9idWlsZGRpcikgJiYgJChTSEVMTCkgLi9jb25maWcuc3RhdHVzICQoc3ViZGlyKS8kQCAkKGFtX19kZXBmaWxlc19tYXliZSknOyBcCisJICAgIGNkICQodG9wX2J1aWxkZGlyKSAmJiAkKFNIRUxMKSAuL2NvbmZpZy5zdGF0dXMgJChzdWJkaXIpLyRAICQoYW1fX2RlcGZpbGVzX21heWJlKTs7IFwKKwllc2FjOworCiskKHRvcF9idWlsZGRpcikvY29uZmlnLnN0YXR1czogJCh0b3Bfc3JjZGlyKS9jb25maWd1cmUgJChDT05GSUdfU1RBVFVTX0RFUEVOREVOQ0lFUykKKwljZCAkKHRvcF9idWlsZGRpcikgJiYgJChNQUtFKSAkKEFNX01BS0VGTEFHUykgYW0tLXJlZnJlc2gKKworJCh0b3Bfc3JjZGlyKS9jb25maWd1cmU6ICAkKGFtX19jb25maWd1cmVfZGVwcykKKwljZCAkKHRvcF9idWlsZGRpcikgJiYgJChNQUtFKSAkKEFNX01BS0VGTEFHUykgYW0tLXJlZnJlc2gKKyQoQUNMT0NBTF9NNCk6ICAkKGFtX19hY2xvY2FsX200X2RlcHMpCisJY2QgJCh0b3BfYnVpbGRkaXIpICYmICQoTUFLRSkgJChBTV9NQUtFRkxBR1MpIGFtLS1yZWZyZXNoCiskKGFtX19hY2xvY2FsX200X2RlcHMpOgoraW5zdGFsbC1iaW5QUk9HUkFNUzogJChiaW5fUFJPR1JBTVMpCisJQCQoTk9STUFMX0lOU1RBTEwpCisJdGVzdCAteiAiJChiaW5kaXIpIiB8fCAkKE1LRElSX1ApICIkKERFU1RESVIpJChiaW5kaXIpIgorCUBsaXN0PSckKGJpbl9QUk9HUkFNUyknOyB0ZXN0IC1uICIkKGJpbmRpcikiIHx8IGxpc3Q9OyBcCisJZm9yIHAgaW4gJCRsaXN0OyBkbyBlY2hvICIkJHAgJCRwIjsgZG9uZSB8IFwKKwlzZWQgJ3MvJChFWEVFWFQpJCQvLycgfCBcCisJd2hpbGUgcmVhZCBwIHAxOyBkbyBpZiB0ZXN0IC1mICQkcDsgXAorCSAgdGhlbiBlY2hvICIkJHAiOyBlY2hvICIkJHAiOyBlbHNlIDo7IGZpOyBcCisJZG9uZSB8IFwKKwlzZWQgLWUgJ3A7cywuKi8sLDtuO2gnIC1lICdzfC4qfC58JyBcCisJICAgIC1lICdwO3g7cywuKi8sLDtzLyQoRVhFRVhUKSQkLy87JCh0cmFuc2Zvcm0pO3MvJCQvJChFWEVFWFQpLycgfCBcCisJc2VkICdOO047TjtzLFxuLCAsZycgfCBcCisJJChBV0spICdCRUdJTiB7IGZpbGVzWyIuIl0gPSAiIjsgZGlyc1siLiJdID0gMSB9IFwKKwkgIHsgZD0kJDM7IGlmIChkaXJzW2RdICE9IDEpIHsgcHJpbnQgImQiLCBkOyBkaXJzW2RdID0gMSB9IFwKKwkgICAgaWYgKCQkMiA9PSAkJDQpIGZpbGVzW2RdID0gZmlsZXNbZF0gIiAiICQkMTsgXAorCSAgICBlbHNlIHsgcHJpbnQgImYiLCAkJDMgIi8iICQkNCwgJCQxOyB9IH0gXAorCSAgRU5EIHsgZm9yIChkIGluIGZpbGVzKSBwcmludCAiZiIsIGQsIGZpbGVzW2RdIH0nIHwgXAorCXdoaWxlIHJlYWQgdHlwZSBkaXIgZmlsZXM7IGRvIFwKKwkgICAgaWYgdGVzdCAiJCRkaXIiID0gLjsgdGhlbiBkaXI9OyBlbHNlIGRpcj0vJCRkaXI7IGZpOyBcCisJICAgIHRlc3QgLXogIiQkZmlsZXMiIHx8IHsgXAorCSAgICAgIGVjaG8gIiAkKElOU1RBTExfUFJPR1JBTV9FTlYpICQoSU5TVEFMTF9QUk9HUkFNKSAkJGZpbGVzICckKERFU1RESVIpJChiaW5kaXIpJCRkaXInIjsgXAorCSAgICAgICQoSU5TVEFMTF9QUk9HUkFNX0VOVikgJChJTlNUQUxMX1BST0dSQU0pICQkZmlsZXMgIiQoREVTVERJUikkKGJpbmRpcikkJGRpciIgfHwgZXhpdCAkJD87IFwKKwkgICAgfSBcCisJOyBkb25lCisKK3VuaW5zdGFsbC1iaW5QUk9HUkFNUzoKKwlAJChOT1JNQUxfVU5JTlNUQUxMKQorCUBsaXN0PSckKGJpbl9QUk9HUkFNUyknOyB0ZXN0IC1uICIkKGJpbmRpcikiIHx8IGxpc3Q9OyBcCisJZmlsZXM9YGZvciBwIGluICQkbGlzdDsgZG8gZWNobyAiJCRwIjsgZG9uZSB8IFwKKwkgIHNlZCAtZSAnaDtzLF4uKi8sLDtzLyQoRVhFRVhUKSQkLy87JCh0cmFuc2Zvcm0pJyBcCisJICAgICAgLWUgJ3MvJCQvJChFWEVFWFQpLycgYDsgXAorCXRlc3QgLW4gIiQkbGlzdCIgfHwgZXhpdCAwOyBcCisJZWNobyAiICggY2QgJyQoREVTVERJUikkKGJpbmRpciknICYmIHJtIC1mIiAkJGZpbGVzICIpIjsgXAorCWNkICIkKERFU1RESVIpJChiaW5kaXIpIiAmJiBybSAtZiAkJGZpbGVzCisKK2NsZWFuLWJpblBST0dSQU1TOgorCS10ZXN0IC16ICIkKGJpbl9QUk9HUkFNUykiIHx8IHJtIC1mICQoYmluX1BST0dSQU1TKQorZHBrZy1kZWIkKEVYRUVYVCk6ICQoZHBrZ19kZWJfT0JKRUNUUykgJChkcGtnX2RlYl9ERVBFTkRFTkNJRVMpIAorCUBybSAtZiBkcGtnLWRlYiQoRVhFRVhUKQorCSQoQU1fVl9DQ0xEKSQoTElOSykgJChkcGtnX2RlYl9PQkpFQ1RTKSAkKGRwa2dfZGViX0xEQUREKSAkKExJQlMpCisKK21vc3RseWNsZWFuLWNvbXBpbGU6CisJLXJtIC1mICouJChPQkpFWFQpCisKK2Rpc3RjbGVhbi1jb21waWxlOgorCS1ybSAtZiAqLnRhYi5jCisKK0BBTURFUF9UUlVFQEBhbV9faW5jbHVkZUAgQGFtX19xdW90ZUAuLyQoREVQRElSKS9idWlsZC5Qb0BhbV9fcXVvdGVACitAQU1ERVBfVFJVRUBAYW1fX2luY2x1ZGVAIEBhbV9fcXVvdGVALi8kKERFUERJUikvZXh0cmFjdC5Qb0BhbV9fcXVvdGVACitAQU1ERVBfVFJVRUBAYW1fX2luY2x1ZGVAIEBhbV9fcXVvdGVALi8kKERFUERJUikvaW5mby5Qb0BhbV9fcXVvdGVACitAQU1ERVBfVFJVRUBAYW1fX2luY2x1ZGVAIEBhbV9fcXVvdGVALi8kKERFUERJUikvbWFpbi5Qb0BhbV9fcXVvdGVACisKKy5jLm86CitAYW1fX2Zhc3RkZXBDQ19UUlVFQAkkKEFNX1ZfQ0MpJChDT01QSUxFKSAtTVQgJEAgLU1EIC1NUCAtTUYgJChERVBESVIpLyQqLlRwbyAtYyAtbyAkQCAkPAorQGFtX19mYXN0ZGVwQ0NfVFJVRUAJJChBTV9WX2F0KSQoYW1fX212KSAkKERFUERJUikvJCouVHBvICQoREVQRElSKS8kKi5QbworQGFtX19mYXN0ZGVwQ0NfRkFMU0VACSQoQU1fVl9DQykgQEFNX0JBQ0tTTEFTSEAKK0BBTURFUF9UUlVFQEBhbV9fZmFzdGRlcENDX0ZBTFNFQAlzb3VyY2U9JyQ8JyBvYmplY3Q9JyRAJyBsaWJ0b29sPW5vIEBBTURFUEJBQ0tTTEFTSEAKK0BBTURFUF9UUlVFQEBhbV9fZmFzdGRlcENDX0ZBTFNFQAlERVBESVI9JChERVBESVIpICQoQ0NERVBNT0RFKSAkKGRlcGNvbXApIEBBTURFUEJBQ0tTTEFTSEAKK0BhbV9fZmFzdGRlcENDX0ZBTFNFQAkkKENPTVBJTEUpIC1jICQ8CisKKy5jLm9iajoKK0BhbV9fZmFzdGRlcENDX1RSVUVACSQoQU1fVl9DQykkKENPTVBJTEUpIC1NVCAkQCAtTUQgLU1QIC1NRiAkKERFUERJUikvJCouVHBvIC1jIC1vICRAIGAkKENZR1BBVEhfVykgJyQ8J2AKK0BhbV9fZmFzdGRlcENDX1RSVUVACSQoQU1fVl9hdCkkKGFtX19tdikgJChERVBESVIpLyQqLlRwbyAkKERFUERJUikvJCouUG8KK0BhbV9fZmFzdGRlcENDX0ZBTFNFQAkkKEFNX1ZfQ0MpIEBBTV9CQUNLU0xBU0hACitAQU1ERVBfVFJVRUBAYW1fX2Zhc3RkZXBDQ19GQUxTRUAJc291cmNlPSckPCcgb2JqZWN0PSckQCcgbGlidG9vbD1ubyBAQU1ERVBCQUNLU0xBU0hACitAQU1ERVBfVFJVRUBAYW1fX2Zhc3RkZXBDQ19GQUxTRUAJREVQRElSPSQoREVQRElSKSAkKENDREVQTU9ERSkgJChkZXBjb21wKSBAQU1ERVBCQUNLU0xBU0hACitAYW1fX2Zhc3RkZXBDQ19GQUxTRUAJJChDT01QSUxFKSAtYyBgJChDWUdQQVRIX1cpICckPCdgCisKK0lEOiAkKEhFQURFUlMpICQoU09VUkNFUykgJChMSVNQKSAkKFRBR1NfRklMRVMpCisJbGlzdD0nJChTT1VSQ0VTKSAkKEhFQURFUlMpICQoTElTUCkgJChUQUdTX0ZJTEVTKSc7IFwKKwl1bmlxdWU9YGZvciBpIGluICQkbGlzdDsgZG8gXAorCSAgICBpZiB0ZXN0IC1mICIkJGkiOyB0aGVuIGVjaG8gJCRpOyBlbHNlIGVjaG8gJChzcmNkaXIpLyQkaTsgZmk7IFwKKwkgIGRvbmUgfCBcCisJICAkKEFXSykgJ3sgZmlsZXNbJCQwXSA9IDE7IG5vbmVtcHR5ID0gMTsgfSBcCisJICAgICAgRU5EIHsgaWYgKG5vbmVtcHR5KSB7IGZvciAoaSBpbiBmaWxlcykgcHJpbnQgaTsgfTsgfSdgOyBcCisJbWtpZCAtZklEICQkdW5pcXVlCit0YWdzOiBUQUdTCisKK1RBR1M6ICAkKEhFQURFUlMpICQoU09VUkNFUykgICQoVEFHU19ERVBFTkRFTkNJRVMpIFwKKwkJJChUQUdTX0ZJTEVTKSAkKExJU1ApCisJc2V0IHg7IFwKKwloZXJlPWBwd2RgOyBcCisJbGlzdD0nJChTT1VSQ0VTKSAkKEhFQURFUlMpICAkKExJU1ApICQoVEFHU19GSUxFUyknOyBcCisJdW5pcXVlPWBmb3IgaSBpbiAkJGxpc3Q7IGRvIFwKKwkgICAgaWYgdGVzdCAtZiAiJCRpIjsgdGhlbiBlY2hvICQkaTsgZWxzZSBlY2hvICQoc3JjZGlyKS8kJGk7IGZpOyBcCisJICBkb25lIHwgXAorCSAgJChBV0spICd7IGZpbGVzWyQkMF0gPSAxOyBub25lbXB0eSA9IDE7IH0gXAorCSAgICAgIEVORCB7IGlmIChub25lbXB0eSkgeyBmb3IgKGkgaW4gZmlsZXMpIHByaW50IGk7IH07IH0nYDsgXAorCXNoaWZ0OyBcCisJaWYgdGVzdCAteiAiJChFVEFHU19BUkdTKSQkKiQkdW5pcXVlIjsgdGhlbiA6OyBlbHNlIFwKKwkgIHRlc3QgLW4gIiQkdW5pcXVlIiB8fCB1bmlxdWU9JCRlbXB0eV9maXg7IFwKKwkgIGlmIHRlc3QgJCQjIC1ndCAwOyB0aGVuIFwKKwkgICAgJChFVEFHUykgJChFVEFHU0ZMQUdTKSAkKEFNX0VUQUdTRkxBR1MpICQoRVRBR1NfQVJHUykgXAorCSAgICAgICIkJEAiICQkdW5pcXVlOyBcCisJICBlbHNlIFwKKwkgICAgJChFVEFHUykgJChFVEFHU0ZMQUdTKSAkKEFNX0VUQUdTRkxBR1MpICQoRVRBR1NfQVJHUykgXAorCSAgICAgICQkdW5pcXVlOyBcCisJICBmaTsgXAorCWZpCitjdGFnczogQ1RBR1MKK0NUQUdTOiAgJChIRUFERVJTKSAkKFNPVVJDRVMpICAkKFRBR1NfREVQRU5ERU5DSUVTKSBcCisJCSQoVEFHU19GSUxFUykgJChMSVNQKQorCWxpc3Q9JyQoU09VUkNFUykgJChIRUFERVJTKSAgJChMSVNQKSAkKFRBR1NfRklMRVMpJzsgXAorCXVuaXF1ZT1gZm9yIGkgaW4gJCRsaXN0OyBkbyBcCisJICAgIGlmIHRlc3QgLWYgIiQkaSI7IHRoZW4gZWNobyAkJGk7IGVsc2UgZWNobyAkKHNyY2RpcikvJCRpOyBmaTsgXAorCSAgZG9uZSB8IFwKKwkgICQoQVdLKSAneyBmaWxlc1skJDBdID0gMTsgbm9uZW1wdHkgPSAxOyB9IFwKKwkgICAgICBFTkQgeyBpZiAobm9uZW1wdHkpIHsgZm9yIChpIGluIGZpbGVzKSBwcmludCBpOyB9OyB9J2A7IFwKKwl0ZXN0IC16ICIkKENUQUdTX0FSR1MpJCR1bmlxdWUiIFwKKwkgIHx8ICQoQ1RBR1MpICQoQ1RBR1NGTEFHUykgJChBTV9DVEFHU0ZMQUdTKSAkKENUQUdTX0FSR1MpIFwKKwkgICAgICQkdW5pcXVlCisKK0dUQUdTOgorCWhlcmU9YCQoYW1fX2NkKSAkKHRvcF9idWlsZGRpcikgJiYgcHdkYCBcCisJICAmJiAkKGFtX19jZCkgJCh0b3Bfc3JjZGlyKSBcCisJICAmJiBndGFncyAtaSAkKEdUQUdTX0FSR1MpICIkJGhlcmUiCisKK2Rpc3RjbGVhbi10YWdzOgorCS1ybSAtZiBUQUdTIElEIEdUQUdTIEdSVEFHUyBHU1lNUyBHUEFUSCB0YWdzCisKK2Rpc3RkaXI6ICQoRElTVEZJTEVTKQorCUBzcmNkaXJzdHJpcD1gZWNobyAiJChzcmNkaXIpIiB8IHNlZCAncy9bXS5bXiQkXFwqXS9cXFxcJi9nJ2A7IFwKKwl0b3BzcmNkaXJzdHJpcD1gZWNobyAiJCh0b3Bfc3JjZGlyKSIgfCBzZWQgJ3MvW10uW14kJFxcKl0vXFxcXCYvZydgOyBcCisJbGlzdD0nJChESVNURklMRVMpJzsgXAorCSAgZGlzdF9maWxlcz1gZm9yIGZpbGUgaW4gJCRsaXN0OyBkbyBlY2hvICQkZmlsZTsgZG9uZSB8IFwKKwkgIHNlZCAtZSAic3xeJCRzcmNkaXJzdHJpcC98fDt0IiBcCisJICAgICAgLWUgInN8XiQkdG9wc3JjZGlyc3RyaXAvfCQodG9wX2J1aWxkZGlyKS98O3QiYDsgXAorCWNhc2UgJCRkaXN0X2ZpbGVzIGluIFwKKwkgICovKikgJChNS0RJUl9QKSBgZWNobyAiJCRkaXN0X2ZpbGVzIiB8IFwKKwkJCSAgIHNlZCAnL1wvLyFkO3N8XnwkKGRpc3RkaXIpL3w7cywvW14vXSokJCwsJyB8IFwKKwkJCSAgIHNvcnQgLXVgIDs7IFwKKwllc2FjOyBcCisJZm9yIGZpbGUgaW4gJCRkaXN0X2ZpbGVzOyBkbyBcCisJICBpZiB0ZXN0IC1mICQkZmlsZSB8fCB0ZXN0IC1kICQkZmlsZTsgdGhlbiBkPS47IGVsc2UgZD0kKHNyY2Rpcik7IGZpOyBcCisJICBpZiB0ZXN0IC1kICQkZC8kJGZpbGU7IHRoZW4gXAorCSAgICBkaXI9YGVjaG8gIi8kJGZpbGUiIHwgc2VkIC1lICdzLC9bXi9dKiQkLCwnYDsgXAorCSAgICBpZiB0ZXN0IC1kICIkKGRpc3RkaXIpLyQkZmlsZSI7IHRoZW4gXAorCSAgICAgIGZpbmQgIiQoZGlzdGRpcikvJCRmaWxlIiAtdHlwZSBkICEgLXBlcm0gLTcwMCAtZXhlYyBjaG1vZCB1K3J3eCB7fSBcOzsgXAorCSAgICBmaTsgXAorCSAgICBpZiB0ZXN0IC1kICQoc3JjZGlyKS8kJGZpbGUgJiYgdGVzdCAkJGQgIT0gJChzcmNkaXIpOyB0aGVuIFwKKwkgICAgICBjcCAtZnBSICQoc3JjZGlyKS8kJGZpbGUgIiQoZGlzdGRpcikkJGRpciIgfHwgZXhpdCAxOyBcCisJICAgICAgZmluZCAiJChkaXN0ZGlyKS8kJGZpbGUiIC10eXBlIGQgISAtcGVybSAtNzAwIC1leGVjIGNobW9kIHUrcnd4IHt9IFw7OyBcCisJICAgIGZpOyBcCisJICAgIGNwIC1mcFIgJCRkLyQkZmlsZSAiJChkaXN0ZGlyKSQkZGlyIiB8fCBleGl0IDE7IFwKKwkgIGVsc2UgXAorCSAgICB0ZXN0IC1mICIkKGRpc3RkaXIpLyQkZmlsZSIgXAorCSAgICB8fCBjcCAtcCAkJGQvJCRmaWxlICIkKGRpc3RkaXIpLyQkZmlsZSIgXAorCSAgICB8fCBleGl0IDE7IFwKKwkgIGZpOyBcCisJZG9uZQorY2hlY2stYW06IGFsbC1hbQorY2hlY2s6IGNoZWNrLWFtCithbGwtYW06IE1ha2VmaWxlICQoUFJPR1JBTVMpCitpbnN0YWxsZGlyczoKKwlmb3IgZGlyIGluICIkKERFU1RESVIpJChiaW5kaXIpIjsgZG8gXAorCSAgdGVzdCAteiAiJCRkaXIiIHx8ICQoTUtESVJfUCkgIiQkZGlyIjsgXAorCWRvbmUKK2luc3RhbGw6IGluc3RhbGwtYW0KK2luc3RhbGwtZXhlYzogaW5zdGFsbC1leGVjLWFtCitpbnN0YWxsLWRhdGE6IGluc3RhbGwtZGF0YS1hbQordW5pbnN0YWxsOiB1bmluc3RhbGwtYW0KKworaW5zdGFsbC1hbTogYWxsLWFtCisJQCQoTUFLRSkgJChBTV9NQUtFRkxBR1MpIGluc3RhbGwtZXhlYy1hbSBpbnN0YWxsLWRhdGEtYW0KKworaW5zdGFsbGNoZWNrOiBpbnN0YWxsY2hlY2stYW0KK2luc3RhbGwtc3RyaXA6CisJJChNQUtFKSAkKEFNX01BS0VGTEFHUykgSU5TVEFMTF9QUk9HUkFNPSIkKElOU1RBTExfU1RSSVBfUFJPR1JBTSkiIFwKKwkgIGluc3RhbGxfc2hfUFJPR1JBTT0iJChJTlNUQUxMX1NUUklQX1BST0dSQU0pIiBJTlNUQUxMX1NUUklQX0ZMQUc9LXMgXAorCSAgYHRlc3QgLXogJyQoU1RSSVApJyB8fCBcCisJICAgIGVjaG8gIklOU1RBTExfUFJPR1JBTV9FTlY9U1RSSVBQUk9HPSckKFNUUklQKSciYCBpbnN0YWxsCittb3N0bHljbGVhbi1nZW5lcmljOgorCitjbGVhbi1nZW5lcmljOgorCitkaXN0Y2xlYW4tZ2VuZXJpYzoKKwktdGVzdCAteiAiJChDT05GSUdfQ0xFQU5fRklMRVMpIiB8fCBybSAtZiAkKENPTkZJR19DTEVBTl9GSUxFUykKKwktdGVzdCAuID0gIiQoc3JjZGlyKSIgfHwgdGVzdCAteiAiJChDT05GSUdfQ0xFQU5fVlBBVEhfRklMRVMpIiB8fCBybSAtZiAkKENPTkZJR19DTEVBTl9WUEFUSF9GSUxFUykKKworbWFpbnRhaW5lci1jbGVhbi1nZW5lcmljOgorCUBlY2hvICJUaGlzIGNvbW1hbmQgaXMgaW50ZW5kZWQgZm9yIG1haW50YWluZXJzIHRvIHVzZSIKKwlAZWNobyAiaXQgZGVsZXRlcyBmaWxlcyB0aGF0IG1heSByZXF1aXJlIHNwZWNpYWwgdG9vbHMgdG8gcmVidWlsZC4iCitjbGVhbjogY2xlYW4tYW0KKworY2xlYW4tYW06IGNsZWFuLWJpblBST0dSQU1TIGNsZWFuLWdlbmVyaWMgbW9zdGx5Y2xlYW4tYW0KKworZGlzdGNsZWFuOiBkaXN0Y2xlYW4tYW0KKwktcm0gLXJmIC4vJChERVBESVIpCisJLXJtIC1mIE1ha2VmaWxlCitkaXN0Y2xlYW4tYW06IGNsZWFuLWFtIGRpc3RjbGVhbi1jb21waWxlIGRpc3RjbGVhbi1nZW5lcmljIFwKKwlkaXN0Y2xlYW4tdGFncworCitkdmk6IGR2aS1hbQorCitkdmktYW06CisKK2h0bWw6IGh0bWwtYW0KKworaHRtbC1hbToKKworaW5mbzogaW5mby1hbQorCitpbmZvLWFtOgorCitpbnN0YWxsLWRhdGEtYW06CisKK2luc3RhbGwtZHZpOiBpbnN0YWxsLWR2aS1hbQorCitpbnN0YWxsLWR2aS1hbToKKworaW5zdGFsbC1leGVjLWFtOiBpbnN0YWxsLWJpblBST0dSQU1TCisKK2luc3RhbGwtaHRtbDogaW5zdGFsbC1odG1sLWFtCisKK2luc3RhbGwtaHRtbC1hbToKKworaW5zdGFsbC1pbmZvOiBpbnN0YWxsLWluZm8tYW0KKworaW5zdGFsbC1pbmZvLWFtOgorCitpbnN0YWxsLW1hbjoKKworaW5zdGFsbC1wZGY6IGluc3RhbGwtcGRmLWFtCisKK2luc3RhbGwtcGRmLWFtOgorCitpbnN0YWxsLXBzOiBpbnN0YWxsLXBzLWFtCisKK2luc3RhbGwtcHMtYW06CisKK2luc3RhbGxjaGVjay1hbToKKworbWFpbnRhaW5lci1jbGVhbjogbWFpbnRhaW5lci1jbGVhbi1hbQorCS1ybSAtcmYgLi8kKERFUERJUikKKwktcm0gLWYgTWFrZWZpbGUKK21haW50YWluZXItY2xlYW4tYW06IGRpc3RjbGVhbi1hbSBtYWludGFpbmVyLWNsZWFuLWdlbmVyaWMKKworbW9zdGx5Y2xlYW46IG1vc3RseWNsZWFuLWFtCisKK21vc3RseWNsZWFuLWFtOiBtb3N0bHljbGVhbi1jb21waWxlIG1vc3RseWNsZWFuLWdlbmVyaWMKKworcGRmOiBwZGYtYW0KKworcGRmLWFtOgorCitwczogcHMtYW0KKworcHMtYW06CisKK3VuaW5zdGFsbC1hbTogdW5pbnN0YWxsLWJpblBST0dSQU1TCisKKy5NQUtFOiBpbnN0YWxsLWFtIGluc3RhbGwtc3RyaXAKKworLlBIT05ZOiBDVEFHUyBHVEFHUyBhbGwgYWxsLWFtIGNoZWNrIGNoZWNrLWFtIGNsZWFuIGNsZWFuLWJpblBST0dSQU1TIFwKKwljbGVhbi1nZW5lcmljIGN0YWdzIGRpc3RjbGVhbiBkaXN0Y2xlYW4tY29tcGlsZSBcCisJZGlzdGNsZWFuLWdlbmVyaWMgZGlzdGNsZWFuLXRhZ3MgZGlzdGRpciBkdmkgZHZpLWFtIGh0bWwgXAorCWh0bWwtYW0gaW5mbyBpbmZvLWFtIGluc3RhbGwgaW5zdGFsbC1hbSBpbnN0YWxsLWJpblBST0dSQU1TIFwKKwlpbnN0YWxsLWRhdGEgaW5zdGFsbC1kYXRhLWFtIGluc3RhbGwtZHZpIGluc3RhbGwtZHZpLWFtIFwKKwlpbnN0YWxsLWV4ZWMgaW5zdGFsbC1leGVjLWFtIGluc3RhbGwtaHRtbCBpbnN0YWxsLWh0bWwtYW0gXAorCWluc3RhbGwtaW5mbyBpbnN0YWxsLWluZm8tYW0gaW5zdGFsbC1tYW4gaW5zdGFsbC1wZGYgXAorCWluc3RhbGwtcGRmLWFtIGluc3RhbGwtcHMgaW5zdGFsbC1wcy1hbSBpbnN0YWxsLXN0cmlwIFwKKwlpbnN0YWxsY2hlY2sgaW5zdGFsbGNoZWNrLWFtIGluc3RhbGxkaXJzIG1haW50YWluZXItY2xlYW4gXAorCW1haW50YWluZXItY2xlYW4tZ2VuZXJpYyBtb3N0bHljbGVhbiBtb3N0bHljbGVhbi1jb21waWxlIFwKKwltb3N0bHljbGVhbi1nZW5lcmljIHBkZiBwZGYtYW0gcHMgcHMtYW0gdGFncyB1bmluc3RhbGwgXAorCXVuaW5zdGFsbC1hbSB1bmluc3RhbGwtYmluUFJPR1JBTVMKKworCisjIFRlbGwgdmVyc2lvbnMgWzMuNTksMy42Mykgb2YgR05VIG1ha2UgdG8gbm90IGV4cG9ydCBhbGwgdmFyaWFibGVzLgorIyBPdGhlcndpc2UgYSBzeXN0ZW0gbGltaXQgKGZvciBTeXNWIGF0IGxlYXN0KSBtYXkgYmUgZXhjZWVkZWQuCisuTk9FWFBPUlQ6CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2Rwa2ctZGViL2J1aWxkLmMgYi9kcGtnLTEuMTYuMS4xL2Rwa2ctZGViL2J1aWxkLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzUxMzJlZQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZHBrZy1kZWIvYnVpbGQuYwpAQCAtMCwwICsxLDYwMyBAQAorLyoKKyAqIGRwa2ctZGViIC0gY29uc3RydWN0aW9uIGFuZCBkZWNvbnN0cnVjdGlvbiBvZiAqLmRlYiBhcmNoaXZlcworICogYnVpbGQuYyAtIGJ1aWxkaW5nIGFyY2hpdmVzCisgKgorICogQ29weXJpZ2h0IMKpIDE5OTQsMTk5NSBJYW4gSmFja3NvbiA8aWFuQGNoaWFyay5ncmVlbmVuZC5vcmcudWs+CisgKiBDb3B5cmlnaHQgwqkgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisgKgorICogVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisgKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAqIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorICovCisKKyNpbmNsdWRlIDxjb25maWcuaD4KKyNpbmNsdWRlIDxjb21wYXQuaD4KKworI2luY2x1ZGUgPHN5cy90eXBlcy5oPgorI2luY2x1ZGUgPHN5cy9zdGF0Lmg+CisjaW5jbHVkZSA8c3lzL3dhaXQuaD4KKworI2luY2x1ZGUgPGVycm5vLmg+CisjaW5jbHVkZSA8bGltaXRzLmg+CisjaW5jbHVkZSA8Y3R5cGUuaD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDxkaXJlbnQuaD4KKyNpbmNsdWRlIDxmY250bC5oPgorI2luY2x1ZGUgPHVuaXN0ZC5oPgorI2luY2x1ZGUgPHN0ZGJvb2wuaD4KKyNpbmNsdWRlIDxzdGRpbnQuaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlIDxzdGRpby5oPgorCisjaW5jbHVkZSA8ZHBrZy9pMThuLmg+CisjaW5jbHVkZSA8ZHBrZy9kcGtnLmg+CisjaW5jbHVkZSA8ZHBrZy9kcGtnLWRiLmg+CisjaW5jbHVkZSA8ZHBrZy9wYXRoLmg+CisjaW5jbHVkZSA8ZHBrZy92YXJidWYuaD4KKyNpbmNsdWRlIDxkcGtnL2ZkaW8uaD4KKyNpbmNsdWRlIDxkcGtnL2J1ZmZlci5oPgorI2luY2x1ZGUgPGRwa2cvc3VicHJvYy5oPgorI2luY2x1ZGUgPGRwa2cvY29tcHJlc3MuaD4KKyNpbmNsdWRlIDxkcGtnL2FyLmg+CisjaW5jbHVkZSA8ZHBrZy9vcHRpb25zLmg+CisKKyNpbmNsdWRlICJkcGtnLWRlYi5oIgorCisvKioKKyAqIFNpbXBsZSBzdHJ1Y3R1cmUgdG8gc3RvcmUgaW5mb3JtYXRpb24gYWJvdXQgYSBmaWxlLgorICovCitzdHJ1Y3QgZmlsZV9pbmZvIHsKKyAgc3RydWN0IGZpbGVfaW5mbyAqbmV4dDsKKyAgc3RydWN0IHN0YXQJc3Q7CisgIGNoYXIqCWZuOworfTsKKworc3RhdGljIHN0cnVjdCBmaWxlX2luZm8gKgorZmlsZV9pbmZvX25ldyhjb25zdCBjaGFyICpmaWxlbmFtZSkKK3sKKyAgc3RydWN0IGZpbGVfaW5mbyAqZmk7CisKKyAgZmkgPSBtX21hbGxvYyhzaXplb2YoKmZpKSk7CisgIGZpLT5mbiA9IG1fc3RyZHVwKGZpbGVuYW1lKTsKKyAgZmktPm5leHQgPSBOVUxMOworCisgIHJldHVybiBmaTsKK30KKworc3RhdGljIHZvaWQKK2ZpbGVfaW5mb19mcmVlKHN0cnVjdCBmaWxlX2luZm8gKmZpKQoreworICBmcmVlKGZpLT5mbik7CisgIGZyZWUoZmkpOworfQorCitzdGF0aWMgc3RydWN0IGZpbGVfaW5mbyAqCitmaWxlX2luZm9fZmluZF9uYW1lKHN0cnVjdCBmaWxlX2luZm8gKmxpc3QsIGNvbnN0IGNoYXIgKmZpbGVuYW1lKQoreworICBzdHJ1Y3QgZmlsZV9pbmZvICpub2RlOworCisgIGZvciAobm9kZSA9IGxpc3Q7IG5vZGU7IG5vZGUgPSBub2RlLT5uZXh0KQorICAgIGlmIChzdHJjbXAobm9kZS0+Zm4sIGZpbGVuYW1lKSA9PSAwKQorICAgICAgcmV0dXJuIG5vZGU7CisKKyAgcmV0dXJuIE5VTEw7Cit9CisKKy8qKgorICogUmVhZCBhIGZpbGVuYW1lIGZyb20gdGhlIGZpbGUgZGVzY3JpcHRvciBhbmQgY3JlYXRlIGEgZmlsZV9pbmZvIHN0cnVjdC4KKyAqCisgKiBAcmV0dXJuIEEgZmlsZV9pbmZvIHN0cnVjdCBvciBOVUxMIGlmIHRoZXJlIGlzIG5vdGhpbmcgdG8gcmVhZC4KKyAqLworc3RhdGljIHN0cnVjdCBmaWxlX2luZm8gKgorZmlsZV9pbmZvX2dldChjb25zdCBjaGFyICpyb290LCBpbnQgZmQpCit7CisgIHN0YXRpYyBzdHJ1Y3QgdmFyYnVmIGZuID0gVkFSQlVGX0lOSVQ7CisgIHN0cnVjdCBmaWxlX2luZm8gKmZpOworICBzaXplX3Qgcm9vdF9sZW47CisKKyAgdmFyYnVmX3Jlc2V0KCZmbik7CisgIHJvb3RfbGVuID0gdmFyYnVmX3ByaW50ZigmZm4sICIlcy8iLCByb290KTsKKworICB3aGlsZSAoMSkgeworICAgIGludAlyZXM7CisKKyAgICB2YXJidWZfZ3JvdygmZm4sIDEpOworICAgIHJlcyA9IGZkX3JlYWQoZmQsIChmbi5idWYgKyBmbi51c2VkKSwgMSk7CisgICAgaWYgKHJlcyA8IDApCisgICAgICByZXR1cm4gTlVMTDsKKyAgICBpZiAocmVzID09IDApIC8qIEVPRiAtPiBwYXJlbnQgZGllZC4gKi8KKyAgICAgIHJldHVybiBOVUxMOworICAgIGlmIChmbi5idWZbZm4udXNlZF0gPT0gJ1wwJykKKyAgICAgIGJyZWFrOworCisgICAgdmFyYnVmX3RydW5jKCZmbiwgZm4udXNlZCArIDEpOworICAgIGlmIChmbi51c2VkID49IE1BWEZJTEVOQU1FKQorICAgICAgb2hzaGl0KF8oImZpbGUgbmFtZSAnJS41MHMuLi4nIGlzIHRvbyBsb25nIiksIGZuLmJ1ZiArIHJvb3RfbGVuKTsKKyAgfQorCisgIGZpID0gZmlsZV9pbmZvX25ldyhmbi5idWYgKyByb290X2xlbik7CisgIGlmIChsc3RhdChmbi5idWYsICYoZmktPnN0KSkgIT0gMCkKKyAgICBvaHNoaXRlKF8oInVuYWJsZSB0byBzdGF0IGZpbGUgbmFtZSAnJS4yNTBzJyIpLCBmbi5idWYpOworCisgIHJldHVybiBmaTsKK30KKworLyoqCisgKiBBZGQgYSBuZXcgZmlsZV9pbmZvIHN0cnVjdCB0byBhIHNpbmdsZSBsaW5rZWQgbGlzdCBvZiBmaWxlX2luZm8gc3RydWN0cy4KKyAqCisgKiBXZSBwZXJmb3JtIGEgc2xpZ2h0IG9wdGltaXphdGlvbiB0byB3b3JrIGFyb3VuZCBhIOKAmGZlYXR1cmXigJkgaW4gdGFyOiB0YXIKKyAqIGFsd2F5cyByZWN1cnNlcyBpbnRvIHN1YmRpcmVjdG9yaWVzIGlmIHlvdSBsaXN0IGEgc3ViZGlyZWN0b3J5LiBTbyBpZiBhbgorICogZW50cnkgaXMgYWRkZWQgYW5kIHRoZSBwcmV2aW91cyBlbnRyeSBpbiB0aGUgbGlzdCBpcyBpdHMgc3ViZGlyZWN0b3J5IHdlCisgKiByZW1vdmUgdGhlIHN1YmRpcmVjdG9yeS4KKyAqCisgKiBBZnRlciBhIGZpbGVfaW5mbyBzdHJ1Y3QgaXMgYWRkZWQgdG8gYSBsaXN0IGl0IG1heSBubyBsb25nZXIgYmUgZnJlZWQsIHdlCisgKiBhc3N1bWUgZnVsbCByZXNwb25zaWJpbGl0eSBmb3IgaXRzIG1lbW9yeS4KKyAqLworc3RhdGljIHZvaWQKK2ZpbGVfaW5mb19saXN0X2FwcGVuZChzdHJ1Y3QgZmlsZV9pbmZvICoqaGVhZCwgc3RydWN0IGZpbGVfaW5mbyAqKnRhaWwsCisgICAgICAgICAgICAgICAgICAgICAgc3RydWN0IGZpbGVfaW5mbyAqZmkpCit7CisgIGlmICgqaGVhZCA9PSBOVUxMKQorICAgICpoZWFkID0gKnRhaWwgPSBmaTsKKyAgZWxzZQorICAgICp0YWlsID0gKCp0YWlsKS0+bmV4dCA9Zmk7Cit9CisKKy8qKgorICogRnJlZSB0aGUgbWVtb3J5IGZvciBhbGwgZW50cmllcyBpbiBhIGxpc3Qgb2YgZmlsZV9pbmZvIHN0cnVjdHMuCisgKi8KK3N0YXRpYyB2b2lkCitmaWxlX2luZm9fbGlzdF9mcmVlKHN0cnVjdCBmaWxlX2luZm8gKmZpKQoreworICB3aGlsZSAoZmkpIHsKKyAgICBzdHJ1Y3QgZmlsZV9pbmZvICpmbDsKKworICAgIGZsPWZpOyBmaT1maS0+bmV4dDsKKyAgICBmaWxlX2luZm9fZnJlZShmbCk7CisgIH0KK30KKworc3RhdGljIGNvbnN0IGNoYXIgKmNvbnN0IG1haW50YWluZXJzY3JpcHRzW10gPSB7CisgIFBSRUlOU1RGSUxFLAorICBQT1NUSU5TVEZJTEUsCisgIFBSRVJNRklMRSwKKyAgUE9TVFJNRklMRSwKKyAgTlVMTCwKK307CisKKy8qKgorICogQ2hlY2sgY29udHJvbCBkaXJlY3RvcnkgYW5kIGZpbGUgcGVybWlzc2lvbnMuCisgKi8KK3N0YXRpYyB2b2lkCitjaGVja19maWxlX3Blcm1zKGNvbnN0IGNoYXIgKmRpcikKK3sKKyAgc3RydWN0IHZhcmJ1ZiBwYXRoID0gVkFSQlVGX0lOSVQ7CisgIGNvbnN0IGNoYXIgKmNvbnN0ICptc2NyaXB0cDsKKyAgc3RydWN0IHN0YXQgbXNjcmlwdHN0YWI7CisKKyAgdmFyYnVmX3ByaW50ZigmcGF0aCwgIiVzLyVzLyIsIGRpciwgQlVJTERDT05UUk9MRElSKTsKKyAgaWYgKGxzdGF0KHBhdGguYnVmLCAmbXNjcmlwdHN0YWIpKQorICAgIG9oc2hpdGUoXygidW5hYmxlIHRvIHN0YXQgY29udHJvbCBkaXJlY3RvcnkiKSk7CisgIGlmICghU19JU0RJUihtc2NyaXB0c3RhYi5zdF9tb2RlKSkKKyAgICBvaHNoaXQoXygiY29udHJvbCBkaXJlY3RvcnkgaXMgbm90IGEgZGlyZWN0b3J5IikpOworICBpZiAoKG1zY3JpcHRzdGFiLnN0X21vZGUgJiAwNzc1NykgIT0gMDc1NSkKKyAgICBvaHNoaXQoXygiY29udHJvbCBkaXJlY3RvcnkgaGFzIGJhZCBwZXJtaXNzaW9ucyAlMDNsbyAiCisgICAgICAgICAgICAgIihtdXN0IGJlID49MDc1NSBhbmQgPD0wNzc1KSIpLAorICAgICAgICAgICAodW5zaWduZWQgbG9uZykobXNjcmlwdHN0YWIuc3RfbW9kZSAmIDA3Nzc3KSk7CisKKyAgZm9yIChtc2NyaXB0cCA9IG1haW50YWluZXJzY3JpcHRzOyAqbXNjcmlwdHA7IG1zY3JpcHRwKyspIHsKKyAgICB2YXJidWZfcmVzZXQoJnBhdGgpOworICAgIHZhcmJ1Zl9wcmludGYoJnBhdGgsICIlcy8lcy8lcyIsIGRpciwgQlVJTERDT05UUk9MRElSLCAqbXNjcmlwdHApOworICAgIGlmICghbHN0YXQocGF0aC5idWYsICZtc2NyaXB0c3RhYikpIHsKKyAgICAgIGlmIChTX0lTTE5LKG1zY3JpcHRzdGFiLnN0X21vZGUpKQorICAgICAgICBjb250aW51ZTsKKyAgICAgIGlmICghU19JU1JFRyhtc2NyaXB0c3RhYi5zdF9tb2RlKSkKKyAgICAgICAgb2hzaGl0KF8oIm1haW50YWluZXIgc2NyaXB0IGAlLjUwcycgaXMgbm90IGEgcGxhaW4gZmlsZSBvciBzeW1saW5rIiksCisgICAgICAgICAgICAgICAqbXNjcmlwdHApOworICAgICAgaWYgKChtc2NyaXB0c3RhYi5zdF9tb2RlICYgMDc1NTcpICE9IDA1NTUpCisgICAgICAgIG9oc2hpdChfKCJtYWludGFpbmVyIHNjcmlwdCBgJS41MHMnIGhhcyBiYWQgcGVybWlzc2lvbnMgJTAzbG8gIgorICAgICAgICAgICAgICAgICAiKG11c3QgYmUgPj0wNTU1IGFuZCA8PTA3NzUpIiksCisgICAgICAgICAgICAgICAqbXNjcmlwdHAsICh1bnNpZ25lZCBsb25nKShtc2NyaXB0c3RhYi5zdF9tb2RlICYgMDc3NzcpKTsKKyAgICB9IGVsc2UgaWYgKGVycm5vICE9IEVOT0VOVCkgeworICAgICAgb2hzaGl0ZShfKCJtYWludGFpbmVyIHNjcmlwdCBgJS41MHMnIGlzIG5vdCBzdGF0dGFibGUiKSwgKm1zY3JpcHRwKTsKKyAgICB9CisgIH0KKworICB2YXJidWZfZGVzdHJveSgmcGF0aCk7Cit9CisKKy8qKgorICogQ2hlY2sgaWYgY29uZmZpbGVzIGNvbnRhaW5zIHNhbmUgaW5mb3JtYXRpb24uCisgKi8KK3N0YXRpYyB2b2lkCitjaGVja19jb25mZmlsZXMoY29uc3QgY2hhciAqZGlyKQoreworICBGSUxFICpjZjsKKyAgc3RydWN0IHZhcmJ1ZiBjb250cm9sZmlsZSA9IFZBUkJVRl9JTklUOworICBjaGFyIGNvbmZmaWxlbmFtZVtNQVhDT05GRklMRU5BTUUgKyAxXTsKKyAgc3RydWN0IGZpbGVfaW5mbyAqY29uZmZpbGVzX2hlYWQgPSBOVUxMOworICBzdHJ1Y3QgZmlsZV9pbmZvICpjb25mZmlsZXNfdGFpbCA9IE5VTEw7CisKKyAgdmFyYnVmX3ByaW50ZigmY29udHJvbGZpbGUsICIlcy8lcy8lcyIsIGRpciwgQlVJTERDT05UUk9MRElSLCBDT05GRklMRVNGSUxFKTsKKworICBjZiA9IGZvcGVuKGNvbnRyb2xmaWxlLmJ1ZiwgInIiKTsKKyAgaWYgKGNmID09IE5VTEwpIHsKKyAgICBpZiAoZXJybm8gPT0gRU5PRU5UKQorICAgICAgcmV0dXJuOworCisgICAgb2hzaGl0ZShfKCJlcnJvciBvcGVuaW5nIGNvbmZmaWxlcyBmaWxlIikpOworICB9CisKKyAgd2hpbGUgKGZnZXRzKGNvbmZmaWxlbmFtZSwgTUFYQ09ORkZJTEVOQU1FICsgMSwgY2YpKSB7CisgICAgc3RydWN0IHN0YXQgY29udHJvbHN0YWI7CisgICAgaW50IG47CisKKyAgICBuID0gc3RybGVuKGNvbmZmaWxlbmFtZSk7CisgICAgaWYgKCFuKQorICAgICAgb2hzaGl0ZShfKCJlbXB0eSBzdHJpbmcgZnJvbSBmZ2V0cyByZWFkaW5nIGNvbmZmaWxlcyIpKTsKKworICAgIGlmIChjb25mZmlsZW5hbWVbbiAtIDFdICE9ICdcbicpIHsKKyAgICAgIGludCBjOworCisgICAgICB3YXJuaW5nKF8oImNvbmZmaWxlIG5hbWUgJyUuNTBzLi4uJyBpcyB0b28gbG9uZywgb3IgbWlzc2luZyBmaW5hbCBuZXdsaW5lIiksCisgICAgICAgICAgICAgIGNvbmZmaWxlbmFtZSk7CisgICAgICB3aGlsZSAoKGMgPSBnZXRjKGNmKSkgIT0gRU9GICYmIGMgIT0gJ1xuJyk7CisKKyAgICAgIGNvbnRpbnVlOworICAgIH0KKworICAgIGNvbmZmaWxlbmFtZVtuIC0gMV0gPSAnXDAnOworICAgIHZhcmJ1Zl9yZXNldCgmY29udHJvbGZpbGUpOworICAgIHZhcmJ1Zl9wcmludGYoJmNvbnRyb2xmaWxlLCAiJXMvJXMiLCBkaXIsIGNvbmZmaWxlbmFtZSk7CisgICAgaWYgKGxzdGF0KGNvbnRyb2xmaWxlLmJ1ZiwgJmNvbnRyb2xzdGFiKSkgeworICAgICAgaWYgKGVycm5vID09IEVOT0VOVCkgeworICAgICAgICBpZiAoKG4gPiAxKSAmJiBpc3NwYWNlKGNvbmZmaWxlbmFtZVtuIC0gMl0pKQorICAgICAgICAgIHdhcm5pbmcoXygiY29uZmZpbGUgZmlsZW5hbWUgJyVzJyBjb250YWlucyB0cmFpbGluZyB3aGl0ZSBzcGFjZXMiKSwKKyAgICAgICAgICAgICAgICAgIGNvbmZmaWxlbmFtZSk7CisgICAgICAgIG9oc2hpdChfKCJjb25mZmlsZSBgJS4yNTBzJyBkb2VzIG5vdCBhcHBlYXIgaW4gcGFja2FnZSIpLCBjb25mZmlsZW5hbWUpOworICAgICAgfSBlbHNlCisgICAgICAgIG9oc2hpdGUoXygiY29uZmZpbGUgYCUuMjUwcycgaXMgbm90IHN0YXR0YWJsZSIpLCBjb25mZmlsZW5hbWUpOworICAgIH0gZWxzZSBpZiAoIVNfSVNSRUcoY29udHJvbHN0YWIuc3RfbW9kZSkpIHsKKyAgICAgIHdhcm5pbmcoXygiY29uZmZpbGUgJyVzJyBpcyBub3QgYSBwbGFpbiBmaWxlIiksIGNvbmZmaWxlbmFtZSk7CisgICAgfQorCisgICAgaWYgKGZpbGVfaW5mb19maW5kX25hbWUoY29uZmZpbGVzX2hlYWQsIGNvbmZmaWxlbmFtZSkpIHsKKyAgICAgIHdhcm5pbmcoXygiY29uZmZpbGUgbmFtZSAnJXMnIGlzIGR1cGxpY2F0ZWQiKSwgY29uZmZpbGVuYW1lKTsKKyAgICB9IGVsc2UgeworICAgICAgc3RydWN0IGZpbGVfaW5mbyAqY29uZmZpbGU7CisKKyAgICAgIGNvbmZmaWxlID0gZmlsZV9pbmZvX25ldyhjb25mZmlsZW5hbWUpOworICAgICAgZmlsZV9pbmZvX2xpc3RfYXBwZW5kKCZjb25mZmlsZXNfaGVhZCwgJmNvbmZmaWxlc190YWlsLCBjb25mZmlsZSk7CisgICAgfQorICB9CisKKyAgZmlsZV9pbmZvX2xpc3RfZnJlZShjb25mZmlsZXNfaGVhZCk7CisgIHZhcmJ1Zl9kZXN0cm95KCZjb250cm9sZmlsZSk7CisKKyAgaWYgKGZlcnJvcihjZikpCisgICAgb2hzaGl0ZShfKCJlcnJvciByZWFkaW5nIGNvbmZmaWxlcyBmaWxlIikpOworICBmY2xvc2UoY2YpOworfQorCitzdGF0aWMgY29uc3QgY2hhciAqYXJiaXRyYXJ5X2ZpZWxkc1tdID0geworICAiQnVpbHQtVXNpbmciLAorICAiUGFja2FnZS1UeXBlIiwKKyAgIlN1YmFyY2hpdGVjdHVyZSIsCisgICJLZXJuZWwtVmVyc2lvbiIsCisgICJJbnN0YWxsZXItTWVudS1JdGVtIiwKKyAgIkhvbWVwYWdlIiwKKyAgIlRhZyIsCisgIE5VTEwKK307CisKK3N0YXRpYyBjb25zdCBjaGFyIHByaXZhdGVfcHJlZml4W10gPSAiUHJpdmF0ZS0iOworCitzdGF0aWMgYm9vbAora25vd25fYXJiaXRyYXJ5X2ZpZWxkKGNvbnN0IHN0cnVjdCBhcmJpdHJhcnlmaWVsZCAqZmllbGQpCit7CisgIGNvbnN0IGNoYXIgKiprbm93bjsKKworICAvKiBBbHdheXMgYWNjZXB0IGZpZWxkcyBzdGFydGluZyB3aXRoIGEgcHJpdmF0ZSBmaWVsZCBwcmVmaXguICovCisgIGlmIChzdHJuY2FzZWNtcChmaWVsZC0+bmFtZSwgcHJpdmF0ZV9wcmVmaXgsIHN0cmxlbihwcml2YXRlX3ByZWZpeCkpID09IDApCisgICAgcmV0dXJuIHRydWU7CisKKyAgZm9yIChrbm93biA9IGFyYml0cmFyeV9maWVsZHM7ICprbm93bjsga25vd24rKykKKyAgICBpZiAoc3RyY2FzZWNtcChmaWVsZC0+bmFtZSwgKmtub3duKSA9PSAwKQorICAgICAgcmV0dXJuIHRydWU7CisKKyAgcmV0dXJuIGZhbHNlOworfQorCisvKioKKyAqIFBlcmZvcm0gc29tZSBzYW5pdHkgY2hlY2tzIG9uIHRoZSB0by1iZS1idWlsdCBwYWNrYWdlLgorICoKKyAqIEByZXR1cm4gVGhlIHBrZ2luZm8gc3RydWN0IGZyb20gdGhlIHBhcnNlZCBjb250cm9sIGZpbGUuCisgKi8KK3N0YXRpYyBzdHJ1Y3QgcGtnaW5mbyAqCitjaGVja19uZXdfcGtnKGNvbnN0IGNoYXIgKmRpcikKK3sKKyAgc3RydWN0IHBrZ2luZm8gKnBrZzsKKyAgc3RydWN0IGFyYml0cmFyeWZpZWxkICpmaWVsZDsKKyAgY2hhciAqY29udHJvbGZpbGU7CisgIGludCB3YXJuczsKKworICAvKiBTdGFydCBieSByZWFkaW5nIGluIHRoZSBjb250cm9sIGZpbGUgc28gd2UgY2FuIGNoZWNrIGl0cyBjb250ZW50cy4gKi8KKyAgbV9hc3ByaW50ZigmY29udHJvbGZpbGUsICIlcy8lcy8lcyIsIGRpciwgQlVJTERDT05UUk9MRElSLCBDT05UUk9MRklMRSk7CisgIHBhcnNlZGIoY29udHJvbGZpbGUsIHBkYl9yZWNvcmRhdmFpbGFibGUgfCBwZGJfcmVqZWN0c3RhdHVzLCAmcGtnKTsKKworICBpZiAoc3Ryc3BuKHBrZy0+bmFtZSwgImFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OSstLiIpICE9CisgICAgICBzdHJsZW4ocGtnLT5uYW1lKSkKKyAgICBvaHNoaXQoXygicGFja2FnZSBuYW1lIGhhcyBjaGFyYWN0ZXJzIHRoYXQgYXJlbid0IGxvd2VyY2FzZSBhbHBoYW51bXMgb3IgYC0rLiciKSk7CisgIGlmIChwa2ctPnByaW9yaXR5ID09IHByaV9vdGhlcikKKyAgICB3YXJuaW5nKF8oIiclcycgY29udGFpbnMgdXNlci1kZWZpbmVkIFByaW9yaXR5IHZhbHVlICclcyciKSwKKyAgICAgICAgICAgIGNvbnRyb2xmaWxlLCBwa2ctPm90aGVycHJpb3JpdHkpOworICBmb3IgKGZpZWxkID0gcGtnLT5hdmFpbGFibGUuYXJiczsgZmllbGQ7IGZpZWxkID0gZmllbGQtPm5leHQpIHsKKyAgICBpZiAoa25vd25fYXJiaXRyYXJ5X2ZpZWxkKGZpZWxkKSkKKyAgICAgIGNvbnRpbnVlOworCisgICAgd2FybmluZyhfKCInJXMnIGNvbnRhaW5zIHVzZXItZGVmaW5lZCBmaWVsZCAnJXMnIiksIGNvbnRyb2xmaWxlLAorICAgICAgICAgICAgZmllbGQtPm5hbWUpOworICB9CisKKyAgZnJlZShjb250cm9sZmlsZSk7CisKKyAgY2hlY2tfZmlsZV9wZXJtcyhkaXIpOworICBjaGVja19jb25mZmlsZXMoZGlyKTsKKworICB3YXJucyA9IHdhcm5pbmdfZ2V0X2NvdW50KCk7CisgIGlmICh3YXJucykKKyAgICB3YXJuaW5nKFBfKCJpZ25vcmluZyAlZCB3YXJuaW5nIGFib3V0IHRoZSBjb250cm9sIGZpbGUocylcbiIsCisgICAgICAgICAgICAgICAiaWdub3JpbmcgJWQgd2FybmluZ3MgYWJvdXQgdGhlIGNvbnRyb2wgZmlsZShzKVxuIiwgd2FybnMpLAorICAgICAgICAgICAgd2FybnMpOworCisgIHJldHVybiBwa2c7Cit9CisKKy8qKgorICogR2VuZXJhdGUgdGhlIHBhdGhuYW1lIGZvciB0aGUgdG8tYmUtYnVpbHQgcGFja2FnZS4KKyAqCisgKiBAcmV0dXJuIFRoZSBwYXRobmFtZSBmb3IgdGhlIHBhY2thZ2UgYmVpbmcgYnVpbHQuCisgKi8KK3N0YXRpYyBjaGFyICoKK3BrZ19nZXRfcGF0aG5hbWUoY29uc3QgY2hhciAqZGlyLCBzdHJ1Y3QgcGtnaW5mbyAqcGtnKQoreworICBjaGFyICpwYXRoOworICBjb25zdCBjaGFyICp2ZXJzaW9uc3RyaW5nLCAqYXJjaF9zZXA7CisKKyAgdmVyc2lvbnN0cmluZyA9IHZlcnNpb25kZXNjcmliZSgmcGtnLT5hdmFpbGFibGUudmVyc2lvbiwgdmRld19uZXZlcik7CisgIGFyY2hfc2VwID0gcGtnLT5hdmFpbGFibGUuYXJjaFswXSA9PSAnXDAnID8gIiIgOiAiXyI7CisgIG1fYXNwcmludGYoJnBhdGgsICIlcy8lc18lcyVzJXMlcyIsIGRpciwgcGtnLT5uYW1lLCB2ZXJzaW9uc3RyaW5nLAorICAgICAgICAgICAgIGFyY2hfc2VwLCBwa2ctPmF2YWlsYWJsZS5hcmNoLCBERUJFWFQpOworCisgIHJldHVybiBwYXRoOworfQorCisvKioKKyAqIE92ZXJseSBjb21wbGV4IGZ1bmN0aW9uIHRoYXQgYnVpbGRzIGEgLmRlYiBmaWxlLgorICovCitpbnQKK2RvX2J1aWxkKGNvbnN0IGNoYXIgKmNvbnN0ICphcmd2KQoreworICBjb25zdCBjaGFyICpkZWJhciwgKmRpcjsKKyAgYm9vbCBzdWJkaXI7CisgIGNoYXIgKnRmYnVmOworICBpbnQgYXJmZDsKKyAgaW50IHAxWzJdLCBwMlsyXSwgcDNbMl0sIGd6ZmQ7CisgIHBpZF90IGMxLGMyLGMzOworICBzdHJ1Y3QgZmlsZV9pbmZvICpmaTsKKyAgc3RydWN0IGZpbGVfaW5mbyAqc3ltbGlzdCA9IE5VTEw7CisgIHN0cnVjdCBmaWxlX2luZm8gKnN5bWxpc3RfZW5kID0gTlVMTDsKKworICAvKiBEZWNvZGUgb3VyIGFyZ3VtZW50cy4gKi8KKyAgZGlyID0gKmFyZ3YrKzsKKyAgaWYgKCFkaXIpCisgICAgYmFkdXNhZ2UoXygiLS0lcyBuZWVkcyBhIDxkaXJlY3Rvcnk+IGFyZ3VtZW50IiksIGNpcGFjdGlvbi0+b2xvbmcpOworICBzdWJkaXIgPSBmYWxzZTsKKyAgZGViYXIgPSAqYXJndisrOworICBpZiAoZGViYXIgIT0gTlVMTCkgeworICAgIHN0cnVjdCBzdGF0IGRlYmFyc3RhYjsKKworICAgIGlmICgqYXJndikgYmFkdXNhZ2UoXygiLS1idWlsZCB0YWtlcyBhdCBtb3N0IHR3byBhcmd1bWVudHMiKSk7CisKKyAgICBpZiAoc3RhdChkZWJhciwgJmRlYmFyc3RhYikpIHsKKyAgICAgIGlmIChlcnJubyAhPSBFTk9FTlQpCisgICAgICAgIG9oc2hpdGUoXygidW5hYmxlIHRvIGNoZWNrIGZvciBleGlzdGVuY2Ugb2YgYXJjaGl2ZSBgJS4yNTBzJyIpLCBkZWJhcik7CisgICAgfSBlbHNlIGlmIChTX0lTRElSKGRlYmFyc3RhYi5zdF9tb2RlKSkgeworICAgICAgc3ViZGlyID0gdHJ1ZTsKKyAgICB9CisgIH0gZWxzZSB7CisgICAgY2hhciAqbTsKKworICAgIG09IG1fbWFsbG9jKHN0cmxlbihkaXIpICsgc2l6ZW9mKERFQkVYVCkpOworICAgIHN0cmNweShtLCBkaXIpOworICAgIHBhdGhfdHJpbV9zbGFzaF9zbGFzaGRvdChtKTsKKyAgICBzdHJjYXQobSwgREVCRVhUKTsKKyAgICBkZWJhcj0gbTsKKyAgfQorCisgIC8qIFBlcmZvcm0gc29tZSBzYW5pdHkgY2hlY2tzIG9uIHRoZSB0by1iZS1idWlsZCBwYWNrYWdlLiAqLworICBpZiAobm9jaGVja2ZsYWcpIHsKKyAgICBpZiAoc3ViZGlyKQorICAgICAgb2hzaGl0KF8oInRhcmdldCBpcyBkaXJlY3RvcnkgLSBjYW5ub3Qgc2tpcCBjb250cm9sIGZpbGUgY2hlY2siKSk7CisgICAgd2FybmluZyhfKCJub3QgY2hlY2tpbmcgY29udGVudHMgb2YgY29udHJvbCBhcmVhLiIpKTsKKyAgICBwcmludGYoXygiZHBrZy1kZWI6IGJ1aWxkaW5nIGFuIHVua25vd24gcGFja2FnZSBpbiAnJXMnLlxuIiksIGRlYmFyKTsKKyAgfSBlbHNlIHsKKyAgICBzdHJ1Y3QgcGtnaW5mbyAqcGtnOworCisgICAgcGtnID0gY2hlY2tfbmV3X3BrZyhkaXIpOworICAgIGlmIChzdWJkaXIpCisgICAgICBkZWJhciA9IHBrZ19nZXRfcGF0aG5hbWUoZGViYXIsIHBrZyk7CisgICAgcHJpbnRmKF8oImRwa2ctZGViOiBidWlsZGluZyBwYWNrYWdlIGAlcycgaW4gYCVzJy5cbiIpLCBwa2ctPm5hbWUsIGRlYmFyKTsKKyAgfQorICBtX291dHB1dChzdGRvdXQsIF8oIjxzdGFuZGFyZCBvdXRwdXQ+IikpOworCisgIC8qIE5vdyB0aGF0IHdlIGhhdmUgdmVyaWZpZWQgZXZlcnl0aGluZyBpdHMgdGltZSB0byBhY3R1YWxseQorICAgKiBidWlsZCBzb21ldGhpbmcuIExldCdzIHN0YXJ0IGJ5IG1ha2luZyB0aGUgYXItd3JhcHBlci4gKi8KKyAgYXJmZCA9IGNyZWF0KGRlYmFyLCAwNjQ0KTsKKyAgaWYgKGFyZmQgPCAwKQorICAgIG9oc2hpdGUoXygidW5hYmxlIHRvIGNyZWF0ZSBgJS4yNTVzJyIpLCBkZWJhcik7CisgIC8qIEZvcmsgYSB0YXIgdG8gcGFja2FnZSB0aGUgY29udHJvbC1zZWN0aW9uIG9mIHRoZSBwYWNrYWdlLiAqLworICB1bnNldGVudigiVEFSX09QVElPTlMiKTsKKyAgbV9waXBlKHAxKTsKKyAgYzEgPSBzdWJwcm9jX2ZvcmsoKTsKKyAgaWYgKCFjMSkgeworICAgIG1fZHVwMihwMVsxXSwxKTsgY2xvc2UocDFbMF0pOyBjbG9zZShwMVsxXSk7CisgICAgaWYgKGNoZGlyKGRpcikpCisgICAgICBvaHNoaXRlKF8oImZhaWxlZCB0byBjaGRpciB0byBgJS4yNTVzJyIpLCBkaXIpOworICAgIGlmIChjaGRpcihCVUlMRENPTlRST0xESVIpKQorICAgICAgb2hzaGl0ZShfKCJmYWlsZWQgdG8gY2hkaXIgdG8gYCUuMjU1cyciKSwgIi4uLi9ERUJJQU4iKTsKKyAgICBleGVjbHAoVEFSLCAidGFyIiwgIi1jZiIsICItIiwgIi0tZm9ybWF0PWdudSIsICIuIiwgTlVMTCk7CisgICAgb2hzaGl0ZShfKCJ1bmFibGUgdG8gZXhlY3V0ZSAlcyAoJXMpIiksICJ0YXIgLWNmIiwgVEFSKTsKKyAgfQorICBjbG9zZShwMVsxXSk7CisgIC8qIENyZWF0ZSBhIHRlbXBvcmFyeSBmaWxlIHRvIHN0b3JlIHRoZSBjb250cm9sIGRhdGEgaW4uIEltbWVkaWF0ZWx5CisgICAqIHVubGluayBvdXIgdGVtcG9yYXJ5IGZpbGUgc28gb3RoZXJzIGNhbid0IG1lc3Mgd2l0aCBpdC4gKi8KKyAgdGZidWYgPSBwYXRoX21ha2VfdGVtcF90ZW1wbGF0ZSgiZHBrZy1kZWIiKTsKKyAgZ3pmZCA9IG1rc3RlbXAodGZidWYpOworICBpZiAoZ3pmZCA9PSAtMSkKKyAgICBvaHNoaXRlKF8oImZhaWxlZCB0byBtYWtlIHRlbXBvcmFyeSBmaWxlICglcykiKSwgXygiY29udHJvbCBtZW1iZXIiKSk7CisgIC8qIE1ha2Ugc3VyZSBpdCdzIGdvbmUsIHRoZSBmZCB3aWxsIHJlbWFpbiB1bnRpbCB3ZSBjbG9zZSBpdC4gKi8KKyAgaWYgKHVubGluayh0ZmJ1ZikpCisgICAgb2hzaGl0KF8oImZhaWxlZCB0byB1bmxpbmsgdGVtcG9yYXJ5IGZpbGUgKCVzKSwgJXMiKSwgXygiY29udHJvbCBtZW1iZXIiKSwKKyAgICAgICAgICAgdGZidWYpOworICBmcmVlKHRmYnVmKTsKKworICAvKiBBbmQgcnVuIGd6aXAgdG8gY29tcHJlc3Mgb3VyIGNvbnRyb2wgYXJjaGl2ZS4gKi8KKyAgYzIgPSBzdWJwcm9jX2ZvcmsoKTsKKyAgaWYgKCFjMikgeworICAgIGNvbXByZXNzX2ZpbHRlcigmY29tcHJlc3Nvcl9nemlwLCBwMVswXSwgZ3pmZCwgOSwgXygiY29udHJvbCBtZW1iZXIiKSk7CisgICAgZXhpdCgwKTsKKyAgfQorICBjbG9zZShwMVswXSk7CisgIHN1YnByb2Nfd2FpdF9jaGVjayhjMiwgImd6aXAgLTljIiwgMCk7CisgIHN1YnByb2Nfd2FpdF9jaGVjayhjMSwgInRhciAtY2YiLCAwKTsKKworICBpZiAobHNlZWsoZ3pmZCwgMCwgU0VFS19TRVQpKQorICAgIG9oc2hpdGUoXygiZmFpbGVkIHRvIHJld2luZCB0ZW1wb3JhcnkgZmlsZSAoJXMpIiksIF8oImNvbnRyb2wgbWVtYmVyIikpOworCisgIC8qIFdlIGhhdmUgb3VyIGZpcnN0IGZpbGUgZm9yIHRoZSBhci1hcmNoaXZlLiBXcml0ZSBhIGhlYWRlciBmb3IgaXQKKyAgICogdG8gdGhlIHBhY2thZ2UgYW5kIGluc2VydCBpdC4gKi8KKyAgaWYgKG9sZGZvcm1hdGZsYWcpIHsKKyAgICBzdHJ1Y3Qgc3RhdCBjb250cm9sc3RhYjsKKyAgICBjaGFyIHZlcnNpb25idWZbNDBdOworCisgICAgaWYgKGZzdGF0KGd6ZmQsICZjb250cm9sc3RhYikpCisgICAgICBvaHNoaXRlKF8oImZhaWxlZCB0byBzdGF0IHRlbXBvcmFyeSBmaWxlICglcykiKSwgXygiY29udHJvbCBtZW1iZXIiKSk7CisgICAgc3ByaW50Zih2ZXJzaW9uYnVmLCAiJS04c1xuJWpkXG4iLCBPTERBUkNISVZFVkVSU0lPTiwKKyAgICAgICAgICAgIChpbnRtYXhfdCljb250cm9sc3RhYi5zdF9zaXplKTsKKyAgICBpZiAoZmRfd3JpdGUoYXJmZCwgdmVyc2lvbmJ1Ziwgc3RybGVuKHZlcnNpb25idWYpKSA8IDApCisgICAgICBvaHNoaXRlKF8oImVycm9yIHdyaXRpbmcgYCVzJyIpLCBkZWJhcik7CisgICAgZmRfZmRfY29weShnemZkLCBhcmZkLCAtMSwgXygiY29udHJvbCBtZW1iZXIiKSk7CisgIH0gZWxzZSB7CisgICAgY29uc3QgY2hhciBkZWJfbWFnaWNbXSA9IEFSQ0hJVkVWRVJTSU9OICJcbiI7CisKKyAgICBkcGtnX2FyX3B1dF9tYWdpYyhkZWJhciwgYXJmZCk7CisgICAgZHBrZ19hcl9tZW1iZXJfcHV0X21lbShkZWJhciwgYXJmZCwgREVCTUFHSUMsIGRlYl9tYWdpYywgc3RybGVuKGRlYl9tYWdpYykpOworICAgIGRwa2dfYXJfbWVtYmVyX3B1dF9maWxlKGRlYmFyLCBhcmZkLCBBRE1JTk1FTUJFUiwgZ3pmZCwgLTEpOworICB9CisgIGNsb3NlKGd6ZmQpOworCisgIC8qIENvbnRyb2wgaXMgZG9uZSwgbm93IHdlIG5lZWQgdG8gYXJjaGl2ZSB0aGUgZGF0YS4gKi8KKyAgaWYgKG9sZGZvcm1hdGZsYWcpIHsKKyAgICAvKiBJbiBvbGQgZm9ybWF0LCB0aGUgZGF0YSBtZW1iZXIgaXMganVzdCBjb25jYXRlbmF0ZWQgYWZ0ZXIgdGhlCisgICAgICogY29udHJvbCBtZW1iZXIsIHNvIHdlIGRvIG5vdCBuZWVkIGEgdGVtcG9yYXJ5IGZpbGUgYW5kIGNhbiB1c2UKKyAgICAgKiB0aGUgY29tcHJlc3Npb24gZmlsZSBkZXNjcmlwdG9yLiAqLworICAgIGd6ZmQgPSBhcmZkOworICB9IGVsc2UgeworICAgIC8qIFN0YXJ0IGJ5IGNyZWF0aW5nIGEgbmV3IHRlbXBvcmFyeSBmaWxlLiBJbW1lZGlhdGVseSB1bmxpbmsgdGhlCisgICAgICogdGVtcG9yYXJ5IGZpbGUgc28gb3RoZXJzIGNhbid0IG1lc3Mgd2l0aCBpdC4gKi8KKyAgICB0ZmJ1ZiA9IHBhdGhfbWFrZV90ZW1wX3RlbXBsYXRlKCJkcGtnLWRlYiIpOworICAgIGd6ZmQgPSBta3N0ZW1wKHRmYnVmKTsKKyAgICBpZiAoZ3pmZCA9PSAtMSkKKyAgICAgIG9oc2hpdGUoXygiZmFpbGVkIHRvIG1ha2UgdGVtcG9yYXJ5IGZpbGUgKCVzKSIpLCBfKCJkYXRhIG1lbWJlciIpKTsKKyAgICAvKiBNYWtlIHN1cmUgaXQncyBnb25lLCB0aGUgZmQgd2lsbCByZW1haW4gdW50aWwgd2UgY2xvc2UgaXQuICovCisgICAgaWYgKHVubGluayh0ZmJ1ZikpCisgICAgICBvaHNoaXQoXygiZmFpbGVkIHRvIHVubGluayB0ZW1wb3JhcnkgZmlsZSAoJXMpLCAlcyIpLCBfKCJkYXRhIG1lbWJlciIpLAorICAgICAgICAgICAgIHRmYnVmKTsKKyAgICBmcmVlKHRmYnVmKTsKKyAgfQorICAvKiBGb3JrIG9mZiBhIHRhci4gV2Ugd2lsbCBmZWVkIGl0IGEgbGlzdCBvZiBmaWxlbmFtZXMgb24gc3RkaW4gbGF0ZXIuICovCisgIG1fcGlwZShwMSk7CisgIG1fcGlwZShwMik7CisgIGMxID0gc3VicHJvY19mb3JrKCk7CisgIGlmICghYzEpIHsKKyAgICBtX2R1cDIocDFbMF0sMCk7IGNsb3NlKHAxWzBdKTsgY2xvc2UocDFbMV0pOworICAgIG1fZHVwMihwMlsxXSwxKTsgY2xvc2UocDJbMF0pOyBjbG9zZShwMlsxXSk7CisgICAgaWYgKGNoZGlyKGRpcikpCisgICAgICBvaHNoaXRlKF8oImZhaWxlZCB0byBjaGRpciB0byBgJS4yNTVzJyIpLCBkaXIpOworICAgIGV4ZWNscChUQVIsICJ0YXIiLCAiLWNmIiwgIi0iLCAiLS1mb3JtYXQ9Z251IiwgIi0tbnVsbCIsICItVCIsICItIiwgIi0tbm8tcmVjdXJzaW9uIiwgTlVMTCk7CisgICAgb2hzaGl0ZShfKCJ1bmFibGUgdG8gZXhlY3V0ZSAlcyAoJXMpIiksICJ0YXIgLWNmIiwgVEFSKTsKKyAgfQorICBjbG9zZShwMVswXSk7CisgIGNsb3NlKHAyWzFdKTsKKyAgLyogT2YgY291cnNlIHdlIHNob3VsZCBub3QgZm9yZ2V0IHRvIGNvbXByZXNzIHRoZSBhcmNoaXZlIGFzIHdlbGwuICovCisgIGMyID0gc3VicHJvY19mb3JrKCk7CisgIGlmICghYzIpIHsKKyAgICBjbG9zZShwMVsxXSk7CisgICAgY29tcHJlc3NfZmlsdGVyKGNvbXByZXNzb3IsIHAyWzBdLCBnemZkLCBjb21wcmVzc19sZXZlbCwgXygiZGF0YSBtZW1iZXIiKSk7CisgICAgZXhpdCgwKTsKKyAgfQorICBjbG9zZShwMlswXSk7CisKKyAgLyogQWxsIHRoZSBwaXBlcyBhcmUgc2V0LCBub3cgbGV0cyBydW4gZmluZCwgYW5kIHN0YXJ0IGZlZWRpbmcKKyAgICogZmlsZW5hbWVzIHRvIHRhci4gKi8KKyAgbV9waXBlKHAzKTsKKyAgYzMgPSBzdWJwcm9jX2ZvcmsoKTsKKyAgaWYgKCFjMykgeworICAgIG1fZHVwMihwM1sxXSwxKTsgY2xvc2UocDNbMF0pOyBjbG9zZShwM1sxXSk7CisgICAgaWYgKGNoZGlyKGRpcikpCisgICAgICBvaHNoaXRlKF8oImZhaWxlZCB0byBjaGRpciB0byBgJS4yNTVzJyIpLCBkaXIpOworICAgIGV4ZWNscChGSU5ELCAiZmluZCIsICIuIiwgIi1wYXRoIiwgIi4vIiBCVUlMRENPTlRST0xESVIsICItcHJ1bmUiLCAiLW8iLAorICAgICAgICAgICAiLXByaW50MCIsIE5VTEwpOworICAgIG9oc2hpdGUoXygidW5hYmxlIHRvIGV4ZWN1dGUgJXMgKCVzKSIpLCAiZmluZCIsIEZJTkQpOworICB9CisgIGNsb3NlKHAzWzFdKTsKKyAgLyogV2UgbmVlZCB0byByZW9yZGVyIHRoZSBmaWxlcyBzbyB3ZSBjYW4gbWFrZSBzdXJlIHRoYXQgc3ltbGlua3MKKyAgICogd2lsbCBub3QgYXBwZWFyIGJlZm9yZSB0aGVpciB0YXJnZXQuICovCisgIHdoaWxlICgoZmkgPSBmaWxlX2luZm9fZ2V0KGRpciwgcDNbMF0pKSAhPSBOVUxMKQorICAgIGlmIChTX0lTTE5LKGZpLT5zdC5zdF9tb2RlKSkKKyAgICAgIGZpbGVfaW5mb19saXN0X2FwcGVuZCgmc3ltbGlzdCwgJnN5bWxpc3RfZW5kLCBmaSk7CisgICAgZWxzZSB7CisgICAgICBpZiAoZmRfd3JpdGUocDFbMV0sIGZpLT5mbiwgc3RybGVuKGZpLT5mbikgKyAxKSA8IDApCisgICAgICAgIG9oc2hpdGUoXygiZmFpbGVkIHRvIHdyaXRlIGZpbGVuYW1lIHRvIHRhciBwaXBlICglcykiKSwKKyAgICAgICAgICAgICAgICBfKCJkYXRhIG1lbWJlciIpKTsKKyAgICAgIGZpbGVfaW5mb19mcmVlKGZpKTsKKyAgICB9CisgIGNsb3NlKHAzWzBdKTsKKyAgc3VicHJvY193YWl0X2NoZWNrKGMzLCAiZmluZCIsIDApOworCisgIGZvciAoZmk9IHN5bWxpc3Q7Zmk7Zmk9IGZpLT5uZXh0KQorICAgIGlmIChmZF93cml0ZShwMVsxXSwgZmktPmZuLCBzdHJsZW4oZmktPmZuKSArIDEpIDwgMCkKKyAgICAgIG9oc2hpdGUoXygiZmFpbGVkIHRvIHdyaXRlIGZpbGVuYW1lIHRvIHRhciBwaXBlICglcykiKSwgXygiZGF0YSBtZW1iZXIiKSk7CisgIC8qIEFsbCBkb25lLCBjbGVhbiB1cCB3YWl0IGZvciB0YXIgYW5kIGd6aXAgdG8gZmluaXNoIHRoZWlyIGpvYi4gKi8KKyAgY2xvc2UocDFbMV0pOworICBmaWxlX2luZm9fbGlzdF9mcmVlKHN5bWxpc3QpOworICBzdWJwcm9jX3dhaXRfY2hlY2soYzIsIF8oIjxjb21wcmVzcz4gZnJvbSB0YXIgLWNmIiksIDApOworICBzdWJwcm9jX3dhaXRfY2hlY2soYzEsICJ0YXIgLWNmIiwgMCk7CisgIC8qIE9rYXksIHdlIGhhdmUgZGF0YS50YXIgYXMgd2VsbCBub3csIGFkZCBpdCB0byB0aGUgYXIgd3JhcHBlci4gKi8KKyAgaWYgKCFvbGRmb3JtYXRmbGFnKSB7CisgICAgY2hhciBkYXRhbWVtYmVyWzE2ICsgMV07CisKKyAgICBzcHJpbnRmKGRhdGFtZW1iZXIsICIlcyVzIiwgREFUQU1FTUJFUiwgY29tcHJlc3Nvci0+ZXh0ZW5zaW9uKTsKKworICAgIGlmIChsc2VlayhnemZkLCAwLCBTRUVLX1NFVCkpCisgICAgICBvaHNoaXRlKF8oImZhaWxlZCB0byByZXdpbmQgdGVtcG9yYXJ5IGZpbGUgKCVzKSIpLCBfKCJkYXRhIG1lbWJlciIpKTsKKworICAgIGRwa2dfYXJfbWVtYmVyX3B1dF9maWxlKGRlYmFyLCBhcmZkLCBkYXRhbWVtYmVyLCBnemZkLCAtMSk7CisgIH0KKyAgaWYgKGZzeW5jKGFyZmQpKQorICAgIG9oc2hpdGUoXygidW5hYmxlIHRvIHN5bmMgZmlsZSAnJXMnIiksIGRlYmFyKTsKKyAgaWYgKGNsb3NlKGFyZmQpKQorICAgIG9oc2hpdGUoXygidW5hYmxlIHRvIGNsb3NlIGZpbGUgJyVzJyIpLCBkZWJhcik7CisKKyAgcmV0dXJuIDA7Cit9CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2Rwa2ctZGViL2Rwa2ctZGViLmggYi9kcGtnLTEuMTYuMS4xL2Rwa2ctZGViL2Rwa2ctZGViLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTYwNTk2NwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZHBrZy1kZWIvZHBrZy1kZWIuaApAQCAtMCwwICsxLDczIEBACisvKgorICogZHBrZy1kZWIgLSBjb25zdHJ1Y3Rpb24gYW5kIGRlY29uc3RydWN0aW9uIG9mICouZGViIGFyY2hpdmVzCisgKiBkcGtnLWRlYi5oIC0gZXh0ZXJuYWwgZGVmaW5pdGlvbnMgZm9yIHRoaXMgcHJvZ3JhbQorICoKKyAqIENvcHlyaWdodCDCqSAxOTk0LDE5OTUgSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuZ3JlZW5lbmQub3JnLnVrPgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaWZuZGVmIERQS0dfREVCX0gKKyNkZWZpbmUgRFBLR19ERUJfSAorCithY3Rpb25fZnVuYyBkb19idWlsZDsKK2FjdGlvbl9mdW5jIGRvX2NvbnRlbnRzOworYWN0aW9uX2Z1bmMgZG9fY29udHJvbDsKK2FjdGlvbl9mdW5jIGRvX3Nob3dpbmZvOworYWN0aW9uX2Z1bmMgZG9faW5mbzsKK2FjdGlvbl9mdW5jIGRvX2ZpZWxkOworYWN0aW9uX2Z1bmMgZG9fZXh0cmFjdDsKK2FjdGlvbl9mdW5jIGRvX3ZleHRyYWN0OworYWN0aW9uX2Z1bmMgZG9fcmF3X2V4dHJhY3Q7CithY3Rpb25fZnVuYyBkb19mc3lzdGFyZmlsZTsKKworZXh0ZXJuIGludCBvcHRfdmVyYm9zZTsKK2V4dGVybiBpbnQgZGVidWdmbGFnLCBub2NoZWNrZmxhZywgb2xkZm9ybWF0ZmxhZzsKKwordm9pZCBleHRyYWN0aGFsZihjb25zdCBjaGFyICpkZWJhciwgY29uc3QgY2hhciAqZGlyLAorICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICp0YXJvcHRpb24sIGludCBhZG1pbmluZm8pOworCitleHRlcm4gY29uc3QgY2hhciogc2hvd2Zvcm1hdDsKK2V4dGVybiBzdHJ1Y3QgY29tcHJlc3NvciAqY29tcHJlc3NvcjsKK2V4dGVybiBpbnQgY29tcHJlc3NfbGV2ZWw7CisKKyNkZWZpbmUgQVJDSElWRVZFUlNJT04JCSIyLjAiCisKKyNkZWZpbmUgQlVJTERDT05UUk9MRElSCQkiREVCSUFOIgorI2RlZmluZSBFWFRSQUNUQ09OVFJPTERJUglCVUlMRENPTlRST0xESVIKKworLyogU2V0IEJVSUxET0xEUEtHRk9STUFUIHRvIDEgdG8gYnVpbGQgb2xkLWZvcm1hdCBhcmNoaXZlcyBieSBkZWZhdWx0LiAqLworI2lmbmRlZiBCVUlMRE9MRFBLR0ZPUk1BVAorI2RlZmluZSBCVUlMRE9MRFBLR0ZPUk1BVCAwCisjZW5kaWYKKworI2RlZmluZSBPTERBUkNISVZFVkVSU0lPTgkiMC45MzkwMDAiCisKKyNkZWZpbmUgT0xEREVCRElSCQkiREVCSUFOIgorI2RlZmluZSBPTERPTERERUJESVIJCSIuREVCSUFOIgorCisjZGVmaW5lIERFQk1BR0lDCQkiZGViaWFuLWJpbmFyeSIKKyNkZWZpbmUgQURNSU5NRU1CRVIJCSJjb250cm9sLnRhci5neiIKKyNkZWZpbmUgREFUQU1FTUJFUgkJImRhdGEudGFyIgorCisjZGVmaW5lIE1BWEZJTEVOQU1FIDIwNDgKKyNkZWZpbmUgTUFYRklFTEROQU1FIDIwMAorCisjaWZkZWYgUEFUSF9NQVgKKyMgZGVmaW5lIElOVEVSUFJFVEVSX01BWCBQQVRIX01BWAorI2Vsc2UKKyMgZGVmaW5lIElOVEVSUFJFVEVSX01BWCAxMDI0CisjZW5kaWYKKworI2VuZGlmIC8qIERQS0dfREVCX0ggKi8KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZHBrZy1kZWIvZXh0cmFjdC5jIGIvZHBrZy0xLjE2LjEuMS9kcGtnLWRlYi9leHRyYWN0LmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTkzNjJkYgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZHBrZy1kZWIvZXh0cmFjdC5jCkBAIC0wLDAgKzEsNDI0IEBACisvKgorICogZHBrZy1kZWIgLSBjb25zdHJ1Y3Rpb24gYW5kIGRlY29uc3RydWN0aW9uIG9mICouZGViIGFyY2hpdmVzCisgKiBleHRyYWN0LmMgLSBleHRyYWN0aW5nIGFyY2hpdmVzCisgKgorICogQ29weXJpZ2h0IMKpIDE5OTQsMTk5NSBJYW4gSmFja3NvbiA8aWFuQGNoaWFyay5ncmVlbmVuZC5vcmcudWs+CisgKgorICogVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisgKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAqIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorICovCisKKyNpbmNsdWRlIDxjb25maWcuaD4KKyNpbmNsdWRlIDxjb21wYXQuaD4KKworI2luY2x1ZGUgPHN5cy90eXBlcy5oPgorI2luY2x1ZGUgPHN5cy9zdGF0Lmg+CisjaW5jbHVkZSA8c3lzL3dhaXQuaD4KKworI2luY2x1ZGUgPGFzc2VydC5oPgorI2luY2x1ZGUgPGVycm5vLmg+CisjaW5jbHVkZSA8bGltaXRzLmg+CisjaW5jbHVkZSA8Y3R5cGUuaD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDxkaXJlbnQuaD4KKyNpbmNsdWRlIDxmY250bC5oPgorI2luY2x1ZGUgPHVuaXN0ZC5oPgorI2luY2x1ZGUgPGFyLmg+CisjaW5jbHVkZSA8c3RkYm9vbC5oPgorI2luY2x1ZGUgPHN0ZGludC5oPgorI2luY2x1ZGUgPHN0ZGxpYi5oPgorI2luY2x1ZGUgPHN0ZGlvLmg+CisKKyNpbmNsdWRlIDxkcGtnL2kxOG4uaD4KKyNpbmNsdWRlIDxkcGtnL2Rwa2cuaD4KKyNpbmNsdWRlIDxkcGtnL2ZkaW8uaD4KKyNpbmNsdWRlIDxkcGtnL2J1ZmZlci5oPgorI2luY2x1ZGUgPGRwa2cvc3VicHJvYy5oPgorI2luY2x1ZGUgPGRwa2cvY29tbWFuZC5oPgorI2luY2x1ZGUgPGRwa2cvY29tcHJlc3MuaD4KKyNpbmNsdWRlIDxkcGtnL2FyLmg+CisjaW5jbHVkZSA8ZHBrZy9vcHRpb25zLmg+CisKKyNpbmNsdWRlICJkcGtnLWRlYi5oIgorCitzdGF0aWMgdm9pZCBtb3ZlY29udHJvbGZpbGVzKGNvbnN0IGNoYXIgKnRoaW5nKSB7CisgIGNoYXIgYnVmWzIwMF07CisgIHBpZF90IHBpZDsKKworICBzcHJpbnRmKGJ1ZiwgIm12ICVzLyogLiAmJiBybWRpciAlcyIsIHRoaW5nLCB0aGluZyk7CisgIHBpZCA9IHN1YnByb2NfZm9yaygpOworICBpZiAocGlkID09IDApIHsKKyAgICBjb21tYW5kX3NoZWxsKGJ1ZiwgXygic2hlbGwgY29tbWFuZCB0byBtb3ZlIGZpbGVzIikpOworICB9CisgIHN1YnByb2Nfd2FpdF9jaGVjayhwaWQsIF8oInNoZWxsIGNvbW1hbmQgdG8gbW92ZSBmaWxlcyIpLCAwKTsKK30KKworc3RhdGljIHZvaWQgRFBLR19BVFRSX05PUkVUCityZWFkX2ZhaWwoaW50IHJjLCBjb25zdCBjaGFyICpmaWxlbmFtZSwgY29uc3QgY2hhciAqd2hhdCkKK3sKKyAgaWYgKHJjID49IDApCisgICAgb2hzaGl0KF8oInVuZXhwZWN0ZWQgZW5kIG9mIGZpbGUgaW4gJXMgaW4gJS4yNTVzIiksd2hhdCxmaWxlbmFtZSk7CisgIGVsc2UKKyAgICBvaHNoaXRlKF8oImVycm9yIHJlYWRpbmcgJXMgZnJvbSBmaWxlICUuMjU1cyIpLCB3aGF0LCBmaWxlbmFtZSk7Cit9CisKK3N0YXRpYyBzc2l6ZV90CityZWFkX2xpbmUoaW50IGZkLCBjaGFyICpidWYsIHNpemVfdCBtaW5fc2l6ZSwgc2l6ZV90IG1heF9zaXplKQoreworICBzc2l6ZV90IGxpbmVfc2l6ZSA9IDA7CisgIHNpemVfdCBuID0gbWluX3NpemU7CisKKyAgd2hpbGUgKGxpbmVfc2l6ZSA8IChzc2l6ZV90KW1heF9zaXplKSB7CisgICAgc3NpemVfdCByOworICAgIGNoYXIgKm5sOworCisgICAgciA9IGZkX3JlYWQoZmQsIGJ1ZiArIGxpbmVfc2l6ZSwgbik7CisgICAgaWYgKHIgPD0gMCkKKyAgICAgIHJldHVybiByOworCisgICAgbmwgPSBzdHJjaHIoYnVmICsgbGluZV9zaXplLCAnXG4nKTsKKyAgICBsaW5lX3NpemUgKz0gcjsKKworICAgIGlmIChubCAhPSBOVUxMKSB7CisgICAgICBubFsxXSA9ICdcMCc7CisgICAgICByZXR1cm4gbGluZV9zaXplOworICAgIH0KKworICAgIG4gPSAxOworICB9CisKKyAgYnVmW2xpbmVfc2l6ZV0gPSAnXDAnOworICByZXR1cm4gbGluZV9zaXplOworfQorCit2b2lkCitleHRyYWN0aGFsZihjb25zdCBjaGFyICpkZWJhciwgY29uc3QgY2hhciAqZGlyLCBjb25zdCBjaGFyICp0YXJvcHRpb24sCisgICAgICAgICAgICBpbnQgYWRtaW5pbmZvKQoreworICBjaGFyIHZlcnNpb25idWZbNDBdOworICBmbG9hdCB2ZXJzaW9ubnVtOworICBvZmZfdCBjdHJsbGVubnVtLCBtZW1iZXJsZW4gPSAwOworICBzc2l6ZV90IHI7CisgIGludCBkdW1teTsKKyAgcGlkX3QgYzE9MCxjMixjMzsKKyAgaW50IHAxWzJdLCBwMlsyXTsKKyAgaW50IHAyX291dDsKKyAgaW50IGFyZmQ7CisgIHN0cnVjdCBzdGF0IHN0YWI7CisgIGNoYXIgbmxjOworICBpbnQgYWRtaW5tZW1iZXI7CisgIGJvb2wgb2xkZm9ybWF0LCBoZWFkZXJfZG9uZTsKKyAgc3RydWN0IGNvbXByZXNzb3IgKmRlY29tcHJlc3NvciA9ICZjb21wcmVzc29yX2d6aXA7CisKKyAgYXJmZCA9IG9wZW4oZGViYXIsIE9fUkRPTkxZKTsKKyAgaWYgKGFyZmQgPCAwKQorICAgIG9oc2hpdGUoXygiZmFpbGVkIHRvIHJlYWQgYXJjaGl2ZSBgJS4yNTVzJyIpLCBkZWJhcik7CisgIGlmIChmc3RhdChhcmZkLCAmc3RhYikpCisgICAgb2hzaGl0ZShfKCJmYWlsZWQgdG8gZnN0YXQgYXJjaGl2ZSIpKTsKKworICByID0gcmVhZF9saW5lKGFyZmQsIHZlcnNpb25idWYsIHN0cmxlbihEUEtHX0FSX01BR0lDKSwgc2l6ZW9mKHZlcnNpb25idWYpKTsKKyAgaWYgKHIgPCAwKQorICAgIHJlYWRfZmFpbChyLCBkZWJhciwgXygiYXJjaGl2ZSBtYWdpYyB2ZXJzaW9uIG51bWJlciIpKTsKKworICBpZiAoIXN0cmNtcCh2ZXJzaW9uYnVmLCBEUEtHX0FSX01BR0lDKSkgeworICAgIG9sZGZvcm1hdCA9IGZhbHNlOworCisgICAgY3RybGxlbm51bT0gMDsKKyAgICBoZWFkZXJfZG9uZSA9IGZhbHNlOworICAgIGZvciAoOzspIHsKKyAgICAgIHN0cnVjdCBhcl9oZHIgYXJoOworCisgICAgICByID0gZmRfcmVhZChhcmZkLCAmYXJoLCBzaXplb2YoYXJoKSk7CisgICAgICBpZiAociAhPSBzaXplb2YoYXJoKSkKKyAgICAgICAgcmVhZF9mYWlsKHIsIGRlYmFyLCBfKCJhcmNoaXZlIG1lbWJlciBoZWFkZXIiKSk7CisKKyAgICAgIGRwa2dfYXJfbm9ybWFsaXplX25hbWUoJmFyaCk7CisKKyAgICAgIGlmIChtZW1jbXAoYXJoLmFyX2ZtYWcsQVJGTUFHLHNpemVvZihhcmguYXJfZm1hZykpKQorICAgICAgICBvaHNoaXQoXygiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIGFyY2hpdmUgaGVhZGVyIG1hZ2ljIiksIGRlYmFyKTsKKyAgICAgIG1lbWJlcmxlbiA9IGRwa2dfYXJfbWVtYmVyX2dldF9zaXplKGRlYmFyLCAmYXJoKTsKKyAgICAgIGlmICghaGVhZGVyX2RvbmUpIHsKKyAgICAgICAgY2hhciAqaW5mb2J1ZjsKKyAgICAgICAgY2hhciAqY3VyOworCisgICAgICAgIGlmIChzdHJuY21wKGFyaC5hcl9uYW1lLCBERUJNQUdJQywgc2l6ZW9mKGFyaC5hcl9uYW1lKSkgIT0gMCkKKyAgICAgICAgICBvaHNoaXQoXygiZmlsZSBgJS4yNTBzJyBpcyBub3QgYSBkZWJpYW4gYmluYXJ5IGFyY2hpdmUgKHRyeSBkcGtnLXNwbGl0PykiKSxkZWJhcik7CisgICAgICAgIGluZm9idWY9IG1fbWFsbG9jKG1lbWJlcmxlbisxKTsKKyAgICAgICAgciA9IGZkX3JlYWQoYXJmZCwgaW5mb2J1ZiwgbWVtYmVybGVuICsgKG1lbWJlcmxlbiAmIDEpKTsKKyAgICAgICAgaWYgKHIgIT0gKG1lbWJlcmxlbiArIChtZW1iZXJsZW4gJiAxKSkpCisgICAgICAgICAgcmVhZF9mYWlsKHIsIGRlYmFyLCBfKCJhcmNoaXZlIGluZm9ybWF0aW9uIGhlYWRlciBtZW1iZXIiKSk7CisgICAgICAgIGluZm9idWZbbWVtYmVybGVuXSA9ICdcMCc7CisgICAgICAgIGN1cj0gc3RyY2hyKGluZm9idWYsJ1xuJyk7CisgICAgICAgIGlmICghY3VyKSBvaHNoaXQoXygiYXJjaGl2ZSBoYXMgbm8gbmV3bGluZXMgaW4gaGVhZGVyIikpOworICAgICAgICAqY3VyID0gJ1wwJzsKKyAgICAgICAgY3VyPSBzdHJjaHIoaW5mb2J1ZiwnLicpOworICAgICAgICBpZiAoIWN1cikgb2hzaGl0KF8oImFyY2hpdmUgaGFzIG5vIGRvdCBpbiB2ZXJzaW9uIG51bWJlciIpKTsKKyAgICAgICAgKmN1ciA9ICdcMCc7CisgICAgICAgIGlmIChzdHJjbXAoaW5mb2J1ZiwiMiIpKQorICAgICAgICAgIG9oc2hpdChfKCJhcmNoaXZlIHZlcnNpb24gJS4yNTBzIG5vdCB1bmRlcnN0b29kLCBnZXQgbmV3ZXIgZHBrZy1kZWIiKSwgaW5mb2J1Zik7CisgICAgICAgICpjdXI9ICcuJzsKKyAgICAgICAgc3RybmNweSh2ZXJzaW9uYnVmLGluZm9idWYsc2l6ZW9mKHZlcnNpb25idWYpKTsKKyAgICAgICAgdmVyc2lvbmJ1ZltzaXplb2YodmVyc2lvbmJ1ZikgLSAxXSA9ICdcMCc7CisgICAgICAgIGZyZWUoaW5mb2J1Zik7CisKKyAgICAgICAgaGVhZGVyX2RvbmUgPSB0cnVlOworICAgICAgfSBlbHNlIGlmIChhcmguYXJfbmFtZVswXSA9PSAnXycpIHsKKyAgICAgICAgLyogTWVtYmVycyB3aXRoIOKAmF/igJkgYXJlIG5vbmNyaXRpY2FsLCBhbmQgaWYgd2UgZG9uJ3QgdW5kZXJzdGFuZAorICAgICAgICAgKiB0aGVtIHdlIHNraXAgdGhlbS4gKi8KKyAgICAgICAgZmRfc2tpcChhcmZkLCBtZW1iZXJsZW4gKyAobWVtYmVybGVuICYgMSksCisgICAgICAgICAgICAgICAgXygic2tpcHBlZCBhcmNoaXZlIG1lbWJlciBkYXRhIGZyb20gJXMiKSwgZGViYXIpOworICAgICAgfSBlbHNlIHsKKwlpZiAoc3RybmNtcChhcmguYXJfbmFtZSwgQURNSU5NRU1CRVIsIHNpemVvZihhcmguYXJfbmFtZSkpID09IDApCisJICBhZG1pbm1lbWJlciA9IDE7CisJZWxzZSB7CisJICBhZG1pbm1lbWJlciA9IC0xOworCisJICBpZiAoc3RybmNtcChhcmguYXJfbmFtZSwgREFUQU1FTUJFUiwgc3RybGVuKERBVEFNRU1CRVIpKSA9PSAwKSB7CisJICAgIGNvbnN0IGNoYXIgKmV4dGVuc2lvbiA9IGFyaC5hcl9uYW1lICsgc3RybGVuKERBVEFNRU1CRVIpOworCisJICAgIGFkbWlubWVtYmVyPSAwOworCSAgICBkZWNvbXByZXNzb3IgPSBjb21wcmVzc29yX2ZpbmRfYnlfZXh0ZW5zaW9uKGV4dGVuc2lvbik7CisJICB9CisKKyAgICAgICAgICBpZiAoYWRtaW5tZW1iZXIgPT0gLTEgfHwgZGVjb21wcmVzc29yID09IE5VTEwpCisgICAgICAgICAgICBvaHNoaXQoXygiYXJjaGl2ZSAnJS4yNTBzJyBjb250YWlucyBub3QgdW5kZXJzdG9vZCBkYXRhIG1lbWJlciAlLipzLCBnaXZpbmcgdXAiKSwKKyAgICAgICAgICAgICAgICAgICBkZWJhciwgKGludClzaXplb2YoYXJoLmFyX25hbWUpLCBhcmguYXJfbmFtZSk7CisgICAgICAgIH0KKyAgICAgICAgaWYgKGFkbWlubWVtYmVyID09IDEpIHsKKyAgICAgICAgICBpZiAoY3RybGxlbm51bSAhPSAwKQorICAgICAgICAgICAgb2hzaGl0KF8oImFyY2hpdmUgJyUuMjUwcycgY29udGFpbnMgdHdvIGNvbnRyb2wgbWVtYmVycywgZ2l2aW5nIHVwIiksCisgICAgICAgICAgICAgICAgICAgZGViYXIpOworICAgICAgICAgIGN0cmxsZW5udW09IG1lbWJlcmxlbjsKKyAgICAgICAgfQorICAgICAgICBpZiAoIWFkbWlubWVtYmVyICE9ICFhZG1pbmluZm8pIHsKKyAgICAgICAgICBmZF9za2lwKGFyZmQsIG1lbWJlcmxlbiArIChtZW1iZXJsZW4gJiAxKSwKKyAgICAgICAgICAgICAgICAgIF8oInNraXBwZWQgYXJjaGl2ZSBtZW1iZXIgZGF0YSBmcm9tICVzIiksIGRlYmFyKTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAvKiBZZXMhIC0gZm91bmQgaXQuICovCisgICAgICAgICAgYnJlYWs7CisgICAgICAgIH0KKyAgICAgIH0KKyAgICB9CisKKyAgICBpZiAoYWRtaW5pbmZvID49IDIpIHsKKyAgICAgIHByaW50ZihfKCIgbmV3IGRlYmlhbiBwYWNrYWdlLCB2ZXJzaW9uICVzLlxuIgorICAgICAgICAgICAgICAgIiBzaXplICVqZCBieXRlczogY29udHJvbCBhcmNoaXZlPSAlamQgYnl0ZXMuXG4iKSwKKyAgICAgICAgICAgICB2ZXJzaW9uYnVmLCAoaW50bWF4X3Qpc3RhYi5zdF9zaXplLCAoaW50bWF4X3QpY3RybGxlbm51bSk7CisgICAgICBtX291dHB1dChzdGRvdXQsIF8oIjxzdGFuZGFyZCBvdXRwdXQ+IikpOworICAgIH0KKyAgfSBlbHNlIGlmICghc3RybmNtcCh2ZXJzaW9uYnVmLCIwLjkzIiw0KSAmJgorICAgICAgICAgICAgIHNzY2FuZih2ZXJzaW9uYnVmLCIlZiVjJWQiLCZ2ZXJzaW9ubnVtLCZubGMsJmR1bW15KSA9PSAyICYmCisgICAgICAgICAgICAgbmxjID09ICdcbicpIHsKKyAgICBjaGFyIGN0cmxsZW5idWZbNDBdOworICAgIGludCBsID0gMDsKKworICAgIG9sZGZvcm1hdCA9IHRydWU7CisgICAgbCA9IHN0cmxlbih2ZXJzaW9uYnVmKTsKKyAgICBpZiAobCAmJiB2ZXJzaW9uYnVmW2wgLSAxXSA9PSAnXG4nKQorICAgICAgdmVyc2lvbmJ1ZltsIC0gMV0gPSAnXDAnOworCisgICAgciA9IHJlYWRfbGluZShhcmZkLCBjdHJsbGVuYnVmLCAxLCBzaXplb2YoY3RybGxlbmJ1ZikpOworICAgIGlmIChyIDwgMCkKKyAgICAgIHJlYWRfZmFpbChyLCBkZWJhciwgXygiYXJjaGl2ZSBjb250cm9sIG1lbWJlciBzaXplIikpOworICAgIGlmIChzc2NhbmYoY3RybGxlbmJ1ZiwgIiVqZCVjJWQiLCAmY3RybGxlbm51bSwgJm5sYywgJmR1bW15KSAhPSAyIHx8CisgICAgICAgIG5sYyAhPSAnXG4nKQorICAgICAgb2hzaGl0KF8oImFyY2hpdmUgaGFzIG1hbGZvcm1hdHRlZCBjb250cm9sIG1lbWJlciBzaXplICclcyciKSwgY3RybGxlbmJ1Zik7CisKKyAgICBpZiAoYWRtaW5pbmZvKSB7CisgICAgICBtZW1iZXJsZW4gPSBjdHJsbGVubnVtOworICAgIH0gZWxzZSB7CisgICAgICBtZW1iZXJsZW4gPSBzdGFiLnN0X3NpemUgLSBjdHJsbGVubnVtIC0gc3RybGVuKGN0cmxsZW5idWYpIC0gbDsKKyAgICAgIGZkX3NraXAoYXJmZCwgY3RybGxlbm51bSwKKyAgICAgICAgICAgICAgXygic2tpcHBlZCBhcmNoaXZlIGNvbnRyb2wgbWVtYmVyIGRhdGEgZnJvbSAlcyIpLCBkZWJhcik7CisgICAgfQorCisgICAgaWYgKGFkbWluaW5mbyA+PSAyKSB7CisgICAgICBwcmludGYoXygiIG9sZCBkZWJpYW4gcGFja2FnZSwgdmVyc2lvbiAlcy5cbiIKKyAgICAgICAgICAgICAgICIgc2l6ZSAlamQgYnl0ZXM6IGNvbnRyb2wgYXJjaGl2ZT0gJWpkLCBtYWluIGFyY2hpdmU9ICVqZC5cbiIpLAorICAgICAgICAgICAgIHZlcnNpb25idWYsIChpbnRtYXhfdClzdGFiLnN0X3NpemUsIChpbnRtYXhfdCljdHJsbGVubnVtLAorICAgICAgICAgICAgIChpbnRtYXhfdCkoc3RhYi5zdF9zaXplIC0gY3RybGxlbm51bSAtIHN0cmxlbihjdHJsbGVuYnVmKSAtIGwpKTsKKyAgICAgIG1fb3V0cHV0KHN0ZG91dCwgXygiPHN0YW5kYXJkIG91dHB1dD4iKSk7CisgICAgfQorICB9IGVsc2UgeworICAgIGlmICghc3RybmNtcCh2ZXJzaW9uYnVmLCIhPGFyY2g+Iiw3KSkgeworICAgICAgZnByaW50ZihzdGRlcnIsCisgICAgICAgICAgICAgIF8oImRwa2ctZGViOiBmaWxlIGxvb2tzIGxpa2UgaXQgbWlnaHQgYmUgYW4gYXJjaGl2ZSB3aGljaCBoYXMgYmVlblxuIgorICAgICAgICAgICAgICAgICJkcGtnLWRlYjogICAgY29ycnVwdGVkIGJ5IGJlaW5nIGRvd25sb2FkZWQgaW4gQVNDSUkgbW9kZVxuIikpOworICAgIH0KKworICAgIG9oc2hpdChfKCJgJS4yNTVzJyBpcyBub3QgYSBkZWJpYW4gZm9ybWF0IGFyY2hpdmUiKSxkZWJhcik7CisgIH0KKworICBtX3BpcGUocDEpOworICBjMSA9IHN1YnByb2NfZm9yaygpOworICBpZiAoIWMxKSB7CisgICAgY2xvc2UocDFbMF0pOworICAgIGZkX2ZkX2NvcHkoYXJmZCwgcDFbMV0sIG1lbWJlcmxlbiwgXygiZmFpbGVkIHRvIHdyaXRlIHRvIHBpcGUgaW4gY29weSIpKTsKKyAgICBpZiAoY2xvc2UocDFbMV0pKQorICAgICAgb2hzaGl0ZShfKCJmYWlsZWQgdG8gY2xvc2UgcGlwZSBpbiBjb3B5IikpOworICAgIGV4aXQoMCk7CisgIH0KKyAgY2xvc2UocDFbMV0pOworCisgIGlmICh0YXJvcHRpb24pIHsKKyAgICBtX3BpcGUocDIpOworICAgIHAyX291dCA9IHAyWzFdOworICB9IGVsc2UgeworICAgIHAyX291dCA9IDE7CisgIH0KKworICBjMiA9IHN1YnByb2NfZm9yaygpOworICBpZiAoIWMyKSB7CisgICAgaWYgKHRhcm9wdGlvbikKKyAgICAgIGNsb3NlKHAyWzBdKTsKKyAgICBkZWNvbXByZXNzX2ZpbHRlcihkZWNvbXByZXNzb3IsIHAxWzBdLCBwMl9vdXQsIF8oImRhdGEiKSk7CisgICAgZXhpdCgwKTsKKyAgfQorICBjbG9zZShwMVswXSk7CisgIGNsb3NlKGFyZmQpOworICBpZiAodGFyb3B0aW9uKSBjbG9zZShwMlsxXSk7CisKKyAgaWYgKHRhcm9wdGlvbikgeworICAgIGMzID0gc3VicHJvY19mb3JrKCk7CisgICAgaWYgKCFjMykgeworICAgICAgY2hhciBidWZmZXJbMzArMl07CisgICAgICBpZiAoc3RybGVuKHRhcm9wdGlvbikgPiAzMCkKKyAgICAgICAgaW50ZXJuZXJyKCJ0YXJvcHRpb24gaXMgdG9vIGxvbmcgJyVzJyIsIHRhcm9wdGlvbik7CisgICAgICBzdHJjcHkoYnVmZmVyLCB0YXJvcHRpb24pOworICAgICAgc3RyY2F0KGJ1ZmZlciwgImYiKTsKKyAgICAgIG1fZHVwMihwMlswXSwwKTsKKyAgICAgIGNsb3NlKHAyWzBdKTsKKworICAgICAgdW5zZXRlbnYoIlRBUl9PUFRJT05TIik7CisKKyAgICAgIGlmIChkaXIpIHsKKyAgICAgICAgaWYgKGNoZGlyKGRpcikpIHsKKyAgICAgICAgICBpZiAoZXJybm8gIT0gRU5PRU5UKQorICAgICAgICAgICAgb2hzaGl0ZShfKCJmYWlsZWQgdG8gY2hkaXIgdG8gZGlyZWN0b3J5IikpOworCisgICAgICAgICAgaWYgKG1rZGlyKGRpciwgMDc3NykpCisgICAgICAgICAgICBvaHNoaXRlKF8oImZhaWxlZCB0byBjcmVhdGUgZGlyZWN0b3J5IikpOworICAgICAgICAgIGlmIChjaGRpcihkaXIpKQorICAgICAgICAgICAgb2hzaGl0ZShfKCJmYWlsZWQgdG8gY2hkaXIgdG8gZGlyZWN0b3J5IGFmdGVyIGNyZWF0aW5nIGl0IikpOworICAgICAgICB9CisgICAgICB9CisKKyAgICAgIGV4ZWNscChUQVIsICJ0YXIiLCBidWZmZXIsICItIiwgIi0td2FybmluZz1uby10aW1lc3RhbXAiLCBOVUxMKTsKKyAgICAgIG9oc2hpdGUoXygidW5hYmxlIHRvIGV4ZWN1dGUgJXMgKCVzKSIpLCAidGFyIiwgVEFSKTsKKyAgICB9CisgICAgY2xvc2UocDJbMF0pOworICAgIHN1YnByb2Nfd2FpdF9jaGVjayhjMywgInRhciIsIDApOworICB9CisKKyAgc3VicHJvY193YWl0X2NoZWNrKGMyLCBfKCI8ZGVjb21wcmVzcz4iKSwgUFJPQ1BJUEUpOworICBpZiAoYzEgIT0gLTEpCisgICAgc3VicHJvY193YWl0X2NoZWNrKGMxLCBfKCJwYXN0ZSIpLCAwKTsKKyAgaWYgKG9sZGZvcm1hdCAmJiBhZG1pbmluZm8pIHsKKyAgICBpZiAodmVyc2lvbm51bSA9PSAwLjkzMUYpIHsKKyAgICAgIG1vdmVjb250cm9sZmlsZXMoT0xET0xEREVCRElSKTsKKyAgICB9IGVsc2UgaWYgKHZlcnNpb25udW0gPT0gMC45MzJGIHx8IHZlcnNpb25udW0gPT0gMC45MzNGKSB7CisgICAgICBtb3ZlY29udHJvbGZpbGVzKE9MRERFQkRJUik7CisgICAgfQorICB9Cit9CisKK3N0YXRpYyBpbnQKK2NvbnRyb2xleHRyYWN0dmV4dHJhY3QoaW50IGFkbWluLCBjb25zdCBjaGFyICp0YXJvcHRpb25zLAorICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpjb25zdCAqYXJndikKK3sKKyAgY29uc3QgY2hhciAqZGViYXIsICpkaXI7CisKKyAgaWYgKCEoZGViYXI9ICphcmd2KyspKQorICAgIGJhZHVzYWdlKF8oIi0tJXMgbmVlZHMgYSAuZGViIGZpbGVuYW1lIGFyZ3VtZW50IiksY2lwYWN0aW9uLT5vbG9uZyk7CisgIGRpciA9ICphcmd2Kys7CisgIGlmICghZGlyKSB7CisgICAgaWYgKGFkbWluKQorICAgICAgZGlyID0gRVhUUkFDVENPTlRST0xESVI7CisgICAgZWxzZSBvaHNoaXQoXygiLS0lcyBuZWVkcyBhIHRhcmdldCBkaXJlY3RvcnkuXG4iCisgICAgICAgICAgICAgICAgIlBlcmhhcHMgeW91IHNob3VsZCBiZSB1c2luZyBkcGtnIC0taW5zdGFsbCA/IiksY2lwYWN0aW9uLT5vbG9uZyk7CisgIH0gZWxzZSBpZiAoKmFyZ3YpIHsKKyAgICBiYWR1c2FnZShfKCItLSVzIHRha2VzIGF0IG1vc3QgdHdvIGFyZ3VtZW50cyAoLmRlYiBhbmQgZGlyZWN0b3J5KSIpLGNpcGFjdGlvbi0+b2xvbmcpOworICB9CisgIGV4dHJhY3RoYWxmKGRlYmFyLCBkaXIsIHRhcm9wdGlvbnMsIGFkbWluKTsKKworICByZXR1cm4gMDsKK30KKworaW50Citkb19mc3lzdGFyZmlsZShjb25zdCBjaGFyICpjb25zdCAqYXJndikKK3sKKyAgY29uc3QgY2hhciAqZGViYXI7CisKKyAgaWYgKCEoZGViYXI9ICphcmd2KyspKQorICAgIGJhZHVzYWdlKF8oIi0tJXMgbmVlZHMgYSAuZGViIGZpbGVuYW1lIGFyZ3VtZW50IiksY2lwYWN0aW9uLT5vbG9uZyk7CisgIGlmICgqYXJndikKKyAgICBiYWR1c2FnZShfKCItLSVzIHRha2VzIG9ubHkgb25lIGFyZ3VtZW50ICguZGViIGZpbGVuYW1lKSIpLGNpcGFjdGlvbi0+b2xvbmcpOworICBleHRyYWN0aGFsZihkZWJhciwgTlVMTCwgTlVMTCwgMCk7CisKKyAgcmV0dXJuIDA7Cit9CisKK2ludAorZG9fY29udHJvbChjb25zdCBjaGFyICpjb25zdCAqYXJndikKK3sKKyAgcmV0dXJuIGNvbnRyb2xleHRyYWN0dmV4dHJhY3QoMSwgIngiLCBhcmd2KTsKK30KKworaW50Citkb19leHRyYWN0KGNvbnN0IGNoYXIgKmNvbnN0ICphcmd2KQoreworICBpZiAob3B0X3ZlcmJvc2UpCisgICAgcmV0dXJuIGNvbnRyb2xleHRyYWN0dmV4dHJhY3QoMCwgInhwdiIsIGFyZ3YpOworICBlbHNlCisgICAgcmV0dXJuIGNvbnRyb2xleHRyYWN0dmV4dHJhY3QoMCwgInhwIiwgYXJndik7Cit9CisKK2ludAorZG9fdmV4dHJhY3QoY29uc3QgY2hhciAqY29uc3QgKmFyZ3YpCit7CisgIC8qIFhYWDogQmFja3dhcmQgY29tcGF0aWJpbGl0eS4gKi8KKyAgb3B0X3ZlcmJvc2UgPSAxOworICByZXR1cm4gZG9fZXh0cmFjdChhcmd2KTsKK30KKworaW50Citkb19yYXdfZXh0cmFjdChjb25zdCBjaGFyICpjb25zdCAqYXJndikKK3sKKyAgY29uc3QgY2hhciAqZGViYXIsICpkaXI7CisgIGNoYXIgKmNvbnRyb2xfZGlyOworCisgIGRlYmFyID0gKmFyZ3YrKzsKKyAgaWYgKGRlYmFyID09IE5VTEwpCisgICAgYmFkdXNhZ2UoXygiLS0lcyBuZWVkcyBhIC5kZWIgZmlsZW5hbWUgYXJndW1lbnQiKSwgY2lwYWN0aW9uLT5vbG9uZyk7CisKKyAgZGlyID0gKmFyZ3YrKzsKKyAgaWYgKGRpciA9PSBOVUxMKQorICAgIGJhZHVzYWdlKF8oIi0tJXMgbmVlZHMgYSB0YXJnZXQgZGlyZWN0b3J5LlxuIgorICAgICAgICAgICAgICAgIlBlcmhhcHMgeW91IHNob3VsZCBiZSB1c2luZyBkcGtnIC0taW5zdGFsbCA/IiksCisgICAgICAgICAgICAgY2lwYWN0aW9uLT5vbG9uZyk7CisgIGVsc2UgaWYgKCphcmd2KQorICAgIGJhZHVzYWdlKF8oIi0tJXMgdGFrZXMgYXQgbW9zdCB0d28gYXJndW1lbnRzICguZGViIGFuZCBkaXJlY3RvcnkpIiksCisgICAgICAgICAgICAgY2lwYWN0aW9uLT5vbG9uZyk7CisKKyAgbV9hc3ByaW50ZigmY29udHJvbF9kaXIsICIlcy8lcyIsIGRpciwgRVhUUkFDVENPTlRST0xESVIpOworCisgIGlmIChvcHRfdmVyYm9zZSkKKyAgICBleHRyYWN0aGFsZihkZWJhciwgZGlyLCAieHB2IiwgMCk7CisgIGVsc2UKKyAgICBleHRyYWN0aGFsZihkZWJhciwgZGlyLCAieHAiLCAwKTsKKyAgZXh0cmFjdGhhbGYoZGViYXIsIGNvbnRyb2xfZGlyLCAieCIsIDEpOworCisgIGZyZWUoY29udHJvbF9kaXIpOworCisgIHJldHVybiAwOworfQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kcGtnLWRlYi9pbmZvLmMgYi9kcGtnLTEuMTYuMS4xL2Rwa2ctZGViL2luZm8uYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42NWVhNmZhCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kcGtnLWRlYi9pbmZvLmMKQEAgLTAsMCArMSwzMzQgQEAKKy8qCisgKiBkcGtnLWRlYiAtIGNvbnN0cnVjdGlvbiBhbmQgZGVjb25zdHJ1Y3Rpb24gb2YgKi5kZWIgYXJjaGl2ZXMKKyAqIGluZm8uYyAtIHByb3ZpZGluZyBpbmZvcm1hdGlvbgorICoKKyAqIENvcHlyaWdodCDCqSAxOTk0LDE5OTUgSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuZ3JlZW5lbmQub3JnLnVrPgorICogQ29weXJpZ2h0IMKpIDIwMDEgV2ljaGVydCBBa2tlcm1hbgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaW5jbHVkZSA8Y29uZmlnLmg+CisjaW5jbHVkZSA8Y29tcGF0Lmg+CisKKyNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KKyNpbmNsdWRlIDxzeXMvc3RhdC5oPgorI2luY2x1ZGUgPHN5cy93YWl0Lmg+CisKKyNpbmNsdWRlIDxlcnJuby5oPgorI2luY2x1ZGUgPGxpbWl0cy5oPgorI2luY2x1ZGUgPGN0eXBlLmg+CisjaW5jbHVkZSA8c3RyaW5nLmg+CisjaW5jbHVkZSA8ZmNudGwuaD4KKyNpbmNsdWRlIDxkaXJlbnQuaD4KKyNpbmNsdWRlIDx1bmlzdGQuaD4KKyNpbmNsdWRlIDxzdGRpbnQuaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlIDxzdGRpby5oPgorCisjaW5jbHVkZSA8ZHBrZy9pMThuLmg+CisjaW5jbHVkZSA8ZHBrZy9kcGtnLmg+CisjaW5jbHVkZSA8ZHBrZy9kcGtnLWRiLmg+CisjaW5jbHVkZSA8ZHBrZy9wa2ctZm9ybWF0Lmg+CisjaW5jbHVkZSA8ZHBrZy9idWZmZXIuaD4KKyNpbmNsdWRlIDxkcGtnL3BhdGguaD4KKyNpbmNsdWRlIDxkcGtnL3N1YnByb2MuaD4KKyNpbmNsdWRlIDxkcGtnL29wdGlvbnMuaD4KKworI2luY2x1ZGUgImRwa2ctZGViLmgiCisKK3N0YXRpYyB2b2lkIGN1X2luZm9fcHJlcGFyZShpbnQgYXJnYywgdm9pZCAqKmFyZ3YpIHsKKyAgcGlkX3QgcGlkOworICBjaGFyICpkaXI7CisgIHN0cnVjdCBzdGF0IHN0YWI7CisKKyAgZGlyID0gYXJndlswXTsKKyAgaWYgKGxzdGF0KGRpciwgJnN0YWIpICYmIGVycm5vID09IEVOT0VOVCkKKyAgICByZXR1cm47CisKKyAgcGlkID0gc3VicHJvY19mb3JrKCk7CisgIGlmIChwaWQgPT0gMCkgeworICAgIGlmIChjaGRpcigiLyIpKQorICAgICAgb2hzaGl0ZShfKCJmYWlsZWQgdG8gY2hkaXIgdG8gYC8nIGZvciBjbGVhbnVwIikpOworICAgIGV4ZWNscChSTSwgInJtIiwgIi1yZiIsIGRpciwgTlVMTCk7CisgICAgb2hzaGl0ZShfKCJ1bmFibGUgdG8gZXhlY3V0ZSAlcyAoJXMpIiksIF8oInJtIGNvbW1hbmQgZm9yIGNsZWFudXAiKSwgUk0pOworICB9CisgIHN1YnByb2Nfd2FpdF9jaGVjayhwaWQsIF8oInJtIGNvbW1hbmQgZm9yIGNsZWFudXAiKSwgMCk7Cit9CisKK3N0YXRpYyB2b2lkIGluZm9fcHJlcGFyZShjb25zdCBjaGFyICpjb25zdCAqKmFyZ3ZwLAorICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKipkZWJhcnAsCisgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqKmRpcnAsCisgICAgICAgICAgICAgICAgICAgICAgICAgaW50IGFkbWluaW5mbykgeworICBjaGFyICpkYnVmOworCisgICpkZWJhcnA9ICooKmFyZ3ZwKSsrOworICBpZiAoISpkZWJhcnApIGJhZHVzYWdlKF8oIi0tJXMgbmVlZHMgYSAuZGViIGZpbGVuYW1lIGFyZ3VtZW50IiksY2lwYWN0aW9uLT5vbG9uZyk7CisKKyAgZGJ1ZiA9IG1rZHRlbXAocGF0aF9tYWtlX3RlbXBfdGVtcGxhdGUoImRwa2ctZGViIikpOworICBpZiAoIWRidWYpCisgICAgb2hzaGl0ZShfKCJ1bmFibGUgdG8gY3JlYXRlIHRlbXBvcmFyeSBkaXJlY3RvcnkiKSk7CisgICpkaXJwID0gZGJ1ZjsKKworICBwdXNoX2NsZWFudXAoY3VfaW5mb19wcmVwYXJlLCAtMSwgTlVMTCwgMCwgMSwgKHZvaWQgKilkYnVmKTsKKyAgZXh0cmFjdGhhbGYoKmRlYmFycCwgZGJ1ZiwgIm14IiwgYWRtaW5pbmZvKTsKK30KKworc3RhdGljIGludCBpbGlzdF9zZWxlY3QoY29uc3Qgc3RydWN0IGRpcmVudCAqZGUpIHsKKyAgcmV0dXJuIHN0cmNtcChkZS0+ZF9uYW1lLCIuIikgJiYgc3RyY21wKGRlLT5kX25hbWUsIi4uIik7Cit9CisKK3N0YXRpYyB2b2lkCitpbmZvX3NwZXcoY29uc3QgY2hhciAqZGViYXIsIGNvbnN0IGNoYXIgKmRpciwgY29uc3QgY2hhciAqY29uc3QgKmFyZ3YpCit7CisgIGNvbnN0IGNoYXIgKmNvbXBvbmVudDsKKyAgc3RydWN0IHZhcmJ1ZiBjb250cm9sZmlsZSA9IFZBUkJVRl9JTklUOworICBpbnQgZmQ7CisgIGludCByZT0gMDsKKworICB3aGlsZSAoKGNvbXBvbmVudCA9ICphcmd2KyspICE9IE5VTEwpIHsKKyAgICB2YXJidWZfcmVzZXQoJmNvbnRyb2xmaWxlKTsKKyAgICB2YXJidWZfcHJpbnRmKCZjb250cm9sZmlsZSwgIiVzLyVzIiwgZGlyLCBjb21wb25lbnQpOworCisgICAgZmQgPSBvcGVuKGNvbnRyb2xmaWxlLmJ1ZiwgT19SRE9OTFkpOworICAgIGlmIChmZCA+PSAwKSB7CisgICAgICBmZF9mZF9jb3B5KGZkLCAxLCAtMSwgXygiY29udHJvbCBmaWxlICclcyciKSwgY29udHJvbGZpbGUuYnVmKTsKKyAgICAgIGNsb3NlKGZkKTsKKyAgICB9IGVsc2UgaWYgKGVycm5vID09IEVOT0VOVCkgeworICAgICAgZnByaW50ZihzdGRlcnIsCisgICAgICAgICAgICAgIF8oImRwa2ctZGViOiBgJS4yNTVzJyBjb250YWlucyBubyBjb250cm9sIGNvbXBvbmVudCBgJS4yNTVzJ1xuIiksCisgICAgICAgICAgICAgIGRlYmFyLCBjb21wb25lbnQpOworICAgICAgcmUrKzsKKyAgICB9IGVsc2UgeworICAgICAgb2hzaGl0ZShfKCJvcGVuIGNvbXBvbmVudCBgJS4yNTVzJyAoaW4gJS4yNTVzKSBmYWlsZWQgaW4gYW4gdW5leHBlY3RlZCB3YXkiKSwKKyAgICAgICAgICAgICAgY29tcG9uZW50LCBkaXIpOworICAgIH0KKyAgfQorICB2YXJidWZfZGVzdHJveSgmY29udHJvbGZpbGUpOworCisgIGlmIChyZSA+IDApCisgICAgb2hzaGl0KFBfKCIlZCByZXF1ZXN0ZWQgY29udHJvbCBjb21wb25lbnQgaXMgbWlzc2luZyIsCisgICAgICAgICAgICAgICIlZCByZXF1ZXN0ZWQgY29udHJvbCBjb21wb25lbnRzIGFyZSBtaXNzaW5nIiwgcmUpLCByZSk7Cit9CisKK3N0YXRpYyB2b2lkCitpbmZvX2xpc3QoY29uc3QgY2hhciAqZGViYXIsIGNvbnN0IGNoYXIgKmRpcikKK3sKKyAgY2hhciBpbnRlcnByZXRlcltJTlRFUlBSRVRFUl9NQVgrMV0sICpwOworICBpbnQgaWwsIGxpbmVzOworICBzdHJ1Y3QgdmFyYnVmIGNvbnRyb2xmaWxlID0gVkFSQlVGX0lOSVQ7CisgIHN0cnVjdCBkaXJlbnQgKipjZGxpc3QsICpjZGVwOworICBpbnQgY2RuLCBuOworICBGSUxFICpjYzsKKyAgc3RydWN0IHN0YXQgc3RhYjsKKyAgaW50IGM7CisKKyAgY2RuID0gc2NhbmRpcihkaXIsICZjZGxpc3QsICZpbGlzdF9zZWxlY3QsIGFscGhhc29ydCk7CisgIGlmIChjZG4gPT0gLTEpCisgICAgb2hzaGl0ZShfKCJjYW5ub3Qgc2NhbiBkaXJlY3RvcnkgYCUuMjU1cyciKSwgZGlyKTsKKworICBmb3IgKG4gPSAwOyBuIDwgY2RuOyBuKyspIHsKKyAgICBjZGVwID0gY2RsaXN0W25dOworCisgICAgdmFyYnVmX3Jlc2V0KCZjb250cm9sZmlsZSk7CisgICAgdmFyYnVmX3ByaW50ZigmY29udHJvbGZpbGUsICIlcy8lcyIsIGRpciwgY2RlcC0+ZF9uYW1lKTsKKworICAgIGlmIChzdGF0KGNvbnRyb2xmaWxlLmJ1ZiwgJnN0YWIpKQorICAgICAgb2hzaGl0ZShfKCJjYW5ub3Qgc3RhdCBgJS4yNTVzJyAoaW4gYCUuMjU1cycpIiksIGNkZXAtPmRfbmFtZSwgZGlyKTsKKyAgICBpZiAoU19JU1JFRyhzdGFiLnN0X21vZGUpKSB7CisgICAgICBjYyA9IGZvcGVuKGNvbnRyb2xmaWxlLmJ1ZiwgInIiKTsKKyAgICAgIGlmICghY2MpCisgICAgICAgIG9oc2hpdGUoXygiY2Fubm90IG9wZW4gYCUuMjU1cycgKGluIGAlLjI1NXMnKSIpLCBjZGVwLT5kX25hbWUsIGRpcik7CisgICAgICBsaW5lcyA9IDA7CisgICAgICBpbnRlcnByZXRlclswXSA9ICdcMCc7CisgICAgICBpZiAoZ2V0YyhjYykgPT0gJyMnKSB7CisgICAgICAgIGlmIChnZXRjKGNjKSA9PSAnIScpIHsKKyAgICAgICAgICB3aGlsZSAoKGM9IGdldGMoY2MpKT09ICcgJyk7CisgICAgICAgICAgcD1pbnRlcnByZXRlcjsgKnArKz0nIyc7ICpwKys9JyEnOyBpbD0yOworICAgICAgICAgIHdoaWxlIChpbDxJTlRFUlBSRVRFUl9NQVggJiYgIWlzc3BhY2UoYykgJiYgYyE9RU9GKSB7CisgICAgICAgICAgICAqcCsrPSBjOyBpbCsrOyBjPSBnZXRjKGNjKTsKKyAgICAgICAgICB9CisgICAgICAgICAgKnAgPSAnXDAnOworICAgICAgICAgIGlmIChjPT0nXG4nKSBsaW5lcysrOworICAgICAgICB9CisgICAgICB9CisgICAgICB3aGlsZSAoKGM9IGdldGMoY2MpKSE9IEVPRikgeyBpZiAoYyA9PSAnXG4nKSBsaW5lcysrOyB9CisgICAgICBpZiAoZmVycm9yKGNjKSkgb2hzaGl0ZShfKCJmYWlsZWQgdG8gcmVhZCBgJS4yNTVzJyAoaW4gYCUuMjU1cycpIiksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjZGVwLT5kX25hbWUsIGRpcik7CisgICAgICBmY2xvc2UoY2MpOworICAgICAgcHJpbnRmKF8oIiAlN2pkIGJ5dGVzLCAlNWQgbGluZXMgICAlYyAgJS0yMC4xMjdzICUuMTI3c1xuIiksCisgICAgICAgICAgICAgKGludG1heF90KXN0YWIuc3Rfc2l6ZSwgbGluZXMsIFNfSVhVU1IgJiBzdGFiLnN0X21vZGUgPyAnKicgOiAnICcsCisgICAgICAgICAgICAgY2RlcC0+ZF9uYW1lLCBpbnRlcnByZXRlcik7CisgICAgfSBlbHNlIHsKKyAgICAgIHByaW50ZihfKCIgICAgIG5vdCBhIHBsYWluIGZpbGUgICAgICAgICAgJS4yNTVzXG4iKSwgY2RlcC0+ZF9uYW1lKTsKKyAgICB9CisgICAgZnJlZShjZGVwKTsKKyAgfQorICBmcmVlKGNkbGlzdCk7CisKKyAgdmFyYnVmX3Jlc2V0KCZjb250cm9sZmlsZSk7CisgIHZhcmJ1Zl9wcmludGYoJmNvbnRyb2xmaWxlLCAiJXMvJXMiLCBkaXIsIENPTlRST0xGSUxFKTsKKyAgY2MgPSBmb3Blbihjb250cm9sZmlsZS5idWYsICJyIik7CisgIGlmICghY2MpIHsKKyAgICBpZiAoZXJybm8gIT0gRU5PRU5UKQorICAgICAgb2hzaGl0ZShfKCJmYWlsZWQgdG8gcmVhZCBgJS4yNTVzJyAoaW4gYCUuMjU1cycpIiksIENPTlRST0xGSUxFLCBkaXIpOworICAgIGZwdXRzKF8oIihubyBgY29udHJvbCcgZmlsZSBpbiBjb250cm9sIGFyY2hpdmUhKVxuIiksIHN0ZG91dCk7CisgIH0gZWxzZSB7CisgICAgbGluZXM9IDE7CisgICAgd2hpbGUgKChjPSBnZXRjKGNjKSkhPSBFT0YpIHsKKyAgICAgIGlmIChsaW5lcykKKyAgICAgICAgcHV0YygnICcsIHN0ZG91dCk7CisgICAgICBwdXRjKGMsIHN0ZG91dCk7CisgICAgICBsaW5lcz0gYz09J1xuJzsKKyAgICB9CisgICAgaWYgKCFsaW5lcykKKyAgICAgIHB1dGMoJ1xuJywgc3Rkb3V0KTsKKworICAgIGlmIChmZXJyb3IoY2MpKQorICAgICAgb2hzaGl0ZShfKCJmYWlsZWQgdG8gcmVhZCBgJS4yNTVzJyAoaW4gYCUuMjU1cycpIiksIENPTlRST0xGSUxFLCBkaXIpOworICAgIGZjbG9zZShjYyk7CisgIH0KKworICBtX291dHB1dChzdGRvdXQsIF8oIjxzdGFuZGFyZCBvdXRwdXQ+IikpOworICB2YXJidWZfZGVzdHJveSgmY29udHJvbGZpbGUpOworfQorCitzdGF0aWMgdm9pZAoraW5mb19maWVsZChjb25zdCBjaGFyICpkZWJhciwgY29uc3QgY2hhciAqZGlyLCBjb25zdCBjaGFyICpjb25zdCAqZmllbGRzLAorICAgICAgICAgICBib29sIHNob3dmaWVsZG5hbWUpCit7CisgIEZJTEUgKmNjOworICBjaGFyICpjb250cm9sZmlsZTsKKyAgY2hhciBmaWVsZG5hbWVbTUFYRklFTEROQU1FKzFdOworICBjaGFyICpwZjsKKyAgY29uc3QgY2hhciAqY29uc3QgKmZwOworICBpbnQgYywgbG5vLCBmbmw7CisgIGJvb2wgZG9pbmc7CisKKyAgbV9hc3ByaW50ZigmY29udHJvbGZpbGUsICIlcy8lcyIsIGRpciwgQ09OVFJPTEZJTEUpOworICBjYyA9IGZvcGVuKGNvbnRyb2xmaWxlLCAiciIpOworICBpZiAoIWNjKQorICAgIG9oc2hpdGUoXygiY291bGQgbm90IG9wZW4gdGhlIGBjb250cm9sJyBjb21wb25lbnQiKSk7CisgIGRvaW5nID0gdHJ1ZTsKKyAgbG5vID0gMTsKKyAgZm9yICg7OykgeworICAgIGMgPSBnZXRjKGNjKTsKKyAgICBpZiAoYyA9PSBFT0YpIHsKKyAgICAgIGRvaW5nID0gZmFsc2U7CisgICAgICBicmVhazsKKyAgICB9CisgICAgaWYgKGMgPT0gJ1xuJykgeworICAgICAgbG5vKys7CisgICAgICBkb2luZyA9IHRydWU7CisgICAgICBjb250aW51ZTsKKyAgICB9CisgICAgaWYgKCFpc3NwYWNlKGMpKSB7CisgICAgICBmb3IgKHBmPWZpZWxkbmFtZSwgZm5sPTA7CisgICAgICAgICAgIGZubCA8PSBNQVhGSUVMRE5BTUUgJiYgYyE9RU9GICYmICFpc3NwYWNlKGMpICYmIGMhPSc6JzsKKyAgICAgICAgICAgYz0gZ2V0YyhjYykpIHsgKnBmKys9IGM7IGZubCsrOyB9CisgICAgICAqcGYgPSAnXDAnOworICAgICAgZG9pbmc9IGZubCA+PSBNQVhGSUVMRE5BTUUgfHwgYz09J1xuJyB8fCBjPT1FT0Y7CisgICAgICBmb3IgKGZwPWZpZWxkczsgIWRvaW5nICYmICpmcDsgZnArKykKKyAgICAgICAgaWYgKCFzdHJjYXNlY21wKCpmcCwgZmllbGRuYW1lKSkKKyAgICAgICAgICBkb2luZyA9IHRydWU7CisgICAgICBpZiAoc2hvd2ZpZWxkbmFtZSkgeworICAgICAgICBpZiAoZG9pbmcpCisgICAgICAgICAgZnB1dHMoZmllbGRuYW1lLHN0ZG91dCk7CisgICAgICB9IGVsc2UgeworICAgICAgICBpZiAoYz09JzonKSBjPSBnZXRjKGNjKTsKKyAgICAgICAgd2hpbGUgKGMgIT0gJ1xuJyAmJiBpc3NwYWNlKGMpKSBjPSBnZXRjKGNjKTsKKyAgICAgIH0KKyAgICB9CisgICAgZm9yKDs7KSB7CisgICAgICBpZiAoYyA9PSBFT0YpIGJyZWFrOworICAgICAgaWYgKGRvaW5nKSBwdXRjKGMsc3Rkb3V0KTsKKyAgICAgIGlmIChjID09ICdcbicpIHsgbG5vKys7IGJyZWFrOyB9CisgICAgICBjPSBnZXRjKGNjKTsKKyAgICB9CisgICAgaWYgKGMgPT0gRU9GKSBicmVhazsKKyAgfQorICBpZiAoZmVycm9yKGNjKSkgb2hzaGl0ZShfKCJmYWlsZWQgZHVyaW5nIHJlYWQgb2YgYGNvbnRyb2wnIGNvbXBvbmVudCIpKTsKKyAgaWYgKGZjbG9zZShjYykpCisgICAgb2hzaGl0ZShfKCJlcnJvciBjbG9zaW5nIHRoZSAnJXMnIGNvbXBvbmVudCIpLCBDT05UUk9MRklMRSk7CisgIGlmIChkb2luZykgcHV0YygnXG4nLHN0ZG91dCk7CisgIG1fb3V0cHV0KHN0ZG91dCwgXygiPHN0YW5kYXJkIG91dHB1dD4iKSk7CisgIGZyZWUoY29udHJvbGZpbGUpOworfQorCitpbnQKK2RvX3Nob3dpbmZvKGNvbnN0IGNoYXIgKmNvbnN0ICphcmd2KQoreworICBjb25zdCBjaGFyICpkZWJhciwgKmRpcjsKKyAgY2hhciAqY29udHJvbGZpbGU7CisgIHN0cnVjdCBwa2dpbmZvICpwa2c7CisgIHN0cnVjdCBwa2dfZm9ybWF0X25vZGUgKmZtdCA9IHBrZ19mb3JtYXRfcGFyc2Uoc2hvd2Zvcm1hdCk7CisKKyAgaWYgKCFmbXQpCisgICAgb2hzaGl0KF8oIkVycm9yIGluIGZvcm1hdCIpKTsKKworICBpbmZvX3ByZXBhcmUoJmFyZ3YsICZkZWJhciwgJmRpciwgMSk7CisKKyAgbV9hc3ByaW50ZigmY29udHJvbGZpbGUsICIlcy8lcyIsIGRpciwgQ09OVFJPTEZJTEUpOworICBwYXJzZWRiKGNvbnRyb2xmaWxlLAorICAgICAgICAgIHBkYl9yZWNvcmRhdmFpbGFibGUgfCBwZGJfcmVqZWN0c3RhdHVzIHwgcGRiX2lnbm9yZWZpbGVzLCAmcGtnKTsKKyAgcGtnX2Zvcm1hdF9zaG93KGZtdCwgcGtnLCAmcGtnLT5hdmFpbGFibGUpOworICBmcmVlKGNvbnRyb2xmaWxlKTsKKworICByZXR1cm4gMDsKK30KKworaW50Citkb19pbmZvKGNvbnN0IGNoYXIgKmNvbnN0ICphcmd2KQoreworICBjb25zdCBjaGFyICpkZWJhciwgKmRpcjsKKworICBpZiAoKmFyZ3YgJiYgYXJndlsxXSkgeworICAgIGluZm9fcHJlcGFyZSgmYXJndiwgJmRlYmFyLCAmZGlyLCAxKTsKKyAgICBpbmZvX3NwZXcoZGViYXIsIGRpciwgYXJndik7CisgIH0gZWxzZSB7CisgICAgaW5mb19wcmVwYXJlKCZhcmd2LCAmZGViYXIsICZkaXIsIDIpOworICAgIGluZm9fbGlzdChkZWJhciwgZGlyKTsKKyAgfQorCisgIHJldHVybiAwOworfQorCitpbnQKK2RvX2ZpZWxkKGNvbnN0IGNoYXIgKmNvbnN0ICphcmd2KQoreworICBjb25zdCBjaGFyICpkZWJhciwgKmRpcjsKKworICBpbmZvX3ByZXBhcmUoJmFyZ3YsICZkZWJhciwgJmRpciwgMSk7CisgIGlmICgqYXJndikgeworICAgIGluZm9fZmllbGQoZGViYXIsIGRpciwgYXJndiwgYXJndlsxXSAhPSBOVUxMKTsKKyAgfSBlbHNlIHsKKyAgICBzdGF0aWMgY29uc3QgY2hhciAqY29uc3QgY29udHJvbG9ubHlbXSA9IHsgQ09OVFJPTEZJTEUsIE5VTEwgfTsKKyAgICBpbmZvX3NwZXcoZGViYXIsIGRpciwgY29udHJvbG9ubHkpOworICB9CisKKyAgcmV0dXJuIDA7Cit9CisKK2ludAorZG9fY29udGVudHMoY29uc3QgY2hhciAqY29uc3QgKmFyZ3YpCit7CisgIGNvbnN0IGNoYXIgKmRlYmFyOworCisgIGlmICghKGRlYmFyPSAqYXJndisrKSB8fCAqYXJndikgYmFkdXNhZ2UoXygiLS1jb250ZW50cyB0YWtlcyBleGFjdGx5IG9uZSBhcmd1bWVudCIpKTsKKyAgZXh0cmFjdGhhbGYoZGViYXIsIE5VTEwsICJ0diIsIDApOworCisgIHJldHVybiAwOworfQorLyogdmk6IHN3PTIKKyAqLwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kcGtnLWRlYi9tYWluLmMgYi9kcGtnLTEuMTYuMS4xL2Rwa2ctZGViL21haW4uYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44OGY3NjVjCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kcGtnLWRlYi9tYWluLmMKQEAgLTAsMCArMSwyMTMgQEAKKy8qCisgKiBkcGtnLWRlYiAtIGNvbnN0cnVjdGlvbiBhbmQgZGVjb25zdHJ1Y3Rpb24gb2YgKi5kZWIgYXJjaGl2ZXMKKyAqIG1haW4uYyAtIG1haW4gcHJvZ3JhbQorICoKKyAqIENvcHlyaWdodCDCqSAxOTk0LDE5OTUgSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuZ3JlZW5lbmQub3JnLnVrPgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaW5jbHVkZSA8Y29uZmlnLmg+CisjaW5jbHVkZSA8Y29tcGF0Lmg+CisKKyNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KKyNpbmNsdWRlIDxzeXMvc3RhdC5oPgorI2luY2x1ZGUgPHN5cy93YWl0Lmg+CisKKyNpbmNsdWRlIDxhc3NlcnQuaD4KKyNpbmNsdWRlIDxsaW1pdHMuaD4KKyNpZiBIQVZFX0xPQ0FMRV9ICisjaW5jbHVkZSA8bG9jYWxlLmg+CisjZW5kaWYKKyNpbmNsdWRlIDxjdHlwZS5oPgorI2luY2x1ZGUgPHN0cmluZy5oPgorI2luY2x1ZGUgPGRpcmVudC5oPgorI2luY2x1ZGUgPHVuaXN0ZC5oPgorI2luY2x1ZGUgPHN0ZGxpYi5oPgorI2luY2x1ZGUgPHN0ZGlvLmg+CisKKyNpbmNsdWRlIDxkcGtnL21hY3Jvcy5oPgorI2luY2x1ZGUgPGRwa2cvaTE4bi5oPgorI2luY2x1ZGUgPGRwa2cvZHBrZy5oPgorI2luY2x1ZGUgPGRwa2cvZHBrZy1kYi5oPgorI2luY2x1ZGUgPGRwa2cvY29tcHJlc3MuaD4KKyNpbmNsdWRlIDxkcGtnL29wdGlvbnMuaD4KKworI2luY2x1ZGUgImRwa2ctZGViLmgiCisKK2NvbnN0IGNoYXIqIHNob3dmb3JtYXQJPSAiJHtQYWNrYWdlfVx0JHtWZXJzaW9ufVxuIjsKKworc3RhdGljIHZvaWQgRFBLR19BVFRSX05PUkVUCitwcmludHZlcnNpb24oY29uc3Qgc3RydWN0IGNtZGluZm8gKmNpcCwgY29uc3QgY2hhciAqdmFsdWUpCit7CisgIHByaW50ZihfKCJEZWJpYW4gYCVzJyBwYWNrYWdlIGFyY2hpdmUgYmFja2VuZCB2ZXJzaW9uICVzLlxuIiksCisgICAgICAgICBCQUNLRU5ELCBEUEtHX1ZFUlNJT05fQVJDSCk7CisgIHByaW50ZihfKAorIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgb3JcbiIKKyJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIpKTsKKworICBtX291dHB1dChzdGRvdXQsIF8oIjxzdGFuZGFyZCBvdXRwdXQ+IikpOworCisgIGV4aXQoMCk7Cit9CisKK3N0YXRpYyB2b2lkIERQS0dfQVRUUl9OT1JFVAordXNhZ2UoY29uc3Qgc3RydWN0IGNtZGluZm8gKmNpcCwgY29uc3QgY2hhciAqdmFsdWUpCit7CisgIHByaW50ZihfKAorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSA8Y29tbWFuZD5cbiIKKyJcbiIpLCBCQUNLRU5EKTsKKworICBwcmludGYoXygKKyJDb21tYW5kczpcbiIKKyIgIC1ifC0tYnVpbGQgPGRpcmVjdG9yeT4gWzxkZWI+XSAgIEJ1aWxkIGFuIGFyY2hpdmUuXG4iCisiICAtY3wtLWNvbnRlbnRzIDxkZWI+ICAgICAgICAgICAgICBMaXN0IGNvbnRlbnRzLlxuIgorIiAgLUl8LS1pbmZvIDxkZWI+IFs8Y2ZpbGU+IC4uLl0gICAgU2hvdyBpbmZvIHRvIHN0ZG91dC5cbiIKKyIgIC1XfC0tc2hvdyA8ZGViPiAgICAgICAgICAgICAgICAgIFNob3cgaW5mb3JtYXRpb24gb24gcGFja2FnZShzKVxuIgorIiAgLWZ8LS1maWVsZCA8ZGViPiBbPGNmaWVsZD4gLi4uXSAgU2hvdyBmaWVsZChzKSB0byBzdGRvdXQuXG4iCisiICAtZXwtLWNvbnRyb2wgPGRlYj4gWzxkaXJlY3Rvcnk+XSBFeHRyYWN0IGNvbnRyb2wgaW5mby5cbiIKKyIgIC14fC0tZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PiAgIEV4dHJhY3QgZmlsZXMuXG4iCisiICAtWHwtLXZleHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+ICBFeHRyYWN0ICYgbGlzdCBmaWxlcy5cbiIKKyIgIC1SfC0tcmF3LWV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEV4dHJhY3QgY29udHJvbCBpbmZvIGFuZCBmaWxlcy5cbiIKKyIgIC0tZnN5cy10YXJmaWxlIDxkZWI+ICAgICAgICAgICAgIE91dHB1dCBmaWxlc3lzdGVtIHRhcmZpbGUuXG4iCisiXG4iKSk7CisKKyAgcHJpbnRmKF8oCisiICAtaHwtLWhlbHAgICAgICAgICAgICAgICAgICAgICAgICBTaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICAgICAgICAgU2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIpKTsKKworICBwcmludGYoXygKKyI8ZGViPiBpcyB0aGUgZmlsZW5hbWUgb2YgYSBEZWJpYW4gZm9ybWF0IGFyY2hpdmUuXG4iCisiPGNmaWxlPiBpcyB0aGUgbmFtZSBvZiBhbiBhZG1pbmlzdHJhdGl2ZSBmaWxlIGNvbXBvbmVudC5cbiIKKyI8Y2ZpZWxkPiBpcyB0aGUgbmFtZSBvZiBhIGZpZWxkIGluIHRoZSBtYWluIGBjb250cm9sJyBmaWxlLlxuIgorIlxuIikpOworCisgIHByaW50ZihfKAorIk9wdGlvbnM6XG4iCisiICAtLXNob3dmb3JtYXQ9PGZvcm1hdD4gICAgICAgICAgICBVc2UgYWx0ZXJuYXRpdmUgZm9ybWF0IGZvciAtLXNob3cuXG4iCisiICAtdiwgLS12ZXJib3NlICAgICAgICAgICAgICAgICAgICBFbmFibGUgdmVyYm9zZSBvdXRwdXQuXG4iCisiICAtRCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbmFibGUgZGVidWdnaW5nIG91dHB1dC5cbiIKKyIgIC0tb2xkLCAtLW5ldyAgICAgICAgICAgICAgICAgICAgIFNlbGVjdCBhcmNoaXZlIGZvcm1hdC5cbiIKKyIgIC0tbm9jaGVjayAgICAgICAgICAgICAgICAgICAgICAgIFN1cHByZXNzIGNvbnRyb2wgZmlsZSBjaGVjayAoYnVpbGQgYmFkXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhY2thZ2VzKS5cbiIKKyIgIC16IyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNldCB0aGUgY29tcHJlc3Npb24gbGV2ZWwgd2hlbiBidWlsZGluZy5cbiIKKyIgIC1aPHR5cGU+ICAgICAgICAgICAgICAgICAgICAgICAgIFNldCB0aGUgY29tcHJlc3Npb24gdHlwZSB1c2VkIHdoZW4gYnVpbGRpbmcuXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFsbG93ZWQgdHlwZXM6IGd6aXAsIHh6LCBiemlwMiwgbHptYSwgbm9uZS5cbiIKKyJcbiIpKTsKKworICBwcmludGYoXygKKyJGb3JtYXQgc3ludGF4OlxuIgorIiAgQSBmb3JtYXQgaXMgYSBzdHJpbmcgdGhhdCB3aWxsIGJlIG91dHB1dCBmb3IgZWFjaCBwYWNrYWdlLiBUaGUgZm9ybWF0XG4iCisiICBjYW4gaW5jbHVkZSB0aGUgc3RhbmRhcmQgZXNjYXBlIHNlcXVlbmNlcyBcXG4gKG5ld2xpbmUpLCBcXHIgKGNhcnJpYWdlXG4iCisiICByZXR1cm4pIG9yIFxcXFwgKHBsYWluIGJhY2tzbGFzaCkuIFBhY2thZ2UgaW5mb3JtYXRpb24gY2FuIGJlIGluY2x1ZGVkXG4iCisiICBieSBpbnNlcnRpbmcgdmFyaWFibGUgcmVmZXJlbmNlcyB0byBwYWNrYWdlIGZpZWxkcyB1c2luZyB0aGUgJHt2YXJbO3dpZHRoXX1cbiIKKyIgIHN5bnRheC4gRmllbGRzIHdpbGwgYmUgcmlnaHQtYWxpZ25lZCB1bmxlc3MgdGhlIHdpZHRoIGlzIG5lZ2F0aXZlIGluIHdoaWNoXG4iCisiICBjYXNlIGxlZnQgYWxpZ25tZW50IHdpbGwgYmUgdXNlZC5cbiIpKTsKKworICBwcmludGYoXygKKyJcbiIKKyJVc2UgYGRwa2cnIHRvIGluc3RhbGwgYW5kIHJlbW92ZSBwYWNrYWdlcyBmcm9tIHlvdXIgc3lzdGVtLCBvclxuIgorImBkc2VsZWN0JyBvciBgYXB0aXR1ZGUnIGZvciB1c2VyLWZyaWVuZGx5IHBhY2thZ2UgbWFuYWdlbWVudC4gIFBhY2thZ2VzXG4iCisidW5wYWNrZWQgdXNpbmcgYGRwa2ctZGViIC0tZXh0cmFjdCcgd2lsbCBiZSBpbmNvcnJlY3RseSBpbnN0YWxsZWQgIVxuIikpOworCisgIG1fb3V0cHV0KHN0ZG91dCwgXygiPHN0YW5kYXJkIG91dHB1dD4iKSk7CisKKyAgZXhpdCgwKTsKK30KKworc3RhdGljIGNvbnN0IGNoYXIgcHJpbnRmb3JoZWxwW10gPQorICBOXygiVHlwZSBkcGtnLWRlYiAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgbWFuaXB1bGF0aW5nICouZGViIGZpbGVzO1xuIgorICAgICAiVHlwZSBkcGtnIC0taGVscCBmb3IgaGVscCBhYm91dCBpbnN0YWxsaW5nIGFuZCBkZWluc3RhbGxpbmcgcGFja2FnZXMuIik7CisKK2ludCBkZWJ1Z2ZsYWc9MCwgbm9jaGVja2ZsYWc9MCwgb2xkZm9ybWF0ZmxhZz1CVUlMRE9MRFBLR0ZPUk1BVDsKK2ludCBvcHRfdmVyYm9zZSA9IDA7CitzdHJ1Y3QgY29tcHJlc3NvciAqY29tcHJlc3NvciA9ICZjb21wcmVzc29yX2d6aXA7CitpbnQgY29tcHJlc3NfbGV2ZWwgPSAtMTsKKworc3RhdGljIHZvaWQKK3NldF9jb21wcmVzc19sZXZlbChjb25zdCBzdHJ1Y3QgY21kaW5mbyAqY2lwLCBjb25zdCBjaGFyICp2YWx1ZSkKK3sKKyAgbG9uZyBsZXZlbDsKKyAgY2hhciAqZW5kOworCisgIGxldmVsID0gc3RydG9sKHZhbHVlLCAmZW5kLCAwKTsKKyAgaWYgKHZhbHVlID09IGVuZCB8fCAqZW5kIHx8IGxldmVsID4gSU5UX01BWCkKKyAgICBiYWR1c2FnZShfKCJpbnZhbGlkIGludGVnZXIgZm9yIC0lYzogJyUuMjUwcyciKSwgY2lwLT5vc2hvcnQsIHZhbHVlKTsKKworICBpZiAobGV2ZWwgPCAwIHx8IGxldmVsID4gOSkKKyAgICBiYWR1c2FnZShfKCJpbnZhbGlkIGNvbXByZXNzaW9uIGxldmVsIGZvciAtJWM6ICVsZCciKSwgY2lwLT5vc2hvcnQsIGxldmVsKTsKKworICBjb21wcmVzc19sZXZlbCA9IGxldmVsOworfQorCitzdGF0aWMgdm9pZAorc2V0Y29tcHJlc3N0eXBlKGNvbnN0IHN0cnVjdCBjbWRpbmZvICpjaXAsIGNvbnN0IGNoYXIgKnZhbHVlKQoreworICBjb21wcmVzc29yID0gY29tcHJlc3Nvcl9maW5kX2J5X25hbWUodmFsdWUpOworICBpZiAoY29tcHJlc3NvciA9PSBOVUxMKQorICAgIG9oc2hpdChfKCJ1bmtub3duIGNvbXByZXNzaW9uIHR5cGUgYCVzJyEiKSwgdmFsdWUpOworfQorCitzdGF0aWMgY29uc3Qgc3RydWN0IGNtZGluZm8gY21kaW5mb3NbXT0geworICBBQ1RJT04oImJ1aWxkIiwgICAgICAgICAnYicsIDAsIGRvX2J1aWxkKSwKKyAgQUNUSU9OKCJjb250ZW50cyIsICAgICAgJ2MnLCAwLCBkb19jb250ZW50cyksCisgIEFDVElPTigiY29udHJvbCIsICAgICAgICdlJywgMCwgZG9fY29udHJvbCksCisgIEFDVElPTigiaW5mbyIsICAgICAgICAgICdJJywgMCwgZG9faW5mbyksCisgIEFDVElPTigiZmllbGQiLCAgICAgICAgICdmJywgMCwgZG9fZmllbGQpLAorICBBQ1RJT04oImV4dHJhY3QiLCAgICAgICAneCcsIDAsIGRvX2V4dHJhY3QpLAorICBBQ1RJT04oInZleHRyYWN0IiwgICAgICAnWCcsIDAsIGRvX3ZleHRyYWN0KSwKKyAgQUNUSU9OKCJyYXctZXh0cmFjdCIsICAgJ1InLCAwLCBkb19yYXdfZXh0cmFjdCksCisgIEFDVElPTigiZnN5cy10YXJmaWxlIiwgIDAsICAgMCwgZG9fZnN5c3RhcmZpbGUpLAorICBBQ1RJT04oInNob3ciLCAgICAgICAgICAnVycsIDAsIGRvX3Nob3dpbmZvKSwKKworICB7ICJuZXciLCAgICAgICAgICAgMCwgICAwLCAmb2xkZm9ybWF0ZmxhZywgTlVMTCwgICAgICAgICBOVUxMLCAgICAgICAgICAwIH0sCisgIHsgIm9sZCIsICAgICAgICAgICAwLCAgIDAsICZvbGRmb3JtYXRmbGFnLCBOVUxMLCAgICAgICAgIE5VTEwsICAgICAgICAgIDEgfSwKKyAgeyAiZGVidWciLCAgICAgICAgICdEJywgMCwgJmRlYnVnZmxhZywgICAgIE5VTEwsICAgICAgICAgTlVMTCwgICAgICAgICAgMSB9LAorICB7ICJ2ZXJib3NlIiwgICAgICAgJ3YnLCAwLCAmb3B0X3ZlcmJvc2UsICAgTlVMTCwgICAgICAgICBOVUxMLCAgICAgICAgICAxIH0sCisgIHsgIm5vY2hlY2siLCAgICAgICAwLCAgIDAsICZub2NoZWNrZmxhZywgICBOVUxMLCAgICAgICAgIE5VTEwsICAgICAgICAgIDEgfSwKKyAgeyAiY29tcHJlc3Npb24iLCAgICd6JywgMSwgTlVMTCwgICAgICAgICAgIE5VTEwsICAgICAgICAgc2V0X2NvbXByZXNzX2xldmVsIH0sCisgIHsgImNvbXByZXNzX3R5cGUiLCAnWicsIDEsIE5VTEwsICAgICAgICAgICBOVUxMLCAgICAgICAgIHNldGNvbXByZXNzdHlwZSAgfSwKKyAgeyAic2hvd2Zvcm1hdCIsICAgIDAsICAgMSwgTlVMTCwgICAgICAgICAgICZzaG93Zm9ybWF0LCAgTlVMTCAgICAgICAgICAgICB9LAorICB7ICJoZWxwIiwgICAgICAgICAgJ2gnLCAwLCBOVUxMLCAgICAgICAgICAgTlVMTCwgICAgICAgICB1c2FnZSAgICAgICAgICAgIH0sCisgIHsgInZlcnNpb24iLCAgICAgICAwLCAgIDAsIE5VTEwsICAgICAgICAgICBOVUxMLCAgICAgICAgIHByaW50dmVyc2lvbiAgICAgfSwKKyAgeyAgTlVMTCwgICAgICAgICAgIDAsICAgMCwgTlVMTCwgICAgICAgICAgIE5VTEwsICAgICAgICAgTlVMTCAgICAgICAgICAgICB9Cit9OworCitpbnQgbWFpbihpbnQgYXJnYywgY29uc3QgY2hhciAqY29uc3QgKmFyZ3YpIHsKKyAgaW50IHJldDsKKworICBzZXRsb2NhbGUoTENfTlVNRVJJQywgIlBPU0lYIik7CisgIHNldGxvY2FsZShMQ19BTEwsICIiKTsKKyAgYmluZHRleHRkb21haW4oUEFDS0FHRSwgTE9DQUxFRElSKTsKKyAgdGV4dGRvbWFpbihQQUNLQUdFKTsKKworICBkcGtnX3NldF9wcm9nbmFtZShCQUNLRU5EKTsKKyAgc3RhbmRhcmRfc3RhcnR1cCgpOworICBteW9wdCgmYXJndiwgY21kaW5mb3MsIHByaW50Zm9yaGVscCk7CisKKyAgaWYgKCFjaXBhY3Rpb24pIGJhZHVzYWdlKF8oIm5lZWQgYW4gYWN0aW9uIG9wdGlvbiIpKTsKKworICB1bnNldGVudigiR1pJUCIpOworCisgIHJldCA9IGNpcGFjdGlvbi0+YWN0aW9uKGFyZ3YpOworCisgIHN0YW5kYXJkX3NodXRkb3duKCk7CisKKyAgcmV0dXJuIHJldDsKK30KKworLyogdmk6IHN3PTIKKyAqLwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kcGtnLXNwbGl0L01ha2VmaWxlLmFtIGIvZHBrZy0xLjE2LjEuMS9kcGtnLXNwbGl0L01ha2VmaWxlLmFtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmU5ODA4ZjYKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2Rwa2ctc3BsaXQvTWFrZWZpbGUuYW0KQEAgLTAsMCArMSwyOCBAQAorIyMgUHJvY2VzcyB0aGlzIGZpbGUgd2l0aCBhdXRvbWFrZSB0byBwcm9kdWNlIE1ha2VmaWxlLmluCisKK2xvY2FsZWRpciA9ICQoZGF0YWRpcikvbG9jYWxlCitBTV9DUFBGTEFHUyA9IFwKKwktRExPQ0FMRURJUj1cIiQobG9jYWxlZGlyKVwiIFwKKwktREFETUlORElSPVwiJChhZG1pbmRpcilcIiBcCisJLWlkaXJhZnRlciAkKHRvcF9zcmNkaXIpL2xpYi9jb21wYXQgXAorCS1JJCh0b3BfYnVpbGRkaXIpIFwKKwktSSQodG9wX3NyY2RpcikvbGliCisKKworYmluX1BST0dSQU1TID0gZHBrZy1zcGxpdAorCitkcGtnX3NwbGl0X1NPVVJDRVMgPSBcCisJZHBrZy1zcGxpdC5oIFwKKwlpbmZvLmMgXAorCWpvaW4uYyBcCisJbWFpbi5jIFwKKwlxdWV1ZS5jIFwKKwlzcGxpdC5jCisKK2Rwa2dfc3BsaXRfTERBREQgPSBcCisJLi4vbGliL2Rwa2cvbGliZHBrZy5hIFwKKwkuLi9saWIvY29tcGF0L2xpYmNvbXBhdC5hIFwKKwkkKExJQklOVEwpCisKK2luc3RhbGwtZGF0YS1sb2NhbDoKKwkkKG1rZGlyX3ApICQoREVTVERJUikkKGFkbWluZGlyKS9wYXJ0cwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kcGtnLXNwbGl0L01ha2VmaWxlLmluIGIvZHBrZy0xLjE2LjEuMS9kcGtnLXNwbGl0L01ha2VmaWxlLmluCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmM1ZTQwNmEKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2Rwa2ctc3BsaXQvTWFrZWZpbGUuaW4KQEAgLTAsMCArMSw1NjMgQEAKKyMgTWFrZWZpbGUuaW4gZ2VuZXJhdGVkIGJ5IGF1dG9tYWtlIDEuMTEuMSBmcm9tIE1ha2VmaWxlLmFtLgorIyBAY29uZmlndXJlX2lucHV0QAorCisjIENvcHlyaWdodCAoQykgMTk5NCwgMTk5NSwgMTk5NiwgMTk5NywgMTk5OCwgMTk5OSwgMjAwMCwgMjAwMSwgMjAwMiwKKyMgMjAwMywgMjAwNCwgMjAwNSwgMjAwNiwgMjAwNywgMjAwOCwgMjAwOSAgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLAorIyBJbmMuCisjIFRoaXMgTWFrZWZpbGUuaW4gaXMgZnJlZSBzb2Z0d2FyZTsgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbgorIyBnaXZlcyB1bmxpbWl0ZWQgcGVybWlzc2lvbiB0byBjb3B5IGFuZC9vciBkaXN0cmlidXRlIGl0LAorIyB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9ucywgYXMgbG9uZyBhcyB0aGlzIG5vdGljZSBpcyBwcmVzZXJ2ZWQuCisKKyMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisjIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWSwgdG8gdGhlIGV4dGVudCBwZXJtaXR0ZWQgYnkgbGF3OyB3aXRob3V0CisjIGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEKKyMgUEFSVElDVUxBUiBQVVJQT1NFLgorCitAU0VUX01BS0VACisKK1ZQQVRIID0gQHNyY2RpckAKK3BrZ2RhdGFkaXIgPSAkKGRhdGFkaXIpL0BQQUNLQUdFQAorcGtnaW5jbHVkZWRpciA9ICQoaW5jbHVkZWRpcikvQFBBQ0tBR0VACitwa2dsaWJkaXIgPSAkKGxpYmRpcikvQFBBQ0tBR0VACitwa2dsaWJleGVjZGlyID0gJChsaWJleGVjZGlyKS9AUEFDS0FHRUAKK2FtX19jZCA9IENEUEFUSD0iJCR7WlNIX1ZFUlNJT04rLn0kKFBBVEhfU0VQQVJBVE9SKSIgJiYgY2QKK2luc3RhbGxfc2hfREFUQSA9ICQoaW5zdGFsbF9zaCkgLWMgLW0gNjQ0CitpbnN0YWxsX3NoX1BST0dSQU0gPSAkKGluc3RhbGxfc2gpIC1jCitpbnN0YWxsX3NoX1NDUklQVCA9ICQoaW5zdGFsbF9zaCkgLWMKK0lOU1RBTExfSEVBREVSID0gJChJTlNUQUxMX0RBVEEpCit0cmFuc2Zvcm0gPSAkKHByb2dyYW1fdHJhbnNmb3JtX25hbWUpCitOT1JNQUxfSU5TVEFMTCA9IDoKK1BSRV9JTlNUQUxMID0gOgorUE9TVF9JTlNUQUxMID0gOgorTk9STUFMX1VOSU5TVEFMTCA9IDoKK1BSRV9VTklOU1RBTEwgPSA6CitQT1NUX1VOSU5TVEFMTCA9IDoKK2J1aWxkX3RyaXBsZXQgPSBAYnVpbGRACitob3N0X3RyaXBsZXQgPSBAaG9zdEAKK2Jpbl9QUk9HUkFNUyA9IGRwa2ctc3BsaXQkKEVYRUVYVCkKK3N1YmRpciA9IGRwa2ctc3BsaXQKK0RJU1RfQ09NTU9OID0gJChzcmNkaXIpL01ha2VmaWxlLmFtICQoc3JjZGlyKS9NYWtlZmlsZS5pbgorQUNMT0NBTF9NNCA9ICQodG9wX3NyY2RpcikvYWNsb2NhbC5tNAorYW1fX2FjbG9jYWxfbTRfZGVwcyA9ICQodG9wX3NyY2RpcikvbTQvZHBrZy1hcmNoLm00IFwKKwkkKHRvcF9zcmNkaXIpL200L2Rwa2ctYnVpbGQubTQgXAorCSQodG9wX3NyY2RpcikvbTQvZHBrZy1jb21waWxlci5tNCBcCisJJCh0b3Bfc3JjZGlyKS9tNC9kcGtnLWNvdmVyYWdlLm00IFwKKwkkKHRvcF9zcmNkaXIpL200L2Rwa2ctZnVuY3MubTQgJCh0b3Bfc3JjZGlyKS9tNC9kcGtnLWxpYnMubTQgXAorCSQodG9wX3NyY2RpcikvbTQvZHBrZy1saW5rZXIubTQgJCh0b3Bfc3JjZGlyKS9tNC9kcGtnLXByb2dzLm00IFwKKwkkKHRvcF9zcmNkaXIpL200L2Rwa2ctdHlwZXMubTQgXAorCSQodG9wX3NyY2RpcikvbTQvZHBrZy11bmljb2RlLm00ICQodG9wX3NyY2RpcikvbTQvZ2V0dGV4dC5tNCBcCisJJCh0b3Bfc3JjZGlyKS9tNC9pY29udi5tNCAkKHRvcF9zcmNkaXIpL200L2ludGxtYWNvc3gubTQgXAorCSQodG9wX3NyY2RpcikvbTQvbGliLWxkLm00ICQodG9wX3NyY2RpcikvbTQvbGliLWxpbmsubTQgXAorCSQodG9wX3NyY2RpcikvbTQvbGliLXByZWZpeC5tNCAkKHRvcF9zcmNkaXIpL200L25scy5tNCBcCisJJCh0b3Bfc3JjZGlyKS9tNC9wby5tNCAkKHRvcF9zcmNkaXIpL200L3Byb2d0ZXN0Lm00IFwKKwkkKHRvcF9zcmNkaXIpL2NvbmZpZ3VyZS5hYworYW1fX2NvbmZpZ3VyZV9kZXBzID0gJChhbV9fYWNsb2NhbF9tNF9kZXBzKSAkKENPTkZJR1VSRV9ERVBFTkRFTkNJRVMpIFwKKwkkKEFDTE9DQUxfTTQpCitta2luc3RhbGxkaXJzID0gJChpbnN0YWxsX3NoKSAtZAorQ09ORklHX0hFQURFUiA9ICQodG9wX2J1aWxkZGlyKS9jb25maWcuaAorQ09ORklHX0NMRUFOX0ZJTEVTID0KK0NPTkZJR19DTEVBTl9WUEFUSF9GSUxFUyA9CithbV9faW5zdGFsbGRpcnMgPSAiJChERVNURElSKSQoYmluZGlyKSIKK1BST0dSQU1TID0gJChiaW5fUFJPR1JBTVMpCithbV9kcGtnX3NwbGl0X09CSkVDVFMgPSBpbmZvLiQoT0JKRVhUKSBqb2luLiQoT0JKRVhUKSBtYWluLiQoT0JKRVhUKSBcCisJcXVldWUuJChPQkpFWFQpIHNwbGl0LiQoT0JKRVhUKQorZHBrZ19zcGxpdF9PQkpFQ1RTID0gJChhbV9kcGtnX3NwbGl0X09CSkVDVFMpCithbV9fREVQRU5ERU5DSUVTXzEgPQorZHBrZ19zcGxpdF9ERVBFTkRFTkNJRVMgPSAuLi9saWIvZHBrZy9saWJkcGtnLmEgXAorCS4uL2xpYi9jb21wYXQvbGliY29tcGF0LmEgJChhbV9fREVQRU5ERU5DSUVTXzEpCitERUZBVUxUX0lOQ0xVREVTID0gCitkZXBjb21wID0gJChTSEVMTCkgJCh0b3Bfc3JjZGlyKS9idWlsZC1hdXgvZGVwY29tcAorYW1fX2RlcGZpbGVzX21heWJlID0gZGVwZmlsZXMKK2FtX19tdiA9IG12IC1mCitDT01QSUxFID0gJChDQykgJChERUZTKSAkKERFRkFVTFRfSU5DTFVERVMpICQoSU5DTFVERVMpICQoQU1fQ1BQRkxBR1MpIFwKKwkkKENQUEZMQUdTKSAkKEFNX0NGTEFHUykgJChDRkxBR1MpCitBTV9WX0NDID0gJChhbV9fdl9DQ18kKFYpKQorYW1fX3ZfQ0NfID0gJChhbV9fdl9DQ18kKEFNX0RFRkFVTFRfVkVSQk9TSVRZKSkKK2FtX192X0NDXzAgPSBAZWNobyAiICBDQyAgICAiICRAOworQU1fVl9hdCA9ICQoYW1fX3ZfYXRfJChWKSkKK2FtX192X2F0XyA9ICQoYW1fX3ZfYXRfJChBTV9ERUZBVUxUX1ZFUkJPU0lUWSkpCithbV9fdl9hdF8wID0gQAorQ0NMRCA9ICQoQ0MpCitMSU5LID0gJChDQ0xEKSAkKEFNX0NGTEFHUykgJChDRkxBR1MpICQoQU1fTERGTEFHUykgJChMREZMQUdTKSAtbyAkQAorQU1fVl9DQ0xEID0gJChhbV9fdl9DQ0xEXyQoVikpCithbV9fdl9DQ0xEXyA9ICQoYW1fX3ZfQ0NMRF8kKEFNX0RFRkFVTFRfVkVSQk9TSVRZKSkKK2FtX192X0NDTERfMCA9IEBlY2hvICIgIENDTEQgICIgJEA7CitBTV9WX0dFTiA9ICQoYW1fX3ZfR0VOXyQoVikpCithbV9fdl9HRU5fID0gJChhbV9fdl9HRU5fJChBTV9ERUZBVUxUX1ZFUkJPU0lUWSkpCithbV9fdl9HRU5fMCA9IEBlY2hvICIgIEdFTiAgICIgJEA7CitTT1VSQ0VTID0gJChkcGtnX3NwbGl0X1NPVVJDRVMpCitESVNUX1NPVVJDRVMgPSAkKGRwa2dfc3BsaXRfU09VUkNFUykKK0VUQUdTID0gZXRhZ3MKK0NUQUdTID0gY3RhZ3MKK0RJU1RGSUxFUyA9ICQoRElTVF9DT01NT04pICQoRElTVF9TT1VSQ0VTKSAkKFRFWElORk9TKSAkKEVYVFJBX0RJU1QpCitBQ0xPQ0FMID0gQEFDTE9DQUxACitBTVRBUiA9IEBBTVRBUkAKK0FNX0RFRkFVTFRfVkVSQk9TSVRZID0gQEFNX0RFRkFVTFRfVkVSQk9TSVRZQAorQVVUT0NPTkYgPSBAQVVUT0NPTkZACitBVVRPSEVBREVSID0gQEFVVE9IRUFERVJACitBVVRPTUFLRSA9IEBBVVRPTUFLRUAKK0FXSyA9IEBBV0tACitCWjJfTElCUyA9IEBCWjJfTElCU0AKK0NDID0gQENDQAorQ0NERVBNT0RFID0gQENDREVQTU9ERUAKK0NGTEFHUyA9IEBDRkxBR1NACitDUFAgPSBAQ1BQQAorQ1BQRkxBR1MgPSBAQ1BQRkxBR1NACitDVVJTRVNfTElCUyA9IEBDVVJTRVNfTElCU0AKK0NYWCA9IEBDWFhACitDWFhERVBNT0RFID0gQENYWERFUE1PREVACitDWFhGTEFHUyA9IEBDWFhGTEFHU0AKK0NZR1BBVEhfVyA9IEBDWUdQQVRIX1dACitERUZTID0gQERFRlNACitERVBESVIgPSBAREVQRElSQAorRE9YWUdFTiA9IEBET1hZR0VOQAorRUNIT19DID0gQEVDSE9fQ0AKK0VDSE9fTiA9IEBFQ0hPX05ACitFQ0hPX1QgPSBARUNIT19UQAorRUdSRVAgPSBARUdSRVBACitFWEVFWFQgPSBARVhFRVhUQAorR0NPViA9IEBHQ09WQAorR0VUVEVYVF9NQUNST19WRVJTSU9OID0gQEdFVFRFWFRfTUFDUk9fVkVSU0lPTkAKK0dNU0dGTVQgPSBAR01TR0ZNVEAKK0dNU0dGTVRfMDE1ID0gQEdNU0dGTVRfMDE1QAorR1JFUCA9IEBHUkVQQAorSEFWRV9ET1QgPSBASEFWRV9ET1RACitJTlNUQUxMID0gQElOU1RBTExACitJTlNUQUxMX0RBVEEgPSBASU5TVEFMTF9EQVRBQAorSU5TVEFMTF9QUk9HUkFNID0gQElOU1RBTExfUFJPR1JBTUAKK0lOU1RBTExfU0NSSVBUID0gQElOU1RBTExfU0NSSVBUQAorSU5TVEFMTF9TVFJJUF9QUk9HUkFNID0gQElOU1RBTExfU1RSSVBfUFJPR1JBTUAKK0lOVExMSUJTID0gQElOVExMSUJTQAorSU5UTF9NQUNPU1hfTElCUyA9IEBJTlRMX01BQ09TWF9MSUJTQAorTENPViA9IEBMQ09WQAorTENPVl9HRU5IVE1MID0gQExDT1ZfR0VOSFRNTEAKK0xERkxBR1MgPSBATERGTEFHU0AKK0xFWCA9IEBMRVhACitMRVhMSUIgPSBATEVYTElCQAorTEVYX09VVFBVVF9ST09UID0gQExFWF9PVVRQVVRfUk9PVEAKK0xJQklDT05WID0gQExJQklDT05WQAorTElCSU5UTCA9IEBMSUJJTlRMQAorTElCT0JKUyA9IEBMSUJPQkpTQAorTElCUyA9IEBMSUJTQAorTFRMSUJJQ09OViA9IEBMVExJQklDT05WQAorTFRMSUJJTlRMID0gQExUTElCSU5UTEAKK0xUTElCT0JKUyA9IEBMVExJQk9CSlNACitNQUtFSU5GTyA9IEBNQUtFSU5GT0AKK01LRElSX1AgPSBATUtESVJfUEAKK01TR0ZNVCA9IEBNU0dGTVRACitNU0dGTVRfMDE1ID0gQE1TR0ZNVF8wMTVACitNU0dNRVJHRSA9IEBNU0dNRVJHRUAKK09CSkVYVCA9IEBPQkpFWFRACitQQUNLQUdFID0gQFBBQ0tBR0VACitQQUNLQUdFX0JVR1JFUE9SVCA9IEBQQUNLQUdFX0JVR1JFUE9SVEAKK1BBQ0tBR0VfTkFNRSA9IEBQQUNLQUdFX05BTUVACitQQUNLQUdFX1NUUklORyA9IEBQQUNLQUdFX1NUUklOR0AKK1BBQ0tBR0VfVEFSTkFNRSA9IEBQQUNLQUdFX1RBUk5BTUVACitQQUNLQUdFX1VSTCA9IEBQQUNLQUdFX1VSTEAKK1BBQ0tBR0VfVkVSU0lPTiA9IEBQQUNLQUdFX1ZFUlNJT05ACitQQVRIX1NFUEFSQVRPUiA9IEBQQVRIX1NFUEFSQVRPUkAKK1BFUkwgPSBAUEVSTEAKK1BFUkxfQ09WRVIgPSBAUEVSTF9DT1ZFUkAKK1BFUkxfQ09WRVJBR0UgPSBAUEVSTF9DT1ZFUkFHRUAKK1BFUkxfTElCRElSID0gQFBFUkxfTElCRElSQAorUEtHX0NPTkZJRyA9IEBQS0dfQ09ORklHQAorUEtHX0NPTkZJR19MSUJESVIgPSBAUEtHX0NPTkZJR19MSUJESVJACitQS0dfQ09ORklHX1BBVEggPSBAUEtHX0NPTkZJR19QQVRIQAorUE80QSA9IEBQTzRBQAorUE9EMk1BTiA9IEBQT0QyTUFOQAorUE9TVUIgPSBAUE9TVUJACitSQU5MSUIgPSBAUkFOTElCQAorU0VMSU5VWF9MSUJTID0gQFNFTElOVVhfTElCU0AKK1NFVF9NQUtFID0gQFNFVF9NQUtFQAorU0hFTEwgPSBAU0hFTExACitTU0RfTElCUyA9IEBTU0RfTElCU0AKK1NUUklQID0gQFNUUklQQAorVVNFX05MUyA9IEBVU0VfTkxTQAorVVNFX1BPNEEgPSBAVVNFX1BPNEFACitVU0VfVU5JQ09ERSA9IEBVU0VfVU5JQ09ERUAKK1ZFUlNJT04gPSBAVkVSU0lPTkAKK1hHRVRURVhUID0gQFhHRVRURVhUQAorWEdFVFRFWFRfMDE1ID0gQFhHRVRURVhUXzAxNUAKK1hHRVRURVhUX0VYVFJBX09QVElPTlMgPSBAWEdFVFRFWFRfRVhUUkFfT1BUSU9OU0AKK1pMSUJfTElCUyA9IEBaTElCX0xJQlNACithYnNfYnVpbGRkaXIgPSBAYWJzX2J1aWxkZGlyQAorYWJzX3NyY2RpciA9IEBhYnNfc3JjZGlyQAorYWJzX3RvcF9idWlsZGRpciA9IEBhYnNfdG9wX2J1aWxkZGlyQAorYWJzX3RvcF9zcmNkaXIgPSBAYWJzX3RvcF9zcmNkaXJACithY19jdF9DQyA9IEBhY19jdF9DQ0AKK2FjX2N0X0NYWCA9IEBhY19jdF9DWFhACithZG1pbmRpciA9IEBhZG1pbmRpckAKK2FtX19pbmNsdWRlID0gQGFtX19pbmNsdWRlQAorYW1fX2xlYWRpbmdfZG90ID0gQGFtX19sZWFkaW5nX2RvdEAKK2FtX19xdW90ZSA9IEBhbV9fcXVvdGVACithbV9fdGFyID0gQGFtX190YXJACithbV9fdW50YXIgPSBAYW1fX3VudGFyQAorYmluZGlyID0gQGJpbmRpckAKK2J1aWxkID0gQGJ1aWxkQAorYnVpbGRfYWxpYXMgPSBAYnVpbGRfYWxpYXNACitidWlsZF9jcHUgPSBAYnVpbGRfY3B1QAorYnVpbGRfb3MgPSBAYnVpbGRfb3NACitidWlsZF92ZW5kb3IgPSBAYnVpbGRfdmVuZG9yQAorYnVpbGRkaXIgPSBAYnVpbGRkaXJACitkYXRhZGlyID0gQGRhdGFkaXJACitkYXRhcm9vdGRpciA9IEBkYXRhcm9vdGRpckAKK2RvY2RpciA9IEBkb2NkaXJACitkdmlkaXIgPSBAZHZpZGlyQAorZXhlY19wcmVmaXggPSBAZXhlY19wcmVmaXhACitob3N0ID0gQGhvc3RACitob3N0X2FsaWFzID0gQGhvc3RfYWxpYXNACitob3N0X2NwdSA9IEBob3N0X2NwdUAKK2hvc3Rfb3MgPSBAaG9zdF9vc0AKK2hvc3RfdmVuZG9yID0gQGhvc3RfdmVuZG9yQAoraHRtbGRpciA9IEBodG1sZGlyQAoraW5jbHVkZWRpciA9IEBpbmNsdWRlZGlyQAoraW5mb2RpciA9IEBpbmZvZGlyQAoraW5zdGFsbF9zaCA9IEBpbnN0YWxsX3NoQAorbGliZGlyID0gQGxpYmRpckAKK2xpYmV4ZWNkaXIgPSBAbGliZXhlY2RpckAKK2xvY2FsZWRpciA9ICQoZGF0YWRpcikvbG9jYWxlCitsb2NhbHN0YXRlZGlyID0gQGxvY2Fsc3RhdGVkaXJACitsb2dkaXIgPSBAbG9nZGlyQAorbWFuZGlyID0gQG1hbmRpckAKK21rZGlyX3AgPSBAbWtkaXJfcEAKK29sZGluY2x1ZGVkaXIgPSBAb2xkaW5jbHVkZWRpckAKK3BkZmRpciA9IEBwZGZkaXJACitwcmVmaXggPSBAcHJlZml4QAorcHJvZ3JhbV90cmFuc2Zvcm1fbmFtZSA9IEBwcm9ncmFtX3RyYW5zZm9ybV9uYW1lQAorcHNkaXIgPSBAcHNkaXJACitzYmluZGlyID0gQHNiaW5kaXJACitzaGFyZWRzdGF0ZWRpciA9IEBzaGFyZWRzdGF0ZWRpckAKK3NyY2RpciA9IEBzcmNkaXJACitzeXNjb25mZGlyID0gQHN5c2NvbmZkaXJACit0YXJnZXRfYWxpYXMgPSBAdGFyZ2V0X2FsaWFzQAordG9wX2J1aWxkX3ByZWZpeCA9IEB0b3BfYnVpbGRfcHJlZml4QAordG9wX2J1aWxkZGlyID0gQHRvcF9idWlsZGRpckAKK3RvcF9zcmNkaXIgPSBAdG9wX3NyY2RpckAKK0FNX0NQUEZMQUdTID0gXAorCS1ETE9DQUxFRElSPVwiJChsb2NhbGVkaXIpXCIgXAorCS1EQURNSU5ESVI9XCIkKGFkbWluZGlyKVwiIFwKKwktaWRpcmFmdGVyICQodG9wX3NyY2RpcikvbGliL2NvbXBhdCBcCisJLUkkKHRvcF9idWlsZGRpcikgXAorCS1JJCh0b3Bfc3JjZGlyKS9saWIKKworZHBrZ19zcGxpdF9TT1VSQ0VTID0gXAorCWRwa2ctc3BsaXQuaCBcCisJaW5mby5jIFwKKwlqb2luLmMgXAorCW1haW4uYyBcCisJcXVldWUuYyBcCisJc3BsaXQuYworCitkcGtnX3NwbGl0X0xEQUREID0gXAorCS4uL2xpYi9kcGtnL2xpYmRwa2cuYSBcCisJLi4vbGliL2NvbXBhdC9saWJjb21wYXQuYSBcCisJJChMSUJJTlRMKQorCithbGw6IGFsbC1hbQorCisuU1VGRklYRVM6CisuU1VGRklYRVM6IC5jIC5vIC5vYmoKKyQoc3JjZGlyKS9NYWtlZmlsZS5pbjogICQoc3JjZGlyKS9NYWtlZmlsZS5hbSAgJChhbV9fY29uZmlndXJlX2RlcHMpCisJQGZvciBkZXAgaW4gJD87IGRvIFwKKwkgIGNhc2UgJyQoYW1fX2NvbmZpZ3VyZV9kZXBzKScgaW4gXAorCSAgICAqJCRkZXAqKSBcCisJICAgICAgKCBjZCAkKHRvcF9idWlsZGRpcikgJiYgJChNQUtFKSAkKEFNX01BS0VGTEFHUykgYW0tLXJlZnJlc2ggKSBcCisJICAgICAgICAmJiB7IGlmIHRlc3QgLWYgJEA7IHRoZW4gZXhpdCAwOyBlbHNlIGJyZWFrOyBmaTsgfTsgXAorCSAgICAgIGV4aXQgMTs7IFwKKwkgIGVzYWM7IFwKKwlkb25lOyBcCisJZWNobyAnIGNkICQodG9wX3NyY2RpcikgJiYgJChBVVRPTUFLRSkgLS1mb3JlaWduIGRwa2ctc3BsaXQvTWFrZWZpbGUnOyBcCisJJChhbV9fY2QpICQodG9wX3NyY2RpcikgJiYgXAorCSAgJChBVVRPTUFLRSkgLS1mb3JlaWduIGRwa2ctc3BsaXQvTWFrZWZpbGUKKy5QUkVDSU9VUzogTWFrZWZpbGUKK01ha2VmaWxlOiAkKHNyY2RpcikvTWFrZWZpbGUuaW4gJCh0b3BfYnVpbGRkaXIpL2NvbmZpZy5zdGF0dXMKKwlAY2FzZSAnJD8nIGluIFwKKwkgICpjb25maWcuc3RhdHVzKikgXAorCSAgICBjZCAkKHRvcF9idWlsZGRpcikgJiYgJChNQUtFKSAkKEFNX01BS0VGTEFHUykgYW0tLXJlZnJlc2g7OyBcCisJICAqKSBcCisJICAgIGVjaG8gJyBjZCAkKHRvcF9idWlsZGRpcikgJiYgJChTSEVMTCkgLi9jb25maWcuc3RhdHVzICQoc3ViZGlyKS8kQCAkKGFtX19kZXBmaWxlc19tYXliZSknOyBcCisJICAgIGNkICQodG9wX2J1aWxkZGlyKSAmJiAkKFNIRUxMKSAuL2NvbmZpZy5zdGF0dXMgJChzdWJkaXIpLyRAICQoYW1fX2RlcGZpbGVzX21heWJlKTs7IFwKKwllc2FjOworCiskKHRvcF9idWlsZGRpcikvY29uZmlnLnN0YXR1czogJCh0b3Bfc3JjZGlyKS9jb25maWd1cmUgJChDT05GSUdfU1RBVFVTX0RFUEVOREVOQ0lFUykKKwljZCAkKHRvcF9idWlsZGRpcikgJiYgJChNQUtFKSAkKEFNX01BS0VGTEFHUykgYW0tLXJlZnJlc2gKKworJCh0b3Bfc3JjZGlyKS9jb25maWd1cmU6ICAkKGFtX19jb25maWd1cmVfZGVwcykKKwljZCAkKHRvcF9idWlsZGRpcikgJiYgJChNQUtFKSAkKEFNX01BS0VGTEFHUykgYW0tLXJlZnJlc2gKKyQoQUNMT0NBTF9NNCk6ICAkKGFtX19hY2xvY2FsX200X2RlcHMpCisJY2QgJCh0b3BfYnVpbGRkaXIpICYmICQoTUFLRSkgJChBTV9NQUtFRkxBR1MpIGFtLS1yZWZyZXNoCiskKGFtX19hY2xvY2FsX200X2RlcHMpOgoraW5zdGFsbC1iaW5QUk9HUkFNUzogJChiaW5fUFJPR1JBTVMpCisJQCQoTk9STUFMX0lOU1RBTEwpCisJdGVzdCAteiAiJChiaW5kaXIpIiB8fCAkKE1LRElSX1ApICIkKERFU1RESVIpJChiaW5kaXIpIgorCUBsaXN0PSckKGJpbl9QUk9HUkFNUyknOyB0ZXN0IC1uICIkKGJpbmRpcikiIHx8IGxpc3Q9OyBcCisJZm9yIHAgaW4gJCRsaXN0OyBkbyBlY2hvICIkJHAgJCRwIjsgZG9uZSB8IFwKKwlzZWQgJ3MvJChFWEVFWFQpJCQvLycgfCBcCisJd2hpbGUgcmVhZCBwIHAxOyBkbyBpZiB0ZXN0IC1mICQkcDsgXAorCSAgdGhlbiBlY2hvICIkJHAiOyBlY2hvICIkJHAiOyBlbHNlIDo7IGZpOyBcCisJZG9uZSB8IFwKKwlzZWQgLWUgJ3A7cywuKi8sLDtuO2gnIC1lICdzfC4qfC58JyBcCisJICAgIC1lICdwO3g7cywuKi8sLDtzLyQoRVhFRVhUKSQkLy87JCh0cmFuc2Zvcm0pO3MvJCQvJChFWEVFWFQpLycgfCBcCisJc2VkICdOO047TjtzLFxuLCAsZycgfCBcCisJJChBV0spICdCRUdJTiB7IGZpbGVzWyIuIl0gPSAiIjsgZGlyc1siLiJdID0gMSB9IFwKKwkgIHsgZD0kJDM7IGlmIChkaXJzW2RdICE9IDEpIHsgcHJpbnQgImQiLCBkOyBkaXJzW2RdID0gMSB9IFwKKwkgICAgaWYgKCQkMiA9PSAkJDQpIGZpbGVzW2RdID0gZmlsZXNbZF0gIiAiICQkMTsgXAorCSAgICBlbHNlIHsgcHJpbnQgImYiLCAkJDMgIi8iICQkNCwgJCQxOyB9IH0gXAorCSAgRU5EIHsgZm9yIChkIGluIGZpbGVzKSBwcmludCAiZiIsIGQsIGZpbGVzW2RdIH0nIHwgXAorCXdoaWxlIHJlYWQgdHlwZSBkaXIgZmlsZXM7IGRvIFwKKwkgICAgaWYgdGVzdCAiJCRkaXIiID0gLjsgdGhlbiBkaXI9OyBlbHNlIGRpcj0vJCRkaXI7IGZpOyBcCisJICAgIHRlc3QgLXogIiQkZmlsZXMiIHx8IHsgXAorCSAgICAgIGVjaG8gIiAkKElOU1RBTExfUFJPR1JBTV9FTlYpICQoSU5TVEFMTF9QUk9HUkFNKSAkJGZpbGVzICckKERFU1RESVIpJChiaW5kaXIpJCRkaXInIjsgXAorCSAgICAgICQoSU5TVEFMTF9QUk9HUkFNX0VOVikgJChJTlNUQUxMX1BST0dSQU0pICQkZmlsZXMgIiQoREVTVERJUikkKGJpbmRpcikkJGRpciIgfHwgZXhpdCAkJD87IFwKKwkgICAgfSBcCisJOyBkb25lCisKK3VuaW5zdGFsbC1iaW5QUk9HUkFNUzoKKwlAJChOT1JNQUxfVU5JTlNUQUxMKQorCUBsaXN0PSckKGJpbl9QUk9HUkFNUyknOyB0ZXN0IC1uICIkKGJpbmRpcikiIHx8IGxpc3Q9OyBcCisJZmlsZXM9YGZvciBwIGluICQkbGlzdDsgZG8gZWNobyAiJCRwIjsgZG9uZSB8IFwKKwkgIHNlZCAtZSAnaDtzLF4uKi8sLDtzLyQoRVhFRVhUKSQkLy87JCh0cmFuc2Zvcm0pJyBcCisJICAgICAgLWUgJ3MvJCQvJChFWEVFWFQpLycgYDsgXAorCXRlc3QgLW4gIiQkbGlzdCIgfHwgZXhpdCAwOyBcCisJZWNobyAiICggY2QgJyQoREVTVERJUikkKGJpbmRpciknICYmIHJtIC1mIiAkJGZpbGVzICIpIjsgXAorCWNkICIkKERFU1RESVIpJChiaW5kaXIpIiAmJiBybSAtZiAkJGZpbGVzCisKK2NsZWFuLWJpblBST0dSQU1TOgorCS10ZXN0IC16ICIkKGJpbl9QUk9HUkFNUykiIHx8IHJtIC1mICQoYmluX1BST0dSQU1TKQorZHBrZy1zcGxpdCQoRVhFRVhUKTogJChkcGtnX3NwbGl0X09CSkVDVFMpICQoZHBrZ19zcGxpdF9ERVBFTkRFTkNJRVMpIAorCUBybSAtZiBkcGtnLXNwbGl0JChFWEVFWFQpCisJJChBTV9WX0NDTEQpJChMSU5LKSAkKGRwa2dfc3BsaXRfT0JKRUNUUykgJChkcGtnX3NwbGl0X0xEQUREKSAkKExJQlMpCisKK21vc3RseWNsZWFuLWNvbXBpbGU6CisJLXJtIC1mICouJChPQkpFWFQpCisKK2Rpc3RjbGVhbi1jb21waWxlOgorCS1ybSAtZiAqLnRhYi5jCisKK0BBTURFUF9UUlVFQEBhbV9faW5jbHVkZUAgQGFtX19xdW90ZUAuLyQoREVQRElSKS9pbmZvLlBvQGFtX19xdW90ZUAKK0BBTURFUF9UUlVFQEBhbV9faW5jbHVkZUAgQGFtX19xdW90ZUAuLyQoREVQRElSKS9qb2luLlBvQGFtX19xdW90ZUAKK0BBTURFUF9UUlVFQEBhbV9faW5jbHVkZUAgQGFtX19xdW90ZUAuLyQoREVQRElSKS9tYWluLlBvQGFtX19xdW90ZUAKK0BBTURFUF9UUlVFQEBhbV9faW5jbHVkZUAgQGFtX19xdW90ZUAuLyQoREVQRElSKS9xdWV1ZS5Qb0BhbV9fcXVvdGVACitAQU1ERVBfVFJVRUBAYW1fX2luY2x1ZGVAIEBhbV9fcXVvdGVALi8kKERFUERJUikvc3BsaXQuUG9AYW1fX3F1b3RlQAorCisuYy5vOgorQGFtX19mYXN0ZGVwQ0NfVFJVRUAJJChBTV9WX0NDKSQoQ09NUElMRSkgLU1UICRAIC1NRCAtTVAgLU1GICQoREVQRElSKS8kKi5UcG8gLWMgLW8gJEAgJDwKK0BhbV9fZmFzdGRlcENDX1RSVUVACSQoQU1fVl9hdCkkKGFtX19tdikgJChERVBESVIpLyQqLlRwbyAkKERFUERJUikvJCouUG8KK0BhbV9fZmFzdGRlcENDX0ZBTFNFQAkkKEFNX1ZfQ0MpIEBBTV9CQUNLU0xBU0hACitAQU1ERVBfVFJVRUBAYW1fX2Zhc3RkZXBDQ19GQUxTRUAJc291cmNlPSckPCcgb2JqZWN0PSckQCcgbGlidG9vbD1ubyBAQU1ERVBCQUNLU0xBU0hACitAQU1ERVBfVFJVRUBAYW1fX2Zhc3RkZXBDQ19GQUxTRUAJREVQRElSPSQoREVQRElSKSAkKENDREVQTU9ERSkgJChkZXBjb21wKSBAQU1ERVBCQUNLU0xBU0hACitAYW1fX2Zhc3RkZXBDQ19GQUxTRUAJJChDT01QSUxFKSAtYyAkPAorCisuYy5vYmo6CitAYW1fX2Zhc3RkZXBDQ19UUlVFQAkkKEFNX1ZfQ0MpJChDT01QSUxFKSAtTVQgJEAgLU1EIC1NUCAtTUYgJChERVBESVIpLyQqLlRwbyAtYyAtbyAkQCBgJChDWUdQQVRIX1cpICckPCdgCitAYW1fX2Zhc3RkZXBDQ19UUlVFQAkkKEFNX1ZfYXQpJChhbV9fbXYpICQoREVQRElSKS8kKi5UcG8gJChERVBESVIpLyQqLlBvCitAYW1fX2Zhc3RkZXBDQ19GQUxTRUAJJChBTV9WX0NDKSBAQU1fQkFDS1NMQVNIQAorQEFNREVQX1RSVUVAQGFtX19mYXN0ZGVwQ0NfRkFMU0VACXNvdXJjZT0nJDwnIG9iamVjdD0nJEAnIGxpYnRvb2w9bm8gQEFNREVQQkFDS1NMQVNIQAorQEFNREVQX1RSVUVAQGFtX19mYXN0ZGVwQ0NfRkFMU0VACURFUERJUj0kKERFUERJUikgJChDQ0RFUE1PREUpICQoZGVwY29tcCkgQEFNREVQQkFDS1NMQVNIQAorQGFtX19mYXN0ZGVwQ0NfRkFMU0VACSQoQ09NUElMRSkgLWMgYCQoQ1lHUEFUSF9XKSAnJDwnYAorCitJRDogJChIRUFERVJTKSAkKFNPVVJDRVMpICQoTElTUCkgJChUQUdTX0ZJTEVTKQorCWxpc3Q9JyQoU09VUkNFUykgJChIRUFERVJTKSAkKExJU1ApICQoVEFHU19GSUxFUyknOyBcCisJdW5pcXVlPWBmb3IgaSBpbiAkJGxpc3Q7IGRvIFwKKwkgICAgaWYgdGVzdCAtZiAiJCRpIjsgdGhlbiBlY2hvICQkaTsgZWxzZSBlY2hvICQoc3JjZGlyKS8kJGk7IGZpOyBcCisJICBkb25lIHwgXAorCSAgJChBV0spICd7IGZpbGVzWyQkMF0gPSAxOyBub25lbXB0eSA9IDE7IH0gXAorCSAgICAgIEVORCB7IGlmIChub25lbXB0eSkgeyBmb3IgKGkgaW4gZmlsZXMpIHByaW50IGk7IH07IH0nYDsgXAorCW1raWQgLWZJRCAkJHVuaXF1ZQordGFnczogVEFHUworCitUQUdTOiAgJChIRUFERVJTKSAkKFNPVVJDRVMpICAkKFRBR1NfREVQRU5ERU5DSUVTKSBcCisJCSQoVEFHU19GSUxFUykgJChMSVNQKQorCXNldCB4OyBcCisJaGVyZT1gcHdkYDsgXAorCWxpc3Q9JyQoU09VUkNFUykgJChIRUFERVJTKSAgJChMSVNQKSAkKFRBR1NfRklMRVMpJzsgXAorCXVuaXF1ZT1gZm9yIGkgaW4gJCRsaXN0OyBkbyBcCisJICAgIGlmIHRlc3QgLWYgIiQkaSI7IHRoZW4gZWNobyAkJGk7IGVsc2UgZWNobyAkKHNyY2RpcikvJCRpOyBmaTsgXAorCSAgZG9uZSB8IFwKKwkgICQoQVdLKSAneyBmaWxlc1skJDBdID0gMTsgbm9uZW1wdHkgPSAxOyB9IFwKKwkgICAgICBFTkQgeyBpZiAobm9uZW1wdHkpIHsgZm9yIChpIGluIGZpbGVzKSBwcmludCBpOyB9OyB9J2A7IFwKKwlzaGlmdDsgXAorCWlmIHRlc3QgLXogIiQoRVRBR1NfQVJHUykkJCokJHVuaXF1ZSI7IHRoZW4gOjsgZWxzZSBcCisJICB0ZXN0IC1uICIkJHVuaXF1ZSIgfHwgdW5pcXVlPSQkZW1wdHlfZml4OyBcCisJICBpZiB0ZXN0ICQkIyAtZ3QgMDsgdGhlbiBcCisJICAgICQoRVRBR1MpICQoRVRBR1NGTEFHUykgJChBTV9FVEFHU0ZMQUdTKSAkKEVUQUdTX0FSR1MpIFwKKwkgICAgICAiJCRAIiAkJHVuaXF1ZTsgXAorCSAgZWxzZSBcCisJICAgICQoRVRBR1MpICQoRVRBR1NGTEFHUykgJChBTV9FVEFHU0ZMQUdTKSAkKEVUQUdTX0FSR1MpIFwKKwkgICAgICAkJHVuaXF1ZTsgXAorCSAgZmk7IFwKKwlmaQorY3RhZ3M6IENUQUdTCitDVEFHUzogICQoSEVBREVSUykgJChTT1VSQ0VTKSAgJChUQUdTX0RFUEVOREVOQ0lFUykgXAorCQkkKFRBR1NfRklMRVMpICQoTElTUCkKKwlsaXN0PSckKFNPVVJDRVMpICQoSEVBREVSUykgICQoTElTUCkgJChUQUdTX0ZJTEVTKSc7IFwKKwl1bmlxdWU9YGZvciBpIGluICQkbGlzdDsgZG8gXAorCSAgICBpZiB0ZXN0IC1mICIkJGkiOyB0aGVuIGVjaG8gJCRpOyBlbHNlIGVjaG8gJChzcmNkaXIpLyQkaTsgZmk7IFwKKwkgIGRvbmUgfCBcCisJICAkKEFXSykgJ3sgZmlsZXNbJCQwXSA9IDE7IG5vbmVtcHR5ID0gMTsgfSBcCisJICAgICAgRU5EIHsgaWYgKG5vbmVtcHR5KSB7IGZvciAoaSBpbiBmaWxlcykgcHJpbnQgaTsgfTsgfSdgOyBcCisJdGVzdCAteiAiJChDVEFHU19BUkdTKSQkdW5pcXVlIiBcCisJICB8fCAkKENUQUdTKSAkKENUQUdTRkxBR1MpICQoQU1fQ1RBR1NGTEFHUykgJChDVEFHU19BUkdTKSBcCisJICAgICAkJHVuaXF1ZQorCitHVEFHUzoKKwloZXJlPWAkKGFtX19jZCkgJCh0b3BfYnVpbGRkaXIpICYmIHB3ZGAgXAorCSAgJiYgJChhbV9fY2QpICQodG9wX3NyY2RpcikgXAorCSAgJiYgZ3RhZ3MgLWkgJChHVEFHU19BUkdTKSAiJCRoZXJlIgorCitkaXN0Y2xlYW4tdGFnczoKKwktcm0gLWYgVEFHUyBJRCBHVEFHUyBHUlRBR1MgR1NZTVMgR1BBVEggdGFncworCitkaXN0ZGlyOiAkKERJU1RGSUxFUykKKwlAc3JjZGlyc3RyaXA9YGVjaG8gIiQoc3JjZGlyKSIgfCBzZWQgJ3MvW10uW14kJFxcKl0vXFxcXCYvZydgOyBcCisJdG9wc3JjZGlyc3RyaXA9YGVjaG8gIiQodG9wX3NyY2RpcikiIHwgc2VkICdzL1tdLlteJCRcXCpdL1xcXFwmL2cnYDsgXAorCWxpc3Q9JyQoRElTVEZJTEVTKSc7IFwKKwkgIGRpc3RfZmlsZXM9YGZvciBmaWxlIGluICQkbGlzdDsgZG8gZWNobyAkJGZpbGU7IGRvbmUgfCBcCisJICBzZWQgLWUgInN8XiQkc3JjZGlyc3RyaXAvfHw7dCIgXAorCSAgICAgIC1lICJzfF4kJHRvcHNyY2RpcnN0cmlwL3wkKHRvcF9idWlsZGRpcikvfDt0ImA7IFwKKwljYXNlICQkZGlzdF9maWxlcyBpbiBcCisJICAqLyopICQoTUtESVJfUCkgYGVjaG8gIiQkZGlzdF9maWxlcyIgfCBcCisJCQkgICBzZWQgJy9cLy8hZDtzfF58JChkaXN0ZGlyKS98O3MsL1teL10qJCQsLCcgfCBcCisJCQkgICBzb3J0IC11YCA7OyBcCisJZXNhYzsgXAorCWZvciBmaWxlIGluICQkZGlzdF9maWxlczsgZG8gXAorCSAgaWYgdGVzdCAtZiAkJGZpbGUgfHwgdGVzdCAtZCAkJGZpbGU7IHRoZW4gZD0uOyBlbHNlIGQ9JChzcmNkaXIpOyBmaTsgXAorCSAgaWYgdGVzdCAtZCAkJGQvJCRmaWxlOyB0aGVuIFwKKwkgICAgZGlyPWBlY2hvICIvJCRmaWxlIiB8IHNlZCAtZSAncywvW14vXSokJCwsJ2A7IFwKKwkgICAgaWYgdGVzdCAtZCAiJChkaXN0ZGlyKS8kJGZpbGUiOyB0aGVuIFwKKwkgICAgICBmaW5kICIkKGRpc3RkaXIpLyQkZmlsZSIgLXR5cGUgZCAhIC1wZXJtIC03MDAgLWV4ZWMgY2htb2QgdStyd3gge30gXDs7IFwKKwkgICAgZmk7IFwKKwkgICAgaWYgdGVzdCAtZCAkKHNyY2RpcikvJCRmaWxlICYmIHRlc3QgJCRkICE9ICQoc3JjZGlyKTsgdGhlbiBcCisJICAgICAgY3AgLWZwUiAkKHNyY2RpcikvJCRmaWxlICIkKGRpc3RkaXIpJCRkaXIiIHx8IGV4aXQgMTsgXAorCSAgICAgIGZpbmQgIiQoZGlzdGRpcikvJCRmaWxlIiAtdHlwZSBkICEgLXBlcm0gLTcwMCAtZXhlYyBjaG1vZCB1K3J3eCB7fSBcOzsgXAorCSAgICBmaTsgXAorCSAgICBjcCAtZnBSICQkZC8kJGZpbGUgIiQoZGlzdGRpcikkJGRpciIgfHwgZXhpdCAxOyBcCisJICBlbHNlIFwKKwkgICAgdGVzdCAtZiAiJChkaXN0ZGlyKS8kJGZpbGUiIFwKKwkgICAgfHwgY3AgLXAgJCRkLyQkZmlsZSAiJChkaXN0ZGlyKS8kJGZpbGUiIFwKKwkgICAgfHwgZXhpdCAxOyBcCisJICBmaTsgXAorCWRvbmUKK2NoZWNrLWFtOiBhbGwtYW0KK2NoZWNrOiBjaGVjay1hbQorYWxsLWFtOiBNYWtlZmlsZSAkKFBST0dSQU1TKQoraW5zdGFsbGRpcnM6CisJZm9yIGRpciBpbiAiJChERVNURElSKSQoYmluZGlyKSI7IGRvIFwKKwkgIHRlc3QgLXogIiQkZGlyIiB8fCAkKE1LRElSX1ApICIkJGRpciI7IFwKKwlkb25lCitpbnN0YWxsOiBpbnN0YWxsLWFtCitpbnN0YWxsLWV4ZWM6IGluc3RhbGwtZXhlYy1hbQoraW5zdGFsbC1kYXRhOiBpbnN0YWxsLWRhdGEtYW0KK3VuaW5zdGFsbDogdW5pbnN0YWxsLWFtCisKK2luc3RhbGwtYW06IGFsbC1hbQorCUAkKE1BS0UpICQoQU1fTUFLRUZMQUdTKSBpbnN0YWxsLWV4ZWMtYW0gaW5zdGFsbC1kYXRhLWFtCisKK2luc3RhbGxjaGVjazogaW5zdGFsbGNoZWNrLWFtCitpbnN0YWxsLXN0cmlwOgorCSQoTUFLRSkgJChBTV9NQUtFRkxBR1MpIElOU1RBTExfUFJPR1JBTT0iJChJTlNUQUxMX1NUUklQX1BST0dSQU0pIiBcCisJICBpbnN0YWxsX3NoX1BST0dSQU09IiQoSU5TVEFMTF9TVFJJUF9QUk9HUkFNKSIgSU5TVEFMTF9TVFJJUF9GTEFHPS1zIFwKKwkgIGB0ZXN0IC16ICckKFNUUklQKScgfHwgXAorCSAgICBlY2hvICJJTlNUQUxMX1BST0dSQU1fRU5WPVNUUklQUFJPRz0nJChTVFJJUCknImAgaW5zdGFsbAorbW9zdGx5Y2xlYW4tZ2VuZXJpYzoKKworY2xlYW4tZ2VuZXJpYzoKKworZGlzdGNsZWFuLWdlbmVyaWM6CisJLXRlc3QgLXogIiQoQ09ORklHX0NMRUFOX0ZJTEVTKSIgfHwgcm0gLWYgJChDT05GSUdfQ0xFQU5fRklMRVMpCisJLXRlc3QgLiA9ICIkKHNyY2RpcikiIHx8IHRlc3QgLXogIiQoQ09ORklHX0NMRUFOX1ZQQVRIX0ZJTEVTKSIgfHwgcm0gLWYgJChDT05GSUdfQ0xFQU5fVlBBVEhfRklMRVMpCisKK21haW50YWluZXItY2xlYW4tZ2VuZXJpYzoKKwlAZWNobyAiVGhpcyBjb21tYW5kIGlzIGludGVuZGVkIGZvciBtYWludGFpbmVycyB0byB1c2UiCisJQGVjaG8gIml0IGRlbGV0ZXMgZmlsZXMgdGhhdCBtYXkgcmVxdWlyZSBzcGVjaWFsIHRvb2xzIHRvIHJlYnVpbGQuIgorY2xlYW46IGNsZWFuLWFtCisKK2NsZWFuLWFtOiBjbGVhbi1iaW5QUk9HUkFNUyBjbGVhbi1nZW5lcmljIG1vc3RseWNsZWFuLWFtCisKK2Rpc3RjbGVhbjogZGlzdGNsZWFuLWFtCisJLXJtIC1yZiAuLyQoREVQRElSKQorCS1ybSAtZiBNYWtlZmlsZQorZGlzdGNsZWFuLWFtOiBjbGVhbi1hbSBkaXN0Y2xlYW4tY29tcGlsZSBkaXN0Y2xlYW4tZ2VuZXJpYyBcCisJZGlzdGNsZWFuLXRhZ3MKKworZHZpOiBkdmktYW0KKworZHZpLWFtOgorCitodG1sOiBodG1sLWFtCisKK2h0bWwtYW06CisKK2luZm86IGluZm8tYW0KKworaW5mby1hbToKKworaW5zdGFsbC1kYXRhLWFtOiBpbnN0YWxsLWRhdGEtbG9jYWwKKworaW5zdGFsbC1kdmk6IGluc3RhbGwtZHZpLWFtCisKK2luc3RhbGwtZHZpLWFtOgorCitpbnN0YWxsLWV4ZWMtYW06IGluc3RhbGwtYmluUFJPR1JBTVMKKworaW5zdGFsbC1odG1sOiBpbnN0YWxsLWh0bWwtYW0KKworaW5zdGFsbC1odG1sLWFtOgorCitpbnN0YWxsLWluZm86IGluc3RhbGwtaW5mby1hbQorCitpbnN0YWxsLWluZm8tYW06CisKK2luc3RhbGwtbWFuOgorCitpbnN0YWxsLXBkZjogaW5zdGFsbC1wZGYtYW0KKworaW5zdGFsbC1wZGYtYW06CisKK2luc3RhbGwtcHM6IGluc3RhbGwtcHMtYW0KKworaW5zdGFsbC1wcy1hbToKKworaW5zdGFsbGNoZWNrLWFtOgorCittYWludGFpbmVyLWNsZWFuOiBtYWludGFpbmVyLWNsZWFuLWFtCisJLXJtIC1yZiAuLyQoREVQRElSKQorCS1ybSAtZiBNYWtlZmlsZQorbWFpbnRhaW5lci1jbGVhbi1hbTogZGlzdGNsZWFuLWFtIG1haW50YWluZXItY2xlYW4tZ2VuZXJpYworCittb3N0bHljbGVhbjogbW9zdGx5Y2xlYW4tYW0KKworbW9zdGx5Y2xlYW4tYW06IG1vc3RseWNsZWFuLWNvbXBpbGUgbW9zdGx5Y2xlYW4tZ2VuZXJpYworCitwZGY6IHBkZi1hbQorCitwZGYtYW06CisKK3BzOiBwcy1hbQorCitwcy1hbToKKwordW5pbnN0YWxsLWFtOiB1bmluc3RhbGwtYmluUFJPR1JBTVMKKworLk1BS0U6IGluc3RhbGwtYW0gaW5zdGFsbC1zdHJpcAorCisuUEhPTlk6IENUQUdTIEdUQUdTIGFsbCBhbGwtYW0gY2hlY2sgY2hlY2stYW0gY2xlYW4gY2xlYW4tYmluUFJPR1JBTVMgXAorCWNsZWFuLWdlbmVyaWMgY3RhZ3MgZGlzdGNsZWFuIGRpc3RjbGVhbi1jb21waWxlIFwKKwlkaXN0Y2xlYW4tZ2VuZXJpYyBkaXN0Y2xlYW4tdGFncyBkaXN0ZGlyIGR2aSBkdmktYW0gaHRtbCBcCisJaHRtbC1hbSBpbmZvIGluZm8tYW0gaW5zdGFsbCBpbnN0YWxsLWFtIGluc3RhbGwtYmluUFJPR1JBTVMgXAorCWluc3RhbGwtZGF0YSBpbnN0YWxsLWRhdGEtYW0gaW5zdGFsbC1kYXRhLWxvY2FsIGluc3RhbGwtZHZpIFwKKwlpbnN0YWxsLWR2aS1hbSBpbnN0YWxsLWV4ZWMgaW5zdGFsbC1leGVjLWFtIGluc3RhbGwtaHRtbCBcCisJaW5zdGFsbC1odG1sLWFtIGluc3RhbGwtaW5mbyBpbnN0YWxsLWluZm8tYW0gaW5zdGFsbC1tYW4gXAorCWluc3RhbGwtcGRmIGluc3RhbGwtcGRmLWFtIGluc3RhbGwtcHMgaW5zdGFsbC1wcy1hbSBcCisJaW5zdGFsbC1zdHJpcCBpbnN0YWxsY2hlY2sgaW5zdGFsbGNoZWNrLWFtIGluc3RhbGxkaXJzIFwKKwltYWludGFpbmVyLWNsZWFuIG1haW50YWluZXItY2xlYW4tZ2VuZXJpYyBtb3N0bHljbGVhbiBcCisJbW9zdGx5Y2xlYW4tY29tcGlsZSBtb3N0bHljbGVhbi1nZW5lcmljIHBkZiBwZGYtYW0gcHMgcHMtYW0gXAorCXRhZ3MgdW5pbnN0YWxsIHVuaW5zdGFsbC1hbSB1bmluc3RhbGwtYmluUFJPR1JBTVMKKworCitpbnN0YWxsLWRhdGEtbG9jYWw6CisJJChta2Rpcl9wKSAkKERFU1RESVIpJChhZG1pbmRpcikvcGFydHMKKworIyBUZWxsIHZlcnNpb25zIFszLjU5LDMuNjMpIG9mIEdOVSBtYWtlIHRvIG5vdCBleHBvcnQgYWxsIHZhcmlhYmxlcy4KKyMgT3RoZXJ3aXNlIGEgc3lzdGVtIGxpbWl0IChmb3IgU3lzViBhdCBsZWFzdCkgbWF5IGJlIGV4Y2VlZGVkLgorLk5PRVhQT1JUOgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kcGtnLXNwbGl0L2Rwa2ctc3BsaXQuaCBiL2Rwa2ctMS4xNi4xLjEvZHBrZy1zcGxpdC9kcGtnLXNwbGl0LmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMmY3Mzg3ZQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZHBrZy1zcGxpdC9kcGtnLXNwbGl0LmgKQEAgLTAsMCArMSw4MyBAQAorLyoKKyAqIGRwa2ctc3BsaXQgLSBzcGxpdHRpbmcgYW5kIGpvaW5pbmcgb2YgbXVsdGlwYXJ0ICouZGViIGFyY2hpdmVzCisgKiBkcGtnLXNwbGl0LmggLSBleHRlcm5hbCBkZWZpbml0aW9ucyBmb3IgdGhpcyBwcm9ncmFtCisgKgorICogQ29weXJpZ2h0IMKpIDE5OTUgSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuZ3JlZW5lbmQub3JnLnVrPgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaWZuZGVmIERQS0dfU1BMSVRfSAorI2RlZmluZSBEUEtHX1NQTElUX0gKKworYWN0aW9uX2Z1bmMgZG9fc3BsaXQ7CithY3Rpb25fZnVuYyBkb19qb2luOworYWN0aW9uX2Z1bmMgZG9faW5mbzsKK2FjdGlvbl9mdW5jIGRvX2F1dG87CithY3Rpb25fZnVuYyBkb19xdWV1ZTsKK2FjdGlvbl9mdW5jIGRvX2Rpc2NhcmQ7CisKK3N0cnVjdCBwYXJ0aW5mbyB7CisgIGNvbnN0IGNoYXIgKmZpbGVuYW1lOworICBjb25zdCBjaGFyICpmbXR2ZXJzaW9uOworICBjb25zdCBjaGFyICpwYWNrYWdlOworICBjb25zdCBjaGFyICp2ZXJzaW9uOworICBjb25zdCBjaGFyICphcmNoOworICBjb25zdCBjaGFyICptZDVzdW07CisgIG9mZl90IG9yZ2xlbmd0aDsKKyAgdW5zaWduZWQgaW50IHRoaXNwYXJ0biwgbWF4cGFydG47CisgIG9mZl90IG1heHBhcnRsZW47CisgIG9mZl90IHRoaXNwYXJ0b2Zmc2V0OworICBvZmZfdCB0aGlzcGFydGxlbjsKKyAgLyogU2l6ZSBvZiBoZWFkZXIgaW4gcGFydCBmaWxlLiAqLworICBvZmZfdCBoZWFkZXJsZW47CisgIG9mZl90IGZpbGVzaXplOworfTsKKworc3RydWN0IHBhcnRxdWV1ZSB7CisgIHN0cnVjdCBwYXJ0cXVldWUgKm5leHRpbnF1ZXVlOworCisgIC8qIE9ubHkgZmllbGRzIGZpbGVuYW1lLCBtZDVzdW0sIG1heHBhcnRsZW4sIHRoaXNwYXJ0biwgbWF4cGFydG4KKyAgICogYXJlIHZhbGlkOyB0aGUgcmVzdCBhcmUgTlVMTC4gSWYgdGhlIGZpbGUgaXMgbm90IG5hbWVkIGNvcnJlY3RseQorICAgKiB0byBiZSBhIHBhcnQgZmlsZSBtZDVzdW0gaXMgTlVMTCB0b28gYW5kIHRoZSBudW1iZXJzIGFyZSB6ZXJvLiAqLworICBzdHJ1Y3QgcGFydGluZm8gaW5mbzsKK307CisKK2V4dGVybiBzdHJ1Y3QgcGFydHF1ZXVlICpxdWV1ZTsKKworZXh0ZXJuIG9mZl90IG9wdF9tYXhwYXJ0c2l6ZTsKK2V4dGVybiBjb25zdCBjaGFyICpvcHRfZGVwb3RkaXI7CitleHRlcm4gY29uc3QgY2hhciAqb3B0X291dHB1dGZpbGU7CitleHRlcm4gaW50IG9wdF9ucHF1aWV0OworZXh0ZXJuIGludCBvcHRfbXNkb3M7CisKK3ZvaWQgcmVycmVvZihGSUxFICpmLCBjb25zdCBjaGFyICpmbikgRFBLR19BVFRSX05PUkVUOwordm9pZCBwcmludF9pbmZvKGNvbnN0IHN0cnVjdCBwYXJ0aW5mbyAqcGkpOworc3RydWN0IHBhcnRpbmZvICpyZWFkX2luZm8oRklMRSAqcGFydGZpbGUsIGNvbnN0IGNoYXIgKmZuLCBzdHJ1Y3QgcGFydGluZm8gKmlyKTsKKwordm9pZCBzY2FuZGVwb3Qodm9pZCk7Cit2b2lkIHJlYXNzZW1ibGUoc3RydWN0IHBhcnRpbmZvICoqcGFydGxpc3QsIGNvbnN0IGNoYXIgKm91dHB1dGZpbGUpOwordm9pZCBtdXN0Z2V0cGFydGluZm8oY29uc3QgY2hhciAqZmlsZW5hbWUsIHN0cnVjdCBwYXJ0aW5mbyAqcmkpOwordm9pZCBhZGR0b3BhcnRsaXN0KHN0cnVjdCBwYXJ0aW5mbyoqLCBzdHJ1Y3QgcGFydGluZm8qLCBzdHJ1Y3QgcGFydGluZm8gKnJlZmkpOworCisjZGVmaW5lIFNQTElUVkVSU0lPTiAgICAgICAiMi4xIgorCisjZGVmaW5lIFBBUlRTRElSICAgICAgICAgICJwYXJ0cyIKKworI2RlZmluZSBQQVJUTUFHSUMgICAgICAgICAiZGViaWFuLXNwbGl0IgorI2RlZmluZSBIRUFERVJBTExPV0FOQ0UgICAgMTAyNAorCisjZGVmaW5lIFNQTElUUEFSVERFRk1BWCAgICAoNDUwICogMTAyNCkKKworI2VuZGlmIC8qIERQS0dfU1BMSVRfSCAqLwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kcGtnLXNwbGl0L2luZm8uYyBiL2Rwa2ctMS4xNi4xLjEvZHBrZy1zcGxpdC9pbmZvLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjA2NmY3MwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZHBrZy1zcGxpdC9pbmZvLmMKQEAgLTAsMCArMSwyNjEgQEAKKy8qCisgKiBkcGtnLXNwbGl0IC0gc3BsaXR0aW5nIGFuZCBqb2luaW5nIG9mIG11bHRpcGFydCAqLmRlYiBhcmNoaXZlcworICogaW5mby5jIC0gaW5mb3JtYXRpb24gYWJvdXQgc3BsaXQgYXJjaGl2ZXMKKyAqCisgKiBDb3B5cmlnaHQgwqkgMTk5NSBJYW4gSmFja3NvbiA8aWFuQGNoaWFyay5ncmVlbmVuZC5vcmcudWs+CisgKgorICogVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisgKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAqIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorICovCisKKyNpbmNsdWRlIDxjb25maWcuaD4KKyNpbmNsdWRlIDxjb21wYXQuaD4KKworI2luY2x1ZGUgPHN5cy9zdGF0Lmg+CisKKyNpbmNsdWRlIDxsaW1pdHMuaD4KKyNpbmNsdWRlIDxjdHlwZS5oPgorI2luY2x1ZGUgPHN0cmluZy5oPgorI2luY2x1ZGUgPHVuaXN0ZC5oPgorI2luY2x1ZGUgPGFyLmg+CisjaW5jbHVkZSA8aW50dHlwZXMuaD4KKyNpbmNsdWRlIDxzdGRpbnQuaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlIDxzdGRpby5oPgorCisjaW5jbHVkZSA8ZHBrZy9pMThuLmg+CisjaW5jbHVkZSA8ZHBrZy9kcGtnLmg+CisjaW5jbHVkZSA8ZHBrZy9kcGtnLWRiLmg+CisjaW5jbHVkZSA8ZHBrZy9hci5oPgorI2luY2x1ZGUgPGRwa2cvb3B0aW9ucy5oPgorCisjaW5jbHVkZSAiZHBrZy1zcGxpdC5oIgorCitzdGF0aWMgaW50bWF4X3QKK3BhcnNlX2ludG1heChjb25zdCBjaGFyICp2YWx1ZSwgY29uc3QgY2hhciAqZm4sIGNvbnN0IGNoYXIgKndoYXQpCit7CisgIGludG1heF90IHI7CisgIGNoYXIgKmVuZHA7CisKKyAgciA9IHN0cnRvaW1heCh2YWx1ZSwgJmVuZHAsIDEwKTsKKyAgaWYgKHZhbHVlID09IGVuZHAgfHwgKmVuZHApCisgICAgb2hzaGl0KF8oImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBkaWdpdCAoY29kZSAlZCkgaW4gJXMiKSxmbiwqZW5kcCx3aGF0KTsKKyAgcmV0dXJuIHI7Cit9CisKK3N0YXRpYyBjaGFyICpuZXh0bGluZShjaGFyICoqcmlwcCwgY29uc3QgY2hhciAqZm4sIGNvbnN0IGNoYXIgKndoYXQpIHsKKyAgY2hhciAqbmV3bGluZSwgKnJpcDsKKworICByaXA9ICpyaXBwOworICBpZiAoIXJpcCkgb2hzaGl0KF8oImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtICUuMjUwcyBtaXNzaW5nIiksZm4sd2hhdCk7CisgIG5ld2xpbmU9IHN0cmNocihyaXAsJ1xuJyk7CisgIGlmICghbmV3bGluZSkKKyAgICBvaHNoaXQoXygiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gbWlzc2luZyBuZXdsaW5lIGFmdGVyICUuMjUwcyIpLGZuLHdoYXQpOworICAqcmlwcD0gbmV3bGluZSsxOworICB3aGlsZSAobmV3bGluZSA+IHJpcCAmJiBpc3NwYWNlKG5ld2xpbmVbLTFdKSkgbmV3bGluZS0tOworICAqbmV3bGluZSA9ICdcMCc7CisgIHJldHVybiByaXA7Cit9CisKKy8qKgorICogUmVhZCBhIGRlYi1zcGxpdCBwYXJ0IGFyY2hpdmUuCisgKgorICogQHJldHVybiBQYXJ0IGluZm8gKG5mbWFsbG9jJ2QpIGlmIHdhcyBhbiBhcmNoaXZlIHBhcnQgYW5kIHdlIHJlYWQgaXQsCisgKiAgICAgICAgIE5VTEwgaWYgaXQgd2Fzbid0LgorICovCitzdHJ1Y3QgcGFydGluZm8gKnJlYWRfaW5mbyhGSUxFICpwYXJ0ZmlsZSwgY29uc3QgY2hhciAqZm4sIHN0cnVjdCBwYXJ0aW5mbyAqaXIpIHsKKyAgc3RhdGljIGNoYXIgKnJlYWRpbmZvYnVmPSBOVUxMOworICBzdGF0aWMgc2l6ZV90IHJlYWRpbmZvYnVmbGVuPSAwOworCisgIHNpemVfdCB0aGlzaWxlbjsKKyAgaW50bWF4X3QgdGVtcGxvbmc7CisgIGNoYXIgbWFnaWNidWZbc2l6ZW9mKERQS0dfQVJfTUFHSUMpIC0gMV0sICpyaXAsICpwYXJ0bnVtcywgKnNsYXNoOworICBzdHJ1Y3QgYXJfaGRyIGFyaDsKKyAgaW50IGM7CisgIHN0cnVjdCBzdGF0IHN0YWI7CisKKyAgaWYgKGZyZWFkKG1hZ2ljYnVmLCAxLCBzaXplb2YobWFnaWNidWYpLCBwYXJ0ZmlsZSkgIT0gc2l6ZW9mKG1hZ2ljYnVmKSkgeworICAgIGlmIChmZXJyb3IocGFydGZpbGUpKQorICAgICAgb2hzaGl0ZShfKCJlcnJvciByZWFkaW5nICUuMjUwcyIpLCBmbik7CisgICAgZWxzZQorICAgICAgcmV0dXJuIE5VTEw7CisgIH0KKyAgaWYgKG1lbWNtcChtYWdpY2J1ZiwgRFBLR19BUl9NQUdJQywgc2l6ZW9mKG1hZ2ljYnVmKSkpCisgICAgcmV0dXJuIE5VTEw7CisKKyAgaWYgKGZyZWFkKCZhcmgsMSxzaXplb2YoYXJoKSxwYXJ0ZmlsZSkgIT0gc2l6ZW9mKGFyaCkpIHJlcnJlb2YocGFydGZpbGUsZm4pOworCisgIGRwa2dfYXJfbm9ybWFsaXplX25hbWUoJmFyaCk7CisKKyAgaWYgKHN0cm5jbXAoYXJoLmFyX25hbWUsIFBBUlRNQUdJQywgc2l6ZW9mKGFyaC5hcl9uYW1lKSkgIT0gMCkKKyAgICByZXR1cm4gTlVMTDsKKyAgaWYgKG1lbWNtcChhcmguYXJfZm1hZyxBUkZNQUcsc2l6ZW9mKGFyaC5hcl9mbWFnKSkpCisgICAgb2hzaGl0KF8oImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBtYWdpYyBhdCBlbmQgb2YgZmlyc3QgaGVhZGVyIiksZm4pOworICB0aGlzaWxlbiA9IGRwa2dfYXJfbWVtYmVyX2dldF9zaXplKGZuLCAmYXJoKTsKKyAgaWYgKHRoaXNpbGVuID49IHJlYWRpbmZvYnVmbGVuKSB7CisgICAgcmVhZGluZm9idWZsZW49IHRoaXNpbGVuKzE7CisgICAgcmVhZGluZm9idWY9IG1fcmVhbGxvYyhyZWFkaW5mb2J1ZixyZWFkaW5mb2J1Zmxlbik7CisgIH0KKyAgaWYgKGZyZWFkKHJlYWRpbmZvYnVmLDEsdGhpc2lsZW4scGFydGZpbGUpICE9IHRoaXNpbGVuKSByZXJyZW9mKHBhcnRmaWxlLGZuKTsKKyAgaWYgKHRoaXNpbGVuICYgMSkgeworICAgIGM9IGdldGMocGFydGZpbGUpOyAgaWYgKGM9PUVPRikgcmVycmVvZihwYXJ0ZmlsZSxmbik7CisgICAgaWYgKGMgIT0gJ1xuJykKKyAgICAgIG9oc2hpdChfKCJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgcGFkZGluZyBjaGFyYWN0ZXIgKGNvZGUgJWQpIiksZm4sYyk7CisgIH0KKyAgcmVhZGluZm9idWZbdGhpc2lsZW5dID0gJ1wwJzsKKyAgaWYgKG1lbWNocihyZWFkaW5mb2J1ZiwwLHRoaXNpbGVuKSkKKyAgICBvaHNoaXQoXygiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gbnVsbHMgaW4gaW5mbyBzZWN0aW9uIiksZm4pOworCisgIGlyLT5maWxlbmFtZT0gZm47CisKKyAgcmlwPSByZWFkaW5mb2J1ZjsKKyAgaXItPmZtdHZlcnNpb24gPSBuZnN0cnNhdmUobmV4dGxpbmUoJnJpcCwgZm4sIF8oImZvcm1hdCB2ZXJzaW9uIG51bWJlciIpKSk7CisgIGlmIChzdHJjbXAoaXItPmZtdHZlcnNpb24sU1BMSVRWRVJTSU9OKSkKKyAgICBvaHNoaXQoXygiZmlsZSBgJS4yNTBzJyBpcyBmb3JtYXQgdmVyc2lvbiBgJS4yNTBzJyAtIHlvdSBuZWVkIGEgbmV3ZXIgZHBrZy1zcGxpdCIpLAorICAgICAgICAgICBmbixpci0+Zm10dmVyc2lvbik7CisKKyAgaXItPnBhY2thZ2UgPSBuZnN0cnNhdmUobmV4dGxpbmUoJnJpcCwgZm4sIF8oInBhY2thZ2UgbmFtZSIpKSk7CisgIGlyLT52ZXJzaW9uID0gbmZzdHJzYXZlKG5leHRsaW5lKCZyaXAsIGZuLCBfKCJwYWNrYWdlIHZlcnNpb24gbnVtYmVyIikpKTsKKyAgaXItPm1kNXN1bSA9IG5mc3Ryc2F2ZShuZXh0bGluZSgmcmlwLCBmbiwgXygicGFja2FnZSBmaWxlIE1ENSBjaGVja3N1bSIpKSk7CisgIGlmIChzdHJsZW4oaXItPm1kNXN1bSkgIT0gTUQ1SEFTSExFTiB8fAorICAgICAgc3Ryc3BuKGlyLT5tZDVzdW0sICIwMTIzNDU2Nzg5YWJjZGVmIikgIT0gTUQ1SEFTSExFTikKKyAgICBvaHNoaXQoXygiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIE1ENSBjaGVja3N1bSBgJS4yNTBzJyIpLGZuLGlyLT5tZDVzdW0pOworCisgIGlyLT5vcmdsZW5ndGggPSBwYXJzZV9pbnRtYXgobmV4dGxpbmUoJnJpcCwgZm4sIF8oImFyY2hpdmUgdG90YWwgc2l6ZSIpKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbiwgXygiYXJjaGl2ZSB0b3RhbCBzaXplIikpOworICBpci0+bWF4cGFydGxlbiA9IHBhcnNlX2ludG1heChuZXh0bGluZSgmcmlwLCBmbiwgXygiYXJjaGl2ZSBwYXJ0IG9mZnNldCIpKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm4sIF8oImFyY2hpdmUgcGFydCBvZmZzZXQiKSk7CisKKyAgcGFydG51bXMgPSBuZXh0bGluZSgmcmlwLCBmbiwgXygiYXJjaGl2ZSBwYXJ0IG51bWJlcnMiKSk7CisgIHNsYXNoPSBzdHJjaHIocGFydG51bXMsJy8nKTsKKyAgaWYgKCFzbGFzaCkKKyAgICBvaHNoaXQoXygiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gbm8gc2xhc2ggYmV0d2VlbiBhcmNoaXZlIHBhcnQgbnVtYmVycyIpLCBmbik7CisgICpzbGFzaCsrID0gJ1wwJzsKKworICB0ZW1wbG9uZyA9IHBhcnNlX2ludG1heChzbGFzaCwgZm4sIF8oIm51bWJlciBvZiBhcmNoaXZlIHBhcnRzIikpOworICBpZiAodGVtcGxvbmcgPD0gMCB8fCB0ZW1wbG9uZyA+IElOVF9NQVgpCisgICAgb2hzaGl0KF8oImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBudW1iZXIgb2YgYXJjaGl2ZSBwYXJ0cyIpLCBmbik7CisgIGlyLT5tYXhwYXJ0bj0gdGVtcGxvbmc7CisgIHRlbXBsb25nID0gcGFyc2VfaW50bWF4KHBhcnRudW1zLCBmbiwgXygiYXJjaGl2ZSBwYXJ0cyBudW1iZXIiKSk7CisgIGlmICh0ZW1wbG9uZyA8PSAwIHx8IHRlbXBsb25nID4gaXItPm1heHBhcnRuKQorICAgIG9oc2hpdChfKCJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgYXJjaGl2ZSBwYXJ0IG51bWJlciIpLGZuKTsKKyAgaXItPnRoaXNwYXJ0bj0gdGVtcGxvbmc7CisKKyAgLyogSWYgdGhlIHBhY2thZ2Ugd2FzIGNyZWF0ZWQgd2l0aCBkcGtnIDEuMTYuMSBvciBsYXRlciBpdCB3aWxsIGluY2x1ZGUKKyAgICogdGhlIGFyY2hpdGVjdHVyZS4gKi8KKyAgaWYgKCpyaXAgIT0gJ1wwJykKKyAgICBpci0+YXJjaCA9IG5mc3Ryc2F2ZShuZXh0bGluZSgmcmlwLCBmbiwgXygicGFja2FnZSBhcmNoaXRlY3R1cmUiKSkpOworICBlbHNlCisgICAgaXItPmFyY2ggPSBOVUxMOworCisgIGlmIChmcmVhZCgmYXJoLDEsc2l6ZW9mKGFyaCkscGFydGZpbGUpICE9IHNpemVvZihhcmgpKSByZXJyZW9mKHBhcnRmaWxlLGZuKTsKKworICBkcGtnX2FyX25vcm1hbGl6ZV9uYW1lKCZhcmgpOworCisgIGlmIChtZW1jbXAoYXJoLmFyX2ZtYWcsQVJGTUFHLHNpemVvZihhcmguYXJfZm1hZykpKQorICAgIG9oc2hpdChfKCJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgbWFnaWMgYXQgZW5kIG9mIHNlY29uZCBoZWFkZXIiKSxmbik7CisgIGlmIChzdHJuY21wKGFyaC5hcl9uYW1lLCJkYXRhIiw0KSkKKyAgICBvaHNoaXQoXygiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gc2Vjb25kIG1lbWJlciBpcyBub3QgZGF0YSBtZW1iZXIiKSxmbik7CisKKyAgaXItPnRoaXNwYXJ0bGVuID0gZHBrZ19hcl9tZW1iZXJfZ2V0X3NpemUoZm4sICZhcmgpOworICBpci0+dGhpc3BhcnRvZmZzZXQ9IChpci0+dGhpc3BhcnRuLTEpKmlyLT5tYXhwYXJ0bGVuOworCisgIGlmIChpci0+bWF4cGFydG4gIT0gKGlyLT5vcmdsZW5ndGgraXItPm1heHBhcnRsZW4tMSkvaXItPm1heHBhcnRsZW4pCisgICAgb2hzaGl0KF8oImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIHdyb25nIG51bWJlciBvZiBwYXJ0cyBmb3IgcXVvdGVkIHNpemVzIiksZm4pOworICBpZiAoaXItPnRoaXNwYXJ0bGVuICE9CisgICAgICAoaXItPnRoaXNwYXJ0biA9PSBpci0+bWF4cGFydG4KKyAgICAgICA/IGlyLT5vcmdsZW5ndGggLSBpci0+dGhpc3BhcnRvZmZzZXQgOiBpci0+bWF4cGFydGxlbikpCisgICAgb2hzaGl0KF8oImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIHNpemUgaXMgd3JvbmcgZm9yIHF1b3RlZCBwYXJ0IG51bWJlciIpLGZuKTsKKworICBpci0+ZmlsZXNpemUgPSAoc3RybGVuKERQS0dfQVJfTUFHSUMpICsKKyAgICAgICAgICAgICAgICAgIHNpemVvZihhcmgpICsgdGhpc2lsZW4gKyAodGhpc2lsZW4gJiAxKSArCisgICAgICAgICAgICAgICAgICBzaXplb2YoYXJoKSArIGlyLT50aGlzcGFydGxlbiArIChpci0+dGhpc3BhcnRsZW4gJiAxKSk7CisKKyAgaWYgKGZzdGF0KGZpbGVubyhwYXJ0ZmlsZSksJnN0YWIpKSBvaHNoaXRlKF8oInVuYWJsZSB0byBmc3RhdCBwYXJ0IGZpbGUgYCUuMjUwcyciKSxmbik7CisgIGlmIChTX0lTUkVHKHN0YWIuc3RfbW9kZSkpIHsKKyAgICAvKiBEb24ndCBkbyB0aGlzIGNoZWNrIGlmIGl0J3MgY29taW5nIGZyb20gYSBwaXBlIG9yIHNvbWV0aGluZy4gIEl0J3MKKyAgICAgKiBvbmx5IGFuIGV4dHJhIHNhbml0eSBjaGVjayBhbnl3YXkuICovCisgICAgaWYgKHN0YWIuc3Rfc2l6ZSA8IGlyLT5maWxlc2l6ZSkKKyAgICAgIG9oc2hpdChfKCJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSB0b28gc2hvcnQiKSxmbik7CisgIH0KKworICBpci0+aGVhZGVybGVuID0gc3RybGVuKERQS0dfQVJfTUFHSUMpICsKKyAgICAgICAgICAgICAgICAgIHNpemVvZihhcmgpICsgdGhpc2lsZW4gKyAodGhpc2lsZW4gJiAxKSArIHNpemVvZihhcmgpOworCisgIHJldHVybiBpcjsKK30KKwordm9pZCBtdXN0Z2V0cGFydGluZm8oY29uc3QgY2hhciAqZmlsZW5hbWUsIHN0cnVjdCBwYXJ0aW5mbyAqcmkpIHsKKyAgRklMRSAqcGFydDsKKworICBwYXJ0PSBmb3BlbihmaWxlbmFtZSwiciIpOworICBpZiAoIXBhcnQpIG9oc2hpdGUoXygiY2Fubm90IG9wZW4gYXJjaGl2ZSBwYXJ0IGZpbGUgYCUuMjUwcyciKSxmaWxlbmFtZSk7CisgIGlmICghcmVhZF9pbmZvKHBhcnQsZmlsZW5hbWUscmkpKQorICAgIG9oc2hpdGUoXygiZmlsZSBgJS4yNTBzJyBpcyBub3QgYW4gYXJjaGl2ZSBwYXJ0IiksZmlsZW5hbWUpOworICBmY2xvc2UocGFydCk7Cit9CisKK3ZvaWQgcHJpbnRfaW5mbyhjb25zdCBzdHJ1Y3QgcGFydGluZm8gKnBpKSB7CisgIHByaW50ZihfKCIlczpcbiIKKyAgICAgICAgICIgICAgUGFydCBmb3JtYXQgdmVyc2lvbjogICAgICAgICAgICAlc1xuIgorICAgICAgICAgIiAgICBQYXJ0IG9mIHBhY2thZ2U6ICAgICAgICAgICAgICAgICVzXG4iCisgICAgICAgICAiICAgICAgICAuLi4gdmVyc2lvbjogICAgICAgICAgICAgICAgJXNcbiIKKyAgICAgICAgICIgICAgICAgIC4uLiBhcmNoaXRlY3R1cmU6ICAgICAgICAgICAlc1xuIgorICAgICAgICAgIiAgICAgICAgLi4uIE1ENSBjaGVja3N1bTogICAgICAgICAgICVzXG4iCisgICAgICAgICAiICAgICAgICAuLi4gbGVuZ3RoOiAgICAgICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisgICAgICAgICAiICAgICAgICAuLi4gc3BsaXQgZXZlcnk6ICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisgICAgICAgICAiICAgIFBhcnQgbnVtYmVyOiAgICAgICAgICAgICAgICAgICAgJWQvJWRcbiIKKyAgICAgICAgICIgICAgUGFydCBsZW5ndGg6ICAgICAgICAgICAgICAgICAgICAlamQgYnl0ZXNcbiIKKyAgICAgICAgICIgICAgUGFydCBvZmZzZXQ6ICAgICAgICAgICAgICAgICAgICAlamQgYnl0ZXNcbiIKKyAgICAgICAgICIgICAgUGFydCBmaWxlIHNpemUgKHVzZWQgcG9ydGlvbik6ICAlamQgYnl0ZXNcblxuIiksCisgICAgICAgICBwaS0+ZmlsZW5hbWUsCisgICAgICAgICBwaS0+Zm10dmVyc2lvbiwKKyAgICAgICAgIHBpLT5wYWNrYWdlLAorICAgICAgICAgcGktPnZlcnNpb24sCisgICAgICAgICBwaS0+YXJjaCA/IHBpLT5hcmNoIDogQ18oImFyY2hpdGVjdHVyZSIsICI8dW5rbm93bj4iKSwKKyAgICAgICAgIHBpLT5tZDVzdW0sCisgICAgICAgICAoaW50bWF4X3QpcGktPm9yZ2xlbmd0aCwKKyAgICAgICAgIChpbnRtYXhfdClwaS0+bWF4cGFydGxlbiwKKyAgICAgICAgIHBpLT50aGlzcGFydG4sCisgICAgICAgICBwaS0+bWF4cGFydG4sCisgICAgICAgICAoaW50bWF4X3QpcGktPnRoaXNwYXJ0bGVuLAorICAgICAgICAgKGludG1heF90KXBpLT50aGlzcGFydG9mZnNldCwKKyAgICAgICAgIChpbnRtYXhfdClwaS0+ZmlsZXNpemUpOworfQorCitpbnQKK2RvX2luZm8oY29uc3QgY2hhciAqY29uc3QgKmFyZ3YpCit7CisgIGNvbnN0IGNoYXIgKnRoaXNhcmc7CisgIHN0cnVjdCBwYXJ0aW5mbyAqcGksIHBzOworICBGSUxFICpwYXJ0OworCisgIGlmICghKmFyZ3YpCisgICAgYmFkdXNhZ2UoXygiLS0lcyByZXF1aXJlcyBvbmUgb3IgbW9yZSBwYXJ0IGZpbGUgYXJndW1lbnRzIiksCisgICAgICAgICAgICAgY2lwYWN0aW9uLT5vbG9uZyk7CisKKyAgd2hpbGUgKCh0aGlzYXJnPSAqYXJndisrKSkgeworICAgIHBhcnQ9IGZvcGVuKHRoaXNhcmcsInIiKTsKKyAgICBpZiAoIXBhcnQpIG9oc2hpdGUoXygiY2Fubm90IG9wZW4gYXJjaGl2ZSBwYXJ0IGZpbGUgYCUuMjUwcyciKSx0aGlzYXJnKTsKKyAgICBwaT0gcmVhZF9pbmZvKHBhcnQsdGhpc2FyZywmcHMpOworICAgIGZjbG9zZShwYXJ0KTsKKyAgICBpZiAocGkpIHsKKyAgICAgIHByaW50X2luZm8ocGkpOworICAgIH0gZWxzZSB7CisgICAgICBwcmludGYoXygiZmlsZSBgJXMnIGlzIG5vdCBhbiBhcmNoaXZlIHBhcnRcbiIpLHRoaXNhcmcpOworICAgIH0KKyAgICBtX291dHB1dChzdGRvdXQsIF8oIjxzdGFuZGFyZCBvdXRwdXQ+IikpOworICB9CisKKyAgcmV0dXJuIDA7Cit9CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2Rwa2ctc3BsaXQvam9pbi5jIGIvZHBrZy0xLjE2LjEuMS9kcGtnLXNwbGl0L2pvaW4uYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xZGQxMjRlCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kcGtnLXNwbGl0L2pvaW4uYwpAQCAtMCwwICsxLDE0NSBAQAorLyoKKyAqIGRwa2ctc3BsaXQgLSBzcGxpdHRpbmcgYW5kIGpvaW5pbmcgb2YgbXVsdGlwYXJ0ICouZGViIGFyY2hpdmVzCisgKiBqb2luLmMgLSBqb2luaW5nCisgKgorICogQ29weXJpZ2h0IMKpIDE5OTUgSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuZ3JlZW5lbmQub3JnLnVrPgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaW5jbHVkZSA8Y29uZmlnLmg+CisjaW5jbHVkZSA8Y29tcGF0Lmg+CisKKyNpbmNsdWRlIDxhc3NlcnQuaD4KKyNpbmNsdWRlIDxsaW1pdHMuaD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDxmY250bC5oPgorI2luY2x1ZGUgPHVuaXN0ZC5oPgorI2luY2x1ZGUgPHN0ZGxpYi5oPgorI2luY2x1ZGUgPHN0ZGlvLmg+CisKKyNpbmNsdWRlIDxkcGtnL2kxOG4uaD4KKyNpbmNsdWRlIDxkcGtnL2Rwa2cuaD4KKyNpbmNsdWRlIDxkcGtnL2Rwa2ctZGIuaD4KKyNpbmNsdWRlIDxkcGtnL2J1ZmZlci5oPgorI2luY2x1ZGUgPGRwa2cvb3B0aW9ucy5oPgorCisjaW5jbHVkZSAiZHBrZy1zcGxpdC5oIgorCit2b2lkIHJlYXNzZW1ibGUoc3RydWN0IHBhcnRpbmZvICoqcGFydGxpc3QsIGNvbnN0IGNoYXIgKm91dHB1dGZpbGUpIHsKKyAgaW50IGZkX291dCwgZmRfaW47CisgIHVuc2lnbmVkIGludCBpOworCisgIHByaW50ZihQXygiUHV0dGluZyBwYWNrYWdlICVzIHRvZ2V0aGVyIGZyb20gJWQgcGFydDogIiwKKyAgICAgICAgICAgICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0czogIiwKKyAgICAgICAgICAgIHBhcnRsaXN0WzBdLT5tYXhwYXJ0biksCisgICAgICAgICBwYXJ0bGlzdFswXS0+cGFja2FnZSxwYXJ0bGlzdFswXS0+bWF4cGFydG4pOworCisgIGZkX291dCA9IGNyZWF0KG91dHB1dGZpbGUsIDA2NDQpOworICBpZiAoZmRfb3V0IDwgMCkKKyAgICBvaHNoaXRlKF8oInVuYWJsZSB0byBvcGVuIG91dHB1dCBmaWxlIGAlLjI1MHMnIiksIG91dHB1dGZpbGUpOworICBmb3IgKGk9MDsgaTxwYXJ0bGlzdFswXS0+bWF4cGFydG47IGkrKykgeworICAgIHN0cnVjdCBwYXJ0aW5mbyAqcGkgPSBwYXJ0bGlzdFtpXTsKKworICAgIGZkX2luID0gb3BlbihwaS0+ZmlsZW5hbWUsIE9fUkRPTkxZKTsKKyAgICBpZiAoZmRfaW4gPCAwKQorICAgICAgb2hzaGl0ZShfKCJ1bmFibGUgdG8gKHJlKW9wZW4gaW5wdXQgcGFydCBmaWxlIGAlLjI1MHMnIiksIHBpLT5maWxlbmFtZSk7CisgICAgZmRfc2tpcChmZF9pbiwgcGktPmhlYWRlcmxlbiwgXygic2tpcHBpbmcgc3BsaXQgcGFja2FnZSBoZWFkZXIiKSk7CisgICAgZmRfZmRfY29weShmZF9pbiwgZmRfb3V0LCBwaS0+dGhpc3BhcnRsZW4sIF8oInNwbGl0IHBhY2thZ2UgcGFydCIpKTsKKyAgICBjbG9zZShmZF9pbik7CisKKyAgICBwcmludGYoIiVkICIsaSsxKTsKKyAgfQorICBpZiAoZnN5bmMoZmRfb3V0KSkKKyAgICBvaHNoaXRlKF8oInVuYWJsZSB0byBzeW5jIGZpbGUgJyVzJyIpLCBvdXRwdXRmaWxlKTsKKyAgaWYgKGNsb3NlKGZkX291dCkpCisgICAgb2hzaGl0ZShfKCJ1bmFibGUgdG8gY2xvc2UgZmlsZSAnJXMnIiksIG91dHB1dGZpbGUpOworCisgIHByaW50ZihfKCJkb25lXG4iKSk7Cit9CisKKwordm9pZCBhZGR0b3BhcnRsaXN0KHN0cnVjdCBwYXJ0aW5mbyAqKnBhcnRsaXN0LAorICAgICAgICAgICAgICAgICAgIHN0cnVjdCBwYXJ0aW5mbyAqcGksIHN0cnVjdCBwYXJ0aW5mbyAqcmVmaSkgeworICBpbnQgaTsKKworICBpZiAoc3RyY21wKHBpLT5wYWNrYWdlLHJlZmktPnBhY2thZ2UpIHx8CisgICAgICBzdHJjbXAocGktPnZlcnNpb24scmVmaS0+dmVyc2lvbikgfHwKKyAgICAgIHN0cmNtcChwaS0+bWQ1c3VtLHJlZmktPm1kNXN1bSkgfHwKKyAgICAgIHBpLT5vcmdsZW5ndGggIT0gcmVmaS0+b3JnbGVuZ3RoIHx8CisgICAgICBwaS0+bWF4cGFydG4gIT0gcmVmaS0+bWF4cGFydG4gfHwKKyAgICAgIHBpLT5tYXhwYXJ0bGVuICE9IHJlZmktPm1heHBhcnRsZW4pIHsKKyAgICBwcmludF9pbmZvKHBpKTsKKyAgICBwcmludF9pbmZvKHJlZmkpOworICAgIG9oc2hpdChfKCJmaWxlcyBgJS4yNTBzJyBhbmQgYCUuMjUwcycgYXJlIG5vdCBwYXJ0cyBvZiB0aGUgc2FtZSBmaWxlIiksCisgICAgICAgICAgIHBpLT5maWxlbmFtZSxyZWZpLT5maWxlbmFtZSk7CisgIH0KKyAgaT0gcGktPnRoaXNwYXJ0bi0xOworICBpZiAocGFydGxpc3RbaV0pCisgICAgb2hzaGl0KF8oInRoZXJlIGFyZSBzZXZlcmFsIHZlcnNpb25zIG9mIHBhcnQgJWQgLSBhdCBsZWFzdCBgJS4yNTBzJyBhbmQgYCUuMjUwcyciKSwKKyAgICAgICAgICAgcGktPnRoaXNwYXJ0biwgcGktPmZpbGVuYW1lLCBwYXJ0bGlzdFtpXS0+ZmlsZW5hbWUpOworICBwYXJ0bGlzdFtpXT0gcGk7Cit9CisKK2ludAorZG9fam9pbihjb25zdCBjaGFyICpjb25zdCAqYXJndikKK3sKKyAgY29uc3QgY2hhciAqdGhpc2FyZzsKKyAgc3RydWN0IHBhcnRxdWV1ZSAqcHE7CisgIHN0cnVjdCBwYXJ0aW5mbyAqcmVmaSwgKipwYXJ0bGlzdDsKKyAgdW5zaWduZWQgaW50IGk7CisKKyAgYXNzZXJ0KCFxdWV1ZSk7CisgIGlmICghKmFyZ3YpCisgICAgYmFkdXNhZ2UoXygiLS0lcyByZXF1aXJlcyBvbmUgb3IgbW9yZSBwYXJ0IGZpbGUgYXJndW1lbnRzIiksCisgICAgICAgICAgICAgY2lwYWN0aW9uLT5vbG9uZyk7CisgIHdoaWxlICgodGhpc2FyZz0gKmFyZ3YrKykpIHsKKyAgICBwcT0gbmZtYWxsb2Moc2l6ZW9mKHN0cnVjdCBwYXJ0cXVldWUpKTsKKworICAgIG11c3RnZXRwYXJ0aW5mbyh0aGlzYXJnLCZwcS0+aW5mbyk7CisKKyAgICBwcS0+bmV4dGlucXVldWU9IHF1ZXVlOworICAgIHF1ZXVlPSBwcTsKKyAgfQorICByZWZpPSBOVUxMOworICBmb3IgKHBxPSBxdWV1ZTsgcHE7IHBxPSBwcS0+bmV4dGlucXVldWUpCisgICAgaWYgKCFyZWZpIHx8IHBxLT5pbmZvLnRoaXNwYXJ0biA8IHJlZmktPnRoaXNwYXJ0bikgcmVmaT0gJnBxLT5pbmZvOworICBhc3NlcnQocmVmaSk7CisgIHBhcnRsaXN0PSBuZm1hbGxvYyhzaXplb2Yoc3RydWN0IHBhcnRpbmZvKikqcmVmaS0+bWF4cGFydG4pOworICBmb3IgKGkgPSAwOyBpIDwgcmVmaS0+bWF4cGFydG47IGkrKykKKyAgICBwYXJ0bGlzdFtpXSA9IE5VTEw7CisgIGZvciAocHE9IHF1ZXVlOyBwcTsgcHE9IHBxLT5uZXh0aW5xdWV1ZSkgeworICAgIHN0cnVjdCBwYXJ0aW5mbyAqcGkgPSAmcHEtPmluZm87CisKKyAgICBhZGR0b3BhcnRsaXN0KHBhcnRsaXN0LHBpLHJlZmkpOworICB9CisgIGZvciAoaT0wOyBpPHJlZmktPm1heHBhcnRuOyBpKyspIHsKKyAgICBpZiAoIXBhcnRsaXN0W2ldKSBvaHNoaXQoXygicGFydCAlZCBpcyBtaXNzaW5nIiksaSsxKTsKKyAgfQorICBpZiAoIW9wdF9vdXRwdXRmaWxlKSB7CisgICAgY2hhciAqcDsKKworICAgIHA9IG5mbWFsbG9jKHN0cmxlbihyZWZpLT5wYWNrYWdlKSsxK3N0cmxlbihyZWZpLT52ZXJzaW9uKStzaXplb2YoREVCRVhUKSk7CisgICAgc3RyY3B5KHAscmVmaS0+cGFja2FnZSk7CisgICAgc3RyY2F0KHAsICJfIik7CisgICAgc3RyY2F0KHAscmVmaS0+dmVyc2lvbik7CisgICAgc3RyY2F0KHAsICJfIik7CisgICAgc3RyY2F0KHAsIHJlZmktPmFyY2ggPyByZWZpLT5hcmNoIDogInVua25vd24iKTsKKyAgICBzdHJjYXQocCxERUJFWFQpOworICAgIG9wdF9vdXRwdXRmaWxlID0gcDsKKyAgfQorICByZWFzc2VtYmxlKHBhcnRsaXN0LCBvcHRfb3V0cHV0ZmlsZSk7CisKKyAgcmV0dXJuIDA7Cit9CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2Rwa2ctc3BsaXQvbWFpbi5jIGIvZHBrZy0xLjE2LjEuMS9kcGtnLXNwbGl0L21haW4uYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45YjhiMDlhCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kcGtnLXNwbGl0L21haW4uYwpAQCAtMCwwICsxLDE3NCBAQAorLyoKKyAqIGRwa2ctc3BsaXQgLSBzcGxpdHRpbmcgYW5kIGpvaW5pbmcgb2YgbXVsdGlwYXJ0ICouZGViIGFyY2hpdmVzCisgKiBtYWluLmMgLSBtYWluIHByb2dyYW0KKyAqCisgKiBDb3B5cmlnaHQgwqkgMTk5NSBJYW4gSmFja3NvbiA8aWFuQGNoaWFyay5ncmVlbmVuZC5vcmcudWs+CisgKgorICogVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisgKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAqIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorICovCisjaW5jbHVkZSA8Y29uZmlnLmg+CisjaW5jbHVkZSA8Y29tcGF0Lmg+CisKKyNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KKyNpbmNsdWRlIDxzeXMvc3RhdC5oPgorCisjaW5jbHVkZSA8YXNzZXJ0Lmg+CisjaW5jbHVkZSA8bGltaXRzLmg+CisjaW5jbHVkZSA8aW50dHlwZXMuaD4KKyNpZiBIQVZFX0xPQ0FMRV9ICisjaW5jbHVkZSA8bG9jYWxlLmg+CisjZW5kaWYKKyNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlIDxzdGRpby5oPgorCisjaW5jbHVkZSA8ZHBrZy9tYWNyb3MuaD4KKyNpbmNsdWRlIDxkcGtnL2kxOG4uaD4KKyNpbmNsdWRlIDxkcGtnL2Rwa2cuaD4KKyNpbmNsdWRlIDxkcGtnL2Rwa2ctZGIuaD4KKyNpbmNsdWRlIDxkcGtnL29wdGlvbnMuaD4KKworI2luY2x1ZGUgImRwa2ctc3BsaXQuaCIKKworc3RhdGljIHZvaWQgRFBLR19BVFRSX05PUkVUCitwcmludHZlcnNpb24oY29uc3Qgc3RydWN0IGNtZGluZm8gKmNpcCwgY29uc3QgY2hhciAqdmFsdWUpCit7CisgIHByaW50ZihfKCJEZWJpYW4gYCVzJyBwYWNrYWdlIHNwbGl0L2pvaW4gdG9vbDsgdmVyc2lvbiAlcy5cbiIpLAorICAgICAgICAgU1BMSVRURVIsIERQS0dfVkVSU0lPTl9BUkNIKTsKKyAgcHJpbnRmKF8oIkNvcHlyaWdodCAoQykgMTk5NC0xOTk2IElhbiBKYWNrc29uLlxuIikpOworICBwcmludGYoXygKKyJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAyIG9yXG4iCisibGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuXG4iKSk7CisKKyAgbV9vdXRwdXQoc3Rkb3V0LCBfKCI8c3RhbmRhcmQgb3V0cHV0PiIpKTsKKworICBleGl0KDApOworfQorCitzdGF0aWMgdm9pZCBEUEtHX0FUVFJfTk9SRVQKK3VzYWdlKGNvbnN0IHN0cnVjdCBjbWRpbmZvICpjaXAsIGNvbnN0IGNoYXIgKnZhbHVlKQoreworICBwcmludGYoXygKKyJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gPGNvbW1hbmQ+XG4iCisiXG4iKSwgU1BMSVRURVIpOworCisgIHByaW50ZihfKAorIkNvbW1hbmRzOlxuIgorIiAgLXN8LS1zcGxpdCA8ZmlsZT4gWzxwcmVmaXg+XSAgICAgU3BsaXQgYW4gYXJjaGl2ZS5cbiIKKyIgIC1qfC0tam9pbiA8cGFydD4gPHBhcnQ+IC4uLiAgICAgIEpvaW4gcGFydHMgdG9nZXRoZXIuXG4iCisiICAtSXwtLWluZm8gPHBhcnQ+IC4uLiAgICAgICAgICAgICBEaXNwbGF5IGluZm8gYWJvdXQgYSBwYXJ0LlxuIgorIiAgLWF8LS1hdXRvIC1vIDxjb21wbGV0ZT4gPHBhcnQ+ICAgQXV0by1hY2N1bXVsYXRlIHBhcnRzLlxuIgorIiAgLWx8LS1saXN0cSAgICAgICAgICAgICAgICAgICAgICAgTGlzdCB1bm1hdGNoZWQgcGllY2VzLlxuIgorIiAgLWR8LS1kaXNjYXJkIFs8ZmlsZW5hbWU+IC4uLl0gICAgRGlzY2FyZCB1bm1hdGNoZWQgcGllY2VzLlxuIgorIlxuIikpOworCisgIHByaW50ZihfKAorIiAgLWh8LS1oZWxwICAgICAgICAgICAgICAgICAgICAgICAgU2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iKSk7CisKKyAgcHJpbnRmKF8oCisiT3B0aW9uczpcbiIKKyIgIC0tZGVwb3RkaXIgPGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLyVzLlxuIgorIiAgLVN8LS1wYXJ0c2l6ZSA8c2l6ZT4gICAgICAgICAgICAgSW4gS2lCLCBmb3IgLXMgKGRlZmF1bHQgaXMgNDUwKS5cbiIKKyIgIC1vfC0tb3V0cHV0IDxmaWxlPiAgICAgICAgICAgICAgIEZpbGVuYW1lLCBmb3IgLWogKGRlZmF1bHQgaXNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhY2thZ2U+Xzx2ZXJzaW9uPl88YXJjaD4uZGViKS5cbiIKKyIgIC1RfC0tbnBxdWlldCAgICAgICAgICAgICAgICAgICAgIEJlIHF1aWV0IHdoZW4gLWEgaXMgbm90IGEgcGFydC5cbiIKKyIgIC0tbXNkb3MgICAgICAgICAgICAgICAgICAgICAgICAgIEdlbmVyYXRlIDguMyBmaWxlbmFtZXMuXG4iCisiXG4iKSwgQURNSU5ESVIsIFBBUlRTRElSKTsKKworICBwcmludGYoXygKKyJFeGl0IHN0YXR1czpcbiIKKyIgIDAgPSBva1xuIgorIiAgMSA9IHdpdGggLS1hdXRvLCBmaWxlIGlzIG5vdCBhIHBhcnRcbiIKKyIgIDIgPSB0cm91YmxlXG4iKSk7CisKKworICBtX291dHB1dChzdGRvdXQsIF8oIjxzdGFuZGFyZCBvdXRwdXQ+IikpOworCisgIGV4aXQoMCk7Cit9CisKK3N0YXRpYyBjb25zdCBjaGFyIHByaW50Zm9yaGVscFtdID0gTl8oIlR5cGUgZHBrZy1zcGxpdCAtLWhlbHAgZm9yIGhlbHAuIik7CisKK3N0cnVjdCBwYXJ0cXVldWUgKnF1ZXVlPSBOVUxMOworCitvZmZfdCBvcHRfbWF4cGFydHNpemUgPSBTUExJVFBBUlRERUZNQVg7Citjb25zdCBjaGFyICpvcHRfZGVwb3RkaXIgPSBBRE1JTkRJUiAiLyIgUEFSVFNESVI7Citjb25zdCBjaGFyICpvcHRfb3V0cHV0ZmlsZSA9IE5VTEw7CitpbnQgb3B0X25wcXVpZXQgPSAwOworaW50IG9wdF9tc2RvcyA9IDA7CisKK3ZvaWQgcmVycmVvZihGSUxFICpmLCBjb25zdCBjaGFyICpmbikgeworICBpZiAoZmVycm9yKGYpKSBvaHNoaXRlKF8oImVycm9yIHJlYWRpbmcgJS4yNTBzIiksZm4pOworICBvaHNoaXQoXygidW5leHBlY3RlZCBlbmQgb2YgZmlsZSBpbiAlLjI1MHMiKSxmbik7Cit9CisKK3N0YXRpYyB2b2lkIHNldHBhcnRzaXplKGNvbnN0IHN0cnVjdCBjbWRpbmZvICpjaXAsIGNvbnN0IGNoYXIgKnZhbHVlKSB7CisgIG9mZl90IG5ld3BhcnRzaXplOworICBjaGFyICplbmRwOworCisgIG5ld3BhcnRzaXplID0gc3RydG9pbWF4KHZhbHVlLCAmZW5kcCwgMTApOworICBpZiAodmFsdWUgPT0gZW5kcCB8fCAqZW5kcCkKKyAgICBiYWR1c2FnZShfKCJpbnZhbGlkIGludGVnZXIgZm9yIC0tJXM6IGAlLjI1MHMnIiksIGNpcC0+b2xvbmcsIHZhbHVlKTsKKyAgaWYgKG5ld3BhcnRzaXplIDw9IDAgfHwgbmV3cGFydHNpemUgPiAoSU5UX01BWCA+PiAxMCkpCisgICAgYmFkdXNhZ2UoXygicGFydCBzaXplIGlzIGZhciB0b28gbGFyZ2Ugb3IgaXMgbm90IHBvc2l0aXZlIikpOworCisgIG9wdF9tYXhwYXJ0c2l6ZSA9IG5ld3BhcnRzaXplIDw8IDEwOworICBpZiAob3B0X21heHBhcnRzaXplIDw9IEhFQURFUkFMTE9XQU5DRSkKKyAgICBiYWR1c2FnZShfKCJwYXJ0IHNpemUgbXVzdCBiZSBhdCBsZWFzdCAlZCBLaUIgKHRvIGFsbG93IGZvciBoZWFkZXIpIiksCisgICAgICAgICAgICAgKEhFQURFUkFMTE9XQU5DRSA+PiAxMCkgKyAxKTsKK30KKworc3RhdGljIGNvbnN0IHN0cnVjdCBjbWRpbmZvIGNtZGluZm9zW109IHsKKyAgQUNUSU9OKCJzcGxpdCIsICAgJ3MnLCAgMCwgIGRvX3NwbGl0KSwKKyAgQUNUSU9OKCJqb2luIiwgICAgJ2onLCAgMCwgIGRvX2pvaW4pLAorICBBQ1RJT04oImluZm8iLCAgICAnSScsICAwLCAgZG9faW5mbyksCisgIEFDVElPTigiYXV0byIsICAgICdhJywgIDAsICBkb19hdXRvKSwKKyAgQUNUSU9OKCJsaXN0cSIsICAgJ2wnLCAgMCwgIGRvX3F1ZXVlKSwKKyAgQUNUSU9OKCJkaXNjYXJkIiwgJ2QnLCAgMCwgIGRvX2Rpc2NhcmQpLAorCisgIHsgImhlbHAiLCAgICAgICAgICdoJywgIDAsICBOVUxMLCBOVUxMLCAgICAgICAgICAgICB1c2FnZSAgICAgICAgICAgICAgIH0sCisgIHsgInZlcnNpb24iLCAgICAgICAwLCAgIDAsICBOVUxMLCBOVUxMLCAgICAgICAgICAgICBwcmludHZlcnNpb24gICAgICAgIH0sCisgIHsgImRlcG90ZGlyIiwgICAgICAwLCAgIDEsICBOVUxMLCAmb3B0X2RlcG90ZGlyLCAgICBOVUxMICAgICAgICAgICAgICAgIH0sCisgIHsgInBhcnRzaXplIiwgICAgICdTJywgIDEsICBOVUxMLCBOVUxMLCAgICAgICAgICAgICBzZXRwYXJ0c2l6ZSAgICAgICAgIH0sCisgIHsgIm91dHB1dCIsICAgICAgICdvJywgIDEsICBOVUxMLCAmb3B0X291dHB1dGZpbGUsICBOVUxMICAgICAgICAgICAgICAgIH0sCisgIHsgIm5wcXVpZXQiLCAgICAgICdRJywgIDAsICAmb3B0X25wcXVpZXQsIE5VTEwsICAgICBOVUxMLCAgICAgICAgICAgMSAgIH0sCisgIHsgIm1zZG9zIiwgICAgICAgICAwLCAgIDAsICAmb3B0X21zZG9zLCBOVUxMLCAgICAgICBOVUxMLCAgICAgICAgICAgMSAgIH0sCisgIHsgIE5VTEwsICAgICAgICAgICAgICAwICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KK307CisKK2ludCBtYWluKGludCBhcmdjLCBjb25zdCBjaGFyICpjb25zdCAqYXJndikgeworICBpbnQgcmV0OworCisgIHNldGxvY2FsZShMQ19BTEwsICIiKTsKKyAgYmluZHRleHRkb21haW4oUEFDS0FHRSwgTE9DQUxFRElSKTsKKyAgdGV4dGRvbWFpbihQQUNLQUdFKTsKKworICBkcGtnX3NldF9wcm9nbmFtZShTUExJVFRFUik7CisgIHN0YW5kYXJkX3N0YXJ0dXAoKTsKKyAgbXlvcHQoJmFyZ3YsIGNtZGluZm9zLCBwcmludGZvcmhlbHApOworCisgIGlmICghY2lwYWN0aW9uKSBiYWR1c2FnZShfKCJuZWVkIGFuIGFjdGlvbiBvcHRpb24iKSk7CisKKyAgc2V0dmJ1ZihzdGRvdXQsTlVMTCxfSU9OQkYsMCk7CisKKyAgcmV0ID0gY2lwYWN0aW9uLT5hY3Rpb24oYXJndik7CisKKyAgbV9vdXRwdXQoc3RkZXJyLCBfKCI8c3RhbmRhcmQgZXJyb3I+IikpOworCisgIHN0YW5kYXJkX3NodXRkb3duKCk7CisKKyAgcmV0dXJuIHJldDsKK30KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZHBrZy1zcGxpdC9xdWV1ZS5jIGIvZHBrZy0xLjE2LjEuMS9kcGtnLXNwbGl0L3F1ZXVlLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzQ4ZjE2YwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZHBrZy1zcGxpdC9xdWV1ZS5jCkBAIC0wLDAgKzEsMzI3IEBACisvKgorICogZHBrZy1zcGxpdCAtIHNwbGl0dGluZyBhbmQgam9pbmluZyBvZiBtdWx0aXBhcnQgKi5kZWIgYXJjaGl2ZXMKKyAqIHF1ZXVlLmMgLSBxdWV1ZSBtYW5hZ2VtZW50CisgKgorICogQ29weXJpZ2h0IMKpIDE5OTUgSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuZ3JlZW5lbmQub3JnLnVrPgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaW5jbHVkZSA8Y29uZmlnLmg+CisjaW5jbHVkZSA8Y29tcGF0Lmg+CisKKyNpbmNsdWRlIDxzeXMvc3RhdC5oPgorCisjaW5jbHVkZSA8YXNzZXJ0Lmg+CisjaW5jbHVkZSA8bGltaXRzLmg+CisjaW5jbHVkZSA8aW50dHlwZXMuaD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDxmY250bC5oPgorI2luY2x1ZGUgPGRpcmVudC5oPgorI2luY2x1ZGUgPHVuaXN0ZC5oPgorI2luY2x1ZGUgPHN0ZGludC5oPgorI2luY2x1ZGUgPHN0ZGxpYi5oPgorI2luY2x1ZGUgPHN0ZGlvLmg+CisKKyNpbmNsdWRlIDxkcGtnL2kxOG4uaD4KKyNpbmNsdWRlIDxkcGtnL2Rwa2cuaD4KKyNpbmNsdWRlIDxkcGtnL2Rwa2ctZGIuaD4KKyNpbmNsdWRlIDxkcGtnL2Rpci5oPgorI2luY2x1ZGUgPGRwa2cvYnVmZmVyLmg+CisjaW5jbHVkZSA8ZHBrZy9vcHRpb25zLmg+CisKKyNpbmNsdWRlICJkcGtnLXNwbGl0LmgiCisKKy8qCisgKiBUaGUgcXVldWUsIGJ5IGRlZmF1bHQgbG9jYXRlZCBpbiAvdmFyL2xpYi9kcGtnL3BhcnRzLywgaXMgYSBwbGFpbgorICogZGlyZWN0b3J5IHdpdGggb25lIGZpbGUgcGVyIHBhcnQuCisgKgorICogRWFjaCBwYXJ0IGlzIG5hbWVkIOKAnDxtZDVzdW0+LjxtYXhwYXJ0bGVuPi48dGhpc3BhcnRuPi48bWF4cGFydG4+4oCdLAorICogd2l0aCBhbGwgbnVtYmVycyBpbiBoZXguCisgKi8KKworCitzdGF0aWMgYm9vbAorZGVjb21wb3NlX2ZpbGVuYW1lKGNvbnN0IGNoYXIgKmZpbGVuYW1lLCBzdHJ1Y3QgcGFydHF1ZXVlICpwcSkKK3sKKyAgY29uc3QgY2hhciAqcDsKKyAgY2hhciAqcTsKKworICBpZiAoc3Ryc3BuKGZpbGVuYW1lLCAiMDEyMzQ1Njc4OWFiY2RlZiIpICE9IE1ENUhBU0hMRU4gfHwKKyAgICAgIGZpbGVuYW1lW01ENUhBU0hMRU5dICE9ICcuJykKKyAgICByZXR1cm4gZmFsc2U7CisgIHEgPSBuZm1hbGxvYyhNRDVIQVNITEVOICsgMSk7CisgIG1lbWNweShxLCBmaWxlbmFtZSwgTUQ1SEFTSExFTik7CisgIHFbTUQ1SEFTSExFTl0gPSAnXDAnOworICBwcS0+aW5mby5tZDVzdW09IHE7CisgIHAgPSBmaWxlbmFtZSArIE1ENUhBU0hMRU4gKyAxOworICBwcS0+aW5mby5tYXhwYXJ0bGVuID0gc3RydG9pbWF4KHAsICZxLCAxNik7CisgIGlmIChxID09IHAgfHwgKnErKyAhPSAnLicpCisgICAgcmV0dXJuIGZhbHNlOworICBwID0gcTsKKyAgcHEtPmluZm8udGhpc3BhcnRuID0gKGludClzdHJ0b2wocCwgJnEsIDE2KTsKKyAgaWYgKHEgPT0gcCB8fCAqcSsrICE9ICcuJykKKyAgICByZXR1cm4gZmFsc2U7CisgIHAgPSBxOworICBwcS0+aW5mby5tYXhwYXJ0biA9IChpbnQpc3RydG9sKHAsICZxLCAxNik7CisgIGlmIChxID09IHAgfHwgKnEpCisgICAgcmV0dXJuIGZhbHNlOworICByZXR1cm4gdHJ1ZTsKK30KKwordm9pZCBzY2FuZGVwb3Qodm9pZCkgeworICBESVIgKmRlcG90OworICBzdHJ1Y3QgZGlyZW50ICpkZTsKKworICBhc3NlcnQoIXF1ZXVlKTsKKyAgZGVwb3QgPSBvcGVuZGlyKG9wdF9kZXBvdGRpcik7CisgIGlmICghZGVwb3QpCisgICAgb2hzaGl0ZShfKCJ1bmFibGUgdG8gcmVhZCBkZXBvdCBkaXJlY3RvcnkgYCUuMjUwcyciKSwgb3B0X2RlcG90ZGlyKTsKKyAgd2hpbGUgKChkZT0gcmVhZGRpcihkZXBvdCkpKSB7CisgICAgc3RydWN0IHBhcnRxdWV1ZSAqcHE7CisgICAgY2hhciAqcDsKKworICAgIGlmIChkZS0+ZF9uYW1lWzBdID09ICcuJykgY29udGludWU7CisgICAgcHE9IG5mbWFsbG9jKHNpemVvZihzdHJ1Y3QgcGFydHF1ZXVlKSk7CisgICAgcHEtPmluZm8uZm10dmVyc2lvbj0gcHEtPmluZm8ucGFja2FnZT0gcHEtPmluZm8udmVyc2lvbj0gTlVMTDsKKyAgICBwcS0+aW5mby5hcmNoID0gTlVMTDsKKyAgICBwcS0+aW5mby5vcmdsZW5ndGg9IHBxLT5pbmZvLnRoaXNwYXJ0b2Zmc2V0PSBwcS0+aW5mby50aGlzcGFydGxlbj0gMDsKKyAgICBwcS0+aW5mby5oZWFkZXJsZW49IDA7CisgICAgcCA9IG5mbWFsbG9jKHN0cmxlbihvcHRfZGVwb3RkaXIpICsgMSArIHN0cmxlbihkZS0+ZF9uYW1lKSArIDEpOworICAgIHNwcmludGYocCwgIiVzLyVzIiwgb3B0X2RlcG90ZGlyLCBkZS0+ZF9uYW1lKTsKKyAgICBwcS0+aW5mby5maWxlbmFtZT0gcDsKKyAgICBpZiAoIWRlY29tcG9zZV9maWxlbmFtZShkZS0+ZF9uYW1lLHBxKSkgeworICAgICAgcHEtPmluZm8ubWQ1c3VtPSBOVUxMOworICAgICAgcHEtPmluZm8ubWF4cGFydGxlbj0gcHEtPmluZm8udGhpc3BhcnRuPSBwcS0+aW5mby5tYXhwYXJ0bj0gMDsKKyAgICB9CisgICAgcHEtPm5leHRpbnF1ZXVlPSBxdWV1ZTsKKyAgICBxdWV1ZT0gcHE7CisgIH0KKyAgY2xvc2VkaXIoZGVwb3QpOworfQorCitzdGF0aWMgYm9vbAorcGFydG1hdGNoZXMoc3RydWN0IHBhcnRpbmZvICpwaSwgc3RydWN0IHBhcnRpbmZvICpyZWZpKQoreworICByZXR1cm4gKHBpLT5tZDVzdW0gJiYKKyAgICAgICAgICAhc3RyY21wKHBpLT5tZDVzdW0scmVmaS0+bWQ1c3VtKSAmJgorICAgICAgICAgIHBpLT5tYXhwYXJ0biA9PSByZWZpLT5tYXhwYXJ0biAmJgorICAgICAgICAgIHBpLT5tYXhwYXJ0bGVuID09IHJlZmktPm1heHBhcnRsZW4pOworfQorCitpbnQKK2RvX2F1dG8oY29uc3QgY2hhciAqY29uc3QgKmFyZ3YpCit7CisgIGNvbnN0IGNoYXIgKnBhcnRmaWxlOworICBzdHJ1Y3QgcGFydGluZm8gKnJlZmksICoqcGFydGxpc3QsICpvdGhlcnRoaXNwYXJ0OworICBzdHJ1Y3QgcGFydHF1ZXVlICpwcTsKKyAgdW5zaWduZWQgaW50IGk7CisgIGludCBqOworICBGSUxFICpwYXJ0OworCisgIGlmICghb3B0X291dHB1dGZpbGUpCisgICAgYmFkdXNhZ2UoXygiLS1hdXRvIHJlcXVpcmVzIHRoZSB1c2Ugb2YgdGhlIC0tb3V0cHV0IG9wdGlvbiIpKTsKKyAgaWYgKCEocGFydGZpbGU9ICphcmd2KyspIHx8ICphcmd2KQorICAgIGJhZHVzYWdlKF8oIi0tYXV0byByZXF1aXJlcyBleGFjdGx5IG9uZSBwYXJ0IGZpbGUgYXJndW1lbnQiKSk7CisKKyAgcmVmaT0gbmZtYWxsb2Moc2l6ZW9mKHN0cnVjdCBwYXJ0cXVldWUpKTsKKyAgcGFydD0gZm9wZW4ocGFydGZpbGUsInIiKTsKKyAgaWYgKCFwYXJ0KSBvaHNoaXRlKF8oInVuYWJsZSB0byByZWFkIHBhcnQgZmlsZSBgJS4yNTBzJyIpLHBhcnRmaWxlKTsKKyAgaWYgKCFyZWFkX2luZm8ocGFydCxwYXJ0ZmlsZSxyZWZpKSkgeworICAgIGlmICghb3B0X25wcXVpZXQpCisgICAgICBwcmludGYoXygiRmlsZSBgJS4yNTBzJyBpcyBub3QgcGFydCBvZiBhIG11bHRpcGFydCBhcmNoaXZlLlxuIikscGFydGZpbGUpOworICAgIG1fb3V0cHV0KHN0ZG91dCwgXygiPHN0YW5kYXJkIG91dHB1dD4iKSk7CisgICAgcmV0dXJuIDE7CisgIH0KKyAgZmNsb3NlKHBhcnQpOworICBzY2FuZGVwb3QoKTsKKyAgcGFydGxpc3Q9IG5mbWFsbG9jKHNpemVvZihzdHJ1Y3QgcGFydGluZm8qKSpyZWZpLT5tYXhwYXJ0bik7CisgIGZvciAoaSA9IDA7IGkgPCByZWZpLT5tYXhwYXJ0bjsgaSsrKQorICAgIHBhcnRsaXN0W2ldID0gTlVMTDsKKyAgZm9yIChwcT0gcXVldWU7IHBxOyBwcT0gcHEtPm5leHRpbnF1ZXVlKSB7CisgICAgc3RydWN0IHBhcnRpbmZvICpucGksICpwaSA9ICZwcS0+aW5mbzsKKworICAgIGlmICghcGFydG1hdGNoZXMocGkscmVmaSkpIGNvbnRpbnVlOworICAgIG5waT0gbmZtYWxsb2Moc2l6ZW9mKHN0cnVjdCBwYXJ0aW5mbykpOworICAgIG11c3RnZXRwYXJ0aW5mbyhwaS0+ZmlsZW5hbWUsbnBpKTsKKyAgICBhZGR0b3BhcnRsaXN0KHBhcnRsaXN0LG5waSxyZWZpKTsKKyAgfQorICAvKiBJZiB3ZSBhbHJlYWR5IGhhdmUgYSBjb3B5IG9mIHRoaXMgdmVyc2lvbiB3ZSBpZ25vcmUgaXQgYW5kIHByZWZlciB0aGUKKyAgICogbmV3IG9uZSwgYnV0IHdlIHN0aWxsIHdhbnQgdG8gZGVsZXRlIHRoZSBvbmUgaW4gdGhlIGRlcG90LCBzbyB3ZQorICAgKiBzYXZlIGl0cyBwYXJ0aW5mbyAod2l0aCB0aGUgZmlsZW5hbWUpIGZvciBsYXRlci4gVGhpcyBhbHNvIHByZXZlbnRzCisgICAqIHVzIGZyb20gYWNjaWRlbnRhbGx5IGRlbGV0aW5nIHRoZSBzb3VyY2UgZmlsZS4gKi8KKyAgb3RoZXJ0aGlzcGFydD0gcGFydGxpc3RbcmVmaS0+dGhpc3BhcnRuLTFdOworICBwYXJ0bGlzdFtyZWZpLT50aGlzcGFydG4tMV09IHJlZmk7CisgIGZvciAoaj1yZWZpLT5tYXhwYXJ0bi0xOyBqPj0wICYmIHBhcnRsaXN0W2pdOyBqLS0pOworCisgIGlmIChqPj0wKSB7CisgICAgaW50IGZkX3NyYywgZmRfZHN0OworICAgIGludCBhcDsKKyAgICBjaGFyICpwLCAqcTsKKworICAgIG1fYXNwcmludGYoJnAsICIlcy90LiVseCIsIG9wdF9kZXBvdGRpciwgKGxvbmcpZ2V0cGlkKCkpOworICAgIG1fYXNwcmludGYoJnEsICIlcy8lcy4languJXguJXgiLCBvcHRfZGVwb3RkaXIsIHJlZmktPm1kNXN1bSwKKyAgICAgICAgICAgICAgIChpbnRtYXhfdClyZWZpLT5tYXhwYXJ0bGVuLCByZWZpLT50aGlzcGFydG4sIHJlZmktPm1heHBhcnRuKTsKKworICAgIGZkX3NyYyA9IG9wZW4ocGFydGZpbGUsIE9fUkRPTkxZKTsKKyAgICBpZiAoZmRfc3JjIDwgMCkKKyAgICAgIG9oc2hpdGUoXygidW5hYmxlIHRvIHJlb3BlbiBwYXJ0IGZpbGUgYCUuMjUwcyciKSwgcGFydGZpbGUpOworICAgIGZkX2RzdCA9IGNyZWF0KHAsIDA2NDQpOworICAgIGlmIChmZF9kc3QgPCAwKQorICAgICAgb2hzaGl0ZShfKCJ1bmFibGUgdG8gb3BlbiBuZXcgZGVwb3QgZmlsZSBgJS4yNTBzJyIpLCBwKTsKKworICAgIGZkX2ZkX2NvcHkoZmRfc3JjLCBmZF9kc3QsIHJlZmktPmZpbGVzaXplLCBfKCJleHRyYWN0aW5nIHNwbGl0IHBhcnQiKSk7CisKKyAgICBpZiAoZnN5bmMoZmRfZHN0KSkKKyAgICAgIG9oc2hpdGUoXygidW5hYmxlIHRvIHN5bmMgZmlsZSAnJXMnIiksIHApOworICAgIGlmIChjbG9zZShmZF9kc3QpKQorICAgICAgb2hzaGl0ZShfKCJ1bmFibGUgdG8gY2xvc2UgZmlsZSAnJXMnIiksIHApOworICAgIGNsb3NlKGZkX3NyYyk7CisKKyAgICBpZiAocmVuYW1lKHAscSkpIG9oc2hpdGUoXygidW5hYmxlIHRvIHJlbmFtZSBuZXcgZGVwb3QgZmlsZSBgJS4yNTBzJyB0byBgJS4yNTBzJyIpLHAscSk7CisgICAgZnJlZShxKTsKKyAgICBmcmVlKHApOworCisgICAgcHJpbnRmKF8oIlBhcnQgJWQgb2YgcGFja2FnZSAlcyBmaWxlZCAoc3RpbGwgd2FudCAiKSxyZWZpLT50aGlzcGFydG4scmVmaS0+cGFja2FnZSk7CisgICAgLyogVGhlcmUgYXJlIHN0aWxsIHNvbWUgcGFydHMgbWlzc2luZy4gKi8KKyAgICBmb3IgKGk9MCwgYXA9MDsgaTxyZWZpLT5tYXhwYXJ0bjsgaSsrKQorICAgICAgaWYgKCFwYXJ0bGlzdFtpXSkKKyAgICAgICAgcHJpbnRmKCIlcyVkIiwgIWFwKysgPyAiIiA6IGkgPT0gKHVuc2lnbmVkIGludClqID8gXygiIGFuZCAiKSA6ICIsICIsIGkgKyAxKTsKKyAgICBwcmludGYoIikuXG4iKTsKKworICAgIGRpcl9zeW5jX3BhdGgob3B0X2RlcG90ZGlyKTsKKyAgfSBlbHNlIHsKKworICAgIC8qIFdlIGhhdmUgYWxsIHRoZSBwYXJ0cy4gKi8KKyAgICByZWFzc2VtYmxlKHBhcnRsaXN0LCBvcHRfb3V0cHV0ZmlsZSk7CisKKyAgICAvKiBPSywgZGVsZXRlIGFsbCB0aGUgcGFydHMgKGV4Y2VwdCB0aGUgbmV3IG9uZSwgd2hpY2ggd2UgbmV2ZXIgY29waWVkKS4gKi8KKyAgICBwYXJ0bGlzdFtyZWZpLT50aGlzcGFydG4tMV09IG90aGVydGhpc3BhcnQ7CisgICAgZm9yIChpPTA7IGk8cmVmaS0+bWF4cGFydG47IGkrKykKKyAgICAgIGlmIChwYXJ0bGlzdFtpXSkKKyAgICAgICAgaWYgKHVubGluayhwYXJ0bGlzdFtpXS0+ZmlsZW5hbWUpKQorICAgICAgICAgIG9oc2hpdGUoXygidW5hYmxlIHRvIGRlbGV0ZSB1c2VkLXVwIGRlcG90IGZpbGUgYCUuMjUwcyciKSxwYXJ0bGlzdFtpXS0+ZmlsZW5hbWUpOworCisgIH0KKworICBtX291dHB1dChzdGRlcnIsIF8oIjxzdGFuZGFyZCBlcnJvcj4iKSk7CisKKyAgcmV0dXJuIDA7Cit9CisKK2ludAorZG9fcXVldWUoY29uc3QgY2hhciAqY29uc3QgKmFyZ3YpCit7CisgIHN0cnVjdCBwYXJ0cXVldWUgKnBxOworICBjb25zdCBjaGFyICpoZWFkOworICBzdHJ1Y3Qgc3RhdCBzdGFiOworICBvZmZfdCBieXRlczsKKworICBpZiAoKmFyZ3YpCisgICAgYmFkdXNhZ2UoXygiLS0lcyB0YWtlcyBubyBhcmd1bWVudHMiKSwgY2lwYWN0aW9uLT5vbG9uZyk7CisgIHNjYW5kZXBvdCgpOworCisgIGhlYWQ9IE5fKCJKdW5rIGZpbGVzIGxlZnQgYXJvdW5kIGluIHRoZSBkZXBvdCBkaXJlY3Rvcnk6XG4iKTsKKyAgZm9yIChwcT0gcXVldWU7IHBxOyBwcT0gcHEtPm5leHRpbnF1ZXVlKSB7CisgICAgaWYgKHBxLT5pbmZvLm1kNXN1bSkgY29udGludWU7CisgICAgZnB1dHMoZ2V0dGV4dChoZWFkKSxzdGRvdXQpOyBoZWFkPSAiIjsKKyAgICBpZiAobHN0YXQocHEtPmluZm8uZmlsZW5hbWUsJnN0YWIpKQorICAgICAgb2hzaGl0KF8oInVuYWJsZSB0byBzdGF0IGAlLjI1MHMnIikscHEtPmluZm8uZmlsZW5hbWUpOworICAgIGlmIChTX0lTUkVHKHN0YWIuc3RfbW9kZSkpIHsKKyAgICAgIGJ5dGVzPSBzdGFiLnN0X3NpemU7CisgICAgICBwcmludGYoXygiICVzICglamQgYnl0ZXMpXG4iKSwgcHEtPmluZm8uZmlsZW5hbWUsIChpbnRtYXhfdClieXRlcyk7CisgICAgfSBlbHNlIHsKKyAgICAgIHByaW50ZihfKCIgJXMgKG5vdCBhIHBsYWluIGZpbGUpXG4iKSxwcS0+aW5mby5maWxlbmFtZSk7CisgICAgfQorICB9CisgIGlmICghKmhlYWQpIHB1dGNoYXIoJ1xuJyk7CisKKyAgaGVhZD0gTl8oIlBhY2thZ2VzIG5vdCB5ZXQgcmVhc3NlbWJsZWQ6XG4iKTsKKyAgZm9yIChwcT0gcXVldWU7IHBxOyBwcT0gcHEtPm5leHRpbnF1ZXVlKSB7CisgICAgc3RydWN0IHBhcnRpbmZvIHRpOworICAgIHVuc2lnbmVkIGludCBpOworCisgICAgaWYgKCFwcS0+aW5mby5tZDVzdW0pIGNvbnRpbnVlOworICAgIG11c3RnZXRwYXJ0aW5mbyhwcS0+aW5mby5maWxlbmFtZSwmdGkpOworICAgIGZwdXRzKGdldHRleHQoaGVhZCksc3Rkb3V0KTsgaGVhZD0gIiI7CisgICAgcHJpbnRmKF8oIiBQYWNrYWdlICVzOiBwYXJ0KHMpICIpLCB0aS5wYWNrYWdlKTsKKyAgICBieXRlcz0gMDsKKyAgICBmb3IgKGk9MDsgaTx0aS5tYXhwYXJ0bjsgaSsrKSB7CisgICAgICBzdHJ1Y3QgcGFydHF1ZXVlICpxcTsKKworICAgICAgZm9yIChxcT0gcHE7CisgICAgICAgICAgIHFxICYmICEocGFydG1hdGNoZXMoJnFxLT5pbmZvLCZ0aSkgJiYgcXEtPmluZm8udGhpc3BhcnRuID09IGkrMSk7CisgICAgICAgICAgIHFxPSBxcS0+bmV4dGlucXVldWUpOworICAgICAgaWYgKHFxKSB7CisgICAgICAgIHByaW50ZigiJWQgIixpKzEpOworICAgICAgICBpZiAobHN0YXQocXEtPmluZm8uZmlsZW5hbWUsJnN0YWIpKQorICAgICAgICAgIG9oc2hpdGUoXygidW5hYmxlIHRvIHN0YXQgYCUuMjUwcyciKSxxcS0+aW5mby5maWxlbmFtZSk7CisgICAgICAgIGlmICghU19JU1JFRyhzdGFiLnN0X21vZGUpKQorICAgICAgICAgIG9oc2hpdChfKCJwYXJ0IGZpbGUgYCUuMjUwcycgaXMgbm90IGEgcGxhaW4gZmlsZSIpLHFxLT5pbmZvLmZpbGVuYW1lKTsKKyAgICAgICAgYnl0ZXMrPSBzdGFiLnN0X3NpemU7CisKKyAgICAgICAgLyogRG9uJ3QgZmluZCB0aGlzIHBhY2thZ2UgYWdhaW4uICovCisgICAgICAgIHFxLT5pbmZvLm1kNXN1bSA9IE5VTEw7CisgICAgICB9CisgICAgfQorICAgIHByaW50ZihfKCIodG90YWwgJWpkIGJ5dGVzKVxuIiksIChpbnRtYXhfdClieXRlcyk7CisgIH0KKyAgbV9vdXRwdXQoc3Rkb3V0LCBfKCI8c3RhbmRhcmQgb3V0cHV0PiIpKTsKKworICByZXR1cm4gMDsKK30KKworZW51bSBkaXNjYXJkd2hpY2ggeyBkc19qdW5rLCBkc19wYWNrYWdlLCBkc19hbGwgfTsKKworc3RhdGljIHZvaWQgZGlzY2FyZHNvbWUoZW51bSBkaXNjYXJkd2hpY2ggd2hpY2gsIGNvbnN0IGNoYXIgKnBhY2thZ2UpIHsKKyAgc3RydWN0IHBhcnRxdWV1ZSAqcHE7CisKKyAgZm9yIChwcT0gcXVldWU7IHBxOyBwcT0gcHEtPm5leHRpbnF1ZXVlKSB7CisgICAgc3dpdGNoICh3aGljaCkgeworICAgIGNhc2UgZHNfanVuazoKKyAgICAgIGlmIChwcS0+aW5mby5tZDVzdW0pIGNvbnRpbnVlOworICAgICAgYnJlYWs7CisgICAgY2FzZSBkc19wYWNrYWdlOgorICAgICAgaWYgKCFwcS0+aW5mby5tZDVzdW0gfHwgc3RyY2FzZWNtcChwcS0+aW5mby5wYWNrYWdlLHBhY2thZ2UpKSBjb250aW51ZTsKKyAgICAgIGJyZWFrOworICAgIGNhc2UgZHNfYWxsOgorICAgICAgYnJlYWs7CisgICAgZGVmYXVsdDoKKyAgICAgIGludGVybmVycigidW5rbm93biBkaXNjYXJkd2hpY2ggJyVkJyIsIHdoaWNoKTsKKyAgICB9CisgICAgaWYgKHVubGluayhwcS0+aW5mby5maWxlbmFtZSkpCisgICAgICBvaHNoaXRlKF8oInVuYWJsZSB0byBkaXNjYXJkIGAlLjI1MHMnIikscHEtPmluZm8uZmlsZW5hbWUpOworICAgIHByaW50ZihfKCJEZWxldGVkICVzLlxuIikscHEtPmluZm8uZmlsZW5hbWUpOworICB9Cit9CisKK2ludAorZG9fZGlzY2FyZChjb25zdCBjaGFyICpjb25zdCAqYXJndikKK3sKKyAgY29uc3QgY2hhciAqdGhpc2FyZzsKKyAgc3RydWN0IHBhcnRxdWV1ZSAqcHE7CisKKyAgc2NhbmRlcG90KCk7CisgIGlmICgqYXJndikgeworICAgIGZvciAocHE9IHF1ZXVlOyBwcTsgcHE9IHBxLT5uZXh0aW5xdWV1ZSkKKyAgICAgIGlmIChwcS0+aW5mby5tZDVzdW0pCisgICAgICAgIG11c3RnZXRwYXJ0aW5mbyhwcS0+aW5mby5maWxlbmFtZSwmcHEtPmluZm8pOworICAgIGRpc2NhcmRzb21lKGRzX2p1bmssTlVMTCk7CisgICAgd2hpbGUgKCh0aGlzYXJnPSAqYXJndisrKSkgZGlzY2FyZHNvbWUoZHNfcGFja2FnZSx0aGlzYXJnKTsKKyAgfSBlbHNlIHsKKyAgICBkaXNjYXJkc29tZShkc19hbGwsTlVMTCk7CisgIH0KKworICByZXR1cm4gMDsKK30KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZHBrZy1zcGxpdC9zcGxpdC5jIGIvZHBrZy0xLjE2LjEuMS9kcGtnLXNwbGl0L3NwbGl0LmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uY2FlNDUzMQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZHBrZy1zcGxpdC9zcGxpdC5jCkBAIC0wLDAgKzEsMjcwIEBACisvKgorICogZHBrZy1zcGxpdCAtIHNwbGl0dGluZyBhbmQgam9pbmluZyBvZiBtdWx0aXBhcnQgKi5kZWIgYXJjaGl2ZXMKKyAqIHNwbGl0LmMgLSBzcGxpdHRpbmcgYXJjaGl2ZXMKKyAqCisgKiBDb3B5cmlnaHQgwqkgMTk5NSBJYW4gSmFja3NvbiA8aWFuQGNoaWFyay5ncmVlbmVuZC5vcmcudWs+CisgKiBDb3B5cmlnaHQgwqkgMjAwOC0yMDExIEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworI2luY2x1ZGUgPGNvbmZpZy5oPgorI2luY2x1ZGUgPGNvbXBhdC5oPgorCisjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CisjaW5jbHVkZSA8c3lzL3N0YXQuaD4KKyNpbmNsdWRlIDxzeXMvd2FpdC5oPgorCisjaW5jbHVkZSA8bGltaXRzLmg+CisjaW5jbHVkZSA8ZmNudGwuaD4KKyNpbmNsdWRlIDxsaWJnZW4uaD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDxjdHlwZS5oPgorI2luY2x1ZGUgPHRpbWUuaD4KKyNpbmNsdWRlIDx1bmlzdGQuaD4KKyNpbmNsdWRlIDxzdGRpbnQuaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlIDxzdGRpby5oPgorCisjaW5jbHVkZSA8ZHBrZy9pMThuLmg+CisjaW5jbHVkZSA8ZHBrZy9kcGtnLmg+CisjaW5jbHVkZSA8ZHBrZy9kcGtnLWRiLmg+CisjaW5jbHVkZSA8ZHBrZy9wYXRoLmg+CisjaW5jbHVkZSA8ZHBrZy9zdWJwcm9jLmg+CisjaW5jbHVkZSA8ZHBrZy9idWZmZXIuaD4KKyNpbmNsdWRlIDxkcGtnL2FyLmg+CisjaW5jbHVkZSA8ZHBrZy9vcHRpb25zLmg+CisKKyNpbmNsdWRlICJkcGtnLXNwbGl0LmgiCisKK3N0YXRpYyBjaGFyICoKK2RlYl9maWVsZChjb25zdCBjaGFyICpmaWxlbmFtZSwgY29uc3QgY2hhciAqZmllbGQpCit7CisJcGlkX3QgcGlkOworCWludCBwWzJdOworCXN0cnVjdCB2YXJidWYgYnVmID0gVkFSQlVGX0lOSVQ7CisJY2hhciAqZW5kOworCisJbV9waXBlKHApOworCisJcGlkID0gc3VicHJvY19mb3JrKCk7CisJaWYgKHBpZCA9PSAwKSB7CisJCS8qIENoaWxkIHdyaXRlcyB0byBwaXBlLiAqLworCQltX2R1cDIocFsxXSwgMSk7CisJCWNsb3NlKHBbMF0pOworCQljbG9zZShwWzFdKTsKKworCQlleGVjbHAoQkFDS0VORCwgQkFDS0VORCwgIi0tZmllbGQiLCBmaWxlbmFtZSwgZmllbGQsIE5VTEwpOworCQlvaHNoaXRlKF8oInVuYWJsZSB0byBleGVjdXRlICVzICglcykiKSwKKwkJICAgICAgICBfKCJwYWNrYWdlIGZpZWxkIHZhbHVlIGV4dHJhY3Rpb24iKSwgQkFDS0VORCk7CisJfQorCWNsb3NlKHBbMV0pOworCisJLyogUGFyYW50IHJlYWRzIGZyb20gcGlwZS4gKi8KKwl2YXJidWZfcmVzZXQoJmJ1Zik7CisJZmRfdmJ1Zl9jb3B5KHBbMF0sICZidWYsIC0xLCBfKCJwYWNrYWdlIGZpZWxkIHZhbHVlIGV4dHJhY3Rpb24iKSk7CisJdmFyYnVmX2VuZF9zdHIoJmJ1Zik7CisKKwljbG9zZShwWzBdKTsKKworCXN1YnByb2Nfd2FpdF9jaGVjayhwaWQsIF8oInBhY2thZ2UgZmllbGQgdmFsdWUgZXh0cmFjdGlvbiIpLCBQUk9DUElQRSk7CisKKwkvKiBUcmltIGRvd24gdHJhaWxpbmcganVuay4gKi8KKwlmb3IgKGVuZCA9IGJ1Zi5idWYgKyBzdHJsZW4oYnVmLmJ1ZikgLSAxOyBlbmQgLSBidWYuYnVmID49IDE7IGVuZC0tKQorCQlpZiAoaXNzcGFjZSgqZW5kKSkKKwkJCSplbmQgPSAnXDAnOworCQllbHNlCisJCQlicmVhazsKKworCXJldHVybiB2YXJidWZfZGV0YWNoKCZidWYpOworfQorCisvKiBDbGVhbnVwIGZpbGVuYW1lIGZvciB1c2UgaW4gY3JpcHBsZWQgbXNkb3Mgc3lzdGVtcy4gKi8KK3N0YXRpYyBjaGFyICoKK2NsZWFuX21zZG9zX2ZpbGVuYW1lKGNoYXIgKmZpbGVuYW1lKQoreworCWNoYXIgKmQsICpzOworCisJZm9yIChzID0gZCA9IGZpbGVuYW1lOyAqczsgZCsrLCBzKyspIHsKKwkJaWYgKCpzID09ICcrJykKKwkJCSpkID0gJ3gnOworCQllbHNlIGlmIChpc3VwcGVyKCpzKSkKKwkJCSpkID0gdG9sb3dlcigqcyk7CisJCWVsc2UgaWYgKGlzbG93ZXIoKnMpIHx8IGlzZGlnaXQoKnMpKQorCQkJKmQgPSAqczsKKwkJZWxzZQorCQkJcysrOworCX0KKworCXJldHVybiBmaWxlbmFtZTsKK30KKworc3RhdGljIGludAorbWtzcGxpdChjb25zdCBjaGFyICpmaWxlX3NyYywgY29uc3QgY2hhciAqcHJlZml4LCBvZmZfdCBtYXhwYXJ0c2l6ZSwKKyAgICAgICAgYm9vbCBtc2RvcykKK3sKKwlpbnQgZmRfc3JjOworCXN0cnVjdCBzdGF0IHN0OworCWNoYXIgaGFzaFtNRDVIQVNITEVOICsgMV07CisJY2hhciAqcGFja2FnZSwgKnZlcnNpb24sICphcmNoOworCWludCBucGFydHMsIGN1cnBhcnQ7CisJb2ZmX3QgcGFydHNpemU7CisJb2ZmX3QgY3VyX3BhcnRzaXplLCBsYXN0X3BhcnRzaXplOworCWNoYXIgKnByZWZpeGRpciA9IE5VTEwsICptc2Rvc19wcmVmaXggPSBOVUxMOworCXN0cnVjdCB2YXJidWYgZmlsZV9kc3QgPSBWQVJCVUZfSU5JVDsKKwlzdHJ1Y3QgdmFyYnVmIHBhcnRtYWdpYyA9IFZBUkJVRl9JTklUOworCXN0cnVjdCB2YXJidWYgcGFydG5hbWUgPSBWQVJCVUZfSU5JVDsKKworCWZkX3NyYyA9IG9wZW4oZmlsZV9zcmMsIE9fUkRPTkxZKTsKKwlpZiAoZmRfc3JjIDwgMCkKKwkJb2hzaGl0ZShfKCJ1bmFibGUgdG8gb3BlbiBzb3VyY2UgZmlsZSBgJS4yNTBzJyIpLCBmaWxlX3NyYyk7CisJaWYgKGZzdGF0KGZkX3NyYywgJnN0KSkKKwkJb2hzaGl0ZShfKCJ1bmFibGUgdG8gZnN0YXQgc291cmNlIGZpbGUiKSk7CisJaWYgKCFTX0lTUkVHKHN0LnN0X21vZGUpKQorCQlvaHNoaXQoXygic291cmNlIGZpbGUgYCUuMjUwcycgbm90IGEgcGxhaW4gZmlsZSIpLCBmaWxlX3NyYyk7CisKKwlmZF9tZDUoZmRfc3JjLCBoYXNoLCAtMSwgIm1kNWhhc2giKTsKKwlsc2VlayhmZF9zcmMsIDAsIFNFRUtfU0VUKTsKKworCS8qIEZJWE1FOiBVc2UgbGliZHBrZy1kZWIuICovCisJcGFja2FnZSA9IGRlYl9maWVsZChmaWxlX3NyYywgIlBhY2thZ2UiKTsKKwl2ZXJzaW9uID0gZGViX2ZpZWxkKGZpbGVfc3JjLCAiVmVyc2lvbiIpOworCWFyY2ggPSBkZWJfZmllbGQoZmlsZV9zcmMsICJBcmNoaXRlY3R1cmUiKTsKKworCXBhcnRzaXplID0gbWF4cGFydHNpemUgLSBIRUFERVJBTExPV0FOQ0U7CisJbGFzdF9wYXJ0c2l6ZSA9IHN0LnN0X3NpemUgJSBwYXJ0c2l6ZTsKKwlpZiAobGFzdF9wYXJ0c2l6ZSA9PSAwKQorCQlsYXN0X3BhcnRzaXplID0gcGFydHNpemU7CisJbnBhcnRzID0gKHN0LnN0X3NpemUgKyBwYXJ0c2l6ZSAtIDEpIC8gcGFydHNpemU7CisKKwlzZXR2YnVmKHN0ZG91dCwgTlVMTCwgX0lPTkJGLCAwKTsKKworCXByaW50ZihQXygiU3BsaXR0aW5nIHBhY2thZ2UgJXMgaW50byAlZCBwYXJ0OiAiLAorCSAgICAgICAgICAiU3BsaXR0aW5nIHBhY2thZ2UgJXMgaW50byAlZCBwYXJ0czogIiwgbnBhcnRzKSwKKwkgICAgICAgcGFja2FnZSwgbnBhcnRzKTsKKworCWlmIChtc2RvcykgeworCQljaGFyICp0OworCisJCXQgPSBtX3N0cmR1cChwcmVmaXgpOworCQlwcmVmaXhkaXIgPSBtX3N0cmR1cChkaXJuYW1lKHQpKTsKKwkJZnJlZSh0KTsKKworCQltc2Rvc19wcmVmaXggPSBtX3N0cmR1cChwYXRoX2Jhc2VuYW1lKHByZWZpeCkpOworCQlwcmVmaXggPSBjbGVhbl9tc2Rvc19maWxlbmFtZShtc2Rvc19wcmVmaXgpOworCX0KKworCWZvciAoY3VycGFydCA9IDE7IGN1cnBhcnQgPD0gbnBhcnRzOyBjdXJwYXJ0KyspIHsKKwkJaW50IGZkX2RzdDsKKworCQl2YXJidWZfcmVzZXQoJmZpbGVfZHN0KTsKKwkJLyogR2VuZXJhdGUgb3V0cHV0IGZpbGVuYW1lLiAqLworCQlpZiAobXNkb3MpIHsKKwkJCWNoYXIgKnJlZm5hbWU7CisJCQlpbnQgcHJlZml4X21heDsKKworCQkJbV9hc3ByaW50ZigmcmVmbmFtZSwgIiVkb2YlZCIsIGN1cnBhcnQsIG5wYXJ0cyk7CisJCQlwcmVmaXhfbWF4ID0gbWF4KDggLSBzdHJsZW4ocmVmbmFtZSksIDApOworCQkJdmFyYnVmX3ByaW50ZigmZmlsZV9kc3QsICIlcy8lLipzJS44cy5kZWIiLAorCQkJICAgICAgICAgICAgICBwcmVmaXhkaXIsIHByZWZpeF9tYXgsIHByZWZpeCwgcmVmbmFtZSk7CisJCQlmcmVlKHJlZm5hbWUpOworCQl9IGVsc2UgeworCQkJdmFyYnVmX3ByaW50ZigmZmlsZV9kc3QsICIlcy4lZG9mJWQuZGViIiwKKwkJCSAgICAgICAgICAgICAgcHJlZml4LCBjdXJwYXJ0LCBucGFydHMpOworCQl9CisKKwkJaWYgKGN1cnBhcnQgPT0gbnBhcnRzKQorCQkJY3VyX3BhcnRzaXplID0gbGFzdF9wYXJ0c2l6ZTsKKwkJZWxzZQorCQkJY3VyX3BhcnRzaXplID0gcGFydHNpemU7CisKKwkJaWYgKGN1cl9wYXJ0c2l6ZSA+IG1heHBhcnRzaXplKSB7CisJCQlvaHNoaXQoXygiSGVhZGVyIGlzIHRvbyBsb25nLCBtYWtpbmcgcGFydCB0b28gbG9uZy4gIgorCQkJICAgICAgICJZb3VyIHBhY2thZ2UgbmFtZSBvciB2ZXJzaW9uXG4iCisJCQkgICAgICAgIm51bWJlcnMgbXVzdCBiZSBleHRyYW9yZGluYXJpbHkgbG9uZywgIgorCQkJICAgICAgICJvciBzb21ldGhpbmcuIEdpdmluZyB1cC5cbiIpKTsKKwkJfQorCisJCS8qIFNwbGl0IHRoZSBkYXRhLiAqLworCQlmZF9kc3QgPSBjcmVhdChmaWxlX2RzdC5idWYsIDA2NDQpOworCQlpZiAoZmRfZHN0IDwgMCkKKwkJCW9oc2hpdGUoXygidW5hYmxlIHRvIG9wZW4gZmlsZSAnJXMnIiksIGZpbGVfZHN0LmJ1Zik7CisKKwkJLyogV3JpdGUgdGhlIGFyIGhlYWRlci4gKi8KKwkJZHBrZ19hcl9wdXRfbWFnaWMoZmlsZV9kc3QuYnVmLCBmZF9kc3QpOworCisJCS8qIFdyaXRlIHRoZSBkZWJpYW4tc3BsaXQgcGFydC4gKi8KKwkJdmFyYnVmX3ByaW50ZigmcGFydG1hZ2ljLAorCQkgICAgICAgICAgICAgICIlc1xuJXNcbiVzXG4lc1xuJWpkXG4lamRcbiVkLyVkXG4lc1xuIiwKKwkJICAgICAgICAgICAgICBTUExJVFZFUlNJT04sIHBhY2thZ2UsIHZlcnNpb24sIGhhc2gsCisJCSAgICAgICAgICAgICAgKGludG1heF90KXN0LnN0X3NpemUsIChpbnRtYXhfdClwYXJ0c2l6ZSwKKwkJICAgICAgICAgICAgICBjdXJwYXJ0LCBucGFydHMsIGFyY2gpOworCQlkcGtnX2FyX21lbWJlcl9wdXRfbWVtKGZpbGVfZHN0LmJ1ZiwgZmRfZHN0LCBQQVJUTUFHSUMsCisJCSAgICAgICAgICAgICAgICAgICAgICAgcGFydG1hZ2ljLmJ1ZiwgcGFydG1hZ2ljLnVzZWQpOworCQl2YXJidWZfcmVzZXQoJnBhcnRtYWdpYyk7CisKKwkJLyogV3JpdGUgdGhlIGRhdGEgcGFydC4gKi8KKwkJdmFyYnVmX3ByaW50ZigmcGFydG5hbWUsICJkYXRhLiVkIiwgY3VycGFydCk7CisJCWRwa2dfYXJfbWVtYmVyX3B1dF9maWxlKGZpbGVfZHN0LmJ1ZiwgZmRfZHN0LCBwYXJ0bmFtZS5idWYsCisJCSAgICAgICAgICAgICAgICAgICAgICAgIGZkX3NyYywgY3VyX3BhcnRzaXplKTsKKwkJdmFyYnVmX3Jlc2V0KCZwYXJ0bmFtZSk7CisKKwkJY2xvc2UoZmRfZHN0KTsKKworCQlwcmludGYoIiVkICIsIGN1cnBhcnQpOworCX0KKworCXZhcmJ1Zl9kZXN0cm95KCZmaWxlX2RzdCk7CisJdmFyYnVmX2Rlc3Ryb3koJnBhcnRuYW1lKTsKKwl2YXJidWZfZGVzdHJveSgmcGFydG1hZ2ljKTsKKworCWZyZWUocHJlZml4ZGlyKTsKKwlmcmVlKG1zZG9zX3ByZWZpeCk7CisKKwljbG9zZShmZF9zcmMpOworCisJcHJpbnRmKF8oImRvbmVcbiIpKTsKKworCXJldHVybiAwOworfQorCitpbnQKK2RvX3NwbGl0KGNvbnN0IGNoYXIgKmNvbnN0ICphcmd2KQoreworCWNvbnN0IGNoYXIgKnNvdXJjZWZpbGUsICpwcmVmaXg7CisKKwlzb3VyY2VmaWxlID0gKmFyZ3YrKzsKKwlpZiAoIXNvdXJjZWZpbGUpCisJCWJhZHVzYWdlKF8oIi0tc3BsaXQgbmVlZHMgYSBzb3VyY2UgZmlsZW5hbWUgYXJndW1lbnQiKSk7CisJcHJlZml4ID0gKmFyZ3YrKzsKKwlpZiAocHJlZml4ICYmICphcmd2KQorCQliYWR1c2FnZShfKCItLXNwbGl0IHRha2VzIGF0IG1vc3QgYSBzb3VyY2UgZmlsZW5hbWUgYW5kIGRlc3RpbmF0aW9uIHByZWZpeCIpKTsKKwlpZiAoIXByZWZpeCkgeworCQljaGFyICpwYWxsb2M7CisJCWludCBsOworCisJCWwgPSBzdHJsZW4oc291cmNlZmlsZSk7CisJCXBhbGxvYyA9IG5mbWFsbG9jKGwgKyAxKTsKKwkJc3RyY3B5KHBhbGxvYywgc291cmNlZmlsZSk7CisJCWlmICghc3RyY21wKHBhbGxvYyArIGwgLSAoc2l6ZW9mKERFQkVYVCkgLSAxKSwgREVCRVhUKSkgeworCQkJbCAtPSAoc2l6ZW9mKERFQkVYVCkgLSAxKTsKKwkJCXBhbGxvY1tsXSA9ICdcMCc7CisJCX0KKwkJcHJlZml4ID0gcGFsbG9jOworCX0KKworCW1rc3BsaXQoc291cmNlZmlsZSwgcHJlZml4LCBvcHRfbWF4cGFydHNpemUsIG9wdF9tc2Rvcyk7CisKKwlyZXR1cm4gMDsKK30KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9NYWtlZmlsZS5hbSBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9NYWtlZmlsZS5hbQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mMDYzOTFlCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L01ha2VmaWxlLmFtCkBAIC0wLDAgKzEsNjUgQEAKKyMjIFByb2Nlc3MgdGhpcyBmaWxlIHdpdGggYXV0b21ha2UgdG8gcHJvZHVjZSBNYWtlZmlsZS5pbgorCitTVUJESVJTID0gbWV0aG9kcyBwbworCitsb2NhbGVkaXIgPSAkKGRhdGFkaXIpL2xvY2FsZQorcGtnY29uZmRpciA9ICQoc3lzY29uZmRpcikvQFBBQ0tBR0VACisKK0FNX0NQUEZMQUdTID0gXAorCS1ETE9DQUxFRElSPVwiJChsb2NhbGVkaXIpXCIgXAorCS1EQURNSU5ESVI9XCIkKGFkbWluZGlyKVwiIC1ETElCRElSPVwiJChwa2dsaWJkaXIpXCIgXAorCS1ETE9DQUxMSUJESVI9XCIvdXNyL2xvY2FsL2xpYi9kcGtnXCIgXAorCS1pZGlyYWZ0ZXIgJCh0b3Bfc3JjZGlyKS9saWIvY29tcGF0IFwKKwktaXF1b3RlICQoYnVpbGRkaXIpIFwKKwktSSQodG9wX2J1aWxkZGlyKSBcCisJLUkkKHRvcF9zcmNkaXIpL2xpYgorCisKK2Jpbl9QUk9HUkFNUyA9IGRzZWxlY3QKKworZHNlbGVjdF9TT1VSQ0VTID0gXAorCWRzZWxlY3QuaCBcCisJZHNlbGVjdC1jdXJzZXMuaCBcCisJYmFzZWNtZHMuY2MgXAorCWJhc2VsaXN0LmNjIFwKKwliYXNldG9wLmNjIFwKKwliaW5kaW5ncy5jYyBiaW5kaW5ncy5oIFwKKwljdXJrZXlzLmNjIFwKKwloZWxwbXNncy5jYyBoZWxwbXNncy5oIFwKKwltYWluLmNjIFwKKwltZXRoa2V5cy5jYyBcCisJbWV0aGxpc3QuY2MgXAorCW1ldGhvZC5jYyBtZXRob2QuaCBcCisJbWV0aHBhcnNlLmNjIFwKKwlwa2djbWRzLmNjIFwKKwlwa2dkZXBjb24uY2MgXAorCXBrZ2Rpc3BsYXkuY2MgXAorCXBrZ2luZm8uY2MgXAorCXBrZ2tleXMuY2MgXAorCXBrZ2xpc3QuY2MgcGtnbGlzdC5oIFwKKwlwa2dzdWJsaXN0LmNjIFwKKwlwa2d0b3AuY2MKKworZHNlbGVjdF9MREFERCA9IFwKKwkkKENVUlNFU19MSUJTKSBcCisJLi4vbGliL2Rwa2cvbGliZHBrZy5hIFwKKwkuLi9saWIvY29tcGF0L2xpYmNvbXBhdC5hIFwKKwkkKExJQklOVEwpCisKKworRVhUUkFfRElTVCA9IGtleW92ZXJyaWRlIG1rY3Vya2V5cy5wbAorQ0xFQU5GSUxFUyA9IGN1cmtleXMuaAorCitjdXJrZXlzLiQoT0JKRVhUKTogY3Vya2V5cy5oCitjdXJrZXlzLmg6ICQoc3JjZGlyKS9rZXlvdmVycmlkZSAkKHNyY2RpcikvbWtjdXJrZXlzLnBsCisJJChBTV9WX0dFTikgY3Vyc2VzZmlsZT1gZWNobyAnI2luY2x1ZGUgImRzZWxlY3QtY3Vyc2VzLmgiJyB8IFwKKwkJJChDUFApIC1JJCh0b3BfYnVpbGRkaXIpIC1JICQoc3JjZGlyKSAtIHwgXAorCQlncmVwICdjdXJzZXMuaCcgfCBoZWFkIC1uIDEgfCBcCisJCXNlZCAtZSAncy9eW14iXSoiLy87IHMvIi4qJCQvLydgOyBcCisJaWYgWyAiJCRjdXJzZXNmaWxlIiA9ICIiIF07IHRoZW4gXAorCQllY2hvICJjYW4ndCBmaW5kIGN1cnNlcyBmaWxlIjsgZXhpdCAxOyBcCisJZmk7IFwKKwlwZXJsICQoc3JjZGlyKS9ta2N1cmtleXMucGwgJDwgJCRjdXJzZXNmaWxlID4kQAorCitpbnN0YWxsLWRhdGEtbG9jYWw6CisJJChta2Rpcl9wKSAkKERFU1RESVIpJChwa2djb25mZGlyKS9kc2VsZWN0LmNmZy5kCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvTWFrZWZpbGUuaW4gYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvTWFrZWZpbGUuaW4KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNmNhY2U4MwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9NYWtlZmlsZS5pbgpAQCAtMCwwICsxLDc4MCBAQAorIyBNYWtlZmlsZS5pbiBnZW5lcmF0ZWQgYnkgYXV0b21ha2UgMS4xMS4xIGZyb20gTWFrZWZpbGUuYW0uCisjIEBjb25maWd1cmVfaW5wdXRACisKKyMgQ29weXJpZ2h0IChDKSAxOTk0LCAxOTk1LCAxOTk2LCAxOTk3LCAxOTk4LCAxOTk5LCAyMDAwLCAyMDAxLCAyMDAyLAorIyAyMDAzLCAyMDA0LCAyMDA1LCAyMDA2LCAyMDA3LCAyMDA4LCAyMDA5ICBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sCisjIEluYy4KKyMgVGhpcyBNYWtlZmlsZS5pbiBpcyBmcmVlIHNvZnR3YXJlOyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uCisjIGdpdmVzIHVubGltaXRlZCBwZXJtaXNzaW9uIHRvIGNvcHkgYW5kL29yIGRpc3RyaWJ1dGUgaXQsCisjIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb25zLCBhcyBsb25nIGFzIHRoaXMgbm90aWNlIGlzIHByZXNlcnZlZC4KKworIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZLCB0byB0aGUgZXh0ZW50IHBlcm1pdHRlZCBieSBsYXc7IHdpdGhvdXQKKyMgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQQorIyBQQVJUSUNVTEFSIFBVUlBPU0UuCisKK0BTRVRfTUFLRUAKKworVlBBVEggPSBAc3JjZGlyQAorcGtnZGF0YWRpciA9ICQoZGF0YWRpcikvQFBBQ0tBR0VACitwa2dpbmNsdWRlZGlyID0gJChpbmNsdWRlZGlyKS9AUEFDS0FHRUAKK3BrZ2xpYmRpciA9ICQobGliZGlyKS9AUEFDS0FHRUAKK3BrZ2xpYmV4ZWNkaXIgPSAkKGxpYmV4ZWNkaXIpL0BQQUNLQUdFQAorYW1fX2NkID0gQ0RQQVRIPSIkJHtaU0hfVkVSU0lPTisufSQoUEFUSF9TRVBBUkFUT1IpIiAmJiBjZAoraW5zdGFsbF9zaF9EQVRBID0gJChpbnN0YWxsX3NoKSAtYyAtbSA2NDQKK2luc3RhbGxfc2hfUFJPR1JBTSA9ICQoaW5zdGFsbF9zaCkgLWMKK2luc3RhbGxfc2hfU0NSSVBUID0gJChpbnN0YWxsX3NoKSAtYworSU5TVEFMTF9IRUFERVIgPSAkKElOU1RBTExfREFUQSkKK3RyYW5zZm9ybSA9ICQocHJvZ3JhbV90cmFuc2Zvcm1fbmFtZSkKK05PUk1BTF9JTlNUQUxMID0gOgorUFJFX0lOU1RBTEwgPSA6CitQT1NUX0lOU1RBTEwgPSA6CitOT1JNQUxfVU5JTlNUQUxMID0gOgorUFJFX1VOSU5TVEFMTCA9IDoKK1BPU1RfVU5JTlNUQUxMID0gOgorYnVpbGRfdHJpcGxldCA9IEBidWlsZEAKK2hvc3RfdHJpcGxldCA9IEBob3N0QAorYmluX1BST0dSQU1TID0gZHNlbGVjdCQoRVhFRVhUKQorc3ViZGlyID0gZHNlbGVjdAorRElTVF9DT01NT04gPSAkKHNyY2RpcikvTWFrZWZpbGUuYW0gJChzcmNkaXIpL01ha2VmaWxlLmluCitBQ0xPQ0FMX000ID0gJCh0b3Bfc3JjZGlyKS9hY2xvY2FsLm00CithbV9fYWNsb2NhbF9tNF9kZXBzID0gJCh0b3Bfc3JjZGlyKS9tNC9kcGtnLWFyY2gubTQgXAorCSQodG9wX3NyY2RpcikvbTQvZHBrZy1idWlsZC5tNCBcCisJJCh0b3Bfc3JjZGlyKS9tNC9kcGtnLWNvbXBpbGVyLm00IFwKKwkkKHRvcF9zcmNkaXIpL200L2Rwa2ctY292ZXJhZ2UubTQgXAorCSQodG9wX3NyY2RpcikvbTQvZHBrZy1mdW5jcy5tNCAkKHRvcF9zcmNkaXIpL200L2Rwa2ctbGlicy5tNCBcCisJJCh0b3Bfc3JjZGlyKS9tNC9kcGtnLWxpbmtlci5tNCAkKHRvcF9zcmNkaXIpL200L2Rwa2ctcHJvZ3MubTQgXAorCSQodG9wX3NyY2RpcikvbTQvZHBrZy10eXBlcy5tNCBcCisJJCh0b3Bfc3JjZGlyKS9tNC9kcGtnLXVuaWNvZGUubTQgJCh0b3Bfc3JjZGlyKS9tNC9nZXR0ZXh0Lm00IFwKKwkkKHRvcF9zcmNkaXIpL200L2ljb252Lm00ICQodG9wX3NyY2RpcikvbTQvaW50bG1hY29zeC5tNCBcCisJJCh0b3Bfc3JjZGlyKS9tNC9saWItbGQubTQgJCh0b3Bfc3JjZGlyKS9tNC9saWItbGluay5tNCBcCisJJCh0b3Bfc3JjZGlyKS9tNC9saWItcHJlZml4Lm00ICQodG9wX3NyY2RpcikvbTQvbmxzLm00IFwKKwkkKHRvcF9zcmNkaXIpL200L3BvLm00ICQodG9wX3NyY2RpcikvbTQvcHJvZ3Rlc3QubTQgXAorCSQodG9wX3NyY2RpcikvY29uZmlndXJlLmFjCithbV9fY29uZmlndXJlX2RlcHMgPSAkKGFtX19hY2xvY2FsX200X2RlcHMpICQoQ09ORklHVVJFX0RFUEVOREVOQ0lFUykgXAorCSQoQUNMT0NBTF9NNCkKK21raW5zdGFsbGRpcnMgPSAkKGluc3RhbGxfc2gpIC1kCitDT05GSUdfSEVBREVSID0gJCh0b3BfYnVpbGRkaXIpL2NvbmZpZy5oCitDT05GSUdfQ0xFQU5fRklMRVMgPQorQ09ORklHX0NMRUFOX1ZQQVRIX0ZJTEVTID0KK2FtX19pbnN0YWxsZGlycyA9ICIkKERFU1RESVIpJChiaW5kaXIpIgorUFJPR1JBTVMgPSAkKGJpbl9QUk9HUkFNUykKK2FtX2RzZWxlY3RfT0JKRUNUUyA9IGJhc2VjbWRzLiQoT0JKRVhUKSBiYXNlbGlzdC4kKE9CSkVYVCkgXAorCWJhc2V0b3AuJChPQkpFWFQpIGJpbmRpbmdzLiQoT0JKRVhUKSBjdXJrZXlzLiQoT0JKRVhUKSBcCisJaGVscG1zZ3MuJChPQkpFWFQpIG1haW4uJChPQkpFWFQpIG1ldGhrZXlzLiQoT0JKRVhUKSBcCisJbWV0aGxpc3QuJChPQkpFWFQpIG1ldGhvZC4kKE9CSkVYVCkgbWV0aHBhcnNlLiQoT0JKRVhUKSBcCisJcGtnY21kcy4kKE9CSkVYVCkgcGtnZGVwY29uLiQoT0JKRVhUKSBwa2dkaXNwbGF5LiQoT0JKRVhUKSBcCisJcGtnaW5mby4kKE9CSkVYVCkgcGtna2V5cy4kKE9CSkVYVCkgcGtnbGlzdC4kKE9CSkVYVCkgXAorCXBrZ3N1Ymxpc3QuJChPQkpFWFQpIHBrZ3RvcC4kKE9CSkVYVCkKK2RzZWxlY3RfT0JKRUNUUyA9ICQoYW1fZHNlbGVjdF9PQkpFQ1RTKQorYW1fX0RFUEVOREVOQ0lFU18xID0KK2RzZWxlY3RfREVQRU5ERU5DSUVTID0gJChhbV9fREVQRU5ERU5DSUVTXzEpIC4uL2xpYi9kcGtnL2xpYmRwa2cuYSBcCisJLi4vbGliL2NvbXBhdC9saWJjb21wYXQuYSAkKGFtX19ERVBFTkRFTkNJRVNfMSkKK0RFRkFVTFRfSU5DTFVERVMgPSAKK2RlcGNvbXAgPSAkKFNIRUxMKSAkKHRvcF9zcmNkaXIpL2J1aWxkLWF1eC9kZXBjb21wCithbV9fZGVwZmlsZXNfbWF5YmUgPSBkZXBmaWxlcworYW1fX212ID0gbXYgLWYKK0NYWENPTVBJTEUgPSAkKENYWCkgJChERUZTKSAkKERFRkFVTFRfSU5DTFVERVMpICQoSU5DTFVERVMpIFwKKwkkKEFNX0NQUEZMQUdTKSAkKENQUEZMQUdTKSAkKEFNX0NYWEZMQUdTKSAkKENYWEZMQUdTKQorQU1fVl9DWFggPSAkKGFtX192X0NYWF8kKFYpKQorYW1fX3ZfQ1hYXyA9ICQoYW1fX3ZfQ1hYXyQoQU1fREVGQVVMVF9WRVJCT1NJVFkpKQorYW1fX3ZfQ1hYXzAgPSBAZWNobyAiICBDWFggICAiICRAOworQU1fVl9hdCA9ICQoYW1fX3ZfYXRfJChWKSkKK2FtX192X2F0XyA9ICQoYW1fX3ZfYXRfJChBTV9ERUZBVUxUX1ZFUkJPU0lUWSkpCithbV9fdl9hdF8wID0gQAorQ1hYTEQgPSAkKENYWCkKK0NYWExJTksgPSAkKENYWExEKSAkKEFNX0NYWEZMQUdTKSAkKENYWEZMQUdTKSAkKEFNX0xERkxBR1MpICQoTERGTEFHUykgXAorCS1vICRACitBTV9WX0NYWExEID0gJChhbV9fdl9DWFhMRF8kKFYpKQorYW1fX3ZfQ1hYTERfID0gJChhbV9fdl9DWFhMRF8kKEFNX0RFRkFVTFRfVkVSQk9TSVRZKSkKK2FtX192X0NYWExEXzAgPSBAZWNobyAiICBDWFhMRCAiICRAOworQ09NUElMRSA9ICQoQ0MpICQoREVGUykgJChERUZBVUxUX0lOQ0xVREVTKSAkKElOQ0xVREVTKSAkKEFNX0NQUEZMQUdTKSBcCisJJChDUFBGTEFHUykgJChBTV9DRkxBR1MpICQoQ0ZMQUdTKQorQU1fVl9DQyA9ICQoYW1fX3ZfQ0NfJChWKSkKK2FtX192X0NDXyA9ICQoYW1fX3ZfQ0NfJChBTV9ERUZBVUxUX1ZFUkJPU0lUWSkpCithbV9fdl9DQ18wID0gQGVjaG8gIiAgQ0MgICAgIiAkQDsKK0NDTEQgPSAkKENDKQorTElOSyA9ICQoQ0NMRCkgJChBTV9DRkxBR1MpICQoQ0ZMQUdTKSAkKEFNX0xERkxBR1MpICQoTERGTEFHUykgLW8gJEAKK0FNX1ZfQ0NMRCA9ICQoYW1fX3ZfQ0NMRF8kKFYpKQorYW1fX3ZfQ0NMRF8gPSAkKGFtX192X0NDTERfJChBTV9ERUZBVUxUX1ZFUkJPU0lUWSkpCithbV9fdl9DQ0xEXzAgPSBAZWNobyAiICBDQ0xEICAiICRAOworQU1fVl9HRU4gPSAkKGFtX192X0dFTl8kKFYpKQorYW1fX3ZfR0VOXyA9ICQoYW1fX3ZfR0VOXyQoQU1fREVGQVVMVF9WRVJCT1NJVFkpKQorYW1fX3ZfR0VOXzAgPSBAZWNobyAiICBHRU4gICAiICRAOworU09VUkNFUyA9ICQoZHNlbGVjdF9TT1VSQ0VTKQorRElTVF9TT1VSQ0VTID0gJChkc2VsZWN0X1NPVVJDRVMpCitSRUNVUlNJVkVfVEFSR0VUUyA9IGFsbC1yZWN1cnNpdmUgY2hlY2stcmVjdXJzaXZlIGR2aS1yZWN1cnNpdmUgXAorCWh0bWwtcmVjdXJzaXZlIGluZm8tcmVjdXJzaXZlIGluc3RhbGwtZGF0YS1yZWN1cnNpdmUgXAorCWluc3RhbGwtZHZpLXJlY3Vyc2l2ZSBpbnN0YWxsLWV4ZWMtcmVjdXJzaXZlIFwKKwlpbnN0YWxsLWh0bWwtcmVjdXJzaXZlIGluc3RhbGwtaW5mby1yZWN1cnNpdmUgXAorCWluc3RhbGwtcGRmLXJlY3Vyc2l2ZSBpbnN0YWxsLXBzLXJlY3Vyc2l2ZSBpbnN0YWxsLXJlY3Vyc2l2ZSBcCisJaW5zdGFsbGNoZWNrLXJlY3Vyc2l2ZSBpbnN0YWxsZGlycy1yZWN1cnNpdmUgcGRmLXJlY3Vyc2l2ZSBcCisJcHMtcmVjdXJzaXZlIHVuaW5zdGFsbC1yZWN1cnNpdmUKK1JFQ1VSU0lWRV9DTEVBTl9UQVJHRVRTID0gbW9zdGx5Y2xlYW4tcmVjdXJzaXZlIGNsZWFuLXJlY3Vyc2l2ZQlcCisgIGRpc3RjbGVhbi1yZWN1cnNpdmUgbWFpbnRhaW5lci1jbGVhbi1yZWN1cnNpdmUKK0FNX1JFQ1VSU0lWRV9UQVJHRVRTID0gJChSRUNVUlNJVkVfVEFSR0VUUzotcmVjdXJzaXZlPSkgXAorCSQoUkVDVVJTSVZFX0NMRUFOX1RBUkdFVFM6LXJlY3Vyc2l2ZT0pIHRhZ3MgVEFHUyBjdGFncyBDVEFHUyBcCisJZGlzdGRpcgorRVRBR1MgPSBldGFncworQ1RBR1MgPSBjdGFncworRElTVF9TVUJESVJTID0gJChTVUJESVJTKQorRElTVEZJTEVTID0gJChESVNUX0NPTU1PTikgJChESVNUX1NPVVJDRVMpICQoVEVYSU5GT1MpICQoRVhUUkFfRElTVCkKK2FtX19yZWxhdGl2aXplID0gXAorICBkaXIwPWBwd2RgOyBcCisgIHNlZF9maXJzdD0ncyxeXChbXi9dKlwpLy4qJCQsXDEsJzsgXAorICBzZWRfcmVzdD0ncyxeW14vXSovKiwsJzsgXAorICBzZWRfbGFzdD0ncyxeLiovXChbXi9dKlwpJCQsXDEsJzsgXAorICBzZWRfYnV0bGFzdD0ncywvKlteL10qJCQsLCc7IFwKKyAgd2hpbGUgdGVzdCAtbiAiJCRkaXIxIjsgZG8gXAorICAgIGZpcnN0PWBlY2hvICIkJGRpcjEiIHwgc2VkIC1lICIkJHNlZF9maXJzdCJgOyBcCisgICAgaWYgdGVzdCAiJCRmaXJzdCIgIT0gIi4iOyB0aGVuIFwKKyAgICAgIGlmIHRlc3QgIiQkZmlyc3QiID0gIi4uIjsgdGhlbiBcCisgICAgICAgIGRpcjI9YGVjaG8gIiQkZGlyMCIgfCBzZWQgLWUgIiQkc2VkX2xhc3QiYC8iJCRkaXIyIjsgXAorICAgICAgICBkaXIwPWBlY2hvICIkJGRpcjAiIHwgc2VkIC1lICIkJHNlZF9idXRsYXN0ImA7IFwKKyAgICAgIGVsc2UgXAorICAgICAgICBmaXJzdDI9YGVjaG8gIiQkZGlyMiIgfCBzZWQgLWUgIiQkc2VkX2ZpcnN0ImA7IFwKKyAgICAgICAgaWYgdGVzdCAiJCRmaXJzdDIiID0gIiQkZmlyc3QiOyB0aGVuIFwKKyAgICAgICAgICBkaXIyPWBlY2hvICIkJGRpcjIiIHwgc2VkIC1lICIkJHNlZF9yZXN0ImA7IFwKKyAgICAgICAgZWxzZSBcCisgICAgICAgICAgZGlyMj0iLi4vJCRkaXIyIjsgXAorICAgICAgICBmaTsgXAorICAgICAgICBkaXIwPSIkJGRpcjAiLyIkJGZpcnN0IjsgXAorICAgICAgZmk7IFwKKyAgICBmaTsgXAorICAgIGRpcjE9YGVjaG8gIiQkZGlyMSIgfCBzZWQgLWUgIiQkc2VkX3Jlc3QiYDsgXAorICBkb25lOyBcCisgIHJlbGRpcj0iJCRkaXIyIgorQUNMT0NBTCA9IEBBQ0xPQ0FMQAorQU1UQVIgPSBAQU1UQVJACitBTV9ERUZBVUxUX1ZFUkJPU0lUWSA9IEBBTV9ERUZBVUxUX1ZFUkJPU0lUWUAKK0FVVE9DT05GID0gQEFVVE9DT05GQAorQVVUT0hFQURFUiA9IEBBVVRPSEVBREVSQAorQVVUT01BS0UgPSBAQVVUT01BS0VACitBV0sgPSBAQVdLQAorQloyX0xJQlMgPSBAQloyX0xJQlNACitDQyA9IEBDQ0AKK0NDREVQTU9ERSA9IEBDQ0RFUE1PREVACitDRkxBR1MgPSBAQ0ZMQUdTQAorQ1BQID0gQENQUEAKK0NQUEZMQUdTID0gQENQUEZMQUdTQAorQ1VSU0VTX0xJQlMgPSBAQ1VSU0VTX0xJQlNACitDWFggPSBAQ1hYQAorQ1hYREVQTU9ERSA9IEBDWFhERVBNT0RFQAorQ1hYRkxBR1MgPSBAQ1hYRkxBR1NACitDWUdQQVRIX1cgPSBAQ1lHUEFUSF9XQAorREVGUyA9IEBERUZTQAorREVQRElSID0gQERFUERJUkAKK0RPWFlHRU4gPSBARE9YWUdFTkAKK0VDSE9fQyA9IEBFQ0hPX0NACitFQ0hPX04gPSBARUNIT19OQAorRUNIT19UID0gQEVDSE9fVEAKK0VHUkVQID0gQEVHUkVQQAorRVhFRVhUID0gQEVYRUVYVEAKK0dDT1YgPSBAR0NPVkAKK0dFVFRFWFRfTUFDUk9fVkVSU0lPTiA9IEBHRVRURVhUX01BQ1JPX1ZFUlNJT05ACitHTVNHRk1UID0gQEdNU0dGTVRACitHTVNHRk1UXzAxNSA9IEBHTVNHRk1UXzAxNUAKK0dSRVAgPSBAR1JFUEAKK0hBVkVfRE9UID0gQEhBVkVfRE9UQAorSU5TVEFMTCA9IEBJTlNUQUxMQAorSU5TVEFMTF9EQVRBID0gQElOU1RBTExfREFUQUAKK0lOU1RBTExfUFJPR1JBTSA9IEBJTlNUQUxMX1BST0dSQU1ACitJTlNUQUxMX1NDUklQVCA9IEBJTlNUQUxMX1NDUklQVEAKK0lOU1RBTExfU1RSSVBfUFJPR1JBTSA9IEBJTlNUQUxMX1NUUklQX1BST0dSQU1ACitJTlRMTElCUyA9IEBJTlRMTElCU0AKK0lOVExfTUFDT1NYX0xJQlMgPSBASU5UTF9NQUNPU1hfTElCU0AKK0xDT1YgPSBATENPVkAKK0xDT1ZfR0VOSFRNTCA9IEBMQ09WX0dFTkhUTUxACitMREZMQUdTID0gQExERkxBR1NACitMRVggPSBATEVYQAorTEVYTElCID0gQExFWExJQkAKK0xFWF9PVVRQVVRfUk9PVCA9IEBMRVhfT1VUUFVUX1JPT1RACitMSUJJQ09OViA9IEBMSUJJQ09OVkAKK0xJQklOVEwgPSBATElCSU5UTEAKK0xJQk9CSlMgPSBATElCT0JKU0AKK0xJQlMgPSBATElCU0AKK0xUTElCSUNPTlYgPSBATFRMSUJJQ09OVkAKK0xUTElCSU5UTCA9IEBMVExJQklOVExACitMVExJQk9CSlMgPSBATFRMSUJPQkpTQAorTUFLRUlORk8gPSBATUFLRUlORk9ACitNS0RJUl9QID0gQE1LRElSX1BACitNU0dGTVQgPSBATVNHRk1UQAorTVNHRk1UXzAxNSA9IEBNU0dGTVRfMDE1QAorTVNHTUVSR0UgPSBATVNHTUVSR0VACitPQkpFWFQgPSBAT0JKRVhUQAorUEFDS0FHRSA9IEBQQUNLQUdFQAorUEFDS0FHRV9CVUdSRVBPUlQgPSBAUEFDS0FHRV9CVUdSRVBPUlRACitQQUNLQUdFX05BTUUgPSBAUEFDS0FHRV9OQU1FQAorUEFDS0FHRV9TVFJJTkcgPSBAUEFDS0FHRV9TVFJJTkdACitQQUNLQUdFX1RBUk5BTUUgPSBAUEFDS0FHRV9UQVJOQU1FQAorUEFDS0FHRV9VUkwgPSBAUEFDS0FHRV9VUkxACitQQUNLQUdFX1ZFUlNJT04gPSBAUEFDS0FHRV9WRVJTSU9OQAorUEFUSF9TRVBBUkFUT1IgPSBAUEFUSF9TRVBBUkFUT1JACitQRVJMID0gQFBFUkxACitQRVJMX0NPVkVSID0gQFBFUkxfQ09WRVJACitQRVJMX0NPVkVSQUdFID0gQFBFUkxfQ09WRVJBR0VACitQRVJMX0xJQkRJUiA9IEBQRVJMX0xJQkRJUkAKK1BLR19DT05GSUcgPSBAUEtHX0NPTkZJR0AKK1BLR19DT05GSUdfTElCRElSID0gQFBLR19DT05GSUdfTElCRElSQAorUEtHX0NPTkZJR19QQVRIID0gQFBLR19DT05GSUdfUEFUSEAKK1BPNEEgPSBAUE80QUAKK1BPRDJNQU4gPSBAUE9EMk1BTkAKK1BPU1VCID0gQFBPU1VCQAorUkFOTElCID0gQFJBTkxJQkAKK1NFTElOVVhfTElCUyA9IEBTRUxJTlVYX0xJQlNACitTRVRfTUFLRSA9IEBTRVRfTUFLRUAKK1NIRUxMID0gQFNIRUxMQAorU1NEX0xJQlMgPSBAU1NEX0xJQlNACitTVFJJUCA9IEBTVFJJUEAKK1VTRV9OTFMgPSBAVVNFX05MU0AKK1VTRV9QTzRBID0gQFVTRV9QTzRBQAorVVNFX1VOSUNPREUgPSBAVVNFX1VOSUNPREVACitWRVJTSU9OID0gQFZFUlNJT05ACitYR0VUVEVYVCA9IEBYR0VUVEVYVEAKK1hHRVRURVhUXzAxNSA9IEBYR0VUVEVYVF8wMTVACitYR0VUVEVYVF9FWFRSQV9PUFRJT05TID0gQFhHRVRURVhUX0VYVFJBX09QVElPTlNACitaTElCX0xJQlMgPSBAWkxJQl9MSUJTQAorYWJzX2J1aWxkZGlyID0gQGFic19idWlsZGRpckAKK2Fic19zcmNkaXIgPSBAYWJzX3NyY2RpckAKK2Fic190b3BfYnVpbGRkaXIgPSBAYWJzX3RvcF9idWlsZGRpckAKK2Fic190b3Bfc3JjZGlyID0gQGFic190b3Bfc3JjZGlyQAorYWNfY3RfQ0MgPSBAYWNfY3RfQ0NACithY19jdF9DWFggPSBAYWNfY3RfQ1hYQAorYWRtaW5kaXIgPSBAYWRtaW5kaXJACithbV9faW5jbHVkZSA9IEBhbV9faW5jbHVkZUAKK2FtX19sZWFkaW5nX2RvdCA9IEBhbV9fbGVhZGluZ19kb3RACithbV9fcXVvdGUgPSBAYW1fX3F1b3RlQAorYW1fX3RhciA9IEBhbV9fdGFyQAorYW1fX3VudGFyID0gQGFtX191bnRhckAKK2JpbmRpciA9IEBiaW5kaXJACitidWlsZCA9IEBidWlsZEAKK2J1aWxkX2FsaWFzID0gQGJ1aWxkX2FsaWFzQAorYnVpbGRfY3B1ID0gQGJ1aWxkX2NwdUAKK2J1aWxkX29zID0gQGJ1aWxkX29zQAorYnVpbGRfdmVuZG9yID0gQGJ1aWxkX3ZlbmRvckAKK2J1aWxkZGlyID0gQGJ1aWxkZGlyQAorZGF0YWRpciA9IEBkYXRhZGlyQAorZGF0YXJvb3RkaXIgPSBAZGF0YXJvb3RkaXJACitkb2NkaXIgPSBAZG9jZGlyQAorZHZpZGlyID0gQGR2aWRpckAKK2V4ZWNfcHJlZml4ID0gQGV4ZWNfcHJlZml4QAoraG9zdCA9IEBob3N0QAoraG9zdF9hbGlhcyA9IEBob3N0X2FsaWFzQAoraG9zdF9jcHUgPSBAaG9zdF9jcHVACitob3N0X29zID0gQGhvc3Rfb3NACitob3N0X3ZlbmRvciA9IEBob3N0X3ZlbmRvckAKK2h0bWxkaXIgPSBAaHRtbGRpckAKK2luY2x1ZGVkaXIgPSBAaW5jbHVkZWRpckAKK2luZm9kaXIgPSBAaW5mb2RpckAKK2luc3RhbGxfc2ggPSBAaW5zdGFsbF9zaEAKK2xpYmRpciA9IEBsaWJkaXJACitsaWJleGVjZGlyID0gQGxpYmV4ZWNkaXJACitsb2NhbGVkaXIgPSAkKGRhdGFkaXIpL2xvY2FsZQorbG9jYWxzdGF0ZWRpciA9IEBsb2NhbHN0YXRlZGlyQAorbG9nZGlyID0gQGxvZ2RpckAKK21hbmRpciA9IEBtYW5kaXJACitta2Rpcl9wID0gQG1rZGlyX3BACitvbGRpbmNsdWRlZGlyID0gQG9sZGluY2x1ZGVkaXJACitwZGZkaXIgPSBAcGRmZGlyQAorcHJlZml4ID0gQHByZWZpeEAKK3Byb2dyYW1fdHJhbnNmb3JtX25hbWUgPSBAcHJvZ3JhbV90cmFuc2Zvcm1fbmFtZUAKK3BzZGlyID0gQHBzZGlyQAorc2JpbmRpciA9IEBzYmluZGlyQAorc2hhcmVkc3RhdGVkaXIgPSBAc2hhcmVkc3RhdGVkaXJACitzcmNkaXIgPSBAc3JjZGlyQAorc3lzY29uZmRpciA9IEBzeXNjb25mZGlyQAordGFyZ2V0X2FsaWFzID0gQHRhcmdldF9hbGlhc0AKK3RvcF9idWlsZF9wcmVmaXggPSBAdG9wX2J1aWxkX3ByZWZpeEAKK3RvcF9idWlsZGRpciA9IEB0b3BfYnVpbGRkaXJACit0b3Bfc3JjZGlyID0gQHRvcF9zcmNkaXJACitTVUJESVJTID0gbWV0aG9kcyBwbworcGtnY29uZmRpciA9ICQoc3lzY29uZmRpcikvQFBBQ0tBR0VACitBTV9DUFBGTEFHUyA9IFwKKwktRExPQ0FMRURJUj1cIiQobG9jYWxlZGlyKVwiIFwKKwktREFETUlORElSPVwiJChhZG1pbmRpcilcIiAtRExJQkRJUj1cIiQocGtnbGliZGlyKVwiIFwKKwktRExPQ0FMTElCRElSPVwiL3Vzci9sb2NhbC9saWIvZHBrZ1wiIFwKKwktaWRpcmFmdGVyICQodG9wX3NyY2RpcikvbGliL2NvbXBhdCBcCisJLWlxdW90ZSAkKGJ1aWxkZGlyKSBcCisJLUkkKHRvcF9idWlsZGRpcikgXAorCS1JJCh0b3Bfc3JjZGlyKS9saWIKKworZHNlbGVjdF9TT1VSQ0VTID0gXAorCWRzZWxlY3QuaCBcCisJZHNlbGVjdC1jdXJzZXMuaCBcCisJYmFzZWNtZHMuY2MgXAorCWJhc2VsaXN0LmNjIFwKKwliYXNldG9wLmNjIFwKKwliaW5kaW5ncy5jYyBiaW5kaW5ncy5oIFwKKwljdXJrZXlzLmNjIFwKKwloZWxwbXNncy5jYyBoZWxwbXNncy5oIFwKKwltYWluLmNjIFwKKwltZXRoa2V5cy5jYyBcCisJbWV0aGxpc3QuY2MgXAorCW1ldGhvZC5jYyBtZXRob2QuaCBcCisJbWV0aHBhcnNlLmNjIFwKKwlwa2djbWRzLmNjIFwKKwlwa2dkZXBjb24uY2MgXAorCXBrZ2Rpc3BsYXkuY2MgXAorCXBrZ2luZm8uY2MgXAorCXBrZ2tleXMuY2MgXAorCXBrZ2xpc3QuY2MgcGtnbGlzdC5oIFwKKwlwa2dzdWJsaXN0LmNjIFwKKwlwa2d0b3AuY2MKKworZHNlbGVjdF9MREFERCA9IFwKKwkkKENVUlNFU19MSUJTKSBcCisJLi4vbGliL2Rwa2cvbGliZHBrZy5hIFwKKwkuLi9saWIvY29tcGF0L2xpYmNvbXBhdC5hIFwKKwkkKExJQklOVEwpCisKK0VYVFJBX0RJU1QgPSBrZXlvdmVycmlkZSBta2N1cmtleXMucGwKK0NMRUFORklMRVMgPSBjdXJrZXlzLmgKK2FsbDogYWxsLXJlY3Vyc2l2ZQorCisuU1VGRklYRVM6CisuU1VGRklYRVM6IC5jYyAubyAub2JqCiskKHNyY2RpcikvTWFrZWZpbGUuaW46ICAkKHNyY2RpcikvTWFrZWZpbGUuYW0gICQoYW1fX2NvbmZpZ3VyZV9kZXBzKQorCUBmb3IgZGVwIGluICQ/OyBkbyBcCisJICBjYXNlICckKGFtX19jb25maWd1cmVfZGVwcyknIGluIFwKKwkgICAgKiQkZGVwKikgXAorCSAgICAgICggY2QgJCh0b3BfYnVpbGRkaXIpICYmICQoTUFLRSkgJChBTV9NQUtFRkxBR1MpIGFtLS1yZWZyZXNoICkgXAorCSAgICAgICAgJiYgeyBpZiB0ZXN0IC1mICRAOyB0aGVuIGV4aXQgMDsgZWxzZSBicmVhazsgZmk7IH07IFwKKwkgICAgICBleGl0IDE7OyBcCisJICBlc2FjOyBcCisJZG9uZTsgXAorCWVjaG8gJyBjZCAkKHRvcF9zcmNkaXIpICYmICQoQVVUT01BS0UpIC0tZm9yZWlnbiBkc2VsZWN0L01ha2VmaWxlJzsgXAorCSQoYW1fX2NkKSAkKHRvcF9zcmNkaXIpICYmIFwKKwkgICQoQVVUT01BS0UpIC0tZm9yZWlnbiBkc2VsZWN0L01ha2VmaWxlCisuUFJFQ0lPVVM6IE1ha2VmaWxlCitNYWtlZmlsZTogJChzcmNkaXIpL01ha2VmaWxlLmluICQodG9wX2J1aWxkZGlyKS9jb25maWcuc3RhdHVzCisJQGNhc2UgJyQ/JyBpbiBcCisJICAqY29uZmlnLnN0YXR1cyopIFwKKwkgICAgY2QgJCh0b3BfYnVpbGRkaXIpICYmICQoTUFLRSkgJChBTV9NQUtFRkxBR1MpIGFtLS1yZWZyZXNoOzsgXAorCSAgKikgXAorCSAgICBlY2hvICcgY2QgJCh0b3BfYnVpbGRkaXIpICYmICQoU0hFTEwpIC4vY29uZmlnLnN0YXR1cyAkKHN1YmRpcikvJEAgJChhbV9fZGVwZmlsZXNfbWF5YmUpJzsgXAorCSAgICBjZCAkKHRvcF9idWlsZGRpcikgJiYgJChTSEVMTCkgLi9jb25maWcuc3RhdHVzICQoc3ViZGlyKS8kQCAkKGFtX19kZXBmaWxlc19tYXliZSk7OyBcCisJZXNhYzsKKworJCh0b3BfYnVpbGRkaXIpL2NvbmZpZy5zdGF0dXM6ICQodG9wX3NyY2RpcikvY29uZmlndXJlICQoQ09ORklHX1NUQVRVU19ERVBFTkRFTkNJRVMpCisJY2QgJCh0b3BfYnVpbGRkaXIpICYmICQoTUFLRSkgJChBTV9NQUtFRkxBR1MpIGFtLS1yZWZyZXNoCisKKyQodG9wX3NyY2RpcikvY29uZmlndXJlOiAgJChhbV9fY29uZmlndXJlX2RlcHMpCisJY2QgJCh0b3BfYnVpbGRkaXIpICYmICQoTUFLRSkgJChBTV9NQUtFRkxBR1MpIGFtLS1yZWZyZXNoCiskKEFDTE9DQUxfTTQpOiAgJChhbV9fYWNsb2NhbF9tNF9kZXBzKQorCWNkICQodG9wX2J1aWxkZGlyKSAmJiAkKE1BS0UpICQoQU1fTUFLRUZMQUdTKSBhbS0tcmVmcmVzaAorJChhbV9fYWNsb2NhbF9tNF9kZXBzKToKK2luc3RhbGwtYmluUFJPR1JBTVM6ICQoYmluX1BST0dSQU1TKQorCUAkKE5PUk1BTF9JTlNUQUxMKQorCXRlc3QgLXogIiQoYmluZGlyKSIgfHwgJChNS0RJUl9QKSAiJChERVNURElSKSQoYmluZGlyKSIKKwlAbGlzdD0nJChiaW5fUFJPR1JBTVMpJzsgdGVzdCAtbiAiJChiaW5kaXIpIiB8fCBsaXN0PTsgXAorCWZvciBwIGluICQkbGlzdDsgZG8gZWNobyAiJCRwICQkcCI7IGRvbmUgfCBcCisJc2VkICdzLyQoRVhFRVhUKSQkLy8nIHwgXAorCXdoaWxlIHJlYWQgcCBwMTsgZG8gaWYgdGVzdCAtZiAkJHA7IFwKKwkgIHRoZW4gZWNobyAiJCRwIjsgZWNobyAiJCRwIjsgZWxzZSA6OyBmaTsgXAorCWRvbmUgfCBcCisJc2VkIC1lICdwO3MsLiovLCw7bjtoJyAtZSAnc3wuKnwufCcgXAorCSAgICAtZSAncDt4O3MsLiovLCw7cy8kKEVYRUVYVCkkJC8vOyQodHJhbnNmb3JtKTtzLyQkLyQoRVhFRVhUKS8nIHwgXAorCXNlZCAnTjtOO047cyxcbiwgLGcnIHwgXAorCSQoQVdLKSAnQkVHSU4geyBmaWxlc1siLiJdID0gIiI7IGRpcnNbIi4iXSA9IDEgfSBcCisJICB7IGQ9JCQzOyBpZiAoZGlyc1tkXSAhPSAxKSB7IHByaW50ICJkIiwgZDsgZGlyc1tkXSA9IDEgfSBcCisJICAgIGlmICgkJDIgPT0gJCQ0KSBmaWxlc1tkXSA9IGZpbGVzW2RdICIgIiAkJDE7IFwKKwkgICAgZWxzZSB7IHByaW50ICJmIiwgJCQzICIvIiAkJDQsICQkMTsgfSB9IFwKKwkgIEVORCB7IGZvciAoZCBpbiBmaWxlcykgcHJpbnQgImYiLCBkLCBmaWxlc1tkXSB9JyB8IFwKKwl3aGlsZSByZWFkIHR5cGUgZGlyIGZpbGVzOyBkbyBcCisJICAgIGlmIHRlc3QgIiQkZGlyIiA9IC47IHRoZW4gZGlyPTsgZWxzZSBkaXI9LyQkZGlyOyBmaTsgXAorCSAgICB0ZXN0IC16ICIkJGZpbGVzIiB8fCB7IFwKKwkgICAgICBlY2hvICIgJChJTlNUQUxMX1BST0dSQU1fRU5WKSAkKElOU1RBTExfUFJPR1JBTSkgJCRmaWxlcyAnJChERVNURElSKSQoYmluZGlyKSQkZGlyJyI7IFwKKwkgICAgICAkKElOU1RBTExfUFJPR1JBTV9FTlYpICQoSU5TVEFMTF9QUk9HUkFNKSAkJGZpbGVzICIkKERFU1RESVIpJChiaW5kaXIpJCRkaXIiIHx8IGV4aXQgJCQ/OyBcCisJICAgIH0gXAorCTsgZG9uZQorCit1bmluc3RhbGwtYmluUFJPR1JBTVM6CisJQCQoTk9STUFMX1VOSU5TVEFMTCkKKwlAbGlzdD0nJChiaW5fUFJPR1JBTVMpJzsgdGVzdCAtbiAiJChiaW5kaXIpIiB8fCBsaXN0PTsgXAorCWZpbGVzPWBmb3IgcCBpbiAkJGxpc3Q7IGRvIGVjaG8gIiQkcCI7IGRvbmUgfCBcCisJICBzZWQgLWUgJ2g7cyxeLiovLCw7cy8kKEVYRUVYVCkkJC8vOyQodHJhbnNmb3JtKScgXAorCSAgICAgIC1lICdzLyQkLyQoRVhFRVhUKS8nIGA7IFwKKwl0ZXN0IC1uICIkJGxpc3QiIHx8IGV4aXQgMDsgXAorCWVjaG8gIiAoIGNkICckKERFU1RESVIpJChiaW5kaXIpJyAmJiBybSAtZiIgJCRmaWxlcyAiKSI7IFwKKwljZCAiJChERVNURElSKSQoYmluZGlyKSIgJiYgcm0gLWYgJCRmaWxlcworCitjbGVhbi1iaW5QUk9HUkFNUzoKKwktdGVzdCAteiAiJChiaW5fUFJPR1JBTVMpIiB8fCBybSAtZiAkKGJpbl9QUk9HUkFNUykKK2RzZWxlY3QkKEVYRUVYVCk6ICQoZHNlbGVjdF9PQkpFQ1RTKSAkKGRzZWxlY3RfREVQRU5ERU5DSUVTKSAKKwlAcm0gLWYgZHNlbGVjdCQoRVhFRVhUKQorCSQoQU1fVl9DWFhMRCkkKENYWExJTkspICQoZHNlbGVjdF9PQkpFQ1RTKSAkKGRzZWxlY3RfTERBREQpICQoTElCUykKKworbW9zdGx5Y2xlYW4tY29tcGlsZToKKwktcm0gLWYgKi4kKE9CSkVYVCkKKworZGlzdGNsZWFuLWNvbXBpbGU6CisJLXJtIC1mICoudGFiLmMKKworQEFNREVQX1RSVUVAQGFtX19pbmNsdWRlQCBAYW1fX3F1b3RlQC4vJChERVBESVIpL2Jhc2VjbWRzLlBvQGFtX19xdW90ZUAKK0BBTURFUF9UUlVFQEBhbV9faW5jbHVkZUAgQGFtX19xdW90ZUAuLyQoREVQRElSKS9iYXNlbGlzdC5Qb0BhbV9fcXVvdGVACitAQU1ERVBfVFJVRUBAYW1fX2luY2x1ZGVAIEBhbV9fcXVvdGVALi8kKERFUERJUikvYmFzZXRvcC5Qb0BhbV9fcXVvdGVACitAQU1ERVBfVFJVRUBAYW1fX2luY2x1ZGVAIEBhbV9fcXVvdGVALi8kKERFUERJUikvYmluZGluZ3MuUG9AYW1fX3F1b3RlQAorQEFNREVQX1RSVUVAQGFtX19pbmNsdWRlQCBAYW1fX3F1b3RlQC4vJChERVBESVIpL2N1cmtleXMuUG9AYW1fX3F1b3RlQAorQEFNREVQX1RSVUVAQGFtX19pbmNsdWRlQCBAYW1fX3F1b3RlQC4vJChERVBESVIpL2hlbHBtc2dzLlBvQGFtX19xdW90ZUAKK0BBTURFUF9UUlVFQEBhbV9faW5jbHVkZUAgQGFtX19xdW90ZUAuLyQoREVQRElSKS9tYWluLlBvQGFtX19xdW90ZUAKK0BBTURFUF9UUlVFQEBhbV9faW5jbHVkZUAgQGFtX19xdW90ZUAuLyQoREVQRElSKS9tZXRoa2V5cy5Qb0BhbV9fcXVvdGVACitAQU1ERVBfVFJVRUBAYW1fX2luY2x1ZGVAIEBhbV9fcXVvdGVALi8kKERFUERJUikvbWV0aGxpc3QuUG9AYW1fX3F1b3RlQAorQEFNREVQX1RSVUVAQGFtX19pbmNsdWRlQCBAYW1fX3F1b3RlQC4vJChERVBESVIpL21ldGhvZC5Qb0BhbV9fcXVvdGVACitAQU1ERVBfVFJVRUBAYW1fX2luY2x1ZGVAIEBhbV9fcXVvdGVALi8kKERFUERJUikvbWV0aHBhcnNlLlBvQGFtX19xdW90ZUAKK0BBTURFUF9UUlVFQEBhbV9faW5jbHVkZUAgQGFtX19xdW90ZUAuLyQoREVQRElSKS9wa2djbWRzLlBvQGFtX19xdW90ZUAKK0BBTURFUF9UUlVFQEBhbV9faW5jbHVkZUAgQGFtX19xdW90ZUAuLyQoREVQRElSKS9wa2dkZXBjb24uUG9AYW1fX3F1b3RlQAorQEFNREVQX1RSVUVAQGFtX19pbmNsdWRlQCBAYW1fX3F1b3RlQC4vJChERVBESVIpL3BrZ2Rpc3BsYXkuUG9AYW1fX3F1b3RlQAorQEFNREVQX1RSVUVAQGFtX19pbmNsdWRlQCBAYW1fX3F1b3RlQC4vJChERVBESVIpL3BrZ2luZm8uUG9AYW1fX3F1b3RlQAorQEFNREVQX1RSVUVAQGFtX19pbmNsdWRlQCBAYW1fX3F1b3RlQC4vJChERVBESVIpL3BrZ2tleXMuUG9AYW1fX3F1b3RlQAorQEFNREVQX1RSVUVAQGFtX19pbmNsdWRlQCBAYW1fX3F1b3RlQC4vJChERVBESVIpL3BrZ2xpc3QuUG9AYW1fX3F1b3RlQAorQEFNREVQX1RSVUVAQGFtX19pbmNsdWRlQCBAYW1fX3F1b3RlQC4vJChERVBESVIpL3BrZ3N1Ymxpc3QuUG9AYW1fX3F1b3RlQAorQEFNREVQX1RSVUVAQGFtX19pbmNsdWRlQCBAYW1fX3F1b3RlQC4vJChERVBESVIpL3BrZ3RvcC5Qb0BhbV9fcXVvdGVACisKKy5jYy5vOgorQGFtX19mYXN0ZGVwQ1hYX1RSVUVACSQoQU1fVl9DWFgpJChDWFhDT01QSUxFKSAtTVQgJEAgLU1EIC1NUCAtTUYgJChERVBESVIpLyQqLlRwbyAtYyAtbyAkQCAkPAorQGFtX19mYXN0ZGVwQ1hYX1RSVUVACSQoQU1fVl9hdCkkKGFtX19tdikgJChERVBESVIpLyQqLlRwbyAkKERFUERJUikvJCouUG8KK0BhbV9fZmFzdGRlcENYWF9GQUxTRUAJJChBTV9WX0NYWCkgQEFNX0JBQ0tTTEFTSEAKK0BBTURFUF9UUlVFQEBhbV9fZmFzdGRlcENYWF9GQUxTRUAJc291cmNlPSckPCcgb2JqZWN0PSckQCcgbGlidG9vbD1ubyBAQU1ERVBCQUNLU0xBU0hACitAQU1ERVBfVFJVRUBAYW1fX2Zhc3RkZXBDWFhfRkFMU0VACURFUERJUj0kKERFUERJUikgJChDWFhERVBNT0RFKSAkKGRlcGNvbXApIEBBTURFUEJBQ0tTTEFTSEAKK0BhbV9fZmFzdGRlcENYWF9GQUxTRUAJJChDWFhDT01QSUxFKSAtYyAtbyAkQCAkPAorCisuY2Mub2JqOgorQGFtX19mYXN0ZGVwQ1hYX1RSVUVACSQoQU1fVl9DWFgpJChDWFhDT01QSUxFKSAtTVQgJEAgLU1EIC1NUCAtTUYgJChERVBESVIpLyQqLlRwbyAtYyAtbyAkQCBgJChDWUdQQVRIX1cpICckPCdgCitAYW1fX2Zhc3RkZXBDWFhfVFJVRUAJJChBTV9WX2F0KSQoYW1fX212KSAkKERFUERJUikvJCouVHBvICQoREVQRElSKS8kKi5QbworQGFtX19mYXN0ZGVwQ1hYX0ZBTFNFQAkkKEFNX1ZfQ1hYKSBAQU1fQkFDS1NMQVNIQAorQEFNREVQX1RSVUVAQGFtX19mYXN0ZGVwQ1hYX0ZBTFNFQAlzb3VyY2U9JyQ8JyBvYmplY3Q9JyRAJyBsaWJ0b29sPW5vIEBBTURFUEJBQ0tTTEFTSEAKK0BBTURFUF9UUlVFQEBhbV9fZmFzdGRlcENYWF9GQUxTRUAJREVQRElSPSQoREVQRElSKSAkKENYWERFUE1PREUpICQoZGVwY29tcCkgQEFNREVQQkFDS1NMQVNIQAorQGFtX19mYXN0ZGVwQ1hYX0ZBTFNFQAkkKENYWENPTVBJTEUpIC1jIC1vICRAIGAkKENZR1BBVEhfVykgJyQ8J2AKKworIyBUaGlzIGRpcmVjdG9yeSdzIHN1YmRpcmVjdG9yaWVzIGFyZSBtb3N0bHkgaW5kZXBlbmRlbnQ7IHlvdSBjYW4gY2QKKyMgaW50byB0aGVtIGFuZCBydW4gYG1ha2UnIHdpdGhvdXQgZ29pbmcgdGhyb3VnaCB0aGlzIE1ha2VmaWxlLgorIyBUbyBjaGFuZ2UgdGhlIHZhbHVlcyBvZiBgbWFrZScgdmFyaWFibGVzOiBpbnN0ZWFkIG9mIGVkaXRpbmcgTWFrZWZpbGVzLAorIyAoMSkgaWYgdGhlIHZhcmlhYmxlIGlzIHNldCBpbiBgY29uZmlnLnN0YXR1cycsIGVkaXQgYGNvbmZpZy5zdGF0dXMnCisjICAgICAod2hpY2ggd2lsbCBjYXVzZSB0aGUgTWFrZWZpbGVzIHRvIGJlIHJlZ2VuZXJhdGVkIHdoZW4geW91IHJ1biBgbWFrZScpOworIyAoMikgb3RoZXJ3aXNlLCBwYXNzIHRoZSBkZXNpcmVkIHZhbHVlcyBvbiB0aGUgYG1ha2UnIGNvbW1hbmQgbGluZS4KKyQoUkVDVVJTSVZFX1RBUkdFVFMpOgorCUBmYWlsPSBmYWlsY29tPSdleGl0IDEnOyBcCisJZm9yIGYgaW4geCAkJE1BS0VGTEFHUzsgZG8gXAorCSAgY2FzZSAkJGYgaW4gXAorCSAgICAqPSogfCAtLVsha10qKTs7IFwKKwkgICAgKmsqKSBmYWlsY29tPSdmYWlsPXllcyc7OyBcCisJICBlc2FjOyBcCisJZG9uZTsgXAorCWRvdF9zZWVuPW5vOyBcCisJdGFyZ2V0PWBlY2hvICRAIHwgc2VkIHMvLXJlY3Vyc2l2ZS8vYDsgXAorCWxpc3Q9JyQoU1VCRElSUyknOyBmb3Igc3ViZGlyIGluICQkbGlzdDsgZG8gXAorCSAgZWNobyAiTWFraW5nICQkdGFyZ2V0IGluICQkc3ViZGlyIjsgXAorCSAgaWYgdGVzdCAiJCRzdWJkaXIiID0gIi4iOyB0aGVuIFwKKwkgICAgZG90X3NlZW49eWVzOyBcCisJICAgIGxvY2FsX3RhcmdldD0iJCR0YXJnZXQtYW0iOyBcCisJICBlbHNlIFwKKwkgICAgbG9jYWxfdGFyZ2V0PSIkJHRhcmdldCI7IFwKKwkgIGZpOyBcCisJICAoJChhbV9fY2QpICQkc3ViZGlyICYmICQoTUFLRSkgJChBTV9NQUtFRkxBR1MpICQkbG9jYWxfdGFyZ2V0KSBcCisJICB8fCBldmFsICQkZmFpbGNvbTsgXAorCWRvbmU7IFwKKwlpZiB0ZXN0ICIkJGRvdF9zZWVuIiA9ICJubyI7IHRoZW4gXAorCSAgJChNQUtFKSAkKEFNX01BS0VGTEFHUykgIiQkdGFyZ2V0LWFtIiB8fCBleGl0IDE7IFwKKwlmaTsgdGVzdCAteiAiJCRmYWlsIgorCiskKFJFQ1VSU0lWRV9DTEVBTl9UQVJHRVRTKToKKwlAZmFpbD0gZmFpbGNvbT0nZXhpdCAxJzsgXAorCWZvciBmIGluIHggJCRNQUtFRkxBR1M7IGRvIFwKKwkgIGNhc2UgJCRmIGluIFwKKwkgICAgKj0qIHwgLS1bIWtdKik7OyBcCisJICAgICprKikgZmFpbGNvbT0nZmFpbD15ZXMnOzsgXAorCSAgZXNhYzsgXAorCWRvbmU7IFwKKwlkb3Rfc2Vlbj1ubzsgXAorCWNhc2UgIiRAIiBpbiBcCisJICBkaXN0Y2xlYW4tKiB8IG1haW50YWluZXItY2xlYW4tKikgbGlzdD0nJChESVNUX1NVQkRJUlMpJyA7OyBcCisJICAqKSBsaXN0PSckKFNVQkRJUlMpJyA7OyBcCisJZXNhYzsgXAorCXJldj0nJzsgZm9yIHN1YmRpciBpbiAkJGxpc3Q7IGRvIFwKKwkgIGlmIHRlc3QgIiQkc3ViZGlyIiA9ICIuIjsgdGhlbiA6OyBlbHNlIFwKKwkgICAgcmV2PSIkJHN1YmRpciAkJHJldiI7IFwKKwkgIGZpOyBcCisJZG9uZTsgXAorCXJldj0iJCRyZXYgLiI7IFwKKwl0YXJnZXQ9YGVjaG8gJEAgfCBzZWQgcy8tcmVjdXJzaXZlLy9gOyBcCisJZm9yIHN1YmRpciBpbiAkJHJldjsgZG8gXAorCSAgZWNobyAiTWFraW5nICQkdGFyZ2V0IGluICQkc3ViZGlyIjsgXAorCSAgaWYgdGVzdCAiJCRzdWJkaXIiID0gIi4iOyB0aGVuIFwKKwkgICAgbG9jYWxfdGFyZ2V0PSIkJHRhcmdldC1hbSI7IFwKKwkgIGVsc2UgXAorCSAgICBsb2NhbF90YXJnZXQ9IiQkdGFyZ2V0IjsgXAorCSAgZmk7IFwKKwkgICgkKGFtX19jZCkgJCRzdWJkaXIgJiYgJChNQUtFKSAkKEFNX01BS0VGTEFHUykgJCRsb2NhbF90YXJnZXQpIFwKKwkgIHx8IGV2YWwgJCRmYWlsY29tOyBcCisJZG9uZSAmJiB0ZXN0IC16ICIkJGZhaWwiCit0YWdzLXJlY3Vyc2l2ZToKKwlsaXN0PSckKFNVQkRJUlMpJzsgZm9yIHN1YmRpciBpbiAkJGxpc3Q7IGRvIFwKKwkgIHRlc3QgIiQkc3ViZGlyIiA9IC4gfHwgKCQoYW1fX2NkKSAkJHN1YmRpciAmJiAkKE1BS0UpICQoQU1fTUFLRUZMQUdTKSB0YWdzKTsgXAorCWRvbmUKK2N0YWdzLXJlY3Vyc2l2ZToKKwlsaXN0PSckKFNVQkRJUlMpJzsgZm9yIHN1YmRpciBpbiAkJGxpc3Q7IGRvIFwKKwkgIHRlc3QgIiQkc3ViZGlyIiA9IC4gfHwgKCQoYW1fX2NkKSAkJHN1YmRpciAmJiAkKE1BS0UpICQoQU1fTUFLRUZMQUdTKSBjdGFncyk7IFwKKwlkb25lCisKK0lEOiAkKEhFQURFUlMpICQoU09VUkNFUykgJChMSVNQKSAkKFRBR1NfRklMRVMpCisJbGlzdD0nJChTT1VSQ0VTKSAkKEhFQURFUlMpICQoTElTUCkgJChUQUdTX0ZJTEVTKSc7IFwKKwl1bmlxdWU9YGZvciBpIGluICQkbGlzdDsgZG8gXAorCSAgICBpZiB0ZXN0IC1mICIkJGkiOyB0aGVuIGVjaG8gJCRpOyBlbHNlIGVjaG8gJChzcmNkaXIpLyQkaTsgZmk7IFwKKwkgIGRvbmUgfCBcCisJICAkKEFXSykgJ3sgZmlsZXNbJCQwXSA9IDE7IG5vbmVtcHR5ID0gMTsgfSBcCisJICAgICAgRU5EIHsgaWYgKG5vbmVtcHR5KSB7IGZvciAoaSBpbiBmaWxlcykgcHJpbnQgaTsgfTsgfSdgOyBcCisJbWtpZCAtZklEICQkdW5pcXVlCit0YWdzOiBUQUdTCisKK1RBR1M6IHRhZ3MtcmVjdXJzaXZlICQoSEVBREVSUykgJChTT1VSQ0VTKSAgJChUQUdTX0RFUEVOREVOQ0lFUykgXAorCQkkKFRBR1NfRklMRVMpICQoTElTUCkKKwlzZXQgeDsgXAorCWhlcmU9YHB3ZGA7IFwKKwlpZiAoJChFVEFHUykgLS1ldGFncy1pbmNsdWRlIC0tdmVyc2lvbikgPi9kZXYvbnVsbCAyPiYxOyB0aGVuIFwKKwkgIGluY2x1ZGVfb3B0aW9uPS0tZXRhZ3MtaW5jbHVkZTsgXAorCSAgZW1wdHlfZml4PS47IFwKKwllbHNlIFwKKwkgIGluY2x1ZGVfb3B0aW9uPS0taW5jbHVkZTsgXAorCSAgZW1wdHlfZml4PTsgXAorCWZpOyBcCisJbGlzdD0nJChTVUJESVJTKSc7IGZvciBzdWJkaXIgaW4gJCRsaXN0OyBkbyBcCisJICBpZiB0ZXN0ICIkJHN1YmRpciIgPSAuOyB0aGVuIDo7IGVsc2UgXAorCSAgICB0ZXN0ICEgLWYgJCRzdWJkaXIvVEFHUyB8fCBcCisJICAgICAgc2V0ICIkJEAiICIkJGluY2x1ZGVfb3B0aW9uPSQkaGVyZS8kJHN1YmRpci9UQUdTIjsgXAorCSAgZmk7IFwKKwlkb25lOyBcCisJbGlzdD0nJChTT1VSQ0VTKSAkKEhFQURFUlMpICAkKExJU1ApICQoVEFHU19GSUxFUyknOyBcCisJdW5pcXVlPWBmb3IgaSBpbiAkJGxpc3Q7IGRvIFwKKwkgICAgaWYgdGVzdCAtZiAiJCRpIjsgdGhlbiBlY2hvICQkaTsgZWxzZSBlY2hvICQoc3JjZGlyKS8kJGk7IGZpOyBcCisJICBkb25lIHwgXAorCSAgJChBV0spICd7IGZpbGVzWyQkMF0gPSAxOyBub25lbXB0eSA9IDE7IH0gXAorCSAgICAgIEVORCB7IGlmIChub25lbXB0eSkgeyBmb3IgKGkgaW4gZmlsZXMpIHByaW50IGk7IH07IH0nYDsgXAorCXNoaWZ0OyBcCisJaWYgdGVzdCAteiAiJChFVEFHU19BUkdTKSQkKiQkdW5pcXVlIjsgdGhlbiA6OyBlbHNlIFwKKwkgIHRlc3QgLW4gIiQkdW5pcXVlIiB8fCB1bmlxdWU9JCRlbXB0eV9maXg7IFwKKwkgIGlmIHRlc3QgJCQjIC1ndCAwOyB0aGVuIFwKKwkgICAgJChFVEFHUykgJChFVEFHU0ZMQUdTKSAkKEFNX0VUQUdTRkxBR1MpICQoRVRBR1NfQVJHUykgXAorCSAgICAgICIkJEAiICQkdW5pcXVlOyBcCisJICBlbHNlIFwKKwkgICAgJChFVEFHUykgJChFVEFHU0ZMQUdTKSAkKEFNX0VUQUdTRkxBR1MpICQoRVRBR1NfQVJHUykgXAorCSAgICAgICQkdW5pcXVlOyBcCisJICBmaTsgXAorCWZpCitjdGFnczogQ1RBR1MKK0NUQUdTOiBjdGFncy1yZWN1cnNpdmUgJChIRUFERVJTKSAkKFNPVVJDRVMpICAkKFRBR1NfREVQRU5ERU5DSUVTKSBcCisJCSQoVEFHU19GSUxFUykgJChMSVNQKQorCWxpc3Q9JyQoU09VUkNFUykgJChIRUFERVJTKSAgJChMSVNQKSAkKFRBR1NfRklMRVMpJzsgXAorCXVuaXF1ZT1gZm9yIGkgaW4gJCRsaXN0OyBkbyBcCisJICAgIGlmIHRlc3QgLWYgIiQkaSI7IHRoZW4gZWNobyAkJGk7IGVsc2UgZWNobyAkKHNyY2RpcikvJCRpOyBmaTsgXAorCSAgZG9uZSB8IFwKKwkgICQoQVdLKSAneyBmaWxlc1skJDBdID0gMTsgbm9uZW1wdHkgPSAxOyB9IFwKKwkgICAgICBFTkQgeyBpZiAobm9uZW1wdHkpIHsgZm9yIChpIGluIGZpbGVzKSBwcmludCBpOyB9OyB9J2A7IFwKKwl0ZXN0IC16ICIkKENUQUdTX0FSR1MpJCR1bmlxdWUiIFwKKwkgIHx8ICQoQ1RBR1MpICQoQ1RBR1NGTEFHUykgJChBTV9DVEFHU0ZMQUdTKSAkKENUQUdTX0FSR1MpIFwKKwkgICAgICQkdW5pcXVlCisKK0dUQUdTOgorCWhlcmU9YCQoYW1fX2NkKSAkKHRvcF9idWlsZGRpcikgJiYgcHdkYCBcCisJICAmJiAkKGFtX19jZCkgJCh0b3Bfc3JjZGlyKSBcCisJICAmJiBndGFncyAtaSAkKEdUQUdTX0FSR1MpICIkJGhlcmUiCisKK2Rpc3RjbGVhbi10YWdzOgorCS1ybSAtZiBUQUdTIElEIEdUQUdTIEdSVEFHUyBHU1lNUyBHUEFUSCB0YWdzCisKK2Rpc3RkaXI6ICQoRElTVEZJTEVTKQorCUBzcmNkaXJzdHJpcD1gZWNobyAiJChzcmNkaXIpIiB8IHNlZCAncy9bXS5bXiQkXFwqXS9cXFxcJi9nJ2A7IFwKKwl0b3BzcmNkaXJzdHJpcD1gZWNobyAiJCh0b3Bfc3JjZGlyKSIgfCBzZWQgJ3MvW10uW14kJFxcKl0vXFxcXCYvZydgOyBcCisJbGlzdD0nJChESVNURklMRVMpJzsgXAorCSAgZGlzdF9maWxlcz1gZm9yIGZpbGUgaW4gJCRsaXN0OyBkbyBlY2hvICQkZmlsZTsgZG9uZSB8IFwKKwkgIHNlZCAtZSAic3xeJCRzcmNkaXJzdHJpcC98fDt0IiBcCisJICAgICAgLWUgInN8XiQkdG9wc3JjZGlyc3RyaXAvfCQodG9wX2J1aWxkZGlyKS98O3QiYDsgXAorCWNhc2UgJCRkaXN0X2ZpbGVzIGluIFwKKwkgICovKikgJChNS0RJUl9QKSBgZWNobyAiJCRkaXN0X2ZpbGVzIiB8IFwKKwkJCSAgIHNlZCAnL1wvLyFkO3N8XnwkKGRpc3RkaXIpL3w7cywvW14vXSokJCwsJyB8IFwKKwkJCSAgIHNvcnQgLXVgIDs7IFwKKwllc2FjOyBcCisJZm9yIGZpbGUgaW4gJCRkaXN0X2ZpbGVzOyBkbyBcCisJICBpZiB0ZXN0IC1mICQkZmlsZSB8fCB0ZXN0IC1kICQkZmlsZTsgdGhlbiBkPS47IGVsc2UgZD0kKHNyY2Rpcik7IGZpOyBcCisJICBpZiB0ZXN0IC1kICQkZC8kJGZpbGU7IHRoZW4gXAorCSAgICBkaXI9YGVjaG8gIi8kJGZpbGUiIHwgc2VkIC1lICdzLC9bXi9dKiQkLCwnYDsgXAorCSAgICBpZiB0ZXN0IC1kICIkKGRpc3RkaXIpLyQkZmlsZSI7IHRoZW4gXAorCSAgICAgIGZpbmQgIiQoZGlzdGRpcikvJCRmaWxlIiAtdHlwZSBkICEgLXBlcm0gLTcwMCAtZXhlYyBjaG1vZCB1K3J3eCB7fSBcOzsgXAorCSAgICBmaTsgXAorCSAgICBpZiB0ZXN0IC1kICQoc3JjZGlyKS8kJGZpbGUgJiYgdGVzdCAkJGQgIT0gJChzcmNkaXIpOyB0aGVuIFwKKwkgICAgICBjcCAtZnBSICQoc3JjZGlyKS8kJGZpbGUgIiQoZGlzdGRpcikkJGRpciIgfHwgZXhpdCAxOyBcCisJICAgICAgZmluZCAiJChkaXN0ZGlyKS8kJGZpbGUiIC10eXBlIGQgISAtcGVybSAtNzAwIC1leGVjIGNobW9kIHUrcnd4IHt9IFw7OyBcCisJICAgIGZpOyBcCisJICAgIGNwIC1mcFIgJCRkLyQkZmlsZSAiJChkaXN0ZGlyKSQkZGlyIiB8fCBleGl0IDE7IFwKKwkgIGVsc2UgXAorCSAgICB0ZXN0IC1mICIkKGRpc3RkaXIpLyQkZmlsZSIgXAorCSAgICB8fCBjcCAtcCAkJGQvJCRmaWxlICIkKGRpc3RkaXIpLyQkZmlsZSIgXAorCSAgICB8fCBleGl0IDE7IFwKKwkgIGZpOyBcCisJZG9uZQorCUBsaXN0PSckKERJU1RfU1VCRElSUyknOyBmb3Igc3ViZGlyIGluICQkbGlzdDsgZG8gXAorCSAgaWYgdGVzdCAiJCRzdWJkaXIiID0gLjsgdGhlbiA6OyBlbHNlIFwKKwkgICAgdGVzdCAtZCAiJChkaXN0ZGlyKS8kJHN1YmRpciIgXAorCSAgICB8fCAkKE1LRElSX1ApICIkKGRpc3RkaXIpLyQkc3ViZGlyIiBcCisJICAgIHx8IGV4aXQgMTsgXAorCSAgZmk7IFwKKwlkb25lCisJQGxpc3Q9JyQoRElTVF9TVUJESVJTKSc7IGZvciBzdWJkaXIgaW4gJCRsaXN0OyBkbyBcCisJICBpZiB0ZXN0ICIkJHN1YmRpciIgPSAuOyB0aGVuIDo7IGVsc2UgXAorCSAgICBkaXIxPSQkc3ViZGlyOyBkaXIyPSIkKGRpc3RkaXIpLyQkc3ViZGlyIjsgXAorCSAgICAkKGFtX19yZWxhdGl2aXplKTsgXAorCSAgICBuZXdfZGlzdGRpcj0kJHJlbGRpcjsgXAorCSAgICBkaXIxPSQkc3ViZGlyOyBkaXIyPSIkKHRvcF9kaXN0ZGlyKSI7IFwKKwkgICAgJChhbV9fcmVsYXRpdml6ZSk7IFwKKwkgICAgbmV3X3RvcF9kaXN0ZGlyPSQkcmVsZGlyOyBcCisJICAgIGVjaG8gIiAoY2QgJCRzdWJkaXIgJiYgJChNQUtFKSAkKEFNX01BS0VGTEFHUykgdG9wX2Rpc3RkaXI9IiQkbmV3X3RvcF9kaXN0ZGlyIiBkaXN0ZGlyPSIkJG5ld19kaXN0ZGlyIiBcXCI7IFwKKwkgICAgZWNobyAiICAgICBhbV9fcmVtb3ZlX2Rpc3RkaXI9OiBhbV9fc2tpcF9sZW5ndGhfY2hlY2s9OiBhbV9fc2tpcF9tb2RlX2ZpeD06IGRpc3RkaXIpIjsgXAorCSAgICAoJChhbV9fY2QpICQkc3ViZGlyICYmIFwKKwkgICAgICAkKE1BS0UpICQoQU1fTUFLRUZMQUdTKSBcCisJICAgICAgICB0b3BfZGlzdGRpcj0iJCRuZXdfdG9wX2Rpc3RkaXIiIFwKKwkgICAgICAgIGRpc3RkaXI9IiQkbmV3X2Rpc3RkaXIiIFwKKwkJYW1fX3JlbW92ZV9kaXN0ZGlyPTogXAorCQlhbV9fc2tpcF9sZW5ndGhfY2hlY2s9OiBcCisJCWFtX19za2lwX21vZGVfZml4PTogXAorCSAgICAgICAgZGlzdGRpcikgXAorCSAgICAgIHx8IGV4aXQgMTsgXAorCSAgZmk7IFwKKwlkb25lCitjaGVjay1hbTogYWxsLWFtCitjaGVjazogY2hlY2stcmVjdXJzaXZlCithbGwtYW06IE1ha2VmaWxlICQoUFJPR1JBTVMpCitpbnN0YWxsZGlyczogaW5zdGFsbGRpcnMtcmVjdXJzaXZlCitpbnN0YWxsZGlycy1hbToKKwlmb3IgZGlyIGluICIkKERFU1RESVIpJChiaW5kaXIpIjsgZG8gXAorCSAgdGVzdCAteiAiJCRkaXIiIHx8ICQoTUtESVJfUCkgIiQkZGlyIjsgXAorCWRvbmUKK2luc3RhbGw6IGluc3RhbGwtcmVjdXJzaXZlCitpbnN0YWxsLWV4ZWM6IGluc3RhbGwtZXhlYy1yZWN1cnNpdmUKK2luc3RhbGwtZGF0YTogaW5zdGFsbC1kYXRhLXJlY3Vyc2l2ZQordW5pbnN0YWxsOiB1bmluc3RhbGwtcmVjdXJzaXZlCisKK2luc3RhbGwtYW06IGFsbC1hbQorCUAkKE1BS0UpICQoQU1fTUFLRUZMQUdTKSBpbnN0YWxsLWV4ZWMtYW0gaW5zdGFsbC1kYXRhLWFtCisKK2luc3RhbGxjaGVjazogaW5zdGFsbGNoZWNrLXJlY3Vyc2l2ZQoraW5zdGFsbC1zdHJpcDoKKwkkKE1BS0UpICQoQU1fTUFLRUZMQUdTKSBJTlNUQUxMX1BST0dSQU09IiQoSU5TVEFMTF9TVFJJUF9QUk9HUkFNKSIgXAorCSAgaW5zdGFsbF9zaF9QUk9HUkFNPSIkKElOU1RBTExfU1RSSVBfUFJPR1JBTSkiIElOU1RBTExfU1RSSVBfRkxBRz0tcyBcCisJICBgdGVzdCAteiAnJChTVFJJUCknIHx8IFwKKwkgICAgZWNobyAiSU5TVEFMTF9QUk9HUkFNX0VOVj1TVFJJUFBST0c9JyQoU1RSSVApJyJgIGluc3RhbGwKK21vc3RseWNsZWFuLWdlbmVyaWM6CisKK2NsZWFuLWdlbmVyaWM6CisJLXRlc3QgLXogIiQoQ0xFQU5GSUxFUykiIHx8IHJtIC1mICQoQ0xFQU5GSUxFUykKKworZGlzdGNsZWFuLWdlbmVyaWM6CisJLXRlc3QgLXogIiQoQ09ORklHX0NMRUFOX0ZJTEVTKSIgfHwgcm0gLWYgJChDT05GSUdfQ0xFQU5fRklMRVMpCisJLXRlc3QgLiA9ICIkKHNyY2RpcikiIHx8IHRlc3QgLXogIiQoQ09ORklHX0NMRUFOX1ZQQVRIX0ZJTEVTKSIgfHwgcm0gLWYgJChDT05GSUdfQ0xFQU5fVlBBVEhfRklMRVMpCisKK21haW50YWluZXItY2xlYW4tZ2VuZXJpYzoKKwlAZWNobyAiVGhpcyBjb21tYW5kIGlzIGludGVuZGVkIGZvciBtYWludGFpbmVycyB0byB1c2UiCisJQGVjaG8gIml0IGRlbGV0ZXMgZmlsZXMgdGhhdCBtYXkgcmVxdWlyZSBzcGVjaWFsIHRvb2xzIHRvIHJlYnVpbGQuIgorY2xlYW46IGNsZWFuLXJlY3Vyc2l2ZQorCitjbGVhbi1hbTogY2xlYW4tYmluUFJPR1JBTVMgY2xlYW4tZ2VuZXJpYyBtb3N0bHljbGVhbi1hbQorCitkaXN0Y2xlYW46IGRpc3RjbGVhbi1yZWN1cnNpdmUKKwktcm0gLXJmIC4vJChERVBESVIpCisJLXJtIC1mIE1ha2VmaWxlCitkaXN0Y2xlYW4tYW06IGNsZWFuLWFtIGRpc3RjbGVhbi1jb21waWxlIGRpc3RjbGVhbi1nZW5lcmljIFwKKwlkaXN0Y2xlYW4tdGFncworCitkdmk6IGR2aS1yZWN1cnNpdmUKKworZHZpLWFtOgorCitodG1sOiBodG1sLXJlY3Vyc2l2ZQorCitodG1sLWFtOgorCitpbmZvOiBpbmZvLXJlY3Vyc2l2ZQorCitpbmZvLWFtOgorCitpbnN0YWxsLWRhdGEtYW06IGluc3RhbGwtZGF0YS1sb2NhbAorCitpbnN0YWxsLWR2aTogaW5zdGFsbC1kdmktcmVjdXJzaXZlCisKK2luc3RhbGwtZHZpLWFtOgorCitpbnN0YWxsLWV4ZWMtYW06IGluc3RhbGwtYmluUFJPR1JBTVMKKworaW5zdGFsbC1odG1sOiBpbnN0YWxsLWh0bWwtcmVjdXJzaXZlCisKK2luc3RhbGwtaHRtbC1hbToKKworaW5zdGFsbC1pbmZvOiBpbnN0YWxsLWluZm8tcmVjdXJzaXZlCisKK2luc3RhbGwtaW5mby1hbToKKworaW5zdGFsbC1tYW46CisKK2luc3RhbGwtcGRmOiBpbnN0YWxsLXBkZi1yZWN1cnNpdmUKKworaW5zdGFsbC1wZGYtYW06CisKK2luc3RhbGwtcHM6IGluc3RhbGwtcHMtcmVjdXJzaXZlCisKK2luc3RhbGwtcHMtYW06CisKK2luc3RhbGxjaGVjay1hbToKKworbWFpbnRhaW5lci1jbGVhbjogbWFpbnRhaW5lci1jbGVhbi1yZWN1cnNpdmUKKwktcm0gLXJmIC4vJChERVBESVIpCisJLXJtIC1mIE1ha2VmaWxlCittYWludGFpbmVyLWNsZWFuLWFtOiBkaXN0Y2xlYW4tYW0gbWFpbnRhaW5lci1jbGVhbi1nZW5lcmljCisKK21vc3RseWNsZWFuOiBtb3N0bHljbGVhbi1yZWN1cnNpdmUKKworbW9zdGx5Y2xlYW4tYW06IG1vc3RseWNsZWFuLWNvbXBpbGUgbW9zdGx5Y2xlYW4tZ2VuZXJpYworCitwZGY6IHBkZi1yZWN1cnNpdmUKKworcGRmLWFtOgorCitwczogcHMtcmVjdXJzaXZlCisKK3BzLWFtOgorCit1bmluc3RhbGwtYW06IHVuaW5zdGFsbC1iaW5QUk9HUkFNUworCisuTUFLRTogJChSRUNVUlNJVkVfQ0xFQU5fVEFSR0VUUykgJChSRUNVUlNJVkVfVEFSR0VUUykgY3RhZ3MtcmVjdXJzaXZlIFwKKwlpbnN0YWxsLWFtIGluc3RhbGwtc3RyaXAgdGFncy1yZWN1cnNpdmUKKworLlBIT05ZOiAkKFJFQ1VSU0lWRV9DTEVBTl9UQVJHRVRTKSAkKFJFQ1VSU0lWRV9UQVJHRVRTKSBDVEFHUyBHVEFHUyBcCisJYWxsIGFsbC1hbSBjaGVjayBjaGVjay1hbSBjbGVhbiBjbGVhbi1iaW5QUk9HUkFNUyBcCisJY2xlYW4tZ2VuZXJpYyBjdGFncyBjdGFncy1yZWN1cnNpdmUgZGlzdGNsZWFuIFwKKwlkaXN0Y2xlYW4tY29tcGlsZSBkaXN0Y2xlYW4tZ2VuZXJpYyBkaXN0Y2xlYW4tdGFncyBkaXN0ZGlyIGR2aSBcCisJZHZpLWFtIGh0bWwgaHRtbC1hbSBpbmZvIGluZm8tYW0gaW5zdGFsbCBpbnN0YWxsLWFtIFwKKwlpbnN0YWxsLWJpblBST0dSQU1TIGluc3RhbGwtZGF0YSBpbnN0YWxsLWRhdGEtYW0gXAorCWluc3RhbGwtZGF0YS1sb2NhbCBpbnN0YWxsLWR2aSBpbnN0YWxsLWR2aS1hbSBpbnN0YWxsLWV4ZWMgXAorCWluc3RhbGwtZXhlYy1hbSBpbnN0YWxsLWh0bWwgaW5zdGFsbC1odG1sLWFtIGluc3RhbGwtaW5mbyBcCisJaW5zdGFsbC1pbmZvLWFtIGluc3RhbGwtbWFuIGluc3RhbGwtcGRmIGluc3RhbGwtcGRmLWFtIFwKKwlpbnN0YWxsLXBzIGluc3RhbGwtcHMtYW0gaW5zdGFsbC1zdHJpcCBpbnN0YWxsY2hlY2sgXAorCWluc3RhbGxjaGVjay1hbSBpbnN0YWxsZGlycyBpbnN0YWxsZGlycy1hbSBtYWludGFpbmVyLWNsZWFuIFwKKwltYWludGFpbmVyLWNsZWFuLWdlbmVyaWMgbW9zdGx5Y2xlYW4gbW9zdGx5Y2xlYW4tY29tcGlsZSBcCisJbW9zdGx5Y2xlYW4tZ2VuZXJpYyBwZGYgcGRmLWFtIHBzIHBzLWFtIHRhZ3MgdGFncy1yZWN1cnNpdmUgXAorCXVuaW5zdGFsbCB1bmluc3RhbGwtYW0gdW5pbnN0YWxsLWJpblBST0dSQU1TCisKKworY3Vya2V5cy4kKE9CSkVYVCk6IGN1cmtleXMuaAorY3Vya2V5cy5oOiAkKHNyY2Rpcikva2V5b3ZlcnJpZGUgJChzcmNkaXIpL21rY3Vya2V5cy5wbAorCSQoQU1fVl9HRU4pIGN1cnNlc2ZpbGU9YGVjaG8gJyNpbmNsdWRlICJkc2VsZWN0LWN1cnNlcy5oIicgfCBcCisJCSQoQ1BQKSAtSSQodG9wX2J1aWxkZGlyKSAtSSAkKHNyY2RpcikgLSB8IFwKKwkJZ3JlcCAnY3Vyc2VzLmgnIHwgaGVhZCAtbiAxIHwgXAorCQlzZWQgLWUgJ3MvXlteIl0qIi8vOyBzLyIuKiQkLy8nYDsgXAorCWlmIFsgIiQkY3Vyc2VzZmlsZSIgPSAiIiBdOyB0aGVuIFwKKwkJZWNobyAiY2FuJ3QgZmluZCBjdXJzZXMgZmlsZSI7IGV4aXQgMTsgXAorCWZpOyBcCisJcGVybCAkKHNyY2RpcikvbWtjdXJrZXlzLnBsICQ8ICQkY3Vyc2VzZmlsZSA+JEAKKworaW5zdGFsbC1kYXRhLWxvY2FsOgorCSQobWtkaXJfcCkgJChERVNURElSKSQocGtnY29uZmRpcikvZHNlbGVjdC5jZmcuZAorCisjIFRlbGwgdmVyc2lvbnMgWzMuNTksMy42Mykgb2YgR05VIG1ha2UgdG8gbm90IGV4cG9ydCBhbGwgdmFyaWFibGVzLgorIyBPdGhlcndpc2UgYSBzeXN0ZW0gbGltaXQgKGZvciBTeXNWIGF0IGxlYXN0KSBtYXkgYmUgZXhjZWVkZWQuCisuTk9FWFBPUlQ6CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvYmFzZWNtZHMuY2MgYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvYmFzZWNtZHMuY2MKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzgwNDQ3NQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9iYXNlY21kcy5jYwpAQCAtMCwwICsxLDMxNiBAQAorLyoKKyAqIGRzZWxlY3QgLSBEZWJpYW4gcGFja2FnZSBtYWludGVuYW5jZSB1c2VyIGludGVyZmFjZQorICogYmFzZWNtZHMuY2MgLSBiYXNlIGxpc3Qga2V5Ym9hcmQgY29tbWFuZHMgZGlzcGxheQorICoKKyAqIENvcHlyaWdodCDCqSAxOTk0LDE5OTUgSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuZ3JlZW5lbmQub3JnLnVrPgorICogQ29weXJpZ2h0IMKpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaW5jbHVkZSA8Y29uZmlnLmg+CisjaW5jbHVkZSA8Y29tcGF0Lmg+CisKKyNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDxzdGRpby5oPgorCisjaW5jbHVkZSA8ZHBrZy9pMThuLmg+CisjaW5jbHVkZSA8ZHBrZy9kcGtnLmg+CisjaW5jbHVkZSA8ZHBrZy9kcGtnLWRiLmg+CisKKyNpbmNsdWRlICJkc2VsZWN0LmgiCisjaW5jbHVkZSAiaGVscG1zZ3MuaCIKKwordm9pZCBiYXNlbGlzdDo6a2Rfc2Nyb2xsb24oKSB7CisgIHRvcG9mc2NyZWVuICs9IGxpc3RfaGVpZ2h0OworICBpZiAodG9wb2ZzY3JlZW4gPiBuaXRlbXMgLSBsaXN0X2hlaWdodCkgdG9wb2ZzY3JlZW49IG5pdGVtcyAtIGxpc3RfaGVpZ2h0OworICBpZiAodG9wb2ZzY3JlZW4gPCAwKSB0b3BvZnNjcmVlbj0gMDsKKyAgaWYgKGN1cnNvcmxpbmUgPCB0b3BvZnNjcmVlbikKKyAgICBzZXRjdXJzb3IodG9wb2ZzY3JlZW4pOworICByZWZyZXNobGlzdCgpOworfQorCit2b2lkIGJhc2VsaXN0OjprZF9zY3JvbGxvbjEoKSB7CisgIGlmICh0b3BvZnNjcmVlbiA+PSBuaXRlbXMgLSBsaXN0X2hlaWdodCkgcmV0dXJuOworICB0b3BvZnNjcmVlbisrOworICBpZiAoY3Vyc29ybGluZSA8IHRvcG9mc2NyZWVuKQorICAgIHNldGN1cnNvcih0b3BvZnNjcmVlbik7CisgIHJlZnJlc2hsaXN0KCk7Cit9CisKK3ZvaWQgYmFzZWxpc3Q6OmtkX3Njcm9sbGJhY2soKSB7CisgIHRvcG9mc2NyZWVuIC09IGxpc3RfaGVpZ2h0OworICBpZiAodG9wb2ZzY3JlZW4gPCAwKSB0b3BvZnNjcmVlbj0gMDsKKyAgaWYgKGN1cnNvcmxpbmUgPj0gdG9wb2ZzY3JlZW4gKyBsaXN0X2hlaWdodCkKKyAgICBzZXRjdXJzb3IodG9wb2ZzY3JlZW4gKyBsaXN0X2hlaWdodCAtIDEpOworICByZWZyZXNobGlzdCgpOworfQorCit2b2lkIGJhc2VsaXN0OjprZF9zY3JvbGxiYWNrMSgpIHsKKyAgaWYgKHRvcG9mc2NyZWVuIDw9IDApIHJldHVybjsKKyAgdG9wb2ZzY3JlZW4tLTsKKyAgaWYgKGN1cnNvcmxpbmUgPj0gdG9wb2ZzY3JlZW4gKyBsaXN0X2hlaWdodCkKKyAgICBzZXRjdXJzb3IodG9wb2ZzY3JlZW4gKyBsaXN0X2hlaWdodCAtIDEpOworICByZWZyZXNobGlzdCgpOworfQorCit2b2lkIGJhc2VsaXN0OjprZF90b3AoKSB7CisgIHRvcG9mc2NyZWVuPSAwOyBzZXRjdXJzb3IoMCk7Cit9CisKK3ZvaWQgYmFzZWxpc3Q6OmtkX2JvdHRvbSgpIHsKKyAgdG9wb2ZzY3JlZW49IG5pdGVtcyAtIGxpc3RfaGVpZ2h0OworICBpZiAodG9wb2ZzY3JlZW4gPCAwKSB0b3BvZnNjcmVlbj0gMDsKKyAgc2V0Y3Vyc29yKG1pbih0b3BvZnNjcmVlbiArIGxpc3RfaGVpZ2h0IC0gMSwgbml0ZW1zIC0gMSkpOworfQorCit2b2lkIGJhc2VsaXN0OjprZF9yZWRyYXcoKSB7CisvLyNkZWZpbmUgUkZTSCh4KSB3ZXJhc2UoeCk7IHJlZHJhd3dpbih4KQorLy8gIFJGU0gobGlzdHBhZCk7CisvLyAgUkZTSChpbmZvcGFkKTsKKy8vICBSRlNIKGNvbGhlYWRzcGFkKTsKKy8vICBSRlNIKHRoaXNzdGF0ZXBhZCk7CisvLyAgUkZTSCh0aXRsZXdpbik7CisvLyAgUkZTSCh3aGF0aW5mb3dpbik7IC8qIEZJWE1FOiB3aHkgZG9lcyBuY3Vyc2VzIG5lZWQgdGhpcz8gKi8KKyAgY2xlYXJvayhjdXJzY3IsVFJVRSk7CisgIHJlZHJhd2FsbCgpOworICBkZWJ1ZyhkYmdfZ2VuZXJhbCwgImJhc2VsaXN0WyVwXTo6a2RfcmVkcmF3KCkgZG9uZSIsIHRoaXMpOworfQorCit2b2lkIGJhc2VsaXN0OjprZF9zZWFyY2hhZ2FpbigpIHsKKyAgaWYgKCFzZWFyY2hzdHJpbmdbMF0pIHsgYmVlcCgpOyByZXR1cm47IH0KKyAgZG9zZWFyY2goKTsKK30KKworYm9vbAorYmFzZWxpc3Q6OmNoZWNrc2VhcmNoKGNoYXIgKnN0cikKK3sKKyAgcmV0dXJuIHRydWU7Cit9CisKK2Jvb2wKK2Jhc2VsaXN0OjptYXRjaHNlYXJjaChpbnQgaW5kZXgpCit7CisgIGludCBsZW5kaWZmLCBzZWFyY2hsZW4sIGk7CisgIGNvbnN0IGNoYXIgKm5hbWU7CisKKyAgbmFtZSA9IGl0ZW1uYW1lKGluZGV4KTsKKyAgaWYgKCFuYW1lKQorICAgIHJldHVybiBmYWxzZTsJLyogU2tpcCB0aGluZ3Mgd2l0aG91dCBhIG5hbWUgKHNlcGVyYXRvcnMpLiAqLworCisgIHNlYXJjaGxlbj1zdHJsZW4oc2VhcmNoc3RyaW5nKTsKKyAgbGVuZGlmZiA9IHN0cmxlbihuYW1lKSAtIHNlYXJjaGxlbjsKKyAgZm9yIChpPTA7IGk8PWxlbmRpZmY7IGkrKykKKyAgICBpZiAoIXN0cm5jYXNlY21wKG5hbWUgKyBpLCBzZWFyY2hzdHJpbmcsIHNlYXJjaGxlbikpCisgICAgICByZXR1cm4gdHJ1ZTsKKworICByZXR1cm4gZmFsc2U7Cit9CisKK3ZvaWQgYmFzZWxpc3Q6OmtkX3NlYXJjaCgpIHsKKyAgY2hhciBuZXdzZWFyY2hzdHJpbmdbMTI4XTsKKyAgc3RyY3B5KG5ld3NlYXJjaHN0cmluZyxzZWFyY2hzdHJpbmcpOworICB3ZXJhc2UocXVlcnl3aW4pOworICBtdndhZGRzdHIocXVlcnl3aW4sMCwwLCBfKCJTZWFyY2ggZm9yID8gIikpOworICBlY2hvKCk7IC8qIEZJWE1FOiBuY3Vyc2VzIGRvY3VtZW50YXRpb24gb3IgaW1wbGVtZW50YXRpb24uICovCisgIGlmICh3Z2V0bnN0cihxdWVyeXdpbixuZXdzZWFyY2hzdHJpbmcsc2l6ZW9mKG5ld3NlYXJjaHN0cmluZyktMSkgPT0gRVJSKQorICAgIHNlYXJjaHN0cmluZ1swXT0gMDsKKyAgcmFpc2UoU0lHV0lOQ0gpOyAvKiBGSVhNRTogbmN1cnNlcyBhbmQgeHRlcm0gYXJyb3cga2V5cy4gKi8KKyAgbm9lY2hvKCk7IC8qIEZJWE1FOiBuY3Vyc2VzLiAqLworICBpZiAod2hhdGluZm9faGVpZ2h0KSB7IHRvdWNod2luKHdoYXRpbmZvd2luKTsgcmVmcmVzaGluZm8oKTsgfQorICBlbHNlIGlmIChpbmZvX2hlaWdodCkgeyB0b3VjaHdpbihpbmZvcGFkKTsgcmVmcmVzaGluZm8oKTsgfQorICBlbHNlIGlmICh0aGlzc3RhdGVfaGVpZ2h0KSByZWRyYXd0aGlzc3RhdGUoKTsKKyAgZWxzZSB7IHRvdWNod2luKGxpc3RwYWQpOyByZWZyZXNobGlzdCgpOyB9CisgIGlmIChuZXdzZWFyY2hzdHJpbmdbMF0pIHsKKyAgICBpZiAoIWNoZWNrc2VhcmNoKG5ld3NlYXJjaHN0cmluZykpIHsKKyAgICAgIGJlZXAoKTsKKyAgICAgIHJldHVybjsKKyAgICB9CisgICAgc3RyY3B5KHNlYXJjaHN0cmluZyxuZXdzZWFyY2hzdHJpbmcpOworICAgIGRvc2VhcmNoKCk7CisgIH0gZWxzZQorICAgIGtkX3NlYXJjaGFnYWluKCk7Cit9CisKK3ZvaWQgYmFzZWxpc3Q6OmRpc3BsYXllcnJvcihjb25zdCBjaGFyKiBzdHIpIHsKKyAgY29uc3QgY2hhciogcHIgPSBfKCJFcnJvcjogIik7CisgIGludCBwcmxlbj1zdHJsZW4ocHIpOworCisgIGJlZXAoKTsKKyAgd2VyYXNlKHF1ZXJ5d2luKTsKKyAgbXZ3YWRkc3RyKHF1ZXJ5d2luLDAsMCxwcik7CisgIG12d2FkZHN0cihxdWVyeXdpbiwwLHBybGVuLHN0cik7CisgIHdnZXRjaChxdWVyeXdpbik7CisgIGlmICh3aGF0aW5mb19oZWlnaHQpIHsgdG91Y2h3aW4od2hhdGluZm93aW4pOyByZWZyZXNoaW5mbygpOyB9CisgIGVsc2UgaWYgKGluZm9faGVpZ2h0KSB7IHRvdWNod2luKGluZm9wYWQpOyByZWZyZXNoaW5mbygpOyB9CisgIGVsc2UgaWYgKHRoaXNzdGF0ZV9oZWlnaHQpIHJlZHJhd3RoaXNzdGF0ZSgpOworfQorCisKK3ZvaWQgYmFzZWxpc3Q6OmRpc3BsYXloZWxwKGNvbnN0IHN0cnVjdCBoZWxwbWVudWVudHJ5ICpoZWxwbWVudSwgaW50IGtleSkgeworICBpbnQgbWF4eCwgbWF4eSwgaSwgbmV4dGtleTsKKworICBnZXRtYXh5eChzdGRzY3IsbWF4eSxtYXh4KTsKKyAgd2JrZ2RzZXQoc3Rkc2NyLCAnICcgfCBoZWxwc2NyZWVuX2F0dHIpOworICBjbGVhcm9rKHN0ZHNjcixUUlVFKTsKKyAgZm9yICg7OykgeworICAgIHdlcmFzZShzdGRzY3IpOworICAgIGNvbnN0IHN0cnVjdCBoZWxwbWVudWVudHJ5ICpobWUgPSBoZWxwbWVudTsKKyAgICB3aGlsZSAoaG1lLT5rZXkgJiYgaG1lLT5rZXkgIT0ga2V5KQorICAgICAgaG1lKys7CisgICAgaWYgKGhtZS0+a2V5KSB7CisgICAgICBpbnQgeCwgeSBEUEtHX0FUVFJfVU5VU0VEOworCisgICAgICBhdHRyc2V0KGhlbHBzY3JlZW5fYXR0cik7CisgICAgICBtdmFkZHN0cigxLDAsIGdldHRleHQoaG1lLT5tc2ctPnRleHQpKTsKKyAgICAgIGF0dHJzZXQodGl0bGVfYXR0cik7CisgICAgICBtdmFkZHN0cigwLDAsIF8oIkhlbHA6ICIpKTsKKyAgICAgIGFkZHN0cihnZXR0ZXh0KGhtZS0+bXNnLT50aXRsZSkpOworICAgICAgZ2V0eXgoc3Rkc2NyLHkseCk7CisgICAgICB3aGlsZSAoKyt4PG1heHgpIGFkZGNoKCcgJyk7CisgICAgICBhdHRyc2V0KHRoaXNzdGF0ZV9hdHRyKTsKKyAgICAgIG12YWRkc3RyKG1heHktMSwwLAorXygiUHJlc3MgPyBmb3IgaGVscCBtZW51LCAuIGZvciBuZXh0IHRvcGljLCA8c3BhY2U+IHRvIGV4aXQgaGVscC4iKSk7CisgICAgICBnZXR5eChzdGRzY3IseSx4KTsKKyAgICAgIHdoaWxlICgrK3g8bWF4eCkgYWRkY2goJyAnKTsKKyAgICAgIG1vdmUobWF4eSxtYXh4KTsKKyAgICAgIGF0dHJzZXQoQV9OT1JNQUwpOworICAgICAgbmV4dGtleT0gaG1lWzFdLmtleTsKKyAgICB9IGVsc2UgeworICAgICAgbXZhZGRzdHIoMSwxLCBfKCJIZWxwIGluZm9ybWF0aW9uIGlzIGF2YWlsYWJsZSB1bmRlciB0aGUgZm9sbG93aW5nIHRvcGljczoiKSk7CisgICAgICBmb3IgKGk9MCwgaG1lPWhlbHBtZW51OyBobWUtPmtleTsgaG1lKyssaSsrKSB7CisgICAgICAgIGF0dHJzZXQoQV9CT0xEKTsKKyAgICAgICAgbXZhZGRjaChpKzMsMywgaG1lLT5rZXkpOworICAgICAgICBhdHRyc2V0KEFfTk9STUFMKTsKKyAgICAgICAgbXZhZGRzdHIoaSszLDYsIGdldHRleHQoaG1lLT5tc2ctPnRpdGxlKSk7CisgICAgICB9CisgICAgICBtdmFkZHN0cihpKzQsMSwKKyAgICAgICAgICAgICAgIF8oIlByZXNzIGEga2V5IGZyb20gdGhlIGxpc3QgYWJvdmUsIDxzcGFjZT4gb3IgYHEnIHRvIGV4aXQgaGVscCxcbiIKKyAgICAgICAgICAgICAgICIgIG9yIGAuJyAoZnVsbCBzdG9wKSB0byByZWFkIGVhY2ggaGVscCBwYWdlIGluIHR1cm4uICIpKTsKKyAgICAgIG5leHRrZXk9IGhlbHBtZW51WzBdLmtleTsKKyAgICB9CisgICAgcmVmcmVzaCgpOworICAgIGtleT0gZ2V0Y2goKTsKKyAgICBpZiAoa2V5ID09IEVPRikgb2hzaGl0ZShfKCJlcnJvciByZWFkaW5nIGtleWJvYXJkIGluIGhlbHAiKSk7CisgICAgaWYgKGtleSA9PSAnICcgfHwga2V5ID09ICdxJykgeworICAgICAgYnJlYWs7CisgICAgfSBlbHNlIGlmIChrZXkgPT0gJz8nIHx8IGtleSA9PSAnaCcpIHsKKyAgICAgIGtleT0gMDsKKyAgICB9IGVsc2UgaWYgKGtleSA9PSAnLicpIHsKKyAgICAgIGtleT0gbmV4dGtleTsKKyAgICB9CisgIH0KKyAgd2VyYXNlKHN0ZHNjcik7CisgIGNsZWFyb2soc3Rkc2NyLFRSVUUpOworICB3bm91dHJlZnJlc2goc3Rkc2NyKTsKKworICByZWRyYXd0aXRsZSgpOworICByZWZyZXNoY29saGVhZHMoKTsKKyAgcmVmcmVzaGxpc3QoKTsKKyAgcmVkcmF3dGhpc3N0YXRlKCk7CisgIHJlZnJlc2hpbmZvKCk7CisgIHdub3V0cmVmcmVzaCh3aGF0aW5mb3dpbik7Cit9CisKK3ZvaWQgYmFzZWxpc3Q6OmtkX2hlbHAoKSB7CisgIGRpc3BsYXloZWxwKGhlbHBtZW51bGlzdCgpLDApOworfQorCit2b2lkIGJhc2VsaXN0OjpzZXRjdXJzb3IoaW50IGluZGV4KSB7CisgIGlmIChsaXN0cGFkICYmIGN1cnNvcmxpbmUgIT0gLTEpIHsKKyAgICByZWRyYXdpdGVtc3JhbmdlKGN1cnNvcmxpbmUsY3Vyc29ybGluZSsxKTsKKyAgICByZWRyYXcxaXRlbXNlbChjdXJzb3JsaW5lLDApOworICB9CisgIGlmIChjdXJzb3JsaW5lICE9IGluZGV4KSBpbmZvdG9wb2ZzY3JlZW49IDA7CisgIGN1cnNvcmxpbmU9IGluZGV4OworICBpZiAobGlzdHBhZCkgeworICAgIHJlZHJhd2l0ZW1zcmFuZ2UoY3Vyc29ybGluZSxjdXJzb3JsaW5lKzEpOworICAgIHJlZHJhdzFpdGVtc2VsKGN1cnNvcmxpbmUsMSk7CisgICAgcmVmcmVzaGxpc3QoKTsKKyAgICByZWRyYXd0aGlzc3RhdGUoKTsKKyAgfQorICByZWRyYXdpbmZvKCk7Cit9CisKK3ZvaWQgYmFzZWxpc3Q6OmtkX2Rvd24oKSB7CisgIGludCBuY3Vyc29yPSBjdXJzb3JsaW5lOworICAvLyBzY3JvbGwgYnkgb25lIGxpbmUgdW5sZXNzIHRoZSBib3R0b20gaXMgYWxyZWFkeSB2aXNpYmxlCisgIC8vIG9yIHdlJ3JlIGluIHRoZSB0b3AgaGFsZiBvZiB0aGUgc2NyZWVuIC4uLgorICBpZiAodG9wb2ZzY3JlZW4gPCBuaXRlbXMgLSBsaXN0X2hlaWdodCAmJgorICAgICAgbmN1cnNvciA+PSB0b3BvZnNjcmVlbiArIGxpc3RfaGVpZ2h0IC0gMykgdG9wb2ZzY3JlZW4rKzsKKyAgLy8gbW92ZSBjdXJzb3IgaWYgdGhlcmUgYXJlIGFueSBtb3JlIC4uLgorICBpZiAoY3Vyc29ybGluZSsxIDwgbml0ZW1zKSBuY3Vyc29yKys7CisgIHNldGN1cnNvcihuY3Vyc29yKTsKK30KKwordm9pZCBiYXNlbGlzdDo6a2RfdXAoKSB7CisgIGludCBuY3Vyc29yPSBjdXJzb3JsaW5lOworICAvLyBzY3JvbGwgYnkgb25lIGxpbmUgaWYgdGhlcmUgYXJlIGFueSBsaW5lcyBub3Qgc2hvd24geWV0CisgIC8vIGFuZCB3ZSdyZSBub3QgaW4gdGhlIGJvdHRvbSBoYWxmIHRoZSBzY3JlZW4gLi4uCisgIGlmICh0b3BvZnNjcmVlbiA+IDAgJiYKKyAgICAgIG5jdXJzb3IgPD0gdG9wb2ZzY3JlZW4gKyAyKSB0b3BvZnNjcmVlbi0tOworICAvLyBtb3ZlIGN1cnNvciBpZiB0aGVyZSBhcmUgYW55IHRvIG1vdmUgaXQgdG8gLi4uCisgIGlmIChjdXJzb3JsaW5lID4gMCkgbmN1cnNvci0tOworICBzZXRjdXJzb3IobmN1cnNvcik7Cit9CisKK3ZvaWQgYmFzZWxpc3Q6OmtkX2lzY3JvbGxvbigpIHsKKyAgaW5mb3RvcG9mc2NyZWVuICs9IGluZm9faGVpZ2h0OworICBpZiAoaW5mb3RvcG9mc2NyZWVuID4gaW5mb2xpbmVzIC0gaW5mb19oZWlnaHQpCisgICAgaW5mb3RvcG9mc2NyZWVuPSBpbmZvbGluZXMgLSBpbmZvX2hlaWdodDsKKyAgaWYgKGluZm90b3BvZnNjcmVlbiA8IDApIGluZm90b3BvZnNjcmVlbj0gMDsKKyAgcmVmcmVzaGluZm8oKTsKK30KKwordm9pZCBiYXNlbGlzdDo6a2RfaXNjcm9sbGJhY2soKSB7CisgIGluZm90b3BvZnNjcmVlbiAtPSBpbmZvX2hlaWdodDsKKyAgaWYgKGluZm90b3BvZnNjcmVlbiA8IDApIGluZm90b3BvZnNjcmVlbj0gMDsKKyAgcmVmcmVzaGluZm8oKTsKK30KKwordm9pZCBiYXNlbGlzdDo6a2RfaXNjcm9sbG9uMSgpIHsKKyAgaWYgKGluZm90b3BvZnNjcmVlbiA+PSBpbmZvbGluZXMgLSBpbmZvX2hlaWdodCkgcmV0dXJuOworICBpbmZvdG9wb2ZzY3JlZW4rKzsgcmVmcmVzaGluZm8oKTsKK30KKwordm9pZCBiYXNlbGlzdDo6a2RfaXNjcm9sbGJhY2sxKCkgeworICBpZiAoaW5mb3RvcG9mc2NyZWVuIDw9IDApIHJldHVybjsKKyAgaW5mb3RvcG9mc2NyZWVuLS07IHJlZnJlc2hpbmZvKCk7Cit9CisKK3ZvaWQgYmFzZWxpc3Q6OmtkX3Bhbm9uKCkgeworICBsZWZ0b2ZzY3JlZW4gKz0geG1heC8zOworICBpZiAobGVmdG9mc2NyZWVuID4gdG90YWxfd2lkdGggLSB4bWF4KSBsZWZ0b2ZzY3JlZW49IHRvdGFsX3dpZHRoIC0geG1heDsKKyAgaWYgKGxlZnRvZnNjcmVlbiA8IDApIGxlZnRvZnNjcmVlbj0gMDsKKyAgcmVmcmVzaGNvbGhlYWRzKCk7IHJlZnJlc2hsaXN0KCk7IHJlZHJhd3RoaXNzdGF0ZSgpOyByZWZyZXNoaW5mbygpOworfQorCit2b2lkIGJhc2VsaXN0OjprZF9wYW5iYWNrKCkgeworICBsZWZ0b2ZzY3JlZW4gLT0geG1heC8zOworICBpZiAobGVmdG9mc2NyZWVuIDwgMCkgbGVmdG9mc2NyZWVuPSAwOworICByZWZyZXNoY29saGVhZHMoKTsgcmVmcmVzaGxpc3QoKTsgcmVkcmF3dGhpc3N0YXRlKCk7IHJlZnJlc2hpbmZvKCk7Cit9CisKK3ZvaWQgYmFzZWxpc3Q6OmtkX3Bhbm9uMSgpIHsKKyAgbGVmdG9mc2NyZWVuKys7CisgIGlmIChsZWZ0b2ZzY3JlZW4gPiB0b3RhbF93aWR0aCAtIHhtYXgpIGxlZnRvZnNjcmVlbj0gdG90YWxfd2lkdGggLSB4bWF4OworICBpZiAobGVmdG9mc2NyZWVuIDwgMCkgbGVmdG9mc2NyZWVuPSAwOworICByZWZyZXNoY29saGVhZHMoKTsgcmVmcmVzaGxpc3QoKTsgcmVkcmF3dGhpc3N0YXRlKCk7IHJlZnJlc2hpbmZvKCk7Cit9CisKK3ZvaWQgYmFzZWxpc3Q6OmtkX3BhbmJhY2sxKCkgeworICBsZWZ0b2ZzY3JlZW4tLTsKKyAgaWYgKGxlZnRvZnNjcmVlbiA8IDApIGxlZnRvZnNjcmVlbj0gMDsKKyAgcmVmcmVzaGNvbGhlYWRzKCk7IHJlZnJlc2hsaXN0KCk7IHJlZHJhd3RoaXNzdGF0ZSgpOyByZWZyZXNoaW5mbygpOworfQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L2Jhc2VsaXN0LmNjIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L2Jhc2VsaXN0LmNjCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmNiODc2ZDcKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvYmFzZWxpc3QuY2MKQEAgLTAsMCArMSwzNzcgQEAKKy8qCisgKiBkc2VsZWN0IC0gRGViaWFuIHBhY2thZ2UgbWFpbnRlbmFuY2UgdXNlciBpbnRlcmZhY2UKKyAqIGJhc2VsaXN0LmNjIC0gbGlzdCBvZiBzb21ldGhpbmdzCisgKgorICogQ29weXJpZ2h0IMKpIDE5OTQsMTk5NSBJYW4gSmFja3NvbiA8aWFuQGNoaWFyay5ncmVlbmVuZC5vcmcudWs+CisgKiBDb3B5cmlnaHQgwqkgMjAwMSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaW5jbHVkZSA8Y29uZmlnLmg+CisjaW5jbHVkZSA8Y29tcGF0Lmg+CisKKyNpbmNsdWRlIDxzeXMvaW9jdGwuaD4KKyNpbmNsdWRlIDxzeXMvdGVybWlvcy5oPgorCisjaW5jbHVkZSA8YXNzZXJ0Lmg+CisjaW5jbHVkZSA8Y3R5cGUuaD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDx1bmlzdGQuaD4KKyNpbmNsdWRlIDxzdGRpby5oPgorCisjaW5jbHVkZSA8ZHBrZy9pMThuLmg+CisjaW5jbHVkZSA8ZHBrZy9kcGtnLmg+CisjaW5jbHVkZSA8ZHBrZy9kcGtnLWRiLmg+CisKKyNpbmNsdWRlICJkc2VsZWN0LmgiCisjaW5jbHVkZSAiYmluZGluZ3MuaCIKKwordm9pZCBteXdlcmFzZShXSU5ET1cgKndpbikgeworICBpbnQgbXksbXgseSx4OworICBnZXRtYXh5eCh3aW4sbXksbXgpOworICBmb3IgKHk9MDsgeTxteTsgeSsrKSB7CisgICAgd21vdmUod2luLHksMCk7IGZvciAoeD0wOyB4PG14OyB4KyspIHdhZGRjaCh3aW4sJyAnKTsKKyAgfQorICB3bW92ZSh3aW4sMCwwKTsKK30KKworYmFzZWxpc3QgKmJhc2VsaXN0OjpzaWduYWxsaXN0PSAwOwordm9pZCBiYXNlbGlzdDo6c2lnd2luY2hoYW5kbGVyKGludCkgeworICBzdHJ1Y3Qgd2luc2l6ZSBzaXplOworICBkZWJ1ZyhkYmdfZ2VuZXJhbCwgImJhc2VsaXN0OjpzaWd3aW5jaGhhbmRsZXIoKSwgc2lnbmFsbGlzdD0lcCIsIHNpZ25hbGxpc3QpOworICBiYXNlbGlzdCAqcD0gc2lnbmFsbGlzdDsKKyAgcC0+ZW5kZGlzcGxheSgpOworICBlbmR3aW4oKTsgaW5pdHNjcigpOworICBpZiAoaW9jdGwoZmlsZW5vKHN0ZG91dCksIFRJT0NHV0lOU1osICZzaXplKSAhPSAwKSBvaHNoaXRlKF8oImlvY3RsKFRJT0NHV0lOU1opIGZhaWxlZCIpKTsKKyAgcmVzaXpldGVybShzaXplLndzX3Jvdywgc2l6ZS53c19jb2wpOyB3cmVmcmVzaChjdXJzY3IpOworICBwLT5zdGFydGRpc3BsYXkoKTsKKyAgaWYgKGRvdXBkYXRlKCkgPT0gRVJSKSBvaHNoaXRlKF8oImRvdXBkYXRlIGluIFNJR1dJTkNIIGhhbmRsZXIgZmFpbGVkIikpOworfQorCitzdGF0aWMgdm9pZCBjdV9zaWd3aW5jaChpbnQsIHZvaWQgKiphcmd2KSB7CisgIHN0cnVjdCBzaWdhY3Rpb24gKm9zaWdhY3RwPSAoc3RydWN0IHNpZ2FjdGlvbiopYXJndlswXTsKKyAgc2lnc2V0X3QgKm9ibG9ja2VkcD0gKHNpZ3NldF90Kilhcmd2WzFdOworCisgIGlmIChzaWdhY3Rpb24oU0lHV0lOQ0gsb3NpZ2FjdHAsMCkpIG9oc2hpdGUoXygiZmFpbGVkIHRvIHJlc3RvcmUgb2xkIFNJR1dJTkNIIHNpZ2FjdCIpKTsKKyAgZGVsZXRlIG9zaWdhY3RwOworICBpZiAoc2lncHJvY21hc2soU0lHX1NFVE1BU0ssb2Jsb2NrZWRwLDApKSBvaHNoaXRlKF8oImZhaWxlZCB0byByZXN0b3JlIG9sZCBzaWduYWwgbWFzayIpKTsKKyAgZGVsZXRlIG9ibG9ja2VkcDsKK30KKwordm9pZCBiYXNlbGlzdDo6c2V0dXBzaWd3aW5jaCgpIHsKKyAgc2lnZW1wdHlzZXQoJnNpZ3dpbmNoc2V0KTsKKyAgc2lnYWRkc2V0KCZzaWd3aW5jaHNldCxTSUdXSU5DSCk7CisKKyAgb3NpZ2FjdHA9IG5ldyhzdHJ1Y3Qgc2lnYWN0aW9uKTsKKyAgb2Jsb2NrZWRwPSBuZXcoc2lnc2V0X3QpOworICBpZiAoc2lncHJvY21hc2soMCwwLG9ibG9ja2VkcCkpIG9oc2hpdGUoXygiZmFpbGVkIHRvIGdldCBvbGQgc2lnbmFsIG1hc2siKSk7CisgIGlmIChzaWdhY3Rpb24oU0lHV0lOQ0gsMCxvc2lnYWN0cCkpIG9oc2hpdGUoXygiZmFpbGVkIHRvIGdldCBvbGQgU0lHV0lOQ0ggc2lnYWN0IikpOworCisgIHB1c2hfY2xlYW51cChjdV9zaWd3aW5jaCx+MCwgMCwwLCAyLCh2b2lkKilvc2lnYWN0cCwodm9pZCopb2Jsb2NrZWRwKTsKKworICBpZiAoc2lncHJvY21hc2soU0lHX0JMT0NLLCZzaWd3aW5jaHNldCwwKSkgb2hzaGl0ZShfKCJmYWlsZWQgdG8gYmxvY2sgU0lHV0lOQ0giKSk7CisgIG1lbXNldCgmbnNpZ2FjdCwwLHNpemVvZihuc2lnYWN0KSk7CisgIG5zaWdhY3Quc2FfaGFuZGxlcj0gc2lnd2luY2hoYW5kbGVyOworICBzaWdlbXB0eXNldCgmbnNpZ2FjdC5zYV9tYXNrKTsKKy8vbnNpZ2FjdC5zYV9mbGFncz0gU0FfSU5URVJSVVBUOworICBpZiAoc2lnYWN0aW9uKFNJR1dJTkNILCZuc2lnYWN0LDApKSBvaHNoaXRlKF8oImZhaWxlZCB0byBzZXQgbmV3IFNJR1dJTkNIIHNpZ2FjdCIpKTsKK30KKwordm9pZCBiYXNlbGlzdDo6c2V0aGVpZ2h0cygpIHsKKyAgaW50IHk9IHltYXggLSAodGl0bGVfaGVpZ2h0ICsgY29saGVhZHNfaGVpZ2h0ICsgdGhpc3N0YXRlX2hlaWdodCk7CisgIGFzc2VydCh5Pj0xKTsKKyAgaWYgKHNob3dpbmZvPT0yICYmIHk+PTcpIHsKKyAgICBsaXN0X2hlaWdodD0gNTsKKyAgICB3aGF0aW5mb19oZWlnaHQ9IDE7CisgICAgaW5mb19oZWlnaHQ9IHktNjsKKyAgfSBlbHNlIGlmIChzaG93aW5mbz09MSAmJiB5Pj0xMCkgeworICAgIGxpc3RfaGVpZ2h0PSB5LzI7CisgICAgaW5mb19oZWlnaHQ9ICh5LTEpLzI7CisgICAgd2hhdGluZm9faGVpZ2h0PSAxOworICB9IGVsc2UgeworICAgIGxpc3RfaGVpZ2h0PSB5OworICAgIGluZm9faGVpZ2h0PSAwOworICAgIHdoYXRpbmZvX2hlaWdodD0gMDsKKyAgfQorICBjb2xoZWFkc19yb3c9IHRpdGxlX2hlaWdodDsKKyAgbGlzdF9yb3c9IGNvbGhlYWRzX3JvdyArIGNvbGhlYWRzX2hlaWdodDsKKyAgdGhpc3N0YXRlX3Jvdz0gbGlzdF9yb3cgKyBsaXN0X2hlaWdodDsKKyAgaW5mb19yb3c9IHRoaXNzdGF0ZV9yb3cgKyB0aGlzc3RhdGVfaGVpZ2h0OworICB3aGF0aW5mb19yb3c9IHltYXggLSAxOworfQorCit2b2lkIGJhc2VsaXN0OjpzdGFydGRpc3BsYXkoKSB7CisgIGRlYnVnKGRiZ19nZW5lcmFsLCAiYmFzZWxpc3RbJXBdOjpzdGFydGRpc3BsYXkoKSIsIHRoaXMpOworICBjYnJlYWsoKTsgbm9lY2hvKCk7IG5vbmwoKTsga2V5cGFkKHN0ZHNjcixUUlVFKTsKKyAgY2xlYXIoKTsgd25vdXRyZWZyZXNoKHN0ZHNjcik7CisKKyAgLy8gZmluZCBhdHRyaWJ1dGVzCisgIGlmIChoYXNfY29sb3JzKCkgJiYgc3RhcnRfY29sb3IoKT09T0sgJiYgQ09MT1JfUEFJUlMgPj0gbnVtc2NyZWVucGFydHMpIHsKKyAgICBpbnQgaTsKKyAgICBwcmludGYoImFsbG9jaW5nXG4iKTsKKyAgICBmb3IgKGkgPSAxOyBpIDwgbnVtc2NyZWVucGFydHM7IGkrKykgeworICAgICAgIGlmIChpbml0X3BhaXIoaSwgY29sb3JbaV0uZm9yZSwgY29sb3JbaV0uYmFjaykgIT0gT0spCisgICAgICAgICBvaHNoaXRlKF8oImZhaWxlZCB0byBhbGxvY2F0ZSBjb2xvdXIgcGFpciIpKTsKKyAgICB9CisgICAgLyogVE9ETzogc2hvdWxkIHVzZSBhbiBhcnJheSBvZiBhdHRyJ3MsIGluZGV4ZWQgYnkgYXR0ciBuYW1lLiBPaCB3ZWxsLiAqLworICAgIGxpc3RfYXR0cj0JCUNPTE9SX1BBSVIobGlzdCkJfCBjb2xvcltsaXN0XS5hdHRyOworICAgIGxpc3RzZWxfYXR0cj0gCUNPTE9SX1BBSVIobGlzdHNlbCkJfCBjb2xvcltsaXN0c2VsXS5hdHRyOworICAgIHRpdGxlX2F0dHI9CQlDT0xPUl9QQUlSKHRpdGxlKQl8IGNvbG9yW3RpdGxlXS5hdHRyOworICAgIHRoaXNzdGF0ZV9hdHRyPQlDT0xPUl9QQUlSKHRoaXNzdGF0ZSkJfCBjb2xvclt0aGlzc3RhdGVdLmF0dHI7CisgICAgc2Vsc3RhdGVfYXR0cj0JQ09MT1JfUEFJUihzZWxzdGF0ZSkJfCBjb2xvcltzZWxzdGF0ZV0uYXR0cjsKKyAgICBzZWxzdGF0ZXNlbF9hdHRyPSAJQ09MT1JfUEFJUihzZWxzdGF0ZXNlbCkJfCBjb2xvcltzZWxzdGF0ZXNlbF0uYXR0cjsKKyAgICBjb2xoZWFkc19hdHRyPQlDT0xPUl9QQUlSKGNvbGhlYWRzKQl8IGNvbG9yW2NvbGhlYWRzXS5hdHRyOworICAgIHF1ZXJ5X2F0dHI9CQlDT0xPUl9QQUlSKHF1ZXJ5KQl8IGNvbG9yW3F1ZXJ5XS5hdHRyOworICAgIGluZm9fYXR0cj0JCUNPTE9SX1BBSVIoaW5mbykJfCBjb2xvcltpbmZvXS5hdHRyOworICAgIGluZm9faGVhZGF0dHI9CUNPTE9SX1BBSVIoaW5mb19oZWFkKQl8IGNvbG9yW2luZm9faGVhZF0uYXR0cjsKKyAgICB3aGF0aW5mb19hdHRyPQlDT0xPUl9QQUlSKHdoYXRpbmZvKQl8IGNvbG9yW3doYXRpbmZvXS5hdHRyOworICAgIGhlbHBzY3JlZW5fYXR0cj0JQ09MT1JfUEFJUihoZWxwc2NyZWVuKQl8IGNvbG9yW2hlbHBzY3JlZW5dLmF0dHI7CisgIH0gZWxzZSB7CisgICAgLyogVXNlciBkZWZpbmVkIGF0dHJpYnV0ZXMgZm9yIEImVyBtb2RlIGFyZSBub3QgY3VycmVudGx5IHN1cHBvcnRlZC4gKi8KKyAgICB0aXRsZV9hdHRyPSBBX1JFVkVSU0U7CisgICAgdGhpc3N0YXRlX2F0dHI9IEFfU1RBTkRPVVQ7CisgICAgbGlzdF9hdHRyPSAwOworICAgIGxpc3RzZWxfYXR0cj0gQV9TVEFORE9VVDsKKyAgICBzZWxzdGF0ZV9hdHRyPSBBX0JPTEQ7CisgICAgc2Vsc3RhdGVzZWxfYXR0cj0gQV9TVEFORE9VVDsKKyAgICBjb2xoZWFkc19hdHRyPSBBX0JPTEQ7CisgICAgcXVlcnlfYXR0cj0gdGl0bGVfYXR0cjsKKyAgICBpbmZvX2F0dHI9IGxpc3RfYXR0cjsKKyAgICBpbmZvX2hlYWRhdHRyPSBBX0JPTEQ7CisgICAgd2hhdGluZm9fYXR0cj0gdGhpc3N0YXRlX2F0dHI7CisgICAgaGVscHNjcmVlbl9hdHRyPSBBX05PUk1BTDsKKyAgfQorCisgIC8vIHNldCB1cCB3aW5kb3dzIGFuZCBwYWRzLCBiYXNlZCBvbiBzY3JlZW4gc2l6ZQorICBnZXRtYXh5eChzdGRzY3IseW1heCx4bWF4KTsKKyAgdGl0bGVfaGVpZ2h0PSB5bWF4Pj02OworICBjb2xoZWFkc19oZWlnaHQ9IHltYXg+PTU7CisgIHRoaXNzdGF0ZV9oZWlnaHQ9IHltYXg+PTM7CisKKyAgc2V0aGVpZ2h0cygpOworICBzZXR3aWR0aHMoKTsKKworICB0aXRsZXdpbj0gbmV3d2luKDEseG1heCwgMCwwKTsKKyAgaWYgKCF0aXRsZXdpbikgb2hzaGl0ZShfKCJmYWlsZWQgdG8gY3JlYXRlIHRpdGxlIHdpbmRvdyIpKTsKKyAgd2F0dHJzZXQodGl0bGV3aW4sdGl0bGVfYXR0cik7CisKKyAgd2hhdGluZm93aW49IG5ld3dpbigxLHhtYXgsIHdoYXRpbmZvX3JvdywwKTsKKyAgaWYgKCF3aGF0aW5mb3dpbikgb2hzaGl0ZShfKCJmYWlsZWQgdG8gY3JlYXRlIHdoYXRpbmZvIHdpbmRvdyIpKTsKKyAgd2F0dHJzZXQod2hhdGluZm93aW4sd2hhdGluZm9fYXR0cik7CisKKyAgbGlzdHBhZCA9IG5ld3BhZCh5bWF4LCB0b3RhbF93aWR0aCk7CisgIGlmICghbGlzdHBhZCkgb2hzaGl0ZShfKCJmYWlsZWQgdG8gY3JlYXRlIGJhc2VsaXN0IHBhZCIpKTsKKworICBjb2xoZWFkc3BhZD0gbmV3cGFkKDEsIHRvdGFsX3dpZHRoKTsKKyAgaWYgKCFjb2xoZWFkc3BhZCkgb2hzaGl0ZShfKCJmYWlsZWQgdG8gY3JlYXRlIGhlYWRpbmcgcGFkIikpOworICB3YXR0cnNldChjb2xoZWFkc3BhZCxjb2xoZWFkc19hdHRyKTsKKworICB0aGlzc3RhdGVwYWQ9IG5ld3BhZCgxLCB0b3RhbF93aWR0aCk7CisgIGlmICghdGhpc3N0YXRlcGFkKSBvaHNoaXRlKF8oImZhaWxlZCB0byBjcmVhdGUgdGhpc3N0YXRlIHBhZCIpKTsKKyAgd2F0dHJzZXQodGhpc3N0YXRlcGFkLHRoaXNzdGF0ZV9hdHRyKTsKKworICBpbmZvcGFkPSBuZXdwYWQoTUFYX0RJU1BMQVlfSU5GTywgdG90YWxfd2lkdGgpOworICBpZiAoIWluZm9wYWQpIG9oc2hpdGUoXygiZmFpbGVkIHRvIGNyZWF0ZSBpbmZvIHBhZCIpKTsKKyAgd2F0dHJzZXQoaW5mb3BhZCxpbmZvX2F0dHIpOworICB3YmtnZHNldChpbmZvcGFkLCAnICcgfCBpbmZvX2F0dHIpOworCisgIHF1ZXJ5d2luPSBuZXd3aW4oMSx4bWF4LHltYXgtMSwwKTsKKyAgaWYgKCFxdWVyeXdpbikgb2hzaGl0ZShfKCJmYWlsZWQgdG8gY3JlYXRlIHF1ZXJ5IHdpbmRvdyIpKTsKKyAgd2JrZ2RzZXQocXVlcnl3aW4sICcgJyB8IHF1ZXJ5X2F0dHIpOworCisgIGlmIChjdXJzb3JsaW5lID49IHRvcG9mc2NyZWVuICsgbGlzdF9oZWlnaHQpIHRvcG9mc2NyZWVuPSBjdXJzb3JsaW5lOworICBpZiAodG9wb2ZzY3JlZW4gPiBuaXRlbXMgLSBsaXN0X2hlaWdodCkgdG9wb2ZzY3JlZW49IG5pdGVtcyAtIGxpc3RfaGVpZ2h0OworICBpZiAodG9wb2ZzY3JlZW4gPCAwKSB0b3BvZnNjcmVlbj0gMDsKKworICBpbmZvdG9wb2ZzY3JlZW49IDA7IGxlZnRvZnNjcmVlbj0gMDsKKworICByZWRyYXdhbGwoKTsKKworICBkZWJ1ZyhkYmdfZ2VuZXJhbCwKKyAgICAgICAgImJhc2VsaXN0OjpzdGFydGRpc3BsYXkoKSBkb25lIC4uLlxuXG4iCisgICAgICAgICIgeG1heD0lZCwgeW1heD0lZDtcblxuIgorICAgICAgICAiIHRpdGxlX2hlaWdodD0lZCwgY29saGVhZHNfaGVpZ2h0PSVkLCBsaXN0X2hlaWdodD0lZDtcbiIKKyAgICAgICAgIiB0aGlzc3RhdGVfaGVpZ2h0PSVkLCBpbmZvX2hlaWdodD0lZCwgd2hhdGluZm9faGVpZ2h0PSVkO1xuXG4iCisgICAgICAgICIgY29saGVhZHNfcm93PSVkLCB0aGlzc3RhdGVfcm93PSVkLCBpbmZvX3Jvdz0lZDtcbiIKKyAgICAgICAgIiB3aGF0aW5mb19yb3c9JWQsIGxpc3Rfcm93PSVkO1xuXG4iLAorICAgICAgICB4bWF4LCB5bWF4LCB0aXRsZV9oZWlnaHQsIGNvbGhlYWRzX2hlaWdodCwgbGlzdF9oZWlnaHQsCisgICAgICAgIHRoaXNzdGF0ZV9oZWlnaHQsIGluZm9faGVpZ2h0LCB3aGF0aW5mb19oZWlnaHQsCisgICAgICAgIGNvbGhlYWRzX3JvdywgdGhpc3N0YXRlX3JvdywgaW5mb19yb3csIHdoYXRpbmZvX3JvdywgbGlzdF9yb3cpOworfQorCit2b2lkIGJhc2VsaXN0OjplbmRkaXNwbGF5KCkgeworICBkZWx3aW4odGl0bGV3aW4pOworICBkZWx3aW4od2hhdGluZm93aW4pOworICBkZWx3aW4obGlzdHBhZCk7CisgIGRlbHdpbihjb2xoZWFkc3BhZCk7CisgIGRlbHdpbih0aGlzc3RhdGVwYWQpOworICBkZWx3aW4oaW5mb3BhZCk7CisgIHdtb3ZlKHN0ZHNjcix5bWF4LDApOyB3Y2xydG9lb2woc3Rkc2NyKTsKKyAgbGlzdHBhZD0gMDsKK30KKwordm9pZCBiYXNlbGlzdDo6cmVkcmF3YWxsKCkgeworICByZWRyYXd0aXRsZSgpOworICByZWRyYXdjb2xoZWFkcygpOworICB3YXR0cnNldChsaXN0cGFkLGxpc3RfYXR0cik7IG15d2VyYXNlKGxpc3RwYWQpOworICBsZHJhd25zdGFydD0gbGRyYXduZW5kPSAtMTsgLy8gc3RhcnQgaXMgZmlyc3QgZHJhd247IGVuZCBpcyBmaXJzdCB1bmRyYXduOyAtMT1ub25lCisgIHJlZnJlc2hsaXN0KCk7CisgIHJlZHJhd3RoaXNzdGF0ZSgpOworICByZWRyYXdpbmZvKCk7Cit9CisKK3ZvaWQgYmFzZWxpc3Q6OnJlZHJhdzFpdGVtKGludCBpbmRleCkgeworICByZWRyYXcxaXRlbXNlbChpbmRleCwgaW5kZXggPT0gY3Vyc29ybGluZSk7Cit9CisKK2Jhc2VsaXN0OjpiYXNlbGlzdChrZXliaW5kaW5ncyAqa2IpIHsKKyAgZGVidWcoZGJnX2dlbmVyYWwsICJiYXNlbGlzdFslcF06OmJhc2VsaXN0KCkiLCB0aGlzKTsKKworICBiaW5kaW5ncz0ga2I7CisgIG5pdGVtcz0gMDsKKworICB4bWF4PSAtMTsKKyAgbGlzdF9oZWlnaHQ9MDsgaW5mb19oZWlnaHQ9MDsKKyAgdG9wb2ZzY3JlZW49IDA7IGxlZnRvZnNjcmVlbj0gMDsKKyAgbGlzdHBhZD0gMDsgY3Vyc29ybGluZT0gLTE7CisgIHNob3dpbmZvPSAxOworCisgIHNlYXJjaHN0cmluZ1swXT0gMDsKK30KKwordm9pZCBiYXNlbGlzdDo6aXRkX2tleXMoKSB7CisgIHdoYXRpbmZvdmIoXygiS2V5YmluZGluZ3MiKSk7CisKKyAgY29uc3QgaW50IGdpdmVrPSB4bWF4LzM7CisgIGJpbmRpbmdzLT5kZXNjcmliZXN0YXJ0KCk7CisgIGNvbnN0IGNoYXIgKip0YTsKKyAgd2hpbGUgKCh0YT0gYmluZGluZ3MtPmRlc2NyaWJlbmV4dCgpKSAhPSAwKSB7CisgICAgY29uc3QgY2hhciAqKnRhcD0gdGErMTsKKyAgICBmb3IgKDs7KSB7CisgICAgICB3YWRkc3RyKGluZm9wYWQsIGdldHRleHQoKnRhcCkpOworICAgICAgdGFwKys7ICBpZiAoISp0YXApIGJyZWFrOworICAgICAgd2FkZHN0cihpbmZvcGFkLCAiLCAiKTsKKyAgICB9CisgICAgaW50IHkseDsKKyAgICBnZXR5eChpbmZvcGFkLHkseCk7CisgICAgaWYgKHggPj0gZ2l2ZWspIHkrKzsKKyAgICBtdndhZGRzdHIoaW5mb3BhZCwgeSxnaXZlaywgdGFbMF0pOworICAgIHdhZGRjaChpbmZvcGFkLCdcbicpOworICB9Cit9CisKK3ZvaWQgYmFzZWxpc3Q6OmRvc2VhcmNoKCkgeworICBpbnQgb2Zmc2V0LCBpbmRleDsKKyAgZGVidWcoZGJnX2dlbmVyYWwsICJiYXNlbGlzdFslcF06OmRvc2VhcmNoKCk7IHNlYXJjaHN0cmluZz0nJXMnIiwKKyAgICAgICAgdGhpcywgc2VhcmNoc3RyaW5nKTsKKyAgZm9yIChvZmZzZXQgPSAxLCBpbmRleCA9IG1heCh0b3BvZnNjcmVlbiwgY3Vyc29ybGluZSArIDEpOworICAgICAgIG9mZnNldDxuaXRlbXM7CisgICAgICAgb2Zmc2V0KyssIGluZGV4KyspIHsKKyAgICBpZiAoaW5kZXggPj0gbml0ZW1zKSBpbmRleCAtPSBuaXRlbXM7CisgICAgaWYgKG1hdGNoc2VhcmNoKGluZGV4KSkgeworICAgICAgdG9wb2ZzY3JlZW49IGluZGV4LTE7CisgICAgICBpZiAodG9wb2ZzY3JlZW4gPiBuaXRlbXMgLSBsaXN0X2hlaWdodCkgdG9wb2ZzY3JlZW49IG5pdGVtcy1saXN0X2hlaWdodDsKKyAgICAgIGlmICh0b3BvZnNjcmVlbiA8IDApIHRvcG9mc2NyZWVuPSAwOworICAgICAgc2V0Y3Vyc29yKGluZGV4KTsKKyAgICAgIHJldHVybjsKKyAgICB9CisgIH0KKyAgYmVlcCgpOworfQorCit2b2lkIGJhc2VsaXN0OjpyZWZyZXNoaW5mbygpIHsKKyAgcG5vdXRyZWZyZXNoKGluZm9wYWQsIGluZm90b3BvZnNjcmVlbixsZWZ0b2ZzY3JlZW4sIGluZm9fcm93LDAsCisgICAgICAgICAgICAgICBtaW4oaW5mb19yb3cgKyBpbmZvX2hlaWdodCAtIDEsIGluZm9fcm93ICsgTUFYX0RJU1BMQVlfSU5GTyAtIDEpLAorICAgICAgICAgICAgICAgbWluKHRvdGFsX3dpZHRoIC0gbGVmdG9mc2NyZWVuIC0gMSwgeG1heCAtIDEpKTsKKworICBpZiAod2hhdGluZm9faGVpZ2h0KSB7CisgICAgbXl3ZXJhc2Uod2hhdGluZm93aW4pOworICAgIG12d2FkZHN0cih3aGF0aW5mb3dpbiwwLDAsIHdoYXRpbmZvdmIuc3RyaW5nKCkpOworICAgIGlmIChpbmZvbGluZXMgPiBpbmZvX2hlaWdodCkgeworICAgICAgd3ByaW50dyh3aGF0aW5mb3dpbixfKCIgIC0tICVkJSUsIHByZXNzICIpLAorICAgICAgICAgICAgICAoaW50KSgoaW5mb3RvcG9mc2NyZWVuICsgaW5mb19oZWlnaHQpICogMTAwLjAgLyBpbmZvbGluZXMpKTsKKyAgICAgIGlmIChpbmZvdG9wb2ZzY3JlZW4gKyBpbmZvX2hlaWdodCA8IGluZm9saW5lcykgeworICAgICAgICB3cHJpbnR3KHdoYXRpbmZvd2luLF8oIiVzIGZvciBtb3JlIiksIGJpbmRpbmdzLT5maW5kKCJpc2Nyb2xsb24iKSk7CisgICAgICAgIGlmIChpbmZvdG9wb2ZzY3JlZW4pIHdhZGRzdHIod2hhdGluZm93aW4sICIsICIpOworICAgICAgfQorICAgICAgaWYgKGluZm90b3BvZnNjcmVlbikKKyAgICAgICAgd3ByaW50dyh3aGF0aW5mb3dpbiwgXygiJXMgdG8gZ28gYmFjayIpLGJpbmRpbmdzLT5maW5kKCJpc2Nyb2xsYmFjayIpKTsKKyAgICAgIHdhZGRjaCh3aGF0aW5mb3dpbiwnLicpOworICAgIH0KKyAgICB3bm91dHJlZnJlc2god2hhdGluZm93aW4pOworICB9Cit9CisKK3ZvaWQgYmFzZWxpc3Q6OndvcmR3cmFwaW5mbyhpbnQgb2Zmc2V0LCBjb25zdCBjaGFyICptKSB7CisgIGludCB1c2VtYXg9IHhtYXgtNTsKKyAgZGVidWcoZGJnX2dlbmVyYWwsICJiYXNlbGlzdFslcF06OndvcmR3cmFwaW5mbyglZCwgJyVzJykiLCB0aGlzLCBvZmZzZXQsIG0pOworICBpbnQgd3JhcHBpbmc9MDsKKyAgZm9yICg7OykgeworICAgIGludCBvZmZsZWZ0PW9mZnNldDsgd2hpbGUgKCptID09ICcgJyAmJiBvZmZsZWZ0PjApIHsgbSsrOyBvZmZsZWZ0LS07IH0KKyAgICBjb25zdCBjaGFyICpwPSBzdHJjaHIobSwnXG4nKTsKKyAgICBpbnQgbD0gcCA/IChpbnQpKHAtbSkgOiBzdHJsZW4obSk7CisgICAgd2hpbGUgKGwgJiYgaXNzcGFjZShtW2wtMV0pKSBsLS07CisgICAgaWYgKCFsIHx8ICgqbSA9PSAnLicgJiYgbCA9PSAxKSkgeworICAgICAgaWYgKHdyYXBwaW5nKSB3YWRkY2goaW5mb3BhZCwnXG4nKTsKKyAgICAgIHdhZGRjaChpbmZvcGFkLCdcbicpOworICAgICAgd3JhcHBpbmc9IDA7CisgICAgfSBlbHNlIGlmICgqbSA9PSAnICcgfHwgdXNlbWF4IDwgMTApIHsKKyAgICAgIGlmICh3cmFwcGluZykgd2FkZGNoKGluZm9wYWQsJ1xuJyk7CisgICAgICB3YWRkbnN0cihpbmZvcGFkLCBtLCBsKTsKKyAgICAgIHdhZGRjaChpbmZvcGFkLCdcbicpOyB3cmFwcGluZz0gMDsKKyAgICB9IGVsc2UgeworICAgICAgaW50IHgsIHkgRFBLR19BVFRSX1VOVVNFRDsKKworICAgICAgaWYgKHdyYXBwaW5nKSB7CisgICAgICAgIGdldHl4KGluZm9wYWQsIHkseCk7CisgICAgICAgIGlmICh4KzEgPj0gdXNlbWF4KSB7CisgICAgICAgICAgd2FkZGNoKGluZm9wYWQsJ1xuJyk7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgd2FkZGNoKGluZm9wYWQsJyAnKTsKKyAgICAgICAgfQorICAgICAgfQorICAgICAgZm9yICg7OykgeworICAgICAgICBnZXR5eChpbmZvcGFkLCB5LHgpOworICAgICAgICBpbnQgZG9zZW5kPSB1c2VtYXgteDsKKyAgICAgICAgaWYgKGwgPD0gZG9zZW5kKSB7CisgICAgICAgICAgZG9zZW5kPWw7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgaW50IGk9ZG9zZW5kOworICAgICAgICAgIHdoaWxlIChpID4gMCAmJiBtW2ldICE9ICcgJykgaS0tOworICAgICAgICAgIGlmIChpID4gMCB8fCB4ID4gMCkgZG9zZW5kPWk7CisgICAgICAgIH0KKyAgICAgICAgaWYgKGRvc2VuZCkgd2FkZG5zdHIoaW5mb3BhZCwgbSwgZG9zZW5kKTsKKyAgICAgICAgd2hpbGUgKGRvc2VuZCA8IGwgJiYgbVtkb3NlbmRdID09ICcgJykgZG9zZW5kKys7CisgICAgICAgIGwtPSBkb3NlbmQ7IG0rPSBkb3NlbmQ7CisgICAgICAgIGlmIChsIDw9IDApIGJyZWFrOworICAgICAgICB3YWRkY2goaW5mb3BhZCwnXG4nKTsKKyAgICAgIH0KKyAgICAgIHdyYXBwaW5nPSAxOworICAgIH0KKyAgICBpZiAoIXApIGJyZWFrOworICAgIGlmIChnZXRjdXJ5KGluZm9wYWQpID09IChNQVhfRElTUExBWV9JTkZPIC0gMSkpIHsKKyAgICAgIHdhZGRzdHIoaW5mb3BhZCwKKyAgICAgICAgICAgICAgIltUaGUgcGFja2FnZSBkZXNjcmlwdGlvbiBpcyB0b28gbG9uZyBhbmQgaGFzIGJlZW4gdHJ1bmNhdGVkLi4uXSIpOworICAgICAgYnJlYWs7CisgICAgfQorICAgIG09ICsrcDsKKyAgfQorICBkZWJ1ZyhkYmdfZ2VuZXJhbCwgImJhc2VsaXN0WyVwXTo6d29yZHdyYXBpbmZvKCkgZG9uZSIsIHRoaXMpOworfQorCitiYXNlbGlzdDo6fmJhc2VsaXN0KCkgeyB9CisKKy8qIHZpOiBzdz0yIHRzPTgKKyAqLwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L2Jhc2V0b3AuY2MgYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvYmFzZXRvcC5jYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zMmQ0MjBmCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L2Jhc2V0b3AuY2MKQEAgLTAsMCArMSw1MiBAQAorLyoKKyAqIGRzZWxlY3QgLSBEZWJpYW4gcGFja2FnZSBtYWludGVuYW5jZSB1c2VyIGludGVyZmFjZQorICogYmFzZXRvcC5jYyAtIGJhc2UgbGlzdCBjbGFzcyByZWRyYXcgb2YgdG9wCisgKgorICogQ29weXJpZ2h0IMKpIDE5OTQsMTk5NSBJYW4gSmFja3NvbiA8aWFuQGNoaWFyay5ncmVlbmVuZC5vcmcudWs+CisgKgorICogVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisgKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAqIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorICovCisKKyNpbmNsdWRlIDxjb25maWcuaD4KKyNpbmNsdWRlIDxjb21wYXQuaD4KKworI2luY2x1ZGUgPGRwa2cvZHBrZy1kYi5oPgorCisjaW5jbHVkZSAiZHNlbGVjdC5oIgorCit2b2lkIGJhc2VsaXN0OjpyZWZyZXNobGlzdCgpIHsKKyAgcmVkcmF3aXRlbXNyYW5nZSh0b3BvZnNjcmVlbiwgbWluKG5pdGVtcywgdG9wb2ZzY3JlZW4gKyBsaXN0X2hlaWdodCkpOworICBpbnQgeSwgeCwgbWF4eSwgbWF4eDsKKyAgeSA9IG1pbihsaXN0X3JvdyArIGxpc3RfaGVpZ2h0IC0gMSwgbGlzdF9yb3cgKyBuaXRlbXMgLSB0b3BvZnNjcmVlbiAtIDEpOworICB4ID0gbWluKHRvdGFsX3dpZHRoIC0gbGVmdG9mc2NyZWVuIC0gMSwgeG1heCAtIDEpOworICBwbm91dHJlZnJlc2gobGlzdHBhZCwgMCwgbGVmdG9mc2NyZWVuLCBsaXN0X3JvdywgMCwgeSwgeCk7CisgIGdldG1heHl4KGxpc3RwYWQsbWF4eSxtYXh4KTsKKyAgeSsrOworICB3aGlsZSAoeSA8IGxpc3Rfcm93ICsgbGlzdF9oZWlnaHQgLSAxKSB7CisgICAgcG5vdXRyZWZyZXNoKGxpc3RwYWQsIG1heHktMSxsZWZ0b2ZzY3JlZW4sIHksMCwgeSx4KTsKKyAgICB5Kys7CisgIH0KK30KKwordm9pZCBiYXNlbGlzdDo6cmVkcmF3aXRlbXNyYW5nZShpbnQgc3RhcnQsIGludCBlbmQpIHsKKyAgaW50IGk7CisgIGZvciAoaSA9IHN0YXJ0OyBpIDwgZW5kOyBpKyspIHsKKyAgICByZWRyYXcxaXRlbShpKTsKKyAgfQorfQorCit2b2lkIGJhc2VsaXN0OjpyZWZyZXNoY29saGVhZHMoKSB7CisgIHBub3V0cmVmcmVzaChjb2xoZWFkc3BhZCwgMCxsZWZ0b2ZzY3JlZW4sIGNvbGhlYWRzX3JvdywwLAorICAgICAgICAgICAgICAgY29saGVhZHNfcm93LCBtaW4odG90YWxfd2lkdGggLSBsZWZ0b2ZzY3JlZW4gLSAxLCB4bWF4IC0gMSkpOworfQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L2JpbmRpbmdzLmNjIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L2JpbmRpbmdzLmNjCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmI1NDRlMjkKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvYmluZGluZ3MuY2MKQEAgLTAsMCArMSwxNzcgQEAKKy8qCisgKiBkc2VsZWN0IC0gRGViaWFuIHBhY2thZ2UgbWFpbnRlbmFuY2UgdXNlciBpbnRlcmZhY2UKKyAqIGJpbmRpbmdzLmNjIC0ga2V5YmluZGluZyBtYW5hZ2VyIG9iamVjdCBkZWZpbml0aW9ucyBhbmQgZGVmYXVsdCBiaW5kaW5ncworICoKKyAqIENvcHlyaWdodCDCqSAxOTk1IElhbiBKYWNrc29uIDxpYW5AY2hpYXJrLmdyZWVuZW5kLm9yZy51az4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworI2luY2x1ZGUgPGNvbmZpZy5oPgorI2luY2x1ZGUgPGNvbXBhdC5oPgorCisjaW5jbHVkZSA8c3RyaW5nLmg+CisjaW5jbHVkZSA8c3RkaW8uaD4KKworI2luY2x1ZGUgPGRwa2cvaTE4bi5oPgorI2luY2x1ZGUgPGRwa2cvZHBrZy5oPgorI2luY2x1ZGUgPGRwa2cvZHBrZy1kYi5oPgorCisjaW5jbHVkZSAiZHNlbGVjdC5oIgorI2luY2x1ZGUgImJpbmRpbmdzLmgiCisKK2tleWJpbmRpbmdzOjprZXliaW5kaW5ncyhjb25zdCBpbnRlcnByZXRhdGlvbiAqaW50cywgY29uc3Qgb3JnYmluZGluZyAqb3JnYmluZGluZ3MpIHsKKyAgaW50ZXJwcz0gaW50czsKKyAgYmluZGluZ3M9MDsKKyAgY29uc3Qgb3JnYmluZGluZyAqYj0gb3JnYmluZGluZ3M7CisgIHdoaWxlIChiLT5hY3Rpb24pIHsgYmluZChiLT5rZXksYi0+YWN0aW9uKTsgYisrOyB9CisgIGRlc2NyaWJlc3RhcnQoKTsKK30KKworYm9vbAora2V5YmluZGluZ3M6OmJpbmQoaW50IGtleSwgY29uc3QgY2hhciAqYWN0aW9uKQoreworICBpZiAoa2V5ID09IC0xKQorICAgIHJldHVybiBmYWxzZTsKKworICBjb25zdCBpbnRlcnByZXRhdGlvbiAqaW50ZXJwID0gaW50ZXJwczsKKyAgd2hpbGUgKGludGVycC0+YWN0aW9uICYmIHN0cmNtcChpbnRlcnAtPmFjdGlvbiwgYWN0aW9uKSkKKyAgICBpbnRlcnArKzsKKyAgaWYgKCFpbnRlcnAtPmFjdGlvbikKKyAgICByZXR1cm4gZmFsc2U7CisKKyAgY29uc3QgZGVzY3JpcHRpb24gKmRlc2MgPSBkZXNjcmlwdGlvbnM7CisgIHdoaWxlIChkZXNjLT5hY3Rpb24gJiYgc3RyY21wKGRlc2MtPmFjdGlvbiwgYWN0aW9uKSkKKyAgIGRlc2MrKzsKKworICBiaW5kaW5nICpiID0gYmluZGluZ3M7CisgIHdoaWxlIChiICYmIGItPmtleSAhPSBrZXkpCisgICAgYiA9IGItPm5leHQ7CisKKyAgaWYgKCFiKSB7CisgICAgYiA9IG5ldyBiaW5kaW5nOworICAgIGItPmtleSA9IGtleTsKKyAgICBiLT5uZXh0ID0gYmluZGluZ3M7CisgICAgYmluZGluZ3MgPSBiOworICB9CisgIGItPmludGVycCA9IGludGVycDsKKyAgYi0+ZGVzYyA9IGRlc2MgPyBkZXNjLT5kZXNjIDogMDsKKworICByZXR1cm4gdHJ1ZTsKK30KKworY29uc3QgY2hhciAqa2V5YmluZGluZ3M6OmZpbmQoY29uc3QgY2hhciAqYWN0aW9uKSB7CisgIGJpbmRpbmcgKmIgPSBiaW5kaW5nczsKKyAgd2hpbGUgKGIgJiYgc3RyY21wKGFjdGlvbiwgYi0+aW50ZXJwLT5hY3Rpb24pKQorICAgIGIgPSBiLT5uZXh0OworICBpZiAoIWIpIHJldHVybiBfKCJbbm90IGJvdW5kXSIpOworICBjb25zdCBjaGFyICpuPSBrZXkybmFtZShiLT5rZXkpOworICBpZiAobikgcmV0dXJuIG47CisgIHN0YXRpYyBjaGFyIGJ1Zls1MF07CisgIHNwcmludGYoYnVmLF8oIlt1bms6ICVkXSIpLGItPmtleSk7CisgIHJldHVybiBidWY7Cit9CisKK2NvbnN0IGtleWJpbmRpbmdzOjppbnRlcnByZXRhdGlvbiAqa2V5YmluZGluZ3M6Om9wZXJhdG9yKCkoaW50IGtleSkgeworICBiaW5kaW5nICpiID0gYmluZGluZ3M7CisgIHdoaWxlIChiICYmIGItPmtleSAhPSBrZXkpCisgICAgYiA9IGItPm5leHQ7CisgIGlmICghYikgcmV0dXJuIDA7CisgIHJldHVybiBiLT5pbnRlcnA7Cit9CisKK2NvbnN0IGNoYXIgKiprZXliaW5kaW5nczo6ZGVzY3JpYmVuZXh0KCkgeworICBiaW5kaW5nICpzZWFyY2g7CisgIGludCBjb3VudDsKKyAgZm9yICg7OykgeworICAgIGlmICghaXRlcmF0ZS0+YWN0aW9uKSByZXR1cm4gMDsKKyAgICBmb3IgKGNvdW50PTAsIHNlYXJjaD1iaW5kaW5nczsgc2VhcmNoOyBzZWFyY2g9c2VhcmNoLT5uZXh0KQorICAgICAgaWYgKCFzdHJjbXAoc2VhcmNoLT5pbnRlcnAtPmFjdGlvbixpdGVyYXRlLT5hY3Rpb24pKQorICAgICAgICBjb3VudCsrOworICAgIGlmIChjb3VudCkgYnJlYWs7CisgICAgaXRlcmF0ZSsrOworICB9CisgIGNvbnN0IGNoYXIgKipyZXRhcnJheT0gbmV3IGNvbnN0IGNoYXIgKltjb3VudCsyXTsKKyAgcmV0YXJyYXlbMF09IGl0ZXJhdGUtPmRlc2M7CisgIGZvciAoY291bnQ9MSwgc2VhcmNoPWJpbmRpbmdzOyBzZWFyY2g7IHNlYXJjaD1zZWFyY2gtPm5leHQpCisgICAgaWYgKCFzdHJjbXAoc2VhcmNoLT5pbnRlcnAtPmFjdGlvbixpdGVyYXRlLT5hY3Rpb24pKQorICAgICAgcmV0YXJyYXlbY291bnQrK109IGtleTJuYW1lKHNlYXJjaC0+a2V5KTsKKyAgcmV0YXJyYXlbY291bnRdPSAwOworICBpdGVyYXRlKys7CisgIHJldHVybiByZXRhcnJheTsKK30KKworY29uc3QgY2hhciAqa2V5YmluZGluZ3M6OmtleTJuYW1lKGludCBrZXkpIHsKKyAgY29uc3Qga2V5bmFtZSAqc2VhcmNoID0ga2V5bmFtZXM7CisgIHdoaWxlIChzZWFyY2gtPmtleSAhPSAtMSAmJiBzZWFyY2gtPmtleSAhPSBrZXkpCisgICAgc2VhcmNoKys7CisgIHJldHVybiBzZWFyY2gtPmtuYW1lOworfQorCitpbnQga2V5YmluZGluZ3M6Om5hbWUya2V5KGNvbnN0IGNoYXIgKm5hbWUpIHsKKyAgY29uc3Qga2V5bmFtZSAqc2VhcmNoID0ga2V5bmFtZXM7CisgIHdoaWxlIChzZWFyY2gtPmtuYW1lICYmIHN0cmNhc2VjbXAoc2VhcmNoLT5rbmFtZSwgbmFtZSkpCisgICAgc2VhcmNoKys7CisgIHJldHVybiBzZWFyY2gtPmtleTsKK30KKwora2V5YmluZGluZ3M6On5rZXliaW5kaW5ncygpIHsKKyAgYmluZGluZyAqc2VhcmNoLCAqbmV4dDsKKyAgZm9yIChzZWFyY2g9YmluZGluZ3M7IHNlYXJjaDsgc2VhcmNoPW5leHQpIHsKKyAgICBuZXh0PSBzZWFyY2gtPm5leHQ7CisgICAgZGVsZXRlIHNlYXJjaDsKKyAgfQorfQorCitjb25zdCBrZXliaW5kaW5nczo6ZGVzY3JpcHRpb24ga2V5YmluZGluZ3M6OmRlc2NyaXB0aW9uc1tdPSB7CisgIC8vIEFjdGlvbnMgd2hpY2ggYXBwbHkgdG8gYm90aCB0eXBlcyBvZiBsaXN0LgorICB7ICJpc2Nyb2xsb24iLCAgICAgICBOXygiU2Nyb2xsIG9ud2FyZHMgdGhyb3VnaCBoZWxwL2luZm9ybWF0aW9uIikgICAgICAgICAgICAgfSwKKyAgeyAiaXNjcm9sbGJhY2siLCAgICAgTl8oIlNjcm9sbCBiYWNrd2FyZHMgdGhyb3VnaCBoZWxwL2luZm9ybWF0aW9uIikgICAgICAgICAgIH0sCisgIHsgInVwIiwgICAgICAgICAgICAgIE5fKCJNb3ZlIHVwIikgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAorICB7ICJkb3duIiwgICAgICAgICAgICBOXygiTW92ZSBkb3duIikgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKKyAgeyAidG9wIiwgICAgICAgICAgICAgTl8oIkdvIHRvIHRvcCBvZiBsaXN0IikgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCisgIHsgImJvdHRvbSIsICAgICAgICAgIE5fKCJHbyB0byBlbmQgb2YgbGlzdCIpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAorICB7ICJoZWxwIiwgICAgICAgICAgICBOXygiUmVxdWVzdCBoZWxwIChjeWNsZSB0aHJvdWdoIGhlbHAgc2NyZWVucykiKSAgICAgICAgICAgfSwKKyAgeyAiaW5mbyIsICAgICAgICAgICAgTl8oIkN5Y2xlIHRocm91Z2ggaW5mb3JtYXRpb24gZGlzcGxheXMiKSAgICAgICAgICAgICAgICAgIH0sCisgIHsgInJlZHJhdyIsICAgICAgICAgIE5fKCJSZWRyYXcgZGlzcGxheSIpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LAorICB7ICJzY3JvbGxvbjEiLCAgICAgICBOXygiU2Nyb2xsIG9ud2FyZHMgdGhyb3VnaCBsaXN0IGJ5IDEgbGluZSIpICAgICAgICAgICAgICAgfSwKKyAgeyAic2Nyb2xsYmFjazEiLCAgICAgTl8oIlNjcm9sbCBiYWNrd2FyZHMgdGhyb3VnaCBsaXN0IGJ5IDEgbGluZSIpICAgICAgICAgICAgIH0sCisgIHsgImlzY3JvbGxvbjEiLCAgICAgIE5fKCJTY3JvbGwgb253YXJkcyB0aHJvdWdoIGhlbHAvaW5mb3JtYXRpb24gYnkgMSBsaW5lIikgICB9LAorICB7ICJpc2Nyb2xsYmFjazEiLCAgICBOXygiU2Nyb2xsIGJhY2t3YXJkcyB0aHJvdWdoIGhlbHAvaW5mb3JtYXRpb24gYnkgMSBsaW5lIikgfSwKKyAgeyAic2Nyb2xsb24iLCAgICAgICAgTl8oIlNjcm9sbCBvbndhcmRzIHRocm91Z2ggbGlzdCIpICAgICAgICAgICAgICAgICAgICAgICAgIH0sCisgIHsgInNjcm9sbGJhY2siLCAgICAgIE5fKCJTY3JvbGwgYmFja3dhcmRzIHRocm91Z2ggbGlzdCIpICAgICAgICAgICAgICAgICAgICAgICB9LAorCisgIC8vIEFjdGlvbnMgd2hpY2ggYXBwbHkgb25seSB0byBsaXN0cyBvZiBwYWNrYWdlcy4KKyAgeyAiaW5zdGFsbCIsICAgICAgICAgTl8oIk1hcmsgcGFja2FnZShzKSBmb3IgaW5zdGFsbGF0aW9uIikgICAgICAgICAgICAgICAgICAgIH0sCisgIHsgInJlbW92ZSIsICAgICAgICAgIE5fKCJNYXJrIHBhY2thZ2UocykgZm9yIGRlaW5zdGFsbGF0aW9uIikgICAgICAgICAgICAgICAgICB9LAorICB7ICJwdXJnZSIsICAgICAgICAgICBOXygiTWFyayBwYWNrYWdlKHMpIGZvciBkZWluc3RhbGwgYW5kIHB1cmdlIikgICAgICAgICAgICAgfSwKKyAgeyAibW9yZXNwZWNpZmljIiwgICAgTl8oIk1ha2UgaGlnaGxpZ2h0IG1vcmUgc3BlY2lmaWMiKSAgICAgICAgICAgICAgICAgICAgICAgIH0sCisgIHsgImxlc3NzcGVjaWZpYyIsICAgIE5fKCJNYWtlIGhpZ2hsaWdodCBsZXNzIHNwZWNpZmljIikgICAgICAgICAgICAgICAgICAgICAgICB9LAorICB7ICJzZWFyY2giLCAgICAgICAgICBOXygiU2VhcmNoIGZvciBhIHBhY2thZ2Ugd2hvc2UgbmFtZSBjb250YWlucyBhIHN0cmluZyIpICAgfSwKKyAgeyAic2VhcmNoYWdhaW4iLCAgICAgTl8oIlJlcGVhdCBsYXN0IHNlYXJjaC4iKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCisgIHsgInN3YXBvcmRlciIsICAgICAgIE5fKCJTd2FwIHNvcnQgb3JkZXIgcHJpb3JpdHkvc2VjdGlvbiIpICAgICAgICAgICAgICAgICAgICB9LAorICB7ICJxdWl0Y2hlY2siLCAgICAgICBOXygiUXVpdCwgY29uZmlybWluZywgYW5kIGNoZWNraW5nIGRlcGVuZGVuY2llcyIpICAgICAgICAgfSwKKyAgeyAicXVpdG5vY2hlY2siLCAgICAgTl8oIlF1aXQsIGNvbmZpcm1pbmcgd2l0aG91dCBjaGVjayIpICAgICAgICAgICAgICAgICAgICAgIH0sCisgIHsgInF1aXRyZWplY3RzdWciLCAgIE5fKCJRdWl0LCByZWplY3RpbmcgY29uZmxpY3QvZGVwZW5kZW5jeSBzdWdnZXN0aW9ucyIpICAgICB9LAorICB7ICJhYm9ydG5vY2hlY2siLCAgICBOXygiQWJvcnQgLSBxdWl0IHdpdGhvdXQgbWFraW5nIGNoYW5nZXMiKSAgICAgICAgICAgICAgICAgfSwKKyAgeyAicmV2ZXJ0IiwgICAgICAgICAgTl8oIlJldmVydCB0byBvbGQgc3RhdGUgZm9yIGFsbCBwYWNrYWdlcyIpICAgICAgICAgICAgICAgIH0sCisgIHsgInJldmVydHN1Z2dlc3QiLCAgIE5fKCJSZXZlcnQgdG8gc3VnZ2VzdGVkIHN0YXRlIGZvciBhbGwgcGFja2FnZXMiKSAgICAgICAgICB9LAorICB7ICJyZXZlcnRkaXJlY3QiLCAgICBOXygiUmV2ZXJ0IHRvIGRpcmVjdGx5IHJlcXVlc3RlZCBzdGF0ZSBmb3IgYWxsIHBhY2thZ2VzIikgfSwKKyAgeyAicmV2ZXJ0aW5zdGFsbGVkIiwgTl8oIlJldmVydCB0byBjdXJyZW50bHkgaW5zdGFsbGVkIHN0YXRlIGZvciBhbGwgcGFja2FnZXMiKSB9LAorCisgIC8vIEFjdGlvbnMgd2hpY2ggYXBwbHkgb25seSB0byBsaXN0cyBvZiBtZXRob2RzLgorICB7ICJzZWxlY3QtYW5kLXF1aXQiLCBOXygiU2VsZWN0IGN1cnJlbnRseS1oaWdobGlnaHRlZCBhY2Nlc3MgbWV0aG9kIikgICAgICAgICAgfSwKKyAgeyAiYWJvcnQiLCAgICAgICAgICAgTl8oIlF1aXQgd2l0aG91dCBjaGFuZ2luZyBzZWxlY3RlZCBhY2Nlc3MgbWV0aG9kIikgICAgICAgIH0sCisgIHsgIDAsICAgICAgICAgICAgICAgIDAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9Cit9OwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L2JpbmRpbmdzLmggYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvYmluZGluZ3MuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yNTY2ZTQ5Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L2JpbmRpbmdzLmgKQEAgLTAsMCArMSw5MiBAQAorLyogLSotIGMrKyAtKi0KKyAqIGRzZWxlY3QgLSBEZWJpYW4gcGFja2FnZSBtYWludGVuYW5jZSB1c2VyIGludGVyZmFjZQorICogYmluZGluZ3MuaCAtIGtleWJpbmRpbmdzIGNsYXNzIGhlYWRlciBmaWxlCisgKgorICogQ29weXJpZ2h0IMKpIDE5OTQsMTk5NSBJYW4gSmFja3NvbiA8aWFuQGNoaWFyay5ncmVlbmVuZC5vcmcudWs+CisgKgorICogVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisgKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAqIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorICovCisKKyNpZm5kZWYgQklORElOR1NfSAorI2RlZmluZSBCSU5ESU5HU19ICisKK3N0cnVjdCBrZXliaW5kaW5ncyB7CisgIHN0cnVjdCBpbnRlcnByZXRhdGlvbjsKKworICBzdHJ1Y3Qgb3JnYmluZGluZyB7CisgICAgaW50IGtleTsKKyAgICBjb25zdCBjaGFyICphY3Rpb247CisgIH07CisKKyAgc3RydWN0IGtleW5hbWUgeworICAgIGludCBrZXk7CisgICAgY29uc3QgY2hhciAqa25hbWU7CisgIH07CisKKyAgc3RydWN0IGRlc2NyaXB0aW9uIHsKKyAgICBjb25zdCBjaGFyICphY3Rpb24sICpkZXNjOworICB9OworCisgIHN0cnVjdCBiaW5kaW5nIHsKKyAgICBiaW5kaW5nICpuZXh0OworICAgIGludCBrZXk7CisgICAgY29uc3Qgc3RydWN0IGludGVycHJldGF0aW9uICppbnRlcnA7CisgICAgY29uc3QgY2hhciAqZGVzYzsKKyAgfTsKKworIHByaXZhdGU6CisgIHN0YXRpYyBjb25zdCBrZXluYW1lIGtleW5hbWVzW107CisgIHN0YXRpYyBjb25zdCBkZXNjcmlwdGlvbiBkZXNjcmlwdGlvbnNbXTsKKworICBiaW5kaW5nICpiaW5kaW5nczsKKyAgY29uc3QgZGVzY3JpcHRpb24gKml0ZXJhdGU7CisgIGNvbnN0IGludGVycHJldGF0aW9uICppbnRlcnBzOworCisgIGJvb2wgYmluZChpbnQga2V5LCBjb25zdCBjaGFyICphY3Rpb24pOworCisgcHVibGljOgorICBpbnQgbmFtZTJrZXkoY29uc3QgY2hhciAqbmFtZSk7CisgIGNvbnN0IGNoYXIgKmtleTJuYW1lKGludCBrZXkpOworCisgIGJvb2wgYmluZChjb25zdCBjaGFyICpuYW1lLCBjb25zdCBjaGFyICphY3Rpb24pCisgIHsgcmV0dXJuIGJpbmQobmFtZTJrZXkobmFtZSksIGFjdGlvbik7IH0KKyAgY29uc3QgaW50ZXJwcmV0YXRpb24gKm9wZXJhdG9yKCkoaW50IGtleSk7CisgIGNvbnN0IGNoYXIgKmZpbmQoY29uc3QgY2hhciAqYWN0aW9uKTsKKworICB2b2lkIGRlc2NyaWJlc3RhcnQoKSB7IGl0ZXJhdGU9ZGVzY3JpcHRpb25zOyB9CisgIGNvbnN0IGNoYXIgKipkZXNjcmliZW5leHQoKTsKKyAgLy8uLi4gcmV0dXJucyBhcnJheSwgbnVsbC10ZXJtLCBmaXJzdCBlbGVtZW50IGlzIGRlc2NyaXB0aW9uLCByZXN0IGFyZSBrZXkgc3RyaW5ncworICAvLyBjYWxsZXIgbXVzdCBkZWxldGVbXSB0aGUgYXJyYXkuICBOdWxsIG1lYW5zIGVuZC4KKworICBrZXliaW5kaW5ncyhjb25zdCBpbnRlcnByZXRhdGlvbiAqaW50cywgY29uc3Qgb3JnYmluZGluZyAqb3JnYmluZGluZ3MpOworICB+a2V5YmluZGluZ3MoKTsKK307CisKKyNpbmNsdWRlICJwa2dsaXN0LmgiCisjaW5jbHVkZSAibWV0aG9kLmgiCisKK3N0cnVjdCBrZXliaW5kaW5nczo6aW50ZXJwcmV0YXRpb24geworICBjb25zdCBjaGFyICphY3Rpb247CisgIHZvaWQgKG1ldGhvZGxpc3Q6OiptZm4pKCk7CisgIHZvaWQgKHBhY2thZ2VsaXN0OjoqcGZuKSgpOworICBxdWl0YWN0aW9uIHFhOworfTsKKworZXh0ZXJuIGNvbnN0IGtleWJpbmRpbmdzOjppbnRlcnByZXRhdGlvbiBwYWNrYWdlbGlzdF9raW50ZXJwc1tdOworZXh0ZXJuIGNvbnN0IGtleWJpbmRpbmdzOjpvcmdiaW5kaW5nIHBhY2thZ2VsaXN0X2tvcmdiaW5kaW5nc1tdOworCitleHRlcm4gY29uc3Qga2V5YmluZGluZ3M6OmludGVycHJldGF0aW9uIG1ldGhvZGxpc3Rfa2ludGVycHNbXTsKK2V4dGVybiBjb25zdCBrZXliaW5kaW5nczo6b3JnYmluZGluZyBtZXRob2RsaXN0X2tvcmdiaW5kaW5nc1tdOworCisjZW5kaWYgLyogQklORElOR1NfSCAqLwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L2N1cmtleXMuY2MgYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvY3Vya2V5cy5jYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wYmJjZjE2Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L2N1cmtleXMuY2MKQEAgLTAsMCArMSwzMSBAQAorLyoKKyAqIGRzZWxlY3QgLSBEZWJpYW4gcGFja2FnZSBtYWludGVuYW5jZSB1c2VyIGludGVyZmFjZQorICogY3Vya2V5cy5jYyAtIGxpc3Qgb2YgbmN1cnNlcyBrZXlzIGZvciBuYW1lIDwtPiBrZXkgbWFwcGluZworICoKKyAqIENvcHlyaWdodCDCqSAxOTk1IElhbiBKYWNrc29uIDxpYW5AY2hpYXJrLmdyZWVuZW5kLm9yZy51az4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworI2luY2x1ZGUgPGNvbmZpZy5oPgorI2luY2x1ZGUgPGNvbXBhdC5oPgorCisjaW5jbHVkZSA8ZHBrZy9kcGtnLWRiLmg+CisKKyNpbmNsdWRlICJkc2VsZWN0LmgiCisjaW5jbHVkZSAiYmluZGluZ3MuaCIKKworY29uc3Qga2V5YmluZGluZ3M6OmtleW5hbWUga2V5YmluZGluZ3M6OmtleW5hbWVzW10gPSB7CisjaW5jbHVkZSAiY3Vya2V5cy5oIgorfTsKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9kc2VsZWN0LWN1cnNlcy5oIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L2RzZWxlY3QtY3Vyc2VzLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNmEzZmZkYgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9kc2VsZWN0LWN1cnNlcy5oCkBAIC0wLDAgKzEsMzggQEAKKy8qIC0qLSBjKysgLSotCisgKiBkc2VsZWN0IC0gRGViaWFuIHBhY2thZ2UgbWFpbnRlbmFuY2UgdXNlciBpbnRlcmZhY2UKKyAqIGRzZWxlY3QtY3Vyc2VzLmggLSBjdXJzZXMgaGVhZGVyIHdyYXBwZXIKKyAqCisgKiBDb3B5cmlnaHQgwqkgMjAwOSBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CisgKgorICogVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisgKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAqIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorICovCisKKyNpZm5kZWYgRFNFTEVDVF9DVVJTRVNfSAorI2RlZmluZSBEU0VMRUNUX0NVUlNFU19ICisKKyNpbmNsdWRlIDxjb25maWcuaD4KKworI3VuZGVmIEVSUgorCisjaWYgZGVmaW5lZChIQVZFX05DVVJTRVNXX05DVVJTRVNfSCkKKyNpbmNsdWRlIDxuY3Vyc2Vzdy9uY3Vyc2VzLmg+CisjZWxpZiBkZWZpbmVkKEhBVkVfTkNVUlNFU19OQ1VSU0VTX0gpCisjaW5jbHVkZSA8bmN1cnNlcy9uY3Vyc2VzLmg+CisjZWxpZiBkZWZpbmVkKEhBVkVfTkNVUlNFU19IKQorI2luY2x1ZGUgPG5jdXJzZXMuaD4KKyNlbHNlCisjaW5jbHVkZSA8Y3Vyc2VzLmg+CisjZW5kaWYKKworI2VuZGlmIC8qIERTRUxFQ1RfQ1VSU0VTX0ggKi8KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9kc2VsZWN0LmggYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvZHNlbGVjdC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjFjODU4OWQKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvZHNlbGVjdC5oCkBAIC0wLDAgKzEsMTg3IEBACisvKiAtKi0gYysrIC0qLQorICogZHNlbGVjdCAtIERlYmlhbiBwYWNrYWdlIG1haW50ZW5hbmNlIHVzZXIgaW50ZXJmYWNlCisgKiBkc2VsZWN0LmggLSBleHRlcm5hbCBkZWZpbml0aW9ucyBmb3IgdGhpcyBwcm9ncmFtCisgKgorICogQ29weXJpZ2h0IMKpIDE5OTQsMTk5NSBJYW4gSmFja3NvbiA8aWFuQGNoaWFyay5ncmVlbmVuZC5vcmcudWs+CisgKiBDb3B5cmlnaHQgwqkgMjAwMSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaWZuZGVmIERTRUxFQ1RfSAorI2RlZmluZSBEU0VMRUNUX0gKKworI2luY2x1ZGUgPHNpZ25hbC5oPgorCisjaW5jbHVkZSA8YWxnb3JpdGhtPgorCit1c2luZyBzdGQ6Om1pbjsKK3VzaW5nIHN0ZDo6bWF4OworCisjaW5jbHVkZSA8ZHBrZy9kZWJ1Zy5oPgorCisjaW5jbHVkZSAiZHNlbGVjdC1jdXJzZXMuaCIKKworI2RlZmluZSBEU0VMRUNUCQkiZHNlbGVjdCIKKworI2RlZmluZSBUT1RBTF9MSVNUX1dJRFRIIDE4MAorI2RlZmluZSBNQVhfRElTUExBWV9JTkZPIDEyMAorCitzdHJ1Y3QgaGVscG1lbnVlbnRyeSB7CisgIGNoYXIga2V5OworICBjb25zdCBzdHJ1Y3QgaGVscG1lc3NhZ2UgKm1zZzsKK307CisKK3N0cnVjdCBrZXliaW5kaW5nczsKKworY2xhc3MgYmFzZWxpc3QgeworcHJvdGVjdGVkOgorICAvLyBTY3JlZW4gZGltZW5zaW9ucyAmYy4KKyAgaW50IHhtYXgsIHltYXg7CisgIGludCB0aXRsZV9oZWlnaHQsIGNvbGhlYWRzX2hlaWdodCwgbGlzdF9oZWlnaHQ7CisgIGludCB0aGlzc3RhdGVfaGVpZ2h0LCBpbmZvX2hlaWdodCwgd2hhdGluZm9faGVpZ2h0OworICBpbnQgY29saGVhZHNfcm93LCB0aGlzc3RhdGVfcm93LCBpbmZvX3Jvdywgd2hhdGluZm9fcm93LCBsaXN0X3JvdzsKKyAgaW50IGxpc3RfYXR0ciwgbGlzdHNlbF9hdHRyLCB0aXRsZV9hdHRyLCBjb2xoZWFkc19hdHRyLCBpbmZvX2F0dHI7CisgIGludCBpbmZvX2hlYWRhdHRyLCB3aGF0aW5mb19hdHRyOworICBpbnQgdGhpc3N0YXRlX2F0dHIsIHF1ZXJ5X2F0dHI7CisgIGludCBzZWxzdGF0ZV9hdHRyLCBzZWxzdGF0ZXNlbF9hdHRyOworICBpbnQgaGVscHNjcmVlbl9hdHRyOworCisgIGludCB0b3RhbF93aWR0aDsKKworICAvLyAobiljdXJzZXMgc3R1ZmYKKyAgV0lORE9XICpsaXN0cGFkLCAqaW5mb3BhZCwgKmNvbGhlYWRzcGFkLCAqdGhpc3N0YXRlcGFkOworICBXSU5ET1cgKnRpdGxld2luLCAqd2hhdGluZm93aW4sICpxdWVyeXdpbjsKKyAgLy8gSWYgbGlzdHBhZCBpcyBudWxsLCB0aGVuIHdlIGhhdmUgbm90IHN0YXJ0ZWQgdG8gZGlzcGxheSB5ZXQsIGFuZAorICAvLyBzbyBub25lIG9mIHRoZSBhdXRvLWRpc3BsYXlpbmcgdXBkYXRlIHJvdXRpbmVzIG5lZWQgdG8gZGlzcGxheS4KKworICAvLyBTSUdXSU5DSCBoYW5kbGluZworICBzdHJ1Y3Qgc2lnYWN0aW9uICpvc2lnYWN0cCwgbnNpZ2FjdDsKKyAgc2lnc2V0X3QgKm9ibG9ja2VkcCwgc2lnd2luY2hzZXQ7CisgIHZvaWQgc2V0dXBzaWd3aW5jaCgpOworCisgIHN0YXRpYyBiYXNlbGlzdCAqc2lnbmFsbGlzdDsKKyAgc3RhdGljIHZvaWQgc2lnd2luY2hoYW5kbGVyKGludCk7CisKKyAgaW50IG5pdGVtcywgbGRyYXduc3RhcnQsIGxkcmF3bmVuZCwgc2hvd2luZm87CisgIGludCB0b3BvZnNjcmVlbiwgbGVmdG9mc2NyZWVuLCBjdXJzb3JsaW5lOworICBpbnQgaW5mb3RvcG9mc2NyZWVuLCBpbmZvbGluZXM7CisgIHZhcmJ1ZiB3aGF0aW5mb3ZiOworICBjaGFyIHNlYXJjaHN0cmluZ1sxMjhdOworCisgIHZpcnR1YWwgdm9pZCBzZXRoZWlnaHRzKCk7CisgIHZvaWQgdW5zaXplcygpOworICB2b2lkIGRvc2VhcmNoKCk7CisgIHZvaWQgZGlzcGxheWhlbHAoY29uc3Qgc3RydWN0IGhlbHBtZW51ZW50cnkgKm1lbnUsIGludCBrZXkpOworICB2b2lkIGRpc3BsYXllcnJvcihjb25zdCBjaGFyKiBzdHIpOworCisgIHZvaWQgcmVkcmF3YWxsKCk7CisgIHZvaWQgcmVkcmF3aXRlbXNyYW5nZShpbnQgc3RhcnQgLyppbmNsdXNpdmUqLywgaW50IGVuZCAvKmV4Y2x1c2l2ZSovKTsKKyAgdm9pZCByZWRyYXcxaXRlbShpbnQgaW5kZXgpOworICB2b2lkIHJlZnJlc2hsaXN0KCk7CisgIHZvaWQgcmVmcmVzaGluZm8oKTsKKyAgdm9pZCByZWZyZXNoY29saGVhZHMoKTsKKyAgdm9pZCBzZXRjdXJzb3IoaW50IGluZGV4KTsKKworICB2b2lkIGl0ZF9rZXlzKCk7CisKKyAgdmlydHVhbCB2b2lkIHJlZHJhdzFpdGVtc2VsKGludCBpbmRleCwgaW50IHNlbGVjdGVkKSA9MDsKKyAgdmlydHVhbCB2b2lkIHJlZHJhd2NvbGhlYWRzKCkgPTA7CisgIHZpcnR1YWwgdm9pZCByZWRyYXd0aGlzc3RhdGUoKSA9MDsKKyAgdmlydHVhbCB2b2lkIHJlZHJhd2luZm8oKSA9MDsKKyAgdmlydHVhbCB2b2lkIHJlZHJhd3RpdGxlKCkgPTA7CisgIHZpcnR1YWwgdm9pZCBzZXR3aWR0aHMoKSA9MDsKKyAgdmlydHVhbCBjb25zdCBjaGFyICppdGVtbmFtZShpbnQgaW5kZXgpID0wOworICB2aXJ0dWFsIGNvbnN0IHN0cnVjdCBoZWxwbWVudWVudHJ5ICpoZWxwbWVudWxpc3QoKSA9MDsKKworICB2aXJ0dWFsIGJvb2wgY2hlY2tzZWFyY2goY2hhciAqc3RyKTsKKyAgdmlydHVhbCBib29sIG1hdGNoc2VhcmNoKGludCBpbmRleCk7CisgIHZvaWQgd29yZHdyYXBpbmZvKGludCBvZmZzZXQsIGNvbnN0IGNoYXIgKnN0cmluZyk7CisKK3B1YmxpYzoKKworICBrZXliaW5kaW5ncyAqYmluZGluZ3M7CisKKyAgdm9pZCBrZF91cCgpOworICB2b2lkIGtkX2Rvd24oKTsKKyAgdm9pZCBrZF9yZWRyYXcoKTsKKyAgdm9pZCBrZF9zY3JvbGxvbigpOworICB2b2lkIGtkX3Njcm9sbGJhY2soKTsKKyAgdm9pZCBrZF9zY3JvbGxvbjEoKTsKKyAgdm9pZCBrZF9zY3JvbGxiYWNrMSgpOworICB2b2lkIGtkX3Bhbm9uKCk7CisgIHZvaWQga2RfcGFuYmFjaygpOworICB2b2lkIGtkX3Bhbm9uMSgpOworICB2b2lkIGtkX3BhbmJhY2sxKCk7CisgIHZvaWQga2RfdG9wKCk7CisgIHZvaWQga2RfYm90dG9tKCk7CisgIHZvaWQga2RfaXNjcm9sbG9uKCk7CisgIHZvaWQga2RfaXNjcm9sbGJhY2soKTsKKyAgdm9pZCBrZF9pc2Nyb2xsb24xKCk7CisgIHZvaWQga2RfaXNjcm9sbGJhY2sxKCk7CisgIHZvaWQga2Rfc2VhcmNoKCk7CisgIHZvaWQga2Rfc2VhcmNoYWdhaW4oKTsKKyAgdm9pZCBrZF9oZWxwKCk7CisKKyAgdm9pZCBzdGFydGRpc3BsYXkoKTsKKyAgdm9pZCBlbmRkaXNwbGF5KCk7CisKKyAgYmFzZWxpc3Qoa2V5YmluZGluZ3MqKTsKKyAgdmlydHVhbCB+YmFzZWxpc3QoKTsKK307CisKK3ZvaWQgZGlzcGxheWhlbHAoY29uc3Qgc3RydWN0IGhlbHBtZW51ZW50cnkgKm1lbnUsIGludCBrZXkpOworCit2b2lkIG15d2VyYXNlKFdJTkRPVyAqd2luKTsKKwordm9pZCBjdXJzZXNvbigpOwordm9pZCBjdXJzZXNvZmYoKTsKKworZXh0ZXJuIGludCBleHBlcnRtb2RlOworCitlbnVtIHNjcmVlbnBhcnRzIHsKKyAgICAgICBiYWNrZ3JvdW5kLAorICAgICAgIGxpc3QsCisgICAgICAgbGlzdHNlbCwKKyAgICAgICB0aXRsZSwKKyAgICAgICB0aGlzc3RhdGUsCisgICAgICAgc2Vsc3RhdGUsCisgICAgICAgc2Vsc3RhdGVzZWwsCisgICAgICAgY29saGVhZHMsCisgICAgICAgcXVlcnksCisgICAgICAgaW5mbywKKyAgICAgICBpbmZvX2hlYWQsCisgICAgICAgd2hhdGluZm8sCisgICAgICAgaGVscHNjcmVlbiwKKyAgICAgICBudW1zY3JlZW5wYXJ0cywKK307CisKK3N0cnVjdCBjb2xvcmRhdGEgeworICAgICAgIGludCBmb3JlOworICAgICAgIGludCBiYWNrOworICAgICAgIGludCBhdHRyOworfTsKK2V4dGVybiBjb2xvcmRhdGEgY29sb3JbXTsKKworLyogRXZpbCByZWNvbW1lbmRzIGZsYWcgdmFyaWFibGUuICovCitleHRlcm4gaW50IG1hbnVhbF9pbnN0YWxsOworCitlbnVtIHVycXJlc3VsdCB7IHVycXJfbm9ybWFsLCB1cnFyX2ZhaWwsIHVycXJfcXVpdG1lbnUgfTsKK2VudW0gcXVpdGFjdGlvbiB7IHFhX25vcXVpdCwgcWFfcXVpdGNoZWNrc2F2ZSwgcWFfcXVpdG5vY2hlY2tzYXZlIH07CisKK3R5cGVkZWYgdXJxcmVzdWx0IHVycWZ1bmN0aW9uKHZvaWQpOwordXJxZnVuY3Rpb24gdXJxX2xpc3QsIHVycV9xdWl0LCB1cnFfbWVudTsKK3VycWZ1bmN0aW9uIHVycV9zZXR1cCwgdXJxX3VwZGF0ZSwgdXJxX2luc3RhbGwsIHVycV9jb25maWcsIHVycV9yZW1vdmU7CisKKyNlbmRpZiAvKiBEU0VMRUNUX0ggKi8KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9oZWxwbXNncy5jYyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9oZWxwbXNncy5jYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kMTk3NWVkCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L2hlbHBtc2dzLmNjCkBAIC0wLDAgKzEsMjE3IEBACisvKgorICogZHNlbGVjdCAtIERlYmlhbiBwYWNrYWdlIG1haW50ZW5hbmNlIHVzZXIgaW50ZXJmYWNlCisgKiBoZWxwbXNncy5jYyAtIGxpc3Qgb2YgaGVscCBtZXNzYWdlcworICoKKyAqIENvcHlyaWdodCDCqSAxOTk1IElhbiBKYWNrc29uIDxpYW5AY2hpYXJrLmdyZWVuZW5kLm9yZy51az4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworI2luY2x1ZGUgPGNvbmZpZy5oPgorI2luY2x1ZGUgPGNvbXBhdC5oPgorCisjaW5jbHVkZSA8ZHBrZy9pMThuLmg+CisKKyNpbmNsdWRlICJoZWxwbXNncy5oIgorCitjb25zdCBzdHJ1Y3QgaGVscG1lc3NhZ2UgaGxwX2xpc3RrZXlzID0geworICBOXygiS2V5c3Ryb2tlcyIpLCBOXygiXAorTW90aW9uIGtleXM6IE5leHQvUHJldmlvdXMsIFRvcC9FbmQsIFVwL0Rvd24sIEJhY2t3YXJkcy9Gb3J3YXJkczpcblwKKyAgaiwgRG93bi1hcnJvdyAgICAgICAgIGssIFVwLWFycm93ICAgICAgICAgICAgIG1vdmUgaGlnaGxpZ2h0XG5cCisgIE4sIFBhZ2UtZG93biwgU3BhY2UgICBQLCBQYWdlLXVwLCBCYWNrc3BhY2UgICBzY3JvbGwgbGlzdCBieSAxIHBhZ2VcblwKKyAgXm4gICAgICAgICAgICAgICAgICAgIF5wICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBsaXN0IGJ5IDEgbGluZVxuXAorICB0LCBIb21lICAgICAgICAgICAgICAgZSwgRW5kICAgICAgICAgICAgICAgICAganVtcCB0byB0b3AvZW5kIG9mIGxpc3RcblwKKyAgdSAgICAgICAgICAgICAgICAgICAgIGQgICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIGJ5IDEgcGFnZVxuXAorICBedSAgICAgICAgICAgICAgICAgICAgXmQgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGluZm8gYnkgMSBsaW5lXG5cCisgIEIsIExlZnQtYXJyb3cgICAgICAgICBGLCBSaWdodC1hcnJvdyAgICAgICAgICBwYW4gZGlzcGxheSBieSAxLzMgc2NyZWVuXG5cCisgIF5iICAgICAgICAgICAgICAgICAgICBeZiAgICAgICAgICAgICAgICAgICAgICBwYW4gZGlzcGxheSBieSAxIGNoYXJhY3RlclxuXG5cCitcCitNYXJrIHBhY2thZ2VzIGZvciBsYXRlciBwcm9jZXNzaW5nOlxuXAorICssIEluc2VydCAgaW5zdGFsbCBvciB1cGdyYWRlICAgICAgPSwgSCAgaG9sZCBpbiBwcmVzZW50IHN0YXRlXG5cCisgLSwgRGVsZXRlICByZW1vdmUgICAgICAgICAgICAgICAgICA6LCBHICB1bmhvbGQ6IHVwZ3JhZGUgb3IgbGVhdmUgdW5pbnN0YWxsZWRcblwKKyBfICAgICAgICAgIHJlbW92ZSAmIHB1cmdlIGNvbmZpZ1xuXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTWlzY2VsbGFuZW91czpcblwKK1F1aXQsIGV4aXQsIG92ZXJ3cml0ZSAobm90ZSBjYXBpdGFscyEpOiAgICAgICA/LCBGMSByZXF1ZXN0IGhlbHAgKGFsc28gSGVscClcblwKKyBSZXR1cm4gIENvbmZpcm0sIHF1aXQgKGNoZWNrIGRlcGVuZGVuY2llcykgICBpLCBJICB0b2dnbGUvY3ljbGUgaW5mbyBkaXNwbGF5c1xuXAorICAgUSAgICAgQ29uZmlybSwgcXVpdCAob3ZlcnJpZGUgZGVwLnMpICAgICAgIG8sIE8gIGN5Y2xlIHRocm91Z2ggc29ydCBvcHRpb25zXG5cCisgWCwgRXNjICBlWGl0LCBhYmFuZG9uaW5nIGFueSBjaGFuZ2VzIG1hZGUgICAgdiwgViAgY2hhbmdlIHN0YXR1cyBkaXNwbGF5IG9wdHNcblwKKyAgIFIgICAgIFJldmVydCB0byBzdGF0ZSBiZWZvcmUgdGhpcyBsaXN0ICAgICAgXmwgICByZWRyYXcgZGlzcGxheVxuXAorICAgVSAgICAgc2V0IGFsbCB0byBzVWdnZXN0ZWQgc3RhdGUgICAgICAgICAgICAgLyAgIHNlYXJjaCAoUmV0dXJuIHRvIGNhbmNlbClcblwKKyAgIEQgICAgIHNldCBhbGwgdG8gRGlyZWN0bHkgcmVxdWVzdGVkIHN0YXRlICBuLCBcXCAgcmVwZWF0IGxhc3Qgc2VhcmNoXG4iKQorfTsKKworY29uc3Qgc3RydWN0IGhlbHBtZXNzYWdlIGhscF9tYWluaW50cm8gPSB7CisgIE5fKCJJbnRyb2R1Y3Rpb24gdG8gcGFja2FnZSBzZWxlY3Rpb25zIiksIE5fKCJcCitXZWxjb21lIHRvIGRzZWxlY3QncyBtYWluIHBhY2thZ2UgbGlzdGluZy5cblxuXAorXAorWW91IHdpbGwgYmUgcHJlc2VudGVkIHdpdGggYSBsaXN0IG9mIHBhY2thZ2VzIHdoaWNoIGFyZSBpbnN0YWxsZWQgb3IgYXZhaWxhYmxlXG5cCitmb3IgaW5zdGFsbGF0aW9uLiAgWW91IGNhbiBuYXZpZ2F0ZSBhcm91bmQgdGhlIGxpc3QgdXNpbmcgdGhlIGN1cnNvciBrZXlzLFxuXAorbWFyayBwYWNrYWdlcyBmb3IgaW5zdGFsbGF0aW9uICh1c2luZyBgKycpIG9yIGRlaW5zdGFsbGF0aW9uICh1c2luZyBgLScpLlxuXAorUGFja2FnZXMgY2FuIGJlIG1hcmtlZCBlaXRoZXIgc2luZ2x5IG9yIGluIGdyb3VwczsgaW5pdGlhbGx5IHlvdSB3aWxsIHNlZSB0aGF0XG5cCit0aGUgbGluZSBgQWxsIHBhY2thZ2VzJyBpcyBzZWxlY3RlZC4gIGArJywgYC0nIGFuZCBzbyBvbiB3aWxsIGFmZmVjdCBhbGwgdGhlXG5cCitwYWNrYWdlcyBkZXNjcmliZWQgYnkgdGhlIGhpZ2hsaWdodGVkIGxpbmUuXG5cblwKK1wKK1NvbWUgb2YgeW91ciBjaG9pY2VzIHdpbGwgY2F1c2UgY29uZmxpY3RzIG9yIGRlcGVuZGVuY3kgcHJvYmxlbXM7IHlvdSB3aWxsIGJlXG5cCitnaXZlbiBhIHN1Yi1saXN0IG9mIHRoZSByZWxldmFudCBwYWNrYWdlcywgc28gdGhhdCB5b3UgY2FuIHNvbHZlIHRoZSBwcm9ibGVtcy5cblxuXAorXAorWW91IHNob3VsZCByZWFkIHRoZSBsaXN0IG9mIGtleXMgYW5kIHRoZSBleHBsYW5hdGlvbnMgb2YgdGhlIGRpc3BsYXkuXG5cCitNdWNoIG9uLWxpbmUgaGVscCBpcyBhdmFpbGFibGUsIHBsZWFzZSBtYWtlIHVzZSBvZiBpdCAtIHByZXNzIGA/JyBhdFxuXAorYW55IHRpbWUgZm9yIGhlbHAuXG5cblwKK1wKK1doZW4geW91IGhhdmUgZmluaXNoZWQgc2VsZWN0aW5nIHBhY2thZ2VzLCBwcmVzcyA8ZW50ZXI+IHRvIGNvbmZpcm0gY2hhbmdlcyxcblwKK29yIGBYJyB0byBxdWl0IHdpdGhvdXQgc2F2aW5nIGNoYW5nZXMuIEEgZmluYWwgY2hlY2sgb24gY29uZmxpY3RzIGFuZFxuXAorZGVwZW5kZW5jaWVzIHdpbGwgYmUgZG9uZSAtIGhlcmUgdG9vIHlvdSBtYXkgc2VlIGEgc3VibGlzdC5cblxuXAorXAorUHJlc3MgPHNwYWNlPiB0byBsZWF2ZSBoZWxwIGFuZCBlbnRlciB0aGUgbGlzdCBub3cuXG4iKQorfTsKKworY29uc3Qgc3RydWN0IGhlbHBtZXNzYWdlIGhscF9yZWFkb25seWludHJvID0geworICBOXygiSW50cm9kdWN0aW9uIHRvIHJlYWQtb25seSBwYWNrYWdlIGxpc3QgYnJvd3NlciIpLCBOXygiXAorV2VsY29tZSB0byBkc2VsZWN0J3MgbWFpbiBwYWNrYWdlIGxpc3RpbmcuXG5cblwKK1wKK1lvdSB3aWxsIGJlIHByZXNlbnRlZCB3aXRoIGEgbGlzdCBvZiBwYWNrYWdlcyB3aGljaCBhcmUgaW5zdGFsbGVkIG9yIGF2YWlsYWJsZVxuXAorZm9yIGluc3RhbGxhdGlvbi4gIFNpbmNlIHlvdSBkbyBub3QgaGF2ZSB0aGUgcHJpdmlsZWdlIG5lY2Vzc2FyeSB0byB1cGRhdGVcblwKK3BhY2thZ2Ugc3RhdGVzLCB5b3UgYXJlIGluIGEgcmVhZC1vbmx5IG1vZGUuICBZb3UgY2FuIG5hdmlnYXRlIGFyb3VuZCB0aGVcblwKK2xpc3QgdXNpbmcgdGhlIGN1cnNvciBrZXlzIChwbGVhc2Ugc2VlIHRoZSBgS2V5c3Ryb2tlcycgaGVscCBzY3JlZW4pLCBvYnNlcnZlXG5cCit0aGUgc3RhdHVzIG9mIHRoZSBwYWNrYWdlcyBhbmQgcmVhZCBpbmZvcm1hdGlvbiBhYm91dCB0aGVtLlxuXG5cCitcCitZb3Ugc2hvdWxkIHJlYWQgdGhlIGxpc3Qgb2Yga2V5cyBhbmQgdGhlIGV4cGxhbmF0aW9ucyBvZiB0aGUgZGlzcGxheS5cblwKK011Y2ggb24tbGluZSBoZWxwIGlzIGF2YWlsYWJsZSwgcGxlYXNlIG1ha2UgdXNlIG9mIGl0IC0gcHJlc3MgYD8nIGF0XG5cCithbnkgdGltZSBmb3IgaGVscC5cblxuXAorXAorV2hlbiB5b3UgaGF2ZSBmaW5pc2hlZCBicm93c2luZywgcHJlc3MgYFEnIG9yIDxlbnRlcj4gdG8gcXVpdC5cblxuXAorXAorUHJlc3MgPHNwYWNlPiB0byBsZWF2ZSBoZWxwIGFuZCBlbnRlciB0aGUgbGlzdCBub3cuXG4iKQorfTsKKworY29uc3Qgc3RydWN0IGhlbHBtZXNzYWdlIGhscF9yZWN1cmludHJvID0geworICBOXygiSW50cm9kdWN0aW9uIHRvIGNvbmZsaWN0L2RlcGVuZGVuY3kgcmVzb2x1dGlvbiBzdWItbGlzdCIpLCBOXygiXAorRGVwZW5kZW5jeS9jb25mbGljdCByZXNvbHV0aW9uIC0gaW50cm9kdWN0aW9uLlxuXG5cCitcCitPbmUgb3IgbW9yZSBvZiB5b3VyIGNob2ljZXMgaGF2ZSByYWlzZWQgYSBjb25mbGljdCBvciBkZXBlbmRlbmN5IHByb2JsZW0gLVxuXAorc29tZSBwYWNrYWdlcyBzaG91bGQgb25seSBiZSBpbnN0YWxsZWQgaW4gY29uanVuY3Rpb24gd2l0aCBjZXJ0YWluIG90aGVycywgYW5kXG5cCitzb21lIGNvbWJpbmF0aW9ucyBvZiBwYWNrYWdlcyBtYXkgbm90IGJlIGluc3RhbGxlZCB0b2dldGhlci5cblxuXAorXAorWW91IHdpbGwgc2VlIGEgc3ViLWxpc3QgY29udGFpbmluZyB0aGUgcGFja2FnZXMgaW52b2x2ZWQuICBUaGUgYm90dG9tIGhhbGYgb2ZcblwKK3RoZSBkaXNwbGF5IHNob3dzIHJlbGV2YW50IGNvbmZsaWN0cyBhbmQgZGVwZW5kZW5jaWVzOyB1c2UgYGknIHRvIGN5Y2xlIGJldHdlZW5cblwKK3RoYXQsIHRoZSBwYWNrYWdlIGRlc2NyaXB0aW9ucyBhbmQgdGhlIGludGVybmFsIGNvbnRyb2wgaW5mb3JtYXRpb24uXG5cblwKK1wKK0Egc2V0IG9mIGBzdWdnZXN0ZWQnIHBhY2thZ2VzIGhhcyBiZWVuIGNhbGN1bGF0ZWQsIGFuZCB0aGUgaW5pdGlhbCBtYXJraW5ncyBpblxuXAordGhpcyBzdWItbGlzdCBoYXZlIGJlZW4gc2V0IHRvIG1hdGNoIHRob3NlLCBzbyB5b3UgY2FuIGp1c3QgaGl0IFJldHVybiB0b1xuXAorYWNjZXB0IHRoZSBzdWdnZXN0aW9ucyBpZiB5b3Ugd2lzaC4gIFlvdSBtYXkgYWJvcnQgdGhlIGNoYW5nZShzKSB3aGljaCBjYXVzZWRcblwKK3RoZSBwcm9ibGVtKHMpLCBhbmQgZ28gYmFjayB0byB0aGUgbWFpbiBsaXN0LCBieSBwcmVzc2luZyBjYXBpdGFsIGBYJy5cblxuXAorXAorWW91IGNhbiBhbHNvIG1vdmUgYXJvdW5kIHRoZSBsaXN0IGFuZCBjaGFuZ2UgdGhlIG1hcmtpbmdzIHNvIHRoYXQgdGhleSBhcmUgbW9yZVxuXAorbGlrZSB3aGF0IHlvdSB3YW50LCBhbmQgeW91IGNhbiBgcmVqZWN0JyBteSBzdWdnZXN0aW9ucyBieSB1c2luZyB0aGUgY2FwaXRhbFxuXAorYEQnIG9yIGBSJyBrZXlzIChzZWUgdGhlIGtleWJpbmRpbmdzIGhlbHAgc2NyZWVuKS4gIFlvdSBjYW4gdXNlIGNhcGl0YWwgYFEnIHRvXG5cCitmb3JjZSBtZSB0byBhY2NlcHQgdGhlIHNpdHVhdGlvbiBjdXJyZW50bHkgZGlzcGxheWVkLCBpbiBjYXNlIHlvdSB3YW50IHRvXG5cCitvdmVycmlkZSBhIHJlY29tbWVuZGF0aW9uIG9yIHRoaW5rIHRoYXQgdGhlIHByb2dyYW0gaXMgbWlzdGFrZW4uXG5cblwKK1wKK1ByZXNzIDxzcGFjZT4gdG8gbGVhdmUgaGVscCBhbmQgZW50ZXIgdGhlIHN1Yi1saXN0OyByZW1lbWJlcjogcHJlc3MgYD8nIGZvciBoZWxwLlxuIikKK307CisKK2NvbnN0IHN0cnVjdCBoZWxwbWVzc2FnZSBobHBfZGlzcGxheWV4cGxhaW4xID0geworICBOXygiRGlzcGxheSwgcGFydCAxOiBwYWNrYWdlIGxpc3RpbmcgYW5kIHN0YXR1cyBjaGFycyIpLCBOXygiXAorVGhlIHRvcCBoYWxmIG9mIHRoZSBzY3JlZW4gc2hvd3MgYSBsaXN0IG9mIHBhY2thZ2VzLiAgRm9yIGVhY2ggcGFja2FnZSB5b3Ugc2VlXG5cCitmb3VyIGNvbHVtbnMgZm9yIGl0cyBjdXJyZW50IHN0YXR1cyBvbiB0aGUgc3lzdGVtIGFuZCBtYXJrLiAgSW4gdGVyc2UgbW9kZSAodXNlXG5cCitgdicgdG8gdG9nZ2xlIHZlcmJvc2UgZGlzcGxheSkgdGhlc2UgYXJlIHNpbmdsZSBjaGFyYWN0ZXJzLCBmcm9tIGxlZnQgdG8gcmlnaHQ6XG5cblwKK1wKKyBFcnJvciBmbGFnOiBTcGFjZSAtIG5vIGVycm9yIChidXQgcGFja2FnZSBtYXkgYmUgaW4gYnJva2VuIHN0YXRlIC0gc2VlIGJlbG93KVxuXAorICAgICAgICAgICAgICBgUicgIC0gc2VyaW91cyBlcnJvciBkdXJpbmcgaW5zdGFsbGF0aW9uLCBuZWVkcyByZWluc3RhbGxhdGlvbjtcblwKKyBJbnN0YWxsZWQgc3RhdGU6ICAgICBTcGFjZSAgICAtIG5vdCBpbnN0YWxsZWQ7XG5cCisgICAgICAgICAgICAgICAgICAgICAgIGAqJyAgICAgLSBpbnN0YWxsZWQ7XG5cCisgICAgICAgICAgICAgICAgICAgICAgIGAtJyAgICAgLSBub3QgaW5zdGFsbGVkIGJ1dCBjb25maWcgZmlsZXMgcmVtYWluO1xuXAorICAgcGFja2FnZXMgaW4gdGhlc2UgeyBgVScgICAgIC0gdW5wYWNrZWQgYnV0IG5vdCB5ZXQgY29uZmlndXJlZDtcblwKKyAgIHN0YXRlcyBhcmUgbm90ICAgIHsgYEMnICAgICAtIGhhbGYtY29uZmlndXJlZCAoYW4gZXJyb3IgaGFwcGVuZWQpO1xuXAorICAgKHF1aXRlKSBwcm9wZXJseSAgeyBgSScgICAgIC0gaGFsZi1pbnN0YWxsZWQgKGFuIGVycm9yIGhhcHBlbmVkKTtcblwKKyAgIGluc3RhbGxlZCAgICAgICAgIHsgYFcnLGB0JyAtIHRyaWdnZXJzIGFyZSBhd2FpdGVkIHJlc3AuIHBlbmRpbmcuXG5cCisgT2xkIG1hcms6IHdoYXQgd2FzIHJlcXVlc3RlZCBmb3IgdGhpcyBwYWNrYWdlIGJlZm9yZSBwcmVzZW50aW5nIHRoaXMgbGlzdDtcblwKKyBNYXJrOiB3aGF0IGlzIHJlcXVlc3RlZCBmb3IgdGhpcyBwYWNrYWdlOlxuXAorICBgKic6IG1hcmtlZCBmb3IgaW5zdGFsbGF0aW9uIG9yIHVwZ3JhZGU7XG5cCisgIGAtJzogbWFya2VkIGZvciByZW1vdmFsLCBidXQgYW55IGNvbmZpZ3VyYXRpb24gZmlsZXMgd2lsbCByZW1haW47XG5cCisgIGA9Jzogb24gaG9sZDogcGFja2FnZSB3aWxsIG5vdCBiZSBwcm9jZXNzZWQgYXQgYWxsO1xuXAorICBgXyc6IG1hcmtlZCBmb3IgcHVyZ2UgY29tcGxldGVseSAtIGV2ZW4gcmVtb3ZlIGNvbmZpZ3VyYXRpb247XG5cCisgIGBuJzogcGFja2FnZSBpcyBuZXcgYW5kIGhhcyB5ZXQgdG8gYmUgbWFya2VkIGZvciBpbnN0YWxsL3JlbW92ZS8mYy5cblxuXAorXAorQWxzbyBkaXNwbGF5ZWQgYXJlIGVhY2ggcGFja2FnZSdzIFByaW9yaXR5LCBTZWN0aW9uLCBuYW1lLCBpbnN0YWxsZWQgYW5kXG5cCithdmFpbGFibGUgdmVyc2lvbiBudW1iZXJzIChzaGlmdC1WIHRvIGRpc3BsYXkvaGlkZSkgYW5kIHN1bW1hcnkgZGVzY3JpcHRpb24uXG4iKQorfTsKKworY29uc3Qgc3RydWN0IGhlbHBtZXNzYWdlIGhscF9kaXNwbGF5ZXhwbGFpbjIgPSB7CisgIE5fKCJEaXNwbGF5LCBwYXJ0IDI6IGxpc3QgaGlnaGxpZ2h0OyBpbmZvcm1hdGlvbiBkaXNwbGF5IiksIE5fKCJcCisqIEhpZ2hsaWdodDogT25lIGxpbmUgaW4gdGhlIHBhY2thZ2UgbGlzdCB3aWxsIGJlIGhpZ2hsaWdodGVkLiAgSXQgaW5kaWNhdGVzXG5cCisgIHdoaWNoIHBhY2thZ2Uocykgd2lsbCBiZSBhZmZlY3RlZCBieSBwcmVzc2VzIG9mIGArJywgYC0nIGFuZCBgXycuXG5cblwKK1wKKyogVGhlIGRpdmlkaW5nIGxpbmUgaW4gdGhlIG1pZGRsZSBvZiB0aGUgc2NyZWVuIHNob3dzIGEgYnJpZWYgZXhwbGFuYXRpb24gb2ZcblwKKyAgdGhlIHN0YXR1cyBvZiB0aGUgY3VycmVudGx5LWhpZ2hsaWdodGVkIHBhY2thZ2UsIG9yIGEgZGVzY3JpcHRpb24gb2Ygd2hpY2hcblwKKyAgZ3JvdXAgaXMgaGlnaGxpZ2h0ZWQgaWYgYSBncm91cCBsaW5lIGlzLiAgSWYgeW91IGRvbid0IHVuZGVyc3RhbmQgdGhlXG5cCisgIG1lYW5pbmcgb2Ygc29tZSBvZiB0aGUgc3RhdHVzIGNoYXJhY3RlcnMgZGlzcGxheWVkLCBnbyB0byB0aGUgcmVsZXZhbnRcblwKKyAgcGFja2FnZSBhbmQgbG9vayBhdCB0aGlzIGRpdmlkZXIgbGluZSwgb3IgdXNlIHRoZSBgdicga2V5IGZvciBhIHZlcmJvc2VcblwKKyAgZGlzcGxheSAocHJlc3MgYHYnIGFnYWluIHRvIGdvIGJhY2sgdG8gdGhlIHRlcnNlIGRpc3BsYXkpLlxuXG5cCitcCisqIFRoZSBib3R0b20gb2YgdGhlIHNjcmVlbiBzaG93cyBtb3JlIGluZm9ybWF0aW9uIGFib3V0IHRoZVxuXAorICBjdXJyZW50bHktaGlnaGxpZ2h0ZWQgcGFja2FnZSAoaWYgdGhlcmUgaXMgb25seSBvbmUpLlxuXG5cCitcCisgIEl0IGNhbiBzaG93IGFuIGV4dGVuZGVkIGRlc2NyaXB0aW9uIG9mIHRoZSBwYWNrYWdlLCB0aGUgaW50ZXJuYWwgcGFja2FnZVxuXAorICBjb250cm9sIGRldGFpbHMgKGVpdGhlciBmb3IgdGhlIGluc3RhbGxlZCBvciBhdmFpbGFibGUgdmVyc2lvbiBvZiB0aGVcblwKKyAgcGFja2FnZSksIG9yIGluZm9ybWF0aW9uIGFib3V0IGNvbmZsaWN0cyBhbmQgZGVwZW5kZW5jaWVzIGludm9sdmluZyB0aGVcblwKKyAgY3VycmVudCBwYWNrYWdlIChpbiBjb25mbGljdC9kZXBlbmRlbmN5IHJlc29sdXRpb24gc3VibGlzdHMpLlxuXG5cCitcCisgIFVzZSB0aGUgYGknIGtleSB0byBjeWNsZSB0aHJvdWdoIHRoZSBkaXNwbGF5cywgYW5kIGBJJyB0byBoaWRlIHRoZVxuXAorICBpbmZvcm1hdGlvbiBkaXNwbGF5IG9yIGV4cGFuZCBpdCB0byB1c2UgYWxtb3N0IGFsbCBvZiB0aGUgc2NyZWVuLlxuIikKK307CisKK2NvbnN0IHN0cnVjdCBoZWxwbWVzc2FnZSBobHBfbWV0aGludHJvID0geworICBOXygiSW50cm9kdWN0aW9uIHRvIG1ldGhvZCBzZWxlY3Rpb24gZGlzcGxheSIpLCBOXygiXAorZHNlbGVjdCBhbmQgZHBrZyBjYW4gZG8gYXV0b21hdGljIGluc3RhbGxhdGlvbiwgbG9hZGluZyB0aGUgcGFja2FnZSBmaWxlcyB0byBiZVxuXAoraW5zdGFsbGVkIGZyb20gb25lIG9mIGEgbnVtYmVyIG9mIGRpZmZlcmVudCBwb3NzaWJsZSBwbGFjZXMuXG5cblwKK1wKK1RoaXMgbGlzdCBhbGxvd3MgeW91IHRvIHNlbGVjdCBvbmUgb2YgdGhlc2UgaW5zdGFsbGF0aW9uIG1ldGhvZHMuXG5cblwKK1wKK01vdmUgdGhlIGhpZ2hsaWdodCB0byB0aGUgbWV0aG9kIHlvdSB3aXNoIHRvIHVzZSwgYW5kIGhpdCBFbnRlci4gIFlvdSB3aWxsIHRoZW5cblwKK2JlIHByb21wdGVkIGZvciB0aGUgaW5mb3JtYXRpb24gcmVxdWlyZWQgdG8gZG8gdGhlIGluc3RhbGxhdGlvbi5cblxuXAorXAorQXMgeW91IG1vdmUgdGhlIGhpZ2hsaWdodCBhIGRlc2NyaXB0aW9uIG9mIGVhY2ggbWV0aG9kLCB3aGVyZSBhdmFpbGFibGUsIGlzXG5cCitkaXNwbGF5ZWQgaW4gdGhlIGJvdHRvbSBoYWxmIG9mIHRoZSBzY3JlZW4uXG5cblwKK1wKK0lmIHlvdSB3aXNoIHRvIHF1aXQgd2l0aG91dCBjaGFuZ2luZyBhbnl0aGluZyB1c2UgdGhlIGB4JyBrZXkgd2hpbGUgaW4gdGhlIGxpc3RcblwKK29mIGluc3RhbGxhdGlvbiBtZXRob2RzLlxuXG5cCitcCitBIGZ1bGwgbGlzdCBvZiBrZXlzdHJva2VzIGlzIGF2YWlsYWJsZSBieSBwcmVzc2luZyBgaycgbm93LCBvciBmcm9tIHRoZSBoZWxwXG5cCittZW51IHJlYWNoYWJsZSBieSBwcmVzc2luZyBgPycuXG4iKQorfTsKKworY29uc3Qgc3RydWN0IGhlbHBtZXNzYWdlIGhscF9tZXRoa2V5cyA9IHsKKyAgTl8oIktleXN0cm9rZXMgZm9yIG1ldGhvZCBzZWxlY3Rpb24iKSwgTl8oIlwKK01vdGlvbiBrZXlzOiBOZXh0L1ByZXZpb3VzLCBUb3AvRW5kLCBVcC9Eb3duLCBCYWNrd2FyZHMvRm9yd2FyZHM6XG5cCisgIGosIERvd24tYXJyb3cgICAgICAgICBrLCBVcC1hcnJvdyAgICAgICAgICAgICBtb3ZlIGhpZ2hsaWdodFxuXAorICBOLCBQYWdlLWRvd24sIFNwYWNlICAgUCwgUGFnZS11cCwgQmFja3NwYWNlICAgc2Nyb2xsIGxpc3QgYnkgMSBwYWdlXG5cCisgIF5uICAgICAgICAgICAgICAgICAgICBecCAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgbGlzdCBieSAxIGxpbmVcblwKKyAgdCwgSG9tZSAgICAgICAgICAgICAgIGUsIEVuZCAgICAgICAgICAgICAgICAgIGp1bXAgdG8gdG9wL2VuZCBvZiBsaXN0XG5cCisgIHUgICAgICAgICAgICAgICAgICAgICBkICAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyBieSAxIHBhZ2VcblwKKyAgXnUgICAgICAgICAgICAgICAgICAgIF5kICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIGJ5IDEgbGluZVxuXAorICBCLCBMZWZ0LWFycm93ICAgICAgICAgRiwgUmlnaHQtYXJyb3cgICAgICAgICAgcGFuIGRpc3BsYXkgYnkgMS8zIHNjcmVlblxuXAorICBeYiAgICAgICAgICAgICAgICAgICAgXmYgICAgICAgICAgICAgICAgICAgICAgcGFuIGRpc3BsYXkgYnkgMSBjaGFyYWN0ZXJcblwKKyhUaGVzZSBhcmUgdGhlIHNhbWUgbW90aW9uIGtleXMgYXMgaW4gdGhlIHBhY2thZ2UgbGlzdCBkaXNwbGF5LilcblxuXAorXAorUXVpdDpcblwKKyBSZXR1cm4sIEVudGVyICAgIHNlbGVjdCB0aGlzIG1ldGhvZCBhbmQgZ28gdG8gaXRzIGNvbmZpZ3VyYXRpb24gZGlhbG9ndWVcblwKKyB4LCBYICAgICAgICAgICAgIGV4aXQgd2l0aG91dCBjaGFuZ2luZyBvciBzZXR0aW5nIHVwIHRoZSBpbnN0YWxsYXRpb24gbWV0aG9kXG5cblwKK1wKK01pc2NlbGxhbmVvdXM6XG5cCisgID8sIEhlbHAsIEYxICAgICAgcmVxdWVzdCBoZWxwXG5cCisgXmwgICAgICAgICAgICAgICAgcmVkcmF3IGRpc3BsYXlcblwKKyAgLyAgICAgICAgICAgICAgICBzZWFyY2ggKGp1c3QgcmV0dXJuIHRvIGNhbmNlbClcblwKKyAgXFwgICAgICAgICAgICAgICAgcmVwZWF0IGxhc3Qgc2VhcmNoXG4iKQorfTsKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9oZWxwbXNncy5oIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L2hlbHBtc2dzLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzhjNDBjNQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9oZWxwbXNncy5oCkBAIC0wLDAgKzEsMzggQEAKKy8qCisgKiBkc2VsZWN0IC0gRGViaWFuIHBhY2thZ2UgbWFpbnRlbmFuY2UgdXNlciBpbnRlcmZhY2UKKyAqIGhlbHBtc2dzLmggLSBleHRlcm5hbCBkZWZpbml0aW9ucyBmb3IgdGhlIGxpc3Qgb2YgaGVscCBtZXNzYWdlcworICoKKyAqIENvcHlyaWdodCDCqSAxOTk1IElhbiBKYWNrc29uIDxpYW5AY2hpYXJrLmdyZWVuZW5kLm9yZy51az4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworI2lmbmRlZiBIRUxQTVNHU19ICisjZGVmaW5lIEhFTFBNU0dTX0gKKworc3RydWN0IGhlbHBtZXNzYWdlIHsKKyAgY29uc3QgY2hhciAqdGl0bGU7CisgIGNvbnN0IGNoYXIgKnRleHQ7Cit9OworCitleHRlcm4gY29uc3Qgc3RydWN0IGhlbHBtZXNzYWdlIGhscF9saXN0a2V5czsKK2V4dGVybiBjb25zdCBzdHJ1Y3QgaGVscG1lc3NhZ2UgaGxwX21haW5pbnRybzsKK2V4dGVybiBjb25zdCBzdHJ1Y3QgaGVscG1lc3NhZ2UgaGxwX3JlYWRvbmx5aW50cm87CitleHRlcm4gY29uc3Qgc3RydWN0IGhlbHBtZXNzYWdlIGhscF9yZWN1cmludHJvOworZXh0ZXJuIGNvbnN0IHN0cnVjdCBoZWxwbWVzc2FnZSBobHBfZGlzcGxheWV4cGxhaW4xOworZXh0ZXJuIGNvbnN0IHN0cnVjdCBoZWxwbWVzc2FnZSBobHBfZGlzcGxheWV4cGxhaW4yOworZXh0ZXJuIGNvbnN0IHN0cnVjdCBoZWxwbWVzc2FnZSBobHBfbWV0aGludHJvOworZXh0ZXJuIGNvbnN0IHN0cnVjdCBoZWxwbWVzc2FnZSBobHBfbWV0aGtleXM7CisKKyNlbmRpZiAvKiBIRUxQTVNHU19IICovCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2RzZWxlY3Qva2V5b3ZlcnJpZGUgYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3Qva2V5b3ZlcnJpZGUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNmVjN2Y1YgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9rZXlvdmVycmlkZQpAQCAtMCwwICsxLDU4IEBACisjIGRzZWxlY3QgLSBEZWJpYW4gcGFja2FnZSBtYWludGVuYW5jZSB1c2VyIGludGVyZmFjZQorIyBrZXlvdmVycmlkZSAtIG92ZXJyaWRlIHN0cmluZ3MgZm9yIG5jdXJzZXMga2V5IG5hbWVzCisjCisjIENvcHlyaWdodCDCqSAxOTk1IElhbiBKYWNrc29uIDxpYW5AY2hpYXJrLmdyZWVuZW5kLm9yZy51az4KKyMKKyMgVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisjIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisjIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisjIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisjCisjIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorIworIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKworMzIJCVNwYWNlCisxMwkJUmV0dXJuCisyNwkJRXNjYXBlCisyOAkJXlwKKzI5CQleXQorMzAJCV5eCiszMQkJXl8KKzM0CQlRdW90ZQorMzkJCUFwb3N0cm9waGUKKzQ0CQlDb21tYQorNDUJCUh5cGhlbgorNDcJCVNsYXNoCis1OQkJU2VtaWNvbG9uCis5MgkJQmFja3NsYXNoCis5NgkJQmFja3F1b3RlCisxMjcJCURFTAorS0VZX1VQCQlVcAorS0VZX0RPV04JRG93bgorS0VZX1JJR0hUCVJpZ2h0CitLRVlfTEVGVAlMZWZ0CitLRVlfSUMJCUluc2VydAorS0VZX1NJQwkJU2hpZnQgSW5zZXJ0CitLRVlfREMJCURlbGV0ZQorS0VZX1NEQwkJU2hpZnQgRGVsZXRlCitLRVlfTlBBR0UJUGFnZSBEb3duCitLRVlfUFBBR0UJUGFnZSBVcAorS0VZX0NBVEFCCUNsZWFyIFRhYnMKK0tFWV9FSUMJCUVJQworS0VZX0VPTAkJRU9MCitLRVlfU0VPTAlTaGlmdCBFT0wKK0tFWV9FT1MJCUVPUworS0VZX0xMCQlCb3R0b20KK0tFWV9TRgkJU2Nyb2xsIEZvcndhcmQKK0tFWV9TUgkJU2Nyb2xsIFJldmVyc2UKK0tFWV9TUkVTRVQJU29mdCBSZXNldAorS0VZX1NMRUZUCVNoaWZ0IExlZnQKK0tFWV9TUklHSFQJU2hpZnQgUmlnaHQKK0tFWV9TUFJFVklPVVMJU2hpZnQgUHJldmlvdXMKK0tFWV9NQVgJCVtlbGlkZV0KK0tFWV9NSU4JCVtlbGlkZV0KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9tYWluLmNjIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L21haW4uY2MKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjUwOGIxZgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9tYWluLmNjCkBAIC0wLDAgKzEsNTQxIEBACisvKgorICogZHNlbGVjdCAtIERlYmlhbiBwYWNrYWdlIG1haW50ZW5hbmNlIHVzZXIgaW50ZXJmYWNlCisgKiBtYWluLmNjIC0gbWFpbiBwcm9ncmFtCisgKgorICogQ29weXJpZ2h0IMKpIDE5OTQsMTk5NSBJYW4gSmFja3NvbiA8aWFuQGNoaWFyay5ncmVlbmVuZC5vcmcudWs+CisgKiBDb3B5cmlnaHQgwqkgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisgKgorICogVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisgKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAqIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorICovCisKKyNpbmNsdWRlIDxjb25maWcuaD4KKyNpbmNsdWRlIDxjb21wYXQuaD4KKworI2luY2x1ZGUgPHN5cy90eXBlcy5oPgorI2luY2x1ZGUgPHN5cy9zdGF0Lmg+CisjaW5jbHVkZSA8c3lzL3dhaXQuaD4KKworI2luY2x1ZGUgPGFzc2VydC5oPgorI2luY2x1ZGUgPGVycm5vLmg+CisjaW5jbHVkZSA8bGltaXRzLmg+CisjaWYgSEFWRV9MT0NBTEVfSAorI2luY2x1ZGUgPGxvY2FsZS5oPgorI2VuZGlmCisjaW5jbHVkZSA8Y3R5cGUuaD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDxmY250bC5oPgorI2luY2x1ZGUgPGRpcmVudC5oPgorI2luY2x1ZGUgPHVuaXN0ZC5oPgorI2luY2x1ZGUgPHN0ZGxpYi5oPgorI2luY2x1ZGUgPHN0ZGlvLmg+CisKKyNpZiBkZWZpbmVkKEhBVkVfTkNVUlNFU1dfVEVSTV9IKQorI2luY2x1ZGUgPG5jdXJzZXN3L3Rlcm0uaD4KKyNlbGlmIGRlZmluZWQoSEFWRV9OQ1VSU0VTX1RFUk1fSCkKKyNpbmNsdWRlIDxuY3Vyc2VzL3Rlcm0uaD4KKyNlbHNlCisjaW5jbHVkZSA8dGVybS5oPgorI2VuZGlmCisKKyNpbmNsdWRlIDxkcGtnL2kxOG4uaD4KKyNpbmNsdWRlIDxkcGtnL2Rwa2cuaD4KKyNpbmNsdWRlIDxkcGtnL2Rwa2ctZGIuaD4KKyNpbmNsdWRlIDxkcGtnL29wdGlvbnMuaD4KKworI2luY2x1ZGUgImRzZWxlY3QuaCIKKyNpbmNsdWRlICJiaW5kaW5ncy5oIgorI2luY2x1ZGUgInBrZ2xpc3QuaCIKKworc3RhdGljIGNvbnN0IGNoYXIgcHJpbnRmb3JoZWxwW10gPSBOXygiVHlwZSBkc2VsZWN0IC0taGVscCBmb3IgaGVscC4iKTsKKworbW9kc3RhdGRiX3J3IHJlYWR3cml0ZTsKK2ludCBleHBlcnRtb2RlPSAwOworCitzdGF0aWMgY29uc3QgY2hhciAqYWRtaW5kaXIgPSBBRE1JTkRJUjsKKworc3RhdGljIGtleWJpbmRpbmdzIHBhY2thZ2VsaXN0YmluZGluZ3MocGFja2FnZWxpc3Rfa2ludGVycHMscGFja2FnZWxpc3Rfa29yZ2JpbmRpbmdzKTsKKworc3RydWN0IHRhYmxlX3QgeworICBjb25zdCBjaGFyICpuYW1lOworICBjb25zdCBpbnQgbnVtOworfTsKKworc3RhdGljIGNvbnN0IHN0cnVjdCB0YWJsZV90IGNvbG91cnRhYmxlW109IHsKKyAgeyJibGFjayIsCUNPTE9SX0JMQUNLCX0sCisgIHsicmVkIiwJQ09MT1JfUkVECX0sCisgIHsiZ3JlZW4iLAlDT0xPUl9HUkVFTgl9LAorICB7InllbGxvdyIsCUNPTE9SX1lFTExPVwl9LAorICB7ImJsdWUiLAlDT0xPUl9CTFVFCX0sCisgIHsibWFnZW50YSIsCUNPTE9SX01BR0VOVEEJfSwKKyAgeyJjeWFuIiwJQ09MT1JfQ1lBTgl9LAorICB7IndoaXRlIiwJQ09MT1JfV0hJVEUJfSwKKyAge05VTEwsIDB9LAorfTsKKworc3RhdGljIGNvbnN0IHN0cnVjdCB0YWJsZV90IGF0dHJ0YWJsZVtdPSB7CisgIHsibm9ybWFsIiwJQV9OT1JNQUwJfSwKKyAgeyJzdGFuZG91dCIsCUFfU1RBTkRPVVQJfSwKKyAgeyJ1bmRlcmxpbmUiLAlBX1VOREVSTElORQl9LAorICB7InJldmVyc2UiLAlBX1JFVkVSU0UJfSwKKyAgeyJibGluayIsCUFfQkxJTksJCX0sCisgIHsiYnJpZ2h0IiwJQV9CTElOSwkJfSwgLy8gb24gc29tZSB0ZXJtaW5hbHMKKyAgeyJkaW0iLAlBX0RJTQkJfSwKKyAgeyJib2xkIiwJQV9CT0xECQl9LAorICB7TlVMTCwgMH0sCit9OworCisvKiBBIHNsaWdodGx5IGNvbmZ1c2luZyBtYXBwaW5nIGZyb20gZHNlbGVjdCdzIGludGVybmFsIG5hbWVzIHRvCisgKiB0aGUgdXNlci12aXNpYmxlIG5hbWVzLiovCitzdGF0aWMgY29uc3Qgc3RydWN0IHRhYmxlX3Qgc2NyZWVucGFydHRhYmxlW109IHsKKyAgeyJsaXN0IiwJCWxpc3QJCX0sCisgIHsibGlzdHNlbCIsCQlsaXN0c2VsCQl9LAorICB7InRpdGxlIiwJCXRpdGxlCQl9LAorICB7ImluZm9oZWFkIiwJCXRoaXNzdGF0ZQl9LAorICB7InBrZ3N0YXRlIiwJCXNlbHN0YXRlCX0sCisgIHsicGtnc3RhdGVzZWwiLAlzZWxzdGF0ZXNlbAl9LAorICB7Imxpc3RoZWFkIiwJCWNvbGhlYWRzCX0sCisgIHsicXVlcnkiLAkJcXVlcnkJCX0sCisgIHsiaW5mbyIsCQlpbmZvCQl9LAorICB7ImluZm9kZXNjIiwJCWluZm9faGVhZAl9LAorICB7ImluZm9mb290IiwJCXdoYXRpbmZvCX0sCisgIHsiaGVscHNjcmVlbiIsCWhlbHBzY3JlZW4JfSwKKyAge05VTEwsIDB9LAorfTsKKworLyogSGlzdG9yaWNhbCAocGF0cmlvdGljPykgY29sb3Vycy4gKi8KK3N0cnVjdCBjb2xvcmRhdGEgY29sb3JbXT0geworICAvKiBmb3JlICAgICAgYmFjayAgICAgICAgICAgIGF0dHIgKi8KKyAge0NPTE9SX1dISVRFLCAgICAgICAgQ09MT1JfQkxBQ0ssICAgIDAJCQl9LCAvLyBkZWZhdWx0LCBub3QgdXNlZAorICB7Q09MT1JfV0hJVEUsICAgICAgICBDT0xPUl9CTEFDSywgICAgMAkJCX0sIC8vIGxpc3QKKyAge0NPTE9SX1dISVRFLCAgICAgICAgQ09MT1JfQkxBQ0ssICAgIEFfUkVWRVJTRQkJfSwgLy8gbGlzdHNlbAorICB7Q09MT1JfV0hJVEUsICAgICAgICBDT0xPUl9SRUQsICAgICAgMAkJCX0sIC8vIHRpdGxlCisgIHtDT0xPUl9XSElURSwgICAgICAgIENPTE9SX0JMVUUsICAgICAwCQkJfSwgLy8gdGhpc3N0YXRlCisgIHtDT0xPUl9XSElURSwgICAgICAgIENPTE9SX0JMQUNLLCAgICBBX0JPTEQJCQl9LCAvLyBzZWxzdGF0ZQorICB7Q09MT1JfV0hJVEUsICAgICAgICBDT0xPUl9CTEFDSywgICAgQV9SRVZFUlNFIHwgQV9CT0xECX0sIC8vIHNlbHN0YXRlc2VsCisgIHtDT0xPUl9XSElURSwgICAgICAgIENPTE9SX0JMVUUsICAgICAwCQkJfSwgLy8gY29saGVhZHMKKyAge0NPTE9SX1dISVRFLCAgICAgICAgQ09MT1JfUkVELCAgICAgIDAJCQl9LCAvLyBxdWVyeQorICB7Q09MT1JfV0hJVEUsICAgICAgICBDT0xPUl9CTEFDSywgICAgMAkJCX0sIC8vIGluZm8KKyAge0NPTE9SX1dISVRFLCAgICAgICAgQ09MT1JfQkxBQ0ssICAgIEFfQk9MRAkJCX0sIC8vIGluZm9faGVhZAorICB7Q09MT1JfV0hJVEUsICAgICAgICBDT0xPUl9CTFVFLCAgICAgMAkJCX0sIC8vIHdoYXRpbmZvCisgIHtDT0xPUl9XSElURSwgICAgICAgIENPTE9SX0JMQUNLLCAgICAwCQkJfSwgLy8gaGVscAorfTsKKworc3RydWN0IG1lbnVlbnRyeSB7CisgIGNvbnN0IGNoYXIgKmNvbW1hbmQ7CisgIGNvbnN0IGNoYXIgKmtleTsKKyAgY29uc3QgY2hhciAqb3B0aW9uOworICBjb25zdCBjaGFyICptZW51ZW50OworICB1cnFmdW5jdGlvbiAqZm47Cit9OworCitzdGF0aWMgY29uc3QgbWVudWVudHJ5IG1lbnVlbnRyaWVzW109IHsKKyAgeyAiYWNjZXNzIiwJTl8oImEiKSwJTl8oIltBXWNjZXNzIiksCU5fKCJDaG9vc2UgdGhlIGFjY2VzcyBtZXRob2QgdG8gdXNlLiIpLAkJCSZ1cnFfc2V0dXAgICB9LAorICB7ICJ1cGRhdGUiLAlOXygidSIpLAlOXygiW1VdcGRhdGUiKSwJTl8oIlVwZGF0ZSBsaXN0IG9mIGF2YWlsYWJsZSBwYWNrYWdlcywgaWYgcG9zc2libGUuIiksCSZ1cnFfdXBkYXRlICB9LAorICB7ICJzZWxlY3QiLAlOXygicyIpLAlOXygiW1NdZWxlY3QiKSwJTl8oIlJlcXVlc3Qgd2hpY2ggcGFja2FnZXMgeW91IHdhbnQgb24geW91ciBzeXN0ZW0uIiksCSZ1cnFfbGlzdCAgICB9LAorICB7ICJpbnN0YWxsIiwJTl8oImkiKSwJTl8oIltJXW5zdGFsbCIpLE5fKCJJbnN0YWxsIGFuZCB1cGdyYWRlIHdhbnRlZCBwYWNrYWdlcy4iKSwJCSZ1cnFfaW5zdGFsbCB9LAorICB7ICJjb25maWciLAlOXygiYyIpLAlOXygiW0Ndb25maWciKSwJTl8oIkNvbmZpZ3VyZSBhbnkgcGFja2FnZXMgdGhhdCBhcmUgdW5jb25maWd1cmVkLiIpLAkmdXJxX2NvbmZpZyAgfSwKKyAgeyAicmVtb3ZlIiwJTl8oInIiKSwJTl8oIltSXWVtb3ZlIiksCU5fKCJSZW1vdmUgdW53YW50ZWQgc29mdHdhcmUuIiksCQkJJnVycV9yZW1vdmUgIH0sCisgIHsgInF1aXQiLAlOXygicSIpLAlOXygiW1FddWl0IiksCU5fKCJRdWl0IGRzZWxlY3QuIiksCQkJCQkmdXJxX3F1aXQgICAgfSwKKyAgeyAwLAkJMCwgIAkJTl8oIm1lbnUiKSwJMCwJCQkJCQkJJnVycV9tZW51ICAgIH0sCisgIHsgMCB9Cit9OworCitzdGF0aWMgY29uc3QgY2hhciBwcm9ncmFtZGVzY1tdPQorICAgICAgTl8oIkRlYmlhbiBgJXMnIHBhY2thZ2UgaGFuZGxpbmcgZnJvbnRlbmQgdmVyc2lvbiAlcy5cbiIpOworCitzdGF0aWMgY29uc3QgY2hhciBjb3B5cmlnaHRzdHJpbmdbXT0gTl8oCisgICAgICAiQ29weXJpZ2h0IChDKSAxOTk0LTE5OTYgSWFuIEphY2tzb24uXG4iCisgICAgICAiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIpOworCitzdGF0aWMgY29uc3QgY2hhciBsaWNlbnNlc3RyaW5nW109IE5fKAorICAgICAgIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgb3JcbiIKKyAgICAgICJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIpOworCitzdGF0aWMgdm9pZCBEUEtHX0FUVFJfTk9SRVQKK3ByaW50dmVyc2lvbihjb25zdCBzdHJ1Y3QgY21kaW5mbyAqY2ksIGNvbnN0IGNoYXIgKnZhbHVlKQoreworICBwcmludGYoZ2V0dGV4dChwcm9ncmFtZGVzYyksIERTRUxFQ1QsIERQS0dfVkVSU0lPTl9BUkNIKTsKKyAgcHJpbnRmKCIlcyIsIGdldHRleHQoY29weXJpZ2h0c3RyaW5nKSk7CisgIHByaW50ZihnZXR0ZXh0KGxpY2Vuc2VzdHJpbmcpLCBEU0VMRUNUKTsKKworICBtX291dHB1dChzdGRvdXQsIF8oIjxzdGFuZGFyZCBvdXRwdXQ+IikpOworCisgIGV4aXQoMCk7Cit9CisKK3N0YXRpYyB2b2lkIERQS0dfQVRUUl9OT1JFVAordXNhZ2UoY29uc3Qgc3RydWN0IGNtZGluZm8gKmNpLCBjb25zdCBjaGFyICp2YWx1ZSkKK3sKKyAgaW50IGk7CisKKyAgcHJpbnRmKF8oCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIFs8YWN0aW9uPiAuLi5dXG4iCisiXG4iKSwgRFNFTEVDVCk7CisKKyAgcHJpbnRmKF8oCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorIiAgLS1leHBlcnQgICAgICAgICAgICAgICAgICAgVHVybiBvbiBleHBlcnQgbW9kZS5cbiIKKyIgIC0tZGVidWcgPGZpbGU+IHwgLUQ8ZmlsZT4gIFR1cm4gb24gZGVidWdnaW5nLCBzZW5kaW5nIG91dHB1dCB0byA8ZmlsZT4uXG4iCisiICAtLWNvbG91ciB8IC0tY29sb3Igc2NyZWVucGFydDpbZm9yZWdyb3VuZF0sW2JhY2tncm91bmRdWzphdHRyWythdHRyKy4uXV1cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENvbmZpZ3VyZSBzY3JlZW4gY29sb3Vycy5cbiIKKyJcbiIpLCBBRE1JTkRJUik7CisKKyAgcHJpbnRmKF8oCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgICBTaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICAgU2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIpKTsKKworICBwcmludGYoXygKKyJBY3Rpb25zOlxuIgorIiAgYWNjZXNzIHVwZGF0ZSBzZWxlY3QgaW5zdGFsbCBjb25maWcgcmVtb3ZlIHF1aXRcbiIKKyJcbiIpKTsKKworICBwcmludGYoXygiU2NyZWVucGFydHM6XG4iKSk7CisgIGZvciAoaT0wOyBzY3JlZW5wYXJ0dGFibGVbaV0ubmFtZTsgaSsrKQorICAgIHByaW50ZigiICAlcyIsIHNjcmVlbnBhcnR0YWJsZVtpXS5uYW1lKTsKKyAgZnB1dHMoIlxuXG4iLCBzdGRvdXQpOworCisgIHByaW50ZihfKCJDb2xvdXJzOlxuIikpOworICBmb3IgKGk9MDsgY29sb3VydGFibGVbaV0ubmFtZTsgaSsrKQorICAgIHByaW50ZigiICAlcyIsIGNvbG91cnRhYmxlW2ldLm5hbWUpOworICBmcHV0cygiXG5cbiIsIHN0ZG91dCk7CisKKyAgcHJpbnRmKF8oIkF0dHJpYnV0ZXM6XG4iKSk7CisgIGZvciAoaT0wOyBhdHRydGFibGVbaV0ubmFtZTsgaSsrKQorICAgIHByaW50ZigiICAlcyIsIGF0dHJ0YWJsZVtpXS5uYW1lKTsKKyAgZnB1dHMoIlxuXG4iLCBzdGRvdXQpOworCisgIG1fb3V0cHV0KHN0ZG91dCwgXygiPHN0YW5kYXJkIG91dHB1dD4iKSk7CisKKyAgZXhpdCgwKTsKK30KKworLyogVGhlc2UgYXJlIGNhbGxlZCBieSBDIGNvZGUsIHNvIG5lZWQgdG8gaGF2ZSBDIGNhbGxpbmcgY29udmVudGlvbiAqLworZXh0ZXJuICJDIiB7CisKKyAgc3RhdGljIHZvaWQgc2V0ZGVidWcoY29uc3Qgc3RydWN0IGNtZGluZm8qLCBjb25zdCBjaGFyICp2KSB7CisgICAgRklMRSAqZnA7CisKKyAgICBmcCA9IGZvcGVuKHYsICJhIik7CisgICAgaWYgKCFmcCkKKyAgICAgIG9oc2hpdGUoXygiY291bGRuJ3Qgb3BlbiBkZWJ1ZyBmaWxlIGAlLjI1NXMnXG4iKSwgdik7CisgICAgc2V0dmJ1ZihmcCwgMCwgX0lPTkJGLCAwKTsKKworICAgIGRlYnVnX3NldF9vdXRwdXQoZnApOworICAgIGRlYnVnX3NldF9tYXNrKGRiZ19nZW5lcmFsIHwgZGJnX2RlcGNvbik7CisgIH0KKworICBzdGF0aWMgdm9pZCBzZXRleHBlcnQoY29uc3Qgc3RydWN0IGNtZGluZm8qLCBjb25zdCBjaGFyICp2KSB7CisgICAgZXhwZXJ0bW9kZT0gMTsKKyAgfQorCisgIHN0YXRpYyBpbnQKKyAgZmluZGludGFibGUoY29uc3Qgc3RydWN0IHRhYmxlX3QgKnRhYmxlLCBjb25zdCBjaGFyICppdGVtLCBjb25zdCBjaGFyICp0YWJsZW5hbWUpCisgIHsKKyAgICBpbnQgaTsKKworICAgIGZvciAoaT0gMDsgIGl0ZW0gJiYgKHRhYmxlW2ldLm5hbWUhPU5VTEwpOyBpKyspCisgICAgICBpZiAoc3RyY2FzZWNtcChpdGVtLCB0YWJsZVtpXS5uYW1lKSA9PSAwKQorICAgICAgICByZXR1cm4gdGFibGVbaV0ubnVtOworCisgICAgb2hzaGl0KF8oIkludmFsaWQgJXMgYCVzJ1xuIiksIHRhYmxlbmFtZSwgaXRlbSk7CisgIH0KKworICAvKgorICAgKiAgVGhlIHN0cmluZydzIGZvcm1hdCBpczoKKyAgICogICAgc2NyZWVucGFydDpbZm9yZWNvbG9yXVssYmFja2NvbG9yXVs6WzxhdHRyPiwgLi4uXQorICAgKiAgRXhhbXBsZXM6IC0tY29sb3IgdGl0bGU6YmxhY2ssY3lhbjpicmlnaHQrdW5kZXJsaW5lCisgICAqICAgICAgICAgICAgLS1jb2xvciBsaXN0OnJlZCx5ZWxsb3cKKyAgICogICAgICAgICAgICAtLWNvbG9yIGNvbGhlYWRzOixncmVlbjpicmlnaHQKKyAgICogICAgICAgICAgICAtLWNvbG9yIHNlbHN0YXRlOjpyZXZlcnNlICAvLyBkb2Vzbid0IHdvcmsgRklYTUUKKyAgICovCisgIHN0YXRpYyB2b2lkIHNldGNvbG9yKGNvbnN0IHN0cnVjdCBjbWRpbmZvKiwgY29uc3QgY2hhciAqc3RyaW5nKSB7CisgICAgY2hhciAqczsKKyAgICBjaGFyICpjb2xvdXJzLCAqYXR0cmlidXRlcywgKmF0dHJpYiwgKmNvbG91cm5hbWU7CisgICAgaW50IHNjcmVlbnBhcnQsIGF2YWw7CisKKyAgICBzID0gbV9zdHJkdXAoc3RyaW5nKTsgLy8gc3RydG9rIG1vZGlmaWVzIHN0cmluZ3MsIGtlZXAgc3RyaW5nIGNvbnN0CisgICAgc2NyZWVucGFydD0gZmluZGludGFibGUoc2NyZWVucGFydHRhYmxlLCBzdHJ0b2socywgIjoiKSwgXygic2NyZWVuIHBhcnQiKSk7CisgICAgY29sb3Vycz0gc3RydG9rKE5VTEwsICI6Iik7CisgICAgYXR0cmlidXRlcz0gc3RydG9rKE5VTEwsICI6Iik7CisKKyAgICBpZiAoKGNvbG91cnMgPT0gTlVMTCB8fCAhIHN0cmxlbihjb2xvdXJzKSkgJiYKKyAgICAgICAgKGF0dHJpYnV0ZXMgPT0gTlVMTCB8fCAhIHN0cmxlbihhdHRyaWJ1dGVzKSkpIHsKKyAgICAgICBvaHNoaXQoXygiTnVsbCBjb2xvdXIgc3BlY2lmaWNhdGlvblxuIikpOworICAgIH0KKworICAgIGlmIChjb2xvdXJzICE9IE5VTEwgJiYgc3RybGVuKGNvbG91cnMpKSB7CisgICAgICBjb2xvdXJuYW1lPSBzdHJ0b2soY29sb3VycywgIiwiKTsKKyAgICAgIGlmIChjb2xvdXJuYW1lICE9IE5VTEwgJiYgc3RybGVuKGNvbG91cm5hbWUpKSB7CisgICAgICAgIC8vIG5vcm1hbGl6ZSBhdHRyaWJ1dGVzIHRvIHByZXZlbnQgY29uZnVzaW9uCisgICAgICAgIGNvbG9yW3NjcmVlbnBhcnRdLmF0dHI9IEFfTk9STUFMOworICAgICAgIGNvbG9yW3NjcmVlbnBhcnRdLmZvcmU9ZmluZGludGFibGUoY29sb3VydGFibGUsIGNvbG91cm5hbWUsIF8oImNvbG91ciIpKTsKKyAgICAgIH0KKyAgICAgIGNvbG91cm5hbWU9IHN0cnRvayhOVUxMLCAiLCIpOworICAgICAgaWYgKGNvbG91cm5hbWUgIT0gTlVMTCAmJiBzdHJsZW4oY29sb3VybmFtZSkpIHsKKyAgICAgICAgY29sb3Jbc2NyZWVucGFydF0uYXR0cj0gQV9OT1JNQUw7CisgICAgICAgIGNvbG9yW3NjcmVlbnBhcnRdLmJhY2s9ZmluZGludGFibGUoY29sb3VydGFibGUsIGNvbG91cm5hbWUsIF8oImNvbG91ciIpKTsKKyAgICAgIH0KKyAgICB9CisKKyAgICBpZiAoYXR0cmlidXRlcyAhPSBOVUxMICYmIHN0cmxlbihhdHRyaWJ1dGVzKSkgeworICAgICAgZm9yIChhdHRyaWI9IHN0cnRvayhhdHRyaWJ1dGVzLCAiKyIpOworICAgICAgICAgICBhdHRyaWIgIT0gTlVMTCAmJiBzdHJsZW4oYXR0cmliKTsKKyAgICAgICAgICBhdHRyaWI9IHN0cnRvayhOVUxMLCAiKyIpKSB7CisgICAgICAgICAgICAgICBhdmFsPWZpbmRpbnRhYmxlKGF0dHJ0YWJsZSwgYXR0cmliLCBfKCJjb2xvdXIgYXR0cmlidXRlIikpOworICAgICAgICAgICAgICAgaWYgKGF2YWwgPT0gQV9OT1JNQUwpIC8vIHNldCB0byBub3JtYWwKKyAgICAgICAgICAgICAgICAgICAgICAgY29sb3Jbc2NyZWVucGFydF0uYXR0cj0gYXZhbDsKKyAgICAgICAgICAgICAgIGVsc2UgLy8gYWRkIHRvIGV4aXN0aW5nIGF0dHJpYnMKKyAgICAgICAgICAgICAgICAgICAgICAgY29sb3Jbc2NyZWVucGFydF0uYXR0cj0gY29sb3Jbc2NyZWVucGFydF0uYXR0ciB8IGF2YWw7CisgICAgICB9CisgICAgfQorICB9CisKK30gLyogRW5kIG9mIGV4dGVybiAiQyIgKi8KKworc3RhdGljIGNvbnN0IHN0cnVjdCBjbWRpbmZvIGNtZGluZm9zW109IHsKKyAgeyAiYWRtaW5kaXIiLCAgICAgMCwgICAxLCAgMCwgICZhZG1pbmRpciwgIDAgICAgICAgICAgICAgICB9LAorICB7ICJkZWJ1ZyIsICAgICAgICdEJywgIDEsICAwLCAgMCwgICAgICAgICAgc2V0ZGVidWcgICAgICAgIH0sCisgIHsgImV4cGVydCIsICAgICAgJ0UnLCAgMCwgIDAsICAwLCAgICAgICAgICBzZXRleHBlcnQgICAgICAgfSwKKyAgeyAiaGVscCIsICAgICAgICAnaCcsICAwLCAgMCwgIDAsICAgICAgICAgIHVzYWdlICAgICAgICAgICB9LAorICB7ICJ2ZXJzaW9uIiwgICAgICAwLCAgIDAsICAwLCAgMCwgICAgICAgICAgcHJpbnR2ZXJzaW9uICAgIH0sCisgIHsgImNvbG9yIiwgICAgICAgIDAsICAgMSwgIDAsICAwLCAgICAgICAgICBzZXRjb2xvciAgICAgICAgfSwgLyogVVMgc3BlbGxpbmcgKi8KKyAgeyAiY29sb3VyIiwgICAgICAgMCwgICAxLCAgMCwgIDAsICAgICAgICAgIHNldGNvbG9yICAgICAgICB9LCAvKiBVSyBzcGVsbGluZyAqLworICB7IDAsICAgICAgICAgICAgICAwLCAgIDAsICAwLCAgMCwgICAgICAgICAgMCAgICAgICAgICAgICAgIH0KK307CisKK3N0YXRpYyBpbnQgY3Vyc2VzYXJlb249IDA7Cit2b2lkIGN1cnNlc29uKCkgeworICBpZiAoIWN1cnNlc2FyZW9uKSB7CisgICAgY29uc3QgY2hhciAqY3VwLCAqc21zbzsKKyAgICBpbml0c2NyKCk7CisgICAgY3VwPSB0aWdldHN0cigiY3VwIik7CisgICAgc21zbz0gdGlnZXRzdHIoInNtc28iKTsKKyAgICBpZiAoIWN1cCB8fCAhc21zbykgeworICAgICAgZW5kd2luKCk7CisgICAgICBpZiAoIWN1cCkKKyAgICAgICAgZnB1dHMoXygiVGVybWluYWwgZG9lcyBub3QgYXBwZWFyIHRvIHN1cHBvcnQgY3Vyc29yIGFkZHJlc3NpbmcuXG4iKSxzdGRlcnIpOworICAgICAgaWYgKCFzbXNvKQorICAgICAgICBmcHV0cyhfKCJUZXJtaW5hbCBkb2VzIG5vdCBhcHBlYXIgdG8gc3VwcG9ydCBoaWdobGlnaHRpbmcuXG4iKSxzdGRlcnIpOworICAgICAgZnByaW50ZihzdGRlcnIsCisJICAgICAgXygiU2V0IHlvdXIgVEVSTSB2YXJpYWJsZSBjb3JyZWN0bHksIHVzZSBhIGJldHRlciB0ZXJtaW5hbCxcbiIKKwkgICAgICAgICJvciBtYWtlIGRvIHdpdGggdGhlIHBlci1wYWNrYWdlIG1hbmFnZW1lbnQgdG9vbCAlcy5cbiIpLAorCSAgICAgIERQS0cpOworICAgICAgb2hzaGl0KF8oInRlcm1pbmFsIGxhY2tzIG5lY2Vzc2FyeSBmZWF0dXJlcywgZ2l2aW5nIHVwIikpOworICAgIH0KKyAgfQorICBjdXJzZXNhcmVvbj0gMTsKK30KKwordm9pZCBjdXJzZXNvZmYoKSB7CisgIGlmIChjdXJzZXNhcmVvbikgeworICAgIGNsZWFyKCk7CisgICAgcmVmcmVzaCgpOworICAgIGVuZHdpbigpOworICB9CisgIGN1cnNlc2FyZW9uPTA7Cit9CisKK2V4dGVybiB2b2lkICpvcGVyYXRvciBuZXcoc2l6ZV90IHNpemUpIHsKKyAgdm9pZCAqcDsKKyAgcD0gbV9tYWxsb2Moc2l6ZSk7CisgIGFzc2VydChwKTsKKyAgcmV0dXJuIHA7Cit9CisKK2V4dGVybiB2b2lkIG9wZXJhdG9yIGRlbGV0ZSh2b2lkICpwKSB7CisgIGZyZWUocCk7Cit9CisKK3VycXJlc3VsdCB1cnFfbGlzdCh2b2lkKSB7CisgIHJlYWR3cml0ZSA9IG1vZHN0YXRkYl9vcGVuKChtb2RzdGF0ZGJfcncpKG1zZGJyd193cml0ZWlmcG9zcyB8CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1zZGJyd19hdmFpbGFibGVfcmVhZG9ubHkpKTsKKworICBjdXJzZXNvbigpOworCisgIHBhY2thZ2VsaXN0ICpsPSBuZXcgcGFja2FnZWxpc3QoJnBhY2thZ2VsaXN0YmluZGluZ3MpOworICBsLT5yZXNvbHZlc3VnZ2VzdCgpOworICBsLT5kaXNwbGF5KCk7CisgIGRlbGV0ZSBsOworCisgIG1vZHN0YXRkYl9zaHV0ZG93bigpOworICBwa2dfZGJfcmVzZXQoKTsKKyAgcmV0dXJuIHVycXJfbm9ybWFsOworfQorCitzdGF0aWMgdm9pZAorZG1lKGludCBpLCBpbnQgc28pCit7CisgIGNoYXIgYnVmWzEyMF07CisgIGNvbnN0IG1lbnVlbnRyeSAqbWU9ICZtZW51ZW50cmllc1tpXTsKKyAgc3ByaW50ZihidWYsIiAlYyAlZC4gJS0xMS4xMXMgJS04MC44MHMgIiwKKyAgICAgICAgICBzbyA/ICcqJyA6ICcgJywgaSwKKyAgICAgICAgICBnZXR0ZXh0KG1lLT5vcHRpb24pLAorICAgICAgICAgIGdldHRleHQobWUtPm1lbnVlbnQpKTsKKworICBpbnQgeCwgeSBEUEtHX0FUVFJfVU5VU0VEOworICBnZXRtYXh5eChzdGRzY3IseSx4KTsKKworICBhdHRyc2V0KHNvID8gQV9SRVZFUlNFIDogQV9OT1JNQUwpOworICBtdmFkZG5zdHIoaSsyLDAsIGJ1Zix4LTEpOworICBhdHRyc2V0KEFfTk9STUFMKTsKK30KKworc3RhdGljIGludAorcmVmcmVzaG1lbnUodm9pZCkKK3sKKyAgY2hhciBidWZbMjA0OF07CisKKyAgY3Vyc2Vzb24oKTsgY2JyZWFrKCk7IG5vZWNobygpOyBub25sKCk7IGtleXBhZChzdGRzY3IsVFJVRSk7CisKKyAgaW50IHgsIHkgRFBLR19BVFRSX1VOVVNFRDsKKyAgZ2V0bWF4eXgoc3Rkc2NyLHkseCk7CisKKyAgY2xlYXIoKTsKKyAgYXR0cnNldChBX0JPTEQpOworICBzcHJpbnRmKGJ1ZiwgZ2V0dGV4dChwcm9ncmFtZGVzYyksIERTRUxFQ1QsIERQS0dfVkVSU0lPTl9BUkNIKTsKKyAgbXZhZGRuc3RyKDAsMCxidWYseC0xKTsKKworICBhdHRyc2V0KEFfTk9STUFMKTsKKyAgY29uc3Qgc3RydWN0IG1lbnVlbnRyeSAqbWVwOyBpbnQgaTsKKyAgZm9yIChtZXA9bWVudWVudHJpZXMsIGk9MDsgbWVwLT5vcHRpb24gJiYgbWVwLT5tZW51ZW50OyBtZXArKywgaSsrKQorICAgIGRtZShpLDApOworCisgIGF0dHJzZXQoQV9CT0xEKTsKKyAgYWRkc3RyKF8oIlxuXG4iCisgICAgICAgICAiTW92ZSBhcm91bmQgd2l0aCBeUCBhbmQgXk4sIGN1cnNvciBrZXlzLCBpbml0aWFsIGxldHRlcnMsIG9yIGRpZ2l0cztcbiIKKyAgICAgICAgICJQcmVzcyA8ZW50ZXI+IHRvIGNvbmZpcm0gc2VsZWN0aW9uLiAgIF5MIHJlZHJhd3Mgc2NyZWVuLlxuXG4iKSk7CisKKyAgYXR0cnNldChBX05PUk1BTCk7CisgIGFkZHN0cihnZXR0ZXh0KGNvcHlyaWdodHN0cmluZykpOworICBzcHJpbnRmKGJ1ZiwgZ2V0dGV4dChsaWNlbnNlc3RyaW5nKSwgRFNFTEVDVCk7CisgIGFkZHN0cihidWYpOworCisgIG1vZHN0YXRkYl9pbml0KCk7CisgIGlmICghbW9kc3RhdGRiX2Nhbl9sb2NrKCkpCisgICAgYWRkc3RyKF8oIlxuXG4iCisgICAgICAgICAgICAgIlJlYWQtb25seSBhY2Nlc3M6IG9ubHkgcHJldmlldyBvZiBzZWxlY3Rpb25zIGlzIGF2YWlsYWJsZSEiKSk7CisgIG1vZHN0YXRkYl9kb25lKCk7CisKKyAgcmV0dXJuIGk7Cit9CisKK3VycXJlc3VsdCB1cnFfbWVudSh2b2lkKSB7CisjZGVmaW5lIEMoeCkgKCh4KS0nYScrMSkKKyAgaW50IGVudHJpZXMsIGM7CisgIGVudHJpZXM9IHJlZnJlc2htZW51KCk7CisgIGludCBjdXJzb3I9MDsKKyAgZG1lKDAsMSk7CisgIGZvciAoOzspIHsKKyAgICByZWZyZXNoKCk7CisgICAgZG8KKyAgICAgIGM9IGdldGNoKCk7CisgICAgd2hpbGUgKGMgPT0gRVJSICYmIGVycm5vID09IEVJTlRSKTsKKyAgICBpZiAoYz09RVJSKSAgeworICAgICAgaWYoZXJybm8gIT0gMCkKKyAgICAgICAgb2hzaGl0ZShfKCJmYWlsZWQgdG8gZ2V0Y2ggaW4gbWFpbiBtZW51IikpOworICAgICAgZWxzZSB7CisgICAgICAgIGNsZWFyb2soc3Rkc2NyLFRSVUUpOyBjbGVhcigpOyByZWZyZXNobWVudSgpOyBkbWUoY3Vyc29yLDEpOworICAgICAgfQorICAgIH0KKworICAgIGlmIChjPT1DKCduJykgfHwgYz09S0VZX0RPV04gfHwgYz09JyAnIHx8IGM9PSdqJykgeworICAgICAgZG1lKGN1cnNvciwwKTsgY3Vyc29yKys7IGN1cnNvciAlPSBlbnRyaWVzOyBkbWUoY3Vyc29yLDEpOworICAgIH0gZWxzZSBpZiAoYz09QygncCcpIHx8IGM9PUtFWV9VUCB8fCBjPT1DKCdoJykgfHwKKyAgICAgICAgICAgICAgIGM9PUtFWV9CQUNLU1BBQ0UgfHwgYz09S0VZX0RDIHx8IGM9PSdrJykgeworICAgICAgZG1lKGN1cnNvciwwKTsgY3Vyc29yKz0gZW50cmllcy0xOyBjdXJzb3IgJT0gZW50cmllczsgZG1lKGN1cnNvciwxKTsKKyAgICB9IGVsc2UgaWYgKGM9PSdcbicgfHwgYz09J1xyJyB8fCBjPT1LRVlfRU5URVIpIHsKKyAgICAgIGNsZWFyKCk7IHJlZnJlc2goKTsKKyAgICAgIHN3aXRjaCAobWVudWVudHJpZXNbY3Vyc29yXS5mbigpKSB7IC8qIEZJWE1FOiB0cmFwIGVycm9ycyBpbiB1cnFfLi4uICovCisgICAgICBjYXNlIHVycXJfcXVpdG1lbnU6CisgICAgICAgIHJldHVybiB1cnFyX3F1aXRtZW51OworICAgICAgY2FzZSB1cnFyX25vcm1hbDoKKyAgICAgICAgY3Vyc29yKys7IGN1cnNvciAlPSBlbnRyaWVzOworICAgICAgY2FzZSB1cnFyX2ZhaWw6CisgICAgICAgIGJyZWFrOworICAgICAgZGVmYXVsdDoKKyAgICAgICAgaW50ZXJuZXJyKCJ1bmtub3duIG1lbnVmbiIpOworICAgICAgfQorICAgICAgcmVmcmVzaG1lbnUoKTsgZG1lKGN1cnNvciwxKTsKKyAgICB9IGVsc2UgaWYgKGM9PUMoJ2wnKSkgeworICAgICAgY2xlYXJvayhzdGRzY3IsVFJVRSk7IGNsZWFyKCk7IHJlZnJlc2htZW51KCk7IGRtZShjdXJzb3IsMSk7CisgICAgfSBlbHNlIGlmIChpc2RpZ2l0KGMpKSB7CisgICAgICBjaGFyIGJ1ZlsyXTsgYnVmWzBdPWM7IGJ1ZlsxXT0wOyBjPWF0b2koYnVmKTsKKyAgICAgIGlmIChjIDwgZW50cmllcykgeworICAgICAgICBkbWUoY3Vyc29yLDApOyBjdXJzb3I9YzsgZG1lKGN1cnNvciwxKTsKKyAgICAgIH0gZWxzZSB7CisgICAgICAgIGJlZXAoKTsKKyAgICAgIH0KKyAgICB9IGVsc2UgaWYgKGlzYWxwaGEoYykpIHsKKyAgICAgIGM9IHRvbG93ZXIoYyk7CisgICAgICBpbnQgaSA9IDA7CisgICAgICB3aGlsZSAoaSA8IGVudHJpZXMgJiYgZ2V0dGV4dChtZW51ZW50cmllc1tpXS5rZXkpWzBdICE9IGMpCisgICAgICAgIGkrKzsKKyAgICAgIGlmIChpIDwgZW50cmllcykgeworICAgICAgICBkbWUoY3Vyc29yLDApOyBjdXJzb3I9aTsgZG1lKGN1cnNvciwxKTsKKyAgICAgIH0gZWxzZSB7CisgICAgICAgIGJlZXAoKTsKKyAgICAgIH0KKyAgICB9IGVsc2UgeworICAgICAgYmVlcCgpOworICAgIH0KKyAgfQorfQorCit1cnFyZXN1bHQgdXJxX3F1aXQodm9pZCkgeworICAvKiBGSVhNRTogY2hlY2sgcGFja2FnZXMgT0suICovCisgIHJldHVybiB1cnFyX3F1aXRtZW51OworfQorCitzdGF0aWMgdm9pZAorZHNlbGVjdF9jYXRjaF9mYXRhbF9lcnJvcigpCit7CisgIGN1cnNlc29mZigpOworICBjYXRjaF9mYXRhbF9lcnJvcigpOworfQorCitpbnQKK21haW4oaW50LCBjb25zdCBjaGFyICpjb25zdCAqYXJndikKK3sKKyAgc2V0bG9jYWxlKExDX0FMTCwgIiIpOworICBiaW5kdGV4dGRvbWFpbihEU0VMRUNULCBMT0NBTEVESVIpOworICB0ZXh0ZG9tYWluKERTRUxFQ1QpOworCisgIGRwa2dfc2V0X3Byb2duYW1lKERTRUxFQ1QpOworCisgIHB1c2hfZXJyb3JfY29udGV4dF9mdW5jKGRzZWxlY3RfY2F0Y2hfZmF0YWxfZXJyb3IsIHByaW50X2ZhdGFsX2Vycm9yLCAwKTsKKworICBsb2FkY2ZnZmlsZShEU0VMRUNULCBjbWRpbmZvcyk7CisgIG15b3B0KCZhcmd2LCBjbWRpbmZvcywgcHJpbnRmb3JoZWxwKTsKKworICBhZG1pbmRpciA9IGRwa2dfZGJfc2V0X2RpcihhZG1pbmRpcik7CisKKyAgaWYgKCphcmd2KSB7CisgICAgY29uc3QgY2hhciAqYTsKKyAgICB3aGlsZSAoKGE9ICphcmd2KyspICE9IDApIHsKKyAgICAgIGNvbnN0IG1lbnVlbnRyeSAqbWUgPSBtZW51ZW50cmllczsKKyAgICAgIHdoaWxlIChtZS0+Y29tbWFuZCAmJiBzdHJjbXAobWUtPmNvbW1hbmQsIGEpKQorICAgICAgICBtZSsrOworICAgICAgaWYgKCFtZS0+Y29tbWFuZCkgYmFkdXNhZ2UoXygidW5rbm93biBhY3Rpb24gc3RyaW5nIGAlLjUwcyciKSxhKTsKKyAgICAgIG1lLT5mbigpOworICAgIH0KKyAgfSBlbHNlIHsKKyAgICB1cnFfbWVudSgpOworICB9CisKKyAgY3Vyc2Vzb2ZmKCk7CisgIHN0YW5kYXJkX3NodXRkb3duKCk7CisgIHJldHVybigwKTsKK30KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9tZXRoa2V5cy5jYyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9tZXRoa2V5cy5jYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44NWUwOTZiCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L21ldGhrZXlzLmNjCkBAIC0wLDAgKzEsMTExIEBACisvKgorICogZHNlbGVjdCAtIERlYmlhbiBwYWNrYWdlIG1haW50ZW5hbmNlIHVzZXIgaW50ZXJmYWNlCisgKiBtZXRoa2V5cy5jYyAtIG1ldGhvZCBsaXN0IGtleWJpbmRpbmdzCisgKgorICogQ29weXJpZ2h0IMKpIDE5OTUgSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuZ3JlZW5lbmQub3JnLnVrPgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaW5jbHVkZSA8Y29uZmlnLmg+CisjaW5jbHVkZSA8Y29tcGF0Lmg+CisKKyNpbmNsdWRlIDxkcGtnL2Rwa2ctZGIuaD4KKworI2luY2x1ZGUgImRzZWxlY3QuaCIKKyNpbmNsdWRlICJiaW5kaW5ncy5oIgorCitjb25zdCBrZXliaW5kaW5nczo6aW50ZXJwcmV0YXRpb24gbWV0aG9kbGlzdF9raW50ZXJwc1tdID0geworICB7ICJ1cCIsICAgICAgICAgICAgICAmbWV0aG9kbGlzdDo6a2RfdXAsICAgICAgICAgICAgIDAsICAgIHFhX25vcXVpdCAgICAgICAgICAgfSwKKyAgeyAiZG93biIsICAgICAgICAgICAgJm1ldGhvZGxpc3Q6OmtkX2Rvd24sICAgICAgICAgICAwLCAgICBxYV9ub3F1aXQgICAgICAgICAgIH0sCisgIHsgInRvcCIsICAgICAgICAgICAgICZtZXRob2RsaXN0OjprZF90b3AsICAgICAgICAgICAgMCwgICAgcWFfbm9xdWl0ICAgICAgICAgICB9LAorICB7ICJib3R0b20iLCAgICAgICAgICAmbWV0aG9kbGlzdDo6a2RfYm90dG9tLCAgICAgICAgIDAsICAgIHFhX25vcXVpdCAgICAgICAgICAgfSwKKyAgeyAic2Nyb2xsb24iLCAgICAgICAgJm1ldGhvZGxpc3Q6OmtkX3Njcm9sbG9uLCAgICAgICAwLCAgICBxYV9ub3F1aXQgICAgICAgICAgIH0sCisgIHsgInNjcm9sbGJhY2siLCAgICAgICZtZXRob2RsaXN0OjprZF9zY3JvbGxiYWNrLCAgICAgMCwgICAgcWFfbm9xdWl0ICAgICAgICAgICB9LAorICB7ICJpc2Nyb2xsb24iLCAgICAgICAmbWV0aG9kbGlzdDo6a2RfaXNjcm9sbG9uLCAgICAgIDAsICAgIHFhX25vcXVpdCAgICAgICAgICAgfSwKKyAgeyAiaXNjcm9sbGJhY2siLCAgICAgJm1ldGhvZGxpc3Q6OmtkX2lzY3JvbGxiYWNrLCAgICAwLCAgICBxYV9ub3F1aXQgICAgICAgICAgIH0sCisgIHsgInNjcm9sbG9uMSIsICAgICAgICZtZXRob2RsaXN0OjprZF9zY3JvbGxvbjEsICAgICAgMCwgICAgcWFfbm9xdWl0ICAgICAgICAgICB9LAorICB7ICJzY3JvbGxiYWNrMSIsICAgICAmbWV0aG9kbGlzdDo6a2Rfc2Nyb2xsYmFjazEsICAgIDAsICAgIHFhX25vcXVpdCAgICAgICAgICAgfSwKKyAgeyAiaXNjcm9sbG9uMSIsICAgICAgJm1ldGhvZGxpc3Q6OmtkX2lzY3JvbGxvbjEsICAgICAwLCAgICBxYV9ub3F1aXQgICAgICAgICAgIH0sCisgIHsgImlzY3JvbGxiYWNrMSIsICAgICZtZXRob2RsaXN0OjprZF9pc2Nyb2xsYmFjazEsICAgMCwgICAgcWFfbm9xdWl0ICAgICAgICAgICB9LAorICB7ICJwYW5vbiIsICAgICAgICAgICAmbWV0aG9kbGlzdDo6a2RfcGFub24sICAgICAgICAgIDAsICAgIHFhX25vcXVpdCAgICAgICAgICAgfSwKKyAgeyAicGFuYmFjayIsICAgICAgICAgJm1ldGhvZGxpc3Q6OmtkX3BhbmJhY2ssICAgICAgICAwLCAgICBxYV9ub3F1aXQgICAgICAgICAgIH0sCisgIHsgInBhbm9uMSIsICAgICAgICAgICZtZXRob2RsaXN0OjprZF9wYW5vbjEsICAgICAgICAgMCwgICAgcWFfbm9xdWl0ICAgICAgICAgICB9LAorICB7ICJwYW5iYWNrMSIsICAgICAgICAmbWV0aG9kbGlzdDo6a2RfcGFuYmFjazEsICAgICAgIDAsICAgIHFhX25vcXVpdCAgICAgICAgICAgfSwKKyAgeyAiaGVscCIsICAgICAgICAgICAgJm1ldGhvZGxpc3Q6OmtkX2hlbHAsICAgICAgICAgICAwLCAgICBxYV9ub3F1aXQgICAgICAgICAgIH0sCisgIHsgInNlYXJjaCIsICAgICAgICAgICZtZXRob2RsaXN0OjprZF9zZWFyY2gsICAgICAgICAgMCwgICAgcWFfbm9xdWl0ICAgICAgICAgICB9LAorICB7ICJzZWFyY2hhZ2FpbiIsICAgICAmbWV0aG9kbGlzdDo6a2Rfc2VhcmNoYWdhaW4sICAgIDAsICAgIHFhX25vcXVpdCAgICAgICAgICAgfSwKKyAgeyAicmVkcmF3IiwgICAgICAgICAgJm1ldGhvZGxpc3Q6OmtkX3JlZHJhdywgICAgICAgICAwLCAgICBxYV9ub3F1aXQgICAgICAgICAgIH0sCisgIHsgInNlbGVjdC1hbmQtcXVpdCIsICZtZXRob2RsaXN0OjprZF9xdWl0LCAgICAgICAgICAgMCwgICAgcWFfcXVpdGNoZWNrc2F2ZSAgICB9LAorICB7ICJhYm9ydCIsICAgICAgICAgICAmbWV0aG9kbGlzdDo6a2RfYWJvcnQsICAgICAgICAgIDAsICAgIHFhX3F1aXRub2NoZWNrc2F2ZSAgfSwKKyAgeyAgMCwgICAgICAgICAgICAgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAsICAgIHFhX25vcXVpdCAgICAgICAgICAgfQorfTsKKworI2RlZmluZSBDKHgpICgoeCktJ2EnKzEpCisKK2NvbnN0IGtleWJpbmRpbmdzOjpvcmdiaW5kaW5nIG1ldGhvZGxpc3Rfa29yZ2JpbmRpbmdzW109IHsKKyAgeyAnaicsICAgICAgICAgICAgImRvd24iICAgICAgICAgICB9LCAvLyB2aSBzdHlsZQorLy97ICduJywgICAgICAgICAgICAiZG93biIgICAgICAgICAgIH0sIC8vIG5vIHN0eWxlCisgIHsgS0VZX0RPV04sICAgICAgICJkb3duIiAgICAgICAgICAgfSwKKyAgeyAnaycsICAgICAgICAgICAgInVwIiAgICAgICAgICAgICB9LCAvLyB2aSBzdHlsZQorLy97ICdwJywgICAgICAgICAgICAidXAiICAgICAgICAgICAgIH0sIC8vIG5vIHN0eWxlCisgIHsgS0VZX1VQLCAgICAgICAgICJ1cCIgICAgICAgICAgICAgfSwKKworICB7IEMoJ2YnKSwgICAgICAgICAic2Nyb2xsb24iICAgICAgIH0sIC8vIHZpIHN0eWxlCisgIHsgJ04nLCAgICAgICAgICAgICJzY3JvbGxvbiIgICAgICAgfSwKKyAgeyBLRVlfTlBBR0UsICAgICAgInNjcm9sbG9uIiAgICAgICB9LAorICB7ICcgJywgICAgICAgICAgICAic2Nyb2xsb24iICAgICAgIH0sCisgIHsgQygnYicpLCAgICAgICAgICJzY3JvbGxiYWNrIiAgICAgfSwgLy8gdmkgc3R5bGUKKyAgeyAnUCcsICAgICAgICAgICAgInNjcm9sbGJhY2siICAgICB9LAorICB7IEtFWV9QUEFHRSwgICAgICAic2Nyb2xsYmFjayIgICAgIH0sCisgIHsgS0VZX0JBQ0tTUEFDRSwgICJzY3JvbGxiYWNrIiAgICAgfSwKKyAgeyAwMTc3LC8qREVMKi8gICAgInNjcm9sbGJhY2siICAgICB9LAorICB7IEMoJ2gnKSwgICAgICAgICAic2Nyb2xsYmFjayIgICAgIH0sCisgIHsgQygnbicpLCAgICAgICAgICJzY3JvbGxvbjEiICAgICAgfSwKKyAgeyBDKCdwJyksICAgICAgICAgInNjcm9sbGJhY2sxIiAgICB9LAorCisgIHsgJ3QnLCAgICAgICAgICAgICJ0b3AiICAgICAgICAgICAgfSwKKyAgeyBLRVlfSE9NRSwgICAgICAgInRvcCIgICAgICAgICAgICB9LAorICB7ICdlJywgICAgICAgICAgICAiYm90dG9tIiAgICAgICAgIH0sCisgIHsgS0VZX0xMLCAgICAgICAgICJib3R0b20iICAgICAgICAgfSwKKyAgeyBLRVlfRU5ELCAgICAgICAgImJvdHRvbSIgICAgICAgICB9LAorCisgIHsgJ3UnLCAgICAgICAgICAgICJpc2Nyb2xsYmFjayIgICAgfSwKKyAgeyAnZCcsICAgICAgICAgICAgImlzY3JvbGxvbiIgICAgICB9LAorICB7IEMoJ3UnKSwgICAgICAgICAiaXNjcm9sbGJhY2sxIiAgIH0sCisgIHsgQygnZCcpLCAgICAgICAgICJpc2Nyb2xsb24xIiAgICAgfSwKKworICB7ICdCJywgICAgICAgICAgICAicGFuYmFjayIgICAgICAgIH0sCisgIHsgS0VZX0xFRlQsICAgICAgICJwYW5iYWNrIiAgICAgICAgfSwKKyAgeyAnRicsICAgICAgICAgICAgInBhbm9uIiAgICAgICAgICB9LAorICB7IEtFWV9SSUdIVCwgICAgICAicGFub24iICAgICAgICAgIH0sCisgIHsgQygnYicpLCAgICAgICAgICJwYW5iYWNrMSIgICAgICAgfSwKKyAgeyBDKCdmJyksICAgICAgICAgInBhbm9uMSIgICAgICAgICB9LAorCisgIHsgJz8nLCAgICAgICAgICAgICJoZWxwIiAgICAgICAgICAgICB9LAorICB7IEtFWV9IRUxQLCAgICAgICAiaGVscCIgICAgICAgICAgICAgfSwKKyAgeyBLRVlfRigxKSwgICAgICAgImhlbHAiICAgICAgICAgICAgIH0sCisgIHsgJy8nLCAgICAgICAgICAgICJzZWFyY2giICAgICAgICAgICB9LAorICB7ICduJywgICAgICAgICAgICAic2VhcmNoYWdhaW4iICAgICAgfSwKKyAgeyAnXFwnLCAgICAgICAgICAgInNlYXJjaGFnYWluIiAgICAgIH0sCisgIHsgQygnbCcpLCAgICAgICAgICJyZWRyYXciICAgICAgICAgICB9LAorCisgIHsgS0VZX0VOVEVSLCAgICAgICJzZWxlY3QtYW5kLXF1aXQiICB9LAorICB7ICdccicsICAgICAgICAgICAic2VsZWN0LWFuZC1xdWl0IiAgfSwKKyAgeyAneCcsICAgICAgICAgICAgImFib3J0IiAgICAgICAgICAgIH0sCisgIHsgJ1gnLCAgICAgICAgICAgICJhYm9ydCIgICAgICAgICAgICB9LAorICB7ICdRJywgICAgICAgICAgICAiYWJvcnQiICAgICAgICAgICAgfSwKKworICB7ICAtMSwgICAgICAgICAgICAgMCAgICAgICAgICAgICAgICAgfQorfTsKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9tZXRobGlzdC5jYyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9tZXRobGlzdC5jYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jN2YzYWJmCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L21ldGhsaXN0LmNjCkBAIC0wLDAgKzEsMjI3IEBACisvKgorICogZHNlbGVjdCAtIERlYmlhbiBwYWNrYWdlIG1haW50ZW5hbmNlIHVzZXIgaW50ZXJmYWNlCisgKiBtZXRobGlzdC5jYyAtIGxpc3Qgb2YgYWNjZXNzIG1ldGhvZHMgYW5kIG9wdGlvbnMKKyAqCisgKiBDb3B5cmlnaHQgwqkgMTk5NSBJYW4gSmFja3NvbiA8aWFuQGNoaWFyay5ncmVlbmVuZC5vcmcudWs+CisgKiBDb3B5cmlnaHQgwqkgMjAwMSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaW5jbHVkZSA8Y29uZmlnLmg+CisjaW5jbHVkZSA8Y29tcGF0Lmg+CisKKyNpbmNsdWRlIDxhc3NlcnQuaD4KKyNpbmNsdWRlIDxlcnJuby5oPgorI2luY2x1ZGUgPHN0cmluZy5oPgorI2luY2x1ZGUgPHN0ZGlvLmg+CisKKyNpbmNsdWRlIDxkcGtnL2kxOG4uaD4KKyNpbmNsdWRlIDxkcGtnL2Rwa2cuaD4KKyNpbmNsdWRlIDxkcGtnL2Rwa2ctZGIuaD4KKworI2luY2x1ZGUgImRzZWxlY3QuaCIKKyNpbmNsdWRlICJiaW5kaW5ncy5oIgorI2luY2x1ZGUgIm1ldGhvZC5oIgorI2luY2x1ZGUgImhlbHBtc2dzLmgiCisKK3N0YXRpYyBrZXliaW5kaW5ncyBtZXRob2RsaXN0YmluZGluZ3MobWV0aG9kbGlzdF9raW50ZXJwcyxtZXRob2RsaXN0X2tvcmdiaW5kaW5ncyk7CisKK2NvbnN0IGNoYXIgKm1ldGhvZGxpc3Q6Oml0ZW1uYW1lKGludCBpbmRleCkgeworICByZXR1cm4gdGFibGVbaW5kZXhdLT5uYW1lOworfQorCit2b2lkIG1ldGhvZGxpc3Q6OmtkX2Fib3J0KCkgeyB9CisKK3ZvaWQgbWV0aG9kbGlzdDo6a2RfcXVpdCgpIHsKKyAgZGVidWcoZGJnX2dlbmVyYWwsICJtZXRob2RsaXN0WyVwXTo6a2RfcXVpdCgpIHNldHRpbmcgY29wdGlvbj0lcCIsCisgICAgICAgIHRoaXMsIHRhYmxlW2N1cnNvcmxpbmVdKTsKKyAgY29wdGlvbj0gdGFibGVbY3Vyc29ybGluZV07Cit9CisKK3ZvaWQgbWV0aG9kbGlzdDo6c2V0aGVpZ2h0cygpIHsKKyAgZGVidWcoZGJnX2dlbmVyYWwsICJtZXRob2RsaXN0WyVwXTo6c2V0aGVpZ2h0cygpIiwgdGhpcyk7CisgIGJhc2VsaXN0OjpzZXRoZWlnaHRzKCk7CisgIGxpc3RfaGVpZ2h0Kys7Cit9CisKK3ZvaWQgbWV0aG9kbGlzdDo6c2V0d2lkdGhzKCkgeworICBkZWJ1ZyhkYmdfZ2VuZXJhbCwgIm1ldGhvZGxpc3RbJXBdOjpzZXR3aWR0aHMoKSIsIHRoaXMpOworCisgIHN0YXR1c193aWR0aD0gMTsKKyAgZ2FwX3dpZHRoPSAxOworICBuYW1lX3dpZHRoPSAxNDsKKyAgbmFtZV9jb2x1bW49IHN0YXR1c193aWR0aCArIGdhcF93aWR0aDsKKyAgZGVzY3JpcHRpb25fY29sdW1uPSBuYW1lX2NvbHVtbiArIG5hbWVfd2lkdGggKyBnYXBfd2lkdGg7CisKKyAgdG90YWxfd2lkdGg9IFRPVEFMX0xJU1RfV0lEVEg7CisgIGlmICh0b3RhbF93aWR0aCA8IENPTFMpCisgICAgdG90YWxfd2lkdGg9IENPTFM7CisgIGRlc2NyaXB0aW9uX3dpZHRoPSB0b3RhbF93aWR0aCAtIGRlc2NyaXB0aW9uX2NvbHVtbjsKK30KKwordm9pZCBtZXRob2RsaXN0OjpyZWRyYXd0aXRsZSgpIHsKKyAgaWYgKHRpdGxlX2hlaWdodCkgeworICAgIG15d2VyYXNlKHRpdGxld2luKTsKKyAgICBtdndhZGRuc3RyKHRpdGxld2luLDAsMCxfKCJkc2VsZWN0IC0gbGlzdCBvZiBhY2Nlc3MgbWV0aG9kcyIpLHhtYXgpOworICAgIHdub3V0cmVmcmVzaCh0aXRsZXdpbik7CisgIH0KK30KKwordm9pZCBtZXRob2RsaXN0OjpyZWRyYXd0aGlzc3RhdGUoKSB7CisgIGlmICghdGhpc3N0YXRlX2hlaWdodCkgcmV0dXJuOworICBteXdlcmFzZSh0aGlzc3RhdGVwYWQpOworICB3cHJpbnR3KHRoaXNzdGF0ZXBhZCwKKyAgICAgICAgICBfKCJBY2Nlc3MgbWV0aG9kIGAlcycuIiksCisgICAgICAgICAgdGFibGVbY3Vyc29ybGluZV0tPm5hbWUpOworICBwbm91dHJlZnJlc2godGhpc3N0YXRlcGFkLCAwLDAsIHRoaXNzdGF0ZV9yb3csMCwKKyAgICAgICAgICAgICAgIHRoaXNzdGF0ZV9yb3csIG1pbih0b3RhbF93aWR0aCAtIDEsIHhtYXggLSAxKSk7Cit9CisKK3ZvaWQgbWV0aG9kbGlzdDo6cmVkcmF3MWl0ZW1zZWwoaW50IGluZGV4LCBpbnQgc2VsZWN0ZWQpIHsKKyAgaW50IGk7CisgIGNvbnN0IGNoYXIgKnA7CisKKyAgd2F0dHJzZXQobGlzdHBhZCwgc2VsZWN0ZWQgPyBsaXN0c2VsX2F0dHIgOiBsaXN0X2F0dHIpOworICBtdndhZGRjaChsaXN0cGFkLGluZGV4LDAsCisgICAgICAgICAgIHRhYmxlW2luZGV4XSA9PSBjb3B0aW9uID8gJyonIDogJyAnKTsKKyAgd2F0dHJzZXQobGlzdHBhZCwgc2VsZWN0ZWQgPyBsaXN0c2VsX2F0dHIgOiBsaXN0X2F0dHIpOworICBtdndwcmludHcobGlzdHBhZCxpbmRleCxuYW1lX2NvbHVtbi0xLCAiICUtKi4qcyAiLAorICAgICAgICAgICAgbmFtZV93aWR0aCwgbmFtZV93aWR0aCwgdGFibGVbaW5kZXhdLT5uYW1lKTsKKworICBpPSBkZXNjcmlwdGlvbl93aWR0aDsKKyAgcD0gdGFibGVbaW5kZXhdLT5zdW1tYXJ5ID8gdGFibGVbaW5kZXhdLT5zdW1tYXJ5IDogIiI7CisgIHdoaWxlIChpPjAgJiYgKnAgJiYgKnAgIT0gJ1xuJykgeworICAgIHdhZGRjaChsaXN0cGFkLCpwKTsKKyAgICBpLS07IHArKzsKKyAgfQorICB3aGlsZSAoaT4wKSB7CisgICAgd2FkZGNoKGxpc3RwYWQsJyAnKTsKKyAgICBpLS07CisgIH0KK30KKwordm9pZCBtZXRob2RsaXN0OjpyZWRyYXdjb2xoZWFkcygpIHsKKyAgaWYgKGNvbGhlYWRzX2hlaWdodCkgeworICAgIHdhdHRyc2V0KGNvbGhlYWRzcGFkLGNvbGhlYWRzX2F0dHIpOworICAgIG15d2VyYXNlKGNvbGhlYWRzcGFkKTsKKyAgICBtdndhZGRzdHIoY29saGVhZHNwYWQsMCwwLCAiICAiKTsKKyAgICBtdndhZGRuc3RyKGNvbGhlYWRzcGFkLDAsbmFtZV9jb2x1bW4sIF8oIkFiYnJldi4iKSwgbmFtZV93aWR0aCk7CisgICAgbXZ3YWRkbnN0cihjb2xoZWFkc3BhZCwwLGRlc2NyaXB0aW9uX2NvbHVtbiwgXygiRGVzY3JpcHRpb24iKSwgZGVzY3JpcHRpb25fd2lkdGgpOworICB9CisgIHJlZnJlc2hjb2xoZWFkcygpOworfQorCittZXRob2RsaXN0OjptZXRob2RsaXN0KCkgOiBiYXNlbGlzdCgmbWV0aG9kbGlzdGJpbmRpbmdzKSB7CisgIGludCBuZXdjdXJzb3I9IC0xOworCisgIGRlYnVnKGRiZ19nZW5lcmFsLCAibWV0aG9kbGlzdFslcF06Om1ldGhvZGxpc3QoKSIsIHRoaXMpOworCisgIHRhYmxlPSBuZXcgc3RydWN0IGRzZWxlY3Rfb3B0aW9uKltub3B0aW9uc107CisKKyAgc3RydWN0IGRzZWxlY3Rfb3B0aW9uICpvcHQsICoqaXA7CisgIGZvciAob3B0PW9wdGlvbnMsIGlwPXRhYmxlLCBuaXRlbXM9MDsgb3B0OyBvcHQ9b3B0LT5uZXh0LCBuaXRlbXMrKykgeworICAgIGlmIChvcHQgPT0gY29wdGlvbikgeyBhc3NlcnQobmV3Y3Vyc29yPT0tMSk7IG5ld2N1cnNvcj0gbml0ZW1zOyB9CisgICAgKmlwKys9IG9wdDsKKyAgfQorICBhc3NlcnQobml0ZW1zPT1ub3B0aW9ucyk7CisKKyAgaWYgKG5ld2N1cnNvcj09LTEpIG5ld2N1cnNvcj0gMDsKKyAgc2V0Y3Vyc29yKG5ld2N1cnNvcik7CisKKyAgZGVidWcoZGJnX2dlbmVyYWwsICJtZXRob2RsaXN0WyVwXTo6bWV0aG9kbGlzdCBkb25lOyBub3B0aW9ucz0lZCIsCisgICAgICAgIHRoaXMsIG5vcHRpb25zKTsKK30KKworbWV0aG9kbGlzdDo6fm1ldGhvZGxpc3QoKSB7CisgIGRlYnVnKGRiZ19nZW5lcmFsLCAibWV0aG9kbGlzdFslcF06On5tZXRob2RsaXN0KCkiLCB0aGlzKTsKKyAgZGVsZXRlW10gdGFibGU7Cit9CisKK3F1aXRhY3Rpb24gbWV0aG9kbGlzdDo6ZGlzcGxheSgpIHsKKyAgaW50IHJlc3BvbnNlOworICBjb25zdCBrZXliaW5kaW5nczo6aW50ZXJwcmV0YXRpb24gKmludGVycDsKKworICBkZWJ1ZyhkYmdfZ2VuZXJhbCwgIm1ldGhvZGxpc3RbJXBdOjpkaXNwbGF5KCkiLCB0aGlzKTsKKworICBzZXR1cHNpZ3dpbmNoKCk7CisgIHN0YXJ0ZGlzcGxheSgpOworCisgIGRlYnVnKGRiZ19nZW5lcmFsLCAibWV0aG9kbGlzdFslcF06OmRpc3BsYXkoKSBlbnRlcmluZyBsb29wIiwgdGhpcyk7CisgIGZvciAoOzspIHsKKyAgICBpZiAod2hhdGluZm9faGVpZ2h0KSB3Y3Vyc3luY3VwKHdoYXRpbmZvd2luKTsKKyAgICBpZiAoZG91cGRhdGUoKSA9PSBFUlIpIG9oc2hpdGUoXygiZG91cGRhdGUgZmFpbGVkIikpOworICAgIHNpZ25hbGxpc3Q9IHRoaXM7CisgICAgaWYgKHNpZ3Byb2NtYXNrKFNJR19VTkJMT0NLLCZzaWd3aW5jaHNldCwwKSkgb2hzaGl0ZShfKCJmYWlsZWQgdG8gdW5ibG9jayBTSUdXSU5DSCIpKTsKKyAgICBkbworICAgIHJlc3BvbnNlPSBnZXRjaCgpOworICAgIHdoaWxlIChyZXNwb25zZSA9PSBFUlIgJiYgZXJybm8gPT0gRUlOVFIpOworICAgIGlmIChzaWdwcm9jbWFzayhTSUdfQkxPQ0ssJnNpZ3dpbmNoc2V0LDApKSBvaHNoaXRlKF8oImZhaWxlZCB0byByZS1ibG9jayBTSUdXSU5DSCIpKTsKKyAgICBpZiAocmVzcG9uc2UgPT0gRVJSKSBvaHNoaXRlKF8oImdldGNoIGZhaWxlZCIpKTsKKyAgICBpbnRlcnA9ICgqYmluZGluZ3MpKHJlc3BvbnNlKTsKKyAgICBkZWJ1ZyhkYmdfZ2VuZXJhbCwgIm1ldGhvZGxpc3RbJXBdOjpkaXNwbGF5KCkgcmVzcG9uc2U9JWQgaW50ZXJwPSVzIiwKKyAgICAgICAgICB0aGlzLCByZXNwb25zZSwgaW50ZXJwID8gaW50ZXJwLT5hY3Rpb24gOiAiW25vbmVdIik7CisgICAgaWYgKCFpbnRlcnApIHsgYmVlcCgpOyBjb250aW51ZTsgfQorICAgICh0aGlzLT4qKGludGVycC0+bWZuKSkoKTsKKyAgICBpZiAoaW50ZXJwLT5xYSAhPSBxYV9ub3F1aXQpIGJyZWFrOworICB9CisgIHBvcF9jbGVhbnVwKGVoZmxhZ19ub3JtYWx0aWR5KTsgLy8gdW5zZXQgdGhlIFNJR1dJTkNIIGhhbmRsZXIKKyAgZW5kZGlzcGxheSgpOworCisgIGRlYnVnKGRiZ19nZW5lcmFsLCAibWV0aG9kbGlzdFslcF06OmRpc3BsYXkoKSBkb25lIiwgdGhpcyk7CisKKyAgcmV0dXJuIGludGVycC0+cWE7Cit9CisKK3ZvaWQgbWV0aG9kbGlzdDo6aXRkX2Rlc2NyaXB0aW9uKCkgeworICB3aGF0aW5mb3ZiKF8oIkV4cGxhbmF0aW9uIikpOworCisgIHdhdHRyc2V0KGluZm9wYWQsaW5mb19oZWFkYXR0cik7CisgIHdhZGRzdHIoaW5mb3BhZCwgdGFibGVbY3Vyc29ybGluZV0tPm5hbWUpOworICB3YWRkc3RyKGluZm9wYWQsIiAtICIpOworICB3YWRkc3RyKGluZm9wYWQsIHRhYmxlW2N1cnNvcmxpbmVdLT5zdW1tYXJ5KTsKKyAgd2F0dHJzZXQoaW5mb3BhZCxpbmZvX2F0dHIpOworCisgIGNvbnN0IGNoYXIgKm09IHRhYmxlW2N1cnNvcmxpbmVdLT5kZXNjcmlwdGlvbjsKKyAgaWYgKCFtIHx8ICEqbSkgbT0gXygiTm8gZXhwbGFuYXRpb24gYXZhaWxhYmxlLiIpOworICB3YWRkc3RyKGluZm9wYWQsIlxuXG4iKTsKKyAgd29yZHdyYXBpbmZvKDAsbSk7Cit9CisKK3ZvaWQgbWV0aG9kbGlzdDo6cmVkcmF3aW5mbygpIHsKKyAgaWYgKCFpbmZvX2hlaWdodCkgcmV0dXJuOworICB3aGF0aW5mb3ZiLnJlc2V0KCk7CisgIHdlcmFzZShpbmZvcGFkKTsgd21vdmUoaW5mb3BhZCwwLDApOworCisgIGRlYnVnKGRiZ19nZW5lcmFsLCAibWV0aG9kbGlzdFslcF06OnJlZHJhd2luZm8oKSIsIHRoaXMpOworCisgIGl0ZF9kZXNjcmlwdGlvbigpOworCisgIHdoYXRpbmZvdmIudGVybWluYXRlKCk7CisgIGludCB5LHg7CisgIGdldHl4KGluZm9wYWQsIHkseCk7CisgIGlmICh4KSB5Kys7CisgIGluZm9saW5lcz0geTsKKworICByZWZyZXNoaW5mbygpOworfQorCitjb25zdCBzdHJ1Y3QgaGVscG1lbnVlbnRyeSAqbWV0aG9kbGlzdDo6aGVscG1lbnVsaXN0KCkgeworICBzdGF0aWMgY29uc3Qgc3RydWN0IGhlbHBtZW51ZW50cnkgbGlzdFtdPSB7CisgICAgeyAnaScsICZobHBfbWV0aGludHJvICAgICAgICAgICAgfSwKKyAgICB7ICdrJywgJmhscF9tZXRoa2V5cyAgICAgICAgICAgICB9LAorICAgIHsgIDAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KKyAgfTsKKyAgcmV0dXJuIGxpc3Q7Cit9OwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L21ldGhvZC5jYyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9tZXRob2QuY2MKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODI0ODhjZQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9tZXRob2QuY2MKQEAgLTAsMCArMSwyNTggQEAKKy8qCisgKiBkc2VsZWN0IC0gRGViaWFuIHBhY2thZ2UgbWFpbnRlbmFuY2UgdXNlciBpbnRlcmZhY2UKKyAqIG1ldGhvZC5jYyAtIGFjY2VzcyBtZXRob2QgaGFuZGxpbmcKKyAqCisgKiBDb3B5cmlnaHQgwqkgMTk5NSBJYW4gSmFja3NvbiA8aWFuQGNoaWFyay5ncmVlbmVuZC5vcmcudWs+CisgKiBDb3B5cmlnaHQgwqkgMjAwMSwyMDAyIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisgKgorICogVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisgKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAqIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorICovCisKKyNpbmNsdWRlIDxjb25maWcuaD4KKyNpbmNsdWRlIDxjb21wYXQuaD4KKworI2luY2x1ZGUgPHN5cy90eXBlcy5oPgorI2luY2x1ZGUgPHN5cy9zdGF0Lmg+CisjaW5jbHVkZSA8c3lzL2ZpbGUuaD4KKyNpbmNsdWRlIDxzeXMvd2FpdC5oPgorCisjaW5jbHVkZSA8YXNzZXJ0Lmg+CisjaW5jbHVkZSA8ZXJybm8uaD4KKyNpbmNsdWRlIDxsaW1pdHMuaD4KKyNpbmNsdWRlIDxjdHlwZS5oPgorI2luY2x1ZGUgPHN0cmluZy5oPgorI2luY2x1ZGUgPGZjbnRsLmg+CisjaW5jbHVkZSA8ZGlyZW50Lmg+CisjaW5jbHVkZSA8c2lnbmFsLmg+CisjaW5jbHVkZSA8dW5pc3RkLmg+CisjaW5jbHVkZSA8c3RkbGliLmg+CisjaW5jbHVkZSA8c3RkaW8uaD4KKworI2luY2x1ZGUgPGRwa2cvaTE4bi5oPgorI2luY2x1ZGUgPGRwa2cvZHBrZy5oPgorI2luY2x1ZGUgPGRwa2cvZHBrZy1kYi5oPgorI2luY2x1ZGUgPGRwa2cvc3VicHJvYy5oPgorI2luY2x1ZGUgPGRwa2cvY29tbWFuZC5oPgorCisjaW5jbHVkZSAiZHNlbGVjdC5oIgorI2luY2x1ZGUgIm1ldGhvZC5oIgorCitzdGF0aWMgY29uc3QgY2hhciAqY29uc3QgbWV0aG9kZGlyZWN0b3JpZXNbXT0geworICBMSUJESVIgIi8iIE1FVEhPRFNESVIsCisgIExPQ0FMTElCRElSICIvIiBNRVRIT0RTRElSLAorICAwCit9OworCitzdGF0aWMgY2hhciAqbWV0aG9kbG9ja2ZpbGU9IDA7CitzdGF0aWMgaW50IG1ldGhsb2NrZmQ9IC0xOworCitzdGF0aWMgdm9pZAorc3RoZmFpbGVkKGNvbnN0IGNoYXIgKiByZWFzb25pbmcpCit7CisgIGNoYXIgYnVmWzIwNDhdOworCisgIGN1cnNlc29uKCk7CisgIGNsZWFyKCk7CisgIHNwcmludGYoYnVmLF8oIlxuXG4lczogJXNcbiIpLERTRUxFQ1QscmVhc29uaW5nKTsKKyAgYWRkc3RyKGJ1Zik7CisgIGF0dHJzZXQoQV9CT0xEKTsKKyAgYWRkc3RyKF8oIlxuUHJlc3MgPGVudGVyPiB0byBjb250aW51ZS4iKSk7CisgIGF0dHJzZXQoQV9OT1JNQUwpOworICByZWZyZXNoKCk7IGdldGNoKCk7Cit9CisKK3N0YXRpYyB2b2lkIGN1X3VubG9ja21ldGhvZChpbnQsIHZvaWQqKikgeworICBzdHJ1Y3QgZmxvY2sgZmw7CisKKyAgYXNzZXJ0KG1ldGhvZGxvY2tmaWxlKTsKKyAgYXNzZXJ0KG1ldGhsb2NrZmQpOworICBmbC5sX3R5cGU9Rl9VTkxDSzsgZmwubF93aGVuY2U9IFNFRUtfU0VUOyBmbC5sX3N0YXJ0PWZsLmxfbGVuPTA7CisgIGlmIChmY250bChtZXRobG9ja2ZkLEZfU0VUTEssJmZsKSA9PSAtMSkKKyAgICBzdGhmYWlsZWQoInVuYWJsZSB0byB1bmxvY2sgYWNjZXNzIG1ldGhvZCBhcmVhIik7Cit9CisKK3N0YXRpYyBlbnVtIHVycXJlc3VsdCBlbnN1cmVvcHRpb25zKHZvaWQpIHsKKyAgY29uc3QgY2hhciAqY29uc3QgKmNjcHA7CisgIGRzZWxlY3Rfb3B0aW9uICpuZXdvcHRpb25zOworICBpbnQgbnJlYWQ7CisKKyAgaWYgKCFvcHRpb25zKSB7CisgICAgbmV3b3B0aW9ucz0gMDsKKyAgICBucmVhZD0gMDsKKyAgICBmb3IgKGNjcHA9IG1ldGhvZGRpcmVjdG9yaWVzOyAqY2NwcDsgY2NwcCsrKQorICAgICAgcmVhZG1ldGhvZHMoKmNjcHAsICZuZXdvcHRpb25zLCAmbnJlYWQpOworICAgIGlmICghbmV3b3B0aW9ucykgeworICAgICAgc3RoZmFpbGVkKCJubyBhY2Nlc3MgbWV0aG9kcyBhcmUgYXZhaWxhYmxlIik7CisgICAgICByZXR1cm4gdXJxcl9mYWlsOworICAgIH0KKyAgICBvcHRpb25zPSBuZXdvcHRpb25zOworICAgIG5vcHRpb25zPSBucmVhZDsKKyAgfQorICByZXR1cm4gdXJxcl9ub3JtYWw7Cit9CisKK3N0YXRpYyBlbnVtIHVycXJlc3VsdCBsb2NrbWV0aG9kKHZvaWQpIHsKKyAgc3RydWN0IGZsb2NrIGZsOworCisgIGlmIChtZXRob2Rsb2NrZmlsZSA9PSBOVUxMKQorICAgIG1ldGhvZGxvY2tmaWxlID0gZHBrZ19kYl9nZXRfcGF0aChNRVRITE9DS0ZJTEUpOworCisgIGlmIChtZXRobG9ja2ZkID09IC0xKSB7CisgICAgbWV0aGxvY2tmZD0gb3BlbihtZXRob2Rsb2NrZmlsZSwgT19SRFdSfE9fQ1JFQVR8T19UUlVOQywgMDY2MCk7CisgICAgaWYgKG1ldGhsb2NrZmQgPT0gLTEpIHsKKyAgICAgIGlmICgoZXJybm8gPT0gRVBFUk0pIHx8IChlcnJubyA9PSBFQUNDRVMpKSB7CisgICAgICAgIHN0aGZhaWxlZCgicmVxdWVzdGVkIG9wZXJhdGlvbiByZXF1aXJlcyBzdXBlcnVzZXIgcHJpdmlsZWdlIik7CisgICAgICAgIHJldHVybiB1cnFyX2ZhaWw7CisgICAgICB9CisgICAgICBzdGhmYWlsZWQoInVuYWJsZSB0byBvcGVuL2NyZWF0ZSBhY2Nlc3MgbWV0aG9kIGxvY2tmaWxlIik7CisgICAgICByZXR1cm4gdXJxcl9mYWlsOworICAgIH0KKyAgfQorICBmbC5sX3R5cGU9Rl9XUkxDSzsgZmwubF93aGVuY2U9U0VFS19TRVQ7IGZsLmxfc3RhcnQ9ZmwubF9sZW49MDsKKyAgaWYgKGZjbnRsKG1ldGhsb2NrZmQsRl9TRVRMSywmZmwpID09IC0xKSB7CisgICAgaWYgKGVycm5vID09IEVXT1VMREJMT0NLIHx8IGVycm5vID09IEVBR0FJTikgeworICAgICAgc3RoZmFpbGVkKCJ0aGUgYWNjZXNzIG1ldGhvZCBhcmVhIGlzIGFscmVhZHkgbG9ja2VkIik7CisgICAgICByZXR1cm4gdXJxcl9mYWlsOworICAgICAgfQorICAgIHN0aGZhaWxlZCgidW5hYmxlIHRvIGxvY2sgYWNjZXNzIG1ldGhvZCBhcmVhIik7CisgICAgcmV0dXJuIHVycXJfZmFpbDsKKyAgfQorICBwdXNoX2NsZWFudXAoY3VfdW5sb2NrbWV0aG9kLH4wLCAwLDAsIDApOworICByZXR1cm4gdXJxcl9ub3JtYWw7Cit9CisKK3N0YXRpYyB1cnFyZXN1bHQKK2ZhbGxpYmxlc3VicHJvY2VzcyhzdHJ1Y3QgY29tbWFuZCAqY21kKQoreworICBwaWRfdCBwaWQ7CisgIGludCBzdGF0dXMsIGksIGM7CisKKyAgY3Vyc2Vzb2ZmKCk7CisKKyAgc3VicHJvY19zaWduYWxzX3NldHVwKGNtZC0+bmFtZSk7CisKKyAgcGlkID0gc3VicHJvY19mb3JrKCk7CisgIGlmIChwaWQgPT0gMCkgeworICAgIHN1YnByb2Nfc2lnbmFsc19jbGVhbnVwKDAsIDApOworICAgIGNvbW1hbmRfZXhlYyhjbWQpOworICB9CisKKyAgc3RhdHVzID0gc3VicHJvY193YWl0KHBpZCwgY21kLT5uYW1lKTsKKworICBwb3BfY2xlYW51cChlaGZsYWdfbm9ybWFsdGlkeSk7CisKKyAgZnByaW50ZihzdGRlcnIsICJcbiIpOworICBpID0gc3VicHJvY19jaGVjayhzdGF0dXMsIGNtZC0+bmFtZSwgUFJPQ1dBUk4pOworICBpZiAoaSA9PSAwKSB7CisgICAgc2xlZXAoMSk7CisgICAgcmV0dXJuIHVycXJfbm9ybWFsOworICB9CisgIGZwcmludGYoc3RkZXJyLF8oIlByZXNzIDxlbnRlcj4gdG8gY29udGludWUuXG4iKSk7CisgIG1fb3V0cHV0KHN0ZGVyciwgXygiPHN0YW5kYXJkIGVycm9yPiIpKTsKKyAgZG8geyBjPSBmZ2V0YyhzdGRpbik7IH0gd2hpbGUgKChjID09IEVSUiAmJiBlcnJubz09RUlOVFIpIHx8ICgoYyAhPSAnXG4nKSAmJiBjICE9IEVPRikpOworICBpZiAoKGMgPT0gRVJSKSB8fCAoYyA9PSBFT0YpKQorICAgIG9oc2hpdGUoXygiZXJyb3IgcmVhZGluZyBhY2tub3dsZWRnZW1lbnQgb2YgcHJvZ3JhbSBmYWlsdXJlIG1lc3NhZ2UiKSk7CisgIHJldHVybiB1cnFyX2ZhaWw7Cit9CisKK3N0YXRpYyB1cnFyZXN1bHQgcnVuc2NyaXB0KGNvbnN0IGNoYXIgKmV4ZXBhdGgsIGNvbnN0IGNoYXIgKm5hbWUpIHsKKyAgdXJxcmVzdWx0IHVyOworCisgIHVyPSBlbnN1cmVvcHRpb25zKCk7ICBpZiAodXIgIT0gdXJxcl9ub3JtYWwpIHJldHVybiB1cjsKKyAgdXI9bG9ja21ldGhvZCgpOyAgaWYgKHVyICE9IHVycXJfbm9ybWFsKSByZXR1cm4gdXI7CisgIGdldGN1cnJlbnRvcHQoKTsKKworICBpZiAoY29wdGlvbikgeworICAgIHN0cnVjdCBjb21tYW5kIGNtZDsKKworICAgIHN0cmNweShjb3B0aW9uLT5tZXRoLT5wYXRoaW5tZXRoLGV4ZXBhdGgpOworCisgICAgY29tbWFuZF9pbml0KCZjbWQsIGNvcHRpb24tPm1ldGgtPnBhdGgsIG5hbWUpOworICAgIGNvbW1hbmRfYWRkX2FyZ3MoJmNtZCwgZXhlcGF0aCwgZHBrZ19kYl9nZXRfZGlyKCksCisgICAgICAgICAgICAgICAgICAgICBjb3B0aW9uLT5tZXRoLT5uYW1lLCBjb3B0aW9uLT5uYW1lLCBOVUxMKTsKKyAgICB1ciA9IGZhbGxpYmxlc3VicHJvY2VzcygmY21kKTsKKyAgICBjb21tYW5kX2Rlc3Ryb3koJmNtZCk7CisgIH0gZWxzZSB7CisgICAgc3RoZmFpbGVkKCJubyBhY2Nlc3MgbWV0aG9kIGlzIHNlbGVjdGVkL2NvbmZpZ3VyZWQiKTsKKyAgICB1cj0gdXJxcl9mYWlsOworICB9CisgIHBvcF9jbGVhbnVwKGVoZmxhZ19ub3JtYWx0aWR5KTsKKworICByZXR1cm4gdXI7Cit9CisKK3VycXJlc3VsdCB1cnFfdXBkYXRlKHZvaWQpIHsKKyAgcmV0dXJuIHJ1bnNjcmlwdChNRVRIT0RVUERBVEVTQ1JJUFQsXygidXBkYXRlIGF2YWlsYWJsZSBsaXN0IHNjcmlwdCIpKTsKK30KKwordXJxcmVzdWx0IHVycV9pbnN0YWxsKHZvaWQpIHsKKyAgcmV0dXJuIHJ1bnNjcmlwdChNRVRIT0RJTlNUQUxMU0NSSVBULF8oImluc3RhbGxhdGlvbiBzY3JpcHQiKSk7Cit9CisKK3N0YXRpYyB1cnFyZXN1bHQgcnVuZHBrZ2F1dG8oY29uc3QgY2hhciAqbmFtZSwgY29uc3QgY2hhciAqZHBrZ21vZGUpIHsKKyAgdXJxcmVzdWx0IHVyOworICBzdHJ1Y3QgY29tbWFuZCBjbWQ7CisKKyAgY29tbWFuZF9pbml0KCZjbWQsIERQS0csIG5hbWUpOworICBjb21tYW5kX2FkZF9hcmdzKCZjbWQsIERQS0csICItLWFkbWluZGlyIiwgZHBrZ19kYl9nZXRfZGlyKCksICItLXBlbmRpbmciLAorICAgICAgICAgICAgICAgICAgIGRwa2dtb2RlLCBOVUxMKTsKKworICBjdXJzZXNvZmYoKTsKKyAgcHJpbnRmKCJydW5uaW5nIGRwa2cgLS1wZW5kaW5nICVzIC4uLlxuIixkcGtnbW9kZSk7CisgIGZmbHVzaChzdGRvdXQpOworICB1ciA9IGZhbGxpYmxlc3VicHJvY2VzcygmY21kKTsKKyAgY29tbWFuZF9kZXN0cm95KCZjbWQpOworCisgIHJldHVybiB1cjsKK30KKwordXJxcmVzdWx0IHVycV9yZW1vdmUodm9pZCkgeworICByZXR1cm4gcnVuZHBrZ2F1dG8oImRwa2cgLS1yZW1vdmUiLCItLXJlbW92ZSIpOworfQorCit1cnFyZXN1bHQgdXJxX2NvbmZpZyh2b2lkKSB7CisgIHJldHVybiBydW5kcGtnYXV0bygiZHBrZyAtLWNvbmZpZ3VyZSIsIi0tY29uZmlndXJlIik7Cit9CisKK3VycXJlc3VsdCB1cnFfc2V0dXAodm9pZCkgeworICBxdWl0YWN0aW9uIHFhOworICB1cnFyZXN1bHQgdXI7CisKKyAgdXI9IGVuc3VyZW9wdGlvbnMoKTsgIGlmICh1ciAhPSB1cnFyX25vcm1hbCkgcmV0dXJuIHVyOworICB1cj1sb2NrbWV0aG9kKCk7ICBpZiAodXIgIT0gdXJxcl9ub3JtYWwpIHJldHVybiB1cjsKKyAgZ2V0Y3VycmVudG9wdCgpOworCisgIGN1cnNlc29uKCk7CisgIG1ldGhvZGxpc3QgKmw9IG5ldyBtZXRob2RsaXN0KCk7CisgIHFhPSBsLT5kaXNwbGF5KCk7CisgIGRlbGV0ZSBsOworCisgIGlmIChxYSA9PSBxYV9xdWl0Y2hlY2tzYXZlKSB7CisgICAgc3RydWN0IGNvbW1hbmQgY21kOworCisgICAgc3RyY3B5KGNvcHRpb24tPm1ldGgtPnBhdGhpbm1ldGgsTUVUSE9EU0VUVVBTQ1JJUFQpOworCisgICAgY29tbWFuZF9pbml0KCZjbWQsIGNvcHRpb24tPm1ldGgtPnBhdGgsIF8oInF1ZXJ5L3NldHVwIHNjcmlwdCIpKTsKKyAgICBjb21tYW5kX2FkZF9hcmdzKCZjbWQsIE1FVEhPRFNFVFVQU0NSSVBULCBkcGtnX2RiX2dldF9kaXIoKSwKKyAgICAgICAgICAgICAgICAgICAgIGNvcHRpb24tPm1ldGgtPm5hbWUsIGNvcHRpb24tPm5hbWUsIE5VTEwpOworICAgIHVyID0gZmFsbGlibGVzdWJwcm9jZXNzKCZjbWQpOworICAgIGNvbW1hbmRfZGVzdHJveSgmY21kKTsKKyAgICBpZiAodXIgPT0gdXJxcl9ub3JtYWwpIHdyaXRlY3VycmVudG9wdCgpOworICB9IGVsc2UgeworICAgIHVyPSB1cnFyX2ZhaWw7CisgIH0KKworICBwb3BfY2xlYW51cChlaGZsYWdfbm9ybWFsdGlkeSk7CisgIHJldHVybiB1cjsKK30KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9tZXRob2QuaCBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9tZXRob2QuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hOTYzNzgwCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L21ldGhvZC5oCkBAIC0wLDAgKzEsOTUgQEAKKy8qIC0qLSBjKysgLSotCisgKiBkc2VsZWN0IC0gRGViaWFuIHBhY2thZ2UgbWFpbnRlbmFuY2UgdXNlciBpbnRlcmZhY2UKKyAqIG1ldGhvZC5oIC0gYWNjZXNzIG1ldGhvZCBoYW5kbGluZyBkZWNsYXJhdGlvbnMKKyAqCisgKiBDb3B5cmlnaHQgwqkgMTk5NSBJYW4gSmFja3NvbiA8aWFuQGNoaWFyay5ncmVlbmVuZC5vcmcudWs+CisgKiBDb3B5cmlnaHQgwqkgMjAwMSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaWZuZGVmIE1FVEhPRF9ICisjZGVmaW5lIE1FVEhPRF9ICisKKyNkZWZpbmUgQ01FVEhPUFRGSUxFCQkiY21ldGhvcHQiCisjZGVmaW5lIE1FVEhMT0NLRklMRQkJIm1ldGhsb2NrIgorCisjZGVmaW5lIE1FVEhPRFNESVIJCSJtZXRob2RzIgorCisjZGVmaW5lIElNRVRIT0RNQVhMRU4JCTUwCisjZGVmaW5lIElPUFRJT05NQVhMRU4JCUlNRVRIT0RNQVhMRU4KKyNkZWZpbmUgTUVUSE9ET1BUSU9OU0ZJTEUJIm5hbWVzIgorI2RlZmluZSBNRVRIT0RTRVRVUFNDUklQVAkic2V0dXAiCisjZGVmaW5lIE1FVEhPRFVQREFURVNDUklQVAkidXBkYXRlIgorI2RlZmluZSBNRVRIT0RJTlNUQUxMU0NSSVBUCSJpbnN0YWxsIgorI2RlZmluZSBPUFRJT05TREVTQ1BGWAkJImRlc2MuIgorI2RlZmluZSBPUFRJT05JTkRFWE1BWExFTgk1CisKK3N0cnVjdCBtZXRob2QgeworICBzdHJ1Y3QgbWV0aG9kICpuZXh0LCAqcHJldjsKKyAgY2hhciAqbmFtZSwgKnBhdGgsICpwYXRoaW5tZXRoOworfTsKKworc3RydWN0IGRzZWxlY3Rfb3B0aW9uIHsKKyAgZHNlbGVjdF9vcHRpb24gKm5leHQ7CisgIG1ldGhvZCAqbWV0aDsKKyAgY2hhciBpbmRleFtPUFRJT05JTkRFWE1BWExFTl07CisgIGNoYXIgKm5hbWUsICpzdW1tYXJ5OworICBjaGFyICpkZXNjcmlwdGlvbjsKK307CisKK2NsYXNzIG1ldGhvZGxpc3QgOiBwdWJsaWMgYmFzZWxpc3QgeworcHJvdGVjdGVkOgorICBpbnQgc3RhdHVzX3dpZHRoLCBnYXBfd2lkdGgsIG5hbWVfd2lkdGgsIGRlc2NyaXB0aW9uX3dpZHRoOworICBpbnQgbmFtZV9jb2x1bW4sIGRlc2NyaXB0aW9uX2NvbHVtbjsKKworICAvLyBUYWJsZSBvZiBtZXRob2RzCisgIHN0cnVjdCBkc2VsZWN0X29wdGlvbiAqKnRhYmxlOworCisgIC8vIE1pc2MuCisgIGNoYXIgc2VhcmNoc3RyaW5nWzUwXTsKKworICAvLyBJbmZvcm1hdGlvbiBkaXNwbGF5cworICB2b2lkIGl0ZF9kZXNjcmlwdGlvbigpOworCisgIC8vIERlZmluZSB0aGVzZSB2aXJ0dWFscworICB2b2lkIHJlZHJhdzFpdGVtc2VsKGludCBpbmRleCwgaW50IHNlbGVjdGVkKTsKKyAgdm9pZCByZWRyYXdjb2xoZWFkcygpOworICB2b2lkIHJlZHJhd3RoaXNzdGF0ZSgpOworICB2b2lkIHJlZHJhd2luZm8oKTsKKyAgdm9pZCByZWRyYXd0aXRsZSgpOworICB2b2lkIHNldHdpZHRocygpOworICB2b2lkIHNldGhlaWdodHMoKTsKKyAgY29uc3QgY2hhciAqaXRlbW5hbWUoaW50IGluZGV4KTsKKyAgY29uc3Qgc3RydWN0IGhlbHBtZW51ZW50cnkgKmhlbHBtZW51bGlzdCgpOworCisgcHVibGljOgorICAvLyBLZXliaW5kaW5nIGZ1bmN0aW9ucyAqLworICB2b2lkIGtkX3F1aXQoKTsKKyAgdm9pZCBrZF9hYm9ydCgpOworCisgIG1ldGhvZGxpc3QoKTsKKyAgcXVpdGFjdGlvbiBkaXNwbGF5KCk7CisgIH5tZXRob2RsaXN0KCk7Cit9OworCitleHRlcm4gaW50IG5vcHRpb25zOworZXh0ZXJuIHN0cnVjdCBkc2VsZWN0X29wdGlvbiAqb3B0aW9ucywgKmNvcHRpb247CitleHRlcm4gc3RydWN0IG1ldGhvZCAqbWV0aG9kczsKKwordm9pZCByZWFkbWV0aG9kcyhjb25zdCBjaGFyICpwYXRoYmFzZSwgZHNlbGVjdF9vcHRpb24gKipvcHRpb25zcHAsIGludCAqbnJlYWQpOwordm9pZCBnZXRjdXJyZW50b3B0KCk7Cit2b2lkIHdyaXRlY3VycmVudG9wdCgpOworCisjZW5kaWYgLyogTUVUSE9EX0ggKi8KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9tZXRob2RzL0RlYmlhbi9Ec2VsZWN0L0Z0cC5wbSBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9tZXRob2RzL0RlYmlhbi9Ec2VsZWN0L0Z0cC5wbQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43M2UzYmRmCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L21ldGhvZHMvRGViaWFuL0RzZWxlY3QvRnRwLnBtCkBAIC0wLDAgKzEsMzYyIEBACisjIC0qLXBlcmwtKi0KKwordXNlIE5ldDo6RlRQOwordXNlIEV4cG9ydGVyOwordXNlIERhdGE6OkR1bXBlcjsKKwordXNlIHN0cmljdDsKK3VzZSB2YXJzIHF3KEBFWFBPUlQgJWNvbmZpZyAkVkFSMSk7CisKK0BFWFBPUlQgPSBxdyh5ZXNubyBkb19jb25uZWN0IGRvX21kdG0gYWRkX3NpdGUgZWRpdF9zaXRlCisgICAgICAgICAgICAgZWRpdF9jb25maWcgcmVhZF9jb25maWcgc3RvcmVfY29uZmlnIHZpZXdfbWlycm9ycyBuYik7CisKK3N1YiBuYiB7CisgIG15ICRuYiA9IHNoaWZ0OworICBpZiAoJG5iID4gMTAyNCoqMikgeworICAgIHJldHVybiBzcHJpbnRmKCIlLjJmTSIsICRuYiAvIDEwMjQqKjIpOworICB9IGVsc2lmICgkbmIgPiAxMDI0KSB7CisgICAgcmV0dXJuIHNwcmludGYoIiUuMmZrIiwgJG5iIC8gMTAyNCk7CisgIH0gZWxzZSB7CisgICAgcmV0dXJuIHNwcmludGYoIiUuMmZiIiwgJG5iKTsKKyAgfQorCit9CisKK3N1YiByZWFkX2NvbmZpZyB7CisgIG15ICR2YXJzID0gc2hpZnQ7CisgIG15ICgkY29kZSwgJGNvbmYpOworCisgIGxvY2FsKCQvKTsKKyAgb3BlbihWQVJTLCAkdmFycykgfHwgZGllICJDb3VsZG4ndCBvcGVuICR2YXJzIDogJCFcblRyeSB0byByZWxhdW5jaCB0aGUgJ0FjY2Vzcycgc3RlcCBpbiBkc2VsZWN0LCB0aGFua3MuXG4iOworICAkY29kZSA9IDxWQVJTPjsKKyAgY2xvc2UgVkFSUzsKKworICAkY29uZiA9IGV2YWwgJGNvZGU7CisgIGRpZSAiQ291bGRuJ3QgZXZhbCAkdmFycyBjb250ZW50IDogJEBcbiIgaWYgKCRAKTsKKyAgaWYgKHJlZigkY29uZikgPX4gL0hBU0gvKSB7CisgICAgZm9yZWFjaCAoa2V5cyAleyRjb25mfSkgeworICAgICAgJGNvbmZpZ3skX30gPSAkY29uZi0+eyRffTsKKyAgICB9CisgIH0gZWxzZSB7CisgICAgcHJpbnQgIkJhZCAkdmFycyBmaWxlIDogcmVtb3ZpbmcgaXQuXG4iOworICAgIHByaW50ICJQbGVhc2UgcmVsYXVuY2ggdGhlICdBY2Nlc3MnIHN0ZXAgaW4gZHNlbGVjdC4gVGhhbmtzLlxuIjsKKyAgICB1bmxpbmsgJHZhcnM7CisgICAgZXhpdCAwOworICB9Cit9CisKK3N1YiBzdG9yZV9jb25maWcgeworICBteSAkdmFycyA9IHNoaWZ0OworCisgICMgQ2hlY2sgdGhhdCBjb25maWcgaXMgY29tcGxldGVkCisgIHJldHVybiBpZiBub3QgJGNvbmZpZ3snZG9uZSd9OworCisgIG9wZW4oVkFSUywgIj4kdmFycyIpIHx8IGRpZSAiQ291bGRuJ3Qgb3BlbiAkdmFycyBpbiB3cml0ZSBtb2RlIDogJCFcbiI7CisgIHByaW50IFZBUlMgRHVtcGVyKFwlY29uZmlnKTsKKyAgY2xvc2UgVkFSUzsKK30KKworc3ViIHZpZXdfbWlycm9ycyB7CisgIGlmICgtZiAnL3Vzci9saWIvZHBrZy9tZXRob2RzL2Z0cC9SRUFETUUubWlycm9ycy50eHQnKSB7CisgICAgc3lzdGVtKCcvdXNyL2Jpbi9wYWdlcicsICcvdXNyL2xpYi9kcGtnL21ldGhvZHMvZnRwL1JFQURNRS5taXJyb3JzLnR4dCcpOworICB9IGVsc2lmICgtZiAnL3Vzci9saWIvZHBrZy9tZXRob2RzL2Z0cC9SRUFETUUubWlycm9ycy50eHQuZ3onKSB7CisgICAgc3lzdGVtKCdnemlwIC1kYyAvdXNyL2xpYi9kcGtnL21ldGhvZHMvZnRwL1JFQURNRS5taXJyb3JzLnR4dC5neiB8IHBhZ2VyJyk7CisgIH0gZWxzZSB7CisgICAgcHJpbnQgIi91c3IvbGliL2Rwa2cvbWV0aG9kcy9mdHAvUkVBRE1FLm1pcnJvcnMudHh0KC5neik6IGZpbGUgbm90IGZvdW5kLlxuIjsKKyAgfQorfQorCitzdWIgZWRpdF9jb25maWcgeworICBteSAkbWV0aGRpciA9IHNoaWZ0OworICBteSAkaTsKKworICAjR2V0IGEgY29uZmlnIGZvciBmdHAgc2l0ZXMKKyAgd2hpbGUoMSkgeworICAgICRpID0gMTsKKyAgICBwcmludCAiXG5cbkxpc3Qgb2Ygc2VsZWN0ZWQgZnRwIHNpdGVzIDpcbiI7CisgICAgZm9yZWFjaCAoQHskY29uZmlneydzaXRlJ319KSB7CisgICAgICBwcmludCAiJGkuIGZ0cDovLyRfLT5bMF0kXy0+WzFdIEB7JF8tPlsyXX1cbiI7CisgICAgICAkaSsrOworICAgIH0KKyAgICBwcmludCAiXG5FbnRlciBhIGNvbW1hbmQgKGE9YWRkIGU9ZWRpdCBkPWRlbGV0ZSBxPXF1aXQgbT1taXJyb3IgbGlzdCkgXG4iOworICAgIHByaW50ICJldmVudHVhbGx5IGZvbGxvd2VkIGJ5IGEgc2l0ZSBudW1iZXIgOiAiOworICAgIGNob21wKCRfID0gPFNURElOPik7CisgICAgL3EvaSAmJiBsYXN0OworICAgIC9hL2kgJiYgYWRkX3NpdGUoKTsKKyAgICAvZFxzKihcZCspL2kgJiYKKyAgICBkbyB7IHNwbGljZShAeyRjb25maWd7J3NpdGUnfX0sICQxLTEsIDEpIGlmICgkMSA8PSBAeyRjb25maWd7J3NpdGUnfX0pOworICAgICAgICAgbmV4dDt9OworICAgIC9lXHMqKFxkKykvaSAmJgorICAgIGRvIHsgZWRpdF9zaXRlKCRjb25maWd7J3NpdGUnfVskMS0xXSkgaWYgKCQxIDw9IEB7JGNvbmZpZ3snc2l0ZSd9fSk7CisgICAgICAgICBuZXh0OyB9OworICAgIG0jbSNpICYmIHZpZXdfbWlycm9ycygpOworICB9CisKKyAgcHJpbnQgIlxuIjsKKyAgJGNvbmZpZ3sndXNlX2F1dGhfcHJveHknfSA9IHllc25vKCRjb25maWd7J3VzZV9hdXRoX3Byb3h5J30gPyAieSIgOiAibiIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJHbyB0aHJvdWdoIGFuIGF1dGhlbnRpY2F0ZWQgcHJveHkiKTsKKworICBpZiAoJGNvbmZpZ3sndXNlX2F1dGhfcHJveHknfSkgeworICAgIHByaW50ICJcbkVudGVyIHByb3h5IGhvc3RuYW1lIFskY29uZmlneydwcm94eWhvc3QnfV0gOiAiOworICAgIGNob21wKCRfID0gPFNURElOPik7CisgICAgJGNvbmZpZ3sncHJveHlob3N0J30gPSAkXyB8fCAkY29uZmlneydwcm94eWhvc3QnfTsKKworICAgIHByaW50ICJcbkVudGVyIHByb3h5IGxvZyBuYW1lIFskY29uZmlneydwcm94eWxvZ25hbWUnfV0gOiAiOworICAgIGNob21wKCRfID0gPFNURElOPik7CisgICAgJGNvbmZpZ3sncHJveHlsb2duYW1lJ30gPSAkXyB8fCAkY29uZmlneydwcm94eWxvZ25hbWUnfTsKKworICAgIHByaW50ICJcbkVudGVyIHByb3h5IHBhc3N3b3JkIFskY29uZmlneydwcm94eXBhc3N3b3JkJ31dIDogIjsKKyAgICBjaG9tcCAoJF8gPSA8U1RESU4+KTsKKyAgICAkY29uZmlneydwcm94eXBhc3N3b3JkJ30gPSAkXyB8fCAkY29uZmlneydwcm94eXBhc3N3b3JkJ307CisgIH0KKworICBwcmludCAiXG5FbnRlciBkaXJlY3RvcnkgdG8gZG93bmxvYWQgYmluYXJ5IHBhY2thZ2UgZmlsZXMgdG9cbiI7CisgIHByaW50ICIocmVsYXRpdmUgdG8gJG1ldGhkaXIpXG4iOworICB3aGlsZSgxKSB7CisgICAgcHJpbnQgIlskY29uZmlneydkbGRpcid9XSA6ICI7CisgICAgY2hvbXAoJF8gPSA8U1RESU4+KTsKKyAgICBzey8kfXt9OworICAgICRjb25maWd7J2RsZGlyJ30gPSAkXyBpZiAoJF8pOworICAgIGxhc3QgaWYgLWQgIiRtZXRoZGlyLyRjb25maWd7J2RsZGlyJ30iOworICAgIHByaW50ICIkbWV0aGRpci8kY29uZmlneydkbGRpcid9IGlzIG5vdCBhIGRpcmVjdG9yeSAhXG4iOworICB9Cit9CisKK3N1YiBhZGRfc2l0ZSB7CisgIG15ICRwYXMgPSAxOworICBteSAkdXNlciA9ICJhbm9ueW1vdXMiOworICBteSAkZW1haWwgPSBgd2hvYW1pYDsKKyAgY2hvbXAgJGVtYWlsOworICAkZW1haWwgLj0gJ0AnIC4gYGNhdCAvZXRjL21haWxuYW1lIHx8IGRuc2RvbWFpbm5hbWVgOworICBjaG9tcCAkZW1haWw7CisgIG15ICRkaXIgPSAiL2RlYmlhbiI7CisKKyAgcHVzaCAoQHskY29uZmlneydzaXRlJ319LCBbICIiLCAkZGlyLCBbICJkaXN0cy9zdGFibGUvbWFpbiIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGlzdHMvc3RhYmxlL2NvbnRyaWIiLAorCQkJCQkgICJkaXN0cy9zdGFibGUvbm9uLWZyZWUiIF0sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHBhcywgJHVzZXIsICRlbWFpbCBdKTsKKyAgZWRpdF9zaXRlKCRjb25maWd7J3NpdGUnfVtAeyRjb25maWd7J3NpdGUnfX0gLSAxXSk7Cit9CisKK3N1YiBlZGl0X3NpdGUgeworICBteSAkc2l0ZSA9IHNoaWZ0OworCisgIGxvY2FsKCRfKTsKKworICBwcmludCAiXG5FbnRlciBmdHAgc2l0ZSBbJHNpdGUtPlswXV0gOiAiOworICBjaG9tcCgkXyA9IDxTVERJTj4pOworICAkc2l0ZS0+WzBdID0gJF8gfHwgJHNpdGUtPlswXTsKKworICBwcmludCAiXG5Vc2UgcGFzc2l2ZSBtb2RlIFsiIC4gKCRzaXRlLT5bM10gPyAieSIgOiAibiIpIC4iXSA6ICI7CisgIGNob21wKCRfID0gPFNURElOPik7CisgICRzaXRlLT5bM10gPSAoL3kvaSA/IDEgOiAwKSBpZiAoJF8pOworCisgIHByaW50ICJcbkVudGVyIHVzZXJuYW1lIFskc2l0ZS0+WzRdXSA6ICI7CisgIGNob21wKCRfID0gPFNURElOPik7CisgICRzaXRlLT5bNF0gPSAkXyB8fCAkc2l0ZS0+WzRdOworCisgIHByaW50IDw8RU9GOworCitJZiB5b3UncmUgdXNpbmcgYW5vbnltb3VzIGZ0cCB0byByZXRyaWV2ZSBmaWxlcywgZW50ZXIgeW91ciBlbWFpbAorYWRkcmVzcyBmb3IgdXNlIGFzIGEgcGFzc3dvcmQuIE90aGVyd2lzZSBlbnRlciB5b3VyIHBhc3N3b3JkLAorb3IgIj8iIGlmIHlvdSB3YW50IGRzZWxlY3QtZnRwIHRvIHByb21wdCB5b3UgZWFjaCB0aW1lLgorCitFT0YKKworICBwcmludCAiRW50ZXIgcGFzc3dvcmQgWyRzaXRlLT5bNV1dIDogIjsKKyAgY2hvbXAoJF8gPSA8U1RESU4+KTsKKyAgJHNpdGUtPls1XSA9ICRfIHx8ICRzaXRlLT5bNV07CisKKyAgcHJpbnQgIlxuRW50ZXIgZGViaWFuIGRpcmVjdG9yeSBbJHNpdGUtPlsxXV0gOiAiOworICBjaG9tcCgkXyA9IDxTVERJTj4pOworICAkc2l0ZS0+WzFdID0gJF8gfHwgJHNpdGUtPlsxXTsKKworICBwcmludCAiXG5FbnRlciBzcGFjZSBzZXBhcmF0ZWQgbGlzdCBvZiBkaXN0cmlidXRpb25zIHRvIGdldFxuIjsKKyAgcHJpbnQgIltAeyRzaXRlLT5bMl19XSA6ICI7CisgIGNob21wKCRfID0gPFNURElOPik7CisgICRzaXRlLT5bMl0gPSBbIHNwbGl0KC9ccysvKSBdIGlmICRfOworfQorCitzdWIgeWVzbm8oJCQpIHsKKyAgbXkgKCRkLCAkbXNnKSA9IEBfOworCisgIG15ICgkcmVzLCAkcik7CisgICRyID0gLTE7CisgICRyID0gMCBpZiAkZCBlcSAibiI7CisgICRyID0gMSBpZiAkZCBlcSAieSI7CisgIGRpZSAiSW5jb3JyZWN0IHVzYWdlIG9mIHllc25vLCBzdG9wcGVkIiBpZiAkciA9PSAtMTsKKyAgd2hpbGUgKDEpIHsKKyAgICBwcmludCAkbXNnLCAiIFskZF06ICI7CisgICAgJHJlcyA9IDxTVERJTj47CisgICAgJHJlcyA9fiAvXltZeV0vIGFuZCByZXR1cm4gMTsKKyAgICAkcmVzID1+IC9eW05uXS8gYW5kIHJldHVybiAwOworICAgICRyZXMgPX4gL15bIFx0XSokLyBhbmQgcmV0dXJuICRyOworICAgIHByaW50ICJQbGVhc2UgZW50ZXIgb25lIG9mIHRoZSBsZXR0ZXJzIGB5JyBvciBgbidcbiI7CisgIH0KK30KKworIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCisKK3N1YiBkb19jb25uZWN0IHsKKyAgICBteSgkZnRwc2l0ZSwkdXNlcm5hbWUsJHBhc3MsJGZ0cGRpciwkcGFzc2l2ZSwKKyAgICAgICAkdXNlcHJveHksJHByb3h5aG9zdCwkcHJveHlsb2duYW1lLCRwcm94eXBhc3N3b3JkKSA9IEBfOworCisgICAgbXkoJHJwYXNzLCRyZW1vdGVob3N0LCRyZW1vdGV1c2VyLCRmdHApOworCisgIFRSWV9DT05ORUNUOgorICAgIHdoaWxlKDEpIHsKKwlteSAkZXhpdCA9IDA7CisKKwlpZiAoJHVzZXByb3h5KSB7CisJICAgICRyZW1vdGVob3N0ID0gJHByb3h5aG9zdDsKKwkgICAgJHJlbW90ZXVzZXIgPSAkdXNlcm5hbWUgLiAiQCIgLiAkZnRwc2l0ZTsKKwl9IGVsc2UgeworCSAgICAkcmVtb3RlaG9zdCA9ICRmdHBzaXRlOworCSAgICAkcmVtb3RldXNlciA9ICR1c2VybmFtZTsKKwl9CisJcHJpbnQgIkNvbm5lY3RpbmcgdG8gJGZ0cHNpdGUuLi5cbiI7CisJJGZ0cCA9IE5ldDo6RlRQLT5uZXcoJHJlbW90ZWhvc3QsIFBhc3NpdmUgPT4gJHBhc3NpdmUpOworCWlmKCEkZnRwIHx8ICEkZnRwLT5vaykgeworCSAgcHJpbnQgIkZhaWxlZCB0byBjb25uZWN0XG4iOworCSAgJGV4aXQ9MTsKKwl9CisJaWYgKCEkZXhpdCkgeworIyAgICAkZnRwLT5kZWJ1ZygxKTsKKwkgICAgaWYgKCR1c2Vwcm94eSkgeworCQlwcmludCAiTG9naW4gb24gJHByb3h5aG9zdC4uLlxuIjsKKwkJJGZ0cC0+X1VTRVIoJHByb3h5bG9nbmFtZSk7CisJCSRmdHAtPl9QQVNTKCRwcm94eXBhc3N3b3JkKTsKKwkgICAgfQorCSAgICBwcmludCAiTG9naW4gYXMgJHVzZXJuYW1lLi4uXG4iOworCSAgICBpZiAoJHBhc3MgZXEgIj8iKSB7CisJCSAgICBwcmludCAiRW50ZXIgcGFzc3dvcmQgZm9yIGZ0cDogIjsKKwkJICAgIHN5c3RlbSgic3R0eSIsICItZWNobyIpOworCQkgICAgJHJwYXNzID0gPFNURElOPjsKKwkJICAgIGNob21wICRycGFzczsKKwkJICAgIHByaW50ICJcbiI7CisJCSAgICBzeXN0ZW0oInN0dHkiLCAiZWNobyIpOworCSAgICB9IGVsc2UgeworCQkgICAgJHJwYXNzID0gJHBhc3M7CisJICAgIH0KKwkgICAgaWYoISRmdHAtPmxvZ2luKCRyZW1vdGV1c2VyLCAkcnBhc3MpKQorCSAgICB7IHByaW50ICRmdHAtPm1lc3NhZ2UoKSAuICJcbiI7ICRleGl0PTE7IH0KKwl9CisJaWYgKCEkZXhpdCkgeworCSAgICBwcmludCAiU2V0dGluZyB0cmFuc2ZlciBtb2RlIHRvIGJpbmFyeS4uLlxuIjsKKwkgICAgaWYoISRmdHAtPmJpbmFyeSgpKSB7IHByaW50ICRmdHAtPm1lc3NhZ2UgLiAiXG4iOyAkZXhpdD0xOyB9CisJfQorCWlmICghJGV4aXQpIHsKKwkgICAgcHJpbnQgIkNkIHRvIGAkZnRwZGlyJy4uLlxuIjsKKwkgICAgaWYoISRmdHAtPmN3ZCgkZnRwZGlyKSkgeyBwcmludCAkZnRwLT5tZXNzYWdlIC4gIlxuIjsgJGV4aXQ9MTsgfQorCX0KKworCWlmICgkZXhpdCkgeworCSAgICBpZiAoeWVzbm8gKCJ5IiwgIlJldHJ5IGNvbm5lY3Rpb24gYXQgb25jZSIpKSB7CisJCW5leHQgVFJZX0NPTk5FQ1Q7CisJICAgIH0gZWxzZSB7CisJCWRpZSAiZXJyb3IiOworCSAgICB9CisJfQorCisJbGFzdCBUUllfQ09OTkVDVDsKKyAgICB9CisKKyMgICAgaWYoISRmdHAtPnBhc3YoKSkgeyBwcmludCAkZnRwLT5tZXNzYWdlIC4gIlxuIjsgZGllICJlcnJvciI7IH0KKworICAgIHJldHVybiAkZnRwOworfQorCisjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKKworIyBhc3N1bWUgc2VydmVyIHN1cHBvcnRzIE1EVE0gLSB3aWxsIGJlIGFkanVzdGVkIGlmIG5lZWRlZAorbXkgJGhhc19tZHRtID0gMTsKKworbXkgJW1vbnRocyA9ICgnSmFuJywgMCwKKwkgICAgICAnRmViJywgMSwKKwkgICAgICAnTWFyJywgMiwKKwkgICAgICAnQXByJywgMywKKwkgICAgICAnTWF5JywgNCwKKwkgICAgICAnSnVuJywgNSwKKwkgICAgICAnSnVsJywgNiwKKwkgICAgICAnQXVnJywgNywKKwkgICAgICAnU2VwJywgOCwKKwkgICAgICAnT2N0JywgOSwKKwkgICAgICAnTm92JywgMTAsCisJICAgICAgJ0RlYycsIDExKTsKKworc3ViIGRvX21kdG0geworICAgIG15ICgkZnRwLCAkZmlsZSkgPSBAXzsKKyAgICBteSAoJHRpbWUpOworCisgICAgI2lmICgkaGFzX21kdG0pIHsKKwkkdGltZSA9ICRmdHAtPm1kdG0oJGZpbGUpOworIwlteSAkY29kZT0kZnRwLT5jb2RlKCk7CW15ICRtZXNzYWdlPSRmdHAtPm1lc3NhZ2UoKTsKKyMJcHJpbnQgIiBbICRjb2RlOiAkbWVzc2FnZSBdICI7CisJaWYgKCRmdHAtPmNvZGUoKSA9PSA1MDIJCSAgICAgICMgTURUTSBub3QgaW1wbGVtZW50ZWQKKwkgICAgfHwgJGZ0cC0+Y29kZSgpID09IDUwMAkgICAgICAjIGNvbW1hbmQgbm90IHVuZGVyc3Rvb2QgKFNVTiBmaXJld2FsbCkKKwkgICAgKSB7CisJICAgICRoYXNfbWR0bSA9IDA7CisJfSBlbHNpZiAoISRmdHAtPm9rKCkpIHsKKwkgICAgcmV0dXJuIHVuZGVmOworCX0KKyAgICAjfQorCisgICAgaWYgKCEgJGhhc19tZHRtKSB7CisJdXNlIFRpbWU6OkxvY2FsOworCisJbXkgQGZpbGVzID0gJGZ0cC0+ZGlyKCRmaWxlKTsKKwlpZiAoKCQjZmlsZXMgPT0gLTEpIHx8ICgkZnRwLT5jb2RlID09IDU1MCkpIHsgIyBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5CisJICAgIHJldHVybiB1bmRlZjsKKwl9CisKKyMJbXkgJGNvZGU9JGZ0cC0+Y29kZSgpOwlteSAkbWVzc2FnZT0kZnRwLT5tZXNzYWdlKCk7CisjCXByaW50ICIgWyAkY29kZTogJG1lc3NhZ2UgXSAiOworCisjCXByaW50ICJbJCNmaWxlc10iOworCisJIyBnZXQgdGhlIGRhdGUgY29tcG9uZW50cyBmcm9tIHRoZSBvdXRwdXQgb2YgImxzIC1sIgorCWlmICgkZmlsZXNbMF0gPX4KKwkgICAgLyhbXiBdKyAqKXs1fVteIF0rIChbQS1aXVthLXpdezJ9KSAoWyAwLTldWzAtOV0pIChbMC05IF1bMC05XVs6MC05XVswLTldezJ9KS8pIHsKKworICAgICAgICAgICAgbXkoJG1vbnRoX25hbWUsICRkYXksICR5ZWFyT3JUaW1lLCAkbW9udGgsICRob3VycywgJG1pbnV0ZXMsCisJICAgICAgICR5ZWFyKTsKKworCSAgICAjIHdoYXQgd2UgY2FuIHJlYWQKKwkgICAgJG1vbnRoX25hbWUgPSAkMjsKKwkgICAgJGRheSA9IDAgKyAkMzsKKwkgICAgJHllYXJPclRpbWUgPSAkNDsKKworCSAgICAjIHRyYW5zbGF0ZSB0aGUgbW9udGggbmFtZSBpbnRvIG51bWJlcgorCSAgICAkbW9udGggPSAkbW9udGhzeyRtb250aF9uYW1lfTsKKworCSAgICAjIHJlY29nbml6ZSB0aW1lIG9yIHllYXIsIGFuZCBjb21wdXRlIG1pc3Npbmcgb25lCisJICAgIGlmICgkeWVhck9yVGltZSA9fiAvKFswLTldezJ9KTooWzAtOV17Mn0pLykgeworCQkkaG91cnMgPSAwICsgJDE7ICRtaW51dGVzID0gMCArICQyOworCQlteSBAdGhpc19kYXRlID0gZ210aW1lKHRpbWUoKSk7CisJCW15ICR0aGlzX21vbnRoID0gJHRoaXNfZGF0ZVs0XTsKKwkJbXkgJHRoaXNfeWVhciA9ICR0aGlzX2RhdGVbNV07CisJCWlmICgkbW9udGggPiAkdGhpc19tb250aCkgeworCQkgICAgJHllYXIgPSAkdGhpc195ZWFyIC0gMTsKKwkJfSBlbHNlIHsKKwkJICAgICR5ZWFyID0gJHRoaXNfeWVhcjsKKwkJfQorCSAgICB9IGVsc2lmICgkeWVhck9yVGltZSA9fiAvIFswLTldezR9LykgeworCQkkaG91cnMgPSAwOyAkbWludXRlcyA9IDA7CisJCSR5ZWFyID0gJHllYXJPclRpbWUgLSAxOTAwOworCSAgICB9IGVsc2UgeworCQlkaWUgIkNhbm5vdCBwYXJzZSB5ZWFyLW9yLXRpbWUiOworCSAgICB9CisKKwkgICAgIyBidWlsZCBhIHN5c3RlbSB0aW1lCisJICAgICR0aW1lID0gdGltZWdtICgwLCAkbWludXRlcywgJGhvdXJzLCAkZGF5LCAkbW9udGgsICR5ZWFyKTsKKwl9IGVsc2UgeworCSAgICBkaWUgIlJlZ2V4cCBtYXRjaCBmYWlsZWQgb24gTElTVCBvdXRwdXQiOworCX0KKyAgICB9CisKKyAgICByZXR1cm4gJHRpbWU7Cit9CisKKzE7CisKK19fRU5EX18KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9tZXRob2RzL01ha2VmaWxlLmFtIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L21ldGhvZHMvTWFrZWZpbGUuYW0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMGNkNWJhNwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9tZXRob2RzL01ha2VmaWxlLmFtCkBAIC0wLDAgKzEsNDUgQEAKKyMjIFByb2Nlc3MgdGhpcyBmaWxlIHdpdGggYXV0b21ha2UgdG8gcHJvZHVjZSBNYWtlZmlsZS5pbgorCittZXRob2RzZGlyID0gJChwa2dsaWJkaXIpL21ldGhvZHMKKworbm9iYXNlX2Rpc3RfbWV0aG9kc19EQVRBID0gXAorCWRpc2svbmFtZXMgXAorCWRpc2svZGVzYy5jZHJvbSBcCisJZGlzay9kZXNjLm5mcyBcCisJZGlzay9kZXNjLmhhcmRkaXNrIFwKKwlkaXNrL2Rlc2MubW91bnRlZCBcCisJZmxvcHB5L25hbWVzIFwKKwlmbG9wcHkvZGVzYy5mbG9wcHkgXAorCWZ0cC9uYW1lcyBcCisJZnRwL2Rlc2MuZnRwIFwKKwlmdHAvUkVBRE1FLm1pcnJvcnMudHh0IFwKKwltdWx0aWNkL25hbWVzIFwKKwltdWx0aWNkL2Rlc2MubXVsdGlfY2QgXAorCW11bHRpY2QvZGVzYy5tdWx0aV9tb3VudCBcCisJbXVsdGljZC9kZXNjLm11bHRpX25mcworCitub2Jhc2VfZGlzdF9tZXRob2RzX1NDUklQVFMgPSBcCisJZGlzay9zZXR1cCBcCisJZGlzay91cGRhdGUgXAorCWRpc2svaW5zdGFsbCBcCisJZmxvcHB5L3NldHVwIFwKKwlmbG9wcHkvdXBkYXRlIFwKKwlmbG9wcHkvaW5zdGFsbCBcCisJZnRwL3NldHVwIFwKKwlmdHAvdXBkYXRlIFwKKwlmdHAvaW5zdGFsbCBcCisJbXVsdGljZC9zZXR1cCBcCisJbXVsdGljZC91cGRhdGUgXAorCW11bHRpY2QvaW5zdGFsbAorCitwZXJsbGliZGlyID0gJChQRVJMX0xJQkRJUikKK25vYmFzZV9kaXN0X3BlcmxsaWJfREFUQSA9IERlYmlhbi9Ec2VsZWN0L0Z0cC5wbQorCitFWFRSQV9ESVNUID0gbXVsdGljZC9SRUFETUUubXVsdGljZAorCitpbnN0YWxsLWRhdGEtbG9jYWw6CisJJChta2Rpcl9wKSAkKERFU1RESVIpJChhZG1pbmRpcikvbWV0aG9kcy9tbnQKKwkkKG1rZGlyX3ApICQoREVTVERJUikkKGFkbWluZGlyKS9tZXRob2RzL2Rpc2sKKwkkKG1rZGlyX3ApICQoREVTVERJUikkKGFkbWluZGlyKS9tZXRob2RzL2Zsb3BweQorCSQobWtkaXJfcCkgJChERVNURElSKSQoYWRtaW5kaXIpL21ldGhvZHMvZnRwCisJJChta2Rpcl9wKSAkKERFU1RESVIpJChhZG1pbmRpcikvbWV0aG9kcy9tdWx0aWNkCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvbWV0aG9kcy9NYWtlZmlsZS5pbiBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9tZXRob2RzL01ha2VmaWxlLmluCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmE5ZTE4YTcKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvbWV0aG9kcy9NYWtlZmlsZS5pbgpAQCAtMCwwICsxLDU2MCBAQAorIyBNYWtlZmlsZS5pbiBnZW5lcmF0ZWQgYnkgYXV0b21ha2UgMS4xMS4xIGZyb20gTWFrZWZpbGUuYW0uCisjIEBjb25maWd1cmVfaW5wdXRACisKKyMgQ29weXJpZ2h0IChDKSAxOTk0LCAxOTk1LCAxOTk2LCAxOTk3LCAxOTk4LCAxOTk5LCAyMDAwLCAyMDAxLCAyMDAyLAorIyAyMDAzLCAyMDA0LCAyMDA1LCAyMDA2LCAyMDA3LCAyMDA4LCAyMDA5ICBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sCisjIEluYy4KKyMgVGhpcyBNYWtlZmlsZS5pbiBpcyBmcmVlIHNvZnR3YXJlOyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uCisjIGdpdmVzIHVubGltaXRlZCBwZXJtaXNzaW9uIHRvIGNvcHkgYW5kL29yIGRpc3RyaWJ1dGUgaXQsCisjIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb25zLCBhcyBsb25nIGFzIHRoaXMgbm90aWNlIGlzIHByZXNlcnZlZC4KKworIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZLCB0byB0aGUgZXh0ZW50IHBlcm1pdHRlZCBieSBsYXc7IHdpdGhvdXQKKyMgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQQorIyBQQVJUSUNVTEFSIFBVUlBPU0UuCisKK0BTRVRfTUFLRUAKKworCitWUEFUSCA9IEBzcmNkaXJACitwa2dkYXRhZGlyID0gJChkYXRhZGlyKS9AUEFDS0FHRUAKK3BrZ2luY2x1ZGVkaXIgPSAkKGluY2x1ZGVkaXIpL0BQQUNLQUdFQAorcGtnbGliZGlyID0gJChsaWJkaXIpL0BQQUNLQUdFQAorcGtnbGliZXhlY2RpciA9ICQobGliZXhlY2RpcikvQFBBQ0tBR0VACithbV9fY2QgPSBDRFBBVEg9IiQke1pTSF9WRVJTSU9OKy59JChQQVRIX1NFUEFSQVRPUikiICYmIGNkCitpbnN0YWxsX3NoX0RBVEEgPSAkKGluc3RhbGxfc2gpIC1jIC1tIDY0NAoraW5zdGFsbF9zaF9QUk9HUkFNID0gJChpbnN0YWxsX3NoKSAtYworaW5zdGFsbF9zaF9TQ1JJUFQgPSAkKGluc3RhbGxfc2gpIC1jCitJTlNUQUxMX0hFQURFUiA9ICQoSU5TVEFMTF9EQVRBKQordHJhbnNmb3JtID0gJChwcm9ncmFtX3RyYW5zZm9ybV9uYW1lKQorTk9STUFMX0lOU1RBTEwgPSA6CitQUkVfSU5TVEFMTCA9IDoKK1BPU1RfSU5TVEFMTCA9IDoKK05PUk1BTF9VTklOU1RBTEwgPSA6CitQUkVfVU5JTlNUQUxMID0gOgorUE9TVF9VTklOU1RBTEwgPSA6CitidWlsZF90cmlwbGV0ID0gQGJ1aWxkQAoraG9zdF90cmlwbGV0ID0gQGhvc3RACitzdWJkaXIgPSBkc2VsZWN0L21ldGhvZHMKK0RJU1RfQ09NTU9OID0gJChub2Jhc2VfZGlzdF9tZXRob2RzX0RBVEEpIFwKKwkkKG5vYmFzZV9kaXN0X21ldGhvZHNfU0NSSVBUUykgJChub2Jhc2VfZGlzdF9wZXJsbGliX0RBVEEpIFwKKwkkKHNyY2RpcikvTWFrZWZpbGUuYW0gJChzcmNkaXIpL01ha2VmaWxlLmluCitBQ0xPQ0FMX000ID0gJCh0b3Bfc3JjZGlyKS9hY2xvY2FsLm00CithbV9fYWNsb2NhbF9tNF9kZXBzID0gJCh0b3Bfc3JjZGlyKS9tNC9kcGtnLWFyY2gubTQgXAorCSQodG9wX3NyY2RpcikvbTQvZHBrZy1idWlsZC5tNCBcCisJJCh0b3Bfc3JjZGlyKS9tNC9kcGtnLWNvbXBpbGVyLm00IFwKKwkkKHRvcF9zcmNkaXIpL200L2Rwa2ctY292ZXJhZ2UubTQgXAorCSQodG9wX3NyY2RpcikvbTQvZHBrZy1mdW5jcy5tNCAkKHRvcF9zcmNkaXIpL200L2Rwa2ctbGlicy5tNCBcCisJJCh0b3Bfc3JjZGlyKS9tNC9kcGtnLWxpbmtlci5tNCAkKHRvcF9zcmNkaXIpL200L2Rwa2ctcHJvZ3MubTQgXAorCSQodG9wX3NyY2RpcikvbTQvZHBrZy10eXBlcy5tNCBcCisJJCh0b3Bfc3JjZGlyKS9tNC9kcGtnLXVuaWNvZGUubTQgJCh0b3Bfc3JjZGlyKS9tNC9nZXR0ZXh0Lm00IFwKKwkkKHRvcF9zcmNkaXIpL200L2ljb252Lm00ICQodG9wX3NyY2RpcikvbTQvaW50bG1hY29zeC5tNCBcCisJJCh0b3Bfc3JjZGlyKS9tNC9saWItbGQubTQgJCh0b3Bfc3JjZGlyKS9tNC9saWItbGluay5tNCBcCisJJCh0b3Bfc3JjZGlyKS9tNC9saWItcHJlZml4Lm00ICQodG9wX3NyY2RpcikvbTQvbmxzLm00IFwKKwkkKHRvcF9zcmNkaXIpL200L3BvLm00ICQodG9wX3NyY2RpcikvbTQvcHJvZ3Rlc3QubTQgXAorCSQodG9wX3NyY2RpcikvY29uZmlndXJlLmFjCithbV9fY29uZmlndXJlX2RlcHMgPSAkKGFtX19hY2xvY2FsX200X2RlcHMpICQoQ09ORklHVVJFX0RFUEVOREVOQ0lFUykgXAorCSQoQUNMT0NBTF9NNCkKK21raW5zdGFsbGRpcnMgPSAkKGluc3RhbGxfc2gpIC1kCitDT05GSUdfSEVBREVSID0gJCh0b3BfYnVpbGRkaXIpL2NvbmZpZy5oCitDT05GSUdfQ0xFQU5fRklMRVMgPQorQ09ORklHX0NMRUFOX1ZQQVRIX0ZJTEVTID0KK2FtX192cGF0aF9hZGpfc2V0dXAgPSBzcmNkaXJzdHJpcD1gZWNobyAiJChzcmNkaXIpIiB8IHNlZCAnc3wufC58ZydgOworYW1fX3ZwYXRoX2FkaiA9IGNhc2UgJCRwIGluIFwKKyAgICAkKHNyY2RpcikvKikgZj1gZWNobyAiJCRwIiB8IHNlZCAic3xeJCRzcmNkaXJzdHJpcC98fCJgOzsgXAorICAgICopIGY9JCRwOzsgXAorICBlc2FjOworYW1fX3N0cmlwX2RpciA9IGY9YGVjaG8gJCRwIHwgc2VkIC1lICdzfF4uKi98fCdgOworYW1fX2luc3RhbGxfbWF4ID0gNDAKK2FtX19ub2Jhc2Vfc3RyaXBfc2V0dXAgPSBcCisgIHNyY2RpcnN0cmlwPWBlY2hvICIkKHNyY2RpcikiIHwgc2VkICdzL1tdLlteJCRcXCp8XS9cXFxcJi9nJ2AKK2FtX19ub2Jhc2Vfc3RyaXAgPSBcCisgIGZvciBwIGluICQkbGlzdDsgZG8gZWNobyAiJCRwIjsgZG9uZSB8IHNlZCAtZSAic3wkJHNyY2RpcnN0cmlwL3x8IgorYW1fX25vYmFzZV9saXN0ID0gJChhbV9fbm9iYXNlX3N0cmlwX3NldHVwKTsgXAorICBmb3IgcCBpbiAkJGxpc3Q7IGRvIGVjaG8gIiQkcCAkJHAiOyBkb25lIHwgXAorICBzZWQgInN8ICQkc3JjZGlyc3RyaXAvfCB8OyInIC8gLipcLy8hcy8gLiovIC4vOyBzLFwoIC4qXCkvW14vXSokJCxcMSwnIHwgXAorICAkKEFXSykgJ0JFR0lOIHsgZmlsZXNbIi4iXSA9ICIiIH0geyBmaWxlc1skJDJdID0gZmlsZXNbJCQyXSAiICIgJCQxOyBcCisgICAgaWYgKCsrblskJDJdID09ICQoYW1fX2luc3RhbGxfbWF4KSkgXAorICAgICAgeyBwcmludCAkJDIsIGZpbGVzWyQkMl07IG5bJCQyXSA9IDA7IGZpbGVzWyQkMl0gPSAiIiB9IH0gXAorICAgIEVORCB7IGZvciAoZGlyIGluIGZpbGVzKSBwcmludCBkaXIsIGZpbGVzW2Rpcl0gfScKK2FtX19iYXNlX2xpc3QgPSBcCisgIHNlZCAnJCQhTjskJCFOOyQkIU47JCQhTjskJCFOOyQkIU47JCQhTjtzL1xuLyAvZycgfCBcCisgIHNlZCAnJCQhTjskJCFOOyQkIU47JCQhTjtzL1xuLyAvZycKK2FtX19pbnN0YWxsZGlycyA9ICIkKERFU1RESVIpJChtZXRob2RzZGlyKSIgIiQoREVTVERJUikkKG1ldGhvZHNkaXIpIiBcCisJIiQoREVTVERJUikkKHBlcmxsaWJkaXIpIgorU0NSSVBUUyA9ICQobm9iYXNlX2Rpc3RfbWV0aG9kc19TQ1JJUFRTKQorQU1fVl9HRU4gPSAkKGFtX192X0dFTl8kKFYpKQorYW1fX3ZfR0VOXyA9ICQoYW1fX3ZfR0VOXyQoQU1fREVGQVVMVF9WRVJCT1NJVFkpKQorYW1fX3ZfR0VOXzAgPSBAZWNobyAiICBHRU4gICAiICRAOworQU1fVl9hdCA9ICQoYW1fX3ZfYXRfJChWKSkKK2FtX192X2F0XyA9ICQoYW1fX3ZfYXRfJChBTV9ERUZBVUxUX1ZFUkJPU0lUWSkpCithbV9fdl9hdF8wID0gQAorU09VUkNFUyA9CitESVNUX1NPVVJDRVMgPQorREFUQSA9ICQobm9iYXNlX2Rpc3RfbWV0aG9kc19EQVRBKSAkKG5vYmFzZV9kaXN0X3BlcmxsaWJfREFUQSkKK0RJU1RGSUxFUyA9ICQoRElTVF9DT01NT04pICQoRElTVF9TT1VSQ0VTKSAkKFRFWElORk9TKSAkKEVYVFJBX0RJU1QpCitBQ0xPQ0FMID0gQEFDTE9DQUxACitBTVRBUiA9IEBBTVRBUkAKK0FNX0RFRkFVTFRfVkVSQk9TSVRZID0gQEFNX0RFRkFVTFRfVkVSQk9TSVRZQAorQVVUT0NPTkYgPSBAQVVUT0NPTkZACitBVVRPSEVBREVSID0gQEFVVE9IRUFERVJACitBVVRPTUFLRSA9IEBBVVRPTUFLRUAKK0FXSyA9IEBBV0tACitCWjJfTElCUyA9IEBCWjJfTElCU0AKK0NDID0gQENDQAorQ0NERVBNT0RFID0gQENDREVQTU9ERUAKK0NGTEFHUyA9IEBDRkxBR1NACitDUFAgPSBAQ1BQQAorQ1BQRkxBR1MgPSBAQ1BQRkxBR1NACitDVVJTRVNfTElCUyA9IEBDVVJTRVNfTElCU0AKK0NYWCA9IEBDWFhACitDWFhERVBNT0RFID0gQENYWERFUE1PREVACitDWFhGTEFHUyA9IEBDWFhGTEFHU0AKK0NZR1BBVEhfVyA9IEBDWUdQQVRIX1dACitERUZTID0gQERFRlNACitERVBESVIgPSBAREVQRElSQAorRE9YWUdFTiA9IEBET1hZR0VOQAorRUNIT19DID0gQEVDSE9fQ0AKK0VDSE9fTiA9IEBFQ0hPX05ACitFQ0hPX1QgPSBARUNIT19UQAorRUdSRVAgPSBARUdSRVBACitFWEVFWFQgPSBARVhFRVhUQAorR0NPViA9IEBHQ09WQAorR0VUVEVYVF9NQUNST19WRVJTSU9OID0gQEdFVFRFWFRfTUFDUk9fVkVSU0lPTkAKK0dNU0dGTVQgPSBAR01TR0ZNVEAKK0dNU0dGTVRfMDE1ID0gQEdNU0dGTVRfMDE1QAorR1JFUCA9IEBHUkVQQAorSEFWRV9ET1QgPSBASEFWRV9ET1RACitJTlNUQUxMID0gQElOU1RBTExACitJTlNUQUxMX0RBVEEgPSBASU5TVEFMTF9EQVRBQAorSU5TVEFMTF9QUk9HUkFNID0gQElOU1RBTExfUFJPR1JBTUAKK0lOU1RBTExfU0NSSVBUID0gQElOU1RBTExfU0NSSVBUQAorSU5TVEFMTF9TVFJJUF9QUk9HUkFNID0gQElOU1RBTExfU1RSSVBfUFJPR1JBTUAKK0lOVExMSUJTID0gQElOVExMSUJTQAorSU5UTF9NQUNPU1hfTElCUyA9IEBJTlRMX01BQ09TWF9MSUJTQAorTENPViA9IEBMQ09WQAorTENPVl9HRU5IVE1MID0gQExDT1ZfR0VOSFRNTEAKK0xERkxBR1MgPSBATERGTEFHU0AKK0xFWCA9IEBMRVhACitMRVhMSUIgPSBATEVYTElCQAorTEVYX09VVFBVVF9ST09UID0gQExFWF9PVVRQVVRfUk9PVEAKK0xJQklDT05WID0gQExJQklDT05WQAorTElCSU5UTCA9IEBMSUJJTlRMQAorTElCT0JKUyA9IEBMSUJPQkpTQAorTElCUyA9IEBMSUJTQAorTFRMSUJJQ09OViA9IEBMVExJQklDT05WQAorTFRMSUJJTlRMID0gQExUTElCSU5UTEAKK0xUTElCT0JKUyA9IEBMVExJQk9CSlNACitNQUtFSU5GTyA9IEBNQUtFSU5GT0AKK01LRElSX1AgPSBATUtESVJfUEAKK01TR0ZNVCA9IEBNU0dGTVRACitNU0dGTVRfMDE1ID0gQE1TR0ZNVF8wMTVACitNU0dNRVJHRSA9IEBNU0dNRVJHRUAKK09CSkVYVCA9IEBPQkpFWFRACitQQUNLQUdFID0gQFBBQ0tBR0VACitQQUNLQUdFX0JVR1JFUE9SVCA9IEBQQUNLQUdFX0JVR1JFUE9SVEAKK1BBQ0tBR0VfTkFNRSA9IEBQQUNLQUdFX05BTUVACitQQUNLQUdFX1NUUklORyA9IEBQQUNLQUdFX1NUUklOR0AKK1BBQ0tBR0VfVEFSTkFNRSA9IEBQQUNLQUdFX1RBUk5BTUVACitQQUNLQUdFX1VSTCA9IEBQQUNLQUdFX1VSTEAKK1BBQ0tBR0VfVkVSU0lPTiA9IEBQQUNLQUdFX1ZFUlNJT05ACitQQVRIX1NFUEFSQVRPUiA9IEBQQVRIX1NFUEFSQVRPUkAKK1BFUkwgPSBAUEVSTEAKK1BFUkxfQ09WRVIgPSBAUEVSTF9DT1ZFUkAKK1BFUkxfQ09WRVJBR0UgPSBAUEVSTF9DT1ZFUkFHRUAKK1BFUkxfTElCRElSID0gQFBFUkxfTElCRElSQAorUEtHX0NPTkZJRyA9IEBQS0dfQ09ORklHQAorUEtHX0NPTkZJR19MSUJESVIgPSBAUEtHX0NPTkZJR19MSUJESVJACitQS0dfQ09ORklHX1BBVEggPSBAUEtHX0NPTkZJR19QQVRIQAorUE80QSA9IEBQTzRBQAorUE9EMk1BTiA9IEBQT0QyTUFOQAorUE9TVUIgPSBAUE9TVUJACitSQU5MSUIgPSBAUkFOTElCQAorU0VMSU5VWF9MSUJTID0gQFNFTElOVVhfTElCU0AKK1NFVF9NQUtFID0gQFNFVF9NQUtFQAorU0hFTEwgPSBAU0hFTExACitTU0RfTElCUyA9IEBTU0RfTElCU0AKK1NUUklQID0gQFNUUklQQAorVVNFX05MUyA9IEBVU0VfTkxTQAorVVNFX1BPNEEgPSBAVVNFX1BPNEFACitVU0VfVU5JQ09ERSA9IEBVU0VfVU5JQ09ERUAKK1ZFUlNJT04gPSBAVkVSU0lPTkAKK1hHRVRURVhUID0gQFhHRVRURVhUQAorWEdFVFRFWFRfMDE1ID0gQFhHRVRURVhUXzAxNUAKK1hHRVRURVhUX0VYVFJBX09QVElPTlMgPSBAWEdFVFRFWFRfRVhUUkFfT1BUSU9OU0AKK1pMSUJfTElCUyA9IEBaTElCX0xJQlNACithYnNfYnVpbGRkaXIgPSBAYWJzX2J1aWxkZGlyQAorYWJzX3NyY2RpciA9IEBhYnNfc3JjZGlyQAorYWJzX3RvcF9idWlsZGRpciA9IEBhYnNfdG9wX2J1aWxkZGlyQAorYWJzX3RvcF9zcmNkaXIgPSBAYWJzX3RvcF9zcmNkaXJACithY19jdF9DQyA9IEBhY19jdF9DQ0AKK2FjX2N0X0NYWCA9IEBhY19jdF9DWFhACithZG1pbmRpciA9IEBhZG1pbmRpckAKK2FtX19pbmNsdWRlID0gQGFtX19pbmNsdWRlQAorYW1fX2xlYWRpbmdfZG90ID0gQGFtX19sZWFkaW5nX2RvdEAKK2FtX19xdW90ZSA9IEBhbV9fcXVvdGVACithbV9fdGFyID0gQGFtX190YXJACithbV9fdW50YXIgPSBAYW1fX3VudGFyQAorYmluZGlyID0gQGJpbmRpckAKK2J1aWxkID0gQGJ1aWxkQAorYnVpbGRfYWxpYXMgPSBAYnVpbGRfYWxpYXNACitidWlsZF9jcHUgPSBAYnVpbGRfY3B1QAorYnVpbGRfb3MgPSBAYnVpbGRfb3NACitidWlsZF92ZW5kb3IgPSBAYnVpbGRfdmVuZG9yQAorYnVpbGRkaXIgPSBAYnVpbGRkaXJACitkYXRhZGlyID0gQGRhdGFkaXJACitkYXRhcm9vdGRpciA9IEBkYXRhcm9vdGRpckAKK2RvY2RpciA9IEBkb2NkaXJACitkdmlkaXIgPSBAZHZpZGlyQAorZXhlY19wcmVmaXggPSBAZXhlY19wcmVmaXhACitob3N0ID0gQGhvc3RACitob3N0X2FsaWFzID0gQGhvc3RfYWxpYXNACitob3N0X2NwdSA9IEBob3N0X2NwdUAKK2hvc3Rfb3MgPSBAaG9zdF9vc0AKK2hvc3RfdmVuZG9yID0gQGhvc3RfdmVuZG9yQAoraHRtbGRpciA9IEBodG1sZGlyQAoraW5jbHVkZWRpciA9IEBpbmNsdWRlZGlyQAoraW5mb2RpciA9IEBpbmZvZGlyQAoraW5zdGFsbF9zaCA9IEBpbnN0YWxsX3NoQAorbGliZGlyID0gQGxpYmRpckAKK2xpYmV4ZWNkaXIgPSBAbGliZXhlY2RpckAKK2xvY2FsZWRpciA9IEBsb2NhbGVkaXJACitsb2NhbHN0YXRlZGlyID0gQGxvY2Fsc3RhdGVkaXJACitsb2dkaXIgPSBAbG9nZGlyQAorbWFuZGlyID0gQG1hbmRpckAKK21rZGlyX3AgPSBAbWtkaXJfcEAKK29sZGluY2x1ZGVkaXIgPSBAb2xkaW5jbHVkZWRpckAKK3BkZmRpciA9IEBwZGZkaXJACitwcmVmaXggPSBAcHJlZml4QAorcHJvZ3JhbV90cmFuc2Zvcm1fbmFtZSA9IEBwcm9ncmFtX3RyYW5zZm9ybV9uYW1lQAorcHNkaXIgPSBAcHNkaXJACitzYmluZGlyID0gQHNiaW5kaXJACitzaGFyZWRzdGF0ZWRpciA9IEBzaGFyZWRzdGF0ZWRpckAKK3NyY2RpciA9IEBzcmNkaXJACitzeXNjb25mZGlyID0gQHN5c2NvbmZkaXJACit0YXJnZXRfYWxpYXMgPSBAdGFyZ2V0X2FsaWFzQAordG9wX2J1aWxkX3ByZWZpeCA9IEB0b3BfYnVpbGRfcHJlZml4QAordG9wX2J1aWxkZGlyID0gQHRvcF9idWlsZGRpckAKK3RvcF9zcmNkaXIgPSBAdG9wX3NyY2RpckAKK21ldGhvZHNkaXIgPSAkKHBrZ2xpYmRpcikvbWV0aG9kcworbm9iYXNlX2Rpc3RfbWV0aG9kc19EQVRBID0gXAorCWRpc2svbmFtZXMgXAorCWRpc2svZGVzYy5jZHJvbSBcCisJZGlzay9kZXNjLm5mcyBcCisJZGlzay9kZXNjLmhhcmRkaXNrIFwKKwlkaXNrL2Rlc2MubW91bnRlZCBcCisJZmxvcHB5L25hbWVzIFwKKwlmbG9wcHkvZGVzYy5mbG9wcHkgXAorCWZ0cC9uYW1lcyBcCisJZnRwL2Rlc2MuZnRwIFwKKwlmdHAvUkVBRE1FLm1pcnJvcnMudHh0IFwKKwltdWx0aWNkL25hbWVzIFwKKwltdWx0aWNkL2Rlc2MubXVsdGlfY2QgXAorCW11bHRpY2QvZGVzYy5tdWx0aV9tb3VudCBcCisJbXVsdGljZC9kZXNjLm11bHRpX25mcworCitub2Jhc2VfZGlzdF9tZXRob2RzX1NDUklQVFMgPSBcCisJZGlzay9zZXR1cCBcCisJZGlzay91cGRhdGUgXAorCWRpc2svaW5zdGFsbCBcCisJZmxvcHB5L3NldHVwIFwKKwlmbG9wcHkvdXBkYXRlIFwKKwlmbG9wcHkvaW5zdGFsbCBcCisJZnRwL3NldHVwIFwKKwlmdHAvdXBkYXRlIFwKKwlmdHAvaW5zdGFsbCBcCisJbXVsdGljZC9zZXR1cCBcCisJbXVsdGljZC91cGRhdGUgXAorCW11bHRpY2QvaW5zdGFsbAorCitwZXJsbGliZGlyID0gJChQRVJMX0xJQkRJUikKK25vYmFzZV9kaXN0X3BlcmxsaWJfREFUQSA9IERlYmlhbi9Ec2VsZWN0L0Z0cC5wbQorRVhUUkFfRElTVCA9IG11bHRpY2QvUkVBRE1FLm11bHRpY2QKK2FsbDogYWxsLWFtCisKKy5TVUZGSVhFUzoKKyQoc3JjZGlyKS9NYWtlZmlsZS5pbjogICQoc3JjZGlyKS9NYWtlZmlsZS5hbSAgJChhbV9fY29uZmlndXJlX2RlcHMpCisJQGZvciBkZXAgaW4gJD87IGRvIFwKKwkgIGNhc2UgJyQoYW1fX2NvbmZpZ3VyZV9kZXBzKScgaW4gXAorCSAgICAqJCRkZXAqKSBcCisJICAgICAgKCBjZCAkKHRvcF9idWlsZGRpcikgJiYgJChNQUtFKSAkKEFNX01BS0VGTEFHUykgYW0tLXJlZnJlc2ggKSBcCisJICAgICAgICAmJiB7IGlmIHRlc3QgLWYgJEA7IHRoZW4gZXhpdCAwOyBlbHNlIGJyZWFrOyBmaTsgfTsgXAorCSAgICAgIGV4aXQgMTs7IFwKKwkgIGVzYWM7IFwKKwlkb25lOyBcCisJZWNobyAnIGNkICQodG9wX3NyY2RpcikgJiYgJChBVVRPTUFLRSkgLS1mb3JlaWduIGRzZWxlY3QvbWV0aG9kcy9NYWtlZmlsZSc7IFwKKwkkKGFtX19jZCkgJCh0b3Bfc3JjZGlyKSAmJiBcCisJICAkKEFVVE9NQUtFKSAtLWZvcmVpZ24gZHNlbGVjdC9tZXRob2RzL01ha2VmaWxlCisuUFJFQ0lPVVM6IE1ha2VmaWxlCitNYWtlZmlsZTogJChzcmNkaXIpL01ha2VmaWxlLmluICQodG9wX2J1aWxkZGlyKS9jb25maWcuc3RhdHVzCisJQGNhc2UgJyQ/JyBpbiBcCisJICAqY29uZmlnLnN0YXR1cyopIFwKKwkgICAgY2QgJCh0b3BfYnVpbGRkaXIpICYmICQoTUFLRSkgJChBTV9NQUtFRkxBR1MpIGFtLS1yZWZyZXNoOzsgXAorCSAgKikgXAorCSAgICBlY2hvICcgY2QgJCh0b3BfYnVpbGRkaXIpICYmICQoU0hFTEwpIC4vY29uZmlnLnN0YXR1cyAkKHN1YmRpcikvJEAgJChhbV9fZGVwZmlsZXNfbWF5YmUpJzsgXAorCSAgICBjZCAkKHRvcF9idWlsZGRpcikgJiYgJChTSEVMTCkgLi9jb25maWcuc3RhdHVzICQoc3ViZGlyKS8kQCAkKGFtX19kZXBmaWxlc19tYXliZSk7OyBcCisJZXNhYzsKKworJCh0b3BfYnVpbGRkaXIpL2NvbmZpZy5zdGF0dXM6ICQodG9wX3NyY2RpcikvY29uZmlndXJlICQoQ09ORklHX1NUQVRVU19ERVBFTkRFTkNJRVMpCisJY2QgJCh0b3BfYnVpbGRkaXIpICYmICQoTUFLRSkgJChBTV9NQUtFRkxBR1MpIGFtLS1yZWZyZXNoCisKKyQodG9wX3NyY2RpcikvY29uZmlndXJlOiAgJChhbV9fY29uZmlndXJlX2RlcHMpCisJY2QgJCh0b3BfYnVpbGRkaXIpICYmICQoTUFLRSkgJChBTV9NQUtFRkxBR1MpIGFtLS1yZWZyZXNoCiskKEFDTE9DQUxfTTQpOiAgJChhbV9fYWNsb2NhbF9tNF9kZXBzKQorCWNkICQodG9wX2J1aWxkZGlyKSAmJiAkKE1BS0UpICQoQU1fTUFLRUZMQUdTKSBhbS0tcmVmcmVzaAorJChhbV9fYWNsb2NhbF9tNF9kZXBzKToKK2luc3RhbGwtbm9iYXNlX2Rpc3RfbWV0aG9kc1NDUklQVFM6ICQobm9iYXNlX2Rpc3RfbWV0aG9kc19TQ1JJUFRTKQorCUAkKE5PUk1BTF9JTlNUQUxMKQorCXRlc3QgLXogIiQobWV0aG9kc2RpcikiIHx8ICQoTUtESVJfUCkgIiQoREVTVERJUikkKG1ldGhvZHNkaXIpIgorCUBsaXN0PSckKG5vYmFzZV9kaXN0X21ldGhvZHNfU0NSSVBUUyknOyB0ZXN0IC1uICIkKG1ldGhvZHNkaXIpIiB8fCBsaXN0PTsgXAorCSQoYW1fX25vYmFzZV9zdHJpcF9zZXR1cCk7IFwKKwlmb3IgcCBpbiAkJGxpc3Q7IGRvIFwKKwkgIGlmIHRlc3QgLWYgIiQkcCI7IHRoZW4gZD07IGVsc2UgZD0iJChzcmNkaXIpLyI7IGZpOyBcCisJICBpZiB0ZXN0IC1mICIkJGQkJHAiOyB0aGVuIGVjaG8gIiQkZCQkcCI7IGVjaG8gIiQkcCI7IGVsc2UgOjsgZmk7IFwKKwlkb25lIHwgXAorCXNlZCAtZSAncDtzLC4qLywsO24nIFwKKwkgICAgLWUgInN8JCRzcmNkaXJzdHJpcC98fCIgLWUgJ2g7c3xbXi9dKiQkfHw7IHN8XiQkfC58JyBcCisJICAgIC1lICdwO3g7cywuKi8sLDskKHRyYW5zZm9ybSknIHwgc2VkICdOO047TjtzLFxuLCAsZycgfCBcCisJJChBV0spICdCRUdJTiB7IGZpbGVzWyIuIl0gPSAiIjsgZGlyc1siLiJdID0gMTsgfSBcCisJICB7IGQ9JCQzOyBpZiAoZGlyc1tkXSAhPSAxKSB7IHByaW50ICJkIiwgZDsgZGlyc1tkXSA9IDEgfSBcCisJICAgIGlmICgkJDIgPT0gJCQ0KSB7IGZpbGVzW2RdID0gZmlsZXNbZF0gIiAiICQkMTsgXAorCSAgICAgIGlmICgrK25bZF0gPT0gJChhbV9faW5zdGFsbF9tYXgpKSB7IFwKKwkJcHJpbnQgImYiLCBkLCBmaWxlc1tkXTsgbltkXSA9IDA7IGZpbGVzW2RdID0gIiIgfSB9IFwKKwkgICAgZWxzZSB7IHByaW50ICJmIiwgZCAiLyIgJCQ0LCAkJDEgfSB9IFwKKwkgIEVORCB7IGZvciAoZCBpbiBmaWxlcykgcHJpbnQgImYiLCBkLCBmaWxlc1tkXSB9JyB8IFwKKwl3aGlsZSByZWFkIHR5cGUgZGlyIGZpbGVzOyBkbyBcCisJICBjYXNlICQkdHlwZSBpbiBcCisJICBkKSBlY2hvICIgJChNS0RJUl9QKSAnJChERVNURElSKSQobWV0aG9kc2RpcikvJCRkaXInIjsgXAorCSAgICAgJChNS0RJUl9QKSAiJChERVNURElSKSQobWV0aG9kc2RpcikvJCRkaXIiIHx8IGV4aXQgJCQ/OzsgXAorCSAgZikgXAorCSAgICAgaWYgdGVzdCAiJCRkaXIiID0gLjsgdGhlbiBkaXI9OyBlbHNlIGRpcj0vJCRkaXI7IGZpOyBcCisJICAgICB0ZXN0IC16ICIkJGZpbGVzIiB8fCB7IFwKKwkgICAgICAgZWNobyAiICQoSU5TVEFMTF9TQ1JJUFQpICQkZmlsZXMgJyQoREVTVERJUikkKG1ldGhvZHNkaXIpJCRkaXInIjsgXAorCSAgICAgICAkKElOU1RBTExfU0NSSVBUKSAkJGZpbGVzICIkKERFU1RESVIpJChtZXRob2RzZGlyKSQkZGlyIiB8fCBleGl0ICQkPzsgXAorCSAgICAgfSBcCisJICA7OyBlc2FjIFwKKwk7IGRvbmUKKwordW5pbnN0YWxsLW5vYmFzZV9kaXN0X21ldGhvZHNTQ1JJUFRTOgorCUAkKE5PUk1BTF9VTklOU1RBTEwpCisJQGxpc3Q9JyQobm9iYXNlX2Rpc3RfbWV0aG9kc19TQ1JJUFRTKSc7IHRlc3QgLW4gIiQobWV0aG9kc2RpcikiIHx8IGV4aXQgMDsgXAorCSQoYW1fX25vYmFzZV9zdHJpcF9zZXR1cCk7IFwKKwlmaWxlcz1gJChhbV9fbm9iYXNlX3N0cmlwKSBcCisJICAgICAgIC1lICdoO3MsLiovLCw7JCh0cmFuc2Zvcm0pO3g7c3xbXi9dKiQkfHw7RztzLFxuLCwnYDsgXAorCXRlc3QgLW4gIiQkbGlzdCIgfHwgZXhpdCAwOyBcCisJZWNobyAiICggY2QgJyQoREVTVERJUikkKG1ldGhvZHNkaXIpJyAmJiBybSAtZiIgJCRmaWxlcyAiKSI7IFwKKwljZCAiJChERVNURElSKSQobWV0aG9kc2RpcikiICYmIHJtIC1mICQkZmlsZXMKK2luc3RhbGwtbm9iYXNlX2Rpc3RfbWV0aG9kc0RBVEE6ICQobm9iYXNlX2Rpc3RfbWV0aG9kc19EQVRBKQorCUAkKE5PUk1BTF9JTlNUQUxMKQorCXRlc3QgLXogIiQobWV0aG9kc2RpcikiIHx8ICQoTUtESVJfUCkgIiQoREVTVERJUikkKG1ldGhvZHNkaXIpIgorCUBsaXN0PSckKG5vYmFzZV9kaXN0X21ldGhvZHNfREFUQSknOyB0ZXN0IC1uICIkKG1ldGhvZHNkaXIpIiB8fCBsaXN0PTsgXAorCSQoYW1fX25vYmFzZV9saXN0KSB8IHdoaWxlIHJlYWQgZGlyIGZpbGVzOyBkbyBcCisJICB4ZmlsZXM9OyBmb3IgZmlsZSBpbiAkJGZpbGVzOyBkbyBcCisJICAgIGlmIHRlc3QgLWYgIiQkZmlsZSI7IHRoZW4geGZpbGVzPSIkJHhmaWxlcyAkJGZpbGUiOyBcCisJICAgIGVsc2UgeGZpbGVzPSIkJHhmaWxlcyAkKHNyY2RpcikvJCRmaWxlIjsgZmk7IGRvbmU7IFwKKwkgIHRlc3QgLXogIiQkeGZpbGVzIiB8fCB7IFwKKwkgICAgdGVzdCAieCQkZGlyIiA9IHguIHx8IHsgXAorCSAgICAgIGVjaG8gIiQoTUtESVJfUCkgJyQoREVTVERJUikkKG1ldGhvZHNkaXIpLyQkZGlyJyI7IFwKKwkgICAgICAkKE1LRElSX1ApICIkKERFU1RESVIpJChtZXRob2RzZGlyKS8kJGRpciI7IH07IFwKKwkgICAgZWNobyAiICQoSU5TVEFMTF9EQVRBKSAkJHhmaWxlcyAnJChERVNURElSKSQobWV0aG9kc2RpcikvJCRkaXInIjsgXAorCSAgICAkKElOU1RBTExfREFUQSkgJCR4ZmlsZXMgIiQoREVTVERJUikkKG1ldGhvZHNkaXIpLyQkZGlyIiB8fCBleGl0ICQkPzsgfTsgXAorCWRvbmUKKwordW5pbnN0YWxsLW5vYmFzZV9kaXN0X21ldGhvZHNEQVRBOgorCUAkKE5PUk1BTF9VTklOU1RBTEwpCisJQGxpc3Q9JyQobm9iYXNlX2Rpc3RfbWV0aG9kc19EQVRBKSc7IHRlc3QgLW4gIiQobWV0aG9kc2RpcikiIHx8IGxpc3Q9OyBcCisJJChhbV9fbm9iYXNlX3N0cmlwX3NldHVwKTsgZmlsZXM9YCQoYW1fX25vYmFzZV9zdHJpcClgOyBcCisJdGVzdCAtbiAiJCRmaWxlcyIgfHwgZXhpdCAwOyBcCisJZWNobyAiICggY2QgJyQoREVTVERJUikkKG1ldGhvZHNkaXIpJyAmJiBybSAtZiIgJCRmaWxlcyAiKSI7IFwKKwljZCAiJChERVNURElSKSQobWV0aG9kc2RpcikiICYmIHJtIC1mICQkZmlsZXMKK2luc3RhbGwtbm9iYXNlX2Rpc3RfcGVybGxpYkRBVEE6ICQobm9iYXNlX2Rpc3RfcGVybGxpYl9EQVRBKQorCUAkKE5PUk1BTF9JTlNUQUxMKQorCXRlc3QgLXogIiQocGVybGxpYmRpcikiIHx8ICQoTUtESVJfUCkgIiQoREVTVERJUikkKHBlcmxsaWJkaXIpIgorCUBsaXN0PSckKG5vYmFzZV9kaXN0X3BlcmxsaWJfREFUQSknOyB0ZXN0IC1uICIkKHBlcmxsaWJkaXIpIiB8fCBsaXN0PTsgXAorCSQoYW1fX25vYmFzZV9saXN0KSB8IHdoaWxlIHJlYWQgZGlyIGZpbGVzOyBkbyBcCisJICB4ZmlsZXM9OyBmb3IgZmlsZSBpbiAkJGZpbGVzOyBkbyBcCisJICAgIGlmIHRlc3QgLWYgIiQkZmlsZSI7IHRoZW4geGZpbGVzPSIkJHhmaWxlcyAkJGZpbGUiOyBcCisJICAgIGVsc2UgeGZpbGVzPSIkJHhmaWxlcyAkKHNyY2RpcikvJCRmaWxlIjsgZmk7IGRvbmU7IFwKKwkgIHRlc3QgLXogIiQkeGZpbGVzIiB8fCB7IFwKKwkgICAgdGVzdCAieCQkZGlyIiA9IHguIHx8IHsgXAorCSAgICAgIGVjaG8gIiQoTUtESVJfUCkgJyQoREVTVERJUikkKHBlcmxsaWJkaXIpLyQkZGlyJyI7IFwKKwkgICAgICAkKE1LRElSX1ApICIkKERFU1RESVIpJChwZXJsbGliZGlyKS8kJGRpciI7IH07IFwKKwkgICAgZWNobyAiICQoSU5TVEFMTF9EQVRBKSAkJHhmaWxlcyAnJChERVNURElSKSQocGVybGxpYmRpcikvJCRkaXInIjsgXAorCSAgICAkKElOU1RBTExfREFUQSkgJCR4ZmlsZXMgIiQoREVTVERJUikkKHBlcmxsaWJkaXIpLyQkZGlyIiB8fCBleGl0ICQkPzsgfTsgXAorCWRvbmUKKwordW5pbnN0YWxsLW5vYmFzZV9kaXN0X3BlcmxsaWJEQVRBOgorCUAkKE5PUk1BTF9VTklOU1RBTEwpCisJQGxpc3Q9JyQobm9iYXNlX2Rpc3RfcGVybGxpYl9EQVRBKSc7IHRlc3QgLW4gIiQocGVybGxpYmRpcikiIHx8IGxpc3Q9OyBcCisJJChhbV9fbm9iYXNlX3N0cmlwX3NldHVwKTsgZmlsZXM9YCQoYW1fX25vYmFzZV9zdHJpcClgOyBcCisJdGVzdCAtbiAiJCRmaWxlcyIgfHwgZXhpdCAwOyBcCisJZWNobyAiICggY2QgJyQoREVTVERJUikkKHBlcmxsaWJkaXIpJyAmJiBybSAtZiIgJCRmaWxlcyAiKSI7IFwKKwljZCAiJChERVNURElSKSQocGVybGxpYmRpcikiICYmIHJtIC1mICQkZmlsZXMKK3RhZ3M6IFRBR1MKK1RBR1M6CisKK2N0YWdzOiBDVEFHUworQ1RBR1M6CisKKworZGlzdGRpcjogJChESVNURklMRVMpCisJQHNyY2RpcnN0cmlwPWBlY2hvICIkKHNyY2RpcikiIHwgc2VkICdzL1tdLlteJCRcXCpdL1xcXFwmL2cnYDsgXAorCXRvcHNyY2RpcnN0cmlwPWBlY2hvICIkKHRvcF9zcmNkaXIpIiB8IHNlZCAncy9bXS5bXiQkXFwqXS9cXFxcJi9nJ2A7IFwKKwlsaXN0PSckKERJU1RGSUxFUyknOyBcCisJICBkaXN0X2ZpbGVzPWBmb3IgZmlsZSBpbiAkJGxpc3Q7IGRvIGVjaG8gJCRmaWxlOyBkb25lIHwgXAorCSAgc2VkIC1lICJzfF4kJHNyY2RpcnN0cmlwL3x8O3QiIFwKKwkgICAgICAtZSAic3xeJCR0b3BzcmNkaXJzdHJpcC98JCh0b3BfYnVpbGRkaXIpL3w7dCJgOyBcCisJY2FzZSAkJGRpc3RfZmlsZXMgaW4gXAorCSAgKi8qKSAkKE1LRElSX1ApIGBlY2hvICIkJGRpc3RfZmlsZXMiIHwgXAorCQkJICAgc2VkICcvXC8vIWQ7c3xefCQoZGlzdGRpcikvfDtzLC9bXi9dKiQkLCwnIHwgXAorCQkJICAgc29ydCAtdWAgOzsgXAorCWVzYWM7IFwKKwlmb3IgZmlsZSBpbiAkJGRpc3RfZmlsZXM7IGRvIFwKKwkgIGlmIHRlc3QgLWYgJCRmaWxlIHx8IHRlc3QgLWQgJCRmaWxlOyB0aGVuIGQ9LjsgZWxzZSBkPSQoc3JjZGlyKTsgZmk7IFwKKwkgIGlmIHRlc3QgLWQgJCRkLyQkZmlsZTsgdGhlbiBcCisJICAgIGRpcj1gZWNobyAiLyQkZmlsZSIgfCBzZWQgLWUgJ3MsL1teL10qJCQsLCdgOyBcCisJICAgIGlmIHRlc3QgLWQgIiQoZGlzdGRpcikvJCRmaWxlIjsgdGhlbiBcCisJICAgICAgZmluZCAiJChkaXN0ZGlyKS8kJGZpbGUiIC10eXBlIGQgISAtcGVybSAtNzAwIC1leGVjIGNobW9kIHUrcnd4IHt9IFw7OyBcCisJICAgIGZpOyBcCisJICAgIGlmIHRlc3QgLWQgJChzcmNkaXIpLyQkZmlsZSAmJiB0ZXN0ICQkZCAhPSAkKHNyY2Rpcik7IHRoZW4gXAorCSAgICAgIGNwIC1mcFIgJChzcmNkaXIpLyQkZmlsZSAiJChkaXN0ZGlyKSQkZGlyIiB8fCBleGl0IDE7IFwKKwkgICAgICBmaW5kICIkKGRpc3RkaXIpLyQkZmlsZSIgLXR5cGUgZCAhIC1wZXJtIC03MDAgLWV4ZWMgY2htb2QgdStyd3gge30gXDs7IFwKKwkgICAgZmk7IFwKKwkgICAgY3AgLWZwUiAkJGQvJCRmaWxlICIkKGRpc3RkaXIpJCRkaXIiIHx8IGV4aXQgMTsgXAorCSAgZWxzZSBcCisJICAgIHRlc3QgLWYgIiQoZGlzdGRpcikvJCRmaWxlIiBcCisJICAgIHx8IGNwIC1wICQkZC8kJGZpbGUgIiQoZGlzdGRpcikvJCRmaWxlIiBcCisJICAgIHx8IGV4aXQgMTsgXAorCSAgZmk7IFwKKwlkb25lCitjaGVjay1hbTogYWxsLWFtCitjaGVjazogY2hlY2stYW0KK2FsbC1hbTogTWFrZWZpbGUgJChTQ1JJUFRTKSAkKERBVEEpCitpbnN0YWxsZGlyczoKKwlmb3IgZGlyIGluICIkKERFU1RESVIpJChtZXRob2RzZGlyKSIgIiQoREVTVERJUikkKG1ldGhvZHNkaXIpIiAiJChERVNURElSKSQocGVybGxpYmRpcikiOyBkbyBcCisJICB0ZXN0IC16ICIkJGRpciIgfHwgJChNS0RJUl9QKSAiJCRkaXIiOyBcCisJZG9uZQoraW5zdGFsbDogaW5zdGFsbC1hbQoraW5zdGFsbC1leGVjOiBpbnN0YWxsLWV4ZWMtYW0KK2luc3RhbGwtZGF0YTogaW5zdGFsbC1kYXRhLWFtCit1bmluc3RhbGw6IHVuaW5zdGFsbC1hbQorCitpbnN0YWxsLWFtOiBhbGwtYW0KKwlAJChNQUtFKSAkKEFNX01BS0VGTEFHUykgaW5zdGFsbC1leGVjLWFtIGluc3RhbGwtZGF0YS1hbQorCitpbnN0YWxsY2hlY2s6IGluc3RhbGxjaGVjay1hbQoraW5zdGFsbC1zdHJpcDoKKwkkKE1BS0UpICQoQU1fTUFLRUZMQUdTKSBJTlNUQUxMX1BST0dSQU09IiQoSU5TVEFMTF9TVFJJUF9QUk9HUkFNKSIgXAorCSAgaW5zdGFsbF9zaF9QUk9HUkFNPSIkKElOU1RBTExfU1RSSVBfUFJPR1JBTSkiIElOU1RBTExfU1RSSVBfRkxBRz0tcyBcCisJICBgdGVzdCAteiAnJChTVFJJUCknIHx8IFwKKwkgICAgZWNobyAiSU5TVEFMTF9QUk9HUkFNX0VOVj1TVFJJUFBST0c9JyQoU1RSSVApJyJgIGluc3RhbGwKK21vc3RseWNsZWFuLWdlbmVyaWM6CisKK2NsZWFuLWdlbmVyaWM6CisKK2Rpc3RjbGVhbi1nZW5lcmljOgorCS10ZXN0IC16ICIkKENPTkZJR19DTEVBTl9GSUxFUykiIHx8IHJtIC1mICQoQ09ORklHX0NMRUFOX0ZJTEVTKQorCS10ZXN0IC4gPSAiJChzcmNkaXIpIiB8fCB0ZXN0IC16ICIkKENPTkZJR19DTEVBTl9WUEFUSF9GSUxFUykiIHx8IHJtIC1mICQoQ09ORklHX0NMRUFOX1ZQQVRIX0ZJTEVTKQorCittYWludGFpbmVyLWNsZWFuLWdlbmVyaWM6CisJQGVjaG8gIlRoaXMgY29tbWFuZCBpcyBpbnRlbmRlZCBmb3IgbWFpbnRhaW5lcnMgdG8gdXNlIgorCUBlY2hvICJpdCBkZWxldGVzIGZpbGVzIHRoYXQgbWF5IHJlcXVpcmUgc3BlY2lhbCB0b29scyB0byByZWJ1aWxkLiIKK2NsZWFuOiBjbGVhbi1hbQorCitjbGVhbi1hbTogY2xlYW4tZ2VuZXJpYyBtb3N0bHljbGVhbi1hbQorCitkaXN0Y2xlYW46IGRpc3RjbGVhbi1hbQorCS1ybSAtZiBNYWtlZmlsZQorZGlzdGNsZWFuLWFtOiBjbGVhbi1hbSBkaXN0Y2xlYW4tZ2VuZXJpYworCitkdmk6IGR2aS1hbQorCitkdmktYW06CisKK2h0bWw6IGh0bWwtYW0KKworaHRtbC1hbToKKworaW5mbzogaW5mby1hbQorCitpbmZvLWFtOgorCitpbnN0YWxsLWRhdGEtYW06IGluc3RhbGwtZGF0YS1sb2NhbCBpbnN0YWxsLW5vYmFzZV9kaXN0X21ldGhvZHNEQVRBIFwKKwlpbnN0YWxsLW5vYmFzZV9kaXN0X21ldGhvZHNTQ1JJUFRTIFwKKwlpbnN0YWxsLW5vYmFzZV9kaXN0X3BlcmxsaWJEQVRBCisKK2luc3RhbGwtZHZpOiBpbnN0YWxsLWR2aS1hbQorCitpbnN0YWxsLWR2aS1hbToKKworaW5zdGFsbC1leGVjLWFtOgorCitpbnN0YWxsLWh0bWw6IGluc3RhbGwtaHRtbC1hbQorCitpbnN0YWxsLWh0bWwtYW06CisKK2luc3RhbGwtaW5mbzogaW5zdGFsbC1pbmZvLWFtCisKK2luc3RhbGwtaW5mby1hbToKKworaW5zdGFsbC1tYW46CisKK2luc3RhbGwtcGRmOiBpbnN0YWxsLXBkZi1hbQorCitpbnN0YWxsLXBkZi1hbToKKworaW5zdGFsbC1wczogaW5zdGFsbC1wcy1hbQorCitpbnN0YWxsLXBzLWFtOgorCitpbnN0YWxsY2hlY2stYW06CisKK21haW50YWluZXItY2xlYW46IG1haW50YWluZXItY2xlYW4tYW0KKwktcm0gLWYgTWFrZWZpbGUKK21haW50YWluZXItY2xlYW4tYW06IGRpc3RjbGVhbi1hbSBtYWludGFpbmVyLWNsZWFuLWdlbmVyaWMKKworbW9zdGx5Y2xlYW46IG1vc3RseWNsZWFuLWFtCisKK21vc3RseWNsZWFuLWFtOiBtb3N0bHljbGVhbi1nZW5lcmljCisKK3BkZjogcGRmLWFtCisKK3BkZi1hbToKKworcHM6IHBzLWFtCisKK3BzLWFtOgorCit1bmluc3RhbGwtYW06IHVuaW5zdGFsbC1ub2Jhc2VfZGlzdF9tZXRob2RzREFUQSBcCisJdW5pbnN0YWxsLW5vYmFzZV9kaXN0X21ldGhvZHNTQ1JJUFRTIFwKKwl1bmluc3RhbGwtbm9iYXNlX2Rpc3RfcGVybGxpYkRBVEEKKworLk1BS0U6IGluc3RhbGwtYW0gaW5zdGFsbC1zdHJpcAorCisuUEhPTlk6IGFsbCBhbGwtYW0gY2hlY2sgY2hlY2stYW0gY2xlYW4gY2xlYW4tZ2VuZXJpYyBkaXN0Y2xlYW4gXAorCWRpc3RjbGVhbi1nZW5lcmljIGRpc3RkaXIgZHZpIGR2aS1hbSBodG1sIGh0bWwtYW0gaW5mbyBpbmZvLWFtIFwKKwlpbnN0YWxsIGluc3RhbGwtYW0gaW5zdGFsbC1kYXRhIGluc3RhbGwtZGF0YS1hbSBcCisJaW5zdGFsbC1kYXRhLWxvY2FsIGluc3RhbGwtZHZpIGluc3RhbGwtZHZpLWFtIGluc3RhbGwtZXhlYyBcCisJaW5zdGFsbC1leGVjLWFtIGluc3RhbGwtaHRtbCBpbnN0YWxsLWh0bWwtYW0gaW5zdGFsbC1pbmZvIFwKKwlpbnN0YWxsLWluZm8tYW0gaW5zdGFsbC1tYW4gaW5zdGFsbC1ub2Jhc2VfZGlzdF9tZXRob2RzREFUQSBcCisJaW5zdGFsbC1ub2Jhc2VfZGlzdF9tZXRob2RzU0NSSVBUUyBcCisJaW5zdGFsbC1ub2Jhc2VfZGlzdF9wZXJsbGliREFUQSBpbnN0YWxsLXBkZiBpbnN0YWxsLXBkZi1hbSBcCisJaW5zdGFsbC1wcyBpbnN0YWxsLXBzLWFtIGluc3RhbGwtc3RyaXAgaW5zdGFsbGNoZWNrIFwKKwlpbnN0YWxsY2hlY2stYW0gaW5zdGFsbGRpcnMgbWFpbnRhaW5lci1jbGVhbiBcCisJbWFpbnRhaW5lci1jbGVhbi1nZW5lcmljIG1vc3RseWNsZWFuIG1vc3RseWNsZWFuLWdlbmVyaWMgcGRmIFwKKwlwZGYtYW0gcHMgcHMtYW0gdW5pbnN0YWxsIHVuaW5zdGFsbC1hbSBcCisJdW5pbnN0YWxsLW5vYmFzZV9kaXN0X21ldGhvZHNEQVRBIFwKKwl1bmluc3RhbGwtbm9iYXNlX2Rpc3RfbWV0aG9kc1NDUklQVFMgXAorCXVuaW5zdGFsbC1ub2Jhc2VfZGlzdF9wZXJsbGliREFUQQorCisKK2luc3RhbGwtZGF0YS1sb2NhbDoKKwkkKG1rZGlyX3ApICQoREVTVERJUikkKGFkbWluZGlyKS9tZXRob2RzL21udAorCSQobWtkaXJfcCkgJChERVNURElSKSQoYWRtaW5kaXIpL21ldGhvZHMvZGlzaworCSQobWtkaXJfcCkgJChERVNURElSKSQoYWRtaW5kaXIpL21ldGhvZHMvZmxvcHB5CisJJChta2Rpcl9wKSAkKERFU1RESVIpJChhZG1pbmRpcikvbWV0aG9kcy9mdHAKKwkkKG1rZGlyX3ApICQoREVTVERJUikkKGFkbWluZGlyKS9tZXRob2RzL211bHRpY2QKKworIyBUZWxsIHZlcnNpb25zIFszLjU5LDMuNjMpIG9mIEdOVSBtYWtlIHRvIG5vdCBleHBvcnQgYWxsIHZhcmlhYmxlcy4KKyMgT3RoZXJ3aXNlIGEgc3lzdGVtIGxpbWl0IChmb3IgU3lzViBhdCBsZWFzdCkgbWF5IGJlIGV4Y2VlZGVkLgorLk5PRVhQT1JUOgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L21ldGhvZHMvZGlzay9kZXNjLmNkcm9tIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L21ldGhvZHMvZGlzay9kZXNjLmNkcm9tCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmI0MDBhYmIKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvbWV0aG9kcy9kaXNrL2Rlc2MuY2Ryb20KQEAgLTAsMCArMSwzIEBACitJbnN0YWxsYXRpb24gZnJvbSBhIENELVJPTSBjb250YWluaW5nIGEgRGViaWFuIGRpc3RyaWJ1dGlvbi4gIFRoZQorQ0QtUk9NIG1heSBiZSBvciBub3QgYmUgbW91bnRlZCBhbHJlYWR5OyBpdCBzaG91bGQgY29udGFpbiBhIHN0YW5kYXJkCitJU085NjYwIENELVJPTSBmaWxlc3lzdGVtLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L21ldGhvZHMvZGlzay9kZXNjLmhhcmRkaXNrIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L21ldGhvZHMvZGlzay9kZXNjLmhhcmRkaXNrCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmJhNDU3NTAKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvbWV0aG9kcy9kaXNrL2Rlc2MuaGFyZGRpc2sKQEAgLTAsMCArMSw5IEBACitJbnN0YWxsYXRpb24gZnJvbSBmaWxlc3lzdGVtIG9uIGEgaGFyZCBkaXNrIHBhcnRpdGlvbiB0aGF0J3Mgbm90CitjdXJyZW50bHkgbW91bnRlZC4KKworVGhlIHBhcnRpdGlvbiBzaG91bGQgY29udGFpbiB0aGUgUGFja2FnZXMuZ3ogZmlsZSBmcm9tIGVhY2gKK2Rpc3RyaWJ1dGlvbiBhcmVhIGJlaW5nIGluc3RhbGxlZCAodXN1YWxseSBzdGFibGUsIGNvbnRyaWIgYW5kCitub24tZnJlZSkgYXMgd2VsbCBhcyB0aGUgY29ycmVzcG9uZGluZyBiaW5hcnkvKi8qLmRlYiBmaWxlcy4KKworVGhlIGVhc2llc3Qgd2F5IHRvIGdldCB0aGlzIGlzIHRvIG1ha2UgYSAocGFydGlhbCkgY29weSBvZiB0aGUKK2Rpc3RyaWJ1dGlvbiBzaXRlJ3MgZGlyZWN0b3J5IGhpZXJhcmNoeSwgaWYgcG9zc2libGUuCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvbWV0aG9kcy9kaXNrL2Rlc2MubW91bnRlZCBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9tZXRob2RzL2Rpc2svZGVzYy5tb3VudGVkCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmI5ODBkNzAKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvbWV0aG9kcy9kaXNrL2Rlc2MubW91bnRlZApAQCAtMCwwICsxLDEyIEBACitJbnN0YWxsYXRpb24gZnJvbSBhIGRpcmVjdG9yeSBvbiBhIGZpbGVzeXN0ZW0gdGhhdCBoYXMgYWxyZWFkeSBiZWVuCittb3VudGVkLiAgSWYgdGhlIG9wdGlvbnMgYXZhaWxhYmxlIGZvciBtb3VudGluZyB0aGluZ3MgYXV0b21hdGljYWxseQorYXJlIGluYWRlcXVhdGUgZm9yIHlvdXIgbmVlZHMgeW91J2xsIG5lZWQgdG8gZ2V0IGEgc2hlbGwgY29tbWFuZAorcHJvbXB0IChmb3IgZXhhbXBsZSBieSBzd2l0Y2hpbmcgVlQgdXNpbmcgQWx0LUY8bj4gb3IgcXVpdHRpbmcKK2RzZWxlY3QpIGFuZCB1c2UgaXQgdG8gbW91bnQgdGhlIGZpbGVzeXN0ZW0gYmVmb3JlIGNvbnRpbnVpbmcuCisKK1RoZSBhcmVhIHlvdSdyZSBpbnN0YWxsaW5nIGZyb20gc2hvdWxkIGNvbnRhaW4gdGhlIFBhY2thZ2VzLmd6IGZpbGUKK2Zyb20gZWFjaCBkaXN0cmlidXRpb24gYXJlYSBiZWluZyBpbnN0YWxsZWQgKHVzdWFsbHkgc3RhYmxlLCBjb250cmliCithbmQgbm9uLWZyZWUpIGFzIHdlbGwgYXMgdGhlIGNvcnJlc3BvbmRpbmcgYmluYXJ5LyovKi5kZWIgZmlsZXMuCisKK1RoZSBlYXNpZXN0IHdheSB0byBkbyBnZXQgdGhpcyBpcyB0byBtYWtlIGEgKHBhcnRpYWwpIGNvcHkgb2YgdGhlCitkaXN0cmlidXRpb24gc2l0ZSdzIGRpcmVjdG9yeSBoaWVyYXJjaHksIGlmIHBvc3NpYmxlLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L21ldGhvZHMvZGlzay9kZXNjLm5mcyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9tZXRob2RzL2Rpc2svZGVzYy5uZnMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzdiYjY0MAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9tZXRob2RzL2Rpc2svZGVzYy5uZnMKQEAgLTAsMCArMSw5IEBACitJbnN0YWxsYXRpb24gYWNyb3NzIHRoZSBuZXR3b3JrLCBmcm9tIGFuIE5GUyBzZXJ2ZXIgd2hpY2ggbm90CitjdXJyZW50bHkgbW91bnRlZC4KKworVGhlIHNlcnZlciBzaG91bGQgaGF2ZSBjb250YWluIHRoZSBQYWNrYWdlcy5neiBmaWxlIGZyb20gZWFjaAorZGlzdHJpYnV0aW9uIGFyZWEgYmVpbmcgaW5zdGFsbGVkICh1c3VhbGx5IHN0YWJsZSwgY29udHJpYiBhbmQKK25vbi1mcmVlKSBhcyB3ZWxsIGFzIHRoZSBjb3JyZXNwb25kaW5nIGJpbmFyeS8qLyouZGViIGZpbGVzLgorCitUaGUgZWFzaWVzdCB3YXkgZm9yIHRoZW0gdG8gZ2V0IHRoaXMgaXMgdG8gbWFrZSBhIChwYXJ0aWFsKSBjb3B5IG9mCit0aGUgZGlzdHJpYnV0aW9uIHNpdGUncyBkaXJlY3RvcnkgaGllcmFyY2h5LCBpZiBwb3NzaWJsZS4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9tZXRob2RzL2Rpc2svaW5zdGFsbCBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9tZXRob2RzL2Rpc2svaW5zdGFsbApuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwLi5kOGEzZGYyCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L21ldGhvZHMvZGlzay9pbnN0YWxsCkBAIC0wLDAgKzEsMTIyIEBACisjIS9iaW4vc2gKKworc2V0IC1lCit2YXJkaXI9IiQxIgorbWV0aG9kPSQyCitvcHRpb249JDMKKworY2QgIiR2YXJkaXIvbWV0aG9kcy9kaXNrIgorCisuIC4vc2h2YXIuJG9wdGlvbgorCit4aXQ9MQordHJhcCAnCisJaWYgWyAtbiAiJHVtb3VudCIgXQorCXRoZW4KKwkJdW1vdW50ICIkdW1vdW50IiA+L2Rldi9udWxsIDI+JjEKKwlmaQorCWV4aXQgJHhpdAorJyAwCisKK2lmIFsgLW4gIiRwX2Jsb2NrZGV2IiBdCit0aGVuCisJdW1vdW50PSIkcF9tb3VudHBvaW50IgorCW1vdW50IC1ydCAiJHBfZnN0eXBlIiAtbyBub3N1aWQsbm9kZXYgIiRwX2Jsb2NrZGV2IiAiJHBfbW91bnRwb2ludCIKK2ZpCisKK2lmIFsgLW4gIiRwX25mcyIgXQordGhlbgorCXVtb3VudD0iJHBfbW91bnRwb2ludCIKKwltb3VudCAtcnQgbmZzICIkcF9uZnMiIC1vIG5vc3VpZCxub2RldiAiJHBfbW91bnRwb2ludCIKK2ZpCisKK3ByZWRlcD0iJHZhcmRpci9wcmVkZXAtcGFja2FnZSIKK3doaWxlIHRydWUKK2RvCisJc2V0ICtlCisJZHBrZyAtLWFkbWluZGlyICIkdmFyZGlyIiAtLXByZWRlcC1wYWNrYWdlID4iJHByZWRlcCIKKwlyYz0kPworCXNldCAtZQorCWlmIHRlc3QgJHJjID0gMTsgdGhlbiBicmVhazsgZmkKKwl0ZXN0ICRyYyA9IDAKKworCXBlcmwgLWUgJworCQkoJGJpbmFyeXByZWZpeCwkcHJlZGVwKSA9IEBBUkdWOworCQkkYmluYXJ5cHJlZml4ID1+IHMsLyokLC8sIGlmIGxlbmd0aCgkYmluYXJ5cHJlZml4KTsKKwkJb3BlbihQLCI8ICRwcmVkZXAiKSB8fCBkaWUgImNhbm5vdCBvcGVuICRwcmVkZXA6ICQhXG4iOworCQl3aGlsZSAoPFA+KSB7CisJCQlzL1xzKlxuJC8vOworCQkJJHBhY2thZ2U9ICRfIGlmIHMvXlBhY2thZ2U6IC8vaTsKKwkJCUBmaWxlbmFtZT0gc3BsaXQoLyAvLCRfKSBpZiBzL15GaWxlbmFtZTogLy9pOworCQkJQG1zZG9zZmlsZW5hbWU9IHNwbGl0KC8gLywkXykgaWYgcy9eTVNET1MtRmlsZW5hbWU6IC8vaTsKKwkJfQorCQlsZW5ndGgoJHBhY2thZ2UpIHx8IGRpZSAiaW50ZXJuYWwgZXJyb3IgLSBubyBwYWNrYWdlIjsKKwkJQGZpbGVuYW1lIHx8IGRpZSAiaW50ZXJuYWwgZXJyb3IgLSBubyBmaWxlbmFtZSI7CisJCUBmaWxlbmFtZT09QG1zZG9zZmlsZW5hbWUgfHwgIUBmaWxlbmFtZSB8fCAhQG1zZG9zZmlsZW5hbWUgfHwKKwkJCWRpZSAiaW50ZXJuYWwgZXJyb3IgLSBtaXNtYXRjaCA+QGZpbGVuYW1lPCA+QG1zZG9zZmlsZW5hbWU8IjsKKwkJQGludm9rZT0oKTsgJHw9MTsKKwkJZm9yICgkaT0wOyAkaTw9JCNmaWxlbmFtZTsgJGkrKykgeworCQkJJHBwYXJ0PSAkaSsxOworCQkJcHJpbnQgIkxvb2tpbmcgZm9yIHBhcnQgJHBwYXJ0IG9mICRwYWNrYWdlIC4uLiAiOworCQkJaWYgKC1mICIkYmluYXJ5cHJlZml4JGZpbGVuYW1lWyRpXSIpIHsKKwkJCQkkcHJpbnQ9ICRmaWxlbmFtZVskaV07CisJCQkJJGludm9rZT0gIiRiaW5hcnlwcmVmaXgkZmlsZW5hbWVbJGldIjsKKwkJCX0gZWxzaWYgKC1mICIkYmluYXJ5cHJlZml4JG1zZG9zZmlsZW5hbWVbJGldIikgeworCQkJCSRwcmludD0gJG1zZG9zZmlsZW5hbWVbJGldOworCQkJCSRpbnZva2U9ICIkYmluYXJ5cHJlZml4JG1zZG9zZmlsZW5hbWVbJGldIjsKKwkJCX0gZWxzZSB7CisJCQkJJGJhc2U9ICRmaWxlbmFtZVskaV07ICRiYXNlID1+IHMsLiovLCw7CisJCQkJJG1zZG9zYmFzZT0gJG1zZG9zZmlsZW5hbWVbJGldOyAkbXNkb3NiYXNlID1+IHMsLiovLCw7CisJCQkJZGVmaW5lZCgkYz0gb3BlbihYLCItfCIpKSB8fAorCQkJCQlkaWUgImZhaWxlZCB0byBmb3JrIGZvciBmaW5kOiAkIVxuIjsKKwkJCQlpZiAoISRjKSB7CisJCQkJCWV4ZWMoImZpbmQiLCAiLUwiLAorCQkJCQkgICAgIGxlbmd0aCgkYmluYXJ5cHJlZml4KSA/CisJCQkJCSAgICAgJGJpbmFyeXByZWZpeCA6ICIuIiwKKwkJCQkJICAgICAiLW5hbWUiLCRiYXNlLCItbyIsIi1uYW1lIiwkbXNkb3NiYXNlKTsKKwkJCQkJZGllICJmYWlsZWQgdG8gZXhlYyBmaW5kOiAkIVxuIjsKKwkJCQl9CisJCQkJd2hpbGUgKGNob3AoJGludm9rZT0gPFg+KSkgeyBsYXN0IGlmIC1mICRpbnZva2U7IH0KKwkJCQkkcHJpbnQ9ICRpbnZva2U7CisJCQkJaWYgKHN1YnN0cigkcHJpbnQsMCxsZW5ndGgoJGJpbmFyeXByZWZpeCkrMSkgZXEKKwkJCQkgICAgIiRiaW5hcnlwcmVmaXgvIikgeworCQkJCQkkcHJpbnQ9IHN1YnN0cigkcHJpbnQsbGVuZ3RoKCRiaW5hcnlwcmVmaXgpKTsKKwkJCQl9CisJCQl9CisJCQlpZiAoIWxlbmd0aCgkaW52b2tlKSkgeworCQkJCXByaW50IFNUREVSUiAiCisKK09oIGRlYXIsIEkgbmVlZCB0byBpbnN0YWxsIG9yIHVwZ3JhZGUgJHBhY2thZ2UsIGJ1dCBJIGRvbidcJyd0IHNlZQordGhlIGFwcHJvcHJpYXRlIGZpbGUocykgYW55d2hlcmUuICBJJ1wnJ20gZXhwZWN0aW5nIHZlcnNpb24gJHZlcnNpb24gb3IKK2xhdGVyLCBhcyB0aGF0IGlzIGxpc3RlZCBpbiB0aGUgUGFja2FnZXMgZmlsZS4KKworUGVyaGFwcyB5b3UgZG93bmxvYWRlZCBpdCB3aXRoIGFuIHVuZXhwZWN0ZWQgbmFtZSwgb3Igc29tZXRoaW5nLgorSW4gYW55IGNhc2UsIHlvdSBtdXN0IGZpbmQgdGhlIGZpbGUocykgYW5kIHRoZW4gZWl0aGVyIHBsYWNlIGl0IHdpdGgKK3RoZSBjb3JyZWN0IGZpbGVuYW1lKHMpIChhcyBsaXN0ZWQgaW4gdGhlIFBhY2thZ2VzIGZpbGUgb3IgaW4KKyR2YXJkaXIvYXZhaWxhYmxlKSBhbmQgcmVydW4gdGhlIGluc3RhbGxhdGlvbiwgb3IgdXBncmFkZSB0aGUKK3BhY2thZ2UgYnkgdXNpbmcgYGRwa2cgLS1pbnN0YWxsIC0tYXV0by1kZWNvbmZpZ3VyZSdcJycgYnkgaGFuZC4KKworIjsKKwkJCQlleGl0KDEpOworCQkJfQorCQkJcHJpbnQgIiRwcmludFxuIjsKKwkJCXB1c2goQGludm9rZSwkaW52b2tlKTsKKwkJfQorCQlwcmludCAiUnVubmluZyBkcGtnIC1pQiBmb3IgJHBhY2thZ2UgLi4uXG4iOworCQlleGVjKCJkcGtnIiwiLS1hZG1pbmRpciIsJHZhcmRpciwiLWlCIiwiLS0iLEBpbnZva2UpOworCQlkaWUgImZhaWxlZCB0byBleGVjIGRwa2c6ICQhXG4iOworCScgLS0gIiRwX21vdW50cG9pbnQkcF9tYWluX2JpbmFyeSIgIiRwcmVkZXAiCitkb25lCisKK2ZvciBmIGluIG1haW4gY3RiIG5mIG51cyBsY2wKK2RvCisJZXZhbCAndGhpc19iaW5hcnk9JHBfJyRmJ19iaW5hcnknCisJaWYgWyAteiAiJHRoaXNfYmluYXJ5IiBdOyB0aGVuIGNvbnRpbnVlOyBmaQorCWVjaG8gUnVubmluZyBkcGtnIC0tYWRtaW5kaXIgJHZhcmRpciAtaUdST0VCICIkcF9tb3VudHBvaW50JHRoaXNfYmluYXJ5IgorCWRwa2cgLS1hZG1pbmRpciAkdmFyZGlyIC1pR1JPRUIgIiRwX21vdW50cG9pbnQkdGhpc19iaW5hcnkiCitkb25lCisKK2VjaG8gLW4gJ0luc3RhbGxhdGlvbiBPSy4gIEhpdCBSRVRVUk4uICAnCityZWFkIHJlc3BvbnNlCisKK3hpdD0wCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvbWV0aG9kcy9kaXNrL25hbWVzIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L21ldGhvZHMvZGlzay9uYW1lcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xZjU1Yjc4Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L21ldGhvZHMvZGlzay9uYW1lcwpAQCAtMCwwICsxLDQgQEAKKzMwIGNkcm9tIEluc3RhbGwgZnJvbSBhIENELVJPTS4KKzM1IG5mcyBJbnN0YWxsIGZyb20gYW4gTkZTIHNlcnZlciAobm90IHlldCBtb3VudGVkKS4KKzQwIGhhcmRkaXNrIEluc3RhbGwgZnJvbSBhIGhhcmQgZGlzayBwYXJ0aXRpb24gKG5vdCB5ZXQgbW91bnRlZCkuCis0MiBtb3VudGVkIEluc3RhbGwgZnJvbSBhIGZpbGVzeXN0ZW0gd2hpY2ggaXMgYWxyZWFkeSBtb3VudGVkLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L21ldGhvZHMvZGlzay9zZXR1cCBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9tZXRob2RzL2Rpc2svc2V0dXAKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMC4uY2ExZjBjYwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9tZXRob2RzL2Rpc2svc2V0dXAKQEAgLTAsMCArMSw1NzkgQEAKKyMhL2Jpbi9zaAorCitzZXQgLWUKK3ZhcmRpcj0iJDEiCittZXRob2Q9JDIKK29wdGlvbj0kMworCitjZCAiJHZhcmRpci9tZXRob2RzL2Rpc2siCit0cD0vdmFyL3J1bi9kZG0kJAorCitpYXJjaD1gZHBrZyAtLWFkbWluZGlyICR2YXJkaXIgLS1wcmludC1hcmNoaXRlY3R1cmVgCisKK3hpdD0xCit0cmFwICcKKwlybSAtZiAkdHAuPworCWlmIFsgLW4gIiR1bW91bnQiIF0KKwl0aGVuCisJCXVtb3VudCAiJHVtb3VudCIgPi9kZXYvbnVsbCAyPiYxCisJZmkKKwlleGl0ICR4aXQKKycgMAorCitpZiBscyAtZCAiJHRwLj8iID4vZGV2L251bGwgMj4mMQordGhlbgorCXJtICR0cC4/CitmaQorCit5ZXNubyAoKSB7CisJd2hpbGUgdHJ1ZQorCWRvCisJCWVjaG8gLW4gIiQyIFskMV0gICIKKwkJcmVhZCByZXNwb25zZQorCQlpZiBbIC16ICIkcmVzcG9uc2UiIF0KKwkJdGhlbgorCQkJcmVzcG9uc2U9IiQxIgorCQlmaQorCQljYXNlICIkcmVzcG9uc2UiIGluCisJCVtObl0qKQl5ZXNubz1ubyA7IHJldHVybiA7OworCQlbWXldKikJeWVzbm89eWVzIDsgcmV0dXJuIDs7CisJCWVzYWMKKwlkb25lCit9CisKK3ByaW50X3BhcnRpdGlvbl90YWJsZSgpCit7CisJZGV2aWNlPSIkMSIKKworCXByaW50ZiAicFxucVxuIiB8IGZkaXNrICIkZGV2aWNlIiAyPi9kZXYvbnVsbAorfQorCitnZXRibG9ja2RldiAoKSB7CisJbW91bnRwb2ludD0iJHZhcmRpci9tZXRob2RzL21udCIKKwlpZiBbIC16ICIkZGVmYXVsdGRldmljZSIgXQorCXRoZW4KKwkJZGVmYXVsdGRldmljZT0iJG5ld2RlZmF1bHRkZXZpY2UiCisJZWxpZiBbICIkZGVmYXVsdGRldmljZSIgIT0gIiRuZXdkZWZhdWx0ZGV2aWNlIiBdCisJdGhlbgorCQllY2hvIFwKKwkiTGFzdCB0aW1lIHlvdSBzcGVjaWZpZWQgaW5zdGFsbGF0aW9uIGZyb20gJGRlZmF1bHRkZXZpY2UuIgorCWZpCisJcHJvbXB0c3RyaW5nPSIkMSIKKwl3aGlsZSBbIC16ICIkYmxvY2tkZXZpY2UiIF0KKwlkbworCQllY2hvIC1uICIkcHJvbXB0c3RyaW5nIFskZGVmYXVsdGRldmljZV06ICAiCisJCXJlYWQgcmVzcG9uc2UKKwkJaWYgWyAteiAiJHJlc3BvbnNlIiBdCisJCXRoZW4KKwkJCXJlc3BvbnNlPSIkZGVmYXVsdGRldmljZSIKKwkJZmkKKwkJaWYgISBbIC1iICIkcmVzcG9uc2UiIF0KKwkJdGhlbgorCQkJZWNobyAiJHJlc3BvbnNlIGlzIG5vdCBhIGJsb2NrIGRldmljZS4iOyBjb250aW51ZQorCQlmaQorCQl0cnlibG9ja2RldmljZT0iJHJlc3BvbnNlIgorCQlpZiBbICRvcHRpb24gPSBjZHJvbSBdCisJCXRoZW4KKwkJCWZzdHlwZT1pc285NjYwCisJCWVsaWYgWyAkb3B0aW9uID0gaGFyZGRpc2sgXQorCQl0aGVuCisJCQlibG9ja2Jhc2U9ImBlY2hvIFwiJHRyeWJsb2NrZGV2aWNlXCIgfCBzZWQgLWUgJ3MvWzAtOV1cezEsXH0kLy8nYCIKKwkJCXNldCArZQorCQkJcHJpbnRfcGFydGl0aW9uX3RhYmxlICIkYmxvY2tiYXNlIiA+JHRwLmYKKwkJCXNldCAtZQorCQkJcHJvcG9zZWRkZXZpY2U9IiR0cnlibG9ja2RldmljZSIgcGVybCAtbmUgJworbmV4dCB1bmxlc3MgL14gKkRldmljZSArQm9vdCArU3RhcnQgK0VuZCArQmxvY2tzICtJZCArU3lzdGVtICokL2kgLi4gIS9cUy87CituZXh0IHVubGVzcyBzOl4vXFMrOjogJiYgJCYgZXEgJEVOVnsicHJvcG9zZWRkZXZpY2UifTsKK25leHQgdW5sZXNzIHMvXiArKFwqICspP1xkKyArXGQrICtcZCtcKz8gKy8vOworbmV4dCB1bmxlc3MgbS9eKFswLTlhLWZdezEsMn0pIC9pOworJXR5cGVzPSAoICIxIiwibXNkb3MiLCAiNCIsIm1zZG9zIiwgIjYiLCJtc2RvcyIsICI3IiwiaHBmcyIsICI4MCIsIm1pbml4IiwKKyAgICAgICAgICAiODEiLCJtaW5peCIsICI4MyIsImV4dDIiICk7CitwcmludCAkdHlwZXN7JDF9OyBleGl0KDApOwknIDwkdHAuZiA+JHRwLm0KKwkJCWRlZmF1bHRmc3R5cGU9ImBjYXQgJHRwLm1gIgorCQkJaWYgWyAtbiAiJGRlZmF1bHRmc3R5cGUiIF0KKwkJCXRoZW4KKwkJCQljYXQgPDxFTkQKK1RoZSBwYXJ0aXRpb24gdGFibGUgZm9yICRibG9ja2Jhc2UgY2xhaW1zIHRoYXQgJHRyeWJsb2NrZGV2aWNlCitjb250YWlucyBmaWxlc3lzdGVtIHR5cGUgJGRlZmF1bHRmc3R5cGUuCitFTkQKKwkJCQlpZiAhIGdyZXAgIgkkZGVmYXVsdGZzdHlwZSQiIC9wcm9jL2ZpbGVzeXN0ZW1zID4vZGV2L251bGwKKwkJCQl0aGVuCisJCQkJCWVjaG8gXAorCSJZb3VyIGtlcm5lbCBkb2VzIG5vdCBhcHBlYXIgdG8gc3VwcG9ydCB0aGF0IGZpbGVzeXN0ZW0gdHlwZS4iCisJCQkJCWRlZmF1bHRmc3R5cGU9IiIKKwkJCQlmaQorCQkJZmkKKwkJCWVjaG8gLW4gIlN1cHBvcnRlZCBmaWxlc3lzdGVtczogIgorCQkJc2VkIC1lICdzL14uKgkvIC8nIC9wcm9jL2ZpbGVzeXN0ZW1zIHwgdHIgJ1xuJyAnICcKKwkJCWVjaG8gLW4gIgorRW50ZXIgZmlsZXN5c3RlbSB0eXBlIChmb3IgJHRyeWJsb2NrZGV2aWNlKSBbJGRlZmF1bHRmc3R5cGVdOiAgIgorCQkJcmVhZCBmc3R5cGUKKwkJCWlmIFsgLXogIiRmc3R5cGUiIF0KKwkJCXRoZW4KKwkJCQlmc3R5cGU9IiRkZWZhdWx0ZnN0eXBlIgorCQkJZmkKKwkJZmkKKwkJdW1vdW50PSIkbW91bnRwb2ludCIKKwkJaWYgbW91bnQgLXJ0ICIkZnN0eXBlIiAtbyBub3N1aWQsbm9kZXYgIiR0cnlibG9ja2RldmljZSIgIiRtb3VudHBvaW50IgorCQl0aGVuCisJCQllY2hvCisJCQlibG9ja2RldmljZT0iJHRyeWJsb2NrZGV2aWNlIgorCQllbHNlCisJCQl1bW91bnQ9IiIKKwkJCWVjaG8gXAorCSJVbmFibGUgdG8gbW91bnQgJHRyeWJsb2NrZGV2aWNlIG9uICRtb3VudHBvaW50LCB0eXBlICRmc3R5cGUuIgorCQlmaQorCWRvbmUKK30KKworb3V0cHV0cGFyYW0gKCkgeworCWVjaG8gIiQyIiB8IHNlZCAtZSAicy8nLydcXFxcJycvOyBzL14vJDE9Jy87IHMvJC8nLyIgPiYzCit9CisKK2ludHJrZXk9ImBzdHR5IC1hIHwgc2VkIC1uICdzLy4qaW50ciA9IFwoW147XSpcKTsuKi9cMS9wJ2AiCitlY2hvICIKK0lmIHlvdSBtYWtlIGEgbWlzdGFrZSwgdXNlIHRoZSBpbnRlcnJ1cHQga2V5ICgkaW50cmtleSkgdG8gYWJvcnQuCisiCisKKyMgU3RhdGUgdmFyaWFibGVzLCBgYmVzdCBmaXJzdCcKKyMgIHttYWluLGN0YixuZixudXMsbGNsfV97cGFja2FnZXMsYmluYXJ5fQorIyAgIEVtcHR5IGJlZm9yZSB3ZSd2ZSBmb3VuZCB0aGVtIG9yIGlmIHRoZXkncmUgbm90IGF2YWlsYWJsZSwKKyMgICBzZXQgdG8gdGhlIHJlbGV2YW50IGJpdCB1bmRlciBtb3VudHBvaW50IG90aGVyd2lzZS4KKyMgIGhpZXJiYXNlCisjICAgQSBkaXJlY3RvcnkgY29udGFpbmluZyBhIERlYmlhbiBGVFAgc2l0ZSBtaXJyb3IgdHJlZSBmb3IgT05FIGRpc3RyaWJ1dGlvbi4KKyMJZWcgL3B1Yi9kZWJpYW4vZGlzdHMvc3RhYmxlCisjICBtb3VudHBvaW50CisjICAgVGhlIG1vdW50cG9pbnQgZm9yIHRoZSBmaWxlc3lzdGVtIGNvbnRhaW5pbmcgdGhlIHN0dWZmCisjICAgZW1wdHkgb3IgdW5zZXQgaWYgd2UgZG9uJ3Qga25vdyB5ZXQsIG9yIGlmIHdlIGhhdmVuJ3QgbW91bnRlZCBhbnl0aGluZzsKKyMgICBtYXkgYWxzbyBiZSBlbXB0eSBpZiBgZGlyZWN0b3J5JyB3YXMgc2V0LgorIyAgYmxvY2tkZXZpY2UKKyMgICBUaGUgYWN0dWFsIGJsb2NrIGRldmljZSB0byBtb3VudC4KKyMgIGZzdHlwZQorIyAgIFRoZSBmaWxlc3lzdGVtIHR5cGUgdG8gdXNlLgorIyAgZGVmYXVsdGRldmljZQorIyAgIFRoZSBkZWZhdWx0IGJsb2NrIGRldmljZSB0byBtb3VudC4KKworaWYgWyAtZiBzaHZhci4kb3B0aW9uIF0KK3RoZW4KKwkuIC4vc2h2YXIuJG9wdGlvbgorCWRlZmF1bHRkZXZpY2U9IiRwX2Jsb2NrZGV2IgorCWRlZmF1bHRuZnNzZXJ2ZXI9IiRwX25mc3NlcnZlciIKKwlkZWZhdWx0bmZzcmVtcGF0aD0iJHBfbmZzcmVtcGF0aCIKK2ZpCisKK2lmIFsgJG9wdGlvbiA9IGNkcm9tIF0KK3RoZW4KKwltb3VudCA+JHRwLm0KKwlzZWQgLW4gJ3MvIChbXildKikkLy87IHMvXlteIF0qIG9uIC8vOyBzLyB0eXBlIGlzbzk2NjAkLy9wJyA8JHRwLm0gPiR0cC5sCisJbmNkcm9tcz1gd2MgLWwgPCR0cC5sYAorCWlmIFsgJG5jZHJvbXMgLWd0IDEgXQorCXRoZW4KKwkJcmVzcG9uc2U9IiIKKwkJd2hpbGUgWyAteiAiJHJlc3BvbnNlIiBdCisJCWRvCisJCQllY2hvIFwKKwknU2V2ZXJhbCBDRC1ST01zIChvciBvdGhlciBJU085NjYwIGZpbGVzeXN0ZW1zKSBhcmUgbW91bnRlZDonCisJCQlncmVwICd0eXBlIGlzbzk2NjAgKFteKV0qKSQnIDwkdHAubSB8IG5sCisJCQllY2hvIC1uIFwKKwknSXMgaXQgYW55IG9mIHRoZXNlID8gIFR5cGUgYSBudW1iZXIsIG9yIGBuJ1wnJyBmb3Igbm9uZS4gICcKKwkJCXJlYWQgcmVzcG9uc2UKKwkJCXJlc3BvbnNlPSJgZWNobyBcIiRyZXNwb25zZVwiIHwgc2VkIC1lICdzL1sgCV0qJC8vJ2AiCisJCQlpZiBleHByICIkcmVzcG9uc2UiIDogJ1swLTldWzAtOV0qJCcgPi9kZXYvbnVsbCAmJiBcCisJCQkgICBbICRyZXNwb25zZSAtZ2UgMSBdICYmIFsgJHJlc3BvbnNlIC1sZSAkbmNkcm9tcyBdCisJCQl0aGVuCisJCQkJbW91bnRwb2ludD0iYHNlZCAtbiAkcmVzcG9uc2UncCcgPCR0cC5sYCIKKwkJCQllY2hvCisJCQllbGlmIGV4cHIgIiRyZXNwb25zZSIgOiAnW05uXScgPi9kZXYvbnVsbAorCQkJdGhlbgorCQkJCW1vdW50cG9pbnQ9IiIKKwkJCWVsc2UKKwkJCQlyZXNwb25zZT0iIgorCQkJZmkKKwkJZG9uZQorCWVsaWYgWyAkbmNkcm9tcyA9IDEgXQorCXRoZW4KKwkJbW91bnRwb2ludD0iYGNhdCAkdHAubGAiCisJCXBlcmwgLW5lICdwcmludCBpZiBzLyB0eXBlIGlzbzk2NjAgXChbXildKlwpJC8vICYmIHMvIG9uIC4qJC8vOycgXAorCQkJPCR0cC5tID4kdHAuZAorCQlibG9ja2RldmljZT0iYGNhdCAkdHAuZGAiCisJCXllc25vIHllcyBcCisJIkkgc2VlIGEgQ0QtUk9NOiAkYmxvY2tkZXZpY2UsIG1vdW50ZWQgb24gJG1vdW50cG9pbnQuICBJcyBpdCB0aGUgcmlnaHQgb25lID8iCisJCWlmIFsgJHllc25vID0gbm8gXQorCQl0aGVuCisJCQllY2hvICdVbm1vdW50aW5nIGl0IC4uLicKKwkJCXVtb3VudD0iJG1vdW50cG9pbnQiCisJCQl3aGlsZSB0cnVlCisJCQlkbworCQkJCWVjaG8gLW4gXAorCSdQbGVhc2UgaW5zZXJ0IHRoZSByaWdodCBkaXNjLCBhbmQgaGl0IHJldHVybjogICcKKwkJCQlyZWFkIHJlc3BvbnNlCisJCQkJaWYgbW91bnQgLXJ0IGlzbzk2NjAgLW8gbm9zdWlkLG5vZGV2IFwKKwkJCQkJIiRibG9ja2RldmljZSIgIiRtb3VudHBvaW50IgorCQkJCXRoZW4KKwkJCQkJZWNobworCQkJCQlicmVhaworCQkJCWZpCisJCQlkb25lCisJCWZpCisJZmkKKwlpZiBbIC16ICIkbW91bnRwb2ludCIgXQorCXRoZW4KKwkJaWYgWyAtYiAvZGV2L2Nkcm9tIF0KKwkJdGhlbgorCQkJZWNobyBcCisJJ0kgc2VlIHRoYXQgL2Rldi9jZHJvbSBleGlzdHMgYW5kIGlzIGEgYmxvY2sgZGV2aWNlLicKKwkJCW5ld2RlZmF1bHRkZXZpY2U9L2Rldi9jZHJvbQorCQlmaQorCQlnZXRibG9ja2RldiAnSW5zZXJ0IHRoZSBDRC1ST00gYW5kIGVudGVyIHRoZSBibG9jayBkZXZpY2UgbmFtZScKKwlmaQorZmkKKworaWYgWyAkb3B0aW9uID0gbmZzIF0KK3RoZW4KKwltb3VudHBvaW50PSIkdmFyZGlyL21ldGhvZHMvbW50IgorCXdoaWxlIFsgLXogIiRuZnNzZXJ2ZXIiIF0KKwlkbworCQllY2hvIC1uIFwKKyJXaGF0IGlzIHRoZSBuYW1lIG9mIHRoZSBORlMgc2VydmVyID8gWyRkZWZhdWx0bmZzc2VydmVyXSAgIgorCQlyZWFkIHJlc3BvbnNlCisJCWlmIFsgLXogIiRyZXNwb25zZSIgXSAmJiBbIC1uICIkZGVmYXVsdG5mc3NlcnZlciIgXQorCQl0aGVuCisJCQlyZXNwb25zZT0iJGRlZmF1bHRuZnNzZXJ2ZXIiCisJCWZpCisJCWlmIFsgLXogIiRyZXNwb25zZSIgXTsgdGhlbiBjb250aW51ZTsgZmkKKwkJaWYgWyAteCAvdXNyL2Jpbi9ycGNpbmZvIF0KKwkJdGhlbgorCQkJaWYgcnBjaW5mbyAtdSAiJHJlc3BvbnNlIiBtb3VudGQgfCBncmVwIC1xICdyZWFkeScKKwkJCXRoZW4KKwkJCQluZnNzZXJ2ZXI9IiRyZXNwb25zZSIKKwkJCWVsc2UKKwkJCQllY2hvICIkcmVzcG9uc2UgYXBwZWFycyBub3QgdG8gYmUgYW4gTkZTIHNlcnZlci4iCisJCQlmaQorCQllbGlmIFsgLXggL2Jpbi9waW5nIF0KKwkJdGhlbgorCQkJaWYgcGluZyAtcSAtYyAxICIkcmVzcG9uc2UiIHwgZ3JlcCAtcSAnLCAxIHBhY2tldHMgcmVjZWl2ZWQnCisJCQl0aGVuCisJCQkJbmZzc2VydmVyPSIkcmVzcG9uc2UiCisJCQllbHNlCisJCQkJZWNobyAiJHJlc3BvbnNlIGFwcGVhcnMgdG8gYmUgZG93biBvciBub25leGlzdGVudC4iCisJCQlmaQorCQllbHNlCisJCQllY2hvIFwKKyIoSSBjYW4ndCBjaGVjayB0aGF0IG5vdyBiZWNhdXNlIHRoZXJlIGlzIG5vIC91c3IvYmluL3JwY2luZm8gb3IgL2Jpbi9waW5nLikiCisJCQluZnNzZXJ2ZXI9IiRyZXNwb25zZSIKKwkJZmkKKwlkb25lCisJd2hpbGUgWyAteiAiJG5mc3JlbXBhdGgiIF0KKwlkbworCQllY2hvIC1uICIKK1doYXQgaXMgdGhlIHBhdGhuYW1lIG9uIHRoZSBORlMgc2VydmVyIG9mIHRoZSBmaWxlc3lzdGVtIHdpdGgKK3RoZSBEZWJpYW4gZmlsZXM/IFskZGVmYXVsdG5mc3JlbXBhdGhdICAiCisJCXJlYWQgcmVzcG9uc2UKKwkJaWYgWyAteiAiJHJlc3BvbnNlIiBdICYmIFsgLW4gIiRkZWZhdWx0bmZzcmVtcGF0aCIgXQorCQl0aGVuCisJCQlyZXNwb25zZT0iJGRlZmF1bHRuZnNyZW1wYXRoIgorCQllbHNlCisJCQlyZXNwb25zZT0iYGVjaG8gXCIkcmVzcG9uc2VcIiB8IHNlZCAtZSAnczovJDo6OyBzOl4vKjovOidgIgorCQlmaQorCQl1bW91bnQ9IiRtb3VudHBvaW50IgorCQlpZiBtb3VudCAtcnQgbmZzIC1vIG5vc3VpZCxub2RldiAiJG5mc3NlcnZlcjokcmVzcG9uc2UiICIkbW91bnRwb2ludCIKKwkJdGhlbgorCQkJZWNobworCQkJbmZzcmVtcGF0aD0iJHJlc3BvbnNlIgorCQllbHNlCisJCQl1bW91bnQ9IiIKKwkJCWVjaG8gXAorIlVuYWJsZSB0byBtb3VudCBORlMgZmlsZXN5c3RlbSAkbmZzc2VydmVyOiRyZXNwb25zZS4iCisJCWZpCisJZG9uZQorCW5mcz0iJG5mc3NlcnZlcjokbmZzcmVtcGF0aCIKK2ZpCisKK2lmIFsgJG9wdGlvbiA9IGhhcmRkaXNrIF0KK3RoZW4KKwlzZXQgK2UKKwlwcmludF9wYXJ0aXRpb25fdGFibGUgL2Rldi9oZGEgPiR0cC5mCisJaWYgWyAkPyAhPSAwIF0KKwl0aGVuCisJCXByaW50X3BhcnRpdGlvbl90YWJsZSAvZGV2L3NkYSA+JHRwLmYKKwlmaQorCXNldCAtZQorCXBlcmwgLW5lICcKK25leHQgdW5sZXNzIC9eICpEZXZpY2UgK0Jvb3QgK1N0YXJ0ICtFbmQgK0Jsb2NrcyArSWQgK1N5c3RlbSAqJC9pIC4uICEvXFMvOworbmV4dCB1bmxlc3MgLyBbMTQ2XSArRE9TIFxkKy1iaXQgXFMrJC87CituZXh0IHVubGVzcyBtOl4vXFMrOjsKK3ByaW50ICQmOwkJJyA8JHRwLmYgPiR0cC5kCisJbmV3ZGVmYXVsdGRldmljZT0iYGNhdCAkdHAuZGAiCisJZWNobyAiCitJIG5lZWQgdG8ga25vdyB3aGljaCBkaXNrIHBhcnRpdGlvbiBjb250YWlucyB0aGUgZGlzdHJpYnV0aW9uIGZpbGVzOworZGlzayBwYXJ0aXRpb25zIGFyZSBzcGVjaWZpZWQgYnkgdGhlIGJsb2NrIGRldmljZSBuYW1lIGluIExpbnV4LiIKKwlpZiBbIC1uICIkbmV3ZGVmYXVsdGRldmljZSIgXQorCXRoZW4KKwkJZWNobyBcCisiQnkgdGhlIHdheSwgJG5ld2RlZmF1bHRkZXZpY2UgbG9va3MgbGlrZSBhIERPUyBwYXJ0aXRpb24uIgorCWZpCisJZ2V0YmxvY2tkZXYgIkVudGVyIHRoZSBwYXJ0aXRpb24ncyBibG9jayBkZXZpY2UgbmFtZSIKK2ZpCisKK2lmIFsgLW4gIiRtb3VudHBvaW50IiBdCit0aGVuCisJIyBXZSBtdXN0IGhhdmUgJG1vdW50cG9pbnQKKwlpZiBbICRvcHRpb24gPSBjZHJvbSBdCisJdGhlbgorCQllY2hvIFwKKydBbGwgZGlyZWN0b3J5IG5hbWVzIHNob3VsZCBiZSBlbnRlcmVkIHJlbGF0aXZlIHRvIHRoZSByb290IG9mIHRoZSBDRC1ST00uCisnCisJZWxpZiBbICRvcHRpb24gPSBuZnMgXQorCXRoZW4KKwkJZWNobyBcCisiQWxsIGRpcmVjdG9yeSBuYW1lcyBzaG91bGQgYmUgZW50ZXJlZCByZWxhdGl2ZSB0byB0aGUgcm9vdCBvZiB0aGUgTkZTCitmaWxlc3lzdGVtLCBpZSByZWxhdGl2ZSB0byAkbmZzcmVtcGF0aCBvbiB0aGUgc2VydmVyLgorIgorCWVsc2UKKwkJZWNobyBcCisiQWxsIGRpcmVjdG9yeSBuYW1lcyBzaG91bGQgYmUgZW50ZXJlZCByZWxhdGl2ZSB0byB0aGUgcm9vdCBvZiB0aGUKKyRmc3R5cGUgZmlsZXN5c3RlbSBvbiAkYmxvY2tkZXZpY2UuCisiCisJZmkKK2ZpCisKK3doaWxlIHRydWUKK2RvCisJaWYgWyAkb3B0aW9uID0gY2Ryb20gXQorCXRoZW4KKwkJZWNobyBcCisiSSB3b3VsZCBsaWtlIHRvIGtub3cgd2hlcmUgb24gdGhlIENELVJPTSB0aGUgdG9wIGxldmVsIG9mIHRoZSBEZWJpYW4KK2Rpc3RyaWJ1dGlvbiBpcyAoZWcuICdkaXN0cy9zdGFibGUnKSAtIHRoaXMgZGlyZWN0b3J5IHVzdWFsbHkgY29udGFpbnMgdGhlIAorUGFja2FnZXMtTWFzdGVyIGZpbGUuCisKK0lmIHRoZSBDRC1ST00gaXMgYmFkbHkgb3JnYW5pc2VkIGFuZCBkb2Vzbid0IGhhdmUgYSBzdHJhaWdodGZvcndhcmQgY29weSBvZgordGhlIGRpc3RyaWJ1dGlvbiB5b3UgbWF5IGFuc3dlciBcYG5vbmUnIGFuZCB3ZSdsbCBnbyB0aHJvdWdoIHRoZSBwYXJ0cworSSBuZWVkIGluZGl2aWR1YWxseS4iCisJZWxzZQorCQllY2hvIFwKKyJJbiBvcmRlciB0byBtYWtlIGl0IGVhc3kgZm9yIG1lIHRvIGZpbmQgdGhlIHJlbGV2YW50IGZpbGVzIEknZCBpZGVhbGx5CitsaWtlIHRvIGluc3RhbGwgZnJvbSBhIHN0cmFpZ2h0Zm9yd2FyZCBjb3B5IG9mIHRoZSBEZWJpYW4gZGlzdHJpYnV0aW9uLgorVG8gdXNlIHRoaXMgSSdsbCBuZWVkIHRvIGtub3cgd2hlcmUgdGhlIHRvcCBsZXZlbCBvZiB0aGF0IGNvcHkgb2YgdGhlCitkaXN0cmlidXRpb24gaXMgKGVnLiAnZGViaWFuL2Rpc3RzL3N0YWJsZScpIC0gdGhpcyBkaXJlY3RvcnkgdXN1YWxseSAKK2NvbnRhaW5zIHRoZSBQYWNrYWdlcy1NYXN0ZXIgZmlsZS4KKworSWYgeW91IGRvIG5vdCBoYXZlIGEgc3RyYWlnaHRmb3J3YXJkIGNvcHkgb2YgdGhlIGRpc3RyaWJ1dGlvbiBhdmFpbGFibGUKK2p1c3QgYW5zd2VyIFxgbm9uZScgYW5kIHdlJ2xsIGdvIHRocm91Z2ggdGhlIHBhcnRzIEkgbmVlZCBpbmRpdmlkdWFsbHkuIgorCWZpCisJZGVmaGllcmJhc2U9bm9uZQorIyBtYXliZSBhc2sgZm9yIGRlYmlhbi9kaXN0cyBhbmQgdGhlbiBzaG93IGFuZCBhc2sgZm9yIGF2YWlsYWJsZSBkaXN0cyAKKyMgZWcuIHtzdGFibGUsZnJvemVuLHVuc3RhYmxlLGJvLGhhbW0sc2xpbmt9CisJaWYgWyAtbiAiJHBfaGllcmJhc2UiIF0KKwl0aGVuCisJCWlmIFsgLWQgIiRtb3VudHBvaW50LyRwX2hpZXJiYXNlL21haW4vYmluYXJ5LSRpYXJjaCIgXQorCQl0aGVuCisJCQllY2hvICIKK0xhc3QgdGltZSB5b3Ugc2FpZCBcYCRwX2hpZXJiYXNlJywgYW5kIHRoYXQgbG9va3MgcGxhdXNpYmxlLiIKKwkJCWRlZmhpZXJiYXNlPSIkcF9oaWVyYmFzZSIKKwkJZWxzZQorCQkJZWNobyAiCitMYXN0IHRpbWUgeW91IHNhaWQgXGAkcF9oaWVyYmFzZScsIGJ1dCB0aGF0IGRvZXNuJ3QgbG9vayBwbGF1c2libGUsCitzaW5jZSBcYCRwX2hpZXJiYXNlL21haW4vYmluYXJ5LSRpYXJjaCcgZG9lc24ndCBzZWVtIHRvIGV4aXN0LiIKKwkJZmkKKwlmaQorCWlmIFsgbm9uZSA9ICIkZGVmaGllcmJhc2UiIF0KKwl0aGVuCisJCWlmIFsgLWQgIiRtb3VudHBvaW50L2RlYmlhbi9kaXN0cy9zdGFibGUvbWFpbi9iaW5hcnktJGlhcmNoIiBdCisJCXRoZW4KKwkJCWVjaG8gIgorXGAvZGViaWFuL2Rpc3RzL3N0YWJsZScgZXhpc3RzIGFuZCBsb29rcyBwbGF1c2libGUsIHNvIHRoYXQncyB0aGUgZGVmYXVsdC4iCisJCQlkZWZoaWVyYmFzZT0vZGViaWFuL2Rpc3RzL3N0YWJsZQorCQllbGlmIFsgLWQgIiRtb3VudHBvaW50L2Rpc3RzL3N0YWJsZS9tYWluL2JpbmFyeS0kaWFyY2giIF0KKwkJdGhlbgorCQkJZWNobyAiCitcYC9kaXN0cy9zdGFibGUnIGV4aXN0cyBhbmQgbG9va3MgcGxhdXNpYmxlLCBzbyB0aGF0J3MgdGhlIGRlZmF1bHQuIgorCQkJZGVmaGllcmJhc2U9L2Rpc3RzL3N0YWJsZQorCQlmaQorCWZpCisJZWNobyAtbiBcCisiRGlzdHJpYnV0aW9uIHRvcCBsZXZlbCA/IFskZGVmaGllcmJhc2VdICAiCisJcmVhZCByZXNwb25zZQorCWlmIFsgLXogIiRyZXNwb25zZSIgXQorCXRoZW4KKwkJcmVzcG9uc2U9IiRkZWZoaWVyYmFzZSIKKwlmaQorCWlmIFsgbm9uZSA9ICIkcmVzcG9uc2UiIF0KKwl0aGVuCisJCWhpZXJiYXNlPSIiCisJCWJyZWFrCisJZWxpZiBbIC1kICIkbW91bnRwb2ludC8kcmVzcG9uc2UvbWFpbi9iaW5hcnktJGlhcmNoIiBdCisJdGhlbgorCQloaWVyYmFzZT0iYGVjaG8gXCIkcmVzcG9uc2VcIiB8IHNlZCAtZSAnczovKiQ6OjsgczpeLyo6LzonYCIKKwkJYnJlYWsKKwlmaQorCWVjaG8gXAorIiRyZXNwb25zZS9tYWluL2JpbmFyeS0kaWFyY2ggZG9lcyBub3QgZXhpc3QuCisiCitkb25lCisKKworY2FzZSAiJGhpZXJiYXNlIiBpbgorLyogKQk7OworJycgKQk7OworKiApCWhpZXJiYXNlPSIvJGhpZXJiYXNlIiA7OworZXNhYworCitjaGVja19iaW5hcnkgKCkgeworCSMgYXJnczogYXJlYS1pbi1tZXNzYWdlcyBkaXJlY3RvcnkKKwkjIGVnOiAgIG1haW4gICAgICAgICAgICAgIiRoaWVyYmFzZS9tYWluL2JpbmFyeS0kaWFyY2giCisJIyBjaGVja3Mgd2V0aGVyICQyIGNvbnRhaW5zICouZGViCisJaWYgISBbIC1kICIkbW91bnRwb2ludCQyLyIgXQorCXRoZW4KKwkJZWNobyAiXGAkMicgZG9lcyBub3QgZXhpc3QuIgorCQlyZXR1cm4KKwlmaQorCisJaWYgISAoIGZpbmQgLUwgIiRtb3VudHBvaW50JDIvIiAtbmFtZSAnKi5kZWInIC1wcmludCBcCisJICAgICAgICB8IGhlYWQgLW4gMSApIDI+L2Rldi9udWxsICB8IGdyZXAgLiA+L2Rldi9udWxsCisJdGhlbgorCQllY2hvICJcYCQyJyBkb2VzIG5vdCBjb250YWluIGFueSAqLmRlYiBwYWNrYWdlcy4gIEhtbXBmLiIKKwkJcmV0dXJuCisJZmkKKwllY2hvICJVc2luZyBcYCQyJyBhcyAkMSBiaW5hcnkgZGlyLiIKKwl0aGlzX2JpbmFyeT0iJDIiCit9CisKK2ZpbmRfYXJlYSAoKSB7CisJIyBhcmdzOiBhcmVhLWluLW1lc3NhZ2VzIGFyZWEtaW4tdmFycyBzdWJkaXJlY3RvcnktaW4taGllcgorCSMgICAgICAgbGFzdC10aW1lLWJpbmFyeSBsYXN0LXRpbWUtcGFja2FnZXMKKwkjIGVnOiAgIG1haW4gICAgICAgICAgICAgbWFpbiAgICAgICAgIG1haW4KKwkjICAgICAgICIkcF9tYWluX2JpbmFyeSIgIiRwX21haW5fcGFja2FnZXMiCisKKwl0aGlzX2JpbmFyeT0nJworCXRoaXNfcGFja2FnZXM9JycKKwlpZiBbIC1uICIkaGllcmJhc2UiIF0KKwl0aGVuCisJCWNoZWNrX2JpbmFyeSAkMSAiJGhpZXJiYXNlLyQzL2JpbmFyeS0kaWFyY2giCisJZmkKKworCWlmIFsgJG9wdGlvbiA9IGNkcm9tIF0gJiYgWyAkMiA9IG5mIF0gJiYgWyAteiAiJHRoaXNfYmluYXJ5IiBdCisJdGhlbgorCQllY2hvICcKK05vdGU6IG1vc3QgQ0QtUk9NIGRpc3RyaWJ1dGlvbnMgb2YgRGViaWFuIGRvIG5vdCBpbmNsdWRlIHByb2dyYW1zCithdmFpbGFibGUgaW4gdGhlIGBub24tZnJlZSdcJycgZGlyZWN0b3J5IG9mIHRoZSBkaXN0cmlidXRpb24gc2l0ZS4KK1RoaXMgaXMgYmVjYXVzZSB0aGVzZSBwcm9ncmFtcyBoYXZlIGNvcHlyaWdodHMgdGhhdCBwcmV2ZW50CitkaXN0cmlidXRpb24gZm9yIHByb2ZpdCBvbiBhIENELVJPTSAtIGllIHRoZXkgYXJlIG5vdCBmcmVlIHNvZnR3YXJlLgorSWYgeW91IHdpc2ggdG8gaW5zdGFsbCB0aGVzZSBwcm9ncmFtcyB5b3UnXCcnbGwgaGF2ZSB0byBnZXQgdGhlbSBmcm9tIGFuCithbHRlcm5hdGl2ZSBzb3VyY2UuJworCWVsaWYgWyAkMiA9IGxjbCBdICYmIFsgLXogIiR0aGlzX2JpbmFyeSIgXQorCXRoZW4KKwkJZWNobyAnCitOb3RlOiBCeSBkZWZhdWx0IHRoZXJlIGlzIG5vIGBsb2NhbCdcJycgZGlyZWN0b3J5LiBJdCBpcyBpbnRlbmRlZCBmb3IgCitwYWNrYWdlcyB5b3UgbWFkZSB5b3Vyc2VsZi4nCisJZmkKKwl3aGlsZSBbIC16ICIkdGhpc19iaW5hcnkiIF0KKwlkbworCQlkZWZhdWx0YmluYXJ5PSIkNCIKKwkJZWNobyAiCitXaGljaCBkaXJlY3RvcnkgY29udGFpbnMgdGhlICouZGViIHBhY2thZ2VzIGZyb20gdGhlICQxIGRpc3RyaWJ1dGlvbgorYXJlYSAodGhpcyBkaXJlY3RvcnkgaXMgbmFtZWQgXGAkMy9iaW5hcnktJGlhcmNoJyBvbiB0aGUgZGlzdHJpYnV0aW9uIHNpdGUpID8KK1NheSBcYG5vbmUnIGlmIHRoaXMgYXJlYSBpcyBub3QgYXZhaWxhYmxlLiIKKwkJaWYgWyAkMiAhPSBtYWluIF0gJiYgWyAteiAiJGRlZmF1bHRiaW5hcnkiIF0KKwkJdGhlbgorCQkJZGVmYXVsdGJpbmFyeT1ub25lCisJCWZpCisJCWVjaG8gLW4gXAorIkVudGVyIF8kMV8gYmluYXJ5IGRpci4gWyQ0XQorID8gICIKKwkJcmVhZCByZXNwb25zZQorCQlpZiBbIC16ICIkcmVzcG9uc2UiIF0gJiYgWyAtbiAiJGRlZmF1bHRiaW5hcnkiIF0KKwkJdGhlbgorCQkJcmVzcG9uc2U9IiRkZWZhdWx0YmluYXJ5IgorCQlmaQorCQlpZiBbIG5vbmUgPSAiJHJlc3BvbnNlIiBdCisJCXRoZW4KKwkJCWJyZWFrCisJCWZpCisJCWNhc2UgIiRyZXNwb25zZSIgaW4KKwkJJycgfCBub25lKQljb250aW51ZQkJOzsKKwkJZXNhYworCQljaGVja19iaW5hcnkgJDEgImBlY2hvIFwiJHJlc3BvbnNlXCIgfCBzZWQgLWUgJ3M6LyQ6OjsgczpeLyo6LzonYCIKKwlkb25lCisJaWYgWyAtbiAiJHRoaXNfYmluYXJ5IiBdCisJdGhlbgorCQlmb3IgZiBpbiBQYWNrYWdlcy5neiBwYWNrYWdlcy5neiBQYWNrYWdlcyBwYWNrYWdlcworCQlkbworCQkJaWYgWyAtZiAiJG1vdW50cG9pbnQvJHRoaXNfYmluYXJ5LyRmIiBdCisJCQl0aGVuCisJCQkJZWNobyAiVXNpbmcgXGAkdGhpc19iaW5hcnkvJGYnIGZvciAkMS4iCisJCQkJdGhpc19wYWNrYWdlcz0iJHRoaXNfYmluYXJ5LyRmIgorCQkJCWJyZWFrCisJCQlmaQorCQlkb25lCisJCXdoaWxlIFsgLXogIiR0aGlzX3BhY2thZ2VzIiBdCisJCWRvCisJCQllY2hvIC1uICIKK0kgY2FuJ3QgZmluZCB0aGUgJDEgXGBQYWNrYWdlcycgZmlsZS4gIFRoZSBpbmZvcm1hdGlvbiBpbiB0aGUKK1xgUGFja2FnZXMnIGZpbGUgaXMgaW1wb3J0YW50IGZvciBwYWNrYWdlIHNlbGVjdGlvbiBkdXJpbmcgbmV3CitpbnN0YWxsYXRpb25zLCBhbmQgaXMgdmVyeSB1c2VmdWwgZm9yIHVwZ3JhZGVzLgorCitJZiB5b3Ugb3Zlcmxvb2tlZCBpdCB3aGVuIGRvd25sb2FkaW5nIHlvdSBzaG91bGQgZG8gZ2V0IGl0IG5vdyBhbmQKK3JldHVybiB0byB0aGlzIGluc3RhbGxhdGlvbiBwcm9jZWR1cmUgd2hlbiB5b3UgaGF2ZSBkb25lIHNvOiB5b3Ugd2lsbAorZmluZCBvbmUgUGFja2FnZXMgZmlsZSBhbmQgb25lIFBhY2thZ2VzLmd6IGZpbGUgLS0gZWl0aGVyIHdpbGwgZG8gLS0KK2luIHRoZSBcYGJpbmFyeS0kaWFyY2gnIHN1YmRpcmVjdG9yeSBvZiBlYWNoIGFyZWEgb24gdGhlIEZUUCBzaXRlcyBhbmQKK0NELVJPTXMuICBBbHRlcm5hdGl2ZWx5IChhbmQgdGhpcyB3aWxsIGJlIHJhdGhlciBzbG93KSBJIGNhbiBzY2FuIHRoZQorcGFja2FnZXMgaW4gdGhlIGRpc3RyaWJ1dGlvbiBhcmVhIC0gc2F5IFxgc2NhbicgaWYgeW91IHdhbnQgbWUgdG8gZG8gc28uCisKK1lvdSBuZWVkIGEgc2VwYXJhdGUgUGFja2FnZXMgZmlsZSBmcm9tIGVhY2ggb2YgdGhlIGRpc3RyaWJ1dGlvbiBhcmVhcworeW91IHdpc2ggdG8gaW5zdGFsbC4KKworV2hlcmUgaXMgdGhlIF8kMV8gXGBQYWNrYWdlcycgZmlsZSAoaWYgbm9uZSBpcyBhdmFpbGFibGUsIHNheSBcYG5vbmUnKQorWyQ1XQorID8gICIKKwkJCXJlYWQgcmVzcG9uc2UKKwkJCWlmIFsgLXogIiRyZXNwb25zZSIgXSAmJiBbIC1uICIkNSIgXQorCQkJdGhlbgorCQkJCXJlc3BvbnNlPSIkNSIKKwkJCWZpCisJCQljYXNlICIkcmVzcG9uc2UiIGluCisJCQknJykJCWNvbnRpbnVlCQkJOzsKKwkJCW5vbmUpCQlicmVhawkJCQk7OworCQkJc2NhbikJCXRoaXNfcGFja2FnZXM9c2NhbgkJOzsKKwkJCS8qKQkJdGhpc19wYWNrYWdlcz0iJHJlc3BvbnNlIgk7OworCQkJKikJCXRoaXNfcGFja2FnZXM9Ii8kcmVzcG9uc2UiCTs7CisJCQllc2FjCisJCWRvbmUKKwlmaQorCWV2YWwgJDInX2JpbmFyeT0iJHRoaXNfYmluYXJ5IicKKwlldmFsICQyJ19wYWNrYWdlcz0iJHRoaXNfcGFja2FnZXMiJworfQorCitmaW5kX2FyZWEgbWFpbiBtYWluIG1haW4gIiRwX21haW5fYmluYXJ5IiAiJHBfbWFpbl9wYWNrYWdlcyIKK2ZpbmRfYXJlYSBjb250cmliIGN0YiBjb250cmliICIkcF9jdGJfYmluYXJ5IiAiJHBfY3RiX3BhY2thZ2VzIgorZmluZF9hcmVhIG5vbi1mcmVlIG5mIG5vbi1mcmVlICIkcF9uZl9iaW5hcnkiICIkcF9uZl9wYWNrYWdlcyIKK2ZpbmRfYXJlYSBub24tVVMgbnVzIG5vbi1VUyAiJHBfbnVzX2JpbmFyeSIgIiRwX251c19wYWNrYWdlcyIKK2ZpbmRfYXJlYSBsb2NhbCBsY2wgbG9jYWwgIiRwX2xjbF9iaW5hcnkiICIkcF9sY2xfcGFja2FnZXMiCisKK2VjaG8gLW4gJworSGl0IFJFVFVSTiB0byBjb250aW51ZS4gICcKK3JlYWQgcmVzcG9uc2UKKworZXhlYyAzPnNodmFyLiRvcHRpb24ubmV3CisKK291dHB1dHBhcmFtIHBfYmxvY2tkZXYgIiRibG9ja2RldmljZSIKK291dHB1dHBhcmFtIHBfZnN0eXBlICIkZnN0eXBlIgorb3V0cHV0cGFyYW0gcF9tb3VudHBvaW50ICIkbW91bnRwb2ludCIKK291dHB1dHBhcmFtIHBfbmZzc2VydmVyICIkbmZzc2VydmVyIgorb3V0cHV0cGFyYW0gcF9uZnNyZW1wYXRoICIkbmZzcmVtcGF0aCIKK291dHB1dHBhcmFtIHBfbmZzICIkbmZzIgorb3V0cHV0cGFyYW0gcF9oaWVyYmFzZSAiJGhpZXJiYXNlIgorCitvdXRwdXRwYXJhbSBwX21haW5fcGFja2FnZXMgIiRtYWluX3BhY2thZ2VzIgorb3V0cHV0cGFyYW0gcF9tYWluX2JpbmFyeSAiJG1haW5fYmluYXJ5Igorb3V0cHV0cGFyYW0gcF9jdGJfcGFja2FnZXMgIiRjdGJfcGFja2FnZXMiCitvdXRwdXRwYXJhbSBwX2N0Yl9iaW5hcnkgIiRjdGJfYmluYXJ5Igorb3V0cHV0cGFyYW0gcF9uZl9wYWNrYWdlcyAiJG5mX3BhY2thZ2VzIgorb3V0cHV0cGFyYW0gcF9uZl9iaW5hcnkgIiRuZl9iaW5hcnkiCitvdXRwdXRwYXJhbSBwX251c19wYWNrYWdlcyAiJG51c19wYWNrYWdlcyIKK291dHB1dHBhcmFtIHBfbnVzX2JpbmFyeSAiJG51c19iaW5hcnkiCitvdXRwdXRwYXJhbSBwX2xjbF9wYWNrYWdlcyAiJGxjbF9wYWNrYWdlcyIKK291dHB1dHBhcmFtIHBfbGNsX2JpbmFyeSAiJGxjbF9iaW5hcnkiCisKK212IHNodmFyLiRvcHRpb24ubmV3IHNodmFyLiRvcHRpb24KKworeGl0PTAKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9tZXRob2RzL2Rpc2svdXBkYXRlIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L21ldGhvZHMvZGlzay91cGRhdGUKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMC4uMGM5ZDRhNgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9tZXRob2RzL2Rpc2svdXBkYXRlCkBAIC0wLDAgKzEsODkgQEAKKyMhL2Jpbi9zaAorCitzZXQgLWUKK3ZhcmRpcj0iJDEiCittZXRob2Q9JDIKK29wdGlvbj0kMworCitjZCAiJHZhcmRpci9tZXRob2RzL2Rpc2siCisKKy4gLi9zaHZhci4kb3B0aW9uCisKK2lmIFsgLXogIiRwX21haW5fcGFja2FnZXMiIF0gJiYgWyAteiAiJHBfY3RiX3BhY2thZ2VzIiBdICYmIFwKKyAgIFsgLXogIiRwX25mX3BhY2thZ2VzIiBdICYmIFsgLXogIiRwX251c19wYWNrYWdlcyAiIF0gJiYgXAorICAgWyAteiAiJHBfbGNsX3BhY2thZ2VzIiBdCit0aGVuCisJZWNobyAnCitObyBQYWNrYWdlcyBmaWxlcyBhdmFpbGFibGUsIGNhbm5vdCB1cGRhdGUgYXZhaWxhYmxlIHBhY2thZ2VzIGxpc3QuCitIaXQgUkVUVVJOIHRvIGNvbnRpbnVlLiAgJworCXJlYWQgcmVzcG9uc2UKKwlleGl0IDAKK2ZpCisKK3hpdD0xCit0cmFwICcKKwlybSAtZiBwYWNrYWdlcy1tYWluIHBhY2thZ2VzLWN0YiBwYWNrYWdlcy1uZiBwYWNrYWdlcy1udXMgcGFja2FnZXMtbGNsCisJaWYgWyAtbiAiJHVtb3VudCIgXQorCXRoZW4KKwkJdW1vdW50ICIkdW1vdW50IiA+L2Rldi9udWxsIDI+JjEKKwlmaQorCWV4aXQgJHhpdAorJyAwCisKK2lmIFsgLW4gIiRwX2Jsb2NrZGV2IiBdCit0aGVuCisJdW1vdW50PSIkcF9tb3VudHBvaW50IgorCW1vdW50IC1ydCAiJHBfZnN0eXBlIiAtbyBub3N1aWQsbm9kZXYgIiRwX2Jsb2NrZGV2IiAiJHBfbW91bnRwb2ludCIKK2ZpCisKK2lmIFsgLW4gIiRwX25mcyIgXQordGhlbgorCXVtb3VudD0iJHBfbW91bnRwb2ludCIKKwltb3VudCAtcnQgbmZzICIkcF9uZnMiIC1vIG5vc3VpZCxub2RldiAiJHBfbW91bnRwb2ludCIKK2ZpCisKK3VwZGF0ZXR5cGU9dXBkYXRlCisKK2ZvciBmIGluIG1haW4gY3RiIG5mIG51cyBsY2wKK2RvCisJZXZhbCAndGhpc19wYWNrYWdlcz0kcF8nJGYnX3BhY2thZ2VzJworCWNhc2UgIiR0aGlzX3BhY2thZ2VzIiBpbgorCScnKQorCQljb250aW51ZQorCQk7OworCXNjYW4pCisJCWV2YWwgJ3RoaXNfYmluYXJ5PSRwXyckZidfYmluYXJ5JworCQlpZiBbIC16ICIkdGhpc19iaW5hcnkiIF07IHRoZW4gY29udGludWU7IGZpCisJCWlmIFsgIiR1cGRhdGV0eXBlIiA9IHVwZGF0ZSBdCisJCXRoZW4KKwkJCWRwa2cgLS1hZG1pbmRpciAkdmFyZGlyIC0tY2xlYXItYXZhaWwKKwkJCXVwZGF0ZXR5cGU9bWVyZ2UKKwkJZmkKKwkJZWNobyBSdW5uaW5nIGRwa2cgLS1yZWNvcmQtYXZhaWwgLVIgIiRwX21vdW50cG9pbnQkdGhpc19iaW5hcnkiCisJCWRwa2cgLS1hZG1pbmRpciAkdmFyZGlyIC0tcmVjb3JkLWF2YWlsIC1SICIkcF9tb3VudHBvaW50JHRoaXNfYmluYXJ5IgorCQk7OworCSopCisJCXBhY2thZ2VzZmlsZT0iJHBfbW91bnRwb2ludCR0aGlzX3BhY2thZ2VzIgorCQljYXNlICIkcGFja2FnZXNmaWxlIiBpbgorCQkqLmd6IHwgKi5aIHwgKi5HWiB8ICoueikKKwkJCWVjaG8gLW4gIlVuY29tcHJlc3NpbmcgJHBhY2thZ2VzZmlsZSAuLi4gIgorCQkJemNhdCA8IiRwYWNrYWdlc2ZpbGUiID5wYWNrYWdlcy0kZgorCQkJZWNobyBkb25lLgorCQkJZHBrZyAtLWFkbWluZGlyICR2YXJkaXIgLS0kdXBkYXRldHlwZS1hdmFpbCBwYWNrYWdlcy0kZgorCQkJdXBkYXRldHlwZT1tZXJnZQorCQkJOzsKKwkJJycpCisJCQk7OworCQkqKQorCQkJZHBrZyAtLWFkbWluZGlyICR2YXJkaXIgLS0kdXBkYXRldHlwZS1hdmFpbCAiJHBhY2thZ2VzZmlsZSIKKwkJCXVwZGF0ZXR5cGU9bWVyZ2UKKwkJCTs7CisJCWVzYWMKKwkJOzsKKwllc2FjCQorZG9uZQorCitlY2hvIC1uICdVcGRhdGUgT0suICBIaXQgUkVUVVJOLiAgJworcmVhZCByZXNwb25zZQorCit4aXQ9MApkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L21ldGhvZHMvZmxvcHB5L2Rlc2MuZmxvcHB5IGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L21ldGhvZHMvZmxvcHB5L2Rlc2MuZmxvcHB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjBiZDYzMjkKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvbWV0aG9kcy9mbG9wcHkvZGVzYy5mbG9wcHkKQEAgLTAsMCArMSw5IEBACitJbnN0YWxsYXRpb24gdXNpbmcgYSBwaWxlIG9mIGZsb3BwaWVzLCBhdCBsZWFzdCBvbmUgb2Ygd2hpY2ggKHVzdWFsbHkKK3RoZSBmaXJzdCkgY29udGFpbnMgdGhlIFBhY2thZ2VzIGZpbGUsIGFuZCB0aGUgcmVzdCBvZiB3aGljaCBjb250YWluCit0aGUgYmluYXJ5ICouZGViIGZpbGVzLgorCitJZiB5b3UgYXJlIGluc3RhbGxpbmcgc29mdHdhcmUgZnJvbSB0aGUgYG5vbi1mcmVlJyBvciBgY29udHJpYicKK2RpcmVjdG9yaWVzIGFzIHdlbGwgYXMgdGhlIG1haW4gRGViaWFuIGRpc3RyaWJ1dGlvbiB5b3UgbXVzdCBoYXZlIHRoZQorUGFja2FnZXMgZmlsZXMgZm9yIHRob3NlIGFyZWFzIG9uIHNlcGFyYXRlIGZsb3BwaWVzLiAgVGhlIHVzdWFsIHdheSB0bworZG8gdGhpcyBpcyB0byBwdXQgZWFjaCBQYWNrYWdlcyBmaWxlIG9uIHRoZSBmaXJzdCBmbG9wcHkgd2hpY2ggY29udGFpbnMKK3BhY2thZ2VzIGZyb20gdGhlIHJlbGV2YW50IGFyZWEuCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvbWV0aG9kcy9mbG9wcHkvaW5zdGFsbCBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9tZXRob2RzL2Zsb3BweS9pbnN0YWxsCm5ldyBmaWxlIG1vZGUgMTAwNzU1CmluZGV4IDAwMDAwMDAuLjUxMjI0YzMKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvbWV0aG9kcy9mbG9wcHkvaW5zdGFsbApAQCAtMCwwICsxLDEwMCBAQAorIyEvYmluL3NoCisKK3NldCAtZQordmFyZGlyPSIkMSIKK21ldGhvZD0kMgorb3B0aW9uPSQzCisKK2NkICIkdmFyZGlyL21ldGhvZHMvZmxvcHB5IgorCittb3VudHBvaW50PSIkdmFyZGlyL21ldGhvZHMvbW50IgorCisuIC4vc2h2YXIuJG9wdGlvbgorCitoZWxwICgpIHsKKwllY2hvICcKK05vdyBJIG5lZWQgdGhlIGRpc2tzIGNvbnRhaW5pbmcgdGhlIHBhY2thZ2VzIHRvIGJlIGluc3RhbGxlZC4KK0kgc2hhbGwga2VlcCB0ZWxsaW5nIHlvdSB3aGF0IGlzIGxlZnQgdG8gYmUgZG9uZSwgaW4gY2FzZSB0aGF0CitpcyBoZWxwZnVsIGRlY2lkaW5nIHdoaWNoIGZsb3BweSB0byB1c2UuJworfQorCitoZWxwCisKK3hpdD0xCit0cmFwICcKKwlpZiBbIC1uICIkdW1vdW50IiBdCisJdGhlbgorCQl1bW91bnQgIiR1bW91bnQiCisJZmkKKwlleGl0ICR4aXQKKycgMAorCit3aGlsZSBbIC16ICIkZ29jb25maWd1cmUiIF0KK2RvCisJeWV0PSJgZHBrZyAtLWFkbWluZGlyICR2YXJkaXIgLS15ZXQtdG8tdW5wYWNrYCIKKwlpZiBbIC16ICIkeWV0IiBdCisJdGhlbgorCQllY2hvICcKK0FsbCBwYWNrYWdlcyB1bnBhY2tlZCwgZ29pbmcgb24gdG8gY29uZmlndXJlIHRoZW0uCisnCisJCWdvY29uZmlndXJlPTEKKwkJY29udGludWUKKwlmaQorCWVjaG8gJworUGFja2FnZXMgeWV0IHRvIGJlIHVucGFja2VkOicKKwllY2hvICIkeWV0IgorCWRwa2ctc3BsaXQgLWwKKwkJCisJZWNobyAtbiAnCitJbnNlcnQgYSBkaXNrIGNvbnRhaW5pbmcgKi5kZWIgZmlsZXMsIG9yIHR5cGUgcSB0byBxdWl0LiAgJworCXJlYWQgcmVzcG9uc2UKKwljYXNlICIkcmVzcG9uc2UiIGluCisJW1FxXSB8IFtRcV1bVXVdW0lpXVtUdF0gKQorCQlnb2NvbmZpZ3VyZT0xCisJCTs7CisJKiApCisJCXVtb3VudD0iJGRlZmF1bHRmbG9wcHkiCisJCWlmIG1vdW50IC1ydCAiJGRlZmF1bHRmc3R5cGUiICIkZGVmYXVsdGZsb3BweSIgIiRtb3VudHBvaW50IgorCQl0aGVuCisJCQllY2hvCisJCQlkcGtnIC0tYWRtaW5kaXIgJHZhcmRpciAtLXVucGFjayAtR1JPRUIgIiRtb3VudHBvaW50IiB8fCB0cnVlCisJCQl1bW91bnQgIiRkZWZhdWx0ZmxvcHB5IgorCQlmaQorCQl1bW91bnQ9IiIKKwkJOzsKKwllc2FjCitkb25lCisKK2lmICEgWyAteiAiJHlldCIgXQordGhlbgorCXJlc3BvbnNlPSIiCisJd2hpbGUgWyAteiAiJHJlc3BvbnNlIiBdCisJZG8KKwkJZWNobyAtbiAnCitOb3QgYWxsIHRoZSBwYWNrYWdlcyBoYXZlIHlldCBiZWVuIHVucGFja2VkLiAgU2hhbGwgSSB0cnkgdG8KK3Byb2NlZWQgd2l0aCBjb25maWd1cmF0aW9uIGFueWF5ID8gIElmIGFueSBvZiB0aGUgcGFja2FnZXMgd2hpY2gKK2hhdmUgYmVlbiB1bnBhY2tlZCBzbyBmYXIgZGVwZW5kIG9uIGFueSB0aGF0IGhhdmVuJ1wnJ3QgdGhlbiB5b3UnXCcnbGwKK3NlZSBlcnJvciBtZXNzYWdlczsgb24gdGhlIG90aGVyIGhhbmQgaWYgeW91IHNheSBubyB0aG9zZSBwYWNrYWdlcyB0aGF0Citjb3VsZCBoYXZlIGJlZW4gY29uZmlndXJlZCB3aWxsIG5vdCBiZS4gICAoeS9uKSAgJworCQlyZWFkIHJlc3BvbnNlCisJCWNhc2UgIiRyZXNwb25zZSIgaW4KKwkJW05uXSogKQorCQkJZWNobyAnCitPSy4gIEJlIHN1cmUgdG8gY29tZSBiYWNrIHRvIHRoaXMsIGJlY2F1c2UgdW5wYWNrZWQtYnV0LW5vdC1jb25maWd1cmVkCitwYWNrYWdlcyBhcmUgbm90IGluIGdlbmVyYWwgdXNlYWJsZS4gIEFsdGVybmF0aXZlbHksIHVzZSB0aGUgQ29uZmlndXJlCitvcHRpb24gb24gdGhlIGRzZWxlY3QgbWVudS4KKycKKwkJCWV4aXQgMQorCQkJOzsKKwkJW1l5XSogKQorCQkJOzsKKwkJKiApCisJCQlyZXNwb25zZT0iIgorCQkJOzsKKwkJZXNhYworCWRvbmUKK2ZpCisKK2Rwa2cgLS1hZG1pbmRpciAkdmFyZGlyIC0tY29uZmlndXJlIC0tcGVuZGluZworCit4aXQ9MApkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L21ldGhvZHMvZmxvcHB5L25hbWVzIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L21ldGhvZHMvZmxvcHB5L25hbWVzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjcyYjE4OWEKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvbWV0aG9kcy9mbG9wcHkvbmFtZXMKQEAgLTAsMCArMSBAQAorNTAgZmxvcHB5IEluc3RhbGwgZnJvbSBhIHBpbGUgb2YgZmxvcHB5IGRpc2tzLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L21ldGhvZHMvZmxvcHB5L3NldHVwIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L21ldGhvZHMvZmxvcHB5L3NldHVwCm5ldyBmaWxlIG1vZGUgMTAwNzU1CmluZGV4IDAwMDAwMDAuLjhjMTZjZDIKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvbWV0aG9kcy9mbG9wcHkvc2V0dXAKQEAgLTAsMCArMSw3NiBAQAorIyEvYmluL3NoCisKK3NldCAtZQordmFyZGlyPSIkMSIKK21ldGhvZD0kMgorb3B0aW9uPSQzCisKK2NkICIkdmFyZGlyL21ldGhvZHMvZmxvcHB5IgorCitkZWZhdWx0ZmxvcHB5PWZkMAorZGVmYXVsdGZzdHlwZT1tc2RvcworaWYgWyAtZiBzaHZhci4kb3B0aW9uIF0KK3RoZW4KKwkuIC4vc2h2YXIuJG9wdGlvbgorCWRlZmF1bHRmbG9wcHk9ImBlY2hvIFwiJGRlZmF1bHRmbG9wcHlcIiB8IHNlZCAtZSAncyxeL2Rldi8sLCdgIgorZmkKKword2hpbGUgWyAteiAiJGZsb3BweSIgXQorZG8KKwllY2hvIC1uICcKK1doaWNoIGZsb3BweSBkaXNrIGRyaXZlIGRvIHlvdSB3aXNoIHRvIHVzZSA/ICBHaXZlIHRoZSBuYW1lIGluCisvZGV2IChlZyBmZDApIG9yIHRoZSBNU0RPUyBkcml2ZSBsZXR0ZXIgKGVnIEEpLiAgWyckZGVmYXVsdGZsb3BweSddICAnCisJcmVhZCBmbG9wcHkKKwlpZiBbIC16ICIkZmxvcHB5IiBdCisJdGhlbgorCQlmbG9wcHk9IiRkZWZhdWx0ZmxvcHB5IgorCWZpCisJY2FzZSAiJGZsb3BweSIgaW4KKwlbQUJhYl0gfCBbQUJhYl06ICkKKwkJZmxvcHB5PSJgZWNobyAkZmxvcHB5IHwgXAorCQkJc2VkIC1lICdzLzokLy87IHMsXltBYV0sL2Rldi9mZDAsOyBzLF5bQmJdLC9kZXYvZmQxLCdgIgorCQk7OworCS8qICkKKwkJOzsKKwkqICkKKwkJZmxvcHB5PSIvZGV2LyRmbG9wcHkiCisJCTs7CisJZXNhYworCWlmICEgWyAtYiAiJGZsb3BweSIgXQorCXRoZW4KKwkJZWNobyAiJGZsb3BweSBpcyBub3QgYSBibG9jayBkZXZpY2UuIgorCQlmbG9wcHk9IiIKKwlmaQorZG9uZQorCit3aGlsZSBbIC16ICIkZnN0eXBlIiBdCitkbworCWVjaG8gLW4gJworV2hhdCBraW5kIG9mIGZpbGVzeXN0ZW0gaXMgb24gdGhlIGZsb3BwaWVzID8gIFsnJGRlZmF1bHRmc3R5cGUnXSAgJworCXJlYWQgZnN0eXBlCisJaWYgWyAteiAiJGZzdHlwZSIgXQorCXRoZW4KKwkJZnN0eXBlPSIkZGVmYXVsdGZzdHlwZSIKKwlmaQorCWlmICEgZ3JlcCAiCSRmc3R5cGUkIiAvcHJvYy9maWxlc3lzdGVtcyA+L2Rldi9udWxsCisJdGhlbgorCQllY2hvIFwKKwkiWW91ciBrZXJuZWwgZG9lcyBub3QgYXBwZWFyIHRvIHN1cHBvcnQgdGhhdCBmaWxlc3lzdGVtIHR5cGUuIgorCQlmc3R5cGU9IiIKKwlmaQorZG9uZQorCitlY2hvCisKK291dHB1dHBhcmFtICgpIHsKKwllY2hvICIkMiIgfCBzZWQgLWUgInMvJy8nXFxcXCcnLzsgcy9eLyQxPScvOyBzLyQvJy8iID4mMworfQorCitleGVjIDM+c2h2YXIuJG9wdGlvbi5uZXcKKworb3V0cHV0cGFyYW0gZGVmYXVsdGZsb3BweSAiJGZsb3BweSIKK291dHB1dHBhcmFtIGRlZmF1bHRmc3R5cGUgIiRmc3R5cGUiCisKK212IHNodmFyLiRvcHRpb24ubmV3IHNodmFyLiRvcHRpb24KKworZXhpdCAwCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvbWV0aG9kcy9mbG9wcHkvdXBkYXRlIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L21ldGhvZHMvZmxvcHB5L3VwZGF0ZQpuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwLi4zZDc5NzMxCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L21ldGhvZHMvZmxvcHB5L3VwZGF0ZQpAQCAtMCwwICsxLDc2IEBACisjIS9iaW4vc2gKKworc2V0IC1lCit2YXJkaXI9IiQxIgorbWV0aG9kPSQyCitvcHRpb249JDMKKworY2QgIiR2YXJkaXIvbWV0aG9kcy9mbG9wcHkiCisKK21vdW50cG9pbnQ9IiR2YXJkaXIvbWV0aG9kcy9tbnQiCisKKy4gLi9zaHZhci4kb3B0aW9uCisKK2hlbHAgKCkgeworCWVjaG8gJworRmlyc3QgSSBuZWVkIHRoZSBkaXNrKHMpIHdoaWNoIGNvbnRhaW4gdGhlIFBhY2thZ2VzIGZpbGUocykgZm9yCit0aGUgcGFydHMgb2YgdGhlIGFyY2hpdmUgeW91IHdpc2ggdG8gYmUgYWJsZSB0byBpbnN0YWxsLiAgSWYgeW91Cit3YW50IHRvIGluc3RhbGwgcGFja2FnZXMgZnJvbSB0aGUgbm9uLWZyZWUgYW5kIGNvbnRyaWIgYXJlYXMgb2YKK3RoZSBGVFAgc2l0ZSB5b3UgbmVlZCBhIGZsb3BweSB3aXRoIGEgUGFja2FnZXMgZmlsZSBmb3IgZWFjaCBvZgordGhvc2UsIGluIGFkZGl0aW9uIHRvIHRoZSBtYWluIFBhY2thZ2VzIGZpbGUgZm9yIHRoZSBtYWluIERlYmlhbgorZGlzdHJpYnV0aW9uLiAgSWYgeW91IGRvbidcJyd0IHRoZW4geW91IGp1c3QgbmVlZCBvbmUgUGFja2FnZXMgZmlsZS4nCit9CisKK2hlbHAKKworeGl0PTEKK3RyYXAgJworCWlmIFsgLW4gIiR1bW91bnQiIF0KKwl0aGVuCisJCXVtb3VudCAiJHVtb3VudCIKKwlmaQorCWV4aXQgJHhpdAorJyAwCisKK3RyeXVwZGF0ZSAoKSB7CisJaWYgWyAkc3VjY2VzcyA9IDEgXTsgdGhlbiByZXR1cm47IGZpCisJaWYgWyAhIC1mICIkbW91bnRwb2ludC9QYWNrYWdlcyIgXTsgdGhlbgorCQllY2hvICIkbW91bnRwb2ludC9QYWNrYWdlcyBkb2VzIG5vdCBleGlzdC4iOworCQlyZXR1cm4KKwlmaQorCWlmIGRwa2cgLS1hZG1pbmRpciAkdmFyZGlyIC0tbWVyZ2UtYXZhaWwgIiRtb3VudHBvaW50L1BhY2thZ2VzIgorCXRoZW4KKwkJc3VjY2Vzcz0xCisJCWVjaG8gJworWW91IG1heSBpbmNvcnBvcmF0ZSBhbm90aGVyIFBhY2thZ2VzIGZpbGUgZnJvbSBhbm90aGVyIGZsb3BweSBpZiB5b3Ugd2lzaC4nCisJZmkKK30KKword2hpbGUgWyAkeGl0ID0gMSBdCitkbworCWVjaG8gLW4gJworSW5zZXJ0IGEgZGlzayBjb250YWluaW5nIGEgUGFja2FnZXMgZmlsZSwgb3IgdHlwZSBxIHRvIHF1aXQuICAnCisJcmVhZCByZXNwb25zZQorCWNhc2UgIiRyZXNwb25zZSIgaW4KKwlbUXFdIHwgW1FxXVtVdV1bSWldW1R0XSApCisJCXhpdD0wCisJCTs7CisJKiApCisJCXVtb3VudD0iJGRlZmF1bHRmbG9wcHkiCisJCWlmIG1vdW50IC1ydCAiJGRlZmF1bHRmc3R5cGUiICIkZGVmYXVsdGZsb3BweSIgIiRtb3VudHBvaW50IgorCQl0aGVuCisJCQlzdWNjZXNzPTAKKwkJCXRyeXVwZGF0ZSBQYWNrYWdlcworCQkJdHJ5dXBkYXRlIHBhY2thZ2VzCisJCQl0cnl1cGRhdGUgUEFDS0FHRVMKKwkJCXVtb3VudCAiJGRlZmF1bHRmbG9wcHkiCisJCWZpCisJCXVtb3VudD0iIgorCQk7OworCWVzYWMKK2RvbmUKKworZWNobyAnCitPSywgY29udGludXRpbmcgd2l0aCBpbnN0YWxsYXRpb24uJworCit4aXQ9MApkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L21ldGhvZHMvZnRwL1JFQURNRS5taXJyb3JzLnR4dCBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9tZXRob2RzL2Z0cC9SRUFETUUubWlycm9ycy50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZWE5N2JlMgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9tZXRob2RzL2Z0cC9SRUFETUUubWlycm9ycy50eHQKQEAgLTAsMCArMSwyNTkgQEAKK0RlYmlhbiAtIHdvcmxkd2lkZSBtaXJyb3Igc2l0ZXMKKworVGhpcyBmaWxlIGlzIGJyb2tlbiB1cCBpbnRvIHR3byBzZXBhcmF0ZSBtaXJyb3IgbGlzdGluZ3M6CitwcmltYXJ5IGFuZCBTZWNvbmRhcnkgbWlycm9yIHNpdGVzLiAgVGhlIGRlZmluaXRpb25zIGFyZSBhcyBmb2xsb3dzOgorCitBIFByaW1hcnkgbWlycm9yIHNpdGUgaGFzIGdvb2QgYmFuZHdpZHRoLCBpcyBhdmFpbGFibGUgMjQgaG91cnMgYSBkYXksCithbmQgaGFzIGFuIGVhc3kgdG8gcmVtZW1iZXIgbmFtZXMgb2YgdGhlIGZvcm0gZnRwLjxjb3VudHJ5Pi5kZWJpYW4ub3JnLgorQWRkaXRpb25hbGx5LCBtb3N0IG9mIHRoZW0gYXJlIHVwZGF0ZWQgYXV0b21hdGljYWxseSBhZnRlciB1cGRhdGVzIHRvIHRoZQorRGViaWFuIGFyY2hpdmUuCisKK0EgU2Vjb25kYXJ5IG1pcnJvciBzaXRlIG1heSBoYXZlIHJlc3RyaWN0aW9ucyBvbiB3aGF0IHRoZXkKK21pcnJvciAoZHVlIHRvIHNwYWNlIHJlc3RyaWN0aW9ucykuIEp1c3QgYmVjYXVzZSBhIHNpdGUgaXMgU2Vjb25kYXJ5IGRvZXNuJ3QKK25lY2Vzc2FyaWx5IG1lYW4gaXQnbGwgYmUgYW55IHNsb3dlciBvciBsZXNzIHVwIHRvIGRhdGUgdGhhbiBhIFByaW1hcnkgc2l0ZS4KKworVXNlIHRoZSBzaXRlIGNsb3Nlc3QgdG8geW91IGZvciB0aGUgZmFzdGVzdCBkb3dubG9hZHMgcG9zc2libGUgd2hldGhlciBpcyBiZQorYSBwcmltYXJ5IG9yIHNlY29uZGFyeSBzaXRlLiBUaGUgcHJvZ3JhbSA8ZW0+bmV0c2VsZWN0PC9lbT4gY2FuIGJlIHVzZWQgdG8KK2RldGVybWluZSB0aGUgZmFzdGVzdCBvZiBhIGxpc3Qgb2Ygc2l0ZXMuCisKK0lmIHlvdSBrbm93IG9mIGFueSBtaXJyb3JzIHRoYXQgYXJlIG1pc3NpbmcgZnJvbSB0aGlzIGxpc3QsCitwbGVhc2UgaGF2ZSB0aGUgc2l0ZSBtYWludGFpbmVyIGZpbGwgb3V0CitodHRwOi8vd3d3LmRlYmlhbi5vcmcvbWlycm9yL3N1Ym1pdAorVG8gY29udGFjdCB0aGUgbWFpbnRhaW5lciBvZiB0aGlzIHBhZ2UsIHdyaXRlIHRvCittaXJyb3JzQGRlYmlhbi5vcmcKKworUHJpbWFyeSBJU08gTWlycm9yIFNpdGVzCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gICAgICAgICAJL2RlYmlhbj8JL2RlYmlhbi1ub24tVVM/CitBdXN0cmFsaWEgICAgIC0gICBmdHAuYXUuZGViaWFuLm9yZwlZZXMJCVllcworQXVzdHJpYSAgICAgICAtICAgZnRwLmF0LmRlYmlhbi5vcmcJWWVzCQlZZXMKK0dlcm1hbnkgICAgICAgLSAgIGZ0cC5kZS5kZWJpYW4ub3JnCVllcwkJWWVzCitKYXBhbiAgICAgICAgIC0gICBmdHAuanAuZGViaWFuLm9yZwlZZXMJCU5vCitLb3JlYSAgICAgICAgIC0gICBmdHAua3IuZGViaWFuLm9yZwlZZXMJCU5vCitVbml0ZWQgU3RhdGVzIC0gICBmdHAuZGViaWFuLm9yZyAgIAlZZXMJCU5vCisKK1NlY29uZGFyeSBGVFAgYW5kIEhUVFAgbWlycm9ycyBvZiB0aGUgRGViaWFuIGFyY2hpdmUKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KK0hPU1ROQU1FICAgICAgICAgICAgICAgICAgICAgIEZUUCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSFRUUAorLS0tLS0tLS0gICAgICAgICAgICAgICAgICAgICAgLS0tICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtLS0tCisKK0F1c3RyYWxpYQorLS0tLS0tLS0tCitmdHAuYXUuZGViaWFuLm9yZyAgICAgICAgICAgICAvcHViL2RlYmlhbi8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC9kZWJpYW4vCitmdHAud2EuYXUuZGViaWFuLm9yZyAgICAgICAgICAvcHViL2xpbnV4L2RlYmlhbi8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC9kZWJpYW4vCitmdHAubW9uYXNoLmVkdS5hdSAgICAgICAgICAgICAvcHViL2xpbnV4L2Rpc3RyaWJ1dGlvbnMvZGViaWFuICAgICAgICAgICAgICAgICAgIC9wdWIvbGludXgvZGlzdHJpYnV0aW9ucy9kZWJpYW4KK2xpbnV4Lm9yZy5hdSAgICAgICAgICAgICAgICAgIC9wdWIvZGViaWFuLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgL21pcnJvcnMvZGViaWFuLworZnRwLnV3YS5lZHUuYXUgICAgICAgICAgICAgICAgL21pcnJvcnMvbGludXgvZGViaWFuLworZnRwLnRvd2VyLm5ldC5hdSAgICAgICAgICAgICAgL2RlYmlhbi8KKworQXVzdHJpYQorLS0tLS0tLQorZnRwLmF0LmRlYmlhbi5vcmcgICAgICAgICAgICAgL2RlYmlhbi8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvZGViaWFuLworCitCZWxnaXVtCistLS0tLS0tCitmdHAubGlua2xpbmUuYmUgICAgICAgICAgICAgICAvZGViaWFuLworZnRwLmt1bG5ldC5rdWxldXZlbi5hYy5iZSAgICAgL3B1Yi9taXJyb3IvZnRwLmRlYmlhbi5vcmcvZGViaWFuLworCitCcmF6aWwKKy0tLS0tLQorbGludXguaWYudXNwLmJyICAgICAgICAgICAgICAgL2RlYmlhbi8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvZnRwbWFzdGVyL2RlYmlhbi8KK2Z0cC5ici5kZWJpYW4ub3JnICAgICAgICAgICAgIC9kZWJpYW4vCitmdHAudW5pb2VzdGUtZm96LmJyICAgICAgICAgICAvcHViL2RlYmlhbi8KKworQnVsZ2FyaWEKKy0tLS0tLS0tCitmdHAuYmcuZGViaWFuLm9yZyAgICAgICAgICAgICAvZGViaWFuLworCitDYW5hZGEKKy0tLS0tLQorZnRwLmNhLmRlYmlhbi5vcmcgICAgICAgICAgICAgL2RlYmlhbi8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvZGViaWFuLworZnRwLmNyYy5jYSAgICAgICAgICAgICAgICAgICAgL3B1Yi9zeXN0ZW1zL2xpbnV4L2RlYmlhbi8KK2NvbmFuLmVlY2cudG9yb250by5lZHUgICAgICAgIC9kZWJpYW4vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgL2RlYmlhbi8KK21pcnJvci5kaXJlY3QuY2EgICAgICAgICAgICAgIC9saW51eC9kZWJpYW4vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgL2xpbnV4L2RlYmlhbi8KKworQ2hpbmEKKy0tLS0tCitmcmVlc29mdC5jZWkuZ292LmNuICAgICAgICAgICAvcHViL21pcnJvcnMvZnRwLmRlYmlhbi5vcmcvICAgICAgICAgICAgICAgICAgICAgIC9wdWIvbWlycm9ycy9mdHAuZGViaWFuLm9yZy8KKworQ29zdGEgUmljYQorLS0tLS0tLS0tLQorZGViaWFuLmVmaXMudWNyLmFjLmNyICAgICAgICAgL2RlYmlhbi8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvZGViaWFuLworCitDemVjaCBSZXB1YmxpYworLS0tLS0tLS0tLS0tLS0KK2Z0cC5kZWJpYW4uY3ogICAgICAgICAgICAgICAgIC9kZWJpYW4vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgL2RlYmlhbi8KKworRGVubWFyaworLS0tLS0tLQorZnRwLnN1bnNpdGUuYXVjLmRrICAgICAgICAgICAgL3B1Yi9vcy9saW51eC9kZWJpYW4vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvZnRwL3B1Yi9vcy9saW51eC9kZWJpYW4vCitmdHAudW5pLWMuZGsgICAgICAgICAgICAgICAgICAvbWlycm9yL2Z0cC5kZWJpYW4ub3JnL3B1Yi9kZWJpYW4vICAgICAgICAgICAgICAgIC9taXJyb3IvZnRwLmRlYmlhbi5vcmcvcHViL2RlYmlhbi8KK2Z0cC5kay5kZWJpYW4ub3JnICAgICAgICAgICAgIC9kZWJpYW4vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgL2RlYmlhbi8KK2Z0cC5ka3V1Zy5kayAgICAgICAgICAgICAgICAgIC9wdWIvZGViaWFuLworCitGaW5sYW5kCistLS0tLS0tCitzdW5zaXRlLnR1dC5maSAgICAgICAgICAgICAgICAvZGViaWFuLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC9kZWJpYW4vCisKK0ZyYW5jZQorLS0tLS0tCitmdHAuaXV0LWJtLnVuaXYtZmNvbXRlLmZyICAgICAvcHViL2xpbnV4L2Rpc3RyaWJ1dGlvbnMvZGViaWFuLyAgICAgICAgICAgICAgICAgIC9wdWIvbGludXgvZGlzdHJpYnV0aW9ucy9kZWJpYW4vCitmdHAuZXVkaWwuZnIgICAgICAgICAgICAgICAgICAvZGViaWFuLworZnRwLnByb3hhZC5uZXQgICAgICAgICAgICAgICAgL21pcnJvcnMvZnRwLmRlYmlhbi5vcmcvCitmdHAubWluZXQubmV0ICAgICAgICAgICAgICAgICAvcHViL2Rpc3RyaWIvZGViaWFuCisKK0dlcm1hbnkKKy0tLS0tLS0KK2Z0cC50dS1jbGF1c3RoYWwuZGUgICAgICAgICAgIC9wdWIvbGludXgvZGViaWFuCitmdHAuZGUuZGViaWFuLm9yZyAgICAgICAgICAgICAvZGViaWFuLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC9kZWJpYW4vCitzb3VyY2UucmZjODIyLm9yZyAgICAgICAgICAgICAvZGViaWFuLworCitHZXJtYW55IChkZSkKKy0tLS0tLS0tLS0tLQorZGViaWFuLnVuaS1lc3Nlbi5kZSAgICAgICAgICAgL2RlYmlhbi8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvZGViaWFuLworCitIb25nIEtvbmcKKy0tLS0tLS0tLQorc3Vuc2l0ZS51c3QuaGsgICAgICAgICAgICAgICAgL3B1Yi9kZWJpYW4vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvcHViL2RlYmlhbi8KKworSHVuZ2FyeQorLS0tLS0tLQorc3Vuc2l0ZS5tYXRoLmtsdGUuaHUgICAgICAgICAgL3B1Yi9kZWJpYW4vCitmdHAuaW5kZXguaHUgICAgICAgICAgICAgICAgICAvcHViL2RlYmlhbgorbWxmLmxpbnV4LnJ1bGV6Lm9yZyAgICAgICAgICAgL2RlYmlhbi8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvZGViaWFuLworCitJbmRvbmVzaWEKKy0tLS0tLS0tLQorZGViaWFuLW1pcnJvci5waWtzaS5pdGIuYWMuaWQgL2RlYmlhbi8KKworSXJlbGFuZAorLS0tLS0tLQorZnRwLmVzYXQubmV0ICAgICAgICAgICAgICAgICAgL21pcnJvcnMvZnRwLmRlYmlhbi5vcmcvZGViaWFuLyAgICAgICAgICAgICAgICAgICAvbWlycm9ycy9mdHAuZGViaWFuLm9yZy9kZWJpYW4vCisKK0lzcmFlbAorLS0tLS0tCitmdHAudGxzLmNvLmlsICAgICAgICAgICAgICAgICAvZGViaWFuLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC9kZWJpYW4vCisKK0l0YWx5CistLS0tLQorZnRwMy5saW51eC5pdCAgICAgICAgICAgICAgICAgL2RlYmlhbi8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvZGViaWFuLworcGFsbWFyaWEuZ2FyZGEtYWNjZXNzLmNvbSAgICAgL3B1Yi9saW51eC9kZWJpYW4KK2Z0cC5zdHVkZW50cy5jcy51bmliby5pdCAgICAgIC9NaXJyb3JzL2Z0cC5kZWJpYW4ub3JnCitmcmVlZG9tLmRpY2VhLnVuaWZpLml0ICAgICAgICAvZnRwL3B1Yi9saW51eC9kZWJpYW4vICAgICAgICAgICAgICAgICAgICAgICAgICAgIC9mdHAvcHViL2xpbnV4L2RlYmlhbi8KKworSlAKKy0tCitmdHAuZHRpLmFkLmpwICAgICAgICAgICAgICAgICAvcHViL0xpbnV4L2RlYmlhbi8KKworSmFwYW4KKy0tLS0tCittaXJyb3IubnVjYmEuYWMuanAgICAgICAgICAgICAvbWlycm9yL2RlYmlhbi8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC9taXJyb3IvZGViaWFuLworZnRwLmpwLmRlYmlhbi5vcmcgICAgICAgICAgICAgL2RlYmlhbi8KK3JpbmcuYXNhaGktbmV0Lm9yLmpwICAgICAgICAgIC9wdWIvbGludXgvZGViaWFuL2RlYmlhbi8gICAgICAgICAgICAgICAgICAgICAgICAgL2FyY2hpdmVzL2xpbnV4L2RlYmlhbi9kZWJpYW4vCitTdW5TSVRFLnN1dC5hYy5qcCAgICAgICAgICAgICAvcHViL2FyY2hpdmVzL2xpbnV4L2RlYmlhbiAgICAgICAgICAgICAgICAgICAgICAgIC9wdWIvYXJjaGl2ZXMvbGludXgvZGViaWFuCisKK01leGljbworLS0tLS0tCitmdHAuaXRlc28ubXggICAgICAgICAgICAgICAgICBmdHA6Ly9mdHAuaXRlc28ubXgvcHViL0xpbnV4L2Rpc3RyaWJ1dGlvbnMvZGViaWFuL2h0dHA6Ly9mdHAuaXRlc28ubXgvTGludXgvZGlzdHJpYnV0aW9ucy9kZWJpYW4vCisKK05aCistLQorZnRwLmNsZWFyLm5ldC5ueiAgICAgICAgICAgICAgL2RlYmlhbi8KKworTmV0aGVybGFuZHMKKy0tLS0tLS0tLS0tCitmdHAuY2lzdHJvbi5ubCAgICAgICAgICAgICAgICAvcHViL2RlYmlhbi8KK2Z0cC5ubHV1Zy5ubCAgICAgICAgICAgICAgICAgIC9wdWIvb3MvTGludXgvZGlzdHIvRGViaWFuCitmdHAuZGVtb24ubmwgICAgICAgICAgICAgICAgICAvcHViL21pcnJvcnMvbGludXgvZGViaWFuLworCitOZXcgWmVhbGFuZAorLS0tLS0tLS0tLS0KKworTm9yd2F5CistLS0tLS0KK2Z0cC5udmcubnRudS5ubyAgICAgICAgICAgICAgIC9taXJyb3IvZGViaWFuLworCitQb2xhbmQKKy0tLS0tLQorZnRwLnBsLmRlYmlhbi5vcmcgICAgICAgICAgICAgL3B1Yi9kZWJpYW4vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvZGViaWFuLworZnRwLmZuZXQucGwgICAgICAgICAgICAgICAgICAgL3B1Yi9kZWJpYW4KK2Z0cC5udmcubnRudS5ubyAgICAgICAgICAgICAgIC9taXJyb3IvZGViaWFuLworCitQb3J0dWdhbAorLS0tLS0tLS0KK2Z0cC51ZXZvcmEucHQgICAgICAgICAgICAgICAgIC9kZWJpYW4vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgL2RlYmlhbi8KKworUnVzc2lhCistLS0tLS0KK2Z0cC5jaGcucnUgICAgICAgICAgICAgICAgICAgIC9wdWIvTGludXgvZGViaWFuLworCitTbG92YWsgUmVwdWJsaWMKKy0tLS0tLS0tLS0tLS0tLQorZnRwLnR1a2Uuc2sgICAgICAgICAgICAgICAgICAgL3B1Yi9kZWJpYW4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvZGViaWFuCisKK1Nsb3ZlbmlhCistLS0tLS0tLQorZnRwLmFybmVzLnNpICAgICAgICAgICAgICAgICAgL3NvZnR3YXJlL3VuaXgvbGludXgvZGViaWFuLworZnRwLmNhbXRwLnVuaS1tYi5zaSAgICAgICAgICAgL2RlYmlhbi8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvZGViaWFuLworCitTb3V0aCBBZnJpY2EKKy0tLS0tLS0tLS0tLQorZnRwLmlzLmNvLnphICAgICAgICAgICAgICAgICAgL2xpbnV4L2Rpc3RyaWJ1dGlvbnMvZGViaWFuLworZnRwLmxpbnV4LmNvLnphICAgICAgICAgICAgICAgL3B1Yi9kaXN0cmlidXRpb25zL2RlYmlhbi8KKworU3BhaW4KKy0tLS0tCitmdHAuZXMuZGViaWFuLm9yZyAgICAgICAgICAgICAvZGViaWFuLworY2V1LmZpLnVkYy5lcyAgICAgICAgICAgICAgICAgL2RlYmlhbi8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvZGViaWFuLworCitTd2VkZW4KKy0tLS0tLQorbm93aGVyZS5jYW1wdXMubHV0aC5zZSAgICAgICAgL2RlYmlhbi8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvZGViaWFuLworZnRwLmxoLnVtdS5zZSAgICAgICAgICAgICAgICAgL2RlYmlhbi8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvZGViaWFuLworZnRwLnN1bmV0LnNlICAgICAgICAgICAgICAgICAgL3B1Yi9vcy9MaW51eC9kaXN0cmlidXRpb25zL2RlYmlhbi8gICAgICAgICAgICAgICAvcHViL29zL0xpbnV4L2Rpc3RyaWJ1dGlvbnMvZGViaWFuLworZnRwLmR1LnNlICAgICAgICAgICAgICAgICAgICAgL2RlYmlhbi8KKworU3dpdHplcmxhbmQKKy0tLS0tLS0tLS0tCitzdW5zaXRlLmNubGFiLXN3aXRjaC5jaCAgICAgICAvbWlycm9yL2RlYmlhbi8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC9mdHAvbWlycm9yL2RlYmlhbi8KK2Z0cC51cmJhbmV0LmNoICAgICAgICAgICAgICAgIC9taXJyb3IvZGViaWFuLworCitUaGFpbGFuZAorLS0tLS0tLS0KK2RlYmlhbi5saW51eGNoYXQub3JnICAgICAgICAgIC9kZWJpYW4vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgL2RlYmlhbi8KKworVUsKKy0tCitmdHAudWsuZGViaWFuLm9yZyAgICAgICAgICAgICAvZGViaWFuLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC9kZWJpYW4vCitmdHAuZGVtb24uY28udWsgICAgICAgICAgICAgICAvcHViL21pcnJvcnMvbGludXgvZGViaWFuCitzdW5zaXRlLm9yZy51ayAgICAgICAgICAgICAgICAvTWlycm9ycy9mdHAuZGViaWFuLm9yZy9wdWIvZGViaWFuLyAgICAgICAgICAgICAgIC9NaXJyb3JzL2Z0cC5kZWJpYW4ub3JnL3B1Yi9kZWJpYW4vCitmdHAubWNjLmFjLnVrICAgICAgICAgICAgICAgICAvcHViL2xpbnV4L2Rpc3RyaWJ1dGlvbnMvRGViaWFuCit3d3cuaGVuc2EuYWMudWsgICAgICAgICAgICAgICAvbWlycm9ycy9mdHAuZGViaWFuLm9yZy9kZWJpYW4vICAgICAgICAgICAgICAgICAgIC9taXJyb3JzL2Z0cC5kZWJpYW4ub3JnL2RlYmlhbi8KKworVVMKKy0tCitodHRwLnVzLmRlYmlhbi5vcmcgICAgICAgICAgICAvZGViaWFuLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC9kZWJpYW4vCitmdHAuZGViaWFuLm9yZyAgICAgICAgICAgICAgICAvZGViaWFuLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC9kZWJpYW4vCitmdHAubmV0Z29kLm5ldCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC9kZWJpYW4vCitkZWJpYW4ubWlkY28ubmV0ICAgICAgICAgICAgICAvZGViaWFuLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC9kZWJpYW4vCitmdHAuZWVjcy51bWljaC5lZHUgICAgICAgICAgICAvZGViaWFuLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC9kZWJpYW4vCitkZWJpYW4udGVycmFib3guY29tICAgICAgICAgICAvZGViaWFuLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC9kZWJpYW4vCitsbHVnLnNlcC5ibmwuZ292ICAgICAgICAgICAgICAvZGViaWFuLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC9kZWJpYW4vCitkZWJpYW4uY3Jvc3NsaW5rLm5ldCAgICAgICAgICAvcHViL2RlYmlhbi8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC9kZWJpYW4vCitkZWJpYW4uY3Jvc3NsaW5rLm5ldCAgICAgICAgICAvcHViL2RlYmlhbi8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC9kZWJpYW4vCitmdHAtbWlycm9yLmludGVybmFwLmNvbSAgICAgICAvcHViL2RlYmlhbi8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC9wdWIvZGViaWFuLworZnRwLnVzLmRlYmlhbi5vcmcgICAgICAgICAgICAgL2RlYmlhbi8KK2Z0cC5mdWxsZXIuZWR1ICAgICAgICAgICAgICAgIC9kZWJpYW4vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgL2RlYmlhbi8KK3NhbnRhbm5pLmNjLmdhdGVjaC5lZHUgICAgICAgIC9wdWIvbGludXgvZGlzdHJpYnV0aW9ucy9kZWJpYW4vCitmdHAuY2Ryb20uY29tICAgICAgICAgICAgICAgICAvcHViL2xpbnV4L2RlYmlhbgorZGViaWFuLmVnci5tc3UuZWR1ICAgICAgICAgICAgL2RlYmlhbi8KK2Z0cC50dXgub3JnICAgICAgICAgICAgICAgICAgIC9wdWIvZGlzdHJpYnV0aW9ucy9kZWJpYW4vICAgICAgICAgICAgICAgICAgICAgICAgL3B1Yi9kaXN0cmlidXRpb25zL2RlYmlhbi8KK2RlYmlhbi5zc2MuY29tICAgICAgICAgICAgICAgIC9wdWIvZGViaWFuLworc3Vuc2l0ZS51bmMuZWR1ICAgICAgICAgICAgICAgL3B1Yi9MaW51eC9kaXN0cmlidXRpb25zL2RlYmlhbi8gICAgICAgICAgICAgICAgICAvcHViL0xpbnV4L2Rpc3RyaWJ1dGlvbnMvZGViaWFuLworZGViaWFuLmxhdy5taWFtaS5lZHUgICAgICAgICAgL2RlYmlhbi8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvZGViaWFuLworZnRwLm9wZW5zb3VyY2UuY2FwdGVjaC5jb20gICAgL2RlYmlhbi8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvZGViaWFuLworZnRwLW1pcnJvci5pbnRlcm5hcC5jb20gICAgICAgL3B1Yi9kZWJpYW4vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvcHViL2RlYmlhbi8KK2Nzb2NpZXR5LWZ0cC5lY24ucHVyZHVlLmVkdSAgIC9wdWIvZGViaWFuLworZnRwLmxpbnV4YmVyZy5jb20gICAgICAgICAgICAgL3B1Yi9kaXN0cmlidXRpb25zL0RlYmlhbi8KK2Z0cC5jcy51bm0uZWR1ICAgICAgICAgICAgICAgIC9taXJyb3JzL2RlYmlhbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgL21pcnJvcnMvZGViaWFuCitkZWJpYW4uZ2ltcC5keW5kbnMub3JnICAgICAgICAvZGViaWFuLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC9kZWJpYW4vCitmdHAuY3Mud2lzYy5lZHUgICAgICAgICAgICAgICAvcHViL21pcnJvcnMvbGludXgvZGViaWFuCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvbWV0aG9kcy9mdHAvZGVzYy5mdHAgYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvbWV0aG9kcy9mdHAvZGVzYy5mdHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYWNjZDk5NAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9tZXRob2RzL2Z0cC9kZXNjLmZ0cApAQCAtMCwwICsxLDIgQEAKK0luc3RhbGxhdGlvbiB1c2luZyBmdHAsIHlvdSBtdXN0IGtub3cgb25lIChvciBtb3JlKSBmdHAgc2l0ZShzKSBhbmQgdGhlCitjb3JyZWN0IGRpcmVjdG9yaWVzIGZvciB0aGUgRGViaWFuIGRpc3RyaWJ1dGlvbi4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9tZXRob2RzL2Z0cC9pbnN0YWxsIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L21ldGhvZHMvZnRwL2luc3RhbGwKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMC4uZmFhMTEzYQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9tZXRob2RzL2Z0cC9pbnN0YWxsCkBAIC0wLDAgKzEsNjI4IEBACisjIS91c3IvYmluL3BlcmwKKyMgLSotcGVybC0qLQorIworIyBDb3B5cmlnaHQgwqkgMTk5NiBBbmR5IEd1eSA8YXdwZ3V5QGFjcy51Y2FsZ2FyeS5jYT4KKyMgQ29weXJpZ2h0IMKpIDE5OTggTWFydGluIFNjaHVsemUgPGpvZXlAaW5mb2Ryb20ubm9ydGguZGU+CisjIENvcHlyaWdodCDCqSAxOTk5LCAyMDA5IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KKyMKKyMgVGhpcyBwcm9ncmFtIGhhcyBiZWVuIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdQTC4KKwordXNlIHN0cmljdDsKK3VzZSB3YXJuaW5nczsKKwordXNlIHZhcnMgcXcoJWNvbmZpZyAkZnRwKTsKKyN1c2UgZGlhZ25vc3RpY3M7CisKK3VzZSBsaWIgJy91c3IvbGliL3Blcmw1L0RlYmlhbic7Cit1c2UgbGliICcvdXNyL3NoYXJlL3Blcmw1L0RlYmlhbic7CisKK2V2YWwgcXsKKyAgICB1c2UgTmV0OjpGVFA7CisgICAgdXNlIEZpbGU6OlBhdGg7CisgICAgdXNlIEZpbGU6OkJhc2VuYW1lOworICAgIHVzZSBGaWxlOjpGaW5kOworICAgIHVzZSBEYXRhOjpEdW1wZXI7Cit9OworaWYgKCRAKSB7CisgICAgcHJpbnQgU1RERVJSICJQbGVhc2UgaW5zdGFsbCB0aGUgJ3BlcmwnIHBhY2thZ2UgaWYgeW91IHdhbnQgdG8gdXNlIHRoZVxuIiAuCisgICAgICAgICAgICAgICAgICJGVFAgYWNjZXNzIG1ldGhvZCBvZiBkc2VsZWN0LlxuXG4iOworICAgIGV4aXQgMTsKK30KKwordXNlIERzZWxlY3Q6OkZ0cDsKKworIyBleGl0IHZhbHVlCitteSAkZXhpdCA9IDA7CisKKyMgZGVhbCB3aXRoIGFyZ3VtZW50cworbXkgJHZhcmRpciA9ICRBUkdWWzBdOworbXkgJG1ldGhvZCA9ICRBUkdWWzFdOworbXkgJG9wdGlvbiA9ICRBUkdWWzJdOworCitpZiAoJG9wdGlvbiBlcSAibWFudWFsIiApIHsKKyAgcHJpbnQgIm1hbnVhbCBtb2RlIG5vdCBzdXBwb3J0ZWQgeWV0XG4iOworICBleGl0IDE7Cit9CisjcHJpbnQgInZhcmRpcjogJHZhcmRpciwgbWV0aG9kOiAkbWV0aG9kLCBvcHRpb246ICRvcHRpb25cbiI7CisKK215ICRtZXRoZGlyID0gIiR2YXJkaXIvbWV0aG9kcy9mdHAiOworCisjIGdldCBpbmZvIGZyb20gY29udHJvbCBmaWxlCityZWFkX2NvbmZpZygiJG1ldGhkaXIvdmFycyIpOworCitjaGRpciAiJG1ldGhkaXIiOworbWtwYXRoKFsiJG1ldGhkaXIvJGNvbmZpZ3snZGxkaXInfSJdLCAwLCAwNzU1KTsKKworCisjUmVhZCBtZDVzdW1zIGFscmVhZHkgY2FsY3VsYXRlZAorbXkgJW1kNXN1bXM7CitpZiAoLWYgIiRtZXRoZGlyL21kNXN1bXMiKSB7CisgIGxvY2FsICQvOworICBvcGVuKE1ENVNVTVMsICIkbWV0aGRpci9tZDVzdW1zIikgfHwKKyAgICBkaWUgIkNvdWxkbid0IHJlYWQgZmlsZSAkbWV0aGRpci9tZDVzdW1zIjsKKyAgbXkgJGNvZGUgPSA8TUQ1U1VNUz47CisgIGNsb3NlIE1ENVNVTVM7CisgIHVzZSB2YXJzIHF3KCRWQUwxKTsKKyAgbXkgJHJlcyA9IGV2YWwgJGNvZGU7CisgIGlmICgkQCkgeworICAgIGRpZSAiQ291bGRuJ3QgZXZhbCAkbWV0aGRpci9tZDVzdW1zIGNvbnRlbnQ6ICRAXG4iOworICB9CisgIGlmIChyZWYoJHJlcykpIHsgJW1kNXN1bXMgPSAleyRyZXN9IH0KK30KKworIyBnZXQgYSBibG9jaworIyByZXR1cm5zIGEgcmVmIHRvIGEgaGFzaCBjb250YWluaW5nIGZsZHMtPmZsZCBjb250ZW50cworIyB3aGl0ZSBzcGFjZSBmcm9tIHRoZSBlbmRzIG9mIGxpbmVzIGlzIHJlbW92ZWQgYW5kIG5ld2xpbmVzIGFkZGVkCisjIChubyB0cmFpbGluZyBuZXdsaW5lKS4KKyMgZGllJ3MgaWYgc29tZXRoaW5nIHVuZXhwZWN0ZWQgaGFwcGVucworc3ViIGdldGJsayB7CisgICAgbXkgJGZoID0gc2hpZnQ7CisgICAgbXkgJWZsZHM7CisgICAgbXkgJGZsZDsKKyAgICB3aGlsZSAoPCRmaD4pIHsKKwlpZiAoICEgL14kLyApIHsKKwkgICAgRkxETE9PUDogd2hpbGUgKDEpIHsKKwkJaWYgKCAvXihcUyspOlxzKiguKilccyokLyApIHsKKwkJICAgICRmbGQgPSBsYygkMSk7CisJCSAgICAkZmxkc3skZmxkfSA9ICQyOworCQkgICAgd2hpbGUgKDwkZmg+KSB7CisJCQlpZiAoIC9eJC8gKSB7CisJCQkgICAgcmV0dXJuICVmbGRzOworCQkJfSBlbHNpZiAoIC9eKFxzLiopJC8gKSB7CisJCQkgICAgJGZsZHN7JGZsZH0gPSAkZmxkc3skZmxkfSAuICJcbiIgLiAkMTsKKwkJCX0gZWxzZSB7CisJCQkgICAgbmV4dCBGTERMT09QOworCQkJfQorCQkgICAgfQorCQkgICAgcmV0dXJuICVmbGRzOworCQl9IGVsc2UgeworCQkgICAgZGllICJFeHBlY3RlZCBhIHN0YXJ0IG9mIGZpZWxkIGxpbmUsIGJ1dCBnb3Q6XG4kXyI7CisJCX0KKwkgICAgfQorCX0KKyAgICB9CisgICAgcmV0dXJuICVmbGRzOworfQorCisjIHByb2Nlc3Mgc3RhdHVzIGZpbGUKKyMgY3JlYXRlIGN1cnBrZ3MgaGFzaCB3aXRoIHZlcnNpb24gKG5vIHZlcnNpb24gaW1wbGllcyBub3QgY3VycmVudGx5IGluc3RhbGxlZCkKKyMgb2YgcGFja2FnZXMgd2Ugd2FudAorcHJpbnQgIlByb2Nlc3Npbmcgc3RhdHVzIGZpbGUuLi5cbiI7CitteSAlY3VycGtnczsKK3N1YiBwcm9jc3RhdHVzIHsKKyAgICBteSAoJWZsZHMsICRmbGQpOworICAgIG9wZW4gKFNUQVRVUywgIiR2YXJkaXIvc3RhdHVzIikgb3IgZGllICJDb3VsZCBub3Qgb3BlbiBzdGF0dXMgZmlsZSI7CisgICAgd2hpbGUgKCVmbGRzID0gZ2V0YmxrKFwqU1RBVFVTKSwgJWZsZHMpIHsKKwlpZigkZmxkc3snc3RhdHVzJ30gPX4gL15pbnN0YWxsIG9rLykgeworCSAgICBteSAkY3MgPSAoc3BsaXQoLyAvLCAkZmxkc3snc3RhdHVzJ30pKVsyXTsKKwkgICAgaWYoKCRjcyBlcSAibm90LWluc3RhbGxlZCIpIHx8CisJICAgICAgICgkY3MgZXEgImhhbGYtaW5zdGFsbGVkIikgfHwKKwkgICAgICAgKCRjcyBlcSAiY29uZmlnLWZpbGVzIikpIHsKKwkJJGN1cnBrZ3N7JGZsZHN7J3BhY2thZ2UnfX0gPSAiIjsKKwkgICAgfSBlbHNlIHsKKwkJJGN1cnBrZ3N7JGZsZHN7J3BhY2thZ2UnfX0gPSAkZmxkc3sndmVyc2lvbid9OworCSAgICB9CisJfQorICAgIH0KKyAgICBjbG9zZShTVEFUVVMpOworfQorcHJvY3N0YXR1cygpOworCitzdWIgZGNtcHZlcnMgeworICAgIG15KCRhLCAkcCwgJGIpID0gQF87CisgICAgbXkgKCRyKTsKKyAgICAkciA9IHN5c3RlbSgiL3Vzci9iaW4vZHBrZyIsICItLWNvbXBhcmUtdmVyc2lvbnMiLCAiJGEiLCAiJHAiLCAiJGIiKTsKKyAgICAkciA9ICRyLzI1NjsKKyAgICBpZiAoJHIgPT0gMCkgeworCXJldHVybiAxOworICAgIH0gZWxzaWYgKCRyID09IDEpIHsKKwlyZXR1cm4gMDsKKyAgICB9CisgICAgZGllICJkcGtnIC0tY29tcGFyZS12ZXJzaW9ucyAkYSAkcCAkYiAtIGZhaWxlZCB3aXRoICRyIjsKK30KKworIyBwcm9jZXNzIHBhY2thZ2UgZmlsZXMsIGxvb2tpbmcgZm9yIHBhY2thZ2VzIHRvIGluc3RhbGwKKyMgY3JlYXRlIGEgaGFzaCBvZiB0aGVzZSBwYWNrYWdlcyBwa2duYW1lID0+IHZlcnNpb24sIGZpbGVuYW1lcy4uLgorIyBmaWxlbmFtZSA9PiBtZDVzdW0sIHNpemUKKyMgZm9yIGFsbCBwYWNrYWdlcworbXkgJXBrZ3M7CitteSAlcGtnZmlsZXM7CitzdWIgcHJvY3BrZ2ZpbGUgeworICAgIG15ICRmbiA9IHNoaWZ0OworICAgIG15ICRzaXRlID0gc2hpZnQ7CisgICAgbXkgJGRpc3QgPSBzaGlmdDsKKyAgICBteShAZmlsZXMsQHNpemVzLEBtZDVzdW1zLCRwa2csJHZlciwkZmwsJG5mcywkZmxkKTsKKyAgICBteSglZmxkcyk7CisgICAgb3BlbihQS0dGSUxFLCAiJGZuIikgb3IgZGllICJDb3VsZCBub3Qgb3BlbiBwYWNrYWdlIGZpbGUgJGZuIjsKKyAgICB3aGlsZSglZmxkcyA9IGdldGJsayhcKlBLR0ZJTEUpLCAlZmxkcykgeworCSRwa2cgPSAkZmxkc3sncGFja2FnZSd9OworCSR2ZXIgPSAkY3VycGtnc3skcGtnfTsKKwlAZmlsZXMgPSBzcGxpdCgvW1xzXG5dKy8sICRmbGRzeydmaWxlbmFtZSd9KTsKKwlAc2l6ZXMgPSBzcGxpdCgvW1xzXG5dKy8sICRmbGRzeydzaXplJ30pOworCUBtZDVzdW1zID0gc3BsaXQoL1tcc1xuXSsvLCAkZmxkc3snbWQ1c3VtJ30pOworCWlmICggZGVmaW5lZCgkdmVyKSAmJiAoICgkdmVyIGVxICIiKSB8fCBkY21wdmVycyggJHZlciwgImx0IiwgJGZsZHN7J3ZlcnNpb24nfSApICkpIHsKKwkgICAgJHBrZ3N7JHBrZ30gPSBbICRmbGRzeyd2ZXJzaW9uJ30sIFsgQGZpbGVzIF0sICRzaXRlIF07CisJICAgICRjdXJwa2dzeyRwa2d9ID0gJGZsZHN7J3ZlcnNpb24nfTsKKwl9CisJJG5mcyA9IHNjYWxhcihAZmlsZXMpOworCWlmKCgkbmZzICE9IHNjYWxhcihAc2l6ZXMpKSB8fCAoJG5mcyAhPSBzY2FsYXIoQG1kNXN1bXMpKSApIHsKKwkgICAgcHJpbnQgIkRpZmZlcmVudCBudW1iZXIgb2YgZmlsZW5hbWVzLCBzaXplcyBhbmQgbWQ1c3VtcyBmb3IgJGZsZHN7J3BhY2thZ2UnfVxuIjsKKwl9IGVsc2UgeworCSAgICBteSAkaSA9IDA7CisJICAgIGZvcmVhY2ggJGZsIChAZmlsZXMpIHsKKwkJJHBrZ2ZpbGVzeyRmbH0gPSBbICRtZDVzdW1zWyRpXSwgJHNpemVzWyRpXSwgJHNpdGUsICRkaXN0IF07CisJCSRpKys7CisJICAgIH0KKwl9CisgICAgfQorfQorCitwcmludCAiXG5Qcm9jZXNzaW5nIFBhY2thZ2UgZmlsZXMuLi5cbiI7CitteSAoJGRpc3QsJHNpdGUsJGZuLCRpLCRqKTsKKyRpID0gMDsKK2ZvcmVhY2ggJHNpdGUgKEB7JGNvbmZpZ3snc2l0ZSd9fSkgeworICAkaiA9IDA7CisgIGZvcmVhY2ggJGRpc3QgKEB7JHNpdGUtPlsyXX0pIHsKKyAgICAkZm4gPSAkZGlzdDsKKyAgICAkZm4gPX4gdHIjLyNfIzsKKyAgICAkZm4gPSAiUGFja2FnZXMuJHNpdGUtPlswXS4kZm4iOworICAgIGlmICgtZiAkZm4pIHsKKwlwcmludCAiICRzaXRlLT5bMF0gJGRpc3QuLi5cbiI7CisJcHJvY3BrZ2ZpbGUoJGZuLCRpLCRqKTsKKyAgICB9IGVsc2UgeworCXByaW50ICJDb3VsZCBub3QgZmluZCBwYWNrYWdlcyBmaWxlIGZvciAkc2l0ZS0+WzBdICRkaXN0IGRpc3RyaWJ1dGlvbiAocmUtcnVuIFVwZGF0ZSlcbiIKKyAgICB9CisgICAgJGorKzsKKyAgfQorICAkaSsrOworfQorCitteSAkZGxkaXIgPSAkY29uZmlneydkbGRpcid9OworIyBtZDVzdW0KK3N1YiBtZDVzdW0oJCkgeworICAgIG15ICRmbiA9IHNoaWZ0OworICAgIG15ICRtID0gYG1kNXN1bSAkZm5gOworICAgICRtID0gKHNwbGl0KCIgIiwgJG0pKVswXTsKKyAgICAkbWQ1c3Vtc3siJGRsZGlyLyRmbiJ9ID0gJG07CisgICAgcmV0dXJuICRtOworfQorCisjIGNvbnN0cnVjdCBsaXN0IG9mIGZpbGVzIHRvIGdldAorIyBoYXNoIG9mIGZpbGVuYW1lcyA9PiBzaXplIG9mIGRvd25sb2FkZWQgcGFydAorIyBxdWVyeSB1c2VyIGZvciBlYWNoIHBhcml0aWFsIGZpbGUKK3ByaW50ICJcbkNvbnN0cnVjdGluZyBsaXN0IG9mIGZpbGVzIHRvIGdldC4uLlxuIjsKK215ICVkb3dubG9hZHM7CitteSAoJHBrZywgJGRpciwgQGluZm8sIEBmaWxlcywgJGNzaXplLCAkc2l6ZSk7CitteSAkdG90c2l6ZSA9IDA7Citmb3JlYWNoICRwa2cgKGtleXMoJXBrZ3MpKSB7CisgICAgQGZpbGVzID0gQHskcGtnc3skcGtnfVsxXX07CisgICAgZm9yZWFjaCAkZm4gKEBmaWxlcykgeworICAgICAgICAjTG9vayBmb3IgYSBwYXJ0aWFsIGZpbGUKKwlpZiAoLWYgIiRkbGRpci8kZm4ucGFydGlhbCIpIHsKKwkgIHJlbmFtZSAiJGRsZGlyLyRmbi5wYXJ0aWFsIiwgIiRkbGRpci8kZm4iOworCX0KKwkkZGlyID0gZGlybmFtZSgkZm4pOworCWlmKCEgLWQgIiRkbGRpci8kZGlyIikgeworCSAgICBta3BhdGgoWyIkZGxkaXIvJGRpciJdLCAwLCAwNzU1KTsKKwl9CisJQGluZm8gPSBAeyRwa2dmaWxlc3skZm59fTsKKwkkY3NpemUgPSBpbnQoJGluZm9bMV0vMTAyNCkrMTsKKwlpZigtZiAiJGRsZGlyLyRmbiIpIHsKKwkgICAgJHNpemUgPSAtcyAiJGRsZGlyLyRmbiI7CisJICAgIGlmKCRpbmZvWzFdID4gJHNpemUpIHsKKwkJIyBwYXJ0aWFsIGRvd25sb2FkCisJCWlmKHllc25vKCJ5IiwgImNvbnRpbnVlIGZpbGU6ICRmbiAoIiAuIG5iKCRzaXplKSAuIi8iIC4KKwkJICAgICAgICAgICAgICBuYigkaW5mb1sxXSkuICIpIikpIHsKKwkJICAgICRkb3dubG9hZHN7JGZufSA9ICRzaXplOworCQkgICAgJHRvdHNpemUgKz0gJGNzaXplIC0gaW50KCRzaXplLzEwMjQpOworCQl9IGVsc2UgeworCQkgICAgJGRvd25sb2Fkc3skZm59ID0gMDsKKwkJICAgICR0b3RzaXplICs9ICRjc2l6ZTsKKwkJfQorCSAgICB9IGVsc2UgeworCQkjIGNoZWNrIG1kNXN1bQorCQlpZiAoISBleGlzdHMgJG1kNXN1bXN7IiRkbGRpci8kZm4ifSkgeworICAgICAgICAgICAgICAgICAgJG1kNXN1bXN7IiRkbGRpci8kZm4ifSA9IG1kNXN1bSgiJGRsZGlyLyRmbiIpOworCQl9CisJCWlmICgkbWQ1c3Vtc3siJGRsZGlyLyRmbiJ9IGVxICRpbmZvWzBdKSB7CisJCSAgICBwcmludCAiYWxyZWFkeSBnb3Q6ICRmblxuIjsKKwkJfSBlbHNlIHsKKwkJICAgIHByaW50ICJjb3JydXB0ZWQ6ICRmblxuIjsKKwkJICAgICRkb3dubG9hZHN7JGZufSA9IDA7CisJCX0KKwkgICAgfQorCX0gZWxzZSB7CisJICAgIG15ICRmZm4gPSAkZm47CisJICAgICRmZm4gPX4gcy9iaW5hcnktW15cL10rLy4uLi87CisJICAgIHByaW50ICJ3YW50OiAiIC4KKwkgICAgICAgICAgJGNvbmZpZ3snc2l0ZSd9WyRwa2dmaWxlc3skZm59WzJdXVswXSAuICIgJGZmbiAoJHtjc2l6ZX1rKVxuIjsKKwkgICAgJGRvd25sb2Fkc3skZm59ID0gMDsKKwkgICAgJHRvdHNpemUgKz0gJGNzaXplOworCX0KKyAgICB9Cit9CisKK215ICRhdnNwID0gYGRmIC1QayAkZGxkaXJ8IGF3ayAneyBwcmludCBcJDR9JyB8IHRhaWwgLW4gMWA7CitjaG9tcCAkYXZzcDsKKworcHJpbnQgIlxuQXBwcm94aW1hdGUgdG90YWwgc3BhY2UgcmVxdWlyZWQ6ICR7dG90c2l6ZX1rXG4iOworcHJpbnQgIkF2YWlsYWJsZSBzcGFjZSBpbiAkZGxkaXI6ICR7YXZzcH1rXG4iOworCisjJGF2c3AgPSBgZGYgLWsgJDo6ZGxkaXJ8IHBhc3RlIC1zIHwgYXdrICd7IHByaW50IFwkMTF9J2A7CisjY2hvbXAgJGF2c3A7CisKK2lmKCR0b3RzaXplID09IDApIHsKKyAgICBwcmludCAiTm90aGluZyB0byBnZXQuIjsKK30gZWxzZSB7CisgICAgaWYoJHRvdHNpemUgPiAkYXZzcCkgeworCXByaW50ICJTcGFjZSByZXF1aXJlZCBpcyBncmVhdGVyIHRoYW4gYXZhaWxhYmxlIHNwYWNlLFxuIjsKKwlwcmludCAieW91IHdpbGwgbmVlZCB0byBzZWxlY3Qgd2hpY2ggaXRlbXMgdG8gZ2V0LlxuIjsKKyAgICB9CisjIGFzayB1c2VyIHdoaWNoIGZpbGVzIHRvIGdldAorICAgIGlmKCgkdG90c2l6ZSA+ICRhdnNwKSB8fCB5ZXNubygibiIsICJEbyB5b3Ugd2FudCB0byBzZWxlY3QgdGhlIGZpbGVzIHRvIGdldCIpKSB7CisJJHRvdHNpemUgPSAwOworCW15IEBmaWxlcyA9IHNvcnQoa2V5cyglZG93bmxvYWRzKSk7CisJbXkgJGZuOworCW15ICRkZWYgPSAieSI7CisJZm9yZWFjaCAkZm4gKEBmaWxlcykgeworCSAgICBteSBAaW5mbyA9IEB7JHBrZ2ZpbGVzeyRmbn19OworCSAgICBteSAkY3NpemUgPSBpbnQoJGluZm9bMV0gLyAxMDI0KSArIDE7CisJICAgIG15ICRyc2l6ZSA9IGludCgoJGluZm9bMV0gLSAkZG93bmxvYWRzeyRmbn0pIC8gMTAyNCkgKyAxOworCSAgICBpZiAoJHJzaXplICsgJHRvdHNpemUgPiAkYXZzcCkgeworCQlwcmludCAibm8gcm9vbSBmb3I6ICRmblxuIjsKKwkJZGVsZXRlICRkb3dubG9hZHN7JGZufTsKKwkgICAgfSBlbHNlIHsKKwkJaWYoeWVzbm8oJGRlZiwgJGRvd25sb2Fkc3skZm59CisJCQkgPyAiZG93bmxvYWQ6ICRmbiAke3JzaXplfWsvJHtjc2l6ZX1rICh0b3RhbCA9ICR7dG90c2l6ZX1rKSIKKwkJCSA6ICJkb3dubG9hZDogJGZuICR7cnNpemV9ayAodG90YWwgPSAke3RvdHNpemV9aykiKSkgeworCQkgICAgJGRlZiA9ICJ5IjsKKwkJICAgICR0b3RzaXplICs9ICRyc2l6ZTsKKwkJfSBlbHNlIHsKKwkJICAgICRkZWYgPSAibiI7CisJCSAgICBkZWxldGUgJGRvd25sb2Fkc3skZm59OworCQl9CisJICAgIH0KKwl9CisgICAgfQorfQorCitzdWIgZG93bmxvYWQoKSB7CisKKyBteSAkaSA9IDA7CisgbXkgKCRzaXRlLCAkZnRwKTsKKworIGZvcmVhY2ggJHNpdGUgKEB7JGNvbmZpZ3snc2l0ZSd9fSkgeworCisgICAgbXkgQGdldGZpbGVzID0gZ3JlcCB7ICRwa2dmaWxlc3skX31bMl0gPT0gJGkgfSBrZXlzICVkb3dubG9hZHM7CisgICAgbXkgQHByZV9kaXN0ID0gKCk7ICMgRGlyZWN0b3J5IHRvIGFkZCBiZWZvcmUgJGZuCisKKyAgICAjU2NhbiBkaXN0cmlidXRpb25zIGZvciBsb29raW5nIGF0ICIoLi4vKSsvZGlyL2RpciIKKyAgICBteSAoJG4sJGNwKTsKKyAgICAkY3AgPSAtMTsKKyAgICBmb3JlYWNoIChAeyRzaXRlLT5bMl19KSB7CisgICAgICAkY3ArKzsKKyAgICAgICRwcmVfZGlzdFskY3BdID0gIiI7CisgICAgICAkbiA9IChzI1wuXC4vIy4uLyNnKTsKKyAgICAgIG5leHQgaWYgKCEgJG4pOworICAgICAgaWYgKG0jXigoPzpcLlwuLyl7JG59KD86W14vXSsvKXskbn0pIykgeworICAgICAgICAkcHJlX2Rpc3RbJGNwXSA9ICQxOworICAgICAgfQorICAgIH0KKworICAgIGlmICghIEBnZXRmaWxlcykgeyAkaSsrOyBuZXh0OyB9CisKKyAgICAkZnRwID0gZG9fY29ubmVjdCAoJHNpdGUtPlswXSwgIyQ6OmZ0cHNpdGUsCisgICAgICAgICAgICAgICAgICAgICAgICRzaXRlLT5bNF0sICMkOjp1c2VybmFtZSwKKwkJICAgICAgICRzaXRlLT5bNV0sICMkOjpwYXNzd29yZCwKKwkJICAgICAgICRzaXRlLT5bMV0sICMkOjpmdHBkaXIsCisJCSAgICAgICAkc2l0ZS0+WzNdLCAjJDo6cGFzc2l2ZSwKKwkJICAgICAgICRjb25maWd7J3VzZV9hdXRoX3Byb3h5J30sCisJCSAgICAgICAkY29uZmlneydwcm94eWhvc3QnfSwKKwkJICAgICAgICRjb25maWd7J3Byb3h5bG9nbmFtZSd9LAorCQkgICAgICAgJGNvbmZpZ3sncHJveHlwYXNzd29yZCd9KTsKKworICAgICQ6OmZ0cCA9ICRmdHA7CisgICAgbG9jYWwgJFNJR3snSU5UJ30gPSBzdWIgeyBkaWUgIkludGVycnVwdGVkICFcbiI7IH07CisKKyAgICBteSAoJGZuLCRyc2l6ZSwkcmVzLCRwcmUpOworICAgIGZvcmVhY2ggJGZuIChAZ2V0ZmlsZXMpIHsKKyAgICAgICAgJHByZSA9ICRwcmVfZGlzdFskcGtnZmlsZXN7JGZufVszXV0gfHwgIiI7CisJaWYgKCRkb3dubG9hZHN7JGZufSkgeworCSAgICAkcnNpemUgPSAke3BrZ2ZpbGVzeyRmbn19WzFdIC0gJGRvd25sb2Fkc3skZm59OworCSAgICBwcmludCAiZ2V0dGluZzogJHByZSRmbiAoIi4gbmIoJHJzaXplKSAuICIvIiAuCisJICAgICAgICAgIG5iKCRwa2dmaWxlc3skZm59WzFdKSAuICIpXG4iOworCX0gZWxzZSB7CisJICAgIHByaW50ICJnZXR0aW5nOiAkcHJlJGZuICgiLiBuYigkcGtnZmlsZXN7JGZufVsxXSkgLiAiKVxuIjsKKwl9CisJJHJlcyA9ICRmdHAtPmdldCgiJHByZSRmbiIsICIkZGxkaXIvJGZuIiwgJGRvd25sb2Fkc3skZm59KTsKKwlpZighICRyZXMpIHsKKwkgICAgbXkgJHIgPSAkZnRwLT5jb2RlKCk7CisJICAgIHByaW50ICRmdHAtPm1lc3NhZ2UoKSAuICJcbiI7CisJICAgIGlmICghKCRyID09IDU1MCB8fCAkciA9PSA0NTApKSB7CisJCXJldHVybiAxOworCSAgICB9IGVsc2UgeworICAgICAgICAgICAgICAjVHJ5IHRvIGZpbmQgYW5vdGhlciBmaWxlIG9yIHRoaXMgcGFja2FnZQorCSAgICAgIHByaW50ICJMb29raW5nIGZvciBhbm90aGVyIHZlcnNpb24gb2YgdGhlIHBhY2thZ2UuLi5cbiI7CisJICAgICAgbXkgKCRkaXIsJHBhY2thZ2UpID0gKCRmbiA9fiBtI14oLiopLyhbXi9dKylfW14vXSsuZGViJCMpOworCSAgICAgIG15ICRwcm90ZWN0ZWQgPSAkcGFja2FnZTsKKwkgICAgICAkcHJvdGVjdGVkID1+IHMvXCsvXFxcKy9nOworCSAgICAgIG15ICRsaXN0ID0gJGZ0cC0+bHMoIiRwcmUkZGlyIik7CisJICAgICAgaWYgKCRmdHAtPm9rKCkgJiYgcmVmKCRsaXN0KSkgeworICAgICAgICAgICAgICAgIGZvcmVhY2ggKEB7JGxpc3R9KSB7CisgICAgICAgICAgICAgICAgICBpZiAobS8oJGRpclwvJHtwcm90ZWN0ZWR9X1teXC9dKy5kZWIpL2kpIHsKKwkJICAgIHByaW50ICJQYWNrYWdlIGZvdW5kIDogJF9cbiI7CisJCSAgICBwcmludCAiZ2V0dGluZzogJF8gKHNpemUgbm90IGtub3duKVxuIjsKKyAgICAgICAgICAgICAgICAgICAgJHJlcyA9ICRmdHAtPmdldCgkXywgIiRkbGRpci8kMSIpOworCQkgICAgaWYgKCEgJHJlcykgeworICAgICAgICAgICAgICAgICAgICAgICRyID0gJGZ0cC0+Y29kZSgpOworCQkgICAgICBwcmludCAkZnRwLT5tZXNzYWdlKCkgLiAiXG4iOworCQkgICAgICByZXR1cm4gMSBpZiAoJHIgIT0gNTUwIGFuZCAkciAhPSA0NTApOworCQkgICAgfQorCQkgIH0KKwkJfQorCSAgICAgIH0KKwkgICAgfQorCX0KKwkjIGZ1bGx5IGdvdCwgcmVtb3ZlIGl0IGZyb20gbGlzdCBpbiBjYXNlIHdlIGhhdmUgdG8gcmUtZG93bmxvYWQKKwlkZWxldGUgJGRvd25sb2Fkc3skZm59OworICAgIH0KKyAgICAkZnRwLT5xdWl0KCk7CisgICAgJGkrKzsKKyB9CisgcmV0dXJuIDA7Cit9CisKKyMgZG93bmxvYWQgc3R1ZmYgKHByb3RlY3QgZnJvbSBeQykKK2lmKCR0b3RzaXplICE9IDApIHsKKyAgICBpZih5ZXNubygieSIsICJcbkRvIHlvdSB3YW50IHRvIGRvd25sb2FkIHRoZSByZXF1aXJlZCBmaWxlcyIpKSB7CisgICAgICBET1dOTE9BRF9UUlk6IHdoaWxlICgxKSB7CisJICBwcmludCAiRG93bmxvYWRpbmcgZmlsZXMuLi4gdXNlIF5DIHRvIHN0b3BcbiI7CisJICBldmFsIHsKKwkgICAgICBpZiAoKGRvd25sb2FkKCkgPT0gMSkgJiYgeWVzbm8oInkiLCAiXG5EbyB5b3Ugd2FudCB0byByZXRyeSBkb3dubG9hZGluZyBhdCBvbmNlIikpIHsKKwkJICBuZXh0IERPV05MT0FEX1RSWTsKKwkgICAgICB9CisJICB9OworCSAgaWYoJEAgPX4gL0ludGVycnVwdGVkfFRpbWVvdXQvaSApIHsKKwkgICAgICAjIGNsb3NlIHRoZSBGVFAgY29ubmVjdGlvbiBpZiBuZWVkZWQKKyAgICAgICAgICAgICAgaWYgKChyZWYoJDo6ZnRwKSA9fiAvTmV0OjpGVFAvKSBhbmQgKCRAID1+IC9JbnRlcnJ1cHRlZC9pKSkgeworICAgICAgICAgICAgICAgICQ6OmZ0cC0+YWJvcnQoKTsKKwkgICAgICAgICQ6OmZ0cC0+cXVpdCgpOworCSAgICAgICAgdW5kZWYgJDo6ZnRwOworCSAgICAgIH0KKwkgICAgICBwcmludCAiRlRQIEVSUk9SXG4iOworICAgICAgICAgICAgICBpZiAoeWVzbm8oInkiLCAiXG5EbyB5b3Ugd2FudCB0byByZXRyeSBkb3dubG9hZGluZyBhdCBvbmNlIikpIHsKKwkJICAjIGdldCB0aGUgZmlyc3QgJGZuIHRoYXQgZm9yZWFjaCB3b3VsZCBnaXZlOgorCQkgICMgdGhpcyBpcyB0aGUgb25lIHRoYXQgZ290IGludGVycnVwdGVkLgorCQlteSAkZmZuOworCQlNWV9JVEVSOiBmb3JlYWNoICRmZm4gKGtleXMoJWRvd25sb2FkcykpIHsKKwkJICAgICRmbiA9ICRmZm47CisJCSAgICBsYXN0IE1ZX0lURVI7CisJCX0KKwkgICAgICAgIG15ICRzaXplID0gLXMgIiRkbGRpci8kZm4iOworCQkjIHBhcnRpYWwgZG93bmxvYWQKKwkJaWYoeWVzbm8oInkiLCAiY29udGludWUgZmlsZTogJGZuIChhdCAkc2l6ZSkiKSkgeworCQkgICAgJGRvd25sb2Fkc3skZm59ID0gJHNpemU7CisJCX0gZWxzZSB7CisJCSAgICAkZG93bmxvYWRzeyRmbn0gPSAwOworCQl9CisJCW5leHQgRE9XTkxPQURfVFJZOworCSAgICAgIH0gZWxzZSB7CisJICAgICAgICAkZXhpdCA9IDE7CisJCWxhc3QgRE9XTkxPQURfVFJZOworCSAgICAgIH0KKwkgIH0gZWxzaWYgKCRAKSB7CisgICAgICAgICAgICAgcHJpbnQgIkFuIGVycm9yIG9jY3VycmVkICgkQCkgOiBzdG9wcGluZyBkb3dubG9hZFxuIjsKKwkgIH0KKwkgIGxhc3QgRE9XTkxPQURfVFJZOworICAgICAgfQorICAgIH0KK30KKworIyByZW1vdmUgZHVwbGljYXRlIHBhY2thZ2VzIChrZWVwIGxhdGVzdCB2ZXJzaW9ucykKKyMgbW92ZSBoYWxmIGRvd25sb2FkZWQgZmlsZXMgb3V0IG9mIHRoZSB3YXkKKyMgZGVsZXRlIGNvcnJ1cHRlZCBmaWxlcworcHJpbnQgIlxuUHJvY2Vzc2luZyBkb3dubG9hZGVkIGZpbGVzLi4uKGZvciBjb3JydXB0L29sZC9wYXJ0aWFsKVxuIjsKK215ICV2ZXJzOyAjIHBhY2thZ2UgPT4gdmVyc2lvbgorbXkgJWZpbGVzOyAjIHBhY2thZ2UtdmVyc2lvbiA9PiBmaWxlcy4uLgorCisjIGNoZWNrIGEgZGViIG9yIHNwbGl0IGRlYiBmaWxlCisjIHJldHVybiAxIGlmIGl0IGEgZGViIGZpbGUsIDIgaWYgaXQgaXMgYSBzcGxpdCBkZWIgZmlsZQorIyBlbHNlIDAKK3N1YiBjaGtkZWIoJCkgeworICAgIG15ICgkZm4pID0gQF87CisgICAgIyBjaGVjayB0byBzZWUgaWYgaXQgaXMgYSAuZGViIGZpbGUKKyAgICBpZighc3lzdGVtKCJkcGtnLWRlYiAtLWluZm8gJGZuIDI+JjEgPi9kZXYvbnVsbCAmJiBkcGtnLWRlYiAtLWNvbnRlbnRzICRmbiAyPiYxID4vZGV2L251bGwiKSkgeworCXJldHVybiAxOworICAgIH0gZWxzaWYoIXN5c3RlbSgiZHBrZy1zcGxpdCAtLWluZm8gJGZuIDI+JjEgPi9kZXYvbnVsbCIpKSB7CisJcmV0dXJuIDI7CisgICAgfQorICAgIHJldHVybiAwOworfQorc3ViIGdldGRlYmluZm8oJCkgeworICAgIG15ICgkZm4pID0gQF87CisgICAgbXkgJHR5cGUgPSBjaGtkZWIoJGZuKTsKKyAgICBteSAoJHBrZywgJHZlcik7CisgICAgaWYoJHR5cGUgPT0gMSkgeworCW9wZW4oUEtHRklMRSwgImRwa2ctZGViIC0tZmllbGQgJGZuIHwiKTsKKwlteSAlZmllbGRzID0gZ2V0YmxrKFwqUEtHRklMRSk7CisJY2xvc2UoUEtHRklMRSk7CisJJHBrZyA9ICRmaWVsZHN7J3BhY2thZ2UnfTsKKwkkdmVyID0gJGZpZWxkc3sndmVyc2lvbid9OworCWlmKCRmaWVsZHN7J3BhY2thZ2VfcmV2aXNpb24nfSkgeyAkdmVyIC49ICctJyAuICRmaWVsZHN7J3BhY2thZ2VfcmV2aXNpb24nfTsgfQorCXJldHVybiAkcGtnLCAkdmVyOworICAgIH0gZWxzaWYgKCAkdHlwZSA9PSAyKSB7CisJb3BlbihQS0dGSUxFLCAiZHBrZy1zcGxpdCAtLWluZm8gJGZufCIpOworCXdoaWxlKDxQS0dGSUxFPikgeworCSAgICAvUGFydCBvZiBwYWNrYWdlOlxzKihcUyspLyBhbmQgJHBrZyA9ICQrOworCSAgICAvXC5cLlwuIHZlcnNpb246XHMqKFxTKykvIGFuZCAkdmVyID0gJCs7CisJfQorCWNsb3NlKFBLR0ZJTEUpOworCXJldHVybiAkcGtnLCAkdmVyOworICAgIH0KKyAgICBwcmludCAiY291bGQgbm90IGZpZ3VyZSBvdXQgdHlwZSBvZiAkZm5cbiI7CisgICAgcmV0dXJuICRwa2csICR2ZXI7Cit9CisKKyMgcHJvY2VzcyBkZWIgZmlsZSB0byBtYWtlIHN1cmUgd2Ugb25seSBrZWVwIGxhdGVzdCB2ZXJzaW9ucworc3ViIHByY2RlYigkJCkgeworICAgIG15ICgkZGlyLCAkZm4pID0gQF87CisgICAgbXkgKCRwa2csICR2ZXIpID0gZ2V0ZGViaW5mbygkZm4pOworICAgIGlmKCFkZWZpbmVkKCRwa2cpIHx8ICFkZWZpbmVkKCR2ZXIpKSB7CisJcHJpbnQgImNvdWxkIG5vdCBnZXQgcGFja2FnZSBpbmZvIGZyb20gZmlsZVxuIjsKKwlyZXR1cm4gMDsKKyAgICB9CisgICAgaWYoJHZlcnN7JHBrZ30pIHsKKwlpZihkY21wdmVycygkdmVyc3skcGtnfSwgImVxIiwgJHZlcikpIHsKKwkgICAgJGZpbGVzeyRwa2cgLiAkdmVyfSA9IFsgJGZpbGVzeyRwa2cgLiAkdmVyIH0sICIkZGlyLyRmbiIgXTsKKwl9IGVsc2lmIChkY21wdmVycygkdmVyc3skcGtnfSwgImd0IiwgJHZlcikpIHsKKwkgICAgcHJpbnQgIm9sZCB2ZXJzaW9uXG4iOworCSAgICB1bmxpbmsgJGZuOworCX0gZWxzZSB7ICMgZWxzZSAkdmVyIGlzIGd0IGN1cnJlbnQgdmVyc2lvbgorCSAgICBteSAoJGMpOworCSAgICBmb3JlYWNoICRjIChAeyRmaWxlc3skcGtnIC4gJHZlcnN7JHBrZ319fSkgeworCQlwcmludCAicmVwbGFjZXM6ICRjXG4iOworCQl1bmxpbmsgIiR2YXJkaXIvbWV0aG9kcy9mdHAvJGRsZGlyLyRjIjsKKwkgICAgfQorCSAgICAkdmVyc3skcGtnfSA9ICR2ZXI7CisJICAgICRmaWxlc3skcGtnIC4gJHZlcn0gPSBbICIkZGlyLyRmbiIgXTsKKwl9CisgICAgfSBlbHNlIHsKKwkkdmVyc3skcGtnfSA9ICR2ZXI7CisJJGZpbGVzeyRwa2cgLiAkdmVyfSA9IFsgIiRkaXIvJGZuIiBdOworICAgIH0KK30KKworc3ViIHByY2ZpbGUoKSB7CisgICAgbXkgKCRmbikgPSAkXzsKKyAgICBpZiAoLWYgJGZuIGFuZCAkZm4gbmUgJy4nKSB7CisgICAgICAgIG15ICRkaXIgPSAiLiI7CisJaWYgKGxlbmd0aCgkRmlsZTo6RmluZDo6ZGlyKSA+IGxlbmd0aCgkZGxkaXIpKSB7CisgICAgICAgICAgICAkZGlyID0gc3Vic3RyKCRGaWxlOjpGaW5kOjpkaXIsIGxlbmd0aCgkZGxkaXIpKzEpOworCX0KKwlwcmludCAiJGRpci8kZm5cbiI7CisJaWYoZGVmaW5lZCgkcGtnZmlsZXN7IiRkaXIvJGZuIn0pKSB7CisJICAgIG15IEBpbmZvID0gQHskcGtnZmlsZXN7IiRkaXIvJGZuIn19OworCSAgICBteSAkc2l6ZSA9IC1zICRmbjsKKwkgICAgaWYoJHNpemUgPT0gMCkgeworCQlwcmludCAiemVybyBsZW5ndGggZmlsZVxuIjsKKwkJdW5saW5rICRmbjsKKwkgICAgfSBlbHNpZigkc2l6ZSA8ICRpbmZvWzFdKSB7CisJCXByaW50ICJwYXJ0aWFsIGZpbGVcbiI7CisJCXJlbmFtZSAkZm4sICIkZm4ucGFydGlhbCI7CisJICAgIH0gZWxzaWYoKCAoZXhpc3RzICRtZDVzdW1zeyIkZGxkaXIvJGZuIn0pCisJICAgICAgICAgICAgICBhbmQgKCRtZDVzdW1zeyIkZGxkaXIvJGZuIn0gbmUgJGluZm9bMF0pICkKKwkJICAgICBvcgorCSAgICAgICAgICAgIChtZDVzdW0oJGZuKSBuZSAkaW5mb1swXSkpIHsKKwkJcHJpbnQgImNvcnJ1cHQgZmlsZVxuIjsKKwkJdW5saW5rICRmbjsKKwkgICAgfSBlbHNlIHsKKwkJcHJjZGViKCRkaXIsICRmbik7CisJICAgIH0KKwl9IGVsc2lmKCRmbiA9fiAvLmRlYiQvKSB7CisJICAgIGlmKGNoa2RlYigkZm4pKSB7CisJCXByY2RlYigkZGlyLCAkZm4pOworCSAgICB9IGVsc2UgeworCQlwcmludCAiY29ycnVwdCBmaWxlXG4iOworCQl1bmxpbmsgJGZuOworCSAgICB9CisJfSBlbHNlIHsKKwkgICAgcHJpbnQgIm5vbi1kZWJpYW4gZmlsZVxuIjsKKwl9CisgICAgfQorfQorZmluZChcJnByY2ZpbGUsICIkZGxkaXIvIik7CisKKyMgaW5zdGFsbCAuZGVicworaWYoeWVzbm8oInkiLCAiXG5EbyB5b3Ugd2FudCB0byBpbnN0YWxsIHRoZSBmaWxlcyBmZXRjaGVkIikpIHsKKyAgICBwcmludCAiSW5zdGFsbGluZyBmaWxlcy4uLlxuIjsKKyAgICAjSW5zdGFsbGluZyBwcmUtZGVwZW5kZW50IHBhY2thZ2UgYmVmb3JlICEKKyAgICBteSAoQGZsZHMsICRwYWNrYWdlLCBAZmlsZW5hbWUsICRyKTsKKyAgICB3aGlsZSAoQGZsZHMgPSBgZHBrZyAtLXByZWRlcC1wYWNrYWdlYCwgJD8gPT0gMCkgeworICAgICAgZm9yZWFjaCAoQGZsZHMpIHsKKyAgICAgICAgcy9ccypcbi8vOworCSRwYWNrYWdlPSAkXyBpZiBzL15QYWNrYWdlOiAvL2k7CisJQGZpbGVuYW1lPSBzcGxpdCgvICsvLCRfKSBpZiBzL15GaWxlbmFtZTogLy9pOworICAgICAgfQorICAgICAgQGZpbGVuYW1lID0gbWFwIHsgIiRkbGRpci8kXyIgfSBAZmlsZW5hbWU7CisgICAgICBuZXh0IGlmICghIEBmaWxlbmFtZSk7CisgICAgICAkciA9IHN5c3RlbSgnZHBrZycsICctaUInLCAnLS0nLCBAZmlsZW5hbWUpOworICAgICAgaWYgKCRyKSB7IHByaW50ICJEUEtHIEVSUk9SXG4iOyAkZXhpdCA9IDE7IH0KKyAgICB9CisgICAgI0luc3RhbGxpbmcgb3RoZXIgcGFja2FnZXMgYWZ0ZXIKKyAgICAkciA9IHN5c3RlbSgiZHBrZyIsICItaUdSRU9CIiwgJGRsZGlyKTsKKyAgICBpZigkcikgeworCXByaW50ICJEUEtHIEVSUk9SXG4iOworCSRleGl0ID0gMTsKKyAgICB9Cit9CisKK3N1YiByZW1vdmVpbnN0YWxsZWQgeworICAgIG15ICRmbiA9ICRfOworICAgIGlmICgtZiAkZm4gYW5kICRmbiBuZSAnLicpIHsKKyAgICAgICAgbXkgJGRpciA9ICIuIjsKKwlpZiAobGVuZ3RoKCRGaWxlOjpGaW5kOjpkaXIpID4gbGVuZ3RoKCRkbGRpcikpIHsKKyAgICAgICAgICAgICRkaXIgPSBzdWJzdHIoJEZpbGU6OkZpbmQ6OmRpciwgbGVuZ3RoKCRkbGRpcikrMSk7CisJfQorCWlmKCRmbiA9fiAvLmRlYiQvKSB7CisJICAgIG15KCRwa2csICR2ZXIpID0gZ2V0ZGViaW5mbygkZm4pOworCSAgICBpZighZGVmaW5lZCgkcGtnKSB8fCAhZGVmaW5lZCgkdmVyKSkgeworCQlwcmludCAiQ291bGQgbm90IGdldCBpbmZvIGZvcjogJGRpci8kZm5cbiI7CisJICAgIH0gZWxzZSB7CisJCWlmKCRjdXJwa2dzeyRwa2d9IGFuZCBkY21wdmVycygkdmVyLCAibGUiLCAkY3VycGtnc3skcGtnfSkpIHsKKwkJICAgIHByaW50ICJkZWxldGluZzogJGRpci8kZm5cbiI7CisJCSAgICB1bmxpbmsgJGZuOworCQl9IGVsc2UgeworCQkgICAgcHJpbnQgImxlYXZpbmc6ICRkaXIvJGZuXG4iOworCQl9CisJICAgIH0KKwl9IGVsc2UgeworCSAgICBwcmludCAibm9uLWRlYmlhbjogJGRpci8kZm5cbiI7CisJfQorICAgIH0KK30KKworIyByZW1vdmUgLmRlYnMgdGhhdCBoYXZlIGJlZW4gaW5zdGFsbGVkIChxdWVyeSB1c2VyKQorIyBmaXJzdCBuZWVkIHRvIHJlcHJvY2VzcyBzdGF0dXMgZmlsZQoraWYoeWVzbm8oInkiLCAiXG5EbyB5b3Ugd2lzaCB0byBkZWxldGUgdGhlIGluc3RhbGxlZCBwYWNrYWdlICguZGViKSBmaWxlcz8iKSkgeworICAgIHByaW50ICJSZW1vdmluZyBpbnN0YWxsZWQgZmlsZXMuLi5cbiI7CisgICAgJWN1cnBrZ3MgPSAoKTsKKyAgICBwcm9jc3RhdHVzKCk7CisgICAgZmluZChcJnJlbW92ZWluc3RhbGxlZCwgIiRkbGRpci8iKTsKK30KKworIyByZW1vdmUgd2hvbGUgLi9kZWJpYW4gZGlyZWN0b3J5IGlmIHVzZXIgd2FudHMgdG8KK2lmKHllc25vKCJuIiwgIlxuRG8geW91IHdhbnQgdG8gcmVtb3ZlICRkbGRpciBkaXJlY3Rvcnk/IikpIHsKKyAgICBybXRyZWUoIiRkbGRpciIpOworfQorCisjU3RvcmUgdXNlZnVsIG1kNXN1bXMKK2ZvcmVhY2ggKGtleXMgJW1kNXN1bXMpIHsKKyAgbmV4dCBpZiAoLWYgJF8pOworICBkZWxldGUgJG1kNXN1bXN7JF99OworfQorb3BlbihNRDVTVU1TLCAiPiRtZXRoZGlyL21kNXN1bXMiKSB8fAorICBkaWUgIkNhbid0IG9wZW4gJG1ldGhkaXIvbWQ1c3VtcyBpbiB3cml0ZSBtb2RlIDogJCFcbiI7CitwcmludCBNRDVTVU1TIER1bXBlcihcJW1kNXN1bXMpOworY2xvc2UgTUQ1U1VNUzsKKworZXhpdCAkZXhpdDsKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9tZXRob2RzL2Z0cC9uYW1lcyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9tZXRob2RzL2Z0cC9uYW1lcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42NDk5Mjc5Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L21ldGhvZHMvZnRwL25hbWVzCkBAIC0wLDAgKzEgQEAKKzYwIGZ0cCBJbnN0YWxsIHVzaW5nIGZ0cC4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9tZXRob2RzL2Z0cC9zZXR1cCBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9tZXRob2RzL2Z0cC9zZXR1cApuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwLi42MWZiN2UwCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L21ldGhvZHMvZnRwL3NldHVwCkBAIC0wLDAgKzEsMTc2IEBACisjIS91c3IvYmluL3BlcmwKKyMgLSotcGVybC0qLQorIworIyBDb3B5cmlnaHQgwqkgMTk5NiBBbmR5IEd1eSA8YXdwZ3V5QGFjcy51Y2FsZ2FyeS5jYT4KKyMgQ29weXJpZ2h0IMKpIDE5OTggTWFydGluIFNjaHVsemUgPGpvZXlAaW5mb2Ryb20ubm9ydGguZGU+CisjIENvcHlyaWdodCDCqSAxOTk5LCAyMDA5IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KKyMKKyMgVGhpcyBwcm9ncmFtIGhhcyBiZWVuIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdQTC4KKwordXNlIHN0cmljdDsKK3VzZSB3YXJuaW5nczsKKwordXNlIHZhcnMgcXcoJWNvbmZpZyk7CisjdXNlIGRpYWdub3N0aWNzOworCit1c2UgbGliICcvdXNyL2xpYi9wZXJsNS9EZWJpYW4nOwordXNlIGxpYiAnL3Vzci9zaGFyZS9wZXJsNS9EZWJpYW4nOworCitldmFsICd1c2UgTmV0OjpGVFA7JzsKK2lmICgkQCkgeworICAgIHByaW50IFNUREVSUiAiUGxlYXNlIGluc3RhbGwgdGhlICdwZXJsJyBwYWNrYWdlIGlmIHlvdSB3YW50IHRvIHVzZSB0aGVcbiIgLgorICAgICAgICAgICAgICAgICAiRlRQIGFjY2VzcyBtZXRob2Qgb2YgZHNlbGVjdC5cblxuIjsKKyAgICBleGl0IDE7Cit9Cit1c2UgRHNlbGVjdDo6RnRwOworCisjIGRlYWwgd2l0aCBhcmd1bWVudHMKK215ICR2YXJkaXIgPSAkQVJHVlswXTsKK215ICRtZXRob2QgPSAkQVJHVlsxXTsKK215ICRvcHRpb24gPSAkQVJHVlsyXTsKKworaWYgKCRvcHRpb24gZXEgIm1hbnVhbCIpIHsKKyAgICBwcmludCAiTWFudWFsIHBhY2thZ2UgaW5zdGFsbGF0aW9uLlxuIjsKKyAgICBleGl0IDA7Cit9CisjcHJpbnQgInZhcmRpcjogJHZhcmRpciwgbWV0aG9kOiAkbWV0aG9kLCBvcHRpb246ICRvcHRpb25cbiI7CisKKyNEZWZhdWx0cworbXkgJGFyY2g9YGRwa2cgLS1wcmludC1hcmNoaXRlY3R1cmVgOworJGFyY2g9J2kzODYnIGlmICQ/OworY2hvbXAgJGFyY2g7CisKK215ICRsb2duYW1lID0gYHdob2FtaWA7CitjaG9tcCAkbG9nbmFtZTsKK215ICRob3N0ID0gYGNhdCAvZXRjL21haWxuYW1lIHx8IGRuc2RvbWFpbm5hbWVgOworY2hvbXAgJGhvc3Q7CisKKyRjb25maWd7J2RsZGlyJ30gPSAiZGViaWFuIjsKKyRjb25maWd7J3VzZV9hdXRoX3Byb3h5J30gPSAwOworJGNvbmZpZ3sncHJveHlob3N0J30gPSAiIjsKKyRjb25maWd7J3Byb3h5bG9nbmFtZSd9ID0gJGxvZ25hbWU7CiskY29uZmlneydwcm94eXBhc3N3b3JkJ30gPSAiIjsKKworbXkgJG1ldGhkaXIgPSAiJHZhcmRpci9tZXRob2RzL2Z0cCI7CitteSAkZXhpdCA9IDA7CitteSAkcHJvYmxlbSA9IDA7CisKK2lmICgtZiAiJG1ldGhkaXIvdmFycyIpIHsKKyAgcmVhZF9jb25maWcoIiRtZXRoZGlyL3ZhcnMiKTsKK30KKworY2hkaXIgIiRtZXRoZGlyIjsKK2lmICghIC1kICJkZWJpYW4iKSB7CisgICAgbWtkaXIgImRlYmlhbiIsIDA3NTU7Cit9CisjIGdldCBpbmZvIGZyb20gdXNlcgorCiskfCA9IDE7CisKK3ByaW50IDw8RU9NOworCitZb3UgbXVzdCBzdXBwbHkgYW4gZnRwIHNpdGUsIHVzZSBvZiBwYXNzaXZlIG1vZGUsIHVzZXJuYW1lLCBwYXNzd29yZCwKK3BhdGggdG8gdGhlIGRlYmlhbiBkaXJlY3RvcnksbGlzdCBvZiBkaXN0cmlidXRpb25zIHlvdSBhcmUgaW50ZXJlc3RlZAoraW4gYW5kIHBsYWNlIHRvIGRvd25sb2FkIHRoZSBiaW5hcnkgcGFja2FnZSBmaWxlcyB0byAocmVsYXRpdmUgdG8KKy92YXIvbGliL2Rwa2cvbWV0aG9kcy9mdHApLiBZb3UgY2FuIGFkZCBhcyBtdWNoIHNpdGVzIGFzIHlvdSBsaWtlLiBMYXRlcgorZW50cmllcyB3aWxsIGFsd2F5cyBvdmVycmlkZSBvbGRlciBvbmVzLgorCitTdXBwbHkgIj8iIGFzIGEgcGFzc3dvcmQgdG8gYmUgYXNrZWQgZWFjaCB0aW1lIHlvdSBjb25uZWN0LgorCitFZzogICAgICBmdHAgc2l0ZTogZnRwLmRlYmlhbi5vcmcKKyAgICAgICAgICBwYXNzaXZlOiB5CisgICAgICAgICB1c2VybmFtZTogYW5vbnltb3VzCisgICAgICAgICBwYXNzd29yZDogJGxvZ25hbWVcQCRob3N0CisgICAgICAgICAgZnRwIGRpcjogL2RlYmlhbgorICAgIGRpc3RyaWJ1dGlvbnM6IGRpc3RzL3N0YWJsZS9tYWluIGRpc3RzL3N0YWJsZS9jb250cmliCisgICAgIGRvd25sb2FkIGRpcjogZGViaWFuCisKK0lmIHlvdSB3YW50IHRvIGluc3RhbGwgcGFja2FnZSBmcm9tIG5vbi1VUyBjb25zaWRlciBhZGRpbmcgYSBzZWNvbmQgZnRwIHNpdGUKK3dpdGggImRlYmlhbi1ub24tVVMiIGFzIGRlYmlhbiBkaXJlY3RvcnkgYW5kICJkaXN0cy9zdGFibGUvbm9uLVVTIiBhcworZGlzdHJpYnV0aW9uLgorCitZb3UgbWF5IGhhdmUgdG8gdXNlIGFuIGF1dGhlbnRpY2F0ZWQgRlRQIHByb3h5IGluIG9yZGVyIHRvIHJlYWNoIHRoZQorRlRQIHNpdGU6CisKK0VnOiAgdXNlIGF1dGggcHJveHk6IHkKKyAgICAgICAgICAgICAgcHJveHk6IHByb3h5LmlzcC5jb20KKyAgICAgIHByb3h5IGFjY291bnQ6ICRjb25maWd7J3Byb3h5bG9nbmFtZSd9CisgICAgIHByb3h5IHBhc3N3b3JkOiA/CitFT00KKworaWYgKCEgJGNvbmZpZ3snZG9uZSd9KSB7CisgIHZpZXdfbWlycm9ycygpIGlmICh5ZXNubygieSIsICJXb3VsZCB5b3UgbGlrZSB0byBzZWUgYSBsaXN0IG9mIGZ0cCBtaXJyb3JzIikpOworICBhZGRfc2l0ZSgpOworfQorZWRpdF9jb25maWcoJG1ldGhkaXIpOworCitteSAkZnRwOworc3ViIGRvd25sb2FkKCkgeworIGZvcmVhY2ggKEB7JGNvbmZpZ3snc2l0ZSd9fSkgeworCisgICAgJGZ0cCA9IGRvX2Nvbm5lY3QgKCRfLT5bMF0sICMgRnRwIHNlcnZlcgorICAgICAgICAgICAgICAgICAgICAgICAkXy0+WzRdLCAjIHVzZXJuYW1lCisJCSAgICAgICAkXy0+WzVdLCAjIHBhc3N3b3JkCisJCSAgICAgICAkXy0+WzFdLCAjIGZ0cCBkaXIKKwkJICAgICAgICRfLT5bM10sICMgcGFzc2l2ZQorCQkgICAgICAgJGNvbmZpZ3sndXNlX2F1dGhfcHJveHknfSwKKwkJICAgICAgICRjb25maWd7J3Byb3h5aG9zdCd9LAorCQkgICAgICAgJGNvbmZpZ3sncHJveHlsb2duYW1lJ30sCisJCSAgICAgICAkY29uZmlneydwcm94eXBhc3N3b3JkJ30pOworCisgICAgbXkgQGRpc3RzID0gQHskXy0+WzJdfTsKKworICAgIG15ICRkaXN0OworICAgIGZvcmVhY2ggJGRpc3QgKEBkaXN0cykgeworCW15ICRkaXIgPSAiJGRpc3QvYmluYXJ5LSRhcmNoIjsKKwlwcmludCAiQ2hlY2tpbmcgJGRpci4uLlxuIjsKKyMJaWYoISRmdHAtPnBhc3YoKSkgeyBwcmludCAkZnRwLT5tZXNzYWdlIC4gIlxuIjsgZGllICJlcnJvciI7IH0KKwlteSBAZGlybHN0ID0gJGZ0cC0+bHMoIiRkaXIvIik7CisJbXkgJGdvdF9wa2dmaWxlID0gMDsKKwlteSAkbGluZSA9ICIiOworCWZvcmVhY2ggJGxpbmUgKEBkaXJsc3QpIHsKKwkgICAgaWYoJGxpbmUgPX4gL1BhY2thZ2VzLykgeworCQkkZ290X3BrZ2ZpbGU9MTsKKwkgICAgfQorCX0KKwlpZiggISRnb3RfcGtnZmlsZSkgeworCSAgICBwcmludCAiV2FybmluZzogQ291bGQgbm90IGZpbmQgYSBQYWNrYWdlcyBmaWxlIGluICRkaXJcbiIsCisJICAgICJUaGlzIG1heSBub3QgYmUgYSBwcm9ibGVtIGlmIHRoZSBkaXJlY3RvcnkgaXMgYSBzeW1ib2xpYyBsaW5rXG4iOworCSAgICAkcHJvYmxlbT0xOworCX0KKyAgICB9CisgICAgcHJpbnQgIkNsb3NpbmcgZnRwIGNvbm5lY3Rpb24uLi5cbiI7CisgICAgJGZ0cC0+cXVpdCgpOworICB9Cit9CisKKyMgZG93bmxvYWQgc3R1ZmYgKHByb3RlY3QgZnJvbSBeQykKK3ByaW50ICJcblVzaW5nIEZUUCB0byBjaGVjayBkaXJlY3Rvcmllcy4uLihzdG9wIHdpdGggXkMpXG5cbiI7CitldmFsIHsKKyAgICBsb2NhbCAkU0lHe0lOVH0gPSBzdWIgeworCWRpZSAiSW50ZXJydXB0ZWQhXG4iOworICAgIH07CisgICAgZG93bmxvYWQoKTsKK307CitpZigkQCkgeworICAgICRmdHAtPnF1aXQoKTsKKyAgICBwcmludCAiRlRQIEVSUk9SIC0gIjsKKyAgICBpZiAoJEAgZXEgImNvbm5lY3QiKSB7CisJcHJpbnQgImNvbmZpZyB3YXMgdW50ZXN0ZWRcbiI7CisgICAgfSBlbHNlIHsKKwlwcmludCAiJEBcbiI7CisgICAgfQorICAgICRleGl0ID0gMTsKK307CisKKyMgb3V0cHV0IG5ldyB2YXJzIGZpbGUKKyRjb25maWd7J2RvbmUnfSA9IDE7CitzdG9yZV9jb25maWcoIiRtZXRoZGlyL3ZhcnMiKTsKK2NobW9kICAwNjAwLCAiJG1ldGhkaXIvdmFycyI7CisKK2lmKCRleGl0IHx8ICRwcm9ibGVtKSB7CisgICAgcHJpbnQgIlByZXNzIHJldHVybiB0byBjb250aW51ZVxuIjsKKyAgICA8U1RESU4+OworfQorCitleGl0ICRleGl0OwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L21ldGhvZHMvZnRwL3VwZGF0ZSBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9tZXRob2RzL2Z0cC91cGRhdGUKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMC4uNTcwMDI4ZAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9tZXRob2RzL2Z0cC91cGRhdGUKQEAgLTAsMCArMSwyNDggQEAKKyMhL3Vzci9iaW4vcGVybAorIyAtKi1wZXJsLSotCisjCisjIENvcHlyaWdodCDCqSAxOTk2IEFuZHkgR3V5IDxhd3BndXlAYWNzLnVjYWxnYXJ5LmNhPgorIyBDb3B5cmlnaHQgwqkgMTk5OCBNYXJ0aW4gU2NodWx6ZSA8am9leUBpbmZvZHJvbS5ub3J0aC5kZT4KKyMgQ29weXJpZ2h0IMKpIDE5OTksIDIwMDkgUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorIworIyBUaGlzIHByb2dyYW0gaGFzIGJlZW4gZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR1BMLgorCit1c2Ugc3RyaWN0OwordXNlIHdhcm5pbmdzOworCisjdXNlIGRpYWdub3N0aWNzOworCit1c2UgbGliICcvdXNyL2xpYi9wZXJsNS9EZWJpYW4nOwordXNlIGxpYiAnL3Vzci9zaGFyZS9wZXJsNS9EZWJpYW4nOworCitldmFsICd1c2UgTmV0OjpGVFA7JzsKK2lmICgkQCkgeworICAgIHByaW50IFNUREVSUiAiUGxlYXNlIGluc3RhbGwgdGhlICdwZXJsJyBwYWNrYWdlIGlmIHlvdSB3YW50IHRvIHVzZSB0aGVcbiIgLgorICAgICAgICAgICAgICAgICAiRlRQIGFjY2VzcyBtZXRob2Qgb2YgZHNlbGVjdC5cblxuIjsKKyAgICBleGl0IDE7Cit9CisKK3VzZSBEc2VsZWN0OjpGdHA7CisKKyMgZGVhbCB3aXRoIGFyZ3VtZW50cworbXkgJHZhcmRpciA9ICRBUkdWWzBdOworbXkgJG1ldGhvZCA9ICRBUkdWWzFdOworbXkgJG9wdGlvbiA9ICRBUkdWWzJdOworCitpZiAoJG9wdGlvbiBlcSAibWFudWFsIikgeworICAgIHByaW50ICJFbnRlciBwYWNrYWdlIGZpbGUgbmFtZXMgb3IgYSBibGFuayBsaW5lIHRvIGZpbmlzaFxuIjsKKyAgICB3aGlsZSgxKSB7CisJcHJpbnQgIkVudGVyIHBhY2thZ2UgZmlsZSBuYW1lOiI7CisJbXkgJGZuID0gPFNURElOPjsKKwljaG9tcCAkZm47CisJaWYgKCAkZm4gPT0gIiIpIHsKKwkgICAgZXhpdCAwOworCX0KKwlpZiAoIC1mICRmbiApIHsKKwkgICAgc3lzdGVtICgiZHBrZyIsICItLW1lcmdlLWF2YWlsIiwgJGZuKTsKKwl9IGVsc2UgeworCSAgICBwcmludCAiQ291bGQgbm90IGZpbmQgJGZuLCB0cnkgYWdhaW5cbiI7CisJfQorICAgIH07Cit9OworCisjcHJpbnQgInZhcmRpcjogJHZhcmRpciwgbWV0aG9kOiAkbWV0aG9kLCBvcHRpb246ICRvcHRpb25cbiI7CisKK215ICRhcmNoPWBkcGtnIC0tcHJpbnQtYXJjaGl0ZWN0dXJlYDsKKyRhcmNoPSdpMzg2JyBpZiAkPzsKK2Nob21wICRhcmNoOworbXkgJGV4aXQgPSAwOworCisjIGdldCBpbmZvIGZyb20gY29udHJvbCBmaWxlCityZWFkX2NvbmZpZygiJHZhcmRpci9tZXRob2RzL2Z0cC92YXJzIik7CisKK2NoZGlyICIkdmFyZGlyL21ldGhvZHMvZnRwIjsKKworcHJpbnQgIkdldHRpbmcgUGFja2FnZXMgZmlsZXMuLi4oc3RvcCB3aXRoIF5DKVxuXG4iOworCitteSBAcGtnZmlsZXM7CitteSAkZnRwOworbXkgJHBhY2thZ2VzX21vZGlmaWVkID0gMDsKKworc3ViIGRvd25sb2FkIHsKK2ZvcmVhY2ggKEB7JGNvbmZpZ3snc2l0ZSd9fSkgeworCisgICBteSAkc2l0ZSA9ICRfOworCisgICAgICAgICRmdHAgPSBkb19jb25uZWN0ICgkXy0+WzBdLCAjIEZ0cCBzZXJ2ZXIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICRfLT5bNF0sICMgdXNlcm5hbWUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICRfLT5bNV0sICMgcGFzc3dvcmQKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICRfLT5bMV0sICMgZnRwIGRpcgorICAgICAgICAgICAgICAgICAgICAgICAgICAgJF8tPlszXSwgIyBwYXNzaXZlCisgICAgICAgICAgICAgICAgICAgICAgICAgICAkY29uZmlneyd1c2VfYXV0aF9wcm94eSd9LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgJGNvbmZpZ3sncHJveHlob3N0J30sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAkY29uZmlneydwcm94eWxvZ25hbWUnfSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICRjb25maWd7J3Byb3h5cGFzc3dvcmQnfSk7CisKKyAgICBteSBAZGlzdHMgPSBAeyRfLT5bMl19OworICAgIG15ICRkaXN0OworICAgIFBBQ0tBR0U6CisgICAgZm9yZWFjaCAkZGlzdCAoQGRpc3RzKSB7CisJbXkgJGRpciA9ICIkZGlzdC9iaW5hcnktJGFyY2giOworCW15ICRtdXN0X2dldCA9IDA7CisJbXkgJG5ld2VzdF9wYWNrX2RhdGU7CisKKwkjIGNoZWNrIGV4aXN0aW5nIFBhY2thZ2VzIG9uIHJlbW90ZSBzaXRlCisJcHJpbnQgIlxuQ2hlY2tpbmcgZm9yIFBhY2thZ2VzIGZpbGUuLi4gIjsKKwkkbmV3ZXN0X3BhY2tfZGF0ZSA9IGRvX21kdG0gKCRmdHAsICIkZGlyL1BhY2thZ2VzLmd6Iik7CisJaWYgKGRlZmluZWQgJG5ld2VzdF9wYWNrX2RhdGUpIHsKKwkgICAgcHJpbnQgIiRkaXIvUGFja2FnZXMuZ3pcbiI7CisJfSBlbHNlIHsKKwkgICAgJGRpciA9ICIkZGlzdCI7CisJICAgICRuZXdlc3RfcGFja19kYXRlID0gZG9fbWR0bSAoJGZ0cCwgIiRkaXIvUGFja2FnZXMuZ3oiKTsKKwkgICAgaWYgKGRlZmluZWQgJG5ld2VzdF9wYWNrX2RhdGUpIHsKKwkJcHJpbnQgIiRkaXIvUGFja2FnZXMuZ3pcbiI7CisJICAgIH0gZWxzZSB7CisJCXByaW50ICJDb3VsZG4ndCBmaW5kIFBhY2thZ2VzLmd6IGluICRkaXN0L2JpbmFyeS0kYXJjaCBvciAkZGlzdDsgaWdub3JpbmcuXG4iOworCQlwcmludCAiWW91ciBzZXR1cCBpcyBwcm9iYWJseSB3cm9uZywgY2hlY2sgdGhlIGRpc3RyaWJ1dGlvbnMgZGlyZWN0b3JpZXMsXG4iOworCQlwcmludCAiYW5kIHRyeSB3aXRoIHBhc3NpdmUgbW9kZSBlbmFibGVkL2Rpc2FibGVkIChpZiB5b3UgdXNlIGEgcHJveHkvZmlyZXdhbGwpXG4iOworCQluZXh0IFBBQ0tBR0U7CisJICAgIH0KKwl9CisKKwkjIHdlIG5vdyBoYXZlICRkaXIgc2V0IHRvIHBvaW50IHRvIGFuIGV4aXN0aW5nIFBhY2thZ2VzLmd6IGZpbGUKKworCSMgY2hlY2sgaWYgd2UgYWxyZWFkeSBoYXZlIGEgUGFja2FnZXMgZmlsZSAoYW5kIGdldCBpdHMgZGF0ZSkKKwkkZGlzdCA9fiB0ci9cLy9fLzsKKwlteSAkZmlsZSA9ICJQYWNrYWdlcy4kc2l0ZS0+WzBdLiRkaXN0IjsKKworCSMgaWYgbm90CisJaWYgKCEgLWYgJGZpbGUpIHsKKwkgICAgIyBtdXN0IGdldCBvbmUKKyMJICAgIHByaW50ICJObyBQYWNrYWdlcyBoZXJlOyBtdXN0IGdldCBpdC5cbiI7CisJICAgICRtdXN0X2dldCA9IDE7CisJfSBlbHNlIHsKKwkgICAgIyBlbHNlIGNoZWNrIGxhc3QgbW9kaWZpY2F0aW9uIGRhdGUKKyAgICAgICAgICAgIG15IEBwYWNrX3N0YXQgPSBzdGF0KCRmaWxlKTsKKwkgICAgaWYoJG5ld2VzdF9wYWNrX2RhdGUgPiAkcGFja19zdGF0WzldKSB7CisjCQlwcmludCAiUGFja2FnZXMgaGFzIGNoYW5nZWQ7IG11c3QgZ2V0IGl0LlxuIjsKKwkJJG11c3RfZ2V0ID0gMTsKKwkgICAgfSBlbHNpZiAoJG5ld2VzdF9wYWNrX2RhdGUgPCAkcGFja19zdGF0WzldKSB7CisJCXByaW50ICIgT3VyIGZpbGUgaXMgbmV3ZXIgdGhhbiB0aGVpcnM7IHNraXBwaW5nLlxuIjsKKwkgICAgfSBlbHNlIHsKKwkJcHJpbnQgIiBBbHJlYWR5IHVwLXRvLWRhdGU7IHNraXBwaW5nLlxuIjsKKwkgICAgfQorCX0KKworCWlmICgkbXVzdF9nZXQpIHsKKwkgICAgLWYgIlBhY2thZ2VzLmd6IiBhbmQgdW5saW5rICJQYWNrYWdlcy5neiI7CisJICAgIC1mICJQYWNrYWdlcyIgYW5kIHVubGluayAiUGFja2FnZXMiOworCSAgICBteSAkc2l6ZSA9IDA7CisKKwkgIFRSWV9HRVRfUEFDS0FHRVM6CisJICAgIHdoaWxlICgxKSB7CisJCWlmICgkc2l6ZSkgeworCQkgICAgcHJpbnQgIiBDb250aW51aW5nICI7CisJCX0gZWxzZSB7CisJCSAgICBwcmludCAiIEdldHRpbmcgIjsKKwkJfQorCQlwcmludCAiUGFja2FnZXMgZmlsZSBmcm9tICRkaXIuLi5cbiI7CisJCWV2YWwgeworCQkgICAgaWYgKCRmdHAtPmdldCgiJGRpci9QYWNrYWdlcy5neiIsICJQYWNrYWdlcy5neiIsICRzaXplKSkgeworCQkJaWYgKHN5c3RlbSgiZ3VuemlwIiwgIlBhY2thZ2VzLmd6IikpIHsKKwkJCSAgICBwcmludCAiICBDb3VsZG4ndCBndW56aXAgUGFja2FnZXMuZ3osIHN0b3BwZWQiOworCQkJICAgIGRpZSAiZXJyb3IiOworCQkJfQorCQkgICAgfSBlbHNlIHsKKwkJCXByaW50ICIgIENvdWxkbid0IGdldCBQYWNrYWdlcy5neiBmcm9tICRkaXIgISEhIFN0b3BwZWQuIjsKKwkJCWRpZSAiZXJyb3IiOworCQkgICAgfQorCQl9OworCQlpZiAoJEApIHsKKwkJICAgICRzaXplID0gLXMgIlBhY2thZ2VzLmd6IjsKKwkJICAgIGlmIChyZWYoJGZ0cCkpIHsKKwkJICAgICAgJGZ0cC0+YWJvcnQoKTsKKwkJICAgICAgJGZ0cC0+cXVpdCgpOworCQkgICAgfTsKKwkJICAgIGlmICh5ZXNubyAoInkiLCAiVHJhbnNmZXIgZmFpbGVkIGF0ICRzaXplOiByZXRyeSBhdCBvbmNlIikpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgICAkZnRwID0gZG9fY29ubmVjdCAoJHNpdGUtPlswXSwgIyBGdHAgc2VydmVyCisgICAgICAgICAgICAgICAgICAgICAgICAgICAkc2l0ZS0+WzRdLCAjIHVzZXJuYW1lCisgICAgICAgICAgICAgICAgICAgICAgICAgICAkc2l0ZS0+WzVdLCAjIHBhc3N3b3JkCisgICAgICAgICAgICAgICAgICAgICAgICAgICAkc2l0ZS0+WzFdLCAjIGZ0cCBkaXIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICRzaXRlLT5bM10sICMgcGFzc2l2ZQorICAgICAgICAgICAgICAgICAgICAgICAgICAgJGNvbmZpZ3sndXNlX2F1dGhfcHJveHknfSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICRjb25maWd7J3Byb3h5aG9zdCd9LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgJGNvbmZpZ3sncHJveHlsb2duYW1lJ30sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAkY29uZmlneydwcm94eXBhc3N3b3JkJ30pOworCisJCQlpZiAoJG5ld2VzdF9wYWNrX2RhdGUgIT0gZG9fbWR0bSAoJGZ0cCwgIiRkaXIvUGFja2FnZXMuZ3oiKSkgeworCQkJICAgIHByaW50ICgiUGFja2FnZXMgZmlsZSBoYXMgY2hhbmdlZCAhXG4iKTsKKwkJCSAgICAkc2l6ZSA9IDA7CisJCQl9CisJCQluZXh0IFRSWV9HRVRfUEFDS0FHRVM7CisJCSAgICB9IGVsc2UgeworCQkJZGllICJlcnJvciI7CisJCSAgICB9CisJCX0KKwkJbGFzdCBUUllfR0VUX1BBQ0tBR0VTOworCSAgICB9CisKKwkgICAgaWYoIXJlbmFtZSAiUGFja2FnZXMiLCAiUGFja2FnZXMuJHNpdGUtPlswXS4kZGlzdCIpIHsKKwkJcHJpbnQgIiAgQ291bGRuJ3QgcmVuYW1lIFBhY2thZ2VzIHRvIFBhY2thZ2VzLiRzaXRlLT5bMF0uJGRpc3QiOworCQlkaWUgImVycm9yIjsKKwkgICAgfSBlbHNlIHsKKwkJIyBzZXQgbG9jYWwgUGFja2FnZXMgZmlsZSB0byBzYW1lIGRhdGUgYXMgdGhlIG9uZSBpdCBtaXJyb3JzCisJCSMgdG8gYWxsb3cgY29tcGFyaXNvbiB0byB3b3JrLgorCQl1dGltZSAkbmV3ZXN0X3BhY2tfZGF0ZSwgJG5ld2VzdF9wYWNrX2RhdGUsICJQYWNrYWdlcy4kc2l0ZS0+WzBdLiRkaXN0IjsKKwkJJHBhY2thZ2VzX21vZGlmaWVkID0gMTsKKwkgICAgfQorCX0KKwlwdXNoIEBwa2dmaWxlcywgIlBhY2thZ2VzLiRzaXRlLT5bMF0uJGRpc3QiOworICAgIH0KKyAgICAkZnRwLT5xdWl0KCk7CisgfQorfQorCitldmFsIHsKKyAgICBsb2NhbCAkU0lHe0lOVH0gPSBzdWIgeworCWRpZSAiSW50ZXJydXB0ZWQhXG4iOworICAgIH07CisgICAgZG93bmxvYWQoKTsKK307CitpZigkQCkgeworICAgICRmdHAtPnF1aXQoKSBpZiAocmVmKCRmdHApKTsKKyAgICBpZigkQCA9fiAvdGltZW91dC9pKSB7CisJcHJpbnQgIkZUUCBUSU1FT1VUXG4iOworICAgIH0gZWxzZSB7CisJcHJpbnQgIkZUUCBFUlJPUiAtICRAXG4iOworICAgIH0KKyAgICAkZXhpdCA9IDE7Cit9OworCitteSAkYW5zOworCitpZiAoJHBhY2thZ2VzX21vZGlmaWVkKSB7CSMgZG9uJ3QgY2xlYXIgaWYgbm90aGluZyBjaGFuZ2VkCisgICAgcHJpbnQgPDxFT007CisKK0l0IGlzIGEgZ29vZCBpZGVhIHRvIGNsZWFyIHRoZSBhdmFpbGFibGUgbGlzdCBvZiBvbGQgcGFja2FnZXMuCitIb3dldmVyIGlmIHlvdSBoYXZlIG9ubHkgZG93bmxvYWRlZCBhIFBhY2thZ2UgZmlsZXMgZnJvbSBub24tbWFpbgorZGlzdHJpYnV0aW9ucyB5b3UgbWlnaHQgbm90IHdhbnQgdG8gZG8gdGhpcy4KKworRU9NCisgICAgaWYgKHllc25vICgieSIsICJEbyB5b3Ugd2FudCB0byBjbGVhciBhdmFpbGFibGUgbGlzdCIpKSB7CisJcHJpbnQgIkNsZWFyaW5nLi4uXG4iOworCWlmKHN5c3RlbSgiZHBrZyIsICItLWNsZWFyLWF2YWlsIikpIHsKKwkgICAgcHJpbnQgImRwa2cgLS1jbGVhci1hdmFpbCBmYWlsZWQuIjsKKwkgICAgZGllICJlcnJvciI7CisJfQorICAgIH0KK30KKworaWYgKCEkcGFja2FnZXNfbW9kaWZpZWQpIHsKKyAgICBwcmludCAiTm8gUGFja2FnZXMgZmlsZXMgd2FzIHVwZGF0ZWQuXG4iOworfSBlbHNlIHsKKyAgICBteSAkZmlsZTsKKworICAgIGZvcmVhY2ggJGZpbGUgKEBwa2dmaWxlcykgeworCWlmKHN5c3RlbSAoImRwa2ciLCAiLS1tZXJnZS1hdmFpbCIsICRmaWxlKSkgeworCSAgICBwcmludCAiRHBrZyBtZXJnZSBhdmFpbGFibGUgZmFpbGVkIG9uICRmaWxlIjsKKwkgICAgJGV4aXQgPSAxOworCX0KKyAgICB9Cit9CitleGl0ICRleGl0OwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L21ldGhvZHMvbXVsdGljZC9SRUFETUUubXVsdGljZCBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9tZXRob2RzL211bHRpY2QvUkVBRE1FLm11bHRpY2QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzU5ZDA4MQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9tZXRob2RzL211bHRpY2QvUkVBRE1FLm11bHRpY2QKQEAgLTAsMCArMSwxMTcgQEAKK0luc3RhbGxhdGlvbiBtZXRob2RzIGZvciBtdWx0aXBsZSBiaW5hcnkgQ0RzCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCisgVGhpcyBwYWNrYWdlIHByb3ZpZGVzIHRocmVlIG5ldyBtZXRob2RzIHRvIGJlIHVzZWQgd2l0aGluIGRzZWxlY3QgaW4KKyBvcmRlciB0byBhY2Nlc3MgRGViaWFuIGJpbmFyeSBwYWNrYWdlcyBzdG9yZWQgYWNyb3NzIG11bHRpcGxlIGJpbmFyeSBDRAorIFJPTXMuICBJdCB3aWxsIGluc3RhbGwgaXRzZWxmIGludG8gdGhlIG1ldGhvZHMgZGlyZWN0b3J5IGZyb20gZHNlbGVjdAorIHNvIHRoZSB1c2VyIHdpbGwgYmUgYWJsZSB0byB1c2UgdGhlbSBpbW1lZGlhdGVseS4KKworIFRoZXNlIGFyZSB0aGUgdGhyZWUgbmV3IG1ldGhvZHM6CisKKyAgLiBNdWx0aXBsZSBiaW5hcnkgQ0QtUk9NcworCisgIC4gTXVsdGlwbGUgYmluYXJ5IENELVJPTXMsIGFjY2Vzc2VkIHRocm91Z2ggTkZTCisKKyAgLiBNdWx0aXBsZSBiaW5hcnkgQ0QtUk9NcywgcHJlLW1vdW50ZWQKKworQWNxdWlyaW5nIHBhY2thZ2UgZGF0YQorLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKKyBTaW5jZSB0aGlzIG1ldGhvZCBpcyBkZXJpdmVkIGZyb20gdGhlIGBtb3VudGVkJyBtZXRob2QgdGhlIHVzZXIgaXMKKyBhYmxlIHRvIGFjY2VzcyB1cCB0byBmaXZlIGJpbmFyeSBkaXJlY3RvcmllcyB3aXRoaW4gYGRpc3RzL3N0YWJsZSc6CisKKyAgLiBtYWluCisgIC4gY29udHJpYgorICAuIG5vbi1mcmVlCisgIC4gbm9uLVVTCisgIC4gbG9jYWwKKworIFRoZSBzZWxlY3RlZCBtZXRob2Qgd2lsbCB0cnkgdG8gcmVhZCB0aGUgYFBhY2thZ2VzLmNkJyBmaWxlIGZyb20gZWFjaAorIG9mIHRoZXNlIGRpcmVjdG9yaWVzIGlmIGl0IGlzIGF2YWlsYWJsZS4KKworSWRlbnRpZnlpbmcgdGhlIENELVJPTQorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCisgQSB1bmlxdWUgbmFtZSBpcyBhc3NvY2lhdGVkIHRvIGVhY2ggQ0QuICBUaGlzIG5hbWUgc2hvdWxkIGNvcnJlc3BvbmQKKyB3aXRoIHRoZSBsYWJlbCBvbiB0aGUgZnJvbnQgb2YgdGhlIENELiAgVGhlIG5hbWUgaXMgYWxzbyBhdmFpbGFibGUgb24KKyB0aGUgQ0QsIHNvIHRoZSBzeXN0ZW0gY2FuIGZpbmQgb3V0IHdoaWNoIENEIGlzIGluIHRoZSBkcml2ZSBhdCBhbnkKKyB0aW1lLgorCitJbnN0YWxsaW5nIHRoZSBmaWxlcworLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworIEF0IHRoZSBiZWdpbm5pbmcgb2YgdGhlIGluc3RhbGxhdGlvbiB0aGUgYG11bHRpY2QnIHBhY2thZ2Ugd2lsbCBzb3J0CisgdGhlIGxpc3Qgb2YgdG8tYmUtaW5zdGFsbGVkIHBhY2thZ2VzIGFuZCBpbnN0YWxsIHRoZW0gQ0QgYnkgQ0QuICBJZiBhCisgZGlmZmVyZW50IENELVJPTSBpcyByZXF1aXJlZCB0aGUgdXNlciB3aWxsIGJlIHByb21wdGVkIHRvIGV4Y2hhbmdlCisgdGhlIENELVJPTS4KKworUHJlcGFyaW5nIG11bHRpcGxlIGJpbmFyeSBDRC1ST01zCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworIFNpbmNlIHRoZSBgbXVsdGljZCcgbWV0aG9kcyBuZWVkIHRvIGtub3cgd2hpY2ggcGFja2FnZXMgYXJlIG9uIHdoaWNoCisgQ0QtUk9NcyBvbmUgY2Fubm90IHVzZSByZWd1bGFyIGBQYWNrYWdlcycgZmlsZXMuICBBbiBhZGRpdGlvbmFsIGRhdGEKKyBmaWVsZCAiWC1NZWRpdW06IiBpcyByZXF1aXJlZC4gIFRoZSBmaXJzdCBDRC1ST00gZnJvbSB0aGUgc2V0IHNob3VsZAorIGNvbnRhaW4gYWxsIGBQYWNrYWdlcy5jZCcgZmlsZXMuICBUbyBiZSBtb3JlIGNvbnZlbmllbnQgeW91IHNob3VsZAorIGluY2x1ZGUgdGhlIGBQYWNrYWdlcy5jZCcgZmlsZXMgb24gYWxsIENELVJPTXMuICBUaGlzIGVuc3VyZXMgdGhhdAorIHlvdSBkb24ndCBoYXZlIHRvIHN0YXJ0IHdpdGggdGhlIGZpcnN0IENELVJPTSBhbGwgdGhlIHRpbWUuCisKKyBBZGRpdGlvbmFsbHkgdGhlIHBhY2thZ2UgbmVlZHMgdG8gZ2FpbiBpbmZvcm1hdGlvbiB3aGljaCBDRC1ST00gaXMKKyBjdXJyZW50bHkgdXNlZC4gIFRodXMgZWFjaCBDRC1ST00gY29udGFpbnMgdGhlIGZpbGUgYC5kaXNrL2luZm8nCisgd2hpY2ggY29udGFpbnMgdGhlIHN5bWJvbGljIG5hbWUgZm9yIHRoZSBDRC1ST00gYXMgc3BlY2lmaWVkIGJ5CisgIlgtTWVkaXVtOiIuCisKKyBJbiBvcmRlciB0byBiZSBhYmxlIHRvIGNyZWF0ZSB0aGUgbW9kaWZpZWQgYFBhY2thZ2VzLmNkJyBmaWxlcywgeW91CisgaGF2ZSB0byB1c2UgdGhlIGAtTSBtZWRpdW0nIG9wdGlvbiBvZiBkcGtnLXNjYW5wYWNrYWdlcyAoc3VwcG9ydGVkCisgaW4gZHBrZy1kZXYgPj0gMS4xNS41KS4KKworIFRvIHNwbGl0IHRoZSBgbWFpbicgZGlzdHJpYnV0aW9uIGludG8gdHdvIENELVJPTXMgeW91J2xsIG5lZWQgdG8KKyBjcmVhdGUgYSBgUGFja2FnZXMuY2QnIGZpbGUgZm9yIGVhY2ggYGJpbmFyeS0kYXJjaCcgZGlyZWN0b3J5LgorIEFmdGVyd2FyZHMgeW91IHNpbXBseSBhcHBlbmQgdGhlIHNlY29uZCBvbmUgdG8gdGhlIGZpcnN0IG9uZSBhbmQKKyBwdXQgdGhlIHJlc3VsdGluZyBgUGFja2FnZXMuY2QnIGZpbGUgaW50byBib3RoIGBiaW5hcnktJGFyY2gnCisgZGlyZWN0b3JpZXMuCisKK1NhbXBsZSBMYXlvdXQKKy0tLS0tLS0tLS0tLS0KKworIENEMSAuZGlzay9pbmZvID0gIkRlYmlhbiBHTlUvTGludXggYmluYXJ5LWkzODYiCisgICAgIGRpc3RzL3N0YWJsZS9tYWluL2JpbmFyeS1hbGwvCisgICAgICAgICAgICAgICAgICAgICAgIGJpbmFyeS1pMzg2L1BhY2thZ2VzLmNkLmd6CisgICAgICAgICAgICAgICAgICAgICAgIGJpbmFyeS1pMzg2L25ldC9mb28uZGViCisgICAgICAgICAgICAgICAgICBjb250cmliL2JpbmFyeS1pMzg2L1BhY2thZ2VzLmNkLmd6CisgICAgICAgICAgICAgICAgICBub24tZnJlZS9iaW5hcnktaTM4Ni9QYWNrYWdlcy5jZC5negorICAgICAgICAgICAgICAgICAgbm9uLVVTL2JpbmFyeS1pMzg2L1BhY2thZ2VzLmNkLmd6CisKKyBDRDIgLmRpc2svaW5mbyA9ICJEZWJpYW4gR05VL0xpbnV4IGNvbnRyaWItaTM4NiIKKyAgICAgZGlzdHMvc3RhYmxlL21haW4vYmluYXJ5LWkzODYvUGFja2FnZXMuY2QuZ3oKKyAgICAgICAgICAgICAgICAgIGNvbnRyaWIvYmluYXJ5LWFsbC8KKyAgICAgICAgICAgICAgICAgICAgICAgICAgYmluYXJ5LWkzODYvUGFja2FnZXMuY2QuZ3oKKyAgICAgICAgICAgICAgICAgICAgICAgICAgYmluYXJ5LWkzODYvbmV0L2Zvby5kZWIKKyAgICAgICAgICAgICAgICAgIG5vbi1mcmVlL2JpbmFyeS1pMzg2L1BhY2thZ2VzLmNkLmd6CisgICAgICAgICAgICAgICAgICBub24tVVMvYmluYXJ5LWkzODYvUGFja2FnZXMuY2QuZ3oKKworIENEMyAuZGlzay9pbmZvID0gIkRlYmlhbiBHTlUvTGludXggbm9uLWZyZWUtaTM4NiIKKyAgICAgZGlzdHMvc3RhYmxlL21haW4vYmluYXJ5LWkzODYvUGFja2FnZXMuY2QuZ3oKKyAgICAgICAgICAgICAgICAgIGNvbnRyaWIvYmluYXJ5LWkzODYvUGFja2FnZXMuY2QuZ3oKKyAgICAgICAgICAgICAgICAgIG5vbi1mcmVlL2JpbmFyeS1hbGwvCisgICAgICAgICAgICAgICAgICAgICAgICAgICBiaW5hcnktaTM4Ni9QYWNrYWdlcy5jZC5negorICAgICAgICAgICAgICAgICAgICAgICAgICAgYmluYXJ5LWkzODYvbmV0L2Zvby5kZWIKKyAgICAgICAgICAgICAgICAgIG5vbi1VUy9iaW5hcnktYWxsLworCisgVG8gcmUtZ2VuZXJhdGUgdGhlIFBhY2thZ2VzIGZpbGUgeW91IGhhdmUgdG8gY2hkaXIgaW50bworIGBkaXN0cy9zdGFibGUvJHBhcnQnIGFuZCBpc3N1ZSBgZHBrZy1zY2FucGFja2FnZXMnIGFzIGZvbGxvd3MuICBJdCdzCisgYXNzdW1lZCB0aGF0IHlvdSB1c2UgcmVndWxhciBjb21wcmVzc2VkIG92ZXJyaWRlcyBmaWxlcyBpbgorIC9wdWIvZGViaWFuL2luZGljZXMuCisKKyBDRDE6IGRwa2ctc2NhbnBhY2thZ2VzIC1NICJEZWJpYW4gR05VL0xpbnV4IGJpbmFyeS1pMzg2IiBcCisgICAgICAgIGJpbmFyeS1pMzg2IC9wdWIvZGViaWFuL2luZGljZXMvb3ZlcnJpZGUuaGFtbS5neiBcCisgICAgICAgIGRpc3RzL3N0YWJsZS8gPiBiaW5hcnktaTM4Ni9QYWNrYWdlcworCisgQ0QyOiBkcGtnLXNjYW5wYWNrYWdlcyAtTSAiRGViaWFuIEdOVS9MaW51eCBjb250cmliLWkzODYiIFwKKyAgICAgICAgYmluYXJ5LWkzODYgL3B1Yi9kZWJpYW4vaW5kaWNlcy9vdmVycmlkZS5oYW1tLmNvbnRyaWIuZ3ogXAorICAgICAgICBkaXN0cy9zdGFibGUvID4gYmluYXJ5LWkzODYvUGFja2FnZXMKKworIENEMzogZHBrZy1zY2FucGFja2FnZXMgLU0gIkRlYmlhbiBHTlUvTGludXggbm9uLWZyZWUtaTM4NiIgXAorICAgICAgICBiaW5hcnktaTM4NiAvcHViL2RlYmlhbi9pbmRpY2VzL292ZXJyaWRlLmhhbW0ubm9uLWZyZWUuZ3ogXAorICAgICAgICBkaXN0cy9zdGFibGUvID4gYmluYXJ5LWkzODYvUGFja2FnZXMKKworUGxlYXNlIGRpcmVjdCBjb21tZW50cyB0byBNYXJ0aW4gU2NodWx6ZSA8am9leUBpbmZvZHJvbS5ub3J0aC5kZT4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9tZXRob2RzL211bHRpY2QvZGVzYy5tdWx0aV9jZCBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9tZXRob2RzL211bHRpY2QvZGVzYy5tdWx0aV9jZApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43NmU3NWQ0Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L21ldGhvZHMvbXVsdGljZC9kZXNjLm11bHRpX2NkCkBAIC0wLDAgKzEsMyBAQAorSW5zdGFsbGF0aW9uIGZyb20gYSBDRC1ST00gc2V0IGNvbnRhaW5pbmcgYSBEZWJpYW4gZGlzdHJpYnV0aW9uLiAgVGhlCitDRC1ST01zIG1heSBiZSBvciBub3QgYmUgbW91bnRlZCBhbHJlYWR5IGFuZCBzaG91bGQgY29udGFpbiBhIHN0YW5kYXJkCitJU085NjYwIENELVJPTSBmaWxlc3lzdGVtLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L21ldGhvZHMvbXVsdGljZC9kZXNjLm11bHRpX21vdW50IGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L21ldGhvZHMvbXVsdGljZC9kZXNjLm11bHRpX21vdW50Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmIzZTdhNjQKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvbWV0aG9kcy9tdWx0aWNkL2Rlc2MubXVsdGlfbW91bnQKQEAgLTAsMCArMSwxMiBAQAorSW5zdGFsbGF0aW9uIGZyb20gYSBwcmUtbW91bnRlZCBkaXJlY3Rvcnkgd2l0aCBjaGFuZ2luZyBjb250ZW50LgorCitUaGUgZGlyZWN0b3J5IGNvbnRhaW5zIHRoZSBQYWNrYWdlcy5neiBmaWxlIGZyb20gZWFjaCBkaXN0cmlidXRpb24KK2FyZWEgYmVpbmcgaW5zdGFsbGVkICh1c3VhbGx5IG1haW4sIGNvbnRyaWIsIG5vbi1mcmVlLCBsb2NhbCBhbmQKK2V2ZW50dWFsbHkgbm9uLVVTKSBhcyB3ZWxsIGFzIGFuIGV4Y2VycHQgb2YgdGhlIGNvcnJlc3BvbmRpbmcKK2JpbmFyeS8qLyouZGViIGZpbGVzLgorCitUaGUgZWFzaWVzdCB3YXkgZm9yIHRoZW0gdG8gZ2V0IHRoaXMgaXMgdG8gbWFrZSBhIChwYXJ0aWFsKSBjb3B5IG9mCit0aGUgZGlzdHJpYnV0aW9uIHNpdGUncyBkaXJlY3RvcnkgaGllcmFyY2h5LCBpZiBwb3NzaWJsZS4KKworVGhlIGNvbnRlbnRzIG9mIHRoZSBtb3VudGVkIGRpcmVjdG9yeSBtYXkgY2hhbmdlLiAgVGh1cyBpdCdzIHBvc3NpYmxlCit0byB1c2UgdGhpcyBtZXRob2QgZm9yIGluc3RhbGxhdGlvbnMgZnJvbSBpbWFnZXMgb2YgYSBDRFJPTSBzZXQuCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvbWV0aG9kcy9tdWx0aWNkL2Rlc2MubXVsdGlfbmZzIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L21ldGhvZHMvbXVsdGljZC9kZXNjLm11bHRpX25mcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lYWQ1NjY1Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L21ldGhvZHMvbXVsdGljZC9kZXNjLm11bHRpX25mcwpAQCAtMCwwICsxLDEyIEBACitJbnN0YWxsYXRpb24gYWNyb3NzIHRoZSBuZXR3b3JrLCBmcm9tIGFuIE5GUyBzZXJ2ZXIgd2hpY2ggaXMgbm90CitjdXJyZW50bHkgbW91bnRlZC4KKworVGhlIHNlcnZlciBzaG91bGQgY29udGFpbiB0aGUgUGFja2FnZXMuZ3ogZmlsZSBmcm9tIGVhY2ggZGlzdHJpYnV0aW9uCithcmVhIGJlaW5nIGluc3RhbGxlZCAodXN1YWxseSBtYWluLCBjb250cmliLCBub24tZnJlZSwgbG9jYWwgYW5kCitldmVudHVhbGx5IG5vbi1VUykgYXMgd2VsbCBhcyB0aGUgY29ycmVzcG9uZGluZyBiaW5hcnkvKi8qLmRlYiBmaWxlcy4KKworVGhlIGVhc2llc3Qgd2F5IGZvciB0aGVtIHRvIGdldCB0aGlzIGlzIHRvIG1ha2UgYSAocGFydGlhbCkgY29weSBvZgordGhlIGRpc3RyaWJ1dGlvbiBzaXRlJ3MgZGlyZWN0b3J5IGhpZXJhcmNoeSwgaWYgcG9zc2libGUuCisKK1RoZSBjb250ZW50cyBvZiB0aGUgbW91bnRlZCBkaXJlY3RvcnkgbWF5IGNoYW5nZS4gIFRodXMgaXQncyBwb3NzaWJsZQordG8gdXNlIHRoaXMgbWV0aG9kIGZvciBpbnN0YWxsYXRpb25zIGZyb20gYSBDRFJPTSBzZXQuCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvbWV0aG9kcy9tdWx0aWNkL2luc3RhbGwgYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvbWV0aG9kcy9tdWx0aWNkL2luc3RhbGwKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMC4uZjkyNjJmOQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9tZXRob2RzL211bHRpY2QvaW5zdGFsbApAQCAtMCwwICsxLDMwOSBAQAorIyEvYmluL3NoCisjCisjIENvcHlyaWdodCDCqSAxOTk1LTE5OTggSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuZ3JlZW5lbmQub3JnLnVrPgorIyBDb3B5cmlnaHQgwqkgMTk5OCBIZWlrbyBTY2hsaXR0ZXJtYW5uIDxoZWlrb0Bsb3R0ZS5zYXguZGU+CisjCisjIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisjIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisjIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IHZlcnNpb24gMiBkYXRlZCBKdW5lLCAxOTkxLgorIworIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorIworIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKworc2V0IC1lCit2YXJkaXI9IiQxIgorbWV0aG9kPSQyCitvcHRpb249JDMKKworCitjZCAiJHZhcmRpci9tZXRob2RzLyRtZXRob2QiCisKKy4gLi9zaHZhci4kb3B0aW9uCisKKworI2RlYnVnKCkgeyBlY2hvICJERUJVRzogJEAiOyB9CitkZWJ1ZygpIHsgdHJ1ZTsgfQoraWFyY2g9YGRwa2cgLS1wcmludC1hcmNoaXRlY3R1cmVgCitpc211bHRpKCkgeyB0ZXN0IC1lICIkMS8uZGlzay9pbmZvIiB8fCB0ZXN0IC1lICIkMSQyLy5kaXNrL2luZm8iOyB9CisKKyMgMS8gbW91bnRwb2ludAorIyAyLyBoaWVyYXJjaHkKK2dldGRpc2tsYWJlbCAoKSB7CisgICAgZGVidWcgIiQxIiAiJDIiCisgICAgaWYgWyAtZiAkMS8uZGlzay9pbmZvIF0KKyAgICB0aGVuCisJZWNobyAtbiBgaGVhZCAtMSAiJDEvLmRpc2svaW5mbyJgCisgICAgZWxzZQorICAgICAgICBpZiBbIC1mICQxJDIvLmRpc2svaW5mbyBdCisJdGhlbgorCSAgICBlY2hvIC1uIGBoZWFkIC0xICIkMSQyLy5kaXNrL2luZm8iYAorCWVsc2UKKyAgICAgICAgICAgIGVjaG8gLW4gJ05vbi1EZWJpYW4gZGlzYycKKwlmaQorICAgIGZpCit9CisKK3hpdD0xCisKK2RvX3Vtb3VudCgpIHsKKwlpZiBbICIkbWV0aG9kIiA9ICJtdWx0aV9tb3VudCIgXQorCXRoZW4KKwkJZWNobyAvYmluL3RydWUKKwkJcmV0dXJuCisJZmkKKwlpZiBbIC1uICIkdW1vdW50IiBdOyB0aGVuCisJCWVjaG8gdW1vdW50ICIkdW1vdW50IgorCQkjIj4vZGV2L251bGwiICIyPiYxIgorCWZpCit9CisKK2RvX21vdW50KCkgeworCisJaWYgWyAiJG1ldGhvZCIgPSAibXVsdGlfbW91bnQiIF0KKwl0aGVuCisJCWVjaG8gL2Jpbi90cnVlCisJCXJldHVybgorCWZpCisKKwlpZiBbICEgLWIgIiRwX2Jsb2NrZGV2IiBdCisJdGhlbgorCQlsb29wPSIsbG9vcCIKKwlmaQorCisJaWYgWyAtbiAiJHBfYmxvY2tkZXYiIF0KKwl0aGVuCisJCXVtb3VudD0iJHBfbW91bnRwb2ludCIKKwkJZWNobyBtb3VudCAtcnQgaXNvOTY2MCAtbyBub3N1aWQsbm9kZXYke2xvb3B9ICIkcF9ibG9ja2RldiIgIiRwX21vdW50cG9pbnQiXDsgdW1vdW50PSIkcF9tb3VudHBvaW50IgorCWZpCisKKwlpZiBbIC1uICIkcF9uZnMiIF0KKwl0aGVuCisJCXVtb3VudD0iJHBfbW91bnRwb2ludCIKKwkJZWNobyBtb3VudCAtcnQgbmZzICIkcF9uZnMiIC1vIG5vc3VpZCxub2RldiAiJHBfbW91bnRwb2ludCJcOyB1bW91bnQ9IiRwX21vdW50cG9pbnQiCisJZmkKKworCSNpZiBbIC1uICIkcF9tdWx0aSIgLWEgLW4gIiRwX211bHRpX2NvbnRlbnRzZmlsZSIgXTsgdGhlbgorCQkjZWNobyAiVGhpcyBpcyBkaXNrICIKKwkJI2VjaG8gIiAgICAiYGdldGRpc2tsYWJlbCAiJHtwX21vdW50cG9pbnR9IiAiJHtwX2hpZXJiYXNlfSJgCisJI2ZpCit9CisKK3RyYXAgJ2V2YWwgYGRvX3Vtb3VudGA7IGV4aXQgJHhpdCcgMAorCitldmFsIGBkb19tb3VudGAKKworcHJlZGVwPSIkdmFyZGlyL3ByZWRlcC1wYWNrYWdlIgord2hpbGUgdHJ1ZQorZG8KKwl0aGlzZGlzaz0iYGdldGRpc2tsYWJlbCAke3BfbW91bnRwb2ludH0gJHtwX2hpZXJiYXNlfWAiCisJc2V0ICtlCisJZHBrZyAtLXByZWRlcC1wYWNrYWdlID4iJHByZWRlcCIKKwlyYz0kPworCXNldCAtZQorCWlmIHRlc3QgJHJjID0gMTsgdGhlbiBicmVhazsgZmkKKwl0ZXN0ICRyYyA9IDAKKworCXBlcmwgLWUgJworCQkoJGJpbmFyeXByZWZpeCwkcHJlZGVwLCR0aGlzZGlzaykgPSBAQVJHVjsKKwkJb3BlbihQLCI8ICRwcmVkZXAiKSB8fCBkaWUgImNhbm5vdCBvcGVuICRwcmVkZXA6ICQhXG4iOworCQl3aGlsZSAoPFA+KSB7CisJCQlzL1xzKlxuJC8vOworCQkJJHBhY2thZ2U9ICRfIGlmIHMvXlBhY2thZ2U6IC8vaTsKKwkJCS9eWC1NZWRpdW06XHMrKC4qKVxzKi8gYW5kICRtZWRpdW0gPSAkMTsKKwkJCUBmaWxlbmFtZT0gc3BsaXQoLyAvLCRfKSBpZiBzL15GaWxlbmFtZTogLy9pOworCQkJQG1zZG9zZmlsZW5hbWU9IHNwbGl0KC8gLywkXykgaWYgcy9eTVNET1MtRmlsZW5hbWU6IC8vaTsKKwkJfQorCQlsZW5ndGgoJHBhY2thZ2UpIHx8IGRpZSAiaW50ZXJuYWwgZXJyb3IgLSBubyBwYWNrYWdlIjsKKwkJQGZpbGVuYW1lIHx8IGRpZSAiaW50ZXJuYWwgZXJyb3IgLSBubyBmaWxlbmFtZSI7CisJCUBmaWxlbmFtZT09QG1zZG9zZmlsZW5hbWUgfHwgIUBmaWxlbmFtZSB8fCAhQG1zZG9zZmlsZW5hbWUgfHwKKwkJCWRpZSAiaW50ZXJuYWwgZXJyb3IgLSBtaXNtYXRjaCA+QGZpbGVuYW1lPCA+QG1zZG9zZmlsZW5hbWU8IjsKKwkJaWYgKCRtZWRpdW0gJiYgKCRtZWRpdW0gbmUgJHRoaXNkaXNrKSkgeworCQkJcHJpbnQgIgorCitUaGlzIGlzCisgICAgJHRoaXNkaXNrCitIb3dldmVyLCAkcGFja2FnZSBpcyBleHBlY3RlZCBvbiBkaXNjOgorICAgICRtZWRpdW0KK1BsZWFzZSBjaGFuZ2UgdGhlIGRpc2NzIGFuZCBwcmVzcyA8UkVUVVJOPi4KKworIjsKKwkJCWV4aXQoMSk7CisJCX0KKwkJQGludm9rZT0oKTsgJHw9MTsKKwkJZm9yICgkaT0wOyAkaTw9JCNmaWxlbmFtZTsgJGkrKykgeworCQkJJHBwYXJ0PSAkaSsxOworCQkJcHJpbnQgIkxvb2tpbmcgZm9yIHBhcnQgJHBwYXJ0IG9mICRwYWNrYWdlIC4uLiAiOworCQkJaWYgKC1mICIkYmluYXJ5cHJlZml4JGZpbGVuYW1lWyRpXSIpIHsKKwkJCQkkcHJpbnQ9ICRmaWxlbmFtZVskaV07CisJCQkJJGludm9rZT0gIiRiaW5hcnlwcmVmaXgkZmlsZW5hbWVbJGldIjsKKwkJCX0gZWxzaWYgKC1mICIkYmluYXJ5cHJlZml4JG1zZG9zZmlsZW5hbWVbJGldIikgeworCQkJCSRwcmludD0gJG1zZG9zZmlsZW5hbWVbJGldOworCQkJCSRpbnZva2U9ICIkYmluYXJ5cHJlZml4JG1zZG9zZmlsZW5hbWVbJGldIjsKKwkJCX0gZWxzZSB7CisJCQkJJGJhc2U9ICRmaWxlbmFtZVskaV07ICRiYXNlID1+IHMsLiovLCw7CisJCQkJJG1zZG9zYmFzZT0gJG1zZG9zZmlsZW5hbWVbJGldOyAkbXNkb3NiYXNlID1+IHMsLiovLCw7CisJCQkJZGVmaW5lZCgkYz0gb3BlbihYLCItfCIpKSB8fAorCQkJCQlkaWUgImZhaWxlZCB0byBmb3JrIGZvciBmaW5kOiAkIVxuIjsKKwkJCQlpZiAoISRjKSB7CisJCQkJCWV4ZWMoImZpbmQiLCAiLUwiLAorCQkJCQkgICAgIGxlbmd0aCgkYmluYXJ5cHJlZml4KSA/ICRiaW5hcnlwcmVmaXggOiAiLiIsCisJCQkJCSAgICAgIi1uYW1lIiwkYmFzZSwiLW8iLCItbmFtZSIsJG1zZG9zYmFzZSk7CisJCQkJCWRpZSAiZmFpbGVkIHRvIGV4ZWMgZmluZDogJCFcbiI7CisJCQkJfQorCQkJCXdoaWxlIChjaG9wKCRpbnZva2U9IDxYPikpIHsgbGFzdCBpZiAtZiAkaW52b2tlOyB9CisJCQkJJHByaW50PSAkaW52b2tlOworCQkJCWlmIChzdWJzdHIoJHByaW50LDAsbGVuZ3RoKCRiaW5hcnlwcmVmaXgpKzEpIGVxCisJCQkJICAgICIkYmluYXJ5cHJlZml4LyIpIHsKKwkJCQkJJHByaW50PSBzdWJzdHIoJHByaW50LGxlbmd0aCgkYmluYXJ5cHJlZml4KSk7CisJCQkJfQorCQkJfQorCQkJaWYgKCFsZW5ndGgoJGludm9rZSkpIHsKKwkJCQlwcmludCBTVERFUlIgIgorCitPaCBkZWFyLCBJIG5lZWQgdG8gaW5zdGFsbCBvciB1cGdyYWRlICRwYWNrYWdlLCBidXQgSSBkb24nXCcndCBzZWUKK3RoZSBhcHByb3ByaWF0ZSBmaWxlKHMpIGFueXdoZXJlLiAgSSdcJydtIGV4cGVjdGluZyB2ZXJzaW9uICR2ZXJzaW9uIG9yCitsYXRlciwgYXMgdGhhdCBpcyBsaXN0ZWQgaW4gdGhlIFBhY2thZ2VzLmNkIGZpbGUuCisKK1BlcmhhcHMgeW91IGRvd25sb2FkZWQgaXQgd2l0aCBhbiB1bmV4cGVjdGVkIG5hbWUsIG9yIHNvbWV0aGluZy4KK0luIGFueSBjYXNlLCB5b3UgbXVzdCBmaW5kIHRoZSBmaWxlKHMpIGFuZCB0aGVuIGVpdGhlciBwbGFjZSBpdCB3aXRoCit0aGUgY29ycmVjdCBmaWxlbmFtZShzKSAoYXMgbGlzdGVkIGluIHRoZSBQYWNrYWdlcy5jZCBmaWxlIG9yIGluCisvdmFyL2xpYi9kcGtnL2F2YWlsYWJsZSkgYW5kIHJlcnVuIHRoZSBpbnN0YWxsYXRpb24sIG9yIHVwZ3JhZGUgdGhlCitwYWNrYWdlIGJ5IHVzaW5nIGBkcGtnIC0taW5zdGFsbCAtLWF1dG8tZGVjb25maWd1cmUnXCcnIGJ5IGhhbmQuCisKKyI7CisJCQkJZXhpdCgxKTsKKwkJCX0KKwkJCXByaW50ICIkcHJpbnRcbiI7CisJCQlwdXNoKEBpbnZva2UsJGludm9rZSk7CisJCX0KKwkJcHJpbnQgIlJ1bm5pbmcgZHBrZyAtaUIgZm9yICRwYWNrYWdlIC4uLlxuIjsKKwkJZXhlYygiZHBrZyIsIi1pQiIsIi0tIixAaW52b2tlKTsKKwkJZGllICJmYWlsZWQgdG8gZXhlYyBkcGtnOiAkIVxuIjsKKwknIC0tICIkcF9tb3VudHBvaW50JHBfaGllcmJhc2UiICIkcHJlZGVwIiAiJHRoaXNkaXNrIgorZG9uZQorCisJcGVybCAtZSAnCisJJFNJR3tJTlR9ID0gc3ViIHsgY2QgJHZhcmRpcjsgdW5saW5rIDx0bXAvKj47IGV4aXQgMTsgfTsKKwkkfCA9IDE7CisJbXkgKCR2YXJkaXIsICRtb3VudHBvaW50LCAkaGllcmJhc2UsICRtb3VudCwgJHVtb3VudCkgPSBAQVJHVjsKKwlteSAkbGluZTsKKwlteSAkQVZBSUwgPSAiJHZhcmRpci9tZXRob2RzL211bHRpY2QvYXZhaWxhYmxlIjsKKwlteSAkU1RBVFVTID0gIiR2YXJkaXIvc3RhdHVzIjsKKwlteSAlSW5zdGFsbGVkLCAlRmlsZW5hbWUsICVNZWRpdW07CisJcHJpbnQgIkdldCBjdXJyZW50bHkgaW5zdGFsbGVkIHBhY2thZ2UgdmVyc2lvbnMuLi4iOworCW9wZW4oSU4sICIkU1RBVFVTIikgb3IgZGllICJDYW5ub3Qgb3BlbiAkU1RBVFVTOiAkIVxuIjsKKwkkbGluZSA9IDA7CisJeyBsb2NhbCAkLyA9ICIiOworCXdoaWxlICg8SU4+KSB7CisJCW15ICVzdGF0dXM7CisJCW15IEBwc3RhdDsKKwkJJGxpbmUrKyAlIDIwIG9yIHByaW50ICIuIjsKKwkJcy9cblxzKy8gL2c7CisJCSVzdGF0dXMgPSAgKCIiLCBzcGxpdCAvXihcUyo/KTpccyovbSwgJF8pOworCQltYXAgeyBjaG9tcCAkc3RhdHVzeyRffTsgJHN0YXR1c3skX30gPX4gcy9eXHMqKC4qPylccyokLyQxLzt9IGtleXMgJXN0YXR1czsKKwkJQHBzdGF0ID0gc3BsaXQoLyAvLCAkc3RhdHVze1N0YXR1c30pOworCQluZXh0IHVubGVzcyAoJHBzdGF0WzBdIGVxICJpbnN0YWxsIik7CisJCWlmICgkcHN0YXRbMl0gZXEgImNvbmZpZy1maWxlcyIgfHwgJHBzdGF0WzJdIGVxICJub3QtaW5zdGFsbGVkIikgeworCQkgICAgJEluc3RhbGxlZHskc3RhdHVze1BhY2thZ2V9fSA9ICIwLjAiOworCQl9IGVsc2UgeworCQkgICAgJEluc3RhbGxlZHskc3RhdHVze1BhY2thZ2V9fSA9ICRzdGF0dXN7VmVyc2lvbn0gfHwgIiIgOworCQl9CisJfTsgfQorCXByaW50ICJcbkdvdCAiLCBzY2FsYXIga2V5cyAlSW5zdGFsbGVkLCAiIGluc3RhbGxlZC9wZW5kaW5nIHBhY2thZ2VzXG4iOworCXByaW50ICJTY2FubmluZyBhdmFpbGFibGUgcGFja2FnZXMuLi4iOworCSRsaW5lID0gMDsKKwlvcGVuKElOLCAiJEFWQUlMIikgb3IgZGllKCJDYW5ub3Qgb3BlbiAkQVZBSUw6ICQhXG4iKTsKKwl7IGxvY2FsICQvID0gIiI7CisJd2hpbGUgKDxJTj4pIHsKKwkJbXkgJHVwZGF0ZWQ7CisJCSAkbGluZSsrICUgMjAgb3IgcHJpbnQgIi4iOworCisJCSBzL1xuXHMrLyAvZzsKKwkJICVhdmFpbCAgID0gICgiIiwgc3BsaXQgL14oXFMqPyk6XHMqL20sICRfKTsKKwkJIG1hcCB7IGNob21wICRhdmFpbHskX307ICRhdmFpbHskX30gPX4gcy9eXHMqKC4qPylccyokLyQxLzt9IGtleXMgJWF2YWlsOworCisJCSBuZXh0IHVubGVzcyBkZWZpbmVkICRJbnN0YWxsZWR7JGF2YWlse1BhY2thZ2V9fTsKKworCQkgc3lzdGVtICJkcGtnIiwgIi0tY29tcGFyZS12ZXJzaW9ucyIsICRhdmFpbHtWZXJzaW9ufSwgImd0IiwgJEluc3RhbGxlZHskYXZhaWx7UGFja2FnZX19OworCQkgJHVwZGF0ZWQgPSAoJD8gPT0gMCk7CisJCSAjcHJpbnQgIiRhdmFpbHtQYWNrYWdlfSgiIC4gKCR1cGRhdGVkID8gIisiIDogIj0iKSAuICIpICI7CisJCSAkdXBkYXRlZCBvciBuZXh0OworCisJCSAkRmlsZW5hbWV7JGF2YWlse1BhY2thZ2V9fSA9ICRhdmFpbHtGaWxlbmFtZX07CisKKwkJIG5leHQgdW5sZXNzIGRlZmluZWQgJGF2YWlseyJYLU1lZGl1bSJ9OworCQkgJHtNZWRpdW17JGF2YWlseyJYLU1lZGl1bSJ9fX0gb3IgJHtNZWRpdW17JGF2YWlseyJYLU1lZGl1bSJ9fX0gPSBbXTsKKwkJIHB1c2ggQHske01lZGl1bXskYXZhaWx7IlgtTWVkaXVtIn19fX0sICRhdmFpbHtQYWNrYWdlfTsKKwl9OyB9OworCXByaW50ICJcbiI7CisKKwlpZiAoQF8gPSBrZXlzKCVNZWRpdW0pKSB7CisJCSAgICBwcmludCAiWW91IHdpbGwgbmVlZCB0aGUgZm9sbG93aW5nIGRpc3RyaWJ1dGlvbiBkaXNjKHMpOlxuIiwKKwkJCWpvaW4gKCIsICIsIEBfKSwgIlxuIjsKKwl9CisKKwlmb3JlYWNoICRuZWVkIChzb3J0IEBfKSB7CisJCWlmICgtciAiJG1vdW50cG9pbnQvLmRpc2svaW5mbyIpIHsKKwkJCW9wZW4oSU4sICIkbW91bnRwb2ludC8uZGlzay9pbmZvIikgb3IgZGllKCIkbW91bnRwb2ludC8uZGlzay9pbmZvOiAkIVxuIik7CisJCX0gZWxzZSB7CisJCQlvcGVuKElOLCAiJG1vdW50cG9pbnQvJGhpZXJiYXNlLy5kaXNrL2luZm8iKSBvciBkaWUoIiRtb3VudHBvaW50LyRoaWVyYmFzZS8uZGlzay9pbmZvOiAkIVxuIik7CisJCX0KKwkJJGRpc2sgPSA8SU4+OyBjaG9tcCAkZGlzazsgY2xvc2UoSU4pOworCisJCXByaW50ICJQcm9jZXNzaW5nIGRpc2NcbiAgICRuZWVkXG4iOworCisJCXdoaWxlICgkZGlzayBuZSAkbmVlZCkgeworCQkJcHJpbnQgIldyb25nIGRpc2MuICBUaGlzIGlzIGRpc2NcbiAgICAkZGlza1xuIjsKKwkJCXByaW50ICJIb3dldmVyLCBJIG5lZWQgZGlzY1xuICAgICRuZWVkXG4iOworCQkJcHJpbnQgIlBsZWFzZSBjaGFuZ2UgdGhlIGRpc2NzIGFuZCBwcmVzcyA8UkVUVVJOPlxuIjsKKwkJCXN5c3RlbSgkdW1vdW50KTsKKwkJCTxTVERJTj47CisJCQlzeXN0ZW0oJG1vdW50KTsgJD8gYW5kIHdhcm4oIkNhbm5vdCBtb3VudCAkbW91bnRcbiIpOworCQl9IGNvbnRpbnVlIHsKKwkJCWlmICgtciAiJG1vdW50cG9pbnQvLmRpc2svaW5mbyIpIHsKKwkJCSAgICBvcGVuKElOLCAiJG1vdW50cG9pbnQvLmRpc2svaW5mbyIpIG9yIGRpZSgiJG1vdW50cG9pbnQvLmRpc2svaW5mbzogJCFcbiIpOworCQkJfSBlbHNlIHsKKwkJCSAgICBvcGVuKElOLCAiJG1vdW50cG9pbnQvJGhpZXJiYXNlLy5kaXNrL2luZm8iKSBvciBkaWUoIiRtb3VudHBvaW50LyRoaWVyYmFzZS8uZGlzay9pbmZvOiAkIVxuIik7CisJCQl9CisJCQkkZGlzayA9IDxJTj47IGNob21wICRkaXNrOyBjbG9zZShJTik7CisJCX0KKworCQktZCAidG1wIiB8fCBta2RpciAidG1wIiwgMDc1NSBvciBkaWUoIkNhbm5vdCBta2RpciB0bXA6ICQhXG4iKTsKKwkJdW5saW5rIDx0bXAvKj47CisKKwkJcHJpbnQgImNyZWF0aW5nIHN5bWxpbmtzLi4uXG4iOworCQlmb3JlYWNoIChAeyRNZWRpdW17JG5lZWR9fSkgeworCQkJKCRiYXNlbmFtZSA9ICRGaWxlbmFtZXskX30pID1+IHMvLipcLy8vOworCQkJc3ltbGluayAiJG1vdW50cG9pbnQvJGhpZXJiYXNlLyRGaWxlbmFtZXskX30iLAorCQkJCSJ0bXAvJGJhc2VuYW1lIjsKKwkJfQorCQljaGRpciAidG1wIiBvciBkaWUgIkNhbm5vdCBjaGRpciB0byB0bXA6ICQhXG4iOworCQlzeXN0ZW0gImRwa2ciLCAiLWlHUk9FQiIsICIuIjsKKwkJdW5saW5rIDwqPjsKKwkJY2hkaXIgIi4uIjsKKworCQlpZiAoJD8pIHsKKwkJCXByaW50ICJcblRoZSBkcGtnIHJ1biBwcm9kdWNlZCBlcnJvcnMuICBQbGVhc2UgdGVsbCBtZSwgaWYgSSBzaG91bGRcbiIsCisJCQkJICAiY29udGludWUgd2l0aCB0aGUgbmV4dCBDRC4gW1kvbl06ICI7CisJCQkkYW5zID0gPFNURElOPjsKKwkJCWV4aXQgMSBpZiAkYW5zID1+IC9ebi9pOworCQkJJG91Y2ggPSAkPzsKKwkJfQorCX0KKworCWV4aXQgJG91Y2g7CisKKycgIiR2YXJkaXIiICIkcF9tb3VudHBvaW50IiAiJHBfaGllcmJhc2UiICJgZG9fbW91bnRgIiAiYGRvX3Vtb3VudGAiCisKKworZWNobyAtbiAnSW5zdGFsbGF0aW9uIE9LLiAgSGl0IFJFVFVSTi4gICcKK3JlYWQgcmVzcG9uc2UKKworeGl0PTAKKworIyB2aW06dHM9NDpzdz00OmF3OmFpOgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L21ldGhvZHMvbXVsdGljZC9uYW1lcyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9tZXRob2RzL211bHRpY2QvbmFtZXMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNGE3NGJlMQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9tZXRob2RzL211bHRpY2QvbmFtZXMKQEAgLTAsMCArMSwzIEBACiszMSBtdWx0aV9jZCBJbnN0YWxsIGZyb20gYSBDRC1ST00gc2V0LgorMzYgbXVsdGlfbmZzIEluc3RhbGwgZnJvbSBhbiBORlMgc2VydmVyICh1c2luZyB0aGUgQ0QtUk9NIHNldCkgKG5vdCB5ZXQgbW91bnRlZCkuCis0NiBtdWx0aV9tb3VudCBJbnN0YWxsIGZyb20gYSBtb3VudGVkIHBhcnRpdGlvbiB3aXRoIGNoYW5naW5nIGNvbnRlbnRzLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L21ldGhvZHMvbXVsdGljZC9zZXR1cCBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9tZXRob2RzL211bHRpY2Qvc2V0dXAKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMC4uYzc0ODViNAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9tZXRob2RzL211bHRpY2Qvc2V0dXAKQEAgLTAsMCArMSw2ODUgQEAKKyMhL2Jpbi9zaAorIworIyBUaGUgYG11bHRpY2QnIHBhY2thZ2Ugd2FzIGluaXRpYWxseSB3cml0dGVuIGJ5IEhlaWtvIFNjaGxpdHRlcm1hbm4KKyMgPGhlaWtvQGxvdHRlLnNheC5kZT4gYmFzZWQgb24gYnVpbHRpbiBhY2Nlc3MgbWV0aG9kcyB3cml0dGVuIGJ5IElhbgorIyBKYWNrc29uIDxpYW5AY2hpYXJrLmdyZWVuZW5kLm9yZy51az4uICBUaGUgZmluYWwgcGFja2FnaW5nIGFzIHdlbGwgYXMKKyMgY2xlYW51cHMgd2VyZSBtYWRlIGJ5IE1hcnRpbiBTY2h1bHplIDxqb2V5QGluZm9kcm9tLm5vcnRoLmRlPiB3aG8gYWxzbworIyBwdXQgdGhpcyBwYWNrYWdlIHRvZ2V0aGVyIGZvciB0aGUgc2xpbmsgcmVsZWFzZSAoRGViaWFuIEdOVS9MaW51eAorIyAyLjEpLgorCisjIENvcHlyaWdodCDCqSAxOTk1LTE5OTggSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuZ3JlZW5lbmQub3JnLnVrPgorIyBDb3B5cmlnaHQgwqkgMTk5OCBIZWlrbyBTY2hsaXR0ZXJtYW5uIDxoZWlrb0Bsb3R0ZS5zYXguZGU+CisjCisjIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisjIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisjIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IHZlcnNpb24gMiBkYXRlZCBKdW5lLCAxOTkxLgorIworIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorIworIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKworc2V0IC1lCit2YXJkaXI9IiQxIgorbWV0aG9kPSQyCitvcHRpb249JDMKKwordGVzdCAtZCAiJHZhcmRpci9tZXRob2RzLyRtZXRob2QiIHx8IG1rZGlyICIkdmFyZGlyL21ldGhvZHMvJG1ldGhvZCIKK2NkICIkdmFyZGlyL21ldGhvZHMvJG1ldGhvZCIKK3RwPS90bXAvZGRtJCQKKworaWFyY2g9YGRwa2cgLS1wcmludC1hcmNoaXRlY3R1cmVgCitkaXN0PXN0YWJsZQorCit4aXQ9MQordHJhcCAnCisJcm0gLWYgJHRwLj8KKwlpZiBbIC1uICIkdW1vdW50IiBdCisJdGhlbgorCQl1bW91bnQgIiR1bW91bnQiID4vZGV2L251bGwgMj4mMQorCWZpCisJZXhpdCAkeGl0CisnIDAKKworaWYgbHMgLWQgIiR0cC4/IiA+L2Rldi9udWxsIDI+JjEKK3RoZW4KKwlybSAkdHAuPworZmkKKworI2RlYnVnKCkgeyBlY2hvICJERUJVRzogJEAiOyB9CitkZWJ1ZygpIHsgdHJ1ZTsgfQoraXNtdWx0aSgpIHsgZGVidWcgJDEgJDI7IHRlc3QgLWUgIiQxLy5kaXNrL2luZm8iIHx8IHRlc3QgLWUgIiQxJDIvLmRpc2svaW5mbyI7IH0KKworIyAxLyBtb3VudHBvaW50CisjIDIvIGhpZXJhcmNoeQorZ2V0ZGlza2xhYmVsICgpIHsKKyAgICBkZWJ1ZyAiJDEiICIkMiIKKyAgICBpZiBbIC1mICQxLy5kaXNrL2luZm8gXQorICAgIHRoZW4KKwllY2hvIC1uIGBoZWFkIC0xICIkMS8uZGlzay9pbmZvImAKKyAgICBlbHNlCisgICAgICAgIGlmIFsgLWYgJDEkMi8uZGlzay9pbmZvIF0KKwl0aGVuCisJICAgIGVjaG8gLW4gYGhlYWQgLTEgIiQxJDIvLmRpc2svaW5mbyJgCisJZWxzZQorICAgICAgICAgICAgZWNobyAtbiAnTm9uLURlYmlhbiBkaXNjJworCWZpCisgICAgZmkKK30KKworeWVzbm8gKCkgeworCXdoaWxlIHRydWUKKwlkbworCQllY2hvIC1uICIkMiBbJDFdICAiCisJCXJlYWQgcmVzcG9uc2UKKwkJaWYgWyAteiAiJHJlc3BvbnNlIiBdCisJCXRoZW4KKwkJCXJlc3BvbnNlPSIkMSIKKwkJZmkKKwkJY2FzZSAiJHJlc3BvbnNlIiBpbgorCQlbTm5dKikJeWVzbm89bm8gOyByZXR1cm4gOzsKKwkJW1l5XSopCXllc25vPXllcyA7IHJldHVybiA7OworCQllc2FjCisJZG9uZQorfQorCitnZXRibG9ja2RldiAoKSB7CisJbW91bnRwb2ludD0iJHZhcmRpci9tZXRob2RzL21udCIKKwlpZiBbIC16ICIkZGVmYXVsdGRldmljZSIgXQorCXRoZW4KKwkJZGVmYXVsdGRldmljZT0iJG5ld2RlZmF1bHRkZXZpY2UiCisJZWxpZiBbICIkZGVmYXVsdGRldmljZSIgIT0gIiRuZXdkZWZhdWx0ZGV2aWNlIiBdCisJdGhlbgorCQllY2hvIFwKKwkiTGFzdCB0aW1lIHlvdSBzcGVjaWZpZWQgaW5zdGFsbGF0aW9uIGZyb20gJGRlZmF1bHRkZXZpY2UuIgorCWZpCisJcHJvbXB0c3RyaW5nPSIkMSIKKwl3aGlsZSBbIC16ICIkYmxvY2tkZXZpY2UiIF0KKwlkbworCQllY2hvIC1uICIkcHJvbXB0c3RyaW5nIFskZGVmYXVsdGRldmljZV06ICAiCisJCXJlYWQgcmVzcG9uc2UKKwkJaWYgWyAteiAiJHJlc3BvbnNlIiBdCisJCXRoZW4KKwkJCXJlc3BvbnNlPSIkZGVmYXVsdGRldmljZSIKKwkJZmkKKwkJaWYgWyAhIC1iICIkcmVzcG9uc2UiIF0KKwkJdGhlbgorCQkJZWNobyAiJHJlc3BvbnNlIGlzIG5vdCBhIGJsb2NrIGRldmljZSAtIHdpbGwgdHJ5IGFzIGxvb3BiYWNrLiI7CisJCQlsb29wPSIsbG9vcCIKKwkJZmkKKwkJdHJ5YmxvY2tkZXZpY2U9IiRyZXNwb25zZSIKKwkJaWYgWyAkb3B0aW9uID0gbXVsdGlfY2QgXQorCQl0aGVuCisJCQlmc3R5cGU9aXNvOTY2MAorCQllbGlmIFsgJG9wdGlvbiA9IGhhcmRkaXNrMiBdCisJCXRoZW4KKwkJCWJsb2NrYmFzZT0iYGVjaG8gXCIkdHJ5YmxvY2tkZXZpY2VcIiB8IHNlZCAtZSAncy9bMC05XVx7MSxcfSQvLydgIgorCQkJc2V0ICtlCisJCQlwcmludGYgJ3BcbnFcbicgfCBmZGlzayAiJGJsb2NrYmFzZSIgMj4vZGV2L251bGwgPiR0cC5mCisJCQlzZXQgLWUKKwkJCXByb3Bvc2VkZGV2aWNlPSIkdHJ5YmxvY2tkZXZpY2UiIHBlcmwgLW5lICcKK25leHQgdW5sZXNzIC9eICpEZXZpY2UgK0Jvb3QgK0JlZ2luICtTdGFydCArRW5kICtCbG9ja3MgK0lkICtTeXN0ZW0gKiQvaSAuLiAhL1xTLzsKK25leHQgdW5sZXNzIHM6Xi9cUys6OiAmJiAkJiBlcSAkRU5WeyJwcm9wb3NlZGRldmljZSJ9OworbmV4dCB1bmxlc3Mgcy9eICsoXCogKyk/XGQrICtcZCsgK1xkKyArXGQrXCs/ICsvLzsKK25leHQgdW5sZXNzIG0vXihbMC05YS1mXXsxLDJ9KSAvaTsKKyV0eXBlcz0gKCAiMSIsIm1zZG9zIiwgIjQiLCJtc2RvcyIsICI2IiwibXNkb3MiLCAiNyIsImhwZnMiLCAiODAiLCJtaW5peCIsCisgICAgICAgICAgIjgxIiwibWluaXgiLCAiODMiLCJleHQyIiApOworcHJpbnQgJHR5cGVzeyQxfTsgZXhpdCgwKTsJJyA8JHRwLmYgPiR0cC5tCisJCQlkZWZhdWx0ZnN0eXBlPSJgY2F0ICR0cC5tYCIKKwkJCWlmIFsgLW4gIiRkZWZhdWx0ZnN0eXBlIiBdCisJCQl0aGVuCisJCQkJY2F0IDw8RU5ECitUaGUgcGFydGl0aW9uIHRhYmxlIGZvciAkYmxvY2tiYXNlIGNsYWltcyB0aGF0ICR0cnlibG9ja2RldmljZQorY29udGFpbnMgZmlsZXN5c3RlbSB0eXBlICRkZWZhdWx0ZnN0eXBlLgorRU5ECisJCQkJaWYgISBncmVwICIJJGRlZmF1bHRmc3R5cGUkIiAvcHJvYy9maWxlc3lzdGVtcyA+L2Rldi9udWxsCisJCQkJdGhlbgorCQkJCQllY2hvIFwKKwkiWW91ciBrZXJuZWwgZG9lcyBub3QgYXBwZWFyIHRvIHN1cHBvcnQgdGhhdCBmaWxlc3lzdGVtIHR5cGUuIgorCQkJCQlkZWZhdWx0ZnN0eXBlPSIiCisJCQkJZmkKKwkJCWZpCisJCQllY2hvIC1uICJTdXBwb3J0ZWQgZmlsZXN5c3RlbXM6ICIKKwkJCXNlZCAtZSAncy9eLioJLyAvJyAvcHJvYy9maWxlc3lzdGVtcyB8IHRyICdcbicgJyAnCisJCQllY2hvIC1uICIKK0VudGVyIGZpbGVzeXN0ZW0gdHlwZSAoZm9yICR0cnlibG9ja2RldmljZSkgWyRkZWZhdWx0ZnN0eXBlXTogICIKKwkJCXJlYWQgZnN0eXBlCisJCQlpZiBbIC16ICIkZnN0eXBlIiBdCisJCQl0aGVuCisJCQkJZnN0eXBlPSIkZGVmYXVsdGZzdHlwZSIKKwkJCWZpCisJCWZpCisJCXVtb3VudD0iJG1vdW50cG9pbnQiCisJCWlmIG1vdW50IC1ydCAiJGZzdHlwZSIgLW8gbm9zdWlkLG5vZGV2JGxvb3AgIiR0cnlibG9ja2RldmljZSIgIiRtb3VudHBvaW50IgorCQl0aGVuCisJCQllY2hvCisJCQlibG9ja2RldmljZT0iJHRyeWJsb2NrZGV2aWNlIgorCQllbHNlCisJCQl1bW91bnQ9IiIKKwkJCWVjaG8gXAorCSJVbmFibGUgdG8gbW91bnQgJHRyeWJsb2NrZGV2aWNlIG9uICRtb3VudHBvaW50LCB0eXBlICRmc3R5cGUuIgorCQlmaQorCWRvbmUKK30KKworb3V0cHV0cGFyYW0gKCkgeworCWVjaG8gIiQyIiB8IHNlZCAtZSAicy8nLydcXFxcJycvOyBzL14vJDE9Jy87IHMvJC8nLyIgPiYzCit9CisKKyMjIE1BSU4KK2ludHJrZXk9ImBzdHR5IC1hIHwgc2VkIC1uICdzLy4qaW50ciA9IFwoW147XSpcKTsuKi9cMS9wJ2AiCitlY2hvICIKK0lmIHlvdSBtYWtlIGEgbWlzdGFrZSwgdXNlIHRoZSBpbnRlcnJ1cHQga2V5ICgkaW50cmtleSkgdG8gYWJvcnQuCisiCisKKyMgU3RhdGUgdmFyaWFibGVzLCBgYmVzdCBmaXJzdCcKKyMgIHttYWluLGN0YixuZixub251cyxub251c2N0Yixub251c25mLGxjbH1fe3BhY2thZ2VzLGJpbmFyeX0KKyMgICBFbXB0eSBiZWZvcmUgd2UndmUgZm91bmQgdGhlbSBvciBpZiB0aGV5J3JlIG5vdCBhdmFpbGFibGUsCisjICAgc2V0IHRvIHRoZSByZWxldmFudCBiaXQgdW5kZXIgbW91bnRwb2ludCBvdGhlcndpc2UuCisjICBoaWVyYmFzZQorIyAgIEEgZGlyZWN0b3J5IGNvbnRhaW5pbmcgYSBEZWJpYW4gRlRQIHNpdGUgbWlycm9yIHRyZWUuCisjICBtb3VudHBvaW50CisjICAgVGhlIG1vdW50cG9pbnQgZm9yIHRoZSBmaWxlc3lzdGVtIGNvbnRhaW5pbmcgdGhlIHN0dWZmCisjICAgZW1wdHkgb3IgdW5zZXQgaWYgd2UgZG9uJ3Qga25vdyB5ZXQsIG9yIGlmIHdlIGhhdmVuJ3QgbW91bnRlZCBhbnl0aGluZzsKKyMgICBtYXkgYWxzbyBiZSBlbXB0eSBpZiBgZGlyZWN0b3J5JyB3YXMgc2V0LgorIyAgYmxvY2tkZXZpY2UKKyMgICBUaGUgYWN0dWFsIGJsb2NrIGRldmljZSB0byBtb3VudC4KKyMgIGZzdHlwZQorIyAgIFRoZSBmaWxlc3lzdGVtIHR5cGUgdG8gdXNlLgorIyAgZGVmYXVsdGRldmljZQorIyAgIFRoZSBkZWZhdWx0IGJsb2NrIGRldmljZSB0byBtb3VudC4KKworcF91c2VkZXZlbD1ubworaWYgWyAtZiBzaHZhci4kb3B0aW9uIF0KK3RoZW4KKwkuIC4vc2h2YXIuJG9wdGlvbgorCWRlZmF1bHRkZXZpY2U9IiRwX2Jsb2NrZGV2IgorCWRlZmF1bHRuZnNzZXJ2ZXI9IiRwX25mc3NlcnZlciIKKwlkZWZhdWx0bmZzcmVtcGF0aD0iJHBfbmZzcmVtcGF0aCIKKwl1c2VkZXZlbD0iJHBfdXNlZGV2ZWwiCitmaQorCitpZiBbICRvcHRpb24gPSBtdWx0aV9jZCBdCit0aGVuCisJbW91bnQgPiR0cC5tCisJc2VkIC1uICdzLyAoW14pXSopJC8vOyBzL15bXiBdKiBvbiAvLzsgcy8gdHlwZSBpc285NjYwJC8vcCcgPCR0cC5tID4kdHAubAorCW5jZHJvbXM9YHdjIC1sIDwkdHAubGAKKwlpZiBbICRuY2Ryb21zIC1ndCAxIF0KKwl0aGVuCisJCXJlc3BvbnNlPSIiCisJCXdoaWxlIFsgLXogIiRyZXNwb25zZSIgXQorCQlkbworCQkJZWNobyBcCisJJ1NldmVyYWwgQ0QtUk9NcyAob3Igb3RoZXIgSVNPOTY2MCBmaWxlc3lzdGVtcykgYXJlIG1vdW50ZWQ6JworCQkJZWdyZXAgJ3R5cGUgaXNvOTY2MCBcKFteKV0qXCkkJyA8JHRwLm0gfCBubAorCQkJZWNobyAtbiBcCisJJ0lzIGl0IGFueSBvZiB0aGVzZSA/ICBUeXBlIGEgbnVtYmVyLCBvciBgbidcJycgZm9yIG5vbmUuICAnCisJCQlyZWFkIHJlc3BvbnNlCisJCQlyZXNwb25zZT0iYGVjaG8gXCIkcmVzcG9uc2VcIiB8IHNlZCAtZSAncy9bIAldKiQvLydgIgorCQkJaWYgZXhwciAiJHJlc3BvbnNlIiA6ICdbMC05XVswLTldKiQnID4vZGV2L251bGwgJiYgXAorCQkJICAgWyAkcmVzcG9uc2UgLWdlIDEgLWEgJHJlc3BvbnNlIC1sZSAkbmNkcm9tcyBdCisJCQl0aGVuCisJCQkJbW91bnRwb2ludD0iYHNlZCAtbiAkcmVzcG9uc2UncCcgPCR0cC5sYCIKKwkJCQllY2hvCisJCQllbGlmIGV4cHIgIiRyZXNwb25zZSIgOiAnW05uXScgPi9kZXYvbnVsbAorCQkJdGhlbgorCQkJCW1vdW50cG9pbnQ9IiIKKwkJCWVsc2UKKwkJCQlyZXNwb25zZT0iIgorCQkJZmkKKwkJZG9uZQorCWVsaWYgWyAkbmNkcm9tcyA9IDEgXQorCXRoZW4KKwkJbW91bnRwb2ludD0iYGNhdCAkdHAubGAiCisJCXBlcmwgLW5lICdwcmludCBpZiBzLyB0eXBlIGlzbzk2NjAgXChbXildKlwpJC8vICYmIHMvIG9uIC4qJC8vOycgXAorCQkJPCR0cC5tID4kdHAuZAorCQlibG9ja2RldmljZT0iYGNhdCAkdHAuZGAiCisJCXllc25vIHllcyBcCisJIkkgc2VlIGEgQ0QtUk9NOiAkYmxvY2tkZXZpY2UsIG1vdW50ZWQgb24gJG1vdW50cG9pbnQuICBJcyBpdCB0aGUgcmlnaHQgb25lID8iCisJCWlmIFsgJHllc25vID0gbm8gXQorCQl0aGVuCisJCQllY2hvICdVbm1vdW50aW5nIGl0IC4uLicKKwkJCXVtb3VudD0iJG1vdW50cG9pbnQiCisJCQl3aGlsZSB0cnVlCisJCQlkbworCQkJCWVjaG8gLW4gXAorCSdQbGVhc2UgaW5zZXJ0IHRoZSByaWdodCBkaXNjLCBhbmQgaGl0IHJldHVybjogICcKKwkJCQlyZWFkIHJlc3BvbnNlCisJCQkJaWYgbW91bnQgLXJ0IGlzbzk2NjAgLW8gbm9zdWlkLG5vZGV2IFwKKwkJCQkJIiRibG9ja2RldmljZSIgIiRtb3VudHBvaW50IgorCQkJCXRoZW4KKwkJCQkJZWNobworCQkJCQlicmVhaworCQkJCWZpCisJCQlkb25lCisJCWZpCisJZmkKKwlpZiBbIC16ICIkbW91bnRwb2ludCIgXQorCXRoZW4KKwkJaWYgWyAtYiAvZGV2L2Nkcm9tIF0KKwkJdGhlbgorCQkJZWNobyBcCisJJ0kgc2VlIHRoYXQgL2Rldi9jZHJvbSBleGlzdHMgYW5kIGlzIGEgYmxvY2sgZGV2aWNlLicKKwkJCW5ld2RlZmF1bHRkZXZpY2U9L2Rldi9jZHJvbQorCQlmaQorCQlnZXRibG9ja2RldiAnSW5zZXJ0IHRoZSBDRC1ST00gYW5kIGVudGVyIHRoZSBibG9jayBkZXZpY2UgbmFtZScKKwlmaQorZmkKKworaWYgWyAkb3B0aW9uID0gbXVsdGlfbmZzIF0KK3RoZW4KKwltb3VudHBvaW50PSIkdmFyZGlyL21ldGhvZHMvbW50IgorCXdoaWxlIFsgLXogIiRuZnNzZXJ2ZXIiIF0KKwlkbworCQllY2hvIC1uIFwKKyJXaGF0IGlzIHRoZSBuYW1lIG9mIHRoZSBORlMgc2VydmVyID8gWyRkZWZhdWx0bmZzc2VydmVyXSAgIgorCQlyZWFkIHJlc3BvbnNlCisJCWlmIFsgLXogIiRyZXNwb25zZSIgLWEgLW4gIiRkZWZhdWx0bmZzc2VydmVyIiBdCisJCXRoZW4KKwkJCXJlc3BvbnNlPSIkZGVmYXVsdG5mc3NlcnZlciIKKwkJZmkKKwkJaWYgWyAteiAiJHJlc3BvbnNlIiBdOyB0aGVuIGNvbnRpbnVlOyBmaQorCQlpZiBbIC14IC91c3IvYmluL3JwY2luZm8gXQorCQl0aGVuCisJCQlpZiBycGNpbmZvIC11ICIkcmVzcG9uc2UiIG1vdW50ZCA+L2Rldi9udWxsCisJCQl0aGVuCisJCQkJbmZzc2VydmVyPSIkcmVzcG9uc2UiCisJCQllbHNlCisJCQkJZWNobyAiJHJlc3BvbnNlIGFwcGVhcnMgbm90IHRvIGJlIGFuIE5GUyBzZXJ2ZXIuIgorCQkJZmkKKwkJZWxpZiBbIC14IC9iaW4vcGluZyBdCisJCXRoZW4KKwkJCWlmIHBpbmcgLXEgLWMgMSAiJHJlc3BvbnNlIiB8IGdyZXAgLXEgJywgMSBwYWNrZXRzIHJlY2VpdmVkJworCQkJdGhlbgorCQkJCW5mc3NlcnZlcj0iJHJlc3BvbnNlIgorCQkJZWxzZQorCQkJCWVjaG8gIiRyZXNwb25zZSBhcHBlYXJzIHRvIGJlIGRvd24gb3Igbm9uZXhpc3RlbnQuIgorCQkJZmkKKwkJZWxzZQorCQkJZWNobyBcCisiKEkgY2FuJ3QgY2hlY2sgdGhhdCBub3cgYmVjYXVzZSB0aGVyZSBpcyBubyAvdXNyL2Jpbi9ycGNpbmZvIG9yIC9iaW4vcGluZy4pIgorCQkJbmZzc2VydmVyPSIkcmVzcG9uc2UiCisJCWZpCisJZG9uZQorCXdoaWxlIFsgLXogIiRuZnNyZW1wYXRoIiBdCisJZG8KKwkJZWNobyAtbiAiCitXaGF0IGlzIHRoZSBwYXRobmFtZSBvbiB0aGUgTkZTIHNlcnZlciBvZiB0aGUgZmlsZXN5c3RlbSB3aXRoCit0aGUgRGViaWFuIGZpbGVzID8gWyRkZWZhdWx0bmZzcmVtcGF0aF0gICIKKwkJcmVhZCByZXNwb25zZQorCQlpZiBbIC16ICIkcmVzcG9uc2UiIC1hIC1uICIkZGVmYXVsdG5mc3JlbXBhdGgiIF0KKwkJdGhlbgorCQkJcmVzcG9uc2U9IiRkZWZhdWx0bmZzcmVtcGF0aCIKKwkJZWxzZQorCQkJcmVzcG9uc2U9ImBlY2hvIFwiJHJlc3BvbnNlXCIgfCBzZWQgLWUgJ3M6LyQ6OjsgczpeLyo6LzonYCIKKwkJZmkKKwkJdW1vdW50PSIkbW91bnRwb2ludCIKKwkJaWYgbW91bnQgLXJ0IG5mcyAtbyBub3N1aWQsbm9kZXYgIiRuZnNzZXJ2ZXI6JHJlc3BvbnNlIiAiJG1vdW50cG9pbnQiCisJCXRoZW4KKwkJCWVjaG8KKwkJCW5mc3JlbXBhdGg9IiRyZXNwb25zZSIKKwkJZWxzZQorCQkJdW1vdW50PSIiCisJCQllY2hvIFwKKyJVbmFibGUgdG8gbW91bnQgTkZTIGZpbGVzeXN0ZW0gJG5mc3NlcnZlcjokcmVzcG9uc2UuIgorCQlmaQorCWRvbmUKKwluZnM9IiRuZnNzZXJ2ZXI6JG5mc3JlbXBhdGgiCitmaQorCitpZiBbICRvcHRpb24gPSBoYXJkZGlzazIgXQordGhlbgorCXNldCArZQorCXByaW50ZiAncFxucVxuJyB8IGZkaXNrIC9kZXYvaGRhIDI+L2Rldi9udWxsID4kdHAuZgorCWlmIFsgJD8gIT0gMCBdCisJdGhlbgorCQlwcmludGYgJ3BcbnFcbicgfCBmZGlzayAvZGV2L3NkYSAyPi9kZXYvbnVsbCA+JHRwLmYKKwlmaQorCXNldCAtZQorCXBlcmwgLW5lICcKK25leHQgdW5sZXNzIC9eICpEZXZpY2UgK0Jvb3QgK0JlZ2luICtTdGFydCArRW5kICtCbG9ja3MgK0lkICtTeXN0ZW0gKiQvaSAuLiAhL1xTLzsKK25leHQgdW5sZXNzIC8gWzE0Nl0gK0RPUyBcZCstYml0IFxTKyQvOworbmV4dCB1bmxlc3MgbTpeL1xTKzo7CitwcmludCAkJjsJCScgPCR0cC5mID4kdHAuZAorCW5ld2RlZmF1bHRkZXZpY2U9ImBjYXQgJHRwLmRgIgorCWVjaG8gIgorSSBuZWVkIHRvIGtub3cgd2hpY2ggZGlzayBwYXJ0aXRpb24gY29udGFpbnMgdGhlIGRpc3RyaWJ1dGlvbiBmaWxlczsKK2Rpc2sgcGFydGl0aW9ucyBhcmUgc3BlY2lmaWVkIGJ5IHRoZSBibG9jayBkZXZpY2UgbmFtZSBpbiBMaW51eC4iCisJaWYgWyAtbiAiJG5ld2RlZmF1bHRkZXZpY2UiIF0KKwl0aGVuCisJCWVjaG8gXAorIkJ5IHRoZSB3YXksICRuZXdkZWZhdWx0ZGV2aWNlIGxvb2tzIGxpa2UgYSBET1MgcGFydGl0aW9uLiIKKwlmaQorCWdldGJsb2NrZGV2ICJFbnRlciB0aGUgcGFydGl0aW9uJ3MgYmxvY2sgZGV2aWNlIG5hbWUiCitmaQorCitpZiBbIC1uICIkbW91bnRwb2ludCIgXQordGhlbgorCSMgV2UgbXVzdCBoYXZlICRtb3VudHBvaW50CisJaWYgWyAkb3B0aW9uID0gbXVsdGlfY2QgXQorCXRoZW4KKwkJZWNobyBcCisnQWxsIGRpcmVjdG9yeSBuYW1lcyBzaG91bGQgYmUgZW50ZXJlZCByZWxhdGl2ZSB0byB0aGUgcm9vdCBvZiB0aGUgQ0QtUk9NLgorJworCWVsaWYgWyAkb3B0aW9uID0gbXVsdGlfbmZzIF0KKwl0aGVuCisJCWVjaG8gXAorIkFsbCBkaXJlY3RvcnkgbmFtZXMgc2hvdWxkIGJlIGVudGVyZWQgcmVsYXRpdmUgdG8gdGhlIHJvb3Qgb2YgdGhlIE5GUworZmlsZXN5c3RlbSwgaWUgcmVsYXRpdmUgdG8gJG5mc3JlbXBhdGggb24gdGhlIHNlcnZlci4KKyIKKwllbHNlCisJCWVjaG8gXAorIkFsbCBkaXJlY3RvcnkgbmFtZXMgc2hvdWxkIGJlIGVudGVyZWQgcmVsYXRpdmUgdG8gdGhlIHJvb3Qgb2YgdGhlCiskZnN0eXBlIGZpbGVzeXN0ZW0gb24gJGJsb2NrZGV2aWNlLgorIgorCWZpCitmaQorCisjIG5vdyB0cnkgdG8gZ2V0IHRoZSB1c2VycyBpZGVhIHdoZXJlIHRoZSBkZWJpYW4KKyMgaGllcmFyY2h5IHN0YXJ0IGJlbG93IHRoZSBtb2ludHBvaW50CisKK2RlYnVnICJtb3VudHBvaW50OiAkbW91bnRwb2ludCIKK3doaWxlIHRydWUKK2RvCisJaWYgaXNtdWx0aSAiJHttb3VudHBvaW50fSIgIiR7aGllcmJhc2V9IjsgdGhlbgorCQltdWx0aT15ZXMKKwlmaQorCisJaWYgWyAkb3B0aW9uID0gbXVsdGlfY2QgXQorCXRoZW4KKwkJZWNobyBcCisiSSB3b3VsZCBsaWtlIHRvIGtub3cgd2hlcmUgb24gdGhlIENELVJPTSB0aGUgdG9wIGxldmVsIG9mIHRoZSBEZWJpYW4KK2Rpc3RyaWJ1dGlvbiBpcyAtIHRoaXMgd2lsbCB1c3VhbGx5IGNvbnRhaW4gdGhlIFxgZGlzdHMnIGRpcmVjdG9yeS4KKworSWYgdGhlIENELVJPTSBpcyBiYWRseSBvcmdhbml6ZWQgYW5kIGRvZXNuJ3QgaGF2ZSBhIHN0cmFpZ2h0Zm9yd2FyZCBjb3B5IG9mCit0aGUgZGlzdHJpYnV0aW9uIHlvdSBtYXkgYW5zd2VyIFxgbm9uZScgYW5kIHdlJ2xsIGdvIHRocm91Z2ggdGhlIHBhcnRzCitJIG5lZWQgaW5kaXZpZHVhbGx5LiIKKwllbHNlCisJCWVjaG8gXAorIkluIG9yZGVyIHRvIG1ha2UgaXQgZWFzeSBmb3IgbWUgdG8gZmluZCB0aGUgcmVsZXZhbnQgZmlsZXMgSSdkIGlkZWFsbHkKK2xpa2UgdG8gaW5zdGFsbCBmcm9tIGEgc3RyYWlnaHRmb3J3YXJkIGNvcHkgb2YgdGhlIERlYmlhbiBkaXN0cmlidXRpb24uCitUbyB1c2UgdGhpcyBJJ2xsIG5lZWQgdG8ga25vdyB3aGVyZSB0aGUgdG9wIGxldmVsIG9mIHRoYXQgY29weSBvZiB0aGUKK2Rpc3RyaWJ1dGlvbiBpcyAtIHRoaXMgZGlyZWN0b3J5IHVzdWFsbHkgY29udGFpbnMgdGhlIFBhY2thZ2VzLU1hc3RlciBmaWxlLgorCitJZiB5b3UgZG8gbm90IGhhdmUgYSBzdHJhaWdodGZvcndhcmQgY29weSBvZiB0aGUgZGlzdHJpYnV0aW9uIGF2YWlsYWJsZQoranVzdCBhbnN3ZXIgXGBub25lJyBhbmQgd2UnbGwgZ28gdGhyb3VnaCB0aGUgcGFydHMgSSBuZWVkIGluZGl2aWR1YWxseS4iCisJZmkKKworCWRlZmhpZXJiYXNlPW5vbmUKKwlpZiBbIC1uICIkcF9oaWVyYmFzZSIgXTsgdGhlbgorCQlpZiBbIC1kICIkbW91bnRwb2ludC8kcF9oaWVyYmFzZS9kaXN0cy8kZGlzdC9tYWluL2JpbmFyeS0kaWFyY2giIFwKKwkJCS1vIC1uICIkbXVsdGkiIF07IHRoZW4KKwkJCWVjaG8gIkxhc3QgdGltZSB5b3Ugc2FpZCBcYCRwX2hpZXJiYXNlJywgYW5kIHRoYXQgbG9va3MgcGxhdXNpYmxlLiIKKwkJCWRlZmhpZXJiYXNlPSIkcF9oaWVyYmFzZSIKKwkJZWxzZQorCQkJZWNobyAiCitMYXN0IHRpbWUgeW91IHNhaWQgXGAkcF9oaWVyYmFzZScsIGJ1dCB0aGF0IGRvZXNuJ3QgbG9vayBwbGF1c2libGUsCitzaW5jZSBcYCRwX2hpZXJiYXNlL2Rpc3RzLyRkaXN0L21haW4vYmluYXJ5LSRpYXJjaCcgZG9lc24ndCBzZWVtIHRvIGV4aXN0LgorQW5kIEkgY2FuJ3QgZ2V0IHRoZSBpbXByZXNzaW9uIHRoYXQgeW91J3JlIHVzaW5nIGEgbXVsdGktQ0QgIHNldC4iCisJCWZpCisJZmkKKworCSMgYXQgdGhpcyBwb2ludCBkZWZoaWVyYmFzZSBpcyBzZXQgaWYgaXQgbG9va3MgcGxhdXNpYmxlCisJIyBpZiBgbm9uZScgd2FzIGVudGVyZWQsIHdlIGFzc3VtZSBhIENEIHdpdGggYSBkZWJpYW4vIGRpcmVjdG9yeQorCisJaWYgWyBub25lID0gIiRkZWZoaWVyYmFzZSIgLWEgLWQgIiRtb3VudHBvaW50L2RlYmlhbi9kaXN0cy8kZGlzdC9tYWluL2JpbmFyeS0kaWFyY2giIF0KKwl0aGVuCisJCWVjaG8gIlxgL2RlYmlhbicgZXhpc3RzIGFuZCBsb29rcyBwbGF1c2libGUsIHNvIHRoYXQncyB0aGUgZGVmYXVsdC4iCisJCWRlZmhpZXJiYXNlPS9kZWJpYW4KKwlmaQorCisJZWNobyAtbiAiRGlzdHJpYnV0aW9uIHRvcCBsZXZlbCA/IFskZGVmaGllcmJhc2VdICAiCisJcmVhZCByZXNwb25zZQorCWlmIFsgLXogIiRyZXNwb25zZSIgXTsgdGhlbiByZXNwb25zZT0iJGRlZmhpZXJiYXNlIjsgZmkKKwlpZiBbIG5vbmUgPSAiJHJlc3BvbnNlIiBdOyB0aGVuCisJCWhpZXJiYXNlPSIiCisJCWJyZWFrCisJZWxpZiBpc211bHRpICIkbW91bnRwb2ludCIgIiRyZXNwb25zZSIgJiYgWyAteiAiJG11bHRpIiBdOyB0aGVuCisJCW11bHRpPXllcworCWZpCisKKwlpZiAhIFsgLWQgIiRtb3VudHBvaW50LyRyZXNwb25zZS9kaXN0cy8kZGlzdC9tYWluL2JpbmFyeS0kaWFyY2giIFwKKwkJCS1vIC1uICIkbXVsdGkiIF07IHRoZW4KKwkJZWNobyBcCisiTmVpdGhlciAkcmVzcG9uc2UvZGlzdHMvJGRpc3QvbWFpbi9iaW5hcnktJGlhcmNoIGRvZXMgbm90IGV4aXN0LAorbm9yIGFyZSB5b3UgdXNpbmcgYSBtdWx0aS1DRCBzZXQiCisJCWJyZWFrCisJZmkKKworCWhpZXJiYXNlPSJgZWNobyBcIiRyZXNwb25zZVwiIHwgc2VkIC1lICdzOi8kOjo7IHM6Xi8qOi86OyBzOi9cKzovOmc7J2AiCisJZGVidWcgImhpZXJiYXNlOiBbJGhpZXJiYXNlXSIKKworCWlmIFsgLW4gIiRtdWx0aSIgXTsgdGhlbgorCQlkaXNrbGFiZWw9YGdldGRpc2tsYWJlbCAiJG1vdW50cG9pbnQiICIvJHJlc3BvbnNlImAKKwkJZWNobyAiT2ssIHRoaXMgaXMgZGlzYyIKKwkJZWNobyAiICAgICRkaXNrbGFiZWwiCisJCSNlY2hvICJVcGRhdGluZyBtdWx0aSBDRCBjb250ZW50cyBmaWxlIGNhY2hlIC4uLiIKKwkJI211bHRpX2NvbnRlbnRzZmlsZT0iJHttb3VudHBvaW50fS8ke3Jlc3BvbnNlfS8uZGlzay9jb250ZW50cy5neiIKKwkJI3pjYXQgIiRtdWx0aV9jb250ZW50c2ZpbGUiID4gZGlzay1jb250ZW50cy4kb3B0aW9uCisJZmkKKworCWJyZWFrOworZG9uZQorCitkaXN0cmlidXRpb249JGRpc3QKK2lmIFsgLW4gIiRoaWVyYmFzZSIgXQordGhlbgorCWlmIFsgLWQgIiRtb3VudHBvaW50LyRoaWVyYmFzZS9kaXN0cy91bnN0YWJsZS9iaW5hcnktJGlhcmNoIiBdCisJdGhlbgorCQllY2hvIFwKKycKK0JvdGggYSBzdGFibGUgcmVsZWFzZWQgZGlzdHJpYnV0aW9uIGFuZCBhIHdvcmstaW4tcHJvZ3Jlc3MKK2RldmVsb3BtZW50IHRyZWUgYXJlIGF2YWlsYWJsZSBmb3IgaW5zdGFsbGF0aW9uLiAgV291bGQgeW91IGxpa2UgdG8KK3VzZSB0aGUgdW5yZWxlYXNlZCBkZXZlbG9wbWVudCB0cmVlICh0aGlzIGlzIG9ubHkgcmVjb21tZW5kZWQgZm9yCitleHBlcnRzIHdobyBsaWtlIHRvIGxpdmUgZGFuZ2Vyb3VzbHkgYW5kIHdhbnQgdG8gaGVscCB3aXRoIHRlc3RpbmcpID8nCisJCXllc25vICIkcF91c2VkZXZlbCIgJ1VzZSB1bnJlbGVhc2VkIGRldmVsb3BtZW50IGRpc3RyaWJ1dGlvbiA/JworCQl1c2VkZXZlbD0iJHllc25vIgorCQlpZiBbICIkdXNlZGV2ZWwiID0geWVzIF0KKwkJdGhlbgorCQkJZGlzdHJpYnV0aW9uPWRldmVsb3BtZW50CisJCWZpCisJZWxzZQorCQl1c2VkZXZlbD1ubworCWZpCisJZWNobworZmkKKworY2FzZSAiJGhpZXJiYXNlIiBpbgorLyogKQk7OworJycgKQk7OworKiApCWhpZXJiYXNlPSIvJGhpZXJiYXNlIiA7OworZXNhYworCitjaGVja19iaW5hcnkgKCkgeworCSMgYXJnczogYXJlYS1pbi1tZXNzYWdlcyBkaXJlY3RvcnkKKwlkZWJ1ZyAiY2hlY2tfYmluYXJ5KCRAKSIKKworCWlmIFsgISAtZCAiJHttb3VudHBvaW50fSQyIiAtYSAteiAiJG11bHRpIiBdCisJdGhlbgorCQllY2hvICJcYCQyJyBkb2VzIG5vdCBleGlzdC4iCisJCXJldHVybgorCWZpCisKKyMgSW4gdGhpcyBzcGVjaWFsIGNhc2UgaXQgaXMgb2sgZm9yIGEgc3ViLWRpc3RyaWJ1dGlvbiB0byBub3QgY29udGFpbiBhbnkKKyMgLmRlYiBmaWxlcy4gIEVhY2ggQ0Qgc2hvdWxkIGNvbnRhaW4gYWxsIFBhY2thZ2VzLmNkIGZpbGVzIGJ1dCBkb2Vzbid0CisjIG5lZWQgdG8gY29udGFpbiB0aGUgLmRlYiBmaWxlcy4KKyMKKyMgIAlpZiAhIHsgZmluZCAtTCAiJG1vdW50cG9pbnQkMiIgLW5hbWUgJyouZGViJyAtcHJpbnQgXAorIyAgCQl8IGhlYWQgLTEgfCBncmVwIC4gOyB9ID4vZGV2L251bGwgMj4mMSAmJiBbIC16ICIkbXVsdGkiIF07CisjICAJdGhlbgorIyAgCQllY2hvICJcYCQyJyBkb2VzIG5vdCBjb250YWluIGFueSAqLmRlYiBwYWNrYWdlcy4iCisjICAJCXJldHVybgorIyAgCWZpCisKKwl0aGlzX2JpbmFyeT0iJDIiCisJZWNobyAtbiAiVXNpbmcgXGAkdGhpc19iaW5hcnknIGFzICQxIGJpbmFyeSBkaXIiCisKKwlpZiBbIC1uICIkbXVsdGkiIF07IHRoZW4KKwkJdGhpc19kaXNrPWBnZXRkaXNrbGFiZWwgJHttb3VudHBvaW50fSAiLyRoaWVyYmFzZSJgCisJCWVjaG8gIiBmcm9tIGRpc2MiCisJCWVjaG8gIiAgICBcYCR0aGlzX2Rpc2snIgorCWVsc2UKKwkJZWNobyAiIgorCWZpCit9CisKK2ZpbmRfYXJlYSAoKSB7CisJIyBhcmdzOiBhcmVhLWluLW1lc3NhZ2VzIGFyZWEtaW4tdmFycyBzdWJkaXJlY3RvcnktaW4taGllcgorCSMgICAgICAgbGFzdC10aW1lLWJpbmFyeSBsYXN0LXRpbWUtcGFja2FnZXMKKwlkZWJ1ZyAiZmluZF9hcmVhKCRAKSIKKwl0aGlzX2JpbmFyeT0nJworCXRoaXNfcGFja2FnZXM9JycKKwl0aGlzX2Rpc2s9JycKKwlpZiBbIC1uICIkaGllcmJhc2UiIF0KKwl0aGVuCisJCWNoZWNrX2JpbmFyeSAkMSBgZWNobyAiJGhpZXJiYXNlL2Rpc3RzLyQzLyQxL2JpbmFyeS0kaWFyY2giIHwgc2VkICdzOi9cKzovOmcnYAorCQlkZWJ1ZyAiVEhJU19CSU5BUlkgJHRoaXNfYmluYXJ5IgorCWZpCisJaWYgWyAkb3B0aW9uID0gbXVsdGlfY2QgLWEgJDIgPSBuZiAtYSAteiAiJHRoaXNfYmluYXJ5IiBdCisJdGhlbgorCQllY2hvICcKK05vdGU6IG1vc3QgQ0QtUk9NIGRpc3RyaWJ1dGlvbnMgb2YgRGViaWFuIGRvIG5vdCBpbmNsdWRlIHByb2dyYW1zCithdmFpbGFibGUgaW4gdGhlIGBub24tZnJlZSdcJycgZGlyZWN0b3J5IG9mIHRoZSBkaXN0cmlidXRpb24gc2l0ZS4KK1RoaXMgaXMgYmVjYXVzZSB0aGVzZSBwcm9ncmFtcyBoYXZlIGNvcHlyaWdodHMgdGhhdCBwcmV2ZW50CitkaXN0cmlidXRpb24gZm9yIHByb2ZpdCBvbiBhIENELVJPTSAtIGllIHRoZXkgYXJlIG5vdCBmcmVlIHNvZnR3YXJlLgorSWYgeW91IHdpc2ggdG8gaW5zdGFsbCB0aGVzZSBwcm9ncmFtcyB5b3UnXCcnbGwgaGF2ZSB0byBnZXQgdGhlbSBmcm9tIGFuCithbHRlcm5hdGl2ZSBzb3VyY2UuJworCWZpCisJd2hpbGUgWyAteiAiJHRoaXNfYmluYXJ5IiBdCisJZG8KKwkJZGVmYXVsdGJpbmFyeT0iJDQiCisJCWVjaG8gIgorV2hpY2ggZGlyZWN0b3J5IGNvbnRhaW5zIHRoZSAqLmRlYiBwYWNrYWdlcyBmcm9tIHRoZSAkMSBkaXN0cmlidXRpb24KK2FyZWEgKHRoaXMgZGlyZWN0b3J5IGlzIG5hbWVkIFxgJDMvYmluYXJ5JyBvbiB0aGUgZGlzdHJpYnV0aW9uIHNpdGUpID8KK1NheSBcYG5vbmUnIGlmIHRoaXMgYXJlYSBpcyBub3QgYXZhaWxhYmxlLiIKKwkJaWYgWyAkMiAhPSBtYWluIC1hIC16ICIkZGVmYXVsdGJpbmFyeSIgXQorCQl0aGVuCisJCQlkZWZhdWx0YmluYXJ5PW5vbmUKKwkJZmkKKwkJZWNobyAtbiBcCisiRW50ZXIgXyQxXyBiaW5hcnkgZGlyLiBbJDRdCisgPyAgIgorCQlyZWFkIHJlc3BvbnNlCisJCWlmIFsgLXogIiRyZXNwb25zZSIgLWEgLW4gIiRkZWZhdWx0YmluYXJ5IiBdCisJCXRoZW4KKwkJCXJlc3BvbnNlPSIkZGVmYXVsdGJpbmFyeSIKKwkJZmkKKwkJaWYgWyBub25lID0gIiRyZXNwb25zZSIgXQorCQl0aGVuCisJCQlicmVhaworCQlmaQorCQljYXNlICIkcmVzcG9uc2UiIGluCisJCScnIHwgbm9uZSkJY29udGludWUJCTs7CisJCWVzYWMKKwkJY2hlY2tfYmluYXJ5ICQxICJgZWNobyBcIiRyZXNwb25zZVwiIHwgc2VkIC1lICdzOi8kOjo7IHM6Xi8qOi86J2AiCisJZG9uZQorCWlmIFsgLW4gIiR0aGlzX2JpbmFyeSIgXQorCXRoZW4KKwkJaWYgWyAiJG11bHRpIiA9ICJ5ZXMiIF07IHRoZW4KKwkJCWZvciBmIGluIFBhY2thZ2VzLmNkLmd6IHBhY2thZ2VzLmNkLmd6IFBhY2thZ2VzLmNkIHBhY2thZ2VzLmNkCisJCQlkbworCQkJCWlmIFsgLWYgIiRtb3VudHBvaW50LyR0aGlzX2JpbmFyeS8kZiIgXQorCQkJCXRoZW4KKwkJCQkJdGhpc19wYWNrYWdlcz0iJHRoaXNfYmluYXJ5LyRmIgorCQkJCQllY2hvICJVc2luZyBcYCR0aGlzX3BhY2thZ2VzJyBmb3IgJDEuIgorCQkJCQlicmVhaworCQkJCWZpCisJCQlkb25lCisJCWVsc2UKKwkJCWlmIFsgLWYgIiR7bW91bnRwb2ludH0ke2hpZXJiYXNlfS8uZGlzay9wYWNrYWdlcy8kMS9QYWNrYWdlcy5neiIgXTsgdGhlbgorCQkJCXRoaXNfcGFja2FnZXM9YGVjaG8gIiR7aGllcmJhc2V9Ly5kaXNrL3BhY2thZ2VzLyQxL1BhY2thZ2VzLmd6InxzZWQgJ3M6L1wrOi86ZydgCisJCQkJZWNobyAiVXNpbmcgXGAke3RoaXNfcGFja2FnZXN9JyBmb3IgJDEuIgorCQkJZmkKKwkJZmkKKwkJd2hpbGUgWyAteiAiJHRoaXNfcGFja2FnZXMiIF0KKwkJZG8KKwkJCWVjaG8gLW4gIgorSSBjYW4ndCBmaW5kIHRoZSAkMSBcYFBhY2thZ2VzLmNkJyBmaWxlLiAgVGhlIGluZm9ybWF0aW9uIGluIHRoZQorXGBQYWNrYWdlcy5jZCcgZmlsZSBpcyBpbXBvcnRhbnQgZm9yIHBhY2thZ2Ugc2VsZWN0aW9uIGR1cmluZyBuZXcKK2luc3RhbGxhdGlvbnMsIGFuZCBpcyB2ZXJ5IHVzZWZ1bCBmb3IgdXBncmFkZXMuCisKK0lmIHlvdSBvdmVybG9va2VkIGl0IHdoZW4gZG93bmxvYWRpbmcgeW91IHNob3VsZCBkbyBnZXQgaXQgbm93IGFuZAorcmV0dXJuIHRvIHRoaXMgaW5zdGFsbGF0aW9uIHByb2NlZHVyZSB3aGVuIHlvdSBoYXZlIGRvbmUgc286IHlvdSB3aWxsCitmaW5kIG9uZSBQYWNrYWdlcy5jZCBmaWxlIGFuZCBvbmUgUGFja2FnZXMuY2QuZ3ogZmlsZSAtLSBlaXRoZXIgd2lsbCBkbyAtLQoraW4gdGhlIFxgYmluYXJ5JyBzdWJkaXJlY3Rvcnkgb2YgZWFjaCBhcmVhIG9uIHRoZSBGVFAgc2l0ZXMgYW5kCitDRC1ST01zLiAgQWx0ZXJuYXRpdmVseSAoYW5kIHRoaXMgd2lsbCBiZSByYXRoZXIgc2xvdykgSSBjYW4gc2NhbiB0aGUKK3BhY2thZ2VzIGluIHRoZSBkaXN0cmlidXRpb24gYXJlYSAtIHNheSBcYHNjYW4nIGlmIHlvdSB3YW50IG1lIHRvIGRvIHNvLgorCitZb3UgbmVlZCBhIHNlcGFyYXRlIFBhY2thZ2VzLmNkIGZpbGUgZnJvbSBlYWNoIG9mIHRoZSBkaXN0cmlidXRpb24gYXJlYXMKK3lvdSB3aXNoIHRvIGluc3RhbGwuCisKK1doZXJlIGlzIHRoZSBfJDFfIFxgUGFja2FnZXMuY2QnIGZpbGUgKGlmIG5vbmUgaXMgYXZhaWxhYmxlLCBzYXkgXGBub25lJykKK1skNV0KKyA/ICAiCisJCQlyZWFkIHJlc3BvbnNlCisJCQlpZiBbIC16ICIkcmVzcG9uc2UiIC1hIC1uICIkNSIgXQorCQkJdGhlbgorCQkJCXJlc3BvbnNlPSIkNSIKKwkJCWZpCisJCQljYXNlICIkcmVzcG9uc2UiIGluCisJCQknJykJCWJyZWFrCQkJCTs7CisJCQlub25lKQkJYnJlYWsJCQkJOzsKKwkJCXNjYW4pCQl0aGlzX3BhY2thZ2VzPXNjYW4JCTs7CisJCQkvKikJCXRoaXNfcGFja2FnZXM9IiRyZXNwb25zZSIJOzsKKwkJCSopCQl0aGlzX3BhY2thZ2VzPSIvJHJlc3BvbnNlIgk7OworCQkJZXNhYworCQlkb25lCisJZmkKKwlldmFsICQyJ19iaW5hcnk9IiR0aGlzX2JpbmFyeSInCisJZXZhbCAkMidfcGFja2FnZXM9IiR0aGlzX3BhY2thZ2VzIicKKwlldmFsICQyJ19kaXNrPSIkdGhpc19kaXNrIicKK30KKworZmluZF9hcmVhIG1haW4gbWFpbiAiJGRpc3RyaWJ1dGlvbiIgIiRwX21haW5fYmluYXJ5IiAiJHBfbWFpbl9wYWNrYWdlcyIKK2ZpbmRfYXJlYSBjb250cmliIGN0YiAiJGRpc3RyaWJ1dGlvbiIgIiRwX2N0Yl9iaW5hcnkiICIkcF9jdGJfcGFja2FnZXMiCitmaW5kX2FyZWEgbm9uLWZyZWUgbmYgIiRkaXN0cmlidXRpb24iICIkcF9uZl9iaW5hcnkiICIkcF9uZl9wYWNrYWdlcyIKK2ZpbmRfYXJlYSBub24tVVMvbWFpbiBub251cyAiJGRpc3RyaWJ1dGlvbiIgIiRwX25vbnVzX2JpbmFyeSIgIiRwX25vbnVzX3BhY2thZ2VzIgorZmluZF9hcmVhIG5vbi1VUy9jb250cmliIG5vbnVzY3RiICIkZGlzdHJpYnV0aW9uIiAiJHBfbm9udXNjdGJfYmluYXJ5IiAiJHBfbm9udXNjdGJfcGFja2FnZXMiCitmaW5kX2FyZWEgbm9uLVVTL25vbi1mcmVlIG5vbnVzbmYgIiRkaXN0cmlidXRpb24iICIkcF9ub251c25mX2JpbmFyeSIgIiRwX25vbnVzbmZfcGFja2FnZXMiCitmaW5kX2FyZWEgbG9jYWwgbGNsIGxvY2FsICIkcF9sY2xfYmluYXJ5IiAiJHBfbGNsX3BhY2thZ2VzIgorCitlY2hvIC1uICcKK0hpdCBSRVRVUk4gdG8gY29udGludWUuICAnCityZWFkIHJlc3BvbnNlCisKK2V4ZWMgMz5zaHZhci4kb3B0aW9uLm5ldworCitvdXRwdXRwYXJhbSBwX2Jsb2NrZGV2ICIkYmxvY2tkZXZpY2UiCitvdXRwdXRwYXJhbSBwX2ZzdHlwZSAiJGZzdHlwZSIKK291dHB1dHBhcmFtIHBfbW91bnRwb2ludCAiJG1vdW50cG9pbnQiCitvdXRwdXRwYXJhbSBwX25mc3NlcnZlciAiJG5mc3NlcnZlciIKK291dHB1dHBhcmFtIHBfbmZzcmVtcGF0aCAiJG5mc3JlbXBhdGgiCitvdXRwdXRwYXJhbSBwX25mcyAiJG5mcyIKK291dHB1dHBhcmFtIHBfaGllcmJhc2UgIiRoaWVyYmFzZSIKK291dHB1dHBhcmFtIHBfdXNlZGV2ZWwgIiR1c2VkZXZlbCIKK291dHB1dHBhcmFtIHBfbWFpbl9wYWNrYWdlcyAiJG1haW5fcGFja2FnZXMiCitvdXRwdXRwYXJhbSBwX21haW5fYmluYXJ5ICIkbWFpbl9iaW5hcnkiCitvdXRwdXRwYXJhbSBwX21haW5fZGlzayAiJG1haW5fZGlzayIKK291dHB1dHBhcmFtIHBfY3RiX3BhY2thZ2VzICIkY3RiX3BhY2thZ2VzIgorb3V0cHV0cGFyYW0gcF9jdGJfYmluYXJ5ICIkY3RiX2JpbmFyeSIKK291dHB1dHBhcmFtIHBfY3RiX2Rpc2sgIiRjdGJfZGlzayIKK291dHB1dHBhcmFtIHBfbmZfcGFja2FnZXMgIiRuZl9wYWNrYWdlcyIKK291dHB1dHBhcmFtIHBfbmZfYmluYXJ5ICIkbmZfYmluYXJ5Igorb3V0cHV0cGFyYW0gcF9uZl9kaXNrICIkbmZfZGlzayIKK291dHB1dHBhcmFtIHBfbm9udXNfYmluYXJ5ICIkbm9udXNfYmluYXJ5Igorb3V0cHV0cGFyYW0gcF9ub251c19wYWNrYWdlcyAiJG5vbnVzX3BhY2thZ2VzIgorb3V0cHV0cGFyYW0gcF9ub251c19kaXNrICIkbm9udXNfZGlzayIKK291dHB1dHBhcmFtIHBfbm9udXNjdGJfYmluYXJ5ICIkbm9udXNjdGJfYmluYXJ5Igorb3V0cHV0cGFyYW0gcF9ub251c2N0Yl9wYWNrYWdlcyAiJG5vbnVzY3RiX3BhY2thZ2VzIgorb3V0cHV0cGFyYW0gcF9ub251c2N0Yl9kaXNrICIkbm9udXNjdGJfZGlzayIKK291dHB1dHBhcmFtIHBfbm9udXNuZl9iaW5hcnkgIiRub251c25mX2JpbmFyeSIKK291dHB1dHBhcmFtIHBfbm9udXNuZl9wYWNrYWdlcyAiJG5vbnVzbmZfcGFja2FnZXMiCitvdXRwdXRwYXJhbSBwX25vbnVzbmZfZGlzayAiJG5vbnVzbmZfZGlzayIKK291dHB1dHBhcmFtIHBfbGNsX3BhY2thZ2VzICIkbGNsX3BhY2thZ2VzIgorb3V0cHV0cGFyYW0gcF9sY2xfYmluYXJ5ICIkbGNsX2JpbmFyeSIKK291dHB1dHBhcmFtIHBfbXVsdGkgIiRtdWx0aSIKK291dHB1dHBhcmFtIHBfbXVsdGlfY29udGVudHNmaWxlICIkbXVsdGlfY29udGVudHNmaWxlIgorCittdiBzaHZhci4kb3B0aW9uLm5ldyBzaHZhci4kb3B0aW9uCisKK3hpdD0wCisKKyMgdmltOnRzPTQ6c3c9NDphdzphaToKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9tZXRob2RzL211bHRpY2QvdXBkYXRlIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L21ldGhvZHMvbXVsdGljZC91cGRhdGUKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMC4uMjJjN2JhYgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9tZXRob2RzL211bHRpY2QvdXBkYXRlCkBAIC0wLDAgKzEsMTI5IEBACisjIS9iaW4vc2gKKyMKKyMgQ29weXJpZ2h0IMKpIDE5OTUtMTk5OCBJYW4gSmFja3NvbiA8aWFuQGNoaWFyay5ncmVlbmVuZC5vcmcudWs+CisjIENvcHlyaWdodCDCqSAxOTk4IEhlaWtvIFNjaGxpdHRlcm1hbm4gPGhlaWtvQGxvdHRlLnNheC5kZT4KKyMKKyMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgdmVyc2lvbiAyIGRhdGVkIEp1bmUsIDE5OTEuCisjCisjIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisjIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisjCisjIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisjIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorCitzZXQgLWUKK3ZhcmRpcj0iJDEiCittZXRob2Q9JDIKK29wdGlvbj0kMworaWFyY2g9YGRwa2cgLS1wcmludC1hcmNoaXRlY3R1cmVgCisKK2NkICIkdmFyZGlyL21ldGhvZHMvJG1ldGhvZCIKKworLiAuL3NodmFyLiRvcHRpb24KKworI2RlYnVnKCkgeyBlY2hvICJERUJVRzogJEAiOyB9CitkZWJ1ZygpIHsgdHJ1ZTsgfQoraXNtdWx0aSgpIHsgZGVidWcgJDEgJDI7IHRlc3QgLWUgIiQxLy5kaXNrL2luZm8iIHx8IHRlc3QgLWUgIiQxJDIvLmRpc2svaW5mbyI7IH0KKworcGFja2FnZXM9MAorZm9yIGYgaW4gbWFpbiBjdGIgbmYgbm9udXMgbm9udXNjdGIgbm9udXNuZiBsY2wKK2RvCisgICAgZXZhbCAndGhpc19wYWNrYWdlcz0kcF8nJGYnX3BhY2thZ2VzJworCisgICAgaWYgWyAtbiAiJHRoaXNfcGFja2FnZXMiIF0KKyAgICB0aGVuCisJcGFja2FnZXM9MQorICAgIGZpCitkb25lCisKK2lmIFsgJHBhY2thZ2VzIGVxIDAgXQordGhlbgorCWVjaG8gJworTm8gUGFja2FnZXMgZmlsZXMgYXZhaWxhYmxlLCBjYW5ub3QgdXBkYXRlIGF2YWlsYWJsZSBwYWNrYWdlcyBsaXN0LgorSGl0IFJFVFVSTiB0byBjb250aW51ZS4gICcKKwlyZWFkIHJlc3BvbnNlCisJZXhpdCAwCitmaQorCit4aXQ9MQordHJhcCAnCisJcm0gLWYgcGFja2FnZXMte21haW4sY3RiLG5mLG5vbnVzLG5vbnVzY3RiLG5vbnVzbmYsbGNsfQorCWlmIFsgLW4gIiR1bW91bnQiIF0KKwl0aGVuCisJCXVtb3VudCAiJHVtb3VudCIgPi9kZXYvbnVsbCAyPiYxCisJZmkKKwlleGl0ICR4aXQKKycgMAorCitpZiBbICEgLWIgIiRwX2Jsb2NrZGV2IiBdCit0aGVuCisJbG9vcD0iLGxvb3AiCitmaQorCitpZiBbIC1uICIkcF9ibG9ja2RldiIgXQordGhlbgorCXVtb3VudD0iJHBfbW91bnRwb2ludCIKKwltb3VudCAtcnQgIiRwX2ZzdHlwZSIgLW8gbm9zdWlkLG5vZGV2JHtsb29wfSAiJHBfYmxvY2tkZXYiICIkcF9tb3VudHBvaW50IgorZmkKKworaWYgWyAtbiAiJHBfbmZzIiBdCit0aGVuCisJdW1vdW50PSIkcF9tb3VudHBvaW50IgorCW1vdW50IC1ydCBuZnMgIiRwX25mcyIgLW8gbm9zdWlkLG5vZGV2ICIkcF9tb3VudHBvaW50IgorZmkKKwordXBkYXRldHlwZT11cGRhdGUKKworaWYgWyAteiAiJHBfbXVsdGkiIF07IHRoZW4KKwlleGl0IDEKK2ZpCisKK2ZvciBmIGluIG1haW4gY3RiIG5mIG5vbnVzIG5vbnVzY3RiIG5vbnVzbmYgbGNsCitkbworCWV2YWwgJ3RoaXNfcGFja2FnZXM9JHBfJyRmJ19wYWNrYWdlcycKKwljYXNlICIkdGhpc19wYWNrYWdlcyIgaW4KKwknJykKKwkJY29udGludWUKKwkJOzsKKwlzY2FuKQorCQlldmFsICd0aGlzX2JpbmFyeT0kcF8nJGYnX2JpbmFyeScKKwkJaWYgWyAteiAiJHRoaXNfYmluYXJ5IiBdOyB0aGVuIGNvbnRpbnVlOyBmaQorCQlpZiBbICIkdXBkYXRldHlwZSIgPSB1cGRhdGUgXQorCQl0aGVuCisJCQlkcGtnIC0tY2xlYXItYXZhaWwKKwkJCXVwZGF0ZXR5cGU9bWVyZ2UKKwkJZmkKKwkJZWNobyBSdW5uaW5nIGRwa2cgLS1yZWNvcmQtYXZhaWwgLVIgIiRwX21vdW50cG9pbnQkdGhpc19iaW5hcnkiCisJCWRwa2cgLS1yZWNvcmQtYXZhaWwgLVIgIiRwX21vdW50cG9pbnQkdGhpc19iaW5hcnkiCisJCTs7CisJKikKKwkJcGFja2FnZXNmaWxlPSIkcF9tb3VudHBvaW50JHRoaXNfcGFja2FnZXMiCisJCWNhc2UgIiRwYWNrYWdlc2ZpbGUiIGluCisJCSouZ3ogfCAqLlogfCAqLkdaIHwgKi56KQorCQkJZWNobyAtbiAiVW5jb21wcmVzc2luZyAkcGFja2FnZXNmaWxlIC4uLiAiCisJCQl6Y2F0IDwiJHBhY2thZ2VzZmlsZSIgPnBhY2thZ2VzLSRmCisJCQllY2hvIGRvbmUuCisJCQlkcGtnIC0tJHVwZGF0ZXR5cGUtYXZhaWwgcGFja2FnZXMtJGYKKwkJCXVwZGF0ZXR5cGU9bWVyZ2UKKwkJCTs7CisJCScnKQorCQkJOzsKKwkJKikKKwkJCWRwa2cgLS0kdXBkYXRldHlwZS1hdmFpbCAiJHBhY2thZ2VzZmlsZSIKKwkJCXVwZGF0ZXR5cGU9bWVyZ2UKKwkJCTs7CisJCWVzYWMKKwkJOzsKKwllc2FjCitkb25lCisKK2NwIC1mICR2YXJkaXIvYXZhaWxhYmxlICR2YXJkaXIvbWV0aG9kcy8kbWV0aG9kCisKK2VjaG8gLW4gJ1VwZGF0ZSBPSy4gIEhpdCBSRVRVUk4uICAnCityZWFkIHJlc3BvbnNlCisKK3hpdD0wCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvbWV0aHBhcnNlLmNjIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L21ldGhwYXJzZS5jYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jYTkyM2EzCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L21ldGhwYXJzZS5jYwpAQCAtMCwwICsxLDI5OCBAQAorLyoKKyAqIGRzZWxlY3QgLSBEZWJpYW4gcGFja2FnZSBtYWludGVuYW5jZSB1c2VyIGludGVyZmFjZQorICogbWV0aHBhcnNlLmNjIC0gYWNjZXNzIG1ldGhvZCBsaXN0IHBhcnNpbmcKKyAqCisgKiBDb3B5cmlnaHQgwqkgMTk5NSBJYW4gSmFja3NvbiA8aWFuQGNoaWFyay5ncmVlbmVuZC5vcmcudWs+CisgKgorICogVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisgKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAqIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorICovCisKKyNpbmNsdWRlIDxjb25maWcuaD4KKyNpbmNsdWRlIDxjb21wYXQuaD4KKworI2luY2x1ZGUgPHN5cy90eXBlcy5oPgorI2luY2x1ZGUgPHN5cy9zdGF0Lmg+CisjaW5jbHVkZSA8c3lzL3dhaXQuaD4KKworI2luY2x1ZGUgPGFzc2VydC5oPgorI2luY2x1ZGUgPGVycm5vLmg+CisjaW5jbHVkZSA8bGltaXRzLmg+CisjaW5jbHVkZSA8Y3R5cGUuaD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDxkaXJlbnQuaD4KKyNpbmNsdWRlIDx1bmlzdGQuaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlIDxzdGRpby5oPgorCisjaW5jbHVkZSA8ZHBrZy9pMThuLmg+CisjaW5jbHVkZSA8ZHBrZy9kcGtnLmg+CisjaW5jbHVkZSA8ZHBrZy9kcGtnLWRiLmg+CisKKyNpbmNsdWRlICJkc2VsZWN0LmgiCisjaW5jbHVkZSAiYmluZGluZ3MuaCIKKyNpbmNsdWRlICJtZXRob2QuaCIKKworaW50IG5vcHRpb25zPTA7CitzdHJ1Y3QgZHNlbGVjdF9vcHRpb24gKm9wdGlvbnM9MCwgKmNvcHRpb249MDsKK3N0cnVjdCBtZXRob2QgKm1ldGhvZHM9MDsKKworc3RhdGljIHZvaWQgRFBLR19BVFRSX05PUkVUCitiYWRtZXRob2QoY29uc3QgY2hhciAqcGF0aG5hbWUsIGNvbnN0IGNoYXIgKndoeSkKK3sKKyAgb2hzaGl0KF8oInN5bnRheCBlcnJvciBpbiBtZXRob2Qgb3B0aW9ucyBmaWxlIGAlLjI1MHMnIC0tICVzIiksIHBhdGhuYW1lLCB3aHkpOworfQorCitzdGF0aWMgdm9pZCBEUEtHX0FUVFJfTk9SRVQKK2VvZm1ldGhvZChjb25zdCBjaGFyICpwYXRobmFtZSwgRklMRSAqZiwgY29uc3QgY2hhciAqd2h5KQoreworICBpZiAoZmVycm9yKGYpKSBvaHNoaXRlKF8oImVycm9yIHJlYWRpbmcgb3B0aW9ucyBmaWxlIGAlLjI1MHMnIikscGF0aG5hbWUpOworICBiYWRtZXRob2QocGF0aG5hbWUsd2h5KTsKK30KKwordm9pZCByZWFkbWV0aG9kcyhjb25zdCBjaGFyICpwYXRoYmFzZSwgZHNlbGVjdF9vcHRpb24gKipvcHRpb25zcHAsIGludCAqbnJlYWQpIHsKKyAgc3RhdGljIGNvbnN0IGNoYXIgKmNvbnN0IG1ldGhvZHByb2dyYW1zW109IHsKKyAgICBNRVRIT0RTRVRVUFNDUklQVCwgTUVUSE9EVVBEQVRFU0NSSVBULCBNRVRIT0RJTlNUQUxMU0NSSVBULCAwCisgIH07CisgIGNvbnN0IGNoYXIgKmNvbnN0ICpjY3BwOworICBpbnQgbWV0aG9kbGVuLCBjLCBiYXNlbGVuOworICBjaGFyICpwYXRoaW5tZXRoLCAqcGF0aGJ1ZiwgKnBhdGhtZXRoOworICBESVIgKmRpcjsKKyAgRklMRSAqbmFtZXMsICpkZXNjZmlsZTsKKyAgc3RydWN0IGRpcmVudCAqZGVudDsKKyAgc3RydWN0IHZhcmJ1ZiB2YjsKKyAgbWV0aG9kICptZXRoOworICBkc2VsZWN0X29wdGlvbiAqb3B0OworICBzdHJ1Y3Qgc3RhdCBzdGFiOworCisgIGJhc2VsZW49IHN0cmxlbihwYXRoYmFzZSk7CisgIHBhdGhidWY9IG5ldyBjaGFyW2Jhc2VsZW4rSU1FVEhPRE1BWExFTitJT1BUSU9OTUFYTEVOK3NpemVvZihPUFRJT05TREVTQ1BGWCkrMTBdOworICBzdHJjcHkocGF0aGJ1ZixwYXRoYmFzZSk7CisgIHN0cmNweShwYXRoYnVmK2Jhc2VsZW4sIi8iKTsKKyAgcGF0aG1ldGg9IHBhdGhidWYrYmFzZWxlbisxOworCisgIGRpcj0gb3BlbmRpcihwYXRoYnVmKTsKKyAgaWYgKCFkaXIpIHsKKyAgICBpZiAoZXJybm8gPT0gRU5PRU5UKSB7CisgICAgICBkZWxldGVbXSBwYXRoYnVmOworICAgICAgcmV0dXJuOworICAgIH0KKyAgICBvaHNoaXRlKF8oInVuYWJsZSB0byByZWFkIGAlLjI1MHMnIGRpcmVjdG9yeSBmb3IgcmVhZGluZyBtZXRob2RzIikscGF0aGJ1Zik7CisgIH0KKworICBkZWJ1ZyhkYmdfZ2VuZXJhbCwgInJlYWRtZXRob2RzKCclcycsLi4uKSBkaXJlY3Rvcnkgb3BlbiIsIHBhdGhiYXNlKTsKKworICB3aGlsZSAoKGRlbnQ9IHJlYWRkaXIoZGlyKSkgIT0gMCkgeworICAgIGM9IGRlbnQtPmRfbmFtZVswXTsKKyAgICBkZWJ1ZyhkYmdfZ2VuZXJhbCwgInJlYWRtZXRob2RzKCclcycsLi4uKSBjb25zaWRlcmluZyAnJXMnIC4uLiIsCisgICAgICAgICAgcGF0aGJhc2UsIGRlbnQtPmRfbmFtZSk7CisgICAgaWYgKGMgIT0gJ18nICYmICFpc2FscGhhKGMpKSBjb250aW51ZTsKKyAgICBjaGFyICpwID0gZGVudC0+ZF9uYW1lICsgMTsKKyAgICB3aGlsZSAoKGMgPSAqcCkgIT0gMCAmJiBpc2FsbnVtKGMpICYmIGMgIT0gJ18nKQorICAgICAgcCsrOworICAgIGlmIChjKSBjb250aW51ZTsKKyAgICBtZXRob2RsZW49IHN0cmxlbihkZW50LT5kX25hbWUpOworICAgIGlmIChtZXRob2RsZW4gPiBJTUVUSE9ETUFYTEVOKQorICAgICAgb2hzaGl0KF8oIm1ldGhvZCBgJS4yNTBzJyBoYXMgbmFtZSB0aGF0IGlzIHRvbyBsb25nICglZCA+ICVkIGNoYXJhY3RlcnMpIiksCisgICAgICAgICAgICAgZGVudC0+ZF9uYW1lLCBtZXRob2RsZW4sIElNRVRIT0RNQVhMRU4pOworICAgIC8qIENoZWNrIGlmIHRoZXJlIGlzIGEgbG9jYWxpemVkIHZlcnNpb24gb2YgdGhpcyBtZXRob2QgKi8KKworICAgIHN0cmNweShwYXRobWV0aCwgZGVudC0+ZF9uYW1lKTsKKyAgICBzdHJjcHkocGF0aG1ldGgrbWV0aG9kbGVuLCAiLyIpOworICAgIHBhdGhpbm1ldGg9IHBhdGhtZXRoK21ldGhvZGxlbisxOworCisgICAgZm9yIChjY3BwPSBtZXRob2Rwcm9ncmFtczsgKmNjcHA7IGNjcHArKykgeworICAgICAgc3RyY3B5KHBhdGhpbm1ldGgsKmNjcHApOworICAgICAgaWYgKGFjY2VzcyhwYXRoYnVmLFJfT0t8WF9PSykpCisgICAgICAgIG9oc2hpdGUoXygidW5hYmxlIHRvIGFjY2VzcyBtZXRob2Qgc2NyaXB0IGAlLjI1MHMnIikscGF0aGJ1Zik7CisgICAgfQorICAgIGRlYnVnKGRiZ19nZW5lcmFsLCAiIHJlYWRtZXRob2RzKCclcycsLi4uKSBzY3JpcHRzIG9rIiwgcGF0aGJhc2UpOworCisgICAgc3RyY3B5KHBhdGhpbm1ldGgsTUVUSE9ET1BUSU9OU0ZJTEUpOworICAgIG5hbWVzPSBmb3BlbihwYXRoYnVmLCJyIik7CisgICAgaWYgKCFuYW1lcykgb2hzaGl0ZShfKCJ1bmFibGUgdG8gcmVhZCBtZXRob2Qgb3B0aW9ucyBmaWxlIGAlLjI1MHMnIikscGF0aGJ1Zik7CisKKyAgICBtZXRoPSBuZXcgbWV0aG9kOworICAgIG1ldGgtPm5hbWU9IG5ldyBjaGFyW3N0cmxlbihkZW50LT5kX25hbWUpKzFdOworICAgIHN0cmNweShtZXRoLT5uYW1lLGRlbnQtPmRfbmFtZSk7CisgICAgbWV0aC0+cGF0aD0gbmV3IGNoYXJbYmFzZWxlbisxK21ldGhvZGxlbisyKzUwXTsKKyAgICBzdHJuY3B5KG1ldGgtPnBhdGgscGF0aGJ1ZixiYXNlbGVuKzErbWV0aG9kbGVuKTsKKyAgICBzdHJjcHkobWV0aC0+cGF0aCtiYXNlbGVuKzErbWV0aG9kbGVuLCIvIik7CisgICAgbWV0aC0+cGF0aGlubWV0aD0gbWV0aC0+cGF0aCtiYXNlbGVuKzErbWV0aG9kbGVuKzE7CisgICAgbWV0aC0+bmV4dD0gbWV0aG9kczsKKyAgICBtZXRoLT5wcmV2ID0gMDsKKyAgICBpZiAobWV0aG9kcykKKyAgICAgIG1ldGhvZHMtPnByZXYgPSBtZXRoOworICAgIG1ldGhvZHM9IG1ldGg7CisgICAgZGVidWcoZGJnX2dlbmVyYWwsICIgcmVhZG1ldGhvZHMoJyVzJywuLi4pIG5ldyBtZXRob2QiCisgICAgICAgICAgICAgICAgICAgICAgICIgbmFtZT0nJXMnIHBhdGg9JyVzJyBwYXRoaW5tZXRoPSclcyciLAorICAgICAgICAgIHBhdGhiYXNlLCBtZXRoLT5uYW1lLCBtZXRoLT5wYXRoLCBtZXRoLT5wYXRoaW5tZXRoKTsKKworICAgIHdoaWxlICgoYz0gZmdldGMobmFtZXMpKSAhPSBFT0YpIHsKKyAgICAgIGlmIChpc3NwYWNlKGMpKSBjb250aW51ZTsKKyAgICAgIG9wdD0gbmV3IGRzZWxlY3Rfb3B0aW9uOworICAgICAgb3B0LT5tZXRoPSBtZXRoOworICAgICAgdmIucmVzZXQoKTsKKyAgICAgIGRvIHsKKyAgICAgICAgaWYgKCFpc2RpZ2l0KGMpKSBiYWRtZXRob2QocGF0aGJ1ZixfKCJub24tZGlnaXQgd2hlcmUgZGlnaXQgd2FudGVkIikpOworICAgICAgICB2YihjKTsKKyAgICAgICAgYz0gZmdldGMobmFtZXMpOworICAgICAgICBpZiAoYyA9PSBFT0YpIGVvZm1ldGhvZChwYXRoYnVmLG5hbWVzLF8oIkVPRiBpbiBpbmRleCBzdHJpbmciKSk7CisgICAgICB9IHdoaWxlICghaXNzcGFjZShjKSk7CisgICAgICBpZiAoc3RybGVuKHZiLnN0cmluZygpKSA+IE9QVElPTklOREVYTUFYTEVOKQorICAgICAgICBiYWRtZXRob2QocGF0aGJ1ZixfKCJpbmRleCBzdHJpbmcgdG9vIGxvbmciKSk7CisgICAgICBzdHJjcHkob3B0LT5pbmRleCx2Yi5zdHJpbmcoKSk7CisgICAgICBkbyB7CisgICAgICAgIGlmIChjID09ICdcbicpIGJhZG1ldGhvZChwYXRoYnVmLF8oIm5ld2xpbmUgYmVmb3JlIG9wdGlvbiBuYW1lIHN0YXJ0IikpOworICAgICAgICBjPSBmZ2V0YyhuYW1lcyk7CisgICAgICAgIGlmIChjID09IEVPRikgZW9mbWV0aG9kKHBhdGhidWYsbmFtZXMsXygiRU9GIGJlZm9yZSBvcHRpb24gbmFtZSBzdGFydCIpKTsKKyAgICAgIH0gd2hpbGUgKGlzc3BhY2UoYykpOworICAgICAgdmIucmVzZXQoKTsKKyAgICAgIGlmICghaXNhbHBoYShjKSAmJiBjICE9ICdfJykKKyAgICAgICAgYmFkbWV0aG9kKHBhdGhidWYsXygibm9uYWxwaGEgd2hlcmUgb3B0aW9uIG5hbWUgc3RhcnQgd2FudGVkIikpOworICAgICAgZG8geworICAgICAgICBpZiAoIWlzYWxudW0oYykgJiYgYyAhPSAnXycpIGJhZG1ldGhvZChwYXRoYnVmLF8oIm5vbi1hbHBoYW51bSBpbiBvcHRpb24gbmFtZSIpKTsKKyAgICAgICAgdmIoYyk7CisgICAgICAgIGM9IGZnZXRjKG5hbWVzKTsKKyAgICAgICAgaWYgKGMgPT0gRU9GKSBlb2ZtZXRob2QocGF0aGJ1ZixuYW1lcyxfKCJFT0YgaW4gb3B0aW9uIG5hbWUiKSk7CisgICAgICB9IHdoaWxlICghaXNzcGFjZShjKSk7CisgICAgICBvcHQtPm5hbWU9IG5ldyBjaGFyW3N0cmxlbih2Yi5zdHJpbmcoKSkrMV07CisgICAgICBzdHJjcHkob3B0LT5uYW1lLHZiLnN0cmluZygpKTsKKyAgICAgIGRvIHsKKyAgICAgICAgaWYgKGMgPT0gJ1xuJykgYmFkbWV0aG9kKHBhdGhidWYsXygibmV3bGluZSBiZWZvcmUgc3VtbWFyeSIpKTsKKyAgICAgICAgYz0gZmdldGMobmFtZXMpOworICAgICAgICBpZiAoYyA9PSBFT0YpIGVvZm1ldGhvZChwYXRoYnVmLG5hbWVzLF8oIkVPRiBiZWZvcmUgc3VtbWFyeSIpKTsKKyAgICAgIH0gd2hpbGUgKGlzc3BhY2UoYykpOworICAgICAgdmIucmVzZXQoKTsKKyAgICAgIGRvIHsKKyAgICAgICAgdmIoYyk7CisgICAgICAgIGM9IGZnZXRjKG5hbWVzKTsKKyAgICAgICAgaWYgKGMgPT0gRU9GKSBlb2ZtZXRob2QocGF0aGJ1ZixuYW1lcyxfKCJFT0YgaW4gc3VtbWFyeSAtIG1pc3NpbmcgbmV3bGluZSIpKTsKKyAgICAgIH0gd2hpbGUgKGMgIT0gJ1xuJyk7CisgICAgICBvcHQtPnN1bW1hcnk9IG5ldyBjaGFyW3N0cmxlbih2Yi5zdHJpbmcoKSkrMV07CisgICAgICBzdHJjcHkob3B0LT5zdW1tYXJ5LHZiLnN0cmluZygpKTsKKworICAgICAgc3RyY3B5KHBhdGhpbm1ldGgsT1BUSU9OU0RFU0NQRlgpOworICAgICAgc3RyY3B5KHBhdGhpbm1ldGgrc2l6ZW9mKE9QVElPTlNERVNDUEZYKS0xLG9wdC0+bmFtZSk7CisgICAgICBkZXNjZmlsZT0gZm9wZW4ocGF0aGJ1ZiwiciIpOworICAgICAgaWYgKCFkZXNjZmlsZSkgeworICAgICAgICBpZiAoZXJybm8gIT0gRU5PRU5UKQorICAgICAgICAgIG9oc2hpdGUoXygidW5hYmxlIHRvIG9wZW4gb3B0aW9uIGRlc2NyaXB0aW9uIGZpbGUgYCUuMjUwcyciKSxwYXRoYnVmKTsKKyAgICAgICAgb3B0LT5kZXNjcmlwdGlvbj0gMDsKKyAgICAgIH0gZWxzZSB7IC8qIGRlc2NmaWxlICE9IDAgKi8KKyAgICAgICAgaWYgKGZzdGF0KGZpbGVubyhkZXNjZmlsZSksJnN0YWIpKQorICAgICAgICAgIG9oc2hpdGUoXygidW5hYmxlIHRvIHN0YXQgb3B0aW9uIGRlc2NyaXB0aW9uIGZpbGUgYCUuMjUwcyciKSxwYXRoYnVmKTsKKyAgICAgICAgb3B0LT5kZXNjcmlwdGlvbj0gbmV3IGNoYXJbc3RhYi5zdF9zaXplKzFdOyAgZXJybm89MDsKKyAgICAgICAgc2l6ZV90IGZpbGVsZW4gPSBzdGFiLnN0X3NpemU7CisgICAgICAgIGlmIChmcmVhZChvcHQtPmRlc2NyaXB0aW9uLDEsc3RhYi5zdF9zaXplKzEsZGVzY2ZpbGUpICE9IGZpbGVsZW4pCisgICAgICAgICAgb2hzaGl0ZShfKCJmYWlsZWQgdG8gcmVhZCBvcHRpb24gZGVzY3JpcHRpb24gZmlsZSBgJS4yNTBzJyIpLHBhdGhidWYpOworICAgICAgICBvcHQtPmRlc2NyaXB0aW9uW3N0YWIuc3Rfc2l6ZV09IDA7CisgICAgICAgIGlmIChmZXJyb3IoZGVzY2ZpbGUpKQorICAgICAgICAgIG9oc2hpdGUoXygiZXJyb3IgZHVyaW5nIHJlYWQgb2Ygb3B0aW9uIGRlc2NyaXB0aW9uIGZpbGUgYCUuMjUwcyciKSxwYXRoYnVmKTsKKyAgICAgICAgZmNsb3NlKGRlc2NmaWxlKTsKKyAgICAgIH0KKyAgICAgIHN0cmNweShwYXRoaW5tZXRoLE1FVEhPRE9QVElPTlNGSUxFKTsKKworICAgICAgZGVidWcoZGJnX2dlbmVyYWwsCisgICAgICAgICAgICAiIHJlYWRtZXRob2RzKCclcycsLi4uKSBuZXcgb3B0aW9uIGluZGV4PSclcycgbmFtZT0nJXMnIgorICAgICAgICAgICAgIiBzdW1tYXJ5PSclLjIwcycgc3RybGVuKGRlc2NyaXB0aW9uPSVzKT0lenUgbWV0aG9kIG5hbWU9JyVzJyIKKyAgICAgICAgICAgICIgcGF0aD0nJXMnIHBhdGhpbm1ldGg9JyVzJyIsCisgICAgICAgICAgICBwYXRoYmFzZSwKKyAgICAgICAgICAgIG9wdC0+aW5kZXgsIG9wdC0+bmFtZSwgb3B0LT5zdW1tYXJ5LAorICAgICAgICAgICAgb3B0LT5kZXNjcmlwdGlvbiA/ICInLi4uJyIgOiAibnVsbCIsCisgICAgICAgICAgICBvcHQtPmRlc2NyaXB0aW9uID8gc3RybGVuKG9wdC0+ZGVzY3JpcHRpb24pIDogLTEsCisgICAgICAgICAgICBvcHQtPm1ldGgtPm5hbWUsIG9wdC0+bWV0aC0+cGF0aCwgb3B0LT5tZXRoLT5wYXRoaW5tZXRoKTsKKworICAgICAgZHNlbGVjdF9vcHRpb24gKipvcHRpbnNlcnQgPSBvcHRpb25zcHA7CisgICAgICB3aGlsZSAoKm9wdGluc2VydCAmJiBzdHJjbXAob3B0LT5pbmRleCwgKCpvcHRpbnNlcnQpLT5pbmRleCkgPiAwKQorICAgICAgICBvcHRpbnNlcnQgPSAmKCpvcHRpbnNlcnQpLT5uZXh0OworICAgICAgb3B0LT5uZXh0PSAqb3B0aW5zZXJ0OworICAgICAgKm9wdGluc2VydD0gb3B0OworICAgICAgKCpucmVhZCkrKzsKKyAgICB9CisgICAgaWYgKGZlcnJvcihuYW1lcykpCisgICAgICBvaHNoaXRlKF8oImVycm9yIGR1cmluZyByZWFkIG9mIG1ldGhvZCBvcHRpb25zIGZpbGUgYCUuMjUwcyciKSxwYXRoYnVmKTsKKyAgICBmY2xvc2UobmFtZXMpOworICB9CisgIGNsb3NlZGlyKGRpcik7CisgIGRlYnVnKGRiZ19nZW5lcmFsLCAicmVhZG1ldGhvZHMoJyVzJywuLi4pIGRvbmUiLCBwYXRoYmFzZSk7CisgIGRlbGV0ZVtdIHBhdGhidWY7Cit9CisKK3N0YXRpYyBjaGFyICptZXRob3B0ZmlsZT0gMDsKKwordm9pZCBnZXRjdXJyZW50b3B0KCkgeworICBjaGFyIG1ldGhvcHRidWZbSU1FVEhPRE1BWExFTisxK0lPUFRJT05NQVhMRU4rMl07CisgIEZJTEUgKmNtbzsKKyAgaW50IGw7CisgIGNoYXIgKnA7CisKKyAgaWYgKG1ldGhvcHRmaWxlID09IE5VTEwpCisgICAgbWV0aG9wdGZpbGUgPSBkcGtnX2RiX2dldF9wYXRoKENNRVRIT1BURklMRSk7CisKKyAgY29wdGlvbj0gMDsKKyAgY21vPSBmb3BlbihtZXRob3B0ZmlsZSwiciIpOworICBpZiAoIWNtbykgeworICAgIGlmIChlcnJubyA9PSBFTk9FTlQpIHJldHVybjsKKyAgICBvaHNoaXRlKF8oInVuYWJsZSB0byBvcGVuIGN1cnJlbnQgb3B0aW9uIGZpbGUgYCUuMjUwcyciKSxtZXRob3B0ZmlsZSk7CisgIH0KKyAgZGVidWcoZGJnX2dlbmVyYWwsICJnZXRjdXJyZW50b3B0KCkgY21ldGhvcHQgb3BlbiIpOworICBpZiAoIWZnZXRzKG1ldGhvcHRidWYsc2l6ZW9mKG1ldGhvcHRidWYpLGNtbykpIHsgZmNsb3NlKGNtbyk7IHJldHVybjsgfQorICBpZiAoZmdldGMoY21vKSAhPSBFT0YpIHsgZmNsb3NlKGNtbyk7IHJldHVybjsgfQorICBpZiAoIWZlb2YoY21vKSkgeyBmY2xvc2UoY21vKTsgcmV0dXJuOyB9CisgIGRlYnVnKGRiZ19nZW5lcmFsLCAiZ2V0Y3VycmVudG9wdCgpIGNtZXRob3B0IGVvZiIpOworICBmY2xvc2UoY21vKTsKKyAgZGVidWcoZGJnX2dlbmVyYWwsICJnZXRjdXJyZW50b3B0KCkgY21ldGhvcHQgcmVhZCIpOworICBsPSBzdHJsZW4obWV0aG9wdGJ1Zik7ICBpZiAoIWwgfHwgbWV0aG9wdGJ1ZltsLTFdICE9ICdcbicpIHJldHVybjsKKyAgbWV0aG9wdGJ1ZlstLWxdPSAwOworICBkZWJ1ZyhkYmdfZ2VuZXJhbCwgImdldGN1cnJlbnRvcHQoKSBjbWV0aG9wdCBsZW4gYW5kIG5ld2xpbmUiKTsKKyAgcD0gc3RyY2hyKG1ldGhvcHRidWYsJyAnKTsgIGlmICghcCkgcmV0dXJuOworICBkZWJ1ZyhkYmdfZ2VuZXJhbCwgImdldGN1cnJlbnRvcHQoKSBjbWV0aG9wdCBzcGFjZSIpOworICAqcCsrPSAwOworICBkZWJ1ZyhkYmdfZ2VuZXJhbCwgImdldGN1cnJlbnRvcHQoKSBjbWV0aG9wdCBtZXRoIG5hbWUgJyVzJyIsIG1ldGhvcHRidWYpOworICBtZXRob2QgKm1ldGggPSBtZXRob2RzOworICB3aGlsZSAobWV0aCAmJiBzdHJjbXAobWV0aG9wdGJ1ZiwgbWV0aC0+bmFtZSkpCisgICAgbWV0aCA9IG1ldGgtPm5leHQ7CisgIGlmICghbWV0aCkgcmV0dXJuOworICBkZWJ1ZyhkYmdfZ2VuZXJhbCwgImdldGN1cnJlbnRvcHQoKSBjbWV0aG9wdCBtZXRoIGZvdW5kOyBvcHQgJyVzJyIsIHApOworICBkc2VsZWN0X29wdGlvbiAqb3B0ID0gb3B0aW9uczsKKyAgd2hpbGUgKG9wdCAmJiAob3B0LT5tZXRoICE9IG1ldGggfHwgc3RyY21wKHAsIG9wdC0+bmFtZSkpKQorICAgIG9wdCA9IG9wdC0+bmV4dDsKKyAgaWYgKCFvcHQpIHJldHVybjsKKyAgZGVidWcoZGJnX2dlbmVyYWwsICJnZXRjdXJyZW50b3B0KCkgY21ldGhvcHQgb3B0IGZvdW5kIik7CisgIGNvcHRpb249IG9wdDsKK30KKwordm9pZCB3cml0ZWN1cnJlbnRvcHQoKSB7CisgIEZJTEUgKmNtbzsKKyAgaW50IGw7CisgIHN0YXRpYyBjaGFyICpuZXdmaWxlPTA7CisKKyAgYXNzZXJ0KG1ldGhvcHRmaWxlKTsKKyAgaWYgKCFuZXdmaWxlKSB7CisgICAgbD0gc3RybGVuKG1ldGhvcHRmaWxlKTsKKyAgICBuZXdmaWxlPSBuZXcgY2hhcltsICsgc2l6ZW9mKE5FV0RCRVhUKSArIDFdOworICAgIHN0cmNweShuZXdmaWxlLG1ldGhvcHRmaWxlKTsKKyAgICBzdHJjcHkobmV3ZmlsZStsLCBORVdEQkVYVCk7CisgIH0KKyAgY21vPSBmb3BlbihuZXdmaWxlLCJ3Iik7CisgIGlmICghY21vKSBvaHNoaXRlKF8oInVuYWJsZSB0byBvcGVuIG5ldyBvcHRpb24gZmlsZSBgJS4yNTBzJyIpLG5ld2ZpbGUpOworICBpZiAoZnByaW50ZihjbW8sIiVzICVzXG4iLGNvcHRpb24tPm1ldGgtPm5hbWUsY29wdGlvbi0+bmFtZSkgPT0gRU9GKSB7CisgICAgZmNsb3NlKGNtbyk7CisgICAgb2hzaGl0ZShfKCJ1bmFibGUgdG8gd3JpdGUgbmV3IG9wdGlvbiB0byBgJS4yNTBzJyIpLG5ld2ZpbGUpOworICB9CisgIGlmIChmY2xvc2UoY21vKSkKKyAgICBvaHNoaXRlKF8oInVuYWJsZSB0byBjbG9zZSBuZXcgb3B0aW9uIGZpbGUgYCUuMjUwcyciKSxuZXdmaWxlKTsKKyAgaWYgKHJlbmFtZShuZXdmaWxlLG1ldGhvcHRmaWxlKSkKKyAgICBvaHNoaXRlKF8oInVuYWJsZSB0byBpbnN0YWxsIG5ldyBvcHRpb24gYXMgYCUuMjUwcyciKSxtZXRob3B0ZmlsZSk7Cit9CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvbWtjdXJrZXlzLnBsIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L21rY3Vya2V5cy5wbApuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwLi4wZTlkZjQ1Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L21rY3Vya2V5cy5wbApAQCAtMCwwICsxLDEyMSBAQAorIyEvdXNyL2Jpbi9wZXJsCisjCisjIGRzZWxlY3QgLSBEZWJpYW4gcGFja2FnZSBtYWludGVuYW5jZSB1c2VyIGludGVyZmFjZQorIyBta2N1cmtleXMucGwgLSBnZW5lcmF0ZSBzdHJpbmdzIG1hcHBpbmcga2V5IG5hbWVzIHRvIG5jdXJzZXMgbnVtYmVycworIworIyBDb3B5cmlnaHQgwqkgMTk5NSBJYW4gSmFja3NvbiA8aWFuQGNoaWFyay5ncmVlbmVuZC5vcmcudWs+CisjCisjIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorIworIyBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisjIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisjIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyMKKyMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisKKyQjQVJHViA9PSAxIHx8IGRpZSAoInVzYWdlOiBta2N1cmtleXMucGwgPGZpbGVuYW1lPiA8Y3Vyc2VzLmg+Iik7CisKK29wZW4oT1YsIjwkQVJHVlswXSIpIHx8IGRpZSAkITsKK3doaWxlICg8T1Y+KSB7CisgICAgY2hvbXA7CisgICAgL14jLyAmJiBuZXh0OwkJIyBza2lwIGNvbW1lbnRzCisgICAgL1xTLyB8fCBuZXh0OwkJIyBpZ25vcmUgYmxhbmsgbGluZXMKKyAgICAvXihcdyspXHMrKFxTLipcUylccyokLyB8fCBkaWUgKCJjYW5ub3QgcGFyc2UgbGluZTpcbiRfXG4iKTsKKyAgICAkb3ZlcnskMX09ICQyOworICAgICRiYXNleyQxfT0gJyc7Cit9CitjbG9zZShPVik7CisKK2ZvciAoJGk9MSwgJGxldD0nQSc7ICRpPD0yNjsgJGkrKywgJGxldCsrKSB7CisgICAgJG5hbWV7JGl9PSAiXiRsZXQiOworICAgICRiYXNleyRpfT0gJyc7Cit9CisKK29wZW4oTkNILCI8JEFSR1ZbMV0iKSB8fCBkaWUgJCE7Cit3aGlsZSAoPE5DSD4pIHsKKyAgICBzL1xzKyQvLzsKKyAgICBtLyNkZWZpbmUgS0VZXyhcdyspXHMrXGQrXHMrLyB8fCBuZXh0OworICAgICRyaHM9ICQnOworICAgICRrPSAiS0VZXyQxIjsKKyAgICAkXz0gJDE7CisgICAgJmNhcGl0OworICAgICRiYXNleyRrfT0gJF87CisgICAgJF89ICRyaHM7CisgICAgcy8oXHcpW1woXCldLyQxL2c7CisgICAgcy9cdysgXCgoXHcrKVwpLyQxLzsKKyAgICBuZXh0IHVubGVzcyBtfF4vXCogKFx3W1x3IF0rXHcpIFwqLyR8OworICAgICRfPSAkMTsKKyAgICBzLyBrZXkkLy87CisgICAgbmV4dCBpZiBzL15zaGlmdGVkIC9zaGlmdCAvID8gbS8gLiogLiogLyA6IG0vIC4qIC87CisgICAgJmNhcGl0OworICAgICRuYW1leyRrfT0gJF87Cit9CitjbG9zZShOQ0gpOworCitwcmludGYoPDwnRU5EJykgfHwgZGllICQhOworLyoKKyAqIFdBUk5JTkcgLSBUSElTIEZJTEUgSVMgR0VORVJBVEVEIEFVVE9NQVRJQ0FMTFkgLSBETyBOT1QgRURJVAorICogSXQgaXMgZ2VuZXJhdGVkIGJ5IG1rY3Vya2V5cy5wbCBmcm9tIDxjdXJzZXMuaD4KKyAqIGFuZCBrZXlvdmVycmlkZS4gIElmIHlvdSB3YW50IHRvIG92ZXJyaWRlIHRoaW5ncyB0cnkgYWRkaW5nCisgKiB0aGVtIHRvIGtleW92ZXJyaWRlLgorICovCisKK0VORAorCitmb3IgKCRpPTMzOyAkaTw9MTI2OyAkaSsrKSB7CisgICAgJGs9ICRpOworICAgICR2PSBwYWNrKCJDIiwkaSk7CisgICAgaWYgKCR2IGVxICcsJykgeyAkY29tbWE9JGs7IG5leHQ7IH0KKyAgICAmcDsKK30KKworZm9yICRrIChzb3J0IHsKKyAgICAkYSswIGVxICRhID8KKyAgICAgICAgJGIrMCBlcSAkYiA/ICRhIDw9PiAkYiA6IC0xCisgICAgICAgICAgICA6ICRiKzAgZXEgJGIgPyAxIDoKKyAgICAgICAgICAgICAgICAkYSBjbXAgJGIKKyAgICAgICAgICAgICAgICB9IGtleXMgJWJhc2UpIHsKKyAgICAkdj0gJGJhc2V7JGt9OworICAgICR2PSAkbmFtZXska30gaWYgZGVmaW5lZCgkbmFtZXska30pOworICAgICR2PSAkb3Zlcnska30gaWYgZGVmaW5lZCgkb3Zlcnska30pOworICAgIG5leHQgaWYgJHYgZXEgJ1tlbGlkZV0nOworICAgICZwOworfQorCitmb3IgKCRpPTE7ICRpPDY0OyAkaSsrKSB7CisgICAgJGs9ICJLRVlfRigkaSkiOyAkdj0gIkYkaSI7CisgICAgJnA7Cit9CisKKyRrPSRjb21tYTsgJHY9JywnOyAmcDsKKworcHJpbnQoPDwnRU5EJykgfHwgZGllICQhOworICB7IC0xLCAgICAgICAgICAgICAgMCAgICAgICAgICAgICAgICAgICAgfQorRU5ECisKK2Nsb3NlKFNURE9VVCkgfHwgZGllICQhOworZXhpdCgwKTsKKworc3ViIGNhcGl0IHsKKyAgICAkbz0gJyc7IHkvQS1aL2Etei87ICRfPSAiICRfIjsKKyAgICB3aGlsZSAobS8gKFx3KS8pIHsKKyAgICAgICAgJG8gLj0gJGAuJyAnOworICAgICAgICAkXyA9ICQxOworICAgICAgICB5L2Etei9BLVovOworICAgICAgICAkbyAuPSAkXzsKKyAgICAgICAgJF8gPSAkJzsKKyAgICB9CisgICAgJF89ICRvLiRfOyBzL14gLy87Cit9CisKK3N1YiBwIHsKKyAgICAkdiA9fiBzL1siXFxdL1xcJCYvZzsKKyAgICBwcmludGYoIiAgeyAlLTE1cyBcIiUtMjBzIH0sXG4iLAorICAgICAgICAgICAkay4nLCcsCisgICAgICAgICAgICR2LiciJykgfHwgZGllICQhOworfQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BrZ2NtZHMuY2MgYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcGtnY21kcy5jYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zNjAxYjA3Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BrZ2NtZHMuY2MKQEAgLTAsMCArMSwzMDYgQEAKKy8qCisgKiBkc2VsZWN0IC0gRGViaWFuIHBhY2thZ2UgbWFpbnRlbmFuY2UgdXNlciBpbnRlcmZhY2UKKyAqIHBrZ2NtZHMuY2MgLSBwYWNrYWdlIGxpc3Qga2V5Ym9hcmQgY29tbWFuZHMKKyAqCisgKiBDb3B5cmlnaHQgwqkgMTk5NCwxOTk1IElhbiBKYWNrc29uIDxpYW5AY2hpYXJrLmdyZWVuZW5kLm9yZy51az4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworI2luY2x1ZGUgPGNvbmZpZy5oPgorI2luY2x1ZGUgPGNvbXBhdC5oPgorCisjaW5jbHVkZSA8c3RyaW5nLmg+CisjaW5jbHVkZSA8c3RkaW8uaD4KKworI2luY2x1ZGUgPGRwa2cvZHBrZy5oPgorI2luY2x1ZGUgPGRwa2cvZHBrZy1kYi5oPgorCisjaW5jbHVkZSAiZHNlbGVjdC5oIgorI2luY2x1ZGUgInBrZ2xpc3QuaCIKKworYm9vbAorcGFja2FnZWxpc3Q6OmFmZmVjdGVkbWF0Y2hlcyhzdHJ1Y3QgcGtnaW5mbyAqcGtnLCBzdHJ1Y3QgcGtnaW5mbyAqY29tcGFyZXdpdGgpIHsKKyAgc3dpdGNoIChzdGF0c29ydG9yZGVyKSB7CisgIGNhc2Ugc3NvX2F2YWlsOgorICAgIGlmIChjb21wYXJld2l0aC0+Y2xpZW50ZGF0YS0+c3NhdmFpbCAhPSBwa2ctPmNsaWVudGRhdGEtPnNzYXZhaWwpCisgICAgICByZXR1cm4gZmFsc2U7CisgICAgYnJlYWs7CisgIGNhc2Ugc3NvX3N0YXRlOgorICAgIGlmIChjb21wYXJld2l0aC0+Y2xpZW50ZGF0YS0+c3NzdGF0ZSAhPSBwa2ctPmNsaWVudGRhdGEtPnNzc3RhdGUpCisgICAgICByZXR1cm4gZmFsc2U7CisgICAgYnJlYWs7CisgIGNhc2Ugc3NvX3Vuc29ydGVkOgorICAgIGJyZWFrOworICBkZWZhdWx0OgorICAgIGludGVybmVycigidW5rbm93biBzdGF0c29ydG9yZGVyIGluIGFmZmVjdGVkbWF0Y2hlcyIpOworICB9CisgIGlmIChjb21wYXJld2l0aC0+cHJpb3JpdHkgIT0gcGtnaW5mbzo6cHJpX3Vuc2V0ICYmCisgICAgICAoY29tcGFyZXdpdGgtPnByaW9yaXR5ICE9IHBrZy0+cHJpb3JpdHkgfHwKKyAgICAgICAoY29tcGFyZXdpdGgtPnByaW9yaXR5ID09IHBrZ2luZm86OnByaV9vdGhlciAmJgorICAgICAgICBzdHJjYXNlY21wKGNvbXBhcmV3aXRoLT5vdGhlcnByaW9yaXR5LCBwa2ctPm90aGVycHJpb3JpdHkpKSkpCisgICAgcmV0dXJuIGZhbHNlOworICBpZiAoY29tcGFyZXdpdGgtPnNlY3Rpb24gJiYKKyAgICAgIHN0cmNhc2VjbXAoY29tcGFyZXdpdGgtPnNlY3Rpb24sCisgICAgICAgICAgICAgICAgIHBrZy0+c2VjdGlvbiA/CisgICAgICAgICAgICAgICAgIHBrZy0+c2VjdGlvbiA6ICIiKSkKKyAgICByZXR1cm4gZmFsc2U7CisgIHJldHVybiB0cnVlOworfQorCit2b2lkIHBhY2thZ2VsaXN0OjphZmZlY3RlZHJhbmdlKGludCAqc3RhcnRwLCBpbnQgKmVuZHApIHsKKyAgaWYgKHRhYmxlW2N1cnNvcmxpbmVdLT5wa2ctPm5hbWUpIHsKKyAgICAqc3RhcnRwPSBjdXJzb3JsaW5lOworICAgICplbmRwPSBjdXJzb3JsaW5lKzE7CisgICAgcmV0dXJuOworICB9CisgIGludCBpbmRleCA9IGN1cnNvcmxpbmU7CisgIHdoaWxlIChpbmRleCA8IG5pdGVtcyAmJiAhdGFibGVbaW5kZXhdLT5wa2ctPm5hbWUpCisgICAgaW5kZXgrKzsKKyAgaWYgKGluZGV4ID49IG5pdGVtcykgeworICAgICpzdGFydHA9ICplbmRwPSBjdXJzb3JsaW5lOworICAgIHJldHVybjsKKyAgfQorICAqc3RhcnRwPSBpbmRleDsKKyAgd2hpbGUgKGluZGV4IDwgbml0ZW1zICYmIGFmZmVjdGVkbWF0Y2hlcyh0YWJsZVtpbmRleF0tPnBrZyx0YWJsZVtjdXJzb3JsaW5lXS0+cGtnKSkKKyAgICBpbmRleCsrOworICAqZW5kcD0gaW5kZXg7Cit9CisKK3ZvaWQgcGFja2FnZWxpc3Q6Om1vdmVjdXJzb3JhZnRlcihpbnQgbmN1cnNvcikgeworICBpZiAobmN1cnNvciA+PSBuaXRlbXMpIG5jdXJzb3I9IG5pdGVtcy0xOworICB0b3BvZnNjcmVlbiArPSBuY3Vyc29yLWN1cnNvcmxpbmU7CisgIGlmICh0b3BvZnNjcmVlbiA+IG5pdGVtcyAtIGxpc3RfaGVpZ2h0KSB0b3BvZnNjcmVlbj0gbml0ZW1zIC0gbGlzdF9oZWlnaHQ7CisgIGlmICh0b3BvZnNjcmVlbiA8IDApIHRvcG9mc2NyZWVuPSAwOworICBzZXRjdXJzb3IobmN1cnNvcik7CisgIHJlZnJlc2hsaXN0KCk7IHJlZHJhd3RoaXNzdGF0ZSgpOworfQorCitwa2dpbmZvOjpwa2d3YW50IHBhY2thZ2VsaXN0OjpyZWFsbHl3YW50KHBrZ2luZm86OnBrZ3dhbnQgbndhcmcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cnVjdCBwZXJwYWNrYWdlc3RhdGUgKnBrZ3N0YXRlKSB7CisgIGlmIChud2FyZyAhPSBwa2dpbmZvOjp3YW50X3NlbnRpbmVsKSByZXR1cm4gbndhcmc7CisgIHBrZ2luZm86OnBrZ3N0YXR1cyBzdGF0dXM9IHBrZ3N0YXRlLT5wa2ctPnN0YXR1czsKKyAgaWYgKHN0YXR1cyA9PSBwa2dpbmZvOjpzdGF0X25vdGluc3RhbGxlZCkgcmV0dXJuIHBrZ2luZm86OndhbnRfcHVyZ2U7CisgIGlmIChzdGF0dXMgPT0gcGtnaW5mbzo6c3RhdF9jb25maWdmaWxlcykgcmV0dXJuIHBrZ2luZm86OndhbnRfZGVpbnN0YWxsOworICByZXR1cm4gcGtnaW5mbzo6d2FudF9pbnN0YWxsOworfQorCit2b2lkIHBhY2thZ2VsaXN0OjpzZXR3YW50KHBrZ2luZm86OnBrZ3dhbnQgbndhcmcpIHsKKyAgaW50IGluZGV4LCB0b3AsIGJvdDsKKyAgcGtnaW5mbzo6cGtnd2FudCBudzsKKworICBpZiAoIXJlYWR3cml0ZSkgeyBiZWVwKCk7IHJldHVybjsgfQorCisgIGlmIChyZWN1cnNpdmUpIHsKKyAgICByZWRyYXdpdGVtc3JhbmdlKGN1cnNvcmxpbmUsY3Vyc29ybGluZSsxKTsKKyAgICB0YWJsZVtjdXJzb3JsaW5lXS0+c2VsZWN0ZWQ9IHJlYWxseXdhbnQobndhcmcsdGFibGVbY3Vyc29ybGluZV0pOworICAgIHJlZHJhdzFpdGVtKGN1cnNvcmxpbmUpOworICAgIHRvcD0gY3Vyc29ybGluZTsKKyAgICBib3Q9IGN1cnNvcmxpbmUrMTsKKyAgfSBlbHNlIHsKKyAgICBwYWNrYWdlbGlzdCAqc3ViPSBuZXcgcGFja2FnZWxpc3QoYmluZGluZ3MsMCk7CisKKyAgICBhZmZlY3RlZHJhbmdlKCZ0b3AsJmJvdCk7CisgICAgZm9yIChpbmRleD0gdG9wOyBpbmRleCA8IGJvdDsgaW5kZXgrKykgeworICAgICAgaWYgKCF0YWJsZVtpbmRleF0tPnBrZy0+bmFtZSkgY29udGludWU7CisgICAgICBudz0gcmVhbGx5d2FudChud2FyZyx0YWJsZVtpbmRleF0pOworICAgICAgaWYgKHRhYmxlW2luZGV4XS0+c2VsZWN0ZWQgPT0gbncgfHwKKyAgICAgICAgICAodGFibGVbaW5kZXhdLT5zZWxlY3RlZCA9PSBwa2dpbmZvOjp3YW50X3B1cmdlICYmCisgICAgICAgICAgIG53ID09IHBrZ2luZm86OndhbnRfZGVpbnN0YWxsKSkKKyAgICAgICAgY29udGludWU7CisgICAgICBzdWItPmFkZCh0YWJsZVtpbmRleF0tPnBrZyxudyk7CisgICAgfQorCisgICAgcmVwZWF0ZWRseWRpc3BsYXkoc3ViLGRwX21heSx0aGlzKTsKKyAgICBmb3IgKGluZGV4PXRvcDsgaW5kZXggPCBib3Q7IGluZGV4KyspCisgICAgICByZWRyYXcxaXRlbShpbmRleCk7CisgIH0KKyAgbW92ZWN1cnNvcmFmdGVyKGJvdCk7Cit9CisKK2ludCBtYW51YWxfaW5zdGFsbCA9IDA7CisKK3ZvaWQgcGFja2FnZWxpc3Q6OmtkX3NlbGVjdCgpICAgeworCW1hbnVhbF9pbnN0YWxsID0gMTsKKwlzZXR3YW50KHBrZ2luZm86OndhbnRfaW5zdGFsbCk7CisJbWFudWFsX2luc3RhbGwgPSAwOworfQordm9pZCBwYWNrYWdlbGlzdDo6a2RfaG9sZCgpICAgICB7IHNldHdhbnQocGtnaW5mbzo6d2FudF9ob2xkKTsgICAgICB9Cit2b2lkIHBhY2thZ2VsaXN0OjprZF9kZXNlbGVjdCgpIHsgc2V0d2FudChwa2dpbmZvOjp3YW50X2RlaW5zdGFsbCk7IH0KK3ZvaWQgcGFja2FnZWxpc3Q6OmtkX3VuaG9sZCgpICAgeyBzZXR3YW50KHBrZ2luZm86OndhbnRfc2VudGluZWwpOyAgfQordm9pZCBwYWNrYWdlbGlzdDo6a2RfcHVyZ2UoKSAgICB7IHNldHdhbnQocGtnaW5mbzo6d2FudF9wdXJnZSk7ICAgICB9CisKK2ludCB3b3VsZF9saWtlX3RvX2luc3RhbGwocGtnaW5mbzo6cGtnd2FudCB3YW50dmFsdWUsIHBrZ2luZm8gKnBrZykgeworICAvKiBSZXR1cm5zOiAxIGZvciB5ZXMsIDAgZm9yIG5vLCAtMSBmb3IgaWYgdGhleSB3YW50IHRvIHByZXNlcnZlIGFuIGVycm9yIGNvbmRpdGlvbi4gKi8KKyAgZGVidWcoZGJnX2dlbmVyYWwsICJ3b3VsZF9saWtlX3RvX2luc3RhbGwoJWQsICVzKSBzdGF0dXMgJWQiLAorICAgICAgICB3YW50dmFsdWUsIHBrZy0+bmFtZSwgcGtnLT5zdGF0dXMpOworCisgIGlmICh3YW50dmFsdWUgPT0gcGtnaW5mbzo6d2FudF9pbnN0YWxsKSByZXR1cm4gMTsKKyAgaWYgKHdhbnR2YWx1ZSAhPSBwa2dpbmZvOjp3YW50X2hvbGQpIHJldHVybiAwOworICBpZiAocGtnLT5zdGF0dXMgPT0gcGtnaW5mbzo6c3RhdF9pbnN0YWxsZWQpIHJldHVybiAxOworICBpZiAocGtnLT5zdGF0dXMgPT0gcGtnaW5mbzo6c3RhdF9ub3RpbnN0YWxsZWQgfHwKKyAgICAgIHBrZy0+c3RhdHVzID09IHBrZ2luZm86OnN0YXRfY29uZmlnZmlsZXMpIHJldHVybiAwOworICByZXR1cm4gLTE7Cit9CisKK2NvbnN0IGNoYXIgKnBhY2thZ2VsaXN0OjppdGVtbmFtZShpbnQgaW5kZXgpIHsKKyAgcmV0dXJuIHRhYmxlW2luZGV4XS0+cGtnLT5uYW1lOworfQorCit2b2lkIHBhY2thZ2VsaXN0OjprZF9zd2Fwc3RhdG9yZGVyKCkgeworICBpZiAoc29ydG9yZGVyID09IHNvX3Vuc29ydGVkKSByZXR1cm47CisgIHN3aXRjaCAoc3RhdHNvcnRvcmRlcikgeworICBjYXNlIHNzb19hdmFpbDogICAgIHN0YXRzb3J0b3JkZXI9IHNzb19zdGF0ZTsgICAgIGJyZWFrOworICBjYXNlIHNzb19zdGF0ZTogICAgIHN0YXRzb3J0b3JkZXI9IHNzb191bnNvcnRlZDsgIGJyZWFrOworICBjYXNlIHNzb191bnNvcnRlZDogIHN0YXRzb3J0b3JkZXI9IHNzb19hdmFpbDsgICAgIGJyZWFrOworICBkZWZhdWx0OiBpbnRlcm5lcnIoInVua25vd24gc3RhdHNvcnQgaW4ga2Rfc3dhcHN0YXRvcmRlciIpOworICB9CisgIHJlc29ydHJlZGlzcGxheSgpOworfQorCit2b2lkIHBhY2thZ2VsaXN0OjprZF9zd2Fwb3JkZXIoKSB7CisgIHN3aXRjaCAoc29ydG9yZGVyKSB7CisgIGNhc2Ugc29fcHJpb3JpdHk6ICBzb3J0b3JkZXI9IHNvX3NlY3Rpb247ICAgYnJlYWs7CisgIGNhc2Ugc29fc2VjdGlvbjogICBzb3J0b3JkZXI9IHNvX2FscGhhOyAgICAgYnJlYWs7CisgIGNhc2Ugc29fYWxwaGE6ICAgICBzb3J0b3JkZXI9IHNvX3ByaW9yaXR5OyAgYnJlYWs7CisgIGNhc2Ugc29fdW5zb3J0ZWQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuOworICBkZWZhdWx0OiBpbnRlcm5lcnIoInVua25vd24gc29ydCBpbiBrZF9zd2Fwb3JkZXIiKTsKKyAgfQorICByZXNvcnRyZWRpc3BsYXkoKTsKK30KKwordm9pZCBwYWNrYWdlbGlzdDo6cmVzb3J0cmVkaXNwbGF5KCkgeworICBjb25zdCBjaGFyICpvbGRuYW1lPSB0YWJsZVtjdXJzb3JsaW5lXS0+cGtnLT5uYW1lOworICBzb3J0bWFrZWhlYWRzKCk7CisgIGludCBuZXdjdXJzb3I7CisgIG5ld2N1cnNvcj0gMDsKKyAgaWYgKG9sZG5hbWUpIHsKKyAgICBpbnQgaW5kZXg7CisgICAgZm9yIChpbmRleD0wOyBpbmRleDxuaXRlbXM7IGluZGV4KyspIHsKKyAgICAgIGlmICh0YWJsZVtpbmRleF0tPnBrZy0+bmFtZSAmJiAhc3RyY2FzZWNtcChvbGRuYW1lLHRhYmxlW2luZGV4XS0+cGtnLT5uYW1lKSkgeworICAgICAgICBuZXdjdXJzb3I9IGluZGV4OworICAgICAgICBicmVhazsKKyAgICAgIH0KKyAgICB9CisgIH0KKyAgdG9wb2ZzY3JlZW49IG5ld2N1cnNvci0xOworICBpZiAodG9wb2ZzY3JlZW4gPiBuaXRlbXMgLSBsaXN0X2hlaWdodCkgdG9wb2ZzY3JlZW49IG5pdGVtcy1saXN0X2hlaWdodDsKKyAgaWYgKHRvcG9mc2NyZWVuIDwgMCkgdG9wb2ZzY3JlZW49IDA7CisgIHNldHdpZHRocygpOworICByZWRyYXd0aXRsZSgpOworICByZWRyYXdjb2xoZWFkcygpOworICBsZHJhd25zdGFydD0gbGRyYXduZW5kPSAtMTsKKyAgY3Vyc29ybGluZT0gLTE7CisgIHNldGN1cnNvcihuZXdjdXJzb3IpOworICByZWZyZXNobGlzdCgpOworfQorCit2b2lkIHBhY2thZ2VsaXN0OjprZF92ZXJzaW9uZGlzcGxheSgpIHsKKyAgc3dpdGNoICh2ZXJzaW9uZGlzcGxheW9wdCkgeworICBjYXNlIHZkb19ib3RoOiAgICAgICB2ZXJzaW9uZGlzcGxheW9wdD0gdmRvX25vbmU7ICAgICAgIGJyZWFrOworICBjYXNlIHZkb19ub25lOiAgICAgICB2ZXJzaW9uZGlzcGxheW9wdD0gdmRvX2F2YWlsYWJsZTsgIGJyZWFrOworICBjYXNlIHZkb19hdmFpbGFibGU6ICB2ZXJzaW9uZGlzcGxheW9wdD0gdmRvX2JvdGg7ICAgICAgIGJyZWFrOworICBkZWZhdWx0OiBpbnRlcm5lcnIoInVua25vd24gdmVyc2lvbmRpc3BsYXlvcHQgaW4ga2RfdmVyc2lvbmRpc3BsYXkiKTsKKyAgfQorICBzZXR3aWR0aHMoKTsKKyAgbGVmdG9mc2NyZWVuPSAwOworICBsZHJhd25zdGFydD0gbGRyYXduZW5kPSAtMTsKKyAgcmVkcmF3dGl0bGUoKTsKKyAgcmVkcmF3Y29saGVhZHMoKTsKKyAgcmVkcmF3aXRlbXNyYW5nZSh0b3BvZnNjcmVlbiwgbWluKHRvcG9mc2NyZWVuICsgbGlzdF9oZWlnaHQsIG5pdGVtcykpOworICByZWZyZXNobGlzdCgpOworfQorCit2b2lkIHBhY2thZ2VsaXN0OjprZF92ZXJib3NlKCkgeworICB2ZXJib3NlPSAhdmVyYm9zZTsKKyAgc2V0d2lkdGhzKCk7CisgIGxlZnRvZnNjcmVlbj0gMDsKKyAgbGRyYXduc3RhcnQ9IGxkcmF3bmVuZD0gLTE7CisgIHJlZHJhd3RpdGxlKCk7CisgIHJlZHJhd2NvbGhlYWRzKCk7CisgIHJlZHJhd2l0ZW1zcmFuZ2UodG9wb2ZzY3JlZW4sIG1pbih0b3BvZnNjcmVlbiArIGxpc3RfaGVpZ2h0LCBuaXRlbXMpKTsKKyAgcmVmcmVzaGxpc3QoKTsKK30KKwordm9pZCBwYWNrYWdlbGlzdDo6a2RfcXVpdF9ub29wKCkgeyB9CisKK3ZvaWQgcGFja2FnZWxpc3Q6OmtkX3JldmVydF9hYm9ydCgpIHsKKyAgaW50IGluZGV4OworICBmb3IgKGluZGV4PTA7IGluZGV4PG5pdGVtczsgaW5kZXgrKykgeworICAgIGlmICh0YWJsZVtpbmRleF0tPnBrZy0+bmFtZSkKKyAgICAgIHRhYmxlW2luZGV4XS0+c2VsZWN0ZWQ9IHRhYmxlW2luZGV4XS0+b3JpZ2luYWw7CisgICAgbGRyYXduc3RhcnQ9IGxkcmF3bmVuZD0gLTE7CisgIH0KKyAgcmVmcmVzaGxpc3QoKTsgcmVkcmF3dGhpc3N0YXRlKCk7Cit9CisKK3ZvaWQgcGFja2FnZWxpc3Q6OmtkX3JldmVydGRpcmVjdCgpIHsKKyAgaW50IGluZGV4OworICBmb3IgKGluZGV4PTA7IGluZGV4PG5pdGVtczsgaW5kZXgrKykgeworICAgIGlmICh0YWJsZVtpbmRleF0tPnBrZy0+bmFtZSkKKyAgICAgIHRhYmxlW2luZGV4XS0+c2VsZWN0ZWQ9IHRhYmxlW2luZGV4XS0+ZGlyZWN0OworICAgIGxkcmF3bnN0YXJ0PSBsZHJhd25lbmQ9IC0xOworICB9CisgIHJlZnJlc2hsaXN0KCk7IHJlZHJhd3RoaXNzdGF0ZSgpOworfQorCit2b2lkIHBhY2thZ2VsaXN0OjprZF9yZXZlcnRzdWdnZXN0KCkgeworICBpbnQgaW5kZXg7CisgIGZvciAoaW5kZXg9MDsgaW5kZXg8bml0ZW1zOyBpbmRleCsrKSB7CisgICAgaWYgKHRhYmxlW2luZGV4XS0+cGtnLT5uYW1lKQorICAgICAgdGFibGVbaW5kZXhdLT5zZWxlY3RlZD0gdGFibGVbaW5kZXhdLT5zdWdnZXN0ZWQ7CisgICAgbGRyYXduc3RhcnQ9IGxkcmF3bmVuZD0gLTE7CisgIH0KKyAgcmVmcmVzaGxpc3QoKTsgcmVkcmF3dGhpc3N0YXRlKCk7Cit9CisKK3ZvaWQKK3BhY2thZ2VsaXN0OjprZF9yZXZlcnRpbnN0YWxsZWQoKQoreworICBpbnQgaTsKKworICBmb3IgKGkgPSAwOyBpIDwgbml0ZW1zOyBpKyspIHsKKyAgICBpZiAodGFibGVbaV0tPnBrZy0+bmFtZSkKKyAgICAgIHRhYmxlW2ldLT5zZWxlY3RlZCA9IHJlYWxseXdhbnQocGtnaW5mbzo6d2FudF9zZW50aW5lbCwgdGFibGVbaV0pOworICAgIGxkcmF3bnN0YXJ0ID0gbGRyYXduZW5kID0gLTE7CisgIH0KKworICByZWZyZXNobGlzdCgpOworICByZWRyYXd0aGlzc3RhdGUoKTsKK30KKworLyogRklYTUU6IGNvbmZpZ3VyYWJsZSBwdXJnZS9kZXNlbGVjdCAqLworCit2b2lkIHBhY2thZ2VsaXN0OjprZF90b2dnbGVpbmZvKCkgeworICBzaG93aW5mbz0gKHNob3dpbmZvKzIpICUgMzsKKyAgc2V0aGVpZ2h0cygpOworICBpZiAoY3Vyc29ybGluZSA+PSB0b3BvZnNjcmVlbitsaXN0X2hlaWdodCkgdG9wb2ZzY3JlZW4gKz0gbGlzdF9oZWlnaHQ7CisgIGlmICh0b3BvZnNjcmVlbiA+IG5pdGVtcyAtIGxpc3RfaGVpZ2h0KSB0b3BvZnNjcmVlbj0gbml0ZW1zLWxpc3RfaGVpZ2h0OworICBpZiAodG9wb2ZzY3JlZW4gPCAwKSB0b3BvZnNjcmVlbj0gMDsKKyAgaW5mb3RvcG9mc2NyZWVuPSAwOworICByZWRyYXcxaXRlbShjdXJzb3JsaW5lKTsKKyAgcmVmcmVzaGxpc3QoKTsKKyAgcmVkcmF3dGhpc3N0YXRlKCk7CisgIHJlZHJhd2luZm8oKTsKK30KKwordm9pZCBwYWNrYWdlbGlzdDo6a2RfaW5mbygpIHsKKyAgaWYgKCFzaG93aW5mbykgeworICAgIHNob3dpbmZvPSAyOyBrZF90b2dnbGVpbmZvKCk7CisgIH0gZWxzZSB7CisgICAgY3VycmVudGluZm8rKzsKKyAgICBpbmZvdG9wb2ZzY3JlZW49MDsKKyAgICByZWRyYXdpbmZvKCk7CisgIH0KK30KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wa2dkZXBjb24uY2MgYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcGtnZGVwY29uLmNjCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjcxZjQ0YTAKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcGtnZGVwY29uLmNjCkBAIC0wLDAgKzEsNDI2IEBACisvKgorICogZHNlbGVjdCAtIERlYmlhbiBwYWNrYWdlIG1haW50ZW5hbmNlIHVzZXIgaW50ZXJmYWNlCisgKiBwa2dkZXBjb24uY2MgLSBkZXBlbmRlbmN5IGFuZCBjb25mbGljdCByZXNvbHV0aW9uCisgKgorICogQ29weXJpZ2h0IMKpIDE5OTUgSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuZ3JlZW5lbmQub3JnLnVrPgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaW5jbHVkZSA8Y29uZmlnLmg+CisjaW5jbHVkZSA8Y29tcGF0Lmg+CisKKyNpbmNsdWRlIDxhc3NlcnQuaD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDxzdGRpby5oPgorCisjaW5jbHVkZSA8ZHBrZy9kcGtnLmg+CisjaW5jbHVkZSA8ZHBrZy9kcGtnLWRiLmg+CisKKyNpbmNsdWRlICJkc2VsZWN0LmgiCisjaW5jbHVkZSAicGtnbGlzdC5oIgorCitib29sCitwYWNrYWdlbGlzdDo6dXNlYXZhaWxhYmxlKHBrZ2luZm8gKnBrZykKK3sKKyAgaWYgKHBrZy0+Y2xpZW50ZGF0YSAmJgorICAgICAgcGtnLT5jbGllbnRkYXRhLT5zZWxlY3RlZCA9PSBwa2dpbmZvOjp3YW50X2luc3RhbGwgJiYKKyAgICAgIHBrZ19pc19pbmZvcm1hdGl2ZShwa2csICZwa2ctPmF2YWlsYWJsZSkgJiYKKyAgICAgICghKHBrZy0+c3RhdHVzID09IHBrZ2luZm86OnN0YXRfaW5zdGFsbGVkIHx8CisgICAgICAgICBwa2ctPnN0YXR1cyA9PSBwa2dpbmZvOjpzdGF0X3RyaWdnZXJzYXdhaXRlZCB8fAorICAgICAgICAgcGtnLT5zdGF0dXMgPT0gcGtnaW5mbzo6c3RhdF90cmlnZ2Vyc3BlbmRpbmcpIHx8CisgICAgICAgdmVyc2lvbmNvbXBhcmUoJnBrZy0+YXZhaWxhYmxlLnZlcnNpb24sJnBrZy0+aW5zdGFsbGVkLnZlcnNpb24pID4gMCkpCisgICAgcmV0dXJuIHRydWU7CisgIGVsc2UKKyAgICByZXR1cm4gZmFsc2U7Cit9CisKK3BrZ2JpbiAqCitwYWNrYWdlbGlzdDo6ZmluZF9wa2diaW4ocGtnaW5mbyAqcGtnKQoreworICBwa2diaW4gKnI7CisgIHI9IHVzZWF2YWlsYWJsZShwa2cpID8gJnBrZy0+YXZhaWxhYmxlIDogJnBrZy0+aW5zdGFsbGVkOworICBkZWJ1ZyhkYmdfZ2VuZXJhbCwgInBhY2thZ2VsaXN0WyVwXTo6ZmluZF9wa2diaW4oJXMpIHVzZWF2YWlsYWJsZT0lZCIsCisgICAgICAgIHRoaXMsIHBrZy0+bmFtZSwgdXNlYXZhaWxhYmxlKHBrZykpOworCisgIHJldHVybiByOworfQorCitpbnQgcGFja2FnZWxpc3Q6OmNoZWNrZGVwZW5kZXJzKHBrZ2luZm8gKnBrZywgaW50IGNoYW5nZW1hZGUpIHsKKyAgc3RydWN0IGRlcHBvc3NpICpwb3NzaTsKKworICBmb3IgKHBvc3NpID0gcGtnLT5hdmFpbGFibGUuZGVwZW5kZWQ7IHBvc3NpOyBwb3NzaSA9IHBvc3NpLT5yZXZfbmV4dCkgeworICAgIGlmICghdXNlYXZhaWxhYmxlKHBvc3NpLT51cC0+dXApKQorICAgICAgY29udGludWU7CisgICAgY2hhbmdlbWFkZSA9IG1heChjaGFuZ2VtYWRlLCByZXNvbHZlZGVwY29uKHBvc3NpLT51cCkpOworICB9CisgIGZvciAocG9zc2kgPSBwa2ctPmluc3RhbGxlZC5kZXBlbmRlZDsgcG9zc2k7IHBvc3NpID0gcG9zc2ktPnJldl9uZXh0KSB7CisgICAgaWYgKHVzZWF2YWlsYWJsZShwb3NzaS0+dXAtPnVwKSkKKyAgICAgIGNvbnRpbnVlOworICAgIGNoYW5nZW1hZGUgPSBtYXgoY2hhbmdlbWFkZSwgcmVzb2x2ZWRlcGNvbihwb3NzaS0+dXApKTsKKyAgfQorICByZXR1cm4gY2hhbmdlbWFkZTsKK30KKworaW50IHBhY2thZ2VsaXN0OjpyZXNvbHZlc3VnZ2VzdCgpIHsKKyAgLy8gV2UgY29udGludWFsbHkgZ28gYXJvdW5kIGxvb2tpbmcgZm9yIHRoaW5ncyB0byBjaGFuZ2UsIGJ1dCB3ZSBtYXkKKyAgLy8gb25seSBjaGFuZ2UgdGhlIGBzdWdnZXN0ZWQnIHZhbHVlIGlmIHdlIGFsc28gaW5jcmVhc2UgdGhlIGBwcmlvcml0eScKKyAgLy8gUmV0dXJuIDIgaWYgd2UgbWFkZSBhIGNoYW5nZSBkdWUgdG8gYSBSZWNvbW1lbmRlZCwgRGVwZW5kcyBvciBDb25maWN0cywKKyAgLy8gb3IgMSBpZiB3ZSBvZmZlcmVkIG9yIG1hZGUgYSBjaGFuZ2UgYmVjYXVzZSBvZiBhbiBPcHRpb25hbCBsaW5lLgorICBkZWJ1ZyhkYmdfZ2VuZXJhbCwgInBhY2thZ2VsaXN0WyVwXTo6cmVzb2x2ZXN1Z2dlc3QoKSIsIHRoaXMpOworICBpbnQgY2hhbmdlbWFkZSwgbWF4Y2hhbmdlbWFkZTsKKyAgbWF4Y2hhbmdlbWFkZT0gMDsKKyAgZm9yICg7OykgeworICAgIGNoYW5nZW1hZGU9IDA7CisgICAgaW50IGluZGV4OworICAgIGZvciAoaW5kZXg9MDsgaW5kZXg8bml0ZW1zOyBpbmRleCsrKSB7CisgICAgICBpZiAoIXRhYmxlW2luZGV4XS0+cGtnLT5uYW1lKSBjb250aW51ZTsKKyAgICAgIGRlYnVnKGRiZ19kZXBjb24sICJwYWNrYWdlbGlzdFslcF06OnJlc29sdmVzdWdnZXN0KCkgbG9vcFslaV0gJXMgLyAlZCIsCisgICAgICAgICAgICB0aGlzLCBpbmRleCwgdGFibGVbaW5kZXhdLT5wa2ctPm5hbWUsIGNoYW5nZW1hZGUpOworICAgICAgZGVwZW5kZW5jeSAqZGVwZW5kczsKKyAgICAgIGZvciAoZGVwZW5kcyA9IGZpbmRfcGtnYmluKHRhYmxlW2luZGV4XS0+cGtnKS0+ZGVwZW5kczsKKyAgICAgICAgICAgZGVwZW5kczsKKyAgICAgICAgICAgZGVwZW5kcz0gZGVwZW5kcy0+bmV4dCkgeworICAgICAgICBjaGFuZ2VtYWRlID0gbWF4KGNoYW5nZW1hZGUsIHJlc29sdmVkZXBjb24oZGVwZW5kcykpOworICAgICAgfQorICAgICAgY2hhbmdlbWFkZT0gY2hlY2tkZXBlbmRlcnModGFibGVbaW5kZXhdLT5wa2csY2hhbmdlbWFkZSk7CisgICAgICBmb3IgKGRlcGVuZHMgPSBmaW5kX3BrZ2Jpbih0YWJsZVtpbmRleF0tPnBrZyktPmRlcGVuZHM7CisgICAgICAgICAgIGRlcGVuZHM7CisgICAgICAgICAgIGRlcGVuZHM9IGRlcGVuZHMtPm5leHQpIHsKKyAgICAgICAgaWYgKGRlcGVuZHMtPnR5cGUgIT0gZGVwX3Byb3ZpZGVzKSBjb250aW51ZTsKKyAgICAgICAgY2hhbmdlbWFkZT0gY2hlY2tkZXBlbmRlcnMoZGVwZW5kcy0+bGlzdC0+ZWQsY2hhbmdlbWFkZSk7CisgICAgICB9CisgICAgICBkZWJ1ZyhkYmdfZGVwY29uLCAicGFja2FnZWxpc3RbJXBdOjpyZXNvbHZlc3VnZ2VzdCgpIGxvb3BbJWldICVzIC8gLT4gJWQiLAorICAgICAgICAgICAgdGhpcywgaW5kZXgsIHRhYmxlW2luZGV4XS0+cGtnLT5uYW1lLCBjaGFuZ2VtYWRlKTsKKyAgICB9CisgICAgaWYgKCFjaGFuZ2VtYWRlKSBicmVhazsKKyAgICBtYXhjaGFuZ2VtYWRlID0gbWF4KG1heGNoYW5nZW1hZGUsIGNoYW5nZW1hZGUpOworICB9CisgIGRlYnVnKGRiZ19nZW5lcmFsLCAicGFja2FnZWxpc3RbJXBdOjpyZXNvbHZlc3VnZ2VzdCgpIGRvbmU7IG1heGNoYW5nZW1hZGU9JWQiLAorICAgICAgICB0aGlzLCBtYXhjaGFuZ2VtYWRlKTsKKyAgcmV0dXJuIG1heGNoYW5nZW1hZGU7Cit9CisKK3N0YXRpYyBpbnQgZGVwX3VwZGF0ZV9iZXN0X3RvX2NoYW5nZV9zdG9wKHBlcnBhY2thZ2VzdGF0ZSAqJiBiZXN0LCBwa2dpbmZvICp0cnl0aGlzKSB7CisgIC8vIFRoZXJlJ3Mgbm8gcG9pbnQgdHJ5aW5nIHRvIHNlbGVjdCBhIHB1cmUgdmlydHVhbCBwYWNrYWdlLgorICBpZiAoIXRyeXRoaXMtPmNsaWVudGRhdGEpIHJldHVybiAwOworCisgIGRlYnVnKGRiZ19kZXBjb24sICJ1cGRhdGVfYmVzdF90b19jaGFuZ2UoYmVzdD0lc3slZH0sIHRlc3Q9JXN7JWR9KTsiLAorICAgICAgICBiZXN0ID8gYmVzdC0+cGtnLT5uYW1lIDogIiIsIGJlc3QgPyAoaW50KWJlc3QtPnNwcmlvcml0eSA6IC0xLAorICAgICAgICB0cnl0aGlzLT5uYW1lLCB0cnl0aGlzLT5jbGllbnRkYXRhLT5zcHJpb3JpdHkpOworCisgIC8vIElmIHRoZSBwcm9ibGVtIGlzIGNhdXNlZCBieSB1cyBkZXNlbGVjdGluZyBvbmUgb2YgdGhlc2UgcGFja2FnZXMKKyAgLy8gd2Ugc2hvdWxkIG5vdCB0cnkgdG8gc2VsZWN0IGFub3RoZXIgb25lIGluc3RlYWQuCisgIGlmICh0cnl0aGlzLT5jbGllbnRkYXRhLT5zcHJpb3JpdHkgPT0gc3BfZGVzZWxlY3RpbmcpIHJldHVybiAxOworCisgIC8vIElmIHdlIGhhdmVuJ3QgZm91bmQgYW55dGhpbmcgeWV0IHRoZW4gdGhpcyBpcyBvdXIgYmVzdCBzbyBmYXIuCisgIGlmICghYmVzdCkgZ290byB5ZXM7CisKKyAgLy8gSWYgb25seSBvbmUgb2YgdGhlIHBhY2thZ2VzIGlzIGF2YWlsYWJsZSwgdXNlIHRoYXQgb25lCisgIGlmICghcGtnX2lzX2luZm9ybWF0aXZlKHRyeXRoaXMsICZ0cnl0aGlzLT5hdmFpbGFibGUpICYmCisgICAgICBwa2dfaXNfaW5mb3JtYXRpdmUoYmVzdC0+cGtnLCAmYmVzdC0+cGtnLT5hdmFpbGFibGUpKQorICAgIHJldHVybiAwOworICBpZiAocGtnX2lzX2luZm9ybWF0aXZlKHRyeXRoaXMsICZ0cnl0aGlzLT5hdmFpbGFibGUpICYmCisgICAgICAhcGtnX2lzX2luZm9ybWF0aXZlKGJlc3QtPnBrZywgJmJlc3QtPnBrZy0+YXZhaWxhYmxlKSkKKyAgICBnb3RvIHllczsKKworICAvLyBTZWxlY3QgdGhlIHBhY2thZ2Ugd2l0aCB0aGUgbG93ZXN0IHByaW9yaXR5IChpZSwgdGhlIG9uZSBvZiB3aG9tCisgIC8vIHdlIHdlcmUgbGVhc3Qgc3VyZSB3ZSB3YW50ZWQgaXQgZGVzZWxlY3RlZCkuCisgIGlmICh0cnl0aGlzLT5jbGllbnRkYXRhLT5zcHJpb3JpdHkgPiBiZXN0LT5zcHJpb3JpdHkpIHJldHVybiAwOworICBpZiAodHJ5dGhpcy0+Y2xpZW50ZGF0YS0+c3ByaW9yaXR5IDwgYmVzdC0+c3ByaW9yaXR5KSBnb3RvIHllczsKKworICAvLyBQaWNrIHRoZSBwYWNrYWdlIHdpdGggdGhlIG11c3QgZnVuZGFtZW50YWwgcmVjb21tZW5kYXRpb24gbGV2ZWwuCisgIGlmICh0cnl0aGlzLT5wcmlvcml0eSA+IGJlc3QtPnBrZy0+cHJpb3JpdHkpIHJldHVybiAwOworICBpZiAodHJ5dGhpcy0+cHJpb3JpdHkgPCBiZXN0LT5wa2ctPnByaW9yaXR5KSBnb3RvIHllczsKKworICAvLyBJZiB3ZSdyZSBzdGlsbCB1bnN1cmUgd2UnbGwgY2hhbmdlIHRoZSBmaXJzdCBvbmUgaW4gdGhlIGxpc3QuCisgIHJldHVybiAwOworCisgeWVzOgorICBkZWJ1ZyhkYmdfZGVwY29uLCAidXBkYXRlX2Jlc3RfdG9fY2hhbmdlKCk7IHllcyIpOworCisgIGJlc3Q9dHJ5dGhpcy0+Y2xpZW50ZGF0YTsgcmV0dXJuIDA7Cit9CisKK2ludAorcGFja2FnZWxpc3Q6OmRlc2VsZWN0X29uZV9vZihwa2dpbmZvICpwZXIsIHBrZ2luZm8gKnBlZCwgZGVwZW5kZW5jeSAqZGVwKQoreworICBwZXJwYWNrYWdlc3RhdGUgKmVyPSBwZXItPmNsaWVudGRhdGE7CisgIHBlcnBhY2thZ2VzdGF0ZSAqZWQ9IHBlZC0+Y2xpZW50ZGF0YTsKKworICBpZiAoIWVyIHx8ICF3b3VsZF9saWtlX3RvX2luc3RhbGwoZXItPnNlbGVjdGVkLHBlcikgfHwKKyAgICAgICFlZCB8fCAhd291bGRfbGlrZV90b19pbnN0YWxsKGVkLT5zZWxlY3RlZCxwZWQpKSByZXR1cm4gMDsKKworICBhZGQoZGVwLCBkcF9tdXN0KTsKKworICBlcj0gcGVyLT5jbGllbnRkYXRhOyAgLy8gdGhlc2UgY2FuIGJlIGNoYW5nZWQgYnkgYWRkCisgIGVkPSBwZWQtPmNsaWVudGRhdGE7CisKKyAgZGVidWcoZGJnX2RlcGNvbiwKKyAgICAgICAgInBhY2thZ2VsaXN0WyVwXTo6ZGVzZWxlY3Rfb25lX29mKCk6IGVyICVzeyVkfSBlZCAlc3slZH0gWyVwXSIsCisgICAgICAgIHRoaXMsIGVyLT5wa2ctPm5hbWUsIGVyLT5zcHJpb3JpdHksIGVkLT5wa2ctPm5hbWUsIGVkLT5zcHJpb3JpdHksIGRlcCk7CisKKyAgcGVycGFja2FnZXN0YXRlICpiZXN0OworCisgIC8vIFRyeSBub3Qga2VlcCBwYWNrYWdlcyBuZWVkaW5nIHJlaW5zdGFsbGF0aW9uLgorICBpZiAocGVyLT5lZmxhZyAmIHBrZ2luZm86OmVmbGFnX3JlaW5zdHJlcSkKKyAgICBiZXN0ID0gZWQ7CisgIGVsc2UgaWYgKHBlZC0+ZWZsYWcgJiBwa2dpbmZvOjplZmxhZ19yZWluc3RyZXEpCisgICAgYmVzdCA9IGVyOworICBlbHNlIGlmIChlci0+c3ByaW9yaXR5IDwgZWQtPnNwcmlvcml0eSkgYmVzdD0gZXI7IC8vIFdlJ2QgcmF0aGVyIGNoYW5nZSB0aGUKKyAgZWxzZSBpZiAoZXItPnNwcmlvcml0eSA+IGVkLT5zcHJpb3JpdHkpIGJlc3Q9IGVkOyAvLyBvbmUgd2l0aCB0aGUgbG93ZXN0IHByaW9yaXR5LgorICAvLyAuLi4gZmFpbGluZyB0aGF0IHRoZSBvbmUgd2l0aCB0aGUgaGlnaGVzdCBwcmlvcml0eQorICBlbHNlIGlmIChlci0+cGtnLT5wcmlvcml0eSA+IGVkLT5wa2ctPnByaW9yaXR5KQorICAgIGJlc3QgPSBlcjsKKyAgZWxzZSBpZiAoZXItPnBrZy0+cHJpb3JpdHkgPCBlZC0+cGtnLT5wcmlvcml0eSkKKyAgICBiZXN0ID0gZWQ7CisgIGVsc2UgYmVzdD0gZWQ7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyAuLi4gZmFpbGluZyB0aGF0LCB0aGUgc2Vjb25kCisKKyAgZGVidWcoZGJnX2RlcGNvbiwgInBhY2thZ2VsaXN0WyVwXTo6ZGVzZWxlY3Rfb25lX29mKCk6IGJlc3QgJXN7JWR9IiwKKyAgICAgICAgdGhpcywgYmVzdC0+cGtnLT5uYW1lLCBiZXN0LT5zcHJpb3JpdHkpOworCisgIGlmIChiZXN0LT5zcHJpb3JpdHkgPj0gc3BfZGVzZWxlY3RpbmcpIHJldHVybiAwOworICBiZXN0LT5zdWdnZXN0ZWQ9CisgICAgYmVzdC0+cGtnLT5zdGF0dXMgPT0gcGtnaW5mbzo6c3RhdF9ub3RpbnN0YWxsZWQKKyAgICAgID8gcGtnaW5mbzo6d2FudF9wdXJnZSA6IHBrZ2luZm86OndhbnRfZGVpbnN0YWxsOyAvLyBGSVhNRTogY29uZmlndXJhYmxlLgorICBiZXN0LT5zZWxlY3RlZD0gYmVzdC0+c3VnZ2VzdGVkOworICBiZXN0LT5zcHJpb3JpdHk9IHNwX2Rlc2VsZWN0aW5nOworCisgIHJldHVybiAyOworfQorCitpbnQgcGFja2FnZWxpc3Q6OnJlc29sdmVkZXBjb24oZGVwZW5kZW5jeSAqZGVwZW5kcykgeworICBwZXJwYWNrYWdlc3RhdGUgKmJlc3QsICpmaXhieXVwZ3JhZGU7CisgIGRlcHBvc3NpICpwb3NzaSwgKnByb3ZpZGVyOworICBpbnQgciwgZm91bmRhbnk7CisKKyAgaWYgKGRlYnVnX2hhc19mbGFnKGRiZ19kZXBjb24pKSB7CisgICAgdmFyYnVmIHBrZ19uYW1lczsKKworICAgIGZvciAocG9zc2kgPSBkZXBlbmRzLT5saXN0OyBwb3NzaTsgcG9zc2kgPSBwb3NzaS0+bmV4dCkgeworICAgICAgcGtnX25hbWVzKCcgJyk7CisgICAgICBwa2dfbmFtZXMocG9zc2ktPmVkLT5uYW1lKTsKKyAgICB9CisKKyAgICBkZWJ1ZyhkYmdfZGVwY29uLAorICAgICAgICAgICJwYWNrYWdlbGlzdFslcF06OnJlc29sdmVkZXBjb24oWyVwXSAlcyAtLSVzLS0+JXMpOyAoaW5nKS0+d2FudD0lcyIsCisgICAgICAgICAgdGhpcywgZGVwZW5kcywgZGVwZW5kcy0+dXAtPm5hbWUsIHJlbGF0ZXN0cmluZ3NbZGVwZW5kcy0+dHlwZV0sCisgICAgICAgICAgcGtnX25hbWVzLnN0cmluZygpLCBkZXBlbmRzLT51cC0+Y2xpZW50ZGF0YSA/CisgICAgICAgICAgd2FudHN0cmluZ3NbZGVwZW5kcy0+dXAtPmNsaWVudGRhdGEtPnN1Z2dlc3RlZF0gOiAiKG5vIGNsaWVudGRhdGEpIik7CisgIH0KKworICBpZiAoIWRlcGVuZHMtPnVwLT5jbGllbnRkYXRhKSByZXR1cm4gMDsKKworICBzd2l0Y2ggKGRlcGVuZHMtPnR5cGUpIHsKKworICBjYXNlIGRlcF9wcm92aWRlczoKKyAgY2FzZSBkZXBfcmVwbGFjZXM6CisgICAgcmV0dXJuIDA7CisKKyAgY2FzZSBkZXBfZW5oYW5jZXM6CisgIGNhc2UgZGVwX3N1Z2dlc3RzOgorICBjYXNlIGRlcF9yZWNvbW1lbmRzOgorICBjYXNlIGRlcF9kZXBlbmRzOgorICBjYXNlIGRlcF9wcmVkZXBlbmRzOgorICAgIGlmICh3b3VsZF9saWtlX3RvX2luc3RhbGwoZGVwZW5kcy0+dXAtPmNsaWVudGRhdGEtPnNlbGVjdGVkLGRlcGVuZHMtPnVwKSA8PSAwKQorICAgICAgcmV0dXJuIDA7CisKKyAgICBmaXhieXVwZ3JhZGU9IDA7CisKKyAgICBwb3NzaSA9IGRlcGVuZHMtPmxpc3Q7CisgICAgd2hpbGUgKHBvc3NpICYmICFkZXBwb3NzYXRpc2ZpZWQocG9zc2ksICZmaXhieXVwZ3JhZGUpKQorICAgICAgcG9zc2kgPSBwb3NzaS0+bmV4dDsKKyAgICBkZWJ1ZyhkYmdfZGVwY29uLCAicGFja2FnZWxpc3RbJXBdOjpyZXNvbHZlZGVwY29uKFslcF0pOiBkZXBlbmRzIGZvdW5kICVzIiwKKyAgICAgICAgICB0aGlzLCBkZXBlbmRzLCBwb3NzaSA/IHBvc3NpLT5lZC0+bmFtZSA6ICJbbm9uZV0iKTsKKyAgICBpZiAocG9zc2kpIHJldHVybiAwOworCisgICAgLy8gRW5zdXJlcyBhbGwgaW4gdGhlIHJlY3Vyc2l2ZSBsaXN0OyBhZGRzIGluZm8gc3RyaW5nczsgdXBzIHByaW9yaXRpZXMKKyAgICBzd2l0Y2ggKGRlcGVuZHMtPnR5cGUpIHsKKyAgICBjYXNlIGRlcF9lbmhhbmNlczoKKyAgICBjYXNlIGRlcF9zdWdnZXN0czoKKyAgICAJcj0gYWRkKGRlcGVuZHMsIGRwX21heSk7CisJcmV0dXJuIHI7CisgICAgY2FzZSBkZXBfcmVjb21tZW5kczoKKyAgICAJcj0gYWRkKGRlcGVuZHMsIGRwX3Nob3VsZCk7CisJYnJlYWs7CisgICAgZGVmYXVsdDoKKyAgICAJcj0gYWRkKGRlcGVuZHMsIGRwX211c3QpOworICAgIH0KKworICAgIGlmIChmaXhieXVwZ3JhZGUpIHsKKyAgICAgIGRlYnVnKGRiZ19kZXBjb24sCisgICAgICAgICAgICAicGFja2FnZWxpc3RbJXBdOjpyZXNvbHZlZGVwY29uKFslcF0pOiBmaXhieXVwZ3JhZGUgJXMiLAorICAgICAgICAgICAgdGhpcywgZGVwZW5kcywgZml4Ynl1cGdyYWRlLT5wa2ctPm5hbWUpOworICAgICAgYmVzdD0gZml4Ynl1cGdyYWRlOworICAgIH0gZWxzZSB7CisgICAgICBiZXN0PSAwOworICAgICAgZm9yIChwb3NzaT0gZGVwZW5kcy0+bGlzdDsKKyAgICAgICAgICAgcG9zc2k7CisgICAgICAgICAgIHBvc3NpPSBwb3NzaS0+bmV4dCkgeworICAgICAgICBmb3VuZGFueT0gMDsKKyAgICAgICAgaWYgKHBvc3NpLT5lZC0+Y2xpZW50ZGF0YSkgZm91bmRhbnk9IDE7CisgICAgICAgIGlmIChkZXBfdXBkYXRlX2Jlc3RfdG9fY2hhbmdlX3N0b3AoYmVzdCwgcG9zc2ktPmVkKSkgZ290byBtdXN0ZGVzZWxlY3Q7CisgICAgICAgIGZvciAocHJvdmlkZXIgPSBwb3NzaS0+ZWQtPmF2YWlsYWJsZS5kZXBlbmRlZDsKKyAgICAgICAgICAgICBwcm92aWRlcjsKKyAgICAgICAgICAgICBwcm92aWRlciA9IHByb3ZpZGVyLT5yZXZfbmV4dCkgeworICAgICAgICAgIGlmIChwcm92aWRlci0+dXAtPnR5cGUgIT0gZGVwX3Byb3ZpZGVzKSBjb250aW51ZTsKKyAgICAgICAgICBpZiAocHJvdmlkZXItPnVwLT51cC0+Y2xpZW50ZGF0YSkgZm91bmRhbnk9IDE7CisgICAgICAgICAgaWYgKGRlcF91cGRhdGVfYmVzdF90b19jaGFuZ2Vfc3RvcChiZXN0LCBwcm92aWRlci0+dXAtPnVwKSkgZ290byBtdXN0ZGVzZWxlY3Q7CisgICAgICAgIH0KKyAgICAgICAgaWYgKCFmb3VuZGFueSkgYWRkdW5hdmFpbGFibGUocG9zc2kpOworICAgICAgfQorICAgICAgaWYgKCFiZXN0KSB7CisgICAgICAgIGRlYnVnKGRiZ19kZXBjb24sCisgICAgICAgICAgICAgICJwYWNrYWdlbGlzdFslcF06OnJlc29sdmVkZXBjb24oWyVwXSk6IG11c3RkZXNlbGVjdCBub2Jlc3QiLAorICAgICAgICAgICAgICB0aGlzLCBkZXBlbmRzKTsKKyAgICAgICAgcmV0dXJuIHI7CisgICAgICB9CisgICAgfQorICAgIGRlYnVnKGRiZ19kZXBjb24sCisgICAgICAgICAgInBhY2thZ2VsaXN0WyVwXTo6cmVzb2x2ZWRlcGNvbihbJXBdKTogc2VsZWN0IGJlc3Q9JXN7JWR9IiwKKyAgICAgICAgICB0aGlzLCBkZXBlbmRzLCBiZXN0LT5wa2ctPm5hbWUsIGJlc3QtPnNwcmlvcml0eSk7CisgICAgaWYgKGJlc3QtPnNwcmlvcml0eSA+PSBzcF9zZWxlY3RpbmcpIHJldHVybiByOworICAgIC8qIEFsd2F5cyBzZWxlY3QgZGVwZW5kcy4gT25seSBzZWxlY3QgcmVjb21tZW5kcyBpZiB3ZSBnb3QgaGVyZSBiZWNhdXNlCisgICAgICogb2YgYSBtYW51YWxseS1pbml0aWF0ZWQgaW5zdGFsbCByZXF1ZXN0LiAqLworICAgIGlmIChkZXBlbmRzLT50eXBlICE9IGRlcF9yZWNvbW1lbmRzIHx8IG1hbnVhbF9pbnN0YWxsKSB7CisgICAgICBiZXN0LT5zZWxlY3RlZD0gYmVzdC0+c3VnZ2VzdGVkPSBwa2dpbmZvOjp3YW50X2luc3RhbGw7CisgICAgICBiZXN0LT5zcHJpb3JpdHk9IHNwX3NlbGVjdGluZzsKKyAgICB9CisgICAgcmV0dXJuIHIgPyAyIDogMDsKKworICBtdXN0ZGVzZWxlY3Q6CisgICAgYmVzdD0gZGVwZW5kcy0+dXAtPmNsaWVudGRhdGE7CisgICAgZGVidWcoZGJnX2RlcGNvbiwKKyAgICAgICAgICAicGFja2FnZWxpc3RbJXBdOjpyZXNvbHZlZGVwY29uKFslcF0pOiBtdXN0ZGVzZWxlY3QgYmVzdD0lc3slZH0iLAorICAgICAgICAgIHRoaXMsIGRlcGVuZHMsIGJlc3QtPnBrZy0+bmFtZSwgYmVzdC0+c3ByaW9yaXR5KTsKKworICAgIGlmIChiZXN0LT5zcHJpb3JpdHkgPj0gc3BfZGVzZWxlY3RpbmcpIHJldHVybiByOworICAgIC8qIEFsd2F5cyByZW1vdmUgZGVwZW5kcywgYnV0IG5ldmVyIHJlbW92ZSByZWNvbW1lbmRzLiAqLworICAgIGlmIChkZXBlbmRzLT50eXBlICE9IGRlcF9yZWNvbW1lbmRzKSB7CisgICAgICBiZXN0LT5zZWxlY3RlZD0gYmVzdC0+c3VnZ2VzdGVkPQorICAgICAgICBiZXN0LT5wa2ctPnN0YXR1cyA9PSBwa2dpbmZvOjpzdGF0X25vdGluc3RhbGxlZAorICAgICAgICAgID8gcGtnaW5mbzo6d2FudF9wdXJnZSA6IHBrZ2luZm86OndhbnRfZGVpbnN0YWxsOyAvLyBGSVhNRTogY29uZmlndXJhYmxlCisgICAgICBiZXN0LT5zcHJpb3JpdHk9IHNwX2Rlc2VsZWN0aW5nOworICAgIH0KKyAgICByZXR1cm4gciA/IDIgOiAwOworCisgIGNhc2UgZGVwX2NvbmZsaWN0czoKKyAgY2FzZSBkZXBfYnJlYWtzOgorICAgIGRlYnVnKGRiZ19kZXBjb24sICJwYWNrYWdlbGlzdFslcF06OnJlc29sdmVkZXBjb24oWyVwXSk6IGNvbmZsaWN0IiwKKyAgICAgICAgICB0aGlzLCBkZXBlbmRzKTsKKworICAgIGlmICh3b3VsZF9saWtlX3RvX2luc3RhbGwoZGVwZW5kcy0+dXAtPmNsaWVudGRhdGEtPnNlbGVjdGVkLGRlcGVuZHMtPnVwKSA9PSAwKQorICAgICAgcmV0dXJuIDA7CisKKyAgICBkZWJ1ZyhkYmdfZGVwY29uLAorICAgICAgICAgICJwYWNrYWdlbGlzdFslcF06OnJlc29sdmVkZXBjb24oWyVwXSk6IGNvbmZsaWN0IGluc3RhbGxpbmcgMSIsCisgICAgICAgICAgdGhpcywgZGVwZW5kcyk7CisKKyAgICBpZiAoIWRlcHBvc3NhdGlzZmllZChkZXBlbmRzLT5saXN0LDApKSByZXR1cm4gMDsKKworICAgIGRlYnVnKGRiZ19kZXBjb24sCisgICAgICAgICAgInBhY2thZ2VsaXN0WyVwXTo6cmVzb2x2ZWRlcGNvbihbJXBdKTogY29uZmxpY3Qgc2F0aXNmaWVkIC0gb3VjaCIsCisgICAgICAgICAgdGhpcywgZGVwZW5kcyk7CisKKyAgICBpZiAoZGVwZW5kcy0+dXAgIT0gZGVwZW5kcy0+bGlzdC0+ZWQpIHsKKyAgICAgIHI9IGRlc2VsZWN0X29uZV9vZihkZXBlbmRzLT51cCwgZGVwZW5kcy0+bGlzdC0+ZWQsIGRlcGVuZHMpOyAgaWYgKHIpIHJldHVybiByOworICAgIH0KKyAgICBmb3IgKHByb3ZpZGVyID0gZGVwZW5kcy0+bGlzdC0+ZWQtPmF2YWlsYWJsZS5kZXBlbmRlZDsKKyAgICAgICAgIHByb3ZpZGVyOworICAgICAgICAgcHJvdmlkZXIgPSBwcm92aWRlci0+cmV2X25leHQpIHsKKyAgICAgIGlmIChwcm92aWRlci0+dXAtPnR5cGUgIT0gZGVwX3Byb3ZpZGVzKSBjb250aW51ZTsKKyAgICAgIGlmIChwcm92aWRlci0+dXAtPnVwID09IGRlcGVuZHMtPnVwKSBjb250aW51ZTsgLy8gY29uZmxpY3RzICYgcHJvdmlkZXMgc2FtZSB0aGluZworICAgICAgcj0gZGVzZWxlY3Rfb25lX29mKGRlcGVuZHMtPnVwLCBwcm92aWRlci0+dXAtPnVwLCBkZXBlbmRzKTsgIGlmIChyKSByZXR1cm4gcjsKKyAgICB9CisgICAgZGVidWcoZGJnX2RlcGNvbiwgInBhY2thZ2VsaXN0WyVwXTo6cmVzb2x2ZWRlcGNvbihbJXBdKTogbm8gZGVzZWwiLAorICAgICAgICAgIHRoaXMsIGRlcGVuZHMpOworICAgIHJldHVybiAwOworCisgIGRlZmF1bHQ6CisgICAgaW50ZXJuZXJyKCJ1bmtub3duIGRlcHR5cGUiKTsKKyAgfQorICAvKiBuZXZlciByZWFjaGVkLCBtYWtlIGdjYyBoYXBweSAqLworICByZXR1cm4gMTsKK30KKworYm9vbAorcGFja2FnZWxpc3Q6OmRlcHBvc3NhdGlzZmllZChkZXBwb3NzaSAqcG9zc2ksIHBlcnBhY2thZ2VzdGF0ZSAqKmZpeGJ5dXBncmFkZSkKK3sKKyAgLy8gYHNhdGlzZmllZCcgaGVyZSBmb3IgQ29uZmxpY3RzIGFuZCBCcmVha3MgbWVhbnMgdGhhdCB0aGUKKyAgLy8gIHJlc3RyaWN0aW9uIGlzIHZpb2xhdGVkIGllIHRoYXQgdGhlIHRhcmdldCBwYWNrYWdlIGlzIHdhbnRlZAorICBpbnQgd291bGQ7CisgIHBrZ2luZm86OnBrZ3dhbnQgd2FudD0gcGtnaW5mbzo6d2FudF9wdXJnZTsKKworICBpZiAocG9zc2ktPmVkLT5jbGllbnRkYXRhKSB7CisgICAgd2FudD0gcG9zc2ktPmVkLT5jbGllbnRkYXRhLT5zZWxlY3RlZDsKKyAgICB3b3VsZD0gd291bGRfbGlrZV90b19pbnN0YWxsKHdhbnQscG9zc2ktPmVkKTsKKyAgfSBlbHNlIHsKKyAgICB3b3VsZD0gMDsKKyAgfQorCisgIGlmICgocG9zc2ktPnVwLT50eXBlID09IGRlcF9jb25mbGljdHMgfHwgcG9zc2ktPnVwLT50eXBlID09IGRlcF9icmVha3MpCisgICAgICA/IHBvc3NpLT51cC0+dXAgIT0gcG9zc2ktPmVkICYmIHdvdWxkICE9IDAKKyAgICAgIDogd291bGQgPiAwKSB7CisgICAgLy8gSWYgaXQncyB0byBiZSBpbnN0YWxsZWQgb3IgbGVmdCBpbnN0YWxsZWQsIHRoZW4gZWl0aGVyIGl0J3Mgb2YKKyAgICAvLyB0aGUgcmlnaHQgdmVyc2lvbiwgYW5kIHRoZXJlZm9yZSBPSywgb3IgYSB2ZXJzaW9uIG11c3QgaGF2ZQorICAgIC8vIGJlZW4gc3BlY2lmaWVkLCBpbiB3aGljaCBjYXNlIHdlIGRvbid0IG5lZWQgdG8gbG9vayBhdCB0aGUgcmVzdAorICAgIC8vIGFueXdheS4KKyAgICBpZiAodXNlYXZhaWxhYmxlKHBvc3NpLT5lZCkpIHsKKyAgICAgIGFzc2VydCh3YW50ID09IHBrZ2luZm86OndhbnRfaW5zdGFsbCk7CisgICAgICByZXR1cm4gdmVyc2lvbnNhdGlzZmllZCgmcG9zc2ktPmVkLT5hdmFpbGFibGUscG9zc2kpOworICAgIH0gZWxzZSB7CisgICAgICBpZiAodmVyc2lvbnNhdGlzZmllZCgmcG9zc2ktPmVkLT5pbnN0YWxsZWQsIHBvc3NpKSkKKyAgICAgICAgcmV0dXJuIHRydWU7CisgICAgICBpZiAod2FudCA9PSBwa2dpbmZvOjp3YW50X2hvbGQgJiYgZml4Ynl1cGdyYWRlICYmICEqZml4Ynl1cGdyYWRlICYmCisgICAgICAgICAgdmVyc2lvbnNhdGlzZmllZCgmcG9zc2ktPmVkLT5hdmFpbGFibGUscG9zc2kpICYmCisgICAgICAgICAgdmVyc2lvbmNvbXBhcmUoJnBvc3NpLT5lZC0+YXZhaWxhYmxlLnZlcnNpb24sCisgICAgICAgICAgICAgICAgICAgICAgICAgJnBvc3NpLT5lZC0+aW5zdGFsbGVkLnZlcnNpb24pID4gMSkKKyAgICAgICAgKmZpeGJ5dXBncmFkZT0gcG9zc2ktPmVkLT5jbGllbnRkYXRhOworICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0KKyAgfQorICBpZiAocG9zc2ktPnZlcnJlbCAhPSBkdnJfbm9uZSkKKyAgICByZXR1cm4gZmFsc2U7CisgIGRlcHBvc3NpICpwcm92aWRlcjsKKworICBmb3IgKHByb3ZpZGVyID0gcG9zc2ktPmVkLT5pbnN0YWxsZWQuZGVwZW5kZWQ7CisgICAgICAgcHJvdmlkZXI7CisgICAgICAgcHJvdmlkZXIgPSBwcm92aWRlci0+cmV2X25leHQpIHsKKyAgICBpZiAocHJvdmlkZXItPnVwLT50eXBlID09IGRlcF9wcm92aWRlcyAmJgorICAgICAgICBwcm92aWRlci0+dXAtPnVwLT5jbGllbnRkYXRhICYmCisgICAgICAgICF1c2VhdmFpbGFibGUocHJvdmlkZXItPnVwLT51cCkgJiYKKyAgICAgICAgd291bGRfbGlrZV90b19pbnN0YWxsKHByb3ZpZGVyLT51cC0+dXAtPmNsaWVudGRhdGEtPnNlbGVjdGVkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvdmlkZXItPnVwLT51cCkpCisgICAgICByZXR1cm4gdHJ1ZTsKKyAgfQorICBmb3IgKHByb3ZpZGVyID0gcG9zc2ktPmVkLT5hdmFpbGFibGUuZGVwZW5kZWQ7CisgICAgICAgcHJvdmlkZXI7CisgICAgICAgcHJvdmlkZXIgPSBwcm92aWRlci0+cmV2X25leHQpIHsKKyAgICBpZiAocHJvdmlkZXItPnVwLT50eXBlICE9IGRlcF9wcm92aWRlcyB8fAorICAgICAgICAhcHJvdmlkZXItPnVwLT51cC0+Y2xpZW50ZGF0YSB8fAorICAgICAgICAhd291bGRfbGlrZV90b19pbnN0YWxsKHByb3ZpZGVyLT51cC0+dXAtPmNsaWVudGRhdGEtPnNlbGVjdGVkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByb3ZpZGVyLT51cC0+dXApKQorICAgICAgY29udGludWU7CisgICAgaWYgKHVzZWF2YWlsYWJsZShwcm92aWRlci0+dXAtPnVwKSkKKyAgICAgIHJldHVybiB0cnVlOworICAgIGlmIChmaXhieXVwZ3JhZGUgJiYgISpmaXhieXVwZ3JhZGUgJiYKKyAgICAgICAgKCEocHJvdmlkZXItPnVwLT51cC0+c3RhdHVzID09IHBrZ2luZm86OnN0YXRfaW5zdGFsbGVkIHx8CisgICAgICAgICAgIHByb3ZpZGVyLT51cC0+dXAtPnN0YXR1cyA9PSBwa2dpbmZvOjpzdGF0X3RyaWdnZXJzcGVuZGluZyB8fAorICAgICAgICAgICBwcm92aWRlci0+dXAtPnVwLT5zdGF0dXMgPT0gcGtnaW5mbzo6c3RhdF90cmlnZ2Vyc2F3YWl0ZWQpIHx8CisgICAgICAgICB2ZXJzaW9uY29tcGFyZSgmcHJvdmlkZXItPnVwLT51cC0+YXZhaWxhYmxlLnZlcnNpb24sCisgICAgICAgICAgICAgICAgICAgICAgICAmcHJvdmlkZXItPnVwLT51cC0+aW5zdGFsbGVkLnZlcnNpb24pID4gMSkpCisgICAgICAqZml4Ynl1cGdyYWRlID0gcHJvdmlkZXItPnVwLT51cC0+Y2xpZW50ZGF0YTsKKyAgfQorICByZXR1cm4gZmFsc2U7Cit9CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcGtnZGlzcGxheS5jYyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wa2dkaXNwbGF5LmNjCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjY3NzUwYjMKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcGtnZGlzcGxheS5jYwpAQCAtMCwwICsxLDI2OSBAQAorLyoKKyAqIGRzZWxlY3QgLSBEZWJpYW4gcGFja2FnZSBtYWludGVuYW5jZSB1c2VyIGludGVyZmFjZQorICogcGtnZGlzcGxheS5jYyAtIHBhY2thZ2UgbGlzdCBkaXNwbGF5CisgKgorICogQ29weXJpZ2h0IMKpIDE5OTQsMTk5NSBJYW4gSmFja3NvbiA8aWFuQGNoaWFyay5ncmVlbmVuZC5vcmcudWs+CisgKgorICogVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisgKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAqIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorICovCisKKyNpbmNsdWRlIDxjb25maWcuaD4KKyNpbmNsdWRlIDxjb21wYXQuaD4KKworI2luY2x1ZGUgPHN0cmluZy5oPgorI2luY2x1ZGUgPHN0ZGlvLmg+CisKKyNpbmNsdWRlIDxkcGtnL2kxOG4uaD4KKyNpbmNsdWRlIDxkcGtnL2Rwa2cuaD4KKyNpbmNsdWRlIDxkcGtnL2Rwa2ctZGIuaD4KKworI2luY2x1ZGUgImRzZWxlY3QuaCIKKyNpbmNsdWRlICJwa2dsaXN0LmgiCisKKy8qIFRoZXNlIE1VU1QgYmUgaW4gdGhlIHNhbWUgb3JkZXIgYXMgdGhlIGNvcnJlc3BvbmRpbmcgZW51bXMgaW4gZHBrZy1kYi5oICovCitjb25zdCBjaGFyCisgICpjb25zdCB3YW50c3RyaW5nc1tdPSAgIHsgTl8oIm5ldyBwYWNrYWdlIiksCisJCQkgICAgTl8oImluc3RhbGwiKSwKKwkJCSAgICBOXygiaG9sZCIpLAorCQkJICAgIE5fKCJyZW1vdmUiKSwKKwkJCSAgICBOXygicHVyZ2UiKSwKKwkJCSAgICAwIH0sCisKKyAgLyogVFJBTlNMQVRPUlM6IFRoZSBzcGFjZSBpcyBhIHRyaWNrIHRvIHdvcmsgYXJvdW5kIGdldHRleHQgd2hpY2ggdXNlcworICAgKiB0aGUgZW1wdHkgc3RyaW5nIHRvIHN0b3JlIGluZm9ybWF0aW9uIGFib3V0IHRoZSB0cmFuc2xhdGlvbi4gRE8gTk9UCisgICAqIENIQU5HRSBUSEFUIElOIEEgVFJBTlNMQVRJT04hIFRoZSBjb2RlIHJlYWxseSByZWxpZXMgb24gdGhhdCBiZWluZworICAgKiBhIHNpbmdsZSBzcGFjZS4gKi8KKyAgKmNvbnN0IGVmbGFnc3RyaW5nc1tdPSAgIHsgTl8oIiAiKSwKKwkJCSAgICAgTl8oIlJFSU5TVEFMTCIpLAorCQkJICAgICAwIH0sCisKKyAgKmNvbnN0IHN0YXR1c3N0cmluZ3NbXT0geyBOXygibm90IGluc3RhbGxlZCIpLAorCQkJICAgIE5fKCJyZW1vdmVkIChjb25maWdzIHJlbWFpbikiKSwKKwkJCSAgICBOXygiaGFsZiBpbnN0YWxsZWQiKSwKKwkJCSAgICBOXygidW5wYWNrZWQgKG5vdCBzZXQgdXApIiksCisJCQkgICAgTl8oImhhbGYgY29uZmlndXJlZCAoY29uZmlnIGZhaWxlZCkiKSwKKwkJCSAgICBOXygiYXdhaXRpbmcgdHJpZ2dlciBwcm9jZXNzaW5nIiksCisJCQkgICAgTl8oInRyaWdnZXJlZCIpLAorCQkJICAgIE5fKCJpbnN0YWxsZWQiKSwKKwkJCSAgICAwIH0sCisKKyAgKmNvbnN0IHByaW9yaXR5c3RyaW5nc1tdPSAgeyBOXygiUmVxdWlyZWQiKSwKKwkJCSAgICAgICBOXygiSW1wb3J0YW50IiksCisJCQkgICAgICAgTl8oIlN0YW5kYXJkIiksCisJCQkgICAgICAgTl8oIk9wdGlvbmFsIiksCisJCQkgICAgICAgTl8oIkV4dHJhIiksCisJCQkgICAgICAgTl8oIiFCdWchIiksCisJCQkgICAgICAgTl8oIlVuY2xhc3NpZmllZCIpLAorCQkJICAgICAgIDAgfSwKKworICAqY29uc3QgcmVsYXRlc3RyaW5nc1tdPSB7IE5fKCJzdWdnZXN0cyIpLAorCQkJICAgIE5fKCJyZWNvbW1lbmRzIiksCisJCQkgICAgTl8oImRlcGVuZHMgb24iKSwKKwkJCSAgICBOXygicHJlLWRlcGVuZHMgb24iKSwKKwkJCSAgICBOXygiYnJlYWtzIiksCisJCQkgICAgTl8oImNvbmZsaWN0cyB3aXRoIiksCisJCQkgICAgTl8oInByb3ZpZGVzIiksCisJCQkgICAgTl8oInJlcGxhY2VzIiksCisJCQkgICAgTl8oImVuaGFuY2VzIiksCisJCQkgICAgMCB9LAorCisgICpjb25zdCBwcmlvcml0eWFiYnJldnNbXT0gIHsgTl8oIlJlcSIpLAorCQkJICAgICAgIE5fKCJJbXAiKSwKKwkJCSAgICAgICBOXygiU3RkIiksCisJCQkgICAgICAgTl8oIk9wdCIpLAorCQkJICAgICAgIE5fKCJYdHIiKSwKKwkJCSAgICAgICBOXygiYlVHIiksCisJCQkgICAgICAgTl8oIj8iKSB9OworCitjb25zdCBjaGFyIHN0YXR1c2NoYXJzW10gPSAiIC1JVUNXdCoiOworY29uc3QgY2hhciBlZmxhZ2NoYXJzW10gPSAiIFIiOworY29uc3QgY2hhciB3YW50Y2hhcnNbXT0gICAgICJuKj0tXyI7CisKKy8qIFRoZXNlIE1VU1QgYmUgaW4gdGhlIHNhbWUgb3JkZXIgYXMgdGhlIGNvcnJlc3BvbmRpbmcgZW51bXMgaW4gcGtnbGlzdC5oICovCitjb25zdCBjaGFyCisgICpjb25zdCBzc2FhYmJyZXZzW109IHsgTl8oIkJyb2tlbiIpLAorICAgICAgICAgICAgICAgICAgICAgICAgIE5fKCJOZXciKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBOXygiVXBkYXRlZCIpLAorICAgICAgICAgICAgICAgICAgICAgICAgIE5fKCJPYnNvbGV0ZS9sb2NhbCIpLAorICAgICAgICAgICAgICAgICAgICAgICAgIE5fKCJVcC10by1kYXRlIiksCisgICAgICAgICAgICAgICAgICAgICAgICAgTl8oIkF2YWlsYWJsZSIpLAorICAgICAgICAgICAgICAgICAgICAgICAgIE5fKCJSZW1vdmVkIikgfSwKKyAgKmNvbnN0IHNzYXN0cmluZ3NbXT0geyBOXygiQnJva2VubHkgaW5zdGFsbGVkIHBhY2thZ2VzIiksCisgICAgICAgICAgICAgICAgICAgICAgICAgTl8oIk5ld2x5IGF2YWlsYWJsZSBwYWNrYWdlcyIpLAorICAgICAgICAgICAgICAgICAgICAgICAgIE5fKCJVcGRhdGVkIHBhY2thZ2VzIChuZXdlciB2ZXJzaW9uIGlzIGF2YWlsYWJsZSkiKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBOXygiT2Jzb2xldGUgYW5kIGxvY2FsIHBhY2thZ2VzIHByZXNlbnQgb24gc3lzdGVtIiksCisgICAgICAgICAgICAgICAgICAgICAgICAgTl8oIlVwIHRvIGRhdGUgaW5zdGFsbGVkIHBhY2thZ2VzIiksCisgICAgICAgICAgICAgICAgICAgICAgICAgTl8oIkF2YWlsYWJsZSBwYWNrYWdlcyAobm90IGN1cnJlbnRseSBpbnN0YWxsZWQpIiksCisgICAgICAgICAgICAgICAgICAgICAgICAgTl8oIlJlbW92ZWQgYW5kIG5vIGxvbmdlciBhdmFpbGFibGUgcGFja2FnZXMiKSB9OworCitjb25zdCBjaGFyCisgICpjb25zdCBzc3NzdHJpbmdzW109IHsgTl8oIkJyb2tlbmx5IGluc3RhbGxlZCBwYWNrYWdlcyIpLAorICAgICAgICAgICAgICAgICAgICAgICAgIE5fKCJJbnN0YWxsZWQgcGFja2FnZXMiKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBOXygiUmVtb3ZlZCBwYWNrYWdlcyAoY29uZmlndXJhdGlvbiBzdGlsbCBwcmVzZW50KSIpLAorICAgICAgICAgICAgICAgICAgICAgICAgIE5fKCJQdXJnZWQgcGFja2FnZXMgYW5kIHRob3NlIG5ldmVyIGluc3RhbGxlZCIpIH0sCisgICpjb25zdCBzc3NhYmJyZXZzW109IHsgTl8oIkJyb2tlbiIpLAorICAgICAgICAgICAgICAgICAgICAgICAgIE5fKCJJbnN0YWxsZWQiKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBOXygiUmVtb3ZlZCIpLAorICAgICAgICAgICAgICAgICAgICAgICAgIE5fKCJQdXJnZWQiKSB9OworCitzdGF0aWMgaW50IG1heGltdW1zdHJpbmcoY29uc3QgY2hhciAqY29uc3QgKmFycmF5KSB7CisgIGludCBtYXhsZW49IDA7CisgIHdoaWxlICgqYXJyYXkpIHsKKyAgICBpbnQgbD0gc3RybGVuKGdldHRleHQoKmFycmF5KSk7CisgICAgY29uc3QgY2hhciAqcD0gc3RyY2hyKCphcnJheSwgJygnKTsKKyAgICBpZiAocCAmJiBwID4gKmFycmF5ICYmICotLXAgPT0gJyAnKSBsPSBwIC0gKmFycmF5OworICAgIGlmIChsID4gbWF4bGVuKSBtYXhsZW49IGw7CisgICAgYXJyYXkrKzsKKyAgfQorICByZXR1cm4gbWF4bGVuOworfQorCit2b2lkIHBhY2thZ2VsaXN0OjpzZXR3aWR0aHMoKSB7CisgIGRlYnVnKGRiZ19nZW5lcmFsLCAicGFja2FnZWxpc3RbJXBdOjpzZXR3aWR0aHMoKSIsIHRoaXMpOworCisgIGlmICh2ZXJib3NlKSB7CisgICAgc3RhdHVzX2hvbGRfd2lkdGg9IDk7CisgICAgc3RhdHVzX3N0YXR1c193aWR0aD0gbWF4aW11bXN0cmluZyhzdGF0dXNzdHJpbmdzKTsKKyAgICBzdGF0dXNfd2FudF93aWR0aD0gbWF4aW11bXN0cmluZyh3YW50c3RyaW5ncyk7CisgICAgc3RhdHVzX3dpZHRoPSBzdGF0dXNfaG9sZF93aWR0aCtzdGF0dXNfc3RhdHVzX3dpZHRoK3N0YXR1c193YW50X3dpZHRoKjIrMzsKKyAgICBwcmlvcml0eV93aWR0aD0gODsKKyAgICBwYWNrYWdlX3dpZHRoPSAxNjsKKyAgfSBlbHNlIHsKKyAgICBzdGF0dXNfd2lkdGg9IDQ7CisgICAgcHJpb3JpdHlfd2lkdGg9IDM7CisgICAgcGFja2FnZV93aWR0aD0gMTI7CisgIH0KKyAgc2VjdGlvbl93aWR0aD0gODsKKworICBnYXBfd2lkdGg9IDE7CisKKyAgaWYgKHNvcnRvcmRlciA9PSBzb19zZWN0aW9uKSB7CisgICAgc2VjdGlvbl9jb2x1bW49IHN0YXR1c193aWR0aCArIGdhcF93aWR0aDsKKyAgICBwcmlvcml0eV9jb2x1bW49IHNlY3Rpb25fY29sdW1uICsgc2VjdGlvbl93aWR0aCArIGdhcF93aWR0aDsKKyAgICBwYWNrYWdlX2NvbHVtbj0gcHJpb3JpdHlfY29sdW1uICsgcHJpb3JpdHlfd2lkdGggKyBnYXBfd2lkdGg7CisgIH0gZWxzZSB7CisgICAgcHJpb3JpdHlfY29sdW1uPSBzdGF0dXNfd2lkdGggKyBnYXBfd2lkdGg7CisgICAgc2VjdGlvbl9jb2x1bW49IHByaW9yaXR5X2NvbHVtbiArIHByaW9yaXR5X3dpZHRoICsgZ2FwX3dpZHRoOworICAgIHBhY2thZ2VfY29sdW1uPSBzZWN0aW9uX2NvbHVtbiArIHNlY3Rpb25fd2lkdGggKyBnYXBfd2lkdGg7CisgIH0KKworICBpbnQgdmVyc2lvbmRlc2NyaXB0aW9uY29sdW1uPSBwYWNrYWdlX2NvbHVtbiArIHBhY2thZ2Vfd2lkdGggKyBnYXBfd2lkdGg7CisKKyAgc3dpdGNoICh2ZXJzaW9uZGlzcGxheW9wdCkgeworICBjYXNlIHZkb19ub25lOgorICAgIHZlcnNpb25pbnN0YWxsZWRfY29sdW1uPSB2ZXJzaW9uaW5zdGFsbGVkX3dpZHRoPSAwOworICAgIHZlcnNpb25hdmFpbGFibGVfY29sdW1uPSB2ZXJzaW9uYXZhaWxhYmxlX3dpZHRoPSAwOworICAgIGRlc2NyaXB0aW9uX2NvbHVtbj0gdmVyc2lvbmRlc2NyaXB0aW9uY29sdW1uOworICAgIGJyZWFrOworICBjYXNlIHZkb19hdmFpbGFibGU6CisgICAgdmVyc2lvbmluc3RhbGxlZF9jb2x1bW49IHZlcnNpb25pbnN0YWxsZWRfd2lkdGg9IDA7CisgICAgdmVyc2lvbmF2YWlsYWJsZV9jb2x1bW49IHZlcnNpb25kZXNjcmlwdGlvbmNvbHVtbjsKKyAgICB2ZXJzaW9uYXZhaWxhYmxlX3dpZHRoPSAxMTsKKyAgICBkZXNjcmlwdGlvbl9jb2x1bW49IHZlcnNpb25hdmFpbGFibGVfY29sdW1uICsgdmVyc2lvbmF2YWlsYWJsZV93aWR0aCArIGdhcF93aWR0aDsKKyAgICBicmVhazsKKyAgY2FzZSB2ZG9fYm90aDoKKyAgICB2ZXJzaW9uaW5zdGFsbGVkX2NvbHVtbj0gdmVyc2lvbmRlc2NyaXB0aW9uY29sdW1uOworICAgIHZlcnNpb25pbnN0YWxsZWRfd2lkdGg9IDExOworICAgIHZlcnNpb25hdmFpbGFibGVfY29sdW1uPSB2ZXJzaW9uaW5zdGFsbGVkX2NvbHVtbiArIHZlcnNpb25pbnN0YWxsZWRfd2lkdGggK2dhcF93aWR0aDsKKyAgICB2ZXJzaW9uYXZhaWxhYmxlX3dpZHRoPSB2ZXJzaW9uaW5zdGFsbGVkX3dpZHRoOworICAgIGRlc2NyaXB0aW9uX2NvbHVtbj0gdmVyc2lvbmF2YWlsYWJsZV9jb2x1bW4gKyB2ZXJzaW9uYXZhaWxhYmxlX3dpZHRoICsgZ2FwX3dpZHRoOworICAgIGJyZWFrOworICBkZWZhdWx0OgorICAgIGludGVybmVycigidW5rbm93biB2ZXJzaW9uZGlzcGxheW9wdCBpbiBzZXR3aWR0aHMiKTsKKyAgfQorCisgIHRvdGFsX3dpZHRoPSBUT1RBTF9MSVNUX1dJRFRIOworICBpZiAodG90YWxfd2lkdGggPCBDT0xTKQorICAgIHRvdGFsX3dpZHRoPSBDT0xTOworICBkZXNjcmlwdGlvbl93aWR0aD0gdG90YWxfd2lkdGggLSBkZXNjcmlwdGlvbl9jb2x1bW47Cit9CisKK3ZvaWQgcGFja2FnZWxpc3Q6OnJlZHJhd3RpdGxlKCkgeworICBpbnQgeCwgeSBEUEtHX0FUVFJfVU5VU0VEOworCisgIGlmICh0aXRsZV9oZWlnaHQpIHsKKyAgICBteXdlcmFzZSh0aXRsZXdpbik7CisgICAgbXZ3YWRkbnN0cih0aXRsZXdpbiwwLDAsCisgICAgICAgICAgICAgICByZWN1cnNpdmUgPyAgXygiZHNlbGVjdCAtIHJlY3Vyc2l2ZSBwYWNrYWdlIGxpc3RpbmciKSA6CisgICAgICAgICAgICAgICAhcmVhZHdyaXRlID8gXygiZHNlbGVjdCAtIGluc3BlY3Rpb24gb2YgcGFja2FnZSBzdGF0ZXMiKSA6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgXygiZHNlbGVjdCAtIG1haW4gcGFja2FnZSBsaXN0aW5nIiksCisgICAgICAgICAgICAgICB4bWF4KTsKKyAgICBnZXR5eCh0aXRsZXdpbix5LHgpOworICAgIGlmICh4IDwgeG1heCkgeworICAgICAgc3dpdGNoIChzb3J0b3JkZXIpIHsKKyAgICAgIGNhc2Ugc29fc2VjdGlvbjoKKyAgICAgICAgc3dpdGNoIChzdGF0c29ydG9yZGVyKSB7CisgICAgICAgIGNhc2Ugc3NvX3Vuc29ydGVkOgorICAgICAgICAgIHdhZGRuc3RyKHRpdGxld2luLCBfKCIgKGJ5IHNlY3Rpb24pIiksIHhtYXgteCk7CisgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2Ugc3NvX2F2YWlsOgorICAgICAgICAgIHdhZGRuc3RyKHRpdGxld2luLCBfKCIgKGF2YWlsLiwgc2VjdGlvbikiKSwgeG1heC14KTsKKyAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSBzc29fc3RhdGU6CisgICAgICAgICAgd2FkZG5zdHIodGl0bGV3aW4sIF8oIiAoc3RhdHVzLCBzZWN0aW9uKSIpLCB4bWF4LXgpOworICAgICAgICAgIGJyZWFrOworICAgICAgICBkZWZhdWx0OgorICAgICAgICAgIGludGVybmVycigiYmFkIHN0YXRzb3J0IGluIHJlZHJhd3RpdGxlL3NvX3NlY3Rpb24iKTsKKyAgICAgICAgfQorICAgICAgICBicmVhazsKKyAgICAgIGNhc2Ugc29fcHJpb3JpdHk6CisgICAgICAgIHN3aXRjaCAoc3RhdHNvcnRvcmRlcikgeworICAgICAgICBjYXNlIHNzb191bnNvcnRlZDoKKyAgICAgICAgICB3YWRkbnN0cih0aXRsZXdpbiwgXygiIChieSBwcmlvcml0eSkiKSwgeG1heC14KTsKKyAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSBzc29fYXZhaWw6CisgICAgICAgICAgd2FkZG5zdHIodGl0bGV3aW4sIF8oIiAoYXZhaWwuLCBwcmlvcml0eSkiKSwgeG1heC14KTsKKyAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSBzc29fc3RhdGU6CisgICAgICAgICAgd2FkZG5zdHIodGl0bGV3aW4sIF8oIiAoc3RhdHVzLCBwcmlvcml0eSkiKSwgeG1heC14KTsKKyAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICBpbnRlcm5lcnIoImJhZCBzdGF0c29ydCBpbiByZWRyYXd0aXRsZS9zb19wcmlvcml0eSIpOworICAgICAgICB9CisgICAgICAgIGJyZWFrOworICAgICAgY2FzZSBzb19hbHBoYToKKyAgICAgICAgc3dpdGNoIChzdGF0c29ydG9yZGVyKSB7CisgICAgICAgIGNhc2Ugc3NvX3Vuc29ydGVkOgorICAgICAgICAgIHdhZGRuc3RyKHRpdGxld2luLCBfKCIgKGFscGhhYmV0aWNhbGx5KSIpLCB4bWF4LXgpOworICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIHNzb19hdmFpbDoKKyAgICAgICAgICB3YWRkbnN0cih0aXRsZXdpbiwgXygiIChieSBhdmFpbGFiaWxpdHkpIiksIHhtYXgteCk7CisgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2Ugc3NvX3N0YXRlOgorICAgICAgICAgIHdhZGRuc3RyKHRpdGxld2luLCBfKCIgKGJ5IHN0YXR1cykiKSwgeG1heC14KTsKKyAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICBpbnRlcm5lcnIoImJhZCBzdGF0c29ydCBpbiByZWRyYXd0aXRsZS9zb19wcmlvcml0eSIpOworICAgICAgICB9CisgICAgICAgIGJyZWFrOworICAgICAgICB3YWRkbnN0cih0aXRsZXdpbiwgXygiIChhbHBoYWJldGljYWxseSkiKSwgeG1heC14KTsKKyAgICAgICAgYnJlYWs7CisgICAgICBjYXNlIHNvX3Vuc29ydGVkOgorICAgICAgICBicmVhazsKKyAgICAgIGRlZmF1bHQ6CisgICAgICAgIGludGVybmVycigiYmFkIHNvcnQgaW4gcmVkcmF3dGl0bGUiKTsKKyAgICAgIH0KKyAgICB9CisgICAgY29uc3QgY2hhciAqaGVscHN0cmluZz0gcmVhZHdyaXRlID8gKHZlcmJvc2UgPyBfKCIgbWFyazorLz0vLSB0ZXJzZTp2IGhlbHA6PyIpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBfKCIgbWFyazorLz0vLSB2ZXJib3NlOnYgaGVscDo/IikpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogKHZlcmJvc2UgPyBfKCIgdGVyc2U6diBoZWxwOj8iKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogXygiIHZlcmJvc2U6diBoZWxwOj8iKSk7CisgICAgaW50IGw9IHN0cmxlbihoZWxwc3RyaW5nKTsKKyAgICBnZXR5eCh0aXRsZXdpbix5LHgpOworICAgIGlmICh4bWF4LWwgPiAwKSB7CisgICAgICBtdndhZGRzdHIodGl0bGV3aW4sMCx4bWF4LWwsIGhlbHBzdHJpbmcpOworICAgIH0KKyAgICB3bm91dHJlZnJlc2godGl0bGV3aW4pOworICB9Cit9CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcGtnaW5mby5jYyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wa2dpbmZvLmNjCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmE3MDRkN2UKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcGtnaW5mby5jYwpAQCAtMCwwICsxLDE4MyBAQAorLyoKKyAqIGRzZWxlY3QgLSBEZWJpYW4gcGFja2FnZSBtYWludGVuYW5jZSB1c2VyIGludGVyZmFjZQorICogcGtnaW5mby5jYyAtIGhhbmRsZXMgKHJlKWRyYXcgb2YgcGFja2FnZSBsaXN0IHdpbmRvdyBpbmZvcGFkCisgKgorICogQ29weXJpZ2h0IMKpIDE5OTUgSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuZ3JlZW5lbmQub3JnLnVrPgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaW5jbHVkZSA8Y29uZmlnLmg+CisjaW5jbHVkZSA8Y29tcGF0Lmg+CisKKyNpbmNsdWRlIDxjdHlwZS5oPgorI2luY2x1ZGUgPHN0cmluZy5oPgorI2luY2x1ZGUgPHN0ZGlvLmg+CisKKyNpbmNsdWRlIDxkcGtnL2kxOG4uaD4KKyNpbmNsdWRlIDxkcGtnL2Rwa2cuaD4KKyNpbmNsdWRlIDxkcGtnL2Rwa2ctZGIuaD4KKworI2luY2x1ZGUgImRzZWxlY3QuaCIKKyNpbmNsdWRlICJiaW5kaW5ncy5oIgorI2luY2x1ZGUgImhlbHBtc2dzLmgiCisKK2NvbnN0IHN0cnVjdCBoZWxwbWVudWVudHJ5ICpwYWNrYWdlbGlzdDo6aGVscG1lbnVsaXN0KCkgeworICBzdGF0aWMgY29uc3Qgc3RydWN0IGhlbHBtZW51ZW50cnkKKyAgICByd1tdPSB7CisgICAgICB7ICdpJywgJmhscF9tYWluaW50cm8gICAgICAgfSwKKyAgICAgIHsgJ2snLCAmaGxwX2xpc3RrZXlzICAgICAgICB9LAorICAgICAgeyAnbCcsICZobHBfZGlzcGxheWV4cGxhaW4xIH0sCisgICAgICB7ICdkJywgJmhscF9kaXNwbGF5ZXhwbGFpbjIgfSwKKyAgICAgIHsgIDAgICAgICAgICAgICAgICAgICAgICAgICB9CisgICAgfSwKKyAgICByb1tdPSB7CisgICAgICB7ICdpJywgJmhscF9yZWFkb25seWludHJvICAgfSwKKyAgICAgIHsgJ2snLCAmaGxwX2xpc3RrZXlzICAgICAgICB9LAorICAgICAgeyAnbCcsICZobHBfZGlzcGxheWV4cGxhaW4xIH0sCisgICAgICB7ICdkJywgJmhscF9kaXNwbGF5ZXhwbGFpbjIgfSwKKyAgICAgIHsgIDAgICAgICAgICAgICAgICAgICAgICAgICB9CisgICAgfSwKKyAgICByZWN1cltdPSB7CisgICAgICB7ICdpJywgJmhscF9yZWN1cmludHJvICAgICAgfSwKKyAgICAgIHsgJ2snLCAmaGxwX2xpc3RrZXlzICAgICAgICB9LAorICAgICAgeyAnbCcsICZobHBfZGlzcGxheWV4cGxhaW4xIH0sCisgICAgICB7ICdkJywgJmhscF9kaXNwbGF5ZXhwbGFpbjIgfSwKKyAgICAgIHsgIDAgICAgICAgICAgICAgICAgICAgICAgICB9CisgICAgfTsKKyAgcmV0dXJuCisgICAgIXJlYWR3cml0ZSA/IHJvIDoKKyAgICAhcmVjdXJzaXZlID8gcncgOgorICAgICAgICAgICAgICAgICByZWN1cjsKK30KKworaW50IHBhY2thZ2VsaXN0OjppdHJfcmVjdXJzaXZlKCkgeyByZXR1cm4gcmVjdXJzaXZlOyB9CisKK2NvbnN0IHBhY2thZ2VsaXN0OjppbmZvdHlwZSBwYWNrYWdlbGlzdDo6aW5mb2luZm9zW109IHsKKyAgeyAmcGFja2FnZWxpc3Q6Oml0cl9yZWN1cnNpdmUsICAgICAmcGFja2FnZWxpc3Q6Oml0ZF9yZWxhdGlvbnMgICAgICAgICB9LAorICB7IDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZwYWNrYWdlbGlzdDo6aXRkX2Rlc2NyaXB0aW9uICAgICAgIH0sCisgIHsgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnBhY2thZ2VsaXN0OjppdGRfc3RhdHVzY29udHJvbCAgICAgfSwKKyAgeyAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmcGFja2FnZWxpc3Q6Oml0ZF9hdmFpbGFibGVjb250cm9sICB9LAorICB7IDAsICAgICAgICAgICAgICAgICAwICAgICAgICAgICAgICAgICAgICAgfQorfTsKKworY29uc3QgcGFja2FnZWxpc3Q6OmluZm90eXBlICpjb25zdCBwYWNrYWdlbGlzdDo6YmFzZWluZm89IGluZm9pbmZvczsKKwordm9pZCBwYWNrYWdlbGlzdDo6c2V2ZXJhbGluZm9ibHVyYigpCit7CisgIHZhcmJ1ZiB2YjsKKyAgdmIoXygiVGhlIGxpbmUgeW91IGhhdmUgaGlnaGxpZ2h0ZWQgcmVwcmVzZW50cyBtYW55IHBhY2thZ2VzOyAiCisgICAgICJpZiB5b3UgYXNrIHRvIGluc3RhbGwsIHJlbW92ZSwgaG9sZCwgZXRjLiBpdCB5b3Ugd2lsbCBhZmZlY3QgYWxsICIKKyAgICAgInRoZSBwYWNrYWdlcyB3aGljaCBtYXRjaCB0aGUgY3JpdGVyaW9uIHNob3duLlxuIgorICAgICAiXG4iCisgICAgICJJZiB5b3UgbW92ZSB0aGUgaGlnaGxpZ2h0IHRvIGEgbGluZSBmb3IgYSBwYXJ0aWN1bGFyIHBhY2thZ2UgIgorICAgICAieW91IHdpbGwgc2VlIGluZm9ybWF0aW9uIGFib3V0IHRoYXQgcGFja2FnZSBkaXNwbGF5ZWQgaGVyZS4iCisgICAgICJcbiIKKyAgICAgIllvdSBjYW4gdXNlIGBvJyBhbmQgYE8nIHRvIGNoYW5nZSB0aGUgc29ydCBvcmRlciBhbmQgZ2l2ZSB5b3Vyc2VsZiAiCisgICAgICJ0aGUgb3Bwb3J0dW5pdHkgdG8gbWFyayBwYWNrYWdlcyBpbiBkaWZmZXJlbnQga2luZHMgb2YgZ3JvdXBzLiIpKTsKKyAgd29yZHdyYXBpbmZvKDAsdmIuc3RyaW5nKCkpOworfQorCit2b2lkIHBhY2thZ2VsaXN0OjppdGRfcmVsYXRpb25zKCkgeworICB3aGF0aW5mb3ZiKF8oIkludGVycmVsYXRpb25zaGlwcyIpKTsKKworICBpZiAodGFibGVbY3Vyc29ybGluZV0tPnBrZy0+bmFtZSkgeworICAgIGRlYnVnKGRiZ19nZW5lcmFsLCAicGFja2FnZWxpc3RbJXBdOjppZHRfcmVsYXRpb25zKCk7ICclcyciLAorICAgICAgICAgIHRoaXMsIHRhYmxlW2N1cnNvcmxpbmVdLT5yZWxhdGlvbnMuc3RyaW5nKCkpOworICAgIHdhZGRzdHIoaW5mb3BhZCx0YWJsZVtjdXJzb3JsaW5lXS0+cmVsYXRpb25zLnN0cmluZygpKTsKKyAgfSBlbHNlIHsKKyAgICBzZXZlcmFsaW5mb2JsdXJiKCk7CisgIH0KK30KKwordm9pZCBwYWNrYWdlbGlzdDo6aXRkX2Rlc2NyaXB0aW9uKCkgeworICB3aGF0aW5mb3ZiKF8oIkRlc2NyaXB0aW9uIikpOworCisgIGlmICh0YWJsZVtjdXJzb3JsaW5lXS0+cGtnLT5uYW1lKSB7CisgICAgY29uc3QgY2hhciAqbT0gdGFibGVbY3Vyc29ybGluZV0tPnBrZy0+YXZhaWxhYmxlLmRlc2NyaXB0aW9uOworICAgIGlmICghbSB8fCAhKm0pCisgICAgICBtID0gdGFibGVbY3Vyc29ybGluZV0tPnBrZy0+aW5zdGFsbGVkLmRlc2NyaXB0aW9uOworICAgIGlmICghbSB8fCAhKm0pCisgICAgICBtID0gXygiTm8gZGVzY3JpcHRpb24gYXZhaWxhYmxlLiIpOworICAgIGNvbnN0IGNoYXIgKnA9IHN0cmNocihtLCdcbicpOworICAgIGludCBsPSBwID8gKGludCkocC1tKSA6IHN0cmxlbihtKTsKKyAgICB3YXR0cnNldChpbmZvcGFkLGluZm9faGVhZGF0dHIpOworICAgIHdhZGRzdHIoaW5mb3BhZCwgdGFibGVbY3Vyc29ybGluZV0tPnBrZy0+bmFtZSk7CisgICAgd2FkZHN0cihpbmZvcGFkLCIgLSAiKTsKKyAgICB3YWRkbnN0cihpbmZvcGFkLG0sbCk7CisgICAgd2F0dHJzZXQoaW5mb3BhZCxpbmZvX2F0dHIpOworICAgIGlmIChwKSB7CisgICAgICB3YWRkc3RyKGluZm9wYWQsIlxuXG4iKTsKKyAgICAgIHdvcmR3cmFwaW5mbygxLCsrcCk7CisgICAgfQorICB9IGVsc2UgeworICAgIHNldmVyYWxpbmZvYmx1cmIoKTsKKyAgfQorfQorCit2b2lkIHBhY2thZ2VsaXN0OjppdGRfc3RhdHVzY29udHJvbCgpIHsKKyAgd2hhdGluZm92YihfKCJJbnN0YWxsZWQgY29udHJvbCBmaWxlIGluZm9ybWF0aW9uIikpOworCisgIHdlcmFzZShpbmZvcGFkKTsKKyAgaWYgKCF0YWJsZVtjdXJzb3JsaW5lXS0+cGtnLT5uYW1lKSB7CisgICAgc2V2ZXJhbGluZm9ibHVyYigpOworICB9IGVsc2UgeworICAgIHZhcmJ1ZiB2YjsKKyAgICB2YXJidWZyZWNvcmQoJnZiLHRhYmxlW2N1cnNvcmxpbmVdLT5wa2csJnRhYmxlW2N1cnNvcmxpbmVdLT5wa2ctPmluc3RhbGxlZCk7CisgICAgdmIudGVybWluYXRlKCk7CisgICAgZGVidWcoZGJnX2dlbmVyYWwsICJwYWNrYWdlbGlzdFslcF06OmlkdF9zdGF0dXNjb250cm9sKCk7ICclcyciLAorICAgICAgICAgIHRoaXMsIHZiLnN0cmluZygpKTsKKyAgICB3YWRkc3RyKGluZm9wYWQsdmIuc3RyaW5nKCkpOworICB9Cit9CisKK3ZvaWQgcGFja2FnZWxpc3Q6Oml0ZF9hdmFpbGFibGVjb250cm9sKCkgeworICB3aGF0aW5mb3ZiKF8oIkF2YWlsYWJsZSBjb250cm9sIGZpbGUgaW5mb3JtYXRpb24iKSk7CisKKyAgd2VyYXNlKGluZm9wYWQpOworICBpZiAoIXRhYmxlW2N1cnNvcmxpbmVdLT5wa2ctPm5hbWUpIHsKKyAgICBzZXZlcmFsaW5mb2JsdXJiKCk7CisgIH0gZWxzZSB7CisgICAgdmFyYnVmIHZiOworICAgIHZhcmJ1ZnJlY29yZCgmdmIsdGFibGVbY3Vyc29ybGluZV0tPnBrZywmdGFibGVbY3Vyc29ybGluZV0tPnBrZy0+YXZhaWxhYmxlKTsKKyAgICB2Yi50ZXJtaW5hdGUoKTsKKyAgICBkZWJ1ZyhkYmdfZ2VuZXJhbCwgInBhY2thZ2VsaXN0WyVwXTo6aWR0X2F2YWlsYWJsZWNvbnRyb2woKTsgJyVzJyIsCisgICAgICAgICAgdGhpcywgdmIuc3RyaW5nKCkpOworICAgIHdhZGRzdHIoaW5mb3BhZCx2Yi5zdHJpbmcoKSk7CisgIH0KK30KKwordm9pZCBwYWNrYWdlbGlzdDo6cmVkcmF3aW5mbygpIHsKKyAgZm9yICg7OykgeworICAgIGlmICghY3VycmVudGluZm8gfHwgIWN1cnJlbnRpbmZvLT5kaXNwbGF5KSBjdXJyZW50aW5mbz0gYmFzZWluZm87CisgICAgaWYgKCFjdXJyZW50aW5mby0+cmVsZXZhbnQpIGJyZWFrOworICAgIGlmICgodGhpcy0+KmN1cnJlbnRpbmZvLT5yZWxldmFudCkoKSkgYnJlYWs7CisgICAgY3VycmVudGluZm8rKzsKKyAgfQorICBpZiAoIWluZm9faGVpZ2h0KSByZXR1cm47CisgIHdoYXRpbmZvdmIucmVzZXQoKTsKKyAgd2VyYXNlKGluZm9wYWQpOyB3bW92ZShpbmZvcGFkLDAsMCk7CisKKyAgZGVidWcoZGJnX2dlbmVyYWwsICJwYWNrYWdlbGlzdFslcF06OnJlZHJhd2luZm8oKTsgIz0lZCIsCisgICAgICAgIHRoaXMsIChpbnQpKGN1cnJlbnRpbmZvIC0gYmFzZWluZm8pKTsKKworICAodGhpcy0+KmN1cnJlbnRpbmZvLT5kaXNwbGF5KSgpOworICB3aGF0aW5mb3ZiLnRlcm1pbmF0ZSgpOworICBpbnQgeSx4OworICBnZXR5eChpbmZvcGFkLCB5LHgpOworICBpZiAoeCkgeSsrOworICBpbmZvbGluZXM9IHk7CisKKyAgcmVmcmVzaGluZm8oKTsKK30KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wa2drZXlzLmNjIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BrZ2tleXMuY2MKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzVmNTQ3MwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wa2drZXlzLmNjCkBAIC0wLDAgKzEsMTQ0IEBACisvKgorICogZHNlbGVjdCAtIERlYmlhbiBwYWNrYWdlIG1haW50ZW5hbmNlIHVzZXIgaW50ZXJmYWNlCisgKiBwa2drZXlzLmNjIC0gcGFja2FnZSBsaXN0IGtleWJpbmRpbmdzCisgKgorICogQ29weXJpZ2h0IMKpIDE5OTUgSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuZ3JlZW5lbmQub3JnLnVrPgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaW5jbHVkZSA8Y29uZmlnLmg+CisjaW5jbHVkZSA8Y29tcGF0Lmg+CisKKyNpbmNsdWRlIDxkcGtnL2Rwa2ctZGIuaD4KKworI2luY2x1ZGUgImRzZWxlY3QuaCIKKyNpbmNsdWRlICJiaW5kaW5ncy5oIgorCitjb25zdCBrZXliaW5kaW5nczo6aW50ZXJwcmV0YXRpb24gcGFja2FnZWxpc3Rfa2ludGVycHNbXSA9IHsKKyAgeyAidXAiLCAgICAgICAgICAgICAgIDAsICAmcGFja2FnZWxpc3Q6OmtkX3VwLCAgICAgICAgICAgICAgIHFhX25vcXVpdCAgICAgICAgICAgfSwKKyAgeyAiZG93biIsICAgICAgICAgICAgIDAsICAmcGFja2FnZWxpc3Q6OmtkX2Rvd24sICAgICAgICAgICAgIHFhX25vcXVpdCAgICAgICAgICAgfSwKKyAgeyAidG9wIiwgICAgICAgICAgICAgIDAsICAmcGFja2FnZWxpc3Q6OmtkX3RvcCwgICAgICAgICAgICAgIHFhX25vcXVpdCAgICAgICAgICAgfSwKKyAgeyAiYm90dG9tIiwgICAgICAgICAgIDAsICAmcGFja2FnZWxpc3Q6OmtkX2JvdHRvbSwgICAgICAgICAgIHFhX25vcXVpdCAgICAgICAgICAgfSwKKyAgeyAic2Nyb2xsb24iLCAgICAgICAgIDAsICAmcGFja2FnZWxpc3Q6OmtkX3Njcm9sbG9uLCAgICAgICAgIHFhX25vcXVpdCAgICAgICAgICAgfSwKKyAgeyAic2Nyb2xsYmFjayIsICAgICAgIDAsICAmcGFja2FnZWxpc3Q6OmtkX3Njcm9sbGJhY2ssICAgICAgIHFhX25vcXVpdCAgICAgICAgICAgfSwKKyAgeyAiaXNjcm9sbG9uIiwgICAgICAgIDAsICAmcGFja2FnZWxpc3Q6OmtkX2lzY3JvbGxvbiwgICAgICAgIHFhX25vcXVpdCAgICAgICAgICAgfSwKKyAgeyAiaXNjcm9sbGJhY2siLCAgICAgIDAsICAmcGFja2FnZWxpc3Q6OmtkX2lzY3JvbGxiYWNrLCAgICAgIHFhX25vcXVpdCAgICAgICAgICAgfSwKKyAgeyAic2Nyb2xsb24xIiwgICAgICAgIDAsICAmcGFja2FnZWxpc3Q6OmtkX3Njcm9sbG9uMSwgICAgICAgIHFhX25vcXVpdCAgICAgICAgICAgfSwKKyAgeyAic2Nyb2xsYmFjazEiLCAgICAgIDAsICAmcGFja2FnZWxpc3Q6OmtkX3Njcm9sbGJhY2sxLCAgICAgIHFhX25vcXVpdCAgICAgICAgICAgfSwKKyAgeyAiaXNjcm9sbG9uMSIsICAgICAgIDAsICAmcGFja2FnZWxpc3Q6OmtkX2lzY3JvbGxvbjEsICAgICAgIHFhX25vcXVpdCAgICAgICAgICAgfSwKKyAgeyAiaXNjcm9sbGJhY2sxIiwgICAgIDAsICAmcGFja2FnZWxpc3Q6OmtkX2lzY3JvbGxiYWNrMSwgICAgIHFhX25vcXVpdCAgICAgICAgICAgfSwKKyAgeyAicGFub24iLCAgICAgICAgICAgIDAsICAmcGFja2FnZWxpc3Q6OmtkX3Bhbm9uLCAgICAgICAgICAgIHFhX25vcXVpdCAgICAgICAgICAgfSwKKyAgeyAicGFuYmFjayIsICAgICAgICAgIDAsICAmcGFja2FnZWxpc3Q6OmtkX3BhbmJhY2ssICAgICAgICAgIHFhX25vcXVpdCAgICAgICAgICAgfSwKKyAgeyAicGFub24xIiwgICAgICAgICAgIDAsICAmcGFja2FnZWxpc3Q6OmtkX3Bhbm9uMSwgICAgICAgICAgIHFhX25vcXVpdCAgICAgICAgICAgfSwKKyAgeyAicGFuYmFjazEiLCAgICAgICAgIDAsICAmcGFja2FnZWxpc3Q6OmtkX3BhbmJhY2sxLCAgICAgICAgIHFhX25vcXVpdCAgICAgICAgICAgfSwKKyAgeyAiaW5zdGFsbCIsICAgICAgICAgIDAsICAmcGFja2FnZWxpc3Q6OmtkX3NlbGVjdCwgICAgICAgICAgIHFhX25vcXVpdCAgICAgICAgICAgfSwKKyAgeyAicmVtb3ZlIiwgICAgICAgICAgIDAsICAmcGFja2FnZWxpc3Q6OmtkX2Rlc2VsZWN0LCAgICAgICAgIHFhX25vcXVpdCAgICAgICAgICAgfSwKKyAgeyAicHVyZ2UiLCAgICAgICAgICAgIDAsICAmcGFja2FnZWxpc3Q6OmtkX3B1cmdlLCAgICAgICAgICAgIHFhX25vcXVpdCAgICAgICAgICAgfSwKKyAgeyAiaG9sZCIsICAgICAgICAgICAgIDAsICAmcGFja2FnZWxpc3Q6OmtkX2hvbGQsICAgICAgICAgICAgIHFhX25vcXVpdCAgICAgICAgICAgfSwKKyAgeyAidW5ob2xkIiwgICAgICAgICAgIDAsICAmcGFja2FnZWxpc3Q6OmtkX3VuaG9sZCwgICAgICAgICAgIHFhX25vcXVpdCAgICAgICAgICAgfSwKKyAgeyAiaW5mbyIsICAgICAgICAgICAgIDAsICAmcGFja2FnZWxpc3Q6OmtkX2luZm8sICAgICAgICAgICAgIHFhX25vcXVpdCAgICAgICAgICAgfSwKKyAgeyAidG9nZ2xlaW5mbyIsICAgICAgIDAsICAmcGFja2FnZWxpc3Q6OmtkX3RvZ2dsZWluZm8sICAgICAgIHFhX25vcXVpdCAgICAgICAgICAgfSwKKyAgeyAidmVyYm9zZSIsICAgICAgICAgIDAsICAmcGFja2FnZWxpc3Q6OmtkX3ZlcmJvc2UsICAgICAgICAgIHFhX25vcXVpdCAgICAgICAgICAgfSwKKyAgeyAidmVyc2lvbmRpc3BsYXkiLCAgIDAsICAmcGFja2FnZWxpc3Q6OmtkX3ZlcnNpb25kaXNwbGF5LCAgIHFhX25vcXVpdCAgICAgICAgICAgfSwKKyAgeyAiaGVscCIsICAgICAgICAgICAgIDAsICAmcGFja2FnZWxpc3Q6OmtkX2hlbHAsICAgICAgICAgICAgIHFhX25vcXVpdCAgICAgICAgICAgfSwKKyAgeyAic2VhcmNoIiwgICAgICAgICAgIDAsICAmcGFja2FnZWxpc3Q6OmtkX3NlYXJjaCwgICAgICAgICAgIHFhX25vcXVpdCAgICAgICAgICAgfSwKKyAgeyAic2VhcmNoYWdhaW4iLCAgICAgIDAsICAmcGFja2FnZWxpc3Q6OmtkX3NlYXJjaGFnYWluLCAgICAgIHFhX25vcXVpdCAgICAgICAgICAgfSwKKyAgeyAic3dhcG9yZGVyIiwgICAgICAgIDAsICAmcGFja2FnZWxpc3Q6OmtkX3N3YXBvcmRlciwgICAgICAgIHFhX25vcXVpdCAgICAgICAgICAgfSwKKyAgeyAic3dhcHN0YXRvcmRlciIsICAgIDAsICAmcGFja2FnZWxpc3Q6OmtkX3N3YXBzdGF0b3JkZXIsICAgIHFhX25vcXVpdCAgICAgICAgICAgfSwKKyAgeyAicmVkcmF3IiwgICAgICAgICAgIDAsICAmcGFja2FnZWxpc3Q6OmtkX3JlZHJhdywgICAgICAgICAgIHFhX25vcXVpdCAgICAgICAgICAgfSwKKyAgeyAicXVpdGNoZWNrIiwgICAgICAgIDAsICAmcGFja2FnZWxpc3Q6OmtkX3F1aXRfbm9vcCwgICAgICAgIHFhX3F1aXRjaGVja3NhdmUgICAgfSwKKyAgeyAicXVpdHJlamVjdHN1ZyIsICAgIDAsICAmcGFja2FnZWxpc3Q6OmtkX3JldmVydGRpcmVjdCwgICAgIHFhX3F1aXRub2NoZWNrc2F2ZSAgfSwKKyAgeyAicXVpdG5vY2hlY2siLCAgICAgIDAsICAmcGFja2FnZWxpc3Q6OmtkX3F1aXRfbm9vcCwgICAgICAgIHFhX3F1aXRub2NoZWNrc2F2ZSAgfSwKKyAgeyAiYWJvcnRub2NoZWNrIiwgICAgIDAsICAmcGFja2FnZWxpc3Q6OmtkX3JldmVydF9hYm9ydCwgICAgIHFhX3F1aXRub2NoZWNrc2F2ZSAgfSwKKyAgeyAicmV2ZXJ0IiwgICAgICAgICAgIDAsICAmcGFja2FnZWxpc3Q6OmtkX3JldmVydF9hYm9ydCwgICAgIHFhX25vcXVpdCAgICAgICAgICAgfSwKKyAgeyAicmV2ZXJ0c3VnZ2VzdCIsICAgIDAsICAmcGFja2FnZWxpc3Q6OmtkX3JldmVydHN1Z2dlc3QsICAgIHFhX25vcXVpdCAgICAgICAgICAgfSwKKyAgeyAicmV2ZXJ0ZGlyZWN0IiwgICAgIDAsICAmcGFja2FnZWxpc3Q6OmtkX3JldmVydGRpcmVjdCwgICAgIHFhX25vcXVpdCAgICAgICAgICAgfSwKKyAgeyAicmV2ZXJ0aW5zdGFsbGVkIiwgIDAsICAmcGFja2FnZWxpc3Q6OmtkX3JldmVydGluc3RhbGxlZCwgIHFhX25vcXVpdCAgICAgICAgICAgfSwKKyAgeyAgMCwgICAgICAgICAgICAgICAgIDAsICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcWFfbm9xdWl0ICAgICAgICAgICB9Cit9OworCisjZGVmaW5lIEMoeCkgKCh4KS0nYScrMSkKKworY29uc3Qga2V5YmluZGluZ3M6Om9yZ2JpbmRpbmcgcGFja2FnZWxpc3Rfa29yZ2JpbmRpbmdzW109IHsKKyAgeyAnaicsICAgICAgICAgICAgImRvd24iICAgICAgICAgICAgIH0sIC8vIHZpIHN0eWxlCisgIHsgS0VZX0RPV04sICAgICAgICJkb3duIiAgICAgICAgICAgICB9LAorICB7ICdrJywgICAgICAgICAgICAidXAiICAgICAgICAgICAgICAgfSwgLy8gdmkgc3R5bGUKKyAgeyAncCcsICAgICAgICAgICAgInVwIiAgICAgICAgICAgICAgIH0sCisgIHsgS0VZX1VQLCAgICAgICAgICJ1cCIgICAgICAgICAgICAgICB9LAorCisgIHsgJ04nLCAgICAgICAgICAgICJzY3JvbGxvbiIgICAgICAgICB9LAorICB7IEtFWV9OUEFHRSwgICAgICAic2Nyb2xsb24iICAgICAgICAgfSwKKyAgeyAnICcsICAgICAgICAgICAgInNjcm9sbG9uIiAgICAgICAgIH0sCisgIHsgJ1AnLCAgICAgICAgICAgICJzY3JvbGxiYWNrIiAgICAgICB9LAorICB7IEtFWV9QUEFHRSwgICAgICAic2Nyb2xsYmFjayIgICAgICAgfSwKKyAgeyBLRVlfQkFDS1NQQUNFLCAgInNjcm9sbGJhY2siICAgICAgIH0sCisgIHsgMDE3NywgICAgICAgICAgICJzY3JvbGxiYWNrIiAgICAgICB9LCAvLyBBU0NJSSBERUwKKyAgeyBDKCdoJyksICAgICAgICAgInNjcm9sbGJhY2siICAgICAgIH0sCisgIHsgQygnbicpLCAgICAgICAgICJzY3JvbGxvbjEiICAgICAgICB9LAorICB7IEMoJ3AnKSwgICAgICAgICAic2Nyb2xsYmFjazEiICAgICAgfSwKKworICB7ICd0JywgICAgICAgICAgICAidG9wIiAgICAgICAgICAgICAgfSwKKyAgeyBLRVlfSE9NRSwgICAgICAgInRvcCIgICAgICAgICAgICAgIH0sCisgIHsgJ2UnLCAgICAgICAgICAgICJib3R0b20iICAgICAgICAgICB9LAorICB7IEtFWV9MTCwgICAgICAgICAiYm90dG9tIiAgICAgICAgICAgfSwKKyAgeyBLRVlfRU5ELCAgICAgICAgImJvdHRvbSIgICAgICAgICAgIH0sCisKKyAgeyAndScsICAgICAgICAgICAgImlzY3JvbGxiYWNrIiAgICAgIH0sCisgIHsgJ2QnLCAgICAgICAgICAgICJpc2Nyb2xsb24iICAgICAgICB9LAorICB7IEMoJ3UnKSwgICAgICAgICAiaXNjcm9sbGJhY2sxIiAgICAgfSwKKyAgeyBDKCdkJyksICAgICAgICAgImlzY3JvbGxvbjEiICAgICAgIH0sCisKKyAgeyAnQicsICAgICAgICAgICAgInBhbmJhY2siICAgICAgICAgIH0sCisgIHsgS0VZX0xFRlQsICAgICAgICJwYW5iYWNrIiAgICAgICAgICB9LAorICB7ICdGJywgICAgICAgICAgICAicGFub24iICAgICAgICAgICAgfSwKKyAgeyBLRVlfUklHSFQsICAgICAgInBhbm9uIiAgICAgICAgICAgIH0sCisgIHsgQygnYicpLCAgICAgICAgICJwYW5iYWNrMSIgICAgICAgICB9LAorICB7IEMoJ2YnKSwgICAgICAgICAicGFub24xIiAgICAgICAgICAgfSwKKworICB7ICcrJywgICAgICAgICAgICAiaW5zdGFsbCIgICAgICAgICAgfSwKKyAgeyBLRVlfSUMsICAgICAgICAgImluc3RhbGwiICAgICAgICAgIH0sCisgIHsgJy0nLCAgICAgICAgICAgICJyZW1vdmUiICAgICAgICAgICB9LAorICB7IEtFWV9EQywgICAgICAgICAicmVtb3ZlIiAgICAgICAgICAgfSwKKyAgeyAnXycsICAgICAgICAgICAgInB1cmdlIiAgICAgICAgICAgIH0sCisgIHsgJ0gnLCAgICAgICAgICAgICJob2xkIiAgICAgICAgICAgICB9LAorICB7ICc9JywgICAgICAgICAgICAiaG9sZCIgICAgICAgICAgICAgfSwKKyAgeyAnRycsICAgICAgICAgICAgInVuaG9sZCIgICAgICAgICAgIH0sCisKKyAgeyAnPycsICAgICAgICAgICAgImhlbHAiICAgICAgICAgICAgIH0sCisgIHsgS0VZX0hFTFAsICAgICAgICJoZWxwIiAgICAgICAgICAgICB9LAorICB7IEtFWV9GKDEpLCAgICAgICAiaGVscCIgICAgICAgICAgICAgfSwKKyAgeyAnaScsICAgICAgICAgICAgImluZm8iICAgICAgICAgICAgIH0sCisgIHsgJ0knLCAgICAgICAgICAgICJ0b2dnbGVpbmZvIiAgICAgICB9LAorICB7ICdvJywgICAgICAgICAgICAic3dhcG9yZGVyIiAgICAgICAgfSwKKyAgeyAnTycsICAgICAgICAgICAgInN3YXBzdGF0b3JkZXIiICAgIH0sCisgIHsgJ3YnLCAgICAgICAgICAgICJ2ZXJib3NlIiAgICAgICAgICB9LAorICB7ICdWJywgICAgICAgICAgICAidmVyc2lvbmRpc3BsYXkiICAgfSwKKyAgeyBDKCdsJyksICAgICAgICAgInJlZHJhdyIgICAgICAgICAgIH0sCisgIHsgJy8nLCAgICAgICAgICAgICJzZWFyY2giICAgICAgICAgICB9LAorICB7ICduJywgICAgICAgICAgICAic2VhcmNoYWdhaW4iICAgICAgfSwKKyAgeyAnXFwnLCAgICAgICAgICAgInNlYXJjaGFnYWluIiAgICAgIH0sCisKKyAgeyBLRVlfRU5URVIsICAgICAgInF1aXRjaGVjayIgICAgICAgIH0sCisgIHsgJ1xyJywgICAgICAgICAgICJxdWl0Y2hlY2siICAgICAgICB9LAorICB7ICdRJywgICAgICAgICAgICAicXVpdG5vY2hlY2siICAgICAgfSwKKyAgeyAneCcsICAgICAgICAgICAgImFib3J0bm9jaGVjayIgICAgIH0sCisgIHsgJ1gnLCAgICAgICAgICAgICJhYm9ydG5vY2hlY2siICAgICB9LAorICB7ICdSJywgICAgICAgICAgICAicmV2ZXJ0IiAgICAgICAgICAgfSwKKyAgeyAnVScsICAgICAgICAgICAgInJldmVydHN1Z2dlc3QiICAgIH0sCisgIHsgJ0QnLCAgICAgICAgICAgICJyZXZlcnRkaXJlY3QiICAgICB9LAorICB7ICdDJywgICAgICAgICAgICAicmV2ZXJ0aW5zdGFsbGVkIiAgfSwKKworICB7ICAtMSwgICAgICAgICAgICAgMCAgICAgICAgICAgICAgICAgfQorfTsKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wa2dsaXN0LmNjIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BrZ2xpc3QuY2MKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzkzYWRjMwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wa2dsaXN0LmNjCkBAIC0wLDAgKzEsNjE3IEBACisvKgorICogZHNlbGVjdCAtIERlYmlhbiBwYWNrYWdlIG1haW50ZW5hbmNlIHVzZXIgaW50ZXJmYWNlCisgKiBwa2dsaXN0LmNjIC0gcGFja2FnZSBsaXN0IGFkbWluaXN0cmF0aW9uCisgKgorICogQ29weXJpZ2h0IMKpIDE5OTUgSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuZ3JlZW5lbmQub3JnLnVrPgorICogQ29weXJpZ2h0IMKpIDIwMDEgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworI2luY2x1ZGUgPGNvbmZpZy5oPgorI2luY2x1ZGUgPGNvbXBhdC5oPgorCisjaW5jbHVkZSA8YXNzZXJ0Lmg+CisjaW5jbHVkZSA8ZXJybm8uaD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlIDxzdGRpby5oPgorCisjaW5jbHVkZSA8ZHBrZy9pMThuLmg+CisjaW5jbHVkZSA8ZHBrZy9kcGtnLmg+CisjaW5jbHVkZSA8ZHBrZy9kcGtnLWRiLmg+CisKKyNpbmNsdWRlICJkc2VsZWN0LmgiCisjaW5jbHVkZSAiYmluZGluZ3MuaCIKKworaW50IHBhY2thZ2VsaXN0Ojpjb21wYXJlZW50cmllcyhjb25zdCBzdHJ1Y3QgcGVycGFja2FnZXN0YXRlICphLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzdHJ1Y3QgcGVycGFja2FnZXN0YXRlICpiKSB7CisgIHN3aXRjaCAoc3RhdHNvcnRvcmRlcikgeworICBjYXNlIHNzb19hdmFpbDoKKyAgICBpZiAoYS0+c3NhdmFpbCAhPSBiLT5zc2F2YWlsKSByZXR1cm4gYS0+c3NhdmFpbCAtIGItPnNzYXZhaWw7CisgICAgYnJlYWs7CisgIGNhc2Ugc3NvX3N0YXRlOgorICAgIGlmIChhLT5zc3N0YXRlICE9IGItPnNzc3RhdGUpIHJldHVybiBhLT5zc3N0YXRlIC0gYi0+c3NzdGF0ZTsKKyAgICBicmVhazsKKyAgY2FzZSBzc29fdW5zb3J0ZWQ6CisgICAgYnJlYWs7CisgIGRlZmF1bHQ6CisgICAgaW50ZXJuZXJyKCJ1bmtub3duIHN0YXRzb3J0b3JkZXIgaW4gY29tcGFyZWVudHJpZXMiKTsKKyAgfQorCisgIGNvbnN0IGNoYXIgKmFzZWN0aW9uPSBhLT5wa2ctPnNlY3Rpb247CisgIGlmICghYXNlY3Rpb24gJiYgYS0+cGtnLT5uYW1lKSBhc2VjdGlvbj0gIiI7CisgIGNvbnN0IGNoYXIgKmJzZWN0aW9uPSBiLT5wa2ctPnNlY3Rpb247CisgIGlmICghYnNlY3Rpb24gJiYgYi0+cGtnLT5uYW1lKSBic2VjdGlvbj0gIiI7CisgIGludCBjX3NlY3Rpb249CisgICAgIWFzZWN0aW9uIHx8ICFic2VjdGlvbiA/CisgICAgICAoIWJzZWN0aW9uKSAtICghYXNlY3Rpb24pIDoKKyAgICAhKmFzZWN0aW9uIHx8ICEqYnNlY3Rpb24gPworICAgICAgKCEqYXNlY3Rpb24pIC0gKCEqYnNlY3Rpb24pIDoKKyAgICBzdHJjYXNlY21wKGFzZWN0aW9uLGJzZWN0aW9uKTsKKyAgaW50IGNfcHJpb3JpdHk9CisgICAgYS0+cGtnLT5wcmlvcml0eSAtIGItPnBrZy0+cHJpb3JpdHk7CisgIGlmICghY19wcmlvcml0eSAmJiBhLT5wa2ctPnByaW9yaXR5ID09IHBrZ2luZm86OnByaV9vdGhlcikKKyAgICBjX3ByaW9yaXR5PSBzdHJjYXNlY21wKGEtPnBrZy0+b3RoZXJwcmlvcml0eSwgYi0+cGtnLT5vdGhlcnByaW9yaXR5KTsKKyAgaW50IGNfbmFtZT0KKyAgICBhLT5wa2ctPm5hbWUgJiYgYi0+cGtnLT5uYW1lID8KKyAgICAgIHN0cmNhc2VjbXAoYS0+cGtnLT5uYW1lLCBiLT5wa2ctPm5hbWUpIDoKKyAgICAoIWItPnBrZy0+bmFtZSkgLSAoIWEtPnBrZy0+bmFtZSk7CisKKyAgc3dpdGNoIChzb3J0b3JkZXIpIHsKKyAgY2FzZSBzb19zZWN0aW9uOgorICAgIHJldHVybiBjX3NlY3Rpb24gPyBjX3NlY3Rpb24gOiBjX3ByaW9yaXR5ID8gY19wcmlvcml0eSA6IGNfbmFtZTsKKyAgY2FzZSBzb19wcmlvcml0eToKKyAgICByZXR1cm4gY19wcmlvcml0eSA/IGNfcHJpb3JpdHkgOiBjX3NlY3Rpb24gPyBjX3NlY3Rpb24gOiBjX25hbWU7CisgIGNhc2Ugc29fYWxwaGE6CisgICAgcmV0dXJuIGNfbmFtZTsKKyAgY2FzZSBzb191bnNvcnRlZDoKKyAgZGVmYXVsdDoKKyAgICBpbnRlcm5lcnIoInVuc29ydGVkIG9yIHVua25vd24gaW4gY29tcGFyZWVudHJpZXMiKTsKKyAgfQorICAvKiBuZXZlciByZWFjaGVkLCBtYWtlIGdjYyBoYXBweSAqLworICByZXR1cm4gMTsKK30KKwordm9pZCBwYWNrYWdlbGlzdDo6ZGlzY2FyZGhlYWRpbmdzKCkgeworICBpbnQgYSxiOworICBmb3IgKGE9MCwgYj0wOyBhPG5pdGVtczsgYSsrKSB7CisgICAgaWYgKHRhYmxlW2FdLT5wa2ctPm5hbWUpIHsKKyAgICAgIHRhYmxlW2IrK109IHRhYmxlW2FdOworICAgIH0KKyAgfQorICBuaXRlbXM9IGI7CisKKyAgc3RydWN0IHBlcnBhY2thZ2VzdGF0ZSAqaGVhZCwgKm5leHQ7CisgIGhlYWQ9IGhlYWRpbmdzOworICB3aGlsZSAoaGVhZCkgeworICAgIG5leHQ9IGhlYWQtPnVwcmVjOworICAgIGRlbGV0ZSBoZWFkLT5wa2c7CisgICAgZGVsZXRlIGhlYWQ7CisgICAgaGVhZD0gbmV4dDsKKyAgfQorICBoZWFkaW5ncz0gMDsKK30KKwordm9pZCBwYWNrYWdlbGlzdDo6YWRkaGVhZGluZyhlbnVtIHNzYXZhaWx2YWwgc3NhdmFpbCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW51bSBzc3N0YXRldmFsIHNzc3RhdGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBrZ2luZm86OnBrZ3ByaW9yaXR5IHByaW9yaXR5LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpvdGhlcnByaW9yaXR5LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpzZWN0aW9uKSB7CisgIGFzc2VydChuaXRlbXMgPD0gbmFsbG9jYXRlZCk7CisgIGlmIChuaXRlbXMgPT0gbmFsbG9jYXRlZCkgeworICAgIG5hbGxvY2F0ZWQgKz0gbmFsbG9jYXRlZCs1MDsKKyAgICBzdHJ1Y3QgcGVycGFja2FnZXN0YXRlICoqbmV3dGFibGU9IG5ldyBzdHJ1Y3QgcGVycGFja2FnZXN0YXRlKltuYWxsb2NhdGVkXTsKKyAgICBtZW1jcHkobmV3dGFibGUsdGFibGUsbmFsbG9jYXRlZCpzaXplb2Yoc3RydWN0IHBlcnBhY2thZ2VzdGF0ZSopKTsKKyAgICBkZWxldGVbXSB0YWJsZTsKKyAgICB0YWJsZT0gbmV3dGFibGU7CisgIH0KKworICBkZWJ1ZyhkYmdfZ2VuZXJhbCwgInBhY2thZ2VsaXN0WyVwXTo6YWRkaGVhZGluZyglZCwlZCwlZCwlcywlcykiLAorICAgICAgICB0aGlzLCBzc2F2YWlsLCBzc3N0YXRlLCBwcmlvcml0eSwKKyAgICAgICAgb3RoZXJwcmlvcml0eSA/IG90aGVycHJpb3JpdHkgOiAiPG51bGw+IiwKKyAgICAgICAgc2VjdGlvbiA/IHNlY3Rpb24gOiAiPG51bGw+Iik7CisKKyAgc3RydWN0IHBrZ2luZm8gKm5ld2hlYWQ9IG5ldyBwa2dpbmZvOworICBuZXdoZWFkLT5uYW1lPSAwOworICBuZXdoZWFkLT5wcmlvcml0eT0gcHJpb3JpdHk7CisgIG5ld2hlYWQtPm90aGVycHJpb3JpdHk9IG90aGVycHJpb3JpdHk7CisgIG5ld2hlYWQtPnNlY3Rpb249IHNlY3Rpb247CisKKyAgc3RydWN0IHBlcnBhY2thZ2VzdGF0ZSAqbmV3c3RhdGU9IG5ldyBwZXJwYWNrYWdlc3RhdGU7CisgIG5ld3N0YXRlLT5wa2c9IG5ld2hlYWQ7CisgIG5ld3N0YXRlLT51cHJlYz0gaGVhZGluZ3M7CisgIGhlYWRpbmdzPSBuZXdzdGF0ZTsKKyAgbmV3c3RhdGUtPnNzYXZhaWw9IHNzYXZhaWw7CisgIG5ld3N0YXRlLT5zc3N0YXRlPSBzc3N0YXRlOworICBuZXdoZWFkLT5jbGllbnRkYXRhPSBuZXdzdGF0ZTsKKworICB0YWJsZVtuaXRlbXMrK109IG5ld3N0YXRlOworfQorCitzdGF0aWMgcGFja2FnZWxpc3QgKnNvcnRwYWNrYWdlbGlzdDsKKworaW50IHFzb3J0X2NvbXBhcmVlbnRyaWVzKGNvbnN0IHZvaWQgKmEsIGNvbnN0IHZvaWQgKmIpIHsKKyAgcmV0dXJuIHNvcnRwYWNrYWdlbGlzdC0+Y29tcGFyZWVudHJpZXMoKihjb25zdCBzdHJ1Y3QgcGVycGFja2FnZXN0YXRlKiopYSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKihjb25zdCBzdHJ1Y3QgcGVycGFja2FnZXN0YXRlKiopYik7Cit9CisKK3ZvaWQgcGFja2FnZWxpc3Q6OnNvcnRpbnBsYWNlKCkgeworICBzb3J0cGFja2FnZWxpc3Q9IHRoaXM7CisKKyAgZGVidWcoZGJnX2dlbmVyYWwsICJwYWNrYWdlbGlzdFslcF06OnNvcnRpbnBsYWNlKCkiLCB0aGlzKTsKKyAgcXNvcnQodGFibGUsIG5pdGVtcywgc2l6ZW9mKHN0cnVjdCBwa2diaW4gKiksIHFzb3J0X2NvbXBhcmVlbnRyaWVzKTsKK30KKwordm9pZCBwYWNrYWdlbGlzdDo6ZW5zdXJlc3RhdHNvcnRpbmZvKCkgeworICBjb25zdCBzdHJ1Y3QgdmVyc2lvbnJldmlzaW9uICp2ZXJpOworICBjb25zdCBzdHJ1Y3QgdmVyc2lvbnJldmlzaW9uICp2ZXJhOworICBzdHJ1Y3QgcGtnaW5mbyAqcGtnOworICBpbnQgaW5kZXg7CisKKyAgZGVidWcoZGJnX2dlbmVyYWwsCisgICAgICAgICJwYWNrYWdlbGlzdFslcF06OmVuc3VyZXN0YXRzb3J0aW5mb3MoKSBzb3J0b3JkZXI9JWQgbml0ZW1zPSVkIiwKKyAgICAgICAgdGhpcywgc3RhdHNvcnRvcmRlciwgbml0ZW1zKTsKKworICBzd2l0Y2ggKHN0YXRzb3J0b3JkZXIpIHsKKyAgY2FzZSBzc29fdW5zb3J0ZWQ6CisgICAgZGVidWcoZGJnX2dlbmVyYWwsICJwYWNrYWdlbGlzdFslcF06OmVuc3VyZXN0YXRzb3J0aW5mb3MoKSB1bnNvcnRlZCIsIHRoaXMpOworICAgIHJldHVybjsKKyAgY2FzZSBzc29fYXZhaWw6CisgICAgZGVidWcoZGJnX2dlbmVyYWwsICJwYWNrYWdlbGlzdFslcF06OmVuc3VyZXN0YXRzb3J0aW5mb3MoKSBjYWxjc3NhZG9uZT0lZCIsCisgICAgICAgICAgdGhpcywgY2FsY3NzYWRvbmUpOworICAgIGlmIChjYWxjc3NhZG9uZSkgcmV0dXJuOworICAgIGZvciAoaW5kZXg9MDsgaW5kZXggPCBuaXRlbXM7IGluZGV4KyspIHsKKyAgICAgIGRlYnVnKGRiZ19nZW5lcmFsLCAicGFja2FnZWxpc3RbJXBdOjplbnN1cmVzdGF0c29ydGluZm9zKCkgaT0lZCBwa2c9JXMiLAorICAgICAgICAgICAgdGhpcywgaW5kZXgsIHRhYmxlW2luZGV4XS0+cGtnLT5uYW1lKTsKKyAgICAgIHBrZz0gdGFibGVbaW5kZXhdLT5wa2c7CisgICAgICBzd2l0Y2ggKHBrZy0+c3RhdHVzKSB7CisgICAgICBjYXNlIHBrZ2luZm86OnN0YXRfdW5wYWNrZWQ6CisgICAgICBjYXNlIHBrZ2luZm86OnN0YXRfaGFsZmNvbmZpZ3VyZWQ6CisgICAgICBjYXNlIHBrZ2luZm86OnN0YXRfaGFsZmluc3RhbGxlZDoKKyAgICAgIGNhc2UgcGtnaW5mbzo6c3RhdF90cmlnZ2Vyc2F3YWl0ZWQ6CisgICAgICBjYXNlIHBrZ2luZm86OnN0YXRfdHJpZ2dlcnNwZW5kaW5nOgorICAgICAgICB0YWJsZVtpbmRleF0tPnNzYXZhaWw9IHNzYV9icm9rZW47CisgICAgICAgIGJyZWFrOworICAgICAgY2FzZSBwa2dpbmZvOjpzdGF0X25vdGluc3RhbGxlZDoKKyAgICAgIGNhc2UgcGtnaW5mbzo6c3RhdF9jb25maWdmaWxlczoKKyAgICAgICAgaWYgKCFpbmZvcm1hdGl2ZXZlcnNpb24oJnBrZy0+YXZhaWxhYmxlLnZlcnNpb24pKSB7CisgICAgICAgICAgdGFibGVbaW5kZXhdLT5zc2F2YWlsPSBzc2Ffbm90aW5zdF9nb25lOworLy8gRklYTUU6IERpc2FibGUgZm9yIG5vdyBhcyBhIHdvcmthcm91bmQsIHVudGlsIGRzZWxlY3Qga25vd3MgaG93IHRvIHByb3Blcmx5CisvLyAgICAgICAgc3RvcmUgc2VlbiBwYWNrYWdlcy4KKyNpZiAwCisgICAgICAgIH0gZWxzZSBpZiAodGFibGVbaW5kZXhdLT5vcmlnaW5hbCA9PSBwa2dpbmZvOjp3YW50X3Vua25vd24pIHsKKyAgICAgICAgICB0YWJsZVtpbmRleF0tPnNzYXZhaWw9IHNzYV9ub3RpbnN0X3Vuc2VlbjsKKyNlbmRpZgorICAgICAgICB9IGVsc2UgeworICAgICAgICAgIHRhYmxlW2luZGV4XS0+c3NhdmFpbD0gc3NhX25vdGluc3Rfc2VlbjsKKyAgICAgICAgfQorICAgICAgICBicmVhazsKKyAgICAgIGNhc2UgcGtnaW5mbzo6c3RhdF9pbnN0YWxsZWQ6CisgICAgICAgIHZlcmk9ICZ0YWJsZVtpbmRleF0tPnBrZy0+aW5zdGFsbGVkLnZlcnNpb247CisgICAgICAgIHZlcmE9ICZ0YWJsZVtpbmRleF0tPnBrZy0+YXZhaWxhYmxlLnZlcnNpb247CisgICAgICAgIGlmICghaW5mb3JtYXRpdmV2ZXJzaW9uKHZlcmEpKSB7CisgICAgICAgICAgdGFibGVbaW5kZXhdLT5zc2F2YWlsPSBzc2FfaW5zdGFsbGVkX2dvbmU7CisgICAgICAgIH0gZWxzZSBpZiAodmVyc2lvbmNvbXBhcmUodmVyYSx2ZXJpKSA+IDApIHsKKyAgICAgICAgICB0YWJsZVtpbmRleF0tPnNzYXZhaWw9IHNzYV9pbnN0YWxsZWRfbmV3ZXI7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgdGFibGVbaW5kZXhdLT5zc2F2YWlsPSBzc2FfaW5zdGFsbGVkX3NhbWVvbGQ7CisgICAgICAgIH0KKyAgICAgICAgYnJlYWs7CisgICAgICBkZWZhdWx0OgorICAgICAgICBpbnRlcm5lcnIoInVua25vd24gc3RhdCBpbiBlbnN1cmVzdGF0c29ydGluZm8gc3NvX2F2YWlsIik7CisgICAgICB9CisgICAgICBkZWJ1ZyhkYmdfZ2VuZXJhbCwKKyAgICAgICAgICAgICJwYWNrYWdlbGlzdFslcF06OmVuc3VyZXN0YXRzb3J0aW5mb3MoKSBpPSVkIHNzYXZhaWw9JWQiLAorICAgICAgICAgICAgdGhpcywgaW5kZXgsIHRhYmxlW2luZGV4XS0+c3NhdmFpbCk7CisgICAgfQorICAgIGNhbGNzc2Fkb25lPSAxOworICAgIGJyZWFrOworICBjYXNlIHNzb19zdGF0ZToKKyAgICBkZWJ1ZyhkYmdfZ2VuZXJhbCwgInBhY2thZ2VsaXN0WyVwXTo6ZW5zdXJlc3RhdHNvcnRpbmZvcygpIGNhbGNzc3Nkb25lPSVkIiwKKyAgICAgICAgICB0aGlzLCBjYWxjc3NzZG9uZSk7CisgICAgaWYgKGNhbGNzc3Nkb25lKSByZXR1cm47CisgICAgZm9yIChpbmRleD0wOyBpbmRleCA8IG5pdGVtczsgaW5kZXgrKykgeworICAgICAgZGVidWcoZGJnX2dlbmVyYWwsICJwYWNrYWdlbGlzdFslcF06OmVuc3VyZXN0YXRzb3J0aW5mb3MoKSBpPSVkIHBrZz0lcyIsCisgICAgICAgICAgICB0aGlzLCBpbmRleCwgdGFibGVbaW5kZXhdLT5wa2ctPm5hbWUpOworICAgICAgc3dpdGNoICh0YWJsZVtpbmRleF0tPnBrZy0+c3RhdHVzKSB7CisgICAgICBjYXNlIHBrZ2luZm86OnN0YXRfdW5wYWNrZWQ6CisgICAgICBjYXNlIHBrZ2luZm86OnN0YXRfaGFsZmNvbmZpZ3VyZWQ6CisgICAgICBjYXNlIHBrZ2luZm86OnN0YXRfaGFsZmluc3RhbGxlZDoKKyAgICAgIGNhc2UgcGtnaW5mbzo6c3RhdF90cmlnZ2Vyc2F3YWl0ZWQ6CisgICAgICBjYXNlIHBrZ2luZm86OnN0YXRfdHJpZ2dlcnNwZW5kaW5nOgorICAgICAgICB0YWJsZVtpbmRleF0tPnNzc3RhdGU9IHNzc19icm9rZW47CisgICAgICAgIGJyZWFrOworICAgICAgY2FzZSBwa2dpbmZvOjpzdGF0X25vdGluc3RhbGxlZDoKKyAgICAgICAgdGFibGVbaW5kZXhdLT5zc3N0YXRlPSBzc3Nfbm90aW5zdGFsbGVkOworICAgICAgICBicmVhazsKKyAgICAgIGNhc2UgcGtnaW5mbzo6c3RhdF9jb25maWdmaWxlczoKKyAgICAgICAgdGFibGVbaW5kZXhdLT5zc3N0YXRlPSBzc3NfY29uZmlnZmlsZXM7CisgICAgICAgIGJyZWFrOworICAgICAgY2FzZSBwa2dpbmZvOjpzdGF0X2luc3RhbGxlZDoKKyAgICAgICAgdGFibGVbaW5kZXhdLT5zc3N0YXRlPSBzc3NfaW5zdGFsbGVkOworICAgICAgICBicmVhazsKKyAgICAgIGRlZmF1bHQ6CisgICAgICAgIGludGVybmVycigidW5rbm93biBzdGF0IGluIGVuc3VyZXN0YXRzb3J0aW5mbyBzc29fc3RhdGUiKTsKKyAgICAgIH0KKyAgICAgIGRlYnVnKGRiZ19nZW5lcmFsLAorICAgICAgICAgICAgInBhY2thZ2VsaXN0WyVwXTo6ZW5zdXJlc3RhdHNvcnRpbmZvcygpIGk9JWQgc3NzdGF0ZT0lZCIsCisgICAgICAgICAgICB0aGlzLCBpbmRleCwgdGFibGVbaW5kZXhdLT5zc3N0YXRlKTsKKyAgICB9CisgICAgY2FsY3Nzc2RvbmU9IDE7CisgICAgYnJlYWs7CisgIGRlZmF1bHQ6CisgICAgaW50ZXJuZXJyKCJ1bmtub3duIHN0YXRzb3J0b3JkZXIgaW4gZW5zdXJlc3RhdHNvcnRpbmZvIik7CisgIH0KK30KKwordm9pZCBwYWNrYWdlbGlzdDo6c29ydG1ha2VoZWFkcygpIHsKKyAgZGlzY2FyZGhlYWRpbmdzKCk7CisgIGVuc3VyZXN0YXRzb3J0aW5mbygpOworICBzb3J0aW5wbGFjZSgpOworICBhc3NlcnQobml0ZW1zKTsKKworICBkZWJ1ZyhkYmdfZ2VuZXJhbCwKKyAgICAgICAgInBhY2thZ2VsaXN0WyVwXTo6c29ydG1ha2VoZWFkcygpIHNvcnRvcmRlcj0lZCBzdGF0c29ydG9yZGVyPSVkIiwKKyAgICAgICAgdGhpcywgc29ydG9yZGVyLCBzdGF0c29ydG9yZGVyKTsKKworICBpbnQgbnJlYWxpdGVtcz0gbml0ZW1zOworICBhZGRoZWFkaW5nKHNzYV9ub25lLHNzc19ub25lLHBrZ2luZm86OnByaV91bnNldCwwLDApOworCisgIGFzc2VydChzb3J0b3JkZXIgIT0gc29fdW5zb3J0ZWQpOworICBpZiAoc29ydG9yZGVyID09IHNvX2FscGhhICYmIHN0YXRzb3J0b3JkZXIgPT0gc3NvX3Vuc29ydGVkKSB7IHNvcnRpbnBsYWNlKCk7IHJldHVybjsgfQorCisgIC8vIEltcG9ydGFudDogZG8gbm90IHNhdmUgcG9pbnRlcnMgaW50byB0YWJsZSBpbiB0aGlzIGZ1bmN0aW9uLCBiZWNhdXNlCisgIC8vIGFkZGhlYWRpbmcgbWF5IG5lZWQgdG8gcmVhbGxvY2F0ZSB0YWJsZSB0byBtYWtlIGl0IGxhcmdlciAhCisKKyAgc3RydWN0IHBrZ2luZm8gKmxhc3Rwa2c7CisgIHN0cnVjdCBwa2dpbmZvICp0aGlzcGtnOworICBsYXN0cGtnPSAwOworICBpbnQgYTsKKyAgZm9yIChhPTA7IGE8bnJlYWxpdGVtczsgYSsrKSB7CisgICAgdGhpc3BrZz0gdGFibGVbYV0tPnBrZzsKKyAgICBhc3NlcnQodGhpc3BrZy0+bmFtZSk7CisgICAgaW50IHNzZGlmZj0gMDsKKyAgICBzc2F2YWlsdmFsIHNzYXZhaWw9IHNzYV9ub25lOworICAgIHNzc3RhdGV2YWwgc3NzdGF0ZT0gc3NzX25vbmU7CisgICAgc3dpdGNoIChzdGF0c29ydG9yZGVyKSB7CisgICAgY2FzZSBzc29fYXZhaWw6CisgICAgICBzc2F2YWlsPSB0aGlzcGtnLT5jbGllbnRkYXRhLT5zc2F2YWlsOworICAgICAgc3NkaWZmPSAoIWxhc3Rwa2cgfHwgc3NhdmFpbCAhPSBsYXN0cGtnLT5jbGllbnRkYXRhLT5zc2F2YWlsKTsKKyAgICAgIGJyZWFrOworICAgIGNhc2Ugc3NvX3N0YXRlOgorICAgICAgc3NzdGF0ZT0gdGhpc3BrZy0+Y2xpZW50ZGF0YS0+c3NzdGF0ZTsKKyAgICAgIHNzZGlmZj0gKCFsYXN0cGtnIHx8IHNzc3RhdGUgIT0gbGFzdHBrZy0+Y2xpZW50ZGF0YS0+c3NzdGF0ZSk7CisgICAgICBicmVhazsKKyAgICBjYXNlIHNzb191bnNvcnRlZDoKKyAgICAgIGJyZWFrOworICAgIGRlZmF1bHQ6CisgICAgICBpbnRlcm5lcnIoInVua25vd24gc3RhdHNvcnRvcmRlciBpbiBzb3J0bWFrZWhlYWRzIik7CisgICAgfQorCisgICAgaW50IHByaW9yaXR5ZGlmZj0gKCFsYXN0cGtnIHx8CisgICAgICAgICAgICAgICAgICAgICAgIHRoaXNwa2ctPnByaW9yaXR5ICE9IGxhc3Rwa2ctPnByaW9yaXR5IHx8CisgICAgICAgICAgICAgICAgICAgICAgICh0aGlzcGtnLT5wcmlvcml0eSA9PSBwa2dpbmZvOjpwcmlfb3RoZXIgJiYKKyAgICAgICAgICAgICAgICAgICAgICAgIHN0cmNhc2VjbXAodGhpc3BrZy0+b3RoZXJwcmlvcml0eSxsYXN0cGtnLT5vdGhlcnByaW9yaXR5KSkpOworICAgIGludCBzZWN0aW9uZGlmZj0gKCFsYXN0cGtnIHx8CisgICAgICAgICAgICAgICAgICAgICAgc3RyY2FzZWNtcCh0aGlzcGtnLT5zZWN0aW9uID8gdGhpc3BrZy0+c2VjdGlvbiA6ICIiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFzdHBrZy0+c2VjdGlvbiA/IGxhc3Rwa2ctPnNlY3Rpb24gOiAiIikpOworCisgICAgZGVidWcoZGJnX2dlbmVyYWwsCisgICAgICAgICAgInBhY2thZ2VsaXN0WyVwXTo6c29ydG1ha2VoZWFkcygpIHBrZz0lcyAgc3RhdGU9JWQgYXZhaWw9JWQgJXMgICIKKyAgICAgICAgICAicHJpb3JpdHk9JWQgb3RoZXJwcmlvcml0eT0lcyAlcyAgc2VjdGlvbj0lcyAlcyIsCisgICAgICAgICAgdGhpcywgdGhpc3BrZy0+bmFtZSwKKyAgICAgICAgICB0aGlzcGtnLT5jbGllbnRkYXRhLT5zc2F2YWlsLCB0aGlzcGtnLT5jbGllbnRkYXRhLT5zc3N0YXRlLAorICAgICAgICAgIHNzZGlmZiA/ICIqZGlmZiIgOiAic2FtZSIsCisgICAgICAgICAgdGhpc3BrZy0+cHJpb3JpdHksCisgICAgICAgICAgdGhpc3BrZy0+cHJpb3JpdHkgIT0gcGtnaW5mbzo6cHJpX290aGVyID8gIjxub25lPiIgOgorICAgICAgICAgIHRoaXNwa2ctPm90aGVycHJpb3JpdHkgPyB0aGlzcGtnLT5vdGhlcnByaW9yaXR5IDogIjxudWxsPiIsCisgICAgICAgICAgcHJpb3JpdHlkaWZmID8gIipkaWZmKiIgOiAic2FtZSIsCisgICAgICAgICAgdGhpc3BrZy0+c2VjdGlvbiA/IHRoaXNwa2ctPnNlY3Rpb24gOiAiPG51bGw+IiwKKyAgICAgICAgICBzZWN0aW9uZGlmZiA/ICIqZGlmZioiIDogInNhbWUiKTsKKworICAgIGlmIChzc2RpZmYpCisgICAgICBhZGRoZWFkaW5nKHNzYXZhaWwsc3NzdGF0ZSwKKyAgICAgICAgICAgICAgICAgcGtnaW5mbzo6cHJpX3Vuc2V0LDAsIDApOworCisgICAgaWYgKHNvcnRvcmRlciA9PSBzb19zZWN0aW9uICYmIHNlY3Rpb25kaWZmKQorICAgICAgYWRkaGVhZGluZyhzc2F2YWlsLHNzc3RhdGUsCisgICAgICAgICAgICAgICAgIHBrZ2luZm86OnByaV91bnNldCwwLCB0aGlzcGtnLT5zZWN0aW9uID8gdGhpc3BrZy0+c2VjdGlvbiA6ICIiKTsKKworICAgIGlmIChzb3J0b3JkZXIgPT0gc29fcHJpb3JpdHkgJiYgcHJpb3JpdHlkaWZmKQorICAgICAgYWRkaGVhZGluZyhzc2F2YWlsLHNzc3RhdGUsCisgICAgICAgICAgICAgICAgIHRoaXNwa2ctPnByaW9yaXR5LHRoaXNwa2ctPm90aGVycHJpb3JpdHksIDApOworCisgICAgaWYgKHNvcnRvcmRlciAhPSBzb19hbHBoYSAmJiAocHJpb3JpdHlkaWZmIHx8IHNlY3Rpb25kaWZmKSkKKyAgICAgIGFkZGhlYWRpbmcoc3NhdmFpbCxzc3N0YXRlLAorICAgICAgICAgICAgICAgICB0aGlzcGtnLT5wcmlvcml0eSx0aGlzcGtnLT5vdGhlcnByaW9yaXR5LAorICAgICAgICAgICAgICAgICB0aGlzcGtnLT5zZWN0aW9uID8gdGhpc3BrZy0+c2VjdGlvbiA6ICIiKTsKKworICAgIGxhc3Rwa2c9IHRoaXNwa2c7CisgIH0KKworICBpZiAobGlzdHBhZCkgeworICAgIHdlcmFzZShsaXN0cGFkKTsKKyAgfQorCisgIHNvcnRpbnBsYWNlKCk7Cit9CisKK3ZvaWQgcGFja2FnZWxpc3Q6OmluaXRpYWxzZXR1cCgpIHsKKyAgZGVidWcoZGJnX2dlbmVyYWwsICJwYWNrYWdlbGlzdFslcF06OmluaXRpYWxzZXR1cCgpIiwgdGhpcyk7CisKKyAgaW50IGFsbHBhY2thZ2VzID0gcGtnX2RiX2NvdW50KCk7CisgIGRhdGF0YWJsZT0gbmV3IHN0cnVjdCBwZXJwYWNrYWdlc3RhdGVbYWxscGFja2FnZXNdOworCisgIG5hbGxvY2F0ZWQ9IGFsbHBhY2thZ2VzKzE1MDsgLy8gd2lsbCByZWFsbG9jIGlmIG5lY2Vzc2FyeSwgc28gMTUwIG5vdCBjcml0aWNhbAorICB0YWJsZT0gbmV3IHN0cnVjdCBwZXJwYWNrYWdlc3RhdGUqW25hbGxvY2F0ZWRdOworCisgIGRlcHNkb25lPSAwOworICB1bmF2ZG9uZT0gMDsKKyAgY3VycmVudGluZm89IDA7CisgIGhlYWRpbmdzPSAwOworICB2ZXJib3NlPSAwOworICBjYWxjc3NhZG9uZT0gY2FsY3Nzc2RvbmU9IDA7CisgIHNlYXJjaGRlc2NyPSAwOworfQorCit2b2lkIHBhY2thZ2VsaXN0OjpmaW5hbHNldHVwKCkgeworICBzZXRjdXJzb3IoMCk7CisKKyAgZGVidWcoZGJnX2dlbmVyYWwsICJwYWNrYWdlbGlzdFslcF06OmZpbmFsc2V0dXAgZG9uZTsgcmVjdXJzaXZlPSVkIG5pdGVtcz0lZCIsCisgICAgICAgIHRoaXMsIHJlY3Vyc2l2ZSwgbml0ZW1zKTsKK30KKworcGFja2FnZWxpc3Q6OnBhY2thZ2VsaXN0KGtleWJpbmRpbmdzICprYikgOiBiYXNlbGlzdChrYikgeworICAvLyBub25yZWN1cnNpdmUKKyAgaW5pdGlhbHNldHVwKCk7CisgIHN0cnVjdCBwa2dpdGVyYXRvciAqaXRlcjsKKyAgc3RydWN0IHBrZ2luZm8gKnBrZzsKKworICBuaXRlbXMgPSAwOworCisgIGl0ZXIgPSBwa2dfZGJfaXRlcl9uZXcoKTsKKyAgd2hpbGUgKChwa2cgPSBwa2dfZGJfaXRlcl9uZXh0KGl0ZXIpKSkgeworICAgIHN0cnVjdCBwZXJwYWNrYWdlc3RhdGUgKnN0YXRlPSAmZGF0YXRhYmxlW25pdGVtc107CisgICAgc3RhdGUtPnBrZz0gcGtnOworICAgIGlmIChwa2ctPnN0YXR1cyA9PSBwa2dpbmZvOjpzdGF0X25vdGluc3RhbGxlZCAmJgorICAgICAgICAhcGtnLT5maWxlcyAmJgorICAgICAgICBwa2ctPndhbnQgIT0gcGtnaW5mbzo6d2FudF9pbnN0YWxsKSB7CisgICAgICBwa2ctPmNsaWVudGRhdGE9IDA7IGNvbnRpbnVlOworICAgIH0KKyAgICAvLyB0cmVhdCBhbGwgdW5rbm93biBwYWNrYWdlcyBhcyBhbHJlYWR5IHNlZW4KKyAgICBzdGF0ZS0+ZGlyZWN0PSBzdGF0ZS0+b3JpZ2luYWw9IChwa2ctPndhbnQgPT0gcGtnaW5mbzo6d2FudF91bmtub3duID8gcGtnaW5mbzo6d2FudF9wdXJnZSA6IHBrZy0+d2FudCk7CisgICAgaWYgKHJlYWR3cml0ZSAmJiBzdGF0ZS0+b3JpZ2luYWwgPT0gcGtnaW5mbzo6d2FudF91bmtub3duKSB7CisgICAgICBzdGF0ZS0+c3VnZ2VzdGVkPQorICAgICAgICBwa2ctPnN0YXR1cyA9PSBwa2dpbmZvOjpzdGF0X2luc3RhbGxlZCB8fAorICAgICAgICAgIHBrZy0+cHJpb3JpdHkgPD0gcGtnaW5mbzo6cHJpX3N0YW5kYXJkIC8qIEZJWE1FOiBjb25maWd1cmFibGUgKi8KKyAgICAgICAgICAgID8gcGtnaW5mbzo6d2FudF9pbnN0YWxsIDogcGtnaW5mbzo6d2FudF9wdXJnZTsKKyAgICAgIHN0YXRlLT5zcHJpb3JpdHk9IHNwX2luaGVyaXQ7CisgICAgfSBlbHNlIHsKKyAgICAgIHN0YXRlLT5zdWdnZXN0ZWQ9IHN0YXRlLT5vcmlnaW5hbDsKKyAgICAgIHN0YXRlLT5zcHJpb3JpdHk9IHNwX2ZpeGVkOworICAgIH0KKyAgICBzdGF0ZS0+ZHByaW9yaXR5PSBkcF9tdXN0OworICAgIHN0YXRlLT5zZWxlY3RlZD0gc3RhdGUtPnN1Z2dlc3RlZDsKKyAgICBzdGF0ZS0+dXByZWM9IDA7CisgICAgc3RhdGUtPnJlbGF0aW9ucy5pbml0KCk7CisgICAgcGtnLT5jbGllbnRkYXRhPSBzdGF0ZTsKKyAgICB0YWJsZVtuaXRlbXNdPSBzdGF0ZTsKKyAgICBuaXRlbXMrKzsKKyAgfQorICBwa2dfZGJfaXRlcl9mcmVlKGl0ZXIpOworCisgIGlmICghbml0ZW1zKQorICAgIG9oc2hpdChfKCJUaGVyZSBhcmUgbm8gcGFja2FnZXMuIikpOworICByZWN1cnNpdmU9IDA7CisgIHNvcnRvcmRlcj0gc29fcHJpb3JpdHk7CisgIHN0YXRzb3J0b3JkZXI9IHNzb19hdmFpbDsKKyAgdmVyc2lvbmRpc3BsYXlvcHQ9IHZkb19ib3RoOworICBzb3J0bWFrZWhlYWRzKCk7CisgIGZpbmFsc2V0dXAoKTsKK30KKworcGFja2FnZWxpc3Q6OnBhY2thZ2VsaXN0KGtleWJpbmRpbmdzICprYiwgcGtnaW5mbyAqKnBrZ2x0YWIpIDogYmFzZWxpc3Qoa2IpIHsKKyAgLy8gdGFrZXMgb3ZlciByZXNwb25zaWJpbGl0eSBmb3IgcGtnbHRhYiAocmVjdXJzaXZlKQorICBpbml0aWFsc2V0dXAoKTsKKworICByZWN1cnNpdmU9IDE7CisgIG5pdGVtcz0gMDsKKyAgaWYgKHBrZ2x0YWIpIHsKKyAgICBhZGQocGtnbHRhYik7CisgICAgZGVsZXRlW10gcGtnbHRhYjsKKyAgfQorCisgIHNvcnRvcmRlcj0gc29fdW5zb3J0ZWQ7CisgIHN0YXRzb3J0b3JkZXI9IHNzb191bnNvcnRlZDsKKyAgdmVyc2lvbmRpc3BsYXlvcHQ9IHZkb19ub25lOworICBmaW5hbHNldHVwKCk7Cit9CisKK3ZvaWQgcGVycGFja2FnZXN0YXRlOjpmcmVlKGludCByZWN1cnNpdmUpIHsKKyAgaWYgKHBrZy0+bmFtZSkgeworICAgIGlmIChyZWFkd3JpdGUpIHsKKyAgICAgIGlmICh1cHJlYykgeworICAgICAgICBhc3NlcnQocmVjdXJzaXZlKTsKKyAgICAgICAgdXByZWMtPnNlbGVjdGVkPSBzZWxlY3RlZDsKKyAgICAgICAgcGtnLT5jbGllbnRkYXRhPSB1cHJlYzsKKyAgICAgIH0gZWxzZSB7CisgICAgICAgIGFzc2VydCghcmVjdXJzaXZlKTsKKyAgICAgICAgaWYgKHBrZy0+d2FudCAhPSBzZWxlY3RlZCAmJgorICAgICAgICAgICAgIShwa2ctPndhbnQgPT0gcGtnaW5mbzo6d2FudF91bmtub3duICYmIHNlbGVjdGVkID09IHBrZ2luZm86OndhbnRfcHVyZ2UpKSB7CisgICAgICAgICAgcGtnLT53YW50PSBzZWxlY3RlZDsKKyAgICAgICAgfQorICAgICAgICBwa2ctPmNsaWVudGRhdGE9IDA7CisgICAgICB9CisgICAgfQorICAgIHJlbGF0aW9ucy5kZXN0cm95KCk7CisgIH0KK30KKworcGFja2FnZWxpc3Q6On5wYWNrYWdlbGlzdCgpIHsKKyAgZGVidWcoZGJnX2dlbmVyYWwsICJwYWNrYWdlbGlzdFslcF06On5wYWNrYWdlbGlzdCgpIiwgdGhpcyk7CisKKyAgaWYgKHNlYXJjaHN0cmluZ1swXSkKKyAgICByZWdmcmVlKCZzZWFyY2hmc20pOworCisgIGRpc2NhcmRoZWFkaW5ncygpOworCisgIGludCBpbmRleDsKKyAgZm9yIChpbmRleD0wOyBpbmRleDxuaXRlbXM7IGluZGV4KyspIHRhYmxlW2luZGV4XS0+ZnJlZShyZWN1cnNpdmUpOworICBkZWxldGVbXSB0YWJsZTsKKyAgZGVsZXRlW10gZGF0YXRhYmxlOworICBkZWJ1ZyhkYmdfZ2VuZXJhbCwgInBhY2thZ2VsaXN0WyVwXTo6fnBhY2thZ2VsaXN0KCkgdGFibGVzIGZyZWVkIiwgdGhpcyk7CisKKyAgZG9uZWVudCAqc2VhcmNoLCAqbmV4dDsKKyAgZm9yIChzZWFyY2g9ZGVwc2RvbmU7IHNlYXJjaDsgc2VhcmNoPW5leHQpIHsKKyAgICBuZXh0PSBzZWFyY2gtPm5leHQ7CisgICAgZGVsZXRlIHNlYXJjaDsKKyAgfQorCisgIGRlYnVnKGRiZ19nZW5lcmFsLCAicGFja2FnZWxpc3RbJXBdOjp+cGFja2FnZWxpc3QoKSBkb25lIiwgdGhpcyk7Cit9CisKK2Jvb2wKK3BhY2thZ2VsaXN0OjpjaGVja3NlYXJjaChjaGFyICpyeCkKK3sKKyAgaW50IHIsb3B0ID0gUkVHX05PU1VCOworCisgIGlmICghcnggfHwgISpyeCkKKyAgICByZXR1cm4gZmFsc2U7CisKKyAgc2VhcmNoZGVzY3I9MDsKKyAgaWYgKHNlYXJjaHN0cmluZ1swXSkgeworICAgIHJlZ2ZyZWUoJnNlYXJjaGZzbSk7CisgICAgc2VhcmNoc3RyaW5nWzBdPTA7CisgIH0KKworICAvKiBsb29rIGZvciBzZWFyY2ggb3B0aW9ucyAqLworICBmb3IgKHI9c3RybGVuKHJ4KS0xOyByPj0wOyByLS0pCisgICAgaWYgKChyeFtyXT09Jy8nKSAmJiAoKHI9PTApIHx8IChyeFtyLTFdIT0nXFwnKSkpCisgICAgICBicmVhazsKKworICBpZiAocj49MCkgeworICAgIHJ4W3IrK109J1wwJzsKKyAgICBpZiAoc3RyY3NwbihyeCtyLCAiZGkiKSE9MCkgeworICAgICAgZGlzcGxheWVycm9yKF8oImludmFsaWQgc2VhcmNoIG9wdGlvbiBnaXZlbiIpKTsKKyAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisKKyAgIHdoaWxlIChyeFtyXSkgeworICAgICBpZiAocnhbcl09PSdpJykKKyAgICAgICBvcHR8PVJFR19JQ0FTRTsKKyAgICAgZWxzZSBpZiAocnhbcl09PSdkJykKKyAgICAgICBzZWFyY2hkZXNjcj0xOworICAgICByKys7CisgICB9CisgIH0KKworICBpZiAoKHI9cmVnY29tcCgmc2VhcmNoZnNtLCByeCwgb3B0KSkhPTApIHsKKyAgICBkaXNwbGF5ZXJyb3IoXygiZXJyb3IgaW4gcmVndWxhciBleHByZXNzaW9uIikpOworICAgIHJldHVybiBmYWxzZTsKKyAgfQorCisgIHJldHVybiB0cnVlOworfQorCitib29sCitwYWNrYWdlbGlzdDo6bWF0Y2hzZWFyY2goaW50IGluZGV4KQoreworICBjb25zdCBjaGFyICpuYW1lOworCisgIG5hbWUgPSBpdGVtbmFtZShpbmRleCk7CisgIGlmICghbmFtZSkKKyAgICByZXR1cm4gZmFsc2U7CS8qIFNraXAgdGhpbmdzIHdpdGhvdXQgYSBuYW1lIChzZXBlcmF0b3JzKSAqLworCisgIGlmIChyZWdleGVjKCZzZWFyY2hmc20sIG5hbWUsIDAsIE5VTEwsIDApID09IDApCisgICAgcmV0dXJuIHRydWU7CisKKyAgaWYgKHNlYXJjaGRlc2NyKSB7CisgICAgY29uc3QgY2hhciogZGVzY3IgPSB0YWJsZVtpbmRleF0tPnBrZy0+YXZhaWxhYmxlLmRlc2NyaXB0aW9uOworICAgIGlmICghZGVzY3IgfHwgISpkZXNjcikKKyAgICAgIHJldHVybiBmYWxzZTsKKworICAgIGlmIChyZWdleGVjKCZzZWFyY2hmc20sIGRlc2NyLCAwLCBOVUxMLCAwKT09MCkKKyAgICAgIHJldHVybiB0cnVlOworICB9CisKKyAgcmV0dXJuIGZhbHNlOworfQorCitwa2dpbmZvICoqcGFja2FnZWxpc3Q6OmRpc3BsYXkoKSB7CisgIC8vIHJldHVybnMgbGlzdCBvZiBwYWNrYWdlcyBhcyBudWxsLXRlcm1pbmF0ZWQgYXJyYXksIHdoaWNoIGJlY29tZXMgb3duZWQKKyAgLy8gYnkgdGhlIGNhbGxlciwgaWYgYSByZWN1cnNpdmUgY2hlY2sgaXMgZGVzaXJlZC4KKyAgLy8gcmV0dXJucyAwIGlmIG5vIHJlY3Vyc2l2ZSBjaGVjayBpcyBkZXNpcmVkLgorICBpbnQgcmVzcG9uc2UsIGluZGV4OworICBjb25zdCBrZXliaW5kaW5nczo6aW50ZXJwcmV0YXRpb24gKmludGVycDsKKyAgcGtnaW5mbyAqKnJldGw7CisKKyAgZGVidWcoZGJnX2dlbmVyYWwsICJwYWNrYWdlbGlzdFslcF06OmRpc3BsYXkoKSIsIHRoaXMpOworCisgIHNldHVwc2lnd2luY2goKTsKKyAgc3RhcnRkaXNwbGF5KCk7CisKKyAgaWYgKCFleHBlcnRtb2RlKQorICBkaXNwbGF5aGVscChoZWxwbWVudWxpc3QoKSwnaScpOworCisgIGRlYnVnKGRiZ19nZW5lcmFsLCAicGFja2FnZWxpc3RbJXBdOjpkaXNwbGF5KCkgZW50ZXJpbmcgbG9vcCIsIHRoaXMpOworICBmb3IgKDs7KSB7CisgICAgaWYgKHdoYXRpbmZvX2hlaWdodCkgd2N1cnN5bmN1cCh3aGF0aW5mb3dpbik7CisgICAgaWYgKGRvdXBkYXRlKCkgPT0gRVJSKQorICAgICAgb2hzaGl0ZShfKCJkb3VwZGF0ZSBmYWlsZWQiKSk7CisgICAgc2lnbmFsbGlzdD0gdGhpczsKKyAgICBpZiAoc2lncHJvY21hc2soU0lHX1VOQkxPQ0ssICZzaWd3aW5jaHNldCwgMCkpCisgICAgICBvaHNoaXRlKF8oImZhaWxlZCB0byB1bmJsb2NrIFNJR1dJTkNIIikpOworICAgIGRvCisgICAgcmVzcG9uc2U9IGdldGNoKCk7CisgICAgd2hpbGUgKHJlc3BvbnNlID09IEVSUiAmJiBlcnJubyA9PSBFSU5UUik7CisgICAgaWYgKHNpZ3Byb2NtYXNrKFNJR19CTE9DSywgJnNpZ3dpbmNoc2V0LCAwKSkKKyAgICAgIG9oc2hpdGUoXygiZmFpbGVkIHRvIHJlLWJsb2NrIFNJR1dJTkNIIikpOworICAgIGlmIChyZXNwb25zZSA9PSBFUlIpCisgICAgICBvaHNoaXRlKF8oImdldGNoIGZhaWxlZCIpKTsKKyAgICBpbnRlcnA9ICgqYmluZGluZ3MpKHJlc3BvbnNlKTsKKyAgICBkZWJ1ZyhkYmdfZ2VuZXJhbCwgInBhY2thZ2VsaXN0WyVwXTo6ZGlzcGxheSgpIHJlc3BvbnNlPSVkIGludGVycD0lcyIsCisgICAgICAgICAgdGhpcywgcmVzcG9uc2UsIGludGVycCA/IGludGVycC0+YWN0aW9uIDogIltub25lXSIpOworICAgIGlmICghaW50ZXJwKSB7IGJlZXAoKTsgY29udGludWU7IH0KKyAgICAodGhpcy0+KihpbnRlcnAtPnBmbikpKCk7CisgICAgaWYgKGludGVycC0+cWEgIT0gcWFfbm9xdWl0KSBicmVhazsKKyAgfQorICBwb3BfY2xlYW51cChlaGZsYWdfbm9ybWFsdGlkeSk7IC8vIHVuc2V0IHRoZSBTSUdXSU5DSCBoYW5kbGVyCisgIGVuZGRpc3BsYXkoKTsKKworICBpZiAoaW50ZXJwLT5xYSA9PSBxYV9xdWl0bm9jaGVja3NhdmUgfHwgIXJlYWR3cml0ZSkgeworICAgIGRlYnVnKGRiZ19nZW5lcmFsLCAicGFja2FnZWxpc3RbJXBdOjpkaXNwbGF5KCkgZG9uZSAtIHF1aXROT2NoZWNrIiwgdGhpcyk7CisgICAgcmV0dXJuIDA7CisgIH0KKworICBpZiAocmVjdXJzaXZlKSB7CisgICAgcmV0bD0gbmV3IHBrZ2luZm8qW25pdGVtcysxXTsKKyAgICBmb3IgKGluZGV4PTA7IGluZGV4PG5pdGVtczsgaW5kZXgrKykgcmV0bFtpbmRleF09IHRhYmxlW2luZGV4XS0+cGtnOworICAgIHJldGxbbml0ZW1zXT0gMDsKKyAgICBkZWJ1ZyhkYmdfZ2VuZXJhbCwgInBhY2thZ2VsaXN0WyVwXTo6ZGlzcGxheSgpIGRvbmUsIHJldGw9JXAiLCB0aGlzLCByZXRsKTsKKyAgICByZXR1cm4gcmV0bDsKKyAgfSBlbHNlIHsKKyAgICBwYWNrYWdlbGlzdCAqc3ViPSBuZXcgcGFja2FnZWxpc3QoYmluZGluZ3MsMCk7CisgICAgZm9yIChpbmRleD0wOyBpbmRleCA8IG5pdGVtczsgaW5kZXgrKykKKyAgICAgIGlmICh0YWJsZVtpbmRleF0tPnBrZy0+bmFtZSkKKyAgICAgICAgc3ViLT5hZGQodGFibGVbaW5kZXhdLT5wa2cpOworICAgIHJlcGVhdGVkbHlkaXNwbGF5KHN1YixkcF9tdXN0KTsKKyAgICBkZWJ1ZyhkYmdfZ2VuZXJhbCwKKyAgICAgICAgICAicGFja2FnZWxpc3RbJXBdOjpkaXNwbGF5KCkgZG9uZSwgbm90IHJlY3Vyc2l2ZSBubyByZXRsIiwgdGhpcyk7CisgICAgcmV0dXJuIDA7CisgIH0KK30KKworLyogdmk6IHN3PTIgdHM9OAorICovCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcGtnbGlzdC5oIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BrZ2xpc3QuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41YzUzOGU5Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BrZ2xpc3QuaApAQCAtMCwwICsxLDIzNCBAQAorLyogLSotIGMrKyAtKi0KKyAqIGRzZWxlY3QgLSBEZWJpYW4gcGFja2FnZSBtYWludGVuYW5jZSB1c2VyIGludGVyZmFjZQorICogcGtnbGlzdC5oIC0gZXh0ZXJuYWwgZGVmaW5pdGlvbnMgZm9yIHBhY2thZ2UgbGlzdCBoYW5kbGluZworICoKKyAqIENvcHlyaWdodCDCqSAxOTk0LDE5OTUgSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuZ3JlZW5lbmQub3JnLnVrPgorICogQ29weXJpZ2h0IMKpIDIwMDEgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworI2lmbmRlZiBQS0dMSVNUX0gKKyNkZWZpbmUgUEtHTElTVF9ICisKKyNpbmNsdWRlIDxyZWdleC5oPgorCitlbnVtIHNob3dwcmlvcml0eSB7CisgIGRwX25vbmUsICAgICAgLy8gaGFzIG5vdCBiZWVuIGludm9sdmVkIGluIGFueSB1bnNhdGlzZmllZCB0aGluZ3MKKyAgZHBfbWF5LCAgICAgICAvLyBoYXMgYmVlbiBpbnZvbHZlZCBpbiBhbiB1bnNhdGlzZmllZCBTdWdnZXN0cworICBkcF9zaG91bGQsCS8vIGhhcyBiZWVuIGludm9sdmVkIGluIGFuIHVuc2F0aXNmaWVkIFJlY29tbWVuZHMKKyAgZHBfbXVzdCAgICAgICAvLyBoYXMgYmVlbiBpbnZvbHZlZCBpbiBhbiB1bnNhdGlzZmllZCBEZXBlbmRzL0NvbmZsaWN0cworfTsKKworZW51bSBzZWxwcmlvcml0eSB7CisgIC8vIHdoZXJlIGRpZCB0aGUgY3VycmVudGx5IHN1Z2dlc3RlZCB2YWx1ZSBjb21lIGZyb20sIGFuZCBob3cgaW1wb3J0YW50CisgIC8vICBpcyBpdCB0byBkaXNwbGF5IHRoaXMgcGFja2FnZSA/CisgIC8vIGxvdworICBzcF9pbmhlcml0LCAgICAgLy8gaW5oZXJpdGVkIGZyb20gb3VyIHBhcmVudCBsaXN0CisgIHNwX3NlbGVjdGluZywgICAvLyBwcm9wYWdhdGluZyBhIHNlbGVjdGlvbgorICBzcF9kZXNlbGVjdGluZywgLy8gcHJvcGFnYXRpbmcgYSBkZXNlbGVjdGlvbgorICBzcF9maXhlZCAgICAgICAgLy8gaXQgY2FtZSBmcm9tIHRoZSBgc3RhdHVzJyBmaWxlIGFuZCB3ZSdyZSBub3QgYSByZWN1cnNpdmUgbGlzdAorICAvLyBoaWdoCit9OworCitlbnVtIHNzYXZhaWx2YWwgeyAgICAgICAgLy8gQXZhaWxhYmlsaXR5IHNvcnRpbmcgb3JkZXIsIGZpcnN0IHRvIGxhc3Q6CisgIHNzYV9icm9rZW4sICAgICAgICAgICAgLy8gICBCcm9rZW5seS1pbnN0YWxsZWQgYW5kIG5vdGhpbmcgYXZhaWxhYmxlCisgIHNzYV9ub3RpbnN0X3Vuc2VlbiwgICAgLy8gICBFbnRpcmVseSBuZXcgcGFja2FnZXMgKGF2YWlsYWJsZSBidXQgbm90IGRlc2VsZWN0ZWQgeWV0KQorICBzc2FfaW5zdGFsbGVkX25ld2VyLCAgIC8vICAgSW5zdGFsbGVkLCBuZXdlciB2ZXJzaW9uIGF2YWlsYWJsZQorICBzc2FfaW5zdGFsbGVkX2dvbmUsICAgIC8vICAgSW5zdGFsbGVkIGJ1dCBubyBsb25nZXIgYXZhaWxhYmxlCisgIHNzYV9pbnN0YWxsZWRfc2FtZW9sZCwgLy8gICBTYW1lIG9yIG9sZGVyIHZlcnNpb24gYXZhaWxhYmxlIGFzIGluc3RhbGxlZAorICBzc2Ffbm90aW5zdF9zZWVuLCAgICAgIC8vICAgQXZhaWxhYmxlIGJ1dCBub3QgaW5zdGFsbGVkCisgIHNzYV9ub3RpbnN0X2dvbmUsICAgICAgLy8gICBOb3QgYXZhaWxhYmxlLCBhbmQgb25seSBjb25maWcgZmlsZXMgbGVmdAorICBzc2Ffbm9uZT0tMQorfTsKKworZW51bSBzc3N0YXRldmFsIHsgICAgICAvLyBTdGF0ZSBzb3J0aW5nIG9yZGVyLCBmaXJzdCB0byBsYXN0OgorICBzc3NfYnJva2VuLCAgICAgICAgICAvLyAgIEluIHNvbWUgd2F5IGJyb2tlbmx5IGluc3RhbGxlZAorICBzc3NfaW5zdGFsbGVkLCAgICAgICAvLyAgIEluc3RhbGxlZAorICBzc3NfY29uZmlnZmlsZXMsICAgICAvLyAgIENvbmZpZyBmaWxlcyBvbmx5CisgIHNzc19ub3RpbnN0YWxsZWQsICAgIC8vICAgTm90IGluc3RhbGxlZAorICBzc3Nfbm9uZT0tMQorfTsKKworc3RydWN0IHBlcnBhY2thZ2VzdGF0ZSB7CisgIHN0cnVjdCBwa2dpbmZvICpwa2c7CisgIC8qIFRoZSBgaGVhZGluZycgZW50cmllcyBpbiB0aGUgbGlzdCwgZm9yIGBhbGwgcGFja2FnZXMgb2YgdHlwZSBmb28nLAorICAgKiBwb2ludCB0byBhIG1hZGUtdXAgcGtnaW5mbywgd2hpY2ggaGFzIHBrZy0+bmFtZT09MC4KKyAgICogcGtnLT5wcmlvcml0eSBhbmQgcGtnLT5zZWN0aW9uIGFyZSBzZXQgdG8gdGhlIHZhbHVlcyBpZiBhcHByb3ByaWF0ZSwgb3IgdG8KKyAgICogcHJpX3Vuc2V0IHJlc3AuIG51bGwgaWYgdGhlIGhlYWRpbmcgcmVmZXJzIHRvIGFsbCBwcmlvcml0aWVzIHJlc3AuIHNlY3Rpb25zLgorICAgKiB1cHJlYyBpcyB1c2VkIHdoZW4gY29uc3RydWN0aW5nIHRoZSBsaXN0IGluaXRpYWxseSBhbmQgd2hlbiB0ZWFyaW5nIGl0CisgICAqIGRvd24gYW5kIHNob3VsZCBub3Qgb3RoZXJ3aXNlIGJlIHVzZWQ7IG90aGVyIGZpZWxkcyBhcmUgdW5kZWZpbmVkLgorICAgKi8KKyAgcGtnaW5mbzo6cGtnd2FudCBvcmlnaW5hbDsgICAgICAgICAvLyBzZXQgYnkgY2FsbGVyCisgIHBrZ2luZm86OnBrZ3dhbnQgZGlyZWN0OyAgICAgICAgICAgLy8gc2V0IGJ5IGNhbGxlcgorICBwa2dpbmZvOjpwa2d3YW50IHN1Z2dlc3RlZDsgICAgICAgIC8vIHNldCBieSBjYWxsZXIsIG1vZGlmaWVkIGJ5IHJlc29sdmVzdWdnZXN0CisgIHBrZ2luZm86OnBrZ3dhbnQgc2VsZWN0ZWQ7ICAgICAgICAgLy8gbm90IHNldCBieSBjYWxsZXIsIHdpbGwgYmUgc2V0IGJ5IHBhY2thZ2VsaXN0CisgIHNlbHByaW9yaXR5IHNwcmlvcml0eTsgICAgICAgICAgICAgLy8gbW9ub3RvbmljYWxseSBpbmNyZWFzZXMgKHVzZWQgYnkgc3VibGlzdHMpCisgIHNob3dwcmlvcml0eSBkcHJpb3JpdHk7ICAgICAgICAgICAgLy8gbW9ub3RvbmljYWxseSBpbmNyZWFzZXMgKHVzZWQgYnkgc3VibGlzdHMpCisgIHN0cnVjdCBwZXJwYWNrYWdlc3RhdGUgKnVwcmVjOyAgICAgLy8gMCBpZiB0aGlzIGlzIG5vdCBwYXJ0IG9mIGEgcmVjdXJzaXZlIGxpc3QKKyAgc3NhdmFpbHZhbCBzc2F2YWlsOworICBzc3N0YXRldmFsIHNzc3RhdGU7CisgIHZhcmJ1ZiByZWxhdGlvbnM7CisKKyAgdm9pZCBmcmVlKGludCByZWN1cnNpdmUpOworfTsKKworY2xhc3MgcGFja2FnZWxpc3QgOiBwdWJsaWMgYmFzZWxpc3QgeworcHJvdGVjdGVkOgorICBpbnQgc3RhdHVzX3dpZHRoLCBnYXBfd2lkdGgsIHNlY3Rpb25fd2lkdGgsIHByaW9yaXR5X3dpZHRoOworICBpbnQgcGFja2FnZV93aWR0aCwgdmVyc2lvbmluc3RhbGxlZF93aWR0aCwgdmVyc2lvbmF2YWlsYWJsZV93aWR0aCwgZGVzY3JpcHRpb25fd2lkdGg7CisgIGludCBzZWN0aW9uX2NvbHVtbiwgcHJpb3JpdHlfY29sdW1uLCB2ZXJzaW9uaW5zdGFsbGVkX2NvbHVtbjsKKyAgaW50IHZlcnNpb25hdmFpbGFibGVfY29sdW1uLCBwYWNrYWdlX2NvbHVtbiwgZGVzY3JpcHRpb25fY29sdW1uOworCisgIC8vIE9ubHkgdXNlZCB3aGVuIGB2ZXJib3NlJyBpcyBzZXQKKyAgaW50IHN0YXR1c19ob2xkX3dpZHRoLCBzdGF0dXNfc3RhdHVzX3dpZHRoLCBzdGF0dXNfd2FudF93aWR0aDsKKworICAvLyBUYWJsZSBvZiBwYWNrYWdlcworICBzdHJ1Y3QgcGVycGFja2FnZXN0YXRlICpkYXRhdGFibGU7CisgIHN0cnVjdCBwZXJwYWNrYWdlc3RhdGUgKip0YWJsZTsKKworICAvLyBNaXNjLgorICBpbnQgcmVjdXJzaXZlLCBuYWxsb2NhdGVkLCB2ZXJib3NlOworICBlbnVtIHsgc29fdW5zb3J0ZWQsIHNvX3NlY3Rpb24sIHNvX3ByaW9yaXR5LCBzb19hbHBoYSB9IHNvcnRvcmRlcjsKKyAgZW51bSB7IHNzb191bnNvcnRlZCwgc3NvX2F2YWlsLCBzc29fc3RhdGUgfSBzdGF0c29ydG9yZGVyOworICBlbnVtIHsgdmRvX25vbmUsIHZkb19hdmFpbGFibGUsIHZkb19ib3RoIH0gdmVyc2lvbmRpc3BsYXlvcHQ7CisgIGludCBjYWxjc3NhZG9uZSwgY2FsY3Nzc2RvbmU7CisgIHN0cnVjdCBwZXJwYWNrYWdlc3RhdGUgKmhlYWRpbmdzOworCisgIC8vIFBhY2thZ2Ugc2VhcmNoaW5nIGZsYWdzCisgIGludCBzZWFyY2hkZXNjcjsKKyAgcmVnZXhfdCBzZWFyY2hmc207CisKKyAgLy8gSW5mb3JtYXRpb24gZGlzcGxheXMKKyAgc3RydWN0IGluZm90eXBlIHsKKyAgICBpbnQgKHBhY2thZ2VsaXN0OjoqcmVsZXZhbnQpKCk7IC8vIG51bGwgbWVhbnMgYWx3YXlzIHJlbGV2YW50CisgICAgdm9pZCAocGFja2FnZWxpc3Q6OipkaXNwbGF5KSgpOyAvLyBudWxsIG1lYW5zIGVuZCBvZiB0YWJsZQorICB9OworICBjb25zdCBpbmZvdHlwZSAqY3VycmVudGluZm87CisgIHN0YXRpYyBjb25zdCBpbmZvdHlwZSBpbmZvaW5mb3NbXTsKKyAgc3RhdGljIGNvbnN0IGluZm90eXBlICpjb25zdCBiYXNlaW5mbzsKKyAgaW50IGl0cl9yZWN1cnNpdmUoKTsKKyAgaW50IGl0cl9ub25yZWN1cnNpdmUoKTsKKyAgdm9pZCBzZXZlcmFsaW5mb2JsdXJiKCk7CisgIHZvaWQgaXRkX21haW53ZWxjb21lKCk7CisgIHZvaWQgaXRkX2V4cGxhaW5kaXNwbGF5KCk7CisgIHZvaWQgaXRkX3JlY3Vyd2VsY29tZSgpOworICB2b2lkIGl0ZF9yZWxhdGlvbnMoKTsKKyAgdm9pZCBpdGRfZGVzY3JpcHRpb24oKTsKKyAgdm9pZCBpdGRfc3RhdHVzY29udHJvbCgpOworICB2b2lkIGl0ZF9hdmFpbGFibGVjb250cm9sKCk7CisKKyAgLy8gRGVwZW5kZW5jeSBhbmQgc3VibGlzdCBwcm9jZXNzaW5nCisgIHN0cnVjdCBkb25lZW50IHsgZG9uZWVudCAqbmV4dDsgdm9pZCAqZGVwOyB9ICpkZXBzZG9uZSwgKnVuYXZkb25lOworICBib29sIGFscmVhZHlkb25lKGRvbmVlbnQgKiosIHZvaWQgKik7CisgIGludCByZXNvbHZlZGVwY29uKGRlcGVuZGVuY3kqKTsKKyAgaW50IGNoZWNrZGVwZW5kZXJzKHBrZ2luZm8qLCBpbnQgY2hhbmdlbWFkZSk7IC8vIHJldHVybnMgbmV3IGNoYW5nZW1hZGUKKyAgaW50IGRlc2VsZWN0X29uZV9vZihwa2dpbmZvICplciwgcGtnaW5mbyAqZWQsIGRlcGVuZGVuY3kgKmRlcCk7CisKKyAgLy8gRGVmaW5lIHRoZXNlIHZpcnR1YWxzCisgIGJvb2wgY2hlY2tzZWFyY2goY2hhciAqc3RyKTsKKyAgYm9vbCBtYXRjaHNlYXJjaChpbnQgaW5kZXgpOworICB2b2lkIHJlZHJhdzFpdGVtc2VsKGludCBpbmRleCwgaW50IHNlbGVjdGVkKTsKKyAgdm9pZCByZWRyYXdjb2xoZWFkcygpOworICB2b2lkIHJlZHJhd3RoaXNzdGF0ZSgpOworICB2b2lkIHJlZHJhd2luZm8oKTsKKyAgdm9pZCByZWRyYXd0aXRsZSgpOworICB2b2lkIHNldHdpZHRocygpOworICBjb25zdCBjaGFyICppdGVtbmFtZShpbnQgaW5kZXgpOworICBjb25zdCBzdHJ1Y3QgaGVscG1lbnVlbnRyeSAqaGVscG1lbnVsaXN0KCk7CisKKyAgLy8gTWlzY2VsbGFuZW91cyBpbnRlcm5hbCByb3V0aW5lcworCisgIHZvaWQgcmVkcmF3MXBhY2thZ2UoaW50IGluZGV4LCBpbnQgc2VsZWN0ZWQpOworICBpbnQgY29tcGFyZWVudHJpZXMoY29uc3Qgc3RydWN0IHBlcnBhY2thZ2VzdGF0ZSAqYSwgY29uc3Qgc3RydWN0IHBlcnBhY2thZ2VzdGF0ZSAqYik7CisgIGZyaWVuZCBpbnQgcXNvcnRfY29tcGFyZWVudHJpZXMoY29uc3Qgdm9pZCAqYSwgY29uc3Qgdm9pZCAqYik7CisgIHBrZ2luZm86OnBrZ3dhbnQgcmVhbGx5d2FudChwa2dpbmZvOjpwa2d3YW50LCBzdHJ1Y3QgcGVycGFja2FnZXN0YXRlKik7CisgIGludCBkZXNjcmliZW1hbnkoY2hhciBidWZbXSwgY29uc3QgY2hhciAqcHJpb3JpdHlzdHJpbmcsIGNvbnN0IGNoYXIgKnNlY3Rpb24sCisgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RydWN0IHBlcnBhY2thZ2VzdGF0ZSAqcHBzKTsKKyAgYm9vbCBkZXBwb3NzYXRpc2ZpZWQoZGVwcG9zc2kgKnBvc3NpLCBwZXJwYWNrYWdlc3RhdGUgKipmaXhieXVwZ3JhZGUpOworCisgIHZvaWQgc29ydG1ha2VoZWFkcygpOworICB2b2lkIHJlc29ydHJlZGlzcGxheSgpOworICB2b2lkIG1vdmVjdXJzb3JhZnRlcihpbnQgbmN1cnNvcik7CisgIHZvaWQgaW5pdGlhbHNldHVwKCk7CisgIHZvaWQgZmluYWxzZXR1cCgpOworICB2b2lkIGVuc3VyZXN0YXRzb3J0aW5mbygpOworCisgIC8vIFRvIGRvIHdpdGggYnVpbGRpbmcgdGhlIGxpc3QsIHdpdGggaGVhZGluZyBsaW5lcyBpbiBpdAorICB2b2lkIGRpc2NhcmRoZWFkaW5ncygpOworICB2b2lkIGFkZGhlYWRpbmcoZW51bSBzc2F2YWlsdmFsLCBlbnVtIHNzc3RhdGV2YWwsCisgICAgICAgICAgICAgICAgICBwa2dpbmZvOjpwa2dwcmlvcml0eSwgY29uc3QgY2hhciosIGNvbnN0IGNoYXIgKnNlY3Rpb24pOworICB2b2lkIHNvcnRpbnBsYWNlKCk7CisgIGJvb2wgYWZmZWN0ZWRtYXRjaGVzKHN0cnVjdCBwa2dpbmZvICpwa2csIHN0cnVjdCBwa2dpbmZvICpjb21wYXJld2l0aCk7CisgIHZvaWQgYWZmZWN0ZWRyYW5nZShpbnQgKnN0YXJ0cCwgaW50ICplbmRwKTsKKyAgdm9pZCBzZXR3YW50KHBrZ2luZm86OnBrZ3dhbnQgbncpOworICB2b2lkIHNldGhvbGQoaW50IGhvbGQpOworCisgcHVibGljOgorCisgIC8vIEtleWJpbmRpbmcgZnVuY3Rpb25zICovCisgIHZvaWQga2RfcXVpdF9ub29wKCk7CisgIHZvaWQga2RfcmV2ZXJ0X2Fib3J0KCk7CisgIHZvaWQga2RfcmV2ZXJ0c3VnZ2VzdCgpOworICB2b2lkIGtkX3JldmVydGRpcmVjdCgpOworICB2b2lkIGtkX3JldmVydGluc3RhbGxlZCgpOworICB2b2lkIGtkX21vcmVzcGVjaWZpYygpOworICB2b2lkIGtkX2xlc3NzcGVjaWZpYygpOworICB2b2lkIGtkX3N3YXBvcmRlcigpOworICB2b2lkIGtkX3N3YXBzdGF0b3JkZXIoKTsKKyAgdm9pZCBrZF9zZWxlY3QoKTsKKyAgdm9pZCBrZF9kZXNlbGVjdCgpOworICB2b2lkIGtkX3B1cmdlKCk7CisgIHZvaWQga2RfaG9sZCgpOworICB2b2lkIGtkX3VuaG9sZCgpOworICB2b2lkIGtkX2luZm8oKTsKKyAgdm9pZCBrZF90b2dnbGVpbmZvKCk7CisgIHZvaWQga2RfdmVyYm9zZSgpOworICB2b2lkIGtkX3ZlcnNpb25kaXNwbGF5KCk7CisKKyAgcGFja2FnZWxpc3Qoa2V5YmluZGluZ3MgKmtiKTsgLy8gbm9ucmVjdXJzaXZlCisgIHBhY2thZ2VsaXN0KGtleWJpbmRpbmdzICprYiwgcGtnaW5mbyAqKnBrZ2x0YWIpOyAvLyByZWN1cnNpdmUKKyAgdm9pZCBhZGQocGtnaW5mbyAqKmFycnkpIHsgd2hpbGUgKCphcnJ5KSBhZGQoKmFycnkrKyk7IH0KKyAgdm9pZCBhZGQocGtnaW5mbyopOworICB2b2lkIGFkZChwa2dpbmZvKiwgcGtnaW5mbzo6cGtnd2FudCk7CisgIHZvaWQgYWRkKHBrZ2luZm8qLCBjb25zdCBjaGFyICpleHRyYWluZm8sIHNob3dwcmlvcml0eSBkaXNwbGF5aW1wb3J0YW5jZSk7CisgIGJvb2wgYWRkKGRlcGVuZGVuY3kgKiwgc2hvd3ByaW9yaXR5IGRpc3BsYXlpbXBvcnRhbmNlKTsKKyAgdm9pZCBhZGR1bmF2YWlsYWJsZShkZXBwb3NzaSopOworICBib29sIHVzZWF2YWlsYWJsZShwa2dpbmZvICopOworICBwa2diaW4gKmZpbmRfcGtnYmluKHBrZ2luZm8gKik7CisKKyAgaW50IHJlc29sdmVzdWdnZXN0KCk7CisgIGludCBkZWxldGVsZXNzaW1wX2FueWxlZnQoc2hvd3ByaW9yaXR5IHRoYW4pOworICBwa2dpbmZvICoqZGlzcGxheSgpOworICB+cGFja2FnZWxpc3QoKTsKK307CisKK3ZvaWQgcmVwZWF0ZWRseWRpc3BsYXkocGFja2FnZWxpc3QgKnN1Yiwgc2hvd3ByaW9yaXR5LCBwYWNrYWdlbGlzdCAqdW5yZWRpc3BsYXkgPTApOworaW50IHdvdWxkX2xpa2VfdG9faW5zdGFsbChwa2dpbmZvOjpwa2d3YW50LCBwa2dpbmZvICpwa2cpOworCitleHRlcm4gY29uc3QgY2hhciAqY29uc3Qgd2FudHN0cmluZ3NbXTsKK2V4dGVybiBjb25zdCBjaGFyICpjb25zdCBlZmxhZ3N0cmluZ3NbXTsKK2V4dGVybiBjb25zdCBjaGFyICpjb25zdCBzdGF0dXNzdHJpbmdzW107CitleHRlcm4gY29uc3QgY2hhciAqY29uc3QgcHJpb3JpdHlzdHJpbmdzW107CitleHRlcm4gY29uc3QgY2hhciAqY29uc3QgcHJpb3JpdHlhYmJyZXZzW107CitleHRlcm4gY29uc3QgY2hhciAqY29uc3QgcmVsYXRlc3RyaW5nc1tdOworZXh0ZXJuIGNvbnN0IGNoYXIgKmNvbnN0IHNzYXN0cmluZ3NbXSwgKmNvbnN0IHNzYWFiYnJldnNbXTsKK2V4dGVybiBjb25zdCBjaGFyICpjb25zdCBzc3NzdHJpbmdzW10sICpjb25zdCBzc3NhYmJyZXZzW107CitleHRlcm4gY29uc3QgY2hhciBzdGF0dXNjaGFyc1tdOworZXh0ZXJuIGNvbnN0IGNoYXIgZWZsYWdjaGFyc1tdOworZXh0ZXJuIGNvbnN0IGNoYXIgd2FudGNoYXJzW107CisKK2V4dGVybiBtb2RzdGF0ZGJfcncgcmVhZHdyaXRlOworCisjZW5kaWYgLyogUEtHTElTVF9IICovCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcGtnc3VibGlzdC5jYyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wa2dzdWJsaXN0LmNjCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmU0MjAzOTIKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcGtnc3VibGlzdC5jYwpAQCAtMCwwICsxLDIwOCBAQAorLyoKKyAqIGRzZWxlY3QgLSBEZWJpYW4gcGFja2FnZSBtYWludGVuYW5jZSB1c2VyIGludGVyZmFjZQorICogcGtnc3VibGlzdC5jYyAtIHN0YXR1cyBtb2RpZmljYXRpb24gYW5kIHJlY3Vyc2l2ZSBwYWNrYWdlIGxpc3QgaGFuZGxpbmcKKyAqCisgKiBDb3B5cmlnaHQgwqkgMTk5NSBJYW4gSmFja3NvbiA8aWFuQGNoaWFyay5ncmVlbmVuZC5vcmcudWs+CisgKgorICogVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisgKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAqIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorICovCisKKyNpbmNsdWRlIDxjb25maWcuaD4KKyNpbmNsdWRlIDxjb21wYXQuaD4KKworI2luY2x1ZGUgPGFzc2VydC5oPgorI2luY2x1ZGUgPHN0cmluZy5oPgorI2luY2x1ZGUgPHN0ZGlvLmg+CisKKyNpbmNsdWRlIDxkcGtnL2kxOG4uaD4KKyNpbmNsdWRlIDxkcGtnL2Rwa2cuaD4KKyNpbmNsdWRlIDxkcGtnL2Rwa2ctZGIuaD4KKworI2luY2x1ZGUgImRzZWxlY3QuaCIKKyNpbmNsdWRlICJiaW5kaW5ncy5oIgorCit2b2lkIHBhY2thZ2VsaXN0OjphZGQocGtnaW5mbyAqcGtnKSB7CisgIGRlYnVnKGRiZ19nZW5lcmFsLCAicGFja2FnZWxpc3RbJXBdOjphZGQocGtnaW5mbyAlcykiLCB0aGlzLCBwa2ctPm5hbWUpOworICBpZiAoIXJlY3Vyc2l2ZSB8fCAgLy8gbmV2ZXIgYWRkIHRoaW5ncyB0byB0b3AgbGV2ZWwKKyAgICAgICFwa2ctPmNsaWVudGRhdGEgfHwgIC8vIGRvbid0IGFkZCBwdXJlIHZpcnR1YWwgcGFja2FnZXMKKyAgICAgIHBrZy0+Y2xpZW50ZGF0YS0+dXByZWMpICAvLyBkb24ndCBhZGQgb25lcyBhbHJlYWR5IGluIHRoZSByZWN1cnNpdmUgbGlzdAorICAgIHJldHVybjsKKyAgZGVidWcoZGJnX2dlbmVyYWwsICJwYWNrYWdlbGlzdFslcF06OmFkZChwa2dpbmZvICVzKSBhZGRpbmciLAorICAgICAgICB0aGlzLCBwa2ctPm5hbWUpOworICBwZXJwYWNrYWdlc3RhdGUgKnN0YXRlPSAmZGF0YXRhYmxlW25pdGVtc107CisgIHN0YXRlLT5wa2c9IHBrZzsKKyAgc3RhdGUtPmRpcmVjdD0gc3RhdGUtPm9yaWdpbmFsPSBwa2ctPmNsaWVudGRhdGEtPnNlbGVjdGVkOworICBzdGF0ZS0+c3VnZ2VzdGVkPSBzdGF0ZS0+c2VsZWN0ZWQ9IHBrZy0+Y2xpZW50ZGF0YS0+c2VsZWN0ZWQ7CisgIHN0YXRlLT5zcHJpb3JpdHk9IHNwX2luaGVyaXQ7IHN0YXRlLT5kcHJpb3JpdHk9IGRwX25vbmU7CisgIHN0YXRlLT51cHJlYz0gcGtnLT5jbGllbnRkYXRhOworICBzdGF0ZS0+cmVsYXRpb25zLmluaXQoKTsKKyAgcGtnLT5jbGllbnRkYXRhPSBzdGF0ZTsKKyAgdGFibGVbbml0ZW1zXT0gc3RhdGU7CisgIG5pdGVtcysrOworfQorCit2b2lkIHBhY2thZ2VsaXN0OjphZGQocGtnaW5mbyAqcGtnLCBwa2dpbmZvOjpwa2d3YW50IG53KSB7CisgIGRlYnVnKGRiZ19nZW5lcmFsLCAicGFja2FnZWxpc3RbJXBdOjphZGQocGtnaW5mbyAlcywgJXMpIiwKKyAgICAgICAgdGhpcywgcGtnLT5uYW1lLCB3YW50c3RyaW5nc1tud10pOworICBhZGQocGtnKTsgIGlmICghcGtnLT5jbGllbnRkYXRhKSByZXR1cm47CisgIHBrZy0+Y2xpZW50ZGF0YS0+ZGlyZWN0PSBudzsKKyAgc2VscHJpb3JpdHkgbnA7CisgIG5wPSB3b3VsZF9saWtlX3RvX2luc3RhbGwobncscGtnKSA/IHNwX3NlbGVjdGluZyA6IHNwX2Rlc2VsZWN0aW5nOworICBpZiAocGtnLT5jbGllbnRkYXRhLT5zcHJpb3JpdHkgPiBucCkgcmV0dXJuOworICBkZWJ1ZyhkYmdfZ2VuZXJhbCwgInBhY2thZ2VsaXN0WyVwXTo6YWRkKHBrZ2luZm8gJXMsICVzKSBzZXR0aW5nIiwKKyAgICAgICAgdGhpcywgcGtnLT5uYW1lLCB3YW50c3RyaW5nc1tud10pOworICBwa2ctPmNsaWVudGRhdGEtPnN1Z2dlc3RlZD0gcGtnLT5jbGllbnRkYXRhLT5zZWxlY3RlZD0gbnc7CisgIHBrZy0+Y2xpZW50ZGF0YS0+c3ByaW9yaXR5PSBucDsKK30KKwordm9pZCBwYWNrYWdlbGlzdDo6YWRkKHBrZ2luZm8gKnBrZywgY29uc3QgY2hhciAqZXh0cmFpbmZvLCBzaG93cHJpb3JpdHkgc2hvd2ltcCkgeworICBkZWJ1ZyhkYmdfZ2VuZXJhbCwgInBhY2thZ2VsaXN0WyVwXTo6YWRkKHBrZ2luZm8gJXMsIC4uLiwgc2hvd3ByaW9yaXR5ICVkKSIsCisgICAgICAgIHRoaXMsIHBrZy0+bmFtZSwgc2hvd2ltcCk7CisgIGFkZChwa2cpOyAgaWYgKCFwa2ctPmNsaWVudGRhdGEpIHJldHVybjsKKyAgaWYgKHBrZy0+Y2xpZW50ZGF0YS0+ZHByaW9yaXR5IDwgc2hvd2ltcCkgcGtnLT5jbGllbnRkYXRhLT5kcHJpb3JpdHk9IHNob3dpbXA7CisgIHBrZy0+Y2xpZW50ZGF0YS0+cmVsYXRpb25zKGV4dHJhaW5mbyk7CisgIHBrZy0+Y2xpZW50ZGF0YS0+cmVsYXRpb25zLnRlcm1pbmF0ZSgpOworfQorCitib29sCitwYWNrYWdlbGlzdDo6YWxyZWFkeWRvbmUoZG9uZWVudCAqKmRvbmUsIHZvaWQgKmNoZWNrKQoreworICBkb25lZW50ICpzZWFyY2ggPSAqZG9uZTsKKworICB3aGlsZSAoc2VhcmNoICYmIHNlYXJjaC0+ZGVwICE9IGNoZWNrKQorICAgIHNlYXJjaCA9IHNlYXJjaC0+bmV4dDsKKyAgaWYgKHNlYXJjaCkKKyAgICByZXR1cm4gdHJ1ZTsKKyAgZGVidWcoZGJnX2dlbmVyYWwsICJwYWNrYWdlbGlzdFslcF06OmFscmVhZHlkb25lKCVwLCAlcCkgbmV3IiwKKyAgICAgICAgdGhpcywgZG9uZSwgY2hlY2spOworICBzZWFyY2g9IG5ldyBkb25lZW50OworICBzZWFyY2gtPm5leHQ9ICpkb25lOworICBzZWFyY2gtPmRlcD0gY2hlY2s7CisgICpkb25lPSBzZWFyY2g7CisgIHJldHVybiBmYWxzZTsKK30KKwordm9pZCBwYWNrYWdlbGlzdDo6YWRkdW5hdmFpbGFibGUoZGVwcG9zc2kgKnBvc3NpKSB7CisgIGRlYnVnKGRiZ19nZW5lcmFsLCAicGFja2FnZWxpc3RbJXBdOjphZGR1bmF2YWlsKCVwKSIsIHRoaXMsIHBvc3NpKTsKKworICBpZiAoIXJlY3Vyc2l2ZSkgcmV0dXJuOworICBpZiAoYWxyZWFkeWRvbmUoJnVuYXZkb25lLHBvc3NpKSkgcmV0dXJuOworCisgIGFzc2VydChwb3NzaS0+dXAtPnVwLT5jbGllbnRkYXRhKTsKKyAgYXNzZXJ0KHBvc3NpLT51cC0+dXAtPmNsaWVudGRhdGEtPnVwcmVjKTsKKworICB2YXJidWYmIHZiPSBwb3NzaS0+dXAtPnVwLT5jbGllbnRkYXRhLT5yZWxhdGlvbnM7CisgIHZiKHBvc3NpLT5lZC0+bmFtZSk7CisgIHZiKF8oIiBkb2VzIG5vdCBhcHBlYXIgdG8gYmUgYXZhaWxhYmxlXG4iKSk7Cit9CisKK2Jvb2wKK3BhY2thZ2VsaXN0OjphZGQoZGVwZW5kZW5jeSAqZGVwZW5kcywgc2hvd3ByaW9yaXR5IGRpc3BsYXlpbXBvcnRhbmNlKQoreworICBkZWJ1ZyhkYmdfZ2VuZXJhbCwgInBhY2thZ2VsaXN0WyVwXTo6YWRkKGRlcGVuZGVuY3lbJXBdKSIsIHRoaXMsIGRlcGVuZHMpOworCisgIGlmIChhbHJlYWR5ZG9uZSgmZGVwc2RvbmUsIGRlcGVuZHMpKQorICAgIHJldHVybiBmYWxzZTsKKworICBjb25zdCBjaGFyICpjb21tYT0gIiI7CisgIHZhcmJ1ZiBpbmZvOworICBpbmZvKGRlcGVuZHMtPnVwLT5uYW1lKTsKKyAgaW5mbygnICcpOworICBpbmZvKGdldHRleHQocmVsYXRlc3RyaW5nc1tkZXBlbmRzLT50eXBlXSkpOworICBpbmZvKCcgJyk7CisgIGRlcHBvc3NpICpwb3NzaTsKKyAgZm9yIChwb3NzaT1kZXBlbmRzLT5saXN0OworICAgICAgIHBvc3NpOworICAgICAgIHBvc3NpPXBvc3NpLT5uZXh0LCBjb21tYT0ocG9zc2kgJiYgcG9zc2ktPm5leHQgPyAiLCAiIDogXygiIG9yICIpKSkgeworICAgIGluZm8oY29tbWEpOworICAgIGluZm8ocG9zc2ktPmVkLT5uYW1lKTsKKyAgICBpZiAocG9zc2ktPnZlcnJlbCAhPSBkdnJfbm9uZSkgeworICAgICAgc3dpdGNoIChwb3NzaS0+dmVycmVsKSB7CisgICAgICBjYXNlIGR2cl9lYXJsaWVyZXF1YWw6ICBpbmZvKCIgKDw9ICIpOyBicmVhazsKKyAgICAgIGNhc2UgZHZyX2xhdGVyZXF1YWw6ICAgIGluZm8oIiAoPj0gIik7IGJyZWFrOworICAgICAgY2FzZSBkdnJfZWFybGllcnN0cmljdDogaW5mbygiICg8PCAiKTsgYnJlYWs7CisgICAgICBjYXNlIGR2cl9sYXRlcnN0cmljdDogICBpbmZvKCIgKD4+ICIpOyBicmVhazsKKyAgICAgIGNhc2UgZHZyX2V4YWN0OiAgICAgICAgIGluZm8oIiAoPSAiKTsgYnJlYWs7CisgICAgICBkZWZhdWx0OiBpbnRlcm5lcnIoInVua25vd24gdmVycmVsIik7CisgICAgICB9CisgICAgICBpbmZvKHZlcnNpb25kZXNjcmliZSgmcG9zc2ktPnZlcnNpb24sIHZkZXdfbm9uYW1iaWcpKTsKKyAgICAgIGluZm8oIikiKTsKKyAgICB9CisgIH0KKyAgaW5mbygnXG4nKTsKKyAgYWRkKGRlcGVuZHMtPnVwLGluZm8uc3RyaW5nKCksZGlzcGxheWltcG9ydGFuY2UpOworICBmb3IgKHBvc3NpPWRlcGVuZHMtPmxpc3Q7IHBvc3NpOyBwb3NzaT1wb3NzaS0+bmV4dCkgeworICAgIGFkZChwb3NzaS0+ZWQsaW5mby5zdHJpbmcoKSxkaXNwbGF5aW1wb3J0YW5jZSk7CisgICAgaWYgKHBvc3NpLT52ZXJyZWwgPT0gZHZyX25vbmUgJiYgZGVwZW5kcy0+dHlwZSAhPSBkZXBfcHJvdmlkZXMpIHsKKyAgICAgIC8vIHByb3ZpZGVycyBhcmVuJ3QgcmVsZXZhbnQgaWYgYSB2ZXJzaW9uIHdhcyBzcGVjaWZpZWQsIG9yCisgICAgICAvLyBpZiB3ZSdyZSBsb29raW5nIGF0IGEgcHJvdmlkZXIgcmVsYXRpb25zaGlwIGFscmVhZHkKKyAgICAgIGRlcHBvc3NpICpwcm92aWRlcjsKKyAgICAgIGZvciAocHJvdmlkZXIgPSBwb3NzaS0+ZWQtPmF2YWlsYWJsZS5kZXBlbmRlZDsKKyAgICAgICAgICAgcHJvdmlkZXI7CisgICAgICAgICAgIHByb3ZpZGVyID0gcHJvdmlkZXItPnJldl9uZXh0KSB7CisgICAgICAgIGlmIChwcm92aWRlci0+dXAtPnR5cGUgIT0gZGVwX3Byb3ZpZGVzKSBjb250aW51ZTsKKyAgICAgICAgYWRkKHByb3ZpZGVyLT51cC0+dXAsaW5mby5zdHJpbmcoKSxkaXNwbGF5aW1wb3J0YW5jZSk7CisgICAgICAgIGFkZChwcm92aWRlci0+dXAsZGlzcGxheWltcG9ydGFuY2UpOworICAgICAgfQorICAgIH0KKyAgfQorICByZXR1cm4gdHJ1ZTsKK30KKwordm9pZCByZXBlYXRlZGx5ZGlzcGxheShwYWNrYWdlbGlzdCAqc3ViLAorICAgICAgICAgICAgICAgICAgICAgICBzaG93cHJpb3JpdHkgaW5pdGlhbCwKKyAgICAgICAgICAgICAgICAgICAgICAgcGFja2FnZWxpc3QgKnVucmVkaXNwbGF5KSB7CisgIHBrZ2luZm8gKipuZXdsOworICBrZXliaW5kaW5ncyAqa2I7CisKKyAgZGVidWcoZGJnX2dlbmVyYWwsICJyZXBlYXRlZGx5ZGlzcGxheShwYWNrYWdlbGlzdFslcF0pIiwgc3ViKTsKKyAgaWYgKHN1Yi0+cmVzb2x2ZXN1Z2dlc3QoKSAhPSAwICYmIHN1Yi0+ZGVsZXRlbGVzc2ltcF9hbnlsZWZ0KGluaXRpYWwpKSB7CisgICAgZGVidWcoZGJnX2dlbmVyYWwsICJyZXBlYXRlZGx5ZGlzcGxheShwYWNrYWdlbGlzdFslcF0pIG9uY2UiLCBzdWIpOworICAgIGlmICh1bnJlZGlzcGxheSkgdW5yZWRpc3BsYXktPmVuZGRpc3BsYXkoKTsKKyAgICBmb3IgKDs7KSB7CisgICAgICBtYW51YWxfaW5zdGFsbCA9IDA7IC8qIFJlbW92ZSBmbGFnIG5vdyB0aGF0IHJlc29sdmVzdWdnZXN0IGhhcyBzZWVuIGl0LiAqLworICAgICAgbmV3bD0gc3ViLT5kaXNwbGF5KCk7CisgICAgICBpZiAoIW5ld2wpIGJyZWFrOworICAgICAgZGVidWcoZGJnX2dlbmVyYWwsICJyZXBlYXRlZGx5ZGlzcGxheShwYWNrYWdlbGlzdFslcF0pIG5ld2wiLCBzdWIpOworICAgICAga2I9IHN1Yi0+YmluZGluZ3M7IGRlbGV0ZSBzdWI7CisgICAgICBzdWI9IG5ldyBwYWNrYWdlbGlzdChrYixuZXdsKTsKKyAgICAgIGlmIChzdWItPnJlc29sdmVzdWdnZXN0KCkgPD0gMSkgYnJlYWs7CisgICAgICBpZiAoIXN1Yi0+ZGVsZXRlbGVzc2ltcF9hbnlsZWZ0KGRwX211c3QpKSBicmVhazsKKyAgICAgIGRlYnVnKGRiZ19nZW5lcmFsLCAicmVwZWF0ZWRseWRpc3BsYXkocGFja2FnZWxpc3RbJXBdKSBhZ2FpbiIsIHN1Yik7CisgICAgfQorICAgIGlmICh1bnJlZGlzcGxheSkgdW5yZWRpc3BsYXktPnN0YXJ0ZGlzcGxheSgpOworICB9CisgIGRlYnVnKGRiZ19nZW5lcmFsLCAicmVwZWF0ZWRseWRpc3BsYXkocGFja2FnZWxpc3RbJXBdKSBkb25lIiwgc3ViKTsKKyAgZGVsZXRlIHN1YjsKK30KKworaW50IHBhY2thZ2VsaXN0OjpkZWxldGVsZXNzaW1wX2FueWxlZnQoc2hvd3ByaW9yaXR5IHRoYW4pIHsKKyAgZGVidWcoZGJnX2dlbmVyYWwsICJwYWNrYWdlbGlzdFslcF06OmRsaV9hbCglZCk6IG5pdGVtcz0lZCIsCisgICAgICAgIHRoaXMsIHRoYW4sIG5pdGVtcyk7CisgIGludCBpbnNhdCwgcnVudGhyOworICBmb3IgKHJ1bnRocj0wLCBpbnNhdD0wOworICAgICAgIHJ1bnRociA8IG5pdGVtczsKKyAgICAgICBydW50aHIrKykgeworICAgIGlmICh0YWJsZVtydW50aHJdLT5kcHJpb3JpdHkgPCB0aGFuKSB7CisgICAgICB0YWJsZVtydW50aHJdLT5mcmVlKHJlY3Vyc2l2ZSk7CisgICAgfSBlbHNlIHsKKyAgICAgIGlmIChpbnNhdCAhPSBydW50aHIpIHRhYmxlW2luc2F0XT0gdGFibGVbcnVudGhyXTsKKyAgICAgIGluc2F0Kys7CisgICAgfQorICB9CisgIG5pdGVtcz0gaW5zYXQ7CisgIGRlYnVnKGRiZ19nZW5lcmFsLCAicGFja2FnZWxpc3RbJXBdOjpkbGlfYWwoJWQpIGRvbmU7IG5pdGVtcz0lZCIsCisgICAgICAgIHRoaXMsIHRoYW4sIG5pdGVtcyk7CisgIHJldHVybiBuaXRlbXM7Cit9CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcGtndG9wLmNjIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BrZ3RvcC5jYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wY2Q5NDcwCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BrZ3RvcC5jYwpAQCAtMCwwICsxLDI5NCBAQAorLyoKKyAqIGRzZWxlY3QgLSBEZWJpYW4gcGFja2FnZSBtYWludGVuYW5jZSB1c2VyIGludGVyZmFjZQorICogcGtndG9wLmNjIC0gaGFuZGxlcyAocmUpZHJhdyBvZiBwYWNrYWdlIGxpc3Qgd2luZG93cyBjb2xoZWFkcywgbGlzdCwgdGhpc3N0YXRlCisgKgorICogQ29weXJpZ2h0IMKpIDE5OTQsMTk5NSBJYW4gSmFja3NvbiA8aWFuQGNoaWFyay5ncmVlbmVuZC5vcmcudWs+CisgKgorICogVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisgKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAqIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorICovCisKKyNpbmNsdWRlIDxjb25maWcuaD4KKyNpbmNsdWRlIDxjb21wYXQuaD4KKworI2luY2x1ZGUgPGFzc2VydC5oPgorI2luY2x1ZGUgPGN0eXBlLmg+CisjaW5jbHVkZSA8c3RyaW5nLmg+CisjaW5jbHVkZSA8c3RkaW8uaD4KKworI2luY2x1ZGUgPGRwa2cvaTE4bi5oPgorI2luY2x1ZGUgPGRwa2cvZHBrZy5oPgorI2luY2x1ZGUgPGRwa2cvZHBrZy1kYi5oPgorCisjaW5jbHVkZSAiZHNlbGVjdC5oIgorI2luY2x1ZGUgInBrZ2xpc3QuaCIKKworc3RhdGljIGNvbnN0IGNoYXIgKgorcGtncHJpb3JpdHlzdHJpbmcoY29uc3Qgc3RydWN0IHBrZ2luZm8gKnBrZykKK3sKKyAgaWYgKHBrZy0+cHJpb3JpdHkgPT0gcGtnaW5mbzo6cHJpX3Vuc2V0KSB7CisgICAgcmV0dXJuIDA7CisgIH0gZWxzZSBpZiAocGtnLT5wcmlvcml0eSA9PSBwa2dpbmZvOjpwcmlfb3RoZXIpIHsKKyAgICByZXR1cm4gcGtnLT5vdGhlcnByaW9yaXR5OworICB9IGVsc2UgeworICAgIGFzc2VydChwa2ctPnByaW9yaXR5IDw9IHBrZ2luZm86OnByaV91bmtub3duKTsKKyAgICByZXR1cm4gZ2V0dGV4dChwcmlvcml0eXN0cmluZ3NbcGtnLT5wcmlvcml0eV0pOworICB9Cit9CisKK2ludCBwYWNrYWdlbGlzdDo6ZGVzY3JpYmVtYW55KGNoYXIgYnVmW10sIGNvbnN0IGNoYXIgKnByaW9yaXR5c3RyaW5nLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqc2VjdGlvbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0cnVjdCBwZXJwYWNrYWdlc3RhdGUgKnBwcykgeworICBjb25zdCBjaGFyICpzc29zdHJpbmcsICpzc29hYmJyZXY7CisgIGludCBzdGF0aW5kZW50OworCisgIHN0YXRpbmRlbnQ9IDA7CisgIHNzb3N0cmluZz0gMDsKKyAgc3NvYWJicmV2PSBfKCJBbGwiKTsKKyAgc3dpdGNoIChzdGF0c29ydG9yZGVyKSB7CisgIGNhc2Ugc3NvX2F2YWlsOgorICAgIGlmIChwcHMtPnNzYXZhaWwgPT0gLTEpIGJyZWFrOworICAgIHNzb3N0cmluZz0gc3Nhc3RyaW5nc1twcHMtPnNzYXZhaWxdOworICAgIHNzb2FiYnJldj0gc3NhYWJicmV2c1twcHMtPnNzYXZhaWxdOworICAgIHN0YXRpbmRlbnQrKzsKKyAgICBicmVhazsKKyAgY2FzZSBzc29fc3RhdGU6CisgICAgaWYgKHBwcy0+c3NzdGF0ZSA9PSAtMSkgYnJlYWs7CisgICAgc3Nvc3RyaW5nPSBzc3NzdHJpbmdzW3Bwcy0+c3NzdGF0ZV07CisgICAgc3NvYWJicmV2PSBzc3NhYmJyZXZzW3Bwcy0+c3NzdGF0ZV07CisgICAgc3RhdGluZGVudCsrOworICAgIGJyZWFrOworICBjYXNlIHNzb191bnNvcnRlZDoKKyAgICBicmVhazsKKyAgZGVmYXVsdDoKKyAgICBpbnRlcm5lcnIoInVua25vd24gc3RhdHNvcnRyZGVyIGluIGRlc2NyaWJlbWFueSBhbGwiKTsKKyAgfQorCisgIGlmICghcHJpb3JpdHlzdHJpbmcpIHsKKyAgICBpZiAoIXNlY3Rpb24pIHsKKyAgICAgIHN0cmNweShidWYsIHNzb3N0cmluZyA/IGdldHRleHQoc3Nvc3RyaW5nKSA6IF8oIkFsbCBwYWNrYWdlcyIpKTsKKyAgICAgIHJldHVybiBzdGF0aW5kZW50OworICAgIH0gZWxzZSB7CisgICAgICBpZiAoISpzZWN0aW9uKSB7CisgICAgICAgIHNwcmludGYoYnVmLF8oIiVzIHBhY2thZ2VzIHdpdGhvdXQgYSBzZWN0aW9uIiksZ2V0dGV4dChzc29hYmJyZXYpKTsKKyAgICAgIH0gZWxzZSB7CisgICAgICAgIHNwcmludGYoYnVmLF8oIiVzIHBhY2thZ2VzIGluIHNlY3Rpb24gJXMiKSxnZXR0ZXh0KHNzb2FiYnJldiksc2VjdGlvbik7CisgICAgICB9CisgICAgICByZXR1cm4gc3RhdGluZGVudCsxOworICAgIH0KKyAgfSBlbHNlIHsKKyAgICBpZiAoIXNlY3Rpb24pIHsKKyAgICAgIHNwcmludGYoYnVmLF8oIiVzICVzIHBhY2thZ2VzIiksZ2V0dGV4dChzc29hYmJyZXYpLHByaW9yaXR5c3RyaW5nKTsKKyAgICAgIHJldHVybiBzdGF0aW5kZW50KzE7CisgICAgfSBlbHNlIHsKKyAgICAgIGlmICghKnNlY3Rpb24pIHsKKyAgICAgICAgc3ByaW50ZihidWYsXygiJXMgJXMgcGFja2FnZXMgd2l0aG91dCBhIHNlY3Rpb24iKSxnZXR0ZXh0KHNzb2FiYnJldikscHJpb3JpdHlzdHJpbmcpOworICAgICAgfSBlbHNlIHsKKyAgICAgICAgc3ByaW50ZihidWYsXygiJXMgJXMgcGFja2FnZXMgaW4gc2VjdGlvbiAlcyIpLGdldHRleHQoc3NvYWJicmV2KSxwcmlvcml0eXN0cmluZyxzZWN0aW9uKTsKKyAgICAgIH0KKyAgICAgIHJldHVybiBzdGF0aW5kZW50KzI7CisgICAgfQorICB9Cit9CisKK3ZvaWQgcGFja2FnZWxpc3Q6OnJlZHJhd3RoaXNzdGF0ZSgpIHsKKyAgaWYgKCF0aGlzc3RhdGVfaGVpZ2h0KSByZXR1cm47CisgIG15d2VyYXNlKHRoaXNzdGF0ZXBhZCk7CisKKyAgY29uc3QgY2hhciAqc2VjdGlvbj0gdGFibGVbY3Vyc29ybGluZV0tPnBrZy0+c2VjdGlvbjsKKyAgY29uc3QgY2hhciAqcHJpb3JpdHk9IHBrZ3ByaW9yaXR5c3RyaW5nKHRhYmxlW2N1cnNvcmxpbmVdLT5wa2cpOworICBjaGFyICpidWY9IG5ldyBjaGFyWzUwMCsKKyAgICAgICAgICAgICAgICAgICAgICBtYXgoKHRhYmxlW2N1cnNvcmxpbmVdLT5wa2ctPm5hbWUgPworICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RybGVuKHRhYmxlW2N1cnNvcmxpbmVdLT5wa2ctPm5hbWUpIDogMCksCisgICAgICAgICAgICAgICAgICAgICAgICAgIChzZWN0aW9uID8gc3RybGVuKHNlY3Rpb24pIDogMCkgKworICAgICAgICAgICAgICAgICAgICAgICAgICAocHJpb3JpdHkgPyBzdHJsZW4ocHJpb3JpdHkpIDogMCkpXTsKKworICBpZiAodGFibGVbY3Vyc29ybGluZV0tPnBrZy0+bmFtZSkgeworICAgIHNwcmludGYoYnVmLAorICAgICAgICAgICAgXygiJS0qcyAlcyVzJXM7ICAlcyAod2FzOiAlcykuICAlcyIpLAorICAgICAgICAgICAgcGFja2FnZV93aWR0aCwKKyAgICAgICAgICAgIHRhYmxlW2N1cnNvcmxpbmVdLT5wa2ctPm5hbWUsCisgICAgICAgICAgICBnZXR0ZXh0KHN0YXR1c3N0cmluZ3NbdGFibGVbY3Vyc29ybGluZV0tPnBrZy0+c3RhdHVzXSksCisgICAgICAgICAgICAoKGVmbGFnc3RyaW5nc1t0YWJsZVtjdXJzb3JsaW5lXS0+cGtnLT5lZmxhZ11bMF09PScgJykgJiYKKyAgICAgICAgICAgICAgKGVmbGFnc3RyaW5nc1t0YWJsZVtjdXJzb3JsaW5lXS0+cGtnLT5lZmxhZ11bMV09PSdcMCcpKSAgPyAiIiA6ICIgLSAiLAorICAgICAgICAgICAgZ2V0dGV4dChlZmxhZ3N0cmluZ3NbdGFibGVbY3Vyc29ybGluZV0tPnBrZy0+ZWZsYWddKSwKKyAgICAgICAgICAgIGdldHRleHQod2FudHN0cmluZ3NbdGFibGVbY3Vyc29ybGluZV0tPnNlbGVjdGVkXSksCisgICAgICAgICAgICBnZXR0ZXh0KHdhbnRzdHJpbmdzW3RhYmxlW2N1cnNvcmxpbmVdLT5vcmlnaW5hbF0pLAorICAgICAgICAgICAgcHJpb3JpdHkpOworICB9IGVsc2UgeworICAgIGRlc2NyaWJlbWFueShidWYscHJpb3JpdHksc2VjdGlvbix0YWJsZVtjdXJzb3JsaW5lXS0+cGtnLT5jbGllbnRkYXRhKTsKKyAgfQorICBtdndhZGRuc3RyKHRoaXNzdGF0ZXBhZCwwLDAsIGJ1ZiwgdG90YWxfd2lkdGgpOworICBwbm91dHJlZnJlc2godGhpc3N0YXRlcGFkLCAwLGxlZnRvZnNjcmVlbiwgdGhpc3N0YXRlX3JvdywwLAorICAgICAgICAgICAgICAgdGhpc3N0YXRlX3JvdywgbWluKHRvdGFsX3dpZHRoIC0gMSwgeG1heCAtIDEpKTsKKworICBkZWxldGVbXSBidWY7Cit9CisKK3ZvaWQgcGFja2FnZWxpc3Q6OnJlZHJhdzFpdGVtc2VsKGludCBpbmRleCwgaW50IHNlbGVjdGVkKSB7CisgIGludCBpLCBpbmRlbnQsIGo7CisgIGNvbnN0IGNoYXIgKnA7CisgIGNvbnN0IHN0cnVjdCBwa2dpbmZvICpwa2c9IHRhYmxlW2luZGV4XS0+cGtnOworICBjb25zdCBzdHJ1Y3QgcGtnYmluICppbmZvID0gJnBrZy0+YXZhaWxhYmxlOworICBpbnQgc2NyZWVubGluZSA9IGluZGV4IC0gdG9wb2ZzY3JlZW47CisKKyAgd2F0dHJzZXQobGlzdHBhZCwgc2VsZWN0ZWQgPyBsaXN0c2VsX2F0dHIgOiBsaXN0X2F0dHIpOworCisgIGlmIChwa2ctPm5hbWUpIHsKKyAgICBpZiAodmVyYm9zZSkgeworICAgICAgbXZ3cHJpbnR3KGxpc3RwYWQsIHNjcmVlbmxpbmUsIDAsICIlLSouKnMgIiwKKyAgICAgICAgICAgICAgICBzdGF0dXNfaG9sZF93aWR0aCwgc3RhdHVzX2hvbGRfd2lkdGgsCisgICAgICAgICAgICAgICAgZ2V0dGV4dChlZmxhZ3N0cmluZ3NbcGtnLT5lZmxhZ10pKTsKKyAgICAgIHdwcmludHcobGlzdHBhZCwgIiUtKi4qcyAiLAorICAgICAgICAgICAgICBzdGF0dXNfc3RhdHVzX3dpZHRoLCBzdGF0dXNfc3RhdHVzX3dpZHRoLAorICAgICAgICAgICAgICBnZXR0ZXh0KHN0YXR1c3N0cmluZ3NbcGtnLT5zdGF0dXNdKSk7CisgICAgICB3cHJpbnR3KGxpc3RwYWQsICIlLSouKnMgIiwKKyAgICAgICAgICAgICAgc3RhdHVzX3dhbnRfd2lkdGgsIHN0YXR1c193YW50X3dpZHRoLAorICAgICAgICAgICAgICAvKiBGSVhNRToga2VlcCB0aGlzPyAqLworICAgICAgICAgICAgICAvKnRhYmxlW2luZGV4XS0+b3JpZ2luYWwgPT0gdGFibGVbaW5kZXhdLT5zZWxlY3RlZCA/ICIoc2FtZSkiCisgICAgICAgICAgICAgIDogKi9nZXR0ZXh0KHdhbnRzdHJpbmdzW3RhYmxlW2luZGV4XS0+b3JpZ2luYWxdKSk7CisgICAgICB3YXR0cnNldChsaXN0cGFkLCBzZWxlY3RlZCA/IHNlbHN0YXRlc2VsX2F0dHIgOiBzZWxzdGF0ZV9hdHRyKTsKKyAgICAgIHdwcmludHcobGlzdHBhZCwgIiUtKi4qcyIsCisgICAgICAgICAgICAgIHN0YXR1c193YW50X3dpZHRoLCBzdGF0dXNfd2FudF93aWR0aCwKKyAgICAgICAgICAgICAgZ2V0dGV4dCh3YW50c3RyaW5nc1t0YWJsZVtpbmRleF0tPnNlbGVjdGVkXSkpOworICAgICAgd2F0dHJzZXQobGlzdHBhZCwgc2VsZWN0ZWQgPyBsaXN0c2VsX2F0dHIgOiBsaXN0X2F0dHIpOworICAgICAgd2FkZGNoKGxpc3RwYWQsICcgJyk7CisKKyAgICAgIG12d3ByaW50dyhsaXN0cGFkLCBzY3JlZW5saW5lLCBwcmlvcml0eV9jb2x1bW4gLSAxLCAiICUtKi4qcyIsCisgICAgICAgICAgICAgICAgcHJpb3JpdHlfd2lkdGgsIHByaW9yaXR5X3dpZHRoLAorICAgICAgICAgICAgICAgIHBrZy0+cHJpb3JpdHkgPT0gcGtnaW5mbzo6cHJpX290aGVyID8gcGtnLT5vdGhlcnByaW9yaXR5IDoKKyAgICAgICAgICAgICAgICBnZXR0ZXh0KHByaW9yaXR5c3RyaW5nc1twa2ctPnByaW9yaXR5XSkpOworICAgIH0gZWxzZSB7CisgICAgICBtdndhZGRjaChsaXN0cGFkLCBzY3JlZW5saW5lLCAwLCBlZmxhZ2NoYXJzW3BrZy0+ZWZsYWddKTsKKyAgICAgIHdhZGRjaChsaXN0cGFkLCBzdGF0dXNjaGFyc1twa2ctPnN0YXR1c10pOworICAgICAgd2FkZGNoKGxpc3RwYWQsCisgICAgICAgICAgICAgLyogRklYTUU6IGtlZXAgdGhpcyBmZWF0dXJlPyAqLworICAgICAgICAgICAgIC8qdGFibGVbaW5kZXhdLT5vcmlnaW5hbCA9PSB0YWJsZVtpbmRleF0tPnNlbGVjdGVkID8gJyAnCisgICAgICAgICAgICAgOiAqL3dhbnRjaGFyc1t0YWJsZVtpbmRleF0tPm9yaWdpbmFsXSk7CisKKyAgICAgIHdhdHRyc2V0KGxpc3RwYWQsIHNlbGVjdGVkID8gc2Vsc3RhdGVzZWxfYXR0ciA6IHNlbHN0YXRlX2F0dHIpOworICAgICAgd2FkZGNoKGxpc3RwYWQsIHdhbnRjaGFyc1t0YWJsZVtpbmRleF0tPnNlbGVjdGVkXSk7CisgICAgICB3YXR0cnNldChsaXN0cGFkLCBzZWxlY3RlZCA/IGxpc3RzZWxfYXR0ciA6IGxpc3RfYXR0cik7CisKKyAgICAgIHdtb3ZlKGxpc3RwYWQsIHNjcmVlbmxpbmUsIHByaW9yaXR5X2NvbHVtbiAtIDEpOworICAgICAgd2FkZGNoKGxpc3RwYWQsICcgJyk7CisgICAgICBpZiAocGtnLT5wcmlvcml0eSA9PSBwa2dpbmZvOjpwcmlfb3RoZXIpIHsKKyAgICAgICAgZm9yIChpPXByaW9yaXR5X3dpZHRoLCBwPXBrZy0+b3RoZXJwcmlvcml0eTsKKyAgICAgICAgICAgICBpID4gMCAmJiAqcDsKKyAgICAgICAgICAgICBpLS0sIHArKykKKyAgICAgICAgICB3YWRkY2gobGlzdHBhZCwgdG9sb3dlcigqcCkpOworICAgICAgICB3aGlsZSAoaS0tID4gMCkgd2FkZGNoKGxpc3RwYWQsJyAnKTsKKyAgICAgIH0gZWxzZSB7CisgICAgICAgIHdwcmludHcobGlzdHBhZCwgIiUtKi4qcyIsIHByaW9yaXR5X3dpZHRoLCBwcmlvcml0eV93aWR0aCwKKyAgICAgICAgICAgICAgICBnZXR0ZXh0KHByaW9yaXR5YWJicmV2c1twa2ctPnByaW9yaXR5XSkpOworICAgICAgfQorICAgIH0KKworICAgIG12d3ByaW50dyhsaXN0cGFkLCBzY3JlZW5saW5lLCBzZWN0aW9uX2NvbHVtbiAtIDEsICIgJS0qLipzIiwKKyAgICAgICAgICAgICAgc2VjdGlvbl93aWR0aCwgc2VjdGlvbl93aWR0aCwKKyAgICAgICAgICAgICAgcGtnLT5zZWN0aW9uID8gcGtnLT5zZWN0aW9uIDogIj8iKTsKKworICAgIG12d3ByaW50dyhsaXN0cGFkLCBzY3JlZW5saW5lLCBwYWNrYWdlX2NvbHVtbiAtIDEsICIgJS0qLipzICIsCisgICAgICAgICAgICAgIHBhY2thZ2Vfd2lkdGgsIHBhY2thZ2Vfd2lkdGgsIHBrZy0+bmFtZSk7CisKKyAgICBpZiAodmVyc2lvbmluc3RhbGxlZF93aWR0aCkKKyAgICAgIG12d3ByaW50dyhsaXN0cGFkLCBzY3JlZW5saW5lLCB2ZXJzaW9uaW5zdGFsbGVkX2NvbHVtbiwgIiUtKi4qcyAiLAorICAgICAgICAgICAgICAgIHZlcnNpb25pbnN0YWxsZWRfd2lkdGgsIHZlcnNpb25pbnN0YWxsZWRfd2lkdGgsCisgICAgICAgICAgICAgICAgdmVyc2lvbmRlc2NyaWJlKCZwa2ctPmluc3RhbGxlZC52ZXJzaW9uLCB2ZGV3X25vbmFtYmlnKSk7CisgICAgaWYgKHZlcnNpb25hdmFpbGFibGVfd2lkdGgpIHsKKyAgICAgIGlmIChpbmZvcm1hdGl2ZXZlcnNpb24oJnBrZy0+YXZhaWxhYmxlLnZlcnNpb24pICYmCisgICAgICAgICAgdmVyc2lvbmNvbXBhcmUoJnBrZy0+YXZhaWxhYmxlLnZlcnNpb24sJnBrZy0+aW5zdGFsbGVkLnZlcnNpb24pID4gMCkKKyAgICAgICAgd2F0dHJzZXQobGlzdHBhZCwgc2VsZWN0ZWQgPyBzZWxzdGF0ZXNlbF9hdHRyIDogc2Vsc3RhdGVfYXR0cik7CisgICAgICBtdndwcmludHcobGlzdHBhZCwgc2NyZWVubGluZSwgdmVyc2lvbmF2YWlsYWJsZV9jb2x1bW4sICIlLSouKnMiLAorICAgICAgICAgICAgICAgIHZlcnNpb25hdmFpbGFibGVfd2lkdGgsIHZlcnNpb25hdmFpbGFibGVfd2lkdGgsCisgICAgICAgICAgICAgICAgdmVyc2lvbmRlc2NyaWJlKCZwa2ctPmF2YWlsYWJsZS52ZXJzaW9uLCB2ZGV3X25vbmFtYmlnKSk7CisgICAgICB3YXR0cnNldChsaXN0cGFkLCBzZWxlY3RlZCA/IGxpc3RzZWxfYXR0ciA6IGxpc3RfYXR0cik7CisgICAgICB3YWRkY2gobGlzdHBhZCwnICcpOworICAgIH0KKworICAgIGk9IGRlc2NyaXB0aW9uX3dpZHRoOworICAgIHA9IGluZm8tPmRlc2NyaXB0aW9uID8gaW5mby0+ZGVzY3JpcHRpb24gOgorICAgICAgIHBrZy0+aW5zdGFsbGVkLmRlc2NyaXB0aW9uID8gcGtnLT5pbnN0YWxsZWQuZGVzY3JpcHRpb24gOiAiIjsKKyAgICB3aGlsZSAoaT4wICYmICpwICYmICpwICE9ICdcbicpIHsgd2FkZG5zdHIobGlzdHBhZCxwLDEpOyBpLS07IHArKzsgfQorICB9IGVsc2UgeworICAgIGNvbnN0IGNoYXIgKnNlY3Rpb249IHBrZy0+c2VjdGlvbjsKKyAgICBjb25zdCBjaGFyICpwcmlvcml0eT0gcGtncHJpb3JpdHlzdHJpbmcocGtnKTsKKworICAgIGNoYXIgKmJ1Zj0gbmV3IGNoYXJbNTAwKworICAgICAgICAgICAgICAgICAgICAgICAgKHNlY3Rpb24gPyBzdHJsZW4oc2VjdGlvbikgOiAwKSArCisgICAgICAgICAgICAgICAgICAgICAgICAocHJpb3JpdHkgPyBzdHJsZW4ocHJpb3JpdHkpIDogMCldOworCisgICAgaW5kZW50PSBkZXNjcmliZW1hbnkoYnVmLHByaW9yaXR5LHNlY3Rpb24scGtnLT5jbGllbnRkYXRhKTsKKworICAgIG12d2FkZHN0cihsaXN0cGFkLCBzY3JlZW5saW5lLCAwLCAiICAgICIpOworICAgIGk9IHRvdGFsX3dpZHRoLTc7CisgICAgaj0gKGluZGVudDw8MSkgKyAxOworICAgIHdoaWxlIChqLS0gPjApIHsgd2FkZGNoKGxpc3RwYWQsQUNTX0hMSU5FKTsgaS0tOyB9CisgICAgd2FkZGNoKGxpc3RwYWQsJyAnKTsKKworICAgIHdhdHRyc2V0KGxpc3RwYWQsIHNlbGVjdGVkID8gc2Vsc3RhdGVzZWxfYXR0ciA6IHNlbHN0YXRlX2F0dHIpOworICAgIHA9IGJ1ZjsKKyAgICB3aGlsZSAoaT4wICYmICpwKSB7IHdhZGRuc3RyKGxpc3RwYWQsIHAsMSk7IHArKzsgaS0tOyB9CisgICAgd2F0dHJzZXQobGlzdHBhZCwgc2VsZWN0ZWQgPyBsaXN0c2VsX2F0dHIgOiBsaXN0X2F0dHIpOworCisgICAgd2FkZGNoKGxpc3RwYWQsJyAnKTsKKyAgICBqPSAoaW5kZW50PDwxKSArIDE7CisgICAgd2hpbGUgKGotLSA+MCkgeyB3YWRkY2gobGlzdHBhZCxBQ1NfSExJTkUpOyBpLS07IH0KKworICAgIGRlbGV0ZVtdIGJ1ZjsKKyAgfQorCisgIHdoaWxlIChpPjApIHsgd2FkZGNoKGxpc3RwYWQsJyAnKTsgaS0tOyB9Cit9CisKK3ZvaWQgcGFja2FnZWxpc3Q6OnJlZHJhd2NvbGhlYWRzKCkgeworICBpZiAoY29saGVhZHNfaGVpZ2h0KSB7CisgICAgd2F0dHJzZXQoY29saGVhZHNwYWQsY29saGVhZHNfYXR0cik7CisgICAgbXl3ZXJhc2UoY29saGVhZHNwYWQpOworICAgIGlmICh2ZXJib3NlKSB7CisgICAgICB3bW92ZShjb2xoZWFkc3BhZCwwLDApOworICAgICAgZm9yIChpbnQgaT0wOyBpPHN0YXR1c193aWR0aC1zdGF0dXNfd2FudF93aWR0aDsgaSsrKSB3YWRkY2goY29saGVhZHNwYWQsJy4nKTsKKyAgICAgIG12d2FkZG5zdHIoY29saGVhZHNwYWQsMCwKKyAgICAgICAgICAgICAgICAgMCwKKyAgICAgICAgICAgICAgICAgXygiRXJyb3IiKSwKKyAgICAgICAgICAgICAgICAgc3RhdHVzX2hvbGRfd2lkdGgpOworICAgICAgbXZ3YWRkbnN0cihjb2xoZWFkc3BhZCwwLAorICAgICAgICAgICAgICAgICBzdGF0dXNfaG9sZF93aWR0aCsxLAorICAgICAgICAgICAgICAgICBfKCJJbnN0YWxsZWQ/IiksCisgICAgICAgICAgICAgICAgIHN0YXR1c19zdGF0dXNfd2lkdGgpOworICAgICAgbXZ3YWRkbnN0cihjb2xoZWFkc3BhZCwwLAorICAgICAgICAgICAgICAgICBzdGF0dXNfaG9sZF93aWR0aCtzdGF0dXNfc3RhdHVzX3dpZHRoKzIsCisgICAgICAgICAgICAgICAgIF8oIk9sZCBtYXJrIiksCisgICAgICAgICAgICAgICAgIHN0YXR1c193YW50X3dpZHRoKTsKKyAgICAgIG12d2FkZG5zdHIoY29saGVhZHNwYWQsMCwKKyAgICAgICAgICAgICAgICAgc3RhdHVzX2hvbGRfd2lkdGgrc3RhdHVzX3N0YXR1c193aWR0aCtzdGF0dXNfd2FudF93aWR0aCszLAorICAgICAgICAgICAgICAgICBfKCJNYXJrZWQgZm9yIiksCisgICAgICAgICAgICAgICAgIHN0YXR1c193YW50X3dpZHRoKTsKKyAgICB9IGVsc2UgeworICAgICAgbXZ3YWRkc3RyKGNvbGhlYWRzcGFkLDAsMCwgXygiRUlPTSIpKTsKKyAgICB9CisgICAgbXZ3YWRkbnN0cihjb2xoZWFkc3BhZCwwLHNlY3Rpb25fY29sdW1uLCBfKCJTZWN0aW9uIiksIHNlY3Rpb25fd2lkdGgpOworICAgIG12d2FkZG5zdHIoY29saGVhZHNwYWQsMCxwcmlvcml0eV9jb2x1bW4sIF8oIlByaW9yaXR5IiksIHByaW9yaXR5X3dpZHRoKTsKKyAgICBtdndhZGRuc3RyKGNvbGhlYWRzcGFkLDAscGFja2FnZV9jb2x1bW4sIF8oIlBhY2thZ2UiKSwgcGFja2FnZV93aWR0aCk7CisKKyAgICBpZiAodmVyc2lvbmluc3RhbGxlZF93aWR0aCkKKyAgICAgIG12d2FkZG5zdHIoY29saGVhZHNwYWQsMCx2ZXJzaW9uaW5zdGFsbGVkX2NvbHVtbiwKKyAgICAgICAgICAgICAgICAgXygiSW5zdC52ZXIiKSx2ZXJzaW9uaW5zdGFsbGVkX3dpZHRoKTsKKyAgICBpZiAodmVyc2lvbmF2YWlsYWJsZV93aWR0aCkKKyAgICAgIG12d2FkZG5zdHIoY29saGVhZHNwYWQsMCx2ZXJzaW9uYXZhaWxhYmxlX2NvbHVtbiwKKyAgICAgICAgICAgICAgICAgXygiQXZhaWwudmVyIiksdmVyc2lvbmF2YWlsYWJsZV93aWR0aCk7CisKKyAgICBtdndhZGRuc3RyKGNvbGhlYWRzcGFkLDAsZGVzY3JpcHRpb25fY29sdW1uLCBfKCJEZXNjcmlwdGlvbiIpLCBkZXNjcmlwdGlvbl93aWR0aCk7CisgIH0KKyAgcmVmcmVzaGNvbGhlYWRzKCk7Cit9CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vQ2hhbmdlTG9nLm9sZCBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9DaGFuZ2VMb2cub2xkCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmZjYzk5ZDEKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vQ2hhbmdlTG9nLm9sZApAQCAtMCwwICsxLDM3MiBAQAorMjAwOS0wMy0wMiAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogZHNlbGVjdC5wb3Q6IFJlZ2VuZXJhdGVkLgorCSogKi5wbzogTWVyZ2VkIHdpdGggZHNlbGVjdC5wb3QuCisKKzIwMDktMDItMDEgIEhhbnMgRi4gTm9yZGhhdWcgIDxIYW5zLkYuTm9yZGhhdWdAaGlNb2xkZS5ubz4KKworCSogbmIucG86IFVwZGF0ZWQgdG8gMjg4dC4KKworMjAwOS0wMS0wNiAgUGlhcnJlcyBCZW9iaWRlICA8cGlAYmVvYmlkZS5uZXQ+CisKKwkqIGV1LnBvOiBVcGRhdGVkIHRvIDI4OHQuCisKKzIwMDktMDEtMDUgIE1pZ3VlbCBGaWd1ZWlyZWRvICA8ZWxtaWdAZGViaWFucHQub3JnPgorCisJKiBwdC5wbzogVXBkYXRlZCB0byAyODh0LgorCisyMDA5LTAxLTA1ICBQaWFycmVzIEJlb2JpZGUgIDxwaUBiZW9iaWRlLm5ldD4KKworCSogZXUucG86IFVwZGF0ZWQgdG8gMjg3dC4KKworMjAwOC0xMi0yOCAgTWFyY2UgVmlsbGFyaW5vICA8bXZpbGxhcmlub0BnbWFpbC5jb20+CisKKwkqIGdsLnBvOiBVcGRhdGVkIHRvIDI4OHQuCisKKzIwMDgtMDgtMTcgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGRzZWxlY3QucG90OiBSZWdlbmVyYXRlZC4KKwkqICoucG86IE1lcmdlZCB3aXRoIGRzZWxlY3QucG90LgorCisyMDA4LTA2LTI4ICBFZGR5IFBldHJpyJlvciAgPGVkZHkucGV0cmlzb3JAZ21haWwuY29tPgorCisJKiByby5wbzogVXBkYXRlZCB0byAyODh0LgorCisyMDA4LTA2LTEwICBXaWt0b3IgV2FuZGFjaG93aWN6ICA8c2lyeWVzQGdtYWlsLmNvbT4KKworCSogcGwucG86IFVwZGF0ZWQgdG8gMjg4dC4KKworMjAwOC0wNi0wOSAgRmVsaXBlIEF1Z3VzdG8gdmFuIGRlIFdpZWwgIDxmYXdAZGViaWFuLm9yZz4KKworCSogcHRfQlI6IFVwZGF0ZWQgdG8gMjg4dC4KKworMjAwOC0wNi0wNyAgV2lrdG9yIFdhbmRhY2hvd2ljeiAgPHNpcnllc0BnbWFpbC5jb20+CisKKwkqIHBsLnBvOiBVcGRhdGVkIHRvIDI4NnQwZjJ1LgorCisyMDA4LTA1LTEyICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBkc2VsZWN0LnBvdDogUmVnZW5lcmF0ZWQuCisJKiAqLnBvOiBNZXJnZWQgd2l0aCBkc2VsZWN0LnBvdC4KKworMjAwOC0wNS0xMSAgRmVsaXBlIEF1Z3VzdG8gdmFuIGRlIFdpZWwgIDxmYXdAZGViaWFuLm9yZz4KKworCSogcHRfQlI6IFVwZGF0ZWQgdG8gMjg4dC4KKworMjAwOC0wNS0wOSAgU3ZlbiBKb2FjaGltICA8c3ZlbmpvYWNAZ214LmRlPgorCisJKiBkZS5wbzogQWRqdXN0IHRyYW5zbGF0aW9uIG9mICJicmVha3MiLgorCisyMDA4LTA1LTAzICBDaHJpc3RpYW4gUGVycmllciAgPGJ1YnVsbGVAZGViaWFuLm9yZz4KKworCSogZnIucG86IFVwZGF0ZWQgdG8gMjg4dC4KKworMjAwOC0wNS0wMyAgSXZhbiBNYXPDoXIgIDxoZWxpeDg0QGNlbnRydW0uc2s+CisKKwkqIHNrLnBvOiBVcGRhdGVkIHRvIDI4OHQuCisKKzIwMDgtMDUtMDMgIFl1cmkgS296bG92ICA8a296bG92LnlAZ21haWwuY29tPgorCisJKiBydS5wbzogVXBkYXRlZCB0byAyODh0LgorCisyMDA4LTA0LTI1ICBTdmVuIEpvYWNoaW0gIDxzdmVuam9hY0BnbXguZGU+CisKKwkqIGRlLnBvOiBSZXdvcmQgdHJhbnNsYXRpb24gb2YgInB1cmdlIiBmb3IgY29uc2lzdGVuY3kuCisKKzIwMDgtMDQtMDggIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGRlLnBvLCBzdi5wbzogTWVyZ2VkIHdpdGggZHNlbGVjdC5wb3QuCisKKzIwMDgtMDQtMDMgIFBldGVyIEthcmxzc29uICA8cGV0ZXJrQGRlYmlhbi5vcmc+CisKKwkqIHN2LnBvOiBVcGRhdGVkIHRvIDI4OHQuCisKKzIwMDgtMDQtMDIgIFN2ZW4gSm9hY2hpbSAgPHN2ZW5qb2FjQGdteC5kZT4KKworCSogZHNlbGVjdC5wb3Q6IFJlZ2VuZXJhdGVkLgorCSogKi5wbzogTWVyZ2VkIHdpdGggZHNlbGVjdC5wb3QuCisJKiBkZS5wbywgZnIucG86IFVwZGF0ZWQgaGVhZGVyIGluZm9ybWF0aW9uLgorCisyMDA4LTAzLTMxICBTdmVuIEpvYWNoaW0gIDxzdmVuam9hY0BnbXguZGU+CisKKwkqIGRlLnBvOiBVcGRhdGVkIHRvIDI4OHQuCisKKzIwMDgtMDMtMzAgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGRzZWxlY3QucG90OiBSZWdlbmVyYXRlZC4KKwkqICoucG86IE1lcmdlZCB3aXRoIGRzZWxlY3QucG90LgorCisyMDA4LTAzLTEwICBSb2JlcnQgTHViZXJkYSAgPHJvYmVydEBkZWJpYW4ub3JnPgorCisJKiBwbC5wbzogQ29uc2lzdGVudGx5IHVzZSBQb2xpc2ggcXVvdGF0aW9uIG1hcmtzIGluIHRyYW5zbGF0aW9ucy4KKwkqIHBsLnBvOiBVcGRhdGVkIHRvIDI4NnQgKGFmdGVyIGxvY2FsbHkgcmUtZ2VuZXJhdGluZyB0aGUgcG90IGZpbGUpLgorCisyMDA4LTAyLTI0ICBSb2JlcnQgTHViZXJkYSAgPHJvYmVydEBkZWJpYW4ub3JnPgorCisJKiBwbC5wbzogUmVjb2RlZCB0byBVVEYtOC4KKwkqIHBsLnBvOiBVcGRhdGVkIHRvIDI4NnQuCisKKzIwMDgtMDItMDkgIEVkZHkgUGV0cmnImW9yICA8ZWRkeS5wZXRyaXNvckBnbWFpbC5jb20+CisKKwkqIHJvLnBvOiBVcGRhdGVkIHRvIDI4NXQuCisKKzIwMDgtMDEtMjUgIFBpYXJyZXMgQmVvYmlkZSAgPHBpQGJlb2JpZGUubmV0PgorCisJKiBldS5wbzogVXBkYXRlZCB0byAyODZ0LgorCisyMDA4LTAxLTA3ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBkc2VsZWN0LnBvdDogUmVnZW5lcmF0ZWQuCisJKiAqLnBvOiBNZXJnZWQgd2l0aCBkc2VsZWN0LnBvdC4KKworMjAwNy0xMi0yOSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogZHNlbGVjdC5wb3Q6IFJlZ2VuZXJhdGVkLgorCSogKi5wbzogTWVyZ2VkIHdpdGggZHNlbGVjdC5wb3QuCisKKzIwMDctMTItMjkgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGhlLnBvOiBSZW1vdmUgb2Jzb2xldGUgdHJhbnNsYXRpb24uCisJKiBMSU5HVUFTOiBSZW1vdmUgZGlzYWJsZWQgSGVicmV3IGVudHJ5LgorCisyMDA3LTExLTA5ICBNaXJvc2xhdiBLdXJlICA8a3VyZW1AZGViaWFuLmN6PgorCisJKiBjcy5wbzogVXBkYXRlZCB0byAyODV0LgorCisyMDA3LTA5LTE5ICBTdW5qYWUgUGFyayAgPGRhcmVoYW5sQGdtYWlsLmNvbT4KKworCSoga28ucG86IFVwZGF0ZWQgdG8gMjg1dC4KKworMjAwNy0wOC0xOCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogKi5wbzogTWVyZ2VkIHdpdGggZHNlbGVjdC5wb3QuCisKKzIwMDctMDgtMDYgIFl1cmkgS296bG92ICA8a296bG92LnlAZ21haWwuY29tPgorCisJKiBydS5wbzogVXBkYXRlZCB0byAyODV0LgorCisyMDA3LTA3LTI5ICBQZXRlciBLYXJsc3NvbiAgPHBldGVya0BkZWJpYW4ub3JnPgorCisJKiBzdi5wbzogVXBkYXRlZCB0byAyODV0LgorCisyMDA3LTA3LTEzICBJdmFyIFNtb2xpbiAgPG9rdWxAbGludXguZWU+CisKKwkqIGV0LnBvOiBVcGRhdGVkIHRvIDIzN3Q0OHUuCisKKzIwMDctMDYtMDUgIENocmlzdGlhbiBQZXJyaWVyICA8YnVidWxsZUBkZWJpYW5wdC5vcmc+CisKKwkqIGZyLnBvOiBVcGRhdGVkIHRvIDI4NXQuCisKKzIwMDctMDUtMjUgIE1pZ3VlbCBGaWd1ZWlyZWRvICA8ZWxtaWdAZGViaWFucHQub3JnPgorCisJKiBwdC5wbzogVXBkYXRlZCB0byAyODV0LgorCisyMDA3LTA1LTA4ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBkc2VsZWN0LnBvdDogUmVnZW5lcmF0ZWQuCisJKiAqLnBvOiBNZXJnZWQgd2l0aCBkc2VsZWN0LnBvdC4KKworMjAwNy0wNS0wNCAgUm9iZXJ0IEx1YmVyZGEgIDxyb2JlcnRAZGViaWFuLm9yZz4KKworCSogcGwucG86IFVwZGF0ZWQgdG8gMjg1dC4KKworMjAwNy0wMy0yOCAgQmFydCBDb3JuZWxpcyAgPGNvYmFjb0Bza29sZWxpbnV4Lm5vPgorCisJKiBubC5wbzogVXBkYXRlZCB0cmFuc2xhdGlvbi4KKworMjAwNy0wMy0yMSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogTWFrZWZpbGUuaW4uaW46IFVwZGF0ZWQgZnJvbSBnZXR0ZXh0IDAuMTYuMS4KKworMjAwNy0wMy0yMSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogZHNlbGVjdC5wb3Q6IFJlZ2VuZXJhdGVkLgorCSogKi5wbzogTWVyZ2VkIHdpdGggZHNlbGVjdC5wb3QuIEZvcm1lcmx5IGNvbXBsZXRlZCB0cmFuc2xhdGlvbnMKKwliZWNvbWUgMjc2dDhmMXUuCisKKzIwMDYtMTItMzEgIFN1bmphZSBQYXJrICA8ZGFyZWhhbmxAZ21haWwuY29tPgorCisJKiBrby5wbzogVXBkYXRlZCB0byAyOTh0LgorCisyMDA2LTEwLTExICBKb3JkaSBNYWxsYWNoICA8am9yZGlAZGViaWFuLm9yZz4KKworCSogY2EucG86IFVwZGF0ZWQgdG8gMjg5dC4KKworMjAwNi0xMC0wOSAgQ2x5dGllIFNpZGRhbGwgIDxjbHl0aWVAcml2ZXJsYW5kLm5ldC5hdT4KKworCSogdmkucG86IFVwZGF0ZWQgdG8gMjg5dC4KKworMjAwNi0xMC0wOSAgSGFucyBGci4gTm9yZGhhdWcgIDxoYW5zQG5vcmRoYXVnLnByaXYubm8+CisKKwkqIG5iLnBvOiBVcGRhdGVkIHRvIDI4OXQuCisKKzIwMDYtMTAtMDcgIFl1cmkgS296bG92ICA8a296bG92LnlAZ21haWwuY29tPgorCisJKiBydS5wbzogVXBkYXRlZCB0byAyODl0LgorCisyMDA2LTEwLTA2ICBTdGVmYW5vIENhbmVwYSAgPHNjQGxpbnV4Lml0PgorCisJKiBpdC5wbzogVXBkYXRlZCB0byAyODl0LgorCisyMDA2LTEwLTA2ICBDbGF1cyBIaW5kc2dhdWwgIDxjbGF1cy5oaW5kc2dhdWxAZ21haWwuY29tPgorCisJKiBkYS5wbzogVXBkYXRlZCB0byAyODl0LgorCisyMDA2LTEwLTA2ICBLZW5zaGkgTXV0byAgPGttdXRvQGRlYmlhbi5vcmc+CisKKwkqIGphLnBvOiBVcGRhdGVkIHRvIDI4OXQuCisKKzIwMDYtMTAtMDYgIEFyaWVmIFMgRml0cmlhbnRvICA8YXJpZWZAZ3VyYW1lLmZpc2lrYS51aS5hYy5pZD4KKworCSogaWQucG86IFVwZGF0ZWQgdG8gMjg5dC4KKworMjAwNi0xMC0wNiAgQW5kcmUgTHVpcyBMb3BlcyAgPGFuZHJlbG9wQGRlYmlhbi5vcmc+CisKKwkqIHB0X0JSLnBvOiBVcGRhdGVkIHRvIDI4OXQuCisKKzIwMDYtMTAtMDYgIERhbmllbCBOeWxhbmRlciAgPGluZm9AZGFuaWVsbnlsYW5kZXIuc2U+CisKKwkqIHN2LnBvOiBVcGRhdGVkIHRvIDI4OXQuCisKKzIwMDYtMTAtMDYgIFNaRVJWw4FDIEF0dGlsYSAgPHNhc0AzMjEuaHU+CisKKwkqIGh1LnBvOiBVcGRhdGVkIHRvIDI4OXQuCisKKzIwMDYtMTAtMDUgIFBldGVyIE1hbm4gIDxQZXRlci5NYW5uQHR1a2Uuc2s+CisKKwkqIHNrLnBvOiBVcGRhdGVkIHRvIDI4OXQuCisKKzIwMDYtMTAtMDUgIEphdmllciBGZXJuYW5kZXotU2FuZ3Vpbm8gIDxqZnNAZGViaWFuLm9yZz4KKworCSogZXMucG86IFVwZGF0ZWQgdG8gMjg5dC4KKworMjAwNi0wOS0wMiAgQ2xhdXMgSGluZHNnYXVsICA8Y2xhdXMuaGluZHNnYXVsQGdtYWlsLmNvbT4KKworCSogZGEucG86IFVwZGF0ZWQgdG8gMjg5dC4KKworMjAwNi0wOC0yOSAgU3ZlbiBKb2FjaGltICA8c3ZlbmpvYWNAZ214LmRlPgorCisJKiBkZS5wbzogVXBkYXRlZCB0byAyODl0LgorCSogTElOR1VBUzogTmV3IEdlcm1hbiB0cmFuc2xhdGlvbiBtYWludGFpbmVyLgorCisyMDA2LTA4LTE4ICBSb2JlcnQgTWlsbGFuICA8cm1oQGF5YmFidHUuY29tPgorCisJKiBjYS5wbzogRml4ZWQgc3BlbGxpbmcgZXJyb3JzLgorCisyMDA2LTA2LTE2ICBLb3YgVGNoYWkgIDx0Y2hhaWtvdkBzanR1LmVkdS5jbj4KKworCSogemhfQ04ucG86IFVwZGF0ZWQgdG8gMjg5dC4KKworMjAwNi0wNS0xNiAgRWRkeSBQZXRyacWfb3IgIDxlZGR5LnBldHJpc29yQGdtYWlsLmNvbT4KKworCSogcm8ucG86IFVwZGF0ZWQgdG8gMjg5dDsgdXNlIG9ubHkgUm9tYW5pYW4gcXVvdGVzLgorCisyMDA2LTA1LTA4ICBNaXJvc2xhdiBLdXJlICA8a3VyZW1AZGViaWFuLmN6PgorCisJKiBjcy5wbzogVXBkYXRlZCB0byAyODl0LgorCisyMDA2LTA1LTA3ICBNaWd1ZWwgRmlndWVpcmVkbyAgPGVsbWlnQGRlYmlhbnB0Lm9yZz4KKworCSogcHQucG86IFVwZGF0ZWQgdG8gMjg5dC4KKworMjAwNi0wNS0wNiAgUGlhcnJlcyBCZW9iaWRlICA8cGlAYmVvYmlkZS5uZXQ+CisKKwkqIGV1LnBvOiBVcGRhdGVkIHRvIDI4OXQuCisKKzIwMDYtMDUtMDQgIFJvYmVydCBMdWJlcmRhICA8cm9iZXJ0QGRlYmlhbi5vcmc+CisKKwkqIHBsLnBvOiBVcGRhdGVkIHRvIDI4OXQuCisKKzIwMDYtMDUtMDQgIEJhcnQgQ29ybmVsaXMgIDxjb2JhY29AbGludXguYmU+CisKKwkqIG5sLnBvOiBVcGRhdGVkIHRvIDI4OXQuCisKKzIwMDYtMDUtMDQgIENocmlzdGlhbiBQZXJyaWVyICA8YnVidWxsZUBkZWJpYW4ub3JnPgorCisJKiBmci5wbzogVXBkYXRlZCB0byAyODl0LgorCisyMDA2LTA1LTAzICBKYWNvYm8gVGFycmlvICA8anRhcnJpb0BkZWJpYW4ub3JnPgorCisJKiBnbC5wbzogVXBkYXRlZCB0byAyODl0LgorCisyMDA2LTA1LTAzICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBkc2VsZWN0LnBvdDogUmVnZW5lcmF0ZWQuCisJKiAqLnBvOiBNZXJnZWQgd2l0aCBkc2VsZWN0LnBvdC4gRm9ybWVybHkgY29tcGxldGVkIHRyYW5zbGF0aW9ucworCWJlY29tZSAyODV0MWYzdS4KKworMjAwNi0wNC0xMSAgRWRkeSBQZXRyacWfb3IgIDxlZGR5LnBldHJpc29yQGdtYWlsLmNvbT4KKworCSogcm8ucG86IFVwZGF0ZWQgdG8gMjg2dC4KKworMjAwNi0wNC0xMCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogZHNlbGVjdC5wb3Q6IFJlZ2VuZXJhdGVkLgorCSogKi5wbzogTWVyZ2VkIHdpdGggZHNlbGVjdC5wb3QuCisKKzIwMDYtMDQtMDggIFl1cmkgS296bG92ICA8a296bG92LnlAZ21haWwuY29tPgorCisJKiBydS5wbzogVXBkYXRlZCB0byAyODZ0LgorCisyMDA2LTAzLTI0ICBSb2JlcnQgTHViZXJkYSAgPHJvYmVydEBkZWJpYW4ub3JnPgorCisJKiBwbC5wbzogVXBkYXRlZCB0byAyODZ0LgorCisyMDA2LTAzLTIxICBDbGF1cyBIaW5kc2dhdWwgIDxjbGF1cy5oaW5kc2dhdWxAZ21haWwuY29tPgorCisJKiBkYS5wbzogVXBkYXRlZCB0byAyODZ0LgorCisyMDA2LTAzLTIwICBKYXZpZXIgRmVybsOhbmRlei1TYW5ndWlubyBQZcOxYSAgPGpmc0Bjb21wdXRlci5vcmc+CisKKwkqIGVzLnBvOiBVcGRhdGVkIHRvIDI4NnQuCisKKzIwMDYtMDMtMDUgIE1pcm9zbGF2IEt1cmUgIDxrdXJlbUBkZWJpYW4uY3o+CisKKwkqIGNzLnBvOiBVcGRhdGVkIHRvIDI4NnQuCisKKzIwMDYtMDItMTkgIEJhcnQgQ29ybmVsaXMgIDxjb2JhY29AbGludXguYmU+CisKKwkqIG5sLnBvOiBVcGRhdGVkIHRvIDI4NnQuCisKKzIwMDYtMDItMTggIFNaRVJWw4FDIEF0dGlsYSAgPHNhc0AzMjEuaHU+CisKKwkqIGh1LnBvOiBVcGRhdGVkIHRvIDE5MnQ5NHUuCisKKzIwMDYtMDItMTcgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIExJTkdVQVM6IE5ldyBmaWxlLgorCSogUE9URklMRVMuaW46IExpa2V3aXNlLgorCSogTWFrZWZpbGUuaW4uaW46IExpa2V3aXNlLgorCSogTWFrZXZhcnM6IExpa2V3aXNlLgorCSogcmVtb3ZlLXBvdGNkYXRlLnNpbjogTGlrZXdpc2UuCisJKiBkc2VsZWN0LnBvdDogTGlrZXdpc2UuCisJKiBicy5wbzogTGlrZXdpc2UuCisJKiBjYS5wbzogTGlrZXdpc2UuCisJKiBjcy5wbzogTGlrZXdpc2UuCisJKiBkYS5wbzogTGlrZXdpc2UuCisJKiBkZS5wbzogTGlrZXdpc2UuCisJKiBlbC5wbzogTGlrZXdpc2UuCisJKiBlcy5wbzogTGlrZXdpc2UuCisJKiBldS5wbzogTGlrZXdpc2UuCisJKiBmci5wbzogTGlrZXdpc2UuCisJKiBnbC5wbzogTGlrZXdpc2UuCisJKiBoZS5wbzogTGlrZXdpc2UuCisJKiBodS5wbzogTGlrZXdpc2UuCisJKiBpZC5wbzogTGlrZXdpc2UuCisJKiBpdC5wbzogTGlrZXdpc2UuCisJKiBqYS5wbzogTGlrZXdpc2UuCisJKiBrby5wbzogTGlrZXdpc2UuCisJKiBuYi5wbzogTGlrZXdpc2UuCisJKiBubC5wbzogTGlrZXdpc2UuCisJKiBubi5wbzogTGlrZXdpc2UuCisJKiBwbC5wbzogTGlrZXdpc2UuCisJKiBwdF9CUi5wbzogTGlrZXdpc2UuCisJKiBwdC5wbzogTGlrZXdpc2UuCisJKiByby5wbzogTGlrZXdpc2UuCisJKiBydS5wbzogTGlrZXdpc2UuCisJKiBzay5wbzogTGlrZXdpc2UuCisJKiBzdi5wbzogTGlrZXdpc2UuCisJKiB0bC5wbzogTGlrZXdpc2UuCisJKiB2aS5wbzogTGlrZXdpc2UuCisJKiB6aF9DTi5wbzogTGlrZXdpc2UuCisJKiB6aF9UVy5wbzogTGlrZXdpc2UuCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vTElOR1VBUyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9MSU5HVUFTCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjBlOTU0MjcKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vTElOR1VBUwpAQCAtMCwwICsxLDk1IEBACisjIFRoaXMgZmlsZSBjb250YWlucyB0aGUgbGlzdCBvZiBhdmFpbGFibGUgdHJhbnNsYXRpb25zLgorIworIyBFYWNoIHNob3VsZCBiZSBwcmVmaXhlZCB3aXRoIHRoZSBFbmdsaXNoIG5hbWUgZm9yIHRoZSBsYW5ndWFnZSBhbmQKKyMgdGhlIGN1cnJlbnQgbWFpbnRhaW5lcidzIG5hbWUgaW4gdGhlaXIgcHJlZmVycmVkIGZvcm0gYW5kIGNvbnRhY3QKKyMgZS1tYWlsIGFkZHJlc3MuCisKKyMgQm9zbmlhbiAtIFNhZmlyIMWgZcSHZXJvdmnEhyA8c2FwcGhpcmVAbGludXgub3JnLmJhPgorYnMKKworIyBDYXRhbGFuIC0gSm9yZGkgTWFsbGFjaCA8am9yZGlAZGViaWFuLm9yZz4KK2NhCisKKyMgQ3plY2ggLSBNaXJvc2xhdiBLdXJlIDxrdXJlbUBkZWJpYW4uY3o+CitjcworCisjIERhbmlzaCAtIENsYXVzIEhpbmRzZ2F1bCA8Y2xhdXNfaEBpbWFnZS5kaz4KK2RhCisKKyMgR2VybWFuIC0gU3ZlbiBKb2FjaGltIDxzdmVuam9hY0BnbXguZGU+CitkZQorCisjIEdyZWVrIChIZWxsZW5pYykgLSBHZW9yZ2UgUGFwYW1pY2hlbGFraXMgPGdlb3JnZUBzdGVwLmdyPgorZWwKKworIyBTcGFuaXNoIC0gSmF2aWVyIEZlcm7DoW5kZXotU2FuZ3Vpbm8gUGXDsWEgPGpmc0BkZWJpYW4ub3JnPgorZXMKKworIyBFc3RvbmlhbiAtIEl2YXIgU21vbGluIDxva3VsQGxpbnV4LmVlPgorZXQKKworIyBCYXNxdWUgKEV1c2thcmEpIC0gUGlhcnJlcyBCZW9iaWRlIEVnYcOxYSA8cGlAYmVvYmlkZS5uZXQ+CitldQorCisjIEZyZW5jaCAtIENocmlzdGlhbiBQZXJyaWVyIDxidWJ1bGxlQGRlYmlhbi5vcmc+CitmcgorCisjIEdhbGljaWFuIC0gSMOpY3RvciBGZXJuw6FuZGV6IEzDs3BleiA8dHJvcnJyQHlhaG9vLmVzPgorZ2wKKworIyBIdW5nYXJpYW4gLSBTemVydsOhYyBBdHRpbGEgPHNhc0AzMjEuaHU+CitodQorCisjIEluZG9uZXNpYW4gLSBBcmllZiBTIEZpdHJpYW50byA8YXJpZWZAZ3VyYW1lLmZpc2lrYS51aS5hYy5pZD4KK2lkCisKKyMgSXRhbGlhbiAtIFN0ZWZhbm8gQ2FuZXBhIDxzY0BsaW51eC5pdD4KK2l0CisKKyMgSmFwYW5lc2UgLSBLZW5zaGkgTXV0byA8a211dG9AZGViaWFuLm9yZz4KK2phCisKKyMgS29yZWFuIC0gQ2hhbmd3b28gUnl1IDxjd3J5dUBkZWJpYW4ub3JnPgora28KKworIyBOb3J3ZWdpYW4gKEJva23DpWwpIC0gQmpvcm4gU3RlZW5zcnVkIDxiam9ybnN0QHBvd2VydGVjaC5ubz4KK25iCisKKyMgRHV0Y2ggLSBCYXJ0IENvcm5lbGlzIDxjb2JhY29AbGludXguYmU+CitubAorCisjIE5vcndlZ2lhbiAoTnlub3JzaykgLSBIw6V2YXJkIEtvcnN2b2xsIDxrb3Jzdm9sbEBza3VsZWxpbnV4Lm5vPgorbm4KKworIyBQb2xpc2ggLSBCYXJ0b3N6IEZlw7Fza2kgPGZlbmlvQGRlYmlhbi5vcmc+CitwbAorCisjIFBvcnR1Z3Vlc2UgLSBNaWd1ZWwgRmlndWVpcmVkbyA8ZWxtaWdAZGViaWFucHQub3JnPgorcHQKKworIyBCcmF6aWxpYW4gUG9ydHVndWVzZSAtIEFuZHLDqSBMdcOtcyBMb3BlcyA8YW5kcmVsb3BAZGViaWFuLm9yZz4KK3B0X0JSCisKKyMgUm9tYW5pYW4gLSBFZGR5IFBldHJpc29yIDxlZGR5LnBldHJpc29yQGdtYWlsLmNvbT4KK3JvCisKKyMgUnVzc2lhbiAtIFl1cmkgS296bG92IDx5dXJheUBpZC5ydT4KK3J1CisKKyMgU2xvdmFrIC0gSXZhbiBNYXPDoXIgPGhlbGl4ODRAY2VudHJ1bS5zaz4KK3NrCisKKyMgU3dlZGlzaCAtIFBldGVyIEtyZWZ0aW5nIDxwZXRlcmtAZGViaWFuLm9yZz4KK3N2CisKKyMgVGFnYWxvZyAtIEVyaWMgUGFyZWphIDx4ZW5vc0B1cG0uZWR1LnBoPgordGwKKworIyBWaWV0bmFtZXNlIC0gQ2x5dGllIFNpZGRhbGwgPGNseXRpZUByaXZlcmxhbmQubmV0LmF1PgordmkKKworIyBTaW1wbGlmaWVkIENoaW5lc2UgLSBUY2hhaWtvdiA8Y2hhaXNhdmVAMjYzLmNvbT4KK3poX0NOCisKKyMgVHJhZGl0aW9uYWwgQ2hpbmVzZSAtIEFzaG8gWWVoIDxhc2hvQGRlYmlhbi5vcmcudHc+Cit6aF9UVwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL01ha2VmaWxlLmluLmluIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL01ha2VmaWxlLmluLmluCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjgzZDg4MzgKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vTWFrZWZpbGUuaW4uaW4KQEAgLTAsMCArMSw0NDQgQEAKKyMgTWFrZWZpbGUgZm9yIFBPIGRpcmVjdG9yeSBpbiBhbnkgcGFja2FnZSB1c2luZyBHTlUgZ2V0dGV4dC4KKyMgQ29weXJpZ2h0IChDKSAxOTk1LTE5OTcsIDIwMDAtMjAwNywgMjAwOS0yMDEwIGJ5IFVscmljaCBEcmVwcGVyIDxkcmVwcGVyQGdudS5haS5taXQuZWR1PgorIworIyBUaGlzIGZpbGUgY2FuIGJlIGNvcGllZCBhbmQgdXNlZCBmcmVlbHkgd2l0aG91dCByZXN0cmljdGlvbnMuICBJdCBjYW4KKyMgYmUgdXNlZCBpbiBwcm9qZWN0cyB3aGljaCBhcmUgbm90IGF2YWlsYWJsZSB1bmRlciB0aGUgR05VIEdlbmVyYWwgUHVibGljCisjIExpY2Vuc2UgYnV0IHdoaWNoIHN0aWxsIHdhbnQgdG8gcHJvdmlkZSBzdXBwb3J0IGZvciB0aGUgR05VIGdldHRleHQKKyMgZnVuY3Rpb25hbGl0eS4KKyMgUGxlYXNlIG5vdGUgdGhhdCB0aGUgYWN0dWFsIGNvZGUgb2YgR05VIGdldHRleHQgaXMgY292ZXJlZCBieSB0aGUgR05VCisjIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYW5kIGlzICpub3QqIGluIHRoZSBwdWJsaWMgZG9tYWluLgorIworIyBPcmlnaW46IGdldHRleHQtMC4xOAorR0VUVEVYVF9NQUNST19WRVJTSU9OID0gMC4xOAorCitQQUNLQUdFID0gQFBBQ0tBR0VACitWRVJTSU9OID0gQFZFUlNJT05ACitQQUNLQUdFX0JVR1JFUE9SVCA9IEBQQUNLQUdFX0JVR1JFUE9SVEAKKworU0hFTEwgPSAvYmluL3NoCitAU0VUX01BS0VACisKK3NyY2RpciA9IEBzcmNkaXJACit0b3Bfc3JjZGlyID0gQHRvcF9zcmNkaXJACitWUEFUSCA9IEBzcmNkaXJACisKK3ByZWZpeCA9IEBwcmVmaXhACitleGVjX3ByZWZpeCA9IEBleGVjX3ByZWZpeEAKK2RhdGFyb290ZGlyID0gQGRhdGFyb290ZGlyQAorZGF0YWRpciA9IEBkYXRhZGlyQAorbG9jYWxlZGlyID0gQGxvY2FsZWRpckAKK2dldHRleHRzcmNkaXIgPSAkKGRhdGFkaXIpL2dldHRleHQvcG8KKworSU5TVEFMTCA9IEBJTlNUQUxMQAorSU5TVEFMTF9EQVRBID0gQElOU1RBTExfREFUQUAKKworIyBXZSB1c2UgJChta2Rpcl9wKS4KKyMgSW4gYXV0b21ha2UgPD0gMS45LngsICQobWtkaXJfcCkgaXMgZGVmaW5lZCBlaXRoZXIgYXMgIm1rZGlyIC1wIC0tIiBvciBhcworIyAiJChta2luc3RhbGxkaXJzKSIgb3IgYXMgIiQoaW5zdGFsbF9zaCkgLWQiLiBGb3IgdGhlc2UgYXV0b21ha2UgdmVyc2lvbnMsCisjIEBpbnN0YWxsX3NoQCBkb2VzIG5vdCBzdGFydCB3aXRoICQoU0hFTEwpLCBzbyB3ZSBhZGQgaXQuCisjIEluIGF1dG9tYWtlID49IDEuMTAsIEBta2Rpcl9wQCBpcyBkZXJpdmVkIGZyb20gJHtNS0RJUl9QfSwgd2hpY2ggaXMgZGVmaW5lZAorIyBlaXRoZXIgYXMgIi9wYXRoL3RvL21rZGlyIC1wIiBvciAiLi4uL2luc3RhbGwtc2ggLWMgLWQiLiBGb3IgdGhlc2UgYXV0b21ha2UKKyMgdmVyc2lvbnMsICQobWtpbnN0YWxsZGlycykgYW5kICQoaW5zdGFsbF9zaCkgYXJlIHVudXNlZC4KK21raW5zdGFsbGRpcnMgPSAkKFNIRUxMKSBAaW5zdGFsbF9zaEAgLWQKK2luc3RhbGxfc2ggPSAkKFNIRUxMKSBAaW5zdGFsbF9zaEAKK01LRElSX1AgPSBATUtESVJfUEAKK21rZGlyX3AgPSBAbWtkaXJfcEAKKworR01TR0ZNVF8gPSBAR01TR0ZNVEAKK0dNU0dGTVRfbm8gPSBAR01TR0ZNVEAKK0dNU0dGTVRfeWVzID0gQEdNU0dGTVRfMDE1QAorR01TR0ZNVCA9ICQoR01TR0ZNVF8kKFVTRV9NU0dDVFhUKSkKK01TR0ZNVF8gPSBATVNHRk1UQAorTVNHRk1UX25vID0gQE1TR0ZNVEAKK01TR0ZNVF95ZXMgPSBATVNHRk1UXzAxNUAKK01TR0ZNVCA9ICQoTVNHRk1UXyQoVVNFX01TR0NUWFQpKQorWEdFVFRFWFRfID0gQFhHRVRURVhUQAorWEdFVFRFWFRfbm8gPSBAWEdFVFRFWFRACitYR0VUVEVYVF95ZXMgPSBAWEdFVFRFWFRfMDE1QAorWEdFVFRFWFQgPSAkKFhHRVRURVhUXyQoVVNFX01TR0NUWFQpKQorTVNHTUVSR0UgPSBtc2dtZXJnZQorTVNHTUVSR0VfVVBEQVRFID0gQE1TR01FUkdFQCAtLXVwZGF0ZQorTVNHSU5JVCA9IG1zZ2luaXQKK01TR0NPTlYgPSBtc2djb252CitNU0dGSUxURVIgPSBtc2dmaWx0ZXIKKworUE9GSUxFUyA9IEBQT0ZJTEVTQAorR01PRklMRVMgPSBAR01PRklMRVNACitVUERBVEVQT0ZJTEVTID0gQFVQREFURVBPRklMRVNACitEVU1NWVBPRklMRVMgPSBARFVNTVlQT0ZJTEVTQAorRElTVEZJTEVTLmNvbW1vbiA9IE1ha2VmaWxlLmluLmluIHJlbW92ZS1wb3RjZGF0ZS5zaW4gXAorJChESVNURklMRVMuY29tbW9uLmV4dHJhMSkgJChESVNURklMRVMuY29tbW9uLmV4dHJhMikgJChESVNURklMRVMuY29tbW9uLmV4dHJhMykKK0RJU1RGSUxFUyA9ICQoRElTVEZJTEVTLmNvbW1vbikgTWFrZXZhcnMgUE9URklMRVMuaW4gXAorJChQT0ZJTEVTKSAkKEdNT0ZJTEVTKSBcCiskKERJU1RGSUxFUy5leHRyYTEpICQoRElTVEZJTEVTLmV4dHJhMikgJChESVNURklMRVMuZXh0cmEzKQorCitQT1RGSUxFUyA9IFwKKworQ0FUQUxPR1MgPSBAQ0FUQUxPR1NACisKKyMgTWFrZXZhcnMgZ2V0cyBpbnNlcnRlZCBoZXJlLiAoRG9uJ3QgcmVtb3ZlIHRoaXMgbGluZSEpCisKKy5TVUZGSVhFUzoKKy5TVUZGSVhFUzogLnBvIC5nbW8gLm1vIC5zZWQgLnNpbiAubm9wIC5wby1jcmVhdGUgLnBvLXVwZGF0ZQorCisucG8ubW86CisJQGVjaG8gIiQoTVNHRk1UKSAtYyAtbyAkQCAkPCI7IFwKKwkkKE1TR0ZNVCkgLWMgLW8gdC0kQCAkPCAmJiBtdiB0LSRAICRACisKKy5wby5nbW86CisJQGxhbmc9YGVjaG8gJCogfCBzZWQgLWUgJ3MsLiovLCwnYDsgXAorCXRlc3QgIiQoc3JjZGlyKSIgPSAuICYmIGNkY21kPSIiIHx8IGNkY21kPSJjZCAkKHNyY2RpcikgJiYgIjsgXAorCWVjaG8gIiQke2NkY21kfXJtIC1mICQke2xhbmd9LmdtbyAmJiAkKEdNU0dGTVQpIC1jIC0tc3RhdGlzdGljcyAtLXZlcmJvc2UgLW8gJCR7bGFuZ30uZ21vICQke2xhbmd9LnBvIjsgXAorCWNkICQoc3JjZGlyKSAmJiBybSAtZiAkJHtsYW5nfS5nbW8gJiYgJChHTVNHRk1UKSAtYyAtLXN0YXRpc3RpY3MgLS12ZXJib3NlIC1vIHQtJCR7bGFuZ30uZ21vICQke2xhbmd9LnBvICYmIG12IHQtJCR7bGFuZ30uZ21vICQke2xhbmd9LmdtbworCisuc2luLnNlZDoKKwlzZWQgLWUgJy9eIy9kJyAkPCA+IHQtJEAKKwltdiB0LSRAICRACisKKworYWxsOiBjaGVjay1tYWNyby12ZXJzaW9uIGFsbC1AVVNFX05MU0AKKworYWxsLXllczogc3RhbXAtcG8KK2FsbC1ubzoKKworIyBFbnN1cmUgdGhhdCB0aGUgZ2V0dGV4dCBtYWNyb3MgYW5kIHRoaXMgTWFrZWZpbGUuaW4uaW4gYXJlIGluIHN5bmMuCitjaGVjay1tYWNyby12ZXJzaW9uOgorCUB0ZXN0ICIkKEdFVFRFWFRfTUFDUk9fVkVSU0lPTikiID0gIkBHRVRURVhUX01BQ1JPX1ZFUlNJT05AIiBcCisJICB8fCB7IGVjaG8gIioqKiBlcnJvcjogZ2V0dGV4dCBpbmZyYXN0cnVjdHVyZSBtaXNtYXRjaDogdXNpbmcgYSBNYWtlZmlsZS5pbi5pbiBmcm9tIGdldHRleHQgdmVyc2lvbiAkKEdFVFRFWFRfTUFDUk9fVkVSU0lPTikgYnV0IHRoZSBhdXRvY29uZiBtYWNyb3MgYXJlIGZyb20gZ2V0dGV4dCB2ZXJzaW9uIEBHRVRURVhUX01BQ1JPX1ZFUlNJT05AIiAxPiYyOyBcCisJICAgICAgIGV4aXQgMTsgXAorCSAgICAgfQorCisjICQoc3JjZGlyKS8kKERPTUFJTikucG90IGlzIG9ubHkgY3JlYXRlZCB3aGVuIG5lZWRlZC4gV2hlbiB4Z2V0dGV4dCBmaW5kcyBubworIyBpbnRlcm5hdGlvbmFsaXplZCBtZXNzYWdlcywgbm8gJChzcmNkaXIpLyQoRE9NQUlOKS5wb3QgaXMgY3JlYXRlZCAoYmVjYXVzZQorIyB3ZSBkb24ndCB3YW50IHRvIGJvdGhlciB0cmFuc2xhdG9ycyB3aXRoIGVtcHR5IFBPVCBmaWxlcykuIFdlIGFzc3VtZSB0aGF0CisjIExJTkdVQVMgaXMgZW1wdHkgaW4gdGhpcyBjYXNlLCBpLmUuICQoUE9GSUxFUykgYW5kICQoR01PRklMRVMpIGFyZSBlbXB0eS4KKyMgSW4gdGhpcyBjYXNlLCBzdGFtcC1wbyBpcyBhIG5vcCAoaS5lLiBhIHBob255IHRhcmdldCkuCisKKyMgc3RhbXAtcG8gaXMgYSB0aW1lc3RhbXAgZGVub3RpbmcgdGhlIGxhc3QgdGltZSBhdCB3aGljaCB0aGUgQ0FUQUxPR1MgaGF2ZQorIyBiZWVuIGxvb3NlbHkgdXBkYXRlZC4gSXRzIHB1cnBvc2UgaXMgdGhhdCB3aGVuIGEgZGV2ZWxvcGVyIG9yIHRyYW5zbGF0b3IKKyMgY2hlY2tzIG91dCB0aGUgcGFja2FnZSB2aWEgQ1ZTLCBhbmQgdGhlICQoRE9NQUlOKS5wb3QgZmlsZSBpcyBub3QgaW4gQ1ZTLAorIyAibWFrZSIgd2lsbCB1cGRhdGUgdGhlICQoRE9NQUlOKS5wb3QgYW5kIHRoZSAkKENBVEFMT0dTKSwgYnV0IHN1YnNlcXVlbnQKKyMgaW52b2NhdGlvbnMgb2YgIm1ha2UiIHdpbGwgZG8gbm90aGluZy4gVGhpcyB0aW1lc3RhbXAgd291bGQgbm90IGJlIG5lY2Vzc2FyeQorIyBpZiB1cGRhdGluZyB0aGUgJChDQVRBTE9HUykgd291bGQgYWx3YXlzIHRvdWNoIHRoZW07IGhvd2V2ZXIsIHRoZSBydWxlIGZvcgorIyAkKFBPRklMRVMpIGhhcyBiZWVuIGRlc2lnbmVkIHRvIG5vdCB0b3VjaCBmaWxlcyB0aGF0IGRvbid0IG5lZWQgdG8gYmUKKyMgY2hhbmdlZC4KK3N0YW1wLXBvOiAkKHNyY2RpcikvJChET01BSU4pLnBvdAorCXRlc3QgISAtZiAkKHNyY2RpcikvJChET01BSU4pLnBvdCB8fCBcCisJICB0ZXN0IC16ICIkKEdNT0ZJTEVTKSIgfHwgJChNQUtFKSAkKEdNT0ZJTEVTKQorCUB0ZXN0ICEgLWYgJChzcmNkaXIpLyQoRE9NQUlOKS5wb3QgfHwgeyBcCisJICBlY2hvICJ0b3VjaCBzdGFtcC1wbyIgJiYgXAorCSAgZWNobyB0aW1lc3RhbXAgPiBzdGFtcC1wb1QgJiYgXAorCSAgbXYgc3RhbXAtcG9UIHN0YW1wLXBvOyBcCisJfQorCisjIE5vdGU6IFRhcmdldCAnYWxsJyBtdXN0IG5vdCBkZXBlbmQgb24gdGFyZ2V0ICckKERPTUFJTikucG90LXVwZGF0ZScsCisjIG90aGVyd2lzZSBwYWNrYWdlcyBsaWtlIEdDQyBjYW4gbm90IGJlIGJ1aWx0IGlmIG9ubHkgcGFydHMgb2YgdGhlIHNvdXJjZQorIyBoYXZlIGJlZW4gZG93bmxvYWRlZC4KKworIyBUaGlzIHRhcmdldCByZWJ1aWxkcyAkKERPTUFJTikucG90OyBpdCBpcyBhbiBleHBlbnNpdmUgb3BlcmF0aW9uLgorIyBOb3RlIHRoYXQgJChET01BSU4pLnBvdCBpcyBub3QgdG91Y2hlZCBpZiBpdCBkb2Vzbid0IG5lZWQgdG8gYmUgY2hhbmdlZC4KKyQoRE9NQUlOKS5wb3QtdXBkYXRlOiAkKFBPVEZJTEVTKSAkKHNyY2RpcikvUE9URklMRVMuaW4gcmVtb3ZlLXBvdGNkYXRlLnNlZAorCWlmIExDX0FMTD1DIGdyZXAgJ0dOVSBAUEFDS0FHRUAnICQodG9wX3NyY2RpcikvKiAyPi9kZXYvbnVsbCB8IGdyZXAgLXYgJ2xpYnRvb2w6JyA+L2Rldi9udWxsOyB0aGVuIFwKKwkgIHBhY2thZ2VfZ251PSdHTlUgJzsgXAorCWVsc2UgXAorCSAgcGFja2FnZV9nbnU9Jyc7IFwKKwlmaTsgXAorCWlmIHRlc3QgLW4gJyQoTVNHSURfQlVHU19BRERSRVNTKScgfHwgdGVzdCAnJChQQUNLQUdFX0JVR1JFUE9SVCknID0gJ0AnUEFDS0FHRV9CVUdSRVBPUlQnQCc7IHRoZW4gXAorCSAgbXNnaWRfYnVnc19hZGRyZXNzPSckKE1TR0lEX0JVR1NfQUREUkVTUyknOyBcCisJZWxzZSBcCisJICBtc2dpZF9idWdzX2FkZHJlc3M9JyQoUEFDS0FHRV9CVUdSRVBPUlQpJzsgXAorCWZpOyBcCisJY2FzZSBgJChYR0VUVEVYVCkgLS12ZXJzaW9uIHwgc2VkIDFxIHwgc2VkIC1lICdzLF5bXjAtOV0qLCwnYCBpbiBcCisJICAnJyB8IDAuWzAtOV0gfCAwLlswLTldLiogfCAwLjFbMC01XSB8IDAuMVswLTVdLiogfCAwLjE2IHwgMC4xNi5bMC0xXSopIFwKKwkgICAgJChYR0VUVEVYVCkgLS1kZWZhdWx0LWRvbWFpbj0kKERPTUFJTikgLS1kaXJlY3Rvcnk9JCh0b3Bfc3JjZGlyKSBcCisJICAgICAgLS1hZGQtY29tbWVudHM9VFJBTlNMQVRPUlM6ICQoWEdFVFRFWFRfT1BUSU9OUykgQFhHRVRURVhUX0VYVFJBX09QVElPTlNAIFwKKwkgICAgICAtLWZpbGVzLWZyb209JChzcmNkaXIpL1BPVEZJTEVTLmluIFwKKwkgICAgICAtLWNvcHlyaWdodC1ob2xkZXI9JyQoQ09QWVJJR0hUX0hPTERFUiknIFwKKwkgICAgICAtLW1zZ2lkLWJ1Z3MtYWRkcmVzcz0iJCRtc2dpZF9idWdzX2FkZHJlc3MiIFwKKwkgICAgOzsgXAorCSAgKikgXAorCSAgICAkKFhHRVRURVhUKSAtLWRlZmF1bHQtZG9tYWluPSQoRE9NQUlOKSAtLWRpcmVjdG9yeT0kKHRvcF9zcmNkaXIpIFwKKwkgICAgICAtLWFkZC1jb21tZW50cz1UUkFOU0xBVE9SUzogJChYR0VUVEVYVF9PUFRJT05TKSBAWEdFVFRFWFRfRVhUUkFfT1BUSU9OU0AgXAorCSAgICAgIC0tZmlsZXMtZnJvbT0kKHNyY2RpcikvUE9URklMRVMuaW4gXAorCSAgICAgIC0tY29weXJpZ2h0LWhvbGRlcj0nJChDT1BZUklHSFRfSE9MREVSKScgXAorCSAgICAgIC0tcGFja2FnZS1uYW1lPSIkJHtwYWNrYWdlX2dudX1AUEFDS0FHRUAiIFwKKwkgICAgICAtLXBhY2thZ2UtdmVyc2lvbj0nQFZFUlNJT05AJyBcCisJICAgICAgLS1tc2dpZC1idWdzLWFkZHJlc3M9IiQkbXNnaWRfYnVnc19hZGRyZXNzIiBcCisJICAgIDs7IFwKKwllc2FjCisJdGVzdCAhIC1mICQoRE9NQUlOKS5wbyB8fCB7IFwKKwkgIGlmIHRlc3QgLWYgJChzcmNkaXIpLyQoRE9NQUlOKS5wb3Q7IHRoZW4gXAorCSAgICBzZWQgLWYgcmVtb3ZlLXBvdGNkYXRlLnNlZCA8ICQoc3JjZGlyKS8kKERPTUFJTikucG90ID4gJChET01BSU4pLjFwbyAmJiBcCisJICAgIHNlZCAtZiByZW1vdmUtcG90Y2RhdGUuc2VkIDwgJChET01BSU4pLnBvID4gJChET01BSU4pLjJwbyAmJiBcCisJICAgIGlmIGNtcCAkKERPTUFJTikuMXBvICQoRE9NQUlOKS4ycG8gPi9kZXYvbnVsbCAyPiYxOyB0aGVuIFwKKwkgICAgICBybSAtZiAkKERPTUFJTikuMXBvICQoRE9NQUlOKS4ycG8gJChET01BSU4pLnBvOyBcCisJICAgIGVsc2UgXAorCSAgICAgIHJtIC1mICQoRE9NQUlOKS4xcG8gJChET01BSU4pLjJwbyAkKHNyY2RpcikvJChET01BSU4pLnBvdCAmJiBcCisJICAgICAgbXYgJChET01BSU4pLnBvICQoc3JjZGlyKS8kKERPTUFJTikucG90OyBcCisJICAgIGZpOyBcCisJICBlbHNlIFwKKwkgICAgbXYgJChET01BSU4pLnBvICQoc3JjZGlyKS8kKERPTUFJTikucG90OyBcCisJICBmaTsgXAorCX0KKworIyBUaGlzIHJ1bGUgaGFzIG5vIGRlcGVuZGVuY2llczogd2UgZG9uJ3QgbmVlZCB0byB1cGRhdGUgJChET01BSU4pLnBvdCBhdAorIyBldmVyeSAibWFrZSIgaW52b2NhdGlvbiwgb25seSBjcmVhdGUgaXQgd2hlbiBpdCBpcyBtaXNzaW5nLgorIyBPbmx5ICJtYWtlICQoRE9NQUlOKS5wb3QtdXBkYXRlIiBvciAibWFrZSBkaXN0IiB3aWxsIGZvcmNlIGFuIHVwZGF0ZS4KKyQoc3JjZGlyKS8kKERPTUFJTikucG90OgorCSQoTUFLRSkgJChET01BSU4pLnBvdC11cGRhdGUKKworIyBUaGlzIHRhcmdldCByZWJ1aWxkcyBhIFBPIGZpbGUgaWYgJChET01BSU4pLnBvdCBoYXMgY2hhbmdlZC4KKyMgTm90ZSB0aGF0IGEgUE8gZmlsZSBpcyBub3QgdG91Y2hlZCBpZiBpdCBkb2Vzbid0IG5lZWQgdG8gYmUgY2hhbmdlZC4KKyQoUE9GSUxFUyk6ICQoc3JjZGlyKS8kKERPTUFJTikucG90CisJQGxhbmc9YGVjaG8gJEAgfCBzZWQgLWUgJ3MsLiovLCwnIC1lICdzL1wucG8kJC8vJ2A7IFwKKwlpZiB0ZXN0IC1mICIkKHNyY2RpcikvJCR7bGFuZ30ucG8iOyB0aGVuIFwKKwkgIHRlc3QgIiQoc3JjZGlyKSIgPSAuICYmIGNkY21kPSIiIHx8IGNkY21kPSJjZCAkKHNyY2RpcikgJiYgIjsgXAorCSAgZWNobyAiJCR7Y2RjbWR9JChNU0dNRVJHRV9VUERBVEUpICQoTVNHTUVSR0VfT1BUSU9OUykgLS1sYW5nPSQke2xhbmd9ICQke2xhbmd9LnBvICQoRE9NQUlOKS5wb3QiOyBcCisJICBjZCAkKHNyY2RpcikgXAorCSAgICAmJiB7IGNhc2UgYCQoTVNHTUVSR0VfVVBEQVRFKSAtLXZlcnNpb24gfCBzZWQgMXEgfCBzZWQgLWUgJ3MsXlteMC05XSosLCdgIGluIFwKKwkgICAgICAgICAgICcnIHwgMC5bMC05XSB8IDAuWzAtOV0uKiB8IDAuMVswLTddIHwgMC4xWzAtN10uKikgXAorCSAgICAgICAgICAgICAkKE1TR01FUkdFX1VQREFURSkgJChNU0dNRVJHRV9PUFRJT05TKSAkJHtsYW5nfS5wbyAkKERPTUFJTikucG90OzsgXAorCSAgICAgICAgICAgKikgXAorCSAgICAgICAgICAgICAkKE1TR01FUkdFX1VQREFURSkgJChNU0dNRVJHRV9PUFRJT05TKSAtLWxhbmc9JCR7bGFuZ30gJCR7bGFuZ30ucG8gJChET01BSU4pLnBvdDs7IFwKKwkgICAgICAgICBlc2FjOyBcCisJICAgICAgIH07IFwKKwllbHNlIFwKKwkgICQoTUFLRSkgJCR7bGFuZ30ucG8tY3JlYXRlOyBcCisJZmkKKworCitpbnN0YWxsOiBpbnN0YWxsLWV4ZWMgaW5zdGFsbC1kYXRhCitpbnN0YWxsLWV4ZWM6CitpbnN0YWxsLWRhdGE6IGluc3RhbGwtZGF0YS1AVVNFX05MU0AKKwlpZiB0ZXN0ICIkKFBBQ0tBR0UpIiA9ICJnZXR0ZXh0LXRvb2xzIjsgdGhlbiBcCisJICAkKG1rZGlyX3ApICQoREVTVERJUikkKGdldHRleHRzcmNkaXIpOyBcCisJICBmb3IgZmlsZSBpbiAkKERJU1RGSUxFUy5jb21tb24pIE1ha2V2YXJzLnRlbXBsYXRlOyBkbyBcCisJICAgICQoSU5TVEFMTF9EQVRBKSAkKHNyY2RpcikvJCRmaWxlIFwKKwkJCSAgICAkKERFU1RESVIpJChnZXR0ZXh0c3JjZGlyKS8kJGZpbGU7IFwKKwkgIGRvbmU7IFwKKwkgIGZvciBmaWxlIGluIE1ha2V2YXJzOyBkbyBcCisJICAgIHJtIC1mICQoREVTVERJUikkKGdldHRleHRzcmNkaXIpLyQkZmlsZTsgXAorCSAgZG9uZTsgXAorCWVsc2UgXAorCSAgOiA7IFwKKwlmaQoraW5zdGFsbC1kYXRhLW5vOiBhbGwKK2luc3RhbGwtZGF0YS15ZXM6IGFsbAorCUBjYXRhbG9ncz0nJChDQVRBTE9HUyknOyBcCisJZm9yIGNhdCBpbiAkJGNhdGFsb2dzOyBkbyBcCisJICBjYXQ9YGJhc2VuYW1lICQkY2F0YDsgXAorCSAgbGFuZz1gZWNobyAkJGNhdCB8IHNlZCAtZSAncy9cLmdtbyQkLy8nYDsgXAorCSAgZGlyPSQobG9jYWxlZGlyKS8kJGxhbmcvTENfTUVTU0FHRVM7IFwKKwkgICQobWtkaXJfcCkgJChERVNURElSKSQkZGlyOyBcCisJICBpZiB0ZXN0IC1yICQkY2F0OyB0aGVuIHJlYWxjYXQ9JCRjYXQ7IGVsc2UgcmVhbGNhdD0kKHNyY2RpcikvJCRjYXQ7IGZpOyBcCisJICAkKElOU1RBTExfREFUQSkgJCRyZWFsY2F0ICQoREVTVERJUikkJGRpci8kKERPTUFJTikubW87IFwKKwkgIGVjaG8gImluc3RhbGxpbmcgJCRyZWFsY2F0IGFzICQoREVTVERJUikkJGRpci8kKERPTUFJTikubW8iOyBcCisJICBmb3IgbGMgaW4gJycgJChFWFRSQV9MT0NBTEVfQ0FURUdPUklFUyk7IGRvIFwKKwkgICAgaWYgdGVzdCAtbiAiJCRsYyI7IHRoZW4gXAorCSAgICAgIGlmIChjZCAkKERFU1RESVIpJChsb2NhbGVkaXIpLyQkbGFuZyAmJiBMQ19BTEw9QyBscyAtbCAtZCAkJGxjIDI+L2Rldi9udWxsKSB8IGdyZXAgJyAtPiAnID4vZGV2L251bGw7IHRoZW4gXAorCSAgICAgICAgbGluaz1gY2QgJChERVNURElSKSQobG9jYWxlZGlyKS8kJGxhbmcgJiYgTENfQUxMPUMgbHMgLWwgLWQgJCRsYyB8IHNlZCAtZSAncy9eLiogLT4gLy8nYDsgXAorCSAgICAgICAgbXYgJChERVNURElSKSQobG9jYWxlZGlyKS8kJGxhbmcvJCRsYyAkKERFU1RESVIpJChsb2NhbGVkaXIpLyQkbGFuZy8kJGxjLm9sZDsgXAorCSAgICAgICAgbWtkaXIgJChERVNURElSKSQobG9jYWxlZGlyKS8kJGxhbmcvJCRsYzsgXAorCSAgICAgICAgKGNkICQoREVTVERJUikkKGxvY2FsZWRpcikvJCRsYW5nLyQkbGMub2xkICYmIFwKKwkgICAgICAgICBmb3IgZmlsZSBpbiAqOyBkbyBcCisJICAgICAgICAgICBpZiB0ZXN0IC1mICQkZmlsZTsgdGhlbiBcCisJICAgICAgICAgICAgIGxuIC1zIC4uLyQkbGluay8kJGZpbGUgJChERVNURElSKSQobG9jYWxlZGlyKS8kJGxhbmcvJCRsYy8kJGZpbGU7IFwKKwkgICAgICAgICAgIGZpOyBcCisJICAgICAgICAgZG9uZSk7IFwKKwkgICAgICAgIHJtIC1mICQoREVTVERJUikkKGxvY2FsZWRpcikvJCRsYW5nLyQkbGMub2xkOyBcCisJICAgICAgZWxzZSBcCisJICAgICAgICBpZiB0ZXN0IC1kICQoREVTVERJUikkKGxvY2FsZWRpcikvJCRsYW5nLyQkbGM7IHRoZW4gXAorCSAgICAgICAgICA6OyBcCisJICAgICAgICBlbHNlIFwKKwkgICAgICAgICAgcm0gLWYgJChERVNURElSKSQobG9jYWxlZGlyKS8kJGxhbmcvJCRsYzsgXAorCSAgICAgICAgICBta2RpciAkKERFU1RESVIpJChsb2NhbGVkaXIpLyQkbGFuZy8kJGxjOyBcCisJICAgICAgICBmaTsgXAorCSAgICAgIGZpOyBcCisJICAgICAgcm0gLWYgJChERVNURElSKSQobG9jYWxlZGlyKS8kJGxhbmcvJCRsYy8kKERPTUFJTikubW87IFwKKwkgICAgICBsbiAtcyAuLi9MQ19NRVNTQUdFUy8kKERPTUFJTikubW8gJChERVNURElSKSQobG9jYWxlZGlyKS8kJGxhbmcvJCRsYy8kKERPTUFJTikubW8gMj4vZGV2L251bGwgfHwgXAorCSAgICAgIGxuICQoREVTVERJUikkKGxvY2FsZWRpcikvJCRsYW5nL0xDX01FU1NBR0VTLyQoRE9NQUlOKS5tbyAkKERFU1RESVIpJChsb2NhbGVkaXIpLyQkbGFuZy8kJGxjLyQoRE9NQUlOKS5tbyAyPi9kZXYvbnVsbCB8fCBcCisJICAgICAgY3AgLXAgJChERVNURElSKSQobG9jYWxlZGlyKS8kJGxhbmcvTENfTUVTU0FHRVMvJChET01BSU4pLm1vICQoREVTVERJUikkKGxvY2FsZWRpcikvJCRsYW5nLyQkbGMvJChET01BSU4pLm1vOyBcCisJICAgICAgZWNobyAiaW5zdGFsbGluZyAkJHJlYWxjYXQgbGluayBhcyAkKERFU1RESVIpJChsb2NhbGVkaXIpLyQkbGFuZy8kJGxjLyQoRE9NQUlOKS5tbyI7IFwKKwkgICAgZmk7IFwKKwkgIGRvbmU7IFwKKwlkb25lCisKK2luc3RhbGwtc3RyaXA6IGluc3RhbGwKKworaW5zdGFsbGRpcnM6IGluc3RhbGxkaXJzLWV4ZWMgaW5zdGFsbGRpcnMtZGF0YQoraW5zdGFsbGRpcnMtZXhlYzoKK2luc3RhbGxkaXJzLWRhdGE6IGluc3RhbGxkaXJzLWRhdGEtQFVTRV9OTFNACisJaWYgdGVzdCAiJChQQUNLQUdFKSIgPSAiZ2V0dGV4dC10b29scyI7IHRoZW4gXAorCSAgJChta2Rpcl9wKSAkKERFU1RESVIpJChnZXR0ZXh0c3JjZGlyKTsgXAorCWVsc2UgXAorCSAgOiA7IFwKKwlmaQoraW5zdGFsbGRpcnMtZGF0YS1ubzoKK2luc3RhbGxkaXJzLWRhdGEteWVzOgorCUBjYXRhbG9ncz0nJChDQVRBTE9HUyknOyBcCisJZm9yIGNhdCBpbiAkJGNhdGFsb2dzOyBkbyBcCisJICBjYXQ9YGJhc2VuYW1lICQkY2F0YDsgXAorCSAgbGFuZz1gZWNobyAkJGNhdCB8IHNlZCAtZSAncy9cLmdtbyQkLy8nYDsgXAorCSAgZGlyPSQobG9jYWxlZGlyKS8kJGxhbmcvTENfTUVTU0FHRVM7IFwKKwkgICQobWtkaXJfcCkgJChERVNURElSKSQkZGlyOyBcCisJICBmb3IgbGMgaW4gJycgJChFWFRSQV9MT0NBTEVfQ0FURUdPUklFUyk7IGRvIFwKKwkgICAgaWYgdGVzdCAtbiAiJCRsYyI7IHRoZW4gXAorCSAgICAgIGlmIChjZCAkKERFU1RESVIpJChsb2NhbGVkaXIpLyQkbGFuZyAmJiBMQ19BTEw9QyBscyAtbCAtZCAkJGxjIDI+L2Rldi9udWxsKSB8IGdyZXAgJyAtPiAnID4vZGV2L251bGw7IHRoZW4gXAorCSAgICAgICAgbGluaz1gY2QgJChERVNURElSKSQobG9jYWxlZGlyKS8kJGxhbmcgJiYgTENfQUxMPUMgbHMgLWwgLWQgJCRsYyB8IHNlZCAtZSAncy9eLiogLT4gLy8nYDsgXAorCSAgICAgICAgbXYgJChERVNURElSKSQobG9jYWxlZGlyKS8kJGxhbmcvJCRsYyAkKERFU1RESVIpJChsb2NhbGVkaXIpLyQkbGFuZy8kJGxjLm9sZDsgXAorCSAgICAgICAgbWtkaXIgJChERVNURElSKSQobG9jYWxlZGlyKS8kJGxhbmcvJCRsYzsgXAorCSAgICAgICAgKGNkICQoREVTVERJUikkKGxvY2FsZWRpcikvJCRsYW5nLyQkbGMub2xkICYmIFwKKwkgICAgICAgICBmb3IgZmlsZSBpbiAqOyBkbyBcCisJICAgICAgICAgICBpZiB0ZXN0IC1mICQkZmlsZTsgdGhlbiBcCisJICAgICAgICAgICAgIGxuIC1zIC4uLyQkbGluay8kJGZpbGUgJChERVNURElSKSQobG9jYWxlZGlyKS8kJGxhbmcvJCRsYy8kJGZpbGU7IFwKKwkgICAgICAgICAgIGZpOyBcCisJICAgICAgICAgZG9uZSk7IFwKKwkgICAgICAgIHJtIC1mICQoREVTVERJUikkKGxvY2FsZWRpcikvJCRsYW5nLyQkbGMub2xkOyBcCisJICAgICAgZWxzZSBcCisJICAgICAgICBpZiB0ZXN0IC1kICQoREVTVERJUikkKGxvY2FsZWRpcikvJCRsYW5nLyQkbGM7IHRoZW4gXAorCSAgICAgICAgICA6OyBcCisJICAgICAgICBlbHNlIFwKKwkgICAgICAgICAgcm0gLWYgJChERVNURElSKSQobG9jYWxlZGlyKS8kJGxhbmcvJCRsYzsgXAorCSAgICAgICAgICBta2RpciAkKERFU1RESVIpJChsb2NhbGVkaXIpLyQkbGFuZy8kJGxjOyBcCisJICAgICAgICBmaTsgXAorCSAgICAgIGZpOyBcCisJICAgIGZpOyBcCisJICBkb25lOyBcCisJZG9uZQorCisjIERlZmluZSB0aGlzIGFzIGVtcHR5IHVudGlsIEkgZm91bmQgYSB1c2VmdWwgYXBwbGljYXRpb24uCitpbnN0YWxsY2hlY2s6CisKK3VuaW5zdGFsbDogdW5pbnN0YWxsLWV4ZWMgdW5pbnN0YWxsLWRhdGEKK3VuaW5zdGFsbC1leGVjOgordW5pbnN0YWxsLWRhdGE6IHVuaW5zdGFsbC1kYXRhLUBVU0VfTkxTQAorCWlmIHRlc3QgIiQoUEFDS0FHRSkiID0gImdldHRleHQtdG9vbHMiOyB0aGVuIFwKKwkgIGZvciBmaWxlIGluICQoRElTVEZJTEVTLmNvbW1vbikgTWFrZXZhcnMudGVtcGxhdGU7IGRvIFwKKwkgICAgcm0gLWYgJChERVNURElSKSQoZ2V0dGV4dHNyY2RpcikvJCRmaWxlOyBcCisJICBkb25lOyBcCisJZWxzZSBcCisJICA6IDsgXAorCWZpCit1bmluc3RhbGwtZGF0YS1ubzoKK3VuaW5zdGFsbC1kYXRhLXllczoKKwljYXRhbG9ncz0nJChDQVRBTE9HUyknOyBcCisJZm9yIGNhdCBpbiAkJGNhdGFsb2dzOyBkbyBcCisJICBjYXQ9YGJhc2VuYW1lICQkY2F0YDsgXAorCSAgbGFuZz1gZWNobyAkJGNhdCB8IHNlZCAtZSAncy9cLmdtbyQkLy8nYDsgXAorCSAgZm9yIGxjIGluIExDX01FU1NBR0VTICQoRVhUUkFfTE9DQUxFX0NBVEVHT1JJRVMpOyBkbyBcCisJICAgIHJtIC1mICQoREVTVERJUikkKGxvY2FsZWRpcikvJCRsYW5nLyQkbGMvJChET01BSU4pLm1vOyBcCisJICBkb25lOyBcCisJZG9uZQorCitjaGVjazogYWxsCisKK2luZm8gZHZpIHBzIHBkZiBodG1sIHRhZ3MgVEFHUyBjdGFncyBDVEFHUyBJRDoKKworbW9zdGx5Y2xlYW46CisJcm0gLWYgcmVtb3ZlLXBvdGNkYXRlLnNlZAorCXJtIC1mIHN0YW1wLXBvVAorCXJtIC1mIGNvcmUgY29yZS4qICQoRE9NQUlOKS5wbyAkKERPTUFJTikuMXBvICQoRE9NQUlOKS4ycG8gKi5uZXcucG8KKwlybSAtZnIgKi5vCisKK2NsZWFuOiBtb3N0bHljbGVhbgorCitkaXN0Y2xlYW46IGNsZWFuCisJcm0gLWYgTWFrZWZpbGUgTWFrZWZpbGUuaW4gUE9URklMRVMgKi5tbworCittYWludGFpbmVyLWNsZWFuOiBkaXN0Y2xlYW4KKwlAZWNobyAiVGhpcyBjb21tYW5kIGlzIGludGVuZGVkIGZvciBtYWludGFpbmVycyB0byB1c2U7IgorCUBlY2hvICJpdCBkZWxldGVzIGZpbGVzIHRoYXQgbWF5IHJlcXVpcmUgc3BlY2lhbCB0b29scyB0byByZWJ1aWxkLiIKKwlybSAtZiBzdGFtcC1wbyAkKEdNT0ZJTEVTKQorCitkaXN0ZGlyID0gJCh0b3BfYnVpbGRkaXIpLyQoUEFDS0FHRSktJChWRVJTSU9OKS8kKHN1YmRpcikKK2Rpc3QgZGlzdGRpcjoKKwkkKE1BS0UpIHVwZGF0ZS1wbworCUAkKE1BS0UpIGRpc3QyCisjIFRoaXMgaXMgYSBzZXBhcmF0ZSB0YXJnZXQgYmVjYXVzZSAndXBkYXRlLXBvJyBtdXN0IGJlIGV4ZWN1dGVkIGJlZm9yZS4KK2Rpc3QyOiBzdGFtcC1wbyAkKERJU1RGSUxFUykKKwlkaXN0cz0iJChESVNURklMRVMpIjsgXAorCWlmIHRlc3QgIiQoUEFDS0FHRSkiID0gImdldHRleHQtdG9vbHMiOyB0aGVuIFwKKwkgIGRpc3RzPSIkJGRpc3RzIE1ha2V2YXJzLnRlbXBsYXRlIjsgXAorCWZpOyBcCisJaWYgdGVzdCAtZiAkKHNyY2RpcikvJChET01BSU4pLnBvdDsgdGhlbiBcCisJICBkaXN0cz0iJCRkaXN0cyAkKERPTUFJTikucG90IHN0YW1wLXBvIjsgXAorCWZpOyBcCisJaWYgdGVzdCAtZiAkKHNyY2RpcikvQ2hhbmdlTG9nOyB0aGVuIFwKKwkgIGRpc3RzPSIkJGRpc3RzIENoYW5nZUxvZyI7IFwKKwlmaTsgXAorCWZvciBpIGluIDAgMSAyIDMgNCA1IDYgNyA4IDk7IGRvIFwKKwkgIGlmIHRlc3QgLWYgJChzcmNkaXIpL0NoYW5nZUxvZy4kJGk7IHRoZW4gXAorCSAgICBkaXN0cz0iJCRkaXN0cyBDaGFuZ2VMb2cuJCRpIjsgXAorCSAgZmk7IFwKKwlkb25lOyBcCisJaWYgdGVzdCAtZiAkKHNyY2RpcikvTElOR1VBUzsgdGhlbiBkaXN0cz0iJCRkaXN0cyBMSU5HVUFTIjsgZmk7IFwKKwlmb3IgZmlsZSBpbiAkJGRpc3RzOyBkbyBcCisJICBpZiB0ZXN0IC1mICQkZmlsZTsgdGhlbiBcCisJICAgIGNwIC1wICQkZmlsZSAkKGRpc3RkaXIpIHx8IGV4aXQgMTsgXAorCSAgZWxzZSBcCisJICAgIGNwIC1wICQoc3JjZGlyKS8kJGZpbGUgJChkaXN0ZGlyKSB8fCBleGl0IDE7IFwKKwkgIGZpOyBcCisJZG9uZQorCit1cGRhdGUtcG86IE1ha2VmaWxlCisJJChNQUtFKSAkKERPTUFJTikucG90LXVwZGF0ZQorCXRlc3QgLXogIiQoVVBEQVRFUE9GSUxFUykiIHx8ICQoTUFLRSkgJChVUERBVEVQT0ZJTEVTKQorCSQoTUFLRSkgdXBkYXRlLWdtbworCisjIEdlbmVyYWwgcnVsZSBmb3IgY3JlYXRpbmcgUE8gZmlsZXMuCisKKy5ub3AucG8tY3JlYXRlOgorCUBsYW5nPWBlY2hvICRAIHwgc2VkIC1lICdzL1wucG8tY3JlYXRlJCQvLydgOyBcCisJZWNobyAiRmlsZSAkJGxhbmcucG8gZG9lcyBub3QgZXhpc3QuIElmIHlvdSBhcmUgYSB0cmFuc2xhdG9yLCB5b3UgY2FuIGNyZWF0ZSBpdCB0aHJvdWdoICdtc2dpbml0Jy4iIDE+JjI7IFwKKwlleGl0IDEKKworIyBHZW5lcmFsIHJ1bGUgZm9yIHVwZGF0aW5nIFBPIGZpbGVzLgorCisubm9wLnBvLXVwZGF0ZToKKwlAbGFuZz1gZWNobyAkQCB8IHNlZCAtZSAncy9cLnBvLXVwZGF0ZSQkLy8nYDsgXAorCWlmIHRlc3QgIiQoUEFDS0FHRSkiID0gImdldHRleHQtdG9vbHMiOyB0aGVuIFBBVEg9YHB3ZGAvLi4vc3JjOiQkUEFUSDsgZmk7IFwKKwl0bXBkaXI9YHB3ZGA7IFwKKwllY2hvICIkJGxhbmc6IjsgXAorCXRlc3QgIiQoc3JjZGlyKSIgPSAuICYmIGNkY21kPSIiIHx8IGNkY21kPSJjZCAkKHNyY2RpcikgJiYgIjsgXAorCWVjaG8gIiQke2NkY21kfSQoTVNHTUVSR0UpICQoTVNHTUVSR0VfT1BUSU9OUykgLS1sYW5nPSQkbGFuZyAkJGxhbmcucG8gJChET01BSU4pLnBvdCAtbyAkJGxhbmcubmV3LnBvIjsgXAorCWNkICQoc3JjZGlyKTsgXAorCWlmIHsgY2FzZSBgJChNU0dNRVJHRSkgLS12ZXJzaW9uIHwgc2VkIDFxIHwgc2VkIC1lICdzLF5bXjAtOV0qLCwnYCBpbiBcCisJICAgICAgICcnIHwgMC5bMC05XSB8IDAuWzAtOV0uKiB8IDAuMVswLTddIHwgMC4xWzAtN10uKikgXAorCSAgICAgICAgICQoTVNHTUVSR0UpICQoTVNHTUVSR0VfT1BUSU9OUykgLW8gJCR0bXBkaXIvJCRsYW5nLm5ldy5wbyAkJGxhbmcucG8gJChET01BSU4pLnBvdDs7IFwKKwkgICAgICAgKikgXAorCSAgICAgICAgICQoTVNHTUVSR0UpICQoTVNHTUVSR0VfT1BUSU9OUykgLS1sYW5nPSQkbGFuZyAtbyAkJHRtcGRpci8kJGxhbmcubmV3LnBvICQkbGFuZy5wbyAkKERPTUFJTikucG90OzsgXAorCSAgICAgZXNhYzsgXAorCSAgIH07IHRoZW4gXAorCSAgaWYgY21wICQkbGFuZy5wbyAkJHRtcGRpci8kJGxhbmcubmV3LnBvID4vZGV2L251bGwgMj4mMTsgdGhlbiBcCisJICAgIHJtIC1mICQkdG1wZGlyLyQkbGFuZy5uZXcucG87IFwKKwkgIGVsc2UgXAorCSAgICBpZiBtdiAtZiAkJHRtcGRpci8kJGxhbmcubmV3LnBvICQkbGFuZy5wbzsgdGhlbiBcCisJICAgICAgOjsgXAorCSAgICBlbHNlIFwKKwkgICAgICBlY2hvICJtc2dtZXJnZSBmb3IgJCRsYW5nLnBvIGZhaWxlZDogY2Fubm90IG1vdmUgJCR0bXBkaXIvJCRsYW5nLm5ldy5wbyB0byAkJGxhbmcucG8iIDE+JjI7IFwKKwkgICAgICBleGl0IDE7IFwKKwkgICAgZmk7IFwKKwkgIGZpOyBcCisJZWxzZSBcCisJICBlY2hvICJtc2dtZXJnZSBmb3IgJCRsYW5nLnBvIGZhaWxlZCEiIDE+JjI7IFwKKwkgIHJtIC1mICQkdG1wZGlyLyQkbGFuZy5uZXcucG87IFwKKwlmaQorCiskKERVTU1ZUE9GSUxFUyk6CisKK3VwZGF0ZS1nbW86IE1ha2VmaWxlICQoR01PRklMRVMpCisJQDoKKworIyBSZWNyZWF0ZSBNYWtlZmlsZSBieSBpbnZva2luZyBjb25maWcuc3RhdHVzLiBFeHBsaWNpdGx5IGludm9rZSB0aGUgc2hlbGwsCisjIGJlY2F1c2UgZXhlY3V0aW9uIHBlcm1pc3Npb24gYml0cyBtYXkgbm90IHdvcmsgb24gdGhlIGN1cnJlbnQgZmlsZSBzeXN0ZW0uCisjIFVzZSBAU0hFTExALCB3aGljaCBpcyB0aGUgc2hlbGwgZGV0ZXJtaW5lZCBieSBhdXRvY29uZiBmb3IgdGhlIHVzZSBieSBpdHMKKyMgc2NyaXB0cywgbm90ICQoU0hFTEwpIHdoaWNoIGlzIGhhcmR3aXJlZCB0byAvYmluL3NoIGFuZCBtYXkgYmUgZGVmaWNpZW50LgorTWFrZWZpbGU6IE1ha2VmaWxlLmluLmluIE1ha2V2YXJzICQodG9wX2J1aWxkZGlyKS9jb25maWcuc3RhdHVzIEBQT01BS0VGSUxFREVQU0AKKwljZCAkKHRvcF9idWlsZGRpcikgXAorCSAgJiYgQFNIRUxMQCAuL2NvbmZpZy5zdGF0dXMgJChzdWJkaXIpLyRALmluIHBvLWRpcmVjdG9yaWVzCisKK2ZvcmNlOgorCisjIFRlbGwgdmVyc2lvbnMgWzMuNTksMy42Mykgb2YgR05VIG1ha2Ugbm90IHRvIGV4cG9ydCBhbGwgdmFyaWFibGVzLgorIyBPdGhlcndpc2UgYSBzeXN0ZW0gbGltaXQgKGZvciBTeXNWIGF0IGxlYXN0KSBtYXkgYmUgZXhjZWVkZWQuCisuTk9FWFBPUlQ6CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vTWFrZXZhcnMgYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vTWFrZXZhcnMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZmU1OGEzMgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9NYWtldmFycwpAQCAtMCwwICsxLDQ1IEBACisjIE1ha2VmaWxlIHZhcmlhYmxlcyBmb3IgUE8gZGlyZWN0b3J5IGluIGFueSBwYWNrYWdlIHVzaW5nIEdOVSBnZXR0ZXh0LgorCisjIFVzdWFsbHkgdGhlIG1lc3NhZ2UgZG9tYWluIGlzIHRoZSBzYW1lIGFzIHRoZSBwYWNrYWdlIG5hbWUuCitET01BSU4gPSBkc2VsZWN0CisKKyMgVGhlc2UgdHdvIHZhcmlhYmxlcyBkZXBlbmQgb24gdGhlIGxvY2F0aW9uIG9mIHRoaXMgZGlyZWN0b3J5Lgorc3ViZGlyID0gZHNlbGVjdC9wbwordG9wX2J1aWxkZGlyID0gLi4vLi4KKworIyBUaGVzZSBvcHRpb25zIGdldCBwYXNzZWQgdG8geGdldHRleHQuCitYR0VUVEVYVF9PUFRJT05TID0gLS1rZXl3b3JkPV8gLS1rZXl3b3JkPU5fCisKK01TR01FUkdFX09QVElPTlMgPSAtLXByZXZpb3VzCisKKyMgVGhpcyBpcyB0aGUgY29weXJpZ2h0IGhvbGRlciB0aGF0IGdldHMgaW5zZXJ0ZWQgaW50byB0aGUgaGVhZGVyIG9mIHRoZQorIyAkKERPTUFJTikucG90IGZpbGUuICBTZXQgdGhpcyB0byB0aGUgY29weXJpZ2h0IGhvbGRlciBvZiB0aGUgc3Vycm91bmRpbmcKKyMgcGFja2FnZS4gIChOb3RlIHRoYXQgdGhlIG1zZ3N0ciBzdHJpbmdzLCBleHRyYWN0ZWQgZnJvbSB0aGUgcGFja2FnZSdzCisjIHNvdXJjZXMsIGJlbG9uZyB0byB0aGUgY29weXJpZ2h0IGhvbGRlciBvZiB0aGUgcGFja2FnZS4pICBUcmFuc2xhdG9ycyBhcmUKKyMgZXhwZWN0ZWQgdG8gdHJhbnNmZXIgdGhlIGNvcHlyaWdodCBmb3IgdGhlaXIgdHJhbnNsYXRpb25zIHRvIHRoaXMgcGVyc29uCisjIG9yIGVudGl0eSwgb3IgdG8gZGlzY2xhaW0gdGhlaXIgY29weXJpZ2h0LiAgVGhlIGVtcHR5IHN0cmluZyBzdGFuZHMgZm9yCisjIHRoZSBwdWJsaWMgZG9tYWluOyBpbiB0aGlzIGNhc2UgdGhlIHRyYW5zbGF0b3JzIGFyZSBleHBlY3RlZCB0byBkaXNjbGFpbQorIyB0aGVpciBjb3B5cmlnaHQuCitDT1BZUklHSFRfSE9MREVSID0gU29mdHdhcmUgaW4gdGhlIFB1YmxpYyBJbnRlcmVzdCwgSW5jLgorCisjIFRoaXMgaXMgdGhlIGVtYWlsIGFkZHJlc3Mgb3IgVVJMIHRvIHdoaWNoIHRoZSB0cmFuc2xhdG9ycyBzaGFsbCByZXBvcnQKKyMgYnVncyBpbiB0aGUgdW50cmFuc2xhdGVkIHN0cmluZ3M6CisjIC0gU3RyaW5ncyB3aGljaCBhcmUgbm90IGVudGlyZSBzZW50ZW5jZXMsIHNlZSB0aGUgbWFpbnRhaW5lciBndWlkZWxpbmVzCisjICAgaW4gdGhlIEdOVSBnZXR0ZXh0IGRvY3VtZW50YXRpb24sIHNlY3Rpb24gJ1ByZXBhcmluZyBTdHJpbmdzJy4KKyMgLSBTdHJpbmdzIHdoaWNoIHVzZSB1bmNsZWFyIHRlcm1zIG9yIHJlcXVpcmUgYWRkaXRpb25hbCBjb250ZXh0IHRvIGJlCisjICAgdW5kZXJzdG9vZC4KKyMgLSBTdHJpbmdzIHdoaWNoIG1ha2UgaW52YWxpZCBhc3N1bXB0aW9ucyBhYm91dCBub3RhdGlvbiBvZiBkYXRlLCB0aW1lIG9yCisjICAgbW9uZXkuCisjIC0gUGx1cmFsaXNhdGlvbiBwcm9ibGVtcy4KKyMgLSBJbmNvcnJlY3QgRW5nbGlzaCBzcGVsbGluZy4KKyMgLSBJbmNvcnJlY3QgZm9ybWF0dGluZy4KKyMgSXQgY2FuIGJlIHlvdXIgZW1haWwgYWRkcmVzcywgb3IgYSBtYWlsaW5nIGxpc3QgYWRkcmVzcyB3aGVyZSB0cmFuc2xhdG9ycworIyBjYW4gd3JpdGUgdG8gd2l0aG91dCBiZWluZyBzdWJzY3JpYmVkLCBvciB0aGUgVVJMIG9mIGEgd2ViIHBhZ2UgdGhyb3VnaAorIyB3aGljaCB0aGUgdHJhbnNsYXRvcnMgY2FuIGNvbnRhY3QgeW91LgorTVNHSURfQlVHU19BRERSRVNTID0gZGViaWFuLWRwa2dAbGlzdHMuZGViaWFuLm9yZworCisjIFRoaXMgaXMgdGhlIGxpc3Qgb2YgbG9jYWxlIGNhdGVnb3JpZXMsIGJleW9uZCBMQ19NRVNTQUdFUywgZm9yIHdoaWNoIHRoZQorIyBtZXNzYWdlIGNhdGFsb2dzIHNoYWxsIGJlIHVzZWQuICBJdCBpcyB1c3VhbGx5IGVtcHR5LgorRVhUUkFfTE9DQUxFX0NBVEVHT1JJRVMgPQorCitESVNURklMRVMuZXh0cmExID0gQ2hhbmdlTG9nLm9sZApkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL1BPVEZJTEVTLmluIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL1BPVEZJTEVTLmluCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjdlM2U3YTAKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vUE9URklMRVMuaW4KQEAgLTAsMCArMSwyMSBAQAorIyBUaGlzIGlzIHRoZSBsaXN0IG9mIGFsbCBzb3VyY2UgZmlsZXMgd2l0aCB0cmFuc2xhdGFibGUgc3RyaW5ncy4KKworZHNlbGVjdC9iYXNlY21kcy5jYworZHNlbGVjdC9iYXNlbGlzdC5jYworZHNlbGVjdC9iYXNldG9wLmNjCitkc2VsZWN0L2JpbmRpbmdzLmNjCitkc2VsZWN0L2N1cmtleXMuY2MKK2RzZWxlY3QvaGVscG1zZ3MuY2MKK2RzZWxlY3QvbWFpbi5jYworZHNlbGVjdC9tZXRoa2V5cy5jYworZHNlbGVjdC9tZXRobGlzdC5jYworZHNlbGVjdC9tZXRob2QuY2MKK2RzZWxlY3QvbWV0aHBhcnNlLmNjCitkc2VsZWN0L3BrZ2NtZHMuY2MKK2RzZWxlY3QvcGtnZGVwY29uLmNjCitkc2VsZWN0L3BrZ2Rpc3BsYXkuY2MKK2RzZWxlY3QvcGtnaW5mby5jYworZHNlbGVjdC9wa2drZXlzLmNjCitkc2VsZWN0L3BrZ2xpc3QuY2MKK2RzZWxlY3QvcGtnc3VibGlzdC5jYworZHNlbGVjdC9wa2d0b3AuY2MKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9SdWxlcy1xdW90IGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL1J1bGVzLXF1b3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYWY1MjQ4NwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9SdWxlcy1xdW90CkBAIC0wLDAgKzEsNDcgQEAKKyMgU3BlY2lhbCBNYWtlZmlsZSBydWxlcyBmb3IgRW5nbGlzaCBtZXNzYWdlIGNhdGFsb2dzIHdpdGggcXVvdGF0aW9uIG1hcmtzLgorCitESVNURklMRVMuY29tbW9uLmV4dHJhMSA9IHF1b3Quc2VkIGJvbGRxdW90LnNlZCBlbkBxdW90LmhlYWRlciBlbkBib2xkcXVvdC5oZWFkZXIgaW5zZXJ0LWhlYWRlci5zaW4gUnVsZXMtcXVvdAorCisuU1VGRklYRVM6IC5pbnNlcnQtaGVhZGVyIC5wby11cGRhdGUtZW4KKworZW5AcXVvdC5wby1jcmVhdGU6CisJJChNQUtFKSBlbkBxdW90LnBvLXVwZGF0ZQorZW5AYm9sZHF1b3QucG8tY3JlYXRlOgorCSQoTUFLRSkgZW5AYm9sZHF1b3QucG8tdXBkYXRlCisKK2VuQHF1b3QucG8tdXBkYXRlOiBlbkBxdW90LnBvLXVwZGF0ZS1lbgorZW5AYm9sZHF1b3QucG8tdXBkYXRlOiBlbkBib2xkcXVvdC5wby11cGRhdGUtZW4KKworLmluc2VydC1oZWFkZXIucG8tdXBkYXRlLWVuOgorCUBsYW5nPWBlY2hvICRAIHwgc2VkIC1lICdzL1wucG8tdXBkYXRlLWVuJCQvLydgOyBcCisJaWYgdGVzdCAiJChQQUNLQUdFKSIgPSAiZ2V0dGV4dCI7IHRoZW4gUEFUSD1gcHdkYC8uLi9zcmM6JCRQQVRIOyBHRVRURVhUTElCRElSPWBjZCAkKHRvcF9zcmNkaXIpL3NyYyAmJiBwd2RgOyBleHBvcnQgR0VUVEVYVExJQkRJUjsgZmk7IFwKKwl0bXBkaXI9YHB3ZGA7IFwKKwllY2hvICIkJGxhbmc6IjsgXAorCWxsPWBlY2hvICQkbGFuZyB8IHNlZCAtZSAncy9ALiovLydgOyBcCisJTENfQUxMPUM7IGV4cG9ydCBMQ19BTEw7IFwKKwljZCAkKHNyY2Rpcik7IFwKKwlpZiAkKE1TR0lOSVQpIC1pICQoRE9NQUlOKS5wb3QgLS1uby10cmFuc2xhdG9yIC1sICQkbGFuZyAtbyAtIDI+L2Rldi9udWxsIHwgc2VkIC1mICQkdG1wZGlyLyQkbGFuZy5pbnNlcnQtaGVhZGVyIHwgJChNU0dDT05WKSAtdCBVVEYtOCB8ICQoTVNHRklMVEVSKSBzZWQgLWYgYGVjaG8gJCRsYW5nIHwgc2VkIC1lICdzLy4qQC8vJ2Auc2VkIDI+L2Rldi9udWxsID4gJCR0bXBkaXIvJCRsYW5nLm5ldy5wbzsgdGhlbiBcCisJICBpZiBjbXAgJCRsYW5nLnBvICQkdG1wZGlyLyQkbGFuZy5uZXcucG8gPi9kZXYvbnVsbCAyPiYxOyB0aGVuIFwKKwkgICAgcm0gLWYgJCR0bXBkaXIvJCRsYW5nLm5ldy5wbzsgXAorCSAgZWxzZSBcCisJICAgIGlmIG12IC1mICQkdG1wZGlyLyQkbGFuZy5uZXcucG8gJCRsYW5nLnBvOyB0aGVuIFwKKwkgICAgICA6OyBcCisJICAgIGVsc2UgXAorCSAgICAgIGVjaG8gImNyZWF0aW9uIG9mICQkbGFuZy5wbyBmYWlsZWQ6IGNhbm5vdCBtb3ZlICQkdG1wZGlyLyQkbGFuZy5uZXcucG8gdG8gJCRsYW5nLnBvIiAxPiYyOyBcCisJICAgICAgZXhpdCAxOyBcCisJICAgIGZpOyBcCisJICBmaTsgXAorCWVsc2UgXAorCSAgZWNobyAiY3JlYXRpb24gb2YgJCRsYW5nLnBvIGZhaWxlZCEiIDE+JjI7IFwKKwkgIHJtIC1mICQkdG1wZGlyLyQkbGFuZy5uZXcucG87IFwKKwlmaQorCitlbkBxdW90Lmluc2VydC1oZWFkZXI6IGluc2VydC1oZWFkZXIuc2luCisJc2VkIC1lICcvXiMvZCcgLWUgJ3MvSEVBREVSL2VuQHF1b3QuaGVhZGVyL2cnICQoc3JjZGlyKS9pbnNlcnQtaGVhZGVyLnNpbiA+IGVuQHF1b3QuaW5zZXJ0LWhlYWRlcgorCitlbkBib2xkcXVvdC5pbnNlcnQtaGVhZGVyOiBpbnNlcnQtaGVhZGVyLnNpbgorCXNlZCAtZSAnL14jL2QnIC1lICdzL0hFQURFUi9lbkBib2xkcXVvdC5oZWFkZXIvZycgJChzcmNkaXIpL2luc2VydC1oZWFkZXIuc2luID4gZW5AYm9sZHF1b3QuaW5zZXJ0LWhlYWRlcgorCittb3N0bHljbGVhbjogbW9zdGx5Y2xlYW4tcXVvdAorbW9zdGx5Y2xlYW4tcXVvdDoKKwlybSAtZiAqLmluc2VydC1oZWFkZXIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9ib2xkcXVvdC5zZWQgYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vYm9sZHF1b3Quc2VkCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjRiOTM3YWEKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vYm9sZHF1b3Quc2VkCkBAIC0wLDAgKzEsMTAgQEAKK3MvIlwoW14iXSpcKSIv4oCcXDHigJ0vZworcy9gXChbXmAnXSpcKScv4oCYXDHigJkvZworcy8gJ1woW15gJ10qXCknIC8g4oCYXDHigJkgL2cKK3MvICdcKFteYCddKlwpJyQvIOKAmFwx4oCZL2cKK3MvXidcKFteYCddKlwpJyAv4oCYXDHigJkgL2cKK3Mv4oCc4oCdLyIiL2cKK3Mv4oCcL+KAnBtbMW0vZworcy/igJ0vG1swbeKAnS9nCitzL+KAmC/igJgbWzFtL2cKK3Mv4oCZLxtbMG3igJkvZwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL2JzLmdtbyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9icy5nbW8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNGYwOTIzMwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9icy5nbW8KQmluYXJ5IGZpbGVzIGRpZmZlcgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL2JzLnBvIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL2JzLnBvCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjcwYjg3OGIKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vYnMucG8KQEAgLTAsMCArMSwxMzk4IEBACisjIFNPTUUgREVTQ1JJUFRJVkUgVElUTEUuCisjIENvcHlyaWdodCAoQykgWUVBUiBUSEUgUEFDS0FHRSdTIENPUFlSSUdIVCBIT0xERVIKKyMgVGhpcyBmaWxlIGlzIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBzYW1lIGxpY2Vuc2UgYXMgdGhlIFBBQ0tBR0UgcGFja2FnZS4KKyMgRklSU1QgQVVUSE9SIDxFTUFJTEBBRERSRVNTPiwgWUVBUi4KKyMKK21zZ2lkICIiCittc2dzdHIgIiIKKyJQcm9qZWN0LUlkLVZlcnNpb246IGRwa2cgMS4xM1xuIgorIlJlcG9ydC1Nc2dpZC1CdWdzLVRvOiBkZWJpYW4tZHBrZ0BsaXN0cy5kZWJpYW4ub3JnXG4iCisiUE9ULUNyZWF0aW9uLURhdGU6IDIwMTEtMTAtMTQgMDc6MTErMDIwMFxuIgorIlBPLVJldmlzaW9uLURhdGU6IDIwMDYtMDItMTcgMDg6NTUrMDIwMFxuIgorIkxhc3QtVHJhbnNsYXRvcjogU2FmaXIgxaBlxIdlcm92acSHIDxzYXBwaGlyZUBsaW51eC5vcmcuYmE+XG4iCisiTGFuZ3VhZ2UtVGVhbTogQm9zbmlhbiA8bG9rYWxAbGludXgub3JnLmJhPlxuIgorIkxhbmd1YWdlOiBic1xuIgorIk1JTUUtVmVyc2lvbjogMS4wXG4iCisiQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PXV0Zi04XG4iCisiQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdFxuIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjEyNQorbXNnaWQgIlNlYXJjaCBmb3IgPyAiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxNDcKK21zZ2lkICJFcnJvcjogIgorbXNnc3RyICJHcmXFoWthOiIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxNzgKK21zZ2lkICJIZWxwOiAiCittc2dzdHIgIlBvbW/EhzoiCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MTg0Cittc2dpZCAiUHJlc3MgPyBmb3IgaGVscCBtZW51LCAuIGZvciBuZXh0IHRvcGljLCA8c3BhY2U+IHRvIGV4aXQgaGVscC4iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxOTEKK21zZ2lkICJIZWxwIGluZm9ybWF0aW9uIGlzIGF2YWlsYWJsZSB1bmRlciB0aGUgZm9sbG93aW5nIHRvcGljczoiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxOTkKK21zZ2lkICIiCisiUHJlc3MgYSBrZXkgZnJvbSB0aGUgbGlzdCBhYm92ZSwgPHNwYWNlPiBvciBgcScgdG8gZXhpdCBoZWxwLFxuIgorIiAgb3IgYC4nIChmdWxsIHN0b3ApIHRvIHJlYWQgZWFjaCBoZWxwIHBhZ2UgaW4gdHVybi4gIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MjA1Cittc2dpZCAiZXJyb3IgcmVhZGluZyBrZXlib2FyZCBpbiBoZWxwIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6NTcKK21zZ2lkICJpb2N0bChUSU9DR1dJTlNaKSBmYWlsZWQiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo2MAorbXNnaWQgImRvdXBkYXRlIGluIFNJR1dJTkNIIGhhbmRsZXIgZmFpbGVkIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6NjcKK21zZ2lkICJmYWlsZWQgdG8gcmVzdG9yZSBvbGQgU0lHV0lOQ0ggc2lnYWN0IgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6NjkKK21zZ2lkICJmYWlsZWQgdG8gcmVzdG9yZSBvbGQgc2lnbmFsIG1hc2siCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo3OQorbXNnaWQgImZhaWxlZCB0byBnZXQgb2xkIHNpZ25hbCBtYXNrIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6ODAKK21zZ2lkICJmYWlsZWQgdG8gZ2V0IG9sZCBTSUdXSU5DSCBzaWdhY3QiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo4NAorbXNnaWQgImZhaWxlZCB0byBibG9jayBTSUdXSU5DSCIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjg5Cittc2dpZCAiZmFpbGVkIHRvIHNldCBuZXcgU0lHV0lOQ0ggc2lnYWN0IgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTI2Cittc2dpZCAiZmFpbGVkIHRvIGFsbG9jYXRlIGNvbG91ciBwYWlyIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTY3Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSB0aXRsZSB3aW5kb3ciCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxNzEKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHdoYXRpbmZvIHdpbmRvdyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE3NQorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgYmFzZWxpc3QgcGFkIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTc4Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBoZWFkaW5nIHBhZCIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE4MgorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgdGhpc3N0YXRlIHBhZCIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE4NgorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgaW5mbyBwYWQiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxOTEKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHF1ZXJ5IHdpbmRvdyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjI1NQorbXNnaWQgIktleWJpbmRpbmdzIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MzAzCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgLS0gJWQlJSwgcHJlc3MgIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MzA2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGZvciBtb3JlIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MzEwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHRvIGdvIGJhY2siCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzo3OAorbXNnaWQgIltub3QgYm91bmRdIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiW3VuazogJWRdIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTM5Cittc2dpZCAiU2Nyb2xsIG9ud2FyZHMgdGhyb3VnaCBoZWxwL2luZm9ybWF0aW9uIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQwCittc2dpZCAiU2Nyb2xsIGJhY2t3YXJkcyB0aHJvdWdoIGhlbHAvaW5mb3JtYXRpb24iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDEKK21zZ2lkICJNb3ZlIHVwIgorbXNnc3RyICJQb21qZXJpIGdvcmUiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQyCittc2dpZCAiTW92ZSBkb3duIgorbXNnc3RyICJQb21qZXJpIGRvbGUiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQzCittc2dpZCAiR28gdG8gdG9wIG9mIGxpc3QiCittc2dzdHIgIklkaSBuYSB2cmggbGlzdGUiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ0Cittc2dpZCAiR28gdG8gZW5kIG9mIGxpc3QiCittc2dzdHIgIklkaSBuYSBrcmFqIGxpc3RlIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0NQorbXNnaWQgIlJlcXVlc3QgaGVscCAoY3ljbGUgdGhyb3VnaCBoZWxwIHNjcmVlbnMpIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ2Cittc2dpZCAiQ3ljbGUgdGhyb3VnaCBpbmZvcm1hdGlvbiBkaXNwbGF5cyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0NworbXNnaWQgIlJlZHJhdyBkaXNwbGF5IgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ4Cittc2dpZCAiU2Nyb2xsIG9ud2FyZHMgdGhyb3VnaCBsaXN0IGJ5IDEgbGluZSIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0OQorbXNnaWQgIlNjcm9sbCBiYWNrd2FyZHMgdGhyb3VnaCBsaXN0IGJ5IDEgbGluZSIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1MAorbXNnaWQgIlNjcm9sbCBvbndhcmRzIHRocm91Z2ggaGVscC9pbmZvcm1hdGlvbiBieSAxIGxpbmUiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTEKK21zZ2lkICJTY3JvbGwgYmFja3dhcmRzIHRocm91Z2ggaGVscC9pbmZvcm1hdGlvbiBieSAxIGxpbmUiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTIKK21zZ2lkICJTY3JvbGwgb253YXJkcyB0aHJvdWdoIGxpc3QiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTMKK21zZ2lkICJTY3JvbGwgYmFja3dhcmRzIHRocm91Z2ggbGlzdCIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1NgorbXNnaWQgIk1hcmsgcGFja2FnZShzKSBmb3IgaW5zdGFsbGF0aW9uIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTU3Cittc2dpZCAiTWFyayBwYWNrYWdlKHMpIGZvciBkZWluc3RhbGxhdGlvbiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1OAorbXNnaWQgIk1hcmsgcGFja2FnZShzKSBmb3IgZGVpbnN0YWxsIGFuZCBwdXJnZSIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1OQorbXNnaWQgIk1ha2UgaGlnaGxpZ2h0IG1vcmUgc3BlY2lmaWMiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjAKK21zZ2lkICJNYWtlIGhpZ2hsaWdodCBsZXNzIHNwZWNpZmljIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTYxCittc2dpZCAiU2VhcmNoIGZvciBhIHBhY2thZ2Ugd2hvc2UgbmFtZSBjb250YWlucyBhIHN0cmluZyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2MgorbXNnaWQgIlJlcGVhdCBsYXN0IHNlYXJjaC4iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjMKK21zZ2lkICJTd2FwIHNvcnQgb3JkZXIgcHJpb3JpdHkvc2VjdGlvbiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2NAorbXNnaWQgIlF1aXQsIGNvbmZpcm1pbmcsIGFuZCBjaGVja2luZyBkZXBlbmRlbmNpZXMiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjUKK21zZ2lkICJRdWl0LCBjb25maXJtaW5nIHdpdGhvdXQgY2hlY2siCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjYKK21zZ2lkICJRdWl0LCByZWplY3RpbmcgY29uZmxpY3QvZGVwZW5kZW5jeSBzdWdnZXN0aW9ucyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2NworbXNnaWQgIkFib3J0IC0gcXVpdCB3aXRob3V0IG1ha2luZyBjaGFuZ2VzIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY4Cittc2dpZCAiUmV2ZXJ0IHRvIG9sZCBzdGF0ZSBmb3IgYWxsIHBhY2thZ2VzIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY5Cittc2dpZCAiUmV2ZXJ0IHRvIHN1Z2dlc3RlZCBzdGF0ZSBmb3IgYWxsIHBhY2thZ2VzIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTcwCittc2dpZCAiUmV2ZXJ0IHRvIGRpcmVjdGx5IHJlcXVlc3RlZCBzdGF0ZSBmb3IgYWxsIHBhY2thZ2VzIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTcxCisjLCBmdXp6eQorbXNnaWQgIlJldmVydCB0byBjdXJyZW50bHkgaW5zdGFsbGVkIHN0YXRlIGZvciBhbGwgcGFja2FnZXMiCittc2dzdHIgIk5lcHJhdmlsbm8gaW5zdGFsaXJhbmkgcGFrZXRpIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE3NAorbXNnaWQgIlNlbGVjdCBjdXJyZW50bHktaGlnaGxpZ2h0ZWQgYWNjZXNzIG1ldGhvZCIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE3NQorbXNnaWQgIlF1aXQgd2l0aG91dCBjaGFuZ2luZyBzZWxlY3RlZCBhY2Nlc3MgbWV0aG9kIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MjkKK21zZ2lkICJLZXlzdHJva2VzIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MjkKK21zZ2lkICIiCisiTW90aW9uIGtleXM6IE5leHQvUHJldmlvdXMsIFRvcC9FbmQsIFVwL0Rvd24sIEJhY2t3YXJkcy9Gb3J3YXJkczpcbiIKKyIgIGosIERvd24tYXJyb3cgICAgICAgICBrLCBVcC1hcnJvdyAgICAgICAgICAgICBtb3ZlIGhpZ2hsaWdodFxuIgorIiAgTiwgUGFnZS1kb3duLCBTcGFjZSAgIFAsIFBhZ2UtdXAsIEJhY2tzcGFjZSAgIHNjcm9sbCBsaXN0IGJ5IDEgcGFnZVxuIgorIiAgXm4gICAgICAgICAgICAgICAgICAgIF5wICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBsaXN0IGJ5IDEgbGluZVxuIgorIiAgdCwgSG9tZSAgICAgICAgICAgICAgIGUsIEVuZCAgICAgICAgICAgICAgICAgIGp1bXAgdG8gdG9wL2VuZCBvZiBsaXN0XG4iCisiICB1ICAgICAgICAgICAgICAgICAgICAgZCAgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGluZm8gYnkgMSBwYWdlXG4iCisiICBedSAgICAgICAgICAgICAgICAgICAgXmQgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGluZm8gYnkgMSBsaW5lXG4iCisiICBCLCBMZWZ0LWFycm93ICAgICAgICAgRiwgUmlnaHQtYXJyb3cgICAgICAgICAgcGFuIGRpc3BsYXkgYnkgMS8zIHNjcmVlblxuIgorIiAgXmIgICAgICAgICAgICAgICAgICAgIF5mICAgICAgICAgICAgICAgICAgICAgIHBhbiBkaXNwbGF5IGJ5IDEgY2hhcmFjdGVyXG4iCisiXG4iCisiTWFyayBwYWNrYWdlcyBmb3IgbGF0ZXIgcHJvY2Vzc2luZzpcbiIKKyIgKywgSW5zZXJ0ICBpbnN0YWxsIG9yIHVwZ3JhZGUgICAgICA9LCBIICBob2xkIGluIHByZXNlbnQgc3RhdGVcbiIKKyIgLSwgRGVsZXRlICByZW1vdmUgICAgICAgICAgICAgICAgICA6LCBHICB1bmhvbGQ6IHVwZ3JhZGUgb3IgbGVhdmUgIgorInVuaW5zdGFsbGVkXG4iCisiIF8gICAgICAgICAgcmVtb3ZlICYgcHVyZ2UgY29uZmlnXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTWlzY2VsbGFuZW91czpcbiIKKyJRdWl0LCBleGl0LCBvdmVyd3JpdGUgKG5vdGUgY2FwaXRhbHMhKTogICAgICAgPywgRjEgcmVxdWVzdCBoZWxwIChhbHNvICIKKyJIZWxwKVxuIgorIiBSZXR1cm4gIENvbmZpcm0sIHF1aXQgKGNoZWNrIGRlcGVuZGVuY2llcykgICBpLCBJICB0b2dnbGUvY3ljbGUgaW5mbyAiCisiZGlzcGxheXNcbiIKKyIgICBRICAgICBDb25maXJtLCBxdWl0IChvdmVycmlkZSBkZXAucykgICAgICAgbywgTyAgY3ljbGUgdGhyb3VnaCBzb3J0ICIKKyJvcHRpb25zXG4iCisiIFgsIEVzYyAgZVhpdCwgYWJhbmRvbmluZyBhbnkgY2hhbmdlcyBtYWRlICAgIHYsIFYgIGNoYW5nZSBzdGF0dXMgZGlzcGxheSAiCisib3B0c1xuIgorIiAgIFIgICAgIFJldmVydCB0byBzdGF0ZSBiZWZvcmUgdGhpcyBsaXN0ICAgICAgXmwgICByZWRyYXcgZGlzcGxheVxuIgorIiAgIFUgICAgIHNldCBhbGwgdG8gc1VnZ2VzdGVkIHN0YXRlICAgICAgICAgICAgIC8gICBzZWFyY2ggKFJldHVybiB0byAiCisiY2FuY2VsKVxuIgorIiAgIEQgICAgIHNldCBhbGwgdG8gRGlyZWN0bHkgcmVxdWVzdGVkIHN0YXRlICBuLCBcXCAgcmVwZWF0IGxhc3Qgc2VhcmNoXG4iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo1NQorbXNnaWQgIkludHJvZHVjdGlvbiB0byBwYWNrYWdlIHNlbGVjdGlvbnMiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo1NQorbXNnaWQgIiIKKyJXZWxjb21lIHRvIGRzZWxlY3QncyBtYWluIHBhY2thZ2UgbGlzdGluZy5cbiIKKyJcbiIKKyJZb3Ugd2lsbCBiZSBwcmVzZW50ZWQgd2l0aCBhIGxpc3Qgb2YgcGFja2FnZXMgd2hpY2ggYXJlIGluc3RhbGxlZCBvciAiCisiYXZhaWxhYmxlXG4iCisiZm9yIGluc3RhbGxhdGlvbi4gIFlvdSBjYW4gbmF2aWdhdGUgYXJvdW5kIHRoZSBsaXN0IHVzaW5nIHRoZSBjdXJzb3Iga2V5cyxcbiIKKyJtYXJrIHBhY2thZ2VzIGZvciBpbnN0YWxsYXRpb24gKHVzaW5nIGArJykgb3IgZGVpbnN0YWxsYXRpb24gKHVzaW5nIGAtJykuXG4iCisiUGFja2FnZXMgY2FuIGJlIG1hcmtlZCBlaXRoZXIgc2luZ2x5IG9yIGluIGdyb3VwczsgaW5pdGlhbGx5IHlvdSB3aWxsIHNlZSAiCisidGhhdFxuIgorInRoZSBsaW5lIGBBbGwgcGFja2FnZXMnIGlzIHNlbGVjdGVkLiAgYCsnLCBgLScgYW5kIHNvIG9uIHdpbGwgYWZmZWN0IGFsbCAiCisidGhlXG4iCisicGFja2FnZXMgZGVzY3JpYmVkIGJ5IHRoZSBoaWdobGlnaHRlZCBsaW5lLlxuIgorIlxuIgorIlNvbWUgb2YgeW91ciBjaG9pY2VzIHdpbGwgY2F1c2UgY29uZmxpY3RzIG9yIGRlcGVuZGVuY3kgcHJvYmxlbXM7IHlvdSB3aWxsICIKKyJiZVxuIgorImdpdmVuIGEgc3ViLWxpc3Qgb2YgdGhlIHJlbGV2YW50IHBhY2thZ2VzLCBzbyB0aGF0IHlvdSBjYW4gc29sdmUgdGhlICIKKyJwcm9ibGVtcy5cbiIKKyJcbiIKKyJZb3Ugc2hvdWxkIHJlYWQgdGhlIGxpc3Qgb2Yga2V5cyBhbmQgdGhlIGV4cGxhbmF0aW9ucyBvZiB0aGUgZGlzcGxheS5cbiIKKyJNdWNoIG9uLWxpbmUgaGVscCBpcyBhdmFpbGFibGUsIHBsZWFzZSBtYWtlIHVzZSBvZiBpdCAtIHByZXNzIGA/JyBhdFxuIgorImFueSB0aW1lIGZvciBoZWxwLlxuIgorIlxuIgorIldoZW4geW91IGhhdmUgZmluaXNoZWQgc2VsZWN0aW5nIHBhY2thZ2VzLCBwcmVzcyA8ZW50ZXI+IHRvIGNvbmZpcm0gIgorImNoYW5nZXMsXG4iCisib3IgYFgnIHRvIHF1aXQgd2l0aG91dCBzYXZpbmcgY2hhbmdlcy4gQSBmaW5hbCBjaGVjayBvbiBjb25mbGljdHMgYW5kXG4iCisiZGVwZW5kZW5jaWVzIHdpbGwgYmUgZG9uZSAtIGhlcmUgdG9vIHlvdSBtYXkgc2VlIGEgc3VibGlzdC5cbiIKKyJcbiIKKyJQcmVzcyA8c3BhY2U+IHRvIGxlYXZlIGhlbHAgYW5kIGVudGVyIHRoZSBsaXN0IG5vdy5cbiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjgwCittc2dpZCAiSW50cm9kdWN0aW9uIHRvIHJlYWQtb25seSBwYWNrYWdlIGxpc3QgYnJvd3NlciIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjgwCittc2dpZCAiIgorIldlbGNvbWUgdG8gZHNlbGVjdCdzIG1haW4gcGFja2FnZSBsaXN0aW5nLlxuIgorIlxuIgorIllvdSB3aWxsIGJlIHByZXNlbnRlZCB3aXRoIGEgbGlzdCBvZiBwYWNrYWdlcyB3aGljaCBhcmUgaW5zdGFsbGVkIG9yICIKKyJhdmFpbGFibGVcbiIKKyJmb3IgaW5zdGFsbGF0aW9uLiAgU2luY2UgeW91IGRvIG5vdCBoYXZlIHRoZSBwcml2aWxlZ2UgbmVjZXNzYXJ5IHRvIHVwZGF0ZVxuIgorInBhY2thZ2Ugc3RhdGVzLCB5b3UgYXJlIGluIGEgcmVhZC1vbmx5IG1vZGUuICBZb3UgY2FuIG5hdmlnYXRlIGFyb3VuZCB0aGVcbiIKKyJsaXN0IHVzaW5nIHRoZSBjdXJzb3Iga2V5cyAocGxlYXNlIHNlZSB0aGUgYEtleXN0cm9rZXMnIGhlbHAgc2NyZWVuKSwgIgorIm9ic2VydmVcbiIKKyJ0aGUgc3RhdHVzIG9mIHRoZSBwYWNrYWdlcyBhbmQgcmVhZCBpbmZvcm1hdGlvbiBhYm91dCB0aGVtLlxuIgorIlxuIgorIllvdSBzaG91bGQgcmVhZCB0aGUgbGlzdCBvZiBrZXlzIGFuZCB0aGUgZXhwbGFuYXRpb25zIG9mIHRoZSBkaXNwbGF5LlxuIgorIk11Y2ggb24tbGluZSBoZWxwIGlzIGF2YWlsYWJsZSwgcGxlYXNlIG1ha2UgdXNlIG9mIGl0IC0gcHJlc3MgYD8nIGF0XG4iCisiYW55IHRpbWUgZm9yIGhlbHAuXG4iCisiXG4iCisiV2hlbiB5b3UgaGF2ZSBmaW5pc2hlZCBicm93c2luZywgcHJlc3MgYFEnIG9yIDxlbnRlcj4gdG8gcXVpdC5cbiIKKyJcbiIKKyJQcmVzcyA8c3BhY2U+IHRvIGxlYXZlIGhlbHAgYW5kIGVudGVyIHRoZSBsaXN0IG5vdy5cbiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjk5Cittc2dpZCAiSW50cm9kdWN0aW9uIHRvIGNvbmZsaWN0L2RlcGVuZGVuY3kgcmVzb2x1dGlvbiBzdWItbGlzdCIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjk5Cittc2dpZCAiIgorIkRlcGVuZGVuY3kvY29uZmxpY3QgcmVzb2x1dGlvbiAtIGludHJvZHVjdGlvbi5cbiIKKyJcbiIKKyJPbmUgb3IgbW9yZSBvZiB5b3VyIGNob2ljZXMgaGF2ZSByYWlzZWQgYSBjb25mbGljdCBvciBkZXBlbmRlbmN5IHByb2JsZW0gLVxuIgorInNvbWUgcGFja2FnZXMgc2hvdWxkIG9ubHkgYmUgaW5zdGFsbGVkIGluIGNvbmp1bmN0aW9uIHdpdGggY2VydGFpbiBvdGhlcnMsICIKKyJhbmRcbiIKKyJzb21lIGNvbWJpbmF0aW9ucyBvZiBwYWNrYWdlcyBtYXkgbm90IGJlIGluc3RhbGxlZCB0b2dldGhlci5cbiIKKyJcbiIKKyJZb3Ugd2lsbCBzZWUgYSBzdWItbGlzdCBjb250YWluaW5nIHRoZSBwYWNrYWdlcyBpbnZvbHZlZC4gIFRoZSBib3R0b20gaGFsZiAiCisib2ZcbiIKKyJ0aGUgZGlzcGxheSBzaG93cyByZWxldmFudCBjb25mbGljdHMgYW5kIGRlcGVuZGVuY2llczsgdXNlIGBpJyB0byBjeWNsZSAiCisiYmV0d2VlblxuIgorInRoYXQsIHRoZSBwYWNrYWdlIGRlc2NyaXB0aW9ucyBhbmQgdGhlIGludGVybmFsIGNvbnRyb2wgaW5mb3JtYXRpb24uXG4iCisiXG4iCisiQSBzZXQgb2YgYHN1Z2dlc3RlZCcgcGFja2FnZXMgaGFzIGJlZW4gY2FsY3VsYXRlZCwgYW5kIHRoZSBpbml0aWFsIG1hcmtpbmdzICIKKyJpblxuIgorInRoaXMgc3ViLWxpc3QgaGF2ZSBiZWVuIHNldCB0byBtYXRjaCB0aG9zZSwgc28geW91IGNhbiBqdXN0IGhpdCBSZXR1cm4gdG9cbiIKKyJhY2NlcHQgdGhlIHN1Z2dlc3Rpb25zIGlmIHlvdSB3aXNoLiAgWW91IG1heSBhYm9ydCB0aGUgY2hhbmdlKHMpIHdoaWNoICIKKyJjYXVzZWRcbiIKKyJ0aGUgcHJvYmxlbShzKSwgYW5kIGdvIGJhY2sgdG8gdGhlIG1haW4gbGlzdCwgYnkgcHJlc3NpbmcgY2FwaXRhbCBgWCcuXG4iCisiXG4iCisiWW91IGNhbiBhbHNvIG1vdmUgYXJvdW5kIHRoZSBsaXN0IGFuZCBjaGFuZ2UgdGhlIG1hcmtpbmdzIHNvIHRoYXQgdGhleSBhcmUgIgorIm1vcmVcbiIKKyJsaWtlIHdoYXQgeW91IHdhbnQsIGFuZCB5b3UgY2FuIGByZWplY3QnIG15IHN1Z2dlc3Rpb25zIGJ5IHVzaW5nIHRoZSAiCisiY2FwaXRhbFxuIgorImBEJyBvciBgUicga2V5cyAoc2VlIHRoZSBrZXliaW5kaW5ncyBoZWxwIHNjcmVlbikuICBZb3UgY2FuIHVzZSBjYXBpdGFsIGBRJyAiCisidG9cbiIKKyJmb3JjZSBtZSB0byBhY2NlcHQgdGhlIHNpdHVhdGlvbiBjdXJyZW50bHkgZGlzcGxheWVkLCBpbiBjYXNlIHlvdSB3YW50IHRvXG4iCisib3ZlcnJpZGUgYSByZWNvbW1lbmRhdGlvbiBvciB0aGluayB0aGF0IHRoZSBwcm9ncmFtIGlzIG1pc3Rha2VuLlxuIgorIlxuIgorIlByZXNzIDxzcGFjZT4gdG8gbGVhdmUgaGVscCBhbmQgZW50ZXIgdGhlIHN1Yi1saXN0OyByZW1lbWJlcjogcHJlc3MgYD8nIGZvciAiCisiaGVscC5cbiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjEyNQorbXNnaWQgIkRpc3BsYXksIHBhcnQgMTogcGFja2FnZSBsaXN0aW5nIGFuZCBzdGF0dXMgY2hhcnMiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxMjUKK21zZ2lkICIiCisiVGhlIHRvcCBoYWxmIG9mIHRoZSBzY3JlZW4gc2hvd3MgYSBsaXN0IG9mIHBhY2thZ2VzLiAgRm9yIGVhY2ggcGFja2FnZSB5b3UgIgorInNlZVxuIgorImZvdXIgY29sdW1ucyBmb3IgaXRzIGN1cnJlbnQgc3RhdHVzIG9uIHRoZSBzeXN0ZW0gYW5kIG1hcmsuICBJbiB0ZXJzZSBtb2RlICIKKyIodXNlXG4iCisiYHYnIHRvIHRvZ2dsZSB2ZXJib3NlIGRpc3BsYXkpIHRoZXNlIGFyZSBzaW5nbGUgY2hhcmFjdGVycywgZnJvbSBsZWZ0IHRvICIKKyJyaWdodDpcbiIKKyJcbiIKKyIgRXJyb3IgZmxhZzogU3BhY2UgLSBubyBlcnJvciAoYnV0IHBhY2thZ2UgbWF5IGJlIGluIGJyb2tlbiBzdGF0ZSAtIHNlZSAiCisiYmVsb3cpXG4iCisiICAgICAgICAgICAgICBgUicgIC0gc2VyaW91cyBlcnJvciBkdXJpbmcgaW5zdGFsbGF0aW9uLCBuZWVkcyAiCisicmVpbnN0YWxsYXRpb247XG4iCisiIEluc3RhbGxlZCBzdGF0ZTogICAgIFNwYWNlICAgIC0gbm90IGluc3RhbGxlZDtcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgIGAqJyAgICAgLSBpbnN0YWxsZWQ7XG4iCisiICAgICAgICAgICAgICAgICAgICAgICBgLScgICAgIC0gbm90IGluc3RhbGxlZCBidXQgY29uZmlnIGZpbGVzIHJlbWFpbjtcbiIKKyIgICBwYWNrYWdlcyBpbiB0aGVzZSB7IGBVJyAgICAgLSB1bnBhY2tlZCBidXQgbm90IHlldCBjb25maWd1cmVkO1xuIgorIiAgIHN0YXRlcyBhcmUgbm90ICAgIHsgYEMnICAgICAtIGhhbGYtY29uZmlndXJlZCAoYW4gZXJyb3IgaGFwcGVuZWQpO1xuIgorIiAgIChxdWl0ZSkgcHJvcGVybHkgIHsgYEknICAgICAtIGhhbGYtaW5zdGFsbGVkIChhbiBlcnJvciBoYXBwZW5lZCk7XG4iCisiICAgaW5zdGFsbGVkICAgICAgICAgeyBgVycsYHQnIC0gdHJpZ2dlcnMgYXJlIGF3YWl0ZWQgcmVzcC4gcGVuZGluZy5cbiIKKyIgT2xkIG1hcms6IHdoYXQgd2FzIHJlcXVlc3RlZCBmb3IgdGhpcyBwYWNrYWdlIGJlZm9yZSBwcmVzZW50aW5nIHRoaXMgbGlzdDtcbiIKKyIgTWFyazogd2hhdCBpcyByZXF1ZXN0ZWQgZm9yIHRoaXMgcGFja2FnZTpcbiIKKyIgIGAqJzogbWFya2VkIGZvciBpbnN0YWxsYXRpb24gb3IgdXBncmFkZTtcbiIKKyIgIGAtJzogbWFya2VkIGZvciByZW1vdmFsLCBidXQgYW55IGNvbmZpZ3VyYXRpb24gZmlsZXMgd2lsbCByZW1haW47XG4iCisiICBgPSc6IG9uIGhvbGQ6IHBhY2thZ2Ugd2lsbCBub3QgYmUgcHJvY2Vzc2VkIGF0IGFsbDtcbiIKKyIgIGBfJzogbWFya2VkIGZvciBwdXJnZSBjb21wbGV0ZWx5IC0gZXZlbiByZW1vdmUgY29uZmlndXJhdGlvbjtcbiIKKyIgIGBuJzogcGFja2FnZSBpcyBuZXcgYW5kIGhhcyB5ZXQgdG8gYmUgbWFya2VkIGZvciBpbnN0YWxsL3JlbW92ZS8mYy5cbiIKKyJcbiIKKyJBbHNvIGRpc3BsYXllZCBhcmUgZWFjaCBwYWNrYWdlJ3MgUHJpb3JpdHksIFNlY3Rpb24sIG5hbWUsIGluc3RhbGxlZCBhbmRcbiIKKyJhdmFpbGFibGUgdmVyc2lvbiBudW1iZXJzIChzaGlmdC1WIHRvIGRpc3BsYXkvaGlkZSkgYW5kIHN1bW1hcnkgIgorImRlc2NyaXB0aW9uLlxuIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTUyCittc2dpZCAiRGlzcGxheSwgcGFydCAyOiBsaXN0IGhpZ2hsaWdodDsgaW5mb3JtYXRpb24gZGlzcGxheSIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjE1MgorbXNnaWQgIiIKKyIqIEhpZ2hsaWdodDogT25lIGxpbmUgaW4gdGhlIHBhY2thZ2UgbGlzdCB3aWxsIGJlIGhpZ2hsaWdodGVkLiAgSXQgIgorImluZGljYXRlc1xuIgorIiAgd2hpY2ggcGFja2FnZShzKSB3aWxsIGJlIGFmZmVjdGVkIGJ5IHByZXNzZXMgb2YgYCsnLCBgLScgYW5kIGBfJy5cbiIKKyJcbiIKKyIqIFRoZSBkaXZpZGluZyBsaW5lIGluIHRoZSBtaWRkbGUgb2YgdGhlIHNjcmVlbiBzaG93cyBhIGJyaWVmIGV4cGxhbmF0aW9uICIKKyJvZlxuIgorIiAgdGhlIHN0YXR1cyBvZiB0aGUgY3VycmVudGx5LWhpZ2hsaWdodGVkIHBhY2thZ2UsIG9yIGEgZGVzY3JpcHRpb24gb2YgIgorIndoaWNoXG4iCisiICBncm91cCBpcyBoaWdobGlnaHRlZCBpZiBhIGdyb3VwIGxpbmUgaXMuICBJZiB5b3UgZG9uJ3QgdW5kZXJzdGFuZCB0aGVcbiIKKyIgIG1lYW5pbmcgb2Ygc29tZSBvZiB0aGUgc3RhdHVzIGNoYXJhY3RlcnMgZGlzcGxheWVkLCBnbyB0byB0aGUgcmVsZXZhbnRcbiIKKyIgIHBhY2thZ2UgYW5kIGxvb2sgYXQgdGhpcyBkaXZpZGVyIGxpbmUsIG9yIHVzZSB0aGUgYHYnIGtleSBmb3IgYSB2ZXJib3NlXG4iCisiICBkaXNwbGF5IChwcmVzcyBgdicgYWdhaW4gdG8gZ28gYmFjayB0byB0aGUgdGVyc2UgZGlzcGxheSkuXG4iCisiXG4iCisiKiBUaGUgYm90dG9tIG9mIHRoZSBzY3JlZW4gc2hvd3MgbW9yZSBpbmZvcm1hdGlvbiBhYm91dCB0aGVcbiIKKyIgIGN1cnJlbnRseS1oaWdobGlnaHRlZCBwYWNrYWdlIChpZiB0aGVyZSBpcyBvbmx5IG9uZSkuXG4iCisiXG4iCisiICBJdCBjYW4gc2hvdyBhbiBleHRlbmRlZCBkZXNjcmlwdGlvbiBvZiB0aGUgcGFja2FnZSwgdGhlIGludGVybmFsIHBhY2thZ2VcbiIKKyIgIGNvbnRyb2wgZGV0YWlscyAoZWl0aGVyIGZvciB0aGUgaW5zdGFsbGVkIG9yIGF2YWlsYWJsZSB2ZXJzaW9uIG9mIHRoZVxuIgorIiAgcGFja2FnZSksIG9yIGluZm9ybWF0aW9uIGFib3V0IGNvbmZsaWN0cyBhbmQgZGVwZW5kZW5jaWVzIGludm9sdmluZyB0aGVcbiIKKyIgIGN1cnJlbnQgcGFja2FnZSAoaW4gY29uZmxpY3QvZGVwZW5kZW5jeSByZXNvbHV0aW9uIHN1Ymxpc3RzKS5cbiIKKyJcbiIKKyIgIFVzZSB0aGUgYGknIGtleSB0byBjeWNsZSB0aHJvdWdoIHRoZSBkaXNwbGF5cywgYW5kIGBJJyB0byBoaWRlIHRoZVxuIgorIiAgaW5mb3JtYXRpb24gZGlzcGxheSBvciBleHBhbmQgaXQgdG8gdXNlIGFsbW9zdCBhbGwgb2YgdGhlIHNjcmVlbi5cbiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjE3NgorbXNnaWQgIkludHJvZHVjdGlvbiB0byBtZXRob2Qgc2VsZWN0aW9uIGRpc3BsYXkiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxNzYKK21zZ2lkICIiCisiZHNlbGVjdCBhbmQgZHBrZyBjYW4gZG8gYXV0b21hdGljIGluc3RhbGxhdGlvbiwgbG9hZGluZyB0aGUgcGFja2FnZSBmaWxlcyB0byAiCisiYmVcbiIKKyJpbnN0YWxsZWQgZnJvbSBvbmUgb2YgYSBudW1iZXIgb2YgZGlmZmVyZW50IHBvc3NpYmxlIHBsYWNlcy5cbiIKKyJcbiIKKyJUaGlzIGxpc3QgYWxsb3dzIHlvdSB0byBzZWxlY3Qgb25lIG9mIHRoZXNlIGluc3RhbGxhdGlvbiBtZXRob2RzLlxuIgorIlxuIgorIk1vdmUgdGhlIGhpZ2hsaWdodCB0byB0aGUgbWV0aG9kIHlvdSB3aXNoIHRvIHVzZSwgYW5kIGhpdCBFbnRlci4gIFlvdSB3aWxsICIKKyJ0aGVuXG4iCisiYmUgcHJvbXB0ZWQgZm9yIHRoZSBpbmZvcm1hdGlvbiByZXF1aXJlZCB0byBkbyB0aGUgaW5zdGFsbGF0aW9uLlxuIgorIlxuIgorIkFzIHlvdSBtb3ZlIHRoZSBoaWdobGlnaHQgYSBkZXNjcmlwdGlvbiBvZiBlYWNoIG1ldGhvZCwgd2hlcmUgYXZhaWxhYmxlLCBpc1xuIgorImRpc3BsYXllZCBpbiB0aGUgYm90dG9tIGhhbGYgb2YgdGhlIHNjcmVlbi5cbiIKKyJcbiIKKyJJZiB5b3Ugd2lzaCB0byBxdWl0IHdpdGhvdXQgY2hhbmdpbmcgYW55dGhpbmcgdXNlIHRoZSBgeCcga2V5IHdoaWxlIGluIHRoZSAiCisibGlzdFxuIgorIm9mIGluc3RhbGxhdGlvbiBtZXRob2RzLlxuIgorIlxuIgorIkEgZnVsbCBsaXN0IG9mIGtleXN0cm9rZXMgaXMgYXZhaWxhYmxlIGJ5IHByZXNzaW5nIGBrJyBub3csIG9yIGZyb20gdGhlICIKKyJoZWxwXG4iCisibWVudSByZWFjaGFibGUgYnkgcHJlc3NpbmcgYD8nLlxuIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTk2Cittc2dpZCAiS2V5c3Ryb2tlcyBmb3IgbWV0aG9kIHNlbGVjdGlvbiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjE5NgorbXNnaWQgIiIKKyJNb3Rpb24ga2V5czogTmV4dC9QcmV2aW91cywgVG9wL0VuZCwgVXAvRG93biwgQmFja3dhcmRzL0ZvcndhcmRzOlxuIgorIiAgaiwgRG93bi1hcnJvdyAgICAgICAgIGssIFVwLWFycm93ICAgICAgICAgICAgIG1vdmUgaGlnaGxpZ2h0XG4iCisiICBOLCBQYWdlLWRvd24sIFNwYWNlICAgUCwgUGFnZS11cCwgQmFja3NwYWNlICAgc2Nyb2xsIGxpc3QgYnkgMSBwYWdlXG4iCisiICBebiAgICAgICAgICAgICAgICAgICAgXnAgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGxpc3QgYnkgMSBsaW5lXG4iCisiICB0LCBIb21lICAgICAgICAgICAgICAgZSwgRW5kICAgICAgICAgICAgICAgICAganVtcCB0byB0b3AvZW5kIG9mIGxpc3RcbiIKKyIgIHUgICAgICAgICAgICAgICAgICAgICBkICAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyBieSAxIHBhZ2VcbiIKKyIgIF51ICAgICAgICAgICAgICAgICAgICBeZCAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyBieSAxIGxpbmVcbiIKKyIgIEIsIExlZnQtYXJyb3cgICAgICAgICBGLCBSaWdodC1hcnJvdyAgICAgICAgICBwYW4gZGlzcGxheSBieSAxLzMgc2NyZWVuXG4iCisiICBeYiAgICAgICAgICAgICAgICAgICAgXmYgICAgICAgICAgICAgICAgICAgICAgcGFuIGRpc3BsYXkgYnkgMSBjaGFyYWN0ZXJcbiIKKyIoVGhlc2UgYXJlIHRoZSBzYW1lIG1vdGlvbiBrZXlzIGFzIGluIHRoZSBwYWNrYWdlIGxpc3QgZGlzcGxheS4pXG4iCisiXG4iCisiUXVpdDpcbiIKKyIgUmV0dXJuLCBFbnRlciAgICBzZWxlY3QgdGhpcyBtZXRob2QgYW5kIGdvIHRvIGl0cyBjb25maWd1cmF0aW9uIGRpYWxvZ3VlXG4iCisiIHgsIFggICAgICAgICAgICAgZXhpdCB3aXRob3V0IGNoYW5naW5nIG9yIHNldHRpbmcgdXAgdGhlIGluc3RhbGxhdGlvbiAiCisibWV0aG9kXG4iCisiXG4iCisiTWlzY2VsbGFuZW91czpcbiIKKyIgID8sIEhlbHAsIEYxICAgICAgcmVxdWVzdCBoZWxwXG4iCisiIF5sICAgICAgICAgICAgICAgIHJlZHJhdyBkaXNwbGF5XG4iCisiICAvICAgICAgICAgICAgICAgIHNlYXJjaCAoanVzdCByZXR1cm4gdG8gY2FuY2VsKVxuIgorIiAgXFwgICAgICAgICAgICAgICAgcmVwZWF0IGxhc3Qgc2VhcmNoXG4iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tYWluLmNjOjYwCittc2dpZCAiVHlwZSBkc2VsZWN0IC0taGVscCBmb3IgaGVscC4iCittc2dzdHIgIlVrdWNhanRlIGRzZWxlY3QgLS1oZWxwIHphIHBvbW/Ehy4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDMKK21zZ2lkICJhIgorbXNnc3RyICJwIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQzCittc2dpZCAiW0FdY2Nlc3MiCittc2dzdHIgIltQXXJpc3R1cCIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0MworbXNnaWQgIkNob29zZSB0aGUgYWNjZXNzIG1ldGhvZCB0byB1c2UuIgorbXNnc3RyICJJemFiZXJpdGUgbWV0b2QgcHJpc3R1cGEga29qaSDEh2Ugc2Uga29yaXNpdGkuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ0Cittc2dpZCAidSIKK21zZ3N0ciAiYSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NAorbXNnaWQgIltVXXBkYXRlIgorbXNnc3RyICJbQV3FvnVyaXJhaiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NAorbXNnaWQgIlVwZGF0ZSBsaXN0IG9mIGF2YWlsYWJsZSBwYWNrYWdlcywgaWYgcG9zc2libGUuIgorbXNnc3RyICJBxb51cmlyYWogbGlzdHUgZG9zdHVwbmloIHBha2V0YSwgcG8gbW9ndcSHbm9zdGkuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ1Cittc2dpZCAicyIKK21zZ3N0ciAibyIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NQorbXNnaWQgIltTXWVsZWN0IgorbXNnc3RyICJbT11kYWJpciIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NQorbXNnaWQgIlJlcXVlc3Qgd2hpY2ggcGFja2FnZXMgeW91IHdhbnQgb24geW91ciBzeXN0ZW0uIgorbXNnc3RyICJPZGFiZXJpdGUga29qZSBwYWtldGUgxb5lbGl0ZSBuYSB2YcWhZW0gc2lzdGVtdS4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDYKK21zZ2lkICJpIgorbXNnc3RyICJpIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ2Cittc2dpZCAiW0ldbnN0YWxsIgorbXNnc3RyICJbSV1uc3RhbGlyYWoiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDYKK21zZ2lkICJJbnN0YWxsIGFuZCB1cGdyYWRlIHdhbnRlZCBwYWNrYWdlcy4iCittc2dzdHIgIkluc3RhbGlyYWogaSBuYWRvZ3JhZGkgxb5lbGplbmUgcGFrZXRlLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NworbXNnaWQgImMiCittc2dzdHIgImQiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDcKK21zZ2lkICJbQ11vbmZpZyIKK21zZ3N0ciAiUG9bZF1lc2kiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDcKK21zZ2lkICJDb25maWd1cmUgYW55IHBhY2thZ2VzIHRoYXQgYXJlIHVuY29uZmlndXJlZC4iCittc2dzdHIgIlBvZGVzaSBzdmUgcGFrZXRlIGtvamkgbmlzdSBwb2RlxaFlbmkuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ4Cittc2dpZCAiciIKK21zZ3N0ciAidSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OAorbXNnaWQgIltSXWVtb3ZlIgorbXNnc3RyICJbVV1rbG9uaSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OAorbXNnaWQgIlJlbW92ZSB1bndhbnRlZCBzb2Z0d2FyZS4iCittc2dzdHIgIlVrbG9uaSBuZcW+ZWxqZW5pIHNvZnR3YXJlIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ5Cittc2dpZCAicSIKK21zZ3N0ciAieiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OQorbXNnaWQgIltRXXVpdCIKK21zZ3N0ciAiSVt6XWHEkWkiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDkKK21zZ2lkICJRdWl0IGRzZWxlY3QuIgorbXNnc3RyICJJemHEkWkgaXogZHNlbGVjdCBwcm9ncmFtYS4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNTAKK21zZ2lkICJtZW51IgorbXNnc3RyICJtZW5pIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTU1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIGhhbmRsaW5nIGZyb250ZW5kIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkRlYmlhbm92IGAlcycgcHJvZ3JhbSB6YSBydWtvdmFuamUgcGFrZXRpbWEuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTU4Cittc2dpZCAiIgorIkNvcHlyaWdodCAoQykgMTk5NC0xOTk2IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uXG4iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE2MgorIywgZnV6enkKK21zZ2lkICIiCisiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvclxuIgorImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LlxuIgorbXNnc3RyICIiCisiVmVyemlqYSAlcy5cbiIKKyJDb3B5cmlnaHQgKEMpIDE5OTQtMTk5NiBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLlxuIgorIk92byBqZSBzbG9ib2RhbiBzb2Z0d2FyZTsgcG9nbGVkYWp0ZSBHTlUgb3DFoXR1IGphdm51IGxpY2VuY3UgdmVyemlqZSAyXG4iCisiaWxpIGthc25panUgemEgdXNsb3ZlIGtvcGlyYW5qYS4gIE5FTUEgZ2FyYW5jaWplLiAgUG9nbGVkYWp0ZVxuIgorImRzZWxlY3QgLS1saWNlbmNlIHphIGRldGFsamUuXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNzIgZHNlbGVjdC9tYWluLmNjOjIyMAorbXNnaWQgIjxzdGFuZGFyZCBvdXRwdXQ+IgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSBbPGFjdGlvbj4gLi4uXVxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyIgIC0tZXhwZXJ0ICAgICAgICAgICAgICAgICAgIFR1cm4gb24gZXhwZXJ0IG1vZGUuXG4iCisiICAtLWRlYnVnIDxmaWxlPiB8IC1EPGZpbGU+ICBUdXJuIG9uIGRlYnVnZ2luZywgc2VuZGluZyBvdXRwdXQgdG8gPGZpbGU+LlxuIgorIiAgLS1jb2xvdXIgfCAtLWNvbG9yIHNjcmVlbnBhcnQ6W2ZvcmVncm91bmRdLFtiYWNrZ3JvdW5kXVs6YXR0clsrYXR0cisuLl1dXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDb25maWd1cmUgc2NyZWVuIGNvbG91cnMuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE5NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgICBTaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICAgU2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjAxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJBY3Rpb25zOlxuIgorIiAgYWNjZXNzIHVwZGF0ZSBzZWxlY3QgaW5zdGFsbCBjb25maWcgcmVtb3ZlIHF1aXRcbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjA1CisjLCBjLWZvcm1hdAorbXNnaWQgIlNjcmVlbnBhcnRzOlxuIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ29sb3VyczpcbiIKK21zZ3N0ciAiQm9qZTpcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjIxNQorIywgYy1mb3JtYXQKK21zZ2lkICJBdHRyaWJ1dGVzOlxuIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGRuJ3Qgb3BlbiBkZWJ1ZyBmaWxlIGAlLjI1NXMnXG4iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tYWluLmNjOjI1MworIywgYy1mb3JtYXQKK21zZ2lkICJJbnZhbGlkICVzIGAlcydcbiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjcwCittc2dpZCAic2NyZWVuIHBhcnQiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tYWluLmNjOjI3NgorbXNnaWQgIk51bGwgY29sb3VyIHNwZWNpZmljYXRpb25cbiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21haW4uY2M6Mjg0IGRzZWxlY3QvbWFpbi5jYzoyODkKK21zZ2lkICJjb2xvdXIiCittc2dzdHIgImJvamEiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyOTcKK21zZ2lkICJjb2xvdXIgYXR0cmlidXRlIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzozMjkKK21zZ2lkICJUZXJtaW5hbCBkb2VzIG5vdCBhcHBlYXIgdG8gc3VwcG9ydCBjdXJzb3IgYWRkcmVzc2luZy5cbiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21haW4uY2M6MzMxCittc2dpZCAiVGVybWluYWwgZG9lcyBub3QgYXBwZWFyIHRvIHN1cHBvcnQgaGlnaGxpZ2h0aW5nLlxuIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzozMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlNldCB5b3VyIFRFUk0gdmFyaWFibGUgY29ycmVjdGx5LCB1c2UgYSBiZXR0ZXIgdGVybWluYWwsXG4iCisib3IgbWFrZSBkbyB3aXRoIHRoZSBwZXItcGFja2FnZSBtYW5hZ2VtZW50IHRvb2wgJXMuXG4iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tYWluLmNjOjMzNgorbXNnaWQgInRlcm1pbmFsIGxhY2tzIG5lY2Vzc2FyeSBmZWF0dXJlcywgZ2l2aW5nIHVwIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzo0MTcKK21zZ2lkICIiCisiXG4iCisiXG4iCisiTW92ZSBhcm91bmQgd2l0aCBeUCBhbmQgXk4sIGN1cnNvciBrZXlzLCBpbml0aWFsIGxldHRlcnMsIG9yIGRpZ2l0cztcbiIKKyJQcmVzcyA8ZW50ZXI+IHRvIGNvbmZpcm0gc2VsZWN0aW9uLiAgIF5MIHJlZHJhd3Mgc2NyZWVuLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzo0MjgKK21zZ2lkICIiCisiXG4iCisiXG4iCisiUmVhZC1vbmx5IGFjY2Vzczogb25seSBwcmV2aWV3IG9mIHNlbGVjdGlvbnMgaXMgYXZhaWxhYmxlISIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21haW4uY2M6NDQ4Cittc2dpZCAiZmFpbGVkIHRvIGdldGNoIGluIG1haW4gbWVudSIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21haW4uY2M6NTMxCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gYWN0aW9uIHN0cmluZyBgJS41MHMnIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6NzcKK21zZ2lkICJkc2VsZWN0IC0gbGlzdCBvZiBhY2Nlc3MgbWV0aG9kcyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjg2CisjLCBjLWZvcm1hdAorbXNnaWQgIkFjY2VzcyBtZXRob2QgYCVzJy4iCittc2dzdHIgIk1ldG9kIHByaXN0dXBhIGAlcycuIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjEyMAorbXNnaWQgIkFiYnJldi4iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxMjEgZHNlbGVjdC9wa2dpbmZvLmNjOjEwNSBkc2VsZWN0L3BrZ3RvcC5jYzoyOTEKK21zZ2lkICJEZXNjcmlwdGlvbiIKK21zZ3N0ciAiT3BpcyIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxNjQgZHNlbGVjdC9wa2dsaXN0LmNjOjU3MgorbXNnaWQgImRvdXBkYXRlIGZhaWxlZCIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjE2NiBkc2VsZWN0L3BrZ2xpc3QuY2M6NTc1Cittc2dpZCAiZmFpbGVkIHRvIHVuYmxvY2sgU0lHV0lOQ0giCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxNzAgZHNlbGVjdC9wa2dsaXN0LmNjOjU4MAorbXNnaWQgImZhaWxlZCB0byByZS1ibG9jayBTSUdXSU5DSCIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjE3MSBkc2VsZWN0L3BrZ2xpc3QuY2M6NTgyCittc2dpZCAiZ2V0Y2ggZmFpbGVkIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTg4Cittc2dpZCAiRXhwbGFuYXRpb24iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxOTcKK21zZ2lkICJObyBleHBsYW5hdGlvbiBhdmFpbGFibGUuIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjY3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJcbiIKKyIlczogJXNcbiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzo3MAorbXNnaWQgIiIKKyJcbiIKKyJQcmVzcyA8ZW50ZXI+IHRvIGNvbnRpbnVlLiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoxNjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHJlc3MgPGVudGVyPiB0byBjb250aW51ZS5cbiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoxNjIKK21zZ2lkICI8c3RhbmRhcmQgZXJyb3I+IgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjE2NQorbXNnaWQgImVycm9yIHJlYWRpbmcgYWNrbm93bGVkZ2VtZW50IG9mIHByb2dyYW0gZmFpbHVyZSBtZXNzYWdlIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjE5NgorbXNnaWQgInVwZGF0ZSBhdmFpbGFibGUgbGlzdCBzY3JpcHQiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MjAwCittc2dpZCAiaW5zdGFsbGF0aW9uIHNjcmlwdCIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoyNDYKK21zZ2lkICJxdWVyeS9zZXR1cCBzY3JpcHQiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yIGluIG1ldGhvZCBvcHRpb25zIGZpbGUgYCUuMjUwcycgLS0gJXMiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcmVhZGluZyBvcHRpb25zIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgYCUuMjUwcycgZGlyZWN0b3J5IGZvciByZWFkaW5nIG1ldGhvZHMiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTA2CisjLCBjLWZvcm1hdAorbXNnaWQgIm1ldGhvZCBgJS4yNTBzJyBoYXMgbmFtZSB0aGF0IGlzIHRvbyBsb25nICglZCA+ICVkIGNoYXJhY3RlcnMpIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjExNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gYWNjZXNzIG1ldGhvZCBzY3JpcHQgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTIzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIG1ldGhvZCBvcHRpb25zIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTQ3Cittc2dpZCAibm9uLWRpZ2l0IHdoZXJlIGRpZ2l0IHdhbnRlZCIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNTAKK21zZ2lkICJFT0YgaW4gaW5kZXggc3RyaW5nIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE1MworbXNnaWQgImluZGV4IHN0cmluZyB0b28gbG9uZyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNTYKK21zZ2lkICJuZXdsaW5lIGJlZm9yZSBvcHRpb24gbmFtZSBzdGFydCIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNTgKK21zZ2lkICJFT0YgYmVmb3JlIG9wdGlvbiBuYW1lIHN0YXJ0IgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE2MgorbXNnaWQgIm5vbmFscGhhIHdoZXJlIG9wdGlvbiBuYW1lIHN0YXJ0IHdhbnRlZCIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNjQKK21zZ2lkICJub24tYWxwaGFudW0gaW4gb3B0aW9uIG5hbWUiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTY3Cittc2dpZCAiRU9GIGluIG9wdGlvbiBuYW1lIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE3MgorbXNnaWQgIm5ld2xpbmUgYmVmb3JlIHN1bW1hcnkiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTc0Cittc2dpZCAiRU9GIGJlZm9yZSBzdW1tYXJ5IgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE4MAorbXNnaWQgIkVPRiBpbiBzdW1tYXJ5IC0gbWlzc2luZyBuZXdsaW5lIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE5MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBvcHRpb24gZGVzY3JpcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxOTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgb3B0aW9uIGRlc2NyaXB0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTk4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZWFkIG9wdGlvbiBkZXNjcmlwdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjIwMQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBkdXJpbmcgcmVhZCBvZiBvcHRpb24gZGVzY3JpcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgZHVyaW5nIHJlYWQgb2YgbWV0aG9kIG9wdGlvbnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gY3VycmVudCBvcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyODkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gbmV3IG9wdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjI5MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgbmV3IG9wdGlvbiB0byBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyOTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIG5ldyBvcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyOTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IG9wdGlvbiBhcyBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MzYKK21zZ2lkICJuZXcgcGFja2FnZSIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MzcKK21zZ2lkICJpbnN0YWxsIgorbXNnc3RyICJpbnN0YWxpcmFqIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MzgKK21zZ2lkICJob2xkIgorbXNnc3RyICJ6YWRyxb5pIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MzkKK21zZ2lkICJyZW1vdmUiCittc2dzdHIgInVrbG9uaSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjQwCittc2dpZCAicHVyZ2UiCittc2dzdHIgIm/EjWlzdGkiCisKKyMuIFRSQU5TTEFUT1JTOiBUaGUgc3BhY2UgaXMgYSB0cmljayB0byB3b3JrIGFyb3VuZCBnZXR0ZXh0IHdoaWNoIHVzZXMKKyMuICogdGhlIGVtcHR5IHN0cmluZyB0byBzdG9yZSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgdHJhbnNsYXRpb24uIERPIE5PVAorIy4gKiBDSEFOR0UgVEhBVCBJTiBBIFRSQU5TTEFUSU9OISBUaGUgY29kZSByZWFsbHkgcmVsaWVzIG9uIHRoYXQgYmVpbmcKKyMuICogYSBzaW5nbGUgc3BhY2UuCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NDcKK21zZ2lkICIgIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo0OAorbXNnaWQgIlJFSU5TVEFMTCIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTEKK21zZ2lkICJub3QgaW5zdGFsbGVkIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1MgorbXNnaWQgInJlbW92ZWQgKGNvbmZpZ3MgcmVtYWluKSIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTMKK21zZ2lkICJoYWxmIGluc3RhbGxlZCIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTQKK21zZ2lkICJ1bnBhY2tlZCAobm90IHNldCB1cCkiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjU1Cittc2dpZCAiaGFsZiBjb25maWd1cmVkIChjb25maWcgZmFpbGVkKSIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTYKK21zZ2lkICJhd2FpdGluZyB0cmlnZ2VyIHByb2Nlc3NpbmciCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjU3Cittc2dpZCAidHJpZ2dlcmVkIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1OAorbXNnaWQgImluc3RhbGxlZCIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjEKK21zZ2lkICJSZXF1aXJlZCIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjIKK21zZ2lkICJJbXBvcnRhbnQiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjYzCittc2dpZCAiU3RhbmRhcmQiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjY0Cittc2dpZCAiT3B0aW9uYWwiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjY1Cittc2dpZCAiRXh0cmEiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjY2Cittc2dpZCAiIUJ1ZyEiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjY3Cittc2dpZCAiVW5jbGFzc2lmaWVkIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3MAorbXNnaWQgInN1Z2dlc3RzIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3MQorbXNnaWQgInJlY29tbWVuZHMiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjcyCittc2dpZCAiZGVwZW5kcyBvbiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzMKK21zZ2lkICJwcmUtZGVwZW5kcyBvbiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzQKK21zZ2lkICJicmVha3MiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjc1Cittc2dpZCAiY29uZmxpY3RzIHdpdGgiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjc2Cittc2dpZCAicHJvdmlkZXMiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjc3Cittc2dpZCAicmVwbGFjZXMiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjc4Cittc2dpZCAiZW5oYW5jZXMiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjgxCittc2dpZCAiUmVxIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4MgorbXNnaWQgIkltcCIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODMKK21zZ2lkICJTdGQiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjg0Cittc2dpZCAiT3B0IgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4NQorbXNnaWQgIlh0ciIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODYKK21zZ2lkICJiVUciCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjg3Cittc2dpZCAiPyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6OTUgZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExNQorbXNnaWQgIkJyb2tlbiIKK21zZ3N0ciAiT8WhdGXEh2VuaSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjk2Cittc2dpZCAiTmV3IgorbXNnc3RyICJOb3ZpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6OTcKK21zZ2lkICJVcGRhdGVkIgorbXNnc3RyICJBxb51cmlyYW5pIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6OTgKK21zZ2lkICJPYnNvbGV0ZS9sb2NhbCIKK21zZ3N0ciAiWmFzdGFyamVsaS9sb2thbG5pIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6OTkKK21zZ2lkICJVcC10by1kYXRlIgorbXNnc3RyICJBxb51cmlyYW5pIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTAwCittc2dpZCAiQXZhaWxhYmxlIgorbXNnc3RyICJEb3N0dXBuaSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwMSBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTE3Cittc2dpZCAiUmVtb3ZlZCIKK21zZ3N0ciAiVWtsb25qZW5pIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTAyIGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTEKK21zZ2lkICJCcm9rZW5seSBpbnN0YWxsZWQgcGFja2FnZXMiCittc2dzdHIgIk5lcHJhdmlsbm8gaW5zdGFsaXJhbmkgcGFrZXRpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTAzCittc2dpZCAiTmV3bHkgYXZhaWxhYmxlIHBhY2thZ2VzIgorbXNnc3RyICJOb3ZpIGRvc3R1cG5pIHBha2V0aSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwNAorbXNnaWQgIlVwZGF0ZWQgcGFja2FnZXMgKG5ld2VyIHZlcnNpb24gaXMgYXZhaWxhYmxlKSIKK21zZ3N0ciAiQcW+dXJpcmFuaSBwYWtldGkgKG5vdmlqYSB2ZXJ6aWphIGplIGRvc3R1cG5hKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwNQorbXNnaWQgIk9ic29sZXRlIGFuZCBsb2NhbCBwYWNrYWdlcyBwcmVzZW50IG9uIHN5c3RlbSIKK21zZ3N0ciAiWmFzdGFyamVsaSBpIGxva2FsbmkgcGFrZXRpIHByaXN1dG5pIG5hIHNpc3RlbXUiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDYKK21zZ2lkICJVcCB0byBkYXRlIGluc3RhbGxlZCBwYWNrYWdlcyIKK21zZ3N0ciAiQcW+dXJpcmFuaSBpbnN0YWxpcmFuaSBwYWtldGkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDcKK21zZ2lkICJBdmFpbGFibGUgcGFja2FnZXMgKG5vdCBjdXJyZW50bHkgaW5zdGFsbGVkKSIKK21zZ3N0ciAiRG9zdHVwbmkgcGFrZXRpICh0cmVudXRubyBuaXN1IGluc3RhbGlyYW5pKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwOAorbXNnaWQgIlJlbW92ZWQgYW5kIG5vIGxvbmdlciBhdmFpbGFibGUgcGFja2FnZXMiCittc2dzdHIgIlVrbG9uamVuaSBpIHZpxaFlIG5lZG9zdHVwbmkgcGFrZXRpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTEyCittc2dpZCAiSW5zdGFsbGVkIHBhY2thZ2VzIgorbXNnc3RyICJJbnN0YWxpcmFuaSBwYWtldGkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTMKK21zZ2lkICJSZW1vdmVkIHBhY2thZ2VzIChjb25maWd1cmF0aW9uIHN0aWxsIHByZXNlbnQpIgorbXNnc3RyICJVa2xvbmplbmkgcGFrZXRpIChrb25maWd1cmFjaWpza2UgZGF0b3Rla2Ugam/FoSBwcmlzdXRuZSkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTQKK21zZ2lkICJQdXJnZWQgcGFja2FnZXMgYW5kIHRob3NlIG5ldmVyIGluc3RhbGxlZCIKK21zZ3N0ciAiT8SNacWhxIdlbmkgcGFrZXRpIGkgb25pIGtvamkgbmlzdSBwcmlqZSBiaWxpIGluc3RhbGlyYW5pIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTE2Cittc2dpZCAiSW5zdGFsbGVkIgorbXNnc3RyICJJbnN0YWxpcmFubyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExOAorbXNnaWQgIlB1cmdlZCIKK21zZ3N0ciAiT8SNacWhxIdlbm8iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxOTgKK21zZ2lkICJkc2VsZWN0IC0gcmVjdXJzaXZlIHBhY2thZ2UgbGlzdGluZyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTk5Cittc2dpZCAiZHNlbGVjdCAtIGluc3BlY3Rpb24gb2YgcGFja2FnZSBzdGF0ZXMiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIwMAorbXNnaWQgImRzZWxlY3QgLSBtYWluIHBhY2thZ2UgbGlzdGluZyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjA4Cittc2dpZCAiIChieSBzZWN0aW9uKSIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjExCittc2dpZCAiIChhdmFpbC4sIHNlY3Rpb24pIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMTQKK21zZ2lkICIgKHN0YXR1cywgc2VjdGlvbikiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIyMworbXNnaWQgIiAoYnkgcHJpb3JpdHkpIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMjYKK21zZ2lkICIgKGF2YWlsLiwgcHJpb3JpdHkpIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMjkKK21zZ2lkICIgKHN0YXR1cywgcHJpb3JpdHkpIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMzggZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI1MAorbXNnaWQgIiAoYWxwaGFiZXRpY2FsbHkpIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNDEKK21zZ2lkICIgKGJ5IGF2YWlsYWJpbGl0eSkiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI0NAorbXNnaWQgIiAoYnkgc3RhdHVzKSIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjU4Cittc2dpZCAiIG1hcms6Ky89Ly0gdGVyc2U6diBoZWxwOj8iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI1OQorbXNnaWQgIiBtYXJrOisvPS8tIHZlcmJvc2U6diBoZWxwOj8iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI2MAorbXNnaWQgIiB0ZXJzZTp2IGhlbHA6PyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjYxCittc2dpZCAiIHZlcmJvc2U6diBoZWxwOj8iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dpbmZvLmNjOjgwCittc2dpZCAiIgorIlRoZSBsaW5lIHlvdSBoYXZlIGhpZ2hsaWdodGVkIHJlcHJlc2VudHMgbWFueSBwYWNrYWdlczsgaWYgeW91IGFzayB0byAiCisiaW5zdGFsbCwgcmVtb3ZlLCBob2xkLCBldGMuIGl0IHlvdSB3aWxsIGFmZmVjdCBhbGwgdGhlIHBhY2thZ2VzIHdoaWNoIG1hdGNoICIKKyJ0aGUgY3JpdGVyaW9uIHNob3duLlxuIgorIlxuIgorIklmIHlvdSBtb3ZlIHRoZSBoaWdobGlnaHQgdG8gYSBsaW5lIGZvciBhIHBhcnRpY3VsYXIgcGFja2FnZSB5b3Ugd2lsbCBzZWUgIgorImluZm9ybWF0aW9uIGFib3V0IHRoYXQgcGFja2FnZSBkaXNwbGF5ZWQgaGVyZS5cbiIKKyJZb3UgY2FuIHVzZSBgbycgYW5kIGBPJyB0byBjaGFuZ2UgdGhlIHNvcnQgb3JkZXIgYW5kIGdpdmUgeW91cnNlbGYgdGhlICIKKyJvcHBvcnR1bml0eSB0byBtYXJrIHBhY2thZ2VzIGluIGRpZmZlcmVudCBraW5kcyBvZiBncm91cHMuIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnaW5mby5jYzo5MworbXNnaWQgIkludGVycmVsYXRpb25zaGlwcyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2luZm8uY2M6MTEyCittc2dpZCAiTm8gZGVzY3JpcHRpb24gYXZhaWxhYmxlLiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2luZm8uY2M6MTMwCittc2dpZCAiSW5zdGFsbGVkIGNvbnRyb2wgZmlsZSBpbmZvcm1hdGlvbiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2luZm8uY2M6MTQ2Cittc2dpZCAiQXZhaWxhYmxlIGNvbnRyb2wgZmlsZSBpbmZvcm1hdGlvbiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2xpc3QuY2M6NDE2Cittc2dpZCAiVGhlcmUgYXJlIG5vIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2xpc3QuY2M6NTA3Cittc2dpZCAiaW52YWxpZCBzZWFyY2ggb3B0aW9uIGdpdmVuIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnbGlzdC5jYzo1MjEKK21zZ2lkICJlcnJvciBpbiByZWd1bGFyIGV4cHJlc3Npb24iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dzdWJsaXN0LmNjOjEwNworbXNnaWQgIiBkb2VzIG5vdCBhcHBlYXIgdG8gYmUgYXZhaWxhYmxlXG4iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dzdWJsaXN0LmNjOjEyNworbXNnaWQgIiBvciAiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6NTcKK21zZ2lkICJBbGwiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6NzkKK21zZ2lkICJBbGwgcGFja2FnZXMiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcGFja2FnZXMgd2l0aG91dCBhIHNlY3Rpb24iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcGFja2FnZXMgaW4gc2VjdGlvbiAlcyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo5MQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyAlcyBwYWNrYWdlcyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo5NQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyAlcyBwYWNrYWdlcyB3aXRob3V0IGEgc2VjdGlvbiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo5NworIywgYy1mb3JtYXQKK21zZ2lkICIlcyAlcyBwYWNrYWdlcyBpbiBzZWN0aW9uICVzIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjExOAorIywgYy1mb3JtYXQKK21zZ2lkICIlLSpzICVzJXMlczsgICVzICh3YXM6ICVzKS4gICVzIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI2MworbXNnaWQgIkVycm9yIgorbXNnc3RyICJHcmXFoWthIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyNjcKK21zZ2lkICJJbnN0YWxsZWQ/IgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI3MQorbXNnaWQgIk9sZCBtYXJrIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI3NQorbXNnaWQgIk1hcmtlZCBmb3IiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6Mjc4Cittc2dpZCAiRUlPTSIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyODAKK21zZ2lkICJTZWN0aW9uIgorbXNnc3RyICJTZWtjaWphIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyODEKK21zZ2lkICJQcmlvcml0eSIKK21zZ3N0ciAiUHJpb3JpdGV0IgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyODIKK21zZ2lkICJQYWNrYWdlIgorbXNnc3RyICJQYWtldCIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6Mjg2Cittc2dpZCAiSW5zdC52ZXIiCittc2dzdHIgIkluc3QudmVyIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyODkKK21zZ2lkICJBdmFpbC52ZXIiCittc2dzdHIgIkRvc3R1cC52ZXIiCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vY2EuZ21vIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL2NhLmdtbwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45YThlOGY4Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL2NhLmdtbwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vY2EucG8gYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vY2EucG8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjU2OGVjYQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9jYS5wbwpAQCAtMCwwICsxLDE3MzMgQEAKKyMgQ2F0YWxhbiB0cmFuc2xhdGlvbiBvZiBEc2VsZWN0LgorIyBDb3B5cmlnaHQgwqkgMjAwMSwgMjAwMiwgMjAwMywgMjAwNCwgMjAwNSwgMjAwNiwgMjAxMCBTb2Z0d2FyZSBpbiB0aGUgUHVibGljIEludGVyZXN0LCBJbmMuCisjIEFudG9uaSBCZWxsYSA8YmVsbGE1QHRlbGVsaW5lLmVzPiwgMjAwMSwgMjAwMi4KKyMgSm9yZGkgTWFsbGFjaCA8am9yZGlAZGViaWFuLm9yZz4sIDIwMDIsIDIwMDMsIDIwMDQsIDIwMDUsIDIwMDYsIDIwMTAuCisjIEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4sIDIwMTAuCisjCittc2dpZCAiIgorbXNnc3RyICIiCisiUHJvamVjdC1JZC1WZXJzaW9uOiBkcGtnIDEuMTUuOC42XG4iCisiUmVwb3J0LU1zZ2lkLUJ1Z3MtVG86IGRlYmlhbi1kcGtnQGxpc3RzLmRlYmlhbi5vcmdcbiIKKyJQT1QtQ3JlYXRpb24tRGF0ZTogMjAxMS0xMC0xNCAwNzoxMSswMjAwXG4iCisiUE8tUmV2aXNpb24tRGF0ZTogMjAxMC0xMC0yNCAxNzozOCswMjAwXG4iCisiTGFzdC1UcmFuc2xhdG9yOiBKb3JkaSBNYWxsYWNoIDxqb3JkaUBkZWJpYW4ub3JnPlxuIgorIkxhbmd1YWdlLVRlYW06IENhdGFsYW4gPGRlYmlhbi1sMTBuLWNhdGFsYW5AbGlzdHMuZGViaWFuLm9yZz5cbiIKKyJMYW5ndWFnZTogY2FcbiIKKyJNSU1FLVZlcnNpb246IDEuMFxuIgorIkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD1VVEYtOFxuIgorIkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXRcbiIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxMjUKK21zZ2lkICJTZWFyY2ggZm9yID8gIgorbXNnc3RyICJDZXJjYTogIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE0NworbXNnaWQgIkVycm9yOiAiCittc2dzdHIgIkVycm9yOiAiCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MTc4Cittc2dpZCAiSGVscDogIgorbXNnc3RyICJBanVkYTogIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE4NAorbXNnaWQgIlByZXNzID8gZm9yIGhlbHAgbWVudSwgLiBmb3IgbmV4dCB0b3BpYywgPHNwYWNlPiB0byBleGl0IGhlbHAuIgorbXNnc3RyICIiCisiUHJlbWV1ID8gcGVyIGFsIG1lbsO6IGQnYWp1ZGEsIC4gcGVyIGFsIHNlZ8O8ZW50IHRlbWEsIDxlc3BhaT4gcGVyIGEgc29ydGlyLiIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxOTEKK21zZ2lkICJIZWxwIGluZm9ybWF0aW9uIGlzIGF2YWlsYWJsZSB1bmRlciB0aGUgZm9sbG93aW5nIHRvcGljczoiCittc2dzdHIgIkxhIGluZm8uIGQnYWp1ZGEgZXN0w6AgZGlzcG9uaWJsZSBzb3RhIGVscyBzZWfDvGVudHMgdGVtZXM6IgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE5OQorbXNnaWQgIiIKKyJQcmVzcyBhIGtleSBmcm9tIHRoZSBsaXN0IGFib3ZlLCA8c3BhY2U+IG9yIGBxJyB0byBleGl0IGhlbHAsXG4iCisiICBvciBgLicgKGZ1bGwgc3RvcCkgdG8gcmVhZCBlYWNoIGhlbHAgcGFnZSBpbiB0dXJuLiAiCittc2dzdHIgIiIKKyJQcmVtZXUgdW5hIHRlY2xhIGRlIGRlIGxhIGxsaXN0YSBzdXBlcmlvciwgPGVzcGFpPiBvIMKrccK7IHBlciBhIHNvcnRpciBkZVxuIgorImwnYWp1ZGEsIG8gwqsuwrsgKHB1bnQpIHBlciBhIGxsZWdpciBjYWRhIHDDoGdpbmEgZCdhanVkYSBhbCBzZXUgdG9ybi4gIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjIwNQorbXNnaWQgImVycm9yIHJlYWRpbmcga2V5Ym9hcmQgaW4gaGVscCIKK21zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBsbGVnaXIgZGVsIHRlY2xhdCBlbiBsJ2FqdWRhIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjU3Cittc2dpZCAiaW9jdGwoVElPQ0dXSU5TWikgZmFpbGVkIgorbXNnc3RyICJoYSBmYWxsYXQgaW9jdGwoVElPQ0dXSU5TWikiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6NjAKK21zZ2lkICJkb3VwZGF0ZSBpbiBTSUdXSU5DSCBoYW5kbGVyIGZhaWxlZCIKK21zZ3N0ciAiaGEgZmFsbGF0IGVsIMKrZG91cGRhdGXCuyBlbiBlbCBnZXN0b3IgZGUgU0lHV0lOQ0giCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6NjcKK21zZ2lkICJmYWlsZWQgdG8gcmVzdG9yZSBvbGQgU0lHV0lOQ0ggc2lnYWN0IgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IHJlc3RhYmxpciBsJ2FudGljIHNlbnlhbCBTSUdXSU5DSCIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo2OQorbXNnaWQgImZhaWxlZCB0byByZXN0b3JlIG9sZCBzaWduYWwgbWFzayIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCByZXN0YWJsaXIgbGEgbcOgc2NhcmEgZGUgc2VueWFsIGFudGlnYSIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo3OQorbXNnaWQgImZhaWxlZCB0byBnZXQgb2xkIHNpZ25hbCBtYXNrIgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IG9idGluZHJlIGxhIG3DoHNjYXJhIGRlIHNlbnlhbCBhbnRpZ2EiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6ODAKK21zZ2lkICJmYWlsZWQgdG8gZ2V0IG9sZCBTSUdXSU5DSCBzaWdhY3QiCittc2dzdHIgIm5vIHMnaGEgcG9ndXQgb2J0aW5kcmUgbCdhbnRpYyBzZW55YWwgU0lHV0lOQ0giCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6ODQKK21zZ2lkICJmYWlsZWQgdG8gYmxvY2sgU0lHV0lOQ0giCittc2dzdHIgIm5vIHMnaGEgcG9ndXQgYmxvY2FyIFNJR1dJTkNIIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjg5Cittc2dpZCAiZmFpbGVkIHRvIHNldCBuZXcgU0lHV0lOQ0ggc2lnYWN0IgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGVzdGFibGlyIGVsIHNlbnlhbCBub3UgU0lHV0lOQ0giCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTI2Cittc2dpZCAiZmFpbGVkIHRvIGFsbG9jYXRlIGNvbG91ciBwYWlyIgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGFzc2lnbmFyIHVuYSBwYXJlbGxhIGRlIGNvbG9ycyIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxNjcKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHRpdGxlIHdpbmRvdyIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBjcmVhciBsYSBmaW5lc3RyYSBkZSB0w610b2wiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTcxCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSB3aGF0aW5mbyB3aW5kb3ciCittc2dzdHIgIm5vIHMnaGEgcG9ndXQgY3JlYXIgbGEgZmluZXN0cmEgZGUgwqt3aGF0aW5mb8K7IgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE3NQorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgYmFzZWxpc3QgcGFkIgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGNyZWFyIGVsIMKrYmFzZWxpc3QgcGFkwrsiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTc4Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBoZWFkaW5nIHBhZCIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBjcmVhciBlbCDCq2hlYWRpbmcgcGFkwrsiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTgyCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSB0aGlzc3RhdGUgcGFkIgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGNyZWFyIGVsIMKrdGhpc3N0YXRlIHBhZMK7IgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE4NgorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgaW5mbyBwYWQiCittc2dzdHIgIm5vIHMnaGEgcG9ndXQgY3JlYXIgZWwgwqtpbmZvIHBhZMK7IgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE5MQorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgcXVlcnkgd2luZG93IgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGNyZWFyIGxhIGZpbmVzdHJhIGRlIHByZWd1bnRhIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjI1NQorbXNnaWQgIktleWJpbmRpbmdzIgorbXNnc3RyICJBc3NpZ25hY2lvbnMgZGUgdGVjbGVzIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjMwMworIywgYy1mb3JtYXQKK21zZ2lkICIgIC0tICVkJSUsIHByZXNzICIKK21zZ3N0ciAiICAtLSAlZCUlLCBwcmVtZXUgIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjMwNgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBmb3IgbW9yZSIKK21zZ3N0ciAiJXMgcGVyIGEgY29udGludWFyIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjMxMAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyB0byBnbyBiYWNrIgorbXNnc3RyICIlcyBwZXIgYSB0b3JuYXIiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6NzgKK21zZ2lkICJbbm90IGJvdW5kXSIKK21zZ3N0ciAiW25vIGFzc29jaWFkYV0iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiW3VuazogJWRdIgorbXNnc3RyICJbZGVzYzogJWRdIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjEzOQorbXNnaWQgIlNjcm9sbCBvbndhcmRzIHRocm91Z2ggaGVscC9pbmZvcm1hdGlvbiIKK21zZ3N0ciAiQXZhbsOnYSBhIHRyYXbDqXMgZGUgbCdhanVkYS9pbmZvLiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDAKK21zZ2lkICJTY3JvbGwgYmFja3dhcmRzIHRocm91Z2ggaGVscC9pbmZvcm1hdGlvbiIKK21zZ3N0ciAiUmV0cm9jZWRlaXggYSB0cmF2w6lzIGRlIGwnYWp1ZGEvaW5mby4iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQxCittc2dpZCAiTW92ZSB1cCIKK21zZ3N0ciAiQW11bnQiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQyCittc2dpZCAiTW92ZSBkb3duIgorbXNnc3RyICJBdmFsbCIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDMKK21zZ2lkICJHbyB0byB0b3Agb2YgbGlzdCIKK21zZ3N0ciAiVsOpcyBhbCBwcmluY2lwaSBkZSBsYSBsbGlzdGEiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ0Cittc2dpZCAiR28gdG8gZW5kIG9mIGxpc3QiCittc2dzdHIgIlbDqXMgYWwgZmluYWwgZGUgbGEgbGxpc3RhIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0NQorbXNnaWQgIlJlcXVlc3QgaGVscCAoY3ljbGUgdGhyb3VnaCBoZWxwIHNjcmVlbnMpIgorbXNnc3RyICJEZW1hbmEgYWp1ZGEgKGF2YW7Dp2EgcGVyIGxlcyBww6BnaW5lcyBkJ2FqdWRhKSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDYKK21zZ2lkICJDeWNsZSB0aHJvdWdoIGluZm9ybWF0aW9uIGRpc3BsYXlzIgorbXNnc3RyICJBdmFuw6dhIGEgdHJhdsOpcyBkZSBsZXMgcGFudGFsbGVzIGQnaW5mby4iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ3Cittc2dpZCAiUmVkcmF3IGRpc3BsYXkiCittc2dzdHIgIlJlZGlidWl4YSBsYSBwYW50YWxsYSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDgKK21zZ2lkICJTY3JvbGwgb253YXJkcyB0aHJvdWdoIGxpc3QgYnkgMSBsaW5lIgorbXNnc3RyICJEZXNwbGHDp2EgZW5kYXZhbnQgYSB0cmF2w6lzIGRlIGxhIGxsaXN0YSBlbiAxIGzDrW5pYSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDkKK21zZ2lkICJTY3JvbGwgYmFja3dhcmRzIHRocm91Z2ggbGlzdCBieSAxIGxpbmUiCittc2dzdHIgIkRlc3BsYcOnYSBlbnJyZXJlIGEgdHJhdsOpcyBkZSBsYSBsbGlzdGEgZW4gMSBsw61uaWEiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTUwCittc2dpZCAiU2Nyb2xsIG9ud2FyZHMgdGhyb3VnaCBoZWxwL2luZm9ybWF0aW9uIGJ5IDEgbGluZSIKK21zZ3N0ciAiRGVzcGxhw6dhIGVuZGF2YW50IGEgdHJhdsOpcyBkZSBsJ2FqdWRhL2luZm8uIGVuIDEgbMOtbmlhIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1MQorbXNnaWQgIlNjcm9sbCBiYWNrd2FyZHMgdGhyb3VnaCBoZWxwL2luZm9ybWF0aW9uIGJ5IDEgbGluZSIKK21zZ3N0ciAiRGVzcGxhw6dhIGVucnJlcmUgYSB0cmF2w6lzIGRlIGwnYWp1ZGEvaW5mby4gZW4gMSBsw61uaWEiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTUyCittc2dpZCAiU2Nyb2xsIG9ud2FyZHMgdGhyb3VnaCBsaXN0IgorbXNnc3RyICJEZXNwbGHDp2EgZW5kYXZhbnQgYSB0cmF2w6lzIGRlIGxhIGxsaXN0YSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTMKK21zZ2lkICJTY3JvbGwgYmFja3dhcmRzIHRocm91Z2ggbGlzdCIKK21zZ3N0ciAiRGVzcGxhw6dhIGVucnJlcmUgYSB0cmF2w6lzIGRlIGxhIGxsaXN0YSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTYKK21zZ2lkICJNYXJrIHBhY2thZ2UocykgZm9yIGluc3RhbGxhdGlvbiIKK21zZ3N0ciAiTWFyY2EgZWxzIHBhcXVldHMgcGVyIGEgaW5zdGHFgGxhciIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTcKK21zZ2lkICJNYXJrIHBhY2thZ2UocykgZm9yIGRlaW5zdGFsbGF0aW9uIgorbXNnc3RyICJNYXJjYSBlbC9lbHMgcGFxdWV0KHMpIHBlciBhIGRlc2luc3RhxYBsYXIiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTU4Cittc2dpZCAiTWFyayBwYWNrYWdlKHMpIGZvciBkZWluc3RhbGwgYW5kIHB1cmdlIgorbXNnc3RyICJNYXJjYSBlbC9lbHMgcGFxdWV0KHMpIHBlciBhIGRlc2luc3RhxYBsYXIgaSBwdXJnYXIiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTU5Cittc2dpZCAiTWFrZSBoaWdobGlnaHQgbW9yZSBzcGVjaWZpYyIKK21zZ3N0ciAiRmVzIHVuIHJlc3NhbHRhdCBtw6lzIGVzcGVjw61maWMiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTYwCittc2dpZCAiTWFrZSBoaWdobGlnaHQgbGVzcyBzcGVjaWZpYyIKK21zZ3N0ciAiRmVzIHVuIHJlc3NhbHRhdCBtZW55cyBlc3BlY8OtZmljIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2MQorbXNnaWQgIlNlYXJjaCBmb3IgYSBwYWNrYWdlIHdob3NlIG5hbWUgY29udGFpbnMgYSBzdHJpbmciCittc2dzdHIgIkNlcmNhIHVuIHBhcXVldCBwZXIgYWwgcXVhbCBlbCBub20gY29udGluZ3VpIHVuYSBjYWRlbmEiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTYyCittc2dpZCAiUmVwZWF0IGxhc3Qgc2VhcmNoLiIKK21zZ3N0ciAiUmVwZXRlaXggbGEgZGFycmVyYSByZWNlcmNhIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2MworbXNnaWQgIlN3YXAgc29ydCBvcmRlciBwcmlvcml0eS9zZWN0aW9uIgorbXNnc3RyICJJbnRlcmNhbnZpYSBlbCBtZWNhbmlzbWUgZCdvcmRyZSBwcmlvcml0YXQvc2VjY2nDsyIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjQKK21zZ2lkICJRdWl0LCBjb25maXJtaW5nLCBhbmQgY2hlY2tpbmcgZGVwZW5kZW5jaWVzIgorbXNnc3RyICJTdXJ0LCBjb25maXJtYW50IGkgY29tcHJvdmFudCBkZXBlbmTDqG5jaWVzIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2NQorbXNnaWQgIlF1aXQsIGNvbmZpcm1pbmcgd2l0aG91dCBjaGVjayIKK21zZ3N0ciAiU3VydCwgY29uZmlybWFudCBpIHNlbnNlIGNvbXByb3ZhciBkZXBlbmTDqG5jaWVzIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2NgorbXNnaWQgIlF1aXQsIHJlamVjdGluZyBjb25mbGljdC9kZXBlbmRlbmN5IHN1Z2dlc3Rpb25zIgorbXNnc3RyICJTdXJ0LCByZWJ1dGphbnQgZWxzIHN1Z2dlcmltZW50cyBkZSBjb25mbGljdGVzL2RlcGVuZMOobmNpZXMiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY3Cittc2dpZCAiQWJvcnQgLSBxdWl0IHdpdGhvdXQgbWFraW5nIGNoYW5nZXMiCittc2dzdHIgIkF2b3J0YSAtIHN1cnQgc2Vuc2UgZmVyIGNhcCBjYW52aSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjgKK21zZ2lkICJSZXZlcnQgdG8gb2xkIHN0YXRlIGZvciBhbGwgcGFja2FnZXMiCittc2dzdHIgIlJldmVydGVpeCBhIGwnYW50aWMgZXN0YXQgcGVyIGEgdG90cyBlbHMgcGFxdWV0cyIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjkKK21zZ2lkICJSZXZlcnQgdG8gc3VnZ2VzdGVkIHN0YXRlIGZvciBhbGwgcGFja2FnZXMiCittc2dzdHIgIlJldmVydGVpeCBhIGwnZXN0YXQgc3VnZ2VyaXQgcGVyIGEgdG90cyBlbHMgcGFxdWV0cyIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNzAKK21zZ2lkICJSZXZlcnQgdG8gZGlyZWN0bHkgcmVxdWVzdGVkIHN0YXRlIGZvciBhbGwgcGFja2FnZXMiCittc2dzdHIgIlJldmVydGVpeCBhIGwnZXN0YXQgcmVxdWVyaXQgZGlyZWN0YW1lbnQgcGVyIGEgdG90cyBlbHMgcGFxdWV0cyIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNzEKK21zZ2lkICJSZXZlcnQgdG8gY3VycmVudGx5IGluc3RhbGxlZCBzdGF0ZSBmb3IgYWxsIHBhY2thZ2VzIgorbXNnc3RyICJSZXZlcnRlaXggYSBsJ2VzdGF0IGFjdHVhbCBkJ2luc3RhxYBsYWNpw7MgcGVyIGEgdG90cyBlbHMgcGFxdWV0cyIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNzQKK21zZ2lkICJTZWxlY3QgY3VycmVudGx5LWhpZ2hsaWdodGVkIGFjY2VzcyBtZXRob2QiCittc2dzdHIgIlNlbGVjY2lvbmEgZWwgbcOodG9kZSBkJ2FjY8OpcyBhY3R1YWxtZW50IHJlc3NhbHRhdCIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNzUKK21zZ2lkICJRdWl0IHdpdGhvdXQgY2hhbmdpbmcgc2VsZWN0ZWQgYWNjZXNzIG1ldGhvZCIKK21zZ3N0ciAiU3VydCBzZW5zZSBjYW52aWFyIGVsIG3DqHRvZGUgZCdhY2PDqXMgc2VsZWNjaW9uYXQiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MjkKK21zZ2lkICJLZXlzdHJva2VzIgorbXNnc3RyICJBc3NpZ25hY2lvbnMgZGUgdGVjbGVzIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjI5Cittc2dpZCAiIgorIk1vdGlvbiBrZXlzOiBOZXh0L1ByZXZpb3VzLCBUb3AvRW5kLCBVcC9Eb3duLCBCYWNrd2FyZHMvRm9yd2FyZHM6XG4iCisiICBqLCBEb3duLWFycm93ICAgICAgICAgaywgVXAtYXJyb3cgICAgICAgICAgICAgbW92ZSBoaWdobGlnaHRcbiIKKyIgIE4sIFBhZ2UtZG93biwgU3BhY2UgICBQLCBQYWdlLXVwLCBCYWNrc3BhY2UgICBzY3JvbGwgbGlzdCBieSAxIHBhZ2VcbiIKKyIgIF5uICAgICAgICAgICAgICAgICAgICBecCAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgbGlzdCBieSAxIGxpbmVcbiIKKyIgIHQsIEhvbWUgICAgICAgICAgICAgICBlLCBFbmQgICAgICAgICAgICAgICAgICBqdW1wIHRvIHRvcC9lbmQgb2YgbGlzdFxuIgorIiAgdSAgICAgICAgICAgICAgICAgICAgIGQgICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIGJ5IDEgcGFnZVxuIgorIiAgXnUgICAgICAgICAgICAgICAgICAgIF5kICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIGJ5IDEgbGluZVxuIgorIiAgQiwgTGVmdC1hcnJvdyAgICAgICAgIEYsIFJpZ2h0LWFycm93ICAgICAgICAgIHBhbiBkaXNwbGF5IGJ5IDEvMyBzY3JlZW5cbiIKKyIgIF5iICAgICAgICAgICAgICAgICAgICBeZiAgICAgICAgICAgICAgICAgICAgICBwYW4gZGlzcGxheSBieSAxIGNoYXJhY3RlclxuIgorIlxuIgorIk1hcmsgcGFja2FnZXMgZm9yIGxhdGVyIHByb2Nlc3Npbmc6XG4iCisiICssIEluc2VydCAgaW5zdGFsbCBvciB1cGdyYWRlICAgICAgPSwgSCAgaG9sZCBpbiBwcmVzZW50IHN0YXRlXG4iCisiIC0sIERlbGV0ZSAgcmVtb3ZlICAgICAgICAgICAgICAgICAgOiwgRyAgdW5ob2xkOiB1cGdyYWRlIG9yIGxlYXZlICIKKyJ1bmluc3RhbGxlZFxuIgorIiBfICAgICAgICAgIHJlbW92ZSAmIHB1cmdlIGNvbmZpZ1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1pc2NlbGxhbmVvdXM6XG4iCisiUXVpdCwgZXhpdCwgb3ZlcndyaXRlIChub3RlIGNhcGl0YWxzISk6ICAgICAgID8sIEYxIHJlcXVlc3QgaGVscCAoYWxzbyAiCisiSGVscClcbiIKKyIgUmV0dXJuICBDb25maXJtLCBxdWl0IChjaGVjayBkZXBlbmRlbmNpZXMpICAgaSwgSSAgdG9nZ2xlL2N5Y2xlIGluZm8gIgorImRpc3BsYXlzXG4iCisiICAgUSAgICAgQ29uZmlybSwgcXVpdCAob3ZlcnJpZGUgZGVwLnMpICAgICAgIG8sIE8gIGN5Y2xlIHRocm91Z2ggc29ydCAiCisib3B0aW9uc1xuIgorIiBYLCBFc2MgIGVYaXQsIGFiYW5kb25pbmcgYW55IGNoYW5nZXMgbWFkZSAgICB2LCBWICBjaGFuZ2Ugc3RhdHVzIGRpc3BsYXkgIgorIm9wdHNcbiIKKyIgICBSICAgICBSZXZlcnQgdG8gc3RhdGUgYmVmb3JlIHRoaXMgbGlzdCAgICAgIF5sICAgcmVkcmF3IGRpc3BsYXlcbiIKKyIgICBVICAgICBzZXQgYWxsIHRvIHNVZ2dlc3RlZCBzdGF0ZSAgICAgICAgICAgICAvICAgc2VhcmNoIChSZXR1cm4gdG8gIgorImNhbmNlbClcbiIKKyIgICBEICAgICBzZXQgYWxsIHRvIERpcmVjdGx5IHJlcXVlc3RlZCBzdGF0ZSAgbiwgXFwgIHJlcGVhdCBsYXN0IHNlYXJjaFxuIgorbXNnc3RyICIiCisiVGVjbGVzIGRlIG1vdmltZW50OiBSZSBQw6BnL0F2IFDDoGcsIEluaWNpL0bDrSwgIGVuZGF2YW50L2VucmVyZTpcbiIKKyIgIGosIEF2YWxsICAgICAgICAgICAgIGssIEFtdW50ICAgICAgICAgICAgICAgbW91IGVsIHJlc3NhbHRhdFxuIgorIiAgTiwgUMOgZyBhdmFsbCwgRXNwYWkgIFAsIFDDoGcgYW11bnQsIFJldHJvY8OpcyBkZXNwbGHDp2EgbGEgbGxpc3RhIDEgcMOgZ2luYVxuIgorIiAgXm4gICAgICAgICAgICAgICAgICAgXnAgICAgICAgICAgICAgICAgICAgICBkZXNwbGHDp2EgbGEgbGxpc3RhIDEgbMOtbmlhXG4iCisiICB0LCBJbmljaSAgICAgICAgICAgICBlLCBGaSAgICAgICAgICAgICAgICAgIHNhbHRhIGEgbCdpbmljaS9mw60gZGUgbGEgIgorImxsaXN0YVxuIgorIiAgdSAgICAgICAgICAgICAgICAgICAgZCAgICAgICAgICAgICAgICAgICAgICBkZXNwbGHDp2EgbGEgaW5mby4gMSBww6BnaW5hXG4iCisiICBedSAgICAgICAgICAgICAgICAgICBeZCAgICAgICAgICAgICAgICAgICAgIGRlc3BsYcOnYSBsYSBpbmZvLiAxIGzDrW5pYVxuIgorIiAgQiwgRXNxdWVycmEgICAgICAgICAgRiwgRHJldGEgICAgICAgICAgICAgICBkZXNwbGHDp2EgbGEgdmlzdWFsLiDihZMgIgorInBhbnRhbGxhXG4iCisiICBeYiAgICAgICAgICAgICAgICAgICBeZiAgICAgICAgICAgICAgICAgICAgIGRlc3BsYcOnYSBsYSB2aXN1YWwuIDEgIgorImNhcsOgY3RlclxuIgorIk1hcmNhIGVscyBwYXF1ZXRzIHBlciBhIHByb2Nlc3NhbWVudCBwb3N0ZXJpb3I6XG4iCisiICssIEluc2VydGEgaW5zdGHFgGxhIG8gYWN0dWFsaXR6YSAgID0sIEggbWFudMOpIGVuIGwnZXN0YXQgYWN0dWFsXG4iCisiIC0sIFN1cHIgICAgZGVzaW5zdGHFgGxhICAgICAgICAgICAgIDosIEcgbm8gbWFudMOpOiBhY3R1YWxpdHphIG8gZGVpeGEgIgorImRlaW5zdGHFgGxhdFxuIgorIlxuIgorIiBfICAgICAgICAgIGRlc2luc3RhxYBsYSBpIHB1cmdhIGxhIGNvbmZpZ3VyYWNpw7NcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1pc2NlxYBsw6BuaWE6XG4iCisiU3VydCwgc29icmVlc2NyaXUgKGNvbXB0ZSBhbWIgbGVzIG1hasO6c2N1bGVzISk6ID8sIEYxIGRlbWFuYSBhanVkYSAodGIgIgorIkFqdWRhKVxuIgorIiBFbnRlciAgQ29uZmlybWEsIGl4ICh2ZXJpZmljYSBkZXBlbmTDqG5jaWVzKSAgICBpLCBJICBtb3N0cmEgZWxzIHRpcHVzICIKKyJkJ2luZm8uXG4iCisiICAgUSAgICBDb25maXJtYSwgaXggKG5vIHZlcmlmaWNhIGRlcGVuZMOobmMuKSAgIG8sIE8gIGNvbW11dGEgb3BjaW9ucyAiCisiZCdvcmRyZVxuIgorIiBYLCBFc2MgaVgsIGFiYW5kb25hbnQgcXVhbHNldm9sIGNhbnZpICAgICAgICAgIHYsIFYgIGNhbnZpYSBsYSB2aXN1YWwuICIKKyJkJ2VzdGF0XG4iCisiICAgUiAgICBUb1JuYSBhIGwnZXN0YXQgYWJhbnMgZCdhcXVlc3RhIGxsaXN0YSAgIF5sICAgcmVmcmVzY2EgbGEgIgorInZpc3VhbGl0emFjacOzXG4iCisiICAgVSAgICBkZWl4YS1obyB0b3QgZW4gbCdlc3RhdCBzVWdnZXJpdCAgICAgICAgICAvICAgY2VyY2EgKFJldG9ybiAiCisiY2FuY2XFgGxhKVxuIgorIiAgIEQgICAgZGVpeGEtaG8gdG90IGVuIGwnZXN0YXQgcmVxdWVyaXQgICAgICAgIG4sIFxcICByZXBldGVpeCBsYSBkYXJyZXJhICIKKyJjZXJjYVxuIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjU1Cittc2dpZCAiSW50cm9kdWN0aW9uIHRvIHBhY2thZ2Ugc2VsZWN0aW9ucyIKK21zZ3N0ciAiSW50cm9kdWNjacOzIGEgbGVzIHNlbGVjY2lvbnMgZGUgcGFxdWV0cyIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo1NQorbXNnaWQgIiIKKyJXZWxjb21lIHRvIGRzZWxlY3QncyBtYWluIHBhY2thZ2UgbGlzdGluZy5cbiIKKyJcbiIKKyJZb3Ugd2lsbCBiZSBwcmVzZW50ZWQgd2l0aCBhIGxpc3Qgb2YgcGFja2FnZXMgd2hpY2ggYXJlIGluc3RhbGxlZCBvciAiCisiYXZhaWxhYmxlXG4iCisiZm9yIGluc3RhbGxhdGlvbi4gIFlvdSBjYW4gbmF2aWdhdGUgYXJvdW5kIHRoZSBsaXN0IHVzaW5nIHRoZSBjdXJzb3Iga2V5cyxcbiIKKyJtYXJrIHBhY2thZ2VzIGZvciBpbnN0YWxsYXRpb24gKHVzaW5nIGArJykgb3IgZGVpbnN0YWxsYXRpb24gKHVzaW5nIGAtJykuXG4iCisiUGFja2FnZXMgY2FuIGJlIG1hcmtlZCBlaXRoZXIgc2luZ2x5IG9yIGluIGdyb3VwczsgaW5pdGlhbGx5IHlvdSB3aWxsIHNlZSAiCisidGhhdFxuIgorInRoZSBsaW5lIGBBbGwgcGFja2FnZXMnIGlzIHNlbGVjdGVkLiAgYCsnLCBgLScgYW5kIHNvIG9uIHdpbGwgYWZmZWN0IGFsbCAiCisidGhlXG4iCisicGFja2FnZXMgZGVzY3JpYmVkIGJ5IHRoZSBoaWdobGlnaHRlZCBsaW5lLlxuIgorIlxuIgorIlNvbWUgb2YgeW91ciBjaG9pY2VzIHdpbGwgY2F1c2UgY29uZmxpY3RzIG9yIGRlcGVuZGVuY3kgcHJvYmxlbXM7IHlvdSB3aWxsICIKKyJiZVxuIgorImdpdmVuIGEgc3ViLWxpc3Qgb2YgdGhlIHJlbGV2YW50IHBhY2thZ2VzLCBzbyB0aGF0IHlvdSBjYW4gc29sdmUgdGhlICIKKyJwcm9ibGVtcy5cbiIKKyJcbiIKKyJZb3Ugc2hvdWxkIHJlYWQgdGhlIGxpc3Qgb2Yga2V5cyBhbmQgdGhlIGV4cGxhbmF0aW9ucyBvZiB0aGUgZGlzcGxheS5cbiIKKyJNdWNoIG9uLWxpbmUgaGVscCBpcyBhdmFpbGFibGUsIHBsZWFzZSBtYWtlIHVzZSBvZiBpdCAtIHByZXNzIGA/JyBhdFxuIgorImFueSB0aW1lIGZvciBoZWxwLlxuIgorIlxuIgorIldoZW4geW91IGhhdmUgZmluaXNoZWQgc2VsZWN0aW5nIHBhY2thZ2VzLCBwcmVzcyA8ZW50ZXI+IHRvIGNvbmZpcm0gIgorImNoYW5nZXMsXG4iCisib3IgYFgnIHRvIHF1aXQgd2l0aG91dCBzYXZpbmcgY2hhbmdlcy4gQSBmaW5hbCBjaGVjayBvbiBjb25mbGljdHMgYW5kXG4iCisiZGVwZW5kZW5jaWVzIHdpbGwgYmUgZG9uZSAtIGhlcmUgdG9vIHlvdSBtYXkgc2VlIGEgc3VibGlzdC5cbiIKKyJcbiIKKyJQcmVzcyA8c3BhY2U+IHRvIGxlYXZlIGhlbHAgYW5kIGVudGVyIHRoZSBsaXN0IG5vdy5cbiIKK21zZ3N0ciAiIgorIkJlbnZpbmd1dCBhbCBsbGlzdGF0IHByaW5jaXBhbCBkZSBwYXF1ZXRzIGRlbCBkc2VsZWN0LlxuIgorIlxuIgorIlMndXMgcHJlc2VudGFyw6AgdW4gbGxpc3RhdCBkZSBwYXF1ZXRzIHF1ZSBlc3RhbiBpbnN0YcWAbGF0cyBvIGRpc3BvbmlibGVzXG4iCisicGVyIGEgc2VyIGluc3RhxYBsYXRzLiBQb2RldSBuYXZlZ2FyIHBlbCBsbGlzdGF0IGVtcHJhbnQgbGVzIHRlY2xlcyBkZVxuIgorImN1cnNvciwgbWFyY2FyIGVscyBwYXF1ZXRzIGEgaW5zdGHFgGxhciAodXRpbGl0emFudCDCqyvCuykgbyBkZXNpbnN0YWzCt2xhclxuIgorIih1dGlsaXR6YW50IMKrLcK7KS5cbiIKKyJFbHMgcGFxdWV0cyBwb2RlbiBtYXJjYXItc2UgcGVyIHNlcGFyYXQgbyBwZXIgZ3J1cHM6IGluaWNpYWxtZW50IHZldXJldVxuIgorInF1ZSBsYSBsw61uaWEgwqtUb3RzIGVscyBwYXF1ZXRzwrsgZXN0w6Agc2VsZWNjaW9uYWRhLiAgwqsrwrssIMKrLcK7LCBldGMuXG4iCisiYWZlY3RhcsOgIGFscyBwYXF1ZXRzIGRlc2NyaXRzIHBlciBsYSBsw61uaWEgcmVzc2FsdGFkYS5cbiIKKyJcbiIKKyJBbGd1bmVzIGRlIGxlcyB2b3N0cmVzIHNlbGVjY2lvbnMgY2F1c2FyYW4gY29uZmxpY3RlcyBvIHByb2JsZW1lcyBkZVxuIgorImRlcGVuZMOobmNpZXM7IHMndXMgZG9uYXLDoCB1bmEgc3VibGxpc3RhIGRlbHMgcGFxdWV0cyByZWxsZXZhbnRzIHBlciBhIHF1ZVxuIgorInBvZ3VldSBzb2x2ZW50YXIgZWxzIHByb2JsZW1lcy5cbiIKKyJcbiIKKyJIYXVyaWV1IGRlIGxsZWdpciBsYSBsbGlzdGEgZGUgdGVjbGVzIGkgbGVzIGV4cGxpY2FjaW9ucyBkZSBsYSBwYW50YWxsYS5cbiIKKyJIaSBoYSBtb2x0YSBhanVkYSBlbiBsw61uaWEgZGlzcG9uaWJsZSwgZmV1IMO6cyBkJ2VsbGEgLSBwcmVtZXUgwqs/wrsgZW5cbiIKKyJxdWFsc2V2b2wgbW9tZW50IHBlciBhIG9idGluZHJlIGFqdWRhLlxuIgorIlxuIgorIlF1YW4gaGFndWV1IGFjYWJhdCBkZSBzZWxlY2Npb25hciBwYXF1ZXRzLCBwcsOpbWV1IDxlbnRlcj4gcGVyIGEgY29uZmlybWFyXG4iCisiZWxzIGNhbnZpcywgbyDCq1jCuyBwZXIgYSBzb3J0aXIgc2Vuc2UgZGVzYXIgZWxzIGNhbnZpcy4gTGxhdm9ycyBlcyAiCisicmVhbGl0emFyw6BcbiIKKyJ1bmEgZGFycmVyYSB2ZXJpZmljYWNpw7MgZGVscyBjb25mbGljdGVzIGkgZGVwZW5kw6huY2llcyAtIGFxdcOtIHRhbWLDqSBwb2RyaWV1XG4iCisidmV1cmUgdW5hIHN1YmxsaXN0YS5cbiIKKyJcbiIKKyJQcmVtZXUgPGVzcGFpPiBwZXIgYSBhYmFuZG9uYXIgbCdhanVkYSBpIGVudHJhciBhcmEgYWwgbGxpc3RhdC5cbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo4MAorbXNnaWQgIkludHJvZHVjdGlvbiB0byByZWFkLW9ubHkgcGFja2FnZSBsaXN0IGJyb3dzZXIiCittc2dzdHIgIkludHJvZHVjY2nDsyBhbCBuYXZlZ2Fkb3Igbm9tw6lzIGxlY3R1cmEgZGVsIGxsaXN0YXQgZGUgcGFxdWV0cyIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo4MAorbXNnaWQgIiIKKyJXZWxjb21lIHRvIGRzZWxlY3QncyBtYWluIHBhY2thZ2UgbGlzdGluZy5cbiIKKyJcbiIKKyJZb3Ugd2lsbCBiZSBwcmVzZW50ZWQgd2l0aCBhIGxpc3Qgb2YgcGFja2FnZXMgd2hpY2ggYXJlIGluc3RhbGxlZCBvciAiCisiYXZhaWxhYmxlXG4iCisiZm9yIGluc3RhbGxhdGlvbi4gIFNpbmNlIHlvdSBkbyBub3QgaGF2ZSB0aGUgcHJpdmlsZWdlIG5lY2Vzc2FyeSB0byB1cGRhdGVcbiIKKyJwYWNrYWdlIHN0YXRlcywgeW91IGFyZSBpbiBhIHJlYWQtb25seSBtb2RlLiAgWW91IGNhbiBuYXZpZ2F0ZSBhcm91bmQgdGhlXG4iCisibGlzdCB1c2luZyB0aGUgY3Vyc29yIGtleXMgKHBsZWFzZSBzZWUgdGhlIGBLZXlzdHJva2VzJyBoZWxwIHNjcmVlbiksICIKKyJvYnNlcnZlXG4iCisidGhlIHN0YXR1cyBvZiB0aGUgcGFja2FnZXMgYW5kIHJlYWQgaW5mb3JtYXRpb24gYWJvdXQgdGhlbS5cbiIKKyJcbiIKKyJZb3Ugc2hvdWxkIHJlYWQgdGhlIGxpc3Qgb2Yga2V5cyBhbmQgdGhlIGV4cGxhbmF0aW9ucyBvZiB0aGUgZGlzcGxheS5cbiIKKyJNdWNoIG9uLWxpbmUgaGVscCBpcyBhdmFpbGFibGUsIHBsZWFzZSBtYWtlIHVzZSBvZiBpdCAtIHByZXNzIGA/JyBhdFxuIgorImFueSB0aW1lIGZvciBoZWxwLlxuIgorIlxuIgorIldoZW4geW91IGhhdmUgZmluaXNoZWQgYnJvd3NpbmcsIHByZXNzIGBRJyBvciA8ZW50ZXI+IHRvIHF1aXQuXG4iCisiXG4iCisiUHJlc3MgPHNwYWNlPiB0byBsZWF2ZSBoZWxwIGFuZCBlbnRlciB0aGUgbGlzdCBub3cuXG4iCittc2dzdHIgIiIKKyJCZW52aW5ndXQgYWwgbGxpc3RhdCBwcmluY2lwYWwgZGUgcGFxdWV0cyBkZSBkc2VsZWN0LlxuIgorIlxuIgorIlMndXMgcHJlc2VudGFyw6AgdW4gbGxpc3RhdCBkZSBwYXF1ZXRzIHF1ZSBlc3RhbiBpbnN0YcWAbGF0cyBvIGRpc3BvbmlibGVzXG4iCisicGVyIGEgc2VyIGluc3RhxYBsYXRzLiBKYSBxdWUgbm8gdGVuaXUgZWxzIHByaXZpbGVnaXMgbmVjZXNzYXJpcyBwZXIgYVxuIgorImFjdHVhbGl0emFyIGVscyBlc3RhdHMgZGVscyBwYXF1ZXRzLCBlc3RldSBlbiBlbCBtb2RlIG5vbcOpcyBsZWN0dXJhLiBQb2RldVxuIgorIm5hdmVnYXIgcGVsIGxsaXN0YXQgZW1wcmFudCBsZXMgdGVjbGVzIGRlIGN1cnNvciAodmVnZXUgbGEgcGFudGFsbGEgZCdhanVkYVxuIgorImRlIMKrRHJlY2VyZXPCuyksIG9ic2VydmFyIGwnZXN0YXQgZGVscyBwYXF1ZXRzIGkgbGxlZ2lyIGluZm9ybWFjacOzIHNvYnJlICIKKyJlbGxzLlxuIgorIlxuIgorIkhhdXJpZXUgZGUgbGxlZ2lyIGxhIGxsaXN0YSBkZSB0ZWNsZXMgaSBsZXMgZXhwbGljYWNpb25zIGRlIGxhIHBhbnRhbGxhLlxuIgorIkhpIGhhIG1vbHRhIGFqdWRhIGVuIGzDrW5pYSBkaXNwb25pYmxlLCBmZXUgw7pzIGQnZWxsYSAtIHByZW1ldSDCqz/CuyBlblxuIgorInF1YWxzZXZvbCBtb21lbnQgcGVyIGEgb2J0aW5kcmUgYWp1ZGEuXG4iCisiXG4iCisiUXVhbiBoYWd1ZXUgYWNhYmF0IGRlIG5hdmVnYXIsIHByZW1ldSDCq1HCuyBvIDxlbnRlcj4gcGVyIGEgc29ydGlyLlxuIgorIlxuIgorIlByZW1ldSA8ZXNwYWk+IHBlciBhIGFiYW5kb25hciBsJ2FqdWRhIGkgZW50cmFyIGFyYSBhbCBsbGlzdGF0LlxuIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjk5Cittc2dpZCAiSW50cm9kdWN0aW9uIHRvIGNvbmZsaWN0L2RlcGVuZGVuY3kgcmVzb2x1dGlvbiBzdWItbGlzdCIKK21zZ3N0ciAiSW50cm9kdWNjacOzIGEgbGEgc3VibGxpc3RhIGRlIHJlc29sdWNpw7MgZGUgY29uZmxpY3Rlcy9kZXBlbmTDqG5jaWVzIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjk5Cittc2dpZCAiIgorIkRlcGVuZGVuY3kvY29uZmxpY3QgcmVzb2x1dGlvbiAtIGludHJvZHVjdGlvbi5cbiIKKyJcbiIKKyJPbmUgb3IgbW9yZSBvZiB5b3VyIGNob2ljZXMgaGF2ZSByYWlzZWQgYSBjb25mbGljdCBvciBkZXBlbmRlbmN5IHByb2JsZW0gLVxuIgorInNvbWUgcGFja2FnZXMgc2hvdWxkIG9ubHkgYmUgaW5zdGFsbGVkIGluIGNvbmp1bmN0aW9uIHdpdGggY2VydGFpbiBvdGhlcnMsICIKKyJhbmRcbiIKKyJzb21lIGNvbWJpbmF0aW9ucyBvZiBwYWNrYWdlcyBtYXkgbm90IGJlIGluc3RhbGxlZCB0b2dldGhlci5cbiIKKyJcbiIKKyJZb3Ugd2lsbCBzZWUgYSBzdWItbGlzdCBjb250YWluaW5nIHRoZSBwYWNrYWdlcyBpbnZvbHZlZC4gIFRoZSBib3R0b20gaGFsZiAiCisib2ZcbiIKKyJ0aGUgZGlzcGxheSBzaG93cyByZWxldmFudCBjb25mbGljdHMgYW5kIGRlcGVuZGVuY2llczsgdXNlIGBpJyB0byBjeWNsZSAiCisiYmV0d2VlblxuIgorInRoYXQsIHRoZSBwYWNrYWdlIGRlc2NyaXB0aW9ucyBhbmQgdGhlIGludGVybmFsIGNvbnRyb2wgaW5mb3JtYXRpb24uXG4iCisiXG4iCisiQSBzZXQgb2YgYHN1Z2dlc3RlZCcgcGFja2FnZXMgaGFzIGJlZW4gY2FsY3VsYXRlZCwgYW5kIHRoZSBpbml0aWFsIG1hcmtpbmdzICIKKyJpblxuIgorInRoaXMgc3ViLWxpc3QgaGF2ZSBiZWVuIHNldCB0byBtYXRjaCB0aG9zZSwgc28geW91IGNhbiBqdXN0IGhpdCBSZXR1cm4gdG9cbiIKKyJhY2NlcHQgdGhlIHN1Z2dlc3Rpb25zIGlmIHlvdSB3aXNoLiAgWW91IG1heSBhYm9ydCB0aGUgY2hhbmdlKHMpIHdoaWNoICIKKyJjYXVzZWRcbiIKKyJ0aGUgcHJvYmxlbShzKSwgYW5kIGdvIGJhY2sgdG8gdGhlIG1haW4gbGlzdCwgYnkgcHJlc3NpbmcgY2FwaXRhbCBgWCcuXG4iCisiXG4iCisiWW91IGNhbiBhbHNvIG1vdmUgYXJvdW5kIHRoZSBsaXN0IGFuZCBjaGFuZ2UgdGhlIG1hcmtpbmdzIHNvIHRoYXQgdGhleSBhcmUgIgorIm1vcmVcbiIKKyJsaWtlIHdoYXQgeW91IHdhbnQsIGFuZCB5b3UgY2FuIGByZWplY3QnIG15IHN1Z2dlc3Rpb25zIGJ5IHVzaW5nIHRoZSAiCisiY2FwaXRhbFxuIgorImBEJyBvciBgUicga2V5cyAoc2VlIHRoZSBrZXliaW5kaW5ncyBoZWxwIHNjcmVlbikuICBZb3UgY2FuIHVzZSBjYXBpdGFsIGBRJyAiCisidG9cbiIKKyJmb3JjZSBtZSB0byBhY2NlcHQgdGhlIHNpdHVhdGlvbiBjdXJyZW50bHkgZGlzcGxheWVkLCBpbiBjYXNlIHlvdSB3YW50IHRvXG4iCisib3ZlcnJpZGUgYSByZWNvbW1lbmRhdGlvbiBvciB0aGluayB0aGF0IHRoZSBwcm9ncmFtIGlzIG1pc3Rha2VuLlxuIgorIlxuIgorIlByZXNzIDxzcGFjZT4gdG8gbGVhdmUgaGVscCBhbmQgZW50ZXIgdGhlIHN1Yi1saXN0OyByZW1lbWJlcjogcHJlc3MgYD8nIGZvciAiCisiaGVscC5cbiIKK21zZ3N0ciAiIgorIlJlc29sdWNpw7MgZGUgZGVwZW5kw6huY2llcy9jb25mbGljdGVzIC0gaW50cm9kdWNjacOzLlxuIgorIlxuIgorIlVuYSBvIG3DqXMgc2VsZWNjaW9ucyBoYW4gb2Nhc2lvbmF0IHVuIHByb2JsZW1hIGRlIGNvbmZsaWN0ZSBvIGRlcGVuZMOobmNpYSAtXG4iCisiYWxndW5zIGRlbHMgcGFxdWV0cyBub23DqXMgcydoYXVyaWVuIGQnaW5zdGHFgGxhciBqdW50IGFtYiBkJ2FsdHJlIGkgYWxndW5lc1xuIgorImNvbWJpbmFjaW9ucyBkZSBwYXF1ZXRzIG5vIGVzIHBvZGVuIGluc3RhxYBsYXIganVudGVzLlxuIgorIlxuIgorIlZldXJldSB1bmEgc3VibGxpc3RhIHF1ZSBjb250w6kgZWxzIHBhcXVldHMgaW52b2x1Y3JhdHMuIExhIG1laXRhdCBpbmZlcmlvclxuIgorImRlIGxhIHBhbnRhbGxhIG1vc3RyYSBsZXMgZGVwZW5kw6huY2llcyBpIGNvbmZsaWN0ZXMgcmVsbGV2YW50czsgdXNldSDCq2nCuyAiCisicGVyXG4iCisiYSBjYW52aWFyIGVudHJlIGFpeMOyLCBsZXMgZGVzY3JpcGNpb25zIGRlbHMgcGFxdWV0cyBpIGxhIGluZm9ybWFjacOzIGludGVybmFcbiIKKyJkZSBjb250cm9sLlxuIgorIlxuIgorIlMnaGEgY2FsY3VsYXQgdW4gcmVwZXJ0b3JpIGRlIHBhcXVldHMgwqtzdWdnZXJpdHPCuyBpIGxlcyBtYXJxdWVzIGluaWNpYWxzIGVuXG4iCisiYXF1ZXN0YSBzdWJsbGlzdGEgcydoYW4gcG9zYXQgcGVyIGEgbGxpZ2FyIGFtYiBhcXVlbGxzLCBwZWwgcXVlIHBvZHJldVxuIgorInNpbXBsZW1lbnQgcHLDqW1lciBFbnRlciBwZXIgYSBhY2NlcHRhciBsZXMgc3VnZ2Vyw6huY2llcyBzaSBobyBkZXNpdGdldS5cbiIKKyJQb2RldSBhdm9ydGFyIGVsKHMpIGNhbnZpKHMpIHF1ZSBoYW4gY2F1c2F0IGVsIHByb2JsZW1hIGkgdG9ybmFyIGEgbGFcbiIKKyJsbGlzdGEgcHJpbmNpcGFsLCBwcmVtZW50IGxhIMKrWMK7IG1hasO6c2N1bGEuXG4iCisiXG4iCisiVGFtYsOpIHVzIHBvZGV1IG1vdXJlIHBlciBsYSBsbGlzdGEgaSBjYW52aWFyIGxlcyBtYXJxdWVzIHBlciBhIHF1ZSAiCisicydhZGFwdGVuXG4iCisiYWwgcXVlIHZvbGV1LCBpIHBvZGV1IMKrcmVidXRqYXLCuyBsZXMgc3VnZ2Vyw6huY2llcyB1dGlsaXR6YW50IGxhIMKrRMK7IG8gwqtSwrtcbiIKKyJtYWrDunNjdWxhICh2ZWdldSBsYSBwYW50YWxsYSBkJ2FqdWRhIGRlIGxsaWdhbXMgZGUgdGVjbGVzKS4gUG9kZXUgdXRpbGl0emFyXG4iCisibGEgwqtRwrsgbWFqw7pzY3VsYSBwZXIgYSBmb3LDp2FyIGEgYWNjZXB0YXIgbGEgc2l0dWFjacOzIG1vc3RyYWRhIGFjdHVhbG1lbnQsXG4iCisiZW4gZWwgY2FzIGRlIHF1ZSBkZXNpdGdldSBkZXNjYXJ0YXIgdW5hIHJlY29tYW5hY2nDsyBvIHBlbnNldSBxdWUgZWxcbiIKKyJwcm9ncmFtYSBzJ2hhIGVxdWl2b2NhdC5cbiIKKyJcbiIKKyJQcmVtZXUgPGVzcGFpPiBwZXIgYSBhYmFuZG9uYXIgbCdhanVkYSBpIGVudHJhciBlbiBsYSBzdWJsbGlzdGE7IHJlY29yZGV1OlxuIgorInByZW1ldSDCqz/CuyBwZXIgYSBvYnRpbmRyZSBhanVkYS5cbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxMjUKK21zZ2lkICJEaXNwbGF5LCBwYXJ0IDE6IHBhY2thZ2UgbGlzdGluZyBhbmQgc3RhdHVzIGNoYXJzIgorbXNnc3RyICJNb3N0cmEsIHByaW1lcmEgcGFydDogbGxpc3RhdCBkZSBwYXF1ZXRzIGkgY2Fyw6BjdGVycyBkJ2VzdGF0IgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjEyNQorbXNnaWQgIiIKKyJUaGUgdG9wIGhhbGYgb2YgdGhlIHNjcmVlbiBzaG93cyBhIGxpc3Qgb2YgcGFja2FnZXMuICBGb3IgZWFjaCBwYWNrYWdlIHlvdSAiCisic2VlXG4iCisiZm91ciBjb2x1bW5zIGZvciBpdHMgY3VycmVudCBzdGF0dXMgb24gdGhlIHN5c3RlbSBhbmQgbWFyay4gIEluIHRlcnNlIG1vZGUgIgorIih1c2VcbiIKKyJgdicgdG8gdG9nZ2xlIHZlcmJvc2UgZGlzcGxheSkgdGhlc2UgYXJlIHNpbmdsZSBjaGFyYWN0ZXJzLCBmcm9tIGxlZnQgdG8gIgorInJpZ2h0OlxuIgorIlxuIgorIiBFcnJvciBmbGFnOiBTcGFjZSAtIG5vIGVycm9yIChidXQgcGFja2FnZSBtYXkgYmUgaW4gYnJva2VuIHN0YXRlIC0gc2VlICIKKyJiZWxvdylcbiIKKyIgICAgICAgICAgICAgIGBSJyAgLSBzZXJpb3VzIGVycm9yIGR1cmluZyBpbnN0YWxsYXRpb24sIG5lZWRzICIKKyJyZWluc3RhbGxhdGlvbjtcbiIKKyIgSW5zdGFsbGVkIHN0YXRlOiAgICAgU3BhY2UgICAgLSBub3QgaW5zdGFsbGVkO1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgYConICAgICAtIGluc3RhbGxlZDtcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgIGAtJyAgICAgLSBub3QgaW5zdGFsbGVkIGJ1dCBjb25maWcgZmlsZXMgcmVtYWluO1xuIgorIiAgIHBhY2thZ2VzIGluIHRoZXNlIHsgYFUnICAgICAtIHVucGFja2VkIGJ1dCBub3QgeWV0IGNvbmZpZ3VyZWQ7XG4iCisiICAgc3RhdGVzIGFyZSBub3QgICAgeyBgQycgICAgIC0gaGFsZi1jb25maWd1cmVkIChhbiBlcnJvciBoYXBwZW5lZCk7XG4iCisiICAgKHF1aXRlKSBwcm9wZXJseSAgeyBgSScgICAgIC0gaGFsZi1pbnN0YWxsZWQgKGFuIGVycm9yIGhhcHBlbmVkKTtcbiIKKyIgICBpbnN0YWxsZWQgICAgICAgICB7IGBXJyxgdCcgLSB0cmlnZ2VycyBhcmUgYXdhaXRlZCByZXNwLiBwZW5kaW5nLlxuIgorIiBPbGQgbWFyazogd2hhdCB3YXMgcmVxdWVzdGVkIGZvciB0aGlzIHBhY2thZ2UgYmVmb3JlIHByZXNlbnRpbmcgdGhpcyBsaXN0O1xuIgorIiBNYXJrOiB3aGF0IGlzIHJlcXVlc3RlZCBmb3IgdGhpcyBwYWNrYWdlOlxuIgorIiAgYConOiBtYXJrZWQgZm9yIGluc3RhbGxhdGlvbiBvciB1cGdyYWRlO1xuIgorIiAgYC0nOiBtYXJrZWQgZm9yIHJlbW92YWwsIGJ1dCBhbnkgY29uZmlndXJhdGlvbiBmaWxlcyB3aWxsIHJlbWFpbjtcbiIKKyIgIGA9Jzogb24gaG9sZDogcGFja2FnZSB3aWxsIG5vdCBiZSBwcm9jZXNzZWQgYXQgYWxsO1xuIgorIiAgYF8nOiBtYXJrZWQgZm9yIHB1cmdlIGNvbXBsZXRlbHkgLSBldmVuIHJlbW92ZSBjb25maWd1cmF0aW9uO1xuIgorIiAgYG4nOiBwYWNrYWdlIGlzIG5ldyBhbmQgaGFzIHlldCB0byBiZSBtYXJrZWQgZm9yIGluc3RhbGwvcmVtb3ZlLyZjLlxuIgorIlxuIgorIkFsc28gZGlzcGxheWVkIGFyZSBlYWNoIHBhY2thZ2UncyBQcmlvcml0eSwgU2VjdGlvbiwgbmFtZSwgaW5zdGFsbGVkIGFuZFxuIgorImF2YWlsYWJsZSB2ZXJzaW9uIG51bWJlcnMgKHNoaWZ0LVYgdG8gZGlzcGxheS9oaWRlKSBhbmQgc3VtbWFyeSAiCisiZGVzY3JpcHRpb24uXG4iCittc2dzdHIgIiIKKyJMYSBtZWl0YXQgc3VwZXJpb3IgZGUgbGEgcGFudGFsbGEgbW9zdHJhIHVuYSBsbGlzdGEgZGUgcGFxdWV0cy4gUGVyIGEgY2FkYVxuIgorInBhcXVldCB2ZXVyZXUgcXVhdHJlIGNvbHVtbmVzIGFtYiBsYSBtYXJjYSBpIGVsIHNldSBlc3RhdCBhY3R1YWwgYWwgIgorInNpc3RlbWEuXG4iCisiQWwgbW9kZSByZXN1bWl0LCAodXNldSDCq3bCuyBwZXIgYSBjYW52aWFyIGFsIG1vZGUgZGV0YWxsYXQpIGFxdWVzdHMgc8OzblxuIgorImNhcsOgY3RlcnMgaW5kaXZpZHVhbHMsIGQnZXNxdWVycmEgYSBkcmV0YTpcbiIKKyIgU2VueS4gZCdlcnJvcjogRXNwYWkgLSBjYXAgZXJyb3IgKHBlcsOyIGVsIHBhcXVldCBwb3QgZXN0YXIgZW4gZXN0YXQgIgorInRyZW5jYXRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAtIG1pcmV1IG3DqXMgZW5kYXZhbnQpXG4iCisiICAgICAgICAgICAgICAgIMKrUsK7ICAtIGVycm9yIHNlcmnDs3MgZHVyYW50IGxhIGluc3RhxYBsYWNpw7MsIGNhbCByZWluc3RhxYBsYXItIgorImhvO1xuIgorIiBFc3RhdCBkJ2luc3RhxYBsYWNpw7M6ICAgIEVzcGFpIC0gIG5vIGluc3RhbMK3bGF0O1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgwqsqwrsgIC0gaW5zdGHFgGxhdDtcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgIMKrLcK7ICAtIG5vIGluc3RhxYBsYXQsIHBlcsOyIHF1ZWRlbiBmaXR4ZXJzIGRlICIKKyJjb25maWcuO1xuIgorIiAgICAgICAgIGVscyBwYXF1ZXRzIGVuIHsgwqtVwrsgIC0gZGVzZW1wYXF1ZXRhdCBwZXLDsiBlbmNhcmEgc2Vuc2UgIgorImNvbmZpZ3VyYXI7XG4iCisiICAgICAgICAgYXF1ZXN0cyBlc3RhdHMgeyDCq0PCuyAgLSBhIG1pZyBjb25maWd1cmFyIChzJ2hhIHByb2R1w690IHVuIGVycm9yKTtcbiIKKyIgICAgICAgICBlc3RhbiB0cmVuY2F0cyB7IMKrScK7ICAtIGEgbWlnIGluc3RhxYBsYXIgKHMnaGEgcHJvZHXDr3QgdW4gZXJyb3IpLlxuIgorIiBNYXJjYSBhbnRpZ2E6IGVsIHF1ZSBzJ2hhdmlhIGRlbWFuYXQgYWJhbnMgZGUgcHJlc2VudGFyIGFxdWVzdGEgbGxpc3RhO1xuIgorIiBNYXJjYTogZWwgcXVlIGVzIGRlbWFuYSBwZXIgYXF1ZXN0IHBhcXVldDpcbiIKKyIgICDCqyrCuzogbWFyY2F0IHBlciBhIGluc3RhxYBsYWNpw7MgbyBhY3R1YWxpdHphY2nDsztcbiIKKyIgICDCqy3CuzogbWFyY2F0IHBlciBhIHN1cHJlc3Npw7MsIHBlcsOyIGVscyBmaXR4ZXJzIGRlIGNvbmZpZ3VyYWNpw7Mgcm9tYW5kcmFuO1xuIgorIiAgIMKrPcK7OiBtYW50aW5ndXQ6IGVsIHBhcXVldCBubyBzZXLDoCBwcm9jZXNzYXQgZGUgY2FwIG1hbmVyYTtcbiIKKyIgICDCq1/CuzogbWFyY2F0IHBlciBhIHB1cmdhIGNvbXBsZXRhIC0gc3VwcmltZWl4IHRhbWLDqSBsYSBjb25maWd1cmFjacOzXG4iCisiICAgwqtuwrs6IGVsIHBhcXVldCDDqXMgbm91IGkgZW5jYXJhIHMnaGEgZGUgbWFyY2FyIGluc3RhxYBsYWNpw7Mvc3VwcmVzc2nDsy9ldGMuXG4iCisiXG4iCisiVGFtYsOpIGVzIG1vc3RyYSBsYSBwcmlvcml0YXQsIHNlY2Npw7MsIG5vbSwgbsO6bWVyb3MgZGUgdmVyc2nDsyBkaXNwb25pYmxlIGlcbiIKKyJpbnN0YcWAbGFkYSBkZSBjYWRhIHBhcXVldCAobWFqw7pzLVYgcGVyIGEgbW9zdHJhci9hbWFnYXIpIGkgZGVzY3JpcGNpw7NcbiIKKyJyZXN1bWlkYS5cbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxNTIKK21zZ2lkICJEaXNwbGF5LCBwYXJ0IDI6IGxpc3QgaGlnaGxpZ2h0OyBpbmZvcm1hdGlvbiBkaXNwbGF5IgorbXNnc3RyICJNb3N0cmEsIHNlZ29uYSBwYXJ0OiBsbGlzdGEgcmVzc2FsdGFkYTsgbW9zdHJhIGxhIGluZm8uIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjE1MgorbXNnaWQgIiIKKyIqIEhpZ2hsaWdodDogT25lIGxpbmUgaW4gdGhlIHBhY2thZ2UgbGlzdCB3aWxsIGJlIGhpZ2hsaWdodGVkLiAgSXQgIgorImluZGljYXRlc1xuIgorIiAgd2hpY2ggcGFja2FnZShzKSB3aWxsIGJlIGFmZmVjdGVkIGJ5IHByZXNzZXMgb2YgYCsnLCBgLScgYW5kIGBfJy5cbiIKKyJcbiIKKyIqIFRoZSBkaXZpZGluZyBsaW5lIGluIHRoZSBtaWRkbGUgb2YgdGhlIHNjcmVlbiBzaG93cyBhIGJyaWVmIGV4cGxhbmF0aW9uICIKKyJvZlxuIgorIiAgdGhlIHN0YXR1cyBvZiB0aGUgY3VycmVudGx5LWhpZ2hsaWdodGVkIHBhY2thZ2UsIG9yIGEgZGVzY3JpcHRpb24gb2YgIgorIndoaWNoXG4iCisiICBncm91cCBpcyBoaWdobGlnaHRlZCBpZiBhIGdyb3VwIGxpbmUgaXMuICBJZiB5b3UgZG9uJ3QgdW5kZXJzdGFuZCB0aGVcbiIKKyIgIG1lYW5pbmcgb2Ygc29tZSBvZiB0aGUgc3RhdHVzIGNoYXJhY3RlcnMgZGlzcGxheWVkLCBnbyB0byB0aGUgcmVsZXZhbnRcbiIKKyIgIHBhY2thZ2UgYW5kIGxvb2sgYXQgdGhpcyBkaXZpZGVyIGxpbmUsIG9yIHVzZSB0aGUgYHYnIGtleSBmb3IgYSB2ZXJib3NlXG4iCisiICBkaXNwbGF5IChwcmVzcyBgdicgYWdhaW4gdG8gZ28gYmFjayB0byB0aGUgdGVyc2UgZGlzcGxheSkuXG4iCisiXG4iCisiKiBUaGUgYm90dG9tIG9mIHRoZSBzY3JlZW4gc2hvd3MgbW9yZSBpbmZvcm1hdGlvbiBhYm91dCB0aGVcbiIKKyIgIGN1cnJlbnRseS1oaWdobGlnaHRlZCBwYWNrYWdlIChpZiB0aGVyZSBpcyBvbmx5IG9uZSkuXG4iCisiXG4iCisiICBJdCBjYW4gc2hvdyBhbiBleHRlbmRlZCBkZXNjcmlwdGlvbiBvZiB0aGUgcGFja2FnZSwgdGhlIGludGVybmFsIHBhY2thZ2VcbiIKKyIgIGNvbnRyb2wgZGV0YWlscyAoZWl0aGVyIGZvciB0aGUgaW5zdGFsbGVkIG9yIGF2YWlsYWJsZSB2ZXJzaW9uIG9mIHRoZVxuIgorIiAgcGFja2FnZSksIG9yIGluZm9ybWF0aW9uIGFib3V0IGNvbmZsaWN0cyBhbmQgZGVwZW5kZW5jaWVzIGludm9sdmluZyB0aGVcbiIKKyIgIGN1cnJlbnQgcGFja2FnZSAoaW4gY29uZmxpY3QvZGVwZW5kZW5jeSByZXNvbHV0aW9uIHN1Ymxpc3RzKS5cbiIKKyJcbiIKKyIgIFVzZSB0aGUgYGknIGtleSB0byBjeWNsZSB0aHJvdWdoIHRoZSBkaXNwbGF5cywgYW5kIGBJJyB0byBoaWRlIHRoZVxuIgorIiAgaW5mb3JtYXRpb24gZGlzcGxheSBvciBleHBhbmQgaXQgdG8gdXNlIGFsbW9zdCBhbGwgb2YgdGhlIHNjcmVlbi5cbiIKK21zZ3N0ciAiIgorIiogUmVzc2FsdGF0OiBlbCByZXNzYWx0YXQgZGVzdGFjYXLDoCB1bmEgbMOtbmlhIGVuIGVsIGxsaXN0YXQgZGUgcGFxdWV0cy4gIgorIkluZGljYVxuIgorIiAgYSBxdWluKHMpIHBhcXVldChzKSBhZmVjdGFyw6AgZWwgcHLDqW1lciDCqyvCuywgwqstwrsgaSDCq1/Cuy5cbiIKKyJcbiIKKyIqIExhIGzDrW5pYSBkaXZpc8OycmlhIGVuIGxhIG1laXRhdCBkZSBsYSBwYW50YWxsYSBtb3N0cmEgdW5hIGJyZXUgZXhwbGljYWNpw7NcbiIKKyIgIGRlIGwnZXN0YXQgZGVsIHBhcXVldCByZXNzYWx0YXQgbyB1bmEgZGVzY3JpcGNpw7MgZGVsIGdydXAgcmVzc2FsdGF0IHNpIGVzXG4iCisiICB0cmFjdGEgZCd1bmEgbMOtbmlhIGRlIGdydXAuICBTaSBubyBlbnRlbmV1IGVsIHNpZ25pZmljYXQgZCdhbGd1bnMgZGVsc1xuIgorIiAgY2Fyw6BjdGVycyBkJ2VzdGF0IG1vc3RyYXRzLCBkaXJpZ2l1LXZvcyBhbCBwYXF1ZXQgcmVsbGV2YW50IGkgbWlyZXUgZW5cbiIKKyIgIGFxdWVzdGEgbMOtbmlhIGRlIGRpdmlzacOzLCBvIHVzZXUgbGEgdGVjbGEgwqt2wrsgcGVyIGEgdW5hIHBhbnRhbGxhICIKKyJkZXRhbGxhZGFcbiIKKyIgIChwcmVtZXUgwqt2wrsgbm92YW1lbnQgcGVyIGEgdG9ybmFyIGEgbGEgdmlzdGEgYW50ZXJpb3IpLlxuIgorIlxuIgorIiogRWwgZmluYWwgZGUgbGEgcGFudGFsbGEgbW9zdHJhIG3DqXMgaW5mb3JtYWNpw7Mgc29icmUgZWwgcGFxdWV0IGFjdHVhbG1lbnRcbiIKKyIgIGRlc3RhY2F0IChzaSBub23DqXMgbidoaSBoYSB1bikuXG4iCisiXG4iCisiICBQb3QgbW9zdHJhciB1bmEgZGVzY3JpcGNpw7MgZXN0ZXNhIGRlbCBwYXF1ZXQsIGVscyBkZXRhbGxzIGRlIGNvbnRyb2wgIgorImludGVybnNcbiIKKyIgIGRlbCBwYXF1ZXQgKHRhbnQgcGVyIGEgbGEgdmVyc2nDsyBpbnN0YcWAbGFkYSBjb20gcGVyIGEgbGEgZGlzcG9uaWJsZSkgb1xuIgorIiAgaW5mb3JtYWNpw7Mgc29icmUgZWxzIGNvbmZsaWN0ZXMgaSBsZXMgZGVwZW5kw6huY2llcyByZWZlcmVudHMgYWwgcGFxdWV0XG4iCisiICBhY3R1YWwgKGVuIHN1Yi1sbGlzdGVzIGRlIHJlc29sdWNpw7MgZGUgY29uZmxpY3RlL2RlcGVuZMOobmNpZXMpLlxuIgorIlxuIgorIiAgVXNldSBsYSB0ZWNsYSDCq2nCuyBwZXIgYSBwZXIgYSBjYW52aWFyIGVudHJlIGxlcyBwYW50YWxsZXMgaSDCq0nCuyBwZXIgYVxuIgorIiAgYW1hZ2FyIGxhIG1vc3RyYSBkJ2luZm9ybWFjacOzLCBvIGV4cGFuZGlyLWxhIHBlciBhIHF1ZSB1dGlsaXR6ZSBxdWFzaSAiCisidG90YVxuIgorIiAgbGEgcGFudGFsbGEuXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTc2Cittc2dpZCAiSW50cm9kdWN0aW9uIHRvIG1ldGhvZCBzZWxlY3Rpb24gZGlzcGxheSIKK21zZ3N0ciAiSW50cm9kdWNjacOzIGFsIG3DqHRvZGUgZGUgc2VsZWNjacOzIG1vc3RyYXQiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTc2Cittc2dpZCAiIgorImRzZWxlY3QgYW5kIGRwa2cgY2FuIGRvIGF1dG9tYXRpYyBpbnN0YWxsYXRpb24sIGxvYWRpbmcgdGhlIHBhY2thZ2UgZmlsZXMgdG8gIgorImJlXG4iCisiaW5zdGFsbGVkIGZyb20gb25lIG9mIGEgbnVtYmVyIG9mIGRpZmZlcmVudCBwb3NzaWJsZSBwbGFjZXMuXG4iCisiXG4iCisiVGhpcyBsaXN0IGFsbG93cyB5b3UgdG8gc2VsZWN0IG9uZSBvZiB0aGVzZSBpbnN0YWxsYXRpb24gbWV0aG9kcy5cbiIKKyJcbiIKKyJNb3ZlIHRoZSBoaWdobGlnaHQgdG8gdGhlIG1ldGhvZCB5b3Ugd2lzaCB0byB1c2UsIGFuZCBoaXQgRW50ZXIuICBZb3Ugd2lsbCAiCisidGhlblxuIgorImJlIHByb21wdGVkIGZvciB0aGUgaW5mb3JtYXRpb24gcmVxdWlyZWQgdG8gZG8gdGhlIGluc3RhbGxhdGlvbi5cbiIKKyJcbiIKKyJBcyB5b3UgbW92ZSB0aGUgaGlnaGxpZ2h0IGEgZGVzY3JpcHRpb24gb2YgZWFjaCBtZXRob2QsIHdoZXJlIGF2YWlsYWJsZSwgaXNcbiIKKyJkaXNwbGF5ZWQgaW4gdGhlIGJvdHRvbSBoYWxmIG9mIHRoZSBzY3JlZW4uXG4iCisiXG4iCisiSWYgeW91IHdpc2ggdG8gcXVpdCB3aXRob3V0IGNoYW5naW5nIGFueXRoaW5nIHVzZSB0aGUgYHgnIGtleSB3aGlsZSBpbiB0aGUgIgorImxpc3RcbiIKKyJvZiBpbnN0YWxsYXRpb24gbWV0aG9kcy5cbiIKKyJcbiIKKyJBIGZ1bGwgbGlzdCBvZiBrZXlzdHJva2VzIGlzIGF2YWlsYWJsZSBieSBwcmVzc2luZyBgaycgbm93LCBvciBmcm9tIHRoZSAiCisiaGVscFxuIgorIm1lbnUgcmVhY2hhYmxlIGJ5IHByZXNzaW5nIGA/Jy5cbiIKK21zZ3N0ciAiIgorImRzZWxlY3QgaSBkcGtnIHBvZGVuIGZlciB1bmEgaW5zdGHFgGxhY2nDsyBhdXRvbcOgdGljYSwgY2FycmVnYW50IGVscyBwYXF1ZXRzXG4iCisicXVlIHMnaW5zdGHFgGxhcmFuIGRlcyBkJ3VuYSBncmFuIGRpdmVyc2l0YXQgZGUgbGxvY3MgZGlmZXJlbnRzLlxuIgorIlxuIgorIkFxdWVzdGEgbGxpc3RhIHZvcyBwZXJtZXRyw6Agc2VsZWNjaW9uYXIgdW4gZCdhcXVlc3RzIG3DqHRvZGVzIGQnaW5zdGHFgGxhY2nDsy5cbiIKKyJcbiIKKyJEZXNwbGFjZXUgZWwgcmVzc2FsdGF0IGxsdW1pbsOzcyBhbCBtw6h0b2RlIHF1ZSBkZXNpdGdldSBlbXByYXIgaSBwcmVtZXUgIgorIjxJbnRybz5cbiIKKyJMbGF2b3JzIHNlIHZvcyBwcmVndW50YXLDoCBwZXIgbGEgaW5mb3JtYWNpw7MgbmVjZXNzw6ByaWEgcGVyIGEgbGEgIgorImluc3RhxYBsYWNpw7MuXG4iCisiXG4iCisiTWVudHJlIGRlc3BsYWNldSBsJ2luZGljYXRpdSByZXNzYWx0YXQgc2Ugdm9zIG1vc3RyYXLDoCwgcXVhbiBlc3RpZ3VpICIKKyJkaXNwb25pYmxlLFxuIgorInVuYSBkZXNjcmlwY2nDsyBkZSBjYWRhIG3DqHRvZGUgZW4gbGEgbWVpdGF0IGluZmVyaW9yIGRlIGxhIHBhbnRhbGxhLlxuIgorIlxuIgorIlNpIGRlc2l0Z2V1IHNvcnRpciBzZW5zZSBjYW52aWFyIHJlcyB1c2V1IGxhIHRlY2xhIMKreMK7IG1lbnRyZSBlc3RpZ3VldVxuIgorImVuIGxhIGxsaXN0YSBkZSBtw6h0b2RlcyBkJ2luc3RhxYBsYWNpw7MuXG4iCisiXG4iCisiVW5hIGNvbXBsZXRhIGxsaXN0YSBhbWIgbGVzIGNvbWJpbmFjaW9ucyBkZSB0ZWNsZXMgZXMgdHJvYmEgZGlzcG9uaWJsZSBhbFxuIgorInByw6ltZXIgwqtrwrssIG8gZGVzIGRlbCBtZW7DuiBkJ2FqdWRhIGFsIHF1ZSBzJ2FjY2VkZWl4IHByZW1lbnQgwqs/wrsuXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTk2Cittc2dpZCAiS2V5c3Ryb2tlcyBmb3IgbWV0aG9kIHNlbGVjdGlvbiIKK21zZ3N0ciAiQXNzaWduYWNpb25zIGRlIHRlY2xlcyBwZXIgYSBsYSBzZWxlY2Npw7MgZGVsIG3DqHRvZGUiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTk2Cittc2dpZCAiIgorIk1vdGlvbiBrZXlzOiBOZXh0L1ByZXZpb3VzLCBUb3AvRW5kLCBVcC9Eb3duLCBCYWNrd2FyZHMvRm9yd2FyZHM6XG4iCisiICBqLCBEb3duLWFycm93ICAgICAgICAgaywgVXAtYXJyb3cgICAgICAgICAgICAgbW92ZSBoaWdobGlnaHRcbiIKKyIgIE4sIFBhZ2UtZG93biwgU3BhY2UgICBQLCBQYWdlLXVwLCBCYWNrc3BhY2UgICBzY3JvbGwgbGlzdCBieSAxIHBhZ2VcbiIKKyIgIF5uICAgICAgICAgICAgICAgICAgICBecCAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgbGlzdCBieSAxIGxpbmVcbiIKKyIgIHQsIEhvbWUgICAgICAgICAgICAgICBlLCBFbmQgICAgICAgICAgICAgICAgICBqdW1wIHRvIHRvcC9lbmQgb2YgbGlzdFxuIgorIiAgdSAgICAgICAgICAgICAgICAgICAgIGQgICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIGJ5IDEgcGFnZVxuIgorIiAgXnUgICAgICAgICAgICAgICAgICAgIF5kICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIGJ5IDEgbGluZVxuIgorIiAgQiwgTGVmdC1hcnJvdyAgICAgICAgIEYsIFJpZ2h0LWFycm93ICAgICAgICAgIHBhbiBkaXNwbGF5IGJ5IDEvMyBzY3JlZW5cbiIKKyIgIF5iICAgICAgICAgICAgICAgICAgICBeZiAgICAgICAgICAgICAgICAgICAgICBwYW4gZGlzcGxheSBieSAxIGNoYXJhY3RlclxuIgorIihUaGVzZSBhcmUgdGhlIHNhbWUgbW90aW9uIGtleXMgYXMgaW4gdGhlIHBhY2thZ2UgbGlzdCBkaXNwbGF5LilcbiIKKyJcbiIKKyJRdWl0OlxuIgorIiBSZXR1cm4sIEVudGVyICAgIHNlbGVjdCB0aGlzIG1ldGhvZCBhbmQgZ28gdG8gaXRzIGNvbmZpZ3VyYXRpb24gZGlhbG9ndWVcbiIKKyIgeCwgWCAgICAgICAgICAgICBleGl0IHdpdGhvdXQgY2hhbmdpbmcgb3Igc2V0dGluZyB1cCB0aGUgaW5zdGFsbGF0aW9uICIKKyJtZXRob2RcbiIKKyJcbiIKKyJNaXNjZWxsYW5lb3VzOlxuIgorIiAgPywgSGVscCwgRjEgICAgICByZXF1ZXN0IGhlbHBcbiIKKyIgXmwgICAgICAgICAgICAgICAgcmVkcmF3IGRpc3BsYXlcbiIKKyIgIC8gICAgICAgICAgICAgICAgc2VhcmNoIChqdXN0IHJldHVybiB0byBjYW5jZWwpXG4iCisiICBcXCAgICAgICAgICAgICAgICByZXBlYXQgbGFzdCBzZWFyY2hcbiIKK21zZ3N0ciAiIgorIlRlY2xlcyBkZSBtb3ZpbWVudDogUmUgUMOgZy9BdiBQw6BnLCBJbmljaS9Gw60sICBlbmRhdmFudC9lbnJlcmU6XG4iCisiICBqLCBBdmFsbCAgICAgICAgICAgICBrLCBBbXVudCAgICAgICAgICAgICAgIG1vdSBlbCByZXNzYWx0YXRcbiIKKyIgIE4sIFDDoGcgYXZhbGwsIEVzcGFpICBQLCBQw6BnIGFtdW50LCBSZXRyb2PDqXMgZGVzcGxhw6dhIGxhIGxsaXN0YSAxIHDDoGdpbmFcbiIKKyIgIF5uICAgICAgICAgICAgICAgICAgIF5wICAgICAgICAgICAgICAgICAgICAgZGVzcGxhw6dhIGxhIGxsaXN0YSAxIGzDrW5pYVxuIgorIiAgdCwgSW5pY2kgICAgICAgICAgICAgZSwgRmkgICAgICAgICAgICAgICAgICBzYWx0YSBhIGwnaW5pY2kvZsOtIGRlIGxhICIKKyJsbGlzdGFcbiIKKyIgIHUgICAgICAgICAgICAgICAgICAgIGQgICAgICAgICAgICAgICAgICAgICAgZGVzcGxhw6dhIGxhIGluZm8uIDEgcMOgZ2luYVxuIgorIiAgXnUgICAgICAgICAgICAgICAgICAgXmQgICAgICAgICAgICAgICAgICAgICBkZXNwbGHDp2EgbGEgaW5mby4gMSBsw61uaWFcbiIKKyIgIEIsIEVzcXVlcnJhICAgICAgICAgIEYsIERyZXRhICAgICAgICAgICAgICAgZGVzcGxhw6dhIGxhIHZpc3VhbC4g4oWTICIKKyJwYW50YWxsYVxuIgorIiAgXmIgICAgICAgICAgICAgICAgICAgXmYgICAgICAgICAgICAgICAgICAgICBkZXNwbGHDp2EgbGEgdmlzdWFsLiAxICIKKyJjYXLDoGN0ZXJcbiIKKyIoQXF1ZXN0ZXMgc8OzbiBsZXMgbWF0ZWl4ZXMgdGVjbGVzIGRlIG1vdmltZW50IGRlbCBsYSB2aXN1YWxpdHphY2nDs1xuIgorImRlIGxhIGxsaXN0YSBkZSBwYXF1ZXRzKVxuIgorIlxuIgorIkl4OlxuIgorIiBSZXRvcm4sIEludHJvICAgc2VsZWNjaW9uYSBhcXVlc3QgbcOodG9kZSBpIHbDqXMgYWwgc2V1IGRpw6BsZWcgZGUgIgorImNvbmZpZ3VyYWNpw7NcbiIKKyIgeCwgWCAgICAgICAgICAgIEl4IHNlbnNlIGNhbnZpYXIgbyBjb25maWd1cmFyIGVsIG3DqHRvZGUgZCdpbnN0YcWAbGFjacOzXG4iCisiXG4iCisiTWlzY2XFgGzDoG5pYTpcbiIKKyIgICA/LCBBanVkYSwgRjEgICAgICAgZGVtYW5hIGFqdWRhXG4iCisiICBebCAgICAgICAgICAgICAgICAgIHJlZnJlc2NhIGxhIHZpc3VhbGl0emFjacOzXG4iCisiICAgLyAgICAgICAgICAgICAgICAgIGNlcmNhIChSZXRvcm4gY2FuY2XFgGxhKVxuIgorIiAgIFxcICAgICAgICAgICAgICAgICAgcmVwZXRlaXggbGEgZGFycmVyYSBjZXJjYVxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6NjAKK21zZ2lkICJUeXBlIGRzZWxlY3QgLS1oZWxwIGZvciBoZWxwLiIKK21zZ3N0ciAiVGVjbGVnZXUgZHNlbGVjdCAtLWhlbHAgcGVyIGEgb2J0aW5kcmUgYWp1ZGEuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQzCittc2dpZCAiYSIKK21zZ3N0ciAibSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0MworbXNnaWQgIltBXWNjZXNzIgorbXNnc3RyICJbTV3DqHRvZGUiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDMKK21zZ2lkICJDaG9vc2UgdGhlIGFjY2VzcyBtZXRob2QgdG8gdXNlLiIKK21zZ3N0ciAiRXNjdWxsIGVsIG3DqHRvZGUgZCdhY2PDqXMgcXVlIGVtcHJhcmV1LiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NAorbXNnaWQgInUiCittc2dzdHIgImEiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDQKK21zZ2lkICJbVV1wZGF0ZSIKK21zZ3N0ciAiW0FdY3R1YWxpdHphIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ0Cittc2dpZCAiVXBkYXRlIGxpc3Qgb2YgYXZhaWxhYmxlIHBhY2thZ2VzLCBpZiBwb3NzaWJsZS4iCittc2dzdHIgIkFjdHVhbGl0emEgbGEgbGxpc3RhIGRlIHBhcXVldHMgZGlzcG9uaWJsZXMsIHNpIMOpcyBwb3NzaWJsZS4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDUKK21zZ2lkICJzIgorbXNnc3RyICJzIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ1Cittc2dpZCAiW1NdZWxlY3QiCittc2dzdHIgIltTXWVsZWNjaW9uYSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NQorbXNnaWQgIlJlcXVlc3Qgd2hpY2ggcGFja2FnZXMgeW91IHdhbnQgb24geW91ciBzeXN0ZW0uIgorbXNnc3RyICJTZWxlY2Npb25hIGVscyBwYXF1ZXRzIHF1ZSB2b2xldSBlbiBlbCBzaXN0ZW1hLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NgorbXNnaWQgImkiCittc2dzdHIgImkiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDYKK21zZ2lkICJbSV1uc3RhbGwiCittc2dzdHIgIltJXW5zdGHFgGxhIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ2Cittc2dpZCAiSW5zdGFsbCBhbmQgdXBncmFkZSB3YW50ZWQgcGFja2FnZXMuIgorbXNnc3RyICJJbnN0YcWAbGEgaSBhY3R1YWxpdHphIGVscyBwYXF1ZXRzIGRlc2l0amF0cy4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDcKK21zZ2lkICJjIgorbXNnc3RyICJjIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ3Cittc2dpZCAiW0Ndb25maWciCittc2dzdHIgIltDXW9uZmlndXJhIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ3Cittc2dpZCAiQ29uZmlndXJlIGFueSBwYWNrYWdlcyB0aGF0IGFyZSB1bmNvbmZpZ3VyZWQuIgorbXNnc3RyICJDb25maWd1cmEgZWxzIHBhcXVldHMgcXVlIG5vIGVzdGlndWluIGNvbmZpZ3VyYXRzLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OAorbXNnaWQgInIiCittc2dzdHIgImQiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDgKK21zZ2lkICJbUl1lbW92ZSIKK21zZ3N0ciAiW0RdZXNpbnN0YcWAbGEiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDgKK21zZ2lkICJSZW1vdmUgdW53YW50ZWQgc29mdHdhcmUuIgorbXNnc3RyICJEZXNpbnN0YcWAbGEgZWxzIHBhcXVldHMgbm8gZGVzaXRqYXRzLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OQorbXNnaWQgInEiCittc2dzdHIgInQiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDkKK21zZ2lkICJbUV11aXQiCittc2dzdHIgIlN1cltUXSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OQorbXNnaWQgIlF1aXQgZHNlbGVjdC4iCittc2dzdHIgIlN1cnQgZGUgZHNlbGVjdC4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNTAKK21zZ2lkICJtZW51IgorbXNnc3RyICJtZW7DuiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE1NQorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIGhhbmRsaW5nIGZyb250ZW5kIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkludGVyZsOtY2llIGRlIGdlc3Rpw7MgZGUgcGFxdWV0cyDCqyVzwrsgZGUgRGViaWFuIHZlcnNpw7MgJXMuXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNTgKK21zZ2lkICIiCisiQ29weXJpZ2h0IChDKSAxOTk0LTE5OTYgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKK21zZ3N0ciAiIgorIkNvcHlyaWdodCDCqSAxOTk0LTE5OTYgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IMKpIDIwMDAsIDIwMDEgV2ljaGVydCBha2tlcm1hbi5cbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE2MgorbXNnaWQgIiIKKyJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAyIG9yXG4iCisibGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuXG4iCittc2dzdHIgIiIKKyJBaXjDsiDDqXMgcHJvZ3JhbWFyaSBsbGl1cmUsIHZlZ2V1IGxhIExsaWPDqG5jaWEgUHVibGljYSBHZW5lcmFsIEdOVSB2ZXJzacOzIDJcbiIKKyJvIHBvc3RlcmlvciBwZXIgYSBsZXMgY29uZGljaW9ucyBkZSBjw7JwaWEuIE5vIGhpIGhhIENBUCBnYXJhbnRpYS5cbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE3MiBkc2VsZWN0L21haW4uY2M6MjIwCittc2dpZCAiPHN0YW5kYXJkIG91dHB1dD4iCittc2dzdHIgIjxlaXhpZGEgZXN0w6BuZGFyZD4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSBbPGFjdGlvbj4gLi4uXVxuIgorIlxuIgorbXNnc3RyICIiCisiRm9ybWEgZCfDunM6ICVzIFs8b3BjacOzPiDigKZdIFs8YWNjacOzPiDigKZdXG4iCisiXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyIgIC0tZXhwZXJ0ICAgICAgICAgICAgICAgICAgIFR1cm4gb24gZXhwZXJ0IG1vZGUuXG4iCisiICAtLWRlYnVnIDxmaWxlPiB8IC1EPGZpbGU+ICBUdXJuIG9uIGRlYnVnZ2luZywgc2VuZGluZyBvdXRwdXQgdG8gPGZpbGU+LlxuIgorIiAgLS1jb2xvdXIgfCAtLWNvbG9yIHNjcmVlbnBhcnQ6W2ZvcmVncm91bmRdLFtiYWNrZ3JvdW5kXVs6YXR0clsrYXR0cisuLl1dXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDb25maWd1cmUgc2NyZWVuIGNvbG91cnMuXG4iCisiXG4iCittc2dzdHIgIiIKKyJPcGNpb25zOlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3JpPiAgICAgICAgVXRpbGl0emEgPGRpcmVjdG9yaT4gZW4gY29tcHRlcyBkZSAlcy5cbiIKKyIgIC1leHBlcnQgICAgICAgICAgICAgICAgICAgICAgIEhhYmlsaXRhIGVsIG1vZGUgZXhwZXJ0LlxuIgorIiAgLS1kZWJ1ZyA8Zml0eGVyPiB8IC1EPGZpdHhlcj4gSGFiaWxpdGEgbGEgZGVwdXJhY2nDsywgZW52aWFudCBsJ2VpeGlkYVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYSA8Zml0eGVyPi5cbiIKKyIgIC0tY29sb3VyIHwgLS1jb2xvciBzY3JlZW5wYXJ0Oltmb3JlZ3JvdW5kXSxbYmFja2dyb3VuZF1bOmF0dHJbK2F0dHIrLi5dXVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ29uZmlndXJhIGVscyBjb2xvcnMgZGUgbGEgcGFudGFsbGEuXG4iCisiXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgICAgU2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgIFNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCittc2dzdHIgIiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICAgICAgIE1vc3RyYSBhcXVlc3QgbWlzc2F0Z2UgZCdhanVkYS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgICAgIE1vc3RyYSBsYSB2ZXJzacOzLlxuIgorIlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjAxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJBY3Rpb25zOlxuIgorIiAgYWNjZXNzIHVwZGF0ZSBzZWxlY3QgaW5zdGFsbCBjb25maWcgcmVtb3ZlIHF1aXRcbiIKKyJcbiIKK21zZ3N0ciAiIgorIkFjY2lvbnM6XG4iCisiICBhY2Nlc3MgdXBkYXRlIHNlbGVjdCBpbnN0YWxsIGNvbmZpZyByZW1vdmUgcXVpdFxuIgorIlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjA1CisjLCBjLWZvcm1hdAorbXNnaWQgIlNjcmVlbnBhcnRzOlxuIgorbXNnc3RyICJQYXJ0cyBkZSBsYSBwYW50YWxsYTpcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjIxMAorIywgYy1mb3JtYXQKK21zZ2lkICJDb2xvdXJzOlxuIgorbXNnc3RyICJDb2xvcnM6XG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiQXR0cmlidXRlczpcbiIKK21zZ3N0ciAiQXRyaWJ1dHM6XG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGRuJ3Qgb3BlbiBkZWJ1ZyBmaWxlIGAlLjI1NXMnXG4iCittc2dzdHIgIm5vIGVzIHBvdCBvYnJpciBlbCBmaXR4ZXIgZGUgZGVwdXJhY2nDsyDCqyUuMjU1c8K7XG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyNTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW52YWxpZCAlcyBgJXMnXG4iCittc2dzdHIgIiVzIGludsOgbGlkOiDCqyVzwrtcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjI3MAorbXNnaWQgInNjcmVlbiBwYXJ0IgorbXNnc3RyICJwYXJ0IGRlIGxhIHBhbnRhbGxhIgorCisjOiBkc2VsZWN0L21haW4uY2M6Mjc2Cittc2dpZCAiTnVsbCBjb2xvdXIgc3BlY2lmaWNhdGlvblxuIgorbXNnc3RyICJFc3BlY2lmaWNhY2nDsyBkZSBjb2xvciBudWxhXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyODQgZHNlbGVjdC9tYWluLmNjOjI4OQorbXNnaWQgImNvbG91ciIKK21zZ3N0ciAiY29sb3IiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyOTcKK21zZ2lkICJjb2xvdXIgYXR0cmlidXRlIgorbXNnc3RyICJhdHJpYnV0IGRlbCBjb2xvciIKKworIzogZHNlbGVjdC9tYWluLmNjOjMyOQorbXNnaWQgIlRlcm1pbmFsIGRvZXMgbm90IGFwcGVhciB0byBzdXBwb3J0IGN1cnNvciBhZGRyZXNzaW5nLlxuIgorbXNnc3RyICJFbCB0ZXJtaW5hbCBubyBzZW1ibGEgZG9uYXIgc3Vwb3J0IGFsIGRpcmVjY2lvbmFtZW50IHBlbCBjdXJzb3IuXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzozMzEKK21zZ2lkICJUZXJtaW5hbCBkb2VzIG5vdCBhcHBlYXIgdG8gc3VwcG9ydCBoaWdobGlnaHRpbmcuXG4iCittc2dzdHIgIkVsIHRlcm1pbmFsIHNlbWJsYSBubyBkb25hciBzdXBvcnQgcGVyIGEgcmVzc2FsdGF0cy5cbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjMzMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiU2V0IHlvdXIgVEVSTSB2YXJpYWJsZSBjb3JyZWN0bHksIHVzZSBhIGJldHRlciB0ZXJtaW5hbCxcbiIKKyJvciBtYWtlIGRvIHdpdGggdGhlIHBlci1wYWNrYWdlIG1hbmFnZW1lbnQgdG9vbCAlcy5cbiIKK21zZ3N0ciAiIgorIkVzdGFibGl1IGxhIHZhcmlhYmxlIFRFUk0gY29ycmVjdGFtZW50LCB1dGlsaXR6ZXUgdW4gdGVybWluYWwgbWlsbG9yXG4iCisibyBmZXUgbGEgY29uc3RydWNjacOzIGFtYiBsJ2VpbmEgZGUgZ2VzdGnDsyBwZXIgcGFxdWV0cyAlcy5cbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjMzNgorbXNnaWQgInRlcm1pbmFsIGxhY2tzIG5lY2Vzc2FyeSBmZWF0dXJlcywgZ2l2aW5nIHVwIgorbXNnc3RyICJlbCB0ZXJtaW5hbCBubyB0w6kgbGVzIGNhcmFjdGVyw61zdGlxdWVzIG5lY2Vzc8Ogcmllcywgcydlc3TDoCBhdm9ydGFudCIKKworIzogZHNlbGVjdC9tYWluLmNjOjQxNworbXNnaWQgIiIKKyJcbiIKKyJcbiIKKyJNb3ZlIGFyb3VuZCB3aXRoIF5QIGFuZCBeTiwgY3Vyc29yIGtleXMsIGluaXRpYWwgbGV0dGVycywgb3IgZGlnaXRzO1xuIgorIlByZXNzIDxlbnRlcj4gdG8gY29uZmlybSBzZWxlY3Rpb24uICAgXkwgcmVkcmF3cyBzY3JlZW4uXG4iCisiXG4iCittc2dzdHIgIiIKKyJcbiIKKyJcbiIKKyJNb2d1ZXUtdm9zIGFtYiBsZXMgdGVjbGVzIGRlbCBjdXJzb3IgXlAgaSBeTiwgbGxldHJlcyBpbmljaWFscyBvIGTDrWdpdHM7XG4iCisiUHJlbWV1IDxlbnRlcj4gcGVyIGEgY29uZmlybWFyIGxhIHNlbGVjY2nDsy4gICBeTCByZWRpYnVpeGEgbGEgcGFudGFsbGEuXG4iCisiXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzo0MjgKK21zZ2lkICIiCisiXG4iCisiXG4iCisiUmVhZC1vbmx5IGFjY2Vzczogb25seSBwcmV2aWV3IG9mIHNlbGVjdGlvbnMgaXMgYXZhaWxhYmxlISIKK21zZ3N0ciAiIgorIlxuIgorIlxuIgorIkFjY8OpcyBkZSBub23DqXMgbGVjdHVyYTogbm9tw6lzIMOpcyBwb2RlbiB2ZXVyZSBsZXMgc2VsZWNjaW9uZXMgZGlzcG9uaWJsZXMhIgorCisjOiBkc2VsZWN0L21haW4uY2M6NDQ4Cittc2dpZCAiZmFpbGVkIHRvIGdldGNoIGluIG1haW4gbWVudSIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBmZXIgwqtnZXRjaMK7IGVuIGVsIG1lbsO6IHByaW5jaXBhbCIKKworIzogZHNlbGVjdC9tYWluLmNjOjUzMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGFjdGlvbiBzdHJpbmcgYCUuNTBzJyIKK21zZ3N0ciAibGEgY2FkZW5hIGQnYWNjacOzIMKrJS41MHPCuyDDqXMgZGVzY29uZWd1ZGEiCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6NzcKK21zZ2lkICJkc2VsZWN0IC0gbGlzdCBvZiBhY2Nlc3MgbWV0aG9kcyIKK21zZ3N0ciAiZHNlbGVjdCAtIGxsaXN0YSBkZWxzIG3DqHRvZGVzIGQnYWNjw6lzIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjg2CisjLCBjLWZvcm1hdAorbXNnaWQgIkFjY2VzcyBtZXRob2QgYCVzJy4iCittc2dzdHIgIk3DqHRvZGUgZCdhY2PDqXMgwqslc8K7LiIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxMjAKK21zZ2lkICJBYmJyZXYuIgorbXNnc3RyICJBYnJldWphbWVudCIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxMjEgZHNlbGVjdC9wa2dpbmZvLmNjOjEwNSBkc2VsZWN0L3BrZ3RvcC5jYzoyOTEKK21zZ2lkICJEZXNjcmlwdGlvbiIKK21zZ3N0ciAiRGVzY3JpcGNpw7MiCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTY0IGRzZWxlY3QvcGtnbGlzdC5jYzo1NzIKK21zZ2lkICJkb3VwZGF0ZSBmYWlsZWQiCittc2dzdHIgIsKrZG91cGRhdGXCuyBoYSBmYWxsYXQiCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTY2IGRzZWxlY3QvcGtnbGlzdC5jYzo1NzUKK21zZ2lkICJmYWlsZWQgdG8gdW5ibG9jayBTSUdXSU5DSCIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBkZXNibG9jYXIgU0lHV0lOQ0giCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTcwIGRzZWxlY3QvcGtnbGlzdC5jYzo1ODAKK21zZ2lkICJmYWlsZWQgdG8gcmUtYmxvY2sgU0lHV0lOQ0giCittc2dzdHIgIm5vIHMnaGEgcG9ndXQgdG9ybmFyIGEgYmxvY2FyIFNJR1dJTkNIIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjE3MSBkc2VsZWN0L3BrZ2xpc3QuY2M6NTgyCittc2dpZCAiZ2V0Y2ggZmFpbGVkIgorbXNnc3RyICJnZXRjaCBoYSBmYWxsYXQiCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTg4Cittc2dpZCAiRXhwbGFuYXRpb24iCittc2dzdHIgIkV4cGxpY2FjacOzIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjE5NworbXNnaWQgIk5vIGV4cGxhbmF0aW9uIGF2YWlsYWJsZS4iCittc2dzdHIgIk5vIGhpIGhhIGV4cGxpY2FjacOzIGRpc3BvbmlibGUuIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzo2NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiXG4iCisiJXM6ICVzXG4iCittc2dzdHIgIiIKKyJcbiIKKyJcbiIKKyIlczogJXNcbiIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6NzAKK21zZ2lkICIiCisiXG4iCisiUHJlc3MgPGVudGVyPiB0byBjb250aW51ZS4iCittc2dzdHIgIiIKKyJcbiIKKyJQcmVtZXUgPGVudGVyPiBwZXIgYSBjb250aW51YXIuIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoxNjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHJlc3MgPGVudGVyPiB0byBjb250aW51ZS5cbiIKK21zZ3N0ciAiUHJlbWV1IDxlbnRlcj4gcGVyIGEgY29udGludWFyLlxuIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoxNjIKK21zZ2lkICI8c3RhbmRhcmQgZXJyb3I+IgorbXNnc3RyICI8ZWl4aWRhIGQnZXJyb3IgZXN0w6BuZGFyZD4iCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjE2NQorbXNnaWQgImVycm9yIHJlYWRpbmcgYWNrbm93bGVkZ2VtZW50IG9mIHByb2dyYW0gZmFpbHVyZSBtZXNzYWdlIgorbXNnc3RyICIiCisicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBsbGVnaXIgZWwgcmVjb25laXhlbWVudCBkZWwgbWlzc2F0Z2UgZGUgbGEgZmFsbGEgIgorImRlbCBwcm9ncmFtYSIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MTk2Cittc2dpZCAidXBkYXRlIGF2YWlsYWJsZSBsaXN0IHNjcmlwdCIKK21zZ3N0ciAic2Vxw7zDqG5jaWEgZCdhY3R1YWxpdHphY2nDsyBkZSBsYSBsbGlzdGEgwqthdmFpbGFibGXCuyIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MjAwCittc2dpZCAiaW5zdGFsbGF0aW9uIHNjcmlwdCIKK21zZ3N0ciAic2Vxw7zDqG5jaWEgZCdpbnN0YcWAbGFjacOzIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoyNDYKK21zZ2lkICJxdWVyeS9zZXR1cCBzY3JpcHQiCittc2dzdHIgInNlccO8w6huY2lhIGRlIHBldGljacOzL2NvbmZpZ3VyYWNpw7MiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjUzCisjLCBjLWZvcm1hdAorbXNnaWQgInN5bnRheCBlcnJvciBpbiBtZXRob2Qgb3B0aW9ucyBmaWxlIGAlLjI1MHMnIC0tICVzIgorbXNnc3RyICJlcnJvciBkZSBzaW50YXhpIGFsIGZpdHhlciBkJ29wY2lvbnMgZGVsIG3DqHRvZGUgwqslLjI1MHPCuyAtLSAlcyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcmVhZGluZyBvcHRpb25zIGZpbGUgYCUuMjUwcyciCittc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gbGxlZ2lyIGVsIGZpdHhlciBkJ29wY2lvbnMgwqslLjI1MHPCuyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgYCUuMjUwcycgZGlyZWN0b3J5IGZvciByZWFkaW5nIG1ldGhvZHMiCittc2dzdHIgIm5vIGVzIHBvdCBsbGVnaXIgZWwgZGlyZWN0b3JpIMKrJS4yNTBzwrsgcGVyIGEgbGxlZ2lyIGVscyBtw6h0b2RlcyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTA2CisjLCBjLWZvcm1hdAorbXNnaWQgIm1ldGhvZCBgJS4yNTBzJyBoYXMgbmFtZSB0aGF0IGlzIHRvbyBsb25nICglZCA+ICVkIGNoYXJhY3RlcnMpIgorbXNnc3RyICJlbCBtw6h0b2RlIMKrJS4yNTBzwrsgdMOpIHVuIG5vbSBtYXNzYSBsbGFyZyAoJWQgPiAlZCBjYXLDoGN0ZXJzKSIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTE3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBhY2Nlc3MgbWV0aG9kIHNjcmlwdCBgJS4yNTBzJyIKK21zZ3N0ciAibm8gZXMgcG90IGFjY2VkaXIgYSBsYSBzZXHDvMOobmNpYSBkZWwgbcOodG9kZSDCqyUuMjUwc8K7IgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgbWV0aG9kIG9wdGlvbnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibm8gZXMgcG90IGxsZWdpciBlbCBmaXR4ZXIgZCdvcGNpb25zIGRlbCBtw6h0b2RlIMKrJS4yNTBzwrsiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE0NworbXNnaWQgIm5vbi1kaWdpdCB3aGVyZSBkaWdpdCB3YW50ZWQiCittc2dzdHIgInMnaGEgdHJvYmF0IHVuIG5vIGTDrWdpdCBxdWFuIHMnZXNwZXJhdmEgdW4gZMOtZ2l0IgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNTAKK21zZ2lkICJFT0YgaW4gaW5kZXggc3RyaW5nIgorbXNnc3RyICJFT0YgZW4gbGEgY2FkZW5hIGQnw61uZGV4IgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNTMKK21zZ2lkICJpbmRleCBzdHJpbmcgdG9vIGxvbmciCittc2dzdHIgImNhZGVuYSBkJ8OtbmRleCBtYXNzYSBsbGFyZ2EiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE1NgorbXNnaWQgIm5ld2xpbmUgYmVmb3JlIG9wdGlvbiBuYW1lIHN0YXJ0IgorbXNnc3RyICJsw61uaWEgbm92YSBhYmFucyBkZSBxdWUgY29tZW5jaSBlbCBub20gZGUgbCdvcGNpw7MiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE1OAorbXNnaWQgIkVPRiBiZWZvcmUgb3B0aW9uIG5hbWUgc3RhcnQiCittc2dzdHIgIkVPRiBhYmFucyBkZSBxdWUgY29tZW5jaSBlbCBub20gZGUgbCdvcGNpw7MiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE2MgorbXNnaWQgIm5vbmFscGhhIHdoZXJlIG9wdGlvbiBuYW1lIHN0YXJ0IHdhbnRlZCIKK21zZ3N0ciAiY2Fyw6BjdGVyIG5vIGFsZmFudW3DqHJpYyBvbiBzJ2VzcGVyYXZhIGVsIHByaW5jaXBpIGRlbCBub20gZCd1bmEgb3BjacOzIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNjQKK21zZ2lkICJub24tYWxwaGFudW0gaW4gb3B0aW9uIG5hbWUiCittc2dzdHIgImNhcsOgY3RlciBubyBhbGZhbnVtw6hyaWMgZW4gZWwgbm9tIGQnb3BjacOzIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNjcKK21zZ2lkICJFT0YgaW4gb3B0aW9uIG5hbWUiCittc2dzdHIgIkVPRiBkaW5zIGRlbCBub20gZGUgbCdvcGNpw7MiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE3MgorbXNnaWQgIm5ld2xpbmUgYmVmb3JlIHN1bW1hcnkiCittc2dzdHIgImzDrW5pYSBub3ZhIGFiYW5zIGRlbCByZXN1bSIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTc0Cittc2dpZCAiRU9GIGJlZm9yZSBzdW1tYXJ5IgorbXNnc3RyICJFT0YgYWJhbnMgZGVsIHJlc3VtIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxODAKK21zZ2lkICJFT0YgaW4gc3VtbWFyeSAtIG1pc3NpbmcgbmV3bGluZSIKK21zZ3N0ciAiRU9GIGVuIGVsIHJlc3VtIC0gZmFsdGEgdW5hIGzDrW5pYSBub3ZhIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gb3B0aW9uIGRlc2NyaXB0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5vIGVzIHBvdCBvYnJpciBlbCBmaXR4ZXIgZGUgZGVzY3JpcGNpw7MgZCdvcGNpb25zIMKrJS4yNTBzwrsiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE5NAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBvcHRpb24gZGVzY3JpcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibm8gZXMgcG90IGZlciDCq3N0YXTCuyBzb2JyZSBlbCBmaXR4ZXIgZGUgZGVzY3JpcGNpw7MgZCdvcGNpb25zIMKrJS4yNTBzwrsiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE5OAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCBvcHRpb24gZGVzY3JpcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBsbGVnaXIgZWwgZml0eGVyIGRlIGRlc2NyaXBjacOzIGQnb3BjaW9ucyDCqyUuMjUwc8K7IgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgZHVyaW5nIHJlYWQgb2Ygb3B0aW9uIGRlc2NyaXB0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKyJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIGxsZWdpciBlbCBmaXR4ZXIgZGUgZGVzY3JpcGNpw7MgZCdvcGNpb25zIMKrJS4yNTBzwrsiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjIyNAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBkdXJpbmcgcmVhZCBvZiBtZXRob2Qgb3B0aW9ucyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBsbGVnaXIgZWwgZml0eGVyIGQnb3BjaW9ucyBkZWwgbcOodG9kZSDCqyUuMjUwc8K7IgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gY3VycmVudCBvcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibm8gZXMgcG90IG9icmlyIGwnYWN0dWFsIGZpdHhlciBkJ29wY2lvbnMgwqslLjI1MHPCuyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6Mjg5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIG5ldyBvcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibm8gZXMgcG90IG9icmlyIGVsIGZpdHhlciBkJ29wY2lvbnMgbm91IMKrJS4yNTBzwrsiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjI5MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgbmV3IG9wdGlvbiB0byBgJS4yNTBzJyIKK21zZ3N0ciAibm8gZXMgcG90IGVzY3JpdXJlIHVuYSBvcGNpw7Mgbm92YSBlbiDCqyUuMjUwc8K7IgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyOTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIG5ldyBvcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibm8gZXMgcG90IHRhbmNhciBlbCBmaXR4ZXIgZCdvcGNpb25zIG5vdSDCqyUuMjUwc8K7IgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyOTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IG9wdGlvbiBhcyBgJS4yNTBzJyIKK21zZ3N0ciAibm8gZXMgcG90IGluc3RhxYBsYXIgbCdvcGNpw7Mgbm92YSBjb20gYSDCqyUuMjUwc8K7IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MzYKK21zZ2lkICJuZXcgcGFja2FnZSIKK21zZ3N0ciAicGFxdWV0IG5vdSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjM3Cittc2dpZCAiaW5zdGFsbCIKK21zZ3N0ciAiaW5zdGHFgGxhIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MzgKK21zZ2lkICJob2xkIgorbXNnc3RyICJtYW50w6kiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzozOQorbXNnaWQgInJlbW92ZSIKK21zZ3N0ciAiZGVzaW5zdGHFgGxhIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NDAKK21zZ2lkICJwdXJnZSIKK21zZ3N0ciAicHVyZ2FyIgorCisjLiBUUkFOU0xBVE9SUzogVGhlIHNwYWNlIGlzIGEgdHJpY2sgdG8gd29yayBhcm91bmQgZ2V0dGV4dCB3aGljaCB1c2VzCisjLiAqIHRoZSBlbXB0eSBzdHJpbmcgdG8gc3RvcmUgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHRyYW5zbGF0aW9uLiBETyBOT1QKKyMuICogQ0hBTkdFIFRIQVQgSU4gQSBUUkFOU0xBVElPTiEgVGhlIGNvZGUgcmVhbGx5IHJlbGllcyBvbiB0aGF0IGJlaW5nCisjLiAqIGEgc2luZ2xlIHNwYWNlLgorIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjQ3Cittc2dpZCAiICIKK21zZ3N0ciAiICIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjQ4Cittc2dpZCAiUkVJTlNUQUxMIgorbXNnc3RyICJSRUlOU1RBTMK3TEEiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1MQorbXNnaWQgIm5vdCBpbnN0YWxsZWQiCittc2dzdHIgIm5vIGluc3RhxYBsYXQiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1MgorbXNnaWQgInJlbW92ZWQgKGNvbmZpZ3MgcmVtYWluKSIKK21zZ3N0ciAiZGVzaW5zdGHFgGxhdCAocXVlZGVuIGVscyBjb25maWcpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTMKK21zZ2lkICJoYWxmIGluc3RhbGxlZCIKK21zZ3N0ciAiaW5zdGHFgGxhdCBhIG1pdGplcyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjU0Cittc2dpZCAidW5wYWNrZWQgKG5vdCBzZXQgdXApIgorbXNnc3RyICJkZXNlbXBhcXVldGF0IChubyBjb25maWd1cmF0KSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjU1Cittc2dpZCAiaGFsZiBjb25maWd1cmVkIChjb25maWcgZmFpbGVkKSIKK21zZ3N0ciAiYSBtaWcgY29uZmlndXJhciAoY29uZmlndXJhY2nDsyBmYWxsaWRhKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjU2Cittc2dpZCAiYXdhaXRpbmcgdHJpZ2dlciBwcm9jZXNzaW5nIgorbXNnc3RyICJlc3BlcmFudCBlbCBwcm9jZXNzYW1lbnQgZGVscyBhY3RpdmFkb3JzIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTcKK21zZ2lkICJ0cmlnZ2VyZWQiCittc2dzdHIgImFjdGl2YXQiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1OAorbXNnaWQgImluc3RhbGxlZCIKK21zZ3N0ciAiaW5zdGHFgGxhdCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjYxCittc2dpZCAiUmVxdWlyZWQiCittc2dzdHIgIlJlcXVlcml0IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjIKK21zZ2lkICJJbXBvcnRhbnQiCittc2dzdHIgIkltcG9ydGFudCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjYzCittc2dpZCAiU3RhbmRhcmQiCittc2dzdHIgIkVzdMOgbmRhcmQiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo2NAorbXNnaWQgIk9wdGlvbmFsIgorbXNnc3RyICJPcGNpb25hbCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjY1Cittc2dpZCAiRXh0cmEiCittc2dzdHIgIkV4dHJhIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjYKK21zZ2lkICIhQnVnISIKK21zZ3N0ciAiIUVycm9yISIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjY3Cittc2dpZCAiVW5jbGFzc2lmaWVkIgorbXNnc3RyICJTZW5zZSBjbGFzc2lmaWNhciIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjcwCittc2dpZCAic3VnZ2VzdHMiCittc2dzdHIgInN1Z2dlcmVpeCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjcxCittc2dpZCAicmVjb21tZW5kcyIKK21zZ3N0ciAicmVjb21hbmEiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3MgorbXNnaWQgImRlcGVuZHMgb24iCittc2dzdHIgImRlcMOobiBkZSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjczCittc2dpZCAicHJlLWRlcGVuZHMgb24iCittc2dzdHIgInByZWRlcMOobiBkZSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjc0Cittc2dpZCAiYnJlYWtzIgorbXNnc3RyICJ0cmVuY2EiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3NQorbXNnaWQgImNvbmZsaWN0cyB3aXRoIgorbXNnc3RyICJlbnRyYSBlbiBjb25mbGljdGUgYW1iIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzYKK21zZ2lkICJwcm92aWRlcyIKK21zZ3N0ciAicHJvdmVlaXgiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3NworbXNnaWQgInJlcGxhY2VzIgorbXNnc3RyICJyZWVtcGxhw6dhIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzgKK21zZ2lkICJlbmhhbmNlcyIKK21zZ3N0ciAiYW1wbGlhIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODEKK21zZ2lkICJSZXEiCittc2dzdHIgIlJlcSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjgyCittc2dpZCAiSW1wIgorbXNnc3RyICJJbXAiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4MworbXNnaWQgIlN0ZCIKK21zZ3N0ciAiRXN0IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODQKK21zZ2lkICJPcHQiCittc2dzdHIgIk9wYyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjg1Cittc2dpZCAiWHRyIgorbXNnc3RyICJFeHQiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4NgorbXNnaWQgImJVRyIKK21zZ3N0ciAiYlVHIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODcKK21zZ2lkICI/IgorbXNnc3RyICI/IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6OTUgZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExNQorbXNnaWQgIkJyb2tlbiIKK21zZ3N0ciAiVHJlbmNhdCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjk2Cittc2dpZCAiTmV3IgorbXNnc3RyICJOb3UiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo5NworbXNnaWQgIlVwZGF0ZWQiCittc2dzdHIgIkFtYiBhY3R1YWxpdHphY2nDsyBkaXNwb25pYmxlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6OTgKK21zZ2lkICJPYnNvbGV0ZS9sb2NhbCIKK21zZ3N0ciAiT2Jzb2xldC9sb2NhbCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjk5Cittc2dpZCAiVXAtdG8tZGF0ZSIKK21zZ3N0ciAiQWN0dWFsaXR6YXQiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDAKK21zZ2lkICJBdmFpbGFibGUiCittc2dzdHIgIkRpc3BvbmlibGUiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDEgZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExNworbXNnaWQgIlJlbW92ZWQiCittc2dzdHIgIkRlc2luc3RhxYBsYXRzIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTAyIGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTEKK21zZ2lkICJCcm9rZW5seSBpbnN0YWxsZWQgcGFja2FnZXMiCittc2dzdHIgIlBhcXVldHMgbWFsIGluc3RhxYBsYXRzIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTAzCittc2dpZCAiTmV3bHkgYXZhaWxhYmxlIHBhY2thZ2VzIgorbXNnc3RyICJOb3VzIHBhcXVldHMgZGlzcG9uaWJsZXMiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDQKK21zZ2lkICJVcGRhdGVkIHBhY2thZ2VzIChuZXdlciB2ZXJzaW9uIGlzIGF2YWlsYWJsZSkiCittc2dzdHIgIkFjdHVhbGl0emFjacOzIGRpc3BvbmlibGUiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDUKK21zZ2lkICJPYnNvbGV0ZSBhbmQgbG9jYWwgcGFja2FnZXMgcHJlc2VudCBvbiBzeXN0ZW0iCittc2dzdHIgIlBhcXVldHMgb2Jzb2xldHMgaSBwcmVzZW50cyBlbiBlbCBzaXN0ZW1hIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTA2Cittc2dpZCAiVXAgdG8gZGF0ZSBpbnN0YWxsZWQgcGFja2FnZXMiCittc2dzdHIgIlBhcXVldHMgYWN0dWFsaXR6YXRzLCBubyBoaSBoYSB2ZXJzacOzIG3DqXMgbm92YSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwNworbXNnaWQgIkF2YWlsYWJsZSBwYWNrYWdlcyAobm90IGN1cnJlbnRseSBpbnN0YWxsZWQpIgorbXNnc3RyICJQYXF1ZXRzIGRpc3BvbmlibGVzIChubyBpbnN0YcWAbGF0cyBhY3R1YWxtZW50KSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwOAorbXNnaWQgIlJlbW92ZWQgYW5kIG5vIGxvbmdlciBhdmFpbGFibGUgcGFja2FnZXMiCittc2dzdHIgIlBhcXVldHMgZGVzaW5zdGHFgGxhdHMgcXVlIGphIG5vIGVzdGFuIGRpc3BvbmlibGVzIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTEyCittc2dpZCAiSW5zdGFsbGVkIHBhY2thZ2VzIgorbXNnc3RyICJQYXF1ZXRzIGluc3RhxYBsYXRzIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTEzCittc2dpZCAiUmVtb3ZlZCBwYWNrYWdlcyAoY29uZmlndXJhdGlvbiBzdGlsbCBwcmVzZW50KSIKK21zZ3N0ciAiUGFxdWV0cyBkZXNpbnN0YcWAbGF0cyAoZmFsdGEgbGEgY29uZmlndXJhY2nDsykiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTQKK21zZ2lkICJQdXJnZWQgcGFja2FnZXMgYW5kIHRob3NlIG5ldmVyIGluc3RhbGxlZCIKK21zZ3N0ciAiUGFxdWV0cyBwdXJnYXRzIG8gcXVlIG5vIG1haSBmb3JlbiBpbnN0YcWAbGF0cyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExNgorbXNnaWQgIkluc3RhbGxlZCIKK21zZ3N0ciAiSW5zdGHFgGxhdCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExOAorbXNnaWQgIlB1cmdlZCIKK21zZ3N0ciAiUHVyZ2F0cyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjE5OAorbXNnaWQgImRzZWxlY3QgLSByZWN1cnNpdmUgcGFja2FnZSBsaXN0aW5nIgorbXNnc3RyICJkc2VsZWN0IC0gbGxpc3RhIHJlY3Vyc2l2YSBkZSBwYXF1ZXRzIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTk5Cittc2dpZCAiZHNlbGVjdCAtIGluc3BlY3Rpb24gb2YgcGFja2FnZSBzdGF0ZXMiCittc2dzdHIgImRzZWxlY3QgLSBpbnNwZWNjacOzIGRlIGwnZXN0YXQgZGVscyBwYXF1ZXRzIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjAwCittc2dpZCAiZHNlbGVjdCAtIG1haW4gcGFja2FnZSBsaXN0aW5nIgorbXNnc3RyICJkc2VsZWN0IC0gbGxpc3RhdCBkZSBwYXF1ZXRzIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjA4Cittc2dpZCAiIChieSBzZWN0aW9uKSIKK21zZ3N0ciAiIChwZXIgc2VjY2nDsykiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMTEKK21zZ2lkICIgKGF2YWlsLiwgc2VjdGlvbikiCittc2dzdHIgIiAoZGlzcC4sIHNlY2Npw7MpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjE0Cittc2dpZCAiIChzdGF0dXMsIHNlY3Rpb24pIgorbXNnc3RyICIgKGVzdGF0LCBzZWNjacOzKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIyMworbXNnaWQgIiAoYnkgcHJpb3JpdHkpIgorbXNnc3RyICIgKHBlciBwcmlvcml0YXQpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjI2Cittc2dpZCAiIChhdmFpbC4sIHByaW9yaXR5KSIKK21zZ3N0ciAiIChkaXNwLiwgcHJpb3JpdGF0KSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIyOQorbXNnaWQgIiAoc3RhdHVzLCBwcmlvcml0eSkiCittc2dzdHIgIiAoZXN0YXQsIHByaW9yaXRhdCkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMzggZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI1MAorbXNnaWQgIiAoYWxwaGFiZXRpY2FsbHkpIgorbXNnc3RyICIgKGFsZmFiw6h0aWNhbWVudCkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNDEKK21zZ2lkICIgKGJ5IGF2YWlsYWJpbGl0eSkiCittc2dzdHIgIiAocGVyIGRpc3BvbmliaWxpdGF0KSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI0NAorbXNnaWQgIiAoYnkgc3RhdHVzKSIKK21zZ3N0ciAiIChwZXIgZXN0YXQpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjU4Cittc2dpZCAiIG1hcms6Ky89Ly0gdGVyc2U6diBoZWxwOj8iCittc2dzdHIgIiBtYXJjYTorLz0vLSBjb25jw61zOnYgYWp1ZGE6PyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI1OQorbXNnaWQgIiBtYXJrOisvPS8tIHZlcmJvc2U6diBoZWxwOj8iCittc2dzdHIgIiBtYXJjYTorLz0vLSBkZXB1cmFjacOzOnYgYWp1ZGE6PyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI2MAorbXNnaWQgIiB0ZXJzZTp2IGhlbHA6PyIKK21zZ3N0ciAiIGNvbmPDrXM6diBhanVkYTo/IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjYxCittc2dpZCAiIHZlcmJvc2U6diBoZWxwOj8iCittc2dzdHIgIiBkZXB1cmFjacOzOnYgYWp1ZGE6PyIKKworIzogZHNlbGVjdC9wa2dpbmZvLmNjOjgwCittc2dpZCAiIgorIlRoZSBsaW5lIHlvdSBoYXZlIGhpZ2hsaWdodGVkIHJlcHJlc2VudHMgbWFueSBwYWNrYWdlczsgaWYgeW91IGFzayB0byAiCisiaW5zdGFsbCwgcmVtb3ZlLCBob2xkLCBldGMuIGl0IHlvdSB3aWxsIGFmZmVjdCBhbGwgdGhlIHBhY2thZ2VzIHdoaWNoIG1hdGNoICIKKyJ0aGUgY3JpdGVyaW9uIHNob3duLlxuIgorIlxuIgorIklmIHlvdSBtb3ZlIHRoZSBoaWdobGlnaHQgdG8gYSBsaW5lIGZvciBhIHBhcnRpY3VsYXIgcGFja2FnZSB5b3Ugd2lsbCBzZWUgIgorImluZm9ybWF0aW9uIGFib3V0IHRoYXQgcGFja2FnZSBkaXNwbGF5ZWQgaGVyZS5cbiIKKyJZb3UgY2FuIHVzZSBgbycgYW5kIGBPJyB0byBjaGFuZ2UgdGhlIHNvcnQgb3JkZXIgYW5kIGdpdmUgeW91cnNlbGYgdGhlICIKKyJvcHBvcnR1bml0eSB0byBtYXJrIHBhY2thZ2VzIGluIGRpZmZlcmVudCBraW5kcyBvZiBncm91cHMuIgorbXNnc3RyICIiCisiTGEgbMOtbmlhIHF1ZSBoZXUgcmVzc2FsdGF0IHJlcHJlc2VudGEgbW9sdHMgcGFxdWV0cy4gU2kgZGVtYW5ldSBxdWUgIgorInMnaW5zdGHFgGxpbiwgZGVzaW5zdGFswrdsaW4sIG1hbnRpbmd1aW4sIGV0Yy4gYWl4w7IgYWZlY3RhcsOgIGEgdG90cyBlbHMgIgorInBhcXVldHMgcXVlIGN1bXBsZWl4aW4gZWwgY3JpdGVyaSBpbmRpY2F0LlxuIgorIlxuIgorIlNpIGRlc3BsYWNldSBsJ2luZGljYXRpdSBkZSByZXNzYWx0YXQgYSB1bmEgbMOtbmlhIGQndW4gcGFxdWV0IGRldGVybWluYXQgc2UgIgorInZvcyBtb3N0cmFyw6AgaW5mb3JtYWNpw7MgcmVmZXJlbnQgYSBhcXVlc3QgcGFxdWV0LlxuIgorIlBvZGV1IGVtcHJhciDCq2/CuyBpIMKrT8K7IHBlciBhIGNhbnZpYXIgbCdvcmRyZSBkZWxzIHBhcXVldHMgbGxpc3RhdHMgcGVybWV0ZW50LSIKKyJ2b3MgbWFyY2FyIGVscyBwYXF1ZXRzIHBlciBkaWZlcmVudHMgY2xhc3NlcyBvIGdydXBzLiIKKworIzogZHNlbGVjdC9wa2dpbmZvLmNjOjkzCittc2dpZCAiSW50ZXJyZWxhdGlvbnNoaXBzIgorbXNnc3RyICJJbnRlcnJlbGFjaW9ucyIKKworIzogZHNlbGVjdC9wa2dpbmZvLmNjOjExMgorbXNnaWQgIk5vIGRlc2NyaXB0aW9uIGF2YWlsYWJsZS4iCittc2dzdHIgIk5vIGhpIGhhIGNhcCBkZXNjcmlwY2nDsyBkaXNwb25pYmxlLiIKKworIzogZHNlbGVjdC9wa2dpbmZvLmNjOjEzMAorbXNnaWQgIkluc3RhbGxlZCBjb250cm9sIGZpbGUgaW5mb3JtYXRpb24iCittc2dzdHIgIkluZm9ybWFjacOzIGRlbCBmaXR4ZXIgZGUgY29udHJvbCBpbnN0YcWAbGFkYSIKKworIzogZHNlbGVjdC9wa2dpbmZvLmNjOjE0NgorbXNnaWQgIkF2YWlsYWJsZSBjb250cm9sIGZpbGUgaW5mb3JtYXRpb24iCittc2dzdHIgIkluZm9ybWFjacOzIGRlbCBmaXR4ZXIgZGUgY29udHJvbCBkaXNwb25pYmxlIgorCisjOiBkc2VsZWN0L3BrZ2xpc3QuY2M6NDE2Cittc2dpZCAiVGhlcmUgYXJlIG5vIHBhY2thZ2VzLiIKK21zZ3N0ciAiTm8gaGkgaGEgcGFxdWV0cy4iCisKKyM6IGRzZWxlY3QvcGtnbGlzdC5jYzo1MDcKK21zZ2lkICJpbnZhbGlkIHNlYXJjaCBvcHRpb24gZ2l2ZW4iCittc2dzdHIgInMnaGEgZG9uYXQgdW5hIG9wY2nDsyBkZSByZWNlcmNhIGludsOgbGlkYSIKKworIzogZHNlbGVjdC9wa2dsaXN0LmNjOjUyMQorbXNnaWQgImVycm9yIGluIHJlZ3VsYXIgZXhwcmVzc2lvbiIKK21zZ3N0ciAiZXJyb3IgZW4gbCdleHByZXNzacOzIHJlZ3VsYXIiCisKKyM6IGRzZWxlY3QvcGtnc3VibGlzdC5jYzoxMDcKK21zZ2lkICIgZG9lcyBub3QgYXBwZWFyIHRvIGJlIGF2YWlsYWJsZVxuIgorbXNnc3RyICIgbm8gc2VtYmxhIGVzdGFyIGRpc3BvbmlibGVcbiIKKworIzogZHNlbGVjdC9wa2dzdWJsaXN0LmNjOjEyNworbXNnaWQgIiBvciAiCittc2dzdHIgIiBvICIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6NTcKK21zZ2lkICJBbGwiCittc2dzdHIgIlRvdHMiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjc5Cittc2dpZCAiQWxsIHBhY2thZ2VzIgorbXNnc3RyICJUb3RzIGVscyBwYXF1ZXRzIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo4MworIywgYy1mb3JtYXQKK21zZ2lkICIlcyBwYWNrYWdlcyB3aXRob3V0IGEgc2VjdGlvbiIKK21zZ3N0ciAiJXMgcGFxdWV0cyBzZW5zZSBzZWNjacOzIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo4NQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBwYWNrYWdlcyBpbiBzZWN0aW9uICVzIgorbXNnc3RyICIlcyBwYXF1ZXRzIGVuIGxhIHNlY2Npw7MgJXMiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjkxCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzICVzIHBhY2thZ2VzIgorbXNnc3RyICJQYXF1ZXRzICVzICVzIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo5NQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyAlcyBwYWNrYWdlcyB3aXRob3V0IGEgc2VjdGlvbiIKK21zZ3N0ciAiUGFxdWV0cyAlcyAlcyBzZW5zZSBzZWNjacOzIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo5NworIywgYy1mb3JtYXQKK21zZ2lkICIlcyAlcyBwYWNrYWdlcyBpbiBzZWN0aW9uICVzIgorbXNnc3RyICJQYXF1ZXRzICVzICVzIGVuIGxhIHNlY2Npw7MgJXMiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjExOAorIywgYy1mb3JtYXQKK21zZ2lkICIlLSpzICVzJXMlczsgICVzICh3YXM6ICVzKS4gICVzIgorbXNnc3RyICIlLSpzICVzJXMlczsgICVzIChlcmE6ICVzKS4gICVzIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyNjMKK21zZ2lkICJFcnJvciIKK21zZ3N0ciAiRXJyb3IiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI2NworbXNnaWQgIkluc3RhbGxlZD8iCittc2dzdHIgIkluc3RhxYBsYXQ/IgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyNzEKK21zZ2lkICJPbGQgbWFyayIKK21zZ3N0ciAiTWFyY2EgYW50aWdhIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyNzUKK21zZ2lkICJNYXJrZWQgZm9yIgorbXNnc3RyICJNYXJjYXQgcGVyIGEiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI3OAorbXNnaWQgIkVJT00iCittc2dzdHIgIkVJT00iCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI4MAorbXNnaWQgIlNlY3Rpb24iCittc2dzdHIgIlNlY2Npw7MiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI4MQorbXNnaWQgIlByaW9yaXR5IgorbXNnc3RyICJQcmlvcml0YXQiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI4MgorbXNnaWQgIlBhY2thZ2UiCittc2dzdHIgIlBhcXVldCIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6Mjg2Cittc2dpZCAiSW5zdC52ZXIiCittc2dzdHIgIlZlci5pbnN0LiIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6Mjg5Cittc2dpZCAiQXZhaWwudmVyIgorbXNnc3RyICJWZXIuZGlzcC4iCisKKyN+IG1zZ2lkICJyZXR1cm5lZCBlcnJvciBleGl0IHN0YXR1cyAlZC5cbiIKKyN+IG1zZ3N0ciAicmV0b3JuYSBsJ2VpeGlkYSBkJ2Vycm9yICVkLlxuIgorCisjfiBtc2dpZCAid2FzIGludGVycnVwdGVkLlxuIgorI34gbXNnc3RyICJzJ2hhIGludGVycm9tcHV0LlxuIgorCisjfiBtc2dpZCAid2FzIHRlcm1pbmF0ZWQgYnkgYSBzaWduYWw6ICVzLlxuIgorI34gbXNnc3RyICJzJ2hhIGZpbmFsaXR6YXQgcGVsIHNlbnlhbDogJXMuXG4iCisKKyN+IG1zZ2lkICIoSXQgbGVmdCBhIGNvcmVkdW1wLilcbiIKKyN+IG1zZ3N0ciAiKEhhIGRlaXhhdCB1biBib2xjYXQgZGUgbWVtw7JyaWEuKVxuIgorCisjfiBtc2dpZCAiZmFpbGVkIHdpdGggYW4gdW5rbm93biB3YWl0IHJldHVybiBjb2RlICVkLlxuIgorI34gbXNnc3RyICJoYSBmYWxsYXQgcmV0b3JuYW50IHVuIGNvZGkgZCdlc3RhdCBlbiBlc3BlcmEgZGVzY29uZWd1dCAlZC5cbiIKKworI34gbXNnaWQgInVuYWJsZSB0byBydW4gJS4yNTBzIHByb2Nlc3MgYCUuMjUwcyciCisjfiBtc2dzdHIgIm5vIGVzIHBvdCBleGVjdXRhciBlbCBwcm9jw6lzICUuMjUwcyDCqyUuMjUwc8K7IgorCisjfiBtc2dpZCAiZmFpbGVkIGNvbmZpZyIKKyN+IG1zZ3N0ciAiY29uZmlndXJhY2nDsyBmYWxsaWRhIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHdhaXQgZm9yICUuMjUwcyIKKyN+IG1zZ3N0ciAibm8gZXMgcG90IGZlciDCq3dhaXTCuyBlbiAlLjI1MHMiCisKKyN+IG1zZ2lkICJnb3Qgd3JvbmcgY2hpbGQncyBzdGF0dXMgLSBhc2tlZCBmb3IgJWxkLCBnb3QgJWxkIgorI34gbXNnc3RyICJzJ2hhIG9idGluZ3V0IHVuIGVzdGF0IGVxdWl2b2NhdCAtIHMnZXNwZXJhdmEgJWxkLCBzJ2hhIHJlYnV0ICVsZCIKKworI34gbXNnaWQgIlJlY29tbWVuZGVkIgorI34gbXNnc3RyICJSZWNvbWFuYXQiCisKKyN+IG1zZ2lkICJDb250cmliIgorI34gbXNnc3RyICJDb250cmliIgorCisjfiBtc2dpZCAiUmVjIgorI34gbXNnc3RyICJSZWMiCisKKyN+IG1zZ2lkICJDdGIiCisjfiBtc2dzdHIgIkN0YiIKKworI34gbXNnaWQgIiIKKyN+ICJiYXNlbGlzdDo6c3RhcnRkaXNwbGF5KCkgZG9uZSAuLi5cbiIKKyN+ICJcbiIKKyN+ICIgeG1heD0lZCwgeW1heD0lZDtcbiIKKyN+ICJcbiIKKyN+ICIgdGl0bGVfaGVpZ2h0PSVkLCBjb2xoZWFkc19oZWlnaHQ9JWQsIGxpc3RfaGVpZ2h0PSVkO1xuIgorI34gIiB0aGlzc3RhdGVfaGVpZ2h0PSVkLCBpbmZvX2hlaWdodD0lZCwgd2hhdGluZm9faGVpZ2h0PSVkO1xuIgorI34gIlxuIgorI34gIiBjb2xoZWFkc19yb3c9JWQsIHRoaXNzdGF0ZV9yb3c9JWQsIGluZm9fcm93PSVkO1xuIgorI34gIiB3aGF0aW5mb19yb3c9JWQsIGxpc3Rfcm93PSVkO1xuIgorI34gIlxuIgorI34gbXNnc3RyICIiCisjfiAiYmFzZWxpc3Q6OnN0YXJ0ZGlzcGxheSgpIGZpbmFsaXR6YXQg4oCmXG4iCisjfiAiXG4iCisjfiAiIHhtYXg9JWQsIHltYXg9JWQ7XG4iCisjfiAiXG4iCisjfiAiIHRpdGxlX2hlaWdodD0lZCwgY29saGVhZHNfaGVpZ2h0PSVkLCBsaXN0X2hlaWdodD0lZDtcbiIKKyN+ICIgdGhpc3N0YXRlX2hlaWdodD0lZCwgaW5mb19oZWlnaHQ9JWQsIHdoYXRpbmZvX2hlaWdodD0lZDtcbiIKKyN+ICJcbiIKKyN+ICIgY29saGVhZHNfcm93PSVkLCB0aGlzc3RhdGVfcm93PSVkLCBpbmZvX3Jvdz0lZDtcbiIKKyN+ICIgd2hhdGluZm9fcm93PSVkLCBsaXN0X3Jvdz0lZDtcbiIKKyN+ICJcbiIKKworI34gbXNnaWQgIltub25lXSIKKyN+IG1zZ3N0ciAiW2NhcF0iCisKKyN+IG1zZ2lkICJlcnJvciB1bi1jYXRjaGluZyBzaWduYWwgJWQ6ICVzXG4iCisjfiBtc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gZGVzYXNzaWduYXIgZWwgc2VueWFsICVkOiAlc1xuIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGlnbm9yZSBzaWduYWwgJWQgYmVmb3JlIHJ1bm5pbmcgJS4yNTBzIgorI34gbXNnc3RyICJubyBlcyBwb3QgaWdub3JhciBlbCBzZW55YWwgJWQgYWJhbnMgZCdleGVjdXRhciAlLjI1MHMiCisKKyN+IG1zZ2lkICIobm8gY2xpZW50ZGF0YSkiCisjfiBtc2dzdHIgIihubyBoaSBoYSBkYWRlcyBkZWwgY2xpZW50KSIKKworI34gbXNnaWQgIjxudWxsPiIKKyN+IG1zZ3N0ciAiPG51bD4iCisKKyN+IG1zZ2lkICJpbnRlcnJlbGF0aW9uc2hpcHMgYWZmZWN0aW5nICIKKyN+IG1zZ3N0ciAiaW50ZXJyZWxhY2lvbnMgcXVlIGFmZWN0ZW4gIgorCisjfiBtc2dpZCAiZGVzY3JpcHRpb24gb2YgIgorI34gbXNnc3RyICJkZXNjcmlwY2nDsyBkZSAiCisKKyN+IG1zZ2lkICJkZXNjcmlwdGlvbiIKKyN+IG1zZ3N0ciAiZGVzY3JpcGNpw7MiCisKKyN+IG1zZ2lkICJjdXJyZW50bHkgaW5zdGFsbGVkIGNvbnRyb2wgaW5mbyIKKyN+IG1zZ3N0ciAiaW5mby4gZGUgY29udHJvbCBhY3R1YWxtZW50IGluc3RhxYBsYWRhIgorCisjfiBtc2dpZCAiYXZhaWxhYmxlIHZlcnNpb24gb2YgY29udHJvbCBpbmZvIGZvciAiCisjfiBtc2dzdHIgImluZm8uIGRlIGNvbnRyb2wgZGUgbGEgdmVyc2nDsyBkaXNwb25pYmxlIGRlICIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9jcy5nbW8gYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vY3MuZ21vCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjY4YWMxODAKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vY3MuZ21vCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9jcy5wbyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9jcy5wbwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40YWRmMTdiCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL2NzLnBvCkBAIC0wLDAgKzEsMTcxNCBAQAorIyBDemVjaCB0cmFuc2xhdGlvbiBmb3IgZHBrZy4KKyMKKyMgUGV0ciBDZWNoIDxjZWNoQGRlYmlhbi5vcmc+LCAxOTk5LCAyMDAwLCAyMDAxLgorIyBNaXJvc2xhdiBLdXJlIDxrdXJlbUBkZWJpYW4uY3o+LCAyMDA0LCAyMDA1LCAyMDA2LCAyMDA3LCAyMDA4LCAyMDA5LgorIworIyBUaGFua3MgZ28gdG86CisjIE1pbGFuIFphbWF6YWwgPHBkbUBkZWJpYW4ub3JnPgorIyBWbGFkaW1pciBNaWNobCA8VmxhZGltaXIuTWljaGxAc2V6bmFtLmN6PgorbXNnaWQgIiIKK21zZ3N0ciAiIgorIlByb2plY3QtSWQtVmVyc2lvbjogZHBrZ1xuIgorIlJlcG9ydC1Nc2dpZC1CdWdzLVRvOiBkZWJpYW4tZHBrZ0BsaXN0cy5kZWJpYW4ub3JnXG4iCisiUE9ULUNyZWF0aW9uLURhdGU6IDIwMTEtMTAtMTQgMDc6MTErMDIwMFxuIgorIlBPLVJldmlzaW9uLURhdGU6IDIwMDktMDktMTEgMjA6MzUrMDIwMFxuIgorIkxhc3QtVHJhbnNsYXRvcjogTWlyb3NsYXYgS3VyZSA8a3VyZW1AZGViaWFuLmN6PlxuIgorIkxhbmd1YWdlLVRlYW06IEN6ZWNoIDxkZWJpYW4tbDEwbi1jemVjaEBsaXN0cy5kZWJpYW4ub3JnPlxuIgorIkxhbmd1YWdlOiBjc1xuIgorIk1JTUUtVmVyc2lvbjogMS4wXG4iCisiQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PVVURi04XG4iCisiQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdFxuIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjEyNQorbXNnaWQgIlNlYXJjaCBmb3IgPyAiCittc2dzdHIgIkhsZWRlaiDFmWV0xJt6ZWM6ICIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxNDcKK21zZ2lkICJFcnJvcjogIgorbXNnc3RyICJDaHliYTogIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE3OAorbXNnaWQgIkhlbHA6ICIKK21zZ3N0ciAiTsOhcG92xJtkYTogIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE4NAorbXNnaWQgIlByZXNzID8gZm9yIGhlbHAgbWVudSwgLiBmb3IgbmV4dCB0b3BpYywgPHNwYWNlPiB0byBleGl0IGhlbHAuIgorbXNnc3RyICJQcm8gbsOhcG92xJtkdSBzdGlza27Em3RlID8sIHBybyBkYWzFocOtIHTDqW1hIC4gYSBwcm8ga29uZWMgPG1lemVydT4uIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE5MQorbXNnaWQgIkhlbHAgaW5mb3JtYXRpb24gaXMgYXZhaWxhYmxlIHVuZGVyIHRoZSBmb2xsb3dpbmcgdG9waWNzOiIKK21zZ3N0ciAiTsOhcG92xJtkYSBqZSBkb3N0dXBuw6EgcHJvIG7DoXNsZWR1asOtY8OtIHTDqW1hdGE6IgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE5OQorbXNnaWQgIiIKKyJQcmVzcyBhIGtleSBmcm9tIHRoZSBsaXN0IGFib3ZlLCA8c3BhY2U+IG9yIGBxJyB0byBleGl0IGhlbHAsXG4iCisiICBvciBgLicgKGZ1bGwgc3RvcCkgdG8gcmVhZCBlYWNoIGhlbHAgcGFnZSBpbiB0dXJuLiAiCittc2dzdHIgIiIKKyJTdGlza27Em3RlIGtsw6F2ZXN1IHplIHNlem5hbXUgdsO9xaFlLCA8bWV6ZXJ1PiBuZWJvIGBxJyBwcm8gb3B1xaF0xJtuw61cbiIKKyIgIG7DoXBvdsSbZHkgbmVibyB0ZcSNa3UgcHJvIHBvc3R1cG7DqSDEjXRlbsOtIHbFoWVjaCBzdHLDoW5layBuw6Fwb3bEm2R5LiAiCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MjA1Cittc2dpZCAiZXJyb3IgcmVhZGluZyBrZXlib2FyZCBpbiBoZWxwIgorbXNnc3RyICJjaHliYSBwxZlpIMSNdGVuw60ga2zDoXZlc25pY2UgdiBuw6Fwb3bEm2TEmyIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo1NworbXNnaWQgImlvY3RsKFRJT0NHV0lOU1opIGZhaWxlZCIKK21zZ3N0ciAiaW9jdGwoVElPQ0dXSU5TWikgc2VsaGFsbyIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo2MAorbXNnaWQgImRvdXBkYXRlIGluIFNJR1dJTkNIIGhhbmRsZXIgZmFpbGVkIgorbXNnc3RyICJzZWxow6Fuw60gZG91cGRhdGUgdiBvdmxhZGHEjWkgU0lHV0lOQ0giCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6NjcKK21zZ2lkICJmYWlsZWQgdG8gcmVzdG9yZSBvbGQgU0lHV0lOQ0ggc2lnYWN0IgorbXNnc3RyICJuZXBvdmVkbG8gc2Ugb2Jub3ZpdCBwxa92b2Ruw60genByYWNvdsOhbsOtIHNpZ27DoWx1IHYgU0lHV0lOQ0giCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6NjkKK21zZ2lkICJmYWlsZWQgdG8gcmVzdG9yZSBvbGQgc2lnbmFsIG1hc2siCittc2dzdHIgIm5lcG92ZWRsbyBzZSBvYm5vdml0IHDFr3ZvZG7DrSBtYXNrdSBzaWduw6Fsxa8iCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6NzkKK21zZ2lkICJmYWlsZWQgdG8gZ2V0IG9sZCBzaWduYWwgbWFzayIKK21zZ3N0ciAibmVwb3ZlZGxvIHNlIHrDrXNrYXQgcMWvdm9kbsOtIG1hc2t1IHNpZ27DoWzFryIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo4MAorbXNnaWQgImZhaWxlZCB0byBnZXQgb2xkIFNJR1dJTkNIIHNpZ2FjdCIKK21zZ3N0ciAibmVwb3ZlZGxvIHNlIHrDrXNrYXQgcMWvdm9kbsOtIG5hc3RhdmVuw60genByYWNvdsOhbsOtIHNpZ27DoWx1IHYgU0lHV0lOQ0giCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6ODQKK21zZ2lkICJmYWlsZWQgdG8gYmxvY2sgU0lHV0lOQ0giCittc2dzdHIgIm5lcG92ZWRsbyBzZSB6YWJsb2tvdmF0IFNJR1dJTkNIIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjg5Cittc2dpZCAiZmFpbGVkIHRvIHNldCBuZXcgU0lHV0lOQ0ggc2lnYWN0IgorbXNnc3RyICJuZXBvdmVkbG8gc2UgbmFzdGF2aXQgbm92w6kgenByYWNvdsOhbsOtIHNpZ27DoWx1IHYgU0lHV0lOQ0giCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTI2Cittc2dpZCAiZmFpbGVkIHRvIGFsbG9jYXRlIGNvbG91ciBwYWlyIgorbXNnc3RyICJuZXBvdmVkbG8gc2UgYWxva292YXQgcMOhciBiYXJldiIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxNjcKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHRpdGxlIHdpbmRvdyIKK21zZ3N0ciAibmVwb3ZlZGxvIHNlIHZ5dHZvxZlpdCB0aXR1bG7DrSBva25vIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE3MQorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgd2hhdGluZm8gd2luZG93IgorbXNnc3RyICJuZXBvdmVkbG8gc2Ugdnl0dm/FmWl0IGluZm9ybWHEjW7DrSBva25vIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE3NQorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgYmFzZWxpc3QgcGFkIgorbXNnc3RyICJuZXBvdmVkbG8gc2Ugdnl0dm/FmWl0IG9rbm8gesOha2xhZG7DrWhvIHNlem5hbXUiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTc4Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBoZWFkaW5nIHBhZCIKK21zZ3N0ciAibmVwb3ZlZGxvIHNlIHZ5dHZvxZlpdCBobGF2acSNa292w6kgb2tubyIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxODIKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHRoaXNzdGF0ZSBwYWQiCittc2dzdHIgIm5lcG9kYcWZaWxvIHNlIHZ5dHZvxZlpdCBzdGF2b3bDqSBva25vIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE4NgorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgaW5mbyBwYWQiCittc2dzdHIgIm5lcG9kYcWZaWxvIHNlIHZ5dHZvxZlpdCBpbmZvcm1hxI1uw60gb2tubyIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxOTEKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHF1ZXJ5IHdpbmRvdyIKK21zZ3N0ciAibmVwb2RhxZlpbG8gc2Ugdnl0dm/FmWl0IGRvdGF6b3ZhY8OtIG9rbm8iCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MjU1Cittc2dpZCAiS2V5YmluZGluZ3MiCittc2dzdHIgIkZ1bmtjZSBrbMOhdmVzIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjMwMworIywgYy1mb3JtYXQKK21zZ2lkICIgIC0tICVkJSUsIHByZXNzICIKK21zZ3N0ciAiICAtLSAlZCUlLCBzdGlza27Em3RlICIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzozMDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgZm9yIG1vcmUiCittc2dzdHIgIiVzIHBybyB6b2JyYXplbsOtIGRhbMWhw60gaW5mb3JtYWNlIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjMxMAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyB0byBnbyBiYWNrIgorbXNnc3RyICIlcyBwcm8gbsOhdnJhdCB6cMSbdCIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzo3OAorbXNnaWQgIltub3QgYm91bmRdIgorbXNnc3RyICJbbmVwxZlpxZlhemVub10iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiW3VuazogJWRdIgorbXNnc3RyICJbdW5rOiAlZF0iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTM5Cittc2dpZCAiU2Nyb2xsIG9ud2FyZHMgdGhyb3VnaCBoZWxwL2luZm9ybWF0aW9uIgorbXNnc3RyICJSb2xvdsOhbsOtIG7DoXBvdsSbZG91L2luZm9ybWFjZW1pIHZwxZllZCIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDAKK21zZ2lkICJTY3JvbGwgYmFja3dhcmRzIHRocm91Z2ggaGVscC9pbmZvcm1hdGlvbiIKK21zZ3N0ciAiUm9sb3bDoW7DrSBuw6Fwb3bEm2RvdS9pbmZvcm1hY2VtaSB6cMSbdCIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDEKK21zZ2lkICJNb3ZlIHVwIgorbXNnc3RyICJQb3N1biBuYWhvcnUiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQyCittc2dpZCAiTW92ZSBkb3duIgorbXNnc3RyICJQb3N1biBkb2zFryIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDMKK21zZ2lkICJHbyB0byB0b3Agb2YgbGlzdCIKK21zZ3N0ciAiTmEgemHEjcOhdGVrIHNlem5hbXUiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ0Cittc2dpZCAiR28gdG8gZW5kIG9mIGxpc3QiCittc2dzdHIgIk5hIGtvbmVjIHNlem5hbXUiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ1Cittc2dpZCAiUmVxdWVzdCBoZWxwIChjeWNsZSB0aHJvdWdoIGhlbHAgc2NyZWVucykiCittc2dzdHIgIlZ5xb7DoWTDoW7DrSBzaSBuw6Fwb3bEm2R5IChjeWtsw60gcG8gb2JyYXpvdmvDoWNoIG7DoXBvdsSbZHkpIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0NgorbXNnaWQgIkN5Y2xlIHRocm91Z2ggaW5mb3JtYXRpb24gZGlzcGxheXMiCittc2dzdHIgIkN5a2zDrSBwbyBvYnJhem92a8OhY2ggcyBpbmZvcm1hY2VtaSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDcKK21zZ2lkICJSZWRyYXcgZGlzcGxheSIKK21zZ3N0ciAiUMWZZWtyZXNsZW7DrSBvYnJhem92a3kiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ4Cittc2dpZCAiU2Nyb2xsIG9ud2FyZHMgdGhyb3VnaCBsaXN0IGJ5IDEgbGluZSIKK21zZ3N0ciAiUG9zdW4gdiBzZXpuYW11IG8gMSDFmcOhZGVrIHZwxZllZCIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDkKK21zZ2lkICJTY3JvbGwgYmFja3dhcmRzIHRocm91Z2ggbGlzdCBieSAxIGxpbmUiCittc2dzdHIgIlBvc3VuIHYgc2V6bmFtdSBvIDEgxZnDoWRlayB6cMSbdCIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTAKK21zZ2lkICJTY3JvbGwgb253YXJkcyB0aHJvdWdoIGhlbHAvaW5mb3JtYXRpb24gYnkgMSBsaW5lIgorbXNnc3RyICJQb3N1biB2IG7DoXBvdsSbZMSbL2luZm9ybWFjw61jaCBvIDEgxZnDoWRlayB2cMWZZWQiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTUxCittc2dpZCAiU2Nyb2xsIGJhY2t3YXJkcyB0aHJvdWdoIGhlbHAvaW5mb3JtYXRpb24gYnkgMSBsaW5lIgorbXNnc3RyICJQb3N1biB2IG7DoXBvdsSbZMSbL2luZm9ybWFjw61jaCBvIDEgenDEm3QiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTUyCittc2dpZCAiU2Nyb2xsIG9ud2FyZHMgdGhyb3VnaCBsaXN0IgorbXNnc3RyICJQb3N1biB2IHNlem5hbXUgdnDFmWVkIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1MworbXNnaWQgIlNjcm9sbCBiYWNrd2FyZHMgdGhyb3VnaCBsaXN0IgorbXNnc3RyICJQb3N1biB2IHNlem5hbXUgenDEm3QiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTU2Cittc2dpZCAiTWFyayBwYWNrYWdlKHMpIGZvciBpbnN0YWxsYXRpb24iCittc2dzdHIgIk96bmHEjWVuw60gYmFsw61rdSjFrykgcHJvIGluc3RhbGFjaSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTcKK21zZ2lkICJNYXJrIHBhY2thZ2UocykgZm9yIGRlaW5zdGFsbGF0aW9uIgorbXNnc3RyICJPem5hxI1lbsOtIGJhbMOta3Uoxa8pIHBybyBvZGluc3RhbGFjaSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTgKK21zZ2lkICJNYXJrIHBhY2thZ2UocykgZm9yIGRlaW5zdGFsbCBhbmQgcHVyZ2UiCittc2dzdHIgIk96bmHEjWVuw60gYmFsw61rdSjFrykgcHJvIG9kaW5zdGFsYWNpIGEgdnnEjWnFoXTEm27DrSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTkKK21zZ2lkICJNYWtlIGhpZ2hsaWdodCBtb3JlIHNwZWNpZmljIgorbXNnc3RyICJVxI1pbsOtIHp2w71yYXpuxJtuw60gdsOtY2Ugc3BlY2lmaWNrw71tIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2MAorbXNnaWQgIk1ha2UgaGlnaGxpZ2h0IGxlc3Mgc3BlY2lmaWMiCittc2dzdHIgIlXEjWluw60genbDvXJhem7Em27DrSBtw6luxJsgc3BlY2lmaWNrw71tIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2MQorbXNnaWQgIlNlYXJjaCBmb3IgYSBwYWNrYWdlIHdob3NlIG5hbWUgY29udGFpbnMgYSBzdHJpbmciCittc2dzdHIgIkhsZWTDoW7DrSBiYWzDrWt1LCBqZWhvxb4gam3DqW5vIG9ic2FodWplIGRhbsO9IMWZZXTEm3plYyIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjIKK21zZ2lkICJSZXBlYXQgbGFzdCBzZWFyY2guIgorbXNnc3RyICJab3Bha292w6Fuw60gcG9zbGVkbsOtaG8gaGxlZMOhbsOtIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2MworbXNnaWQgIlN3YXAgc29ydCBvcmRlciBwcmlvcml0eS9zZWN0aW9uIgorbXNnc3RyICJabcSbbmEgdMWZw61kxJtuw60gcG9kbGUgcHJpb3JpdHkvc2VrY2UiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY0Cittc2dpZCAiUXVpdCwgY29uZmlybWluZywgYW5kIGNoZWNraW5nIGRlcGVuZGVuY2llcyIKK21zZ3N0ciAiVWtvbsSNZW7DrSwgcG90dnJ6ZW7DrSBhIGtvbnRyb2xhIHrDoXZpc2xvc3TDrSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjUKK21zZ2lkICJRdWl0LCBjb25maXJtaW5nIHdpdGhvdXQgY2hlY2siCittc2dzdHIgIlVrb27EjWVuw60gYSBwb3R2cnplbsOtIGJleiBrb250cm9seSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjYKK21zZ2lkICJRdWl0LCByZWplY3RpbmcgY29uZmxpY3QvZGVwZW5kZW5jeSBzdWdnZXN0aW9ucyIKK21zZ3N0ciAiVWtvbsSNZW7DrSwgemFtw610bnV0w60gbsOhdnJoxa8gxZllxaFlbsOtIGtvbmZsaWt0xa8vesOhdmlzbG9zdMOtIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2NworbXNnaWQgIkFib3J0IC0gcXVpdCB3aXRob3V0IG1ha2luZyBjaGFuZ2VzIgorbXNnc3RyICJWeXNrb8SNZW7DrSAtIHVrb27EjWVuw60gYmV6IHByb3ZlZGVuw60gem3Em24iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY4Cittc2dpZCAiUmV2ZXJ0IHRvIG9sZCBzdGF0ZSBmb3IgYWxsIHBhY2thZ2VzIgorbXNnc3RyICJOw6F2cmF0IHDFr3ZvZG7DrWhvIHN0YXZ1IHBybyB2xaFlY2hueSBiYWzDrWt5IgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2OQorbXNnaWQgIlJldmVydCB0byBzdWdnZXN0ZWQgc3RhdGUgZm9yIGFsbCBwYWNrYWdlcyIKK21zZ3N0ciAiTsOhdnJhdCBuYXZyaG92YW7DqWhvIHN0YXZ1IHBybyB2xaFlY2hueSBiYWzDrWt5IgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE3MAorbXNnaWQgIlJldmVydCB0byBkaXJlY3RseSByZXF1ZXN0ZWQgc3RhdGUgZm9yIGFsbCBwYWNrYWdlcyIKK21zZ3N0ciAiTsOhdnJhdCBkbyBwb8W+YWRvdmFuw71jaCBzdGF2xa8gcHJvIHbFoWVjaG55IGJhbMOta3kiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTcxCittc2dpZCAiUmV2ZXJ0IHRvIGN1cnJlbnRseSBpbnN0YWxsZWQgc3RhdGUgZm9yIGFsbCBwYWNrYWdlcyIKK21zZ3N0ciAiTsOhdnJhdCBkbyBha3R1w6FsbsOtaG8gaW5zdGFsb3ZhbsOpaG8gc3RhdnUgcHJvIHbFoWVjaG55IGJhbMOta3kiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTc0Cittc2dpZCAiU2VsZWN0IGN1cnJlbnRseS1oaWdobGlnaHRlZCBhY2Nlc3MgbWV0aG9kIgorbXNnc3RyICJWb2xiYSBha3R1w6FsbsSbIHZ5c3bDrWNlbsOpIHDFmcOtc3R1cG92w6kgbWV0b2R5IgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE3NQorbXNnaWQgIlF1aXQgd2l0aG91dCBjaGFuZ2luZyBzZWxlY3RlZCBhY2Nlc3MgbWV0aG9kIgorbXNnc3RyICJVa29uxI1lbsOtIGJlemUgem3Em255IHp2b2xlbsOpIHDFmcOtc3R1cG92w6kgbWV0b2R5IgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjI5Cittc2dpZCAiS2V5c3Ryb2tlcyIKK21zZ3N0ciAiRnVua2NlIGtsw6F2ZXMiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MjkKK21zZ2lkICIiCisiTW90aW9uIGtleXM6IE5leHQvUHJldmlvdXMsIFRvcC9FbmQsIFVwL0Rvd24sIEJhY2t3YXJkcy9Gb3J3YXJkczpcbiIKKyIgIGosIERvd24tYXJyb3cgICAgICAgICBrLCBVcC1hcnJvdyAgICAgICAgICAgICBtb3ZlIGhpZ2hsaWdodFxuIgorIiAgTiwgUGFnZS1kb3duLCBTcGFjZSAgIFAsIFBhZ2UtdXAsIEJhY2tzcGFjZSAgIHNjcm9sbCBsaXN0IGJ5IDEgcGFnZVxuIgorIiAgXm4gICAgICAgICAgICAgICAgICAgIF5wICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBsaXN0IGJ5IDEgbGluZVxuIgorIiAgdCwgSG9tZSAgICAgICAgICAgICAgIGUsIEVuZCAgICAgICAgICAgICAgICAgIGp1bXAgdG8gdG9wL2VuZCBvZiBsaXN0XG4iCisiICB1ICAgICAgICAgICAgICAgICAgICAgZCAgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGluZm8gYnkgMSBwYWdlXG4iCisiICBedSAgICAgICAgICAgICAgICAgICAgXmQgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGluZm8gYnkgMSBsaW5lXG4iCisiICBCLCBMZWZ0LWFycm93ICAgICAgICAgRiwgUmlnaHQtYXJyb3cgICAgICAgICAgcGFuIGRpc3BsYXkgYnkgMS8zIHNjcmVlblxuIgorIiAgXmIgICAgICAgICAgICAgICAgICAgIF5mICAgICAgICAgICAgICAgICAgICAgIHBhbiBkaXNwbGF5IGJ5IDEgY2hhcmFjdGVyXG4iCisiXG4iCisiTWFyayBwYWNrYWdlcyBmb3IgbGF0ZXIgcHJvY2Vzc2luZzpcbiIKKyIgKywgSW5zZXJ0ICBpbnN0YWxsIG9yIHVwZ3JhZGUgICAgICA9LCBIICBob2xkIGluIHByZXNlbnQgc3RhdGVcbiIKKyIgLSwgRGVsZXRlICByZW1vdmUgICAgICAgICAgICAgICAgICA6LCBHICB1bmhvbGQ6IHVwZ3JhZGUgb3IgbGVhdmUgIgorInVuaW5zdGFsbGVkXG4iCisiIF8gICAgICAgICAgcmVtb3ZlICYgcHVyZ2UgY29uZmlnXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTWlzY2VsbGFuZW91czpcbiIKKyJRdWl0LCBleGl0LCBvdmVyd3JpdGUgKG5vdGUgY2FwaXRhbHMhKTogICAgICAgPywgRjEgcmVxdWVzdCBoZWxwIChhbHNvICIKKyJIZWxwKVxuIgorIiBSZXR1cm4gIENvbmZpcm0sIHF1aXQgKGNoZWNrIGRlcGVuZGVuY2llcykgICBpLCBJICB0b2dnbGUvY3ljbGUgaW5mbyAiCisiZGlzcGxheXNcbiIKKyIgICBRICAgICBDb25maXJtLCBxdWl0IChvdmVycmlkZSBkZXAucykgICAgICAgbywgTyAgY3ljbGUgdGhyb3VnaCBzb3J0ICIKKyJvcHRpb25zXG4iCisiIFgsIEVzYyAgZVhpdCwgYWJhbmRvbmluZyBhbnkgY2hhbmdlcyBtYWRlICAgIHYsIFYgIGNoYW5nZSBzdGF0dXMgZGlzcGxheSAiCisib3B0c1xuIgorIiAgIFIgICAgIFJldmVydCB0byBzdGF0ZSBiZWZvcmUgdGhpcyBsaXN0ICAgICAgXmwgICByZWRyYXcgZGlzcGxheVxuIgorIiAgIFUgICAgIHNldCBhbGwgdG8gc1VnZ2VzdGVkIHN0YXRlICAgICAgICAgICAgIC8gICBzZWFyY2ggKFJldHVybiB0byAiCisiY2FuY2VsKVxuIgorIiAgIEQgICAgIHNldCBhbGwgdG8gRGlyZWN0bHkgcmVxdWVzdGVkIHN0YXRlICBuLCBcXCAgcmVwZWF0IGxhc3Qgc2VhcmNoXG4iCittc2dzdHIgIiIKKyJQb3N1bnk6IE7DoXNsZWR1asOtY8OtL1DFmWVkY2hvesOtLCBaYcSNw6F0ZWsvS29uZWMsIE5haG9ydS9Eb2zFrywgVnphZC9WcMWZZWQ6XG4iCisiICBqLCDFoWlwa2EgZG9sxa8gICAgICAgICBrLCDFoWlwa2EgbmFob3J1ICAgICAgICAgcG9zdW4genbDvXJhem7Em27DrVxuIgorIiAgTiwgUGFnZS1kb3duLCBTcGFjZSAgIFAsIFBhZ2UtdXAsIEJhY2tzcGFjZSAgIHBvc3VuIHNlem5hbXUgbyAxIHN0csOhbmt1XG4iCisiICBebiAgICAgICAgICAgICAgICAgICAgXnAgICAgICAgICAgICAgICAgICAgICAgcG9zdW4gc2V6bmFtdSBvIDEgxZnDoWRla1xuIgorIiAgdCwgSG9tZSAgICAgICAgICAgICAgIGUsIEVuZCAgICAgICAgICAgICAgICAgIHNrb2sgbmEgemHEjcOhdGVrL2tvbmVjICIKKyJzZXpuYW11XG4iCisiICB1ICAgICAgICAgICAgICAgICAgICAgZCAgICAgICAgICAgICAgICAgICAgICAgcG9zdW4gaW5mb3JtYWPDrSBvIDEgc3Ryw6Fua3VcbiIKKyIgIF51ICAgICAgICAgICAgICAgICAgICBeZCAgICAgICAgICAgICAgICAgICAgICBwb3N1biBpbmZvcm1hY8OtIG8gMSDFmcOhZGVrXG4iCisiICBCLCDFoWlwa2EgZG9sZXZhICAgICAgIEYsIMWhaXBrYSBkb3ByYXZhICAgICAgICBwb3N1biBob3Jpei4gbyAxLzMgIgorIm9icmF6b3ZreVxuIgorIiAgXmIgICAgICAgICAgICAgICAgICAgIF5mICAgICAgICAgICAgICAgICAgICAgIHBvc3VuIGhvcml6b250w6FsbsOtIG8gMSB6bmFrXG4iCisiXG4iCisiT3puYcSNZW7DrSBiYWzDrWvFryBwcm8gcG96ZMSbasWhw60genByYWNvdsOhbsOtOlxuIgorIiArLCBJbnNlcnQgIGluc3RhbGFjZSBuZWJvIGFrdHVhbGl6YWNlID0sIEggIHBvZHLFvmVuw60gdiBha3R1w6FsbsOtbSBzdGF2dVxuIgorIiAtLCBEZWxldGUgIG9kaW5zdGFsYWNlICAgICAgICAgICAgICAgIDosIEcgIHB1xaF0xJtuw606IGFrdHVhbC4gbi4gbmVjaMOhICIKKyJuZWluc3QuXG4iCisiIF8gICAgICAgICAgb2RpbnN0YWxhY2UgYSBtYXrDoW7DrSBrb25maWd1cmFjZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFLFr3puw6k6XG4iCisiVWtvbsSNZW7DrSwgcHJvdmVkZW7DrSB6bcSbbiAodmVsaWtvc3QgcMOtc21lbiEpOiAgPywgRjEgbsOhcG92xJtkYSAodGFrw6kgYEhlbHAnKVxuIgorIiBSZXR1cm4gIHBvdHZyemVuw60sIHVrb27EjWVuw60gKHByb3bEm8WZLiB6w6F2aXMuKSBpLCBJICBwxZllcG5lL2N5a2zDrSBpbmZvcm1hY2VcbiIKKyIgICBRICAgICBwb3R2cnplbsOtLCB1a29uxI1lbsOtIChpZ24uIHrDoXZpcy4pICAgIG8sIE8gIGN5a2zDrSBkcnVoeSDFmWF6ZW7DrVxuIgorIiBYLCBFc2MgIHZ5c2tvxI1lbsOtLCB6YXBvbWVudXTDrSBwcm92ZWQuIHptxJtuICAgdiwgViAgem3Em25hIHpvYnJhemVuw60gc3RhdnVcbiIKKyIgICBSICAgICBuw6F2cmF0IGRvIHDFr3ZvZG7DrWhvIHN0YXZ1ICAgICAgICAgICAgIF5sICAgcMWZZWtyZXNsw60gb2JyYXpvdmt1XG4iCisiICAgVSAgICAgbmFzdGF2ZW7DrSB2xaFlaG8gbmF2csW+ZW7DqWhvIHN0YXZ1ICAgICAgIC8gICBobGVkw6EgKFJldHVybiB6cnXFocOtKVxuIgorIiAgIEQgICAgIG5hc3RhdmVuw60gdsWhZWhvIMW+w6FkYW7DqWhvIHN0YXZ1ICAgICAgIG4sIFxcICBvcGFrdWplIHBvc2xlZG7DrSAiCisiaGxlZMOhbsOtXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6NTUKK21zZ2lkICJJbnRyb2R1Y3Rpb24gdG8gcGFja2FnZSBzZWxlY3Rpb25zIgorbXNnc3RyICLDmnZvZCBkbyBwcsOhY2Ugc2Ugc2V6bmFtZW0gYmFsw61rxa8iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6NTUKK21zZ2lkICIiCisiV2VsY29tZSB0byBkc2VsZWN0J3MgbWFpbiBwYWNrYWdlIGxpc3RpbmcuXG4iCisiXG4iCisiWW91IHdpbGwgYmUgcHJlc2VudGVkIHdpdGggYSBsaXN0IG9mIHBhY2thZ2VzIHdoaWNoIGFyZSBpbnN0YWxsZWQgb3IgIgorImF2YWlsYWJsZVxuIgorImZvciBpbnN0YWxsYXRpb24uICBZb3UgY2FuIG5hdmlnYXRlIGFyb3VuZCB0aGUgbGlzdCB1c2luZyB0aGUgY3Vyc29yIGtleXMsXG4iCisibWFyayBwYWNrYWdlcyBmb3IgaW5zdGFsbGF0aW9uICh1c2luZyBgKycpIG9yIGRlaW5zdGFsbGF0aW9uICh1c2luZyBgLScpLlxuIgorIlBhY2thZ2VzIGNhbiBiZSBtYXJrZWQgZWl0aGVyIHNpbmdseSBvciBpbiBncm91cHM7IGluaXRpYWxseSB5b3Ugd2lsbCBzZWUgIgorInRoYXRcbiIKKyJ0aGUgbGluZSBgQWxsIHBhY2thZ2VzJyBpcyBzZWxlY3RlZC4gIGArJywgYC0nIGFuZCBzbyBvbiB3aWxsIGFmZmVjdCBhbGwgIgorInRoZVxuIgorInBhY2thZ2VzIGRlc2NyaWJlZCBieSB0aGUgaGlnaGxpZ2h0ZWQgbGluZS5cbiIKKyJcbiIKKyJTb21lIG9mIHlvdXIgY2hvaWNlcyB3aWxsIGNhdXNlIGNvbmZsaWN0cyBvciBkZXBlbmRlbmN5IHByb2JsZW1zOyB5b3Ugd2lsbCAiCisiYmVcbiIKKyJnaXZlbiBhIHN1Yi1saXN0IG9mIHRoZSByZWxldmFudCBwYWNrYWdlcywgc28gdGhhdCB5b3UgY2FuIHNvbHZlIHRoZSAiCisicHJvYmxlbXMuXG4iCisiXG4iCisiWW91IHNob3VsZCByZWFkIHRoZSBsaXN0IG9mIGtleXMgYW5kIHRoZSBleHBsYW5hdGlvbnMgb2YgdGhlIGRpc3BsYXkuXG4iCisiTXVjaCBvbi1saW5lIGhlbHAgaXMgYXZhaWxhYmxlLCBwbGVhc2UgbWFrZSB1c2Ugb2YgaXQgLSBwcmVzcyBgPycgYXRcbiIKKyJhbnkgdGltZSBmb3IgaGVscC5cbiIKKyJcbiIKKyJXaGVuIHlvdSBoYXZlIGZpbmlzaGVkIHNlbGVjdGluZyBwYWNrYWdlcywgcHJlc3MgPGVudGVyPiB0byBjb25maXJtICIKKyJjaGFuZ2VzLFxuIgorIm9yIGBYJyB0byBxdWl0IHdpdGhvdXQgc2F2aW5nIGNoYW5nZXMuIEEgZmluYWwgY2hlY2sgb24gY29uZmxpY3RzIGFuZFxuIgorImRlcGVuZGVuY2llcyB3aWxsIGJlIGRvbmUgLSBoZXJlIHRvbyB5b3UgbWF5IHNlZSBhIHN1Ymxpc3QuXG4iCisiXG4iCisiUHJlc3MgPHNwYWNlPiB0byBsZWF2ZSBoZWxwIGFuZCBlbnRlciB0aGUgbGlzdCBub3cuXG4iCittc2dzdHIgIiIKKyJWw610ZWp0ZSB2IGhsYXZuw61tIHNlem5hbXUgYmFsw61rxa8gcHJvZ3JhbXUgZHNlbGVjdC5cbiIKKyJcbiIKKyJVdmlkw610ZSBzZXpuYW0gYmFsw61rxa8sIGt0ZXLDqSBqc291IGluc3RhbG92YW7DqSBuZWJvIGRvc3R1cG7DqSBwcm8gaW5zdGFsYWNpLlxuIgorIlYgc2V6bmFtdSBzZSBtxa/FvmV0ZSBwb2h5Ym92YXQgcG9tb2PDrSBrdXJ6b3JvdsO9Y2gga2zDoXZlcyBhIG96bmHEjW92YXQgYmFsw61reVxuIgorInBybyBpbnN0YWxhY2kgKHBvbW9jw60gYCsnKSBuZWJvIG9kaW5zdGFsYWNpIChwb21vY8OtIGAtJykuXG4iCisiXG4iCisiQmFsw61reSBtb2hvdSBiw710IG96bmHEjW92w6FueSBqZWRub3RsaXbEmyBuZWJvIHBvIHNrdXBpbsOhY2guIE5hIHphxI3DoXRrdSBqZVxuIgorInp2w71yYXpuxJtuIMWZw6FkZWsgYFbFoWVjaG55IGJhbMOta3knLiBgKycsIGAtJywgYXRkLiBwcm92ZWRvdSBwxZnDrXNsdcWhbsOpIGFrY2UgbmFcbiIKKyJiYWzDrWt5IGRhbsOpIHp2w71yYXpuxJtuw71tIMWZw6Fka2VtLlxuIgorIlxuIgorIk7Em2t0ZXLDqSB2YcWhZSB2w71ixJtyeSBtb2hvdSB6cMWvc29iaXQga29uZmxpa3R5IG5lYm8gcHJvYmzDqW0gc2UgesOhdmlzbG9zdG1pO1xuIgorImRvc3RhbmV0ZSBwb2RzZXpuYW0gb2Rwb3bDrWRhasOtY8OtY2ggYmFsw61rxa8sIHZlIGt0ZXLDqW0gbcWvxb5ldGUgcHJvYmzDqW0gIgorIm5hcHJhdml0LlxuIgorIlxuIgorIk3Em2xpIGJ5c3RlIHNpIHByb3N0dWRvdmF0IHNlem5hbSBrbMOhdmVzIGEgdsO9em5hbSByxa96bsO9Y2ggb2JyYXpvdmVrLlxuIgorIksgZGlzcG96aWNpIGplIGt2YWxpdG7DrSBuw6Fwb3bEm2RhIC0gcG91xb5panRlIGppLiBLZHlrb2xpdiBtxa/FvmV0ZSBzdGlza25vdXRcbiIKKyJrbMOhdmVzdSBgPycgYSB6w61za2F0IHBvdMWZZWJuw6kgaW5mb3JtYWNlLlxuIgorIkHFviBidWRldGUgcyB2w71ixJtyZW0gYmFsw61rxa8gc3Bva29qZW5pLCBzdGlza27Em3RlIDxlbnRlcj4gcHJvIHBvdHZyemVuw60gc3bDvWNoXG4iCisiem3Em24uIEtsw6F2ZXNvdSBgWCcgbcWvxb5ldGUgc2V6bmFtIGJhbMOta8WvIG9wdXN0aXQgYmV6IHVrbMOhZMOhbsOtIHptxJtuLiBQb3TDqSBzZVxuIgorInByb3ZlZGUgesOhdsSbcmXEjW7DoSBrb250cm9sYSBrb25mbGlrdMWvIGEgesOhdmlzbG9zdMOtIC0gcG8gbsOtIHNlIG9wxJt0IG3Fr8W+ZVxuIgorIm9iamV2aXQgcG9kc2V6bmFtLlxuIgorIlxuIgorIlBybyBvcHXFoXTEm27DrSBuw6Fwb3bEm2R5IG55bsOtIHN0aXNrbsSbdGUgPG1lemVydT4uXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6ODAKK21zZ2lkICJJbnRyb2R1Y3Rpb24gdG8gcmVhZC1vbmx5IHBhY2thZ2UgbGlzdCBicm93c2VyIgorbXNnc3RyICLDmnZvZCBkbyBwcm9obMOtxb5lxI1lIHNlem5hbXUgYmFsw61rxa8gKHDFmcOtc3R1cCBwb3V6ZSBwcm8gxI10ZW7DrSkiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6ODAKK21zZ2lkICIiCisiV2VsY29tZSB0byBkc2VsZWN0J3MgbWFpbiBwYWNrYWdlIGxpc3RpbmcuXG4iCisiXG4iCisiWW91IHdpbGwgYmUgcHJlc2VudGVkIHdpdGggYSBsaXN0IG9mIHBhY2thZ2VzIHdoaWNoIGFyZSBpbnN0YWxsZWQgb3IgIgorImF2YWlsYWJsZVxuIgorImZvciBpbnN0YWxsYXRpb24uICBTaW5jZSB5b3UgZG8gbm90IGhhdmUgdGhlIHByaXZpbGVnZSBuZWNlc3NhcnkgdG8gdXBkYXRlXG4iCisicGFja2FnZSBzdGF0ZXMsIHlvdSBhcmUgaW4gYSByZWFkLW9ubHkgbW9kZS4gIFlvdSBjYW4gbmF2aWdhdGUgYXJvdW5kIHRoZVxuIgorImxpc3QgdXNpbmcgdGhlIGN1cnNvciBrZXlzIChwbGVhc2Ugc2VlIHRoZSBgS2V5c3Ryb2tlcycgaGVscCBzY3JlZW4pLCAiCisib2JzZXJ2ZVxuIgorInRoZSBzdGF0dXMgb2YgdGhlIHBhY2thZ2VzIGFuZCByZWFkIGluZm9ybWF0aW9uIGFib3V0IHRoZW0uXG4iCisiXG4iCisiWW91IHNob3VsZCByZWFkIHRoZSBsaXN0IG9mIGtleXMgYW5kIHRoZSBleHBsYW5hdGlvbnMgb2YgdGhlIGRpc3BsYXkuXG4iCisiTXVjaCBvbi1saW5lIGhlbHAgaXMgYXZhaWxhYmxlLCBwbGVhc2UgbWFrZSB1c2Ugb2YgaXQgLSBwcmVzcyBgPycgYXRcbiIKKyJhbnkgdGltZSBmb3IgaGVscC5cbiIKKyJcbiIKKyJXaGVuIHlvdSBoYXZlIGZpbmlzaGVkIGJyb3dzaW5nLCBwcmVzcyBgUScgb3IgPGVudGVyPiB0byBxdWl0LlxuIgorIlxuIgorIlByZXNzIDxzcGFjZT4gdG8gbGVhdmUgaGVscCBhbmQgZW50ZXIgdGhlIGxpc3Qgbm93LlxuIgorbXNnc3RyICIiCisiVsOtdGVqdGUgdiBobGF2bsOtbSBzZXpuYW11IGJhbMOta8WvIGRzZWxlY3R1LlxuIgorIlxuIgorIlpvYnJhesOtIHNlIHNlem5hbSBiYWzDrWvFrywga3RlcsOpIGpzb3UgaW5zdGFsb3bDoW55IG5lYm8gZG9zdHVwbsOpIHBybyAiCisiaW5zdGFsYWNpLlxuIgorIlByb3Rvxb5lIG5lbcOhdGUgbmV6Ynl0bsOhIHByaXZpbGVnaWEgcHJvIHByb3bDoWTEm27DrSB6bcSbbiBzdGF2xa8gYmFsw61rxa8sIGJ1ZGVcbiIKKyJ2w6FtIHVtb8W+bsSbbm8gcG91emUgcHJvaGzDrcW+ZW7DrS4gViBzZXpuYW11IHNlIG3Fr8W+ZXRlIHBvaHlib3ZhdCBrdXJ6b3JvdsO9bWlcbiIKKyJrbMOhdmVzYW1pICh2aXogbsOhcG92xJtkYSBrZSBrbMOhdmVzw6FtKSwgcHJvaGzDrcW+ZXQgc2kgc3RhdiBiYWzDrWvFryBhIMSNw61zdCBzaVxuIgorImluZm9ybWFjZSBvIG5pY2guXG4iCisiXG4iCisiTcSbbGkgYnlzdGUgc2kgcMWZZcSNw61zdCBwxZllaGxlZCBrbMOhdmVzIGEgcG9waXMgb2JyYXpvdmt5LiBLIGRpc3BvemljaSBtw6F0ZVxuIgorImRvc3RhdGVrIG7DoXBvdsSbZHksIHBvdcW+w612ZWp0ZSBqaSwgcHJvc8OtbSEgTsOhcG92xJtkdSBtxa/FvmV0ZSBrZHlrb2xpdiB6bm92dVxuIgorInpvYnJheml0IHN0aXNrZW0gYD8nLlxuIgorIlByb2hsw63FvmVuw60gdWtvbsSNw610ZSBzdGlza2VtIG7Em2t0ZXLDqSB6IGtsw6F2ZXMgYFEnIG5lYm8gPGVudGVyPi5cbiIKKyJcbiIKKyJLbMOhdmVzb3UgPG1lemVyYT4gb3B1c3TDrXRlIG7DoXBvdsSbZHUgYSBkb3N0YW5ldGUgc2UgZG8gc2V6bmFtdS5cbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo5OQorbXNnaWQgIkludHJvZHVjdGlvbiB0byBjb25mbGljdC9kZXBlbmRlbmN5IHJlc29sdXRpb24gc3ViLWxpc3QiCittc2dzdHIgIiIKKyLDmnZvZCBkbyBwcsOhY2UgcyBwb2RzZXpuYW1lbSBwcm8gxZllxaFlbsOtIHByb2Jsw6ltxa8gcyBrb25mbGlrdHkgYSB6w6F2aXNsb3N0bWkiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6OTkKK21zZ2lkICIiCisiRGVwZW5kZW5jeS9jb25mbGljdCByZXNvbHV0aW9uIC0gaW50cm9kdWN0aW9uLlxuIgorIlxuIgorIk9uZSBvciBtb3JlIG9mIHlvdXIgY2hvaWNlcyBoYXZlIHJhaXNlZCBhIGNvbmZsaWN0IG9yIGRlcGVuZGVuY3kgcHJvYmxlbSAtXG4iCisic29tZSBwYWNrYWdlcyBzaG91bGQgb25seSBiZSBpbnN0YWxsZWQgaW4gY29uanVuY3Rpb24gd2l0aCBjZXJ0YWluIG90aGVycywgIgorImFuZFxuIgorInNvbWUgY29tYmluYXRpb25zIG9mIHBhY2thZ2VzIG1heSBub3QgYmUgaW5zdGFsbGVkIHRvZ2V0aGVyLlxuIgorIlxuIgorIllvdSB3aWxsIHNlZSBhIHN1Yi1saXN0IGNvbnRhaW5pbmcgdGhlIHBhY2thZ2VzIGludm9sdmVkLiAgVGhlIGJvdHRvbSBoYWxmICIKKyJvZlxuIgorInRoZSBkaXNwbGF5IHNob3dzIHJlbGV2YW50IGNvbmZsaWN0cyBhbmQgZGVwZW5kZW5jaWVzOyB1c2UgYGknIHRvIGN5Y2xlICIKKyJiZXR3ZWVuXG4iCisidGhhdCwgdGhlIHBhY2thZ2UgZGVzY3JpcHRpb25zIGFuZCB0aGUgaW50ZXJuYWwgY29udHJvbCBpbmZvcm1hdGlvbi5cbiIKKyJcbiIKKyJBIHNldCBvZiBgc3VnZ2VzdGVkJyBwYWNrYWdlcyBoYXMgYmVlbiBjYWxjdWxhdGVkLCBhbmQgdGhlIGluaXRpYWwgbWFya2luZ3MgIgorImluXG4iCisidGhpcyBzdWItbGlzdCBoYXZlIGJlZW4gc2V0IHRvIG1hdGNoIHRob3NlLCBzbyB5b3UgY2FuIGp1c3QgaGl0IFJldHVybiB0b1xuIgorImFjY2VwdCB0aGUgc3VnZ2VzdGlvbnMgaWYgeW91IHdpc2guICBZb3UgbWF5IGFib3J0IHRoZSBjaGFuZ2Uocykgd2hpY2ggIgorImNhdXNlZFxuIgorInRoZSBwcm9ibGVtKHMpLCBhbmQgZ28gYmFjayB0byB0aGUgbWFpbiBsaXN0LCBieSBwcmVzc2luZyBjYXBpdGFsIGBYJy5cbiIKKyJcbiIKKyJZb3UgY2FuIGFsc28gbW92ZSBhcm91bmQgdGhlIGxpc3QgYW5kIGNoYW5nZSB0aGUgbWFya2luZ3Mgc28gdGhhdCB0aGV5IGFyZSAiCisibW9yZVxuIgorImxpa2Ugd2hhdCB5b3Ugd2FudCwgYW5kIHlvdSBjYW4gYHJlamVjdCcgbXkgc3VnZ2VzdGlvbnMgYnkgdXNpbmcgdGhlICIKKyJjYXBpdGFsXG4iCisiYEQnIG9yIGBSJyBrZXlzIChzZWUgdGhlIGtleWJpbmRpbmdzIGhlbHAgc2NyZWVuKS4gIFlvdSBjYW4gdXNlIGNhcGl0YWwgYFEnICIKKyJ0b1xuIgorImZvcmNlIG1lIHRvIGFjY2VwdCB0aGUgc2l0dWF0aW9uIGN1cnJlbnRseSBkaXNwbGF5ZWQsIGluIGNhc2UgeW91IHdhbnQgdG9cbiIKKyJvdmVycmlkZSBhIHJlY29tbWVuZGF0aW9uIG9yIHRoaW5rIHRoYXQgdGhlIHByb2dyYW0gaXMgbWlzdGFrZW4uXG4iCisiXG4iCisiUHJlc3MgPHNwYWNlPiB0byBsZWF2ZSBoZWxwIGFuZCBlbnRlciB0aGUgc3ViLWxpc3Q7IHJlbWVtYmVyOiBwcmVzcyBgPycgZm9yICIKKyJoZWxwLlxuIgorbXNnc3RyICIiCisiw5p2b2QgZG8gxZllxaFlbsOtIHrDoXZpc2xvc3TDrSBhIGtvbmZsaWt0xa8uXG4iCisiXG4iCisiSmVkbmEgbmVibyB2w61jZSB6IHZhxaFpY2ggdm9sZWIgenDFr3NvYmlsYSBrb25mbGlrdCBuZWJvIHByb2Jsw6ltIHNlICIKKyJ6w6F2aXNsb3N0bWlcbiIKKyItIG7Em2t0ZXLDqSBiYWzDrWt5IG1vaG91IGLDvXQgaW5zdGFsb3bDoW55IHBvdXplIHNwb2x1IHPCoG7Em2t0ZXLDvW1pIGRhbMWhw61taSBhICIKKyJqaW7DqVxuIgorImJhbMOta3kgemFzZSBuYW9wYWsgbmVtb2hvdSBiw710IGluc3RhbG92w6FueSBzcG9sZcSNbsSbLlxuIgorIlxuIgorIlpvYnJhesOtIHNlIHbDoW0gcG9kc2V6bmFtIG9ic2FodWrDrWPDrSBiYWzDrWt5LCBqaWNoxb4gc2UgcHJvYmzDqW0gdMO9a8OhLiBTcG9kbsOtICIKKyLEjcOhc3RcbiIKKyJvYnJhem92a3kgdWthenVqZSBvZHBvdsOtZGFqw61jw60ga29uZmxpa3R5IGEgesOhdmlzbG9zdGk7IHBvdcW+aWp0ZSBgaScgcHJvXG4iCisiY3lrbGVuw60gbWV6aSBuaW1pLCBwb3Bpc3kgYmFsw61rxa8gYSBpbnRlcm7DrW1pIGFkbWluaXN0cmF0aXZuw61taSBpbmZvcm1hY2VtaS5cbiIKKyJcbiIKKyJKZSB1csSNZW5hIG1ub8W+aW5hIGBuYXZyxb5lbsO9Y2gnIGJhbMOta8WvIGEgcG/EjcOhdGXEjW7DrSB6bmHEjWt5IHYgcG9kc2V6bmFtdSBqc291XG4iCisibmFzdGF2ZW55IHRhaywgYWJ5IGrDrSBvZHBvdsOtZGFseSwgdGFrxb5lIG3Fr8W+ZXRlIGplZG5vZHXFoWUgdGVudG8gbsOhdnJoXG4iCisiYWtjZXB0b3ZhdCBzdGlza2VtIGtsw6F2ZXN5IEVudGVyLiBNxa/FvmV0ZSB0YWvDqSB6cnXFoWl0IHptxJtueSwga3RlcsOpIHByb2Jsw6ltXG4iCisienDFr3NvYmlseSBhIHZyw6F0aXQgc2UgZG8gaGxhdm7DrWhvIHNlem5hbXUgc3Rpc2tlbSB2ZWxrw6lobyBgWCcuXG4iCisiXG4iCisiUG8gc2V6bmFtdSBzZSBzYW1vesWZZWptxJsgbcWvxb5ldGUgcG9oeWJvdmF0IGEgem3Em25pdCB6bmHEjWt5LCBhYnkgbMOpcGVcbiIKKyJvZHBvdsOtZGFseSB2YcWhw60gcMWZZWRzdGF2xJsgYSBtxa/FvmV0ZSB6YW3DrXRub3V0IG3Fr2ogbsOhdnJoIHN0aXNrZW0gdmVsa8OpaG8gYEQnXG4iCisibmVibyBgUicgKHZpeiBuw6Fwb3bEm2RhIGtlIGtsw6F2ZXPDoW0pLiBKZXN0bGnFvmUgbmVjaGNldGUgcmVzcGVrdG92YXRcbiIKKyJkb3BvcnXEjWVuw60gbmVibyBtw6F0ZSBwb2NpdCwgxb5lIGRvcG9ydcSNZW7DrSBwcm9ncmFtdSBqZSBjaHlibsOpLCBtxa/FvmV0ZSBtxJtcbiIKKyJkb251dGl0IGFrY2VwdG92YXQgYWt0dcOhbG7EmyB6b2JyYXplbsOpIG5hc3RhdmVuw60gc3Rpc2tlbSB2ZWxrw6lobyBgUScuXG4iCisiXG4iCisiS2zDoXZlc291IDxtZXplcmE+IG9wdXN0w610ZSBuw6Fwb3bEm2R1IGEgZG9zdGFuZXRlIHNlIGRvIHBvZHNlem5hbXUuXG4iCisiTmV6YXBvbWXFiHRlOiBuw6Fwb3bEm2R1IHrDrXNrw6F0ZSBzdGlza2VtIGA/Jy5cbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxMjUKK21zZ2lkICJEaXNwbGF5LCBwYXJ0IDE6IHBhY2thZ2UgbGlzdGluZyBhbmQgc3RhdHVzIGNoYXJzIgorbXNnc3RyICJab2JyYXplbsOtLCDEjcOhc3QgMTogc2V6bmFtIGJhbMOta8WvIGEgc3Rhdm92w6kgem5ha3kiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTI1Cittc2dpZCAiIgorIlRoZSB0b3AgaGFsZiBvZiB0aGUgc2NyZWVuIHNob3dzIGEgbGlzdCBvZiBwYWNrYWdlcy4gIEZvciBlYWNoIHBhY2thZ2UgeW91ICIKKyJzZWVcbiIKKyJmb3VyIGNvbHVtbnMgZm9yIGl0cyBjdXJyZW50IHN0YXR1cyBvbiB0aGUgc3lzdGVtIGFuZCBtYXJrLiAgSW4gdGVyc2UgbW9kZSAiCisiKHVzZVxuIgorImB2JyB0byB0b2dnbGUgdmVyYm9zZSBkaXNwbGF5KSB0aGVzZSBhcmUgc2luZ2xlIGNoYXJhY3RlcnMsIGZyb20gbGVmdCB0byAiCisicmlnaHQ6XG4iCisiXG4iCisiIEVycm9yIGZsYWc6IFNwYWNlIC0gbm8gZXJyb3IgKGJ1dCBwYWNrYWdlIG1heSBiZSBpbiBicm9rZW4gc3RhdGUgLSBzZWUgIgorImJlbG93KVxuIgorIiAgICAgICAgICAgICAgYFInICAtIHNlcmlvdXMgZXJyb3IgZHVyaW5nIGluc3RhbGxhdGlvbiwgbmVlZHMgIgorInJlaW5zdGFsbGF0aW9uO1xuIgorIiBJbnN0YWxsZWQgc3RhdGU6ICAgICBTcGFjZSAgICAtIG5vdCBpbnN0YWxsZWQ7XG4iCisiICAgICAgICAgICAgICAgICAgICAgICBgKicgICAgIC0gaW5zdGFsbGVkO1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgYC0nICAgICAtIG5vdCBpbnN0YWxsZWQgYnV0IGNvbmZpZyBmaWxlcyByZW1haW47XG4iCisiICAgcGFja2FnZXMgaW4gdGhlc2UgeyBgVScgICAgIC0gdW5wYWNrZWQgYnV0IG5vdCB5ZXQgY29uZmlndXJlZDtcbiIKKyIgICBzdGF0ZXMgYXJlIG5vdCAgICB7IGBDJyAgICAgLSBoYWxmLWNvbmZpZ3VyZWQgKGFuIGVycm9yIGhhcHBlbmVkKTtcbiIKKyIgICAocXVpdGUpIHByb3Blcmx5ICB7IGBJJyAgICAgLSBoYWxmLWluc3RhbGxlZCAoYW4gZXJyb3IgaGFwcGVuZWQpO1xuIgorIiAgIGluc3RhbGxlZCAgICAgICAgIHsgYFcnLGB0JyAtIHRyaWdnZXJzIGFyZSBhd2FpdGVkIHJlc3AuIHBlbmRpbmcuXG4iCisiIE9sZCBtYXJrOiB3aGF0IHdhcyByZXF1ZXN0ZWQgZm9yIHRoaXMgcGFja2FnZSBiZWZvcmUgcHJlc2VudGluZyB0aGlzIGxpc3Q7XG4iCisiIE1hcms6IHdoYXQgaXMgcmVxdWVzdGVkIGZvciB0aGlzIHBhY2thZ2U6XG4iCisiICBgKic6IG1hcmtlZCBmb3IgaW5zdGFsbGF0aW9uIG9yIHVwZ3JhZGU7XG4iCisiICBgLSc6IG1hcmtlZCBmb3IgcmVtb3ZhbCwgYnV0IGFueSBjb25maWd1cmF0aW9uIGZpbGVzIHdpbGwgcmVtYWluO1xuIgorIiAgYD0nOiBvbiBob2xkOiBwYWNrYWdlIHdpbGwgbm90IGJlIHByb2Nlc3NlZCBhdCBhbGw7XG4iCisiICBgXyc6IG1hcmtlZCBmb3IgcHVyZ2UgY29tcGxldGVseSAtIGV2ZW4gcmVtb3ZlIGNvbmZpZ3VyYXRpb247XG4iCisiICBgbic6IHBhY2thZ2UgaXMgbmV3IGFuZCBoYXMgeWV0IHRvIGJlIG1hcmtlZCBmb3IgaW5zdGFsbC9yZW1vdmUvJmMuXG4iCisiXG4iCisiQWxzbyBkaXNwbGF5ZWQgYXJlIGVhY2ggcGFja2FnZSdzIFByaW9yaXR5LCBTZWN0aW9uLCBuYW1lLCBpbnN0YWxsZWQgYW5kXG4iCisiYXZhaWxhYmxlIHZlcnNpb24gbnVtYmVycyAoc2hpZnQtViB0byBkaXNwbGF5L2hpZGUpIGFuZCBzdW1tYXJ5ICIKKyJkZXNjcmlwdGlvbi5cbiIKK21zZ3N0ciAiIgorIkhvcm7DrSDEjcOhc3Qgb2JyYXpvdmt5IHpvYnJhenVqZSBzZXpuYW0gYmFsw61rxa8uIEthxb5kw70gYmFsw61rIG3DoSDEjXR5xZlpIHNsb3VwY2VcbiIKKyJzZSBzdsO9bSBzdGF2ZW0gdiBzeXN0w6ltdSBhIHpuYcSNa291LiBWZSBzdHJ1xI1uw6ltIHJlxb5pbXUgKGRvIHBvZHJvYm7DqWhvIHNlXG4iCisicMWZZXBuZXRlIHN0aXNrZW0ga2zDoXZlc3kgIGB2JykganNvdSB0byBqZWRub3RsaXbDqSB6bmFreSwgemxldmEgZG9wcmF2YTpcbiIKKyJcbiIKKyIgUMWZw616bmFrIGNoeWJ5OiBtZXplcmEgLSBiZXogY2h5YnkgKGFsZSBtxa/FvmUgYsO9dCB2IGNoeWJuw6ltIHN0YXZ1IC0gdml6ICIKKyJuw63FvmUpO1xuIgorIiAgICAgICAgICAgICAgICAgYFInICAgLSB2w6HFvm7DoSBjaHliYSBwxZlpIGluc3RhbGFjaSwgdnnFvmFkdWplIHJlaW5zdGFsYWNpO1xuIgorIiBTdGF2IGluc3RhbGFjZTogICBtZXplcmEgICAgICAtIG5lbmFpbnN0YWxvdsOhbjtcbiIKKyIgICAgICAgICAgICAgICAgICAgICBgKicgICAgICAgLSBuYWluc3RhbG92w6FuO1xuIgorIiAgICAgICAgICAgICAgICAgICAgIGAtJyAgICAgICAtIG9kaW5zdGFsb3bDoW4sIGtvbmYuIHNvdWJvcnkgemFjaG92w6FueTtcbiIKKyIgICBiYWzDrWt5IHYgdMSbY2h0byB7IGBVJyAgICAgICAtIHJvemJhbGVuLCBhbGUgamXFoXTEmyBuZXprb25maWd1cm92w6FuO1xuIgorIiAgIHN0YXZlY2ggbmVqc291ICB7IGBDJyAgICAgICAtIG5hcMWvbCB6a29uZmlndXJvdsOhbiAobmFzdGFsYSBjaHliYSk7XG4iCisiICAgKHpjZWxhKSBzcHLDoXZuxJsgeyBgSScgICAgICAgLSBuYXDFr2wgbmFpbnN0YWxvdsOhbiAobmFzdGFsYSBjaHliYSk7XG4iCisiICAgbmFpbnN0YWxvdsOhbnkgICB7IGBXJywgJ3QnICAtIHNwb3XFoXTEm8SNZSBqc291IG/EjWVrw6F2w6FueS9uZXZ5xZnDrXplbnkuXG4iCisiIFN0YXLDoSB6bmHEjWthOiBjbyBieWxvIMW+w6Fkw6FubyBwcm8gdGVudG8gYmFsw61rIHDFmWVkIHZzdHVwZW0gZG8gdG9ob3RvICIKKyJzZXpuYW11O1xuIgorIiBabmHEjWthOiBjbyBqZSDFvsOhZMOhbm8gcHJvIHRlbnRvIGJhbMOtazpcbiIKKyIgICBgKic6IG96bmHEjWVuIHBybyBpbnN0YWxhY2kgbmVibyBha3R1YWxpemFjaTtcbiIKKyIgICBgLSc6IG96bmHEjWVuIHBybyBvZGluc3RhbGFjaSwgYWxlIG5lY2jFpSB6xa9zdGFub3Uga29uZmlndXJhxI1uw60gc291Ym9yeTtcbiIKKyIgICBgPSc6IHBvZHLFvmVuOiBiYWzDrWsgbmVidWRlIHbFr2JlYyBkb3TEjWVuO1xuIgorIiAgIGBfJzogb3puYcSNZW4gcHJvIGtvbXBsZXRuw60gb2RzdHJhbsSbbsOtIC0gdsSNZXRuxJsga29uZmlndXJhY2U7XG4iCisiICAgYG4nOiBiYWzDrWsgamUgbm92w70gYSBtdXPDrSBiw710IHRlcHJ2ZSBvem5hxI1lbiBwcm8gaW5zdGFsYWNpL29kaW5zdGFsYWNpLyIKKyJhdGQuXG4iCisiXG4iCisiUHJvIGthxb5kw70gYmFsw61rIHNlIHTDqcW+IHpvYnJhenVqZSBqZWhvIHByaW9yaXRhLCBzdGF2LCBqbcOpbm8sIHN0YXYgaW5zdGFsYWNlXG4iCisiYSBkb3N0dXBuw6kgdmVyemUgKGx6ZSB6b2JyYXppdC9za3LDvXQgcG9tb2PDrSB2ZWxrw6lobyBgVicpIGEgc3RydcSNbsO9IHBvcGlzLlxuIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjE1MgorbXNnaWQgIkRpc3BsYXksIHBhcnQgMjogbGlzdCBoaWdobGlnaHQ7IGluZm9ybWF0aW9uIGRpc3BsYXkiCittc2dzdHIgIlpvYnJhemVuw60sIMSNw6FzdCAyOiB6dsO9cmF6bsSbbsOtOyBpbmZvcm1hxI1uw60gb2JyYXpvdmthIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjE1MgorbXNnaWQgIiIKKyIqIEhpZ2hsaWdodDogT25lIGxpbmUgaW4gdGhlIHBhY2thZ2UgbGlzdCB3aWxsIGJlIGhpZ2hsaWdodGVkLiAgSXQgIgorImluZGljYXRlc1xuIgorIiAgd2hpY2ggcGFja2FnZShzKSB3aWxsIGJlIGFmZmVjdGVkIGJ5IHByZXNzZXMgb2YgYCsnLCBgLScgYW5kIGBfJy5cbiIKKyJcbiIKKyIqIFRoZSBkaXZpZGluZyBsaW5lIGluIHRoZSBtaWRkbGUgb2YgdGhlIHNjcmVlbiBzaG93cyBhIGJyaWVmIGV4cGxhbmF0aW9uICIKKyJvZlxuIgorIiAgdGhlIHN0YXR1cyBvZiB0aGUgY3VycmVudGx5LWhpZ2hsaWdodGVkIHBhY2thZ2UsIG9yIGEgZGVzY3JpcHRpb24gb2YgIgorIndoaWNoXG4iCisiICBncm91cCBpcyBoaWdobGlnaHRlZCBpZiBhIGdyb3VwIGxpbmUgaXMuICBJZiB5b3UgZG9uJ3QgdW5kZXJzdGFuZCB0aGVcbiIKKyIgIG1lYW5pbmcgb2Ygc29tZSBvZiB0aGUgc3RhdHVzIGNoYXJhY3RlcnMgZGlzcGxheWVkLCBnbyB0byB0aGUgcmVsZXZhbnRcbiIKKyIgIHBhY2thZ2UgYW5kIGxvb2sgYXQgdGhpcyBkaXZpZGVyIGxpbmUsIG9yIHVzZSB0aGUgYHYnIGtleSBmb3IgYSB2ZXJib3NlXG4iCisiICBkaXNwbGF5IChwcmVzcyBgdicgYWdhaW4gdG8gZ28gYmFjayB0byB0aGUgdGVyc2UgZGlzcGxheSkuXG4iCisiXG4iCisiKiBUaGUgYm90dG9tIG9mIHRoZSBzY3JlZW4gc2hvd3MgbW9yZSBpbmZvcm1hdGlvbiBhYm91dCB0aGVcbiIKKyIgIGN1cnJlbnRseS1oaWdobGlnaHRlZCBwYWNrYWdlIChpZiB0aGVyZSBpcyBvbmx5IG9uZSkuXG4iCisiXG4iCisiICBJdCBjYW4gc2hvdyBhbiBleHRlbmRlZCBkZXNjcmlwdGlvbiBvZiB0aGUgcGFja2FnZSwgdGhlIGludGVybmFsIHBhY2thZ2VcbiIKKyIgIGNvbnRyb2wgZGV0YWlscyAoZWl0aGVyIGZvciB0aGUgaW5zdGFsbGVkIG9yIGF2YWlsYWJsZSB2ZXJzaW9uIG9mIHRoZVxuIgorIiAgcGFja2FnZSksIG9yIGluZm9ybWF0aW9uIGFib3V0IGNvbmZsaWN0cyBhbmQgZGVwZW5kZW5jaWVzIGludm9sdmluZyB0aGVcbiIKKyIgIGN1cnJlbnQgcGFja2FnZSAoaW4gY29uZmxpY3QvZGVwZW5kZW5jeSByZXNvbHV0aW9uIHN1Ymxpc3RzKS5cbiIKKyJcbiIKKyIgIFVzZSB0aGUgYGknIGtleSB0byBjeWNsZSB0aHJvdWdoIHRoZSBkaXNwbGF5cywgYW5kIGBJJyB0byBoaWRlIHRoZVxuIgorIiAgaW5mb3JtYXRpb24gZGlzcGxheSBvciBleHBhbmQgaXQgdG8gdXNlIGFsbW9zdCBhbGwgb2YgdGhlIHNjcmVlbi5cbiIKK21zZ3N0ciAiIgorIiogWnbDvXJhem7Em27DrTogSmVkZW4gxZnDoWRlayB2IHNlem5hbXUgYmFsw61rxa8gamUgenbDvXJhem7Em24uIFRlbiB1csSNdWplLCBrdGVyw71cbiIKKyIgIGJhbMOtayAoYmFsw61reSkgYnVkZSBvdmxpdm7Em24gc3Rpc2tlbSBgKycsIGAtJyBuZWJvIGBfJy5cbiIKKyJcbiIKKyIqIE9kZMSbbHVqw61jw60gxZnDoWRlayB1cHJvc3TFmWVkIG9icmF6b3ZreSBzdHJ1xI1uxJsgem9icmF6dWplIHN0YXYgYWt0dcOhbG7Em1xuIgorIiAgenbDvXJhem7Em27DqWhvIGJhbMOta3UgbmVibyBwb3BpcyB6dsO9cmF6bsSbbsOpIHNrdXBpbnkuIEplc3RsacW+ZSBuZXJvenVtw610ZVxuIgorIiAgdsO9em5hbXUgbsSba3RlcsOpaG8gemUgem9icmF6ZW7DvWNoIHpuYWvFrywgcMWZZWpkxJt0ZSBuYSBvZHBvdsOtZGFqw61jw60gYmFsw61rIGFcbiIKKyIgIGEgcG9kw612ZWp0ZSBzZSBuYSBvZGTEm2x1asOtY8OtIMWZw6FkZWsgbmVibyBwb3XFvmlqdGUga2zDoXZlc3UgYHYnIHBybyBwb2Ryb2Juw6lcbiIKKyIgIHpvYnJhemVuw60gKGRhbMWhw61tIHN0aXNrZW0gYHYnIHNlIHZyw6F0w610ZSBrZSBzdHJ1xI1uw6ltdSB6b2JyYXplbsOtKS5cbiIKKyJcbiIKKyIqIFNwb2Ruw60gxI3DoXN0IG9icmF6b3ZreSB6b2JyYXp1amUgdsOtY2UgaW5mb3JtYWPDrSBvIGFrdHXDoWxuxJsgenbDvXJhem7Em27DqW1cbiIKKyIgIGJhbMOta3UgKGplLWxpIHBvdXplIGplZGVuIHRha292w70pLlxuIgorIlxuIgorIiAgTcWvxb5lIHpvYnJhem92YXQgcG9kcm9ibsSbasWhw60gcG9waXMgYmFsw61rdSwgcG9kcm9ibm9zdGkgbyBpbnRlcm7DrW0gc3RhdnVcbiIKKyIgIGJhbMOta3UgKHBybyBpbnN0YWxvdmFub3UgbmVibyBkb3N0dXBub3UgdmVyemkgYmFsw61rdSkgbmVibyBpbmZvcm1hY2lcbiIKKyIgIG8ga29uZmxpa3RlY2ggYSB6w6F2aXNsb3N0ZWNoIG92bGl2xYh1asOtY8OtY2ggYWt0dcOhbG7DrSBiYWzDrWsgKHYgcG9kc2V6bmFtdSAiCisicHJvXG4iCisiICDFmWXFoWVuw60ga29uZmxpa3TFryBhIHrDoXZpc2xvc3TDrSkuXG4iCisiXG4iCisiICBEcnVoIHpvYnJhemVuw71jaCBpbmZvcm1hY8OtIG3Fr8W+ZXRlIGN5a2xpY2t5IG3Em25pdCBrbMOhdmVzb3UgYGknLCBrbMOhdmVzb3UgIgorImBJJ1xuIgorIiAgcGFrIG3Fr8W+ZXRlIHNjaG92YXQgbmVibyByb3p0w6Fobm91dCDEjcOhc3Qgb2JyYXpvdmt5IHMgaW5mb3JtYWNlbWkuXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTc2Cittc2dpZCAiSW50cm9kdWN0aW9uIHRvIG1ldGhvZCBzZWxlY3Rpb24gZGlzcGxheSIKK21zZ3N0ciAiw5p2b2QgZG8gdsO9YsSbcnUgcMWZw61zdHVwb3bDqSBtZXRvZHkiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTc2Cittc2dpZCAiIgorImRzZWxlY3QgYW5kIGRwa2cgY2FuIGRvIGF1dG9tYXRpYyBpbnN0YWxsYXRpb24sIGxvYWRpbmcgdGhlIHBhY2thZ2UgZmlsZXMgdG8gIgorImJlXG4iCisiaW5zdGFsbGVkIGZyb20gb25lIG9mIGEgbnVtYmVyIG9mIGRpZmZlcmVudCBwb3NzaWJsZSBwbGFjZXMuXG4iCisiXG4iCisiVGhpcyBsaXN0IGFsbG93cyB5b3UgdG8gc2VsZWN0IG9uZSBvZiB0aGVzZSBpbnN0YWxsYXRpb24gbWV0aG9kcy5cbiIKKyJcbiIKKyJNb3ZlIHRoZSBoaWdobGlnaHQgdG8gdGhlIG1ldGhvZCB5b3Ugd2lzaCB0byB1c2UsIGFuZCBoaXQgRW50ZXIuICBZb3Ugd2lsbCAiCisidGhlblxuIgorImJlIHByb21wdGVkIGZvciB0aGUgaW5mb3JtYXRpb24gcmVxdWlyZWQgdG8gZG8gdGhlIGluc3RhbGxhdGlvbi5cbiIKKyJcbiIKKyJBcyB5b3UgbW92ZSB0aGUgaGlnaGxpZ2h0IGEgZGVzY3JpcHRpb24gb2YgZWFjaCBtZXRob2QsIHdoZXJlIGF2YWlsYWJsZSwgaXNcbiIKKyJkaXNwbGF5ZWQgaW4gdGhlIGJvdHRvbSBoYWxmIG9mIHRoZSBzY3JlZW4uXG4iCisiXG4iCisiSWYgeW91IHdpc2ggdG8gcXVpdCB3aXRob3V0IGNoYW5naW5nIGFueXRoaW5nIHVzZSB0aGUgYHgnIGtleSB3aGlsZSBpbiB0aGUgIgorImxpc3RcbiIKKyJvZiBpbnN0YWxsYXRpb24gbWV0aG9kcy5cbiIKKyJcbiIKKyJBIGZ1bGwgbGlzdCBvZiBrZXlzdHJva2VzIGlzIGF2YWlsYWJsZSBieSBwcmVzc2luZyBgaycgbm93LCBvciBmcm9tIHRoZSAiCisiaGVscFxuIgorIm1lbnUgcmVhY2hhYmxlIGJ5IHByZXNzaW5nIGA/Jy5cbiIKK21zZ3N0ciAiIgorImRzZWxlY3QgYSBkcGtnIG1vaG91IHByb3bDoWTEm3QgYXV0b21hdGlja291IGluc3RhbGFjaSwgcMWZacSNZW3FviBwxZllYsOtcmFqw61cbiIKKyJzb3Vib3J5IHMgcG9waXN5IGJhbMOta8WvIHogamVkbm9obyBuZWJvIHbDrWNlIHLFr3puw71jaCBtb8W+bsO9Y2ggbcOtc3QuXG4iCisiXG4iCisiVGVudG8gc2V6bmFtIHbDoW0gdW1vxb7FiHVqZSB6dm9saXQgamVkbnUgeiBpbnN0YWxhxI1uw61jaCBtZXRvZC5cbiIKKyJcbiIKKyJQb3N1xYh0ZSB6dsO9cmF6bsSbbsOtIG5hIG1ldG9kdSwga3Rlcm91IGNoY2V0ZSBwb3XFvsOtdCBhIHN0aXNrbsSbdGUgRW50ZXIuICIKKyJCdWRldGVcbiIKKyJkb3TDoXrDoW5pIG5hIGluZm9ybWFjZSBudXRuw6kgcHJvIHByb3ZlZGVuw60gaW5zdGFsYWNlLlxuIgorIlxuIgorIlDFmWkgcG9zb3V2w6Fuw60genbDvXJhem7Em27DrSBzZSB2IGRvbG7DrSDEjcOhc3RpIG9icmF6b3ZreSB6b2JyYXp1amUsIGplLWxpXG4iCisiayBkaXNwb3ppY2ksIHBvcGlzIGthxb5kw6kgbWV0b2R5LlxuIgorIlxuIgorIkNoY2V0ZS1saSBzZXpuYW0gb3B1c3RpdCBiZXogcHJvdmVkZW7DrSBqYWvDvWNoa29saXYgem3Em24sIHN0aXNrbsSbdGUgdiAiCisic2V6bmFtdVxuIgorImluc3RhbGHEjW7DrWNoIG1ldG9kIGtsw6F2ZXN1IGB4Jy5cbiIKKyJcbiIKKyJLb21wbGV0bsOtIHNlem5hbSBmdW5rY8OtIGtsw6F2ZXMgbHplIHpvYnJheml0IGJ1xI8gaG5lZCB0ZcSPIHBvbW9jw60ga2zDoXZlc3kgIgorImBrJyxcbiIKKyJuZWJvIHogbmFiw61ka3kgbsOhcG92xJtkeSBkb3N0dXBuw6kga2zDoXZlc291IGA/Jy5cbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxOTYKK21zZ2lkICJLZXlzdHJva2VzIGZvciBtZXRob2Qgc2VsZWN0aW9uIgorbXNnc3RyICJLbMOhdmVzeSBwcm8gdm9sYnUgbWV0b2R5IgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjE5NgorbXNnaWQgIiIKKyJNb3Rpb24ga2V5czogTmV4dC9QcmV2aW91cywgVG9wL0VuZCwgVXAvRG93biwgQmFja3dhcmRzL0ZvcndhcmRzOlxuIgorIiAgaiwgRG93bi1hcnJvdyAgICAgICAgIGssIFVwLWFycm93ICAgICAgICAgICAgIG1vdmUgaGlnaGxpZ2h0XG4iCisiICBOLCBQYWdlLWRvd24sIFNwYWNlICAgUCwgUGFnZS11cCwgQmFja3NwYWNlICAgc2Nyb2xsIGxpc3QgYnkgMSBwYWdlXG4iCisiICBebiAgICAgICAgICAgICAgICAgICAgXnAgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGxpc3QgYnkgMSBsaW5lXG4iCisiICB0LCBIb21lICAgICAgICAgICAgICAgZSwgRW5kICAgICAgICAgICAgICAgICAganVtcCB0byB0b3AvZW5kIG9mIGxpc3RcbiIKKyIgIHUgICAgICAgICAgICAgICAgICAgICBkICAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyBieSAxIHBhZ2VcbiIKKyIgIF51ICAgICAgICAgICAgICAgICAgICBeZCAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyBieSAxIGxpbmVcbiIKKyIgIEIsIExlZnQtYXJyb3cgICAgICAgICBGLCBSaWdodC1hcnJvdyAgICAgICAgICBwYW4gZGlzcGxheSBieSAxLzMgc2NyZWVuXG4iCisiICBeYiAgICAgICAgICAgICAgICAgICAgXmYgICAgICAgICAgICAgICAgICAgICAgcGFuIGRpc3BsYXkgYnkgMSBjaGFyYWN0ZXJcbiIKKyIoVGhlc2UgYXJlIHRoZSBzYW1lIG1vdGlvbiBrZXlzIGFzIGluIHRoZSBwYWNrYWdlIGxpc3QgZGlzcGxheS4pXG4iCisiXG4iCisiUXVpdDpcbiIKKyIgUmV0dXJuLCBFbnRlciAgICBzZWxlY3QgdGhpcyBtZXRob2QgYW5kIGdvIHRvIGl0cyBjb25maWd1cmF0aW9uIGRpYWxvZ3VlXG4iCisiIHgsIFggICAgICAgICAgICAgZXhpdCB3aXRob3V0IGNoYW5naW5nIG9yIHNldHRpbmcgdXAgdGhlIGluc3RhbGxhdGlvbiAiCisibWV0aG9kXG4iCisiXG4iCisiTWlzY2VsbGFuZW91czpcbiIKKyIgID8sIEhlbHAsIEYxICAgICAgcmVxdWVzdCBoZWxwXG4iCisiIF5sICAgICAgICAgICAgICAgIHJlZHJhdyBkaXNwbGF5XG4iCisiICAvICAgICAgICAgICAgICAgIHNlYXJjaCAoanVzdCByZXR1cm4gdG8gY2FuY2VsKVxuIgorIiAgXFwgICAgICAgICAgICAgICAgcmVwZWF0IGxhc3Qgc2VhcmNoXG4iCittc2dzdHIgIiIKKyJQb3N1bnk6IE7DoXNsZWR1asOtY8OtL1DFmWVkY2hvesOtLCBaYcSNw6F0ZWsvS29uZWMsIE5haG9ydS9Eb2zFrywgVnphZC9WcMWZZWQ6XG4iCisiICBqLCDFoWlwa2EgZG9sxa8gICAgICAgICBrLCDFoWlwa2EgbmFob3J1ICAgICAgICAgcG9zdW4genbDvXJhem7Em27DrVxuIgorIiAgTiwgUGctZG93biwgbWV6ZXJuw61rICBQLCBQZy11cCwgQmFja3NwYWNlICAgICBwb3N1biBzZXpuYW11IG8gMSBzdHLDoW5rdVxuIgorIiAgXm4gICAgICAgICAgICAgICAgICAgIF5wICAgICAgICAgICAgICAgICAgICAgIHBvc3VuIHNlem5hbXUgbyAxIMWZw6FkZWtcbiIKKyIgIHQsIEhvbWUgICAgICAgICAgICAgICBlLCBFbmQgICAgICAgICAgICAgICAgICBza29rIG5hIHphxI3DoXRlay9rb25lYyAiCisic2V6bmFtdVxuIgorIiAgdSAgICAgICAgICAgICAgICAgICAgIGQgICAgICAgICAgICAgICAgICAgICAgIHBvc3VuIGluZm9ybWFjw60gbyAxIHN0csOhbmt1XG4iCisiICBedSAgICAgICAgICAgICAgICAgICAgXmQgICAgICAgICAgICAgICAgICAgICAgcG9zdW4gaW5mb3JtYWPDrSBvIDEgxZnDoWRla1xuIgorIiAgQiwgxaFpcGthIGRvbGV2YSAgICAgICBGLCDFoWlwa2EgZG9wcmF2YSAgICAgICAgcG9zdW4gaG9yaXouIG8gMS8zICIKKyJvYnJhem92a3lcbiIKKyIgIF5iICAgICAgICAgICAgICAgICAgICBeZiAgICAgICAgICAgICAgICAgICAgICBwb3N1biBob3Jpem9udMOhbG7DrSBvIDEgem5ha1xuIgorIihKc291IHRvIHR5IHNhbcOpIHBvc3Vub3ZhY8OtIGtsw6F2ZXN5IGpha28gdiBzZXpuYW11IGJhbMOta8WvLilcbiIKKyJcbiIKKyJVa29uxI1lbsOtOlxuIgorIiBSZXR1cm4sIEVudGVyICAgIHp2b2zDrSB0dXRvIG1ldG9kdSBhIHDFmWVqZGUgZG8gamVqw61obyBrb25maWd1cmHEjW7DrWhvICIKKyJkaWFsb2d1XG4iCisiIHgsIFggICAgICAgICAgICAgdnlza2/EjcOtIGJlemUgem3Em255IG5lYm8gbmFzdGF2ZW7DrSBpbnN0YWxhxI1uw60gbWV0b2R5XG4iCisiXG4iCisiUsWvem7DqTpcbiIKKyIgID8sIEhlbHAsIEYxICAgICAgbsOhcG92xJtkYVxuIgorIiBebCAgICAgICAgICAgICAgICBwxZlla3Jlc2zDrSBvYnJhem92a3VcbiIKKyIgIC8gICAgICAgICAgICAgICAgaGxlZMOhICh6cnXFoWVuw60gc3Rpc2tlbSBSZXR1cm4pXG4iCisiICBcXCAgICAgICAgICAgICAgICBvcGFrdWplIHBvc2xlZG7DrSBobGVkw6Fuw61cbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjYwCittc2dpZCAiVHlwZSBkc2VsZWN0IC0taGVscCBmb3IgaGVscC4iCittc2dzdHIgIlBybyB6w61za8OhbsOtIG7DoXBvdsSbZHkgbmFwacWhdGUgZHNlbGVjdCAtLWhlbHAuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQzCittc2dpZCAiYSIKK21zZ3N0ciAicCIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0MworbXNnaWQgIltBXWNjZXNzIgorbXNnc3RyICJbUF3FmcOtc3R1cCIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0MworbXNnaWQgIkNob29zZSB0aGUgYWNjZXNzIG1ldGhvZCB0byB1c2UuIgorbXNnc3RyICJWb2xiYSBwxZnDrXN0dXBvdsOpIG1ldG9keS4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDQKK21zZ2lkICJ1IgorbXNnc3RyICJhIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ0Cittc2dpZCAiW1VdcGRhdGUiCittc2dzdHIgIltBXWt0dWFsaXp1aiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NAorbXNnaWQgIlVwZGF0ZSBsaXN0IG9mIGF2YWlsYWJsZSBwYWNrYWdlcywgaWYgcG9zc2libGUuIgorbXNnc3RyICJBa3R1YWxpemFjZSBpbmZvcm1hY8OtIG8gZG9zdHVwbsO9Y2ggYmFsw61jw61jaC4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDUKK21zZ2lkICJzIgorbXNnc3RyICJ2IgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ1Cittc2dpZCAiW1NdZWxlY3QiCittc2dzdHIgIltWXXliZXIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDUKK21zZ2lkICJSZXF1ZXN0IHdoaWNoIHBhY2thZ2VzIHlvdSB3YW50IG9uIHlvdXIgc3lzdGVtLiIKK21zZ3N0ciAiVsO9YsSbciBiYWzDrWvFryBwcm8gaW5zdGFsYWNpIGEgb2RpbnN0YWxhY2kuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ2Cittc2dpZCAiaSIKK21zZ3N0ciAibiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NgorbXNnaWQgIltJXW5zdGFsbCIKK21zZ3N0ciAiW05dYWluc3RhbHVqIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ2Cittc2dpZCAiSW5zdGFsbCBhbmQgdXBncmFkZSB3YW50ZWQgcGFja2FnZXMuIgorbXNnc3RyICJJbnN0YWxhY2UgYSBha3R1YWxpemFjZSB2eWJyYW7DvWNoIGJhbMOta8WvLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NworbXNnaWQgImMiCittc2dzdHIgImsiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDcKK21zZ2lkICJbQ11vbmZpZyIKK21zZ3N0ciAiW0tda29uZmlndXJ1aiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NworbXNnaWQgIkNvbmZpZ3VyZSBhbnkgcGFja2FnZXMgdGhhdCBhcmUgdW5jb25maWd1cmVkLiIKK21zZ3N0ciAiS29uZmlndXJhY2UgdsWhZWNoIG5lemtvbmZpZ3Vyb3ZhbsO9Y2ggYmFsw61rxa8uIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ4Cittc2dpZCAiciIKK21zZ3N0ciAibyIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OAorbXNnaWQgIltSXWVtb3ZlIgorbXNnc3RyICJbT11kc3RyYcWIIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ4Cittc2dpZCAiUmVtb3ZlIHVud2FudGVkIHNvZnR3YXJlLiIKK21zZ3N0ciAiT2RlYnLDoW7DrSBuZcW+w6Fkb3Vjw61jaCBiYWzDrWvFry4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDkKK21zZ2lkICJxIgorbXNnc3RyICJ1IgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ5Cittc2dpZCAiW1FddWl0IgorbXNnc3RyICJbVV1rb27EjWl0IgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ5Cittc2dpZCAiUXVpdCBkc2VsZWN0LiIKK21zZ3N0ciAiVWtvbsSNZW7DrSBkc2VsZWN0dS4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNTAKK21zZ2lkICJtZW51IgorbXNnc3RyICJtZW51IgorCisjOiBkc2VsZWN0L21haW4uY2M6MTU1CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiBgJXMnIHBhY2thZ2UgaGFuZGxpbmcgZnJvbnRlbmQgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiRGViaWFuIGAlcycgcm96aHJhbsOtIHBybyBzcHLDoXZ1IGJhbMOta8WvIHZlcnplICVzLlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTU4Cittc2dpZCAiIgorIkNvcHlyaWdodCAoQykgMTk5NC0xOTk2IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uXG4iCittc2dzdHIgIiIKKyJDb3B5cmlnaHQgKEMpIDE5OTQtMTk5NiBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTYyCisjLCBmdXp6eQorbXNnaWQgIiIKKyJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAyIG9yXG4iCisibGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuXG4iCittc2dzdHIgIiIKKyJUb3RvIGplIHN2b2JvZG7DvSBzb2Z0d2FyZTsgcG9kcm9ibm9zdGkgbyBwb2Rtw61ua8OhY2gga29ww61yb3bDoW7DrSBuYWxlem5ldGVcbiIKKyJ2IE9iZWNuw6kgdmXFmWVqbsOpIGxpY2VuY2kgR05VIChHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSkgdmVyemUgMiBuZWJvXG4iCisicG96ZMSbasWhw60uIFRvdG8gcHJvZ3JhbW92w6kgdnliYXZlbsOtIGplIGFic29sdXRuxJsgYmV6IHrDoXJ1a3kuXG4iCisiVsOtY2UgaW5mb3JtYWPDrSB6w61za8OhdGUgcG91xb5pdMOtbSAlcyAtLWxpY2VuY2UuXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNzIgZHNlbGVjdC9tYWluLmNjOjIyMAorbXNnaWQgIjxzdGFuZGFyZCBvdXRwdXQ+IgorbXNnc3RyICI8c3RhbmRhcmRuw60gdsO9c3R1cD4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSBbPGFjdGlvbj4gLi4uXVxuIgorIlxuIgorbXNnc3RyICIiCisiUG91xb5pdMOtOiAlcyBbPHZvbGJhPiAuLi5dIFs8YWtjZT4gLi4uXVxuIgorIlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTg3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMuXG4iCisiICAtLWV4cGVydCAgICAgICAgICAgICAgICAgICBUdXJuIG9uIGV4cGVydCBtb2RlLlxuIgorIiAgLS1kZWJ1ZyA8ZmlsZT4gfCAtRDxmaWxlPiAgVHVybiBvbiBkZWJ1Z2dpbmcsIHNlbmRpbmcgb3V0cHV0IHRvIDxmaWxlPi5cbiIKKyIgIC0tY29sb3VyIHwgLS1jb2xvciBzY3JlZW5wYXJ0Oltmb3JlZ3JvdW5kXSxbYmFja2dyb3VuZF1bOmF0dHJbK2F0dHIrLi5dXVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ29uZmlndXJlIHNjcmVlbiBjb2xvdXJzLlxuIgorIlxuIgorbXNnc3RyICIiCisiVm9sYnk6XG4iCisiICAtLWFkbWluZGlyIDxhZHJlc8OhxZk+ICAgICAgIE3DrXN0byAlcyBwb3XFvmlqZSA8YWRyZXPDocWZPi5cbiIKKyIgIC0tZXhwZXJ0ICAgICAgICAgICAgICAgICAgIFphcG5lIHBva3JvxI1pbMO9IHJlxb5pbS5cbiIKKyIgIC0tZGVidWcgPHNvdWI+IHwgLUQ8c291Yj4gIFphcG5lIGxhZGljw60gcmXFvmltIHMgdsO9c3R1cGVtIGRvIDxzb3ViPi5cbiIKKyIgIC0tY29sb3VyIHwgLS1jb2xvciDEjcOhc3RvYnJhejpbcG9wxZllZMOtXSxbcG96YWTDrV1bOmF0cmliWythdHJpYisuLl1dXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOYXN0YXbDrSBiYXJ2eS5cbiIKKyJcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE5NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgICAgU2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgIFNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCittc2dzdHIgIiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICAgIFpvYnJhesOtIHR1dG8gbsOhcG92xJtkdS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgIFpvYnJhesOtIHZlcnppLlxuIgorIiAgLS1saWNlbnNlICAgICAgICAgICAgICAgICAgWm9icmF6w60gbGljZW5jaS5cbiIKKyJcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjIwMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQWN0aW9uczpcbiIKKyIgIGFjY2VzcyB1cGRhdGUgc2VsZWN0IGluc3RhbGwgY29uZmlnIHJlbW92ZSBxdWl0XG4iCisiXG4iCittc2dzdHIgIiIKKyJBa2NlOlxuIgorIiAgYWNjZXNzIHVwZGF0ZSBzZWxlY3QgaW5zdGFsbCBjb25maWcgcmVtb3ZlIHF1aXRcbiIKKyJcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjIwNQorIywgYy1mb3JtYXQKK21zZ2lkICJTY3JlZW5wYXJ0czpcbiIKK21zZ3N0ciAixIzDoXN0aSBvYnJhem92a3k6XG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ29sb3VyczpcbiIKK21zZ3N0ciAiQmFydnk6XG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiQXR0cmlidXRlczpcbiIKK21zZ3N0ciAiQXRyaWJ1dHk6XG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGRuJ3Qgb3BlbiBkZWJ1ZyBmaWxlIGAlLjI1NXMnXG4iCittc2dzdHIgIm5lcG9kYcWZaWxvIHNlIG90ZXbFmcOtdCBsYWTDrWPDrSBzb3Vib3IgYCUuMjU1cydcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjI1MworIywgYy1mb3JtYXQKK21zZ2lkICJJbnZhbGlkICVzIGAlcydcbiIKK21zZ3N0ciAiTmVwbGF0bsOpICVzIGAlcydcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjI3MAorbXNnaWQgInNjcmVlbiBwYXJ0IgorbXNnc3RyICLEjcOhc3Qgb2JyYXpvdmt5IgorCisjOiBkc2VsZWN0L21haW4uY2M6Mjc2Cittc2dpZCAiTnVsbCBjb2xvdXIgc3BlY2lmaWNhdGlvblxuIgorbXNnc3RyICJaYWTDoW7DrSBwcsOhemRuw6kgYmFydnlcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjI4NCBkc2VsZWN0L21haW4uY2M6Mjg5Cittc2dpZCAiY29sb3VyIgorbXNnc3RyICJiYXJ2YSIKKworIzogZHNlbGVjdC9tYWluLmNjOjI5NworbXNnaWQgImNvbG91ciBhdHRyaWJ1dGUiCittc2dzdHIgImF0cmlidXQgYmFydnkiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzozMjkKK21zZ2lkICJUZXJtaW5hbCBkb2VzIG5vdCBhcHBlYXIgdG8gc3VwcG9ydCBjdXJzb3IgYWRkcmVzc2luZy5cbiIKK21zZ3N0ciAiWmTDoSBzZSwgxb5lIHRlcm1pbsOhbCBuZXBvZHBvcnVqZSBhZHJlc2FjaSBrdXJ6b3J1LlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MzMxCittc2dpZCAiVGVybWluYWwgZG9lcyBub3QgYXBwZWFyIHRvIHN1cHBvcnQgaGlnaGxpZ2h0aW5nLlxuIgorbXNnc3RyICJaZMOhIHNlLCDFvmUgdGVybWluw6FsIG5lcG9kcG9ydWplIHp2w71yYXrFiG92w6Fuw60uXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzozMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlNldCB5b3VyIFRFUk0gdmFyaWFibGUgY29ycmVjdGx5LCB1c2UgYSBiZXR0ZXIgdGVybWluYWwsXG4iCisib3IgbWFrZSBkbyB3aXRoIHRoZSBwZXItcGFja2FnZSBtYW5hZ2VtZW50IHRvb2wgJXMuXG4iCittc2dzdHIgIiIKKyJOYXN0YXZ0ZSBzcHLDoXZuxJsgcHJvbcSbbm5vdSBURVJNLCBwb3XFvmlqdGUgbGVwxaHDrSB0ZXJtaW7DoWxcbiIKKyJuZWJvIHBvdcW+aWp0ZSBuw6FzdHJvaiBwcm8gc3Byw6F2dSBqZWRub3RsaXbDvWNoIGJhbMOta8WvICVzLlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MzM2Cittc2dpZCAidGVybWluYWwgbGFja3MgbmVjZXNzYXJ5IGZlYXR1cmVzLCBnaXZpbmcgdXAiCittc2dzdHIgInRlcm1pbsOhbCBwb3N0csOhZMOhIG5lemJ5dG7DqSBmdW5rY2UsIHZ6ZMOhdsOhbSB0byIKKworIzogZHNlbGVjdC9tYWluLmNjOjQxNworbXNnaWQgIiIKKyJcbiIKKyJcbiIKKyJNb3ZlIGFyb3VuZCB3aXRoIF5QIGFuZCBeTiwgY3Vyc29yIGtleXMsIGluaXRpYWwgbGV0dGVycywgb3IgZGlnaXRzO1xuIgorIlByZXNzIDxlbnRlcj4gdG8gY29uZmlybSBzZWxlY3Rpb24uICAgXkwgcmVkcmF3cyBzY3JlZW4uXG4iCisiXG4iCittc2dzdHIgIiIKKyJcbiIKKyJcbiIKKyJQb2h5YnVqdGUgc2UgcG9tb2PDrSBrbMOhdmVzIF5QIGEgXk4sIGt1cnpvcm92w71jaCDFoWlwZWssIHBvxI3DoXRlxI1uw61jaCBww61zbWVuICIKKyJuZWJvXG4iCisixI3DrXNsaWM7IFZvbGJ1IHBvdHZyxI90ZSBzdGlza2VtIGtsw6F2ZXN5IDxlbnRlcj4uIE9icmF6b3ZrdSBwxZlla3Jlc2zDrSBeTC5cbiIKKyJcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjQyOAorbXNnaWQgIiIKKyJcbiIKKyJcbiIKKyJSZWFkLW9ubHkgYWNjZXNzOiBvbmx5IHByZXZpZXcgb2Ygc2VsZWN0aW9ucyBpcyBhdmFpbGFibGUhIgorbXNnc3RyICIiCisiXG4iCisiXG4iCisiUMWZw61zdHVwIHBvdXplIHBybyDEjXRlbsOtOiBrIGRpc3BvemljaSBqZSBwb3V6ZSBwxZllaGxlZCBha3R1w6FsbsOtY2ggbmFzdGF2ZW7DrSEiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzo0NDgKK21zZ2lkICJmYWlsZWQgdG8gZ2V0Y2ggaW4gbWFpbiBtZW51IgorbXNnc3RyICJuZXBvdmVkbG8gc2UgZ2V0Y2ggdiBobGF2bsOtbSBtZW51IgorCisjOiBkc2VsZWN0L21haW4uY2M6NTMxCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gYWN0aW9uIHN0cmluZyBgJS41MHMnIgorbXNnc3RyICJuZXpuw6Ftw70gYWvEjW7DrSDFmWV0xJt6ZWMgYCUuNTBzJyIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzo3NworbXNnaWQgImRzZWxlY3QgLSBsaXN0IG9mIGFjY2VzcyBtZXRob2RzIgorbXNnc3RyICJkc2VsZWN0IC0gc2V6bmFtIHDFmcOtc3R1cG92w71jaCBtZXRvZCIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzo4NgorIywgYy1mb3JtYXQKK21zZ2lkICJBY2Nlc3MgbWV0aG9kIGAlcycuIgorbXNnc3RyICJQxZnDrXN0dXBvdsOhIG1ldG9kYSBgJXMnLiIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxMjAKK21zZ2lkICJBYmJyZXYuIgorbXNnc3RyICJaa3JhdGthIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjEyMSBkc2VsZWN0L3BrZ2luZm8uY2M6MTA1IGRzZWxlY3QvcGtndG9wLmNjOjI5MQorbXNnaWQgIkRlc2NyaXB0aW9uIgorbXNnc3RyICJQb3BpcyIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxNjQgZHNlbGVjdC9wa2dsaXN0LmNjOjU3MgorbXNnaWQgImRvdXBkYXRlIGZhaWxlZCIKK21zZ3N0ciAibmVwb3ZlZGxvIHNlIGRvdXBkYXRlIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjE2NiBkc2VsZWN0L3BrZ2xpc3QuY2M6NTc1Cittc2dpZCAiZmFpbGVkIHRvIHVuYmxvY2sgU0lHV0lOQ0giCittc2dzdHIgIm5lcG92ZWRsbyBzZSBvZGJsb2tvdmF0IFNJR1dJTkNIIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjE3MCBkc2VsZWN0L3BrZ2xpc3QuY2M6NTgwCittc2dpZCAiZmFpbGVkIHRvIHJlLWJsb2NrIFNJR1dJTkNIIgorbXNnc3RyICJuZXBvdmVkbG8gc2Ugem5vdnUgemFibG9rb3ZhdCBTSUdXSU5DSCIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxNzEgZHNlbGVjdC9wa2dsaXN0LmNjOjU4MgorbXNnaWQgImdldGNoIGZhaWxlZCIKK21zZ3N0ciAibmVwb3ZlZGxvIHNlIGdldGNoIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjE4OAorbXNnaWQgIkV4cGxhbmF0aW9uIgorbXNnc3RyICJWeXN2xJt0bGVuw60iCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTk3Cittc2dpZCAiTm8gZXhwbGFuYXRpb24gYXZhaWxhYmxlLiIKK21zZ3N0ciAiVnlzdsSbdGxlbsOtIG5lbsOtIGsgZGlzcG96aWNpLiIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6NjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIlxuIgorIiVzOiAlc1xuIgorbXNnc3RyICIiCisiXG4iCisiXG4iCisiJXM6ICVzXG4iCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjcwCittc2dpZCAiIgorIlxuIgorIlByZXNzIDxlbnRlcj4gdG8gY29udGludWUuIgorbXNnc3RyICIiCisiXG4iCisiUG9rcmHEjXVqdGUgc3Rpc2tlbSBrbMOhdmVzeSA8ZW50ZXI+LiIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MTYxCisjLCBjLWZvcm1hdAorbXNnaWQgIlByZXNzIDxlbnRlcj4gdG8gY29udGludWUuXG4iCittc2dzdHIgIlBva3JhxI11anRlIHN0aXNrZW0ga2zDoXZlc3kgPGVudGVyPi5cbiIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MTYyCittc2dpZCAiPHN0YW5kYXJkIGVycm9yPiIKK21zZ3N0ciAiPGNoeWJvdsO9IHbDvXN0dXA+IgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoxNjUKK21zZ2lkICJlcnJvciByZWFkaW5nIGFja25vd2xlZGdlbWVudCBvZiBwcm9ncmFtIGZhaWx1cmUgbWVzc2FnZSIKK21zZ3N0ciAiY2h5YmEgcMWZaSDEjXRlbsOtIHBvdHZyemVuw60gY2h5Ym92w6lobyBobMOhxaFlbsOtIHByb2dyYW11IgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoxOTYKK21zZ2lkICJ1cGRhdGUgYXZhaWxhYmxlIGxpc3Qgc2NyaXB0IgorbXNnc3RyICJza3JpcHQgcHJvIGFrdHVhbGl6YWNpIHNlem5hbXUgZG9zdHVwbsO9Y2ggYmFsw61rxa8iCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjIwMAorbXNnaWQgImluc3RhbGxhdGlvbiBzY3JpcHQiCittc2dzdHIgImluc3RhbGHEjW7DrSBza3JpcHQiCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjI0NgorbXNnaWQgInF1ZXJ5L3NldHVwIHNjcmlwdCIKK21zZ3N0ciAiZG90YXpvdmFjw60vbmFzdGF2b3ZhY8OtIHNrcmlwdCIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yIGluIG1ldGhvZCBvcHRpb25zIGZpbGUgYCUuMjUwcycgLS0gJXMiCittc2dzdHIgInN5bnRha3RpY2vDoSBjaHliYSB2IGtvbmZpZ3VyYcSNbsOtbSBzb3Vib3J1IG1ldG9keSBgJS4yNTBzJyAtLSAlcyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcmVhZGluZyBvcHRpb25zIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImNoeWJhIHDFmWkgxI10ZW7DrSBrb25maWd1cmHEjW7DrWhvIHNvdWJvcnUgYCUuMjUwcyciCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjkwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIGAlLjI1MHMnIGRpcmVjdG9yeSBmb3IgcmVhZGluZyBtZXRob2RzIgorbXNnc3RyICJuZWJ5bG8gbW/Fvm5vIG5hxI3DrXN0IMSNdGVjw60gbWV0b2R5IHYgYWRyZXPDocWZaSBgJS4yNTBzJyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTA2CisjLCBjLWZvcm1hdAorbXNnaWQgIm1ldGhvZCBgJS4yNTBzJyBoYXMgbmFtZSB0aGF0IGlzIHRvbyBsb25nICglZCA+ICVkIGNoYXJhY3RlcnMpIgorbXNnc3RyICJtZXRvZGEgYCUuMjUwcycgbcOhIHDFmcOtbGnFoSBkbG91aMOpIGptw6lubyAoJWQgPiAlZCB6bmFrxa8pIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGFjY2VzcyBtZXRob2Qgc2NyaXB0IGAlLjI1MHMnIgorbXNnc3RyICJuZWx6ZSBwxZlpc3RvdXBpdCBrZSBza3JpcHR1IG1ldG9keSBgJS4yNTBzJyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTIzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIG1ldGhvZCBvcHRpb25zIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5lYnlsbyBtb8W+bm8gcMWZZcSNw61zdCBrb25maWd1cmHEjW7DrSBzb3Vib3IgbWV0b2R5IGAlLjI1MHMnIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNDcKK21zZ2lkICJub24tZGlnaXQgd2hlcmUgZGlnaXQgd2FudGVkIgorbXNnc3RyICJuZcSNw61zZWxuw70gem5hayBuYSBtw61zdMSbIG/EjWVrw6F2YW7DqSDEjcOtc2xpY2UiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE1MAorbXNnaWQgIkVPRiBpbiBpbmRleCBzdHJpbmciCittc2dzdHIgIkVPRiB2IGluZGV4b3bDqW0gxZlldMSbemNpIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNTMKK21zZ2lkICJpbmRleCBzdHJpbmcgdG9vIGxvbmciCittc2dzdHIgImluZGV4b3bDvSDFmWV0xJt6ZWMgamUgcMWZw61sacWhIGRsb3Vow70iCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE1NgorbXNnaWQgIm5ld2xpbmUgYmVmb3JlIG9wdGlvbiBuYW1lIHN0YXJ0IgorbXNnc3RyICJub3bDvSDFmcOhZGVrIHDFmWVkIHphxI3DoXRrZW0gam3DqW5hIHZvbGJ5IgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNTgKK21zZ2lkICJFT0YgYmVmb3JlIG9wdGlvbiBuYW1lIHN0YXJ0IgorbXNnc3RyICJFT0YgcMWZZWQgemHEjcOhdGtlbSBqbcOpbmEgdm9sYnkiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE2MgorbXNnaWQgIm5vbmFscGhhIHdoZXJlIG9wdGlvbiBuYW1lIHN0YXJ0IHdhbnRlZCIKK21zZ3N0ciAibmVww61zbWVubsO9IHpuYWsgcMWZZWQgemHEjcOhdGtlbSBqbcOpbmEgdm9sYnkiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE2NAorbXNnaWQgIm5vbi1hbHBoYW51bSBpbiBvcHRpb24gbmFtZSIKK21zZ3N0ciAibmVhbGZhbnVtZXJpY2vDvSB6bmFrIHZlIGptw6luxJsgdm9sYnkiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE2NworbXNnaWQgIkVPRiBpbiBvcHRpb24gbmFtZSIKK21zZ3N0ciAiRU9GIHZlIGptw6luxJsgdm9sYnkiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE3MgorbXNnaWQgIm5ld2xpbmUgYmVmb3JlIHN1bW1hcnkiCittc2dzdHIgIm5vdsO9IMWZw6FkZWsgcMWZZWQgcMWZZWhsZWRlbSIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTc0Cittc2dpZCAiRU9GIGJlZm9yZSBzdW1tYXJ5IgorbXNnc3RyICJFT0YgcMWZZWQgcMWZZWhsZWRlbSIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTgwCittc2dpZCAiRU9GIGluIHN1bW1hcnkgLSBtaXNzaW5nIG5ld2xpbmUiCittc2dzdHIgIkVPRiB2IHDFmWVobGVkdSAtIGNoeWLEm2rDrWPDrSBub3bDvSDFmcOhZGVrIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gb3B0aW9uIGRlc2NyaXB0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5lbHplIG90ZXbFmcOtdCBzb3Vib3IgcyBwb3Bpc3kgYCUuMjUwcyciCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE5NAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBvcHRpb24gZGVzY3JpcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmVsemUgZGV0ZWtvdmF0IHBvcGlzbsO9IHNvdWJvciB2b2xlYiBgJS4yNTBzJyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTk4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZWFkIG9wdGlvbiBkZXNjcmlwdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuZWJ5bG8gbW/Fvm5vIHDFmWXEjcOtc3QgcG9waXNuw70gc291Ym9yIHZvbGViIGAlLjI1MHMnIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgZHVyaW5nIHJlYWQgb2Ygb3B0aW9uIGRlc2NyaXB0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImNoeWJhIHDFmWkgxI10ZW7DrSBwb3Bpc27DqWhvIHNvdWJvcnUgdm9sZWIgYCUuMjUwcyciCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjIyNAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBkdXJpbmcgcmVhZCBvZiBtZXRob2Qgb3B0aW9ucyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJjaHliYSBwxZlpIMSNdGVuw60ga29uZmlndXJhxI1uw61obyBzb3Vib3J1IG1ldG9keSBgJS4yNTBzJyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MjQ3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIGN1cnJlbnQgb3B0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5lbHplIG90ZXbFmcOtdCBha3R1w6FsbsOtIGtvbmZpZ3VyYcSNbsOtIHNvdWJvciBgJS4yNTBzJyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6Mjg5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIG5ldyBvcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmVsemUgb3RldsWZw610IG5vdsO9IGtvbmZpZ3VyYcSNbsOtIHNvdWJvciBgJS4yNTBzJyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MjkyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgb3B0aW9uIHRvIGAlLjI1MHMnIgorbXNnc3RyICJuZWx6ZSB6YXBzYXQgbm92w70ga29uZmlndXJhxI1uw60gc291Ym9yIGAlLjI1MHMnIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyOTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIG5ldyBvcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmVsemUgdXphdsWZw610IG5vdsO9IGtvbmZpZ3VyYcSNbsOtIHNvdWJvciBgJS4yNTBzJyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6Mjk3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyBvcHRpb24gYXMgYCUuMjUwcyciCittc2dzdHIgIm5lbHplIG5haW5zdGFsb3ZhdCBub3ZvdSBrb25maWd1cmFjaSBqYWtvIGAlLjI1MHMnIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MzYKK21zZ2lkICJuZXcgcGFja2FnZSIKK21zZ3N0ciAibm92w70gYmFsw61rIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MzcKK21zZ2lkICJpbnN0YWxsIgorbXNnc3RyICJpbnN0YWxhY2UiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzozOAorbXNnaWQgImhvbGQiCittc2dzdHIgInBvZHLFvmV0IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MzkKK21zZ2lkICJyZW1vdmUiCittc2dzdHIgIm9kZWJyw6Fuw60iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo0MAorbXNnaWQgInB1cmdlIgorbXNnc3RyICJ2ecSNaXN0aXQiCisKKyMuIFRSQU5TTEFUT1JTOiBUaGUgc3BhY2UgaXMgYSB0cmljayB0byB3b3JrIGFyb3VuZCBnZXR0ZXh0IHdoaWNoIHVzZXMKKyMuICogdGhlIGVtcHR5IHN0cmluZyB0byBzdG9yZSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgdHJhbnNsYXRpb24uIERPIE5PVAorIy4gKiBDSEFOR0UgVEhBVCBJTiBBIFRSQU5TTEFUSU9OISBUaGUgY29kZSByZWFsbHkgcmVsaWVzIG9uIHRoYXQgYmVpbmcKKyMuICogYSBzaW5nbGUgc3BhY2UuCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NDcKK21zZ2lkICIgIgorbXNnc3RyICIgIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NDgKK21zZ2lkICJSRUlOU1RBTEwiCittc2dzdHIgIlDFmEVJTlNUQUxPVkFUIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTEKK21zZ2lkICJub3QgaW5zdGFsbGVkIgorbXNnc3RyICJuZW5haW5zdGFsb3bDoW4iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1MgorbXNnaWQgInJlbW92ZWQgKGNvbmZpZ3MgcmVtYWluKSIKK21zZ3N0ciAib2RpbnN0YWxvdmFuw70gKGtvbmZpZ3VyYcSNbsOtIHNvdWJvcnkgcG9uZWNow6FueSkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1MworbXNnaWQgImhhbGYgaW5zdGFsbGVkIgorbXNnc3RyICJ6cG9sYSBuYWluc3RhbG92YW7DvSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjU0Cittc2dpZCAidW5wYWNrZWQgKG5vdCBzZXQgdXApIgorbXNnc3RyICJyb3piYWxlbsO9IChuZXprb25maWd1cm92YW7DvSkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1NQorbXNnaWQgImhhbGYgY29uZmlndXJlZCAoY29uZmlnIGZhaWxlZCkiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjU2Cittc2dpZCAiYXdhaXRpbmcgdHJpZ2dlciBwcm9jZXNzaW5nIgorbXNnc3RyICJvxI1la8OhdsOhIHpwcmFjb3bDoW7DrSBzcG91xaF0xJvEjcWvIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTcKK21zZ2lkICJ0cmlnZ2VyZWQiCittc2dzdHIgInNwb3XFoXTEm8SNIGFrdGl2b3bDoW4iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1OAorbXNnaWQgImluc3RhbGxlZCIKK21zZ3N0ciAibmFpbnN0YWxvdsOhbiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjYxCittc2dpZCAiUmVxdWlyZWQiCittc2dzdHIgIlZ5xb5hZG92YW7DqSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjYyCittc2dpZCAiSW1wb3J0YW50IgorbXNnc3RyICJExa9sZcW+aXTDqSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjYzCittc2dpZCAiU3RhbmRhcmQiCittc2dzdHIgIlN0YW5kYXJkbsOtIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjQKK21zZ2lkICJPcHRpb25hbCIKK21zZ3N0ciAiVm9saXRlbG7DqSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjY1Cittc2dpZCAiRXh0cmEiCittc2dzdHIgIkV4dHJhIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjYKK21zZ2lkICIhQnVnISIKK21zZ3N0ciAiIUNoeWJhISIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjY3Cittc2dpZCAiVW5jbGFzc2lmaWVkIgorbXNnc3RyICJOZWtsYXNpZmlrb3ZhbsOpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzAKK21zZ2lkICJzdWdnZXN0cyIKK21zZ3N0ciAibmF2cmh1amUiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3MQorbXNnaWQgInJlY29tbWVuZHMiCittc2dzdHIgImRvcG9ydcSNdWplIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzIKK21zZ2lkICJkZXBlbmRzIG9uIgorbXNnc3RyICJ6w6F2aXPDrSBuYSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjczCittc2dpZCAicHJlLWRlcGVuZHMgb24iCittc2dzdHIgInDFmWVkLXrDoXZpc8OtIG5hIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzQKK21zZ2lkICJicmVha3MiCittc2dzdHIgInBvcnXFocOtIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzUKK21zZ2lkICJjb25mbGljdHMgd2l0aCIKK21zZ3N0ciAiamUgdiBrb25mbGlrdHUgcyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjc2Cittc2dpZCAicHJvdmlkZXMiCittc2dzdHIgInBvc2t5dHVqZSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjc3Cittc2dpZCAicmVwbGFjZXMiCittc2dzdHIgIm5haHJhenVqZSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjc4Cittc2dpZCAiZW5oYW5jZXMiCittc2dzdHIgInZ5bGVwxaF1amUiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4MQorbXNnaWQgIlJlcSIKK21zZ3N0ciAiVnnFviIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjgyCittc2dpZCAiSW1wIgorbXNnc3RyICJExa9sIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODMKK21zZ2lkICJTdGQiCittc2dzdHIgIlN0ZCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjg0Cittc2dpZCAiT3B0IgorbXNnc3RyICJWb2wiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4NQorbXNnaWQgIlh0ciIKK21zZ3N0ciAiRXh0IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODYKK21zZ2lkICJiVUciCittc2dzdHIgIkNIQiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjg3Cittc2dpZCAiPyIKK21zZ3N0ciAiPyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjk1IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTUKK21zZ2lkICJCcm9rZW4iCittc2dzdHIgIlBvxaFrb3plbsOpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6OTYKK21zZ2lkICJOZXciCittc2dzdHIgIk5vdsOpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6OTcKK21zZ2lkICJVcGRhdGVkIgorbXNnc3RyICJBa3R1YWxpem92YW7DqSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjk4Cittc2dpZCAiT2Jzb2xldGUvbG9jYWwiCittc2dzdHIgIlphc3RhcmFsw6kvbG9rw6FsbsOtIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6OTkKK21zZ2lkICJVcC10by1kYXRlIgorbXNnc3RyICJBa3R1w6FsbsOtIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTAwCittc2dpZCAiQXZhaWxhYmxlIgorbXNnc3RyICJEb3N0dXBuw6kiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDEgZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExNworbXNnaWQgIlJlbW92ZWQiCittc2dzdHIgIk9kc3RyYW7Em27DqSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwMiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTExCittc2dpZCAiQnJva2VubHkgaW5zdGFsbGVkIHBhY2thZ2VzIgorbXNnc3RyICJDaHlibsSbIG5haW5zdGFsb3ZhbsOpIGJhbMOta3kiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDMKK21zZ2lkICJOZXdseSBhdmFpbGFibGUgcGFja2FnZXMiCittc2dzdHIgIk5vdsSbIGRvc3R1cG7DqSBiYWzDrWt5IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTA0Cittc2dpZCAiVXBkYXRlZCBwYWNrYWdlcyAobmV3ZXIgdmVyc2lvbiBpcyBhdmFpbGFibGUpIgorbXNnc3RyICJBa3R1YWxpem92YW7DqSBiYWzDrWt5IChqZSBrIGRpc3BvemljaSBub3bDoSB2ZXJ6ZSkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDUKK21zZ2lkICJPYnNvbGV0ZSBhbmQgbG9jYWwgcGFja2FnZXMgcHJlc2VudCBvbiBzeXN0ZW0iCittc2dzdHIgIlphc3RhcmFsw6kgYSBsb2vDoWxuw60gYmFsw61reSB2IHN5c3TDqW11IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTA2Cittc2dpZCAiVXAgdG8gZGF0ZSBpbnN0YWxsZWQgcGFja2FnZXMiCittc2dzdHIgIkFrdHXDoWxuw60gbmFpbnN0YWxvdmFuw6kgYmFsw61reSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwNworbXNnaWQgIkF2YWlsYWJsZSBwYWNrYWdlcyAobm90IGN1cnJlbnRseSBpbnN0YWxsZWQpIgorbXNnc3RyICJEb3N0dXBuw6kgYmFsw61reSAobW9tZW50w6FsbsSbIG5lbmFpbnN0YWxvdmFuw6kpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTA4Cittc2dpZCAiUmVtb3ZlZCBhbmQgbm8gbG9uZ2VyIGF2YWlsYWJsZSBwYWNrYWdlcyIKK21zZ3N0ciAiT2RzdHJhbsSbbsOpIGEgamnFviBuZWRvc3R1cG7DqSBiYWzDrWt5IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTEyCittc2dpZCAiSW5zdGFsbGVkIHBhY2thZ2VzIgorbXNnc3RyICJOYWluc3RhbG92YW7DqSBiYWzDrWt5IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTEzCittc2dpZCAiUmVtb3ZlZCBwYWNrYWdlcyAoY29uZmlndXJhdGlvbiBzdGlsbCBwcmVzZW50KSIKK21zZ3N0ciAiT2RzdHJhbsSbbsOpIGJhbMOta3kgKGtvbmZpZ3VyYWNlIHphdMOtbSB6YWNob3bDoW5hKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExNAorbXNnaWQgIlB1cmdlZCBwYWNrYWdlcyBhbmQgdGhvc2UgbmV2ZXIgaW5zdGFsbGVkIgorbXNnc3RyICJWecSNacWhdMSbbsOpIGEgbmlrZHkgbmVuYWluc3RhbG92YW7DqSBiYWzDrWt5IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTE2Cittc2dpZCAiSW5zdGFsbGVkIgorbXNnc3RyICJOYWluc3RhbG92YW7DqSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExOAorbXNnaWQgIlB1cmdlZCIKK21zZ3N0ciAiVnnEjWnFoXTEm27DqSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjE5OAorbXNnaWQgImRzZWxlY3QgLSByZWN1cnNpdmUgcGFja2FnZSBsaXN0aW5nIgorbXNnc3RyICJkc2VsZWN0IC0gcmVrdXJ6aXZuw60gdsO9cGlzIGJhbMOta8WvIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTk5Cittc2dpZCAiZHNlbGVjdCAtIGluc3BlY3Rpb24gb2YgcGFja2FnZSBzdGF0ZXMiCittc2dzdHIgImRzZWxlY3QgLSBpbnNwZWtjZSBzdGF2xa8gYmFsw61rxa8iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMDAKK21zZ2lkICJkc2VsZWN0IC0gbWFpbiBwYWNrYWdlIGxpc3RpbmciCittc2dzdHIgImRzZWxlY3QgLSBobGF2bsOtIHNlem5hbSBiYWzDrWvFryIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIwOAorbXNnaWQgIiAoYnkgc2VjdGlvbikiCittc2dzdHIgIiAocG9kbGUgc2VrY2UpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjExCittc2dpZCAiIChhdmFpbC4sIHNlY3Rpb24pIgorbXNnc3RyICIgKGRvc3R1cC4sIHNla2NlKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIxNAorbXNnaWQgIiAoc3RhdHVzLCBzZWN0aW9uKSIKK21zZ3N0ciAiIChzdGF2LCBzZWtjZSkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMjMKK21zZ2lkICIgKGJ5IHByaW9yaXR5KSIKK21zZ3N0ciAiIChwb2RsZSBwcmlvcml0eSkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMjYKK21zZ2lkICIgKGF2YWlsLiwgcHJpb3JpdHkpIgorbXNnc3RyICIgKGRvc3R1cC4sIHByaW9yaXRhKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIyOQorbXNnaWQgIiAoc3RhdHVzLCBwcmlvcml0eSkiCittc2dzdHIgIiAoc3RhdiwgcHJpb3JpdGEpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjM4IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNTAKK21zZ2lkICIgKGFscGhhYmV0aWNhbGx5KSIKK21zZ3N0ciAiIChhYmVjZWRuxJspIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjQxCittc2dpZCAiIChieSBhdmFpbGFiaWxpdHkpIgorbXNnc3RyICIgKHBvZGxlIGRvc3R1cG5vc3RpKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI0NAorbXNnaWQgIiAoYnkgc3RhdHVzKSIKK21zZ3N0ciAiIChwb2RsZSBzdGF2dSkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNTgKK21zZ2lkICIgbWFyazorLz0vLSB0ZXJzZTp2IGhlbHA6PyIKK21zZ3N0ciAiIHpuYcSNOisvPS8tIHN0cnXEjTp2IHBvbW9jOj8iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNTkKK21zZ2lkICIgbWFyazorLz0vLSB2ZXJib3NlOnYgaGVscDo/IgorbXNnc3RyICIgem5hxI06Ky89Ly0gcG9kcm9iOnYgcG9tb2M6PyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI2MAorbXNnaWQgIiB0ZXJzZTp2IGhlbHA6PyIKK21zZ3N0ciAiIHN0cnXEjTp2IHBvbW9jOj8iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNjEKK21zZ2lkICIgdmVyYm9zZTp2IGhlbHA6PyIKK21zZ3N0ciAiIHBvZHJvYjp2IHBvbW9jOj8iCisKKyM6IGRzZWxlY3QvcGtnaW5mby5jYzo4MAorbXNnaWQgIiIKKyJUaGUgbGluZSB5b3UgaGF2ZSBoaWdobGlnaHRlZCByZXByZXNlbnRzIG1hbnkgcGFja2FnZXM7IGlmIHlvdSBhc2sgdG8gIgorImluc3RhbGwsIHJlbW92ZSwgaG9sZCwgZXRjLiBpdCB5b3Ugd2lsbCBhZmZlY3QgYWxsIHRoZSBwYWNrYWdlcyB3aGljaCBtYXRjaCAiCisidGhlIGNyaXRlcmlvbiBzaG93bi5cbiIKKyJcbiIKKyJJZiB5b3UgbW92ZSB0aGUgaGlnaGxpZ2h0IHRvIGEgbGluZSBmb3IgYSBwYXJ0aWN1bGFyIHBhY2thZ2UgeW91IHdpbGwgc2VlICIKKyJpbmZvcm1hdGlvbiBhYm91dCB0aGF0IHBhY2thZ2UgZGlzcGxheWVkIGhlcmUuXG4iCisiWW91IGNhbiB1c2UgYG8nIGFuZCBgTycgdG8gY2hhbmdlIHRoZSBzb3J0IG9yZGVyIGFuZCBnaXZlIHlvdXJzZWxmIHRoZSAiCisib3Bwb3J0dW5pdHkgdG8gbWFyayBwYWNrYWdlcyBpbiBkaWZmZXJlbnQga2luZHMgb2YgZ3JvdXBzLiIKK21zZ3N0ciAiIgorIlp2w71yYXpuxJtuw70gxZnDoWRlayByZXByZXplbnR1amUgbW5vaG8gYmFsw61rxa87IHBvxb7DoWTDoXRlLWxpIG8gamVqaWNoIGluc3RhbGFjaSwgIgorIm9kaW5zdGFsYWNpLCBwb2Ryxb5lbsOtLCBhdGQuLCBha2NlIHNlIGFwbGlrdWplIG5hIHbFoWVjaG55IGJhbMOta3ksIGt0ZXLDqSAiCisib2Rwb3bDrWRhasOtIHpvYnJhemVuw6ltdSBrcml0w6lyaXUuXG4iCisiXG4iCisiUG9zdW5ldGUtbGkgenbDvXJhem7Em27DrSBuYSDFmcOhZGVrIGtvbmtyw6l0bsOtaG8gYmFsw61rdSwgem9icmF6w60gc2UgdsOhbSB6ZGUgbyBuxJttICIKKyJpbmZvcm1hY2UuXG4iCisiUG/FmWFkw60gdMWZw61kxJtuw60gYmFsw61rxa8gbHplIHptxJtuaXQga2zDoXZlc2FtaSBgbycgYSBgTycsIGNvxb4gdsOhbSB1bW/Fvm7DrSBvem5hxI1pdCAiCisiYmFsw61reSB2IHLFr3puw71jaCB0eXBlY2ggc2t1cGluLiIKKworIzogZHNlbGVjdC9wa2dpbmZvLmNjOjkzCittc2dpZCAiSW50ZXJyZWxhdGlvbnNoaXBzIgorbXNnc3RyICJWesOhamVtbsOpIHZ6dGFoeSIKKworIzogZHNlbGVjdC9wa2dpbmZvLmNjOjExMgorbXNnaWQgIk5vIGRlc2NyaXB0aW9uIGF2YWlsYWJsZS4iCittc2dzdHIgIlBvcGlzIG5lbsOtIGsgZGlzcG96aWNpLiIKKworIzogZHNlbGVjdC9wa2dpbmZvLmNjOjEzMAorbXNnaWQgIkluc3RhbGxlZCBjb250cm9sIGZpbGUgaW5mb3JtYXRpb24iCittc2dzdHIgIlN0YXYgaW5zdGFsYWNlIHBvZGxlIHNvdWJvcnUgY29udHJvbCIKKworIzogZHNlbGVjdC9wa2dpbmZvLmNjOjE0NgorbXNnaWQgIkF2YWlsYWJsZSBjb250cm9sIGZpbGUgaW5mb3JtYXRpb24iCittc2dzdHIgIkRvc3R1cG7DqSBpbmZvcm1hY2UgemUgc291Ym9ydSBjb250cm9sIgorCisjOiBkc2VsZWN0L3BrZ2xpc3QuY2M6NDE2Cittc2dpZCAiVGhlcmUgYXJlIG5vIHBhY2thZ2VzLiIKK21zZ3N0ciAiTmVqc291IHpkZSDFvsOhZG7DqSBiYWzDrWt5LiIKKworIzogZHNlbGVjdC9wa2dsaXN0LmNjOjUwNworbXNnaWQgImludmFsaWQgc2VhcmNoIG9wdGlvbiBnaXZlbiIKK21zZ3N0ciAiemFkw6FuYSBuZXBsYXRuw6Egdm9sYmEiCisKKyM6IGRzZWxlY3QvcGtnbGlzdC5jYzo1MjEKK21zZ2lkICJlcnJvciBpbiByZWd1bGFyIGV4cHJlc3Npb24iCittc2dzdHIgImNoeWJhIHYgcmVndWzDoXJuw61tIHbDvXJhenUiCisKKyM6IGRzZWxlY3QvcGtnc3VibGlzdC5jYzoxMDcKK21zZ2lkICIgZG9lcyBub3QgYXBwZWFyIHRvIGJlIGF2YWlsYWJsZVxuIgorbXNnc3RyICIgbmVuw60gayBkaXNwb3ppY2lcbiIKKworIzogZHNlbGVjdC9wa2dzdWJsaXN0LmNjOjEyNworbXNnaWQgIiBvciAiCittc2dzdHIgIiBuZWJvICIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6NTcKK21zZ2lkICJBbGwiCittc2dzdHIgIlbFoWVjaG55IgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo3OQorbXNnaWQgIkFsbCBwYWNrYWdlcyIKK21zZ3N0ciAiVsWhZWNobnkgYmFsw61reSIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcGFja2FnZXMgd2l0aG91dCBhIHNlY3Rpb24iCittc2dzdHIgIiVzIGJhbMOta3kgYmV6IHV2ZWRlbsOpIHNla2NlIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo4NQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBwYWNrYWdlcyBpbiBzZWN0aW9uICVzIgorbXNnc3RyICIlcyBiYWzDrWt5IHYgc2VrY2kgJXMiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjkxCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzICVzIHBhY2thZ2VzIgorbXNnc3RyICIlcyAlcyBiYWzDrWt5IgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo5NQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyAlcyBwYWNrYWdlcyB3aXRob3V0IGEgc2VjdGlvbiIKK21zZ3N0ciAiJXMgJXMgYmV6IHV2ZWRlbsOpIHNla2NlIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo5NworIywgYy1mb3JtYXQKK21zZ2lkICIlcyAlcyBwYWNrYWdlcyBpbiBzZWN0aW9uICVzIgorbXNnc3RyICIlcyAlcyBiYWzDrWt5IHYgc2VrY2kgJXMiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjExOAorIywgYy1mb3JtYXQKK21zZ2lkICIlLSpzICVzJXMlczsgICVzICh3YXM6ICVzKS4gICVzIgorbXNnc3RyICIlLSpzICVzJXMlczsgJXMgKGJ5bG86ICVzKS4gJXMiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI2MworbXNnaWQgIkVycm9yIgorbXNnc3RyICJDaHliYSIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6MjY3Cittc2dpZCAiSW5zdGFsbGVkPyIKK21zZ3N0ciAiTmFpbnN0YWxvdsOhbj8iCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI3MQorbXNnaWQgIk9sZCBtYXJrIgorbXNnc3RyICJTdGFyw6Egem5hxI1rYSIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6Mjc1Cittc2dpZCAiTWFya2VkIGZvciIKK21zZ3N0ciAiT3puYcSNZW4gcHJvIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyNzgKK21zZ2lkICJFSU9NIgorbXNnc3RyICJFSU9NIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyODAKK21zZ2lkICJTZWN0aW9uIgorbXNnc3RyICJTZWtjZSIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6MjgxCittc2dpZCAiUHJpb3JpdHkiCittc2dzdHIgIlByaW9yaXRhIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyODIKK21zZ2lkICJQYWNrYWdlIgorbXNnc3RyICJCYWzDrWsiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI4NgorbXNnaWQgIkluc3QudmVyIgorbXNnc3RyICJJbnN0LnZlciIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6Mjg5Cittc2dpZCAiQXZhaWwudmVyIgorbXNnc3RyICJEb3N0dXAudmVyIgorCisjfiBtc2dpZCAicmV0dXJuZWQgZXJyb3IgZXhpdCBzdGF0dXMgJWQuXG4iCisjfiBtc2dzdHIgInZyw6F0aWwgY2h5Ym92w70gbsOhdnJhdG92w70ga8OzZCAlZC5cbiIKKworI34gbXNnaWQgIndhcyBpbnRlcnJ1cHRlZC5cbiIKKyN+IG1zZ3N0ciAiYnlsIHDFmWVydcWhZW4uXG4iCisKKyN+IG1zZ2lkICJ3YXMgdGVybWluYXRlZCBieSBhIHNpZ25hbDogJXMuXG4iCisjfiBtc2dzdHIgImJ5bCBwxZllcnXFoWVuIHNpZ27DoWxlbTogJXMuXG4iCisKKyN+IG1zZ2lkICIoSXQgbGVmdCBhIGNvcmVkdW1wLilcbiIKKyN+IG1zZ3N0ciAiKEJ5bCB6YW5lY2jDoW4gY29yZWR1bXAuKVxuIgorCisjfiBtc2dpZCAiZmFpbGVkIHdpdGggYW4gdW5rbm93biB3YWl0IHJldHVybiBjb2RlICVkLlxuIgorI34gbXNnc3RyICJzZWxoYWwgcyBuZXpuw6Ftw71tIG7DoXZyYXRvdsO9bSBrw7NkZW0gJWQgdm9sw6Fuw60gd2FpdC5cbiIKKworI34gbXNnaWQgInVuYWJsZSB0byBydW4gJS4yNTBzIHByb2Nlc3MgYCUuMjUwcyciCisjfiBtc2dzdHIgIm5lbHplIHNwdXN0aXQgJS4yNTBzIHByb2NlcyBgJS4yNTBzJyIKKworI34gbXNnaWQgImZhaWxlZCBjb25maWciCisjfiBtc2dzdHIgIm5lemRhxZllbsOhIGtvbmZpZ3VyYWNlIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHdhaXQgZm9yICUuMjUwcyIKKyN+IG1zZ3N0ciAibmVsemUgxI1la2F0IG5hICUuMjUwcyIKKworI34gbXNnaWQgImdvdCB3cm9uZyBjaGlsZCdzIHN0YXR1cyAtIGFza2VkIGZvciAlbGQsIGdvdCAlbGQiCisjfiBtc2dzdHIgIm9iZHLFvmVuIGNoeWJuw70gc3RhdHVzIHBvdG9ta2EgLSBieWxvIMW+w6Fkw6FubyAlbGQgYSBvYmRyxb5lbm8gJWxkIgorCisjfiBtc2dpZCAiUmVjb21tZW5kZWQiCisjfiBtc2dzdHIgIkRvcG9ydcSNZW7DqSIKKworI34gbXNnaWQgIkNvbnRyaWIiCisjfiBtc2dzdHIgIkRvZGF0ZcSNbsOpIgorCisjfiBtc2dpZCAiUmVjIgorI34gbXNnc3RyICJEb3AiCisKKyN+IG1zZ2lkICJDdGIiCisjfiBtc2dzdHIgIkRvZCIKKworI34gbXNnaWQgIiIKKyN+ICJiYXNlbGlzdDo6c3RhcnRkaXNwbGF5KCkgZG9uZSAuLi5cbiIKKyN+ICJcbiIKKyN+ICIgeG1heD0lZCwgeW1heD0lZDtcbiIKKyN+ICJcbiIKKyN+ICIgdGl0bGVfaGVpZ2h0PSVkLCBjb2xoZWFkc19oZWlnaHQ9JWQsIGxpc3RfaGVpZ2h0PSVkO1xuIgorI34gIiB0aGlzc3RhdGVfaGVpZ2h0PSVkLCBpbmZvX2hlaWdodD0lZCwgd2hhdGluZm9faGVpZ2h0PSVkO1xuIgorI34gIlxuIgorI34gIiBjb2xoZWFkc19yb3c9JWQsIHRoaXNzdGF0ZV9yb3c9JWQsIGluZm9fcm93PSVkO1xuIgorI34gIiB3aGF0aW5mb19yb3c9JWQsIGxpc3Rfcm93PSVkO1xuIgorI34gIlxuIgorI34gbXNnc3RyICIiCisjfiAiYmFzZWxpc3Q6OnN0YXJ0ZGlzcGxheSgpIHByb3ZlZGVubyAuLi5cbiIKKyN+ICJcbiIKKyN+ICIgeG1heD0lZCwgeW1heD0lZDtcbiIKKyN+ICJcbiIKKyN+ICIgdGl0bGVfaGVpZ2h0PSVkLCBjb2xoZWFkc19oZWlnaHQ9JWQsIGxpc3RfaGVpZ2h0PSVkO1xuIgorI34gIiB0aGlzc3RhdGVfaGVpZ2h0PSVkLCBpbmZvX2hlaWdodD0lZCwgd2hhdGluZm9faGVpZ2h0PSVkO1xuIgorI34gIlxuIgorI34gIiBjb2xoZWFkc19yb3c9JWQsIHRoaXNzdGF0ZV9yb3c9JWQsIGluZm9fcm93PSVkO1xuIgorI34gIiB3aGF0aW5mb19yb3c9JWQsIGxpc3Rfcm93PSVkO1xuIgorI34gIlxuIgorCisjfiBtc2dpZCAiW25vbmVdIgorI34gbXNnc3RyICJbbm9uZV0iCisKKyN+IG1zZ2lkICJlcnJvciB1bi1jYXRjaGluZyBzaWduYWwgJWQ6ICVzXG4iCisjfiBtc2dzdHIgImNoeWJhIHDFmWkgb2RzdHJhxYhvdsOhbsOtIHpwcmFjb3bDoW7DrSBzaWduw6FsdSAlZDogJXNcbiIKKworI34gbXNnaWQgInVuYWJsZSB0byBpZ25vcmUgc2lnbmFsICVkIGJlZm9yZSBydW5uaW5nICUuMjUwcyIKKyN+IG1zZ3N0ciAibmVsemUgaWdub3JvdmF0IHNpZ27DoWwgJWQgcMWZZWQgc3B1xaF0xJtuw61tICUuMjUwcyIKKworI34gbXNnaWQgIihubyBjbGllbnRkYXRhKSIKKyN+IG1zZ3N0ciAiKMW+w6FkbsOhIGtsaWVudHNrw6EgZGF0YSkiCisKKyN+IG1zZ2lkICI8bnVsbD4iCisjfiBtc2dzdHIgIjxudWxsPiIKKworI34gbXNnaWQgImludGVycmVsYXRpb25zaGlwcyBhZmZlY3RpbmcgIgorI34gbXNnc3RyICJ6w6F2aXNsb3N0aSBvdmxpdsWIdWrDrWPDrSAiCisKKyN+IG1zZ2lkICJkZXNjcmlwdGlvbiBvZiAiCisjfiBtc2dzdHIgInBvcGlzICIKKworI34gbXNnaWQgImRlc2NyaXB0aW9uIgorI34gbXNnc3RyICJwb3BpcyIKKworI34gbXNnaWQgImN1cnJlbnRseSBpbnN0YWxsZWQgY29udHJvbCBpbmZvIgorI34gbXNnc3RyICJpbmZvcm1hY2UgbyBha3R1w6FsbsSbIGluc3RhbG92YW7DvWNoIgorCisjfiBtc2dpZCAiYXZhaWxhYmxlIHZlcnNpb24gb2YgY29udHJvbCBpbmZvIGZvciAiCisjfiBtc2dzdHIgImluZm9ybWFjZSBvIGRvc3R1cG7DqSB2ZXJ6aSBwcm8gIgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL2RhLmdtbyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9kYS5nbW8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzAxMzU4ZQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9kYS5nbW8KQmluYXJ5IGZpbGVzIGRpZmZlcgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL2RhLnBvIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL2RhLnBvCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjI5YTgwZTMKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vZGEucG8KQEAgLTAsMCArMSwxNzMyIEBACisjIHRyYW5zbGF0aW9uIG9mIGRwa2dfMS4xMy45X2RhLnBvIHRvIERhbmlzaAorIyBEYW5pc2ggbWVzc2FnZXMgZm9yIERlYmlhbiBkcGtnCisjIENvcHlyaWdodCAoQykgMjAwNQorIworIyBDbGF1cyBIaW5kc2dhdWwgPGNsYXVzX2hAaW1hZ2UuZGs+LCAyMDAyLCAyMDA0LCAyMDA1LCAyMDA2LgorIyByZXZpZXdlZCBieSBPbGUgTGF1cnNlbiA8b2xhdUBoYXJkd29ya2luZy5kaz4sIDIwMDIuCisjIENsYXVzIEhpbmRzZ2F1bCA8Y2xhdXMuaGluZHNnYXVsQGdtYWlsLmNvbT4sIDIwMDYuCittc2dpZCAiIgorbXNnc3RyICIiCisiUHJvamVjdC1JZC1WZXJzaW9uOiBkcGtnXzEuMTAuMTlfZGFcbiIKKyJSZXBvcnQtTXNnaWQtQnVncy1UbzogZGViaWFuLWRwa2dAbGlzdHMuZGViaWFuLm9yZ1xuIgorIlBPVC1DcmVhdGlvbi1EYXRlOiAyMDExLTEwLTE0IDA3OjExKzAyMDBcbiIKKyJQTy1SZXZpc2lvbi1EYXRlOiAyMDA2LTEwLTA2IDE2OjMyKzAyMDBcbiIKKyJMYXN0LVRyYW5zbGF0b3I6IENsYXVzIEhpbmRzZ2F1bCA8Y2xhdXMuaGluZHNnYXVsQGdtYWlsLmNvbT5cbiIKKyJMYW5ndWFnZS1UZWFtOiBEYW5pc2hcbiIKKyJMYW5ndWFnZTogZGFcbiIKKyJNSU1FLVZlcnNpb246IDEuMFxuIgorIkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD1VVEYtOFxuIgorIkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXRcbiIKKyJYLUdlbmVyYXRvcjogS0JhYmVsIDEuMTEuNFxuIgorIlBsdXJhbC1Gb3JtczogIG5wbHVyYWxzPTI7IHBsdXJhbD0obiAhPSAxKTtcbiIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxMjUKK21zZ2lkICJTZWFyY2ggZm9yID8gIgorbXNnc3RyICJTw7hnIGVmdGVyID8gIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE0NworbXNnaWQgIkVycm9yOiAiCittc2dzdHIgIkZlamw6ICIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxNzgKK21zZ2lkICJIZWxwOiAiCittc2dzdHIgIkhqw6ZscDogIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE4NAorbXNnaWQgIlByZXNzID8gZm9yIGhlbHAgbWVudSwgLiBmb3IgbmV4dCB0b3BpYywgPHNwYWNlPiB0byBleGl0IGhlbHAuIgorbXNnc3RyICJUcnlrID8gZm9yIGhqw6ZscGVtZW51LCAuIGZvciBuw6ZzdGUgZW1uZSwgPG1lbGxlbXJ1bT4gYWZzbHV0dGVyIGhqw6ZscC4iCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MTkxCittc2dpZCAiSGVscCBpbmZvcm1hdGlvbiBpcyBhdmFpbGFibGUgdW5kZXIgdGhlIGZvbGxvd2luZyB0b3BpY3M6IgorbXNnc3RyICJIasOmbHBldGVrc3RlciBmb3IgZsO4bGdlbmRlIGVtbmVyIGVyIHRpbGfDpm5nZWxpZ2U6IgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE5OQorbXNnaWQgIiIKKyJQcmVzcyBhIGtleSBmcm9tIHRoZSBsaXN0IGFib3ZlLCA8c3BhY2U+IG9yIGBxJyB0byBleGl0IGhlbHAsXG4iCisiICBvciBgLicgKGZ1bGwgc3RvcCkgdG8gcmVhZCBlYWNoIGhlbHAgcGFnZSBpbiB0dXJuLiAiCittc2dzdHIgIiIKKyJUcnlrIGVuIHRhc3QgZnJhIG92ZW5zdMOlZW5kZSBsaXN0ZSwgPG1lbGxlbXJ1bT4gZWxsZXIncSBmb3IgYXQgYWZzbHV0dGVcbiIKKyIgIGhqw6ZscGVuIGVsbGVyIHB1bmt0dW0gZm9yIGF0IGzDpnNlIGhqw6ZscGVzaWRlcm5lIGVuIGFkIGdhbmdlbi4gIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjIwNQorbXNnaWQgImVycm9yIHJlYWRpbmcga2V5Ym9hcmQgaW4gaGVscCIKK21zZ3N0ciAiZmVqbCB2ZWQgbMOmc25pbmcgZnJhIHRhc3RhdHVyIGkgaGrDpmxwIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjU3Cittc2dpZCAiaW9jdGwoVElPQ0dXSU5TWikgZmFpbGVkIgorbXNnc3RyICJpb2N0bChUSU9DR1dJTlNaKSBmZWpsZWRlIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjYwCittc2dpZCAiZG91cGRhdGUgaW4gU0lHV0lOQ0ggaGFuZGxlciBmYWlsZWQiCittc2dzdHIgImRvdXBkYXRlIGkgU0lHV0lOQ0gtaMOlbmR0ZXJpbmcgZmVqbGVkZSIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo2NworbXNnaWQgImZhaWxlZCB0byByZXN0b3JlIG9sZCBTSUdXSU5DSCBzaWdhY3QiCittc2dzdHIgImt1bm5lIGlra2UgZ2Vuc2thYmUgZ2FtbWVsIFNJR1dJTkNIIHNpZ2FjdCIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo2OQorbXNnaWQgImZhaWxlZCB0byByZXN0b3JlIG9sZCBzaWduYWwgbWFzayIKK21zZ3N0ciAia3VubmUgaWtrZSBnZW5za2FiZSBnYW1tZWwgc2lnbmFsbWFza2UiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6NzkKK21zZ2lkICJmYWlsZWQgdG8gZ2V0IG9sZCBzaWduYWwgbWFzayIKK21zZ3N0ciAia3VubmUgaWtrZSBmw6UgZ2FtbWVsIHNpZ25hbG1hc2tlIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjgwCittc2dpZCAiZmFpbGVkIHRvIGdldCBvbGQgU0lHV0lOQ0ggc2lnYWN0IgorbXNnc3RyICJrdW5uZSBpa2tlIGbDpSBnYW1tZWwgU0lHV0lOQ0ggc2lnYWN0IgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjg0Cittc2dpZCAiZmFpbGVkIHRvIGJsb2NrIFNJR1dJTkNIIgorbXNnc3RyICJrdW5uZSBpa2tlIGJsb2tlcmUgU0lHV0lOQ0giCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6ODkKK21zZ2lkICJmYWlsZWQgdG8gc2V0IG5ldyBTSUdXSU5DSCBzaWdhY3QiCittc2dzdHIgImt1bm5lIGlra2Ugc8OmdHRlIG55IFNJR1dJTkNIIHNpZ2FjdCIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxMjYKK21zZ2lkICJmYWlsZWQgdG8gYWxsb2NhdGUgY29sb3VyIHBhaXIiCittc2dzdHIgImt1bm5lIGlra2UgZnJpZ8O4cmUgZmFydmVwYXIiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTY3Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSB0aXRsZSB3aW5kb3ciCittc2dzdHIgImt1bm5lIGlra2Ugb3ByZXR0ZSB0aXRlbHZpbmR1ZSIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxNzEKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHdoYXRpbmZvIHdpbmRvdyIKK21zZ3N0ciAia3VubmUgaWtrZSBvcHJldHRlIHdoYXRpbmZvLWZsaWciCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTc1Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBiYXNlbGlzdCBwYWQiCittc2dzdHIgImt1bm5lIGlra2Ugb3ByZXR0ZSBiYXNpc2xpc3RlLWZsaWciCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTc4Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBoZWFkaW5nIHBhZCIKK21zZ3N0ciAia3VubmUgaWtrZSBvcHJldHRlIG92ZXJza3JpZnRzLWZsaWciCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTgyCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSB0aGlzc3RhdGUgcGFkIgorbXNnc3RyICJrdW5uZSBpa2tlIG9wcmV0dGUgZGVubmVzdGF0dXMtZmxpZyIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxODYKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGluZm8gcGFkIgorbXNnc3RyICJrdW5uZSBpa2tlIG9wcmV0dGUgaW5mb2ZsaWciCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTkxCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBxdWVyeSB3aW5kb3ciCittc2dzdHIgImt1bm5lIGlra2Ugb3ByZXR0ZSBmb3Jlc3DDuHJnc2Vsc3ZpbmR1ZSIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoyNTUKKyMsIGZ1enp5Cittc2dpZCAiS2V5YmluZGluZ3MiCittc2dzdHIgInRhc3RlYmluZGluZ2VyIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjMwMworIywgYy1mb3JtYXQKK21zZ2lkICIgIC0tICVkJSUsIHByZXNzICIKK21zZ3N0ciAiICAtLSAlZCUlLCB0cnlrICIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzozMDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgZm9yIG1vcmUiCittc2dzdHIgIiVzIGZvciBtZXJlIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjMxMAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyB0byBnbyBiYWNrIgorbXNnc3RyICIlcyBmb3IgYXQgZ8OlIHRpbGJhZ2UiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6NzgKK21zZ2lkICJbbm90IGJvdW5kXSIKK21zZ3N0ciAiW2lra2UgYnVuZGV0XSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzo4MgorIywgYy1mb3JtYXQKK21zZ2lkICJbdW5rOiAlZF0iCittc2dzdHIgIlt1a2VuZHQ6ICVkXSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxMzkKK21zZ2lkICJTY3JvbGwgb253YXJkcyB0aHJvdWdoIGhlbHAvaW5mb3JtYXRpb24iCittc2dzdHIgIlJ1bCBmb3Jsw6ZucyBnZW5uZW0gaGrDpmxwL2luZm9ybWF0aW9uIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0MAorbXNnaWQgIlNjcm9sbCBiYWNrd2FyZHMgdGhyb3VnaCBoZWxwL2luZm9ybWF0aW9uIgorbXNnc3RyICJSdWwgYmFnbMOmbnMgZ2VubmVtIGhqw6ZscC9pbmZvcm1hdGlvbiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDEKK21zZ2lkICJNb3ZlIHVwIgorbXNnc3RyICJGbHl0IG9wYWQiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQyCittc2dpZCAiTW92ZSBkb3duIgorbXNnc3RyICJGbHl0IG5lZGFkIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0MworbXNnaWQgIkdvIHRvIHRvcCBvZiBsaXN0IgorbXNnc3RyICJHw6UgdGlsIHRvcHBlbiBhZiBsaXN0ZW4iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ0Cittc2dpZCAiR28gdG8gZW5kIG9mIGxpc3QiCittc2dzdHIgIkfDpSB0aWwgc2x1dG5pbmdlbiBhZiBsaXN0ZW4iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ1Cittc2dpZCAiUmVxdWVzdCBoZWxwIChjeWNsZSB0aHJvdWdoIGhlbHAgc2NyZWVucykiCittc2dzdHIgIkbDpSBoasOmbHAgKHNraWZ0IGhqw6ZscGVza8Omcm0pIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0NgorbXNnaWQgIkN5Y2xlIHRocm91Z2ggaW5mb3JtYXRpb24gZGlzcGxheXMiCittc2dzdHIgIlNraWZ0IGluZm9ybWF0aW9uc3Zpc25pbmciCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ3Cittc2dpZCAiUmVkcmF3IGRpc3BsYXkiCittc2dzdHIgIkdlbnRlZ24gc2vDpnJtIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0OAorbXNnaWQgIlNjcm9sbCBvbndhcmRzIHRocm91Z2ggbGlzdCBieSAxIGxpbmUiCittc2dzdHIgIlJ1bCAxIGxpbmplIHZpZGVyZSBpIGxpc3RlbiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDkKK21zZ2lkICJTY3JvbGwgYmFja3dhcmRzIHRocm91Z2ggbGlzdCBieSAxIGxpbmUiCittc2dzdHIgIlJ1bCAxIGxpbmplIGJhZ3VkIGkgbGlzdGVuIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1MAorbXNnaWQgIlNjcm9sbCBvbndhcmRzIHRocm91Z2ggaGVscC9pbmZvcm1hdGlvbiBieSAxIGxpbmUiCittc2dzdHIgIlJ1bCAxIGxpbmplIHZpZGVyZSBpIGhqw6ZscC9pbmZvcm1hdGlvbiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTEKK21zZ2lkICJTY3JvbGwgYmFja3dhcmRzIHRocm91Z2ggaGVscC9pbmZvcm1hdGlvbiBieSAxIGxpbmUiCittc2dzdHIgIlJ1bCAxIGxpbmplIGJhZ3VkIGkgaGrDpmxwL2luZm9ybWF0aW9uIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1MgorbXNnaWQgIlNjcm9sbCBvbndhcmRzIHRocm91Z2ggbGlzdCIKK21zZ3N0ciAiUnVsIHZpZGVyZSBpIGxpc3RlbiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTMKK21zZ2lkICJTY3JvbGwgYmFja3dhcmRzIHRocm91Z2ggbGlzdCIKK21zZ3N0ciAiUnVsIGJhZ2zDpm5zIGkgbGlzdGVuIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1NgorbXNnaWQgIk1hcmsgcGFja2FnZShzKSBmb3IgaW5zdGFsbGF0aW9uIgorbXNnc3RyICJNYXJrw6lyIHBha2tlKHIpIGZvciBpbnN0YWxsYXRpb24iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTU3Cittc2dpZCAiTWFyayBwYWNrYWdlKHMpIGZvciBkZWluc3RhbGxhdGlvbiIKK21zZ3N0ciAiTWFya8OpciBwYWtrZShyKSBmb3IgYWZpbnN0YWxsZXJpbmciCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTU4Cittc2dpZCAiTWFyayBwYWNrYWdlKHMpIGZvciBkZWluc3RhbGwgYW5kIHB1cmdlIgorbXNnc3RyICJNYXJrw6lyIHBha2tlKHIpIGZvciBhZmluc3RhbGxlcmluZyBvZyB1ZHJlbnNuaW5nIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1OQorbXNnaWQgIk1ha2UgaGlnaGxpZ2h0IG1vcmUgc3BlY2lmaWMiCittc2dzdHIgIkfDuHIgbWFya2VyaW5nIG1lcmUgc3BlY2lmaWsiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTYwCittc2dpZCAiTWFrZSBoaWdobGlnaHQgbGVzcyBzcGVjaWZpYyIKK21zZ3N0ciAiR8O4ciBtYXJrZXJpbmcgbWluZHJlIHNwZWNpZmlrIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2MQorbXNnaWQgIlNlYXJjaCBmb3IgYSBwYWNrYWdlIHdob3NlIG5hbWUgY29udGFpbnMgYSBzdHJpbmciCittc2dzdHIgIlPDuGcgZWZ0ZXIgZW4gcGFra2UsIGRlciBpbmRlaG9sZGVyIGVuIHN0cmVuZyIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjIKK21zZ2lkICJSZXBlYXQgbGFzdCBzZWFyY2guIgorbXNnc3RyICJHZW50YWcgc2lkc3RlIHPDuGduaW5nLiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjMKK21zZ2lkICJTd2FwIHNvcnQgb3JkZXIgcHJpb3JpdHkvc2VjdGlvbiIKK21zZ3N0ciAiU2tpZnQgc29ydGVyaW5nc3LDpmtrZWbDuGxnZS1wcmlvcml0ZXQvZ3J1cHBlIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2NAorbXNnaWQgIlF1aXQsIGNvbmZpcm1pbmcsIGFuZCBjaGVja2luZyBkZXBlbmRlbmNpZXMiCittc2dzdHIgIkFmc2x1dCBiZWtyw6ZmdGVuZGUsIG9nIHRqZWsgYWZow6ZuZ2lnaGVkZXIiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY1Cittc2dpZCAiUXVpdCwgY29uZmlybWluZyB3aXRob3V0IGNoZWNrIgorbXNnc3RyICJBZnNsdXQgYmVrcsOmZnRlbmRlLCB1ZGVuIHRqZWsiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY2Cittc2dpZCAiUXVpdCwgcmVqZWN0aW5nIGNvbmZsaWN0L2RlcGVuZGVuY3kgc3VnZ2VzdGlvbnMiCittc2dzdHIgIkFmc2x1dCwgYWZ2aXMga29uZmxpa3QvYWZow6ZuZ2lnaGVkcy1mb3JzbGFnIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2NworbXNnaWQgIkFib3J0IC0gcXVpdCB3aXRob3V0IG1ha2luZyBjaGFuZ2VzIgorbXNnc3RyICJBZmJyeWQgLSBhZnNsdXQgdWRlbiBhdCBsYXZlIMOmbmRyaW5nZXIiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY4Cittc2dpZCAiUmV2ZXJ0IHRvIG9sZCBzdGF0ZSBmb3IgYWxsIHBhY2thZ2VzIgorbXNnc3RyICJHZW5za2FiIHRpZGxpZ2VyZSBzdGF0dXMgZm9yIGFsbGUgcGFra2VyIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2OQorbXNnaWQgIlJldmVydCB0byBzdWdnZXN0ZWQgc3RhdGUgZm9yIGFsbCBwYWNrYWdlcyIKK21zZ3N0ciAiR2Vuc2thYiBmb3Jlc2zDpWV0IHN0YXR1cyBmb3IgYWxsZSBwYWtrZXIiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTcwCittc2dpZCAiUmV2ZXJ0IHRvIGRpcmVjdGx5IHJlcXVlc3RlZCBzdGF0ZSBmb3IgYWxsIHBhY2thZ2VzIgorbXNnc3RyICJHZW5za2FiIGRpcmVrdGUgYW5naXZldCBzdGF0dXMgZm9yIGFsbGUgcGFra2VyIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE3MQorIywgZnV6enkKK21zZ2lkICJSZXZlcnQgdG8gY3VycmVudGx5IGluc3RhbGxlZCBzdGF0ZSBmb3IgYWxsIHBhY2thZ2VzIgorbXNnc3RyICJHZW5za2FiIGRpcmVrdGUgYW5naXZldCBzdGF0dXMgZm9yIGFsbGUgcGFra2VyIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE3NAorbXNnaWQgIlNlbGVjdCBjdXJyZW50bHktaGlnaGxpZ2h0ZWQgYWNjZXNzIG1ldGhvZCIKK21zZ3N0ciAiVsOmbGcgZGVuIG1hcmtlcmVkZSBhZGdhbmdzbWV0b2RlIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE3NQorbXNnaWQgIlF1aXQgd2l0aG91dCBjaGFuZ2luZyBzZWxlY3RlZCBhY2Nlc3MgbWV0aG9kIgorbXNnc3RyICJBZnNsdXQgdWRlbiBhdCDDpm5kcmUgZGVuIHZhbGd0ZSBhZGdhbmdzbWV0b2RlIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjI5Cittc2dpZCAiS2V5c3Ryb2tlcyIKK21zZ3N0ciAiVGFzdGVyIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjI5CisjLCBmdXp6eQorbXNnaWQgIiIKKyJNb3Rpb24ga2V5czogTmV4dC9QcmV2aW91cywgVG9wL0VuZCwgVXAvRG93biwgQmFja3dhcmRzL0ZvcndhcmRzOlxuIgorIiAgaiwgRG93bi1hcnJvdyAgICAgICAgIGssIFVwLWFycm93ICAgICAgICAgICAgIG1vdmUgaGlnaGxpZ2h0XG4iCisiICBOLCBQYWdlLWRvd24sIFNwYWNlICAgUCwgUGFnZS11cCwgQmFja3NwYWNlICAgc2Nyb2xsIGxpc3QgYnkgMSBwYWdlXG4iCisiICBebiAgICAgICAgICAgICAgICAgICAgXnAgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGxpc3QgYnkgMSBsaW5lXG4iCisiICB0LCBIb21lICAgICAgICAgICAgICAgZSwgRW5kICAgICAgICAgICAgICAgICAganVtcCB0byB0b3AvZW5kIG9mIGxpc3RcbiIKKyIgIHUgICAgICAgICAgICAgICAgICAgICBkICAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyBieSAxIHBhZ2VcbiIKKyIgIF51ICAgICAgICAgICAgICAgICAgICBeZCAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyBieSAxIGxpbmVcbiIKKyIgIEIsIExlZnQtYXJyb3cgICAgICAgICBGLCBSaWdodC1hcnJvdyAgICAgICAgICBwYW4gZGlzcGxheSBieSAxLzMgc2NyZWVuXG4iCisiICBeYiAgICAgICAgICAgICAgICAgICAgXmYgICAgICAgICAgICAgICAgICAgICAgcGFuIGRpc3BsYXkgYnkgMSBjaGFyYWN0ZXJcbiIKKyJcbiIKKyJNYXJrIHBhY2thZ2VzIGZvciBsYXRlciBwcm9jZXNzaW5nOlxuIgorIiArLCBJbnNlcnQgIGluc3RhbGwgb3IgdXBncmFkZSAgICAgID0sIEggIGhvbGQgaW4gcHJlc2VudCBzdGF0ZVxuIgorIiAtLCBEZWxldGUgIHJlbW92ZSAgICAgICAgICAgICAgICAgIDosIEcgIHVuaG9sZDogdXBncmFkZSBvciBsZWF2ZSAiCisidW5pbnN0YWxsZWRcbiIKKyIgXyAgICAgICAgICByZW1vdmUgJiBwdXJnZSBjb25maWdcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBNaXNjZWxsYW5lb3VzOlxuIgorIlF1aXQsIGV4aXQsIG92ZXJ3cml0ZSAobm90ZSBjYXBpdGFscyEpOiAgICAgICA/LCBGMSByZXF1ZXN0IGhlbHAgKGFsc28gIgorIkhlbHApXG4iCisiIFJldHVybiAgQ29uZmlybSwgcXVpdCAoY2hlY2sgZGVwZW5kZW5jaWVzKSAgIGksIEkgIHRvZ2dsZS9jeWNsZSBpbmZvICIKKyJkaXNwbGF5c1xuIgorIiAgIFEgICAgIENvbmZpcm0sIHF1aXQgKG92ZXJyaWRlIGRlcC5zKSAgICAgICBvLCBPICBjeWNsZSB0aHJvdWdoIHNvcnQgIgorIm9wdGlvbnNcbiIKKyIgWCwgRXNjICBlWGl0LCBhYmFuZG9uaW5nIGFueSBjaGFuZ2VzIG1hZGUgICAgdiwgViAgY2hhbmdlIHN0YXR1cyBkaXNwbGF5ICIKKyJvcHRzXG4iCisiICAgUiAgICAgUmV2ZXJ0IHRvIHN0YXRlIGJlZm9yZSB0aGlzIGxpc3QgICAgICBebCAgIHJlZHJhdyBkaXNwbGF5XG4iCisiICAgVSAgICAgc2V0IGFsbCB0byBzVWdnZXN0ZWQgc3RhdGUgICAgICAgICAgICAgLyAgIHNlYXJjaCAoUmV0dXJuIHRvICIKKyJjYW5jZWwpXG4iCisiICAgRCAgICAgc2V0IGFsbCB0byBEaXJlY3RseSByZXF1ZXN0ZWQgc3RhdGUgIG4sIFxcICByZXBlYXQgbGFzdCBzZWFyY2hcbiIKK21zZ3N0ciAiIgorIkJldsOmZ2Vsc2VzdGFzdGVyOiBOw6ZzdGUvVGlkbGlnZXJlLCBUb3AvQnVuZCwgT3AvTmVkLCBCYWdsw6Zucy9Gb3Jsw6ZuczpcbiIKKyIgIFBpbC1uZWQsIGogICAgICAgICAgICBQaWwtb3AsIGsgICAgICAgICAgICAgICBGbHl0IG1hcmtlcmluZ1xuIgorIiAgTiwgUGdEbiwgbWVsbGVtcnVtICAgIFAsIFBnVXAsIHJldHRldGFzdCAgICAgIHJ1bCBsaXN0ZW4gMSBzaWRlXG4iCisiICBebiAgICAgICAgICAgICAgICAgICAgXnAgICAgICAgICAgICAgICAgICAgICAgcnVsIGxpc3RlbiAxIGxpbmplXG4iCisiICB0LCBIb21lICAgICAgICAgICAgICAgZSwgRW5kICAgICAgICAgICAgICAgICAgaG9wIHRpbCBzdGFydC9zbHV0bmluZyBhZiAiCisibGlzdGVcbiIKKyIgIHUgICAgICAgICAgICAgICAgICAgICBkICAgICAgICAgICAgICAgICAgICAgICBydWwgaW5mbyAxIHNpZGVcbiIKKyIgIF51ICAgICAgICAgICAgICAgICAgICBeZCAgICAgICAgICAgICAgICAgICAgICBydWwgaW5mbyAxIGxpbmplXG4iCisiICBCLCBQaWwtdmVuc3RyZSAgICAgICAgRiwgUGlsLWjDuGpyZSAgICAgICAgICAgIHBhbm9yw6lyIG1lZCAxLzMgYWYgIgorInNrw6ZybWJyZWRkZW5cbiIKKyIgIF5iICAgICAgICAgICAgICAgICAgICBeZiAgICAgICAgICAgICAgICAgICAgICBwYW5vcsOpciBtZWQgMSB0ZWduXG4iCisiXG4iCisiTWFya8OpciBwYWtrZXIgZm9yIHNlbmVyZSBiZWhhbmRsaW5nOlxuIgorIiArLCBJbmRzw6Z0LCBpbnN0YWxsw6lyIGVsLiBvcGdyYWTDqXIgID0sIEggIHRpbGJhZ2Vob2xkIGkgbnV2w6ZyZW5kZSBzdGF0dXNcbiIKKyIgLSwgU2xldCwgYWZpbnN0YWxsw6lyICAgICAgICAgICAgICAgOiwgRyAgZnJpZ8O4ciwgb3BncmFkw6lyIGVsbGVyIGZvcmJsaXYgIgorImlra2UtaW5zdGFsbGVyZXRcbiIKKyIgXyAgICBhZmluc3RhbGzDqXIgJiB1ZHJlbnMga29uZmlndXJhdGlvblxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEZvcnNrZWxsaWd0OlxuIgorIkFmc2x1dCwgYWZicnlkLCBvdmVyc2tyaXYgKGJlbcOmcmsgdmVyc2FsZXIhKTogPywgRjEgdmlzIGhqw6ZscCAob2dzw6UgSGVscClcbiIKKyIgUmV0dXIgICBCZWtyw6ZmdCwgYWZzbHV0ICh0amVrIGFmaMOmbmdpZ2hlZGVyKSBpLCBJICB2aXMvc2tpZnQgaW5mby0iCisidmlzbmluZ2VyXG4iCisiICAgUSAgICAgQmVrcsOmZnQsIGFmc2x1dCAodW5kZXJ0cnlrIGFmaC4pICAgICBvLCBPICBza2lmdCBzb3J0ZXJpbmdzdmFsZ1xuIgorIiBYLCBFc2MgIEFmYnJ5ZCB1ZGVuIGF0IGdlbm5lbWbDuHJlIMOmbmRyaW5nZXIgIHYsIFYgIHNraWZ0IHN0YXR1c3Zpc25pbmdcbiIKKyIgICBSICAgICBHZW5za2FiIHN0YXR1cyBmw7hyIGRlbm5lIGxpc3RlICAgICAgICBebCAgIGdlbnRlZ24gc2vDpnJtXG4iCisiICAgVSAgICAgc8OmdCBhbGxlIHRpbCBmb3Jlc2zDpWV0IHN0YXR1cyAgICAgICAgICAvICAgc8O4ZyAoUmV0dXIgZm9yIGF0ICIKKyJmb3J0cnlkZSlcbiIKKyIgICBEICAgICBzw6Z0IGFsbGUgdGlsIGRpcmVrdGUgw7huc2tldCBzdGF0dXMgICBuIFxcICBnZW50YWcgc2lkc3RlIHPDuGduaW5nXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6NTUKK21zZ2lkICJJbnRyb2R1Y3Rpb24gdG8gcGFja2FnZSBzZWxlY3Rpb25zIgorbXNnc3RyICJJbnRyb2R1a3Rpb24gdGlsIHBha2tldmFsZyIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo1NQorbXNnaWQgIiIKKyJXZWxjb21lIHRvIGRzZWxlY3QncyBtYWluIHBhY2thZ2UgbGlzdGluZy5cbiIKKyJcbiIKKyJZb3Ugd2lsbCBiZSBwcmVzZW50ZWQgd2l0aCBhIGxpc3Qgb2YgcGFja2FnZXMgd2hpY2ggYXJlIGluc3RhbGxlZCBvciAiCisiYXZhaWxhYmxlXG4iCisiZm9yIGluc3RhbGxhdGlvbi4gIFlvdSBjYW4gbmF2aWdhdGUgYXJvdW5kIHRoZSBsaXN0IHVzaW5nIHRoZSBjdXJzb3Iga2V5cyxcbiIKKyJtYXJrIHBhY2thZ2VzIGZvciBpbnN0YWxsYXRpb24gKHVzaW5nIGArJykgb3IgZGVpbnN0YWxsYXRpb24gKHVzaW5nIGAtJykuXG4iCisiUGFja2FnZXMgY2FuIGJlIG1hcmtlZCBlaXRoZXIgc2luZ2x5IG9yIGluIGdyb3VwczsgaW5pdGlhbGx5IHlvdSB3aWxsIHNlZSAiCisidGhhdFxuIgorInRoZSBsaW5lIGBBbGwgcGFja2FnZXMnIGlzIHNlbGVjdGVkLiAgYCsnLCBgLScgYW5kIHNvIG9uIHdpbGwgYWZmZWN0IGFsbCAiCisidGhlXG4iCisicGFja2FnZXMgZGVzY3JpYmVkIGJ5IHRoZSBoaWdobGlnaHRlZCBsaW5lLlxuIgorIlxuIgorIlNvbWUgb2YgeW91ciBjaG9pY2VzIHdpbGwgY2F1c2UgY29uZmxpY3RzIG9yIGRlcGVuZGVuY3kgcHJvYmxlbXM7IHlvdSB3aWxsICIKKyJiZVxuIgorImdpdmVuIGEgc3ViLWxpc3Qgb2YgdGhlIHJlbGV2YW50IHBhY2thZ2VzLCBzbyB0aGF0IHlvdSBjYW4gc29sdmUgdGhlICIKKyJwcm9ibGVtcy5cbiIKKyJcbiIKKyJZb3Ugc2hvdWxkIHJlYWQgdGhlIGxpc3Qgb2Yga2V5cyBhbmQgdGhlIGV4cGxhbmF0aW9ucyBvZiB0aGUgZGlzcGxheS5cbiIKKyJNdWNoIG9uLWxpbmUgaGVscCBpcyBhdmFpbGFibGUsIHBsZWFzZSBtYWtlIHVzZSBvZiBpdCAtIHByZXNzIGA/JyBhdFxuIgorImFueSB0aW1lIGZvciBoZWxwLlxuIgorIlxuIgorIldoZW4geW91IGhhdmUgZmluaXNoZWQgc2VsZWN0aW5nIHBhY2thZ2VzLCBwcmVzcyA8ZW50ZXI+IHRvIGNvbmZpcm0gIgorImNoYW5nZXMsXG4iCisib3IgYFgnIHRvIHF1aXQgd2l0aG91dCBzYXZpbmcgY2hhbmdlcy4gQSBmaW5hbCBjaGVjayBvbiBjb25mbGljdHMgYW5kXG4iCisiZGVwZW5kZW5jaWVzIHdpbGwgYmUgZG9uZSAtIGhlcmUgdG9vIHlvdSBtYXkgc2VlIGEgc3VibGlzdC5cbiIKKyJcbiIKKyJQcmVzcyA8c3BhY2U+IHRvIGxlYXZlIGhlbHAgYW5kIGVudGVyIHRoZSBsaXN0IG5vdy5cbiIKK21zZ3N0ciAiIgorIlZlbGtvbW1lbiB0aWwgZHNlbGVjdCdzIGhvdmVkcGFra2VsaXN0ZS5cbiIKKyJcbiIKKyJEdSB2aWwgYmxpdmUgcHLDpnNlbnRlcmV0IGZvciBlbiBsaXN0ZSBtZWQgaW5zdGFsbGVyZWRlIHBha2tlciBvZyBwYWtrZXIsICIKKyJkZXJcbiIKKyJlciB0aWxnw6ZuZ2VsaWdlIGZvciBpbnN0YWxsYXRpb24uIER1IGthbiBiZXbDpmdlIGRpZyBydW5kdCBpIGxpc3RlbiBtZWRcbiIKKyJwaWxldGFzdGVybmUsIG1hcmtlcmUgcGFra2VyIGZvciBpbnN0YWxsYXRpb24gKG1lZCAnKycpIGVsbGVyICIKKyJhZmluc3RhbGxhdGlvblxuIgorIihtZWQgJy0nKS4gUGFra2VybmUga2FuIGVudGVuIG1hcmtlcmVzIGVua2VsdHZpc3QgZWxsZXIgaSBncnVwcGVyLiBGcmEgIgorInN0YXJ0ZW5cbiIKKyJ2aWwgZHUgYmVtw6Zya2UsIGF0IGxpbmplbiAnQWxsZSBwYWtrZXInIGVyIHZhbGd0LiAnKycsICctJyBvc3YuIHZpbCBiZXLDuHJlXG4iCisiYWxsZSBwYWtrZXJuZSwgZGVyIGJlc2tyaXZlcyBhZiBkZW4gbWFya2VyZWRlIGxpbmplLlxuIgorIlxuIgorIk5vZ2xlIGFmIGRpbmUgdmFsZyB2aWwgZ2l2ZSBrb25mbGlrdGVyIG9nIGFmaMOmbmdpZ2hlZHNwcm9ibGVtZXIuIER1IHZpbCBkYSAiCisiZsOlXG4iCisiZW4gZGVsbGlzdGUgbWVkIGRlIHJlbGV2YW50ZSBwYWtrZXIsIHPDpSBkdSBrYW4gdWRyZWRlIHByb2JsZW1lcm5lLlxuIgorIlxuIgorIkR1IGLDuHIgbMOmc2UgbGlzdGVuIG1lZCB0YXN0ZXIgb2cgZm9ya2xhcmluZ2VybmUgcMOlIGRldCB2aXN0ZS5cbiIKKyJEZXIgZXIgZW4gZGVsIHNrw6ZybWhqw6ZscCB0aWwgcsOlZGlnaGVkLiBCcnVnIGRlbiBlbmRlbGlnIC0gdHJ5ayAnPydcbiIKKyJ0aWwgaHZlciBlbiB0aWQgZm9yIGF0IGbDpSBoasOmbHAuXG4iCisiXG4iCisiTsOlciBkdSBoYXIgZm9yZXRhZ2V0IGRpbmUgdmFsZywga2FuIGR1IHRyeWtrZSA8cmV0dXI+IGZvciBhdCBiZWtyw6ZmdGUgZGluZVxuIgorIsOmbmRyaW5nZXIgZWxsZXIgJ1gnIGZvciBhdCBhZmJyeWRlIHVkZW4gYXQgZ2VtbWUgw6ZuZHJpbmdlcm5lLiBFdFxuIgorImVuZGVsaWd0IHRqZWsgZm9yIGtvbmZsaWt0ZXIgb2cgYWZow6ZuZ2lnaGVkZXIgdmlsIGJsaXZlIGZvcmV0YWdldFxuIgorIiAtIGhlciBrYW4gZHUgaWdlbiBrb21tZSB1ZCBmb3IgYXQgZsOlIGVuIGRlbGxpc3RlLlxuIgorIlxuIgorIlRyeWsgbWVsbGVtcnVtIGZvciBhdCBmb3JsYWRlIGhqw6ZscGVuIG9nIGfDpSB0aWwgbGlzdGVuLlxuIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjgwCittc2dpZCAiSW50cm9kdWN0aW9uIHRvIHJlYWQtb25seSBwYWNrYWdlIGxpc3QgYnJvd3NlciIKK21zZ3N0ciAiSW50cm9kdWt0aW9uIHRpbCBza3JpdmViZXNreXR0ZXQgcGFra2VsaXN0ZS1zw7hnZXIiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6ODAKK21zZ2lkICIiCisiV2VsY29tZSB0byBkc2VsZWN0J3MgbWFpbiBwYWNrYWdlIGxpc3RpbmcuXG4iCisiXG4iCisiWW91IHdpbGwgYmUgcHJlc2VudGVkIHdpdGggYSBsaXN0IG9mIHBhY2thZ2VzIHdoaWNoIGFyZSBpbnN0YWxsZWQgb3IgIgorImF2YWlsYWJsZVxuIgorImZvciBpbnN0YWxsYXRpb24uICBTaW5jZSB5b3UgZG8gbm90IGhhdmUgdGhlIHByaXZpbGVnZSBuZWNlc3NhcnkgdG8gdXBkYXRlXG4iCisicGFja2FnZSBzdGF0ZXMsIHlvdSBhcmUgaW4gYSByZWFkLW9ubHkgbW9kZS4gIFlvdSBjYW4gbmF2aWdhdGUgYXJvdW5kIHRoZVxuIgorImxpc3QgdXNpbmcgdGhlIGN1cnNvciBrZXlzIChwbGVhc2Ugc2VlIHRoZSBgS2V5c3Ryb2tlcycgaGVscCBzY3JlZW4pLCAiCisib2JzZXJ2ZVxuIgorInRoZSBzdGF0dXMgb2YgdGhlIHBhY2thZ2VzIGFuZCByZWFkIGluZm9ybWF0aW9uIGFib3V0IHRoZW0uXG4iCisiXG4iCisiWW91IHNob3VsZCByZWFkIHRoZSBsaXN0IG9mIGtleXMgYW5kIHRoZSBleHBsYW5hdGlvbnMgb2YgdGhlIGRpc3BsYXkuXG4iCisiTXVjaCBvbi1saW5lIGhlbHAgaXMgYXZhaWxhYmxlLCBwbGVhc2UgbWFrZSB1c2Ugb2YgaXQgLSBwcmVzcyBgPycgYXRcbiIKKyJhbnkgdGltZSBmb3IgaGVscC5cbiIKKyJcbiIKKyJXaGVuIHlvdSBoYXZlIGZpbmlzaGVkIGJyb3dzaW5nLCBwcmVzcyBgUScgb3IgPGVudGVyPiB0byBxdWl0LlxuIgorIlxuIgorIlByZXNzIDxzcGFjZT4gdG8gbGVhdmUgaGVscCBhbmQgZW50ZXIgdGhlIGxpc3Qgbm93LlxuIgorbXNnc3RyICIiCisiVmVsa29tbWVuIHRpbCBkc2VsZWN0J3MgaG92ZWQtcGFra2VsaXN0ZS5cbiIKKyJcbiIKKyIgRHUgdmlsIGJsaXZlIHByw6ZzZW50ZXJldCBtZWQgZW4gbGlzdGUgb3ZlciBwYWtrZXIsIGRlciBlciBpbnN0YWxsZXJlZGUgIgorImVsbGVyXG4iCisidGlsZ8OmbmdlbGlnZSBmb3IgaW5zdGFsbGF0aW9uLiBTaWRlbiBkdSBpa2tlIGhhciBkZSBuw7hkdmVuZGlnZSByZXR0aWdoZWRlclxuIgorInRpbCBhdCBvcGRhdGVyZSBwYWtrZXN0YXR1cywgZXIgZHUgaSBza3JpdmViZXNreXR0ZXQgdGlsc3RhbmQuIER1IGthblxuIgorImJldsOmZ2UgZGlnIHJ1bmR0IGkgbGlzdGVuIG1lZCBwaWxlc3RhdGVybmUgKHNlIGhqw6ZscGVza8Omcm1lbiAnVGFzdGVyJylcbiIKKyIobsO4amFndGlnIHNvbSBodmlzIHZpbGxlLCBodmlzIGR1IGhhdmRlIHNrcml2ZWFkZ2FuZyAtIHNlIGhqw6ZscGVza8Omcm1lblxuIgorIidUYXN0ZXInKSBvZyBzZSBzdGF0dXMgZm9yIHBha2tlcm5lIHNhbXQgb3BseXNuaW5nZXIgb20gZGVtLlxuIgorIlxuIgorIkR1IGLDuHIgbMOmc2UgbGlzdGVuIG1lZCB0YXN0ZXIgb2cgYmVza3JpdmVsc2VybmUgYWYgdmlzbmluZ2VybmUuXG4iCisiRGVyIGVyIG1lZ2VuIHRpbGfDpm5nZWxpZyBoasOmbHAsIGJydWcgZGVuIGVuZGVsaWchIFRyeWsgdGlsIGVuaHZlciB0aWQgJz8nXG4iCisiZm9yIGhqw6ZscC5cbiIKKyJcbiIKKyJUcnlrICdRJyBlbGxlciA8cmV0dXI+IGZvciBhdCBhZnNsdXR0ZSwgbsOlciBkdSBlciBmw6ZyZGlnIG1lZCBhdCBibGFkcmUuXG4iCisiXG4iCisiVHJ5ayA8bWVsbGVtcnVtPiBmb3IgYXQgZm9ybGFkZSBoasOmbHBlbiBvZyBnw6UgdGlsIGxpc3RlbiBudS5cbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo5OQorbXNnaWQgIkludHJvZHVjdGlvbiB0byBjb25mbGljdC9kZXBlbmRlbmN5IHJlc29sdXRpb24gc3ViLWxpc3QiCittc2dzdHIgIkludHJvZHVrdGlvbiB0aWwga29uZmxpa3QvYWZow6ZuZ2lnaGVkc2zDuHNuaW5ncy1kZWxsaXN0ZW4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6OTkKK21zZ2lkICIiCisiRGVwZW5kZW5jeS9jb25mbGljdCByZXNvbHV0aW9uIC0gaW50cm9kdWN0aW9uLlxuIgorIlxuIgorIk9uZSBvciBtb3JlIG9mIHlvdXIgY2hvaWNlcyBoYXZlIHJhaXNlZCBhIGNvbmZsaWN0IG9yIGRlcGVuZGVuY3kgcHJvYmxlbSAtXG4iCisic29tZSBwYWNrYWdlcyBzaG91bGQgb25seSBiZSBpbnN0YWxsZWQgaW4gY29uanVuY3Rpb24gd2l0aCBjZXJ0YWluIG90aGVycywgIgorImFuZFxuIgorInNvbWUgY29tYmluYXRpb25zIG9mIHBhY2thZ2VzIG1heSBub3QgYmUgaW5zdGFsbGVkIHRvZ2V0aGVyLlxuIgorIlxuIgorIllvdSB3aWxsIHNlZSBhIHN1Yi1saXN0IGNvbnRhaW5pbmcgdGhlIHBhY2thZ2VzIGludm9sdmVkLiAgVGhlIGJvdHRvbSBoYWxmICIKKyJvZlxuIgorInRoZSBkaXNwbGF5IHNob3dzIHJlbGV2YW50IGNvbmZsaWN0cyBhbmQgZGVwZW5kZW5jaWVzOyB1c2UgYGknIHRvIGN5Y2xlICIKKyJiZXR3ZWVuXG4iCisidGhhdCwgdGhlIHBhY2thZ2UgZGVzY3JpcHRpb25zIGFuZCB0aGUgaW50ZXJuYWwgY29udHJvbCBpbmZvcm1hdGlvbi5cbiIKKyJcbiIKKyJBIHNldCBvZiBgc3VnZ2VzdGVkJyBwYWNrYWdlcyBoYXMgYmVlbiBjYWxjdWxhdGVkLCBhbmQgdGhlIGluaXRpYWwgbWFya2luZ3MgIgorImluXG4iCisidGhpcyBzdWItbGlzdCBoYXZlIGJlZW4gc2V0IHRvIG1hdGNoIHRob3NlLCBzbyB5b3UgY2FuIGp1c3QgaGl0IFJldHVybiB0b1xuIgorImFjY2VwdCB0aGUgc3VnZ2VzdGlvbnMgaWYgeW91IHdpc2guICBZb3UgbWF5IGFib3J0IHRoZSBjaGFuZ2Uocykgd2hpY2ggIgorImNhdXNlZFxuIgorInRoZSBwcm9ibGVtKHMpLCBhbmQgZ28gYmFjayB0byB0aGUgbWFpbiBsaXN0LCBieSBwcmVzc2luZyBjYXBpdGFsIGBYJy5cbiIKKyJcbiIKKyJZb3UgY2FuIGFsc28gbW92ZSBhcm91bmQgdGhlIGxpc3QgYW5kIGNoYW5nZSB0aGUgbWFya2luZ3Mgc28gdGhhdCB0aGV5IGFyZSAiCisibW9yZVxuIgorImxpa2Ugd2hhdCB5b3Ugd2FudCwgYW5kIHlvdSBjYW4gYHJlamVjdCcgbXkgc3VnZ2VzdGlvbnMgYnkgdXNpbmcgdGhlICIKKyJjYXBpdGFsXG4iCisiYEQnIG9yIGBSJyBrZXlzIChzZWUgdGhlIGtleWJpbmRpbmdzIGhlbHAgc2NyZWVuKS4gIFlvdSBjYW4gdXNlIGNhcGl0YWwgYFEnICIKKyJ0b1xuIgorImZvcmNlIG1lIHRvIGFjY2VwdCB0aGUgc2l0dWF0aW9uIGN1cnJlbnRseSBkaXNwbGF5ZWQsIGluIGNhc2UgeW91IHdhbnQgdG9cbiIKKyJvdmVycmlkZSBhIHJlY29tbWVuZGF0aW9uIG9yIHRoaW5rIHRoYXQgdGhlIHByb2dyYW0gaXMgbWlzdGFrZW4uXG4iCisiXG4iCisiUHJlc3MgPHNwYWNlPiB0byBsZWF2ZSBoZWxwIGFuZCBlbnRlciB0aGUgc3ViLWxpc3Q7IHJlbWVtYmVyOiBwcmVzcyBgPycgZm9yICIKKyJoZWxwLlxuIgorbXNnc3RyICIiCisiS29uZmxpa3QvYWZow6ZuZ2lnaGVkc2zDuHNuaW5nIC0gaW50cm9kdWt0aW9uLlxuIgorIlxuIgorIkV0IGVsbGVyIGZsZXJlIGFmIGRpbmUgdmFsZyBoYXIgdWRsw7hzdCBlbiBrb25mbGlrdCBlbGxlciBhZmjDpm5naWdoZWRzcHJvYmxlbSAiCisiLVxuIgorIm5vZ2xlIHBha2tlciBiw7hyIGt1biBpbnN0YWxsZXJlcyBzYW1tZW4gbWVkIHZpc3NlIGFuZHJlLCBtZW5zIHZpc3NlIHBha2tlLVxuIgorImtvbWJpbmF0aW9uZXIgaWtrZSBrYW4gZWtzaXN0ZXJlIHNhbW1lbi5cbiIKKyJcbiIKKyJEdSB2aWwgc2UgZW4gZGVsbGlzdGUgbWVkIGRlIGludm9sdmVyZWRlIHBha2tlci4gRGVuIG5lZGVyc3RlIGhhbHZkZWwgYWZcbiIKKyJza8Omcm1lbiB2aXNlciBkZSByZWxldmFudGUga29uZmxpa3RlciBvZyBhZmjDpm5naWdoZWRlcjsgYnJ1ZyAnaScgZm9yIGF0ICIKKyJza2lmdGVcbiIKKyJtZWxsZW0gZGVubmUsIHBha2tlYmVza3JpdmVsc2VybmUgb2cgaW50ZXJuIGtvbnRyb2xpbmZvcm1hdGlvbi5cbiIKKyJcbiIKKyJEZXIgZXIgYmVyZWduZXQgZXQgc8OmdCAnZm9yZXNsw6VlZGUnIHBha2tlciwgb2cgZGUgaW5kbGVkZW5kZSBtYXJrZXJpbmdlciBpXG4iCisiZGVubmUgZGVsbGlzdGUgZXIgc2F0IGVmdGVyIGRldHRlLCBzw6UgZHUga2FuIGJsb3QgdHJ5a2tlIDxyZXR1cj4gZm9yIGF0XG4iCisiYWNjZXB0ZXJlIGZvcnNsYWdlbmUsIGh2aXMgZHUgdmlsLiBEdSBrYW4gdHLDpmtrZSBkZSB2YWxnLCBkZXIgZ2F2ICIKKyJwcm9ibGVtZXJuZSxcbiIKKyJ0aWxiYWdlLCBvZyByZXR1cm5lcmUgdGlsIGhvdmVkbGlzdGVuIHZlZCBhdCB0cnlra2Ugc2tpZnQtJ1gnLlxuIgorIlxuIgorIkR1IGthbiBvZ3PDpSBiZXbDpmdlIGRpZyBydW5kdCBpIGxpc3RlbiBvZyDDpm5kcmUgbWFya2VyaW5nZXJuZSBzw6VsZWRlcyBhdCBkZVxuIgorInN2YXJlciBtZXJlIHRpbCBkaW5lIMO4bnNrZXIsIG9nIGR1IGthbiAnYWZ2aXNlJyBtaW5lIGZvcnNsYWcgdmVkIGF0IGJydWdlXG4iCisic2tpZnQtJ0QnIGVsbGVyIHNraWZ0LSdSJyAoc2UgaGrDpmxwZXNrw6ZybWVuICdUYXN0ZXInKS4gRHUga2FuIGJydWdlICIKKyJza2lmdC0nUSdcbiIKKyJmb3IgYXQgZ2VubmVtdHZpbmdlIGRlIGFrdHVlbHQgdmlzdGUgdmFsZywgc8OlZnJlbXQgZHUgdmlsIHRpbHNpZGVzw6Z0dGVcbiIKKyJmb3JzbGFnZXQgb2cgbWVuZXIsIGF0IHByb2dyYW1tZXQgdGFnZXIgZmVqbC5cbiIKKyJcbiIKKyJUcnlrIG1lbGxlbXJ1bSBmb3IgYXQgZm9ybGFkZSBoasOmbHAgb2cgZ8OlIHRpbCBkZWxsaXN0ZW4uIEh1c2s6Jz8nIGZvciAiCisiaGrDpmxwLlxuIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjEyNQorbXNnaWQgIkRpc3BsYXksIHBhcnQgMTogcGFja2FnZSBsaXN0aW5nIGFuZCBzdGF0dXMgY2hhcnMiCittc2dzdHIgIlZpc25pbmcsIGRlbCAxOiBwYWtrZWxpc3RlIG9nIHN0YXR1c3RlZ24iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTI1CisjLCBmdXp6eQorbXNnaWQgIiIKKyJUaGUgdG9wIGhhbGYgb2YgdGhlIHNjcmVlbiBzaG93cyBhIGxpc3Qgb2YgcGFja2FnZXMuICBGb3IgZWFjaCBwYWNrYWdlIHlvdSAiCisic2VlXG4iCisiZm91ciBjb2x1bW5zIGZvciBpdHMgY3VycmVudCBzdGF0dXMgb24gdGhlIHN5c3RlbSBhbmQgbWFyay4gIEluIHRlcnNlIG1vZGUgIgorIih1c2VcbiIKKyJgdicgdG8gdG9nZ2xlIHZlcmJvc2UgZGlzcGxheSkgdGhlc2UgYXJlIHNpbmdsZSBjaGFyYWN0ZXJzLCBmcm9tIGxlZnQgdG8gIgorInJpZ2h0OlxuIgorIlxuIgorIiBFcnJvciBmbGFnOiBTcGFjZSAtIG5vIGVycm9yIChidXQgcGFja2FnZSBtYXkgYmUgaW4gYnJva2VuIHN0YXRlIC0gc2VlICIKKyJiZWxvdylcbiIKKyIgICAgICAgICAgICAgIGBSJyAgLSBzZXJpb3VzIGVycm9yIGR1cmluZyBpbnN0YWxsYXRpb24sIG5lZWRzICIKKyJyZWluc3RhbGxhdGlvbjtcbiIKKyIgSW5zdGFsbGVkIHN0YXRlOiAgICAgU3BhY2UgICAgLSBub3QgaW5zdGFsbGVkO1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgYConICAgICAtIGluc3RhbGxlZDtcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgIGAtJyAgICAgLSBub3QgaW5zdGFsbGVkIGJ1dCBjb25maWcgZmlsZXMgcmVtYWluO1xuIgorIiAgIHBhY2thZ2VzIGluIHRoZXNlIHsgYFUnICAgICAtIHVucGFja2VkIGJ1dCBub3QgeWV0IGNvbmZpZ3VyZWQ7XG4iCisiICAgc3RhdGVzIGFyZSBub3QgICAgeyBgQycgICAgIC0gaGFsZi1jb25maWd1cmVkIChhbiBlcnJvciBoYXBwZW5lZCk7XG4iCisiICAgKHF1aXRlKSBwcm9wZXJseSAgeyBgSScgICAgIC0gaGFsZi1pbnN0YWxsZWQgKGFuIGVycm9yIGhhcHBlbmVkKTtcbiIKKyIgICBpbnN0YWxsZWQgICAgICAgICB7IGBXJyxgdCcgLSB0cmlnZ2VycyBhcmUgYXdhaXRlZCByZXNwLiBwZW5kaW5nLlxuIgorIiBPbGQgbWFyazogd2hhdCB3YXMgcmVxdWVzdGVkIGZvciB0aGlzIHBhY2thZ2UgYmVmb3JlIHByZXNlbnRpbmcgdGhpcyBsaXN0O1xuIgorIiBNYXJrOiB3aGF0IGlzIHJlcXVlc3RlZCBmb3IgdGhpcyBwYWNrYWdlOlxuIgorIiAgYConOiBtYXJrZWQgZm9yIGluc3RhbGxhdGlvbiBvciB1cGdyYWRlO1xuIgorIiAgYC0nOiBtYXJrZWQgZm9yIHJlbW92YWwsIGJ1dCBhbnkgY29uZmlndXJhdGlvbiBmaWxlcyB3aWxsIHJlbWFpbjtcbiIKKyIgIGA9Jzogb24gaG9sZDogcGFja2FnZSB3aWxsIG5vdCBiZSBwcm9jZXNzZWQgYXQgYWxsO1xuIgorIiAgYF8nOiBtYXJrZWQgZm9yIHB1cmdlIGNvbXBsZXRlbHkgLSBldmVuIHJlbW92ZSBjb25maWd1cmF0aW9uO1xuIgorIiAgYG4nOiBwYWNrYWdlIGlzIG5ldyBhbmQgaGFzIHlldCB0byBiZSBtYXJrZWQgZm9yIGluc3RhbGwvcmVtb3ZlLyZjLlxuIgorIlxuIgorIkFsc28gZGlzcGxheWVkIGFyZSBlYWNoIHBhY2thZ2UncyBQcmlvcml0eSwgU2VjdGlvbiwgbmFtZSwgaW5zdGFsbGVkIGFuZFxuIgorImF2YWlsYWJsZSB2ZXJzaW9uIG51bWJlcnMgKHNoaWZ0LVYgdG8gZGlzcGxheS9oaWRlKSBhbmQgc3VtbWFyeSAiCisiZGVzY3JpcHRpb24uXG4iCittc2dzdHIgIiIKKyJEZW4gw7h2ZXJzdGUgaGFsdmRlbCBhZiBza8Omcm1lbiB2aXNlciBlbiBsaXN0ZSBvdmVyIHBha2tlcm5lLiBGb3IgaHZlciBwYWtrZSAiCisic2VyXG4iCisiZHUgZmlyZSBzw7hqbGVyIGZvciBkZW5zIGFrdHVlbGxlIHN0YXR1cyBww6Ugc3lzdGVtIG9nIG1hcmsuIEkgZGV0YWxqZXJldCAiCisidmlzbmluZ1xuIgorIihicnVnICd2JyB0aWwgYXQgc2tpZnRlIGRldGFsamVyaW5nKSBlciBkaXNzZSBlbmtlbHR0ZWduIGZyYSB2ZW5zdHJlIHRpbCAiCisiaMO4anJlOlxuIgorIlxuIgorIiAgRmVqbGZsYWc6IE1lbGxlbXJ1bSAtIGluZ2VuIGZlamwgKG1lbiBwYWtrZW4ga2FuIHbDpnJlIMO4ZGVsYWd0IC0gc2UgIgorIm5lZGVuZm9yKVxuIgorIiAgICAgICAgICAgICAgJ1InICAtIGFsdm9ybGlnIGZlamwgdW5kZXIgaW5zdGFsbGF0aW9uLCBrcsOmdmVyICIKKyJnZW5pbnN0YWxsYXRpb25cbiIKKyIgSW5zdGFsLnN0YXR1czogTWVsbGVtcnVtIC0gaWtrZSBpbnN0YWxsZXJldFxuIgorIiAgICAgICAgICAgICAgICAgICAgICcqJyAgLSBpbnN0YWxsZXJldFxuIgorIiAgICAgICAgICAgICAgICAgICAgICctJyAgLSBpa2tlIGluc3RhbGxlcmV0LCBtZW4ga29uZmlndXJhdGlvbnNmaWxlciAiCisiYmVob2xkdFxuIgorIiAgICAgICBwYWtrZXIgaSAgICB7ICdVJyAgLSB1ZHBha2tldCwgbWVuIGVuZG51IGlra2Uga29uZmlndXJlcmV0XG4iCisiICAgZGlzc2UgdGlsc3RhbmRlIHsgJ0MnICAtIGhhbHZ0IGtvbmZpZ3VyZXJldCAoZGVyIHNrZXRlIGVuIGZlamwpXG4iCisiICAgICAgZXIgw7hkZWxhZ3RlICB7ICdJJyAgLSBoYWx2dCBpbnN0YWxsZXJldCAoZGVyIHNrZXRlIGVuIGZlamwpXG4iCisiIEdhbW1lbHQgbcOmcmtlOiBkZXQsIGRlciBwbGFubGFnZGVzIGZvciBkZW5uZSBwYWtrZXIgaW5kZW4gZGVubmUgbGlzdGVcbiIKKyIgTcOmcmtlOiBkZXQsIGVyIHBsYW5sw6ZnZ2VzIGZvciBkZW5uZSBwYWtrZVxuIgorIiAgJyonOiBtYXJrZXJldCBmb3IgaW5zdGFsbGF0aW9uIGVsbGVyIG9wZ3JhZGVyaW5nXG4iCisiICAnLSc6IG1hcmtlcmV0IGZvciBhZmluc3RhbGxhdGlvbiwgbWVuIGtvbmZpZ3VyYXRpb25zZmlsZXIgYmVzdMOlclxuIgorIiAgJz0nOiBob2xkZXMgdGlsYmFnZSwgcGFra2VuIHZpbCBpa2tlIGJsaXZlIMOmbmRyZXRcbiIKKyIgICdfJzogbWFya2VyZXQgZm9yIGtvbXBsZXQgdWRyZW5zbmluZyAtIHNlbHYga29uZmlndXJhdGlvbnNmaWxlciBzbGV0dGVzXG4iCisiICAnbic6IHBha2tlbiBlciBueSBvZyBtYW5nbGVyIGF0IGJsaXZlIG1hcmtlcmV0IGZvciBpbnN0YWxsYXRpb24vIgorImFmaW5zdGFsbGF0aW9uLyZjLlxuIgorIlxuIgorIk9nc8OlIGh2ZXIgcGFra2VzIHByaW9yaXRldCwgZ3J1cHBlLCBuYXZuLCB2ZXJzaW9uc251bXJlIGZvciBpbnN0YWxsZXJldCBvZ1xuIgorInRpbGfDpm5nZWxpZyB2ZXJzaW9uIChza2lmdC1WIGZvciB2aXMvc2tqdWwpIG9nIGtvcnQgYmVza3JpdmVsc2UgdmlzZXMuXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTUyCittc2dpZCAiRGlzcGxheSwgcGFydCAyOiBsaXN0IGhpZ2hsaWdodDsgaW5mb3JtYXRpb24gZGlzcGxheSIKK21zZ3N0ciAiVmlzbmluZywgZGVsIDI6IGxpc3RlbWFya2VyaW5nLCBpbmZvcm1hdGlvbnN2aXNuaW5nIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjE1MgorbXNnaWQgIiIKKyIqIEhpZ2hsaWdodDogT25lIGxpbmUgaW4gdGhlIHBhY2thZ2UgbGlzdCB3aWxsIGJlIGhpZ2hsaWdodGVkLiAgSXQgIgorImluZGljYXRlc1xuIgorIiAgd2hpY2ggcGFja2FnZShzKSB3aWxsIGJlIGFmZmVjdGVkIGJ5IHByZXNzZXMgb2YgYCsnLCBgLScgYW5kIGBfJy5cbiIKKyJcbiIKKyIqIFRoZSBkaXZpZGluZyBsaW5lIGluIHRoZSBtaWRkbGUgb2YgdGhlIHNjcmVlbiBzaG93cyBhIGJyaWVmIGV4cGxhbmF0aW9uICIKKyJvZlxuIgorIiAgdGhlIHN0YXR1cyBvZiB0aGUgY3VycmVudGx5LWhpZ2hsaWdodGVkIHBhY2thZ2UsIG9yIGEgZGVzY3JpcHRpb24gb2YgIgorIndoaWNoXG4iCisiICBncm91cCBpcyBoaWdobGlnaHRlZCBpZiBhIGdyb3VwIGxpbmUgaXMuICBJZiB5b3UgZG9uJ3QgdW5kZXJzdGFuZCB0aGVcbiIKKyIgIG1lYW5pbmcgb2Ygc29tZSBvZiB0aGUgc3RhdHVzIGNoYXJhY3RlcnMgZGlzcGxheWVkLCBnbyB0byB0aGUgcmVsZXZhbnRcbiIKKyIgIHBhY2thZ2UgYW5kIGxvb2sgYXQgdGhpcyBkaXZpZGVyIGxpbmUsIG9yIHVzZSB0aGUgYHYnIGtleSBmb3IgYSB2ZXJib3NlXG4iCisiICBkaXNwbGF5IChwcmVzcyBgdicgYWdhaW4gdG8gZ28gYmFjayB0byB0aGUgdGVyc2UgZGlzcGxheSkuXG4iCisiXG4iCisiKiBUaGUgYm90dG9tIG9mIHRoZSBzY3JlZW4gc2hvd3MgbW9yZSBpbmZvcm1hdGlvbiBhYm91dCB0aGVcbiIKKyIgIGN1cnJlbnRseS1oaWdobGlnaHRlZCBwYWNrYWdlIChpZiB0aGVyZSBpcyBvbmx5IG9uZSkuXG4iCisiXG4iCisiICBJdCBjYW4gc2hvdyBhbiBleHRlbmRlZCBkZXNjcmlwdGlvbiBvZiB0aGUgcGFja2FnZSwgdGhlIGludGVybmFsIHBhY2thZ2VcbiIKKyIgIGNvbnRyb2wgZGV0YWlscyAoZWl0aGVyIGZvciB0aGUgaW5zdGFsbGVkIG9yIGF2YWlsYWJsZSB2ZXJzaW9uIG9mIHRoZVxuIgorIiAgcGFja2FnZSksIG9yIGluZm9ybWF0aW9uIGFib3V0IGNvbmZsaWN0cyBhbmQgZGVwZW5kZW5jaWVzIGludm9sdmluZyB0aGVcbiIKKyIgIGN1cnJlbnQgcGFja2FnZSAoaW4gY29uZmxpY3QvZGVwZW5kZW5jeSByZXNvbHV0aW9uIHN1Ymxpc3RzKS5cbiIKKyJcbiIKKyIgIFVzZSB0aGUgYGknIGtleSB0byBjeWNsZSB0aHJvdWdoIHRoZSBkaXNwbGF5cywgYW5kIGBJJyB0byBoaWRlIHRoZVxuIgorIiAgaW5mb3JtYXRpb24gZGlzcGxheSBvciBleHBhbmQgaXQgdG8gdXNlIGFsbW9zdCBhbGwgb2YgdGhlIHNjcmVlbi5cbiIKK21zZ3N0ciAiIgorIiogTWFya2VyaW5nOiDDiG4gbGluamUgaSBwYWtrZWxpc3RlbiB2aWwgdsOmcmUgbWFya2VyZXQuIERldCBpbmRpa2VyZXJcbiIKKyIgIGh2aWxrZSBwYWtrZXIsIGRlciB2aWwgYmVyw7hyZXMgYWYgdHJ5ayBww6UgJysnLCAnLScgb2cgJ18nLlxuIgorIlxuIgorIiogT3BkZWxpbmdzbGluamVuIGkgbWlkdGVuIGFmIHNrw6ZybWVuIHZpc2VyIGVuIGtvcnQgZm9ya2xhcmluZyBhZlxuIgorIiAgZGVuIG1hcmtlcmVkZSBwYWtrZXMgc3RhdHVzLCBlbGxlciwgaHZpcyBlbiBncnVwcGUgZXIgbWFya2VyZXQsXG4iCisiICBlbiBiZXNrcml2ZWxzZSBhZiBkZW5uZSBncnVwcGUuIEh2aXMgZHUgaWtrZSBmb3JzdMOlciBiZXR5ZG5pbmdlblxuIgorIiAgYWYgZGUgdmlzdGUgc3RhdHVzdGVnbiwga2FuIGR1IG1hcmtlcmUgZGVuIHJlbGV2YW50ZSBwYWtrZSBvZyBzZVxuIgorIiAgcMOlIG9wZGVsaW5nc2xpbmplbiwgZWxsZXIgYnJ1ZyAndictdGFzdGVuIGZvciBkZXRhbGplcmV0IHZpc25pbmcuXG4iCisiICAoVHJ5ayAndicgaWdlbiBmb3IgYXQgZ8OlIHRpbGJhZ2UgdGlsIGtvbmNpcyB2aXNuaW5nLlxuIgorIlxuIgorIiogSSBidW5kZW4gYWYgc2vDpnJtZW4gdmlzZXMgbWVyZSBpbmZvcm1hdGlvbiBvbSBkZW4gYWt0dWVsdFxuIgorIiAgbWFya2VyZWRlIHBha2tlIChodmlzIGRlciBrdW4gZXIgw6luKS5cbiIKKyJcbiIKKyIgIERlbiBrYW4gdmlzZSBlbiB1ZHZpZGV0IGJlc2tyaXZlbHNlIGFmIHBha2tlbiwgZGUgaW50ZXJuZSBwYWtrZS1cbiIKKyIgIGtvbnRyb2xkZXRhbGplciAoZW50ZW4gZm9yIGRlbiBpbnN0YWxsZXJlZGUgZWxsZXIgdGlsZ8OmbmdlbGlnZSB2ZXJzaW9uXG4iCisiICBhZiBwYWtrZW4pLCBlbGxlciBpbmZvcm1hdGlvbiBvbSBrb25mbGlrdGVyIG9nIGFmaMOmbmdpZ2hlZGVyLCBkZXJcbiIKKyIgIGJlcsO4cmVyIGRlbiBha3R1ZWxsZSBwYWtrZSAoaSBkZWxsaXN0ZW4ga29uZmxpa3QvYWZow6ZuZ2lnaGVkcy1sw7hzbmluZykuXG4iCisiXG4iCisiICBCcnVnICdpJy10YXN0ZW4gZm9yIGF0IHNraWZ0ZSBtZWxsZW0gdmlzbmluZ2VybmUgb2cgJ0knIGZvciBhdCBnZW1tZVxuIgorIiAgaW5mb3JtYXRpb25zdmlzbmluZ2VuIGVsbGVyIHVkdmlkZSBkZW4gdGlsIG7DpnN0ZW4gaGVsZSBza8Omcm1lbi5cbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxNzYKK21zZ2lkICJJbnRyb2R1Y3Rpb24gdG8gbWV0aG9kIHNlbGVjdGlvbiBkaXNwbGF5IgorbXNnc3RyICJJbnRyb2R1a3Rpb24gdGlsIG1ldG9kZXZhbGdzLXZpc25pbmdlbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxNzYKK21zZ2lkICIiCisiZHNlbGVjdCBhbmQgZHBrZyBjYW4gZG8gYXV0b21hdGljIGluc3RhbGxhdGlvbiwgbG9hZGluZyB0aGUgcGFja2FnZSBmaWxlcyB0byAiCisiYmVcbiIKKyJpbnN0YWxsZWQgZnJvbSBvbmUgb2YgYSBudW1iZXIgb2YgZGlmZmVyZW50IHBvc3NpYmxlIHBsYWNlcy5cbiIKKyJcbiIKKyJUaGlzIGxpc3QgYWxsb3dzIHlvdSB0byBzZWxlY3Qgb25lIG9mIHRoZXNlIGluc3RhbGxhdGlvbiBtZXRob2RzLlxuIgorIlxuIgorIk1vdmUgdGhlIGhpZ2hsaWdodCB0byB0aGUgbWV0aG9kIHlvdSB3aXNoIHRvIHVzZSwgYW5kIGhpdCBFbnRlci4gIFlvdSB3aWxsICIKKyJ0aGVuXG4iCisiYmUgcHJvbXB0ZWQgZm9yIHRoZSBpbmZvcm1hdGlvbiByZXF1aXJlZCB0byBkbyB0aGUgaW5zdGFsbGF0aW9uLlxuIgorIlxuIgorIkFzIHlvdSBtb3ZlIHRoZSBoaWdobGlnaHQgYSBkZXNjcmlwdGlvbiBvZiBlYWNoIG1ldGhvZCwgd2hlcmUgYXZhaWxhYmxlLCBpc1xuIgorImRpc3BsYXllZCBpbiB0aGUgYm90dG9tIGhhbGYgb2YgdGhlIHNjcmVlbi5cbiIKKyJcbiIKKyJJZiB5b3Ugd2lzaCB0byBxdWl0IHdpdGhvdXQgY2hhbmdpbmcgYW55dGhpbmcgdXNlIHRoZSBgeCcga2V5IHdoaWxlIGluIHRoZSAiCisibGlzdFxuIgorIm9mIGluc3RhbGxhdGlvbiBtZXRob2RzLlxuIgorIlxuIgorIkEgZnVsbCBsaXN0IG9mIGtleXN0cm9rZXMgaXMgYXZhaWxhYmxlIGJ5IHByZXNzaW5nIGBrJyBub3csIG9yIGZyb20gdGhlICIKKyJoZWxwXG4iCisibWVudSByZWFjaGFibGUgYnkgcHJlc3NpbmcgYD8nLlxuIgorbXNnc3RyICIiCisiZHNlbGVjdCBvZyBkcGtnIGthbiB1ZGbDuHJlIGF1dG9tYXRpc2sgaW5zdGFsbGF0aW9uIHZlZCBpbmRsw6ZzbmluZyBhZlxuIgorInBha2tlZmlsZXIsIGRlciBza2FsIGluc3RhbGxlcmVzIGZyYSBldCB1ZCBhZiBmbGVyZSBtdWxpZ2Ugc3RlZGVyLlxuIgorIlxuIgorIkRlbm5lIGxpc3RlIGdpdmVyIGRpZyBtdWxpZ2hlZCBmb3IgYXQgdsOmbGdlIGVuIGFmIGRpc3NlICIKKyJpbnN0YWxsYXRpb25zbWV0b2Rlci5cbiIKKyJcbiIKKyJGbHl0IG1hcmvDuHJlbiB0aWwgZGVuIG1ldG9kZSwgZHUgw7huc2tlciBhdCBicnVnZSBvZyB0cnlrIFJldHVyLiBTw6UgdmlsIGR1XG4iCisiYmxpdmUgc3B1cmd0IG9tIGluZm9ybWF0aW9uLCBkZXIga3LDpnZlcyBmb3IgYXQgdWRmw7hyZSBpbnN0YWxsYXRpb25lbi5cbiIKKyJcbiIKKyJOw6VyIGR1IGZseXR0ZXIgbWFya8O4cmVuIG1lbGxlbSBtZXRvZGVybmUsIHZpbCBlbiBiZXNrcml2ZWxzZSBibGl2ZSB2aXN0IGkgIgorImRlbi5cbiIKKyJuZWRyZSBoYWx2ZGVsIGFmIHNrw6ZybWVuLlxuIgorIlxuIgorIkh2aXMgZHUgw7huc2tlciBhdCBhZnNsdXR0ZSB1ZGVuIGF0IMOmbmRyZSBub2dldCwga2FuIGR1IGJydWdlICd4Jy10YXN0ZW4sIG1lbiAiCisiZHVcbiIKKyJlciBpIGxpc3RlbiBvdmVyIGluc3RhbGxhdGlvbnNtZXRvZGVyXG4iCisiXG4iCisiVHJ5ayAnaycgbnUgZm9yIGVuIGtvbXBsZXQgbGlzdGUgb3ZlciB0aWxnw6ZuZ2VsaWdlIGtvbW1hbmRvZXIsIGVsbGVyIGZpbmQgIgorImRlbSBpXG4iCisiaGrDpmxwZW1lbnVlbiB2ZWQgYXQgdHJ5a2tlICc/Jy5cbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxOTYKK21zZ2lkICJLZXlzdHJva2VzIGZvciBtZXRob2Qgc2VsZWN0aW9uIgorbXNnc3RyICJUYXN0ZXIgdGlsIG1ldG9kZXZhbGciCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTk2CisjLCBmdXp6eQorbXNnaWQgIiIKKyJNb3Rpb24ga2V5czogTmV4dC9QcmV2aW91cywgVG9wL0VuZCwgVXAvRG93biwgQmFja3dhcmRzL0ZvcndhcmRzOlxuIgorIiAgaiwgRG93bi1hcnJvdyAgICAgICAgIGssIFVwLWFycm93ICAgICAgICAgICAgIG1vdmUgaGlnaGxpZ2h0XG4iCisiICBOLCBQYWdlLWRvd24sIFNwYWNlICAgUCwgUGFnZS11cCwgQmFja3NwYWNlICAgc2Nyb2xsIGxpc3QgYnkgMSBwYWdlXG4iCisiICBebiAgICAgICAgICAgICAgICAgICAgXnAgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGxpc3QgYnkgMSBsaW5lXG4iCisiICB0LCBIb21lICAgICAgICAgICAgICAgZSwgRW5kICAgICAgICAgICAgICAgICAganVtcCB0byB0b3AvZW5kIG9mIGxpc3RcbiIKKyIgIHUgICAgICAgICAgICAgICAgICAgICBkICAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyBieSAxIHBhZ2VcbiIKKyIgIF51ICAgICAgICAgICAgICAgICAgICBeZCAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyBieSAxIGxpbmVcbiIKKyIgIEIsIExlZnQtYXJyb3cgICAgICAgICBGLCBSaWdodC1hcnJvdyAgICAgICAgICBwYW4gZGlzcGxheSBieSAxLzMgc2NyZWVuXG4iCisiICBeYiAgICAgICAgICAgICAgICAgICAgXmYgICAgICAgICAgICAgICAgICAgICAgcGFuIGRpc3BsYXkgYnkgMSBjaGFyYWN0ZXJcbiIKKyIoVGhlc2UgYXJlIHRoZSBzYW1lIG1vdGlvbiBrZXlzIGFzIGluIHRoZSBwYWNrYWdlIGxpc3QgZGlzcGxheS4pXG4iCisiXG4iCisiUXVpdDpcbiIKKyIgUmV0dXJuLCBFbnRlciAgICBzZWxlY3QgdGhpcyBtZXRob2QgYW5kIGdvIHRvIGl0cyBjb25maWd1cmF0aW9uIGRpYWxvZ3VlXG4iCisiIHgsIFggICAgICAgICAgICAgZXhpdCB3aXRob3V0IGNoYW5naW5nIG9yIHNldHRpbmcgdXAgdGhlIGluc3RhbGxhdGlvbiAiCisibWV0aG9kXG4iCisiXG4iCisiTWlzY2VsbGFuZW91czpcbiIKKyIgID8sIEhlbHAsIEYxICAgICAgcmVxdWVzdCBoZWxwXG4iCisiIF5sICAgICAgICAgICAgICAgIHJlZHJhdyBkaXNwbGF5XG4iCisiICAvICAgICAgICAgICAgICAgIHNlYXJjaCAoanVzdCByZXR1cm4gdG8gY2FuY2VsKVxuIgorIiAgXFwgICAgICAgICAgICAgICAgcmVwZWF0IGxhc3Qgc2VhcmNoXG4iCittc2dzdHIgIiIKKyJCZXbDpmdlbHNlc3Rhc3RlcjogTsOmc3RlL1RpZGxpZ2VyZSwgVG9wL0J1bmQsIE9wL05lZCwgQmFnbMOmbnMvRm9ybMOmbnM6XG4iCisiICBuLCBQaWwtbmVkICAgICAgICAgICAgcCwgUGlsLW9wICAgICAgICAgICAgICAgRmx5dCBtYXJrZXJpbmdcbiIKKyIgIE4sIFBnRG4sIG1lbGxlbXJ1bSAgICBQLCBQZ1VwLCByZXR0ZXRhc3QgICAgICBydWwgbGlzdGVuIDEgc2lkZVxuIgorIiAgXm4gICAgICAgICAgICAgICAgICAgIF5wICAgICAgICAgICAgICAgICAgICAgIHJ1bCBsaXN0ZW4gMSBsaW5qZVxuIgorIiAgdCwgSG9tZSAgICAgICAgICAgICAgIGUsIEVuZCAgICAgICAgICAgICAgICAgIGhvcCB0aWwgc3RhcnQvc2x1dG5pbmcgYWYgIgorImxpc3RlXG4iCisiICB1ICAgICAgICAgICAgICAgICAgICAgZCAgICAgICAgICAgICAgICAgICAgICAgcnVsIGluZm8gMSBzaWRlXG4iCisiICBedSAgICAgICAgICAgICAgICAgICAgXmQgICAgICAgICAgICAgICAgICAgICAgcnVsIGluZm8gMSBsaW5qZVxuIgorIiAgQiwgUGlsLXZlbnN0cmUgICAgICAgIEYsIFBpbC1ow7hqcmUgICAgICAgICAgICBwYW5vcsOpciBtZWQgMS8zIGFmICIKKyJza8Omcm1icmVkZGVuXG4iCisiICBeYiAgICAgICAgICAgICAgICAgICAgXmYgICAgICAgICAgICAgICAgICAgICAgcGFub3LDqXIgbWVkIDEgdGVnblxuIgorIihEaXNzZSBiZXbDpmdlbHNlc3Rhc3RlciBlciBpZGVudGlza2UgbWVkIGRlbSBpIHBha2tlbGlzdGUtdmlzbmluZ2VuLilcbiIKKyJcbiIKKyJBZnNsdXQ6XG4iCisiIFJldHVyLCBFbnRlciAgICAgdsOmbGcgZGVubmUgbWV0b2RlIG9nIGfDpSB0aWwgZGV0cyBrb25maWd1cmF0aW9uc2RpYWxvZ1xuIgorIiB4LCBYICAgICAgICAgICAgIGFmYnJ5ZCB1ZGVuIGF0IMOmbmRyZSBpbnN0YWxsYXRpb25zbWV0b2RlXG4iCisiXG4iCisiRm9yc2tlbGxpZ3Q6XG4iCisiICA/LCBIasOmbHAsIEYxICAgICB2aSBoasOmbHBcbiIKKyIgXmwgICAgICAgICAgICAgICAgZ2VudGVnbiBza8Omcm1cbiIKKyIgIC8gICAgICAgICAgICAgICAgc8O4ZyAoZm9ydHJ5ZCB1bWlkZGVsYmFydCBtZWQgcmV0dXIpXG4iCisiICBcXCAgICAgICAgICAgICAgICBnZW50YWcgc2lkc3RlIHPDuGduaW5nXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzo2MAorbXNnaWQgIlR5cGUgZHNlbGVjdCAtLWhlbHAgZm9yIGhlbHAuIgorbXNnc3RyICJTa3JpdiBcImRzZWxlY3QgLS1oZWxwXCIgZm9yIGhqw6ZscC4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDMKK21zZ2lkICJhIgorbXNnc3RyICJ0IgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQzCittc2dpZCAiW0FdY2Nlc3MiCittc2dzdHIgIltUXWlsZ2FuZyIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0MworbXNnaWQgIkNob29zZSB0aGUgYWNjZXNzIG1ldGhvZCB0byB1c2UuIgorbXNnc3RyICJWw6ZsZyBkZW4gw7huc2tlZGUgdGlsZ2FuZ3NtZXRvZGUuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ0Cittc2dpZCAidSIKK21zZ3N0ciAibyIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NAorbXNnaWQgIltVXXBkYXRlIgorbXNnc3RyICJbT11wZGF0w6lyIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ0Cittc2dpZCAiVXBkYXRlIGxpc3Qgb2YgYXZhaWxhYmxlIHBhY2thZ2VzLCBpZiBwb3NzaWJsZS4iCittc2dzdHIgIk9wZGF0w6lyIGxpc3RlbiBtZWQgdGlsZ8OmbmdlbGlnZSBwYWtrZXIsIGh2aXMgbXVsaWd0LiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NQorbXNnaWQgInMiCittc2dzdHIgInUiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDUKK21zZ2lkICJbU11lbGVjdCIKK21zZ3N0ciAiW1VdZHbDpmxnIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ1Cittc2dpZCAiUmVxdWVzdCB3aGljaCBwYWNrYWdlcyB5b3Ugd2FudCBvbiB5b3VyIHN5c3RlbS4iCittc2dzdHIgIlVkdsOmbGcsIGh2aWxrZSBwYWtrZXIsIGR1IMO4bnNrZXIgcMOlIGRpdCBzeXN0ZW0uIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ2Cittc2dpZCAiaSIKK21zZ3N0ciAiaSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NgorbXNnaWQgIltJXW5zdGFsbCIKK21zZ3N0ciAiW0ldbnN0YWxsw6lyIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ2Cittc2dpZCAiSW5zdGFsbCBhbmQgdXBncmFkZSB3YW50ZWQgcGFja2FnZXMuIgorbXNnc3RyICJJbnN0YWxsw6lyIG9nIG9wZ3JhZMOpciDDuG5za2VkZSBwYWtrZXIuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ3Cittc2dpZCAiYyIKK21zZ3N0ciAiayIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NworbXNnaWQgIltDXW9uZmlnIgorbXNnc3RyICJbS11vbmZpZyIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NworbXNnaWQgIkNvbmZpZ3VyZSBhbnkgcGFja2FnZXMgdGhhdCBhcmUgdW5jb25maWd1cmVkLiIKK21zZ3N0ciAiS29uZmlndXLDqXIgZXZlbnR1ZWxsZSBpa2tlLWtvbmZpZ3VyZXJlZGUgcGFra2VyLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OAorbXNnaWQgInIiCittc2dzdHIgImEiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDgKK21zZ2lkICJbUl1lbW92ZSIKK21zZ3N0ciAiW0FdZmluc3RhbGzDqXIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDgKK21zZ2lkICJSZW1vdmUgdW53YW50ZWQgc29mdHdhcmUuIgorbXNnc3RyICJBZmluc3RhbGzDqXIgdcO4bnNrZXQgcHJvZ3JhbW1lbC4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDkKK21zZ2lkICJxIgorbXNnc3RyICJhIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ5Cittc2dpZCAiW1FddWl0IgorbXNnc3RyICJbQV1mc2x1dCIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OQorbXNnaWQgIlF1aXQgZHNlbGVjdC4iCittc2dzdHIgIkFmc2x1dCBkc2VsZWN0LiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE1MAorbXNnaWQgIm1lbnUiCittc2dzdHIgIm1lbnUiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuIGAlcycgcGFja2FnZSBoYW5kbGluZyBmcm9udGVuZCB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICJEZWJpYW4gJyVzJyBwYWtrZWjDpW5kdGVyaW5ncy1icnVnZXJmbGFkZSB2ZXJzaW9uICVzLlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTU4Cittc2dpZCAiIgorIkNvcHlyaWdodCAoQykgMTk5NC0xOTk2IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uXG4iCittc2dzdHIgIiIKKyJDb3B5cmlnaHQgKEMpIDE5OTQtMTk5NiBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTYyCisjLCBmdXp6eQorbXNnaWQgIiIKKyJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAyIG9yXG4iCisibGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuXG4iCittc2dzdHIgIiIKKyJEZXR0ZSBlciBmcml0IHByb2dyYW1tZWw7IHNlIFwiR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2VcIiB2ZXJzaW9uIDIgZWxsZXJcbiIKKyJzZW5lcmUgZm9yIGZvcmhvbGQgdmVkcsO4cmVuZGUgb3BoYXZzcmV0LiBEZXIgZXIgSU5HRU4gZ2FyYW50aS5cbiIKKyJTZSAlcyAtLWxpY2Vuc2UgZm9yIGRldGFsamVyIHZlZHLDuHJlbmRlIG9waGF2c3JldCBvZyBsaWNlbnMuXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNzIgZHNlbGVjdC9tYWluLmNjOjIyMAorbXNnaWQgIjxzdGFuZGFyZCBvdXRwdXQ+IgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSBbPGFjdGlvbj4gLi4uXVxuIgorIlxuIgorbXNnc3RyICIiCisiQnJ1ZzogJXMgWzx0aWx2YWxnPiAuLi5dIFs8aGFuZGxpbmc+IC4uLl1cbiIKKyJcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE4NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorIiAgLS1leHBlcnQgICAgICAgICAgICAgICAgICAgVHVybiBvbiBleHBlcnQgbW9kZS5cbiIKKyIgIC0tZGVidWcgPGZpbGU+IHwgLUQ8ZmlsZT4gIFR1cm4gb24gZGVidWdnaW5nLCBzZW5kaW5nIG91dHB1dCB0byA8ZmlsZT4uXG4iCisiICAtLWNvbG91ciB8IC0tY29sb3Igc2NyZWVucGFydDpbZm9yZWdyb3VuZF0sW2JhY2tncm91bmRdWzphdHRyWythdHRyKy4uXV1cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENvbmZpZ3VyZSBzY3JlZW4gY29sb3Vycy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIlRpbHZhbGc6XG4iCisiICAtLWFkbWluZGlyIDxtYXBwZT4gICAgICAgICBCZW55dCA8bWFwcGU+IGkgc3RlZGV0IGZvciAlcy5cbiIKKyIgIC0tZXhwZXJ0ICAgICAgICAgICAgICAgICAgIEFrdGl2w6lyIGVrc3BlcnR0aWxzdGFuZC5cbiIKKyIgIC0tZGVidWcgPGZpbD4gfCAtRDxmaWw+ICAgIEFrdGl2ZXJlciBhZmx1c25pbmcsIHNlbmRlciB1ZGRhdGEgdGlsIDxmaWxlPi5cbiIKKyIgIC0tY29sb3VyIHwgLS1jb2xvciBza8Omcm1vbXLDpWRlOltmb3JncnVuZF0sW2JhZ2dydW5kXVs6YXR0clsrYXR0cisuLl1dXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJbmRzdGlsIHNrw6ZybWZhcnZlci5cbiIKKyJcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE5NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgICAgU2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgIFNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCittc2dzdHIgIiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICAgIFZpcyBkZW5uZSBoasOmbHBlYmVza2VkLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICAgVmlzIHZlcnNpb25zbnVtbWVyLlxuIgorIiAgLS1saWNlbnNlIHwgLS1saWNlbmNlICAgICAgVmlzIGxpY2Vuc2VuLlxuIgorIlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjAxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJBY3Rpb25zOlxuIgorIiAgYWNjZXNzIHVwZGF0ZSBzZWxlY3QgaW5zdGFsbCBjb25maWcgcmVtb3ZlIHF1aXRcbiIKKyJcbiIKK21zZ3N0ciAiIgorIkhhbmRsaW5nZXI6XG4iCisiICBhY2Nlc3MgdXBkYXRlIHNlbGVjdCBpbnN0YWxsIGNvbmZpZyByZW1vdmUgcXVpdFxuIgorIlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjA1CisjLCBjLWZvcm1hdAorbXNnaWQgIlNjcmVlbnBhcnRzOlxuIgorbXNnc3RyICJTa8Omcm1vbXLDpWRlcjpcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjIxMAorIywgYy1mb3JtYXQKK21zZ2lkICJDb2xvdXJzOlxuIgorbXNnc3RyICJGYXJ2ZXI6XG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiQXR0cmlidXRlczpcbiIKK21zZ3N0ciAiRWdlbnNrYWJlcjpcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjIzMworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBvcGVuIGRlYnVnIGZpbGUgYCUuMjU1cydcbiIKK21zZ3N0ciAia3VubmUgaWtrZSDDpWJuZSBhZmx1c25pbmdzZmlsICclLjI1NXMnXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyNTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW52YWxpZCAlcyBgJXMnXG4iCittc2dzdHIgIlVneWxkaWcgJXMgJyVzJ1xuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjcwCittc2dpZCAic2NyZWVuIHBhcnQiCittc2dzdHIgInNrw6ZybW9tcsOlZGUiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyNzYKK21zZ2lkICJOdWxsIGNvbG91ciBzcGVjaWZpY2F0aW9uXG4iCittc2dzdHIgIk51bGZhcnZlYW5naXZlbHNlXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyODQgZHNlbGVjdC9tYWluLmNjOjI4OQorbXNnaWQgImNvbG91ciIKK21zZ3N0ciAiZmFydmUiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyOTcKK21zZ2lkICJjb2xvdXIgYXR0cmlidXRlIgorbXNnc3RyICJmYXJ2ZWVnZW5za2FiIgorCisjOiBkc2VsZWN0L21haW4uY2M6MzI5Cittc2dpZCAiVGVybWluYWwgZG9lcyBub3QgYXBwZWFyIHRvIHN1cHBvcnQgY3Vyc29yIGFkZHJlc3NpbmcuXG4iCittc2dzdHIgIlRlcm1pbmFsZW4gbGFkZXIgaWtrZSB0aWwgYXQgdW5kZXJzdMO4dHRlIG1ha8O4cmFkcmVzc2VyaW5nLlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MzMxCittc2dpZCAiVGVybWluYWwgZG9lcyBub3QgYXBwZWFyIHRvIHN1cHBvcnQgaGlnaGxpZ2h0aW5nLlxuIgorbXNnc3RyICJUZXJtaW5hbGVuIGxhZGVyIGlra2UgdGlsIGF0IHVuZGVyc3TDuHR0ZSBmcmVtaMOmdm5pbmcuXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzozMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlNldCB5b3VyIFRFUk0gdmFyaWFibGUgY29ycmVjdGx5LCB1c2UgYSBiZXR0ZXIgdGVybWluYWwsXG4iCisib3IgbWFrZSBkbyB3aXRoIHRoZSBwZXItcGFja2FnZSBtYW5hZ2VtZW50IHRvb2wgJXMuXG4iCittc2dzdHIgIiIKKyJTw6Z0IGRpbiBURVJNLXZhcmlhYmVsIGtvcnJla3QsIGJydWcgZW4gYmVkcmUgdGVybWluYWxcbiIKKyJlbGxlciBuw7hqZXMgbWVkIGVua2VsdHBha2tlLWjDpW5kdGVyaW5nc3bDpnJrdMO4amV0ICVzLlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MzM2Cittc2dpZCAidGVybWluYWwgbGFja3MgbmVjZXNzYXJ5IGZlYXR1cmVzLCBnaXZpbmcgdXAiCittc2dzdHIgInRlbWluYWxlbiBtYW5nbGVyIG7DuGR2ZW5kaWdlIGZ1bmt0aW9uZXIuIEdpdmVyIG9wIgorCisjOiBkc2VsZWN0L21haW4uY2M6NDE3Cittc2dpZCAiIgorIlxuIgorIlxuIgorIk1vdmUgYXJvdW5kIHdpdGggXlAgYW5kIF5OLCBjdXJzb3Iga2V5cywgaW5pdGlhbCBsZXR0ZXJzLCBvciBkaWdpdHM7XG4iCisiUHJlc3MgPGVudGVyPiB0byBjb25maXJtIHNlbGVjdGlvbi4gICBeTCByZWRyYXdzIHNjcmVlbi5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIlxuIgorIlxuIgorIkJldsOmZyBkaWcgcnVuZHQgbWVkIF5QIG9nIF5OLCBwaWxldGFzdGVyLCBmb3Jib2dzdGF2ZXIgZWxsZXIgdGFsO1xuIgorIlRyeWsgPHJldHVyPiBmb3IgYXQgYmVrcsOmZnRlIHZhbGcuICBeTCBnZW50ZWduZXIgc2vDpnJtZW4uXG4iCisiXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzo0MjgKK21zZ2lkICIiCisiXG4iCisiXG4iCisiUmVhZC1vbmx5IGFjY2Vzczogb25seSBwcmV2aWV3IG9mIHNlbGVjdGlvbnMgaXMgYXZhaWxhYmxlISIKK21zZ3N0ciAiIgorIlxuIgorIlxuIgorIlNrcml2ZWJlc2t5dHRldCBhZGdhbmc6IGt1biB2aXNuaW5nIGFmIHZhbGcgZXIgdGlsZ8OmbmdlbGlnISIKKworIzogZHNlbGVjdC9tYWluLmNjOjQ0OAorbXNnaWQgImZhaWxlZCB0byBnZXRjaCBpbiBtYWluIG1lbnUiCittc2dzdHIgImt1bm5lIGlra2UgdWRmw7hyZSAnZ2V0Y2gnIGkgaG92ZWRtZW51IgorCisjOiBkc2VsZWN0L21haW4uY2M6NTMxCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gYWN0aW9uIHN0cmluZyBgJS41MHMnIgorbXNnc3RyICJ1a2VuZHQgaGFuZGxpbmdzc3RyZW5nICclLjUwcyciCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6NzcKK21zZ2lkICJkc2VsZWN0IC0gbGlzdCBvZiBhY2Nlc3MgbWV0aG9kcyIKK21zZ3N0ciAiZHNlbGVjdCAtIGxpc3RlIG92ZXIgdGlsZ2FuZ3NtZXRvZGVyIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjg2CisjLCBjLWZvcm1hdAorbXNnaWQgIkFjY2VzcyBtZXRob2QgYCVzJy4iCittc2dzdHIgIlRpbGdhbmdzbWV0b2RlICclcycuIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjEyMAorbXNnaWQgIkFiYnJldi4iCittc2dzdHIgIkZvcmtvcnQuIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjEyMSBkc2VsZWN0L3BrZ2luZm8uY2M6MTA1IGRzZWxlY3QvcGtndG9wLmNjOjI5MQorbXNnaWQgIkRlc2NyaXB0aW9uIgorbXNnc3RyICJCZXNrcml2ZWxzZSIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxNjQgZHNlbGVjdC9wa2dsaXN0LmNjOjU3MgorbXNnaWQgImRvdXBkYXRlIGZhaWxlZCIKK21zZ3N0ciAiZG91cGRhdGUgbWlzbHlra2VkZXMiCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTY2IGRzZWxlY3QvcGtnbGlzdC5jYzo1NzUKK21zZ2lkICJmYWlsZWQgdG8gdW5ibG9jayBTSUdXSU5DSCIKK21zZ3N0ciAia3VubmUgaWtrZSBhZmJsb2tlcmUgU0lHV0lOQ0giCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTcwIGRzZWxlY3QvcGtnbGlzdC5jYzo1ODAKK21zZ2lkICJmYWlsZWQgdG8gcmUtYmxvY2sgU0lHV0lOQ0giCittc2dzdHIgImt1bm5lIGlra2UgZ2VuYmxva2VyZSBTSUdXSU5DSCIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxNzEgZHNlbGVjdC9wa2dsaXN0LmNjOjU4MgorbXNnaWQgImdldGNoIGZhaWxlZCIKK21zZ3N0ciAiJ2dldGNoJyBtaXNseWtrZWRlcyIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxODgKKyMsIGZ1enp5Cittc2dpZCAiRXhwbGFuYXRpb24iCittc2dzdHIgImZvcmtsYXJpbmcgYWYiCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTk3Cittc2dpZCAiTm8gZXhwbGFuYXRpb24gYXZhaWxhYmxlLiIKK21zZ3N0ciAiSW5nZW4gdGlsZ8OmbmdlbGlnIGZvcmtsYXJpbmcuIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzo2NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiXG4iCisiJXM6ICVzXG4iCittc2dzdHIgIiIKKyJcbiIKKyJcbiIKKyIlczogJXNcbiIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6NzAKK21zZ2lkICIiCisiXG4iCisiUHJlc3MgPGVudGVyPiB0byBjb250aW51ZS4iCittc2dzdHIgIiIKKyJcbiIKKyJUcnlrIDxyZXR1cj4gZm9yIGF0IGZvcnRzw6Z0dGUuIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoxNjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHJlc3MgPGVudGVyPiB0byBjb250aW51ZS5cbiIKK21zZ3N0ciAiVHJ5ayA8cmV0dXI+IGZvciBhdCBmb3J0c8OmdHRlLlxuIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoxNjIKKyMsIGZ1enp5Cittc2dpZCAiPHN0YW5kYXJkIGVycm9yPiIKK21zZ3N0ciAic2tyaXZlZmVqbCBww6Ugc3RhbmRhcmQtZmVqbCIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MTY1Cittc2dpZCAiZXJyb3IgcmVhZGluZyBhY2tub3dsZWRnZW1lbnQgb2YgcHJvZ3JhbSBmYWlsdXJlIG1lc3NhZ2UiCittc2dzdHIgImZlamwgaW5kZXIgbMOmc25pbmcgYWYgZ29ka2VuZGVsc2UgYWYgcHJvZ3JhbWZlamxtZWRkZWxlbHNlIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoxOTYKK21zZ2lkICJ1cGRhdGUgYXZhaWxhYmxlIGxpc3Qgc2NyaXB0IgorbXNnc3RyICJzY3JpcHQgdGlsIG9wZGF0ZXJpbmcgYWYgdGlsZ8OmbmdlbGlnaGVkc2xpc3RlIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoyMDAKK21zZ2lkICJpbnN0YWxsYXRpb24gc2NyaXB0IgorbXNnc3RyICJpbnN0YWxsYXRpb25zc2NyaXB0IgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoyNDYKK21zZ2lkICJxdWVyeS9zZXR1cCBzY3JpcHQiCittc2dzdHIgInNjcmlwdCB0aWwgZm9yZXNww7hyZ3NlbC9vcHPDpnRuaW5nIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzo1MworIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gbWV0aG9kIG9wdGlvbnMgZmlsZSBgJS4yNTBzJyAtLSAlcyIKK21zZ3N0ciAic3ludGFrc2ZlamwgaSBtZXRvZGUtdGlsdmFsZ3NmaWwgJyUuMjUwcycgLS0gJXMiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjU5CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHJlYWRpbmcgb3B0aW9ucyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJmZWpsIHVuZGVyIGzDpnNuaW5nIGFmIHRpbHZhbGdzZmlsICclLjI1MHMnIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzo5MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBgJS4yNTBzJyBkaXJlY3RvcnkgZm9yIHJlYWRpbmcgbWV0aG9kcyIKK21zZ3N0ciAia3VubmUgaWtrZSBsw6ZzZSAnJS4yNTBzJy1tYXBwZSBmb3IgbMOmc25pbmcgYWYgbWV0b2RlciIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTA2CisjLCBjLWZvcm1hdAorbXNnaWQgIm1ldGhvZCBgJS4yNTBzJyBoYXMgbmFtZSB0aGF0IGlzIHRvbyBsb25nICglZCA+ICVkIGNoYXJhY3RlcnMpIgorbXNnc3RyICJtZXRvZGVuICclLjI1MHMnIGhhciBldCBmb3IgbGFuZ3QgbmF2biAoJWQgPiAlZCB0ZWduKSIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTE3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBhY2Nlc3MgbWV0aG9kIHNjcmlwdCBgJS4yNTBzJyIKK21zZ3N0ciAia3VubmUgaWtrZSB0aWxnw6UgbWV0b2Rlc2NyaXB0ZXQgJyUuMjUwcyciCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjEyMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBtZXRob2Qgb3B0aW9ucyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrdW5uZSBpa2tlIGzDpnNlIG1ldG9kZXRpbHZhbGdzZmlsICclLjI1MHMnIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNDcKK21zZ2lkICJub24tZGlnaXQgd2hlcmUgZGlnaXQgd2FudGVkIgorbXNnc3RyICJpa2tlLXRhbCwgaHZvciBldCB0YWwgdmFyIMO4bnNrZXQiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE1MAorbXNnaWQgIkVPRiBpbiBpbmRleCBzdHJpbmciCittc2dzdHIgInNsdXQtcMOlLWZpbCBpIGluZGVrc3N0cmVuZyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTUzCittc2dpZCAiaW5kZXggc3RyaW5nIHRvbyBsb25nIgorbXNnc3RyICJpbmRla3NzdHJlbmcgZXIgZm9yIGxhbmciCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE1NgorbXNnaWQgIm5ld2xpbmUgYmVmb3JlIG9wdGlvbiBuYW1lIHN0YXJ0IgorbXNnc3RyICJsaW5qZXNraWZ0IGbDuHIgc3RhcnRlbiBww6UgdGlsdmFsZ3NuYXZuIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNTgKK21zZ2lkICJFT0YgYmVmb3JlIG9wdGlvbiBuYW1lIHN0YXJ0IgorbXNnc3RyICJzbHV0LXDDpS1maWwgaW5kZW4gc3RhcnRlbiBhZiB0aWx2YWxnc25hdm4iCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE2MgorbXNnaWQgIm5vbmFscGhhIHdoZXJlIG9wdGlvbiBuYW1lIHN0YXJ0IHdhbnRlZCIKK21zZ3N0ciAiaWtrZS1ib2dzdGF2LCBodm9yIHRpbHZhbGdzbmF2biB2YXIgw7huc2tldCIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTY0Cittc2dpZCAibm9uLWFscGhhbnVtIGluIG9wdGlvbiBuYW1lIgorbXNnc3RyICJ0ZWduIGkgbmF2biwgZGVyIGlra2UgZXIgZXQgYm9nc3RhdiBlbGxlciB0YWwiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE2NworbXNnaWQgIkVPRiBpbiBvcHRpb24gbmFtZSIKK21zZ3N0ciAic2x1dC1ww6UtZmlsIGkgdGlsdmFsZ3NuYXZuIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNzIKK21zZ2lkICJuZXdsaW5lIGJlZm9yZSBzdW1tYXJ5IgorbXNnc3RyICJsaW5qZXNraWZ0IGluZGVuIGJlc2tyaXZlbHNlbiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTc0Cittc2dpZCAiRU9GIGJlZm9yZSBzdW1tYXJ5IgorbXNnc3RyICJzbHV0LXDDpS1maWwgaW5kZW4gYmVza3JpdmVsc2VuIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxODAKK21zZ2lkICJFT0YgaW4gc3VtbWFyeSAtIG1pc3NpbmcgbmV3bGluZSIKK21zZ3N0ciAic2x1dC1ww6UtZmlsIGkgYmVza3JpdmVsc2VuIC0gbWFuZ2xlbmRlIGxpbmplc2tpZnQiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE5MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBvcHRpb24gZGVzY3JpcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia3VubmUgaWtrZSDDpWJuZSB0aWx2YWxnc2Jlc2tyaXZlbHNlc2ZpbGVuICclLjI1MHMnIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxOTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgb3B0aW9uIGRlc2NyaXB0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImt1bm5lIGlra2UgZmluZGUgdGlsdmFsZ3NiZXNrcml2ZWxzZXNmaWxlbiAnJS4yNTBzJyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTk4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZWFkIG9wdGlvbiBkZXNjcmlwdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrdW5uZSBpa2tlIGzDpnNlIHRpbHZhbGdzYmVza3JpdmVsc2VzZmlsZW4gJyUuMjUwcyciCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjIwMQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBkdXJpbmcgcmVhZCBvZiBvcHRpb24gZGVzY3JpcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiZmVqbCB2ZWQgbMOmc25pbmcgYWYgdGlsdmFsZ3NiZXNrcml2ZWxzZXNmaWxlbiAnJS4yNTBzJyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MjI0CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGR1cmluZyByZWFkIG9mIG1ldGhvZCBvcHRpb25zIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImZlamwgdmVkIGzDpnNuaW5nIGFmIG1ldG9kZXRpbHZhbGdzZmlsZW4gJyUuMjUwcyciCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjI0NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBjdXJyZW50IG9wdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrdW5uZSBpa2tlIMOlYm5lIGFrdHVlbCB0aWx2YWxnc2ZpbCAnJS4yNTBzJyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6Mjg5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIG5ldyBvcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia3VubmUgaWtrZSDDpWJuZSBueSB0aWx2YWxnc2ZpbCAnJS4yNTBzJyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MjkyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgb3B0aW9uIHRvIGAlLjI1MHMnIgorbXNnc3RyICJrdW5uZSBpa2tlIHNrcml2ZSBueSB0aWx2YWxnc2ZpbCAnJS4yNTBzJyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6Mjk1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBuZXcgb3B0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImt1bm5lIGlra2UgbHVra2UgbnkgdGlsdmFsZ3NmaWwgJyUuMjUwcyciCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjI5NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgb3B0aW9uIGFzIGAlLjI1MHMnIgorbXNnc3RyICJrdW5uZSBpa2tlIGluc3RhbGxlcmUgbnkgdGlsdmFsZ3NmaWwgJyUuMjUwcyciCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzozNgorbXNnaWQgIm5ldyBwYWNrYWdlIgorbXNnc3RyICJueSBwYWtrZSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjM3Cittc2dpZCAiaW5zdGFsbCIKK21zZ3N0ciAiaW5zdGFsbMOpciIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjM4Cittc2dpZCAiaG9sZCIKK21zZ3N0ciAiaG9sZCB0aWxiYWdlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MzkKK21zZ2lkICJyZW1vdmUiCittc2dzdHIgImFmaW5zdGFsbMOpciIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjQwCittc2dpZCAicHVyZ2UiCittc2dzdHIgInVkcmVucyIKKworIy4gVFJBTlNMQVRPUlM6IFRoZSBzcGFjZSBpcyBhIHRyaWNrIHRvIHdvcmsgYXJvdW5kIGdldHRleHQgd2hpY2ggdXNlcworIy4gKiB0aGUgZW1wdHkgc3RyaW5nIHRvIHN0b3JlIGluZm9ybWF0aW9uIGFib3V0IHRoZSB0cmFuc2xhdGlvbi4gRE8gTk9UCisjLiAqIENIQU5HRSBUSEFUIElOIEEgVFJBTlNMQVRJT04hIFRoZSBjb2RlIHJlYWxseSByZWxpZXMgb24gdGhhdCBiZWluZworIy4gKiBhIHNpbmdsZSBzcGFjZS4KKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo0NworbXNnaWQgIiAiCittc2dzdHIgIiAiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo0OAorbXNnaWQgIlJFSU5TVEFMTCIKK21zZ3N0ciAiR0VOSU5TVEFMTMOJUiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjUxCittc2dpZCAibm90IGluc3RhbGxlZCIKK21zZ3N0ciAiaWtrZSBpbnN0YWxsZXJldCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjUyCittc2dpZCAicmVtb3ZlZCAoY29uZmlncyByZW1haW4pIgorbXNnc3RyICJhZmluc3RhbGxlcmV0IChvcHPDpnRuaW5nIGJldmFyZXQpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTMKK21zZ2lkICJoYWxmIGluc3RhbGxlZCIKK21zZ3N0ciAiaGFsdnQgaW5zdGFsbGVyZXQiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1NAorbXNnaWQgInVucGFja2VkIChub3Qgc2V0IHVwKSIKK21zZ3N0ciAidWRwYWtrZXQgKGlra2Ugc2F0IG9wKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjU1Cittc2dpZCAiaGFsZiBjb25maWd1cmVkIChjb25maWcgZmFpbGVkKSIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTYKK21zZ2lkICJhd2FpdGluZyB0cmlnZ2VyIHByb2Nlc3NpbmciCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjU3Cittc2dpZCAidHJpZ2dlcmVkIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1OAorbXNnaWQgImluc3RhbGxlZCIKK21zZ3N0ciAiaW5zdGFsbGVyZXQiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo2MQorbXNnaWQgIlJlcXVpcmVkIgorbXNnc3RyICJrcsOmdmVkZSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjYyCittc2dpZCAiSW1wb3J0YW50IgorbXNnc3RyICJ2aWd0aWdlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjMKK21zZ2lkICJTdGFuZGFyZCIKK21zZ3N0ciAic3RhbmRhcmQiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo2NAorbXNnaWQgIk9wdGlvbmFsIgorbXNnc3RyICJ2YWxnZnJpZSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjY1Cittc2dpZCAiRXh0cmEiCittc2dzdHIgImVrc3RyYSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjY2Cittc2dpZCAiIUJ1ZyEiCittc2dzdHIgIiFMdXMhIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjcKK21zZ2lkICJVbmNsYXNzaWZpZWQiCittc2dzdHIgInVrbGFzc2lmaWNlcmVkZSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjcwCittc2dpZCAic3VnZ2VzdHMiCittc2dzdHIgImZvcmVzbMOlciIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjcxCittc2dpZCAicmVjb21tZW5kcyIKK21zZ3N0ciAiYW5iZWZhbGVyIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzIKK21zZ2lkICJkZXBlbmRzIG9uIgorbXNnc3RyICJhZmjDpm5nZXIgYWYiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3MworbXNnaWQgInByZS1kZXBlbmRzIG9uIgorbXNnc3RyICJmb3Jow6VuZHMtYWZow6ZuZ2VyIGFmIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzQKK21zZ2lkICJicmVha3MiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjc1Cittc2dpZCAiY29uZmxpY3RzIHdpdGgiCittc2dzdHIgImVyIGkga29uZmxpa3QgbWVkIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzYKK21zZ2lkICJwcm92aWRlcyIKK21zZ3N0ciAiZ2l2ZXIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3NworbXNnaWQgInJlcGxhY2VzIgorbXNnc3RyICJlcnN0YXR0ZXIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3OAorbXNnaWQgImVuaGFuY2VzIgorbXNnc3RyICJmb3JiZWRyZXIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4MQorbXNnaWQgIlJlcSIKK21zZ3N0ciAiS3J2IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODIKK21zZ2lkICJJbXAiCittc2dzdHIgIlZndCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjgzCittc2dpZCAiU3RkIgorbXNnc3RyICJTdGQiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4NAorbXNnaWQgIk9wdCIKK21zZ3N0ciAiRnJpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODUKK21zZ2lkICJYdHIiCittc2dzdHIgIkVrcyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjg2Cittc2dpZCAiYlVHIgorbXNnc3RyICJMVVMiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4NworbXNnaWQgIj8iCittc2dzdHIgIj8iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo5NSBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTE1Cittc2dpZCAiQnJva2VuIgorbXNnc3RyICLDmGRlbGFndGUiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo5NgorbXNnaWQgIk5ldyIKK21zZ3N0ciAiTnllIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6OTcKK21zZ2lkICJVcGRhdGVkIgorbXNnc3RyICJPcGRhdGVyZWRlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6OTgKK21zZ2lkICJPYnNvbGV0ZS9sb2NhbCIKK21zZ3N0ciAiRm9yw6ZsZGVkZS9sb2thbGUiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo5OQorbXNnaWQgIlVwLXRvLWRhdGUiCittc2dzdHIgIkhlbHQgb3BkYXRlcmVkZSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwMAorbXNnaWQgIkF2YWlsYWJsZSIKK21zZ3N0ciAiVGlsZ8OmbmdlbGlnZSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwMSBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTE3Cittc2dpZCAiUmVtb3ZlZCIKK21zZ3N0ciAiQWZpbnN0YWxsZXJlZGUiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDIgZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExMQorbXNnaWQgIkJyb2tlbmx5IGluc3RhbGxlZCBwYWNrYWdlcyIKK21zZ3N0ciAiw5hkZWxhZ3RlIGluc3RhbGxlcmVkZSBwYWtrZXIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDMKK21zZ2lkICJOZXdseSBhdmFpbGFibGUgcGFja2FnZXMiCittc2dzdHIgIk55bGlndCB0aWxnw6ZuZ2VsaWdlIHBha2tlciIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwNAorbXNnaWQgIlVwZGF0ZWQgcGFja2FnZXMgKG5ld2VyIHZlcnNpb24gaXMgYXZhaWxhYmxlKSIKK21zZ3N0ciAiT3BkYXRlcmVkZSBwYWtrZXIgKG55ZXJlIHZlcnNpb24gdGlsZ8OmbmdlbGlnKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwNQorbXNnaWQgIk9ic29sZXRlIGFuZCBsb2NhbCBwYWNrYWdlcyBwcmVzZW50IG9uIHN5c3RlbSIKK21zZ3N0ciAiRm9yw6ZsZGVkZSBvZyBsb2thbGUgcGFra2VyIHDDpSBzeXN0ZW1ldCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwNgorbXNnaWQgIlVwIHRvIGRhdGUgaW5zdGFsbGVkIHBhY2thZ2VzIgorbXNnc3RyICJJbnN0YWxsZXJlZGUgcGFra2VyIGkgbnllc3RlIHZlcnNpb24iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDcKK21zZ2lkICJBdmFpbGFibGUgcGFja2FnZXMgKG5vdCBjdXJyZW50bHkgaW5zdGFsbGVkKSIKK21zZ3N0ciAiVGlsZ8OmbmdlbGlnZSBwYWtrZXIgKGlra2UgaW5zdGFsbGVyZWRlKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwOAorbXNnaWQgIlJlbW92ZWQgYW5kIG5vIGxvbmdlciBhdmFpbGFibGUgcGFja2FnZXMiCittc2dzdHIgIkFmaW5zdGFsbGVyZWRlIG9nIGlra2UgbMOmbmdlcmUgdGlsZ8OmbmdlbGlnZSBwYWtrZXIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTIKK21zZ2lkICJJbnN0YWxsZWQgcGFja2FnZXMiCittc2dzdHIgIkluc3RhbGxlcmVkZSBwYWtrZXIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTMKK21zZ2lkICJSZW1vdmVkIHBhY2thZ2VzIChjb25maWd1cmF0aW9uIHN0aWxsIHByZXNlbnQpIgorbXNnc3RyICJBZmluc3RhbGxlcmVkZSBwYWtrZXIgKG9wc8OmdG5pbmcgYmV2YXJldCkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTQKK21zZ2lkICJQdXJnZWQgcGFja2FnZXMgYW5kIHRob3NlIG5ldmVyIGluc3RhbGxlZCIKK21zZ3N0ciAiVWRyZW5zZWRlIG9nIGFsZHJpZyBpbnN0YWxsZXJlZGUgcGFra2VyIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTE2Cittc2dpZCAiSW5zdGFsbGVkIgorbXNnc3RyICJJbnN0YWxsZXJlZGUiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTgKK21zZ2lkICJQdXJnZWQiCittc2dzdHIgIlVkcmVuc2VkZSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjE5OAorbXNnaWQgImRzZWxlY3QgLSByZWN1cnNpdmUgcGFja2FnZSBsaXN0aW5nIgorbXNnc3RyICJkc2VsZWN0IC0gcmVrdXJzaXYgcGFra2V2aXNuaW5nIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTk5Cittc2dpZCAiZHNlbGVjdCAtIGluc3BlY3Rpb24gb2YgcGFja2FnZSBzdGF0ZXMiCittc2dzdHIgImRzZWxlY3QgLSBpbnNwZWt0aW9uIGFmIHBha2tlc3RhdHVzIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjAwCittc2dpZCAiZHNlbGVjdCAtIG1haW4gcGFja2FnZSBsaXN0aW5nIgorbXNnc3RyICJkc2VsZWN0IC0gaG92ZWQtcGFra2V2aXNuaW5nIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjA4Cittc2dpZCAiIChieSBzZWN0aW9uKSIKK21zZ3N0ciAiIChlZnRlciBncnVwcGUpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjExCittc2dpZCAiIChhdmFpbC4sIHNlY3Rpb24pIgorbXNnc3RyICIgKHRpbGcuLCBncnVwcGUpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjE0Cittc2dpZCAiIChzdGF0dXMsIHNlY3Rpb24pIgorbXNnc3RyICIgKHN0YXR1cywgZ3J1cHBlKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIyMworbXNnaWQgIiAoYnkgcHJpb3JpdHkpIgorbXNnc3RyICIgKGVmdGVyIHByaW9yaXRldCkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMjYKK21zZ2lkICIgKGF2YWlsLiwgcHJpb3JpdHkpIgorbXNnc3RyICIgKHRpbGcuLCBwcmlvcml0ZXQpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjI5Cittc2dpZCAiIChzdGF0dXMsIHByaW9yaXR5KSIKK21zZ3N0ciAiIChzdGF0dXMsIHByaW9yaXRldCkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMzggZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI1MAorbXNnaWQgIiAoYWxwaGFiZXRpY2FsbHkpIgorbXNnc3RyICIgKGFsZmFiZXRpc2spIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjQxCittc2dpZCAiIChieSBhdmFpbGFiaWxpdHkpIgorbXNnc3RyICIgKGVmdGVyIHRpbGfDpm5nLikiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNDQKK21zZ2lkICIgKGJ5IHN0YXR1cykiCittc2dzdHIgIiAoZWZ0ZXIgc3RhdHVzKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI1OAorbXNnaWQgIiBtYXJrOisvPS8tIHRlcnNlOnYgaGVscDo/IgorbXNnc3RyICIgbWFya8OpcjorLz0vLSBrb25jaXM6diBoasOmbHA6PyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI1OQorbXNnaWQgIiBtYXJrOisvPS8tIHZlcmJvc2U6diBoZWxwOj8iCittc2dzdHIgIiBtYXJrw6lyOisvPS8tIGRldGFsajp2IGhqw6ZscDo/IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjYwCittc2dpZCAiIHRlcnNlOnYgaGVscDo/IgorbXNnc3RyICIga29uY2lzOnYgaGrDpmxwOj8iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNjEKK21zZ2lkICIgdmVyYm9zZTp2IGhlbHA6PyIKK21zZ3N0ciAiIGRldGFsamVyOnYgaGrDpmxwOj8iCisKKyM6IGRzZWxlY3QvcGtnaW5mby5jYzo4MAorbXNnaWQgIiIKKyJUaGUgbGluZSB5b3UgaGF2ZSBoaWdobGlnaHRlZCByZXByZXNlbnRzIG1hbnkgcGFja2FnZXM7IGlmIHlvdSBhc2sgdG8gIgorImluc3RhbGwsIHJlbW92ZSwgaG9sZCwgZXRjLiBpdCB5b3Ugd2lsbCBhZmZlY3QgYWxsIHRoZSBwYWNrYWdlcyB3aGljaCBtYXRjaCAiCisidGhlIGNyaXRlcmlvbiBzaG93bi5cbiIKKyJcbiIKKyJJZiB5b3UgbW92ZSB0aGUgaGlnaGxpZ2h0IHRvIGEgbGluZSBmb3IgYSBwYXJ0aWN1bGFyIHBhY2thZ2UgeW91IHdpbGwgc2VlICIKKyJpbmZvcm1hdGlvbiBhYm91dCB0aGF0IHBhY2thZ2UgZGlzcGxheWVkIGhlcmUuXG4iCisiWW91IGNhbiB1c2UgYG8nIGFuZCBgTycgdG8gY2hhbmdlIHRoZSBzb3J0IG9yZGVyIGFuZCBnaXZlIHlvdXJzZWxmIHRoZSAiCisib3Bwb3J0dW5pdHkgdG8gbWFyayBwYWNrYWdlcyBpbiBkaWZmZXJlbnQga2luZHMgb2YgZ3JvdXBzLiIKK21zZ3N0ciAiIgorIkRlbiBsaW5qZSwgZHUgaGFyIG1hcmtlcmV0LCByZXByw6ZzZW50ZXJlciBtYW5nZSBwYWtrZXIuIEh2aXMgZHUgYmVkZXIgb20gIgorImluc3RhbGxhdGlvbiwgYWZpbnN0YWxsYXRpb24sIHRpbGJhZ2Vob2xkZWxzZSBvLmxpZ24uLCB2aWwgZGV0IGJlcsO4cmUgYWxsZSAiCisicGFra2VybmUsIGRlciBwYXNzZXIgdGlsIGRldCB2aXN0ZSBrcml0ZXJpZS5cbiIKKyJcbiIKKyJIdmlzIGR1IGZseXR0ZXIgbWFya2VyaW5nZW4gdGlsIGVuIGxpbmplIG1lZCBlbiBlbmtlbHQgcGFra2UsIHZpbCBkdSBzZSAiCisiaW5mb3JtYXRpb24gb20gcGFra2VuIGhlci5cbiIKKyJEdSBrYW4gYnJ1Z2UgJ28nIGVsbGVyJ08nIHRpbCBhdCDDpm5kcmUgc29ydGVyaW5nc3LDpmtrZWbDuGxnZW4gb2cgZ2l2ZSBkaXQgIgorInNlbHYgbXVsaWdoZWQgZm9yIGF0IG1hcmtlcmUgcGFra2VybmUgaSBhbmRyZSBncnVwcGVyLiIKKworIzogZHNlbGVjdC9wa2dpbmZvLmNjOjkzCisjLCBmdXp6eQorbXNnaWQgIkludGVycmVsYXRpb25zaGlwcyIKK21zZ3N0ciAic2FtbWVuaMOmbmdlIgorCisjOiBkc2VsZWN0L3BrZ2luZm8uY2M6MTEyCisjLCBmdXp6eQorbXNnaWQgIk5vIGRlc2NyaXB0aW9uIGF2YWlsYWJsZS4iCittc2dzdHIgImluZ2VuIHRpbGfDpm5nZWxpZyBiZXNrcml2ZWxzZS4iCisKKyM6IGRzZWxlY3QvcGtnaW5mby5jYzoxMzAKKyMsIGZ1enp5Cittc2dpZCAiSW5zdGFsbGVkIGNvbnRyb2wgZmlsZSBpbmZvcm1hdGlvbiIKK21zZ3N0ciAiaW5zdGFsbGVyZXQga29udHJvbGluZm9ybWF0aW9uIGZvciIKKworIzogZHNlbGVjdC9wa2dpbmZvLmNjOjE0NgorIywgZnV6enkKK21zZ2lkICJBdmFpbGFibGUgY29udHJvbCBmaWxlIGluZm9ybWF0aW9uIgorbXNnc3RyICJ0aWxnw6ZuZ2VsaWcgdmVyc2lvbiBhZiBrb250cm9saW5mb3JtYXRpb24gZm9yIGZpbCIKKworIzogZHNlbGVjdC9wa2dsaXN0LmNjOjQxNgorbXNnaWQgIlRoZXJlIGFyZSBubyBwYWNrYWdlcy4iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dsaXN0LmNjOjUwNworbXNnaWQgImludmFsaWQgc2VhcmNoIG9wdGlvbiBnaXZlbiIKK21zZ3N0ciAidWd5bGRpZ3Qgc8O4Z2V0aWx2YWxnIGFuZ2l2ZXQiCisKKyM6IGRzZWxlY3QvcGtnbGlzdC5jYzo1MjEKK21zZ2lkICJlcnJvciBpbiByZWd1bGFyIGV4cHJlc3Npb24iCittc2dzdHIgImZlamwgaSByZWd1bMOmcnQgdWR0cnlrIgorCisjOiBkc2VsZWN0L3BrZ3N1Ymxpc3QuY2M6MTA3Cittc2dpZCAiIGRvZXMgbm90IGFwcGVhciB0byBiZSBhdmFpbGFibGVcbiIKK21zZ3N0ciAiIGxhZGVyIGlra2UgdGlsIGF0IHbDpnJlIHRpbGfDpm5nZWxpZ1xuIgorCisjOiBkc2VsZWN0L3BrZ3N1Ymxpc3QuY2M6MTI3Cittc2dpZCAiIG9yICIKK21zZ3N0ciAiIGVsbGVyICIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6NTcKK21zZ2lkICJBbGwiCittc2dzdHIgIkFsbGUiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjc5Cittc2dpZCAiQWxsIHBhY2thZ2VzIgorbXNnc3RyICJBbGxlIHBha2tlciIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcGFja2FnZXMgd2l0aG91dCBhIHNlY3Rpb24iCittc2dzdHIgIiVzIHBha2tlciB1ZGVuZm9yIGdydXBwZSIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcGFja2FnZXMgaW4gc2VjdGlvbiAlcyIKK21zZ3N0ciAiJXMgcGFra2VyIGkgJXMtZ3J1cHBlbiIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6OTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgJXMgcGFja2FnZXMiCittc2dzdHIgIiVzICVzIHBha2tlciIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgJXMgcGFja2FnZXMgd2l0aG91dCBhIHNlY3Rpb24iCittc2dzdHIgIiVzICVzIHBha2tlciB1ZGVuZm9yIGdydXBwZSIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6OTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgJXMgcGFja2FnZXMgaW4gc2VjdGlvbiAlcyIKK21zZ3N0ciAiJXMgJXMgcGFra2VyIGkgJXMtZ3J1cHBlbiIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6MTE4CisjLCBjLWZvcm1hdAorbXNnaWQgIiUtKnMgJXMlcyVzOyAgJXMgKHdhczogJXMpLiAgJXMiCittc2dzdHIgIiUtKnMgJXMlcyVzOyAgJXMgKHZhcjogJXMpLiAgJXMiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI2MworbXNnaWQgIkVycm9yIgorbXNnc3RyICJGZWpsIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyNjcKK21zZ2lkICJJbnN0YWxsZWQ/IgorbXNnc3RyICJJbnN0YWxsZXJldD8iCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI3MQorbXNnaWQgIk9sZCBtYXJrIgorbXNnc3RyICJHYW1tZWx0IG3DpnJrZSIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6Mjc1Cittc2dpZCAiTWFya2VkIGZvciIKK21zZ3N0ciAiTWFya2VyZXQgZm9yIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyNzgKK21zZ2lkICJFSU9NIgorbXNnc3RyICJGSUdNIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyODAKK21zZ2lkICJTZWN0aW9uIgorbXNnc3RyICJHcnVwcGUiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI4MQorbXNnaWQgIlByaW9yaXR5IgorbXNnc3RyICJQcmlvcml0ZXQiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI4MgorbXNnaWQgIlBhY2thZ2UiCittc2dzdHIgIlBha2tlIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyODYKK21zZ2lkICJJbnN0LnZlciIKK21zZ3N0ciAiSW5zdC52ZXIiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI4OQorbXNnaWQgIkF2YWlsLnZlciIKK21zZ3N0ciAiVGlsZy52ZXIiCisKKyN+IG1zZ2lkICJyZXR1cm5lZCBlcnJvciBleGl0IHN0YXR1cyAlZC5cbiIKKyN+IG1zZ3N0ciAicmV0dXJuZXJlZGUgYWZzbHV0bmluZ3NzdGF0dXMgJWQuXG4iCisKKyN+IG1zZ2lkICJ3YXMgaW50ZXJydXB0ZWQuXG4iCisjfiBtc2dzdHIgImJsZXYgYWZicnVkdC5cbiIKKworI34gbXNnaWQgIndhcyB0ZXJtaW5hdGVkIGJ5IGEgc2lnbmFsOiAlcy5cbiIKKyN+IG1zZ3N0ciAiYmxldiBhZnNsdXR0ZXQgYWYgc2lnbmFsOiAlcy5cbiIKKworI34gbXNnaWQgIihJdCBsZWZ0IGEgY29yZWR1bXAuKVxuIgorI34gbXNnc3RyICIoRGV0IGVmdGVybG9kIGVuICdjb3JlJy1maWwuKVxuIgorCisjfiBtc2dpZCAiZmFpbGVkIHdpdGggYW4gdW5rbm93biB3YWl0IHJldHVybiBjb2RlICVkLlxuIgorI34gbXNnc3RyICJtaXNseWtrZWRlcyBtZWQgZW4gdWtlbmR0IHZlbnRlLXJldHVya29kZSAlZC5cbiIKKworI34gbXNnaWQgInVuYWJsZSB0byBydW4gJS4yNTBzIHByb2Nlc3MgYCUuMjUwcyciCisjfiBtc2dzdHIgImt1bm5lIGlra2Uga8O4cmUgJS4yNTBzIHByb2Nlc3NlciAnJS4yNTBzJyIKKworI34gbXNnaWQgImZhaWxlZCBjb25maWciCisjfiBtc2dzdHIgIm1pc2x5a2tldCBrb25maWd1cmVyaW5nIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHdhaXQgZm9yICUuMjUwcyIKKyN+IG1zZ3N0ciAia3VubmUgaWtrZSB2ZW50ZSBww6UgJS4yNTBzIgorCisjfiBtc2dpZCAiZ290IHdyb25nIGNoaWxkJ3Mgc3RhdHVzIC0gYXNrZWQgZm9yICVsZCwgZ290ICVsZCIKKyN+IG1zZ3N0ciAiZmlrIGZvcmtlcnQgYmFybnMgc3RhdHVzIC0gYmFkIG9tICVsZCwgZmlrICVsZCIKKworI34gbXNnaWQgIlJlY29tbWVuZGVkIgorI34gbXNnc3RyICJhbmJlZmFsZWRlIgorCisjfiBtc2dpZCAiQ29udHJpYiIKKyN+IG1zZ3N0ciAiY29udHJpYiIKKworI34gbXNnaWQgIlJlYyIKKyN+IG1zZ3N0ciAiQW5iIgorCisjfiBtc2dpZCAiQ3RiIgorI34gbXNnc3RyICJDdGIiCisKKyN+IG1zZ2lkICIiCisjfiAiYmFzZWxpc3Q6OnN0YXJ0ZGlzcGxheSgpIGRvbmUgLi4uXG4iCisjfiAiXG4iCisjfiAiIHhtYXg9JWQsIHltYXg9JWQ7XG4iCisjfiAiXG4iCisjfiAiIHRpdGxlX2hlaWdodD0lZCwgY29saGVhZHNfaGVpZ2h0PSVkLCBsaXN0X2hlaWdodD0lZDtcbiIKKyN+ICIgdGhpc3N0YXRlX2hlaWdodD0lZCwgaW5mb19oZWlnaHQ9JWQsIHdoYXRpbmZvX2hlaWdodD0lZDtcbiIKKyN+ICJcbiIKKyN+ICIgY29saGVhZHNfcm93PSVkLCB0aGlzc3RhdGVfcm93PSVkLCBpbmZvX3Jvdz0lZDtcbiIKKyN+ICIgd2hhdGluZm9fcm93PSVkLCBsaXN0X3Jvdz0lZDtcbiIKKyN+ICJcbiIKKyN+IG1zZ3N0ciAiIgorI34gImJhc2VsaXN0OjpzdGFydGRpc3BsYXkoKSBkb25lIC4uLlxuIgorI34gIlxuIgorI34gIiB4bWF4PSVkLCB5bWF4PSVkO1xuIgorI34gIlxuIgorI34gIiB0aXRsZV9oZWlnaHQ9JWQsIGNvbGhlYWRzX2hlaWdodD0lZCwgbGlzdF9oZWlnaHQ9JWQ7XG4iCisjfiAiIHRoaXNzdGF0ZV9oZWlnaHQ9JWQsIGluZm9faGVpZ2h0PSVkLCB3aGF0aW5mb19oZWlnaHQ9JWQ7XG4iCisjfiAiXG4iCisjfiAiIGNvbGhlYWRzX3Jvdz0lZCwgdGhpc3N0YXRlX3Jvdz0lZCwgaW5mb19yb3c9JWQ7XG4iCisjfiAiIHdoYXRpbmZvX3Jvdz0lZCwgbGlzdF9yb3c9JWQ7XG4iCisjfiAiXG4iCisKKyN+IG1zZ2lkICJbbm9uZV0iCisjfiBtc2dzdHIgIltpbmdlbl0iCisKKyN+IG1zZ2lkICJlcnJvciB1bi1jYXRjaGluZyBzaWduYWwgJWQ6ICVzXG4iCisjfiBtc2dzdHIgImZlamwgdW5kZXIgYWYtZmFuZ25pbmcgYWYgc2lnbmFsICVkOiAlc1xuIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGlnbm9yZSBzaWduYWwgJWQgYmVmb3JlIHJ1bm5pbmcgJS4yNTBzIgorI34gbXNnc3RyICJrdW5uZSBpa2tlIGlnbm9yZXJlIHNpZ25hbCAlZCBmw7hyIGvDuHJzZWwgYWYgJS4yNTBzIgorCisjfiBtc2dpZCAiKG5vIGNsaWVudGRhdGEpIgorI34gbXNnc3RyICIoaW5nZW4ga2xpZW50ZGF0YSkiCisKKyN+IG1zZ2lkICI8bnVsbD4iCisjfiBtc2dzdHIgIjx0b20+IgorCisjfiBtc2dpZCAiaW50ZXJyZWxhdGlvbnNoaXBzIGFmZmVjdGluZyAiCisjfiBtc2dzdHIgInNhbW1lbmjDpm5nZSBkZXIgYmVyw7hyZXIgIgorCisjfiBtc2dpZCAiZGVzY3JpcHRpb24gb2YgIgorI34gbXNnc3RyICJiZXNrcml2ZWxzZSBhZiAiCisKKyN+IG1zZ2lkICJkZXNjcmlwdGlvbiIKKyN+IG1zZ3N0ciAiYmVza3JpdmVsc2UiCisKKyN+IG1zZ2lkICJjdXJyZW50bHkgaW5zdGFsbGVkIGNvbnRyb2wgaW5mbyIKKyN+IG1zZ3N0ciAiYWt0dWVsdCBpbnN0YWxsZXJldCBrb250cm9saW5mb3JtYXRpb24iCisKKyN+IG1zZ2lkICJhdmFpbGFibGUgdmVyc2lvbiBvZiBjb250cm9sIGluZm8gZm9yICIKKyN+IG1zZ3N0ciAidGlsZ8OmbmdlbGlnIHZlcnNpb24gYWYga29udHJvbGluZm9ybWF0aW9uIGZvciAiCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vZGUuZ21vIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL2RlLmdtbwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xZGU0OGQzCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL2RlLmdtbwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vZGUucG8gYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vZGUucG8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzY0NjFhNQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9kZS5wbwpAQCAtMCwwICsxLDE2OTggQEAKKyMgVGV4dGUgZsO8ciBEZWJpYW4gZHBrZy9kc2VsZWN0L3BvL2RlLnBvCisjIENvcHlyaWdodCDCqSAyMDAwIFNvZnR3YXJlIGluIHRoZSBQdWJsaWMgSW50ZXJlc3QuCisjIEhhcnRtdXQgS29wdGVpbiA8a29wdGVpbkBkZWJpYW4ub3JnPiwgQXByIDIwMDAuCisjIEVyaWNoIFNjaHViZXJ0IDxkZWJpYW5Adml0YXZvbm5pLmRlPiwgTWFyY2ggMjAwMS4KKyMgTWljaGFlbCBQaWVmZWwgPHBpZWZlbEBkZWJpYW4ub3JnPiwgMjAwMSwgMjAwMiwgMjAwMywgMjAwNCwgMjAwNS4KKyMgRmxvcmlhbiBFcm5zdCA8ZmxvcmlhbkB1bmktaGQuZGU+LCAyMDA0LgorIyBTdmVuIEpvYWNoaW0gPHN2ZW5qb2FjQGdteC5kZT4sIDIwMDYsIDIwMDcsIDIwMDgsIDIwMDksIDIwMTAuCisjCittc2dpZCAiIgorbXNnc3RyICIiCisiUHJvamVjdC1JZC1WZXJzaW9uOiBEZWJpYW4gZHBrZyAxLjE1LjguNVxuIgorIlJlcG9ydC1Nc2dpZC1CdWdzLVRvOiBkZWJpYW4tZHBrZ0BsaXN0cy5kZWJpYW4ub3JnXG4iCisiUE9ULUNyZWF0aW9uLURhdGU6IDIwMTEtMTAtMTQgMDc6MTErMDIwMFxuIgorIlBPLVJldmlzaW9uLURhdGU6IDIwMTAtMTAtMjQgMDk6NDQrMDIwMFxuIgorIkxhc3QtVHJhbnNsYXRvcjogU3ZlbiBKb2FjaGltIDxzdmVuam9hY0BnbXguZGU+XG4iCisiTGFuZ3VhZ2UtVGVhbTogR2VybWFuIDxkZWJpYW4tbDEwbi1nZXJtYW5AbGlzdHMuZGViaWFuLm9yZz5cbiIKKyJMYW5ndWFnZTogZGVcbiIKKyJNSU1FLVZlcnNpb246IDEuMFxuIgorIkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD1VVEYtOFxuIgorIkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDgtYml0XG4iCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MTI1Cittc2dpZCAiU2VhcmNoIGZvciA/ICIKK21zZ3N0ciAiU3VjaGVuIG5hY2ggPyAiCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MTQ3Cittc2dpZCAiRXJyb3I6ICIKK21zZ3N0ciAiRmVobGVyOiAiCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MTc4Cittc2dpZCAiSGVscDogIgorbXNnc3RyICJIaWxmZTogIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE4NAorbXNnaWQgIlByZXNzID8gZm9yIGhlbHAgbWVudSwgLiBmb3IgbmV4dCB0b3BpYywgPHNwYWNlPiB0byBleGl0IGhlbHAuIgorbXNnc3RyICIiCisiwrs/wqsgZsO8ciBIaWxmZW1lbsO8LCDCuy7CqyBmw7xyIG7DpGNoc3RlcyBUaGVtYSwgPExlZXI+IHp1bSBWZXJsYXNzZW4gZGVyIEhpbGZlLiIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxOTEKK21zZ2lkICJIZWxwIGluZm9ybWF0aW9uIGlzIGF2YWlsYWJsZSB1bmRlciB0aGUgZm9sbG93aW5nIHRvcGljczoiCittc2dzdHIgIkhpbGZlaW5mb3JtYXRpb25lbiBzaW5kIHVudGVyIGRlbiBmb2xnZW5kZW4gVGhlbWVuIHZlcmbDvGdiYXI6IgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE5OQorbXNnaWQgIiIKKyJQcmVzcyBhIGtleSBmcm9tIHRoZSBsaXN0IGFib3ZlLCA8c3BhY2U+IG9yIGBxJyB0byBleGl0IGhlbHAsXG4iCisiICBvciBgLicgKGZ1bGwgc3RvcCkgdG8gcmVhZCBlYWNoIGhlbHAgcGFnZSBpbiB0dXJuLiAiCittc2dzdHIgIiIKKyJEcsO8Y2tlbiBTaWUgZWluZSBUYXN0ZSBhdXMgZGVyIG9iaWdlbiBMaXN0ZSwgPExlZXI+IG9kZXIgwrtxwqssIHVtIGRpZVxuIgorIiAgSGlsZmUgenUgYmVlbmRlbiwgb2RlciDCuy7CqywgdW0gYWxsZSBIaWxmZXNlaXRlbiBuYWNoZWluYW5kZXIgenUgbGVzZW4uICIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoyMDUKK21zZ2lkICJlcnJvciByZWFkaW5nIGtleWJvYXJkIGluIGhlbHAiCittc2dzdHIgIkZlaGxlciBiZWltIExlc2VuIGRlciBUYXN0YXR1ciBpbiBkZXIgSGlsZmUiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6NTcKK21zZ2lkICJpb2N0bChUSU9DR1dJTlNaKSBmYWlsZWQiCittc2dzdHIgImlvY3RsKFRJT0NHV0lOU1opIGZlaGxnZXNjaGxhZ2VuIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjYwCittc2dpZCAiZG91cGRhdGUgaW4gU0lHV0lOQ0ggaGFuZGxlciBmYWlsZWQiCittc2dzdHIgImRvdXBkYXRlIGltIFNJR1dJTkNILUhhbmRsZXIgZmVobGdlc2NobGFnZW4iCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6NjcKK21zZ2lkICJmYWlsZWQgdG8gcmVzdG9yZSBvbGQgU0lHV0lOQ0ggc2lnYWN0IgorbXNnc3RyICJBbHRlciBTSUdXSU5DSC1zaWdhY3Qga29ubnRlIG5pY2h0IHdpZWRlcmhlcmdlc3RlbGx0IHdlcmRlbiIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo2OQorbXNnaWQgImZhaWxlZCB0byByZXN0b3JlIG9sZCBzaWduYWwgbWFzayIKK21zZ3N0ciAiQWx0ZSBTaWduYWxtYXNrZSBrb25udGUgbmljaHQgd2llZGVyaGVyZ2VzdGVsbHQgd2VyZGVuIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjc5Cittc2dpZCAiZmFpbGVkIHRvIGdldCBvbGQgc2lnbmFsIG1hc2siCittc2dzdHIgIkVyaGFsdGVuIGRlciBhbHRlbiBTaWduYWxtYXNrZSBmZWhsZ2VzY2hsYWdlbiIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo4MAorbXNnaWQgImZhaWxlZCB0byBnZXQgb2xkIFNJR1dJTkNIIHNpZ2FjdCIKK21zZ3N0ciAiRXJoYWx0ZW4gZGVzIGFsdGVuIFNJR1dJTkNILXNpZ2FjdCBmZWhsZ2VzY2hsYWdlbiIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo4NAorbXNnaWQgImZhaWxlZCB0byBibG9jayBTSUdXSU5DSCIKK21zZ3N0ciAiU0lHV0lOQ0gga29ubnRlIG5pY2h0IGJsb2NraWVydCB3ZXJkZW4iCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6ODkKK21zZ2lkICJmYWlsZWQgdG8gc2V0IG5ldyBTSUdXSU5DSCBzaWdhY3QiCittc2dzdHIgIk5ldWVyIFNJR1dJTkNILXNpZ2FjdCBrb25udGUgbmljaHQgZ2VzZXR6dCB3ZXJkZW4iCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTI2Cittc2dpZCAiZmFpbGVkIHRvIGFsbG9jYXRlIGNvbG91ciBwYWlyIgorbXNnc3RyICJGYXJicGFhciBrb25udGUgbmljaHQgenVnZXdpZXNlbiB3ZXJkZW4iCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTY3Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSB0aXRsZSB3aW5kb3ciCittc2dzdHIgIlRpdGVsZmVuc3RlciBrb25udGUgbmljaHQgZXJ6ZXVndCB3ZXJkZW4iCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTcxCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSB3aGF0aW5mbyB3aW5kb3ciCittc2dzdHIgIndoYXRpbmZvLUZlbnN0ZXIga29ubnRlIG5pY2h0IGVyemV1Z3Qgd2VyZGVuIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE3NQorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgYmFzZWxpc3QgcGFkIgorbXNnc3RyICLCu2Jhc2VsaXN0IHBhZMKrIGtvbm50ZSBuaWNodCBlcnpldWd0IHdlcmRlbiIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxNzgKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGhlYWRpbmcgcGFkIgorbXNnc3RyICLCu2hlYWRpbmcgcGFkwqsga29ubnRlIG5pY2h0IGVyemV1Z3Qgd2VyZGVuIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE4MgorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgdGhpc3N0YXRlIHBhZCIKK21zZ3N0ciAiwrt0aGlzc3RhdGUgcGFkwqsga29ubnRlIG5pY2h0IGVyemV1Z3Qgd2VyZGVuIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE4NgorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgaW5mbyBwYWQiCittc2dzdHIgIsK7aW5mbyBwYWTCqyBrb25udGUgbmljaHQgZXJ6ZXVndCB3ZXJkZW4iCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTkxCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBxdWVyeSB3aW5kb3ciCittc2dzdHIgIkFiZnJhZ2UtRmVuc3RlciBrb25udGUgbmljaHQgZXJ6ZXVndCB3ZXJkZW4iCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MjU1Cittc2dpZCAiS2V5YmluZGluZ3MiCittc2dzdHIgIlRhc3Rlbnp1b3JkbnVuZ2VuIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjMwMworIywgYy1mb3JtYXQKK21zZ2lkICIgIC0tICVkJSUsIHByZXNzICIKK21zZ3N0ciAiICAtLSAlZCUlLCBkcsO8Y2tlbiBTaWUgIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjMwNgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBmb3IgbW9yZSIKK21zZ3N0ciAiJXMgZsO8ciBtZWhyIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjMxMAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyB0byBnbyBiYWNrIgorbXNnc3RyICIlcywgdW0genVyw7xja3p1Z2VoZW4iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6NzgKK21zZ2lkICJbbm90IGJvdW5kXSIKK21zZ3N0ciAiW25pY2h0IHp1Z2VvcmRuZXRdIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjgyCisjLCBjLWZvcm1hdAorbXNnaWQgIlt1bms6ICVkXSIKK21zZ3N0ciAiW3VuYmVrOiAlZF0iCisKKyMgQ0hFQ0tNRTogV28ga2FubiBtYW4gc2ljaCBkaWUgVGFzdGVuYmVsZWd1bmdlbiBhbnplaWdlbiBsYXNzZW4/CisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjEzOQorbXNnaWQgIlNjcm9sbCBvbndhcmRzIHRocm91Z2ggaGVscC9pbmZvcm1hdGlvbiIKK21zZ3N0ciAiVm9yd8OkcnRzIGR1cmNoIGRpZSBIaWxmZS9JbmZvcm1hdGlvbmVuIHNjcm9sbGVuIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0MAorbXNnaWQgIlNjcm9sbCBiYWNrd2FyZHMgdGhyb3VnaCBoZWxwL2luZm9ybWF0aW9uIgorbXNnc3RyICJSw7xja3fDpHJ0cyBkdXJjaCBkaWUgSGlsZmUvSW5mb3JtYXRpb25lbiBzY3JvbGxlbiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDEKK21zZ2lkICJNb3ZlIHVwIgorbXNnc3RyICJOYWNoIG9iZW4iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQyCittc2dpZCAiTW92ZSBkb3duIgorbXNnc3RyICJOYWNoIHVudGVuIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0MworbXNnaWQgIkdvIHRvIHRvcCBvZiBsaXN0IgorbXNnc3RyICJadW0gTGlzdGVuYW5mYW5nIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0NAorbXNnaWQgIkdvIHRvIGVuZCBvZiBsaXN0IgorbXNnc3RyICJadW0gTGlzdGVuZW5kZSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDUKK21zZ2lkICJSZXF1ZXN0IGhlbHAgKGN5Y2xlIHRocm91Z2ggaGVscCBzY3JlZW5zKSIKK21zZ3N0ciAiSGlsZmUgYWJydWZlbiAoenlrbGlzY2ggZHVyY2ggZGllIEhpbGZlc2VpdGVuIGJsw6R0dGVybikiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ2Cittc2dpZCAiQ3ljbGUgdGhyb3VnaCBpbmZvcm1hdGlvbiBkaXNwbGF5cyIKK21zZ3N0ciAiWnlrbGlzY2ggZHVyY2ggZGllIEluZm9ybWF0aW9uc2FuemVpZ2VuIGJsw6R0dGVybiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDcKK21zZ2lkICJSZWRyYXcgZGlzcGxheSIKK21zZ3N0ciAiQW56ZWlnZSBuZXUgemVpY2huZW4iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ4Cittc2dpZCAiU2Nyb2xsIG9ud2FyZHMgdGhyb3VnaCBsaXN0IGJ5IDEgbGluZSIKK21zZ3N0ciAiTGlzdGUgdW0gMSBaZWlsZSB2b3J3w6RydHMgc2Nyb2xsZW4iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ5Cittc2dpZCAiU2Nyb2xsIGJhY2t3YXJkcyB0aHJvdWdoIGxpc3QgYnkgMSBsaW5lIgorbXNnc3RyICJMaXN0ZSB1bSAxIFplaWxlIHLDvGNrd8OkcnRzIHNjcm9sbGVuIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1MAorbXNnaWQgIlNjcm9sbCBvbndhcmRzIHRocm91Z2ggaGVscC9pbmZvcm1hdGlvbiBieSAxIGxpbmUiCittc2dzdHIgIkhpbGZlL0luZm9ybWF0aW9uZW4gdW0gMSBaZWlsZSB2b3J3w6RydHMgc2Nyb2xsZW4iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTUxCittc2dpZCAiU2Nyb2xsIGJhY2t3YXJkcyB0aHJvdWdoIGhlbHAvaW5mb3JtYXRpb24gYnkgMSBsaW5lIgorbXNnc3RyICJIaWxmZS9JbmZvcm1hdGlvbmVuIHVtIDEgWmVpbGUgcsO8Y2t3w6RydHMgc2Nyb2xsZW4iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTUyCittc2dpZCAiU2Nyb2xsIG9ud2FyZHMgdGhyb3VnaCBsaXN0IgorbXNnc3RyICJMaXN0ZSB2b3J3w6RydHMgc2Nyb2xsZW4iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTUzCittc2dpZCAiU2Nyb2xsIGJhY2t3YXJkcyB0aHJvdWdoIGxpc3QiCittc2dzdHIgIkxpc3RlIHLDvGNrd8OkcnRzIHNjcm9sbGVuIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1NgorbXNnaWQgIk1hcmsgcGFja2FnZShzKSBmb3IgaW5zdGFsbGF0aW9uIgorbXNnc3RyICJQYWtldChlKSB6dXIgSW5zdGFsbGF0aW9uIG1hcmtpZXJlbiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTcKK21zZ2lkICJNYXJrIHBhY2thZ2UocykgZm9yIGRlaW5zdGFsbGF0aW9uIgorbXNnc3RyICJQYWtldChlKSB6dW0gRW50ZmVybmVuIG1hcmtpZXJlbiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTgKK21zZ2lkICJNYXJrIHBhY2thZ2UocykgZm9yIGRlaW5zdGFsbCBhbmQgcHVyZ2UiCittc2dzdHIgIlBha2V0KGUpIHp1bSBFbnRmZXJuZW4gdW5kIHZvbGxzdMOkbmRpZ2VuIEzDtnNjaGVuIG1hcmtpZXJlbiIKKworIyBDSEVDS01FOiBXYXMgaXN0IGRhbWl0IGdlbWVpbnQ/CisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1OQorbXNnaWQgIk1ha2UgaGlnaGxpZ2h0IG1vcmUgc3BlY2lmaWMiCittc2dzdHIgIkhlcnZvcmhlYnVuZyBnZW5hdWVyIG1hY2hlbiIKKworIyBDSEVDS01FOiBXYXMgaXN0IGRhbWl0IGdlbWVpbnQ/CisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2MAorbXNnaWQgIk1ha2UgaGlnaGxpZ2h0IGxlc3Mgc3BlY2lmaWMiCittc2dzdHIgIkhlcnZvcmhlYnVuZyB3ZW5pZ2VyIGdlbmF1IG1hY2hlbiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjEKK21zZ2lkICJTZWFyY2ggZm9yIGEgcGFja2FnZSB3aG9zZSBuYW1lIGNvbnRhaW5zIGEgc3RyaW5nIgorbXNnc3RyICJQYWtldCBzdWNoZW4sIGRlc3NlbiBOYW1lbiBlaW5lIFplaWNoZW5mb2xnZSBlbnRow6RsdCIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjIKK21zZ2lkICJSZXBlYXQgbGFzdCBzZWFyY2guIgorbXNnc3RyICJMZXR6dGUgU3VjaGUgd2llZGVyaG9sZW4uIgorCisjIMK7c2VjdGlvbsKrIGltIFNpbm5lIHZvbiBEZXZlbC9HYW1lcy9IYW1yYWRpbyBldGMuIMO8YmVyc2V0emUKKyMgaWNoIMO8YmVyYWxsIG1pdCDCu0JlcmVpY2jCqywgd2llIGluIGFwdGl0dWRlCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2MworbXNnaWQgIlN3YXAgc29ydCBvcmRlciBwcmlvcml0eS9zZWN0aW9uIgorbXNnc3RyICJTb3J0aWVycmVpaGVuZm9sZ2UgUHJpb3JpdMOkdC9CZXJlaWNoIHZlcnRhdXNjaGVuIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2NAorbXNnaWQgIlF1aXQsIGNvbmZpcm1pbmcsIGFuZCBjaGVja2luZyBkZXBlbmRlbmNpZXMiCittc2dzdHIgIkJlZW5kZW4sIGJlc3TDpHRpZ2VuIHVuZCBBYmjDpG5naWdrZWl0ZW4gcHLDvGZlbiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjUKK21zZ2lkICJRdWl0LCBjb25maXJtaW5nIHdpdGhvdXQgY2hlY2siCittc2dzdHIgIkJlZW5kZW4sIGJlc3TDpHRpZ2VuLCBhYmVyIG5pY2h0IHByw7xmZW4iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY2Cittc2dpZCAiUXVpdCwgcmVqZWN0aW5nIGNvbmZsaWN0L2RlcGVuZGVuY3kgc3VnZ2VzdGlvbnMiCittc2dzdHIgIkJlZW5kZW4sIEtvbmZsaWt0LS9BYmjDpG5naWdrZWl0c2VtcGZlaGx1bmdlbiBhYmxlaG5lbiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjcKK21zZ2lkICJBYm9ydCAtIHF1aXQgd2l0aG91dCBtYWtpbmcgY2hhbmdlcyIKK21zZ3N0ciAiQWJicmVjaGVuIC0gYmVlbmRlbiwgb2huZSDDhG5kZXJ1bmdlbiB2b3J6dW5laG1lbiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjgKK21zZ2lkICJSZXZlcnQgdG8gb2xkIHN0YXRlIGZvciBhbGwgcGFja2FnZXMiCittc2dzdHIgIlp1bSBhbHRlbiBTdGF0dXMgYWxsZXIgUGFrZXRlIHp1csO8Y2trZWhyZW4iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY5Cittc2dpZCAiUmV2ZXJ0IHRvIHN1Z2dlc3RlZCBzdGF0ZSBmb3IgYWxsIHBhY2thZ2VzIgorbXNnc3RyICJadW0gdm9yZ2VzY2hsYWdlbmVuIFN0YXR1cyBhbGxlciBQYWtldGUgenVyw7xja2tlaHJlbiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNzAKK21zZ2lkICJSZXZlcnQgdG8gZGlyZWN0bHkgcmVxdWVzdGVkIHN0YXRlIGZvciBhbGwgcGFja2FnZXMiCittc2dzdHIgIlp1bSBkaXJla3QgdmVybGFuZ3RlbiBTdGF0dXMgYWxsZXIgUGFrZXRlIHp1csO8Y2trZWhyZW4iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTcxCittc2dpZCAiUmV2ZXJ0IHRvIGN1cnJlbnRseSBpbnN0YWxsZWQgc3RhdGUgZm9yIGFsbCBwYWNrYWdlcyIKK21zZ3N0ciAiWnVtIGRlcnplaXQgaW5zdGFsbGllcnRlbiBTdGF0dXMgYWxsZXIgUGFrZXRlIHp1csO8Y2trZWhyZW4iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTc0Cittc2dpZCAiU2VsZWN0IGN1cnJlbnRseS1oaWdobGlnaHRlZCBhY2Nlc3MgbWV0aG9kIgorbXNnc3RyICJEZXJ6ZWl0IGhlcnZvcmdlaG9iZW5lIFp1Z3JpZmZzbWV0aG9kZSBhdXN3w6RobGVuIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE3NQorbXNnaWQgIlF1aXQgd2l0aG91dCBjaGFuZ2luZyBzZWxlY3RlZCBhY2Nlc3MgbWV0aG9kIgorbXNnc3RyICJCZWVuZGVuLCBvaG5lIGRpZSBadWdyaWZmc21ldGhvZGUgenUgw6RuZGVybiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoyOQorbXNnaWQgIktleXN0cm9rZXMiCittc2dzdHIgIlRhc3RlbmvDvHJ6ZWwiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MjkKK21zZ2lkICIiCisiTW90aW9uIGtleXM6IE5leHQvUHJldmlvdXMsIFRvcC9FbmQsIFVwL0Rvd24sIEJhY2t3YXJkcy9Gb3J3YXJkczpcbiIKKyIgIGosIERvd24tYXJyb3cgICAgICAgICBrLCBVcC1hcnJvdyAgICAgICAgICAgICBtb3ZlIGhpZ2hsaWdodFxuIgorIiAgTiwgUGFnZS1kb3duLCBTcGFjZSAgIFAsIFBhZ2UtdXAsIEJhY2tzcGFjZSAgIHNjcm9sbCBsaXN0IGJ5IDEgcGFnZVxuIgorIiAgXm4gICAgICAgICAgICAgICAgICAgIF5wICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBsaXN0IGJ5IDEgbGluZVxuIgorIiAgdCwgSG9tZSAgICAgICAgICAgICAgIGUsIEVuZCAgICAgICAgICAgICAgICAgIGp1bXAgdG8gdG9wL2VuZCBvZiBsaXN0XG4iCisiICB1ICAgICAgICAgICAgICAgICAgICAgZCAgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGluZm8gYnkgMSBwYWdlXG4iCisiICBedSAgICAgICAgICAgICAgICAgICAgXmQgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGluZm8gYnkgMSBsaW5lXG4iCisiICBCLCBMZWZ0LWFycm93ICAgICAgICAgRiwgUmlnaHQtYXJyb3cgICAgICAgICAgcGFuIGRpc3BsYXkgYnkgMS8zIHNjcmVlblxuIgorIiAgXmIgICAgICAgICAgICAgICAgICAgIF5mICAgICAgICAgICAgICAgICAgICAgIHBhbiBkaXNwbGF5IGJ5IDEgY2hhcmFjdGVyXG4iCisiXG4iCisiTWFyayBwYWNrYWdlcyBmb3IgbGF0ZXIgcHJvY2Vzc2luZzpcbiIKKyIgKywgSW5zZXJ0ICBpbnN0YWxsIG9yIHVwZ3JhZGUgICAgICA9LCBIICBob2xkIGluIHByZXNlbnQgc3RhdGVcbiIKKyIgLSwgRGVsZXRlICByZW1vdmUgICAgICAgICAgICAgICAgICA6LCBHICB1bmhvbGQ6IHVwZ3JhZGUgb3IgbGVhdmUgIgorInVuaW5zdGFsbGVkXG4iCisiIF8gICAgICAgICAgcmVtb3ZlICYgcHVyZ2UgY29uZmlnXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTWlzY2VsbGFuZW91czpcbiIKKyJRdWl0LCBleGl0LCBvdmVyd3JpdGUgKG5vdGUgY2FwaXRhbHMhKTogICAgICAgPywgRjEgcmVxdWVzdCBoZWxwIChhbHNvICIKKyJIZWxwKVxuIgorIiBSZXR1cm4gIENvbmZpcm0sIHF1aXQgKGNoZWNrIGRlcGVuZGVuY2llcykgICBpLCBJICB0b2dnbGUvY3ljbGUgaW5mbyAiCisiZGlzcGxheXNcbiIKKyIgICBRICAgICBDb25maXJtLCBxdWl0IChvdmVycmlkZSBkZXAucykgICAgICAgbywgTyAgY3ljbGUgdGhyb3VnaCBzb3J0ICIKKyJvcHRpb25zXG4iCisiIFgsIEVzYyAgZVhpdCwgYWJhbmRvbmluZyBhbnkgY2hhbmdlcyBtYWRlICAgIHYsIFYgIGNoYW5nZSBzdGF0dXMgZGlzcGxheSAiCisib3B0c1xuIgorIiAgIFIgICAgIFJldmVydCB0byBzdGF0ZSBiZWZvcmUgdGhpcyBsaXN0ICAgICAgXmwgICByZWRyYXcgZGlzcGxheVxuIgorIiAgIFUgICAgIHNldCBhbGwgdG8gc1VnZ2VzdGVkIHN0YXRlICAgICAgICAgICAgIC8gICBzZWFyY2ggKFJldHVybiB0byAiCisiY2FuY2VsKVxuIgorIiAgIEQgICAgIHNldCBhbGwgdG8gRGlyZWN0bHkgcmVxdWVzdGVkIHN0YXRlICBuLCBcXCAgcmVwZWF0IGxhc3Qgc2VhcmNoXG4iCittc2dzdHIgIiIKKyJCZXdlZ3VuZ3N0YXN0ZW46IE7DpGNoc3Rlcy9Wb3JoZXJpZ2VzLCBBbmZhbmcvRW5kZSwgSG9jaC9SdW50ZXIsIFLDvGNrLS8iCisiVm9yd8OkcnRzOlxuIgorIiAgaiwgUGZlaWwgYWIgICAgICAgICBrLCBQZmVpbCBob2NoICAgICAgICAgICBIZXJ2b3JoZWJ1bmcgYmV3ZWdlblxuIgorIiAgTiwgQmlsZCBhYiwgTGVlcnQuICBQLCBCaWxkIGhvY2gsIFLDvGNrc2Noci4gTGlzdGUgdW0gMSBTZWl0ZSBzY3JvbGxlblxuIgorIiAgXm4gICAgICAgICAgICAgICAgICBecCAgICAgICAgICAgICAgICAgICAgICBMaXN0ZSB1bSAxIFplaWxlIHNjcm9sbGVuXG4iCisiICB0LCBQb3MxICAgICAgICAgICAgIGUsIEVuZGUgICAgICAgICAgICAgICAgIHNwcmluZ2UgenUgQW5mYW5nL0VuZGUgZGVyICIKKyJMaXN0ZVxuIgorIiAgdSAgICAgICAgICAgICAgICAgICBkICAgICAgICAgICAgICAgICAgICAgICBJbmZvIHVtIDEgU2VpdGUgc2Nyb2xsZW5cbiIKKyIgIF51ICAgICAgICAgICAgICAgICAgXmQgICAgICAgICAgICAgICAgICAgICAgSW5mbyB1bSAxIFplaWxlIHNjcm9sbGVuXG4iCisiICBCLCBQZmVpbCBsaW5rcyAgICAgIEYsIFBmZWlsIHJlY2h0cyAgICAgICAgIEFuei4gdW0gMS8zIEJpbGRzY2hpcm0gIgorInNjaGllYmVuXG4iCisiICBeYiAgICAgICAgICAgICAgICAgIF5mICAgICAgICAgICAgICAgICAgICAgIEFuemVpZ2UgdW0gMSBaZWljaGVuIHNjaGllYmVuXG4iCisiXG4iCisiUGFrZXRlIGbDvHIgc3DDpHRlcmUgQmVhcmJlaXR1bmcgbWFya2llcmVuOlxuIgorIiArLCBFaW5mZyAgIGluc3RhbGwuIG9kZXIgYWt0dWFsLiAgPSwgSCAgaW0gbW9tZW50YW5lbiBadXN0YW5kIGhhbHRlblxuIgorIiAtLCBFbnRmICAgIGzDtnNjaGVuICAgICAgICAgICAgICAgIDosIEcgIGxvc2xhc3NlbjogYWt0dWFsLiBvZGVyIHVuaW5zdC4gIgorImxhc3NlblxuIgorIiBfICAgICAgICAgIGzDtnNjaGVuIHVuZCBLb25maWd1cmF0aW9uIGVudGZlcm5lblxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZlcnNjaGllZGVuZXM6XG4iCisiQmVlbmRlbiwgw7xiZXJzdGltbWVuIChncm/Dny9rbGVpbiBiZWFjaHRlbiEpOiAgPywgRjEgSGlsZmUgKGF1Y2ggSGlsZmUtIgorIlRhc3RlKVxuIgorIiBFaW5nYWJlIEJlc3TDpHQuLCBFbmRlIChBYmguIMO8YmVycHLDvGZlbikgICAgICBpLCBJICBJbmZvLUFuemVpZ2UgdW1zY2hhbHRlblxuIgorIiAgIFEgICAgIEJlc3TDpHQuLCBFbmRlIChBYmguIMO8YmVyc3RpbW1lbikgICAgIG8sIE8gIFNvcnRpZXJ1bmcgw6RuZGVyblxuIgorIiBYLCBFc2MgIEFiYnJ1Y2gsIGFsbGUgw4RuZGVydW5nZW4gdmVyd2VyZmVuICAgdiwgViAgWnVzdGFuZHNhbnplaWdlIMOkbmRlcm5cbiIKKyIgICBSICAgICB6dSBadXN0YW5kIHZvciBMaXN0ZSB6dXLDvGNra2VocmVuICAgICBebCAgIEFuemVpZ2UgbmV1IHplaWNobmVuXG4iCisiICAgVSAgICAgYWxsZSBhdWYgdm9yZ2VzY2hsLiBadXN0YW5kIHNldHplbiAgICAgLyAgIHN1Y2hlbiAoRWluZ2FiZSBicmljaHQgIgorImFiKVxuIgorIiAgIEQgICAgIGFsbGUgYXVmIGRpcmVrdCBhbmdlZi4gWnVzdC4gc2V0emVuICBuLCBcXCAgbGV0enRlIFN1Y2hlICIKKyJ3aWVkZXJob2xlblxuIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjU1Cittc2dpZCAiSW50cm9kdWN0aW9uIHRvIHBhY2thZ2Ugc2VsZWN0aW9ucyIKK21zZ3N0ciAiRWluZsO8aHJ1bmcgaW4gZGllIFBha2V0YXVzd2FobCIKKworIyBNaWNoYWVsIFBpZWZlbDogRGllc2Ugw5xiZXJzZXR6dW5nIGlzdCBzZWhyIGZyZWkuIEFiZXIgZXMgZXJzY2hlaW50IG1pcgorIyBzZWhyIHdpY2h0aWcsIGRhc3Mgc2llIGluIGRpZSBTdGFuZGFyZC1UZXJtaW5hbC1HcsO2w59lIHZvbiA4MHgyNQorIyBwYXNzdC4gQXVmIGRpZXNlbiBpc3QgbsOkbWxpY2ggc29uc3QgZGllIEhpbGZlIGFiZ2VzY2huaXR0ZW4hCisjIFN2ZW4gSm9hY2hpbTogSW4gVVRGLTgtVGVybWluYWxzIGthbm4gZGllIEhpbGZlIHRyb3R6ZGVtIGFiZ2VzY2huaXR0ZW4KKyMgd2VyZGVuLCBkYSBkc2VsZWN0IGFubmltbXQsIGRhc3MgamVkZXMgWmVpY2hlbiBudXIgMSBCeXRlIGJyZWl0IGlzdC4KKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6NTUKK21zZ2lkICIiCisiV2VsY29tZSB0byBkc2VsZWN0J3MgbWFpbiBwYWNrYWdlIGxpc3RpbmcuXG4iCisiXG4iCisiWW91IHdpbGwgYmUgcHJlc2VudGVkIHdpdGggYSBsaXN0IG9mIHBhY2thZ2VzIHdoaWNoIGFyZSBpbnN0YWxsZWQgb3IgIgorImF2YWlsYWJsZVxuIgorImZvciBpbnN0YWxsYXRpb24uICBZb3UgY2FuIG5hdmlnYXRlIGFyb3VuZCB0aGUgbGlzdCB1c2luZyB0aGUgY3Vyc29yIGtleXMsXG4iCisibWFyayBwYWNrYWdlcyBmb3IgaW5zdGFsbGF0aW9uICh1c2luZyBgKycpIG9yIGRlaW5zdGFsbGF0aW9uICh1c2luZyBgLScpLlxuIgorIlBhY2thZ2VzIGNhbiBiZSBtYXJrZWQgZWl0aGVyIHNpbmdseSBvciBpbiBncm91cHM7IGluaXRpYWxseSB5b3Ugd2lsbCBzZWUgIgorInRoYXRcbiIKKyJ0aGUgbGluZSBgQWxsIHBhY2thZ2VzJyBpcyBzZWxlY3RlZC4gIGArJywgYC0nIGFuZCBzbyBvbiB3aWxsIGFmZmVjdCBhbGwgIgorInRoZVxuIgorInBhY2thZ2VzIGRlc2NyaWJlZCBieSB0aGUgaGlnaGxpZ2h0ZWQgbGluZS5cbiIKKyJcbiIKKyJTb21lIG9mIHlvdXIgY2hvaWNlcyB3aWxsIGNhdXNlIGNvbmZsaWN0cyBvciBkZXBlbmRlbmN5IHByb2JsZW1zOyB5b3Ugd2lsbCAiCisiYmVcbiIKKyJnaXZlbiBhIHN1Yi1saXN0IG9mIHRoZSByZWxldmFudCBwYWNrYWdlcywgc28gdGhhdCB5b3UgY2FuIHNvbHZlIHRoZSAiCisicHJvYmxlbXMuXG4iCisiXG4iCisiWW91IHNob3VsZCByZWFkIHRoZSBsaXN0IG9mIGtleXMgYW5kIHRoZSBleHBsYW5hdGlvbnMgb2YgdGhlIGRpc3BsYXkuXG4iCisiTXVjaCBvbi1saW5lIGhlbHAgaXMgYXZhaWxhYmxlLCBwbGVhc2UgbWFrZSB1c2Ugb2YgaXQgLSBwcmVzcyBgPycgYXRcbiIKKyJhbnkgdGltZSBmb3IgaGVscC5cbiIKKyJcbiIKKyJXaGVuIHlvdSBoYXZlIGZpbmlzaGVkIHNlbGVjdGluZyBwYWNrYWdlcywgcHJlc3MgPGVudGVyPiB0byBjb25maXJtICIKKyJjaGFuZ2VzLFxuIgorIm9yIGBYJyB0byBxdWl0IHdpdGhvdXQgc2F2aW5nIGNoYW5nZXMuIEEgZmluYWwgY2hlY2sgb24gY29uZmxpY3RzIGFuZFxuIgorImRlcGVuZGVuY2llcyB3aWxsIGJlIGRvbmUgLSBoZXJlIHRvbyB5b3UgbWF5IHNlZSBhIHN1Ymxpc3QuXG4iCisiXG4iCisiUHJlc3MgPHNwYWNlPiB0byBsZWF2ZSBoZWxwIGFuZCBlbnRlciB0aGUgbGlzdCBub3cuXG4iCittc2dzdHIgIiIKKyJXaWxsa29tbWVuIHp1ciBIYXVwdHBha2V0YXVzd2FobCB2b24gZHNlbGVjdC5cbiIKKyJcbiIKKyJTaWUgYmVrb21tZW4gZWluZSBMaXN0ZSB2b24gUGFrZXRlbiBhbmdlemVpZ3QsIGRpZSBpbnN0YWxsaWVydCBvZGVyIHp1clxuIgorIkluc3RhbGxhdGlvbiB2ZXJmw7xnYmFyIHNpbmQuIE1pdCBkZW4gUGZlaWx0YXN0ZW4ga8O2bm5lbiBTaWUgc2ljaCBkdXJjaCBkaWVcbiIKKyJMaXN0ZSBiZXdlZ2VuIHVuZCBlaW4gUGFrZXQgenVtIEluc3RhbGxpZXJlbiAobWl0IMK7K8KrKSBvZGVyIEVudGZlcm5lbiAobWl0XG4iCisiwrstwqspIG1hcmtpZXJlbi4gUGFrZXRlIGvDtm5uZW4gZWluemVsbiBvZGVyIGluIEdydXBwZW4gbWFya2llcnQgd2VyZGVuOyB6dVxuIgorIkFuZmFuZyBzZWhlbiBTaWUgwrtBbGxlIFBha2V0ZcKrIGhlcnZvcmdlaG9iZW4uIMK7K8KrLCDCuy3CqyB1c3cuIHdpcmtlbiBkYW5uIGF1ZlxuIgorImFsbGUgUGFrZXRlLCBkaWUgZHVyY2ggZGllIGhlcnZvcmdlaG9iZW5lIFplaWxlIGJlc2NocmllYmVuIHdlcmRlbi5cbiIKKyJcbiIKKyJHZWxlZ2VudGxpY2ggZXJnZWJlbiBzaWNoIEtvbmZsaWt0ZSBvZGVyIEFiaMOkbmdpZ2tlaXRzcHJvYmxlbWU7IGVpbmUgIgorIlRlaWxsaXN0ZVxuIgorImJldHJvZmZlbmVyIFBha2V0ZSB3aXJkIGFuZ2V6ZWlndCwgaW4gZGVyIFNpZSBkYW5uIGRpZSBQcm9ibGVtZSBsw7ZzZW4gIgorImvDtm5uZW4uXG4iCisiXG4iCisiU2llIHNvbGx0ZW4gZGllIExpc3RlIGRlciBUYXN0ZW4gdW5kIGRpZSBFcmtsw6RydW5nIGRlciBBbnplaWdlIGR1cmNobGVzZW4uXG4iCisiRXMgaXN0IHZpZWwgSGlsZmUgdmVyZsO8Z2JhciwgYml0dGUgbnV0emVuIFNpZSBzaWUgLSBkcsO8Y2tlbiBTaWUgamVkZXJ6ZWl0ICIKKyLCuz/CqyxcbiIKKyJ1bSBkaWUgSGlsZmUgYXVmenVydWZlbi5cbiIKKyJcbiIKKyJXZW5uIFNpZSBtaXQgaWhyZXIgV2FobCB6dWZyaWVkZW4gc2luZCwgZHLDvGNrZW4gU2llIDxFaW5nYWJlPiwgdW0gIgorIsOEbmRlcnVuZ2VuXG4iCisienUgYmVzdMOkdGlnZW4gb2RlciDCu1jCqywgdW0gZGllIFBha2V0bGlzdGUgb2huZSDDhG5kZXJ1bmdlbiB6dSB2ZXJsYXNzZW4uIEVzXG4iCisiZ2lidCBub2NoIGVpbmUgYWJzY2hsaWXDn2VuZGUgS29uZmxpa3QtIHVuZCBBYmjDpG5naWdrZWl0c3Byw7xmdW5nIC0gZXZlbnR1ZWxsXG4iCisiZXJzY2hlaW50IHdpZWRlciBlaW5lIFRlaWxsaXN0ZS5cbiIKKyJcbiIKKyJEcsO8Y2tlbiBTaWUgPExlZXI+LCB1bSBkaWUgSGlsZmUgenUgdmVybGFzc2VuIHVuZCB6dXIgUGFrZXRsaXN0ZSB6dSAiCisiZ2VsYW5nZW4uXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6ODAKK21zZ2lkICJJbnRyb2R1Y3Rpb24gdG8gcmVhZC1vbmx5IHBhY2thZ2UgbGlzdCBicm93c2VyIgorbXNnc3RyICJFaW5mw7xocnVuZyBpbiBkZW4gTnVyLUxlc2UtUGFrZXRsaXN0ZW4tQnJvd3NlciIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo4MAorbXNnaWQgIiIKKyJXZWxjb21lIHRvIGRzZWxlY3QncyBtYWluIHBhY2thZ2UgbGlzdGluZy5cbiIKKyJcbiIKKyJZb3Ugd2lsbCBiZSBwcmVzZW50ZWQgd2l0aCBhIGxpc3Qgb2YgcGFja2FnZXMgd2hpY2ggYXJlIGluc3RhbGxlZCBvciAiCisiYXZhaWxhYmxlXG4iCisiZm9yIGluc3RhbGxhdGlvbi4gIFNpbmNlIHlvdSBkbyBub3QgaGF2ZSB0aGUgcHJpdmlsZWdlIG5lY2Vzc2FyeSB0byB1cGRhdGVcbiIKKyJwYWNrYWdlIHN0YXRlcywgeW91IGFyZSBpbiBhIHJlYWQtb25seSBtb2RlLiAgWW91IGNhbiBuYXZpZ2F0ZSBhcm91bmQgdGhlXG4iCisibGlzdCB1c2luZyB0aGUgY3Vyc29yIGtleXMgKHBsZWFzZSBzZWUgdGhlIGBLZXlzdHJva2VzJyBoZWxwIHNjcmVlbiksICIKKyJvYnNlcnZlXG4iCisidGhlIHN0YXR1cyBvZiB0aGUgcGFja2FnZXMgYW5kIHJlYWQgaW5mb3JtYXRpb24gYWJvdXQgdGhlbS5cbiIKKyJcbiIKKyJZb3Ugc2hvdWxkIHJlYWQgdGhlIGxpc3Qgb2Yga2V5cyBhbmQgdGhlIGV4cGxhbmF0aW9ucyBvZiB0aGUgZGlzcGxheS5cbiIKKyJNdWNoIG9uLWxpbmUgaGVscCBpcyBhdmFpbGFibGUsIHBsZWFzZSBtYWtlIHVzZSBvZiBpdCAtIHByZXNzIGA/JyBhdFxuIgorImFueSB0aW1lIGZvciBoZWxwLlxuIgorIlxuIgorIldoZW4geW91IGhhdmUgZmluaXNoZWQgYnJvd3NpbmcsIHByZXNzIGBRJyBvciA8ZW50ZXI+IHRvIHF1aXQuXG4iCisiXG4iCisiUHJlc3MgPHNwYWNlPiB0byBsZWF2ZSBoZWxwIGFuZCBlbnRlciB0aGUgbGlzdCBub3cuXG4iCittc2dzdHIgIiIKKyJXaWxsa29tbWVuIHp1ciBIYXVwdHBha2V0YXVzd2FobCB2b24gZHNlbGVjdC4gXG4iCisiXG4iCisiU2llIGJla29tbWVuIGVpbmUgTGlzdGUgdm9uIFBha2V0ZW4gYW5nZXplaWd0LCBkaWUgaW5zdGFsbGllcnQgb2RlciB6dXJcbiIKKyJJbnN0YWxsYXRpb24gdmVyZsO8Z2JhciBzaW5kLiBEYSBTaWUgbmljaHQgZGllIHp1bSBBa3R1YWxpc2llcmVuIGRlcyBTdGF0dXNcbiIKKyJ2b24gUGFrZXRlbiBuw7Z0aWdlbiBQcml2aWxlZ2llbiBiZXNpdHplbiwgc2luZCBTaWUgaW0gTnVyLUxlc2UtTW9kdXMuIE1pdFxuIgorImRlbiBQZmVpbHRhc3RlbiBrw7ZubmVuIFNpZSBzaWNoIGR1cmNoIGRpZSBMaXN0ZSBiZXdlZ2VuIChiaXR0ZSBsZXNlbiBTaWUgIgorImRpZVxuIgorIlRhc3RhdHVya8O8cnplbC1IaWxmZSksIGRlbiBadXN0YW5kIHZvbiBQYWtldGVuIGJlZ3V0YWNodGVuIHVuZCAiCisiSW5mb3JtYXRpb25lblxuIgorIsO8YmVyIHNpZSBlcmhhbHRlbi5cbiIKKyJcbiIKKyJTaWUgc29sbHRlbiBkaWUgTGlzdGUgZGVyIFRhc3RlbiB1bmQgZGllIEVya2zDpHJ1bmcgZGVyIEFuemVpZ2UgZHVyY2hsZXNlbi5cbiIKKyJFcyBpc3QgdmllbCBIaWxmZSB2ZXJmw7xnYmFyLCBiaXR0ZSBudXR6ZW4gU2llIHNpZSAtIGRyw7xja2VuIFNpZSBqZWRlcnplaXRcbiIKKyLCuz/CqywgdW0gZGllIEhpbGZlIGF1Znp1cnVmZW4uXG4iCisiXG4iCisiV2VubiBTaWUgbWl0IGRlbSBEdXJjaGZvcnN0ZW4gZmVydGlnIHNpbmQsIGRyw7xja2VuIFNpZSDCu1HCqyBvZGVyIGRpZVxuIgorIkVpbmdhYmV0YXN0ZSB6dW0gQmVlbmRlbi5cbiIKKyJcbiIKKyJEcsO8Y2tlbiBTaWUgPExlZXI+LCB1bSBkaWUgSGlsZmUgenUgdmVybGFzc2VuIHVuZCB6dXIgUGFrZXRsaXN0ZSB6dSAiCisiZ2VsYW5nZW4uXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6OTkKK21zZ2lkICJJbnRyb2R1Y3Rpb24gdG8gY29uZmxpY3QvZGVwZW5kZW5jeSByZXNvbHV0aW9uIHN1Yi1saXN0IgorbXNnc3RyICJIaW53ZWlzZSB6dXIgVGVpbGxpc3RlIHp1bSBBdWZsw7ZzZW4gdm9uIEtvbmZsaWt0ZW4vQWJow6RuZ2lna2VpdGVuIgorCisjIEF1Y2ggZGllc2VyIEhpbGZlYmlsZHNjaGlybSBzb2xsdGUgZGllIDIyIFplaWxlbiBuaWNodCDDvGJlcnNjaHJlaXRlbi4KKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6OTkKK21zZ2lkICIiCisiRGVwZW5kZW5jeS9jb25mbGljdCByZXNvbHV0aW9uIC0gaW50cm9kdWN0aW9uLlxuIgorIlxuIgorIk9uZSBvciBtb3JlIG9mIHlvdXIgY2hvaWNlcyBoYXZlIHJhaXNlZCBhIGNvbmZsaWN0IG9yIGRlcGVuZGVuY3kgcHJvYmxlbSAtXG4iCisic29tZSBwYWNrYWdlcyBzaG91bGQgb25seSBiZSBpbnN0YWxsZWQgaW4gY29uanVuY3Rpb24gd2l0aCBjZXJ0YWluIG90aGVycywgIgorImFuZFxuIgorInNvbWUgY29tYmluYXRpb25zIG9mIHBhY2thZ2VzIG1heSBub3QgYmUgaW5zdGFsbGVkIHRvZ2V0aGVyLlxuIgorIlxuIgorIllvdSB3aWxsIHNlZSBhIHN1Yi1saXN0IGNvbnRhaW5pbmcgdGhlIHBhY2thZ2VzIGludm9sdmVkLiAgVGhlIGJvdHRvbSBoYWxmICIKKyJvZlxuIgorInRoZSBkaXNwbGF5IHNob3dzIHJlbGV2YW50IGNvbmZsaWN0cyBhbmQgZGVwZW5kZW5jaWVzOyB1c2UgYGknIHRvIGN5Y2xlICIKKyJiZXR3ZWVuXG4iCisidGhhdCwgdGhlIHBhY2thZ2UgZGVzY3JpcHRpb25zIGFuZCB0aGUgaW50ZXJuYWwgY29udHJvbCBpbmZvcm1hdGlvbi5cbiIKKyJcbiIKKyJBIHNldCBvZiBgc3VnZ2VzdGVkJyBwYWNrYWdlcyBoYXMgYmVlbiBjYWxjdWxhdGVkLCBhbmQgdGhlIGluaXRpYWwgbWFya2luZ3MgIgorImluXG4iCisidGhpcyBzdWItbGlzdCBoYXZlIGJlZW4gc2V0IHRvIG1hdGNoIHRob3NlLCBzbyB5b3UgY2FuIGp1c3QgaGl0IFJldHVybiB0b1xuIgorImFjY2VwdCB0aGUgc3VnZ2VzdGlvbnMgaWYgeW91IHdpc2guICBZb3UgbWF5IGFib3J0IHRoZSBjaGFuZ2Uocykgd2hpY2ggIgorImNhdXNlZFxuIgorInRoZSBwcm9ibGVtKHMpLCBhbmQgZ28gYmFjayB0byB0aGUgbWFpbiBsaXN0LCBieSBwcmVzc2luZyBjYXBpdGFsIGBYJy5cbiIKKyJcbiIKKyJZb3UgY2FuIGFsc28gbW92ZSBhcm91bmQgdGhlIGxpc3QgYW5kIGNoYW5nZSB0aGUgbWFya2luZ3Mgc28gdGhhdCB0aGV5IGFyZSAiCisibW9yZVxuIgorImxpa2Ugd2hhdCB5b3Ugd2FudCwgYW5kIHlvdSBjYW4gYHJlamVjdCcgbXkgc3VnZ2VzdGlvbnMgYnkgdXNpbmcgdGhlICIKKyJjYXBpdGFsXG4iCisiYEQnIG9yIGBSJyBrZXlzIChzZWUgdGhlIGtleWJpbmRpbmdzIGhlbHAgc2NyZWVuKS4gIFlvdSBjYW4gdXNlIGNhcGl0YWwgYFEnICIKKyJ0b1xuIgorImZvcmNlIG1lIHRvIGFjY2VwdCB0aGUgc2l0dWF0aW9uIGN1cnJlbnRseSBkaXNwbGF5ZWQsIGluIGNhc2UgeW91IHdhbnQgdG9cbiIKKyJvdmVycmlkZSBhIHJlY29tbWVuZGF0aW9uIG9yIHRoaW5rIHRoYXQgdGhlIHByb2dyYW0gaXMgbWlzdGFrZW4uXG4iCisiXG4iCisiUHJlc3MgPHNwYWNlPiB0byBsZWF2ZSBoZWxwIGFuZCBlbnRlciB0aGUgc3ViLWxpc3Q7IHJlbWVtYmVyOiBwcmVzcyBgPycgZm9yICIKKyJoZWxwLlxuIgorbXNnc3RyICIiCisiQWJow6RuZ2lna2VpdHMvS29uZmxpa3QtQXVmbMO2c3VuZyAtIEVpbmbDvGhydW5nLlxuIgorIlxuIgorIkVpbmUgb2RlciBtZWhyZXJlIElocmVyIEF1c3dhaGxlbiBoYWJlbiBlaW5lbiBLb25mbGlrdCBvZGVyIGVpbiAiCisiQWJow6RuZ2lna2VpdHMtXG4iCisicHJvYmxlbSBhdXNnZWzDtnN0IC0gZWluaWdlIFBha2V0ZSBzb2xsdGVuIG51ciB6dXNhbW1lbiBtaXQgYmVzdGltbXRlbiAiCisiYW5kZXJlblxuIgorInVuZCB3aWVkZXIgYW5kZXJlIGTDvHJmZW4gbmljaHQgZ2VtZWluc2FtIGluc3RhbGxpZXJ0IHdlcmRlbi5cbiIKKyJcbiIKKyJTaWUgd2VyZGVuIGVpbmUgVGVpbGxpc3RlIGRlciBiZXRyb2ZmZW5lbiBQYWtldGUgc2VoZW4uIERpZSB1bnRlcmUgSMOkbGZ0ZSAiCisiZGVyXG4iCisiQW56ZWlnZSB6ZWlndCByZWxldmFudGUgS29uZmxpa3RlIHVuZCBBYmjDpG5naWdrZWl0ZW47IGJlbnV0emVuIFNpZSDCu2nCqyB6dW1cbiIKKyJVbXNjaGFsdGVuIHp3aXNjaGVuIGRpZXNlbiBJbmZvcywgUGFrZXRiZXNjaHJlaWJ1bmdlbiB1bmQgaW50LiBDb250cm9sLSIKKyJJbmZvcy5cbiIKKyJcbiIKKyJFaW5lIFphaGwgwrtiZWbDvHJ3b3J0ZXRlcsKrIFBha2V0ZSB3dXJkZSBiZXJlY2huZXQgdW5kIGFuZsOkbmdsaWNoZSAiCisiTWFya2llcnVuZ2VuXG4iCisiZW50c3ByZWNoZW5kIGdlc2V0enQsIHNvIGRhc3MgU2llIGVpbmZhY2ggYWxsZXMgbWl0IGRlciBFaW5nYWJldGFzdGUgw7xiZXItXG4iCisibmVobWVuIGvDtm5uZW4sIHdlbm4gU2llIG3DtmNodGVuLiBTaWUga8O2bm5lbiBkaWUgw4RuZGVydW5nKGVuKSwgZGllIHp1ICIKKyJQcm9ibGVtZW5cbiIKKyJmw7xocnRlKG4pLCBtaXQgwrtYwqsgcsO8Y2tnw6RuZ2lnIG1hY2hlbiB1bmQgenVyIEhhdXB0bGlzdGUgenVyw7xja2tlaHJlbi5cbiIKKyJcbiIKKyJFYmVuc28ga8O2bm5lbiBTaWUgc2ljaCBpbiBkZXIgTGlzdGUgYmV3ZWdlbiB1bmQgTWFya2llcnVuZ2VuIG5hY2ggaWhyZW1cbiIKKyJCZWxpZWJlbiDDpG5kZXJuLCB1bmQgU2llIGvDtm5uZW4gZGllIFZvcnNjaGzDpGdlIMK7YWJsZWhuZW7CqyBtaXQgwrtEwqsgb2RlciDCu1LCq1xuIgorIihzaWVoZSBhdWNoIGRpZSBIaWxmZSB6dSBUYXN0YXR1cmvDvHJ6ZWxuKS4gU2llIGvDtm5uZW4gwrtRwqsgYmVudXR6ZW4sIHVtIHp1XG4iCisiZXJ6d2luZ2VuLCBkaWUgbW9tZW50YW5lIFNpdHVhdGlvbiBhbnp1bmVobWVuLCBmw7xyIGRlbiBGYWxsLCBkYXNzIFNpZSBlaW5lXG4iCisiRW1wZmVobHVuZyDDvGJlcnN0aW1tZW4gd29sbGVuIG9kZXIgZGVua2VuLCBkYXMgUHJvZ3JhbW0gaGFiZSBzaWNoIGdlaXJydC5cbiIKKyJcbiIKKyJadXIgZGVyIExpc3RlIGtvbW1lbiBTaWUgbWl0IGRlciBMZWVydGFzdGU7IHp1ciBFcmlubmVydW5nOiDCuz/CqyBicmluZ3QgIgorIkhpbGZlLlxuIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjEyNQorbXNnaWQgIkRpc3BsYXksIHBhcnQgMTogcGFja2FnZSBsaXN0aW5nIGFuZCBzdGF0dXMgY2hhcnMiCittc2dzdHIgIkFuemVpZ2UsIFRlaWwgMTogUGFrZXRsaXN0ZSB1bmQgU3RhdHVza8O8cnplbCIKKworIyBIaWVyIHNpbmQgZXMgYmVyZWl0cyBpbSBPcmlnaW5hbCAyMyBaZWlsZW4uIEVzIGdpYnQgd29obCBrZWluZSBDaGFuY2UsCisjIGRhcyB6dSBrw7xyemVuLgorIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxMjUKK21zZ2lkICIiCisiVGhlIHRvcCBoYWxmIG9mIHRoZSBzY3JlZW4gc2hvd3MgYSBsaXN0IG9mIHBhY2thZ2VzLiAgRm9yIGVhY2ggcGFja2FnZSB5b3UgIgorInNlZVxuIgorImZvdXIgY29sdW1ucyBmb3IgaXRzIGN1cnJlbnQgc3RhdHVzIG9uIHRoZSBzeXN0ZW0gYW5kIG1hcmsuICBJbiB0ZXJzZSBtb2RlICIKKyIodXNlXG4iCisiYHYnIHRvIHRvZ2dsZSB2ZXJib3NlIGRpc3BsYXkpIHRoZXNlIGFyZSBzaW5nbGUgY2hhcmFjdGVycywgZnJvbSBsZWZ0IHRvICIKKyJyaWdodDpcbiIKKyJcbiIKKyIgRXJyb3IgZmxhZzogU3BhY2UgLSBubyBlcnJvciAoYnV0IHBhY2thZ2UgbWF5IGJlIGluIGJyb2tlbiBzdGF0ZSAtIHNlZSAiCisiYmVsb3cpXG4iCisiICAgICAgICAgICAgICBgUicgIC0gc2VyaW91cyBlcnJvciBkdXJpbmcgaW5zdGFsbGF0aW9uLCBuZWVkcyAiCisicmVpbnN0YWxsYXRpb247XG4iCisiIEluc3RhbGxlZCBzdGF0ZTogICAgIFNwYWNlICAgIC0gbm90IGluc3RhbGxlZDtcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgIGAqJyAgICAgLSBpbnN0YWxsZWQ7XG4iCisiICAgICAgICAgICAgICAgICAgICAgICBgLScgICAgIC0gbm90IGluc3RhbGxlZCBidXQgY29uZmlnIGZpbGVzIHJlbWFpbjtcbiIKKyIgICBwYWNrYWdlcyBpbiB0aGVzZSB7IGBVJyAgICAgLSB1bnBhY2tlZCBidXQgbm90IHlldCBjb25maWd1cmVkO1xuIgorIiAgIHN0YXRlcyBhcmUgbm90ICAgIHsgYEMnICAgICAtIGhhbGYtY29uZmlndXJlZCAoYW4gZXJyb3IgaGFwcGVuZWQpO1xuIgorIiAgIChxdWl0ZSkgcHJvcGVybHkgIHsgYEknICAgICAtIGhhbGYtaW5zdGFsbGVkIChhbiBlcnJvciBoYXBwZW5lZCk7XG4iCisiICAgaW5zdGFsbGVkICAgICAgICAgeyBgVycsYHQnIC0gdHJpZ2dlcnMgYXJlIGF3YWl0ZWQgcmVzcC4gcGVuZGluZy5cbiIKKyIgT2xkIG1hcms6IHdoYXQgd2FzIHJlcXVlc3RlZCBmb3IgdGhpcyBwYWNrYWdlIGJlZm9yZSBwcmVzZW50aW5nIHRoaXMgbGlzdDtcbiIKKyIgTWFyazogd2hhdCBpcyByZXF1ZXN0ZWQgZm9yIHRoaXMgcGFja2FnZTpcbiIKKyIgIGAqJzogbWFya2VkIGZvciBpbnN0YWxsYXRpb24gb3IgdXBncmFkZTtcbiIKKyIgIGAtJzogbWFya2VkIGZvciByZW1vdmFsLCBidXQgYW55IGNvbmZpZ3VyYXRpb24gZmlsZXMgd2lsbCByZW1haW47XG4iCisiICBgPSc6IG9uIGhvbGQ6IHBhY2thZ2Ugd2lsbCBub3QgYmUgcHJvY2Vzc2VkIGF0IGFsbDtcbiIKKyIgIGBfJzogbWFya2VkIGZvciBwdXJnZSBjb21wbGV0ZWx5IC0gZXZlbiByZW1vdmUgY29uZmlndXJhdGlvbjtcbiIKKyIgIGBuJzogcGFja2FnZSBpcyBuZXcgYW5kIGhhcyB5ZXQgdG8gYmUgbWFya2VkIGZvciBpbnN0YWxsL3JlbW92ZS8mYy5cbiIKKyJcbiIKKyJBbHNvIGRpc3BsYXllZCBhcmUgZWFjaCBwYWNrYWdlJ3MgUHJpb3JpdHksIFNlY3Rpb24sIG5hbWUsIGluc3RhbGxlZCBhbmRcbiIKKyJhdmFpbGFibGUgdmVyc2lvbiBudW1iZXJzIChzaGlmdC1WIHRvIGRpc3BsYXkvaGlkZSkgYW5kIHN1bW1hcnkgIgorImRlc2NyaXB0aW9uLlxuIgorbXNnc3RyICIiCisiRGllIG9iZXJlIEjDpGxmdGUgZGVzIEJpbGRzY2hpcm1zIHplaWd0IGVpbmUgTGlzdGUgZGVyIFBha2V0ZS4gRsO8ciBqZWRlcyAiCisiUGFrZXRcbiIKKyJnaWJ0IGVzIHZpZXIgU3BhbHRlbiBmw7xyIG1vbWVudGFuZW4gU3RhdHVzIGF1ZiBkZW0gU3lzdGVtIHVuZCBkaWUgIgorIk1hcmtpZXJ1bmcuXG4iCisiSW0ga25hcHBlbiBNb2R1cyAoYXVzZsO8aHJsaWNoIG1pdCDCu3bCqykgc2luZCBlcyBmb2xnZW5kZSBlaW56ZWxuZSBaZWljaGVuOlxuIgorIlxuIgorIiBGZWhsZXI6IExlZXIgLSBrZWluIEZlaGxlciAoYWJlciBQYWtldCBldnRsLiBpbiBpbmtvbnNpc3QuIFp1c3RhbmQgLSBzLnUuKVxuIgorIiAgICAgICAgIMK7UsKrICAtIHNjaHdlcmVyIEZlaGxlciBiZWkgZGVyIEluc3RhbGxhdGlvbiwgTmV1aW5zdGFsbGF0aW9uICIKKyJuw7Z0aWc7XG4iCisiIEluc3RhbGxhdGlvbnNzdGF0dXM6ICBMZWVyICAgIC0gbmljaHQgaW5zdGFsbGllcnQ7XG4iCisiICAgICAgICAgICAgICAgICAgICAgICDCuyrCqyAgICAgLSBpbnN0YWxsaWVydDtcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgIMK7LcKrICAgICAtIG5pY2h0IGluc3RhbGwuLCBhYmVyIEtvbmZpZ3VyYXRpb24gIgorInZvcmhhbmRlbjtcbiIKKyIgICBQYWtldGUgaW4gZGllc2VtICB7IMK7VcKrICAgICAtIGVudHBhY2t0LCBhYmVyIG5vY2ggbmljaHQga29uZmlndXJpZXJ0O1xuIgorIiAgIFN0YXR1cyBzaW5kIG5pY2h0IHsgwrtDwqsgICAgIC0gaGFsYiBrb25maWd1cmllcnQgKEZlaGxlciBpc3QgIgorImF1ZmdldHJldGVuKTtcbiIKKyIgICAoZ2FueikgcmljaHRpZyAgICB7IMK7ScKrICAgICAtIGhhbGIgaW5zdGFsbGllcnQgKEZlaGxlciBpc3QgYXVmZ2V0cmV0ZW4pO1xuIgorIiAgIGluc3RhbGxpZXJ0ICAgICAgIHsgwrtXwqsswrt0wqsgLSBUcmlnZ2VyIHdlcmRlbiBlcndhcnRldCBiencuIHNpbmQgIgorImFuaMOkbmdpZy5cbiIKKyIgQWx0ZSBNYXJrZTogZGVyIFp1c3RhbmQgZGllc2VzIFBha2V0cywgYmV2b3IgZGllc2UgTGlzdGUgYW5nZXplaWd0IHd1cmRlO1xuIgorIiBNYXJrZTogd2FzIG1pdCBkZW0gUGFrZXQgZ2VzY2hlaGVuIHNvbGw6XG4iCisiICAgwrsqwqs6IG1hcmtpZXJ0IHp1ciBJbnN0YWxsYXRpb24gYnp3LiBBa3R1YWxpc2llcnVuZztcbiIKKyIgICDCuy3CqzogbWFya2llcnQgenVtIEVudGZlcm5lbiwgYWJlciBLb25maWd1cmF0aW9uIHNvbGwgZXJoYWx0ZW4gYmxlaWJlbjtcbiIKKyIgICDCuz3CqzogYXVmIEhhbHRlbjogZGFzIFBha2V0IHdpcmQgbmljaHQgdmVyYXJiZWl0ZXQ7XG4iCisiICAgwrtfwqs6IG1hcmtpZXJ0IHp1bSB2b2xsc3TDpG5kaWdlbiBMw7ZzY2hlbiAtIGF1Y2ggZGVyIEtvbmZpZ3VyYXRpb247XG4iCisiICAgwrtuwqs6IFBha2V0IGlzdCBuZXUgdW5kIG11c3MgZXJzdCB6dXIgSW5zdGFsbGF0aW9uIGV0Yy4gbWFya2llcnQgd2VyZGVuXG4iCisiXG4iCisiQXVjaCBhbmdlemVpZ3Qgd2VyZGVuIFByaW9yaXTDpHQsIEJlcmVpY2gsIE5hbWUsIGluc3RhbGxpZXJ0ZSB1bmQgdmVyZsO8Z2JhcmVcbiIKKyJWZXJzaW9uICjCu1bCqyB6dW0gRWluLS9BdXNibGVuZGVuKSBkZXIgUGFrZXRlIHNvd2llIGVpbmUga3VyemUgQmVzY2hyZWlidW5nLlxuIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjE1MgorbXNnaWQgIkRpc3BsYXksIHBhcnQgMjogbGlzdCBoaWdobGlnaHQ7IGluZm9ybWF0aW9uIGRpc3BsYXkiCittc2dzdHIgIkFuemVpZ2UsIFRlaWwgMjogTGlzdGVuaGVydm9yaGVidW5nOyBJbmZvcm1hdGlvbnNhbnplaWdlIgorCisjIERhcmFuIGRlbmtlbjogMjIgWmVpbGVuLCA4MCBaZWljaGVuIQorIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxNTIKK21zZ2lkICIiCisiKiBIaWdobGlnaHQ6IE9uZSBsaW5lIGluIHRoZSBwYWNrYWdlIGxpc3Qgd2lsbCBiZSBoaWdobGlnaHRlZC4gIEl0ICIKKyJpbmRpY2F0ZXNcbiIKKyIgIHdoaWNoIHBhY2thZ2Uocykgd2lsbCBiZSBhZmZlY3RlZCBieSBwcmVzc2VzIG9mIGArJywgYC0nIGFuZCBgXycuXG4iCisiXG4iCisiKiBUaGUgZGl2aWRpbmcgbGluZSBpbiB0aGUgbWlkZGxlIG9mIHRoZSBzY3JlZW4gc2hvd3MgYSBicmllZiBleHBsYW5hdGlvbiAiCisib2ZcbiIKKyIgIHRoZSBzdGF0dXMgb2YgdGhlIGN1cnJlbnRseS1oaWdobGlnaHRlZCBwYWNrYWdlLCBvciBhIGRlc2NyaXB0aW9uIG9mICIKKyJ3aGljaFxuIgorIiAgZ3JvdXAgaXMgaGlnaGxpZ2h0ZWQgaWYgYSBncm91cCBsaW5lIGlzLiAgSWYgeW91IGRvbid0IHVuZGVyc3RhbmQgdGhlXG4iCisiICBtZWFuaW5nIG9mIHNvbWUgb2YgdGhlIHN0YXR1cyBjaGFyYWN0ZXJzIGRpc3BsYXllZCwgZ28gdG8gdGhlIHJlbGV2YW50XG4iCisiICBwYWNrYWdlIGFuZCBsb29rIGF0IHRoaXMgZGl2aWRlciBsaW5lLCBvciB1c2UgdGhlIGB2JyBrZXkgZm9yIGEgdmVyYm9zZVxuIgorIiAgZGlzcGxheSAocHJlc3MgYHYnIGFnYWluIHRvIGdvIGJhY2sgdG8gdGhlIHRlcnNlIGRpc3BsYXkpLlxuIgorIlxuIgorIiogVGhlIGJvdHRvbSBvZiB0aGUgc2NyZWVuIHNob3dzIG1vcmUgaW5mb3JtYXRpb24gYWJvdXQgdGhlXG4iCisiICBjdXJyZW50bHktaGlnaGxpZ2h0ZWQgcGFja2FnZSAoaWYgdGhlcmUgaXMgb25seSBvbmUpLlxuIgorIlxuIgorIiAgSXQgY2FuIHNob3cgYW4gZXh0ZW5kZWQgZGVzY3JpcHRpb24gb2YgdGhlIHBhY2thZ2UsIHRoZSBpbnRlcm5hbCBwYWNrYWdlXG4iCisiICBjb250cm9sIGRldGFpbHMgKGVpdGhlciBmb3IgdGhlIGluc3RhbGxlZCBvciBhdmFpbGFibGUgdmVyc2lvbiBvZiB0aGVcbiIKKyIgIHBhY2thZ2UpLCBvciBpbmZvcm1hdGlvbiBhYm91dCBjb25mbGljdHMgYW5kIGRlcGVuZGVuY2llcyBpbnZvbHZpbmcgdGhlXG4iCisiICBjdXJyZW50IHBhY2thZ2UgKGluIGNvbmZsaWN0L2RlcGVuZGVuY3kgcmVzb2x1dGlvbiBzdWJsaXN0cykuXG4iCisiXG4iCisiICBVc2UgdGhlIGBpJyBrZXkgdG8gY3ljbGUgdGhyb3VnaCB0aGUgZGlzcGxheXMsIGFuZCBgSScgdG8gaGlkZSB0aGVcbiIKKyIgIGluZm9ybWF0aW9uIGRpc3BsYXkgb3IgZXhwYW5kIGl0IHRvIHVzZSBhbG1vc3QgYWxsIG9mIHRoZSBzY3JlZW4uXG4iCittc2dzdHIgIiIKKyIqIEhlcnZvcmhlYnVuZzogRWluZSBaZWlsZSBkZXIgUGFrZXRsaXN0ZSBpc3QgaGVydm9yZ2Vob2Jlbi4gU2llIHplaWd0XG4iCisiICBhbiwgd2VsY2hlcyBQYWtldCB2b24gZGVuIEtvbW1hbmRvcyDCuyvCqywgwrstwqsgdW5kIMK7X8KrIGJlZWluZmx1c3N0IHdpcmQuXG4iCisiXG4iCisiKiBEaWUgVHJlbm5saW5pZSBpbiBkZXIgQmlsZHNjaGlybW1pdHRlIHplaWd0IGVpbmUga3VyemUgRXJrbMOkcnVuZyBkZXMgIgorIlp1c3RhbmRzXG4iCisiICBkZXMgaGVydm9yZ2Vob2JlbmVuIFBha2V0cyBvZGVyIGVpbmUgQmVzY2hyZWlidW5nIGRlciBHcnVwcGUsIHdlbm4gZWluZSAiCisiaGVyLVxuIgorIiAgdm9yZ2Vob2JlbiBpc3QuIFdlbm4gU2llIGRpZSBCZWRldXR1bmcgZWluaWdlciBkZXIgYW5nZXplaWd0ZW4gIgorIlN0YXR1c3plaWNoZW5cbiIKKyIgIG5pY2h0IHZlcnN0ZWhlbiwgZ2VoZW4gU2llIHp1bSBlbnRzcHJlY2hlbmRlbiBQYWtldCB1bmQgc2NoYXVlbiBTaWUgYXVmICIKKyJkaWVcbiIKKyIgIFRyZW5ubGluaWUsIG9kZXIgYmVudXR6ZW4gU2llIMK7dsKrIGbDvHIgZWluZSBhdXNmw7xocmxpY2hlIEFuemVpZ2UgKHVuZCAiCisid2llZGVyXG4iCisiICDCu3bCqywgdW0genVyIGtuYXBwZW4gQW56ZWlnZSB6dXLDvGNrenVrZWhyZW4pLlxuIgorIlxuIgorIiogRGllIHVudGVyZSBCaWxkc2NoaXJtaMOkbGZ0ZSB6ZWlndCBub2NoIG1laHIgSW5mb3JtYXRpb25lbiDDvGJlciBkYXNcbiIKKyIgIGdlcmFkZSBoZXJ2b3JnZWhvYmVuZSBQYWtldCAod2VubiBudXIgZWlucyBoZXJ2b3JnZWhvYmVuIGlzdCkuXG4iCisiXG4iCisiICBTaWUga2FubiBlaW5lIGVyd2VpdGVydGUgQmVzY2hyZWlidW5nIGRlcyBQYWtldHMsIGRpZSBpbnRlcm5lbiBQYWtldC1cbiIKKyIgIEtvbnRyb2xsLURldGFpbHMgKGVudHdlZGVyIGbDvHIgZGllIGluc3RhbGxpZXJ0ZSBvZGVyIGRpZSB2ZXJmw7xnYmFyZSAiCisiVmVyc2lvbilcbiIKKyIgIG9kZXIgSW5mb3JtYXRpb25lbiDDvGJlciBLb25mbGlrdGUgdW5kIEFiaMOkbmdpZ2tlaXRlbiwgZGllIGRhcyBQYWtldFxuIgorIiAgYmV0cmVmZmVuIChpbiBLb25mbGlrdC0vQWJow6RuZ2lna2VpdHMtVGVpbGxpc3RlbiksIGFuemVpZ2VuLlxuIgorIlxuIgorIiAgQmVudXR6ZW4gU2llIMK7acKrLCB1bSBkdXJjaCBkaWUgQW56ZWlnZW4genUgd2VjaHNlbG4gdW5kIMK7ScKrLCB1bSBkaWVcbiIKKyIgIEluZm9ybWF0aW9uc2FuemVpZ2UgenUgdmVyc3RlY2tlbiBvZGVyIHNpZSB6dSB2ZXJncsO2w59lcm4uXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTc2Cittc2dpZCAiSW50cm9kdWN0aW9uIHRvIG1ldGhvZCBzZWxlY3Rpb24gZGlzcGxheSIKK21zZ3N0ciAiRWluZsO8aHJ1bmcgenVtIE1ldGhvZGVuLUF1c3dhaGwtTWVuw7wiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTc2Cittc2dpZCAiIgorImRzZWxlY3QgYW5kIGRwa2cgY2FuIGRvIGF1dG9tYXRpYyBpbnN0YWxsYXRpb24sIGxvYWRpbmcgdGhlIHBhY2thZ2UgZmlsZXMgdG8gIgorImJlXG4iCisiaW5zdGFsbGVkIGZyb20gb25lIG9mIGEgbnVtYmVyIG9mIGRpZmZlcmVudCBwb3NzaWJsZSBwbGFjZXMuXG4iCisiXG4iCisiVGhpcyBsaXN0IGFsbG93cyB5b3UgdG8gc2VsZWN0IG9uZSBvZiB0aGVzZSBpbnN0YWxsYXRpb24gbWV0aG9kcy5cbiIKKyJcbiIKKyJNb3ZlIHRoZSBoaWdobGlnaHQgdG8gdGhlIG1ldGhvZCB5b3Ugd2lzaCB0byB1c2UsIGFuZCBoaXQgRW50ZXIuICBZb3Ugd2lsbCAiCisidGhlblxuIgorImJlIHByb21wdGVkIGZvciB0aGUgaW5mb3JtYXRpb24gcmVxdWlyZWQgdG8gZG8gdGhlIGluc3RhbGxhdGlvbi5cbiIKKyJcbiIKKyJBcyB5b3UgbW92ZSB0aGUgaGlnaGxpZ2h0IGEgZGVzY3JpcHRpb24gb2YgZWFjaCBtZXRob2QsIHdoZXJlIGF2YWlsYWJsZSwgaXNcbiIKKyJkaXNwbGF5ZWQgaW4gdGhlIGJvdHRvbSBoYWxmIG9mIHRoZSBzY3JlZW4uXG4iCisiXG4iCisiSWYgeW91IHdpc2ggdG8gcXVpdCB3aXRob3V0IGNoYW5naW5nIGFueXRoaW5nIHVzZSB0aGUgYHgnIGtleSB3aGlsZSBpbiB0aGUgIgorImxpc3RcbiIKKyJvZiBpbnN0YWxsYXRpb24gbWV0aG9kcy5cbiIKKyJcbiIKKyJBIGZ1bGwgbGlzdCBvZiBrZXlzdHJva2VzIGlzIGF2YWlsYWJsZSBieSBwcmVzc2luZyBgaycgbm93LCBvciBmcm9tIHRoZSAiCisiaGVscFxuIgorIm1lbnUgcmVhY2hhYmxlIGJ5IHByZXNzaW5nIGA/Jy5cbiIKK21zZ3N0ciAiIgorImRzZWxlY3QgdW5kIGRwa2cgYmVoZXJyc2NoZW4gYXV0b21hdGlzY2hlIEluc3RhbGxhdGlvbiwgaW5kZW0gc2llIGRpZSB6dVxuIgorImluc3RhbGxpZXJlbmRlbiBQYWtldGUgdm9uIGVpbmVtIHZvbiBtZWhyZXJlbiBtw7ZnbGljaGVuIE9ydGVuIGxhZGVuLlxuIgorIlxuIgorIkRpZXNlIExpc3RlIGJpZXRldCBJaG5lbiBkaWUgTcO2Z2xpY2hrZWl0LCBlaW5lIEluc3RhbGxhdGlvbnNtZXRob2RlIHp1ICIKKyJ3w6RobGVuLlxuIgorIlxuIgorIkJpdHRlIHfDpGhsZW4gU2llIElocmUgTWV0aG9kZSwgZGllIFNpZSB2ZXJ3ZW5kZW4gd29sbGVuLCB1bmQgZHLDvGNrZW4gZGllXG4iCisiRWluZ2FiZXRhc3RlLiBTaWUgd2VyZGVuIGRhbm4gbmFjaCBkZW4gYmVuw7Z0aWd0ZW4gSW5mb3JtYXRpb25lbiBmw7xyIGRpZVxuIgorIkluc3RhbGxhdGlvbiBnZWZyYWd0LlxuIgorIlxuIgorIlfDpGhyZW5kIGRlciBBdXN3YWhsIHdpcmQgZWluZSBCZXNjaHJlaWJ1bmcgamVkZXIgTWV0aG9kZSAtIHdlbm4gdmVyZsO8Z2JhciAtXG4iCisiaW4gZGVyIHVudGVyZW4gSMOkbGZ0ZSBkZXMgQmlsZHNjaGlybXMgYW5nZXplaWd0LlxuIgorIlxuIgorIldlbm4gU2llIGFiYnJlY2hlbiB3b2xsZW4sIG9obmUgZXR3YXMgenUgw6RuZGVybiwgZHLDvGNrZW4gU2llIGRpZSDCu3jCqy1UYXN0ZSxcbiIKKyJ3w6RocmVuZCBTaWUgc2ljaCBpbiBkZXIgQXVzd2FobGxpc3RlIGRlciBJbnN0YWxsYXRpb25zbWV0aG9kZW4gYmVmaW5kZW4uXG4iCisiXG4iCisiRWluZSBMaXN0ZSBhbGxlciBUYXN0ZW5rw7xyemVsIGVyaGFsdGVuIFNpZSwgd2VubiBzaWUgamV0enQgZGllIMK7a8KrLVRhc3RlXG4iCisiZHLDvGNrZW4sIG9kZXIgc3DDpHRlciBhdXMgZGVtIEhpbGZlbWVuw7wsIGVycmVpY2hiYXIgbWl0IGRlciBUYXN0ZSDCuz/Cqy5cbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxOTYKK21zZ2lkICJLZXlzdHJva2VzIGZvciBtZXRob2Qgc2VsZWN0aW9uIgorbXNnc3RyICJUYXN0ZW5rw7xyemVsIGbDvHIgZGllIE1ldGhvZGVuLUF1c3dhaGwiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTk2Cittc2dpZCAiIgorIk1vdGlvbiBrZXlzOiBOZXh0L1ByZXZpb3VzLCBUb3AvRW5kLCBVcC9Eb3duLCBCYWNrd2FyZHMvRm9yd2FyZHM6XG4iCisiICBqLCBEb3duLWFycm93ICAgICAgICAgaywgVXAtYXJyb3cgICAgICAgICAgICAgbW92ZSBoaWdobGlnaHRcbiIKKyIgIE4sIFBhZ2UtZG93biwgU3BhY2UgICBQLCBQYWdlLXVwLCBCYWNrc3BhY2UgICBzY3JvbGwgbGlzdCBieSAxIHBhZ2VcbiIKKyIgIF5uICAgICAgICAgICAgICAgICAgICBecCAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgbGlzdCBieSAxIGxpbmVcbiIKKyIgIHQsIEhvbWUgICAgICAgICAgICAgICBlLCBFbmQgICAgICAgICAgICAgICAgICBqdW1wIHRvIHRvcC9lbmQgb2YgbGlzdFxuIgorIiAgdSAgICAgICAgICAgICAgICAgICAgIGQgICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIGJ5IDEgcGFnZVxuIgorIiAgXnUgICAgICAgICAgICAgICAgICAgIF5kICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIGJ5IDEgbGluZVxuIgorIiAgQiwgTGVmdC1hcnJvdyAgICAgICAgIEYsIFJpZ2h0LWFycm93ICAgICAgICAgIHBhbiBkaXNwbGF5IGJ5IDEvMyBzY3JlZW5cbiIKKyIgIF5iICAgICAgICAgICAgICAgICAgICBeZiAgICAgICAgICAgICAgICAgICAgICBwYW4gZGlzcGxheSBieSAxIGNoYXJhY3RlclxuIgorIihUaGVzZSBhcmUgdGhlIHNhbWUgbW90aW9uIGtleXMgYXMgaW4gdGhlIHBhY2thZ2UgbGlzdCBkaXNwbGF5LilcbiIKKyJcbiIKKyJRdWl0OlxuIgorIiBSZXR1cm4sIEVudGVyICAgIHNlbGVjdCB0aGlzIG1ldGhvZCBhbmQgZ28gdG8gaXRzIGNvbmZpZ3VyYXRpb24gZGlhbG9ndWVcbiIKKyIgeCwgWCAgICAgICAgICAgICBleGl0IHdpdGhvdXQgY2hhbmdpbmcgb3Igc2V0dGluZyB1cCB0aGUgaW5zdGFsbGF0aW9uICIKKyJtZXRob2RcbiIKKyJcbiIKKyJNaXNjZWxsYW5lb3VzOlxuIgorIiAgPywgSGVscCwgRjEgICAgICByZXF1ZXN0IGhlbHBcbiIKKyIgXmwgICAgICAgICAgICAgICAgcmVkcmF3IGRpc3BsYXlcbiIKKyIgIC8gICAgICAgICAgICAgICAgc2VhcmNoIChqdXN0IHJldHVybiB0byBjYW5jZWwpXG4iCisiICBcXCAgICAgICAgICAgICAgICByZXBlYXQgbGFzdCBzZWFyY2hcbiIKK21zZ3N0ciAiIgorIkJld2VndW5nc3Rhc3RlbjogTsOkY2hzdGVzL1ZvcmhlcmlnZXMsIEFuZmFuZy9FbmRlLCBIb2NoL1J1bnRlciwgUsO8Y2stLyIKKyJWb3J3w6RydHM6XG4iCisiICBqLCBQZmVpbCBhYiAgICAgICAgIGssIFBmZWlsIGhvY2ggICAgICAgICAgIEhlcnZvcmhlYnVuZyBiZXdlZ2VuXG4iCisiICBOLCBCaWxkIGFiLCBMZWVydC4gIFAsIEJpbGQgaG9jaCwgUsO8Y2tzY2hyLiBMaXN0ZSB1bSAxIFNlaXRlIHNjcm9sbGVuXG4iCisiICBebiAgICAgICAgICAgICAgICAgIF5wICAgICAgICAgICAgICAgICAgICAgIExpc3RlIHVtIDEgWmVpbGUgc2Nyb2xsZW5cbiIKKyIgIHQsIFBvczEgICAgICAgICAgICAgZSwgRW5kZSAgICAgICAgICAgICAgICAgc3ByaW5nZSB6dSBBbmZhbmcvRW5kZSBkZXIgIgorIkxpc3RlXG4iCisiICB1ICAgICAgICAgICAgICAgICAgIGQgICAgICAgICAgICAgICAgICAgICAgIEluZm8gdW0gMSBTZWl0ZSBzY3JvbGxlblxuIgorIiAgXnUgICAgICAgICAgICAgICAgICBeZCAgICAgICAgICAgICAgICAgICAgICBJbmZvIHVtIDEgWmVpbGUgc2Nyb2xsZW5cbiIKKyIgIEIsIFBmZWlsIGxpbmtzICAgICAgRiwgUGZlaWwgcmVjaHRzICAgICAgICAgQW56LiB1bSAxLzMgQmlsZHNjaGlybSAiCisic2NoaWViZW5cbiIKKyIgIF5iICAgICAgICAgICAgICAgICAgXmYgICAgICAgICAgICAgICAgICAgICAgQW56ZWlnZSB1bSAxIFplaWNoZW4gc2NoaWViZW5cbiIKKyIoRGllcyBzaW5kIGRpZXNlbGJlbiBCZXdlZ3VuZ3N0YXN0ZW4gd2llIGluIGRlciBQYWtldGxpc3RlLilcbiIKKyJcbiIKKyJCZWVuZGVuOlxuIgorIiBFaW5nYWJldGFzdGUgICBBdXN3YWhsIGRpZXNlciBNZXRob2RlIHVuZCBXZWNoc2VsIGluIGRlbiAiCisiS29uZmlndXJhdGlvbnNkaWFsb2dcbiIKKyIgeCwgWCAgICAgICAgICAgQmVlbmRlbiwgb2huZSBkaWUgTWV0aG9kZSB6dSDDpG5kZXJuIG9kZXIgZWluenVyaWNodGVuXG4iCisiXG4iCisiVmVyc2NoaWVkZW5lczpcbiIKKyIgID8sIEhpbGZlLCBGMSAgICAgSGlsZmUgYXVmcnVmZW5cbiIKKyIgXmwgICAgICAgICAgICAgICAgQW56ZWlnZSBha3R1YWxpc2llcmVuXG4iCisiICAvICAgICAgICAgICAgICAgIFN1Y2hlbiAoQWJicnVjaCBtaXQgRWluZ2FiZXRhc3RlKVxuIgorIiAgXFwgICAgICAgICAgICAgICAgbGV0enRlIFN1Y2hlIHdpZWRlcmhvbGVuXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzo2MAorbXNnaWQgIlR5cGUgZHNlbGVjdCAtLWhlbHAgZm9yIGhlbHAuIgorbXNnc3RyICJHZWJlbiBTaWUgZHNlbGVjdCAtLWhlbHAgZWluLCB1bSBIaWxmZSB6dSBlcmhhbHRlbi4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDMKK21zZ2lkICJhIgorbXNnc3RyICJ6IgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQzCittc2dpZCAiW0FdY2Nlc3MiCittc2dzdHIgIltaXXVncmlmZiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0MworbXNnaWQgIkNob29zZSB0aGUgYWNjZXNzIG1ldGhvZCB0byB1c2UuIgorbXNnc3RyICJadWdyaWZmc21ldGhvZGUgYXVzd8OkaGxlbi4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDQKK21zZ2lkICJ1IgorbXNnc3RyICJlIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ0Cittc2dpZCAiW1VdcGRhdGUiCittc2dzdHIgIltFXXJuZXVlcm4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDQKK21zZ2lkICJVcGRhdGUgbGlzdCBvZiBhdmFpbGFibGUgcGFja2FnZXMsIGlmIHBvc3NpYmxlLiIKK21zZ3N0ciAiTGlzdGUgZGVyIHZlcmbDvGdiYXJlbiBQYWtldGUgZXJuZXVlcm4sIGZhbGxzIG3DtmdsaWNoLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NQorbXNnaWQgInMiCittc2dzdHIgImEiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDUKK21zZ2lkICJbU11lbGVjdCIKK21zZ3N0ciAiW0FddXN3w6RobGVuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ1Cittc2dpZCAiUmVxdWVzdCB3aGljaCBwYWNrYWdlcyB5b3Ugd2FudCBvbiB5b3VyIHN5c3RlbS4iCittc2dzdHIgIkF1c3dhaGwgZGVyIGbDvHIgSWhyIFN5c3RlbSBnZXfDvG5zY2h0ZW4gUGFrZXRlIHRyZWZmZW4uIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ2Cittc2dpZCAiaSIKK21zZ3N0ciAiaSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NgorbXNnaWQgIltJXW5zdGFsbCIKK21zZ3N0ciAiW0ldbnN0YWxsLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NgorbXNnaWQgIkluc3RhbGwgYW5kIHVwZ3JhZGUgd2FudGVkIHBhY2thZ2VzLiIKK21zZ3N0ciAiR2V3w7xuc2NodGUgUGFrZXRlIGluc3RhbGxpZXJlbiB1bmQgYWt0dWFsaXNpZXJlbi4iCisKKyMgVm9yc2ljaHQgRmFsbGU6ICJrIiBnZWh0IGxlaWRlciBuaWNodCwgZGVubiBkaWVzZSBUYXN0ZSBiZXdlZ3QKKyMgZGllIEhlcnZvcmhlYnVuZyB1bSBlaW5lIFplaWxlIG5hY2ggb2JlbiEKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDcKK21zZ2lkICJjIgorbXNnc3RyICJmIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ3Cittc2dpZCAiW0Ndb25maWciCittc2dzdHIgIktvbltmXWlnLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NworbXNnaWQgIkNvbmZpZ3VyZSBhbnkgcGFja2FnZXMgdGhhdCBhcmUgdW5jb25maWd1cmVkLiIKK21zZ3N0ciAiQWxsZSB1bmtvbmZpZ3VyaWVydGVuIFBha2V0ZSBrb25maWd1cmllcmVuLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OAorbXNnaWQgInIiCittc2dzdHIgImwiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDgKK21zZ2lkICJbUl1lbW92ZSIKK21zZ3N0ciAiW0xdw7ZzY2hlbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OAorbXNnaWQgIlJlbW92ZSB1bndhbnRlZCBzb2Z0d2FyZS4iCittc2dzdHIgIk5pY2h0IGdld8O8bnNjaHRlIFNvZnR3YXJlIGzDtnNjaGVuLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OQorbXNnaWQgInEiCittc2dzdHIgImIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDkKK21zZ2lkICJbUV11aXQiCittc2dzdHIgIltCXWVlbmRlbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OQorbXNnaWQgIlF1aXQgZHNlbGVjdC4iCittc2dzdHIgIkRzZWxlY3QgYmVlbmRlbi4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNTAKK21zZ2lkICJtZW51IgorbXNnc3RyICJNZW7DvCIKKworIzogZHNlbGVjdC9tYWluLmNjOjE1NQorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIGhhbmRsaW5nIGZyb250ZW5kIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkRlYmlhbiDCuyVzwqsgUGFrZXR2ZXJ3YWx0dW5ncy1Gcm9udGVuZCBWZXJzaW9uICVzLlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTU4Cittc2dpZCAiIgorIkNvcHlyaWdodCAoQykgMTk5NC0xOTk2IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uXG4iCittc2dzdHIgIiIKKyJDb3B5cmlnaHQgKEMpIDE5OTQtMTk5NiBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTYyCittc2dpZCAiIgorIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgb3JcbiIKKyJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKK21zZ3N0ciAiIgorIkRpZXMgaXN0IGZyZWllIFNvZnR3YXJlOyBsZXNlbiBTaWUgZGllIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGluIGRlclxuIgorIlZlcnNpb24gMiBvZGVyIGjDtmhlciBmw7xyIEtvcGllcmJlZGluZ3VuZ2VuLiBFcyB3aXJkIEtFSU5FIEhhZnR1bmcgIgorIsO8YmVybm9tbWVuLlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTcyIGRzZWxlY3QvbWFpbi5jYzoyMjAKK21zZ2lkICI8c3RhbmRhcmQgb3V0cHV0PiIKK21zZ3N0ciAiPFN0YW5kYXJkYXVzZ2FiZT4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSBbPGFjdGlvbj4gLi4uXVxuIgorIlxuIgorbXNnc3RyICIiCisiQXVmcnVmOiAlcyBbPE9wdGlvbj4gLi4uXSBbPEFrdGlvbj4gLi4uXVxuIgorIlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTg3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMuXG4iCisiICAtLWV4cGVydCAgICAgICAgICAgICAgICAgICBUdXJuIG9uIGV4cGVydCBtb2RlLlxuIgorIiAgLS1kZWJ1ZyA8ZmlsZT4gfCAtRDxmaWxlPiAgVHVybiBvbiBkZWJ1Z2dpbmcsIHNlbmRpbmcgb3V0cHV0IHRvIDxmaWxlPi5cbiIKKyIgIC0tY29sb3VyIHwgLS1jb2xvciBzY3JlZW5wYXJ0Oltmb3JlZ3JvdW5kXSxbYmFja2dyb3VuZF1bOmF0dHJbK2F0dHIrLi5dXVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ29uZmlndXJlIHNjcmVlbiBjb2xvdXJzLlxuIgorIlxuIgorbXNnc3RyICIiCisiT3B0aW9uZW46XG4iCisiICAtLWFkbWluZGlyIDxWZXJ6ZWljaG5pcz4gICAgIDxWZXJ6ZWljaG5pcz4gc3RhdHQgJXMgdmVyd2VuZGVuLlxuIgorIiAgLS1leHBlcnQgICAgICAgICAgICAgICAgICAgICBFeHBlcnRlbi1Nb2R1cyBlaW5zY2hhbHRlbi5cbiIKKyIgIC0tZGVidWcgPERhdGVpPiB8IC1EPERhdGVpPiAgRGVidWdnZW4gZWluc2NoYWx0ZW4sIEF1c2dhYmVuIGFuIDxEYXRlaT4gIgorInNlbmRlblxuIgorIiAgLS1jb2xvdXIgfCAtLWNvbG9yIEVsZW1lbnQ6W1ZvcmRlcmdydW5kXSxbSGludGVyZ3J1bmRdWzpBdHRyWytBdHRyKy4uXV1cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQmlsZHNjaGlybWZhcmJlbiBrb25maWd1cmllcmVuLlxuIgorIlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTk2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgICBTaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorbXNnc3RyICIiCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgICAgIERpZXNlbiBIaWxmZXRleHQgYW56ZWlnZW4uXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgICAgIFZlcnNpb24gYW56ZWlnZW4uXG4iCisiXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkFjdGlvbnM6XG4iCisiICBhY2Nlc3MgdXBkYXRlIHNlbGVjdCBpbnN0YWxsIGNvbmZpZyByZW1vdmUgcXVpdFxuIgorIlxuIgorbXNnc3RyICIiCisiQWt0aW9uZW46XG4iCisiICBhY2Nlc3MgdXBkYXRlIHNlbGVjdCBpbnN0YWxsIGNvbmZpZyByZW1vdmUgcXVpdFxuIgorIlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjA1CisjLCBjLWZvcm1hdAorbXNnaWQgIlNjcmVlbnBhcnRzOlxuIgorbXNnc3RyICJCaWxkc2NoaXJtZWxlbWVudGU6XG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ29sb3VyczpcbiIKK21zZ3N0ciAiRmFyYmVuOlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjE1CisjLCBjLWZvcm1hdAorbXNnaWQgIkF0dHJpYnV0ZXM6XG4iCittc2dzdHIgIkF0dHJpYnV0ZTpcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjIzMworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBvcGVuIGRlYnVnIGZpbGUgYCUuMjU1cydcbiIKK21zZ3N0ciAiRGVidWctRGF0ZWkgwrslLjI1NXPCqyBrb25udGUgbmljaHQgZ2XDtmZmbmV0IHdlcmRlblxuIgorCisjICVzIGthbm4gdW50ZXJjaGllZGxpY2hlcyBHZXNjaGxlY2h0IGhhYmVuIChGYXJiZSwgQmlsZHNjaGlybWVsZW1lbnQsIEZhcmJhdHRyaWJ1dCkKKyM6IGRzZWxlY3QvbWFpbi5jYzoyNTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW52YWxpZCAlcyBgJXMnXG4iCittc2dzdHIgIiVzIMK7JXPCqyBpc3QgdW5nw7xsdGlnXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyNzAKK21zZ2lkICJzY3JlZW4gcGFydCIKK21zZ3N0ciAiQmlsZHNjaGlybWVsZW1lbnQiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyNzYKK21zZ2lkICJOdWxsIGNvbG91ciBzcGVjaWZpY2F0aW9uXG4iCittc2dzdHIgIkxlZXJlIEZhcmJzcGV6aWZpa2F0aW9uXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyODQgZHNlbGVjdC9tYWluLmNjOjI4OQorbXNnaWQgImNvbG91ciIKK21zZ3N0ciAiRmFyYmUiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyOTcKK21zZ2lkICJjb2xvdXIgYXR0cmlidXRlIgorbXNnc3RyICJGYXJiYXR0cmlidXQiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzozMjkKK21zZ2lkICJUZXJtaW5hbCBkb2VzIG5vdCBhcHBlYXIgdG8gc3VwcG9ydCBjdXJzb3IgYWRkcmVzc2luZy5cbiIKK21zZ3N0ciAiRGFzIFRlcm1pbmFsIHNjaGVpbnQgQ3Vyc29yYWRyZXNzaWVydW5nIG5pY2h0IHp1IHVudGVyc3TDvHR6ZW4uXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzozMzEKK21zZ2lkICJUZXJtaW5hbCBkb2VzIG5vdCBhcHBlYXIgdG8gc3VwcG9ydCBoaWdobGlnaHRpbmcuXG4iCittc2dzdHIgIkRhcyBUZXJtaW5hbCBzY2hlaW50IEhlcnZvcmhlYnVuZyBuaWNodCB6dSB1bnRlcnN0w7x0emVuLlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MzMzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJTZXQgeW91ciBURVJNIHZhcmlhYmxlIGNvcnJlY3RseSwgdXNlIGEgYmV0dGVyIHRlcm1pbmFsLFxuIgorIm9yIG1ha2UgZG8gd2l0aCB0aGUgcGVyLXBhY2thZ2UgbWFuYWdlbWVudCB0b29sICVzLlxuIgorbXNnc3RyICIiCisiU2V0emVuIFNpZSBpaHJlIFRFUk0tVmFyaWFibGUgcmljaHRpZywgdmVyd2VuZGVuIFNpZSBlaW4gYmVzc2VyZXMgVGVybWluYWwsXG4iCisib2RlciBiZWduw7xnZW4gU2llIHNpY2ggbWl0IGRlbSBXZXJremV1ZyAlcyB6dXIgcGFrZXR3ZWlzZW4gVmVyd2FsdHVuZy5cbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjMzNgorbXNnaWQgInRlcm1pbmFsIGxhY2tzIG5lY2Vzc2FyeSBmZWF0dXJlcywgZ2l2aW5nIHVwIgorbXNnc3RyICJUZXJtaW5hbCBsw6Rzc3Qgbm90d2VuZGlnZSBGw6RoaWdrZWl0ZW4gdmVybWlzc2VuLCBBYmJydWNoIgorCisjOiBkc2VsZWN0L21haW4uY2M6NDE3Cittc2dpZCAiIgorIlxuIgorIlxuIgorIk1vdmUgYXJvdW5kIHdpdGggXlAgYW5kIF5OLCBjdXJzb3Iga2V5cywgaW5pdGlhbCBsZXR0ZXJzLCBvciBkaWdpdHM7XG4iCisiUHJlc3MgPGVudGVyPiB0byBjb25maXJtIHNlbGVjdGlvbi4gICBeTCByZWRyYXdzIHNjcmVlbi5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIlxuIgorIlxuIgorIkJld2VnZW4gU2llIHNpY2ggbWl0IF5QLCBeTiwgUGZlaWx0YXN0ZW4sIEFuZmFuZ3NidWNoc3RhYmVuIG9kZXIgWmlmZmVybjtcbiIKKyJEcsO8Y2tlbiBTaWUgPEVpbmdhYmU+IHp1ciBCZXN0w6R0aWd1bmcuICAgXkwgemVpY2huZXQgZGVuIEJpbGRzY2hpcm0gbmV1LlxuIgorIlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6NDI4Cittc2dpZCAiIgorIlxuIgorIlxuIgorIlJlYWQtb25seSBhY2Nlc3M6IG9ubHkgcHJldmlldyBvZiBzZWxlY3Rpb25zIGlzIGF2YWlsYWJsZSEiCittc2dzdHIgIiIKKyJcbiIKKyJcbiIKKyJOdXItTGVzZS1adWdyaWZmOiBMZWRpZ2xpY2ggZGllIFZvcnNjaGF1IGRlciBBdXN3YWhsZW4gaXN0IHZlcmbDvGdiYXIhIgorCisjOiBkc2VsZWN0L21haW4uY2M6NDQ4Cittc2dpZCAiZmFpbGVkIHRvIGdldGNoIGluIG1haW4gbWVudSIKK21zZ3N0ciAiZ2V0Y2ggaW0gSGF1cHRtZW7DvCBmZWhsZ2VzY2hsYWdlbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjUzMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGFjdGlvbiBzdHJpbmcgYCUuNTBzJyIKK21zZ3N0ciAidW5iZWthbm50ZSBBa3Rpb25zemVpY2hlbmtldHRlIMK7JS41MHPCqyIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzo3NworbXNnaWQgImRzZWxlY3QgLSBsaXN0IG9mIGFjY2VzcyBtZXRob2RzIgorbXNnc3RyICJkc2VsZWN0IC0gTGlzdGUgZGVyIFp1Z3JpZmZzbWV0aG9kZW4iCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiQWNjZXNzIG1ldGhvZCBgJXMnLiIKK21zZ3N0ciAiWnVncmlmZnNtZXRob2RlIMK7JXPCqy4iCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTIwCittc2dpZCAiQWJicmV2LiIKK21zZ3N0ciAiQWJrw7xyei4iCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTIxIGRzZWxlY3QvcGtnaW5mby5jYzoxMDUgZHNlbGVjdC9wa2d0b3AuY2M6MjkxCittc2dpZCAiRGVzY3JpcHRpb24iCittc2dzdHIgIkJlc2NocmVpYnVuZyIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxNjQgZHNlbGVjdC9wa2dsaXN0LmNjOjU3MgorbXNnaWQgImRvdXBkYXRlIGZhaWxlZCIKK21zZ3N0ciAiZG91cGRhdGUgZmVobGdlc2NobGFnZW4iCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTY2IGRzZWxlY3QvcGtnbGlzdC5jYzo1NzUKK21zZ2lkICJmYWlsZWQgdG8gdW5ibG9jayBTSUdXSU5DSCIKK21zZ3N0ciAiU0lHV0lOQ0gga29ubnRlIG5pY2h0IGVudGJsb2NrdCB3ZXJkZW4iCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTcwIGRzZWxlY3QvcGtnbGlzdC5jYzo1ODAKK21zZ2lkICJmYWlsZWQgdG8gcmUtYmxvY2sgU0lHV0lOQ0giCittc2dzdHIgIlNJR1dJTkNIIGtvbm50ZSBuaWNodCBlcm5ldXQgYmxvY2tpZXJ0IHdlcmRlbiIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxNzEgZHNlbGVjdC9wa2dsaXN0LmNjOjU4MgorbXNnaWQgImdldGNoIGZhaWxlZCIKK21zZ3N0ciAiZ2V0Y2ggZmVobGdlc2NobGFnZW4iCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTg4Cittc2dpZCAiRXhwbGFuYXRpb24iCittc2dzdHIgIkJlc2NocmVpYnVuZyIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxOTcKK21zZ2lkICJObyBleHBsYW5hdGlvbiBhdmFpbGFibGUuIgorbXNnc3RyICJLZWluZSBCZXNjaHJlaWJ1bmcgdmVyZsO8Z2Jhci4iCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjY3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJcbiIKKyIlczogJXNcbiIKK21zZ3N0ciAiIgorIlxuIgorIlxuIgorIiVzOiAlc1xuIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzo3MAorbXNnaWQgIiIKKyJcbiIKKyJQcmVzcyA8ZW50ZXI+IHRvIGNvbnRpbnVlLiIKK21zZ3N0ciAiIgorIlxuIgorIkRyw7xja2VuIFNpZSA8RWluZ2FiZT4genVtIEZvcnRzZXR6ZW4uIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoxNjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHJlc3MgPGVudGVyPiB0byBjb250aW51ZS5cbiIKK21zZ3N0ciAiRHLDvGNrZW4gU2llIDxFaW5nYWJlPiB6dW0gRm9ydGZhaHJlbi5cbiIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MTYyCittc2dpZCAiPHN0YW5kYXJkIGVycm9yPiIKK21zZ3N0ciAiPFN0YW5kYXJkZmVobGVyYXVzZ2FiZT4iCisKKyMgQ0hFQ0tNRQorIzogZHNlbGVjdC9tZXRob2QuY2M6MTY1Cittc2dpZCAiZXJyb3IgcmVhZGluZyBhY2tub3dsZWRnZW1lbnQgb2YgcHJvZ3JhbSBmYWlsdXJlIG1lc3NhZ2UiCittc2dzdHIgIkZlaGxlciBiZWltIExlc2VuIGRlciBCZXN0w6R0aWd1bmcgZGVyIFByb2dyYW1tLUZlaGxlcm1lbGR1bmciCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjE5NgorbXNnaWQgInVwZGF0ZSBhdmFpbGFibGUgbGlzdCBzY3JpcHQiCittc2dzdHIgIlNrcmlwdCB6dXIgQWt0dWFsaXNpZXJ1bmcgZGVyIFZlcmbDvGdiYXJrZWl0c2xpc3RlIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoyMDAKK21zZ2lkICJpbnN0YWxsYXRpb24gc2NyaXB0IgorbXNnc3RyICJJbnN0YWxsYXRpb25zc2tyaXB0IgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoyNDYKK21zZ2lkICJxdWVyeS9zZXR1cCBzY3JpcHQiCittc2dzdHIgIkFiZnJhZ2UtL0VpbnJpY2h0dW5nc3NrcmlwdCIKKworIyBDSEVDS01FOiDCu09wdGlvbnMtRGF0ZWnCqyBvZGVyIMK7T3B0aW9uZW4tRGF0ZWnCqz8KKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjUzCisjLCBjLWZvcm1hdAorbXNnaWQgInN5bnRheCBlcnJvciBpbiBtZXRob2Qgb3B0aW9ucyBmaWxlIGAlLjI1MHMnIC0tICVzIgorbXNnc3RyICJTeW50YXhmZWhsZXIgaW4gTWV0aG9kZW4tT3B0aW9ucy1EYXRlaSDCuyUuMjUwc8KrIC0tICVzIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzo1OQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciByZWFkaW5nIG9wdGlvbnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiRmVobGVyIGJlaW0gTGVzZW4gZGVyIE9wdGlvbnMtRGF0ZWkgwrslLjI1MHPCqyIKKworIyBDSEVDS01FCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzo5MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBgJS4yNTBzJyBkaXJlY3RvcnkgZm9yIHJlYWRpbmcgbWV0aG9kcyIKK21zZ3N0ciAiVmVyemVpY2huaXMgwrslLjI1MHPCqyBrYW5uIG5pY2h0IGdlbGVzZW4gd2VyZGVuLCB1bSBNZXRob2RlbiB6dSBsZXNlbiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTA2CisjLCBjLWZvcm1hdAorbXNnaWQgIm1ldGhvZCBgJS4yNTBzJyBoYXMgbmFtZSB0aGF0IGlzIHRvbyBsb25nICglZCA+ICVkIGNoYXJhY3RlcnMpIgorbXNnc3RyICJNZXRob2RlIMK7JS4yNTBzwqsgaGF0IGVpbmVuIHp1IGxhbmdlbiBOYW1lbiAoJWQgPiAlZCBaZWljaGVuKSIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTE3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBhY2Nlc3MgbWV0aG9kIHNjcmlwdCBgJS4yNTBzJyIKK21zZ3N0ciAiQXVmIE1ldGhvZGVuc2tyaXB0IMK7JS4yNTBzwqsga2FubiBuaWNodCB6dWdlZ3JpZmZlbiB3ZXJkZW4iCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjEyMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBtZXRob2Qgb3B0aW9ucyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJNZXRob2Rlbi1PcHRpb25zLURhdGVpIMK7JS4yNTBzwqsga2FubiBuaWNodCBnZWxlc2VuIHdlcmRlbiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTQ3Cittc2dpZCAibm9uLWRpZ2l0IHdoZXJlIGRpZ2l0IHdhbnRlZCIKK21zZ3N0ciAiTmljaHR6aWZmZXIsIHdvIFppZmZlciBlcndhcnRldCB3dXJkZSIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTUwCittc2dpZCAiRU9GIGluIGluZGV4IHN0cmluZyIKK21zZ3N0ciAiRU9GIGluIEluZGV4emVpY2hlbmtldHRlIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNTMKK21zZ2lkICJpbmRleCBzdHJpbmcgdG9vIGxvbmciCittc2dzdHIgIkluZGV4emVpY2hlbmtldHRlIHp1IGxhbmciCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE1NgorbXNnaWQgIm5ld2xpbmUgYmVmb3JlIG9wdGlvbiBuYW1lIHN0YXJ0IgorbXNnc3RyICJaZWlsZW52b3JzY2h1YiB2b3IgT3B0aW9uc25hbWVuYW5mYW5nIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNTgKK21zZ2lkICJFT0YgYmVmb3JlIG9wdGlvbiBuYW1lIHN0YXJ0IgorbXNnc3RyICJFT0Ygdm9yIE9wdGlvbnNuYW1lbmFuZmFuZyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTYyCittc2dpZCAibm9uYWxwaGEgd2hlcmUgb3B0aW9uIG5hbWUgc3RhcnQgd2FudGVkIgorbXNnc3RyICJOaWNodGJ1Y2hzdGFiZSwgd28gQW5mYW5nIGVpbmVzIE9wdGlvbnNuYW1lbiBlcndhcnRldCB3dXJkZSIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTY0Cittc2dpZCAibm9uLWFscGhhbnVtIGluIG9wdGlvbiBuYW1lIgorbXNnc3RyICJuaWNodC1hbHBoYW51bWVyaXNjaGVzIFplaWNoZW4gaW0gT3B0aW9uc25hbWVuIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNjcKK21zZ2lkICJFT0YgaW4gb3B0aW9uIG5hbWUiCittc2dzdHIgIkVPRiBpbSBPcHRpb25zbmFtZW4iCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE3MgorbXNnaWQgIm5ld2xpbmUgYmVmb3JlIHN1bW1hcnkiCittc2dzdHIgIlplaWxlbnZvcnNjaHViIHZvciBadXNhbW1lbmZhc3N1bmciCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE3NAorbXNnaWQgIkVPRiBiZWZvcmUgc3VtbWFyeSIKK21zZ3N0ciAiRU9GIHZvciBadXNhbW1lbmZhc3N1bmciCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE4MAorbXNnaWQgIkVPRiBpbiBzdW1tYXJ5IC0gbWlzc2luZyBuZXdsaW5lIgorbXNnc3RyICJFT0YgaW4gWnVzYW1tZW5mYXNzdW5nIC0gWmVpbGVudm9yc2NodWIgZmVobHQiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE5MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBvcHRpb24gZGVzY3JpcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiT3B0aW9ucy1CZXNjaHJlaWJ1bmdzLURhdGVpIMK7JS4yNTBzwqsga2FubiBuaWNodCBnZcO2ZmZuZXQgd2VyZGVuIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxOTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgb3B0aW9uIGRlc2NyaXB0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKyJPcHRpb25zLUJlc2NocmVpYnVuZ3MtRGF0ZWkgwrslLjI1MHPCqyBrYW5uIG5pY2h0IG1pdCBzdGF0IGFiZ2VmcmFndCB3ZXJkZW4iCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE5OAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCBvcHRpb24gZGVzY3JpcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiT3B0aW9ucy1CZXNjaHJlaWJ1bmdzLURhdGVpIMK7JS4yNTBzwqsga29ubnRlIG5pY2h0IGdlbGVzZW4gd2VyZGVuIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgZHVyaW5nIHJlYWQgb2Ygb3B0aW9uIGRlc2NyaXB0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIkZlaGxlciBiZWltIExlc2VuIGRlciBPcHRpb25zLUJlc2NocmVpYnVuZ3MtRGF0ZWkgwrslLjI1MHPCqyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MjI0CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGR1cmluZyByZWFkIG9mIG1ldGhvZCBvcHRpb25zIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIkZlaGxlciBiZWltIExlc2VuIGRlciBNZXRob2Rlbi1PcHRpb25zLURhdGVpIMK7JS4yNTBzwqsiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjI0NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBjdXJyZW50IG9wdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJBa3R1ZWxsZSBPcHRpb25zLURhdGVpIMK7JS4yNTBzwqsga2FubiBuaWNodCBnZcO2ZmZuZXQgd2VyZGVuIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyODkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gbmV3IG9wdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJOZXVlIE9wdGlvbnMtRGF0ZWkgwrslLjI1MHPCqyBrYW5uIG5pY2h0IGdlw7ZmZm5ldCB3ZXJkZW4iCisKKyMgRklYTUU6IFfDpHJlIMK7bmV3IG9wdGlvbiBmaWxlwqsgbmljaHQgYmVzc2VyPworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MjkyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgb3B0aW9uIHRvIGAlLjI1MHMnIgorbXNnc3RyICJOZXVlIE9wdGlvbnMtRGF0ZWkga2FubiBuaWNodCBuYWNoIMK7JS4yNTBzwqsgZ2VzY2hyaWViZW4gd2VyZGVuIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyOTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIG5ldyBvcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiTmV1ZSBPcHRpb25zLURhdGVpIMK7JS4yNTBzwqsga2FubiBuaWNodCBnZXNjaGxvc3NlbiB3ZXJkZW4iCisKKyMgRklYTUU6IFfDpHJlIMK7bmV3IG9wdGlvbiBmaWxlwqsgbmljaHQgYmVzc2VyPworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6Mjk3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyBvcHRpb24gYXMgYCUuMjUwcyciCittc2dzdHIgIk5ldWUgT3B0aW9ucy1EYXRlaSBrYW5uIG5pY2h0IGFscyDCuyUuMjUwc8KrIGluc3RhbGxpZXJ0IHdlcmRlbiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjM2Cittc2dpZCAibmV3IHBhY2thZ2UiCittc2dzdHIgIm5ldWVzIFBha2V0IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MzcKK21zZ2lkICJpbnN0YWxsIgorbXNnc3RyICJpbnN0YWxsLiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjM4Cittc2dpZCAiaG9sZCIKK21zZ3N0ciAiaGFsdGVuIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MzkKK21zZ2lkICJyZW1vdmUiCittc2dzdHIgImzDtnNjaGVuIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NDAKK21zZ2lkICJwdXJnZSIKK21zZ3N0ciAidm9sbHN0w6RuZGlnIGzDtnNjaGVuIgorCisjLiBUUkFOU0xBVE9SUzogVGhlIHNwYWNlIGlzIGEgdHJpY2sgdG8gd29yayBhcm91bmQgZ2V0dGV4dCB3aGljaCB1c2VzCisjLiAqIHRoZSBlbXB0eSBzdHJpbmcgdG8gc3RvcmUgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHRyYW5zbGF0aW9uLiBETyBOT1QKKyMuICogQ0hBTkdFIFRIQVQgSU4gQSBUUkFOU0xBVElPTiEgVGhlIGNvZGUgcmVhbGx5IHJlbGllcyBvbiB0aGF0IGJlaW5nCisjLiAqIGEgc2luZ2xlIHNwYWNlLgorIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjQ3Cittc2dpZCAiICIKK21zZ3N0ciAiICIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjQ4Cittc2dpZCAiUkVJTlNUQUxMIgorbXNnc3RyICJSRUlOU1RBTEwiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1MQorbXNnaWQgIm5vdCBpbnN0YWxsZWQiCittc2dzdHIgIm5pY2h0IGluc3RhbGxpZXJ0IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTIKK21zZ2lkICJyZW1vdmVkIChjb25maWdzIHJlbWFpbikiCittc2dzdHIgImVudGZlcm50IChLb25maWd1cmF0aW9uIGJsZWlidCkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1MworbXNnaWQgImhhbGYgaW5zdGFsbGVkIgorbXNnc3RyICJoYWxiIGluc3RhbGxpZXJ0IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTQKK21zZ2lkICJ1bnBhY2tlZCAobm90IHNldCB1cCkiCittc2dzdHIgImVudHBhY2t0IChuaWNodCBlaW5nZXJpY2h0ZXQpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTUKK21zZ2lkICJoYWxmIGNvbmZpZ3VyZWQgKGNvbmZpZyBmYWlsZWQpIgorbXNnc3RyICJoYWxiIGtvbmZpZ3VyaWVydCAoS29uZmlndXJhdGlvbiBmZWhsZ2VzY2hsYWdlbikiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1NgorbXNnaWQgImF3YWl0aW5nIHRyaWdnZXIgcHJvY2Vzc2luZyIKK21zZ3N0ciAiYXVmIFRyaWdnZXItVmVyYXJiZWl0dW5nIHdhcnRlbmQiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1NworbXNnaWQgInRyaWdnZXJlZCIKK21zZ3N0ciAiZ2V0cmlnZ2VyZWQiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1OAorbXNnaWQgImluc3RhbGxlZCIKK21zZ3N0ciAiaW5zdGFsbGllcnQiCisKKyMgRklYTUU6IERpZSBuw6RjaHN0ZW4gVGV4dGUgdGF1Y2hlbiBzb3dvaGwgdm9yIMK7UGFrZXRlwqsgYWxzIGF1Y2ggYWxsZWluZQorIyBpbiBkZXIgU3RhdHVzemVpbGUgc293aWUgKGJlaSBhdXNmw7xocmxpY2hlciBBbnplaWdlKSBpbiBkZXIKKyMgUHJpb3JpdMOkdHNzcGFsdGUgYXVmLCBkYXMgc2llaHQgcmljaHRpZyBibMO2ZCBhdXMhCisjIENIRUNLTUU6IEdyb8OfLSBvZGVyIEtsZWluc2NocmVpYnVuZz8KKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo2MQorbXNnaWQgIlJlcXVpcmVkIgorbXNnc3RyICJFcmZvcmRlcmxpY2hlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjIKK21zZ2lkICJJbXBvcnRhbnQiCittc2dzdHIgIldpY2h0aWdlIgorCisjIEZJWE1FOiBXZWRlciDCu1N0YW5kYXJkLSBQYWtldGXCqyBub2NoIMK7U3RhbmRhcmQgUGFrZXRlwqsgaXN0IHRvbGwgOi0oCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjMKK21zZ2lkICJTdGFuZGFyZCIKK21zZ3N0ciAiU3RhbmRhcmQiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo2NAorbXNnaWQgIk9wdGlvbmFsIgorbXNnc3RyICJPcHRpb25hbGUiCisKKyMgRklYTUUsIHNpZWhlIMK7U3RhbmRhcmTCqyBvYmVuCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjUKK21zZ2lkICJFeHRyYSIKK21zZ3N0ciAiRXh0cmEiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo2NgorbXNnaWQgIiFCdWchIgorbXNnc3RyICIhRmVobGVyISIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjY3Cittc2dpZCAiVW5jbGFzc2lmaWVkIgorbXNnc3RyICJVbmtsYXNzaWZpemllcnRlIgorCisjIENIRUNLTUU6IERlciBVbnRlcnNjaGllZCB6d2lzY2hlbiDCu2JlZsO8cndvcnRldMKrIHVuZCDCu2VtcGZpZWhsdMKrCisjIGTDvHJmdGUgdmllbGVuIExldXRlbiBuaWNodCBzbyBvaG5lIHdlaXRlcmVzIGtsYXIgc2Vpbi4KKyMgTGVpZGVyIGdlaHQgwrtzY2hsw6RndCB2b3LCqyBuaWNodDogUGFrZXQgQSBzY2hsw6RndCB2b3IgUGFrZXQgQiAuLi4gOi0oCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzAKK21zZ2lkICJzdWdnZXN0cyIKK21zZ3N0ciAiYmVmw7xyd29ydGV0IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzEKK21zZ2lkICJyZWNvbW1lbmRzIgorbXNnc3RyICJlbXBmaWVobHQiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3MgorbXNnaWQgImRlcGVuZHMgb24iCittc2dzdHIgImjDpG5ndCBhYiB2b24iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3MworbXNnaWQgInByZS1kZXBlbmRzIG9uIgorbXNnc3RyICJow6RuZ3QgYWIgKHZvcmhlcikgdm9uIgorCisjIENIRUNLTUU6IGJyZWFrcyBpc3Qga2VpbmUgc3ltbWV0cmlzY2hlIEJlemllaHVuZworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjc0Cittc2dpZCAiYnJlYWtzIgorbXNnc3RyICJiZXNjaMOkZGlndCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjc1Cittc2dpZCAiY29uZmxpY3RzIHdpdGgiCittc2dzdHIgImtvbGxpZGllcnQgbWl0IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzYKK21zZ2lkICJwcm92aWRlcyIKK21zZ3N0ciAibGllZmVydCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjc3Cittc2dpZCAicmVwbGFjZXMiCittc2dzdHIgImVyc2V0enQiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3OAorbXNnaWQgImVuaGFuY2VzIgorbXNnc3RyICJlcndlaXRlcnQiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4MQorbXNnaWQgIlJlcSIKK21zZ3N0ciAiRXJmIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODIKK21zZ2lkICJJbXAiCittc2dzdHIgIldpYyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjgzCittc2dpZCAiU3RkIgorbXNnc3RyICJTdGQiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4NAorbXNnaWQgIk9wdCIKK21zZ3N0ciAiT3B0IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODUKK21zZ2lkICJYdHIiCittc2dzdHIgIkV4dCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjg2Cittc2dpZCAiYlVHIgorbXNnc3RyICJiVUciCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4NworbXNnaWQgIj8iCittc2dzdHIgIj8iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo5NSBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTE1Cittc2dpZCAiQnJva2VuIgorbXNnc3RyICJEZWZla3RlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6OTYKK21zZ2lkICJOZXciCittc2dzdHIgIk5ldWUiCisKKyMgRklYTUU6ICJVcGdyYWRhYmxlIiAod2llIGluIGFwdGl0dWRlKSB3w6RyZSBiZXNzZXIKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo5NworbXNnaWQgIlVwZGF0ZWQiCittc2dzdHIgIkFrdHVhbGlzaWVydGUiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo5OAorbXNnaWQgIk9ic29sZXRlL2xvY2FsIgorbXNnc3RyICJWZXJhbHRldGUvTG9rYWxlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6OTkKK21zZ2lkICJVcC10by1kYXRlIgorbXNnc3RyICJBa3R1ZWxsZSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwMAorbXNnaWQgIkF2YWlsYWJsZSIKK21zZ3N0ciAiVmVyZsO8Z2JhcmUiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDEgZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExNworbXNnaWQgIlJlbW92ZWQiCittc2dzdHIgIkVudGZlcm50ZSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwMiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTExCittc2dpZCAiQnJva2VubHkgaW5zdGFsbGVkIHBhY2thZ2VzIgorbXNnc3RyICJVbnZvbGxzdMOkbmRpZyBpbnN0YWxsaWVydGUgUGFrZXRlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTAzCittc2dpZCAiTmV3bHkgYXZhaWxhYmxlIHBhY2thZ2VzIgorbXNnc3RyICJOZXUgdmVyZsO8Z2JhcmUgUGFrZXRlIgorCisjIEZJWE1FOiAiVXBncmFkYWJsZSIsIHMuby4KKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDQKK21zZ2lkICJVcGRhdGVkIHBhY2thZ2VzIChuZXdlciB2ZXJzaW9uIGlzIGF2YWlsYWJsZSkiCittc2dzdHIgIkFrdHVhbGlzaWVydGUgUGFrZXRlIChuZXVlcmUgVmVyc2lvbiBpc3QgdmVyZsO8Z2JhcikiCisKKyMgQ0hFQ0tNRTogwrt2b3JoYW5kZW7CqyBzdHJlaWNoZW4/CisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTA1Cittc2dpZCAiT2Jzb2xldGUgYW5kIGxvY2FsIHBhY2thZ2VzIHByZXNlbnQgb24gc3lzdGVtIgorbXNnc3RyICJWZXJhbHRldGUgdW5kIGxva2FsZSBQYWtldGUgaW0gU3lzdGVtIHZvcmhhbmRlbiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwNgorbXNnaWQgIlVwIHRvIGRhdGUgaW5zdGFsbGVkIHBhY2thZ2VzIgorbXNnc3RyICJBa3R1ZWxsZSBpbnN0YWxsaWVydGUgUGFrZXRlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTA3Cittc2dpZCAiQXZhaWxhYmxlIHBhY2thZ2VzIChub3QgY3VycmVudGx5IGluc3RhbGxlZCkiCittc2dzdHIgIlZlcmbDvGdiYXJlIFBha2V0ZSAoZGVyemVpdCBuaWNodCBpbnN0YWxsaWVydCkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDgKK21zZ2lkICJSZW1vdmVkIGFuZCBubyBsb25nZXIgYXZhaWxhYmxlIHBhY2thZ2VzIgorbXNnc3RyICJFbnRmZXJudGUgdW5kIG5pY2h0IG1laHIgdmVyZsO8Z2JhcmUgUGFrZXRlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTEyCittc2dpZCAiSW5zdGFsbGVkIHBhY2thZ2VzIgorbXNnc3RyICJJbnN0YWxsaWVydGUgUGFrZXRlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTEzCittc2dpZCAiUmVtb3ZlZCBwYWNrYWdlcyAoY29uZmlndXJhdGlvbiBzdGlsbCBwcmVzZW50KSIKK21zZ3N0ciAiRW50ZmVybnRlIFBha2V0ZSAoS29uZmlndXJhdGlvbnNkYXRlaWVuIHNpbmQgbm9jaCB2b3JoYW5kZW4pIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTE0Cittc2dpZCAiUHVyZ2VkIHBhY2thZ2VzIGFuZCB0aG9zZSBuZXZlciBpbnN0YWxsZWQiCittc2dzdHIgIlZvbGxzdMOkbmRpZyBnZWzDtnNjaHRlIHVuZCBub2NoIG5pZSBpbnN0YWxsaWVydGUgUGFrZXRlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTE2Cittc2dpZCAiSW5zdGFsbGVkIgorbXNnc3RyICJJbnN0YWxsaWVydCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExOAorbXNnaWQgIlB1cmdlZCIKK21zZ3N0ciAiVm9sbHN0w6RuZGlnIGdlbMO2c2NodCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjE5OAorbXNnaWQgImRzZWxlY3QgLSByZWN1cnNpdmUgcGFja2FnZSBsaXN0aW5nIgorbXNnc3RyICJkc2VsZWN0IC0gUmVrdXJzaXZlIFBha2V0bGlzdGUiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxOTkKK21zZ2lkICJkc2VsZWN0IC0gaW5zcGVjdGlvbiBvZiBwYWNrYWdlIHN0YXRlcyIKK21zZ3N0ciAiZHNlbGVjdCAtIEFuc2ljaHQgZGVyIFBha2V0enVzdMOkbmRlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjAwCittc2dpZCAiZHNlbGVjdCAtIG1haW4gcGFja2FnZSBsaXN0aW5nIgorbXNnc3RyICJkc2VsZWN0IC0gSGF1cHRwYWtldGxpc3RlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjA4Cittc2dpZCAiIChieSBzZWN0aW9uKSIKK21zZ3N0ciAiIChuYWNoIEJlcmVpY2gpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjExCittc2dpZCAiIChhdmFpbC4sIHNlY3Rpb24pIgorbXNnc3RyICIgKFZlcmbDvGcuLCBCZXJlaWNoKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIxNAorbXNnaWQgIiAoc3RhdHVzLCBzZWN0aW9uKSIKK21zZ3N0ciAiIChTdGF0dXMsIEJlcmVpY2gpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjIzCittc2dpZCAiIChieSBwcmlvcml0eSkiCittc2dzdHIgIiAobmFjaCBQcmlvcml0w6R0KSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIyNgorbXNnaWQgIiAoYXZhaWwuLCBwcmlvcml0eSkiCittc2dzdHIgIiAoVmVyZsO8Zy4sIFByaW9yaXTDpHQpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjI5Cittc2dpZCAiIChzdGF0dXMsIHByaW9yaXR5KSIKK21zZ3N0ciAiIChTdGF0dXMsIFByaW9yaXTDpHQpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjM4IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNTAKK21zZ2lkICIgKGFscGhhYmV0aWNhbGx5KSIKK21zZ3N0ciAiIChhbHBoYWJldGlzY2gpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjQxCittc2dpZCAiIChieSBhdmFpbGFiaWxpdHkpIgorbXNnc3RyICIgKG5hY2ggVmVyZsO8Z2JhcmtlaXQpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjQ0Cittc2dpZCAiIChieSBzdGF0dXMpIgorbXNnc3RyICIgKG5hY2ggU3RhdHVzKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI1OAorbXNnaWQgIiBtYXJrOisvPS8tIHRlcnNlOnYgaGVscDo/IgorbXNnc3RyICIgTWFyazorLz0vLSBrbmFwcDp2IEhpbGZlOj8iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNTkKK21zZ2lkICIgbWFyazorLz0vLSB2ZXJib3NlOnYgaGVscDo/IgorbXNnc3RyICIgTWFyazorLz0vLSBhdXNmw7xocmxpY2g6diBIaWxmZTo/IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjYwCittc2dpZCAiIHRlcnNlOnYgaGVscDo/IgorbXNnc3RyICIga25hcHA6diBIaWxmZTo/IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjYxCittc2dpZCAiIHZlcmJvc2U6diBoZWxwOj8iCittc2dzdHIgIiBhdXNmw7xocmxpY2g6diBIaWxmZTo/IgorCisjOiBkc2VsZWN0L3BrZ2luZm8uY2M6ODAKK21zZ2lkICIiCisiVGhlIGxpbmUgeW91IGhhdmUgaGlnaGxpZ2h0ZWQgcmVwcmVzZW50cyBtYW55IHBhY2thZ2VzOyBpZiB5b3UgYXNrIHRvICIKKyJpbnN0YWxsLCByZW1vdmUsIGhvbGQsIGV0Yy4gaXQgeW91IHdpbGwgYWZmZWN0IGFsbCB0aGUgcGFja2FnZXMgd2hpY2ggbWF0Y2ggIgorInRoZSBjcml0ZXJpb24gc2hvd24uXG4iCisiXG4iCisiSWYgeW91IG1vdmUgdGhlIGhpZ2hsaWdodCB0byBhIGxpbmUgZm9yIGEgcGFydGljdWxhciBwYWNrYWdlIHlvdSB3aWxsIHNlZSAiCisiaW5mb3JtYXRpb24gYWJvdXQgdGhhdCBwYWNrYWdlIGRpc3BsYXllZCBoZXJlLlxuIgorIllvdSBjYW4gdXNlIGBvJyBhbmQgYE8nIHRvIGNoYW5nZSB0aGUgc29ydCBvcmRlciBhbmQgZ2l2ZSB5b3Vyc2VsZiB0aGUgIgorIm9wcG9ydHVuaXR5IHRvIG1hcmsgcGFja2FnZXMgaW4gZGlmZmVyZW50IGtpbmRzIG9mIGdyb3Vwcy4iCittc2dzdHIgIiIKKyJEaWUgaGVydm9yZ2Vob2JlbmUgWmVpbGUgcmVwcsOkc2VudGllcnQgdmllbGUgUGFrZXRlOyB3ZW5uIFNpZSB1bSAiCisiSW5zdGFsbGllcmVuLCBMw7ZzY2hlbiwgSGFsdGVuIHVzdy4gYml0dGVuLCBzbyBzaW5kIGFsbGUgUGFrZXRlLCBhdWYgZGllIGRhcyAiCisiYW5nZXplaWd0ZSBLcml0ZXJpdW0genV0cmlmZnQsIGJldHJvZmZlbi5cbiIKKyJcbiIKKyJXZW5uIFNpZSBkaWUgSGVydm9yaGVidW5nIGF1ZiBlaW5lIFplaWxlIGbDvHIgZWluIGJlc3RpbW10ZXMgUGFrZXQgYmV3ZWdlbiwgIgorInNlaGVuIFNpZSBoaWVyIEluZm9ybWF0aW9uZW4genUgZGllc2VtIFBha2V0LlxuIgorIlNpZSBrw7ZubmVuIMK7b8KrIHVuZCDCu0/CqyBiZW51dHplbiwgdW0gZGllIFNvcnRpZXJyZWloZW5mb2xnZSB6dSDDpG5kZXJuIHVuZCAiCisiZGFtaXQgZGllIFBha2V0ZSBpbiBhbmRlcmVuIEdydXBwZW4genUgbWFya2llcmVuLiIKKworIzogZHNlbGVjdC9wa2dpbmZvLmNjOjkzCittc2dpZCAiSW50ZXJyZWxhdGlvbnNoaXBzIgorbXNnc3RyICJHZWdlbnNlaXRpZ2UgQmV6aWVodW5nZW4iCisKKyM6IGRzZWxlY3QvcGtnaW5mby5jYzoxMTIKK21zZ2lkICJObyBkZXNjcmlwdGlvbiBhdmFpbGFibGUuIgorbXNnc3RyICJLZWluZSBCZXNjaHJlaWJ1bmcgdmVyZsO8Z2Jhci4iCisKKyM6IGRzZWxlY3QvcGtnaW5mby5jYzoxMzAKK21zZ2lkICJJbnN0YWxsZWQgY29udHJvbCBmaWxlIGluZm9ybWF0aW9uIgorbXNnc3RyICJJbnN0YWxsaWVydGUgQ29udHJvbC1EYXRlaS1JbmZvcm1hdGlvbmVuIgorCisjOiBkc2VsZWN0L3BrZ2luZm8uY2M6MTQ2Cittc2dpZCAiQXZhaWxhYmxlIGNvbnRyb2wgZmlsZSBpbmZvcm1hdGlvbiIKK21zZ3N0ciAiVmVyZsO8Z2JhcmUgQ29udHJvbC1EYXRlaS1JbmZvcm1hdGlvbmVuIgorCisjOiBkc2VsZWN0L3BrZ2xpc3QuY2M6NDE2Cittc2dpZCAiVGhlcmUgYXJlIG5vIHBhY2thZ2VzLiIKK21zZ3N0ciAiRXMgZ2lidCBrZWluZSBQYWtldGUuIgorCisjOiBkc2VsZWN0L3BrZ2xpc3QuY2M6NTA3Cittc2dpZCAiaW52YWxpZCBzZWFyY2ggb3B0aW9uIGdpdmVuIgorbXNnc3RyICJ1bmfDvGx0aWdlIFN1Y2hvcHRpb24gYW5nZWdlYmVuIgorCisjOiBkc2VsZWN0L3BrZ2xpc3QuY2M6NTIxCittc2dpZCAiZXJyb3IgaW4gcmVndWxhciBleHByZXNzaW9uIgorbXNnc3RyICJGZWhsZXIgaW4gcmVndWzDpHJlbSBBdXNkcnVjayIKKworIzogZHNlbGVjdC9wa2dzdWJsaXN0LmNjOjEwNworbXNnaWQgIiBkb2VzIG5vdCBhcHBlYXIgdG8gYmUgYXZhaWxhYmxlXG4iCittc2dzdHIgIiBzY2hlaW50IG5pY2h0IHZlcmbDvGdiYXIgenUgc2VpblxuIgorCisjOiBkc2VsZWN0L3BrZ3N1Ymxpc3QuY2M6MTI3Cittc2dpZCAiIG9yICIKK21zZ3N0ciAiIG9kZXIgIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo1NworbXNnaWQgIkFsbCIKK21zZ3N0ciAiQWxsZSIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6NzkKK21zZ2lkICJBbGwgcGFja2FnZXMiCittc2dzdHIgIkFsbGUgUGFrZXRlIgorCisjIENIRUNLTUUKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHBhY2thZ2VzIHdpdGhvdXQgYSBzZWN0aW9uIgorbXNnc3RyICIlcyBQYWtldGUgb2huZSBlaW5lbiBCZXJlaWNoIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo4NQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBwYWNrYWdlcyBpbiBzZWN0aW9uICVzIgorbXNnc3RyICIlcyBQYWtldGUgaW0gQmVyZWljaCAlcyIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6OTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgJXMgcGFja2FnZXMiCittc2dzdHIgIiVzICVzIFBha2V0ZSIKKworIyBDSEVDS01FCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo5NQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyAlcyBwYWNrYWdlcyB3aXRob3V0IGEgc2VjdGlvbiIKK21zZ3N0ciAiJXMgJXMgUGFrZXRlIG9obmUgZWluZW4gQmVyZWljaCIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6OTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgJXMgcGFja2FnZXMgaW4gc2VjdGlvbiAlcyIKK21zZ3N0ciAiJXMgJXMgUGFrZXRlIGltIEJlcmVpY2ggJXMiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjExOAorIywgYy1mb3JtYXQKK21zZ2lkICIlLSpzICVzJXMlczsgICVzICh3YXM6ICVzKS4gICVzIgorbXNnc3RyICIlLSpzICVzJXMlczsgICVzICh3YXI6ICVzKS4gICVzIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyNjMKK21zZ2lkICJFcnJvciIKK21zZ3N0ciAiRmVobGVyIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyNjcKK21zZ2lkICJJbnN0YWxsZWQ/IgorbXNnc3RyICJJbnN0YWxsaWVydD8iCisKKyMgIkFsdGUgTWFya2llcnVuZyIgd8O8cmRlIGFiZ2VzY2huaXR0ZW4KKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI3MQorbXNnaWQgIk9sZCBtYXJrIgorbXNnc3RyICJBbHRlIE1hcmtlIgorCisjIEZJWE1FOiBOYWNoIDEwIG9kZXIgMTEgWmVpY2hlbiB3aXJkIGFiZ2VzY2huaXR0ZW4gOi0oCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyNzUKK21zZ2lkICJNYXJrZWQgZm9yIgorbXNnc3RyICJBdXNnZXfDpGhsdCB6dXIiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI3OAorbXNnaWQgIkVJT00iCittc2dzdHIgIkZJQU0iCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI4MAorbXNnaWQgIlNlY3Rpb24iCittc2dzdHIgIkJlcmVpY2giCisKKyMgRklYTUU6IE5hY2ggOCBaZWljaGVuIHdpcmQgYWJnZXNjaG5pdHRlbiA6LSgKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI4MQorbXNnaWQgIlByaW9yaXR5IgorbXNnc3RyICJQcmlvcml0w6R0IgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyODIKK21zZ2lkICJQYWNrYWdlIgorbXNnc3RyICJQYWtldCIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6Mjg2Cittc2dpZCAiSW5zdC52ZXIiCittc2dzdHIgIkluc3QuVmVyIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyODkKK21zZ2lkICJBdmFpbC52ZXIiCittc2dzdHIgIlZlcmYuVmVyIgorCisjfiBtc2dpZCAicmV0dXJuZWQgZXJyb3IgZXhpdCBzdGF0dXMgJWQuXG4iCisjfiBtc2dzdHIgImdhYiBGZWhsZXJyw7xja2dhYmV3ZXJ0ICVkIHp1csO8Y2suXG4iCisKKyN+IG1zZ2lkICJ3YXMgaW50ZXJydXB0ZWQuXG4iCisjfiBtc2dzdHIgInd1cmRlIHVudGVyYnJvY2hlbi5cbiIKKworI34gbXNnaWQgIndhcyB0ZXJtaW5hdGVkIGJ5IGEgc2lnbmFsOiAlcy5cbiIKKyN+IG1zZ3N0ciAid3VyZGUgZHVyY2ggZWluIFNpZ25hbCBiZWVuZGV0OiAlcy5cbiIKKworI34gbXNnaWQgIihJdCBsZWZ0IGEgY29yZWR1bXAuKVxuIgorI34gbXNnc3RyICIoRXMgaGludGVybGllw58gZWluIFNwZWljaGVyYWJiaWxkLilcbiIKKworI34gbXNnaWQgImZhaWxlZCB3aXRoIGFuIHVua25vd24gd2FpdCByZXR1cm4gY29kZSAlZC5cbiIKKyN+IG1zZ3N0ciAic2NobHVnIG1pdCBlaW5lbSB1bmJla2FubnRlbiBXYXJ0ZXLDvGNrZ2FiZXdlcnQgJWQgZmVobC5cbiIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9kc2VsZWN0LnBvdCBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9kc2VsZWN0LnBvdApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hZTgzMTUzCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL2RzZWxlY3QucG90CkBAIC0wLDAgKzEsMTM5MSBAQAorIyBTT01FIERFU0NSSVBUSVZFIFRJVExFLgorIyBDb3B5cmlnaHQgKEMpIFlFQVIgU29mdHdhcmUgaW4gdGhlIFB1YmxpYyBJbnRlcmVzdCwgSW5jLgorIyBUaGlzIGZpbGUgaXMgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIHNhbWUgbGljZW5zZSBhcyB0aGUgUEFDS0FHRSBwYWNrYWdlLgorIyBGSVJTVCBBVVRIT1IgPEVNQUlMQEFERFJFU1M+LCBZRUFSLgorIworIywgZnV6enkKK21zZ2lkICIiCittc2dzdHIgIiIKKyJQcm9qZWN0LUlkLVZlcnNpb246IGRwa2cgMS4xNi4xLjFcbiIKKyJSZXBvcnQtTXNnaWQtQnVncy1UbzogZGViaWFuLWRwa2dAbGlzdHMuZGViaWFuLm9yZ1xuIgorIlBPVC1DcmVhdGlvbi1EYXRlOiAyMDExLTEwLTE0IDA3OjExKzAyMDBcbiIKKyJQTy1SZXZpc2lvbi1EYXRlOiBZRUFSLU1PLURBIEhPOk1JK1pPTkVcbiIKKyJMYXN0LVRyYW5zbGF0b3I6IEZVTEwgTkFNRSA8RU1BSUxAQUREUkVTUz5cbiIKKyJMYW5ndWFnZS1UZWFtOiBMQU5HVUFHRSA8TExAbGkub3JnPlxuIgorIkxhbmd1YWdlOiBcbiIKKyJNSU1FLVZlcnNpb246IDEuMFxuIgorIkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD1DSEFSU0VUXG4iCisiQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdFxuIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjEyNQorbXNnaWQgIlNlYXJjaCBmb3IgPyAiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxNDcKK21zZ2lkICJFcnJvcjogIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MTc4Cittc2dpZCAiSGVscDogIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MTg0Cittc2dpZCAiUHJlc3MgPyBmb3IgaGVscCBtZW51LCAuIGZvciBuZXh0IHRvcGljLCA8c3BhY2U+IHRvIGV4aXQgaGVscC4iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxOTEKK21zZ2lkICJIZWxwIGluZm9ybWF0aW9uIGlzIGF2YWlsYWJsZSB1bmRlciB0aGUgZm9sbG93aW5nIHRvcGljczoiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxOTkKK21zZ2lkICIiCisiUHJlc3MgYSBrZXkgZnJvbSB0aGUgbGlzdCBhYm92ZSwgPHNwYWNlPiBvciBgcScgdG8gZXhpdCBoZWxwLFxuIgorIiAgb3IgYC4nIChmdWxsIHN0b3ApIHRvIHJlYWQgZWFjaCBoZWxwIHBhZ2UgaW4gdHVybi4gIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MjA1Cittc2dpZCAiZXJyb3IgcmVhZGluZyBrZXlib2FyZCBpbiBoZWxwIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6NTcKK21zZ2lkICJpb2N0bChUSU9DR1dJTlNaKSBmYWlsZWQiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo2MAorbXNnaWQgImRvdXBkYXRlIGluIFNJR1dJTkNIIGhhbmRsZXIgZmFpbGVkIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6NjcKK21zZ2lkICJmYWlsZWQgdG8gcmVzdG9yZSBvbGQgU0lHV0lOQ0ggc2lnYWN0IgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6NjkKK21zZ2lkICJmYWlsZWQgdG8gcmVzdG9yZSBvbGQgc2lnbmFsIG1hc2siCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo3OQorbXNnaWQgImZhaWxlZCB0byBnZXQgb2xkIHNpZ25hbCBtYXNrIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6ODAKK21zZ2lkICJmYWlsZWQgdG8gZ2V0IG9sZCBTSUdXSU5DSCBzaWdhY3QiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo4NAorbXNnaWQgImZhaWxlZCB0byBibG9jayBTSUdXSU5DSCIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjg5Cittc2dpZCAiZmFpbGVkIHRvIHNldCBuZXcgU0lHV0lOQ0ggc2lnYWN0IgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTI2Cittc2dpZCAiZmFpbGVkIHRvIGFsbG9jYXRlIGNvbG91ciBwYWlyIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTY3Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSB0aXRsZSB3aW5kb3ciCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxNzEKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHdoYXRpbmZvIHdpbmRvdyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE3NQorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgYmFzZWxpc3QgcGFkIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTc4Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBoZWFkaW5nIHBhZCIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE4MgorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgdGhpc3N0YXRlIHBhZCIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE4NgorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgaW5mbyBwYWQiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxOTEKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHF1ZXJ5IHdpbmRvdyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjI1NQorbXNnaWQgIktleWJpbmRpbmdzIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MzAzCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgLS0gJWQlJSwgcHJlc3MgIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MzA2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGZvciBtb3JlIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MzEwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHRvIGdvIGJhY2siCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzo3OAorbXNnaWQgIltub3QgYm91bmRdIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiW3VuazogJWRdIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTM5Cittc2dpZCAiU2Nyb2xsIG9ud2FyZHMgdGhyb3VnaCBoZWxwL2luZm9ybWF0aW9uIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQwCittc2dpZCAiU2Nyb2xsIGJhY2t3YXJkcyB0aHJvdWdoIGhlbHAvaW5mb3JtYXRpb24iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDEKK21zZ2lkICJNb3ZlIHVwIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQyCittc2dpZCAiTW92ZSBkb3duIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQzCittc2dpZCAiR28gdG8gdG9wIG9mIGxpc3QiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDQKK21zZ2lkICJHbyB0byBlbmQgb2YgbGlzdCIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0NQorbXNnaWQgIlJlcXVlc3QgaGVscCAoY3ljbGUgdGhyb3VnaCBoZWxwIHNjcmVlbnMpIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ2Cittc2dpZCAiQ3ljbGUgdGhyb3VnaCBpbmZvcm1hdGlvbiBkaXNwbGF5cyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0NworbXNnaWQgIlJlZHJhdyBkaXNwbGF5IgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ4Cittc2dpZCAiU2Nyb2xsIG9ud2FyZHMgdGhyb3VnaCBsaXN0IGJ5IDEgbGluZSIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0OQorbXNnaWQgIlNjcm9sbCBiYWNrd2FyZHMgdGhyb3VnaCBsaXN0IGJ5IDEgbGluZSIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1MAorbXNnaWQgIlNjcm9sbCBvbndhcmRzIHRocm91Z2ggaGVscC9pbmZvcm1hdGlvbiBieSAxIGxpbmUiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTEKK21zZ2lkICJTY3JvbGwgYmFja3dhcmRzIHRocm91Z2ggaGVscC9pbmZvcm1hdGlvbiBieSAxIGxpbmUiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTIKK21zZ2lkICJTY3JvbGwgb253YXJkcyB0aHJvdWdoIGxpc3QiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTMKK21zZ2lkICJTY3JvbGwgYmFja3dhcmRzIHRocm91Z2ggbGlzdCIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1NgorbXNnaWQgIk1hcmsgcGFja2FnZShzKSBmb3IgaW5zdGFsbGF0aW9uIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTU3Cittc2dpZCAiTWFyayBwYWNrYWdlKHMpIGZvciBkZWluc3RhbGxhdGlvbiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1OAorbXNnaWQgIk1hcmsgcGFja2FnZShzKSBmb3IgZGVpbnN0YWxsIGFuZCBwdXJnZSIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1OQorbXNnaWQgIk1ha2UgaGlnaGxpZ2h0IG1vcmUgc3BlY2lmaWMiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjAKK21zZ2lkICJNYWtlIGhpZ2hsaWdodCBsZXNzIHNwZWNpZmljIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTYxCittc2dpZCAiU2VhcmNoIGZvciBhIHBhY2thZ2Ugd2hvc2UgbmFtZSBjb250YWlucyBhIHN0cmluZyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2MgorbXNnaWQgIlJlcGVhdCBsYXN0IHNlYXJjaC4iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjMKK21zZ2lkICJTd2FwIHNvcnQgb3JkZXIgcHJpb3JpdHkvc2VjdGlvbiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2NAorbXNnaWQgIlF1aXQsIGNvbmZpcm1pbmcsIGFuZCBjaGVja2luZyBkZXBlbmRlbmNpZXMiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjUKK21zZ2lkICJRdWl0LCBjb25maXJtaW5nIHdpdGhvdXQgY2hlY2siCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjYKK21zZ2lkICJRdWl0LCByZWplY3RpbmcgY29uZmxpY3QvZGVwZW5kZW5jeSBzdWdnZXN0aW9ucyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2NworbXNnaWQgIkFib3J0IC0gcXVpdCB3aXRob3V0IG1ha2luZyBjaGFuZ2VzIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY4Cittc2dpZCAiUmV2ZXJ0IHRvIG9sZCBzdGF0ZSBmb3IgYWxsIHBhY2thZ2VzIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY5Cittc2dpZCAiUmV2ZXJ0IHRvIHN1Z2dlc3RlZCBzdGF0ZSBmb3IgYWxsIHBhY2thZ2VzIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTcwCittc2dpZCAiUmV2ZXJ0IHRvIGRpcmVjdGx5IHJlcXVlc3RlZCBzdGF0ZSBmb3IgYWxsIHBhY2thZ2VzIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTcxCittc2dpZCAiUmV2ZXJ0IHRvIGN1cnJlbnRseSBpbnN0YWxsZWQgc3RhdGUgZm9yIGFsbCBwYWNrYWdlcyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE3NAorbXNnaWQgIlNlbGVjdCBjdXJyZW50bHktaGlnaGxpZ2h0ZWQgYWNjZXNzIG1ldGhvZCIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE3NQorbXNnaWQgIlF1aXQgd2l0aG91dCBjaGFuZ2luZyBzZWxlY3RlZCBhY2Nlc3MgbWV0aG9kIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MjkKK21zZ2lkICJLZXlzdHJva2VzIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MjkKK21zZ2lkICIiCisiTW90aW9uIGtleXM6IE5leHQvUHJldmlvdXMsIFRvcC9FbmQsIFVwL0Rvd24sIEJhY2t3YXJkcy9Gb3J3YXJkczpcbiIKKyIgIGosIERvd24tYXJyb3cgICAgICAgICBrLCBVcC1hcnJvdyAgICAgICAgICAgICBtb3ZlIGhpZ2hsaWdodFxuIgorIiAgTiwgUGFnZS1kb3duLCBTcGFjZSAgIFAsIFBhZ2UtdXAsIEJhY2tzcGFjZSAgIHNjcm9sbCBsaXN0IGJ5IDEgcGFnZVxuIgorIiAgXm4gICAgICAgICAgICAgICAgICAgIF5wICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBsaXN0IGJ5IDEgbGluZVxuIgorIiAgdCwgSG9tZSAgICAgICAgICAgICAgIGUsIEVuZCAgICAgICAgICAgICAgICAgIGp1bXAgdG8gdG9wL2VuZCBvZiBsaXN0XG4iCisiICB1ICAgICAgICAgICAgICAgICAgICAgZCAgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGluZm8gYnkgMSBwYWdlXG4iCisiICBedSAgICAgICAgICAgICAgICAgICAgXmQgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGluZm8gYnkgMSBsaW5lXG4iCisiICBCLCBMZWZ0LWFycm93ICAgICAgICAgRiwgUmlnaHQtYXJyb3cgICAgICAgICAgcGFuIGRpc3BsYXkgYnkgMS8zIHNjcmVlblxuIgorIiAgXmIgICAgICAgICAgICAgICAgICAgIF5mICAgICAgICAgICAgICAgICAgICAgIHBhbiBkaXNwbGF5IGJ5IDEgY2hhcmFjdGVyXG4iCisiXG4iCisiTWFyayBwYWNrYWdlcyBmb3IgbGF0ZXIgcHJvY2Vzc2luZzpcbiIKKyIgKywgSW5zZXJ0ICBpbnN0YWxsIG9yIHVwZ3JhZGUgICAgICA9LCBIICBob2xkIGluIHByZXNlbnQgc3RhdGVcbiIKKyIgLSwgRGVsZXRlICByZW1vdmUgICAgICAgICAgICAgICAgICA6LCBHICB1bmhvbGQ6IHVwZ3JhZGUgb3IgbGVhdmUgIgorInVuaW5zdGFsbGVkXG4iCisiIF8gICAgICAgICAgcmVtb3ZlICYgcHVyZ2UgY29uZmlnXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTWlzY2VsbGFuZW91czpcbiIKKyJRdWl0LCBleGl0LCBvdmVyd3JpdGUgKG5vdGUgY2FwaXRhbHMhKTogICAgICAgPywgRjEgcmVxdWVzdCBoZWxwIChhbHNvICIKKyJIZWxwKVxuIgorIiBSZXR1cm4gIENvbmZpcm0sIHF1aXQgKGNoZWNrIGRlcGVuZGVuY2llcykgICBpLCBJICB0b2dnbGUvY3ljbGUgaW5mbyAiCisiZGlzcGxheXNcbiIKKyIgICBRICAgICBDb25maXJtLCBxdWl0IChvdmVycmlkZSBkZXAucykgICAgICAgbywgTyAgY3ljbGUgdGhyb3VnaCBzb3J0ICIKKyJvcHRpb25zXG4iCisiIFgsIEVzYyAgZVhpdCwgYWJhbmRvbmluZyBhbnkgY2hhbmdlcyBtYWRlICAgIHYsIFYgIGNoYW5nZSBzdGF0dXMgZGlzcGxheSAiCisib3B0c1xuIgorIiAgIFIgICAgIFJldmVydCB0byBzdGF0ZSBiZWZvcmUgdGhpcyBsaXN0ICAgICAgXmwgICByZWRyYXcgZGlzcGxheVxuIgorIiAgIFUgICAgIHNldCBhbGwgdG8gc1VnZ2VzdGVkIHN0YXRlICAgICAgICAgICAgIC8gICBzZWFyY2ggKFJldHVybiB0byAiCisiY2FuY2VsKVxuIgorIiAgIEQgICAgIHNldCBhbGwgdG8gRGlyZWN0bHkgcmVxdWVzdGVkIHN0YXRlICBuLCBcXCAgcmVwZWF0IGxhc3Qgc2VhcmNoXG4iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo1NQorbXNnaWQgIkludHJvZHVjdGlvbiB0byBwYWNrYWdlIHNlbGVjdGlvbnMiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo1NQorbXNnaWQgIiIKKyJXZWxjb21lIHRvIGRzZWxlY3QncyBtYWluIHBhY2thZ2UgbGlzdGluZy5cbiIKKyJcbiIKKyJZb3Ugd2lsbCBiZSBwcmVzZW50ZWQgd2l0aCBhIGxpc3Qgb2YgcGFja2FnZXMgd2hpY2ggYXJlIGluc3RhbGxlZCBvciAiCisiYXZhaWxhYmxlXG4iCisiZm9yIGluc3RhbGxhdGlvbi4gIFlvdSBjYW4gbmF2aWdhdGUgYXJvdW5kIHRoZSBsaXN0IHVzaW5nIHRoZSBjdXJzb3Iga2V5cyxcbiIKKyJtYXJrIHBhY2thZ2VzIGZvciBpbnN0YWxsYXRpb24gKHVzaW5nIGArJykgb3IgZGVpbnN0YWxsYXRpb24gKHVzaW5nIGAtJykuXG4iCisiUGFja2FnZXMgY2FuIGJlIG1hcmtlZCBlaXRoZXIgc2luZ2x5IG9yIGluIGdyb3VwczsgaW5pdGlhbGx5IHlvdSB3aWxsIHNlZSAiCisidGhhdFxuIgorInRoZSBsaW5lIGBBbGwgcGFja2FnZXMnIGlzIHNlbGVjdGVkLiAgYCsnLCBgLScgYW5kIHNvIG9uIHdpbGwgYWZmZWN0IGFsbCAiCisidGhlXG4iCisicGFja2FnZXMgZGVzY3JpYmVkIGJ5IHRoZSBoaWdobGlnaHRlZCBsaW5lLlxuIgorIlxuIgorIlNvbWUgb2YgeW91ciBjaG9pY2VzIHdpbGwgY2F1c2UgY29uZmxpY3RzIG9yIGRlcGVuZGVuY3kgcHJvYmxlbXM7IHlvdSB3aWxsICIKKyJiZVxuIgorImdpdmVuIGEgc3ViLWxpc3Qgb2YgdGhlIHJlbGV2YW50IHBhY2thZ2VzLCBzbyB0aGF0IHlvdSBjYW4gc29sdmUgdGhlICIKKyJwcm9ibGVtcy5cbiIKKyJcbiIKKyJZb3Ugc2hvdWxkIHJlYWQgdGhlIGxpc3Qgb2Yga2V5cyBhbmQgdGhlIGV4cGxhbmF0aW9ucyBvZiB0aGUgZGlzcGxheS5cbiIKKyJNdWNoIG9uLWxpbmUgaGVscCBpcyBhdmFpbGFibGUsIHBsZWFzZSBtYWtlIHVzZSBvZiBpdCAtIHByZXNzIGA/JyBhdFxuIgorImFueSB0aW1lIGZvciBoZWxwLlxuIgorIlxuIgorIldoZW4geW91IGhhdmUgZmluaXNoZWQgc2VsZWN0aW5nIHBhY2thZ2VzLCBwcmVzcyA8ZW50ZXI+IHRvIGNvbmZpcm0gIgorImNoYW5nZXMsXG4iCisib3IgYFgnIHRvIHF1aXQgd2l0aG91dCBzYXZpbmcgY2hhbmdlcy4gQSBmaW5hbCBjaGVjayBvbiBjb25mbGljdHMgYW5kXG4iCisiZGVwZW5kZW5jaWVzIHdpbGwgYmUgZG9uZSAtIGhlcmUgdG9vIHlvdSBtYXkgc2VlIGEgc3VibGlzdC5cbiIKKyJcbiIKKyJQcmVzcyA8c3BhY2U+IHRvIGxlYXZlIGhlbHAgYW5kIGVudGVyIHRoZSBsaXN0IG5vdy5cbiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjgwCittc2dpZCAiSW50cm9kdWN0aW9uIHRvIHJlYWQtb25seSBwYWNrYWdlIGxpc3QgYnJvd3NlciIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjgwCittc2dpZCAiIgorIldlbGNvbWUgdG8gZHNlbGVjdCdzIG1haW4gcGFja2FnZSBsaXN0aW5nLlxuIgorIlxuIgorIllvdSB3aWxsIGJlIHByZXNlbnRlZCB3aXRoIGEgbGlzdCBvZiBwYWNrYWdlcyB3aGljaCBhcmUgaW5zdGFsbGVkIG9yICIKKyJhdmFpbGFibGVcbiIKKyJmb3IgaW5zdGFsbGF0aW9uLiAgU2luY2UgeW91IGRvIG5vdCBoYXZlIHRoZSBwcml2aWxlZ2UgbmVjZXNzYXJ5IHRvIHVwZGF0ZVxuIgorInBhY2thZ2Ugc3RhdGVzLCB5b3UgYXJlIGluIGEgcmVhZC1vbmx5IG1vZGUuICBZb3UgY2FuIG5hdmlnYXRlIGFyb3VuZCB0aGVcbiIKKyJsaXN0IHVzaW5nIHRoZSBjdXJzb3Iga2V5cyAocGxlYXNlIHNlZSB0aGUgYEtleXN0cm9rZXMnIGhlbHAgc2NyZWVuKSwgIgorIm9ic2VydmVcbiIKKyJ0aGUgc3RhdHVzIG9mIHRoZSBwYWNrYWdlcyBhbmQgcmVhZCBpbmZvcm1hdGlvbiBhYm91dCB0aGVtLlxuIgorIlxuIgorIllvdSBzaG91bGQgcmVhZCB0aGUgbGlzdCBvZiBrZXlzIGFuZCB0aGUgZXhwbGFuYXRpb25zIG9mIHRoZSBkaXNwbGF5LlxuIgorIk11Y2ggb24tbGluZSBoZWxwIGlzIGF2YWlsYWJsZSwgcGxlYXNlIG1ha2UgdXNlIG9mIGl0IC0gcHJlc3MgYD8nIGF0XG4iCisiYW55IHRpbWUgZm9yIGhlbHAuXG4iCisiXG4iCisiV2hlbiB5b3UgaGF2ZSBmaW5pc2hlZCBicm93c2luZywgcHJlc3MgYFEnIG9yIDxlbnRlcj4gdG8gcXVpdC5cbiIKKyJcbiIKKyJQcmVzcyA8c3BhY2U+IHRvIGxlYXZlIGhlbHAgYW5kIGVudGVyIHRoZSBsaXN0IG5vdy5cbiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjk5Cittc2dpZCAiSW50cm9kdWN0aW9uIHRvIGNvbmZsaWN0L2RlcGVuZGVuY3kgcmVzb2x1dGlvbiBzdWItbGlzdCIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjk5Cittc2dpZCAiIgorIkRlcGVuZGVuY3kvY29uZmxpY3QgcmVzb2x1dGlvbiAtIGludHJvZHVjdGlvbi5cbiIKKyJcbiIKKyJPbmUgb3IgbW9yZSBvZiB5b3VyIGNob2ljZXMgaGF2ZSByYWlzZWQgYSBjb25mbGljdCBvciBkZXBlbmRlbmN5IHByb2JsZW0gLVxuIgorInNvbWUgcGFja2FnZXMgc2hvdWxkIG9ubHkgYmUgaW5zdGFsbGVkIGluIGNvbmp1bmN0aW9uIHdpdGggY2VydGFpbiBvdGhlcnMsICIKKyJhbmRcbiIKKyJzb21lIGNvbWJpbmF0aW9ucyBvZiBwYWNrYWdlcyBtYXkgbm90IGJlIGluc3RhbGxlZCB0b2dldGhlci5cbiIKKyJcbiIKKyJZb3Ugd2lsbCBzZWUgYSBzdWItbGlzdCBjb250YWluaW5nIHRoZSBwYWNrYWdlcyBpbnZvbHZlZC4gIFRoZSBib3R0b20gaGFsZiAiCisib2ZcbiIKKyJ0aGUgZGlzcGxheSBzaG93cyByZWxldmFudCBjb25mbGljdHMgYW5kIGRlcGVuZGVuY2llczsgdXNlIGBpJyB0byBjeWNsZSAiCisiYmV0d2VlblxuIgorInRoYXQsIHRoZSBwYWNrYWdlIGRlc2NyaXB0aW9ucyBhbmQgdGhlIGludGVybmFsIGNvbnRyb2wgaW5mb3JtYXRpb24uXG4iCisiXG4iCisiQSBzZXQgb2YgYHN1Z2dlc3RlZCcgcGFja2FnZXMgaGFzIGJlZW4gY2FsY3VsYXRlZCwgYW5kIHRoZSBpbml0aWFsIG1hcmtpbmdzICIKKyJpblxuIgorInRoaXMgc3ViLWxpc3QgaGF2ZSBiZWVuIHNldCB0byBtYXRjaCB0aG9zZSwgc28geW91IGNhbiBqdXN0IGhpdCBSZXR1cm4gdG9cbiIKKyJhY2NlcHQgdGhlIHN1Z2dlc3Rpb25zIGlmIHlvdSB3aXNoLiAgWW91IG1heSBhYm9ydCB0aGUgY2hhbmdlKHMpIHdoaWNoICIKKyJjYXVzZWRcbiIKKyJ0aGUgcHJvYmxlbShzKSwgYW5kIGdvIGJhY2sgdG8gdGhlIG1haW4gbGlzdCwgYnkgcHJlc3NpbmcgY2FwaXRhbCBgWCcuXG4iCisiXG4iCisiWW91IGNhbiBhbHNvIG1vdmUgYXJvdW5kIHRoZSBsaXN0IGFuZCBjaGFuZ2UgdGhlIG1hcmtpbmdzIHNvIHRoYXQgdGhleSBhcmUgIgorIm1vcmVcbiIKKyJsaWtlIHdoYXQgeW91IHdhbnQsIGFuZCB5b3UgY2FuIGByZWplY3QnIG15IHN1Z2dlc3Rpb25zIGJ5IHVzaW5nIHRoZSAiCisiY2FwaXRhbFxuIgorImBEJyBvciBgUicga2V5cyAoc2VlIHRoZSBrZXliaW5kaW5ncyBoZWxwIHNjcmVlbikuICBZb3UgY2FuIHVzZSBjYXBpdGFsIGBRJyAiCisidG9cbiIKKyJmb3JjZSBtZSB0byBhY2NlcHQgdGhlIHNpdHVhdGlvbiBjdXJyZW50bHkgZGlzcGxheWVkLCBpbiBjYXNlIHlvdSB3YW50IHRvXG4iCisib3ZlcnJpZGUgYSByZWNvbW1lbmRhdGlvbiBvciB0aGluayB0aGF0IHRoZSBwcm9ncmFtIGlzIG1pc3Rha2VuLlxuIgorIlxuIgorIlByZXNzIDxzcGFjZT4gdG8gbGVhdmUgaGVscCBhbmQgZW50ZXIgdGhlIHN1Yi1saXN0OyByZW1lbWJlcjogcHJlc3MgYD8nIGZvciAiCisiaGVscC5cbiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjEyNQorbXNnaWQgIkRpc3BsYXksIHBhcnQgMTogcGFja2FnZSBsaXN0aW5nIGFuZCBzdGF0dXMgY2hhcnMiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxMjUKK21zZ2lkICIiCisiVGhlIHRvcCBoYWxmIG9mIHRoZSBzY3JlZW4gc2hvd3MgYSBsaXN0IG9mIHBhY2thZ2VzLiAgRm9yIGVhY2ggcGFja2FnZSB5b3UgIgorInNlZVxuIgorImZvdXIgY29sdW1ucyBmb3IgaXRzIGN1cnJlbnQgc3RhdHVzIG9uIHRoZSBzeXN0ZW0gYW5kIG1hcmsuICBJbiB0ZXJzZSBtb2RlICIKKyIodXNlXG4iCisiYHYnIHRvIHRvZ2dsZSB2ZXJib3NlIGRpc3BsYXkpIHRoZXNlIGFyZSBzaW5nbGUgY2hhcmFjdGVycywgZnJvbSBsZWZ0IHRvICIKKyJyaWdodDpcbiIKKyJcbiIKKyIgRXJyb3IgZmxhZzogU3BhY2UgLSBubyBlcnJvciAoYnV0IHBhY2thZ2UgbWF5IGJlIGluIGJyb2tlbiBzdGF0ZSAtIHNlZSAiCisiYmVsb3cpXG4iCisiICAgICAgICAgICAgICBgUicgIC0gc2VyaW91cyBlcnJvciBkdXJpbmcgaW5zdGFsbGF0aW9uLCBuZWVkcyAiCisicmVpbnN0YWxsYXRpb247XG4iCisiIEluc3RhbGxlZCBzdGF0ZTogICAgIFNwYWNlICAgIC0gbm90IGluc3RhbGxlZDtcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgIGAqJyAgICAgLSBpbnN0YWxsZWQ7XG4iCisiICAgICAgICAgICAgICAgICAgICAgICBgLScgICAgIC0gbm90IGluc3RhbGxlZCBidXQgY29uZmlnIGZpbGVzIHJlbWFpbjtcbiIKKyIgICBwYWNrYWdlcyBpbiB0aGVzZSB7IGBVJyAgICAgLSB1bnBhY2tlZCBidXQgbm90IHlldCBjb25maWd1cmVkO1xuIgorIiAgIHN0YXRlcyBhcmUgbm90ICAgIHsgYEMnICAgICAtIGhhbGYtY29uZmlndXJlZCAoYW4gZXJyb3IgaGFwcGVuZWQpO1xuIgorIiAgIChxdWl0ZSkgcHJvcGVybHkgIHsgYEknICAgICAtIGhhbGYtaW5zdGFsbGVkIChhbiBlcnJvciBoYXBwZW5lZCk7XG4iCisiICAgaW5zdGFsbGVkICAgICAgICAgeyBgVycsYHQnIC0gdHJpZ2dlcnMgYXJlIGF3YWl0ZWQgcmVzcC4gcGVuZGluZy5cbiIKKyIgT2xkIG1hcms6IHdoYXQgd2FzIHJlcXVlc3RlZCBmb3IgdGhpcyBwYWNrYWdlIGJlZm9yZSBwcmVzZW50aW5nIHRoaXMgbGlzdDtcbiIKKyIgTWFyazogd2hhdCBpcyByZXF1ZXN0ZWQgZm9yIHRoaXMgcGFja2FnZTpcbiIKKyIgIGAqJzogbWFya2VkIGZvciBpbnN0YWxsYXRpb24gb3IgdXBncmFkZTtcbiIKKyIgIGAtJzogbWFya2VkIGZvciByZW1vdmFsLCBidXQgYW55IGNvbmZpZ3VyYXRpb24gZmlsZXMgd2lsbCByZW1haW47XG4iCisiICBgPSc6IG9uIGhvbGQ6IHBhY2thZ2Ugd2lsbCBub3QgYmUgcHJvY2Vzc2VkIGF0IGFsbDtcbiIKKyIgIGBfJzogbWFya2VkIGZvciBwdXJnZSBjb21wbGV0ZWx5IC0gZXZlbiByZW1vdmUgY29uZmlndXJhdGlvbjtcbiIKKyIgIGBuJzogcGFja2FnZSBpcyBuZXcgYW5kIGhhcyB5ZXQgdG8gYmUgbWFya2VkIGZvciBpbnN0YWxsL3JlbW92ZS8mYy5cbiIKKyJcbiIKKyJBbHNvIGRpc3BsYXllZCBhcmUgZWFjaCBwYWNrYWdlJ3MgUHJpb3JpdHksIFNlY3Rpb24sIG5hbWUsIGluc3RhbGxlZCBhbmRcbiIKKyJhdmFpbGFibGUgdmVyc2lvbiBudW1iZXJzIChzaGlmdC1WIHRvIGRpc3BsYXkvaGlkZSkgYW5kIHN1bW1hcnkgIgorImRlc2NyaXB0aW9uLlxuIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTUyCittc2dpZCAiRGlzcGxheSwgcGFydCAyOiBsaXN0IGhpZ2hsaWdodDsgaW5mb3JtYXRpb24gZGlzcGxheSIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjE1MgorbXNnaWQgIiIKKyIqIEhpZ2hsaWdodDogT25lIGxpbmUgaW4gdGhlIHBhY2thZ2UgbGlzdCB3aWxsIGJlIGhpZ2hsaWdodGVkLiAgSXQgIgorImluZGljYXRlc1xuIgorIiAgd2hpY2ggcGFja2FnZShzKSB3aWxsIGJlIGFmZmVjdGVkIGJ5IHByZXNzZXMgb2YgYCsnLCBgLScgYW5kIGBfJy5cbiIKKyJcbiIKKyIqIFRoZSBkaXZpZGluZyBsaW5lIGluIHRoZSBtaWRkbGUgb2YgdGhlIHNjcmVlbiBzaG93cyBhIGJyaWVmIGV4cGxhbmF0aW9uICIKKyJvZlxuIgorIiAgdGhlIHN0YXR1cyBvZiB0aGUgY3VycmVudGx5LWhpZ2hsaWdodGVkIHBhY2thZ2UsIG9yIGEgZGVzY3JpcHRpb24gb2YgIgorIndoaWNoXG4iCisiICBncm91cCBpcyBoaWdobGlnaHRlZCBpZiBhIGdyb3VwIGxpbmUgaXMuICBJZiB5b3UgZG9uJ3QgdW5kZXJzdGFuZCB0aGVcbiIKKyIgIG1lYW5pbmcgb2Ygc29tZSBvZiB0aGUgc3RhdHVzIGNoYXJhY3RlcnMgZGlzcGxheWVkLCBnbyB0byB0aGUgcmVsZXZhbnRcbiIKKyIgIHBhY2thZ2UgYW5kIGxvb2sgYXQgdGhpcyBkaXZpZGVyIGxpbmUsIG9yIHVzZSB0aGUgYHYnIGtleSBmb3IgYSB2ZXJib3NlXG4iCisiICBkaXNwbGF5IChwcmVzcyBgdicgYWdhaW4gdG8gZ28gYmFjayB0byB0aGUgdGVyc2UgZGlzcGxheSkuXG4iCisiXG4iCisiKiBUaGUgYm90dG9tIG9mIHRoZSBzY3JlZW4gc2hvd3MgbW9yZSBpbmZvcm1hdGlvbiBhYm91dCB0aGVcbiIKKyIgIGN1cnJlbnRseS1oaWdobGlnaHRlZCBwYWNrYWdlIChpZiB0aGVyZSBpcyBvbmx5IG9uZSkuXG4iCisiXG4iCisiICBJdCBjYW4gc2hvdyBhbiBleHRlbmRlZCBkZXNjcmlwdGlvbiBvZiB0aGUgcGFja2FnZSwgdGhlIGludGVybmFsIHBhY2thZ2VcbiIKKyIgIGNvbnRyb2wgZGV0YWlscyAoZWl0aGVyIGZvciB0aGUgaW5zdGFsbGVkIG9yIGF2YWlsYWJsZSB2ZXJzaW9uIG9mIHRoZVxuIgorIiAgcGFja2FnZSksIG9yIGluZm9ybWF0aW9uIGFib3V0IGNvbmZsaWN0cyBhbmQgZGVwZW5kZW5jaWVzIGludm9sdmluZyB0aGVcbiIKKyIgIGN1cnJlbnQgcGFja2FnZSAoaW4gY29uZmxpY3QvZGVwZW5kZW5jeSByZXNvbHV0aW9uIHN1Ymxpc3RzKS5cbiIKKyJcbiIKKyIgIFVzZSB0aGUgYGknIGtleSB0byBjeWNsZSB0aHJvdWdoIHRoZSBkaXNwbGF5cywgYW5kIGBJJyB0byBoaWRlIHRoZVxuIgorIiAgaW5mb3JtYXRpb24gZGlzcGxheSBvciBleHBhbmQgaXQgdG8gdXNlIGFsbW9zdCBhbGwgb2YgdGhlIHNjcmVlbi5cbiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjE3NgorbXNnaWQgIkludHJvZHVjdGlvbiB0byBtZXRob2Qgc2VsZWN0aW9uIGRpc3BsYXkiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxNzYKK21zZ2lkICIiCisiZHNlbGVjdCBhbmQgZHBrZyBjYW4gZG8gYXV0b21hdGljIGluc3RhbGxhdGlvbiwgbG9hZGluZyB0aGUgcGFja2FnZSBmaWxlcyB0byAiCisiYmVcbiIKKyJpbnN0YWxsZWQgZnJvbSBvbmUgb2YgYSBudW1iZXIgb2YgZGlmZmVyZW50IHBvc3NpYmxlIHBsYWNlcy5cbiIKKyJcbiIKKyJUaGlzIGxpc3QgYWxsb3dzIHlvdSB0byBzZWxlY3Qgb25lIG9mIHRoZXNlIGluc3RhbGxhdGlvbiBtZXRob2RzLlxuIgorIlxuIgorIk1vdmUgdGhlIGhpZ2hsaWdodCB0byB0aGUgbWV0aG9kIHlvdSB3aXNoIHRvIHVzZSwgYW5kIGhpdCBFbnRlci4gIFlvdSB3aWxsICIKKyJ0aGVuXG4iCisiYmUgcHJvbXB0ZWQgZm9yIHRoZSBpbmZvcm1hdGlvbiByZXF1aXJlZCB0byBkbyB0aGUgaW5zdGFsbGF0aW9uLlxuIgorIlxuIgorIkFzIHlvdSBtb3ZlIHRoZSBoaWdobGlnaHQgYSBkZXNjcmlwdGlvbiBvZiBlYWNoIG1ldGhvZCwgd2hlcmUgYXZhaWxhYmxlLCBpc1xuIgorImRpc3BsYXllZCBpbiB0aGUgYm90dG9tIGhhbGYgb2YgdGhlIHNjcmVlbi5cbiIKKyJcbiIKKyJJZiB5b3Ugd2lzaCB0byBxdWl0IHdpdGhvdXQgY2hhbmdpbmcgYW55dGhpbmcgdXNlIHRoZSBgeCcga2V5IHdoaWxlIGluIHRoZSAiCisibGlzdFxuIgorIm9mIGluc3RhbGxhdGlvbiBtZXRob2RzLlxuIgorIlxuIgorIkEgZnVsbCBsaXN0IG9mIGtleXN0cm9rZXMgaXMgYXZhaWxhYmxlIGJ5IHByZXNzaW5nIGBrJyBub3csIG9yIGZyb20gdGhlICIKKyJoZWxwXG4iCisibWVudSByZWFjaGFibGUgYnkgcHJlc3NpbmcgYD8nLlxuIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTk2Cittc2dpZCAiS2V5c3Ryb2tlcyBmb3IgbWV0aG9kIHNlbGVjdGlvbiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjE5NgorbXNnaWQgIiIKKyJNb3Rpb24ga2V5czogTmV4dC9QcmV2aW91cywgVG9wL0VuZCwgVXAvRG93biwgQmFja3dhcmRzL0ZvcndhcmRzOlxuIgorIiAgaiwgRG93bi1hcnJvdyAgICAgICAgIGssIFVwLWFycm93ICAgICAgICAgICAgIG1vdmUgaGlnaGxpZ2h0XG4iCisiICBOLCBQYWdlLWRvd24sIFNwYWNlICAgUCwgUGFnZS11cCwgQmFja3NwYWNlICAgc2Nyb2xsIGxpc3QgYnkgMSBwYWdlXG4iCisiICBebiAgICAgICAgICAgICAgICAgICAgXnAgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGxpc3QgYnkgMSBsaW5lXG4iCisiICB0LCBIb21lICAgICAgICAgICAgICAgZSwgRW5kICAgICAgICAgICAgICAgICAganVtcCB0byB0b3AvZW5kIG9mIGxpc3RcbiIKKyIgIHUgICAgICAgICAgICAgICAgICAgICBkICAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyBieSAxIHBhZ2VcbiIKKyIgIF51ICAgICAgICAgICAgICAgICAgICBeZCAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyBieSAxIGxpbmVcbiIKKyIgIEIsIExlZnQtYXJyb3cgICAgICAgICBGLCBSaWdodC1hcnJvdyAgICAgICAgICBwYW4gZGlzcGxheSBieSAxLzMgc2NyZWVuXG4iCisiICBeYiAgICAgICAgICAgICAgICAgICAgXmYgICAgICAgICAgICAgICAgICAgICAgcGFuIGRpc3BsYXkgYnkgMSBjaGFyYWN0ZXJcbiIKKyIoVGhlc2UgYXJlIHRoZSBzYW1lIG1vdGlvbiBrZXlzIGFzIGluIHRoZSBwYWNrYWdlIGxpc3QgZGlzcGxheS4pXG4iCisiXG4iCisiUXVpdDpcbiIKKyIgUmV0dXJuLCBFbnRlciAgICBzZWxlY3QgdGhpcyBtZXRob2QgYW5kIGdvIHRvIGl0cyBjb25maWd1cmF0aW9uIGRpYWxvZ3VlXG4iCisiIHgsIFggICAgICAgICAgICAgZXhpdCB3aXRob3V0IGNoYW5naW5nIG9yIHNldHRpbmcgdXAgdGhlIGluc3RhbGxhdGlvbiAiCisibWV0aG9kXG4iCisiXG4iCisiTWlzY2VsbGFuZW91czpcbiIKKyIgID8sIEhlbHAsIEYxICAgICAgcmVxdWVzdCBoZWxwXG4iCisiIF5sICAgICAgICAgICAgICAgIHJlZHJhdyBkaXNwbGF5XG4iCisiICAvICAgICAgICAgICAgICAgIHNlYXJjaCAoanVzdCByZXR1cm4gdG8gY2FuY2VsKVxuIgorIiAgXFwgICAgICAgICAgICAgICAgcmVwZWF0IGxhc3Qgc2VhcmNoXG4iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tYWluLmNjOjYwCittc2dpZCAiVHlwZSBkc2VsZWN0IC0taGVscCBmb3IgaGVscC4iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0MworbXNnaWQgImEiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0MworbXNnaWQgIltBXWNjZXNzIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDMKK21zZ2lkICJDaG9vc2UgdGhlIGFjY2VzcyBtZXRob2QgdG8gdXNlLiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ0Cittc2dpZCAidSIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ0Cittc2dpZCAiW1VdcGRhdGUiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NAorbXNnaWQgIlVwZGF0ZSBsaXN0IG9mIGF2YWlsYWJsZSBwYWNrYWdlcywgaWYgcG9zc2libGUuIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDUKK21zZ2lkICJzIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDUKK21zZ2lkICJbU11lbGVjdCIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ1Cittc2dpZCAiUmVxdWVzdCB3aGljaCBwYWNrYWdlcyB5b3Ugd2FudCBvbiB5b3VyIHN5c3RlbS4iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NgorbXNnaWQgImkiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NgorbXNnaWQgIltJXW5zdGFsbCIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ2Cittc2dpZCAiSW5zdGFsbCBhbmQgdXBncmFkZSB3YW50ZWQgcGFja2FnZXMuIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDcKK21zZ2lkICJjIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDcKK21zZ2lkICJbQ11vbmZpZyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ3Cittc2dpZCAiQ29uZmlndXJlIGFueSBwYWNrYWdlcyB0aGF0IGFyZSB1bmNvbmZpZ3VyZWQuIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDgKK21zZ2lkICJyIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDgKK21zZ2lkICJbUl1lbW92ZSIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ4Cittc2dpZCAiUmVtb3ZlIHVud2FudGVkIHNvZnR3YXJlLiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ5Cittc2dpZCAicSIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ5Cittc2dpZCAiW1FddWl0IgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDkKK21zZ2lkICJRdWl0IGRzZWxlY3QuIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNTAKK21zZ2lkICJtZW51IgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuIGAlcycgcGFja2FnZSBoYW5kbGluZyBmcm9udGVuZCB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNTgKK21zZ2lkICIiCisiQ29weXJpZ2h0IChDKSAxOTk0LTE5OTYgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTYyCittc2dpZCAiIgorIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgb3JcbiIKKyJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTcyIGRzZWxlY3QvbWFpbi5jYzoyMjAKK21zZ2lkICI8c3RhbmRhcmQgb3V0cHV0PiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gWzxhY3Rpb24+IC4uLl1cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTg3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMuXG4iCisiICAtLWV4cGVydCAgICAgICAgICAgICAgICAgICBUdXJuIG9uIGV4cGVydCBtb2RlLlxuIgorIiAgLS1kZWJ1ZyA8ZmlsZT4gfCAtRDxmaWxlPiAgVHVybiBvbiBkZWJ1Z2dpbmcsIHNlbmRpbmcgb3V0cHV0IHRvIDxmaWxlPi5cbiIKKyIgIC0tY29sb3VyIHwgLS1jb2xvciBzY3JlZW5wYXJ0Oltmb3JlZ3JvdW5kXSxbYmFja2dyb3VuZF1bOmF0dHJbK2F0dHIrLi5dXVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ29uZmlndXJlIHNjcmVlbiBjb2xvdXJzLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgICAgU2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgIFNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tYWluLmNjOjIwMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQWN0aW9uczpcbiIKKyIgIGFjY2VzcyB1cGRhdGUgc2VsZWN0IGluc3RhbGwgY29uZmlnIHJlbW92ZSBxdWl0XG4iCisiXG4iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tYWluLmNjOjIwNQorIywgYy1mb3JtYXQKK21zZ2lkICJTY3JlZW5wYXJ0czpcbiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjEwCisjLCBjLWZvcm1hdAorbXNnaWQgIkNvbG91cnM6XG4iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tYWluLmNjOjIxNQorIywgYy1mb3JtYXQKK21zZ2lkICJBdHRyaWJ1dGVzOlxuIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGRuJ3Qgb3BlbiBkZWJ1ZyBmaWxlIGAlLjI1NXMnXG4iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tYWluLmNjOjI1MworIywgYy1mb3JtYXQKK21zZ2lkICJJbnZhbGlkICVzIGAlcydcbiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjcwCittc2dpZCAic2NyZWVuIHBhcnQiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tYWluLmNjOjI3NgorbXNnaWQgIk51bGwgY29sb3VyIHNwZWNpZmljYXRpb25cbiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21haW4uY2M6Mjg0IGRzZWxlY3QvbWFpbi5jYzoyODkKK21zZ2lkICJjb2xvdXIiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tYWluLmNjOjI5NworbXNnaWQgImNvbG91ciBhdHRyaWJ1dGUiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tYWluLmNjOjMyOQorbXNnaWQgIlRlcm1pbmFsIGRvZXMgbm90IGFwcGVhciB0byBzdXBwb3J0IGN1cnNvciBhZGRyZXNzaW5nLlxuIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzozMzEKK21zZ2lkICJUZXJtaW5hbCBkb2VzIG5vdCBhcHBlYXIgdG8gc3VwcG9ydCBoaWdobGlnaHRpbmcuXG4iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tYWluLmNjOjMzMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiU2V0IHlvdXIgVEVSTSB2YXJpYWJsZSBjb3JyZWN0bHksIHVzZSBhIGJldHRlciB0ZXJtaW5hbCxcbiIKKyJvciBtYWtlIGRvIHdpdGggdGhlIHBlci1wYWNrYWdlIG1hbmFnZW1lbnQgdG9vbCAlcy5cbiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21haW4uY2M6MzM2Cittc2dpZCAidGVybWluYWwgbGFja3MgbmVjZXNzYXJ5IGZlYXR1cmVzLCBnaXZpbmcgdXAiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tYWluLmNjOjQxNworbXNnaWQgIiIKKyJcbiIKKyJcbiIKKyJNb3ZlIGFyb3VuZCB3aXRoIF5QIGFuZCBeTiwgY3Vyc29yIGtleXMsIGluaXRpYWwgbGV0dGVycywgb3IgZGlnaXRzO1xuIgorIlByZXNzIDxlbnRlcj4gdG8gY29uZmlybSBzZWxlY3Rpb24uICAgXkwgcmVkcmF3cyBzY3JlZW4uXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tYWluLmNjOjQyOAorbXNnaWQgIiIKKyJcbiIKKyJcbiIKKyJSZWFkLW9ubHkgYWNjZXNzOiBvbmx5IHByZXZpZXcgb2Ygc2VsZWN0aW9ucyBpcyBhdmFpbGFibGUhIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzo0NDgKK21zZ2lkICJmYWlsZWQgdG8gZ2V0Y2ggaW4gbWFpbiBtZW51IgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzo1MzEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBhY3Rpb24gc3RyaW5nIGAlLjUwcyciCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzo3NworbXNnaWQgImRzZWxlY3QgLSBsaXN0IG9mIGFjY2VzcyBtZXRob2RzIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiQWNjZXNzIG1ldGhvZCBgJXMnLiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjEyMAorbXNnaWQgIkFiYnJldi4iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxMjEgZHNlbGVjdC9wa2dpbmZvLmNjOjEwNSBkc2VsZWN0L3BrZ3RvcC5jYzoyOTEKK21zZ2lkICJEZXNjcmlwdGlvbiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjE2NCBkc2VsZWN0L3BrZ2xpc3QuY2M6NTcyCittc2dpZCAiZG91cGRhdGUgZmFpbGVkIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTY2IGRzZWxlY3QvcGtnbGlzdC5jYzo1NzUKK21zZ2lkICJmYWlsZWQgdG8gdW5ibG9jayBTSUdXSU5DSCIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjE3MCBkc2VsZWN0L3BrZ2xpc3QuY2M6NTgwCittc2dpZCAiZmFpbGVkIHRvIHJlLWJsb2NrIFNJR1dJTkNIIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTcxIGRzZWxlY3QvcGtnbGlzdC5jYzo1ODIKK21zZ2lkICJnZXRjaCBmYWlsZWQiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxODgKK21zZ2lkICJFeHBsYW5hdGlvbiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjE5NworbXNnaWQgIk5vIGV4cGxhbmF0aW9uIGF2YWlsYWJsZS4iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6NjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIlxuIgorIiVzOiAlc1xuIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjcwCittc2dpZCAiIgorIlxuIgorIlByZXNzIDxlbnRlcj4gdG8gY29udGludWUuIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjE2MQorIywgYy1mb3JtYXQKK21zZ2lkICJQcmVzcyA8ZW50ZXI+IHRvIGNvbnRpbnVlLlxuIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjE2MgorbXNnaWQgIjxzdGFuZGFyZCBlcnJvcj4iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MTY1Cittc2dpZCAiZXJyb3IgcmVhZGluZyBhY2tub3dsZWRnZW1lbnQgb2YgcHJvZ3JhbSBmYWlsdXJlIG1lc3NhZ2UiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MTk2Cittc2dpZCAidXBkYXRlIGF2YWlsYWJsZSBsaXN0IHNjcmlwdCIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoyMDAKK21zZ2lkICJpbnN0YWxsYXRpb24gc2NyaXB0IgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjI0NgorbXNnaWQgInF1ZXJ5L3NldHVwIHNjcmlwdCIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzo1MworIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gbWV0aG9kIG9wdGlvbnMgZmlsZSBgJS4yNTBzJyAtLSAlcyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzo1OQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciByZWFkaW5nIG9wdGlvbnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzo5MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBgJS4yNTBzJyBkaXJlY3RvcnkgZm9yIHJlYWRpbmcgbWV0aG9kcyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxMDYKKyMsIGMtZm9ybWF0Cittc2dpZCAibWV0aG9kIGAlLjI1MHMnIGhhcyBuYW1lIHRoYXQgaXMgdG9vIGxvbmcgKCVkID4gJWQgY2hhcmFjdGVycykiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTE3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBhY2Nlc3MgbWV0aG9kIHNjcmlwdCBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgbWV0aG9kIG9wdGlvbnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNDcKK21zZ2lkICJub24tZGlnaXQgd2hlcmUgZGlnaXQgd2FudGVkIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE1MAorbXNnaWQgIkVPRiBpbiBpbmRleCBzdHJpbmciCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTUzCittc2dpZCAiaW5kZXggc3RyaW5nIHRvbyBsb25nIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE1NgorbXNnaWQgIm5ld2xpbmUgYmVmb3JlIG9wdGlvbiBuYW1lIHN0YXJ0IgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE1OAorbXNnaWQgIkVPRiBiZWZvcmUgb3B0aW9uIG5hbWUgc3RhcnQiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTYyCittc2dpZCAibm9uYWxwaGEgd2hlcmUgb3B0aW9uIG5hbWUgc3RhcnQgd2FudGVkIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE2NAorbXNnaWQgIm5vbi1hbHBoYW51bSBpbiBvcHRpb24gbmFtZSIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNjcKK21zZ2lkICJFT0YgaW4gb3B0aW9uIG5hbWUiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTcyCittc2dpZCAibmV3bGluZSBiZWZvcmUgc3VtbWFyeSIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNzQKK21zZ2lkICJFT0YgYmVmb3JlIHN1bW1hcnkiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTgwCittc2dpZCAiRU9GIGluIHN1bW1hcnkgLSBtaXNzaW5nIG5ld2xpbmUiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTkwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIG9wdGlvbiBkZXNjcmlwdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE5NAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBvcHRpb24gZGVzY3JpcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxOTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgb3B0aW9uIGRlc2NyaXB0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MjAxCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGR1cmluZyByZWFkIG9mIG9wdGlvbiBkZXNjcmlwdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjIyNAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBkdXJpbmcgcmVhZCBvZiBtZXRob2Qgb3B0aW9ucyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjI0NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBjdXJyZW50IG9wdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjI4OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBuZXcgb3B0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MjkyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgb3B0aW9uIHRvIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjI5NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgbmV3IG9wdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjI5NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgb3B0aW9uIGFzIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzozNgorbXNnaWQgIm5ldyBwYWNrYWdlIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzozNworbXNnaWQgImluc3RhbGwiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjM4Cittc2dpZCAiaG9sZCIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MzkKK21zZ2lkICJyZW1vdmUiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjQwCittc2dpZCAicHVyZ2UiCittc2dzdHIgIiIKKworIy4gVFJBTlNMQVRPUlM6IFRoZSBzcGFjZSBpcyBhIHRyaWNrIHRvIHdvcmsgYXJvdW5kIGdldHRleHQgd2hpY2ggdXNlcworIy4gKiB0aGUgZW1wdHkgc3RyaW5nIHRvIHN0b3JlIGluZm9ybWF0aW9uIGFib3V0IHRoZSB0cmFuc2xhdGlvbi4gRE8gTk9UCisjLiAqIENIQU5HRSBUSEFUIElOIEEgVFJBTlNMQVRJT04hIFRoZSBjb2RlIHJlYWxseSByZWxpZXMgb24gdGhhdCBiZWluZworIy4gKiBhIHNpbmdsZSBzcGFjZS4KKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo0NworbXNnaWQgIiAiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjQ4Cittc2dpZCAiUkVJTlNUQUxMIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1MQorbXNnaWQgIm5vdCBpbnN0YWxsZWQiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjUyCittc2dpZCAicmVtb3ZlZCAoY29uZmlncyByZW1haW4pIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1MworbXNnaWQgImhhbGYgaW5zdGFsbGVkIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1NAorbXNnaWQgInVucGFja2VkIChub3Qgc2V0IHVwKSIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTUKK21zZ2lkICJoYWxmIGNvbmZpZ3VyZWQgKGNvbmZpZyBmYWlsZWQpIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1NgorbXNnaWQgImF3YWl0aW5nIHRyaWdnZXIgcHJvY2Vzc2luZyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTcKK21zZ2lkICJ0cmlnZ2VyZWQiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjU4Cittc2dpZCAiaW5zdGFsbGVkIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo2MQorbXNnaWQgIlJlcXVpcmVkIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo2MgorbXNnaWQgIkltcG9ydGFudCIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjMKK21zZ2lkICJTdGFuZGFyZCIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjQKK21zZ2lkICJPcHRpb25hbCIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjUKK21zZ2lkICJFeHRyYSIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjYKK21zZ2lkICIhQnVnISIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjcKK21zZ2lkICJVbmNsYXNzaWZpZWQiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjcwCittc2dpZCAic3VnZ2VzdHMiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjcxCittc2dpZCAicmVjb21tZW5kcyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzIKK21zZ2lkICJkZXBlbmRzIG9uIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3MworbXNnaWQgInByZS1kZXBlbmRzIG9uIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3NAorbXNnaWQgImJyZWFrcyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzUKK21zZ2lkICJjb25mbGljdHMgd2l0aCIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzYKK21zZ2lkICJwcm92aWRlcyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzcKK21zZ2lkICJyZXBsYWNlcyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzgKK21zZ2lkICJlbmhhbmNlcyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODEKK21zZ2lkICJSZXEiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjgyCittc2dpZCAiSW1wIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4MworbXNnaWQgIlN0ZCIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODQKK21zZ2lkICJPcHQiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjg1Cittc2dpZCAiWHRyIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4NgorbXNnaWQgImJVRyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODcKK21zZ2lkICI/IgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo5NSBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTE1Cittc2dpZCAiQnJva2VuIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo5NgorbXNnaWQgIk5ldyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6OTcKK21zZ2lkICJVcGRhdGVkIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo5OAorbXNnaWQgIk9ic29sZXRlL2xvY2FsIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo5OQorbXNnaWQgIlVwLXRvLWRhdGUiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwMAorbXNnaWQgIkF2YWlsYWJsZSIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTAxIGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTcKK21zZ2lkICJSZW1vdmVkIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDIgZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExMQorbXNnaWQgIkJyb2tlbmx5IGluc3RhbGxlZCBwYWNrYWdlcyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTAzCittc2dpZCAiTmV3bHkgYXZhaWxhYmxlIHBhY2thZ2VzIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDQKK21zZ2lkICJVcGRhdGVkIHBhY2thZ2VzIChuZXdlciB2ZXJzaW9uIGlzIGF2YWlsYWJsZSkiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwNQorbXNnaWQgIk9ic29sZXRlIGFuZCBsb2NhbCBwYWNrYWdlcyBwcmVzZW50IG9uIHN5c3RlbSIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTA2Cittc2dpZCAiVXAgdG8gZGF0ZSBpbnN0YWxsZWQgcGFja2FnZXMiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwNworbXNnaWQgIkF2YWlsYWJsZSBwYWNrYWdlcyAobm90IGN1cnJlbnRseSBpbnN0YWxsZWQpIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDgKK21zZ2lkICJSZW1vdmVkIGFuZCBubyBsb25nZXIgYXZhaWxhYmxlIHBhY2thZ2VzIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTIKK21zZ2lkICJJbnN0YWxsZWQgcGFja2FnZXMiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExMworbXNnaWQgIlJlbW92ZWQgcGFja2FnZXMgKGNvbmZpZ3VyYXRpb24gc3RpbGwgcHJlc2VudCkiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExNAorbXNnaWQgIlB1cmdlZCBwYWNrYWdlcyBhbmQgdGhvc2UgbmV2ZXIgaW5zdGFsbGVkIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTYKK21zZ2lkICJJbnN0YWxsZWQiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExOAorbXNnaWQgIlB1cmdlZCIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTk4Cittc2dpZCAiZHNlbGVjdCAtIHJlY3Vyc2l2ZSBwYWNrYWdlIGxpc3RpbmciCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjE5OQorbXNnaWQgImRzZWxlY3QgLSBpbnNwZWN0aW9uIG9mIHBhY2thZ2Ugc3RhdGVzIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMDAKK21zZ2lkICJkc2VsZWN0IC0gbWFpbiBwYWNrYWdlIGxpc3RpbmciCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIwOAorbXNnaWQgIiAoYnkgc2VjdGlvbikiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIxMQorbXNnaWQgIiAoYXZhaWwuLCBzZWN0aW9uKSIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjE0Cittc2dpZCAiIChzdGF0dXMsIHNlY3Rpb24pIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMjMKK21zZ2lkICIgKGJ5IHByaW9yaXR5KSIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjI2Cittc2dpZCAiIChhdmFpbC4sIHByaW9yaXR5KSIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjI5Cittc2dpZCAiIChzdGF0dXMsIHByaW9yaXR5KSIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjM4IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNTAKK21zZ2lkICIgKGFscGhhYmV0aWNhbGx5KSIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjQxCittc2dpZCAiIChieSBhdmFpbGFiaWxpdHkpIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNDQKK21zZ2lkICIgKGJ5IHN0YXR1cykiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI1OAorbXNnaWQgIiBtYXJrOisvPS8tIHRlcnNlOnYgaGVscDo/IgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNTkKK21zZ2lkICIgbWFyazorLz0vLSB2ZXJib3NlOnYgaGVscDo/IgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNjAKK21zZ2lkICIgdGVyc2U6diBoZWxwOj8iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI2MQorbXNnaWQgIiB2ZXJib3NlOnYgaGVscDo/IgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnaW5mby5jYzo4MAorbXNnaWQgIiIKKyJUaGUgbGluZSB5b3UgaGF2ZSBoaWdobGlnaHRlZCByZXByZXNlbnRzIG1hbnkgcGFja2FnZXM7IGlmIHlvdSBhc2sgdG8gIgorImluc3RhbGwsIHJlbW92ZSwgaG9sZCwgZXRjLiBpdCB5b3Ugd2lsbCBhZmZlY3QgYWxsIHRoZSBwYWNrYWdlcyB3aGljaCBtYXRjaCAiCisidGhlIGNyaXRlcmlvbiBzaG93bi5cbiIKKyJcbiIKKyJJZiB5b3UgbW92ZSB0aGUgaGlnaGxpZ2h0IHRvIGEgbGluZSBmb3IgYSBwYXJ0aWN1bGFyIHBhY2thZ2UgeW91IHdpbGwgc2VlICIKKyJpbmZvcm1hdGlvbiBhYm91dCB0aGF0IHBhY2thZ2UgZGlzcGxheWVkIGhlcmUuXG4iCisiWW91IGNhbiB1c2UgYG8nIGFuZCBgTycgdG8gY2hhbmdlIHRoZSBzb3J0IG9yZGVyIGFuZCBnaXZlIHlvdXJzZWxmIHRoZSAiCisib3Bwb3J0dW5pdHkgdG8gbWFyayBwYWNrYWdlcyBpbiBkaWZmZXJlbnQga2luZHMgb2YgZ3JvdXBzLiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2luZm8uY2M6OTMKK21zZ2lkICJJbnRlcnJlbGF0aW9uc2hpcHMiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dpbmZvLmNjOjExMgorbXNnaWQgIk5vIGRlc2NyaXB0aW9uIGF2YWlsYWJsZS4iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dpbmZvLmNjOjEzMAorbXNnaWQgIkluc3RhbGxlZCBjb250cm9sIGZpbGUgaW5mb3JtYXRpb24iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dpbmZvLmNjOjE0NgorbXNnaWQgIkF2YWlsYWJsZSBjb250cm9sIGZpbGUgaW5mb3JtYXRpb24iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dsaXN0LmNjOjQxNgorbXNnaWQgIlRoZXJlIGFyZSBubyBwYWNrYWdlcy4iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dsaXN0LmNjOjUwNworbXNnaWQgImludmFsaWQgc2VhcmNoIG9wdGlvbiBnaXZlbiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2xpc3QuY2M6NTIxCittc2dpZCAiZXJyb3IgaW4gcmVndWxhciBleHByZXNzaW9uIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnc3VibGlzdC5jYzoxMDcKK21zZ2lkICIgZG9lcyBub3QgYXBwZWFyIHRvIGJlIGF2YWlsYWJsZVxuIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnc3VibGlzdC5jYzoxMjcKK21zZ2lkICIgb3IgIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjU3Cittc2dpZCAiQWxsIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjc5Cittc2dpZCAiQWxsIHBhY2thZ2VzIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHBhY2thZ2VzIHdpdGhvdXQgYSBzZWN0aW9uIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjg1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHBhY2thZ2VzIGluIHNlY3Rpb24gJXMiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6OTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgJXMgcGFja2FnZXMiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgJXMgcGFja2FnZXMgd2l0aG91dCBhIHNlY3Rpb24iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6OTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgJXMgcGFja2FnZXMgaW4gc2VjdGlvbiAlcyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoxMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJS0qcyAlcyVzJXM7ICAlcyAod2FzOiAlcykuICAlcyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyNjMKK21zZ2lkICJFcnJvciIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyNjcKK21zZ2lkICJJbnN0YWxsZWQ/IgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI3MQorbXNnaWQgIk9sZCBtYXJrIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI3NQorbXNnaWQgIk1hcmtlZCBmb3IiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6Mjc4Cittc2dpZCAiRUlPTSIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyODAKK21zZ2lkICJTZWN0aW9uIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI4MQorbXNnaWQgIlByaW9yaXR5IgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI4MgorbXNnaWQgIlBhY2thZ2UiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6Mjg2Cittc2dpZCAiSW5zdC52ZXIiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6Mjg5Cittc2dpZCAiQXZhaWwudmVyIgorbXNnc3RyICIiCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vZWwuZ21vIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL2VsLmdtbwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wOGM5MzU0Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL2VsLmdtbwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vZWwucG8gYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vZWwucG8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzU2Zjk5NAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9lbC5wbwpAQCAtMCwwICsxLDE3NDQgQEAKKyMgdHJhbnNsYXRpb24gb2YgZHBrZ19wb19lbC5wbyB0byBHcmVlaworIyB0cmFuc2xhdGlvbiBvZiBkcGtnLnBvLm9yaWcucG8gdG8gR3JlZWsKKyMgdHJhbnNsYXRpb24gb2YgZHBrZy5wbyB0byBHcmVlaworIyBUaGlzIGZpbGUgaXMgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIHNhbWUgbGljZW5zZSBhcyB0aGUgUEFDS0FHRSBwYWNrYWdlLgorIyBDb3B5cmlnaHQgKEMpIFlFQVIgVEhFIFBBQ0tBR0UnUyBDT1BZUklHSFQgSE9MREVSLgorIyBLb25zdGFudGlub3MgTWFyZ2FyaXRpcyA8bWFya29zQGRlYmlhbi5vcmc+LCAyMDAzLgorIyBHZW9yZ2UgUGFwYW1pY2hlbGFraXMgPGdlb3JnZUBzdGVwLmdyPiwgMjAwNC4KKyMgR2VvcmdlIFBhcGFtaWNoZWxha2lzIDxkZWJpYW4tbDEwbi1ncmVla0BsaXN0cy5kZWJpYW4ub3JnPiwgMjAwNC4KKyMgR3JlZWsgVHJhbnNsYXRpb24gVGVhbSA8ZGViaWFuLWwxMG4tZ3JlZWtAbGlzdHMuZGViaWFuLm9yZz4sIDIwMDUuCisjIHF1YWQtbnJnLm5ldCA8Z2FsYXhpY29AcXVhZC1ucmcubmV0PiwgMjAwNS4KKyMKK21zZ2lkICIiCittc2dzdHIgIiIKKyJQcm9qZWN0LUlkLVZlcnNpb246IGRwa2dfcG9fZWxcbiIKKyJSZXBvcnQtTXNnaWQtQnVncy1UbzogZGViaWFuLWRwa2dAbGlzdHMuZGViaWFuLm9yZ1xuIgorIlBPVC1DcmVhdGlvbi1EYXRlOiAyMDExLTEwLTE0IDA3OjExKzAyMDBcbiIKKyJQTy1SZXZpc2lvbi1EYXRlOiAyMDA2LTAyLTE3IDA4OjU2KzAyMDBcbiIKKyJMYXN0LVRyYW5zbGF0b3I6IHF1YWQtbnJnLm5ldCA8Z2FsYXhpY29AcXVhZC1ucmcubmV0PlxuIgorIkxhbmd1YWdlLVRlYW06IEdyZWVrIDxkZWJpYW4tbDEwbi1ncmVla0BsaXN0cy5kZWJpYW4ub3JnPlxuIgorIkxhbmd1YWdlOiBlbFxuIgorIk1JTUUtVmVyc2lvbjogMS4wXG4iCisiQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PVVURi04XG4iCisiQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdFxuIgorIm9yZz5cbiIKKyJvcmc+XG4iCisiWC1HZW5lcmF0b3I6IEtCYWJlbCAxLjEwLjJcbiIKKyJQbHVyYWwtRm9ybXM6ICBucGx1cmFscz0yOyBwbHVyYWw9KG4gIT0gMSk7XG4iCisiXG4iCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MTI1Cittc2dpZCAiU2VhcmNoIGZvciA/ICIKK21zZ3N0ciAizpHOvc6xzrbOrs+EzrfPg863IM6zzrnOsTsiCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MTQ3Cittc2dpZCAiRXJyb3I6ICIKK21zZ3N0ciAizqPPhs6szrvOvM6xOiIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxNzgKK21zZ2lkICJIZWxwOiAiCittc2dzdHIgIs6Szr/Ors64zrXOuc6xOiAiCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MTg0Cittc2dpZCAiUHJlc3MgPyBmb3IgaGVscCBtZW51LCAuIGZvciBuZXh0IHRvcGljLCA8c3BhY2U+IHRvIGV4aXQgaGVscC4iCittc2dzdHIgIs6gzrHPhM6uz4PPhM61ID8gzrPOuc6xIM68zrXOvc6/z40gzrLOv863zrjOtc6vzrHPgiwgPHNwYWNlPiDOs865zrEgzrXPgM+MzrzOtc69zr8gzrjOrc68zrEuIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE5MQorbXNnaWQgIkhlbHAgaW5mb3JtYXRpb24gaXMgYXZhaWxhYmxlIHVuZGVyIHRoZSBmb2xsb3dpbmcgdG9waWNzOiIKK21zZ3N0ciAizqDOu863z4HOv8+Gzr/Pgc6vzrXPgiDOss6/zq7OuM61zrnOsc+CIM61zq/Ovc6xzrkgzrTOuc6xzrjOrc+DzrnOvM61z4IgzrPOuc6xIM+EzrEgzrHOus+MzrvOv8+FzrjOsSDOuM6tzrzOsc+EzrE6IgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE5OQorbXNnaWQgIiIKKyJQcmVzcyBhIGtleSBmcm9tIHRoZSBsaXN0IGFib3ZlLCA8c3BhY2U+IG9yIGBxJyB0byBleGl0IGhlbHAsXG4iCisiICBvciBgLicgKGZ1bGwgc3RvcCkgdG8gcmVhZCBlYWNoIGhlbHAgcGFnZSBpbiB0dXJuLiAiCittc2dzdHIgIiIKKyLOoM65zq3Pg8+EzrUgzq3Ovc6xIM+AzrvOrs66z4TPgc6/IM6xz4DPjCDPhM63zr0gzrvOr8+Dz4TOsSwgPHNwYWNlPiDOriBgcScgzrPOuc6xIM6tzr7Ov860zr8gzrHPgM+MIM+EzrcgzrLOv86uzrjOtc65zrEsXG4iCisiICDOtyAnLicgKM+EzrXOu861zq/OsSkgzrPOuc6xIM69zrEgzrTOuc6xzrLOrM+DzrXPhM61IM66zqzOuM61IM+DzrXOu86vzrTOsSDOvM61IM+Ezrcgz4POtc65z4HOrC4gIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjIwNQorbXNnaWQgImVycm9yIHJlYWRpbmcga2V5Ym9hcmQgaW4gaGVscCIKK21zZ3N0ciAiz4PPhs6szrvOvM6xIM61zrnPg8+MzrTOv8+FIM6xz4DPjCDPhM6/IM+AzrvOt866z4TPgc6/zrvPjM6zzrnOvyDPg8+EzrcgzrLOv86uzrjOtc65zrEiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6NTcKK21zZ2lkICJpb2N0bChUSU9DR1dJTlNaKSBmYWlsZWQiCittc2dzdHIgIs63IGlvY3RsKFRJT0NHV0lOU1opIM6xz4DOrc+Ez4XPh861IgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjYwCittc2dpZCAiZG91cGRhdGUgaW4gU0lHV0lOQ0ggaGFuZGxlciBmYWlsZWQiCittc2dzdHIgIs63IGRvdXBkYXRlIM+Dz4TOv869IM61zrvOtc6zzrrPhM6uIFNJR1dJTkNIIM6xz4DOrc+Ez4XPh861IgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjY3Cittc2dpZCAiZmFpbGVkIHRvIHJlc3RvcmUgb2xkIFNJR1dJTkNIIHNpZ2FjdCIKK21zZ3N0ciAizrHPgM6tz4TPhc+HzrUgzrcgzrXPgM6xzr3Osc+Gzr/Pgc6sIM+Ezr/PhSDPgM6xzrvOuc6/z40gU0lHV0lOQ0ggc2lnYWN0IgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjY5Cittc2dpZCAiZmFpbGVkIHRvIHJlc3RvcmUgb2xkIHNpZ25hbCBtYXNrIgorbXNnc3RyICLOsc+Azq3PhM+Fz4fOtSDOtyDOtc+AzrHOvc6xz4bOv8+Bzqwgz4TOt8+CIM+AzrHOu865zqzPgiDOvM6sz4POus6xz4Igz4POt868zqzPhM+Jzr0iCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6NzkKK21zZ2lkICJmYWlsZWQgdG8gZ2V0IG9sZCBzaWduYWwgbWFzayIKK21zZ3N0ciAizrHPgM6tz4TPhc+HzrUgzrcgzrvOrs+Izrcgz4TOt8+CIM+AzrHOu865zqzPgiDOvM6sz4POus6xz4Igz4POt868zqzPhM+Jzr0iCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6ODAKK21zZ2lkICJmYWlsZWQgdG8gZ2V0IG9sZCBTSUdXSU5DSCBzaWdhY3QiCittc2dzdHIgIs6xz4DOrc+Ez4XPh861IM63IM67zq7PiM63IM+Ezr/PhSDPgM6xzrvOuc6/z40gU0lHV0lOQ0ggc2lnYWN0IgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjg0Cittc2dpZCAiZmFpbGVkIHRvIGJsb2NrIFNJR1dJTkNIIgorbXNnc3RyICLOsc+Azq3PhM+Fz4fOtSDOvyDOsc+Azr/Ous67zrXOuc+DzrzPjM+CIM+Ezr/PhSBTSUdXSU5DSCIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo4OQorbXNnaWQgImZhaWxlZCB0byBzZXQgbmV3IFNJR1dJTkNIIHNpZ2FjdCIKK21zZ3N0ciAizrHPgM6tz4TPhc+HzrUgzr8gzr/Pgc65z4POvM+Mz4Igzr3Orc6/z4UgU0lHV0lOQ0ggc2lnYWN0IgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjEyNgorbXNnaWQgImZhaWxlZCB0byBhbGxvY2F0ZSBjb2xvdXIgcGFpciIKK21zZ3N0ciAizrHPgM6tz4TPhc+HzrUgzrcgzrTOrc+DzrzOtc+Fz4POtyDOts61z43Os86/z4XPgiDPh8+Bz4nOvM6sz4TPic69IgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE2NworbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgdGl0bGUgd2luZG93IgorbXNnc3RyICLOsc+Azq3PhM+Fz4fOtSDOtyDOtM63zrzOuc6/z4XPgc6zzq/OsSDPgM6xz4HOsc64z43Pgc6/z4Ugz4TOr8+EzrvOv8+FIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE3MQorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgd2hhdGluZm8gd2luZG93IgorbXNnc3RyICLOsc+Azq3PhM+Fz4fOtSDOtyDOtM63zrzOuc6/z4XPgc6zzq/OsSDPgM6xz4HOsc64z43Pgc6/z4Ugd2hhdGluZm8iCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTc1Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBiYXNlbGlzdCBwYWQiCittc2dzdHIgIs6xz4DOrc+Ez4XPh861IM63IM60zrfOvM65zr/Phc+BzrPOr86xIM61z4DOuc+GzqzOvc61zrnOsc+CIM6yzrHPg865zrrOrs+CIM67zq/Pg8+EzrHPgiIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxNzgKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGhlYWRpbmcgcGFkIgorbXNnc3RyICLOsc+Azq3PhM+Fz4fOtSDOtyDOtM63zrzOuc6/z4XPgc6zzq/OsSDOtc+AzrnPhs6szr3Otc65zrHPgiDPgM67zr/Ors6zzrfPg863z4IiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTgyCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSB0aGlzc3RhdGUgcGFkIgorbXNnc3RyICLOsc+Azq3PhM+Fz4fOtSDOtyDOtM63zrzOuc6/z4XPgc6zzq/OsSDOtc+AzrnPhs6szr3Otc65zrHPgiB0aGlzc3RhdGUiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTg2Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBpbmZvIHBhZCIKK21zZ3N0ciAizrHPgM6tz4TPhc+HzrUgzrcgzrTOt868zrnOv8+Fz4HOs86vzrEgzrXPgM65z4bOrM69zrXOuc6xz4Igz4DOu863z4HOv8+Gzr/Pgc65z47OvSIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxOTEKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHF1ZXJ5IHdpbmRvdyIKK21zZ3N0ciAizrHPgM6tz4TPhc+HzrUgzrcgzrTOt868zrnOv8+Fz4HOs86vzrEgz4DOsc+BzrHOuM+Nz4HOv8+FIM61z4HPic+Ezq7Pg861z4nOvSIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoyNTUKKyMsIGZ1enp5Cittc2dpZCAiS2V5YmluZGluZ3MiCittc2dzdHIgIs+Dz4XOvc60z4XOsc+DzrzOv86vIM+AzrvOrs66z4TPgc+Jzr0iCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MzAzCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgLS0gJWQlJSwgcHJlc3MgIgorbXNnc3RyICIgIC0tICVkJSUsIM+AzrHPhM6uz4PPhM61ICIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzozMDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgZm9yIG1vcmUiCittc2dzdHIgIiVzIM6zzrnOsSDPgM61z4HOuc+Dz4PPjM+EzrXPgc6xIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjMxMAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyB0byBnbyBiYWNrIgorbXNnc3RyICIlcyDOs865zrEgzrXPgM65z4PPhM+Bzr/Phs6uIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjc4Cittc2dpZCAiW25vdCBib3VuZF0iCittc2dzdHIgIlvPh8+Jz4HOr8+CIM60zrXPg868z4xdIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjgyCisjLCBjLWZvcm1hdAorbXNnaWQgIlt1bms6ICVkXSIKK21zZ3N0ciAiW3VuazogJWRdIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjEzOQorbXNnaWQgIlNjcm9sbCBvbndhcmRzIHRocm91Z2ggaGVscC9pbmZvcm1hdGlvbiIKK21zZ3N0ciAizrzOtc+EzrHOus65zr3Ot864zrXOr8+EzrUgzrXOvM+Az4HPjM+CIM+Dz4TOtyDOss6/zq7OuM61zrnOsS/PgM67zrfPgc6/z4bOv8+Bzq/Otc+CIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0MAorbXNnaWQgIlNjcm9sbCBiYWNrd2FyZHMgdGhyb3VnaCBoZWxwL2luZm9ybWF0aW9uIgorbXNnc3RyICLOvM61z4TOsc66zrnOvc63zrjOtc6vz4TOtSDPgM6vz4PPiSDPg8+EzrcgzrLOv86uzrjOtc65zrEvz4DOu863z4HOv8+Gzr/Pgc6vzrXPgiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDEKK21zZ2lkICJNb3ZlIHVwIgorbXNnc3RyICLOnM61z4TOsc66zq/Ovc63z4POtyDOtc+AzqzOvc+JIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0MgorbXNnaWQgIk1vdmUgZG93biIKK21zZ3N0ciAizpzOtc+EzrHOus6vzr3Ot8+DzrcgzrrOrM+Ez4kiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQzCittc2dpZCAiR28gdG8gdG9wIG9mIGxpc3QiCittc2dzdHIgIs6czrXPhM6szrLOsc+Dzrcgz4PPhM63zr0gzrHPgc+Hzq4gz4TOt8+CIM67zq/Pg8+EzrHPgiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDQKK21zZ2lkICJHbyB0byBlbmQgb2YgbGlzdCIKK21zZ3N0ciAizpzOtc+EzqzOss6xz4POtyDPg8+Ezr8gz4TOrc67zr/PgiDPhM63z4IgzrvOr8+Dz4TOsc+CIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0NQorbXNnaWQgIlJlcXVlc3QgaGVscCAoY3ljbGUgdGhyb3VnaCBoZWxwIHNjcmVlbnMpIgorbXNnc3RyICLOkc6vz4TOt8+DzrcgzrLOv863zrjOtc6vzrHPgiAozrXOvc6xzrvOu86xzrPOriDOv864zr/Ovc+Ozr0gzrLOv863zrjOtc6vzrHPgikiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ2Cittc2dpZCAiQ3ljbGUgdGhyb3VnaCBpbmZvcm1hdGlvbiBkaXNwbGF5cyIKK21zZ3N0ciAizpXOvc6xzrvOu86xzrPOriDOv864zr/Ovc+Ozr0gz4DOu863z4HOv8+Gzr/Pgc65z47OvSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDcKK21zZ2lkICJSZWRyYXcgZGlzcGxheSIKK21zZ3N0ciAizpXPgM6xzr3Osc+Dz4fOtc60zrnOsc+DzrzPjM+CIM6/zrjPjM69zrfPgiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDgKK21zZ2lkICJTY3JvbGwgb253YXJkcyB0aHJvdWdoIGxpc3QgYnkgMSBsaW5lIgorbXNnc3RyICLOnM61z4TOsc66zq/Ovc63z4POtyDOtc68z4DPgc+Mz4Igz4PPhM63IM67zq/Pg8+EzrEgzrrOsc+EzqwgzrzOuc6xIM6zz4HOsc68zrzOriIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDkKK21zZ2lkICJTY3JvbGwgYmFja3dhcmRzIHRocm91Z2ggbGlzdCBieSAxIGxpbmUiCittc2dzdHIgIs6czrXPhM6xzrrOr869zrfPg863IM+Azq/Pg8+JIM+Dz4TOtyDOu86vz4PPhM6xIM66zrHPhM6sIM68zrnOsSDOs8+BzrHOvM68zq4iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTUwCittc2dpZCAiU2Nyb2xsIG9ud2FyZHMgdGhyb3VnaCBoZWxwL2luZm9ybWF0aW9uIGJ5IDEgbGluZSIKK21zZ3N0ciAizpzOtc+EzrHOus6vzr3Ot8+DzrcgzrXOvM+Az4HPjM+CIM+Dz4TOtyDOss6/zq7OuM61zrnOsS/PgM67zrfPgc6/z4bOv8+Bzq/Otc+CIM66zrHPhM6sIM68zrnOsSDOs8+BzrHOvM68zq4iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTUxCittc2dpZCAiU2Nyb2xsIGJhY2t3YXJkcyB0aHJvdWdoIGhlbHAvaW5mb3JtYXRpb24gYnkgMSBsaW5lIgorbXNnc3RyICLOnM61z4TOsc66zq/Ovc63z4POtyDPgM6vz4PPiSDPg8+EzrcgzrLOv86uzrjOtc65zrEvz4DOu863z4HOv8+Gzr/Pgc6vzrXPgiDOus6xz4TOrCDOvM65zrEgzrPPgc6xzrzOvM6uIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1MgorbXNnaWQgIlNjcm9sbCBvbndhcmRzIHRocm91Z2ggbGlzdCIKK21zZ3N0ciAizpzOtc+EzrHOus6vzr3Ot8+DzrcgzrXOvM+Az4HPjM+CIM+Dz4TOtyDOu86vz4PPhM6xIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1MworbXNnaWQgIlNjcm9sbCBiYWNrd2FyZHMgdGhyb3VnaCBsaXN0IgorbXNnc3RyICLOnM61z4TOsc66zq/Ovc63z4POtyDPgM6vz4PPiSDPg8+EzrcgzrvOr8+Dz4TOsSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTYKK21zZ2lkICJNYXJrIHBhY2thZ2UocykgZm9yIGluc3RhbGxhdGlvbiIKK21zZ3N0ciAizpzOsc+BzrrOrM+BzrnPg868zrEgz4DOsc66zq3PhM6/z4Uoz4nOvSkgzrPOuc6xIM61zrPOus6xz4TOrM+Dz4TOsc+DzrciCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTU3Cittc2dpZCAiTWFyayBwYWNrYWdlKHMpIGZvciBkZWluc3RhbGxhdGlvbiIKK21zZ3N0ciAizpzOsc+BzrrOrM+BzrnPg868zrEgz4DOsc66zq3PhM6/z4Uoz4nOvSkgzrPOuc6xIM6xz4DOtc6zzrrOsc+EzqzPg8+EzrHPg863IgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1OAorbXNnaWQgIk1hcmsgcGFja2FnZShzKSBmb3IgZGVpbnN0YWxsIGFuZCBwdXJnZSIKK21zZ3N0ciAizpzOsc+BzrrOrM+BzrnPg868zrEgz4DOsc66zq3PhM6/z4Uoz4nOvSkgzrPOuc6xIM6xz4DOtc6zzrrOsc+EzqzPg8+EzrHPg863IM66zrHOuSDOtM65zrHOs8+BzrHPhs6uIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1OQorbXNnaWQgIk1ha2UgaGlnaGxpZ2h0IG1vcmUgc3BlY2lmaWMiCittc2dzdHIgIs6gzrnOvyDPg8+FzrPOus61zrrPgc65zrzOrc69zr/PgiDPhM6/zr3Ouc+DzrzPjM+CIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2MAorbXNnaWQgIk1ha2UgaGlnaGxpZ2h0IGxlc3Mgc3BlY2lmaWMiCittc2dzdHIgIs6bzrnOs8+Mz4TOtc+Bzr8gz4PPhc6zzrrOtc66z4HOuc68zq3Ovc6/z4Igz4TOv869zrnPg868z4zPgiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjEKK21zZ2lkICJTZWFyY2ggZm9yIGEgcGFja2FnZSB3aG9zZSBuYW1lIGNvbnRhaW5zIGEgc3RyaW5nIgorbXNnc3RyICLOsc69zrHOts6uz4TOt8+Dzrcgz4DOsc66zq3PhM6/z4UgzrzOtSDOss6sz4POtyDPhM6/IM+Mzr3Ov868zrEiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTYyCittc2dpZCAiUmVwZWF0IGxhc3Qgc2VhcmNoLiIKK21zZ3N0ciAizrXPgM6xzr3OrM67zrfPiM63IM+Az4HOv863zrPOv8+NzrzOtc69zrfPgiDOsc69zrHOts6uz4TOt8+DzrfPgi4iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTYzCittc2dpZCAiU3dhcCBzb3J0IG9yZGVyIHByaW9yaXR5L3NlY3Rpb24iCittc2dzdHIgIs6Rzr3PhM65z4PPhM+Bzr/Phs6uIM+DzrXOuc+BzqzPgiDPhM6xzr7Ouc69z4zOvM63z4POt8+CIM+Az4HOv8+EzrXPgc6xzrnPjM+EzrfPhM6xz4Ivz4TOv868zq3OsSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjQKK21zZ2lkICJRdWl0LCBjb25maXJtaW5nLCBhbmQgY2hlY2tpbmcgZGVwZW5kZW5jaWVzIgorbXNnc3RyICLOiM6+zr/OtM6/z4IsIM61z4DOuc6yzrXOss6xzq/Pic+DzrcsIM66zrHOuSDOrc67zrXOs8+Hzr/PgiDOtc6+zrHPgc+Ezq7Pg861z4nOvSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjUKK21zZ2lkICJRdWl0LCBjb25maXJtaW5nIHdpdGhvdXQgY2hlY2siCittc2dzdHIgIs6Izr7Ov860zr/PgiwgzrXPgM65zrLOtc6yzrHOr8+Jz4POtyDPh8+Jz4HOr8+CIM6tzrvOtc6zz4fOvyIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjYKK21zZ2lkICJRdWl0LCByZWplY3RpbmcgY29uZmxpY3QvZGVwZW5kZW5jeSBzdWdnZXN0aW9ucyIKK21zZ3N0ciAizojOvs6/zrTOv8+CLCDOvM61IM6xz4DPjM+Bz4HOuc+Izrcgz4DPgc6/zrXOuc60zr/PgM6/zrnOrs+DzrXPic69IM6zzrnOsSDOtc6+zrHPgc+Ezq7Pg861zrnPgi/Osc+Dz4XOvM6yzrHPhM+Mz4TOt8+EzrXPgiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjcKK21zZ2lkICJBYm9ydCAtIHF1aXQgd2l0aG91dCBtYWtpbmcgY2hhbmdlcyIKK21zZ3N0ciAizpXOs866zrHPhM6szrvOtc65z4jOtyAtIM6tzr7Ov860zr/PgiDPh8+Jz4HOr8+CIM6xzrvOu86xzrPOrc+CIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2OAorbXNnaWQgIlJldmVydCB0byBvbGQgc3RhdGUgZm9yIGFsbCBwYWNrYWdlcyIKK21zZ3N0ciAizpXPgM6xzr3Osc+Gzr/Pgc6sIM+Dz4TOt869IM+Az4HOv863zrPOv8+NzrzOtc69zrcgzrrOsc+EzqzPg8+EzrHPg863IM+MzrvPic69IM+Ez4nOvSDPgM6xzrrOrc+Ez4nOvSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjkKK21zZ2lkICJSZXZlcnQgdG8gc3VnZ2VzdGVkIHN0YXRlIGZvciBhbGwgcGFja2FnZXMiCittc2dzdHIgIs6Vz4DOsc69zrHPhs6/z4HOrCDPg861IM+Az4HOv8+EzrXOuc69z4zOvM61zr3OtyDOus6xz4TOrM+Dz4TOsc+Dzrcgz4zOu8+Jzr0gz4TPic69IM+AzrHOus6tz4TPic69IgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE3MAorbXNnaWQgIlJldmVydCB0byBkaXJlY3RseSByZXF1ZXN0ZWQgc3RhdGUgZm9yIGFsbCBwYWNrYWdlcyIKK21zZ3N0ciAizpXPgM6xzr3Osc+Gzr/Pgc6sIM+Dz4TOt869IM62zrfPhM6/z43OvM61zr3OtyDOus6xz4TOrM+Dz4TOsc+Dzrcgz4zOu8+Jzr0gz4TPic69IM+AzrHOus6tz4TPic69IgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE3MQorIywgZnV6enkKK21zZ2lkICJSZXZlcnQgdG8gY3VycmVudGx5IGluc3RhbGxlZCBzdGF0ZSBmb3IgYWxsIHBhY2thZ2VzIgorbXNnc3RyICLOlc+AzrHOvc6xz4bOv8+Bzqwgz4PPhM63zr0gzrbOt8+Ezr/Pjc68zrXOvc63IM66zrHPhM6sz4PPhM6xz4POtyDPjM67z4nOvSDPhM+Jzr0gz4DOsc66zq3PhM+Jzr0iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTc0Cittc2dpZCAiU2VsZWN0IGN1cnJlbnRseS1oaWdobGlnaHRlZCBhY2Nlc3MgbWV0aG9kIgorbXNnc3RyICLOlc+AzrnOu86/zrPOriDPhM63z4Igz4TPgc6tz4fOv8+Fz4POsc+CIM68zrXOuM+MzrTOv8+FIM+Az4HPjM+DzrLOsc+DzrfPgiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNzUKK21zZ2lkICJRdWl0IHdpdGhvdXQgY2hhbmdpbmcgc2VsZWN0ZWQgYWNjZXNzIG1ldGhvZCIKK21zZ3N0ciAizojOvs6/zrTOv8+CIM+Hz4nPgc6vz4IgzrHOu867zrHOs86uIM+EzrfPgiDOtc+AzrnOu861zrPOvM6tzr3Ot8+CIM68zrXOuM+MzrTOv8+FIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjI5Cittc2dpZCAiS2V5c3Ryb2tlcyIKK21zZ3N0ciAizqPPhc69zrTPhc6xz4POvM6/zq8gz4DOu86uzrrPhM+Bz4nOvSIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoyOQorIywgZnV6enkKK21zZ2lkICIiCisiTW90aW9uIGtleXM6IE5leHQvUHJldmlvdXMsIFRvcC9FbmQsIFVwL0Rvd24sIEJhY2t3YXJkcy9Gb3J3YXJkczpcbiIKKyIgIGosIERvd24tYXJyb3cgICAgICAgICBrLCBVcC1hcnJvdyAgICAgICAgICAgICBtb3ZlIGhpZ2hsaWdodFxuIgorIiAgTiwgUGFnZS1kb3duLCBTcGFjZSAgIFAsIFBhZ2UtdXAsIEJhY2tzcGFjZSAgIHNjcm9sbCBsaXN0IGJ5IDEgcGFnZVxuIgorIiAgXm4gICAgICAgICAgICAgICAgICAgIF5wICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBsaXN0IGJ5IDEgbGluZVxuIgorIiAgdCwgSG9tZSAgICAgICAgICAgICAgIGUsIEVuZCAgICAgICAgICAgICAgICAgIGp1bXAgdG8gdG9wL2VuZCBvZiBsaXN0XG4iCisiICB1ICAgICAgICAgICAgICAgICAgICAgZCAgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGluZm8gYnkgMSBwYWdlXG4iCisiICBedSAgICAgICAgICAgICAgICAgICAgXmQgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGluZm8gYnkgMSBsaW5lXG4iCisiICBCLCBMZWZ0LWFycm93ICAgICAgICAgRiwgUmlnaHQtYXJyb3cgICAgICAgICAgcGFuIGRpc3BsYXkgYnkgMS8zIHNjcmVlblxuIgorIiAgXmIgICAgICAgICAgICAgICAgICAgIF5mICAgICAgICAgICAgICAgICAgICAgIHBhbiBkaXNwbGF5IGJ5IDEgY2hhcmFjdGVyXG4iCisiXG4iCisiTWFyayBwYWNrYWdlcyBmb3IgbGF0ZXIgcHJvY2Vzc2luZzpcbiIKKyIgKywgSW5zZXJ0ICBpbnN0YWxsIG9yIHVwZ3JhZGUgICAgICA9LCBIICBob2xkIGluIHByZXNlbnQgc3RhdGVcbiIKKyIgLSwgRGVsZXRlICByZW1vdmUgICAgICAgICAgICAgICAgICA6LCBHICB1bmhvbGQ6IHVwZ3JhZGUgb3IgbGVhdmUgIgorInVuaW5zdGFsbGVkXG4iCisiIF8gICAgICAgICAgcmVtb3ZlICYgcHVyZ2UgY29uZmlnXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTWlzY2VsbGFuZW91czpcbiIKKyJRdWl0LCBleGl0LCBvdmVyd3JpdGUgKG5vdGUgY2FwaXRhbHMhKTogICAgICAgPywgRjEgcmVxdWVzdCBoZWxwIChhbHNvICIKKyJIZWxwKVxuIgorIiBSZXR1cm4gIENvbmZpcm0sIHF1aXQgKGNoZWNrIGRlcGVuZGVuY2llcykgICBpLCBJICB0b2dnbGUvY3ljbGUgaW5mbyAiCisiZGlzcGxheXNcbiIKKyIgICBRICAgICBDb25maXJtLCBxdWl0IChvdmVycmlkZSBkZXAucykgICAgICAgbywgTyAgY3ljbGUgdGhyb3VnaCBzb3J0ICIKKyJvcHRpb25zXG4iCisiIFgsIEVzYyAgZVhpdCwgYWJhbmRvbmluZyBhbnkgY2hhbmdlcyBtYWRlICAgIHYsIFYgIGNoYW5nZSBzdGF0dXMgZGlzcGxheSAiCisib3B0c1xuIgorIiAgIFIgICAgIFJldmVydCB0byBzdGF0ZSBiZWZvcmUgdGhpcyBsaXN0ICAgICAgXmwgICByZWRyYXcgZGlzcGxheVxuIgorIiAgIFUgICAgIHNldCBhbGwgdG8gc1VnZ2VzdGVkIHN0YXRlICAgICAgICAgICAgIC8gICBzZWFyY2ggKFJldHVybiB0byAiCisiY2FuY2VsKVxuIgorIiAgIEQgICAgIHNldCBhbGwgdG8gRGlyZWN0bHkgcmVxdWVzdGVkIHN0YXRlICBuLCBcXCAgcmVwZWF0IGxhc3Qgc2VhcmNoXG4iCittc2dzdHIgIiIKKyLOoM67zq7Ous+Ez4HOsSDOus6vzr3Ot8+DzrfPgjogzpXPgM+MzrzOtc69zr8vzqDPgc6/zrfOs86/z43OvM61zr3OvywgzpHPgc+Hzq4vzqTOrc67zr/PgiwgzpXPgM6szr3PiS/Oms6sz4TPiSwgzpXOvM+Az4HPjM+CL86gzq/Pg8+JOlxuIgorIiAgzpLOrc67zr/PgiDOus6sz4TPiSxqICAgICAgICAgzpLOrc67zr/PgiDOtc+AzqzOvc+JLCBrICAgICAgICAgICAgIM66zq/Ovc63z4POtyDPhM6/zr3Ouc+DzrzOv8+NXG4iCisiICBOLCDOo861zrsuIM66zqzPhM+JLCDOms61zr3PjCAgIFAsIM6jzrXOuy4gzrXPgM6szr3PiSwgzqDOr8+Dz4kgICAgICAgIM66zrHPhM6tzrLOsc+DzrzOsSDOsc69zqwgMSDPg861zrvOr860zrFcbiIKKyIgIF5uICAgICAgICAgICAgICAgICAgIF5wICAgICAgICAgICAgICAgICAgICAgICAgIM66z43Ou865z4POtyDOu86vz4PPhM6xz4IgzrHOvc6sIDEgIgorIs6zz4HOsc68zrzOrlxuIgorIiAgdCwgSG9tZSAgICAgICAgICAgICAgZSwgzqTOrc67zr/PgiAgICAgICAgICAgICAgICAgICDOsc+Bz4fOri/PhM6tzrvOv8+CIM+EzrfPgiDOu86vz4PPhM6xz4JcbiIKKyIgIHUgICAgICAgICAgICAgICAgICAgIGQgICAgICAgICAgICAgICAgICAgICAgICAgIM+AzrvOt8+Bzr/Phi4gzrrOrM+Ez4kgzrHOvc6sIDEgz4POtc67zq/OtM6xXG4iCisiICBedSAgICAgICAgICAgICAgICAgICBeZCAgICAgICAgICAgICAgICAgICAgICAgICDPgM67zrfPgc6/z4YuIM66zqzPhM+JzrHOvc6sIDEgzrPPgc6xzrzOvM6uXG4iCisiICBCLCDOks6tzrvOv8+CIM6xz4HOuc+Dz4TOtc+BzqwgICAgRiwgzpLOrc67zr/PgiDOtM61zr7Ouc6sICAgICAgICAgICAgIM68zrXPhM6xz4TPjM+AzrnPg863IM66zrHPhM6sIM+Ezr8gMS8zXG4iCisiICBeYiAgICAgICAgICAgICAgICAgICBeZiAgICAgICAgICAgICAgICAgICAgICAgICDOvM61z4TOsc+Ez4zPgM65z4POtyDOus6xz4TOrCAxIM+HzrHPgc6xzrrPhC5cbiIKKyJcbiIKKyLOo86uzrzOsc69z4POtyDPgM6xzrrOrc+Ez4nOvSDOs865zrEgzrXPgM61zr7Otc+BzrPOsc+Dzq/OsTpcbiIKKyIgKywgSW5zZXJ0ICDOlc6zzrrOsc+EzqzPg8+EzrHPg863IM6uIM6xzr3Osc6yzqzOuM68zrnPg863ICA9LCDOlyAgzrTOuc6xz4TOrs+BzrfPg863IM+Dz4TOt869IM+Ez4HOrc+Hzr/Phc+DzrEgIgorIs66zrHPhM6sz4PPhM6xz4POt1xuIgorIiAtLCBEZWxldGUgIM6Rz4bOsc6vz4HOtc+DzrcgICAgICAgICAgICAgICAgICA6LCBHIM61zrvOtc+FzrjOrc+Bz4nPg863OiDOsc69zrHOss6szrjOvM65z4POtyDOriDPh8+Jz4HOr8+CICIKKyLOtc6zzrrOsc+EzqzPg8+EzrHPg863XG4iCisiIF8gICAgICAgIM60zrnOsc6zz4HOsc+Gzq4gzrrOsc65IM6xz4bOsc6vz4HOtc+Dzrcgz4HPhc64zrzOr8+DzrXPic69XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTWlzY2VsbGFuZW91czpcbiIKKyJRdWl0LCBleGl0LCBvdmVyd3JpdGUgKM+Az4HOv8+Dzr/Ph86uIM66zrXPhs6xzrvOsc6vzrEhKTogICAgPywgRjEgzrHOr8+EzrfPg863IM6yzr/Ors64zrXOuc6xz4IgKM61z4DOr8+DzrfPgiAiCisiSGVscClcbiIKKyIgUmV0dXJuICBDb25maXJtLCBxdWl0ICjOrc67zrXOs8+Hzr/PgiDOtc6+zrHPgc+Ezq7Pg861z4nOvSkgICBpLCBJICDOtc69zrHOu867zrHOs86uIM68zrXPhM6xzr7PjSAiCisiz4DOu863z4HOv8+Gzr/Pgc65z47OvVxuIgorIiAgIFEgICAgIENvbmZpcm0sIHF1aXQgKM6xzrPOvc+MzrfPg861IM61zr7Osc+Bz4TOrs+DzrXOuc+CKSAgIG8sIE8gIM61zr3Osc67zrvOsc6zzq4gzrzOtc+EzrHOvs+NICIKKyLOtc+AzrnOu86/zrPPjs69XG4iCisiIFgsIEVzYyAgZVhpdCwgzrXOs866zrHPhM6szrvOtc65z4jOtyDOsc67zrvOsc6zz47OvSAgICAgICAgICAgIHYsIFYgIM6xzrvOu86xzrPOriDPgM+Bzr/Oss6/zrvOrs+CICIKKyLOus6xz4TOrM+Dz4TOsc+DzrfPglxuIgorIiAgIFIgICAgIM6Vz4DOsc69zrHPhs6/z4HOrCDPg861IM+Az4HOv863zrPOv8+NzrzOtc69zrcgzrrOsc+EzqzPg8+EzrHPg863ICAgIF5sICAgzrXPgM6xzr3Osc+Dz4fOtc60zrnOsc+DzrzPjM+CIM6/zrjPjM69zrfPglxuIgorIiAgIFUgICAgIM6/z4HOuc+DzrzPjM+CIM+MzrvPic69IM+Jz4Igz4DPgc6/z4TOtc65zr3PjM68zrXOvc6xICAgICAgICAgICAvICAgzrHOvc6xzrbOrs+EzrfPg863IChSZXR1cm4gzrPOuc6xICAiCisizrHOus+Nz4HPic+DzrcpXG4iCisiICAgRCAgICAgzr/Pgc65z4POvM+Mz4Igz4zOu8+Jzr0gz4nPgiDOrM68zrXPg86xIM6xzrnPhM6/z43OvM61zr3OsSAgICAgIG4sIFxcICDOtc+AzrHOvc6szrvOt8+Izrcgz4TOtc67zrXPhc+EzrHOr86xz4IgIgorIs6xzr3Osc62zq7PhM63z4POt8+CXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6NTUKK21zZ2lkICJJbnRyb2R1Y3Rpb24gdG8gcGFja2FnZSBzZWxlY3Rpb25zIgorbXNnc3RyICLOlc65z4POsc6zz4nOs86uIM+Dz4TOuc+CIM61z4DOuc67zr/Os86tz4Igz4DOsc66zq3PhM+Jzr0iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6NTUKK21zZ2lkICIiCisiV2VsY29tZSB0byBkc2VsZWN0J3MgbWFpbiBwYWNrYWdlIGxpc3RpbmcuXG4iCisiXG4iCisiWW91IHdpbGwgYmUgcHJlc2VudGVkIHdpdGggYSBsaXN0IG9mIHBhY2thZ2VzIHdoaWNoIGFyZSBpbnN0YWxsZWQgb3IgIgorImF2YWlsYWJsZVxuIgorImZvciBpbnN0YWxsYXRpb24uICBZb3UgY2FuIG5hdmlnYXRlIGFyb3VuZCB0aGUgbGlzdCB1c2luZyB0aGUgY3Vyc29yIGtleXMsXG4iCisibWFyayBwYWNrYWdlcyBmb3IgaW5zdGFsbGF0aW9uICh1c2luZyBgKycpIG9yIGRlaW5zdGFsbGF0aW9uICh1c2luZyBgLScpLlxuIgorIlBhY2thZ2VzIGNhbiBiZSBtYXJrZWQgZWl0aGVyIHNpbmdseSBvciBpbiBncm91cHM7IGluaXRpYWxseSB5b3Ugd2lsbCBzZWUgIgorInRoYXRcbiIKKyJ0aGUgbGluZSBgQWxsIHBhY2thZ2VzJyBpcyBzZWxlY3RlZC4gIGArJywgYC0nIGFuZCBzbyBvbiB3aWxsIGFmZmVjdCBhbGwgIgorInRoZVxuIgorInBhY2thZ2VzIGRlc2NyaWJlZCBieSB0aGUgaGlnaGxpZ2h0ZWQgbGluZS5cbiIKKyJcbiIKKyJTb21lIG9mIHlvdXIgY2hvaWNlcyB3aWxsIGNhdXNlIGNvbmZsaWN0cyBvciBkZXBlbmRlbmN5IHByb2JsZW1zOyB5b3Ugd2lsbCAiCisiYmVcbiIKKyJnaXZlbiBhIHN1Yi1saXN0IG9mIHRoZSByZWxldmFudCBwYWNrYWdlcywgc28gdGhhdCB5b3UgY2FuIHNvbHZlIHRoZSAiCisicHJvYmxlbXMuXG4iCisiXG4iCisiWW91IHNob3VsZCByZWFkIHRoZSBsaXN0IG9mIGtleXMgYW5kIHRoZSBleHBsYW5hdGlvbnMgb2YgdGhlIGRpc3BsYXkuXG4iCisiTXVjaCBvbi1saW5lIGhlbHAgaXMgYXZhaWxhYmxlLCBwbGVhc2UgbWFrZSB1c2Ugb2YgaXQgLSBwcmVzcyBgPycgYXRcbiIKKyJhbnkgdGltZSBmb3IgaGVscC5cbiIKKyJcbiIKKyJXaGVuIHlvdSBoYXZlIGZpbmlzaGVkIHNlbGVjdGluZyBwYWNrYWdlcywgcHJlc3MgPGVudGVyPiB0byBjb25maXJtICIKKyJjaGFuZ2VzLFxuIgorIm9yIGBYJyB0byBxdWl0IHdpdGhvdXQgc2F2aW5nIGNoYW5nZXMuIEEgZmluYWwgY2hlY2sgb24gY29uZmxpY3RzIGFuZFxuIgorImRlcGVuZGVuY2llcyB3aWxsIGJlIGRvbmUgLSBoZXJlIHRvbyB5b3UgbWF5IHNlZSBhIHN1Ymxpc3QuXG4iCisiXG4iCisiUHJlc3MgPHNwYWNlPiB0byBsZWF2ZSBoZWxwIGFuZCBlbnRlciB0aGUgbGlzdCBub3cuXG4iCittc2dzdHIgIiIKKyLOms6xzrvPjs+CIM6/z4HOr8+DzrHPhM61IM+Dz4TOt869IM6/zrjPjM69zrcgzrzOtSDPhM63zr0gzrvOr8+Dz4TOsSDPhM+Jzr0gzrrPhc+Bzq/Pic69IM+AzrHOus6tz4TPic69IM+Ezr/PhSBkc2VsZWN0LlxuIgorIlxuIgorIs6YzrEgz4POsc+CIM61zrzPhs6xzr3Ouc+Dz4TOtc6vIM68zrnOsSDOu86vz4PPhM6xIM6xz4DPjCDPgM6xzrrOrc+EzrEgz4TOsSDOv8+Azr/Or86xIM61zq/Ovc6xzrkgzrXOs866zrHPhM61z4PPhM63zrzOrc69zrEgzq4gIgorIs60zrnOsc64zq3Pg865zrzOsVxuIgorIs6zzrnOsSDOtc6zzrrOsc+EzqzPg8+EzrHPg863LiAgzpzPgM6/z4HOtc6vz4TOtSDOvc6xIM+AzrvOv863zrPOt864zrXOr8+EzrUgz4PPhM63IM67zq/Pg8+EzrEgz4TPic69IM+AzrHOus6tz4TPic69IM68zrUgz4TOsSAiCisizrLOtc67zqzOus65zrFcbiIKKyLOvc6xIM+EzrEgz4POt868zrXOuc+Oz4POtc+EzrUgzrPOuc6xIM61zrPOus6xz4TOrM+Dz4TOsc+DzrcgKM68zrUgYCsnKSDOriDOsc+AzrXOs866zrHPhM6sz4PPhM6xz4POtyAozrzOtSBgLScpLlxuIgorIs6cz4DOv8+BzrXOr8+EzrUgzr3OsSDPg863zrzOtc65z47Pg861z4TOtSDPhM6xIM+AzrHOus6tz4TOsSDOvM61zrzOv869z4nOvM6tzr3OsSDOriDPg861IM6/zrzOrM60zrXPgiwgzrHPgc+HzrnOus6sIM64zrEgzrTOtc6vz4TOtSAiCisiz4zPhM65XG4iCisizrcgzrPPgc6xzrzOvM6uIGDOjM67zrEgz4TOsSDPgM6xzrrOrc+EzrFgIM61zq/Ovc6xzrkgzrXPgM65zrvOtc6zzrzOrc69zrcuIM6kzrEgz4DOu86uzrrPhM+BzrEgYCsnLCBgLScgzrrOu8+AIM64zrEgIgorIs61z4DOt8+BzrXOrM+Dzr/Phc69XG4iCisiz4zOu86xIM+EzrEgz4DOsc66zq3PhM6xIM+Azr/PhSDOtc6vzr3Osc65IM61z4DOuc67zrXOs868zq3Ovc6xLlxuIgorIs6czrXPgc65zrrOrc+CIM6xz4DPjCDPhM65z4IgzrXPgM65zrvOv86zzq3PgiDPg86xz4IgzrzPgM6/z4HOtc6vIM69zrEgz4DPgc6/zrrOsc67zq3Pg86/z4XOvSDPgM+Bzr/Oss67zq7OvM6xz4TOsSDOsc+Dz4XOvM6yzrHPhM6/z4TOrs+Ez4nOvVxuIgorIs66zrHOuSDOtc6+zrHPgc+Ezq7Pg861z4nOvS4gzqPOtSDOsc+Fz4TOrs69IM+EzrfOvSDPgM61z4HOr8+Az4TPic+DzrcsIM64zrEgz4POsc+CIM61zrzPhs6xzr3Ouc+Dz4TOtc6vIM68zrnOsSDOu86vz4PPhM6xIM+Ez4nOvVxuIgorIs68zrUgz4TOsSDOtc69IM67z4zOs8+JIM+AzrHOus6tz4TOsSwgzrPOuc6xIM69zrEgzrzPgM6/z4HOrc+DzrXPhM61IM69zrEgzrHOvc+EzrnOvM61z4TPic+Azq/Pg861z4TOtSDPhM+Fz4fPjM69IM+Az4HOv86yzrvOrs68zrHPhM6xLlxuIgorIlxuIgorIs6YzrEgz4DPgc6tz4DOtc65IM69zrEgzrTOuc6xzrLOrM+DzrXPhM61IM+EzrfOvSDOu86vz4PPhM6xIM68zrUgz4TOv8+Fz4Igz4PPhc69zrTPhc6xz4POvM6/z43PgiDPgM67zq7Ous+Ez4HPic69IM66zrHOuSDPhM63zr1cbiIKKyIgzrXPgM61zr7Ors6zzrfPg863IM+Dz4TOt869IM6/zrjPjM69zrcuICDOpc+AzqzPgc+HzrXOuSDOtM65zrHOuM6tz4POuc68zrcgzrHPgc66zrXPhM6uIM6yzr/Ors64zrXOuc6xIM66zrHOuSDPh8+BzrfPg865zrzOv8+Azr/Ouc6uz4PPhM61XG4iCisiz4TOt869IM+Mz4POvyDOvM+Azr/Pgc61zq/PhM61IC0gz4DOu863zrrPhM+Bzr/Ou86/zrPPjs69z4TOsc+CIGA/JyDOv8+Azr/Ouc6xzrTOrs+Azr/PhM61IM+Dz4TOuc6zzrzOri5cbiIKKyJcbiIKKyLOjM+EzrHOvSDPhM61zrvOtc65z47Pg861z4TOtSDOvM61IM+EzrfOvSDOtc+AzrnOu86/zrPOriwgz4DOuc6tz4PPhM61IDxlbnRlcj4gzrPOuc6xIM69zrEgzrHPgM6/zrTOtc+Hz4TOtc6vz4TOtSDPhM65z4JcbiIKKyLOsc67zrvOsc6zzq3Pgiwgzq4gYFgnIM6zzrnOsSDOrc6+zr/OtM6/IM+Hz4nPgc6vz4IgzrHPgM6/zrjOrs66zrXPhc+Dzrcgz4TPic69IM6xzrvOu86xzrPPjs69LiDOmM6xIM6zzq/Ovc61zrkgzq3Ovc6xz4JcbiIKKyLPhM61zrvOtc+Fz4TOsc6vzr/PgiDOrc67zrXOs8+Hzr/PgiDOsc+Dz4XOvM6yzrHPhM6/z4TOrs+Ez4nOvSDOus6xzrkgzrXOvs6xz4HPhM6uz4POtc+Jzr0sIM+Mz4DOv8+FIM+AzrnOuM6xzr3PjM69IM69zrEgzrTOtc6vz4TOtVxuIgorIs68zrnOsSDOtM61z43PhM61z4HOtyDOu86vz4PPhM6xLlxuIgorIs6gzrnOrc+Dz4TOtSA8c3BhY2U+IM6zzrnOsSDOus67zrXOr8+DzrXOuSDOtyDOss6/zq7OuM61zrnOsSDOus6xzrkgzr3OsSDOtM61zq/PhM61IM+EzrcgzrvOr8+Dz4TOsSDPhM+Oz4HOsS5cbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo4MAorbXNnaWQgIkludHJvZHVjdGlvbiB0byByZWFkLW9ubHkgcGFja2FnZSBsaXN0IGJyb3dzZXIiCittc2dzdHIgIs6VzrnPg86xzrPPic6zzq4gz4PPhM63zr0gz4DPgc6/zrLOv867zq4gz4DOsc66zq3PhM+Jzr0gzrPOuc6xIM6xzr3OrM6zzr3Pic+DzrcgzrzPjM69zr8iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6ODAKK21zZ2lkICIiCisiV2VsY29tZSB0byBkc2VsZWN0J3MgbWFpbiBwYWNrYWdlIGxpc3RpbmcuXG4iCisiXG4iCisiWW91IHdpbGwgYmUgcHJlc2VudGVkIHdpdGggYSBsaXN0IG9mIHBhY2thZ2VzIHdoaWNoIGFyZSBpbnN0YWxsZWQgb3IgIgorImF2YWlsYWJsZVxuIgorImZvciBpbnN0YWxsYXRpb24uICBTaW5jZSB5b3UgZG8gbm90IGhhdmUgdGhlIHByaXZpbGVnZSBuZWNlc3NhcnkgdG8gdXBkYXRlXG4iCisicGFja2FnZSBzdGF0ZXMsIHlvdSBhcmUgaW4gYSByZWFkLW9ubHkgbW9kZS4gIFlvdSBjYW4gbmF2aWdhdGUgYXJvdW5kIHRoZVxuIgorImxpc3QgdXNpbmcgdGhlIGN1cnNvciBrZXlzIChwbGVhc2Ugc2VlIHRoZSBgS2V5c3Ryb2tlcycgaGVscCBzY3JlZW4pLCAiCisib2JzZXJ2ZVxuIgorInRoZSBzdGF0dXMgb2YgdGhlIHBhY2thZ2VzIGFuZCByZWFkIGluZm9ybWF0aW9uIGFib3V0IHRoZW0uXG4iCisiXG4iCisiWW91IHNob3VsZCByZWFkIHRoZSBsaXN0IG9mIGtleXMgYW5kIHRoZSBleHBsYW5hdGlvbnMgb2YgdGhlIGRpc3BsYXkuXG4iCisiTXVjaCBvbi1saW5lIGhlbHAgaXMgYXZhaWxhYmxlLCBwbGVhc2UgbWFrZSB1c2Ugb2YgaXQgLSBwcmVzcyBgPycgYXRcbiIKKyJhbnkgdGltZSBmb3IgaGVscC5cbiIKKyJcbiIKKyJXaGVuIHlvdSBoYXZlIGZpbmlzaGVkIGJyb3dzaW5nLCBwcmVzcyBgUScgb3IgPGVudGVyPiB0byBxdWl0LlxuIgorIlxuIgorIlByZXNzIDxzcGFjZT4gdG8gbGVhdmUgaGVscCBhbmQgZW50ZXIgdGhlIGxpc3Qgbm93LlxuIgorbXNnc3RyICIiCisizprOsc67z47PgiDOv8+Bzq/Pg86xz4TOtSDPg8+EzrfOvSDOv864z4zOvc63IM68zrUgz4TOt869IM67zq/Pg8+EzrEgz4TPic69IM66z4XPgc6vz4nOvSDPgM6xzrrOrc+Ez4nOvSDPhM6/z4UgZHNlbGVjdC5cbiIKKyJcbiIKKyLOmM6xIM+DzrHPgiDOtc68z4bOsc69zrnPg8+EzrXOryDOvM65zrEgzrvOr8+Dz4TOsSDOsc+Az4wgz4DOsc66zq3PhM6xIM+EzrEgzr/PgM6/zq/OsSDOtc6vzr3Osc65IM61zrPOus6xz4TOtc+Dz4TOt868zq3Ovc6xIM6uICIKKyLOtM65zrHOuM6tz4POuc68zrFcbiIKKyLOs865zrEgzrXOs866zrHPhM6sz4PPhM6xz4POty4gIM6Rz4XPhM6uIM+Ezrcgz4PPhM65zrPOvM6uIM60zrXOvSDOtM65zrHOuM6tz4TOtc+EzrUgz4TOsSDOsc+AzrHPgc6xzq/PhM63z4TOsSDPgM+Bzr/Ovc+MzrzOuc6xICDOs865zrEgXG4iCisizr3OsSDOsc69zrHOss6xzrjOvM6vz4POtc+EzrUgz4TOt869IM66zrHPhM6sz4PPhM6xz4POtyDPhM+Jzr0gz4DOsc66zq3PhM+Jzr0gzrrOsc65IM6yz4HOr8+DzrrOtc+Dz4TOtSDPg861IM66zrHPhM6sz4PPhM6xz4POtyDOvM+Mzr3Ov1xuIgorIs6zzrnOsSDOsc69zqzOs869z4nPg863LiAgzpzPgM6/z4HOtc6vz4TOtSDOvc6xIM+AzrvOv863zrPOt864zrXOr8+EzrUgz4PPhM63IM67zq/Pg8+EzrEgz4TPic69IM+AzrHOus6tz4TPic69IM68zrUgz4TOsSDOss61zrvOrM66zrnOsVxuIgorIijOtM61zq/PhM61IM+Ezrcgz4POtc67zq/OtM6xIM6yzr/Ot864zrXOr86xz4Igz4PPh861z4TOuc66zqwgzrzOtSDPhM6/z4XPgiBgz4PPhc69zrTPhc6xz4POvM6/z43PgiDPgM67zq7Ous+Ez4HPic69JyksIM69zrEgXG4iCisiz4DOsc+BzrHPhM63z4HOrs+DzrXPhM61IM+EzrfOvSDPhM+Bzq3Ph86/z4XPg86xIM66zrHPhM6sz4PPhM6xz4POtyDPhM6/z4XPgiDOus6xzrkgzr3OsSDOtM65zrHOss6sz4POtc+EzrUgz4DOu863z4HOv8+Gzr/Pgc6vzrXPgiDOs865zrEgIgorIs6xz4XPhM6sLlxuIgorIlxuIgorIs6YzrEgz4DPgc6tz4DOtc65IM69zrEgzrTOuc6xzrLOrM+DzrXPhM61IM+EzrfOvSDOu86vz4PPhM6xIM68zrUgz4TOv8+Fz4Igz4PPhc69zrTPhc6xz4POvM6/z43PgiDPgM67zq7Ous+Ez4HPic69IM66zrHOuSDPhM63zr0gIgorIs61z4DOtc6+zq7Os863z4POt1xuIgorIs+EzrfPgiDOv864z4zOvc63z4IuICDOpc+AzqzPgc+HzrXOuSDOtM65zrHOuM6tz4POuc68zrcgzrHPgc66zrXPhM6uIM6yzr/Ors64zrXOuc6xIM66zrHOuSDPh8+BzrfPg865zrzOv8+Azr/Ouc6uz4PPhM61IM+EzrfOvSDPjM+Dzr9cbiIKKyLOvM+Azr/Pgc61zq/PhM61IC0gz4DOu863zrrPhM+Bzr/Ou86/zrPPjs69z4TOsc+CIGA/JyDOv8+Azr/Ouc6xzrTOrs+Azr/PhM61IM+Dz4TOuc6zzrzOri5cbiIKKyJcbiIKKyLOjM+EzrHOvSDPhM61zrvOtc65z47Pg861z4TOtSDOvM61IM+EzrfOvSDOsc69zrHOts6uz4TOt8+DzrcsIM+AzrnOrc+Dz4TOtSBgUScgzq4gLDxlbnRlcj4gzrPOuc6xIM69zrEgz4bPjc6zzrXPhM61LlxuIgorIlxuIgorIs6gzrnOrc+Dz4TOtSA8ZW50ZXI+IM6zzrnOsSDOus67zrXOr8+DzrXOuSDOtyDOss6/zq7OuM61zrnOsSDOus6xzrkgzr3OsSDOtM61zq/PhM61IM+EzrcgzrvOr8+Dz4TOsSDPhM+Oz4HOsS5cbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo5OQorbXNnaWQgIkludHJvZHVjdGlvbiB0byBjb25mbGljdC9kZXBlbmRlbmN5IHJlc29sdXRpb24gc3ViLWxpc3QiCittc2dzdHIgIs6VzrnPg86xzrPPic6zzq4gz4PPhM63zr0gzrvOr8+Dz4TOsSDOsc69zqzOu8+Fz4POt8+CIM61zr7Osc+Bz4TOrs+DzrXPic69L8+Dz4XOs866z4HOv8+Nz4POtc+Jzr0iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6OTkKK21zZ2lkICIiCisiRGVwZW5kZW5jeS9jb25mbGljdCByZXNvbHV0aW9uIC0gaW50cm9kdWN0aW9uLlxuIgorIlxuIgorIk9uZSBvciBtb3JlIG9mIHlvdXIgY2hvaWNlcyBoYXZlIHJhaXNlZCBhIGNvbmZsaWN0IG9yIGRlcGVuZGVuY3kgcHJvYmxlbSAtXG4iCisic29tZSBwYWNrYWdlcyBzaG91bGQgb25seSBiZSBpbnN0YWxsZWQgaW4gY29uanVuY3Rpb24gd2l0aCBjZXJ0YWluIG90aGVycywgIgorImFuZFxuIgorInNvbWUgY29tYmluYXRpb25zIG9mIHBhY2thZ2VzIG1heSBub3QgYmUgaW5zdGFsbGVkIHRvZ2V0aGVyLlxuIgorIlxuIgorIllvdSB3aWxsIHNlZSBhIHN1Yi1saXN0IGNvbnRhaW5pbmcgdGhlIHBhY2thZ2VzIGludm9sdmVkLiAgVGhlIGJvdHRvbSBoYWxmICIKKyJvZlxuIgorInRoZSBkaXNwbGF5IHNob3dzIHJlbGV2YW50IGNvbmZsaWN0cyBhbmQgZGVwZW5kZW5jaWVzOyB1c2UgYGknIHRvIGN5Y2xlICIKKyJiZXR3ZWVuXG4iCisidGhhdCwgdGhlIHBhY2thZ2UgZGVzY3JpcHRpb25zIGFuZCB0aGUgaW50ZXJuYWwgY29udHJvbCBpbmZvcm1hdGlvbi5cbiIKKyJcbiIKKyJBIHNldCBvZiBgc3VnZ2VzdGVkJyBwYWNrYWdlcyBoYXMgYmVlbiBjYWxjdWxhdGVkLCBhbmQgdGhlIGluaXRpYWwgbWFya2luZ3MgIgorImluXG4iCisidGhpcyBzdWItbGlzdCBoYXZlIGJlZW4gc2V0IHRvIG1hdGNoIHRob3NlLCBzbyB5b3UgY2FuIGp1c3QgaGl0IFJldHVybiB0b1xuIgorImFjY2VwdCB0aGUgc3VnZ2VzdGlvbnMgaWYgeW91IHdpc2guICBZb3UgbWF5IGFib3J0IHRoZSBjaGFuZ2Uocykgd2hpY2ggIgorImNhdXNlZFxuIgorInRoZSBwcm9ibGVtKHMpLCBhbmQgZ28gYmFjayB0byB0aGUgbWFpbiBsaXN0LCBieSBwcmVzc2luZyBjYXBpdGFsIGBYJy5cbiIKKyJcbiIKKyJZb3UgY2FuIGFsc28gbW92ZSBhcm91bmQgdGhlIGxpc3QgYW5kIGNoYW5nZSB0aGUgbWFya2luZ3Mgc28gdGhhdCB0aGV5IGFyZSAiCisibW9yZVxuIgorImxpa2Ugd2hhdCB5b3Ugd2FudCwgYW5kIHlvdSBjYW4gYHJlamVjdCcgbXkgc3VnZ2VzdGlvbnMgYnkgdXNpbmcgdGhlICIKKyJjYXBpdGFsXG4iCisiYEQnIG9yIGBSJyBrZXlzIChzZWUgdGhlIGtleWJpbmRpbmdzIGhlbHAgc2NyZWVuKS4gIFlvdSBjYW4gdXNlIGNhcGl0YWwgYFEnICIKKyJ0b1xuIgorImZvcmNlIG1lIHRvIGFjY2VwdCB0aGUgc2l0dWF0aW9uIGN1cnJlbnRseSBkaXNwbGF5ZWQsIGluIGNhc2UgeW91IHdhbnQgdG9cbiIKKyJvdmVycmlkZSBhIHJlY29tbWVuZGF0aW9uIG9yIHRoaW5rIHRoYXQgdGhlIHByb2dyYW0gaXMgbWlzdGFrZW4uXG4iCisiXG4iCisiUHJlc3MgPHNwYWNlPiB0byBsZWF2ZSBoZWxwIGFuZCBlbnRlciB0aGUgc3ViLWxpc3Q7IHJlbWVtYmVyOiBwcmVzcyBgPycgZm9yICIKKyJoZWxwLlxuIgorbXNnc3RyICIiCisizpXOuc+DzrHOs8+JzrPOriDPg8+EzrcgzrHOvc6szrvPhc+DzrcgzrXOvs6xz4HPhM6uz4POtc+Jzr0vz4PPhc6zzrrPgc6/z43Pg861z4nOvS5cbiIKKyJcbiIKKyLOnM65zrEgzq4gz4DOtc+BzrnPg8+Dz4zPhM61z4HOtc+CIM6xz4DPjCDPhM65z4IgzrXPgM65zrvOv86zzq3PgiDPg86xz4Igz4DPgc6/zrrOrM67zrXPg861IM6tzr3OsSDPgM+Bz4zOss67zrfOvM6xIM61zr7OrM+Bz4TOt8+DzrfPgiDOrlxuIgorIs+Dz43Os866z4HOv8+Fz4POt8+CLiDOnM61z4HOuc66zqwgz4DOsc66zq3PhM6xIM+Az4HOrc+AzrXOuSDOvc6xIM61zrPOus6xzrjOuc+Dz4TPjs69z4TOsc65IM68z4zOvc6/IM+DzrUgz4PPhc69zrTPhc6xz4POvM+MIM68zrVcbiIKKyIgz4PPhc6zzrrOtc66z4HOuc68zq3Ovc6xIM+AzrHOus6tz4TOsSwgzrrOsc65IM68zrXPgc65zrrOv86vIM+Dz4XOvc60z4XOsc+DzrzOv86vIM60zrXOvSDOvM+Azr/Pgc6/z43OvSDOvc6xIM+Dz4XOvc+Fz4DOrM+Bz4fOv8+Fzr0uXG4iCisiXG4iCisizpjOsSDPg86xz4IgzrXOvM+GzrHOvc65z4PPhM61zq8gzrzOuc6xIM67zq/Pg8+EzrEgz4DOv8+FIM64zrEgz4DOtc+BzrnOrc+HzrXOuSDPhM6xIM+AzrHOus6tz4TOsSDPgM6/z4UgzrXOvM+AzrvOrc66zr/Ovc+EzrHOuS4gIM6kzr9cbiIKKyIgzrrOrM+Ez4kgzrzOuc+Dz4wgz4TOt8+CIM6/zrjPjM69zrfPgiDPg86xz4IgzrXOvM+GzrHOvc6vzrbOtc65IM+EzrnPgiDPg8+HzrXPhM65zrrOrc+CIM+AzrvOt8+Bzr/Phs6/z4HOr861z4Igz4PPh861z4TOuc66zqwgzrzOtSDPhM65z4JcbiIKKyIgz4PPhc6zzrrPgc6/z43Pg861zrnPgiDOriDPhM65z4IgzrXOvs6xz4HPhM6uz4POtc65z4IsIM+Hz4HOt8+DzrnOvM6/z4DOv865zq7Pg8+EzrUgz4TOvyBgaScgzrPOuc6xIM69zrEgzrXOvc6xzrvOu86szr7Otc+EzrUgIgorIs68zrXPhM6xzr7PjVxuIgorIs+Ez4nOvSDPgM61z4HOuc6zz4HOsc+Gz47OvSDOus6xzrkgz4TPic69IM61z4PPic+EzrXPgc65zrrPjs69IM+AzrvOt8+Bzr/Phs6/z4HOuc+Ozr0gzrXOu86tzrPPh86/z4UuXG4iCisiXG4iCisizojPh861zrkgz4XPgM6/zrvOv86zzrnPg8+EzrXOryDOvM65zrEgzrvOr8+Dz4TOsSDOsc+Az4wgYM+Az4HOv8+EzrXOuc69z4zOvM61zr3OsScgz4DOsc66zq3PhM6xIM66zrHOuSDOrc+Hzr/Phc69IM+DzrfOvM6xzr3OuM61zq9cbiIKKyIgzq3PhM+Dzrkgz47Pg8+EzrUgz4DOuc6tzrbOv869z4TOsc+CIM6xz4DOu86sIM+Ezr8gUmV0dXJuIM6zzrnOsSDOvc6xIM+EzrnPgiDOsc+Azr/OtM61z4fPhM61zq/PhM61IM6xzr0gz4TOvyAiCisizrXPgM65zrjPhc68zrXOr8+EzrUuXG4iCisizpzPgM6/z4HOtc6vz4TOtSDOvc6xIM6xz4DOv8+Bz4HOr8+IzrXPhM61IM+EzrnPgiDOsc67zrvOsc6zzq3PgiDPgM6/z4Ugz4DPgc6/zrrOrM67zrXPg86xzr0gzrHPhc+Ezqwgz4TOsSDPgM+Bzr/Oss67zq7OvM6xz4TOsSDOus6xzrkgzr3OsVxuIgorIs61z4DOuc+Dz4TPgc6tz4jOtc+EzrUgz4PPhM63zr0gzrHPgc+HzrnOus6uIM6/zrjPjM69zrcgz4DOuc6tzrbOv869z4TOsc+CIM66zrXPhs6xzrvOsc6vzr8gYFgnLlxuIgorIlxuIgorIs6cz4DOv8+BzrXOr8+EzrUgzr3OsSDOsc66z4zOvM6xIM69zrEgzrrOrM69zrXPhM61IM6xzrvOu86xzrPOrc+CIM+Dz4TOt869IM+Az4HOv8+EzrXOuc69z4zOvM61zr3OtyDOu86vz4PPhM6xIM+Dz43OvM+Gz4nOvc6xIM68zrUgz4TOuc+CXG4iCisiz4DPgc6/z4TOuc68zq7Pg861zrnPgiDPg86xz4Igzq4gzrHOus+MzrzOsSDOus6xzrkgzr3OsSBgzrHPgM6/z4HPgc6vz4jOtc+EzrUnIM+EzrnPgiDPgM+Bzr/PhM6sz4POtc65z4Igz4fPgc63z4POuc68zr/PgM6/zrnPjs69z4TOsc+CXG4iCisizrrOtc+GzrHOu86xzq/OvyBgRCcgzq4gYFInICjOtM61zq/PhM61IM66zrHOuSDPhM63IM+DzrXOu86vzrTOsSDOvM61IM+EzrEgzrLOv863zrjOt8+EzrnOus6sIM+AzrvOrs66z4TPgc6xKS4gIM6cz4DOv8+BzrXOr8+EzrVcbiIKKyIgzrHOus+MzrzOsSDOvc6xIM+Hz4HOt8+DzrnOvM6/z4DOv865zq7Pg861z4TOtSDOrc69zrEgzrrOtc+GzrHOu86xzq/OvyBgUScgzrPOuc6xIM69zrEgzrHOvc6xzrPOus6sz4POtc+EzrUgz4TOt869IM6xz4DOv860zr/Ph86uICIKKyLPhM63z4JcbiIKKyIgzrXOvM+GzrHOvc65zrbPjM68zrXOvc63z4IgzrrOsc+EzqzPg8+EzrHPg863z4IsIM+Dz4TOt869IM+AzrXPgc6vz4DPhM+Jz4POtyDPgM6/z4UgzrjOrc67zrXPhM61IM69zrEgz4DOsc+BzrHOus6szrzPiM61z4TOtSDOvM65zrEgzrHPgM+MXG4iCisiz4TOuc+CIM+Az4HOv8+EzqzPg861zrnPgiDOriDOsc69IM+AzrnPg8+EzrXPjc61z4TOtSDPjM+Ezrkgz4XPgM6sz4HPh861zrkgz4DPgc+MzrLOu863zrzOsSDPg8+Ezr8gz4DPgc+MzrPPgc6xzrzOvM6xLlxuIgorIlxuIgorIs6gzrnOrc+Dz4TOtSA8ZW50ZXI+IM6zzrnOsSDOvc6xIM+Gz43Os861z4TOtSDOsc+Az4wgz4TOtyDOss6/zq7OuM61zrnOsSDOus6xzrkgzr3OsSDOtM61zq/PhM61IM+EzrfOvSDPgM+Bzr/PhM61zrnOvc+MzrzOtc69zrdcbiIKKyLOu86vz4PPhM6xLiDOoM65zq3Pg8+EzrUgYD8nIM6zzrnOsSDOss6/zq7OuM61zrnOsS5cbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxMjUKK21zZ2lkICJEaXNwbGF5LCBwYXJ0IDE6IHBhY2thZ2UgbGlzdGluZyBhbmQgc3RhdHVzIGNoYXJzIgorbXNnc3RyICLOn864z4zOvc63LCDOvM6tz4HOv8+CIDHOvzogzrXOvM+GzqzOvc65z4POtyDOus6xz4TOsc67z4zOs86/z4Ugz4DOsc66zq3PhM+Jzr0gzrrOsc65IM+HzrHPgc6xzrrPhM6uz4HPic69IM66zrHPhM6sz4PPhM6xz4POt8+CIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjEyNQorIywgZnV6enkKK21zZ2lkICIiCisiVGhlIHRvcCBoYWxmIG9mIHRoZSBzY3JlZW4gc2hvd3MgYSBsaXN0IG9mIHBhY2thZ2VzLiAgRm9yIGVhY2ggcGFja2FnZSB5b3UgIgorInNlZVxuIgorImZvdXIgY29sdW1ucyBmb3IgaXRzIGN1cnJlbnQgc3RhdHVzIG9uIHRoZSBzeXN0ZW0gYW5kIG1hcmsuICBJbiB0ZXJzZSBtb2RlICIKKyIodXNlXG4iCisiYHYnIHRvIHRvZ2dsZSB2ZXJib3NlIGRpc3BsYXkpIHRoZXNlIGFyZSBzaW5nbGUgY2hhcmFjdGVycywgZnJvbSBsZWZ0IHRvICIKKyJyaWdodDpcbiIKKyJcbiIKKyIgRXJyb3IgZmxhZzogU3BhY2UgLSBubyBlcnJvciAoYnV0IHBhY2thZ2UgbWF5IGJlIGluIGJyb2tlbiBzdGF0ZSAtIHNlZSAiCisiYmVsb3cpXG4iCisiICAgICAgICAgICAgICBgUicgIC0gc2VyaW91cyBlcnJvciBkdXJpbmcgaW5zdGFsbGF0aW9uLCBuZWVkcyAiCisicmVpbnN0YWxsYXRpb247XG4iCisiIEluc3RhbGxlZCBzdGF0ZTogICAgIFNwYWNlICAgIC0gbm90IGluc3RhbGxlZDtcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgIGAqJyAgICAgLSBpbnN0YWxsZWQ7XG4iCisiICAgICAgICAgICAgICAgICAgICAgICBgLScgICAgIC0gbm90IGluc3RhbGxlZCBidXQgY29uZmlnIGZpbGVzIHJlbWFpbjtcbiIKKyIgICBwYWNrYWdlcyBpbiB0aGVzZSB7IGBVJyAgICAgLSB1bnBhY2tlZCBidXQgbm90IHlldCBjb25maWd1cmVkO1xuIgorIiAgIHN0YXRlcyBhcmUgbm90ICAgIHsgYEMnICAgICAtIGhhbGYtY29uZmlndXJlZCAoYW4gZXJyb3IgaGFwcGVuZWQpO1xuIgorIiAgIChxdWl0ZSkgcHJvcGVybHkgIHsgYEknICAgICAtIGhhbGYtaW5zdGFsbGVkIChhbiBlcnJvciBoYXBwZW5lZCk7XG4iCisiICAgaW5zdGFsbGVkICAgICAgICAgeyBgVycsYHQnIC0gdHJpZ2dlcnMgYXJlIGF3YWl0ZWQgcmVzcC4gcGVuZGluZy5cbiIKKyIgT2xkIG1hcms6IHdoYXQgd2FzIHJlcXVlc3RlZCBmb3IgdGhpcyBwYWNrYWdlIGJlZm9yZSBwcmVzZW50aW5nIHRoaXMgbGlzdDtcbiIKKyIgTWFyazogd2hhdCBpcyByZXF1ZXN0ZWQgZm9yIHRoaXMgcGFja2FnZTpcbiIKKyIgIGAqJzogbWFya2VkIGZvciBpbnN0YWxsYXRpb24gb3IgdXBncmFkZTtcbiIKKyIgIGAtJzogbWFya2VkIGZvciByZW1vdmFsLCBidXQgYW55IGNvbmZpZ3VyYXRpb24gZmlsZXMgd2lsbCByZW1haW47XG4iCisiICBgPSc6IG9uIGhvbGQ6IHBhY2thZ2Ugd2lsbCBub3QgYmUgcHJvY2Vzc2VkIGF0IGFsbDtcbiIKKyIgIGBfJzogbWFya2VkIGZvciBwdXJnZSBjb21wbGV0ZWx5IC0gZXZlbiByZW1vdmUgY29uZmlndXJhdGlvbjtcbiIKKyIgIGBuJzogcGFja2FnZSBpcyBuZXcgYW5kIGhhcyB5ZXQgdG8gYmUgbWFya2VkIGZvciBpbnN0YWxsL3JlbW92ZS8mYy5cbiIKKyJcbiIKKyJBbHNvIGRpc3BsYXllZCBhcmUgZWFjaCBwYWNrYWdlJ3MgUHJpb3JpdHksIFNlY3Rpb24sIG5hbWUsIGluc3RhbGxlZCBhbmRcbiIKKyJhdmFpbGFibGUgdmVyc2lvbiBudW1iZXJzIChzaGlmdC1WIHRvIGRpc3BsYXkvaGlkZSkgYW5kIHN1bW1hcnkgIgorImRlc2NyaXB0aW9uLlxuIgorbXNnc3RyICIiCisizqTOvyDOtc+AzqzOvc+JIM68zq3Pgc6/z4Igz4TOt8+CIM6/zrjPjM69zrfPgiDOtc68z4bOsc69zq/Ots61zrkgzrzOuc6xIM67zq/Pg8+EzrEgzrHPgM+MIM+EzrEgz4DOsc66zq3PhM6xLiAgzpPOuc6xIM66zqzOuM61ICIKKyLPgM6xzrrOrc+Ezr8gz4DOv8+FIM6yzrvOrc+AzrXPhM61XG4iCisiz4XPgM6sz4HPh86/z4XOvSDPhM6tz4PPg861z4HOuc+CIM+Dz4TOrs67zrXPgiDPgM6/z4UgzrXOvM+GzrHOvc6vzrbOv8+Fzr0gz4TOt869IM+Ez4HOrc+Hzr/Phc+DzrEgzrrOsc+EzqzPg8+EzrHPg863IM+Dz4TOvyDPg8+Nz4PPhM63zrzOsS5cbiIKKyLOo8+EzrfOvSDPg8+Nzr3PhM6/zrzOtyDPgM61z4HOuc6zz4HOsc+Gzq4gKM+Hz4HOt8+DzrnOvM6/z4DOv865zq7Pg8+EzrUgz4TOvyBgdicgzrPOuc6xIM61zr3Osc67zrvOsc6zzq4pIM+Az4HPjM66zrXOuc+EzrHOuSDOs865zrEgIgorIs6xz4DOu86/z43PglxuIgorIs+HzrHPgc6xzrrPhM6uz4HOtc+CLCDOsc+Az4wgzrHPgc65z4PPhM61z4HOrCDPgM+Bzr/PgiDPhM6xIM60zrXOvs65zqw6XG4iCisiXG4iCisiIM6jzq7OvM6xzr3Pg863IM+Dz4bOrM67zrzOsc+Ezr/PgjogzprOtc69z4wgLSDPh8+Jz4HOr8+CIM+Dz4bOrM67zrzOsSAozrHOu867zqwgzrzPgM6/z4HOtc6vIM+Ezr8gz4DOsc66zq3PhM6/IM69zrEgzrXOr869zrHOuSAiCisiz4fOsc67zrHPg868zq3Ovc6/LSDOtM61zq/PhM61IM+AzrHPgc6xzrrOrM+Ez4kpXG4iCisiICAgICAgICAgICAgICBgUicgIC0gz4POv86yzrHPgc+MIM+Dz4bOrM67zrzOsSDOus6xz4TOrCDPhM63zr0gzrXOs866zrHPhM6sz4PPhM6xz4POtywgz4DPgc6tz4DOtc65IM69zrEgIgorIs61z4DOsc69zrXOs866zrHPhM6sz4PPhM6xz4POt1xuIgorIiDOms6xz4TOrM+Dz4TOsc+DzrcgzrXOs866zrHPhM6sz4PPhM6xz4POt8+COiAgIM6azrXOvc+MIC0gzrzOtyDOtc6zzrrOsc+EzrXPg8+EzrfOvM6tzr3Ov1xuIgorIiAgICAgICAgICAgICAgICAgICAgIGAqJyAgLSDOtc6zzrrOsc+EzrXPg8+EzrfOvM6tzr3Ov1xuIgorIiAgICAgICAgICAgICAgICAgICAgIGAtJyAgLSDOvM63IM61zrPOus6xz4TOtc+Dz4TOt868zq3Ovc6/IM6xzrvOu86sIM+Fz4DOrM+Bz4fOv8+Fzr0gzrHPgc+HzrXOr86xIM+Bz4XOuM68zq/Pg861z4nOvVxuIgorIiAgICAgICAgICAgIM+AzrHOus6tz4TOsSDPg861IHsgYFUnICAtIM6xz4DOv8+Dz4XOvM+AzrnOtc+DzrzOrc69zr8gzrHOu867zqwgz4zPh865IM+Bz4XOuM68zrnPg868zq3Ovc6/XG4iCisizrHPhc+Ezq3PgiDPhM65z4IgzrrOsc+EzrHPg8+EzqzPg861zrnPgiB7IGBDJyAgLSDOvM65z4PPjC3Pgc+FzrjOvM65z4POvM6tzr3OsSAozrrOrM+Azr/Ouc6/IM+Dz4bOrM67zrzOsSDPg8+Fzr3Orc6yzrcpXG4iCisiICAgICAgzrXOr869zrHOuSDPh86xzrvOsc+DzrzOrc69zrEgeyBgSScgIC0gzrzOuc+Dz4wtzrXOs866zrHPhM61z4PPhM63zrzOrc69zrEgKM66zqzPgM6/zrnOvyDPg8+GzqzOu868zrEgz4PPhc69zq3Oss63KS5cbiIKKyIgzqDOsc67zrHOuc6sIM+Dzq7OvM6xzr3Pg863OiDPhM65IM61zq/Ph861IM62zrfPhM63zrjOtc6vIM6zzrnOsSDOsc+Fz4TPjCDPhM6/IM+AzrHOus6tz4TOvyDPgM+BzrnOvSDOsc+Az4wgz4TOtyDOtc68z4bOrM69zrnPg863IM+EzrfPgiAiCisizrvOr8+Dz4TOsc+CIM6xz4XPhM6uz4IuXG4iCisiIM6jzq7OvM6xzr3Pg863OiDPhM65IM6tz4fOtc65IM62zrfPhM63zrjOtc6vIM6zzrnOsSDOsc+Fz4TPjCDPhM6/IM+AzrHOus6tz4TOvzpcbiIKKyIgIGAqJzogz4POt868zrXOuc+JzrzOrc69zr8gzrPOuc6xIM61zrPOus6xz4TOrM+Dz4TOsc+Dzrcgzq4gzrHOvc6xzrLOrM64zrzOuc+DzrcuXG4iCisiICBgLSc6IM+DzrfOvM61zrnPic68zq3Ovc6/IM6zzrnOsSDOsc+GzrHOr8+BzrXPg863IM6xzrvOu86sIM68zrUgz4PPhc6zzrrPgc6sz4TOt8+Dzrcgz4TPic69IM+Bz4XOuM68zq/Pg861z4nOvS5cbiIKKyIgIGA9Jzogz4POtSDOsc69zrHOvM6/zr3OrjogzrTOtc69IM64zrEgzrPOr869zrXOuSDOus6xzrzOr86xIM61zr3Orc+BzrPOtc65zrEgz4PPhM6/IM+AzrHOus6tz4TOvy5cbiIKKyIgIGBfJzogz4POt868zrXOuc+JzrzOrc69zr8gzrPOuc6xIM6/zrvOuc66zq4gzrTOuc6xzrPPgc6xz4bOriAtIM6xzrrPjM68zrEgzrrOsc65IM6/zrkgz4HPhc64zrzOr8+DzrXOuc+CIM+Ezr/PhS5cbiIKKyIgIGBuJzogz4TOvyDPgM6xzrrOrc+Ezr8gzrXOr869zrHOuSDOvc6tzr8gzrrOsc65IM60zrXOvSDOrc+HzrXOuSDPg863zrzOtc65z4nOuM61zq8gzrPOuc6xIM61zrPOus6xz4TOrM+Dz4TOsc+DzrcvzrHPhs6xzq/Pgc61z4POty8iCisiJmMuXG4iCisiXG4iCisizpHOus+MzrzOsSDOtc68z4bOsc69zq/Ots6/zr3PhM6xzrkgzrPOuc6xIM66zqzOuM61IM+AzrHOus6tz4TOvyDOtyDOoM+Bzr/PhM61z4HOsc65z4zPhM63z4TOsSDPhM6/z4UsIM63IM6Vzr3PjM+EzrfPhM6xLCDPhM6/IM+Mzr3Ov868zrEsICIKKyLOtyDOtc6zzrrOsc+EzrXPg8+EzrfOvM6tzr3Ot1xuIgorIs63IM60zrnOsc64zq3Pg865zrzOtyDOrc66zrTOv8+DzrcgKM+AzrnOrc+Dz4TOtSBzaGlmdC1WIM6zzrnOsSDOvc6xIM61zrzPhs6xzr3Or8+DzrXPhM61L866z4HPjc+IzrXPhM61KSDOus6xzrkgzrzOuc6xICIKKyLPgM61z4HOr867zrfPiM63LlxuIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjE1MgorbXNnaWQgIkRpc3BsYXksIHBhcnQgMjogbGlzdCBoaWdobGlnaHQ7IGluZm9ybWF0aW9uIGRpc3BsYXkiCittc2dzdHIgIs6fzrjPjM69zrcsIM68zq3Pgc6/z4IgMs6/OiDOtc+Dz4TOr86xz4POtyDOu86vz4PPhM6xz4IsIM61zrzPhs6szr3Ouc+Dzrcgz4DOu863z4HOv8+Gzr/Pgc65z47OvSIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxNTIKK21zZ2lkICIiCisiKiBIaWdobGlnaHQ6IE9uZSBsaW5lIGluIHRoZSBwYWNrYWdlIGxpc3Qgd2lsbCBiZSBoaWdobGlnaHRlZC4gIEl0ICIKKyJpbmRpY2F0ZXNcbiIKKyIgIHdoaWNoIHBhY2thZ2Uocykgd2lsbCBiZSBhZmZlY3RlZCBieSBwcmVzc2VzIG9mIGArJywgYC0nIGFuZCBgXycuXG4iCisiXG4iCisiKiBUaGUgZGl2aWRpbmcgbGluZSBpbiB0aGUgbWlkZGxlIG9mIHRoZSBzY3JlZW4gc2hvd3MgYSBicmllZiBleHBsYW5hdGlvbiAiCisib2ZcbiIKKyIgIHRoZSBzdGF0dXMgb2YgdGhlIGN1cnJlbnRseS1oaWdobGlnaHRlZCBwYWNrYWdlLCBvciBhIGRlc2NyaXB0aW9uIG9mICIKKyJ3aGljaFxuIgorIiAgZ3JvdXAgaXMgaGlnaGxpZ2h0ZWQgaWYgYSBncm91cCBsaW5lIGlzLiAgSWYgeW91IGRvbid0IHVuZGVyc3RhbmQgdGhlXG4iCisiICBtZWFuaW5nIG9mIHNvbWUgb2YgdGhlIHN0YXR1cyBjaGFyYWN0ZXJzIGRpc3BsYXllZCwgZ28gdG8gdGhlIHJlbGV2YW50XG4iCisiICBwYWNrYWdlIGFuZCBsb29rIGF0IHRoaXMgZGl2aWRlciBsaW5lLCBvciB1c2UgdGhlIGB2JyBrZXkgZm9yIGEgdmVyYm9zZVxuIgorIiAgZGlzcGxheSAocHJlc3MgYHYnIGFnYWluIHRvIGdvIGJhY2sgdG8gdGhlIHRlcnNlIGRpc3BsYXkpLlxuIgorIlxuIgorIiogVGhlIGJvdHRvbSBvZiB0aGUgc2NyZWVuIHNob3dzIG1vcmUgaW5mb3JtYXRpb24gYWJvdXQgdGhlXG4iCisiICBjdXJyZW50bHktaGlnaGxpZ2h0ZWQgcGFja2FnZSAoaWYgdGhlcmUgaXMgb25seSBvbmUpLlxuIgorIlxuIgorIiAgSXQgY2FuIHNob3cgYW4gZXh0ZW5kZWQgZGVzY3JpcHRpb24gb2YgdGhlIHBhY2thZ2UsIHRoZSBpbnRlcm5hbCBwYWNrYWdlXG4iCisiICBjb250cm9sIGRldGFpbHMgKGVpdGhlciBmb3IgdGhlIGluc3RhbGxlZCBvciBhdmFpbGFibGUgdmVyc2lvbiBvZiB0aGVcbiIKKyIgIHBhY2thZ2UpLCBvciBpbmZvcm1hdGlvbiBhYm91dCBjb25mbGljdHMgYW5kIGRlcGVuZGVuY2llcyBpbnZvbHZpbmcgdGhlXG4iCisiICBjdXJyZW50IHBhY2thZ2UgKGluIGNvbmZsaWN0L2RlcGVuZGVuY3kgcmVzb2x1dGlvbiBzdWJsaXN0cykuXG4iCisiXG4iCisiICBVc2UgdGhlIGBpJyBrZXkgdG8gY3ljbGUgdGhyb3VnaCB0aGUgZGlzcGxheXMsIGFuZCBgSScgdG8gaGlkZSB0aGVcbiIKKyIgIGluZm9ybWF0aW9uIGRpc3BsYXkgb3IgZXhwYW5kIGl0IHRvIHVzZSBhbG1vc3QgYWxsIG9mIHRoZSBzY3JlZW4uXG4iCittc2dzdHIgIiIKKyIqIM6Vz4PPhM6vzrHPg863OiDOnM65zrEgzrPPgc6xzrzOvM6uIM6xz4DPjCDPhM63zr0gzrvOr8+Dz4TOsSDOvM61IM+EzrEgz4DOsc66zq3PhM6xIM64zrEgzq3Ph861zrkgz4TOt869IM61z4PPhM6vzrHPg863LiAgzpHPhc+Ez4wgIgorIs+Fz4DOv860zrXOuc66zr3Pjc61zrlcbiIKKyIgIM+AzrnOvyjOsSkgz4DOsc66zq3PhM6/KM6xKSDOuM6xIM61z4DOt8+BzrXOsc+Dz4TOv8+Nzr0gz4zPhM6xzr0gz4DOuc6tzrbOtc+EzrUgz4TOsSDPgM67zq7Ous+Ez4HOsSBgKycsIGAtJyBhbmQgYF8nLlxuIgorIlxuIgorIiogzpcgzrTOuc6xz4fPic+BzrnPg8+EzrnOus6uIM6zz4HOsc68zrzOriDPg8+EzrcgzrzOrc+Dzrcgz4TOt8+CIM6/zrjPjM69zrfPgiDOtc68z4bOsc69zq/Ots61zrkgzrzOuc6xIM+Dz43Ovc+Ezr/OvM63IM61z4DOtc6+zq7Os863z4POtyAiCisiz4TOt8+CXG4iCisiICDOus6xz4TOrM+Dz4TOsc+DzrfPgiDPhM6/z4UgzrXPg8+EzrnOsc+DzrzOrc69zr/PhSDPgM6xzrrOrc+Ezr/PhSwgzq4gzrzOuc6xIM+AzrXPgc65zrPPgc6xz4bOriDOsc+Az4wgz4TOt869IM+Ez4HOrc+Hzr/Phc+DzrEgIgorIs61zr3PjM+EzrfPhM6xIM+Azr/PhVxuIgorIiAgzrXOr869zrHOuSDOtc+Dz4TOuc6xz4POvM6tzr3OtyAozrHOvSDOtc6vzr3Osc65IM+DzrUgzrXOvc+Mz4TOt8+EzrEpLiAgzpHOvSDOtM61zr0gzrrOsc+EzrHOu86xzrLOsc6vzr3Otc+EzrUgz4TOvyDOvc+MzrfOvM6xICIKKyLPhM+Jzr1cbiIKKyIgIM+HzrHPgc6xzrrPhM6uz4HPic69IM66zrHPhM6sz4PPhM6xz4POt8+CIM+Azr/PhSDOtc68z4bOsc69zq/Ots6/zr3PhM6xzrksIM+AzrfOs86xzq/Ovc61z4TOtSDPg8+Ezr8gzrHOvc6szrvOv86zzr8gz4DOsc66zq3PhM6/IM66zrHOuSBcbiIKKyIgIM66zr/Ouc+EzqzOvs+EzrUgz4TOtyDOtM65zrHPh8+Jz4HOuc+Dz4TOuc66zq4gzrPPgc6xzrzOvM6uLCDOriDPgM65zq3Pg8+EzrUgz4TOvyDPgM67zq7Ous+Ez4HOvyBgdicgzrPOuc6xIM68zrnOsSDPgM65zr8gXG4iCisiICDOsc69zrHOu8+Fz4TOuc66zq4gz4DOtc+BzrnOs8+BzrHPhs6uICjOus6xzrkgzr7Osc69zqwgzrPOuc6xIM61z4DOuc+Dz4TPgc6/z4bOriDPg8+Ezrcgz4PPjc69z4TOv868zrcgz4DOtc+BzrnOs8+BzrHPhs6uKS5cbiIKKyJcbiIKKyIqIM6jz4TOvyDOus6sz4TPiSDOvM6tz4HOv8+CIM+EzrfPgiDOv864z4zOvc63z4IgzrzPgM6/z4HOtc6vz4TOtSDOvc6xIM60zrXOr8+EzrUgz4DOtc+BzrnPg8+Dz4zPhM61z4HOtc+CIM+AzrvOt8+Bzr/Phs6/z4HOr861z4JcbiIKKyIgIM+Dz4fOtc+EzrnOus6sIM68zrUgz4TOvyDPhM+Bzq3Ph86/zr0gzrXPg8+EzrnOsc+DzrzOrc69zr8gz4DOsc66zq3PhM6/ICjOsc69IM66zqzPgM6/zrnOvyDOtc6vzr3Osc65IM61z4PPhM65zrHPg868zq3Ovc6/KS5cbiIKKyJcbiIKKyIgIM6cz4DOv8+BzrXOryDOvc6xIM61zrzPhs6xzr3Or8+DzrXOuSDOvM65zrEgzrXOus+EzrXPhM6xzrzOrc69zrcgz4DOtc+BzrnOs8+BzrHPhs6uIM+Ezr/PhSDPgM6xzrrOrc+Ezr/PhSwgz4TOuc+CIM61z4PPic+EzrXPgc65zrrOrc+CXG4iCisiICDOu861z4DPhM6/zrzOrc+BzrXOuc61z4IgzrXOu86tzrPPh86/z4UgKM61zq/PhM61IM6zzrnOsSDPhM63zr0gzrXOs866zrHPhM61z4PPhM63zrzOrc69zrcgzq4gzrPOuc6xIM+EzrfOvSDOtM65zrHOuM6tz4POuc68zrcgXG4iCisiICDOrc66zrTOv8+Dzrcgz4TOv8+FIM+AzrHOus6tz4TOv8+FKSwgz4DOu863z4HOv8+Gzr/Pgc6vzrXPgiDPg8+HzrXPhM65zrrOrCDOvM61IM+Dz4XOs866z4HOv8+Nz4POtc65z4IgzrrOsc65IM61zr7Osc+Bz4TOrs+DzrXOuc+CXG4iCisiICDOs865zrEgz4TOvyDPhM+Bzq3Ph86/zr0gz4DOsc66zq3PhM6/ICjPg8+EzrcgzrvOr8+Dz4TOsSDPg8+FzrPOus+Bzr/Pjc+DzrXPic69L861zr7Osc+Bz4TOrs+DzrXPic69KS5cbiIKKyJcbiIKKyIgIM6nz4HOt8+DzrnOvM6/z4DOv865zq7Pg8+EzrUgz4TOvyDPgM67zq7Ous+Ez4HOvyBgaScgzrPOuc6xIM69zrEgzrXOvc6xzrvOu86szr7Otc+EzrUgz4TOuc+CIM61zrzPhs6xzr3Ouc62z4zOvM61zr3Otc+CICIKKyLPgM67zrfPgc6/z4bOv8+Bzq/Otc+CXG4iCisiICDOus6xzrkgz4TOvyBgzpknIM6zzrnOsSDPhM63zr0gzrHPgM+MzrrPgc+Fz4jOtyDPhM+Jzr0gz4DOu863z4HOv8+Gzr/Pgc65z47OvSDOriDPhM63zr0gzrXPgM6tzrrPhM6xz4POriDPhM6/z4XPgi5cbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxNzYKK21zZ2lkICJJbnRyb2R1Y3Rpb24gdG8gbWV0aG9kIHNlbGVjdGlvbiBkaXNwbGF5IgorbXNnc3RyICLOlc65z4POsc6zz4nOs86uIM+Dz4TOt869IM6/zrjPjM69zrcgzrzOtc64z4zOtM6/z4UgzrXPgM65zrvOv86zzq7PgiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxNzYKK21zZ2lkICIiCisiZHNlbGVjdCBhbmQgZHBrZyBjYW4gZG8gYXV0b21hdGljIGluc3RhbGxhdGlvbiwgbG9hZGluZyB0aGUgcGFja2FnZSBmaWxlcyB0byAiCisiYmVcbiIKKyJpbnN0YWxsZWQgZnJvbSBvbmUgb2YgYSBudW1iZXIgb2YgZGlmZmVyZW50IHBvc3NpYmxlIHBsYWNlcy5cbiIKKyJcbiIKKyJUaGlzIGxpc3QgYWxsb3dzIHlvdSB0byBzZWxlY3Qgb25lIG9mIHRoZXNlIGluc3RhbGxhdGlvbiBtZXRob2RzLlxuIgorIlxuIgorIk1vdmUgdGhlIGhpZ2hsaWdodCB0byB0aGUgbWV0aG9kIHlvdSB3aXNoIHRvIHVzZSwgYW5kIGhpdCBFbnRlci4gIFlvdSB3aWxsICIKKyJ0aGVuXG4iCisiYmUgcHJvbXB0ZWQgZm9yIHRoZSBpbmZvcm1hdGlvbiByZXF1aXJlZCB0byBkbyB0aGUgaW5zdGFsbGF0aW9uLlxuIgorIlxuIgorIkFzIHlvdSBtb3ZlIHRoZSBoaWdobGlnaHQgYSBkZXNjcmlwdGlvbiBvZiBlYWNoIG1ldGhvZCwgd2hlcmUgYXZhaWxhYmxlLCBpc1xuIgorImRpc3BsYXllZCBpbiB0aGUgYm90dG9tIGhhbGYgb2YgdGhlIHNjcmVlbi5cbiIKKyJcbiIKKyJJZiB5b3Ugd2lzaCB0byBxdWl0IHdpdGhvdXQgY2hhbmdpbmcgYW55dGhpbmcgdXNlIHRoZSBgeCcga2V5IHdoaWxlIGluIHRoZSAiCisibGlzdFxuIgorIm9mIGluc3RhbGxhdGlvbiBtZXRob2RzLlxuIgorIlxuIgorIkEgZnVsbCBsaXN0IG9mIGtleXN0cm9rZXMgaXMgYXZhaWxhYmxlIGJ5IHByZXNzaW5nIGBrJyBub3csIG9yIGZyb20gdGhlICIKKyJoZWxwXG4iCisibWVudSByZWFjaGFibGUgYnkgcHJlc3NpbmcgYD8nLlxuIgorbXNnc3RyICIiCisiz4TOvyBkc2VsZWN0IM66zrHOuSDPhM6/IGRwa2cgzrzPgM6/z4HOv8+Nzr0gzr3OsSDOus6szr3Ov8+Fzr0gzrzOuc6xIM6xz4XPhM+MzrzOsc+EzrcgzrXOs866zrHPhM6sz4PPhM6xz4POtywgIgorIs+Gzr/Pgc+Ez47Ovc6/zr3PhM6xz4Igz4TOsSBcbiIKKyLOsc+AzrHPgc6xzq/PhM63z4TOsSDPgM6xzrrOrc+EzrEgzrPOuc6xIM61zrPOus6xz4TOrM+Dz4TOsc+DzrcgzrHPgM+MIM60zrnOrM+Gzr/Pgc61z4Igz4DOt86zzq3Pgi5cbiIKKyJcbiIKKyLOkc+Fz4TOriDOtyDOu86vz4PPhM6xIM+DzrHPgiDOtc+AzrnPhM+Bzq3PgM61zrkgzr3OsSDOtc+AzrnOu86tzr7Otc+EzrUgzrzOuc6xIM6xz4DPjCDOsc+Fz4TOrc+CIM+EzrnPgiDOvM61zrjPjM60zr/Phc+CICIKKyLOtc6zzrrOsc+EzqzPg8+EzrHPg863z4IuXG4iCisiXG4iCisizpXPgM65zrvOrc6+z4TOtSDPhM63IM68zq3OuM6/zrTOvyDPgM6/z4UgzrXPgM65zrjPhc68zrXOr8+EzrUgzr3OsSDPh8+BzrfPg865zrzOv8+Azr/Ouc6uz4POtc+EzrUsIM66zrHOuSDPgM65zq3Pg8+EzrUgz4TOvyBFbnRlci4gICIKKyLOmM6xIM+DzrHPgiBcbiIKKyLOts63z4TOt864zrXOryDPg8+Ezrcgz4PPhc69zq3Ph861zrnOsSDOvc6xIM60z47Pg861z4TOtSDPhM65z4Igz4DOu863z4HOv8+Gzr/Pgc6vzrXPgiDPgM6/z4UgzrHPgM6xzrnPhM6/z43Ovc+EzrHOuSDOs865zrEgz4TOtyAiCisizrXOs866zrHPhM6sz4PPhM6xz4POty5cbiIKKyJcbiIKKyLOms6xzrjPjs+CIM68zrXPhM6xzrrOuc69zq7Pg8+EzrUgzrzOtc+EzrHOvs+NIM+Ez4nOvSDOvM61zrjPjM60z4nOvSwgzrXOvM+GzrHOvc6vzrbOtc+EzrHOuSDOvM65zrEgz4DOtc+BzrnOs8+BzrHPhs6uIM+EzrfPgiDOus6szrjOtSAiCisizrzOr86xz4JcbiIKKyLPg8+Ezr8gzrrOrM+Ez4kgzrzOuc+Dz4wgz4TOt8+CIM6/zrjPjM69zrfPgi5cbiIKKyJcbiIKKyLOkc69IM64zq3Ou861z4TOtSDOvc6xIM+Gz43Os861z4TOtSDPh8+Jz4HOr8+CIM69zrEgzrrOrM69zrXPhM61IM66zrHOvM6vzrEgzrHOu867zrHOs86uLCDPh8+BzrfPg865zrzOv8+Azr/Ouc6uz4PPhM61IM+Ezr8gIgorIs+AzrvOrs66z4TPgc6/YHgnLlxuIgorIlxuIgorIs6Izr3Osc+CIM+AzrvOrs+BzrfPgiDOus6xz4TOrM67zr/Os86/z4IgzrHPgM+MIM+Dz4XOvc60z4XOsc+DzrzOv8+Nz4Igz4DOu86uzrrPhM+Bz4nOvSDOtc6vzr3Osc65IM60zrnOsc64zq3Pg865zrzOv8+CIM6xzr0gz4DOuc6tz4POtc+EzrUgIgorImBrJ1xuIgorIs+Ez47Pgc6xLCDOriDOsc+Az4wgz4TOt869IM61z4DOuc67zr/Os86uIM6yzr/Ot864zrXOr86xz4Igz4DOuc6tzrbOv869z4TOsc+CIGA/Jy5cbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxOTYKK21zZ2lkICJLZXlzdHJva2VzIGZvciBtZXRob2Qgc2VsZWN0aW9uIgorbXNnc3RyICLOoM67zq7Ous+Ez4HOsSDOs865zrEgz4TOt869IM61z4DOuc67zr/Os86uIM+EzrfPgiDOvM61zrjPjM60zr/PhSIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxOTYKKyMsIGZ1enp5Cittc2dpZCAiIgorIk1vdGlvbiBrZXlzOiBOZXh0L1ByZXZpb3VzLCBUb3AvRW5kLCBVcC9Eb3duLCBCYWNrd2FyZHMvRm9yd2FyZHM6XG4iCisiICBqLCBEb3duLWFycm93ICAgICAgICAgaywgVXAtYXJyb3cgICAgICAgICAgICAgbW92ZSBoaWdobGlnaHRcbiIKKyIgIE4sIFBhZ2UtZG93biwgU3BhY2UgICBQLCBQYWdlLXVwLCBCYWNrc3BhY2UgICBzY3JvbGwgbGlzdCBieSAxIHBhZ2VcbiIKKyIgIF5uICAgICAgICAgICAgICAgICAgICBecCAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgbGlzdCBieSAxIGxpbmVcbiIKKyIgIHQsIEhvbWUgICAgICAgICAgICAgICBlLCBFbmQgICAgICAgICAgICAgICAgICBqdW1wIHRvIHRvcC9lbmQgb2YgbGlzdFxuIgorIiAgdSAgICAgICAgICAgICAgICAgICAgIGQgICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIGJ5IDEgcGFnZVxuIgorIiAgXnUgICAgICAgICAgICAgICAgICAgIF5kICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIGJ5IDEgbGluZVxuIgorIiAgQiwgTGVmdC1hcnJvdyAgICAgICAgIEYsIFJpZ2h0LWFycm93ICAgICAgICAgIHBhbiBkaXNwbGF5IGJ5IDEvMyBzY3JlZW5cbiIKKyIgIF5iICAgICAgICAgICAgICAgICAgICBeZiAgICAgICAgICAgICAgICAgICAgICBwYW4gZGlzcGxheSBieSAxIGNoYXJhY3RlclxuIgorIihUaGVzZSBhcmUgdGhlIHNhbWUgbW90aW9uIGtleXMgYXMgaW4gdGhlIHBhY2thZ2UgbGlzdCBkaXNwbGF5LilcbiIKKyJcbiIKKyJRdWl0OlxuIgorIiBSZXR1cm4sIEVudGVyICAgIHNlbGVjdCB0aGlzIG1ldGhvZCBhbmQgZ28gdG8gaXRzIGNvbmZpZ3VyYXRpb24gZGlhbG9ndWVcbiIKKyIgeCwgWCAgICAgICAgICAgICBleGl0IHdpdGhvdXQgY2hhbmdpbmcgb3Igc2V0dGluZyB1cCB0aGUgaW5zdGFsbGF0aW9uICIKKyJtZXRob2RcbiIKKyJcbiIKKyJNaXNjZWxsYW5lb3VzOlxuIgorIiAgPywgSGVscCwgRjEgICAgICByZXF1ZXN0IGhlbHBcbiIKKyIgXmwgICAgICAgICAgICAgICAgcmVkcmF3IGRpc3BsYXlcbiIKKyIgIC8gICAgICAgICAgICAgICAgc2VhcmNoIChqdXN0IHJldHVybiB0byBjYW5jZWwpXG4iCisiICBcXCAgICAgICAgICAgICAgICByZXBlYXQgbGFzdCBzZWFyY2hcbiIKK21zZ3N0ciAiIgorIs6gzrvOrs66z4TPgc6xIM66zq/Ovc63z4POt8+COiDOlc+Az4zOvM61zr3Ovy/OoM+Bzr/Ot86zzr/Pjc68zrXOvc6/LCDOkc+Bz4fOri/OpM6tzrvOv8+CLCDOlc+AzqzOvc+JL86azqzPhM+JLCDOlc68z4DPgc+Mz4IvzqDOr8+Dz4k6XG4iCisiICBuLCDOks6tzrvOv8+CIM66zqzPhM+JICAgICAgICAgcCwgzpLOrc67zr/PgiDOtc+AzqzOvc+JICAgICAgICAgICAgIM66zq/Ovc63z4POtyDOtc+AzqzOvc+JL866zqzPhM+JXG4iCisiICBOLCDOo861zrvOr860zrEgzrrOrM+Ez4ksIM6UzrnOrM+Dz4TOt868zrEgICBQLCDOo861zrvOr860zrEgzrXPgM6szr3PiSwgzqDOuc+Dz4nOs8+Nz4HOuc+DzrzOsSAgIM66zrHPhM6tzrLOsc+DzrzOsSDOu86vz4PPhM6xz4IgIgorIs6xzr3OrCAxIM+DzrXOu86vzrTOsVxuIgorIiAgXm4gICAgICAgICAgICAgICAgICAgIF5wICAgICAgICAgICAgICAgICAgICAgIM66z43Ou865z4POtyDOu86vz4PPhM6xz4IgzrHOvc6sIDEgzrPPgc6xzrzOvM6uXG4iCisiICB0LCBIb21lICAgICAgICAgICAgICAgZSwgRW5kICAgICAgICAgICAgICAgICAgz4DOrs6zzrHOuc69zrUgz4PPhM63zr0gzrHPgc+Hzq4vz4TOrc67zr/PgiDPhM63z4IgIgorIs67zq/Pg8+EzrHPglxuIgorIiAgdSAgICAgICAgICAgICAgICAgICAgIGQgICAgICAgICAgICAgICAgICAgICAgIM66z43Ou865z4POtyDPgM67zrfPgc6/z4bOv8+BzrnPjs69IM6xzr3OrCAxICIKKyLPg861zrvOr860zrFcbiIKKyIgIF51ICAgICAgICAgICAgICAgICAgICBeZCAgICAgICAgICAgICAgICAgICAgICDOus+NzrvOuc+Dzrcgz4DOu863z4HOv8+Gzr/Pgc65z47OvSDOsc69zqwgMSAiCisizrPPgc6xzrzOvM6uXG4iCisiICBCLCDOks6tzrvOv8+CIM6xz4HOuc+Dz4TOtc+BzqwgICAgICAgICBGLCDOks6tzrvOv8+CIM60zrXOvs65zqwgICAgICAgICAgzrzOtc+EzrHPhM+Mz4DOuc+Dzrcgzr/OuM+Mzr3Ot8+CIM66zrHPhM6sICIKKyLPhM6/IDEvM1xuIgorIiAgXmIgICAgICAgICAgICAgICAgICAgIF5mICAgICAgICAgICAgICAgICAgICAgIM68zrXPhM6xz4TPjM+AzrnPg863IM6/zrjPjM69zrfPgiDOus6xz4TOrCAxICIKKyLPh86xz4HOsc66z4TOrs+BzrFcbiIKKyIozpnPg8+Hz43Ov8+Fzr0gz4TOsSDOr860zrnOsSDPgM67zq7Ous+Ez4HOsSDOus6vzr3Ot8+DzrfPgiDOvM61IM+EzrfOvSDOv864z4zOvc63IM61zrzPhs6szr3Ouc+DzrfPgiDPgM6xzrrOrc+Ez4nOvS4pXG4iCisiXG4iCisizpXOs866zrHPhM6szrvOtc65z4jOtzpcbiIKKyIgUmV0dXJuLCBFbnRlciAgICDOtc+AzrnOu86tzr7PhM61IM+EzrcgzrzOrc64zr/OtM6/IM6xz4XPhM6uIM66zrHOuSDPgM63zrPOsc6vzr3Otc+EzrUgz4PPhM6/IM60zrnOsc67z4zOs86/ICIKKyLPgM6xz4HOsc68zq3PhM+Bz4nOvSDPhM63z4JcbiIKKyIgeCwgWCAgICAgICAgICAgICDOrc6+zr/OtM6/z4Igz4fPic+Bzq/PgiDOus6xzrjOv8+BzrnPg868z4wgzq4gzrHOu867zrHOs86uIM+EzrfPgiDOvM61zrjPjM60zr/PhSDOtc6zzrrOsc+EzqzPg8+EzrHPg863z4JcbiIKKyJcbiIKKyLOlM65zqzPhs6/z4HOsTpcbiIKKyIgID8sIM6Szr/Ors64zrXOuc6xLCBGMSAgICAgIM61zrzPhs6szr3Ouc+DzrcgzrLOv86uzrjOtc65zrHPglxuIgorIiBebCAgICAgICAgICAgICAgICDOtc+AzrHOvc6xz4PPh861zrTOuc6xz4POvM+Mz4Igz4TOt8+CIM6/zrjPjM69zrfPglxuIgorIiAgLyAgICAgICAgICAgICAgICDOsc69zrHOts6uz4TOt8+DzrcgKM+AzrnOrc+Dz4TOtSByZXR1cm4gzrPOuc6xIM69zrEgzrHOus+Fz4HPjs+DzrXPhM61KVxuIgorIiAgXFwgICAgICAgICAgICAgICAgzrXPgM6xzr3OrM67zrfPiM63IM+EzrXOu861z4XPhM6xzq/Osc+CIM6xzr3Osc62zq7PhM63z4POt8+CXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzo2MAorbXNnaWQgIlR5cGUgZHNlbGVjdCAtLWhlbHAgZm9yIGhlbHAuIgorbXNnc3RyICLOoM67zrfOus+Ez4HOv867zr/Os86uz4PPhM61IGRzZWxlY3QgLS1oZWxwIM6zzrnOsSDOss6/zq7OuM61zrnOsS4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDMKK21zZ2lkICJhIgorbXNnc3RyICJhIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQzCittc2dpZCAiW0FdY2Nlc3MiCittc2dzdHIgIs6gz4HPjM+DzrLOsc+DzrcgKFthXSkiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDMKK21zZ2lkICJDaG9vc2UgdGhlIGFjY2VzcyBtZXRob2QgdG8gdXNlLiIKK21zZ3N0ciAizpXPgM65zrvOrc6+z4TOtSDPhM63IM68zq3OuM6/zrTOvyDPgM+Bz4zPg86yzrHPg863z4Igz4DOv8+FIM64zrEgz4fPgc63z4POuc68zr/PgM6/zrnOrs+DzrXPhM61IgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ0Cittc2dpZCAidSIKK21zZ3N0ciAidSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NAorbXNnaWQgIltVXXBkYXRlIgorbXNnc3RyICLOkc69zrHOvc6tz4nPg863KFt1XSkiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDQKK21zZ2lkICJVcGRhdGUgbGlzdCBvZiBhdmFpbGFibGUgcGFja2FnZXMsIGlmIHBvc3NpYmxlLiIKK21zZ3N0ciAizpHOvc6xzr3Orc+Jz4POtSDPhM63IM67zq/Pg8+EzrEgz4TPic69IM60zrnOsc64zq3Pg865zrzPic69IM+AzrHOus6tz4TPic69LCDOsc69IM61zq/Ovc6xzrkgzrTPhc69zrHPhM+MLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NQorbXNnaWQgInMiCittc2dzdHIgInMiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDUKK21zZ2lkICJbU11lbGVjdCIKK21zZ3N0ciAizpXPgM65zrvOv86zzq4gKFtzXSkiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDUKK21zZ2lkICJSZXF1ZXN0IHdoaWNoIHBhY2thZ2VzIHlvdSB3YW50IG9uIHlvdXIgc3lzdGVtLiIKK21zZ3N0ciAizpXPgM65zrvOrc6+z4TOtSDPgM6/zrnOsSDPgM6xzrrOrc+EzrEgzrjOrc67zrXPhM61IM+Dz4TOvyDPg8+Nz4PPhM63zrzOrCDPg86xz4IuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ2Cittc2dpZCAiaSIKK21zZ3N0ciAiaSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NgorbXNnaWQgIltJXW5zdGFsbCIKK21zZ3N0ciAizpXOs866zrHPhM6sz4PPhM6xz4POtyAoW2ldKSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NgorbXNnaWQgIkluc3RhbGwgYW5kIHVwZ3JhZGUgd2FudGVkIHBhY2thZ2VzLiIKK21zZ3N0ciAizpXOs866zrHPhM6sz4PPhM6xz4POtyDOus6xzrkgzrHOvc6xzrLOrM64zrzOuc+DzrcgzrbOt8+Ezr/Pjc68zrXOvc+Jzr0gz4DOsc66zq3PhM+Jzr0uIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ3Cittc2dpZCAiYyIKK21zZ3N0ciAiYyIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NworbXNnaWQgIltDXW9uZmlnIgorbXNnc3RyICLOoc+NzrjOvM65z4POtyAoW2NdKSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NworbXNnaWQgIkNvbmZpZ3VyZSBhbnkgcGFja2FnZXMgdGhhdCBhcmUgdW5jb25maWd1cmVkLiIKK21zZ3N0ciAizqHPjc64zrzOuc+Dzrcgz4zPgM6/zrnPic69IM+AzrHOus6tz4TPic69IM61zq/Ovc6xzrkgzrzOtyDPgc+FzrjOvM65z4POvM6tzr3OsS4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDgKK21zZ2lkICJyIgorbXNnc3RyICJyIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ4Cittc2dpZCAiW1JdZW1vdmUiCittc2dzdHIgIs6Rz4bOsc6vz4HOtc+DzrcgKFtyXSkiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDgKK21zZ2lkICJSZW1vdmUgdW53YW50ZWQgc29mdHdhcmUuIgorbXNnc3RyICLOkc+GzrHOr8+BzrXPg863IM6xzr3Otc+AzrnOuM+NzrzOt8+Ezr/PhSDOu86/zrPOuc+DzrzOuc66zr/PjS4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDkKK21zZ2lkICJxIgorbXNnc3RyICJxIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ5Cittc2dpZCAiW1FddWl0IgorbXNnc3RyICLOiM6+zr/OtM6/z4IgKFtxXSkiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDkKK21zZ2lkICJRdWl0IGRzZWxlY3QuIgorbXNnc3RyICLOiM6+zr/OtM6/z4IgzrHPgM+MIM+Ezr8gZHNlbGVjdC4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNTAKK21zZ2lkICJtZW51IgorbXNnc3RyICLOvM61zr3Ov8+NIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTU1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIGhhbmRsaW5nIGZyb250ZW5kIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIs6gz4HPjM6zz4HOsc68zrzOsSDOtM65zrHPh861zq/Pgc65z4POt8+CIM+Ez4nOvSDPgM6xzrrOrc+Ez4nOvSDPhM6/z4UgRGViaWFuIGAlcyciCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNTgKK21zZ2lkICIiCisiQ29weXJpZ2h0IChDKSAxOTk0LTE5OTYgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTYyCisjLCBmdXp6eQorbXNnaWQgIiIKKyJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAyIG9yXG4iCisibGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuXG4iCittc2dzdHIgIiIKKyLOkc+Fz4TPjCDOtc6vzr3Osc65IM61zrvOtc+NzrjOtc+Bzr8gzrvOv86zzrnPg868zrnOus+MLiDOlM61zq/PhM61IM+EzrfOvSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSDOrc66zrTOv8+DzrfPgiAiCisiMiDOrlxuIgorIs68zrXPhM6xzrPOtc69zq3Pg8+EzrXPgc63z4IgzrPOuc6xIM+Dz4XOvc64zq7Ous61z4IgzrHOvc+EzrnOs8+BzrHPhs6uz4IuIM6UzrXOvSDPhc+AzqzPgc+HzrXOuSDOms6RzpzOmc6RIM61zrPOs8+NzrfPg863LlxuIgorIs6UzrXOr8+EzrUgZHBrZy1kZWIgLS1saWNlbmNlIM6zzrnOsSDOu861z4DPhM6/zrzOrc+BzrXOuc61z4IuXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNzIgZHNlbGVjdC9tYWluLmNjOjIyMAorbXNnaWQgIjxzdGFuZGFyZCBvdXRwdXQ+IgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSBbPGFjdGlvbj4gLi4uXVxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyIgIC0tZXhwZXJ0ICAgICAgICAgICAgICAgICAgIFR1cm4gb24gZXhwZXJ0IG1vZGUuXG4iCisiICAtLWRlYnVnIDxmaWxlPiB8IC1EPGZpbGU+ICBUdXJuIG9uIGRlYnVnZ2luZywgc2VuZGluZyBvdXRwdXQgdG8gPGZpbGU+LlxuIgorIiAgLS1jb2xvdXIgfCAtLWNvbG9yIHNjcmVlbnBhcnQ6W2ZvcmVncm91bmRdLFtiYWNrZ3JvdW5kXVs6YXR0clsrYXR0cisuLl1dXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDb25maWd1cmUgc2NyZWVuIGNvbG91cnMuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE5NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgICBTaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICAgU2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjAxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJBY3Rpb25zOlxuIgorIiAgYWNjZXNzIHVwZGF0ZSBzZWxlY3QgaW5zdGFsbCBjb25maWcgcmVtb3ZlIHF1aXRcbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjA1CisjLCBjLWZvcm1hdAorbXNnaWQgIlNjcmVlbnBhcnRzOlxuIgorbXNnc3RyICLOn864z4zOvc61z4I6XG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ29sb3VyczpcbiIKK21zZ3N0ciAizqfPgc+OzrzOsc+EzrE6XG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiQXR0cmlidXRlczpcbiIKK21zZ3N0ciAizpnOtM65z4zPhM63z4TOtc+COlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjMzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkbid0IG9wZW4gZGVidWcgZmlsZSBgJS4yNTVzJ1xuIgorbXNnc3RyICLOsc60z43Ovc6xz4TOvyDPhM6/IM6szr3Ov865zrPOvM6xIM+Ezr/PhSDOsc+Bz4fOtc6vzr/PhSBkZWJ1ZyBgJS4yNTVzJ1xuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjUzCisjLCBjLWZvcm1hdAorbXNnaWQgIkludmFsaWQgJXMgYCVzJ1xuIgorbXNnc3RyICLOnM63IM6tzrPOus+Fz4HOvyAlcyBgJXMnXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyNzAKK21zZ2lkICJzY3JlZW4gcGFydCIKK21zZ3N0ciAiz4TOvM6uzrzOsSDOv864z4zOvc63z4IiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyNzYKK21zZ2lkICJOdWxsIGNvbG91ciBzcGVjaWZpY2F0aW9uXG4iCittc2dzdHIgIs66zrXOvc+Mz4Igz4fPgc+JzrzOsc+EzrnOus+Mz4Igz4DPgc6/z4POtM65zr/Pgc65z4POvM+Mz4JcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjI4NCBkc2VsZWN0L21haW4uY2M6Mjg5Cittc2dpZCAiY29sb3VyIgorbXNnc3RyICLPh8+Bz47OvM6xIgorCisjOiBkc2VsZWN0L21haW4uY2M6Mjk3Cittc2dpZCAiY29sb3VyIGF0dHJpYnV0ZSIKK21zZ3N0ciAizrnOtM65z4zPhM63z4TOsSDPh8+Bz47OvM6xz4TOv8+CIgorCisjOiBkc2VsZWN0L21haW4uY2M6MzI5Cittc2dpZCAiVGVybWluYWwgZG9lcyBub3QgYXBwZWFyIHRvIHN1cHBvcnQgY3Vyc29yIGFkZHJlc3NpbmcuXG4iCittc2dzdHIgIs6kzr8gz4TOtc+BzrzOsc+EzrnOus+MIM60zrXOvSDPhs6xzq/Ovc61z4TOsc65IM69zrEgz4XPgM6/z4PPhM63z4HOr862zrXOuSDOus6xz4TOtc+FzrjPhc69z4zOvM61zr3OvyDOtM+Bzr/OvM6tzrEuXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzozMzEKK21zZ2lkICJUZXJtaW5hbCBkb2VzIG5vdCBhcHBlYXIgdG8gc3VwcG9ydCBoaWdobGlnaHRpbmcuXG4iCittc2dzdHIgIs6kzr8gz4TOtc+BzrzOsc+EzrnOus+MIM60zrXOvSDPhs6xzq/Ovc61z4TOsc65IM69zrEgz4XPgM6/z4PPhM63z4HOr862zrXOuSDPhM6/zr3Ouc+DzrzPjC5cbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjMzMworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIlNldCB5b3VyIFRFUk0gdmFyaWFibGUgY29ycmVjdGx5LCB1c2UgYSBiZXR0ZXIgdGVybWluYWwsXG4iCisib3IgbWFrZSBkbyB3aXRoIHRoZSBwZXItcGFja2FnZSBtYW5hZ2VtZW50IHRvb2wgJXMuXG4iCittc2dzdHIgIiIKKyLOn8+Bzq/Pg8+EzrUgz4TOtyDOvM61z4TOsc6yzrvOt8+Ezq4gVEVSTSDPg8+Jz4PPhM6sLCDPh8+BzrfPg865zrzOv8+Azr/Ouc6uz4PPhM61IM6tzr3OsSDOus6xzrvPjc+EzrXPgc6/IM+EzrXPgc68zrHPhM65zrrPjCxcbiIKKyLOriDPh8+BzrfPg865zrzOv8+Azr/Ouc6uz4PPhM61IM68zrUgz4TOvyDOtc+BzrPOsc67zrXOr86/IM60zrnOsc+HzrXOr8+BzrnPg863z4IgzrzOtc68zr/Ovc+JzrzOrc69z4nOvSDPgM6xzrrOrc+Ez4nOvSAiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzozMzYKK21zZ2lkICJ0ZXJtaW5hbCBsYWNrcyBuZWNlc3NhcnkgZmVhdHVyZXMsIGdpdmluZyB1cCIKK21zZ3N0ciAiz4TOvyDPhM61z4HOvM6xz4TOuc66z4wgzrTOtc69IM+Fz4DOv8+Dz4TOt8+Bzq/Ots61zrkgzrHPgM6xz4HOsc6vz4TOt8+EzrEgz4fOsc+BzrHOus+EzrfPgc65z4PPhM65zrrOrCwgzrXOs866zrHPhM6szrvOtc65z4jOtyIKKworIzogZHNlbGVjdC9tYWluLmNjOjQxNworbXNnaWQgIiIKKyJcbiIKKyJcbiIKKyJNb3ZlIGFyb3VuZCB3aXRoIF5QIGFuZCBeTiwgY3Vyc29yIGtleXMsIGluaXRpYWwgbGV0dGVycywgb3IgZGlnaXRzO1xuIgorIlByZXNzIDxlbnRlcj4gdG8gY29uZmlybSBzZWxlY3Rpb24uICAgXkwgcmVkcmF3cyBzY3JlZW4uXG4iCisiXG4iCittc2dzdHIgIiIKKyJcbiIKKyJcbiIKKyLOoM67zr/Ot86zzrfOuM61zq/PhM61IM68zrUgz4TOsSDPgM67zq7Ous+Ez4HOsSBeUCDOus6xzrkgXk4sIM+EzrEgzrLOtc67zqzOus65zrEsIM6xz4HPh865zrrOrCDOs8+BzqzOvM68zrHPhM6xLCDOtyDPiM63z4bOr86xLlxuIgorIs6gzrnOrc+Dz4TOtSA8ZW50ZXI+IM6zzrnOsSDOsc+Azr/OtM6/z4fOriDPhM63z4IgzrXPgM65zrvOv86zzq7Pgi4gICDPhM6/IF5MIM6xzr3Osc69zrXPjs69zrXOuSDPhM63zr0gzr/OuM+Mzr3Oty5cbiIKKyJcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjQyOAorbXNnaWQgIiIKKyJcbiIKKyJcbiIKKyJSZWFkLW9ubHkgYWNjZXNzOiBvbmx5IHByZXZpZXcgb2Ygc2VsZWN0aW9ucyBpcyBhdmFpbGFibGUhIgorbXNnc3RyICIiCisiXG4iCisiXG4iCisizqDPgc+Mz4POss6xz4POtyDOvM+Mzr3OvyDOs865zrEgzrHOvc6szrPOvc+Jz4POtzogzpzPjM69zr8gzrcgz4DPgc6/zrXPgM65z4POus+Mz4DOt8+Dzrcgz4TPic69IM61z4DOuc67zr/Os8+Ozr0gzrXOr869zrHOuSAiCisizrTOuc6xzrjOrc+DzrnOvM63ISIKKworIzogZHNlbGVjdC9tYWluLmNjOjQ0OAorbXNnaWQgImZhaWxlZCB0byBnZXRjaCBpbiBtYWluIG1lbnUiCittc2dzdHIgIs6xz4DOrc+Ez4XPh861IM63IGdldGNoIM+Dz4TOvyDOus+Fz4HOr8+Jz4IgzrzOtc69zr/PjSIKKworIzogZHNlbGVjdC9tYWluLmNjOjUzMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGFjdGlvbiBzdHJpbmcgYCUuNTBzJyIKK21zZ3N0ciAizqzOs869z4nPg8+Ezrcgz4PPhc68zrLOv867zr/Pg861zrnPgc6sIM60z4HOrM+DzrfPgiBgJS41MHMnIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjc3Cittc2dpZCAiZHNlbGVjdCAtIGxpc3Qgb2YgYWNjZXNzIG1ldGhvZHMiCittc2dzdHIgImRzZWxlY3QgLSDOu86vz4PPhM6xIM+Ez4nOvSDOvM61zrjPjM60z4nOvSDPgM+Bz4zPg86yzrHPg863z4IiCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiQWNjZXNzIG1ldGhvZCBgJXMnLiIKK21zZ3N0ciAizpzOrc64zr/OtM6/z4Igz4DPgc+Mz4POss6xz4POt8+CIGAlcycuIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjEyMAorbXNnaWQgIkFiYnJldi4iCittc2dzdHIgIs6jz43Ovc+EzrzOt8+DzrciCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTIxIGRzZWxlY3QvcGtnaW5mby5jYzoxMDUgZHNlbGVjdC9wa2d0b3AuY2M6MjkxCittc2dpZCAiRGVzY3JpcHRpb24iCittc2dzdHIgIs6gzrXPgc65zrPPgc6xz4bOriIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxNjQgZHNlbGVjdC9wa2dsaXN0LmNjOjU3MgorbXNnaWQgImRvdXBkYXRlIGZhaWxlZCIKK21zZ3N0ciAizrcgZG91cGRhdGUgzrHPgM6tz4TPhc+HzrUiCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTY2IGRzZWxlY3QvcGtnbGlzdC5jYzo1NzUKK21zZ2lkICJmYWlsZWQgdG8gdW5ibG9jayBTSUdXSU5DSCIKK21zZ3N0ciAizrHPgM6tz4TPhc+HzrUgzrcgzrHPgM61zrzPgM67zr/Ous6uIM+Ezr/PhSBTSUdXSU5DSCIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxNzAgZHNlbGVjdC9wa2dsaXN0LmNjOjU4MAorbXNnaWQgImZhaWxlZCB0byByZS1ibG9jayBTSUdXSU5DSCIKK21zZ3N0ciAizrHPgM6tz4TPhc+HzrUgzrcgzrXPgM6xzr3Otc68z4DOu86/zrrOriDPhM6/z4UgU0lHV0lOQ0giCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTcxIGRzZWxlY3QvcGtnbGlzdC5jYzo1ODIKK21zZ2lkICJnZXRjaCBmYWlsZWQiCittc2dzdHIgIs63IGdldGNoIM6xz4DOrc+Ez4XPh861IgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjE4OAorIywgZnV6enkKK21zZ2lkICJFeHBsYW5hdGlvbiIKK21zZ3N0ciAizrXOvs6uzrPOt8+Dzrcgz4TOv8+FICIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxOTcKK21zZ2lkICJObyBleHBsYW5hdGlvbiBhdmFpbGFibGUuIgorbXNnc3RyICLOms6xzrzOr86xIM60zrnOsc64zq3Pg865zrzOtyDOtc6+zq7Os863z4POty4iCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjY3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJcbiIKKyIlczogJXNcbiIKK21zZ3N0ciAiIgorIlxuIgorIlxuIgorIiVzOiAlc1xuIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzo3MAorbXNnaWQgIiIKKyJcbiIKKyJQcmVzcyA8ZW50ZXI+IHRvIGNvbnRpbnVlLiIKK21zZ3N0ciAiIgorIlxuIgorIs6gzrHPhM6uz4PPhM61IDxlbnRlcj4gzrPOuc6xIM+Dz4XOvc6tz4fOtc65zrEuIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoxNjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHJlc3MgPGVudGVyPiB0byBjb250aW51ZS5cbiIKK21zZ3N0ciAizqDOsc+Ezq7Pg8+EzrUgPGVudGVyPiDOs865zrEgz4PPhc69zq3Ph861zrnOsS5cbiIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MTYyCisjLCBmdXp6eQorbXNnaWQgIjxzdGFuZGFyZCBlcnJvcj4iCittc2dzdHIgIs+Dz4bOrM67zrzOsSDOtc6zzrPPgc6xz4bOrs+CIM+Dz4TOt869IM+Az4HPjM+Ez4XPgM63IM6tzr7Ov860zr8gz4PPhs6xzrvOvM6sz4TPic69IChzdGRlcnIpIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoxNjUKK21zZ2lkICJlcnJvciByZWFkaW5nIGFja25vd2xlZGdlbWVudCBvZiBwcm9ncmFtIGZhaWx1cmUgbWVzc2FnZSIKK21zZ3N0ciAiz4PPhs6szrvOvM6xIM6xzr3OrM6zzr3Pic+DzrfPgiDOtc+AzrnOss61zrLOsc6vz4nPg863z4Igz4TOv8+FIM68zrfOvc+NzrzOsc+Ezr/PgiDPg8+GzqzOu868zrHPhM6/z4Igz4TOv8+FIM+Az4HOv86zz4HOrM68zrzOsc+Ezr/PgiIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MTk2Cittc2dpZCAidXBkYXRlIGF2YWlsYWJsZSBsaXN0IHNjcmlwdCIKK21zZ3N0ciAizrHOvc6xzr3Orc+Jz4POtyDPhM63z4IgzrvOr8+Dz4TOsc+CIM+Ez4nOvSDOtM65zrHOuM6tz4POuc68z4nOvSDPgM6xzrrOrc+Ez4nOvSIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MjAwCittc2dpZCAiaW5zdGFsbGF0aW9uIHNjcmlwdCIKK21zZ3N0ciAiz4POtc69zqzPgc65zr8gzrXOs866zrHPhM6sz4PPhM6xz4POt8+CIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoyNDYKK21zZ2lkICJxdWVyeS9zZXR1cCBzY3JpcHQiCittc2dzdHIgIs+DzrXOvc6sz4HOuc6/IM61z4HPic+Ezq7OvM6xz4TOv8+CL861zrPOus6xz4TOrM+Dz4TOsc+DzrfPgiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yIGluIG1ldGhvZCBvcHRpb25zIGZpbGUgYCUuMjUwcycgLS0gJXMiCittc2dzdHIgIs+Dz4bOrM67zrzOsSDPg8+Nzr3PhM6xzr7Ot8+CIM+Dz4TOvyDOsc+Bz4fOtc6vzr8gzrXPgM65zrvOv86zz47OvSDOvM61zrjPjM60z4nOvSBgJS4yNTBzJyAtLSAlcyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcmVhZGluZyBvcHRpb25zIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIs+Dz4bOrM67zrzOsSDOsc69zqzOs869z4nPg863z4IgzrHPgc+HzrXOr86/z4UgzrXPgM65zrvOv86zz47OvSBgJS4yNTBzJyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgYCUuMjUwcycgZGlyZWN0b3J5IGZvciByZWFkaW5nIG1ldGhvZHMiCittc2dzdHIgIs6xzrTPjc69zrHPhM63IM63IM6xzr3OrM6zzr3Pic+Dzrcgz4TOv8+FIM66zrHPhM6xzrvPjM6zzr/PhSBgJS4yNTBzJyDOs865zrEgzrzOtc64z4zOtM6/z4XPgiDOsc69zqzOs869z4nPg863z4IiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjEwNgorIywgYy1mb3JtYXQKK21zZ2lkICJtZXRob2QgYCUuMjUwcycgaGFzIG5hbWUgdGhhdCBpcyB0b28gbG9uZyAoJWQgPiAlZCBjaGFyYWN0ZXJzKSIKK21zZ3N0ciAizrcgzrzOrc64zr/OtM6/z4IgYCUuMjUwcycgzq3Ph861zrkgz4DOv867z40gzrzOsc66z4HPjSDPjM69zr/OvM6xICglZCA+ICVkIM+HzrHPgc6xzrrPhM6uz4HOtc+CKSIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTE3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBhY2Nlc3MgbWV0aG9kIHNjcmlwdCBgJS4yNTBzJyIKK21zZ3N0ciAizrHOtM+Nzr3Osc+Ezrcgzrcgz4DPgc+Mz4POss6xz4POtyDPhM6/z4Ugz4POtc69zrHPgc6vzr/PhSDOvM61zrjPjM60zr/PhSBgJS4yNTBzJyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTIzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIG1ldGhvZCBvcHRpb25zIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIs6xzrTPjc69zrHPhM63IM63IM6xzr3OrM6zzr3Pic+Dzrcgz4TOv8+FIM6xz4HPh861zq/Ov8+FIM61z4DOuc67zr/Os8+Ozr0gzrzOtc64z4zOtM+Jzr0gYCUuMjUwcyciCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE0NworbXNnaWQgIm5vbi1kaWdpdCB3aGVyZSBkaWdpdCB3YW50ZWQiCittc2dzdHIgIs68zrcgz4jOt8+Gzq/OvyDPjM+Azr/PhSDOsc69zrHOvM61zr3PjM+EzrHOvSDPiM63z4bOr86/IgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNTAKK21zZ2lkICJFT0YgaW4gaW5kZXggc3RyaW5nIgorbXNnc3RyICJFT0Ygz4PPhM63IM+Dz4XOvM6yzr/Ou86/z4POtc65z4HOrCBpbmRleCIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTUzCittc2dpZCAiaW5kZXggc3RyaW5nIHRvbyBsb25nIgorbXNnc3RyICLPgM6/zrvPjSDOvM61zrPOrM67zrcgz4PPhc68zrLOv867zr/Pg861zrnPgc6sIGluZGV4ICIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTU2Cittc2dpZCAibmV3bGluZSBiZWZvcmUgb3B0aW9uIG5hbWUgc3RhcnQiCittc2dzdHIgIs+HzrHPgc6xzrrPhM6uz4HOsc+CIG5ld2xpbmUgz4DPgc65zr0gz4TOvyDPjM69zr/OvM6xIM61z4DOuc67zr/Os86uz4IiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE1OAorbXNnaWQgIkVPRiBiZWZvcmUgb3B0aW9uIG5hbWUgc3RhcnQiCittc2dzdHIgIkVPRiDPgM+BzrnOvSDPhM6/IM+Mzr3Ov868zrEgzrXPgM65zrvOv86zzq7PgiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTYyCittc2dpZCAibm9uYWxwaGEgd2hlcmUgb3B0aW9uIG5hbWUgc3RhcnQgd2FudGVkIgorbXNnc3RyICLOvM63IM6xzrvPhs6xzrLOt8+EzrnOus+Mz4Igz4fOsc+BzrHOus+Ezq7Pgc6xz4Igz4zPgM6/z4UgzrHOvc6xzrzOtc69z4zPhM6xzr0gz4zOvc6/zrzOsSDOtc+AzrnOu86/zrPOrs+CIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNjQKK21zZ2lkICJub24tYWxwaGFudW0gaW4gb3B0aW9uIG5hbWUiCittc2dzdHIgIs68zrcgzrHOu8+GzrHPgc65zrjOvM63z4TOuc66z4zPgiDPh86xz4HOsc66z4TOrs+BzrHPgiDPg8+Ezr8gz4zOvc6/zrzOsSDOtc+AzrnOu86/zrPOrs+CIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNjcKK21zZ2lkICJFT0YgaW4gb3B0aW9uIG5hbWUiCittc2dzdHIgIkVPRiDPg861IM+Mzr3Ov868zrEgzrXPgM65zrvOv86zzq7PgiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTcyCittc2dpZCAibmV3bGluZSBiZWZvcmUgc3VtbWFyeSIKK21zZ3N0ciAiz4fOsc+BzrHOus+Ezq7Pgc6xz4IgbmV3bGluZSDPgM+BzrnOvSDPhM63zr0gz4DOtc+Bzq/Ou863z4jOtyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTc0Cittc2dpZCAiRU9GIGJlZm9yZSBzdW1tYXJ5IgorbXNnc3RyICJFT0Ygz4DPgc65zr0gz4TOt869IM+AzrXPgc6vzrvOt8+IzrciCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE4MAorbXNnaWQgIkVPRiBpbiBzdW1tYXJ5IC0gbWlzc2luZyBuZXdsaW5lIgorbXNnc3RyICJFT0Ygz4PPhM63zr0gz4DOtc+Bzq/Ou863z4jOtyAtIM67zrXOr8+AzrXOuSDOvyDPh86xz4HOsc66z4TOrs+BzrHPgiBuZXdsaW5lIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gb3B0aW9uIGRlc2NyaXB0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIs6xzrTPjc69zrHPhM6/IM+Ezr8gzqzOvc6/zrnOs868zrEgz4TOv8+FIM6xz4HPh861zq/Ov8+FIM+AzrXPgc65zrPPgc6xz4bOrs+CIM61z4DOuc67zr/Os8+Ozr0gYCUuMjUwcyciCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE5NAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBvcHRpb24gZGVzY3JpcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAizrHOtM+Nzr3Osc+Ezr8gzrcgzrXPjc+BzrXPg863IM66zrHPhM6sz4PPhM6xz4POt8+CIM+Ezr/PhSDOsc+Bz4fOtc6vzr/PhSDPgM61z4HOuc6zz4HOsc+Gzq7PgiDOtc+AzrnOu86/zrPPjs69IGAlLjI1MHMnIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxOTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgb3B0aW9uIGRlc2NyaXB0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIs6xz4DOrc+Ez4XPh861IM63IM6xzr3OrM6zzr3Pic+Dzrcgz4TOv8+FIM6xz4HPh861zq/Ov8+FIM+AzrXPgc65zrPPgc6xz4bOrs+CIM61z4DOuc67zr/Os8+Ozr1gJS4yNTBzJyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MjAxCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGR1cmluZyByZWFkIG9mIG9wdGlvbiBkZXNjcmlwdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLPg8+GzqzOu868zrEgzrrOsc+Ezqwgz4TOt869IM6xzr3OrM6zzr3Pic+Dzrcgz4TOv8+FIM6xz4HPh861zq/Ov8+FIM+AzrXPgc65zrPPgc6xz4bOrs+CIM61z4DOuc67zr/Os8+Ozr0gYCUuMjUwcyciCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjIyNAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBkdXJpbmcgcmVhZCBvZiBtZXRob2Qgb3B0aW9ucyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLPg8+GzqzOu868zrEgzrrOsc+Ezqwgz4TOt869IM6xzr3OrM6zzr3Pic+Dzrcgz4TOv8+FIM6xz4HPh861zq/Ov8+FIM61z4DOuc67zr/Os8+Ozr0gzrzOtc64z4zOtM+Jzr0gYCUuMjUwcyciCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjI0NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBjdXJyZW50IG9wdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLOsc60z43Ovc6xz4TOvyDPhM6/IM6szr3Ov865zrPOvM6xIM+Ezr/PhSDPhM+Bzq3Ph86/zr3PhM6/z4IgzrHPgc+HzrXOr86/z4UgzrXPgM65zrvOv86zz47OvSBgJS4yNTBzJyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6Mjg5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIG5ldyBvcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAizrHOtM+Nzr3Osc+Ezr8gz4TOvyDOrM69zr/Ouc6zzrzOsSDPhM6/z4Ugzr3Orc6/z4UgzrHPgc+HzrXOr86/z4UgzrXPgM65zrvOv86zz47OvSBgJS4yNTBzJyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MjkyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgb3B0aW9uIHRvIGAlLjI1MHMnIgorbXNnc3RyICLOsc60z43Ovc6xz4TOtyDOtyDOtc6zzrPPgc6xz4bOriDOvc6tzrHPgiDOtc+AzrnOu86/zrPOrs+CIM+Dz4TOvyBgJS4yNTBzJyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6Mjk1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBuZXcgb3B0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIs6xzrTPjc69zrHPhM6/IM+Ezr8gzrrOu861zq/Pg865zrzOvyDPhM6/z4Ugzr3Orc6/z4UgzrHPgc+HzrXOr86/z4UgzrXPgM65zrvOv86zz47OvSBgJS4yNTBzJyAiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjI5NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgb3B0aW9uIGFzIGAlLjI1MHMnIgorbXNnc3RyICLOsc60z43Ovc6xz4TOtyDOtyDOtc6zzrrOsc+EzqzPg8+EzrHPg863IM69zq3Osc+CIM61z4DOuc67zr/Os86uz4Igz4nPgiBgJS4yNTBzJyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjM2Cittc2dpZCAibmV3IHBhY2thZ2UiCittc2dzdHIgIs69zq3OvyDPgM6xzrrOrc+Ezr8iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzozNworbXNnaWQgImluc3RhbGwiCittc2dzdHIgIs61zrPOus6xz4TOrM+Dz4TOsc+DzrciCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzozOAorbXNnaWQgImhvbGQiCittc2dzdHIgIs+Dz4XOs866z4HOrM+EzrfPg863IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MzkKK21zZ2lkICJyZW1vdmUiCittc2dzdHIgIs6xz4bOsc6vz4HOtc+DzrciCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo0MAorbXNnaWQgInB1cmdlIgorbXNnc3RyICLOtM65zrHOs8+BzrHPhs6uIgorCisjLiBUUkFOU0xBVE9SUzogVGhlIHNwYWNlIGlzIGEgdHJpY2sgdG8gd29yayBhcm91bmQgZ2V0dGV4dCB3aGljaCB1c2VzCisjLiAqIHRoZSBlbXB0eSBzdHJpbmcgdG8gc3RvcmUgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHRyYW5zbGF0aW9uLiBETyBOT1QKKyMuICogQ0hBTkdFIFRIQVQgSU4gQSBUUkFOU0xBVElPTiEgVGhlIGNvZGUgcmVhbGx5IHJlbGllcyBvbiB0aGF0IGJlaW5nCisjLiAqIGEgc2luZ2xlIHNwYWNlLgorIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjQ3Cittc2dpZCAiICIKK21zZ3N0ciAiICIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjQ4Cittc2dpZCAiUkVJTlNUQUxMIgorbXNnc3RyICLOlc6gzpHOnc6VzpPOms6RzqTOkc6jzqTOkc6jzpciCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1MQorbXNnaWQgIm5vdCBpbnN0YWxsZWQiCittc2dzdHIgIs60zrXOvSDOtc6vzr3Osc65IM61zrPOus6xz4TOtc+Dz4TOt868zq3Ovc6/IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTIKK21zZ2lkICJyZW1vdmVkIChjb25maWdzIHJlbWFpbikiCittc2dzdHIgIs6xz4bOsc65z4HOrc64zrfOus61ICjPgM6xz4HOsc68zq3Ovc6/z4XOvSDOv865IM+Bz4XOuM68zq/Pg861zrnPgikiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1MworbXNnaWQgImhhbGYgaW5zdGFsbGVkIgorbXNnc3RyICLOvM65z4PPjM61zrPOus6xz4TOtc+Dz4TOt868zq3Ovc6/IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTQKK21zZ2lkICJ1bnBhY2tlZCAobm90IHNldCB1cCkiCittc2dzdHIgIs6xz4DOv8+Dz4XOvM+AzrnOtc+DzrzOrc69zr8gKM+Mz4fOuSDPgc+FzrjOvM65z4POvM6tzr3OvykiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1NQorbXNnaWQgImhhbGYgY29uZmlndXJlZCAoY29uZmlnIGZhaWxlZCkiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjU2Cittc2dpZCAiYXdhaXRpbmcgdHJpZ2dlciBwcm9jZXNzaW5nIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1NworbXNnaWQgInRyaWdnZXJlZCIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTgKK21zZ2lkICJpbnN0YWxsZWQiCittc2dzdHIgIs61zrPOus6xz4TOtc+Dz4TOt868zq3Ovc6/IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjEKK21zZ2lkICJSZXF1aXJlZCIKK21zZ3N0ciAizpHPgM6xzrnPhM6/z43OvM61zr3OvyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjYyCittc2dpZCAiSW1wb3J0YW50IgorbXNnc3RyICLOo863zrzOsc69z4TOuc66z4wiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo2MworbXNnaWQgIlN0YW5kYXJkIgorbXNnc3RyICLOks6xz4POuc66z4wiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo2NAorbXNnaWQgIk9wdGlvbmFsIgorbXNnc3RyICLOoM+Bzr/Osc65z4HOtc+EzrnOus+MIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjUKK21zZ2lkICJFeHRyYSIKK21zZ3N0ciAizpXPgM65z4DOu86tzr/OvSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjY2Cittc2dpZCAiIUJ1ZyEiCittc2dzdHIgIiHPg8+GzqzOu868zrEhIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjcKK21zZ2lkICJVbmNsYXNzaWZpZWQiCittc2dzdHIgIs6Rz4TOsc6+zrnOvc+MzrzOt8+Ezr8iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3MAorbXNnaWQgInN1Z2dlc3RzIgorbXNnc3RyICLPgM+Bzr/PhM61zq/Ovc61zrkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3MQorbXNnaWQgInJlY29tbWVuZHMiCittc2dzdHIgIs+Dz4XPg8+Ezq7Ovc61zrkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3MgorbXNnaWQgImRlcGVuZHMgb24iCittc2dzdHIgIs61zr7Osc+Bz4TOrM+EzrHOuSDOsc+Az4wgIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzMKK21zZ2lkICJwcmUtZGVwZW5kcyBvbiIKK21zZ3N0ciAiz4DPgc6/zrXOvs6xz4HPhM6sz4TOsc65IM6xz4DPjCAiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3NAorbXNnaWQgImJyZWFrcyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzUKK21zZ2lkICJjb25mbGljdHMgd2l0aCIKK21zZ3N0ciAizrHPg8+NzrzOss6xz4TOvyDOvM61IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzYKK21zZ2lkICJwcm92aWRlcyIKK21zZ3N0ciAiz4DOsc+Bzq3Ph861zrkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3NworbXNnaWQgInJlcGxhY2VzIgorbXNnc3RyICLOsc69z4TOuc66zrHOuM65z4PPhM6sIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzgKK21zZ2lkICJlbmhhbmNlcyIKK21zZ3N0ciAizrXPgM61zrrPhM61zq/Ovc61zrkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4MQorbXNnaWQgIlJlcSIKK21zZ3N0ciAiUmVxIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODIKK21zZ2lkICJJbXAiCittc2dzdHIgIkltcCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjgzCittc2dpZCAiU3RkIgorbXNnc3RyICJTdGQiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4NAorbXNnaWQgIk9wdCIKK21zZ3N0ciAiT3B0IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODUKK21zZ2lkICJYdHIiCittc2dzdHIgIlh0ciIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjg2Cittc2dpZCAiYlVHIgorbXNnc3RyICJiVUciCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4NworbXNnaWQgIj8iCittc2dzdHIgIjsiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo5NSBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTE1Cittc2dpZCAiQnJva2VuIgorbXNnc3RyICLOms6xz4TOtc+Dz4TPgc6xzrzOvM6tzr3OvyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjk2Cittc2dpZCAiTmV3IgorbXNnc3RyICLOnc6tzr8iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo5NworbXNnaWQgIlVwZGF0ZWQiCittc2dzdHIgIs6Vzr3Ot868zrXPgc+JzrzOrc69zr8iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo5OAorbXNnaWQgIk9ic29sZXRlL2xvY2FsIgorbXNnc3RyICLOkc+AzrHPgc+HzrHOuc+JzrzOrc69zr8vz4TOv8+AzrnOus+MIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6OTkKK21zZ2lkICJVcC10by1kYXRlIgorbXNnc3RyICLOlc69zrfOvM61z4HPic68zq3Ovc6/IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTAwCittc2dpZCAiQXZhaWxhYmxlIgorbXNnc3RyICLOlM65zrHOuM6tz4POuc68zr8iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDEgZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExNworbXNnaWQgIlJlbW92ZWQiCittc2dzdHIgIs6Rz4bOsc65z4HOrc64zrfOus61IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTAyIGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTEKK21zZ2lkICJCcm9rZW5seSBpbnN0YWxsZWQgcGFja2FnZXMiCittc2dzdHIgIs6nzrHOu86xz4POvM6tzr3OsSDOus6xzrkgzrXOs866zrHPhM61z4PPhM63zrzOrc69zrEgz4DOsc66zq3PhM6xIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTAzCittc2dpZCAiTmV3bHkgYXZhaWxhYmxlIHBhY2thZ2VzIgorbXNnc3RyICLOnc6tzrEgzrTOuc6xzrjOrc+DzrnOvM6xIM+AzrHOus6tz4TOsSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwNAorbXNnaWQgIlVwZGF0ZWQgcGFja2FnZXMgKG5ld2VyIHZlcnNpb24gaXMgYXZhaWxhYmxlKSIKK21zZ3N0ciAizpXOvc63zrzOtc+Bz4nOvM6tzr3OsSDPgM6xzrrOrc+EzrEgKM69zrXPjs+EzrXPgc63IM6tzrrOtM6/z4POtyDOtc6vzr3Osc65IM60zrnOsc64zq3Pg865zrzOtykiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDUKK21zZ2lkICJPYnNvbGV0ZSBhbmQgbG9jYWwgcGFja2FnZXMgcHJlc2VudCBvbiBzeXN0ZW0iCittc2dzdHIgIs6Rz4DOsc+Bz4fOsc65z4nOvM6tzr3OsSDOus6xzrkgz4TOv8+AzrnOus6sIM+AzrHOus6tz4TOsSDPgM6/z4Ugz4XPgM6sz4HPh86/z4XOvSDPg8+Ezr8gz4PPjc+Dz4TOt868zrEiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDYKK21zZ2lkICJVcCB0byBkYXRlIGluc3RhbGxlZCBwYWNrYWdlcyIKK21zZ3N0ciAizpXOs866zrHPhM61z4PPhM63zrzOrc69zrEgz4DOsc66zq3PhM6xIM+DzrUgz4TPgc6tz4fOv8+Fz4POsSDOrc66zrTOv8+DzrciCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDcKK21zZ2lkICJBdmFpbGFibGUgcGFja2FnZXMgKG5vdCBjdXJyZW50bHkgaW5zdGFsbGVkKSIKK21zZ3N0ciAizpTOuc6xzrjOrc+DzrnOvM6xIM+AzrHOus6tz4TOsSAoz4DPgc6/z4Igz4TOvyDPgM6xz4HPjM69IM+Mz4fOuSDOtc6zzrrOsc+EzrXPg8+EzrfOvM6tzr3OsSkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDgKK21zZ2lkICJSZW1vdmVkIGFuZCBubyBsb25nZXIgYXZhaWxhYmxlIHBhY2thZ2VzIgorbXNnc3RyICLOoM6xzrrOrc+EzrEgz4DOv8+FIM6tz4fOv8+Fzr0gzrHPhs6xzrnPgc61zrjOtc6vIM66zrHOuSDOtM61zr0gzrXOr869zrHOuSDPgM67zq3Ov869IM60zrnOsc64zq3Pg865zrzOsSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExMgorbXNnaWQgIkluc3RhbGxlZCBwYWNrYWdlcyIKK21zZ3N0ciAizpXOs866zrHPhM61z4PPhM63zrzOrc69zrEgz4DOsc66zq3PhM6xIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTEzCittc2dpZCAiUmVtb3ZlZCBwYWNrYWdlcyAoY29uZmlndXJhdGlvbiBzdGlsbCBwcmVzZW50KSIKK21zZ3N0ciAizqDOsc66zq3PhM6xIM+Azr/PhSDOsc+GzrHOuc+Bzq3OuM63zrrOsc69ICjOv865IM+Bz4XOuM68zq/Pg861zrnPgiDPgM6xz4HOsc68zq3Ovc6/z4XOvSkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTQKK21zZ2lkICJQdXJnZWQgcGFja2FnZXMgYW5kIHRob3NlIG5ldmVyIGluc3RhbGxlZCIKK21zZ3N0ciAizpTOuc61zrPPgc6xzrzOvM6tzr3OsSDPgM6xzrrOrc+EzrEgzrrOsc64z47PgiDOus6xzrkgzrHPhc+Ezqwgz4DOv8+FIM+Azr/PhM6tIM60zrXOvSDOtc6zzrrOsc+EzrHPg8+EzqzOuM63zrrOsc69IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTE2Cittc2dpZCAiSW5zdGFsbGVkIgorbXNnc3RyICLOlc6zzrrOsc+EzrXPg8+EzrfOvM6tzr3OsSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExOAorbXNnaWQgIlB1cmdlZCIKK21zZ3N0ciAizpTOuc61zrPPgc6xzrzOvM6tzr3OsSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjE5OAorbXNnaWQgImRzZWxlY3QgLSByZWN1cnNpdmUgcGFja2FnZSBsaXN0aW5nIgorbXNnc3RyICJkc2VsZWN0IC0gzrHOvc6xzrTPgc6/zrzOuc66zq4gzrvOr8+Dz4TOsSDPgM6xzrrOrc+Ez4nOvSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjE5OQorbXNnaWQgImRzZWxlY3QgLSBpbnNwZWN0aW9uIG9mIHBhY2thZ2Ugc3RhdGVzIgorbXNnc3RyICJkc2VsZWN0IC0gzq3Ou861zrPPh86/z4IgzrrOsc+EzqzPg8+EzrHPg863z4Igz4TPic69IM+AzrHOus6tz4TPic69IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjAwCittc2dpZCAiZHNlbGVjdCAtIG1haW4gcGFja2FnZSBsaXN0aW5nIgorbXNnc3RyICJkc2VsZWN0IC0gzrXOvM+GzqzOvc65z4POtyDOus+Fz4HOr8+Jzr0gz4DOsc66zq3PhM+Jzr0iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMDgKK21zZ2lkICIgKGJ5IHNlY3Rpb24pIgorbXNnc3RyICIgKM6xzr3OrCDOtc69z4zPhM63z4TOsSkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMTEKK21zZ2lkICIgKGF2YWlsLiwgc2VjdGlvbikiCittc2dzdHIgIiAozrTOuc6xzrjOrc+DzrnOvM6/LCDOtc69z4zPhM63z4TOsSkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMTQKK21zZ2lkICIgKHN0YXR1cywgc2VjdGlvbikiCittc2dzdHIgIiAozrrOsc+EzqzPg8+EzrHPg863LCDOtc69z4zPhM63z4TOsSkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMjMKK21zZ2lkICIgKGJ5IHByaW9yaXR5KSIKK21zZ3N0ciAiICjOsc69zqwgz4DPgc6/z4TOtc+BzrHOuc+Mz4TOt8+EzrEpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjI2Cittc2dpZCAiIChhdmFpbC4sIHByaW9yaXR5KSIKK21zZ3N0ciAiICjOtM65zrHOuM6tz4POuc68zr8sIM+Az4HOv8+EzrXPgc6xzrnPjM+EzrfPhM6xKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIyOQorbXNnaWQgIiAoc3RhdHVzLCBwcmlvcml0eSkiCittc2dzdHIgIiAozrrOsc+EzqzPg8+EzrHPg863LCDPgM+Bzr/PhM61z4HOsc65z4zPhM63z4TOsSkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMzggZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI1MAorbXNnaWQgIiAoYWxwaGFiZXRpY2FsbHkpIgorbXNnc3RyICIgKM6xzrvPhs6xzrLOt8+EzrnOus6sKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI0MQorbXNnaWQgIiAoYnkgYXZhaWxhYmlsaXR5KSIKK21zZ3N0ciAiICjOsc69zqwgzrTOuc6xzrjOtc+DzrnOvM+Mz4TOt8+EzrEpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjQ0Cittc2dpZCAiIChieSBzdGF0dXMpIgorbXNnc3RyICIgKM6xzr3OrCDOus6xz4TOrM+Dz4TOsc+DzrcpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjU4Cittc2dpZCAiIG1hcms6Ky89Ly0gdGVyc2U6diBoZWxwOj8iCittc2dzdHIgIiDPg863zrzOtc6vz4nPg863OisvPS8tIM+Dz43Ovc+Ezr/OvM6xOnYgzrLOv86uzrjOtc65zrE6PyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI1OQorbXNnaWQgIiBtYXJrOisvPS8tIHZlcmJvc2U6diBoZWxwOj8iCittc2dzdHIgIiDPg863zrzOtc6vz4nPg863OisvPS8tIM6xzr3Osc67z4XPhM65zrrOrDp2IM6yzr/Ors64zrXOuc6xOj8iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNjAKK21zZ2lkICIgdGVyc2U6diBoZWxwOj8iCittc2dzdHIgIiDPg8+Nzr3PhM6/zrzOsTp2IM6yzr/Ors64zrXOuc6xOj8iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNjEKK21zZ2lkICIgdmVyYm9zZTp2IGhlbHA6PyIKK21zZ3N0ciAiIM6xzr3Osc67z4XPhM65zrrOrDogzrLOv86uzrjOtc65zrE6PyIKKworIzogZHNlbGVjdC9wa2dpbmZvLmNjOjgwCittc2dpZCAiIgorIlRoZSBsaW5lIHlvdSBoYXZlIGhpZ2hsaWdodGVkIHJlcHJlc2VudHMgbWFueSBwYWNrYWdlczsgaWYgeW91IGFzayB0byAiCisiaW5zdGFsbCwgcmVtb3ZlLCBob2xkLCBldGMuIGl0IHlvdSB3aWxsIGFmZmVjdCBhbGwgdGhlIHBhY2thZ2VzIHdoaWNoIG1hdGNoICIKKyJ0aGUgY3JpdGVyaW9uIHNob3duLlxuIgorIlxuIgorIklmIHlvdSBtb3ZlIHRoZSBoaWdobGlnaHQgdG8gYSBsaW5lIGZvciBhIHBhcnRpY3VsYXIgcGFja2FnZSB5b3Ugd2lsbCBzZWUgIgorImluZm9ybWF0aW9uIGFib3V0IHRoYXQgcGFja2FnZSBkaXNwbGF5ZWQgaGVyZS5cbiIKKyJZb3UgY2FuIHVzZSBgbycgYW5kIGBPJyB0byBjaGFuZ2UgdGhlIHNvcnQgb3JkZXIgYW5kIGdpdmUgeW91cnNlbGYgdGhlICIKKyJvcHBvcnR1bml0eSB0byBtYXJrIHBhY2thZ2VzIGluIGRpZmZlcmVudCBraW5kcyBvZiBncm91cHMuIgorbXNnc3RyICIiCisizpcgzrPPgc6xzrzOvM6uIM+Azr/PhSDPhM6/zr3Or8+DzrHPhM61IM6xzr3PhM65z4DPgc6/z4PPic+AzrXPjc61zrkgz4DOv867zrvOrCDPgM6xzrrOrc+EzrEuIM6Rzr0gzrbOt8+Ezq7Pg861z4TOtSDOtc6zzrrOsc+EzqzPg8+EzrHPg863LCAiCisizrHPhs6xzq/Pgc61z4POtywgzrrPgc6sz4TOt8+DzrcsIM66zrvPgC4gzrjOsSDOtc+AzrfPgc61zrHPg8+Ezr/Pjc69IM+MzrvOsSDPhM6xIM+AzrHOus6tz4TOsSDPgM6/z4Ugz4TOsc65z4HOuc6szrbOv8+Fzr0gzrzOtSDPhM6/ICIKKyLOus+BzrnPhM6uz4HOuc6/IM+Azr/PhSDOtc68z4bOsc69zq/Ots6/zr3PhM6xzrkuXG4iCisiXG4iCisizpHOvSDOvM61z4TOsc66zrnOvc6uz4POtc+EzrUgz4TOv869IM+Ezr/Ovc65z4POvM+MIM+DzrUgzrzOuc6xIM6zz4HOsc68zrzOriDOs865zrEgzq3Ovc6xIM6+zrXPh8+Jz4HOuc+Dz4TPjCDPgM6xzrrOrc+Ezr8gzrjOsSDOtM61zq/PhM61ICIKKyLPgM67zrfPgc6/z4bOv8+Bzq/Otc+CIM+Dz4fOtc+EzrnOus6sIM68zrUgz4TOvyDPgM6xzrrOrc+Ezr8gz4DOv8+FIM61zrzPhs6xzr3Or862zrXPhM6xzrkgzrXOtM+OLlxuIgorIs6nz4HOt8+DzrnOvM6/z4DOv865zq7Pg8+EzrUgz4TOvyBgbycgzrrOsc65IM+Ezr8gYE8nIM6zzrnOsSDOvc6xIM6xzrvOu86szr7Otc+EzrUgz4TOtyDPg861zrnPgc6sIM+EzrHOvs65zr3PjM68zrfPg863z4IgzrrOsc65IM69zrEgIgorIs61z4DOuc67zq3Ovs61z4TOtSDPgM6xzrrOrc+EzrEgzrHPgM+MIM6/zrzOrM60zrXPgiDOtM65zrHPhs6/z4HOtc+EzrnOus+Ozr0gzrXOuc60z47OvS4iCisKKyM6IGRzZWxlY3QvcGtnaW5mby5jYzo5MworIywgZnV6enkKK21zZ2lkICJJbnRlcnJlbGF0aW9uc2hpcHMiCittc2dzdHIgIs61z4PPic+EzrXPgc65zrrOrc+CIM+Dz4XPg8+HzrXPhM6vz4POtc65z4IiCisKKyM6IGRzZWxlY3QvcGtnaW5mby5jYzoxMTIKKyMsIGZ1enp5Cittc2dpZCAiTm8gZGVzY3JpcHRpb24gYXZhaWxhYmxlLiIKK21zZ3N0ciAizrrOsc68zq/OsSDOtM65zrHOuM6tz4POuc68zrcgz4DOtc+BzrnOs8+BzrHPhs6uLiIKKworIzogZHNlbGVjdC9wa2dpbmZvLmNjOjEzMAorIywgZnV6enkKK21zZ2lkICJJbnN0YWxsZWQgY29udHJvbCBmaWxlIGluZm9ybWF0aW9uIgorbXNnc3RyICLOtc6zzrrOsc+EzrXPg8+EzrfOvM6tzr3OtyDPgM67zrfPgc6/z4bOv8+Bzq/OsSDOtc67zq3Os8+Hzr/PhSDOs865zrEgz4TOvyAiCisKKyM6IGRzZWxlY3QvcGtnaW5mby5jYzoxNDYKKyMsIGZ1enp5Cittc2dpZCAiQXZhaWxhYmxlIGNvbnRyb2wgZmlsZSBpbmZvcm1hdGlvbiIKK21zZ3N0ciAizrTOuc6xzrjOrc+DzrnOvM63IM6tzrrOtM6/z4POtyDPgM67zrfPgc6/z4bOv8+Bzq/Osc+CIM61zrvOrc6zz4fOv8+FIM6xz4HPh861zq/Ov8+FIgorCisjOiBkc2VsZWN0L3BrZ2xpc3QuY2M6NDE2Cittc2dpZCAiVGhlcmUgYXJlIG5vIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2xpc3QuY2M6NTA3Cittc2dpZCAiaW52YWxpZCBzZWFyY2ggb3B0aW9uIGdpdmVuIgorbXNnc3RyICLOtM+MzrjOt866zrUgzqzOus+Fz4HOtyDPgM6xz4HOrM68zrXPhM+Bzr/PgiDOsc69zrHOts6uz4TOt8+DzrfPgiIKKworIzogZHNlbGVjdC9wa2dsaXN0LmNjOjUyMQorbXNnaWQgImVycm9yIGluIHJlZ3VsYXIgZXhwcmVzc2lvbiIKK21zZ3N0ciAiz4PPhs6szrvOvM6xIM+Dz4TOt869IM66zrHOvc6/zr3Ouc66zq4gzq3Ous+Gz4HOsc+DzrciCisKKyM6IGRzZWxlY3QvcGtnc3VibGlzdC5jYzoxMDcKK21zZ2lkICIgZG9lcyBub3QgYXBwZWFyIHRvIGJlIGF2YWlsYWJsZVxuIgorbXNnc3RyICIgzrTOtSDPhs6xzq/Ovc61z4TOsc65IM69zrEgzrXOr869zrHOuSDOtM65zrHOuM6tz4POuc68zr9cbiIKKworIzogZHNlbGVjdC9wa2dzdWJsaXN0LmNjOjEyNworbXNnaWQgIiBvciAiCittc2dzdHIgIiDOriAiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjU3Cittc2dpZCAiQWxsIgorbXNnc3RyICLOjM67zrEiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjc5Cittc2dpZCAiQWxsIHBhY2thZ2VzIgorbXNnc3RyICLOjM67zrEgz4TOsSDPgM6xzrrOrc+EzrEiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHBhY2thZ2VzIHdpdGhvdXQgYSBzZWN0aW9uIgorbXNnc3RyICIlcyDPgM6xzrrOrc+EzrEgz4fPic+Bzq/PgiDPhM6/zrzOrc6xIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo4NQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBwYWNrYWdlcyBpbiBzZWN0aW9uICVzIgorbXNnc3RyICIlcyDPgM6xzrrOrc+EzrEgz4PPhM6/zr0gz4TOv868zq3OsSAlcyIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6OTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgJXMgcGFja2FnZXMiCittc2dzdHIgIiVzICVzIM+AzrHOus6tz4TOsSIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgJXMgcGFja2FnZXMgd2l0aG91dCBhIHNlY3Rpb24iCittc2dzdHIgIiVzICVzIM+AzrHOus6tz4TOsSDPh8+Jz4HOr8+CIM+Ezr/OvM6tzrEiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjk3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzICVzIHBhY2thZ2VzIGluIHNlY3Rpb24gJXMiCittc2dzdHIgIiVzICVzIM+AzrHOus6tz4TOsSDPg8+Ezr/OvSDPhM6/zrzOrc6xICVzIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoxMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJS0qcyAlcyVzJXM7ICAlcyAod2FzOiAlcykuICAlcyIKK21zZ3N0ciAiJS0qcyAlcyVzJXM7ICAlcyAozq7PhM6xzr06ICVzKS4gICVzIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyNjMKK21zZ2lkICJFcnJvciIKK21zZ3N0ciAizqPPhs6szrvOvM6xIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyNjcKK21zZ2lkICJJbnN0YWxsZWQ/IgorbXNnc3RyICLOlc6zzrrOsc+EzrXPg8+EzrfOvM6tzr3OvzsiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI3MQorbXNnaWQgIk9sZCBtYXJrIgorbXNnc3RyICLOoM6xzrvOsc65zqwgz4POrs68zrHOvc+DzrciCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI3NQorbXNnaWQgIk1hcmtlZCBmb3IiCittc2dzdHIgIs6jzrfOvM61zrnPjs64zrfOus61IM6zzrnOsSIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6Mjc4Cittc2dpZCAiRUlPTSIKK21zZ3N0ciAiRUlPTSIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6MjgwCittc2dpZCAiU2VjdGlvbiIKK21zZ3N0ciAizqTOv868zq3Osc+CIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyODEKK21zZ2lkICJQcmlvcml0eSIKK21zZ3N0ciAizqDPgc6/z4TOtc+BzrHOuc+Mz4TOt8+EzrEiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI4MgorbXNnaWQgIlBhY2thZ2UiCittc2dzdHIgIs6gzrHOus6tz4TOvyIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6Mjg2Cittc2dpZCAiSW5zdC52ZXIiCittc2dzdHIgIs6IzrrOtC7Otc6zzrouIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyODkKK21zZ2lkICJBdmFpbC52ZXIiCittc2dzdHIgIs6UzrnOsc64Ls61zrrOtM+Mz4POtc65z4IiCisKKyN+IG1zZ2lkICJyZXR1cm5lZCBlcnJvciBleGl0IHN0YXR1cyAlZC5cbiIKKyN+IG1zZ3N0ciAizrXPgM65z4PPhM+BzqzPhs63zrrOtSDOus+JzrTOuc66z4zPgiDPg8+GzqzOu868zrHPhM6/z4IgJWQuXG4iCisKKyN+IG1zZ2lkICJ3YXMgaW50ZXJydXB0ZWQuXG4iCisjfiBtc2dzdHIgIs60zrnOsc66z4zPgM63zrrOtS5cbiIKKworI34gbXNnaWQgIndhcyB0ZXJtaW5hdGVkIGJ5IGEgc2lnbmFsOiAlcy5cbiIKKyN+IG1zZ3N0ciAiz4TOtc+BzrzOsc+Ezq/Pg8+EzrfOus61IM6xz4DPjCDOrc69zrEgz4POrs68zrE6ICVzLlxuIgorCisjfiBtc2dpZCAiKEl0IGxlZnQgYSBjb3JlZHVtcC4pXG4iCisjfiBtc2dzdHIgIijOrM+GzrfPg861IM6tzr3OsSBjb3JlZHVtcC4pXG4iCisKKyN+IG1zZ2lkICJmYWlsZWQgd2l0aCBhbiB1bmtub3duIHdhaXQgcmV0dXJuIGNvZGUgJWQuXG4iCisjfiBtc2dzdHIgIs6xz4DOrc+Ez4XPh861IM68zrUgzqzOs869z4nPg8+Ezr8gzrrPic60zrnOus+MIM61z4DOuc+Dz4TPgc6/z4bOrs+CIM+EzrfPgiB3YWl0ICVkLlxuIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHJ1biAlLjI1MHMgcHJvY2VzcyBgJS4yNTBzJyIKKyN+IG1zZ3N0ciAizrHOtM+Nzr3Osc+EzrcgzrcgzrXOus+Ezq3Ou861z4POtyAlLjI1MHMgzrTOuc61z4HOs86xz4POr86xIGAlLjI1MHMnIgorCisjfiBtc2dpZCAiZmFpbGVkIGNvbmZpZyIKKyN+IG1zZ3N0ciAizrHPgM6tz4TPhc+HzrUgzrcgz4HPjc64zrzOuc+DzrciCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gd2FpdCBmb3IgJS4yNTBzIgorI34gbXNnc3RyICLOsc60z43Ovc6xz4TOtyDOtyDOsc69zrHOvM6/zr3OriDOs865zrEgJS4yNTBzIgorCisjfiBtc2dpZCAiZ290IHdyb25nIGNoaWxkJ3Mgc3RhdHVzIC0gYXNrZWQgZm9yICVsZCwgZ290ICVsZCIKKyN+IG1zZ3N0ciAiIgorI34gIs67zq7Phs64zrfOus61IM67zqzOuM6/z4IgzrrOsc+EzqzPg8+EzrHPg863IM64z4XOs86xz4TPgc65zrrOrs+CIM60zrnOtc+BzrPOsc+Dzq/Osc+CIC0gzrbOt8+Ezq7OuM63zrrOtSAlbGQsIM67zq7Phs64zrfOus61ICVsZCIKKworI34gbXNnaWQgIlJlY29tbWVuZGVkIgorI34gbXNnc3RyICLOo8+Fzr3Ouc+Dz4TPjs68zrXOvc6/IgorCisjfiBtc2dpZCAiQ29udHJpYiIKKyN+IG1zZ3N0ciAizqPPhc69zrXOuc+Dz4bOtc+Bz4zOvM61zr3OvyIKKworI34gbXNnaWQgIlJlYyIKKyN+IG1zZ3N0ciAiUmVjIgorCisjfiBtc2dpZCAiQ3RiIgorI34gbXNnc3RyICJDdGIiCisKKyN+IG1zZ2lkICIiCisjfiAiYmFzZWxpc3Q6OnN0YXJ0ZGlzcGxheSgpIGRvbmUgLi4uXG4iCisjfiAiXG4iCisjfiAiIHhtYXg9JWQsIHltYXg9JWQ7XG4iCisjfiAiXG4iCisjfiAiIHRpdGxlX2hlaWdodD0lZCwgY29saGVhZHNfaGVpZ2h0PSVkLCBsaXN0X2hlaWdodD0lZDtcbiIKKyN+ICIgdGhpc3N0YXRlX2hlaWdodD0lZCwgaW5mb19oZWlnaHQ9JWQsIHdoYXRpbmZvX2hlaWdodD0lZDtcbiIKKyN+ICJcbiIKKyN+ICIgY29saGVhZHNfcm93PSVkLCB0aGlzc3RhdGVfcm93PSVkLCBpbmZvX3Jvdz0lZDtcbiIKKyN+ICIgd2hhdGluZm9fcm93PSVkLCBsaXN0X3Jvdz0lZDtcbiIKKyN+ICJcbiIKKyN+IG1zZ3N0ciAiIgorI34gImJhc2VsaXN0OjpzdGFydGRpc3BsYXkoKSBkb25lIC4uLlxuIgorI34gIlxuIgorI34gIiB4bWF4PSVkLCB5bWF4PSVkO1xuIgorI34gIlxuIgorI34gIiB0aXRsZV9oZWlnaHQ9JWQsIGNvbGhlYWRzX2hlaWdodD0lZCwgbGlzdF9oZWlnaHQ9JWQ7XG4iCisjfiAiIHRoaXNzdGF0ZV9oZWlnaHQ9JWQsIGluZm9faGVpZ2h0PSVkLCB3aGF0aW5mb19oZWlnaHQ9JWQ7XG4iCisjfiAiXG4iCisjfiAiIGNvbGhlYWRzX3Jvdz0lZCwgdGhpc3N0YXRlX3Jvdz0lZCwgaW5mb19yb3c9JWQ7XG4iCisjfiAiIHdoYXRpbmZvX3Jvdz0lZCwgbGlzdF9yb3c9JWQ7XG4iCisjfiAiXG4iCisKKyN+IG1zZ2lkICJbbm9uZV0iCisjfiBtc2dzdHIgIlvOus6xzr3Orc69zrFdIgorCisjfiBtc2dpZCAiZXJyb3IgdW4tY2F0Y2hpbmcgc2lnbmFsICVkOiAlc1xuIgorI34gbXNnc3RyICLPg8+GzqzOu868zrEgzrXOu861z4XOuM6tz4HPic+DzrfPgiDPg86uzrzOsc+Ezr/PgiAlZDogJXNcbiIKKworI34gbXNnaWQgInVuYWJsZSB0byBpZ25vcmUgc2lnbmFsICVkIGJlZm9yZSBydW5uaW5nICUuMjUwcyIKKyN+IG1zZ3N0ciAizrHOtM+Nzr3Osc+Ezr8gzr3OsSDOsc6zzr3Ov863zrjOtc6vIM+Ezr8gz4POrs68zrEgJWQgz4DPgc65zr0gz4TOt869IM61zrrPhM6tzrvOtc+Dzrcgz4TOv8+FICUuMjUwcyIKKworI34gbXNnaWQgIihubyBjbGllbnRkYXRhKSIKKyN+IG1zZ3N0ciAiKM+Hz4nPgc6vz4IgY2xpZW50ZGF0YSkiCisKKyN+IG1zZ2lkICI8bnVsbD4iCisjfiBtc2dzdHIgIjzOus61zr3PjD4iCisKKyN+IG1zZ2lkICJpbnRlcnJlbGF0aW9uc2hpcHMgYWZmZWN0aW5nICIKKyN+IG1zZ3N0ciAizrXPg8+Jz4TOtc+BzrnOus6tz4Igz4PPhc+Dz4fOtc+Ezq/Pg861zrnPgiDOtc+AzrfPgc61zqzOts6/z4XOvSDPhM6/IgorCisjfiBtc2dpZCAiZGVzY3JpcHRpb24gb2YgIgorI34gbXNnc3RyICLPgM61z4HOuc6zz4HOsc+Gzq4gz4TOv8+FICIKKworI34gbXNnaWQgImRlc2NyaXB0aW9uIgorI34gbXNnc3RyICLPgM61z4HOuc6zz4HOsc+Gzq4iCisKKyN+IG1zZ2lkICJjdXJyZW50bHkgaW5zdGFsbGVkIGNvbnRyb2wgaW5mbyIKKyN+IG1zZ3N0ciAiz4TPgc6tz4fOv8+Fz4POsSDOtc6zzrrOsc+EzrXPg8+EzrfOvM6tzr3OtyDPgM67zrfPgc6/z4bOv8+Bzq/OsSDOtc67zq3Os8+Hzr/PhSIKKworI34gbXNnaWQgImF2YWlsYWJsZSB2ZXJzaW9uIG9mIGNvbnRyb2wgaW5mbyBmb3IgIgorI34gbXNnc3RyICLOtM65zrHOuM6tz4POuc68zrcgzq3Ous60zr/Pg863IM+AzrvOt8+Bzr/Phs6/z4HOr86xz4IgzrXOu86tzrPPh86/z4UgzrPOuc6xIM+Ezr8iCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vZW5AYm9sZHF1b3QuaGVhZGVyIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL2VuQGJvbGRxdW90LmhlYWRlcgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mZWRiNmEwCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL2VuQGJvbGRxdW90LmhlYWRlcgpAQCAtMCwwICsxLDI1IEBACisjIEFsbCB0aGlzIGNhdGFsb2cgInRyYW5zbGF0ZXMiIGFyZSBxdW90YXRpb24gY2hhcmFjdGVycy4KKyMgVGhlIG1zZ2lkcyBtdXN0IGJlIEFTQ0lJIGFuZCB0aGVyZWZvcmUgY2Fubm90IGNvbnRhaW4gcmVhbCBxdW90YXRpb24KKyMgY2hhcmFjdGVycywgb25seSBzdWJzdGl0dXRlcyBsaWtlIGdyYXZlIGFjY2VudCAoMHg2MCksIGFwb3N0cm9waGUgKDB4MjcpCisjIGFuZCBkb3VibGUgcXVvdGUgKDB4MjIpLiBUaGVzZSBzdWJzdGl0dXRlcyBsb29rIHN0cmFuZ2U7IHNlZQorIyBodHRwOi8vd3d3LmNsLmNhbS5hYy51ay9+bWdrMjUvdWNzL3F1b3Rlcy5odG1sCisjCisjIFRoaXMgY2F0YWxvZyB0cmFuc2xhdGVzIGdyYXZlIGFjY2VudCAoMHg2MCkgYW5kIGFwb3N0cm9waGUgKDB4MjcpIHRvCisjIGxlZnQgc2luZ2xlIHF1b3RhdGlvbiBtYXJrIChVKzIwMTgpIGFuZCByaWdodCBzaW5nbGUgcXVvdGF0aW9uIG1hcmsgKFUrMjAxOSkuCisjIEl0IGFsc28gdHJhbnNsYXRlcyBwYWlycyBvZiBhcG9zdHJvcGhlICgweDI3KSB0bworIyBsZWZ0IHNpbmdsZSBxdW90YXRpb24gbWFyayAoVSsyMDE4KSBhbmQgcmlnaHQgc2luZ2xlIHF1b3RhdGlvbiBtYXJrIChVKzIwMTkpCisjIGFuZCBwYWlycyBvZiBxdW90YXRpb24gbWFyayAoMHgyMikgdG8KKyMgbGVmdCBkb3VibGUgcXVvdGF0aW9uIG1hcmsgKFUrMjAxQykgYW5kIHJpZ2h0IGRvdWJsZSBxdW90YXRpb24gbWFyayAoVSsyMDFEKS4KKyMKKyMgV2hlbiBvdXRwdXQgdG8gYW4gVVRGLTggdGVybWluYWwsIHRoZSBxdW90YXRpb24gY2hhcmFjdGVycyBhcHBlYXIgcGVyZmVjdGx5LgorIyBXaGVuIG91dHB1dCB0byBhbiBJU08tODg1OS0xIHRlcm1pbmFsLCB0aGUgc2luZ2xlIHF1b3RhdGlvbiBtYXJrcyBhcmUKKyMgdHJhbnNsaXRlcmF0ZWQgdG8gYXBvc3Ryb3BoZXMgKGJ5IGljb252IGluIGdsaWJjIDIuMiBvciBuZXdlcikgb3IgdG8KKyMgZ3JhdmUvYWN1dGUgYWNjZW50IChieSBsaWJpY29udiksIGFuZCB0aGUgZG91YmxlIHF1b3RhdGlvbiBtYXJrcyBhcmUKKyMgdHJhbnNsaXRlcmF0ZWQgdG8gMHgyMi4KKyMgV2hlbiBvdXRwdXQgdG8gYW4gQVNDSUkgdGVybWluYWwsIHRoZSBzaW5nbGUgcXVvdGF0aW9uIG1hcmtzIGFyZQorIyB0cmFuc2xpdGVyYXRlZCB0byBhcG9zdHJvcGhlcywgYW5kIHRoZSBkb3VibGUgcXVvdGF0aW9uIG1hcmtzIGFyZQorIyB0cmFuc2xpdGVyYXRlZCB0byAweDIyLgorIworIyBUaGlzIGNhdGFsb2cgZnVydGhlcm1vcmUgZGlzcGxheXMgdGhlIHRleHQgYmV0d2VlbiB0aGUgcXVvdGF0aW9uIG1hcmtzIGluCisjIGJvbGQgZmFjZSwgYXNzdW1pbmcgdGhlIFZUMTAwL1hUZXJtIGVzY2FwZSBzZXF1ZW5jZXMuCisjCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vZW5AcXVvdC5oZWFkZXIgYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vZW5AcXVvdC5oZWFkZXIKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTk2NDdmYwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9lbkBxdW90LmhlYWRlcgpAQCAtMCwwICsxLDIyIEBACisjIEFsbCB0aGlzIGNhdGFsb2cgInRyYW5zbGF0ZXMiIGFyZSBxdW90YXRpb24gY2hhcmFjdGVycy4KKyMgVGhlIG1zZ2lkcyBtdXN0IGJlIEFTQ0lJIGFuZCB0aGVyZWZvcmUgY2Fubm90IGNvbnRhaW4gcmVhbCBxdW90YXRpb24KKyMgY2hhcmFjdGVycywgb25seSBzdWJzdGl0dXRlcyBsaWtlIGdyYXZlIGFjY2VudCAoMHg2MCksIGFwb3N0cm9waGUgKDB4MjcpCisjIGFuZCBkb3VibGUgcXVvdGUgKDB4MjIpLiBUaGVzZSBzdWJzdGl0dXRlcyBsb29rIHN0cmFuZ2U7IHNlZQorIyBodHRwOi8vd3d3LmNsLmNhbS5hYy51ay9+bWdrMjUvdWNzL3F1b3Rlcy5odG1sCisjCisjIFRoaXMgY2F0YWxvZyB0cmFuc2xhdGVzIGdyYXZlIGFjY2VudCAoMHg2MCkgYW5kIGFwb3N0cm9waGUgKDB4MjcpIHRvCisjIGxlZnQgc2luZ2xlIHF1b3RhdGlvbiBtYXJrIChVKzIwMTgpIGFuZCByaWdodCBzaW5nbGUgcXVvdGF0aW9uIG1hcmsgKFUrMjAxOSkuCisjIEl0IGFsc28gdHJhbnNsYXRlcyBwYWlycyBvZiBhcG9zdHJvcGhlICgweDI3KSB0bworIyBsZWZ0IHNpbmdsZSBxdW90YXRpb24gbWFyayAoVSsyMDE4KSBhbmQgcmlnaHQgc2luZ2xlIHF1b3RhdGlvbiBtYXJrIChVKzIwMTkpCisjIGFuZCBwYWlycyBvZiBxdW90YXRpb24gbWFyayAoMHgyMikgdG8KKyMgbGVmdCBkb3VibGUgcXVvdGF0aW9uIG1hcmsgKFUrMjAxQykgYW5kIHJpZ2h0IGRvdWJsZSBxdW90YXRpb24gbWFyayAoVSsyMDFEKS4KKyMKKyMgV2hlbiBvdXRwdXQgdG8gYW4gVVRGLTggdGVybWluYWwsIHRoZSBxdW90YXRpb24gY2hhcmFjdGVycyBhcHBlYXIgcGVyZmVjdGx5LgorIyBXaGVuIG91dHB1dCB0byBhbiBJU08tODg1OS0xIHRlcm1pbmFsLCB0aGUgc2luZ2xlIHF1b3RhdGlvbiBtYXJrcyBhcmUKKyMgdHJhbnNsaXRlcmF0ZWQgdG8gYXBvc3Ryb3BoZXMgKGJ5IGljb252IGluIGdsaWJjIDIuMiBvciBuZXdlcikgb3IgdG8KKyMgZ3JhdmUvYWN1dGUgYWNjZW50IChieSBsaWJpY29udiksIGFuZCB0aGUgZG91YmxlIHF1b3RhdGlvbiBtYXJrcyBhcmUKKyMgdHJhbnNsaXRlcmF0ZWQgdG8gMHgyMi4KKyMgV2hlbiBvdXRwdXQgdG8gYW4gQVNDSUkgdGVybWluYWwsIHRoZSBzaW5nbGUgcXVvdGF0aW9uIG1hcmtzIGFyZQorIyB0cmFuc2xpdGVyYXRlZCB0byBhcG9zdHJvcGhlcywgYW5kIHRoZSBkb3VibGUgcXVvdGF0aW9uIG1hcmtzIGFyZQorIyB0cmFuc2xpdGVyYXRlZCB0byAweDIyLgorIwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL2VzLmdtbyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9lcy5nbW8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjFiZmQ2ZgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9lcy5nbW8KQmluYXJ5IGZpbGVzIGRpZmZlcgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL2VzLnBvIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL2VzLnBvCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmViMDQ5NTIKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vZXMucG8KQEAgLTAsMCArMSwxODE3IEBACisjIGRzZWxlY3QgbWVzc2FnZXMgdHJhbnNsYXRpb24gZm9yIERlYmlhbgorIyAJTWVuc2FqZXMgZW4gZXNwYcOxb2wgcGFyYSBEZWJpYW4gZHNlbGVjdC4KKyMKKyMgQ29weXJpZ2h0IMKpIDE5OTktMjAxMCBTb2Z0d2FyZSBpbiB0aGUgUHVibGljIEludGVyZXN0LgorIyBUaGlzIGZpbGUgaXMgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIHNhbWUgbGljZW5zZSBhcyB0aGUgZHBrZyBwYWNrYWdlLgorIworIworIyAgIC0gVHJhbnNsYXRpb24gbWFpbnRhaW5lcjoKKyMgICAgIEphdmllciBGZXJuw6FuZGV6LVNhbmd1aW5vIFBlw7FhIDxqZnNAY29tcHV0ZXIub3JnPiwgMjAwMCwgMjAxMAorIworIyAgIC0gUHJldmlvdXMgdHJhbnNsYXRvcnMgYW5kIHJldmlld2VyczoKKyMgICAgIAlOaWNvbMOhcyBMaWNodG1haWVyIDxuaWNrQGRlYmlhbi5vcmc+LCAxOTk5LgorIyAgICAgCVRpbmd1YXJvIEJhcnJlbm8gRGVsZ2FkbyA8dGJhcnJlbm9AZGViaWFuLm9yZz4sIDE5OTkuCisjIAlUb23DoXMgQmF1dGlzdGEgPGJhdXRpc3RhQGNtYS51bHBnYy5lcz4sIDIwMDAuCisjICAgICAgICBTYW50aWFnbyBWaWxhIDxzYW52aWxhQGRlYmlhbi5vcmc+LCAyMDAwLCAyMDAxLCAyMDA0LgorIworIworIyAgIFRyYWR1Y3RvcmVzLCBzaSBubyBjb25vY2UgZWwgZm9ybWF0byBQTywgbWVyZWNlIGxhIHBlbmEgbGVlciBsYSAKKyMgICBkb2N1bWVudGFjacOzbiBkZSBnZXR0ZXh0LCBlc3BlY2lhbG1lbnRlIGxhcyBzZWNjaW9uZXMgZGVkaWNhZGFzIGEgZXN0ZQorIyAgIGZvcm1hdG8sIHBvciBlamVtcGxvIGVqZWN1dGFuZG86CisjICAgICAgICAgIGluZm8gLW4gJyhnZXR0ZXh0KVBPIEZpbGVzJworIyAgICAgICAgICBpbmZvIC1uICcoZ2V0dGV4dClIZWFkZXIgRW50cnknCisjCisjICBFcXVpcG8gZGUgdHJhZHVjY2nDs24gYWwgZXNwYcOxb2wsIHBvciBmYXZvciBsZWFuIGFudGVzIGRlIHRyYWR1Y2lyCisjICBsb3Mgc2lndWllbnRlcyBkb2N1bWVudG9zOgorIworIyAgLSBFbCBwcm95ZWN0byBkZSB0cmFkdWNjacOzbiBkZSBEZWJpYW4gYWwgZXNwYcOxb2wKKyMgICAgaHR0cDovL3d3dy5kZWJpYW4ub3JnL2ludGwvc3BhbmlzaC8KKyMgICAgZXNwZWNpYWxtZW50ZSBsYXMgbm90YXMgeSBub3JtYXMgZGUgdHJhZHVjY2nDs24gZW4KKyMgICAgaHR0cDovL3d3dy5kZWJpYW4ub3JnL2ludGwvc3BhbmlzaC9ub3RhcworIworIyAgLSBMYSBndcOtYSBkZSB0cmFkdWNjacOzbiBkZSBwbydzIGRlIGRlYmNvbmY6CisjICAgIC91c3Ivc2hhcmUvZG9jL3BvLWRlYmNvbmYvUkVBRE1FLXRyYW5zCisjICAgIG8gaHR0cDovL3d3dy5kZWJpYW4ub3JnL2ludGwvbDEwbi9wby1kZWJjb25mL1JFQURNRS10cmFucworIworIyAgU2kgdGllbmUgZHVkYXMgbyBjb25zdWx0YXMgc29icmUgZXN0YSB0cmFkdWNjacOzbiBjb25zdWx0ZSBjb24gZWwgw7psdGltbworIyAgdHJhZHVjdG9yIChjYW1wbyBMYXN0LVRyYW5zbGF0b3IpIHkgcG9uZ2EgZW4gY29waWEgYSBsYSBsaXN0YSBkZQorIyAgdHJhZHVjY2nDs24gZGUgRGViaWFuIGFsIGVzcGHDsW9sICg8ZGViaWFuLWwxMG4tc3BhbmlzaEBsaXN0cy5kZWJpYW4ub3JnPikKKyMKK21zZ2lkICIiCittc2dzdHIgIiIKKyJQcm9qZWN0LUlkLVZlcnNpb246IERlYmlhbiBkcGtnIDEuMTZcbiIKKyJSZXBvcnQtTXNnaWQtQnVncy1UbzogZGViaWFuLWRwa2dAbGlzdHMuZGViaWFuLm9yZ1xuIgorIlBPVC1DcmVhdGlvbi1EYXRlOiAyMDExLTEwLTE0IDA3OjExKzAyMDBcbiIKKyJQTy1SZXZpc2lvbi1EYXRlOiAyMDEwLTEyLTIwIDAzOjEwKzAxMDBcbiIKKyJMYXN0LVRyYW5zbGF0b3I6IEphdmllciBGZXJuw6FuZGV6LVNhbmd1aW5vIDxqZnNAZGViaWFuLm9yZz5cbiIKKyJMYW5ndWFnZS1UZWFtOiBTcGFuaXNoIDxkZWJpYW4tbDEwbi1zcGFuaXNoQGxpc3RzLmRlYmlhbi5vcmc+XG4iCisiTGFuZ3VhZ2U6IGVzXG4iCisiTUlNRS1WZXJzaW9uOiAxLjBcbiIKKyJDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9VVRGLThcbiIKKyJDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiA4LWJpdFxuIgorIlgtUE9GaWxlLVNwZWxsRXh0cmE6IGRpc3AgSWFuIEphY2tzb24gaGVscCBNYXnDunMgc29icmVlc2NyaWJpciBSZXFcbiIKKyJYLVBPRmlsZS1TcGVsbEV4dHJhOiByZWJsb3F1ZWFyIFRJT0NHV0lOU1ogU0lHV0lOQ0ggZG91cGRhdGUgUmUgRXN0XG4iCisiWC1QT0ZpbGUtU3BlbGxFeHRyYTogcHJpbWVycGxhbm8gcHJlZGVwZW5kZSBFSU9NIHNlbGVjdCBXaWNoZXJ0IGdldGNoIHF1aXRcbiIKKyJYLVBPRmlsZS1TcGVsbEV4dHJhOiBURVJNIFJldHVybiBzdWIgZXhwZXJ0IE9jaW9uZXMgc1VnZXJpZG8gYWRtaW5kaXJcbiIKKyJYLVBPRmlsZS1TcGVsbEV4dHJhOiB0aGlzc3RhdGUgYklDSE8gYWNjZXNzIEFicmV2IGJhc2VsaXN0IHBhZCByZWRpYnVqYVxuIgorIlgtUE9GaWxlLVNwZWxsRXh0cmE6IHdoYXRpbmZvIE9wYyBlbGVjY2lvbmFyIGNvbmZpZyBhdmFpbGFibGUgY29yZSBzdGF0XG4iCisiWC1QT0ZpbGUtU3BlbGxFeHRyYTogYXRyYiBjdHVhbGl6YXIgRXh0IHZlcnNpb24gdXBkYXRlIGVzaW5zdGFsYXJcbiIKKyJYLVBPRmlsZS1TcGVsbEV4dHJhOiBzY3JlZW5wYXJ0IGlvY3RsIGVYaXQgRU9GIHNhIGRwa2cgZGVzYyBpbmZvXG4iCisiWC1QT0ZpbGUtU3BlbGxFeHRyYTogc2VndW5kb3BsYW5vIEltcCBjb2xvdXIgc2NyaXB0IEFra2VybWFuIHJlbW92ZSBJbnRyb1xuIgorIlgtUE9GaWxlLVNwZWxsRXh0cmE6IGluc3RhbGwgQXYgZGVidWcgaW5zdCBvbmZpZ3VyYXIgZHNlbGVjdCBoZWFkaW5nXG4iCisiWC1QT0ZpbGUtU3BlbGxFeHRyYTogUmVkaWJ1amFcbiIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxMjUKK21zZ2lkICJTZWFyY2ggZm9yID8gIgorbXNnc3RyICJCdXNjYXIgIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE0NworbXNnaWQgIkVycm9yOiAiCittc2dzdHIgIkVycm9yOiAiCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MTc4Cittc2dpZCAiSGVscDogIgorbXNnc3RyICJBeXVkYTogIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE4NAorbXNnaWQgIlByZXNzID8gZm9yIGhlbHAgbWVudSwgLiBmb3IgbmV4dCB0b3BpYywgPHNwYWNlPiB0byBleGl0IGhlbHAuIgorbXNnc3RyICJQdWxzZSA/IHBhcmEgZWwgbWVuw7osIC4gcGFyYSBlbCB0ZW1hIHNpZ3VpZW50ZSwgPGludHJvPiBwYXJhIHNhbGlyLiIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxOTEKK21zZ2lkICJIZWxwIGluZm9ybWF0aW9uIGlzIGF2YWlsYWJsZSB1bmRlciB0aGUgZm9sbG93aW5nIHRvcGljczoiCittc2dzdHIgIkxhIGluZm9ybWFjacOzbiBkZSBheXVkYSBlc3TDoSBkaXNwb25pYmxlIGJham8gbG9zIHNpZ3VpZW50ZXMgdGVtYXM6IgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE5OQorbXNnaWQgIiIKKyJQcmVzcyBhIGtleSBmcm9tIHRoZSBsaXN0IGFib3ZlLCA8c3BhY2U+IG9yIGBxJyB0byBleGl0IGhlbHAsXG4iCisiICBvciBgLicgKGZ1bGwgc3RvcCkgdG8gcmVhZCBlYWNoIGhlbHAgcGFnZSBpbiB0dXJuLiAiCittc2dzdHIgIiIKKyJQdWxzZSB1bmEgdGVjbGEgZGUgbGEgbGlzdGEgYW50ZXJpb3IsIDxpbnRybz4sIGBxJyBvIGBRJyBwYXJhIHNhbGlyIGRlIGxhICIKKyJheXVkYSxcbiIKKyIgbyBgLicgKHB1bnRvKSBwYXJhIGxlZXIgY2FkYSB1bmEgZGUgbGFzIHDDoWdpbmFzIGRlIGF5dWRhLiAiCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MjA1Cittc2dpZCAiZXJyb3IgcmVhZGluZyBrZXlib2FyZCBpbiBoZWxwIgorbXNnc3RyICJlcnJvciBhbCBsZWVyIGRlbCB0ZWNsYWRvIGVuIGxhIGF5dWRhIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjU3Cittc2dpZCAiaW9jdGwoVElPQ0dXSU5TWikgZmFpbGVkIgorbXNnc3RyICJmYWxsw7MgaW9jdGwoVElPQ0dXSU5TWikiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6NjAKK21zZ2lkICJkb3VwZGF0ZSBpbiBTSUdXSU5DSCBoYW5kbGVyIGZhaWxlZCIKK21zZ3N0ciAiZmFsbMOzIGVsIGBkb3VwZGF0ZScgZW4gZWwgbWFuZWphZG9yIGRlIFNJR1dJTkNIIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjY3Cittc2dpZCAiZmFpbGVkIHRvIHJlc3RvcmUgb2xkIFNJR1dJTkNIIHNpZ2FjdCIKK21zZ3N0ciAiZmFsbG8gYWwgcmVzdGFibGVjZXIgbGEgc2XDsWFsIGFudGlndWEgU0lHV0lOQ0giCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6NjkKK21zZ2lkICJmYWlsZWQgdG8gcmVzdG9yZSBvbGQgc2lnbmFsIG1hc2siCittc2dzdHIgImZhbGxvIGFsIHJlc3RhYmxlY2VyIGxhIG3DoXNjYXJhIGRlIHNlw7FhbCBhbnRpZ3VhIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjc5Cittc2dpZCAiZmFpbGVkIHRvIGdldCBvbGQgc2lnbmFsIG1hc2siCittc2dzdHIgImZhbGxvIGFsIG9idGVuZXIgbGEgbcOhc2NhcmEgZGUgc2XDsWFsIGFudGlndWEiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6ODAKK21zZ2lkICJmYWlsZWQgdG8gZ2V0IG9sZCBTSUdXSU5DSCBzaWdhY3QiCittc2dzdHIgImZhbGxvIGFsIG9idGVuZXIgbGEgc2XDsWFsIFNJR1dJTkNIIGFudGlndWEiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6ODQKK21zZ2lkICJmYWlsZWQgdG8gYmxvY2sgU0lHV0lOQ0giCittc2dzdHIgImZhbGxvIGFsIGJsb3F1ZWFyIFNJR1dJTkNIIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjg5Cittc2dpZCAiZmFpbGVkIHRvIHNldCBuZXcgU0lHV0lOQ0ggc2lnYWN0IgorbXNnc3RyICJmYWxsbyBhbCBlc3RhYmxlY2VyIGxhIG51ZXZhIHNlw7FhbCBTSUdXSU5DSCIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxMjYKK21zZ2lkICJmYWlsZWQgdG8gYWxsb2NhdGUgY29sb3VyIHBhaXIiCittc2dzdHIgImZhbGxvIGFsIGFzaWduYXIgdW4gcGFyIGRlIGNvbG9yZXMiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTY3Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSB0aXRsZSB3aW5kb3ciCittc2dzdHIgImZhbGxvIGFsIGNyZWFyIHZlbnRhbmEgZGUgdMOtdHVsbyIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxNzEKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHdoYXRpbmZvIHdpbmRvdyIKK21zZ3N0ciAiZmFsbG8gYWwgY3JlYXIgdmVudGFuYSBkZSBgd2hhdGluZm8nIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE3NQorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgYmFzZWxpc3QgcGFkIgorbXNnc3RyICJmYWxsbyBhbCBjcmVhciBgYmFzZWxpc3QgcGFkJyIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxNzgKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGhlYWRpbmcgcGFkIgorbXNnc3RyICJmYWxsbyBhbCBjcmVhciBgaGVhZGluZyBwYWQnIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE4MgorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgdGhpc3N0YXRlIHBhZCIKK21zZ3N0ciAiZmFsbG8gYWwgY3JlYXIgYHRoaXNzdGF0ZSBwYWQnIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE4NgorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgaW5mbyBwYWQiCittc2dzdHIgImZhbGxvIGFsIGNyZWFyIGBpbmZvIHBhZCciCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTkxCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBxdWVyeSB3aW5kb3ciCittc2dzdHIgImZhbGxvIGFsIGNyZWFyIHZlbnRhbmEgZGUgcHJlZ3VudGEiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MjU1Cittc2dpZCAiS2V5YmluZGluZ3MiCittc2dzdHIgIkFzb2NpYWNpb25lcyBkZSB0ZWNsYXMiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MzAzCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgLS0gJWQlJSwgcHJlc3MgIgorbXNnc3RyICIgIC0tICVkJSUsIHB1bHNlICIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzozMDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgZm9yIG1vcmUiCittc2dzdHIgIiVzIHBhcmEgc2VndWlyIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjMxMAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyB0byBnbyBiYWNrIgorbXNnc3RyICIlcyBwYXJhIHZvbHZlciIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzo3OAorbXNnaWQgIltub3QgYm91bmRdIgorbXNnc3RyICJbbm8gYXNvY2lhZGFdIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjgyCisjLCBjLWZvcm1hdAorbXNnaWQgIlt1bms6ICVkXSIKK21zZ3N0ciAiW2Rlc2M6ICVkXSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxMzkKK21zZ2lkICJTY3JvbGwgb253YXJkcyB0aHJvdWdoIGhlbHAvaW5mb3JtYXRpb24iCittc2dzdHIgIkF2YW56YSBhIHRyYXbDqXMgZGUgbGEgYXl1ZGEvaW5mb3JtYWNpw7NuIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0MAorbXNnaWQgIlNjcm9sbCBiYWNrd2FyZHMgdGhyb3VnaCBoZWxwL2luZm9ybWF0aW9uIgorbXNnc3RyICJSZXRyb2NlZGUgYSB0cmF2w6lzIGRlIGxhIGF5dWRhL2luZm9ybWFjacOzbiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDEKK21zZ2lkICJNb3ZlIHVwIgorbXNnc3RyICJTdWJpciIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDIKK21zZ2lkICJNb3ZlIGRvd24iCittc2dzdHIgIkJhamFyIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0MworbXNnaWQgIkdvIHRvIHRvcCBvZiBsaXN0IgorbXNnc3RyICJJciBhbCBwcmluY2lwaW8gZGUgbGEgbGlzdGEiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ0Cittc2dpZCAiR28gdG8gZW5kIG9mIGxpc3QiCittc2dzdHIgIklyIGFsIGZpbmFsIGRlIGxhIGxpc3RhIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0NQorbXNnaWQgIlJlcXVlc3QgaGVscCAoY3ljbGUgdGhyb3VnaCBoZWxwIHNjcmVlbnMpIgorbXNnc3RyICJTb2xpY2l0YXIgYXl1ZGEgKGV2b2x1Y2lvbmEgYSB0cmF2w6lzIGRlIGxhcyBww6FnaW5hcyBkZSBheXVkYSkiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ2Cittc2dpZCAiQ3ljbGUgdGhyb3VnaCBpbmZvcm1hdGlvbiBkaXNwbGF5cyIKK21zZ3N0ciAiRXZvbHVjaW9uYSBhIHRyYXbDqXMgZGUgbGFzIHBhbnRhbGxhcyBkZSBpbmZvcm1hY2nDs24iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ3Cittc2dpZCAiUmVkcmF3IGRpc3BsYXkiCittc2dzdHIgIlJlZGlidWphIGxhIHBhbnRhbGxhIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0OAorbXNnaWQgIlNjcm9sbCBvbndhcmRzIHRocm91Z2ggbGlzdCBieSAxIGxpbmUiCittc2dzdHIgIkF2YW56YSBhIHRyYXbDqXMgZGUgbGEgbGlzdGEgZW4gMSBsw61uZWEiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ5Cittc2dpZCAiU2Nyb2xsIGJhY2t3YXJkcyB0aHJvdWdoIGxpc3QgYnkgMSBsaW5lIgorbXNnc3RyICJSZXRyb2NlZGUgYSB0cmF2w6lzIGRlIGxhIGxpc3RhIGVuIDEgbMOtbmVhIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1MAorbXNnaWQgIlNjcm9sbCBvbndhcmRzIHRocm91Z2ggaGVscC9pbmZvcm1hdGlvbiBieSAxIGxpbmUiCittc2dzdHIgIkF2YW56YSBhIHRyYXbDqXMgZGUgbGEgYXl1ZGEvaW5mb3JtYWNpw7NuIGVuIDEgbMOtbmVhIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1MQorbXNnaWQgIlNjcm9sbCBiYWNrd2FyZHMgdGhyb3VnaCBoZWxwL2luZm9ybWF0aW9uIGJ5IDEgbGluZSIKK21zZ3N0ciAiUmV0cm9jZWRlIGEgdHJhdsOpcyBkZSBsYSBheXVkYS9pbmZvcm1hY2nDs24gZW4gMSBsw61uZWEiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTUyCittc2dpZCAiU2Nyb2xsIG9ud2FyZHMgdGhyb3VnaCBsaXN0IgorbXNnc3RyICJBdmFuemEgYSB0cmF2w6lzIGRlIGxhIGxpc3RhIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1MworbXNnaWQgIlNjcm9sbCBiYWNrd2FyZHMgdGhyb3VnaCBsaXN0IgorbXNnc3RyICJSZXRyb2NlZGUgYSB0cmF2w6lzIGRlIGxhIGxpc3RhIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1NgorbXNnaWQgIk1hcmsgcGFja2FnZShzKSBmb3IgaW5zdGFsbGF0aW9uIgorbXNnc3RyICJNYXJjYSBlbC9sb3MgcGFxdWV0ZShzKSBwYXJhIGluc3RhbGFjacOzbiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTcKK21zZ2lkICJNYXJrIHBhY2thZ2UocykgZm9yIGRlaW5zdGFsbGF0aW9uIgorbXNnc3RyICJNYXJjYSBlbC9sb3MgcGFxdWV0ZShzKSBwYXJhIGRlc2luc3RhbGFjacOzbiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTgKK21zZ2lkICJNYXJrIHBhY2thZ2UocykgZm9yIGRlaW5zdGFsbCBhbmQgcHVyZ2UiCittc2dzdHIgIk1hcmNhIGVsL2xvcyBwYXF1ZXRlKHMpIHBhcmEgZGVzaW5zdGFsYXIgeSBwdXJnYXIiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTU5Cittc2dpZCAiTWFrZSBoaWdobGlnaHQgbW9yZSBzcGVjaWZpYyIKK21zZ3N0ciAiSGFjZSBlbCByZWFsY2UgbcOhcyBlc3BlY8OtZmljbyIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjAKK21zZ2lkICJNYWtlIGhpZ2hsaWdodCBsZXNzIHNwZWNpZmljIgorbXNnc3RyICJIYWNlIGVsIHJlYWxjZSBtZW5vcyBlc3BlY8OtZmljbyIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjEKK21zZ2lkICJTZWFyY2ggZm9yIGEgcGFja2FnZSB3aG9zZSBuYW1lIGNvbnRhaW5zIGEgc3RyaW5nIgorbXNnc3RyICJCdXNjYSB1biBwYXF1ZXRlIGN1eW8gbm9tYnJlIGNvbnRlbmdhIHVuYSBjYWRlbmEiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTYyCittc2dpZCAiUmVwZWF0IGxhc3Qgc2VhcmNoLiIKK21zZ3N0ciAiUmVwaXRlIGxhIMO6bHRpbWEgYsO6c3F1ZWRhIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2MworbXNnaWQgIlN3YXAgc29ydCBvcmRlciBwcmlvcml0eS9zZWN0aW9uIgorbXNnc3RyICJJbnRlcmNhbWJpYSBlbCBtZWNhbmlzbW8gZGUgb3JkZW5hY2nDs24gcHJpb3JpZGFkL3NlY2Npw7NuIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2NAorbXNnaWQgIlF1aXQsIGNvbmZpcm1pbmcsIGFuZCBjaGVja2luZyBkZXBlbmRlbmNpZXMiCittc2dzdHIgIlNhbGlyLCBjb25maXJtYW5kbyB5IGNvbXByb2JhbmRvIGRlcGVuZGVuY2lhcyIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjUKK21zZ2lkICJRdWl0LCBjb25maXJtaW5nIHdpdGhvdXQgY2hlY2siCittc2dzdHIgIlNhbGlyLCBjb25maXJtYW5kbyB5IHNpbiBjb21wcm9iYXIgZGVwZW5kZW5jaWFzIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2NgorbXNnaWQgIlF1aXQsIHJlamVjdGluZyBjb25mbGljdC9kZXBlbmRlbmN5IHN1Z2dlc3Rpb25zIgorbXNnc3RyICJTYWxpciwgcmVjaGF6YW5kbyBsYXMgc3VnZXJlbmNpYXMgZGUgY29uZmxpY3Rvcy9kZXBlbmRlbmNpYXMiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY3Cittc2dpZCAiQWJvcnQgLSBxdWl0IHdpdGhvdXQgbWFraW5nIGNoYW5nZXMiCittc2dzdHIgIkFib3J0YXIgLSBzYWxpciBzaW4gaGFjZXIgbmluZ8O6biBjYW1iaW8iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY4Cittc2dpZCAiUmV2ZXJ0IHRvIG9sZCBzdGF0ZSBmb3IgYWxsIHBhY2thZ2VzIgorbXNnc3RyICJQb25lciBlbCBlc3RhZG8gYW50aWd1byBwYXJhIHRvZG9zIGxvcyBwYXF1ZXRlcyIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjkKK21zZ2lkICJSZXZlcnQgdG8gc3VnZ2VzdGVkIHN0YXRlIGZvciBhbGwgcGFja2FnZXMiCittc2dzdHIgIlBvbmVyIGVsIGVzdGFkbyBzdWdlcmlkbyBwYXJhIHRvZG9zIGxvcyBwYXF1ZXRlcyIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNzAKK21zZ2lkICJSZXZlcnQgdG8gZGlyZWN0bHkgcmVxdWVzdGVkIHN0YXRlIGZvciBhbGwgcGFja2FnZXMiCittc2dzdHIgIlBvbmVyIGVsIGVzdGFkbyBkaXJlY3RhbWVudGUgc29saWNpdGFkbyBwYXJhIHRvZG9zIGxvcyBwYXF1ZXRlcyIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNzEKK21zZ2lkICJSZXZlcnQgdG8gY3VycmVudGx5IGluc3RhbGxlZCBzdGF0ZSBmb3IgYWxsIHBhY2thZ2VzIgorbXNnc3RyICJQb25lciBlbCBlc3RhZG8gYWN0dWFsbWVudGUgaW5zdGFsYWRvIHBhcmEgdG9kb3MgbG9zIHBhcXVldGVzIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE3NAorbXNnaWQgIlNlbGVjdCBjdXJyZW50bHktaGlnaGxpZ2h0ZWQgYWNjZXNzIG1ldGhvZCIKK21zZ3N0ciAiU2VsZWNjaW9uYSBlbCBtw6l0b2RvIGRlIGFjY2VzbyBhY3R1YWxtZW50ZSBkZXN0YWNhZG8iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTc1Cittc2dpZCAiUXVpdCB3aXRob3V0IGNoYW5naW5nIHNlbGVjdGVkIGFjY2VzcyBtZXRob2QiCittc2dzdHIgIlNhbGlyIHNpbiBjYW1iaWFyIGVsIG3DqXRvZG8gZGUgYWNjZXNvIHNlbGVjY2lvbmFkbyIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoyOQorbXNnaWQgIktleXN0cm9rZXMiCittc2dzdHIgIlB1bHNhY2lvbmVzIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjI5Cittc2dpZCAiIgorIk1vdGlvbiBrZXlzOiBOZXh0L1ByZXZpb3VzLCBUb3AvRW5kLCBVcC9Eb3duLCBCYWNrd2FyZHMvRm9yd2FyZHM6XG4iCisiICBqLCBEb3duLWFycm93ICAgICAgICAgaywgVXAtYXJyb3cgICAgICAgICAgICAgbW92ZSBoaWdobGlnaHRcbiIKKyIgIE4sIFBhZ2UtZG93biwgU3BhY2UgICBQLCBQYWdlLXVwLCBCYWNrc3BhY2UgICBzY3JvbGwgbGlzdCBieSAxIHBhZ2VcbiIKKyIgIF5uICAgICAgICAgICAgICAgICAgICBecCAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgbGlzdCBieSAxIGxpbmVcbiIKKyIgIHQsIEhvbWUgICAgICAgICAgICAgICBlLCBFbmQgICAgICAgICAgICAgICAgICBqdW1wIHRvIHRvcC9lbmQgb2YgbGlzdFxuIgorIiAgdSAgICAgICAgICAgICAgICAgICAgIGQgICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIGJ5IDEgcGFnZVxuIgorIiAgXnUgICAgICAgICAgICAgICAgICAgIF5kICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIGJ5IDEgbGluZVxuIgorIiAgQiwgTGVmdC1hcnJvdyAgICAgICAgIEYsIFJpZ2h0LWFycm93ICAgICAgICAgIHBhbiBkaXNwbGF5IGJ5IDEvMyBzY3JlZW5cbiIKKyIgIF5iICAgICAgICAgICAgICAgICAgICBeZiAgICAgICAgICAgICAgICAgICAgICBwYW4gZGlzcGxheSBieSAxIGNoYXJhY3RlclxuIgorIlxuIgorIk1hcmsgcGFja2FnZXMgZm9yIGxhdGVyIHByb2Nlc3Npbmc6XG4iCisiICssIEluc2VydCAgaW5zdGFsbCBvciB1cGdyYWRlICAgICAgPSwgSCAgaG9sZCBpbiBwcmVzZW50IHN0YXRlXG4iCisiIC0sIERlbGV0ZSAgcmVtb3ZlICAgICAgICAgICAgICAgICAgOiwgRyAgdW5ob2xkOiB1cGdyYWRlIG9yIGxlYXZlICIKKyJ1bmluc3RhbGxlZFxuIgorIiBfICAgICAgICAgIHJlbW92ZSAmIHB1cmdlIGNvbmZpZ1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1pc2NlbGxhbmVvdXM6XG4iCisiUXVpdCwgZXhpdCwgb3ZlcndyaXRlIChub3RlIGNhcGl0YWxzISk6ICAgICAgID8sIEYxIHJlcXVlc3QgaGVscCAoYWxzbyAiCisiSGVscClcbiIKKyIgUmV0dXJuICBDb25maXJtLCBxdWl0IChjaGVjayBkZXBlbmRlbmNpZXMpICAgaSwgSSAgdG9nZ2xlL2N5Y2xlIGluZm8gIgorImRpc3BsYXlzXG4iCisiICAgUSAgICAgQ29uZmlybSwgcXVpdCAob3ZlcnJpZGUgZGVwLnMpICAgICAgIG8sIE8gIGN5Y2xlIHRocm91Z2ggc29ydCAiCisib3B0aW9uc1xuIgorIiBYLCBFc2MgIGVYaXQsIGFiYW5kb25pbmcgYW55IGNoYW5nZXMgbWFkZSAgICB2LCBWICBjaGFuZ2Ugc3RhdHVzIGRpc3BsYXkgIgorIm9wdHNcbiIKKyIgICBSICAgICBSZXZlcnQgdG8gc3RhdGUgYmVmb3JlIHRoaXMgbGlzdCAgICAgIF5sICAgcmVkcmF3IGRpc3BsYXlcbiIKKyIgICBVICAgICBzZXQgYWxsIHRvIHNVZ2dlc3RlZCBzdGF0ZSAgICAgICAgICAgICAvICAgc2VhcmNoIChSZXR1cm4gdG8gIgorImNhbmNlbClcbiIKKyIgICBEICAgICBzZXQgYWxsIHRvIERpcmVjdGx5IHJlcXVlc3RlZCBzdGF0ZSAgbiwgXFwgIHJlcGVhdCBsYXN0IHNlYXJjaFxuIgorbXNnc3RyICIiCisiVGVjbGFzIGRlIG1vdmltaWVudG86IFJlIFDDoWcvQXYgUMOhZywgSW5pY2lvL0ZpbixcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgSGFjaWEgYWRlbGFudGUvaGFjaWEgYXRyw6FzOlxuIgorIiBqLCBGbGVjaGEgYWJham8gICAgICBrLCBGbGVjaGEgYXJyaWJhLCAgICAgIG11ZXZlIGxvIGRlc3RhY2Fkb1xuIgorIiBOLCBQw6FnaW5hIGFiYWpvLCBFc3BhY2lvIFxuIgorIiAgICAgICAgICAgICAgIFAsIHDDoWdpbmEgYXJyaWJhLCByZXRyb2NlZGVyICAgZGVzcGxhemEgbGEgbGlzdGEgMSBww6FnaW5hXG4iCisiIF5uICAgICAgICAgICAgICAgICAgICAgXnAgICAgICAgICAgICAgICAgICAgIGRlc3BsYXphIGxhIGxpc3RhIDEgbMOtbmVhXG4iCisiIHQsIEluaWNpbyAgICAgICAgICAgICAgZSwgRmluICAgICAgICAgICAgICAgIHNhbHRhIGFsIGluaWNpby9maW4gZGUgbGEgIgorImxpc3RhXG4iCisiIHUgICAgICAgICAgICAgICAgICAgICAgZCAgICAgICAgICAgICAgICAgICAgIGRlc3BsYXphIGxhIGluZm9ybWFjacOzbiAxICIKKyJww6FnaW5hXG4iCisiIF51ICAgICAgICAgICAgICAgICAgICAgXmQgICAgICAgICAgICAgICAgICAgIGRlc3BsYXphIGxhIGluZm9ybWFjacOzbiAxICIKKyJsw61uZWFcbiIKKyIgQiwgZmxlY2hhIGl6cXVpZXJkYSAgICBGLCBmbGVjaGEgZGVyZWNoYSAgICAgZGVzcGxhemEgbGEgdmlzdWFsaXphY2nDs24gMS8zXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGUgbGEgcGFudGFsbGFcbiIKKyIgXmIgICAgICAgICAgICAgICAgICAgICBeZiAgICAgICAgICAgICAgICAgICAgZGVzcGxhemEgbGEgdmlzdWFsaXphY2nDs24gMVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhcsOhY3RlclxuIgorIk1hcmNhciBsb3MgcGFxdWV0ZXMgcGFyYSBwcm9jZXNhciBwb3N0ZXJpb3JtZW50ZTpcbiIKKyIgKywgSW5zZXJ0ICAgaW5zdGFsYXIgbyBhY3R1YWxpemFyICAgPSwgSCAgIG1hbnRlbmVyIGVuIGVsIGVzdGFkbyBhY3R1YWxcbiIKKyIgLSwgU3VwciAgICAgZGVzaW5zdGFsYXIgICAgICAgICAgICAgOiwgRyAgIG5vIG1hbnRlbmVyOiBhY3R1YWxpemFyIG8gZGVqYXIgIgorInNpbiBpbnN0YWxhclxuIgorIiBfICAgICAgICAgICBkZXNpbnN0YWxhciB5IGVsaW1pbmFyIGxhIGNvbmZpZ3VyYWNpw7NuXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVmFyaWFzOlxuIgorIkRlamFyLCBzYWxpciwgc29icmVlc2NyaWJpciAowqFvYnNlcnZlIGxhcyBtYXnDunNjdWxhcyEpXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPywgRjEgc29saWNpdGEgYXl1ZGEgKHRhbWJpw6luICIKKyJBeXVkYSlcbiIKKyIgSW50cm8gICAgQ29uZmlybWEsIGRlamEgKHNlIHZlcmlmaWNhbiBkZXBlbmRlbmNpYXMpXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaSwgSSAgc2UgbXVlc3RyYS9ubyBzZSBtdWVzdHJhICIKKyJpbmZvcm1hY2nDs25cbiIKKyIgIFEgICAgICBDb25maXJtYSwgZGVqYSAobm8gc2UgdmVyaWZpY2FuIGRlcGVuZGVuY2lhcylcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvLCBPICBjaXJjdWxhIHBvciBsYSBvcGNpb25lcyBkZSAiCisib3JkZW5hY2nDs25cbiIKKyIgIFgsIEVzYyAgc2FsZSwgKGVYaXQpLCBhYmFuZG9uYW5kbyBjdWFscXVpZXIgY2FtYmlvIHJlYWxpemFkb1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHYsIFYgIGNhbWJpYSBsYXMgb3BjaW9uZXMgZGUgbGEgIgorIm11ZXN0cmEgZGUgZXN0YWRvXG4iCisiICBSICAgICAgRXN0YWJsZWNlIGVsIGVzdGFkbyBhbnRlcyBkZSBlc3RhIGxpc3RhXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXmwgICAgcmVmcmVzY2EgbGEgdmlzdWFsaXphY2nDs25cbiIKKyIgIFUgICAgICBsbyBwb25lIHRvZG8gYWwgZXN0YWRvIHNVZ2VyaWRvICAgLyAgIGJ1c2NhICAoSW50cm8gcGFyYSBjYW5jZWxhcilcbiIKKyIgIEQgICAgICBsbyBwb25lIHRvZG8gYWwgZXN0YWRvIERpcmVjdGFtZW50ZSBzb2xpY2l0YWRvXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG4sIFxcICByZXBpdGUgbGEgw7psdGltYSBiw7pzcXVlZGFcbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo1NQorbXNnaWQgIkludHJvZHVjdGlvbiB0byBwYWNrYWdlIHNlbGVjdGlvbnMiCittc2dzdHIgIkludHJvZHVjY2nDs24gYSBsYSBzZWxlY2Npw7NuIGRlIHBhcXVldGVzIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjU1Cittc2dpZCAiIgorIldlbGNvbWUgdG8gZHNlbGVjdCdzIG1haW4gcGFja2FnZSBsaXN0aW5nLlxuIgorIlxuIgorIllvdSB3aWxsIGJlIHByZXNlbnRlZCB3aXRoIGEgbGlzdCBvZiBwYWNrYWdlcyB3aGljaCBhcmUgaW5zdGFsbGVkIG9yICIKKyJhdmFpbGFibGVcbiIKKyJmb3IgaW5zdGFsbGF0aW9uLiAgWW91IGNhbiBuYXZpZ2F0ZSBhcm91bmQgdGhlIGxpc3QgdXNpbmcgdGhlIGN1cnNvciBrZXlzLFxuIgorIm1hcmsgcGFja2FnZXMgZm9yIGluc3RhbGxhdGlvbiAodXNpbmcgYCsnKSBvciBkZWluc3RhbGxhdGlvbiAodXNpbmcgYC0nKS5cbiIKKyJQYWNrYWdlcyBjYW4gYmUgbWFya2VkIGVpdGhlciBzaW5nbHkgb3IgaW4gZ3JvdXBzOyBpbml0aWFsbHkgeW91IHdpbGwgc2VlICIKKyJ0aGF0XG4iCisidGhlIGxpbmUgYEFsbCBwYWNrYWdlcycgaXMgc2VsZWN0ZWQuICBgKycsIGAtJyBhbmQgc28gb24gd2lsbCBhZmZlY3QgYWxsICIKKyJ0aGVcbiIKKyJwYWNrYWdlcyBkZXNjcmliZWQgYnkgdGhlIGhpZ2hsaWdodGVkIGxpbmUuXG4iCisiXG4iCisiU29tZSBvZiB5b3VyIGNob2ljZXMgd2lsbCBjYXVzZSBjb25mbGljdHMgb3IgZGVwZW5kZW5jeSBwcm9ibGVtczsgeW91IHdpbGwgIgorImJlXG4iCisiZ2l2ZW4gYSBzdWItbGlzdCBvZiB0aGUgcmVsZXZhbnQgcGFja2FnZXMsIHNvIHRoYXQgeW91IGNhbiBzb2x2ZSB0aGUgIgorInByb2JsZW1zLlxuIgorIlxuIgorIllvdSBzaG91bGQgcmVhZCB0aGUgbGlzdCBvZiBrZXlzIGFuZCB0aGUgZXhwbGFuYXRpb25zIG9mIHRoZSBkaXNwbGF5LlxuIgorIk11Y2ggb24tbGluZSBoZWxwIGlzIGF2YWlsYWJsZSwgcGxlYXNlIG1ha2UgdXNlIG9mIGl0IC0gcHJlc3MgYD8nIGF0XG4iCisiYW55IHRpbWUgZm9yIGhlbHAuXG4iCisiXG4iCisiV2hlbiB5b3UgaGF2ZSBmaW5pc2hlZCBzZWxlY3RpbmcgcGFja2FnZXMsIHByZXNzIDxlbnRlcj4gdG8gY29uZmlybSAiCisiY2hhbmdlcyxcbiIKKyJvciBgWCcgdG8gcXVpdCB3aXRob3V0IHNhdmluZyBjaGFuZ2VzLiBBIGZpbmFsIGNoZWNrIG9uIGNvbmZsaWN0cyBhbmRcbiIKKyJkZXBlbmRlbmNpZXMgd2lsbCBiZSBkb25lIC0gaGVyZSB0b28geW91IG1heSBzZWUgYSBzdWJsaXN0LlxuIgorIlxuIgorIlByZXNzIDxzcGFjZT4gdG8gbGVhdmUgaGVscCBhbmQgZW50ZXIgdGhlIGxpc3Qgbm93LlxuIgorbXNnc3RyICIiCisiQmllbnZlbmlkbyBhbCBsaXN0YWRvIGRlIHBhcXVldGVzIHByaW5jaXBhbCBkZSBkc2VsZWN0LlxuIgorIlxuIgorIlNlIGxlIHByZXNlbnRhcsOhIHVuYSBsaXN0YSBkZSBwYXF1ZXRlcyBxdWUgZXN0w6FuIGluc3RhbGFkb3MgbyBkaXNwb25pYmxlc1xuIgorInBhcmEgc2VyIGluc3RhbGFkb3MuIFB1ZWRlIG5hdmVnYXIgcG9yIGxhIGxpc3RhIHVzYW5kbyBsYXMgdGVjbGFzIGRlbCAiCisiY3Vyc29yLFxuIgorIm1hcmNhciBsb3MgcGFxdWV0ZXMgcGFyYSBpbnN0YWxhcmxvcyAodXRpbGl6YW5kbyBgKycpIG8gZGVzaW5zdGFsYXJsb3NcbiIKKyIodXRpbGl6YW5kbyBgLSkuIExvcyBwYXF1ZXRlcyBzZSBwdWVkZW4gbWFyY2FyIHBvciBzZXBhcmFkbyBvIHBvciBncnVwb3M6XG4iCisiaW5pY2lhbG1lbnRlIHZlcsOhIHF1ZSBsYSBsw61uZWEgYFRvZG9zIGxvcyBwYXF1ZXRlcycgZXN0w6Egc2VsZWNjaW9uYWRhLlxuIgorImArJywgYC0nIHkgZGVtw6FzIGFmZWN0YXLDoSBhIHRvZG9zIGxvcyBwYXF1ZXRlcyBkZXNjcml0b3MgY29uIGxhIGzDrW5lYVxuIgorInJlc2FsdGFkYS5cbiIKKyJcbiIKKyJBbGd1bmFzIGRlIHN1cyBlbGVjY2lvbmVzIGNhdXNhcsOhbiBjb25mbGljdG9zIG8gcHJvYmxlbWFzIGRlIGRlcGVuZGVuY2lhcztcbiIKKyJlbiB0YWwgY2FzbyBzZSBsZSBkYXLDoSB1bmEgc3VibGlzdGEgZGUgbG9zIHBhcXVldGVzIHJlbGV2YW50ZXMgcGFyYSBxdWVcbiIKKyJwdWVkYSBzb2x1Y2lvbmFyIGxvcyBwcm9ibGVtYXMuXG4iCisiXG4iCisiRGViZXLDrWEgbGVlciBsYSBsaXN0YSBkZSB0ZWNsYXMgeSBsYXMgZXhwbGljYWNpb25lcyBkZSBsYSBwYW50YWxsYS4gSGF5XG4iCisiYXl1ZGEgZW4gbMOtbmVhIGFidW5kYW50ZSwgdXRpbMOtY2VsYSwgcHVsc2UgYD8nIGVuIGN1YWxxdWllciBtb21lbnRvXG4iCisicGFyYSBvYnRlbmVyIGF5dWRhLlxuIgorIlxuIgorIkN1YW5kbyBoYXlhIHRlcm1pbmFkbyBkZSBzZWxlY2Npb25hciBwYXF1ZXRlcywgcHVsc28gPGludHJvPiBwYXJhIGNvbmZpcm1hclxuIgorImxvcyBjYW1iaW9zLCBvIGBYJyBwYXJhIHNhbGlyIHNpbiBndWFyZGFyIGxvcyBjYW1iaW9zLiBTZSBlZmVjdHVhcsOhIHVuYVxuIgorImNvbXByb2JhY2nDs24gZmluYWwgZGUgbG9zIGNvbmZsaWN0b3MgeSBkZXBlbmRlbmNpYXMsIGFxdcOtIHRhbWJpw6luIHB1ZWRlXG4iCisicXVlIHNlIGxlIG11ZXN0cmUgdW5hIHN1Ymxpc3RhLlxuIgorIlxuIgorIlB1bHNlIDxlc3BhY2lvPiBwYXJhIHNhbGlyIGRlIGxhIGF5dWRhIHkgZW50cmFyIGVuIGxhIGxpc3RhIGFob3JhLlxuIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjgwCittc2dpZCAiSW50cm9kdWN0aW9uIHRvIHJlYWQtb25seSBwYWNrYWdlIGxpc3QgYnJvd3NlciIKK21zZ3N0ciAiSW50cm9kdWNjacOzbiBhbCBuYXZlZ2Fkb3IgZGUgbGlzdGEgZGUgcGFxdWV0ZXMgZGUgc8OzbG8gbGVjdHVyYSIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo4MAorbXNnaWQgIiIKKyJXZWxjb21lIHRvIGRzZWxlY3QncyBtYWluIHBhY2thZ2UgbGlzdGluZy5cbiIKKyJcbiIKKyJZb3Ugd2lsbCBiZSBwcmVzZW50ZWQgd2l0aCBhIGxpc3Qgb2YgcGFja2FnZXMgd2hpY2ggYXJlIGluc3RhbGxlZCBvciAiCisiYXZhaWxhYmxlXG4iCisiZm9yIGluc3RhbGxhdGlvbi4gIFNpbmNlIHlvdSBkbyBub3QgaGF2ZSB0aGUgcHJpdmlsZWdlIG5lY2Vzc2FyeSB0byB1cGRhdGVcbiIKKyJwYWNrYWdlIHN0YXRlcywgeW91IGFyZSBpbiBhIHJlYWQtb25seSBtb2RlLiAgWW91IGNhbiBuYXZpZ2F0ZSBhcm91bmQgdGhlXG4iCisibGlzdCB1c2luZyB0aGUgY3Vyc29yIGtleXMgKHBsZWFzZSBzZWUgdGhlIGBLZXlzdHJva2VzJyBoZWxwIHNjcmVlbiksICIKKyJvYnNlcnZlXG4iCisidGhlIHN0YXR1cyBvZiB0aGUgcGFja2FnZXMgYW5kIHJlYWQgaW5mb3JtYXRpb24gYWJvdXQgdGhlbS5cbiIKKyJcbiIKKyJZb3Ugc2hvdWxkIHJlYWQgdGhlIGxpc3Qgb2Yga2V5cyBhbmQgdGhlIGV4cGxhbmF0aW9ucyBvZiB0aGUgZGlzcGxheS5cbiIKKyJNdWNoIG9uLWxpbmUgaGVscCBpcyBhdmFpbGFibGUsIHBsZWFzZSBtYWtlIHVzZSBvZiBpdCAtIHByZXNzIGA/JyBhdFxuIgorImFueSB0aW1lIGZvciBoZWxwLlxuIgorIlxuIgorIldoZW4geW91IGhhdmUgZmluaXNoZWQgYnJvd3NpbmcsIHByZXNzIGBRJyBvciA8ZW50ZXI+IHRvIHF1aXQuXG4iCisiXG4iCisiUHJlc3MgPHNwYWNlPiB0byBsZWF2ZSBoZWxwIGFuZCBlbnRlciB0aGUgbGlzdCBub3cuXG4iCittc2dzdHIgIiIKKyJCaWVudmVuaWRvIGFsIGxpc3RhZG8gZGUgcGFxdWV0ZXMgcHJpbmNpcGFsIGRlIGRzZWxlY3QuXG4iCisiXG4iCisiU2UgbGUgbW9zdHJhcsOhIHVuYSBsaXN0YSBkZSBwYXF1ZXRlcyBxdWUgZXN0w6FuIGluc3RhbGFkb3MgbyBkaXNwb25pYmxlcyAiCisicGFyYVxuIgorInNlciBpbnN0YWxhZG9zLiBEYWRvIHF1ZSBubyB0aWVuZSBsb3MgcHJpdmlsZWdpb3MgbmVjZXNhcmlvcyBwYXJhICIKKyJhY3R1YWxpemFyXG4iCisibG9zIGVzdGFkb3MgZGUgbG9zIHBhcXVldGVzLCBzZSBlbmN1ZW50cmEgZW4gbW9kbyBkZSBzw7NsbyBsZWN0dXJhLiBQdWVkZVxuIgorIm5hdmVnYXIgYSB0cmF2w6lzIGRlIGVzdGEgbGlzdGEgdXRpbGl6YW5kbyBsYXMgdGVjbGFzIGRlbCBjdXJzb3IgKHZlYSBsYVxuIgorInBhbnRhbGxhIGRlIGF5dWRhIGRlIGxhcyBwdWxzYWNpb25lcyBkZSB0ZWNsYXMpLCBvYnNlcnZlIGVsIGVzdGFkbyBkZVxuIgorImxvcyBwYXF1ZXRlcyB5IGxlYSBsYSBpbmZvcm1hY2nDs24gc29icmUgZWxsb3MuXG4iCisiXG4iCisiRGViZXLDrWEgbGVlciBsYSBsaXN0YSBkZSB0ZWNsYXMgeSBsYXMgZXhwbGljYWNpb25lcyBzb2JyZSBsYSB2aXN1YWxpemFjacOzbi5cbiIKKyJIYXkgZGlzcG9uaWJsZSBheXVkYSBlbiBsw61uZWEgYWJ1bmRhbnRlLCBwb3IgZmF2b3IgdXRpbMOtY2VsYSwgcHVsc2UgYD8nXG4iCisiZW4gY3VhbHF1aWVyIG1vbWVudG8gcGFyYSBvYnRlbmVyIGF5dWRhLlxuIgorIlxuIgorIkN1YW5kbyBoYXlhIHRlcm1pbmFkbyBkZSBuYXZlZ2FyIHB1bHNlIGBRJyBvIDxpbnRybz4gcGFyYSBzYWxpci5cbiIKKyJcbiIKKyJQdWxzZSA8ZXNwYWNpbz4gcGFyYSBhYmFuZG9uYXIgbGEgYXl1ZGEgeSBlbnRyYXIgZW4gbGEgbGlzdGEuXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6OTkKK21zZ2lkICJJbnRyb2R1Y3Rpb24gdG8gY29uZmxpY3QvZGVwZW5kZW5jeSByZXNvbHV0aW9uIHN1Yi1saXN0IgorbXNnc3RyICJJbnRyb2R1Y2Npw7NuIGEgbGEgc3VibGlzdGEgZGUgcmVzb2x1Y2nDs24gZGUgY29uZmxpY3RvL2RlcGVuZGVuY2lhIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjk5Cittc2dpZCAiIgorIkRlcGVuZGVuY3kvY29uZmxpY3QgcmVzb2x1dGlvbiAtIGludHJvZHVjdGlvbi5cbiIKKyJcbiIKKyJPbmUgb3IgbW9yZSBvZiB5b3VyIGNob2ljZXMgaGF2ZSByYWlzZWQgYSBjb25mbGljdCBvciBkZXBlbmRlbmN5IHByb2JsZW0gLVxuIgorInNvbWUgcGFja2FnZXMgc2hvdWxkIG9ubHkgYmUgaW5zdGFsbGVkIGluIGNvbmp1bmN0aW9uIHdpdGggY2VydGFpbiBvdGhlcnMsICIKKyJhbmRcbiIKKyJzb21lIGNvbWJpbmF0aW9ucyBvZiBwYWNrYWdlcyBtYXkgbm90IGJlIGluc3RhbGxlZCB0b2dldGhlci5cbiIKKyJcbiIKKyJZb3Ugd2lsbCBzZWUgYSBzdWItbGlzdCBjb250YWluaW5nIHRoZSBwYWNrYWdlcyBpbnZvbHZlZC4gIFRoZSBib3R0b20gaGFsZiAiCisib2ZcbiIKKyJ0aGUgZGlzcGxheSBzaG93cyByZWxldmFudCBjb25mbGljdHMgYW5kIGRlcGVuZGVuY2llczsgdXNlIGBpJyB0byBjeWNsZSAiCisiYmV0d2VlblxuIgorInRoYXQsIHRoZSBwYWNrYWdlIGRlc2NyaXB0aW9ucyBhbmQgdGhlIGludGVybmFsIGNvbnRyb2wgaW5mb3JtYXRpb24uXG4iCisiXG4iCisiQSBzZXQgb2YgYHN1Z2dlc3RlZCcgcGFja2FnZXMgaGFzIGJlZW4gY2FsY3VsYXRlZCwgYW5kIHRoZSBpbml0aWFsIG1hcmtpbmdzICIKKyJpblxuIgorInRoaXMgc3ViLWxpc3QgaGF2ZSBiZWVuIHNldCB0byBtYXRjaCB0aG9zZSwgc28geW91IGNhbiBqdXN0IGhpdCBSZXR1cm4gdG9cbiIKKyJhY2NlcHQgdGhlIHN1Z2dlc3Rpb25zIGlmIHlvdSB3aXNoLiAgWW91IG1heSBhYm9ydCB0aGUgY2hhbmdlKHMpIHdoaWNoICIKKyJjYXVzZWRcbiIKKyJ0aGUgcHJvYmxlbShzKSwgYW5kIGdvIGJhY2sgdG8gdGhlIG1haW4gbGlzdCwgYnkgcHJlc3NpbmcgY2FwaXRhbCBgWCcuXG4iCisiXG4iCisiWW91IGNhbiBhbHNvIG1vdmUgYXJvdW5kIHRoZSBsaXN0IGFuZCBjaGFuZ2UgdGhlIG1hcmtpbmdzIHNvIHRoYXQgdGhleSBhcmUgIgorIm1vcmVcbiIKKyJsaWtlIHdoYXQgeW91IHdhbnQsIGFuZCB5b3UgY2FuIGByZWplY3QnIG15IHN1Z2dlc3Rpb25zIGJ5IHVzaW5nIHRoZSAiCisiY2FwaXRhbFxuIgorImBEJyBvciBgUicga2V5cyAoc2VlIHRoZSBrZXliaW5kaW5ncyBoZWxwIHNjcmVlbikuICBZb3UgY2FuIHVzZSBjYXBpdGFsIGBRJyAiCisidG9cbiIKKyJmb3JjZSBtZSB0byBhY2NlcHQgdGhlIHNpdHVhdGlvbiBjdXJyZW50bHkgZGlzcGxheWVkLCBpbiBjYXNlIHlvdSB3YW50IHRvXG4iCisib3ZlcnJpZGUgYSByZWNvbW1lbmRhdGlvbiBvciB0aGluayB0aGF0IHRoZSBwcm9ncmFtIGlzIG1pc3Rha2VuLlxuIgorIlxuIgorIlByZXNzIDxzcGFjZT4gdG8gbGVhdmUgaGVscCBhbmQgZW50ZXIgdGhlIHN1Yi1saXN0OyByZW1lbWJlcjogcHJlc3MgYD8nIGZvciAiCisiaGVscC5cbiIKK21zZ3N0ciAiIgorIlJlc29sdWNpw7NuIGRlIGRlcGVuZGVuY2lhL2NvbmZsaWN0byAtLSBJbnRyb2R1Y2Npw7NuLlxuIgorIlxuIgorIlVuYSBvIG3DoXMgZWxlY2Npb25lcyBoYW4gb2Nhc2lvbmFkbyB1biBwcm9ibGVtYSBkZSBjb25mbGljdG8gbyBkZXBlbmRlbmNpYSxcbiIKKyJhbGd1bm9zIHBhcXVldGVzIHPDs2xvIHNlIGRlYmVyw61hbiBpbnN0YWxhciBjb25qdW50YW1lbnRlIGNvbiBjaWVydG9zIG90cm9zLCAiCisieVxuIgorImFsZ3VuYXMgY29tYmluYWNpb25lcyBkZSBwYXF1ZXRlcyBubyBzZSBwdWVkZW4gaW5zdGFsYXIgY29uanVudGFtZW50ZS5cbiIKKyJcbiIKKyJWZXLDoSB1bmEgc3VibGlzdGEgcXVlIGNvbnRpZW5lIGxvcyBwYXF1ZXRlcyBpbnZvbHVjcmFkb3MuIExhIG1pdGFkIGluZmVyaW9yICIKKyJkZVxuIgorImxhIHBhbnRhbGxhIG11ZXN0cmEgbGFzIGRlcGVuZGVuY2lhcyB5IGNvbmZsaWN0b3MgcmVsZXZhbnRlczsgdXRpbGljZSBgaScgIgorInBhcmFcbiIKKyJjaXJjdWxhciBlbiBlbGxhIGVudHJlIGxvIG1lbmNpb25hZG8sIGxhcyBkZXNjcmlwY2lvbmVzIGRlIGxvcyBwYXF1ZXRlcywgeVxuIgorImxhIGluZm9ybWFjacOzbiBkZSBjb250cm9sIGludGVybmEuXG4iCisiXG4iCisiU2UgaGEgY2FsY3VsYWRvIHVuIHJlcGVydG9yaW8gZGUgcGFxdWV0ZXMgYHN1Z2VyaWRvcycsIHkgbGFzIG1hcmNhcyAiCisiaW5pY2lhbGVzXG4iCisiZW4gZXN0YSBzdWJsaXN0YSBzZSBoYW4gcHVlc3RvIHBhcmEgY2FzYXIgY29uIGFxdWVsbGFzLCBwb3IgbG8gcXVlIHBvZHLDoVxuIgorInNpbXBsZW1lbnRlIHB1bHNhciBJbnRybyBwYXJhIGFjZXB0YXIgbGFzIHN1Z2VyZW5jaWFzIHNpIGxvIGRlc2VhLiBQdWVkZVxuIgorImFib3J0YXIgZWwvbG9zIGNhbWJpbyhzKSBxdWUgY2F1c2Fyb24gZWwgcHJvYmxlbWEgeSB2b2x2ZXIgYSBsYSBsaXN0YVxuIgorInByaW5jaXBhbCBwdWxzYW5kbyBsYSBsZXRyYSBtYXnDunNjdWxhIGBYJy5cbiIKKyJcbiIKKyJUYW1iacOpbiBwdWVkZSBtb3ZlcnNlIHBvciBsYSBsaXN0YSB5IGNhbWJpYXIgbG9zIG1hcmNhZG9zIHBhcmEgcXVlIHNlICIKKyJhc2VtZWplXG4iCisibcOhcyBhIGxvIHF1ZSBkZXNlYSwgeSBwdWVkYSBgcmVjaGF6YXInIGxhcyBzdWdlcmVuY2lhcyB1dGlsaXphbmRvIGxhcyAiCisidGVjbGFzXG4iCisibWF5w7pzY3VsYXMgYEQnIG8gYFInICh2w6lhc2UgbGEgcGFudGFsbGEgZGUgYXl1ZGEgZGUgY29tYmluYWNpb25lcyBkZSAiCisidGVjbGFzKS5cbiIKKyJVdGlsaWNlIGxhIGBRJyBtYXnDunNjdWxhIHBhcmEgZm9yemFybWUgYSBhY2VwdGFyIGxhIHNpdHVhY2nDs24gYWN0dWFsbWVudGVcbiIKKyJtb3N0cmFkYSBlbiBjYXNvIGRlIHF1ZSBkZXNlZSBkZXNjYXJ0YXIgdW5hIHJlY29tZW5kYWNpw7NuIG8gcGllbnNlIHF1ZSBlbFxuIgorInByb2dyYW1hIHNlIGhhIGVxdWl2b2NhZG8uXG4iCisiXG4iCisiUHVsc2UgPGVzcGFjaW8+IHBhcmEgYWJhbmRvbmFyIGxhIGF5dWRhIHkgZW50cmFyIGVuIGxhIHN1Ymxpc3RhO1xuIgorInJlY3VlcmRlOiBwdWxzZSBgPycgcGFyYSBsYSBheXVkYS5cbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxMjUKK21zZ2lkICJEaXNwbGF5LCBwYXJ0IDE6IHBhY2thZ2UgbGlzdGluZyBhbmQgc3RhdHVzIGNoYXJzIgorbXNnc3RyICJNdWVzdHJhLCBwYXJ0ZSAxOiBsaXN0YWRvIGRlIHBhcXVldGUgeSBjYXJhY3RlcmVzIGRlIGVzdGFkbyIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxMjUKK21zZ2lkICIiCisiVGhlIHRvcCBoYWxmIG9mIHRoZSBzY3JlZW4gc2hvd3MgYSBsaXN0IG9mIHBhY2thZ2VzLiAgRm9yIGVhY2ggcGFja2FnZSB5b3UgIgorInNlZVxuIgorImZvdXIgY29sdW1ucyBmb3IgaXRzIGN1cnJlbnQgc3RhdHVzIG9uIHRoZSBzeXN0ZW0gYW5kIG1hcmsuICBJbiB0ZXJzZSBtb2RlICIKKyIodXNlXG4iCisiYHYnIHRvIHRvZ2dsZSB2ZXJib3NlIGRpc3BsYXkpIHRoZXNlIGFyZSBzaW5nbGUgY2hhcmFjdGVycywgZnJvbSBsZWZ0IHRvICIKKyJyaWdodDpcbiIKKyJcbiIKKyIgRXJyb3IgZmxhZzogU3BhY2UgLSBubyBlcnJvciAoYnV0IHBhY2thZ2UgbWF5IGJlIGluIGJyb2tlbiBzdGF0ZSAtIHNlZSAiCisiYmVsb3cpXG4iCisiICAgICAgICAgICAgICBgUicgIC0gc2VyaW91cyBlcnJvciBkdXJpbmcgaW5zdGFsbGF0aW9uLCBuZWVkcyAiCisicmVpbnN0YWxsYXRpb247XG4iCisiIEluc3RhbGxlZCBzdGF0ZTogICAgIFNwYWNlICAgIC0gbm90IGluc3RhbGxlZDtcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgIGAqJyAgICAgLSBpbnN0YWxsZWQ7XG4iCisiICAgICAgICAgICAgICAgICAgICAgICBgLScgICAgIC0gbm90IGluc3RhbGxlZCBidXQgY29uZmlnIGZpbGVzIHJlbWFpbjtcbiIKKyIgICBwYWNrYWdlcyBpbiB0aGVzZSB7IGBVJyAgICAgLSB1bnBhY2tlZCBidXQgbm90IHlldCBjb25maWd1cmVkO1xuIgorIiAgIHN0YXRlcyBhcmUgbm90ICAgIHsgYEMnICAgICAtIGhhbGYtY29uZmlndXJlZCAoYW4gZXJyb3IgaGFwcGVuZWQpO1xuIgorIiAgIChxdWl0ZSkgcHJvcGVybHkgIHsgYEknICAgICAtIGhhbGYtaW5zdGFsbGVkIChhbiBlcnJvciBoYXBwZW5lZCk7XG4iCisiICAgaW5zdGFsbGVkICAgICAgICAgeyBgVycsYHQnIC0gdHJpZ2dlcnMgYXJlIGF3YWl0ZWQgcmVzcC4gcGVuZGluZy5cbiIKKyIgT2xkIG1hcms6IHdoYXQgd2FzIHJlcXVlc3RlZCBmb3IgdGhpcyBwYWNrYWdlIGJlZm9yZSBwcmVzZW50aW5nIHRoaXMgbGlzdDtcbiIKKyIgTWFyazogd2hhdCBpcyByZXF1ZXN0ZWQgZm9yIHRoaXMgcGFja2FnZTpcbiIKKyIgIGAqJzogbWFya2VkIGZvciBpbnN0YWxsYXRpb24gb3IgdXBncmFkZTtcbiIKKyIgIGAtJzogbWFya2VkIGZvciByZW1vdmFsLCBidXQgYW55IGNvbmZpZ3VyYXRpb24gZmlsZXMgd2lsbCByZW1haW47XG4iCisiICBgPSc6IG9uIGhvbGQ6IHBhY2thZ2Ugd2lsbCBub3QgYmUgcHJvY2Vzc2VkIGF0IGFsbDtcbiIKKyIgIGBfJzogbWFya2VkIGZvciBwdXJnZSBjb21wbGV0ZWx5IC0gZXZlbiByZW1vdmUgY29uZmlndXJhdGlvbjtcbiIKKyIgIGBuJzogcGFja2FnZSBpcyBuZXcgYW5kIGhhcyB5ZXQgdG8gYmUgbWFya2VkIGZvciBpbnN0YWxsL3JlbW92ZS8mYy5cbiIKKyJcbiIKKyJBbHNvIGRpc3BsYXllZCBhcmUgZWFjaCBwYWNrYWdlJ3MgUHJpb3JpdHksIFNlY3Rpb24sIG5hbWUsIGluc3RhbGxlZCBhbmRcbiIKKyJhdmFpbGFibGUgdmVyc2lvbiBudW1iZXJzIChzaGlmdC1WIHRvIGRpc3BsYXkvaGlkZSkgYW5kIHN1bW1hcnkgIgorImRlc2NyaXB0aW9uLlxuIgorbXNnc3RyICIiCisiTGEgbWl0YWQgc3VwZXJpb3IgZGUgbGEgcGFudGFsbGEgbXVlc3RyYSB1bmEgbGlzdGEgZGUgcGFxdWV0ZXMuIFBhcmEgY2FkYVxuIgorInBhcXVldGUgdmVyw6EgY3VhdHJvIGNvbHVtbmFzIGNvbiBzdSBlc3RhZG8gYWN0dWFsIGVuIGVsIHNpc3RlbWEgeSBtYXJjYS4gRW5cbiIKKyJlbCBtb2RvIGNvbmNpc28gKHV0aWxpY2UgYHYnIHBhcmEgY2FtYmlhciBsYSBtdWVzdHJhIGRlIG1lbnNhamVzKSBlc3RvcyBzb25cbiIKKyJjYXJhY3RlcmVzIGluZGl2aWR1YWxlcywgZGUgbGEgaXpxdWllcmRhIGEgbGEgZGVyZWNoYTpcbiIKKyJcbiIKKyIgSW5kaWNhZG9yIGRlIGVycm9yOiBFc3BhY2lvIC0gbmluZ8O6biBlcnJvciAocGVybyBlbCBwYXF1ZXRlIHB1ZWRlIGVzdGFyIGVuXG4iCisiZXN0YWRvIHJvdG8gLSB2w6lhc2UgbcOhcyBhZGVsYW50ZSlcbiIKKyIgICAgICAgICBgUicgIC0gZXJyb3Igc2VyaW8gZHVyYW50ZSBsYSBpbnN0YWxhY2nDs24sIG5lY2VzaXRhIHJlaW5zdGFsYXJzZTtcbiIKKyIgRXN0YWRvIGluc3RhbGFkbzogIEVzcGFjaW8gICAgLSBubyBpbnN0YWxhZG87XG4iCisiICAgICAgICAgICAgICAgICAgICAgIGAqJyAgICAgIC0gaW5zdGFsYWRvO1xuIgorIiAgICAgICAgICAgICAgICAgICAgICBgLScgICAgICAtIG5vIGluc3RhbGFkbywgcGVybyBwZXJtYW5lY2VuIGZpY2hlcm9zIGRlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25maWd1cmFjacOzbjtcbiIKKyIgICAgbG9zIHBhcXVldGVzIGVuIHsgYFUnICAgICAgLSBkZXNlbXBhcXVldGFkbyBwZXJvIGHDum4gc2luIGNvbmZpZ3VyYXI7XG4iCisiICAgICAgZXN0b3MgZXN0YWRvcyB7IGBDJyAgICAgIC0gc2VtaS1jb25maWd1cmFkbyAob2N1cnJpw7MgdW4gZXJyb3IpO1xuIgorIiAgICAgIG5vIGVzdMOhbiBiaWVuIHsgYEknICAgICAgLSBzZW1pLWluc3RhbGFkbyAob2N1cnJpw7MgdW4gZXJyb3IpO1xuIgorIiAgICAgIGluc3RhbGFkb3MgICAgeyBgVycsIGB0JyAtIHBlbmRpZW50ZSBkZSBsYSBlamVjdWNpw7NuIGRlIGRpc3BhcmFkb3Jlcy5cbiIKKyIgTWFyY2EgYW50aWd1YTogbG8gc29saWNpdGFkbyBwYXJhIGVzdGUgcGFxdWV0ZSBhbnRlcyBkZSBwcmVzZW50YXIgZXN0YSAiCisibGlzdGE7XG4iCisiIE1hcmNhOiBsbyBxdWUgc2Ugc29saWNpdGEgcGFyYSBlc3RlIHBhcXVldGU7XG4iCisiICAgYConOiBtYXJjYWRvIHBhcmEgaW5zdGFsYWNpw7NuIG8gYWN0dWFsaXphY2nDs247XG4iCisiICAgYC0nOiBtYXJjYWRvIHBhcmEgZGVzaW5zdGFsYWNpw7NuLCBwZXJvIGxvcyBmaWNoZXJvcyBkZSBjb25maWd1cmFjacOzblxuIgorIiAgICAgICAgICBwZXJtYW5lY2Vyw6FuXG4iCisiICAgYD0nOiByZXRlbmlkbzogZWwgcGFxdWV0ZSBubyBzZSBwcm9jZXNhcsOhIGVuIGFic29sdXRvO1xuIgorIiAgIGBfJzogbWFyY2FkbyBwYXJhIHB1cmdhIGNvbXBsZXRhIC0gaW5jbHVzbyBzZSBlbGltaW5hcsOhIGxhXG4iCisiICAgICAgICAgIGNvbmZpZ3VyYWNpw7NuXG4iCisiICAgYG4nOiBlbCBwYXF1ZXRlIGVzIG51ZXZvIHkgYcO6biBkZWJlIG1hcmNhcnNlIHBhcmEgaW5zdGFsYXIvZGVzaW5zdGFsYXIvIgorImV0Yy5cbiIKKyJcbiIKKyJUYW1iacOpbiBzZSBtdWVzdHJhIGxhIFByaW9yaWRhZCwgU2VjY2nDs24sIG5vbWJyZSwgbsO6bWVyb3MgZGUgdmVyc2nDs24gIgorImRpc3BvbmlibGVcbiIKKyJlIGluc3RhbGFkYSBkZSBjYWRhIHBhcXVldGUgKE1hecO6cy1WIHBhcmEgbW9zdHJhci9lc2NvbmRlcikgeSBkZXNjcmlwY2nDs25cbiIKKyJyZXN1bWlkYS5cbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxNTIKK21zZ2lkICJEaXNwbGF5LCBwYXJ0IDI6IGxpc3QgaGlnaGxpZ2h0OyBpbmZvcm1hdGlvbiBkaXNwbGF5IgorbXNnc3RyICJNdWVzdHJhLCBwYXJ0ZSAyOiBkZXN0YWNhZG8gZGUgbGEgbGlzdGE7IG11ZXN0cmEgZGUgaW5mb3JtYWNpw7NuIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjE1MgorbXNnaWQgIiIKKyIqIEhpZ2hsaWdodDogT25lIGxpbmUgaW4gdGhlIHBhY2thZ2UgbGlzdCB3aWxsIGJlIGhpZ2hsaWdodGVkLiAgSXQgIgorImluZGljYXRlc1xuIgorIiAgd2hpY2ggcGFja2FnZShzKSB3aWxsIGJlIGFmZmVjdGVkIGJ5IHByZXNzZXMgb2YgYCsnLCBgLScgYW5kIGBfJy5cbiIKKyJcbiIKKyIqIFRoZSBkaXZpZGluZyBsaW5lIGluIHRoZSBtaWRkbGUgb2YgdGhlIHNjcmVlbiBzaG93cyBhIGJyaWVmIGV4cGxhbmF0aW9uICIKKyJvZlxuIgorIiAgdGhlIHN0YXR1cyBvZiB0aGUgY3VycmVudGx5LWhpZ2hsaWdodGVkIHBhY2thZ2UsIG9yIGEgZGVzY3JpcHRpb24gb2YgIgorIndoaWNoXG4iCisiICBncm91cCBpcyBoaWdobGlnaHRlZCBpZiBhIGdyb3VwIGxpbmUgaXMuICBJZiB5b3UgZG9uJ3QgdW5kZXJzdGFuZCB0aGVcbiIKKyIgIG1lYW5pbmcgb2Ygc29tZSBvZiB0aGUgc3RhdHVzIGNoYXJhY3RlcnMgZGlzcGxheWVkLCBnbyB0byB0aGUgcmVsZXZhbnRcbiIKKyIgIHBhY2thZ2UgYW5kIGxvb2sgYXQgdGhpcyBkaXZpZGVyIGxpbmUsIG9yIHVzZSB0aGUgYHYnIGtleSBmb3IgYSB2ZXJib3NlXG4iCisiICBkaXNwbGF5IChwcmVzcyBgdicgYWdhaW4gdG8gZ28gYmFjayB0byB0aGUgdGVyc2UgZGlzcGxheSkuXG4iCisiXG4iCisiKiBUaGUgYm90dG9tIG9mIHRoZSBzY3JlZW4gc2hvd3MgbW9yZSBpbmZvcm1hdGlvbiBhYm91dCB0aGVcbiIKKyIgIGN1cnJlbnRseS1oaWdobGlnaHRlZCBwYWNrYWdlIChpZiB0aGVyZSBpcyBvbmx5IG9uZSkuXG4iCisiXG4iCisiICBJdCBjYW4gc2hvdyBhbiBleHRlbmRlZCBkZXNjcmlwdGlvbiBvZiB0aGUgcGFja2FnZSwgdGhlIGludGVybmFsIHBhY2thZ2VcbiIKKyIgIGNvbnRyb2wgZGV0YWlscyAoZWl0aGVyIGZvciB0aGUgaW5zdGFsbGVkIG9yIGF2YWlsYWJsZSB2ZXJzaW9uIG9mIHRoZVxuIgorIiAgcGFja2FnZSksIG9yIGluZm9ybWF0aW9uIGFib3V0IGNvbmZsaWN0cyBhbmQgZGVwZW5kZW5jaWVzIGludm9sdmluZyB0aGVcbiIKKyIgIGN1cnJlbnQgcGFja2FnZSAoaW4gY29uZmxpY3QvZGVwZW5kZW5jeSByZXNvbHV0aW9uIHN1Ymxpc3RzKS5cbiIKKyJcbiIKKyIgIFVzZSB0aGUgYGknIGtleSB0byBjeWNsZSB0aHJvdWdoIHRoZSBkaXNwbGF5cywgYW5kIGBJJyB0byBoaWRlIHRoZVxuIgorIiAgaW5mb3JtYXRpb24gZGlzcGxheSBvciBleHBhbmQgaXQgdG8gdXNlIGFsbW9zdCBhbGwgb2YgdGhlIHNjcmVlbi5cbiIKK21zZ3N0ciAiIgorIiogRGVzdGFjYWRvOiBzZSBkZXN0YWNhcsOhIHVuYSBsw61uZWEgZW4gZWwgbGlzdGFkbyBkZSBwYXF1ZXRlLiBJbmRpY2EgcXXDqVxuIgorIiAgcGFxdWV0ZShzKSBzZSBhZmVjdGFyw6FuIGFsIHB1bHNhciBgKycsIGAtJyB5IGBfJy5cbiIKKyJcbiIKKyIqIExhIGzDrW5lYSBkaXZpc29yaWEgZW4gbGEgbWl0YWQgZGUgbGEgcGFudGFsbGEgbXVlc3RyYSB1bmEgZXhwbGljYWNpw7NuXG4iCisiICBicmV2ZSBkZWwgZXN0YWRvIGRlbCBwYXF1ZXRlIGFjdHVhbG1lbnRlIGRlc3RhY2FkbywgbyB1bmEgZGVzY3JpcGNpw7NuIGRlbFxuIgorIiAgZ3J1cG8gZGVzdGFjYWRvIHNpIHNlIHRyYXRhIGRlIHVuYSBsw61uZWEgZGUgZ3J1cG8uIFNpIG5vIGVudGllbmRlIGVsXG4iCisiICBzaWduaWZpY2FkbyBkZSBhbGd1bm9zIGRlIGxvcyBjYXJhY3RlcmVzIGRlIGVzdGFkbyBtb3N0cmFkb3MsIHZheWEgYWxcbiIKKyIgIHBhcXVldGUgcmVsZXZhbnRlIHkgbWlyZSBlbiBlc3RhIGzDrW5lYSBkZSBkaXZpc2nDs24sIG8gdXRpbGljZSBsYSB0ZWNsYSAiCisiYHYnXG4iCisiICBwYXJhIHVuYSBtdWVzdHJhIGNvbXBsZXRhIChwdWxzZSBudWV2YW1lbnRlIGB2JyBwYXJhIHZvbHZlciBhIGxhIG11ZXN0cmFcbiIKKyIgIGNvbmNpc2EpLlxuIgorIlxuIgorIiogRWwgZmluYWwgZGUgbGEgcGFudGFsbGEgbXVlc3RyYSBhbGd1bmEgaW5mb3JtYWNpw7NuIHNvYnJlIGVsIHBhcXVldGVcbiIKKyIgIGFjdHVhbG1lbnRlIGRlc3RhY2FkbyAoc2kgc8OzbG8gaGF5IHVubykuXG4iCisiXG4iCisiICBTZSBwdWVkZSBtb3N0cmFyIHVuYSBkZXNjcmlwY2nDs24gZXh0ZW5kaWRhIGRlbCBwYXF1ZXRlLCBkZXRhbGxlcyBkZSAiCisiY29udHJvbFxuIgorIiAgaW50ZXJub3MgZGVsIHBhcXVldGUgKHRhbnRvIHBhcmEgbGEgdmVyc2nDs24gaW5zdGFsYWRhIGNvbW8gcGFyYSBsYSAiCisiZGlzcG9uaWJsZVxuIgorIiAgZGVsIHBhcXVldGUpLCBvIGluZm9ybWFjacOzbiBzb2JyZSBsb3MgY29uZmxpY3RvcyB5IGxhcyBkZXBlbmRlbmNpYXMgcXVlXG4iCisiICBjb25jaWVybmVuIGFsIHBhcXVldGUgYWN0dWFsIChlbiBzdWItbGlzdGFzIGRlIHJlc29sdWNpw7NuIGRlXG4iCisiICBjb25mbGljdG8vZGVwZW5kZW5jaWEpLlxuIgorIlxuIgorIiAgVXRpbGljZSBsYSB0ZWNsYSBgaScgcGFyYSBjaXJjdWxhciBhIHRyYXbDqXMgZGUgbGFzIG11ZXN0cmEsIGUgYEknIHBhcmFcbiIKKyIgIGVzY29uZGVyIGxhIG11ZXN0cmEgZGUgaW5mb3JtYWNpw7NuIG8gZXhwYW5kaXJsYSBwYXJhIHV0aWxpemFyIGNhc2kgdG9kYVxuIgorIiAgbGEgcGFudGFsbGEuXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTc2Cittc2dpZCAiSW50cm9kdWN0aW9uIHRvIG1ldGhvZCBzZWxlY3Rpb24gZGlzcGxheSIKK21zZ3N0ciAiSW50cm9kdWNjacOzbiBhIGxhIG11ZXN0cmEgZGUgc2VsZWNjacOzbiBkZSBtw6l0b2RvIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjE3NgorbXNnaWQgIiIKKyJkc2VsZWN0IGFuZCBkcGtnIGNhbiBkbyBhdXRvbWF0aWMgaW5zdGFsbGF0aW9uLCBsb2FkaW5nIHRoZSBwYWNrYWdlIGZpbGVzIHRvICIKKyJiZVxuIgorImluc3RhbGxlZCBmcm9tIG9uZSBvZiBhIG51bWJlciBvZiBkaWZmZXJlbnQgcG9zc2libGUgcGxhY2VzLlxuIgorIlxuIgorIlRoaXMgbGlzdCBhbGxvd3MgeW91IHRvIHNlbGVjdCBvbmUgb2YgdGhlc2UgaW5zdGFsbGF0aW9uIG1ldGhvZHMuXG4iCisiXG4iCisiTW92ZSB0aGUgaGlnaGxpZ2h0IHRvIHRoZSBtZXRob2QgeW91IHdpc2ggdG8gdXNlLCBhbmQgaGl0IEVudGVyLiAgWW91IHdpbGwgIgorInRoZW5cbiIKKyJiZSBwcm9tcHRlZCBmb3IgdGhlIGluZm9ybWF0aW9uIHJlcXVpcmVkIHRvIGRvIHRoZSBpbnN0YWxsYXRpb24uXG4iCisiXG4iCisiQXMgeW91IG1vdmUgdGhlIGhpZ2hsaWdodCBhIGRlc2NyaXB0aW9uIG9mIGVhY2ggbWV0aG9kLCB3aGVyZSBhdmFpbGFibGUsIGlzXG4iCisiZGlzcGxheWVkIGluIHRoZSBib3R0b20gaGFsZiBvZiB0aGUgc2NyZWVuLlxuIgorIlxuIgorIklmIHlvdSB3aXNoIHRvIHF1aXQgd2l0aG91dCBjaGFuZ2luZyBhbnl0aGluZyB1c2UgdGhlIGB4JyBrZXkgd2hpbGUgaW4gdGhlICIKKyJsaXN0XG4iCisib2YgaW5zdGFsbGF0aW9uIG1ldGhvZHMuXG4iCisiXG4iCisiQSBmdWxsIGxpc3Qgb2Yga2V5c3Ryb2tlcyBpcyBhdmFpbGFibGUgYnkgcHJlc3NpbmcgYGsnIG5vdywgb3IgZnJvbSB0aGUgIgorImhlbHBcbiIKKyJtZW51IHJlYWNoYWJsZSBieSBwcmVzc2luZyBgPycuXG4iCittc2dzdHIgIiIKKyJkc2VsZWN0IHkgZHBrZyBwdWVkZW4gcmVhbGl6YXIgaW5zdGFsYWNpw7NuIGF1dG9tw6F0aWNhLCBjYXJnYW5kbyBsb3MgIgorImZpY2hlcm9zXG4iCisiZGUgcGFxdWV0ZXMgcXVlIHNlIHZhbiBhIGluc3RhbGFyIGRlc2RlIHVuYSBkaXZlcnNpZGFkIGRlIGx1Z2FyZXMgIgorImRpZmVyZW50ZXMuXG4iCisiXG4iCisiRXN0YSBsaXN0YSBsZSBwZXJtaXRlIHNlbGVjY2lvbmFyIHVubyBkZSBlc3RvcyBtw6l0b2RvcyBkZSBpbnN0YWxhY2nDs24uXG4iCisiXG4iCisiRGVzcGxhY2UgZWwgcmVhbGNlIGlsdW1pbmFkbyBhbCBtw6l0b2RvIHF1ZSBkZXNlYSB1dGlsaXphciB5IHB1bHNlIDxJbnRybz5cbiIKKyJFbnRvbmNlcyBzZSBsZSBzb2xpY2l0YXLDoSBsYSBpbmZvcm1hY2nDs24gbmVjZXNhcmlhIHBhcmEgbGEgaW5zdGFsYWNpw7NuLlxuIgorIlxuIgorIk1pZW50cmFzIGRlc3BsYWNlIGVsIHJlYWxjZSBpbHVtaW5hZG8gc2UgbW9zdHJhcsOhLCBjdWFuZG8gZXN0w6kgZGlzcG9uaWJsZSxcbiIKKyJ1bmEgZGVzY3JpcGNpw7NuIGRlIGNhZGEgbcOpdG9kbyBlbiBsYSBtaXRhZCBpbmZlcmlvciBkZSBsYSBwYW50YWxsYS5cbiIKKyJcbiIKKyJTaSBkZXNlYSBhYmFuZG9uYXIgc2luIGNhbWJpYXIgbmFkYSB1dGlsaWNlIGxhIHRlY2xhIGB4JyBtaWVudHJhcyBzZSAiCisiZW5jdWVudHJlXG4iCisiZW4gbGEgbGlzdGEgZGUgbcOpdG9kb3MgZGUgaW5zdGFsYWNpw7NuLlxuIgorIlxuIgorIlVuYSBsaXN0YSBjb21wbGV0YSBkZSBsYXMgY29tYmluYWNpb25lcyBkZSB0ZWNsYXMgc2UgZW5jdWVudHJhIGRpc3BvbmlibGUgIgorImFsXG4iCisicHVsc2FyIGBrJywgbyBkZXNkZSBlbCBtZW7DuiBkZSBheXVkYSBhbCBxdWUgc2UgYWNjZWRlIHB1bHNhbmRvIGA/Jy5cbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxOTYKK21zZ2lkICJLZXlzdHJva2VzIGZvciBtZXRob2Qgc2VsZWN0aW9uIgorbXNnc3RyICJUZWNsYXMgcGFyYSBsYSBzZWxlY2Npw7NuIGRlIG3DqXRvZG8iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTk2Cittc2dpZCAiIgorIk1vdGlvbiBrZXlzOiBOZXh0L1ByZXZpb3VzLCBUb3AvRW5kLCBVcC9Eb3duLCBCYWNrd2FyZHMvRm9yd2FyZHM6XG4iCisiICBqLCBEb3duLWFycm93ICAgICAgICAgaywgVXAtYXJyb3cgICAgICAgICAgICAgbW92ZSBoaWdobGlnaHRcbiIKKyIgIE4sIFBhZ2UtZG93biwgU3BhY2UgICBQLCBQYWdlLXVwLCBCYWNrc3BhY2UgICBzY3JvbGwgbGlzdCBieSAxIHBhZ2VcbiIKKyIgIF5uICAgICAgICAgICAgICAgICAgICBecCAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgbGlzdCBieSAxIGxpbmVcbiIKKyIgIHQsIEhvbWUgICAgICAgICAgICAgICBlLCBFbmQgICAgICAgICAgICAgICAgICBqdW1wIHRvIHRvcC9lbmQgb2YgbGlzdFxuIgorIiAgdSAgICAgICAgICAgICAgICAgICAgIGQgICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIGJ5IDEgcGFnZVxuIgorIiAgXnUgICAgICAgICAgICAgICAgICAgIF5kICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIGJ5IDEgbGluZVxuIgorIiAgQiwgTGVmdC1hcnJvdyAgICAgICAgIEYsIFJpZ2h0LWFycm93ICAgICAgICAgIHBhbiBkaXNwbGF5IGJ5IDEvMyBzY3JlZW5cbiIKKyIgIF5iICAgICAgICAgICAgICAgICAgICBeZiAgICAgICAgICAgICAgICAgICAgICBwYW4gZGlzcGxheSBieSAxIGNoYXJhY3RlclxuIgorIihUaGVzZSBhcmUgdGhlIHNhbWUgbW90aW9uIGtleXMgYXMgaW4gdGhlIHBhY2thZ2UgbGlzdCBkaXNwbGF5LilcbiIKKyJcbiIKKyJRdWl0OlxuIgorIiBSZXR1cm4sIEVudGVyICAgIHNlbGVjdCB0aGlzIG1ldGhvZCBhbmQgZ28gdG8gaXRzIGNvbmZpZ3VyYXRpb24gZGlhbG9ndWVcbiIKKyIgeCwgWCAgICAgICAgICAgICBleGl0IHdpdGhvdXQgY2hhbmdpbmcgb3Igc2V0dGluZyB1cCB0aGUgaW5zdGFsbGF0aW9uICIKKyJtZXRob2RcbiIKKyJcbiIKKyJNaXNjZWxsYW5lb3VzOlxuIgorIiAgPywgSGVscCwgRjEgICAgICByZXF1ZXN0IGhlbHBcbiIKKyIgXmwgICAgICAgICAgICAgICAgcmVkcmF3IGRpc3BsYXlcbiIKKyIgIC8gICAgICAgICAgICAgICAgc2VhcmNoIChqdXN0IHJldHVybiB0byBjYW5jZWwpXG4iCisiICBcXCAgICAgICAgICAgICAgICByZXBlYXQgbGFzdCBzZWFyY2hcbiIKK21zZ3N0ciAiIgorIlRlY2xhcyBkZSBtb3ZpbWllbnRvOiBSZSBQw6FnL0F2IFDDoWcsIEluaWNpby9GaW4sIEFycmliYS9BYmFqbywgQWRlbGFudGUvIgorIkF0csOhc1xuIgorIiAgaiwgRmxlY2hhLWFiYWpvICAgICAgIGssIEZsZWNoYS1hcnJpYmEgICAgICAgbW92ZXIgZWwgcmVhbGNlIGlsdW1pbmFkb1xuIgorIiAgTiwgUmUgUMOhZywgRXNwYWNpbyAgICBQLCBBdiBQw6FnLCBSZXRyb2Nlc28gICBkZXNwbGF6YXIgbGEgbGlzdGEgZW4gMSAiCisicMOhZ2luYVxuIgorIiAgXm4gICAgICAgICAgICAgICAgICAgIF5wICAgICAgICAgICAgICAgICAgICAgZGVzcGxhemFyIGxhIGxpc3RhIGVuIDEgIgorImzDrW5lYVxuIgorIiAgdCwgSW5pY2lvICAgICAgICAgICAgIGIsIEZpbiAgICAgICAgICAgICAgICAgc2FsdGFyIGFsIGluaWNpby9maW4gZGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYSBsaXN0YVxuIgorIiAgdSAgICAgICAgICAgICAgICAgICAgIGQgICAgICAgICAgICAgICAgICAgICAgZGVzcGxhemFyIGxhIGluZm9ybWFjacOzblxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVuIDEgcMOhZ2luYVxuIgorIiAgXnUgICAgICAgICAgICAgICAgICAgIF5kICAgICAgICAgICAgICAgICAgICAgZGVzcGxhemFyIGxhIGluZm9ybWFjacOzblxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVuIDEgbMOtbmVhXG4iCisiICBCLCBGbGVjaGEtaXpxdWllcmRhICAgRiwgRmxlY2hhLWRlcmVjaGEgICAgICBkZXNwbGF6YXIgbGEgbXVlc3RyYSAxLzMgZGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYSBwYW50YWxsYVxuIgorIiAgXmIgICAgICAgICAgICAgICAgICAgIF5mICAgICAgICAgICAgICAgICAgICAgZGVzcGxhemFyIGxhIG11ZXN0cmEgMSAiCisiY2Fyw6FjdGVyXG4iCisiKMOJc3RhcyBzb24gbGFzIG1pc21hcyB0ZWNsYXMgZGUgbW92aW1pZW50byBxdWUgZW4gbGEgbXVlc3RyYSBkZSBsaXN0YVxuIgorImRlIHBhcXVldGVzLilcbiIKKyJcbiIKKyJBYmFuZG9uYXI6XG4iCisiIFJldHVybiwgSW50cm8gICBzZWxlY2Npb25hciBlc3RlIG3DqXRvZG8gZSBpciBhIHN1IGRpw6Fsb2dvIGRlIGNvbmZpZ3VyYWNpw7NuXG4iCisiIHgsIFggICAgICAgICAgICBzYWxpciBzaW4gYWx0ZXJhciBvIGVzdGFibGVjZXIgZWwgbcOpdG9kbyBkZSBpbnN0YWxhY2nDs25cbiIKKyJcbiIKKyJNaXNjZWzDoW5lYTpcbiIKKyIgID8sIEF5dWRhLCBGMSAgIHNvbGljaXRhciBheXVkYVxuIgorIiBebCAgICAgICAgICAgICAgdm9sdmVyIGEgcHJlc2VudGFyIGxhIG11ZXN0cmFcbiIKKyIgIC8gICAgICAgICAgICAgIGJ1c2NhciAoc2ltcGxlbWVudGUgcHVsc2UgSW50cm8gcGFyYSBjYW5jZWxhcilcbiIKKyIgIFxcICAgICAgICAgICAgICByZXBldGlyIGxhIMO6bHRpbWEgYsO6c3F1ZWRhXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzo2MAorbXNnaWQgIlR5cGUgZHNlbGVjdCAtLWhlbHAgZm9yIGhlbHAuIgorbXNnc3RyICJFc2NyaWJhIGRzZWxlY3QgLS1oZWxwIHBhcmEgb2J0ZW5lciBheXVkYS4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDMKK21zZ2lkICJhIgorbXNnc3RyICJtIgorCisjIFBvbmdvIG3DqXRvZG8geSBubyBhY2Nlc28gcG9ycXVlIGxhICJBIiBlc3TDoSB5YSBjb2dpZGEgcGFyYSBBY3R1YWxpemFyLiBzdgorIzogZHNlbGVjdC9tYWluLmNjOjE0MworbXNnaWQgIltBXWNjZXNzIgorbXNnc3RyICJbTV3DqXRvZG8iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDMKK21zZ2lkICJDaG9vc2UgdGhlIGFjY2VzcyBtZXRob2QgdG8gdXNlLiIKK21zZ3N0ciAiRXNjb2dlciBlbCBtw6l0b2RvIGRlIGFjY2VzbyBxdWUgc2UgdXNhcsOhLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NAorbXNnaWQgInUiCittc2dzdHIgImEiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDQKK21zZ2lkICJbVV1wZGF0ZSIKK21zZ3N0ciAiW0FdY3R1YWxpemFyIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ0Cittc2dpZCAiVXBkYXRlIGxpc3Qgb2YgYXZhaWxhYmxlIHBhY2thZ2VzLCBpZiBwb3NzaWJsZS4iCittc2dzdHIgIkFjdHVhbGl6YXIgbGEgbGlzdGEgZGUgcGFxdWV0ZXMgZGlzcG9uaWJsZXMsIHNpIHNlIHB1ZWRlLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NQorbXNnaWQgInMiCittc2dzdHIgInMiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDUKK21zZ2lkICJbU11lbGVjdCIKK21zZ3N0ciAiW1NdZWxlY2Npb25hciIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NQorbXNnaWQgIlJlcXVlc3Qgd2hpY2ggcGFja2FnZXMgeW91IHdhbnQgb24geW91ciBzeXN0ZW0uIgorbXNnc3RyICJTb2xpY2l0YXIgcXXDqSBwYXF1ZXRlcyBkZXNlYSBlbiBlbCBzaXN0ZW1hLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NgorbXNnaWQgImkiCittc2dzdHIgImkiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDYKK21zZ2lkICJbSV1uc3RhbGwiCittc2dzdHIgIltJXW5zdGFsYXIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDYKK21zZ2lkICJJbnN0YWxsIGFuZCB1cGdyYWRlIHdhbnRlZCBwYWNrYWdlcy4iCittc2dzdHIgIkluc3RhbGFyIHkgYWN0dWFsaXphciBsb3MgcGFxdWV0ZXMgZGVzZWFkb3MuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ3Cittc2dpZCAiYyIKK21zZ3N0ciAiYyIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NworbXNnaWQgIltDXW9uZmlnIgorbXNnc3RyICJbQ11vbmZpZ3VyYXIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDcKK21zZ2lkICJDb25maWd1cmUgYW55IHBhY2thZ2VzIHRoYXQgYXJlIHVuY29uZmlndXJlZC4iCittc2dzdHIgIkNvbmZpZ3VyYXIgbG9zIHBhcXVldGVzIHF1ZSBubyBlc3TDqW4gY29uZmlndXJhZG9zLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OAorbXNnaWQgInIiCittc2dzdHIgImQiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDgKK21zZ2lkICJbUl1lbW92ZSIKK21zZ3N0ciAiW0RdZXNpbnN0YWxhciIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OAorbXNnaWQgIlJlbW92ZSB1bndhbnRlZCBzb2Z0d2FyZS4iCittc2dzdHIgIkRlc2luc3RhbGFyIGxvcyBwYXF1ZXRlcyBubyBkZXNlYWRvcy4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDkKK21zZ2lkICJxIgorbXNnc3RyICJsIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ5Cittc2dpZCAiW1FddWl0IgorbXNnc3RyICJzYVtMXWlyIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ5Cittc2dpZCAiUXVpdCBkc2VsZWN0LiIKK21zZ3N0ciAiU2FsaXIgZGUgZHNlbGVjdC4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNTAKK21zZ2lkICJtZW51IgorbXNnc3RyICJtZW7DuiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE1NQorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIGhhbmRsaW5nIGZyb250ZW5kIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkludGVyZmF6IGRlIG1hbmVqbyBkZSBwYXF1ZXRlcyAlcyBkZSBEZWJpYW4gYCVzJy5cbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE1OAorbXNnaWQgIiIKKyJDb3B5cmlnaHQgKEMpIDE5OTQtMTk5NiBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLlxuIgorbXNnc3RyICIiCisiQ29weXJpZ2h0IChDKSAxOTk0LTE5OTYgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE2MgorbXNnaWQgIiIKKyJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAyIG9yXG4iCisibGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuXG4iCittc2dzdHIgIiIKKyJFc3RvIGVzIHNvZnR3YXJlIGxpYnJlOyB2ZWEgbGEgTGljZW5jaWEgUMO6YmxpY2EgR2VuZXJhbCBkZSBHTlUgdmVyc2nDs24gMiBvXG4iCisicG9zdGVyaW9yIHBhcmEgbGFzIGNvbmRpY2lvbmVzIGRlIGNvcGlhLiBObyBoYXkgTklOR1VOQSBnYXJhbnTDrWEuXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNzIgZHNlbGVjdC9tYWluLmNjOjIyMAorbXNnaWQgIjxzdGFuZGFyZCBvdXRwdXQ+IgorbXNnc3RyICI8c2FsaWRhIGVzdMOhbmRhcj4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSBbPGFjdGlvbj4gLi4uXVxuIgorIlxuIgorbXNnc3RyICIiCisiTW9kbyBkZSB1c286ICVzIFs8b3BjacOzbj4gLi4uXSBbPGFjY2nDs24+IC4uLl1cbiIKKyJcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE4NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorIiAgLS1leHBlcnQgICAgICAgICAgICAgICAgICAgVHVybiBvbiBleHBlcnQgbW9kZS5cbiIKKyIgIC0tZGVidWcgPGZpbGU+IHwgLUQ8ZmlsZT4gIFR1cm4gb24gZGVidWdnaW5nLCBzZW5kaW5nIG91dHB1dCB0byA8ZmlsZT4uXG4iCisiICAtLWNvbG91ciB8IC0tY29sb3Igc2NyZWVucGFydDpbZm9yZWdyb3VuZF0sW2JhY2tncm91bmRdWzphdHRyWythdHRyKy4uXV1cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENvbmZpZ3VyZSBzY3JlZW4gY29sb3Vycy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIk9jaW9uZXM6XG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3RvcmlvPiAgICAgICAgICBVdGlsaXphIDxkaXJlY3RvcmlvPiBlbiBsdWdhciBkZSAlcy5cbiIKKyIgIC0tZXhwZXJ0ICAgICAgICAgICAgICAgICAgICAgICAgIEFjdGl2YSBlbCBtb2RvIGV4cGVydG8uXG4iCisiICAtLWRlYnVnIDxmaWNoZXJvPiB8IC1EPGZpY2hlcm8+ICBBY3RpdmEgbGEgZGVwdXJhY2nDs24geSBlbnbDrWEgbGEgc2FsaWRhIGEgIgorIjxmaWNoZXJvPi5cbiIKKyIgIC0tY29sb3VyIHwgLS1jb2xvciBzY3JlZW5wYXJ0OltwcmltZXJfcGxhbm9dLFtzZWd1bmRvX3BsYW5vXVs6YXRyYlsrYXRyYiIKKyIrLi5dXVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ29uZmlndXJhIGxvcyBjb2xvcmVzIGRlIGxhIHBhbnRhbGxhLlxuIgorIlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTk2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgICBTaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorbXNnc3RyICIiCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgICAgIE11ZXN0cmEgZXN0ZSBtZW5zYWplIGRlIGF5dWRhLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICAgICBNdWVzdHJhIGxhIHZlcnNpw7NuLlxuIgorIlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjAxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJBY3Rpb25zOlxuIgorIiAgYWNjZXNzIHVwZGF0ZSBzZWxlY3QgaW5zdGFsbCBjb25maWcgcmVtb3ZlIHF1aXRcbiIKKyJcbiIKK21zZ3N0ciAiIgorIkFjY2lvbmVzOlxuIgorIiBhY2Nlc3MgdXBkYXRlIHNlbGVjdCBpbnN0YWxsIGNvbmZpZyByZW1vdmUgcXVpdFxuIgorIlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjA1CisjLCBjLWZvcm1hdAorbXNnaWQgIlNjcmVlbnBhcnRzOlxuIgorbXNnc3RyICJQYXJ0ZXMgZGUgcGFudGFsbGE6XG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ29sb3VyczpcbiIKK21zZ3N0ciAiQ29sb3JlczpcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjIxNQorIywgYy1mb3JtYXQKK21zZ2lkICJBdHRyaWJ1dGVzOlxuIgorbXNnc3RyICJBdHJpYnV0b3M6XG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGRuJ3Qgb3BlbiBkZWJ1ZyBmaWxlIGAlLjI1NXMnXG4iCittc2dzdHIgIm5vIHNlIHB1ZWRlIGFicmlyIGVsIGZpY2hlcm8gZGUgZGVwdXJhY2nDs24gYCUuMjU1cydcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjI1MworIywgYy1mb3JtYXQKK21zZ2lkICJJbnZhbGlkICVzIGAlcydcbiIKK21zZ3N0ciAiJXMgaW52w6FsaWRvIGAlcydcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjI3MAorbXNnaWQgInNjcmVlbiBwYXJ0IgorbXNnc3RyICJwYXJ0ZSBkZSBwYW50YWxsYSIKKworIzogZHNlbGVjdC9tYWluLmNjOjI3NgorbXNnaWQgIk51bGwgY29sb3VyIHNwZWNpZmljYXRpb25cbiIKK21zZ3N0ciAiRXNwZWNpZmljYWNpw7NuIGRlIGNvbG9yIG51bGFcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjI4NCBkc2VsZWN0L21haW4uY2M6Mjg5Cittc2dpZCAiY29sb3VyIgorbXNnc3RyICJjb2xvciIKKworIzogZHNlbGVjdC9tYWluLmNjOjI5NworbXNnaWQgImNvbG91ciBhdHRyaWJ1dGUiCittc2dzdHIgImF0cmlidXRvIGRlIGNvbG9yIgorCisjOiBkc2VsZWN0L21haW4uY2M6MzI5Cittc2dpZCAiVGVybWluYWwgZG9lcyBub3QgYXBwZWFyIHRvIHN1cHBvcnQgY3Vyc29yIGFkZHJlc3NpbmcuXG4iCittc2dzdHIgIkVsIHRlcm1pbmFsIG5vIHBhcmVjZSBkYXIgc29wb3J0ZSBhbCBkaXJlY2Npb25hbWllbnRvIHBvciBjdXJzb3IuXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzozMzEKK21zZ2lkICJUZXJtaW5hbCBkb2VzIG5vdCBhcHBlYXIgdG8gc3VwcG9ydCBoaWdobGlnaHRpbmcuXG4iCittc2dzdHIgIkVsIHRlcm1pbmFsIHBhcmVjZSBubyBkYXIgc29wb3J0ZSBhbCBkZXN0YWNhZG8uXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzozMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlNldCB5b3VyIFRFUk0gdmFyaWFibGUgY29ycmVjdGx5LCB1c2UgYSBiZXR0ZXIgdGVybWluYWwsXG4iCisib3IgbWFrZSBkbyB3aXRoIHRoZSBwZXItcGFja2FnZSBtYW5hZ2VtZW50IHRvb2wgJXMuXG4iCittc2dzdHIgIiIKKyJFc3RhYmxlemNhIGxhIHZhcmlhYmxlIFRFUk0gY29ycmVjdGFtZW50ZSwgdXRpbGljZSB1biB0ZXJtaW5hbCBtZWpvcixcbiIKKyJvIG1hbsOpamVzZSBjb24gbGEgaGVycmFtaWVudGEgZGUgZ2VzdGnDs24gcG9yIHBhcXVldGUgJXMuXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzozMzYKK21zZ2lkICJ0ZXJtaW5hbCBsYWNrcyBuZWNlc3NhcnkgZmVhdHVyZXMsIGdpdmluZyB1cCIKK21zZ3N0ciAiZWwgdGVybWluYWwgY2FyZWNlIGRlIHByb3BpZWRhZGVzIG5lY2VzYXJpYXM6IGFiYW5kb25hbmRvIgorCisjOiBkc2VsZWN0L21haW4uY2M6NDE3Cittc2dpZCAiIgorIlxuIgorIlxuIgorIk1vdmUgYXJvdW5kIHdpdGggXlAgYW5kIF5OLCBjdXJzb3Iga2V5cywgaW5pdGlhbCBsZXR0ZXJzLCBvciBkaWdpdHM7XG4iCisiUHJlc3MgPGVudGVyPiB0byBjb25maXJtIHNlbGVjdGlvbi4gICBeTCByZWRyYXdzIHNjcmVlbi5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIlxuIgorIlxuIgorIlV0aWxpY2UgXlAgeSBeTiwgbGFzIHRlY2xhcyBkZWwgY3Vyc29yLCBsZXRyYXMgaW5pY2lhbGVzLCBvIGTDrWdpdG9zO1xuIgorIlB1bHNlIDxpbnRybz4gcGFyYSBjb25maXJtYXIgbGEgc2VsZWNjacOzbi4gIF5MIHJlZGlidWphIGxhIHBhbnRhbGxhLlxuIgorIlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6NDI4Cittc2dpZCAiIgorIlxuIgorIlxuIgorIlJlYWQtb25seSBhY2Nlc3M6IG9ubHkgcHJldmlldyBvZiBzZWxlY3Rpb25zIGlzIGF2YWlsYWJsZSEiCittc2dzdHIgIiIKKyJcbiIKKyJcbiIKKyJBY2Nlc28gZGUgc8OzbG8gbGVjdHVyYTogwqFzb2xhbWVudGUgc2UgcHVlZGVuIHZlciBsYXMgc2VsZWNjaW9uZXMhIgorCisjOiBkc2VsZWN0L21haW4uY2M6NDQ4Cittc2dpZCAiZmFpbGVkIHRvIGdldGNoIGluIG1haW4gbWVudSIKK21zZ3N0ciAiZmFsbG8gZW4gZ2V0Y2ggZW4gZWwgbWVuw7ogcHJpbmNpcGFsIgorCisjOiBkc2VsZWN0L21haW4uY2M6NTMxCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gYWN0aW9uIHN0cmluZyBgJS41MHMnIgorbXNnc3RyICJjYWRlbmEgZGUgYWNjacOzbiBkZXNjb25vY2lkYSBgJS41MHMnIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjc3Cittc2dpZCAiZHNlbGVjdCAtIGxpc3Qgb2YgYWNjZXNzIG1ldGhvZHMiCittc2dzdHIgImRzZWxlY3QgLSBsaXN0YSBkZSBtw6l0b2RvcyBkZSBhY2Nlc28iCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiQWNjZXNzIG1ldGhvZCBgJXMnLiIKK21zZ3N0ciAiTcOpdG9kbyBkZSBhY2Nlc28gYCVzJy4iCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTIwCittc2dpZCAiQWJicmV2LiIKK21zZ3N0ciAiQWJyZXYuIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjEyMSBkc2VsZWN0L3BrZ2luZm8uY2M6MTA1IGRzZWxlY3QvcGtndG9wLmNjOjI5MQorbXNnaWQgIkRlc2NyaXB0aW9uIgorbXNnc3RyICJEZXNjcmlwY2nDs24iCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTY0IGRzZWxlY3QvcGtnbGlzdC5jYzo1NzIKK21zZ2lkICJkb3VwZGF0ZSBmYWlsZWQiCittc2dzdHIgImBkb3VwZGF0ZScgZmFsbMOzIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjE2NiBkc2VsZWN0L3BrZ2xpc3QuY2M6NTc1Cittc2dpZCAiZmFpbGVkIHRvIHVuYmxvY2sgU0lHV0lOQ0giCittc2dzdHIgImZhbGxvIGFsIGRlc2Jsb3F1ZWFyIFNJR1dJTkNIIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjE3MCBkc2VsZWN0L3BrZ2xpc3QuY2M6NTgwCittc2dpZCAiZmFpbGVkIHRvIHJlLWJsb2NrIFNJR1dJTkNIIgorbXNnc3RyICJmYWxsbyBhbCByZWJsb3F1ZWFyIFNJR1dJTkNIIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjE3MSBkc2VsZWN0L3BrZ2xpc3QuY2M6NTgyCittc2dpZCAiZ2V0Y2ggZmFpbGVkIgorbXNnc3RyICJnZXRjaCBmYWxsw7MiCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTg4Cittc2dpZCAiRXhwbGFuYXRpb24iCittc2dzdHIgIkV4cGxpY2FjacOzbiIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxOTcKK21zZ2lkICJObyBleHBsYW5hdGlvbiBhdmFpbGFibGUuIgorbXNnc3RyICJObyBoYXkgZXhwbGljYWNpw7NuIGRpc3BvbmlibGUuIgorCisjIEZJWE1FOiBNYXkgbm90IGJlIHRyYW5zbGF0ZWQgcHJvcGVybHkgd2l0aG91dCBjb250ZXh0LgorIyBPciBlbHNlOiBEb2VzIG5vdCBuZWVkIHRvIGJlIHRyYW5zbGF0ZWQuCisjIEl0IHNlZW1zIGZpcnN0ICVzIGlzICJkc2VsZWN0Iiwgc2Vjb25kICVzIGlzIGFuIGVycm9yIG1lc3NhZ2UuIHN2CisjOiBkc2VsZWN0L21ldGhvZC5jYzo2NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiXG4iCisiJXM6ICVzXG4iCittc2dzdHIgIiIKKyJcbiIKKyJcbiIKKyIlczogJXNcbiIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6NzAKK21zZ2lkICIiCisiXG4iCisiUHJlc3MgPGVudGVyPiB0byBjb250aW51ZS4iCittc2dzdHIgIiIKKyJcbiIKKyJQdWxzZSA8aW50cm8+IHBhcmEgY29udGludWFyLiIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MTYxCisjLCBjLWZvcm1hdAorbXNnaWQgIlByZXNzIDxlbnRlcj4gdG8gY29udGludWUuXG4iCittc2dzdHIgIlB1bHNlIDxpbnRybz4gcGFyYSBjb250aW51YXIuXG4iCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjE2MgorbXNnaWQgIjxzdGFuZGFyZCBlcnJvcj4iCittc2dzdHIgIjxlcnJvciBlc3TDoW5kYXI+IgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoxNjUKK21zZ2lkICJlcnJvciByZWFkaW5nIGFja25vd2xlZGdlbWVudCBvZiBwcm9ncmFtIGZhaWx1cmUgbWVzc2FnZSIKK21zZ3N0ciAiZXJyb3IgYWwgbGVlciByZWNvbm9jaW1pZW50byBkZWwgbWVuc2FqZSBkZSBmYWxsbyBkZWwgcHJvZ3JhbWEiCisKKyMgUG9uZ28gImVsIiBwb3JxdWUgZXMgY29taWVuem8gZGUgdW5hIGZyYXNlIHF1ZSB0ZXJtaW5hIHBvciBlamVtcGxvCisjIGNvbW8gIi4uLiBkZXZvbHZpw7MgZWwgY8OzZGlnbyBkZSBlcnJvciAlZCIuIHN2CisjOiBkc2VsZWN0L21ldGhvZC5jYzoxOTYKK21zZ2lkICJ1cGRhdGUgYXZhaWxhYmxlIGxpc3Qgc2NyaXB0IgorbXNnc3RyICJlbCBzY3JpcHQgZGUgYWN0dWFsaXphY2nDs24gZGUgbGEgbGlzdGEgYGF2YWlsYWJsZSciCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjIwMAorbXNnaWQgImluc3RhbGxhdGlvbiBzY3JpcHQiCittc2dzdHIgImVsIHNjcmlwdCBkZSBpbnN0YWxhY2nDs24iCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjI0NgorbXNnaWQgInF1ZXJ5L3NldHVwIHNjcmlwdCIKK21zZ3N0ciAiZWwgc2NyaXB0IGRlIHBldGljacOzbi9jb25maWd1cmFjacOzbiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yIGluIG1ldGhvZCBvcHRpb25zIGZpbGUgYCUuMjUwcycgLS0gJXMiCittc2dzdHIgImVycm9yIGRlIHNpbnRheGlzIGVuIGVsIGZpY2hlcm8gZGUgb3BjaW9uZXMgZGVsIG3DqXRvZG8gYCUuMjUwcycgLS0gJXMiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjU5CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHJlYWRpbmcgb3B0aW9ucyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJlcnJvciBhbCBsZWVyIGVsIGZpY2hlcm8gZGUgb3BjaW9uZXMgYCUuMjUwcyciCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjkwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIGAlLjI1MHMnIGRpcmVjdG9yeSBmb3IgcmVhZGluZyBtZXRob2RzIgorbXNnc3RyICJubyBzZSBwdWVkZSBsZWVyIGVsIGRpcmVjdG9yaW8gYCUuMjUwcycgcGFyYSBsZWVyIGxvcyBtw6l0b2RvcyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTA2CisjLCBjLWZvcm1hdAorbXNnaWQgIm1ldGhvZCBgJS4yNTBzJyBoYXMgbmFtZSB0aGF0IGlzIHRvbyBsb25nICglZCA+ICVkIGNoYXJhY3RlcnMpIgorbXNnc3RyICIiCisiZWwgbcOpdG9kbyBgJS4yNTBzJ1xuIgorInRpZW5lIHVuIG5vbWJyZSBkZW1hc2lhZG8gbGFyZ28gKCVkID4gJWQgY2FyYWN0ZXJlcykiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjExNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gYWNjZXNzIG1ldGhvZCBzY3JpcHQgYCUuMjUwcyciCittc2dzdHIgIm5vIHNlIHB1ZWRlIGFjY2VkZXIgYWwgc2NyaXB0IGRlbCBtw6l0b2RvIGAlLjI1MHMnIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgbWV0aG9kIG9wdGlvbnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibm8gc2UgcHVlZGUgbGVlciBlbCBmaWNoZXJvIGRlIG9wY2lvbmVzIGRlbCBtw6l0b2RvIGAlLjI1MHMnIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNDcKK21zZ2lkICJub24tZGlnaXQgd2hlcmUgZGlnaXQgd2FudGVkIgorbXNnc3RyICJzZSBlbmNvbnRyw7MgdW4gbm8gZMOtZ2l0byBjdWFuZG8gc2UgZXNwZXJhYmEgdW4gZMOtZ2l0byIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTUwCittc2dpZCAiRU9GIGluIGluZGV4IHN0cmluZyIKK21zZ3N0ciAiRU9GIGVuIGxhIGNhZGVuYSBkZSDDrW5kaWNlIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNTMKK21zZ2lkICJpbmRleCBzdHJpbmcgdG9vIGxvbmciCittc2dzdHIgImNhZGVuYSBkZSDDrW5kaWNlIGRlbWFzaWFkbyBsYXJnYSIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTU2Cittc2dpZCAibmV3bGluZSBiZWZvcmUgb3B0aW9uIG5hbWUgc3RhcnQiCittc2dzdHIgIm51ZXZhIGzDrW5lYSBhbnRlcyBkZSBxdWUgY29taWVuY2UgZWwgbm9tYnJlIGRlIGxhIG9wY2nDs24iCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE1OAorbXNnaWQgIkVPRiBiZWZvcmUgb3B0aW9uIG5hbWUgc3RhcnQiCittc2dzdHIgIkVPRiBhbnRlcyBkZSBxdWUgY29taWVuY2UgZWwgbm9tYnJlIGRlIGxhIG9wY2nDs24iCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE2MgorbXNnaWQgIm5vbmFscGhhIHdoZXJlIG9wdGlvbiBuYW1lIHN0YXJ0IHdhbnRlZCIKK21zZ3N0ciAiIgorImNhcsOhY3RlciBubyBhbGZhbnVtw6lyaWNvIGRvbmRlIHNlIGVzcGVyYWJhIGVsIGNvbWllbnpvIGRlbCBub21icmUgZGUgdW5hICIKKyJvcGNpw7NuIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNjQKK21zZ2lkICJub24tYWxwaGFudW0gaW4gb3B0aW9uIG5hbWUiCittc2dzdHIgImNhcsOhY3RlciBubyBhbGZhbnVtw6lyaWNvIGVuIGVsIG5vbWJyZSBkZSBvcGNpw7NuIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNjcKK21zZ2lkICJFT0YgaW4gb3B0aW9uIG5hbWUiCittc2dzdHIgIkVPRiBkZW50cm8gZGVsIG5vbWJyZSBkZSBsYSBvcGNpw7NuIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNzIKK21zZ2lkICJuZXdsaW5lIGJlZm9yZSBzdW1tYXJ5IgorbXNnc3RyICJudWV2YSBsw61uZWEgYW50ZXMgZGVsIHJlc3VtZW4iCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE3NAorbXNnaWQgIkVPRiBiZWZvcmUgc3VtbWFyeSIKK21zZ3N0ciAiRU9GIGFudGVzIGRlbCByZXN1bWVuIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxODAKK21zZ2lkICJFT0YgaW4gc3VtbWFyeSAtIG1pc3NpbmcgbmV3bGluZSIKK21zZ3N0ciAiRU9GIGVuIGVsIHJlc3VtZW4gLSBmYWx0YSB1bmEgbnVldmEgbMOtbmVhIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gb3B0aW9uIGRlc2NyaXB0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5vIHNlIHB1ZWRlIGFicmlyIGVsIGZpY2hlcm8gZGUgZGVzY3JpcGNpb25lcyBkZSBvcGNpb25lcyBgJS4yNTBzJyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTk0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IG9wdGlvbiBkZXNjcmlwdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisibm8gc2UgcHVlZGUgZWZlY3R1YXIgYHN0YXQnIHNvYnJlIGVsIGZpY2hlcm8gZGUgZGVzY3JpcGNpb25lcyBkZSBvcGNpb25lcyBgIgorIiUuMjUwcyciCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE5OAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCBvcHRpb24gZGVzY3JpcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiZmFsbG8gYWwgbGVlciBlbCBmaWNoZXJvIGRlIGRlc2NyaXBjaW9uZXMgZGUgb3BjaW9uZXMgYCUuMjUwcyciCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjIwMQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBkdXJpbmcgcmVhZCBvZiBvcHRpb24gZGVzY3JpcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiZXJyb3IgYWwgbGVlciBlbCBmaWNoZXJvIGRlIGRlc2NyaXBjacOzbiBkZSBvcGNpb25lcyBgJS4yNTBzJyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MjI0CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGR1cmluZyByZWFkIG9mIG1ldGhvZCBvcHRpb25zIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImVycm9yIGFsIGxlZXIgZWwgZmljaGVybyBkZSBvcGNpb25lcyBkZWwgbcOpdG9kbyBgJS4yNTBzJyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MjQ3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIGN1cnJlbnQgb3B0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5vIHNlIHB1ZWRlIGFicmlyIGVsIGZpY2hlcm8gZGUgb3BjaW9uZXMgYWN0dWFsIGAlLjI1MHMnIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyODkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gbmV3IG9wdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJubyBzZSBwdWVkZSBhYnJpciBlbCBudWV2byBmaWNoZXJvIGRlIG9wY2lvbmVzIGAlLjI1MHMnIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ldyBvcHRpb24gdG8gYCUuMjUwcyciCittc2dzdHIgIm5vIHNlIHB1ZWRlIGVzY3JpYmlyIG51ZXZhIG9wY2nDs24gZW4gYCUuMjUwcyciCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjI5NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgbmV3IG9wdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJubyBzZSBwdWVkZSBjZXJyYXIgZWwgbnVldm8gZmljaGVybyBkZSBvcGNpb25lcyBgJS4yNTBzJyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6Mjk3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyBvcHRpb24gYXMgYCUuMjUwcyciCittc2dzdHIgIm5vIHNlIHB1ZWRlIGluc3RhbGFyIGxhIG51ZXZhIG9wY2nDs24gY29tbyBgJS4yNTBzJyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjM2Cittc2dpZCAibmV3IHBhY2thZ2UiCittc2dzdHIgIm51ZXZvIHBhcXVldGUiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzozNworbXNnaWQgImluc3RhbGwiCittc2dzdHIgImluc3RhbGFyIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MzgKK21zZ2lkICJob2xkIgorbXNnc3RyICJtYW50ZW5lciIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjM5Cittc2dpZCAicmVtb3ZlIgorbXNnc3RyICJkZXNpbnN0YWxhciIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjQwCittc2dpZCAicHVyZ2UiCittc2dzdHIgInB1cmdhciIKKworIyBGSVhNRTogQ2FuJ3QgYmUgdHJhbnNsYXRlZCB3aXRob3V0IGEgbGl0dGxlIGJpdCBvZiBjb250ZXh0LiBzdgorIy4gVFJBTlNMQVRPUlM6IFRoZSBzcGFjZSBpcyBhIHRyaWNrIHRvIHdvcmsgYXJvdW5kIGdldHRleHQgd2hpY2ggdXNlcworIy4gKiB0aGUgZW1wdHkgc3RyaW5nIHRvIHN0b3JlIGluZm9ybWF0aW9uIGFib3V0IHRoZSB0cmFuc2xhdGlvbi4gRE8gTk9UCisjLiAqIENIQU5HRSBUSEFUIElOIEEgVFJBTlNMQVRJT04hIFRoZSBjb2RlIHJlYWxseSByZWxpZXMgb24gdGhhdCBiZWluZworIy4gKiBhIHNpbmdsZSBzcGFjZS4KKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo0NworbXNnaWQgIiAiCittc2dzdHIgIiAiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo0OAorbXNnaWQgIlJFSU5TVEFMTCIKK21zZ3N0ciAiUkVJTlNUQUxBUiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjUxCittc2dpZCAibm90IGluc3RhbGxlZCIKK21zZ3N0ciAibm8gaW5zdGFsYWRvIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTIKK21zZ2lkICJyZW1vdmVkIChjb25maWdzIHJlbWFpbikiCittc2dzdHIgImRlc2luc3RhbGFkbyAocXVlZGEgc3UgY29uZmlndXJhY2nDs24pIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTMKK21zZ2lkICJoYWxmIGluc3RhbGxlZCIKK21zZ3N0ciAiaW5zdGFsYWRvIGEgbWVkaWFzIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTQKK21zZ2lkICJ1bnBhY2tlZCAobm90IHNldCB1cCkiCittc2dzdHIgImRlc2VtcGFxdWV0YWRvIChubyBjb25maWd1cmFkbykiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1NQorbXNnaWQgImhhbGYgY29uZmlndXJlZCAoY29uZmlnIGZhaWxlZCkiCittc2dzdHIgIm1lZGlvIGNvbmZpZ3VyYWRvIChmYWxsw7MgbGEgY29uZmlndXJhY2nDs24pIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTYKK21zZ2lkICJhd2FpdGluZyB0cmlnZ2VyIHByb2Nlc3NpbmciCittc2dzdHIgImVzcGVyYW5kbyBhbCBwcm9jZXNhZG8gZGUgbG9zIGRpc3BhcmFkb3JlcyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjU3Cittc2dpZCAidHJpZ2dlcmVkIgorbXNnc3RyICJkaXNwYXJhZG9yZXMgZWplY3V0YWRvcyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjU4Cittc2dpZCAiaW5zdGFsbGVkIgorbXNnc3RyICJpbnN0YWxhZG8iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo2MQorbXNnaWQgIlJlcXVpcmVkIgorbXNnc3RyICJyZXF1ZXJpZG9zIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjIKK21zZ2lkICJJbXBvcnRhbnQiCittc2dzdHIgImltcG9ydGFudGVzIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjMKK21zZ2lkICJTdGFuZGFyZCIKK21zZ3N0ciAiZXN0w6FuZGFyIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjQKK21zZ2lkICJPcHRpb25hbCIKK21zZ3N0ciAib3BjaW9uYWxlcyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjY1Cittc2dpZCAiRXh0cmEiCittc2dzdHIgImV4dHJhIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjYKK21zZ2lkICIhQnVnISIKK21zZ3N0ciAiwqFCaWNobyEiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo2NworbXNnaWQgIlVuY2xhc3NpZmllZCIKK21zZ3N0ciAic2luIGNsYXNpZmljYXIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3MAorbXNnaWQgInN1Z2dlc3RzIgorbXNnc3RyICJzdWdpZXJlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzEKK21zZ2lkICJyZWNvbW1lbmRzIgorbXNnc3RyICJyZWNvbWllbmRhIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzIKK21zZ2lkICJkZXBlbmRzIG9uIgorbXNnc3RyICJkZXBlbmRlIGRlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzMKK21zZ2lkICJwcmUtZGVwZW5kcyBvbiIKK21zZ3N0ciAicHJlZGVwZW5kZSBkZSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjc0Cittc2dpZCAiYnJlYWtzIgorbXNnc3RyICJyb21wZSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjc1Cittc2dpZCAiY29uZmxpY3RzIHdpdGgiCittc2dzdHIgImVudHJhIGVuIGNvbmZsaWN0byBjb24iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3NgorbXNnaWQgInByb3ZpZGVzIgorbXNnc3RyICJwcm92ZWUiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3NworbXNnaWQgInJlcGxhY2VzIgorbXNnc3RyICJyZWVtcGxhemEgYSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjc4Cittc2dpZCAiZW5oYW5jZXMiCittc2dzdHIgImFtcGzDrWEiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4MQorbXNnaWQgIlJlcSIKK21zZ3N0ciAiUmVxIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODIKK21zZ2lkICJJbXAiCittc2dzdHIgIkltcCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjgzCittc2dpZCAiU3RkIgorbXNnc3RyICJFc3QiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4NAorbXNnaWQgIk9wdCIKK21zZ3N0ciAiT3BjIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODUKK21zZ2lkICJYdHIiCittc2dzdHIgIkV4dCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjg2Cittc2dpZCAiYlVHIgorbXNnc3RyICJiSUNITyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjg3Cittc2dpZCAiPyIKK21zZ3N0ciAiwr8/IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6OTUgZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExNQorbXNnaWQgIkJyb2tlbiIKK21zZ3N0ciAicm90b3MiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo5NgorbXNnaWQgIk5ldyIKK21zZ3N0ciAibnVldm9zIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6OTcKK21zZ2lkICJVcGRhdGVkIgorbXNnc3RyICJjb24gYWN0dWFsaXphY2nDs24gZGlzcG9uaWJsZSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjk4Cittc2dpZCAiT2Jzb2xldGUvbG9jYWwiCittc2dzdHIgIm9ic29sZXRvcy9sb2NhbGVzIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6OTkKK21zZ2lkICJVcC10by1kYXRlIgorbXNnc3RyICJhY3R1YWxpemFkb3MiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDAKK21zZ2lkICJBdmFpbGFibGUiCittc2dzdHIgImRpc3BvbmlibGVzIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTAxIGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTcKK21zZ2lkICJSZW1vdmVkIgorbXNnc3RyICJEZXNpbnN0YWxhZG9zIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTAyIGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTEKK21zZ2lkICJCcm9rZW5seSBpbnN0YWxsZWQgcGFja2FnZXMiCittc2dzdHIgIlBhcXVldGVzIG1hbCBpbnN0YWxhZG9zIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTAzCittc2dpZCAiTmV3bHkgYXZhaWxhYmxlIHBhY2thZ2VzIgorbXNnc3RyICJQYXF1ZXRlcyBudWV2b3MgZGlzcG9uaWJsZXMiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDQKK21zZ2lkICJVcGRhdGVkIHBhY2thZ2VzIChuZXdlciB2ZXJzaW9uIGlzIGF2YWlsYWJsZSkiCittc2dzdHIgIkFjdHVhbGl6YWNpw7NuIGRpc3BvbmlibGUiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDUKK21zZ2lkICJPYnNvbGV0ZSBhbmQgbG9jYWwgcGFja2FnZXMgcHJlc2VudCBvbiBzeXN0ZW0iCittc2dzdHIgIlBhcXVldGVzIG9ic29sZXRvcyB5IGxvY2FsbWVudGUgaW5zdGFsYWRvcyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwNgorbXNnaWQgIlVwIHRvIGRhdGUgaW5zdGFsbGVkIHBhY2thZ2VzIgorbXNnc3RyICJQYXF1ZXRlcyBhY3R1YWxpemFkb3MsIG5vIGhheSB2ZXJzacOzbiBtw6FzIG51ZXZhIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTA3Cittc2dpZCAiQXZhaWxhYmxlIHBhY2thZ2VzIChub3QgY3VycmVudGx5IGluc3RhbGxlZCkiCittc2dzdHIgIlBhcXVldGVzIGRpc3BvbmlibGVzIChubyBpbnN0YWxhZG9zIGFjdHVhbG1lbnRlKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwOAorbXNnaWQgIlJlbW92ZWQgYW5kIG5vIGxvbmdlciBhdmFpbGFibGUgcGFja2FnZXMiCittc2dzdHIgIlBhcXVldGVzIGRlc2luc3RhbGFkb3MgcXVlIHlhIG5vIGVzdMOhbiBkaXNwb25pYmxlcyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExMgorbXNnaWQgIkluc3RhbGxlZCBwYWNrYWdlcyIKK21zZ3N0ciAiUGFxdWV0ZXMgaW5zdGFsYWRvcyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExMworbXNnaWQgIlJlbW92ZWQgcGFja2FnZXMgKGNvbmZpZ3VyYXRpb24gc3RpbGwgcHJlc2VudCkiCittc2dzdHIgIlBhcXVldGVzIGRlc2luc3RhbGFkb3MgKHF1ZWRhIGxhIGNvbmZpZ3VyYWNpw7NuKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExNAorbXNnaWQgIlB1cmdlZCBwYWNrYWdlcyBhbmQgdGhvc2UgbmV2ZXIgaW5zdGFsbGVkIgorbXNnc3RyICJQYXF1ZXRlcyBwdXJnYWRvcyBvIHF1ZSBudW5jYSBmdWVyb24gaW5zdGFsYWRvcyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExNgorbXNnaWQgIkluc3RhbGxlZCIKK21zZ3N0ciAiSW5zdGFsYWRvcyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExOAorbXNnaWQgIlB1cmdlZCIKK21zZ3N0ciAiUHVyZ2Fkb3MiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxOTgKK21zZ2lkICJkc2VsZWN0IC0gcmVjdXJzaXZlIHBhY2thZ2UgbGlzdGluZyIKK21zZ3N0ciAiZHNlbGVjdCAtIGxpc3RhIHJlY3Vyc2l2YSBkZSBwYXF1ZXRlcyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjE5OQorbXNnaWQgImRzZWxlY3QgLSBpbnNwZWN0aW9uIG9mIHBhY2thZ2Ugc3RhdGVzIgorbXNnc3RyICJkc2VsZWN0IC0gaW5zcGVjY2nDs24gZGUgbG9zIGVzdGFkb3MgZGUgbG9zIHBhcXVldGVzIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjAwCittc2dpZCAiZHNlbGVjdCAtIG1haW4gcGFja2FnZSBsaXN0aW5nIgorbXNnc3RyICJkc2VsZWN0IC0gbGlzdGEgcHJpbmNpcGFsIGRlIHBhcXVldGVzIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjA4Cittc2dpZCAiIChieSBzZWN0aW9uKSIKK21zZ3N0ciAiIChwb3Igc2VjY2nDs24pIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjExCittc2dpZCAiIChhdmFpbC4sIHNlY3Rpb24pIgorbXNnc3RyICIgKGRpc3AuLCBzZWNjacOzbikiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMTQKK21zZ2lkICIgKHN0YXR1cywgc2VjdGlvbikiCittc2dzdHIgIiAoZXN0YWRvLCBzZWNjacOzbikiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMjMKK21zZ2lkICIgKGJ5IHByaW9yaXR5KSIKK21zZ3N0ciAiIChwb3IgcHJpb3JpZGFkKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIyNgorbXNnaWQgIiAoYXZhaWwuLCBwcmlvcml0eSkiCittc2dzdHIgIiAoZGlzcC4sIHByaW9yaWRhZCkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMjkKK21zZ2lkICIgKHN0YXR1cywgcHJpb3JpdHkpIgorbXNnc3RyICIgKGVzdGFkbywgcHJpb3JpZGFkKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIzOCBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjUwCittc2dpZCAiIChhbHBoYWJldGljYWxseSkiCittc2dzdHIgIiAoYWxmYWLDqXRpY2FtZW50ZSkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNDEKK21zZ2lkICIgKGJ5IGF2YWlsYWJpbGl0eSkiCittc2dzdHIgIiAocG9yIGRpc3BvbmliaWxpZGFkKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI0NAorbXNnaWQgIiAoYnkgc3RhdHVzKSIKK21zZ3N0ciAiIChwb3IgZXN0YWRvKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI1OAorbXNnaWQgIiBtYXJrOisvPS8tIHRlcnNlOnYgaGVscDo/IgorbXNnc3RyICIgbWFyY2E6Ky89Ly0gY29uY2lzbzp2IGF5dWRhOj8iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNTkKK21zZ2lkICIgbWFyazorLz0vLSB2ZXJib3NlOnYgaGVscDo/IgorbXNnc3RyICIgbWFyY2E6Ky89Ly0gbGl0ZXJhbDp2IGF5dWRhOj8iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNjAKK21zZ2lkICIgdGVyc2U6diBoZWxwOj8iCittc2dzdHIgIiBjb25jaXNvOnYgYXl1ZGE6PyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI2MQorbXNnaWQgIiB2ZXJib3NlOnYgaGVscDo/IgorbXNnc3RyICIgbGl0ZXJhbDp2IGF5dWRhOj8iCisKKyM6IGRzZWxlY3QvcGtnaW5mby5jYzo4MAorbXNnaWQgIiIKKyJUaGUgbGluZSB5b3UgaGF2ZSBoaWdobGlnaHRlZCByZXByZXNlbnRzIG1hbnkgcGFja2FnZXM7IGlmIHlvdSBhc2sgdG8gIgorImluc3RhbGwsIHJlbW92ZSwgaG9sZCwgZXRjLiBpdCB5b3Ugd2lsbCBhZmZlY3QgYWxsIHRoZSBwYWNrYWdlcyB3aGljaCBtYXRjaCAiCisidGhlIGNyaXRlcmlvbiBzaG93bi5cbiIKKyJcbiIKKyJJZiB5b3UgbW92ZSB0aGUgaGlnaGxpZ2h0IHRvIGEgbGluZSBmb3IgYSBwYXJ0aWN1bGFyIHBhY2thZ2UgeW91IHdpbGwgc2VlICIKKyJpbmZvcm1hdGlvbiBhYm91dCB0aGF0IHBhY2thZ2UgZGlzcGxheWVkIGhlcmUuXG4iCisiWW91IGNhbiB1c2UgYG8nIGFuZCBgTycgdG8gY2hhbmdlIHRoZSBzb3J0IG9yZGVyIGFuZCBnaXZlIHlvdXJzZWxmIHRoZSAiCisib3Bwb3J0dW5pdHkgdG8gbWFyayBwYWNrYWdlcyBpbiBkaWZmZXJlbnQga2luZHMgb2YgZ3JvdXBzLiIKK21zZ3N0ciAiIgorIkxhIGzDrW5lYSBxdWUgaGEgaWx1bWluYWRvIHJlcHJlc2VudGEgbXVjaG9zIHBhcXVldGVzLCBzaSBwaWRlIHF1ZSBzZSAiCisiaW5zdGFsZW4sIGJvcnJlbiwgbWFudGVuZ2FuLCBldGMsIGFmZWN0YXLDoSBhIHRvZG9zIGxvcyBwYXF1ZXRlcyBxdWUgY3VtcGxhbiAiCisiZWwgY3JpdGVyaW8gbW9zdHJhZG8uXG4iCisiXG4iCisiU2kgZGVzcGxhemEgbGEgbMOtbmVhIGlsdW1pbmFkYSBhIHVuYSBsw61uZWEgZGUgdW4gcGFxdWV0ZSBkZXRlcm1pbmFkbyBzZSAiCisibW9zdHJhcsOhIGFxdcOtIGxhIGluZm9ybWFjacOzbiBzb2JyZSBlc2UgcGFxdWV0ZS5cbiIKKyJTZSBwdWVkZSB1c2FyIGBvJyB5IGBPJyBwYXJhIGNhbWJpYXIgZWwgdGlwbyBkZSBvcmRlbmFjacOzbiwgZXN0byBwZXJtaXRlXG4iCisibWFyY2FyIHBhcXVldGVzIGVuIGRpc3RpbnRvcyB0aXBvcyBkZSBncnVwb3MuIgorCisjOiBkc2VsZWN0L3BrZ2luZm8uY2M6OTMKK21zZ2lkICJJbnRlcnJlbGF0aW9uc2hpcHMiCittc2dzdHIgIkludGVycmVsYWNpb25lcyIKKworIzogZHNlbGVjdC9wa2dpbmZvLmNjOjExMgorbXNnaWQgIk5vIGRlc2NyaXB0aW9uIGF2YWlsYWJsZS4iCittc2dzdHIgIk5vIGhheSB1bmEgZGVzY3JpcGNpw7NuIGRpc3BvbmlibGUuIgorCisjOiBkc2VsZWN0L3BrZ2luZm8uY2M6MTMwCittc2dpZCAiSW5zdGFsbGVkIGNvbnRyb2wgZmlsZSBpbmZvcm1hdGlvbiIKK21zZ3N0ciAiSW5mb3JtYWNpw7NuIGRlIGNvbnRyb2wgaW5zdGFsYWRhIgorCisjOiBkc2VsZWN0L3BrZ2luZm8uY2M6MTQ2Cittc2dpZCAiQXZhaWxhYmxlIGNvbnRyb2wgZmlsZSBpbmZvcm1hdGlvbiIKK21zZ3N0ciAiSW5mb3JtYWNpw7NuIGRpc3BvbmlibGUgZGUgY29udHJvbCIKKworIzogZHNlbGVjdC9wa2dsaXN0LmNjOjQxNgorbXNnaWQgIlRoZXJlIGFyZSBubyBwYWNrYWdlcy4iCittc2dzdHIgIk5vIGhheSBwYXF1ZXRlcy4iCisKKyM6IGRzZWxlY3QvcGtnbGlzdC5jYzo1MDcKK21zZ2lkICJpbnZhbGlkIHNlYXJjaCBvcHRpb24gZ2l2ZW4iCittc2dzdHIgInNlIGhhIGRhZG8gdW5hIG9wY2nDs24gZGUgYsO6c3F1ZWRhIGludsOhbGlkYSIKKworIzogZHNlbGVjdC9wa2dsaXN0LmNjOjUyMQorbXNnaWQgImVycm9yIGluIHJlZ3VsYXIgZXhwcmVzc2lvbiIKK21zZ3N0ciAiZXJyb3IgZW4gbGEgZXhwcmVzacOzbiByZWd1bGFyIgorCisjOiBkc2VsZWN0L3BrZ3N1Ymxpc3QuY2M6MTA3Cittc2dpZCAiIGRvZXMgbm90IGFwcGVhciB0byBiZSBhdmFpbGFibGVcbiIKK21zZ3N0ciAiIG5vIHBhcmVjZSBlc3RhciBkaXNwb25pYmxlXG4iCisKKyM6IGRzZWxlY3QvcGtnc3VibGlzdC5jYzoxMjcKK21zZ2lkICIgb3IgIgorbXNnc3RyICIgbyAiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjU3Cittc2dpZCAiQWxsIgorbXNnc3RyICJUb2RvcyIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6NzkKK21zZ2lkICJBbGwgcGFja2FnZXMiCittc2dzdHIgIlRvZG9zIGxvcyBwYXF1ZXRlcyIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcGFja2FnZXMgd2l0aG91dCBhIHNlY3Rpb24iCittc2dzdHIgIiVzIHBhcXVldGVzIHNpbiBzZWNjacOzbiIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcGFja2FnZXMgaW4gc2VjdGlvbiAlcyIKK21zZ3N0ciAiJXMgcGFxdWV0ZXMgZW4gbGEgc2VjY2nDs24gJXMiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjkxCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzICVzIHBhY2thZ2VzIgorbXNnc3RyICJQYXF1ZXRlcyAlcyAlcyIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgJXMgcGFja2FnZXMgd2l0aG91dCBhIHNlY3Rpb24iCittc2dzdHIgIlBhcXVldGVzICVzICVzIHNpbiBzZWNjacOzbiIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6OTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgJXMgcGFja2FnZXMgaW4gc2VjdGlvbiAlcyIKK21zZ3N0ciAiUGFxdWV0ZXMgJXMgJXMgZW4gbGEgc2VjY2nDs24gJXMiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjExOAorIywgYy1mb3JtYXQKK21zZ2lkICIlLSpzICVzJXMlczsgICVzICh3YXM6ICVzKS4gICVzIgorbXNnc3RyICIlLSpzICVzJXMlczsgICVzIChlcmE6ICVzKS4gICVzIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyNjMKK21zZ2lkICJFcnJvciIKK21zZ3N0ciAiRXJyb3IiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI2NworbXNnaWQgIkluc3RhbGxlZD8iCittc2dzdHIgIsK/SW5zdGFsYWRvPyIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6MjcxCittc2dpZCAiT2xkIG1hcmsiCittc2dzdHIgIk1hcmNhIGFudGlndWEiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI3NQorbXNnaWQgIk1hcmtlZCBmb3IiCittc2dzdHIgIk1hcmNhZG8gcGFyYSIKKworIyBIYWJyw6EgcXVlIG1pcmFybG8uCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyNzgKK21zZ2lkICJFSU9NIgorbXNnc3RyICJFSU9NIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyODAKK21zZ2lkICJTZWN0aW9uIgorbXNnc3RyICJTZWNjacOzbiIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6MjgxCittc2dpZCAiUHJpb3JpdHkiCittc2dzdHIgIlByaW9yaWRhZCIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6MjgyCittc2dpZCAiUGFja2FnZSIKK21zZ3N0ciAiUGFxdWV0ZSIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6Mjg2Cittc2dpZCAiSW5zdC52ZXIiCittc2dzdHIgIlZlci5pbnN0LiIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6Mjg5Cittc2dpZCAiQXZhaWwudmVyIgorbXNnc3RyICJWZXIuZGlzcC4iCisKKyN+IG1zZ2lkICJyZXR1cm5lZCBlcnJvciBleGl0IHN0YXR1cyAlZC5cbiIKKyN+IG1zZ3N0ciAiZGV2b2x2acOzIGVsIGPDs2RpZ28gZGUgZXJyb3IgJWQuXG4iCisKKyN+IG1zZ2lkICJ3YXMgaW50ZXJydXB0ZWQuXG4iCisjfiBtc2dzdHIgImZ1ZSBpbnRlcnJ1bXBpZG8uXG4iCisKKyN+IG1zZ2lkICJ3YXMgdGVybWluYXRlZCBieSBhIHNpZ25hbDogJXMuXG4iCisjfiBtc2dzdHIgImZ1ZSB0ZXJtaW5hZG8gcG9yIGxhIHNlw7FhbCAlcy5cbiIKKworI34gbXNnaWQgIihJdCBsZWZ0IGEgY29yZWR1bXAuKVxuIgorI34gbXNnc3RyICIoRGVqw7MgdW4gdm9sY2FkbyBkZSBgY29yZScuKVxuIgorCisjfiBtc2dpZCAiZmFpbGVkIHdpdGggYW4gdW5rbm93biB3YWl0IHJldHVybiBjb2RlICVkLlxuIgorI34gbXNnc3RyICJmYWxsw7MgY29uIHVuIGPDs2RpZ28gZGVzY29ub2NpZG8gZGUgZXN0YWRvIGRlIGVzcGVyYSAlZC5cbiIKKworIyBGSVhNRTogVGhpcyBpcyBmb3IgZGVidWdnaW5nIHB1cnBvc2VzLiBTaG91bGQgbm90IGJlIHRyYW5zbGF0ZWQuIHN2CisjfiBtc2dpZCAiIgorI34gImJhc2VsaXN0OjpzdGFydGRpc3BsYXkoKSBkb25lIC4uLlxuIgorI34gIlxuIgorI34gIiB4bWF4PSVkLCB5bWF4PSVkO1xuIgorI34gIlxuIgorI34gIiB0aXRsZV9oZWlnaHQ9JWQsIGNvbGhlYWRzX2hlaWdodD0lZCwgbGlzdF9oZWlnaHQ9JWQ7XG4iCisjfiAiIHRoaXNzdGF0ZV9oZWlnaHQ9JWQsIGluZm9faGVpZ2h0PSVkLCB3aGF0aW5mb19oZWlnaHQ9JWQ7XG4iCisjfiAiXG4iCisjfiAiIGNvbGhlYWRzX3Jvdz0lZCwgdGhpc3N0YXRlX3Jvdz0lZCwgaW5mb19yb3c9JWQ7XG4iCisjfiAiIHdoYXRpbmZvX3Jvdz0lZCwgbGlzdF9yb3c9JWQ7XG4iCisjfiAiXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJiYXNlbGlzdDo6c3RhcnRkaXNwbGF5KCkgZG9uZSAuLi5cbiIKKyN+ICJcbiIKKyN+ICIgeG1heD0lZCwgeW1heD0lZDtcbiIKKyN+ICJcbiIKKyN+ICIgdGl0bGVfaGVpZ2h0PSVkLCBjb2xoZWFkc19oZWlnaHQ9JWQsIGxpc3RfaGVpZ2h0PSVkO1xuIgorI34gIiB0aGlzc3RhdGVfaGVpZ2h0PSVkLCBpbmZvX2hlaWdodD0lZCwgd2hhdGluZm9faGVpZ2h0PSVkO1xuIgorI34gIlxuIgorI34gIiBjb2xoZWFkc19yb3c9JWQsIHRoaXNzdGF0ZV9yb3c9JWQsIGluZm9fcm93PSVkO1xuIgorI34gIiB3aGF0aW5mb19yb3c9JWQsIGxpc3Rfcm93PSVkO1xuIgorCisjIEZJWE1FOiBBIHRyYW5zbGF0b3IgY29tbWVudCBzaG91bGQgY2xhcmlmeSBhYm91dCBub25lJ3Mgc2V4IGhlcmUuIHN2CisjfiBtc2dpZCAiW25vbmVdIgorI34gbXNnc3RyICJbbmluZ3Vuby9hXSIKKworI34gbXNnaWQgImVycm9yIHVuLWNhdGNoaW5nIHNpZ25hbCAlZDogJXNcbiIKKyN+IG1zZ3N0ciAiZXJyb3IgYWwgbm8gcmVjb2dlciBsYSBzZcOxYWwgJWQ6ICVzXG4iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gaWdub3JlIHNpZ25hbCAlZCBiZWZvcmUgcnVubmluZyAlLjI1MHMiCisjfiBtc2dzdHIgIm5vIHNlIHB1ZWRlIGRlc2NhcnRhciBsYSBzZcOxYWwgJWQgYW50ZXMgZGUgZWplY3V0YXIgJS4yNTBzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHJ1biAlLjI1MHMgcHJvY2VzcyBgJS4yNTBzJyIKKyN+IG1zZ3N0ciAibm8gc2UgcHVlZGUgZWplY3V0YXIgZWwgcHJvY2VzbyAlLjI1MHMgYCUuMjUwcyciCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gd2FpdCBmb3IgJS4yNTBzIgorI34gbXNnc3RyICJubyBzZSBwdWVkZSBlZmVjdHVhciBgd2FpdCcgZW4gJS4yNTBzIgorCisjfiBtc2dpZCAiZ290IHdyb25nIGNoaWxkJ3Mgc3RhdHVzIC0gYXNrZWQgZm9yICVsZCwgZ290ICVsZCIKKyN+IG1zZ3N0ciAiIgorI34gInNlIG9idHV2byB1biBjw7NkaWdvIGRlIGVzdGFkbyBlcXVpdm9jYWRvIC0gc2UgZXNwZXJhYmEgJWxkLCBzZSBvYnR1dm8gJWxkIgorCisjfiBtc2dpZCAiKG5vIGNsaWVudGRhdGEpIgorI34gbXNnc3RyICIobm8gaGF5IGRhdG9zIGRlbCBjbGllbnRlKSIKKworI34gbXNnaWQgImZhaWxlZCBjb25maWciCisjfiBtc2dzdHIgImNvbmZpZ3VyYWNpw7NuIGZhbGxpZGEiCisKKyN+IG1zZ2lkICJSZWNvbW1lbmRlZCIKKyN+IG1zZ3N0ciAicmVjb21lbmRhZG9zIgorCisjIFRyYWR1Y2lyIGNvbnRyaWIgcG9yIGNvbnRyaWJ1aWRvcyBzZXLDrWEgY29tbyB0cmFkdWNpciBPcGVuIFNvdXJjZS4KKyMgR2VuZXJhIG3DoXMgY29uZnVzacOzbiB0b2RhdsOtYS4gc3YKKyN+IG1zZ2lkICJDb250cmliIgorI34gbXNnc3RyICJjb250cmliIgorCisjfiBtc2dpZCAiUmVjIgorI34gbXNnc3RyICJSZWMiCisKKyN+IG1zZ2lkICJDdGIiCisjfiBtc2dzdHIgIkN0YiIKKworIyBGSVhNRTogTmVlZCBhIHRyYW5zbGF0b3IgY29tbWVudCB0byBrbm93IG51bGwncyBzZXguIHN2CisjIEl0IHNlZW1zIGl0IHJlZmVycyB0byBhIG1pc3NpbmcgcHJpb3JpdHkgb3IgYSBtaXNzaW5nIHNlY3Rpb24uCisjIENvbW8gdGFudG8gbGEgc2VjY2nDs24gY29tbyBsYSBwcmlvcmlkYWQgc29uIGZlbWVuaW5vcywgcG9uZ28gIm51bGEiLiBzdgorI34gbXNnaWQgIjxudWxsPiIKKyN+IG1zZ3N0ciAiPG51bGE+IgorCisjfiBtc2dpZCAiaW50ZXJyZWxhdGlvbnNoaXBzIGFmZmVjdGluZyAiCisjfiBtc2dzdHIgImludGVycmVsYWNpb25lcyBxdWUgYWZlY3RhbiAiCisKKyN+IG1zZ2lkICJkZXNjcmlwdGlvbiBvZiAiCisjfiBtc2dzdHIgImRlc2NyaXBjacOzbiBkZSAiCisKKyN+IG1zZ2lkICJkZXNjcmlwdGlvbiIKKyN+IG1zZ3N0ciAiZGVzY3JpcGNpw7NuIgorCisjfiBtc2dpZCAiY3VycmVudGx5IGluc3RhbGxlZCBjb250cm9sIGluZm8iCisjfiBtc2dzdHIgImluZm9ybWFjacOzbiBkZSBjb250cm9sIGFjdHVhbG1lbnRlIGluc3RhbGFkYSIKKworI34gbXNnaWQgImF2YWlsYWJsZSB2ZXJzaW9uIG9mIGNvbnRyb2wgaW5mbyBmb3IgIgorI34gbXNnc3RyICJpbmZvcm1hY2nDs24gZGUgY29udHJvbCBkZSBsYSB2ZXJzacOzbiBkaXNwb25pYmxlIGRlICIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9ldC5nbW8gYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vZXQuZ21vCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjlkNDQzZjEKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vZXQuZ21vCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9ldC5wbyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9ldC5wbwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wMWU3NmRiCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL2V0LnBvCkBAIC0wLDAgKzEsMTUwOSBAQAorIyBkc2VsZWN0IGVlc3RpIGtlZWxlIHTDtWxnZS4KKyMgRXN0b25pYW4gdHJhbnNsYXRpb24gb2YgZHNlbGVjdC4KKyMKKyMgVGhpcyBmaWxlIGlzIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBzYW1lIGxpY2Vuc2UgYXMgdGhlIGRzZWxlY3QgcGFja2FnZS4KKyMKKyMgQ29weXJpZ2h0IChDKSAyMDA3IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgorIyBJdmFyIFNtb2xpbiA8b2t1bCBhdCBsaW51eCBlZT4sIDIwMDcuCisjCittc2dpZCAiIgorbXNnc3RyICIiCisiUHJvamVjdC1JZC1WZXJzaW9uOiBkc2VsZWN0IDEuMTQuNVxuIgorIlJlcG9ydC1Nc2dpZC1CdWdzLVRvOiBkZWJpYW4tZHBrZ0BsaXN0cy5kZWJpYW4ub3JnXG4iCisiUE9ULUNyZWF0aW9uLURhdGU6IDIwMTEtMTAtMTQgMDc6MTErMDIwMFxuIgorIlBPLVJldmlzaW9uLURhdGU6IDIwMDctMDctMTMgMDg6MjIrMDMwMFxuIgorIkxhc3QtVHJhbnNsYXRvcjogSXZhciBTbW9saW4gPG9rdWxAbGludXguZWU+XG4iCisiTGFuZ3VhZ2UtVGVhbTogRXN0b25pYW4gPGV0QGxpLm9yZz5cbiIKKyJMYW5ndWFnZTogZXRcbiIKKyJNSU1FLVZlcnNpb246IDEuMFxuIgorIkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD1VVEYtOFxuIgorIkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXRcbiIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxMjUKK21zZ2lkICJTZWFyY2ggZm9yID8gIgorbXNnc3RyICJNaWRhIG90c2lkYSA/ICIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxNDcKK21zZ2lkICJFcnJvcjogIgorbXNnc3RyICJWaWdhOiAiCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MTc4Cittc2dpZCAiSGVscDogIgorbXNnc3RyICJBYmk6ICIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxODQKK21zZ2lkICJQcmVzcyA/IGZvciBoZWxwIG1lbnUsIC4gZm9yIG5leHQgdG9waWMsIDxzcGFjZT4gdG8gZXhpdCBoZWxwLiIKK21zZ3N0ciAiIgorIkFiaW1lbsO8w7wgamFva3MgdmFqdXRhIGA/JywgasOkcmdtaW5lIHRlZW1hOiBgLicsIGFiaSBzdWxnZW1pbmU6IDx0w7xoaWs+LiIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxOTEKK21zZ2lkICJIZWxwIGluZm9ybWF0aW9uIGlzIGF2YWlsYWJsZSB1bmRlciB0aGUgZm9sbG93aW5nIHRvcGljczoiCittc2dzdHIgIkFiaXRlYXZldCBvbiB2w7VpbWFsaWsgc2FhZGEgasOkcmduZXZhdGUgdGVlbWFkZSBrb2h0YToiCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MTk5Cittc2dpZCAiIgorIlByZXNzIGEga2V5IGZyb20gdGhlIGxpc3QgYWJvdmUsIDxzcGFjZT4gb3IgYHEnIHRvIGV4aXQgaGVscCxcbiIKKyIgIG9yIGAuJyAoZnVsbCBzdG9wKSB0byByZWFkIGVhY2ggaGVscCBwYWdlIGluIHR1cm4uICIKK21zZ3N0ciAiIgorIkFiaXRlZW1hIHZhYXRhbWlzZWtzIHZhanV0YSBuaW1la2lyamFzIHZpaWRhdHVkIGtsYWh2aWxlLFxuIgorIiAgYWJpdGVhYmVzdCB2w6RsanVtaXNla3Mga2xhaHZlICdxJyB2w7VpIDx0w7xoaWs+IHbDtWkgYWJpdGVhYmVcbiIKKyIgIGxlaHRoYWF2YWwgbHVnZW1pc2VrcyBrbGFodmkgYC4nLiIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoyMDUKK21zZ2lkICJlcnJvciByZWFkaW5nIGtleWJvYXJkIGluIGhlbHAiCittc2dzdHIgInZpZ2Ega2xhdmlhdHV1cmlsdCBsdWdlbWlzZWwgKGFiaXRlYWJlIGVrcmFhbmlsKSIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo1NworbXNnaWQgImlvY3RsKFRJT0NHV0lOU1opIGZhaWxlZCIKK21zZ3N0ciAidMO1cmdlIGZ1bmt0c2lvb25pcyBpb2N0bChUSU9DR1dJTlNaKSIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo2MAorbXNnaWQgImRvdXBkYXRlIGluIFNJR1dJTkNIIGhhbmRsZXIgZmFpbGVkIgorbXNnc3RyICJ0w7VyZ2Ugc2lnbmFhbGkgU0lHV0lOQ0gga8Okc2l0bGVqYSBkb3VwZGF0ZSBmdW5rdHNpb29uaXMiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6NjcKK21zZ2lkICJmYWlsZWQgdG8gcmVzdG9yZSBvbGQgU0lHV0lOQ0ggc2lnYWN0IgorbXNnc3RyICJ0w7VyZ2Ugc2lnbmFhbGkgU0lHV0lOQ0ggdmFuYSBzaWdhY3QnaSB0YWFzdGFtaXNlbCIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo2OQorbXNnaWQgImZhaWxlZCB0byByZXN0b3JlIG9sZCBzaWduYWwgbWFzayIKK21zZ3N0ciAidMO1cmdlIHZhbmEgc2lnbmFhbGltYXNraSB0YWFzdGFtaXNlbCIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo3OQorbXNnaWQgImZhaWxlZCB0byBnZXQgb2xkIHNpZ25hbCBtYXNrIgorbXNnc3RyICJ0w7VyZ2UgdmFuYSBzaWduYWFsaW1hc2tpIGhhbmtpbWlzZWwiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6ODAKK21zZ2lkICJmYWlsZWQgdG8gZ2V0IG9sZCBTSUdXSU5DSCBzaWdhY3QiCittc2dzdHIgInTDtXJnZSBzaWduYWFsaSBTSUdXSU5DSCB2YW5hIHNpZ2FjdCdpIGhhbmtpbWlzZWwiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6ODQKK21zZ2lkICJmYWlsZWQgdG8gYmxvY2sgU0lHV0lOQ0giCittc2dzdHIgInTDtXJnZSBzaWduYWFsaSBTSUdXSU5DSCBibG9ra2ltaXNlbCIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo4OQorbXNnaWQgImZhaWxlZCB0byBzZXQgbmV3IFNJR1dJTkNIIHNpZ2FjdCIKK21zZ3N0ciAidMO1cmdlIHNpZ25hYWxpbGUgU0lHV0lOQ0ggdXVlIHNpZ2FjdCdpIG3DpMOkcmFtaXNlbCIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxMjYKK21zZ2lkICJmYWlsZWQgdG8gYWxsb2NhdGUgY29sb3VyIHBhaXIiCittc2dzdHIgInTDtXJnZSB2w6RydnVzdGVwYWFyaSBlcmFsZGFtaXNlbCIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxNjcKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHRpdGxlIHdpbmRvdyIKK21zZ3N0ciAidMO1cmdlIHBlYWxraXJqYWFrbmEgbG9vbWlzZWwiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTcxCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSB3aGF0aW5mbyB3aW5kb3ciCittc2dzdHIgInTDtXJnZSB0ZWFiZWFrbmEgbG9vbWlzZWwiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTc1Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBiYXNlbGlzdCBwYWQiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxNzgKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGhlYWRpbmcgcGFkIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTgyCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSB0aGlzc3RhdGUgcGFkIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTg2Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBpbmZvIHBhZCIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE5MQorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgcXVlcnkgd2luZG93IgorbXNnc3RyICJ0w7VyZ2UgcMOkcmluZ3Vha25hIGxvb21pc2VsIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjI1NQorbXNnaWQgIktleWJpbmRpbmdzIgorbXNnc3RyICJLbGFodmlzZW9zZWQiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MzAzCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgLS0gJWQlJSwgcHJlc3MgIgorbXNnc3RyICIgIC0tICVkJSUsIHZhanV0YSAiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MzA2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGZvciBtb3JlIgorbXNnc3RyICIlcyBlZGFzaWtlcmltaXNla3MiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MzEwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHRvIGdvIGJhY2siCittc2dzdHIgIiVzIHRhZ2FzaWtlcmltaXNla3MiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6NzgKK21zZ2lkICJbbm90IGJvdW5kXSIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjgyCisjLCBjLWZvcm1hdAorbXNnaWQgIlt1bms6ICVkXSIKK21zZ3N0ciAiW3R1bmRtOiAlZF0iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTM5Cittc2dpZCAiU2Nyb2xsIG9ud2FyZHMgdGhyb3VnaCBoZWxwL2luZm9ybWF0aW9uIgorbXNnc3RyICJBYmkgdsO1aSB0ZWFiZSBlZGFzaWtlcmltaW5lIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0MAorbXNnaWQgIlNjcm9sbCBiYWNrd2FyZHMgdGhyb3VnaCBoZWxwL2luZm9ybWF0aW9uIgorbXNnc3RyICJBYmkgdsO1aSB0ZWFiZSB0YWdhc2lrZXJpbWluZSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDEKK21zZ2lkICJNb3ZlIHVwIgorbXNnc3RyICJMaWlrdW1pbmUgw7xsZXMiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQyCittc2dpZCAiTW92ZSBkb3duIgorbXNnc3RyICJMaWlrdW1pbmUgYWxsYSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDMKK21zZ2lkICJHbyB0byB0b3Agb2YgbGlzdCIKK21zZ3N0ciAiTmltZWtpcmphIGFsZ3VzZXNzZSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDQKK21zZ2lkICJHbyB0byBlbmQgb2YgbGlzdCIKK21zZ3N0ciAiTmltZWtpcmphIGzDtXBwdSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDUKK21zZ2lkICJSZXF1ZXN0IGhlbHAgKGN5Y2xlIHRocm91Z2ggaGVscCBzY3JlZW5zKSIKK21zZ3N0ciAiQWJpdGVhYmUga8O8c2ltaW5lIChrdXZhZGUga2F1cGEpIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0NgorbXNnaWQgIkN5Y2xlIHRocm91Z2ggaW5mb3JtYXRpb24gZGlzcGxheXMiCittc2dzdHIgIkrDpHJnbWlzZSB0ZWFiZWt1dmEgYWt0aXZlZXJpbWluZSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDcKK21zZ2lkICJSZWRyYXcgZGlzcGxheSIKK21zZ3N0ciAiS3V2YSDDvGxlam9vbmlzdGFtaW5lIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0OAorbXNnaWQgIlNjcm9sbCBvbndhcmRzIHRocm91Z2ggbGlzdCBieSAxIGxpbmUiCittc2dzdHIgIk5pbWVraXJqYSBlZGFzaWtlcmltaW5lIMO8aGUgcmVhIHbDtXJyYSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDkKK21zZ2lkICJTY3JvbGwgYmFja3dhcmRzIHRocm91Z2ggbGlzdCBieSAxIGxpbmUiCittc2dzdHIgIk5pbWVraXJqYSB0YWdhc2lrZXJpbWluZSDDvGhlIHJlYSB2w7VycmEiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTUwCittc2dpZCAiU2Nyb2xsIG9ud2FyZHMgdGhyb3VnaCBoZWxwL2luZm9ybWF0aW9uIGJ5IDEgbGluZSIKK21zZ3N0ciAiQWJpIHbDtWkgdGVhYmUgZWRhc2lrZXJpbWluZSDDvGhlIHJlYSB2w7VycmEiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTUxCittc2dpZCAiU2Nyb2xsIGJhY2t3YXJkcyB0aHJvdWdoIGhlbHAvaW5mb3JtYXRpb24gYnkgMSBsaW5lIgorbXNnc3RyICJBYmkgdsO1aSB0ZWFiZSB0YWdhc2lrZXJpbWluZSDDvGhlIHJlYSB2w7VycmEiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTUyCittc2dpZCAiU2Nyb2xsIG9ud2FyZHMgdGhyb3VnaCBsaXN0IgorbXNnc3RyICJOaW1la2lyamEgZWRhc2lrZXJpbWluZSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTMKK21zZ2lkICJTY3JvbGwgYmFja3dhcmRzIHRocm91Z2ggbGlzdCIKK21zZ3N0ciAiTmltZWtpcmphIHRhZ2FzaWtlcmltaW5lIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1NgorbXNnaWQgIk1hcmsgcGFja2FnZShzKSBmb3IgaW5zdGFsbGF0aW9uIgorbXNnc3RyICJQYWtpIChwYWtraWRlKSBtw6Rya2ltaW5lIHBhaWdhbGRhbWlzZWtzIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1NworbXNnaWQgIk1hcmsgcGFja2FnZShzKSBmb3IgZGVpbnN0YWxsYXRpb24iCittc2dzdHIgIlBha2kgKHBha2tpZGUpIG3DpHJraW1pbmUgZWVtYWxkYW1pc2VrcyIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTgKK21zZ2lkICJNYXJrIHBhY2thZ2UocykgZm9yIGRlaW5zdGFsbCBhbmQgcHVyZ2UiCittc2dzdHIgIlBha2kgKHBha2tpZGUpIG3DpHJraW1pbmUgZWVtYWxkYW1pc2VrcyBqYSBwdWhhc3RhbWlzZWtzIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1OQorbXNnaWQgIk1ha2UgaGlnaGxpZ2h0IG1vcmUgc3BlY2lmaWMiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjAKK21zZ2lkICJNYWtlIGhpZ2hsaWdodCBsZXNzIHNwZWNpZmljIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTYxCittc2dpZCAiU2VhcmNoIGZvciBhIHBhY2thZ2Ugd2hvc2UgbmFtZSBjb250YWlucyBhIHN0cmluZyIKK21zZ3N0ciAiUGFra2lkZSBvdHNpbWluZSBwYWtpIG5pbWVzIHNpc2FsZHV2YSBzdHJpbmdpIGrDpHJnaSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjIKK21zZ2lkICJSZXBlYXQgbGFzdCBzZWFyY2guIgorbXNnc3RyICJWaWltYXNlIG90c2luZ3Uga29yZGFtaW5lLiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjMKK21zZ2lkICJTd2FwIHNvcnQgb3JkZXIgcHJpb3JpdHkvc2VjdGlvbiIKK21zZ3N0ciAiU29ydGltaXNqw6RyamVzdHVzZSB2YWhldGFtaW5lOiB0w6RodHN1cy9qYW90aXMiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY0Cittc2dpZCAiUXVpdCwgY29uZmlybWluZywgYW5kIGNoZWNraW5nIGRlcGVuZGVuY2llcyIKK21zZ3N0ciAiTMO1cGV0YW1pbmUsIGtpbm5pdHVzZSBrw7xzaW1pbmUgamEgc8O1bHR1dnVzdGUga29udHJvbGxpbWluZSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjUKK21zZ2lkICJRdWl0LCBjb25maXJtaW5nIHdpdGhvdXQgY2hlY2siCittc2dzdHIgIkzDtXBldGFtaW5lIGlsbWEgc8O1bHR1dnVzdGUga29udHJvbGxpdGEiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY2Cittc2dpZCAiUXVpdCwgcmVqZWN0aW5nIGNvbmZsaWN0L2RlcGVuZGVuY3kgc3VnZ2VzdGlvbnMiCittc2dzdHIgIiIKKyJMw7VwZXRhbWluZSBrb29zIGvDtWlnaSB2YXN0dW9sdS0gamEgc8O1bHR1dnVzc29vdml0dXN0ZSB0YWdhc2lsw7xra2FtaXNlZ2EiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY3Cittc2dpZCAiQWJvcnQgLSBxdWl0IHdpdGhvdXQgbWFraW5nIGNoYW5nZXMiCittc2dzdHIgIkthdGtlc3RhbWluZSAtIGzDtXBldGF0YWtzZSBpbG1hIG11dWRhdHVzaSB0ZWdlbWF0YSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjgKK21zZ2lkICJSZXZlcnQgdG8gb2xkIHN0YXRlIGZvciBhbGwgcGFja2FnZXMiCittc2dzdHIgIkvDtWlnaSBwYWtraWRlIHZhbmEgb2xla3UgdGFhc3RhbWluZSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjkKK21zZ2lkICJSZXZlcnQgdG8gc3VnZ2VzdGVkIHN0YXRlIGZvciBhbGwgcGFja2FnZXMiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNzAKK21zZ2lkICJSZXZlcnQgdG8gZGlyZWN0bHkgcmVxdWVzdGVkIHN0YXRlIGZvciBhbGwgcGFja2FnZXMiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNzEKKyMsIGZ1enp5Cittc2dpZCAiUmV2ZXJ0IHRvIGN1cnJlbnRseSBpbnN0YWxsZWQgc3RhdGUgZm9yIGFsbCBwYWNrYWdlcyIKK21zZ3N0ciAiS8O1aWdpIHBha2tpZGUgdmFuYSBvbGVrdSB0YWFzdGFtaW5lIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE3NAorbXNnaWQgIlNlbGVjdCBjdXJyZW50bHktaGlnaGxpZ2h0ZWQgYWNjZXNzIG1ldGhvZCIKK21zZ3N0ciAiSGV0a2VsIGVzaWxldMO1c3RldHVkIGxpZ2lww6TDpHN1bWVldG9kaSB2YWxpbWluZSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNzUKK21zZ2lkICJRdWl0IHdpdGhvdXQgY2hhbmdpbmcgc2VsZWN0ZWQgYWNjZXNzIG1ldGhvZCIKK21zZ3N0ciAiTMO1cGV0YW1pbmUgaWxtYSBsaWdpcMOkw6RzdW1lZXRvZGl0IHZhbGltYXRhIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjI5Cittc2dpZCAiS2V5c3Ryb2tlcyIKK21zZ3N0ciAiS2xhaHZpdmFqdXR1c2VkIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjI5Cittc2dpZCAiIgorIk1vdGlvbiBrZXlzOiBOZXh0L1ByZXZpb3VzLCBUb3AvRW5kLCBVcC9Eb3duLCBCYWNrd2FyZHMvRm9yd2FyZHM6XG4iCisiICBqLCBEb3duLWFycm93ICAgICAgICAgaywgVXAtYXJyb3cgICAgICAgICAgICAgbW92ZSBoaWdobGlnaHRcbiIKKyIgIE4sIFBhZ2UtZG93biwgU3BhY2UgICBQLCBQYWdlLXVwLCBCYWNrc3BhY2UgICBzY3JvbGwgbGlzdCBieSAxIHBhZ2VcbiIKKyIgIF5uICAgICAgICAgICAgICAgICAgICBecCAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgbGlzdCBieSAxIGxpbmVcbiIKKyIgIHQsIEhvbWUgICAgICAgICAgICAgICBlLCBFbmQgICAgICAgICAgICAgICAgICBqdW1wIHRvIHRvcC9lbmQgb2YgbGlzdFxuIgorIiAgdSAgICAgICAgICAgICAgICAgICAgIGQgICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIGJ5IDEgcGFnZVxuIgorIiAgXnUgICAgICAgICAgICAgICAgICAgIF5kICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIGJ5IDEgbGluZVxuIgorIiAgQiwgTGVmdC1hcnJvdyAgICAgICAgIEYsIFJpZ2h0LWFycm93ICAgICAgICAgIHBhbiBkaXNwbGF5IGJ5IDEvMyBzY3JlZW5cbiIKKyIgIF5iICAgICAgICAgICAgICAgICAgICBeZiAgICAgICAgICAgICAgICAgICAgICBwYW4gZGlzcGxheSBieSAxIGNoYXJhY3RlclxuIgorIlxuIgorIk1hcmsgcGFja2FnZXMgZm9yIGxhdGVyIHByb2Nlc3Npbmc6XG4iCisiICssIEluc2VydCAgaW5zdGFsbCBvciB1cGdyYWRlICAgICAgPSwgSCAgaG9sZCBpbiBwcmVzZW50IHN0YXRlXG4iCisiIC0sIERlbGV0ZSAgcmVtb3ZlICAgICAgICAgICAgICAgICAgOiwgRyAgdW5ob2xkOiB1cGdyYWRlIG9yIGxlYXZlICIKKyJ1bmluc3RhbGxlZFxuIgorIiBfICAgICAgICAgIHJlbW92ZSAmIHB1cmdlIGNvbmZpZ1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1pc2NlbGxhbmVvdXM6XG4iCisiUXVpdCwgZXhpdCwgb3ZlcndyaXRlIChub3RlIGNhcGl0YWxzISk6ICAgICAgID8sIEYxIHJlcXVlc3QgaGVscCAoYWxzbyAiCisiSGVscClcbiIKKyIgUmV0dXJuICBDb25maXJtLCBxdWl0IChjaGVjayBkZXBlbmRlbmNpZXMpICAgaSwgSSAgdG9nZ2xlL2N5Y2xlIGluZm8gIgorImRpc3BsYXlzXG4iCisiICAgUSAgICAgQ29uZmlybSwgcXVpdCAob3ZlcnJpZGUgZGVwLnMpICAgICAgIG8sIE8gIGN5Y2xlIHRocm91Z2ggc29ydCAiCisib3B0aW9uc1xuIgorIiBYLCBFc2MgIGVYaXQsIGFiYW5kb25pbmcgYW55IGNoYW5nZXMgbWFkZSAgICB2LCBWICBjaGFuZ2Ugc3RhdHVzIGRpc3BsYXkgIgorIm9wdHNcbiIKKyIgICBSICAgICBSZXZlcnQgdG8gc3RhdGUgYmVmb3JlIHRoaXMgbGlzdCAgICAgIF5sICAgcmVkcmF3IGRpc3BsYXlcbiIKKyIgICBVICAgICBzZXQgYWxsIHRvIHNVZ2dlc3RlZCBzdGF0ZSAgICAgICAgICAgICAvICAgc2VhcmNoIChSZXR1cm4gdG8gIgorImNhbmNlbClcbiIKKyIgICBEICAgICBzZXQgYWxsIHRvIERpcmVjdGx5IHJlcXVlc3RlZCBzdGF0ZSAgbiwgXFwgIHJlcGVhdCBsYXN0IHNlYXJjaFxuIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6NTUKK21zZ2lkICJJbnRyb2R1Y3Rpb24gdG8gcGFja2FnZSBzZWxlY3Rpb25zIgorbXNnc3RyICJQYWtraWRlIHZhbGltaXNlIHNpc3NlanVodGF0dXMiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6NTUKK21zZ2lkICIiCisiV2VsY29tZSB0byBkc2VsZWN0J3MgbWFpbiBwYWNrYWdlIGxpc3RpbmcuXG4iCisiXG4iCisiWW91IHdpbGwgYmUgcHJlc2VudGVkIHdpdGggYSBsaXN0IG9mIHBhY2thZ2VzIHdoaWNoIGFyZSBpbnN0YWxsZWQgb3IgIgorImF2YWlsYWJsZVxuIgorImZvciBpbnN0YWxsYXRpb24uICBZb3UgY2FuIG5hdmlnYXRlIGFyb3VuZCB0aGUgbGlzdCB1c2luZyB0aGUgY3Vyc29yIGtleXMsXG4iCisibWFyayBwYWNrYWdlcyBmb3IgaW5zdGFsbGF0aW9uICh1c2luZyBgKycpIG9yIGRlaW5zdGFsbGF0aW9uICh1c2luZyBgLScpLlxuIgorIlBhY2thZ2VzIGNhbiBiZSBtYXJrZWQgZWl0aGVyIHNpbmdseSBvciBpbiBncm91cHM7IGluaXRpYWxseSB5b3Ugd2lsbCBzZWUgIgorInRoYXRcbiIKKyJ0aGUgbGluZSBgQWxsIHBhY2thZ2VzJyBpcyBzZWxlY3RlZC4gIGArJywgYC0nIGFuZCBzbyBvbiB3aWxsIGFmZmVjdCBhbGwgIgorInRoZVxuIgorInBhY2thZ2VzIGRlc2NyaWJlZCBieSB0aGUgaGlnaGxpZ2h0ZWQgbGluZS5cbiIKKyJcbiIKKyJTb21lIG9mIHlvdXIgY2hvaWNlcyB3aWxsIGNhdXNlIGNvbmZsaWN0cyBvciBkZXBlbmRlbmN5IHByb2JsZW1zOyB5b3Ugd2lsbCAiCisiYmVcbiIKKyJnaXZlbiBhIHN1Yi1saXN0IG9mIHRoZSByZWxldmFudCBwYWNrYWdlcywgc28gdGhhdCB5b3UgY2FuIHNvbHZlIHRoZSAiCisicHJvYmxlbXMuXG4iCisiXG4iCisiWW91IHNob3VsZCByZWFkIHRoZSBsaXN0IG9mIGtleXMgYW5kIHRoZSBleHBsYW5hdGlvbnMgb2YgdGhlIGRpc3BsYXkuXG4iCisiTXVjaCBvbi1saW5lIGhlbHAgaXMgYXZhaWxhYmxlLCBwbGVhc2UgbWFrZSB1c2Ugb2YgaXQgLSBwcmVzcyBgPycgYXRcbiIKKyJhbnkgdGltZSBmb3IgaGVscC5cbiIKKyJcbiIKKyJXaGVuIHlvdSBoYXZlIGZpbmlzaGVkIHNlbGVjdGluZyBwYWNrYWdlcywgcHJlc3MgPGVudGVyPiB0byBjb25maXJtICIKKyJjaGFuZ2VzLFxuIgorIm9yIGBYJyB0byBxdWl0IHdpdGhvdXQgc2F2aW5nIGNoYW5nZXMuIEEgZmluYWwgY2hlY2sgb24gY29uZmxpY3RzIGFuZFxuIgorImRlcGVuZGVuY2llcyB3aWxsIGJlIGRvbmUgLSBoZXJlIHRvbyB5b3UgbWF5IHNlZSBhIHN1Ymxpc3QuXG4iCisiXG4iCisiUHJlc3MgPHNwYWNlPiB0byBsZWF2ZSBoZWxwIGFuZCBlbnRlciB0aGUgbGlzdCBub3cuXG4iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo4MAorbXNnaWQgIkludHJvZHVjdGlvbiB0byByZWFkLW9ubHkgcGFja2FnZSBsaXN0IGJyb3dzZXIiCittc2dzdHIgIlNpc3NlanVoYXR1cyBhaW51bHQgdmFhdGFtaXNla3MgbcO1ZWxkdWQgcGFraW5pbWVraXJqYSBzaXJ2aWphc3NlIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjgwCittc2dpZCAiIgorIldlbGNvbWUgdG8gZHNlbGVjdCdzIG1haW4gcGFja2FnZSBsaXN0aW5nLlxuIgorIlxuIgorIllvdSB3aWxsIGJlIHByZXNlbnRlZCB3aXRoIGEgbGlzdCBvZiBwYWNrYWdlcyB3aGljaCBhcmUgaW5zdGFsbGVkIG9yICIKKyJhdmFpbGFibGVcbiIKKyJmb3IgaW5zdGFsbGF0aW9uLiAgU2luY2UgeW91IGRvIG5vdCBoYXZlIHRoZSBwcml2aWxlZ2UgbmVjZXNzYXJ5IHRvIHVwZGF0ZVxuIgorInBhY2thZ2Ugc3RhdGVzLCB5b3UgYXJlIGluIGEgcmVhZC1vbmx5IG1vZGUuICBZb3UgY2FuIG5hdmlnYXRlIGFyb3VuZCB0aGVcbiIKKyJsaXN0IHVzaW5nIHRoZSBjdXJzb3Iga2V5cyAocGxlYXNlIHNlZSB0aGUgYEtleXN0cm9rZXMnIGhlbHAgc2NyZWVuKSwgIgorIm9ic2VydmVcbiIKKyJ0aGUgc3RhdHVzIG9mIHRoZSBwYWNrYWdlcyBhbmQgcmVhZCBpbmZvcm1hdGlvbiBhYm91dCB0aGVtLlxuIgorIlxuIgorIllvdSBzaG91bGQgcmVhZCB0aGUgbGlzdCBvZiBrZXlzIGFuZCB0aGUgZXhwbGFuYXRpb25zIG9mIHRoZSBkaXNwbGF5LlxuIgorIk11Y2ggb24tbGluZSBoZWxwIGlzIGF2YWlsYWJsZSwgcGxlYXNlIG1ha2UgdXNlIG9mIGl0IC0gcHJlc3MgYD8nIGF0XG4iCisiYW55IHRpbWUgZm9yIGhlbHAuXG4iCisiXG4iCisiV2hlbiB5b3UgaGF2ZSBmaW5pc2hlZCBicm93c2luZywgcHJlc3MgYFEnIG9yIDxlbnRlcj4gdG8gcXVpdC5cbiIKKyJcbiIKKyJQcmVzcyA8c3BhY2U+IHRvIGxlYXZlIGhlbHAgYW5kIGVudGVyIHRoZSBsaXN0IG5vdy5cbiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjk5Cittc2dpZCAiSW50cm9kdWN0aW9uIHRvIGNvbmZsaWN0L2RlcGVuZGVuY3kgcmVzb2x1dGlvbiBzdWItbGlzdCIKK21zZ3N0ciAiU2lzc2VqdWhhdHVzIHPDtWx0dXZ1c3RlIGphIHZhc3R1b2x1ZGUgbGFoZW5kYW1pc2UgYWxhbW5pbWVraXJqYSIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo5OQorbXNnaWQgIiIKKyJEZXBlbmRlbmN5L2NvbmZsaWN0IHJlc29sdXRpb24gLSBpbnRyb2R1Y3Rpb24uXG4iCisiXG4iCisiT25lIG9yIG1vcmUgb2YgeW91ciBjaG9pY2VzIGhhdmUgcmFpc2VkIGEgY29uZmxpY3Qgb3IgZGVwZW5kZW5jeSBwcm9ibGVtIC1cbiIKKyJzb21lIHBhY2thZ2VzIHNob3VsZCBvbmx5IGJlIGluc3RhbGxlZCBpbiBjb25qdW5jdGlvbiB3aXRoIGNlcnRhaW4gb3RoZXJzLCAiCisiYW5kXG4iCisic29tZSBjb21iaW5hdGlvbnMgb2YgcGFja2FnZXMgbWF5IG5vdCBiZSBpbnN0YWxsZWQgdG9nZXRoZXIuXG4iCisiXG4iCisiWW91IHdpbGwgc2VlIGEgc3ViLWxpc3QgY29udGFpbmluZyB0aGUgcGFja2FnZXMgaW52b2x2ZWQuICBUaGUgYm90dG9tIGhhbGYgIgorIm9mXG4iCisidGhlIGRpc3BsYXkgc2hvd3MgcmVsZXZhbnQgY29uZmxpY3RzIGFuZCBkZXBlbmRlbmNpZXM7IHVzZSBgaScgdG8gY3ljbGUgIgorImJldHdlZW5cbiIKKyJ0aGF0LCB0aGUgcGFja2FnZSBkZXNjcmlwdGlvbnMgYW5kIHRoZSBpbnRlcm5hbCBjb250cm9sIGluZm9ybWF0aW9uLlxuIgorIlxuIgorIkEgc2V0IG9mIGBzdWdnZXN0ZWQnIHBhY2thZ2VzIGhhcyBiZWVuIGNhbGN1bGF0ZWQsIGFuZCB0aGUgaW5pdGlhbCBtYXJraW5ncyAiCisiaW5cbiIKKyJ0aGlzIHN1Yi1saXN0IGhhdmUgYmVlbiBzZXQgdG8gbWF0Y2ggdGhvc2UsIHNvIHlvdSBjYW4ganVzdCBoaXQgUmV0dXJuIHRvXG4iCisiYWNjZXB0IHRoZSBzdWdnZXN0aW9ucyBpZiB5b3Ugd2lzaC4gIFlvdSBtYXkgYWJvcnQgdGhlIGNoYW5nZShzKSB3aGljaCAiCisiY2F1c2VkXG4iCisidGhlIHByb2JsZW0ocyksIGFuZCBnbyBiYWNrIHRvIHRoZSBtYWluIGxpc3QsIGJ5IHByZXNzaW5nIGNhcGl0YWwgYFgnLlxuIgorIlxuIgorIllvdSBjYW4gYWxzbyBtb3ZlIGFyb3VuZCB0aGUgbGlzdCBhbmQgY2hhbmdlIHRoZSBtYXJraW5ncyBzbyB0aGF0IHRoZXkgYXJlICIKKyJtb3JlXG4iCisibGlrZSB3aGF0IHlvdSB3YW50LCBhbmQgeW91IGNhbiBgcmVqZWN0JyBteSBzdWdnZXN0aW9ucyBieSB1c2luZyB0aGUgIgorImNhcGl0YWxcbiIKKyJgRCcgb3IgYFInIGtleXMgKHNlZSB0aGUga2V5YmluZGluZ3MgaGVscCBzY3JlZW4pLiAgWW91IGNhbiB1c2UgY2FwaXRhbCBgUScgIgorInRvXG4iCisiZm9yY2UgbWUgdG8gYWNjZXB0IHRoZSBzaXR1YXRpb24gY3VycmVudGx5IGRpc3BsYXllZCwgaW4gY2FzZSB5b3Ugd2FudCB0b1xuIgorIm92ZXJyaWRlIGEgcmVjb21tZW5kYXRpb24gb3IgdGhpbmsgdGhhdCB0aGUgcHJvZ3JhbSBpcyBtaXN0YWtlbi5cbiIKKyJcbiIKKyJQcmVzcyA8c3BhY2U+IHRvIGxlYXZlIGhlbHAgYW5kIGVudGVyIHRoZSBzdWItbGlzdDsgcmVtZW1iZXI6IHByZXNzIGA/JyBmb3IgIgorImhlbHAuXG4iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxMjUKK21zZ2lkICJEaXNwbGF5LCBwYXJ0IDE6IHBhY2thZ2UgbGlzdGluZyBhbmQgc3RhdHVzIGNoYXJzIgorbXNnc3RyICJLdXZhLCBJIG9zYTogcGFra2lkZSBuaW1la2lyaSBqYSBvbGVrdW3DpHJnaWQiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTI1Cittc2dpZCAiIgorIlRoZSB0b3AgaGFsZiBvZiB0aGUgc2NyZWVuIHNob3dzIGEgbGlzdCBvZiBwYWNrYWdlcy4gIEZvciBlYWNoIHBhY2thZ2UgeW91ICIKKyJzZWVcbiIKKyJmb3VyIGNvbHVtbnMgZm9yIGl0cyBjdXJyZW50IHN0YXR1cyBvbiB0aGUgc3lzdGVtIGFuZCBtYXJrLiAgSW4gdGVyc2UgbW9kZSAiCisiKHVzZVxuIgorImB2JyB0byB0b2dnbGUgdmVyYm9zZSBkaXNwbGF5KSB0aGVzZSBhcmUgc2luZ2xlIGNoYXJhY3RlcnMsIGZyb20gbGVmdCB0byAiCisicmlnaHQ6XG4iCisiXG4iCisiIEVycm9yIGZsYWc6IFNwYWNlIC0gbm8gZXJyb3IgKGJ1dCBwYWNrYWdlIG1heSBiZSBpbiBicm9rZW4gc3RhdGUgLSBzZWUgIgorImJlbG93KVxuIgorIiAgICAgICAgICAgICAgYFInICAtIHNlcmlvdXMgZXJyb3IgZHVyaW5nIGluc3RhbGxhdGlvbiwgbmVlZHMgIgorInJlaW5zdGFsbGF0aW9uO1xuIgorIiBJbnN0YWxsZWQgc3RhdGU6ICAgICBTcGFjZSAgICAtIG5vdCBpbnN0YWxsZWQ7XG4iCisiICAgICAgICAgICAgICAgICAgICAgICBgKicgICAgIC0gaW5zdGFsbGVkO1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgYC0nICAgICAtIG5vdCBpbnN0YWxsZWQgYnV0IGNvbmZpZyBmaWxlcyByZW1haW47XG4iCisiICAgcGFja2FnZXMgaW4gdGhlc2UgeyBgVScgICAgIC0gdW5wYWNrZWQgYnV0IG5vdCB5ZXQgY29uZmlndXJlZDtcbiIKKyIgICBzdGF0ZXMgYXJlIG5vdCAgICB7IGBDJyAgICAgLSBoYWxmLWNvbmZpZ3VyZWQgKGFuIGVycm9yIGhhcHBlbmVkKTtcbiIKKyIgICAocXVpdGUpIHByb3Blcmx5ICB7IGBJJyAgICAgLSBoYWxmLWluc3RhbGxlZCAoYW4gZXJyb3IgaGFwcGVuZWQpO1xuIgorIiAgIGluc3RhbGxlZCAgICAgICAgIHsgYFcnLGB0JyAtIHRyaWdnZXJzIGFyZSBhd2FpdGVkIHJlc3AuIHBlbmRpbmcuXG4iCisiIE9sZCBtYXJrOiB3aGF0IHdhcyByZXF1ZXN0ZWQgZm9yIHRoaXMgcGFja2FnZSBiZWZvcmUgcHJlc2VudGluZyB0aGlzIGxpc3Q7XG4iCisiIE1hcms6IHdoYXQgaXMgcmVxdWVzdGVkIGZvciB0aGlzIHBhY2thZ2U6XG4iCisiICBgKic6IG1hcmtlZCBmb3IgaW5zdGFsbGF0aW9uIG9yIHVwZ3JhZGU7XG4iCisiICBgLSc6IG1hcmtlZCBmb3IgcmVtb3ZhbCwgYnV0IGFueSBjb25maWd1cmF0aW9uIGZpbGVzIHdpbGwgcmVtYWluO1xuIgorIiAgYD0nOiBvbiBob2xkOiBwYWNrYWdlIHdpbGwgbm90IGJlIHByb2Nlc3NlZCBhdCBhbGw7XG4iCisiICBgXyc6IG1hcmtlZCBmb3IgcHVyZ2UgY29tcGxldGVseSAtIGV2ZW4gcmVtb3ZlIGNvbmZpZ3VyYXRpb247XG4iCisiICBgbic6IHBhY2thZ2UgaXMgbmV3IGFuZCBoYXMgeWV0IHRvIGJlIG1hcmtlZCBmb3IgaW5zdGFsbC9yZW1vdmUvJmMuXG4iCisiXG4iCisiQWxzbyBkaXNwbGF5ZWQgYXJlIGVhY2ggcGFja2FnZSdzIFByaW9yaXR5LCBTZWN0aW9uLCBuYW1lLCBpbnN0YWxsZWQgYW5kXG4iCisiYXZhaWxhYmxlIHZlcnNpb24gbnVtYmVycyAoc2hpZnQtViB0byBkaXNwbGF5L2hpZGUpIGFuZCBzdW1tYXJ5ICIKKyJkZXNjcmlwdGlvbi5cbiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjE1MgorbXNnaWQgIkRpc3BsYXksIHBhcnQgMjogbGlzdCBoaWdobGlnaHQ7IGluZm9ybWF0aW9uIGRpc3BsYXkiCittc2dzdHIgIkt1dmEsIElJIG9zYTogbmltZWtpcmphIGVzaWxldMO1c3RtaW5lIGphIGFuZG1ldGUga3V2YW1pbmUiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTUyCittc2dpZCAiIgorIiogSGlnaGxpZ2h0OiBPbmUgbGluZSBpbiB0aGUgcGFja2FnZSBsaXN0IHdpbGwgYmUgaGlnaGxpZ2h0ZWQuICBJdCAiCisiaW5kaWNhdGVzXG4iCisiICB3aGljaCBwYWNrYWdlKHMpIHdpbGwgYmUgYWZmZWN0ZWQgYnkgcHJlc3NlcyBvZiBgKycsIGAtJyBhbmQgYF8nLlxuIgorIlxuIgorIiogVGhlIGRpdmlkaW5nIGxpbmUgaW4gdGhlIG1pZGRsZSBvZiB0aGUgc2NyZWVuIHNob3dzIGEgYnJpZWYgZXhwbGFuYXRpb24gIgorIm9mXG4iCisiICB0aGUgc3RhdHVzIG9mIHRoZSBjdXJyZW50bHktaGlnaGxpZ2h0ZWQgcGFja2FnZSwgb3IgYSBkZXNjcmlwdGlvbiBvZiAiCisid2hpY2hcbiIKKyIgIGdyb3VwIGlzIGhpZ2hsaWdodGVkIGlmIGEgZ3JvdXAgbGluZSBpcy4gIElmIHlvdSBkb24ndCB1bmRlcnN0YW5kIHRoZVxuIgorIiAgbWVhbmluZyBvZiBzb21lIG9mIHRoZSBzdGF0dXMgY2hhcmFjdGVycyBkaXNwbGF5ZWQsIGdvIHRvIHRoZSByZWxldmFudFxuIgorIiAgcGFja2FnZSBhbmQgbG9vayBhdCB0aGlzIGRpdmlkZXIgbGluZSwgb3IgdXNlIHRoZSBgdicga2V5IGZvciBhIHZlcmJvc2VcbiIKKyIgIGRpc3BsYXkgKHByZXNzIGB2JyBhZ2FpbiB0byBnbyBiYWNrIHRvIHRoZSB0ZXJzZSBkaXNwbGF5KS5cbiIKKyJcbiIKKyIqIFRoZSBib3R0b20gb2YgdGhlIHNjcmVlbiBzaG93cyBtb3JlIGluZm9ybWF0aW9uIGFib3V0IHRoZVxuIgorIiAgY3VycmVudGx5LWhpZ2hsaWdodGVkIHBhY2thZ2UgKGlmIHRoZXJlIGlzIG9ubHkgb25lKS5cbiIKKyJcbiIKKyIgIEl0IGNhbiBzaG93IGFuIGV4dGVuZGVkIGRlc2NyaXB0aW9uIG9mIHRoZSBwYWNrYWdlLCB0aGUgaW50ZXJuYWwgcGFja2FnZVxuIgorIiAgY29udHJvbCBkZXRhaWxzIChlaXRoZXIgZm9yIHRoZSBpbnN0YWxsZWQgb3IgYXZhaWxhYmxlIHZlcnNpb24gb2YgdGhlXG4iCisiICBwYWNrYWdlKSwgb3IgaW5mb3JtYXRpb24gYWJvdXQgY29uZmxpY3RzIGFuZCBkZXBlbmRlbmNpZXMgaW52b2x2aW5nIHRoZVxuIgorIiAgY3VycmVudCBwYWNrYWdlIChpbiBjb25mbGljdC9kZXBlbmRlbmN5IHJlc29sdXRpb24gc3VibGlzdHMpLlxuIgorIlxuIgorIiAgVXNlIHRoZSBgaScga2V5IHRvIGN5Y2xlIHRocm91Z2ggdGhlIGRpc3BsYXlzLCBhbmQgYEknIHRvIGhpZGUgdGhlXG4iCisiICBpbmZvcm1hdGlvbiBkaXNwbGF5IG9yIGV4cGFuZCBpdCB0byB1c2UgYWxtb3N0IGFsbCBvZiB0aGUgc2NyZWVuLlxuIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTc2Cittc2dpZCAiSW50cm9kdWN0aW9uIHRvIG1ldGhvZCBzZWxlY3Rpb24gZGlzcGxheSIKK21zZ3N0ciAiU2lzc2VqdWhhdHVzIG1lZXRvZGl0ZSB2YWxpa3Uga3V2YXNzZSIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxNzYKK21zZ2lkICIiCisiZHNlbGVjdCBhbmQgZHBrZyBjYW4gZG8gYXV0b21hdGljIGluc3RhbGxhdGlvbiwgbG9hZGluZyB0aGUgcGFja2FnZSBmaWxlcyB0byAiCisiYmVcbiIKKyJpbnN0YWxsZWQgZnJvbSBvbmUgb2YgYSBudW1iZXIgb2YgZGlmZmVyZW50IHBvc3NpYmxlIHBsYWNlcy5cbiIKKyJcbiIKKyJUaGlzIGxpc3QgYWxsb3dzIHlvdSB0byBzZWxlY3Qgb25lIG9mIHRoZXNlIGluc3RhbGxhdGlvbiBtZXRob2RzLlxuIgorIlxuIgorIk1vdmUgdGhlIGhpZ2hsaWdodCB0byB0aGUgbWV0aG9kIHlvdSB3aXNoIHRvIHVzZSwgYW5kIGhpdCBFbnRlci4gIFlvdSB3aWxsICIKKyJ0aGVuXG4iCisiYmUgcHJvbXB0ZWQgZm9yIHRoZSBpbmZvcm1hdGlvbiByZXF1aXJlZCB0byBkbyB0aGUgaW5zdGFsbGF0aW9uLlxuIgorIlxuIgorIkFzIHlvdSBtb3ZlIHRoZSBoaWdobGlnaHQgYSBkZXNjcmlwdGlvbiBvZiBlYWNoIG1ldGhvZCwgd2hlcmUgYXZhaWxhYmxlLCBpc1xuIgorImRpc3BsYXllZCBpbiB0aGUgYm90dG9tIGhhbGYgb2YgdGhlIHNjcmVlbi5cbiIKKyJcbiIKKyJJZiB5b3Ugd2lzaCB0byBxdWl0IHdpdGhvdXQgY2hhbmdpbmcgYW55dGhpbmcgdXNlIHRoZSBgeCcga2V5IHdoaWxlIGluIHRoZSAiCisibGlzdFxuIgorIm9mIGluc3RhbGxhdGlvbiBtZXRob2RzLlxuIgorIlxuIgorIkEgZnVsbCBsaXN0IG9mIGtleXN0cm9rZXMgaXMgYXZhaWxhYmxlIGJ5IHByZXNzaW5nIGBrJyBub3csIG9yIGZyb20gdGhlICIKKyJoZWxwXG4iCisibWVudSByZWFjaGFibGUgYnkgcHJlc3NpbmcgYD8nLlxuIgorbXNnc3RyICIiCisiZHNlbGVjdCBqYSBkcGtnIHbDtWltYWxkYXZhZCBhdXRvbWFhdHNlbHQgcGFpZ2FsZHVzdCwga3VzIHBha2lmYWlsaWRcbiIKKyJwYWlnYWxkYXRha3NlIGthcyDDvGhlc3Qga29oYXN0IHbDtWkgbWl0bWVzdCBlcmluZXZhc3Qga29oYXN0LlxuIgorIlxuIgorIk5pbWVraXJqYXN0IG9uIHbDtWltYWxpayB2YWxpZGEgw7xodGUgcGFpZ2FsZHVzbWVldG9kaXQuXG4iCisiXG4iCisiTGlpZ3V0YSB2YWxpayBTaW51IHBvb2x0IHNvb3ZpdGF2YWxlIG1lZXRvZGlsZSBqYSB2YWp1ZGEga2xhaHZpIEVudGVyLiAiCisiU2VsbGVcbiIKKyJwZWFsZSBrw7xzaXRha3NlIHBhaWdhbGR1c2UgamFva3MgdmFqYWxpa2tlIGFuZG1laWQuXG4iCisiXG4iCisiS3VpIHNhIHZhbGlrdXJpZGEgbGlpZ3V0YWQsIHNpaXMgaWxtdWIgaWdhIG1lZXRvZGkga2lyamVsZHVzIChrdWkgc2VlIG9uXG4iCisic2FhZGF2YWwpIGVrcmFhbmkgYWx1bWlzZWxlIG9zYWxlLlxuIgorIlxuIgorIkt1aSBTYSBzb292aWQgdsOkbGp1ZGEgaWxtYSBtaWRhZ2kgbXV1dG1hdGEsIHZhanV0YSBwYWlnYWxkdXNtZWV0b2RpdGVcbiIKKyJuaW1la2lyamFzIGtsYWh2aSBgeCcuXG4iCisiXG4iCisiVMOkaWVsaWt1IGtsYWh2aXZhanV0dXN0ZSBuaW1la2lyamEgdmFhdGFtaXNla3MgdmFqdXRhIGtsYWh2aSBgaycgdsO1aSAiCisiYWJpdGVhYmVcbiIKKyJtZW7DvMO8cyB2YWp1dGEgYD8nLlxuIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjE5NgorbXNnaWQgIktleXN0cm9rZXMgZm9yIG1ldGhvZCBzZWxlY3Rpb24iCittc2dzdHIgIk1lZXRvZGl0ZSB2YWxpa3Uga2xhaHZpdmFqdXR1c2VkIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjE5NgorbXNnaWQgIiIKKyJNb3Rpb24ga2V5czogTmV4dC9QcmV2aW91cywgVG9wL0VuZCwgVXAvRG93biwgQmFja3dhcmRzL0ZvcndhcmRzOlxuIgorIiAgaiwgRG93bi1hcnJvdyAgICAgICAgIGssIFVwLWFycm93ICAgICAgICAgICAgIG1vdmUgaGlnaGxpZ2h0XG4iCisiICBOLCBQYWdlLWRvd24sIFNwYWNlICAgUCwgUGFnZS11cCwgQmFja3NwYWNlICAgc2Nyb2xsIGxpc3QgYnkgMSBwYWdlXG4iCisiICBebiAgICAgICAgICAgICAgICAgICAgXnAgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGxpc3QgYnkgMSBsaW5lXG4iCisiICB0LCBIb21lICAgICAgICAgICAgICAgZSwgRW5kICAgICAgICAgICAgICAgICAganVtcCB0byB0b3AvZW5kIG9mIGxpc3RcbiIKKyIgIHUgICAgICAgICAgICAgICAgICAgICBkICAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyBieSAxIHBhZ2VcbiIKKyIgIF51ICAgICAgICAgICAgICAgICAgICBeZCAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyBieSAxIGxpbmVcbiIKKyIgIEIsIExlZnQtYXJyb3cgICAgICAgICBGLCBSaWdodC1hcnJvdyAgICAgICAgICBwYW4gZGlzcGxheSBieSAxLzMgc2NyZWVuXG4iCisiICBeYiAgICAgICAgICAgICAgICAgICAgXmYgICAgICAgICAgICAgICAgICAgICAgcGFuIGRpc3BsYXkgYnkgMSBjaGFyYWN0ZXJcbiIKKyIoVGhlc2UgYXJlIHRoZSBzYW1lIG1vdGlvbiBrZXlzIGFzIGluIHRoZSBwYWNrYWdlIGxpc3QgZGlzcGxheS4pXG4iCisiXG4iCisiUXVpdDpcbiIKKyIgUmV0dXJuLCBFbnRlciAgICBzZWxlY3QgdGhpcyBtZXRob2QgYW5kIGdvIHRvIGl0cyBjb25maWd1cmF0aW9uIGRpYWxvZ3VlXG4iCisiIHgsIFggICAgICAgICAgICAgZXhpdCB3aXRob3V0IGNoYW5naW5nIG9yIHNldHRpbmcgdXAgdGhlIGluc3RhbGxhdGlvbiAiCisibWV0aG9kXG4iCisiXG4iCisiTWlzY2VsbGFuZW91czpcbiIKKyIgID8sIEhlbHAsIEYxICAgICAgcmVxdWVzdCBoZWxwXG4iCisiIF5sICAgICAgICAgICAgICAgIHJlZHJhdyBkaXNwbGF5XG4iCisiICAvICAgICAgICAgICAgICAgIHNlYXJjaCAoanVzdCByZXR1cm4gdG8gY2FuY2VsKVxuIgorIiAgXFwgICAgICAgICAgICAgICAgcmVwZWF0IGxhc3Qgc2VhcmNoXG4iCittc2dzdHIgIiIKKyJMaWlrdW1pc2tsYWh2aWQ6IEVlbG1pbmUvSsOkcmdtaW5lLCBBbGd1c2Vzc2UvTMO1cHB1LCDDnGxlcy9BbGxhLCBFZGFzaS8iCisiVGFnYXNpOlxuIgorIiAgaiwgTm9vbCBhbGxhICAgICAgICAgIGssIE5vb2wgw7xsZXMgICAgICAgICAgICB2YWxpa3UgbGlpZ3V0YW1pbmVcbiIKKyIgIE4sIFBhZ2UtZG93biwgVMO8aGlrICAgUCwgUGFnZS11cCwgQmFja3NwYWNlICAgbmltZWtpcmphIGtlcmltaW5lIGxlaGUgIgorInbDtXJyYVxuIgorIiAgXm4gICAgICAgICAgICAgICAgICAgIF5wICAgICAgICAgICAgICAgICAgICAgIG5pbWVraXJqYSBrZXJpbWluZSByZWEgIgorInbDtXJyYVxuIgorIiAgdCwgSG9tZSAgICAgICAgICAgICAgIGUsIEVuZCAgICAgICAgICAgICAgICAgIG5pbWVraXJqYSBhbGd1c2Vzc2UvbMO1cHB1XG4iCisiICB1ICAgICAgICAgICAgICAgICAgICAgZCAgICAgICAgICAgICAgICAgICAgICAgdGVhYmUga2VyaW1pbmUgbGVoZSB2w7VycmFcbiIKKyIgIF51ICAgICAgICAgICAgICAgICAgICBeZCAgICAgICAgICAgICAgICAgICAgICB0ZWFiZSBrZXJpbWluZSByZWEgdsO1cnJhXG4iCisiICBCLCBMZWZ0LWFycm93ICAgICAgICAgRiwgUmlnaHQtYXJyb3cgICAgICAgICAga8O8bGdrZXJpbWluZSAxLzMgZWtyYWFuaSAiCisidsO1cnJhXG4iCisiICBeYiAgICAgICAgICAgICAgICAgICAgXmYgICAgICAgICAgICAgICAgICAgICAga8O8bGdrZXJpbWluZSDDvGhlIG3DpHJnaSAiCisidsO1cnJhXG4iCisiKE5lZWQga2xhaHZpZCBvbiBzYW1hZCwgbWlzIHBha2tpZGUgbmltZWtpcmphIGt1dmFzLilcbiIKKyJcbiIKKyJOaW1la2lyamFzdCB2w6RsanVtaW5lOlxuIgorIiBSZXR1cm4sIEVudGVyICAgIG1lZXRvZGkgdmFsaW1pbmUgamEgc2lpcmR1bWluZSBzZWxsZSBzZWFkaXN0YW1pc2RpYWxvb2dpXG4iCisiIHgsIFggICAgICAgICAgICAgbMO1cGV0YW1pbmUgaWxtYSB1dXQgbWVldG9kaXQgdmFsaW1hdGEgdsO1aSBzZWFkaXN0YW1hdGFcbiIKKyJcbiIKKyJNdXVkOlxuIgorIiAgPywgSGVscCwgRjEgICAgICBhYml0ZWFiZSBrw7xzaW1pbmVcbiIKKyIgXmwgICAgICAgICAgICAgICAga3V2YSDDvGxlam9vbmlzdGFtaW5lXG4iCisiICAvICAgICAgICAgICAgICAgIG90c2luZyAoa2F0a2VzdGFtaXNla3MgRW50ZXIsIGt1aSBvdHNpbmd1c3RyaW5nIG9uIHTDvGhpKVxuIgorIiAgXFwgICAgICAgICAgICAgICAgdmlpbWFzZSBvdHNpbmd1IGtvcmRhbWluZVxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6NjAKK21zZ2lkICJUeXBlIGRzZWxlY3QgLS1oZWxwIGZvciBoZWxwLiIKK21zZ3N0ciAiQWJpdGVhYmUgamFva3Mga8OkaXZpdGEgYGRzZWxlY3QgLS1oZWxwJy4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDMKK21zZ2lkICJhIgorbXNnc3RyICJwIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQzCittc2dpZCAiW0FdY2Nlc3MiCittc2dzdHIgIltQXcOkw6RzIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQzCittc2dpZCAiQ2hvb3NlIHRoZSBhY2Nlc3MgbWV0aG9kIHRvIHVzZS4iCittc2dzdHIgIkthc3V0YXRhdmF0ZSBsaWdpcMOkw6RzdW1lZXRvZGl0ZSB2YWxpbWluZS4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDQKK21zZ2lkICJ1IgorbXNnc3RyICJ1IgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ0Cittc2dpZCAiW1VdcGRhdGUiCittc2dzdHIgIltVXXVlbmRhIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ0Cittc2dpZCAiVXBkYXRlIGxpc3Qgb2YgYXZhaWxhYmxlIHBhY2thZ2VzLCBpZiBwb3NzaWJsZS4iCittc2dzdHIgIlNhYWRhb2xldmF0ZSBwYWtraWRlIG5pbWVraXJqYSB1dWVuZGFtaW5lIChrdWkgdsO1aW1hbGlrKS4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDUKK21zZ2lkICJzIgorbXNnc3RyICJ2IgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ1Cittc2dpZCAiW1NdZWxlY3QiCittc2dzdHIgIltWXWFsaSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NQorbXNnaWQgIlJlcXVlc3Qgd2hpY2ggcGFja2FnZXMgeW91IHdhbnQgb24geW91ciBzeXN0ZW0uIgorbXNnc3RyICJQYWtraWRlIG9sZWt1IHNlYWRtaW5lIChwYWlnYWxkYW1pbmUsIGVlbWFsZGFtaW5lIGpuZSkuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ2Cittc2dpZCAiaSIKK21zZ3N0ciAicCIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NgorbXNnaWQgIltJXW5zdGFsbCIKK21zZ3N0ciAiW1BdYWlnYWxkYSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NgorbXNnaWQgIkluc3RhbGwgYW5kIHVwZ3JhZGUgd2FudGVkIHBhY2thZ2VzLiIKK21zZ3N0ciAiUGFra2lkZSBwYWlnYWxkYW1pbmUgamEgdXVlbmRhbWluZS4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDcKK21zZ2lkICJjIgorbXNnc3RyICJzIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ3Cittc2dpZCAiW0Ndb25maWciCittc2dzdHIgIltTXWVhZGlzdGEiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDcKK21zZ2lkICJDb25maWd1cmUgYW55IHBhY2thZ2VzIHRoYXQgYXJlIHVuY29uZmlndXJlZC4iCittc2dzdHIgIkvDtWlnaSBzZWFkaXN0YW1hdGEgcGFra2lkZSBzZWFkaXN0YW1pbmUuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ4Cittc2dpZCAiciIKK21zZ3N0ciAiZSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OAorbXNnaWQgIltSXWVtb3ZlIgorbXNnc3RyICJbRV1lbWFsZGEiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDgKK21zZ2lkICJSZW1vdmUgdW53YW50ZWQgc29mdHdhcmUuIgorbXNnc3RyICJUYXJiZXR1IHRhcmt2YXJhIGVlbWFsZGFtaW5lLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OQorbXNnaWQgInEiCittc2dzdHIgImwiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDkKK21zZ2lkICJbUV11aXQiCittc2dzdHIgIltMXcO1cGV0YSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OQorbXNnaWQgIlF1aXQgZHNlbGVjdC4iCittc2dzdHIgIkRzZWxlY3QnaSBzdWxnZW1pbmUiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNTAKK21zZ2lkICJtZW51IgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuIGAlcycgcGFja2FnZSBoYW5kbGluZyBmcm9udGVuZCB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICJEZWJpYW5pIGAlcycgcGFraWhhbGR1c3Byb2dyYW1taSBrYXN1dGFqYWxpaWRlc2UgdmVyc2lvb24gJXMuXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNTgKK21zZ2lkICIiCisiQ29weXJpZ2h0IChDKSAxOTk0LTE5OTYgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKK21zZ3N0ciAiIgorIkF1dG9yacO1aWd1cyAoQykgMTk5NC0xOTk2IElhbiBKYWNrc29uLlxuIgorIkF1dG9yacO1aWd1cyAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNjIKKyMsIGZ1enp5Cittc2dpZCAiIgorIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgb3JcbiIKKyJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKK21zZ3N0ciAiIgorIlNlZSBvbiB2YWJhIHRhcmt2YXJhLiBLb3BlZXJpbWlzdGluZ2ltdXNlZCBvbiBraXJqYXMgR05VIMOcbGRpc2UgQXZhbGlrdVxuIgorIkxpdHNlbnRzaSAyLiB2ZXJzaW9vbmlzLiBQcm9ncmFtbWlsIHB1dWR1YiBpZ2FzdWd1bmUgZ2FyYW50aWkuXG4iCisiQXV0b3Jpw7VpZ3VzdGUgamEgbGl0c2VudHNpIMO8a3Npa2FzamFkZSBuw6RnZW1pc2VrcyBrw6Rpdml0YSBgJXMgLS1saWNlbnNlJy5cbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE3MiBkc2VsZWN0L21haW4uY2M6MjIwCittc2dpZCAiPHN0YW5kYXJkIG91dHB1dD4iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE4MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIFs8YWN0aW9uPiAuLi5dXG4iCisiXG4iCittc2dzdHIgIiIKKyJLYXN1dGFtaW5lOiAlcyBbPHbDtXRpPiAuLi5dIFs8dGVnZXZ1cz4gLi4uXVxuIgorIlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTg3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMuXG4iCisiICAtLWV4cGVydCAgICAgICAgICAgICAgICAgICBUdXJuIG9uIGV4cGVydCBtb2RlLlxuIgorIiAgLS1kZWJ1ZyA8ZmlsZT4gfCAtRDxmaWxlPiAgVHVybiBvbiBkZWJ1Z2dpbmcsIHNlbmRpbmcgb3V0cHV0IHRvIDxmaWxlPi5cbiIKKyIgIC0tY29sb3VyIHwgLS1jb2xvciBzY3JlZW5wYXJ0Oltmb3JlZ3JvdW5kXSxbYmFja2dyb3VuZF1bOmF0dHJbK2F0dHIrLi5dXVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ29uZmlndXJlIHNjcmVlbiBjb2xvdXJzLlxuIgorIlxuIgorbXNnc3RyICIiCisiVsO1dG1lZDpcbiIKKyIgIC0tYWRtaW5kaXIgPGthdGFsb29nPiAgICAgICVzIGFzZW1lbCA8a2F0YWxvb2dpPiBrYXN1dGFtaW5lLlxuIgorIiAgLS1leHBlcnQgICAgICAgICAgICAgICAgICAgQXNqYXR1bmRqYXJlxb5paW1pIHNpc3NlbMO8bGl0YW1pbmUuXG4iCisiICAtLWRlYnVnIDxmYWlsPiB8IC1EPGZhaWw+ICBTaWx1bWlzZSBzaXNzZWzDvGxpdGFtaW5lLCB2w6RsanVuZCBzYWFkZXRha3NlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmFpbGk+LlxuIgorIiAgLS1jb2xvdXIgfCAtLWNvbG9yIGVrcmFhbmlfb3NhOltlc2lwbGFhbl0sW3RhdXN0XVs6cmVrdlsrcmVrdisuLl1dXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFa3JhYW5pdsOkcnZ1c3RlIHNlYWRpc3RhbWluZS5cbiIKKyJcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE5NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgICAgU2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgIFNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCittc2dzdHIgIiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICAgIFNlbGxlIGFiaXRlYWJlIG7DpGl0YW1pbmUuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgICBWZXJzaW9vbmkgbsOkaXRhbWluZS5cbiIKKyIgIC0tbGljZW5zZSB8IC0tbGljZW5jZSAgICAgIExpdHNlbnRzaSBuw6RpdGFtaW5lLlxuIgorIlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjAxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJBY3Rpb25zOlxuIgorIiAgYWNjZXNzIHVwZGF0ZSBzZWxlY3QgaW5zdGFsbCBjb25maWcgcmVtb3ZlIHF1aXRcbiIKKyJcbiIKK21zZ3N0ciAiIgorIlRlZ2V2dXNlZDpcbiIKKyIgIGFjY2VzcyB1cGRhdGUgc2VsZWN0IGluc3RhbGwgY29uZmlnIHJlbW92ZSBxdWl0XG4iCisiXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2NyZWVucGFydHM6XG4iCittc2dzdHIgIkVrcmFhbmkgb3NhZDpcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjIxMAorIywgYy1mb3JtYXQKK21zZ2lkICJDb2xvdXJzOlxuIgorbXNnc3RyICJWw6RydnVzZWQ6XG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiQXR0cmlidXRlczpcbiIKK21zZ3N0ciAiUmVrdmlzaWlkaWQ6XG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGRuJ3Qgb3BlbiBkZWJ1ZyBmaWxlIGAlLjI1NXMnXG4iCittc2dzdHIgInNpbHVtaXNmYWlsaSBgJS4yNTVzJyBwb2xlIHbDtWltYWxpayBhdmFkYVxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjUzCisjLCBjLWZvcm1hdAorbXNnaWQgIkludmFsaWQgJXMgYCVzJ1xuIgorbXNnc3RyICJMdWJhbWF0dSAlcyBgJXMnXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyNzAKK21zZ2lkICJzY3JlZW4gcGFydCIKK21zZ3N0ciAiZWtyYWFuaSBvc2EiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyNzYKK21zZ2lkICJOdWxsIGNvbG91ciBzcGVjaWZpY2F0aW9uXG4iCittc2dzdHIgIlTDvGhpIHbDpHJ2dXNla2lyamVsZHVzXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyODQgZHNlbGVjdC9tYWluLmNjOjI4OQorbXNnaWQgImNvbG91ciIKK21zZ3N0ciAidsOkcnZ1cyIKKworIzogZHNlbGVjdC9tYWluLmNjOjI5NworbXNnaWQgImNvbG91ciBhdHRyaWJ1dGUiCittc2dzdHIgInbDpHJ2dXNlIHJla3Zpc2lpdCIKKworIzogZHNlbGVjdC9tYWluLmNjOjMyOQorbXNnaWQgIlRlcm1pbmFsIGRvZXMgbm90IGFwcGVhciB0byBzdXBwb3J0IGN1cnNvciBhZGRyZXNzaW5nLlxuIgorbXNnc3RyICJUZXJtaW5hbCBlaSBwYWlzdGEga3Vyc29yaSBhZHJlc3NlZXJpbWlzdCB0b2V0YXZhdC5cbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjMzMQorbXNnaWQgIlRlcm1pbmFsIGRvZXMgbm90IGFwcGVhciB0byBzdXBwb3J0IGhpZ2hsaWdodGluZy5cbiIKK21zZ3N0ciAiVGVybWluYWwgZWkgcGFpc3RhIGVzaWxldMO1c3RtaXN0IHRvZXRhdmF0LlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MzMzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJTZXQgeW91ciBURVJNIHZhcmlhYmxlIGNvcnJlY3RseSwgdXNlIGEgYmV0dGVyIHRlcm1pbmFsLFxuIgorIm9yIG1ha2UgZG8gd2l0aCB0aGUgcGVyLXBhY2thZ2UgbWFuYWdlbWVudCB0b29sICVzLlxuIgorbXNnc3RyICIiCisiTcOkw6RyYSBvbWEgVEVSTSBtdXV0dWphIGtvcnJla3RzZWx0LCBrYXN1dGEgcGFyZW1hdCB0ZXJtaW5hbGlcbiIKKyJ2w7VpIGthc3V0YSBwYWtpcMO1aGlzdCBoYWxkdXN2YWhlbmRpdCAlcy5cbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjMzNgorbXNnaWQgInRlcm1pbmFsIGxhY2tzIG5lY2Vzc2FyeSBmZWF0dXJlcywgZ2l2aW5nIHVwIgorbXNnc3RyICJ0ZXJtaW5hbGlsIHB1dWR1dmFkIHZhamFsaWt1ZCB2w7VpbWFsdXNlZCwgYW5uYW4gYWxsYSIKKworIzogZHNlbGVjdC9tYWluLmNjOjQxNworbXNnaWQgIiIKKyJcbiIKKyJcbiIKKyJNb3ZlIGFyb3VuZCB3aXRoIF5QIGFuZCBeTiwgY3Vyc29yIGtleXMsIGluaXRpYWwgbGV0dGVycywgb3IgZGlnaXRzO1xuIgorIlByZXNzIDxlbnRlcj4gdG8gY29uZmlybSBzZWxlY3Rpb24uICAgXkwgcmVkcmF3cyBzY3JlZW4uXG4iCisiXG4iCittc2dzdHIgIiIKKyJcbiIKKyJcbiIKKyJWYWxpa3UgdGVnZW1pc2VrcyBrYXN1dGEga2xhaHZlIF5QLCBeTiwgbm9vbGVrbGFodmUsIHZhbGlrdXRlIG51bWJyZWlkIHbDtWlcbiIKKyJlc2l0w6RodGksIHZhbGlrdSBraW5uaXRhbWlzZWtzIHZhanV0YSA8ZW50ZXI+LlxuIgorIl5MIGpvb25pc3RhYiBla3JhYW5pcGlsZGkgdXVlc3RpLlxuIgorIlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6NDI4Cittc2dpZCAiIgorIlxuIgorIlxuIgorIlJlYWQtb25seSBhY2Nlc3M6IG9ubHkgcHJldmlldyBvZiBzZWxlY3Rpb25zIGlzIGF2YWlsYWJsZSEiCittc2dzdHIgIiIKKyJcbiIKKyJcbiIKKyJMaWdpcMOkw6RzIGFpbnVsdCB2YWF0YW1pc2VrczogdsO1aW1hbGlrIG9uIGthc3V0YWRhIGFpbnVsdCB2YWxpa3V0ZSBlZWx2YWFkZXQhIgorCisjOiBkc2VsZWN0L21haW4uY2M6NDQ4Cittc2dpZCAiZmFpbGVkIHRvIGdldGNoIGluIG1haW4gbWVudSIKK21zZ3N0ciAidMO1cmdlIHBlYW1lbsO8w7xzLCBmdW5rdHNpb29uaXMgZ2V0Y2giCisKKyM6IGRzZWxlY3QvbWFpbi5jYzo1MzEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBhY3Rpb24gc3RyaW5nIGAlLjUwcyciCittc2dzdHIgInR1bmRtYXR1IHRlZ2V2dXNlIHN0cmluZyBgJS41MHMnIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjc3Cittc2dpZCAiZHNlbGVjdCAtIGxpc3Qgb2YgYWNjZXNzIG1ldGhvZHMiCittc2dzdHIgImRzZWxlY3QgLSBsaWdpcMOkw6RzdW1lZXRvZGl0ZSBuaW1la2lyaSIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzo4NgorIywgYy1mb3JtYXQKK21zZ2lkICJBY2Nlc3MgbWV0aG9kIGAlcycuIgorbXNnc3RyICJMaWdpcMOkw6RzdW1lZXRvZCBgJXMnLiIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxMjAKK21zZ2lkICJBYmJyZXYuIgorbXNnc3RyICJMw7xoZW5kIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjEyMSBkc2VsZWN0L3BrZ2luZm8uY2M6MTA1IGRzZWxlY3QvcGtndG9wLmNjOjI5MQorbXNnaWQgIkRlc2NyaXB0aW9uIgorbXNnc3RyICJLaXJqZWxkdXMiCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTY0IGRzZWxlY3QvcGtnbGlzdC5jYzo1NzIKK21zZ2lkICJkb3VwZGF0ZSBmYWlsZWQiCittc2dzdHIgInTDtXJnZSBmdW5rdHNpb29uaXMgZG91cGRhdGUiCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTY2IGRzZWxlY3QvcGtnbGlzdC5jYzo1NzUKK21zZ2lkICJmYWlsZWQgdG8gdW5ibG9jayBTSUdXSU5DSCIKK21zZ3N0ciAidMO1cmdlIFNJR1dJTkNIIHNpZ25hYWxpbHQgYmxva2VlcmluZ3UgZWVtYWxkYW1pc2VsIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjE3MCBkc2VsZWN0L3BrZ2xpc3QuY2M6NTgwCittc2dpZCAiZmFpbGVkIHRvIHJlLWJsb2NrIFNJR1dJTkNIIgorbXNnc3RyICJ0w7VyZ2UgU0lHV0lOQ0ggc2lnbmFhbGkgdXVlc3RpIGJsb2traW1pc2VsIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjE3MSBkc2VsZWN0L3BrZ2xpc3QuY2M6NTgyCittc2dpZCAiZ2V0Y2ggZmFpbGVkIgorbXNnc3RyICJ0w7VyZ2UgZnVua3RzaW9vbmlzIGdldGNoIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjE4OAorbXNnaWQgIkV4cGxhbmF0aW9uIgorbXNnc3RyICJTZWxnaXR1cyIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxOTcKK21zZ2lkICJObyBleHBsYW5hdGlvbiBhdmFpbGFibGUuIgorbXNnc3RyICJTZWxnaXR1c3QgcG9sZSBzYWFkYXZhbC4iCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjY3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJcbiIKKyIlczogJXNcbiIKK21zZ3N0ciAiIgorIlxuIgorIlxuIgorIiVzOiAlc1xuIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzo3MAorbXNnaWQgIiIKKyJcbiIKKyJQcmVzcyA8ZW50ZXI+IHRvIGNvbnRpbnVlLiIKK21zZ3N0ciAiIgorIlxuIgorIkrDpHRrYW1pc2VrcyB2YWp1dGEgPGVudGVyPi4iCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjE2MQorIywgYy1mb3JtYXQKK21zZ2lkICJQcmVzcyA8ZW50ZXI+IHRvIGNvbnRpbnVlLlxuIgorbXNnc3RyICJKw6R0a2FtaXNla3MgdmFqdXRhIDxlbnRlcj4uXG4iCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjE2MgorIywgZnV6enkKK21zZ2lkICI8c3RhbmRhcmQgZXJyb3I+IgorbXNnc3RyICJ2aWdhIHN0YW5kYXJkc2Vzc2UgdmVhdsOkbGp1bmRpc3NlIGtpcmp1dGFtaXNlbCIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MTY1Cittc2dpZCAiZXJyb3IgcmVhZGluZyBhY2tub3dsZWRnZW1lbnQgb2YgcHJvZ3JhbSBmYWlsdXJlIG1lc3NhZ2UiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MTk2Cittc2dpZCAidXBkYXRlIGF2YWlsYWJsZSBsaXN0IHNjcmlwdCIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoyMDAKK21zZ2lkICJpbnN0YWxsYXRpb24gc2NyaXB0IgorbXNnc3RyICJwYWlnYWxkdXNza3JpcHQiCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjI0NgorbXNnaWQgInF1ZXJ5L3NldHVwIHNjcmlwdCIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzo1MworIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gbWV0aG9kIG9wdGlvbnMgZmlsZSBgJS4yNTBzJyAtLSAlcyIKK21zZ3N0ciAic8O8bnRha3NpIHZpZ2EgbWVldG9kaXRlIHZhbGlrdXRlIGZhaWxpcyBgJS4yNTBzJyAtLSAlcyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcmVhZGluZyBvcHRpb25zIGZpbGUgYCUuMjUwcyciCittc2dzdHIgInZpZ2EgdmFsaWt1dGUgZmFpbGkgYCUuMjUwcycgbHVnZW1pc2VsIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzo5MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBgJS4yNTBzJyBkaXJlY3RvcnkgZm9yIHJlYWRpbmcgbWV0aG9kcyIKK21zZ3N0ciAia2F0YWxvb2dpc3QgYCUuMjUwcycgcG9sZSB2w7VpbWFsaWsgbWVldG9kZWlkIGx1Z2VkYSIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTA2CisjLCBjLWZvcm1hdAorbXNnaWQgIm1ldGhvZCBgJS4yNTBzJyBoYXMgbmFtZSB0aGF0IGlzIHRvbyBsb25nICglZCA+ICVkIGNoYXJhY3RlcnMpIgorbXNnc3RyICJtZWV0b2RpIGAlLjI1MHMnIG5pbWkgb24gbGlpZ2EgcGlrayAoJWQgPiAlZCBtw6Rya2kpIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGFjY2VzcyBtZXRob2Qgc2NyaXB0IGAlLjI1MHMnIgorbXNnc3RyICJtZWV0b2RpIHNrcmlwdGlsZSBgJS4yNTBzJyBwb2xlIHbDtWltYWxpayBsaWdpIHDDpMOkc2VkYSIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTIzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIG1ldGhvZCBvcHRpb25zIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm1lZXRvZGkgc2tyaXB0aSBgJS4yNTBzJyBwb2xlIHbDtWltYWxpayBsdWdlZGEiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE0NworbXNnaWQgIm5vbi1kaWdpdCB3aGVyZSBkaWdpdCB3YW50ZWQiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTUwCittc2dpZCAiRU9GIGluIGluZGV4IHN0cmluZyIKK21zZ3N0ciAiZmFpbGlsw7VwdXR1bm51cyBpbmRla3Npc3RyaW5naXMiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE1MworbXNnaWQgImluZGV4IHN0cmluZyB0b28gbG9uZyIKK21zZ3N0ciAiaW5kZWtzaXN0cmluZyBvbiBsaWlnYSBwaWtrIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNTYKK21zZ2lkICJuZXdsaW5lIGJlZm9yZSBvcHRpb24gbmFtZSBzdGFydCIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNTgKK21zZ2lkICJFT0YgYmVmb3JlIG9wdGlvbiBuYW1lIHN0YXJ0IgorbXNnc3RyICJmYWlsaWzDtXB1dHVubnVzIGVubmUgdmFsaWt1IG5pbWUgYWxndXN0IgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNjIKK21zZ2lkICJub25hbHBoYSB3aGVyZSBvcHRpb24gbmFtZSBzdGFydCB3YW50ZWQiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTY0Cittc2dpZCAibm9uLWFscGhhbnVtIGluIG9wdGlvbiBuYW1lIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE2NworbXNnaWQgIkVPRiBpbiBvcHRpb24gbmFtZSIKK21zZ3N0ciAiZmFpbGlsw7VwdXR1bm51cyB2YWxpa3UgbmltZXMiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE3MgorbXNnaWQgIm5ld2xpbmUgYmVmb3JlIHN1bW1hcnkiCittc2dzdHIgInJlYXZhaGV0dXMgZW5uZSBrb2trdXbDtXRldCIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTc0Cittc2dpZCAiRU9GIGJlZm9yZSBzdW1tYXJ5IgorbXNnc3RyICJmYWlsaWzDtXB1dHVubnVzIGVubmUga29ra3V2w7V0ZXQiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE4MAorbXNnaWQgIkVPRiBpbiBzdW1tYXJ5IC0gbWlzc2luZyBuZXdsaW5lIgorbXNnc3RyICJmYWlsaWzDtXB1dHVubnVzIGtva2t1dsO1dHRlcyAtIHB1dWR1YiByZWF2YWhldHVzIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gb3B0aW9uIGRlc2NyaXB0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTk0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IG9wdGlvbiBkZXNjcmlwdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE5OAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCBvcHRpb24gZGVzY3JpcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgZHVyaW5nIHJlYWQgb2Ygb3B0aW9uIGRlc2NyaXB0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MjI0CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGR1cmluZyByZWFkIG9mIG1ldGhvZCBvcHRpb25zIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MjQ3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIGN1cnJlbnQgb3B0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6Mjg5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIG5ldyBvcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ldyBvcHRpb24gdG8gYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6Mjk1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBuZXcgb3B0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6Mjk3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyBvcHRpb24gYXMgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjM2Cittc2dpZCAibmV3IHBhY2thZ2UiCittc2dzdHIgInV1cyBwYWtrIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MzcKK21zZ2lkICJpbnN0YWxsIgorbXNnc3RyICJwYWlnYWxkYSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjM4Cittc2dpZCAiaG9sZCIKK21zZ3N0ciAiaG9pYSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjM5Cittc2dpZCAicmVtb3ZlIgorbXNnc3RyICJlZW1hbGRhIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NDAKK21zZ2lkICJwdXJnZSIKK21zZ3N0ciAicHVoYXN0YSIKKworIy4gVFJBTlNMQVRPUlM6IFRoZSBzcGFjZSBpcyBhIHRyaWNrIHRvIHdvcmsgYXJvdW5kIGdldHRleHQgd2hpY2ggdXNlcworIy4gKiB0aGUgZW1wdHkgc3RyaW5nIHRvIHN0b3JlIGluZm9ybWF0aW9uIGFib3V0IHRoZSB0cmFuc2xhdGlvbi4gRE8gTk9UCisjLiAqIENIQU5HRSBUSEFUIElOIEEgVFJBTlNMQVRJT04hIFRoZSBjb2RlIHJlYWxseSByZWxpZXMgb24gdGhhdCBiZWluZworIy4gKiBhIHNpbmdsZSBzcGFjZS4KKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo0NworbXNnaWQgIiAiCittc2dzdHIgIiAiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo0OAorbXNnaWQgIlJFSU5TVEFMTCIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTEKK21zZ2lkICJub3QgaW5zdGFsbGVkIgorbXNnc3RyICJwYWlnYWxkYW1hdGEiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1MgorbXNnaWQgInJlbW92ZWQgKGNvbmZpZ3MgcmVtYWluKSIKK21zZ3N0ciAiZWVtYWxkYXR1ZCAoc2VhZGlzdHVzZWQgb24gYWxsZXMpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTMKK21zZ2lkICJoYWxmIGluc3RhbGxlZCIKK21zZ3N0ciAib3NhbGlzZWx0IHBhaWdhbGRhdHVkIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTQKK21zZ2lkICJ1bnBhY2tlZCAobm90IHNldCB1cCkiCittc2dzdHIgImxhaHRpcGFraXR1ZCAow7xsZXMgc2VhZG1hdGEpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTUKK21zZ2lkICJoYWxmIGNvbmZpZ3VyZWQgKGNvbmZpZyBmYWlsZWQpIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1NgorbXNnaWQgImF3YWl0aW5nIHRyaWdnZXIgcHJvY2Vzc2luZyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTcKK21zZ2lkICJ0cmlnZ2VyZWQiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjU4Cittc2dpZCAiaW5zdGFsbGVkIgorbXNnc3RyICJwYWlnYWxkYXR1ZCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjYxCittc2dpZCAiUmVxdWlyZWQiCittc2dzdHIgIk7DtXV0YXZhZCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjYyCittc2dpZCAiSW1wb3J0YW50IgorbXNnc3RyICJUw6RodHNhZCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjYzCittc2dpZCAiU3RhbmRhcmQiCittc2dzdHIgIlN0YW5kYXJkc2VkIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjQKK21zZ2lkICJPcHRpb25hbCIKK21zZ3N0ciAiVmFsaWt1bGlzZWQiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo2NQorbXNnaWQgIkV4dHJhIgorbXNnc3RyICJFa3N0cmEiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo2NgorbXNnaWQgIiFCdWchIgorbXNnc3RyICIhVmlnYSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjY3Cittc2dpZCAiVW5jbGFzc2lmaWVkIgorbXNnc3RyICJMaWlnaXRhbWF0YSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjcwCittc2dpZCAic3VnZ2VzdHMiCittc2dzdHIgInZpaGphYiBwYWtpbGUiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3MQorbXNnaWQgInJlY29tbWVuZHMiCittc2dzdHIgInNvb3ZpdGFiIHBha2tpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzIKK21zZ2lkICJkZXBlbmRzIG9uIgorbXNnc3RyICJzw7VsdHViIHBha2lzdCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjczCittc2dpZCAicHJlLWRlcGVuZHMgb24iCittc2dzdHIgImVlbHPDtWx0dWIgcGFraXN0IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzQKK21zZ2lkICJicmVha3MiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjc1Cittc2dpZCAiY29uZmxpY3RzIHdpdGgiCittc2dzdHIgIm9uIHZhc3R1b2x1cyBwYWtpZ2EiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3NgorbXNnaWQgInByb3ZpZGVzIgorbXNnc3RyICJ0YWdhYiBwYWtpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzcKK21zZ2lkICJyZXBsYWNlcyIKK21zZ3N0ciAiYXNlbmRhYiBwYWtpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzgKK21zZ2lkICJlbmhhbmNlcyIKK21zZ3N0ciAibGFpZW5kYWIgcGFra2kiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4MQorbXNnaWQgIlJlcSIKK21zZ3N0ciAiTsO1dSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjgyCittc2dpZCAiSW1wIgorbXNnc3RyICJUw6RoIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODMKK21zZ2lkICJTdGQiCittc2dzdHIgIlN0ZCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjg0Cittc2dpZCAiT3B0IgorbXNnc3RyICJWYWwiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4NQorbXNnaWQgIlh0ciIKK21zZ3N0ciAiRWtzIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODYKK21zZ2lkICJiVUciCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjg3Cittc2dpZCAiPyIKK21zZ3N0ciAiPyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjk1IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTUKK21zZ2lkICJCcm9rZW4iCittc2dzdHIgIkthdGtpc2VkIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6OTYKK21zZ2lkICJOZXciCittc2dzdHIgIlV1ZWQiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo5NworbXNnaWQgIlVwZGF0ZWQiCittc2dzdHIgIlV1ZW5kYXR1ZCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjk4Cittc2dpZCAiT2Jzb2xldGUvbG9jYWwiCittc2dzdHIgIkFlZ3VudWQva29oYWxpa3VkIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6OTkKK21zZ2lkICJVcC10by1kYXRlIgorbXNnc3RyICJBamFrb2hhc2VkIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTAwCittc2dpZCAiQXZhaWxhYmxlIgorbXNnc3RyICJTYWFkYW9sZXZhZCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwMSBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTE3Cittc2dpZCAiUmVtb3ZlZCIKK21zZ3N0ciAiRWVtYWxkYXR1ZCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwMiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTExCittc2dpZCAiQnJva2VubHkgaW5zdGFsbGVkIHBhY2thZ2VzIgorbXNnc3RyICJLYXRraXNlZCBwYWlnYWxkYXR1ZCBwYWtpZCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwMworbXNnaWQgIk5ld2x5IGF2YWlsYWJsZSBwYWNrYWdlcyIKK21zZ3N0ciAiVXVlZCBzYWFkYW9sZXZhZCBwYWtpZCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwNAorbXNnaWQgIlVwZGF0ZWQgcGFja2FnZXMgKG5ld2VyIHZlcnNpb24gaXMgYXZhaWxhYmxlKSIKK21zZ3N0ciAiVXVlbmRhdHVkIHBha2lkICh1dWVtIHZlcnNpb29uIG9uIHNhYWRhdmFsKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwNQorbXNnaWQgIk9ic29sZXRlIGFuZCBsb2NhbCBwYWNrYWdlcyBwcmVzZW50IG9uIHN5c3RlbSIKK21zZ3N0ciAiU2VsbGVzIHPDvHN0ZWVtaXMgb2xldmFkIGFlZ3VudWQgamEga29oYWxpa3VkIHBha2lkIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTA2Cittc2dpZCAiVXAgdG8gZGF0ZSBpbnN0YWxsZWQgcGFja2FnZXMiCittc2dzdHIgIkFqYWtvaGFzZWQgcGFpZ2FsZGF0dWQgcGFraWQiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDcKK21zZ2lkICJBdmFpbGFibGUgcGFja2FnZXMgKG5vdCBjdXJyZW50bHkgaW5zdGFsbGVkKSIKK21zZ3N0ciAiU2FhZGFvbGV2YWQgcGFraWQgKGhldGtlbCBwYWlnYWxkYW1hdGEpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTA4Cittc2dpZCAiUmVtb3ZlZCBhbmQgbm8gbG9uZ2VyIGF2YWlsYWJsZSBwYWNrYWdlcyIKK21zZ3N0ciAiRWVtYWxkYXR1ZCBwYWtpZCBqYSBwYWtpZCwgbWlkYSBwb2xlIGVuYW0gc2FhZGF2YWwiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTIKK21zZ2lkICJJbnN0YWxsZWQgcGFja2FnZXMiCittc2dzdHIgIlBhaWdhbGRhdHVkIHBha2lkIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTEzCittc2dpZCAiUmVtb3ZlZCBwYWNrYWdlcyAoY29uZmlndXJhdGlvbiBzdGlsbCBwcmVzZW50KSIKK21zZ3N0ciAiRWVtYWxkYXR1ZCBwYWtpZCAoc2VhZGlzdHVzZmFpbGlkIG9uIGFsbGVzKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExNAorbXNnaWQgIlB1cmdlZCBwYWNrYWdlcyBhbmQgdGhvc2UgbmV2ZXIgaW5zdGFsbGVkIgorbXNnc3RyICJQdWhhc3RhdHVkIHBha2lkIGphIG5lZWQsIG1pZGEgcG9sZSBrdW5hZ2kgcGFpZ2FsZGF0dWQiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTYKK21zZ2lkICJJbnN0YWxsZWQiCittc2dzdHIgIlBhaWdhbGRhdHVkIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTE4Cittc2dpZCAiUHVyZ2VkIgorbXNnc3RyICJQdWhhc3RhdHVkIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTk4Cittc2dpZCAiZHNlbGVjdCAtIHJlY3Vyc2l2ZSBwYWNrYWdlIGxpc3RpbmciCittc2dzdHIgImRzZWxlY3QgLSBwYWtraWRlIHJla3Vyc2lpdm5lIG5pbWVraXJpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTk5Cittc2dpZCAiZHNlbGVjdCAtIGluc3BlY3Rpb24gb2YgcGFja2FnZSBzdGF0ZXMiCittc2dzdHIgImRzZWxlY3QgLSBwYWtraWRlIG9sZWt1dGUgaW5zcGVrdGVlcmltaW5lIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjAwCittc2dpZCAiZHNlbGVjdCAtIG1haW4gcGFja2FnZSBsaXN0aW5nIgorbXNnc3RyICJkc2VsZWN0IC0gcGFra2lkZSBwZWFuaW1la2lyaSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIwOAorbXNnaWQgIiAoYnkgc2VjdGlvbikiCittc2dzdHIgIiAoamFvdGlzZSBqw6RyZ2kpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjExCittc2dpZCAiIChhdmFpbC4sIHNlY3Rpb24pIgorbXNnc3RyICIgKHNhYWRhdnVzLCBqYW90aXMpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjE0Cittc2dpZCAiIChzdGF0dXMsIHNlY3Rpb24pIgorbXNnc3RyICIgKG9sZWssIGphb3RpcykiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMjMKK21zZ2lkICIgKGJ5IHByaW9yaXR5KSIKK21zZ3N0ciAiICh0w6RodHN1c2UgasOkcmdpKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIyNgorbXNnaWQgIiAoYXZhaWwuLCBwcmlvcml0eSkiCittc2dzdHIgIiAoc2FhZGF2dXMsIHTDpGh0c3VzKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIyOQorbXNnaWQgIiAoc3RhdHVzLCBwcmlvcml0eSkiCittc2dzdHIgIiAob2xlaywgdMOkaHRzdXMpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjM4IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNTAKK21zZ2lkICIgKGFscGhhYmV0aWNhbGx5KSIKK21zZ3N0ciAiICh0w6RoZXN0aWt1bGluZSkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNDEKK21zZ2lkICIgKGJ5IGF2YWlsYWJpbGl0eSkiCittc2dzdHIgIiAoc2FhZGF2dXNlIGrDpHJnaSkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNDQKK21zZ2lkICIgKGJ5IHN0YXR1cykiCittc2dzdHIgIiAob2xla3UgasOkcmdpKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI1OAorbXNnaWQgIiBtYXJrOisvPS8tIHRlcnNlOnYgaGVscDo/IgorbXNnc3RyICIgbcOkcmdpOisvPS8tIHbDpGhlbTp2IGFiaTo/IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjU5Cittc2dpZCAiIG1hcms6Ky89Ly0gdmVyYm9zZTp2IGhlbHA6PyIKK21zZ3N0ciAiIG3DpHJnaTorLz0vLSByb2hrZW06diBhYmk6PyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI2MAorbXNnaWQgIiB0ZXJzZTp2IGhlbHA6PyIKK21zZ3N0ciAiIHbDpGhlbTp2IGFiaTo/IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjYxCittc2dpZCAiIHZlcmJvc2U6diBoZWxwOj8iCittc2dzdHIgIiByb2hrZW06diBhYmk6PyIKKworIzogZHNlbGVjdC9wa2dpbmZvLmNjOjgwCittc2dpZCAiIgorIlRoZSBsaW5lIHlvdSBoYXZlIGhpZ2hsaWdodGVkIHJlcHJlc2VudHMgbWFueSBwYWNrYWdlczsgaWYgeW91IGFzayB0byAiCisiaW5zdGFsbCwgcmVtb3ZlLCBob2xkLCBldGMuIGl0IHlvdSB3aWxsIGFmZmVjdCBhbGwgdGhlIHBhY2thZ2VzIHdoaWNoIG1hdGNoICIKKyJ0aGUgY3JpdGVyaW9uIHNob3duLlxuIgorIlxuIgorIklmIHlvdSBtb3ZlIHRoZSBoaWdobGlnaHQgdG8gYSBsaW5lIGZvciBhIHBhcnRpY3VsYXIgcGFja2FnZSB5b3Ugd2lsbCBzZWUgIgorImluZm9ybWF0aW9uIGFib3V0IHRoYXQgcGFja2FnZSBkaXNwbGF5ZWQgaGVyZS5cbiIKKyJZb3UgY2FuIHVzZSBgbycgYW5kIGBPJyB0byBjaGFuZ2UgdGhlIHNvcnQgb3JkZXIgYW5kIGdpdmUgeW91cnNlbGYgdGhlICIKKyJvcHBvcnR1bml0eSB0byBtYXJrIHBhY2thZ2VzIGluIGRpZmZlcmVudCBraW5kcyBvZiBncm91cHMuIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnaW5mby5jYzo5MworbXNnaWQgIkludGVycmVsYXRpb25zaGlwcyIKK21zZ3N0ciAiU8O1bHR1dnVzc2Vvc2VkIgorCisjOiBkc2VsZWN0L3BrZ2luZm8uY2M6MTEyCittc2dpZCAiTm8gZGVzY3JpcHRpb24gYXZhaWxhYmxlLiIKK21zZ3N0ciAiS2lyamVsZHVzIHBvbGUgc2FhZGF2YWwuIgorCisjOiBkc2VsZWN0L3BrZ2luZm8uY2M6MTMwCittc2dpZCAiSW5zdGFsbGVkIGNvbnRyb2wgZmlsZSBpbmZvcm1hdGlvbiIKK21zZ3N0ciAiUGFpZ2FsZGF0dWQganVodGZhaWxpIGFuZG1lZCIKKworIzogZHNlbGVjdC9wa2dpbmZvLmNjOjE0NgorbXNnaWQgIkF2YWlsYWJsZSBjb250cm9sIGZpbGUgaW5mb3JtYXRpb24iCittc2dzdHIgIlNhYWRhb2xldmEganVodGZhaWxpIGFuZG1lZCIKKworIzogZHNlbGVjdC9wa2dsaXN0LmNjOjQxNgorbXNnaWQgIlRoZXJlIGFyZSBubyBwYWNrYWdlcy4iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dsaXN0LmNjOjUwNworbXNnaWQgImludmFsaWQgc2VhcmNoIG9wdGlvbiBnaXZlbiIKK21zZ3N0ciAibcOkw6RyYXRpIGx1YmFtYXR1IG90c2luZ3V2YWxpayIKKworIzogZHNlbGVjdC9wa2dsaXN0LmNjOjUyMQorbXNnaWQgImVycm9yIGluIHJlZ3VsYXIgZXhwcmVzc2lvbiIKK21zZ3N0ciAidmlnYSByZWd1bGFhcmF2YWxkaXNlcyIKKworIzogZHNlbGVjdC9wa2dzdWJsaXN0LmNjOjEwNworbXNnaWQgIiBkb2VzIG5vdCBhcHBlYXIgdG8gYmUgYXZhaWxhYmxlXG4iCittc2dzdHIgIiBlaSBwYWlzdGEgb2xldmF0IHNhYWRhdmFsXG4iCisKKyM6IGRzZWxlY3QvcGtnc3VibGlzdC5jYzoxMjcKK21zZ2lkICIgb3IgIgorbXNnc3RyICIgdsO1aSAiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjU3Cittc2dpZCAiQWxsIgorbXNnc3RyICJLw7VpayIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6NzkKK21zZ2lkICJBbGwgcGFja2FnZXMiCittc2dzdHIgIkvDtWlrIHBha2lkIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo4MworIywgYy1mb3JtYXQKK21zZ2lkICIlcyBwYWNrYWdlcyB3aXRob3V0IGEgc2VjdGlvbiIKK21zZ3N0ciAiJXMgcGFraWQgaWxtYSBqYW90aXNldGEiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjg1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHBhY2thZ2VzIGluIHNlY3Rpb24gJXMiCittc2dzdHIgIiVzIHBha2lkIGphb3Rpc2VzICVzIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo5MQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyAlcyBwYWNrYWdlcyIKK21zZ3N0ciAiJXMgJXMgcGFraWQiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjk1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzICVzIHBhY2thZ2VzIHdpdGhvdXQgYSBzZWN0aW9uIgorbXNnc3RyICIlcyAlcyBwYWtpZCBpbG1hIGphb3Rpc2V0YSIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6OTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgJXMgcGFja2FnZXMgaW4gc2VjdGlvbiAlcyIKK21zZ3N0ciAiJXMgJXMgcGFraWQgamFvdGlzZXMgJXMiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjExOAorIywgYy1mb3JtYXQKK21zZ2lkICIlLSpzICVzJXMlczsgICVzICh3YXM6ICVzKS4gICVzIgorbXNnc3RyICIlLSpzICVzJXMlczsgICVzIChvbGk6ICVzKS4gICVzIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyNjMKK21zZ2lkICJFcnJvciIKK21zZ3N0ciAiVmlnYSIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6MjY3Cittc2dpZCAiSW5zdGFsbGVkPyIKK21zZ3N0ciAiUGFpZ2FsZGF0dWQ/IgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyNzEKK21zZ2lkICJPbGQgbWFyayIKK21zZ3N0ciAiVmFuYSBtcmsiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI3NQorbXNnaWQgIk1hcmtlZCBmb3IiCittc2dzdHIgIk3DpHJnaXR1ZCIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6Mjc4Cittc2dpZCAiRUlPTSIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyODAKK21zZ2lkICJTZWN0aW9uIgorbXNnc3RyICJKYW90aXMiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI4MQorbXNnaWQgIlByaW9yaXR5IgorbXNnc3RyICJUw6RodHN1cyIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6MjgyCittc2dpZCAiUGFja2FnZSIKK21zZ3N0ciAiUGFrayIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6Mjg2Cittc2dpZCAiSW5zdC52ZXIiCittc2dzdHIgIlBnbGQudmVyIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyODkKK21zZ2lkICJBdmFpbC52ZXIiCittc2dzdHIgIlNhYWRhdi52ZXIiCisKKyN+IG1zZ2lkICJyZXR1cm5lZCBlcnJvciBleGl0IHN0YXR1cyAlZC5cbiIKKyN+IG1zZ3N0ciAibMO1cGV0YXMgdmVha29vZGlnYSAlZC5cbiIKKworI34gbXNnaWQgIndhcyBpbnRlcnJ1cHRlZC5cbiIKKyN+IG1zZ3N0ciAia2F0a2VzdGF0aS5cbiIKKworI34gbXNnaWQgIndhcyB0ZXJtaW5hdGVkIGJ5IGEgc2lnbmFsOiAlcy5cbiIKKyN+IG1zZ3N0ciAia2F0a2VzdGF0aSBzaWduYWFsaWdhOiAlcy5cbiIKKworI34gbXNnaWQgInVuYWJsZSB0byBydW4gJS4yNTBzIHByb2Nlc3MgYCUuMjUwcyciCisjfiBtc2dzdHIgIiUuMjUwcyBwcm90c2Vzc2kgYCUuMjUwcycgcG9sZSB2w7VpbWFsaWsga8OkaXZpdGFkYSIKKworI34gbXNnaWQgImZhaWxlZCBjb25maWciCisjfiBtc2dzdHIgInTDtXJnZSBzZWFkaXN0YW1pc2VsIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHdhaXQgZm9yICUuMjUwcyIKKyN+IG1zZ3N0ciAiJS4yNTBzIGrDpHJlbCBwb2xlIHbDtWltYWxpayBvb2RhdGEiCisKKyN+IG1zZ2lkICJSZWNvbW1lbmRlZCIKKyN+IG1zZ3N0ciAiU29vdml0YXR1ZCIKKworI34gbXNnaWQgIlJlYyIKKyN+IG1zZ3N0ciAiU292IgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGlnbm9yZSBzaWduYWwgJWQgYmVmb3JlIHJ1bm5pbmcgJS4yNTBzIgorI34gbXNnc3RyICJzaWduYWFsaSAlZCBwb2xlIGVubmUgJS4yNTBzIGvDpGl2aXRhbWlzdCB2w7VpbWFsaWsgZWlyYXRhIgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL2V1LmdtbyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9ldS5nbW8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNWU3NzJmYgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9ldS5nbW8KQmluYXJ5IGZpbGVzIGRpZmZlcgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL2V1LnBvIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL2V1LnBvCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjc0NjlkZmQKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vZXUucG8KQEAgLTAsMCArMSwxNzI0IEBACisjIHRyYW5zbGF0aW9uIG9mIGV1LnBvIHRvIEV1c2thcmEKKyMgQ29weXJpZ2h0IChDKSAyMDA0LCAyMDA1LCAyMDA2LCAyMDA4LCAyMDA5IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgorIworIyBKb3JkaSBCbGFzaSA8dmFscHVyQGV1c2thbG5ldC5uZXQ+LCAyMDA0LgorIyBQaWFycmVzIEJlb2JpZGUgPHBpQGJlb2JpZGUubmV0PiwgMjAwNCwgMjAwNSwgMjAwNiwgMjAwOCwgMjAwOS4KK21zZ2lkICIiCittc2dzdHIgIiIKKyJQcm9qZWN0LUlkLVZlcnNpb246IGV1XG4iCisiUmVwb3J0LU1zZ2lkLUJ1Z3MtVG86IGRlYmlhbi1kcGtnQGxpc3RzLmRlYmlhbi5vcmdcbiIKKyJQT1QtQ3JlYXRpb24tRGF0ZTogMjAxMS0xMC0xNCAwNzoxMSswMjAwXG4iCisiUE8tUmV2aXNpb24tRGF0ZTogMjAwOS0wMS0wNSAxNjoyOSswMTAwXG4iCisiTGFzdC1UcmFuc2xhdG9yOiBQaWFycmVzIEJlb2JpZGUgPHBpQGJlb2JpZGUubmV0PlxuIgorIkxhbmd1YWdlLVRlYW06IEV1c2thcmEgPGRlYmlhbi1sMTBuLWJhc3F1ZUBsaXN0cy5kZWJpYW4ub3JnPlxuIgorIkxhbmd1YWdlOiBldVxuIgorIk1JTUUtVmVyc2lvbjogMS4wXG4iCisiQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PVVURi04XG4iCisiQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdFxuIgorIlgtR2VuZXJhdG9yOiBLQmFiZWwgMS4xMS40XG4iCisiUGx1cmFsLUZvcm1zOiBucGx1cmFscz0yOyBwbHVyYWw9KG4gIT0gMSlcbiIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxMjUKK21zZ2lkICJTZWFyY2ggZm9yID8gIgorbXNnc3RyICJCaWxhdHUgaGF1OiAiCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MTQ3Cittc2dpZCAiRXJyb3I6ICIKK21zZ3N0ciAiRXJyb3JlYTogIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE3OAorbXNnaWQgIkhlbHA6ICIKK21zZ3N0ciAiTGFndW50emE6ICIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxODQKK21zZ2lkICJQcmVzcyA/IGZvciBoZWxwIG1lbnUsIC4gZm9yIG5leHQgdG9waWMsIDxzcGFjZT4gdG8gZXhpdCBoZWxwLiIKK21zZ3N0ciAiIgorIlNha2F0dSA/IGxhZ3VudHphLW1lbnVhIGlrdXN0ZWtvLCAnLicgaHVycmVuZ28gZ2FpcmEgam9hdGVrbywgPHp1cml1bmVhPiAiCisibGFndW50emF0aWsgaXJ0ZXRla28uIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE5MQorbXNnaWQgIkhlbHAgaW5mb3JtYXRpb24gaXMgYXZhaWxhYmxlIHVuZGVyIHRoZSBmb2xsb3dpbmcgdG9waWNzOiIKK21zZ3N0ciAiTGFndW50emFrbyBpbmZvcm1hemlvYSBnYWkgaGF1ZXRhbiBkYWdvIGVyYWJpbGdhcnJpOiIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxOTkKK21zZ2lkICIiCisiUHJlc3MgYSBrZXkgZnJvbSB0aGUgbGlzdCBhYm92ZSwgPHNwYWNlPiBvciBgcScgdG8gZXhpdCBoZWxwLFxuIgorIiAgb3IgYC4nIChmdWxsIHN0b3ApIHRvIHJlYWQgZWFjaCBoZWxwIHBhZ2UgaW4gdHVybi4gIgorbXNnc3RyICIiCisiU2FrYXR1IGdvaWtvIHplcnJlbmRha28gdGVrbGEgYmF0LCAgPHp1cml1bmVhPiBlZG8gYHEnIGxhZ3VudHphdGlrIGlydGV0ZWtvXG4iCisiLCBlZG8gJy4nIChwdW50dWEpIGxhZ3VudHphLW9ycmlhayBiYW5hbi1iYW5hbiBpcmFrdXJ0emVrby4gIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjIwNQorbXNnaWQgImVycm9yIHJlYWRpbmcga2V5Ym9hcmQgaW4gaGVscCIKK21zZ3N0ciAiZXJyb3JlYSBsYWd1bnR6YW4gdGVrbGF0dWEgaXJha3VydHplYW4iCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6NTcKK21zZ2lkICJpb2N0bChUSU9DR1dJTlNaKSBmYWlsZWQiCittc2dzdHIgImlvY3RsKFRJT0NHV0lOU1opOiBodXRzIGVnaW4gZHUiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6NjAKK21zZ2lkICJkb3VwZGF0ZSBpbiBTSUdXSU5DSCBoYW5kbGVyIGZhaWxlZCIKK21zZ3N0ciAiZG91cGRhdGU6IGh1dHMgZWdpbiBkdSBTSUdXSU5DSCBtYW5laWF0emFpbGVhbiIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo2NworbXNnaWQgImZhaWxlZCB0byByZXN0b3JlIG9sZCBTSUdXSU5DSCBzaWdhY3QiCittc2dzdHIgImh1dHMgZWdpbiBkdSBTSUdXSU5DSGVuIHNpZ2FjdCB6YWhhcnJhIGxlaGVuZXJhdHplYW4iCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6NjkKK21zZ2lkICJmYWlsZWQgdG8gcmVzdG9yZSBvbGQgc2lnbmFsIG1hc2siCittc2dzdHIgImh1dHMgZWdpbiBkdSBzZWluYWxlLW1hc2thcmEgemFoYXJyYSBsZWhlbmVyYXR6ZWFuIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjc5Cittc2dpZCAiZmFpbGVkIHRvIGdldCBvbGQgc2lnbmFsIG1hc2siCittc2dzdHIgImh1dHMgZWdpbiBkdSBzZWluYWxlLW1hc2thcmEgemFoYXJyYSBoYXJ0emVhbiIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo4MAorbXNnaWQgImZhaWxlZCB0byBnZXQgb2xkIFNJR1dJTkNIIHNpZ2FjdCIKK21zZ3N0ciAiaHV0cyBlZ2luIGR1IFNJR1dJTkNIIHNpZ2FjdCB6YWhhcnJhIGhhcnR6ZWFuIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjg0Cittc2dpZCAiZmFpbGVkIHRvIGJsb2NrIFNJR1dJTkNIIgorbXNnc3RyICJodXRzIGVnaW4gZHUgU0lHV0lOQ0ggYmxva2VhdHplYW4iCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6ODkKK21zZ2lkICJmYWlsZWQgdG8gc2V0IG5ldyBTSUdXSU5DSCBzaWdhY3QiCittc2dzdHIgImh1dHMgZWdpbiBkdSBTSUdXSU5DSCBzaWdhY3QgYmVycmlhIGV6YXJ0emVhbiIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxMjYKK21zZ2lkICJmYWlsZWQgdG8gYWxsb2NhdGUgY29sb3VyIHBhaXIiCittc2dzdHIgImh1dHMgZWdpbiBkdSBrb2xvcmUtYmlrb3RlYSBlc2xlaXR6ZWFuIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE2NworbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgdGl0bGUgd2luZG93IgorbXNnc3RyICJodXRzIGVnaW4gZHUgbGVpaG9hcmVuIHRpdHVsdWEgc29ydHplYW4iCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTcxCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSB3aGF0aW5mbyB3aW5kb3ciCittc2dzdHIgImh1dHMgZWdpbiBkdSAnd2hhdGluZm8nIGxlaWhvYSBzb3J0emVhbiIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxNzUKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGJhc2VsaXN0IHBhZCIKK21zZ3N0ciAiaHV0cyBlZ2luIGR1IG9pbmFycml6a28gemVycmVuZGFrbyB6b25hIHNvcnR6ZWFuIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE3OAorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgaGVhZGluZyBwYWQiCittc2dzdHIgImh1dHMgZWdpbiBkdSBpemVuYnVydWVuIHpvbmEgc29ydHplYW4iCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTgyCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSB0aGlzc3RhdGUgcGFkIgorbXNnc3RyICJodXRzIGVnaW4gZHUgZWdvZXJhcmVuIHpvbmEgc29ydHplYW4iCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTg2Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBpbmZvIHBhZCIKK21zZ3N0ciAiaHV0cyBlZ2luIGR1IGluZm9ybWF6aW9hcmVuIHpvbmEgc29ydHplYW4iCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTkxCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBxdWVyeSB3aW5kb3ciCittc2dzdHIgImh1dHMgZWdpbiBkdSBrb250c3VsdGEtbGVpaG9hIHNvcnR6ZWFuIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjI1NQorbXNnaWQgIktleWJpbmRpbmdzIgorbXNnc3RyICJMYXN0ZXItdGVrbGFrIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjMwMworIywgYy1mb3JtYXQKK21zZ2lkICIgIC0tICVkJSUsIHByZXNzICIKK21zZ3N0ciAiICAtLSAlZCUlLCBzYWthdHUgIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjMwNgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBmb3IgbW9yZSIKK21zZ3N0ciAiJXMgZ2VoaWFnb3Jha28iCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MzEwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHRvIGdvIGJhY2siCittc2dzdHIgIiVzIGF0emVyYSBqb2F0ZWtvIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjc4Cittc2dpZCAiW25vdCBib3VuZF0iCittc2dzdHIgIltsb3R1IGdhYmVdIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjgyCisjLCBjLWZvcm1hdAorbXNnaWQgIlt1bms6ICVkXSIKK21zZ3N0ciAiW2V6ZXphZ3VuYTogJWRdIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjEzOQorbXNnaWQgIlNjcm9sbCBvbndhcmRzIHRocm91Z2ggaGVscC9pbmZvcm1hdGlvbiIKK21zZ3N0ciAiS29ycml0dSBhdXJyZXJhIGxhZ3VudHphbi9pbmZvcm1hemlvYW4iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQwCittc2dpZCAiU2Nyb2xsIGJhY2t3YXJkcyB0aHJvdWdoIGhlbHAvaW5mb3JtYXRpb24iCittc2dzdHIgIktvcnJpdHUgYXR6ZXJhIGxhZ3VudHphbi9pbmZvcm1hemlvYW4iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQxCittc2dpZCAiTW92ZSB1cCIKK21zZ3N0ciAiRXJhbWFuIGdvcmFudHoiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQyCittc2dpZCAiTW92ZSBkb3duIgorbXNnc3RyICJFcmFtYW4gYmVoZXJhbnR6IgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0MworbXNnaWQgIkdvIHRvIHRvcCBvZiBsaXN0IgorbXNnc3RyICJKb2FuIHplcnJlbmRhcmVuIGhhc2llcmFyYSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDQKK21zZ2lkICJHbyB0byBlbmQgb2YgbGlzdCIKK21zZ3N0ciAiSm9hbiB6ZXJyZW5kYXJlbiBhbWFpZXJhcmEiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ1Cittc2dpZCAiUmVxdWVzdCBoZWxwIChjeWNsZSB0aHJvdWdoIGhlbHAgc2NyZWVucykiCittc2dzdHIgIkVza2F0dSBsYWd1bnR6YSAoam9hbiBsYWd1bnR6YS1wYW50YWlsYSBiYXRldGlrIGJlc3RlcmEpIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0NgorbXNnaWQgIkN5Y2xlIHRocm91Z2ggaW5mb3JtYXRpb24gZGlzcGxheXMiCittc2dzdHIgIkpvYW4gaW5mb3JtYXppby1wYW50YWlsYSBiYXRldGlrIGJlc3RlcmEiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ3Cittc2dpZCAiUmVkcmF3IGRpc3BsYXkiCittc2dzdHIgIk1hcnJhenR1IGJlcnJpcm8gcGFudGFpbGEiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ4Cittc2dpZCAiU2Nyb2xsIG9ud2FyZHMgdGhyb3VnaCBsaXN0IGJ5IDEgbGluZSIKK21zZ3N0ciAiS29ycml0dSBhdXJyZXJhIHplcnJlbmRhbiBsZXJybyAxIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0OQorbXNnaWQgIlNjcm9sbCBiYWNrd2FyZHMgdGhyb3VnaCBsaXN0IGJ5IDEgbGluZSIKK21zZ3N0ciAiS29ycml0dSBhdHplcmEgemVycmVuZGFuIGxlcnJvIDEiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTUwCittc2dpZCAiU2Nyb2xsIG9ud2FyZHMgdGhyb3VnaCBoZWxwL2luZm9ybWF0aW9uIGJ5IDEgbGluZSIKK21zZ3N0ciAiS29ycml0dSBhdXJyZXJhIGxhZ3VudHphbi9pbmZvcm1hemlvYW4gbGVycm8gMSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTEKK21zZ2lkICJTY3JvbGwgYmFja3dhcmRzIHRocm91Z2ggaGVscC9pbmZvcm1hdGlvbiBieSAxIGxpbmUiCittc2dzdHIgIktvcnJpdHUgYXR6ZXJhIGxhZ3VudHphbi9pbmZvcm1hemlvYW4gbGVycm8gMSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTIKK21zZ2lkICJTY3JvbGwgb253YXJkcyB0aHJvdWdoIGxpc3QiCittc2dzdHIgIktvcnJpdHUgYXVycmVyYSB6ZXJyZW5kYW4iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTUzCittc2dpZCAiU2Nyb2xsIGJhY2t3YXJkcyB0aHJvdWdoIGxpc3QiCittc2dzdHIgIktvcnJpdHUgYXR6ZXJhIHplcnJlbmRhbiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTYKK21zZ2lkICJNYXJrIHBhY2thZ2UocykgZm9yIGluc3RhbGxhdGlvbiIKK21zZ3N0ciAiTWFya2F0dSBwYWtldGVhKGspIGluc3RhbGF0emVrbyIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTcKK21zZ2lkICJNYXJrIHBhY2thZ2UocykgZm9yIGRlaW5zdGFsbGF0aW9uIgorbXNnc3RyICJNYXJrYXR1IHBha2V0ZWEoaykgZGVzaW5zdGFsYXR6ZWtvIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1OAorbXNnaWQgIk1hcmsgcGFja2FnZShzKSBmb3IgZGVpbnN0YWxsIGFuZCBwdXJnZSIKK21zZ3N0ciAiTWFya2F0dSBwYWtldGVhKGspIGRlc2luc3RhbGF0emVrbyBldGEgcHVyZ2F0emVrbyIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTkKK21zZ2lkICJNYWtlIGhpZ2hsaWdodCBtb3JlIHNwZWNpZmljIgorbXNnc3RyICJOYWJhcm1lbmR1IHplaGF0emFnbyIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjAKK21zZ2lkICJNYWtlIGhpZ2hsaWdodCBsZXNzIHNwZWNpZmljIgorbXNnc3RyICJOYWJhcm1lbmR1IHplaGF6dGFzdW4gZ3V0eGlhZ296IgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2MQorbXNnaWQgIlNlYXJjaCBmb3IgYSBwYWNrYWdlIHdob3NlIG5hbWUgY29udGFpbnMgYSBzdHJpbmciCittc2dzdHIgIkJpbGF0dSBpemVuZWFuIGthdGUgYmF0IGR1ZW4gcGFrZXRlIGJhdCIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjIKK21zZ2lkICJSZXBlYXQgbGFzdCBzZWFyY2guIgorbXNnc3RyICJFcnJlcGlrYXR1IGF6a2VuIGJpbGFrZXRhLiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjMKK21zZ2lkICJTd2FwIHNvcnQgb3JkZXIgcHJpb3JpdHkvc2VjdGlvbiIKK21zZ3N0ciAiQWxkYXR1IGxlaGVudGFzdW5hL3Nla3ppb2Egb3JkZW5hdHpla28gaXJpenBpZGVhIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2NAorbXNnaWQgIlF1aXQsIGNvbmZpcm1pbmcsIGFuZCBjaGVja2luZyBkZXBlbmRlbmNpZXMiCittc2dzdHIgIklydGVuLCBiZXJyZXRzaXogZXRhIG1lbmRla290YXN1bmFrIGVnaWF6dGF0dXoiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY1Cittc2dpZCAiUXVpdCwgY29uZmlybWluZyB3aXRob3V0IGNoZWNrIgorbXNnc3RyICJJcnRlbiwgZWdpYXp0YXR1IGdhYmUgYmVycmV0c2l6IgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2NgorbXNnaWQgIlF1aXQsIHJlamVjdGluZyBjb25mbGljdC9kZXBlbmRlbmN5IHN1Z2dlc3Rpb25zIgorbXNnc3RyICJJcnRlbiwgZ2F0YXprYS9tZW5kZWtvdGFzdW5hIGlyYWRva2l6dW5hayBlemV0c2l6IgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2NworbXNnaWQgIkFib3J0IC0gcXVpdCB3aXRob3V0IG1ha2luZyBjaGFuZ2VzIgorbXNnc3RyICJBYm9ydGF0dSAtIGlydGVuIGFsZGFrZXRhcmlrIGVnaW4gZ2FiZSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjgKK21zZ2lkICJSZXZlcnQgdG8gb2xkIHN0YXRlIGZvciBhbGwgcGFja2FnZXMiCittc2dzdHIgIkxlaGVuZXJhdHUgcGFrZXRlIGd1enRpYWsgZWdvZXJhIHphaGFycmVyYSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjkKK21zZ2lkICJSZXZlcnQgdG8gc3VnZ2VzdGVkIHN0YXRlIGZvciBhbGwgcGFja2FnZXMiCittc2dzdHIgIkxlaGVuZXJhdHUgcGFrZXRlIGd1enRpYWsgaXJhZG9raXRha28gZWdvZXJhcmEiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTcwCittc2dpZCAiUmV2ZXJ0IHRvIGRpcmVjdGx5IHJlcXVlc3RlZCBzdGF0ZSBmb3IgYWxsIHBhY2thZ2VzIgorbXNnc3RyICJMZWhlbmVyYXR1IHBha2V0ZSBndXp0aWFrIHp1emVuZWFuIGVza2F0dXRha28gZWdvZXJhcmEiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTcxCittc2dpZCAiUmV2ZXJ0IHRvIGN1cnJlbnRseSBpbnN0YWxsZWQgc3RhdGUgZm9yIGFsbCBwYWNrYWdlcyIKK21zZ3N0ciAiTGVoZW5lcmF0dSBwYWtldGUgZ3V6dGlhayB1bmVhbiBpbnN0YWxhdHVyaWsgZGFnb2VuIGVnb2VyYXJhIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE3NAorbXNnaWQgIlNlbGVjdCBjdXJyZW50bHktaGlnaGxpZ2h0ZWQgYWNjZXNzIG1ldGhvZCIKK21zZ3N0ciAiSGF1dGF0dSB1bmVhbiBuYWJhcm1lbmR1dGFrbyBhdHppcGVuLW1ldG9kb2EiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTc1Cittc2dpZCAiUXVpdCB3aXRob3V0IGNoYW5naW5nIHNlbGVjdGVkIGFjY2VzcyBtZXRob2QiCittc2dzdHIgIklydGVuIGhhdXRhdHV0YWtvIGF0emlwZW4tbWV0b2RvYSBhbGRhdHUgZ2FiZSIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoyOQorbXNnaWQgIktleXN0cm9rZXMiCittc2dzdHIgIlRla2xhLXNha2F0emVhayIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoyOQorbXNnaWQgIiIKKyJNb3Rpb24ga2V5czogTmV4dC9QcmV2aW91cywgVG9wL0VuZCwgVXAvRG93biwgQmFja3dhcmRzL0ZvcndhcmRzOlxuIgorIiAgaiwgRG93bi1hcnJvdyAgICAgICAgIGssIFVwLWFycm93ICAgICAgICAgICAgIG1vdmUgaGlnaGxpZ2h0XG4iCisiICBOLCBQYWdlLWRvd24sIFNwYWNlICAgUCwgUGFnZS11cCwgQmFja3NwYWNlICAgc2Nyb2xsIGxpc3QgYnkgMSBwYWdlXG4iCisiICBebiAgICAgICAgICAgICAgICAgICAgXnAgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGxpc3QgYnkgMSBsaW5lXG4iCisiICB0LCBIb21lICAgICAgICAgICAgICAgZSwgRW5kICAgICAgICAgICAgICAgICAganVtcCB0byB0b3AvZW5kIG9mIGxpc3RcbiIKKyIgIHUgICAgICAgICAgICAgICAgICAgICBkICAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyBieSAxIHBhZ2VcbiIKKyIgIF51ICAgICAgICAgICAgICAgICAgICBeZCAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyBieSAxIGxpbmVcbiIKKyIgIEIsIExlZnQtYXJyb3cgICAgICAgICBGLCBSaWdodC1hcnJvdyAgICAgICAgICBwYW4gZGlzcGxheSBieSAxLzMgc2NyZWVuXG4iCisiICBeYiAgICAgICAgICAgICAgICAgICAgXmYgICAgICAgICAgICAgICAgICAgICAgcGFuIGRpc3BsYXkgYnkgMSBjaGFyYWN0ZXJcbiIKKyJcbiIKKyJNYXJrIHBhY2thZ2VzIGZvciBsYXRlciBwcm9jZXNzaW5nOlxuIgorIiArLCBJbnNlcnQgIGluc3RhbGwgb3IgdXBncmFkZSAgICAgID0sIEggIGhvbGQgaW4gcHJlc2VudCBzdGF0ZVxuIgorIiAtLCBEZWxldGUgIHJlbW92ZSAgICAgICAgICAgICAgICAgIDosIEcgIHVuaG9sZDogdXBncmFkZSBvciBsZWF2ZSAiCisidW5pbnN0YWxsZWRcbiIKKyIgXyAgICAgICAgICByZW1vdmUgJiBwdXJnZSBjb25maWdcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBNaXNjZWxsYW5lb3VzOlxuIgorIlF1aXQsIGV4aXQsIG92ZXJ3cml0ZSAobm90ZSBjYXBpdGFscyEpOiAgICAgICA/LCBGMSByZXF1ZXN0IGhlbHAgKGFsc28gIgorIkhlbHApXG4iCisiIFJldHVybiAgQ29uZmlybSwgcXVpdCAoY2hlY2sgZGVwZW5kZW5jaWVzKSAgIGksIEkgIHRvZ2dsZS9jeWNsZSBpbmZvICIKKyJkaXNwbGF5c1xuIgorIiAgIFEgICAgIENvbmZpcm0sIHF1aXQgKG92ZXJyaWRlIGRlcC5zKSAgICAgICBvLCBPICBjeWNsZSB0aHJvdWdoIHNvcnQgIgorIm9wdGlvbnNcbiIKKyIgWCwgRXNjICBlWGl0LCBhYmFuZG9uaW5nIGFueSBjaGFuZ2VzIG1hZGUgICAgdiwgViAgY2hhbmdlIHN0YXR1cyBkaXNwbGF5ICIKKyJvcHRzXG4iCisiICAgUiAgICAgUmV2ZXJ0IHRvIHN0YXRlIGJlZm9yZSB0aGlzIGxpc3QgICAgICBebCAgIHJlZHJhdyBkaXNwbGF5XG4iCisiICAgVSAgICAgc2V0IGFsbCB0byBzVWdnZXN0ZWQgc3RhdGUgICAgICAgICAgICAgLyAgIHNlYXJjaCAoUmV0dXJuIHRvICIKKyJjYW5jZWwpXG4iCisiICAgRCAgICAgc2V0IGFsbCB0byBEaXJlY3RseSByZXF1ZXN0ZWQgc3RhdGUgIG4sIFxcICByZXBlYXQgbGFzdCBzZWFyY2hcbiIKK21zZ3N0ciAiIgorIk11Z2l0emVrbyB0ZWtsYWs6IEh1cnIuL0F1cnIuLCBIYXNpLi9BbWFpLiwgR29yYS9CZWhlcmEsIEF0emVyYS9BdXJyZXJhOlxuIgorIiAgQmVoZXJhIGdlemlhLCBqICAgICAgR29yYSBnZXppYSwgayAgICAgICAgIG11Z2l0dSBuYWJhcm1lbmR1dGFrb2FcbiIKKyIgIE4sIE9yckJlaCwgWnVyaXVuZWEgICAgIFAsIE9yckdvLCBhdHplcmEtdGVrbGEgICBrb3JyaXR1IHplcnJlbmRhIG9ycmkgMVxuIgorIiAgXm4gICAgICAgICAgICAgICAgICAgICAgXnAgICAgICAgICAgICAgICAgICAgICAgIGtvcnJpdHUgemVycmVuZGEgbGVycm8gMVxuIgorIiAgdCwgSGFzaSAgICAgICAgICAgICAgICAgZSwgQnVrYSAgICAgICAgICAgICAgICAgIGpvYW4gaGFzaWVyYXJhL2FtYWllcmFyYVxuIgorIiAgdSAgICAgICAgICAgICAgICAgICAgICAgZCAgICAgICAgICAgICAgICAgICAgICAgIGtvcnJpdHUgaW5mLiBvcnJpIDFcbiIKKyIgIF51ICAgICAgICAgICAgICAgICAgICAgIF5kICAgICAgICAgICAgICAgICAgICAgICBrb3JyaXR1IGluZi4gbGVycm8gMVxuIgorIiAgQiwgRXprZXJyZXJhIGdlemlhICAgICAgRiwgRXNrdWluZXJhIGdlemlhICAgICAgIGtvcnJpdHUgaG9yaXpvbnRhbGtpXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhbnRhaWxhcmVuIDEvM1xuIgorIiAgXmIgICAgICAgICAgICAgICAgICAgIF5mICAgICAgICAgICAgICAgICAgICAgICAgIGtvcnJpdHUgaG9yaXpvbnRhbGtpXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGthcmFrdGVyZSBiYXRcbiIKKyJcbiIKKyJNYXJrYXR1IHBha2V0ZWFrIGdlcm9hZ28gcHJvemVzYXR6ZWtvOlxuIgorIiArLCBUeGVydCAgaW5zdGFsYXR1IGVkbyBiZXJ0c2lvLWJlcnJpdHUgICAgPSwgSCAgaGl6b3p0dSB1bmVrbyBlZ29lcmFuXG4iCisiIC0sIEV6YWIgICBrZW5kdSAgICAgICAgICAgICAgICAgICAgICAgICAgICA6LCBHICBkZXNoaXpvenR1OiBiZXJ0c2lvLSIKKyJiZXJyaXR1XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZWRvIHV0emkgaW5zdGFsYXR1IGdhYmVcbiIKKyIgXyAgICAgICAgIGtlbmR1IGV0YSBwdXJnYXR1IGtvbmZpZ3VyYXppb2FcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBIYWluYmF0OlxuIgorIklydGVuLCBnYWluaWRhdHppIChtYWl1c2t1bGFrISk6ICAgICAgICAgICA/LCBGMSBlc2thdHUgbGFndW50emEgKGVkbyAiCisiTGFndW50emEpXG4iCisiIFNhcnR1ICBCZXJyZXRzaSwgaXJ0ZW4gKGVnaWF6dGF0dSBtZW5kZWtvdGFzdW5haylcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaSwgSSAgaW5mLiBwYW50YWlsYVxuIgorIiAgIFEgICAgQmVycmV0c2ksIGlydGVuIChnYWluaWRhdHppIG1lbmRla290YXN1bmFrKVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbywgTyAgYWxkYXR1IG9yZGVuYXR6ZWtvIGF1a2VyYVxuIgorIiBYLCBJaGVzICBJcnRlbiwgdXR6aSBlZ2luZGFrbyBhbGRha2V0YWsgICB2LCBWICBhbGRhdHUgZWdvZXJhIGJpc3RhcmF0emVrb1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXVrZXJha1xuIgorIiAgIFIgICAgIExlaGVuZXJhdHUgYXVycmVrbyBlZ29lcmFyYSAgICAgICBebCAgIE1hcnJhenR1IGJlcnJpcm8gcGFudGFpbGFcbiIKKyIgICBVICAgICBlemFycmkgZGVuYSBpcmFkb2tpdGFrbyBlZ29lcmFuICAgIC8gICBiaWxhdHUgKFV6dGVrbzogJ1NhcnR1JylcbiIKKyIgICBEICAgICBlemFycmkgZGVuYSB6dXplbmVhbiBlc2thdHV0YWtvIGVnb2VyYW4gXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcXCAgIEVycmVwaWthdHUgYXprZW4gYmlsYWtldGFcbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo1NQorbXNnaWQgIkludHJvZHVjdGlvbiB0byBwYWNrYWdlIHNlbGVjdGlvbnMiCittc2dzdHIgIlBha2V0ZS1oYXV0YXBlbmVuIHNhcnJlcmEiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6NTUKK21zZ2lkICIiCisiV2VsY29tZSB0byBkc2VsZWN0J3MgbWFpbiBwYWNrYWdlIGxpc3RpbmcuXG4iCisiXG4iCisiWW91IHdpbGwgYmUgcHJlc2VudGVkIHdpdGggYSBsaXN0IG9mIHBhY2thZ2VzIHdoaWNoIGFyZSBpbnN0YWxsZWQgb3IgIgorImF2YWlsYWJsZVxuIgorImZvciBpbnN0YWxsYXRpb24uICBZb3UgY2FuIG5hdmlnYXRlIGFyb3VuZCB0aGUgbGlzdCB1c2luZyB0aGUgY3Vyc29yIGtleXMsXG4iCisibWFyayBwYWNrYWdlcyBmb3IgaW5zdGFsbGF0aW9uICh1c2luZyBgKycpIG9yIGRlaW5zdGFsbGF0aW9uICh1c2luZyBgLScpLlxuIgorIlBhY2thZ2VzIGNhbiBiZSBtYXJrZWQgZWl0aGVyIHNpbmdseSBvciBpbiBncm91cHM7IGluaXRpYWxseSB5b3Ugd2lsbCBzZWUgIgorInRoYXRcbiIKKyJ0aGUgbGluZSBgQWxsIHBhY2thZ2VzJyBpcyBzZWxlY3RlZC4gIGArJywgYC0nIGFuZCBzbyBvbiB3aWxsIGFmZmVjdCBhbGwgIgorInRoZVxuIgorInBhY2thZ2VzIGRlc2NyaWJlZCBieSB0aGUgaGlnaGxpZ2h0ZWQgbGluZS5cbiIKKyJcbiIKKyJTb21lIG9mIHlvdXIgY2hvaWNlcyB3aWxsIGNhdXNlIGNvbmZsaWN0cyBvciBkZXBlbmRlbmN5IHByb2JsZW1zOyB5b3Ugd2lsbCAiCisiYmVcbiIKKyJnaXZlbiBhIHN1Yi1saXN0IG9mIHRoZSByZWxldmFudCBwYWNrYWdlcywgc28gdGhhdCB5b3UgY2FuIHNvbHZlIHRoZSAiCisicHJvYmxlbXMuXG4iCisiXG4iCisiWW91IHNob3VsZCByZWFkIHRoZSBsaXN0IG9mIGtleXMgYW5kIHRoZSBleHBsYW5hdGlvbnMgb2YgdGhlIGRpc3BsYXkuXG4iCisiTXVjaCBvbi1saW5lIGhlbHAgaXMgYXZhaWxhYmxlLCBwbGVhc2UgbWFrZSB1c2Ugb2YgaXQgLSBwcmVzcyBgPycgYXRcbiIKKyJhbnkgdGltZSBmb3IgaGVscC5cbiIKKyJcbiIKKyJXaGVuIHlvdSBoYXZlIGZpbmlzaGVkIHNlbGVjdGluZyBwYWNrYWdlcywgcHJlc3MgPGVudGVyPiB0byBjb25maXJtICIKKyJjaGFuZ2VzLFxuIgorIm9yIGBYJyB0byBxdWl0IHdpdGhvdXQgc2F2aW5nIGNoYW5nZXMuIEEgZmluYWwgY2hlY2sgb24gY29uZmxpY3RzIGFuZFxuIgorImRlcGVuZGVuY2llcyB3aWxsIGJlIGRvbmUgLSBoZXJlIHRvbyB5b3UgbWF5IHNlZSBhIHN1Ymxpc3QuXG4iCisiXG4iCisiUHJlc3MgPHNwYWNlPiB0byBsZWF2ZSBoZWxwIGFuZCBlbnRlciB0aGUgbGlzdCBub3cuXG4iCittc2dzdHIgIiIKKyJPbmdpIGV0b3JyaSBkc2VsZWN0LWVuIHBha2V0ZWVuIHplcnJlbmRhIG5hZ3VzaXJhLlxuIgorIlxuIgorIkluc3RhbGF0dXRhIGVkbyBpbnN0YWxhZ2FycmkgZGF1ZGVuIHBha2V0ZWVuIHplcnJlbmRhIGF6YWxkdWtvIHphaXp1LlxuIgorIlplcnJlbmRhbiBuYWJpZ2F0emVrbywgZXJhYmlsaSBrdXJ0c29yZS10ZWtsYWssIGV0YSBtYXJrYXR1IHBha2V0ZWFrXG4iCisiaW5zdGFsYXR6ZWtvIChgKycgZXJhYmlsaXopIGVkbyBkZXNpbnN0YWxhdHpla28gKGAtJyBlcmFiaWxpeikuXG4iCisiUGFrZXRlYWsgYmFuYWthIG5haGl6IHRhbGRla2EgbWFya2EgZGFpdGV6a2U7IGhhc2llcmFuIGlrdXNpa28gZHV6dSBcbiIKKyJgUGFrZXRlIGd1enRpYWsnIGxlcnJvYSBoYXV0YXR1dGEgZGFnb2VsYS4gIE5hYmFybWVuZHV0YWtvIGxlcnJvYW4gYCsnLCBcbiIKKyJgLScgbWFya2F0emVhaywgbGVycm9rbyBwYWtldGUgZ3V6dGlldGFuIGl6YW5nbyBkdSBlcmFnaW5hLlxuIgorIlxuIgorIlp1cmUgYXVrZXJhIGJhdHp1ZWsgZ2F0YXprYWsgZWRvIG1lbmRla290YXN1bi1hcmF6b2FrIHNvciBkaXR6YWtldGU7IFxuIgorInBha2V0ZSBnYXJyYW50eml0c3VlbiBhenBpemVycmVuZGEgYmF0IGVtYW5nbyB6YWl6dSwgYXJhem9hayBrb25wb25kdSBcbiIKKyJhaGFsIGl6YW4gZGl0emF6dW4uXG4iCisiXG4iCisiVGVrbGVuIHplcnJlbmRhIGV0YSBwYW50YWlsYWtvIGF6YWxwZW5hayBpcmFrdXJ0emVhIGdvbWVuZGF0emVuIHphaXp1LlxuIgorIkxpbmVhbiBlcmUgYmFkYWdvIGxhZ3VudHphIGVyYWJpbGdhcnJpYSB6dXJlIGVza3VyYSAtIHNha2F0dSBgPycgbmFoaVxuIgorImR1enVuZWFuIGxhZ3VudHphIGxvcnR6ZWtvLlxuIgorIlxuIgorIlBha2V0ZWFrIGhhdXRhdHplbiBhbWFpdHV0YWtvYW4sIHNha2F0dSA8c2FydHU+IGFsZGFrZXRhayBiZXJyZXN0ZWtvLCBcbiIKKyJlZG8gYFEnIGFsZGFrZXRhayBnb3JkZSBnYWJlIGlydGV0ZWtvLiBHYXRhemtlbiBldGEgbWVuZGVrb3Rhc3VuZW5cbiIKKyJhemtlbiBhenRlcmtldGEgZWdpbmdvIGRhIC0gaGVtZW4gZXJlIGF6cGl6ZXJyZW5kYSBiYXQgaWt1c2lrbyBkdXp1LlxuIgorIlxuIgorIlNha2F0dSA8c2FydHU+IGxhZ3VudHphdGlrIGlydGVuIGV0YSB6ZXJyZW5kYXJhIGpvYXRla28uXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6ODAKK21zZ2lkICJJbnRyb2R1Y3Rpb24gdG8gcmVhZC1vbmx5IHBhY2thZ2UgbGlzdCBicm93c2VyIgorbXNnc3RyICJTb2lsaWsgaXJha3VydHpla28gcGFrZXRlZW4gemVycmVuZGFyZW4gYXJha2F0emFpbGVhcmVuIHNhcnJlcmEiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6ODAKK21zZ2lkICIiCisiV2VsY29tZSB0byBkc2VsZWN0J3MgbWFpbiBwYWNrYWdlIGxpc3RpbmcuXG4iCisiXG4iCisiWW91IHdpbGwgYmUgcHJlc2VudGVkIHdpdGggYSBsaXN0IG9mIHBhY2thZ2VzIHdoaWNoIGFyZSBpbnN0YWxsZWQgb3IgIgorImF2YWlsYWJsZVxuIgorImZvciBpbnN0YWxsYXRpb24uICBTaW5jZSB5b3UgZG8gbm90IGhhdmUgdGhlIHByaXZpbGVnZSBuZWNlc3NhcnkgdG8gdXBkYXRlXG4iCisicGFja2FnZSBzdGF0ZXMsIHlvdSBhcmUgaW4gYSByZWFkLW9ubHkgbW9kZS4gIFlvdSBjYW4gbmF2aWdhdGUgYXJvdW5kIHRoZVxuIgorImxpc3QgdXNpbmcgdGhlIGN1cnNvciBrZXlzIChwbGVhc2Ugc2VlIHRoZSBgS2V5c3Ryb2tlcycgaGVscCBzY3JlZW4pLCAiCisib2JzZXJ2ZVxuIgorInRoZSBzdGF0dXMgb2YgdGhlIHBhY2thZ2VzIGFuZCByZWFkIGluZm9ybWF0aW9uIGFib3V0IHRoZW0uXG4iCisiXG4iCisiWW91IHNob3VsZCByZWFkIHRoZSBsaXN0IG9mIGtleXMgYW5kIHRoZSBleHBsYW5hdGlvbnMgb2YgdGhlIGRpc3BsYXkuXG4iCisiTXVjaCBvbi1saW5lIGhlbHAgaXMgYXZhaWxhYmxlLCBwbGVhc2UgbWFrZSB1c2Ugb2YgaXQgLSBwcmVzcyBgPycgYXRcbiIKKyJhbnkgdGltZSBmb3IgaGVscC5cbiIKKyJcbiIKKyJXaGVuIHlvdSBoYXZlIGZpbmlzaGVkIGJyb3dzaW5nLCBwcmVzcyBgUScgb3IgPGVudGVyPiB0byBxdWl0LlxuIgorIlxuIgorIlByZXNzIDxzcGFjZT4gdG8gbGVhdmUgaGVscCBhbmQgZW50ZXIgdGhlIGxpc3Qgbm93LlxuIgorbXNnc3RyICIiCisiT25naSBldG9ycmkgZHNlbGVjdC1lbiBwYWtldGVlbiB6ZXJyZW5kYSBuYWd1c2lyYS5cbiIKKyJcbiIKKyJJbnN0YWxhdHV0YSBlZG8gaW5zdGFsYWdhcnJpIGRhdWRlbiBwYWtldGVlbiB6ZXJyZW5kYSBhdXJrZXp0dWtvIHphaXp1XG4iCisiUGFrZXRlLWVnb2VyYWsgZWd1bmVyYXR6ZWtvIGJlaGFyIGRpcmVuIHByaWJpbGVnaW9hayBleiBkaXR1enVuZXosXG4iCisic29pbGlrIGlyYWt1cnR6ZWtvIG1vZHVhbiB6YXVkZS4gWmVycmVuZGFuIG5hYmlnYSBkZXpha2V6dSBrdXJ0c29yZS10ZWtsZW5cbiIKKyJiaWRleiAoaWt1cyBgVGVrbGEtc2FrYXR6ZWFrJyBsYWd1bnR6YS1wYW50YWlsYSksIHBha2V0ZWVuIGVnb2VyYSBpa3VzaSwgZXRhICIKKyJwYWtldGVlaSBidXJ1emtvIGluZm9ybWF6aW9hIGlyYWt1cnJpLlxuIgorIlxuIgorIlRla2xlbiB6ZXJyZW5kYSBldGEgcGFudGFpbGFrbyBhemFscGVuYWsgaXJha3VydHplYSBnb21lbmRhdHplbiB6YWl6dS5cbiIKKyJMaW5lYW4gZXJlIGJhZGFnbyBsYWd1bnR6YSBlcmFiaWxnYXJyaWEgenVyZSBlc2t1cmEgLSBzYWthdHUgYD8nIG5haGlcbiIKKyJkdXp1bmVhbiBsYWd1bnR6YSBsb3J0emVrby5cbiIKKyJcbiIKKyJBcmFrYXR6ZW4gYW1haXR1dGFrb2FuLCBzYWthdHUgYFEnIGVkbyA8c2FydHU+IGlydGV0ZWtvLlxuIgorIlxuIgorIlNha2F0dSA8c2FydHU+IGxhZ3VudHphdGlrIGlydGVuIGV0YSB6ZXJyZW5kYXJhIGpvYXRla28uXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6OTkKK21zZ2lkICJJbnRyb2R1Y3Rpb24gdG8gY29uZmxpY3QvZGVwZW5kZW5jeSByZXNvbHV0aW9uIHN1Yi1saXN0IgorbXNnc3RyICJHYXRhemthL21lbmRla290YXN1bmEgZWJhenRla28gYXpwaXplcnJlbmRhcmVuIHNhcnJlcmEiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6OTkKK21zZ2lkICIiCisiRGVwZW5kZW5jeS9jb25mbGljdCByZXNvbHV0aW9uIC0gaW50cm9kdWN0aW9uLlxuIgorIlxuIgorIk9uZSBvciBtb3JlIG9mIHlvdXIgY2hvaWNlcyBoYXZlIHJhaXNlZCBhIGNvbmZsaWN0IG9yIGRlcGVuZGVuY3kgcHJvYmxlbSAtXG4iCisic29tZSBwYWNrYWdlcyBzaG91bGQgb25seSBiZSBpbnN0YWxsZWQgaW4gY29uanVuY3Rpb24gd2l0aCBjZXJ0YWluIG90aGVycywgIgorImFuZFxuIgorInNvbWUgY29tYmluYXRpb25zIG9mIHBhY2thZ2VzIG1heSBub3QgYmUgaW5zdGFsbGVkIHRvZ2V0aGVyLlxuIgorIlxuIgorIllvdSB3aWxsIHNlZSBhIHN1Yi1saXN0IGNvbnRhaW5pbmcgdGhlIHBhY2thZ2VzIGludm9sdmVkLiAgVGhlIGJvdHRvbSBoYWxmICIKKyJvZlxuIgorInRoZSBkaXNwbGF5IHNob3dzIHJlbGV2YW50IGNvbmZsaWN0cyBhbmQgZGVwZW5kZW5jaWVzOyB1c2UgYGknIHRvIGN5Y2xlICIKKyJiZXR3ZWVuXG4iCisidGhhdCwgdGhlIHBhY2thZ2UgZGVzY3JpcHRpb25zIGFuZCB0aGUgaW50ZXJuYWwgY29udHJvbCBpbmZvcm1hdGlvbi5cbiIKKyJcbiIKKyJBIHNldCBvZiBgc3VnZ2VzdGVkJyBwYWNrYWdlcyBoYXMgYmVlbiBjYWxjdWxhdGVkLCBhbmQgdGhlIGluaXRpYWwgbWFya2luZ3MgIgorImluXG4iCisidGhpcyBzdWItbGlzdCBoYXZlIGJlZW4gc2V0IHRvIG1hdGNoIHRob3NlLCBzbyB5b3UgY2FuIGp1c3QgaGl0IFJldHVybiB0b1xuIgorImFjY2VwdCB0aGUgc3VnZ2VzdGlvbnMgaWYgeW91IHdpc2guICBZb3UgbWF5IGFib3J0IHRoZSBjaGFuZ2Uocykgd2hpY2ggIgorImNhdXNlZFxuIgorInRoZSBwcm9ibGVtKHMpLCBhbmQgZ28gYmFjayB0byB0aGUgbWFpbiBsaXN0LCBieSBwcmVzc2luZyBjYXBpdGFsIGBYJy5cbiIKKyJcbiIKKyJZb3UgY2FuIGFsc28gbW92ZSBhcm91bmQgdGhlIGxpc3QgYW5kIGNoYW5nZSB0aGUgbWFya2luZ3Mgc28gdGhhdCB0aGV5IGFyZSAiCisibW9yZVxuIgorImxpa2Ugd2hhdCB5b3Ugd2FudCwgYW5kIHlvdSBjYW4gYHJlamVjdCcgbXkgc3VnZ2VzdGlvbnMgYnkgdXNpbmcgdGhlICIKKyJjYXBpdGFsXG4iCisiYEQnIG9yIGBSJyBrZXlzIChzZWUgdGhlIGtleWJpbmRpbmdzIGhlbHAgc2NyZWVuKS4gIFlvdSBjYW4gdXNlIGNhcGl0YWwgYFEnICIKKyJ0b1xuIgorImZvcmNlIG1lIHRvIGFjY2VwdCB0aGUgc2l0dWF0aW9uIGN1cnJlbnRseSBkaXNwbGF5ZWQsIGluIGNhc2UgeW91IHdhbnQgdG9cbiIKKyJvdmVycmlkZSBhIHJlY29tbWVuZGF0aW9uIG9yIHRoaW5rIHRoYXQgdGhlIHByb2dyYW0gaXMgbWlzdGFrZW4uXG4iCisiXG4iCisiUHJlc3MgPHNwYWNlPiB0byBsZWF2ZSBoZWxwIGFuZCBlbnRlciB0aGUgc3ViLWxpc3Q7IHJlbWVtYmVyOiBwcmVzcyBgPycgZm9yICIKKyJoZWxwLlxuIgorbXNnc3RyICIiCisiR2F0YXprYS9tZW5kZWtvdGFzdW5hIGViYXp0ZWEgLSBzYXJyZXJhLlxuIgorIlxuIgorIlp1cmUgYXVrZXJldGFrb3JlbiBiYXRlayBnYXRhemthIGVkbyBtZW5kZWtvdGFzdW4tYXJhem9yZW4gYmF0IHNvcnR1IGR1IC1cbiIKKyJwYWtldGUgYmF0enVrIGJlc3RlIGJhdHp1ZWtpbiBiYXRlcmEgYmFrYXJyaWsgaW5zdGFsYSBkYWl0ZXprZSwgZXRhXG4iCisicGFrZXRlIGJhdHp1ayBlemluIGRpcmEgYmVzdGUgcGFrZXRlIGJhdHp1ZWtpbiBiYXRlcmEgaW5zdGFsYXR1LlxuIgorIlxuIgorIkFyYXpvYSBkdXRlbiBwYWtldGVlbiBhenBpemVycmVuZGEgYmF0IGlrdXNpa28gZHV6dS4gUGFudGFpbGFyZW4gYmVoZWtvXG4iCisiYWxkZWFuIGdhdGF6a2EgZXRhIG1lbmRla290YXN1biBuYWd1c2lhayBlcmFrdXN0ZW4gZGlyYTsgZXJhYmlsaSBgaSdcbiIKKyJob3J0aWsgcGFrZXRlLWF6YWxwZW5lcmEgZXRhIGJhcm5la28ga29udHJvbGFyZW4gaW5mb3JtYXppb2FyZW4gYWxkYXR6ZWtvLlxuIgorIlxuIgorImBJcmFkb2tpdGFrbycgcGFrZXRlLW11bHR6byBiYXQga2Fsa3VsYXR1IGRhLCBldGEgYXpwaXplcnJlbmRha28gbWFya2FrICIKKyJlZ29raXR1IFxuIgorImRpcmEgbXVsdHpvIGhvcnJla2luIGJhdCBldG9ydHpla287IGJlcmF6LCBTYXJ0dSBzYWthdHplYSBuYWhpa29hIGl6YW5nbyAiCisiZGEsIFxuIgorIm5haGkgYmFkdXp1LCBpcmFkb2tpenVuYWsgb25hcnR6ZWtvLiBBcmF6b2FrIHNvcnR1IGRpdHV6dGVuIGFsZGFrZXRhayAiCisiYWJvcnRhdHUgXG4iCisiYWhhbCBpemFuZ28gZGl0dXp1LCBldGEgemVycmVuZGEgbmFndXNpcmEgaXR6dWxpLCBgWCcgbWFpdXNrdWxhIHNha2F0dXouXG4iCisiXG4iCisiWmVycmVuZGFuIHplaGFyIG11Z2kgemFpdGV6a2UgZXRhIG1hcmthayBhbGRhdHUgenVyZSBuYWhpZW4gYXJhYmVyYSwgZXRhXG4iCisibmlyZSBpcmFkb2tpenVuYWsgYGV6ZXRzJyBkaXR6YWtlenUsIGBEJyBlZG8gYFInIG1haXVza3VsYSB0ZWtsYWsgc2FrYXR1eiAiCisiKGlrdXNcbiIKKyJsYXN0ZXItdGVrbGVuIGxhZ3VudHphLXBhbnRhaWxhKS4gYFEnIG1haXVza3VsYSBzYWthIGRlemFrZXp1ICIKKyJ1bmVhbmJpc3RhcmF0dXRha29cbiIKKyJlZ29lcmEgb25hciBkZXphZGFuIGJlaGFydHpla28sIGlyYWRva2l6dW4gYmF0IGdhaW5pZGF0emkgbmFoaSBiYWR1enUsIGVkb1xuIgorInVzdGUgYmFkdXp1IHByb2dyYW1hIG9rZXIgZGFiaWxlbGEuXG4iCisiXG4iCisiU2FrYXR1IDxzYXJ0dT4gbGFndW50emF0aWsgaXJ0ZW4gZXRhIGF6cGl6ZXJyZW5kYXJhIGpvYXRla287IGdvZ29yYXR1OiAiCisibGFndW50emEgYmVoYXIgaXphbmV6IGdlcm8sIHNha2F0dSBgPycuXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTI1Cittc2dpZCAiRGlzcGxheSwgcGFydCAxOiBwYWNrYWdlIGxpc3RpbmcgYW5kIHN0YXR1cyBjaGFycyIKK21zZ3N0ciAiQmlzdGFyYXR6ZWEsIDEuIHphdGlhOiBwYWtldGVlbiB6ZXJyZW5kYSBldGEgZWdvZXJhLWthcmFrdGVyZWFrIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjEyNQorbXNnaWQgIiIKKyJUaGUgdG9wIGhhbGYgb2YgdGhlIHNjcmVlbiBzaG93cyBhIGxpc3Qgb2YgcGFja2FnZXMuICBGb3IgZWFjaCBwYWNrYWdlIHlvdSAiCisic2VlXG4iCisiZm91ciBjb2x1bW5zIGZvciBpdHMgY3VycmVudCBzdGF0dXMgb24gdGhlIHN5c3RlbSBhbmQgbWFyay4gIEluIHRlcnNlIG1vZGUgIgorIih1c2VcbiIKKyJgdicgdG8gdG9nZ2xlIHZlcmJvc2UgZGlzcGxheSkgdGhlc2UgYXJlIHNpbmdsZSBjaGFyYWN0ZXJzLCBmcm9tIGxlZnQgdG8gIgorInJpZ2h0OlxuIgorIlxuIgorIiBFcnJvciBmbGFnOiBTcGFjZSAtIG5vIGVycm9yIChidXQgcGFja2FnZSBtYXkgYmUgaW4gYnJva2VuIHN0YXRlIC0gc2VlICIKKyJiZWxvdylcbiIKKyIgICAgICAgICAgICAgIGBSJyAgLSBzZXJpb3VzIGVycm9yIGR1cmluZyBpbnN0YWxsYXRpb24sIG5lZWRzICIKKyJyZWluc3RhbGxhdGlvbjtcbiIKKyIgSW5zdGFsbGVkIHN0YXRlOiAgICAgU3BhY2UgICAgLSBub3QgaW5zdGFsbGVkO1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgYConICAgICAtIGluc3RhbGxlZDtcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgIGAtJyAgICAgLSBub3QgaW5zdGFsbGVkIGJ1dCBjb25maWcgZmlsZXMgcmVtYWluO1xuIgorIiAgIHBhY2thZ2VzIGluIHRoZXNlIHsgYFUnICAgICAtIHVucGFja2VkIGJ1dCBub3QgeWV0IGNvbmZpZ3VyZWQ7XG4iCisiICAgc3RhdGVzIGFyZSBub3QgICAgeyBgQycgICAgIC0gaGFsZi1jb25maWd1cmVkIChhbiBlcnJvciBoYXBwZW5lZCk7XG4iCisiICAgKHF1aXRlKSBwcm9wZXJseSAgeyBgSScgICAgIC0gaGFsZi1pbnN0YWxsZWQgKGFuIGVycm9yIGhhcHBlbmVkKTtcbiIKKyIgICBpbnN0YWxsZWQgICAgICAgICB7IGBXJyxgdCcgLSB0cmlnZ2VycyBhcmUgYXdhaXRlZCByZXNwLiBwZW5kaW5nLlxuIgorIiBPbGQgbWFyazogd2hhdCB3YXMgcmVxdWVzdGVkIGZvciB0aGlzIHBhY2thZ2UgYmVmb3JlIHByZXNlbnRpbmcgdGhpcyBsaXN0O1xuIgorIiBNYXJrOiB3aGF0IGlzIHJlcXVlc3RlZCBmb3IgdGhpcyBwYWNrYWdlOlxuIgorIiAgYConOiBtYXJrZWQgZm9yIGluc3RhbGxhdGlvbiBvciB1cGdyYWRlO1xuIgorIiAgYC0nOiBtYXJrZWQgZm9yIHJlbW92YWwsIGJ1dCBhbnkgY29uZmlndXJhdGlvbiBmaWxlcyB3aWxsIHJlbWFpbjtcbiIKKyIgIGA9Jzogb24gaG9sZDogcGFja2FnZSB3aWxsIG5vdCBiZSBwcm9jZXNzZWQgYXQgYWxsO1xuIgorIiAgYF8nOiBtYXJrZWQgZm9yIHB1cmdlIGNvbXBsZXRlbHkgLSBldmVuIHJlbW92ZSBjb25maWd1cmF0aW9uO1xuIgorIiAgYG4nOiBwYWNrYWdlIGlzIG5ldyBhbmQgaGFzIHlldCB0byBiZSBtYXJrZWQgZm9yIGluc3RhbGwvcmVtb3ZlLyZjLlxuIgorIlxuIgorIkFsc28gZGlzcGxheWVkIGFyZSBlYWNoIHBhY2thZ2UncyBQcmlvcml0eSwgU2VjdGlvbiwgbmFtZSwgaW5zdGFsbGVkIGFuZFxuIgorImF2YWlsYWJsZSB2ZXJzaW9uIG51bWJlcnMgKHNoaWZ0LVYgdG8gZGlzcGxheS9oaWRlKSBhbmQgc3VtbWFyeSAiCisiZGVzY3JpcHRpb24uXG4iCittc2dzdHIgIiIKKyJQYW50YWlsYXJlbiBnb2lrbyBlcmRpYW4gcGFrZXRlLXplcnJlbmRhIGJhdCBlcmFrdXN0ZW4gZGEuIFBha2V0ZSBiYWtvaXR6YWsgIgorImxhdVxuIgorInp1dGFiZSBkaXR1IHNpc3RlbWFuIGR1ZW4gZWdvZXJhIGV0YSBtYXJrYSBhZGllcmF6dGVrby4gTW9kdSBsYWJ1cnR1YW4gIgorIihlcmFiaWxpXG4iCisiYHYnIHhlaGVraSBiaXN0YXJhdHpla28pIGthcmFrdGVyZSBiYWt1bmFrIGRpcmEsIGV6a2VycmV0aWsgZXNrdWluZXJhOlxuIgorIlxuIgorIiBFcnJvcmUtYmFuZGVyYTogWnVyaXVuZWEgLSBlcnJvcmVyaWsgZXogKGJhaW5hIGhhdXRzaXRhIGVnb24gbGl0ZWtlIC0gaWt1cyAiCisiYmVoZWFuKVxuIgorIiAgICAgICAgICAgICAgICAgYFInICAgICAgLSBlcnJvcmUgbGFycmlhIGluc3RhbGF6aW9hbiwgYmVycmlybyBpbnN0YWxhdHUgIgorImJlaGFyIGRhO1xuIgorIiBJbnN0YWxhemlvLWVnb2VyYTogIFp1cml1bmVhIC0gaW5zdGFsYXR1IGdhYmU7XG4iCisiICAgICAgICAgICAgICAgICAgICAgYConICAgICAgLSBpbnN0YWxhdHV0YTtcbiIKKyIgICAgICAgICAgICAgICAgICAgICBgLScgICAgICAtIGluc3RhbGF0dSBnYWJlLCBiYWluYSBrb25mLiBmaXR4YXRlZ2lhayAiCisiYmFkYXVkZTtcbiIKKyIgICBlZ29lcmEgaGF1ZXRha28geyBgVScgIC0gZGVza29ucHJpbWl0dXRhIGJhaW5hIG9yYWluZGlrIGtvbmZpZ3VyYXR1ICIKKyJnYWJlO1xuIgorIiAgICAgIHBha2V0ZWFrICAgICB7IGBDJyAgLSBlcmRpLWtvbmZpZ3VyYXR1dGEgKGVycm9yZSBiYXQgZ2VydGF0dSBkYSk7XG4iCisiICAgIGhhdXRzaXRhIGRhdWRlIHsgYEknICAtIGVyZGktaW5zdGFsYXR1dGEgKGVycm9yZSBiYXQgZ2VydGF0dSBkYSkuXG4iCisiICAgaW5zdGFsYXR1dGFrbyAgICAge2BXJyxgdCcgYWJpYXJhemxlYWsgIGZhbHRhIGRlbiBlcmFudHp1bmFyZW4gemFpICIKKyJkYXVkZS5cbiIKKyIgTWFya2EgemFoYXJyYTogcGFrZXRlIGhvbmVudHphdCBlc2thdHplbiB6ZW5hIHplcnJlbmRhIGhhdSBhdXJrZXp0dSAiCisiYXVycmV0aWs7XG4iCisiIE1hcmthOiBwYWtldGUgaG9uZW50emF0IGVza2F0dXRha29hOlxuIgorIiAgYConOiBpbnN0YWxhdHpla28gZWRvIGJlcnRzaW8tYmVycml0emVrbyBtYXJrYXR1YTtcbiIKKyIgIGAtJzoga2VudHpla28gbWFya2F0dWEsIGJhaW5hIGtvbmYuIGZpdHhhdGVnaWFrIHV0emkgZWdpbmdvIGRpcmE7XG4iCisiICBgPSc6IGF0eGlraXRhOiBwYWtldGVhIGV6IGRhIHByb3plc2F0dWtvO1xuIgorIiAgYF8nOiBlcmFiYXQgcHVyZ2F0emVrbyBtYXJrYXR1YSAtIGtvbmZpZ3VyYXppb2EgZXJlIGtlbmR1O1xuIgorIiAgYG4nOiBwYWtldGVhIGJlcnJpYSBkYSwgZXRhIG1hcmthdHUgZWdpbiBiZWhhciBkYSBpbnN0YWxhdHpla28va2VudHpla28gIgorImV0YWIuXG4iCisiXG4iCisiUGFrZXRlIGJha29vdHphcmVuIGxlaGVudGFzdW5hLCBhdGFsYSwgaXplbmEgaW5zdGFsYXR1cmlrbyBldGEgZXNrdXJhZ2FycmlcbiIKKyJkYXVkZW4gYmVydHNpbyB6ZW5iYWtpYWsgKHNoaWZ0LVYgYmlzdGFyYXppL2V6a3V0YXR6ZWtvKSBldGEgbGFidXJwZW4gYmF0ICIKKyJiaXN0YXJhemlrb1xuIgorIiBkaXJhIGVyZS5cbiIKKyJcbiIKKyJQYWtldGUgYmFrb2l0emFyZW4gTGVoZW50YXN1bmEsIFNla3ppb2EsIGl6ZW5hLCBldGEgaW5zdGFsYXR1dGEgZXRhXG4iCisiZXJhYmlsZ2FycmkgZGF1ZGVuIGJlcnRzaW8temVuYmFraWFrIGJpc3RhcmF0emVuIGRpcmEgKG1haXVza3VsYS1WIFxuIgorImJpc3RhcmF0emVrby9lemt1dGF0emVrbyksIGJhaXRhIGxhYnVycGVuYXJlbiBhemFscGVuYSBlcmUuXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTUyCittc2dpZCAiRGlzcGxheSwgcGFydCAyOiBsaXN0IGhpZ2hsaWdodDsgaW5mb3JtYXRpb24gZGlzcGxheSIKK21zZ3N0ciAiQmlzdGFyYXR6ZWEsIDIuIHphdGlhOiB6ZXJyZW5kYSBuYWJhcm1lbnR6ZWE7IGluZm9ybWF6aW9hIGJpc3RhcmF0emVhIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjE1MgorbXNnaWQgIiIKKyIqIEhpZ2hsaWdodDogT25lIGxpbmUgaW4gdGhlIHBhY2thZ2UgbGlzdCB3aWxsIGJlIGhpZ2hsaWdodGVkLiAgSXQgIgorImluZGljYXRlc1xuIgorIiAgd2hpY2ggcGFja2FnZShzKSB3aWxsIGJlIGFmZmVjdGVkIGJ5IHByZXNzZXMgb2YgYCsnLCBgLScgYW5kIGBfJy5cbiIKKyJcbiIKKyIqIFRoZSBkaXZpZGluZyBsaW5lIGluIHRoZSBtaWRkbGUgb2YgdGhlIHNjcmVlbiBzaG93cyBhIGJyaWVmIGV4cGxhbmF0aW9uICIKKyJvZlxuIgorIiAgdGhlIHN0YXR1cyBvZiB0aGUgY3VycmVudGx5LWhpZ2hsaWdodGVkIHBhY2thZ2UsIG9yIGEgZGVzY3JpcHRpb24gb2YgIgorIndoaWNoXG4iCisiICBncm91cCBpcyBoaWdobGlnaHRlZCBpZiBhIGdyb3VwIGxpbmUgaXMuICBJZiB5b3UgZG9uJ3QgdW5kZXJzdGFuZCB0aGVcbiIKKyIgIG1lYW5pbmcgb2Ygc29tZSBvZiB0aGUgc3RhdHVzIGNoYXJhY3RlcnMgZGlzcGxheWVkLCBnbyB0byB0aGUgcmVsZXZhbnRcbiIKKyIgIHBhY2thZ2UgYW5kIGxvb2sgYXQgdGhpcyBkaXZpZGVyIGxpbmUsIG9yIHVzZSB0aGUgYHYnIGtleSBmb3IgYSB2ZXJib3NlXG4iCisiICBkaXNwbGF5IChwcmVzcyBgdicgYWdhaW4gdG8gZ28gYmFjayB0byB0aGUgdGVyc2UgZGlzcGxheSkuXG4iCisiXG4iCisiKiBUaGUgYm90dG9tIG9mIHRoZSBzY3JlZW4gc2hvd3MgbW9yZSBpbmZvcm1hdGlvbiBhYm91dCB0aGVcbiIKKyIgIGN1cnJlbnRseS1oaWdobGlnaHRlZCBwYWNrYWdlIChpZiB0aGVyZSBpcyBvbmx5IG9uZSkuXG4iCisiXG4iCisiICBJdCBjYW4gc2hvdyBhbiBleHRlbmRlZCBkZXNjcmlwdGlvbiBvZiB0aGUgcGFja2FnZSwgdGhlIGludGVybmFsIHBhY2thZ2VcbiIKKyIgIGNvbnRyb2wgZGV0YWlscyAoZWl0aGVyIGZvciB0aGUgaW5zdGFsbGVkIG9yIGF2YWlsYWJsZSB2ZXJzaW9uIG9mIHRoZVxuIgorIiAgcGFja2FnZSksIG9yIGluZm9ybWF0aW9uIGFib3V0IGNvbmZsaWN0cyBhbmQgZGVwZW5kZW5jaWVzIGludm9sdmluZyB0aGVcbiIKKyIgIGN1cnJlbnQgcGFja2FnZSAoaW4gY29uZmxpY3QvZGVwZW5kZW5jeSByZXNvbHV0aW9uIHN1Ymxpc3RzKS5cbiIKKyJcbiIKKyIgIFVzZSB0aGUgYGknIGtleSB0byBjeWNsZSB0aHJvdWdoIHRoZSBkaXNwbGF5cywgYW5kIGBJJyB0byBoaWRlIHRoZVxuIgorIiAgaW5mb3JtYXRpb24gZGlzcGxheSBvciBleHBhbmQgaXQgdG8gdXNlIGFsbW9zdCBhbGwgb2YgdGhlIHNjcmVlbi5cbiIKK21zZ3N0ciAiIgorIiogTmFiYXJtZW50emVhOiBQYWtldGUtemVycmVuZGFrbyBsZXJybyBiYXQgbmFiYXJtZW5kdXRhIGVnb25nbyBkYS4gIGArJywgIgorImAtJyBcbiIKKyIgIGV0YSBgXycgc2FrYXR6ZWFuIHplaW4gcGFrZXRlIHNhcnR1a28gZChpcillbiBhZGllcmF6dGVuIGR1LlxuIgorIlxuIgorIiogUGFudGFpbGEgZXJkaWJpdHplbiBkdWVuIGxlcnJvYWsgdW5lYW4gbmFiYXJtZW5kdXRha28gcGFrZXRlYXJlbiAiCisiZWdvZXJhcmVuXG4iCisiICBhemFscGVuIGxhYnVycmEgZXJha3VzdGVuIGR1LCBlZG8gdGFsZGVhcmVuIGF6YWxwZW5hIHRhbGRlLWxlcnJvYSAiCisibmFiYXJtZW5kdXRhXG4iCisiICBiYWRhZ28uIElrdXN0ZW4gZGl0dXp1biBrYXJha3RlcmUgYmF0enVrIHVsZXJ0emVuIGV6IGJhZGl0dXp1LCBqb2FuXG4iCisiICBwYWtldGUgbmFndXNpcmEsIGV0YSBiZWdpcmF0dSBsZXJybyBiYW5hdHphaWxlYW4sIGVkbyBlcmFiaWxpIGB2JyB0ZWtsYSBcbiIKKyIgIGluZm9ybWF6aW8geGVoZWEgaXphdGVrby4gKHNha2F0dSBgdicgYmVycmlybyBsYWJ1cnR1dGEgaWt1c3Rla28pLlxuIgorIlxuIgorIiogUGFudGFpbGFyZW4gYmVoZWFsZGVhbiB1bmVhbiBuYWJhcm1lbmR1dGFrbyBwYWtldGVhcmkgYnVydXprbyBpbmZvcm1hemlvXG4iCisiICBnZWhpYWdvIGJpc3RhcmF0emVuIGRhIChiYXQgYmFrYXJyaWsgYmFkYWdvKS5cbiIKKyJcbiIKKyIgIFBha2V0ZWFyZW4gYXphbHBlbiBsdXplYWdvYSBlcmFrdXRzIGRlemFrZSwgcGFrZXRlYXJlbiBiYXJuZWtvIGtvbnRyb2xla29cbiIKKyIgIHhlaGV0YXN1bmFrIChpbnN0YWxhdHV0YSBlZG8gZXJhYmlsZ2FycmkgZGFnb2VuIGJlcnRzaW9hcmkgZGFnb2tpb25leilcbiIKKyIgIGVkbyB1bmVrbyBwYWtldGVhcmkgZGFnb3praW9uIGdhdGF6a2VpIGV0YSBtZW5kZWtvdGFzdW5laSBidXJ1emtvXG4iCisiICBpbmZvcm1hemlvYSAoZ2F0YXprYS9tZW5kZWtvdGFzdW5hIGViYXp0ZWtvIGF6cGl6ZXJyZW5kZXRhbikuXG4iCisiXG4iCisiICBFcmFiaWxpIGBpJyB0ZWtsYSBwYW50YWlsZXRhbiB6ZWhhciBtdWdpdHpla28sIGV0YSBgSScgaW5mb3JtYXppb2FcbiIKKyIgIGV6a3V0YXR6ZWtvIGVkbyBpYSBwYW50YWlsYSBvc29hIGVyYWJpbHR6ZWtvIHphYmFsdHpla28uXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTc2Cittc2dpZCAiSW50cm9kdWN0aW9uIHRvIG1ldGhvZCBzZWxlY3Rpb24gZGlzcGxheSIKK21zZ3N0ciAiTWV0b2RvLWhhdXRhcGVuYXJlbiBzYXJyZXJhIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjE3NgorbXNnaWQgIiIKKyJkc2VsZWN0IGFuZCBkcGtnIGNhbiBkbyBhdXRvbWF0aWMgaW5zdGFsbGF0aW9uLCBsb2FkaW5nIHRoZSBwYWNrYWdlIGZpbGVzIHRvICIKKyJiZVxuIgorImluc3RhbGxlZCBmcm9tIG9uZSBvZiBhIG51bWJlciBvZiBkaWZmZXJlbnQgcG9zc2libGUgcGxhY2VzLlxuIgorIlxuIgorIlRoaXMgbGlzdCBhbGxvd3MgeW91IHRvIHNlbGVjdCBvbmUgb2YgdGhlc2UgaW5zdGFsbGF0aW9uIG1ldGhvZHMuXG4iCisiXG4iCisiTW92ZSB0aGUgaGlnaGxpZ2h0IHRvIHRoZSBtZXRob2QgeW91IHdpc2ggdG8gdXNlLCBhbmQgaGl0IEVudGVyLiAgWW91IHdpbGwgIgorInRoZW5cbiIKKyJiZSBwcm9tcHRlZCBmb3IgdGhlIGluZm9ybWF0aW9uIHJlcXVpcmVkIHRvIGRvIHRoZSBpbnN0YWxsYXRpb24uXG4iCisiXG4iCisiQXMgeW91IG1vdmUgdGhlIGhpZ2hsaWdodCBhIGRlc2NyaXB0aW9uIG9mIGVhY2ggbWV0aG9kLCB3aGVyZSBhdmFpbGFibGUsIGlzXG4iCisiZGlzcGxheWVkIGluIHRoZSBib3R0b20gaGFsZiBvZiB0aGUgc2NyZWVuLlxuIgorIlxuIgorIklmIHlvdSB3aXNoIHRvIHF1aXQgd2l0aG91dCBjaGFuZ2luZyBhbnl0aGluZyB1c2UgdGhlIGB4JyBrZXkgd2hpbGUgaW4gdGhlICIKKyJsaXN0XG4iCisib2YgaW5zdGFsbGF0aW9uIG1ldGhvZHMuXG4iCisiXG4iCisiQSBmdWxsIGxpc3Qgb2Yga2V5c3Ryb2tlcyBpcyBhdmFpbGFibGUgYnkgcHJlc3NpbmcgYGsnIG5vdywgb3IgZnJvbSB0aGUgIgorImhlbHBcbiIKKyJtZW51IHJlYWNoYWJsZSBieSBwcmVzc2luZyBgPycuXG4iCittc2dzdHIgIiIKKyJkc2VsZWN0IGV0YSBkcGtnLWsgaW5zdGFsYXppbyBhdXRvbWF0aWtvYSBlZ2luIGRlemFrZXRlLCBwYWtldGUtZml0eGF0ZWdpYWsgIgorImthcmdhdHV6XG4iCisiaGFpbmJhdCBsZWt1IHBvc2libGV0YWtvIGJhdGV0aWsgaW5zdGFsYXR6ZWtvLlxuIgorIlxuIgorIlplcnJlbmRhIGhvbmVrIGF1a2VyYSBlbWF0ZW4gZGl6dSBpbnN0YWxhemlvLW1ldG9kbyBoYXVldGFrbyBiYXQgIgorImhhdXRhdHpla28uXG4iCisiXG4iCisiRXJhbWFuIG5hYmFybWVudHplYSBlcmFiaWxpIG5haGkgZHV6dW4gbWV0b2RvcmFpbm8sIGV0YSBzYWthdHUgU2FydHUuIgorIkluc3RhbGF6aW9hXG4iCisib3NhdHpla28gYmVoYXIgZGVuIGluZm9ybWF6aW9hIGVza2F0dWtvIHphaXp1LlxuIgorIlxuIgorIk5hYmFybWVudHplYSBtdWdpdHUgYWhhbGEsIGV0YSBlcmFiaWxnYXJyaSBlZ29uZXogZ2VybywgbWV0b2RvICIKKyJiYWtvaXR6YXJla2luXG4iCisiYXphbHBlbiBiYXQgYmlzdGFyYXR1a28gZGEgcGFudGFpbGFyZW4gYmVoZWtvIGVyZGlhbi5cbiIKKyJcbiIKKyJFemVyIGFsZGF0dSBnYWJlIGlydGV0ZWtvLCBlcmFiaWxpIGB4JyB0ZWtsYSBpbnN0YWxhemlvLW1ldG9kb2VuIHplcnJlbmRhblxuIgorInphdWRlbmVhbi5cbiIKKyJcbiIKKyJUZWtsYS1zYWthdHplZW4gemVycmVuZGEgb3NvYSBpa3VzdGVrbywgc2FrYXR1IGBrJyBvcmFpbiwgZWRvIGpvYW4gbGFndW50emEtIgorIm1lbnVyYVxuIgorIiBgPycgc2FrYXR1dGFcbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxOTYKK21zZ2lkICJLZXlzdHJva2VzIGZvciBtZXRob2Qgc2VsZWN0aW9uIgorbXNnc3RyICJNZXRvZG9hIGhhdXRhdHpla28gdGVrbGEtc2FrYXR6ZWFrIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjE5NgorbXNnaWQgIiIKKyJNb3Rpb24ga2V5czogTmV4dC9QcmV2aW91cywgVG9wL0VuZCwgVXAvRG93biwgQmFja3dhcmRzL0ZvcndhcmRzOlxuIgorIiAgaiwgRG93bi1hcnJvdyAgICAgICAgIGssIFVwLWFycm93ICAgICAgICAgICAgIG1vdmUgaGlnaGxpZ2h0XG4iCisiICBOLCBQYWdlLWRvd24sIFNwYWNlICAgUCwgUGFnZS11cCwgQmFja3NwYWNlICAgc2Nyb2xsIGxpc3QgYnkgMSBwYWdlXG4iCisiICBebiAgICAgICAgICAgICAgICAgICAgXnAgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGxpc3QgYnkgMSBsaW5lXG4iCisiICB0LCBIb21lICAgICAgICAgICAgICAgZSwgRW5kICAgICAgICAgICAgICAgICAganVtcCB0byB0b3AvZW5kIG9mIGxpc3RcbiIKKyIgIHUgICAgICAgICAgICAgICAgICAgICBkICAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyBieSAxIHBhZ2VcbiIKKyIgIF51ICAgICAgICAgICAgICAgICAgICBeZCAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyBieSAxIGxpbmVcbiIKKyIgIEIsIExlZnQtYXJyb3cgICAgICAgICBGLCBSaWdodC1hcnJvdyAgICAgICAgICBwYW4gZGlzcGxheSBieSAxLzMgc2NyZWVuXG4iCisiICBeYiAgICAgICAgICAgICAgICAgICAgXmYgICAgICAgICAgICAgICAgICAgICAgcGFuIGRpc3BsYXkgYnkgMSBjaGFyYWN0ZXJcbiIKKyIoVGhlc2UgYXJlIHRoZSBzYW1lIG1vdGlvbiBrZXlzIGFzIGluIHRoZSBwYWNrYWdlIGxpc3QgZGlzcGxheS4pXG4iCisiXG4iCisiUXVpdDpcbiIKKyIgUmV0dXJuLCBFbnRlciAgICBzZWxlY3QgdGhpcyBtZXRob2QgYW5kIGdvIHRvIGl0cyBjb25maWd1cmF0aW9uIGRpYWxvZ3VlXG4iCisiIHgsIFggICAgICAgICAgICAgZXhpdCB3aXRob3V0IGNoYW5naW5nIG9yIHNldHRpbmcgdXAgdGhlIGluc3RhbGxhdGlvbiAiCisibWV0aG9kXG4iCisiXG4iCisiTWlzY2VsbGFuZW91czpcbiIKKyIgID8sIEhlbHAsIEYxICAgICAgcmVxdWVzdCBoZWxwXG4iCisiIF5sICAgICAgICAgICAgICAgIHJlZHJhdyBkaXNwbGF5XG4iCisiICAvICAgICAgICAgICAgICAgIHNlYXJjaCAoanVzdCByZXR1cm4gdG8gY2FuY2VsKVxuIgorIiAgXFwgICAgICAgICAgICAgICAgcmVwZWF0IGxhc3Qgc2VhcmNoXG4iCittc2dzdHIgIiIKKyJNdWdpdHpla28gdGVrbGFrOiBIdXJyLi9BdXJyLiwgSGFzaWVyYS9BbWFpZXJhLCBHb3JhL0JlaGVyYSwgQXR6ZXJhLyIKKyJBdXJyZXJhOlxuIgorIiAgbiwgQmVoZXJhIGdlemlhICAgICAgIHAsIEdvcmEgZ2V6aWEgICAgICAgICAgICBtdWdpdHUgbmFiYXJtZW5kdXRha29hXG4iCisiICBOLCBPcnJCZWgsIFp1cml1bmVhICAgUCwgT3JyR28sIGF0emVyYS10ZWtsYSAgIGtvcnJpdHUgemVycmVuZGEgb3JyaSAxXG4iCisiICBebiAgICAgICAgICAgICAgICAgICAgXnAgICAgICAgICAgICAgICAgICAgICAgIGtvcnJpdHUgemVycmVuZGEgbGVycm8gMVxuIgorIiAgdCwgSGFzaSAgICAgICAgICAgICAgIGUsIEJ1a2EgICAgICAgICAgICAgICAgICBqb2FuIGhhc2llcmFyYS9hbWFpZXJhcmFcbiIKKyIgIHUgICAgICAgICAgICAgICAgICAgICBkICAgICAgICAgICAgICAgICAgICAgICAga29ycml0dSBpbmYuIG9ycmkgMVxuIgorIiAgXnUgICAgICAgICAgICAgICAgICAgIF5kICAgICAgICAgICAgICAgICAgICAgICBrb3JyaXR1IGluZi4gbGVycm8gMVxuIgorIiAgQiwgRXprZXJyZXJhIGdlemlhICAgIEYsIEVza3VpbmVyYSBnZXppYSAgICAgICBrb3JyaXR1IGhvcml6b250YWxraVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFudGFpbGFyZW4gMS8zXG4iCisiICBeYiAgICAgICAgICAgICAgICAgICAgXmYgICAgICAgICAgICAgICAgICAgICAgIGtvcnJpdHUgaG9yaXpvbnRhbGtpXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBrYXJha3RlcmUgYmF0XG4iCisiKE11Z2l0emVrbyB0ZWtsYSBoYXVlayBwYWtldGVlbiB6ZXJyZW5kYWtvIHBhbnRhaWxha28gYmVyYWsgZGlyYS4pXG4iCisiXG4iCisiSXJ0ZW46XG4iCisiIEVudGVyLCBTYXJ0dSAgaGF1dGF0dSBtZXRvZG8gaGF1IGV0YSBqb2FuIGJlcmUga29uZi4gZWxrYXJyaXprZXRhcmFcbiIKKyIgeCwgWCAgICAgICAgICAgICAgICAgICBpcnRlbiwgaW5zdGFsYXppby1tZXRvZG9hIGFsZGF0dSBlZG8ga29uZmlndXJhdHUgIgorImdhYmVcbiIKKyJcbiIKKyJIYWluYmF0OlxuIgorIiAgPywgSGVscCwgRjEgICAgICBlc2thdHUgbGFndW50emFcbiIKKyIgXmwgICAgICAgICAgICAgICAgbWFycmF6dHUgYmVycmlybyBwYW50YWlsYVxuIgorIiAgLyAgICAgICAgICAgICAgICBiaWxhdHUgKHV6dGVrbywgc2FrYXR1ICdzYXJ0dScpXG4iCisiICBcXCAgICAgICAgICAgICAgIGVycmVwaWthdHUgYXprZW4gYmlsYWtldGFcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjYwCittc2dpZCAiVHlwZSBkc2VsZWN0IC0taGVscCBmb3IgaGVscC4iCittc2dzdHIgIklkYXR6aSBkc2VsZWN0IC0taGVscCBsYWd1bnR6YSBsb3J0emVrby4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDMKK21zZ2lkICJhIgorbXNnc3RyICJhIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQzCittc2dpZCAiW0FdY2Nlc3MiCittc2dzdHIgIltBXXR6aXBlbmEiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDMKK21zZ2lkICJDaG9vc2UgdGhlIGFjY2VzcyBtZXRob2QgdG8gdXNlLiIKK21zZ3N0ciAiQXVrZXJhdHUgZXJhYmlsaSBuYWhpIGR1enVuIGF0emlwZW4tbWV0b2RvYS4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDQKK21zZ2lkICJ1IgorbXNnc3RyICJlIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ0Cittc2dpZCAiW1VdcGRhdGUiCittc2dzdHIgIltFXWd1bmVyYXR1IgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ0Cittc2dpZCAiVXBkYXRlIGxpc3Qgb2YgYXZhaWxhYmxlIHBhY2thZ2VzLCBpZiBwb3NzaWJsZS4iCittc2dzdHIgIkFoYWwgYmFkYSwgZWd1bmVyYXR1IHBha2V0ZSBlcmFiaWxnYXJyaWVuIHplcnJlbmRhLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NQorbXNnaWQgInMiCittc2dzdHIgImgiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDUKK21zZ2lkICJbU11lbGVjdCIKK21zZ3N0ciAiW0hdYXV0YXR1IgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ1Cittc2dpZCAiUmVxdWVzdCB3aGljaCBwYWNrYWdlcyB5b3Ugd2FudCBvbiB5b3VyIHN5c3RlbS4iCittc2dzdHIgIkVza2F0dSBzaXN0ZW1hbiBpemFuIG5haGkgZGl0dXp1biBwYWtldGVhay4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDYKK21zZ2lkICJpIgorbXNnc3RyICJpIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ2Cittc2dpZCAiW0ldbnN0YWxsIgorbXNnc3RyICJbSV1uc3RhbGF0dSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NgorbXNnaWQgIkluc3RhbGwgYW5kIHVwZ3JhZGUgd2FudGVkIHBhY2thZ2VzLiIKK21zZ3N0ciAiSW5zdGFsYXR1IGV0YSBiZXJ0c2lvLWJlcnJpdHUgbmFoaSBkaXR1enVuIHBha2V0ZWFrLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NworbXNnaWQgImMiCittc2dzdHIgImsiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDcKK21zZ2lkICJbQ11vbmZpZyIKK21zZ3N0ciAiW0tdb25maWd1cmF0dSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NworbXNnaWQgIkNvbmZpZ3VyZSBhbnkgcGFja2FnZXMgdGhhdCBhcmUgdW5jb25maWd1cmVkLiIKK21zZ3N0ciAiS29uZmlndXJhdHUga29uZmlndXJhdHUgZ2FiZSBkYXVkZW4gcGFrZXRlYWsuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ4Cittc2dpZCAiciIKK21zZ3N0ciAiZSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OAorbXNnaWQgIltSXWVtb3ZlIgorbXNnc3RyICJLW2VdbmR1IgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ4Cittc2dpZCAiUmVtb3ZlIHVud2FudGVkIHNvZnR3YXJlLiIKK21zZ3N0ciAiS2VuZHUgbmFoaSBleiBkdXp1biBzb2Z0d2FyZWEuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ5Cittc2dpZCAicSIKK21zZ3N0ciAiciIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OQorbXNnaWQgIltRXXVpdCIKK21zZ3N0ciAiSVtyXXRlbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OQorbXNnaWQgIlF1aXQgZHNlbGVjdC4iCittc2dzdHIgIklydGVuIGRzZWxlY3QtZXRpay4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNTAKK21zZ2lkICJtZW51IgorbXNnc3RyICJtZW51YSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE1NQorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIGhhbmRsaW5nIGZyb250ZW5kIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkRlYmlhbi1lbiBwYWtldGUga3VkZWF0emVrbyBgJXMnIGludGVyZmF6ZWFyZW4gJXMgYmVydHNpb2EuXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNTgKK21zZ2lkICIiCisiQ29weXJpZ2h0IChDKSAxOTk0LTE5OTYgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKK21zZ3N0ciAiIgorIkNvcHlyaWdodCAoQykgMTk5NC0xOTk2IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNjIKKyMsIGZ1enp5Cittc2dpZCAiIgorIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgb3JcbiIKKyJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKK21zZ3N0ciAiIgorIlNvZnR3YXJlIGhhdSBsaWJyZWEgZGE7IGtvcGlhdHpla28gYmFsZGludHplbiBiZXJyaSBpemF0ZWtvLCBpa3VzXG4iCisiR05VIExpemVudHppYSBQdWJsaWtvIE9yb2tvcnJhcmVuIDIgYmVydHNpb2EgZWRvIGJlcnJpYWdvYS5cbiIKKyJFWiBkYWdvIGJlcm1lcmlrLlxuIgorIklrdXMgJXMgLS1saWNlbmNlIHhlaGV0YXN1biBnZWhpYWdvIGl6YXRla28uXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNzIgZHNlbGVjdC9tYWluLmNjOjIyMAorbXNnaWQgIjxzdGFuZGFyZCBvdXRwdXQ+IgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSBbPGFjdGlvbj4gLi4uXVxuIgorIlxuIgorbXNnc3RyICIiCisiRXJhYmlsZXJhOiAlcyBbPGF1a2VyYT4gLi4uXSBbPGF1a2VyYT4gLi4uXVxuIgorIlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTg3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMuXG4iCisiICAtLWV4cGVydCAgICAgICAgICAgICAgICAgICBUdXJuIG9uIGV4cGVydCBtb2RlLlxuIgorIiAgLS1kZWJ1ZyA8ZmlsZT4gfCAtRDxmaWxlPiAgVHVybiBvbiBkZWJ1Z2dpbmcsIHNlbmRpbmcgb3V0cHV0IHRvIDxmaWxlPi5cbiIKKyIgIC0tY29sb3VyIHwgLS1jb2xvciBzY3JlZW5wYXJ0Oltmb3JlZ3JvdW5kXSxbYmFja2dyb3VuZF1bOmF0dHJbK2F0dHIrLi5dXVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ29uZmlndXJlIHNjcmVlbiBjb2xvdXJzLlxuIgorIlxuIgorbXNnc3RyICIiCisiQXVrZXJhazpcbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVrdG9yaW9hPiAgIDxkaXJla3RvcmlvYT4gZXJhYmlsaSAlcyBiZWhhcnJlYW4uXG4iCisiICAtLWV4cGVydCAgICAgICAgICAgICAgICAgICBNb2R1IGF1cnJlcmF0dXJhIHBhc2EuXG4iCisiICAtLWRlYnVnIDxmaXR4PiB8IC1EPGZpdHg+ICBBcmF6cGVuYSBnYWl0dSBpcnRlZXJhIDxmaXR4YXRlZ2lhPi1yYSAiCisiYmlkYWxpei5cbiIKKyIgIC0tY29sb3VyIHwgLS1jb2xvciBzY3JlZW5wYXJ0Oltmb3JlZ3JvdW5kXSxbYmFja2dyb3VuZF1bOmF0dHJbK2F0dHIrLi5dXVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUGFudGFpbGEga29sb3JlYWsga29uZmlndXJhdHUuXG4iCisiXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxOTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgICBTaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorbXNnc3RyICIiCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgICBMYWd1bnR6YSB0ZXN0dSBoYXUgYmlzdGFyYXppLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICAgQmVydHNpb2EgYmlzdGFyYXppLlxuIgorIiAgLS1saWNlbnNlICAgICAgICAgICAgICAgICAgTGl6ZW50emlhIGJpc3RhcmF6aS5cbiIKKyJcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjIwMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQWN0aW9uczpcbiIKKyIgIGFjY2VzcyB1cGRhdGUgc2VsZWN0IGluc3RhbGwgY29uZmlnIHJlbW92ZSBxdWl0XG4iCisiXG4iCittc2dzdHIgIiIKKyJFa2ludHphazpcbiIKKyIgIGFjY2VzcyB1cGRhdGUgc2VsZWN0IGluc3RhbGwgY29uZmlnIHJlbW92ZSBxdWl0XG4iCisiXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2NyZWVucGFydHM6XG4iCittc2dzdHIgIlBhbnRhaWxhLXphdGlhazpcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjIxMAorIywgYy1mb3JtYXQKK21zZ2lkICJDb2xvdXJzOlxuIgorbXNnc3RyICJLb2xvcmVhazpcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjIxNQorIywgYy1mb3JtYXQKK21zZ2lkICJBdHRyaWJ1dGVzOlxuIgorbXNnc3RyICJBdHJpYnV0dWFrOlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjMzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkbid0IG9wZW4gZGVidWcgZmlsZSBgJS4yNTVzJ1xuIgorbXNnc3RyICJlemluIGl6YW4gZGEgYCUuMjU1cycgYXJhemtldGEtZml0eGF0ZWdpYSBpcmVraVxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjUzCisjLCBjLWZvcm1hdAorbXNnaWQgIkludmFsaWQgJXMgYCVzJ1xuIgorbXNnc3RyICIlcyBgJXMnIGJhbGlvZ2FiZWFcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjI3MAorbXNnaWQgInNjcmVlbiBwYXJ0IgorbXNnc3RyICJwYW50YWlsYS16YXRpYSIKKworIzogZHNlbGVjdC9tYWluLmNjOjI3NgorbXNnaWQgIk51bGwgY29sb3VyIHNwZWNpZmljYXRpb25cbiIKK21zZ3N0ciAiS29sb3JlLXplaGF6dGFwZW4gbnVsdWFcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjI4NCBkc2VsZWN0L21haW4uY2M6Mjg5Cittc2dpZCAiY29sb3VyIgorbXNnc3RyICJrb2xvcmVhIgorCisjOiBkc2VsZWN0L21haW4uY2M6Mjk3Cittc2dpZCAiY29sb3VyIGF0dHJpYnV0ZSIKK21zZ3N0ciAia29sb3JlLWF0cmlidXR1YSIKKworIzogZHNlbGVjdC9tYWluLmNjOjMyOQorbXNnaWQgIlRlcm1pbmFsIGRvZXMgbm90IGFwcGVhciB0byBzdXBwb3J0IGN1cnNvciBhZGRyZXNzaW5nLlxuIgorbXNnc3RyICJCYWRpcnVkaSB0ZXJtaW5hbGFrIGV6IGR1ZWxhIG9uYXJ0emVuIGt1cnRzb3JlLWhlbGJpZGVyYXR6ZXJpay5cbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjMzMQorbXNnaWQgIlRlcm1pbmFsIGRvZXMgbm90IGFwcGVhciB0byBzdXBwb3J0IGhpZ2hsaWdodGluZy5cbiIKK21zZ3N0ciAiQmFkaXJ1ZGkgdGVybWluYWxhayBleiBkdWVsYSBvbmFydHplbiBuYWJhcm1lbnR6ZWEuXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzozMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlNldCB5b3VyIFRFUk0gdmFyaWFibGUgY29ycmVjdGx5LCB1c2UgYSBiZXR0ZXIgdGVybWluYWwsXG4iCisib3IgbWFrZSBkbyB3aXRoIHRoZSBwZXItcGFja2FnZSBtYW5hZ2VtZW50IHRvb2wgJXMuXG4iCittc2dzdHIgIiIKKyJFemFycmkgb25kbyBURVJNIGFsZGFnYWlhLCBlcmFiaWxpIHRlcm1pbmFsIGhvYmUgYmF0LFxuIgorImVkbyBtb2xkYXR1IHBha2V0ZXogcGFrZXRlIGt1ZGVhdHpla28gJXMgdHJlc25hcmVraW4gLlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MzM2Cittc2dpZCAidGVybWluYWwgbGFja3MgbmVjZXNzYXJ5IGZlYXR1cmVzLCBnaXZpbmcgdXAiCittc2dzdHIgInRlcm1pbmFsYWsgYmVoYXJyZXprbyBlZ2luYmlkZSBiYXR6dWsgZmFsdGEgZGl0dSwgdXR6aSBlZ2luZ28gZGEiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzo0MTcKK21zZ2lkICIiCisiXG4iCisiXG4iCisiTW92ZSBhcm91bmQgd2l0aCBeUCBhbmQgXk4sIGN1cnNvciBrZXlzLCBpbml0aWFsIGxldHRlcnMsIG9yIGRpZ2l0cztcbiIKKyJQcmVzcyA8ZW50ZXI+IHRvIGNvbmZpcm0gc2VsZWN0aW9uLiAgIF5MIHJlZHJhd3Mgc2NyZWVuLlxuIgorIlxuIgorbXNnc3RyICIiCisiXG4iCisiXG4iCisiTXVnaXR6ZWtvLCBlcmFiaWxpIF5QIGV0YSBeTiwga3VydHNvcmUtdGVrbGFrLCBoYXNpZXJha28gbGV0cmFrLCBlZG8gIgorImRpZ2l0dWFrO1xuIgorIkhhdXRhdHpla28sIHNha2F0dSA8c2FydHU+LiBFcmFiaWxpIF5MIHBhbnRhaWxhIGJlcnJpcm8gbWFycmF6dGVrby5cbiIKKyJcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjQyOAorbXNnaWQgIiIKKyJcbiIKKyJcbiIKKyJSZWFkLW9ubHkgYWNjZXNzOiBvbmx5IHByZXZpZXcgb2Ygc2VsZWN0aW9ucyBpcyBhdmFpbGFibGUhIgorbXNnc3RyICIiCisiXG4iCisiXG4iCisiU29pbGlrIGlyYWt1cnR6ZWtvIHNhcmJpZGVhOiBoYXV0YXBlbmVuIGF1cnJlYmlzdGEgYmFrYXJyaWsgZGFnbyBlcmFiaWxnYXJyaSEiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzo0NDgKK21zZ2lkICJmYWlsZWQgdG8gZ2V0Y2ggaW4gbWFpbiBtZW51IgorbXNnc3RyICJnZXRjaDogaHV0cyBlZ2luIGR1IG1lbnUgbmFndXNpYW4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzo1MzEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBhY3Rpb24gc3RyaW5nIGAlLjUwcyciCittc2dzdHIgImAlLjUwcycgZWtpbnR6YS1rYXRlIGV6ZXphZ3VuYSIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzo3NworbXNnaWQgImRzZWxlY3QgLSBsaXN0IG9mIGFjY2VzcyBtZXRob2RzIgorbXNnc3RyICJkc2VsZWN0IC0gYXR6aXBlbi1tZXRvZG9lbiB6ZXJyZW5kYSIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzo4NgorIywgYy1mb3JtYXQKK21zZ2lkICJBY2Nlc3MgbWV0aG9kIGAlcycuIgorbXNnc3RyICJgJXMnIGF0emlwZW4tbWV0b2RvYS4iCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTIwCittc2dpZCAiQWJicmV2LiIKK21zZ3N0ciAiTGFidXJkLiIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxMjEgZHNlbGVjdC9wa2dpbmZvLmNjOjEwNSBkc2VsZWN0L3BrZ3RvcC5jYzoyOTEKK21zZ2lkICJEZXNjcmlwdGlvbiIKK21zZ3N0ciAiQXphbHBlbmEiCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTY0IGRzZWxlY3QvcGtnbGlzdC5jYzo1NzIKK21zZ2lkICJkb3VwZGF0ZSBmYWlsZWQiCittc2dzdHIgImRvdXBkYXRlOiBodXRzIGVnaW4gZHUiCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTY2IGRzZWxlY3QvcGtnbGlzdC5jYzo1NzUKK21zZ2lkICJmYWlsZWQgdG8gdW5ibG9jayBTSUdXSU5DSCIKK21zZ3N0ciAiaHV0cyBlZ2luIGR1IFNJR1dJTkNIIGRlc2Jsb2tlYXR6ZWFuIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjE3MCBkc2VsZWN0L3BrZ2xpc3QuY2M6NTgwCittc2dpZCAiZmFpbGVkIHRvIHJlLWJsb2NrIFNJR1dJTkNIIgorbXNnc3RyICJodXRzIGVnaW4gZHUgU0lHV0lOQ0ggYmlyYmxva2VhdHplYW4iCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTcxIGRzZWxlY3QvcGtnbGlzdC5jYzo1ODIKK21zZ2lkICJnZXRjaCBmYWlsZWQiCittc2dzdHIgImdldGNoOiBodXRzIGVnaW4gZHUiCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTg4Cittc2dpZCAiRXhwbGFuYXRpb24iCittc2dzdHIgIkF6YWxwZW5hIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjE5NworbXNnaWQgIk5vIGV4cGxhbmF0aW9uIGF2YWlsYWJsZS4iCittc2dzdHIgIkV6IGRhZ28gYXphbHBlbiBlcmFiaWxnYXJyaXJpay4iCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjY3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJcbiIKKyIlczogJXNcbiIKK21zZ3N0ciAiIgorIlxuIgorIlxuIgorIiVzOiAlc1xuIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzo3MAorbXNnaWQgIiIKKyJcbiIKKyJQcmVzcyA8ZW50ZXI+IHRvIGNvbnRpbnVlLiIKK21zZ3N0ciAiIgorIlxuIgorIkphcnJhaXR6ZWtvLCBzYWthdHUgPHNhcnR1Pi4iCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjE2MQorIywgYy1mb3JtYXQKK21zZ2lkICJQcmVzcyA8ZW50ZXI+IHRvIGNvbnRpbnVlLlxuIgorbXNnc3RyICJKYXJyYWl0emVrbywgc2FrYXR1IDxzYXJ0dT4uXG4iCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjE2MgorIywgZnV6enkKK21zZ2lkICI8c3RhbmRhcmQgZXJyb3I+IgorbXNnc3RyICJpZGF6a2V0YS1lcnJvcmVhIGVycm9yZSBlc3RhbmRhcnJlYW4iCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjE2NQorbXNnaWQgImVycm9yIHJlYWRpbmcgYWNrbm93bGVkZ2VtZW50IG9mIHByb2dyYW0gZmFpbHVyZSBtZXNzYWdlIgorbXNnc3RyICJlcnJvcmVhIHByb2dyYW1hLWh1dHNlZ2l0ZWFyZW4gbWV6dWFyZW4gYWRpZXJhenBlbmEgaXJha3VydHplYW4iCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjE5NgorbXNnaWQgInVwZGF0ZSBhdmFpbGFibGUgbGlzdCBzY3JpcHQiCittc2dzdHIgImVyYWJpbGdhcnJpLXplcnJlbmRhIGVndW5lcmF0emVrbyBzY3JpcHQtYSIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MjAwCittc2dpZCAiaW5zdGFsbGF0aW9uIHNjcmlwdCIKK21zZ3N0ciAiaW5zdGFsYXppb2FyZW4gc2NyaXB0LWEiCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjI0NgorbXNnaWQgInF1ZXJ5L3NldHVwIHNjcmlwdCIKK21zZ3N0ciAia29udHN1bHRhcmVuL2luc3RhbGF6aW9hcmVuIHNjcmlwdC1hIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzo1MworIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gbWV0aG9kIG9wdGlvbnMgZmlsZSBgJS4yNTBzJyAtLSAlcyIKK21zZ3N0ciAic2ludGF4aS1lcnJvcmVhIG1ldG9kby1hdWtlcmVuIGZpdHhhdGVnaWFuOiBgJS4yNTBzJyAtLSAlcyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcmVhZGluZyBvcHRpb25zIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImVycm9yZWEgYCUuMjUwcycgYXVrZXJlbiBmaXR4YXRlZ2lhIGlyYWt1cnR6ZWFuIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzo5MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBgJS4yNTBzJyBkaXJlY3RvcnkgZm9yIHJlYWRpbmcgbWV0aG9kcyIKK21zZ3N0ciAiZXppbiBkYSBpcmFrdXJyaSBgJS4yNTBzJyBkaXJla3RvcmlvYSBpcmFrdXJrZXRhLW1ldG9kb2V0YW4iCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjEwNgorIywgYy1mb3JtYXQKK21zZ2lkICJtZXRob2QgYCUuMjUwcycgaGFzIG5hbWUgdGhhdCBpcyB0b28gbG9uZyAoJWQgPiAlZCBjaGFyYWN0ZXJzKSIKK21zZ3N0ciAiYCUuMjUwcycgbWV0b2RvYWsgaXplbiBsdXplZWdpYSBkYXVrYSAoJWQgPiAlZCBrYXJha3RlcmUpIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGFjY2VzcyBtZXRob2Qgc2NyaXB0IGAlLjI1MHMnIgorbXNnc3RyICJlemluIGRhIGF0eml0dSBgJS4yNTBzJyBtZXRvZG9hcmVuIHNjcmlwdC1hIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgbWV0aG9kIG9wdGlvbnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiZXppbiBkYSBpcmFrdXJyaSBgJS4yNTBzJyBtZXRvZG8tYXVrZXJlbiBmaXR4YXRlZ2lhIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNDcKK21zZ2lkICJub24tZGlnaXQgd2hlcmUgZGlnaXQgd2FudGVkIgorbXNnc3RyICJkaWdpdHVhayBleiBkaXJlbmFrIGRpZ2l0dWFrIGJlaGFyIGRpcmVuIGxla3VhbiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTUwCittc2dpZCAiRU9GIGluIGluZGV4IHN0cmluZyIKK21zZ3N0ciAiRU9GIGluZGl6ZS1rYXRlYW4iCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE1MworbXNnaWQgImluZGV4IHN0cmluZyB0b28gbG9uZyIKK21zZ3N0ciAiaW5kaXplLWthdGUgbHV6ZWVnaWEiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE1NgorbXNnaWQgIm5ld2xpbmUgYmVmb3JlIG9wdGlvbiBuYW1lIHN0YXJ0IgorbXNnc3RyICJsZXJyby1qYXV6aWEgYXVrZXJhLWl6ZW5hcmVuIGhhc2llcmFyZW4gYXVycmV0aWsiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE1OAorbXNnaWQgIkVPRiBiZWZvcmUgb3B0aW9uIG5hbWUgc3RhcnQiCittc2dzdHIgIkVPRiBhdWtlcmEtaXplbmFyZW4gaGFzaWVyYXJlbiBhdXJyZXRpayIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTYyCittc2dpZCAibm9uYWxwaGEgd2hlcmUgb3B0aW9uIG5hbWUgc3RhcnQgd2FudGVkIgorbXNnc3RyICJhbGZhbnVtZXJpa29hayBleiBkaXJlbmFrIGF1a2VyYS1pemVuYXJlbiBoYXNpZXJhIG5haGkgemVuZWFuIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNjQKK21zZ2lkICJub24tYWxwaGFudW0gaW4gb3B0aW9uIG5hbWUiCittc2dzdHIgImFsZmFudW1lcmlrb2FrIGV6IGRpcmVuYWsgYXVrZXJhLWl6ZW5lYW4iCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE2NworbXNnaWQgIkVPRiBpbiBvcHRpb24gbmFtZSIKK21zZ3N0ciAiRU9GIGF1a2VyYS1pemVuZWFuIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNzIKK21zZ2lkICJuZXdsaW5lIGJlZm9yZSBzdW1tYXJ5IgorbXNnc3RyICJsZXJyby1qYXV6aWEgbGFidXJwZW5hcmVuIGF1cnJldGlrIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNzQKK21zZ2lkICJFT0YgYmVmb3JlIHN1bW1hcnkiCittc2dzdHIgIkVPRiBsYWJ1cnBlbmFyZW4gYXVycmV0aWsiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE4MAorbXNnaWQgIkVPRiBpbiBzdW1tYXJ5IC0gbWlzc2luZyBuZXdsaW5lIgorbXNnc3RyICJFT0YgbGFidXJwZW5lYW4gLSBsZXJyby1qYXV6aWEgZmFsdGEgZGEiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE5MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBvcHRpb24gZGVzY3JpcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiZXppbiBkYSBpcmVraSBhdWtlcmVuIGF6YWxwZW5la28gYCUuMjUwcycgZml0eGF0ZWdpYSIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTk0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IG9wdGlvbiBkZXNjcmlwdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJlemluIGRhIGF0eml0dSBhdWtlcmVuIGF6YWxwZW5la28gYCUuMjUwcycgZml0eGF0ZWdpYSIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTk4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZWFkIG9wdGlvbiBkZXNjcmlwdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJlemluIGRhIGlyYWt1cnJpIGF1a2VyZW4gYXphbHBlbmVrbyBgJS4yNTBzJyBmaXR4YXRlZ2lhIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgZHVyaW5nIHJlYWQgb2Ygb3B0aW9uIGRlc2NyaXB0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImVycm9yZWEgYXVrZXJlbiBhemFscGVuZWtvIGAlLjI1MHMnIGZpdHhhdGVnaWEgaXJha3VydHplYW4iCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjIyNAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBkdXJpbmcgcmVhZCBvZiBtZXRob2Qgb3B0aW9ucyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJlcnJvcmVhIG1ldG9kby1hdWtlcmVuIGAlLjI1MHMnIGZpdHhhdGVnaWEgaXJha3VydHplYW4iCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjI0NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBjdXJyZW50IG9wdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJlemluIGRhIGlyZWtpIGF1a2VyZW4gYXphbHBlbmVrbyBgJS4yNTBzJyBmaXR4YXRlZ2lhIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyODkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gbmV3IG9wdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJlemluIGRhIGlyZWtpIGAlLjI1MHMnIGF1a2VyYS1maXR4YXRlZ2kgYmVycmlhIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ldyBvcHRpb24gdG8gYCUuMjUwcyciCittc2dzdHIgImV6aW4gZGEgaWRhdHppIGF1a2VyYSBiZXJyaWE6IGAlLjI1MHMnIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyOTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIG5ldyBvcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiZXppbiBkYSBpdHhpIGAlLjI1MHMnIGF1a2VyYS1maXR4YXRlZ2kgYmVycmlhIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyOTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IG9wdGlvbiBhcyBgJS4yNTBzJyIKK21zZ3N0ciAiZXppbiBkYSBpbnN0YWxhdHUgYXVrZXJhIGJlcnJpYSBgJS4yNTBzJyBnaXNhIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MzYKK21zZ2lkICJuZXcgcGFja2FnZSIKK21zZ3N0ciAicGFrZXRlIGJlcnJpYSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjM3Cittc2dpZCAiaW5zdGFsbCIKK21zZ3N0ciAiaW5zdGFsYXR1IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MzgKK21zZ2lkICJob2xkIgorbXNnc3RyICJhdHhpa2kiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzozOQorbXNnaWQgInJlbW92ZSIKK21zZ3N0ciAia2VuZHUiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo0MAorbXNnaWQgInB1cmdlIgorbXNnc3RyICJwdXJnYXR1IgorCisjLiBUUkFOU0xBVE9SUzogVGhlIHNwYWNlIGlzIGEgdHJpY2sgdG8gd29yayBhcm91bmQgZ2V0dGV4dCB3aGljaCB1c2VzCisjLiAqIHRoZSBlbXB0eSBzdHJpbmcgdG8gc3RvcmUgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHRyYW5zbGF0aW9uLiBETyBOT1QKKyMuICogQ0hBTkdFIFRIQVQgSU4gQSBUUkFOU0xBVElPTiEgVGhlIGNvZGUgcmVhbGx5IHJlbGllcyBvbiB0aGF0IGJlaW5nCisjLiAqIGEgc2luZ2xlIHNwYWNlLgorIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjQ3Cittc2dpZCAiICIKK21zZ3N0ciAiICIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjQ4Cittc2dpZCAiUkVJTlNUQUxMIgorbXNnc3RyICJCRVJSSU5TVEFMQVRVIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTEKK21zZ2lkICJub3QgaW5zdGFsbGVkIgorbXNnc3RyICJpbnN0YWxhdHUgZ2FiZSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjUyCittc2dpZCAicmVtb3ZlZCAoY29uZmlncyByZW1haW4pIgorbXNnc3RyICJrZW5kdXRhIChrb25maWd1cmF0emVhIGZhbHRhIGRhKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjUzCittc2dpZCAiaGFsZiBpbnN0YWxsZWQiCittc2dzdHIgImVyZGktaW5zdGFsYXR1dGEiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1NAorbXNnaWQgInVucGFja2VkIChub3Qgc2V0IHVwKSIKK21zZ3N0ciAiZGVza29ucHJpbWl0dXRhIChrb25maWd1cmF0dSBnYWJlKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjU1Cittc2dpZCAiaGFsZiBjb25maWd1cmVkIChjb25maWcgZmFpbGVkKSIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTYKK21zZ2lkICJhd2FpdGluZyB0cmlnZ2VyIHByb2Nlc3NpbmciCittc2dzdHIgImFiaWFyYXpsZSBwcm96ZXNhdHplYSBpdHhvaXRlbiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjU3Cittc2dpZCAidHJpZ2dlcmVkIgorbXNnc3RyICJhYmlhcmF6aWEiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1OAorbXNnaWQgImluc3RhbGxlZCIKK21zZ3N0ciAiaW5zdGFsYXR1dGEiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo2MQorbXNnaWQgIlJlcXVpcmVkIgorbXNnc3RyICJCZWhhcnJlemtvYSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjYyCittc2dpZCAiSW1wb3J0YW50IgorbXNnc3RyICJHYXJyYW50eml6a29hIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjMKK21zZ2lkICJTdGFuZGFyZCIKK21zZ3N0ciAiRXN0YW5kYXJyYSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjY0Cittc2dpZCAiT3B0aW9uYWwiCittc2dzdHIgIkF1a2VyYWtvYSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjY1Cittc2dpZCAiRXh0cmEiCittc2dzdHIgIkVzdHJhIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjYKK21zZ2lkICIhQnVnISIKK21zZ3N0ciAiUHJvZ3JhbWEtZXJyb3JlYSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjY3Cittc2dpZCAiVW5jbGFzc2lmaWVkIgorbXNnc3RyICJTYWlsa2F0dSBnYWJlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzAKK21zZ2lkICJzdWdnZXN0cyIKK21zZ3N0ciAiaGF1IGlyYWRva2l0emVuIGR1OiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjcxCittc2dpZCAicmVjb21tZW5kcyIKK21zZ3N0ciAiaGF1IGdvbWVuZGF0emVuIGR1OiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjcyCittc2dpZCAiZGVwZW5kcyBvbiIKK21zZ3N0ciAiaG9uZW4gbWVuZGVrb2EgZGE6IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzMKK21zZ2lkICJwcmUtZGVwZW5kcyBvbiIKK21zZ3N0ciAiaG9uZW4gYXVycmVtZW5kZWtvYSBkYToiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3NAorbXNnaWQgImJyZWFrcyIKK21zZ3N0ciAiaGF1IGhvbmRhdHplbiBkdTogIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzUKK21zZ2lkICJjb25mbGljdHMgd2l0aCIKK21zZ3N0ciAiZ2F0YXprYW4gZGFnbyBob25la2luOiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjc2Cittc2dpZCAicHJvdmlkZXMiCittc2dzdHIgImhhdSBob3JuaXR6ZW4gZHU6IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzcKK21zZ2lkICJyZXBsYWNlcyIKK21zZ3N0ciAiaGF1IG9yZGV6dGVuIGR1OiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjc4Cittc2dpZCAiZW5oYW5jZXMiCittc2dzdHIgImhhdSBob2JldHplbiBkdToiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4MQorbXNnaWQgIlJlcSIKK21zZ3N0ciAiQmVoLiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjgyCittc2dpZCAiSW1wIgorbXNnc3RyICJHYXIuIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODMKK21zZ2lkICJTdGQiCittc2dzdHIgIkVzdGQuIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODQKK21zZ2lkICJPcHQiCittc2dzdHIgIkF1ay4iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4NQorbXNnaWQgIlh0ciIKK21zZ3N0ciAiWHRyIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODYKK21zZ2lkICJiVUciCittc2dzdHIgInBFUiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjg3Cittc2dpZCAiPyIKK21zZ3N0ciAiPyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjk1IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTUKK21zZ2lkICJCcm9rZW4iCittc2dzdHIgIkhhdXRzaXRhIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6OTYKK21zZ2lkICJOZXciCittc2dzdHIgIkJlcnJpYSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjk3Cittc2dpZCAiVXBkYXRlZCIKK21zZ3N0ciAiRWd1bmVyYXR1dGEiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo5OAorbXNnaWQgIk9ic29sZXRlL2xvY2FsIgorbXNnc3RyICJaYWhhcmtpdHVhL2xva2FsYSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjk5Cittc2dpZCAiVXAtdG8tZGF0ZSIKK21zZ3N0ciAiRWd1bmVyYXR1dGEiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDAKK21zZ2lkICJBdmFpbGFibGUiCittc2dzdHIgIkVyYWJpbGdhcnJpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTAxIGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTcKK21zZ2lkICJSZW1vdmVkIgorbXNnc3RyICJLZW5kdXRhIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTAyIGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTEKK21zZ2lkICJCcm9rZW5seSBpbnN0YWxsZWQgcGFja2FnZXMiCittc2dzdHIgIkdhaXpraSBpbnN0YWxhdHV0YWtvIHBha2V0ZWFrIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTAzCittc2dpZCAiTmV3bHkgYXZhaWxhYmxlIHBhY2thZ2VzIgorbXNnc3RyICJQYWtldGUgZXJhYmlsZ2FycmkgYmVycmlhayIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwNAorbXNnaWQgIlVwZGF0ZWQgcGFja2FnZXMgKG5ld2VyIHZlcnNpb24gaXMgYXZhaWxhYmxlKSIKK21zZ3N0ciAiRWd1bmVyYXR1dGFrbyBwYWtldGVhayAoYmVydHNpbyBiZXJyaWFnbyBiYXQgZXJhYmlsZ2FycmkgZGFnbykiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDUKK21zZ2lkICJPYnNvbGV0ZSBhbmQgbG9jYWwgcGFja2FnZXMgcHJlc2VudCBvbiBzeXN0ZW0iCittc2dzdHIgIlNpc3RlbWFuIGRhdWRlbiBwYWtldGUgemFoYXJraXR1YWsgZXRhIGxva2FsYWsiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDYKK21zZ2lkICJVcCB0byBkYXRlIGluc3RhbGxlZCBwYWNrYWdlcyIKK21zZ3N0ciAiRWd1bmVyYSBkYXVkZW4gaW5zdGFsYXR1dGFrbyBwYWtldGVhayAoZXogZGFnbyBiZXJ0c2lvIGJlcnJpYWdvcmlrKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwNworbXNnaWQgIkF2YWlsYWJsZSBwYWNrYWdlcyAobm90IGN1cnJlbnRseSBpbnN0YWxsZWQpIgorbXNnc3RyICJQYWtldGUgZXJhYmlsZ2FycmlhayAoZXogZGF1ZGUgaW5zdGFsYXR1dGEpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTA4Cittc2dpZCAiUmVtb3ZlZCBhbmQgbm8gbG9uZ2VyIGF2YWlsYWJsZSBwYWNrYWdlcyIKK21zZ3N0ciAiS2VuZHUgZGlyZW4gZXRhIG9yYWluIGVyYWJpbGdhcnJpIGV6IGRhdWRlbiBwYWtldGVhayIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExMgorbXNnaWQgIkluc3RhbGxlZCBwYWNrYWdlcyIKK21zZ3N0ciAiSW5zdGFsYXR1dGFrbyBwYWtldGVhayIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExMworbXNnaWQgIlJlbW92ZWQgcGFja2FnZXMgKGNvbmZpZ3VyYXRpb24gc3RpbGwgcHJlc2VudCkiCittc2dzdHIgIktlbmR1dGFrbyBwYWtldGVhayAoa29uZmlndXJhemlvYSBiYWRhZ28gb3JhaW5kaWspIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTE0Cittc2dpZCAiUHVyZ2VkIHBhY2thZ2VzIGFuZCB0aG9zZSBuZXZlciBpbnN0YWxsZWQiCittc2dzdHIgIlB1cmdhdHV0YWtvIHBha2V0ZWFrIGV0YSBpbm9peiBpbnN0YWxhdHUgZXogZGlyZW5hayIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExNgorbXNnaWQgIkluc3RhbGxlZCIKK21zZ3N0ciAiSW5zdGFsYXR1dGEiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTgKK21zZ2lkICJQdXJnZWQiCittc2dzdHIgIlB1cmdhdHV0YSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjE5OAorbXNnaWQgImRzZWxlY3QgLSByZWN1cnNpdmUgcGFja2FnZSBsaXN0aW5nIgorbXNnc3RyICJkc2VsZWN0IC0gcGFrZXRlZW4gemVycmVuZGEgZXJyZWt1cnRzaWJvYSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjE5OQorbXNnaWQgImRzZWxlY3QgLSBpbnNwZWN0aW9uIG9mIHBhY2thZ2Ugc3RhdGVzIgorbXNnc3RyICJkc2VsZWN0IC0gcGFrZXRlLWVnb2VyYXJlbiBlZ2lhenRhcGVuYSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIwMAorbXNnaWQgImRzZWxlY3QgLSBtYWluIHBhY2thZ2UgbGlzdGluZyIKK21zZ3N0ciAiZHNlbGVjdCAtIHBha2V0ZWVuIHplcnJlbmRhIG5hZ3VzaWEiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMDgKK21zZ2lkICIgKGJ5IHNlY3Rpb24pIgorbXNnc3RyICIgKHNla3ppb2FyZW4gYXJhYmVyYSkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMTEKK21zZ2lkICIgKGF2YWlsLiwgc2VjdGlvbikiCittc2dzdHIgIiAoZXJhYmlsZy4sIHNla3ppb2EpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjE0Cittc2dpZCAiIChzdGF0dXMsIHNlY3Rpb24pIgorbXNnc3RyICIgKGVnb2VyYSwgc2VremlvYSkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMjMKK21zZ2lkICIgKGJ5IHByaW9yaXR5KSIKK21zZ3N0ciAiIChsZWhlbnRhc3VuYXJlbiBhcmFiZXJhKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIyNgorbXNnaWQgIiAoYXZhaWwuLCBwcmlvcml0eSkiCittc2dzdHIgIiAoZXJhYmlsZy4sIGxlaGVudGFzdW5hKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIyOQorbXNnaWQgIiAoc3RhdHVzLCBwcmlvcml0eSkiCittc2dzdHIgIiAoZWdvZXJhLCBsZWhlbnRhc3VuYSkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMzggZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI1MAorbXNnaWQgIiAoYWxwaGFiZXRpY2FsbHkpIgorbXNnc3RyICIgKGFsZmFiZXRpa29raSkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNDEKK21zZ2lkICIgKGJ5IGF2YWlsYWJpbGl0eSkiCittc2dzdHIgIiAoZXJhYmlsZ2Fycml0YXN1bmFyZW4gYXJhYmVyYSkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNDQKK21zZ2lkICIgKGJ5IHN0YXR1cykiCittc2dzdHIgIiAoZWdvZXJhcmVuIGFyYWJlcmEpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjU4Cittc2dpZCAiIG1hcms6Ky89Ly0gdGVyc2U6diBoZWxwOj8iCittc2dzdHIgIiBtYXJrYTorLz0vLSBsYWJ1cjp2IGxhZ3VudHphOj8iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNTkKK21zZ2lkICIgbWFyazorLz0vLSB2ZXJib3NlOnYgaGVscDo/IgorbXNnc3RyICIgbWFya2E6Ky89Ly0geGVoZWtpOnYgbGFndW50emE6PyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI2MAorbXNnaWQgIiB0ZXJzZTp2IGhlbHA6PyIKK21zZ3N0ciAiIGxhYnVyOnYgbGFndW50emE6PyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI2MQorbXNnaWQgIiB2ZXJib3NlOnYgaGVscDo/IgorbXNnc3RyICIgeGVoZWtpOnYgbGFndW50emE6PyIKKworIzogZHNlbGVjdC9wa2dpbmZvLmNjOjgwCittc2dpZCAiIgorIlRoZSBsaW5lIHlvdSBoYXZlIGhpZ2hsaWdodGVkIHJlcHJlc2VudHMgbWFueSBwYWNrYWdlczsgaWYgeW91IGFzayB0byAiCisiaW5zdGFsbCwgcmVtb3ZlLCBob2xkLCBldGMuIGl0IHlvdSB3aWxsIGFmZmVjdCBhbGwgdGhlIHBhY2thZ2VzIHdoaWNoIG1hdGNoICIKKyJ0aGUgY3JpdGVyaW9uIHNob3duLlxuIgorIlxuIgorIklmIHlvdSBtb3ZlIHRoZSBoaWdobGlnaHQgdG8gYSBsaW5lIGZvciBhIHBhcnRpY3VsYXIgcGFja2FnZSB5b3Ugd2lsbCBzZWUgIgorImluZm9ybWF0aW9uIGFib3V0IHRoYXQgcGFja2FnZSBkaXNwbGF5ZWQgaGVyZS5cbiIKKyJZb3UgY2FuIHVzZSBgbycgYW5kIGBPJyB0byBjaGFuZ2UgdGhlIHNvcnQgb3JkZXIgYW5kIGdpdmUgeW91cnNlbGYgdGhlICIKKyJvcHBvcnR1bml0eSB0byBtYXJrIHBhY2thZ2VzIGluIGRpZmZlcmVudCBraW5kcyBvZiBncm91cHMuIgorbXNnc3RyICIiCisiTmFiYXJtZW5kdSBkdXp1biBsZXJyb2FrIGhhaW5iYXQgcGFrZXRlIGFkaWVyYXp0ZW4gZGl0dTsgaW5zdGFsYXR6ZWtvLCAiCisia2VudHpla28gZWRvIGF0eGlraXR6ZWtvIGVza2F0dXogZ2VybywgZXJha3V0c2l0YWtvIGlyaXpwaWRlYXJla2luIGJhdCAiCisiZGF0b3plbiBwYWtldGUgZ3V6dGlla2luIGVnaW5nbyBkYS5cbiIKKyJcbiIKKyJOYWJhcm1lbnR6ZWEgcGFrZXRlIGpha2luIGJhdGVrbyBsZXJybyBiYXRlcmEgZXJhbWF0ZW4gYmFkdXp1LCBwYWtldGUgaG9ycmkgIgorImJ1cnV6a28gaW5mb3JtYXppb2EgaGVtZW4gYmlzdGFyYXR1a28gZGEuXG4iCisiRXJhYmlsaSBgbycgZXRhIGBPJyBvcmRlbmEgYWxkYXR6ZWtvIGV0YSBhdWtlcmEgaXphdGVrbyB0YWxkZS1tb3RhICIKKyJkZXNiZXJkaW5ldGFrbyBwYWtldGVhayBtYXJrYXR6ZWtvLiIKKworIzogZHNlbGVjdC9wa2dpbmZvLmNjOjkzCittc2dpZCAiSW50ZXJyZWxhdGlvbnNoaXBzIgorbXNnc3RyICJpbnRlcnJlbGF6aW9hayIKKworIzogZHNlbGVjdC9wa2dpbmZvLmNjOjExMgorbXNnaWQgIk5vIGRlc2NyaXB0aW9uIGF2YWlsYWJsZS4iCittc2dzdHIgIkV6IGRhZ28gYXphbHBlbiBlcmFiaWxnYXJyaXJpay4iCisKKyM6IGRzZWxlY3QvcGtnaW5mby5jYzoxMzAKK21zZ2lkICJJbnN0YWxsZWQgY29udHJvbCBmaWxlIGluZm9ybWF0aW9uIgorbXNnc3RyICJpbnN0YWxhdHV0YWtvIGtvbnRyb2wgZml0eGF0ZWdpYXJlbiBpbmZvcm1hemlvYSIKKworIzogZHNlbGVjdC9wa2dpbmZvLmNjOjE0NgorbXNnaWQgIkF2YWlsYWJsZSBjb250cm9sIGZpbGUgaW5mb3JtYXRpb24iCittc2dzdHIgIktvbnRyb2wgZml0eGF0ZWdpYXJlbiBpbmZvcm1hemlvIGVyYWJpbGdhcnJpYSIKKworIzogZHNlbGVjdC9wa2dsaXN0LmNjOjQxNgorbXNnaWQgIlRoZXJlIGFyZSBubyBwYWNrYWdlcy4iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dsaXN0LmNjOjUwNworbXNnaWQgImludmFsaWQgc2VhcmNoIG9wdGlvbiBnaXZlbiIKK21zZ3N0ciAiYmlsYWtldGEtYXVrZXJhIGJhbGlvZ2FiZWEgZW1hbiBkYSIKKworIzogZHNlbGVjdC9wa2dsaXN0LmNjOjUyMQorbXNnaWQgImVycm9yIGluIHJlZ3VsYXIgZXhwcmVzc2lvbiIKK21zZ3N0ciAiZXJyb3JlYSBhZGllcmF6cGVuIGVycmVndWxhcnJlYW4iCisKKyM6IGRzZWxlY3QvcGtnc3VibGlzdC5jYzoxMDcKK21zZ2lkICIgZG9lcyBub3QgYXBwZWFyIHRvIGJlIGF2YWlsYWJsZVxuIgorbXNnc3RyICIgOiBleiBkaXJ1ZGkgZXJhYmlsZ2FycmkgZGFnb2VuaWtcbiIKKworIzogZHNlbGVjdC9wa2dzdWJsaXN0LmNjOjEyNworbXNnaWQgIiBvciAiCittc2dzdHIgIiBlZG8gIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo1NworbXNnaWQgIkFsbCIKK21zZ3N0ciAiRGVuYWsiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjc5Cittc2dpZCAiQWxsIHBhY2thZ2VzIgorbXNnc3RyICJQYWtldGUgZ3V6dGlhayIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcGFja2FnZXMgd2l0aG91dCBhIHNlY3Rpb24iCittc2dzdHIgIiVzIHBha2V0ZSBzZWt6aW9yaWsgZ2FiZSIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcGFja2FnZXMgaW4gc2VjdGlvbiAlcyIKK21zZ3N0ciAiJXMgcGFrZXRlICVzIHNla3ppb2FuIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo5MQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyAlcyBwYWNrYWdlcyIKK21zZ3N0ciAiJXMgJXMgcGFrZXRlYWsiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjk1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzICVzIHBhY2thZ2VzIHdpdGhvdXQgYSBzZWN0aW9uIgorbXNnc3RyICIlcyAlcyBwYWtldGUgc2VremlvcmlrIGdhYmUiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjk3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzICVzIHBhY2thZ2VzIGluIHNlY3Rpb24gJXMiCittc2dzdHIgIiVzICVzIHBha2V0ZSAlcyBzZWt6aW9hbiIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6MTE4CisjLCBjLWZvcm1hdAorbXNnaWQgIiUtKnMgJXMlcyVzOyAgJXMgKHdhczogJXMpLiAgJXMiCittc2dzdHIgIiUtKnMgJXMlcyVzOyAgJXMgKGxlaGVuOiAlcykuICAlcyIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6MjYzCittc2dpZCAiRXJyb3IiCittc2dzdHIgIkVycm9yZWEiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI2NworbXNnaWQgIkluc3RhbGxlZD8iCittc2dzdHIgIkluc3RhbGF0dXRhPyIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6MjcxCittc2dpZCAiT2xkIG1hcmsiCittc2dzdHIgIk1hcmthIHphaGFycmEiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI3NQorbXNnaWQgIk1hcmtlZCBmb3IiCittc2dzdHIgIkhvbmVsYSBtYXJrYXR1YToiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI3OAorbXNnaWQgIkVJT00iCittc2dzdHIgIkVJT00iCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI4MAorbXNnaWQgIlNlY3Rpb24iCittc2dzdHIgIlNla3ppb2EiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI4MQorbXNnaWQgIlByaW9yaXR5IgorbXNnc3RyICJMZWhlbnRhc3VuYSIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6MjgyCittc2dpZCAiUGFja2FnZSIKK21zZ3N0ciAiUGFrZXRlYSIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6Mjg2Cittc2dpZCAiSW5zdC52ZXIiCittc2dzdHIgIkluc3QuIGJlcnRzLiIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6Mjg5Cittc2dpZCAiQXZhaWwudmVyIgorbXNnc3RyICJCZXJ0cy4gZXJhYmlsZy4iCisKKyN+IG1zZ2lkICJyZXR1cm5lZCBlcnJvciBleGl0IHN0YXR1cyAlZC5cbiIKKyN+IG1zZ3N0ciAiaXJ0ZWVyYW4gJWQgZXJyb3JlLWtvZGVhIGVtYW4gZHUuXG4iCisKKyN+IG1zZ2lkICJ3YXMgaW50ZXJydXB0ZWQuXG4iCisjfiBtc2dzdHIgImV0ZW4gZWdpbiBkYS5cbiIKKworI34gbXNnaWQgIndhcyB0ZXJtaW5hdGVkIGJ5IGEgc2lnbmFsOiAlcy5cbiIKKyN+IG1zZ3N0ciAic2VpbmFsZSBiYXRla2luIGFtYWl0dSBkYTogJXMuXG4iCisKKyN+IG1zZ2lkICIoSXQgbGVmdCBhIGNvcmVkdW1wLilcbiIKKyN+IG1zZ3N0ciAiKGNvcmVkdW1wIGJhdCB1dHppIGR1LilcbiIKKworI34gbXNnaWQgImZhaWxlZCB3aXRoIGFuIHVua25vd24gd2FpdCByZXR1cm4gY29kZSAlZC5cbiIKKyN+IG1zZ3N0ciAiaHV0cyBlZ2luIGR1ICVkIGVtYWl0emEta29kZSBlemV6YWd1bmFyZWtpbi5cbiIKKworI34gbXNnaWQgInVuYWJsZSB0byBydW4gJS4yNTBzIHByb2Nlc3MgYCUuMjUwcyciCisjfiBtc2dzdHIgImV6aW4gZGEgZXhla3V0YXR1ICUuMjUwcyBwcm96ZXN1YSBgJS4yNTBzJyIKKworI34gbXNnaWQgImZhaWxlZCBjb25maWciCisjfiBtc2dzdHIgImh1dHMgZWdpbiBkdSBrb25maWd1cmF0emVhbiIKKworI34gbXNnaWQgInVuYWJsZSB0byB3YWl0IGZvciAlLjI1MHMiCisjfiBtc2dzdHIgImV6aW4gemFpbyBpdHhhcm9uICUuMjUwcyhyKWkiCisKKyN+IG1zZ2lkICJnb3Qgd3JvbmcgY2hpbGQncyBzdGF0dXMgLSBhc2tlZCBmb3IgJWxkLCBnb3QgJWxkIgorI34gbXNnc3RyICIiCisjfiAidW1lYXJlbiBlZ29lcmEgb2tlcnJhIGVza3VyYXR1IGRhIC0gJWxkIGVza2F0dSwgYmFpbmEgJWxkIGVza3VyYXR1IGRhIgorCisjfiBtc2dpZCAiUmVjb21tZW5kZWQiCisjfiBtc2dzdHIgIkdvbWVuZGF0dWEiCisKKyN+IG1zZ2lkICJDb250cmliIgorI34gbXNnc3RyICJDb250cmliIgorCisjfiBtc2dpZCAiUmVjIgorI34gbXNnc3RyICJHb20uIgorCisjfiBtc2dpZCAiQ3RiIgorI34gbXNnc3RyICJDdGIiCisKKyN+IG1zZ2lkICIiCisjfiAiYmFzZWxpc3Q6OnN0YXJ0ZGlzcGxheSgpIGRvbmUgLi4uXG4iCisjfiAiXG4iCisjfiAiIHhtYXg9JWQsIHltYXg9JWQ7XG4iCisjfiAiXG4iCisjfiAiIHRpdGxlX2hlaWdodD0lZCwgY29saGVhZHNfaGVpZ2h0PSVkLCBsaXN0X2hlaWdodD0lZDtcbiIKKyN+ICIgdGhpc3N0YXRlX2hlaWdodD0lZCwgaW5mb19oZWlnaHQ9JWQsIHdoYXRpbmZvX2hlaWdodD0lZDtcbiIKKyN+ICJcbiIKKyN+ICIgY29saGVhZHNfcm93PSVkLCB0aGlzc3RhdGVfcm93PSVkLCBpbmZvX3Jvdz0lZDtcbiIKKyN+ICIgd2hhdGluZm9fcm93PSVkLCBsaXN0X3Jvdz0lZDtcbiIKKyN+ICJcbiIKKyN+IG1zZ3N0ciAiIgorI34gImJhc2VsaXN0OjpzdGFydGRpc3BsYXkoKSBlZ2luZGEgLi4uXG4iCisjfiAiXG4iCisjfiAiIHhtYXg9JWQsIHltYXg9JWQ7XG4iCisjfiAiXG4iCisjfiAiIHRpdGxlX2hlaWdodD0lZCwgY29saGVhZHNfaGVpZ2h0PSVkLCBsaXN0X2hlaWdodD0lZDtcbiIKKyN+ICIgdGhpc3N0YXRlX2hlaWdodD0lZCwgaW5mb19oZWlnaHQ9JWQsIHdoYXRpbmZvX2hlaWdodD0lZDtcbiIKKyN+ICJcbiIKKyN+ICIgY29saGVhZHNfcm93PSVkLCB0aGlzc3RhdGVfcm93PSVkLCBpbmZvX3Jvdz0lZDtcbiIKKyN+ICIgd2hhdGluZm9fcm93PSVkLCBsaXN0X3Jvdz0lZDtcbiIKKyN+ICJcbiIKKworI34gbXNnaWQgIltub25lXSIKKyN+IG1zZ3N0ciAiW2JhdCBlcmUgZXpdIgorCisjfiBtc2dpZCAiZXJyb3IgdW4tY2F0Y2hpbmcgc2lnbmFsICVkOiAlc1xuIgorI34gbXNnc3RyICJlcnJvcmVhICVkIHNlaW5hbGVhIGhhcnJhcGF0dSBleiBkZWxha286ICVzXG4iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gaWdub3JlIHNpZ25hbCAlZCBiZWZvcmUgcnVubmluZyAlLjI1MHMiCisjfiBtc2dzdHIgImV6aW4gemFpbyBleiBpa3VzaSBlZ2luICVkIHNlaW5hbGVhcmkgJS4yNTBzIGV4ZWt1dGF0dSBhdXJyZXRpayIKKworI34gbXNnaWQgIihubyBjbGllbnRkYXRhKSIKKyN+IG1zZ3N0ciAiKGJlemVyb2FyaSBidXJ1emtvIGRhdHVyaWsgZXopIgorCisjfiBtc2dpZCAiPG51bGw+IgorI34gbXNnc3RyICI8bnVsdWE+IgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL2ZyLmdtbyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9mci5nbW8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjUxMGY5YgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9mci5nbW8KQmluYXJ5IGZpbGVzIGRpZmZlcgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL2ZyLnBvIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL2ZyLnBvCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjVmZGI1YzgKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vZnIucG8KQEAgLTAsMCArMSwxNzk1IEBACisjIHRyYW5zbGF0aW9uIG9mIGRzZWxlY3QgdG8gRnJlbmNoCisjIE1lc3NhZ2VzIGZyYW7Dp2FpcyBwb3VyIGRwa2cgKExpbnV4LUdOVSBEZWJpYW4pLgorIyBDb3B5cmlnaHQgKEMpIDE5OTcgQ2hyaXN0b3BoZSBMZSBCYXJzIDxjbGViYXJzQGRlYmlhbi5vcmc+LgorIyBDb3B5cmlnaHQgKEMpIDIwMDAgSsOpcsO0bWUgTWFyYW50IDxqZXJvbWUubWFyYW50QGZyZWUuZnI+CisjIENvcHlyaWdodCAoQykgMjAwMCwgMjAwMSwgMjAwMiBNYXJ0aW4gUXVpbnNvbiA8TWFydGluLlF1aW5zb25AdHV4ZmFtaWx5Lm9yZz4KKyMgQ29weXJpZ2h0IChDKSAyMDA1LTIwMDkgQ2hyaXN0aWFuIFBlcnJpZXIgPGJ1YnVsbGVAZGViaWFuLm9yZz4KKyMKKyMKKyMgIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIgorIyBOb3RlcyBkZSB0cmFkdWN0aW9uCisjIG1haW50YWluZXI6IHJlc3BvbnNhYmxlCisjIHBhY2thZ2U6IHBhcXVldAorIyB0byBkaXZlcnQ6IGTDqXRvdXJuZXIKKyMgdG8gc2V0OiBwYXJhbcOpdHJlcgorIyBzdGF0dXM6IMOpdGF0CisjIHVuYWJsZTogaW1wb3NzaWJsZQorIyBmYWlsdXJlOiDDqWNoZWMKKyMgd2FybmluZzogYXZlcnRpc3NlbWVudAorIyB0byBzY2FuOiBwYXJjb3VyaXIKKyMgZm9yY2U6IGZvcsOnYWdlCisjIHBhdHRlcm46IG1vdGlmPworIyB0byBvdmVyd3JpdGU6IHJlbXBsYWNlcj8KKyMgdG8gc3RhdDogYW5hbHlzZXI/CisjIHRvIHJld2luZDogcmV2ZW5pcj8gKHJlbWJvYmluZXI/KQorIyBpbmNvcnBvcmF0ZWQ6IGluY29ycG9yw6k/CisjIHVuYWJsZSBzZWVrOiBkw6lwbGFjZW1lbnQgaW1wb3NzaWJsZT8KKyMgcGFkZGluZzogcmVtcGxpc3NhZ2U/CisjIG91dCBvZiBtZW1vcnk6IG1hbnF1ZSBkZSBtw6ltb2lyZT8KKyMgZmlsZSBkZXRhaWxzIGZpZWxkOiBjaGFtcCBkw6l0YWlsIGRlIGZpY2hpZXI/CisjIG1hdGNoaW5nOiBjb3JyZXNwb25kYW5jZT8KKyMgZXBvY2g6IMOpcG9xdWUgPworIyBvbiBob2xkOiDDoCBnYXJkZXIKKyMgY2hlY2tzdW1zPworIyBkZXBvdD8KKyMgaGFzIHRyYWlsaW5nIGdhcmJhZ2U/CisjIHJlc29sdmVzIHRvIGRlZ2VuZXJhdGUgZmlsZW5hbWU/CisjIHJlYWRsaW5rPworIyBtZXNzPworIyB0aW1lc3RhbXBzPworIyB0byBzZWVrPworIyBidWZmZXJpbmc/CisjIGhhbmRsZXI/CisjIGdhcmJhZ2U/CisjIGp1bms/CisjIGFicsOpdmlhdGlvbiBwb3N0aW50Li4uCisjIHRvIGZzeW5jIChzeW5jaHJvbmlzZXI/KQorIworIyBDaHJpc3RpYW4gUGVycmllciA8YnVidWxsZUBkZWJpYW4ub3JnPiwgMjAwNSwgMjAwNiwgMjAwNywgMjAwOCwgMjAwOSwgMjAxMC4KK21zZ2lkICIiCittc2dzdHIgIiIKKyJQcm9qZWN0LUlkLVZlcnNpb246IFxuIgorIlJlcG9ydC1Nc2dpZC1CdWdzLVRvOiBkZWJpYW4tZHBrZ0BsaXN0cy5kZWJpYW4ub3JnXG4iCisiUE9ULUNyZWF0aW9uLURhdGU6IDIwMTEtMTAtMTQgMDc6MTErMDIwMFxuIgorIlBPLVJldmlzaW9uLURhdGU6IDIwMTAtMDMtMTIgMDc6MTYrMDEwMFxuIgorIkxhc3QtVHJhbnNsYXRvcjogQ2hyaXN0aWFuIFBlcnJpZXIgPGJ1YnVsbGVAZGViaWFuLm9yZz5cbiIKKyJMYW5ndWFnZS1UZWFtOiBmciA8ZGViaWFuLWwxMG4tZnJlbmNoQGxpc3RzLmRlYmlhbi5vcmc+XG4iCisiTGFuZ3VhZ2U6IGZyXG4iCisiTUlNRS1WZXJzaW9uOiAxLjBcbiIKKyJDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9VVRGLThcbiIKKyJDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiA4Yml0XG4iCisiWC1HZW5lcmF0b3I6IExva2FsaXplIDEuMFxuIgorIlBsdXJhbC1Gb3JtczogUGx1cmFsLUZvcm1zOiBucGx1cmFscz0yOyBwbHVyYWw9bj4xO1xuIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjEyNQorbXNnaWQgIlNlYXJjaCBmb3IgPyAiCittc2dzdHIgIlJlY2hlcmNoZXLCoD8iCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MTQ3Cittc2dpZCAiRXJyb3I6ICIKK21zZ3N0ciAiRXJyZXVywqA6ICIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxNzgKK21zZ2lkICJIZWxwOiAiCittc2dzdHIgIkFpZGXCoDogIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE4NAorbXNnaWQgIlByZXNzID8gZm9yIGhlbHAgbWVudSwgLiBmb3IgbmV4dCB0b3BpYywgPHNwYWNlPiB0byBleGl0IGhlbHAuIgorbXNnc3RyICIiCisiQXBwdXlleiBzdXLCoD8gcG91ciB1biBtZW51IGQnYWlkZSwgLiBwb3VyIGxlIHN1amV0IHN1aXZhbnQsIDxlc3BhY2U+XG4iCisicG91ciBxdWl0dGVyIGwnYWlkZS4iCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MTkxCittc2dpZCAiSGVscCBpbmZvcm1hdGlvbiBpcyBhdmFpbGFibGUgdW5kZXIgdGhlIGZvbGxvd2luZyB0b3BpY3M6IgorbXNnc3RyICJMJ2luZm9ybWF0aW9uIGQnYWlkZSBlc3QgYWNjZXNzaWJsZSBhdSB0cmF2ZXJzIGRlcyB0aMOobWVzIHN1aXZhbnRzwqA6IgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE5OQorbXNnaWQgIiIKKyJQcmVzcyBhIGtleSBmcm9tIHRoZSBsaXN0IGFib3ZlLCA8c3BhY2U+IG9yIGBxJyB0byBleGl0IGhlbHAsXG4iCisiICBvciBgLicgKGZ1bGwgc3RvcCkgdG8gcmVhZCBlYWNoIGhlbHAgcGFnZSBpbiB0dXJuLiAiCittc2dzdHIgIiIKKyJBcHB1eWV6IHN1ciB1bmUgZGVzIHRvdWNoZXMgbGlzdMOpZXMgY2ktZGVzc3VzLFxuIgorIiAgPGVzcGFjZT4gb3UgwqvCoHHCoMK7IHBvdXIgc29ydGlyIGRlIGwnYWlkZSxcbiIKKyIgIG91IC4gcG91ciBsaXJlIGNoYXF1ZSBwYWdlIHRvdXIgw6AgdG91ci4gIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjIwNQorbXNnaWQgImVycm9yIHJlYWRpbmcga2V5Ym9hcmQgaW4gaGVscCIKK21zZ3N0ciAiZXJyZXVyIGRlIGxlY3R1cmUgZHUgY2xhdmllciBkYW5zIGwnYWlkZSIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo1NworbXNnaWQgImlvY3RsKFRJT0NHV0lOU1opIGZhaWxlZCIKK21zZ3N0ciAiw6ljaGVjIGRlIMKrwqBpb2N0bChUSU9DR1dJTlNaKcKgwrsiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6NjAKK21zZ2lkICJkb3VwZGF0ZSBpbiBTSUdXSU5DSCBoYW5kbGVyIGZhaWxlZCIKK21zZ3N0ciAiw6ljaGVjIGRlIGRvdXBkYXRlIGRhbnMgbGUgZ2VzdGlvbm5haXJlIGRlIFNJR1dJTkNIIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjY3Cittc2dpZCAiZmFpbGVkIHRvIHJlc3RvcmUgb2xkIFNJR1dJTkNIIHNpZ2FjdCIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkZSByw6lpbnN0YWxsZXIgbCdhbmNpZW4gc2lnYWN0IGRlIFNJR1dJTkNIIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjY5Cittc2dpZCAiZmFpbGVkIHRvIHJlc3RvcmUgb2xkIHNpZ25hbCBtYXNrIgorbXNnc3RyICJpbXBvc3NpYmxlIGRlIHLDqWluc3RhbGxlciBsJ2FuY2llbiBtYXNxdWUgZGUgc2lnbmFsIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjc5Cittc2dpZCAiZmFpbGVkIHRvIGdldCBvbGQgc2lnbmFsIG1hc2siCittc2dzdHIgImltcG9zc2libGUgZGUgcsOpY3Vww6lyZXIgbCdhbmNpZW4gbWFzcXVlIGRlIHNpZ25hbCIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo4MAorbXNnaWQgImZhaWxlZCB0byBnZXQgb2xkIFNJR1dJTkNIIHNpZ2FjdCIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkZSByw6ljdXDDqXJlciBsJ2FuY2llbiBzaWdhY3QgZGUgU0lHV0lOQ0giCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6ODQKK21zZ2lkICJmYWlsZWQgdG8gYmxvY2sgU0lHV0lOQ0giCittc2dzdHIgImltcG9zc2libGUgZGUgYmxvcXVlciBTSUdXSU5DSCIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo4OQorbXNnaWQgImZhaWxlZCB0byBzZXQgbmV3IFNJR1dJTkNIIHNpZ2FjdCIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkZSBwb3NpdGlvbm5lciBsZSBub3V2ZWF1IHNpZ2FjdCBkZSBTSUdXSU5DSCIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxMjYKK21zZ2lkICJmYWlsZWQgdG8gYWxsb2NhdGUgY29sb3VyIHBhaXIiCittc2dzdHIgImltcG9zc2libGUgZCdhbGxvdWVyIHVuZSBwYWlyZSBkZSBjb3VsZXVycyIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxNjcKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHRpdGxlIHdpbmRvdyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkZSBjcsOpZXIgbGEgZmVuw6p0cmUgZGUgdGl0cmUiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTcxCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSB3aGF0aW5mbyB3aW5kb3ciCittc2dzdHIgImltcG9zc2libGUgZGUgY3LDqWVyIGxhIGZlbsOqdHJlIGQnw6AgcHJvcG9zIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE3NQorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgYmFzZWxpc3QgcGFkIgorbXNnc3RyICJpbXBvc3NpYmxlIGRlIGNyw6llciBsYSB6b25lIGRlIGxpc3RlIGRlIGJhc2UiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTc4Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBoZWFkaW5nIHBhZCIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkZSBjcsOpZXIgbGEgem9uZSBkJ2VuLXTDqnRlIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE4MgorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgdGhpc3N0YXRlIHBhZCIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkZSBjcsOpZXIgbGEgem9uZSBkJ8OpdGF0IgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE4NgorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgaW5mbyBwYWQiCittc2dzdHIgImltcG9zc2libGUgZGUgY3LDqWVyIGxhIHpvbmUgZCdpbmZvIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE5MQorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgcXVlcnkgd2luZG93IgorbXNnc3RyICJpbXBvc3NpYmxlIGRlIGNyw6llciBsYSBmZW7DqnRyZSBkZSByZXF1w6p0ZSIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoyNTUKK21zZ2lkICJLZXliaW5kaW5ncyIKK21zZ3N0ciAiQWZmZWN0YXRpb25zIGRlIHRvdWNoZXMiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MzAzCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgLS0gJWQlJSwgcHJlc3MgIgorbXNnc3RyICIgIC0tICVkJSUsIGFwcHV5ZXogc3VyICIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzozMDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgZm9yIG1vcmUiCittc2dzdHIgIiVzIHBvdXIgcGx1cyBkJ2luZm9ybWF0aW9ucyIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzozMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgdG8gZ28gYmFjayIKK21zZ3N0ciAiJXMgcG91ciByZXZlbmlyIGVuIGFycmnDqHJlIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjc4Cittc2dpZCAiW25vdCBib3VuZF0iCittc2dzdHIgIltwYXMgZGUgY29ycmVzcG9uZGFuY2VdIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjgyCisjLCBjLWZvcm1hdAorbXNnaWQgIlt1bms6ICVkXSIKK21zZ3N0ciAiW2luY29ubnXCoDogJWRdIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjEzOQorbXNnaWQgIlNjcm9sbCBvbndhcmRzIHRocm91Z2ggaGVscC9pbmZvcm1hdGlvbiIKK21zZ3N0ciAiRmFpcmUgZMOpZmlsZXIgbCdhaWRlL2luZm9ybWF0aW9uIGVuIGF2YW50IgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0MAorbXNnaWQgIlNjcm9sbCBiYWNrd2FyZHMgdGhyb3VnaCBoZWxwL2luZm9ybWF0aW9uIgorbXNnc3RyICJGYWlyZSBkw6lmaWxlciBsJ2FpZGUvaW5mb3JtYXRpb24gZW4gYXJyacOocmUiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQxCittc2dpZCAiTW92ZSB1cCIKK21zZ3N0ciAiU2UgZMOpcGxhY2VyIHZlcnMgbGUgaGF1dCIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDIKK21zZ2lkICJNb3ZlIGRvd24iCittc2dzdHIgIlNlIGTDqXBsYWNlciB2ZXJzIGxlIGJhcyIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDMKK21zZ2lkICJHbyB0byB0b3Agb2YgbGlzdCIKK21zZ3N0ciAiQWxsZXIgYXUgZMOpYnV0IGRlIGxhIGxpc3RlIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0NAorbXNnaWQgIkdvIHRvIGVuZCBvZiBsaXN0IgorbXNnc3RyICJBbGxlciDDoCBsYSBmaW4gZGUgbGEgbGlzdGUiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ1Cittc2dpZCAiUmVxdWVzdCBoZWxwIChjeWNsZSB0aHJvdWdoIGhlbHAgc2NyZWVucykiCittc2dzdHIgIkRlbWFuZGVyIGRlIGwnYWlkZSAoZmFpcmUgZMOpZmlsZXIgbGVzIMOpY3JhbnMgZCdpbmZvcm1hdGlvbikiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ2Cittc2dpZCAiQ3ljbGUgdGhyb3VnaCBpbmZvcm1hdGlvbiBkaXNwbGF5cyIKK21zZ3N0ciAiRmFpcmUgZMOpZmlsZXIgbGVzIMOpY3JhbnMgZCdpbmZvcm1hdGlvbiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDcKK21zZ2lkICJSZWRyYXcgZGlzcGxheSIKK21zZ3N0ciAiUmVkZXNzaW5lciBsJ8OpY3JhbiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDgKK21zZ2lkICJTY3JvbGwgb253YXJkcyB0aHJvdWdoIGxpc3QgYnkgMSBsaW5lIgorbXNnc3RyICJGYWlyZSBkw6lmaWxlciBsYSBsaXN0ZSBlbiBhdmFudCBsaWduZSBwYXIgbGlnbmUiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ5Cittc2dpZCAiU2Nyb2xsIGJhY2t3YXJkcyB0aHJvdWdoIGxpc3QgYnkgMSBsaW5lIgorbXNnc3RyICJGYWlyZSBkw6lmaWxlciBsYSBsaXN0ZSBlbiBhcnJpw6hyZSBsaWduZSBwYXIgbGlnbmUiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTUwCittc2dpZCAiU2Nyb2xsIG9ud2FyZHMgdGhyb3VnaCBoZWxwL2luZm9ybWF0aW9uIGJ5IDEgbGluZSIKK21zZ3N0ciAiRmFpcmUgZMOpZmlsZXIgbCdhaWRlL2luZm9ybWF0aW9uIGVuIGF2YW50IGxpZ25lIHBhciBsaWduZSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTEKK21zZ2lkICJTY3JvbGwgYmFja3dhcmRzIHRocm91Z2ggaGVscC9pbmZvcm1hdGlvbiBieSAxIGxpbmUiCittc2dzdHIgIkZhaXJlIGTDqWZpbGVyIGwnYWlkZS9pbmZvcm1hdGlvbiBlbiBhcnJpw6hyZSBsaWduZSBwYXIgbGlnbmUiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTUyCittc2dpZCAiU2Nyb2xsIG9ud2FyZHMgdGhyb3VnaCBsaXN0IgorbXNnc3RyICJGYWlyZSBkw6lmaWxlciBsYSBsaXN0ZSBlbiBhdmFudCIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTMKK21zZ2lkICJTY3JvbGwgYmFja3dhcmRzIHRocm91Z2ggbGlzdCIKK21zZ3N0ciAiRmFpcmUgZMOpZmlsZXIgbGEgbGlzdGUgZW4gYXJyacOocmUiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTU2Cittc2dpZCAiTWFyayBwYWNrYWdlKHMpIGZvciBpbnN0YWxsYXRpb24iCittc2dzdHIgIlPDqWxlY3Rpb25uZXIgbGUocykgcGFxdWV0KHMpIMOgIGluc3RhbGxlciIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTcKK21zZ2lkICJNYXJrIHBhY2thZ2UocykgZm9yIGRlaW5zdGFsbGF0aW9uIgorbXNnc3RyICJTw6lsZWN0aW9ubmVyIGxlKHMpIHBhcXVldChzKSDDoCBkw6lzaW5zdGFsbGVyIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1OAorbXNnaWQgIk1hcmsgcGFja2FnZShzKSBmb3IgZGVpbnN0YWxsIGFuZCBwdXJnZSIKK21zZ3N0ciAiU8OpbGVjdGlvbm5lciBsZShzKSBwYXF1ZXQocykgw6AgZMOpc2luc3RhbGxlciBldCBwdXJnZXIiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTU5Cittc2dpZCAiTWFrZSBoaWdobGlnaHQgbW9yZSBzcGVjaWZpYyIKK21zZ3N0ciAiUmVuZHJlIGxlIHN1cmxpZ25hZ2UgcGx1cyBleHBsaWNpdGUiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTYwCittc2dpZCAiTWFrZSBoaWdobGlnaHQgbGVzcyBzcGVjaWZpYyIKK21zZ3N0ciAiUmVuZHJlIGxlIHN1cmxpZ25hZ2UgbW9pbnMgZXhwbGljaXRlIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2MQorbXNnaWQgIlNlYXJjaCBmb3IgYSBwYWNrYWdlIHdob3NlIG5hbWUgY29udGFpbnMgYSBzdHJpbmciCittc2dzdHIgIlJlY2hlcmNoZXIgdW4gcGFxdWV0IGRvbnQgbGUgbm9tIGNvbnRpZW50IHVuZSBjaGHDrm5lIHBhcnRpY3VsacOocmUiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTYyCittc2dpZCAiUmVwZWF0IGxhc3Qgc2VhcmNoLiIKK21zZ3N0ciAiUsOpcMOpdGVyIGxhIGRlcm5pw6hyZSByZWNoZXJjaGUuIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2MworbXNnaWQgIlN3YXAgc29ydCBvcmRlciBwcmlvcml0eS9zZWN0aW9uIgorbXNnc3RyICLDiWNoYW5nZXIgbCdvcmRyZSBkdSB0cmkgcHJpb3JpdMOpL3NlY3Rpb24iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY0Cittc2dpZCAiUXVpdCwgY29uZmlybWluZywgYW5kIGNoZWNraW5nIGRlcGVuZGVuY2llcyIKK21zZ3N0ciAiUXVpdHRlciwgY29uZmlybWVyIGV0IHbDqXJpZmllciBsZXMgZMOpcGVuZGFuY2VzIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2NQorbXNnaWQgIlF1aXQsIGNvbmZpcm1pbmcgd2l0aG91dCBjaGVjayIKK21zZ3N0ciAiUXVpdHRlciBldCBjb25maXJtZXIgc2FucyB2w6lyaWZpY2F0aW9uIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2NgorbXNnaWQgIlF1aXQsIHJlamVjdGluZyBjb25mbGljdC9kZXBlbmRlbmN5IHN1Z2dlc3Rpb25zIgorbXNnc3RyICJRdWl0dGVyIGV0IHJlZnVzZXIgbGVzIHN1Z2dlc3Rpb25zIGRlIGNvbmZsaXQvZMOpcGVuZGFuY2UiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY3Cittc2dpZCAiQWJvcnQgLSBxdWl0IHdpdGhvdXQgbWFraW5nIGNoYW5nZXMiCittc2dzdHIgIkFubnVsZXIgLSBxdWl0dGVyIHNhbnMgZWZmZWN0dWVyIGRlIGNoYW5nZW1lbnRzIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2OAorbXNnaWQgIlJldmVydCB0byBvbGQgc3RhdGUgZm9yIGFsbCBwYWNrYWdlcyIKK21zZ3N0ciAiUmV0b3VyIMOgIGwnYW5jaWVuIMOpdGF0IHBvdXIgdG91cyBsZXMgcGFxdWV0cyIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjkKK21zZ2lkICJSZXZlcnQgdG8gc3VnZ2VzdGVkIHN0YXRlIGZvciBhbGwgcGFja2FnZXMiCittc2dzdHIgIlJldG91ciDDoCBsJ8OpdGF0IHN1Z2fDqXLDqSBwb3VyIHRvdXMgbGVzIHBhcXVldHMiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTcwCittc2dpZCAiUmV2ZXJ0IHRvIGRpcmVjdGx5IHJlcXVlc3RlZCBzdGF0ZSBmb3IgYWxsIHBhY2thZ2VzIgorbXNnc3RyICJSZXRvdXIgw6AgbCfDqXRhdCBkaXJlY3RlbWVudCBkZW1hbmTDqSBwb3VyIHRvdXMgbGVzIHBhcXVldHMiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTcxCittc2dpZCAiUmV2ZXJ0IHRvIGN1cnJlbnRseSBpbnN0YWxsZWQgc3RhdGUgZm9yIGFsbCBwYWNrYWdlcyIKK21zZ3N0ciAiUmV0b3VyIMOgIGwnw6l0YXQgYWN0dWVsbGVtZW50IGluc3RhbGzDqSBwb3VyIHRvdXMgbGVzIHBhcXVldHMiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTc0Cittc2dpZCAiU2VsZWN0IGN1cnJlbnRseS1oaWdobGlnaHRlZCBhY2Nlc3MgbWV0aG9kIgorbXNnc3RyICJTw6lsZWN0aW9ubmVyIGxhIG3DqXRob2RlIGQnYWNjw6hzIGFjdHVlbGxlbWVudCBzdXJsaWduw6llIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE3NQorbXNnaWQgIlF1aXQgd2l0aG91dCBjaGFuZ2luZyBzZWxlY3RlZCBhY2Nlc3MgbWV0aG9kIgorbXNnc3RyICJRdWl0dGVyIHNhbnMgY2hhbmdlciBsYSBtw6l0aG9kZSBkJ2FjY8OocyBwcsOpY8OpZGVtbWVudCBzw6lsZWN0aW9ubsOpZSIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoyOQorbXNnaWQgIktleXN0cm9rZXMiCittc2dzdHIgIkNvbWJpbmFpc29ucyBkZSB0b3VjaGVzIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjI5Cittc2dpZCAiIgorIk1vdGlvbiBrZXlzOiBOZXh0L1ByZXZpb3VzLCBUb3AvRW5kLCBVcC9Eb3duLCBCYWNrd2FyZHMvRm9yd2FyZHM6XG4iCisiICBqLCBEb3duLWFycm93ICAgICAgICAgaywgVXAtYXJyb3cgICAgICAgICAgICAgbW92ZSBoaWdobGlnaHRcbiIKKyIgIE4sIFBhZ2UtZG93biwgU3BhY2UgICBQLCBQYWdlLXVwLCBCYWNrc3BhY2UgICBzY3JvbGwgbGlzdCBieSAxIHBhZ2VcbiIKKyIgIF5uICAgICAgICAgICAgICAgICAgICBecCAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgbGlzdCBieSAxIGxpbmVcbiIKKyIgIHQsIEhvbWUgICAgICAgICAgICAgICBlLCBFbmQgICAgICAgICAgICAgICAgICBqdW1wIHRvIHRvcC9lbmQgb2YgbGlzdFxuIgorIiAgdSAgICAgICAgICAgICAgICAgICAgIGQgICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIGJ5IDEgcGFnZVxuIgorIiAgXnUgICAgICAgICAgICAgICAgICAgIF5kICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIGJ5IDEgbGluZVxuIgorIiAgQiwgTGVmdC1hcnJvdyAgICAgICAgIEYsIFJpZ2h0LWFycm93ICAgICAgICAgIHBhbiBkaXNwbGF5IGJ5IDEvMyBzY3JlZW5cbiIKKyIgIF5iICAgICAgICAgICAgICAgICAgICBeZiAgICAgICAgICAgICAgICAgICAgICBwYW4gZGlzcGxheSBieSAxIGNoYXJhY3RlclxuIgorIlxuIgorIk1hcmsgcGFja2FnZXMgZm9yIGxhdGVyIHByb2Nlc3Npbmc6XG4iCisiICssIEluc2VydCAgaW5zdGFsbCBvciB1cGdyYWRlICAgICAgPSwgSCAgaG9sZCBpbiBwcmVzZW50IHN0YXRlXG4iCisiIC0sIERlbGV0ZSAgcmVtb3ZlICAgICAgICAgICAgICAgICAgOiwgRyAgdW5ob2xkOiB1cGdyYWRlIG9yIGxlYXZlICIKKyJ1bmluc3RhbGxlZFxuIgorIiBfICAgICAgICAgIHJlbW92ZSAmIHB1cmdlIGNvbmZpZ1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1pc2NlbGxhbmVvdXM6XG4iCisiUXVpdCwgZXhpdCwgb3ZlcndyaXRlIChub3RlIGNhcGl0YWxzISk6ICAgICAgID8sIEYxIHJlcXVlc3QgaGVscCAoYWxzbyAiCisiSGVscClcbiIKKyIgUmV0dXJuICBDb25maXJtLCBxdWl0IChjaGVjayBkZXBlbmRlbmNpZXMpICAgaSwgSSAgdG9nZ2xlL2N5Y2xlIGluZm8gIgorImRpc3BsYXlzXG4iCisiICAgUSAgICAgQ29uZmlybSwgcXVpdCAob3ZlcnJpZGUgZGVwLnMpICAgICAgIG8sIE8gIGN5Y2xlIHRocm91Z2ggc29ydCAiCisib3B0aW9uc1xuIgorIiBYLCBFc2MgIGVYaXQsIGFiYW5kb25pbmcgYW55IGNoYW5nZXMgbWFkZSAgICB2LCBWICBjaGFuZ2Ugc3RhdHVzIGRpc3BsYXkgIgorIm9wdHNcbiIKKyIgICBSICAgICBSZXZlcnQgdG8gc3RhdGUgYmVmb3JlIHRoaXMgbGlzdCAgICAgIF5sICAgcmVkcmF3IGRpc3BsYXlcbiIKKyIgICBVICAgICBzZXQgYWxsIHRvIHNVZ2dlc3RlZCBzdGF0ZSAgICAgICAgICAgICAvICAgc2VhcmNoIChSZXR1cm4gdG8gIgorImNhbmNlbClcbiIKKyIgICBEICAgICBzZXQgYWxsIHRvIERpcmVjdGx5IHJlcXVlc3RlZCBzdGF0ZSAgbiwgXFwgIHJlcGVhdCBsYXN0IHNlYXJjaFxuIgorbXNnc3RyICIiCisiVG91Y2hlcyBkZSBkw6lwbGFjZW1lbnTCoDogU3VpdmFudC9QcsOpY8OpZGVudCwgRMOpYnV0L0ZpbiwgSGF1dC9CYXMsIEFycmnDqHJlLyIKKyJBdmFudMKgOlxuIgorIiBGbMOoY2hlIGJhcywgaiAgICAgICAgIEZsw6hjaGUgaGF1dCwgayAgICAgICBkw6lwbGFjZW1lbnQgZHUgc3VybGlnbmFnZVxuIgorIiBOLCBQYWdlIGhhdXQsIEVzcGFjZSAgUCwgUGFnZSBiYXMsIEVmZmFjZSAgZMOpZmlsZW1lbnQgbGlzdGUgZCd1bmUgcGFnZVxuIgorIiBebiAgICAgICAgICAgICAgICAgICAgXnAgICAgICAgICAgICAgICAgICAgZMOpZmlsZW1lbnQgbGlzdGUgZCd1bmUgbGlnbmVcbiIKKyIgdCwgRMOpYnV0ICAgICAgICAgICAgICBlLCBGaW4gICAgICAgICAgICAgICBhbGxlciBhdSBkw6lidXQvZmluIGRlIGxhIGxpc3RlXG4iCisiIHUgICAgICAgICAgICAgICAgICAgICBkICAgICAgICAgICAgICAgICAgICBmYWlyZSBkw6lmaWxlciBpbmZvIGQndW5lIHBhZ2VcbiIKKyIgXnUgICAgICAgICAgICAgICAgICAgIF5kICAgICAgICAgICAgICAgICAgIGZhaXJlIGTDqWZpbGVyIGluZm8gZCd1bmUgbGlnbmVcbiIKKyIgQiwgRmzDqGNoZSBnYXVjaGUgICAgICBGLCBGbMOoY2hlIGRyb2l0ZSAgICAgZMOpcGxhY2VyIGhvcml6LiBhZmZpY2hhZ2UgZGUgMS8zICIKKyJkJ8OpY3JhblxuIgorIiBeYiAgICAgICAgICAgICAgICAgICAgXmYgICAgICAgICAgICAgICAgICAgZMOpcGxhY2VyIGhvcml6LiBhZmZpY2hhZ2UgZCd1biAiCisiY2FyYWN0w6hyZVxuIgorIlxuIgorIk1hcnF1ZXIgbGVzIHBhcXVldHMgw6AgdHJhaXRlciB1bHTDqXJpZXVyZW1lbnTCoDpcbiIKKyIgKywgSW5zZXIgIGluc3RhbGxlciBvdSBtZXR0cmUgw6Agbml2ZWF1ICA9LCBIICBtYXJxdWVyIMKrwqDDoCBnYXJkZXLCoMK7IChvbiAiCisiaG9sZClcbiIKKyIgLSwgU3VwcHIgIHN1cHByaW1lciAgICAgICAgICAgICAgICAgICAgwqA6LCBHICBtZXR0cmUgw6Agbml2ZWF1IG91IGxhaXNzZXIgIgorIm5vbiBpbnN0YWxsw6lcbiIKKyIgXyAgICAgICAgIHN1cHByaW1lciBldCBwdXJnZXIgY29uZmlnXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRGl2ZXJzwqA6XG4iCisiUXVpdHRlciwgc29ydGlyLCBzdXJjaGFyZ2VyICghIG1hanVzY3VsZXMpOiAgwqA/LCBGMSBkZW1hbmRlciBkZSBsJ2FpZGUgKEFpZGUgIgorImRlIG3Dqm1lKVxuIgorIiBSZXR1cm4gIENvbmZpcm0uIGV0IHF1aXR0ZS4gKHbDqXJpZiBkZXBlbmQuKSAgICBpLCBJICBmYWlyZSBkw6lmaWxlciDDqWNyYW5zICIKKyJkJ2luZm9cbiIKKyIgICBRICAgICBDb25maXJtLiBldCBxdWl0dGUuIChvdXRyZXBhc3MuIGRlcC5zKSBvLCBPICBmYWlyZSBkw6lmaWxlciBsZXMgIgorIm9wdGlvbnMgZGUgdHJpXG4iCisiIFgsIEVzYyAgc29ydGllLCBhYmFuZG9uIGRlcyBjaGFuZ2VtZW50cyAgICAgIHYsIFYgIGNoYW5nZSBsZXMgb3B0aW9ucyAiCisiZCdhZmZpY2hhZ2VcbiIKKyIgICBSICAgICBSZXRvdXIuIMOgIGwnw6l0YXQgcHLDqWPDqGQgY2V0dGUgbGlzdGUgIF5sICAgcmVkZXNzaW5lciBsJ2FmZmljaGFnZVxuIgorIiAgIFUgICAgIHRvdXQgcG9zaXRpb25uZXIgYXV4IMOpdGF0cyBzdWdnw6lyw6lzICAgIC8gICByZWNoZXJjaGVyIChFbnRyw6llIHBvdXIgIgorImFubnVsZXIpXG4iCisiICAgRCAgICAgdG91dCBwb3NpdC4gw6AgbCfDqXRhdCBkaXJlY3RlbS4gcmVxdWlzICBcXCAgcsOpcMOpdGVyIGxhIGRlcm5pw6hyZSAiCisicmVjaGVyY2hlXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6NTUKK21zZ2lkICJJbnRyb2R1Y3Rpb24gdG8gcGFja2FnZSBzZWxlY3Rpb25zIgorbXNnc3RyICJJbnRyb2R1Y3Rpb24gw6AgbGEgc8OpbGVjdGlvbiBkZXMgcGFxdWV0cyIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo1NQorbXNnaWQgIiIKKyJXZWxjb21lIHRvIGRzZWxlY3QncyBtYWluIHBhY2thZ2UgbGlzdGluZy5cbiIKKyJcbiIKKyJZb3Ugd2lsbCBiZSBwcmVzZW50ZWQgd2l0aCBhIGxpc3Qgb2YgcGFja2FnZXMgd2hpY2ggYXJlIGluc3RhbGxlZCBvciAiCisiYXZhaWxhYmxlXG4iCisiZm9yIGluc3RhbGxhdGlvbi4gIFlvdSBjYW4gbmF2aWdhdGUgYXJvdW5kIHRoZSBsaXN0IHVzaW5nIHRoZSBjdXJzb3Iga2V5cyxcbiIKKyJtYXJrIHBhY2thZ2VzIGZvciBpbnN0YWxsYXRpb24gKHVzaW5nIGArJykgb3IgZGVpbnN0YWxsYXRpb24gKHVzaW5nIGAtJykuXG4iCisiUGFja2FnZXMgY2FuIGJlIG1hcmtlZCBlaXRoZXIgc2luZ2x5IG9yIGluIGdyb3VwczsgaW5pdGlhbGx5IHlvdSB3aWxsIHNlZSAiCisidGhhdFxuIgorInRoZSBsaW5lIGBBbGwgcGFja2FnZXMnIGlzIHNlbGVjdGVkLiAgYCsnLCBgLScgYW5kIHNvIG9uIHdpbGwgYWZmZWN0IGFsbCAiCisidGhlXG4iCisicGFja2FnZXMgZGVzY3JpYmVkIGJ5IHRoZSBoaWdobGlnaHRlZCBsaW5lLlxuIgorIlxuIgorIlNvbWUgb2YgeW91ciBjaG9pY2VzIHdpbGwgY2F1c2UgY29uZmxpY3RzIG9yIGRlcGVuZGVuY3kgcHJvYmxlbXM7IHlvdSB3aWxsICIKKyJiZVxuIgorImdpdmVuIGEgc3ViLWxpc3Qgb2YgdGhlIHJlbGV2YW50IHBhY2thZ2VzLCBzbyB0aGF0IHlvdSBjYW4gc29sdmUgdGhlICIKKyJwcm9ibGVtcy5cbiIKKyJcbiIKKyJZb3Ugc2hvdWxkIHJlYWQgdGhlIGxpc3Qgb2Yga2V5cyBhbmQgdGhlIGV4cGxhbmF0aW9ucyBvZiB0aGUgZGlzcGxheS5cbiIKKyJNdWNoIG9uLWxpbmUgaGVscCBpcyBhdmFpbGFibGUsIHBsZWFzZSBtYWtlIHVzZSBvZiBpdCAtIHByZXNzIGA/JyBhdFxuIgorImFueSB0aW1lIGZvciBoZWxwLlxuIgorIlxuIgorIldoZW4geW91IGhhdmUgZmluaXNoZWQgc2VsZWN0aW5nIHBhY2thZ2VzLCBwcmVzcyA8ZW50ZXI+IHRvIGNvbmZpcm0gIgorImNoYW5nZXMsXG4iCisib3IgYFgnIHRvIHF1aXQgd2l0aG91dCBzYXZpbmcgY2hhbmdlcy4gQSBmaW5hbCBjaGVjayBvbiBjb25mbGljdHMgYW5kXG4iCisiZGVwZW5kZW5jaWVzIHdpbGwgYmUgZG9uZSAtIGhlcmUgdG9vIHlvdSBtYXkgc2VlIGEgc3VibGlzdC5cbiIKKyJcbiIKKyJQcmVzcyA8c3BhY2U+IHRvIGxlYXZlIGhlbHAgYW5kIGVudGVyIHRoZSBsaXN0IG5vdy5cbiIKK21zZ3N0ciAiIgorIkJpZW52ZW51ZSBkYW5zIGxhIGxpc3RlIHByaW5jaXBhbGUgZGVzIHBhcXVldHMuXG4iCisiXG4iCisiSWwgdmEgdm91cyDDqnRyZSBwcsOpc2VudMOpIHVuZSBsaXN0ZSBkZXMgcGFxdWV0cyBxdWkgc29udCBpbnN0YWxsw6lzIG91IHF1aVxuIgorInBldXZlbnQgw6p0cmUgaW5zdGFsbMOpcy4gVm91cyBwb3V2ZXogbmF2aWd1ZXIgYXUgc2VpbiBkZSBsYSBsaXN0ZSBhdmVjIGxlc1xuIgorInRvdWNoZXMgZHUgY3Vyc2V1ciwgbWFycXVlciBsZXMgcGFxdWV0cyDDoCBpbnN0YWxsZXIgKGF2ZWMgwqvCoCvCoMK7KSBvdVxuIgorImTDqXNpbnN0YWxsZXIgKGF2ZWMgwqvCoC3CoMK7KS5cbiIKKyJMZXMgcGFxdWV0cyBwZXV2ZW50IMOqdHJlIG1hcnF1w6lzIHNvaXQgaW5kaXZpZHVlbGxlbWVudCBzb2l0IHBhciBncm91cGXCoDtcbiIKKyJpbml0aWFsZW1lbnQgdm91cyBub3RlcmV6IHF1ZSBsYSBsaWduZSDCq8KgVG91cyBsZXMgcGFxdWV0c8KgwrsgZXN0XG4iCisic8OpbGVjdGlvbm7DqWUuICDCq8KgK8KgwrssIMKrwqAtwqDCuyBldCBhdXRyZXMgYWZmZWN0ZXJvbnQgYWxvcnMgdG91cyBsZXMgcGFxdWV0c1xuIgorImTDqWNyaXRzIHBhciBsYSBsaWduZSBzdXJsaWduw6llLlxuIgorIlxuIgorIkNlcnRhaW5zIGRlIHZvcyBjaG9peCBlbnRyYcOubmVyb250IGRlcyBwcm9ibMOobWVzIGRlIGNvbmZsaXQgb3UgZGVcbiIKKyJkw6lwZW5kYW5jZcKgOyBpbCB2b3VzIHNlcmEgcHJvcG9zw6kgdW5lIHNvdXMtbGlzdGUgZGUgcGFxdWV0cyBwZXJ0aW5lbnRzLCBkZVxuIgorIm1hbmnDqHJlIMOgIGNlIHF1ZSB2b3VzIHB1aXNzaWV6IHLDqXNvdWRyZSBjZXMgcHJvYmzDqG1lcy5cbiIKKyJcbiIKKyJWb3VzIGRldnJpZXogbGlyZSBsYSBsaXN0ZSBkZXMgdG91Y2hlcyBkaXNwb25pYmxlcyBldCBsZXMgZXhwbGljYXRpb25zIHN1clxuIgorImwnYWZmaWNoYWdlLiBVbmUgZ3JhbmRlIHF1YW50aXTDqSBkJ2FpZGUgZW4gbGlnbmUgZXN0IGRpc3BvbmlibGUsIHZldWlsbGV6XG4iCisibCd1dGlsaXNlci4gQXBwdXlleiBzdXIgwqvCoD/CoMK7IMOgIG4naW1wb3J0ZSBxdWVsIG1vbWVudCBwb3VyIG9idGVuaXIgZGVcbiIKKyJsJ2FpZGUuXG4iCisiXG4iCisiTG9yc3F1ZSB2b3VzIHNlcmV6IHNhdGlzZmFpdHMgZGUgdm9zIGNob2l4IHZvdXMgbidhdXJleiBxdSfDoCBhcHB1eWVyIHN1clxuIgorIkVudHLDqWUgcG91ciBjb25maXJtZXIgdm9zIGNoYW5nZW1lbnRzIGV0IHF1aXR0ZXIgbGEgbGlzdGUgZGVzIHBhcXVldHMsIG91XG4iCisic3VyIMKrwqBYwqDCuyBwb3VyIHF1aXR0ZXIgbGEgbGlzdGUgc2FucyBlbnJlZ2lzdHJlciB2b3MgY2hhbmdlbWVudHMuIFVuZVxuIgorInbDqXJpZmljYXRpb24gZmluYWxlIGRlcyBjb25mbGl0cyBldCBkZXMgZMOpcGVuZGFuY2VzIHNlcmEgZWZmZWN0dcOpZSAtIGljaVxuIgorImF1c3NpIHZvdXMgdmVycmV6IHBldXQtw6p0cmUgdW5lIHNvdXMtbGlzdGUuXG4iCisiXG4iCisiQXBwdXlleiBzdXIgPGVzcGFjZT4gcG91ciBxdWl0dGVyIGwnYWlkZSBldCB2b2lyIGxhIGxpc3RlLlxuIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjgwCittc2dpZCAiSW50cm9kdWN0aW9uIHRvIHJlYWQtb25seSBwYWNrYWdlIGxpc3QgYnJvd3NlciIKK21zZ3N0ciAiIgorIkludHJvZHVjdGlvbiDDoCBsYSBuYXZpZ2F0aW9uIGRhbnMgbGEgbGlzdGUgZGVzIHBhcXVldHMgKG1vZGUgbGVjdHVyZSAiCisic2V1bGVtZW50KSIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo4MAorbXNnaWQgIiIKKyJXZWxjb21lIHRvIGRzZWxlY3QncyBtYWluIHBhY2thZ2UgbGlzdGluZy5cbiIKKyJcbiIKKyJZb3Ugd2lsbCBiZSBwcmVzZW50ZWQgd2l0aCBhIGxpc3Qgb2YgcGFja2FnZXMgd2hpY2ggYXJlIGluc3RhbGxlZCBvciAiCisiYXZhaWxhYmxlXG4iCisiZm9yIGluc3RhbGxhdGlvbi4gIFNpbmNlIHlvdSBkbyBub3QgaGF2ZSB0aGUgcHJpdmlsZWdlIG5lY2Vzc2FyeSB0byB1cGRhdGVcbiIKKyJwYWNrYWdlIHN0YXRlcywgeW91IGFyZSBpbiBhIHJlYWQtb25seSBtb2RlLiAgWW91IGNhbiBuYXZpZ2F0ZSBhcm91bmQgdGhlXG4iCisibGlzdCB1c2luZyB0aGUgY3Vyc29yIGtleXMgKHBsZWFzZSBzZWUgdGhlIGBLZXlzdHJva2VzJyBoZWxwIHNjcmVlbiksICIKKyJvYnNlcnZlXG4iCisidGhlIHN0YXR1cyBvZiB0aGUgcGFja2FnZXMgYW5kIHJlYWQgaW5mb3JtYXRpb24gYWJvdXQgdGhlbS5cbiIKKyJcbiIKKyJZb3Ugc2hvdWxkIHJlYWQgdGhlIGxpc3Qgb2Yga2V5cyBhbmQgdGhlIGV4cGxhbmF0aW9ucyBvZiB0aGUgZGlzcGxheS5cbiIKKyJNdWNoIG9uLWxpbmUgaGVscCBpcyBhdmFpbGFibGUsIHBsZWFzZSBtYWtlIHVzZSBvZiBpdCAtIHByZXNzIGA/JyBhdFxuIgorImFueSB0aW1lIGZvciBoZWxwLlxuIgorIlxuIgorIldoZW4geW91IGhhdmUgZmluaXNoZWQgYnJvd3NpbmcsIHByZXNzIGBRJyBvciA8ZW50ZXI+IHRvIHF1aXQuXG4iCisiXG4iCisiUHJlc3MgPHNwYWNlPiB0byBsZWF2ZSBoZWxwIGFuZCBlbnRlciB0aGUgbGlzdCBub3cuXG4iCittc2dzdHIgIiIKKyJCaWVudmVudWUgZGFucyBsYSBsaXN0ZSBwcmluY2lwYWxlIGRlcyBwYXF1ZXRzLlxuIgorIlxuIgorIklsIHZhIHZvdXMgw6p0cmUgcHLDqXNlbnTDqSB1bmUgbGlzdGUgZGVzIHBhcXVldHMgcXVpIHNvbnQgaW5zdGFsbMOpcyBvdSBxdWlcbiIKKyJwZXV2ZW50IMOqdHJlIGluc3RhbGzDqXMuIMOJdGFudCBkb25uw6kgcXVlIHZvdXMgbmUgZGlzcG9zZXogcGFzIGR1IHByaXZpbMOoZ2VcbiIKKyJuw6ljZXNzYWlyZSDDoCBsYSBtaXNlIMOgIGpvdXIgZGUgbCfDqXRhdCBkZXMgcGFxdWV0cywgbGEgbGlzdGUgZXN0IGVuIGxlY3R1cmVcbiIKKyJzZXVsZS4gUG91ciBwb3V2ZXogbmF2aWd1ZXIgYXUgc2VpbiBkZSBsYSBsaXN0ZSBhdSBtb3llbiBkZXMgdG91Y2hlcyBkZVxuIgorImN1cnNldXIgKHZvaXIgbCfDqWNyYW4gZCdhaWRlIHN1ciBsZXMgY29tYmluYWlzb25zIGRlIHRvdWNoZXMpLCBldCBjb25zdWx0ZXJcbiIKKyJsZXMgaW5mb3JtYXRpb25zIGxlcyBjb25jZXJuYW50LlxuIgorIlxuIgorIk5vdXMgdm91cyBjb25zZWlsbG9ucyBkZSBwcmVuZHJlIGNvbm5haXNzYW5jZSBkZSBsYSBsaXN0ZSBkZXMgdG91Y2hlcyBldFxuIgorImRlcyBleHBsaWNhdGlvbnMgcXVhbnQgw6AgbCdhZmZpY2hhZ2UuIFVuZSBncmFuZGUgcXVhbnRpdMOpIGQnYWlkZSBlbiBsaWduZVxuIgorImVzdCBkaXNwb25pYmxlLCBuJ2jDqXNpdGV6IHBhcyDDoCB2b3VzIGVuIHNlcnZpcsKgISBBcHB1eWV6IHN1ciDCq8KgP8Kgwrsgw6AgdG91dFxuIgorIm1vbWVudCBwb3VyIG9idGVuaXIgZGUgbCdhaWRlLlxuIgorIlxuIgorIlF1YW5kIHZvdXMgYXZleiBmaW5pIGRlIHBhcmNvdXJpciBsYSBsaXN0ZSwgYXBwdXlleiBzdXIgwqvCoFHCoMK7IG91IDxlbnRyw6llPiAiCisicG91clxuIgorInF1aXR0ZXIuXG4iCisiXG4iCisiQXBwdXlleiBzdXIgPGVzcGFjZT4gcG91ciBxdWl0dGVyIGwnYWlkZSBldCBhY2PDqWRlciDDoCBsYSBsaXN0ZS5cbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo5OQorbXNnaWQgIkludHJvZHVjdGlvbiB0byBjb25mbGljdC9kZXBlbmRlbmN5IHJlc29sdXRpb24gc3ViLWxpc3QiCittc2dzdHIgIkludHJvZHVjdGlvbiDDoCBsYSBzb3VzLWxpc3RlIGRlIHLDqXNvbHV0aW9uIGRlIGNvbmZsaXRzL2TDqXBlbmRhbmNlcyIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo5OQorbXNnaWQgIiIKKyJEZXBlbmRlbmN5L2NvbmZsaWN0IHJlc29sdXRpb24gLSBpbnRyb2R1Y3Rpb24uXG4iCisiXG4iCisiT25lIG9yIG1vcmUgb2YgeW91ciBjaG9pY2VzIGhhdmUgcmFpc2VkIGEgY29uZmxpY3Qgb3IgZGVwZW5kZW5jeSBwcm9ibGVtIC1cbiIKKyJzb21lIHBhY2thZ2VzIHNob3VsZCBvbmx5IGJlIGluc3RhbGxlZCBpbiBjb25qdW5jdGlvbiB3aXRoIGNlcnRhaW4gb3RoZXJzLCAiCisiYW5kXG4iCisic29tZSBjb21iaW5hdGlvbnMgb2YgcGFja2FnZXMgbWF5IG5vdCBiZSBpbnN0YWxsZWQgdG9nZXRoZXIuXG4iCisiXG4iCisiWW91IHdpbGwgc2VlIGEgc3ViLWxpc3QgY29udGFpbmluZyB0aGUgcGFja2FnZXMgaW52b2x2ZWQuICBUaGUgYm90dG9tIGhhbGYgIgorIm9mXG4iCisidGhlIGRpc3BsYXkgc2hvd3MgcmVsZXZhbnQgY29uZmxpY3RzIGFuZCBkZXBlbmRlbmNpZXM7IHVzZSBgaScgdG8gY3ljbGUgIgorImJldHdlZW5cbiIKKyJ0aGF0LCB0aGUgcGFja2FnZSBkZXNjcmlwdGlvbnMgYW5kIHRoZSBpbnRlcm5hbCBjb250cm9sIGluZm9ybWF0aW9uLlxuIgorIlxuIgorIkEgc2V0IG9mIGBzdWdnZXN0ZWQnIHBhY2thZ2VzIGhhcyBiZWVuIGNhbGN1bGF0ZWQsIGFuZCB0aGUgaW5pdGlhbCBtYXJraW5ncyAiCisiaW5cbiIKKyJ0aGlzIHN1Yi1saXN0IGhhdmUgYmVlbiBzZXQgdG8gbWF0Y2ggdGhvc2UsIHNvIHlvdSBjYW4ganVzdCBoaXQgUmV0dXJuIHRvXG4iCisiYWNjZXB0IHRoZSBzdWdnZXN0aW9ucyBpZiB5b3Ugd2lzaC4gIFlvdSBtYXkgYWJvcnQgdGhlIGNoYW5nZShzKSB3aGljaCAiCisiY2F1c2VkXG4iCisidGhlIHByb2JsZW0ocyksIGFuZCBnbyBiYWNrIHRvIHRoZSBtYWluIGxpc3QsIGJ5IHByZXNzaW5nIGNhcGl0YWwgYFgnLlxuIgorIlxuIgorIllvdSBjYW4gYWxzbyBtb3ZlIGFyb3VuZCB0aGUgbGlzdCBhbmQgY2hhbmdlIHRoZSBtYXJraW5ncyBzbyB0aGF0IHRoZXkgYXJlICIKKyJtb3JlXG4iCisibGlrZSB3aGF0IHlvdSB3YW50LCBhbmQgeW91IGNhbiBgcmVqZWN0JyBteSBzdWdnZXN0aW9ucyBieSB1c2luZyB0aGUgIgorImNhcGl0YWxcbiIKKyJgRCcgb3IgYFInIGtleXMgKHNlZSB0aGUga2V5YmluZGluZ3MgaGVscCBzY3JlZW4pLiAgWW91IGNhbiB1c2UgY2FwaXRhbCBgUScgIgorInRvXG4iCisiZm9yY2UgbWUgdG8gYWNjZXB0IHRoZSBzaXR1YXRpb24gY3VycmVudGx5IGRpc3BsYXllZCwgaW4gY2FzZSB5b3Ugd2FudCB0b1xuIgorIm92ZXJyaWRlIGEgcmVjb21tZW5kYXRpb24gb3IgdGhpbmsgdGhhdCB0aGUgcHJvZ3JhbSBpcyBtaXN0YWtlbi5cbiIKKyJcbiIKKyJQcmVzcyA8c3BhY2U+IHRvIGxlYXZlIGhlbHAgYW5kIGVudGVyIHRoZSBzdWItbGlzdDsgcmVtZW1iZXI6IHByZXNzIGA/JyBmb3IgIgorImhlbHAuXG4iCittc2dzdHIgIiIKKyJSw6lzb2x1dGlvbiBkZSBkw6lwZW5kYW5jZS9jb25mbGl0IC0gaW50cm9kdWN0aW9uLlxuIgorIlxuIgorIlVuIG91IHBsdXNpZXVycyBkZSB2b3MgY2hvaXggb250IGFib3V0aSDDoCB1biBjb25mbGl0IG91IHVuIHByb2Jsw6htZSBkZVxuIgorImTDqXBlbmRhbmNlIC0gY2VydGFpbnMgcGFxdWV0cyBuZSBkb2l2ZW50IMOqdHJlIGluc3RhbGzDqXMgcXUnZW4gY29uam9uY3Rpb25cbiIKKyJhdmVjIGNlcnRhaW5zIGF1dHJlcywgZXQgY2VydGFpbmVzIGNvbWJpbmFpc29ucyBkZSBwYXF1ZXRzIG5lIGRvaXZlbnQgcGFzXG4iCisiw6p0cmUgaW5zdGFsbMOpcyBlbnNlbWJsZS5cbiIKKyJcbiIKKyJJbCB2b3VzIHNlcmEgcHLDqXNlbnTDqSB1bmUgc291cy1saXN0ZSBwcsOpc2VudGFudCBsZXMgcGFxdWV0cyBpbXBsaXF1w6lzLiBMYVxuIgorInBhcnRpZSBpbmbDqXJpZXVyZSBkZSBsJ8OpY3JhbiBhZmZpY2hlIGxlcyBjb25mbGl0cyBldCBkw6lwZW5kYW5jZXNcbiIKKyJwZXJ0aW5lbnRlc8KgOyB1dGlsaXNleiBsYSB0b3VjaGUgwqvCoGnCoMK7IHBvdXIgdm91cyBkw6lwbGFjZXIgZW50cmUgY2VzICIKKyJkZXJuacOocmVzLFxuIgorImxhIGRlc2NyaXB0aW9uIGRlcyBwYXF1ZXRzIGV0IGxlcyBpbmZvcm1hdGlvbnMgaW50ZXJuZXMgZGUgY29udHLDtGxlLlxuIgorIlxuIgorIlVuIGVuc2VtYmxlIGRlIHBhcXVldHMgwqvCoHN1Z2fDqXLDqXPCoMK7IGEgw6l0w6kgY2FsY3Vsw6ksIGV0IGxlcyBtYXJxdWFnZXMgIgorImluaXRpYXV4XG4iCisiZGUgY2V0dGUgc291cy1saXN0ZSBvbnQgw6l0w6kgcG9zaXRpb25uw6lzIHBvdXIgY29ycmVzcG9uZHJlIMOgIGNlcyBkZXJuaWVycyxcbiIKKyJkb25jIGlsIG5lIHZvdXMgcmVzdGUgcGx1cyBxdSfDoCBhcHB1eWVyIHN1ciBFbnRyw6llIHBvdXIgYWNjZXB0ZXIgY2VzXG4iCisic3VnZ2VzdGlvbnMgc2Vsb24gdm90cmUgYm9uIHZvdWxvaXIuIFZvdXMgcG91dmV6IGFubnVsZXIgbGEobGVzKVxuIgorIm1vZGlmaWNhdGlvbihzKSBxdWkgYShvbnQpIGNhdXPDqWUocykgY2VzIHByb2Jsw6htZXMsIGV0IHJldG91cm5lciDDoCBsYSBsaXN0ZVxuIgorInByaW5jaXBhbGUsIGVuIGFwcHV5YW50IHN1ciDCq8KgWMKgwrsgbWFqdXNjdWxlLlxuIgorIlxuIgorIlZvdXMgcG91dmV6IGF1c3NpIHZvdXMgZMOpcGxhY2VyIGRhbnMgbGEgbGlzdGUgZXQgY2hhbmdlciBsZXMgbWFycXVhZ2VzIGRlXG4iCisibWFuacOocmUgw6AgY2UgcXUnaWxzIHNvaWVudCBwbHVzIMOgIHZvdHJlIGNvbnZlbmFuY2UsIGV0IHZvdXMgcG91dmV6IHJlamV0ZXJcbiIKKyJsZXMgc3VnZ2VzdGlvbnMgZW4gdXRpbGlzYW50IGxlcyB0b3VjaGVzIMKrwqBEwqDCuyBvdSDCq8KgUsKgwrsgbWFqdXNjdWxlcyAodm9pclxuIgorImwnw6ljcmFuIGQnYWlkZSBzdXIgbGVzIGNvbWJpbmFpc29ucyBkZSB0b3VjaGVzKS4gVm91cyBwb3V2ZXogdXRpbGlzZXIgbGFcbiIKKyJ0b3VjaGUgwqvCoFHCoMK7IG1hanVzY3VsZSBwb3VyIGZvcmNlciBkc2VsZWN0IMOgIGFjY2VwdGVyIGxhIHNpdHVhdGlvblxuIgorInByw6lzZW50ZW1lbnQgYWZmaWNow6llLCBkYW5zIGxlIGNhcyBvw7kgdm91cyB2b3VkcmlleiBvdXRyZXBhc3NlciB1bmVcbiIKKyJyZWNvbW1hbmRhdGlvbiBvdSB2b3VzIHBlbnNleiBxdWUgbGUgcHJvZ3JhbW1lIGVzdCBkYW5zIGwnZXJyZXVyLlxuIgorIlxuIgorIkFwcHV5ZXogc3VyIDxlc3BhY2U+IHBvdXIgcXVpdHRlciBsJ2FpZGUgZXQgYWNjw6lkZXIgw6AgbGEgc291cy1saXN0ZcKgO1xuIgorInJhcHBlbMKgOiBhcHB1eWV6IHN1ciDCq8KgP8KgwrsgcG91ciBvYnRlbmlyIGRlIGwnYWlkZS5cbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxMjUKK21zZ2lkICJEaXNwbGF5LCBwYXJ0IDE6IHBhY2thZ2UgbGlzdGluZyBhbmQgc3RhdHVzIGNoYXJzIgorbXNnc3RyICJBZmZpY2hhZ2UsIDFyZSBwYXJ0aWXCoDogbGlzdGUgZGVzIHBhcXVldHMgZXQgY2FyYWN0w6hyZXMgZCfDqXRhdCIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxMjUKK21zZ2lkICIiCisiVGhlIHRvcCBoYWxmIG9mIHRoZSBzY3JlZW4gc2hvd3MgYSBsaXN0IG9mIHBhY2thZ2VzLiAgRm9yIGVhY2ggcGFja2FnZSB5b3UgIgorInNlZVxuIgorImZvdXIgY29sdW1ucyBmb3IgaXRzIGN1cnJlbnQgc3RhdHVzIG9uIHRoZSBzeXN0ZW0gYW5kIG1hcmsuICBJbiB0ZXJzZSBtb2RlICIKKyIodXNlXG4iCisiYHYnIHRvIHRvZ2dsZSB2ZXJib3NlIGRpc3BsYXkpIHRoZXNlIGFyZSBzaW5nbGUgY2hhcmFjdGVycywgZnJvbSBsZWZ0IHRvICIKKyJyaWdodDpcbiIKKyJcbiIKKyIgRXJyb3IgZmxhZzogU3BhY2UgLSBubyBlcnJvciAoYnV0IHBhY2thZ2UgbWF5IGJlIGluIGJyb2tlbiBzdGF0ZSAtIHNlZSAiCisiYmVsb3cpXG4iCisiICAgICAgICAgICAgICBgUicgIC0gc2VyaW91cyBlcnJvciBkdXJpbmcgaW5zdGFsbGF0aW9uLCBuZWVkcyAiCisicmVpbnN0YWxsYXRpb247XG4iCisiIEluc3RhbGxlZCBzdGF0ZTogICAgIFNwYWNlICAgIC0gbm90IGluc3RhbGxlZDtcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgIGAqJyAgICAgLSBpbnN0YWxsZWQ7XG4iCisiICAgICAgICAgICAgICAgICAgICAgICBgLScgICAgIC0gbm90IGluc3RhbGxlZCBidXQgY29uZmlnIGZpbGVzIHJlbWFpbjtcbiIKKyIgICBwYWNrYWdlcyBpbiB0aGVzZSB7IGBVJyAgICAgLSB1bnBhY2tlZCBidXQgbm90IHlldCBjb25maWd1cmVkO1xuIgorIiAgIHN0YXRlcyBhcmUgbm90ICAgIHsgYEMnICAgICAtIGhhbGYtY29uZmlndXJlZCAoYW4gZXJyb3IgaGFwcGVuZWQpO1xuIgorIiAgIChxdWl0ZSkgcHJvcGVybHkgIHsgYEknICAgICAtIGhhbGYtaW5zdGFsbGVkIChhbiBlcnJvciBoYXBwZW5lZCk7XG4iCisiICAgaW5zdGFsbGVkICAgICAgICAgeyBgVycsYHQnIC0gdHJpZ2dlcnMgYXJlIGF3YWl0ZWQgcmVzcC4gcGVuZGluZy5cbiIKKyIgT2xkIG1hcms6IHdoYXQgd2FzIHJlcXVlc3RlZCBmb3IgdGhpcyBwYWNrYWdlIGJlZm9yZSBwcmVzZW50aW5nIHRoaXMgbGlzdDtcbiIKKyIgTWFyazogd2hhdCBpcyByZXF1ZXN0ZWQgZm9yIHRoaXMgcGFja2FnZTpcbiIKKyIgIGAqJzogbWFya2VkIGZvciBpbnN0YWxsYXRpb24gb3IgdXBncmFkZTtcbiIKKyIgIGAtJzogbWFya2VkIGZvciByZW1vdmFsLCBidXQgYW55IGNvbmZpZ3VyYXRpb24gZmlsZXMgd2lsbCByZW1haW47XG4iCisiICBgPSc6IG9uIGhvbGQ6IHBhY2thZ2Ugd2lsbCBub3QgYmUgcHJvY2Vzc2VkIGF0IGFsbDtcbiIKKyIgIGBfJzogbWFya2VkIGZvciBwdXJnZSBjb21wbGV0ZWx5IC0gZXZlbiByZW1vdmUgY29uZmlndXJhdGlvbjtcbiIKKyIgIGBuJzogcGFja2FnZSBpcyBuZXcgYW5kIGhhcyB5ZXQgdG8gYmUgbWFya2VkIGZvciBpbnN0YWxsL3JlbW92ZS8mYy5cbiIKKyJcbiIKKyJBbHNvIGRpc3BsYXllZCBhcmUgZWFjaCBwYWNrYWdlJ3MgUHJpb3JpdHksIFNlY3Rpb24sIG5hbWUsIGluc3RhbGxlZCBhbmRcbiIKKyJhdmFpbGFibGUgdmVyc2lvbiBudW1iZXJzIChzaGlmdC1WIHRvIGRpc3BsYXkvaGlkZSkgYW5kIHN1bW1hcnkgIgorImRlc2NyaXB0aW9uLlxuIgorbXNnc3RyICIiCisiTGEgbW9pdGnDqSBzdXDDqXJpZXVyZSBkZSBsJ8OpY3JhbiBhZmZpY2hlIGxhIGxpc3RlIGRlcyBwYXF1ZXRzLiBDaGFxdWUgcGFxdWV0XG4iCisiZXN0IHByw6lzZW50w6kgc3VpdmFudCA0IGNvbG9ubmVzIHBvdXIgZXhwcmltZXIgc29uIMOpdGF0IGFjdHVlbCBzdXIgbGVcbiIKKyJzeXN0w6htZSBldCBzb24gbWFycXVhZ2UuIEVuIG1vZGUgY29uY2lzICh1dGlsaXNleiDCq8KgdsKgwrsgcG91ciBwYXNzZXIgZW4gbW9kZVxuIgorImQnYWZmaWNoYWdlIHZlcmJldXgpIGRlcyBjYXJhY3TDqHJlcyBzaW1wbGVzIHNvbnQgYWZmaWNow6lzLCBkZSBnYXVjaGUgw6BcbiIKKyJkcm9pdGXCoDpcbiIKKyJcbiIKKyIgRHJhcGVhdSBkJ2VycmV1csKgOiAgICAgRXNwYWNlICAgLSBhdWN1bmUgZXJyZXVyIChtYWlzIGxlIHBhcXVldCBwZXV0IMOqdHJlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYW5zIHVuIMOpdGF0IGVuZG9tbWFnw6kgLSB2b2lyIGNpLSIKKyJkZXNzb3VzKVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgIMKrwqBSwqDCuyAgICAtIHPDqXJpZXV4IHByb2Jsw6htZXMgbG9ycyBkZSAiCisibCdpbnN0YWxsYXRpb24sXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuw6ljZXNzaXRlIHVuZSByw6lpbnN0YWxsYXRpb27CoDtcbiIKKyIgw4l0YXQgZCdpbnN0YWxsYXRpb27CoDogIEVzcGFjZSAgIC0gbm9uIGluc3RhbGzDqcKgO1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgIMKrwqAqwqDCuyAgICAtIGluc3RhbGzDqcKgO1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgIMKrwqAtwqDCuyAgICAtIG5vbiBpbnN0YWxsw6kgbWFpcyBsZXMgZmljaGllcnMgZGUgY29uZmlnICIKKyJyZXN0ZW50wqA7XG4iCisiICAgICAgbGVzIHBhcXVldHMgZGFucyB7IMKrwqBVwqDCuyAgIC0gZMOpcGFxdWV0w6kgbWFpcyBwYXMgZW5jb3JlIGNvbmZpZ3Vyw6nCoDtcbiIKKyIgICAgICAgICAgY2VzIMOpdGF0cyAgICB7IMKrwqBDwqDCuyAgIC0gcGFydGllbGxlbWVudCBjb25maWd1csOpICh1bmUgZXJyZXVyIGVzdCAiCisic3VydmVudWUpwqA7XG4iCisiICAgICAgc29udCBlbmRvbW1hZ8OpcyAgeyDCq8KgScKgwrsgICAtIHBhcnRpZWxsZW1lbnQgaW5zdGFsbMOpICh1bmUgZXJyZXVyIGVzdCAiCisic3VydmVudWUpLlxuIgorIiBBbmNpZW4gbWFycXVhZ2XCoDogY2UgcXVpIMOpdGFpdCBkw6lzaXLDqSBjb25jZXJuYW50IGxlIHBhcXVldCBhdmFudCBkZSAiCisicHLDqXNlbnRlciBjZXR0ZSBsaXN0ZcKgO1xuIgorIiBNYXJxdWFnZcKgOiBjZSBxdWUgbCdvbiBkw6lzaXJlIGZhaXJlIGRlIGNlIHBhcXVldMKgOlxuIgorIiAgwqvCoCrCoMK7wqA6IG1hcnF1w6kgcG91ciB1bmUgaW5zdGFsbGF0aW9uIG91IHVuZSBtaXNlIMOgIG5pdmVhdcKgO1xuIgorIiAgwqvCoC3CoMK7wqA6IG1hcnF1w6kgcG91ciB1bmUgc3VwcHJlc3Npb24sIG1haXMgdG91cyBsZXMgZmljaGllcnMgZGUgIgorImNvbmZpZ3VyYXRpb24gdm9udCByZXN0ZXLCoDtcbiIKKyIgIMKrwqA9wqDCu8KgOiDDoCBnYXJkZXIgKG9uIGhvbGQpwqA6IGxlIHBhcXVldCBuZSBzZXJhIHBhcyBkdSB0b3V0IHRyYWl0w6nCoDtcbiIKKyIgIMKrwqBfwqDCu8KgOiBtYXJxdcOpIHBvdXIgdW5lIHB1cmdlIHRvdGFsZSAtIG3Dqm1lIGxhIGNvbmZpZ3VyYXRpb24gc2VyYSAiCisic3VwcHJpbcOpZcKgO1xuIgorIiAgwqvCoG7CoMK7wqA6IGxlIHBhcXVldCBlc3Qgbm91dmVhdSBldCBuJ2EgcGFzIGVuY29yZSDDqXTDqSBtYXJxdcOpIHBvdXIgw6p0cmUgIgorImluc3RhbGzDqS9zdXBwcmltw6kvZXRjLlxuIgorIlxuIgorIlNvbnQgYXVzc2kgYWZmaWNow6lzIHBvdXIgY2hhcXVlIHBhcXVldCBsYSBQcmlvcml0w6ksIGxhIFNlY3Rpb24sIGxlIG5vbSwgbGVzXG4iCisibnVtw6lyb3MgZGUgdmVyc2lvbnMgaW5zdGFsbMOpZSBldCBkaXNwb25pYmxlIChzaGlmdC1WIHBvdXIgYWZmaWNoZXIvY2FjaGVyKVxuIgorImV0IHVuZSBkZXNjcmlwdGlvbiByw6lzdW3DqWUuXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTUyCittc2dpZCAiRGlzcGxheSwgcGFydCAyOiBsaXN0IGhpZ2hsaWdodDsgaW5mb3JtYXRpb24gZGlzcGxheSIKK21zZ3N0ciAiIgorIkFmZmljaGFnZSwgMmUgcGFydGllwqA6IHN1cmxpZ25hZ2UgZGUgbGEgbGlzdGXCoDsgYWZmaWNoYWdlIGQnaW5mb3JtYXRpb25zIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjE1MgorbXNnaWQgIiIKKyIqIEhpZ2hsaWdodDogT25lIGxpbmUgaW4gdGhlIHBhY2thZ2UgbGlzdCB3aWxsIGJlIGhpZ2hsaWdodGVkLiAgSXQgIgorImluZGljYXRlc1xuIgorIiAgd2hpY2ggcGFja2FnZShzKSB3aWxsIGJlIGFmZmVjdGVkIGJ5IHByZXNzZXMgb2YgYCsnLCBgLScgYW5kIGBfJy5cbiIKKyJcbiIKKyIqIFRoZSBkaXZpZGluZyBsaW5lIGluIHRoZSBtaWRkbGUgb2YgdGhlIHNjcmVlbiBzaG93cyBhIGJyaWVmIGV4cGxhbmF0aW9uICIKKyJvZlxuIgorIiAgdGhlIHN0YXR1cyBvZiB0aGUgY3VycmVudGx5LWhpZ2hsaWdodGVkIHBhY2thZ2UsIG9yIGEgZGVzY3JpcHRpb24gb2YgIgorIndoaWNoXG4iCisiICBncm91cCBpcyBoaWdobGlnaHRlZCBpZiBhIGdyb3VwIGxpbmUgaXMuICBJZiB5b3UgZG9uJ3QgdW5kZXJzdGFuZCB0aGVcbiIKKyIgIG1lYW5pbmcgb2Ygc29tZSBvZiB0aGUgc3RhdHVzIGNoYXJhY3RlcnMgZGlzcGxheWVkLCBnbyB0byB0aGUgcmVsZXZhbnRcbiIKKyIgIHBhY2thZ2UgYW5kIGxvb2sgYXQgdGhpcyBkaXZpZGVyIGxpbmUsIG9yIHVzZSB0aGUgYHYnIGtleSBmb3IgYSB2ZXJib3NlXG4iCisiICBkaXNwbGF5IChwcmVzcyBgdicgYWdhaW4gdG8gZ28gYmFjayB0byB0aGUgdGVyc2UgZGlzcGxheSkuXG4iCisiXG4iCisiKiBUaGUgYm90dG9tIG9mIHRoZSBzY3JlZW4gc2hvd3MgbW9yZSBpbmZvcm1hdGlvbiBhYm91dCB0aGVcbiIKKyIgIGN1cnJlbnRseS1oaWdobGlnaHRlZCBwYWNrYWdlIChpZiB0aGVyZSBpcyBvbmx5IG9uZSkuXG4iCisiXG4iCisiICBJdCBjYW4gc2hvdyBhbiBleHRlbmRlZCBkZXNjcmlwdGlvbiBvZiB0aGUgcGFja2FnZSwgdGhlIGludGVybmFsIHBhY2thZ2VcbiIKKyIgIGNvbnRyb2wgZGV0YWlscyAoZWl0aGVyIGZvciB0aGUgaW5zdGFsbGVkIG9yIGF2YWlsYWJsZSB2ZXJzaW9uIG9mIHRoZVxuIgorIiAgcGFja2FnZSksIG9yIGluZm9ybWF0aW9uIGFib3V0IGNvbmZsaWN0cyBhbmQgZGVwZW5kZW5jaWVzIGludm9sdmluZyB0aGVcbiIKKyIgIGN1cnJlbnQgcGFja2FnZSAoaW4gY29uZmxpY3QvZGVwZW5kZW5jeSByZXNvbHV0aW9uIHN1Ymxpc3RzKS5cbiIKKyJcbiIKKyIgIFVzZSB0aGUgYGknIGtleSB0byBjeWNsZSB0aHJvdWdoIHRoZSBkaXNwbGF5cywgYW5kIGBJJyB0byBoaWRlIHRoZVxuIgorIiAgaW5mb3JtYXRpb24gZGlzcGxheSBvciBleHBhbmQgaXQgdG8gdXNlIGFsbW9zdCBhbGwgb2YgdGhlIHNjcmVlbi5cbiIKK21zZ3N0ciAiIgorIiogU3VybGlnbmFnZcKgOiB1bmUgbGlnbmUgZGUgbGEgbGlzdGUgZGVzIHBhcXVldHMgc2VyYSBzdXJsaWduw6llLiBFbGxlXG4iCisiICBpbmRpcXVlIHF1ZWwocykgcGFxdWV0KHMpIHNlcmEgYWZmZWN0w6kgcGFyIHVuIGFwcHVpIHN1ciDCq8KgK8KgwrssIMKrwqAtwqDCuyBldCAiCisiwqvCoF/CoMK7LlxuIgorIlxuIgorIiogTGEgbGlnbmUgZGl2aXNhbnQgbCfDqWNyYW4gZW4gZGV1eCBwYXJ0aWVzIGFmZmljaGUgdW5lIGV4cGxpY2F0aW9uXG4iCisiICBzdWNjaW5jdGUgc3VyIGwnw6l0YXQgZHUgcGFxdWV0IHByw6lzZW50ZW1lbnQgc3VybGlnbsOpLCBvdSB1bmUgZGVzY3JpcHRpb25cbiIKKyIgIGRlIGwnw6l2ZW50dWVsIGdyb3VwZSBzdXJsaWduw6kuIFNpIHZvdXMgbmUgY29tcHJlbmV6IHBhcyBsZSBzZW5zIGRlXG4iCisiICBjZXJ0YWlucyBjYXJhY3TDqHJlcyBkJ8OpdGF0IGFmZmljaMOpcywgZMOpcGxhY2V6LXZvdXMgc3VyIGxlIHBhcXVldCBhZMOpcXVhdFxuIgorIiAgZXQgcmVnYXJkZXogbGEgbGlnbmUgZGUgZGl2aXNpb24sIG91IHV0aWxpc2V6IGxhIHRvdWNoZSDCq8KgdsKgwrsgcG91ciAiCisib2J0ZW5pclxuIgorIiAgdW4gYWZmaWNoYWdlIHZlcmJldXggKGFwcHV5ZXogZW5jb3JlIHN1ciDCq8KgdsKgwrsgcG91ciByZXZlbmlyIMOgIGwnYWZmaWNoYWdlXG4iCisiICBsYWNvbmlxdWUpLlxuIgorIlxuIgorIiogTGUgYmFzIGRlIGwnw6ljcmFuIGFmZmljaGUgZGUgcGx1cyBhbXBsZXMgaW5mb3JtYXRpb25zIHN1ciBsZSBwYXF1ZXRcbiIKKyIgIHByw6lzZW50ZW1lbnQgc3VybGlnbsOpIChzJ2lsIG4neSBlbiBhIHF1J3VuKS5cbiIKKyJcbiIKKyIgIElsIHBldXQgbW9udHJlciB1bmUgZGVzY3JpcHRpb24gw6l0ZW5kdWUgZHUgcGFxdWV0LCBsZXMgZMOpdGFpbHMgZGVcbiIKKyIgIGNvbnRyw7RsZSBpbnRlcm5lcyBhdSBwYXF1ZXQgKGF1c3NpIGJpZW4gcG91ciBsZXMgdmVyc2lvbnMgaW5zdGFsbMOpZXMgcXVlXG4iCisiICBsZXMgdmVyc2lvbnMgZGlzcG9uaWJsZXMgZCd1biBwYXF1ZXQpLCBvdSBsZXMgaW5mb3JtYXRpb25zIGNvbmNlcm5hbnQgbGVzXG4iCisiICBjb25mbGl0cyBldCBsZXMgZMOpcGVuZGFuY2VzIGltcGxpcXVhbnQgbGUgcHLDqXNlbnQgcGFxdWV0IChkYW5zIHVuZVxuIgorIiAgc291cy1saXN0ZSBkZSByw6lzb2x1dGlvbiBkZSBjb25mbGl0L2TDqXBlbmRhbmNlKS5cbiIKKyJcbiIKKyIgIFV0aWxpc2V6IGxlcyB0b3VjaGVzIMKrwqBpwqDCuyBwb3VyIGNpcmN1bGVyIMOgIHRyYXZlcnMgbGVzIMOpY3JhbnMsIGV0IMKrwqBJwqDCuyAiCisicG91clxuIgorIiAgbWFzcXVlciBsJ2FmZmljaGFnZSBkJ2luZm9ybWF0aW9ucyBvdSBsJ8OpdGVuZHJlIGp1c3F1J8OgIGx1aSBmYWlyZSBwcmVuZHJlXG4iCisiICBsYSBxdWFzaS10b3RhbGl0w6kgZGUgbCfDqWNyYW4uXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTc2Cittc2dpZCAiSW50cm9kdWN0aW9uIHRvIG1ldGhvZCBzZWxlY3Rpb24gZGlzcGxheSIKK21zZ3N0ciAiSW50cm9kdWN0aW9uIMOgIGxhIHPDqWxlY3Rpb24gZGVzIG3DqXRob2RlcyIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxNzYKK21zZ2lkICIiCisiZHNlbGVjdCBhbmQgZHBrZyBjYW4gZG8gYXV0b21hdGljIGluc3RhbGxhdGlvbiwgbG9hZGluZyB0aGUgcGFja2FnZSBmaWxlcyB0byAiCisiYmVcbiIKKyJpbnN0YWxsZWQgZnJvbSBvbmUgb2YgYSBudW1iZXIgb2YgZGlmZmVyZW50IHBvc3NpYmxlIHBsYWNlcy5cbiIKKyJcbiIKKyJUaGlzIGxpc3QgYWxsb3dzIHlvdSB0byBzZWxlY3Qgb25lIG9mIHRoZXNlIGluc3RhbGxhdGlvbiBtZXRob2RzLlxuIgorIlxuIgorIk1vdmUgdGhlIGhpZ2hsaWdodCB0byB0aGUgbWV0aG9kIHlvdSB3aXNoIHRvIHVzZSwgYW5kIGhpdCBFbnRlci4gIFlvdSB3aWxsICIKKyJ0aGVuXG4iCisiYmUgcHJvbXB0ZWQgZm9yIHRoZSBpbmZvcm1hdGlvbiByZXF1aXJlZCB0byBkbyB0aGUgaW5zdGFsbGF0aW9uLlxuIgorIlxuIgorIkFzIHlvdSBtb3ZlIHRoZSBoaWdobGlnaHQgYSBkZXNjcmlwdGlvbiBvZiBlYWNoIG1ldGhvZCwgd2hlcmUgYXZhaWxhYmxlLCBpc1xuIgorImRpc3BsYXllZCBpbiB0aGUgYm90dG9tIGhhbGYgb2YgdGhlIHNjcmVlbi5cbiIKKyJcbiIKKyJJZiB5b3Ugd2lzaCB0byBxdWl0IHdpdGhvdXQgY2hhbmdpbmcgYW55dGhpbmcgdXNlIHRoZSBgeCcga2V5IHdoaWxlIGluIHRoZSAiCisibGlzdFxuIgorIm9mIGluc3RhbGxhdGlvbiBtZXRob2RzLlxuIgorIlxuIgorIkEgZnVsbCBsaXN0IG9mIGtleXN0cm9rZXMgaXMgYXZhaWxhYmxlIGJ5IHByZXNzaW5nIGBrJyBub3csIG9yIGZyb20gdGhlICIKKyJoZWxwXG4iCisibWVudSByZWFjaGFibGUgYnkgcHJlc3NpbmcgYD8nLlxuIgorbXNnc3RyICIiCisiZHNlbGVjdCBldCBkcGtnIHBldXZlbnQgZWZmZWN0dWVyIHVuZSBpbnN0YWxsYXRpb24gYXV0b21hdGlxdWUsIGNoYXJnZXIgbGVzXG4iCisicGFxdWV0cyDDoCBpbnN0YWxsZXIgZGVwdWlzIGwndW4gZGVzIG5vbWJyZXV4IGVuZHJvaXRzIHBvc3NpYmxlcy5cbiIKKyJcbiIKKyJDZXR0ZSBsaXN0ZSB2b3VzIHBlcm1ldCBkZSBjaG9pc2lyIGwndW5lIGRlIGNlcyBtw6l0aG9kZXMgZCdpbnN0YWxsYXRpb24uXG4iCisiXG4iCisiRMOpcGxhY2V6IGxlIHN1cmxpZ25hZ2Ugc3VyIGxhIG3DqXRob2RlIHF1ZSB2b3VzIHNvdWhhaXRleiB1dGlsaXNlciwgZXRcbiIKKyJhcHB1eWV6IHN1ciBFbnRyw6llLiBJbCB2b3VzIHNlcmEgZW5zdWl0ZSBkZW1hbmTDqSBkZXMgaW5mb3JtYXRpb25zXG4iCisibsOpY2Vzc2FpcmVzIMOgIGwnaW5zdGFsbGF0aW9uLlxuIgorIlxuIgorIlF1YW5kIHZvdXMgZMOpcGxhY2V6IGxlIHN1cmxpZ25hZ2UsIHVuZSBkZXNjcmlwdGlvbiBkZSBjaGFxdWUgbcOpdGhvZGUsIHNpXG4iCisiZGlzcG9uaWJsZSwgZXN0IGFmZmljaMOpZSBzdXIgbGEgcGFydGllIGluZsOpcmlldXJlIGRlIGwnw6ljcmFuLlxuIgorIlxuIgorIlNpIHZvdXMgc291aGFpdGV6IHF1aXR0ZXIgc2FucyByaWVuIGNoYW5nZXIsIHV0aWxpc2V6IGxhIHRvdWNoZSDCq8KgeMKgwrsgcXVhbmRcbiIKKyJ2b3VzIMOqdGVzIHBvc2l0aW9ubsOpIHN1ciBsYSBsaXN0ZSBkZXMgbcOpdGhvZGVzIGQnaW5zdGFsbGF0aW9uLlxuIgorIlxuIgorIlVuZSBsaXN0ZSBjb21wbMOodGUgZGVzIGNvbWJpbmFpc29ucyBkZSB0b3VjaGVzIGVzdCBkaXNwb25pYmxlIGVuIGFwcHV5YW50XG4iCisiaWNpIHN1ciDCq8Kga8KgwrssIG91IGRlcHVpcyBsZSBtZW51IGQnYWlkZSBhY2Nlc3NpYmxlIGVuIGFwcHV5YW50IHN1ciDCq8KgP8KgwrsuXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTk2Cittc2dpZCAiS2V5c3Ryb2tlcyBmb3IgbWV0aG9kIHNlbGVjdGlvbiIKK21zZ3N0ciAiQ29tYmluYWlzb25zIGRlIHRvdWNoZXMgcG91ciBsYSBzw6lsZWN0aW9uIGRlIG3DqXRob2RlcyIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxOTYKK21zZ2lkICIiCisiTW90aW9uIGtleXM6IE5leHQvUHJldmlvdXMsIFRvcC9FbmQsIFVwL0Rvd24sIEJhY2t3YXJkcy9Gb3J3YXJkczpcbiIKKyIgIGosIERvd24tYXJyb3cgICAgICAgICBrLCBVcC1hcnJvdyAgICAgICAgICAgICBtb3ZlIGhpZ2hsaWdodFxuIgorIiAgTiwgUGFnZS1kb3duLCBTcGFjZSAgIFAsIFBhZ2UtdXAsIEJhY2tzcGFjZSAgIHNjcm9sbCBsaXN0IGJ5IDEgcGFnZVxuIgorIiAgXm4gICAgICAgICAgICAgICAgICAgIF5wICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBsaXN0IGJ5IDEgbGluZVxuIgorIiAgdCwgSG9tZSAgICAgICAgICAgICAgIGUsIEVuZCAgICAgICAgICAgICAgICAgIGp1bXAgdG8gdG9wL2VuZCBvZiBsaXN0XG4iCisiICB1ICAgICAgICAgICAgICAgICAgICAgZCAgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGluZm8gYnkgMSBwYWdlXG4iCisiICBedSAgICAgICAgICAgICAgICAgICAgXmQgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGluZm8gYnkgMSBsaW5lXG4iCisiICBCLCBMZWZ0LWFycm93ICAgICAgICAgRiwgUmlnaHQtYXJyb3cgICAgICAgICAgcGFuIGRpc3BsYXkgYnkgMS8zIHNjcmVlblxuIgorIiAgXmIgICAgICAgICAgICAgICAgICAgIF5mICAgICAgICAgICAgICAgICAgICAgIHBhbiBkaXNwbGF5IGJ5IDEgY2hhcmFjdGVyXG4iCisiKFRoZXNlIGFyZSB0aGUgc2FtZSBtb3Rpb24ga2V5cyBhcyBpbiB0aGUgcGFja2FnZSBsaXN0IGRpc3BsYXkuKVxuIgorIlxuIgorIlF1aXQ6XG4iCisiIFJldHVybiwgRW50ZXIgICAgc2VsZWN0IHRoaXMgbWV0aG9kIGFuZCBnbyB0byBpdHMgY29uZmlndXJhdGlvbiBkaWFsb2d1ZVxuIgorIiB4LCBYICAgICAgICAgICAgIGV4aXQgd2l0aG91dCBjaGFuZ2luZyBvciBzZXR0aW5nIHVwIHRoZSBpbnN0YWxsYXRpb24gIgorIm1ldGhvZFxuIgorIlxuIgorIk1pc2NlbGxhbmVvdXM6XG4iCisiICA/LCBIZWxwLCBGMSAgICAgIHJlcXVlc3QgaGVscFxuIgorIiBebCAgICAgICAgICAgICAgICByZWRyYXcgZGlzcGxheVxuIgorIiAgLyAgICAgICAgICAgICAgICBzZWFyY2ggKGp1c3QgcmV0dXJuIHRvIGNhbmNlbClcbiIKKyIgIFxcICAgICAgICAgICAgICAgIHJlcGVhdCBsYXN0IHNlYXJjaFxuIgorbXNnc3RyICIiCisiVG91Y2hlcyBkZSBkw6lwbGFjZW1lbnTCoDogU3VpdmFudC9QcsOpY8OpZGVudCwgRMOpYnV0L0ZpbiwgSGF1dC9CYXMsIEFycmnDqHJlLyIKKyJBdmFudMKgOlxuIgorIiAgbiwgRmzDqGNoZSBiYXMsIGogICAgICBwLCBGbMOoY2hlIGhhdXQsIGsgICAgZMOpcGxhY2VtZW50IGR1IHN1cmxpZ25hZ2VcbiIKKyIgIE4sIFBhZ2UgYmFzLCBFc3BhY2UgICBQLCBQYWdlIGJhcywgRWZmYWNlICBkw6lmaWxlbWVudCBsaXN0ZSBkJ3VuZSBwYWdlXG4iCisiICBebiAgICAgICAgICAgICAgICAgICAgXnAgICAgICAgICAgICAgICAgICAgZMOpZmlsZW1lbnQgbGlzdGUgZCd1bmUgbGlnbmVcbiIKKyIgIHQsIETDqWJ1dCAgICAgICAgICAgICAgZSwgRmluICAgICAgICAgICAgICAgYWxsZXIgYXUgZMOpYnV0L2ZpbiBkZSBsYSBsaXN0ZVxuIgorIiAgdSAgICAgICAgICAgICAgICAgICAgIGQgICAgICAgICAgICAgICAgICAgIGZhaXJlIGTDqWZpbGVyIGluZm8gZCd1bmUgcGFnZVxuIgorIiAgXnUgICAgICAgICAgICAgICAgICAgIF5kICAgICAgICAgICAgICAgICAgIGZhaXJlIGTDqWZpbGVyIGluZm8gZCd1bmUgbGlnbmVcbiIKKyIgIEIsIEZsw6hjaGUgZ2F1Y2hlICAgICAgRiwgRmzDqGNoZSBkcm9pdGUgICAgIGTDqXBsYWNlciBob3Jpei4gYWZmaWNoYWdlIGRlICIKKyIxLzMgZCfDqWNyYW5cbiIKKyIgIF5iICAgICAgICAgICAgICAgICAgICBeZiAgICAgICAgICAgICAgICAgICBkw6lwbGFjZXIgaG9yaXouIGFmZmljaGFnZSBkJ3VuICIKKyJjYXJhY3TDqHJlXG4iCisiKENlIHNvbnQgbGVzIG3Dqm1lcyB0b3VjaGVzIGRlIGTDqXBsYWNlbWVudCBxdWUgcG91ciBsJ2FmZmljaGFnZSBkZSBsYSBsaXN0ZSAiCisiZGVzIHBhcXVldHMuKVxuIgorIlxuIgorIlF1aXR0ZXLCoDpcbiIKKyIgRW50csOpZSwgRW50ciAgc8OpbGVjdGlvbm5lciBjZXR0ZSBtw6l0aG9kZSBldCBjb25maWd1cmVyIGNlbGxlLWNpIGRlIG1hbmnDqHJlICIKKyJpbnRlcmFjdGl2ZVxuIgorIiB4LCBYICAgICAgICAgIHNvcnRpciBzYW5zIGNoYW5nZXIgb3UgY29uZmlndXJlciBsYSBtw6l0aG9kZSBkJ2luc3RhbGxhdGlvblxuIgorIlxuIgorIkRpdmVyc8KgOlxuIgorIiDCoD8sIEhlbHAsIEYxICAgICBkZW1hbmRlciBkZSBsJ2FpZGVcbiIKKyIgXmwgICAgICAgICAgICAgICByZWRlc3NpbmVyIGwnYWZmaWNoYWdlXG4iCisiICAvICAgICAgICAgICAgICAgcmVjaGVyY2hlciAoYXBwdXllciBzdXIgZW50csOpZSBwb3VyIGFubnVsZXIpXG4iCisiICBcXCAgICAgICAgICAgICAgIHLDqXDDqXRlciBsYSBkZXJuacOocmUgcmVjaGVyY2hlXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzo2MAorbXNnaWQgIlR5cGUgZHNlbGVjdCAtLWhlbHAgZm9yIGhlbHAuIgorbXNnc3RyICJUYXBlciBkc2VsZWN0IC0taGVscCBwb3VyIG9idGVuaXIgdW5lIGFpZGUuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQzCittc2dpZCAiYSIKK21zZ3N0ciAiYSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0MworbXNnaWQgIltBXWNjZXNzIgorbXNnc3RyICJbQV1jY8OpZGVyIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQzCittc2dpZCAiQ2hvb3NlIHRoZSBhY2Nlc3MgbWV0aG9kIHRvIHVzZS4iCittc2dzdHIgIkNob2lzaXIgbGEgbcOpdGhvZGUgZCdhY2PDqHMgw6AgdXRpbGlzZXIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDQKK21zZ2lkICJ1IgorbXNnc3RyICJtIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ0Cittc2dpZCAiW1VdcGRhdGUiCittc2dzdHIgIltNXWlzZSDDoCBqb3VyIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ0Cittc2dpZCAiVXBkYXRlIGxpc3Qgb2YgYXZhaWxhYmxlIHBhY2thZ2VzLCBpZiBwb3NzaWJsZS4iCittc2dzdHIgIk1pc2Ugw6Agam91ciBkZSBsJ2luZm9ybWF0aW9uIHN1ciBsZXMgcGFxdWV0cyBkaXNwb25pYmxlcywgc2kgcG9zc2libGUuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ1Cittc2dpZCAicyIKK21zZ3N0ciAicyIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NQorbXNnaWQgIltTXWVsZWN0IgorbXNnc3RyICJbU13DqWxlY3Rpb25uZXIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDUKK21zZ2lkICJSZXF1ZXN0IHdoaWNoIHBhY2thZ2VzIHlvdSB3YW50IG9uIHlvdXIgc3lzdGVtLiIKK21zZ3N0ciAiU8OpbGVjdGlvbiBkZXMgcGFxdWV0cyBxdWUgdm91cyBkw6lzaXJleiBhdm9pciBzdXIgdm90cmUgc3lzdMOobWUuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ2Cittc2dpZCAiaSIKK21zZ3N0ciAiaSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NgorbXNnaWQgIltJXW5zdGFsbCIKK21zZ3N0ciAiW0ldbnN0YWxsZXIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDYKK21zZ2lkICJJbnN0YWxsIGFuZCB1cGdyYWRlIHdhbnRlZCBwYWNrYWdlcy4iCittc2dzdHIgIkluc3RhbGxhdGlvbiBldCBtaXNlIMOgIG5pdmVhdSBkZXMgcGFxdWV0cyBkw6lzaXLDqXMuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ3Cittc2dpZCAiYyIKK21zZ3N0ciAiYyIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NworbXNnaWQgIltDXW9uZmlnIgorbXNnc3RyICJbQ11vbmZpZ3VyZXIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDcKK21zZ2lkICJDb25maWd1cmUgYW55IHBhY2thZ2VzIHRoYXQgYXJlIHVuY29uZmlndXJlZC4iCittc2dzdHIgIkNvbmZpZ3VyYXRpb24gZGUgdG91dCBwYXF1ZXQgbm9uIGNvbmZpZ3Vyw6kuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ4Cittc2dpZCAiciIKK21zZ3N0ciAiciIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OAorbXNnaWQgIltSXWVtb3ZlIgorbXNnc3RyICJbUl1ldGlyZXIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDgKK21zZ2lkICJSZW1vdmUgdW53YW50ZWQgc29mdHdhcmUuIgorbXNnc3RyICJTdXBwcmVzc2lvbiBkZXMgYXBwbGljYXRpb25zIG5vbiBkw6lzaXLDqWVzLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OQorbXNnaWQgInEiCittc2dzdHIgInEiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDkKK21zZ2lkICJbUV11aXQiCittc2dzdHIgIltRXXVpdHRlciIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OQorbXNnaWQgIlF1aXQgZHNlbGVjdC4iCittc2dzdHIgIlF1aXR0ZXIgZHNlbGVjdC4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNTAKK21zZ2lkICJtZW51IgorbXNnc3RyICJtZW51IgorCisjOiBkc2VsZWN0L21haW4uY2M6MTU1CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiBgJXMnIHBhY2thZ2UgaGFuZGxpbmcgZnJvbnRlbmQgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiSW50ZXJmYWNlIGRlIGdlc3Rpb24gZGUgcGFxdWV0cyBEZWJpYW4gwqvCoCVzwqDCuyB2ZXJzaW9uICVzLlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTU4Cittc2dpZCAiIgorIkNvcHlyaWdodCAoQykgMTk5NC0xOTk2IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uXG4iCittc2dzdHIgIiIKKyJDb3B5cmlnaHQgKEMpIDE5OTQtMTk5NiBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTYyCittc2dpZCAiIgorIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgb3JcbiIKKyJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKK21zZ3N0ciAiIgorIkNlIHByb2dyYW1tZSBlc3QgdW4gbG9naWNpZWwgbGlicmXCoDsgcHJpw6hyZSBkZSBjb25zdWx0ZXIgbGEgwqvCoEdOVSBHZW5lcmFsXG4iCisiUHVibGljICBMaWNlbnNlwqDCuyB2ZXJzaW9uIDIgb3Ugc3Vww6lyaWV1cmUgcG91ciBwcmVuZHJlIGNvbm5haXNzYW5jZSBkZXNcbiIKKyJjb25kaXRpb25zIGRlIHJlcHJvZHVjdGlvbi4gQVVDVU5FIGdhcmFudGllIG4nZXN0IG9mZmVydGUuXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNzIgZHNlbGVjdC9tYWluLmNjOjIyMAorbXNnaWQgIjxzdGFuZGFyZCBvdXRwdXQ+IgorbXNnc3RyICI8c29ydGllIHN0YW5kYXJkPiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE4MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIFs8YWN0aW9uPiAuLi5dXG4iCisiXG4iCittc2dzdHIgIiIKKyJTeW50YXhlIDogJXMgWzxvcHRpb24+IC4uLl0gWzxhY3Rpb24+IC4uLl1cbiIKKyJcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE4NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorIiAgLS1leHBlcnQgICAgICAgICAgICAgICAgICAgVHVybiBvbiBleHBlcnQgbW9kZS5cbiIKKyIgIC0tZGVidWcgPGZpbGU+IHwgLUQ8ZmlsZT4gIFR1cm4gb24gZGVidWdnaW5nLCBzZW5kaW5nIG91dHB1dCB0byA8ZmlsZT4uXG4iCisiICAtLWNvbG91ciB8IC0tY29sb3Igc2NyZWVucGFydDpbZm9yZWdyb3VuZF0sW2JhY2tncm91bmRdWzphdHRyWythdHRyKy4uXV1cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENvbmZpZ3VyZSBzY3JlZW4gY29sb3Vycy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyIDxyw6lwZXJ0b2lyZT4gICAgVXRpbGlzZXIgPHLDqXBlcnRvaXJlPiBhdSBsaWV1IGRlICVzwqA7XG4iCisiICAtLWV4cGVydCAgICAgICAgICAgICAgICAgICBBY3RpdmVyIGxlIG1vZGUgZXhwZXJ0wqA7XG4iCisiICAtLWRlYnVnIDxmaWNoaWVyPiB8IC1EPGZpY2hpZXI+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBY3RpdmVyIGxlIG1vZGUgZMOpYm9nYWdlIGV0IHJlZGlyaWdlclxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbCdhZmZpY2hhZ2UgZGFucyA8ZmljaGllcj7CoDtcbiIKKyIgIC0tY29sb3VyIHwgLS1jb2xvciBzY3JlZW5wYXJ0OlthdmFudF9wbGFuXSxbYXJyacOocmVfcGxhbl1bOmF0dHJbK2F0dHIiCisiKy4uXV1cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENvbmZpZ3VyZXIgbGVzIGNvdWxldXJzIGQnYWZmaWNoYWdlwqA7XG4iCisiXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgICAgU2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgIFNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCittc2dzdHIgIiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICAgIEFmZmljaGVyIGNlIG1lc3NhZ2UgZCdhaWRlIDtcbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgIEFmZmljaGVyIGxhIHZlcnNpb24gO1xuIgorIlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjAxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJBY3Rpb25zOlxuIgorIiAgYWNjZXNzIHVwZGF0ZSBzZWxlY3QgaW5zdGFsbCBjb25maWcgcmVtb3ZlIHF1aXRcbiIKKyJcbiIKK21zZ3N0ciAiIgorIkFjdGlvbnM6XG4iCisiICBhY2Nlc3MgdXBkYXRlIHNlbGVjdCBpbnN0YWxsIGNvbmZpZyByZW1vdmUgcXVpdFxuIgorIlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjA1CisjLCBjLWZvcm1hdAorbXNnaWQgIlNjcmVlbnBhcnRzOlxuIgorbXNnc3RyICJQYXJ0aWVzIGRlIGwnw6ljcmFuwqA6XG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ29sb3VyczpcbiIKK21zZ3N0ciAiQ291bGV1cnPCoDpcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjIxNQorIywgYy1mb3JtYXQKK21zZ2lkICJBdHRyaWJ1dGVzOlxuIgorbXNnc3RyICJBdHRyaWJ1dHPCoDpcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjIzMworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBvcGVuIGRlYnVnIGZpbGUgYCUuMjU1cydcbiIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkJ291dnJpciBsZSBmaWNoaWVyIGRlIGTDqWJvZ2FnZSDCq8KgJS4yNTVzwqDCu1xuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjUzCisjLCBjLWZvcm1hdAorbXNnaWQgIkludmFsaWQgJXMgYCVzJ1xuIgorbXNnc3RyICJJbnZhbGlkZSAlcyDCq8KgJXPCoMK7XG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyNzAKK21zZ2lkICJzY3JlZW4gcGFydCIKK21zZ3N0ciAiUGFydGllIGRlIGwnw6ljcmFuIgorCisjOiBkc2VsZWN0L21haW4uY2M6Mjc2Cittc2dpZCAiTnVsbCBjb2xvdXIgc3BlY2lmaWNhdGlvblxuIgorbXNnc3RyICJTcMOpY2lmaWNhdGlvbiBkZSBjb3VsZXVyIG51bGxlXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyODQgZHNlbGVjdC9tYWluLmNjOjI4OQorbXNnaWQgImNvbG91ciIKK21zZ3N0ciAiY291bGV1ciIKKworIzogZHNlbGVjdC9tYWluLmNjOjI5NworbXNnaWQgImNvbG91ciBhdHRyaWJ1dGUiCittc2dzdHIgImF0dHJpYnV0IGRlIGNvdWxldXIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzozMjkKK21zZ2lkICJUZXJtaW5hbCBkb2VzIG5vdCBhcHBlYXIgdG8gc3VwcG9ydCBjdXJzb3IgYWRkcmVzc2luZy5cbiIKK21zZ3N0ciAiSWwgc2VtYmxlIHF1ZSB2b3RyZSB0ZXJtaW5hbCBuZSBzdXBwb3J0ZSBwYXMgbGEgZ2VzdGlvbiBkdSBjdXJzZXVyXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzozMzEKK21zZ2lkICJUZXJtaW5hbCBkb2VzIG5vdCBhcHBlYXIgdG8gc3VwcG9ydCBoaWdobGlnaHRpbmcuXG4iCittc2dzdHIgIklsIHNlbWJsZSBxdWUgdm90cmUgdGVybWluYWwgbmUgc3VwcG9ydGUgcGFzIGxlIHN1cmxpZ25hZ2VcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjMzMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiU2V0IHlvdXIgVEVSTSB2YXJpYWJsZSBjb3JyZWN0bHksIHVzZSBhIGJldHRlciB0ZXJtaW5hbCxcbiIKKyJvciBtYWtlIGRvIHdpdGggdGhlIHBlci1wYWNrYWdlIG1hbmFnZW1lbnQgdG9vbCAlcy5cbiIKK21zZ3N0ciAiIgorIlBvc2l0aW9ubmV6IGNvcnJlY3RlbWVudCB2b3RyZSB2YXJpYWJsZSBURVJNLCB1dGlsaXNlelxuIgorInVuIG1laWxsZXVyIHRlcm1pbmFsIG91IGNvbnRlbnRlei12b3VzIGQndW5lIGluc3RhbGxhdGlvblxuIgorInBhcXVldCBwYXIgcGFxdWV0IGF2ZWMgbCdvdXRpbCBkZSBnZXN0aW9uIGRlIHBhcXVldHMgJXMuXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzozMzYKK21zZ2lkICJ0ZXJtaW5hbCBsYWNrcyBuZWNlc3NhcnkgZmVhdHVyZXMsIGdpdmluZyB1cCIKK21zZ3N0ciAiSWwgbWFucXVlIGQnaW1wb3J0YW50ZXMgZm9uY3Rpb25uYWxpdMOpcyBhdSB0ZXJtaW5hbCwgYWJhbmRvbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjQxNworbXNnaWQgIiIKKyJcbiIKKyJcbiIKKyJNb3ZlIGFyb3VuZCB3aXRoIF5QIGFuZCBeTiwgY3Vyc29yIGtleXMsIGluaXRpYWwgbGV0dGVycywgb3IgZGlnaXRzO1xuIgorIlByZXNzIDxlbnRlcj4gdG8gY29uZmlybSBzZWxlY3Rpb24uICAgXkwgcmVkcmF3cyBzY3JlZW4uXG4iCisiXG4iCittc2dzdHIgIiIKKyJcbiIKKyJcbiIKKyJVdGlsaXNleiBeUCBldCBeTiwgbGVzIHRvdWNoZXMgZmzDqWNow6llcywgbGVzIGxldHRyZXMgaW5pdGlhbGVzIG91IGxlcyAiCisiY2hpZmZyZXMgcG91ciB2b3VzIGTDqXBsYWNlcsKgO1xuIgorIkFwcHV5ZXogc3VyIDxFbnRyw6llPiBwb3VyIGNvbmZpcm1lciBsYSBzw6lsZWN0aW9uLiBeTCBwb3VyIHJlZGVzc2luZXIgIgorImwnw6ljcmFuLlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6NDI4Cittc2dpZCAiIgorIlxuIgorIlxuIgorIlJlYWQtb25seSBhY2Nlc3M6IG9ubHkgcHJldmlldyBvZiBzZWxlY3Rpb25zIGlzIGF2YWlsYWJsZSEiCittc2dzdHIgIiIKKyJcbiIKKyJcbiIKKyJBY2PDqHMgZW4gbGVjdHVyZSBzZXVsZcKgOiBzZXVsIHVuIGFwZXLDp3UgZGVzIHPDqWxlY3Rpb25zIGVzdCBkaXNwb25pYmxlwqAhIgorCisjOiBkc2VsZWN0L21haW4uY2M6NDQ4Cittc2dpZCAiZmFpbGVkIHRvIGdldGNoIGluIG1haW4gbWVudSIKK21zZ3N0ciAiw6ljaGVjIGRlIMKrwqBnZXRjaMKgwrsgZGFucyBsZSBtZW51IHByaW5jaXBhbCIKKworIzogZHNlbGVjdC9tYWluLmNjOjUzMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGFjdGlvbiBzdHJpbmcgYCUuNTBzJyIKK21zZ3N0ciAiY2hhw65uZSBkJ2FjdGlvbiBpbmNvbm51ZSDCq8KgJS41MHPCoMK7IgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjc3Cittc2dpZCAiZHNlbGVjdCAtIGxpc3Qgb2YgYWNjZXNzIG1ldGhvZHMiCittc2dzdHIgImRzZWxlY3QgLSBsaXN0ZSBkZXMgbcOpdGhvZGVzIGQnYWNjw6hzIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjg2CisjLCBjLWZvcm1hdAorbXNnaWQgIkFjY2VzcyBtZXRob2QgYCVzJy4iCittc2dzdHIgIk3DqXRob2RlIGQnYWNjw6hzIMKrwqAlc8KgwrsuIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjEyMAorbXNnaWQgIkFiYnJldi4iCittc2dzdHIgIkFicsOpdi4iCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTIxIGRzZWxlY3QvcGtnaW5mby5jYzoxMDUgZHNlbGVjdC9wa2d0b3AuY2M6MjkxCittc2dpZCAiRGVzY3JpcHRpb24iCittc2dzdHIgIkRlc2NyaXB0aW9uIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjE2NCBkc2VsZWN0L3BrZ2xpc3QuY2M6NTcyCittc2dpZCAiZG91cGRhdGUgZmFpbGVkIgorbXNnc3RyICLDqWNoZWMgZGUgZG91cGRhdGUiCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTY2IGRzZWxlY3QvcGtnbGlzdC5jYzo1NzUKK21zZ2lkICJmYWlsZWQgdG8gdW5ibG9jayBTSUdXSU5DSCIKK21zZ3N0ciAiw6ljaGVjIGR1IGTDqWJsb2NhZ2UgZGUgU0lHV0lOQ0giCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTcwIGRzZWxlY3QvcGtnbGlzdC5jYzo1ODAKK21zZ2lkICJmYWlsZWQgdG8gcmUtYmxvY2sgU0lHV0lOQ0giCittc2dzdHIgIsOpY2hlYyBkdSByZWJsb2NhZ2UgZGUgU0lHV0lOQ0giCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTcxIGRzZWxlY3QvcGtnbGlzdC5jYzo1ODIKK21zZ2lkICJnZXRjaCBmYWlsZWQiCittc2dzdHIgIsOpY2hlYyBkZSDCq8KgZ2V0Y2jCoMK7IgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjE4OAorbXNnaWQgIkV4cGxhbmF0aW9uIgorbXNnc3RyICJFeHBsaWNhdGlvbiIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxOTcKK21zZ2lkICJObyBleHBsYW5hdGlvbiBhdmFpbGFibGUuIgorbXNnc3RyICJBdWN1bmUgZXhwbGljYXRpb24gbidlc3QgZGlzcG9uaWJsZS4iCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjY3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJcbiIKKyIlczogJXNcbiIKK21zZ3N0ciAiIgorIlxuIgorIlxuIgorIiVzwqA6ICVzXG4iCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjcwCittc2dpZCAiIgorIlxuIgorIlByZXNzIDxlbnRlcj4gdG8gY29udGludWUuIgorbXNnc3RyICIiCisiXG4iCisiQXBwdXlleiBzdXIgPEVudHLDqWU+IHBvdXIgY29udGludWVyLiIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MTYxCisjLCBjLWZvcm1hdAorbXNnaWQgIlByZXNzIDxlbnRlcj4gdG8gY29udGludWUuXG4iCittc2dzdHIgIkFwcHV5ZXogc3VyIDxFbnRyw6llPiBwb3VyIGNvbnRpbnVlci5cbiIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MTYyCittc2dpZCAiPHN0YW5kYXJkIGVycm9yPiIKK21zZ3N0ciAiPHNvcnRpZSBkJ2VycmV1ciBzdGFuZGFyZD4iCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjE2NQorbXNnaWQgImVycm9yIHJlYWRpbmcgYWNrbm93bGVkZ2VtZW50IG9mIHByb2dyYW0gZmFpbHVyZSBtZXNzYWdlIgorbXNnc3RyICIiCisiZXJyZXVyIHJlbmNvbnRyw6llIGxvcnMgZGUgbGEgbGVjdHVyZSBkdSBtZXNzYWdlIGQnYWNxdWl0dGVtZW50IHByb2R1aXQgcGFyICIKKyJsJ8OpY2hlYyBkdSBwcm9ncmFtbWUiCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjE5NgorbXNnaWQgInVwZGF0ZSBhdmFpbGFibGUgbGlzdCBzY3JpcHQiCittc2dzdHIgIm1pc2Ugw6Agam91ciBkdSBzY3JpcHQgZGUgbGlzdGUgZGlzcG9uaWJsZSIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MjAwCittc2dpZCAiaW5zdGFsbGF0aW9uIHNjcmlwdCIKK21zZ3N0ciAic2NyaXB0IGQnaW5zdGFsbGF0aW9uIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoyNDYKK21zZ2lkICJxdWVyeS9zZXR1cCBzY3JpcHQiCittc2dzdHIgInNjcmlwdCBkZSByZXF1w6p0ZS9jb25maWd1cmF0aW9uIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzo1MworIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gbWV0aG9kIG9wdGlvbnMgZmlsZSBgJS4yNTBzJyAtLSAlcyIKK21zZ3N0ciAiIgorImVycmV1ciBkZSBzeW50YXhlIGRhbnMgbGUgZmljaGllciBkZXMgb3B0aW9ucyBkZSBtw6l0aG9kZSDCq8KgJS4yNTBzwqDCuyAtLSAlcyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcmVhZGluZyBvcHRpb25zIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImVycmV1ciBkZSBsZWN0dXJlIHN1ciBsZSBmaWNoaWVyIGRlcyBvcHRpb25zIMKrwqAlLjI1MHPCoMK7IgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzo5MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBgJS4yNTBzJyBkaXJlY3RvcnkgZm9yIHJlYWRpbmcgbWV0aG9kcyIKK21zZ3N0ciAiIgorImltcG9zc2libGUgZGUgbGlyZSBsZSByw6lwZXJ0b2lyZSDCq8KgJS4yNTBzwqDCuyBwb3VyIHLDqWN1cMOpcmVyIGxlcyBtw6l0aG9kZXMiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjEwNgorIywgYy1mb3JtYXQKK21zZ2lkICJtZXRob2QgYCUuMjUwcycgaGFzIG5hbWUgdGhhdCBpcyB0b28gbG9uZyAoJWQgPiAlZCBjaGFyYWN0ZXJzKSIKK21zZ3N0ciAibGUgbm9tIGRlIGxhIG3DqXRob2RlIMKrwqAlLjI1MHPCoMK7IGVzdCB0cm9wIGxvbmcgKCAlZCA+ICVkIGNhcmFjdMOocmVzKSIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTE3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBhY2Nlc3MgbWV0aG9kIHNjcmlwdCBgJS4yNTBzJyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkJ2FjY8OpZGVyIGF1IHNjcmlwdCBkZSBtw6l0aG9kZSDCq8KgJS4yNTBzwqDCuyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTIzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIG1ldGhvZCBvcHRpb25zIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImltcG9zc2libGUgZGUgbGlyZSBsZSBmaWNoaWVyIGRlcyBvcHRpb25zIGRlIG3DqXRob2RlIMKrwqAlLjI1MHPCoMK7IgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNDcKK21zZ2lkICJub24tZGlnaXQgd2hlcmUgZGlnaXQgd2FudGVkIgorbXNnc3RyICIiCisiY2FyYWN0w6hyZSBub24gbnVtw6lyaXF1ZSByZW5jb250csOpIGFsb3JzIHF1J3VuIGNhcmFjdMOocmUgbnVtw6lyaXF1ZSBlc3QgYXR0ZW5kdSIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTUwCittc2dpZCAiRU9GIGluIGluZGV4IHN0cmluZyIKK21zZ3N0ciAiRU9GIGRhbnMgbGEgY2hhw65uZSBkJ2luZGV4IgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNTMKK21zZ2lkICJpbmRleCBzdHJpbmcgdG9vIGxvbmciCittc2dzdHIgImNoYcOubmUgZCdpbmRleCB0cm9wIGxvbmd1ZSIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTU2Cittc2dpZCAibmV3bGluZSBiZWZvcmUgb3B0aW9uIG5hbWUgc3RhcnQiCittc2dzdHIgInNhdXQgZGUgbGlnbmUgcHLDqWPDqWRlbnQgbGUgZMOpYnV0IGR1IG5vbSBkZSBsJ29wdGlvbiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTU4Cittc2dpZCAiRU9GIGJlZm9yZSBvcHRpb24gbmFtZSBzdGFydCIKK21zZ3N0ciAiRU9GIHByw6ljw6lkYW50IGxlIGTDqWJ1dCBkdSBub20gZGUgbCdvcHRpb24iCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE2MgorbXNnaWQgIm5vbmFscGhhIHdoZXJlIG9wdGlvbiBuYW1lIHN0YXJ0IHdhbnRlZCIKK21zZ3N0ciAiIgorImNhcmFjdMOocmUgbm9uIGFscGhhbnVtw6lyaXF1ZSByZW5jb250csOpIMOgIGwnZW5kcm9pdCBvw7kgbGUgbm9tIGQnb3B0aW9uICIKKyJkZXZyYWl0IGNvbW1lbmNlciIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTY0Cittc2dpZCAibm9uLWFscGhhbnVtIGluIG9wdGlvbiBuYW1lIgorbXNnc3RyICJjYXJhY3TDqHJlIG5vbiBhbHBoYW51bcOpcmlxdWUgZGFucyBsZSBub20gZCdvcHRpb24iCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE2NworbXNnaWQgIkVPRiBpbiBvcHRpb24gbmFtZSIKK21zZ3N0ciAiRU9GIGRhbnMgbGUgbm9tIGRlIGwnb3B0aW9uIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNzIKK21zZ2lkICJuZXdsaW5lIGJlZm9yZSBzdW1tYXJ5IgorbXNnc3RyICJzYXV0IGRlIGxpZ25lIHByw6ljw6lkYW50IGxlIHLDqXN1bcOpIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNzQKK21zZ2lkICJFT0YgYmVmb3JlIHN1bW1hcnkiCittc2dzdHIgIkVPRiBwcsOpY8OpZGFudCBsZSByw6lzdW3DqSIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTgwCittc2dpZCAiRU9GIGluIHN1bW1hcnkgLSBtaXNzaW5nIG5ld2xpbmUiCittc2dzdHIgIkVPRiBkYW5zIGxlIHLDqXN1bcOpIC0gc2F1dCBkZSBsaWduZSBtYW5xdWFudCIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTkwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIG9wdGlvbiBkZXNjcmlwdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJpbXBvc3NpYmxlIGQnb3V2cmlyIGxlIGZpY2hpZXIgZGUgZGVzY3JpcHRpb24gZCdvcHRpb24gwqvCoCUuMjUwc8KgwrsiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE5NAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBvcHRpb24gZGVzY3JpcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorImltcG9zc2libGUgZCdhbmFseXNlciBsZSBub3V2ZWF1IGZpY2hpZXIgZGUgZGVzY3JpcHRpb24gZCdvcHRpb24gwqvCoCUuMjUwc8KgwrsiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE5OAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCBvcHRpb24gZGVzY3JpcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiw6ljaGVjIGRlIGxhIGxlY3R1cmUgZHUgZmljaGllciBkZSBkZXNjcmlwdGlvbiBkJ29wdGlvbiDCq8KgJS4yNTBzwqDCuyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MjAxCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGR1cmluZyByZWFkIG9mIG9wdGlvbiBkZXNjcmlwdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisiZXJyZXVyIHN1cnZlbnVlIHBlbmRhbnQgbGEgbGVjdHVyZSBkdSBmaWNoaWVyIGRlIGRlc2NyaXB0aW9uIGQnb3B0aW9uIGAiCisiJS4yNTBzwqDCuyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MjI0CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGR1cmluZyByZWFkIG9mIG1ldGhvZCBvcHRpb25zIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKyJlcnJldXIgc3VydmVudWUgcGVuZGFudCBsJ8OpY3JpdHVyZSBkdSBmaWNoaWVyIGRlcyBvcHRpb25zIGRlIG3DqXRob2RlICIKKyLCq8KgJS4yNTBzwqDCuyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MjQ3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIGN1cnJlbnQgb3B0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImltcG9zc2libGUgZCdvdXZyaXIgbGUgZmljaGllciBkJ29wdGlvbiBjb3VyYW50IMKrwqAlLjI1MHPCoMK7IgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyODkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gbmV3IG9wdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJpbXBvc3NpYmxlIGQnb3V2cmlyIHVuIG5vdXZlYXUgZmljaGllciBkJ29wdGlvbiDCq8KgJS4yNTBzwqDCuyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MjkyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgb3B0aW9uIHRvIGAlLjI1MHMnIgorbXNnc3RyICJpbXBvc3NpYmxlIGQnw6ljcmlyZSB1bmUgbm91dmVsbGUgb3B0aW9uIGRhbnMgwqvCoCUuMjUwc8KgwrsiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjI5NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgbmV3IG9wdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJpbXBvc3NpYmxlIGRlIGZlcm1lciB1biBub3V2ZWF1IGZpY2hpZXIgZCdvcHRpb24gwqvCoCUuMjUwc8KgwrsiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjI5NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgb3B0aW9uIGFzIGAlLjI1MHMnIgorbXNnc3RyICJpbXBvc3NpYmxlIGQnaW5zdGFsbGVyIHVuZSBub3V2ZWxsZSBvcHRpb24gY29tbWUgwqvCoCUuMjUwc8KgwrsiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzozNgorbXNnaWQgIm5ldyBwYWNrYWdlIgorbXNnc3RyICJub3V2ZWF1IHBhcXVldCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjM3Cittc2dpZCAiaW5zdGFsbCIKK21zZ3N0ciAiaW5zdGFsbGVyIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MzgKK21zZ2lkICJob2xkIgorbXNnc3RyICJnYXJkZXIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzozOQorbXNnaWQgInJlbW92ZSIKK21zZ3N0ciAic3VwcHJpbWVyIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NDAKK21zZ2lkICJwdXJnZSIKK21zZ3N0ciAicHVyZ2VyIgorCisjLiBUUkFOU0xBVE9SUzogVGhlIHNwYWNlIGlzIGEgdHJpY2sgdG8gd29yayBhcm91bmQgZ2V0dGV4dCB3aGljaCB1c2VzCisjLiAqIHRoZSBlbXB0eSBzdHJpbmcgdG8gc3RvcmUgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHRyYW5zbGF0aW9uLiBETyBOT1QKKyMuICogQ0hBTkdFIFRIQVQgSU4gQSBUUkFOU0xBVElPTiEgVGhlIGNvZGUgcmVhbGx5IHJlbGllcyBvbiB0aGF0IGJlaW5nCisjLiAqIGEgc2luZ2xlIHNwYWNlLgorIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjQ3Cittc2dpZCAiICIKK21zZ3N0ciAiICIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjQ4Cittc2dpZCAiUkVJTlNUQUxMIgorbXNnc3RyICJSw4lJTlNUQUxMRSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjUxCittc2dpZCAibm90IGluc3RhbGxlZCIKK21zZ3N0ciAibm9uIGluc3RhbGzDqSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjUyCittc2dpZCAicmVtb3ZlZCAoY29uZmlncyByZW1haW4pIgorbXNnc3RyICJzdXBwcmltw6kgKGxhIGNvbmZpZ3VyYXRpb24gcmVzdGUpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTMKK21zZ2lkICJoYWxmIGluc3RhbGxlZCIKK21zZ3N0ciAicGFydGllbGxlbWVudCBpbnN0YWxsw6kiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1NAorbXNnaWQgInVucGFja2VkIChub3Qgc2V0IHVwKSIKK21zZ3N0ciAiZMOpY29tcGFjdMOpIChub24gY29uZmlndXLDqSkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1NQorbXNnaWQgImhhbGYgY29uZmlndXJlZCAoY29uZmlnIGZhaWxlZCkiCittc2dzdHIgInNlbWktY29uZmlndXLDqSAow6ljaGVjIGRlIGxhIGNvbmZpZ3VyYXRpb24pIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTYKK21zZ2lkICJhd2FpdGluZyB0cmlnZ2VyIHByb2Nlc3NpbmciCittc2dzdHIgImF0dGVudGUgZHUgdHJhaXRlbWVudCBkdSBkw6ljbGVuY2hldXIgKMKrwqB0cmlnZ2VywqDCuykiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1NworbXNnaWQgInRyaWdnZXJlZCIKK21zZ3N0ciAiZMOpY2xlbmNow6kiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1OAorbXNnaWQgImluc3RhbGxlZCIKK21zZ3N0ciAiaW5zdGFsbMOpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjEKK21zZ2lkICJSZXF1aXJlZCIKK21zZ3N0ciAibsOpY2Vzc2FpcmVzIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjIKK21zZ2lkICJJbXBvcnRhbnQiCittc2dzdHIgImltcG9ydGFudHMiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo2MworbXNnaWQgIlN0YW5kYXJkIgorbXNnc3RyICJzdGFuZGFyZCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjY0Cittc2dpZCAiT3B0aW9uYWwiCittc2dzdHIgIm9wdGlvbm5lbHMiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo2NQorbXNnaWQgIkV4dHJhIgorbXNnc3RyICJzdXBwbMOpbWVudGFpcmVzIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjYKK21zZ2lkICIhQnVnISIKK21zZ3N0ciAiIUJvZ3VlISIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjY3Cittc2dpZCAiVW5jbGFzc2lmaWVkIgorbXNnc3RyICJOb24gY2xhc3PDqSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjcwCittc2dpZCAic3VnZ2VzdHMiCittc2dzdHIgInN1Z2fDqHJlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzEKK21zZ2lkICJyZWNvbW1lbmRzIgorbXNnc3RyICJyZWNvbW1hbmRlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzIKK21zZ2lkICJkZXBlbmRzIG9uIgorbXNnc3RyICJkw6lwZW5kIGRlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzMKK21zZ2lkICJwcmUtZGVwZW5kcyBvbiIKK21zZ3N0ciAicHLDqS1kw6lwZW5kIGRlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzQKK21zZ2lkICJicmVha3MiCittc2dzdHIgImNhc3NlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzUKK21zZ2lkICJjb25mbGljdHMgd2l0aCIKK21zZ3N0ciAiZW50cmUgZW4gY29uZmxpdCBhdmVjIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzYKK21zZ2lkICJwcm92aWRlcyIKK21zZ3N0ciAiZm91cm5pdCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjc3Cittc2dpZCAicmVwbGFjZXMiCittc2dzdHIgInJlbXBsYWNlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzgKK21zZ2lkICJlbmhhbmNlcyIKK21zZ3N0ciAiYW3DqWxpb3JlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODEKK21zZ2lkICJSZXEiCittc2dzdHIgIk7DqWMiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4MgorbXNnaWQgIkltcCIKK21zZ3N0ciAiSW1wIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODMKK21zZ2lkICJTdGQiCittc2dzdHIgIlN0ZCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjg0Cittc2dpZCAiT3B0IgorbXNnc3RyICJPcHQiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4NQorbXNnaWQgIlh0ciIKK21zZ3N0ciAiU3VwIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODYKK21zZ2lkICJiVUciCittc2dzdHIgIkJvZyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjg3Cittc2dpZCAiPyIKK21zZ3N0ciAiPyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjk1IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTUKK21zZ2lkICJCcm9rZW4iCittc2dzdHIgImTDqWZlY3R1ZXV4IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6OTYKK21zZ2lkICJOZXciCittc2dzdHIgIm5vdXZlYXV4IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6OTcKK21zZ2lkICJVcGRhdGVkIgorbXNnc3RyICJtaXMgw6Agam91ciIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjk4Cittc2dpZCAiT2Jzb2xldGUvbG9jYWwiCittc2dzdHIgIm9ic29sw6h0ZXMvbG9jYXV4IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6OTkKK21zZ2lkICJVcC10by1kYXRlIgorbXNnc3RyICLDoCBqb3VyIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTAwCittc2dpZCAiQXZhaWxhYmxlIgorbXNnc3RyICJkaXNwb25pYmxlcyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwMSBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTE3Cittc2dpZCAiUmVtb3ZlZCIKK21zZ3N0ciAic3VwcHJpbcOpcyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwMiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTExCittc2dpZCAiQnJva2VubHkgaW5zdGFsbGVkIHBhY2thZ2VzIgorbXNnc3RyICJQYXF1ZXRzIGluY29ycmVjdGVtZW50IGluc3RhbGzDqXMiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDMKK21zZ2lkICJOZXdseSBhdmFpbGFibGUgcGFja2FnZXMiCittc2dzdHIgIlBhcXVldHMgbm91dmVsbGVtZW50IGRpc3BvbmlibGVzIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTA0Cittc2dpZCAiVXBkYXRlZCBwYWNrYWdlcyAobmV3ZXIgdmVyc2lvbiBpcyBhdmFpbGFibGUpIgorbXNnc3RyICJQYXF1ZXRzIG1pcyDDoCBqb3VyICh1bmUgdmVyc2lvbiBwbHVzIHLDqWNlbnRlIGVzdCBkaXNwb25pYmxlKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwNQorbXNnaWQgIk9ic29sZXRlIGFuZCBsb2NhbCBwYWNrYWdlcyBwcmVzZW50IG9uIHN5c3RlbSIKK21zZ3N0ciAiUGFxdWV0cyBvYnNvbMOodGVzIGV0IGxvY2F1eCBwcsOpc2VudHMgc3VyIGxlIHN5c3TDqG1lIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTA2Cittc2dpZCAiVXAgdG8gZGF0ZSBpbnN0YWxsZWQgcGFja2FnZXMiCittc2dzdHIgIlBhcXVldHMgw6Agam91ciBpbnN0YWxsw6lzIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTA3Cittc2dpZCAiQXZhaWxhYmxlIHBhY2thZ2VzIChub3QgY3VycmVudGx5IGluc3RhbGxlZCkiCittc2dzdHIgIlBhcXVldHMgZGlzcG9uaWJsZXMgKHBhcyBpbnN0YWxsw6lzIHBvdXIgbCdpbnN0YW50KSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwOAorbXNnaWQgIlJlbW92ZWQgYW5kIG5vIGxvbmdlciBhdmFpbGFibGUgcGFja2FnZXMiCittc2dzdHIgIlBhcXVldHMgc3VwcHJpbcOpcyBldCBkw6lzb3JtYWlzIGluZGlzcG9uaWJsZXMiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTIKK21zZ2lkICJJbnN0YWxsZWQgcGFja2FnZXMiCittc2dzdHIgIlBhcXVldHMgaW5zdGFsbMOpcyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExMworbXNnaWQgIlJlbW92ZWQgcGFja2FnZXMgKGNvbmZpZ3VyYXRpb24gc3RpbGwgcHJlc2VudCkiCittc2dzdHIgIlBhcXVldHMgc3VwcHJpbcOpcyAoY29uZmlndXJhdGlvbiBlbmNvcmUgcHLDqXNlbnRlKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExNAorbXNnaWQgIlB1cmdlZCBwYWNrYWdlcyBhbmQgdGhvc2UgbmV2ZXIgaW5zdGFsbGVkIgorbXNnc3RyICJQYXF1ZXRzIHB1cmfDqXMgZXQgY2V1eCBxdWkgbidvbnQgamFtYWlzIMOpdMOpIGluc3RhbGzDqXMiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTYKK21zZ2lkICJJbnN0YWxsZWQiCittc2dzdHIgIkluc3RhbGzDqSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExOAorbXNnaWQgIlB1cmdlZCIKK21zZ3N0ciAiUHVyZ8OpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTk4Cittc2dpZCAiZHNlbGVjdCAtIHJlY3Vyc2l2ZSBwYWNrYWdlIGxpc3RpbmciCittc2dzdHIgImRzZWxlY3QgLSBsaXN0ZSBkZXMgcGFxdWV0cyByw6ljdXJzaXZlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTk5Cittc2dpZCAiZHNlbGVjdCAtIGluc3BlY3Rpb24gb2YgcGFja2FnZSBzdGF0ZXMiCittc2dzdHIgImRzZWxlY3QgLSBpbnNwZWN0aW9uIGRlIGwnw6l0YXQgZGVzIHBhcXVldHMiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMDAKK21zZ2lkICJkc2VsZWN0IC0gbWFpbiBwYWNrYWdlIGxpc3RpbmciCittc2dzdHIgImRzZWxlY3QgLSBsaXN0ZSBwcmluY2lwYWxlIGRlcyBwYXF1ZXRzIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjA4Cittc2dpZCAiIChieSBzZWN0aW9uKSIKK21zZ3N0ciAiIChwYXIgc2VjdGlvbikiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMTEKK21zZ2lkICIgKGF2YWlsLiwgc2VjdGlvbikiCittc2dzdHIgIiAoZGlzcG8uLCBzZWN0aW9uKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIxNAorbXNnaWQgIiAoc3RhdHVzLCBzZWN0aW9uKSIKK21zZ3N0ciAiICjDqXRhdCwgc2VjdGlvbikiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMjMKK21zZ2lkICIgKGJ5IHByaW9yaXR5KSIKK21zZ3N0ciAiIChwYXIgcHJpb3JpdMOpKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIyNgorbXNnaWQgIiAoYXZhaWwuLCBwcmlvcml0eSkiCittc2dzdHIgIiAoZGlzcG8uLCBwcmlvcml0w6kpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjI5Cittc2dpZCAiIChzdGF0dXMsIHByaW9yaXR5KSIKK21zZ3N0ciAiICjDqXRhdCwgcHJpb3JpdMOpKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIzOCBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjUwCittc2dpZCAiIChhbHBoYWJldGljYWxseSkiCittc2dzdHIgIiAoYWxwaGFiw6l0aXF1ZW1lbnQpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjQxCittc2dpZCAiIChieSBhdmFpbGFiaWxpdHkpIgorbXNnc3RyICIgKHBhciBkaXNwb25pYmlsaXTDqSkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNDQKK21zZ2lkICIgKGJ5IHN0YXR1cykiCittc2dzdHIgIiAocGFyIMOpdGF0KSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI1OAorbXNnaWQgIiBtYXJrOisvPS8tIHRlcnNlOnYgaGVscDo/IgorbXNnc3RyICIgbWFycTorLz0vLSBjb25jaXM6diBhaWRlOj8iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNTkKK21zZ2lkICIgbWFyazorLz0vLSB2ZXJib3NlOnYgaGVscDo/IgorbXNnc3RyICIgbWFycTorLz0vLSB2ZXJiZXV4OnYgYWlkZTo/IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjYwCittc2dpZCAiIHRlcnNlOnYgaGVscDo/IgorbXNnc3RyICIgY29uY2lzOnYgYWlkZTo/IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjYxCittc2dpZCAiIHZlcmJvc2U6diBoZWxwOj8iCittc2dzdHIgIiB2ZXJiZXV4OnYgYWlkZTo/IgorCisjOiBkc2VsZWN0L3BrZ2luZm8uY2M6ODAKK21zZ2lkICIiCisiVGhlIGxpbmUgeW91IGhhdmUgaGlnaGxpZ2h0ZWQgcmVwcmVzZW50cyBtYW55IHBhY2thZ2VzOyBpZiB5b3UgYXNrIHRvICIKKyJpbnN0YWxsLCByZW1vdmUsIGhvbGQsIGV0Yy4gaXQgeW91IHdpbGwgYWZmZWN0IGFsbCB0aGUgcGFja2FnZXMgd2hpY2ggbWF0Y2ggIgorInRoZSBjcml0ZXJpb24gc2hvd24uXG4iCisiXG4iCisiSWYgeW91IG1vdmUgdGhlIGhpZ2hsaWdodCB0byBhIGxpbmUgZm9yIGEgcGFydGljdWxhciBwYWNrYWdlIHlvdSB3aWxsIHNlZSAiCisiaW5mb3JtYXRpb24gYWJvdXQgdGhhdCBwYWNrYWdlIGRpc3BsYXllZCBoZXJlLlxuIgorIllvdSBjYW4gdXNlIGBvJyBhbmQgYE8nIHRvIGNoYW5nZSB0aGUgc29ydCBvcmRlciBhbmQgZ2l2ZSB5b3Vyc2VsZiB0aGUgIgorIm9wcG9ydHVuaXR5IHRvIG1hcmsgcGFja2FnZXMgaW4gZGlmZmVyZW50IGtpbmRzIG9mIGdyb3Vwcy4iCittc2dzdHIgIiIKKyJMYSBsaWduZSBxdWUgdm91cyBhdmV6IHN1cmxpZ27DqWUgcmVwcsOpc2VudGUgcGx1c2lldXJzIHBhcXVldHPCoDsgc2kgdm91cyAiCisiZGVtYW5kZXogdW5lIGluc3RhbGxhdGlvbiwgdW5lIHN1cHByZXNzaW9uIG91IHVuZSBwcsOpc2VydmF0aW9uLCBjZWxhICIKKyJhZmZlY3RlcmEgdG91cyBsZXMgcGFxdWV0cyBxdWkgY29ycmVzcG9uZGVudCBhdSBjcml0w6hyZSBhZmZpY2jDqS5cbiIKKyJcbiIKKyJTaSB2b3VzIGTDqXBsYWNleiBsZSBzdXJsaWduYWdlIHN1ciBsYSBsaWduZSBkJ3VuIHBhcXVldCBwYXJ0aWN1bGllciwgdm91cyAiCisidmVycmV6IHMnYWZmaWNoZXIgaWNpIGxlcyBpbmZvcm1hdGlvbnMgcXVpIGNvbmNlcm5lbnQgY2UgcGFxdWV0LlxuIgorIlZvdXMgcG91dmV6IHV0aWxpc2VyIMKrwqBvwqDCuyBldCDCq8KgT8KgwrsgcG91ciBjaGFuZ2VyIGxlIGNyaXTDqHJlIGRlIHRyaSBjZSBxdWkgIgorInZvdXMgcGVybWV0IGRlIG1hcnF1ZXIgZGVzIHBhcXVldHMgYXBwYXJ0ZW5hbnQgw6AgZGVzIGdyb3VwZXMgZGUgdHlwZXMgIgorImRpZmbDqXJlbnRzLiIKKworIzogZHNlbGVjdC9wa2dpbmZvLmNjOjkzCittc2dpZCAiSW50ZXJyZWxhdGlvbnNoaXBzIgorbXNnc3RyICJSZWxhdGlvbnMgZCdpbnRlci1kw6lwZW5kYW5jZXMiCisKKyM6IGRzZWxlY3QvcGtnaW5mby5jYzoxMTIKK21zZ2lkICJObyBkZXNjcmlwdGlvbiBhdmFpbGFibGUuIgorbXNnc3RyICJBdWN1bmUgZGVzY3JpcHRpb24gZGlzcG9uaWJsZS4iCisKKyM6IGRzZWxlY3QvcGtnaW5mby5jYzoxMzAKK21zZ2lkICJJbnN0YWxsZWQgY29udHJvbCBmaWxlIGluZm9ybWF0aW9uIgorbXNnc3RyICJpbmZvcm1hdGlvbiBkZSBjb250csO0bGUgaW5zdGFsbMOpZSIKKworIzogZHNlbGVjdC9wa2dpbmZvLmNjOjE0NgorbXNnaWQgIkF2YWlsYWJsZSBjb250cm9sIGZpbGUgaW5mb3JtYXRpb24iCittc2dzdHIgIkluZm9ybWF0aW9ucyBkaXNwb25pYmxlcyBkdSBmaWNoaWVyIGRlIGNvbnRyw7RsZSIKKworIzogZHNlbGVjdC9wa2dsaXN0LmNjOjQxNgorbXNnaWQgIlRoZXJlIGFyZSBubyBwYWNrYWdlcy4iCittc2dzdHIgIklsIG4nZXhpc3RlIHBhcyBkZSBwYXF1ZXRzLiIKKworIzogZHNlbGVjdC9wa2dsaXN0LmNjOjUwNworbXNnaWQgImludmFsaWQgc2VhcmNoIG9wdGlvbiBnaXZlbiIKK21zZ3N0ciAiT3B0aW9uIGRlIHJlY2hlcmNoZSBkb25uw6llIGludmFsaWRlIgorCisjOiBkc2VsZWN0L3BrZ2xpc3QuY2M6NTIxCittc2dpZCAiZXJyb3IgaW4gcmVndWxhciBleHByZXNzaW9uIgorbXNnc3RyICJFcnJldXIgZGFucyBsJ2V4cHJlc3Npb24gcmF0aW9ubmVsbGUiCisKKyM6IGRzZWxlY3QvcGtnc3VibGlzdC5jYzoxMDcKK21zZ2lkICIgZG9lcyBub3QgYXBwZWFyIHRvIGJlIGF2YWlsYWJsZVxuIgorbXNnc3RyICIgc2VtYmxlIG5lIHBhcyDDqnRyZSBkaXNwb25pYmxlXG4iCisKKyM6IGRzZWxlY3QvcGtnc3VibGlzdC5jYzoxMjcKK21zZ2lkICIgb3IgIgorbXNnc3RyICIgb3UgIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo1NworbXNnaWQgIkFsbCIKK21zZ3N0ciAiVG91cyIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6NzkKK21zZ2lkICJBbGwgcGFja2FnZXMiCittc2dzdHIgIlRvdXMgbGVzIHBhcXVldHMiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHBhY2thZ2VzIHdpdGhvdXQgYSBzZWN0aW9uIgorbXNnc3RyICJQYXF1ZXRzICVzIHNhbnMgc2VjdGlvbiIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcGFja2FnZXMgaW4gc2VjdGlvbiAlcyIKK21zZ3N0ciAiUGFxdWV0cyAlcyBkYW5zIGxhIHNlY3Rpb24gJXMiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjkxCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzICVzIHBhY2thZ2VzIgorbXNnc3RyICJQYXF1ZXRzICVzICVzIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo5NQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyAlcyBwYWNrYWdlcyB3aXRob3V0IGEgc2VjdGlvbiIKK21zZ3N0ciAiUGFxdWV0cyAlcyAlcyBzYW5zIHNlY3Rpb24iCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjk3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzICVzIHBhY2thZ2VzIGluIHNlY3Rpb24gJXMiCittc2dzdHIgIlBhcXVldHMgJXMgJXMgZGFucyBsYSBzZWN0aW9uICVzIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoxMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJS0qcyAlcyVzJXM7ICAlcyAod2FzOiAlcykuICAlcyIKK21zZ3N0ciAiJS0qcyAlcyVzJXPCoDsgICVzIChwcsOpY8OpZGVtbWVudMKgOiAlcykuICAlcyIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6MjYzCittc2dpZCAiRXJyb3IiCittc2dzdHIgIkVycmV1ciIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6MjY3Cittc2dpZCAiSW5zdGFsbGVkPyIKK21zZ3N0ciAiSW5zdGFsbMOpwqA/IgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyNzEKK21zZ2lkICJPbGQgbWFyayIKK21zZ3N0ciAiQW5jaWVubmUgbWFycXVlIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyNzUKK21zZ2lkICJNYXJrZWQgZm9yIgorbXNnc3RyICJNYXJxdcOpIHBvdXIiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI3OAorbXNnaWQgIkVJT00iCittc2dzdHIgIkVJQU0iCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI4MAorbXNnaWQgIlNlY3Rpb24iCittc2dzdHIgIlNlY3Rpb24iCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI4MQorbXNnaWQgIlByaW9yaXR5IgorbXNnc3RyICJQcmlvcml0w6kiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI4MgorbXNnaWQgIlBhY2thZ2UiCittc2dzdHIgIlBhcXVldCIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6Mjg2Cittc2dpZCAiSW5zdC52ZXIiCittc2dzdHIgIlZlcnMuIGluc3QiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI4OQorbXNnaWQgIkF2YWlsLnZlciIKK21zZ3N0ciAiVmVycy4gZGlzcG8uIgorCisjfiBtc2dpZCAicmV0dXJuZWQgZXJyb3IgZXhpdCBzdGF0dXMgJWQuXG4iCisjfiBtc2dzdHIgImEgcmV0b3VybsOpIHVuIGNvZGUgZGUgc29ydGllIGQnZXJyZXVyICVkLlxuIgorCisjfiBtc2dpZCAid2FzIGludGVycnVwdGVkLlxuIgorI34gbXNnc3RyICJhIMOpdMOpIGludGVycm9tcHUuXG4iCisKKyN+IG1zZ2lkICJ3YXMgdGVybWluYXRlZCBieSBhIHNpZ25hbDogJXMuXG4iCisjfiBtc2dzdHIgImEgw6l0w6kgc3RvcHDDqSBwYXIgdW4gc2lnbmFswqA6ICVzLlxuIgorCisjfiBtc2dpZCAiKEl0IGxlZnQgYSBjb3JlZHVtcC4pXG4iCisjfiBtc2dzdHIgIih1biBjb3JlZHVtcCBhIMOpdMOpIHByb2R1aXQuKVxuIgorCisjfiBtc2dpZCAiZmFpbGVkIHdpdGggYW4gdW5rbm93biB3YWl0IHJldHVybiBjb2RlICVkLlxuIgorI34gbXNnc3RyICJhIMOpY2hvdcOpIGF2ZWMgbGUgY29kZSBkJ2F0dGVudGUgaW5jb25udSAlZC5cbiIKKworI34gbXNnaWQgInVuYWJsZSB0byBydW4gJS4yNTBzIHByb2Nlc3MgYCUuMjUwcyciCisjfiBtc2dzdHIgImltcG9zc2libGUgZCdleMOpY3V0ZXIgbGUgcHJvY2Vzc3VzICUuMjUwcyDCq8KgJS4yNTBzwqDCuyIKKworI34gbXNnaWQgImZhaWxlZCBjb25maWciCisjfiBtc2dzdHIgIsOpY2hlYyBkZSBsYSBjb25maWd1cmF0aW9uIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHdhaXQgZm9yICUuMjUwcyIKKyN+IG1zZ3N0ciAiaW1wb3NzaWJsZSBkJ2F0dGVuZHJlICUuMjUwcyIKKworI34gbXNnaWQgImdvdCB3cm9uZyBjaGlsZCdzIHN0YXR1cyAtIGFza2VkIGZvciAlbGQsIGdvdCAlbGQiCisjfiBtc2dzdHIgImEgcsOpY3Vww6lyw6kgdW4gw6l0YXQgZGUgZmlscyBlcnJvbsOpIC0gJWxkIGRlbWFuZMOpLCAlbGQgb2J0ZW51IgorCisjfiBtc2dpZCAiUmVjb21tZW5kZWQiCisjfiBtc2dzdHIgInJlY29tbWFuZMOpcyIKKworI34gbXNnaWQgIkNvbnRyaWIiCisjfiBtc2dzdHIgIkNvbnRyaWIiCisKKyN+IG1zZ2lkICJSZWMiCisjfiBtc2dzdHIgIlJlYyIKKworI34gbXNnaWQgIkN0YiIKKyN+IG1zZ3N0ciAiQ3RiIgorCisjfiBtc2dpZCAiIgorI34gImJhc2VsaXN0OjpzdGFydGRpc3BsYXkoKSBkb25lIC4uLlxuIgorI34gIlxuIgorI34gIiB4bWF4PSVkLCB5bWF4PSVkO1xuIgorI34gIlxuIgorI34gIiB0aXRsZV9oZWlnaHQ9JWQsIGNvbGhlYWRzX2hlaWdodD0lZCwgbGlzdF9oZWlnaHQ9JWQ7XG4iCisjfiAiIHRoaXNzdGF0ZV9oZWlnaHQ9JWQsIGluZm9faGVpZ2h0PSVkLCB3aGF0aW5mb19oZWlnaHQ9JWQ7XG4iCisjfiAiXG4iCisjfiAiIGNvbGhlYWRzX3Jvdz0lZCwgdGhpc3N0YXRlX3Jvdz0lZCwgaW5mb19yb3c9JWQ7XG4iCisjfiAiIHdoYXRpbmZvX3Jvdz0lZCwgbGlzdF9yb3c9JWQ7XG4iCisjfiAiXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJiYXNlbGlzdDo6c3RhcnRkaXNwbGF5KCkgdGVybWluw6kgLi4uXG4iCisjfiAiXG4iCisjfiAiIHhtYXg9JWQsIHltYXg9JWTCoDtcbiIKKyN+ICJcbiIKKyN+ICIgdGl0bGVfaGVpZ2h0PSVkLCBjb2xoZWFkc19oZWlnaHQ9JWQsIGxpc3RfaGVpZ2h0PSVkwqA7XG4iCisjfiAiIHRoaXNzdGF0ZV9oZWlnaHQ9JWQsIGluZm9faGVpZ2h0PSVkLCB3aGF0aW5mb19oZWlnaHQ9JWTCoDtcbiIKKyN+ICJcbiIKKyN+ICIgY29saGVhZHNfcm93PSVkLCB0aGlzc3RhdGVfcm93PSVkLCBpbmZvX3Jvdz0lZMKgO1xuIgorI34gIiB3aGF0aW5mb19yb3c9JWQsIGxpc3Rfcm93PSVkwqA7XG4iCisjfiAiXG4iCisKKyN+IG1zZ2lkICJbbm9uZV0iCisjfiBtc2dzdHIgIltuw6lhbnRdIgorCisjfiBtc2dpZCAiZXJyb3IgdW4tY2F0Y2hpbmcgc2lnbmFsICVkOiAlc1xuIgorI34gbXNnc3RyICJlcnJldXIgc2lnbmFsICVkIG5vbi1jYXB0dXLDqcKgOiAlc1xuIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGlnbm9yZSBzaWduYWwgJWQgYmVmb3JlIHJ1bm5pbmcgJS4yNTBzIgorI34gbXNnc3RyICJpbXBvc3NpYmxlIGQnaWdub3JlciBsZSBzaWduYWwgJWQgYXZhbnQgbGUgbGFuY2VtZW50IGR1ICUuMjUwcyIKKworI34gbXNnaWQgIihubyBjbGllbnRkYXRhKSIKKyN+IG1zZ3N0ciAiKHBhcyBkJ2luZm9ybWF0aW9uIGNsaWVudCkiCisKKyN+IG1zZ2lkICI8bnVsbD4iCisjfiBtc2dzdHIgIjxyaWVuPiIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9nbC5nbW8gYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vZ2wuZ21vCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmY3N2Q2NWQKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vZ2wuZ21vCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9nbC5wbyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9nbC5wbwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iM2U1ZTYyCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL2dsLnBvCkBAIC0wLDAgKzEsMTcyNiBAQAorIyB0cmFuc2xhdGlvbiBvZiBkc2VsZWN0X2dsLnBvIHRvIGdhbGljaWFuCisjIEdhbGljaWFuIHRyYW5zbGF0aW9uIG9mIGRwa2cKKyMgQ29weXJpZ2h0IChDKSAyMDA1IFNvZnR3YXJlIGluIHRoZSBQdWJsaWMgSW50ZXJlc3QsIEluYy4KKyMKKyMgSmFjb2JvIFRhcnLDrW8gPGp0YXJyaW9AZGViaWFuLm9yZz4sIDIwMDUuCisjIEjDqWN0b3IgRmVybsOhbmRleiBMw7NwZXogPHRyb3JyckB5YWhvby5lcz4sIDIwMDAuCisjIG12aWxsYXJpbm8gPG12aWxsYXJpbm9AdXNlcnMuc291cmNlZm9yZ2UubmV0PiwgMjAwOC4KK21zZ2lkICIiCittc2dzdHIgIiIKKyJQcm9qZWN0LUlkLVZlcnNpb246IGRzZWxlY3RfZ2xcbiIKKyJSZXBvcnQtTXNnaWQtQnVncy1UbzogZGViaWFuLWRwa2dAbGlzdHMuZGViaWFuLm9yZ1xuIgorIlBPVC1DcmVhdGlvbi1EYXRlOiAyMDExLTEwLTE0IDA3OjExKzAyMDBcbiIKKyJQTy1SZXZpc2lvbi1EYXRlOiAyMDA4LTEyLTI3IDE1OjU2KzAxMDBcbiIKKyJMYXN0LVRyYW5zbGF0b3I6IG12aWxsYXJpbm8gPG12aWxsYXJpbm9AdXNlcnMuc291cmNlZm9yZ2UubmV0PlxuIgorIkxhbmd1YWdlLVRlYW06IGdhbGljaWFuIDxwcm94ZWN0b0B0cmFzbm8ubmV0PlxuIgorIkxhbmd1YWdlOiBnbFxuIgorIk1JTUUtVmVyc2lvbjogMS4wXG4iCisiQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PVVURi04XG4iCisiQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdFxuIgorIlgtR2VuZXJhdG9yOiBLQmFiZWwgMS4xMS40XG4iCisiUGx1cmFsLUZvcm1zOiBucGx1cmFscz0yOyBwbHVyYWw9biAhPSAxO1xuIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjEyNQorbXNnaWQgIlNlYXJjaCBmb3IgPyAiCittc2dzdHIgIkJ1c2NhciA/ICIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxNDcKK21zZ2lkICJFcnJvcjogIgorbXNnc3RyICJFcnJvOiAiCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MTc4Cittc2dpZCAiSGVscDogIgorbXNnc3RyICJBeHVkYTogIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE4NAorbXNnaWQgIlByZXNzID8gZm9yIGhlbHAgbWVudSwgLiBmb3IgbmV4dCB0b3BpYywgPHNwYWNlPiB0byBleGl0IGhlbHAuIgorbXNnc3RyICIiCisiUHJlbWEgPyBwYXJhIG8gbWVuw7ogZGUgYXh1ZGEsIC4gcGFyYSBvIHNlZ3VpbnRlIHRlbWEsIDxlc3Bhem8+IHBhcmEgc2HDrXIuIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE5MQorbXNnaWQgIkhlbHAgaW5mb3JtYXRpb24gaXMgYXZhaWxhYmxlIHVuZGVyIHRoZSBmb2xsb3dpbmcgdG9waWNzOiIKK21zZ3N0ciAiSGFpIGluZm9ybWFjacOzbiBkZSBheHVkYSBkaXNwb8Oxw61iZWwgcGFyYSBvcyBzZWd1aW50ZXMgdGVtYXM6IgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE5OQorbXNnaWQgIiIKKyJQcmVzcyBhIGtleSBmcm9tIHRoZSBsaXN0IGFib3ZlLCA8c3BhY2U+IG9yIGBxJyB0byBleGl0IGhlbHAsXG4iCisiICBvciBgLicgKGZ1bGwgc3RvcCkgdG8gcmVhZCBlYWNoIGhlbHAgcGFnZSBpbiB0dXJuLiAiCittc2dzdHIgIiIKKyJQcmVtYSBudW5oYSB0ZWNsYSBkYSBsaXN0YSBkZSByaWJhLCA8ZXNwYXpvPiBvdSBcInFcIiBwYXJhIHNhw61yIGRhIGF4dWRhLFxuIgorIiAgb3UgXCIuXCIgKHB1bnRvKSBwYXJhIGxlciBhcyBww6F4aW5hcyBkZSBheHVkYSB1bmhhIHBvciB1bmhhLiAiCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MjA1Cittc2dpZCAiZXJyb3IgcmVhZGluZyBrZXlib2FyZCBpbiBoZWxwIgorbXNnc3RyICJlcnJvIGFvIGxlciBvIHRlY2xhZG8gbmEgYXh1ZGEiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6NTcKK21zZ2lkICJpb2N0bChUSU9DR1dJTlNaKSBmYWlsZWQiCittc2dzdHIgImlvY3RsKFRJT0NHV0lOU1opIGZhbGxvdSIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo2MAorbXNnaWQgImRvdXBkYXRlIGluIFNJR1dJTkNIIGhhbmRsZXIgZmFpbGVkIgorbXNnc3RyICJhIGNoYW1hZGEgYSBkb3VwZGF0ZSBubyBtYW5leGFkb3IgZGUgU0lHV0lOQ0ggZmFsbG91IgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjY3Cittc2dpZCAiZmFpbGVkIHRvIHJlc3RvcmUgb2xkIFNJR1dJTkNIIHNpZ2FjdCIKK21zZ3N0ciAibm9uIGZvaSBwb3PDrWJlbCByZWN1cGVyYXIgbyBhbnRpZ28gbWFuZXhhZG9yIGRlIFNJR1dJTkNIIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjY5Cittc2dpZCAiZmFpbGVkIHRvIHJlc3RvcmUgb2xkIHNpZ25hbCBtYXNrIgorbXNnc3RyICJub24gZm9pIHBvc8OtYmVsIHJlY3VwZXJhciBhIGFudGlnYSBtw6FzY2FyYSBkZSBzaW5haXMiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6NzkKK21zZ2lkICJmYWlsZWQgdG8gZ2V0IG9sZCBzaWduYWwgbWFzayIKK21zZ3N0ciAibm9uIGZvaSBwb3PDrWJlbCBvYnRlciBhIGFudGlnYSBtw6FzY2FyYSBkZSBzaW5haXMiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6ODAKK21zZ2lkICJmYWlsZWQgdG8gZ2V0IG9sZCBTSUdXSU5DSCBzaWdhY3QiCittc2dzdHIgIm5vbiBmb2kgcG9zw61iZWwgb2J0ZXIgbyBhbnRpZ28gbWFuZXhhZG9yIGRlIFNJR1dJTkNIIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjg0Cittc2dpZCAiZmFpbGVkIHRvIGJsb2NrIFNJR1dJTkNIIgorbXNnc3RyICJub24gZm9pIHBvc8OtYmVsIGJsb3F1ZWFyIFNJR1dJTkNIIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjg5Cittc2dpZCAiZmFpbGVkIHRvIHNldCBuZXcgU0lHV0lOQ0ggc2lnYWN0IgorbXNnc3RyICJub24gZm9pIHBvc8OtYmVsIGVzdGFiZWxlY2VyIG8gbm92byBtYW5leGFkb3IgZGUgU0lHV0lOQ0giCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTI2Cittc2dpZCAiZmFpbGVkIHRvIGFsbG9jYXRlIGNvbG91ciBwYWlyIgorbXNnc3RyICJub24gZm9pIHBvc8OtYmVsIHJlc2VydmFyIHVuIHBhciBkZSBjb3JlcyIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxNjcKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHRpdGxlIHdpbmRvdyIKK21zZ3N0ciAibm9uIGZvaSBwb3PDrWJlbCBjcmVhciBhIGZpZXN0cmEgZGUgdMOtdHVsbyIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxNzEKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHdoYXRpbmZvIHdpbmRvdyIKK21zZ3N0ciAibm9uIGZvaSBwb3PDrWJlbCBjcmVhciBhIGZpZXN0cmEgZGUgd2hhdGluZm8iCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTc1Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBiYXNlbGlzdCBwYWQiCittc2dzdHIgIm5vbiBmb2kgcG9zw61iZWwgY3JlYXIgbyBwYW5lbCBkZSBiYXNlbGlzdCIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxNzgKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGhlYWRpbmcgcGFkIgorbXNnc3RyICJub24gZm9pIHBvc8OtYmVsIGNyZWFyIG8gcGFuZWwgZGUgY2FiZWNlaXJhcyIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxODIKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHRoaXNzdGF0ZSBwYWQiCittc2dzdHIgIm5vbiBmb2kgcG9zw61iZWwgY3JlYXIgbyBwYW5lbCBkZSBlc3RhZG8iCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTg2Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBpbmZvIHBhZCIKK21zZ3N0ciAibm9uIGZvaSBwb3PDrWJlbCBjcmVhciBvIHBhbmVsIGRlIGluZm9ybWFjacOzbiIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxOTEKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHF1ZXJ5IHdpbmRvdyIKK21zZ3N0ciAibm9uIGZvaSBwb3PDrWJlbCBjcmVhciBhIGZpZXN0cmEgZGUgY29uc3VsdGFzIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjI1NQorbXNnaWQgIktleWJpbmRpbmdzIgorbXNnc3RyICJBc2lnbmFjacOzbnMgZGUgdGVjbGFzIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjMwMworIywgYy1mb3JtYXQKK21zZ2lkICIgIC0tICVkJSUsIHByZXNzICIKK21zZ3N0ciAiICAtLSAlZCUlLCBwcmVtYSAiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MzA2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGZvciBtb3JlIgorbXNnc3RyICIlcyBwYXJhIG3DoWlzIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjMxMAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyB0byBnbyBiYWNrIgorbXNnc3RyICIlcyBwYXJhIHZvbHRhciIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzo3OAorbXNnaWQgIltub3QgYm91bmRdIgorbXNnc3RyICJbc2VuIGFzaWduYXJdIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjgyCisjLCBjLWZvcm1hdAorbXNnaWQgIlt1bms6ICVkXSIKK21zZ3N0ciAiW2Rlc2M6ICVkXSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxMzkKK21zZ2lkICJTY3JvbGwgb253YXJkcyB0aHJvdWdoIGhlbHAvaW5mb3JtYXRpb24iCittc2dzdHIgIkF2YW56YXIgcG9sYSBheHVkYS9pbmZvcm1hY2nDs24iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQwCittc2dpZCAiU2Nyb2xsIGJhY2t3YXJkcyB0aHJvdWdoIGhlbHAvaW5mb3JtYXRpb24iCittc2dzdHIgIlJldHJvY2VkZXIgcG9sYSBheHVkYS9pbmZvcm1hY2nDs24iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQxCittc2dpZCAiTW92ZSB1cCIKK21zZ3N0ciAiU3ViaXIiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQyCittc2dpZCAiTW92ZSBkb3duIgorbXNnc3RyICJCYWl4YXIiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQzCittc2dpZCAiR28gdG8gdG9wIG9mIGxpc3QiCittc2dzdHIgIklyIGFvIGN1bWlvIGRhIGxpc3RhIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0NAorbXNnaWQgIkdvIHRvIGVuZCBvZiBsaXN0IgorbXNnc3RyICJJciBhbyBmaW5hbCBkYSBsaXN0YSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDUKK21zZ2lkICJSZXF1ZXN0IGhlbHAgKGN5Y2xlIHRocm91Z2ggaGVscCBzY3JlZW5zKSIKK21zZ3N0ciAiU29saWNpdGFyIGF4dWRhIChwYXNhciBwb2xhcyBwYW50YWxsYXMgZGUgYXh1ZGEpIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0NgorbXNnaWQgIkN5Y2xlIHRocm91Z2ggaW5mb3JtYXRpb24gZGlzcGxheXMiCittc2dzdHIgIlBhc2FyIHBvbGFzIHBhbnRhbGxhcyBkZSBpbmZvcm1hY2nDs24iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ3Cittc2dpZCAiUmVkcmF3IGRpc3BsYXkiCittc2dzdHIgIkRlYnV4YXIgZGUgbm92byBhIHBhbnRhbGxhIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0OAorbXNnaWQgIlNjcm9sbCBvbndhcmRzIHRocm91Z2ggbGlzdCBieSAxIGxpbmUiCittc2dzdHIgIkF2YW56YXIgMSBsacOxYSBuYSBsaXN0YSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDkKK21zZ2lkICJTY3JvbGwgYmFja3dhcmRzIHRocm91Z2ggbGlzdCBieSAxIGxpbmUiCittc2dzdHIgIlJldHJvY2VkZXIgMSBsacOxYSBuYSBsaXN0YSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTAKK21zZ2lkICJTY3JvbGwgb253YXJkcyB0aHJvdWdoIGhlbHAvaW5mb3JtYXRpb24gYnkgMSBsaW5lIgorbXNnc3RyICJBdmFuemFyIDEgbGnDsWEgbmEgYXh1ZGEvaW5mb3JtYWNpw7NuIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1MQorbXNnaWQgIlNjcm9sbCBiYWNrd2FyZHMgdGhyb3VnaCBoZWxwL2luZm9ybWF0aW9uIGJ5IDEgbGluZSIKK21zZ3N0ciAiUmV0cm9jZWRlciAxIGxpw7FhIG5hIGF4dWRhL2luZm9ybWFjacOzbiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTIKK21zZ2lkICJTY3JvbGwgb253YXJkcyB0aHJvdWdoIGxpc3QiCittc2dzdHIgIkF2YW56YXIgcG9sYSBsaXN0YSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTMKK21zZ2lkICJTY3JvbGwgYmFja3dhcmRzIHRocm91Z2ggbGlzdCIKK21zZ3N0ciAiUmV0cm9jZWRlciBwb2xhIGxpc3RhIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1NgorbXNnaWQgIk1hcmsgcGFja2FnZShzKSBmb3IgaW5zdGFsbGF0aW9uIgorbXNnc3RyICJNYXJjYXIgbyhzKSBwYXF1ZXRlKHMpIHBhcmEgbyhzKSBpbnN0YWxhciIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTcKK21zZ2lkICJNYXJrIHBhY2thZ2UocykgZm9yIGRlaW5zdGFsbGF0aW9uIgorbXNnc3RyICJNYXJjYXIgbyhzKSBwYXF1ZXRlKHMpIHBhcmEgbyhzKSBkZXNpbnN0YWxhciIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTgKK21zZ2lkICJNYXJrIHBhY2thZ2UocykgZm9yIGRlaW5zdGFsbCBhbmQgcHVyZ2UiCittc2dzdHIgIk1hcmNhciBvKHMpIHBhcXVldGUocykgcGFyYSBvKHMpIGRlc2ludGFsYXIgZSBwdXJnYXIiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTU5Cittc2dpZCAiTWFrZSBoaWdobGlnaHQgbW9yZSBzcGVjaWZpYyIKK21zZ3N0ciAiRmFjZXIgbyByZWFsemFkbyBtw6FpcyBlc3BlY8OtZmljbyIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjAKK21zZ2lkICJNYWtlIGhpZ2hsaWdodCBsZXNzIHNwZWNpZmljIgorbXNnc3RyICJGYWNlciBvIHJlYWx6YWRvIG1lbm9zIGVzcGVjw61maWNvIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2MQorbXNnaWQgIlNlYXJjaCBmb3IgYSBwYWNrYWdlIHdob3NlIG5hbWUgY29udGFpbnMgYSBzdHJpbmciCittc2dzdHIgIlByb2N1cmFyIHVuIHBhcXVldGUgY3VuIG5vbWUgcXVlIGNvbnTDqW4gdW5oYSBjYWRlYSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjIKK21zZ2lkICJSZXBlYXQgbGFzdCBzZWFyY2guIgorbXNnc3RyICJSZXBldGlyIGEgw7psdGltYSBwcm9jdXJhLiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjMKK21zZ2lkICJTd2FwIHNvcnQgb3JkZXIgcHJpb3JpdHkvc2VjdGlvbiIKK21zZ3N0ciAiVHJvY2FyIGEgb3JkZSBkZSBwcmlvcmlkYWRlL3NlY2Npw7NuIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2NAorbXNnaWQgIlF1aXQsIGNvbmZpcm1pbmcsIGFuZCBjaGVja2luZyBkZXBlbmRlbmNpZXMiCittc2dzdHIgIlNhw61yLCBjb25maXJtYW5kbyBlIGNvbXByb2JhbmRvIGFzIGRlcGVuZGVuY2lhcyIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjUKK21zZ2lkICJRdWl0LCBjb25maXJtaW5nIHdpdGhvdXQgY2hlY2siCittc2dzdHIgIlNhw61yLCBjb25maXJtYW5kbyBzZW4gY29tcHJvYmFyIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2NgorbXNnaWQgIlF1aXQsIHJlamVjdGluZyBjb25mbGljdC9kZXBlbmRlbmN5IHN1Z2dlc3Rpb25zIgorbXNnc3RyICJTYcOtciwgcmV4ZWl0YW5kbyBhcyBzdXhlc3Rpw7NucyBkZSBjb25mbGl0b3MvZGVwZW5kZW5jaWFzIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2NworbXNnaWQgIkFib3J0IC0gcXVpdCB3aXRob3V0IG1ha2luZyBjaGFuZ2VzIgorbXNnc3RyICJBYm9ydGFyIC0gc2HDrXIgc2VuIGZhY2VyIGNhbWJpbyBuaW5nw7puIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2OAorbXNnaWQgIlJldmVydCB0byBvbGQgc3RhdGUgZm9yIGFsbCBwYWNrYWdlcyIKK21zZ3N0ciAiVm9sdGFyIHRvZG9zIG9zIHBhcXVldGVzIGFvIGVzdGFkbyBhbnRpZ28iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY5Cittc2dpZCAiUmV2ZXJ0IHRvIHN1Z2dlc3RlZCBzdGF0ZSBmb3IgYWxsIHBhY2thZ2VzIgorbXNnc3RyICJWb2x0YXIgdG9kb3Mgb3MgcGFxdWV0ZXMgYW8gZXN0YWRvIHN1eGVyaWRvIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE3MAorbXNnaWQgIlJldmVydCB0byBkaXJlY3RseSByZXF1ZXN0ZWQgc3RhdGUgZm9yIGFsbCBwYWNrYWdlcyIKK21zZ3N0ciAiVm9sdGFyIHRvZG9zIG9zIHBhcXVldGVzIGFvIGVzdGFkbyBzb2xpY2l0YWRvIGRpcmVjdGFtZW50ZSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNzEKK21zZ2lkICJSZXZlcnQgdG8gY3VycmVudGx5IGluc3RhbGxlZCBzdGF0ZSBmb3IgYWxsIHBhY2thZ2VzIgorbXNnc3RyICJWb2x0YXIgdG9kb3Mgb3MgcGFxdWV0ZXMgYW8gZXN0YWRvIGNvIHF1ZSBlc3TDoW4gaW5zdGFsYWRvcyIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNzQKK21zZ2lkICJTZWxlY3QgY3VycmVudGx5LWhpZ2hsaWdodGVkIGFjY2VzcyBtZXRob2QiCittc2dzdHIgIkVzY29sbGVyIG8gbcOpdG9kbyBkZSBhY2Nlc28gcmVhbHphZG8iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTc1Cittc2dpZCAiUXVpdCB3aXRob3V0IGNoYW5naW5nIHNlbGVjdGVkIGFjY2VzcyBtZXRob2QiCittc2dzdHIgIlNhw61yIHNlbiB0cm9jYXIgbyBtw6l0b2RvIGRlIGFjY2VzbyBlc2NvbGxpZG8iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MjkKK21zZ2lkICJLZXlzdHJva2VzIgorbXNnc3RyICJUZWNsYXMiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MjkKK21zZ2lkICIiCisiTW90aW9uIGtleXM6IE5leHQvUHJldmlvdXMsIFRvcC9FbmQsIFVwL0Rvd24sIEJhY2t3YXJkcy9Gb3J3YXJkczpcbiIKKyIgIGosIERvd24tYXJyb3cgICAgICAgICBrLCBVcC1hcnJvdyAgICAgICAgICAgICBtb3ZlIGhpZ2hsaWdodFxuIgorIiAgTiwgUGFnZS1kb3duLCBTcGFjZSAgIFAsIFBhZ2UtdXAsIEJhY2tzcGFjZSAgIHNjcm9sbCBsaXN0IGJ5IDEgcGFnZVxuIgorIiAgXm4gICAgICAgICAgICAgICAgICAgIF5wICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBsaXN0IGJ5IDEgbGluZVxuIgorIiAgdCwgSG9tZSAgICAgICAgICAgICAgIGUsIEVuZCAgICAgICAgICAgICAgICAgIGp1bXAgdG8gdG9wL2VuZCBvZiBsaXN0XG4iCisiICB1ICAgICAgICAgICAgICAgICAgICAgZCAgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGluZm8gYnkgMSBwYWdlXG4iCisiICBedSAgICAgICAgICAgICAgICAgICAgXmQgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGluZm8gYnkgMSBsaW5lXG4iCisiICBCLCBMZWZ0LWFycm93ICAgICAgICAgRiwgUmlnaHQtYXJyb3cgICAgICAgICAgcGFuIGRpc3BsYXkgYnkgMS8zIHNjcmVlblxuIgorIiAgXmIgICAgICAgICAgICAgICAgICAgIF5mICAgICAgICAgICAgICAgICAgICAgIHBhbiBkaXNwbGF5IGJ5IDEgY2hhcmFjdGVyXG4iCisiXG4iCisiTWFyayBwYWNrYWdlcyBmb3IgbGF0ZXIgcHJvY2Vzc2luZzpcbiIKKyIgKywgSW5zZXJ0ICBpbnN0YWxsIG9yIHVwZ3JhZGUgICAgICA9LCBIICBob2xkIGluIHByZXNlbnQgc3RhdGVcbiIKKyIgLSwgRGVsZXRlICByZW1vdmUgICAgICAgICAgICAgICAgICA6LCBHICB1bmhvbGQ6IHVwZ3JhZGUgb3IgbGVhdmUgIgorInVuaW5zdGFsbGVkXG4iCisiIF8gICAgICAgICAgcmVtb3ZlICYgcHVyZ2UgY29uZmlnXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTWlzY2VsbGFuZW91czpcbiIKKyJRdWl0LCBleGl0LCBvdmVyd3JpdGUgKG5vdGUgY2FwaXRhbHMhKTogICAgICAgPywgRjEgcmVxdWVzdCBoZWxwIChhbHNvICIKKyJIZWxwKVxuIgorIiBSZXR1cm4gIENvbmZpcm0sIHF1aXQgKGNoZWNrIGRlcGVuZGVuY2llcykgICBpLCBJICB0b2dnbGUvY3ljbGUgaW5mbyAiCisiZGlzcGxheXNcbiIKKyIgICBRICAgICBDb25maXJtLCBxdWl0IChvdmVycmlkZSBkZXAucykgICAgICAgbywgTyAgY3ljbGUgdGhyb3VnaCBzb3J0ICIKKyJvcHRpb25zXG4iCisiIFgsIEVzYyAgZVhpdCwgYWJhbmRvbmluZyBhbnkgY2hhbmdlcyBtYWRlICAgIHYsIFYgIGNoYW5nZSBzdGF0dXMgZGlzcGxheSAiCisib3B0c1xuIgorIiAgIFIgICAgIFJldmVydCB0byBzdGF0ZSBiZWZvcmUgdGhpcyBsaXN0ICAgICAgXmwgICByZWRyYXcgZGlzcGxheVxuIgorIiAgIFUgICAgIHNldCBhbGwgdG8gc1VnZ2VzdGVkIHN0YXRlICAgICAgICAgICAgIC8gICBzZWFyY2ggKFJldHVybiB0byAiCisiY2FuY2VsKVxuIgorIiAgIEQgICAgIHNldCBhbGwgdG8gRGlyZWN0bHkgcmVxdWVzdGVkIHN0YXRlICBuLCBcXCAgcmVwZWF0IGxhc3Qgc2VhcmNoXG4iCittc2dzdHIgIiIKKyJUZWNsYXMgZGUgbW92ZW1lbnRvOiBTZWd1aW50ZS9BbnRlcmlvciwgSW5pL0ZpbiwgQXJyaWJhL0FiYWl4bywgQXRyw6FzLyIKKyJBZGlhbnRlOlxuIgorIiAgRnJlY2hhLWFiYWl4bywgaiAgICAgIEZyZWNoYS1hcnJpYmEsIGsgICAgICAgIG1vdmVyIG8gcmVhbHphZG9cbiIKKyIgIE4sIEF2UMOheCwgRXNwYXpvICAgICAgUCwgUmVQw6F4LCBSZXRyb2Nlc28gICAgIGRlc3ByYXphciBhIGxpc3RhIDEgcMOheGluYVxuIgorIiAgXm4gICAgICAgICAgICAgICAgICAgIF5wICAgICAgICAgICAgICAgICAgICAgIGRlc3ByYXphciBhIGxpc3RhIDEgbGnDsWFcbiIKKyIgIHQsIEluaWNpbyAgICAgICAgICAgICBlLCBGaW4gICAgICAgICAgICAgICAgICBzYWx0YXIgYW8gaW5pY2lvL2ZpbiBkYSAiCisibGlzdGFcbiIKKyIgIHUgICAgICAgICAgICAgICAgICAgICBkICAgICAgICAgICAgICAgICAgICAgICBkZXNwcmF6YXIgYSBpbmZvcm1hY2nDs24gMSAiCisicMOheC5cbiIKKyIgIF51ICAgICAgICAgICAgICAgICAgICBeZCAgICAgICAgICAgICAgICAgICAgICBkZXNwcmF6YXIgYSBpbmZvcm1hY2nDs24gMSAiCisibGnDsWFcbiIKKyIgIEIsIEZyZWNoYS1lc3F1ZXJkYSAgICBGLCBGcmVjaGEtZGVyZWl0YSAgICAgICBtb3ZlciAxLzMgZGUgcGFudGFsbGFcbiIKKyIgIF5iICAgICAgICAgICAgICAgICAgICBeZiAgICAgICAgICAgICAgICAgICAgICBtb3ZlciBhIHBhbnRhbGxhIDEgY2Fyw6FjdGVyXG4iCisiXG4iCisiTWFyY2FyIHBhcXVldGVzIHBhcmEgcG9zdGVyaW9yIHByb2Nlc2FtZW50bzpcbiIKKyIgKywgSW5zZXJ0ICBpbnN0YWxhciBvdSBhY3R1YWxpemFyICA9LCBIICByZXRlciBubyBlc3RhZG8gYWN0dWFsXG4iCisiIC0sIFN1cHIgICAgZWxpbWluYXIgICAgICAgICAgICAgICAgOiwgRyAgbGliZXJhcjogYWN0dWFsaXphciBvdSBub24gIgorImluc3RhbGFyXG4iCisiIF8gICAgICAgICAgZWxpbWluYXIgZSBwdXJnYXIgY29uZmlnXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVmFyaW9zOlxuIgorIlNhw61yLCBzb2JyZXNjcmliaXIgKG9sbG8gw6FzIG1hacO6c2N1bGFzKTogICAgICA/LCBGMSBwZWRpciBheHVkYVxuIgorIiBJbnRybyAgIENvbmZpcm1hciwgc2HDrXIgKGNvbXByb2JhciBkZXBzKSAgICAgaSwgSSAgcGFudGFsbGFzIGRlICIKKyJpbmZvcm1hY2nDs25cbiIKKyIgICBRICAgICBDb25maXJtYXIsIHNhw61yIChpZ25vcmFyIGRlcHMpICAgICAgIG8sIE8gIG9wY2nDs25zIGRlIG9yZGVhbWVudG9cbiIKKyIgWCwgRXNjICBTYcOtciwgYWJhbmRvbmFyIG9zIGNhbWJpb3MgICAgICAgICAgIHYsIFYgIG9wY2nDs25zIGRhIHBhbnQuIGRlICIKKyJlc3RhZG9cbiIKKyIgICBSICAgICBWb2x0YXIgYW8gZXN0YWRvIGFudGVyaW9yIMOhIGxpc3RhICAgICBebCAgIHJlZGVidXhhciBwYW50YWxsYVxuIgorIiAgIFUgICAgIEVzdGFiZWxlY2VyIHRvZG8gYW8gZXN0YWRvIHN1eGVyaWRvICAgICAvICAgcHJvY3VyYXIgKEludHJvIHBhcmEgIgorImNhbmNlbC4pXG4iCisiICAgRCAgICAgRXN0YWJsZWNlIG8gZXN0YWRvIHNvbGljaXRhZG8gICAgICAgIG4sIFxcXFwgIHJlcGV0aXIgYSDDumx0aW1hICIKKyJwcm9jdXJhXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6NTUKK21zZ2lkICJJbnRyb2R1Y3Rpb24gdG8gcGFja2FnZSBzZWxlY3Rpb25zIgorbXNnc3RyICJJbnRyb2R1Y2nDs24gw6FzIGVzY29sbGFzIGRlIHBhcXVldGVzIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjU1Cittc2dpZCAiIgorIldlbGNvbWUgdG8gZHNlbGVjdCdzIG1haW4gcGFja2FnZSBsaXN0aW5nLlxuIgorIlxuIgorIllvdSB3aWxsIGJlIHByZXNlbnRlZCB3aXRoIGEgbGlzdCBvZiBwYWNrYWdlcyB3aGljaCBhcmUgaW5zdGFsbGVkIG9yICIKKyJhdmFpbGFibGVcbiIKKyJmb3IgaW5zdGFsbGF0aW9uLiAgWW91IGNhbiBuYXZpZ2F0ZSBhcm91bmQgdGhlIGxpc3QgdXNpbmcgdGhlIGN1cnNvciBrZXlzLFxuIgorIm1hcmsgcGFja2FnZXMgZm9yIGluc3RhbGxhdGlvbiAodXNpbmcgYCsnKSBvciBkZWluc3RhbGxhdGlvbiAodXNpbmcgYC0nKS5cbiIKKyJQYWNrYWdlcyBjYW4gYmUgbWFya2VkIGVpdGhlciBzaW5nbHkgb3IgaW4gZ3JvdXBzOyBpbml0aWFsbHkgeW91IHdpbGwgc2VlICIKKyJ0aGF0XG4iCisidGhlIGxpbmUgYEFsbCBwYWNrYWdlcycgaXMgc2VsZWN0ZWQuICBgKycsIGAtJyBhbmQgc28gb24gd2lsbCBhZmZlY3QgYWxsICIKKyJ0aGVcbiIKKyJwYWNrYWdlcyBkZXNjcmliZWQgYnkgdGhlIGhpZ2hsaWdodGVkIGxpbmUuXG4iCisiXG4iCisiU29tZSBvZiB5b3VyIGNob2ljZXMgd2lsbCBjYXVzZSBjb25mbGljdHMgb3IgZGVwZW5kZW5jeSBwcm9ibGVtczsgeW91IHdpbGwgIgorImJlXG4iCisiZ2l2ZW4gYSBzdWItbGlzdCBvZiB0aGUgcmVsZXZhbnQgcGFja2FnZXMsIHNvIHRoYXQgeW91IGNhbiBzb2x2ZSB0aGUgIgorInByb2JsZW1zLlxuIgorIlxuIgorIllvdSBzaG91bGQgcmVhZCB0aGUgbGlzdCBvZiBrZXlzIGFuZCB0aGUgZXhwbGFuYXRpb25zIG9mIHRoZSBkaXNwbGF5LlxuIgorIk11Y2ggb24tbGluZSBoZWxwIGlzIGF2YWlsYWJsZSwgcGxlYXNlIG1ha2UgdXNlIG9mIGl0IC0gcHJlc3MgYD8nIGF0XG4iCisiYW55IHRpbWUgZm9yIGhlbHAuXG4iCisiXG4iCisiV2hlbiB5b3UgaGF2ZSBmaW5pc2hlZCBzZWxlY3RpbmcgcGFja2FnZXMsIHByZXNzIDxlbnRlcj4gdG8gY29uZmlybSAiCisiY2hhbmdlcyxcbiIKKyJvciBgWCcgdG8gcXVpdCB3aXRob3V0IHNhdmluZyBjaGFuZ2VzLiBBIGZpbmFsIGNoZWNrIG9uIGNvbmZsaWN0cyBhbmRcbiIKKyJkZXBlbmRlbmNpZXMgd2lsbCBiZSBkb25lIC0gaGVyZSB0b28geW91IG1heSBzZWUgYSBzdWJsaXN0LlxuIgorIlxuIgorIlByZXNzIDxzcGFjZT4gdG8gbGVhdmUgaGVscCBhbmQgZW50ZXIgdGhlIGxpc3Qgbm93LlxuIgorbXNnc3RyICIiCisiQmVudmlkbyDDoSBsaXN0YSBwcmluY2lwYWwgZGUgcGFxdWV0ZXMgZGUgZHNlbGVjdFxuIgorIlxuIgorIkjDoXNlbGxlIHByZXNlbnRhciB1bmhhIGxpc3RhIGRlIHBhcXVldGVzIHF1ZSBlc3TDoW4gaW5zdGFsYWRvcyBvdSAiCisiZGlzcG/DscOtYmVpc1xuIgorInBhcmEgb3MgaW5zdGFsYXIuIFBvZGUgbmF2ZWdhciBwb2xhIGxpc3RhIGVtcHJlZ2FuZG8gYXMgZnJlY2hhcyBkbyBjdXJzb3IsXG4iCisibWFyY2FyIHBhcXVldGVzIHBhcmEgb3MgaW5zdGFsYXIgKGVtcHJlZ2FuZG8gXCIrXCIpIG91IHBhcmEgb3MgZGVzaW5zdGFsYXJcbiIKKyIoZW1wcmVnYW5kbyBcIi1cIikuIE9zIHBhcXVldGVzIHDDs2RlbnNlIG1hcmNhciB1biBhIHVuIG91IHBvciBncnVwb3MuIEFvXG4iCisicHJpbmNpcGlvIGhhIHZlciBxdWUgYSBsacOxYSBcIlRvZG9zIG9zIHBhcXVldGVzXCIgZXN0w6EgZXNjb2xsaWRhLiBcIitcIiwgXCItIgorIlwiIGVcbiIKKyJ0b2RvIGlzbyBoYW4gYWZlY3RhciBhIHRvZG9zIG9zIHBhcXVldGVzIGRlc2NyaXRvcyBwb2xhIGxpw7FhIHJlc2FsdGFkYS5cbiIKKyJcbiIKKyJBbGd1bmhhcyBkYXMgc8O6YXMgYWNjacOzbnMgaGFuIGNhdXNhciBjb25mbGl0b3Mgb3UgcHJvYmxlbWFzIGRlICIKKyJkZXBlbmRlbmNpYXM7XG4iCisiaMOhc2VsbGUgZm9ybmVjZXIgdW5oYSBzdWItbGlzdGEgY29zIHBhcXVldGVzIHJlbGV2YW50ZXMgcGFyYSBxdWUgcG9pZGFcbiIKKyJzb2x1Y2lvbmFyIG9zIHByb2JsZW1hcy5cbiIKKyJcbiIKKyJEZWJlcsOtYSBsZXIgYSBsaXN0YSBkZSB0ZWNsYXMgZSBhcyBleHBsaWNhY2nDs25zIGRhIHBhbnRhbGxhLiBIYWkgbW9pdGEgIgorImF4dWRhXG4iCisiZW4gbGnDsWEgZGlzcG/DscOtYmVsLCBlbXByw6lndWVhLCBwcmVtYSBcIj9cIiBlbiBjYWxxdWVyYSBtb21lbnRvIHBhcmEgdGVyICIKKyJheHVkYS5cbiIKKyJcbiIKKyJDYW5kbyByZW1hdGUgZGUgZXNjb2xsZXIgb3MgcGFxdWV0ZXMsIHByZW1hIDxJbnRybz4gcGFyYSBjb25maXJtYXIgYXNcbiIKKyJtb2RpZmljYWNpw7Nucywgb3UgXCJYXCIgcGFyYSBzYcOtciBzZW4gZ2FyZGFsYXMuIEhhc2UgcmVhbGl6YXIgdW5oYSAiCisiZGVycmFkZWlyYVxuIgorImNvbXByb2JhY2nDs24gZGUgY29uZmxpdG9zIGUgZGVwZW5kZW5jaWFzLCBvbmRlIHRhbcOpbiBoYSB2ZXIgdW5oYSBzdWItbGlzdGEuXG4iCisiXG4iCisiUHJlbWEgPEVzcGF6bz4gcGFyYSBzYcOtciBkYSBheHVkYSBlIGVudHJhciBhZ29yYSBuYSBsaXN0YS5cbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo4MAorbXNnaWQgIkludHJvZHVjdGlvbiB0byByZWFkLW9ubHkgcGFja2FnZSBsaXN0IGJyb3dzZXIiCittc2dzdHIgIkludHJvZHVjacOzbiBhbyBuYXZlZ2Fkb3IgZGEgbGlzdGEgZGUgcGFxdWV0ZXMgZGUgc8OzIGxlY3R1cmEiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6ODAKK21zZ2lkICIiCisiV2VsY29tZSB0byBkc2VsZWN0J3MgbWFpbiBwYWNrYWdlIGxpc3RpbmcuXG4iCisiXG4iCisiWW91IHdpbGwgYmUgcHJlc2VudGVkIHdpdGggYSBsaXN0IG9mIHBhY2thZ2VzIHdoaWNoIGFyZSBpbnN0YWxsZWQgb3IgIgorImF2YWlsYWJsZVxuIgorImZvciBpbnN0YWxsYXRpb24uICBTaW5jZSB5b3UgZG8gbm90IGhhdmUgdGhlIHByaXZpbGVnZSBuZWNlc3NhcnkgdG8gdXBkYXRlXG4iCisicGFja2FnZSBzdGF0ZXMsIHlvdSBhcmUgaW4gYSByZWFkLW9ubHkgbW9kZS4gIFlvdSBjYW4gbmF2aWdhdGUgYXJvdW5kIHRoZVxuIgorImxpc3QgdXNpbmcgdGhlIGN1cnNvciBrZXlzIChwbGVhc2Ugc2VlIHRoZSBgS2V5c3Ryb2tlcycgaGVscCBzY3JlZW4pLCAiCisib2JzZXJ2ZVxuIgorInRoZSBzdGF0dXMgb2YgdGhlIHBhY2thZ2VzIGFuZCByZWFkIGluZm9ybWF0aW9uIGFib3V0IHRoZW0uXG4iCisiXG4iCisiWW91IHNob3VsZCByZWFkIHRoZSBsaXN0IG9mIGtleXMgYW5kIHRoZSBleHBsYW5hdGlvbnMgb2YgdGhlIGRpc3BsYXkuXG4iCisiTXVjaCBvbi1saW5lIGhlbHAgaXMgYXZhaWxhYmxlLCBwbGVhc2UgbWFrZSB1c2Ugb2YgaXQgLSBwcmVzcyBgPycgYXRcbiIKKyJhbnkgdGltZSBmb3IgaGVscC5cbiIKKyJcbiIKKyJXaGVuIHlvdSBoYXZlIGZpbmlzaGVkIGJyb3dzaW5nLCBwcmVzcyBgUScgb3IgPGVudGVyPiB0byBxdWl0LlxuIgorIlxuIgorIlByZXNzIDxzcGFjZT4gdG8gbGVhdmUgaGVscCBhbmQgZW50ZXIgdGhlIGxpc3Qgbm93LlxuIgorbXNnc3RyICIiCisiQmVudmlkbyDDoSBsaXN0YSBwcmluY2lwYWwgZGUgcGFxdWV0ZXMgZGUgZHNlbGVjdFxuIgorIlxuIgorIkjDoXNlbGxlIHByZXNlbnRhciB1bmhhIGxpc3RhIGRlIHBhcXVldGVzIHF1ZSBlc3TDoW4gaW5zdGFsYWRvcyBvdSAiCisiZGlzcG/DscOtYmVpc1xuIgorInBhcmEgb3MgaW5zdGFsYXIuIENvbW8gbm9uIHRlbiBwcml2aWxleGlvcyBkYWJvbmRvIHBhcmEgYWN0dWFsaXphciBvcyAiCisiZXN0YWRvc1xuIgorImRvcyBwYXF1ZXRlcywgZXN0w6EgbnVuIG1vZG8gZGUgc8OzIGxlY3R1cmEuIFBvZGUgbmF2ZWdhciBwb2xhIGxpc3RhICIKKyJlbXByZWdhbmRvXG4iCisiYXMgZnJlY2hhcyBkbyBjdXJzb3IgKGNvbnN1bHRlIGEgcGFudGFsbGEgZGUgYXh1ZGEgXCJUZWNsYXNcIiksIG9ic2VydmFyIG9zICIKKyJlc3RhZG9zXG4iCisiZG9zIHBhcXVldGVzIGUgbGVyIGluZm9ybWFjacOzbiBzb2JyZSBlbGVzLlxuIgorIlxuIgorIkRlYmVyw61hIGxlciBhIGxpc3RhIGRlIHRlY2xhcyBlIGFzIGV4cGxpY2FjacOzbnMgZGEgcGFudGFsbGEuIEhhaSBtb2l0YSAiCisiYXh1ZGFcbiIKKyJlbiBsacOxYSBkaXNwb8Oxw61iZWwsIGVtcHLDqWd1ZWEsIHByZW1hIFwiP1wiIGVuIGNhbHF1ZXJhIG1vbWVudG8gcGFyYSB0ZXIgIgorImF4dWRhLlxuIgorIlxuIgorIkNhbmRvIHJlbWF0ZSBkZSBib3RhciB1bmhhIG9sbGFkYSwgcHJlbWEgXCJRXCIgb3UgPEludHJvPiBwYXJhIHNhw61yLlxuIgorIlxuIgorIlByZW1hIDxFc3Bhem8+IHBhcmEgc2HDrXIgZGEgYXh1ZGEgZSBlbnRyYXIgYWdvcmEgbmEgbGlzdGEuXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6OTkKK21zZ2lkICJJbnRyb2R1Y3Rpb24gdG8gY29uZmxpY3QvZGVwZW5kZW5jeSByZXNvbHV0aW9uIHN1Yi1saXN0IgorbXNnc3RyICJJbnRyb2R1Y2nDs24gw6Egc3VibGlzdGEgZGUgcmVzb2x1Y2nDs24gZGUgY29uZmxpdG9zL2RlcGVuZGVuY2lhcyIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo5OQorbXNnaWQgIiIKKyJEZXBlbmRlbmN5L2NvbmZsaWN0IHJlc29sdXRpb24gLSBpbnRyb2R1Y3Rpb24uXG4iCisiXG4iCisiT25lIG9yIG1vcmUgb2YgeW91ciBjaG9pY2VzIGhhdmUgcmFpc2VkIGEgY29uZmxpY3Qgb3IgZGVwZW5kZW5jeSBwcm9ibGVtIC1cbiIKKyJzb21lIHBhY2thZ2VzIHNob3VsZCBvbmx5IGJlIGluc3RhbGxlZCBpbiBjb25qdW5jdGlvbiB3aXRoIGNlcnRhaW4gb3RoZXJzLCAiCisiYW5kXG4iCisic29tZSBjb21iaW5hdGlvbnMgb2YgcGFja2FnZXMgbWF5IG5vdCBiZSBpbnN0YWxsZWQgdG9nZXRoZXIuXG4iCisiXG4iCisiWW91IHdpbGwgc2VlIGEgc3ViLWxpc3QgY29udGFpbmluZyB0aGUgcGFja2FnZXMgaW52b2x2ZWQuICBUaGUgYm90dG9tIGhhbGYgIgorIm9mXG4iCisidGhlIGRpc3BsYXkgc2hvd3MgcmVsZXZhbnQgY29uZmxpY3RzIGFuZCBkZXBlbmRlbmNpZXM7IHVzZSBgaScgdG8gY3ljbGUgIgorImJldHdlZW5cbiIKKyJ0aGF0LCB0aGUgcGFja2FnZSBkZXNjcmlwdGlvbnMgYW5kIHRoZSBpbnRlcm5hbCBjb250cm9sIGluZm9ybWF0aW9uLlxuIgorIlxuIgorIkEgc2V0IG9mIGBzdWdnZXN0ZWQnIHBhY2thZ2VzIGhhcyBiZWVuIGNhbGN1bGF0ZWQsIGFuZCB0aGUgaW5pdGlhbCBtYXJraW5ncyAiCisiaW5cbiIKKyJ0aGlzIHN1Yi1saXN0IGhhdmUgYmVlbiBzZXQgdG8gbWF0Y2ggdGhvc2UsIHNvIHlvdSBjYW4ganVzdCBoaXQgUmV0dXJuIHRvXG4iCisiYWNjZXB0IHRoZSBzdWdnZXN0aW9ucyBpZiB5b3Ugd2lzaC4gIFlvdSBtYXkgYWJvcnQgdGhlIGNoYW5nZShzKSB3aGljaCAiCisiY2F1c2VkXG4iCisidGhlIHByb2JsZW0ocyksIGFuZCBnbyBiYWNrIHRvIHRoZSBtYWluIGxpc3QsIGJ5IHByZXNzaW5nIGNhcGl0YWwgYFgnLlxuIgorIlxuIgorIllvdSBjYW4gYWxzbyBtb3ZlIGFyb3VuZCB0aGUgbGlzdCBhbmQgY2hhbmdlIHRoZSBtYXJraW5ncyBzbyB0aGF0IHRoZXkgYXJlICIKKyJtb3JlXG4iCisibGlrZSB3aGF0IHlvdSB3YW50LCBhbmQgeW91IGNhbiBgcmVqZWN0JyBteSBzdWdnZXN0aW9ucyBieSB1c2luZyB0aGUgIgorImNhcGl0YWxcbiIKKyJgRCcgb3IgYFInIGtleXMgKHNlZSB0aGUga2V5YmluZGluZ3MgaGVscCBzY3JlZW4pLiAgWW91IGNhbiB1c2UgY2FwaXRhbCBgUScgIgorInRvXG4iCisiZm9yY2UgbWUgdG8gYWNjZXB0IHRoZSBzaXR1YXRpb24gY3VycmVudGx5IGRpc3BsYXllZCwgaW4gY2FzZSB5b3Ugd2FudCB0b1xuIgorIm92ZXJyaWRlIGEgcmVjb21tZW5kYXRpb24gb3IgdGhpbmsgdGhhdCB0aGUgcHJvZ3JhbSBpcyBtaXN0YWtlbi5cbiIKKyJcbiIKKyJQcmVzcyA8c3BhY2U+IHRvIGxlYXZlIGhlbHAgYW5kIGVudGVyIHRoZSBzdWItbGlzdDsgcmVtZW1iZXI6IHByZXNzIGA/JyBmb3IgIgorImhlbHAuXG4iCittc2dzdHIgIiIKKyJSZXNvbHVjacOzbiBkZSBkZXBlbmRlbmNpYXMgZSBjb25mbGl0b3MgLSBpbnRyb2R1Y2nDs24uXG4iCisiXG4iCisiVW5oYSBvdSBtw6FpcyBkYXMgc8O6YXMgZXNjb2xsYXMgcHJvZHVjaXUgdW4gcHJvYmxlbWEgZGUgZGVwZW5kZW5jaWFzIG91XG4iCisiY29uZmxpdG9zIC0gYWxnw7pucyBwYXF1ZXRlcyBzw7Mgc2UgZGViZW4gaW5zdGFsYXIgZW4gY29tYmluYWNpw7NuIGNvbiBvdXRyb3MsXG4iCisiZSBhbGd1bmhhcyBjb21iaW5hY2nDs25zIGRlIHBhcXVldGVzIG5vbiBzZSBwb2RlbiBpbnN0YWxhci5cbiIKKyJcbiIKKyJIYSB2ZXIgdW5oYSBzdWItbGlzdGEgcXVlIGNvbnTDqW4gb3MgcGFxdWV0ZXMgaW1wbGljYWRvcy4gQSBtZXRhZGUgaW5mZXJpb3IgIgorImRhXG4iCisicGFudGFsbGEgbW9zdHJhIG9zIGNvbmZsaXRvcyBlIGRlcGVuZGVuY2lhcyByZWxldmFudGVzOyBlbXByZWd1ZSBcImlcIiBwYXJhXG4iCisicGFzYXIgZGlzbyDDoXMgZGVzY3JpY2nDs25zIGRvcyBwYXF1ZXRlcyBlIMOhIGluZm9ybWFjacOzbiBpbnRlcm5hIGRlIGNvbnRyb2wuXG4iCisiXG4iCisiQ2FsY3Vsb3VzZSB1biBjb254dW50byBkZSBwYXF1ZXRlcyBcInN1eGVyaWRvc1wiLCBlIGFzIG1hcmNhcyBpbmljaWFzIGRlc3RhXG4iCisic3ViLWxpc3RhIHhhIHNlIGVzdGFiZWxlY2Vyb24gZW4gY29uc2VjdWVuY2lhLCBhc8OtIHF1ZSBwb2RlIHNpbXBsZW1lbnRlICIKKyJwcmVtZXJcbiIKKyJJbnRybyBwYXJhIGFjZXB0YXIgYXMgc3V4ZXN0acOzbnMgc2UgcXVlcmUuIFBvZGUgYWJvcnRhciBhcyBtb2RpZmljYWNpw7NucyAiCisicXVlXG4iCisiY2F1c2Fyb24gbyBwcm9ibGVtYSBlIHZvbHRhciDDoSBsaXN0YSBwcmluY2lwYWwgcHJlbWVuZG8gbyBcIlhcIiBtYWnDunNjdWxvLlxuIgorIlxuIgorIlRhbcOpbiBzZSBwb2RlIG1vdmVyIHBvbGEgbGlzdGEgZSB0cm9jYXIgYXMgbWFyY2FzIHBhcmEgcXVlIHNlIGFzZW1lbGxlbiAiCisibcOhaXNcbiIKKyJhbyBxdWUgcXVlcmUsIGUgcG9kZSBcInJleGVpdGFyXCIgYXMgc3V4ZXN0acOzbnMgZW1wcmVnYW5kbyBhcyB0ZWNsYXMgXCJEXCIgIgorIm91IFwiUlwiXG4iCisibWFpw7pzY3VsYXMgKGNvbnN1bHRlIGEgcGFudGFsbGEgZGUgYXh1ZGEgZGUgdGVjbGFzKS4gUG9kZSBlbXByZWdhciBvIFwiUVwiICIKKyJtYWnDunNjdWxvXG4iCisicGFyYSBmb3J6YXIgYSBhY2VwdGFjacOzbiBkYSBzaXR1YWNpw7NuIHF1ZSBzZSBtb3N0cmEsIHNlIHF1ZXJlIGlnbm9yYXIgdW5oYVxuIgorInJlY29tZW5kYWNpw7NuIG91IHNlIHBlbnNhIHF1ZSBvIHByb2dyYW1hIGVzdMOhIGVxdWl2b2NhZG8uXG4iCisiXG4iCisiUHJlbWEgPEVzcGF6bz4gcGFyYSBzYcOtciBkYSBheHVkYSBlIGVudHJhciBuYSBzdWItbGlzdGE7IHByZW1hIFwiP1wiIHBhcmEgIgorImF4dWRhLlxuIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjEyNQorbXNnaWQgIkRpc3BsYXksIHBhcnQgMTogcGFja2FnZSBsaXN0aW5nIGFuZCBzdGF0dXMgY2hhcnMiCittc2dzdHIgIlBhbnRhbGxhLCBwYXJ0ZSAxOiBsaXN0YWRvIGRlIHBhcXVldGVzIGUgY2FyYWN0ZXJlcyBkZSBlc3RhZG8iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTI1Cittc2dpZCAiIgorIlRoZSB0b3AgaGFsZiBvZiB0aGUgc2NyZWVuIHNob3dzIGEgbGlzdCBvZiBwYWNrYWdlcy4gIEZvciBlYWNoIHBhY2thZ2UgeW91ICIKKyJzZWVcbiIKKyJmb3VyIGNvbHVtbnMgZm9yIGl0cyBjdXJyZW50IHN0YXR1cyBvbiB0aGUgc3lzdGVtIGFuZCBtYXJrLiAgSW4gdGVyc2UgbW9kZSAiCisiKHVzZVxuIgorImB2JyB0byB0b2dnbGUgdmVyYm9zZSBkaXNwbGF5KSB0aGVzZSBhcmUgc2luZ2xlIGNoYXJhY3RlcnMsIGZyb20gbGVmdCB0byAiCisicmlnaHQ6XG4iCisiXG4iCisiIEVycm9yIGZsYWc6IFNwYWNlIC0gbm8gZXJyb3IgKGJ1dCBwYWNrYWdlIG1heSBiZSBpbiBicm9rZW4gc3RhdGUgLSBzZWUgIgorImJlbG93KVxuIgorIiAgICAgICAgICAgICAgYFInICAtIHNlcmlvdXMgZXJyb3IgZHVyaW5nIGluc3RhbGxhdGlvbiwgbmVlZHMgIgorInJlaW5zdGFsbGF0aW9uO1xuIgorIiBJbnN0YWxsZWQgc3RhdGU6ICAgICBTcGFjZSAgICAtIG5vdCBpbnN0YWxsZWQ7XG4iCisiICAgICAgICAgICAgICAgICAgICAgICBgKicgICAgIC0gaW5zdGFsbGVkO1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgYC0nICAgICAtIG5vdCBpbnN0YWxsZWQgYnV0IGNvbmZpZyBmaWxlcyByZW1haW47XG4iCisiICAgcGFja2FnZXMgaW4gdGhlc2UgeyBgVScgICAgIC0gdW5wYWNrZWQgYnV0IG5vdCB5ZXQgY29uZmlndXJlZDtcbiIKKyIgICBzdGF0ZXMgYXJlIG5vdCAgICB7IGBDJyAgICAgLSBoYWxmLWNvbmZpZ3VyZWQgKGFuIGVycm9yIGhhcHBlbmVkKTtcbiIKKyIgICAocXVpdGUpIHByb3Blcmx5ICB7IGBJJyAgICAgLSBoYWxmLWluc3RhbGxlZCAoYW4gZXJyb3IgaGFwcGVuZWQpO1xuIgorIiAgIGluc3RhbGxlZCAgICAgICAgIHsgYFcnLGB0JyAtIHRyaWdnZXJzIGFyZSBhd2FpdGVkIHJlc3AuIHBlbmRpbmcuXG4iCisiIE9sZCBtYXJrOiB3aGF0IHdhcyByZXF1ZXN0ZWQgZm9yIHRoaXMgcGFja2FnZSBiZWZvcmUgcHJlc2VudGluZyB0aGlzIGxpc3Q7XG4iCisiIE1hcms6IHdoYXQgaXMgcmVxdWVzdGVkIGZvciB0aGlzIHBhY2thZ2U6XG4iCisiICBgKic6IG1hcmtlZCBmb3IgaW5zdGFsbGF0aW9uIG9yIHVwZ3JhZGU7XG4iCisiICBgLSc6IG1hcmtlZCBmb3IgcmVtb3ZhbCwgYnV0IGFueSBjb25maWd1cmF0aW9uIGZpbGVzIHdpbGwgcmVtYWluO1xuIgorIiAgYD0nOiBvbiBob2xkOiBwYWNrYWdlIHdpbGwgbm90IGJlIHByb2Nlc3NlZCBhdCBhbGw7XG4iCisiICBgXyc6IG1hcmtlZCBmb3IgcHVyZ2UgY29tcGxldGVseSAtIGV2ZW4gcmVtb3ZlIGNvbmZpZ3VyYXRpb247XG4iCisiICBgbic6IHBhY2thZ2UgaXMgbmV3IGFuZCBoYXMgeWV0IHRvIGJlIG1hcmtlZCBmb3IgaW5zdGFsbC9yZW1vdmUvJmMuXG4iCisiXG4iCisiQWxzbyBkaXNwbGF5ZWQgYXJlIGVhY2ggcGFja2FnZSdzIFByaW9yaXR5LCBTZWN0aW9uLCBuYW1lLCBpbnN0YWxsZWQgYW5kXG4iCisiYXZhaWxhYmxlIHZlcnNpb24gbnVtYmVycyAoc2hpZnQtViB0byBkaXNwbGF5L2hpZGUpIGFuZCBzdW1tYXJ5ICIKKyJkZXNjcmlwdGlvbi5cbiIKK21zZ3N0ciAiIgorIkEgbWV0YWRlIHN1cGVyaW9yIGRhIHBhbnRhbGxhIG1vc3RyYSB1bmhhIGxpc3RhIGRlIHBhcXVldGVzLiBFbiBjYWRhICIKKyJwYXF1ZXRlXG4iCisicG9kZSB2ZXIgY2F0cm8gY29sdW1uYXMgcGFyYSBvIHNldSBlc3RhZG8gYWN0dWFsIG5vIHNpc3RlbWEgZSBhIG1hcmNhLiBObyAiCisibW9kb1xuIgorImFicmV2aWFkbyAoZW1wcmVndWUgXCJ2XCIgcGFyYSB0cm9jYXIgZW50cmUgbW9kbyBhYnJldmlhZG8gZSBleHBhbmRpZG8pIGhhaVxuIgorImNhcmFjdGVyZXMgc2ltcGxlcy4gRGEgZXNxdWVyZGEgw6EgZGVyZWl0YTpcbiIKKyJcbiIKKyIgRXJybzogRXNwYXpvIC0gbmluZ8O6biAocGVybyBvIHBhcXVldGUgcG9kZSBlc3RhciByb3RvLCBtaXJlIGVtYmFpeG8pO1xuIgorIiAgICAgICAgIFwiUlwiICAtIGVycm8gZ3JhdmUgbmEgaW5zdGFsYWNpw7NuLCBoYWkgcXVlIHJlaW5zdGFsYXI7XG4iCisiIEVzdGFkbyBpbnN0YWxhZG86IEVzcGF6byAtIHNlbiBpbnN0YWxhcjtcbiIKKyIgICAgICAgICAgICAgICAgICAgICBcIipcIiAgLSBpbnN0YWxhZG87XG4iCisiICAgICAgICAgICAgICAgICAgICAgXCItXCIgIC0gc2VuIGluc3RhbGFyIHBlcm8gaGFpIGZpY2hlaXJvcyBkZSAiCisiY29uZmlndXJhY2nDs247XG4iCisiICAgICAgIG9zIHBhcXVldGVzIHsgXCJVXCIgICAgICAgIC0gZGVzZW1wYXF1ZXRhZG8gcGVybyBzZW4gY29uZmlndXJhcjtcbiIKKyIgICAgbmVzdGVzIGVzdGFkb3MgeyBcIkNcIiAgICAgICAgLSBtZWRpbyBjb25maWd1cmFkbyAoaG91Ym8gdW4gZXJybyk7XG4iCisiICAgICBub24gZXN0w6FuIGJlbiB7IFwiSVwiICAgICAgICAtIG1lZGlvIGluc3RhbGFkbyAoaG91Ym8gdW4gZXJybykuXG4iCisiICAgICAgaW5zdGFsYWRvcyAgIHsgXCJXXCIsIFwidFwiIC0gaGFpIGRlc2VuY2FkZWFudGVzIGEgYWdhcmRhciByZXNwb3N0YXMuXG4iCisiIE1hcmNhIGFudGlnYTogbyBxdWUgc2Ugc29saWNpdG91IG5lc3RlIHBhcXVldGUgYW50ZXMgZGUgbW9zdHJhciBhIGxpc3RhO1xuIgorIiBNYXJjYTogbyBxdWUgc2Ugc29saWNpdGEgcGFyYSBlc3RlIHBhcXVldGU6XG4iCisiICAgICAgICBcIipcIjogbWFyY2FkbyBwYXJhIGluc3RhbGFjacOzbiBvdSBhY3R1YWxpemFjacOzbjtcbiIKKyIgICAgICAgIFwiLVwiOiBtYXJjYWRvIHBhcmEgZWxpbWluYWNpw7NuLCBwZXJvIGNvbnNlcnZhbmRvIGEgY29uZmlndXJhY2nDs247XG4iCisiICAgICAgICBcIj1cIjogcmV0aWRvOiBvIHBhcXVldGUgbm9uIHNlIHByb2Nlc2EgZW4gYWJzb2x1dG87XG4iCisiICAgICAgICBcIl9cIjogbWFyY2FkbyBwYXJhIHB1cmdhZG8gLSB0YW3DqW4gc2UgZWxpbWluYSBhIGNvbmZpZ3VyYWNpw7NuO1xuIgorIiAgICAgICAgXCJuXCI6IG8gcGFxdWV0ZSDDqSBub3ZvIGUgYcOtbmRhIG5vbiBlc3TDoSBtYXJjYWRvIHBhcmEgaW5zdGFsLi9lbGltLi8iCisiZXRjLlxuIgorIlxuIgorIlRhbcOpbiBzZSBtb3N0cmFuLCBwYXJhIGNhZGEgcGFxdWV0ZSwgYSBQcmlvcmlkYWRlLCBTZWNjacOzbiwgbm9tZSwgdmVyc2nDs25zXG4iCisiaW5zdGFsYWRhIGUgZGlzcG/DscOtYmVsIChtYWnDunNjLVYgcGFyYSBtb3N0cmFyL2Fnb2NoYXIpIGUgZGVzY3JpY2nDs24gIgorInJlc3VtaWRhLlxuIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjE1MgorbXNnaWQgIkRpc3BsYXksIHBhcnQgMjogbGlzdCBoaWdobGlnaHQ7IGluZm9ybWF0aW9uIGRpc3BsYXkiCittc2dzdHIgIlBhbnRhbGxhLCBwYXJ0ZSAyOiByZXNhbHRhZG8gZGUgbGlzdGFzOyBwYW50YWxsYSBkZSBpbmZvcm1hY2nDs24iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTUyCittc2dpZCAiIgorIiogSGlnaGxpZ2h0OiBPbmUgbGluZSBpbiB0aGUgcGFja2FnZSBsaXN0IHdpbGwgYmUgaGlnaGxpZ2h0ZWQuICBJdCAiCisiaW5kaWNhdGVzXG4iCisiICB3aGljaCBwYWNrYWdlKHMpIHdpbGwgYmUgYWZmZWN0ZWQgYnkgcHJlc3NlcyBvZiBgKycsIGAtJyBhbmQgYF8nLlxuIgorIlxuIgorIiogVGhlIGRpdmlkaW5nIGxpbmUgaW4gdGhlIG1pZGRsZSBvZiB0aGUgc2NyZWVuIHNob3dzIGEgYnJpZWYgZXhwbGFuYXRpb24gIgorIm9mXG4iCisiICB0aGUgc3RhdHVzIG9mIHRoZSBjdXJyZW50bHktaGlnaGxpZ2h0ZWQgcGFja2FnZSwgb3IgYSBkZXNjcmlwdGlvbiBvZiAiCisid2hpY2hcbiIKKyIgIGdyb3VwIGlzIGhpZ2hsaWdodGVkIGlmIGEgZ3JvdXAgbGluZSBpcy4gIElmIHlvdSBkb24ndCB1bmRlcnN0YW5kIHRoZVxuIgorIiAgbWVhbmluZyBvZiBzb21lIG9mIHRoZSBzdGF0dXMgY2hhcmFjdGVycyBkaXNwbGF5ZWQsIGdvIHRvIHRoZSByZWxldmFudFxuIgorIiAgcGFja2FnZSBhbmQgbG9vayBhdCB0aGlzIGRpdmlkZXIgbGluZSwgb3IgdXNlIHRoZSBgdicga2V5IGZvciBhIHZlcmJvc2VcbiIKKyIgIGRpc3BsYXkgKHByZXNzIGB2JyBhZ2FpbiB0byBnbyBiYWNrIHRvIHRoZSB0ZXJzZSBkaXNwbGF5KS5cbiIKKyJcbiIKKyIqIFRoZSBib3R0b20gb2YgdGhlIHNjcmVlbiBzaG93cyBtb3JlIGluZm9ybWF0aW9uIGFib3V0IHRoZVxuIgorIiAgY3VycmVudGx5LWhpZ2hsaWdodGVkIHBhY2thZ2UgKGlmIHRoZXJlIGlzIG9ubHkgb25lKS5cbiIKKyJcbiIKKyIgIEl0IGNhbiBzaG93IGFuIGV4dGVuZGVkIGRlc2NyaXB0aW9uIG9mIHRoZSBwYWNrYWdlLCB0aGUgaW50ZXJuYWwgcGFja2FnZVxuIgorIiAgY29udHJvbCBkZXRhaWxzIChlaXRoZXIgZm9yIHRoZSBpbnN0YWxsZWQgb3IgYXZhaWxhYmxlIHZlcnNpb24gb2YgdGhlXG4iCisiICBwYWNrYWdlKSwgb3IgaW5mb3JtYXRpb24gYWJvdXQgY29uZmxpY3RzIGFuZCBkZXBlbmRlbmNpZXMgaW52b2x2aW5nIHRoZVxuIgorIiAgY3VycmVudCBwYWNrYWdlIChpbiBjb25mbGljdC9kZXBlbmRlbmN5IHJlc29sdXRpb24gc3VibGlzdHMpLlxuIgorIlxuIgorIiAgVXNlIHRoZSBgaScga2V5IHRvIGN5Y2xlIHRocm91Z2ggdGhlIGRpc3BsYXlzLCBhbmQgYEknIHRvIGhpZGUgdGhlXG4iCisiICBpbmZvcm1hdGlvbiBkaXNwbGF5IG9yIGV4cGFuZCBpdCB0byB1c2UgYWxtb3N0IGFsbCBvZiB0aGUgc2NyZWVuLlxuIgorbXNnc3RyICIiCisiKiBSZXNhbHRhZG86IEhhc2UgcmVzYWx0YXIgdW5oYSBsacOxYSBkYSBsaXN0YSBkZSBwYXF1ZXRlcy4gSW5kaWNhIHF1ZSAiCisicGFxdWV0ZXNcbiIKKyIgIGhhbiBzZXIgYWZlY3RhZG9zIGFvIHByZW1lciBcIitcIiwgXCItXCIgZSBcIl9cIi5cbiIKKyJcbiIKKyIqIEEgbGnDsWEgZGl2aXNvcmEgZG8gbWVkaW8gZGEgcGFudGFsbGEgbW9zdHJhIHVuaGEgYnJldmUgZGVzY3JpY2nDs24gZG8gIgorImVzdGFkb1xuIgorIiAgZG8gcGFxdWV0ZSByZWFsemFkbywgb3UgdW5oYSBkZXNjcmljacOzbiBkbyBncnVwbyByZWFsemFkbyBzZSBlc3TDoVxuIgorIiAgcmVhbHphZGEgdW5oYSBsacOxYSBkZSBncnVwby4gU2Ugbm9uIGVudGVuZGUgbyBzaWduaWZpY2FkbyBkZSBhbGfDum4gZG9zXG4iCisiICBjYXJhY3RlcmVzIGRlIGVzdGFkbyBxdWUgc2UgbW9zdHJhbiwgdmFpYSBhbyBwYXF1ZXRlIHJlbGV2YW50ZSBlIG1pcmUgIgorImVzdGFcbiIKKyIgIGxpw7FhIGRpdmlzb3JhLCBvdSBlbXByZWd1ZSBhIHRlY2xhIFwidlwiIHBhcmEgdGVyIHVuaGEgcGFudGFsbGEgY29tcGxldGFcbiIKKyIgICh2b2x2YSBwcmVtZXIgXCJ2XCIgcGFyYSB2b2x0YXIgYW8gbW9kbyBhYnJldmlhZG8pLlxuIgorIlxuIgorIiogQSBwYXJ0ZSBkZSBlbWJhaXhvIGRhIHBhbnRhbGxhIG1vc3RyYSBtw6FpcyBpbmZvcm1hY2nDs24gYWNlcmNhIGRvIHBhcXVldGVcbiIKKyIgIHJlc2FsdGFkbyAoc2Ugc8OzIGhhaSB1bikuXG4iCisiXG4iCisiICBQb2RlIG1vc3RyYXIgdW5oYSBkZXNjcmljacOzbiBleHRlbmRpZGEgZG8gcGFxdWV0ZSwgb3MgZGV0YWxsZXMgaW50ZXJub3MgIgorImRlXG4iCisiICBjb250cm9sIGRvIHBhcXVldGUgKGRhIHZlcnNpw7NuIGluc3RhbGFkYSBkbyBwYXF1ZXRlIG91IGRhIGRpc3Bvw7HDrWJlbCkgb3VcbiIKKyIgIGluZm9ybWFjacOzbiBhY2VyY2EgZGUgY29uZmxpdG9zIGUgZGVwZW5kZW5jaWFzIHF1ZSBpbXBsaWNhbiBvIHBhcXVldGUgIgorImFjdHVhbFxuIgorIiAgKGVuIHN1Yi1saXN0YXMgZGUgcmVzb2x1Y2nDs24gZGUgY29uZmxpdG9zIGUgZGVwZW5kZW5jaWFzKS5cbiIKKyJcbiIKKyIgIEVtcHJlZ3VlIGEgdGVjbGEgXCJpXCIgcGFyYSBwYXNhciBwb2xhcyBwYW50YWxsYSwgZSBcIklcIiBwYXJhIGFnb2NoYXIgYSAiCisicGFudGFsbGFcbiIKKyIgIGRlIGluZm9ybWFjacOzbiBvdSBwYXJhIGEgZXhwYW5kaXIgcGFyYSBxdWUgZW1wcmVndWUgY2FzZSB0b2RhIGEgcGFudGFsbGEuXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTc2Cittc2dpZCAiSW50cm9kdWN0aW9uIHRvIG1ldGhvZCBzZWxlY3Rpb24gZGlzcGxheSIKK21zZ3N0ciAiSW50cm9kdWNpw7NuIMOhIHBhbnRhbGxhIGRlIHNlbGVjY2nDs24gZGUgbcOpdG9kb3MiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTc2Cittc2dpZCAiIgorImRzZWxlY3QgYW5kIGRwa2cgY2FuIGRvIGF1dG9tYXRpYyBpbnN0YWxsYXRpb24sIGxvYWRpbmcgdGhlIHBhY2thZ2UgZmlsZXMgdG8gIgorImJlXG4iCisiaW5zdGFsbGVkIGZyb20gb25lIG9mIGEgbnVtYmVyIG9mIGRpZmZlcmVudCBwb3NzaWJsZSBwbGFjZXMuXG4iCisiXG4iCisiVGhpcyBsaXN0IGFsbG93cyB5b3UgdG8gc2VsZWN0IG9uZSBvZiB0aGVzZSBpbnN0YWxsYXRpb24gbWV0aG9kcy5cbiIKKyJcbiIKKyJNb3ZlIHRoZSBoaWdobGlnaHQgdG8gdGhlIG1ldGhvZCB5b3Ugd2lzaCB0byB1c2UsIGFuZCBoaXQgRW50ZXIuICBZb3Ugd2lsbCAiCisidGhlblxuIgorImJlIHByb21wdGVkIGZvciB0aGUgaW5mb3JtYXRpb24gcmVxdWlyZWQgdG8gZG8gdGhlIGluc3RhbGxhdGlvbi5cbiIKKyJcbiIKKyJBcyB5b3UgbW92ZSB0aGUgaGlnaGxpZ2h0IGEgZGVzY3JpcHRpb24gb2YgZWFjaCBtZXRob2QsIHdoZXJlIGF2YWlsYWJsZSwgaXNcbiIKKyJkaXNwbGF5ZWQgaW4gdGhlIGJvdHRvbSBoYWxmIG9mIHRoZSBzY3JlZW4uXG4iCisiXG4iCisiSWYgeW91IHdpc2ggdG8gcXVpdCB3aXRob3V0IGNoYW5naW5nIGFueXRoaW5nIHVzZSB0aGUgYHgnIGtleSB3aGlsZSBpbiB0aGUgIgorImxpc3RcbiIKKyJvZiBpbnN0YWxsYXRpb24gbWV0aG9kcy5cbiIKKyJcbiIKKyJBIGZ1bGwgbGlzdCBvZiBrZXlzdHJva2VzIGlzIGF2YWlsYWJsZSBieSBwcmVzc2luZyBgaycgbm93LCBvciBmcm9tIHRoZSAiCisiaGVscFxuIgorIm1lbnUgcmVhY2hhYmxlIGJ5IHByZXNzaW5nIGA/Jy5cbiIKK21zZ3N0ciAiIgorImRzZWxlY3QgZSBkcGtnIHBvZGVuIGZhY2VyIGluc3RhbGFjacOzbiBhdXRvbcOhdGljYSwgY2FyZ2FuZG8gb3MgZmljaGVpcm9zICIKKyJjb3NcbiIKKyJwYXF1ZXRlcyBhIGluc3RhbGFyIGRlIHZhcmlvcyBzaXRpb3MgZGlmZXJlbnRlcy5cbiIKKyJcbiIKKyJFc3RhIGxpc3RhIHBlcm3DrXRlbGxlIGVzY29sbGVyIHVuIGRlc2VzIG3DqXRvZG9zIGRlIGluc3RhbGFjacOzbi5cbiIKKyJcbiIKKyJNb3ZhIG8gcmVhbHphZG8gYW8gbcOpdG9kbyBxdWUgcXVlcmUgZW1wcmVnYXIgZSBwcmVtYSBJbnRyby4gSMOhc2VsbGUgcGVkaXJcbiIKKyJhIGluZm9ybWFjacOzbiBxdWUgc2UgcHJlY2lzZSBwYXJhIGZhY2VyIGEgaW5zdGFsYWNpw7NuLlxuIgorIlxuIgorIkFvIG1vdmVyIG8gcmVhbHphZG8gcGFyZWNlIHVuaGEgZGVzY3JpY2nDs24gZGUgY2FkYSBtw6l0b2RvLCBjYW5kbyBhIGhhaSxcbiIKKyJuYSBtZXRhZGUgaW5mZXJpb3IgZGEgcGFudGFsbGEuXG4iCisiXG4iCisiU2UgcXVlcmUgc2HDrXIgc2VuIHRyb2NhciBuYWRhIGVtcHJlZ3VlIGEgdGVjbGEgXCJ4XCIgbmEgbGlzdGEgZGUgbcOpdG9kb3NcbiIKKyJkZSBpbnN0YWxhY2nDs24uXG4iCisiXG4iCisiSGFpIHVuaGEgbGlzdGEgY29tcGxldGEgZGUgdGVjbGFzIGRpc3Bvw7HDrWJlbCBwYXJhIGEgdmVyIHByZW1lbmRvIFwia1wiICIKKyJhZ29yYSxcbiIKKyJvdSBubyBtZW7DuiBkZSBheHVkYSBxdWUgc2UgcG9kZSB2ZXIgcHJlbWVuZG8gXCI/XCIuXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTk2Cittc2dpZCAiS2V5c3Ryb2tlcyBmb3IgbWV0aG9kIHNlbGVjdGlvbiIKK21zZ3N0ciAiVGVjbGFzIHBhcmEgYSBlc2NvbGxhIGRlIG3DqXRvZG9zIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjE5NgorbXNnaWQgIiIKKyJNb3Rpb24ga2V5czogTmV4dC9QcmV2aW91cywgVG9wL0VuZCwgVXAvRG93biwgQmFja3dhcmRzL0ZvcndhcmRzOlxuIgorIiAgaiwgRG93bi1hcnJvdyAgICAgICAgIGssIFVwLWFycm93ICAgICAgICAgICAgIG1vdmUgaGlnaGxpZ2h0XG4iCisiICBOLCBQYWdlLWRvd24sIFNwYWNlICAgUCwgUGFnZS11cCwgQmFja3NwYWNlICAgc2Nyb2xsIGxpc3QgYnkgMSBwYWdlXG4iCisiICBebiAgICAgICAgICAgICAgICAgICAgXnAgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGxpc3QgYnkgMSBsaW5lXG4iCisiICB0LCBIb21lICAgICAgICAgICAgICAgZSwgRW5kICAgICAgICAgICAgICAgICAganVtcCB0byB0b3AvZW5kIG9mIGxpc3RcbiIKKyIgIHUgICAgICAgICAgICAgICAgICAgICBkICAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyBieSAxIHBhZ2VcbiIKKyIgIF51ICAgICAgICAgICAgICAgICAgICBeZCAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyBieSAxIGxpbmVcbiIKKyIgIEIsIExlZnQtYXJyb3cgICAgICAgICBGLCBSaWdodC1hcnJvdyAgICAgICAgICBwYW4gZGlzcGxheSBieSAxLzMgc2NyZWVuXG4iCisiICBeYiAgICAgICAgICAgICAgICAgICAgXmYgICAgICAgICAgICAgICAgICAgICAgcGFuIGRpc3BsYXkgYnkgMSBjaGFyYWN0ZXJcbiIKKyIoVGhlc2UgYXJlIHRoZSBzYW1lIG1vdGlvbiBrZXlzIGFzIGluIHRoZSBwYWNrYWdlIGxpc3QgZGlzcGxheS4pXG4iCisiXG4iCisiUXVpdDpcbiIKKyIgUmV0dXJuLCBFbnRlciAgICBzZWxlY3QgdGhpcyBtZXRob2QgYW5kIGdvIHRvIGl0cyBjb25maWd1cmF0aW9uIGRpYWxvZ3VlXG4iCisiIHgsIFggICAgICAgICAgICAgZXhpdCB3aXRob3V0IGNoYW5naW5nIG9yIHNldHRpbmcgdXAgdGhlIGluc3RhbGxhdGlvbiAiCisibWV0aG9kXG4iCisiXG4iCisiTWlzY2VsbGFuZW91czpcbiIKKyIgID8sIEhlbHAsIEYxICAgICAgcmVxdWVzdCBoZWxwXG4iCisiIF5sICAgICAgICAgICAgICAgIHJlZHJhdyBkaXNwbGF5XG4iCisiICAvICAgICAgICAgICAgICAgIHNlYXJjaCAoanVzdCByZXR1cm4gdG8gY2FuY2VsKVxuIgorIiAgXFwgICAgICAgICAgICAgICAgcmVwZWF0IGxhc3Qgc2VhcmNoXG4iCittc2dzdHIgIiIKKyJUZWNsYXMgZGUgbW92ZW1lbnRvOiBTZWd1aW50ZS9BbnRlcmlvciwgSW5pL0ZpbiwgQXJyaWJhL0FiYWl4bywgQXRyw6FzLyIKKyJBZGlhbnRlOlxuIgorIiAgRnJlY2hhLWFiYWl4bywgaiAgICAgIEZyZWNoYS1hcnJpYmEsIGsgICAgICAgIG1vdmVyIG8gcmVhbHphZG9cbiIKKyIgIE4sIEF2UMOheCwgRXNwYXpvICAgICAgUCwgUmVQw6F4LCBSZXRyb2Nlc28gICAgIGRlc3ByYXphciBhIGxpc3RhIDEgcMOheGluYVxuIgorIiAgXm4gICAgICAgICAgICAgICAgICAgIF5wICAgICAgICAgICAgICAgICAgICAgIGRlc3ByYXphciBhIGxpc3RhIDEgbGnDsWFcbiIKKyIgIHQsIEluaWNpbyAgICAgICAgICAgICBlLCBGaW4gICAgICAgICAgICAgICAgICBzYWx0YXIgYW8gaW5pY2lvL2ZpbiBkYSAiCisibGlzdGFcbiIKKyIgIHUgICAgICAgICAgICAgICAgICAgICBkICAgICAgICAgICAgICAgICAgICAgICBkZXNwcmF6YXIgYSBpbmZvcm1hY2nDs24gMSAiCisicMOheC5cbiIKKyIgIF51ICAgICAgICAgICAgICAgICAgICBeZCAgICAgICAgICAgICAgICAgICAgICBkZXNwcmF6YXIgYSBpbmZvcm1hY2nDs24gMSAiCisibGnDsWFcbiIKKyIgIEIsIEZyZWNoYS1lc3F1ZXJkYSAgICBGLCBGcmVjaGEtZGVyZWl0YSAgICAgICBtb3ZlciAxLzMgZGUgcGFudGFsbGFcbiIKKyIgIF5iICAgICAgICAgICAgICAgICAgICBeZiAgICAgICAgICAgICAgICAgICAgICBtb3ZlciBhIHBhbnRhbGxhIDEgY2Fyw6FjdGVyXG4iCisiKFNvbiBhcyBtZXNtYXMgdGVjbGFzIGRlIG1vdmVtZW50byBxdWUgbmEgcGFudGFsbGEgZGUgbGlzdGEgZGUgcGFxdWV0ZXMpLlxuIgorIlxuIgorIlNhw61yOlxuIgorIiBJbnRybyAgIGVzY29sbGVyIGVzdGUgbcOpdG9kbyBlIGlyIGFvIHNldSBkacOhbG9nbyBkZSBjb25maWd1cmFjacOzblxuIgorIiB4LCBYICAgIHNhw61yIHNlbiB0cm9jYXIgb3UgY29uZmlndXJhciBvIG3DqXRvZG8gZGUgaW5zdGFsYWNpw7NuXG4iCisiXG4iCisiVmFyaW9zOlxuIgorIiAgPywgQXh1ZGEsIEYxICAgIHBlZGlyIGF4dWRhXG4iCisiIF5sICAgICAgICAgICAgICAgdm9sdmVyIGRlYnV4YXIgYSBwYW50YWxsYVxuIgorIiAgLyAgICAgICAgICAgICAgIHByb2N1cmFyIChwcmVtYSBzw7MgSW50cm8gcGFyYSBjYW5jZWxhcilcbiIKKyIgIFxcICAgICAgICAgICAgICAgcmVwZXRpciBhIMO6bHRpbWEgcHJvY3VyYVxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6NjAKK21zZ2lkICJUeXBlIGRzZWxlY3QgLS1oZWxwIGZvciBoZWxwLiIKK21zZ3N0ciAiRXNjcmliYSBkc2VsZWN0IC0taGVscCBwYXJhIG9idGVyIGF4dWRhLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0MworbXNnaWQgImEiCittc2dzdHIgImEiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDMKK21zZ2lkICJbQV1jY2VzcyIKK21zZ3N0ciAiW0FdY2Nlc28iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDMKK21zZ2lkICJDaG9vc2UgdGhlIGFjY2VzcyBtZXRob2QgdG8gdXNlLiIKK21zZ3N0ciAiRXNjb2xsZSBvIG3DqXRvZG8gZGUgYWNjZXNvIGEgZW1wcmVnYXIuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ0Cittc2dpZCAidSIKK21zZ3N0ciAidSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NAorbXNnaWQgIltVXXBkYXRlIgorbXNnc3RyICJBY3RbVV1hbGl6YXIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDQKK21zZ2lkICJVcGRhdGUgbGlzdCBvZiBhdmFpbGFibGUgcGFja2FnZXMsIGlmIHBvc3NpYmxlLiIKK21zZ3N0ciAiQWN0dWFsaXphIGEgbGlzdGEgZGUgcGFxdWV0ZXMgZGlzcG/DscOtYmVpcywgc2Ugw6kgcG9zw61iZWwuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ1Cittc2dpZCAicyIKK21zZ3N0ciAicyIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NQorbXNnaWQgIltTXWVsZWN0IgorbXNnc3RyICJFW1NdY29sbGVyIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ1Cittc2dpZCAiUmVxdWVzdCB3aGljaCBwYWNrYWdlcyB5b3Ugd2FudCBvbiB5b3VyIHN5c3RlbS4iCittc2dzdHIgIkVzY29sbGUgb3MgcGFxdWV0ZXMgcXVlIHNlIHF1ZXJlbiBubyBzaXN0ZW1hLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NgorbXNnaWQgImkiCittc2dzdHIgImkiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDYKK21zZ2lkICJbSV1uc3RhbGwiCittc2dzdHIgIltJXW5zdGFsYXIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDYKK21zZ2lkICJJbnN0YWxsIGFuZCB1cGdyYWRlIHdhbnRlZCBwYWNrYWdlcy4iCittc2dzdHIgIkluc3RhbGEgZSBhY3R1YWxpemEgb3MgcGFxdWV0ZXMgc29saWNpdGFkb3MuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ3Cittc2dpZCAiYyIKK21zZ3N0ciAiYyIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NworbXNnaWQgIltDXW9uZmlnIgorbXNnc3RyICJbQ11vbmZpZ3VyYXIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDcKK21zZ2lkICJDb25maWd1cmUgYW55IHBhY2thZ2VzIHRoYXQgYXJlIHVuY29uZmlndXJlZC4iCittc2dzdHIgIkNvbmZpZ3VyYSBvcyBwYXF1ZXRlcyBxdWUgbm9uIGVzdGVhbiBjb25maWd1cmFkb3MuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ4Cittc2dpZCAiciIKK21zZ3N0ciAiZSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OAorbXNnaWQgIltSXWVtb3ZlIgorbXNnc3RyICJbRV1saW1pbmFyIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ4Cittc2dpZCAiUmVtb3ZlIHVud2FudGVkIHNvZnR3YXJlLiIKK21zZ3N0ciAiRWxpbWluYSBvIHNvZnR3YXJlIG5vbiBkZXNleGFkby4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDkKK21zZ2lkICJxIgorbXNnc3RyICJzIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ5Cittc2dpZCAiW1FddWl0IgorbXNnc3RyICJbU11hw61yIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ5Cittc2dpZCAiUXVpdCBkc2VsZWN0LiIKK21zZ3N0ciAiU2FlIGRlIGRzZWxlY3QuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTUwCittc2dpZCAibWVudSIKK21zZ3N0ciAibWVuw7oiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuIGAlcycgcGFja2FnZSBoYW5kbGluZyBmcm9udGVuZCB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICJJbnRlcmZhY2UgZGUgeGVzdGnDs24gZGUgcGFxdWV0ZXMgXCIlc1wiIGRlIERlYmlhbiB2ZXJzacOzbiAlcy5cbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE1OAorbXNnaWQgIiIKKyJDb3B5cmlnaHQgKEMpIDE5OTQtMTk5NiBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLlxuIgorbXNnc3RyICIiCisiQ29weXJpZ2h0IChDKSAxOTk0LTE5OTYgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE2MgorIywgZnV6enkKK21zZ2lkICIiCisiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvclxuIgorImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LlxuIgorbXNnc3RyICIiCisiRXN0ZSDDqSBzb2Z0d2FyZSBsaWJyZS4gQ29uc3VsdGUgYSBMaWNlbmNpYSBQw7pibGljYSBYZXJhbCBkZSBHTlUgKEdOVSBHUEwpICIKKyJ2ZXJzacOzblxuIgorIjIgb3UgdW5oYSBwb3N0ZXJpb3IgcGFyYSBjb8OxZWNlciBhcyBjb25kaWNpw7NucyBkZSBjb3BpYS4gTk9OIGhhaSBnYXJhbnTDrWEuXG4iCisiQ29uc3VsdGUgJXMgLS1saWNlbnNlIHBhcmEgb3MgZGV0YWxsZXMgZGUgY29weXJpZ2h0IGUgbGljZW56YS5cbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE3MiBkc2VsZWN0L21haW4uY2M6MjIwCittc2dpZCAiPHN0YW5kYXJkIG91dHB1dD4iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE4MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIFs8YWN0aW9uPiAuLi5dXG4iCisiXG4iCittc2dzdHIgIiIKKyJFbXByZWdvOiAlcyBbPG9wY2nDs24+IC4uLl0gWzxhY2Npw7NuPiAuLi5dXG4iCisiXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyIgIC0tZXhwZXJ0ICAgICAgICAgICAgICAgICAgIFR1cm4gb24gZXhwZXJ0IG1vZGUuXG4iCisiICAtLWRlYnVnIDxmaWxlPiB8IC1EPGZpbGU+ICBUdXJuIG9uIGRlYnVnZ2luZywgc2VuZGluZyBvdXRwdXQgdG8gPGZpbGU+LlxuIgorIiAgLS1jb2xvdXIgfCAtLWNvbG9yIHNjcmVlbnBhcnQ6W2ZvcmVncm91bmRdLFtiYWNrZ3JvdW5kXVs6YXR0clsrYXR0cisuLl1dXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDb25maWd1cmUgc2NyZWVuIGNvbG91cnMuXG4iCisiXG4iCittc2dzdHIgIiIKKyJPcGNpw7NuczpcbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yaW8+ICAgIEVtcHJlZ2EgbyA8ZGlyZWN0b3Jpbz4gbm8gY2FudG8gZGUgJXMuXG4iCisiICAtLWV4cGVydCAgICAgICAgICAgICAgICAgICBBY3RpdmEgbyBtb2RvIGV4cGVydG8uXG4iCisiICAtLWRlYnVnIDxmaWNoPiB8IC1EPGZpY2g+ICBBY3RpdmEgYSBkZXB1cmFjacOzbiwgZ2FkYSBhIHNhw61kYSBubyAiCisiPGZpY2g+ZWlyby5cbiIKKyIgIC0tY29sb3VyIHwgLS1jb2xvciBwYXJ0ZTpbdGV4dG9dLFtmb25kb11bOmF0cmliWythdHJpYisuLi5dXVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ29uZmlndXJhIGFzIGNvcmVzIGRhIHBhbnRhbGxhLlxuIgorIlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTk2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgICBTaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICAgU2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgICAgTW9zdHJhIGVzdGEgbWVuc2F4ZSBkZSBheHVkYS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgIE1vc3RyYSBhIHZlcnNpw7NuLlxuIgorIiAgLS1saWNlbnNlICAgICAgICAgICAgICAgICAgTW9zdHJhIGEgbGljZW56YS5cbiIKKyJcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjIwMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQWN0aW9uczpcbiIKKyIgIGFjY2VzcyB1cGRhdGUgc2VsZWN0IGluc3RhbGwgY29uZmlnIHJlbW92ZSBxdWl0XG4iCisiXG4iCittc2dzdHIgIiIKKyJBY2Npw7NuczpcbiIKKyIgIGFjY2VzcyB1cGRhdGUgc2VsZWN0IGluc3RhbGwgY29uZmlnIHJlbW92ZSBxdWl0XG4iCisiXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2NyZWVucGFydHM6XG4iCittc2dzdHIgIlBhcnRlcyBkYSBwYW50YWxsYTpcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjIxMAorIywgYy1mb3JtYXQKK21zZ2lkICJDb2xvdXJzOlxuIgorbXNnc3RyICJDb3JlczpcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjIxNQorIywgYy1mb3JtYXQKK21zZ2lkICJBdHRyaWJ1dGVzOlxuIgorbXNnc3RyICJBdHJpYnV0b3M6XG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGRuJ3Qgb3BlbiBkZWJ1ZyBmaWxlIGAlLjI1NXMnXG4iCittc2dzdHIgIm5vbiBmb2kgcG9zw61iZWwgYWJyaXIgbyBmaWNoZWlybyBkZSBkZXB1cmFjacOzbiBcIiUuMjU1c1wiXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyNTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW52YWxpZCAlcyBgJXMnXG4iCittc2dzdHIgIiVzIFwiJXNcIiBub24gdsOhbGlkb1xuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjcwCittc2dpZCAic2NyZWVuIHBhcnQiCittc2dzdHIgInBhcnRlIGRhIHBhbnRhbGxhIgorCisjOiBkc2VsZWN0L21haW4uY2M6Mjc2Cittc2dpZCAiTnVsbCBjb2xvdXIgc3BlY2lmaWNhdGlvblxuIgorbXNnc3RyICJFc3BlY2lmaWNhY2nDs24gZGUgY29yZXMgbnVsYVxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6Mjg0IGRzZWxlY3QvbWFpbi5jYzoyODkKK21zZ2lkICJjb2xvdXIiCittc2dzdHIgImNvciIKKworIzogZHNlbGVjdC9tYWluLmNjOjI5NworbXNnaWQgImNvbG91ciBhdHRyaWJ1dGUiCittc2dzdHIgImF0cmlidXRvIGRlIGNvcmVzIgorCisjOiBkc2VsZWN0L21haW4uY2M6MzI5Cittc2dpZCAiVGVybWluYWwgZG9lcyBub3QgYXBwZWFyIHRvIHN1cHBvcnQgY3Vyc29yIGFkZHJlc3NpbmcuXG4iCittc2dzdHIgIlNlbWVsbGEgcXVlIG8gdGVybWluYWwgbm9uIHNvcG9ydGEgbG9jYWxpemFjacOzbiBkbyBjdXJzb3IuXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzozMzEKK21zZ2lkICJUZXJtaW5hbCBkb2VzIG5vdCBhcHBlYXIgdG8gc3VwcG9ydCBoaWdobGlnaHRpbmcuXG4iCittc2dzdHIgIlNlbWVsbGEgcXVlIG8gdGVybWluYWwgbm9uIHNvcG9ydGEgcmVhbHphZG8uXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzozMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlNldCB5b3VyIFRFUk0gdmFyaWFibGUgY29ycmVjdGx5LCB1c2UgYSBiZXR0ZXIgdGVybWluYWwsXG4iCisib3IgbWFrZSBkbyB3aXRoIHRoZSBwZXItcGFja2FnZSBtYW5hZ2VtZW50IHRvb2wgJXMuXG4iCittc2dzdHIgIiIKKyJFc3RhYmVsZXphIGNvcnJlY3RhbWVudGUgYSB2YXJpw6FiZWwgVEVSTSwgZW1wcmVndWUgdW4gdGVybWluYWwgbWVsbG9yXG4iCisib3UgZW1wcmVndWUgYSBmZXJyYW1lbnRhIGRlIHhlc3Rpw7NuIHBhcXVldGUgYSBwYXF1ZXRlICVzLlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MzM2Cittc2dpZCAidGVybWluYWwgbGFja3MgbmVjZXNzYXJ5IGZlYXR1cmVzLCBnaXZpbmcgdXAiCittc2dzdHIgIm8gdGVybWluYWwgbm9uIHRlbiBjYXJhY3RlcsOtc3RpY2FzIG5lY2VzYXJpYXM7IHPDoWVzZSIKKworIzogZHNlbGVjdC9tYWluLmNjOjQxNworbXNnaWQgIiIKKyJcbiIKKyJcbiIKKyJNb3ZlIGFyb3VuZCB3aXRoIF5QIGFuZCBeTiwgY3Vyc29yIGtleXMsIGluaXRpYWwgbGV0dGVycywgb3IgZGlnaXRzO1xuIgorIlByZXNzIDxlbnRlcj4gdG8gY29uZmlybSBzZWxlY3Rpb24uICAgXkwgcmVkcmF3cyBzY3JlZW4uXG4iCisiXG4iCittc2dzdHIgIiIKKyJcbiIKKyJcbiIKKyJNw7N2YXNlIGNvbiBeUCBlIF5OLCBhcyBmcmVjaGFzIGRvIGN1cnNvciwgbGV0cmFzIGluaWNpYWlzIG91IG7Dum1lcm9zO1xuIgorIlByZW1hIDxpbnRybz4gcGFyYSBjb25maXJtYXIgYSBlc2NvbGxhLiBeTCB2b2x2ZSBkZWJ1eGFyIGEgcGFudGFsbGEuXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzo0MjgKK21zZ2lkICIiCisiXG4iCisiXG4iCisiUmVhZC1vbmx5IGFjY2Vzczogb25seSBwcmV2aWV3IG9mIHNlbGVjdGlvbnMgaXMgYXZhaWxhYmxlISIKK21zZ3N0ciAiIgorIlxuIgorIlxuIgorIkFjY2VzbyBkZSBzw7MgbGVjdHVyYTogc8OzIGVzdMOhIGRpc3Bvw7HDrWJlbCBhIGFudGV2aXNpw7NuIGRhcyBlc2NvbGxhcy4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzo0NDgKK21zZ2lkICJmYWlsZWQgdG8gZ2V0Y2ggaW4gbWFpbiBtZW51IgorbXNnc3RyICJub24gZm9pIHBvc8OtYmVsIGNoYW1hciBhIGdldGNoIG5vIG1lbsO6IHByaW5jaXBhbCIKKworIzogZHNlbGVjdC9tYWluLmNjOjUzMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGFjdGlvbiBzdHJpbmcgYCUuNTBzJyIKK21zZ3N0ciAiY2FkZWEgZGUgYWNjacOzbiBcIiUuNTBzXCIgZGVzY2/DsWVjaWRhIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjc3Cittc2dpZCAiZHNlbGVjdCAtIGxpc3Qgb2YgYWNjZXNzIG1ldGhvZHMiCittc2dzdHIgImRzZWxlY3QgLSBsaXN0YSBkZSBtw6l0b2RvcyBkZSBhY2Nlc28iCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiQWNjZXNzIG1ldGhvZCBgJXMnLiIKK21zZ3N0ciAiTcOpdG9kbyBkZSBhY2Nlc28gXCIlc1wiLiIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxMjAKK21zZ2lkICJBYmJyZXYuIgorbXNnc3RyICJBYnJldi4iCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTIxIGRzZWxlY3QvcGtnaW5mby5jYzoxMDUgZHNlbGVjdC9wa2d0b3AuY2M6MjkxCittc2dpZCAiRGVzY3JpcHRpb24iCittc2dzdHIgIkRlc2NyaWNpw7NuIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjE2NCBkc2VsZWN0L3BrZ2xpc3QuY2M6NTcyCittc2dpZCAiZG91cGRhdGUgZmFpbGVkIgorbXNnc3RyICJhIGNoYW1hZGEgYSBkb3VwZGF0ZSBmYWxsb3UiCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTY2IGRzZWxlY3QvcGtnbGlzdC5jYzo1NzUKK21zZ2lkICJmYWlsZWQgdG8gdW5ibG9jayBTSUdXSU5DSCIKK21zZ3N0ciAibm9uIGZvaSBwb3PDrWJlbCBkZXNibG9xdWVhciBTSUdXSU5DSCIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxNzAgZHNlbGVjdC9wa2dsaXN0LmNjOjU4MAorbXNnaWQgImZhaWxlZCB0byByZS1ibG9jayBTSUdXSU5DSCIKK21zZ3N0ciAibm9uIGZvaSBwb3PDrWJlbCB2b2x2ZXIgYmxvcXVlYXIgU0lHV0lOQ0giCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTcxIGRzZWxlY3QvcGtnbGlzdC5jYzo1ODIKK21zZ2lkICJnZXRjaCBmYWlsZWQiCittc2dzdHIgImEgY2hhbWFkYSBhIGdldGNoIGZhbGxvdSIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxODgKK21zZ2lkICJFeHBsYW5hdGlvbiIKK21zZ3N0ciAiRXhwbGljYWNpw7NuIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjE5NworbXNnaWQgIk5vIGV4cGxhbmF0aW9uIGF2YWlsYWJsZS4iCittc2dzdHIgIk5vbiBoYWkgbmVuZ3VuaGEgZXhwbGljYWNpw7NuIGRpc3Bvw7HDrWJlbC4iCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjY3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJcbiIKKyIlczogJXNcbiIKK21zZ3N0ciAiIgorIlxuIgorIlxuIgorIiVzOiAlc1xuIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzo3MAorbXNnaWQgIiIKKyJcbiIKKyJQcmVzcyA8ZW50ZXI+IHRvIGNvbnRpbnVlLiIKK21zZ3N0ciAiIgorIlxuIgorIlByZW1hIDxpbnRybz4gcGFyYSBjb250aW51YXIuIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoxNjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHJlc3MgPGVudGVyPiB0byBjb250aW51ZS5cbiIKK21zZ3N0ciAiUHJlbWEgPGludHJvPiBwYXJhIGNvbnRpbnVhci5cbiIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MTYyCisjLCBmdXp6eQorbXNnaWQgIjxzdGFuZGFyZCBlcnJvcj4iCittc2dzdHIgImVycm8gZGUgZXNjcml0dXJhIG5vIGVycm8gZXN0w6FuZGFyIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoxNjUKK21zZ2lkICJlcnJvciByZWFkaW5nIGFja25vd2xlZGdlbWVudCBvZiBwcm9ncmFtIGZhaWx1cmUgbWVzc2FnZSIKK21zZ3N0ciAiIgorImVycm8gYW8gbGVyIG8geHVzdGlmaWNhbnRlIGRlIHJlY2VwY2nDs24gZGEgbWVuc2F4ZSBkZSBmYWxsbyBkbyBwcm9ncmFtYSIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MTk2Cittc2dpZCAidXBkYXRlIGF2YWlsYWJsZSBsaXN0IHNjcmlwdCIKK21zZ3N0ciAic2NyaXB0IGRlIGFjdHVhbGl6YWNpw7NuIGRhIGxpc3RhIGRlIGRpc3Bvw7HDrWJlaXMiCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjIwMAorbXNnaWQgImluc3RhbGxhdGlvbiBzY3JpcHQiCittc2dzdHIgInNjcmlwdCBkZSBpbnN0YWxhY2nDs24iCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjI0NgorbXNnaWQgInF1ZXJ5L3NldHVwIHNjcmlwdCIKK21zZ3N0ciAic2NyaXB0IGRlIGNvbnN1bHRhL2NvbmZpZ3VyYWNpw7NuIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzo1MworIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gbWV0aG9kIG9wdGlvbnMgZmlsZSBgJS4yNTBzJyAtLSAlcyIKK21zZ3N0ciAiZXJybyBkZSBzaW50YXhlIG5vIGZpY2hlaXJvIGRlIG9wY2nDs25zIGRvIG3DqXRvZG8gXCIlLjI1MHNcIiAtLSAlcyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcmVhZGluZyBvcHRpb25zIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImVycm8gYW8gbGVyIG8gZmljaGVpcm8gZGUgb3BjacOzbnMgXCIlLjI1MHNcIiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgYCUuMjUwcycgZGlyZWN0b3J5IGZvciByZWFkaW5nIG1ldGhvZHMiCittc2dzdHIgIm5vbiBmb2kgcG9zw61iZWwgbGVyIG8gZGlyZWN0b3JpbyBcIiUuMjUwc1wiIHBhcmEgbGVyIG9zIG3DqXRvZG9zIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxMDYKKyMsIGMtZm9ybWF0Cittc2dpZCAibWV0aG9kIGAlLjI1MHMnIGhhcyBuYW1lIHRoYXQgaXMgdG9vIGxvbmcgKCVkID4gJWQgY2hhcmFjdGVycykiCittc2dzdHIgIm8gbcOpdG9kbyBcIiUuMjUwc1wiIHRlbiB1biBub21lIGxvbmdvIGRlIG3DoWlzICglZCA+ICVkIGNhcmFjdGVyZXMpIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGFjY2VzcyBtZXRob2Qgc2NyaXB0IGAlLjI1MHMnIgorbXNnc3RyICJub24gZm9pIHBvc8OtYmVsIGFjY2VkZXIgYW8gc2NyaXB0IGRlIG3DqXRvZG8gXCIlLjI1MHNcIiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTIzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIG1ldGhvZCBvcHRpb25zIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5vbiBmb2kgcG9zw61iZWwgbGVyIG8gZmljaGVpcm8gZGUgb3BjacOzbnMgZG8gbcOpdG9kbyBcIiUuMjUwc1wiIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNDcKK21zZ2lkICJub24tZGlnaXQgd2hlcmUgZGlnaXQgd2FudGVkIgorbXNnc3RyICJhbGdvIGRpc3RpbnRvIGR1biBkw614aXRvIG9uZGUgc2UgZXNwZXJhYmEgdW4iCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE1MAorbXNnaWQgIkVPRiBpbiBpbmRleCBzdHJpbmciCittc2dzdHIgImZpbiBkZSBmaWNoZWlybyBuYSBjYWRlYSBkZSDDrW5kaWNlIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNTMKK21zZ2lkICJpbmRleCBzdHJpbmcgdG9vIGxvbmciCittc2dzdHIgImNhZGVhIGRlIMOtbmRpY2UgbG9uZ2EgZGUgbcOhaXMiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE1NgorbXNnaWQgIm5ld2xpbmUgYmVmb3JlIG9wdGlvbiBuYW1lIHN0YXJ0IgorbXNnc3RyICJzYWx0byBkZSBsacOxYSBhbnRlcyBkbyBjb21lem8gZG8gbm9tZSBkYSBvcGNpw7NuIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNTgKK21zZ2lkICJFT0YgYmVmb3JlIG9wdGlvbiBuYW1lIHN0YXJ0IgorbXNnc3RyICJmaW4gZGUgZmljaGVpcm8gYW50ZXMgZG8gY29tZXpvIGRvIG5vbWUgZGEgb3BjacOzbiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTYyCittc2dpZCAibm9uYWxwaGEgd2hlcmUgb3B0aW9uIG5hbWUgc3RhcnQgd2FudGVkIgorbXNnc3RyICJjYXLDoWN0ZXIgbm9uIGFsZmFudW3DqXJpY28gb25kZSBzZSBhZ2FyZGFiYSBvIGNvbWV6byBkbyBub21lIGRhIG9wY2nDs24iCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE2NAorbXNnaWQgIm5vbi1hbHBoYW51bSBpbiBvcHRpb24gbmFtZSIKK21zZ3N0ciAiY2Fyw6FjdGVyIG5vbiBhbGZhbnVtw6lyaWNvIG5vIG5vbWUgZGEgb3BjacOzbiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTY3Cittc2dpZCAiRU9GIGluIG9wdGlvbiBuYW1lIgorbXNnc3RyICJmaW4gZGUgZmljaGVpcm8gbm8gbm9tZSBkYSBvcGNpw7NuIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNzIKK21zZ2lkICJuZXdsaW5lIGJlZm9yZSBzdW1tYXJ5IgorbXNnc3RyICJzYWx0byBkZSBsacOxYSBhbnRlcyBkbyByZXN1bW8iCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE3NAorbXNnaWQgIkVPRiBiZWZvcmUgc3VtbWFyeSIKK21zZ3N0ciAiZmluIGRlIGZpY2hlaXJvIGFudGVzIGRvIHJlc3VtbyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTgwCittc2dpZCAiRU9GIGluIHN1bW1hcnkgLSBtaXNzaW5nIG5ld2xpbmUiCittc2dzdHIgImZpbiBkZSBmaWNoZWlybyBubyByZXN1bW8gLSBmYWxsYSB1biBzYWx0byBkZSBsacOxYSIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTkwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIG9wdGlvbiBkZXNjcmlwdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJub24gZm9pIHBvc8OtYmVsIGFicmlyIG8gZmljaGVpcm8gZGUgZGVzY3JpY2nDs24gZGEgb3BjacOzbiBcIiUuMjUwc1wiIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxOTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgb3B0aW9uIGRlc2NyaXB0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5vbiBzZSBhdG9wYSBvIGZpY2hlaXJvIGRlIGRlc2NyaWNpw7NuIGRhIG9wY2nDs24gXCIlLjI1MHNcIiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTk4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZWFkIG9wdGlvbiBkZXNjcmlwdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJub24gZm9pIHBvc8OtYmVsIGxlciBvIGZpY2hlaXJvIGRlIGRlc2NyaWNpw7NuIGRhIG9wY2nDs24gXCIlLjI1MHNcIiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MjAxCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGR1cmluZyByZWFkIG9mIG9wdGlvbiBkZXNjcmlwdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJlcnJvIG5hIGxlY3R1cmEgZG8gZmljaGVpcm8gZGUgZGVzY3JpY2nDs24gZGEgb3BjacOzbiBcIiUuMjU1c1wiIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgZHVyaW5nIHJlYWQgb2YgbWV0aG9kIG9wdGlvbnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiZXJybyBuYSBsZWN0dXJhIGRvIGZpY2hlaXJvIGRlIG9wY2nDs25zIGRvIG3DqXRvZG8gXCIlLjI1MHNcIiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MjQ3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIGN1cnJlbnQgb3B0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5vbiBmb2kgcG9zw61iZWwgYWJyaXIgbyBmaWNoZWlybyBkZSBvcGNpw7NucyBhY3R1YWwgXCIlLjI1MHNcIiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6Mjg5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIG5ldyBvcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibm9uIGZvaSBwb3PDrWJlbCBhYnJpciBvIG5vdm8gZmljaGVpcm8gZGUgb3BjacOzbnMgXCIlLjI1MHNcIiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MjkyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgb3B0aW9uIHRvIGAlLjI1MHMnIgorbXNnc3RyICJub24gZm9pIHBvc8OtYmVsIGdhcmRhciBhIG5vdmEgb3BjacOzbiBlbiBcIiUuMjUwc1wiIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyOTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIG5ldyBvcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibm9uIGZvaSBwb3PDrWJlbCBwZWNoYXIgbyBub3ZvIGZpY2hlaXJvIGRlIG9wY2nDs25zIFwiJS4yNTBzXCIiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjI5NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgb3B0aW9uIGFzIGAlLjI1MHMnIgorbXNnc3RyICJub24gZm9pIHBvc8OtYmVsIGluc3RhbGFyIGEgbm92YSBvcGNpw7NuIGNvbWEgXCIlLjI1MHNcIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjM2Cittc2dpZCAibmV3IHBhY2thZ2UiCittc2dzdHIgIm5vdm8gcGFxdWV0ZSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjM3Cittc2dpZCAiaW5zdGFsbCIKK21zZ3N0ciAiaW5zdGFsYXIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzozOAorbXNnaWQgImhvbGQiCittc2dzdHIgInJldGVyIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MzkKK21zZ2lkICJyZW1vdmUiCittc2dzdHIgImVsaW1pbmFyIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NDAKK21zZ2lkICJwdXJnZSIKK21zZ3N0ciAicHVyZ2FyIgorCisjLiBUUkFOU0xBVE9SUzogVGhlIHNwYWNlIGlzIGEgdHJpY2sgdG8gd29yayBhcm91bmQgZ2V0dGV4dCB3aGljaCB1c2VzCisjLiAqIHRoZSBlbXB0eSBzdHJpbmcgdG8gc3RvcmUgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHRyYW5zbGF0aW9uLiBETyBOT1QKKyMuICogQ0hBTkdFIFRIQVQgSU4gQSBUUkFOU0xBVElPTiEgVGhlIGNvZGUgcmVhbGx5IHJlbGllcyBvbiB0aGF0IGJlaW5nCisjLiAqIGEgc2luZ2xlIHNwYWNlLgorIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjQ3Cittc2dpZCAiICIKK21zZ3N0ciAiICIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjQ4Cittc2dpZCAiUkVJTlNUQUxMIgorbXNnc3RyICJSRUlOU1RBTEFSIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTEKK21zZ2lkICJub3QgaW5zdGFsbGVkIgorbXNnc3RyICJzZW4gaW5zdGFsYXIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1MgorbXNnaWQgInJlbW92ZWQgKGNvbmZpZ3MgcmVtYWluKSIKK21zZ3N0ciAiZWxpbWluYWRvIChxdWVkYSBjb25maWcpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTMKK21zZ2lkICJoYWxmIGluc3RhbGxlZCIKK21zZ3N0ciAibWVkaW8gaW5zdGFsYWRvIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTQKK21zZ2lkICJ1bnBhY2tlZCAobm90IHNldCB1cCkiCittc2dzdHIgImRlc2VtcGFxdWV0YWRvIChzZW4gY29uZmlndXJhcikiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1NQorbXNnaWQgImhhbGYgY29uZmlndXJlZCAoY29uZmlnIGZhaWxlZCkiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjU2Cittc2dpZCAiYXdhaXRpbmcgdHJpZ2dlciBwcm9jZXNzaW5nIgorbXNnc3RyICJhIGFnYXJkYXIgcXVlIHNlIHByb2Nlc2UgbyBkZXNlbmNhZGVhbnRlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTcKK21zZ2lkICJ0cmlnZ2VyZWQiCittc2dzdHIgImRlc2VuY2FkZWFkbyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjU4Cittc2dpZCAiaW5zdGFsbGVkIgorbXNnc3RyICJpbnN0YWxhZG8iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo2MQorbXNnaWQgIlJlcXVpcmVkIgorbXNnc3RyICJSZXF1ZXJpZG8iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo2MgorbXNnaWQgIkltcG9ydGFudCIKK21zZ3N0ciAiSW1wb3J0YW50ZSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjYzCittc2dpZCAiU3RhbmRhcmQiCittc2dzdHIgIkVzdMOhbmRhciIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjY0Cittc2dpZCAiT3B0aW9uYWwiCittc2dzdHIgIk9wY2lvbmFsIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjUKK21zZ2lkICJFeHRyYSIKK21zZ3N0ciAiRXh0cmEiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo2NgorbXNnaWQgIiFCdWchIgorbXNnc3RyICLCoUJ1ZyEiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo2NworbXNnaWQgIlVuY2xhc3NpZmllZCIKK21zZ3N0ciAiU2VuIGNsYXNpZmljYXIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3MAorbXNnaWQgInN1Z2dlc3RzIgorbXNnc3RyICJzdXhpcmUiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3MQorbXNnaWQgInJlY29tbWVuZHMiCittc2dzdHIgInJlY29tZW5kYSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjcyCittc2dpZCAiZGVwZW5kcyBvbiIKK21zZ3N0ciAiZGVwZW5kZSBkZSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjczCittc2dpZCAicHJlLWRlcGVuZHMgb24iCittc2dzdHIgInByZS1kZXBlbmRlIGRlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzQKK21zZ2lkICJicmVha3MiCittc2dzdHIgInJhY2hhIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzUKK21zZ2lkICJjb25mbGljdHMgd2l0aCIKK21zZ3N0ciAidGVuIGNvbmZsaXRvcyBjb24iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3NgorbXNnaWQgInByb3ZpZGVzIgorbXNnc3RyICJmb3JuZWNlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzcKK21zZ2lkICJyZXBsYWNlcyIKK21zZ3N0ciAic3Vic3RpdMO6ZSBhIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzgKK21zZ2lkICJlbmhhbmNlcyIKK21zZ3N0ciAibWVsbG9yYSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjgxCittc2dpZCAiUmVxIgorbXNnc3RyICJSZXEiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4MgorbXNnaWQgIkltcCIKK21zZ3N0ciAiSW1wIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODMKK21zZ2lkICJTdGQiCittc2dzdHIgIkVzdCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjg0Cittc2dpZCAiT3B0IgorbXNnc3RyICJPcGMiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4NQorbXNnaWQgIlh0ciIKK21zZ3N0ciAiWHRyIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODYKK21zZ2lkICJiVUciCittc2dzdHIgImJVRyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjg3Cittc2dpZCAiPyIKK21zZ3N0ciAiPyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjk1IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTUKK21zZ2lkICJCcm9rZW4iCittc2dzdHIgIlJvdG9zIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6OTYKK21zZ2lkICJOZXciCittc2dzdHIgIk5vdm9zIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6OTcKK21zZ2lkICJVcGRhdGVkIgorbXNnc3RyICJBY3R1YWxpemFkb3MiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo5OAorbXNnaWQgIk9ic29sZXRlL2xvY2FsIgorbXNnc3RyICJPYnNvbGV0b3MvbG9jYWlzIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6OTkKK21zZ2lkICJVcC10by1kYXRlIgorbXNnc3RyICJBbyBkw61hIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTAwCittc2dpZCAiQXZhaWxhYmxlIgorbXNnc3RyICJEaXNwb8Oxw61iZWlzIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTAxIGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTcKK21zZ2lkICJSZW1vdmVkIgorbXNnc3RyICJFbGltaW5hZG9zIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTAyIGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTEKK21zZ2lkICJCcm9rZW5seSBpbnN0YWxsZWQgcGFja2FnZXMiCittc2dzdHIgIlBhcXVldGVzIGluc3RhbGFkb3MgcGVybyByb3RvcyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwMworbXNnaWQgIk5ld2x5IGF2YWlsYWJsZSBwYWNrYWdlcyIKK21zZ3N0ciAiUGFxdWV0ZXMgZGlzcG/DscOtYmVpcyBub3ZvcyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwNAorbXNnaWQgIlVwZGF0ZWQgcGFja2FnZXMgKG5ld2VyIHZlcnNpb24gaXMgYXZhaWxhYmxlKSIKK21zZ3N0ciAiUGFxdWV0ZXMgYWN0dWFsaXphZG9zIChoYWkgdW5oYSBub3ZhIHZlcnNpw7NuIGRpc3Bvw7HDrWJlbCkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDUKK21zZ2lkICJPYnNvbGV0ZSBhbmQgbG9jYWwgcGFja2FnZXMgcHJlc2VudCBvbiBzeXN0ZW0iCittc2dzdHIgIlBhcXVldGVzIG9ic29sZXRvcyBlIGxvY2FpcyBwcmVzZW50ZXMgbm8gc2lzdGVtYSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwNgorbXNnaWQgIlVwIHRvIGRhdGUgaW5zdGFsbGVkIHBhY2thZ2VzIgorbXNnc3RyICJQYXF1ZXRlcyBpbnN0YWxhZG9zIGUgYW8gZMOtYSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwNworbXNnaWQgIkF2YWlsYWJsZSBwYWNrYWdlcyAobm90IGN1cnJlbnRseSBpbnN0YWxsZWQpIgorbXNnc3RyICJQYXF1ZXRlcyBkaXNwb8Oxw61iZWlzIChzZW4gaW5zdGFsYXIpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTA4Cittc2dpZCAiUmVtb3ZlZCBhbmQgbm8gbG9uZ2VyIGF2YWlsYWJsZSBwYWNrYWdlcyIKK21zZ3N0ciAiUGFxdWV0ZXMgZWxpbWluYWRvcyBlIHF1ZSB4YSBub24gZXN0w6FuIGRpc3Bvw7HDrWJlaXMiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTIKK21zZ2lkICJJbnN0YWxsZWQgcGFja2FnZXMiCittc2dzdHIgIlBhcXVldGVzIGluc3RhbGFkb3MiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTMKK21zZ2lkICJSZW1vdmVkIHBhY2thZ2VzIChjb25maWd1cmF0aW9uIHN0aWxsIHByZXNlbnQpIgorbXNnc3RyICJQYXF1ZXRlcyBlbGltaW5hZG9zIChhw61uZGEgZXN0w6EgcHJlc2VudGUgYSBjb25maWd1cmFjacOzbikiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTQKK21zZ2lkICJQdXJnZWQgcGFja2FnZXMgYW5kIHRob3NlIG5ldmVyIGluc3RhbGxlZCIKK21zZ3N0ciAiUGFxdWV0ZXMgcHVyZ2Fkb3MgZSBub24gaW5zdGFsYWRvcyBudW5jYSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExNgorbXNnaWQgIkluc3RhbGxlZCIKK21zZ3N0ciAiSW5zdGFsYWRvcyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExOAorbXNnaWQgIlB1cmdlZCIKK21zZ3N0ciAiUHVyZ2Fkb3MiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxOTgKK21zZ2lkICJkc2VsZWN0IC0gcmVjdXJzaXZlIHBhY2thZ2UgbGlzdGluZyIKK21zZ3N0ciAiZHNlbGVjdCAtIGxpc3RhIHJlY3Vyc2l2YSBkZSBwYXF1ZXRlcyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjE5OQorbXNnaWQgImRzZWxlY3QgLSBpbnNwZWN0aW9uIG9mIHBhY2thZ2Ugc3RhdGVzIgorbXNnc3RyICJkc2VsZWN0IC0gaW5zcGVjY2nDs24gZG9zIGVzdGFkb3MgZG9zIHBhcXVldGVzIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjAwCittc2dpZCAiZHNlbGVjdCAtIG1haW4gcGFja2FnZSBsaXN0aW5nIgorbXNnc3RyICJkc2VsZWN0IC0gbGlzdGEgcHJpbmNpcGFsIGRlIHBhcXVldGVzIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjA4Cittc2dpZCAiIChieSBzZWN0aW9uKSIKK21zZ3N0ciAiIChwb3Igc2VjY2nDs24pIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjExCittc2dpZCAiIChhdmFpbC4sIHNlY3Rpb24pIgorbXNnc3RyICIgKGRpc3BvLiwgc2VjY2nDs24pIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjE0Cittc2dpZCAiIChzdGF0dXMsIHNlY3Rpb24pIgorbXNnc3RyICIgKGVzdGFkbywgc2VjY2nDs24pIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjIzCittc2dpZCAiIChieSBwcmlvcml0eSkiCittc2dzdHIgIiAocG9yIHByaW9yaWRhZGUpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjI2Cittc2dpZCAiIChhdmFpbC4sIHByaW9yaXR5KSIKK21zZ3N0ciAiIChkaXNwby4sIHByaW9yaWRhZGUpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjI5Cittc2dpZCAiIChzdGF0dXMsIHByaW9yaXR5KSIKK21zZ3N0ciAiIChlc3RhZG8sIHByaW9yaWRhZGUpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjM4IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNTAKK21zZ2lkICIgKGFscGhhYmV0aWNhbGx5KSIKK21zZ3N0ciAiIChhbGZhYmV0aWNhbWVudGUpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjQxCittc2dpZCAiIChieSBhdmFpbGFiaWxpdHkpIgorbXNnc3RyICIgKHBvciBkaXNwb8OxaWJpbGlkYWRlKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI0NAorbXNnaWQgIiAoYnkgc3RhdHVzKSIKK21zZ3N0ciAiIChwb3IgZXN0YWRvKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI1OAorbXNnaWQgIiBtYXJrOisvPS8tIHRlcnNlOnYgaGVscDo/IgorbXNnc3RyICIgbWFyY2FyOisvPS8tIGJyZXZlOnYgYXh1ZGE6PyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI1OQorbXNnaWQgIiBtYXJrOisvPS8tIHZlcmJvc2U6diBoZWxwOj8iCittc2dzdHIgIiBtYXJjYXI6Ky89Ly0gZXhwYW5kaWRvOnYgYXh1ZGE6PyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI2MAorbXNnaWQgIiB0ZXJzZTp2IGhlbHA6PyIKK21zZ3N0ciAiIGJyZXZlOnYgYXh1ZGE6PyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI2MQorbXNnaWQgIiB2ZXJib3NlOnYgaGVscDo/IgorbXNnc3RyICIgZXhwYW5kaWRvOnYgYXh1ZGE6PyIKKworIzogZHNlbGVjdC9wa2dpbmZvLmNjOjgwCittc2dpZCAiIgorIlRoZSBsaW5lIHlvdSBoYXZlIGhpZ2hsaWdodGVkIHJlcHJlc2VudHMgbWFueSBwYWNrYWdlczsgaWYgeW91IGFzayB0byAiCisiaW5zdGFsbCwgcmVtb3ZlLCBob2xkLCBldGMuIGl0IHlvdSB3aWxsIGFmZmVjdCBhbGwgdGhlIHBhY2thZ2VzIHdoaWNoIG1hdGNoICIKKyJ0aGUgY3JpdGVyaW9uIHNob3duLlxuIgorIlxuIgorIklmIHlvdSBtb3ZlIHRoZSBoaWdobGlnaHQgdG8gYSBsaW5lIGZvciBhIHBhcnRpY3VsYXIgcGFja2FnZSB5b3Ugd2lsbCBzZWUgIgorImluZm9ybWF0aW9uIGFib3V0IHRoYXQgcGFja2FnZSBkaXNwbGF5ZWQgaGVyZS5cbiIKKyJZb3UgY2FuIHVzZSBgbycgYW5kIGBPJyB0byBjaGFuZ2UgdGhlIHNvcnQgb3JkZXIgYW5kIGdpdmUgeW91cnNlbGYgdGhlICIKKyJvcHBvcnR1bml0eSB0byBtYXJrIHBhY2thZ2VzIGluIGRpZmZlcmVudCBraW5kcyBvZiBncm91cHMuIgorbXNnc3RyICIiCisiQSBsacOxYSBxdWUgcmVhbHpvdSByZXByZXNlbnRhIHZhcmlvcyBwYXF1ZXRlczsgc2Ugc29saWNpdGEgaW5zdGFsYWxhLCAiCisiZWxpbWluYWxhLCByZXRlbGEsIGV0Yy4sIHZhaSBhZmVjdGFyIGEgdG9kb3Mgb3MgcGFxdWV0ZXMgcXVlIGNhc2FuIGNvICIKKyJjcml0ZXJpbyBxdWUgc2UgYW1vc2EuXG4iCisiXG4iCisiU2UgZGVzcHJhemEgbyByZWFsemFkbyBhIHVuaGEgbGnDsWEgZHVuIHBhcXVldGUgY29uY3JldG8gaGEgdmVyIG1vc3RyYWRhIGFxdcOtICIKKyJhIGluZm9ybWFjacOzbiBkZXNlIHBhcXVldGUuXG4iCisiUG9kZSBlbXByZWdhciBcIm9cIiBlIFwiT1wiIHBhcmEgdHJvY2FyIGEgb3JkZSBlIHBhcmEgdGVyIGEgcG9zaWJpbGlkYWRlIGRlICIKKyJtYXJjYXIgcGFxdWV0ZXMgZGUgZGlzdGludG9zIHRpcG9zIGRlIGdydXBvcy4iCisKKyM6IGRzZWxlY3QvcGtnaW5mby5jYzo5MworbXNnaWQgIkludGVycmVsYXRpb25zaGlwcyIKK21zZ3N0ciAiSW50ZXJyZWxhY2nDs25zIgorCisjOiBkc2VsZWN0L3BrZ2luZm8uY2M6MTEyCittc2dpZCAiTm8gZGVzY3JpcHRpb24gYXZhaWxhYmxlLiIKK21zZ3N0ciAiTm9uIGhhaSBuZW5ndW5oYSBkZXNjcmljacOzbiBkaXNwb8Oxw61iZWwuIgorCisjOiBkc2VsZWN0L3BrZ2luZm8uY2M6MTMwCittc2dpZCAiSW5zdGFsbGVkIGNvbnRyb2wgZmlsZSBpbmZvcm1hdGlvbiIKK21zZ3N0ciAiSW5mb3JtYWNpw7NuIGRvIGZpY2hlaXJvIGRlIGNvbnRyb2wgaW5zdGFsYWRvIgorCisjOiBkc2VsZWN0L3BrZ2luZm8uY2M6MTQ2Cittc2dpZCAiQXZhaWxhYmxlIGNvbnRyb2wgZmlsZSBpbmZvcm1hdGlvbiIKK21zZ3N0ciAiVmVyc2nDs24gZGlzcG/DscOtYmVsIGRhIGluZm9ybWFjacOzbiBkbyBmaWNoZWlybyBkZSBjb250cm9sIgorCisjOiBkc2VsZWN0L3BrZ2xpc3QuY2M6NDE2Cittc2dpZCAiVGhlcmUgYXJlIG5vIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2xpc3QuY2M6NTA3Cittc2dpZCAiaW52YWxpZCBzZWFyY2ggb3B0aW9uIGdpdmVuIgorbXNnc3RyICJmb3JuZWNldXNlIHVuaGEgb3BjacOzbiBkZSBwcm9jdXJhIG5vbiB2w6FsaWRhIgorCisjOiBkc2VsZWN0L3BrZ2xpc3QuY2M6NTIxCittc2dpZCAiZXJyb3IgaW4gcmVndWxhciBleHByZXNzaW9uIgorbXNnc3RyICJlcnJvIG5hIGV4cHJlc2nDs24gcmVndWxhciIKKworIzogZHNlbGVjdC9wa2dzdWJsaXN0LmNjOjEwNworbXNnaWQgIiBkb2VzIG5vdCBhcHBlYXIgdG8gYmUgYXZhaWxhYmxlXG4iCittc2dzdHIgIiBub24gc2VtZWxsYSBxdWUgZXN0ZWEgZGlzcG/DscOtYmVsXG4iCisKKyM6IGRzZWxlY3QvcGtnc3VibGlzdC5jYzoxMjcKK21zZ2lkICIgb3IgIgorbXNnc3RyICIgb3UgIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo1NworbXNnaWQgIkFsbCIKK21zZ3N0ciAiVG9kb3MiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjc5Cittc2dpZCAiQWxsIHBhY2thZ2VzIgorbXNnc3RyICJUb2RvcyBvcyBwYXF1ZXRlcyIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcGFja2FnZXMgd2l0aG91dCBhIHNlY3Rpb24iCittc2dzdHIgIiVzIHBhcXVldGVzIHNlbiBzZWNjacOzbiIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcGFja2FnZXMgaW4gc2VjdGlvbiAlcyIKK21zZ3N0ciAiJXMgcGFxdWV0ZXMgbmEgc2VjY2nDs24gJXMiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjkxCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzICVzIHBhY2thZ2VzIgorbXNnc3RyICIlcyBwYXF1ZXRlcyAlcyIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgJXMgcGFja2FnZXMgd2l0aG91dCBhIHNlY3Rpb24iCittc2dzdHIgIiVzIHBhcXVldGVzICVzIHNlbiBzZWNjacOzbiIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6OTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgJXMgcGFja2FnZXMgaW4gc2VjdGlvbiAlcyIKK21zZ3N0ciAiJXMgcGFxdWV0ZXMgJXMgbmEgc2VjY2nDs24gJXMiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjExOAorIywgYy1mb3JtYXQKK21zZ2lkICIlLSpzICVzJXMlczsgICVzICh3YXM6ICVzKS4gICVzIgorbXNnc3RyICIlLSpzICVzJXMlczsgICVzIChlcmE6ICVzKS4gJXMiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI2MworbXNnaWQgIkVycm9yIgorbXNnc3RyICJFcnJvIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyNjcKK21zZ2lkICJJbnN0YWxsZWQ/IgorbXNnc3RyICJFc3TDoSBpbnN0YWxhZG8/IgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyNzEKK21zZ2lkICJPbGQgbWFyayIKK21zZ3N0ciAiTWFyY2EgYW50aWdhIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyNzUKK21zZ2lkICJNYXJrZWQgZm9yIgorbXNnc3RyICJNYXJjYWRvIHBhcmEiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI3OAorbXNnaWQgIkVJT00iCittc2dzdHIgIkVJQU0iCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI4MAorbXNnaWQgIlNlY3Rpb24iCittc2dzdHIgIlNlY2Npw7NuIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyODEKK21zZ2lkICJQcmlvcml0eSIKK21zZ3N0ciAiUHJpb3JpZGFkZSIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6MjgyCittc2dpZCAiUGFja2FnZSIKK21zZ3N0ciAiUGFxdWV0ZSIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6Mjg2Cittc2dpZCAiSW5zdC52ZXIiCittc2dzdHIgIlZlci4gaW5zdCIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6Mjg5Cittc2dpZCAiQXZhaWwudmVyIgorbXNnc3RyICJWZXIuIGRpc3BvIgorCisjfiBtc2dpZCAicmV0dXJuZWQgZXJyb3IgZXhpdCBzdGF0dXMgJWQuXG4iCisjfiBtc2dzdHIgImRldm9sdmV1IG8gZXN0YWRvIGRlIHNhw61kYSBkZSBlcnJvICVkLlxuIgorCisjfiBtc2dpZCAid2FzIGludGVycnVwdGVkLlxuIgorI34gbXNnc3RyICJxdWVkb3UgaW50ZXJydW1waWRvLlxuIgorCisjfiBtc2dpZCAid2FzIHRlcm1pbmF0ZWQgYnkgYSBzaWduYWw6ICVzLlxuIgorI34gbXNnc3RyICJyZW1hdG91IHBvciB1biBzaW5hbDogJXMuXG4iCisKKyN+IG1zZ2lkICIoSXQgbGVmdCBhIGNvcmVkdW1wLilcbiIKKyN+IG1zZ3N0ciAiKERlaXhvdSB1biBlbnZvcmNhZG8gZGUgbWVtb3JpYSkuXG4iCisKKyN+IG1zZ2lkICJmYWlsZWQgd2l0aCBhbiB1bmtub3duIHdhaXQgcmV0dXJuIGNvZGUgJWQuXG4iCisjfiBtc2dzdHIgImZhbGxvdSBjdW4gY8OzZGlnbyBkZSBlc3RhZG8gZGUgZXNwZXJhICVkIGRlc2Nvw7FlY2lkby5cbiIKKworI34gbXNnaWQgInVuYWJsZSB0byBydW4gJS4yNTBzIHByb2Nlc3MgYCUuMjUwcyciCisjfiBtc2dzdHIgIm5vbiBzZSBwb2RlIGV4ZWN1dGFyIG8gcHJvY2VzbyBkZSAlLjI1MHMgXCIlLjI1MHNcIiIKKworI34gbXNnaWQgImZhaWxlZCBjb25maWciCisjfiBtc2dzdHIgImZhbGxvdSBhIGNvbmZpZ3VyYWNpw7NuIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHdhaXQgZm9yICUuMjUwcyIKKyN+IG1zZ3N0ciAibm9uIHNlIHBvZGUgYWdhcmRhciBwb3IgJS4yNTBzIgorCisjfiBtc2dpZCAiZ290IHdyb25nIGNoaWxkJ3Mgc3RhdHVzIC0gYXNrZWQgZm9yICVsZCwgZ290ICVsZCIKKyN+IG1zZ3N0ciAicmVjaWJpdXNlIG8gZXN0YWRvIGRvIGZpbGxvIGluY29ycmVjdG8gLSBwZWRpdXNlICVsZCwgcmVjaWJpdXNlICVsZCIKKworI34gbXNnaWQgIlJlY29tbWVuZGVkIgorI34gbXNnc3RyICJSZWNvbWVuZGFkbyIKKworI34gbXNnaWQgIkNvbnRyaWIiCisjfiBtc2dzdHIgIkNvbnRyaWIiCisKKyN+IG1zZ2lkICJSZWMiCisjfiBtc2dzdHIgIlJlYyIKKworI34gbXNnaWQgIkN0YiIKKyN+IG1zZ3N0ciAiQ3RiIgorCisjfiBtc2dpZCAiIgorI34gImJhc2VsaXN0OjpzdGFydGRpc3BsYXkoKSBkb25lIC4uLlxuIgorI34gIlxuIgorI34gIiB4bWF4PSVkLCB5bWF4PSVkO1xuIgorI34gIlxuIgorI34gIiB0aXRsZV9oZWlnaHQ9JWQsIGNvbGhlYWRzX2hlaWdodD0lZCwgbGlzdF9oZWlnaHQ9JWQ7XG4iCisjfiAiIHRoaXNzdGF0ZV9oZWlnaHQ9JWQsIGluZm9faGVpZ2h0PSVkLCB3aGF0aW5mb19oZWlnaHQ9JWQ7XG4iCisjfiAiXG4iCisjfiAiIGNvbGhlYWRzX3Jvdz0lZCwgdGhpc3N0YXRlX3Jvdz0lZCwgaW5mb19yb3c9JWQ7XG4iCisjfiAiIHdoYXRpbmZvX3Jvdz0lZCwgbGlzdF9yb3c9JWQ7XG4iCisjfiAiXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJiYXNlbGlzdDo6c3RhcnRkaXNwbGF5KCkgcmVtYXRhZG8gLi4uXG4iCisjfiAiXG4iCisjfiAiIHhtYXg9JWQsIHltYXg9JWQ7XG4iCisjfiAiXG4iCisjfiAiIHRpdGxlX2hlaWdodD0lZCwgY29saGVhZHNfaGVpZ2h0PSVkLCBsaXN0X2hlaWdodD0lZDtcbiIKKyN+ICIgdGhpc3N0YXRlX2hlaWdodD0lZCwgaW5mb19oZWlnaHQ9JWQsIHdoYXRpbmZvX2hlaWdodD0lZDtcbiIKKyN+ICJcbiIKKyN+ICIgY29saGVhZHNfcm93PSVkLCB0aGlzc3RhdGVfcm93PSVkLCBpbmZvX3Jvdz0lZDtcbiIKKyN+ICIgd2hhdGluZm9fcm93PSVkLCBsaXN0X3Jvdz0lZDtcbiIKKyN+ICJcbiIKKworI34gbXNnaWQgIltub25lXSIKKyN+IG1zZ3N0ciAiW25pbmfDum5dIgorCisjfiBtc2dpZCAiZXJyb3IgdW4tY2F0Y2hpbmcgc2lnbmFsICVkOiAlc1xuIgorI34gbXNnc3RyICJlcnJvIGFvIGRlcy1jYXB0dXJhciBvIHNpbmFsICVkOiAlc1xuIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGlnbm9yZSBzaWduYWwgJWQgYmVmb3JlIHJ1bm5pbmcgJS4yNTBzIgorI34gbXNnc3RyICJub24gc2UgcG9kZSBpZ25vcmFyIG8gc2luYWwgJWQgYW50ZXMgZGUgZXhlY3V0YXIgJS4yNTBzIgorCisjfiBtc2dpZCAiKG5vIGNsaWVudGRhdGEpIgorI34gbXNnc3RyICIobm9uIGhhaSBkYXRvcyBkbyBjbGllbnRlKSIKKworI34gbXNnaWQgIjxudWxsPiIKKyN+IG1zZ3N0ciAiPG51bG8+IgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL2h1LmdtbyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9odS5nbW8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzJkZTUxYgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9odS5nbW8KQmluYXJ5IGZpbGVzIGRpZmZlcgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL2h1LnBvIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL2h1LnBvCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmRlNzUzMzUKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vaHUucG8KQEAgLTAsMCArMSwxNTAyIEBACittc2dpZCAiIgorbXNnc3RyICIiCisiUHJvamVjdC1JZC1WZXJzaW9uOiBcbiIKKyJSZXBvcnQtTXNnaWQtQnVncy1UbzogZGViaWFuLWRwa2dAbGlzdHMuZGViaWFuLm9yZ1xuIgorIlBPVC1DcmVhdGlvbi1EYXRlOiAyMDExLTEwLTE0IDA3OjExKzAyMDBcbiIKKyJQTy1SZXZpc2lvbi1EYXRlOiAyMDA2LTEwLTA2IDAzOjQ4KzAxMDBcbiIKKyJMYXN0LVRyYW5zbGF0b3I6IFNaRVJWw4FDIEF0dGlsYSA8c2FzQDMyMS5odT5cbiIKKyJMYW5ndWFnZS1UZWFtOiBIdW5nYXJpYW5cbiIKKyJMYW5ndWFnZTogaHVcbiIKKyJNSU1FLVZlcnNpb246IDEuMFxuIgorIkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD11dGYtOFxuIgorIkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXRcbiIKKyJYLVBvZWRpdC1MYW5ndWFnZTogSHVuZ2FyaWFuXG4iCisiWC1Qb2VkaXQtQ291bnRyeTogSFVOR0FSWVxuIgorIlBsdXJhbC1Gb3JtczogbnBsdXJhbHM9MTsgcGx1cmFsPTA7XG4iCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MTI1Cittc2dpZCAiU2VhcmNoIGZvciA/ICIKK21zZ3N0ciAiS2VyZXPDqXM6IgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE0NworbXNnaWQgIkVycm9yOiAiCittc2dzdHIgIkhpYmE6IgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE3OAorbXNnaWQgIkhlbHA6ICIKK21zZ3N0ciAiU8O6Z8OzOiIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxODQKK21zZ2lkICJQcmVzcyA/IGZvciBoZWxwIG1lbnUsIC4gZm9yIG5leHQgdG9waWMsIDxzcGFjZT4gdG8gZXhpdCBoZWxwLiIKK21zZ3N0ciAiQSA/IHPDumfDsyBtZW7DvGrDqXQgYWRqYSwgYSAuIGzDqXAsIGEgPHNwYWNlPiBraWzDqXAgYSBzw7pnw7Niw7NsLiIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxOTEKK21zZ2lkICJIZWxwIGluZm9ybWF0aW9uIGlzIGF2YWlsYWJsZSB1bmRlciB0aGUgZm9sbG93aW5nIHRvcGljczoiCittc2dzdHIgIkF6IGFsw6FiYmlha3LDs2wgw6lyaGV0xZEgZWwgc8O6Z8OzOiIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxOTkKK21zZ2lkICIiCisiUHJlc3MgYSBrZXkgZnJvbSB0aGUgbGlzdCBhYm92ZSwgPHNwYWNlPiBvciBgcScgdG8gZXhpdCBoZWxwLFxuIgorIiAgb3IgYC4nIChmdWxsIHN0b3ApIHRvIHJlYWQgZWFjaCBoZWxwIHBhZ2UgaW4gdHVybi4gIgorbXNnc3RyICIiCisiw5xzcyBsZSBlZ3kgYmlsbGVudHnFsXQgYSBmZW50aWVrYsWRbCwgPHNwYWNlPiB2YWd5IGBxJyBhIGtpbMOpcMOpcyxcbiIKKyIgIGEgYC4nIGVneW3DoXMgdXTDoW4gb2x2YXNzYSBhIHPDumfDsyBsYXBqYWl0LiIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoyMDUKK21zZ2lkICJlcnJvciByZWFkaW5nIGtleWJvYXJkIGluIGhlbHAiCittc2dzdHIgImhpYmEgYSBiaWxsZW50ecWxemV0IG9sdmFzw6FzYWtvciBhIHPDumfDs2JhbiIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo1NworbXNnaWQgImlvY3RsKFRJT0NHV0lOU1opIGZhaWxlZCIKK21zZ3N0ciAiaW9jdGwoVElPQ0dXSU5TWikgc2lrZXJ0ZWxlbiIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo2MAorbXNnaWQgImRvdXBkYXRlIGluIFNJR1dJTkNIIGhhbmRsZXIgZmFpbGVkIgorbXNnc3RyICJkb3VwZGF0ZSBhIFNJR1dJTkNIIGtlemVsxZFiZW4gc2lrZXJ0ZWxlbiIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo2NworbXNnaWQgImZhaWxlZCB0byByZXN0b3JlIG9sZCBTSUdXSU5DSCBzaWdhY3QiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo2OQorbXNnaWQgImZhaWxlZCB0byByZXN0b3JlIG9sZCBzaWduYWwgbWFzayIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjc5Cittc2dpZCAiZmFpbGVkIHRvIGdldCBvbGQgc2lnbmFsIG1hc2siCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo4MAorbXNnaWQgImZhaWxlZCB0byBnZXQgb2xkIFNJR1dJTkNIIHNpZ2FjdCIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjg0Cittc2dpZCAiZmFpbGVkIHRvIGJsb2NrIFNJR1dJTkNIIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6ODkKK21zZ2lkICJmYWlsZWQgdG8gc2V0IG5ldyBTSUdXSU5DSCBzaWdhY3QiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxMjYKK21zZ2lkICJmYWlsZWQgdG8gYWxsb2NhdGUgY29sb3VyIHBhaXIiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxNjcKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHRpdGxlIHdpbmRvdyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE3MQorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgd2hhdGluZm8gd2luZG93IgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTc1Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBiYXNlbGlzdCBwYWQiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxNzgKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGhlYWRpbmcgcGFkIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTgyCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSB0aGlzc3RhdGUgcGFkIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTg2Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBpbmZvIHBhZCIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE5MQorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgcXVlcnkgd2luZG93IgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MjU1CisjLCBmdXp6eQorbXNnaWQgIktleWJpbmRpbmdzIgorbXNnc3RyICJiaWxsZW50ecWxayIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzozMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAtLSAlZCUlLCBwcmVzcyAiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzozMDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgZm9yIG1vcmUiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzozMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgdG8gZ28gYmFjayIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjc4Cittc2dpZCAiW25vdCBib3VuZF0iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzo4MgorIywgYy1mb3JtYXQKK21zZ2lkICJbdW5rOiAlZF0iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxMzkKK21zZ2lkICJTY3JvbGwgb253YXJkcyB0aHJvdWdoIGhlbHAvaW5mb3JtYXRpb24iCittc2dzdHIgIkfDtnJnZXTDqXMgZWzFkXJlIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0MAorbXNnaWQgIlNjcm9sbCBiYWNrd2FyZHMgdGhyb3VnaCBoZWxwL2luZm9ybWF0aW9uIgorbXNnc3RyICJHw7ZyZ2V0w6lzIHZpc3N6YSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDEKK21zZ2lkICJNb3ZlIHVwIgorbXNnc3RyICJGZWwiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQyCittc2dpZCAiTW92ZSBkb3duIgorbXNnc3RyICJMZSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDMKK21zZ2lkICJHbyB0byB0b3Agb2YgbGlzdCIKK21zZ3N0ciAiQSBsaXN0YSBlbGVqw6lyZSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDQKK21zZ2lkICJHbyB0byBlbmQgb2YgbGlzdCIKK21zZ3N0ciAiQSBsaXN0YSB2w6lnw6lyZSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDUKK21zZ2lkICJSZXF1ZXN0IGhlbHAgKGN5Y2xlIHRocm91Z2ggaGVscCBzY3JlZW5zKSIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0NgorbXNnaWQgIkN5Y2xlIHRocm91Z2ggaW5mb3JtYXRpb24gZGlzcGxheXMiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDcKK21zZ2lkICJSZWRyYXcgZGlzcGxheSIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0OAorbXNnaWQgIlNjcm9sbCBvbndhcmRzIHRocm91Z2ggbGlzdCBieSAxIGxpbmUiCittc2dzdHIgIkVsxZFyZSAxIHNvcnJhbCIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDkKK21zZ2lkICJTY3JvbGwgYmFja3dhcmRzIHRocm91Z2ggbGlzdCBieSAxIGxpbmUiCittc2dzdHIgIlZpc3N6YSBlZ3kgc29ycmFsIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1MAorbXNnaWQgIlNjcm9sbCBvbndhcmRzIHRocm91Z2ggaGVscC9pbmZvcm1hdGlvbiBieSAxIGxpbmUiCittc2dzdHIgIkVsxZFyZSAxIHNvcnJhbCBhIHPDumfDs2JhbiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTEKK21zZ2lkICJTY3JvbGwgYmFja3dhcmRzIHRocm91Z2ggaGVscC9pbmZvcm1hdGlvbiBieSAxIGxpbmUiCittc2dzdHIgIlZpc3N6YSAxIHNvcnJhbCBhIHPDumfDs2JhbiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTIKK21zZ2lkICJTY3JvbGwgb253YXJkcyB0aHJvdWdoIGxpc3QiCittc2dzdHIgIkVsxZFyZSBhIGxpc3TDoWtvbiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTMKK21zZ2lkICJTY3JvbGwgYmFja3dhcmRzIHRocm91Z2ggbGlzdCIKK21zZ3N0ciAiSMOhdHJhIGEgbGlzdMOha29uIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1NgorbXNnaWQgIk1hcmsgcGFja2FnZShzKSBmb3IgaW5zdGFsbGF0aW9uIgorbXNnc3RyICJDc29tYWcob2spIGtpamVsw7Zsw6lzZSB0ZWxlcMOtdMOpc3JlIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1NworbXNnaWQgIk1hcmsgcGFja2FnZShzKSBmb3IgZGVpbnN0YWxsYXRpb24iCittc2dzdHIgIkNzb21hZyhvaykga2lqZWzDtmzDqXNlIGVsdMOhdm9sw610w6FzcmEiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTU4Cittc2dpZCAiTWFyayBwYWNrYWdlKHMpIGZvciBkZWluc3RhbGwgYW5kIHB1cmdlIgorbXNnc3RyICJDc29tYWcob2spIGtpamVsw7Zsw6lzZSBlbHTDoXZvbMOtdMOhc3JhIMOpcyB0w7ZybMOpc3JlIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1OQorbXNnaWQgIk1ha2UgaGlnaGxpZ2h0IG1vcmUgc3BlY2lmaWMiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjAKK21zZ2lkICJNYWtlIGhpZ2hsaWdodCBsZXNzIHNwZWNpZmljIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTYxCittc2dpZCAiU2VhcmNoIGZvciBhIHBhY2thZ2Ugd2hvc2UgbmFtZSBjb250YWlucyBhIHN0cmluZyIKK21zZ3N0ciAiS2VyZXPDqXMgYSBjc29tYWdvayBuZXZlaWJlbiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjIKK21zZ2lkICJSZXBlYXQgbGFzdCBzZWFyY2guIgorbXNnc3RyICJVdG9sc8OzIGtlcmVzw6lzIGlzbcOpdGzDqXNlLiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjMKK21zZ2lkICJTd2FwIHNvcnQgb3JkZXIgcHJpb3JpdHkvc2VjdGlvbiIKK21zZ3N0ciAiUmVuZGV6w6lzIGVsc8WRYmJzw6lnIHZhZ3kgc3pha2FzeiBhbGFwasOhbiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjQKK21zZ2lkICJRdWl0LCBjb25maXJtaW5nLCBhbmQgY2hlY2tpbmcgZGVwZW5kZW5jaWVzIgorbXNnc3RyICJLaWzDqXDDqXMsIG1lZ2VyxZFzw610w6lzIMOpcyBmw7xnZ8WRc8OpZ2VrIGVsbGVuxZFyesOpc2UiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY1Cittc2dpZCAiUXVpdCwgY29uZmlybWluZyB3aXRob3V0IGNoZWNrIgorbXNnc3RyICJLaWzDqXDDqXMsIG1lZ2VyxZFzw610w6lzIGVsbGVuxZFyesOpcyBuw6lsa8O8bCIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjYKK21zZ2lkICJRdWl0LCByZWplY3RpbmcgY29uZmxpY3QvZGVwZW5kZW5jeSBzdWdnZXN0aW9ucyIKK21zZ3N0ciAiS2lsw6lww6lzLCDDvHRrw7Z6w6lzL2bDvGdnxZFzw6lnaSBqYXZhc2xhdG9rIGVsdmV0w6lzZSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjcKK21zZ2lkICJBYm9ydCAtIHF1aXQgd2l0aG91dCBtYWtpbmcgY2hhbmdlcyIKK21zZ3N0ciAiRWx2ZXTDqXMgLSBraWzDqXDDqXMgdsOhbHRvesOhc29rIG7DqWxrw7xsIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2OAorbXNnaWQgIlJldmVydCB0byBvbGQgc3RhdGUgZm9yIGFsbCBwYWNrYWdlcyIKK21zZ3N0ciAiQ3NvbWFnb2sgcsOpZ2kgw6FsbGFwb3TDoW5hayB2aXNzemHDoWxsw610w6FzYSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjkKK21zZ2lkICJSZXZlcnQgdG8gc3VnZ2VzdGVkIHN0YXRlIGZvciBhbGwgcGFja2FnZXMiCittc2dzdHIgIkNzb21hZ29rIGphdmFzb2x0IMOhbGxhcG90w6FuYWsgdmlzc3phw6FsbMOtdMOhc2EiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTcwCittc2dpZCAiUmV2ZXJ0IHRvIGRpcmVjdGx5IHJlcXVlc3RlZCBzdGF0ZSBmb3IgYWxsIHBhY2thZ2VzIgorbXNnc3RyICJDc29tYWdvayBrw7Z6dmV0bGVuw7xsIGvDqXJ0IMOhbGxhcG90w6FuYWsgdmlzc3phw6FsbMOtdMOhc2EiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTcxCisjLCBmdXp6eQorbXNnaWQgIlJldmVydCB0byBjdXJyZW50bHkgaW5zdGFsbGVkIHN0YXRlIGZvciBhbGwgcGFja2FnZXMiCittc2dzdHIgIkNzb21hZ29rIGvDtnp2ZXRsZW7DvGwga8OpcnQgw6FsbGFwb3TDoW5hayB2aXNzemHDoWxsw610w6FzYSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNzQKK21zZ2lkICJTZWxlY3QgY3VycmVudGx5LWhpZ2hsaWdodGVkIGFjY2VzcyBtZXRob2QiCittc2dzdHIgIk1vc3Qga2llbWVsdCBob3p6w6Fmw6lyw6lzaSBtw7NkIGtpdsOhbGFzenTDoXNhIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE3NQorbXNnaWQgIlF1aXQgd2l0aG91dCBjaGFuZ2luZyBzZWxlY3RlZCBhY2Nlc3MgbWV0aG9kIgorbXNnc3RyICJLaWzDqXDDqXMgYSB2w6FsYXN6dG90dCBob3p6w6Fmw6lyw6lzaSBtw7NkIHbDoWx0b3p0YXTDoXNhIG7DqWxrw7xsIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjI5Cittc2dpZCAiS2V5c3Ryb2tlcyIKK21zZ3N0ciAiQmlsbGVudHnFsWsiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MjkKK21zZ2lkICIiCisiTW90aW9uIGtleXM6IE5leHQvUHJldmlvdXMsIFRvcC9FbmQsIFVwL0Rvd24sIEJhY2t3YXJkcy9Gb3J3YXJkczpcbiIKKyIgIGosIERvd24tYXJyb3cgICAgICAgICBrLCBVcC1hcnJvdyAgICAgICAgICAgICBtb3ZlIGhpZ2hsaWdodFxuIgorIiAgTiwgUGFnZS1kb3duLCBTcGFjZSAgIFAsIFBhZ2UtdXAsIEJhY2tzcGFjZSAgIHNjcm9sbCBsaXN0IGJ5IDEgcGFnZVxuIgorIiAgXm4gICAgICAgICAgICAgICAgICAgIF5wICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBsaXN0IGJ5IDEgbGluZVxuIgorIiAgdCwgSG9tZSAgICAgICAgICAgICAgIGUsIEVuZCAgICAgICAgICAgICAgICAgIGp1bXAgdG8gdG9wL2VuZCBvZiBsaXN0XG4iCisiICB1ICAgICAgICAgICAgICAgICAgICAgZCAgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGluZm8gYnkgMSBwYWdlXG4iCisiICBedSAgICAgICAgICAgICAgICAgICAgXmQgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGluZm8gYnkgMSBsaW5lXG4iCisiICBCLCBMZWZ0LWFycm93ICAgICAgICAgRiwgUmlnaHQtYXJyb3cgICAgICAgICAgcGFuIGRpc3BsYXkgYnkgMS8zIHNjcmVlblxuIgorIiAgXmIgICAgICAgICAgICAgICAgICAgIF5mICAgICAgICAgICAgICAgICAgICAgIHBhbiBkaXNwbGF5IGJ5IDEgY2hhcmFjdGVyXG4iCisiXG4iCisiTWFyayBwYWNrYWdlcyBmb3IgbGF0ZXIgcHJvY2Vzc2luZzpcbiIKKyIgKywgSW5zZXJ0ICBpbnN0YWxsIG9yIHVwZ3JhZGUgICAgICA9LCBIICBob2xkIGluIHByZXNlbnQgc3RhdGVcbiIKKyIgLSwgRGVsZXRlICByZW1vdmUgICAgICAgICAgICAgICAgICA6LCBHICB1bmhvbGQ6IHVwZ3JhZGUgb3IgbGVhdmUgIgorInVuaW5zdGFsbGVkXG4iCisiIF8gICAgICAgICAgcmVtb3ZlICYgcHVyZ2UgY29uZmlnXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTWlzY2VsbGFuZW91czpcbiIKKyJRdWl0LCBleGl0LCBvdmVyd3JpdGUgKG5vdGUgY2FwaXRhbHMhKTogICAgICAgPywgRjEgcmVxdWVzdCBoZWxwIChhbHNvICIKKyJIZWxwKVxuIgorIiBSZXR1cm4gIENvbmZpcm0sIHF1aXQgKGNoZWNrIGRlcGVuZGVuY2llcykgICBpLCBJICB0b2dnbGUvY3ljbGUgaW5mbyAiCisiZGlzcGxheXNcbiIKKyIgICBRICAgICBDb25maXJtLCBxdWl0IChvdmVycmlkZSBkZXAucykgICAgICAgbywgTyAgY3ljbGUgdGhyb3VnaCBzb3J0ICIKKyJvcHRpb25zXG4iCisiIFgsIEVzYyAgZVhpdCwgYWJhbmRvbmluZyBhbnkgY2hhbmdlcyBtYWRlICAgIHYsIFYgIGNoYW5nZSBzdGF0dXMgZGlzcGxheSAiCisib3B0c1xuIgorIiAgIFIgICAgIFJldmVydCB0byBzdGF0ZSBiZWZvcmUgdGhpcyBsaXN0ICAgICAgXmwgICByZWRyYXcgZGlzcGxheVxuIgorIiAgIFUgICAgIHNldCBhbGwgdG8gc1VnZ2VzdGVkIHN0YXRlICAgICAgICAgICAgIC8gICBzZWFyY2ggKFJldHVybiB0byAiCisiY2FuY2VsKVxuIgorIiAgIEQgICAgIHNldCBhbGwgdG8gRGlyZWN0bHkgcmVxdWVzdGVkIHN0YXRlICBuLCBcXCAgcmVwZWF0IGxhc3Qgc2VhcmNoXG4iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo1NQorbXNnaWQgIkludHJvZHVjdGlvbiB0byBwYWNrYWdlIHNlbGVjdGlvbnMiCittc2dzdHIgIkJldmV6ZXTDqXMgYSBjc29tYWd2w6FsYXN6dMOhc2JhIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjU1Cittc2dpZCAiIgorIldlbGNvbWUgdG8gZHNlbGVjdCdzIG1haW4gcGFja2FnZSBsaXN0aW5nLlxuIgorIlxuIgorIllvdSB3aWxsIGJlIHByZXNlbnRlZCB3aXRoIGEgbGlzdCBvZiBwYWNrYWdlcyB3aGljaCBhcmUgaW5zdGFsbGVkIG9yICIKKyJhdmFpbGFibGVcbiIKKyJmb3IgaW5zdGFsbGF0aW9uLiAgWW91IGNhbiBuYXZpZ2F0ZSBhcm91bmQgdGhlIGxpc3QgdXNpbmcgdGhlIGN1cnNvciBrZXlzLFxuIgorIm1hcmsgcGFja2FnZXMgZm9yIGluc3RhbGxhdGlvbiAodXNpbmcgYCsnKSBvciBkZWluc3RhbGxhdGlvbiAodXNpbmcgYC0nKS5cbiIKKyJQYWNrYWdlcyBjYW4gYmUgbWFya2VkIGVpdGhlciBzaW5nbHkgb3IgaW4gZ3JvdXBzOyBpbml0aWFsbHkgeW91IHdpbGwgc2VlICIKKyJ0aGF0XG4iCisidGhlIGxpbmUgYEFsbCBwYWNrYWdlcycgaXMgc2VsZWN0ZWQuICBgKycsIGAtJyBhbmQgc28gb24gd2lsbCBhZmZlY3QgYWxsICIKKyJ0aGVcbiIKKyJwYWNrYWdlcyBkZXNjcmliZWQgYnkgdGhlIGhpZ2hsaWdodGVkIGxpbmUuXG4iCisiXG4iCisiU29tZSBvZiB5b3VyIGNob2ljZXMgd2lsbCBjYXVzZSBjb25mbGljdHMgb3IgZGVwZW5kZW5jeSBwcm9ibGVtczsgeW91IHdpbGwgIgorImJlXG4iCisiZ2l2ZW4gYSBzdWItbGlzdCBvZiB0aGUgcmVsZXZhbnQgcGFja2FnZXMsIHNvIHRoYXQgeW91IGNhbiBzb2x2ZSB0aGUgIgorInByb2JsZW1zLlxuIgorIlxuIgorIllvdSBzaG91bGQgcmVhZCB0aGUgbGlzdCBvZiBrZXlzIGFuZCB0aGUgZXhwbGFuYXRpb25zIG9mIHRoZSBkaXNwbGF5LlxuIgorIk11Y2ggb24tbGluZSBoZWxwIGlzIGF2YWlsYWJsZSwgcGxlYXNlIG1ha2UgdXNlIG9mIGl0IC0gcHJlc3MgYD8nIGF0XG4iCisiYW55IHRpbWUgZm9yIGhlbHAuXG4iCisiXG4iCisiV2hlbiB5b3UgaGF2ZSBmaW5pc2hlZCBzZWxlY3RpbmcgcGFja2FnZXMsIHByZXNzIDxlbnRlcj4gdG8gY29uZmlybSAiCisiY2hhbmdlcyxcbiIKKyJvciBgWCcgdG8gcXVpdCB3aXRob3V0IHNhdmluZyBjaGFuZ2VzLiBBIGZpbmFsIGNoZWNrIG9uIGNvbmZsaWN0cyBhbmRcbiIKKyJkZXBlbmRlbmNpZXMgd2lsbCBiZSBkb25lIC0gaGVyZSB0b28geW91IG1heSBzZWUgYSBzdWJsaXN0LlxuIgorIlxuIgorIlByZXNzIDxzcGFjZT4gdG8gbGVhdmUgaGVscCBhbmQgZW50ZXIgdGhlIGxpc3Qgbm93LlxuIgorbXNnc3RyICIiCisiw5xkdiBhIGRzZWxlY3QgZsWRIGNzb21hZ2xpc3TDoWrDoWJhbi5cbiIKKyJcbiIKKyJNaXV0w6FuIHRvdsOhYmJsw6lwdMOpbCBlZ3kgbGlzdMOhdCBsw6F0c3ogYSB0ZWxlcMOtdGV0dCB2YWd5IHRlbGVww610w6lzcmUgZWzDqXJoZXTFkVxuIgorImNzb21hZ29rcsOzbC4gIEl0dCBhIGt1cnpvciBiaWxsZW50ecWxa2tlbCBtb3pvZ2hhdHN6LFxuIgorIm1lZ2plbMO2bGhldHN6IGNzb21hZ29rYXQgdGVsZXDDrXTDqXNyZSAoYSArIGJpbGxlbnR5xbF2ZWwpIHZhZ3kgdMO2cmzDqXNyZSAoLSkuXG4iCisiQSBjc29tYWdvayBraWplbMO2bGhldMWRayBlZ3llZMO8bCB2YWd5IGNzb3BvcnRiYW47IHDDqWxkw6F1bCBlbMWRc3rDtnIgYVxuIgorImBNaW5kZW4gY3NvbWFnJyBzb3JvbiBmb2dzeiDDoWxsbmkuIEEgYCsnLCBgLScgw6lzIGEgdMO2YmJpIGEga2llbWVsdCBzb3JcbiIKKyLDtnNzemVzIGNzb21hZ2rDoXJhIGhhdMOhc3NhbCBsZXN6LlxuIgorIlxuIgorIkVneWVzIHbDoWxhc3p0w6Fzb2sgw7x0a8O2esOpc2VraGV6IHZhZ3kgZsO8Z2fFkXPDqWdpIGdvbmRva2hveiB2ZXpldG5laztcbiIKKyJla2tvciBtZWdrYXBvZCBheiDDqXJpbnRldHQgY3NvbWFnb2sgYWwtbGlzdMOhasOhdCwgw61neSBlemVrIG1lZ29sZGhhdMOzay5cbiIKKyJcbiIKKyJNZWdrYXBvZCBhIGJpbGxlbnR5xbFrIGxpc3TDoWrDoXQgw6lzIGEgcG9udG9zIG1hZ3lhcsOhemF0b3QuXG4iCisiVMO2YmIgU8O6Z8OzIGlzIGVsw6lyaGV0xZEsIGhhc3puw6FsZCBiw6F0cmFuIGV6ZWtldCEgLSBtaW5kaWcgw7xzZCBsZSBhIGA/Jy1ldFxuIgorImEgc2Vnw610c8OpZ8OpcnQuXG4iCisiXG4iCisiQSBjc29tYWdraWplbMO2bMOpcyB2w6lnZXp0w6l2ZWwsIMO8c2QgbGUgYXogPGVudGVyPi10IGEgdsOhbHRvesOhc29rICIKKyJtZWdlcsWRc8OtdMOpc8OpaGV6LFxuIgorInZhZ3kgYXogYFgnLWV0IGEgdsOhbHRvesOhc29rIG1lbnTDqXNlIG7DqWxrw7xsaSBraWzDqXDDqXNoZXouIEF6IMO8dGvDtnrDqXNlayDDqXNcbiIKKyJmw7xnZ8WRc8OpZ2VrIHbDqWdzxZEgZWxsZW7FkXJ6w6lzZSBtZWd0w7ZydMOpbmlrIC0gaXNtw6l0IGVneSBsaXN0w6F0IGthcHN6LlxuIgorIsOcc2QgbGUgYSA8c3rDs2vDtno+IGJpbGxlbnR5xbF0IGEgc8O6Z8OzIGVsaGFnecOhc8OhaG96IMOpcyBsw6lwaiBiZSBhIGxpc3TDoWJhIG1vc3QhXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6ODAKK21zZ2lkICJJbnRyb2R1Y3Rpb24gdG8gcmVhZC1vbmx5IHBhY2thZ2UgbGlzdCBicm93c2VyIgorbXNnc3RyICJCZXZlemV0w6lzIGEgY3Nhay1vbHZhc2hhdMOzIGNzb21hZyBsaXN0YSBiw7ZuZ8Opc3rDqXNiZSIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo4MAorbXNnaWQgIiIKKyJXZWxjb21lIHRvIGRzZWxlY3QncyBtYWluIHBhY2thZ2UgbGlzdGluZy5cbiIKKyJcbiIKKyJZb3Ugd2lsbCBiZSBwcmVzZW50ZWQgd2l0aCBhIGxpc3Qgb2YgcGFja2FnZXMgd2hpY2ggYXJlIGluc3RhbGxlZCBvciAiCisiYXZhaWxhYmxlXG4iCisiZm9yIGluc3RhbGxhdGlvbi4gIFNpbmNlIHlvdSBkbyBub3QgaGF2ZSB0aGUgcHJpdmlsZWdlIG5lY2Vzc2FyeSB0byB1cGRhdGVcbiIKKyJwYWNrYWdlIHN0YXRlcywgeW91IGFyZSBpbiBhIHJlYWQtb25seSBtb2RlLiAgWW91IGNhbiBuYXZpZ2F0ZSBhcm91bmQgdGhlXG4iCisibGlzdCB1c2luZyB0aGUgY3Vyc29yIGtleXMgKHBsZWFzZSBzZWUgdGhlIGBLZXlzdHJva2VzJyBoZWxwIHNjcmVlbiksICIKKyJvYnNlcnZlXG4iCisidGhlIHN0YXR1cyBvZiB0aGUgcGFja2FnZXMgYW5kIHJlYWQgaW5mb3JtYXRpb24gYWJvdXQgdGhlbS5cbiIKKyJcbiIKKyJZb3Ugc2hvdWxkIHJlYWQgdGhlIGxpc3Qgb2Yga2V5cyBhbmQgdGhlIGV4cGxhbmF0aW9ucyBvZiB0aGUgZGlzcGxheS5cbiIKKyJNdWNoIG9uLWxpbmUgaGVscCBpcyBhdmFpbGFibGUsIHBsZWFzZSBtYWtlIHVzZSBvZiBpdCAtIHByZXNzIGA/JyBhdFxuIgorImFueSB0aW1lIGZvciBoZWxwLlxuIgorIlxuIgorIldoZW4geW91IGhhdmUgZmluaXNoZWQgYnJvd3NpbmcsIHByZXNzIGBRJyBvciA8ZW50ZXI+IHRvIHF1aXQuXG4iCisiXG4iCisiUHJlc3MgPHNwYWNlPiB0byBsZWF2ZSBoZWxwIGFuZCBlbnRlciB0aGUgbGlzdCBub3cuXG4iCittc2dzdHIgIiIKKyLDnGR2IGEgZHNlbGVjdCBmxZEgY3NvbWFnbGlzdMOhasOhYmFuLlxuIgorIlxuIgorIk1pdXTDoW4gdG92w6FiYmzDqXB0w6lsIGVneSBsaXN0w6F0IGzDoXRzeiBhIHRlbGVww610ZXR0IHZhZ3kgdGVsZXDDrXTDqXNyZSBlbMOpcmhldMWRXG4iCisiY3NvbWFnb2tyw7NsLiAgTWl2ZWwgbW9zdCBqb2dvZCBhIGNzb21hZ8OhbGxhcG90b2sgZnJpc3PDrXTDqXPDqXJlXG4iCisiY3Nhay1vbHZhc2hhdMOzIG3Ds2RiYW4gdmFneS4gQSBsaXN0w6FiYW5cbiIKKyJhIGt1cnpvcmJpbGxlbnR5xbFra2VsIG1vem9naGF0c3ogKGzDoXNkIGEgYEJpbGxlbnR5xbFrJyBzw7pnw7N0KSwgbWVnbsOpemhldGVkXG4iCisiYSBjc29tYWdvayDDoWxsYXBvdMOhdCDDqXMgaW5mb3Jtw6FjacOza2F0IG9sdmFzaGF0c3ogcsOzbHVrLlxuIgorIlxuIgorIk1lZ2thcG9kIGEgYmlsbGVudHnFsWsgbGlzdMOhasOhdCDDqXMgYSBwb250b3MgbWFneWFyw6F6YXRvdC5cbiIKKyJUw7ZiYiBTw7pnw7MgaXMgZWzDqXJoZXTFkSwgaGFzem7DoWxkIGLDoXRyYW4gZXpla2V0ISAtIG1pbmRpZyDDvHNkIGxlIGEgYD8nLWV0XG4iCisiYSBzZWfDrXRzw6lnw6lydC5cbiIKKyJcbiIKKyJBIGLDtm5nw6lzesOpcyB2w6lnZXp0w6l2ZWwsIMO8c2QgbGUgYSBgUSctdCA8ZW50ZXI+LXQgYSBraWzDqXDDqXNoZXouXG4iCisiXG4iCisiw5xzZCBsZSBhIDxzesOza8O2ej4gYmlsbGVudHnFsXQgYSBzw7pnw7MgZWxoYWd5w6Fzw6Fob3ogw6lzIGzDqXBqIGJlIGEgbGlzdMOhYmEgbW9zdCFcbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo5OQorbXNnaWQgIkludHJvZHVjdGlvbiB0byBjb25mbGljdC9kZXBlbmRlbmN5IHJlc29sdXRpb24gc3ViLWxpc3QiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo5OQorbXNnaWQgIiIKKyJEZXBlbmRlbmN5L2NvbmZsaWN0IHJlc29sdXRpb24gLSBpbnRyb2R1Y3Rpb24uXG4iCisiXG4iCisiT25lIG9yIG1vcmUgb2YgeW91ciBjaG9pY2VzIGhhdmUgcmFpc2VkIGEgY29uZmxpY3Qgb3IgZGVwZW5kZW5jeSBwcm9ibGVtIC1cbiIKKyJzb21lIHBhY2thZ2VzIHNob3VsZCBvbmx5IGJlIGluc3RhbGxlZCBpbiBjb25qdW5jdGlvbiB3aXRoIGNlcnRhaW4gb3RoZXJzLCAiCisiYW5kXG4iCisic29tZSBjb21iaW5hdGlvbnMgb2YgcGFja2FnZXMgbWF5IG5vdCBiZSBpbnN0YWxsZWQgdG9nZXRoZXIuXG4iCisiXG4iCisiWW91IHdpbGwgc2VlIGEgc3ViLWxpc3QgY29udGFpbmluZyB0aGUgcGFja2FnZXMgaW52b2x2ZWQuICBUaGUgYm90dG9tIGhhbGYgIgorIm9mXG4iCisidGhlIGRpc3BsYXkgc2hvd3MgcmVsZXZhbnQgY29uZmxpY3RzIGFuZCBkZXBlbmRlbmNpZXM7IHVzZSBgaScgdG8gY3ljbGUgIgorImJldHdlZW5cbiIKKyJ0aGF0LCB0aGUgcGFja2FnZSBkZXNjcmlwdGlvbnMgYW5kIHRoZSBpbnRlcm5hbCBjb250cm9sIGluZm9ybWF0aW9uLlxuIgorIlxuIgorIkEgc2V0IG9mIGBzdWdnZXN0ZWQnIHBhY2thZ2VzIGhhcyBiZWVuIGNhbGN1bGF0ZWQsIGFuZCB0aGUgaW5pdGlhbCBtYXJraW5ncyAiCisiaW5cbiIKKyJ0aGlzIHN1Yi1saXN0IGhhdmUgYmVlbiBzZXQgdG8gbWF0Y2ggdGhvc2UsIHNvIHlvdSBjYW4ganVzdCBoaXQgUmV0dXJuIHRvXG4iCisiYWNjZXB0IHRoZSBzdWdnZXN0aW9ucyBpZiB5b3Ugd2lzaC4gIFlvdSBtYXkgYWJvcnQgdGhlIGNoYW5nZShzKSB3aGljaCAiCisiY2F1c2VkXG4iCisidGhlIHByb2JsZW0ocyksIGFuZCBnbyBiYWNrIHRvIHRoZSBtYWluIGxpc3QsIGJ5IHByZXNzaW5nIGNhcGl0YWwgYFgnLlxuIgorIlxuIgorIllvdSBjYW4gYWxzbyBtb3ZlIGFyb3VuZCB0aGUgbGlzdCBhbmQgY2hhbmdlIHRoZSBtYXJraW5ncyBzbyB0aGF0IHRoZXkgYXJlICIKKyJtb3JlXG4iCisibGlrZSB3aGF0IHlvdSB3YW50LCBhbmQgeW91IGNhbiBgcmVqZWN0JyBteSBzdWdnZXN0aW9ucyBieSB1c2luZyB0aGUgIgorImNhcGl0YWxcbiIKKyJgRCcgb3IgYFInIGtleXMgKHNlZSB0aGUga2V5YmluZGluZ3MgaGVscCBzY3JlZW4pLiAgWW91IGNhbiB1c2UgY2FwaXRhbCBgUScgIgorInRvXG4iCisiZm9yY2UgbWUgdG8gYWNjZXB0IHRoZSBzaXR1YXRpb24gY3VycmVudGx5IGRpc3BsYXllZCwgaW4gY2FzZSB5b3Ugd2FudCB0b1xuIgorIm92ZXJyaWRlIGEgcmVjb21tZW5kYXRpb24gb3IgdGhpbmsgdGhhdCB0aGUgcHJvZ3JhbSBpcyBtaXN0YWtlbi5cbiIKKyJcbiIKKyJQcmVzcyA8c3BhY2U+IHRvIGxlYXZlIGhlbHAgYW5kIGVudGVyIHRoZSBzdWItbGlzdDsgcmVtZW1iZXI6IHByZXNzIGA/JyBmb3IgIgorImhlbHAuXG4iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxMjUKK21zZ2lkICJEaXNwbGF5LCBwYXJ0IDE6IHBhY2thZ2UgbGlzdGluZyBhbmQgc3RhdHVzIGNoYXJzIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTI1Cittc2dpZCAiIgorIlRoZSB0b3AgaGFsZiBvZiB0aGUgc2NyZWVuIHNob3dzIGEgbGlzdCBvZiBwYWNrYWdlcy4gIEZvciBlYWNoIHBhY2thZ2UgeW91ICIKKyJzZWVcbiIKKyJmb3VyIGNvbHVtbnMgZm9yIGl0cyBjdXJyZW50IHN0YXR1cyBvbiB0aGUgc3lzdGVtIGFuZCBtYXJrLiAgSW4gdGVyc2UgbW9kZSAiCisiKHVzZVxuIgorImB2JyB0byB0b2dnbGUgdmVyYm9zZSBkaXNwbGF5KSB0aGVzZSBhcmUgc2luZ2xlIGNoYXJhY3RlcnMsIGZyb20gbGVmdCB0byAiCisicmlnaHQ6XG4iCisiXG4iCisiIEVycm9yIGZsYWc6IFNwYWNlIC0gbm8gZXJyb3IgKGJ1dCBwYWNrYWdlIG1heSBiZSBpbiBicm9rZW4gc3RhdGUgLSBzZWUgIgorImJlbG93KVxuIgorIiAgICAgICAgICAgICAgYFInICAtIHNlcmlvdXMgZXJyb3IgZHVyaW5nIGluc3RhbGxhdGlvbiwgbmVlZHMgIgorInJlaW5zdGFsbGF0aW9uO1xuIgorIiBJbnN0YWxsZWQgc3RhdGU6ICAgICBTcGFjZSAgICAtIG5vdCBpbnN0YWxsZWQ7XG4iCisiICAgICAgICAgICAgICAgICAgICAgICBgKicgICAgIC0gaW5zdGFsbGVkO1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgYC0nICAgICAtIG5vdCBpbnN0YWxsZWQgYnV0IGNvbmZpZyBmaWxlcyByZW1haW47XG4iCisiICAgcGFja2FnZXMgaW4gdGhlc2UgeyBgVScgICAgIC0gdW5wYWNrZWQgYnV0IG5vdCB5ZXQgY29uZmlndXJlZDtcbiIKKyIgICBzdGF0ZXMgYXJlIG5vdCAgICB7IGBDJyAgICAgLSBoYWxmLWNvbmZpZ3VyZWQgKGFuIGVycm9yIGhhcHBlbmVkKTtcbiIKKyIgICAocXVpdGUpIHByb3Blcmx5ICB7IGBJJyAgICAgLSBoYWxmLWluc3RhbGxlZCAoYW4gZXJyb3IgaGFwcGVuZWQpO1xuIgorIiAgIGluc3RhbGxlZCAgICAgICAgIHsgYFcnLGB0JyAtIHRyaWdnZXJzIGFyZSBhd2FpdGVkIHJlc3AuIHBlbmRpbmcuXG4iCisiIE9sZCBtYXJrOiB3aGF0IHdhcyByZXF1ZXN0ZWQgZm9yIHRoaXMgcGFja2FnZSBiZWZvcmUgcHJlc2VudGluZyB0aGlzIGxpc3Q7XG4iCisiIE1hcms6IHdoYXQgaXMgcmVxdWVzdGVkIGZvciB0aGlzIHBhY2thZ2U6XG4iCisiICBgKic6IG1hcmtlZCBmb3IgaW5zdGFsbGF0aW9uIG9yIHVwZ3JhZGU7XG4iCisiICBgLSc6IG1hcmtlZCBmb3IgcmVtb3ZhbCwgYnV0IGFueSBjb25maWd1cmF0aW9uIGZpbGVzIHdpbGwgcmVtYWluO1xuIgorIiAgYD0nOiBvbiBob2xkOiBwYWNrYWdlIHdpbGwgbm90IGJlIHByb2Nlc3NlZCBhdCBhbGw7XG4iCisiICBgXyc6IG1hcmtlZCBmb3IgcHVyZ2UgY29tcGxldGVseSAtIGV2ZW4gcmVtb3ZlIGNvbmZpZ3VyYXRpb247XG4iCisiICBgbic6IHBhY2thZ2UgaXMgbmV3IGFuZCBoYXMgeWV0IHRvIGJlIG1hcmtlZCBmb3IgaW5zdGFsbC9yZW1vdmUvJmMuXG4iCisiXG4iCisiQWxzbyBkaXNwbGF5ZWQgYXJlIGVhY2ggcGFja2FnZSdzIFByaW9yaXR5LCBTZWN0aW9uLCBuYW1lLCBpbnN0YWxsZWQgYW5kXG4iCisiYXZhaWxhYmxlIHZlcnNpb24gbnVtYmVycyAoc2hpZnQtViB0byBkaXNwbGF5L2hpZGUpIGFuZCBzdW1tYXJ5ICIKKyJkZXNjcmlwdGlvbi5cbiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjE1MgorbXNnaWQgIkRpc3BsYXksIHBhcnQgMjogbGlzdCBoaWdobGlnaHQ7IGluZm9ybWF0aW9uIGRpc3BsYXkiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxNTIKK21zZ2lkICIiCisiKiBIaWdobGlnaHQ6IE9uZSBsaW5lIGluIHRoZSBwYWNrYWdlIGxpc3Qgd2lsbCBiZSBoaWdobGlnaHRlZC4gIEl0ICIKKyJpbmRpY2F0ZXNcbiIKKyIgIHdoaWNoIHBhY2thZ2Uocykgd2lsbCBiZSBhZmZlY3RlZCBieSBwcmVzc2VzIG9mIGArJywgYC0nIGFuZCBgXycuXG4iCisiXG4iCisiKiBUaGUgZGl2aWRpbmcgbGluZSBpbiB0aGUgbWlkZGxlIG9mIHRoZSBzY3JlZW4gc2hvd3MgYSBicmllZiBleHBsYW5hdGlvbiAiCisib2ZcbiIKKyIgIHRoZSBzdGF0dXMgb2YgdGhlIGN1cnJlbnRseS1oaWdobGlnaHRlZCBwYWNrYWdlLCBvciBhIGRlc2NyaXB0aW9uIG9mICIKKyJ3aGljaFxuIgorIiAgZ3JvdXAgaXMgaGlnaGxpZ2h0ZWQgaWYgYSBncm91cCBsaW5lIGlzLiAgSWYgeW91IGRvbid0IHVuZGVyc3RhbmQgdGhlXG4iCisiICBtZWFuaW5nIG9mIHNvbWUgb2YgdGhlIHN0YXR1cyBjaGFyYWN0ZXJzIGRpc3BsYXllZCwgZ28gdG8gdGhlIHJlbGV2YW50XG4iCisiICBwYWNrYWdlIGFuZCBsb29rIGF0IHRoaXMgZGl2aWRlciBsaW5lLCBvciB1c2UgdGhlIGB2JyBrZXkgZm9yIGEgdmVyYm9zZVxuIgorIiAgZGlzcGxheSAocHJlc3MgYHYnIGFnYWluIHRvIGdvIGJhY2sgdG8gdGhlIHRlcnNlIGRpc3BsYXkpLlxuIgorIlxuIgorIiogVGhlIGJvdHRvbSBvZiB0aGUgc2NyZWVuIHNob3dzIG1vcmUgaW5mb3JtYXRpb24gYWJvdXQgdGhlXG4iCisiICBjdXJyZW50bHktaGlnaGxpZ2h0ZWQgcGFja2FnZSAoaWYgdGhlcmUgaXMgb25seSBvbmUpLlxuIgorIlxuIgorIiAgSXQgY2FuIHNob3cgYW4gZXh0ZW5kZWQgZGVzY3JpcHRpb24gb2YgdGhlIHBhY2thZ2UsIHRoZSBpbnRlcm5hbCBwYWNrYWdlXG4iCisiICBjb250cm9sIGRldGFpbHMgKGVpdGhlciBmb3IgdGhlIGluc3RhbGxlZCBvciBhdmFpbGFibGUgdmVyc2lvbiBvZiB0aGVcbiIKKyIgIHBhY2thZ2UpLCBvciBpbmZvcm1hdGlvbiBhYm91dCBjb25mbGljdHMgYW5kIGRlcGVuZGVuY2llcyBpbnZvbHZpbmcgdGhlXG4iCisiICBjdXJyZW50IHBhY2thZ2UgKGluIGNvbmZsaWN0L2RlcGVuZGVuY3kgcmVzb2x1dGlvbiBzdWJsaXN0cykuXG4iCisiXG4iCisiICBVc2UgdGhlIGBpJyBrZXkgdG8gY3ljbGUgdGhyb3VnaCB0aGUgZGlzcGxheXMsIGFuZCBgSScgdG8gaGlkZSB0aGVcbiIKKyIgIGluZm9ybWF0aW9uIGRpc3BsYXkgb3IgZXhwYW5kIGl0IHRvIHVzZSBhbG1vc3QgYWxsIG9mIHRoZSBzY3JlZW4uXG4iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxNzYKK21zZ2lkICJJbnRyb2R1Y3Rpb24gdG8gbWV0aG9kIHNlbGVjdGlvbiBkaXNwbGF5IgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTc2Cittc2dpZCAiIgorImRzZWxlY3QgYW5kIGRwa2cgY2FuIGRvIGF1dG9tYXRpYyBpbnN0YWxsYXRpb24sIGxvYWRpbmcgdGhlIHBhY2thZ2UgZmlsZXMgdG8gIgorImJlXG4iCisiaW5zdGFsbGVkIGZyb20gb25lIG9mIGEgbnVtYmVyIG9mIGRpZmZlcmVudCBwb3NzaWJsZSBwbGFjZXMuXG4iCisiXG4iCisiVGhpcyBsaXN0IGFsbG93cyB5b3UgdG8gc2VsZWN0IG9uZSBvZiB0aGVzZSBpbnN0YWxsYXRpb24gbWV0aG9kcy5cbiIKKyJcbiIKKyJNb3ZlIHRoZSBoaWdobGlnaHQgdG8gdGhlIG1ldGhvZCB5b3Ugd2lzaCB0byB1c2UsIGFuZCBoaXQgRW50ZXIuICBZb3Ugd2lsbCAiCisidGhlblxuIgorImJlIHByb21wdGVkIGZvciB0aGUgaW5mb3JtYXRpb24gcmVxdWlyZWQgdG8gZG8gdGhlIGluc3RhbGxhdGlvbi5cbiIKKyJcbiIKKyJBcyB5b3UgbW92ZSB0aGUgaGlnaGxpZ2h0IGEgZGVzY3JpcHRpb24gb2YgZWFjaCBtZXRob2QsIHdoZXJlIGF2YWlsYWJsZSwgaXNcbiIKKyJkaXNwbGF5ZWQgaW4gdGhlIGJvdHRvbSBoYWxmIG9mIHRoZSBzY3JlZW4uXG4iCisiXG4iCisiSWYgeW91IHdpc2ggdG8gcXVpdCB3aXRob3V0IGNoYW5naW5nIGFueXRoaW5nIHVzZSB0aGUgYHgnIGtleSB3aGlsZSBpbiB0aGUgIgorImxpc3RcbiIKKyJvZiBpbnN0YWxsYXRpb24gbWV0aG9kcy5cbiIKKyJcbiIKKyJBIGZ1bGwgbGlzdCBvZiBrZXlzdHJva2VzIGlzIGF2YWlsYWJsZSBieSBwcmVzc2luZyBgaycgbm93LCBvciBmcm9tIHRoZSAiCisiaGVscFxuIgorIm1lbnUgcmVhY2hhYmxlIGJ5IHByZXNzaW5nIGA/Jy5cbiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjE5NgorbXNnaWQgIktleXN0cm9rZXMgZm9yIG1ldGhvZCBzZWxlY3Rpb24iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxOTYKK21zZ2lkICIiCisiTW90aW9uIGtleXM6IE5leHQvUHJldmlvdXMsIFRvcC9FbmQsIFVwL0Rvd24sIEJhY2t3YXJkcy9Gb3J3YXJkczpcbiIKKyIgIGosIERvd24tYXJyb3cgICAgICAgICBrLCBVcC1hcnJvdyAgICAgICAgICAgICBtb3ZlIGhpZ2hsaWdodFxuIgorIiAgTiwgUGFnZS1kb3duLCBTcGFjZSAgIFAsIFBhZ2UtdXAsIEJhY2tzcGFjZSAgIHNjcm9sbCBsaXN0IGJ5IDEgcGFnZVxuIgorIiAgXm4gICAgICAgICAgICAgICAgICAgIF5wICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBsaXN0IGJ5IDEgbGluZVxuIgorIiAgdCwgSG9tZSAgICAgICAgICAgICAgIGUsIEVuZCAgICAgICAgICAgICAgICAgIGp1bXAgdG8gdG9wL2VuZCBvZiBsaXN0XG4iCisiICB1ICAgICAgICAgICAgICAgICAgICAgZCAgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGluZm8gYnkgMSBwYWdlXG4iCisiICBedSAgICAgICAgICAgICAgICAgICAgXmQgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGluZm8gYnkgMSBsaW5lXG4iCisiICBCLCBMZWZ0LWFycm93ICAgICAgICAgRiwgUmlnaHQtYXJyb3cgICAgICAgICAgcGFuIGRpc3BsYXkgYnkgMS8zIHNjcmVlblxuIgorIiAgXmIgICAgICAgICAgICAgICAgICAgIF5mICAgICAgICAgICAgICAgICAgICAgIHBhbiBkaXNwbGF5IGJ5IDEgY2hhcmFjdGVyXG4iCisiKFRoZXNlIGFyZSB0aGUgc2FtZSBtb3Rpb24ga2V5cyBhcyBpbiB0aGUgcGFja2FnZSBsaXN0IGRpc3BsYXkuKVxuIgorIlxuIgorIlF1aXQ6XG4iCisiIFJldHVybiwgRW50ZXIgICAgc2VsZWN0IHRoaXMgbWV0aG9kIGFuZCBnbyB0byBpdHMgY29uZmlndXJhdGlvbiBkaWFsb2d1ZVxuIgorIiB4LCBYICAgICAgICAgICAgIGV4aXQgd2l0aG91dCBjaGFuZ2luZyBvciBzZXR0aW5nIHVwIHRoZSBpbnN0YWxsYXRpb24gIgorIm1ldGhvZFxuIgorIlxuIgorIk1pc2NlbGxhbmVvdXM6XG4iCisiICA/LCBIZWxwLCBGMSAgICAgIHJlcXVlc3QgaGVscFxuIgorIiBebCAgICAgICAgICAgICAgICByZWRyYXcgZGlzcGxheVxuIgorIiAgLyAgICAgICAgICAgICAgICBzZWFyY2ggKGp1c3QgcmV0dXJuIHRvIGNhbmNlbClcbiIKKyIgIFxcICAgICAgICAgICAgICAgIHJlcGVhdCBsYXN0IHNlYXJjaFxuIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzo2MAorbXNnaWQgIlR5cGUgZHNlbGVjdCAtLWhlbHAgZm9yIGhlbHAuIgorbXNnc3RyICJBIGRzZWxlY3QgLS1oZWxwIGFkamEgYSBzw7pnw7N0IgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQzCittc2dpZCAiYSIKK21zZ3N0ciAiZSIKKworIyBNQVggIEVOTsOJTCAgMy1BTCAhISEhISAgVMOWQkIgS0FSQUtURVIgIQorIyAtIHNhcworIzogZHNlbGVjdC9tYWluLmNjOjE0MworbXNnaWQgIltBXWNjZXNzIgorbXNnc3RyICJbRV1sw6lyw6lzIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQzCittc2dpZCAiQ2hvb3NlIHRoZSBhY2Nlc3MgbWV0aG9kIHRvIHVzZS4iCittc2dzdHIgIlbDoWxhc3N6IGVsw6lyw6lzaSBtw7Nkb3QiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDQKK21zZ2lkICJ1IgorbXNnc3RyICJmIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ0Cittc2dpZCAiW1VdcGRhdGUiCittc2dzdHIgIltGXXJpc3PDrXTDqXMiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDQKK21zZ2lkICJVcGRhdGUgbGlzdCBvZiBhdmFpbGFibGUgcGFja2FnZXMsIGlmIHBvc3NpYmxlLiIKK21zZ3N0ciAiRnJpc3PDrXRpIGF6IGVsw6lyaGV0xZEgY3NvbWFnb2sgbGlzdMOhasOhdCwgaGEgbGVoZXRzw6lnZXMuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ1Cittc2dpZCAicyIKK21zZ3N0ciAidiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NQorbXNnaWQgIltTXWVsZWN0IgorbXNnc3RyICJbVl3DoWxhc3p0w6FzIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ1Cittc2dpZCAiUmVxdWVzdCB3aGljaCBwYWNrYWdlcyB5b3Ugd2FudCBvbiB5b3VyIHN5c3RlbS4iCittc2dzdHIgIkNzb21hZ29rIHbDoWxhc3p0w6FzYSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NgorbXNnaWQgImkiCittc2dzdHIgInQiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDYKK21zZ2lkICJbSV1uc3RhbGwiCittc2dzdHIgIltUXWVsZXDDrXTDqXMiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDYKK21zZ2lkICJJbnN0YWxsIGFuZCB1cGdyYWRlIHdhbnRlZCBwYWNrYWdlcy4iCittc2dzdHIgIkvDqXJ0IGNzb21hZ29rIHRlbGVww610w6lzZSwgZnJpc3PDrXTDqXNlLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NworbXNnaWQgImMiCittc2dzdHIgImIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDcKK21zZ2lkICJbQ11vbmZpZyIKK21zZ3N0ciAiW0JdZcOhbGzDrXTDoXMiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDcKK21zZ2lkICJDb25maWd1cmUgYW55IHBhY2thZ2VzIHRoYXQgYXJlIHVuY29uZmlndXJlZC4iCittc2dzdHIgIkJlw6FsbMOtdGF0bGFuIGNzb21hZ29rIGJlw6FsbMOtdMOhc2EuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ4Cittc2dpZCAiciIKK21zZ3N0ciAibCIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OAorbXNnaWQgIltSXWVtb3ZlIgorbXNnc3RyICJbTF1lc3plZMOpcyIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OAorbXNnaWQgIlJlbW92ZSB1bndhbnRlZCBzb2Z0d2FyZS4iCittc2dzdHIgIk5lbSBrw612w6FudCBzem9mdHZlcmVrIGVsdMOhdm9sw610w6FzYS4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDkKK21zZ2lkICJxIgorbXNnc3RyICJrIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ5Cittc2dpZCAiW1FddWl0IgorbXNnc3RyICJbS11pbMOpcMOpcyIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OQorbXNnaWQgIlF1aXQgZHNlbGVjdC4iCittc2dzdHIgIktpbMOpcMOpcyBhIGRzZWxlY3QgcHJvZ3JhbWLDs2wuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTUwCittc2dpZCAibWVudSIKK21zZ3N0ciAibWVuw7wiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuIGAlcycgcGFja2FnZSBoYW5kbGluZyBmcm9udGVuZCB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICJEZWJpYW4gYCVzJyBjc29tYWdrZXplbMWRIGZlbMO8bGV0ICVzIHZlcnppw7MuXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNTgKK21zZ2lkICIiCisiQ29weXJpZ2h0IChDKSAxOTk0LTE5OTYgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKK21zZ3N0ciAiIgorIkNvcHlyaWdodCAoQykgMTk5NC0xOTk2IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNjIKKyMsIGZ1enp5Cittc2dpZCAiIgorIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgb3JcbiIKKyJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKK21zZ3N0ciAiIgorIkV6IGVneSBTemFiYWQgU3pvZnR2ZXI7IGwuIGEgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgMi1lcyB2YWd5IG5hZ3lvYmJcbiIKKyJ2w6FsdG96YXTDoXQgYSBtw6Fzb2zDoXNpIGZlbHTDqXRlbGVrw6lydC4gIE5JTkNTIGdhcmFuY2lhLlxuIgorIkwuIGEgJXMgIC0tbGljZW5jZSBvcGNpw7N0IGEgc3plcnrFkWkgam9naSDDqXMgbGljZW5jIHLDqXN6bGV0ZWvDqXJ0LlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTcyIGRzZWxlY3QvbWFpbi5jYzoyMjAKK21zZ2lkICI8c3RhbmRhcmQgb3V0cHV0PiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gWzxhY3Rpb24+IC4uLl1cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTg3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMuXG4iCisiICAtLWV4cGVydCAgICAgICAgICAgICAgICAgICBUdXJuIG9uIGV4cGVydCBtb2RlLlxuIgorIiAgLS1kZWJ1ZyA8ZmlsZT4gfCAtRDxmaWxlPiAgVHVybiBvbiBkZWJ1Z2dpbmcsIHNlbmRpbmcgb3V0cHV0IHRvIDxmaWxlPi5cbiIKKyIgIC0tY29sb3VyIHwgLS1jb2xvciBzY3JlZW5wYXJ0Oltmb3JlZ3JvdW5kXSxbYmFja2dyb3VuZF1bOmF0dHJbK2F0dHIrLi5dXVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ29uZmlndXJlIHNjcmVlbiBjb2xvdXJzLlxuIgorIlxuIgorbXNnc3RyICIiCisiTGVoZXTFkXPDqWdlazpcbiIKKyIgIC0tYWRtaW5kaXIgPGvDtm55dnTDoXI+ICAgICAgPGRpcmVjdG9yeT4gaGFzem7DoWxhdGEgJXMgaGVseWV0dC5cbiIKKyIgIC0tZXhwZXJ0ICAgICAgICAgICAgICAgICAgIFN6YWvDqXJ0xZEgbcOzZC5cbiIKKyIgIC0tZGVidWcgPGZpbGU+IHwgLUQ8ZmlsZT4gIEhpYmFrZXJlc8Opcywga2ltZW5ldCBrw7xsZMOpc2UgaWRlOiA8ZsOhamw+LlxuIgorIiAgLS1jb2xvdXIgfCAtLWNvbG9yIGvDqXBlcm55xZFyw6lzejpbZWzFkXTDqXJdLFtow6F0dMOpcl1bOmF0dHJbK2F0dHIrLi5dXVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgS8OpcGVybnnFkXN6w61uZWsgYmXDoWxsw610w6FzYS5cbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE5NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgICBTaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICAgU2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjAxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJBY3Rpb25zOlxuIgorIiAgYWNjZXNzIHVwZGF0ZSBzZWxlY3QgaW5zdGFsbCBjb25maWcgcmVtb3ZlIHF1aXRcbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjA1CisjLCBjLWZvcm1hdAorbXNnaWQgIlNjcmVlbnBhcnRzOlxuIgorbXNnc3RyICJLw6lwZXJuecWRcsOpc3plazpcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjIxMAorIywgYy1mb3JtYXQKK21zZ2lkICJDb2xvdXJzOlxuIgorbXNnc3RyICJTesOtbmVrOlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjE1CisjLCBjLWZvcm1hdAorbXNnaWQgIkF0dHJpYnV0ZXM6XG4iCittc2dzdHIgIkF0dHJpYsO6dHVtb2s6XG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGRuJ3Qgb3BlbiBkZWJ1ZyBmaWxlIGAlLjI1NXMnXG4iCittc2dzdHIgInNpa2VydGVsZW4gYCUuMjU1cycgaGliYWphdsOtdMOzIGbDoWpsIG1lZ255aXTDoXNcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjI1MworIywgYy1mb3JtYXQKK21zZ2lkICJJbnZhbGlkICVzIGAlcydcbiIKK21zZ3N0ciAiw4lydsOpbnl0ZWxlbiAlcyBgJXMnXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyNzAKK21zZ2lkICJzY3JlZW4gcGFydCIKK21zZ3N0ciAia8OpcGVybnnFkXLDqXN6IgorCisjOiBkc2VsZWN0L21haW4uY2M6Mjc2Cittc2dpZCAiTnVsbCBjb2xvdXIgc3BlY2lmaWNhdGlvblxuIgorbXNnc3RyICJuaW5jcyBzesOtbiBtZWdhZHZhXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyODQgZHNlbGVjdC9tYWluLmNjOjI4OQorbXNnaWQgImNvbG91ciIKK21zZ3N0ciAic3rDrW4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyOTcKK21zZ2lkICJjb2xvdXIgYXR0cmlidXRlIgorbXNnc3RyICJzesOtbmF0dHJpYsO6dHVtIgorCisjOiBkc2VsZWN0L21haW4uY2M6MzI5Cittc2dpZCAiVGVybWluYWwgZG9lcyBub3QgYXBwZWFyIHRvIHN1cHBvcnQgY3Vyc29yIGFkZHJlc3NpbmcuXG4iCittc2dzdHIgIsOaZ3kgZmVzdCwgYSB0ZXJtaW7DoWwgbmVtIHTDoW1vZ2F0amEgYSBrdXJ6b3Jjw61tesOpc3QuXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzozMzEKK21zZ2lkICJUZXJtaW5hbCBkb2VzIG5vdCBhcHBlYXIgdG8gc3VwcG9ydCBoaWdobGlnaHRpbmcuXG4iCittc2dzdHIgIsOaZ3kgZmVzdCwgYSB0ZXJtaW7DoWwgbmVtIHTDoW1vZ2F0amEgYSBraWVtZWzDqXN0LlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MzMzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJTZXQgeW91ciBURVJNIHZhcmlhYmxlIGNvcnJlY3RseSwgdXNlIGEgYmV0dGVyIHRlcm1pbmFsLFxuIgorIm9yIG1ha2UgZG8gd2l0aCB0aGUgcGVyLXBhY2thZ2UgbWFuYWdlbWVudCB0b29sICVzLlxuIgorbXNnc3RyICIiCisiSmF2w610c2QgYSBURVJNIHbDoWx0b3rDs3QsIGhhc3puw6FsaiBqb2JiIHRlcm1pbsOhbHQsXG4iCisidmFneSBkb2xnb3p6IGUgcHJvYmzDqW3DoXQgZWxrZXLDvGzFkSBjc29tYWdrZXplbMWRdmVsOiAlcy5cbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjMzNgorbXNnaWQgInRlcm1pbmFsIGxhY2tzIG5lY2Vzc2FyeSBmZWF0dXJlcywgZ2l2aW5nIHVwIgorbXNnc3RyICJhIHRlcm1pbsOhbCBuZW0gYsOtciBhIHN6w7xrc8OpZ2VzIGvDqXBlc3PDqWdla2tlbCwgZmVsYWRvbSIKKworIzogZHNlbGVjdC9tYWluLmNjOjQxNworbXNnaWQgIiIKKyJcbiIKKyJcbiIKKyJNb3ZlIGFyb3VuZCB3aXRoIF5QIGFuZCBeTiwgY3Vyc29yIGtleXMsIGluaXRpYWwgbGV0dGVycywgb3IgZGlnaXRzO1xuIgorIlByZXNzIDxlbnRlcj4gdG8gY29uZmlybSBzZWxlY3Rpb24uICAgXkwgcmVkcmF3cyBzY3JlZW4uXG4iCisiXG4iCittc2dzdHIgIiIKKyJcbiIKKyJcbiIKKyJNb3pvZ2ogZXpla2tlbDogXlAgw6lzIF5OLCBrdXJ6b3IgYmlsbGVudHnFsWssIGtlemTFkWJldMWxayB2YWd5IHN6w6Ftb2s7XG4iCisiw5xzcyA8ZW50ZXI+LXQgYSB2w6FsYXN6dMOhcyBtZWdlcsWRc8OtdMOpc8OpaGV6LiBBIF5MIGZyaXNzw610aSBhIGvDqXBlcm55xZF0LlxuIgorIlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6NDI4Cittc2dpZCAiIgorIlxuIgorIlxuIgorIlJlYWQtb25seSBhY2Nlc3M6IG9ubHkgcHJldmlldyBvZiBzZWxlY3Rpb25zIGlzIGF2YWlsYWJsZSEiCittc2dzdHIgIiIKKyJcbiIKKyJcbiIKKyJDc2FrLW9sdmFzaGF0w7MgaG96esOhZsOpcsOpc2VkIHZhbjogY3NhayBhIHbDoWxhc3p0w6Fzb2sgZWzFkW7DqXpldGUgw6lyaGV0xZEgZWwhIgorCisjOiBkc2VsZWN0L21haW4uY2M6NDQ4Cittc2dpZCAiZmFpbGVkIHRvIGdldGNoIGluIG1haW4gbWVudSIKK21zZ3N0ciAiYSBmxZFtZW7DvCBlbMOpcsOpc2UgbWVnaGnDunN1bHQiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzo1MzEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBhY3Rpb24gc3RyaW5nIGAlLjUwcyciCittc2dzdHIgImlzbWVyZXRsZW4gYCUuNTBzJyBtxbF2ZWxldCBzenRyaW5nIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjc3Cittc2dpZCAiZHNlbGVjdCAtIGxpc3Qgb2YgYWNjZXNzIG1ldGhvZHMiCittc2dzdHIgImRzZWxlY3QgLSBlbMOpcsOpc2kgbcOzZG9rIGxpc3TDoWphIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjg2CisjLCBjLWZvcm1hdAorbXNnaWQgIkFjY2VzcyBtZXRob2QgYCVzJy4iCittc2dzdHIgImAlcycgZWzDqXLDqXNpIG3Ds2QuIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjEyMAorbXNnaWQgIkFiYnJldi4iCittc2dzdHIgIlLDtnYuIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjEyMSBkc2VsZWN0L3BrZ2luZm8uY2M6MTA1IGRzZWxlY3QvcGtndG9wLmNjOjI5MQorbXNnaWQgIkRlc2NyaXB0aW9uIgorbXNnc3RyICJMZcOtcsOhcyIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxNjQgZHNlbGVjdC9wa2dsaXN0LmNjOjU3MgorbXNnaWQgImRvdXBkYXRlIGZhaWxlZCIKK21zZ3N0ciAiZnJpc3PDrXTDqXMgc2lrZXJ0ZWxlbiIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxNjYgZHNlbGVjdC9wa2dsaXN0LmNjOjU3NQorbXNnaWQgImZhaWxlZCB0byB1bmJsb2NrIFNJR1dJTkNIIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTcwIGRzZWxlY3QvcGtnbGlzdC5jYzo1ODAKK21zZ2lkICJmYWlsZWQgdG8gcmUtYmxvY2sgU0lHV0lOQ0giCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxNzEgZHNlbGVjdC9wa2dsaXN0LmNjOjU4MgorbXNnaWQgImdldGNoIGZhaWxlZCIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjE4OAorbXNnaWQgIkV4cGxhbmF0aW9uIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTk3Cittc2dpZCAiTm8gZXhwbGFuYXRpb24gYXZhaWxhYmxlLiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzo2NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiXG4iCisiJXM6ICVzXG4iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6NzAKK21zZ2lkICIiCisiXG4iCisiUHJlc3MgPGVudGVyPiB0byBjb250aW51ZS4iCittc2dzdHIgIiIKKyJcbiIKKyLDnHNzIDxlbnRlcj4gLXQgYSBmb2x5dGF0w6FzaG96LiIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MTYxCisjLCBjLWZvcm1hdAorbXNnaWQgIlByZXNzIDxlbnRlcj4gdG8gY29udGludWUuXG4iCittc2dzdHIgIsOcc3MgPGVudGVyPiAtdCBhIGZvbHl0YXTDoXNob3ouXG4iCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjE2MgorbXNnaWQgIjxzdGFuZGFyZCBlcnJvcj4iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MTY1Cittc2dpZCAiZXJyb3IgcmVhZGluZyBhY2tub3dsZWRnZW1lbnQgb2YgcHJvZ3JhbSBmYWlsdXJlIG1lc3NhZ2UiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MTk2Cittc2dpZCAidXBkYXRlIGF2YWlsYWJsZSBsaXN0IHNjcmlwdCIKK21zZ3N0ciAiZWzDqXJoZXTFkWsgbGlzdMOhasOhdCBmcmlzc8OtdMWRIHBhcmFuY3Nmw6FqbCIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MjAwCittc2dpZCAiaW5zdGFsbGF0aW9uIHNjcmlwdCIKK21zZ3N0ciAidGVsZXDDrXTFkSBwYXJhbmNzZsOhamwiCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjI0NgorbXNnaWQgInF1ZXJ5L3NldHVwIHNjcmlwdCIKK21zZ3N0ciAibGVrw6lyZGV6xZEvYmXDoWxsw610w7MgcGFyYW5jc2bDoWpsIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzo1MworIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gbWV0aG9kIG9wdGlvbnMgZmlsZSBgJS4yNTBzJyAtLSAlcyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzo1OQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciByZWFkaW5nIG9wdGlvbnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzo5MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBgJS4yNTBzJyBkaXJlY3RvcnkgZm9yIHJlYWRpbmcgbWV0aG9kcyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxMDYKKyMsIGMtZm9ybWF0Cittc2dpZCAibWV0aG9kIGAlLjI1MHMnIGhhcyBuYW1lIHRoYXQgaXMgdG9vIGxvbmcgKCVkID4gJWQgY2hhcmFjdGVycykiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTE3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBhY2Nlc3MgbWV0aG9kIHNjcmlwdCBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgbWV0aG9kIG9wdGlvbnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNDcKK21zZ2lkICJub24tZGlnaXQgd2hlcmUgZGlnaXQgd2FudGVkIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE1MAorbXNnaWQgIkVPRiBpbiBpbmRleCBzdHJpbmciCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTUzCittc2dpZCAiaW5kZXggc3RyaW5nIHRvbyBsb25nIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE1NgorbXNnaWQgIm5ld2xpbmUgYmVmb3JlIG9wdGlvbiBuYW1lIHN0YXJ0IgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE1OAorbXNnaWQgIkVPRiBiZWZvcmUgb3B0aW9uIG5hbWUgc3RhcnQiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTYyCittc2dpZCAibm9uYWxwaGEgd2hlcmUgb3B0aW9uIG5hbWUgc3RhcnQgd2FudGVkIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE2NAorbXNnaWQgIm5vbi1hbHBoYW51bSBpbiBvcHRpb24gbmFtZSIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNjcKK21zZ2lkICJFT0YgaW4gb3B0aW9uIG5hbWUiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTcyCittc2dpZCAibmV3bGluZSBiZWZvcmUgc3VtbWFyeSIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNzQKK21zZ2lkICJFT0YgYmVmb3JlIHN1bW1hcnkiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTgwCittc2dpZCAiRU9GIGluIHN1bW1hcnkgLSBtaXNzaW5nIG5ld2xpbmUiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTkwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIG9wdGlvbiBkZXNjcmlwdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE5NAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBvcHRpb24gZGVzY3JpcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxOTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgb3B0aW9uIGRlc2NyaXB0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MjAxCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGR1cmluZyByZWFkIG9mIG9wdGlvbiBkZXNjcmlwdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjIyNAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBkdXJpbmcgcmVhZCBvZiBtZXRob2Qgb3B0aW9ucyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjI0NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBjdXJyZW50IG9wdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjI4OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBuZXcgb3B0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MjkyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgb3B0aW9uIHRvIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjI5NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgbmV3IG9wdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjI5NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgb3B0aW9uIGFzIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzozNgorbXNnaWQgIm5ldyBwYWNrYWdlIgorbXNnc3RyICLDumogY3NvbWFnIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MzcKK21zZ2lkICJpbnN0YWxsIgorbXNnc3RyICJ0ZWxlcMOtdMOpcyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjM4Cittc2dpZCAiaG9sZCIKK21zZ3N0ciAibWVndGFydMOhcyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjM5Cittc2dpZCAicmVtb3ZlIgorbXNnc3RyICJlbHTDoXZvbMOtdMOhcyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjQwCittc2dpZCAicHVyZ2UiCittc2dzdHIgInTDtnJsw6lzIgorCisjLiBUUkFOU0xBVE9SUzogVGhlIHNwYWNlIGlzIGEgdHJpY2sgdG8gd29yayBhcm91bmQgZ2V0dGV4dCB3aGljaCB1c2VzCisjLiAqIHRoZSBlbXB0eSBzdHJpbmcgdG8gc3RvcmUgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHRyYW5zbGF0aW9uLiBETyBOT1QKKyMuICogQ0hBTkdFIFRIQVQgSU4gQSBUUkFOU0xBVElPTiEgVGhlIGNvZGUgcmVhbGx5IHJlbGllcyBvbiB0aGF0IGJlaW5nCisjLiAqIGEgc2luZ2xlIHNwYWNlLgorIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjQ3Cittc2dpZCAiICIKK21zZ3N0ciAiICIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjQ4Cittc2dpZCAiUkVJTlNUQUxMIgorbXNnc3RyICLDmkpSQVRFTEVQw41Uw4lTIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTEKK21zZ2lkICJub3QgaW5zdGFsbGVkIgorbXNnc3RyICJuZW0gdGVsZXDDrXRldHQiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1MgorbXNnaWQgInJlbW92ZWQgKGNvbmZpZ3MgcmVtYWluKSIKK21zZ3N0ciAiZWx0w6F2b2zDrXRvdHQgKGEgYmXDoWxsw610w6FzIG1hcmFkdCkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1MworbXNnaWQgImhhbGYgaW5zdGFsbGVkIgorbXNnc3RyICJmw6lsaWcgdGVsZXDDrXRldHQiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1NAorbXNnaWQgInVucGFja2VkIChub3Qgc2V0IHVwKSIKK21zZ3N0ciAia2ljc29tYWdvbHQgKG5pbmNzIGJlw6FsbMOtdHZhKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjU1Cittc2dpZCAiaGFsZiBjb25maWd1cmVkIChjb25maWcgZmFpbGVkKSIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTYKK21zZ2lkICJhd2FpdGluZyB0cmlnZ2VyIHByb2Nlc3NpbmciCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjU3Cittc2dpZCAidHJpZ2dlcmVkIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1OAorbXNnaWQgImluc3RhbGxlZCIKK21zZ3N0ciAidGVsZXDDrXRldHQiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo2MQorbXNnaWQgIlJlcXVpcmVkIgorbXNnc3RyICJrw7Z0ZWxlesWRIC0gUkVRIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjIKK21zZ2lkICJJbXBvcnRhbnQiCittc2dzdHIgImZvbnRvcyAtIElNUCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjYzCittc2dpZCAiU3RhbmRhcmQiCittc2dzdHIgInN6b2vDoXNvcyAtIFNURCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjY0Cittc2dpZCAiT3B0aW9uYWwiCittc2dzdHIgInRldHN6xZFsZWdlcyAtIE9QVCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjY1Cittc2dpZCAiRXh0cmEiCittc2dzdHIgImV4dHJhIC0gWFRSIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjYKK21zZ2lkICIhQnVnISIKK21zZ3N0ciAiIUhpYmEhIC0gSElCIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjcKK21zZ2lkICJVbmNsYXNzaWZpZWQiCittc2dzdHIgIm5lbS1iZXNvcm9sdCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjcwCittc2dpZCAic3VnZ2VzdHMiCittc2dzdHIgImphdmFzbGF0a8OpbnQgYWRqYSBlenQ6IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzEKK21zZ2lkICJyZWNvbW1lbmRzIgorbXNnc3RyICJhasOhbmzDoXNrw6ludCBhZGphIGV6dDoiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3MgorbXNnaWQgImRlcGVuZHMgb24iCittc2dzdHIgImbDvGdnIGV0dMWRbDoiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3MworbXNnaWQgInByZS1kZXBlbmRzIG9uIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3NAorbXNnaWQgImJyZWFrcyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzUKK21zZ2lkICJjb25mbGljdHMgd2l0aCIKK21zZ3N0ciAiw7x0a8O2emlrIGV6emVsOiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjc2Cittc2dpZCAicHJvdmlkZXMiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjc3Cittc2dpZCAicmVwbGFjZXMiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjc4Cittc2dpZCAiZW5oYW5jZXMiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjgxCittc2dpZCAiUmVxIgorbXNnc3RyICJSZXEiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4MgorbXNnaWQgIkltcCIKK21zZ3N0ciAiSW1wIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODMKK21zZ2lkICJTdGQiCittc2dzdHIgIlN0ZCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjg0Cittc2dpZCAiT3B0IgorbXNnc3RyICJPcHQiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4NQorbXNnaWQgIlh0ciIKK21zZ3N0ciAiWHRyIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODYKK21zZ2lkICJiVUciCittc2dzdHIgImJVRyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjg3Cittc2dpZCAiPyIKK21zZ3N0ciAiPyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjk1IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTUKK21zZ2lkICJCcm9rZW4iCittc2dzdHIgIlTDtnLDtnR0IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6OTYKK21zZ2lkICJOZXciCittc2dzdHIgIsOaaiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjk3Cittc2dpZCAiVXBkYXRlZCIKK21zZ3N0ciAiRnJpc3MiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo5OAorbXNnaWQgIk9ic29sZXRlL2xvY2FsIgorbXNnc3RyICJFbGF2dWx0IHZhZ3kgaGVseWkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo5OQorbXNnaWQgIlVwLXRvLWRhdGUiCittc2dzdHIgIk5hcHJha8Opc3oiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDAKK21zZ2lkICJBdmFpbGFibGUiCittc2dzdHIgIkVsw6lyaGV0xZEiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDEgZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExNworbXNnaWQgIlJlbW92ZWQiCittc2dzdHIgIkVsdMOhdm9sw610b3R0IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTAyIGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTEKK21zZ2lkICJCcm9rZW5seSBpbnN0YWxsZWQgcGFja2FnZXMiCittc2dzdHIgIlTDtnLDtnR0ZW4gdGVsZXDDrXRldHQgY3NvbWFnb2siCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDMKK21zZ2lkICJOZXdseSBhdmFpbGFibGUgcGFja2FnZXMiCittc2dzdHIgIkxlZ8O6amFiYiBjc29tYWdvayIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwNAorbXNnaWQgIlVwZGF0ZWQgcGFja2FnZXMgKG5ld2VyIHZlcnNpb24gaXMgYXZhaWxhYmxlKSIKK21zZ3N0ciAiRnJpc3PDrXRoZXTFkSBjc29tYWdvayAow7pqYWJiIHbDoWx0b3phdCBlbMOpcmhldMWRKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwNQorbXNnaWQgIk9ic29sZXRlIGFuZCBsb2NhbCBwYWNrYWdlcyBwcmVzZW50IG9uIHN5c3RlbSIKK21zZ3N0ciAiRWxhdnVsdCDDqXMgaGVseWkgY3NvbWFnb2sgYSByZW5kc3plcmVuIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTA2Cittc2dpZCAiVXAgdG8gZGF0ZSBpbnN0YWxsZWQgcGFja2FnZXMiCittc2dzdHIgIk5hcHJha8Opc3ogdGVsZXDDrXRldHQgY3NvbWFnb2siCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDcKK21zZ2lkICJBdmFpbGFibGUgcGFja2FnZXMgKG5vdCBjdXJyZW50bHkgaW5zdGFsbGVkKSIKK21zZ3N0ciAiRWzDqXJoZXTFkSBjc29tYWdvayAobW9zdCBuaW5jc2VuZWsgdGVsZXDDrXR2ZSkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDgKK21zZ2lkICJSZW1vdmVkIGFuZCBubyBsb25nZXIgYXZhaWxhYmxlIHBhY2thZ2VzIgorbXNnc3RyICJWaXNzemF2b250IMOpcyB0w7ZiYsOpIG5lbSBlbMOpcmhldMWRIGNzb21hZ29rIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTEyCittc2dpZCAiSW5zdGFsbGVkIHBhY2thZ2VzIgorbXNnc3RyICJUZWxlcMOtdGV0dCBjc29tYWdvayIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExMworbXNnaWQgIlJlbW92ZWQgcGFja2FnZXMgKGNvbmZpZ3VyYXRpb24gc3RpbGwgcHJlc2VudCkiCittc2dzdHIgIkVsdMOhdm9sw610b3R0IGNzb21hZ29rIChhIGJlw6FsbMOtdMOhc29rIG3DqWcgbWVndmFubmFrKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExNAorbXNnaWQgIlB1cmdlZCBwYWNrYWdlcyBhbmQgdGhvc2UgbmV2ZXIgaW5zdGFsbGVkIgorbXNnc3RyICJUw7Zyw7ZsdCDDqXMgc29oYSBuZW0gdGVsZXDDrXRldHQgY3NvbWFnb2siCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTYKK21zZ2lkICJJbnN0YWxsZWQiCittc2dzdHIgIlRlbGVww610ZXR0IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTE4Cittc2dpZCAiUHVyZ2VkIgorbXNnc3RyICJUw7Zyw7ZsdCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjE5OAorbXNnaWQgImRzZWxlY3QgLSByZWN1cnNpdmUgcGFja2FnZSBsaXN0aW5nIgorbXNnc3RyICJkc2VsZWN0IC0gcmVrdXJ6w612IGNzb21hZ2xpc3RhIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTk5Cittc2dpZCAiZHNlbGVjdCAtIGluc3BlY3Rpb24gb2YgcGFja2FnZSBzdGF0ZXMiCittc2dzdHIgImRzZWxlY3QgLSBjc29tYWfDoWxsYXBvdG9rIHZpenNnw6FsYXRhIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjAwCittc2dpZCAiZHNlbGVjdCAtIG1haW4gcGFja2FnZSBsaXN0aW5nIgorbXNnc3RyICJkc2VsZWN0IC0gZsWRIGNzb21hZ2xpc3RhIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjA4Cittc2dpZCAiIChieSBzZWN0aW9uKSIKK21zZ3N0ciAiIChzemFrYXN6IHN6ZXJpbnQpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjExCittc2dpZCAiIChhdmFpbC4sIHNlY3Rpb24pIgorbXNnc3RyICIgKGVsw6lyaC4sIHN6YWthc3opIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjE0Cittc2dpZCAiIChzdGF0dXMsIHNlY3Rpb24pIgorbXNnc3RyICIgKMOhbGxhcG90LCBzemFrYXN6KSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIyMworbXNnaWQgIiAoYnkgcHJpb3JpdHkpIgorbXNnc3RyICIgKGVsc8WRYmJzw6lnIHN6ZXJpbnQpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjI2Cittc2dpZCAiIChhdmFpbC4sIHByaW9yaXR5KSIKK21zZ3N0ciAiIChlbMOpcmguLCBlbHPFkWJic8OpZykiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMjkKK21zZ2lkICIgKHN0YXR1cywgcHJpb3JpdHkpIgorbXNnc3RyICIgKMOhbGxhcG90LCBlbHPFkWJic8OpZykiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMzggZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI1MAorbXNnaWQgIiAoYWxwaGFiZXRpY2FsbHkpIgorbXNnc3RyICIgKGFiYy1iZW4pIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjQxCittc2dpZCAiIChieSBhdmFpbGFiaWxpdHkpIgorbXNnc3RyICIgKGVsw6lyaGV0xZFzw6lnIHN6ZXJpbnQpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjQ0Cittc2dpZCAiIChieSBzdGF0dXMpIgorbXNnc3RyICIgKMOhbGxhcG90IHN6ZXJpbnQpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjU4Cittc2dpZCAiIG1hcms6Ky89Ly0gdGVyc2U6diBoZWxwOj8iCittc2dzdHIgIiBqZWzDtmzDqXM6Ky89Ly0gcsO2dmlkOnYgc8O6Z8OzOj8iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNTkKK21zZ2lkICIgbWFyazorLz0vLSB2ZXJib3NlOnYgaGVscDo/IgorbXNnc3RyICIgamVsw7Zsw6lzOisvPS8tIGhvc3N6w7o6diBzw7pnw7M6PyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI2MAorbXNnaWQgIiB0ZXJzZTp2IGhlbHA6PyIKK21zZ3N0ciAiIHLDtnZpZDp2IHPDumfDszo/IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjYxCittc2dpZCAiIHZlcmJvc2U6diBoZWxwOj8iCittc2dzdHIgIiBob3NzesO6OnYgc8O6Z8OzOj8iCisKKyM6IGRzZWxlY3QvcGtnaW5mby5jYzo4MAorbXNnaWQgIiIKKyJUaGUgbGluZSB5b3UgaGF2ZSBoaWdobGlnaHRlZCByZXByZXNlbnRzIG1hbnkgcGFja2FnZXM7IGlmIHlvdSBhc2sgdG8gIgorImluc3RhbGwsIHJlbW92ZSwgaG9sZCwgZXRjLiBpdCB5b3Ugd2lsbCBhZmZlY3QgYWxsIHRoZSBwYWNrYWdlcyB3aGljaCBtYXRjaCAiCisidGhlIGNyaXRlcmlvbiBzaG93bi5cbiIKKyJcbiIKKyJJZiB5b3UgbW92ZSB0aGUgaGlnaGxpZ2h0IHRvIGEgbGluZSBmb3IgYSBwYXJ0aWN1bGFyIHBhY2thZ2UgeW91IHdpbGwgc2VlICIKKyJpbmZvcm1hdGlvbiBhYm91dCB0aGF0IHBhY2thZ2UgZGlzcGxheWVkIGhlcmUuXG4iCisiWW91IGNhbiB1c2UgYG8nIGFuZCBgTycgdG8gY2hhbmdlIHRoZSBzb3J0IG9yZGVyIGFuZCBnaXZlIHlvdXJzZWxmIHRoZSAiCisib3Bwb3J0dW5pdHkgdG8gbWFyayBwYWNrYWdlcyBpbiBkaWZmZXJlbnQga2luZHMgb2YgZ3JvdXBzLiIKK21zZ3N0ciAiIgorIkEgc29yLCBhbWlyZSDDoWxsc3ogc29rIGNzb21hZ290IGvDqXB2aXNlbDsgaGEgdGVsZXDDrXRlc3osIGVsdMOhdm9sw610YXN6LCBzdGIuLCAiCisiYXogbWluZGVuIG11dGF0b3R0IGvDrXbDoW5hbG9tbmFrIG1lZ2ZlbGVsxZEgY3NvbWFncmEgaGF0LlxuIgorIlxuIgorIk3DoXMgYSBoZWx5emV0LCBoYSBlZ3kgYml6b255b3MgY3NvbWFnIHNvcsOhcmEgw6FsbHN6LCBpbHllbmtvciBheiBhZG90dCAiCisiY3NvbWFncmEgbMOhdG9kIGEgbGVoZXTFkSBsZWd0w7ZiYiBpbmZvcm3DoWNpw7N0LCBww6lsZMOhdWwgYSBsZcOtcsOhc8OhdCBpcy5cbiIKKyJBeiBgbycgdmFneSBgTycgYmlsbGVudHnFsXZlbCBhIHJlbmRlesOpc3QgaXMgdsOhbHRoYXRvZC4iCisKKyM6IGRzZWxlY3QvcGtnaW5mby5jYzo5MworbXNnaWQgIkludGVycmVsYXRpb25zaGlwcyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2luZm8uY2M6MTEyCisjLCBmdXp6eQorbXNnaWQgIk5vIGRlc2NyaXB0aW9uIGF2YWlsYWJsZS4iCittc2dzdHIgIm5pbmNzIHLDs2xhIGxlw61yw6FzIgorCisjOiBkc2VsZWN0L3BrZ2luZm8uY2M6MTMwCisjLCBmdXp6eQorbXNnaWQgIkluc3RhbGxlZCBjb250cm9sIGZpbGUgaW5mb3JtYXRpb24iCittc2dzdHIgInRlbGVww610ZXR0IGVsbGVuxZFyesWRIGFkYXRvayBlaGhlejoiCisKKyM6IGRzZWxlY3QvcGtnaW5mby5jYzoxNDYKKyMsIGZ1enp5Cittc2dpZCAiQXZhaWxhYmxlIGNvbnRyb2wgZmlsZSBpbmZvcm1hdGlvbiIKK21zZ3N0ciAiZWxsZW7FkXJ6xZEgZsOhamwgZWzDqXJoZXTFkSB2ZXJ6acOzamEgZWhoZXo6IgorCisjOiBkc2VsZWN0L3BrZ2xpc3QuY2M6NDE2Cittc2dpZCAiVGhlcmUgYXJlIG5vIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2xpc3QuY2M6NTA3Cittc2dpZCAiaW52YWxpZCBzZWFyY2ggb3B0aW9uIGdpdmVuIgorbXNnc3RyICLDqXJ2w6lueXRlbGVuIGtlcmVzw6lzaSBsZWhldMWRc8OpZyIKKworIzogZHNlbGVjdC9wa2dsaXN0LmNjOjUyMQorbXNnaWQgImVycm9yIGluIHJlZ3VsYXIgZXhwcmVzc2lvbiIKK21zZ3N0ciAiaGliYSBhIHN6YWLDoWx5b3Mga2lmZWplesOpc2JlbiIKKworIzogZHNlbGVjdC9wa2dzdWJsaXN0LmNjOjEwNworbXNnaWQgIiBkb2VzIG5vdCBhcHBlYXIgdG8gYmUgYXZhaWxhYmxlXG4iCittc2dzdHIgIiBuZW0gdMWxbmlrIGVsw6lyaGV0xZFuZWtcbiIKKworIzogZHNlbGVjdC9wa2dzdWJsaXN0LmNjOjEyNworbXNnaWQgIiBvciAiCittc2dzdHIgIiB2YWd5IgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo1NworbXNnaWQgIkFsbCIKK21zZ3N0ciAiTWluZGVuIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo3OQorbXNnaWQgIkFsbCBwYWNrYWdlcyIKK21zZ3N0ciAiTWluZGVuIGNzb21hZyIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcGFja2FnZXMgd2l0aG91dCBhIHNlY3Rpb24iCittc2dzdHIgIiVzIGNzb21hZ29rIG1lbHllayBuaW5jc2VuZWsgZWd5IHN6YWthc3piYW4iCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjg1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHBhY2thZ2VzIGluIHNlY3Rpb24gJXMiCittc2dzdHIgIiVzIGNzb21hZ29rIGF6IGFsw6FiYmkgc3pha2FzemJhbjogJXMiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjkxCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzICVzIHBhY2thZ2VzIgorbXNnc3RyICIlcyAlcyBjc29tYWdvayIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgJXMgcGFja2FnZXMgd2l0aG91dCBhIHNlY3Rpb24iCittc2dzdHIgIiVzICVzIGNzb21hZ29rIG1lbHllayBuaW5jc2VuZWsgZWd5IHN6YWthc3piYW4iCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjk3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzICVzIHBhY2thZ2VzIGluIHNlY3Rpb24gJXMiCittc2dzdHIgIiVzICVzIGNzb21hZ29rIGF6IGFsw6FiYmkgc3pha2FzemJhbjogJXMiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjExOAorIywgYy1mb3JtYXQKK21zZ2lkICIlLSpzICVzJXMlczsgICVzICh3YXM6ICVzKS4gICVzIgorbXNnc3RyICIlLSpzICVzJXMlczsgICVzICh2b2x0OiAlcykuICAlcyIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6MjYzCittc2dpZCAiRXJyb3IiCittc2dzdHIgIkhpYmEiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI2NworbXNnaWQgIkluc3RhbGxlZD8iCittc2dzdHIgIlRlbGVww610dmUgdmFuPyIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6MjcxCittc2dpZCAiT2xkIG1hcmsiCittc2dzdHIgIlLDqWdpIGplbMO2bMOpcyIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6Mjc1Cittc2dpZCAiTWFya2VkIGZvciIKK21zZ3N0ciAiS2lqZWzDtmzDqXMgZXJyZToiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI3OAorbXNnaWQgIkVJT00iCittc2dzdHIgIkVJT00iCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI4MAorbXNnaWQgIlNlY3Rpb24iCittc2dzdHIgIlN6YWthc3oiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI4MQorbXNnaWQgIlByaW9yaXR5IgorbXNnc3RyICJFbHPFkWJic8OpZyIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6MjgyCittc2dpZCAiUGFja2FnZSIKK21zZ3N0ciAiQ3NvbWFnIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyODYKK21zZ2lkICJJbnN0LnZlciIKK21zZ3N0ciAiVGVsZXAudmVyIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyODkKK21zZ2lkICJBdmFpbC52ZXIiCittc2dzdHIgIkVsw6lyaC52ZXIiCisKKyN+IG1zZ2lkICJyZXR1cm5lZCBlcnJvciBleGl0IHN0YXR1cyAlZC5cbiIKKyN+IG1zZ3N0ciAiYSB2aXNzemFhZG90dCBoaWJhw6lydMOpazogJWQuXG4iCisKKyN+IG1zZ2lkICJ3YXMgaW50ZXJydXB0ZWQuXG4iCisjfiBtc2dzdHIgIm1lZ3N6YWvDrXR2YS5cbiIKKworI34gbXNnaWQgIndhcyB0ZXJtaW5hdGVkIGJ5IGEgc2lnbmFsOiAlcy5cbiIKKyN+IG1zZ3N0ciAibGXDoWxsw610dmEgYXogYWzDoWJiaSBzemlnbsOhbGxhbDogJXMuXG4iCisKKyN+IG1zZ2lkICJmYWlsZWQgY29uZmlnIgorI34gbXNnc3RyICJoaWLDoXZhbCBiZcOhbGzDrXRvdHQiCisKKyN+IG1zZ2lkICJSZWNvbW1lbmRlZCIKKyN+IG1zZ3N0ciAiYWrDoW5sb3R0IC0gUkVDIgorCisjfiBtc2dpZCAiQ29udHJpYiIKKyN+IG1zZ3N0ciAiY29udHJpYiIKKworI34gbXNnaWQgIlJlYyIKKyN+IG1zZ3N0ciAiUmVjIgorCisjfiBtc2dpZCAiQ3RiIgorI34gbXNnc3RyICJDdGIiCisKKyN+IG1zZ2lkICI8bnVsbD4iCisjfiBtc2dzdHIgIjxudWxsPiIKKworI34gbXNnaWQgImRlc2NyaXB0aW9uIG9mICIKKyN+IG1zZ3N0ciAiY3NvbWFnbGXDrXLDoXM6IgorCisjfiBtc2dpZCAiZGVzY3JpcHRpb24iCisjfiBtc2dzdHIgImxlw61yw6FzIgorCisjfiBtc2dpZCAiY3VycmVudGx5IGluc3RhbGxlZCBjb250cm9sIGluZm8iCisjfiBtc2dzdHIgIm1vc3QgdGVsZXDDrXRldHQgZWxsZW7FkXJ6xZEgYWRhdG9rIgorCisjfiBtc2dpZCAiYXZhaWxhYmxlIHZlcnNpb24gb2YgY29udHJvbCBpbmZvIGZvciAiCisjfiBtc2dzdHIgImVsbGVuxZFyesWRIGFkYXRvayBlbMOpcmhldMWRIHZlcnppw7NqYSBlaGhlejoiCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vaWQuZ21vIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL2lkLmdtbwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wODhiYWIwCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL2lkLmdtbwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vaWQucG8gYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vaWQucG8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNmMxNzk5YQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9pZC5wbwpAQCAtMCwwICsxLDE3ODEgQEAKKyMgSW5kb25lc2lhbiBtZXNzYWdlcyBmb3IgZHBrZworIyBDb3B5cmlnaHQgKEMpIDIwMDMgU29mdHdhcmUgaW4gdGhlIFB1YmxpYyBJbnRlcmVzdCwgSW5jCisjIFRoaXMgZmlsZSBpcyBkaXN0cmlidXRlZCB1bmRlciB0aGUgc2FtZSBsaWNlbnNlIGFzIGRwa2cuCisjIERlYmlhbiBJbmRvbmVzaWEgTDEwTiBUZWFtIDxkZWJpYW4tbDEwbi1pZEBndXJhbWUuZmlzaWthLnVpLmFjLmlkPiwgMjAwNC4KKyMgVHJhbnNsYXRvcjoKKyMgCUFyaWVmIFMgRml0cmlhbnRvIDxhcmllZkBndXJhbWUuZmlzaWthLnVpLmFjLmlkPiwgMjAwNS0yMDA2CisjIAlQYXJsaW4gSW1hbnVlbCA8cGFybGluX2lAeWFob28uY29tPiwgMjAwNQorbXNnaWQgIiIKK21zZ3N0ciAiIgorIlByb2plY3QtSWQtVmVyc2lvbjogZHBrZyAxLjEzXG4iCisiUmVwb3J0LU1zZ2lkLUJ1Z3MtVG86IGRlYmlhbi1kcGtnQGxpc3RzLmRlYmlhbi5vcmdcbiIKKyJQT1QtQ3JlYXRpb24tRGF0ZTogMjAxMS0xMC0xNCAwNzoxMSswMjAwXG4iCisiUE8tUmV2aXNpb24tRGF0ZTogMjAwNi0xMC0wNiAyMDoyMCswNzAwXG4iCisiTGFzdC1UcmFuc2xhdG9yOiBBcmllZiBTIEZpdHJpYW50byA8YXJpZWZAZ3VyYW1lLmZpc2lrYS51aS5hYy5pZD5cbiIKKyJMYW5ndWFnZS1UZWFtOiBEZWJpYW4gSW5kb25lc2lhIEwxME4gVGVhbSA8ZGViaWFuLWwxMG4taWRAZ3VyYW1lLmZpc2lrYS51aS4iCisiYWMuaWQ+XG4iCisiTGFuZ3VhZ2U6IGlkXG4iCisiTUlNRS1WZXJzaW9uOiAxLjBcbiIKKyJDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9VVRGLThcbiIKKyJDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiA4Yml0XG4iCisiUGx1cmFsLUZvcm1zOiBucGx1cmFscz0xLCBwbHVyYWw9MDtcbiIKKyJYLVBvZWRpdC1MYW5ndWFnZTogSW5kb25lc2lhblxuIgorIlgtUG9lZGl0LUNvdW50cnk6IElORE9ORVNJQVxuIgorIlgtUG9lZGl0LVNvdXJjZUNoYXJzZXQ6IGlzby04ODU5LTFcbiIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxMjUKK21zZ2lkICJTZWFyY2ggZm9yID8gIgorbXNnc3RyICJDYXJpIHVudHVrID8iCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MTQ3Cittc2dpZCAiRXJyb3I6ICIKK21zZ3N0ciAiS2VzYWxhaGFuOiIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxNzgKK21zZ2lkICJIZWxwOiAiCittc2dzdHIgIkJhbnR1YW46IgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE4NAorbXNnaWQgIlByZXNzID8gZm9yIGhlbHAgbWVudSwgLiBmb3IgbmV4dCB0b3BpYywgPHNwYWNlPiB0byBleGl0IGhlbHAuIgorbXNnc3RyICIiCisiS2V0aWsgPyB1bnR1IG1lbnUgcGFuZHVhbiwgLiB1bnR1ayB0b3BpayBzZWxhbmp1dG55YSwgPHNwYXNpPiB1bnR1ayBrZWx1YXIuIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE5MQorbXNnaWQgIkhlbHAgaW5mb3JtYXRpb24gaXMgYXZhaWxhYmxlIHVuZGVyIHRoZSBmb2xsb3dpbmcgdG9waWNzOiIKK21zZ3N0ciAiSW5mb3JtYXNpIHBhbmR1YW4gdGVyc2VkaWEgdW50dWsgdG9waWstdG9waWsgYmVyaWt1dCBpbmk6IgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE5OQorbXNnaWQgIiIKKyJQcmVzcyBhIGtleSBmcm9tIHRoZSBsaXN0IGFib3ZlLCA8c3BhY2U+IG9yIGBxJyB0byBleGl0IGhlbHAsXG4iCisiICBvciBgLicgKGZ1bGwgc3RvcCkgdG8gcmVhZCBlYWNoIGhlbHAgcGFnZSBpbiB0dXJuLiAiCittc2dzdHIgIiIKKyJLZXRpayBzdWF0dSB0b21ib2wgZGFyaSBkYWZ0YXIgZGkgYXRhcywgPHNwYXNpPiBhdGF1IGBxJyB1bnR1ayBrZWx1YXIsXG4iCisiICBhdGF1ICcuJyB1bnR1ayBtZW1iYWNhIHNldGlhcCBoYWxhbWFuIHBhbmR1YW4gYmVyZ2FudGlhbi4iCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MjA1Cittc2dpZCAiZXJyb3IgcmVhZGluZyBrZXlib2FyZCBpbiBoZWxwIgorbXNnc3RyICJhZGEga2VzYWxhaGFuIG1lbWJhY2Ega2V5Ym9hcmQgZGFsYW0gbW9kdXMgYmFudHVhbiIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo1NworbXNnaWQgImlvY3RsKFRJT0NHV0lOU1opIGZhaWxlZCIKK21zZ3N0ciAiaW9jdGwoVElPQ0dXSU5TWikgZ2FnYWwiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6NjAKK21zZ2lkICJkb3VwZGF0ZSBpbiBTSUdXSU5DSCBoYW5kbGVyIGZhaWxlZCIKK21zZ3N0ciAiZ2FnYWwgbWVsYWt1a2FuICdkb3VwZGF0ZScgZGFsYW0gcGVuYW5nYW5hbiAnU0lHV0lOQ0gnIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjY3Cittc2dpZCAiZmFpbGVkIHRvIHJlc3RvcmUgb2xkIFNJR1dJTkNIIHNpZ2FjdCIKK21zZ3N0ciAiZ2FnYWwgbWVuZ2VtYmFsaWthbiAnc2lnYWN0IFNJR1dJTkNIJyB5YW5nIGxhbWEiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6NjkKK21zZ2lkICJmYWlsZWQgdG8gcmVzdG9yZSBvbGQgc2lnbmFsIG1hc2siCittc2dzdHIgImdhZ2FsIG1lbmdlbWJhbGlrYW4gbWFzayBzaW55YWwgeWFuZyBsYW1hIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjc5Cittc2dpZCAiZmFpbGVkIHRvIGdldCBvbGQgc2lnbmFsIG1hc2siCittc2dzdHIgImdhZ2FsIG1lbmRhcGF0a2FuIG1hc2sgc2lueWFsIHlhbmcgbGFtYSIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo4MAorbXNnaWQgImZhaWxlZCB0byBnZXQgb2xkIFNJR1dJTkNIIHNpZ2FjdCIKK21zZ3N0ciAiR2FnYXQgbWVuZGFwYXRrYW4gJ3NpZ2FjdCBTSUdXSU5DSCcgeWFuZyBsYW1hIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjg0Cittc2dpZCAiZmFpbGVkIHRvIGJsb2NrIFNJR1dJTkNIIgorbXNnc3RyICJnYWdhbCBtZWxha3VrYW4gYmxvY2sgU0lHV0lOQ0giCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6ODkKK21zZ2lkICJmYWlsZWQgdG8gc2V0IG5ldyBTSUdXSU5DSCBzaWdhY3QiCittc2dzdHIgImdhZ2FsIG1lbnlldGVsICdzaWdhY3QgU0lHV0lOQ0gnICB5YW5nIGJhcnUiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTI2Cittc2dpZCAiZmFpbGVkIHRvIGFsbG9jYXRlIGNvbG91ciBwYWlyIgorbXNnc3RyICJnYWdhbCBtZW5nYWxva2FzaWthbiBwYXNhbmdhbiB3YXJuYSIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxNjcKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHRpdGxlIHdpbmRvdyIKK21zZ3N0ciAiZ2FnYWwgbWVtYnVhdCBqdWR1bCB3aW5kb3ciCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTcxCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSB3aGF0aW5mbyB3aW5kb3ciCittc2dzdHIgImdhZ2FsIG1lbWJ1YXQgd2luZG93ICd3aGF0aW5mbyciCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTc1Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBiYXNlbGlzdCBwYWQiCittc2dzdHIgImdhZ2FsIG1lbWJ1YXQgY2F0YXRhbiAnYmFzZWxpc3QnIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE3OAorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgaGVhZGluZyBwYWQiCittc2dzdHIgImdhZ2FsIG1lbWJ1YXQgY2F0YXRhbiAnaGVhZGluZyciCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTgyCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSB0aGlzc3RhdGUgcGFkIgorbXNnc3RyICJnYWdhbCBtZW1idWF0IGNhdGF0YW4gJ3RoaXNzdGF0ZSciCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTg2Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBpbmZvIHBhZCIKK21zZ3N0ciAiZ2FnYWwgbWVtYnVhdCBjYXRhdGFuICdpbmZvJyIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxOTEKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHF1ZXJ5IHdpbmRvdyIKK21zZ3N0ciAiZ2FnYWwgbWVtYnVhdCB3aW5kb3cgJ3F1ZXJ5JyIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoyNTUKKyMsIGZ1enp5Cittc2dpZCAiS2V5YmluZGluZ3MiCittc2dzdHIgInJlbGFzaSB0b21ib2wiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MzAzCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgLS0gJWQlJSwgcHJlc3MgIgorbXNnc3RyICIgIC0tICVkJSUsIHRla2FuICIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzozMDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgZm9yIG1vcmUiCittc2dzdHIgIiVzIHVudHVrIGxhbmp1dCAiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MzEwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHRvIGdvIGJhY2siCittc2dzdHIgIiVzIHVudHVrIGtlbWJhbGkgIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjc4Cittc2dpZCAiW25vdCBib3VuZF0iCittc2dzdHIgIlt0aWRhayBkaXJlbGFzaWthbl0iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiW3VuazogJWRdIgorbXNnc3RyICJbdW5rOiAlZF0iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTM5Cittc2dpZCAiU2Nyb2xsIG9ud2FyZHMgdGhyb3VnaCBoZWxwL2luZm9ybWF0aW9uIgorbXNnc3RyICJHdWx1bmdsYWggbGF5YXIga2UgYmF3YWggc2VwYW5qYW5nIGluZm9ybWFzaS9iYW50dWFuIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0MAorbXNnaWQgIlNjcm9sbCBiYWNrd2FyZHMgdGhyb3VnaCBoZWxwL2luZm9ybWF0aW9uIgorbXNnc3RyICJHdWx1bmdsYWggbGF5YXIga2UgYXRhcyBzZXBhbmphbmcgaW5mb3JtYXNpL2JhbnR1YW4iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQxCittc2dpZCAiTW92ZSB1cCIKK21zZ3N0ciAiUGluZGFoIGtlIGF0YXMiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQyCittc2dpZCAiTW92ZSBkb3duIgorbXNnc3RyICJQaW5kYWgga2UgYmF3YWgiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQzCittc2dpZCAiR28gdG8gdG9wIG9mIGxpc3QiCittc2dzdHIgIktlIGF3YWwgZGFmdGFyIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0NAorbXNnaWQgIkdvIHRvIGVuZCBvZiBsaXN0IgorbXNnc3RyICJLZSBha2hpciBkYWZ0YXIiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ1Cittc2dpZCAiUmVxdWVzdCBoZWxwIChjeWNsZSB0aHJvdWdoIGhlbHAgc2NyZWVucykiCittc2dzdHIgIk1pbnRhIHBhbmR1YW4gKGRpcm90YXNpIHNlcGFuamFuZyBsYXlhciBwYW5kdWFuKSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDYKK21zZ2lkICJDeWNsZSB0aHJvdWdoIGluZm9ybWF0aW9uIGRpc3BsYXlzIgorbXNnc3RyICJCZXJrZWxpbGluZ2xhaCBzZXBhbmphbmcgdGFtcGlsYW4gaW5mb3JtYXNpIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0NworbXNnaWQgIlJlZHJhdyBkaXNwbGF5IgorbXNnc3RyICJTZWdhcmthbiB0YW1waWxhbiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDgKK21zZ2lkICJTY3JvbGwgb253YXJkcyB0aHJvdWdoIGxpc3QgYnkgMSBsaW5lIgorbXNnc3RyICJHdWx1bmcgbGF5YXIga2UgYmF3YWggc2VwYW5qYW5nIGRhZnRhYXIgdGlhcCBzYXR1IGJhcmlzIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0OQorbXNnaWQgIlNjcm9sbCBiYWNrd2FyZHMgdGhyb3VnaCBsaXN0IGJ5IDEgbGluZSIKK21zZ3N0ciAiR3VsdW5nIGxheWFyIGtlIGF0YXMgc2VwYW5qYW5nIGRhZnRhciB0aWFwIHNhdHUgYmFyaXMiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTUwCittc2dpZCAiU2Nyb2xsIG9ud2FyZHMgdGhyb3VnaCBoZWxwL2luZm9ybWF0aW9uIGJ5IDEgbGluZSIKK21zZ3N0ciAiR3VsdW5nIGxheWFyIGtlIGJhd2FoIHNlcGFuamFuZyBpbmZvcm1hc2kvcGFuZHVhbiB0aWFwIHNhdHUgYmFyaXMiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTUxCittc2dpZCAiU2Nyb2xsIGJhY2t3YXJkcyB0aHJvdWdoIGhlbHAvaW5mb3JtYXRpb24gYnkgMSBsaW5lIgorbXNnc3RyICJHdWx1bmcgbGF5YXIga2UgYXRhcyBzZXBhbmphbmcgaW5mb3JtYXNpL3BhbmR1YW4gdGlhcCBzYXR1IGJhcmlzIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1MgorbXNnaWQgIlNjcm9sbCBvbndhcmRzIHRocm91Z2ggbGlzdCIKK21zZ3N0ciAiR3VsdW5nIGRhZnRhciBrZSBiYXdhaCIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTMKK21zZ2lkICJTY3JvbGwgYmFja3dhcmRzIHRocm91Z2ggbGlzdCIKK21zZ3N0ciAiR3VsdW5nIGRhZnRhciBrZSBhdGFzIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1NgorbXNnaWQgIk1hcmsgcGFja2FnZShzKSBmb3IgaW5zdGFsbGF0aW9uIgorbXNnc3RyICJUYW5kYWkgcGFrZXQgeWFuZyBha2FuIGRpcGFzYW5nIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1NworbXNnaWQgIk1hcmsgcGFja2FnZShzKSBmb3IgZGVpbnN0YWxsYXRpb24iCittc2dzdHIgIlRhbmRhaSBwYWtldCB5YW5nIGFrYW4gZGlidWFuZyIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTgKK21zZ2lkICJNYXJrIHBhY2thZ2UocykgZm9yIGRlaW5zdGFsbCBhbmQgcHVyZ2UiCittc2dzdHIgIlRhbmRhaSBwYWtldCB1bnR1ayBkaWJ1YW5nIGRhbiBkaW11c25haGthbiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTkKK21zZ2lkICJNYWtlIGhpZ2hsaWdodCBtb3JlIHNwZWNpZmljIgorbXNnc3RyICJCdWF0IHBlbnlvcm90YW4gbGViaWggc3Blc2lmaWsiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTYwCittc2dpZCAiTWFrZSBoaWdobGlnaHQgbGVzcyBzcGVjaWZpYyIKK21zZ3N0ciAiQnVhdCBwZW55b3JvdGFuIGt1cmFuZyBzcGVzaWZpayIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjEKK21zZ2lkICJTZWFyY2ggZm9yIGEgcGFja2FnZSB3aG9zZSBuYW1lIGNvbnRhaW5zIGEgc3RyaW5nIgorbXNnc3RyICJDYXJpIHBha2V0IHlhbmcgbmFtYW55YSBiZXJpc2kgc3VhdHUgc3RyaW5nIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2MgorbXNnaWQgIlJlcGVhdCBsYXN0IHNlYXJjaC4iCittc2dzdHIgIlVsYW5naSBwZW5jYXJpYW4gdGVyYWtoaXIiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTYzCittc2dpZCAiU3dhcCBzb3J0IG9yZGVyIHByaW9yaXR5L3NlY3Rpb24iCittc2dzdHIgIkJhbGlra2FuIHVydXRhbiBwZW5ndXJ1dGFuIHByaW9yaXRhcy9iYWdpYW4iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY0Cittc2dpZCAiUXVpdCwgY29uZmlybWluZywgYW5kIGNoZWNraW5nIGRlcGVuZGVuY2llcyIKK21zZ3N0ciAiS2VsdWFyLCBrb25maXJtYXNpLCBkYW4gcGVyaWtzYSBrZXRlcmdhbnR1bmdhbiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjUKK21zZ2lkICJRdWl0LCBjb25maXJtaW5nIHdpdGhvdXQgY2hlY2siCittc2dzdHIgIktlbHVhciwga29uZmlybWFzaSB0YW5wYSBwZW1lcmlrc2FhbiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjYKK21zZ2lkICJRdWl0LCByZWplY3RpbmcgY29uZmxpY3QvZGVwZW5kZW5jeSBzdWdnZXN0aW9ucyIKK21zZ3N0ciAiS2VsdWFyLCB0b2xhayBzYXJhbiB0ZW50YW5nIGJlbnRyb2sva2V0ZXJnYW50dW5nYW4gcGFrZXQiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY3Cittc2dpZCAiQWJvcnQgLSBxdWl0IHdpdGhvdXQgbWFraW5nIGNoYW5nZXMiCittc2dzdHIgIkJhdGFsIC0ga2VsdWFyIHRhbnBhIG1lbWJ1YXQgcGVydWJhaGFuIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2OAorbXNnaWQgIlJldmVydCB0byBvbGQgc3RhdGUgZm9yIGFsbCBwYWNrYWdlcyIKK21zZ3N0ciAiS2VtYmFsaWthbiBzZW11YSBwYWtldCBrZSBrZWFkYWFuIGxhbWEiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY5Cittc2dpZCAiUmV2ZXJ0IHRvIHN1Z2dlc3RlZCBzdGF0ZSBmb3IgYWxsIHBhY2thZ2VzIgorbXNnc3RyICJLZW1iYWxpa2FuIHNlbXVhIHBha2V0IGtlIGtlYWRhYW4geWFuZyBkaXNhcmFua2FuIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE3MAorbXNnaWQgIlJldmVydCB0byBkaXJlY3RseSByZXF1ZXN0ZWQgc3RhdGUgZm9yIGFsbCBwYWNrYWdlcyIKK21zZ3N0ciAiS2VtYmFsaWthbiBzZW11YSBwYWtldCBrZSBrZWFkYWFuIHlhbmcgZGltaW50YSBsYW5nc3VuZyIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNzEKKyMsIGZ1enp5Cittc2dpZCAiUmV2ZXJ0IHRvIGN1cnJlbnRseSBpbnN0YWxsZWQgc3RhdGUgZm9yIGFsbCBwYWNrYWdlcyIKK21zZ3N0ciAiS2VtYmFsaWthbiBzZW11YSBwYWtldCBrZSBrZWFkYWFuIHlhbmcgZGltaW50YSBsYW5nc3VuZyIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNzQKK21zZ2lkICJTZWxlY3QgY3VycmVudGx5LWhpZ2hsaWdodGVkIGFjY2VzcyBtZXRob2QiCittc2dzdHIgIlBpbGloIG1ldG9kZSBha3NlcyB5YW5nIGRpc29yb3QiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTc1Cittc2dpZCAiUXVpdCB3aXRob3V0IGNoYW5naW5nIHNlbGVjdGVkIGFjY2VzcyBtZXRob2QiCittc2dzdHIgIktlbHVhciB0YW5wYSBtZW5ndWJhaCBtZXRvZGUgYWtzZXMgeWFuZyBkaXBpbGloIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjI5Cittc2dpZCAiS2V5c3Ryb2tlcyIKK21zZ3N0ciAiVG9tYm9sIHNpbmdrYXQiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MjkKKyMsIGZ1enp5Cittc2dpZCAiIgorIk1vdGlvbiBrZXlzOiBOZXh0L1ByZXZpb3VzLCBUb3AvRW5kLCBVcC9Eb3duLCBCYWNrd2FyZHMvRm9yd2FyZHM6XG4iCisiICBqLCBEb3duLWFycm93ICAgICAgICAgaywgVXAtYXJyb3cgICAgICAgICAgICAgbW92ZSBoaWdobGlnaHRcbiIKKyIgIE4sIFBhZ2UtZG93biwgU3BhY2UgICBQLCBQYWdlLXVwLCBCYWNrc3BhY2UgICBzY3JvbGwgbGlzdCBieSAxIHBhZ2VcbiIKKyIgIF5uICAgICAgICAgICAgICAgICAgICBecCAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgbGlzdCBieSAxIGxpbmVcbiIKKyIgIHQsIEhvbWUgICAgICAgICAgICAgICBlLCBFbmQgICAgICAgICAgICAgICAgICBqdW1wIHRvIHRvcC9lbmQgb2YgbGlzdFxuIgorIiAgdSAgICAgICAgICAgICAgICAgICAgIGQgICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIGJ5IDEgcGFnZVxuIgorIiAgXnUgICAgICAgICAgICAgICAgICAgIF5kICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIGJ5IDEgbGluZVxuIgorIiAgQiwgTGVmdC1hcnJvdyAgICAgICAgIEYsIFJpZ2h0LWFycm93ICAgICAgICAgIHBhbiBkaXNwbGF5IGJ5IDEvMyBzY3JlZW5cbiIKKyIgIF5iICAgICAgICAgICAgICAgICAgICBeZiAgICAgICAgICAgICAgICAgICAgICBwYW4gZGlzcGxheSBieSAxIGNoYXJhY3RlclxuIgorIlxuIgorIk1hcmsgcGFja2FnZXMgZm9yIGxhdGVyIHByb2Nlc3Npbmc6XG4iCisiICssIEluc2VydCAgaW5zdGFsbCBvciB1cGdyYWRlICAgICAgPSwgSCAgaG9sZCBpbiBwcmVzZW50IHN0YXRlXG4iCisiIC0sIERlbGV0ZSAgcmVtb3ZlICAgICAgICAgICAgICAgICAgOiwgRyAgdW5ob2xkOiB1cGdyYWRlIG9yIGxlYXZlICIKKyJ1bmluc3RhbGxlZFxuIgorIiBfICAgICAgICAgIHJlbW92ZSAmIHB1cmdlIGNvbmZpZ1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1pc2NlbGxhbmVvdXM6XG4iCisiUXVpdCwgZXhpdCwgb3ZlcndyaXRlIChub3RlIGNhcGl0YWxzISk6ICAgICAgID8sIEYxIHJlcXVlc3QgaGVscCAoYWxzbyAiCisiSGVscClcbiIKKyIgUmV0dXJuICBDb25maXJtLCBxdWl0IChjaGVjayBkZXBlbmRlbmNpZXMpICAgaSwgSSAgdG9nZ2xlL2N5Y2xlIGluZm8gIgorImRpc3BsYXlzXG4iCisiICAgUSAgICAgQ29uZmlybSwgcXVpdCAob3ZlcnJpZGUgZGVwLnMpICAgICAgIG8sIE8gIGN5Y2xlIHRocm91Z2ggc29ydCAiCisib3B0aW9uc1xuIgorIiBYLCBFc2MgIGVYaXQsIGFiYW5kb25pbmcgYW55IGNoYW5nZXMgbWFkZSAgICB2LCBWICBjaGFuZ2Ugc3RhdHVzIGRpc3BsYXkgIgorIm9wdHNcbiIKKyIgICBSICAgICBSZXZlcnQgdG8gc3RhdGUgYmVmb3JlIHRoaXMgbGlzdCAgICAgIF5sICAgcmVkcmF3IGRpc3BsYXlcbiIKKyIgICBVICAgICBzZXQgYWxsIHRvIHNVZ2dlc3RlZCBzdGF0ZSAgICAgICAgICAgICAvICAgc2VhcmNoIChSZXR1cm4gdG8gIgorImNhbmNlbClcbiIKKyIgICBEICAgICBzZXQgYWxsIHRvIERpcmVjdGx5IHJlcXVlc3RlZCBzdGF0ZSAgbiwgXFwgIHJlcGVhdCBsYXN0IHNlYXJjaFxuIgorbXNnc3RyICIiCisiVG9tYm9sIEdlcmFrOiBCZXJpa3V0bnlhL1NlYmVsdW1ueWEsIEF3YWwvQWtoaXIsIEF0YXMvQmF3YWgsIE11bmR1ci9NYWp1OlxuIgorIiAgcGFuYWgtQmF3YWgsaiAgICAgICAgICBwYW5haC1BdGFzLGsgICAgICAgICAgICBnZXNlciBzb3JvdGFuXG4iCisiICBOLFBhZ2UtZG93biwgU3Bhc2kgICAgIFAsUGFnZS11cCwgIEJhY2tzcGFjZSAgIGd1bHVuZyBkYWZ0YXIgdGlhcCBzYXR1ICIKKyJoYWxhbWFuXG4iCisiICBebiAgICAgICAgICAgICAgICAgICAgIF5wICAgICAgICAgICAgICAgICAgICAgIGd1bHVuZyBkYWZ0YXIgdGlhcCBzYXR1ICIKKyJiYXJpc1xuIgorIiAgdCxIb21lICAgICAgICAgICAgICAgICBlLEVuZCAgICAgICAgICAgICAgICAgICBsYW5nc3VuZyBrZSBhd2FsL2FraGlyICIKKyJkYWZ0YXJcbiIKKyIgIHUgICAgICAgICAgICAgICAgICAgICAgZCAgICAgICAgICAgICAgICAgICAgICAgZ3VsdW5nIGluZm8gdGlhcCBzYXR1ICIKKyJoYWxhbWFuXG4iCisiICBedSAgICAgICAgICAgICAgICAgICAgIF5kICAgICAgICAgICAgICAgICAgICAgIGd1bHVuZyBpbmZvIHRpYXAgc2F0dSAiCisiYmFyaXNcbiIKKyIgIEIsUGFuYWgta2lyaSAgICAgICAgICAgRixQYW5haC1rYW5hbiAgICAgICAgICAgZ2VzZXIgdGFtcGlsYW4gdGlhcCAxLzMgIgorImxheWFyXG4iCisiICBeYiAgICAgICAgICAgICAgICAgICAgIF5mICAgICAgICAgICAgICAgICAgICAgIGdlc2VyIHRhbXBpbGFuIHRpYXAgMSAiCisia2FyYWt0ZXJcbiIKKyJcbiIKKyJUYW5kYWkgcGFrZXQgdW50dWsgZGlwcm9zZXMga2VtdWRpYW46XG4iCisiICArLCBJbnNlcnQgICAgIHBhc2FuZyBhdGF1IHBlcmJhaGFydWkgID0sIEggIGNla2FsIGRhbGFtIGtlYWRhYW4gc2VrYXJhbmdcbiIKKyIgIC0sIERlbGV0ZSAgICAgYnVhbmcgICAgICAgICAgICAgICAgICAgOiwgRyAgamFuZ2FuIGRpY2VrYWwsIHBlcmJhaGFydWksICIKKyJhdGF1IGJpYXJrYW4gdGFrIHRlcnBhc2FuZ1xuIgorIiAgXyAgICAgICAgICAgICBidWFuZyBkYW4ga29zb25na2FuIGtvbmZpZ3VyYXNpXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTGFpbi1sYWluOlxuIgorIktlbHVhciwgYmF0YWwsIHRpbXBhIChjYXRhdCBodXJ1ZiBiZXNhcm55YSEpOiAgICAgICAgICAgICAgICA/LCBGMSAgIGxpaGF0ICIKKyJwYW5kdWFuIChqdWdhIFBhbmR1YW4pXG4iCisiIFJldHVybi9FbnRlciAgIEtvbmZpcm1hc2ksa2VsdWFyIChwZXJpa3NhIGtldGVyZ2FudHVuZ2FuKSAgIGksIEkgICAgIgorImhpZHVwa2FuL3B1dGFyIHRhbXBpbGFuIGluZm9cbiIKKyIgICAgIFEgICAgICAgICAgS29uZmlybWFzaSwga2VsdWFyICh0aW1wYSBrZXRlcmdhbnR1bmdhbikgICAgbywgTyAgICAiCisidGVsdXN1cmkgcGlsaWhhbiBwZW5ndXJ1dGFuXG4iCisiICAgWCwgRXNjICAgICAgIEtlbHVhciwgYmF0YWxrYW4gc2VtdWEgcGVydWJhaGFuICAgICAgICAgICAgIHYsIFYgICAgdWJhaCAiCisicGlsaWhhbiBsYXlhciBzdGF0dXNcbiIKKyIgICAgIFIgICAgICAgICAgS2VtYmFsaWthbiBrZSBrZWFkYWFuIHNlYmVsdW0gZGFmdGFyIGluaSAgICAgIF5JICAgICBzYWppa2FuICIKKyJ1bGFuZyBsYXlhciBpbmlcbiIKKyIgICAgIFUgICAgICAgICAgc2V0ZWwgc2VtdWEga2Uga2VhZGFhbiAgZGlzYXJhbmthbiAgICAgICAgICAgICAvICAgICBjYXJpICIKKyIoUmV0dXJuIHVudHVrIGJhdGFsKVxuIgorIiAgICAgRCAgICAgICAgICBzZXRlbCBzZW11YSBrZSBrZWFkYWFuIGxhbmdzdW5nIGRpbWludGEgICAgICBuLCBcXCAgIHVsYW5naSAiCisicGVuY2FyaWFuIHRlcmFraGlyXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6NTUKK21zZ2lkICJJbnRyb2R1Y3Rpb24gdG8gcGFja2FnZSBzZWxlY3Rpb25zIgorbXNnc3RyICJQZW5nYW50YXIga2UgcGVtaWxpaGFuIHBha2V0IgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjU1Cittc2dpZCAiIgorIldlbGNvbWUgdG8gZHNlbGVjdCdzIG1haW4gcGFja2FnZSBsaXN0aW5nLlxuIgorIlxuIgorIllvdSB3aWxsIGJlIHByZXNlbnRlZCB3aXRoIGEgbGlzdCBvZiBwYWNrYWdlcyB3aGljaCBhcmUgaW5zdGFsbGVkIG9yICIKKyJhdmFpbGFibGVcbiIKKyJmb3IgaW5zdGFsbGF0aW9uLiAgWW91IGNhbiBuYXZpZ2F0ZSBhcm91bmQgdGhlIGxpc3QgdXNpbmcgdGhlIGN1cnNvciBrZXlzLFxuIgorIm1hcmsgcGFja2FnZXMgZm9yIGluc3RhbGxhdGlvbiAodXNpbmcgYCsnKSBvciBkZWluc3RhbGxhdGlvbiAodXNpbmcgYC0nKS5cbiIKKyJQYWNrYWdlcyBjYW4gYmUgbWFya2VkIGVpdGhlciBzaW5nbHkgb3IgaW4gZ3JvdXBzOyBpbml0aWFsbHkgeW91IHdpbGwgc2VlICIKKyJ0aGF0XG4iCisidGhlIGxpbmUgYEFsbCBwYWNrYWdlcycgaXMgc2VsZWN0ZWQuICBgKycsIGAtJyBhbmQgc28gb24gd2lsbCBhZmZlY3QgYWxsICIKKyJ0aGVcbiIKKyJwYWNrYWdlcyBkZXNjcmliZWQgYnkgdGhlIGhpZ2hsaWdodGVkIGxpbmUuXG4iCisiXG4iCisiU29tZSBvZiB5b3VyIGNob2ljZXMgd2lsbCBjYXVzZSBjb25mbGljdHMgb3IgZGVwZW5kZW5jeSBwcm9ibGVtczsgeW91IHdpbGwgIgorImJlXG4iCisiZ2l2ZW4gYSBzdWItbGlzdCBvZiB0aGUgcmVsZXZhbnQgcGFja2FnZXMsIHNvIHRoYXQgeW91IGNhbiBzb2x2ZSB0aGUgIgorInByb2JsZW1zLlxuIgorIlxuIgorIllvdSBzaG91bGQgcmVhZCB0aGUgbGlzdCBvZiBrZXlzIGFuZCB0aGUgZXhwbGFuYXRpb25zIG9mIHRoZSBkaXNwbGF5LlxuIgorIk11Y2ggb24tbGluZSBoZWxwIGlzIGF2YWlsYWJsZSwgcGxlYXNlIG1ha2UgdXNlIG9mIGl0IC0gcHJlc3MgYD8nIGF0XG4iCisiYW55IHRpbWUgZm9yIGhlbHAuXG4iCisiXG4iCisiV2hlbiB5b3UgaGF2ZSBmaW5pc2hlZCBzZWxlY3RpbmcgcGFja2FnZXMsIHByZXNzIDxlbnRlcj4gdG8gY29uZmlybSAiCisiY2hhbmdlcyxcbiIKKyJvciBgWCcgdG8gcXVpdCB3aXRob3V0IHNhdmluZyBjaGFuZ2VzLiBBIGZpbmFsIGNoZWNrIG9uIGNvbmZsaWN0cyBhbmRcbiIKKyJkZXBlbmRlbmNpZXMgd2lsbCBiZSBkb25lIC0gaGVyZSB0b28geW91IG1heSBzZWUgYSBzdWJsaXN0LlxuIgorIlxuIgorIlByZXNzIDxzcGFjZT4gdG8gbGVhdmUgaGVscCBhbmQgZW50ZXIgdGhlIGxpc3Qgbm93LlxuIgorbXNnc3RyICIiCisiU2VsYW1hdCBiZXJqdW1wYSBkZW5nYW4gZGFmdGFyIHBha2V0IHV0YW1hIGRzZWxlY3QuXG4iCisiXG4iCisiQW5kYSBha2FuIGRpc2FqaWthbiBkZW5nYW4gc3VhdHUgZGFmdGFyIHBha2V0IHlhbmcgdGVycGFzYW5nIGF0YXUgdGVyc2VkaWFcbiIKKyJ1bnR1ayBkaXBhc2FuZy4gQW5kYSBkYXBhdCBtZW5lbHVzdXJpIHNlbHVydWggZGFmdGFyIGRlbmdhbiB0b21ib2wga3Vyc29yLFxuIgorIm1lbmFuZGFpIHBha2V0IHVudHVrIGRpcGFzYW5nIChkZW5nYW4gYCsnKSBhdGF1IGRpYnVhbmcgKGRlbmdhbiBgLScpLlxuIgorIlBha2V0IGRhcGF0IGRpdGFuZGFpIHNlY2FyYSB0dW5nZ2FsIGF0YXUgZGFsYW0gc2VidWFoIGdydXAuIE11bGFueWEsIEFuZGEgIgorImFrYW4gbWVsaWhhdCBcbiIKKyJiYWh3YSBiYXJpcyBgU2VtdWEgcGFrZXQnIHRlcnBpbGloLiBUb21ib2wgYCsnLGAtJywgZGFuIHNldGVydXNueWEgYWthbiBcbiIKKyJtZWxpYmF0a2FuIHNlbXVhIHBha2V0IHlhbmcgZGl3YWtpbGkgb2xlaCBiYXJpcyB5YW5nIHRlcnNvcm90LlxuIgorIlxuIgorIkJlYmVyYXBhIHBpbGloYW4gQW5kYSBha2FuIG1lbnllYmFia2FuIGJlbnRyb2sgYXRhdSBtYXNhbGFoIGtldGVyZ2FudHVuZ2FuLlxuIgorIkFuZGEgYWthbiBkaWJlcmlrYW4gc3ViLWRhZnRhciBwYWtldC1wYWtldCB5YW5nIGJlcmthaXRhbiwgc2VoaW5nZ2EgQW5kYSAiCisiZGFwYXRcbiIKKyJtZW55ZWxlc2Fpa2FuIG1hc2FsYWggdGVyc2VidXQuXG4iCisiXG4iCisiQW5kYSBzZWJhaWtueWEgbWVtYmFjYSBkYWZ0YXIgdG9tYm9sIGRhbiBwZW5qZWxhc2FuIHBhZGEgbGF5YXIuXG4iCisiU2ViYWdpYW4gYmVzYXIgcGFuZHVhbiB0ZXJzZWRpYSBvbi1saW5lLCBzaWxha2FuIG1lbmdndW5ha2FubnlhIC0gdGVrYW4gYD8nXG4iCisic2V0aWFwIHNhYXQgdW50dWsgbWVsaWhhdCBwYW5kdWFuLlxuIgorIlxuIgorIkFwYWJpbGEgQW5kYSB0ZWxhaCBzZWxlc2FpIG1lbWlsaWggcGFrZXQsIHRla2FuIDxlbnRlcj4gdW50dWsga29uZmlybWFzaSxcbiIKKyJhdGF1IGBYJyB1bnR1ayBrZWx1YXIgdGFucGEgbWVueWltcGFuIHBlcnViYWhhbi4gUGVtZXJpa3NhYW4gYWtoaXJcbiIKKyJhdGFzIGtlbXVuZ2tpbmFuIGJlbnRyb2thbiBkYW4ga2V0ZXJnYW50dW5nYW4gcGFrZXQgYWthbiBkaWxha3VrYW4gLSBkaSAiCisic2luaVxuIgorImp1Z2EgbXVuZ2tpbiBBbmRhIGFrYW4gbWVsaWhhdCBzdWItZGFmdGFyLlxuIgorIlxuIgorIlRla2FuIDxlbnRlcj4gdW50dWsgbWVuaW5nZ2Fsa2FuIHBhbmR1YW4gc2VrYXJhbmcgZGFuIG1hc3VrIGtlIGRhZnRhciAiCisicGFrZXQuXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6ODAKK21zZ2lkICJJbnRyb2R1Y3Rpb24gdG8gcmVhZC1vbmx5IHBhY2thZ2UgbGlzdCBicm93c2VyIgorbXNnc3RyICJQZW5nYW50YXIga2UgYnJvd3NlciBkYWZ0YXIgcGFrZXQgaGFueWEtYmFjYSIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo4MAorbXNnaWQgIiIKKyJXZWxjb21lIHRvIGRzZWxlY3QncyBtYWluIHBhY2thZ2UgbGlzdGluZy5cbiIKKyJcbiIKKyJZb3Ugd2lsbCBiZSBwcmVzZW50ZWQgd2l0aCBhIGxpc3Qgb2YgcGFja2FnZXMgd2hpY2ggYXJlIGluc3RhbGxlZCBvciAiCisiYXZhaWxhYmxlXG4iCisiZm9yIGluc3RhbGxhdGlvbi4gIFNpbmNlIHlvdSBkbyBub3QgaGF2ZSB0aGUgcHJpdmlsZWdlIG5lY2Vzc2FyeSB0byB1cGRhdGVcbiIKKyJwYWNrYWdlIHN0YXRlcywgeW91IGFyZSBpbiBhIHJlYWQtb25seSBtb2RlLiAgWW91IGNhbiBuYXZpZ2F0ZSBhcm91bmQgdGhlXG4iCisibGlzdCB1c2luZyB0aGUgY3Vyc29yIGtleXMgKHBsZWFzZSBzZWUgdGhlIGBLZXlzdHJva2VzJyBoZWxwIHNjcmVlbiksICIKKyJvYnNlcnZlXG4iCisidGhlIHN0YXR1cyBvZiB0aGUgcGFja2FnZXMgYW5kIHJlYWQgaW5mb3JtYXRpb24gYWJvdXQgdGhlbS5cbiIKKyJcbiIKKyJZb3Ugc2hvdWxkIHJlYWQgdGhlIGxpc3Qgb2Yga2V5cyBhbmQgdGhlIGV4cGxhbmF0aW9ucyBvZiB0aGUgZGlzcGxheS5cbiIKKyJNdWNoIG9uLWxpbmUgaGVscCBpcyBhdmFpbGFibGUsIHBsZWFzZSBtYWtlIHVzZSBvZiBpdCAtIHByZXNzIGA/JyBhdFxuIgorImFueSB0aW1lIGZvciBoZWxwLlxuIgorIlxuIgorIldoZW4geW91IGhhdmUgZmluaXNoZWQgYnJvd3NpbmcsIHByZXNzIGBRJyBvciA8ZW50ZXI+IHRvIHF1aXQuXG4iCisiXG4iCisiUHJlc3MgPHNwYWNlPiB0byBsZWF2ZSBoZWxwIGFuZCBlbnRlciB0aGUgbGlzdCBub3cuXG4iCittc2dzdHIgIiIKKyJTZWxhbWF0IGJlcmp1bXBhIGRlbmdhbiBkYWZ0YXIgcGFrZXQgdXRhbWEgZHNlbGVjdC5cbiIKKyJcbiIKKyJBbmRhIGFrYW4gZGlzYWppa2FuIHN1YXR1IGRhZnRhciBwYWtldCB5YW5nIHRlcnBhc2FuZyBhdGF1IHRlcnNlZGlhIHVudHVrICIKKyJkaXBhc2FuZy5cbiIKKyJPbGVoIGthcmVuYSBBbmRhIHRpZGFrIHB1bnlhIHdld2VuYW5nIHlhbmcgY3VrdXAgdW50dWsgbWVtcGVyYmFoYXJ1aSAiCisic3RhdHVzIFxuIgorInBha2V0LCBBbmRhIGJlcmFkYSBwYWRhIG1vZHVzIGhhbnlhLWJhY2EuIEFuZGEgZGFwYXQgbWVuZWx1c3VyaSBkYWZ0YXIgXG4iCisibWVuZ2d1bmFrYW4gdG9tYm9sIGt1cnNvciAoc2lsYWthbiBsaWhhdCBsYXlhciBwYW5kdWFuIGBUb21ib2wgU2luZ2thdCcpLCAiCisiYW1hdGlcbiIKKyJzdGF0dXMgcGFrZXQgZGFuIGJhY2FsYWgga2V0ZXJhbmdhbiB0ZW50YW5nbnlhLlxuIgorIlxuIgorIkFuZGEgc2ViYWlrbnlhIG1lbWJhY2EgZGFmdGFyIHRvbWJvbCBkYW4gcGVuamVsYXNhbm55YSBkaSBsYXlhci5cbiIKKyJTZWJhZ2lhbiBiZXNhciBwYW5kdWFuIHRlcnNlZGlhIG9uLWxpbmUsIHNpbGFrYW4gbWVuZ2d1bmFrYW5ueWEgLSB0ZWthbiBgPydcbiIKKyJzZXRpYXAgc2FhdCB1bnR1ayBtZWxpaGF0IHBhbmR1YW4uXG4iCisiXG4iCisiQXBhYmlsYSBBbmRhIHRlbGFoIHNlbGVzYWksIHRla2FuIGBRJyBhdGF1IDxlbnRlcj4gdW50dWsga2VsdWFyLlxuIgorIlxuIgorIlRla2FuIDxlbnRlcj4gdW50dWsgbWVuaW5nZ2Fsa2FuIHBhbmR1YW4gc2VrYXJhbmcgZGFuIG1hc3VrIGtlIGRhZnRhciAiCisicGFrZXQuXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6OTkKK21zZ2lkICJJbnRyb2R1Y3Rpb24gdG8gY29uZmxpY3QvZGVwZW5kZW5jeSByZXNvbHV0aW9uIHN1Yi1saXN0IgorbXNnc3RyICJQZW5nYW50YXIga2Ugc3ViLWRhZnRhciBwZW1lY2FoYW4gbWFzYWxhaCBiZW50cm9rL2tldGVyZ2FudHVuZ2FuIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjk5Cittc2dpZCAiIgorIkRlcGVuZGVuY3kvY29uZmxpY3QgcmVzb2x1dGlvbiAtIGludHJvZHVjdGlvbi5cbiIKKyJcbiIKKyJPbmUgb3IgbW9yZSBvZiB5b3VyIGNob2ljZXMgaGF2ZSByYWlzZWQgYSBjb25mbGljdCBvciBkZXBlbmRlbmN5IHByb2JsZW0gLVxuIgorInNvbWUgcGFja2FnZXMgc2hvdWxkIG9ubHkgYmUgaW5zdGFsbGVkIGluIGNvbmp1bmN0aW9uIHdpdGggY2VydGFpbiBvdGhlcnMsICIKKyJhbmRcbiIKKyJzb21lIGNvbWJpbmF0aW9ucyBvZiBwYWNrYWdlcyBtYXkgbm90IGJlIGluc3RhbGxlZCB0b2dldGhlci5cbiIKKyJcbiIKKyJZb3Ugd2lsbCBzZWUgYSBzdWItbGlzdCBjb250YWluaW5nIHRoZSBwYWNrYWdlcyBpbnZvbHZlZC4gIFRoZSBib3R0b20gaGFsZiAiCisib2ZcbiIKKyJ0aGUgZGlzcGxheSBzaG93cyByZWxldmFudCBjb25mbGljdHMgYW5kIGRlcGVuZGVuY2llczsgdXNlIGBpJyB0byBjeWNsZSAiCisiYmV0d2VlblxuIgorInRoYXQsIHRoZSBwYWNrYWdlIGRlc2NyaXB0aW9ucyBhbmQgdGhlIGludGVybmFsIGNvbnRyb2wgaW5mb3JtYXRpb24uXG4iCisiXG4iCisiQSBzZXQgb2YgYHN1Z2dlc3RlZCcgcGFja2FnZXMgaGFzIGJlZW4gY2FsY3VsYXRlZCwgYW5kIHRoZSBpbml0aWFsIG1hcmtpbmdzICIKKyJpblxuIgorInRoaXMgc3ViLWxpc3QgaGF2ZSBiZWVuIHNldCB0byBtYXRjaCB0aG9zZSwgc28geW91IGNhbiBqdXN0IGhpdCBSZXR1cm4gdG9cbiIKKyJhY2NlcHQgdGhlIHN1Z2dlc3Rpb25zIGlmIHlvdSB3aXNoLiAgWW91IG1heSBhYm9ydCB0aGUgY2hhbmdlKHMpIHdoaWNoICIKKyJjYXVzZWRcbiIKKyJ0aGUgcHJvYmxlbShzKSwgYW5kIGdvIGJhY2sgdG8gdGhlIG1haW4gbGlzdCwgYnkgcHJlc3NpbmcgY2FwaXRhbCBgWCcuXG4iCisiXG4iCisiWW91IGNhbiBhbHNvIG1vdmUgYXJvdW5kIHRoZSBsaXN0IGFuZCBjaGFuZ2UgdGhlIG1hcmtpbmdzIHNvIHRoYXQgdGhleSBhcmUgIgorIm1vcmVcbiIKKyJsaWtlIHdoYXQgeW91IHdhbnQsIGFuZCB5b3UgY2FuIGByZWplY3QnIG15IHN1Z2dlc3Rpb25zIGJ5IHVzaW5nIHRoZSAiCisiY2FwaXRhbFxuIgorImBEJyBvciBgUicga2V5cyAoc2VlIHRoZSBrZXliaW5kaW5ncyBoZWxwIHNjcmVlbikuICBZb3UgY2FuIHVzZSBjYXBpdGFsIGBRJyAiCisidG9cbiIKKyJmb3JjZSBtZSB0byBhY2NlcHQgdGhlIHNpdHVhdGlvbiBjdXJyZW50bHkgZGlzcGxheWVkLCBpbiBjYXNlIHlvdSB3YW50IHRvXG4iCisib3ZlcnJpZGUgYSByZWNvbW1lbmRhdGlvbiBvciB0aGluayB0aGF0IHRoZSBwcm9ncmFtIGlzIG1pc3Rha2VuLlxuIgorIlxuIgorIlByZXNzIDxzcGFjZT4gdG8gbGVhdmUgaGVscCBhbmQgZW50ZXIgdGhlIHN1Yi1saXN0OyByZW1lbWJlcjogcHJlc3MgYD8nIGZvciAiCisiaGVscC5cbiIKK21zZ3N0ciAiIgorIlBlbWVjYWhhbiBtYXNhbGFoIGtldGVyZ2FudHVuZ2FuL2JlbnRyb2thbiAtIHBlbmdhbnRhci5cbiIKKyJcbiIKKyJTYWxhaCBzYXR1IGF0YXUgbGViaWggcGlsaWhhbiBBbmRhIHRlbGFoIG1lbnllYmFia2FuIG1hc2FsYWggYmVudHJva2FuICIKKyJhdGF1IFxuIgorImtldGVyZ2FudHVuZ2FuIHBha2V0IC0gYmViZXJhcGEgcGFrZXQgc2VoYXJ1c255YSBoYW55YSBkaXBhc2FuZyBiZXJzYW1hYW4gXG4iCisiZGVuZ2FuIHBha2V0IGxhaW4sIGRhbiBiZWJlcmFwYSBrb21iaW5hc2kgcGFrZXQgbXVuZ2tpbiB0aWRhayBkYXBhdCAiCisiZGlwYXNhbmcgXG4iCisic2VjYXJhIGJlcnNhbWFhbi5cbiIKKyJcbiIKKyJBbmRhIGFrYW4gbWVsaWhhdCBzdWItZGFmdGFyIGJlcmlzaSBwYWtldC1wYWtldCB5YW5nIHRlcmxpYmF0LiBTZXRlbmdhaCAiCisibGF5YXJcbiIKKyJiYWdpYW4gYmF3YWggbWVuYW1waWxrYW4gcGFrZXQtcGFrZXQgeWFuZyBiZW50cm9rIGRhbiBzYWxpbmcgdGVyZ2FudHVuZy5cbiIKKyJHdW5ha2FuIGBpJyAgdW50dWsgYmVycGluZGFoIGRpIGFudGFyYSBwZW5qZWxhc2FuIHBha2V0IGRhbiBrZXRlcmFuZ2FuICIKKyInY29udHJvbCcgaW50ZXJuYWwuXG4iCisiXG4iCisiU2VrdW1wdWxhbiBwYWtldCB5YW5nIGBkaXNhcmFua2FuJyB0ZWxhaCBkaXNpYXBrYW4sIGRhbiBwZW5hbmRhYW4gYXdhbCBcbiIKKyJwYWRhIHN1Yi1kYWZ0YXIgaW5pIHRlbGFoIGRpc2V0ZWwgYWdhciBzZXN1YWksIHNlaGluZ2dhIEFuZGEgY3VrdXAgbWVuZWthbiBcbiIKKyInUmV0dXJuJyB1bnR1ayBtZW5lcmltYSBzYXJhbiB0ZXJzZWJ1dC4gQW5kYSBqdWdhIGRhcGF0IG1lbWJhdGFsa2FuICIKKyJwZXJ1YmFoYW5cbiIKKyJ5YW5nIG1lbnllYmFia2FuIG1hc2FsYWggdGVyc2VidXQgZGFuIGtlbWJhbGkga2UgZGFmdGFyIHV0YW1hIGRlbmdhbiBcbiIKKyJtZW5la2FuIGh1cnVmIGBYJyBiZXNhci5cbiIKKyJcbiIKKyJBbmRhIGp1Z2EgZGFwYXQgbWVuZWx1c3VyaSBzZWx1cnVoIGRhZnRhciBkYW4gbWVuZ3ViYWggcGVuYW5kYWFuIHNlaGluZ2dhICIKKyJzZW11YW55YVxuIgorInNlc3VhaSBkZW5nYW4ga2VpbmdpbmFuIEFuZGEsIGRhbiBBbmRhIGp1Z2EgZGFwYXQgYG1lbm9sYWsnIHNhcmFuIHNheWEgIgorImRlbmdhbiBcbiIKKyJtZW5nZ3VuYWthbiB0b21ib2wgYEQnIGF0YXUgYFInIGJlc2FyIChsaWhhdCBsYXlhciBwYW5kdWFuIHJlbGFzaSB0b21ib2wpLiAiCisiQW5kYSBkYXBhdCBcbiIKKyJtZW5nZ3VuYWthbiBgUScgYmVzYXIgdW50dWsgbWVtYWtzYSBzYXlhIG1lbmVyaW1hIGtlYWRhYW4geWFuZyBhZGEgIgorInNla2FyYW5nLCBcbiIKKyJkYWxhbSBoYWwgQW5kYSBpbmdpbiBtZW5pbXBhIHN1YXR1IGFuanVyYW4gYXRhdSBBbmRhIGJlcnBpa2lyIGJhaHdhIGFkYSAiCisic3VhdHUgeWFuZyBcbiIKKyJzYWxhaCBwYWRhIHByb2dyYW0uXG4iCisiXG4iCisiVGVrYW4gPHNwYXNpPiB1bnR1ayBtZW5pbmdnYWxrYW4gcGFuZHVhbiBkYW4gbWFzdWsga2Ugc3ViLWRhZnRhcjsgaW5nYXQ6ICIKKyJ0ZWthbiBgPycgXG4iCisidW50dWsgbWVsaWhhdCBwYW5kdWFuLlxuIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjEyNQorbXNnaWQgIkRpc3BsYXksIHBhcnQgMTogcGFja2FnZSBsaXN0aW5nIGFuZCBzdGF0dXMgY2hhcnMiCittc2dzdHIgIlRhbXBpbGFuLCBiYWdpYW4gMTogZGFmdGFyIHBha2V0IGRhbiBrYXJha3RlciBzdGF0dXMiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTI1CisjLCBmdXp6eQorbXNnaWQgIiIKKyJUaGUgdG9wIGhhbGYgb2YgdGhlIHNjcmVlbiBzaG93cyBhIGxpc3Qgb2YgcGFja2FnZXMuICBGb3IgZWFjaCBwYWNrYWdlIHlvdSAiCisic2VlXG4iCisiZm91ciBjb2x1bW5zIGZvciBpdHMgY3VycmVudCBzdGF0dXMgb24gdGhlIHN5c3RlbSBhbmQgbWFyay4gIEluIHRlcnNlIG1vZGUgIgorIih1c2VcbiIKKyJgdicgdG8gdG9nZ2xlIHZlcmJvc2UgZGlzcGxheSkgdGhlc2UgYXJlIHNpbmdsZSBjaGFyYWN0ZXJzLCBmcm9tIGxlZnQgdG8gIgorInJpZ2h0OlxuIgorIlxuIgorIiBFcnJvciBmbGFnOiBTcGFjZSAtIG5vIGVycm9yIChidXQgcGFja2FnZSBtYXkgYmUgaW4gYnJva2VuIHN0YXRlIC0gc2VlICIKKyJiZWxvdylcbiIKKyIgICAgICAgICAgICAgIGBSJyAgLSBzZXJpb3VzIGVycm9yIGR1cmluZyBpbnN0YWxsYXRpb24sIG5lZWRzICIKKyJyZWluc3RhbGxhdGlvbjtcbiIKKyIgSW5zdGFsbGVkIHN0YXRlOiAgICAgU3BhY2UgICAgLSBub3QgaW5zdGFsbGVkO1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgYConICAgICAtIGluc3RhbGxlZDtcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgIGAtJyAgICAgLSBub3QgaW5zdGFsbGVkIGJ1dCBjb25maWcgZmlsZXMgcmVtYWluO1xuIgorIiAgIHBhY2thZ2VzIGluIHRoZXNlIHsgYFUnICAgICAtIHVucGFja2VkIGJ1dCBub3QgeWV0IGNvbmZpZ3VyZWQ7XG4iCisiICAgc3RhdGVzIGFyZSBub3QgICAgeyBgQycgICAgIC0gaGFsZi1jb25maWd1cmVkIChhbiBlcnJvciBoYXBwZW5lZCk7XG4iCisiICAgKHF1aXRlKSBwcm9wZXJseSAgeyBgSScgICAgIC0gaGFsZi1pbnN0YWxsZWQgKGFuIGVycm9yIGhhcHBlbmVkKTtcbiIKKyIgICBpbnN0YWxsZWQgICAgICAgICB7IGBXJyxgdCcgLSB0cmlnZ2VycyBhcmUgYXdhaXRlZCByZXNwLiBwZW5kaW5nLlxuIgorIiBPbGQgbWFyazogd2hhdCB3YXMgcmVxdWVzdGVkIGZvciB0aGlzIHBhY2thZ2UgYmVmb3JlIHByZXNlbnRpbmcgdGhpcyBsaXN0O1xuIgorIiBNYXJrOiB3aGF0IGlzIHJlcXVlc3RlZCBmb3IgdGhpcyBwYWNrYWdlOlxuIgorIiAgYConOiBtYXJrZWQgZm9yIGluc3RhbGxhdGlvbiBvciB1cGdyYWRlO1xuIgorIiAgYC0nOiBtYXJrZWQgZm9yIHJlbW92YWwsIGJ1dCBhbnkgY29uZmlndXJhdGlvbiBmaWxlcyB3aWxsIHJlbWFpbjtcbiIKKyIgIGA9Jzogb24gaG9sZDogcGFja2FnZSB3aWxsIG5vdCBiZSBwcm9jZXNzZWQgYXQgYWxsO1xuIgorIiAgYF8nOiBtYXJrZWQgZm9yIHB1cmdlIGNvbXBsZXRlbHkgLSBldmVuIHJlbW92ZSBjb25maWd1cmF0aW9uO1xuIgorIiAgYG4nOiBwYWNrYWdlIGlzIG5ldyBhbmQgaGFzIHlldCB0byBiZSBtYXJrZWQgZm9yIGluc3RhbGwvcmVtb3ZlLyZjLlxuIgorIlxuIgorIkFsc28gZGlzcGxheWVkIGFyZSBlYWNoIHBhY2thZ2UncyBQcmlvcml0eSwgU2VjdGlvbiwgbmFtZSwgaW5zdGFsbGVkIGFuZFxuIgorImF2YWlsYWJsZSB2ZXJzaW9uIG51bWJlcnMgKHNoaWZ0LVYgdG8gZGlzcGxheS9oaWRlKSBhbmQgc3VtbWFyeSAiCisiZGVzY3JpcHRpb24uXG4iCittc2dzdHIgIiIKKyJTZXRlbmdhaCBsYXlhciBiYWdpYW4gYXRhcyBtZW5hbXBpbGthbiBzdWF0dSBkYWZ0YXIgcGFrZXQuIFVudHVrIHNldGlhcCAiCisicGFrZXQgQW5kYVxuIgorImFrYW4gbWVsaWhhdCBlbXBhdCBrb2xvbSBiZXJpc2kgc3RhdHVzIHBha2V0IHBhZGEgc2lzdGVtIGRhbiBzdWF0dSB0YW5kYS4gIgorIkRhbGFtIG1vZHVzXG4iCisicmluZ2thcyAoZ3VuYWthbiBgdicgdW50dWsgdGFtcGlsYW4gdGVyaW5jaSksIGluaSBhZGFsYWgga2FyYWt0ZXIgdHVuZ2dhbCwgIgorImRhcmkga2lyaSBrZSBrYW5hbjpcbiIKKyJcbiIKKyIgVGFuZGEga2VzYWxhaGFuOiBLb3NvbmcgLSB0aWRhayBhZGEga2VzYWxhaGFuICh0ZXRhcGkgcGFrZXQgbXVuZ2tpbiBzYWphICIKKyJydXNhayAtIGxpaGF0IGRpIGJhd2FoIGluaSlcbiIKKyIgICAgICAgICAgICAgICAgICAgIGBSJyAgLSBhZGEga2VzYWxhaGFuIHNlcml1cyBzZWxhbWEgcGVtYXNhbmdhbiwgcGVybHUgIgorImRpcGFzYW5nIHVsYW5nO1xuIgorIiBLZWFkYWFuIHRlcnBhc2FuZzogIFNwYXNpIC0gdGlkYWsgdGVycGFzYW5nO1xuIgorIiAgICAgICAgICAgICAgICAgICAgICBgKicgIC0gdGVycGFzYW5nO1xuIgorIiAgICAgICAgICAgICAgICAgICAgICBgLScgIC0gdGlkYWsgdGVycGFzYW5nIHRldGFwaSBiZXJrYXMga29uZmlndXJhc2kgbWFzaWggIgorImFkYTtcbiIKKyIgICAgICAgcGFrZXQgZGFsYW0gIHsgYFUnICAtIHRlbGFoIGRpYnVrYSB0ZXRhcGkgYmVsdW0gZGlrb25maWd1cmFzaTtcbiIKKyIgICAgICAga2VhZGFhbiBpbmkgIHsgYEMnICAtIHRlcmtvbmZpZ3VyYXNpIHNlcGFydWggKHRlbGFoIHRlcmphZGkgIgorImtlc2FsYWhhbik7XG4iCisiICAgICAgIHNlZGFuZyBydXNhayB7IGBJJyAgLSB0ZXJwYXNhbmcgc2VwYXJ1aCAodGVsYWggdGVyamFkaSBrZXNhbGFoYW4pLlxuIgorIiBUYW5kYSBsYW1hOiBoYWwgeWFuZyB0ZWxhaCBkaW1pbnRhIHRlcmhhZGFwIHBha2V0IGluaSBzZWJlbHVtIG1lbmFtcGlsa2FuICIKKyJkYWZ0YXIgaW5pO1xuIgorIiBUYW5kYTogaGFsIHlhbmcgZGltaW50YSB0ZXJoYWRhcCBwYWtldCBpbmk6XG4iCisiICBgKic6IGRpdGFuZGFpIHVudHVrIGRpcGFzYW5nIGF0YXUgZGlwZXJiYWhhcnVpO1xuIgorIiAgYC0nOiBkaXRhbmRhaSB1bnR1ayBkaWJ1YW5nLCB0ZXRhcGkga29uZmlndXJhc2lueWEgZGliaWFya2FuIHNhamE7XG4iCisiICBgPSc6IHNlZGFuZyBkaWNla2FsOiBwYWtldCB0aWRhayBha2FuIGRpcHJvc2VzO1xuIgorIiAgYF8nOiBkaXRhbmRhaSB1bnR1ayBkaWJ1YW5nIHNlbHVydWhueWEgLSB0ZXJtYXN1ayBrb25maWd1cmFzaW55YTtcbiIKKyIgIGBuJzogaW5pIHBha2V0IGJhcnUgZGFuIGJlbHVtIGRpdGFuZGFpIHVudHVrIGRpcGFzYW5nL2RpYnVhbmcvZGxsLlxuIgorIlxuIgorIkp1Z2EgYWthbiBkaXRhbXBpbGthbiB1bnR1ayBzZXRpYXAgcGFrZXQ6IFByaW9yaXRhcywgQmFnaWFuLCBOYW1hLCBub21vciAiCisidmVyc2kgeWFuZyBcbiIKKyJ0ZXJwYXNhbmcgZGFuIHlhbmcgdGVyc2VkaWEgKHNoaWZ0LVYgdW50dWsgbWVuYW1waWxrYW4vbWVueWVtYnVueWlrYW4pIGRhbiBcbiIKKyJrZXRlcmFuZ2FuIHJpbmdrYXMuXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTUyCittc2dpZCAiRGlzcGxheSwgcGFydCAyOiBsaXN0IGhpZ2hsaWdodDsgaW5mb3JtYXRpb24gZGlzcGxheSIKK21zZ3N0ciAiVGFtcGlsYW4sIGJhZ2lhbiAyOiBwZW55b3JvdGFuIGRhZnRhcjsgdGFtcGlsYW4ga2V0ZXJhbmdhbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxNTIKK21zZ2lkICIiCisiKiBIaWdobGlnaHQ6IE9uZSBsaW5lIGluIHRoZSBwYWNrYWdlIGxpc3Qgd2lsbCBiZSBoaWdobGlnaHRlZC4gIEl0ICIKKyJpbmRpY2F0ZXNcbiIKKyIgIHdoaWNoIHBhY2thZ2Uocykgd2lsbCBiZSBhZmZlY3RlZCBieSBwcmVzc2VzIG9mIGArJywgYC0nIGFuZCBgXycuXG4iCisiXG4iCisiKiBUaGUgZGl2aWRpbmcgbGluZSBpbiB0aGUgbWlkZGxlIG9mIHRoZSBzY3JlZW4gc2hvd3MgYSBicmllZiBleHBsYW5hdGlvbiAiCisib2ZcbiIKKyIgIHRoZSBzdGF0dXMgb2YgdGhlIGN1cnJlbnRseS1oaWdobGlnaHRlZCBwYWNrYWdlLCBvciBhIGRlc2NyaXB0aW9uIG9mICIKKyJ3aGljaFxuIgorIiAgZ3JvdXAgaXMgaGlnaGxpZ2h0ZWQgaWYgYSBncm91cCBsaW5lIGlzLiAgSWYgeW91IGRvbid0IHVuZGVyc3RhbmQgdGhlXG4iCisiICBtZWFuaW5nIG9mIHNvbWUgb2YgdGhlIHN0YXR1cyBjaGFyYWN0ZXJzIGRpc3BsYXllZCwgZ28gdG8gdGhlIHJlbGV2YW50XG4iCisiICBwYWNrYWdlIGFuZCBsb29rIGF0IHRoaXMgZGl2aWRlciBsaW5lLCBvciB1c2UgdGhlIGB2JyBrZXkgZm9yIGEgdmVyYm9zZVxuIgorIiAgZGlzcGxheSAocHJlc3MgYHYnIGFnYWluIHRvIGdvIGJhY2sgdG8gdGhlIHRlcnNlIGRpc3BsYXkpLlxuIgorIlxuIgorIiogVGhlIGJvdHRvbSBvZiB0aGUgc2NyZWVuIHNob3dzIG1vcmUgaW5mb3JtYXRpb24gYWJvdXQgdGhlXG4iCisiICBjdXJyZW50bHktaGlnaGxpZ2h0ZWQgcGFja2FnZSAoaWYgdGhlcmUgaXMgb25seSBvbmUpLlxuIgorIlxuIgorIiAgSXQgY2FuIHNob3cgYW4gZXh0ZW5kZWQgZGVzY3JpcHRpb24gb2YgdGhlIHBhY2thZ2UsIHRoZSBpbnRlcm5hbCBwYWNrYWdlXG4iCisiICBjb250cm9sIGRldGFpbHMgKGVpdGhlciBmb3IgdGhlIGluc3RhbGxlZCBvciBhdmFpbGFibGUgdmVyc2lvbiBvZiB0aGVcbiIKKyIgIHBhY2thZ2UpLCBvciBpbmZvcm1hdGlvbiBhYm91dCBjb25mbGljdHMgYW5kIGRlcGVuZGVuY2llcyBpbnZvbHZpbmcgdGhlXG4iCisiICBjdXJyZW50IHBhY2thZ2UgKGluIGNvbmZsaWN0L2RlcGVuZGVuY3kgcmVzb2x1dGlvbiBzdWJsaXN0cykuXG4iCisiXG4iCisiICBVc2UgdGhlIGBpJyBrZXkgdG8gY3ljbGUgdGhyb3VnaCB0aGUgZGlzcGxheXMsIGFuZCBgSScgdG8gaGlkZSB0aGVcbiIKKyIgIGluZm9ybWF0aW9uIGRpc3BsYXkgb3IgZXhwYW5kIGl0IHRvIHVzZSBhbG1vc3QgYWxsIG9mIHRoZSBzY3JlZW4uXG4iCittc2dzdHIgIiIKKyIqIFBlbnlvcm90YW46IFNhdHUgYmFyaXMgcGFkYSBkYWZ0YXIgcGFrZXQgYWthbiBkaXNvcm90LiBIYWwgaW5pIG1lbnVuanVra2FuICIKKyJwYWtldC1wYWtldFxuIgorIiAgIHlhbmcgYWthbiB0ZXJwZW5nYXJ1aCBkZW5nYW4gbWVuZWthbiBgKycsIGAtJywgZGFuIGBfJy5cbiIKKyJcbiIKKyIqIEJhcmlzIHBlbWlzYWggZGkgdGVuZ2FoIGxheWFyIG1lbmFtcGlsa2FuIHBlbmplbGFzYW4gc2luZ2thdCB0ZW50YW5nICIKKyJzdGF0dXMgcGFrZXQgeWFuZyBcbiIKKyIgIHNlZGFuZyBkaXNvcm90LCBhdGF1IHN1YXR1IHBlbmplbGFzYW4gdGVudGFuZyBncnVwIHlhbmcgc2VkYW5nIGRpc29yb3QuICIKKyJKaWthIGFuZCB0aWRhayBcbiIKKyIgIG1lbmdlcnRpIGFydGkgZGFyaSBiZWJlcmFwYSBrYXJla3RlciBzdGF0dXMgeWFuZyBkaXRhbXBpbGthbiwgbGloYXRsYWggIgorInBha2V0IHlhbmcgXG4iCisiICBzZWh1YnVuZ2FuIGRhbiBiYWNhbGFoIGtldGVyYW5nYW4geWFuZyBhZGEgZGkgZ2FyaXMgcGVtaXNhaCBpbmkuIEF0YXUsICIKKyJndW5ha2FuIHRvbWJvbCBcbiIKKyIgIGB2JyB1bnR1ayB0YW1waWxhbiB0ZXJpbmNpICh0ZWthbiBgdicgbGFnaSB1bnR1ayBrZW1iYWxpIGtlIHRhbXBpbGFuICIKKyJyaW5na2FzKS5cbiIKKyJcbiIKKyIqIEJhZ2lhbiBiYXdhaCBsYXlhciBtZW5hbXBpbGthbiBrZXRlcmFuZ2FuIHRlbnRhbmcgcGFrZXQgeWFuZyBzZWRhbmcgIgorImRpc29yb3QgXG4iCisiICAoamlrYSBoYW55YSBhZGEgc2F0dSBwYWtldCkuXG4iCisiXG4iCisiICBEaSBiYWdpYW4gaW5pIGp1Z2EgZGFwYXQgbWVuYW1waWxrYW4ga2V0ZXJhbmdhbiB0YW1iYWhhbiB0ZW50YW5nIHBha2V0ICIKKyJ0ZXJzZWJ1dC5cbiIKKyIgIHJpbmNpYW4gJ2NvbnRyb2wnIHBha2V0IGludGVybmFsIChiYWlrIHVudHVrIHZlcnNpIHlhbmcgdGVycGFzYW5nIG1hdXB1biAiCisieWFuZyB0ZXJzZWRpYSksXG4iCisiICBhdGF1IGtldGVyYW5nYW4gdGVudGFuZyBtYXNhbGFoIGJlbnRyb2thbiBkYW4ga2V0ZXJnYW50dW5nYW4geWFuZyAiCisibWVsaWJhdGthbiBwYWtldFxuIgorIiAgdGVyc2VidXQgKGRhbGFtIHN1Yi1kYWZ0YXIgcGVtZWNhaGFuIGJlbnRyb2thbi9rZXRlcmdhbnR1bmdhbikuXG4iCisiXG4iCisiICBHdW5ha2FuIHRvbWJvbCBgaScgdW50dWsgYmVycGluZGFoLXBpbmRhaCBzZXBhbmphbmcgbGF5YXIsIGRhbiBgSScgdW50dWsgXG4iCisiICBtZW55ZW1idW55aWthbiB0YW1waWxhbiBpbmZvcm1hc2kgYXRhdSBtZW1wZXJsZWJhcm55YSBoaW5nZ2EgbWVtZW51aGkgIgorImxheWFyLlxuIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjE3NgorbXNnaWQgIkludHJvZHVjdGlvbiB0byBtZXRob2Qgc2VsZWN0aW9uIGRpc3BsYXkiCittc2dzdHIgIlBlbmdhbnRhciBrZSB0YW1waWxhbiBwZW1pbGloYW4gbWV0b2RlIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjE3NgorbXNnaWQgIiIKKyJkc2VsZWN0IGFuZCBkcGtnIGNhbiBkbyBhdXRvbWF0aWMgaW5zdGFsbGF0aW9uLCBsb2FkaW5nIHRoZSBwYWNrYWdlIGZpbGVzIHRvICIKKyJiZVxuIgorImluc3RhbGxlZCBmcm9tIG9uZSBvZiBhIG51bWJlciBvZiBkaWZmZXJlbnQgcG9zc2libGUgcGxhY2VzLlxuIgorIlxuIgorIlRoaXMgbGlzdCBhbGxvd3MgeW91IHRvIHNlbGVjdCBvbmUgb2YgdGhlc2UgaW5zdGFsbGF0aW9uIG1ldGhvZHMuXG4iCisiXG4iCisiTW92ZSB0aGUgaGlnaGxpZ2h0IHRvIHRoZSBtZXRob2QgeW91IHdpc2ggdG8gdXNlLCBhbmQgaGl0IEVudGVyLiAgWW91IHdpbGwgIgorInRoZW5cbiIKKyJiZSBwcm9tcHRlZCBmb3IgdGhlIGluZm9ybWF0aW9uIHJlcXVpcmVkIHRvIGRvIHRoZSBpbnN0YWxsYXRpb24uXG4iCisiXG4iCisiQXMgeW91IG1vdmUgdGhlIGhpZ2hsaWdodCBhIGRlc2NyaXB0aW9uIG9mIGVhY2ggbWV0aG9kLCB3aGVyZSBhdmFpbGFibGUsIGlzXG4iCisiZGlzcGxheWVkIGluIHRoZSBib3R0b20gaGFsZiBvZiB0aGUgc2NyZWVuLlxuIgorIlxuIgorIklmIHlvdSB3aXNoIHRvIHF1aXQgd2l0aG91dCBjaGFuZ2luZyBhbnl0aGluZyB1c2UgdGhlIGB4JyBrZXkgd2hpbGUgaW4gdGhlICIKKyJsaXN0XG4iCisib2YgaW5zdGFsbGF0aW9uIG1ldGhvZHMuXG4iCisiXG4iCisiQSBmdWxsIGxpc3Qgb2Yga2V5c3Ryb2tlcyBpcyBhdmFpbGFibGUgYnkgcHJlc3NpbmcgYGsnIG5vdywgb3IgZnJvbSB0aGUgIgorImhlbHBcbiIKKyJtZW51IHJlYWNoYWJsZSBieSBwcmVzc2luZyBgPycuXG4iCittc2dzdHIgIiIKKyJkc2VsZWN0IGRhbiBkcGtnIGRhcGF0IHNlY2FyYSBvdG9tYXRpcyBtZW1hc2FuZywgbWVtdWF0IGJlcmthcy1iZXJrYXMgIgorInBha2V0IFxuIgorImRhcmkgc2F0dSBhdGF1IGxlYmloIGtlbXVuZ2tpbmFuIHRlbXBhdCB5YW5nIGJlcmJlZGEuIFxuIgorIlxuIgorIkhhbCBpbmkgbWVtdW5na2lua2FuIEFuZGEgbWVtaWxpaCBzYWxhaCBzYXR1IG1ldG9kZSBwZW1hc2FuZ2FuLlxuIgorIlxuIgorIlBpbmRhaGthbiBzb3JvdGFuIGtlIG1ldG9kZSB5YW5nIGluZ2luIEFuZGEgZ3VuYWthbiBkYW4gdGVrYW4gRW50ZXIuIEFuZGEgIgorImFrYW4gXG4iCisiZGltaW50YSBtZW1hc3Vra2FuIGluZm9ybWFzaSB5YW5nIGRpcGVybHVrYW4gdW50dWsgcGVtYXNhbmdhbi5cbiIKKyJcbiIKKyJLZXRpa2EgQW5kYSBtZW1pbmRhaGthbiBzb3JvdGFuLCBrZXRlcmFuZ2FuIGRhcmkgc2V0aWFwIG1ldG9kZSwgYmlsYSAiCisidGVyc2VkaWEsIGFrYW4gXG4iCisiZGl0YW1waWxrYW4gZGkgc2V0ZW5nYWggbGF5YXIgYmFnaWFuIGJhd2FoLlxuIgorIlxuIgorIkppa2EgQW5kYSBpbmdpbiBrZWx1YXIgdGFucGEgbWVuZ3ViYWggc2VzdWF0dSBhcGFwdW4sIGd1bmFrYW4gdG9tYm9sIGB4JyAiCisic2FhdCBcbiIKKyJiZXJhZGEgZGFsYW0gZGFmdGFyIG1ldG9kZSBwZW1hc2FuZ2FuLlxuIgorIlxuIgorIlNlYnVhaCBkYWZ0YXIgdG9tYm9sIHNpbmdrYXQgeWFuZyBsZW5na2FwIHRlcnNlZGlhIGRlbmdhbiBtZW5la2FuIHRvbWJvbCAiCisiYGsnIFxuIgorInNla2FyYW5nLCBhdGF1IGRhcmkgbWVudSBwYW5kdWFuIGRlbmdhbiBtZW5la2FuIHRvbWJvbCBgPycuXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTk2Cittc2dpZCAiS2V5c3Ryb2tlcyBmb3IgbWV0aG9kIHNlbGVjdGlvbiIKK21zZ3N0ciAidG9tYm9sIHNpbmdrYXQgdW50dWsgcGVtaWxpaGFuIG1ldG9kZSIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxOTYKKyMsIGZ1enp5Cittc2dpZCAiIgorIk1vdGlvbiBrZXlzOiBOZXh0L1ByZXZpb3VzLCBUb3AvRW5kLCBVcC9Eb3duLCBCYWNrd2FyZHMvRm9yd2FyZHM6XG4iCisiICBqLCBEb3duLWFycm93ICAgICAgICAgaywgVXAtYXJyb3cgICAgICAgICAgICAgbW92ZSBoaWdobGlnaHRcbiIKKyIgIE4sIFBhZ2UtZG93biwgU3BhY2UgICBQLCBQYWdlLXVwLCBCYWNrc3BhY2UgICBzY3JvbGwgbGlzdCBieSAxIHBhZ2VcbiIKKyIgIF5uICAgICAgICAgICAgICAgICAgICBecCAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgbGlzdCBieSAxIGxpbmVcbiIKKyIgIHQsIEhvbWUgICAgICAgICAgICAgICBlLCBFbmQgICAgICAgICAgICAgICAgICBqdW1wIHRvIHRvcC9lbmQgb2YgbGlzdFxuIgorIiAgdSAgICAgICAgICAgICAgICAgICAgIGQgICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIGJ5IDEgcGFnZVxuIgorIiAgXnUgICAgICAgICAgICAgICAgICAgIF5kICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIGJ5IDEgbGluZVxuIgorIiAgQiwgTGVmdC1hcnJvdyAgICAgICAgIEYsIFJpZ2h0LWFycm93ICAgICAgICAgIHBhbiBkaXNwbGF5IGJ5IDEvMyBzY3JlZW5cbiIKKyIgIF5iICAgICAgICAgICAgICAgICAgICBeZiAgICAgICAgICAgICAgICAgICAgICBwYW4gZGlzcGxheSBieSAxIGNoYXJhY3RlclxuIgorIihUaGVzZSBhcmUgdGhlIHNhbWUgbW90aW9uIGtleXMgYXMgaW4gdGhlIHBhY2thZ2UgbGlzdCBkaXNwbGF5LilcbiIKKyJcbiIKKyJRdWl0OlxuIgorIiBSZXR1cm4sIEVudGVyICAgIHNlbGVjdCB0aGlzIG1ldGhvZCBhbmQgZ28gdG8gaXRzIGNvbmZpZ3VyYXRpb24gZGlhbG9ndWVcbiIKKyIgeCwgWCAgICAgICAgICAgICBleGl0IHdpdGhvdXQgY2hhbmdpbmcgb3Igc2V0dGluZyB1cCB0aGUgaW5zdGFsbGF0aW9uICIKKyJtZXRob2RcbiIKKyJcbiIKKyJNaXNjZWxsYW5lb3VzOlxuIgorIiAgPywgSGVscCwgRjEgICAgICByZXF1ZXN0IGhlbHBcbiIKKyIgXmwgICAgICAgICAgICAgICAgcmVkcmF3IGRpc3BsYXlcbiIKKyIgIC8gICAgICAgICAgICAgICAgc2VhcmNoIChqdXN0IHJldHVybiB0byBjYW5jZWwpXG4iCisiICBcXCAgICAgICAgICAgICAgICByZXBlYXQgbGFzdCBzZWFyY2hcbiIKK21zZ3N0ciAiIgorIlRvbWJvbCBnZXJha2FuOiBCZXJpa3V0bnlhL1NlYmVsdW1ueWEsIEF3YWwvQWtoaXIsIEF0YXMvQmF3YWgsIE11bmR1ci9NYWp1OlxuIgorIiAgbiwgUGFuYWgtYmF3YWggICAgICAgICBwLFBhbmFoLWF0YXMgICAgICAgICAgICAgcGluZGFoa2FuIHNvcm90YW5cbiIKKyIgIE4sIFBhZ2UtZG93bixTcGFzaSAgICAgUCxQYWdlLXVwLEJhY2tzcGFjZSAgICAgIGd1bHVuZyBkYWZ0YXIgdGlhcCBzYXR1ICIKKyJoYWxhbWFuXG4iCisiICBebiAgICAgICAgICAgICAgICAgICAgIF5wICAgICAgICAgICAgICAgICAgICAgICBndWx1bmcgZGFmdGFyIHRpYXAgc2F0dSAiCisiYmFyaXNcbiIKKyIgIHQsIEhvbWUgICAgICAgICAgICAgICAgZSwgRW5kICAgICAgICAgICAgICAgICAgIGxhbmdzdW5nIGtlIGF3YWwvYWtoaXIgIgorImRhZnRhclxuIgorIiAgdSAgICAgICAgICAgICAgICAgICAgICBkICAgICAgICAgICAgICAgICAgICAgICAgZ3VsdW5nIGluZm8gdGlhcCBzYXR1ICIKKyJoYWxhbWFuXG4iCisiICBedSAgICAgICAgICAgICAgICAgICAgXmQgICAgICAgICAgICAgICAgICAgICAgICBndWx1bmcgaW5mbyB0aWFwIHNhdHUgIgorImJhcmlzXG4iCisiICBCLCBQYW5haC1raXJpICAgICAgICAgIEYsIFBhbmFoLWthbmFuICAgICAgICAgICBnZXNlciB0YW1waWxhbiB0aWFwIDEvMyAiCisibGF5YXJcbiIKKyIgIF5iICAgICAgICAgICAgICAgICAgICBeZiAgICAgICAgICAgICAgICAgICAgICAgIGdlc2VyIHRhbXBpbGFuIHRpYXAgMSAiCisia2FyZWt0ZXJcbiIKKyIoSW5pIGFkYWxhaCB0b21ib2wgZ2VyYWthbiB5YW5nIHNhbWEgc2VwZXJ0aSBkYWxhbSB0YW1waWxhbiBkYWZ0YXIgcGFrZXQuKVxuIgorIlxuIgorIktlbHVhcjpcbiIKKyIgIFJldHVybixFbnRlciAgICAgcGlsaWggbWV0b2RlIGluaSBkYW4gbWVudWp1IGtlIGRpYWxvZyBrb25maWd1cmFzaVxuIgorIiAgeCxYICAgICAgICAgICAgICBrZWx1YXIgdGFucGEgbWVuZ3ViYWggYXRhdSBtZW55ZXRlbCBtZXRvZGUgcGVtYXNhbmdhblxuIgorIlxuIgorIkxhaW4tbGFpbjpcbiIKKyIgID8sSGVscCwgRjEgICAgICAgbWludGEgYmFudHVhblxuIgorIiAgXkkgICAgICAgICAgICAgICBzZWdhcmthbiB0YW1waWxhblxuIgorIiAgIC8gICAgICAgICAgICAgICBjYXJpIChjdWt1cCB0ZWthbiBlbnRlciB1bnR1ayBtZW1iYXRhbGthbilcbiIKKyIgIFxcICAgICAgICAgICAgICAgdWxhbmdpIHBlbmNhcmlhbiB0ZXJha2hpclxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6NjAKK21zZ2lkICJUeXBlIGRzZWxlY3QgLS1oZWxwIGZvciBoZWxwLiIKK21zZ3N0ciAia2V0aWsgJ2RzZWxlY3QgLS1oZWxwJyB1bnR1ayBiYW50dWFuLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0MworbXNnaWQgImEiCittc2dzdHIgImEiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDMKK21zZ2lkICJbQV1jY2VzcyIKK21zZ3N0ciAiW0FdQWtzZXMiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDMKK21zZ2lkICJDaG9vc2UgdGhlIGFjY2VzcyBtZXRob2QgdG8gdXNlLiIKK21zZ3N0ciAiUGlsaWggbWV0b2RlIGFrc2VzIHlhbmcgaW5naW4gZGlndW5ha2FuLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NAorbXNnaWQgInUiCittc2dzdHIgInAiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDQKK21zZ2lkICJbVV1wZGF0ZSIKK21zZ3N0ciAiW1VdUGVyYmFydSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NAorbXNnaWQgIlVwZGF0ZSBsaXN0IG9mIGF2YWlsYWJsZSBwYWNrYWdlcywgaWYgcG9zc2libGUuIgorbXNnc3RyICJQZXJiYWhhcnVpIGRhZnRhciBwYWtldCB5YW5nIHRlcnNlZGlhIGJpbGEgbWVtdW5na2lua2FuLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NQorbXNnaWQgInMiCittc2dzdHIgInMiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDUKK21zZ2lkICJbU11lbGVjdCIKK21zZ3N0ciAiW1NdUGlsaWgiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDUKK21zZ2lkICJSZXF1ZXN0IHdoaWNoIHBhY2thZ2VzIHlvdSB3YW50IG9uIHlvdXIgc3lzdGVtLiIKK21zZ3N0ciAiUGlsaWhsYWggcGFrZXQgeWFuZyBpbmdpbiBBbmRhIHBhc2FuZyBwYWRhIHNpc3RlbS4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDYKK21zZ2lkICJpIgorbXNnc3RyICJwIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ2Cittc2dpZCAiW0ldbnN0YWxsIgorbXNnc3RyICJbSV1QYXNhbmciCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDYKK21zZ2lkICJJbnN0YWxsIGFuZCB1cGdyYWRlIHdhbnRlZCBwYWNrYWdlcy4iCittc2dzdHIgIlBhc2FuZyBkYW4gcGVyYmFoYXJ1aSBwYWtldC1wYWtldCB5YW5nIGRpaW5naW5rYW4uIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ3Cittc2dpZCAiYyIKK21zZ3N0ciAiYyIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NworbXNnaWQgIltDXW9uZmlnIgorbXNnc3RyICJbQ11Lb25maWd1cmFzaSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NworbXNnaWQgIkNvbmZpZ3VyZSBhbnkgcGFja2FnZXMgdGhhdCBhcmUgdW5jb25maWd1cmVkLiIKK21zZ3N0ciAiS29uZmlndXJhc2kgc2VtdWEgcGFrZXQgeWFuZyBiZWx1bSBkaWtvbmZpZ3VyYXNpLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OAorbXNnaWQgInIiCittc2dzdHIgImIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDgKK21zZ2lkICJbUl1lbW92ZSIKK21zZ3N0ciAiW1JdQnVhbmciCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDgKK21zZ2lkICJSZW1vdmUgdW53YW50ZWQgc29mdHdhcmUuIgorbXNnc3RyICJCdWFuZyBwZXJhbmdrYXQgbHVuYWsgeWFuZyB0YWsgZGlpbmdpbmthbi4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDkKK21zZ2lkICJxIgorbXNnc3RyICJxIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ5Cittc2dpZCAiW1FddWl0IgorbXNnc3RyICJbUV1LZWx1YXIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDkKK21zZ2lkICJRdWl0IGRzZWxlY3QuIgorbXNnc3RyICJrZWx1YXIgZGFyaSBkc2VsZWN0LiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE1MAorbXNnaWQgIm1lbnUiCittc2dzdHIgIm1lbnUiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuIGAlcycgcGFja2FnZSBoYW5kbGluZyBmcm9udGVuZCB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICJBbnRhcm11a2EgcGVuYW5nYW5hbiBwYWtldCBEZWJpYW4gJyVzJyB2ZXJzaSAlcy5cbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE1OAorbXNnaWQgIiIKKyJDb3B5cmlnaHQgKEMpIDE5OTQtMTk5NiBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLlxuIgorbXNnc3RyICIiCisiSGFrIENpcHRhIChDKSAgMTk5NC0xOTk2IElhbiBKYWNrc29uLlxuIgorIkhhayBDSXB0YSAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNjIKKyMsIGZ1enp5Cittc2dpZCAiIgorIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgb3JcbiIKKyJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKK21zZ3N0ciAiIgorIkluaSBhZGFsYWggcGVyYW5na2F0IGx1bmFrIGJlYmFzOyBsaWhhdCBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaSAyICIKKyJhdGF1IFxuIgorInNlbGFuanV0bnlhIHVudHVrIHBlcnN5YXJhdGFuIHBlbmdnYW5kYWFuLiBUSURBSyBBREEgamFtaW5hbi4gXG4iCisiTGloYXQgJXMgLS1saWNlbnNlIGtldGVyYW5nYW4gaGFrIGNpcHRhIGRhbiByaW5jaWFuIGxpc2Vuc2kuXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNzIgZHNlbGVjdC9tYWluLmNjOjIyMAorbXNnaWQgIjxzdGFuZGFyZCBvdXRwdXQ+IgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSBbPGFjdGlvbj4gLi4uXVxuIgorIlxuIgorbXNnc3RyICIiCisiUGVuZ2d1bmFhbjogJXMgWzxwaWxpaGFuPiAuLi5dIFs8YWtzaT4gLi4uXVxuIgorIlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTg3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMuXG4iCisiICAtLWV4cGVydCAgICAgICAgICAgICAgICAgICBUdXJuIG9uIGV4cGVydCBtb2RlLlxuIgorIiAgLS1kZWJ1ZyA8ZmlsZT4gfCAtRDxmaWxlPiAgVHVybiBvbiBkZWJ1Z2dpbmcsIHNlbmRpbmcgb3V0cHV0IHRvIDxmaWxlPi5cbiIKKyIgIC0tY29sb3VyIHwgLS1jb2xvciBzY3JlZW5wYXJ0Oltmb3JlZ3JvdW5kXSxbYmFja2dyb3VuZF1bOmF0dHJbK2F0dHIrLi5dXVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ29uZmlndXJlIHNjcmVlbiBjb2xvdXJzLlxuIgorIlxuIgorbXNnc3RyICIiCisiUGlsaWhhbjpcbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVrdG9yaT4gICAgIEd1bmFrYW4gPGRpcmVrdG9yaT4gZGFuIGJ1a2FubnlhICVzLiBcbiIKKyIgIC0tZXhwZXJ0ICAgICAgICAgICAgICAgICAgSGlkdXBrYW4gbW9kdXMgdW50dWsgeWFuZyBhaGxpLlxuIgorIiAgLS1kZWJ1ZyA8YmVya2FzPiB8IC1EIDxiZXJrYXM+ICAgSGlkdXBrYW4gcHJvc2VzIGRlYnVnLCBraXJpbSBoYXNpbG55YSBrZSAiCisiPGJlcmthcz4uXG4iCisiICAtLWNvbG91ciB8IC0tY29sb3Igc2NyZWVucGFydDpbbGF0YXItZGVwYW5dLFtsYXRhci1iZWxha2FuZ11bOmF0cmlidXQiCisiWythdHJpYnV0Ky4uLl1dLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEtvbmZpZ3VyYXNpIHdhcm5hIGxheWFyLlxuIgorIlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTk2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgICBTaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICAgU2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgICBUYW1waWxrYW4gcGVzYW4gYmFudHVhbiBpbmkuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgICAgIFRhbXBpbGthbiB2ZXJzaSBwcm9ncmFtLlxuIgorIiAgLS1saWNlbnNlIHwgLS1saWNlbmNlICAgICAgICAgIFRhbXBpbGthbiBsaXNlbnNpIHByb2dyYW0uXG4iCisiXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkFjdGlvbnM6XG4iCisiICBhY2Nlc3MgdXBkYXRlIHNlbGVjdCBpbnN0YWxsIGNvbmZpZyByZW1vdmUgcXVpdFxuIgorIlxuIgorbXNnc3RyICIiCisiQWtzaTpcbiIKKyIgICBhY2Nlc3MgdXBkYXRlIHNlbGVjdCBpbnN0YWxsIGNvbmZpZyByZW1vdmUgcXVpdFxuIgorIlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjA1CisjLCBjLWZvcm1hdAorbXNnaWQgIlNjcmVlbnBhcnRzOlxuIgorbXNnc3RyICJCYWdpYW4gTGF5YXI6IFxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjEwCisjLCBjLWZvcm1hdAorbXNnaWQgIkNvbG91cnM6XG4iCittc2dzdHIgIldhcm5hOiBcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjIxNQorIywgYy1mb3JtYXQKK21zZ2lkICJBdHRyaWJ1dGVzOlxuIgorbXNnc3RyICJBdHJpYnV0OiBcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjIzMworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBvcGVuIGRlYnVnIGZpbGUgYCUuMjU1cydcbiIKK21zZ3N0ciAidGlkYWsgZGFwYXQgbWVtYnVrYSBiZXJrYXMgZGVidWcgYCUuMjUwcydcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjI1MworIywgYy1mb3JtYXQKK21zZ2lkICJJbnZhbGlkICVzIGAlcydcbiIKK21zZ3N0ciAiJXMgYCVzJyB0aWRhayBzYWhcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjI3MAorbXNnaWQgInNjcmVlbiBwYXJ0IgorbXNnc3RyICJiYWdpYW4gbGF5YXIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyNzYKK21zZ2lkICJOdWxsIGNvbG91ciBzcGVjaWZpY2F0aW9uXG4iCittc2dzdHIgInRpZGFrIGFkYSBzcGVzaWZpa2FzaSB3YXJuYVxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6Mjg0IGRzZWxlY3QvbWFpbi5jYzoyODkKK21zZ2lkICJjb2xvdXIiCittc2dzdHIgIndhcm5hIgorCisjOiBkc2VsZWN0L21haW4uY2M6Mjk3Cittc2dpZCAiY29sb3VyIGF0dHJpYnV0ZSIKK21zZ3N0ciAiYXRyaWJ1dCB3YXJuYSIKKworIzogZHNlbGVjdC9tYWluLmNjOjMyOQorbXNnaWQgIlRlcm1pbmFsIGRvZXMgbm90IGFwcGVhciB0byBzdXBwb3J0IGN1cnNvciBhZGRyZXNzaW5nLlxuIgorbXNnc3RyICJUZXJtaW5hbCB0YW1wYWtueWEgdGlkYWsgbWVuZHVrdW5nIHBlbmdhbGFtYXRhbiBjdXJzb3IuXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzozMzEKK21zZ2lkICJUZXJtaW5hbCBkb2VzIG5vdCBhcHBlYXIgdG8gc3VwcG9ydCBoaWdobGlnaHRpbmcuXG4iCittc2dzdHIgIlRlcm1pbmFsIHRhbXBha255YSB0aWRhayBtZW5kdWt1bmcgcGVueW9yb3Rhbi5cbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjMzMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiU2V0IHlvdXIgVEVSTSB2YXJpYWJsZSBjb3JyZWN0bHksIHVzZSBhIGJldHRlciB0ZXJtaW5hbCxcbiIKKyJvciBtYWtlIGRvIHdpdGggdGhlIHBlci1wYWNrYWdlIG1hbmFnZW1lbnQgdG9vbCAlcy5cbiIKK21zZ3N0ciAiIgorIlNldGVsIHZhcmlhYmVsIFRFUk0gQW5kYSBkZW5nYW4gYmVuYXIsIGd1bmFrYW4gdGVybWluYWwgeWFuZyBsZWJpaCBiYWlrLFxuIgorImF0YXUgbGFrdWthbmxhaCBkZW5nYW4gc2FyYW5hIHBlbmdlbG9sYWFuIHBlci1wYWtldCAlcy5cbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjMzNgorbXNnaWQgInRlcm1pbmFsIGxhY2tzIG5lY2Vzc2FyeSBmZWF0dXJlcywgZ2l2aW5nIHVwIgorbXNnc3RyICJ0ZXJtaW5hbCB0YWsgbWVtaWxpa2kgZml0dXIgeWFuZyBkaXBlcmx1a2FuLCBtZW55ZXJhaCIKKworIzogZHNlbGVjdC9tYWluLmNjOjQxNworbXNnaWQgIiIKKyJcbiIKKyJcbiIKKyJNb3ZlIGFyb3VuZCB3aXRoIF5QIGFuZCBeTiwgY3Vyc29yIGtleXMsIGluaXRpYWwgbGV0dGVycywgb3IgZGlnaXRzO1xuIgorIlByZXNzIDxlbnRlcj4gdG8gY29uZmlybSBzZWxlY3Rpb24uICAgXkwgcmVkcmF3cyBzY3JlZW4uXG4iCisiXG4iCittc2dzdHIgIiIKKyJcbiIKKyJcbiIKKyJQaW5kYWggdGVtcGF0IGRlbmdhbiBeUCBkYW4gXk4sIHRvbWJvbCBjdXJzb3IsIGh1cnVmIGF3YWwsIGF0YXUgZGlnaXQ7XG4iCisiVGVrYW4gPGVudGVyPiB1bnR1ayBrb25maXJtYXNpIHBpbGloYW4uIF5MIHVudHVrIG1lbmFtcGlsIHVsYW5nIGxheWFyLlxuIgorIlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6NDI4Cittc2dpZCAiIgorIlxuIgorIlxuIgorIlJlYWQtb25seSBhY2Nlc3M6IG9ubHkgcHJldmlldyBvZiBzZWxlY3Rpb25zIGlzIGF2YWlsYWJsZSEiCittc2dzdHIgIiIKKyJcbiIKKyJcbiIKKyJBa3NlcyBoYW55YS1iYWNhOiBoYW55YSBwcmF0aWxpayBwaWxpaGFuIHlhbmcgdGVyc2VkaWEhIgorCisjOiBkc2VsZWN0L21haW4uY2M6NDQ4Cittc2dpZCAiZmFpbGVkIHRvIGdldGNoIGluIG1haW4gbWVudSIKK21zZ3N0ciAiZ2FnYWwgbWVsYWt1a2FuICdnZXRjaCcgZGFsYW0gbWVudSB1dGFtYSIKKworIzogZHNlbGVjdC9tYWluLmNjOjUzMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGFjdGlvbiBzdHJpbmcgYCUuNTBzJyIKK21zZ3N0ciAic3RyaW5nIGFrc2kgYCUuNTBzJyB0aWRhayBkaWtlbmFsIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjc3Cittc2dpZCAiZHNlbGVjdCAtIGxpc3Qgb2YgYWNjZXNzIG1ldGhvZHMiCittc2dzdHIgImRzZWxlY3QgLSBkYWZ0YXIgbWV0b2RlIGFrc2VzIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjg2CisjLCBjLWZvcm1hdAorbXNnaWQgIkFjY2VzcyBtZXRob2QgYCVzJy4iCittc2dzdHIgIk1ldG9kZSBha3NlcyBgJXMnIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjEyMAorbXNnaWQgIkFiYnJldi4iCittc2dzdHIgIlNpbmdrYXRhbiIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxMjEgZHNlbGVjdC9wa2dpbmZvLmNjOjEwNSBkc2VsZWN0L3BrZ3RvcC5jYzoyOTEKK21zZ2lkICJEZXNjcmlwdGlvbiIKK21zZ3N0ciAiS2V0ZXJhbmdhbiIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxNjQgZHNlbGVjdC9wa2dsaXN0LmNjOjU3MgorbXNnaWQgImRvdXBkYXRlIGZhaWxlZCIKK21zZ3N0ciAiZG91cGRhdGUgZ2FnYWwiCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTY2IGRzZWxlY3QvcGtnbGlzdC5jYzo1NzUKK21zZ2lkICJmYWlsZWQgdG8gdW5ibG9jayBTSUdXSU5DSCIKK21zZ3N0ciAiZ2FnYWwgbWVsYWt1a2FuICd1bmJsb2NrJyBTSUdXSU5DSCIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxNzAgZHNlbGVjdC9wa2dsaXN0LmNjOjU4MAorbXNnaWQgImZhaWxlZCB0byByZS1ibG9jayBTSUdXSU5DSCIKK21zZ3N0ciAiZ2FnYWwgbWVsYWt1a2FuICdyZS1ibG9jaycgU0lHV0lOQ0giCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTcxIGRzZWxlY3QvcGtnbGlzdC5jYzo1ODIKK21zZ2lkICJnZXRjaCBmYWlsZWQiCittc2dzdHIgImdldGNoIGdhZ2FsIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjE4OAorIywgZnV6enkKK21zZ2lkICJFeHBsYW5hdGlvbiIKK21zZ3N0ciAicGVuamVsYXNhbiBkYXJpIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjE5NworbXNnaWQgIk5vIGV4cGxhbmF0aW9uIGF2YWlsYWJsZS4iCittc2dzdHIgIlRpZGFrIGFkYSBwZW5qZWxhc2FuIHRlcnNlZGlhLiIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6NjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIlxuIgorIiVzOiAlc1xuIgorbXNnc3RyICIiCisiXG4iCisiXG4iCisiJXM6ICVzXG4iCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjcwCittc2dpZCAiIgorIlxuIgorIlByZXNzIDxlbnRlcj4gdG8gY29udGludWUuIgorbXNnc3RyICIiCisiXG4iCisiVGVrYW4gPGVudGVyPiB1bnR1ayBtZW5lcnVza2FuLiIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MTYxCisjLCBjLWZvcm1hdAorbXNnaWQgIlByZXNzIDxlbnRlcj4gdG8gY29udGludWUuXG4iCittc2dzdHIgIlRla2FuIDxlbnRlcj4gIHVudHVrIG1lbmVydXNrYW4uXG4iCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjE2MgorIywgZnV6enkKK21zZ2lkICI8c3RhbmRhcmQgZXJyb3I+IgorbXNnc3RyICJBZGEga2VzYWxhaGFuIG1lbnVsaXMgcGFkYSAnc3RhbmRhciBlcnJvciciCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjE2NQorbXNnaWQgImVycm9yIHJlYWRpbmcgYWNrbm93bGVkZ2VtZW50IG9mIHByb2dyYW0gZmFpbHVyZSBtZXNzYWdlIgorbXNnc3RyICJnYWdhbCAgbWVtYmFjYSBwZW1iZXJpdGFodWFuIGRhcmkgcGVzYW4ga2VnYWdhbGFuIHByb2dyYW0iCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjE5NgorbXNnaWQgInVwZGF0ZSBhdmFpbGFibGUgbGlzdCBzY3JpcHQiCittc2dzdHIgInBlcmJhaGFydWkgc2NyaXB0IGRhZnRhciB5YW5nIHRlcnNlZGlhIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoyMDAKK21zZ2lkICJpbnN0YWxsYXRpb24gc2NyaXB0IgorbXNnc3RyICJza3JpcCBwZW1hc2FuZ2FuIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoyNDYKK21zZ2lkICJxdWVyeS9zZXR1cCBzY3JpcHQiCittc2dzdHIgInNjcmlwdCBxdWVyeS9zZXR1cCIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yIGluIG1ldGhvZCBvcHRpb25zIGZpbGUgYCUuMjUwcycgLS0gJXMiCittc2dzdHIgImFkYSBrZXNhbGFoYW4gc2ludGFrcyBkYWxhbSBiZXJrYXMgcGlsaWhhbiBtZXRvZGUgYCUuMjUwcycgLS0gJXMiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjU5CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHJlYWRpbmcgb3B0aW9ucyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJhZGEga2VzYWxhaGFuIHNhYXQgbWVtYmFjYSBiZXJrYXMgcGlsaWhhbiBgJS4yNTBzJyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgYCUuMjUwcycgZGlyZWN0b3J5IGZvciByZWFkaW5nIG1ldGhvZHMiCittc2dzdHIgInRpZGFrIGJpc2EgbWVtYmFjYSBkaXJla3RvcmkgYCUuMjUwcycgdW50dWsgbWVtYmFjYSBtZXRvZGUiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjEwNgorIywgYy1mb3JtYXQKK21zZ2lkICJtZXRob2QgYCUuMjUwcycgaGFzIG5hbWUgdGhhdCBpcyB0b28gbG9uZyAoJWQgPiAlZCBjaGFyYWN0ZXJzKSIKK21zZ3N0ciAibWV0b2RlIGAlLjI1MHMnIG1lbWlsaWtpIG5hbWEgdGVybGFsdSBwYW5qYW5nICglZCA+ICVkIGthcmFrdGVyKSIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTE3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBhY2Nlc3MgbWV0aG9kIHNjcmlwdCBgJS4yNTBzJyIKK21zZ3N0ciAidGlkYWsgYmlzYSBtZW5nYWtzZXMgYmVya2FzIHNrcmlwIG1ldG9kZSBgJS4yNTBzJyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTIzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIG1ldGhvZCBvcHRpb25zIGZpbGUgYCUuMjUwcyciCittc2dzdHIgInRpZGFrIGJpc2EgbWVtYmFjYSBiZXJrYXMgcGlsaWhhbiBtZXRvZGUgYCUuMjUwcyciCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE0NworbXNnaWQgIm5vbi1kaWdpdCB3aGVyZSBkaWdpdCB3YW50ZWQiCittc2dzdHIgImJ1a2FuIGRpZ2l0IGRpIHRlbXBhdCB5YW5nIGhhcnVzbnlhIGRpZ2l0IgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNTAKK21zZ2lkICJFT0YgaW4gaW5kZXggc3RyaW5nIgorbXNnc3RyICJBZGEgRU9GIGRhbGFtIHN0cmluZyBpbmRla3MiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE1MworbXNnaWQgImluZGV4IHN0cmluZyB0b28gbG9uZyIKK21zZ3N0ciAiaW5kZWtzIHN0cmluZyB0ZXJsYWx1IHBhbmphbmciCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE1NgorbXNnaWQgIm5ld2xpbmUgYmVmb3JlIG9wdGlvbiBuYW1lIHN0YXJ0IgorbXNnc3RyICJhZGEgYmFyaXMtYmFydSBzZWJlbHVtIGF3YWwgbmFtYSBwaWxpaGFuIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNTgKK21zZ2lkICJFT0YgYmVmb3JlIG9wdGlvbiBuYW1lIHN0YXJ0IgorbXNnc3RyICJBZGEgRU9GIHNlYmVsdW0gYXdhbCBuYW1hIHBpbGloYW4iCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE2MgorbXNnaWQgIm5vbmFscGhhIHdoZXJlIG9wdGlvbiBuYW1lIHN0YXJ0IHdhbnRlZCIKK21zZ3N0ciAiYnVrYW4tYWxmYSBkaSB0ZW1wYXQgYXdhbCBuYW1hIHBpbGloYW4gIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNjQKK21zZ2lkICJub24tYWxwaGFudW0gaW4gb3B0aW9uIG5hbWUiCittc2dzdHIgImJ1a2FuIGFsZmFudW1lcmlrIGRhbGFtIG5hbWEgcGlsaWhhbiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTY3Cittc2dpZCAiRU9GIGluIG9wdGlvbiBuYW1lIgorbXNnc3RyICJBZGEgRU9GIGRhbGFtIG5hbWEgcGlsaWhhbiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTcyCittc2dpZCAibmV3bGluZSBiZWZvcmUgc3VtbWFyeSIKK21zZ3N0ciAiYWRhIGJhcmlzLWJhcnUgc2ViZWx1bSBpa2h0aXNhciIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTc0Cittc2dpZCAiRU9GIGJlZm9yZSBzdW1tYXJ5IgorbXNnc3RyICJBZGEgRU9GIHNlYmVsdW0gaWtoc3Rpc2FyIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxODAKK21zZ2lkICJFT0YgaW4gc3VtbWFyeSAtIG1pc3NpbmcgbmV3bGluZSIKK21zZ3N0ciAiQWRhIEVPRiBkYWxhbSBpa2h0aXNhciAtIGJhcmlzLWJhcnUgaGlsYW5nIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gb3B0aW9uIGRlc2NyaXB0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgInRpZGFrIGJpc2EgbWVtYnVrYSBiZXJrYXMgcGVuamVsYXNhbiBwaWxpaGFuIGAlLjI1MHMnIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxOTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgb3B0aW9uIGRlc2NyaXB0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgInRpZGFrIGJpc2EgbWVsYWt1a2FuICdzdGF0JyBwYWRhIGJlcmthcyBwZW5qZWxhc2FuIHBpbGloYW4gYCUuMjUwcyciCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE5OAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCBvcHRpb24gZGVzY3JpcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiZ2FnYWwgbWVtYmFjYSBiZXJrYXMgcGVuamVsYXNhbiBwaWxpaGFuIGAlLjI1MHMnIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgZHVyaW5nIHJlYWQgb2Ygb3B0aW9uIGRlc2NyaXB0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImFkYSBrZXNhbGFoYW4gc2VsYW1hIG1lbWJhY2EgYmVya2FzIHBlbmplbGFzYW4gcGlsaWhhbiBgJS4yNTBzJyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MjI0CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGR1cmluZyByZWFkIG9mIG1ldGhvZCBvcHRpb25zIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImFkYSBrZXNhbGFoYW4gc2VsYW1hIG1lbWJhY2EgYmVya2FzIHBpbGloYW4gbWV0b2RlIGAlLjI1MHMnIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gY3VycmVudCBvcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAidGlkYWsgYmlzYSBtZW1idWthIGJlcmthcyBwaWxpaGFuIHNhYXQgaW5pIGAlLjI1MHMnIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyODkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gbmV3IG9wdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJ0aWRhayBiaXNhIG1lbWJ1a2EgYmVya2FzIHBpbGloYW4gYCUuMjUwcycgeWFuZyBiYXJ1IgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ldyBvcHRpb24gdG8gYCUuMjUwcyciCittc2dzdHIgInRpZGFrIGJpc2EgbWVudWxpcyBwaWxpaGFuIGJhcnUga2UgYCUuMjUwcyciCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjI5NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgbmV3IG9wdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJ0aWRhayBiaXNhIG1lbnV0dXAgYmVya2FzIHBpbGloYW4gYCUuMjUwcycgeWFuZyBiYXJ1IgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyOTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IG9wdGlvbiBhcyBgJS4yNTBzJyIKK21zZ3N0ciAidGlkYWsgYmlzYSBtZW1hc2FuZyBwaWxpaGFuIHlhbmcgYmFydSBzZWJhZ2FpIGAlLjI1MHMnIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MzYKK21zZ2lkICJuZXcgcGFja2FnZSIKK21zZ3N0ciAicGFrZXQgYmFydSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjM3Cittc2dpZCAiaW5zdGFsbCIKK21zZ3N0ciAicGFzYW5nIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MzgKK21zZ2lkICJob2xkIgorbXNnc3RyICJ0YWhhbiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjM5Cittc2dpZCAicmVtb3ZlIgorbXNnc3RyICJidWFuZyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjQwCittc2dpZCAicHVyZ2UiCittc2dzdHIgIm11c25haGthbiIKKworIy4gVFJBTlNMQVRPUlM6IFRoZSBzcGFjZSBpcyBhIHRyaWNrIHRvIHdvcmsgYXJvdW5kIGdldHRleHQgd2hpY2ggdXNlcworIy4gKiB0aGUgZW1wdHkgc3RyaW5nIHRvIHN0b3JlIGluZm9ybWF0aW9uIGFib3V0IHRoZSB0cmFuc2xhdGlvbi4gRE8gTk9UCisjLiAqIENIQU5HRSBUSEFUIElOIEEgVFJBTlNMQVRJT04hIFRoZSBjb2RlIHJlYWxseSByZWxpZXMgb24gdGhhdCBiZWluZworIy4gKiBhIHNpbmdsZSBzcGFjZS4KKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo0NworbXNnaWQgIiAiCittc2dzdHIgIiAiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo0OAorbXNnaWQgIlJFSU5TVEFMTCIKK21zZ3N0ciAiUEFTQU5HLVVMQU5HIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTEKK21zZ2lkICJub3QgaW5zdGFsbGVkIgorbXNnc3RyICJ0YWsgZGlwYXNhbmciCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1MgorbXNnaWQgInJlbW92ZWQgKGNvbmZpZ3MgcmVtYWluKSIKK21zZ3N0ciAiYnVhbmcgKGtvbmZpZ3VyYXNpbnlhIGphbmdhbikiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1MworbXNnaWQgImhhbGYgaW5zdGFsbGVkIgorbXNnc3RyICJzZXRlbmdhaCB0ZXJwYXNhbmciCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1NAorbXNnaWQgInVucGFja2VkIChub3Qgc2V0IHVwKSIKK21zZ3N0ciAidGVsYWggZGlidWthIChiZWx1bSBkaXNldGVsKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjU1Cittc2dpZCAiaGFsZiBjb25maWd1cmVkIChjb25maWcgZmFpbGVkKSIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTYKK21zZ2lkICJhd2FpdGluZyB0cmlnZ2VyIHByb2Nlc3NpbmciCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjU3Cittc2dpZCAidHJpZ2dlcmVkIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1OAorbXNnaWQgImluc3RhbGxlZCIKK21zZ3N0ciAidGVycGFzYW5nIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjEKK21zZ2lkICJSZXF1aXJlZCIKK21zZ3N0ciAiRGlwZXJsdWthbiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjYyCittc2dpZCAiSW1wb3J0YW50IgorbXNnc3RyICJQZW50aW5nIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjMKK21zZ2lkICJTdGFuZGFyZCIKK21zZ3N0ciAiU3RhbmRhciIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjY0Cittc2dpZCAiT3B0aW9uYWwiCittc2dzdHIgIlBpbGloYW4iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo2NQorbXNnaWQgIkV4dHJhIgorbXNnc3RyICJUYW1iYWhhbiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjY2Cittc2dpZCAiIUJ1ZyEiCittc2dzdHIgIiFDYWNhdCEiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo2NworbXNnaWQgIlVuY2xhc3NpZmllZCIKK21zZ3N0ciAiVGFrIGRpa2Vsb21wb2trYW4iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3MAorbXNnaWQgInN1Z2dlc3RzIgorbXNnc3RyICJkaXNhcmFua2FuIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzEKK21zZ2lkICJyZWNvbW1lbmRzIgorbXNnc3RyICJkaWFuanVya2FuIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzIKK21zZ2lkICJkZXBlbmRzIG9uIgorbXNnc3RyICJiZXJnYW50dW5nIHBhZGEiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3MworbXNnaWQgInByZS1kZXBlbmRzIG9uIgorbXNnc3RyICJwcmEtc3lhcmF0IGF3YWwiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3NAorbXNnaWQgImJyZWFrcyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzUKK21zZ2lkICJjb25mbGljdHMgd2l0aCIKK21zZ3N0ciAiYmVudHJvayBkZW5nYW4iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3NgorbXNnaWQgInByb3ZpZGVzIgorbXNnc3RyICJtZW55ZWRpYWthbiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjc3Cittc2dpZCAicmVwbGFjZXMiCittc2dzdHIgIm1lbmdnYW50aWthbiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjc4Cittc2dpZCAiZW5oYW5jZXMiCittc2dzdHIgImRpc2VtcHVybmFrYW4iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4MQorbXNnaWQgIlJlcSIKK21zZ3N0ciAiQnRoIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODIKK21zZ2lkICJJbXAiCittc2dzdHIgIlB0ZyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjgzCittc2dpZCAiU3RkIgorbXNnc3RyICJTdGQiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4NAorbXNnaWQgIk9wdCIKK21zZ3N0ciAiUGxoIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODUKK21zZ2lkICJYdHIiCittc2dzdHIgIlRiaCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjg2Cittc2dpZCAiYlVHIgorbXNnc3RyICJDQUNBVCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjg3Cittc2dpZCAiPyIKK21zZ3N0ciAiPyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjk1IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTUKK21zZ2lkICJCcm9rZW4iCittc2dzdHIgIlJ1c2FrIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6OTYKK21zZ2lkICJOZXciCittc2dzdHIgIkJhcnUiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo5NworbXNnaWQgIlVwZGF0ZWQiCittc2dzdHIgIkRpcGVyYmFoYXJ1aSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjk4Cittc2dpZCAiT2Jzb2xldGUvbG9jYWwiCittc2dzdHIgIlVzYW5nL2xva2FsIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6OTkKK21zZ2lkICJVcC10by1kYXRlIgorbXNnc3RyICJNYXNpaCBiYXJ1IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTAwCittc2dpZCAiQXZhaWxhYmxlIgorbXNnc3RyICJUZXJzZWRpYSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwMSBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTE3Cittc2dpZCAiUmVtb3ZlZCIKK21zZ3N0ciAiRGlidWFuZyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwMiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTExCittc2dpZCAiQnJva2VubHkgaW5zdGFsbGVkIHBhY2thZ2VzIgorbXNnc3RyICJQYWtldCB0ZXJwYXNhbmcgeWFuZyBydXNhayIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwMworbXNnaWQgIk5ld2x5IGF2YWlsYWJsZSBwYWNrYWdlcyIKK21zZ3N0ciAiUGFrZXQgYmFydSB5YW5nIHRlcnNlZGlhIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTA0Cittc2dpZCAiVXBkYXRlZCBwYWNrYWdlcyAobmV3ZXIgdmVyc2lvbiBpcyBhdmFpbGFibGUpIgorbXNnc3RyICJQYWtldC1wYWtldCB0ZXJiYXJ1ICh2ZXJzaSB0ZXJiYXJ1IHRlcnNlZGlhKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwNQorbXNnaWQgIk9ic29sZXRlIGFuZCBsb2NhbCBwYWNrYWdlcyBwcmVzZW50IG9uIHN5c3RlbSIKK21zZ3N0ciAiUGFrZXQtcGFrZXQgbG9rYWwgZGFuIHVzYW5nIGFkYSBwYWRhIHNpc3RlbSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwNgorbXNnaWQgIlVwIHRvIGRhdGUgaW5zdGFsbGVkIHBhY2thZ2VzIgorbXNnc3RyICJQYWtldC1wYWtldCB0ZXJwYXNhbmcgeWFuZyB0ZXJraW5pIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTA3Cittc2dpZCAiQXZhaWxhYmxlIHBhY2thZ2VzIChub3QgY3VycmVudGx5IGluc3RhbGxlZCkiCittc2dzdHIgIlBha2V0LXBha2V0IHlhZ24gdGVyc2VkaWEgKGJlbHVtIHRlcnBhc2FuZykiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDgKK21zZ2lkICJSZW1vdmVkIGFuZCBubyBsb25nZXIgYXZhaWxhYmxlIHBhY2thZ2VzIgorbXNnc3RyICJQYWtldC1wYWtldCB0ZXJidWFuZyBkYW4gdGFrIGxhZ2kgdGVyc2VkaWEiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTIKK21zZ2lkICJJbnN0YWxsZWQgcGFja2FnZXMiCittc2dzdHIgIlBha2V0LXBha2V0IHlhbmcgdGVycGFzYW5nIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTEzCittc2dpZCAiUmVtb3ZlZCBwYWNrYWdlcyAoY29uZmlndXJhdGlvbiBzdGlsbCBwcmVzZW50KSIKK21zZ3N0ciAiUGFrZXQtcGFrZXQgeWFuZyBkaWJ1YW5nIChrb25maWd1cmFzaSBtYXNpaCBhZGEpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTE0Cittc2dpZCAiUHVyZ2VkIHBhY2thZ2VzIGFuZCB0aG9zZSBuZXZlciBpbnN0YWxsZWQiCittc2dzdHIgIlBha2V0LXBha2V0IHlhbmcgZGltdXNuYWhrYW4gZGFuIHlhbmcgYmVsdW0gcGVybmFoIHRlcnBhc2FuZyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExNgorbXNnaWQgIkluc3RhbGxlZCIKK21zZ3N0ciAiVGVycGFzYW5nIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTE4Cittc2dpZCAiUHVyZ2VkIgorbXNnc3RyICJNdXNuYWgiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxOTgKK21zZ2lkICJkc2VsZWN0IC0gcmVjdXJzaXZlIHBhY2thZ2UgbGlzdGluZyIKK21zZ3N0ciAiZHNlbGVjdCAtIGRhZnRhciBwYWtldCB0ZXJpbmNpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTk5Cittc2dpZCAiZHNlbGVjdCAtIGluc3BlY3Rpb24gb2YgcGFja2FnZSBzdGF0ZXMiCittc2dzdHIgImRzZWxlY3QgLSBwZW5pbmphdWFuIGtlYWRhYW4gcGFrZXQiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMDAKK21zZ2lkICJkc2VsZWN0IC0gbWFpbiBwYWNrYWdlIGxpc3RpbmciCittc2dzdHIgImRzZWxlY3QgLSBkYWZ0YXIgcGFrZXQgdXRhbWEiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMDgKK21zZ2lkICIgKGJ5IHNlY3Rpb24pIgorbXNnc3RyICIgKGJlcmRhc2Fya2FuIGJhZ2lhbikiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMTEKK21zZ2lkICIgKGF2YWlsLiwgc2VjdGlvbikiCittc2dzdHIgIiAodGVyc2VkaWEsIGJhZy4pIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjE0Cittc2dpZCAiIChzdGF0dXMsIHNlY3Rpb24pIgorbXNnc3RyICIgKHN0YXR1cywgYmFnLikiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMjMKK21zZ2lkICIgKGJ5IHByaW9yaXR5KSIKK21zZ3N0ciAiIChiZXJkYXNhcmthbiBwcmlvcml0YXMpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjI2Cittc2dpZCAiIChhdmFpbC4sIHByaW9yaXR5KSIKK21zZ3N0ciAiICh0ZXJzZWRpYSwgcHJpb3JpdGFzKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIyOQorbXNnaWQgIiAoc3RhdHVzLCBwcmlvcml0eSkiCittc2dzdHIgIiAoc3RhdHVzLHByaW9yaXRhcykiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMzggZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI1MAorbXNnaWQgIiAoYWxwaGFiZXRpY2FsbHkpIgorbXNnc3RyICIgIChzZWNhcmEgYWxmYWJldCkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNDEKK21zZ2lkICIgKGJ5IGF2YWlsYWJpbGl0eSkiCittc2dzdHIgIiAoYmVyZGFzYXJrYW4ga2V0ZXJzZWRpYWFuKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI0NAorbXNnaWQgIiAoYnkgc3RhdHVzKSIKK21zZ3N0ciAiIChiZXJkYXNhcmthbiBzdGF0dXMpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjU4Cittc2dpZCAiIG1hcms6Ky89Ly0gdGVyc2U6diBoZWxwOj8iCittc2dzdHIgIiB0YW5kYWk6Ky89Ly0gIHJpbmdrYXM6diBiYW50dWFuOj8iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNTkKK21zZ2lkICIgbWFyazorLz0vLSB2ZXJib3NlOnYgaGVscDo/IgorbXNnc3RyICIgdGFuZGFpOisvPS8tICByaW5jaTp2IGJhbnR1YW46PyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI2MAorbXNnaWQgIiB0ZXJzZTp2IGhlbHA6PyIKK21zZ3N0ciAiIHJpbmdrYXM6diBiYW50dWFuOj8iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNjEKK21zZ2lkICIgdmVyYm9zZTp2IGhlbHA6PyIKK21zZ3N0ciAiIHJpbmNpOnYgYmFudHVhbjo/IgorCisjOiBkc2VsZWN0L3BrZ2luZm8uY2M6ODAKK21zZ2lkICIiCisiVGhlIGxpbmUgeW91IGhhdmUgaGlnaGxpZ2h0ZWQgcmVwcmVzZW50cyBtYW55IHBhY2thZ2VzOyBpZiB5b3UgYXNrIHRvICIKKyJpbnN0YWxsLCByZW1vdmUsIGhvbGQsIGV0Yy4gaXQgeW91IHdpbGwgYWZmZWN0IGFsbCB0aGUgcGFja2FnZXMgd2hpY2ggbWF0Y2ggIgorInRoZSBjcml0ZXJpb24gc2hvd24uXG4iCisiXG4iCisiSWYgeW91IG1vdmUgdGhlIGhpZ2hsaWdodCB0byBhIGxpbmUgZm9yIGEgcGFydGljdWxhciBwYWNrYWdlIHlvdSB3aWxsIHNlZSAiCisiaW5mb3JtYXRpb24gYWJvdXQgdGhhdCBwYWNrYWdlIGRpc3BsYXllZCBoZXJlLlxuIgorIllvdSBjYW4gdXNlIGBvJyBhbmQgYE8nIHRvIGNoYW5nZSB0aGUgc29ydCBvcmRlciBhbmQgZ2l2ZSB5b3Vyc2VsZiB0aGUgIgorIm9wcG9ydHVuaXR5IHRvIG1hcmsgcGFja2FnZXMgaW4gZGlmZmVyZW50IGtpbmRzIG9mIGdyb3Vwcy4iCittc2dzdHIgIiIKKyJCYXJpcyB5YW5nIHRlbGFoIEFuZGEgc29yb3QgbWV3YWtpbGkgYmFueWFrIHBha2V0LiBKaWthIEFuZGEgaW5naW4gbWVtYXNhbmcsICIKKyJtZW1idWFuZywgbWVuY2VrYWwsIGRsbC4gcGFrZXQgaW5pLCBBbmRhIGFrYW4gbWVsaWJhdGthbiBzZW11YSBwYWtldCB5YW5nICIKKyJzZXN1YWkgZGVuZ2FuIGtyaXRlcmlhIHlhbmcgdGFtcGFrLlxuIgorIlxuIgorIkppa2EgQW5kYSBtZW1pbmRhaGthbiBzb3JvdGFuIGtlIHN1YXR1IGJhcmlzIHVudHVrIHBha2V0IHRlcnRlbnR1LCBBbmRhIGFrYW4gIgorIm1lbGloYXQga2V0ZXJhbmdhbiB0ZW50YW5nIHBha2V0IGl0dSBkaSBzaW5pLlxuIgorIkFuZGEgZGFwYXQgbWVuZ2d1bmFrYW4gYG8nIGRhbiBgTycgdW50dWsgbWVuZ3ViYWggcGVuZ3VydXRhbiBkYW4gbWVtYmVyaWthbiAiCisiQW5kYSBwZWx1YW5nIHVudHVrIG1lbmFuZGFpIHBha2V0IGRhbGFtIGJlcmFnYW0gZ3J1cCBiZXJiZWRhLiIKKworIzogZHNlbGVjdC9wa2dpbmZvLmNjOjkzCisjLCBmdXp6eQorbXNnaWQgIkludGVycmVsYXRpb25zaGlwcyIKK21zZ3N0ciAiYW50YXIgaHVidW5nYW4iCisKKyM6IGRzZWxlY3QvcGtnaW5mby5jYzoxMTIKKyMsIGZ1enp5Cittc2dpZCAiTm8gZGVzY3JpcHRpb24gYXZhaWxhYmxlLiIKK21zZ3N0ciAiIHRpZGFrIGFkYSBrZXRlcmFuZ2FuIHlhbmcgdGVyc2VkaWEiCisKKyM6IGRzZWxlY3QvcGtnaW5mby5jYzoxMzAKKyMsIGZ1enp5Cittc2dpZCAiSW5zdGFsbGVkIGNvbnRyb2wgZmlsZSBpbmZvcm1hdGlvbiIKK21zZ3N0ciAiIEluZm8gJ2NvbnRyb2wnIHlhbmcgdGVycGFzYW5nIHVudHVrIgorCisjOiBkc2VsZWN0L3BrZ2luZm8uY2M6MTQ2CisjLCBmdXp6eQorbXNnaWQgIkF2YWlsYWJsZSBjb250cm9sIGZpbGUgaW5mb3JtYXRpb24iCittc2dzdHIgInZlcnNpIGluZm8gYmVya2FzICdjb250cm9sJyB5YW5nIHRlcnNlZGlhIgorCisjOiBkc2VsZWN0L3BrZ2xpc3QuY2M6NDE2Cittc2dpZCAiVGhlcmUgYXJlIG5vIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2xpc3QuY2M6NTA3Cittc2dpZCAiaW52YWxpZCBzZWFyY2ggb3B0aW9uIGdpdmVuIgorbXNnc3RyICJwaWxpaGFuIHBlbmNhcmlhbiB0aWRhayBzYWgiCisKKyM6IGRzZWxlY3QvcGtnbGlzdC5jYzo1MjEKK21zZ2lkICJlcnJvciBpbiByZWd1bGFyIGV4cHJlc3Npb24iCittc2dzdHIgImFkYSBrZXNhbGFoYW4gZGFsYW0gZWtzcHJlc2kgcmVndWxhciIKKworIzogZHNlbGVjdC9wa2dzdWJsaXN0LmNjOjEwNworbXNnaWQgIiBkb2VzIG5vdCBhcHBlYXIgdG8gYmUgYXZhaWxhYmxlXG4iCittc2dzdHIgIiB0YW1wYWtueWEgdGlkYWsgdGVyc2VkaWFcbiIKKworIzogZHNlbGVjdC9wa2dzdWJsaXN0LmNjOjEyNworbXNnaWQgIiBvciAiCittc2dzdHIgIiBhdGF1ICIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6NTcKK21zZ2lkICJBbGwiCittc2dzdHIgIlNlbXVhbnlhIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo3OQorbXNnaWQgIkFsbCBwYWNrYWdlcyIKK21zZ3N0ciAiU2VtdWEgcGFrZXQiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHBhY2thZ2VzIHdpdGhvdXQgYSBzZWN0aW9uIgorbXNnc3RyICIlcyBwYWtldCB0YW5wYSBzdWF0dSBiYWdpYW4iCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjg1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHBhY2thZ2VzIGluIHNlY3Rpb24gJXMiCittc2dzdHIgIiVzIHBha2V0IGRpIGJhZ2lhbiAlcyIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6OTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgJXMgcGFja2FnZXMiCittc2dzdHIgIiVzICVzIHBha2V0IgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo5NQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyAlcyBwYWNrYWdlcyB3aXRob3V0IGEgc2VjdGlvbiIKK21zZ3N0ciAiJXMgJXMgcGFrZXQgdGFucGEgc3VhdHUgYmFnaWFuIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo5NworIywgYy1mb3JtYXQKK21zZ2lkICIlcyAlcyBwYWNrYWdlcyBpbiBzZWN0aW9uICVzIgorbXNnc3RyICIlcyAlcyBwYWtldCBkaSBiYWdpYW4gJXMiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjExOAorIywgYy1mb3JtYXQKK21zZ2lkICIlLSpzICVzJXMlczsgICVzICh3YXM6ICVzKS4gICVzIgorbXNnc3RyICIlLSpzICVzJXMlczsgJXMgKHRhZGlueWE6ICVzKS4gJXMiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI2MworbXNnaWQgIkVycm9yIgorbXNnc3RyICJBZGEgS2VzYWxhaGFuIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyNjcKK21zZ2lkICJJbnN0YWxsZWQ/IgorbXNnc3RyICJUZXJwYXNhbmc/IgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyNzEKK21zZ2lkICJPbGQgbWFyayIKK21zZ3N0ciAiVGFuZGEgbGFtYSIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6Mjc1Cittc2dpZCAiTWFya2VkIGZvciIKK21zZ3N0ciAiRGl0YW5kYWkgdW50dWsiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI3OAorbXNnaWQgIkVJT00iCittc2dzdHIgIkVQT1QiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI4MAorbXNnaWQgIlNlY3Rpb24iCittc2dzdHIgIkJhZ2lhbiIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6MjgxCittc2dpZCAiUHJpb3JpdHkiCittc2dzdHIgIlByaW9yaXRhcyIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6MjgyCittc2dpZCAiUGFja2FnZSIKK21zZ3N0ciAiUGFrZXQiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI4NgorbXNnaWQgIkluc3QudmVyIgorbXNnc3RyICJWZXIuIHRlcnBzZyIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6Mjg5Cittc2dpZCAiQXZhaWwudmVyIgorbXNnc3RyICJWZXIuIHQnc2VkaWEiCisKKyN+IG1zZ2lkICJyZXR1cm5lZCBlcnJvciBleGl0IHN0YXR1cyAlZC5cbiIKKyN+IG1zZ3N0ciAic3RhdHVzICdlcnJvciBleGl0JyB5YW5nIGRpaGFzaWxrYW4gJWQuIFxuIgorCisjfiBtc2dpZCAid2FzIGludGVycnVwdGVkLlxuIgorI34gbXNnc3RyICJ0ZWxhaCBkaWhlbnRpa2FuLlxuIgorCisjfiBtc2dpZCAid2FzIHRlcm1pbmF0ZWQgYnkgYSBzaWduYWw6ICVzLlxuIgorI34gbXNnc3RyICJ0ZWxhaCBkaWhlbnRpa2FuIG9sZWggc2lueWFsOiAlcy4gXG4iCisKKyN+IG1zZ2lkICIoSXQgbGVmdCBhIGNvcmVkdW1wLilcbiIKKyN+IG1zZ3N0ciAiKElhIG1lbmluZ2dhbGthbiBzZWJ1YWggY29yZWR1bXAuKVxuIgorCisjfiBtc2dpZCAiZmFpbGVkIHdpdGggYW4gdW5rbm93biB3YWl0IHJldHVybiBjb2RlICVkLlxuIgorI34gbXNnc3RyICJnYWdhbCBkZW5nYW4ga29kZSAnd2FpdCcgJWQgeWFuZyB0YWsgZGlrZW5hbC5cbiIKKworI34gbXNnaWQgInVuYWJsZSB0byBydW4gJS4yNTBzIHByb2Nlc3MgYCUuMjUwcyciCisjfiBtc2dzdHIgInRpZGFrIGJpc2EgbWVuamFsYW5rYW4gcHJvc2VzICUuMjUwcyBgJS4yNTBzJyIKKworI34gbXNnaWQgImZhaWxlZCBjb25maWciCisjfiBtc2dzdHIgImtvbmZpZyBnYWdhbCIKKworI34gbXNnaWQgInVuYWJsZSB0byB3YWl0IGZvciAlLjI1MHMiCisjfiBtc2dzdHIgInRpZGFrIGJpc2EgbWVudW5nZ3UgJS4yNTBzIgorCisjfiBtc2dpZCAiZ290IHdyb25nIGNoaWxkJ3Mgc3RhdHVzIC0gYXNrZWQgZm9yICVsZCwgZ290ICVsZCIKKyN+IG1zZ3N0ciAic3RhdHVzIGFuYWsgcHJvc2VzIHNhbGFoIC0gaW5naW4gJWxkLCBkYXBhdCAlbGQiCisKKyN+IG1zZ2lkICJSZWNvbW1lbmRlZCIKKyN+IG1zZ3N0ciAiRGlhbmp1cmthbiIKKworI34gbXNnaWQgIkNvbnRyaWIiCisjfiBtc2dzdHIgIlN1bWJhbmdzaWgiCisKKyN+IG1zZ2lkICJSZWMiCisjfiBtc2dzdHIgIlJrbSIKKworI34gbXNnaWQgIkN0YiIKKyN+IG1zZ3N0ciAiU21iIgorCisjfiBtc2dpZCAiIgorI34gImJhc2VsaXN0OjpzdGFydGRpc3BsYXkoKSBkb25lIC4uLlxuIgorI34gIlxuIgorI34gIiB4bWF4PSVkLCB5bWF4PSVkO1xuIgorI34gIlxuIgorI34gIiB0aXRsZV9oZWlnaHQ9JWQsIGNvbGhlYWRzX2hlaWdodD0lZCwgbGlzdF9oZWlnaHQ9JWQ7XG4iCisjfiAiIHRoaXNzdGF0ZV9oZWlnaHQ9JWQsIGluZm9faGVpZ2h0PSVkLCB3aGF0aW5mb19oZWlnaHQ9JWQ7XG4iCisjfiAiXG4iCisjfiAiIGNvbGhlYWRzX3Jvdz0lZCwgdGhpc3N0YXRlX3Jvdz0lZCwgaW5mb19yb3c9JWQ7XG4iCisjfiAiIHdoYXRpbmZvX3Jvdz0lZCwgbGlzdF9yb3c9JWQ7XG4iCisjfiAiXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJiYXNlbGlzdDo6c3RhcmRpc3BsYXkoKSBzZWxlc2FpIC4uLlxuIgorI34gIlxuIgorI34gIiAgeG1heD0lZCwgeW1heD0lZDtcbiIKKyN+ICJcbiIKKyN+ICIgIHRpbmdnaV90aXRsZT0lZCwgdGluZ2dpX2NvbGhlYWRzPSVkLCB0aW5nZ2lfbGlzdD0lZDtcbiIKKyN+ICIgIHRpbmdnaV90aGlzc3RhdGU9JWQsIHRpbmdnaV9pbmZvPSVkLCB0aW5nZ2lfd2hhdGluZm89JWQ7XG4iCisjfiAiXG4iCisjfiAiICBiYXJpc19jb2xoZWFkcz0lZCwgYmFyaXNfdGhpc3N0YXRlPSVkLCBiYXJpc19pbmZvPSVkO1xuIgorI34gIiAgYmFyaXNfd2hhdGluZm89JWQsIGJhcmlzX2xpc3Q9JWQ7XG4iCisjfiAiXG4iCisKKyN+IG1zZ2lkICJbbm9uZV0iCisjfiBtc2dzdHIgIlt0aWRhayBhZGFdIgorCisjfiBtc2dpZCAiZXJyb3IgdW4tY2F0Y2hpbmcgc2lnbmFsICVkOiAlc1xuIgorI34gbXNnc3RyICJBZGEga2VzYWxhaGFuIHNhYXQgbWVsZXBhc2thbiBzaW55YWwgJWQ6ICVzXG4iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gaWdub3JlIHNpZ25hbCAlZCBiZWZvcmUgcnVubmluZyAlLjI1MHMiCisjfiBtc2dzdHIgInRpZGFrIGJpc2EgbWVuZ2FiYWlrYW4gc2lueWFsICVkIHNlYmVsdW0gbWVuamFsYW5rYW4gJS4yNTBzIgorCisjfiBtc2dpZCAiKG5vIGNsaWVudGRhdGEpIgorI34gbXNnc3RyICIodGlkYWsgYWRhIGNsaWVudGRhdGEpIgorCisjfiBtc2dpZCAiPG51bGw+IgorI34gbXNnc3RyICI8bmloaWw+IgorCisjfiBtc2dpZCAiaW50ZXJyZWxhdGlvbnNoaXBzIGFmZmVjdGluZyAiCisjfiBtc2dzdHIgImFudGFyIGh1YnVuZ2FuIHlhbmcgbWVtcGVuZ2FydWhpIgorCisjfiBtc2dpZCAiZGVzY3JpcHRpb24gb2YgIgorI34gbXNnc3RyICIgS2V0ZXJhbmdhbiBkYXJpIgorCisjfiBtc2dpZCAiZGVzY3JpcHRpb24iCisjfiBtc2dzdHIgIiBrZXRlcmFuZ2FuIgorCisjfiBtc2dpZCAiY3VycmVudGx5IGluc3RhbGxlZCBjb250cm9sIGluZm8iCisjfiBtc2dzdHIgIkluZm8gJ2NvbnRyb2wnIHlhbmcgdGVycGFzYW5nIHNhYXQgaW5pIgorCisjfiBtc2dpZCAiYXZhaWxhYmxlIHZlcnNpb24gb2YgY29udHJvbCBpbmZvIGZvciAiCisjfiBtc2dzdHIgInZlcnNpIGluZm8gJ2NvbnRyb2wnIHlhbmcgdGVyc2VkaWEgdW50dWsiCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vaW5zZXJ0LWhlYWRlci5zaW4gYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vaW5zZXJ0LWhlYWRlci5zaW4KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjI2ZGUwMQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9pbnNlcnQtaGVhZGVyLnNpbgpAQCAtMCwwICsxLDIzIEBACisjIFNlZCBzY3JpcHQgdGhhdCBpbnNlcnRzIHRoZSBmaWxlIGNhbGxlZCBIRUFERVIgYmVmb3JlIHRoZSBoZWFkZXIgZW50cnkuCisjCisjIEF0IGVhY2ggb2NjdXJyZW5jZSBvZiBhIGxpbmUgc3RhcnRpbmcgd2l0aCAibXNnaWQgIiwgd2UgZXhlY3V0ZSB0aGUgZm9sbG93aW5nCisjIGNvbW1hbmRzLiBBdCB0aGUgZmlyc3Qgb2NjdXJyZW5jZSwgaW5zZXJ0IHRoZSBmaWxlLiBBdCB0aGUgZm9sbG93aW5nCisjIG9jY3VycmVuY2VzLCBkbyBub3RoaW5nLiBUaGUgZGlzdGluY3Rpb24gYmV0d2VlbiB0aGUgZmlyc3QgYW5kIHRoZSBmb2xsb3dpbmcKKyMgb2NjdXJyZW5jZXMgaXMgYWNoaWV2ZWQgYnkgbG9va2luZyBhdCB0aGUgaG9sZCBzcGFjZS4KKy9ebXNnaWQgL3sKK3gKKyMgVGVzdCBpZiB0aGUgaG9sZCBzcGFjZSBpcyBlbXB0eS4KK3MvbS9tLwordGEKKyMgWWVzIGl0IHdhcyBlbXB0eS4gRmlyc3Qgb2NjdXJyZW5jZS4gUmVhZCB0aGUgZmlsZS4KK3IgSEVBREVSCisjIE91dHB1dCB0aGUgZmlsZSdzIGNvbnRlbnRzIGJ5IHJlYWRpbmcgdGhlIG5leHQgbGluZS4gQnV0IGRvbid0IGxvc2UgdGhlCisjIGN1cnJlbnQgbGluZSB3aGlsZSBkb2luZyB0aGlzLgorZworTgorYmIKKzphCisjIFRoZSBob2xkIHNwYWNlIHdhcyBub25lbXB0eS4gRm9sbG93aW5nIG9jY3VycmVuY2VzLiBEbyBub3RoaW5nLgoreAorOmIKK30KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9pdC5nbW8gYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vaXQuZ21vCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmJiN2E0YjgKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vaXQuZ21vCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9pdC5wbyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9pdC5wbwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45N2QxMGUxCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL2l0LnBvCkBAIC0wLDAgKzEsMTgwMiBAQAorIyBNZXNzYWdnaSBpbiBJdGFsaWFubyBwZXIgYGRwa2cnLgorIyBDb3B5cmlnaHQgKEMpIDIwMDAsIDIwMDEsIDIwMDIsIDIwMDMsIDIwMDQgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCisjIExlbGUgR2FpZmF4IDxsZWxlQHNlbGRhdGkuaXQ+LCAyMDAwLCAyMDAxLCAyMDAyLCAyMDAzLCAyMDA0LgorIworIyBTdGVmYW5vIENhbmVwYSA8c2NAbGludXguaXQ+LCAyMDA0IG9ubHkgZm9yIGFuIHVwZGF0ZSBiZWNhdXNlIExlbGUgd2FzCisjIHVucmVhY2hhYmxlIGFuZCB0cmFuc2xhdGlvbiBuZWVkZWQgdG8gYmUgdXBkYXRlZAorIworIyBTdGVmYW5vIENhbmVwYSA8c2NAbGludXguaXQ+LCAyMDA1LgorIyBDb252ZW56aW9uaSB1c2F0ZSwgcGVyIHJlbmRlcmUgcGnDuSBzZW1wbGljZSBsYSBsb3JvIGluZGl2aWR1YXppb25lIGVkCisjIGV2ZW50dWFsZSBzb3N0aXR1emlvbmU6CisjCisjIGAoaGFyZCkgbGluaycgLi4uLi4uOiBgY29sbGVnYW1lbnRvJworIyBgYXJndW1lbnQnIC4uLi4uLi4uLjogYHBhcmFtZXRybycKKyMgYGJhZCBtYWdpYycgLi4uLi4uLi46IGBjb2RpY2UgZGkgY29udHJvbGxvIGVycmF0bycKKyMgYGJyb2tlbicgLi4uLi4uLi4uLi46IGBkaWZldHRvc28nCisjIGBidWxrIHVwZGF0ZScgLi4uLi4uOiBgYWdnaW9ybmFtZW50byBtYXNzaXZvJworIyBgY2hlY2tzdW0nIC4uLi4uLi4uLjogYGNvZGljZSBkaSBjb250cm9sbG8nCisjIGBjbGVhbnVwJyAuLi4uLi4uLi4uOiBgcHVsaXppYScKKyMgYGNvcnJ1cHQnIC4uLi4uLi4uLi46IGByb3ZpbmF0bycKKyMgYGRpdmVydGVkIGJ5JyAuLi4uLi46IGBkaXZlcnNpZmljYXRvIGRhJworIyBgZW50ZXInIC4uLi4uLi4uLi4uLjogYGludmlvJworIyBgZmlsZSBkZXRhaWxzIGZpZWxkJzogYGNhbXBvIGRldHRhZ2xpIGRlbCBmaWxlJworIyBgZ2l2aW5nIHVwJyAuLi4uLi4uLjogYGxhc2NpbyBwZXJkZXJlJworIyBgaG9sZCcgLi4uLi4uLi4uLi4uLjogYGJsb2NjYScvYGJsb2NjYXRvJworIyBganVuaycgLi4uLi4uLi4uLi4uLjogYHJvYmFjY2lhJworIyBgbWFpbnRhaW5lcicgLi4uLi4uLjogYHJlc3BvbnNhYmlsZScKKyMgYG5lc3RlZCBlcnJvcnMnIC4uLi46IGBlcnJvcmkgY29ycmVsYXRpJworIyBgbmV3bGluZScgLi4uLi4uLi4uLjogYGEtY2FwbycKKyMgYHBhZCcgLi4uLi4uLi4uLi4uLi46IGByaWVtcGltZW50bycKKyMgYHBhbicgLi4uLi4uLi4uLi4uLi46IGBzbGl0dGFyZScKKyMgYHB1cmdlJyAuLi4uLi4uLi4uLi46IGBlbGltaW5hJworIyBgcmVxdWlyZWQnIC4uLi4uLi4uLjogYGVzc2VuemlhbGUnCisjIGBzY3JlZW5wYXJ0JyAuLi4uLi4uOiBgc2V0dG9yZSBzY2hlcm1hdGEnCisjIGBzZXQgdXAnIC4uLi4uLi4uLi4uOiBgY29uZmlndXJhcmUnCisjIGBzeW1ib2xpYyBsaW5rJyAuLi4uOiBgY29sbGVnYW1lbnRvIHNpbWJvbGljbycKKyMgYHVuYWJsZScgLi4uLi4uLi4uLi46IGBpbXBvc3NpYmlsZScKKyMgYHVuYnVmZmVyJyAuLi4uLi4uLi46IGByaW11b3ZlcmUgbGEgYnVmZmVyaXp6YXppb25lJworIyBgdW5wYWNrZWQnIC4uLi4uLi4uLjogYHNwYWNjaGV0dGF0bycKKyMgYHVwLXRvLWRhdGUnIC4uLi4uLi46IGBnacOgIGFnZ2lvcm5hdGknCisjIGB3YXJuaW5nJyAuLi4uLi4uLi4uOiBgYXR0ZW56aW9uZScKKyMKK21zZ2lkICIiCittc2dzdHIgIiIKKyJQcm9qZWN0LUlkLVZlcnNpb246IGRwa2cgMS4xMC4yMlxuIgorIlJlcG9ydC1Nc2dpZC1CdWdzLVRvOiBkZWJpYW4tZHBrZ0BsaXN0cy5kZWJpYW4ub3JnXG4iCisiUE9ULUNyZWF0aW9uLURhdGU6IDIwMTEtMTAtMTQgMDc6MTErMDIwMFxuIgorIlBPLVJldmlzaW9uLURhdGU6IDIwMDYtMTAtMDYgMjI6MDErMDIwMFxuIgorIkxhc3QtVHJhbnNsYXRvcjogU3RlZmFubyBDYW5lcGEgPHNjQGxpbnV4Lml0PlxuIgorIkxhbmd1YWdlLVRlYW06IGl0YWxpYW4gPGRlYmlhbi1sMTBuLWl0YWxpYW5AZGViaWFuLm9yZz5cbiIKKyJMYW5ndWFnZTogaXRcbiIKKyJNSU1FLVZlcnNpb246IDEuMFxuIgorIkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD1VVEYtOFxuIgorIkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXRcbiIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxMjUKK21zZ2lkICJTZWFyY2ggZm9yID8gIgorbXNnc3RyICJSaWNlcmNhIGRpID8gIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE0NworbXNnaWQgIkVycm9yOiAiCittc2dzdHIgIkVycm9yZTogIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE3OAorbXNnaWQgIkhlbHA6ICIKK21zZ3N0ciAiQWl1dG86ICIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxODQKK21zZ2lkICJQcmVzcyA/IGZvciBoZWxwIG1lbnUsIC4gZm9yIG5leHQgdG9waWMsIDxzcGFjZT4gdG8gZXhpdCBoZWxwLiIKK21zZ3N0ciAiUHJlbWkgPyBwZXIgbWVudSBhaXV0bywgLiBwcm9zc2ltbyBhcmdvbWVudG8sIDxzcGF6aW8+IHBlciB1c2NpcmUuIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE5MQorbXNnaWQgIkhlbHAgaW5mb3JtYXRpb24gaXMgYXZhaWxhYmxlIHVuZGVyIHRoZSBmb2xsb3dpbmcgdG9waWNzOiIKK21zZ3N0ciAiU29ubyBkaXNwb25pYmlsaSBpbmZvcm1hemlvbmkgZGkgYWl1dG8gc3VpIHNlZ3VlbnRpIGFyZ29tZW50aToiCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MTk5Cittc2dpZCAiIgorIlByZXNzIGEga2V5IGZyb20gdGhlIGxpc3QgYWJvdmUsIDxzcGFjZT4gb3IgYHEnIHRvIGV4aXQgaGVscCxcbiIKKyIgIG9yIGAuJyAoZnVsbCBzdG9wKSB0byByZWFkIGVhY2ggaGVscCBwYWdlIGluIHR1cm4uICIKK21zZ3N0ciAiIgorIlByZW1pIHVuIHRhc3RvIGRlbGxhIGxpc3RhIHNvcHJhLCA8c3BhemlvPiBvICdxJyBwZXIgdXNjaXJlIGRhbGwnYWl1dG8sXG4iCisiICBvICcuJyAocHVudG8pIHBlciBsZWdnZXJlIG9nbmkgcGFnaW5hIGRpIGFpdXRvIGluIHNlcXVlbnphLiAiCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MjA1Cittc2dpZCAiZXJyb3IgcmVhZGluZyBrZXlib2FyZCBpbiBoZWxwIgorbXNnc3RyICJlcnJvcmUgZGkgbGV0dHVyYSBkZWxsYSB0YXN0aWVyYSBuZWxsJ2FpdXRvIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjU3Cittc2dpZCAiaW9jdGwoVElPQ0dXSU5TWikgZmFpbGVkIgorbXNnc3RyICJpb2N0bChUSU9DR1dJTlNaKSBmYWxsaXRhIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjYwCittc2dpZCAiZG91cGRhdGUgaW4gU0lHV0lOQ0ggaGFuZGxlciBmYWlsZWQiCittc2dzdHIgImZhbGxpdGEgZG91cGRhdGUgbmVsIGdlc3RvcmUgU0lHV0lOQ0giCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6NjcKK21zZ2lkICJmYWlsZWQgdG8gcmVzdG9yZSBvbGQgU0lHV0lOQ0ggc2lnYWN0IgorbXNnc3RyICJpbXBvc3NpYmlsZSByaXByaXN0aW5hcmUgbGEgdmVjY2hpYSBcInNpZ2FjdFwiIHN1IFNJR1dJTkNIIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjY5Cittc2dpZCAiZmFpbGVkIHRvIHJlc3RvcmUgb2xkIHNpZ25hbCBtYXNrIgorbXNnc3RyICJpbXBvc3NpYmlsZSByaXByaXN0aW5hcmUgbGEgdmVjY2hpYSBtYXNjaGVyYSBkZWkgc2VnbmFsaSIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo3OQorbXNnaWQgImZhaWxlZCB0byBnZXQgb2xkIHNpZ25hbCBtYXNrIgorbXNnc3RyICJpbXBvc3NpYmlsZSBvdHRlbmVyZSBsYSB2ZWNjaGlhIG1hc2NoZXJhIGRlaSBzZWduYWxpIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjgwCittc2dpZCAiZmFpbGVkIHRvIGdldCBvbGQgU0lHV0lOQ0ggc2lnYWN0IgorbXNnc3RyICJpbXBvc3NpYmlsZSBvdHRlbmVyZSBsYSB2ZWNjaGlhIFwic2lnYWN0XCIgc3UgU0lHV0lOQ0giCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6ODQKK21zZ2lkICJmYWlsZWQgdG8gYmxvY2sgU0lHV0lOQ0giCittc2dzdHIgImltcG9zc2liaWxlIGJsb2NjYXJlIFNJR1dJTkNIIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjg5Cittc2dpZCAiZmFpbGVkIHRvIHNldCBuZXcgU0lHV0lOQ0ggc2lnYWN0IgorbXNnc3RyICJpbXBvc3NpYmlsZSBpbXBvc3RhcmUgbGEgbnVvdmEgXCJzaWdhY3RcIiBzdSBTSUdXSU5DSCIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxMjYKK21zZ2lkICJmYWlsZWQgdG8gYWxsb2NhdGUgY29sb3VyIHBhaXIiCittc2dzdHIgImltcG9zc2liaWxlIGFsbG9jYXJlIGxlIGNvcHBpZSBkaSBjb2xvcmkiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTY3Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSB0aXRsZSB3aW5kb3ciCittc2dzdHIgImltcG9zc2liaWxlIGNyZWFyZSBsYSBmaW5lc3RyYSBkZWwgdGl0b2xvIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE3MQorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgd2hhdGluZm8gd2luZG93IgorbXNnc3RyICJpbXBvc3NpYmlsZSBjcmVhcmUgbGEgZmluZXN0cmEgZGkgZGVzY3JpemlvbmUgZGVsbGUgaW5mb3JtYXppb25pIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE3NQorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgYmFzZWxpc3QgcGFkIgorbXNnc3RyICJpbXBvc3NpYmlsZSBjcmVhcmUgbGEgc2NoZXJtYXRhIHBlciBsYSBsaXN0YSBkaSBiYXNlIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE3OAorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgaGVhZGluZyBwYWQiCittc2dzdHIgImltcG9zc2liaWxlIGNyZWFyZSBsYSBzY2hlcm1hdGEgcGVyIGwnaW50ZXN0YXppb25lIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE4MgorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgdGhpc3N0YXRlIHBhZCIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgY3JlYXJlIGxhIHNjaGVybWF0YSBwZXIgbG8gc3RhdG8gZGVsIHBhY2NoZXR0byIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxODYKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGluZm8gcGFkIgorbXNnc3RyICJpbXBvc3NpYmlsZSBjcmVhcmUgbGEgc2NoZXJtYXRhIGRlbGxlIGluZm9ybWF6aW9uaSIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxOTEKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHF1ZXJ5IHdpbmRvdyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgY3JlYXJlIGxhIGZpbmVzdHJhIGRpIHJpY2VyY2EiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MjU1CisjLCBmdXp6eQorbXNnaWQgIktleWJpbmRpbmdzIgorbXNnc3RyICJmdW56aW9uYWxpdMOgIGRlaSB0YXN0aSIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzozMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAtLSAlZCUlLCBwcmVzcyAiCittc2dzdHIgIiAgLS0gJWQlJSwgcHJlbWkgIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjMwNgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBmb3IgbW9yZSIKK21zZ3N0ciAiJXMgcGVyIHZlZGVyZSBpbCByZXN0byIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzozMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgdG8gZ28gYmFjayIKK21zZ3N0ciAiJXMgcGVyIHRvcm5hcmUgaW5kaWV0cm8iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6NzgKK21zZ2lkICJbbm90IGJvdW5kXSIKK21zZ3N0ciAiW25vbiBhc3NvY2lhdG8gYWQgYWxjdW5hIGZ1bnppb25lXSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzo4MgorIywgYy1mb3JtYXQKK21zZ2lkICJbdW5rOiAlZF0iCittc2dzdHIgIltzY29ub3NjLjogJWRdIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjEzOQorbXNnaWQgIlNjcm9sbCBvbndhcmRzIHRocm91Z2ggaGVscC9pbmZvcm1hdGlvbiIKK21zZ3N0ciAiU2NvcnJpIGwnYWl1dG8vaW5mb3JtYXppb25lIGluIGF2YW50aSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDAKK21zZ2lkICJTY3JvbGwgYmFja3dhcmRzIHRocm91Z2ggaGVscC9pbmZvcm1hdGlvbiIKK21zZ3N0ciAiU2NvcnJpIGwnYWl1dG8vaW5mb3JtYXppb25lIGluZGlldHJvIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0MQorbXNnaWQgIk1vdmUgdXAiCittc2dzdHIgIlNwb3N0YXRpIGluIHN1IgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0MgorbXNnaWQgIk1vdmUgZG93biIKK21zZ3N0ciAiU3Bvc3RhdGkgaW4gZ2nDuSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDMKK21zZ2lkICJHbyB0byB0b3Agb2YgbGlzdCIKK21zZ3N0ciAiVmFpIGFsbCdpbml6aW8gZGVsbGEgbGlzdGEiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ0Cittc2dpZCAiR28gdG8gZW5kIG9mIGxpc3QiCittc2dzdHIgIlZhaSBhbGxhIGZpbmUgZGVsbGEgbGlzdGEiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ1Cittc2dpZCAiUmVxdWVzdCBoZWxwIChjeWNsZSB0aHJvdWdoIGhlbHAgc2NyZWVucykiCittc2dzdHIgIlJpY2hpZWRpIGFpdXRvICh2ZWRpIGxlIHZhcmllIHBhZ2luZSBkaSBhaXV0bykiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ2Cittc2dpZCAiQ3ljbGUgdGhyb3VnaCBpbmZvcm1hdGlvbiBkaXNwbGF5cyIKK21zZ3N0ciAiVmVkaSBsZSB2YXJpZSBwYWdpbmUgZGkgaW5mb3JtYXppb25lIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0NworbXNnaWQgIlJlZHJhdyBkaXNwbGF5IgorbXNnc3RyICJSaWRpc2VnbmEgbGEgc2NoZXJtYXRhIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0OAorbXNnaWQgIlNjcm9sbCBvbndhcmRzIHRocm91Z2ggbGlzdCBieSAxIGxpbmUiCittc2dzdHIgIlNjb3JyaSBsYSBsaXN0YSBpbiBhdmFudGkgZGkgdW5hIHJpZ2EiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ5Cittc2dpZCAiU2Nyb2xsIGJhY2t3YXJkcyB0aHJvdWdoIGxpc3QgYnkgMSBsaW5lIgorbXNnc3RyICJTY29ycmkgbGEgbGlzdGEgaW5kaWV0cm8gZGkgdW5hIHJpZ2EiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTUwCittc2dpZCAiU2Nyb2xsIG9ud2FyZHMgdGhyb3VnaCBoZWxwL2luZm9ybWF0aW9uIGJ5IDEgbGluZSIKK21zZ3N0ciAiU2NvcnJpIGwnYWl1dG8vaW5mb3JtYXppb25lIGluIGF2YW50aSBkaSB1bmEgcmlnYSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTEKK21zZ2lkICJTY3JvbGwgYmFja3dhcmRzIHRocm91Z2ggaGVscC9pbmZvcm1hdGlvbiBieSAxIGxpbmUiCittc2dzdHIgIlNjb3JyaSBsJ2FpdXRvL2luZm9ybWF6aW9uZSBpbmRpZXRybyBkaSB1bmEgcmlnYSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTIKK21zZ2lkICJTY3JvbGwgb253YXJkcyB0aHJvdWdoIGxpc3QiCittc2dzdHIgIlNjb3JyaSBsYSBsaXN0YSBpbiBhdmFudGkiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTUzCittc2dpZCAiU2Nyb2xsIGJhY2t3YXJkcyB0aHJvdWdoIGxpc3QiCittc2dzdHIgIlNjb3JyaSBsYSBsaXN0YSBpbmRpZXRybyIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTYKK21zZ2lkICJNYXJrIHBhY2thZ2UocykgZm9yIGluc3RhbGxhdGlvbiIKK21zZ3N0ciAiQ29udHJhc3NlZ25hIGkgcGFjY2hldHRpIHBlciBsJ2luc3RhbGxhemlvbmUiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTU3Cittc2dpZCAiTWFyayBwYWNrYWdlKHMpIGZvciBkZWluc3RhbGxhdGlvbiIKK21zZ3N0ciAiQ29udHJhc3NlZ25hIGkgcGFjY2hldHRpIHBlciBsYSBkaXNpbnN0YWxsYXppb25lIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1OAorbXNnaWQgIk1hcmsgcGFja2FnZShzKSBmb3IgZGVpbnN0YWxsIGFuZCBwdXJnZSIKK21zZ3N0ciAiQ29udHJhc3NlZ25hIGkgcGFjY2hldHRpIHBlciBsYSBkaXNpbnN0YWxsYXppb25lIGVkIGVsaW1pbmF6aW9uZSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTkKK21zZ2lkICJNYWtlIGhpZ2hsaWdodCBtb3JlIHNwZWNpZmljIgorbXNnc3RyICJSZW5kaSBsJ2V2aWRlbnppYXppb25lIHBpw7kgc3BlY2lmaWNhIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2MAorbXNnaWQgIk1ha2UgaGlnaGxpZ2h0IGxlc3Mgc3BlY2lmaWMiCittc2dzdHIgIlJlbmRpIGwnZXZpZGVuemlhemlvbmUgbWVubyBzcGVjaWZpY2EiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTYxCittc2dpZCAiU2VhcmNoIGZvciBhIHBhY2thZ2Ugd2hvc2UgbmFtZSBjb250YWlucyBhIHN0cmluZyIKK21zZ3N0ciAiUmljZXJjYSB1biBwYWNjaGV0dG8gaWwgY3VpIG5vbWUgY29udGVuZ2EgdW5hIHN0cmluZ2EiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTYyCittc2dpZCAiUmVwZWF0IGxhc3Qgc2VhcmNoLiIKK21zZ3N0ciAiUmlwZXRpIGwndWx0aW1hIHJpY2VyY2EuIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2MworbXNnaWQgIlN3YXAgc29ydCBvcmRlciBwcmlvcml0eS9zZWN0aW9uIgorbXNnc3RyICJTY2FtYmlhIGwnb3JkaW5hbWVudG8gcHJpb3JpdMOgL3NlemlvbmUiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY0Cittc2dpZCAiUXVpdCwgY29uZmlybWluZywgYW5kIGNoZWNraW5nIGRlcGVuZGVuY2llcyIKK21zZ3N0ciAiRXNjaSwgY29uZmVybWFuZG8sIGNvbiBjb250cm9sbG8gZGVsbGUgZGlwZW5kZW56ZSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjUKK21zZ2lkICJRdWl0LCBjb25maXJtaW5nIHdpdGhvdXQgY2hlY2siCittc2dzdHIgIkVzY2ksIGNvbmZlcm1hbmRvIHNlbnphIHVsdGVyaW9yaSBjb250cm9sbGkiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY2Cittc2dpZCAiUXVpdCwgcmVqZWN0aW5nIGNvbmZsaWN0L2RlcGVuZGVuY3kgc3VnZ2VzdGlvbnMiCittc2dzdHIgIkVzY2ksIHJpZml1dGFuZG8gaSBzdWdnZXJpbWVudGkgc3VpIGNvbmZsaXR0aS9kaXBlbmRlbnplIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2NworbXNnaWQgIkFib3J0IC0gcXVpdCB3aXRob3V0IG1ha2luZyBjaGFuZ2VzIgorbXNnc3RyICJBYmJhbmRvbmEgLSBlc2NpIHNlbnphIGFwcG9ydGFyZSBhbGN1bmEgbW9kaWZpY2EiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY4Cittc2dpZCAiUmV2ZXJ0IHRvIG9sZCBzdGF0ZSBmb3IgYWxsIHBhY2thZ2VzIgorbXNnc3RyICJSaXByaXN0aW5hIGxvIHN0YXRvIHByZWNlZGVudGUgcGVyIHR1dHRpIGkgcGFjY2hldHRpIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2OQorbXNnaWQgIlJldmVydCB0byBzdWdnZXN0ZWQgc3RhdGUgZm9yIGFsbCBwYWNrYWdlcyIKK21zZ3N0ciAiUmlwcmlzdGluYSBsbyBzdGF0byBzdWdnZXJpdG8gcGVyIHR1dHRpIGkgcGFjY2hldHRpIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE3MAorbXNnaWQgIlJldmVydCB0byBkaXJlY3RseSByZXF1ZXN0ZWQgc3RhdGUgZm9yIGFsbCBwYWNrYWdlcyIKK21zZ3N0ciAiUmlwcmlzdGluYSBsbyBzdGF0byBlc3ByZXNzYW1lbnRlIHJpY2hpZXN0byBwZXIgdHV0dGkgaSBwYWNjaGV0dGkiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTcxCisjLCBmdXp6eQorbXNnaWQgIlJldmVydCB0byBjdXJyZW50bHkgaW5zdGFsbGVkIHN0YXRlIGZvciBhbGwgcGFja2FnZXMiCittc2dzdHIgIlJpcHJpc3RpbmEgbG8gc3RhdG8gZXNwcmVzc2FtZW50ZSByaWNoaWVzdG8gcGVyIHR1dHRpIGkgcGFjY2hldHRpIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE3NAorbXNnaWQgIlNlbGVjdCBjdXJyZW50bHktaGlnaGxpZ2h0ZWQgYWNjZXNzIG1ldGhvZCIKK21zZ3N0ciAiU2VsZXppb25hIGlsIG1ldG9kbyBldmlkZW56aWF0byIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNzUKK21zZ2lkICJRdWl0IHdpdGhvdXQgY2hhbmdpbmcgc2VsZWN0ZWQgYWNjZXNzIG1ldGhvZCIKK21zZ3N0ciAiRXNjaSBzZW56YSBjYW1iaWFyZSBpbCBtZXRvZG8gZGkgYWNjZXNzbyIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoyOQorbXNnaWQgIktleXN0cm9rZXMiCittc2dzdHIgIkZ1bnppb25hbGl0w6AgZGVpIFRhc3RpIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjI5CisjLCBmdXp6eQorbXNnaWQgIiIKKyJNb3Rpb24ga2V5czogTmV4dC9QcmV2aW91cywgVG9wL0VuZCwgVXAvRG93biwgQmFja3dhcmRzL0ZvcndhcmRzOlxuIgorIiAgaiwgRG93bi1hcnJvdyAgICAgICAgIGssIFVwLWFycm93ICAgICAgICAgICAgIG1vdmUgaGlnaGxpZ2h0XG4iCisiICBOLCBQYWdlLWRvd24sIFNwYWNlICAgUCwgUGFnZS11cCwgQmFja3NwYWNlICAgc2Nyb2xsIGxpc3QgYnkgMSBwYWdlXG4iCisiICBebiAgICAgICAgICAgICAgICAgICAgXnAgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGxpc3QgYnkgMSBsaW5lXG4iCisiICB0LCBIb21lICAgICAgICAgICAgICAgZSwgRW5kICAgICAgICAgICAgICAgICAganVtcCB0byB0b3AvZW5kIG9mIGxpc3RcbiIKKyIgIHUgICAgICAgICAgICAgICAgICAgICBkICAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyBieSAxIHBhZ2VcbiIKKyIgIF51ICAgICAgICAgICAgICAgICAgICBeZCAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyBieSAxIGxpbmVcbiIKKyIgIEIsIExlZnQtYXJyb3cgICAgICAgICBGLCBSaWdodC1hcnJvdyAgICAgICAgICBwYW4gZGlzcGxheSBieSAxLzMgc2NyZWVuXG4iCisiICBeYiAgICAgICAgICAgICAgICAgICAgXmYgICAgICAgICAgICAgICAgICAgICAgcGFuIGRpc3BsYXkgYnkgMSBjaGFyYWN0ZXJcbiIKKyJcbiIKKyJNYXJrIHBhY2thZ2VzIGZvciBsYXRlciBwcm9jZXNzaW5nOlxuIgorIiArLCBJbnNlcnQgIGluc3RhbGwgb3IgdXBncmFkZSAgICAgID0sIEggIGhvbGQgaW4gcHJlc2VudCBzdGF0ZVxuIgorIiAtLCBEZWxldGUgIHJlbW92ZSAgICAgICAgICAgICAgICAgIDosIEcgIHVuaG9sZDogdXBncmFkZSBvciBsZWF2ZSAiCisidW5pbnN0YWxsZWRcbiIKKyIgXyAgICAgICAgICByZW1vdmUgJiBwdXJnZSBjb25maWdcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBNaXNjZWxsYW5lb3VzOlxuIgorIlF1aXQsIGV4aXQsIG92ZXJ3cml0ZSAobm90ZSBjYXBpdGFscyEpOiAgICAgICA/LCBGMSByZXF1ZXN0IGhlbHAgKGFsc28gIgorIkhlbHApXG4iCisiIFJldHVybiAgQ29uZmlybSwgcXVpdCAoY2hlY2sgZGVwZW5kZW5jaWVzKSAgIGksIEkgIHRvZ2dsZS9jeWNsZSBpbmZvICIKKyJkaXNwbGF5c1xuIgorIiAgIFEgICAgIENvbmZpcm0sIHF1aXQgKG92ZXJyaWRlIGRlcC5zKSAgICAgICBvLCBPICBjeWNsZSB0aHJvdWdoIHNvcnQgIgorIm9wdGlvbnNcbiIKKyIgWCwgRXNjICBlWGl0LCBhYmFuZG9uaW5nIGFueSBjaGFuZ2VzIG1hZGUgICAgdiwgViAgY2hhbmdlIHN0YXR1cyBkaXNwbGF5ICIKKyJvcHRzXG4iCisiICAgUiAgICAgUmV2ZXJ0IHRvIHN0YXRlIGJlZm9yZSB0aGlzIGxpc3QgICAgICBebCAgIHJlZHJhdyBkaXNwbGF5XG4iCisiICAgVSAgICAgc2V0IGFsbCB0byBzVWdnZXN0ZWQgc3RhdGUgICAgICAgICAgICAgLyAgIHNlYXJjaCAoUmV0dXJuIHRvICIKKyJjYW5jZWwpXG4iCisiICAgRCAgICAgc2V0IGFsbCB0byBEaXJlY3RseSByZXF1ZXN0ZWQgc3RhdGUgIG4sIFxcICByZXBlYXQgbGFzdCBzZWFyY2hcbiIKK21zZ3N0ciAiIgorIlRhc3RpIHBlciBsbyBzcG9zdGFtZW50bzogXG4iCisiICBuLCBDdXJzb3JlLWdpw7ksIGogICAgIHAsIEN1cnNvcmUtc3UsIGsgICAgICAgIHNwb3N0YSBsJ2V2aWRlbnppYXppb25lXG4iCisiICBOLCBQYWcuLWdpw7ksIFNwYXppbyAgIFAsIFBhZy4tc3UsIEJhY2tzcGFjZSAgIHNjb3JyaSBsYSBsaXN0YSBkaSAxIHBhZ2luYVxuIgorIiAgXm4gICAgICAgICAgICAgICAgICAgIF5wICAgICAgICAgICAgICAgICAgICAgIHNjb3JyaSBsYSBsaXN0YSBkaSAxIHJpZ2FcbiIKKyIgIHQsIEluaXppbyAgICAgICAgICAgICBlLCBGaW5lICAgICAgICAgICAgICAgICBzYWx0YSBpbiBjaW1hL2ZvbmRvIGFsbGEgIgorImxpc3RhXG4iCisiICB1ICAgICAgICAgICAgICAgICAgICAgZCAgICAgICAgICAgICAgICAgICAgICAgc2NvcnJpIGxlIGluZm8gZGkgMSBwYWdpbmFcbiIKKyIgIF51ICAgICAgICAgICAgICAgICAgICBeZCAgICAgICAgICAgICAgICAgICAgICBzY29ycmkgbGUgaW5mbyBkaSAxIHJpZ2FcbiIKKyIgIEIsIEN1cnNvcmUtc2luaXN0cmEgICBGLCBDdXJzb3JlLWRlc3RyYSAgICAgICBzbGl0dGEgc2NoZXJtbyBkaSAxLzMgIgorImFtcGllenphXG4iCisiICBeYiAgICAgICAgICAgICAgICAgICAgXmYgICAgICAgICAgICAgICAgICAgICAgc2xpdHRhIHNjaGVybW8gZGkgMSAiCisiY2FyYXR0ZXJlXG4iCisiXG4iCisiQ29udHJhc3NlZ25hIGkgcGFjY2hldHRpIHBlciB1bmEgYXppb25lIHN1Y2Nlc3NpdmE6XG4iCisiICssIElucyAgIGluc3RhbGxhIG8gYWdnaW9ybmEgICAgID0sIEggIGJsb2NjYSBuZWxsbyBzdGF0byBhdHR1YWxlXG4iCisiIC0sIENhbmMgIHJpbXVvdmkgICAgICAgICAgICAgICAgIDosIEcgIHNibG9jY2E6IGFnZ2lvcm5hIG8gbGFzY2lhIG5vbiAiCisiaW5zdGFsbC5cbiIKKyIgXyAgICAgICAgcmltdW92aSBlZCBlbGltaW5hIGNvbmZpZ3VyYXppb25lXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVmFyaWU6XG4iCisiRXNjaSwgdGVybWluYSwgc292cmFzY3IuIChub3RhIG1haXVzY29sZSEpOiAgID8sIEYxIGNoaWVkaSBhaXV0byAoYW5jaGUgIgorIkhlbHApXG4iCisiIEludmlvICAgQ29uZmVybWEsIGVzY2kgKGNvbnRyb2xsYSBkaXBlbmQuKSAgIGksIEkgIHZlZGkgdmFyaWUgcGFnaW5lIGRpICIKKyJpbmZvXG4iCisiICAgUSAgICAgQ29uZmVybWEsIHRlcm1pbmEgKGlnbm9yYSBkaXBlbmQuKSAgIG8sIE8gIGNhbWJpYSBvcmRpbmFtZW50byAiCisibGlzdGFcbiIKKyIgWCwgRXNjICBFc2NpLCBhYmJhbmRvbmEgbW9kaWZpY2hlIGZhdHRlICAgICAgdiwgViAgY2FtYmlhIG1vZG8gdmlzdWFsLiAiCisic3RhdG9cbiIKKyIgICBSICAgICBSaXByaXN0LiBzdGF0byBwcmVjLiBxdWVzdGEgbGlzdGEgICAgIF5sICAgcmlkaXNlZ25hIGxhIHNjaGVybWF0YVxuIgorIiAgIFUgICAgIGltcG9zdGEgdHV0dGkgYSBzdGF0byBzVWdnZXJpdG8gICAgICAgIC8gICBjZXJjYSAoSW52aW8gcGVyICIKKyJhbm51bGxhcmUpXG4iCisiICAgRCAgICAgaW1wb3N0YSB0dXR0aSBhIHN0YXRvIERpcmV0dC4gY2hpZXN0byAgXFwgICByaXBldGkgbCd1bHRpbWEgIgorInJpY2VyY2FcbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo1NQorbXNnaWQgIkludHJvZHVjdGlvbiB0byBwYWNrYWdlIHNlbGVjdGlvbnMiCittc2dzdHIgIkludHJvZHV6aW9uZSBhbGxhIHNlbGV6aW9uZSBkZWkgcGFjY2hldHRpIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjU1Cittc2dpZCAiIgorIldlbGNvbWUgdG8gZHNlbGVjdCdzIG1haW4gcGFja2FnZSBsaXN0aW5nLlxuIgorIlxuIgorIllvdSB3aWxsIGJlIHByZXNlbnRlZCB3aXRoIGEgbGlzdCBvZiBwYWNrYWdlcyB3aGljaCBhcmUgaW5zdGFsbGVkIG9yICIKKyJhdmFpbGFibGVcbiIKKyJmb3IgaW5zdGFsbGF0aW9uLiAgWW91IGNhbiBuYXZpZ2F0ZSBhcm91bmQgdGhlIGxpc3QgdXNpbmcgdGhlIGN1cnNvciBrZXlzLFxuIgorIm1hcmsgcGFja2FnZXMgZm9yIGluc3RhbGxhdGlvbiAodXNpbmcgYCsnKSBvciBkZWluc3RhbGxhdGlvbiAodXNpbmcgYC0nKS5cbiIKKyJQYWNrYWdlcyBjYW4gYmUgbWFya2VkIGVpdGhlciBzaW5nbHkgb3IgaW4gZ3JvdXBzOyBpbml0aWFsbHkgeW91IHdpbGwgc2VlICIKKyJ0aGF0XG4iCisidGhlIGxpbmUgYEFsbCBwYWNrYWdlcycgaXMgc2VsZWN0ZWQuICBgKycsIGAtJyBhbmQgc28gb24gd2lsbCBhZmZlY3QgYWxsICIKKyJ0aGVcbiIKKyJwYWNrYWdlcyBkZXNjcmliZWQgYnkgdGhlIGhpZ2hsaWdodGVkIGxpbmUuXG4iCisiXG4iCisiU29tZSBvZiB5b3VyIGNob2ljZXMgd2lsbCBjYXVzZSBjb25mbGljdHMgb3IgZGVwZW5kZW5jeSBwcm9ibGVtczsgeW91IHdpbGwgIgorImJlXG4iCisiZ2l2ZW4gYSBzdWItbGlzdCBvZiB0aGUgcmVsZXZhbnQgcGFja2FnZXMsIHNvIHRoYXQgeW91IGNhbiBzb2x2ZSB0aGUgIgorInByb2JsZW1zLlxuIgorIlxuIgorIllvdSBzaG91bGQgcmVhZCB0aGUgbGlzdCBvZiBrZXlzIGFuZCB0aGUgZXhwbGFuYXRpb25zIG9mIHRoZSBkaXNwbGF5LlxuIgorIk11Y2ggb24tbGluZSBoZWxwIGlzIGF2YWlsYWJsZSwgcGxlYXNlIG1ha2UgdXNlIG9mIGl0IC0gcHJlc3MgYD8nIGF0XG4iCisiYW55IHRpbWUgZm9yIGhlbHAuXG4iCisiXG4iCisiV2hlbiB5b3UgaGF2ZSBmaW5pc2hlZCBzZWxlY3RpbmcgcGFja2FnZXMsIHByZXNzIDxlbnRlcj4gdG8gY29uZmlybSAiCisiY2hhbmdlcyxcbiIKKyJvciBgWCcgdG8gcXVpdCB3aXRob3V0IHNhdmluZyBjaGFuZ2VzLiBBIGZpbmFsIGNoZWNrIG9uIGNvbmZsaWN0cyBhbmRcbiIKKyJkZXBlbmRlbmNpZXMgd2lsbCBiZSBkb25lIC0gaGVyZSB0b28geW91IG1heSBzZWUgYSBzdWJsaXN0LlxuIgorIlxuIgorIlByZXNzIDxzcGFjZT4gdG8gbGVhdmUgaGVscCBhbmQgZW50ZXIgdGhlIGxpc3Qgbm93LlxuIgorbXNnc3RyICIiCisiQmVudmVudXRvIG5lbGxhIGxpc3RhIHByaW5jaXBhbGUgZGVpIHBhY2NoZXR0aS5cbiIKKyJcbiIKKyJUaSBzYXLDoCBwcmVzZW50YXRhIHVuYSBsaXN0YSBkZWkgcGFjY2hldHRpIGNoZSBzb25vIGluc3RhbGxhdGkgbyAiCisiZGlzcG9uaWJpbGlcbiIKKyJhZCBlc3NlcmxvLiBQdW9pIG5hdmlnYXJlIGluIGdpcm8gcGVyIGxhIGxpc3RhIHVzYW5kbyBpIHRhc3RpIGN1cnNvcmUsICIKKyJtYXJjYXJlXG4iCisiaSBwYWNjaGV0dGkgcGVyIGwnaW5zdGFsbGF6aW9uZSAodXNhbmRvIGArJykgbyBwZXIgbGEgcmltb3ppb25lICh1c2FuZG8gIgorImAtJykuXG4iCisiSSBwYWNjaGV0dGkgcG9zc29ubyBlc3NlcmUgbWFyY2F0aSBzaWEgc2luZ29sYXJtZW50ZSBjaGUgaW4gZ3J1cHBvOyAiCisiYWxsJ2luaXppb1xuIgorInJpc3VsdGVyw6AgZXZpZGVuemlhdGEgbGEgcmlnYSBgVHV0dGkgaSBwYWNjaGV0dGknLiBgKycsYC0nIGUgY29zw6wgdmlhICIKKyJhZ2lzY29ub1xuIgorInN1IHR1dHRpIGkgcGFjY2hldHRpIGluZGljYXRpIGRhbGxhIHJpZ2EgZXZpZGVuemlhdGEuXG4iCisiXG4iCisiQWxjdW5lIHNjZWx0ZSBjYXVzZXJhbm5vIGNvbmZsaXR0aSBvIHByb2JsZW1pIGNvbiBsZSBkaXBlbmRlbnplOyB0aSB2ZXJyw6BcbiIKKyJwcm9wb3N0YSB1bmEgc290dG8tbGlzdGEgZGVpIHBhY2NoZXR0aSBpbiBxdWVzdGlvbmUgY29uc2VudGlydGkgZGkgIgorInJpc29sdmVybGkuXG4iCisiXG4iCisiRG92cmVzdGkgbGVnZ2VyZSBsYSBsaXN0YSBkZWkgdGFzdGkgZSBsZSBzcGllZ2F6aW9uaSBzdWxsZSBzY2hlcm1hdGUuIEUnXG4iCisiZGlzcG9uaWJpbGUgc3ZhcmlhdG8gYWl1dG8gaW4gbGluZWEsIGZhbm5lIGJ1b24gdXNvIC0gcHJlbWkgYD8nIGluICIKKyJxdWFsc2lhc2lcbiIKKyJtb21lbnRvIHBlciBvdHRlbmVybG8uXG4iCisiXG4iCisiUXVhbmRvIHNlaSBzb2RkaXNmYXR0byBkZWxsYSBzZWxlemlvbmUgcHJlbWkgPGludmlvPiBwZXIgY29uZmVybWFyZSBsZVxuIgorIm1vZGlmaWNoZSwgbyBgWCcgcGVyIHVzY2lyZSBzZW56YSBzYWx2YXJsZS4gIFZlcnLDoCBlZmZldHR1YXRvIHVuIGNvbnRyb2xsb1xuIgorImZpbmFsZSBzdWkgY29uZmxpdHRpIGUgc3VsbGUgZGlwZW5kZW56ZSAtIGFuY2hlIHF1aSBwb3RyZXN0aSBvdHRlbmVyZSB1bmFcbiIKKyJzb3R0by1saXN0YS5cbiIKKyJcbiIKKyJBZGVzc28gcHJlbWkgPHNwYXppbz4gcGVyIHVzY2lyZSBkYWxsJ2FpdXRvIGVkIGVudHJhcmUgbmVsbGEgbGlzdGEuXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6ODAKK21zZ2lkICJJbnRyb2R1Y3Rpb24gdG8gcmVhZC1vbmx5IHBhY2thZ2UgbGlzdCBicm93c2VyIgorbXNnc3RyICJJbnRyb2R1emlvbmUgYWxsYSBsaXN0YSBkZWkgcGFjY2hldHRpIChpbiBzb2xhIGxldHR1cmEpIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjgwCittc2dpZCAiIgorIldlbGNvbWUgdG8gZHNlbGVjdCdzIG1haW4gcGFja2FnZSBsaXN0aW5nLlxuIgorIlxuIgorIllvdSB3aWxsIGJlIHByZXNlbnRlZCB3aXRoIGEgbGlzdCBvZiBwYWNrYWdlcyB3aGljaCBhcmUgaW5zdGFsbGVkIG9yICIKKyJhdmFpbGFibGVcbiIKKyJmb3IgaW5zdGFsbGF0aW9uLiAgU2luY2UgeW91IGRvIG5vdCBoYXZlIHRoZSBwcml2aWxlZ2UgbmVjZXNzYXJ5IHRvIHVwZGF0ZVxuIgorInBhY2thZ2Ugc3RhdGVzLCB5b3UgYXJlIGluIGEgcmVhZC1vbmx5IG1vZGUuICBZb3UgY2FuIG5hdmlnYXRlIGFyb3VuZCB0aGVcbiIKKyJsaXN0IHVzaW5nIHRoZSBjdXJzb3Iga2V5cyAocGxlYXNlIHNlZSB0aGUgYEtleXN0cm9rZXMnIGhlbHAgc2NyZWVuKSwgIgorIm9ic2VydmVcbiIKKyJ0aGUgc3RhdHVzIG9mIHRoZSBwYWNrYWdlcyBhbmQgcmVhZCBpbmZvcm1hdGlvbiBhYm91dCB0aGVtLlxuIgorIlxuIgorIllvdSBzaG91bGQgcmVhZCB0aGUgbGlzdCBvZiBrZXlzIGFuZCB0aGUgZXhwbGFuYXRpb25zIG9mIHRoZSBkaXNwbGF5LlxuIgorIk11Y2ggb24tbGluZSBoZWxwIGlzIGF2YWlsYWJsZSwgcGxlYXNlIG1ha2UgdXNlIG9mIGl0IC0gcHJlc3MgYD8nIGF0XG4iCisiYW55IHRpbWUgZm9yIGhlbHAuXG4iCisiXG4iCisiV2hlbiB5b3UgaGF2ZSBmaW5pc2hlZCBicm93c2luZywgcHJlc3MgYFEnIG9yIDxlbnRlcj4gdG8gcXVpdC5cbiIKKyJcbiIKKyJQcmVzcyA8c3BhY2U+IHRvIGxlYXZlIGhlbHAgYW5kIGVudGVyIHRoZSBsaXN0IG5vdy5cbiIKK21zZ3N0ciAiIgorIkJlbnZlbnV0byBuZWxsYSBsaXN0YSBwcmluY2lwYWxlIGRlaSBwYWNjaGV0dGkgZGkgZHNlbGVjdC5cbiIKKyJcbiIKKyJUaSBzYXLDoCBwcmVzZW50YXRhIHVuYSBsaXN0YSBkaSBwYWNjaGV0dGkgY2hlIHNvbm8gaW5zdGFsbGF0aSBvIGRpc3BvbmliaWxpXG4iCisiYWQgZXNzZXJsby4gRGFsIG1vbWVudG8gY2hlIG5vbiBoYWkgaSBwcml2aWxlZ2kgbmVjZXNzYXJpIGFkIGFnZ2lvcm5hcmUgbG9cbiIKKyJzdGF0byBkZWkgcGFjY2hldHRpLCBzZWkgaW4gbW9kYWxpdMOgIGRpIHNvbGEgbGV0dHVyYS4gIFB1b2kgbmF2aWdhcmUgaW4gIgorImdpcm9cbiIKKyJwZXIgbGEgbGlzdGEgY29uIGkgdGFzdGkgY3Vyc29yZSAodmVkaSBsJ2FpdXRvIHN1bGxlIGFzc29jaWF6aW9uaSBkZWkgIgorInRhc3RpKSxcbiIKKyJvc3NlcnZhcmUgbG8gc3RhdG8gZGVpIHBhY2NoZXR0aSBlIGxlZ2dlcm5lIGxlIHJlbGF0aXZlIGluZm9ybWF6aW9uaS5cbiIKKyJcbiIKKyJEb3ZyZXN0aSBsZWdnZXJlIGxhIGxpc3RhIGRlaSB0YXN0aSBlIGxlIHNwaWVnYXppb25pIHN1bGxlIHZpZGVhdGUuXG4iCisiRScgZGlzcG9uaWJpbGUgbW9sdG8gYWl1dG8gaW4gbGluZWEsIHVzYWxvIHBlciBmYXZvcmUhICBQcmVtaSBgPycgaW4gIgorInF1YWxzaWFzaVxuIgorIm1vbWVudG8gcGVyIHZlZGVybG8uXG4iCisiXG4iCisiUXVhbmRvIGhhaSBmaW5pdG8gZGkgaXNwZXppb25hcmUsIHByZW1pIGBRJyBvIDxpbnZpbz4gcGVyIHVzY2lyZS5cbiIKKyJcbiIKKyJBZGVzc28gcHJlbWkgPHNwYXppbz4gcGVyIGxhc2NpYXJlIGwnYWl1dG8gZSB2aXNpdGFyZSBsYSBsaXN0YS5cbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo5OQorbXNnaWQgIkludHJvZHVjdGlvbiB0byBjb25mbGljdC9kZXBlbmRlbmN5IHJlc29sdXRpb24gc3ViLWxpc3QiCittc2dzdHIgIiIKKyJJbnRyb2R1emlvbmUgYWxsYSBzb3R0by1saXN0YSBwZXIgbGEgcmlzb2x1emlvbmUgZGVpIGNvbmZsaXR0aS9kaXBlbmRlbnplIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjk5Cittc2dpZCAiIgorIkRlcGVuZGVuY3kvY29uZmxpY3QgcmVzb2x1dGlvbiAtIGludHJvZHVjdGlvbi5cbiIKKyJcbiIKKyJPbmUgb3IgbW9yZSBvZiB5b3VyIGNob2ljZXMgaGF2ZSByYWlzZWQgYSBjb25mbGljdCBvciBkZXBlbmRlbmN5IHByb2JsZW0gLVxuIgorInNvbWUgcGFja2FnZXMgc2hvdWxkIG9ubHkgYmUgaW5zdGFsbGVkIGluIGNvbmp1bmN0aW9uIHdpdGggY2VydGFpbiBvdGhlcnMsICIKKyJhbmRcbiIKKyJzb21lIGNvbWJpbmF0aW9ucyBvZiBwYWNrYWdlcyBtYXkgbm90IGJlIGluc3RhbGxlZCB0b2dldGhlci5cbiIKKyJcbiIKKyJZb3Ugd2lsbCBzZWUgYSBzdWItbGlzdCBjb250YWluaW5nIHRoZSBwYWNrYWdlcyBpbnZvbHZlZC4gIFRoZSBib3R0b20gaGFsZiAiCisib2ZcbiIKKyJ0aGUgZGlzcGxheSBzaG93cyByZWxldmFudCBjb25mbGljdHMgYW5kIGRlcGVuZGVuY2llczsgdXNlIGBpJyB0byBjeWNsZSAiCisiYmV0d2VlblxuIgorInRoYXQsIHRoZSBwYWNrYWdlIGRlc2NyaXB0aW9ucyBhbmQgdGhlIGludGVybmFsIGNvbnRyb2wgaW5mb3JtYXRpb24uXG4iCisiXG4iCisiQSBzZXQgb2YgYHN1Z2dlc3RlZCcgcGFja2FnZXMgaGFzIGJlZW4gY2FsY3VsYXRlZCwgYW5kIHRoZSBpbml0aWFsIG1hcmtpbmdzICIKKyJpblxuIgorInRoaXMgc3ViLWxpc3QgaGF2ZSBiZWVuIHNldCB0byBtYXRjaCB0aG9zZSwgc28geW91IGNhbiBqdXN0IGhpdCBSZXR1cm4gdG9cbiIKKyJhY2NlcHQgdGhlIHN1Z2dlc3Rpb25zIGlmIHlvdSB3aXNoLiAgWW91IG1heSBhYm9ydCB0aGUgY2hhbmdlKHMpIHdoaWNoICIKKyJjYXVzZWRcbiIKKyJ0aGUgcHJvYmxlbShzKSwgYW5kIGdvIGJhY2sgdG8gdGhlIG1haW4gbGlzdCwgYnkgcHJlc3NpbmcgY2FwaXRhbCBgWCcuXG4iCisiXG4iCisiWW91IGNhbiBhbHNvIG1vdmUgYXJvdW5kIHRoZSBsaXN0IGFuZCBjaGFuZ2UgdGhlIG1hcmtpbmdzIHNvIHRoYXQgdGhleSBhcmUgIgorIm1vcmVcbiIKKyJsaWtlIHdoYXQgeW91IHdhbnQsIGFuZCB5b3UgY2FuIGByZWplY3QnIG15IHN1Z2dlc3Rpb25zIGJ5IHVzaW5nIHRoZSAiCisiY2FwaXRhbFxuIgorImBEJyBvciBgUicga2V5cyAoc2VlIHRoZSBrZXliaW5kaW5ncyBoZWxwIHNjcmVlbikuICBZb3UgY2FuIHVzZSBjYXBpdGFsIGBRJyAiCisidG9cbiIKKyJmb3JjZSBtZSB0byBhY2NlcHQgdGhlIHNpdHVhdGlvbiBjdXJyZW50bHkgZGlzcGxheWVkLCBpbiBjYXNlIHlvdSB3YW50IHRvXG4iCisib3ZlcnJpZGUgYSByZWNvbW1lbmRhdGlvbiBvciB0aGluayB0aGF0IHRoZSBwcm9ncmFtIGlzIG1pc3Rha2VuLlxuIgorIlxuIgorIlByZXNzIDxzcGFjZT4gdG8gbGVhdmUgaGVscCBhbmQgZW50ZXIgdGhlIHN1Yi1saXN0OyByZW1lbWJlcjogcHJlc3MgYD8nIGZvciAiCisiaGVscC5cbiIKK21zZ3N0ciAiIgorIlJpc29sdXppb25lIHByb2JsZW1pIGNvbiBsZSBkaXBlbmRlbnplL2NvbmZsaXR0aSAtIGludHJvZHV6aW9uZS5cbiIKKyJcbiIKKyJVbmEgbyBwacO5IGRlbGxlIHNjZWx0ZSBlZmZldHR1YXRlIGhhbm5vIGNhdXNhdG8gdW4gY29uZmxpdHRvIG8gdW4gcHJvYmxlbWEgIgorImNvblxuIgorImxlIGRpcGVuZGVuemUgLSBxdWFsY2hlIHBhY2NoZXR0byBkb3ZyZWJiZSBlc3NlcmUgaW5zdGFsbGF0byBzb2xvIGluc2llbWUgIgorImNvblxuIgorInF1YWxjaGUgYWx0cm8sIGUgcG90cmViYmUgZXNzZXJlIGltcG9zc2liaWxlIGluc3RhbGxhcmUgaW5zaWVtZSBxdWFsY2hlXG4iCisiY29tYmluYXppb25lIGRpIHBhY2NoZXR0aS5cbiIKKyJcbiIKKyJUaSB2aWVuZSBvcmEgcHJvcG9zdGEgdW5hIHNvdHRvLWxpc3RhIGNvbnRlbmVudGUgaSBwYWNjaGV0dGkgY29pbnZvbHRpLiBMYSAiCisibWV0w6BcbiIKKyJpbmZlcmlvcmUgZGVsbG8gc2NoZXJtbyBtb3N0cmEgaSBjb25mbGl0dGkgZWQgaSBwcm9ibGVtaSBjb24gbGUgZGlwZW5kZW56ZTsgIgorInVzYVxuIgorImBpJyBwZXIgcGFzc2FyZSBkYSBxdWVzdGEgaW5mb3JtYXppb25lLCBhbGxhIGRlc2NyaXppb25lIGRlbCBwYWNjaGV0dG8gZWQgIgorImFsbGVcbiIKKyJpbmZvcm1hemlvbmkgZGkgY29udHJvbGxvIGludGVybmUuXG4iCisiXG4iCisiVmllbmUgc3RhYmlsaXRvIHVuIGluc2llbWUgZGkgcGFjY2hldHRpIGBzdWdnZXJpdGknIGUgbGUgbWFyY2F0dXJlIGluaXppYWxpICIKKyJkaVxuIgorInF1ZXN0YSBzb3R0by1saXN0YSBzb25vIGltcG9zdGF0ZSBkaSBjb25zZWd1ZW56YSwgaW4gbW9kbyB0YWxlIGNoZSBjb24gdW4gIgorInNvbG9cbiIKKyI8aW52aW8+IHR1IHBvc3NhIGNvbmZlcm1hcmUgbGEgc2VsZXppb25lLCBzZSB0aSB2YSBiZW5lLiBQdW9pIGFubnVsbGFyZSBsYVxuIgorIm1vZGlmaWNhIGNoZSBoYSBjYXVzYXRvIGlsIHByb2JsZW1hLCBlIHRvcm5hcmUgaW5kaWV0cm8gYWxsYSBsaXN0YSAiCisicHJpbmNpcGFsZVxuIgorInByZW1lbmRvIGBYJyBtYWl1c2NvbGEuXG4iCisiXG4iCisiUHVvaSBhbmNoZSBzcG9zdGFydGkgcGVyIGxhIGxpc3RhIGUgY2FtYmlhcmUgbGUgaW1wb3N0YXppb25pIGEgdHVvICIKKyJwaWFjaW1lbnRvLFxuIgorImUgcHVvaSByaWdldHRhcmUgaSBtaWVpIHN1Z2dlcmltZW50aSB1c2FuZG8gbGUgbWFpdXNjb2xlIGBEJyBvIGBSJyAodmVkaSAiCisiYWl1dG9cbiIKKyJzdWxsZSBhc3NvY2lhemlvbmkgZGVpIHRhc3RpKS4gIFB1b2kgdXNhcmUgbGEgbWFpdXNjb2xhIGBRJyBwZXIgZm9yemFybWkgYWRcbiIKKyJhY2NldHRhcmUgbGUgaW1wb3N0YXppb25pIGNvcnJlbnRpLCBuZWwgY2FzbyB0dSB2b2dsaWEgaWdub3JhcmUgdW5hXG4iCisicmFjY29tYW5kYXppb25lIG8gcGVyY2jDqSBwZW5zaSBpbCBwcm9ncmFtbWEgc2lhIGluIGVycm9yZS5cbiIKKyJcbiIKKyJQcmVtaSA8c3BhemlvPiBwZXIgbGFzY2lhcmUgbCdhaXV0byBlIHZpc2l0YXJlIGxhIHNvdHRvLWxpc3RhOyByaWNvcmRhOiIKKyJgPyc9YWl1dG9cbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxMjUKK21zZ2lkICJEaXNwbGF5LCBwYXJ0IDE6IHBhY2thZ2UgbGlzdGluZyBhbmQgc3RhdHVzIGNoYXJzIgorbXNnc3RyICJWaXN1YWxpenphemlvbmUsIHBhcnRlIDE6IGxpc3RhIGRlaSBwYWNjaGV0dGkgZSBjYXJhdHRlcmkgZGkgc3RhdG8iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTI1CisjLCBmdXp6eQorbXNnaWQgIiIKKyJUaGUgdG9wIGhhbGYgb2YgdGhlIHNjcmVlbiBzaG93cyBhIGxpc3Qgb2YgcGFja2FnZXMuICBGb3IgZWFjaCBwYWNrYWdlIHlvdSAiCisic2VlXG4iCisiZm91ciBjb2x1bW5zIGZvciBpdHMgY3VycmVudCBzdGF0dXMgb24gdGhlIHN5c3RlbSBhbmQgbWFyay4gIEluIHRlcnNlIG1vZGUgIgorIih1c2VcbiIKKyJgdicgdG8gdG9nZ2xlIHZlcmJvc2UgZGlzcGxheSkgdGhlc2UgYXJlIHNpbmdsZSBjaGFyYWN0ZXJzLCBmcm9tIGxlZnQgdG8gIgorInJpZ2h0OlxuIgorIlxuIgorIiBFcnJvciBmbGFnOiBTcGFjZSAtIG5vIGVycm9yIChidXQgcGFja2FnZSBtYXkgYmUgaW4gYnJva2VuIHN0YXRlIC0gc2VlICIKKyJiZWxvdylcbiIKKyIgICAgICAgICAgICAgIGBSJyAgLSBzZXJpb3VzIGVycm9yIGR1cmluZyBpbnN0YWxsYXRpb24sIG5lZWRzICIKKyJyZWluc3RhbGxhdGlvbjtcbiIKKyIgSW5zdGFsbGVkIHN0YXRlOiAgICAgU3BhY2UgICAgLSBub3QgaW5zdGFsbGVkO1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgYConICAgICAtIGluc3RhbGxlZDtcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgIGAtJyAgICAgLSBub3QgaW5zdGFsbGVkIGJ1dCBjb25maWcgZmlsZXMgcmVtYWluO1xuIgorIiAgIHBhY2thZ2VzIGluIHRoZXNlIHsgYFUnICAgICAtIHVucGFja2VkIGJ1dCBub3QgeWV0IGNvbmZpZ3VyZWQ7XG4iCisiICAgc3RhdGVzIGFyZSBub3QgICAgeyBgQycgICAgIC0gaGFsZi1jb25maWd1cmVkIChhbiBlcnJvciBoYXBwZW5lZCk7XG4iCisiICAgKHF1aXRlKSBwcm9wZXJseSAgeyBgSScgICAgIC0gaGFsZi1pbnN0YWxsZWQgKGFuIGVycm9yIGhhcHBlbmVkKTtcbiIKKyIgICBpbnN0YWxsZWQgICAgICAgICB7IGBXJyxgdCcgLSB0cmlnZ2VycyBhcmUgYXdhaXRlZCByZXNwLiBwZW5kaW5nLlxuIgorIiBPbGQgbWFyazogd2hhdCB3YXMgcmVxdWVzdGVkIGZvciB0aGlzIHBhY2thZ2UgYmVmb3JlIHByZXNlbnRpbmcgdGhpcyBsaXN0O1xuIgorIiBNYXJrOiB3aGF0IGlzIHJlcXVlc3RlZCBmb3IgdGhpcyBwYWNrYWdlOlxuIgorIiAgYConOiBtYXJrZWQgZm9yIGluc3RhbGxhdGlvbiBvciB1cGdyYWRlO1xuIgorIiAgYC0nOiBtYXJrZWQgZm9yIHJlbW92YWwsIGJ1dCBhbnkgY29uZmlndXJhdGlvbiBmaWxlcyB3aWxsIHJlbWFpbjtcbiIKKyIgIGA9Jzogb24gaG9sZDogcGFja2FnZSB3aWxsIG5vdCBiZSBwcm9jZXNzZWQgYXQgYWxsO1xuIgorIiAgYF8nOiBtYXJrZWQgZm9yIHB1cmdlIGNvbXBsZXRlbHkgLSBldmVuIHJlbW92ZSBjb25maWd1cmF0aW9uO1xuIgorIiAgYG4nOiBwYWNrYWdlIGlzIG5ldyBhbmQgaGFzIHlldCB0byBiZSBtYXJrZWQgZm9yIGluc3RhbGwvcmVtb3ZlLyZjLlxuIgorIlxuIgorIkFsc28gZGlzcGxheWVkIGFyZSBlYWNoIHBhY2thZ2UncyBQcmlvcml0eSwgU2VjdGlvbiwgbmFtZSwgaW5zdGFsbGVkIGFuZFxuIgorImF2YWlsYWJsZSB2ZXJzaW9uIG51bWJlcnMgKHNoaWZ0LVYgdG8gZGlzcGxheS9oaWRlKSBhbmQgc3VtbWFyeSAiCisiZGVzY3JpcHRpb24uXG4iCittc2dzdHIgIiIKKyJMYSBwcmltYSBtZXTDoCBkZWxsbyBzY2hlcm1vIG1vc3RyYSB1bmEgbGlzdGEgZGkgcGFjY2hldHRpLiAgUGVyIG9nbnVubyBkaSAiCisiZXNzaVxuIgorInF1YXR0cm8gY29sb25uZSByaXBvcnRhbm8gbG8gc3RhdG8gY29ycmVudGUgZSBsYSBtYXJjYXR1cmEuIE5lbGxhIG1vZGFsaXTDoFxuIgorImNvbmNpc2EgKGB2JyBwYXNzYSBhIHF1ZWxsYSBlc3Rlc2EpIHNvbm8gc2luZ29saSBjYXJhdHRlcmksIGRhIHNpbmlzdHJhICIKKyJzb25vOlxuIgorIlxuIgorIiBJbmRpY2F0b3JlIEVycm9yZTogU3BhemlvIC0gbmVzc3VuIGVycm9yZSAobWEgcHXDsiBlc3NlcmUgZGlmZXR0b3NvIC0gdi4iCisic290dG8pXG4iCisiICAgICAgICAgICAgICAgICAgICAgYFInICAgLSBlcnJvcmkgZ3JhdmkgZGkgaW5zdGFsbGF6LiwgbmVjZXNzaXRhICIKKyJyZWluc3RhbGwuO1xuIgorIiAgIFN0YXRvIHBhY2NoZXR0bzogU3BhemlvIC0gbm9uIGluc3RhbGxhdG87XG4iCisiICAgICAgICAgICAgICAgICAgICAgYConICAgLSBpbnN0YWxsYXRvO1xuIgorIiAgICAgICAgICAgICAgICAgICAgIGAtJyAgIC0gbm9uIGluc3RhbGxhdG8sIG1hIGZpbGUgY29uZmlndXJhemlvbmUgIgorInByZXNlbnRpO1xuIgorIiAgICBpIHBhY2NoZXR0aSBpbiB7IGBVJyAgIC0gc3BhY2NoZXR0YXRvIG1hIG5vbiBhbmNvcmEgY29uZmlndXJhdG87XG4iCisiICAgICAgcXVlc3RpIHN0YXRpIHsgYEMnICAgLSBjb25maWd1cmF0byBwYXJ6aWFsbWVudGUgKG9jY29yc28gcXVhbGNoZSAiCisiZXJyb3JlKTtcbiIKKyIgICAgc29ubyBkaWZldHRvc2kgeyBgSScgICAtIGluc3RhbGxhdG8gcGFyemlhbG1lbnRlIChvY2NvcnNvIHF1YWxjaGUgIgorImVycm9yZSkuXG4iCisiIFZlY2NoaWEgbWFyY2F0dXJhOiBzaXR1YXppb25lIHByZWNlZGVudGUgYWxsYSBwcmVzZW50YXppb25lIGRpIHF1ZXN0YSAiCisibGlzdGE7XG4iCisiIE1hcmNhdHVyYTogY29zYSBzaSByaWNoaWVkZSBwZXIgcXVlc3RvIHBhY2NoZXR0bzpcbiIKKyIgIGAqJzogY29udHJhc3NlZ25hdG8gcGVyIGwnaW5zdGFsbGF6aW9uZSBvIGwnYWdnaW9ybmFtZW50bztcbiIKKyIgIGAtJzogY29udHJhc3NlZ25hdG8gcGVyIGxhIHJpbW96aW9uZSwgY29uc2VydmFuZG8gcGVyw7IgaSBmaWxlIGRpICIKKyJjb25maWd1cmF6LjtcbiIKKyIgIGA9JzogYmxvY2NhdG86IGlsIHBhY2NoZXR0byBub24gdmVycsOgIHByb2Nlc3NhdG8gaW4gYWxjdW4gbW9kbztcbiIKKyIgIGBfJzogY29udHJhc3NlZ25hdG8gcGVyIGwnZWxpbWluYXppb25lIGNvbXBsZXRhLCBhbmNoZSBkZWxsYSAiCisiY29uZmlndXJhemlvbmU7XG4iCisiICBgbic6IGlsIHBhY2NoZXR0byDDqCBudW92byBlIG5vbiDDqCBhbmNvcmEgc3RhdG8gY29udHJhc3NlZ25hdG8uXG4iCisiXG4iCisiRGkgb2duaSBwYWNjaGV0dG8gc29ubyByaXBvcnRhdGUgbGEgUHJpb3JpdMOgLCBsYSBTZXppb25lLCBpbCBOb21lLCBsYSAiCisidmVyc2lvbmVcbiIKKyJpbnN0YWxsYXRhLCBxdWVsbGEgZGlzcG9uaWJpbGUgKGBWJyBwZXIgbW9zdHJhcmxhL25hc2MuKSBlIGxhIGRlc2NyLiAiCisic29tbWFyaWEuXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTUyCittc2dpZCAiRGlzcGxheSwgcGFydCAyOiBsaXN0IGhpZ2hsaWdodDsgaW5mb3JtYXRpb24gZGlzcGxheSIKK21zZ3N0ciAiIgorIlZpc3VhbGl6emF6aW9uZSwgcGFydGUgMjogZXZpZGVuemlhemlvbmUgbmVsbGEgbGlzdGE7IHZpcy4gaW5mb3JtYXppb25pIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjE1MgorbXNnaWQgIiIKKyIqIEhpZ2hsaWdodDogT25lIGxpbmUgaW4gdGhlIHBhY2thZ2UgbGlzdCB3aWxsIGJlIGhpZ2hsaWdodGVkLiAgSXQgIgorImluZGljYXRlc1xuIgorIiAgd2hpY2ggcGFja2FnZShzKSB3aWxsIGJlIGFmZmVjdGVkIGJ5IHByZXNzZXMgb2YgYCsnLCBgLScgYW5kIGBfJy5cbiIKKyJcbiIKKyIqIFRoZSBkaXZpZGluZyBsaW5lIGluIHRoZSBtaWRkbGUgb2YgdGhlIHNjcmVlbiBzaG93cyBhIGJyaWVmIGV4cGxhbmF0aW9uICIKKyJvZlxuIgorIiAgdGhlIHN0YXR1cyBvZiB0aGUgY3VycmVudGx5LWhpZ2hsaWdodGVkIHBhY2thZ2UsIG9yIGEgZGVzY3JpcHRpb24gb2YgIgorIndoaWNoXG4iCisiICBncm91cCBpcyBoaWdobGlnaHRlZCBpZiBhIGdyb3VwIGxpbmUgaXMuICBJZiB5b3UgZG9uJ3QgdW5kZXJzdGFuZCB0aGVcbiIKKyIgIG1lYW5pbmcgb2Ygc29tZSBvZiB0aGUgc3RhdHVzIGNoYXJhY3RlcnMgZGlzcGxheWVkLCBnbyB0byB0aGUgcmVsZXZhbnRcbiIKKyIgIHBhY2thZ2UgYW5kIGxvb2sgYXQgdGhpcyBkaXZpZGVyIGxpbmUsIG9yIHVzZSB0aGUgYHYnIGtleSBmb3IgYSB2ZXJib3NlXG4iCisiICBkaXNwbGF5IChwcmVzcyBgdicgYWdhaW4gdG8gZ28gYmFjayB0byB0aGUgdGVyc2UgZGlzcGxheSkuXG4iCisiXG4iCisiKiBUaGUgYm90dG9tIG9mIHRoZSBzY3JlZW4gc2hvd3MgbW9yZSBpbmZvcm1hdGlvbiBhYm91dCB0aGVcbiIKKyIgIGN1cnJlbnRseS1oaWdobGlnaHRlZCBwYWNrYWdlIChpZiB0aGVyZSBpcyBvbmx5IG9uZSkuXG4iCisiXG4iCisiICBJdCBjYW4gc2hvdyBhbiBleHRlbmRlZCBkZXNjcmlwdGlvbiBvZiB0aGUgcGFja2FnZSwgdGhlIGludGVybmFsIHBhY2thZ2VcbiIKKyIgIGNvbnRyb2wgZGV0YWlscyAoZWl0aGVyIGZvciB0aGUgaW5zdGFsbGVkIG9yIGF2YWlsYWJsZSB2ZXJzaW9uIG9mIHRoZVxuIgorIiAgcGFja2FnZSksIG9yIGluZm9ybWF0aW9uIGFib3V0IGNvbmZsaWN0cyBhbmQgZGVwZW5kZW5jaWVzIGludm9sdmluZyB0aGVcbiIKKyIgIGN1cnJlbnQgcGFja2FnZSAoaW4gY29uZmxpY3QvZGVwZW5kZW5jeSByZXNvbHV0aW9uIHN1Ymxpc3RzKS5cbiIKKyJcbiIKKyIgIFVzZSB0aGUgYGknIGtleSB0byBjeWNsZSB0aHJvdWdoIHRoZSBkaXNwbGF5cywgYW5kIGBJJyB0byBoaWRlIHRoZVxuIgorIiAgaW5mb3JtYXRpb24gZGlzcGxheSBvciBleHBhbmQgaXQgdG8gdXNlIGFsbW9zdCBhbGwgb2YgdGhlIHNjcmVlbi5cbiIKK21zZ3N0ciAiIgorIiogRXZpZGVuemlhdHVyYTogdW5hIGxpbmVhIGRlbGwnZWxlbmNvIGRlaSBwYWNjaGV0dGkgdmVycsOgIGV2aWRlbnppYXRhLFxuIgorIiAgZWQgaW5kaWNhIGEgcXVhbGUgbyBhIHF1YWxpIHBhY2NoZXR0aSB2ZXJyw6AgYXBwbGljYXRvIGlsIGNvbWFuZG8gYCsnLFxuIgorIiAgYC0nIGUgYF8nLlxuIgorIlxuIgorIiogTGEgbGluZWEgZGl2aXNvcmlhIG5lbCBtZXp6byBkZWxsbyBzY2hlcm1vIG1vc3RyYSB1bmEgYnJldmUgc3BpZWdhemlvbmVcbiIKKyIgIGRlbGxvIHN0YXRvIGRlbCBwYWNjaGV0dG8gZXZpZGVuemlhdG8gYWwgbW9tZW50bywgbyB1bmEgZGVzY3JpemlvbmUgZGlcbiIKKyIgIGEgcXVhbGUgZ3J1cHBvIHNpIGFwcGxpY2hpIGlsIGNvbWFuZG8gc2UgdmllbmUgZXZpZGVuemlhdGEgdW5hIGxpbmVhIGRpXG4iCisiICBncnVwcG8uIFNlIG5vbiBjYXBpdGUgaWwgc2lnbmlmaWNhdG8gZGkgYWxjdW5pIGRlaSBjYXJhdHRlcmkgZGkgc3RhdG9cbiIKKyIgIG1vc3RyYXRpLCBhbmRhdGUgc3VsIHBhY2NoZXR0byBpbiBxdWVzdGlvbmUgZSBndWFyZGF0ZSBsYSBsaW5lYSAiCisiZGl2aXNvcmlhLFxuIgorIiAgbyB1c2F0ZSBpbCB0YXN0byBgdicgcGVyIGF2ZXJlIHVuYSBzcGllZ2F6aW9uZSBwcm9saXNzYSAocHJlbWV0ZSBkaSBudW92b1xuIgorIiAgYHYnIHBlciB0b3JuYXJlIGFsbGEgdmlzdWFsaXp6YXppb25lIHNpbnRldGljYSkuXG4iCisiXG4iCisiKiBJbCBmb25kbyBkZWxsbyBzY2hlcm1vIG1vc3RyYSB1bHRlcmlvcmkgaW5mb3JtYXppb25pIHN1bCBwYWNjaGV0dG9cbiIKKyIgIGNvcnJlbnRlbWVudGUgZXZpZGVuemlhdG8sIHNlIGMnw6guXG4iCisiXG4iCisiICBQdcOyIG1vc3RyYXJlIHVuYSBkZXNjcml6aW9uZSBlc3Rlc2EgZGVsIHBhY2NoZXR0bywgaSBkZXR0YWdsaSBkaSAiCisiY29udHJvbGxvXG4iCisiICBpbnRlcm5pIGRlbCBwYWNjaGV0dG8gKHNpYSBwZXIgbGEgdmVyc2lvbmUgaW5zdGFsbGF0YSBjaGUgcGVyIHF1ZWxsYSBcbiIKKyIgIGRpc3BvbmliaWxlKSwgbyBpbmZvcm1hemlvbmkgc3VpIGNvbmZsaXR0aSBlIHN1bGxlIGRpcGVuZGVuemUgcmVsYXRpdmVcbiIKKyIgIGFsIHBhY2NoZXR0byBzdGVzc28gKGluIHNvdHRvZWxlbmNoaSBkaSByaXNvbHV6aW9uZSBkaSBjb25mbGl0dGkgZVxuIgorIiAgZGlwZW5kZW56ZSkuXG4iCisiXG4iCisiICBVc2F0ZSBpbCB0YXN0byBgaScgcGVyIGZhcmUgdW4gY2ljbG8gdHJhIGxlIHNjaGVybWF0ZSwgZSBgSScgcGVyIFxuIgorIiAgbmFzY29uZGVyZSBsYSBzY2hlcm1hdGEgZGVsbGUgaW5mb3JtYXppb25pIG8gZXNwYW5kZXJsYSBzdSBxdWFzaSBcbiIKKyIgIHR1dHRvIGxvIHNjaGVybW8uXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTc2Cittc2dpZCAiSW50cm9kdWN0aW9uIHRvIG1ldGhvZCBzZWxlY3Rpb24gZGlzcGxheSIKK21zZ3N0ciAiSW50cm9kdXppb25lIGFsbGEgc2VsZXppb25lIGRlbCBtZXRvZG8iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTc2Cittc2dpZCAiIgorImRzZWxlY3QgYW5kIGRwa2cgY2FuIGRvIGF1dG9tYXRpYyBpbnN0YWxsYXRpb24sIGxvYWRpbmcgdGhlIHBhY2thZ2UgZmlsZXMgdG8gIgorImJlXG4iCisiaW5zdGFsbGVkIGZyb20gb25lIG9mIGEgbnVtYmVyIG9mIGRpZmZlcmVudCBwb3NzaWJsZSBwbGFjZXMuXG4iCisiXG4iCisiVGhpcyBsaXN0IGFsbG93cyB5b3UgdG8gc2VsZWN0IG9uZSBvZiB0aGVzZSBpbnN0YWxsYXRpb24gbWV0aG9kcy5cbiIKKyJcbiIKKyJNb3ZlIHRoZSBoaWdobGlnaHQgdG8gdGhlIG1ldGhvZCB5b3Ugd2lzaCB0byB1c2UsIGFuZCBoaXQgRW50ZXIuICBZb3Ugd2lsbCAiCisidGhlblxuIgorImJlIHByb21wdGVkIGZvciB0aGUgaW5mb3JtYXRpb24gcmVxdWlyZWQgdG8gZG8gdGhlIGluc3RhbGxhdGlvbi5cbiIKKyJcbiIKKyJBcyB5b3UgbW92ZSB0aGUgaGlnaGxpZ2h0IGEgZGVzY3JpcHRpb24gb2YgZWFjaCBtZXRob2QsIHdoZXJlIGF2YWlsYWJsZSwgaXNcbiIKKyJkaXNwbGF5ZWQgaW4gdGhlIGJvdHRvbSBoYWxmIG9mIHRoZSBzY3JlZW4uXG4iCisiXG4iCisiSWYgeW91IHdpc2ggdG8gcXVpdCB3aXRob3V0IGNoYW5naW5nIGFueXRoaW5nIHVzZSB0aGUgYHgnIGtleSB3aGlsZSBpbiB0aGUgIgorImxpc3RcbiIKKyJvZiBpbnN0YWxsYXRpb24gbWV0aG9kcy5cbiIKKyJcbiIKKyJBIGZ1bGwgbGlzdCBvZiBrZXlzdHJva2VzIGlzIGF2YWlsYWJsZSBieSBwcmVzc2luZyBgaycgbm93LCBvciBmcm9tIHRoZSAiCisiaGVscFxuIgorIm1lbnUgcmVhY2hhYmxlIGJ5IHByZXNzaW5nIGA/Jy5cbiIKK21zZ3N0ciAiIgorImRzZWxlY3QgZSBkcGtnIHBvc3Nvbm8gZXNlZ3VpcmUgdW5hIGluc3RhbGxhemlvbmUgYXV0b21hdGljYSwgY2FyaWNhbmRvIGlcbiIKKyJmaWxlIGRlaSBwYWNjaGV0dGkgZGEgaW5zdGFsbGFyZSBpbiB1bmEgZGVsbGUgc3ZhcmlhdGUgbWFuaWVyZSBwb3NzaWJpbGkuXG4iCisiXG4iCisiUXVlc3RhIGxpc3RhIHRpIGNvbnNlbnRlIGRpIHNlbGV6aW9uYXJlIHVubyBkaSBxdWVzdGkgbWV0b2RpIGRpICIKKyJpbnN0YWxsYXppb25lLlxuIgorIlxuIgorIlNwb3N0YSBsJ2V2aWRlbnppYXppb25lIHN1bCBtZXRvZG8gY2hlIGRlc2lkZXJpIHVzYXJlIGUgcHJlbWkgSW52aW8uICBQb2kgIgorInRpXG4iCisic2FyYW5ubyByaWNoaWVzdGUgbGUgaW5mb3JtYXppb25pIG5lY2Vzc2FyaWUgYWxsJ2luc3RhbGxhemlvbmUuXG4iCisiXG4iCisiU3Bvc3RhbmRvIGwnZXZpZGVuemlhemlvbmUgdmllbmUgdmlzdWFsaXp6YXRhIHVuYSBkZXNjcml6aW9uZSBkaVxuIgorImNpYXNjdW4gbWV0b2RvLCBzZSDDqCBkaXNwb25pYmlsZSwgc3VsbGEgbWV0w6AgaW5mZXJpb3JlIGRlbGxvIHNjaGVybW8uXG4iCisiXG4iCisiU2UgZGVzaWRlcmkgdXNjaXJlIHNlbnphIGNhbWJpYXJlIG51bGxhLCB1c2EgaWwgdGFzdG8gYHgnIG1lbnRyZSBzZWkgbmVsbGFcbiIKKyJsaXN0YSBkZWkgbWV0b2RpIGRpIGluc3RhbGxhemlvbmUuXG4iCisiXG4iCisiVW5hIGxpc3RhIGNvbXBsZXRhIGRlaSB0YXN0aSDDqCBkaXNwb25pYmlsZSBwcmVtZW5kbyBgaycgYWRlc3NvLCBvIGRhbCBtZW7DuVxuIgorImRpIGFpdXRvIGNoZSDDqCByYWdnaXVuZ2liaWxlIHByZW1lbmRvIGA/Jy5cbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxOTYKK21zZ2lkICJLZXlzdHJva2VzIGZvciBtZXRob2Qgc2VsZWN0aW9uIgorbXNnc3RyICJUYXN0aSBwZXIgbGEgc2VsZXppb25lIGRlbCBtZXRvZG8iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTk2CisjLCBmdXp6eQorbXNnaWQgIiIKKyJNb3Rpb24ga2V5czogTmV4dC9QcmV2aW91cywgVG9wL0VuZCwgVXAvRG93biwgQmFja3dhcmRzL0ZvcndhcmRzOlxuIgorIiAgaiwgRG93bi1hcnJvdyAgICAgICAgIGssIFVwLWFycm93ICAgICAgICAgICAgIG1vdmUgaGlnaGxpZ2h0XG4iCisiICBOLCBQYWdlLWRvd24sIFNwYWNlICAgUCwgUGFnZS11cCwgQmFja3NwYWNlICAgc2Nyb2xsIGxpc3QgYnkgMSBwYWdlXG4iCisiICBebiAgICAgICAgICAgICAgICAgICAgXnAgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGxpc3QgYnkgMSBsaW5lXG4iCisiICB0LCBIb21lICAgICAgICAgICAgICAgZSwgRW5kICAgICAgICAgICAgICAgICAganVtcCB0byB0b3AvZW5kIG9mIGxpc3RcbiIKKyIgIHUgICAgICAgICAgICAgICAgICAgICBkICAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyBieSAxIHBhZ2VcbiIKKyIgIF51ICAgICAgICAgICAgICAgICAgICBeZCAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyBieSAxIGxpbmVcbiIKKyIgIEIsIExlZnQtYXJyb3cgICAgICAgICBGLCBSaWdodC1hcnJvdyAgICAgICAgICBwYW4gZGlzcGxheSBieSAxLzMgc2NyZWVuXG4iCisiICBeYiAgICAgICAgICAgICAgICAgICAgXmYgICAgICAgICAgICAgICAgICAgICAgcGFuIGRpc3BsYXkgYnkgMSBjaGFyYWN0ZXJcbiIKKyIoVGhlc2UgYXJlIHRoZSBzYW1lIG1vdGlvbiBrZXlzIGFzIGluIHRoZSBwYWNrYWdlIGxpc3QgZGlzcGxheS4pXG4iCisiXG4iCisiUXVpdDpcbiIKKyIgUmV0dXJuLCBFbnRlciAgICBzZWxlY3QgdGhpcyBtZXRob2QgYW5kIGdvIHRvIGl0cyBjb25maWd1cmF0aW9uIGRpYWxvZ3VlXG4iCisiIHgsIFggICAgICAgICAgICAgZXhpdCB3aXRob3V0IGNoYW5naW5nIG9yIHNldHRpbmcgdXAgdGhlIGluc3RhbGxhdGlvbiAiCisibWV0aG9kXG4iCisiXG4iCisiTWlzY2VsbGFuZW91czpcbiIKKyIgID8sIEhlbHAsIEYxICAgICAgcmVxdWVzdCBoZWxwXG4iCisiIF5sICAgICAgICAgICAgICAgIHJlZHJhdyBkaXNwbGF5XG4iCisiICAvICAgICAgICAgICAgICAgIHNlYXJjaCAoanVzdCByZXR1cm4gdG8gY2FuY2VsKVxuIgorIiAgXFwgICAgICAgICAgICAgICAgcmVwZWF0IGxhc3Qgc2VhcmNoXG4iCittc2dzdHIgIiIKKyJUYXN0aSBwZXIgbG8gc3Bvc3RhbWVudG86XG4iCisiICBuLCBDdXJzb3JlLWdpw7kgICAgICAgIHAsIEN1cnNvcmUtc3UgICAgICAgICAgIHNwb3N0YSBsJ2V2aWRlbnppYXppb25lXG4iCisiICBOLCBQYWcuLWdpw7ksIFNwYXppbyAgIFAsIFBhZy4tc3UsIEJhY2tzcGFjZSAgIHNjb3JyaSBsYSBsaXN0YSBkaSAxIHBhZ2luYVxuIgorIiAgXm4gICAgICAgICAgICAgICAgICAgIF5wICAgICAgICAgICAgICAgICAgICAgIHNjb3JyaSBsYSBsaXN0YSBkaSAxIHJpZ2FcbiIKKyIgIHQsIEluaXppbyAgICAgICAgICAgICBlLCBGaW5lICAgICAgICAgICAgICAgICBzYWx0YSBpbiBjaW1hL2ZvbmRvIGFsbGEgIgorImxpc3RhXG4iCisiICB1ICAgICAgICAgICAgICAgICAgICAgZCAgICAgICAgICAgICAgICAgICAgICAgc2NvcnJpIGxlIGluZm8gZGkgMSBwYWdpbmFcbiIKKyIgIF51ICAgICAgICAgICAgICAgICAgICBeZCAgICAgICAgICAgICAgICAgICAgICBzY29ycmkgbGUgaW5mbyBkaSAxIHJpZ2FcbiIKKyIgIEIsIEN1cnNvcmUtc2luaXN0cmEgICBGLCBDdXJzb3JlLWRlc3RyYSAgICAgICBzbGl0dGEgc2NoZXJtbyBkaSAxLzMgIgorImFtcGllenphXG4iCisiICBeYiAgICAgICAgICAgICAgICAgICAgXmYgICAgICAgICAgICAgICAgICAgICAgc2xpdHRhIHNjaGVybW8gZGkgMSAiCisiY2FyYXR0ZXJlXG4iCisiKFNvbm8gZ2xpIHN0ZXNzaSB0YXN0aSBkaSBzcG9zdGFtZW50byB1c2F0aSBuZWxsYSBsaXN0YSBkZWkgcGFjY2hldHRpLilcbiIKKyJcbiIKKyJFc2NpOlxuIgorIiBJbnZpbyAgICAgICAgICAgIHNlbGV6aW9uYSBxdWVzdG8gbWV0b2RvIGUgcHJvY2VkaSBhbGxhIHN1YSBjb25maWd1cmF6aW9uZVxuIgorIiB4LCBYICAgICAgICAgICAgIGVzY2kgc2VuemEgY2FtYmlhcmUgbyBpbXBvc3RhcmUgaWwgbWV0b2RvIGRpICIKKyJpbnN0YWxsYXppb25lXG4iCisiXG4iCisiVmFyaWVcbiIKKyIgID8sIEFpdXRvLCBGMSAgICAgcmljaGllZGkgYWl1dG9cbiIKKyIgXmwgICAgICAgICAgICAgICAgcmlkaXNlZ25hIGxhIHNjaGVybWF0YVxuIgorIiAgLyAgICAgICAgICAgICAgICBjZXJjYSAoYmFzdGEgdW4gSW52aW8gcGVyIGFubnVsbGFybGEpXG4iCisiICBcXCAgICAgICAgICAgICAgICByaXBldGkgbCd1bHRpbWEgcmljZXJjYVxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6NjAKK21zZ2lkICJUeXBlIGRzZWxlY3QgLS1oZWxwIGZvciBoZWxwLiIKK21zZ3N0ciAiRXNlZ3VpIGRzZWxlY3QgLS1oZWxwIHBlciB1biBhaXV0by4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDMKK21zZ2lkICJhIgorbXNnc3RyICJtIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQzCittc2dpZCAiW0FdY2Nlc3MiCittc2dzdHIgIltNXWV0b2RvIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQzCittc2dpZCAiQ2hvb3NlIHRoZSBhY2Nlc3MgbWV0aG9kIHRvIHVzZS4iCittc2dzdHIgIlNjZWdsaSBpbCBtZXRvZG8gZGkgYWNjZXNzbyBkYSB1c2FyZS4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDQKK21zZ2lkICJ1IgorbXNnc3RyICJhIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ0Cittc2dpZCAiW1VdcGRhdGUiCittc2dzdHIgIltBXWdnaW9ybmEiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDQKK21zZ2lkICJVcGRhdGUgbGlzdCBvZiBhdmFpbGFibGUgcGFja2FnZXMsIGlmIHBvc3NpYmxlLiIKK21zZ3N0ciAiQWdnaW9ybmEsIHNlIHBvc3NpYmlsZSwgbCdlbGVuY28gZGVpIHBhY2NoZXR0aSBkaXNwb25pYmlsaS4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDUKK21zZ2lkICJzIgorbXNnc3RyICJzIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ1Cittc2dpZCAiW1NdZWxlY3QiCittc2dzdHIgIltTXWVsZXppb25hIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ1Cittc2dpZCAiUmVxdWVzdCB3aGljaCBwYWNrYWdlcyB5b3Ugd2FudCBvbiB5b3VyIHN5c3RlbS4iCittc2dzdHIgIlNjZWdsaSBxdWFsaSBwYWNjaGV0dGkgdnVvaSBuZWwgdHVvIHNpc3RlbWEuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ2Cittc2dpZCAiaSIKK21zZ3N0ciAiaSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NgorbXNnaWQgIltJXW5zdGFsbCIKK21zZ3N0ciAiW0ldbnN0YWxsYSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NgorbXNnaWQgIkluc3RhbGwgYW5kIHVwZ3JhZGUgd2FudGVkIHBhY2thZ2VzLiIKK21zZ3N0ciAiSW5zdGFsbGEgZWQgYWdnaW9ybmEgaSBwYWNjaGV0dGkgc2NlbHRpLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NworbXNnaWQgImMiCittc2dzdHIgImMiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDcKK21zZ2lkICJbQ11vbmZpZyIKK21zZ3N0ciAiW0Ndb25maWd1cmEiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDcKK21zZ2lkICJDb25maWd1cmUgYW55IHBhY2thZ2VzIHRoYXQgYXJlIHVuY29uZmlndXJlZC4iCittc2dzdHIgIkNvbmZpZ3VyYSB0dXR0aSBpIHBhY2NoZXR0aSBhbmNvcmEgZGEgY29uZmlndXJhcmUuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ4Cittc2dpZCAiciIKK21zZ3N0ciAiciIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OAorbXNnaWQgIltSXWVtb3ZlIgorbXNnc3RyICJbUl1pbXVvdmkiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDgKK21zZ2lkICJSZW1vdmUgdW53YW50ZWQgc29mdHdhcmUuIgorbXNnc3RyICJSaW11b3ZpIGlsIHNvZnR3YXJlIG5vbiB2b2x1dG8uIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ5Cittc2dpZCAicSIKK21zZ3N0ciAidCIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OQorbXNnaWQgIltRXXVpdCIKK21zZ3N0ciAiW1RdZXJtaW5hIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ5Cittc2dpZCAiUXVpdCBkc2VsZWN0LiIKK21zZ3N0ciAiRXNjaSBkYSBkc2VsZWN0LiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE1MAorbXNnaWQgIm1lbnUiCittc2dzdHIgIm1lbsO5IgorCisjOiBkc2VsZWN0L21haW4uY2M6MTU1CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiBgJXMnIHBhY2thZ2UgaGFuZGxpbmcgZnJvbnRlbmQgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiRGViaWFuIGAlcycgaW50ZXJmYWNjaWEgcGVyIGxhIGdlc3Rpb25lIGRlaSBwYWNjaGV0dGkgdmVyc2lvbmUgJXMuXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNTgKK21zZ2lkICIiCisiQ29weXJpZ2h0IChDKSAxOTk0LTE5OTYgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKK21zZ3N0ciAiIgorIkNvcHlyaWdodCAoQykgMTk5NC0xOTk2IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNjIKKyMsIGZ1enp5Cittc2dpZCAiIgorIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgb3JcbiIKKyJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKK21zZ3N0ciAiIgorIlF1ZXN0byDDqCBzb2Z0d2FyZSBsaWJlcm87IHNpIHZlZGEgbGEgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbmUgMlxuIgorIm8gc3VjY2Vzc2l2YSBwZXIgbGUgY29uZGl6aW9uaSBkaSBjb3BpYS4gTk9OIGMnw6ggYWxjdW5hIGdhcmFuemlhLlxuIgorIlNpIHZlZGEgJXMgLS1saWNlbnNlIHBlciBpbCBjb3B5cmlnaHQgZSBpIGRldHRhZ2xpIGRlbGxhIGxpY2VuemEuXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNzIgZHNlbGVjdC9tYWluLmNjOjIyMAorbXNnaWQgIjxzdGFuZGFyZCBvdXRwdXQ+IgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSBbPGFjdGlvbj4gLi4uXVxuIgorIlxuIgorbXNnc3RyICIiCisiVXNvOiAlcyBbPG9wemlvbmU+IC4uLl0gWzxhemlvbmU+IC4uLl1cbiIKKyJcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE4NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorIiAgLS1leHBlcnQgICAgICAgICAgICAgICAgICAgVHVybiBvbiBleHBlcnQgbW9kZS5cbiIKKyIgIC0tZGVidWcgPGZpbGU+IHwgLUQ8ZmlsZT4gIFR1cm4gb24gZGVidWdnaW5nLCBzZW5kaW5nIG91dHB1dCB0byA8ZmlsZT4uXG4iCisiICAtLWNvbG91ciB8IC0tY29sb3Igc2NyZWVucGFydDpbZm9yZWdyb3VuZF0sW2JhY2tncm91bmRdWzphdHRyWythdHRyKy4uXV1cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENvbmZpZ3VyZSBzY3JlZW4gY29sb3Vycy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIk9wemlvbmk6XG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgICBVc2EgPGRpcmVjdG9yeT4gaW52ZWNlIGRpICVzLlxuIgorIiAgLS1leHBlcnQgICAgICAgICAgICAgICAgICAgQWJpbGl0YSBpbCBtb2RvIGVzcGVydG8uXG4iCisiICAtLWRlYnVnIDxmaWxlPiB8IC1EPGZpbGU+ICBBYmlsaXRhIGlsIGRlYnVnZ2luZywgbWFuZGFuZG8gbCdvdXRwdXQgYSAiCisiPGZpbGU+LlxuIgorIiAgLS1jb2xvdXIgfCAtLWNvbG9yIHNjcmVlbnBhcnQ6W2ZvcmVncm91bmRdLFtiYWNrZ3JvdW5kXVs6YXR0clsrYXR0cisuLl1dXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDb25maWd1cmEgaSBjb2xvcmkgZGVsbG8gc2NoZXJtby5cbiIKKyJcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE5NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgICAgU2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgIFNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCittc2dzdHIgIiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICAgIE1vc3RyYSBxdWVzdG8gbWVzc2FnZ2lvIGRpIGFpdXRvLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICAgTW9zdHJhIGxhIHZlcnNpb25lLlxuIgorIiAgLS1saWNlbnNlIHwgLS1saWNlbmNlICAgICAgTW9zdHJhIGxhIGxpY2VuemEuXG4iCisiXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkFjdGlvbnM6XG4iCisiICBhY2Nlc3MgdXBkYXRlIHNlbGVjdCBpbnN0YWxsIGNvbmZpZyByZW1vdmUgcXVpdFxuIgorIlxuIgorbXNnc3RyICIiCisiQXppb25pOlxuIgorIiAgYWNjZXNzIHVwZGF0ZSBzZWxlY3QgaW5zdGFsbCBjb25maWcgcmVtb3ZlIHF1aXRcbiIKKyJcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjIwNQorIywgYy1mb3JtYXQKK21zZ2lkICJTY3JlZW5wYXJ0czpcbiIKK21zZ3N0ciAiU2V0dG9yaSBzY2hlcm1hdGE6XG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ29sb3VyczpcbiIKK21zZ3N0ciAiQ29sb3JpOlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjE1CisjLCBjLWZvcm1hdAorbXNnaWQgIkF0dHJpYnV0ZXM6XG4iCittc2dzdHIgIkF0dHJpYnV0aTpcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjIzMworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBvcGVuIGRlYnVnIGZpbGUgYCUuMjU1cydcbiIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgYXByaXJlIGlsIGZpbGUgZGkgZGVidWcgYCUuMjU1cydcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjI1MworIywgYy1mb3JtYXQKK21zZ2lkICJJbnZhbGlkICVzIGAlcydcbiIKK21zZ3N0ciAiRWxlbWVudG8gbm9uIHZhbGlkbyBwZXIgdGFiZWxsYSAlczogJyVzJ1xuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjcwCittc2dpZCAic2NyZWVuIHBhcnQiCittc2dzdHIgInNldHRvcmUgc2NoZXJtYXRhIgorCisjOiBkc2VsZWN0L21haW4uY2M6Mjc2Cittc2dpZCAiTnVsbCBjb2xvdXIgc3BlY2lmaWNhdGlvblxuIgorbXNnc3RyICJTcGVjaWZpY2F0byB1biBjb2xvcmUgbnVsbG9cbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjI4NCBkc2VsZWN0L21haW4uY2M6Mjg5Cittc2dpZCAiY29sb3VyIgorbXNnc3RyICJjb2xvcmUiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyOTcKK21zZ2lkICJjb2xvdXIgYXR0cmlidXRlIgorbXNnc3RyICJhdHRyaWJ1dG8gY29sb3JlIgorCisjOiBkc2VsZWN0L21haW4uY2M6MzI5Cittc2dpZCAiVGVybWluYWwgZG9lcyBub3QgYXBwZWFyIHRvIHN1cHBvcnQgY3Vyc29yIGFkZHJlc3NpbmcuXG4iCittc2dzdHIgIiIKKyJJbCB0ZXJtaW5hbGUgbm9uIHNlbWJyYSBpbiBncmFkbyBkaSBnZXN0aXJlIGlsIHBvc2l6aW9uYW1lbnRvIGRlbCBjdXJzb3JlLlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MzMxCittc2dpZCAiVGVybWluYWwgZG9lcyBub3QgYXBwZWFyIHRvIHN1cHBvcnQgaGlnaGxpZ2h0aW5nLlxuIgorbXNnc3RyICJJbCB0ZXJtaW5hbGUgbm9uIHNlbWJyYSBpbiBncmFkbyBkaSBnZXN0aXJlIGwnZXZpZGVuemlhemlvbmUuXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzozMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlNldCB5b3VyIFRFUk0gdmFyaWFibGUgY29ycmVjdGx5LCB1c2UgYSBiZXR0ZXIgdGVybWluYWwsXG4iCisib3IgbWFrZSBkbyB3aXRoIHRoZSBwZXItcGFja2FnZSBtYW5hZ2VtZW50IHRvb2wgJXMuXG4iCittc2dzdHIgIiIKKyJJbXBvc3RhIGNvcnJldHRhbWVudGUgbGEgdmFyaWFiaWxlIFRFUk0sIHV0aWxpenphIHVuIHRlcm1pbmFsZSBtaWdsaW9yZSxcbiIKKyJvcHB1cmUgdXNhIGxvIHN0cnVtZW50byBkaSBiYXNlIHBlciBsYSBnZXN0aW9uZSBkZWkgcGFjY2hldHRpICVzLlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MzM2Cittc2dpZCAidGVybWluYWwgbGFja3MgbmVjZXNzYXJ5IGZlYXR1cmVzLCBnaXZpbmcgdXAiCittc2dzdHIgImlsIHRlcm1pbmFsZSBtYW5jYSBkZWxsZSBmdW56aW9uYWxpdMOgIG5lY2Vzc2FyaWUsIGxhc2NpbyBwZXJkZXJlIgorCisjOiBkc2VsZWN0L21haW4uY2M6NDE3Cittc2dpZCAiIgorIlxuIgorIlxuIgorIk1vdmUgYXJvdW5kIHdpdGggXlAgYW5kIF5OLCBjdXJzb3Iga2V5cywgaW5pdGlhbCBsZXR0ZXJzLCBvciBkaWdpdHM7XG4iCisiUHJlc3MgPGVudGVyPiB0byBjb25maXJtIHNlbGVjdGlvbi4gICBeTCByZWRyYXdzIHNjcmVlbi5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIlxuIgorIlxuIgorIlNwb3N0YXRpIGNvbiBeUCBlIF5OLCBpIHRhc3RpIGN1cnNvcmUsIGxldHRlcmEgaW5pemlhbGUgbyBudW1lcm8gIgorImRlbGwnb3B6aW9uZTtcbiIKKyJQcmVtaSA8aW52aW8+IHBlciBjb25mZXJtYXJlIGxhIHNlbGV6aW9uZS4gICBeTCByaWRpc2VnbmEgbGEgc2NoZXJtYXRhLlxuIgorIlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6NDI4Cittc2dpZCAiIgorIlxuIgorIlxuIgorIlJlYWQtb25seSBhY2Nlc3M6IG9ubHkgcHJldmlldyBvZiBzZWxlY3Rpb25zIGlzIGF2YWlsYWJsZSEiCittc2dzdHIgIiIKKyJcbiIKKyJcbiIKKyJBY2Nlc3NvIGluIHNvbGEgbGV0dHVyYTogw6ggcG9zc2liaWxlIHNvbG8gdmlzaW9uYXJlIGxlIHNlbGV6aW9uaSEiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzo0NDgKK21zZ2lkICJmYWlsZWQgdG8gZ2V0Y2ggaW4gbWFpbiBtZW51IgorbXNnc3RyICJpbXBvc3NpYmlsZSBlc2VndWlyZSBnZXRjaCBuZWwgbWVuw7kgcHJpbmNpcGFsZSIKKworIzogZHNlbGVjdC9tYWluLmNjOjUzMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGFjdGlvbiBzdHJpbmcgYCUuNTBzJyIKK21zZ3N0ciAic3RyaW5nYSBkaSBhemlvbmUgc2Nvbm9zY2l1dGEgYCUuNTBzJyIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzo3NworbXNnaWQgImRzZWxlY3QgLSBsaXN0IG9mIGFjY2VzcyBtZXRob2RzIgorbXNnc3RyICJkc2VsZWN0IC0gbGlzdGEgZGVpIG1ldG9kaSBkaSBhY2Nlc3NvIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjg2CisjLCBjLWZvcm1hdAorbXNnaWQgIkFjY2VzcyBtZXRob2QgYCVzJy4iCittc2dzdHIgIk1ldG9kbyBkJ2FjY2Vzc28gYCVzJy4iCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTIwCittc2dpZCAiQWJicmV2LiIKK21zZ3N0ciAiQWJicmV2LiIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxMjEgZHNlbGVjdC9wa2dpbmZvLmNjOjEwNSBkc2VsZWN0L3BrZ3RvcC5jYzoyOTEKK21zZ2lkICJEZXNjcmlwdGlvbiIKK21zZ3N0ciAiRGVzY3JpemlvbmUiCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTY0IGRzZWxlY3QvcGtnbGlzdC5jYzo1NzIKK21zZ2lkICJkb3VwZGF0ZSBmYWlsZWQiCittc2dzdHIgImRvdXBkYXRlIGZhbGxpdGEiCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTY2IGRzZWxlY3QvcGtnbGlzdC5jYzo1NzUKK21zZ2lkICJmYWlsZWQgdG8gdW5ibG9jayBTSUdXSU5DSCIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgc2Jsb2NjYXJlIFNJR1dJTkNIIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjE3MCBkc2VsZWN0L3BrZ2xpc3QuY2M6NTgwCittc2dpZCAiZmFpbGVkIHRvIHJlLWJsb2NrIFNJR1dJTkNIIgorbXNnc3RyICJpbXBvc3NpYmlsZSByaWJsb2NjYXJlIFNJR1dJTkNIIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjE3MSBkc2VsZWN0L3BrZ2xpc3QuY2M6NTgyCittc2dpZCAiZ2V0Y2ggZmFpbGVkIgorbXNnc3RyICJnZXRjaCBmYWxsaXRhIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjE4OAorIywgZnV6enkKK21zZ2lkICJFeHBsYW5hdGlvbiIKK21zZ3N0ciAic3BpZWdhemlvbmkgc3UgIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjE5NworbXNnaWQgIk5vIGV4cGxhbmF0aW9uIGF2YWlsYWJsZS4iCittc2dzdHIgIk5lc3N1bmEgc3BpZWdhemlvbmUgZGlzcG9uaWJpbGUiCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjY3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJcbiIKKyIlczogJXNcbiIKK21zZ3N0ciAiIgorIlxuIgorIlxuIgorIiVzOiAlc1xuIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzo3MAorbXNnaWQgIiIKKyJcbiIKKyJQcmVzcyA8ZW50ZXI+IHRvIGNvbnRpbnVlLiIKK21zZ3N0ciAiIgorIlxuIgorIlByZW1pIDxpbnZpbz4gcGVyIGNvbnRpbnVhcmUuIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoxNjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHJlc3MgPGVudGVyPiB0byBjb250aW51ZS5cbiIKK21zZ3N0ciAiUHJlbWkgPGludmlvPiBwZXIgY29udGludWFyZS5cbiIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MTYyCisjLCBmdXp6eQorbXNnaWQgIjxzdGFuZGFyZCBlcnJvcj4iCittc2dzdHIgImVycm9yZSBkaSBzY3JpdHR1cmEgc3Ugc3RhbmRhcmQgZXJyb3IiCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjE2NQorbXNnaWQgImVycm9yIHJlYWRpbmcgYWNrbm93bGVkZ2VtZW50IG9mIHByb2dyYW0gZmFpbHVyZSBtZXNzYWdlIgorbXNnc3RyICJlcnJvcmUgbGVnZ2VuZG8gbCdhY2NldHRhemlvbmUgZGVsIG1lc3NhZ2dpbyBkaSBlcnJvcmUgZGVsIHByb2dyYW1tYSIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MTk2Cittc2dpZCAidXBkYXRlIGF2YWlsYWJsZSBsaXN0IHNjcmlwdCIKK21zZ3N0ciAibG8gc2NyaXB0IGRpIGFnZ2lvcm5hbWVudG8gZGVsbGEgZGlzcG9uaWJpbGl0w6AiCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjIwMAorbXNnaWQgImluc3RhbGxhdGlvbiBzY3JpcHQiCittc2dzdHIgImxvIHNjcmlwdCBkaSBpbnN0YWxsYXppb25lIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoyNDYKK21zZ2lkICJxdWVyeS9zZXR1cCBzY3JpcHQiCittc2dzdHIgImxvIHNjcmlwdCBkaSBxdWVyeS9zZXR1cCIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yIGluIG1ldGhvZCBvcHRpb25zIGZpbGUgYCUuMjUwcycgLS0gJXMiCittc2dzdHIgImVycm9yZSBkaSBzaW50YXNzaSBuZWwgZmlsZSBkaSBvcHppb25pIGRlaSBtZXRvZGkgYCUuMjUwcycgLS0gJXMiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjU5CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHJlYWRpbmcgb3B0aW9ucyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJlcnJvcmUgbGVnZ2VuZG8gaWwgZmlsZSBkaSBvcHppb25pIGAlLjI1MHMnIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzo5MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBgJS4yNTBzJyBkaXJlY3RvcnkgZm9yIHJlYWRpbmcgbWV0aG9kcyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgbGVnZ2VyZSBsYSBkaXJlY3RvcnkgYCUuMjUwcycgcGVyIGxlZ2dlcmUgaSBtZXRvZGkiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjEwNgorIywgYy1mb3JtYXQKK21zZ2lkICJtZXRob2QgYCUuMjUwcycgaGFzIG5hbWUgdGhhdCBpcyB0b28gbG9uZyAoJWQgPiAlZCBjaGFyYWN0ZXJzKSIKK21zZ3N0ciAiaWwgbWV0b2RvIGAlLjI1MHMnIGhhIHVuIG5vbWUgdHJvcHBvIGx1bmdvICglZCA+ICVkIGNhcmF0dGVyaSkiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjExNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gYWNjZXNzIG1ldGhvZCBzY3JpcHQgYCUuMjUwcyciCittc2dzdHIgImltcG9zc2liaWxlIGFjY2VkZXJlIGFsbG8gc2NyaXB0IGRpIG1ldG9kbyBgJS4yNTBzJyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTIzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIG1ldGhvZCBvcHRpb25zIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImltcG9zc2liaWxlIGxlZ2dlcmUgaWwgZmlsZSBkaSBvcHppb25pIGRlaSBtZXRvZGkgYCUuMjUwcyciCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE0NworbXNnaWQgIm5vbi1kaWdpdCB3aGVyZSBkaWdpdCB3YW50ZWQiCittc2dzdHIgInVuIGNhcmF0dGVyZSBjaGUgbm9uIMOoIHVuYSBjaWZyYSBkb3ZlIHF1ZXN0YSDDqCByaWNoaWVzdGEiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE1MAorbXNnaWQgIkVPRiBpbiBpbmRleCBzdHJpbmciCittc2dzdHIgIkVPRiBuZWxsYSBzdHJpbmdhIGRpIGluZGljZSIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTUzCittc2dpZCAiaW5kZXggc3RyaW5nIHRvbyBsb25nIgorbXNnc3RyICJzdHJpbmdhIGRpIGluZGljZSB0cm9wcG8gbHVuZ2EiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE1NgorbXNnaWQgIm5ld2xpbmUgYmVmb3JlIG9wdGlvbiBuYW1lIHN0YXJ0IgorbXNnc3RyICJhLWNhcG8gcHJpbWEgZGVsbCdpbml6aW8gZGVsIG5vbWUgZGVsbCdvcHppb25lIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNTgKK21zZ2lkICJFT0YgYmVmb3JlIG9wdGlvbiBuYW1lIHN0YXJ0IgorbXNnc3RyICJFT0YgcHJpbWEgZGVsbCdpbml6aW8gZGVsIG5vbWUgZGVsbCdvcHppb25lIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNjIKK21zZ2lkICJub25hbHBoYSB3aGVyZSBvcHRpb24gbmFtZSBzdGFydCB3YW50ZWQiCittc2dzdHIgImNhcmF0dGVyZSBub24gYWxmYWJldGljbyBkb3ZlIGRldmUgY29taW5jaWFyZSBpbCBub21lIGRlbGwnb3B6aW9uZSIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTY0Cittc2dpZCAibm9uLWFscGhhbnVtIGluIG9wdGlvbiBuYW1lIgorbXNnc3RyICJjYXJhdHRlcmUgbm9uIGFsZmFudW1lcmljbyBuZWwgbm9tZSBkZWxsJ29wemlvbmUiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE2NworbXNnaWQgIkVPRiBpbiBvcHRpb24gbmFtZSIKK21zZ3N0ciAiRU9GIG5lbCBub21lIGRlbGwnb3B6aW9uZSIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTcyCittc2dpZCAibmV3bGluZSBiZWZvcmUgc3VtbWFyeSIKK21zZ3N0ciAiYS1jYXBvIHByaW1hIGRlbCBzb21tYXJpbyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTc0Cittc2dpZCAiRU9GIGJlZm9yZSBzdW1tYXJ5IgorbXNnc3RyICJFT0YgcHJpbWEgZGVsIHNvbW1hcmlvIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxODAKK21zZ2lkICJFT0YgaW4gc3VtbWFyeSAtIG1pc3NpbmcgbmV3bGluZSIKK21zZ3N0ciAiRU9GIG5lbCBzb21tYXJpbyAtIG1hbmNhIGwnYS1jYXBvIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gb3B0aW9uIGRlc2NyaXB0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImltcG9zc2liaWxlIGFwcmlyZSBpbCBmaWxlIGNvbiBsZSBkZXNjcml6aW9uaSBkZWxsZSBvcHppb25pIGAlLjI1MHMnIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxOTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgb3B0aW9uIGRlc2NyaXB0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKyJpbXBvc3NpYmlsZSBlc2VndWlyZSBzdGF0IHN1bCBmaWxlIGNvbiBsZSBkZXNjcml6aW9uaSBkZWxsZSBvcHppb25pIGAlLjI1MHMnIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxOTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgb3B0aW9uIGRlc2NyaXB0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImltcG9zc2liaWxlIGxlZ2dlcmUgaWwgZmlsZSBjb24gbGUgZGVzY3JpemlvbmkgZGVsbGUgb3B6aW9uaSBgJS4yNTBzJyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MjAxCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGR1cmluZyByZWFkIG9mIG9wdGlvbiBkZXNjcmlwdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJlcnJvcmUgbGVnZ2VuZG8gaWwgZmlsZSBjb24gbGUgZGVzY3JpemlvbmkgZGVsbGUgb3B6aW9uaSBgJS4yNTBzJyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MjI0CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGR1cmluZyByZWFkIG9mIG1ldGhvZCBvcHRpb25zIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImVycm9yZSBsZWdnZW5kbyBpbCBmaWxlIGRpIG9wemlvbmkgZGVpIG1ldG9kaSBgJS4yNTBzJyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MjQ3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIGN1cnJlbnQgb3B0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImltcG9zc2liaWxlIGFwcmlyZSBpbCBmaWxlIGRpIG9wemlvbmkgY29ycmVudGUgYCUuMjUwcyciCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjI4OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBuZXcgb3B0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImltcG9zc2liaWxlIGFwcmlyZSBpbCBudW92byBmaWxlIGRpIG9wemlvbmkgYCUuMjUwcyciCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjI5MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgbmV3IG9wdGlvbiB0byBgJS4yNTBzJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgc2NyaXZlcmUgbGEgbnVvdmEgb3B6aW9uZSBpbiBgJS4yNTBzJyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6Mjk1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBuZXcgb3B0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImltcG9zc2liaWxlIGNoaXVkZXJlIGlsIG51b3ZvIGZpbGUgZGkgb3B6aW9uaSBgJS4yNTBzJyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6Mjk3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyBvcHRpb24gYXMgYCUuMjUwcyciCittc2dzdHIgImltcG9zc2liaWxlIGluc3RhbGxhcmUgbGEgbnVvdmEgb3B6aW9uZSBjb21lIGAlLjI1MHMnIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MzYKK21zZ2lkICJuZXcgcGFja2FnZSIKK21zZ3N0ciAibnVvdm8iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzozNworbXNnaWQgImluc3RhbGwiCittc2dzdHIgImluc3RhbGxhIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MzgKK21zZ2lkICJob2xkIgorbXNnc3RyICJibG9jY2EiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzozOQorbXNnaWQgInJlbW92ZSIKK21zZ3N0ciAicmltdW92aSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjQwCittc2dpZCAicHVyZ2UiCittc2dzdHIgImVsaW1pbmEiCisKKyMuIFRSQU5TTEFUT1JTOiBUaGUgc3BhY2UgaXMgYSB0cmljayB0byB3b3JrIGFyb3VuZCBnZXR0ZXh0IHdoaWNoIHVzZXMKKyMuICogdGhlIGVtcHR5IHN0cmluZyB0byBzdG9yZSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgdHJhbnNsYXRpb24uIERPIE5PVAorIy4gKiBDSEFOR0UgVEhBVCBJTiBBIFRSQU5TTEFUSU9OISBUaGUgY29kZSByZWFsbHkgcmVsaWVzIG9uIHRoYXQgYmVpbmcKKyMuICogYSBzaW5nbGUgc3BhY2UuCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NDcKK21zZ2lkICIgIgorbXNnc3RyICIgIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NDgKK21zZ2lkICJSRUlOU1RBTEwiCittc2dzdHIgIlJFSU5TVEFMTCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjUxCittc2dpZCAibm90IGluc3RhbGxlZCIKK21zZ3N0ciAibm9uIGluc3RhbGxhdG8iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1MgorbXNnaWQgInJlbW92ZWQgKGNvbmZpZ3MgcmVtYWluKSIKK21zZ3N0ciAicmltb3NzbyAocmltYW5lIGxhIGNvbmZpZy4pIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTMKK21zZ2lkICJoYWxmIGluc3RhbGxlZCIKK21zZ3N0ciAiaW5zdGFsbC4gcGFyei4iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1NAorbXNnaWQgInVucGFja2VkIChub3Qgc2V0IHVwKSIKK21zZ3N0ciAic3BhY2NoZXR0YXRvIChub24gY29uZi4pIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTUKK21zZ2lkICJoYWxmIGNvbmZpZ3VyZWQgKGNvbmZpZyBmYWlsZWQpIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1NgorbXNnaWQgImF3YWl0aW5nIHRyaWdnZXIgcHJvY2Vzc2luZyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTcKK21zZ2lkICJ0cmlnZ2VyZWQiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjU4Cittc2dpZCAiaW5zdGFsbGVkIgorbXNnc3RyICJpbnN0YWxsYXRvIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjEKK21zZ2lkICJSZXF1aXJlZCIKK21zZ3N0ciAiZXNzZW56aWFsaSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjYyCittc2dpZCAiSW1wb3J0YW50IgorbXNnc3RyICJpbXBvcnRhbnRpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjMKK21zZ2lkICJTdGFuZGFyZCIKK21zZ3N0ciAic3RhbmRhcmQiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo2NAorbXNnaWQgIk9wdGlvbmFsIgorbXNnc3RyICJvcHppb25hbGkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo2NQorbXNnaWQgIkV4dHJhIgorbXNnc3RyICJleHRyYSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjY2Cittc2dpZCAiIUJ1ZyEiCittc2dzdHIgIiFCdWchIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjcKK21zZ2lkICJVbmNsYXNzaWZpZWQiCittc2dzdHIgIm5vbiBjbGFzc2lmaWMuIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzAKK21zZ2lkICJzdWdnZXN0cyIKK21zZ3N0ciAic3VnZ2VyaXNjZSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjcxCittc2dpZCAicmVjb21tZW5kcyIKK21zZ3N0ciAicmFjY29tYW5kYSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjcyCittc2dpZCAiZGVwZW5kcyBvbiIKK21zZ3N0ciAiZGlwZW5kZSBkYSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjczCittc2dpZCAicHJlLWRlcGVuZHMgb24iCittc2dzdHIgInByZS1kaXBlbmRlIGRhIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzQKK21zZ2lkICJicmVha3MiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjc1Cittc2dpZCAiY29uZmxpY3RzIHdpdGgiCittc2dzdHIgIsOoIGluIGNvbmZsaXR0byBjb24iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3NgorbXNnaWQgInByb3ZpZGVzIgorbXNnc3RyICJmb3JuaXNjZSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjc3Cittc2dpZCAicmVwbGFjZXMiCittc2dzdHIgInNvc3RpdHVpc2NlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzgKK21zZ2lkICJlbmhhbmNlcyIKK21zZ3N0ciAiZXN0ZW5kZSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjgxCittc2dpZCAiUmVxIgorbXNnc3RyICJFc3MiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4MgorbXNnaWQgIkltcCIKK21zZ3N0ciAiSW1wIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODMKK21zZ2lkICJTdGQiCittc2dzdHIgIlN0ZCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjg0Cittc2dpZCAiT3B0IgorbXNnc3RyICJPcHoiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4NQorbXNnaWQgIlh0ciIKK21zZ3N0ciAiWHRyIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODYKK21zZ2lkICJiVUciCittc2dzdHIgImJVRyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjg3Cittc2dpZCAiPyIKK21zZ3N0ciAiPyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjk1IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTUKK21zZ2lkICJCcm9rZW4iCittc2dzdHIgImRpZmV0dG9zaSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjk2Cittc2dpZCAiTmV3IgorbXNnc3RyICJudW92aSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjk3Cittc2dpZCAiVXBkYXRlZCIKK21zZ3N0ciAiZGEgYWdnaW9ybmFyZSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjk4Cittc2dpZCAiT2Jzb2xldGUvbG9jYWwiCittc2dzdHIgIm9ic29sZXRpIG8gbG9jYWxpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6OTkKK21zZ2lkICJVcC10by1kYXRlIgorbXNnc3RyICJnacOgIGFnZ2lvcm5hdGkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDAKK21zZ2lkICJBdmFpbGFibGUiCittc2dzdHIgImRpc3BvbmliaWxpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTAxIGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTcKK21zZ2lkICJSZW1vdmVkIgorbXNnc3RyICJyaW1vc3NpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTAyIGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTEKK21zZ2lkICJCcm9rZW5seSBpbnN0YWxsZWQgcGFja2FnZXMiCittc2dzdHIgIlBhY2NoZXR0aSBpbnN0YWxsYXRpIGNvbiBkaWZldHRpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTAzCittc2dpZCAiTmV3bHkgYXZhaWxhYmxlIHBhY2thZ2VzIgorbXNnc3RyICJOdW92aSBwYWNjaGV0dGkgZGlzcG9uaWJpbGkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDQKK21zZ2lkICJVcGRhdGVkIHBhY2thZ2VzIChuZXdlciB2ZXJzaW9uIGlzIGF2YWlsYWJsZSkiCittc2dzdHIgIlBhY2NoZXR0aSBhZ2dpb3JuYWJpbGkgKMOoIGRpc3BvbmliaWxlIHVuYSBudW92YSB2ZXJzaW9uZSkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDUKK21zZ2lkICJPYnNvbGV0ZSBhbmQgbG9jYWwgcGFja2FnZXMgcHJlc2VudCBvbiBzeXN0ZW0iCittc2dzdHIgIlBhY2NoZXR0aSBvYnNvbGV0aSBlIGxvY2FsaSBwcmVzZW50aSBuZWwgc2lzdGVtYSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwNgorbXNnaWQgIlVwIHRvIGRhdGUgaW5zdGFsbGVkIHBhY2thZ2VzIgorbXNnc3RyICJQYWNjaGV0dGkgYWdnaW9ybmF0aSBnacOgIGluc3RhbGxhdGkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDcKK21zZ2lkICJBdmFpbGFibGUgcGFja2FnZXMgKG5vdCBjdXJyZW50bHkgaW5zdGFsbGVkKSIKK21zZ3N0ciAiUGFjY2hldHRpIGRpc3BvbmliaWxpIChub24gYXR0dWFsbWVudGUgaW5zdGFsbGF0aSkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDgKK21zZ2lkICJSZW1vdmVkIGFuZCBubyBsb25nZXIgYXZhaWxhYmxlIHBhY2thZ2VzIgorbXNnc3RyICJQYWNjaGV0dGkgcmltb3NzaSBlIG5vbiBwacO5IGRpc3BvbmliaWxpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTEyCittc2dpZCAiSW5zdGFsbGVkIHBhY2thZ2VzIgorbXNnc3RyICJQYWNjaGV0dGkgaW5zdGFsbGF0aSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExMworbXNnaWQgIlJlbW92ZWQgcGFja2FnZXMgKGNvbmZpZ3VyYXRpb24gc3RpbGwgcHJlc2VudCkiCittc2dzdHIgIlBhY2NoZXR0aSByaW1vc3NpIChsYSBjb25maWd1cmF6aW9uZSDDqCBhbmNvcmEgcHJlc2VudGUpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTE0Cittc2dpZCAiUHVyZ2VkIHBhY2thZ2VzIGFuZCB0aG9zZSBuZXZlciBpbnN0YWxsZWQiCittc2dzdHIgIlBhY2NoZXR0aSBlbGltaW5hdGkgZSBxdWVsbGkgbWFpIGluc3RhbGxhdGkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTYKK21zZ2lkICJJbnN0YWxsZWQiCittc2dzdHIgIkluc3RhbGxhdG8iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTgKK21zZ2lkICJQdXJnZWQiCittc2dzdHIgIkVsaW1pbmF0byIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjE5OAorbXNnaWQgImRzZWxlY3QgLSByZWN1cnNpdmUgcGFja2FnZSBsaXN0aW5nIgorbXNnc3RyICJkc2VsZWN0IC0gbGlzdGEgcmljb3JzaXZhIGRlaSBwYWNjaGV0dGkgIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTk5Cittc2dpZCAiZHNlbGVjdCAtIGluc3BlY3Rpb24gb2YgcGFja2FnZSBzdGF0ZXMiCittc2dzdHIgImRzZWxlY3QgLSBpc3BlemlvbmUgZGVsbG8gc3RhdG8gZGVsIHBhY2NoZXR0byIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIwMAorbXNnaWQgImRzZWxlY3QgLSBtYWluIHBhY2thZ2UgbGlzdGluZyIKK21zZ3N0ciAiZHNlbGVjdCAtIGxpc3RhIHByaW5jaXBhbGUiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMDgKK21zZ2lkICIgKGJ5IHNlY3Rpb24pIgorbXNnc3RyICIgKHBlciBzZXppb25lKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIxMQorbXNnaWQgIiAoYXZhaWwuLCBzZWN0aW9uKSIKK21zZ3N0ciAiIChkaXNwb24uLCBzZXppb25lKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIxNAorbXNnaWQgIiAoc3RhdHVzLCBzZWN0aW9uKSIKK21zZ3N0ciAiIChzdGF0bywgc2V6aW9uZSkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMjMKK21zZ2lkICIgKGJ5IHByaW9yaXR5KSIKK21zZ3N0ciAiIChwZXIgcHJpb3JpdMOgKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIyNgorbXNnaWQgIiAoYXZhaWwuLCBwcmlvcml0eSkiCittc2dzdHIgIiAoZGlzcG9uLiwgcHJpb3JpdMOgKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIyOQorbXNnaWQgIiAoc3RhdHVzLCBwcmlvcml0eSkiCittc2dzdHIgIiAoc3RhdG8sIHByaW9yaXTDoCkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMzggZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI1MAorbXNnaWQgIiAoYWxwaGFiZXRpY2FsbHkpIgorbXNnc3RyICIgKGFsZmFiZXRpY2FtZW50ZSkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNDEKK21zZ2lkICIgKGJ5IGF2YWlsYWJpbGl0eSkiCittc2dzdHIgIiAocGVyIGRpc3BvbmliaWxpdMOgKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI0NAorbXNnaWQgIiAoYnkgc3RhdHVzKSIKK21zZ3N0ciAiIChwZXIgc3RhdG8pIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjU4Cittc2dpZCAiIG1hcms6Ky89Ly0gdGVyc2U6diBoZWxwOj8iCittc2dzdHIgIiBtYXJjOisvPS8tIGNvbmNpc2E6diBhaXV0bzo/IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjU5Cittc2dpZCAiIG1hcms6Ky89Ly0gdmVyYm9zZTp2IGhlbHA6PyIKK21zZ3N0ciAiIG1hcmM6Ky89Ly0gZXN0ZXNhOnYgYWl1dG86PyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI2MAorbXNnaWQgIiB0ZXJzZTp2IGhlbHA6PyIKK21zZ3N0ciAiIGNvbmNpc2E6diBhaXV0bzo/IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjYxCittc2dpZCAiIHZlcmJvc2U6diBoZWxwOj8iCittc2dzdHIgIiBlc3Rlc2E6diBhaXV0bzo/IgorCisjOiBkc2VsZWN0L3BrZ2luZm8uY2M6ODAKK21zZ2lkICIiCisiVGhlIGxpbmUgeW91IGhhdmUgaGlnaGxpZ2h0ZWQgcmVwcmVzZW50cyBtYW55IHBhY2thZ2VzOyBpZiB5b3UgYXNrIHRvICIKKyJpbnN0YWxsLCByZW1vdmUsIGhvbGQsIGV0Yy4gaXQgeW91IHdpbGwgYWZmZWN0IGFsbCB0aGUgcGFja2FnZXMgd2hpY2ggbWF0Y2ggIgorInRoZSBjcml0ZXJpb24gc2hvd24uXG4iCisiXG4iCisiSWYgeW91IG1vdmUgdGhlIGhpZ2hsaWdodCB0byBhIGxpbmUgZm9yIGEgcGFydGljdWxhciBwYWNrYWdlIHlvdSB3aWxsIHNlZSAiCisiaW5mb3JtYXRpb24gYWJvdXQgdGhhdCBwYWNrYWdlIGRpc3BsYXllZCBoZXJlLlxuIgorIllvdSBjYW4gdXNlIGBvJyBhbmQgYE8nIHRvIGNoYW5nZSB0aGUgc29ydCBvcmRlciBhbmQgZ2l2ZSB5b3Vyc2VsZiB0aGUgIgorIm9wcG9ydHVuaXR5IHRvIG1hcmsgcGFja2FnZXMgaW4gZGlmZmVyZW50IGtpbmRzIG9mIGdyb3Vwcy4iCittc2dzdHIgIiIKKyJMYSByaWdhIGNoZSBoYWkgZXZpZGVuemlhdG8gcmFwcHJlc2VudGEgZGl2ZXJzaSBwYWNjaGV0dGk7IHNlIG5lIGNoaWVkaSAiCisibCdpbnN0YWxsYXppb25lLCBsYSByaW1vemlvbmUsIGlsIGJsb2NjbyBlIGNvc8OsIHZpYSB2ZXJyYW5ubyBjb2ludm9sdGkgdHV0dGkgIgorImkgcGFjY2hldHRpIGNoZSBjb3JyaXNwb25kb25vIGFsIGNyaXRlcmlvIG1vc3RyYXRvLlxuIgorIlxuIgorIlNlIHNwb3N0aSBsJ2V2aWRlbnppYXppb25lIHN1IHVuIHNpbmdvbG8gcGFjY2hldHRvIHZlZHJhaSBsZSBpbmZvcm1hemlvbmkgIgorInJlbGF0aXZlIGFkIGVzc28gdmlzdWFsaXp6YXRlIHF1aS5cbiIKKyJQdW9pIHVzYXJlIGBvJyBlIGBPJyBwZXIgY2FtYmlhcmUgbCdvcmRpbmUgZGkgdmlzdWFsaXp6YXppb25lIGVkIGF2ZXJlICIKKyJsJ29wcG9ydHVuaXTDoCBkaSBjb250cmFzc2VnbmFyZSBpIHBhY2NoZXR0aSBpbiBkaWZmZXJlbnRpIHRpcGkgZGkgIgorInJhZ2dydXBwYW1lbnRvLiIKKworIzogZHNlbGVjdC9wa2dpbmZvLmNjOjkzCisjLCBmdXp6eQorbXNnaWQgIkludGVycmVsYXRpb25zaGlwcyIKK21zZ3N0ciAiaW50ZXJyZWxhemlvbmkiCisKKyM6IGRzZWxlY3QvcGtnaW5mby5jYzoxMTIKKyMsIGZ1enp5Cittc2dpZCAiTm8gZGVzY3JpcHRpb24gYXZhaWxhYmxlLiIKK21zZ3N0ciAibmVzc3VuYSBkZXNjcml6aW9uZSBkaXNwb25pYmlsZS4iCisKKyM6IGRzZWxlY3QvcGtnaW5mby5jYzoxMzAKKyMsIGZ1enp5Cittc2dpZCAiSW5zdGFsbGVkIGNvbnRyb2wgZmlsZSBpbmZvcm1hdGlvbiIKK21zZ3N0ciAiaW5mbyBkaSBjb250cm9sbG8gaW5zdGFsbGF0ZSBkaSAiCisKKyM6IGRzZWxlY3QvcGtnaW5mby5jYzoxNDYKKyMsIGZ1enp5Cittc2dpZCAiQXZhaWxhYmxlIGNvbnRyb2wgZmlsZSBpbmZvcm1hdGlvbiIKK21zZ3N0ciAiaW5mbyBkaSBjb250cm9sbG8gZGVsbGEgdmVyc2lvbmUgZGlzcG9uaWJpbGUiCisKKyM6IGRzZWxlY3QvcGtnbGlzdC5jYzo0MTYKK21zZ2lkICJUaGVyZSBhcmUgbm8gcGFja2FnZXMuIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnbGlzdC5jYzo1MDcKK21zZ2lkICJpbnZhbGlkIHNlYXJjaCBvcHRpb24gZ2l2ZW4iCittc2dzdHIgInNwZWNpZmljYXRhIG9wemlvbmUgZGkgcmljZXJjYSBlcnJhdGEiCisKKyM6IGRzZWxlY3QvcGtnbGlzdC5jYzo1MjEKK21zZ2lkICJlcnJvciBpbiByZWd1bGFyIGV4cHJlc3Npb24iCittc2dzdHIgImVycm9yZSBuZWxsJ2VzcHJlc3Npb25lIHJlZ29sYXJlIgorCisjOiBkc2VsZWN0L3BrZ3N1Ymxpc3QuY2M6MTA3Cittc2dpZCAiIGRvZXMgbm90IGFwcGVhciB0byBiZSBhdmFpbGFibGVcbiIKK21zZ3N0ciAiIG5vbiBzZW1icmEgZXNzZXJlIGRpc3BvbmliaWxlXG4iCisKKyM6IGRzZWxlY3QvcGtnc3VibGlzdC5jYzoxMjcKK21zZ2lkICIgb3IgIgorbXNnc3RyICIgbyAiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjU3Cittc2dpZCAiQWxsIgorbXNnc3RyICJUdXR0aSIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6NzkKK21zZ2lkICJBbGwgcGFja2FnZXMiCittc2dzdHIgIlR1dHRpIGkgcGFjY2hldHRpIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo4MworIywgYy1mb3JtYXQKK21zZ2lkICIlcyBwYWNrYWdlcyB3aXRob3V0IGEgc2VjdGlvbiIKK21zZ3N0ciAiUGFjY2hldHRpICVzIHNlbnphIHVuYSBzZXppb25lIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo4NQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBwYWNrYWdlcyBpbiBzZWN0aW9uICVzIgorbXNnc3RyICJQYWNjaGV0dGkgJXMgbmVsbGEgc2V6aW9uZSAlcyIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6OTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgJXMgcGFja2FnZXMiCittc2dzdHIgIlBhY2NoZXR0aSAlMiRzICUxJHMiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjk1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzICVzIHBhY2thZ2VzIHdpdGhvdXQgYSBzZWN0aW9uIgorbXNnc3RyICJQYWNjaGV0dGkgJTIkcyAlMSRzIHNlbnphIHVuYSBzZXppb25lIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo5NworIywgYy1mb3JtYXQKK21zZ2lkICIlcyAlcyBwYWNrYWdlcyBpbiBzZWN0aW9uICVzIgorbXNnc3RyICJQYWNjaGV0dGkgJTIkcyAlMSRzIG5lbGxhIHNlemlvbmUgJTMkcyIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6MTE4CisjLCBjLWZvcm1hdAorbXNnaWQgIiUtKnMgJXMlcyVzOyAgJXMgKHdhczogJXMpLiAgJXMiCittc2dzdHIgIiUtKnMgJXMlcyVzOyAgJXMgKGVyYTogJXMpLiAgJXMiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI2MworbXNnaWQgIkVycm9yIgorbXNnc3RyICJFcnJvcmUiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI2NworbXNnaWQgIkluc3RhbGxlZD8iCittc2dzdHIgIkluc3RhbGxhdG8/IgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyNzEKK21zZ2lkICJPbGQgbWFyayIKK21zZ3N0ciAiUHJlY2VkZW50LiIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6Mjc1Cittc2dpZCAiTWFya2VkIGZvciIKK21zZ3N0ciAiQXR0dWFsbS4iCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI3OAorbXNnaWQgIkVJT00iCittc2dzdHIgIkVJT00iCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI4MAorbXNnaWQgIlNlY3Rpb24iCittc2dzdHIgIlNlemlvbmUiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI4MQorbXNnaWQgIlByaW9yaXR5IgorbXNnc3RyICJQcmlvcml0w6AiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI4MgorbXNnaWQgIlBhY2thZ2UiCittc2dzdHIgIlBhY2NoZXR0byIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6Mjg2Cittc2dpZCAiSW5zdC52ZXIiCittc2dzdHIgIlZlci5pbnN0LiIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6Mjg5Cittc2dpZCAiQXZhaWwudmVyIgorbXNnc3RyICJWZXIuZGlzcC4iCisKKyN+IG1zZ2lkICJyZXR1cm5lZCBlcnJvciBleGl0IHN0YXR1cyAlZC5cbiIKKyN+IG1zZ3N0ciAiaGEgcmVzdGl0dWl0byB1biBjb2RpY2UgZGkgZXJyb3JlICVkIGluIHVzY2l0YS5cbiIKKworI34gbXNnaWQgIndhcyBpbnRlcnJ1cHRlZC5cbiIKKyN+IG1zZ3N0ciAiw6ggc3RhdG8gaW50ZXJyb3R0by5cbiIKKworI34gbXNnaWQgIndhcyB0ZXJtaW5hdGVkIGJ5IGEgc2lnbmFsOiAlcy5cbiIKKyN+IG1zZ3N0ciAiw6ggc3RhdG8gdGVybWluYXRvIGRhIHVuIHNlZ25hbGU6ICVzLlxuIgorCisjfiBtc2dpZCAiKEl0IGxlZnQgYSBjb3JlZHVtcC4pXG4iCisjfiBtc2dzdHIgIihIYSBsYXNjaWF0byB1biBjb3JlZHVtcC4pXG4iCisKKyN+IG1zZ2lkICJmYWlsZWQgd2l0aCBhbiB1bmtub3duIHdhaXQgcmV0dXJuIGNvZGUgJWQuXG4iCisjfiBtc2dzdHIgIndhaXQgZmFsbGl0YSBjb24gdW4gZXJyb3JlIHNjb25vc2NpdXRvICVkLlxuIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHJ1biAlLjI1MHMgcHJvY2VzcyBgJS4yNTBzJyIKKyN+IG1zZ3N0ciAiaW1wb3NzaWJpbGUgZXNlZ3VpcmUgJS4yNTBzIGluIGAlLjI1MHMnIgorCisjfiBtc2dpZCAiZmFpbGVkIGNvbmZpZyIKKyN+IG1zZ3N0ciAiY29uZmlnLiBmYWxsaXRhIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHdhaXQgZm9yICUuMjUwcyIKKyN+IG1zZ3N0ciAiaW1wb3NzaWJpbGUgYXNwZXR0YXJlIGxhIGZpbmUgZGVsbCdlc2VjdXppb25lIGRpICUuMjUwcyIKKworI34gbXNnaWQgImdvdCB3cm9uZyBjaGlsZCdzIHN0YXR1cyAtIGFza2VkIGZvciAlbGQsIGdvdCAlbGQiCisjfiBtc2dzdHIgIiIKKyN+ICJvdHRlbnV0byB1biBjb2RpY2UgZXJyYXRvIGRhbCBzb3R0b3Byb2Nlc3NvIC0gcmljaGllc3RvICVsZCwgcmVzdGl0dWl0byAiCisjfiAiJWxkIgorCisjfiBtc2dpZCAiUmVjb21tZW5kZWQiCisjfiBtc2dzdHIgInJhY2NvbWFuZGF0aSIKKworI34gbXNnaWQgIkNvbnRyaWIiCisjfiBtc2dzdHIgImNvbnRyaWIiCisKKyN+IG1zZ2lkICJSZWMiCisjfiBtc2dzdHIgIlJhYyIKKworI34gbXNnaWQgIkN0YiIKKyN+IG1zZ3N0ciAiQ3RiIgorCisjfiBtc2dpZCAiIgorI34gImJhc2VsaXN0OjpzdGFydGRpc3BsYXkoKSBkb25lIC4uLlxuIgorI34gIlxuIgorI34gIiB4bWF4PSVkLCB5bWF4PSVkO1xuIgorI34gIlxuIgorI34gIiB0aXRsZV9oZWlnaHQ9JWQsIGNvbGhlYWRzX2hlaWdodD0lZCwgbGlzdF9oZWlnaHQ9JWQ7XG4iCisjfiAiIHRoaXNzdGF0ZV9oZWlnaHQ9JWQsIGluZm9faGVpZ2h0PSVkLCB3aGF0aW5mb19oZWlnaHQ9JWQ7XG4iCisjfiAiXG4iCisjfiAiIGNvbGhlYWRzX3Jvdz0lZCwgdGhpc3N0YXRlX3Jvdz0lZCwgaW5mb19yb3c9JWQ7XG4iCisjfiAiIHdoYXRpbmZvX3Jvdz0lZCwgbGlzdF9yb3c9JWQ7XG4iCisjfiAiXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJiYXNlbGlzdDo6c3RhcnRkaXNwbGF5KCkgZG9uZSAuLi5cbiIKKyN+ICJcbiIKKyN+ICIgeG1heD0lZCwgeW1heD0lZDtcbiIKKyN+ICJcbiIKKyN+ICIgdGl0bGVfaGVpZ2h0PSVkLCBjb2xoZWFkc19oZWlnaHQ9JWQsIGxpc3RfaGVpZ2h0PSVkO1xuIgorI34gIiB0aGlzc3RhdGVfaGVpZ2h0PSVkLCBpbmZvX2hlaWdodD0lZCwgd2hhdGluZm9faGVpZ2h0PSVkO1xuIgorI34gIlxuIgorI34gIiBjb2xoZWFkc19yb3c9JWQsIHRoaXNzdGF0ZV9yb3c9JWQsIGluZm9fcm93PSVkO1xuIgorI34gIiB3aGF0aW5mb19yb3c9JWQsIGxpc3Rfcm93PSVkO1xuIgorI34gIlxuIgorCisjfiBtc2dpZCAiW25vbmVdIgorI34gbXNnc3RyICJbbmVzc3VuYV0iCisKKyN+IG1zZ2lkICJlcnJvciB1bi1jYXRjaGluZyBzaWduYWwgJWQ6ICVzXG4iCisjfiBtc2dzdHIgImVycm9yZSByaXByaXN0aW5hbmRvIGlsIHNlZ25hbGUgbi4lZDogJXNcbiIKKworI34gbXNnaWQgInVuYWJsZSB0byBpZ25vcmUgc2lnbmFsICVkIGJlZm9yZSBydW5uaW5nICUuMjUwcyIKKyN+IG1zZ3N0ciAiaW1wb3NzaWJpbGUgaWdub3JhcmUgaWwgc2VnbmFyZSBuLiVkIHByaW1hIGRpIGxhbmNpYXJlICUuMjUwcyIKKworI34gbXNnaWQgIihubyBjbGllbnRkYXRhKSIKKyN+IG1zZ3N0ciAiKG5vIGNsaWVudGRhdGEpIgorCisjfiBtc2dpZCAiPG51bGw+IgorI34gbXNnc3RyICI8bnVsbD4iCisKKyN+IG1zZ2lkICJpbnRlcnJlbGF0aW9uc2hpcHMgYWZmZWN0aW5nICIKKyN+IG1zZ3N0ciAiaW50ZXJyZWxhemlvbmkgcmVsYXRpdmUgYSAiCisKKyN+IG1zZ2lkICJkZXNjcmlwdGlvbiBvZiAiCisjfiBtc2dzdHIgImRlc2NyaXppb25lIGRpICIKKworI34gbXNnaWQgImRlc2NyaXB0aW9uIgorI34gbXNnc3RyICJkZXNjcml6aW9uZSIKKworI34gbXNnaWQgImN1cnJlbnRseSBpbnN0YWxsZWQgY29udHJvbCBpbmZvIgorI34gbXNnc3RyICJpbmZvIGRpIGNvbnRyb2xsbyBhdHR1YWxtZW50ZSBpbnN0YWxsYXRlIgorCisjfiBtc2dpZCAiYXZhaWxhYmxlIHZlcnNpb24gb2YgY29udHJvbCBpbmZvIGZvciAiCisjfiBtc2dzdHIgImluZm8gZGkgY29udHJvbGxvIGRlbGxhIHZlcnNpb25lIGRpc3BvbmliaWxlIGRpICIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9qYS5nbW8gYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vamEuZ21vCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmEyMDQyOTMKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vamEuZ21vCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9qYS5wbyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9qYS5wbwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lOTFkNDZkCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL2phLnBvCkBAIC0wLDAgKzEsMTcyOCBAQAorIyBEcGtnIC0tLSB0aGUgRGViaWFuIEdOVS9MaW51eCBwYWNrYWdlIG1haW50ZW5hbmNlIHN5c3RlbS4KKyMKKyMgQ29weXJpZ2h0IChDKSAxOTk0LDE5OTUsMTk5NiBJYW4gSmFja3NvbiA8aWFuQGNoaWFyay5ncmVlbmVuZC5vcmcudWs+CisjIENvcHlyaWdodCAoQykgMTk5NSwxOTk2IEVyaWNrIEJyYW5kZXJob3JzdCA8YnJhbmRlcmhvcnN0QGhlZWwuZmdnLmV1ci5ubD4KKyMgQ29weXJpZ2h0IChDKSAxOTk2IE1pcXVlbCB2YW4gU21vb3JlbmJ1cmcgPG1pcXVlbHNAY2lzdHJvbi5ubD4KKyMgQ29weXJpZ2h0IChDKSAxOTk2IEtpbS1NaW5oIEthcGxhbiA8a2thcGxhbkBjZGZocDMuaW4ycDMuZnI+CisjIENvcHlyaWdodCAoQykgMTk5NiBNaWNoYWVsIFNoaWVsZHMgPHNoaWVsZHNAY3Jvc3NsaW5rLm5ldD4KKyMgQ29weXJpZ2h0IChDKSAxOTk1IEJydWNlIFBlcmVucyA8YnJ1Y2VAcGl4YXIuY29tPgorIyBDb3B5cmlnaHQgKEMpIDE5OTQgQ2FybCBTdHJlZXRlciA8c3RyZWV0ZXJAY2FlLndpc2MuZWR1PgorIyBDb3B5cmlnaHQgKEMpIDE5OTQgTWF0dCBXZWxzaCA8bWR3QHN1bnNpdGUudW5jLmVkdT4KKyMgQ29weXJpZ2h0IChDKSAxOTk0IElhbiBNdXJkb2NrIDxpbXVyZG9ja0BkZWJpYW4ub3JnPgorIyBQYXJ0cyB3cml0dGVuIGJ5IENvbGluIFBsdW1iIGFuZCBCcmFua28gTGFua2VzdGVyIGluIDE5OTMuCisjCisjIGRwa2cg55So44Gu5pel5pys6Kqe44Oh44OD44K744O844K4IChMaW51eC9HTlUgRGViaWFuKS4KKyMgQ29weXJpZ2h0IChDKSAxOTk4IE1hc2F0byBUYXJ1aXNoaSA8dGFydUBkZWJpYW4ub3IuanA+CisjIENvcHlyaWdodCAoQykgMTk5OS0yMDA0IEtlaXRhIE1hZWhhcmEgPG1hZWhhcmFAZGViaWFuLm9yZz4KKyMgQ29weXJpZ2h0IChDKSAyMDA0IEtlbnNoaSBNdXRvIDxrbXV0b0BkZWJpYW4ub3JnPgorbXNnaWQgIiIKK21zZ3N0ciAiIgorIlByb2plY3QtSWQtVmVyc2lvbjogZHBrZyAxLjEzXG4iCisiUmVwb3J0LU1zZ2lkLUJ1Z3MtVG86IGRlYmlhbi1kcGtnQGxpc3RzLmRlYmlhbi5vcmdcbiIKKyJQT1QtQ3JlYXRpb24tRGF0ZTogMjAxMS0xMC0xNCAwNzoxMSswMjAwXG4iCisiUE8tUmV2aXNpb24tRGF0ZTogMjAwNi0xMC0wNiAyMDowNSswOTAwXG4iCisiTGFzdC1UcmFuc2xhdG9yOiBLZW5zaGkgTXV0byA8a211dG9AZGViaWFuLm9yZz5cbiIKKyJMYW5ndWFnZS1UZWFtOiBEZWJpYW4gSmFwYW5lYXNlIExpc3QgPGRlYmlhbi1qYXBhbmVzZUBsaXN0cy5kZWJpYW4ub3JnPlxuIgorIkxhbmd1YWdlOiBqYVxuIgorIk1JTUUtVmVyc2lvbjogMS4wXG4iCisiQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PVVURi04XG4iCisiQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOC1iaXRcbiIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxMjUKK21zZ2lkICJTZWFyY2ggZm9yID8gIgorbXNnc3RyICLmpJzntKLpoIXnm64/IgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE0NworbXNnaWQgIkVycm9yOiAiCittc2dzdHIgIuOCqOODqeODvDogIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE3OAorbXNnaWQgIkhlbHA6ICIKK21zZ3N0ciAi44OY44Or44OXOiAiCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MTg0Cittc2dpZCAiUHJlc3MgPyBmb3IgaGVscCBtZW51LCAuIGZvciBuZXh0IHRvcGljLCA8c3BhY2U+IHRvIGV4aXQgaGVscC4iCittc2dzdHIgIuODmOODq+ODl+ODoeODi+ODpeODvDo/LCDmrKHjga7jg4jjg5Tjg4Pjgq86Liwg44OY44Or44OX44Gu57WC5LqGOjzjgrnjg5rjg7zjgrk+IgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE5MQorbXNnaWQgIkhlbHAgaW5mb3JtYXRpb24gaXMgYXZhaWxhYmxlIHVuZGVyIHRoZSBmb2xsb3dpbmcgdG9waWNzOiIKK21zZ3N0ciAi5Lul5LiL44Gu44OI44OU44OD44Kv44GL44KJ44OY44Or44OX5oOF5aCx44KS5Yip55So44Gn44GN44G+44GZOiIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxOTkKK21zZ2lkICIiCisiUHJlc3MgYSBrZXkgZnJvbSB0aGUgbGlzdCBhYm92ZSwgPHNwYWNlPiBvciBgcScgdG8gZXhpdCBoZWxwLFxuIgorIiAgb3IgYC4nIChmdWxsIHN0b3ApIHRvIHJlYWQgZWFjaCBoZWxwIHBhZ2UgaW4gdHVybi4gIgorbXNnc3RyICIiCisi5LiK44Gu44Oq44K544OI44GL44KJ44Kt44O844KS5YWl5Yqb44GX44Gm44GP44Gg44GV44GE44CCPHNwYWNlPuOAgWBxJyDjgafjg5jjg6vjg5fjgpLntYLkuobjgZfjgb7jgZnjgIJcbiIKKyLjgb7jgZ/jga8gPC4+IOOBp+ODmOODq+ODl+ODmuODvOOCuOOCkumghuasoeimi+OBpuOBhOOBj+OBk+OBqOOBjOOBp+OBjeOBvuOBmeOAgiIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoyMDUKK21zZ2lkICJlcnJvciByZWFkaW5nIGtleWJvYXJkIGluIGhlbHAiCittc2dzdHIgIuODmOODq+ODl+OBruOCreODvOODnOODvOODieiqreOBv+i+vOOBv+OCqOODqeODvOOBp+OBmSIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo1NworbXNnaWQgImlvY3RsKFRJT0NHV0lOU1opIGZhaWxlZCIKK21zZ3N0ciAiaW9jdGwoVElPQ0dXSU5TWikg44Gr5aSx5pWX44GX44G+44GX44GfIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjYwCittc2dpZCAiZG91cGRhdGUgaW4gU0lHV0lOQ0ggaGFuZGxlciBmYWlsZWQiCittc2dzdHIgIlNJR1dJTkNIIOODj+ODs+ODieODqeWGheOBriBkb3VwZGF0ZSDjgavlpLHmlZfjgZfjgb7jgZfjgZ8iCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6NjcKK21zZ2lkICJmYWlsZWQgdG8gcmVzdG9yZSBvbGQgU0lHV0lOQ0ggc2lnYWN0IgorbXNnc3RyICLlj6TjgYQgU0lHV0lOQ0ggc2lnYWN0IOOBruW+qeW4sOOBq+WkseaVl+OBl+OBvuOBl+OBnyIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo2OQorbXNnaWQgImZhaWxlZCB0byByZXN0b3JlIG9sZCBzaWduYWwgbWFzayIKK21zZ3N0ciAi44Oa44O844K544OI5Lit44GrIHAxIOOBruOCquODvOODl+ODsyAoZmRvcGVuKSDjgavlpLHmlZfjgZfjgb7jgZfjgZ8iCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6NzkKK21zZ2lkICJmYWlsZWQgdG8gZ2V0IG9sZCBzaWduYWwgbWFzayIKK21zZ3N0ciAi44Oa44O844K544OI5Lit44GrIHAxIOOBruOCquODvOODl+ODsyAoZmRvcGVuKSDjgavlpLHmlZfjgZfjgb7jgZfjgZ8iCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6ODAKK21zZ2lkICJmYWlsZWQgdG8gZ2V0IG9sZCBTSUdXSU5DSCBzaWdhY3QiCittc2dzdHIgIuWPpOOBhCBTSUdXSU5DSCBzaWdhY3Qg44Gu5Y+W5b6X44Gr5aSx5pWX44GX44G+44GX44GfIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjg0Cittc2dpZCAiZmFpbGVkIHRvIGJsb2NrIFNJR1dJTkNIIgorbXNnc3RyICJTSUdXSU5DSCDjga7jg5bjg63jg4Pjgq/jgavlpLHmlZfjgZfjgb7jgZfjgZ8iCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6ODkKK21zZ2lkICJmYWlsZWQgdG8gc2V0IG5ldyBTSUdXSU5DSCBzaWdhY3QiCittc2dzdHIgIuaWsOOBl+OBhCBTSUdXSU5DSCBzaWdhY3Qg44Gu44K744OD44OI44Gr5aSx5pWX44GX44G+44GX44GfIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjEyNgorbXNnaWQgImZhaWxlZCB0byBhbGxvY2F0ZSBjb2xvdXIgcGFpciIKK21zZ3N0ciAi44Kr44Op44O844Oa44Ki44Gu5Ymy44KK5b2T44Gm44Gr5aSx5pWX44GX44G+44GX44GfIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE2NworbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgdGl0bGUgd2luZG93IgorbXNnc3RyICLjgr/jgqTjg4jjg6vjgqbjgqPjg7Pjg4njgqbjga7kvZzmiJDjgavlpLHmlZfjgZfjgb7jgZfjgZ8iCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTcxCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSB3aGF0aW5mbyB3aW5kb3ciCittc2dzdHIgIuaDheWgseOCpuOCo+ODs+ODieOCpuOBruS9nOaIkOOBq+WkseaVl+OBl+OBvuOBl+OBnyIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxNzUKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGJhc2VsaXN0IHBhZCIKK21zZ3N0ciAi5Z+65pys44Oq44K544OI44OR44OD44OJ44Gu5L2c5oiQ44Gr5aSx5pWX44GX44G+44GX44GfIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE3OAorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgaGVhZGluZyBwYWQiCittc2dzdHIgIuODmOODh+OCo+ODs+OCsOODkeODg+ODieOBruS9nOaIkOOBq+WkseaVl+OBl+OBvuOBl+OBnyIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxODIKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHRoaXNzdGF0ZSBwYWQiCittc2dzdHIgIuODh+OCo+OCueOCueODhuODvOODiOODkeODg+ODieOBruS9nOaIkOOBq+WkseaVl+OBl+OBvuOBl+OBnyIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxODYKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGluZm8gcGFkIgorbXNnc3RyICLmg4XloLHjg5Hjg4Pjg4njga7kvZzmiJDjgavlpLHmlZfjgZfjgb7jgZfjgZ8iCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTkxCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBxdWVyeSB3aW5kb3ciCittc2dzdHIgIuODh+OCo+ODrOOCr+ODiOODquOBruS9nOaIkOOBq+WkseaVl+OBl+OBvuOBl+OBnyIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoyNTUKKyMsIGZ1enp5Cittc2dpZCAiS2V5YmluZGluZ3MiCittc2dzdHIgIuOCreODvOioreWumiIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzozMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAtLSAlZCUlLCBwcmVzcyAiCittc2dzdHIgIiAtLSAlZCUl44CBIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjMwNgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBmb3IgbW9yZSIKK21zZ3N0ciAiJXMg44Gn44K544Kv44Ot44O844OrIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjMxMAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyB0byBnbyBiYWNrIgorbXNnc3RyICIlcyDjgq3jg7zjgafmiLvjgosiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6NzgKK21zZ2lkICJbbm90IGJvdW5kXSIKK21zZ3N0ciAiW+acquWJsuOCiuW9k+OBpl0iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiW3VuazogJWRdIgorbXNnc3RyICJbdW5rOiAlZF0iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTM5Cittc2dpZCAiU2Nyb2xsIG9ud2FyZHMgdGhyb3VnaCBoZWxwL2luZm9ybWF0aW9uIgorbXNnc3RyICLjg5jjg6vjg5cv5oOF5aCx44KS5YmN5pa544Gr44K544Kv44Ot44O844Or44GZ44KLIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0MAorbXNnaWQgIlNjcm9sbCBiYWNrd2FyZHMgdGhyb3VnaCBoZWxwL2luZm9ybWF0aW9uIgorbXNnc3RyICLjg5jjg6vjg5cv5oOF5aCx44KS5b6M5pa544Gr44K544Kv44Ot44O844Or44GZ44KLIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0MQorbXNnaWQgIk1vdmUgdXAiCittc2dzdHIgIuS4iuOBuCIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDIKK21zZ2lkICJNb3ZlIGRvd24iCittc2dzdHIgIuS4i+OBuCIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDMKK21zZ2lkICJHbyB0byB0b3Agb2YgbGlzdCIKK21zZ3N0ciAi44Oq44K544OI44Gu5YWI6aCt44G4IgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0NAorbXNnaWQgIkdvIHRvIGVuZCBvZiBsaXN0IgorbXNnc3RyICLjg6rjgrnjg4jjga7mnIDlvozjgbgiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ1Cittc2dpZCAiUmVxdWVzdCBoZWxwIChjeWNsZSB0aHJvdWdoIGhlbHAgc2NyZWVucykiCittc2dzdHIgIuODmOODq+ODl+OBruWRvOOBs+WHuuOBlyAo44OY44Or44OX55S76Z2i44KS5b6q55Kw44GZ44KLKSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDYKK21zZ2lkICJDeWNsZSB0aHJvdWdoIGluZm9ybWF0aW9uIGRpc3BsYXlzIgorbXNnc3RyICLmg4XloLHnlLvpnaLjgpLliIfjgormm7/jgYjjgosiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ3Cittc2dpZCAiUmVkcmF3IGRpc3BsYXkiCittc2dzdHIgIuWGjeaPj+eUuyIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDgKK21zZ2lkICJTY3JvbGwgb253YXJkcyB0aHJvdWdoIGxpc3QgYnkgMSBsaW5lIgorbXNnc3RyICLkuIDopqfjgpIgMSDooYzjgZTjgajjgavliY3mlrnjgavjgrnjgq/jg63jg7zjg6vjgZnjgosiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ5Cittc2dpZCAiU2Nyb2xsIGJhY2t3YXJkcyB0aHJvdWdoIGxpc3QgYnkgMSBsaW5lIgorbXNnc3RyICLkuIDopqfjgpIgMSDooYzjgZTjgajjgavlvozmlrnjgavjgrnjgq/jg63jg7zjg6vjgZnjgosiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTUwCittc2dpZCAiU2Nyb2xsIG9ud2FyZHMgdGhyb3VnaCBoZWxwL2luZm9ybWF0aW9uIGJ5IDEgbGluZSIKK21zZ3N0ciAi44OY44Or44OXL+aDheWgseOCkiAxIOihjOOBlOOBqOOBq+WJjeaWueOBq+OCueOCr+ODreODvOODq+OBmeOCiyIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTEKK21zZ2lkICJTY3JvbGwgYmFja3dhcmRzIHRocm91Z2ggaGVscC9pbmZvcm1hdGlvbiBieSAxIGxpbmUiCittc2dzdHIgIuODmOODq+ODly/mg4XloLHjgpIgMSDooYzjgZTjgajjgavlvozmlrnjgavjgrnjgq/jg63jg7zjg6vjgZnjgosiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTUyCittc2dpZCAiU2Nyb2xsIG9ud2FyZHMgdGhyb3VnaCBsaXN0IgorbXNnc3RyICLkuIDopqfjgpLliY3mlrnjgavjgrnjgq/jg63jg7zjg6vjgZnjgosiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTUzCittc2dpZCAiU2Nyb2xsIGJhY2t3YXJkcyB0aHJvdWdoIGxpc3QiCittc2dzdHIgIuS4gOimp+OCkuW+jOaWueOBq+OCueOCr+ODreODvOODq+OBmeOCiyIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTYKK21zZ2lkICJNYXJrIHBhY2thZ2UocykgZm9yIGluc3RhbGxhdGlvbiIKK21zZ3N0ciAi44Kk44Oz44K544OI44O844Or55So44Gr44Oe44O844KvIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1NworbXNnaWQgIk1hcmsgcGFja2FnZShzKSBmb3IgZGVpbnN0YWxsYXRpb24iCittc2dzdHIgIuWJiumZpOeUqOOBq+ODnuODvOOCryIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTgKK21zZ2lkICJNYXJrIHBhY2thZ2UocykgZm9yIGRlaW5zdGFsbCBhbmQgcHVyZ2UiCittc2dzdHIgIuWJiumZpOODu+WujOWFqOWJiumZpOeUqOOBq+ODnuODvOOCryIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTkKK21zZ2lkICJNYWtlIGhpZ2hsaWdodCBtb3JlIHNwZWNpZmljIgorbXNnc3RyICLjg4/jgqTjg6njgqTjg4jpg6jjgpLjgojjgoroqbPntLDjgasiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTYwCittc2dpZCAiTWFrZSBoaWdobGlnaHQgbGVzcyBzcGVjaWZpYyIKK21zZ3N0ciAi44OP44Kk44Op44Kk44OI6YOo44KS44KI44KK44GK44GK44G+44GL44GrIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2MQorbXNnaWQgIlNlYXJjaCBmb3IgYSBwYWNrYWdlIHdob3NlIG5hbWUgY29udGFpbnMgYSBzdHJpbmciCittc2dzdHIgIuaMh+WumuOBl+OBn+aWh+Wtl+OCkuWQq+OCgOODkeODg+OCseODvOOCuOOBruWQjeWJjeOCkuaknOe0oiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjIKK21zZ2lkICJSZXBlYXQgbGFzdCBzZWFyY2guIgorbXNnc3RyICLlho3mpJzntKIiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTYzCittc2dpZCAiU3dhcCBzb3J0IG9yZGVyIHByaW9yaXR5L3NlY3Rpb24iCittc2dzdHIgIuWEquWFiOW6pi/liIbpoZ4gKHByaW9yaXR5L3NlY3Rpb24pIOmghuOBp+OBruOCveODvOODiOOBruWkieaPmyIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjQKK21zZ2lkICJRdWl0LCBjb25maXJtaW5nLCBhbmQgY2hlY2tpbmcgZGVwZW5kZW5jaWVzIgorbXNnc3RyICLntYLkuobjgIHkvp3lrZjplqLkv4Ljga7oqr/mn7vjgpLooYzjgYYiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY1Cittc2dpZCAiUXVpdCwgY29uZmlybWluZyB3aXRob3V0IGNoZWNrIgorbXNnc3RyICLntYLkuobjgIHoqr/mn7vjgpLooYzjgo/jgarjgYQiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY2Cittc2dpZCAiUXVpdCwgcmVqZWN0aW5nIGNvbmZsaWN0L2RlcGVuZGVuY3kgc3VnZ2VzdGlvbnMiCittc2dzdHIgIue1guS6huOAgeS+neWtmOmWouS/guOChOertuWQiOino+axuuOBruaPkOahiOOCkuegtOajhOOBmeOCiyIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjcKK21zZ2lkICJBYm9ydCAtIHF1aXQgd2l0aG91dCBtYWtpbmcgY2hhbmdlcyIKK21zZ3N0ciAi5Lit5patIC0g5aSJ5pu044KS6KGM44KP44Ga44Gr57WC5LqGIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2OAorbXNnaWQgIlJldmVydCB0byBvbGQgc3RhdGUgZm9yIGFsbCBwYWNrYWdlcyIKK21zZ3N0ciAi44GZ44G544Gm44Gu44OR44OD44Kx44O844K444Gr44Gk44GE44Gm5Y+k44GE54q25oWL44Gr5oi744GZIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2OQorbXNnaWQgIlJldmVydCB0byBzdWdnZXN0ZWQgc3RhdGUgZm9yIGFsbCBwYWNrYWdlcyIKK21zZ3N0ciAi44GZ44G544Gm44Gu44OR44OD44Kx44O844K444Gr44Gk44GE44Gm5o+Q5qGI44GV44KM44Gf54q25oWL44Gr5oi744GZIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE3MAorbXNnaWQgIlJldmVydCB0byBkaXJlY3RseSByZXF1ZXN0ZWQgc3RhdGUgZm9yIGFsbCBwYWNrYWdlcyIKK21zZ3N0ciAi44GZ44G544Gm44Gu44OR44OD44Kx44O844K444Gr44Gk44GE44Gm55u05o6l6KaB5rGC44GX44Gf54q25oWL44Gr5oi744GZIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE3MQorIywgZnV6enkKK21zZ2lkICJSZXZlcnQgdG8gY3VycmVudGx5IGluc3RhbGxlZCBzdGF0ZSBmb3IgYWxsIHBhY2thZ2VzIgorbXNnc3RyICLjgZnjgbnjgabjga7jg5Hjg4PjgrHjg7zjgrjjgavjgaTjgYTjgabnm7TmjqXopoHmsYLjgZfjgZ/nirbmhYvjgavmiLvjgZkiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTc0Cittc2dpZCAiU2VsZWN0IGN1cnJlbnRseS1oaWdobGlnaHRlZCBhY2Nlc3MgbWV0aG9kIgorbXNnc3RyICLnj77lnKjjg4/jgqTjg6njgqTjg4jooajnpLrjgZXjgozjgabjgYTjgovjgqLjgq/jgrvjgrnmlrnms5XjgpLpgbjmip7jgZnjgosiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTc1Cittc2dpZCAiUXVpdCB3aXRob3V0IGNoYW5naW5nIHNlbGVjdGVkIGFjY2VzcyBtZXRob2QiCittc2dzdHIgIumBuOaKnuOBleOCjOOBn+OCouOCr+OCu+OCueaWueazleOCkuWkieabtOOBm+OBmuOBq+e1guS6huOBmeOCiyIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoyOQorbXNnaWQgIktleXN0cm9rZXMiCittc2dzdHIgIuOCreODvOaTjeS9nCIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoyOQorIywgZnV6enkKK21zZ2lkICIiCisiTW90aW9uIGtleXM6IE5leHQvUHJldmlvdXMsIFRvcC9FbmQsIFVwL0Rvd24sIEJhY2t3YXJkcy9Gb3J3YXJkczpcbiIKKyIgIGosIERvd24tYXJyb3cgICAgICAgICBrLCBVcC1hcnJvdyAgICAgICAgICAgICBtb3ZlIGhpZ2hsaWdodFxuIgorIiAgTiwgUGFnZS1kb3duLCBTcGFjZSAgIFAsIFBhZ2UtdXAsIEJhY2tzcGFjZSAgIHNjcm9sbCBsaXN0IGJ5IDEgcGFnZVxuIgorIiAgXm4gICAgICAgICAgICAgICAgICAgIF5wICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBsaXN0IGJ5IDEgbGluZVxuIgorIiAgdCwgSG9tZSAgICAgICAgICAgICAgIGUsIEVuZCAgICAgICAgICAgICAgICAgIGp1bXAgdG8gdG9wL2VuZCBvZiBsaXN0XG4iCisiICB1ICAgICAgICAgICAgICAgICAgICAgZCAgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGluZm8gYnkgMSBwYWdlXG4iCisiICBedSAgICAgICAgICAgICAgICAgICAgXmQgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGluZm8gYnkgMSBsaW5lXG4iCisiICBCLCBMZWZ0LWFycm93ICAgICAgICAgRiwgUmlnaHQtYXJyb3cgICAgICAgICAgcGFuIGRpc3BsYXkgYnkgMS8zIHNjcmVlblxuIgorIiAgXmIgICAgICAgICAgICAgICAgICAgIF5mICAgICAgICAgICAgICAgICAgICAgIHBhbiBkaXNwbGF5IGJ5IDEgY2hhcmFjdGVyXG4iCisiXG4iCisiTWFyayBwYWNrYWdlcyBmb3IgbGF0ZXIgcHJvY2Vzc2luZzpcbiIKKyIgKywgSW5zZXJ0ICBpbnN0YWxsIG9yIHVwZ3JhZGUgICAgICA9LCBIICBob2xkIGluIHByZXNlbnQgc3RhdGVcbiIKKyIgLSwgRGVsZXRlICByZW1vdmUgICAgICAgICAgICAgICAgICA6LCBHICB1bmhvbGQ6IHVwZ3JhZGUgb3IgbGVhdmUgIgorInVuaW5zdGFsbGVkXG4iCisiIF8gICAgICAgICAgcmVtb3ZlICYgcHVyZ2UgY29uZmlnXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTWlzY2VsbGFuZW91czpcbiIKKyJRdWl0LCBleGl0LCBvdmVyd3JpdGUgKG5vdGUgY2FwaXRhbHMhKTogICAgICAgPywgRjEgcmVxdWVzdCBoZWxwIChhbHNvICIKKyJIZWxwKVxuIgorIiBSZXR1cm4gIENvbmZpcm0sIHF1aXQgKGNoZWNrIGRlcGVuZGVuY2llcykgICBpLCBJICB0b2dnbGUvY3ljbGUgaW5mbyAiCisiZGlzcGxheXNcbiIKKyIgICBRICAgICBDb25maXJtLCBxdWl0IChvdmVycmlkZSBkZXAucykgICAgICAgbywgTyAgY3ljbGUgdGhyb3VnaCBzb3J0ICIKKyJvcHRpb25zXG4iCisiIFgsIEVzYyAgZVhpdCwgYWJhbmRvbmluZyBhbnkgY2hhbmdlcyBtYWRlICAgIHYsIFYgIGNoYW5nZSBzdGF0dXMgZGlzcGxheSAiCisib3B0c1xuIgorIiAgIFIgICAgIFJldmVydCB0byBzdGF0ZSBiZWZvcmUgdGhpcyBsaXN0ICAgICAgXmwgICByZWRyYXcgZGlzcGxheVxuIgorIiAgIFUgICAgIHNldCBhbGwgdG8gc1VnZ2VzdGVkIHN0YXRlICAgICAgICAgICAgIC8gICBzZWFyY2ggKFJldHVybiB0byAiCisiY2FuY2VsKVxuIgorIiAgIEQgICAgIHNldCBhbGwgdG8gRGlyZWN0bHkgcmVxdWVzdGVkIHN0YXRlICBuLCBcXCAgcmVwZWF0IGxhc3Qgc2VhcmNoXG4iCittc2dzdHIgIiIKKyLnp7vli5Xjgq3jg7w6IOasoeWAmeijnC/liY3lgJnoo5zjgIHlhYjpoK0v5pyA5b6M5bC+44K444Oj44Oz44OX44CB5LiKL+S4iy/lt6Yv5Y+z44K544Kv44Ot44O844OrOlxuIgorIiAg5LiL55+i5Y2w44Kt44O8LCBqICAgICAgICAg5LiK55+i5Y2w44Kt44O8LCBrICAgICAgICAgICDjg4/jgqTjg6njgqTjg4jjgpLnp7vli5VcbiIKKyIgIE4sIFBhZ2UtZG93biwgU3BhY2UgICBQLCBQYWdlLXVwLCBCYWNrc3BhY2UgICDjg6rjgrnjg4jjgpIgMSDjg5rjg7zjgrjjgrnjgq/jg63jg7zjg6tcbiIKKyIgIF5uICAgICAgICAgICAgICAgICAgICBecCAgICAgICAgICAgICAgICAgICAgICDjg6rjgrnjg4jjgpIgMSDooYzjgrnjgq/jg63jg7zjg6tcbiIKKyIgIHQsIEhvbWUgICAgICAgICAgICAgICBlLCBFbmQgICAgICAgICAgICAgICAgICDjg6rjgrnjg4jjga7lhYjpoK0v5pyA5b6M44Gr44K444Oj44Oz44OXXG4iCisiICB1ICAgICAgICAgICAgICAgICAgICAgZCAgICAgICAgICAgICAgICAgICAgICAg5oOF5aCx44KSIDEg44Oa44O844K444K544Kv44Ot44O844OrXG4iCisiICBedSAgICAgICAgICAgICAgICAgICAgXmQgICAgICAgICAgICAgICAgICAgICAg5oOF5aCx44KSIDEg6KGM44K544Kv44Ot44O844OrXG4iCisiICBCLCDlt6bnn6LljbDjgq3jg7wgICAgICAgICBGLCDlj7Pnn6LljbDjgq3jg7wgICAgICAgICAgIDEvMyDnlLvpnaLjgaDjgZHmsLTlubPnp7vli5VcbiIKKyIgIF5iICAgICAgICAgICAgICAgICAgICBeZiAgICAgICAgICAgICAgICAgICAgICAxIOaWh+Wtl+OBoOOBkeawtOW5s+enu+WLlVxuIgorIlxuIgorIuW+jOOBp+WHpueQhuOBmeOCi+OBn+OCgeOBq+ODkeODg+OCseODvOOCuOOBq+ODnuODvOOCr+OCkuS7mOOBkeOCizpcbiIKKyIgKywgSW5zZXJ0ICDjgqTjg7Pjgrnjg4jjg7zjg6vjgb7jgZ/jga/jgqLjg4Pjg5fjgrDjg6zjg7zjg4kgICAgICBcbiIKKyIgPSwgSCAgICAgICDnj77lnKjjga7nirbmhYvjgpLntq3mjIEgKGhvbGQpXG4iCisiIC0sIERlbGV0ZSAg5YmK6ZmkXG4iCisiIDosIEcgICAgICAg57at5oyBIChob2xkKSDop6PpmaQ6IOOCouODg+ODl+OCsOODrOODvOODieOBvuOBn+OBr+OCpOODs+OCueODiOODvOODq+OBl+OBquOBhFxuIgorIiBfICAgICAgICAgICjoqK3lrprjg5XjgqHjgqTjg6vjgoLlkKvjgoEpIOWujOWFqOWJiumZpFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIOOBneOBruS7ljpcbiIKKyLntYLkuobjgIHkuK3mraLjgIHkuIrmm7jjgY0gKOWkp+aWh+Wtl+OBq+azqOaEjyEpOiAgICAgID8sIEYxIOODmOODq+ODlyAo44G+44Gf44GvIEhlbHApXG4iCisiIFJldHVybiAg56K66KqN5b6M44CB57WC5LqGICjkvp3lrZjplqLkv4LjgpLnhaflkIgpICAgaSwgSSAg5oOF5aCx55S76Z2i44Gu5YiH44KK5pu/44GIXG4iCisiICAgUSAgICAg56K66KqN5b6M44CB57WC5LqGICjkvp3lrZjplqLkv4LjgpLnhKHoppYpICAgbywgTyAg44K944O844OI44Kq44OX44K344On44Oz44Gu5YiH44KK5pu/44GIXG4iCisiIFgsIEVzYyAg5Lit5q2iIChlWGl0KeOAguWkieabtOOBr+egtOajhOOBmeOCiyAgICAgdiwgViAg44K544OG44O844K/44K555S76Z2i44Kq44OX44K344On44Oz44Gu5aSJIgorIuabtFxuIgorIiAgIFIgICAgIOWJjeOBruODquOCueODiOeKtuaFi+OBq+aIu+OBmSAgICAgICAgICAgIF5sICAgIOeUu+mdouOBruWGjeaPj+eUu1xuIgorIiAgIFUgICAgIOaPkOahiOOBleOCjOOBn+eKtuaFi+OBq+OBmeOBueOBpuW+k+OBhiAgICAgIC8gICAgIOaknOe0oiAo44Oq44K/44O844Oz44Gn44Kt44Oj44Oz44K744OrKVxuIgorIiAgIEQgICAgIOebtOaOpeimgeaxguOBleOCjOOBn+eKtuaFi+OBq+OBmeOBueOBpuW+k+OBhiAgbiwgXFwgIOaknOe0ouasoeWAmeijnFxuIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjU1Cittc2dpZCAiSW50cm9kdWN0aW9uIHRvIHBhY2thZ2Ugc2VsZWN0aW9ucyIKK21zZ3N0ciAi44OR44OD44Kx44O844K46YG45oqe44Gu5omL5byV44GNIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjU1Cittc2dpZCAiIgorIldlbGNvbWUgdG8gZHNlbGVjdCdzIG1haW4gcGFja2FnZSBsaXN0aW5nLlxuIgorIlxuIgorIllvdSB3aWxsIGJlIHByZXNlbnRlZCB3aXRoIGEgbGlzdCBvZiBwYWNrYWdlcyB3aGljaCBhcmUgaW5zdGFsbGVkIG9yICIKKyJhdmFpbGFibGVcbiIKKyJmb3IgaW5zdGFsbGF0aW9uLiAgWW91IGNhbiBuYXZpZ2F0ZSBhcm91bmQgdGhlIGxpc3QgdXNpbmcgdGhlIGN1cnNvciBrZXlzLFxuIgorIm1hcmsgcGFja2FnZXMgZm9yIGluc3RhbGxhdGlvbiAodXNpbmcgYCsnKSBvciBkZWluc3RhbGxhdGlvbiAodXNpbmcgYC0nKS5cbiIKKyJQYWNrYWdlcyBjYW4gYmUgbWFya2VkIGVpdGhlciBzaW5nbHkgb3IgaW4gZ3JvdXBzOyBpbml0aWFsbHkgeW91IHdpbGwgc2VlICIKKyJ0aGF0XG4iCisidGhlIGxpbmUgYEFsbCBwYWNrYWdlcycgaXMgc2VsZWN0ZWQuICBgKycsIGAtJyBhbmQgc28gb24gd2lsbCBhZmZlY3QgYWxsICIKKyJ0aGVcbiIKKyJwYWNrYWdlcyBkZXNjcmliZWQgYnkgdGhlIGhpZ2hsaWdodGVkIGxpbmUuXG4iCisiXG4iCisiU29tZSBvZiB5b3VyIGNob2ljZXMgd2lsbCBjYXVzZSBjb25mbGljdHMgb3IgZGVwZW5kZW5jeSBwcm9ibGVtczsgeW91IHdpbGwgIgorImJlXG4iCisiZ2l2ZW4gYSBzdWItbGlzdCBvZiB0aGUgcmVsZXZhbnQgcGFja2FnZXMsIHNvIHRoYXQgeW91IGNhbiBzb2x2ZSB0aGUgIgorInByb2JsZW1zLlxuIgorIlxuIgorIllvdSBzaG91bGQgcmVhZCB0aGUgbGlzdCBvZiBrZXlzIGFuZCB0aGUgZXhwbGFuYXRpb25zIG9mIHRoZSBkaXNwbGF5LlxuIgorIk11Y2ggb24tbGluZSBoZWxwIGlzIGF2YWlsYWJsZSwgcGxlYXNlIG1ha2UgdXNlIG9mIGl0IC0gcHJlc3MgYD8nIGF0XG4iCisiYW55IHRpbWUgZm9yIGhlbHAuXG4iCisiXG4iCisiV2hlbiB5b3UgaGF2ZSBmaW5pc2hlZCBzZWxlY3RpbmcgcGFja2FnZXMsIHByZXNzIDxlbnRlcj4gdG8gY29uZmlybSAiCisiY2hhbmdlcyxcbiIKKyJvciBgWCcgdG8gcXVpdCB3aXRob3V0IHNhdmluZyBjaGFuZ2VzLiBBIGZpbmFsIGNoZWNrIG9uIGNvbmZsaWN0cyBhbmRcbiIKKyJkZXBlbmRlbmNpZXMgd2lsbCBiZSBkb25lIC0gaGVyZSB0b28geW91IG1heSBzZWUgYSBzdWJsaXN0LlxuIgorIlxuIgorIlByZXNzIDxzcGFjZT4gdG8gbGVhdmUgaGVscCBhbmQgZW50ZXIgdGhlIGxpc3Qgbm93LlxuIgorbXNnc3RyICIiCisi44Oh44Kk44Oz44OR44OD44Kx44O844K45LiA6Kan44Gr44KI44GG44GT44Gd44CCXG4iCisiXG4iCisi44GT44GT44Gn44Gv44Kk44Oz44K544OI44O844Or5riI44G/44CB44G+44Gf44Gv44Kk44Oz44K544OI44O844Or5Y+v6IO944Gq44OR44OD44Kx44O844K444Gu5LiA6Kan44GM6KGo56S644GVXG4iCisi44KM44G+44GZ44CC44Kr44O844K944Or44Kt44O844KS5L2/44Gj44Gm44OR44OD44Kx44O844K444Oq44K544OI44KS6Zay6Kan44GZ44KL44GT44Go44GM44Gn44GN44CB44Kk44Oz44K544OIXG4iCisi44O844Or44GZ44KL44OR44OD44Kx44O844K4IChgKycg44Kt44O85L2/55SoKSDjgajliYrpmaTjgZnjgovjg5Hjg4PjgrHjg7zjgrggKGAtJyDjgq3jg7zkvb/nlKgp44Gr44OeXG4iCisi44O844Kv44KS5LuY44GR44KL44GT44Go44GM44Gn44GN44G+44GZ44CCXG4iCisiXG4iCisi44OR44OD44Kx44O844K444Gv5YCL5Yil44Gr44CB44G+44Gf44Gv44Kw44Or44O844OX44GU44Go44Gr44Oe44O844Kv44KS5LuY44GR44G+44GZ44CC5pyA5Yid44Gr44CM44GZ44G544Gm44GuXG4iCisi44OR44OD44Kx44O844K444CN6KGM44KS6YG45oqe44GZ44KL44GT44Go44KC44Gn44GN44G+44GZ44CCYCsn44CBYC0nIOOCreODvOetieOBruaTjeS9nOOBr+ODj+OCpOODqeOCpOODiFxuIgorIuOBleOCjOOBn+ihjOOBq+iomOi8ieOBleOCjOOBn+ODkeODg+OCseODvOOCuOOBmeOBueOBpuOBq+W9semfv+OBl+OBvuOBmeOAglxuIgorIlxuIgorIuOBguOBquOBn+OBrumBuOaKnuOBl+OBn+ODkeODg+OCseODvOOCuOOBruOBhuOBoeOAgeertuWQiOOChOS+neWtmOmWouS/guOBruWVj+mhjOOCkuW8leOBjei1t+OBk+OBmeOCguOBruOBjOOBglxuIgorIuOCi+OBi+OCguOBl+OCjOOBvuOBm+OCk+OAguOBneOBruWgtOWQiOOAgemWoumAo+OBmeOCi+ODkeODg+OCseODvOOCuOOBjOOCteODluODquOCueODiOOBp+ihqOekuuOBleOCjOOBvuOBmeOBrlxuIgorIuOBp+OAgeWVj+mhjOOCkuino+axuuOBl+OBpuOBj+OBoOOBleOBhOOAglxuIgorIlxuIgorIuihqOekuuOBleOCjOOBpuOBhOOCi+OCreODvOOBruS4gOimp+OBqOiqrOaYjuOBq+ebruOCkumAmuOBl+OBpuOBiuOBhOOBpuOBj+OBoOOBleOBhOOAguWkmuOBj+OBruOCquODs+ODqeOCpOODs1xuIgorIuODmOODq+ODl+OCguWIqeeUqOOBp+OBjeOCi+OBruOBp+OAgeOBk+OCjOOCkuS9v+OBo+OBpuOBv+OBpuOBj+OBoOOBleOBhOOAgmA/JyDjgq3jg7zjgafjgYTjgaTjgafjgoLjg5jjg6vjg5dcbiIKKyLjgpLlj4LnhafjgafjgY3jgb7jgZnjgIJcbiIKKyIgICAgICAgIFxuIgorIuODkeODg+OCseODvOOCuOOBrumBuOaKnuOCkuWujOS6huOBl+OBn+OCieOAgeODquOCv+ODvOODs+OCreODvOOCkuWFpeWKm+OBl+OAgeWkieabtOOCkueiuuiqjeOBl+OBvuOBmVxuIgorIijjgYLjgovjgYTjga/lpInmm7TjgpLkv53lrZjjgZvjgZrjgavntYLkuobjgZnjgovjgavjga8gYFgnIOOCkuaKvOOBl+OBvuOBmSnjgILnq7blkIjjg7vkvp3lrZjplqLkv4Ljga7mnIDntYJcbiIKKyLjg4Hjgqfjg4Pjgq/jgYzooYzjgo/jgozjgb7jgZnjgIItIOWVj+mhjOOBjOOBguOCi+WgtOWQiOOBr+OCteODluODquOCueODiOOBp+ihqOekuuOBleOCjOOBvuOBmeOAglxuIgorIlxuIgorIjzjgrnjg5rjg7zjgrk+IOOCreODvOOCkuaKvOOBmeOBqOODmOODq+ODl+OBjOe1guS6huOBl+OAgeODkeODg+OCseODvOOCuOS4gOimp+eUu+mdouOBq+OBquOCiuOBvuOBmeOAglxuIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjgwCittc2dpZCAiSW50cm9kdWN0aW9uIHRvIHJlYWQtb25seSBwYWNrYWdlIGxpc3QgYnJvd3NlciIKK21zZ3N0ciAi44OR44OD44Kx44O844K45LiA6Kan44OW44Op44Km44K244Gu5omL5byV44GNICjjg6rjg7zjg4njgqrjg7Pjg6rjg7wpIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjgwCittc2dpZCAiIgorIldlbGNvbWUgdG8gZHNlbGVjdCdzIG1haW4gcGFja2FnZSBsaXN0aW5nLlxuIgorIlxuIgorIllvdSB3aWxsIGJlIHByZXNlbnRlZCB3aXRoIGEgbGlzdCBvZiBwYWNrYWdlcyB3aGljaCBhcmUgaW5zdGFsbGVkIG9yICIKKyJhdmFpbGFibGVcbiIKKyJmb3IgaW5zdGFsbGF0aW9uLiAgU2luY2UgeW91IGRvIG5vdCBoYXZlIHRoZSBwcml2aWxlZ2UgbmVjZXNzYXJ5IHRvIHVwZGF0ZVxuIgorInBhY2thZ2Ugc3RhdGVzLCB5b3UgYXJlIGluIGEgcmVhZC1vbmx5IG1vZGUuICBZb3UgY2FuIG5hdmlnYXRlIGFyb3VuZCB0aGVcbiIKKyJsaXN0IHVzaW5nIHRoZSBjdXJzb3Iga2V5cyAocGxlYXNlIHNlZSB0aGUgYEtleXN0cm9rZXMnIGhlbHAgc2NyZWVuKSwgIgorIm9ic2VydmVcbiIKKyJ0aGUgc3RhdHVzIG9mIHRoZSBwYWNrYWdlcyBhbmQgcmVhZCBpbmZvcm1hdGlvbiBhYm91dCB0aGVtLlxuIgorIlxuIgorIllvdSBzaG91bGQgcmVhZCB0aGUgbGlzdCBvZiBrZXlzIGFuZCB0aGUgZXhwbGFuYXRpb25zIG9mIHRoZSBkaXNwbGF5LlxuIgorIk11Y2ggb24tbGluZSBoZWxwIGlzIGF2YWlsYWJsZSwgcGxlYXNlIG1ha2UgdXNlIG9mIGl0IC0gcHJlc3MgYD8nIGF0XG4iCisiYW55IHRpbWUgZm9yIGhlbHAuXG4iCisiXG4iCisiV2hlbiB5b3UgaGF2ZSBmaW5pc2hlZCBicm93c2luZywgcHJlc3MgYFEnIG9yIDxlbnRlcj4gdG8gcXVpdC5cbiIKKyJcbiIKKyJQcmVzcyA8c3BhY2U+IHRvIGxlYXZlIGhlbHAgYW5kIGVudGVyIHRoZSBsaXN0IG5vdy5cbiIKK21zZ3N0ciAiIgorImRzZWxlY3Qg44Oh44Kk44Oz44OR44OD44Kx44O844K45LiA6Kan44Gr44KI44GG44GT44Gd44CCXG4iCisiXG4iCisiXG4iCisi44GT44GT44Gn44Gv44Kk44Oz44K544OI44O844Or5riI44G/44CB44G+44Gf44Gv44Kk44Oz44K544OI44O844Or5Y+v6IO944Gq44OR44OD44Kx44O844K444Gu5LiA6Kan44GM6KGoXG4iCisi56S644GV44KM44G+44GZ44CC44GC44Gq44Gf44Gr44Gv44OR44OD44Kx44O844K454q25oWL44KS5pu05paw44GZ44KL5qip6ZmQ44GM44GC44KK44G+44Gb44KT44Gu44Gn44CB44OqXG4iCisi44O844OJ44Kq44Oz44Oq44O844Oi44O844OJ44Gn5a6f6KGM44GV44KM44Gm44GE44G+44GZ44CC44Kr44O844K944Or44Kt44O844KS5L2/44Gj44Gm44OR44OD44Kx44O844K444OqXG4iCisi44K544OI44KS6Zay6Kan44GZ44KL44GT44Go44GM44Gn44GN44CB44OR44OD44Kx44O844K444Gu44K544OG44O844K/44K544KS6Kq/44G544Gf44KK44OR44OD44Kx44O844K45oOFXG4iCisi5aCx44KS6Kqt44KT44Gg44KK44GZ44KL44GT44Go44GM44Gn44GN44G+44GZIChg44Kt44O844K544OI44Ot44O844KvJyDjg5jjg6vjg5fnlLvpnaLjgpLlj4LnhafjgZfjgabjgY9cbiIKKyLjgaDjgZXjgYQp44CCXG4iCisiXG4iCisi6KGo56S644GV44KM44Gm44GE44KL44Kt44O844Gu5LiA6Kan44Go6Kqs5piO44Gr55uu44KS6YCa44GX44Gm44GK44GE44Gm44GP44Gg44GV44GE44CC5aSa44GP44Gu44Kq44Oz44OpXG4iCisi44Kk44Oz44OY44Or44OX44KC5Yip55So44Gn44GN44KL44Gu44Gn44CB44GT44KM44KS5L2/44Gj44Gm44G/44Gm44GP44Gg44GV44GE44CCYD8nIOOCreODvOOBp+OBhOOBpOOBp1xuIgorIuOCguODmOODq+ODl+OCkuWPgueFp+OBp+OBjeOBvuOBmeOAglxuIgorIlxuIgorIumWsuimp+OCkue1guOBiOOBn+OCieOAgWBRJyDjgb7jgZ/jga/jg6rjgr/jg7zjg7Pjgq3jg7zjgpLmirzjgZvjgbDntYLkuobjgZfjgb7jgZnjgIJcbiIKKyI844K544Oa44O844K5PiDjgq3jg7zjgpLmirzjgZnjgajjg5jjg6vjg5fjgYzntYLkuobjgZfjgIHjg5Hjg4PjgrHjg7zjgrjkuIDopqfnlLvpnaLjgavjgarjgorjgb7jgZnjgIJcbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo5OQorbXNnaWQgIkludHJvZHVjdGlvbiB0byBjb25mbGljdC9kZXBlbmRlbmN5IHJlc29sdXRpb24gc3ViLWxpc3QiCittc2dzdHIgIuertuWQiOOChOS+neWtmOmWouS/guino+axuueUqOOCteODluODquOCueODiOOBruaJi+W8leOBjSIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo5OQorbXNnaWQgIiIKKyJEZXBlbmRlbmN5L2NvbmZsaWN0IHJlc29sdXRpb24gLSBpbnRyb2R1Y3Rpb24uXG4iCisiXG4iCisiT25lIG9yIG1vcmUgb2YgeW91ciBjaG9pY2VzIGhhdmUgcmFpc2VkIGEgY29uZmxpY3Qgb3IgZGVwZW5kZW5jeSBwcm9ibGVtIC1cbiIKKyJzb21lIHBhY2thZ2VzIHNob3VsZCBvbmx5IGJlIGluc3RhbGxlZCBpbiBjb25qdW5jdGlvbiB3aXRoIGNlcnRhaW4gb3RoZXJzLCAiCisiYW5kXG4iCisic29tZSBjb21iaW5hdGlvbnMgb2YgcGFja2FnZXMgbWF5IG5vdCBiZSBpbnN0YWxsZWQgdG9nZXRoZXIuXG4iCisiXG4iCisiWW91IHdpbGwgc2VlIGEgc3ViLWxpc3QgY29udGFpbmluZyB0aGUgcGFja2FnZXMgaW52b2x2ZWQuICBUaGUgYm90dG9tIGhhbGYgIgorIm9mXG4iCisidGhlIGRpc3BsYXkgc2hvd3MgcmVsZXZhbnQgY29uZmxpY3RzIGFuZCBkZXBlbmRlbmNpZXM7IHVzZSBgaScgdG8gY3ljbGUgIgorImJldHdlZW5cbiIKKyJ0aGF0LCB0aGUgcGFja2FnZSBkZXNjcmlwdGlvbnMgYW5kIHRoZSBpbnRlcm5hbCBjb250cm9sIGluZm9ybWF0aW9uLlxuIgorIlxuIgorIkEgc2V0IG9mIGBzdWdnZXN0ZWQnIHBhY2thZ2VzIGhhcyBiZWVuIGNhbGN1bGF0ZWQsIGFuZCB0aGUgaW5pdGlhbCBtYXJraW5ncyAiCisiaW5cbiIKKyJ0aGlzIHN1Yi1saXN0IGhhdmUgYmVlbiBzZXQgdG8gbWF0Y2ggdGhvc2UsIHNvIHlvdSBjYW4ganVzdCBoaXQgUmV0dXJuIHRvXG4iCisiYWNjZXB0IHRoZSBzdWdnZXN0aW9ucyBpZiB5b3Ugd2lzaC4gIFlvdSBtYXkgYWJvcnQgdGhlIGNoYW5nZShzKSB3aGljaCAiCisiY2F1c2VkXG4iCisidGhlIHByb2JsZW0ocyksIGFuZCBnbyBiYWNrIHRvIHRoZSBtYWluIGxpc3QsIGJ5IHByZXNzaW5nIGNhcGl0YWwgYFgnLlxuIgorIlxuIgorIllvdSBjYW4gYWxzbyBtb3ZlIGFyb3VuZCB0aGUgbGlzdCBhbmQgY2hhbmdlIHRoZSBtYXJraW5ncyBzbyB0aGF0IHRoZXkgYXJlICIKKyJtb3JlXG4iCisibGlrZSB3aGF0IHlvdSB3YW50LCBhbmQgeW91IGNhbiBgcmVqZWN0JyBteSBzdWdnZXN0aW9ucyBieSB1c2luZyB0aGUgIgorImNhcGl0YWxcbiIKKyJgRCcgb3IgYFInIGtleXMgKHNlZSB0aGUga2V5YmluZGluZ3MgaGVscCBzY3JlZW4pLiAgWW91IGNhbiB1c2UgY2FwaXRhbCBgUScgIgorInRvXG4iCisiZm9yY2UgbWUgdG8gYWNjZXB0IHRoZSBzaXR1YXRpb24gY3VycmVudGx5IGRpc3BsYXllZCwgaW4gY2FzZSB5b3Ugd2FudCB0b1xuIgorIm92ZXJyaWRlIGEgcmVjb21tZW5kYXRpb24gb3IgdGhpbmsgdGhhdCB0aGUgcHJvZ3JhbSBpcyBtaXN0YWtlbi5cbiIKKyJcbiIKKyJQcmVzcyA8c3BhY2U+IHRvIGxlYXZlIGhlbHAgYW5kIGVudGVyIHRoZSBzdWItbGlzdDsgcmVtZW1iZXI6IHByZXNzIGA/JyBmb3IgIgorImhlbHAuXG4iCittc2dzdHIgIiIKKyLkvp3lrZjplqLkv4Iv56u25ZCI6Kej5rG644Gu44Gf44KB44Gu5omL5byV44GNXG4iCisiXG4iCisi44GC44Gq44Gf44Gu44OR44OD44Kx44O844K46YG45oqe44Gr44KI44Gj44Gm44CBMSDjgaTku6XkuIrjga7nq7blkIjjgb7jgZ/jga/kvp3lrZjplqLkv4Ljga7llY/poYzjgYznmbrnlJ/jgZdcbiIKKyLjgb7jgZfjgZ/jgIJcbiIKKyLjgaTjgb7jgorjgIHjgbvjgYvjga7jg5Hjg4PjgrHjg7zjgrjjgoLkuIDnt5LjgavjgqTjg7Pjgrnjg4jjg7zjg6vjgZfjgarjgZHjgozjgbDjgarjgonjgarjgYTjgIHjgb7jgZ/jga/lkIzmmYJcbiIKKyLjgavjgqTjg7Pjgrnjg4jjg7zjg6vjgafjgY3jgarjgYTjg5Hjg4PjgrHjg7zjgrjjgpLpgbjmip7jgZfjgabjgYTjgb7jgZnjgIJcbiIKKyJcbiIKKyLllY/poYzjgpLlkKvjgpPjgaDjg5Hjg4PjgrHjg7zjgrjjgYzjgrXjg5bjg6rjgrnjg4jjgavooajnpLrjgZXjgozjgabjgYTjgb7jgZnjgILnlLvpnaLjga7kuIvljYrliIbjgavjga/jgIHplqJcbiIKKyLpgKPjgZnjgovnq7blkIjjgajkvp3lrZjplqLkv4LjgYzooajnpLrjgZXjgozjgabjgYTjgb7jgZnjgILjg5Hjg4PjgrHjg7zjgrjoqqzmmI7jgajlhoXpg6jjgrPjg7Pjg4jjg63jg7zjg6vmg4VcbiIKKyLloLHjgavliIfjgormj5vjgYjjgovjgavjga8gYGknIOOCreODvOOCkuS9v+eUqOOBl+OBpuOBj+OBoOOBleOBhOOAglxuIgorIlxuIgorIuipsuW9k+OBmeOCi+ODkeODg+OCseODvOOCuOe+pOOBjOOAjOaPkOahiOOAjeOBmeOCi+eKtuaFi+OBjOiqv+OBueOCieOCjOOAgeWIneacn+ODnuODvOOCr+OBr+OBneOCjOOBq+ayv+OBhuOCiFxuIgorIuOBhuOBq+ioreWumuOBleOCjOOBpuOBhOOBvuOBmeOAguOBk+OBruaPkOahiOOCkuS6huaJv+OBmeOCi+OBquOCieOBsOWNmOOBq+ODquOCv+ODvOODs+OCreODvOOCkuaKvOOBl+OBpuOBj+OBoFxuIgorIuOBleOBhOOAguWVj+mhjOOCkui1t+OBk+OBl+OBn+WkieabtOOCkuWPluOCiuatouOCgeOAgeODoeOCpOODs+ODkeODg+OCseODvOOCuOODquOCueODiOOBq+aIu+OCiuOBn+OBhOWgtOWQiCIKKyLjga/jgIFcbiIKKyLlpKfmloflrZcgYFgnIOOCkuWFpeWKm+OBl+OBpuOBj+OBoOOBleOBhOOAglxuIgorIlxuIgorIuOCteODluODquOCueODiOOCkuenu+WLleOBl+OBpuOAgeOBguOBquOBn+OBruimgeaxguOBq+ayv+OBhuOCiOOBhuOBq+ODkeODg+OCseODvOOCuOOBruODnuODvOOCr+OCkuWkieabtOOBmeOCi1xuIgorIuOBk+OBqOOBjOOBp+OBjeOBvuOBmeOAguODh+ODleOCqeODq+ODiOOBp+S4juOBiOOCieOCjOOBn+aPkOahiOOCkuOAjOaLkuWQpuOAjeOBmeOCi+OBq+OBr+OAgeWkp+aWh+WtlyBgRCcgXG4iCisi44G+44Gf44GvIGBSJyDjgq3jg7zjgpLkvb/nlKjjgZfjgabjgY/jgaDjgZXjgYQgKOOCreODvOaTjeS9nOOBruODmOODq+ODl+eUu+mdouOCkuWPgueFp+OBl+OBpuOBj+OBoOOBlVxuIgorIuOBhCnjgILmjqjlpajjgpLnhKHoppbjgZfjgZ/jgYTloLTlkIjjgoTjg5fjg63jgrDjg6njg6DlgbTjga7oqqTjgorjgajogIPjgYjjgonjgozjgovloLTlkIjjgavjgIHnj77lnKjooajnpLrjgZVcbiIKKyLjgozjgabjgYTjgovnirbmhYvjgaflvLfliLbnmoTjgavmib/oq77jgZXjgZvjgZ/jgYTjgarjgonjgbDjgIHlpKfmloflrZcgYFEnIOOCkuS9v+eUqOOBl+OBpuOBj+OBoOOBleOBhOOAglxuIgorIlxuIgorIuODmOODq+ODl+OCkue1guS6huOBl+OBpuOCteODluODquOCueODiOOBq+aIu+OCi+OBq+OBryA844K544Oa44O844K5PiDjgq3jg7zjgpLlhaXlipvjgZfjgb7jgZnjgIJcbiIKKyJgPycg44Kt44O844Gn44OY44Or44OX44Gu5Y+C54Wn44GM44Gn44GN44KL44GT44Go44KS6Kaa44GI44Gm44GK44GE44Gm44GP44Gg44GV44GE44CCXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTI1Cittc2dpZCAiRGlzcGxheSwgcGFydCAxOiBwYWNrYWdlIGxpc3RpbmcgYW5kIHN0YXR1cyBjaGFycyIKK21zZ3N0ciAi6KGo56S6ICjjgZ3jga4xKTog44OR44OD44Kx44O844K45LiA6Kan44Go44K544OG44O844K/44K55paH5a2XIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjEyNQorIywgZnV6enkKK21zZ2lkICIiCisiVGhlIHRvcCBoYWxmIG9mIHRoZSBzY3JlZW4gc2hvd3MgYSBsaXN0IG9mIHBhY2thZ2VzLiAgRm9yIGVhY2ggcGFja2FnZSB5b3UgIgorInNlZVxuIgorImZvdXIgY29sdW1ucyBmb3IgaXRzIGN1cnJlbnQgc3RhdHVzIG9uIHRoZSBzeXN0ZW0gYW5kIG1hcmsuICBJbiB0ZXJzZSBtb2RlICIKKyIodXNlXG4iCisiYHYnIHRvIHRvZ2dsZSB2ZXJib3NlIGRpc3BsYXkpIHRoZXNlIGFyZSBzaW5nbGUgY2hhcmFjdGVycywgZnJvbSBsZWZ0IHRvICIKKyJyaWdodDpcbiIKKyJcbiIKKyIgRXJyb3IgZmxhZzogU3BhY2UgLSBubyBlcnJvciAoYnV0IHBhY2thZ2UgbWF5IGJlIGluIGJyb2tlbiBzdGF0ZSAtIHNlZSAiCisiYmVsb3cpXG4iCisiICAgICAgICAgICAgICBgUicgIC0gc2VyaW91cyBlcnJvciBkdXJpbmcgaW5zdGFsbGF0aW9uLCBuZWVkcyAiCisicmVpbnN0YWxsYXRpb247XG4iCisiIEluc3RhbGxlZCBzdGF0ZTogICAgIFNwYWNlICAgIC0gbm90IGluc3RhbGxlZDtcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgIGAqJyAgICAgLSBpbnN0YWxsZWQ7XG4iCisiICAgICAgICAgICAgICAgICAgICAgICBgLScgICAgIC0gbm90IGluc3RhbGxlZCBidXQgY29uZmlnIGZpbGVzIHJlbWFpbjtcbiIKKyIgICBwYWNrYWdlcyBpbiB0aGVzZSB7IGBVJyAgICAgLSB1bnBhY2tlZCBidXQgbm90IHlldCBjb25maWd1cmVkO1xuIgorIiAgIHN0YXRlcyBhcmUgbm90ICAgIHsgYEMnICAgICAtIGhhbGYtY29uZmlndXJlZCAoYW4gZXJyb3IgaGFwcGVuZWQpO1xuIgorIiAgIChxdWl0ZSkgcHJvcGVybHkgIHsgYEknICAgICAtIGhhbGYtaW5zdGFsbGVkIChhbiBlcnJvciBoYXBwZW5lZCk7XG4iCisiICAgaW5zdGFsbGVkICAgICAgICAgeyBgVycsYHQnIC0gdHJpZ2dlcnMgYXJlIGF3YWl0ZWQgcmVzcC4gcGVuZGluZy5cbiIKKyIgT2xkIG1hcms6IHdoYXQgd2FzIHJlcXVlc3RlZCBmb3IgdGhpcyBwYWNrYWdlIGJlZm9yZSBwcmVzZW50aW5nIHRoaXMgbGlzdDtcbiIKKyIgTWFyazogd2hhdCBpcyByZXF1ZXN0ZWQgZm9yIHRoaXMgcGFja2FnZTpcbiIKKyIgIGAqJzogbWFya2VkIGZvciBpbnN0YWxsYXRpb24gb3IgdXBncmFkZTtcbiIKKyIgIGAtJzogbWFya2VkIGZvciByZW1vdmFsLCBidXQgYW55IGNvbmZpZ3VyYXRpb24gZmlsZXMgd2lsbCByZW1haW47XG4iCisiICBgPSc6IG9uIGhvbGQ6IHBhY2thZ2Ugd2lsbCBub3QgYmUgcHJvY2Vzc2VkIGF0IGFsbDtcbiIKKyIgIGBfJzogbWFya2VkIGZvciBwdXJnZSBjb21wbGV0ZWx5IC0gZXZlbiByZW1vdmUgY29uZmlndXJhdGlvbjtcbiIKKyIgIGBuJzogcGFja2FnZSBpcyBuZXcgYW5kIGhhcyB5ZXQgdG8gYmUgbWFya2VkIGZvciBpbnN0YWxsL3JlbW92ZS8mYy5cbiIKKyJcbiIKKyJBbHNvIGRpc3BsYXllZCBhcmUgZWFjaCBwYWNrYWdlJ3MgUHJpb3JpdHksIFNlY3Rpb24sIG5hbWUsIGluc3RhbGxlZCBhbmRcbiIKKyJhdmFpbGFibGUgdmVyc2lvbiBudW1iZXJzIChzaGlmdC1WIHRvIGRpc3BsYXkvaGlkZSkgYW5kIHN1bW1hcnkgIgorImRlc2NyaXB0aW9uLlxuIgorbXNnc3RyICIiCisi55S76Z2i44Gu5LiK5Y2K6Z2i44Gr44Gv44OR44OD44Kx44O844K45LiA6Kan44GM6KGo56S644GV44KM44G+44GZ44CC44Gd44KM44Ge44KM44Gu44OR44OD44Kx44O844K444Gv44CB44K344K5XG4iCisi44OG44Og5LiK44Gn44Gu54++5Zyo44Gu44K544OG44O844K/44K544KS6KGo44GZNOOBpOOBruODnuODvOOCr+OBjOOBguOCiuOBvuOBmeOAguewoeaYk+ODouODvOODieOBp+OBr+OAgVxuIgorIjHmloflrZfjgafjgrnjg4bjg7zjgr/jgrnjgYzooajjgZXjgozjgabjgYrjgorjgIHlt6bjgYvjgonmrKHjga7jgojjgYbjgarmhI/lkbPjgpLmjIHjgaHjgb7jgZlcbiIKKyIo6Kmz57Sw6KGo56S644GvIGB2JyDjgafjg4jjgrDjg6vjgafjgY3jgb7jgZkpOlxuIgorIlxuIgorIiDjgqjjg6njg7zjg5Xjg6njgrA6IOepuuashCAtIOOCqOODqeODvOOBquOBl1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAo44GX44GL44GX44CB44OR44OD44Kx44O844K444GM5aOK44KM44Gf54q25oWL44Gu5aC05ZCI44GC44KKIC0g5LiL6KiY5Y+C54WnKVxuIgorIiAgICAgICAgICAgICAgYFInICAgLSDjgqTjg7Pjgrnjg4jjg7zjg6vkuK3jgavph43lpKfjgarjgqjjg6njg7znmbrnlJ/jgIHlho3jgqTjg7Pjgrnjg4jjg7zjg6vjgYzlv4UiCisi6KaBXG4iCisiIOOCpOODs+OCueODiOODvOODq+eKtuaFizogIOepuuashCAgLSDmnKrjgqTjg7Pjgrnjg4jjg7zjg6tcbiIKKyIgICAgICAgICAgICAgICAgICAgICBgKicgIC0g44Kk44Oz44K544OI44O844Or5riI44G/XG4iCisiICAgICAgICAgICAgICAgICAgICAgYC0nICAtIOacquOCpOODs+OCueODiOODvOODqyAo6Kit5a6a44OV44Kh44Kk44Or44GM5q6L5a2YKVxuIgorIiAgICAgIOasoeOBrueKtuaFi+OBq+OBguOCi+ODkeODg+OCseODvOOCuOOBr+WjiuOCjOOBpuOBhOOBvuOBmVxuIgorIiAgICAgICAgICAgICAgICAgICAgIGBVJyAgLSDlsZXplovmuIjjgb/jgafjgYLjgovjgYzoqK3lrprjgZfjgabjgYTjgarjgYRcbiIKKyIgICAgICAgICAgICAgICAgICAgICBgQycgIC0g5Y2K6Kit5a6aICjoqK3lrprkuK3jgavjgqjjg6njg7zjgYznmbrnlJ8pXG4iCisiICAgICAgICAgICAgICAgICAgICAgYEknICAtIOWNiuOCpOODs+OCueODiOODvOODqyAo44Ko44Op44O844GM55m655SfKVxuIgorIiDliY3lm57jg57jg7zjgq86IOePvuWcqOihqOekuuOBruODkeODg+OCseODvOOCuOS4gOimp+S7peWJjeOBruipsuW9k+ODkeODg+OCseODvOOCuOOBq+WvvuOBmeOCi+imgeaxglxuIgorIiDku4rlm57jg57jg7zjgq86IOipsuW9k+ODkeODg+OCseODvOOCuOOBq+WvvuOBmeOCi+imgeaxglxuIgorIiAgYConOiDjgqTjg7Pjgrnjg4jjg7zjg6vjgIHjgb7jgZ/jga/jgqLjg4Pjg5fjgrDjg6zjg7zjg4njgajjgZfjgabjg57jg7zjgq9cbiIKKyIgIGAtJzog5YmK6Zmk44Go44GX44Gm44Oe44O844Kv44CC6Kit5a6a44OV44Kh44Kk44Or44Gv5YmK6Zmk44GX44Gq44GEXG4iCisiICBgPSc6IOe2reaMgSAoaG9sZCnjgILjg5Hjg4PjgrHjg7zjgrjjga/lh6bnkIbjgZXjgozjgarjgYTjgIJcbiIKKyIgIGBfJzog5a6M5YWo5YmK6Zmk44Go44GX44Gm44Oe44O844KvIC0g6Kit5a6a44OV44Kh44Kk44Or44KC5YmK6Zmk44GZ44KLXG4iCisiICBgbic6IOaWsOimj+ODkeODg+OCseODvOOCuOOAgeOCpOODs+OCueODiOODvOODqy/liYrpmaTnrYnjga7jg57jg7zjgq/jgYzmnKroqK3lrppcbiIKKyJcbiIKKyLjgZ3jgozjgZ7jgozjga7jg5Hjg4PjgrHjg7zjgrjjgavjgaTjgYTjgabjgIHjgZ3jga7lhKrlhYjluqbjgIHjgrvjgq/jgrfjg6fjg7PjgIHjg5Hjg4PjgrHjg7zjgrjlkI3jgIHjgqTjg7PjgrlcbiIKKyLjg4jjg7zjg6vmuIjjgb/jg5Djg7zjgrjjg6fjg7PjgajliKnnlKjlj6/og73jg5Djg7zjgrjjg6fjg7MoU2hpZnQtViDjgafooajnpLov6Z2e6KGo56S65YiH44KK5pu/44GIKeOAgVxuIgorIuODkeODg+OCseODvOOCuOimgee0hOiqrOaYjuOCguihqOekuuOBleOCjOOBvuOBmeOAglxuIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjE1MgorbXNnaWQgIkRpc3BsYXksIHBhcnQgMjogbGlzdCBoaWdobGlnaHQ7IGluZm9ybWF0aW9uIGRpc3BsYXkiCittc2dzdHIgIuihqOekuiAo44Gd44GuMik6IOODkeODg+OCseODvOOCuOS4gOimp+OBruODj+OCpOODqeOCpOODiOOAguaDheWgseeUu+mdoiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxNTIKK21zZ2lkICIiCisiKiBIaWdobGlnaHQ6IE9uZSBsaW5lIGluIHRoZSBwYWNrYWdlIGxpc3Qgd2lsbCBiZSBoaWdobGlnaHRlZC4gIEl0ICIKKyJpbmRpY2F0ZXNcbiIKKyIgIHdoaWNoIHBhY2thZ2Uocykgd2lsbCBiZSBhZmZlY3RlZCBieSBwcmVzc2VzIG9mIGArJywgYC0nIGFuZCBgXycuXG4iCisiXG4iCisiKiBUaGUgZGl2aWRpbmcgbGluZSBpbiB0aGUgbWlkZGxlIG9mIHRoZSBzY3JlZW4gc2hvd3MgYSBicmllZiBleHBsYW5hdGlvbiAiCisib2ZcbiIKKyIgIHRoZSBzdGF0dXMgb2YgdGhlIGN1cnJlbnRseS1oaWdobGlnaHRlZCBwYWNrYWdlLCBvciBhIGRlc2NyaXB0aW9uIG9mICIKKyJ3aGljaFxuIgorIiAgZ3JvdXAgaXMgaGlnaGxpZ2h0ZWQgaWYgYSBncm91cCBsaW5lIGlzLiAgSWYgeW91IGRvbid0IHVuZGVyc3RhbmQgdGhlXG4iCisiICBtZWFuaW5nIG9mIHNvbWUgb2YgdGhlIHN0YXR1cyBjaGFyYWN0ZXJzIGRpc3BsYXllZCwgZ28gdG8gdGhlIHJlbGV2YW50XG4iCisiICBwYWNrYWdlIGFuZCBsb29rIGF0IHRoaXMgZGl2aWRlciBsaW5lLCBvciB1c2UgdGhlIGB2JyBrZXkgZm9yIGEgdmVyYm9zZVxuIgorIiAgZGlzcGxheSAocHJlc3MgYHYnIGFnYWluIHRvIGdvIGJhY2sgdG8gdGhlIHRlcnNlIGRpc3BsYXkpLlxuIgorIlxuIgorIiogVGhlIGJvdHRvbSBvZiB0aGUgc2NyZWVuIHNob3dzIG1vcmUgaW5mb3JtYXRpb24gYWJvdXQgdGhlXG4iCisiICBjdXJyZW50bHktaGlnaGxpZ2h0ZWQgcGFja2FnZSAoaWYgdGhlcmUgaXMgb25seSBvbmUpLlxuIgorIlxuIgorIiAgSXQgY2FuIHNob3cgYW4gZXh0ZW5kZWQgZGVzY3JpcHRpb24gb2YgdGhlIHBhY2thZ2UsIHRoZSBpbnRlcm5hbCBwYWNrYWdlXG4iCisiICBjb250cm9sIGRldGFpbHMgKGVpdGhlciBmb3IgdGhlIGluc3RhbGxlZCBvciBhdmFpbGFibGUgdmVyc2lvbiBvZiB0aGVcbiIKKyIgIHBhY2thZ2UpLCBvciBpbmZvcm1hdGlvbiBhYm91dCBjb25mbGljdHMgYW5kIGRlcGVuZGVuY2llcyBpbnZvbHZpbmcgdGhlXG4iCisiICBjdXJyZW50IHBhY2thZ2UgKGluIGNvbmZsaWN0L2RlcGVuZGVuY3kgcmVzb2x1dGlvbiBzdWJsaXN0cykuXG4iCisiXG4iCisiICBVc2UgdGhlIGBpJyBrZXkgdG8gY3ljbGUgdGhyb3VnaCB0aGUgZGlzcGxheXMsIGFuZCBgSScgdG8gaGlkZSB0aGVcbiIKKyIgIGluZm9ybWF0aW9uIGRpc3BsYXkgb3IgZXhwYW5kIGl0IHRvIHVzZSBhbG1vc3QgYWxsIG9mIHRoZSBzY3JlZW4uXG4iCittc2dzdHIgIiIKKyIqIOODj+OCpOODqeOCpOODiDog44OR44OD44Kx44O844K45LiA6Kan44Gu5Lit44GnMeihjOOBjOODj+OCpOODqeOCpOODiOOBleOCjOOBpuOBhOOBvuOBmeOAguOBk+OCjOOBr+OAgVxuIgorIiAgYCsn44CBJy0n44CBYF8nIOOBruOCreODvOaTjeS9nOOBjOW9semfv+OBmeOCi+ODkeODg+OCseODvOOCuOOCkuekuuOBl+OBpuOBhOOBvuOBmeOAglxuIgorIlxuIgorIiog55S76Z2i5Lit5aSu44Gr44Gv5YiG5Ymy6KGM44GM44GC44KK44CB54++5Zyo44OP44Kk44Op44Kk44OI44GV44KM44Gm44GE44KL44OR44OD44Kx44O844K444Gu44K544OG44O844K/44K5XG4iCisiICDjga7nsKHmvZTjgaroqqzmmI7jgIHjgb7jgZ/jga/jgrDjg6vjg7zjg5fooYzjgYzjg4/jgqTjg6njgqTjg4jjgZXjgozjgabjgYTjgovloLTlkIjjga/oqbLlvZPjgrDjg6vjg7zjg5fjga5cbiIKKyIgIOiqrOaYjuOBjOekuuOBleOCjOOBpuOBhOOBvuOBmeOAguihqOekuuOBleOCjOOBpuOBhOOCi+OCueODhuODvOOCv+OCueaWh+Wtl+OBruaEj+WRs+OBjOOCj+OBi+OCieOBquOBhOWgtCIKKyLlkIjjgIFcbiIKKyIgIOipsuW9k+ODkeODg+OCseODvOOCuOOBq+enu+WLleOBl+OBpuWIhuWJsuihjOOBruihqOekuuOCkuimi+OBpuOBj+OBoOOBleOBhOOAguOBvuOBn+OBr+OAgWB2JyDjgq3jg7zjgpJcbiIKKyIgIOS9v+OBo+OBpuips+e0sOihqOekuuOBq+WIh+OCiuabv+OBiOOCi+OBk+OBqOOCguOBp+OBjeOBvuOBmSAo44KC44GG5LiA5bqmIGB2JyDjgpLlhaXlipvjgZnjgovjgajnsKHmmJNcbiIKKyIgIOihqOekuuOBq+aIu+OCiuOBvuOBmSnjgIJcbiIKKyJcbiIKKyIqIOeUu+mdouS4i+WNiumdouOBr+ePvuWcqOODj+OCpOODqeOCpOODiOOBleOCjOOBpuOBhOOCi+ODkeODg+OCseODvOOCuCAo44Gd44KM44GM44Gy44Go44Gk44Gg44GR44Gu5aC05ZCIKVxuIgorIiAg44Gu5oOF5aCx44GM56S644GV44KM44Gm44GE44G+44GZ44CCXG4iCisiXG4iCisiICDooajnpLrlj6/og73jgarmg4XloLHjga/jgIHjg5Hjg4PjgrHjg7zjgrjjga7oqbPntLDoqqzmmI7jgIEo44Kk44Oz44K544OI44O844Or5riI44G/44CB44G+44Gf44Gv5Yip55So5Y+vXG4iCisiICDog73jg5Djg7zjgrjjg6fjg7Pjga4pIOODkeODg+OCseODvOOCuOOCs+ODs+ODiOODreODvOODq+ODleOCoeOCpOODq+OBruiomOi/sOOAgSjnq7blkIgv5L6d5a2Y6Zai5L+C6Kej5rG6XG4iCisiICDjgrXjg5bjg6rjgrnjg4jjgafjga8pIOePvuWcqOOBruODkeODg+OCseODvOOCuOOBruaMgeOBpOertuWQiC/kvp3lrZjplqLkv4Lmg4XloLHjgafjgZnjgIJcbiIKKyJcbiIKKyIgIOihqOekuuaDheWgseOBruWIh+OCiuabv+OBiOOBryBgaScg44Kt44O844Gn6KGM44GI44G+44GZ44CCYEknIOOCreODvOOBp+aDheWgseeUu+mdouOCkumdnuihqOekuuOBq+OBl1xuIgorIiAg44Gm44OR44OD44Kx44O844K45LiA6Kan44KS5YWo55S76Z2i44Gn6KGo56S644GV44Gb44KL44GT44Go44GM44Gn44GN44G+44GZ44CCXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTc2Cittc2dpZCAiSW50cm9kdWN0aW9uIHRvIG1ldGhvZCBzZWxlY3Rpb24gZGlzcGxheSIKK21zZ3N0ciAi44Oh44K944OD44OJ6YG45oqe55S76Z2i44Gu5omL5byV44GNIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjE3NgorbXNnaWQgIiIKKyJkc2VsZWN0IGFuZCBkcGtnIGNhbiBkbyBhdXRvbWF0aWMgaW5zdGFsbGF0aW9uLCBsb2FkaW5nIHRoZSBwYWNrYWdlIGZpbGVzIHRvICIKKyJiZVxuIgorImluc3RhbGxlZCBmcm9tIG9uZSBvZiBhIG51bWJlciBvZiBkaWZmZXJlbnQgcG9zc2libGUgcGxhY2VzLlxuIgorIlxuIgorIlRoaXMgbGlzdCBhbGxvd3MgeW91IHRvIHNlbGVjdCBvbmUgb2YgdGhlc2UgaW5zdGFsbGF0aW9uIG1ldGhvZHMuXG4iCisiXG4iCisiTW92ZSB0aGUgaGlnaGxpZ2h0IHRvIHRoZSBtZXRob2QgeW91IHdpc2ggdG8gdXNlLCBhbmQgaGl0IEVudGVyLiAgWW91IHdpbGwgIgorInRoZW5cbiIKKyJiZSBwcm9tcHRlZCBmb3IgdGhlIGluZm9ybWF0aW9uIHJlcXVpcmVkIHRvIGRvIHRoZSBpbnN0YWxsYXRpb24uXG4iCisiXG4iCisiQXMgeW91IG1vdmUgdGhlIGhpZ2hsaWdodCBhIGRlc2NyaXB0aW9uIG9mIGVhY2ggbWV0aG9kLCB3aGVyZSBhdmFpbGFibGUsIGlzXG4iCisiZGlzcGxheWVkIGluIHRoZSBib3R0b20gaGFsZiBvZiB0aGUgc2NyZWVuLlxuIgorIlxuIgorIklmIHlvdSB3aXNoIHRvIHF1aXQgd2l0aG91dCBjaGFuZ2luZyBhbnl0aGluZyB1c2UgdGhlIGB4JyBrZXkgd2hpbGUgaW4gdGhlICIKKyJsaXN0XG4iCisib2YgaW5zdGFsbGF0aW9uIG1ldGhvZHMuXG4iCisiXG4iCisiQSBmdWxsIGxpc3Qgb2Yga2V5c3Ryb2tlcyBpcyBhdmFpbGFibGUgYnkgcHJlc3NpbmcgYGsnIG5vdywgb3IgZnJvbSB0aGUgIgorImhlbHBcbiIKKyJtZW51IHJlYWNoYWJsZSBieSBwcmVzc2luZyBgPycuXG4iCittc2dzdHIgIiIKKyJkc2VsZWN0IOOBqCBkcGtnIOOBr+iHquWLleOCpOODs+OCueODiOODvOODq+OBjOWPr+iDveOBp+OBguOCiuOAgeOCpOODs+OCueODiOODvOODq+OBmeOCi+ODkeODg+OCseODvOOCuFxuIgorIuODleOCoeOCpOODq+OCkuikh+aVsOOBruWgtOaJgOOBi+OCieODreODvOODieOBp+OBjeOBvuOBmeOAglxuIgorIlxuIgorIuOBk+OBruS4gOimp+OBi+OCieOCpOODs+OCueODiOODvOODq+ODoeOCveODg+ODieOCkumBuOaKnuOBmeOCi+OBk+OBqOOBjOOBp+OBjeOBvuOBmeOAglxuIgorIlxuIgorIuS9v+eUqOOBl+OBn+OBhOODoeOCveODg+ODieOBq+ODj+OCpOODqeOCpOODiOOCkuenu+WLleOBl+OAgUVudGVyIOOCreODvOOCkuWFpeWKm+OBl+OBpuOBj+OBoOOBleOBhOOAguasoSIKKyLjgavjgIFcbiIKKyLjgZ3jga7jgqTjg7Pjgrnjg4jjg7zjg6vjg6Hjgr3jg4Pjg4njgpLlrp/ooYzjgZnjgovjgZ/jgoHjgavlv4XopoHjgarmg4XloLHjgpLlhaXlipvjgZnjgovjgojjgYbmsYLjgoHjgonjgozjgb4iCisi44GZ44CCXG4iCisiXG4iCisi44OP44Kk44Op44Kk44OI44Gu56e75YuV5pmC44Gr44Gv44CB55S76Z2i44Gu5LiL5Y2K5YiG44Gr44Gd44KM44Ge44KM44Gu44Oh44K944OD44OJ44Gu6Kqs5piO44GMICjjgoLjgZfjgYLjgowiCisi44GwKVxuIgorIuihqOekuuOBleOCjOOBvuOBmeOAglxuIgorIlxuIgorIuS9leOCguWkieabtOOBm+OBmuOBq+e1guS6huOBl+OBn+OBhOWgtOWQiOOBr+OAgeOCpOODs+OCueODiOODvOODq+ODoeOCveODg+ODieS4gOimp+eUu+mdouOBpyBgeCcg44Kt44O844KS5YWlIgorIuWKm1xuIgorIuOBl+OBpuOBj+OBoOOBleOBhOOAglxuIgorIlxuIgorIuOCreODvOaTjeS9nOS4gOimp+OCkuWPgueFp+OBmeOCi+OBq+OBr+OAgeOBk+OBrueUu+mdouOBp+OAgeOBvuOBn+OBryBgPycg44Kt44O844KS5YWl5Yqb44GX44Gm44OY44Or44OX44OhXG4iCisi44OL44Ol44O855S76Z2i44Gr56e744Gj44Gm44GL44KJIGBrJyDjgq3jg7zjgpLlhaXlipvjgZfjgabjgY/jgaDjgZXjgYTjgIJcbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxOTYKK21zZ2lkICJLZXlzdHJva2VzIGZvciBtZXRob2Qgc2VsZWN0aW9uIgorbXNnc3RyICLjg6Hjgr3jg4Pjg4npgbjmip7nlLvpnaLjga7jgq3jg7zmk43kvZwiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTk2CisjLCBmdXp6eQorbXNnaWQgIiIKKyJNb3Rpb24ga2V5czogTmV4dC9QcmV2aW91cywgVG9wL0VuZCwgVXAvRG93biwgQmFja3dhcmRzL0ZvcndhcmRzOlxuIgorIiAgaiwgRG93bi1hcnJvdyAgICAgICAgIGssIFVwLWFycm93ICAgICAgICAgICAgIG1vdmUgaGlnaGxpZ2h0XG4iCisiICBOLCBQYWdlLWRvd24sIFNwYWNlICAgUCwgUGFnZS11cCwgQmFja3NwYWNlICAgc2Nyb2xsIGxpc3QgYnkgMSBwYWdlXG4iCisiICBebiAgICAgICAgICAgICAgICAgICAgXnAgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGxpc3QgYnkgMSBsaW5lXG4iCisiICB0LCBIb21lICAgICAgICAgICAgICAgZSwgRW5kICAgICAgICAgICAgICAgICAganVtcCB0byB0b3AvZW5kIG9mIGxpc3RcbiIKKyIgIHUgICAgICAgICAgICAgICAgICAgICBkICAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyBieSAxIHBhZ2VcbiIKKyIgIF51ICAgICAgICAgICAgICAgICAgICBeZCAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyBieSAxIGxpbmVcbiIKKyIgIEIsIExlZnQtYXJyb3cgICAgICAgICBGLCBSaWdodC1hcnJvdyAgICAgICAgICBwYW4gZGlzcGxheSBieSAxLzMgc2NyZWVuXG4iCisiICBeYiAgICAgICAgICAgICAgICAgICAgXmYgICAgICAgICAgICAgICAgICAgICAgcGFuIGRpc3BsYXkgYnkgMSBjaGFyYWN0ZXJcbiIKKyIoVGhlc2UgYXJlIHRoZSBzYW1lIG1vdGlvbiBrZXlzIGFzIGluIHRoZSBwYWNrYWdlIGxpc3QgZGlzcGxheS4pXG4iCisiXG4iCisiUXVpdDpcbiIKKyIgUmV0dXJuLCBFbnRlciAgICBzZWxlY3QgdGhpcyBtZXRob2QgYW5kIGdvIHRvIGl0cyBjb25maWd1cmF0aW9uIGRpYWxvZ3VlXG4iCisiIHgsIFggICAgICAgICAgICAgZXhpdCB3aXRob3V0IGNoYW5naW5nIG9yIHNldHRpbmcgdXAgdGhlIGluc3RhbGxhdGlvbiAiCisibWV0aG9kXG4iCisiXG4iCisiTWlzY2VsbGFuZW91czpcbiIKKyIgID8sIEhlbHAsIEYxICAgICAgcmVxdWVzdCBoZWxwXG4iCisiIF5sICAgICAgICAgICAgICAgIHJlZHJhdyBkaXNwbGF5XG4iCisiICAvICAgICAgICAgICAgICAgIHNlYXJjaCAoanVzdCByZXR1cm4gdG8gY2FuY2VsKVxuIgorIiAgXFwgICAgICAgICAgICAgICAgcmVwZWF0IGxhc3Qgc2VhcmNoXG4iCittc2dzdHIgIiIKKyLnp7vli5Xjgq3jg7w6IOasoeWAmeijnC/liY3lgJnoo5zjgIHlhYjpoK0v5pyA5b6M5bC+44K444Oj44Oz44OX44CB5LiKL+S4iy/lt6Yv5Y+z44K544Kv44Ot44O844OrOlxuIgorIiAgbiwg5LiL55+i5Y2w44Kt44O8LCBqICAgICAgcCwg5LiK55+i5Y2w44Kt44O8LCBrICAgICAgICDjg4/jgqTjg6njgqTjg4jjgpLnp7vli5VcbiIKKyIgIE4sIFBhZ2UtZG93biwgU3BhY2UgICBQLCBQYWdlLXVwLCBCYWNrc3BhY2UgICDjg6rjgrnjg4jjgpIgMSDjg5rjg7zjgrjjgrnjgq/jg63jg7zjg6tcbiIKKyIgIF5uICAgICAgICAgICAgICAgICAgICBecCAgICAgICAgICAgICAgICAgICAgICDjg6rjgrnjg4jjgpIgMSDooYzjgrnjgq/jg63jg7zjg6tcbiIKKyIgIHQsIEhvbWUgICAgICAgICAgICAgICBlLCBFbmQgICAgICAgICAgICAgICAgICDjg6rjgrnjg4jjga7lhYjpoK0v5pyA5b6M44Gr44K444Oj44Oz44OXXG4iCisiICB1ICAgICAgICAgICAgICAgICAgICAgZCAgICAgICAgICAgICAgICAgICAgICAg5oOF5aCx44KSIDEg44Oa44O844K444K544Kv44Ot44O844OrXG4iCisiICBedSAgICAgICAgICAgICAgICAgICAgXmQgICAgICAgICAgICAgICAgICAgICAg5oOF5aCx44KSIDEg6KGM44K544Kv44Ot44O844OrXG4iCisiICBCLCDlt6bnn6LljbDjgq3jg7wgICAgICAgICBGLCDlj7Pnn6LljbDjgq3jg7wgICAgICAgICAgIDEvMyDnlLvpnaLjgaDjgZHmsLTlubPnp7vli5VcbiIKKyIgIF5iICAgICAgICAgICAgICAgICAgICBeZiAgICAgICAgICAgICAgICAgICAgICAxIOaWh+Wtl+OBoOOBkeawtOW5s+enu+WLlVxuIgorIijjgZPjgozjgonjga/jg5Hjg4PjgrHjg7zjgrjkuIDopqfnlLvpnaLjgajlkIzjgZjnp7vli5Xjgq3jg7zjgafjgZnjgIIpXG4iCisiXG4iCisi57WC5LqGOlxuIgorIiDjg6rjgr/jg7zjg7MsIEVudGVyICAg44OP44Kk44Op44Kk44OI44GV44KM44Gf44Oh44K944OD44OJ44KS6YG45oqe44GX44CB44Gd44Gu6Kit5a6a55S76Z2i44G46YCy44KAXG4iCisiIHgsIFggICAgICAgICAgICAgIOOCpOODs+OCueODiOODvOODq+ODoeOCveODg+ODieOCkuWkieabtOOAgeOBvuOBn+OBr+ioreWumuOBm+OBmuOBq+e1guS6huOBmeOCi1xuIgorIlxuIgorIuOBneOBruS7ljpcbiIKKyIgID8sIEhlbHAsIEYxICAgICAg44OY44Or44OX44KS5Y+C54WnXG4iCisiIF5sICAgICAgICAgICAgICAgIOeUu+mdouOCkuWGjeaPj+eUu1xuIgorIiAgLyAgICAgICAgICAgICAgICDmpJzntKIgKOODquOCv+ODvOODs+OCreODvOOBp+OCreODo+ODs+OCu+ODqylcbiIKKyIgIFxcICAgICAgICAgICAgICAgIOaknOe0ouasoeWAmeijnFxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6NjAKK21zZ2lkICJUeXBlIGRzZWxlY3QgLS1oZWxwIGZvciBoZWxwLiIKK21zZ3N0ciAi44OY44Or44OX44GvIGRzZWxlY3QgLS1oZWxwIOOBp+WPgueFp+OBp+OBjeOBvuOBmeOAgiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0MworbXNnaWQgImEiCittc2dzdHIgImEiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDMKK21zZ2lkICJbQV1jY2VzcyIKK21zZ3N0ciAi44Ki44Kv44K744K5KGEpIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQzCittc2dpZCAiQ2hvb3NlIHRoZSBhY2Nlc3MgbWV0aG9kIHRvIHVzZS4iCittc2dzdHIgIuS9v+eUqOOBmeOCi+OCouOCr+OCu+OCueaWueazleOCkumBuOaKnuOBmeOCi+OAgiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NAorbXNnaWQgInUiCittc2dzdHIgInUiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDQKK21zZ2lkICJbVV1wZGF0ZSIKK21zZ3N0ciAi5pu05pawKHUpIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ0Cittc2dpZCAiVXBkYXRlIGxpc3Qgb2YgYXZhaWxhYmxlIHBhY2thZ2VzLCBpZiBwb3NzaWJsZS4iCittc2dzdHIgIuWPr+iDveOBquOCieWPluW+l+WPr+iDveODkeODg+OCseODvOOCuOS4gOimp+OCkuabtOaWsOOBmeOCi+OAgiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NQorbXNnaWQgInMiCittc2dzdHIgInMiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDUKK21zZ2lkICJbU11lbGVjdCIKK21zZ3N0ciAi6YG45oqeKHMpIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ1Cittc2dpZCAiUmVxdWVzdCB3aGljaCBwYWNrYWdlcyB5b3Ugd2FudCBvbiB5b3VyIHN5c3RlbS4iCittc2dzdHIgIuOCt+OCueODhuODoOOBq+OCpOODs+OCueODiOODvOODq+OBl+OBn+OBhOODkeODg+OCseODvOOCuOOCkumBuOaKnuOBmeOCi+OAgiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NgorbXNnaWQgImkiCittc2dzdHIgImkiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDYKK21zZ2lkICJbSV1uc3RhbGwiCittc2dzdHIgIuWwjuWFpShpKSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NgorbXNnaWQgIkluc3RhbGwgYW5kIHVwZ3JhZGUgd2FudGVkIHBhY2thZ2VzLiIKK21zZ3N0ciAi6KaB5rGC44GX44Gf44OR44OD44Kx44O844K444Gu44Kk44Oz44K544OI44O844Or44O75pu05paw44KS6KGM44GG44CCIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ3Cittc2dpZCAiYyIKK21zZ3N0ciAiYyIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NworbXNnaWQgIltDXW9uZmlnIgorbXNnc3RyICLoqK3lrpooYykiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDcKK21zZ2lkICJDb25maWd1cmUgYW55IHBhY2thZ2VzIHRoYXQgYXJlIHVuY29uZmlndXJlZC4iCittc2dzdHIgIuacquioreWumuOBruODkeODg+OCseODvOOCuOOCkuioreWumuOBmeOCi+OAgiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OAorbXNnaWQgInIiCittc2dzdHIgInIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDgKK21zZ2lkICJbUl1lbW92ZSIKK21zZ3N0ciAi5YmK6ZmkKHIpIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ4Cittc2dpZCAiUmVtb3ZlIHVud2FudGVkIHNvZnR3YXJlLiIKK21zZ3N0ciAi5LiN5b+F6KaB44Gq44K944OV44OI44KS5YmK6Zmk44GZ44KL44CCIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ5Cittc2dpZCAicSIKK21zZ3N0ciAicSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OQorbXNnaWQgIltRXXVpdCIKK21zZ3N0ciAi57WC5LqGKHEpIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ5Cittc2dpZCAiUXVpdCBkc2VsZWN0LiIKK21zZ3N0ciAiZHNlbGVjdCDjgpLntYLkuobjgZnjgovjgIIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNTAKK21zZ2lkICJtZW51IgorbXNnc3RyICLjg6Hjg4vjg6Xjg7wiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuIGAlcycgcGFja2FnZSBoYW5kbGluZyBmcm9udGVuZCB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICJEZWJpYW4gYCVzJyDjg5Hjg4PjgrHjg7zjgrjnrqHnkIbjg5Xjg63jg7Pjg4jjgqjjg7Pjg4kg44OQ44O844K444On44OzICVz44CCXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNTgKK21zZ2lkICIiCisiQ29weXJpZ2h0IChDKSAxOTk0LTE5OTYgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKK21zZ3N0ciAiIgorIkNvcHlyaWdodCAoQykgMTk5NC0xOTk2IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNjIKKyMsIGZ1enp5Cittc2dpZCAiIgorIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgb3JcbiIKKyJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKK21zZ3N0ciAiIgorIuOBk+OCjOOBr+ODleODquODvOOCveODleODiOOBp+OBmTsg44Kz44OU44O85p2h5Lu244Gr44Gk44GE44Gm44GvIEdOVSDkuIDoiKzlhazmnInkvb/nlKjoqLHoq77mm7jjg5Djg7zjgrjjg6ciCisi44OzXG4iCisiMiDjgoLjgZfjgY/jga/jgZ3jgozku6XpmY3jgpLlj4LnhafjgZfjgabjgY/jgaDjgZXjgYTjgILjgZPjga7jgr3jg5Xjg4jjgqbjgqfjgqLjga/nhKHkv53oqLzjgafjgZnjgIJcbiIKKyLjgrPjg5Tjg7zjg6njgqTjg4jjgYrjgojjgbPjg6njgqTjgrvjg7Pjgrnjga7oqbPntLDjga8gJXMgLS1saWNlbmNlIOOCkuWPgueFp+OBl+OBpuOBj+OBoOOBleOBhOOAglxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTcyIGRzZWxlY3QvbWFpbi5jYzoyMjAKK21zZ2lkICI8c3RhbmRhcmQgb3V0cHV0PiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gWzxhY3Rpb24+IC4uLl1cbiIKKyJcbiIKK21zZ3N0ciAi5L2/44GE5pa5OiAlcyBbPOOCquODl+OCt+ODp+ODsz4gLi4uXSBbPOOCouOCr+OCt+ODp+ODsz4gLi4uXVxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTg3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMuXG4iCisiICAtLWV4cGVydCAgICAgICAgICAgICAgICAgICBUdXJuIG9uIGV4cGVydCBtb2RlLlxuIgorIiAgLS1kZWJ1ZyA8ZmlsZT4gfCAtRDxmaWxlPiAgVHVybiBvbiBkZWJ1Z2dpbmcsIHNlbmRpbmcgb3V0cHV0IHRvIDxmaWxlPi5cbiIKKyIgIC0tY29sb3VyIHwgLS1jb2xvciBzY3JlZW5wYXJ0Oltmb3JlZ3JvdW5kXSxbYmFja2dyb3VuZF1bOmF0dHJbK2F0dHIrLi5dXVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ29uZmlndXJlIHNjcmVlbiBjb2xvdXJzLlxuIgorIlxuIgorbXNnc3RyICIiCisi44Kq44OX44K344On44OzOlxuIgorIiAgLS1hZG1pbmRpciA844OH44Kj44Os44Kv44OI44OqPiAgJXMg44Gu5Luj44KP44KK44GrIDzjg4fjgqPjg6zjgq/jg4jjg6o+IOOCkuS9v+OBhlxuIgorIiAgLS1leHBlcnQgICAgICAgICAgICAgICAgICAg5LiK57Sa6ICF44Oi44O844OJ44Gr5YiH44KK5pu/44GI44KLXG4iCisiICAtLWRlYnVnIDzjg5XjgqHjgqTjg6s+IHwgLUQ844OV44Kh44Kk44OrPiAg44OH44OQ44OD44Kw44Oi44O844OJ44Gr5YiH44KK5pu/44GI44CB5Ye65Yqb44KSPOODleOCoeOCpCIKKyLjg6s+44Gr6YCB44KLXG4iCisiICAtLWNvbG91ciB8IC0tY29sb3Ig55S76Z2iOlvliY3mma9dLFvog4zmma9dWzrlsZ7mgKdbK+WxnuaApysuLl1dXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICDnlLvpnaLjga7oibLjgpLoqK3lrprjgZnjgotcbiIKKyJcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE5NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgICAgU2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgIFNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCittc2dzdHIgIiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICAgIOOBk+OBruODmOODq+ODl+ODoeODg+OCu+ODvOOCuOOCkuihqOekulxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICAg44OQ44O844K444On44Oz44KS6KGo56S6XG4iCisiICAtLWxpY2Vuc2UgfCAtLWxpY2VuY2UgICAgICDjg6njgqTjgrvjg7PjgrnjgpLooajnpLpcbiIKKyJcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjIwMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQWN0aW9uczpcbiIKKyIgIGFjY2VzcyB1cGRhdGUgc2VsZWN0IGluc3RhbGwgY29uZmlnIHJlbW92ZSBxdWl0XG4iCisiXG4iCittc2dzdHIgIiIKKyLjgqLjgq/jgrfjg6fjg7M6XG4iCisiICBhY2Nlc3MgdXBkYXRlIHNlbGVjdCBpbnN0YWxsIGNvbmZpZyByZW1vdmUgcXVpdFxuIgorIlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjA1CisjLCBjLWZvcm1hdAorbXNnaWQgIlNjcmVlbnBhcnRzOlxuIgorbXNnc3RyICLnlLvpnaLpg6g6XG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ29sb3VyczpcbiIKK21zZ3N0ciAi6ImyOlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjE1CisjLCBjLWZvcm1hdAorbXNnaWQgIkF0dHJpYnV0ZXM6XG4iCittc2dzdHIgIuWxnuaApzpcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjIzMworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBvcGVuIGRlYnVnIGZpbGUgYCUuMjU1cydcbiIKK21zZ3N0ciAi44OH44OQ44OD44Kw44OV44Kh44Kk44OrIGAlLjI1MHMnIOOCkuOCquODvOODl+ODs+OBp+OBjeOBvuOBm+OCk+OBp+OBl+OBn1xuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjUzCisjLCBjLWZvcm1hdAorbXNnaWQgIkludmFsaWQgJXMgYCVzJ1xuIgorbXNnc3RyICLnhKHlirnjgaogJXMgYCVzJ1xuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjcwCittc2dpZCAic2NyZWVuIHBhcnQiCittc2dzdHIgIueUu+mdoumDqCIKKworIzogZHNlbGVjdC9tYWluLmNjOjI3NgorbXNnaWQgIk51bGwgY29sb3VyIHNwZWNpZmljYXRpb25cbiIKK21zZ3N0ciAi6Imy44Gu5oyH5a6a44GM56m644Gn44GZXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyODQgZHNlbGVjdC9tYWluLmNjOjI4OQorbXNnaWQgImNvbG91ciIKK21zZ3N0ciAi6ImyIgorCisjOiBkc2VsZWN0L21haW4uY2M6Mjk3Cittc2dpZCAiY29sb3VyIGF0dHJpYnV0ZSIKK21zZ3N0ciAi6Imy5bGe5oCnIgorCisjOiBkc2VsZWN0L21haW4uY2M6MzI5Cittc2dpZCAiVGVybWluYWwgZG9lcyBub3QgYXBwZWFyIHRvIHN1cHBvcnQgY3Vyc29yIGFkZHJlc3NpbmcuXG4iCittc2dzdHIgIuerr+acq+OBjOOCq+ODvOOCveODq+WJsuOCiuS7mOOBkeOCkuOCteODneODvOODiOOBl+OBpuOBhOOBvuOBm+OCk+OAglxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MzMxCittc2dpZCAiVGVybWluYWwgZG9lcyBub3QgYXBwZWFyIHRvIHN1cHBvcnQgaGlnaGxpZ2h0aW5nLlxuIgorbXNnc3RyICLnq6/mnKvjgYzjg4/jgqTjg6njgqTjg4jjgpLjgrXjg53jg7zjg4jjgZfjgabjgYTjgb7jgZvjgpPjgIJcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjMzMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiU2V0IHlvdXIgVEVSTSB2YXJpYWJsZSBjb3JyZWN0bHksIHVzZSBhIGJldHRlciB0ZXJtaW5hbCxcbiIKKyJvciBtYWtlIGRvIHdpdGggdGhlIHBlci1wYWNrYWdlIG1hbmFnZW1lbnQgdG9vbCAlcy5cbiIKK21zZ3N0ciAiIgorIlRFUk0g55Kw5aKD5aSJ5pWw44KS5q2j44GX44GP6Kit5a6a44GX44Gm44GP44Gg44GV44GE44CC6auY5qmf6IO944Gq56uv5pyr44KS5L2/55So44GZ44KL44GL44CBXG4iCisi44KC44GX44GP44Gv44OR44OD44Kx44O844K444GU44Go44Gu566h55CG44OE44O844OrICVzIOOCkuS9v+eUqOOBl+OBvuOBl+OCh+OBhuOAglxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MzM2Cittc2dpZCAidGVybWluYWwgbGFja3MgbmVjZXNzYXJ5IGZlYXR1cmVzLCBnaXZpbmcgdXAiCittc2dzdHIgIuW/heimgeOBqOOBmeOCi+apn+iDveOBjOOBk+OBruerr+acq+OBq+OBr+OBguOCiuOBvuOBm+OCk+OAgue1guS6huOBl+OBvuOBmSIKKworIzogZHNlbGVjdC9tYWluLmNjOjQxNworbXNnaWQgIiIKKyJcbiIKKyJcbiIKKyJNb3ZlIGFyb3VuZCB3aXRoIF5QIGFuZCBeTiwgY3Vyc29yIGtleXMsIGluaXRpYWwgbGV0dGVycywgb3IgZGlnaXRzO1xuIgorIlByZXNzIDxlbnRlcj4gdG8gY29uZmlybSBzZWxlY3Rpb24uICAgXkwgcmVkcmF3cyBzY3JlZW4uXG4iCisiXG4iCittc2dzdHIgIiIKKyJcbiIKKyJcbiIKKyLnp7vli5Xjgavjga8gXlAg44GoIF5O44CB44Kr44O844K944Or44Kt44O844CB6Iux5a2X44CB5pWw5a2X44KS5L2/55So44Gn44GN44G+44GZ44CCXG4iCisi44Oq44K/44O844Oz44Kt44O844Gn6YG45oqe6aCF55uu44KS5rG65a6a44GX44G+44GZ44CCXkwg44Gn55S76Z2i44KS5YaN5o+P55S744GX44G+44GZ44CCXG4iCisiXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzo0MjgKK21zZ2lkICIiCisiXG4iCisiXG4iCisiUmVhZC1vbmx5IGFjY2Vzczogb25seSBwcmV2aWV3IG9mIHNlbGVjdGlvbnMgaXMgYXZhaWxhYmxlISIKK21zZ3N0ciAiIgorIlxuIgorIlxuIgorIuODquODvOODieOCquODs+ODquODvOOCouOCr+OCu+OCuTog6YG45oqe44OX44Os44OT44Ol44O844Gu44G/5Yip55So44Gn44GN44G+44GZISIKKworIzogZHNlbGVjdC9tYWluLmNjOjQ0OAorbXNnaWQgImZhaWxlZCB0byBnZXRjaCBpbiBtYWluIG1lbnUiCittc2dzdHIgIuODoeOCpOODs+ODoeODi+ODpeODvOOBp+OBriBnZXRjaCDjgavlpLHmlZfjgZfjgb7jgZfjgZ8iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzo1MzEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBhY3Rpb24gc3RyaW5nIGAlLjUwcyciCittc2dzdHIgIuS4jeaYjuOBquOCouOCr+OCt+ODp+ODs+aWh+Wtl+WIlyBgJS41MHMnIOOBp+OBmSIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzo3NworbXNnaWQgImRzZWxlY3QgLSBsaXN0IG9mIGFjY2VzcyBtZXRob2RzIgorbXNnc3RyICJkc2VsZWN0IC0g44Ki44Kv44K744K55pa55rOV44Gu5LiA6KanIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjg2CisjLCBjLWZvcm1hdAorbXNnaWQgIkFjY2VzcyBtZXRob2QgYCVzJy4iCittc2dzdHIgIuOCouOCr+OCu+OCueaWueazlSBgJXMn44CCIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjEyMAorbXNnaWQgIkFiYnJldi4iCittc2dzdHIgIumgreaWh+WtlyIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxMjEgZHNlbGVjdC9wa2dpbmZvLmNjOjEwNSBkc2VsZWN0L3BrZ3RvcC5jYzoyOTEKK21zZ2lkICJEZXNjcmlwdGlvbiIKK21zZ3N0ciAi6Kqs5piOIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjE2NCBkc2VsZWN0L3BrZ2xpc3QuY2M6NTcyCittc2dpZCAiZG91cGRhdGUgZmFpbGVkIgorbXNnc3RyICJkb3VwZGF0ZSDlpLHmlZciCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTY2IGRzZWxlY3QvcGtnbGlzdC5jYzo1NzUKK21zZ2lkICJmYWlsZWQgdG8gdW5ibG9jayBTSUdXSU5DSCIKK21zZ3N0ciAiU0lHV0lOQ0gg44Gu44Ki44Oz44OW44Ot44OD44Kv44Gr5aSx5pWX44GX44G+44GX44GfIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjE3MCBkc2VsZWN0L3BrZ2xpc3QuY2M6NTgwCittc2dpZCAiZmFpbGVkIHRvIHJlLWJsb2NrIFNJR1dJTkNIIgorbXNnc3RyICJTSUdXSU5DSCDjga7jg6rjg5bjg63jg4Pjgq/jgavlpLHmlZfjgZfjgb7jgZfjgZ8iCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTcxIGRzZWxlY3QvcGtnbGlzdC5jYzo1ODIKK21zZ2lkICJnZXRjaCBmYWlsZWQiCittc2dzdHIgImdldGNoIOWkseaVlyIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxODgKKyMsIGZ1enp5Cittc2dpZCAiRXhwbGFuYXRpb24iCittc2dzdHIgIuiqrOaYjjogIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjE5NworbXNnaWQgIk5vIGV4cGxhbmF0aW9uIGF2YWlsYWJsZS4iCittc2dzdHIgIuiqrOaYjuOBjOOBguOCiuOBvuOBm+OCk+OAgiIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6NjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIlxuIgorIiVzOiAlc1xuIgorbXNnc3RyICIiCisiXG4iCisiXG4iCisiJXM6ICVzXG4iCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjcwCittc2dpZCAiIgorIlxuIgorIlByZXNzIDxlbnRlcj4gdG8gY29udGludWUuIgorbXNnc3RyICIiCisiXG4iCisiPEVudGVyPiDjgpLmirzjgZnjgajntprooYzjgZfjgb7jgZnjgIIiCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjE2MQorIywgYy1mb3JtYXQKK21zZ2lkICJQcmVzcyA8ZW50ZXI+IHRvIGNvbnRpbnVlLlxuIgorbXNnc3RyICI8RW50ZXI+IOOCkuaKvOOBmeOBqOe2muihjOOBl+OBvuOBmeOAglxuIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoxNjIKKyMsIGZ1enp5Cittc2dpZCAiPHN0YW5kYXJkIGVycm9yPiIKK21zZ3N0ciAi5qiZ5rqW44Ko44Op44O85LiK44Gu5pu444GN6L6844G/44Ko44Op44O844Gn44GZ44CCIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoxNjUKK21zZ2lkICJlcnJvciByZWFkaW5nIGFja25vd2xlZGdlbWVudCBvZiBwcm9ncmFtIGZhaWx1cmUgbWVzc2FnZSIKK21zZ3N0ciAi44OX44Ot44Kw44Op44Og44Gu5aSx5pWX44Oh44OD44K744O844K444Gu5Y+X44GR5Y+W44KK44Gr5aSx5pWX44GX44G+44GX44GfIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoxOTYKK21zZ2lkICJ1cGRhdGUgYXZhaWxhYmxlIGxpc3Qgc2NyaXB0IgorbXNnc3RyICLlhaXmiYvlj6/og73kuIDopqfjgrnjgq/jg6rjg5fjg4jjga7mm7TmlrAiCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjIwMAorbXNnaWQgImluc3RhbGxhdGlvbiBzY3JpcHQiCittc2dzdHIgIuOCpOODs+OCueODiOODvOODq+OCueOCr+ODquODl+ODiCIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MjQ2Cittc2dpZCAicXVlcnkvc2V0dXAgc2NyaXB0IgorbXNnc3RyICLos6rllY8v6Kit5a6a44K544Kv44Oq44OX44OIIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzo1MworIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gbWV0aG9kIG9wdGlvbnMgZmlsZSBgJS4yNTBzJyAtLSAlcyIKK21zZ3N0ciAi44Oh44K944OD44OJ44Kq44OX44K344On44Oz44OV44Kh44Kk44OrIGAlLjI1MHMnIOWGheOBruani+aWh+OCqOODqeODvCAtLSAlcyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcmVhZGluZyBvcHRpb25zIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuOCquODl+OCt+ODp+ODs+ODleOCoeOCpOODqyBgJS4yNTBzJyDjga7oqq3jgb/ovrzjgb/jgqjjg6njg7wiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjkwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIGAlLjI1MHMnIGRpcmVjdG9yeSBmb3IgcmVhZGluZyBtZXRob2RzIgorbXNnc3RyICLjg6Hjgr3jg4Pjg4njgpLoqq3jgb/ovrzjgoDjgZ/jgoHjga4gJyUuMjUwcycg44KS6Kqt44KB44G+44Gb44KTIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxMDYKKyMsIGMtZm9ybWF0Cittc2dpZCAibWV0aG9kIGAlLjI1MHMnIGhhcyBuYW1lIHRoYXQgaXMgdG9vIGxvbmcgKCVkID4gJWQgY2hhcmFjdGVycykiCittc2dzdHIgIuODoeOCveODg+ODiSBgJS4yNTBzJyDjga7lkI3liY3jgYzplbfjgZnjgY7jgb7jgZkgKCVkID4gJWQg5paH5a2XKSIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTE3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBhY2Nlc3MgbWV0aG9kIHNjcmlwdCBgJS4yNTBzJyIKK21zZ3N0ciAi44Oh44K944OD44OJ44K544Kv44Oq44OX44OIIGAlLjI1MHMnIOOBq+OCouOCr+OCu+OCueOBp+OBjeOBvuOBm+OCkyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTIzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIG1ldGhvZCBvcHRpb25zIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuODoeOCveODg+ODieOCquODl+OCt+ODp+ODs+ODleOCoeOCpOODqyBgJS4yNTBzJyDjga7oqq3jgb/ovrzjgb/jgavlpLHmlZfjgZfjgb7jgZfjgZ8iCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE0NworbXNnaWQgIm5vbi1kaWdpdCB3aGVyZSBkaWdpdCB3YW50ZWQiCittc2dzdHIgIuaVsOWtl+OBjOOBguOCi+OBueOBjeOBqOOBk+OCjeOBq+aVsOWtl+OBp+OBquOBhOaWh+Wtl+OBjOOBguOCiuOBvuOBmSIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTUwCittc2dpZCAiRU9GIGluIGluZGV4IHN0cmluZyIKK21zZ3N0ciAi44Kk44Oz44OH44OD44Kv44K55paH5a2X5YiX44GrIEVPRiDjgYzjgYLjgorjgb7jgZkiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE1MworbXNnaWQgImluZGV4IHN0cmluZyB0b28gbG9uZyIKK21zZ3N0ciAi44Kk44Oz44OH44OD44Kv44K55paH5a2X5YiX44GM6ZW344GZ44GO44G+44GZIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNTYKK21zZ2lkICJuZXdsaW5lIGJlZm9yZSBvcHRpb24gbmFtZSBzdGFydCIKK21zZ3N0ciAi44Kq44OX44K344On44Oz5ZCN44GM5aeL44G+44KL5YmN44Gr5pS56KGM44GM44GC44KK44G+44GZIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNTgKK21zZ2lkICJFT0YgYmVmb3JlIG9wdGlvbiBuYW1lIHN0YXJ0IgorbXNnc3RyICLjgqrjg5fjgrfjg6fjg7PlkI3jgYzlp4vjgb7jgovliY3jgasgRU9GIOOBjOOBguOCiuOBvuOBmSIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTYyCittc2dpZCAibm9uYWxwaGEgd2hlcmUgb3B0aW9uIG5hbWUgc3RhcnQgd2FudGVkIgorbXNnc3RyICLjgqrjg5fjgrfjg6fjg7PlkI3jga7lp4vjgb7jgorjgYzjgqLjg6vjg5XjgqHjg5njg4Pjg4jjgafjga/jgYLjgorjgb7jgZvjgpMiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE2NAorbXNnaWQgIm5vbi1hbHBoYW51bSBpbiBvcHRpb24gbmFtZSIKK21zZ3N0ciAi44Kq44OX44K344On44Oz5ZCN44GM6Iux5pWw5a2X44Gn44Gv44GC44KK44G+44Gb44KTIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNjcKK21zZ2lkICJFT0YgaW4gb3B0aW9uIG5hbWUiCittc2dzdHIgIuOCquODl+OCt+ODp+ODs+WQjeOBqyBFT0Yg44GM44GC44KK44G+44GZIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNzIKK21zZ2lkICJuZXdsaW5lIGJlZm9yZSBzdW1tYXJ5IgorbXNnc3RyICLopoHntITjga7liY3jgavmlLnooYzjgYzjgYLjgorjgb7jgZkiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE3NAorbXNnaWQgIkVPRiBiZWZvcmUgc3VtbWFyeSIKK21zZ3N0ciAi6KaB57SE44Gu5YmN44GrIEVPRiDjgYzjgYLjgorjgb7jgZkiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE4MAorbXNnaWQgIkVPRiBpbiBzdW1tYXJ5IC0gbWlzc2luZyBuZXdsaW5lIgorbXNnc3RyICLopoHntITjga7kuK3jgasgRU9GIOOBjOOBguOCiuOBvuOBmSAtIOaUueihjOOBjOOBguOCiuOBvuOBm+OCkyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTkwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIG9wdGlvbiBkZXNjcmlwdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLoqqzmmI7jg5XjgqHjgqTjg6sgYCUuMjUwcycg44KS44Kq44O844OX44Oz44Gn44GN44G+44Gb44KTIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxOTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgb3B0aW9uIGRlc2NyaXB0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuOCquODl+OCt+ODp+ODs+iomOi/sOODleOCoeOCpOODqyBgJS4yNTBzJyDjga7jgrnjg4bjg7zjgr/jgrnjgpLlvpfjgonjgozjgb7jgZvjgpMiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE5OAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCBvcHRpb24gZGVzY3JpcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi44Kq44OX44K344On44Oz6KiY6L+w44OV44Kh44Kk44OrIGAlLjI1MHMnIOOBruiqreOBv+i+vOOBv+OBq+WkseaVl+OBl+OBvuOBl+OBnyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MjAxCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGR1cmluZyByZWFkIG9mIG9wdGlvbiBkZXNjcmlwdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLjgqrjg5fjgrfjg6fjg7PoqJjov7Djg5XjgqHjgqTjg6sgYCUuMjUwcycg44Gu6Kqt44G/6L6844G/5Lit44Gr44Ko44Op44O844GM55m655Sf44GX44G+44GX44GfIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgZHVyaW5nIHJlYWQgb2YgbWV0aG9kIG9wdGlvbnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi44Oh44K944OD44OJ44Kq44OX44K344On44Oz44OV44Kh44Kk44OrIGAlLjI1MHMnIOOBruiqreOBv+i+vOOBv+S4reOBq+OCqOODqeODvOOBjOeZuueUn+OBl+OBvuOBl+OBnyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MjQ3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIGN1cnJlbnQgb3B0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuePvuWcqOOBruOCquODl+OCt+ODp+ODs+ODleOCoeOCpOODqyBgJS4yNTBzJyDjgpLjgqrjg7zjg5fjg7PjgafjgY3jgb7jgZvjgpMiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjI4OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBuZXcgb3B0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuaWsOOBl+OBhOOCquODl+OCt+ODp+ODs+ODleOCoeOCpOODqyBgJS4yNTBzJyDjgpLjgqrjg7zjg5fjg7PjgafjgY3jgb7jgZvjgpMiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjI5MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgbmV3IG9wdGlvbiB0byBgJS4yNTBzJyIKK21zZ3N0ciAi5paw44GX44GE44Kq44OX44K344On44Oz44KSIGAlLjI1NXMnIOOBq+abuOOBjei+vOOCgOOBk+OBqOOBjOOBp+OBjeOBvuOBm+OCkyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6Mjk1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBuZXcgb3B0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuaWsOOBl+OBhOOCquODl+OCt+ODp+ODs+ODleOCoeOCpOODqyBgJS4yNTBzJyDjgpLjgq/jg63jg7zjgrrjgZnjgovjgZPjgajjgYzjgafjgY3jgb7jgZvjgpMiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjI5NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgb3B0aW9uIGFzIGAlLjI1MHMnIgorbXNnc3RyICLmlrDjgZfjgYTjgqrjg5fjgrfjg6fjg7PjgpIgYCUuMjU1cycg44Go44GX44Gm44Kk44Oz44K544OI44O844Or44Gn44GN44G+44Gb44KTIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MzYKK21zZ2lkICJuZXcgcGFja2FnZSIKK21zZ3N0ciAi5paw44OR44OD44Kx44O844K4IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MzcKK21zZ2lkICJpbnN0YWxsIgorbXNnc3RyICJpbnN0YWxsIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MzgKK21zZ2lkICJob2xkIgorbXNnc3RyICLkv53mjIEiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzozOQorbXNnaWQgInJlbW92ZSIKK21zZ3N0ciAicmVtb3ZlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NDAKK21zZ2lkICJwdXJnZSIKK21zZ3N0ciAi5a6M5YWo5YmK6ZmkIgorCisjLiBUUkFOU0xBVE9SUzogVGhlIHNwYWNlIGlzIGEgdHJpY2sgdG8gd29yayBhcm91bmQgZ2V0dGV4dCB3aGljaCB1c2VzCisjLiAqIHRoZSBlbXB0eSBzdHJpbmcgdG8gc3RvcmUgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHRyYW5zbGF0aW9uLiBETyBOT1QKKyMuICogQ0hBTkdFIFRIQVQgSU4gQSBUUkFOU0xBVElPTiEgVGhlIGNvZGUgcmVhbGx5IHJlbGllcyBvbiB0aGF0IGJlaW5nCisjLiAqIGEgc2luZ2xlIHNwYWNlLgorIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjQ3Cittc2dpZCAiICIKK21zZ3N0ciAiICIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjQ4Cittc2dpZCAiUkVJTlNUQUxMIgorbXNnc3RyICLlho3jgqTjg7Pjgrnjg4jjg7zjg6siCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1MQorbXNnaWQgIm5vdCBpbnN0YWxsZWQiCittc2dzdHIgIuacquWwjuWFpSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjUyCittc2dpZCAicmVtb3ZlZCAoY29uZmlncyByZW1haW4pIgorbXNnc3RyICLmnKrjgqTjg7Pjgrnjg4jjg7zjg6sgKOioreWumuOBr+S/neWtmCkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1MworbXNnaWQgImhhbGYgaW5zdGFsbGVkIgorbXNnc3RyICLjgqTjg7Pjgrnjg4jjg7zjg6vmuIjjgb8iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1NAorbXNnaWQgInVucGFja2VkIChub3Qgc2V0IHVwKSIKK21zZ3N0ciAi5bGV6ZaLKOacquioreWumikiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1NQorbXNnaWQgImhhbGYgY29uZmlndXJlZCAoY29uZmlnIGZhaWxlZCkiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjU2Cittc2dpZCAiYXdhaXRpbmcgdHJpZ2dlciBwcm9jZXNzaW5nIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1NworbXNnaWQgInRyaWdnZXJlZCIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTgKK21zZ2lkICJpbnN0YWxsZWQiCittc2dzdHIgIuWwjuWFpea4iOOBvyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjYxCittc2dpZCAiUmVxdWlyZWQiCittc2dzdHIgIuW/hemgiCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjYyCittc2dpZCAiSW1wb3J0YW50IgorbXNnc3RyICLph43opoEiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo2MworbXNnaWQgIlN0YW5kYXJkIgorbXNnc3RyICLmqJnmupYiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo2NAorbXNnaWQgIk9wdGlvbmFsIgorbXNnc3RyICLku7vmhI8iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo2NQorbXNnaWQgIkV4dHJhIgorbXNnc3RyICLnibnliKUiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo2NgorbXNnaWQgIiFCdWchIgorbXNnc3RyICIh44OQ44KwISIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjY3Cittc2dpZCAiVW5jbGFzc2lmaWVkIgorbXNnc3RyICLliIbpoZ7kuI3lj68iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3MAorbXNnaWQgInN1Z2dlc3RzIgorbXNnc3RyICLjga/ku6XkuIvjga7jg5Hjg4PjgrHjg7zjgrjjgpLmj5DmoYjjgZfjgabjgYTjgb7jgZk6IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzEKK21zZ2lkICJyZWNvbW1lbmRzIgorbXNnc3RyICLjga/ku6XkuIvjga7jg5Hjg4PjgrHjg7zjgrjjgpLmjqjlpajjgZfjgabjgYTjgb7jgZk6IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzIKK21zZ2lkICJkZXBlbmRzIG9uIgorbXNnc3RyICLjga/ku6XkuIvjga7jg5Hjg4PjgrHjg7zjgrjjgavkvp3lrZjjgZfjgabjgYTjgb7jgZk6IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzMKK21zZ2lkICJwcmUtZGVwZW5kcyBvbiIKK21zZ3N0ciAi44Gv5Lul5LiL44Gu44OR44OD44Kx44O844K444Gr5YWI6KGM5L6d5a2Y44GX44Gm44GE44G+44GZOiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjc0Cittc2dpZCAiYnJlYWtzIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3NQorbXNnaWQgImNvbmZsaWN0cyB3aXRoIgorbXNnc3RyICLjga/ku6XkuIvjga7jg5Hjg4PjgrHjg7zjgrjjgajnq7blkIjjgZfjgabjgYTjgb7jgZk6IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzYKK21zZ2lkICJwcm92aWRlcyIKK21zZ3N0ciAi44Gv5Lul5LiL44Gu44OR44OD44Kx44O844K444KS5o+Q5L6b44GX44Gm44GE44G+44GZOiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjc3Cittc2dpZCAicmVwbGFjZXMiCittc2dzdHIgIue9ruaPmyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjc4Cittc2dpZCAiZW5oYW5jZXMiCittc2dzdHIgIuaLoeW8tSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjgxCittc2dpZCAiUmVxIgorbXNnc3RyICLlv4UiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4MgorbXNnaWQgIkltcCIKK21zZ3N0ciAi6YeNIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODMKK21zZ2lkICJTdGQiCittc2dzdHIgIuaomSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjg0Cittc2dpZCAiT3B0IgorbXNnc3RyICLku7siCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4NQorbXNnaWQgIlh0ciIKK21zZ3N0ciAi54m5IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODYKK21zZ2lkICJiVUciCittc2dzdHIgIuODkCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjg3Cittc2dpZCAiPyIKK21zZ3N0ciAiPyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjk1IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTUKK21zZ2lkICJCcm9rZW4iCittc2dzdHIgIuWjiuOCjOOBpuOBhOOCiyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjk2Cittc2dpZCAiTmV3IgorbXNnc3RyICLmlrDopo8iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo5NworbXNnaWQgIlVwZGF0ZWQiCittc2dzdHIgIuabtOaWsOOBleOCjOOBpuOBhOOCiyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjk4Cittc2dpZCAiT2Jzb2xldGUvbG9jYWwiCittc2dzdHIgIuW7g+atoi/jg63jg7zjgqvjg6siCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo5OQorbXNnaWQgIlVwLXRvLWRhdGUiCittc2dzdHIgIuacgOaWsCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwMAorbXNnaWQgIkF2YWlsYWJsZSIKK21zZ3N0ciAi5Y+W5b6X5Y+v6IO9IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTAxIGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTcKK21zZ2lkICJSZW1vdmVkIgorbXNnc3RyICLliYrpmaQiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDIgZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExMQorbXNnaWQgIkJyb2tlbmx5IGluc3RhbGxlZCBwYWNrYWdlcyIKK21zZ3N0ciAi44GG44G+44GP44Kk44Oz44K544OI44O844Or44GV44KM44Gm44GE44Gq44GE44OR44OD44Kx44O844K4IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTAzCittc2dpZCAiTmV3bHkgYXZhaWxhYmxlIHBhY2thZ2VzIgorbXNnc3RyICLlj5blvpflj6/og73mlrDjg5Hjg4PjgrHjg7zjgrgiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDQKK21zZ2lkICJVcGRhdGVkIHBhY2thZ2VzIChuZXdlciB2ZXJzaW9uIGlzIGF2YWlsYWJsZSkiCittc2dzdHIgIuabtOaWsOOBleOCjOOBpuOBhOOCi+ODkeODg+OCseODvOOCuCAo5paw44OQ44O844K444On44Oz44GM5Y+W5b6X5Y+v6IO9KSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwNQorbXNnaWQgIk9ic29sZXRlIGFuZCBsb2NhbCBwYWNrYWdlcyBwcmVzZW50IG9uIHN5c3RlbSIKK21zZ3N0ciAi44K344K544OG44Og44Gr5q6L44Gj44Gm44GE44KL44CB5buD5q2i44GV44KM44Gf44G+44Gf44Gv44Ot44O844Kr44Or44Gq44OR44OD44Kx44O844K4IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTA2Cittc2dpZCAiVXAgdG8gZGF0ZSBpbnN0YWxsZWQgcGFja2FnZXMiCittc2dzdHIgIuOCpOODs+OCueODiOODvOODq+OBleOCjOOBpuOBhOOCi+acgOaWsOODkeODg+OCseODvOOCuCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwNworbXNnaWQgIkF2YWlsYWJsZSBwYWNrYWdlcyAobm90IGN1cnJlbnRseSBpbnN0YWxsZWQpIgorbXNnc3RyICLlj5blvpflj6/og73jg5Hjg4PjgrHjg7zjgrggKOacquOCpOODs+OCueODiOODvOODqykiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDgKK21zZ2lkICJSZW1vdmVkIGFuZCBubyBsb25nZXIgYXZhaWxhYmxlIHBhY2thZ2VzIgorbXNnc3RyICLliYrpmaTjgZXjgozjgabliKnnlKjkuI3lj6/og73jgarjg5Hjg4PjgrHjg7zjgrgiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTIKK21zZ2lkICJJbnN0YWxsZWQgcGFja2FnZXMiCittc2dzdHIgIuOCpOODs+OCueODiOODvOODq+a4iOOBv+OBruODkeODg+OCseODvOOCuCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExMworbXNnaWQgIlJlbW92ZWQgcGFja2FnZXMgKGNvbmZpZ3VyYXRpb24gc3RpbGwgcHJlc2VudCkiCittc2dzdHIgIuWJiumZpOOBleOCjOOBpuOBhOOCi+ODkeODg+OCseODvOOCuCAo6Kit5a6a44OV44Kh44Kk44Or44Gv5a2Y5ZyoKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExNAorbXNnaWQgIlB1cmdlZCBwYWNrYWdlcyBhbmQgdGhvc2UgbmV2ZXIgaW5zdGFsbGVkIgorbXNnc3RyICLliYrpmaTjgZXjgozjgabjgIHkuIDluqbjgoLjgqTjg7Pjgrnjg4jjg7zjg6vjgZXjgozjgabjgYTjgarjgYQiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTYKK21zZ2lkICJJbnN0YWxsZWQiCittc2dzdHIgIuWwjuWFpea4iOOBvyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExOAorbXNnaWQgIlB1cmdlZCIKK21zZ3N0ciAi5a6M5YWo5YmK6ZmkIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTk4Cittc2dpZCAiZHNlbGVjdCAtIHJlY3Vyc2l2ZSBwYWNrYWdlIGxpc3RpbmciCittc2dzdHIgImRzZWxlY3QgLSDlho3luLDnmoTjg5Hjg4PjgrHjg7zjgrjkuIDopqciCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxOTkKK21zZ2lkICJkc2VsZWN0IC0gaW5zcGVjdGlvbiBvZiBwYWNrYWdlIHN0YXRlcyIKK21zZ3N0ciAiZHNlbGVjdCAtIOODkeODg+OCseODvOOCuOeKtuaFi+OBrumWsuimpyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIwMAorbXNnaWQgImRzZWxlY3QgLSBtYWluIHBhY2thZ2UgbGlzdGluZyIKK21zZ3N0ciAiZHNlbGVjdCAtIOODkeODg+OCseODvOOCuOS4gOimpyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIwOAorbXNnaWQgIiAoYnkgc2VjdGlvbikiCittc2dzdHIgIijliIbpoZ7liKUpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjExCittc2dpZCAiIChhdmFpbC4sIHNlY3Rpb24pIgorbXNnc3RyICIo5Yip55So5Y+v44CB5YiG6aGe5YilKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIxNAorbXNnaWQgIiAoc3RhdHVzLCBzZWN0aW9uKSIKK21zZ3N0ciAiKOeKtuaFi+OAgeWIhumhnuWIpSkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMjMKK21zZ2lkICIgKGJ5IHByaW9yaXR5KSIKK21zZ3N0ciAiKOWEquWFiOW6puWIpSkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMjYKK21zZ2lkICIgKGF2YWlsLiwgcHJpb3JpdHkpIgorbXNnc3RyICIo5Yip55So5Y+v44CB5YSq5YWI5bqm5YilKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIyOQorbXNnaWQgIiAoc3RhdHVzLCBwcmlvcml0eSkiCittc2dzdHIgIijnirbmhYvjgIHlhKrlhYjluqbliKUpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjM4IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNTAKK21zZ2lkICIgKGFscGhhYmV0aWNhbGx5KSIKK21zZ3N0ciAiKOOCouODq+ODleOCoeODmeODg+ODiOmghikiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNDEKK21zZ2lkICIgKGJ5IGF2YWlsYWJpbGl0eSkiCittc2dzdHIgIijliKnnlKjlj6/liKUpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjQ0Cittc2dpZCAiIChieSBzdGF0dXMpIgorbXNnc3RyICIo54q25oWL5YilKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI1OAorbXNnaWQgIiBtYXJrOisvPS8tIHRlcnNlOnYgaGVscDo/IgorbXNnc3RyICLjg57jg7zjgq86Ky89Ly0g57Ch5piTOnYg44OY44Or44OXOj8iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNTkKK21zZ2lkICIgbWFyazorLz0vLSB2ZXJib3NlOnYgaGVscDo/IgorbXNnc3RyICLjg57jg7zjgq86Ky89Ly0g6Kmz57SwOnYg44OY44Or44OXOj8iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNjAKK21zZ2lkICIgdGVyc2U6diBoZWxwOj8iCittc2dzdHIgIiDnsKHmmJM6diDjg5jjg6vjg5c6PyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI2MQorbXNnaWQgIiB2ZXJib3NlOnYgaGVscDo/IgorbXNnc3RyICIg6Kmz57SwOnYg44OY44Or44OXOj8iCisKKyM6IGRzZWxlY3QvcGtnaW5mby5jYzo4MAorbXNnaWQgIiIKKyJUaGUgbGluZSB5b3UgaGF2ZSBoaWdobGlnaHRlZCByZXByZXNlbnRzIG1hbnkgcGFja2FnZXM7IGlmIHlvdSBhc2sgdG8gIgorImluc3RhbGwsIHJlbW92ZSwgaG9sZCwgZXRjLiBpdCB5b3Ugd2lsbCBhZmZlY3QgYWxsIHRoZSBwYWNrYWdlcyB3aGljaCBtYXRjaCAiCisidGhlIGNyaXRlcmlvbiBzaG93bi5cbiIKKyJcbiIKKyJJZiB5b3UgbW92ZSB0aGUgaGlnaGxpZ2h0IHRvIGEgbGluZSBmb3IgYSBwYXJ0aWN1bGFyIHBhY2thZ2UgeW91IHdpbGwgc2VlICIKKyJpbmZvcm1hdGlvbiBhYm91dCB0aGF0IHBhY2thZ2UgZGlzcGxheWVkIGhlcmUuXG4iCisiWW91IGNhbiB1c2UgYG8nIGFuZCBgTycgdG8gY2hhbmdlIHRoZSBzb3J0IG9yZGVyIGFuZCBnaXZlIHlvdXJzZWxmIHRoZSAiCisib3Bwb3J0dW5pdHkgdG8gbWFyayBwYWNrYWdlcyBpbiBkaWZmZXJlbnQga2luZHMgb2YgZ3JvdXBzLiIKK21zZ3N0ciAiIgorIuePvuWcqOODj+OCpOODqeOCpOODiOOBleOCjOOBpuOBhOOCi+ihjOOBr+ikh+aVsOODkeODg+OCseODvOOCuOOBi+OCieaIkOOCi+OCsOODq+ODvOODl+OCkuihqOOBl+OBpuOBhOOBvuOBmeOAglxuIgorIuOCpOODs+OCueODiOODvOODq+OAgeWJiumZpOOAgee2reaMgSAoaG9sZCkg562J44Gu5oyH56S644KS6KGM44Gq44GG44Go44CB6KGo56S644GV44KM44Gm44GE44KL5Z+65rqW44Go5LiAXG4iCisi6Ie044GZ44KL44GZ44G544Gm44Gu44OR44OD44Kx44O844K444GM5aSJ5pu044GV44KM44G+44GZ44CCXG4iCisiXG4iCisi44OP44Kk44Op44Kk44OI44KS54m55a6a44Gu44OR44OD44Kx44O844K444Gu6KGM44Gr5YuV44GL44GZ44Go44CB44GT44GT44Gr44Gd44Gu44OR44OD44Kx44O844K444Gu6Kqs5piO44GM6KGoXG4iCisi56S644GV44KM44G+44GZ44CCYG8nIOOBiuOCiOOBsyBgTycg44KS5L2/55So44GX44Gm44OR44OD44Kx44O844K444K944O844OI6aCG44KS5aSJ5pu044GX44CB55Ww44Gq44KL44KwXG4iCisi44Or44O844OX44Gr5bGe44GX44Gf44OR44OD44Kx44O844K4576k44Gr44Oe44O844Kv44KS5LuY44GR44KL44GT44Go44KC44Gn44GN44G+44GZ44CCIgorCisjOiBkc2VsZWN0L3BrZ2luZm8uY2M6OTMKKyMsIGZ1enp5Cittc2dpZCAiSW50ZXJyZWxhdGlvbnNoaXBzIgorbXNnc3RyICLplqLpgKPkvp3lrZgiCisKKyM6IGRzZWxlY3QvcGtnaW5mby5jYzoxMTIKKyMsIGZ1enp5Cittc2dpZCAiTm8gZGVzY3JpcHRpb24gYXZhaWxhYmxlLiIKK21zZ3N0ciAi6Kqs5piO44GM44GC44KK44G+44Gb44KT44CCIgorCisjOiBkc2VsZWN0L3BrZ2luZm8uY2M6MTMwCisjLCBmdXp6eQorbXNnaWQgIkluc3RhbGxlZCBjb250cm9sIGZpbGUgaW5mb3JtYXRpb24iCittc2dzdHIgIuWwjuWFpea4iOOBv+ODkOODvOOCuOODp+ODs+OBruWItuW+oeaDheWgsSAiCisKKyM6IGRzZWxlY3QvcGtnaW5mby5jYzoxNDYKKyMsIGZ1enp5Cittc2dpZCAiQXZhaWxhYmxlIGNvbnRyb2wgZmlsZSBpbmZvcm1hdGlvbiIKK21zZ3N0ciAi5Yip55So5Y+v6IO944OQ44O844K444On44Oz44Gu5Yi25b6h5oOF5aCxIgorCisjOiBkc2VsZWN0L3BrZ2xpc3QuY2M6NDE2Cittc2dpZCAiVGhlcmUgYXJlIG5vIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2xpc3QuY2M6NTA3Cittc2dpZCAiaW52YWxpZCBzZWFyY2ggb3B0aW9uIGdpdmVuIgorbXNnc3RyICLnhKHlirnjgarmpJzntKLjgqrjg5fjgrfjg6fjg7PjgYzmjIflrprjgZXjgozjgb7jgZfjgZ8iCisKKyM6IGRzZWxlY3QvcGtnbGlzdC5jYzo1MjEKK21zZ2lkICJlcnJvciBpbiByZWd1bGFyIGV4cHJlc3Npb24iCittc2dzdHIgIuato+imj+ihqOePvuOCqOODqeODvCIKKworIzogZHNlbGVjdC9wa2dzdWJsaXN0LmNjOjEwNworbXNnaWQgIiBkb2VzIG5vdCBhcHBlYXIgdG8gYmUgYXZhaWxhYmxlXG4iCittc2dzdHIgIuWIqeeUqOWPr+iDveOBp+OBr+OBquOBhOOCiOOBhuOBp+OBmVxuIgorCisjOiBkc2VsZWN0L3BrZ3N1Ymxpc3QuY2M6MTI3Cittc2dpZCAiIG9yICIKK21zZ3N0ciAiIOOBguOCi+OBhOOBryAiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjU3Cittc2dpZCAiQWxsIgorbXNnc3RyICLjgZnjgbnjgaYiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjc5Cittc2dpZCAiQWxsIHBhY2thZ2VzIgorbXNnc3RyICLlhajjg5Hjg4PjgrHjg7zjgrgiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHBhY2thZ2VzIHdpdGhvdXQgYSBzZWN0aW9uIgorbXNnc3RyICLjgrvjgq/jgrfjg6fjg7Pjga7jgarjgYQgJXMg44OR44OD44Kx44O844K4OiIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcGFja2FnZXMgaW4gc2VjdGlvbiAlcyIKK21zZ3N0ciAiJTIkcyDjgrvjgq/jgrfjg6fjg7Pjga4gJTEkcyDjg5Hjg4PjgrHjg7zjgrgiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjkxCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzICVzIHBhY2thZ2VzIgorbXNnc3RyICIlcyVzIOODkeODg+OCseODvOOCuCIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgJXMgcGFja2FnZXMgd2l0aG91dCBhIHNlY3Rpb24iCittc2dzdHIgIuOCu+OCr+OCt+ODp+ODs+OBruOBquOBhCAlcyVzIOODkeODg+OCseODvOOCuCIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6OTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgJXMgcGFja2FnZXMgaW4gc2VjdGlvbiAlcyIKK21zZ3N0ciAiJTMkcyDjgrvjgq/jgrfjg6fjg7Pjga4gJTEkcyUyJHMg44OR44OD44Kx44O844K4IgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoxMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJS0qcyAlcyVzJXM7ICAlcyAod2FzOiAlcykuICAlcyIKK21zZ3N0ciAiJS0qcyAlcyVzJXM7ICAlcyAo5YmN5ZueOiAlcykuICAlcyIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6MjYzCittc2dpZCAiRXJyb3IiCittc2dzdHIgIuOCqOODqeODvCIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6MjY3Cittc2dpZCAiSW5zdGFsbGVkPyIKK21zZ3N0ciAi5bCO5YWlPyIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6MjcxCittc2dpZCAiT2xkIG1hcmsiCittc2dzdHIgIuWJjeWbniIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6Mjc1Cittc2dpZCAiTWFya2VkIGZvciIKK21zZ3N0ciAi5LuK5ZueIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyNzgKK21zZ2lkICJFSU9NIgorbXNnc3RyICJFSU9NIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyODAKK21zZ2lkICJTZWN0aW9uIgorbXNnc3RyICLliIbpoZ4iCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI4MQorbXNnaWQgIlByaW9yaXR5IgorbXNnc3RyICLlhKoiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI4MgorbXNnaWQgIlBhY2thZ2UiCittc2dzdHIgIuODkeODg+OCseODvOOCuCIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6Mjg2Cittc2dpZCAiSW5zdC52ZXIiCittc2dzdHIgIuWwjuWFpVZlciIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6Mjg5Cittc2dpZCAiQXZhaWwudmVyIgorbXNnc3RyICLlj6/og71WZXIiCisKKyN+IG1zZ2lkICJyZXR1cm5lZCBlcnJvciBleGl0IHN0YXR1cyAlZC5cbiIKKyN+IG1zZ3N0ciAi44Ko44Op44O857WC5LqG44K544OG44O844K/44K5ICVkIOOCkui/lOOBl+OBvuOBl+OBn+OAglxuIgorCisjfiBtc2dpZCAid2FzIGludGVycnVwdGVkLlxuIgorI34gbXNnc3RyICLjgYzlibLjgorovrzjgb7jgozjgb7jgZfjgZ/jgIJcbiIKKworI34gbXNnaWQgIndhcyB0ZXJtaW5hdGVkIGJ5IGEgc2lnbmFsOiAlcy5cbiIKKyN+IG1zZ3N0ciAi44Gv44K344Kw44OK44OrICVzIOOBp+e1guS6huOBl+OBvuOBl+OBn+OAglxuIgorCisjfiBtc2dpZCAiKEl0IGxlZnQgYSBjb3JlZHVtcC4pXG4iCisjfiBtc2dzdHIgIihjb3JlIOOCkuaui+OBl+OBvuOBmeOAgilcbiIKKworI34gbXNnaWQgImZhaWxlZCB3aXRoIGFuIHVua25vd24gd2FpdCByZXR1cm4gY29kZSAlZC5cbiIKKyN+IG1zZ3N0ciAi5LiN5piO44GqIHdhaXQg44Oq44K/44O844Oz44Kz44O844OJICVkIOOBp+WkseaVl+OBl+OBvuOBl+OBn+OAglxuIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHJ1biAlLjI1MHMgcHJvY2VzcyBgJS4yNTBzJyIKKyN+IG1zZ3N0ciAiJS4yNTBzIOODl+ODreOCu+OCuSBgJS4yNTBzJyDjgpLlrp/ooYzjgafjgY3jgb7jgZvjgpMiCisKKyN+IG1zZ2lkICJmYWlsZWQgY29uZmlnIgorI34gbXNnc3RyICLoqK3lrprlpLHmlZciCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gd2FpdCBmb3IgJS4yNTBzIgorI34gbXNnc3RyICIlLjI1MHMg44KS5b6F44Gk44GT44Go44GM44Gn44GN44G+44Gb44KTIgorCisjfiBtc2dpZCAiZ290IHdyb25nIGNoaWxkJ3Mgc3RhdHVzIC0gYXNrZWQgZm9yICVsZCwgZ290ICVsZCIKKyN+IG1zZ3N0ciAi5LiN5q2j44Gq5a2Q44OX44Ot44K744K544Gu54q25oWL44Gn44GZIC0gJWxkIOOCkuimgeaxguOBl+OBvuOBl+OBn+OBjCAlbGQg44KS5b6X44G+44GX44GfIgorCisjfiBtc2dpZCAiUmVjb21tZW5kZWQiCisjfiBtc2dzdHIgIuOBr+S7peS4i+OCkuaOqOWlqCAocmVjb21tZW5kcykg44GX44G+44GZOiAiCisKKyN+IG1zZ2lkICJDb250cmliIgorI34gbXNnc3RyICLlr4TotIggKGNvbnRyaWIpIgorCisjfiBtc2dpZCAiUmVjIgorI34gbXNnc3RyICLlho0iCisKKyN+IG1zZ2lkICJDdGIiCisjfiBtc2dzdHIgIuWvhCIKKworI34gbXNnaWQgIiIKKyN+ICJiYXNlbGlzdDo6c3RhcnRkaXNwbGF5KCkgZG9uZSAuLi5cbiIKKyN+ICJcbiIKKyN+ICIgeG1heD0lZCwgeW1heD0lZDtcbiIKKyN+ICJcbiIKKyN+ICIgdGl0bGVfaGVpZ2h0PSVkLCBjb2xoZWFkc19oZWlnaHQ9JWQsIGxpc3RfaGVpZ2h0PSVkO1xuIgorI34gIiB0aGlzc3RhdGVfaGVpZ2h0PSVkLCBpbmZvX2hlaWdodD0lZCwgd2hhdGluZm9faGVpZ2h0PSVkO1xuIgorI34gIlxuIgorI34gIiBjb2xoZWFkc19yb3c9JWQsIHRoaXNzdGF0ZV9yb3c9JWQsIGluZm9fcm93PSVkO1xuIgorI34gIiB3aGF0aW5mb19yb3c9JWQsIGxpc3Rfcm93PSVkO1xuIgorI34gIlxuIgorI34gbXNnc3RyICIiCisjfiAiYmFzZWxpc3Q6OnN0YXJ0ZGlzcGxheSgpIOWujOS6hiAuLi5cbiIKKyN+ICJcbiIKKyN+ICIgeG1heD0lZCwgeW1heD0lZDtcbiIKKyN+ICJcbiIKKyN+ICIgdGl0bGVfaGVpZ2h0PSVkLCBjb2xoZWFkc19oZWlnaHQ9JWQsIGxpc3RfaGVpZ2h0PSVkO1xuIgorI34gIiB0aGlzc3RhdGVfaGVpZ2h0PSVkLCBpbmZvX2hlaWdodD0lZCwgd2hhdGluZm9faGVpZ2h0PSVkO1xuIgorI34gIlxuIgorI34gIiBjb2xoZWFkc19yb3c9JWQsIHRoaXNzdGF0ZV9yb3c9JWQsIGluZm9fcm93PSVkO1xuIgorI34gIiB3aGF0aW5mb19yb3c9JWQsIGxpc3Rfcm93PSVkO1xuIgorI34gIlxuIgorCisjfiBtc2dpZCAiW25vbmVdIgorI34gbXNnc3RyICJb44Gq44GXXSIKKworI34gbXNnaWQgImVycm9yIHVuLWNhdGNoaW5nIHNpZ25hbCAlZDogJXNcbiIKKyN+IG1zZ3N0ciAi44Ko44Op44O8OiDnjbLlvpfjgafjgY3jgarjgYTjgrfjgrDjg4rjg6sgJWQgOiAlc1xuIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGlnbm9yZSBzaWduYWwgJWQgYmVmb3JlIHJ1bm5pbmcgJS4yNTBzIgorI34gbXNnc3RyICIlMiQuMjUwcyDlrp/ooYzliY3jgavjgrfjgrDjg4rjg6sgJTEkZCDjgpLnhKHoppbjgafjgY3jgb7jgZvjgpMiCisKKyN+IG1zZ2lkICIobm8gY2xpZW50ZGF0YSkiCisjfiBtc2dzdHIgIijjgq/jg6njgqTjgqLjg7Pjg4jjgarjgZcpIgorCisjfiBtc2dpZCAiPG51bGw+IgorI34gbXNnc3RyICI844Gq44GXPiIKKworI34gbXNnaWQgImludGVycmVsYXRpb25zaGlwcyBhZmZlY3RpbmcgIgorI34gbXNnc3RyICLplqLpgKPkvp3lrZjmg4XloLE6ICIKKworI34gbXNnaWQgImRlc2NyaXB0aW9uIG9mICIKKyN+IG1zZ3N0ciAi6Kqs5piOOiAiCisKKyN+IG1zZ2lkICJkZXNjcmlwdGlvbiIKKyN+IG1zZ3N0ciAi6Kqs5piOIgorCisjfiBtc2dpZCAiY3VycmVudGx5IGluc3RhbGxlZCBjb250cm9sIGluZm8iCisjfiBtc2dzdHIgIuWwjuWFpea4iOOBv+ODkOODvOOCuOODp+ODs+OBruWItuW+oeaDheWgsSIKKworI34gbXNnaWQgImF2YWlsYWJsZSB2ZXJzaW9uIG9mIGNvbnRyb2wgaW5mbyBmb3IgIgorI34gbXNnc3RyICLliKnnlKjlj6/og73jg5Djg7zjgrjjg6fjg7Pjga7liLblvqHmg4XloLEgIgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL2tvLmdtbyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9rby5nbW8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOGYxODNhNgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9rby5nbW8KQmluYXJ5IGZpbGVzIGRpZmZlcgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL2tvLnBvIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL2tvLnBvCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjNkNWY5NTUKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8va28ucG8KQEAgLTAsMCArMSwxNzIwIEBACisjIENodS15ZW9uIFBhcmsgPGtva2lkc0BkZWJpYW4ub3JnPiwgMjAwMS4KKyMgRXVuZ2t5dSBTb25nIDxldW5na3l1QHNwYXJjcy5rYWlzdC5hYy5rcj4sIDIwMDEuCisjIENoYW5nd29vIFJ5dSA8Y3dyeXVAZGViaWFuLm9yZz4sIDIwMDQuCisjIFN1bmphZSBQYXJrIDxkYXJlaGFubEBnbWFpbC5jb20+LCAyMDA3LgorIworbXNnaWQgIiIKK21zZ3N0ciAiIgorIlByb2plY3QtSWQtVmVyc2lvbjogZHBrZ1xuIgorIlJlcG9ydC1Nc2dpZC1CdWdzLVRvOiBkZWJpYW4tZHBrZ0BsaXN0cy5kZWJpYW4ub3JnXG4iCisiUE9ULUNyZWF0aW9uLURhdGU6IDIwMTEtMTAtMTQgMDc6MTErMDIwMFxuIgorIlBPLVJldmlzaW9uLURhdGU6IDIwMDctMDktMTYgMjI6NTUtMDQwMFxuIgorIkxhc3QtVHJhbnNsYXRvcjogU3VuamFlIFBhcmsgPGRhcmVoYW5sQGdtYWlsLmNvbT5cbiIKKyJMYW5ndWFnZS1UZWFtOiBLb3JlYW4gPGRlYmlhbi1sMTBuLWtvcmVhbkBsaXN0cy5kZWJpYW4ub3JnPlxuIgorIkxhbmd1YWdlOiBrb1xuIgorIk1JTUUtVmVyc2lvbjogMS4wXG4iCisiQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PVVURi04XG4iCisiQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOC1iaXRcbiIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxMjUKK21zZ2lkICJTZWFyY2ggZm9yID8gIgorbXNnc3RyICLrrLTsl4fsnYQg7LC+7Jy87Iut64uI6rmMID8gIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE0NworbXNnaWQgIkVycm9yOiAiCittc2dzdHIgIuyYpOulmDogIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE3OAorbXNnaWQgIkhlbHA6ICIKK21zZ3N0ciAi64+E7JuA66eQOiAiCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MTg0Cittc2dpZCAiUHJlc3MgPyBmb3IgaGVscCBtZW51LCAuIGZvciBuZXh0IHRvcGljLCA8c3BhY2U+IHRvIGV4aXQgaGVscC4iCittc2dzdHIgIiIKKyLrj4Tsm4Drp5Ag66mU64m064qUID8sIOuLpOydjCDso7zsoJzripQgLiwg64+E7JuA66eQ7JeQ7IScIOuCmOqwgOyLnOugpOuptCA8c3BhY2U+66W8IOuIhOultOyLreyLnOyYpC4iCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MTkxCittc2dpZCAiSGVscCBpbmZvcm1hdGlvbiBpcyBhdmFpbGFibGUgdW5kZXIgdGhlIGZvbGxvd2luZyB0b3BpY3M6IgorbXNnc3RyICLri6TsnYwg7KO87KCc7JeQIOuMgO2VnCDrj4Tsm4Drp5Ag7KCV67O06rCAIOyeiOyKteuLiOuLpDoiCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MTk5Cittc2dpZCAiIgorIlByZXNzIGEga2V5IGZyb20gdGhlIGxpc3QgYWJvdmUsIDxzcGFjZT4gb3IgYHEnIHRvIGV4aXQgaGVscCxcbiIKKyIgIG9yIGAuJyAoZnVsbCBzdG9wKSB0byByZWFkIGVhY2ggaGVscCBwYWdlIGluIHR1cm4uICIKK21zZ3N0ciAiIgorIuychOydmCDrqqnroZ3sl5Ag65Sw6528IO2CpOulvCDriITrpbTsi63si5zsmKQuIOuPhOybgOunkOydhCDrgpjqsIDroKTrqbQgPHNwYWNlPuuCmCBx66W8LFxuIgorIiAg6rCBIOuPhOybgOunkCDtjpjsnbTsp4Drpbwg7Iic7ISc64yA66GcIOydveycvOugpOuptCAuIO2CpOulvCDriITrpbTsi63si5zsmKQuIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjIwNQorbXNnaWQgImVycm9yIHJlYWRpbmcga2V5Ym9hcmQgaW4gaGVscCIKK21zZ3N0ciAi64+E7JuA66eQ7JeQ7IScIO2CpOuztOuTnOulvCDsnb3ripQg642wIOyYpOulmOqwgCDrsJzsg53tlojsirXri4jri6QiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6NTcKK21zZ2lkICJpb2N0bChUSU9DR1dJTlNaKSBmYWlsZWQiCittc2dzdHIgImlvY3RsKFRJT0NHV0lOU1op7J20IOyLpO2MqO2WiOyKteuLiOuLpCIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo2MAorbXNnaWQgImRvdXBkYXRlIGluIFNJR1dJTkNIIGhhbmRsZXIgZmFpbGVkIgorbXNnc3RyICJTSUdXSU5DSCDtlbjrk6Trn6zsl5DshJwgZG91cGRhdGXqsIAg7Iuk7Yyo7ZaI7Iq164uI64ukIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjY3Cittc2dpZCAiZmFpbGVkIHRvIHJlc3RvcmUgb2xkIFNJR1dJTkNIIHNpZ2FjdCIKK21zZ3N0ciAi6rO86rGw7J2YIFNJR1dJTkNIIOyLnOq3uOuEkCDslaHshZjsnYQg67O16rWs7ZWY64qUIOuNsCDsi6TtjKjtlojsirXri4jri6QiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6NjkKK21zZ2lkICJmYWlsZWQgdG8gcmVzdG9yZSBvbGQgc2lnbmFsIG1hc2siCittc2dzdHIgIuqzvOqxsOydmCDsi5zqt7jrhJAg66eI7Iqk7YGs66W8IOuzteq1rO2VmOuKlCDrjbAg7Iuk7Yyo7ZaI7Iq164uI64ukIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjc5Cittc2dpZCAiZmFpbGVkIHRvIGdldCBvbGQgc2lnbmFsIG1hc2siCittc2dzdHIgIuqzvOqxsOydmCDsi5zqt7jrhJAg66eI7Iqk7YGs66W8IOyWu+yWtCDsmKTripQg642wIOyLpO2MqO2WiOyKteuLiOuLpCIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo4MAorbXNnaWQgImZhaWxlZCB0byBnZXQgb2xkIFNJR1dJTkNIIHNpZ2FjdCIKK21zZ3N0ciAi6rO86rGw7J2YIFNJR1dJTkNIIOyLnOq3uOuEkCDslaHshZjsnYQg7Ja77Ja0IOyYpOuKlCDrjbAg7Iuk7Yyo7ZaI7Iq164uI64ukIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjg0Cittc2dpZCAiZmFpbGVkIHRvIGJsb2NrIFNJR1dJTkNIIgorbXNnc3RyICJTSUdXSU5DSOydhCDruJTroZ3tlZjripQg642wIOyLpO2MqO2WiOyKteuLiOuLpCIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo4OQorbXNnaWQgImZhaWxlZCB0byBzZXQgbmV3IFNJR1dJTkNIIHNpZ2FjdCIKK21zZ3N0ciAi7IOIIFNJR1dJTkNIIOyLnOq3uOuEkCDslaHshZjsnYQg7ISk7KCV7ZWY64qUIOuNsCDsi6TtjKjtlojsirXri4jri6QiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTI2Cittc2dpZCAiZmFpbGVkIHRvIGFsbG9jYXRlIGNvbG91ciBwYWlyIgorbXNnc3RyICLquIDsnpAv67CU7YOVIOyDieyDgSDtlaDri7nsnbQg7Iuk7Yyo7ZaI7Iq164uI64ukIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE2NworbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgdGl0bGUgd2luZG93IgorbXNnc3RyICLsoJzrqqkg7LC9IOunjOuTpOq4sOqwgCDsi6TtjKjtlojsirXri4jri6QiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTcxCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSB3aGF0aW5mbyB3aW5kb3ciCittc2dzdHIgIuygleuztCDssL0g66eM65Ok6riw6rCAIOyLpO2MqO2WiOyKteuLiOuLpCIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxNzUKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGJhc2VsaXN0IHBhZCIKK21zZ3N0ciAi6riw67O4IOuqqeuhnSDssL0g66eM65Ok6riw6rCAIOyLpO2MqO2WiOyKteuLiOuLpCIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxNzgKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGhlYWRpbmcgcGFkIgorbXNnc3RyICLsoJzrqqkg7LC9IOunjOuTpOq4sOqwgCDsi6TtjKjtlojsirXri4jri6QiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTgyCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSB0aGlzc3RhdGUgcGFkIgorbXNnc3RyICLtmITsnqwg7IOB7YOcIOywvSDrp4zrk6TquLDqsIAg7Iuk7Yyo7ZaI7Iq164uI64ukIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE4NgorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgaW5mbyBwYWQiCittc2dzdHIgIuygleuztCDssL0g66eM65Ok6riw6rCAIOyLpO2MqO2WiOyKteuLiOuLpCIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxOTEKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHF1ZXJ5IHdpbmRvdyIKK21zZ3N0ciAi7KeI7J2YIOywvSDrp4zrk6TquLDqsIAg7Iuk7Yyo7ZaI7Iq164uI64ukIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjI1NQorbXNnaWQgIktleWJpbmRpbmdzIgorbXNnc3RyICLtgqTrsJTsnbjrlKkiCisKKyMgRklYTUU6IGJhZCBtc2dpZAorIzogZHNlbGVjdC9iYXNlbGlzdC5jYzozMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAtLSAlZCUlLCBwcmVzcyAiCittc2dzdHIgIiAgLS0gJWQlJSwgIgorCisjIEZJWE1FOiBiYWQgbXNnaWQKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MzA2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGZvciBtb3JlIgorbXNnc3RyICLrjZQg67O066Ck66m0ICVzIO2CpOulvCDriITrpbTsi63si5zsmKQiCisKKyMgRklYTUU6IGJhZCBtc2dpZAorIzogZHNlbGVjdC9iYXNlbGlzdC5jYzozMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgdG8gZ28gYmFjayIKK21zZ3N0ciAi65Kk66GcIOqwgOugpOuptCAlcyDtgqTrpbwg64iE66W07Iut7Iuc7JikIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjc4Cittc2dpZCAiW25vdCBib3VuZF0iCittc2dzdHIgIlvsoJXsnZjrkJjsp4Ag7JWK7J2MXSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzo4MgorIywgYy1mb3JtYXQKK21zZ2lkICJbdW5rOiAlZF0iCittc2dzdHIgIlvtgqTrsojtmLg6ICVkXSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxMzkKK21zZ2lkICJTY3JvbGwgb253YXJkcyB0aHJvdWdoIGhlbHAvaW5mb3JtYXRpb24iCittc2dzdHIgIuuPhOybgOunkC/soJXrs7Trpbwg7JyE66GcIOyKpO2BrOuhpCIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDAKK21zZ2lkICJTY3JvbGwgYmFja3dhcmRzIHRocm91Z2ggaGVscC9pbmZvcm1hdGlvbiIKK21zZ3N0ciAi64+E7JuA66eQL+ygleuztOulvCDslYTrnpjroZwg7Iqk7YGs66GkIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0MQorbXNnaWQgIk1vdmUgdXAiCittc2dzdHIgIuychOuhnCIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDIKK21zZ2lkICJNb3ZlIGRvd24iCittc2dzdHIgIuyVhOuemOuhnCIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDMKK21zZ2lkICJHbyB0byB0b3Agb2YgbGlzdCIKK21zZ3N0ciAi66qp66Gd7J2YIOunqCDsnITroZwiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ0Cittc2dpZCAiR28gdG8gZW5kIG9mIGxpc3QiCittc2dzdHIgIuuqqeuhneydmCDrp6gg7JWE656Y66GcIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0NQorbXNnaWQgIlJlcXVlc3QgaGVscCAoY3ljbGUgdGhyb3VnaCBoZWxwIHNjcmVlbnMpIgorbXNnc3RyICLrj4Tsm4Drp5Ag7JqU7LKtICjsl6zrn6wg64+E7JuA66eQIO2ZlOuptOydhCDrsojqsIjslYQg6rCA66m07IScIO2RnOyLnCkiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ2Cittc2dpZCAiQ3ljbGUgdGhyb3VnaCBpbmZvcm1hdGlvbiBkaXNwbGF5cyIKK21zZ3N0ciAi7Jes65+sIOygleuztCDtkZzsi5zrpbwg67KI6rCI7JWEIOqwgOuptOyEnCDtkZzsi5wiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ3Cittc2dpZCAiUmVkcmF3IGRpc3BsYXkiCittc2dzdHIgIu2ZlOuptCDri6Tsi5wg6re466as6riwIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0OAorbXNnaWQgIlNjcm9sbCBvbndhcmRzIHRocm91Z2ggbGlzdCBieSAxIGxpbmUiCittc2dzdHIgIuuqqeuhneydhCDtlZwg7KSEIOyVnuycvOuhnCDsiqTtgazroaQiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ5Cittc2dpZCAiU2Nyb2xsIGJhY2t3YXJkcyB0aHJvdWdoIGxpc3QgYnkgMSBsaW5lIgorbXNnc3RyICLrqqnroZ3snYQg7ZWc7KSEIOuSpOuhnCDsiqTtgazroaQiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTUwCittc2dpZCAiU2Nyb2xsIG9ud2FyZHMgdGhyb3VnaCBoZWxwL2luZm9ybWF0aW9uIGJ5IDEgbGluZSIKK21zZ3N0ciAi64+E7JuA66eQL+ygleuztOulvCDtlZwg7KSEIOyVnuycvOuhnCDsiqTtgazroaQiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTUxCittc2dpZCAiU2Nyb2xsIGJhY2t3YXJkcyB0aHJvdWdoIGhlbHAvaW5mb3JtYXRpb24gYnkgMSBsaW5lIgorbXNnc3RyICLrj4Tsm4Drp5Av7KCV67O066W8IO2VnCDspIQg65Kk66GcIOyKpO2BrOuhpCIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTIKK21zZ2lkICJTY3JvbGwgb253YXJkcyB0aHJvdWdoIGxpc3QiCittc2dzdHIgIuuqqeuhneydhCDslZ7snLzroZwg7Iqk7YGs66GkIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1MworbXNnaWQgIlNjcm9sbCBiYWNrd2FyZHMgdGhyb3VnaCBsaXN0IgorbXNnc3RyICLrqqnroZ3snYQg65Kk66GcIOyKpO2BrOuhpCIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTYKK21zZ2lkICJNYXJrIHBhY2thZ2UocykgZm9yIGluc3RhbGxhdGlvbiIKK21zZ3N0ciAi7ISk7LmY7ZWY64qUIOq+uOufrOuvuCDtkZzsi5wiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTU3Cittc2dpZCAiTWFyayBwYWNrYWdlKHMpIGZvciBkZWluc3RhbGxhdGlvbiIKK21zZ3N0ciAi7KeA7Jqw64qUIOq+uOufrOuvuCDtkZzsi5wiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTU4Cittc2dpZCAiTWFyayBwYWNrYWdlKHMpIGZvciBkZWluc3RhbGwgYW5kIHB1cmdlIgorbXNnc3RyICLsp4DsmrDripQg6r6465+s66+4IOuwjyDquajrgZfsnbQg7ZWgIOq+uOufrOuvuCDtkZzsi5wiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTU5Cittc2dpZCAiTWFrZSBoaWdobGlnaHQgbW9yZSBzcGVjaWZpYyIKK21zZ3N0ciAi67CY7KCEIO2RnOyLnOulvCDrjZQg67aE66qF7ZWY6rKMIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2MAorbXNnaWQgIk1ha2UgaGlnaGxpZ2h0IGxlc3Mgc3BlY2lmaWMiCittc2dzdHIgIuuwmOyghCDtkZzsi5zrpbwg642cIOu2hOuqhe2VmOqyjCIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjEKK21zZ2lkICJTZWFyY2ggZm9yIGEgcGFja2FnZSB3aG9zZSBuYW1lIGNvbnRhaW5zIGEgc3RyaW5nIgorbXNnc3RyICLsnbTrpoTsl5Ag7Yq57KCVIOusuOyekOyXtOydtCDrk6TslrQg7J6I64qUIOq+uOufrOuvuOulvCDssL7sirXri4jri6QiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTYyCittc2dpZCAiUmVwZWF0IGxhc3Qgc2VhcmNoLiIKK21zZ3N0ciAi66eI7KeA66eJIOywvuq4sCDrsJjrs7UuIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2MworbXNnaWQgIlN3YXAgc29ydCBvcmRlciBwcmlvcml0eS9zZWN0aW9uIgorbXNnc3RyICLsoJXroKwg7Iic7ISc66W8IOyasOyEoOyInOychC/shLnshZjsnLzroZwg67CU6r+IIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2NAorbXNnaWQgIlF1aXQsIGNvbmZpcm1pbmcsIGFuZCBjaGVja2luZyBkZXBlbmRlbmNpZXMiCittc2dzdHIgIuuBneuCtOq4sCwg7ZmV7J24LCDsnZjsobTshLEg6rKA7IKsIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2NQorbXNnaWQgIlF1aXQsIGNvbmZpcm1pbmcgd2l0aG91dCBjaGVjayIKK21zZ3N0ciAi64Gd64K06riwLCDqsoDsgqzsl4bsnbQg7ZmV7J24IgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2NgorbXNnaWQgIlF1aXQsIHJlamVjdGluZyBjb25mbGljdC9kZXBlbmRlbmN5IHN1Z2dlc3Rpb25zIgorbXNnc3RyICLrgZ3rgrTquLAsIOy2qeuPjC/snZjsobTshLEg7KCc7JWIIOqxsOu2gCIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjcKK21zZ2lkICJBYm9ydCAtIHF1aXQgd2l0aG91dCBtYWtpbmcgY2hhbmdlcyIKK21zZ3N0ciAi7KSR64uoIC0g67CU6r647KeAIOyViuqzoCDrgZ3rgrTquLAiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY4Cittc2dpZCAiUmV2ZXJ0IHRvIG9sZCBzdGF0ZSBmb3IgYWxsIHBhY2thZ2VzIgorbXNnc3RyICLrqqjrk6Ag6r6465+s66+466W8IOydtOyghCDsg4Htg5zroZwg65CY64+M66a8IgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2OQorbXNnaWQgIlJldmVydCB0byBzdWdnZXN0ZWQgc3RhdGUgZm9yIGFsbCBwYWNrYWdlcyIKK21zZ3N0ciAi66qo65OgIOq+uOufrOuvuOulvCDsoJzslYgg7IOB7YOc66GcIOuQmOuPjOumvCIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNzAKK21zZ2lkICJSZXZlcnQgdG8gZGlyZWN0bHkgcmVxdWVzdGVkIHN0YXRlIGZvciBhbGwgcGFja2FnZXMiCittc2dzdHIgIuuqqOuToCDqvrjrn6zrr7jrpbwg7KCc7JWIIOyDge2DnOuhnCDsp4HsoJEg65CY64+M66a8IgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE3MQorIywgZnV6enkKK21zZ2lkICJSZXZlcnQgdG8gY3VycmVudGx5IGluc3RhbGxlZCBzdGF0ZSBmb3IgYWxsIHBhY2thZ2VzIgorbXNnc3RyICLrqqjrk6Ag6r6465+s66+466W8IOygnOyViCDsg4Htg5zroZwg7KeB7KCRIOuQmOuPjOumvCIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNzQKK21zZ2lkICJTZWxlY3QgY3VycmVudGx5LWhpZ2hsaWdodGVkIGFjY2VzcyBtZXRob2QiCittc2dzdHIgIu2YhOyerCDrsJjsoITrkJwg7ISk7LmYIOuwqeuyleydhCDshKDtg50iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTc1Cittc2dpZCAiUXVpdCB3aXRob3V0IGNoYW5naW5nIHNlbGVjdGVkIGFjY2VzcyBtZXRob2QiCittc2dzdHIgIuyEoO2Dne2VnCDshKTsuZgg67Cp67KV7J2EIOuwlOq+uOyngCDslYrqs6Ag7KKF66OMIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjI5Cittc2dpZCAiS2V5c3Ryb2tlcyIKK21zZ3N0ciAi7YKkIOyeheugpSIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoyOQorbXNnaWQgIiIKKyJNb3Rpb24ga2V5czogTmV4dC9QcmV2aW91cywgVG9wL0VuZCwgVXAvRG93biwgQmFja3dhcmRzL0ZvcndhcmRzOlxuIgorIiAgaiwgRG93bi1hcnJvdyAgICAgICAgIGssIFVwLWFycm93ICAgICAgICAgICAgIG1vdmUgaGlnaGxpZ2h0XG4iCisiICBOLCBQYWdlLWRvd24sIFNwYWNlICAgUCwgUGFnZS11cCwgQmFja3NwYWNlICAgc2Nyb2xsIGxpc3QgYnkgMSBwYWdlXG4iCisiICBebiAgICAgICAgICAgICAgICAgICAgXnAgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGxpc3QgYnkgMSBsaW5lXG4iCisiICB0LCBIb21lICAgICAgICAgICAgICAgZSwgRW5kICAgICAgICAgICAgICAgICAganVtcCB0byB0b3AvZW5kIG9mIGxpc3RcbiIKKyIgIHUgICAgICAgICAgICAgICAgICAgICBkICAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyBieSAxIHBhZ2VcbiIKKyIgIF51ICAgICAgICAgICAgICAgICAgICBeZCAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyBieSAxIGxpbmVcbiIKKyIgIEIsIExlZnQtYXJyb3cgICAgICAgICBGLCBSaWdodC1hcnJvdyAgICAgICAgICBwYW4gZGlzcGxheSBieSAxLzMgc2NyZWVuXG4iCisiICBeYiAgICAgICAgICAgICAgICAgICAgXmYgICAgICAgICAgICAgICAgICAgICAgcGFuIGRpc3BsYXkgYnkgMSBjaGFyYWN0ZXJcbiIKKyJcbiIKKyJNYXJrIHBhY2thZ2VzIGZvciBsYXRlciBwcm9jZXNzaW5nOlxuIgorIiArLCBJbnNlcnQgIGluc3RhbGwgb3IgdXBncmFkZSAgICAgID0sIEggIGhvbGQgaW4gcHJlc2VudCBzdGF0ZVxuIgorIiAtLCBEZWxldGUgIHJlbW92ZSAgICAgICAgICAgICAgICAgIDosIEcgIHVuaG9sZDogdXBncmFkZSBvciBsZWF2ZSAiCisidW5pbnN0YWxsZWRcbiIKKyIgXyAgICAgICAgICByZW1vdmUgJiBwdXJnZSBjb25maWdcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBNaXNjZWxsYW5lb3VzOlxuIgorIlF1aXQsIGV4aXQsIG92ZXJ3cml0ZSAobm90ZSBjYXBpdGFscyEpOiAgICAgICA/LCBGMSByZXF1ZXN0IGhlbHAgKGFsc28gIgorIkhlbHApXG4iCisiIFJldHVybiAgQ29uZmlybSwgcXVpdCAoY2hlY2sgZGVwZW5kZW5jaWVzKSAgIGksIEkgIHRvZ2dsZS9jeWNsZSBpbmZvICIKKyJkaXNwbGF5c1xuIgorIiAgIFEgICAgIENvbmZpcm0sIHF1aXQgKG92ZXJyaWRlIGRlcC5zKSAgICAgICBvLCBPICBjeWNsZSB0aHJvdWdoIHNvcnQgIgorIm9wdGlvbnNcbiIKKyIgWCwgRXNjICBlWGl0LCBhYmFuZG9uaW5nIGFueSBjaGFuZ2VzIG1hZGUgICAgdiwgViAgY2hhbmdlIHN0YXR1cyBkaXNwbGF5ICIKKyJvcHRzXG4iCisiICAgUiAgICAgUmV2ZXJ0IHRvIHN0YXRlIGJlZm9yZSB0aGlzIGxpc3QgICAgICBebCAgIHJlZHJhdyBkaXNwbGF5XG4iCisiICAgVSAgICAgc2V0IGFsbCB0byBzVWdnZXN0ZWQgc3RhdGUgICAgICAgICAgICAgLyAgIHNlYXJjaCAoUmV0dXJuIHRvICIKKyJjYW5jZWwpXG4iCisiICAgRCAgICAgc2V0IGFsbCB0byBEaXJlY3RseSByZXF1ZXN0ZWQgc3RhdGUgIG4sIFxcICByZXBlYXQgbGFzdCBzZWFyY2hcbiIKK21zZ3N0ciAiIgorIuydtOuPmSDtgqQ6IOydtOyghC/ri6TsnYwsIOyymOydjC/rgZ0sIOychC/slYTrnpgsIOyVni/rkqQ6XG4iCisiICBqLCDslYTrnpgg7ZmU7IK07ZGcICAgICAgICAgaywg7JyEIO2ZlOyCtO2RnCAgICAgICAgICAgIOuwmOyghCDrp4nrjIAg7J2064+ZXG4iCisiICBOLCBQYWdlLWRvd24sIOyKpO2OmOydtOyKpCBQLCBQYWdlLXVwLCDrsLHsiqTtjpjsnbTsiqQgIO2VnCDtjpjsnbTsp4Ag64uo7JyE66GcIOuqqeuhnSDsiqTtgawiCisi66GkXG4iCisiICBebiAgICAgICAgICAgICAgICAgICAgIF5wICAgICAgICAgICAgICAgICAgICAgIO2VnCDspIQg64uo7JyE66GcIOuqqeuhnSDsiqTtgazroaRcbiIKKyIgIHQsIEhvbWUgICAgICAgICAgICAgICAgZSwgRW5kICAgICAgICAgICAgICAgICAg66qp66Gd7J2YIOyymOydjC/rgZ3snLzroZwg7J2064+Z7ZWp64uIIgorIuuLpFxuIgorIiAgdSAgICAgICAgICAgICAgICAgICAgICBkICAgICAgICAgICAgICAgICAgICAgICDtlZwg7Y6Y7J207KeAIOuLqOychOuhnCDsoJXrs7Qg7Iqk7YGsIgorIuuhpFxuIgorIiAgXnUgICAgICAgICAgICAgICAgICAgICBeZCAgICAgICAgICAgICAgICAgICAgICDtlZwg7KSEIOuLqOychOuhnCDsoJXrs7Qg7Iqk7YGs66GkXG4iCisiICBCLCDsmbzsqr0g7ZmU7IK07ZGcICAgICAgICAgRiwg7Jik66W47Kq9IO2ZlOyCtO2RnCAgICAgICAg7LC97J2EIO2ZlOuptOydmCAxLzMg7KKM7Jqw66GcIOydtCIKKyLrj5lcbiIKKyIgIF5iICAgICAgICAgICAgICAgICAgICAgXmYgICAgICAgICAgICAgICAgICAgICAg7LC97J2EIO2VnCDquIDsnpDrp4ztgbwg7ZmU66m0IOyijOyasCAiCisi7J2064+ZXG4iCisiXG4iCisi64KY7KSR7JeQIOyymOumrO2VoCDqvrjrn6zrr7gg7ZGc7IucOlxuIgorIiArLCBJbnNlcnQgIOyEpOy5mCDtmLnsnYAg7JeF6re466CI7J2065OcICAgID0sIEggIO2YhOyerCDsg4Htg5zroZwg6rOg7KCVXG4iCisiIC0sIERlbGV0ZSAg7KeA7Jqw6riwICAgICAgICAgICAgICAgICA6LCBHICDqs6DsoJXtlbTsoJw6IOyXheq3uOugiOydtOuTnCDtmLnsnYAg64Ko6rKo65GQ6riwXG4iCisiIF8gICAgICAgICAg7KeA7Jqw6riwIOuwjyDshKTsoJUg6rmo64GX7J20XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg6re4IOyZuDpcbiIKKyLrgZ3rgrTquLAsIOuCmOqwkCwg642u7Ja07JOw6riwICjrjIDrrLjsnpAg7Jyg7J2YISk6ICAgICAgICA/LCBGMSDrj4Tsm4Drp5Ag7JqU7LKtICjtmLnsnYAgSGVscClcbiIKKyIgUmV0dXJuICDtmZXsnbgsIOuBneuCtOq4sCAo7J2Y7KG07ISxIOqygOyCrCkgICAgICAgICAgIGksIEkgIOygleuztCDtmZTrqbQg7Yag6riAL+yInO2ZmFxuIgorIiAgIFEgICAgIO2ZleyduCwg64Gd64K06riwICjsnZjsobTshLEg66y07IucKSAgICAgICAgICAgbywgTyAg7KCV66CsIOyYteyFmCDsiJztmZhcbiIKKyIgWCwgRXNjICDrgpjqsIDquLAsIOyWtOuWoO2VnCDrsJTrgJAg7IKs7ZWt64+EIOustOyLnCAgICAgIHYsIFYgIOyDge2DnCDtkZzsi5wg7Ji17IWYIOuwlOq+uOq4sFxuIgorIiAgIFIgICAgIOydtCDrqqnroZ0g7KCEIOyDge2DnOuhnCDrkJjrj4zrpqzquLAgICAgICAgICAgICBebCAgIO2ZlOuptCDri6Tsi5wg6re466as6riwXG4iCisiICAgVSAgICAg66qo65GQIOygnOyViO2VmOuKlCDsg4Htg5zroZwgICAgICAgICAgICAgICAgICAgLyAgIOywvuq4sCAo7Leo7IaM7ZWY66Ck66m0IOyXlO2EsClcbiIKKyIgICBEICAgICDrqqjrkZAg7KeB7KCRIOyalOyyreuQnCDsg4Htg5zroZwgICAgICAgICAgICAgICAgXFwgIOuniOyngOuniSDssL7quLAg67CY67O1XG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6NTUKK21zZ2lkICJJbnRyb2R1Y3Rpb24gdG8gcGFja2FnZSBzZWxlY3Rpb25zIgorbXNnc3RyICLqvrjrn6zrr7gg7ISg7YOd7JeQIOq0gO2VnCDslYjrgrQiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6NTUKK21zZ2lkICIiCisiV2VsY29tZSB0byBkc2VsZWN0J3MgbWFpbiBwYWNrYWdlIGxpc3RpbmcuXG4iCisiXG4iCisiWW91IHdpbGwgYmUgcHJlc2VudGVkIHdpdGggYSBsaXN0IG9mIHBhY2thZ2VzIHdoaWNoIGFyZSBpbnN0YWxsZWQgb3IgIgorImF2YWlsYWJsZVxuIgorImZvciBpbnN0YWxsYXRpb24uICBZb3UgY2FuIG5hdmlnYXRlIGFyb3VuZCB0aGUgbGlzdCB1c2luZyB0aGUgY3Vyc29yIGtleXMsXG4iCisibWFyayBwYWNrYWdlcyBmb3IgaW5zdGFsbGF0aW9uICh1c2luZyBgKycpIG9yIGRlaW5zdGFsbGF0aW9uICh1c2luZyBgLScpLlxuIgorIlBhY2thZ2VzIGNhbiBiZSBtYXJrZWQgZWl0aGVyIHNpbmdseSBvciBpbiBncm91cHM7IGluaXRpYWxseSB5b3Ugd2lsbCBzZWUgIgorInRoYXRcbiIKKyJ0aGUgbGluZSBgQWxsIHBhY2thZ2VzJyBpcyBzZWxlY3RlZC4gIGArJywgYC0nIGFuZCBzbyBvbiB3aWxsIGFmZmVjdCBhbGwgIgorInRoZVxuIgorInBhY2thZ2VzIGRlc2NyaWJlZCBieSB0aGUgaGlnaGxpZ2h0ZWQgbGluZS5cbiIKKyJcbiIKKyJTb21lIG9mIHlvdXIgY2hvaWNlcyB3aWxsIGNhdXNlIGNvbmZsaWN0cyBvciBkZXBlbmRlbmN5IHByb2JsZW1zOyB5b3Ugd2lsbCAiCisiYmVcbiIKKyJnaXZlbiBhIHN1Yi1saXN0IG9mIHRoZSByZWxldmFudCBwYWNrYWdlcywgc28gdGhhdCB5b3UgY2FuIHNvbHZlIHRoZSAiCisicHJvYmxlbXMuXG4iCisiXG4iCisiWW91IHNob3VsZCByZWFkIHRoZSBsaXN0IG9mIGtleXMgYW5kIHRoZSBleHBsYW5hdGlvbnMgb2YgdGhlIGRpc3BsYXkuXG4iCisiTXVjaCBvbi1saW5lIGhlbHAgaXMgYXZhaWxhYmxlLCBwbGVhc2UgbWFrZSB1c2Ugb2YgaXQgLSBwcmVzcyBgPycgYXRcbiIKKyJhbnkgdGltZSBmb3IgaGVscC5cbiIKKyJcbiIKKyJXaGVuIHlvdSBoYXZlIGZpbmlzaGVkIHNlbGVjdGluZyBwYWNrYWdlcywgcHJlc3MgPGVudGVyPiB0byBjb25maXJtICIKKyJjaGFuZ2VzLFxuIgorIm9yIGBYJyB0byBxdWl0IHdpdGhvdXQgc2F2aW5nIGNoYW5nZXMuIEEgZmluYWwgY2hlY2sgb24gY29uZmxpY3RzIGFuZFxuIgorImRlcGVuZGVuY2llcyB3aWxsIGJlIGRvbmUgLSBoZXJlIHRvbyB5b3UgbWF5IHNlZSBhIHN1Ymxpc3QuXG4iCisiXG4iCisiUHJlc3MgPHNwYWNlPiB0byBsZWF2ZSBoZWxwIGFuZCBlbnRlciB0aGUgbGlzdCBub3cuXG4iCittc2dzdHIgIiIKKyLso7zsmpQg6r6465+s66+4IOuqqeuhneyeheuLiOuLpC5cbiIKKyJcbiIKKyLsl6zquLDsl5DripQg7ISk7LmY65CY7JeI6rGw64KYIOyEpOy5mO2VoCDsiJgg7J6I64qUIOq+uOufrOuvuOydmCDrqqnroZ3snbQg64KY7YOA64Kp64uI64ukLiAg7Luk7ISc7YKk66W8XG4iCisi7IKs7Jqp7ZWY7JesIOuqqeuhneydhCDsgrTtjrTrs7wg7IiYIOyeiOqzoCwg7ISk7LmYKGArJyDsgqzsmqkp64KYIOyEpOy5mO2VtOygnChgLScg7IKs7JqpKeulvFxuIgorIu2VmOuPhOuhnSDqvrjrn6zrr7jsl5Ag7ZGc7Iuc7ZWgIOyImCDsnojsirXri4jri6QuICDqvrjrn6zrr7jrpbwg7ZWY64KY7JSpIO2RnOyLnO2VoCDsiJjrj4Qg7J6I6rOgIOq3uOujuVxuIgorIuuLqOychOuhnCDtkZzsi5ztlaAg7IiY64+EIOyeiOyKteuLiOuLpC4g7LWc7LSI7JeQ64qUIGDrqqjrk6Ag6r6465+s66+4JyDspITsnbQg7ISg7YOd65CY7Ja0IOyeiOyKteuLiOuLpC5cbiIKKyJgKycsIGAtJyDrk7HsnYAg67CY7KCEIOunieuMgOyXkCDtlbTri7nrkJjripQg66qo65OgIOq+uOufrOuvuOyXkCDsmIHtlqXsnYQg66+47Lmp64uI64ukLlxuIgorIlxuIgorIuyEoO2DneydhCDslrTrlrvqsowg7ZWY64qQ64OQ7JeQIOuUsOudvCDstqnrj4zsnbTrgpgg7J2Y7KG07ISxIOusuOygnOulvCDsnbzsnLztgqwg7IiY64+EIOyeiOyKteuLiOuLpC5cbiIKKyLsnbQg6rK97JqwIOq3uCDrrLjsoJzsl5Ag7ZW064u565CY64qUIOq+uOufrOuvuOydmCDrqqnroZ3snbQg64KY7YOA64Kp64uI64ukLiDqt7gg7JWI7JeQ7IScIOusuOygnOulvFxuIgorIu2VtOqysO2VmOuptCDrkKnri4jri6QuXG4iCisiXG4iCisi7YKkIOyeheugpSDrsKnrspUg67CPIO2ZlOuptCDqtazshLHsl5Ag64yA7ZWcIOuPhOybgOunkOydhCDsnb3slrQg67O07Iut7Iuc7JikLiAg64uk7JaR7ZWcIOyYqOudvOyduFxuIgorIuuPhOybgOunkOydhCDrs7wg7IiYIOyeiOycvOuLiCDsnpgg7J207Jqp7ZWY7Iut7Iuc7JikIC0g7Ja47KCc65Og7KeAIOuPhOybgOunkOydtCDtlYTsmpTtlZjrqbQgYD8n66W8XG4iCisi64iE66W07Iut7Iuc7JikLlxuIgorIlxuIgorIuq+uOufrOuvuCDshKDtg53snYQg66eI7LmY66m0LCA8ZW50ZXI+66W8IOuIjOufrCDtlbTri7kg67CU64CQIOyCrO2VreydhCDtmZXsoJXtlZjsi63si5zsmKQuXG4iCisiJ1En66W8IOuIhOultOuptCDrsJTrgJAg7IKs7ZWt7J2EIOyggOyepe2VmOyngCDslYrqs6Ag66eI7Lmp64uI64ukLiAg7Lap64+M7J2064KYIOydmOyhtOyEseyXkFxuIgorIuq0gO2VtCDrp4jsp4Drp4kg6rKA7IKs66W8IO2VmOqyjCDrkJjqs6AsIOqxsOq4sOyXkOyEnOuPhCDqt7gg7Lap64+M7J2064KYIOydmOyhtOyEseyXkCDqtIDroKjrkJxcbiIKKyLqvrjrn6zrr7gg66qp66Gd7J20IOuCmO2DgOuCqeuLiOuLpC5cbiIKKyJcbiIKKyI8c3BhY2U+66W8IOuIhOultOyLnOuptCDrj4Tsm4Drp5DsnYQg64KY6rCA7IScIOq+uOufrOuvuCDrqqnroZ3snLzroZwg65Ok7Ja06rCR64uI64ukLlxuIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjgwCittc2dpZCAiSW50cm9kdWN0aW9uIHRvIHJlYWQtb25seSBwYWNrYWdlIGxpc3QgYnJvd3NlciIKK21zZ3N0ciAi6r6465+s66+4IOuqqeuhnSDsnb3quLAg7KCE7JqpIOu4jOudvOyasOyggCDshozqsJwiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6ODAKK21zZ2lkICIiCisiV2VsY29tZSB0byBkc2VsZWN0J3MgbWFpbiBwYWNrYWdlIGxpc3RpbmcuXG4iCisiXG4iCisiWW91IHdpbGwgYmUgcHJlc2VudGVkIHdpdGggYSBsaXN0IG9mIHBhY2thZ2VzIHdoaWNoIGFyZSBpbnN0YWxsZWQgb3IgIgorImF2YWlsYWJsZVxuIgorImZvciBpbnN0YWxsYXRpb24uICBTaW5jZSB5b3UgZG8gbm90IGhhdmUgdGhlIHByaXZpbGVnZSBuZWNlc3NhcnkgdG8gdXBkYXRlXG4iCisicGFja2FnZSBzdGF0ZXMsIHlvdSBhcmUgaW4gYSByZWFkLW9ubHkgbW9kZS4gIFlvdSBjYW4gbmF2aWdhdGUgYXJvdW5kIHRoZVxuIgorImxpc3QgdXNpbmcgdGhlIGN1cnNvciBrZXlzIChwbGVhc2Ugc2VlIHRoZSBgS2V5c3Ryb2tlcycgaGVscCBzY3JlZW4pLCAiCisib2JzZXJ2ZVxuIgorInRoZSBzdGF0dXMgb2YgdGhlIHBhY2thZ2VzIGFuZCByZWFkIGluZm9ybWF0aW9uIGFib3V0IHRoZW0uXG4iCisiXG4iCisiWW91IHNob3VsZCByZWFkIHRoZSBsaXN0IG9mIGtleXMgYW5kIHRoZSBleHBsYW5hdGlvbnMgb2YgdGhlIGRpc3BsYXkuXG4iCisiTXVjaCBvbi1saW5lIGhlbHAgaXMgYXZhaWxhYmxlLCBwbGVhc2UgbWFrZSB1c2Ugb2YgaXQgLSBwcmVzcyBgPycgYXRcbiIKKyJhbnkgdGltZSBmb3IgaGVscC5cbiIKKyJcbiIKKyJXaGVuIHlvdSBoYXZlIGZpbmlzaGVkIGJyb3dzaW5nLCBwcmVzcyBgUScgb3IgPGVudGVyPiB0byBxdWl0LlxuIgorIlxuIgorIlByZXNzIDxzcGFjZT4gdG8gbGVhdmUgaGVscCBhbmQgZW50ZXIgdGhlIGxpc3Qgbm93LlxuIgorbXNnc3RyICIiCisi7KO8IOq+uOufrOuvuCDrqqnroZ3snoXri4jri6QuXG4iCisiXG4iCisi7Jes6riw7JeQ64qUIOyEpOy5mOuQmOyXiOqxsOuCmCDshKTsuZjtlaAg7IiYIOyeiOuKlCDqvrjrn6zrr7gg66qp66Gd7J20IOuCmO2DgOuCqeuLiOuLpC4gIOq+uOufrOuvuFxuIgorIuyDge2DnOulvCDrsJTqv4Ag7IiYIOyeiOuKlCDqtoztlZzsnbQg7JeG6riwIOuVjOusuOyXkCwg7KeA6riI7J2AIOydveq4sC3soITsmqkg66qo65Oc7J6F64uI64ukLlxuIgorIuy7pOyEnCDtgqTrpbwg7IKs7Jqp7ZW0IOuqqeuhnSDsgqzsnbTrpbwg7J2064+Z7ZWgIOyImCDsnojqs6AgKGDtgqQg7J6F66ClJyDrj4Tsm4Drp5Ag7ZmU66m07J2EXG4iCisi67O07Iut7Iuc7JikKSwg6r6465+s66+47J2YIOyDge2DnOulvCDrs7TqsbDrgpgg6r6465+s66+47J2YIOygleuztOulvCDsnb3slrQg67O8IOyImCDsnojsirXri4jri6QuXG4iCisiXG4iCisi7YKkIOyeheugpSDrsKnrspUg67CPIO2ZlOuptCDqtazshLHsl5Ag64yA7ZWcIOuPhOybgOunkOydhCDsnb3slrQg67O07Iut7Iuc7JikLiAg64uk7JaR7ZWcIOyYqOudvOyduFxuIgorIuuPhOybgOunkOydhCDrs7wg7IiYIOyeiOycvOuLiCDsnbTsmqntlZjsi63si5zsmKQgLSDslrjsoJzrk6Dsp4Ag64+E7JuA66eQ7J20IO2VhOyalO2VmOuptCBgPyfrpbxcbiIKKyLriITrpbTsi63si5zsmKQuXG4iCisiXG4iCisi6r6465+s66+4IOywvuyVhOuztOq4sOulvCDrp4jsuZjqs6AsICdRJ+ulvCDriITrpbTqsbDrgpggPGVudGVyPuulvCDriITrpbTrqbQg64Gd64Kp64uI64ukLlxuIgorIlxuIgorIuuPhOybgOunkOydhCDsooXro4ztlZjqs6Ag66qp66Gd7Jy866GcIOuTpOyVhOqwgOugpOuptCA8c3BhY2U+66W8IOuIhOultOyLreyLnOyYpC5cbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo5OQorbXNnaWQgIkludHJvZHVjdGlvbiB0byBjb25mbGljdC9kZXBlbmRlbmN5IHJlc29sdXRpb24gc3ViLWxpc3QiCittc2dzdHIgIuy2qeuPjC/snZjsobTshLEg7ZW06rKwIO2VmOychCDrqqnroZ0g7IaM6rCcIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjk5Cittc2dpZCAiIgorIkRlcGVuZGVuY3kvY29uZmxpY3QgcmVzb2x1dGlvbiAtIGludHJvZHVjdGlvbi5cbiIKKyJcbiIKKyJPbmUgb3IgbW9yZSBvZiB5b3VyIGNob2ljZXMgaGF2ZSByYWlzZWQgYSBjb25mbGljdCBvciBkZXBlbmRlbmN5IHByb2JsZW0gLVxuIgorInNvbWUgcGFja2FnZXMgc2hvdWxkIG9ubHkgYmUgaW5zdGFsbGVkIGluIGNvbmp1bmN0aW9uIHdpdGggY2VydGFpbiBvdGhlcnMsICIKKyJhbmRcbiIKKyJzb21lIGNvbWJpbmF0aW9ucyBvZiBwYWNrYWdlcyBtYXkgbm90IGJlIGluc3RhbGxlZCB0b2dldGhlci5cbiIKKyJcbiIKKyJZb3Ugd2lsbCBzZWUgYSBzdWItbGlzdCBjb250YWluaW5nIHRoZSBwYWNrYWdlcyBpbnZvbHZlZC4gIFRoZSBib3R0b20gaGFsZiAiCisib2ZcbiIKKyJ0aGUgZGlzcGxheSBzaG93cyByZWxldmFudCBjb25mbGljdHMgYW5kIGRlcGVuZGVuY2llczsgdXNlIGBpJyB0byBjeWNsZSAiCisiYmV0d2VlblxuIgorInRoYXQsIHRoZSBwYWNrYWdlIGRlc2NyaXB0aW9ucyBhbmQgdGhlIGludGVybmFsIGNvbnRyb2wgaW5mb3JtYXRpb24uXG4iCisiXG4iCisiQSBzZXQgb2YgYHN1Z2dlc3RlZCcgcGFja2FnZXMgaGFzIGJlZW4gY2FsY3VsYXRlZCwgYW5kIHRoZSBpbml0aWFsIG1hcmtpbmdzICIKKyJpblxuIgorInRoaXMgc3ViLWxpc3QgaGF2ZSBiZWVuIHNldCB0byBtYXRjaCB0aG9zZSwgc28geW91IGNhbiBqdXN0IGhpdCBSZXR1cm4gdG9cbiIKKyJhY2NlcHQgdGhlIHN1Z2dlc3Rpb25zIGlmIHlvdSB3aXNoLiAgWW91IG1heSBhYm9ydCB0aGUgY2hhbmdlKHMpIHdoaWNoICIKKyJjYXVzZWRcbiIKKyJ0aGUgcHJvYmxlbShzKSwgYW5kIGdvIGJhY2sgdG8gdGhlIG1haW4gbGlzdCwgYnkgcHJlc3NpbmcgY2FwaXRhbCBgWCcuXG4iCisiXG4iCisiWW91IGNhbiBhbHNvIG1vdmUgYXJvdW5kIHRoZSBsaXN0IGFuZCBjaGFuZ2UgdGhlIG1hcmtpbmdzIHNvIHRoYXQgdGhleSBhcmUgIgorIm1vcmVcbiIKKyJsaWtlIHdoYXQgeW91IHdhbnQsIGFuZCB5b3UgY2FuIGByZWplY3QnIG15IHN1Z2dlc3Rpb25zIGJ5IHVzaW5nIHRoZSAiCisiY2FwaXRhbFxuIgorImBEJyBvciBgUicga2V5cyAoc2VlIHRoZSBrZXliaW5kaW5ncyBoZWxwIHNjcmVlbikuICBZb3UgY2FuIHVzZSBjYXBpdGFsIGBRJyAiCisidG9cbiIKKyJmb3JjZSBtZSB0byBhY2NlcHQgdGhlIHNpdHVhdGlvbiBjdXJyZW50bHkgZGlzcGxheWVkLCBpbiBjYXNlIHlvdSB3YW50IHRvXG4iCisib3ZlcnJpZGUgYSByZWNvbW1lbmRhdGlvbiBvciB0aGluayB0aGF0IHRoZSBwcm9ncmFtIGlzIG1pc3Rha2VuLlxuIgorIlxuIgorIlByZXNzIDxzcGFjZT4gdG8gbGVhdmUgaGVscCBhbmQgZW50ZXIgdGhlIHN1Yi1saXN0OyByZW1lbWJlcjogcHJlc3MgYD8nIGZvciAiCisiaGVscC5cbiIKK21zZ3N0ciAiIgorIuydmOyhtOyEsS/stqnrj4wg7ZW06rKwIC0g7IaM6rCcLlxuIgorIlxuIgorIuyEoO2Dne2VmOyLoCDrgrTsmqkg7KSR7JeQIO2VmOuCmCDsnbTsg4HsnZgg6r6465+s66+47JeQ7IScIOy2qeuPjOydtOuCmCDsnZjsobTshLEg66y47KCc6rCAIOuwnOyDne2WiOyKteuLiCIKKyLri6RcbiIKKyItIOyWtOuWpCDqvrjrn6zrr7jripQg7Ja065akIOq+uOufrOuvuOyZgCDqsJnsnbQg7ISk7LmY7ZW07JW8IO2VmOq4sOuPhCDtlZjqs6Ag64+Z7Iuc7JeQIOyEpOy5mO2VoCDsiJgg7JeGIgorIuuKlFxuIgorIuq+uOufrOuvuOuPhCDsnojsirXri4jri6QuXG4iCisiXG4iCisi7J20IOusuOygnOyZgCDqtIDroKjrkJwg6r6465+s66+47J2YIO2VmOychCDrqqnroZ3snbQg64KY7YOA64KgIOqyg+yeheuLiOuLpC4g7ZmU66m0IOyVhOuemCDrtoDrtoTsnYQg67O0IgorIuuptFxuIgorIuq0gOugqOuQnCDstqnrj4wg67CPIOydmOyhtOyEsSDrrLjsoJzqsIAg7J6I7Iq164uI64ukLiAgYGknIO2CpOulvCDsgqzsmqntlZjrqbQg6r6465+s66+4IOyEpOuqhSDrsI8g64K0IgorIuu2gFxuIgorIuygnOyWtCDsoJXrs7Trj4Qg7Jes6riw7JeQ7IScIOywqOuhgOuMgOuhnCDrs7wg7IiYIOyeiOyKteuLiOuLpC5cbiIKKyJcbiIKKyJg7KCc7JWI7ZWcJyDqvrjrn6zrr7jrpbwg6rOE7IKw7ZW07IScLCDsl6zquLAg7ZWY7JyEIOuqqeuhneyXkOyEnCDsnbTrr7gg7LSI6riw6rCS7Jy866GcIO2RnOyLnOuQmOyWtFxuIgorIuyeiOyKteuLiOuLpC4gIOq3uOufrOuvgOuhnCBSZXR1cm7tgqTrpbwg64iE66W06riw66eMIO2VmOuptCDqt7gg7KCc7JWI7J2EIOq3uOuMgOuhnCDrsJvslYTrk6TsnbTqsoxcbiIKKyLrkKnri4jri6QuICDrrLjsoJzqsIAg65CcIOyEoO2DnSDsgqztla3snYQg7Leo7IaM7ZWY6rOgIOyjvOyalCDrqqnroZ3snLzroZwg64+M7JWE6rCA66Ck66m0LCDrjIDrrLjsnpAgIgorImBYJ+ulvFxuIgorIuuIhOultOuptCDrkKnri4jri6QuXG4iCisiXG4iCisi66qp66Gd7J2EIOuPjOyVhOuLpOuLiOuptOyEnCDqvrjrn6zrr7gg7ISg7YOd7J2EIOybkO2VmOuKlCDrjIDroZwg67CU6r+AIOyImCDsnojsirXri4jri6QuICDrmJAg7KCc7JWI7ZWcXG4iCisi64K07Jqp7J2EIOqxsOu2gO2VmOugpOuptCDrjIDrrLjsnpAgYEQn64KYIGBSJyDtgqTrpbwg64iE66W066m0IOuQqeuLiOuLpCAo7YKkIOyeheugpSDrj4Tsm4Drp5BcbiIKKyLtmZTrqbTsnYQg7LC46rOgKS4gIOuMgOusuOyekCBgUScg7YKk66W8IOuIhOultOuptCDtmITsnqwg7ZGc7Iuc65CcIOyDge2DnOulvCDqsJXsoJzroZwg67Cb7JWE65Ok7J206rKMXG4iCisi65Cp64uI64ukLiAg7LaU7LKc7ZWcIOyCrO2VreydtOuCmCDtlITroZzqt7jrnqjsnZgg7Iuk7IiY65286rOgIOyDneqwgeuQmOuKlCDrtoDrtoTquYzsp4Drj4Qg66y07Iuc7ZWY66Ck66m0XG4iCisiYFEn66W8IOyCrOyaqe2VmOyLreyLnOyYpC5cbiIKKyJcbiIKKyLrj4Tsm4Drp5Dsl5DshJwg67mg7KC464KY6rCA7IScIO2VmOychCDrqqnroZ3snLzroZwg65Ok7Ja06rCA66Ck66m0IDxzcGFjZT7rpbwg64iE66W07Iut7Iuc7JikLlxuIgorIuq4sOyWte2VmOyEuOyalC4gIOuPhOybgOydtCDtlYTsmpTtlZjrqbQgYD8n7YKk66W8IOuIhOultOyLreyLnOyYpC5cbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxMjUKK21zZ2lkICJEaXNwbGF5LCBwYXJ0IDE6IHBhY2thZ2UgbGlzdGluZyBhbmQgc3RhdHVzIGNoYXJzIgorbXNnc3RyICLtmZTrqbQg6rWs7ISxIOyyq+uyiOynuDog6r6465+s66+4IOuqqeuhnSDrsI8g7IOB7YOc66W8IOuCmO2DgOuCtOuKlCDrrLjsnpAiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTI1CisjLCBmdXp6eQorbXNnaWQgIiIKKyJUaGUgdG9wIGhhbGYgb2YgdGhlIHNjcmVlbiBzaG93cyBhIGxpc3Qgb2YgcGFja2FnZXMuICBGb3IgZWFjaCBwYWNrYWdlIHlvdSAiCisic2VlXG4iCisiZm91ciBjb2x1bW5zIGZvciBpdHMgY3VycmVudCBzdGF0dXMgb24gdGhlIHN5c3RlbSBhbmQgbWFyay4gIEluIHRlcnNlIG1vZGUgIgorIih1c2VcbiIKKyJgdicgdG8gdG9nZ2xlIHZlcmJvc2UgZGlzcGxheSkgdGhlc2UgYXJlIHNpbmdsZSBjaGFyYWN0ZXJzLCBmcm9tIGxlZnQgdG8gIgorInJpZ2h0OlxuIgorIlxuIgorIiBFcnJvciBmbGFnOiBTcGFjZSAtIG5vIGVycm9yIChidXQgcGFja2FnZSBtYXkgYmUgaW4gYnJva2VuIHN0YXRlIC0gc2VlICIKKyJiZWxvdylcbiIKKyIgICAgICAgICAgICAgIGBSJyAgLSBzZXJpb3VzIGVycm9yIGR1cmluZyBpbnN0YWxsYXRpb24sIG5lZWRzICIKKyJyZWluc3RhbGxhdGlvbjtcbiIKKyIgSW5zdGFsbGVkIHN0YXRlOiAgICAgU3BhY2UgICAgLSBub3QgaW5zdGFsbGVkO1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgYConICAgICAtIGluc3RhbGxlZDtcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgIGAtJyAgICAgLSBub3QgaW5zdGFsbGVkIGJ1dCBjb25maWcgZmlsZXMgcmVtYWluO1xuIgorIiAgIHBhY2thZ2VzIGluIHRoZXNlIHsgYFUnICAgICAtIHVucGFja2VkIGJ1dCBub3QgeWV0IGNvbmZpZ3VyZWQ7XG4iCisiICAgc3RhdGVzIGFyZSBub3QgICAgeyBgQycgICAgIC0gaGFsZi1jb25maWd1cmVkIChhbiBlcnJvciBoYXBwZW5lZCk7XG4iCisiICAgKHF1aXRlKSBwcm9wZXJseSAgeyBgSScgICAgIC0gaGFsZi1pbnN0YWxsZWQgKGFuIGVycm9yIGhhcHBlbmVkKTtcbiIKKyIgICBpbnN0YWxsZWQgICAgICAgICB7IGBXJyxgdCcgLSB0cmlnZ2VycyBhcmUgYXdhaXRlZCByZXNwLiBwZW5kaW5nLlxuIgorIiBPbGQgbWFyazogd2hhdCB3YXMgcmVxdWVzdGVkIGZvciB0aGlzIHBhY2thZ2UgYmVmb3JlIHByZXNlbnRpbmcgdGhpcyBsaXN0O1xuIgorIiBNYXJrOiB3aGF0IGlzIHJlcXVlc3RlZCBmb3IgdGhpcyBwYWNrYWdlOlxuIgorIiAgYConOiBtYXJrZWQgZm9yIGluc3RhbGxhdGlvbiBvciB1cGdyYWRlO1xuIgorIiAgYC0nOiBtYXJrZWQgZm9yIHJlbW92YWwsIGJ1dCBhbnkgY29uZmlndXJhdGlvbiBmaWxlcyB3aWxsIHJlbWFpbjtcbiIKKyIgIGA9Jzogb24gaG9sZDogcGFja2FnZSB3aWxsIG5vdCBiZSBwcm9jZXNzZWQgYXQgYWxsO1xuIgorIiAgYF8nOiBtYXJrZWQgZm9yIHB1cmdlIGNvbXBsZXRlbHkgLSBldmVuIHJlbW92ZSBjb25maWd1cmF0aW9uO1xuIgorIiAgYG4nOiBwYWNrYWdlIGlzIG5ldyBhbmQgaGFzIHlldCB0byBiZSBtYXJrZWQgZm9yIGluc3RhbGwvcmVtb3ZlLyZjLlxuIgorIlxuIgorIkFsc28gZGlzcGxheWVkIGFyZSBlYWNoIHBhY2thZ2UncyBQcmlvcml0eSwgU2VjdGlvbiwgbmFtZSwgaW5zdGFsbGVkIGFuZFxuIgorImF2YWlsYWJsZSB2ZXJzaW9uIG51bWJlcnMgKHNoaWZ0LVYgdG8gZGlzcGxheS9oaWRlKSBhbmQgc3VtbWFyeSAiCisiZGVzY3JpcHRpb24uXG4iCittc2dzdHIgIiIKKyLtmZTrqbTsnZgg7IOB64uo7JeQ64qUIOq+uOufrOuvuOydmCDrqqnroZ3snbQg7ZGc7Iuc65Cp64uI64ukLiAg6rCBIOq+uOufrOuvuOyXkCDrjIDtlbTshJwg6r6465+s66+47J2YXG4iCisi7ZiE7J6sIOyDge2DnOyXkCDrjIDtlZwgNOqwnOydmCDsl7TsnbQg7J6I6rOgIOqxsOq4sOyXkCDsg4Htg5wg7ZGc6riw6rCAIOyeiOyKteuLiOuLpC4gIOqwhOuete2VnFxuIgorIuuqqOuTnOyXkOyEnOuKlCAo7J6Q7IS47Z6IIO2RnOyLnO2VmOugpOuptCBgdifrpbwg7IKs7Jqp7ZWY7Iut7Iuc7JikKSDtlZwg6rCc7J2YIOusuOyekOuhnCDtkZzquLDtlanri4giCisi64ukLlxuIgorIuyZvOyqveu2gO2EsCDsmKTrpbjsqr3snLzroZw6XG4iCisiXG4iCisiIOyYpOulmCDtlIzrnpjqt7g6IOqzteuwsSAtIOyYpOulmCDsl4bsnYwgKOq+uOufrOuvuOuKlCDrp53qsIDsp4Qg7IOB7YOc7J28IOyImOuPhCDsnojsnYwgLSDslYTrnpgg7LC4IgorIuqzoClcbiIKKyIgICAgICAgICAgICAgICBgUicgLSDshKTsuZjspJHsl5Ag7Ius6rCB7ZWcIOyYpOulmCwg64uk7IucIOyEpOy5mO2VtOyVvCDtlaguXG4iCisiIOyEpOy5mCDsg4Htg5w6ICAg6rO167CxIC0g7ISk7LmYIOyViCDtlaguXG4iCisiICAgICAgICAgICAgICAgYConIC0g7ISk7LmY7ZWoLlxuIgorIiAgICAgICAgICAgICAgICAgICAgIGAtJyAgLSDshKTsuZjrkJjsp4Ag7JWK7JWY7Jy864KYIOyEpOyglSDtjIzsnbwg64Ko6rmALlxuIgorIiAgICAgICDri6TsnYwg7IOB7YOc7J2YIHsgYFUnICAtIOyVley2lSDtkoDsl4jsp4Drp4wg7ISk7KCV7ZWY7KeAIOyViuydjC5cbiIKKyIgICAgICAgICAg6r6465+s66+464qUIHsgYEMnICAtIOydvOu2gOunjCDshKTsoJUgKOyYpOulmCDrsJzsg50pLlxuIgorIiAgICAgICDrp53qsIDsp4Qg7IOB7YOcIHsgYEknICAtIOydvOu2gOunjCDshKTsuZggKOyYpOulmCDrsJzsg50pLlxuIgorIiDqs7zqsbAg7ZGc7IucOiDsnbQg66qp66Gd7J2EIO2RnOyLnO2VmOq4sCDsoITsl5Ag6r6465+s66+47JeQIOuMgO2VtCDsmpTssq3tlZwg7IOB7YOcLlxuIgorIiDtkZzsi5w6IOydtCDqvrjrn6zrr7jsl5Ag64yA7ZW0IOyalOyyre2VnCDsg4Htg5w6XG4iCisiICBgKic6IOyEpOy5mCDtmLnsnYAg7JeF6re466CI7J2065OcIO2RnOyLnC5cbiIKKyIgIGAtJzog7KeA7Jqw6riwIO2RnOyLnCwg7ZWY7KeA66eMIOyEpOyglSDtjIzsnbwg64Ko6riw6riwLlxuIgorIiAgYD0nOiDqs6DsoJU6IOq+uOufrOuvuOulvCDslrTrlrvqsozrj4Qg7LKY66as7ZWY7KeAIOyViuq4sC5cbiIKKyIgIGBfJzog7JmE7KCE7Z6IIOyngOyasOq4sCDtkZzsi5wgLSDshKTsoJUg7YyM7J2864+EIOyngOyasOq4sC5cbiIKKyIgIGBuJzog7JWE7KeBIOyEpOy5mC/sp4DsmrDquLDrpbwg7ZGc7Iuc7ZWY7KeAIOyViuydgCDsg4jroZzsmrQg6r6465+s66+4LlxuIgorIlxuIgorIuqwgSDqvrjrn6zrr7jsnZgg7Jqw7ISg7Iic7JyELCDshLnshZgsIOydtOumhCwg7ISk7LmY65CcIOuyhOyghOqzvCDsgqzsmqkg6rCA64ql7ZWcIOuyhOyghCAoc2hpZnQtVuulvFxuIgorIuuIhOultOuptCDrs7TsnbTquLAv7Iio6riw6riwKSDrsI8g7JqU7JW965CcIOyEpOuqheydhCDtkZzsi5ztlanri4jri6QuXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTUyCittc2dpZCAiRGlzcGxheSwgcGFydCAyOiBsaXN0IGhpZ2hsaWdodDsgaW5mb3JtYXRpb24gZGlzcGxheSIKK21zZ3N0ciAi7ZmU66m0IOq1rOyEsSDrkZDrsojsp7g6IOuwmOyghCDrp4nrjIAsIOygleuztCDtkZzsi5wiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTUyCittc2dpZCAiIgorIiogSGlnaGxpZ2h0OiBPbmUgbGluZSBpbiB0aGUgcGFja2FnZSBsaXN0IHdpbGwgYmUgaGlnaGxpZ2h0ZWQuICBJdCAiCisiaW5kaWNhdGVzXG4iCisiICB3aGljaCBwYWNrYWdlKHMpIHdpbGwgYmUgYWZmZWN0ZWQgYnkgcHJlc3NlcyBvZiBgKycsIGAtJyBhbmQgYF8nLlxuIgorIlxuIgorIiogVGhlIGRpdmlkaW5nIGxpbmUgaW4gdGhlIG1pZGRsZSBvZiB0aGUgc2NyZWVuIHNob3dzIGEgYnJpZWYgZXhwbGFuYXRpb24gIgorIm9mXG4iCisiICB0aGUgc3RhdHVzIG9mIHRoZSBjdXJyZW50bHktaGlnaGxpZ2h0ZWQgcGFja2FnZSwgb3IgYSBkZXNjcmlwdGlvbiBvZiAiCisid2hpY2hcbiIKKyIgIGdyb3VwIGlzIGhpZ2hsaWdodGVkIGlmIGEgZ3JvdXAgbGluZSBpcy4gIElmIHlvdSBkb24ndCB1bmRlcnN0YW5kIHRoZVxuIgorIiAgbWVhbmluZyBvZiBzb21lIG9mIHRoZSBzdGF0dXMgY2hhcmFjdGVycyBkaXNwbGF5ZWQsIGdvIHRvIHRoZSByZWxldmFudFxuIgorIiAgcGFja2FnZSBhbmQgbG9vayBhdCB0aGlzIGRpdmlkZXIgbGluZSwgb3IgdXNlIHRoZSBgdicga2V5IGZvciBhIHZlcmJvc2VcbiIKKyIgIGRpc3BsYXkgKHByZXNzIGB2JyBhZ2FpbiB0byBnbyBiYWNrIHRvIHRoZSB0ZXJzZSBkaXNwbGF5KS5cbiIKKyJcbiIKKyIqIFRoZSBib3R0b20gb2YgdGhlIHNjcmVlbiBzaG93cyBtb3JlIGluZm9ybWF0aW9uIGFib3V0IHRoZVxuIgorIiAgY3VycmVudGx5LWhpZ2hsaWdodGVkIHBhY2thZ2UgKGlmIHRoZXJlIGlzIG9ubHkgb25lKS5cbiIKKyJcbiIKKyIgIEl0IGNhbiBzaG93IGFuIGV4dGVuZGVkIGRlc2NyaXB0aW9uIG9mIHRoZSBwYWNrYWdlLCB0aGUgaW50ZXJuYWwgcGFja2FnZVxuIgorIiAgY29udHJvbCBkZXRhaWxzIChlaXRoZXIgZm9yIHRoZSBpbnN0YWxsZWQgb3IgYXZhaWxhYmxlIHZlcnNpb24gb2YgdGhlXG4iCisiICBwYWNrYWdlKSwgb3IgaW5mb3JtYXRpb24gYWJvdXQgY29uZmxpY3RzIGFuZCBkZXBlbmRlbmNpZXMgaW52b2x2aW5nIHRoZVxuIgorIiAgY3VycmVudCBwYWNrYWdlIChpbiBjb25mbGljdC9kZXBlbmRlbmN5IHJlc29sdXRpb24gc3VibGlzdHMpLlxuIgorIlxuIgorIiAgVXNlIHRoZSBgaScga2V5IHRvIGN5Y2xlIHRocm91Z2ggdGhlIGRpc3BsYXlzLCBhbmQgYEknIHRvIGhpZGUgdGhlXG4iCisiICBpbmZvcm1hdGlvbiBkaXNwbGF5IG9yIGV4cGFuZCBpdCB0byB1c2UgYWxtb3N0IGFsbCBvZiB0aGUgc2NyZWVuLlxuIgorbXNnc3RyICIiCisiKiDrsJjsoIQg66eJ64yAOiDqvrjrn6zrr7gg66qp66Gd7JeQ7IScIO2VnCDspITsnbQg67CY7KCE65Cp64uI64ukLiAgYCsnLCBgLScg67CPIGBfJ+ydhCDriITrpbTrqbQgIgorIuydtFxuIgorIiAg7KSE7JeQIOyeiOuKlCDqvrjrn6zrr7go7Zi57J2AIOq+uOufrOuvuCDqt7jro7kp7JeQIO2RnOyLnOulvCDtlanri4jri6QuXG4iCisiXG4iCisiKiDtmZTrqbQg6rCA7Jq0642w7JeQIOywveydhCDqtazrtoTtlZjripQg7KSE7JeQ64qUIO2YhOyerCDrsJjsoITrkJwg6r6465+s66+47J2YIOyDge2DnOyXkCDrjIDtlZwg6rCE6561IgorIu2VnFxuIgorIiAg7ISk66qFLCDtmLnsnYAg67CY7KCE65CcIOykhOydtCDqt7jro7nsnbTrnbzrqbQg6re4IOq3uOujueydmCDshKTrqoXsnYQg7ZGc7Iuc7ZWp64uI64ukLiAg7IOB7YOcIO2RnOyLnFxuIgorIiAg66y47J6Q6rCAIOustOyKqCDrnLvsnbjsp4Ag7J6YIOuqqOultOqyoOuLpOuptCwg7ZW064u565CY64qUIOq+uOufrOuvuOuhnCDsnbTrj5ntlbTshJwg7J20IOq1rOu2hO2VmOuKlFxuIgorIiAg7KSE7J2EIOuTpOyXrOuLpCDrs7Tsi63si5zsmKQuICDslYTri4jrqbQgYHYnIO2CpOulvCDriIzrn6wg7J6Q7IS47ZWcIOyEpOuqheydhCDrs7Tsi63si5zsmKQgKOuLpOyLnFxuIgorIiAgYHYn66W8IOuIhOultOuptCDqsITrnrXtlZwg7ISk66qF7Jy866GcIOuPjOyVhOqwkeuLiOuLpCkuXG4iCisiXG4iCisiKiDtmZTrqbTsnZgg7ZWY64uo7JeQ64qUIO2YhOyerCDrsJjsoITrkJwg6r6465+s66+47J2YIOygleuztOqwgCDrjZQg66eO7J20IOuCmO2DgOuCqeuLiOuLpCAo6r6465+s66+4IO2VnFxuIgorIiAg6rCc7J2YIOqyveyasCkuXG4iCisiXG4iCisiICDsl6zquLDsl5DripQg6r6465+s66+47J2YIOyekOyEuO2VnCDshKTrqoUsIOq+uOufrOuvuOydmCDsnpDshLjtlZwg64K067aAIOygleuztCAo7ISk7LmY65CcIOuyhOyghCDtmLkiCisi7J2AXG4iCisiICDsgqzsmqkg6rCA64ql7ZWcIOuyhOyghCksIO2YueydgCDstqnrj4wg67CPIOydmOyhtOyEsSDsoJXrs7Trpbwg7ZGc7Iuc7ZWgIOyImCDsnojsirXri4jri6RcbiIKKyIgICjstqnrj4wv7J2Y7KG07ISxIO2VtOqysCDtlZjsnIQg66qp66Gd7J2YIOqyveyasCkuXG4iCisiXG4iCisiICBgaScg7YKk66W8IOuIhOultOuptCDqsIHqsIHsnZgg7KCV67O066W8IOuyiOqwiOyVhOqwgOuptOyEnCDtkZzsi5ztlanri4jri6QuICBgSScg7YKk66W8IOuIhOultOuptCAiCisi7J20XG4iCisiICDtmZTrqbTsnYQg6rCQ7LaU6rGw64KYIOygleuztCDssL3snYQg7YGs6rKMIO2RnOyLnO2VoCDsiJjrj4Qg7J6I7Iq164uI64ukLlxuIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjE3NgorbXNnaWQgIkludHJvZHVjdGlvbiB0byBtZXRob2Qgc2VsZWN0aW9uIGRpc3BsYXkiCittc2dzdHIgIuyEpOy5mCDrsKnrspUg7ISg7YOdLCDtmZTrqbQg6rWs7ISxIOyGjOqwnCIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxNzYKK21zZ2lkICIiCisiZHNlbGVjdCBhbmQgZHBrZyBjYW4gZG8gYXV0b21hdGljIGluc3RhbGxhdGlvbiwgbG9hZGluZyB0aGUgcGFja2FnZSBmaWxlcyB0byAiCisiYmVcbiIKKyJpbnN0YWxsZWQgZnJvbSBvbmUgb2YgYSBudW1iZXIgb2YgZGlmZmVyZW50IHBvc3NpYmxlIHBsYWNlcy5cbiIKKyJcbiIKKyJUaGlzIGxpc3QgYWxsb3dzIHlvdSB0byBzZWxlY3Qgb25lIG9mIHRoZXNlIGluc3RhbGxhdGlvbiBtZXRob2RzLlxuIgorIlxuIgorIk1vdmUgdGhlIGhpZ2hsaWdodCB0byB0aGUgbWV0aG9kIHlvdSB3aXNoIHRvIHVzZSwgYW5kIGhpdCBFbnRlci4gIFlvdSB3aWxsICIKKyJ0aGVuXG4iCisiYmUgcHJvbXB0ZWQgZm9yIHRoZSBpbmZvcm1hdGlvbiByZXF1aXJlZCB0byBkbyB0aGUgaW5zdGFsbGF0aW9uLlxuIgorIlxuIgorIkFzIHlvdSBtb3ZlIHRoZSBoaWdobGlnaHQgYSBkZXNjcmlwdGlvbiBvZiBlYWNoIG1ldGhvZCwgd2hlcmUgYXZhaWxhYmxlLCBpc1xuIgorImRpc3BsYXllZCBpbiB0aGUgYm90dG9tIGhhbGYgb2YgdGhlIHNjcmVlbi5cbiIKKyJcbiIKKyJJZiB5b3Ugd2lzaCB0byBxdWl0IHdpdGhvdXQgY2hhbmdpbmcgYW55dGhpbmcgdXNlIHRoZSBgeCcga2V5IHdoaWxlIGluIHRoZSAiCisibGlzdFxuIgorIm9mIGluc3RhbGxhdGlvbiBtZXRob2RzLlxuIgorIlxuIgorIkEgZnVsbCBsaXN0IG9mIGtleXN0cm9rZXMgaXMgYXZhaWxhYmxlIGJ5IHByZXNzaW5nIGBrJyBub3csIG9yIGZyb20gdGhlICIKKyJoZWxwXG4iCisibWVudSByZWFjaGFibGUgYnkgcHJlc3NpbmcgYD8nLlxuIgorbXNnc3RyICIiCisiZHNlbGVjdOyZgCBkcGtn7JeQ7ISc64qULCDsl6zrn6wg6rOz7JeQ7IScIOq+uOufrOuvuCDtjIzsnbzsnYQg6rCA7KC47JmA7IScIOyekOuPmeycvOuhnFxuIgorIuyEpOy5mO2VoCDsiJgg7J6I7Iq164uI64ukLlxuIgorIlxuIgorIuydtCDrqqnroZ3sl5DshJzripQg6re465+s7ZWcIOyEpOy5mCDrsKnrspXspJHsl5Ag66y07JeH7J2EIOyCrOyaqe2VoCDsp4Ag7ISg7YOd7ZWp64uI64ukLlxuIgorIlxuIgorIuuwmOyghCDrp4nrjIDrpbwg7IKs7Jqp7ZWY66Ck64qUIOyEpOy5mCDrsKnrspXsnLzroZwg7Jiu6ri0IOuLpOydjCBFbnRlcuulvCDriITrpbTsi63si5zsmKQuICDqt7hcbiIKKyLri6TsnYzsl5Ag7ISk7LmY7JeQIO2VhOyalO2VnCDsoJXrs7Trpbwg642UIOusvOyWtOuztOqyjCDrkKnri4jri6QuXG4iCisiXG4iCisi67CY7KCEIOunieuMgOulvCDsm4Dsp4Hsnbwg65WM66eI64ukLCDqsIEg7ISk7LmYIOuwqeuyleyXkCDqtIDtlZwg7ISk66qF7J2EIO2ZlOuptOydmCDtlZjri6jsl5AgXG4iCisi7ZGc7Iuc7ZWp64uI64ukICjshKTrqoXsnbQg7J6I64uk66m0KS5cbiIKKyJcbiIKKyLslYTrrLQg6rKD64+EIOuwlOq+uOyngCDslYrqs6Ag64Gd64K066Ck66m0LCDshKTsuZgg67Cp67KVIOuqqeuhneyXkOyEnCBgeCcg7YKk66W8IOuIhOultOyLreyLnOyYpC5cbiIKKyJcbiIKKyLtgqQg7J6F66Cl7JeQIOq0gO2VnCDshKTrqoXsnYQg67O07Iuc66Ck66m0IGBrJ+ulvCDriITrpbTsi5zqs6AsIOuPhOybgOunkCDrqZTribTrpbwg67O066Ck66m0IGA/J+ulvFxuIgorIuuIhOultOyLreyLnOyYpC5cbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxOTYKK21zZ2lkICJLZXlzdHJva2VzIGZvciBtZXRob2Qgc2VsZWN0aW9uIgorbXNnc3RyICLshKTsuZgg67Cp67KVIOyEoO2DnSwg7YKkIOyeheugpSIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxOTYKK21zZ2lkICIiCisiTW90aW9uIGtleXM6IE5leHQvUHJldmlvdXMsIFRvcC9FbmQsIFVwL0Rvd24sIEJhY2t3YXJkcy9Gb3J3YXJkczpcbiIKKyIgIGosIERvd24tYXJyb3cgICAgICAgICBrLCBVcC1hcnJvdyAgICAgICAgICAgICBtb3ZlIGhpZ2hsaWdodFxuIgorIiAgTiwgUGFnZS1kb3duLCBTcGFjZSAgIFAsIFBhZ2UtdXAsIEJhY2tzcGFjZSAgIHNjcm9sbCBsaXN0IGJ5IDEgcGFnZVxuIgorIiAgXm4gICAgICAgICAgICAgICAgICAgIF5wICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBsaXN0IGJ5IDEgbGluZVxuIgorIiAgdCwgSG9tZSAgICAgICAgICAgICAgIGUsIEVuZCAgICAgICAgICAgICAgICAgIGp1bXAgdG8gdG9wL2VuZCBvZiBsaXN0XG4iCisiICB1ICAgICAgICAgICAgICAgICAgICAgZCAgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGluZm8gYnkgMSBwYWdlXG4iCisiICBedSAgICAgICAgICAgICAgICAgICAgXmQgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGluZm8gYnkgMSBsaW5lXG4iCisiICBCLCBMZWZ0LWFycm93ICAgICAgICAgRiwgUmlnaHQtYXJyb3cgICAgICAgICAgcGFuIGRpc3BsYXkgYnkgMS8zIHNjcmVlblxuIgorIiAgXmIgICAgICAgICAgICAgICAgICAgIF5mICAgICAgICAgICAgICAgICAgICAgIHBhbiBkaXNwbGF5IGJ5IDEgY2hhcmFjdGVyXG4iCisiKFRoZXNlIGFyZSB0aGUgc2FtZSBtb3Rpb24ga2V5cyBhcyBpbiB0aGUgcGFja2FnZSBsaXN0IGRpc3BsYXkuKVxuIgorIlxuIgorIlF1aXQ6XG4iCisiIFJldHVybiwgRW50ZXIgICAgc2VsZWN0IHRoaXMgbWV0aG9kIGFuZCBnbyB0byBpdHMgY29uZmlndXJhdGlvbiBkaWFsb2d1ZVxuIgorIiB4LCBYICAgICAgICAgICAgIGV4aXQgd2l0aG91dCBjaGFuZ2luZyBvciBzZXR0aW5nIHVwIHRoZSBpbnN0YWxsYXRpb24gIgorIm1ldGhvZFxuIgorIlxuIgorIk1pc2NlbGxhbmVvdXM6XG4iCisiICA/LCBIZWxwLCBGMSAgICAgIHJlcXVlc3QgaGVscFxuIgorIiBebCAgICAgICAgICAgICAgICByZWRyYXcgZGlzcGxheVxuIgorIiAgLyAgICAgICAgICAgICAgICBzZWFyY2ggKGp1c3QgcmV0dXJuIHRvIGNhbmNlbClcbiIKKyIgIFxcICAgICAgICAgICAgICAgIHJlcGVhdCBsYXN0IHNlYXJjaFxuIgorbXNnc3RyICIiCisi7J2064+ZIO2CpDog7J207KCEL+uLpOydjCwg7LKY7J2ML+uBnSwg7JyEL+yVhOuemCwg7JWeL+uSpDpcbiIKKyIgIGosIOyVhOuemCDtmZTsgrTtkZwgICAgICAgICBrLCDsnIQg7ZmU7IK07ZGcICAgICAgICAgICAg67CY7KCEIOunieuMgCDsnbTrj5lcbiIKKyIgIE4sIFBhZ2UtZG93biwg7Iqk7Y6Y7J207IqkIFAsIFBhZ2UtdXAsIOuwseyKpO2OmOydtOyKpCAg7ZWcIO2OmOydtOyngCDri6jsnITroZwg66qp66GdIOyKpO2BrCIKKyLroaRcbiIKKyIgIF5uICAgICAgICAgICAgICAgICAgICAgXnAgICAgICAgICAgICAgICAgICAgICAg7ZWcIOykhCDri6jsnITroZwg66qp66GdIOyKpO2BrOuhpFxuIgorIiAgdCwgSG9tZSAgICAgICAgICAgICAgICBlLCBFbmQgICAgICAgICAgICAgICAgICDrqqnroZ3snZgg7LKY7J2ML+uBneycvOuhnCDsnbTrj5ntlanri4giCisi64ukXG4iCisiICB1ICAgICAgICAgICAgICAgICAgICAgIGQgICAgICAgICAgICAgICAgICAgICAgIO2VnCDtjpjsnbTsp4Ag64uo7JyE66GcIOygleuztCDsiqTtgawiCisi66GkXG4iCisiICBedSAgICAgICAgICAgICAgICAgICAgIF5kICAgICAgICAgICAgICAgICAgICAgIO2VnCDspIQg64uo7JyE66GcIOygleuztCDsiqTtgazroaRcbiIKKyIgIEIsIOyZvOyqvSDtmZTsgrTtkZwgICAgICAgICBGLCDsmKTrpbjsqr0g7ZmU7IK07ZGcICAgICAgICDssL3snYQg7ZmU66m07J2YIDEvMyDsoozsmrDroZwg7J20IgorIuuPmVxuIgorIiAgXmIgICAgICAgICAgICAgICAgICAgICBeZiAgICAgICAgICAgICAgICAgICAgICDssL3snYQg7ZWcIOq4gOyekOunjO2BvCDtmZTrqbQg7KKM7JqwICIKKyLsnbTrj5lcbiIKKyIo6r6465+s66+4IOuqqeuhnSDtkZzsi5ztlaAg65WM7J2YIOydtOuPmSDtgqTsmYAg64+Z7J287ZWp64uI64ukLilcbiIKKyJcbiIKKyLrgZ3rgrTquLA6XG4iCisiIFJldHVybiwgRW50ZXIgICAgIOydtCDshKTsuZgg67Cp67KV7J2EIOyEoO2Dne2VmOqzoCDshKTsoJUg7LC97Jy866GcIOuPjOyVhOqwkeuLiOuLpFxuIgorIiB4LCBYICAgICAgICAgICAgICDshKTsuZgg67Cp67KV7J2EIOuwlOq+uOqxsOuCmCDshKTsoJXtlZjsp4Ag7JWK6rOgIOuBneuDheuLiOuLpFxuIgorIlxuIgorIuq4sO2DgDpcbiIKKyIgID8sIEhlbHAsIEYxICAgICAg64+E7JuA66eQIOuztOq4sFxuIgorIiBebCAgICAgICAgICAgICAgICDtmZTrqbTsnYQg64uk7IucIOq3uOumrOq4sFxuIgorIiAgLyAgICAgICAgICAgICAgICDssL7quLAgKOy3qOyGjO2VmOugpOuptCDqt7jrg6UgUmV0dXJu7J2EIOuIhOultOyLreyLnOyYpClcbiIKKyIgIFxcICAgICAgICAgICAgICAgIOuniOyngOuniSDssL7quLAg67CY67O1XG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzo2MAorbXNnaWQgIlR5cGUgZHNlbGVjdCAtLWhlbHAgZm9yIGhlbHAuIgorbXNnc3RyICLrj4Tsm4Drp5DsnbQg7ZWE7JqU7ZWY66m0IGRzZWxlY3QgLS1oZWxw66W8IOyLpO2Wie2VmOyLreyLnOyYpC4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDMKK21zZ2lkICJhIgorbXNnc3RyICJhIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQzCittc2dpZCAiW0FdY2Nlc3MiCittc2dzdHIgIuyEpOy5mOuwqeuylShBKSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0MworbXNnaWQgIkNob29zZSB0aGUgYWNjZXNzIG1ldGhvZCB0byB1c2UuIgorbXNnc3RyICLshKTsuZgg67Cp67KV7J2EIOyEoO2Dne2VqeuLiOuLpC4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDQKK21zZ2lkICJ1IgorbXNnc3RyICJ1IgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ0Cittc2dpZCAiW1VdcGRhdGUiCittc2dzdHIgIuyXheuNsOydtO2KuChVKSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NAorbXNnaWQgIlVwZGF0ZSBsaXN0IG9mIGF2YWlsYWJsZSBwYWNrYWdlcywgaWYgcG9zc2libGUuIgorbXNnc3RyICLsnbTsmqkg6rCA64ql7ZWcIOq+uOufrOuvuCDrqqnroZ3snYQg7JeF642w7J207Yq47ZWp64uI64ukLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NQorbXNnaWQgInMiCittc2dzdHIgInMiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDUKK21zZ2lkICJbU11lbGVjdCIKK21zZ3N0ciAi7ISg7YOdKFMpIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ1Cittc2dpZCAiUmVxdWVzdCB3aGljaCBwYWNrYWdlcyB5b3Ugd2FudCBvbiB5b3VyIHN5c3RlbS4iCittc2dzdHIgIuyLnOyKpO2FnOyXkCDshKTsuZjtlZjroKTripQg6r6465+s66+466W8IOyEoO2Dne2VqeuLiOuLpC4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDYKK21zZ2lkICJpIgorbXNnc3RyICJpIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ2Cittc2dpZCAiW0ldbnN0YWxsIgorbXNnc3RyICLshKTsuZgoSSkiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDYKK21zZ2lkICJJbnN0YWxsIGFuZCB1cGdyYWRlIHdhbnRlZCBwYWNrYWdlcy4iCittc2dzdHIgIuyEoO2Dne2VnCDqvrjrn6zrr7jrpbwg7ISk7LmY7ZWY6rOgIOyXheq3uOugiOydtOuTnO2VqeuLiOuLpC4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDcKK21zZ2lkICJjIgorbXNnc3RyICJjIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ3Cittc2dpZCAiW0Ndb25maWciCittc2dzdHIgIuyEpOyglShDKSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NworbXNnaWQgIkNvbmZpZ3VyZSBhbnkgcGFja2FnZXMgdGhhdCBhcmUgdW5jb25maWd1cmVkLiIKK21zZ3N0ciAi7ISk7KCV7ZWY7KeAIOyViuydgCDqvrjrn6zrr7jrpbwg7ISk7KCV7ZWp64uI64ukLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OAorbXNnaWQgInIiCittc2dzdHIgInIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDgKK21zZ2lkICJbUl1lbW92ZSIKK21zZ3N0ciAi7KeA7Jqw6riwKFIpIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ4Cittc2dpZCAiUmVtb3ZlIHVud2FudGVkIHNvZnR3YXJlLiIKK21zZ3N0ciAi7JuQ7ZWY7KeAIOyViuuKlCDqvrjrn6zrr7jrpbwg7KeA7JuB64uI64ukLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OQorbXNnaWQgInEiCittc2dzdHIgInEiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDkKK21zZ2lkICJbUV11aXQiCittc2dzdHIgIuuBneuCtOq4sChRKSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OQorbXNnaWQgIlF1aXQgZHNlbGVjdC4iCittc2dzdHIgImRzZWxlY3Trpbwg64Gd64OF64uI64ukLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE1MAorbXNnaWQgIm1lbnUiCittc2dzdHIgIuuplOuJtCIKKworIzogZHNlbGVjdC9tYWluLmNjOjE1NQorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIGhhbmRsaW5nIGZyb250ZW5kIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIuuNsOu5hOyViCBgJXMnIOq+uOufrOuvuCDsspjrpqwg7ZSE66Gg7Yq47JeU65OcIOuyhOyghCAlcy5cbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE1OAorbXNnaWQgIiIKKyJDb3B5cmlnaHQgKEMpIDE5OTQtMTk5NiBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLlxuIgorbXNnc3RyICIiCisiQ29weXJpZ2h0IChDKSAxOTk0LTE5OTYgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE2MgorIywgZnV6enkKK21zZ2lkICIiCisiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvclxuIgorImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LlxuIgorbXNnc3RyICIiCisi7J6Q7JygIOyGjO2UhO2KuOybqOyWtOyeheuLiOuLpC4g67O17IKsIOyhsOqxtOyXkCDqtIDtlbTshJzripQgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2VcbiIKKyJ2ZXJzaW9uIDLsnbTsg4HsnYQg67O07Iut7Iuc7JikLiDslrTrlqQg67O07Kad64+EIO2VmOyngCDslYrsirXri4jri6QuXG4iCisi7KCA7J6R6raMIOq0gOugqCDsoJXrs7Trpbwg67O066Ck66m0ICVzIC0tbGljZW5jZeulvCDssLjqs6DtlZjsi63si5zsmKQuXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNzIgZHNlbGVjdC9tYWluLmNjOjIyMAorbXNnaWQgIjxzdGFuZGFyZCBvdXRwdXQ+IgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSBbPGFjdGlvbj4gLi4uXVxuIgorIlxuIgorbXNnc3RyICIiCisi7IKs7Jqp67KVOiAlcyBbPG9wdGlvbj4gLi4uXSBbPGFjdGlvbj4gLi4uXVxuIgorIlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTg3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMuXG4iCisiICAtLWV4cGVydCAgICAgICAgICAgICAgICAgICBUdXJuIG9uIGV4cGVydCBtb2RlLlxuIgorIiAgLS1kZWJ1ZyA8ZmlsZT4gfCAtRDxmaWxlPiAgVHVybiBvbiBkZWJ1Z2dpbmcsIHNlbmRpbmcgb3V0cHV0IHRvIDxmaWxlPi5cbiIKKyIgIC0tY29sb3VyIHwgLS1jb2xvciBzY3JlZW5wYXJ0Oltmb3JlZ3JvdW5kXSxbYmFja2dyb3VuZF1bOmF0dHJbK2F0dHIrLi5dXVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ29uZmlndXJlIHNjcmVlbiBjb2xvdXJzLlxuIgorIlxuIgorbXNnc3RyICIiCisi7Ji17IWYOlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgICAgJXMg64yA7IugIDxkaXJlY3Rvcnk+IOyCrOyaqS5cbiIKKyIgIC0tZXhwZXJ0ICAgICAgICAgICAgICAgICAgIOqzoOq4iSDrqqjrk5zrpbwg7IKs7JqpLlxuIgorIiAgLS1kZWJ1ZyA8ZmlsZT4gfCAtRDxmaWxlPiAg65SU67KE6rmFIOyCrOyaqe2VmOyXrCA8ZmlsZT7roZwg7Lac66Cl7J2EIOuztOuDheuLiOuLpC5cbiIKKyIgIC0tY29sb3VyIHwgLS1jb2xvciBzY3JlZW5wYXJ0Oltmb3JlZ3JvdW5kXSxbYmFja2dyb3VuZF1bOmF0dHJbK2F0dHIrLi5dXVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg7ZmU66m07IOJIOyEpOyglS5cbiIKKyJcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE5NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgICAgU2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgIFNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCittc2dzdHIgIiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICAgIOydtCDrj4Tsm4Drp5Ag66mU7Iuc7KeAIOu0hC5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgIOuyhOyghOydhCDrtIQuXG4iCisiICAtLWxpY2Vuc2UgfCAtLWxpY2VuY2UgICAgICDsoIDsnpHqtowg6rSA66CoIOygleuztOulvCDrtIQuXG4iCisiXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkFjdGlvbnM6XG4iCisiICBhY2Nlc3MgdXBkYXRlIHNlbGVjdCBpbnN0YWxsIGNvbmZpZyByZW1vdmUgcXVpdFxuIgorIlxuIgorbXNnc3RyICIiCisi64+Z7J6ROlxuIgorIiAgYWNjZXNzIHVwZGF0ZSBzZWxlY3QgaW5zdGFsbCBjb25maWcgcmVtb3ZlIHF1aXRcbiIKKyJcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjIwNQorIywgYy1mb3JtYXQKK21zZ2lkICJTY3JlZW5wYXJ0czpcbiIKK21zZ3N0ciAi7ZmU66m0IOq1rOyEsSDsmpTshow6XG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ29sb3VyczpcbiIKK21zZ3N0ciAi7IOJOlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjE1CisjLCBjLWZvcm1hdAorbXNnaWQgIkF0dHJpYnV0ZXM6XG4iCittc2dzdHIgIuyGjeyEsTpcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjIzMworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBvcGVuIGRlYnVnIGZpbGUgYCUuMjU1cydcbiIKK21zZ3N0ciAi65SU67KE6re4IO2MjOydvCBgJS4yNTVzJ+ydhCjrpbwpIOyXtCDsiJgg7JeG7Iq164uI64ukXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyNTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW52YWxpZCAlcyBgJXMnXG4iCittc2dzdHIgIuyYrOuwlOultOyngCDslYrsnYAgJXMgYCVzJ1xuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjcwCittc2dpZCAic2NyZWVuIHBhcnQiCittc2dzdHIgIu2ZlOuptCDqtazshLEg7JqU7IaMIgorCisjOiBkc2VsZWN0L21haW4uY2M6Mjc2Cittc2dpZCAiTnVsbCBjb2xvdXIgc3BlY2lmaWNhdGlvblxuIgorbXNnc3RyICLsg4kg7KeA7KCV7J20IOyXhuyKteuLiOuLpFxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6Mjg0IGRzZWxlY3QvbWFpbi5jYzoyODkKK21zZ2lkICJjb2xvdXIiCittc2dzdHIgIuyDiSIKKworIzogZHNlbGVjdC9tYWluLmNjOjI5NworbXNnaWQgImNvbG91ciBhdHRyaWJ1dGUiCittc2dzdHIgIuyDiSDsho3shLEiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzozMjkKK21zZ2lkICJUZXJtaW5hbCBkb2VzIG5vdCBhcHBlYXIgdG8gc3VwcG9ydCBjdXJzb3IgYWRkcmVzc2luZy5cbiIKK21zZ3N0ciAi7YSw66+464SQ7J20IOy7pOyEnCDso7zshowg7KeA7KCV7J2EIOyngOybkO2VmOyngCDslYrripQg6rKDIOqwmeyKteuLiOuLpC5cbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjMzMQorbXNnaWQgIlRlcm1pbmFsIGRvZXMgbm90IGFwcGVhciB0byBzdXBwb3J0IGhpZ2hsaWdodGluZy5cbiIKK21zZ3N0ciAi7YSw66+464SQ7J20IOuwmOyghOydhCDsp4Dsm5DtlZjsp4Ag7JWK64qUIOqygyDqsJnsirXri4jri6QuXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzozMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlNldCB5b3VyIFRFUk0gdmFyaWFibGUgY29ycmVjdGx5LCB1c2UgYSBiZXR0ZXIgdGVybWluYWwsXG4iCisib3IgbWFrZSBkbyB3aXRoIHRoZSBwZXItcGFja2FnZSBtYW5hZ2VtZW50IHRvb2wgJXMuXG4iCittc2dzdHIgIiIKKyJURVJNIOuzgOyImOulvCDsoJXtmZXtnogg7ISk7KCV7ZWY65Og7KeAIOuNlCDrgpjsnYAg7YSw66+464SQ7J2EIOyCrOyaqe2VmOuToOyngCxcbiIKKyLqsIEg6r6465+s66+4IOuzhOuhnCDqsJzrs4TsoIHsnbgg6rSA66asIOuPhOq1rCAlcyDsnbTsmqntlZjsi63si5zsmKQuXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzozMzYKK21zZ2lkICJ0ZXJtaW5hbCBsYWNrcyBuZWNlc3NhcnkgZmVhdHVyZXMsIGdpdmluZyB1cCIKK21zZ3N0ciAi7YSw66+464SQ7JeQIO2VhOyImOyggeyduCDquLDriqXsnbQg67mg7KC4IOyeiOyKteuLiOuLpC4g6re466eM65Gh64uI64ukLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjQxNworbXNnaWQgIiIKKyJcbiIKKyJcbiIKKyJNb3ZlIGFyb3VuZCB3aXRoIF5QIGFuZCBeTiwgY3Vyc29yIGtleXMsIGluaXRpYWwgbGV0dGVycywgb3IgZGlnaXRzO1xuIgorIlByZXNzIDxlbnRlcj4gdG8gY29uZmlybSBzZWxlY3Rpb24uICAgXkwgcmVkcmF3cyBzY3JlZW4uXG4iCisiXG4iCittc2dzdHIgIiIKKyJcbiIKKyJcbiIKKyJeUCDrsI8gXk4sIOy7pOyEnCDtgqQsIOuLqOy2le2CpCDtmLnsnYAg7Iir7J6Q66GcIOydtOuPme2VoCDsiJgg7J6I7Iq164uI64ukLlxuIgorIuyEoO2Dne2VnCDtla3rqqnsnLzroZwg65Ok7Ja06rCA66Ck66m0IDxlbnRlcj4g7YKk66W8IOuIhOultOyLreyLnOyYpC4gICBeTOydgCDtmZTrqbTsnYQg64uk7IucIOq3uOumveuLiCIKKyLri6QuXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzo0MjgKK21zZ2lkICIiCisiXG4iCisiXG4iCisiUmVhZC1vbmx5IGFjY2Vzczogb25seSBwcmV2aWV3IG9mIHNlbGVjdGlvbnMgaXMgYXZhaWxhYmxlISIKK21zZ3N0ciAiIgorIlxuIgorIlxuIgorIuydveq4sCDsoITsmqkg7KCR6re8OiDshKDtg53rkJwg7IKs7ZWt7J2EIOuvuOumrCDrs7TripQg6rKD66eMIOqwgOuKpe2VqeuLiOuLpCEiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzo0NDgKK21zZ2lkICJmYWlsZWQgdG8gZ2V0Y2ggaW4gbWFpbiBtZW51IgorbXNnc3RyICLso7wg66mU64m07JeQ7IScIGdldGNo6rCAIOyLpO2MqO2WiOyKteuLiOuLpCIKKworIzogZHNlbGVjdC9tYWluLmNjOjUzMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGFjdGlvbiBzdHJpbmcgYCUuNTBzJyIKK21zZ3N0ciAi7JWMIOyImCDsl4bripQg66qF66C5IOusuOyekOyXtCBgJS41MHMnIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjc3Cittc2dpZCAiZHNlbGVjdCAtIGxpc3Qgb2YgYWNjZXNzIG1ldGhvZHMiCittc2dzdHIgImRzZWxlY3QgLSDshKTsuZgg67Cp67KVIOuqqeuhnSIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzo4NgorIywgYy1mb3JtYXQKK21zZ2lkICJBY2Nlc3MgbWV0aG9kIGAlcycuIgorbXNnc3RyICLshKTsuZgg67Cp67KVIGAlcycuIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjEyMAorbXNnaWQgIkFiYnJldi4iCittc2dzdHIgIuyVveyWtCIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxMjEgZHNlbGVjdC9wa2dpbmZvLmNjOjEwNSBkc2VsZWN0L3BrZ3RvcC5jYzoyOTEKK21zZ2lkICJEZXNjcmlwdGlvbiIKK21zZ3N0ciAi7ISk66qFIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjE2NCBkc2VsZWN0L3BrZ2xpc3QuY2M6NTcyCittc2dpZCAiZG91cGRhdGUgZmFpbGVkIgorbXNnc3RyICJkb3VwZGF0ZeqwgCDsi6TtjKjtlojsirXri4jri6QiCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTY2IGRzZWxlY3QvcGtnbGlzdC5jYzo1NzUKK21zZ2lkICJmYWlsZWQgdG8gdW5ibG9jayBTSUdXSU5DSCIKK21zZ3N0ciAiU0lHV0lOQ0gg7Iuc6re464SQ7J2YIOu4lOuhneydhCDtlbTsoJztlZjripQg642wIOyLpO2MqO2WiOyKteuLiOuLpCIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxNzAgZHNlbGVjdC9wa2dsaXN0LmNjOjU4MAorbXNnaWQgImZhaWxlZCB0byByZS1ibG9jayBTSUdXSU5DSCIKK21zZ3N0ciAiU0lHV0lOQ0gg7Iuc6re464SQ7J2EIOu4lOuhneydhCDri6Tsi5wg7ISk7KCV7ZWY64qUIOuNsCDsi6TtjKjtlojsirXri4jri6QiCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTcxIGRzZWxlY3QvcGtnbGlzdC5jYzo1ODIKK21zZ2lkICJnZXRjaCBmYWlsZWQiCittc2dzdHIgImdldGNo6rCAIOyLpO2MqO2WiOyKteuLiOuLpCIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxODgKK21zZ2lkICJFeHBsYW5hdGlvbiIKK21zZ3N0ciAi7ISk66qFIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjE5NworbXNnaWQgIk5vIGV4cGxhbmF0aW9uIGF2YWlsYWJsZS4iCittc2dzdHIgIuyEpOuqhSDsl4bsirXri4jri6QuIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzo2NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiXG4iCisiJXM6ICVzXG4iCittc2dzdHIgIiIKKyJcbiIKKyJcbiIKKyIlczogJXNcbiIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6NzAKK21zZ2lkICIiCisiXG4iCisiUHJlc3MgPGVudGVyPiB0byBjb250aW51ZS4iCittc2dzdHIgIiIKKyJcbiIKKyLqs4Tsho3tlZjroKTrqbQgPGVudGVyPiDtgqTrpbwg64iE66W07Iut7Iuc7JikLiIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MTYxCisjLCBjLWZvcm1hdAorbXNnaWQgIlByZXNzIDxlbnRlcj4gdG8gY29udGludWUuXG4iCittc2dzdHIgIuqzhOyGje2VmOugpOuptCA8ZW50ZXI+IO2CpOulvCDriITrpbTsi63si5zsmKQuXG4iCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjE2MgorIywgZnV6enkKK21zZ2lkICI8c3RhbmRhcmQgZXJyb3I+IgorbXNnc3RyICLtkZzspIAg7Jik66WY7JeQIOyTsOq4sCDsmKTrpZjqsIAg67Cc7IOd7ZaI7Iq164uI64ukIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoxNjUKK21zZ2lkICJlcnJvciByZWFkaW5nIGFja25vd2xlZGdlbWVudCBvZiBwcm9ncmFtIGZhaWx1cmUgbWVzc2FnZSIKK21zZ3N0ciAi7ZSE66Gc6re4656oIOyLpO2MqCDrqZTshLjsp4DsnZgg7ZmV7J247J2EIOydveuKlCDrjbAg7Jik66WY6rCAIOuwnOyDne2WiOyKteuLiOuLpCIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MTk2Cittc2dpZCAidXBkYXRlIGF2YWlsYWJsZSBsaXN0IHNjcmlwdCIKK21zZ3N0ciAi7IKs7JqpIOqwgOuKpSDrqqnroZ0g7JeF642w7J207Yq4IOyKpO2BrOumve2KuCIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MjAwCittc2dpZCAiaW5zdGFsbGF0aW9uIHNjcmlwdCIKK21zZ3N0ciAi7ISk7LmYIOyKpO2BrOumve2KuCIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MjQ2Cittc2dpZCAicXVlcnkvc2V0dXAgc2NyaXB0IgorbXNnc3RyICLssL7quLAv7ISk7KCVIOyKpO2BrOumve2KuCIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yIGluIG1ldGhvZCBvcHRpb25zIGZpbGUgYCUuMjUwcycgLS0gJXMiCittc2dzdHIgIuyEpOy5mCDrsKnrspUg7Ji17IWYIO2MjOydvCBgJS4yNTBzJ+yXkCDrrLjrspUg7Jik66WY6rCAIOyeiOyKteuLiOuLpCAtLSAlcyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcmVhZGluZyBvcHRpb25zIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuyYteyFmCDtjIzsnbwgYCUuMjUwcyfsnYQo66W8KSDsnb3ripQg642wIOyYpOulmOqwgCDrsJzsg53tlojsirXri4jri6QiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjkwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIGAlLjI1MHMnIGRpcmVjdG9yeSBmb3IgcmVhZGluZyBtZXRob2RzIgorbXNnc3RyICLshKTsuZgg67Cp67KV7J2EIOydveuKlCDrjbAgYCUuMjUwcycg65SU66CJ7Yag66as66W8IOydveydhCDsiJgg7JeG7Iq164uI64ukIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxMDYKKyMsIGMtZm9ybWF0Cittc2dpZCAibWV0aG9kIGAlLjI1MHMnIGhhcyBuYW1lIHRoYXQgaXMgdG9vIGxvbmcgKCVkID4gJWQgY2hhcmFjdGVycykiCittc2dzdHIgImAlLjI1MHMnIOyEpOy5mCDrsKnrspXsl5Ag64SI66y0IOq4tCDsnbTrpoTsnbQg65Ok7Ja0IOyeiOyKteuLiOuLpCAoJWQgPiAlZCDrsJTsnbTtirgpIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGFjY2VzcyBtZXRob2Qgc2NyaXB0IGAlLjI1MHMnIgorbXNnc3RyICLshKTsuZgg67Cp67KVIOyKpO2BrOumve2KuCBgJS4yNTBzJ+yXkCDsoJHqt7ztlaAg7IiYIOyXhuyKteuLiOuLpCIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTIzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIG1ldGhvZCBvcHRpb25zIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuyEpOy5mCDrsKnrspUg7Ji17IWYIO2MjOydvCBgJS4yNTBzJ+ydhCjrpbwpIOydveydhCDsiJgg7JeG7Iq164uI64ukIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNDcKK21zZ2lkICJub24tZGlnaXQgd2hlcmUgZGlnaXQgd2FudGVkIgorbXNnc3RyICLsiKvsnpDqsIAg65Ok7Ja06rCA7JW8IO2VoCDqs7Psl5Ag7Iir7J6Q6rCAIOyVhOuLjCDrrLjsnpAiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE1MAorbXNnaWQgIkVPRiBpbiBpbmRleCBzdHJpbmciCittc2dzdHIgIuyduOuNseyKpCDrrLjsnpDsl7Tsl5DshJwg7YyM7J287J20IOuBneuCrOyKteuLiOuLpCIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTUzCittc2dpZCAiaW5kZXggc3RyaW5nIHRvbyBsb25nIgorbXNnc3RyICLsnbjrjbHsiqQg66y47J6Q7Je07J20IOuEiOustCDquYHri4jri6QiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE1NgorbXNnaWQgIm5ld2xpbmUgYmVmb3JlIG9wdGlvbiBuYW1lIHN0YXJ0IgorbXNnc3RyICLsmLXshZgg7J2066aE7J20IOyLnOyeke2VmOq4sCDsoITsl5Ag7KSE67CU6r+I7J20IOyeiOyKteuLiOuLpCIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTU4Cittc2dpZCAiRU9GIGJlZm9yZSBvcHRpb24gbmFtZSBzdGFydCIKK21zZ3N0ciAi7Ji17IWYIOydtOumhOydtCDsi5zsnpHtlZjquLAg7KCE7JeQIO2MjOydvOydtCDrgZ3rgqzsirXri4jri6QiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE2MgorbXNnaWQgIm5vbmFscGhhIHdoZXJlIG9wdGlvbiBuYW1lIHN0YXJ0IHdhbnRlZCIKK21zZ3N0ciAi7JuQ7ZWY64qUIOyYteyFmCDsnbTrpoTsnbQg7Iuc7J6R65CY64qUIOqzs+yXkCDsmIHrrLjsnpDqsIAg7JWE64uMIOusuOyekOqwgCDsnojsirXri4jri6QiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE2NAorbXNnaWQgIm5vbi1hbHBoYW51bSBpbiBvcHRpb24gbmFtZSIKK21zZ3N0ciAi7Ji17IWYIOydtOumhOyXkCDsmIHrrLjsnpDrgpgg7Iir7J6Q6rCAIOyVhOuLjCDrrLjsnpDqsIAg7J6I7Iq164uI64ukIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNjcKK21zZ2lkICJFT0YgaW4gb3B0aW9uIG5hbWUiCittc2dzdHIgIuyYteyFmCDsnbTrpoQg7KSR7JeQIO2MjOydvOydtCDrgZ3rgqzsirXri4jri6QiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE3MgorbXNnaWQgIm5ld2xpbmUgYmVmb3JlIHN1bW1hcnkiCittc2dzdHIgIuyalOyVvSDsoITsl5Ag7KSE67CU6r+IIOusuOyekOqwgCDsnojsirXri4jri6QiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE3NAorbXNnaWQgIkVPRiBiZWZvcmUgc3VtbWFyeSIKK21zZ3N0ciAi7JqU7JW9IOyghOyXkCDtjIzsnbzsnbQg64Gd64Ks7Iq164uI64ukIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxODAKK21zZ2lkICJFT0YgaW4gc3VtbWFyeSAtIG1pc3NpbmcgbmV3bGluZSIKK21zZ3N0ciAi7JqU7JW97JeQIO2MjOydvOydtCDrgZ3rgqzsirXri4jri6QgLSDspITrsJTqv4jsnbQg67mg7KGM7Iq164uI64ukIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gb3B0aW9uIGRlc2NyaXB0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuyYteyFmCDshKTrqoUg7YyM7J28KGAlLjI1MHMnKeydhCDsl7Qg7IiYIOyXhuyKteuLiOuLpCIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTk0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IG9wdGlvbiBkZXNjcmlwdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLsmLXshZgg7ISk66qFIO2MjOydvChgJS4yNTBzJynsnZgg7KCV67O066W8IOydveydhCDsiJgg7JeG7Iq164uI64ukIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxOTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgb3B0aW9uIGRlc2NyaXB0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuyYteyFmCDshKTrqoUg7YyM7J28KGAlLjI1MHMnKeydhCDsl7Qg7IiYIOyXhuyKteuLiOuLpCIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MjAxCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGR1cmluZyByZWFkIG9mIG9wdGlvbiBkZXNjcmlwdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLsmLXshZgg7ISk66qFIO2MjOydvChgJS4yNTBzJynsnYQg7J2964qUIOykkeyXkCDsmKTrpZgiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjIyNAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBkdXJpbmcgcmVhZCBvZiBtZXRob2Qgb3B0aW9ucyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLshKTsuZgg67Cp67KVIOyYteyFmCDtjIzsnbwoYCUuMjUwcycp7J2EIOydveuKlCDspJHsl5Ag7Jik66WYIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gY3VycmVudCBvcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi7ZiE7J6sIOyYteyFmCDtjIzsnbwoYCUuMjUwcycp7J2EIOyXtCDsiJgg7JeG7Iq164uI64ukIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyODkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gbmV3IG9wdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLsg4gg7Ji17IWYIO2MjOydvChgJS4yNTBzJynsnYQg7Je0IOyImCDsl4bsirXri4jri6QiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjI5MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgbmV3IG9wdGlvbiB0byBgJS4yNTBzJyIKK21zZ3N0ciAi7IOIIOyYteyFmCDtjIzsnbwoYCUuMjUwcycp7J2EIOyTuCDsiJgg7JeG7Iq164uI64ukIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyOTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIG5ldyBvcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi7IOIIOyYteyFmCDtjIzsnbwoYCUuMjUwcycp7J2EIOuLq+ydhCDsiJgg7JeG7Iq164uI64ukIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyOTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IG9wdGlvbiBhcyBgJS4yNTBzJyIKK21zZ3N0ciAi7IOIIOyYteyFmOydhCBgJS4yNTBzJyDtjIzsnbzsl5Ag7ISk7LmY7ZWgIOyImCDsl4bsirXri4jri6QiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzozNgorbXNnaWQgIm5ldyBwYWNrYWdlIgorbXNnc3RyICLsg4gg6r6465+s66+4IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MzcKK21zZ2lkICJpbnN0YWxsIgorbXNnc3RyICLshKTsuZgiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzozOAorbXNnaWQgImhvbGQiCittc2dzdHIgIuqzoOyglSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjM5Cittc2dpZCAicmVtb3ZlIgorbXNnc3RyICLsp4DsmrDquLAiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo0MAorbXNnaWQgInB1cmdlIgorbXNnc3RyICLquajrgZfsnbQiCisKKyMuIFRSQU5TTEFUT1JTOiBUaGUgc3BhY2UgaXMgYSB0cmljayB0byB3b3JrIGFyb3VuZCBnZXR0ZXh0IHdoaWNoIHVzZXMKKyMuICogdGhlIGVtcHR5IHN0cmluZyB0byBzdG9yZSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgdHJhbnNsYXRpb24uIERPIE5PVAorIy4gKiBDSEFOR0UgVEhBVCBJTiBBIFRSQU5TTEFUSU9OISBUaGUgY29kZSByZWFsbHkgcmVsaWVzIG9uIHRoYXQgYmVpbmcKKyMuICogYSBzaW5nbGUgc3BhY2UuCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NDcKK21zZ2lkICIgIgorbXNnc3RyICIgIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NDgKK21zZ2lkICJSRUlOU1RBTEwiCittc2dzdHIgIuuLpOyLnOyEpOy5mCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjUxCittc2dpZCAibm90IGluc3RhbGxlZCIKK21zZ3N0ciAi7ISk7LmY7ZWY7KeAIOyViuyVmOyKteuLiOuLpCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjUyCittc2dpZCAicmVtb3ZlZCAoY29uZmlncyByZW1haW4pIgorbXNnc3RyICLsp4Dsm4AgKOyEpOyglSDtjIzsnbwg64Ko7JWE7J6I7J2MKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjUzCittc2dpZCAiaGFsZiBpbnN0YWxsZWQiCittc2dzdHIgIuydvOu2gCDshKTsuZgiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1NAorbXNnaWQgInVucGFja2VkIChub3Qgc2V0IHVwKSIKK21zZ3N0ciAi7ZKA66a8ICjshKTsoJXtlZjsp4DripQg7JWK7J2MKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjU1Cittc2dpZCAiaGFsZiBjb25maWd1cmVkIChjb25maWcgZmFpbGVkKSIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTYKK21zZ2lkICJhd2FpdGluZyB0cmlnZ2VyIHByb2Nlc3NpbmciCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjU3Cittc2dpZCAidHJpZ2dlcmVkIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1OAorbXNnaWQgImluc3RhbGxlZCIKK21zZ3N0ciAi7ISk7LmY7ZWoIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjEKK21zZ2lkICJSZXF1aXJlZCIKK21zZ3N0ciAi7ZWE7IiYIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjIKK21zZ2lkICJJbXBvcnRhbnQiCittc2dzdHIgIuykkeyalCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjYzCittc2dpZCAiU3RhbmRhcmQiCittc2dzdHIgIu2RnOykgCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjY0Cittc2dpZCAiT3B0aW9uYWwiCittc2dzdHIgIuyYteyFmCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjY1Cittc2dpZCAiRXh0cmEiCittc2dzdHIgIuuzhOuPhCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjY2Cittc2dpZCAiIUJ1ZyEiCittc2dzdHIgIiHrsoTqt7ghIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjcKK21zZ2lkICJVbmNsYXNzaWZpZWQiCittc2dzdHIgIuu2hOulmOyViOuQqCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjcwCittc2dpZCAic3VnZ2VzdHMiCittc2dzdHIgIuq+uOufrOuvuOuKlCDri6TsnYwg6r6465+s66+466W8IOygnOyViDoiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3MQorbXNnaWQgInJlY29tbWVuZHMiCittc2dzdHIgIuq+uOufrOuvuOuKlCDri6TsnYwg6r6465+s66+466W8IOy2lOyynDoiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3MgorbXNnaWQgImRlcGVuZHMgb24iCittc2dzdHIgIuq+uOufrOuvuOuKlCDri6TsnYwg6r6465+s66+47JeQIOydmOyhtDoiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3MworbXNnaWQgInByZS1kZXBlbmRzIG9uIgorbXNnc3RyICLqvrjrn6zrr7jripQg64uk7J2MIOq+uOufrOuvuOyXkCDshKDsnZjsobQ6IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzQKKyMsIGZ1enp5Cittc2dpZCAiYnJlYWtzIgorbXNnc3RyICLrp53qsIDrnKjrprwiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3NQorbXNnaWQgImNvbmZsaWN0cyB3aXRoIgorbXNnc3RyICLqvrjrn6zrr7jripQg64uk7J2MIOq+uOufrOuvuOyZgCDstqnrj4w6IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzYKK21zZ2lkICJwcm92aWRlcyIKK21zZ3N0ciAi6r6465+s66+464qUIOuLpOydjCDqvrjrn6zrr7jsnZgg6riw64ql7J2EIOygnOqztToiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3NworbXNnaWQgInJlcGxhY2VzIgorbXNnc3RyICLqvrjrn6zrr7jripQg64uk7J2MIOq+uOufrOuvuOulvCDrjIDsuZg6IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzgKK21zZ2lkICJlbmhhbmNlcyIKK21zZ3N0ciAi6r6465+s66+464qUIOuLpOydjCDqvrjrn6zrr7jrpbwg7ZmV7J6lOiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjgxCittc2dpZCAiUmVxIgorbXNnc3RyICLtlYTsiJgiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4MgorbXNnaWQgIkltcCIKK21zZ3N0ciAi7KSR7JqUIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODMKK21zZ2lkICJTdGQiCittc2dzdHIgIu2RnOykgCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjg0Cittc2dpZCAiT3B0IgorbXNnc3RyICLsmLXshZgiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4NQorbXNnaWQgIlh0ciIKK21zZ3N0ciAi67OE64+EIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODYKK21zZ2lkICJiVUciCittc2dzdHIgIuuyhOq3uCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjg3Cittc2dpZCAiPyIKK21zZ3N0ciAiPyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjk1IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTUKK21zZ2lkICJCcm9rZW4iCittc2dzdHIgIuq5qOynkCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjk2Cittc2dpZCAiTmV3IgorbXNnc3RyICLsg4jroZzsm4AiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo5NworbXNnaWQgIlVwZGF0ZWQiCittc2dzdHIgIuyXheuNsOydtO2KuO2VnCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjk4Cittc2dpZCAiT2Jzb2xldGUvbG9jYWwiCittc2dzdHIgIuqzvOqxsC/roZzsu6wiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo5OQorbXNnaWQgIlVwLXRvLWRhdGUiCittc2dzdHIgIuy1nOyLoCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwMAorbXNnaWQgIkF2YWlsYWJsZSIKK21zZ3N0ciAi7J207Jqp6rCA64qlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTAxIGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTcKK21zZ2lkICJSZW1vdmVkIgorbXNnc3RyICLsp4Dsm4AiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDIgZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExMQorbXNnaWQgIkJyb2tlbmx5IGluc3RhbGxlZCBwYWNrYWdlcyIKK21zZ3N0ciAi6rmo7KC47IScIOyEpOy5mOuQnCDqvrjrn6zrr7giCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDMKK21zZ2lkICJOZXdseSBhdmFpbGFibGUgcGFja2FnZXMiCittc2dzdHIgIuyDiOuhreqyjCDsnbTsmqnqsIDriqXtlZwg6r6465+s66+4IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTA0Cittc2dpZCAiVXBkYXRlZCBwYWNrYWdlcyAobmV3ZXIgdmVyc2lvbiBpcyBhdmFpbGFibGUpIgorbXNnc3RyICLsl4XrjbDsnbTtirjtlZwg6r6465+s66+4ICjsg4jroZzsmrQg67KE7KCE7J20IOyeiOydjCkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDUKK21zZ2lkICJPYnNvbGV0ZSBhbmQgbG9jYWwgcGFja2FnZXMgcHJlc2VudCBvbiBzeXN0ZW0iCittc2dzdHIgIuyLnOyKpO2FnOyXkCDsnojsp4Drp4wg7Jik656Y7KCEIOq+uOufrOuvuCDrsI8g66Gc7LusIOq+uOufrOuvuCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwNgorbXNnaWQgIlVwIHRvIGRhdGUgaW5zdGFsbGVkIHBhY2thZ2VzIgorbXNnc3RyICLsl4XrjbDsnbTtirjtlbQg7ISk7LmY65CcIOq+uOufrOuvuCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwNworbXNnaWQgIkF2YWlsYWJsZSBwYWNrYWdlcyAobm90IGN1cnJlbnRseSBpbnN0YWxsZWQpIgorbXNnc3RyICLsnbTsmqkg6rCA64ql7ZWcIOq+uOufrOuvuCAo7JWE7KeBIOyEpOy5mOuQmOyngCDslYrsnYwpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTA4Cittc2dpZCAiUmVtb3ZlZCBhbmQgbm8gbG9uZ2VyIGF2YWlsYWJsZSBwYWNrYWdlcyIKK21zZ3N0ciAi7KeA7JuM7IScIOuNlCDsnbTsg4Eg7J207Jqp7ZWgIOyImCDsl4bripQg6r6465+s66+4IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTEyCittc2dpZCAiSW5zdGFsbGVkIHBhY2thZ2VzIgorbXNnc3RyICLshKTsuZjtlZwg6r6465+s66+4IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTEzCittc2dpZCAiUmVtb3ZlZCBwYWNrYWdlcyAoY29uZmlndXJhdGlvbiBzdGlsbCBwcmVzZW50KSIKK21zZ3N0ciAi7KeA7Jq0IOq+uOufrOuvuCAo7ISk7KCVIO2MjOydvOydtCDsl6zsoITtnogg64Ko7JWE7J6I7J2MKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExNAorbXNnaWQgIlB1cmdlZCBwYWNrYWdlcyBhbmQgdGhvc2UgbmV2ZXIgaW5zdGFsbGVkIgorbXNnc3RyICLquajrgZfsnbQg7ZWcIOq+uOufrOuvuCDrsI8g7ISk7LmY7ZWcIOyggeydtCDsl4bripQg6r6465+s66+4IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTE2Cittc2dpZCAiSW5zdGFsbGVkIgorbXNnc3RyICLshKTsuZjrkKgiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTgKK21zZ2lkICJQdXJnZWQiCittc2dzdHIgIuq5qOuBl+ydtO2VqCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjE5OAorbXNnaWQgImRzZWxlY3QgLSByZWN1cnNpdmUgcGFja2FnZSBsaXN0aW5nIgorbXNnc3RyICJkc2VsZWN0IC0g7J6s6reAIOq+uOufrOuvuCDrqqnroZ0iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxOTkKK21zZ2lkICJkc2VsZWN0IC0gaW5zcGVjdGlvbiBvZiBwYWNrYWdlIHN0YXRlcyIKK21zZ3N0ciAiZHNlbGVjdCAtIOq+uOufrOuvuCDsg4Htg5wg6rCQ7IucIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjAwCittc2dpZCAiZHNlbGVjdCAtIG1haW4gcGFja2FnZSBsaXN0aW5nIgorbXNnc3RyICJkc2VsZWN0IC0g7KO87JqUIOq+uOufrOuvuCDrqqnroZ0iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMDgKK21zZ2lkICIgKGJ5IHNlY3Rpb24pIgorbXNnc3RyICIgKOyEueyFmCDsiJzshJwpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjExCittc2dpZCAiIChhdmFpbC4sIHNlY3Rpb24pIgorbXNnc3RyICIgKOydtOyaqeqwgOuKpSwg7IS57IWYKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIxNAorbXNnaWQgIiAoc3RhdHVzLCBzZWN0aW9uKSIKK21zZ3N0ciAiICjsg4Htg5wsIOyEueyFmCkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMjMKK21zZ2lkICIgKGJ5IHByaW9yaXR5KSIKK21zZ3N0ciAiICjsmrDshKDsiJzsnIQg7Iic7IScKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIyNgorbXNnaWQgIiAoYXZhaWwuLCBwcmlvcml0eSkiCittc2dzdHIgIiAo7J207Jqp6rCA64qlLCDsmrDshKDsiJzsnIQpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjI5Cittc2dpZCAiIChzdGF0dXMsIHByaW9yaXR5KSIKK21zZ3N0ciAiICjsg4Htg5wsIOyasOyEoOyInOychCkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMzggZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI1MAorbXNnaWQgIiAoYWxwaGFiZXRpY2FsbHkpIgorbXNnc3RyICIgKOyVjO2MjOuysyDsiJzshJwpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjQxCittc2dpZCAiIChieSBhdmFpbGFiaWxpdHkpIgorbXNnc3RyICIgKOydtOyaqeqwgOuKpSDsiJzshJwpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjQ0Cittc2dpZCAiIChieSBzdGF0dXMpIgorbXNnc3RyICIgKOyDge2DnCDsiJzshJwpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjU4Cittc2dpZCAiIG1hcms6Ky89Ly0gdGVyc2U6diBoZWxwOj8iCittc2dzdHIgIiDtkZzsi5w6Ky89Ly0g6rCE64uo7Z6IOnYg64+E7JuA66eQOj8iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNTkKK21zZ2lkICIgbWFyazorLz0vLSB2ZXJib3NlOnYgaGVscDo/IgorbXNnc3RyICIg7ZGc7IucOisvPS8tIOyekOyEuO2eiDp2IOuPhOybgOunkDo/IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjYwCittc2dpZCAiIHRlcnNlOnYgaGVscDo/IgorbXNnc3RyICIg6rCE64uo7Z6IOnYg64+E7JuA66eQOj8iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNjEKK21zZ2lkICIgdmVyYm9zZTp2IGhlbHA6PyIKK21zZ3N0ciAiIOyekOyEuO2eiDp2IOuPhOybgOunkDo/IgorCisjOiBkc2VsZWN0L3BrZ2luZm8uY2M6ODAKK21zZ2lkICIiCisiVGhlIGxpbmUgeW91IGhhdmUgaGlnaGxpZ2h0ZWQgcmVwcmVzZW50cyBtYW55IHBhY2thZ2VzOyBpZiB5b3UgYXNrIHRvICIKKyJpbnN0YWxsLCByZW1vdmUsIGhvbGQsIGV0Yy4gaXQgeW91IHdpbGwgYWZmZWN0IGFsbCB0aGUgcGFja2FnZXMgd2hpY2ggbWF0Y2ggIgorInRoZSBjcml0ZXJpb24gc2hvd24uXG4iCisiXG4iCisiSWYgeW91IG1vdmUgdGhlIGhpZ2hsaWdodCB0byBhIGxpbmUgZm9yIGEgcGFydGljdWxhciBwYWNrYWdlIHlvdSB3aWxsIHNlZSAiCisiaW5mb3JtYXRpb24gYWJvdXQgdGhhdCBwYWNrYWdlIGRpc3BsYXllZCBoZXJlLlxuIgorIllvdSBjYW4gdXNlIGBvJyBhbmQgYE8nIHRvIGNoYW5nZSB0aGUgc29ydCBvcmRlciBhbmQgZ2l2ZSB5b3Vyc2VsZiB0aGUgIgorIm9wcG9ydHVuaXR5IHRvIG1hcmsgcGFja2FnZXMgaW4gZGlmZmVyZW50IGtpbmRzIG9mIGdyb3Vwcy4iCittc2dzdHIgIiIKKyLrsJjsoIQg66eJ64yA6rCAIOyeiOuKlCDspITsnYAg66eO7J2AIOq+uOufrOuvuOyXkCDsmIHtlqXsnYQg66+47Lmp64uI64ukLiAg7ISk7LmYLCDsp4DsmrDquLAsIOqzoOyglSDrk7EiCisi7J2EIOyalOyyre2VmOuptCDqsbDquLDsl5Ag7ZW064u565CY64qUIOq+uOufrOuvuCDrqqjrkZDqsIAg7JiB7Zal7J2EIOuwm+yKteuLiOuLpC5cbiIKKyJcbiIKKyLrsJjsoIQg66eJ64yA66W8IOq+uOufrOuvuOqwgCDsnITsuZjtlZwg7KSE66GcIOyYruq4sOuptCDqsIEg6r6465+s66+47JeQIOuMgO2VnCDsoJXrs7Trpbwg67O8IOyImCDsnojsirXri4giCisi64ukLlxuIgorImBvJ+yZgCBgTyfrpbwg64iE66W066m0IOygleugrCDsiJzshJzrpbwg67CU6r646rGw64KYIOuLpOuluCDsooXrpZjsnZgg6re466O57J2YIOq+uOufrOuvuCDtkZzsi5zrpbwg7ZWgICIKKyLsiJgg7J6I7Iq164uI64ukLiIKKworIyBGSVhNRTogYmFkIG1zZ2lkCisjOiBkc2VsZWN0L3BrZ2luZm8uY2M6OTMKK21zZ2lkICJJbnRlcnJlbGF0aW9uc2hpcHMiCittc2dzdHIgIuq+uOufrOuvuCDqtIDqs4QiCisKKyMgRklYTUU6IGJhZCBtc2dpZAorIzogZHNlbGVjdC9wa2dpbmZvLmNjOjExMgorbXNnaWQgIk5vIGRlc2NyaXB0aW9uIGF2YWlsYWJsZS4iCittc2dzdHIgIuyDgeyEuCDshKTrqoUg7JeG7J2MLiIKKworIzogZHNlbGVjdC9wa2dpbmZvLmNjOjEzMAorbXNnaWQgIkluc3RhbGxlZCBjb250cm9sIGZpbGUgaW5mb3JtYXRpb24iCittc2dzdHIgIuyEpOy5mOuQnCDsoJzslrQg7YyM7J28IOygleuztCAiCisKKyM6IGRzZWxlY3QvcGtnaW5mby5jYzoxNDYKK21zZ2lkICJBdmFpbGFibGUgY29udHJvbCBmaWxlIGluZm9ybWF0aW9uIgorbXNnc3RyICLtmITsnqwg7J6I64qUIOygnOyWtCDtjIzsnbwg7KCV67O0IgorCisjOiBkc2VsZWN0L3BrZ2xpc3QuY2M6NDE2Cittc2dpZCAiVGhlcmUgYXJlIG5vIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2xpc3QuY2M6NTA3Cittc2dpZCAiaW52YWxpZCBzZWFyY2ggb3B0aW9uIGdpdmVuIgorbXNnc3RyICLso7zslrTsp4Qg7LC+6riwIOyYteyFmOydtCDsmKzrsJTrpbTsp4Ag7JWK7Iq164uI64ukIgorCisjOiBkc2VsZWN0L3BrZ2xpc3QuY2M6NTIxCittc2dpZCAiZXJyb3IgaW4gcmVndWxhciBleHByZXNzaW9uIgorbXNnc3RyICLsoJXqt5zsi53sl5Ag7Jik66WYIgorCisjIEZJWE1FOiBiYWQgbXNnaWQKKyM6IGRzZWxlY3QvcGtnc3VibGlzdC5jYzoxMDcKK21zZ2lkICIgZG9lcyBub3QgYXBwZWFyIHRvIGJlIGF2YWlsYWJsZVxuIgorbXNnc3RyICIg6r6465+s66+464qUIOydtOyaqe2VoCDsiJgg7JeG64qUIOqyg+ycvOuhnCDrs7TsnoXri4jri6RcbiIKKworIzogZHNlbGVjdC9wa2dzdWJsaXN0LmNjOjEyNworbXNnaWQgIiBvciAiCittc2dzdHIgIiDtmLnsnYAgIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo1NworbXNnaWQgIkFsbCIKK21zZ3N0ciAi66qo65GQIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo3OQorbXNnaWQgIkFsbCBwYWNrYWdlcyIKK21zZ3N0ciAi66qo65OgIOq+uOufrOuvuCIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcGFja2FnZXMgd2l0aG91dCBhIHNlY3Rpb24iCittc2dzdHIgIuyEueyFmOyXkCDsho3tlZjsp4Ag7JWK7J2AICVzIOq+uOufrOuvuCIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcGFja2FnZXMgaW4gc2VjdGlvbiAlcyIKK21zZ3N0ciAiJXMg6r6465+s66+4ICjshLnshZggJXPsl5Ag7IaN7ZWY64qUIOq+uOufrOuvuCkiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjkxCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzICVzIHBhY2thZ2VzIgorbXNnc3RyICIlcyAlcyDqvrjrn6zrr7giCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjk1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzICVzIHBhY2thZ2VzIHdpdGhvdXQgYSBzZWN0aW9uIgorbXNnc3RyICLshLnshZjsl5Ag7IaN7ZWY7KeAIOyViuydgCAlcyAlcyDqvrjrn6zrr7giCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjk3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzICVzIHBhY2thZ2VzIGluIHNlY3Rpb24gJXMiCittc2dzdHIgIiVzICVzIOq+uOufrOuvuCAoJXMg7IS57IWYKSIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6MTE4CisjLCBjLWZvcm1hdAorbXNnaWQgIiUtKnMgJXMlcyVzOyAgJXMgKHdhczogJXMpLiAgJXMiCittc2dzdHIgIiUtKnMgJXMlcyVzLCAgJXMgKOydtOyghOyDge2DnDogJXMpLiAgJXMiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI2MworbXNnaWQgIkVycm9yIgorbXNnc3RyICLsmKTrpZgiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI2NworbXNnaWQgIkluc3RhbGxlZD8iCittc2dzdHIgIuyEpOy5mCDsl6zrtoAiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI3MQorbXNnaWQgIk9sZCBtYXJrIgorbXNnc3RyICLsnbTsoIQg66eI7YGsIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyNzUKK21zZ2lkICJNYXJrZWQgZm9yIgorbXNnc3RyICLtmITsnqwg66eI7YGsIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyNzgKK21zZ2lkICJFSU9NIgorbXNnc3RyICJFSU9NIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyODAKK21zZ2lkICJTZWN0aW9uIgorbXNnc3RyICLshLnshZgiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI4MQorbXNnaWQgIlByaW9yaXR5IgorbXNnc3RyICLsmrDshKDsiJzsnIQiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI4MgorbXNnaWQgIlBhY2thZ2UiCittc2dzdHIgIuq+uOufrOuvuCIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6Mjg2Cittc2dpZCAiSW5zdC52ZXIiCittc2dzdHIgIuyEpOy5mOuyhOyghCIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6Mjg5Cittc2dpZCAiQXZhaWwudmVyIgorbXNnc3RyICLsnbTsmqnqsIDriqUiCisKKyN+IG1zZ2lkICJyZXR1cm5lZCBlcnJvciBleGl0IHN0YXR1cyAlZC5cbiIKKyN+IG1zZ3N0ciAi7Jik66WYIOyDge2DnOqwkiAlZOuyiOydhCDrpqzthLTtlojsirXri4jri6QuXG4iCisKKyN+IG1zZ2lkICJ3YXMgaW50ZXJydXB0ZWQuXG4iCisjfiBtc2dzdHIgIuyduO2EsOufve2KuOuQmOyXiOyKteuLiOuLpC5cbiIKKworI34gbXNnaWQgIndhcyB0ZXJtaW5hdGVkIGJ5IGEgc2lnbmFsOiAlcy5cbiIKKyN+IG1zZ3N0ciAi7Iuc6re464SQ65WM66y47JeQIOqwleygnOuhnCDrgZ3rgqzsirXri4jri6Q6ICVzLlxuIgorCisjfiBtc2dpZCAiKEl0IGxlZnQgYSBjb3JlZHVtcC4pXG4iCisjfiBtc2dzdHIgIijrqZTrqqjrpqwg642k7ZSE66W8IOuCqOqyvOyKteuLiOuLpC4pXG4iCisKKyN+IG1zZ2lkICJmYWlsZWQgd2l0aCBhbiB1bmtub3duIHdhaXQgcmV0dXJuIGNvZGUgJWQuXG4iCisjfiBtc2dzdHIgIuyVjCDsiJgg7JeG64qUIHdhaXQg66as7YS0IOy9lOuTnCAlZOuyiOycvOuhnCDsi6TtjKjtlojsirXri4jri6QuXG4iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcnVuICUuMjUwcyBwcm9jZXNzIGAlLjI1MHMnIgorI34gbXNnc3RyICIlLjI1MHMg7ZSE66Gc7IS47IqkIGAlLjI1MHMn7J2EKOulvCkg7Iuk7ZaJ7ZWgIOyImCDsl4bsirXri4jri6QiCisKKyN+IG1zZ2lkICJmYWlsZWQgY29uZmlnIgorI34gbXNnc3RyICLshKTsoJUg7Iuk7YyoIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHdhaXQgZm9yICUuMjUwcyIKKyN+IG1zZ3N0ciAiJS4yNTBzIO2UhOuhnOyEuOyKpOulvCB3YWl07ZWgIOyImCDsl4bsirXri4jri6QiCisKKyN+IG1zZ2lkICJnb3Qgd3JvbmcgY2hpbGQncyBzdGF0dXMgLSBhc2tlZCBmb3IgJWxkLCBnb3QgJWxkIgorI34gbXNnc3RyICLtlZjsnIQg7ZSE66Gc7IS47Iqk7J2YIOumrO2EtOqwkuydtCDti4DroLjsirXri4jri6QgLSAlbGQg7JqU7LKtLCAlbGQg66as7YS0IgorCisjfiBtc2dpZCAiUmVjb21tZW5kZWQiCisjfiBtc2dzdHIgIuy2lOyynCIKKworI34gbXNnaWQgIkNvbnRyaWIiCisjfiBtc2dzdHIgIuq4sOyXrCIKKworI34gbXNnaWQgIlJlYyIKKyN+IG1zZ3N0ciAi7LaU7LKcIgorCisjfiBtc2dpZCAiQ3RiIgorI34gbXNnc3RyICLquLDsl6wiCisKKyN+IG1zZ2lkICIiCisjfiAiYmFzZWxpc3Q6OnN0YXJ0ZGlzcGxheSgpIGRvbmUgLi4uXG4iCisjfiAiXG4iCisjfiAiIHhtYXg9JWQsIHltYXg9JWQ7XG4iCisjfiAiXG4iCisjfiAiIHRpdGxlX2hlaWdodD0lZCwgY29saGVhZHNfaGVpZ2h0PSVkLCBsaXN0X2hlaWdodD0lZDtcbiIKKyN+ICIgdGhpc3N0YXRlX2hlaWdodD0lZCwgaW5mb19oZWlnaHQ9JWQsIHdoYXRpbmZvX2hlaWdodD0lZDtcbiIKKyN+ICJcbiIKKyN+ICIgY29saGVhZHNfcm93PSVkLCB0aGlzc3RhdGVfcm93PSVkLCBpbmZvX3Jvdz0lZDtcbiIKKyN+ICIgd2hhdGluZm9fcm93PSVkLCBsaXN0X3Jvdz0lZDtcbiIKKyN+ICJcbiIKKyN+IG1zZ3N0ciAiIgorI34gImJhc2VsaXN0OjpzdGFydGRpc3BsYXkoKSDsmYTro4wgLi4uXG4iCisjfiAiXG4iCisjfiAiIHhtYXg9JWQsIHltYXg9JWQsXG4iCisjfiAiXG4iCisjfiAiIHRpdGxlX2hlaWdodD0lZCwgY29saGVhZHNfaGVpZ2h0PSVkLCBsaXN0X2hlaWdodD0lZCxcbiIKKyN+ICIgdGhpc3N0YXRlX2hlaWdodD0lZCwgaW5mb19oZWlnaHQ9JWQsIHdoYXRpbmZvX2hlaWdodD0lZCxcbiIKKyN+ICJcbiIKKyN+ICIgY29saGVhZHNfcm93PSVkLCB0aGlzc3RhdGVfcm93PSVkLCBpbmZvX3Jvdz0lZCxcbiIKKyN+ICIgd2hhdGluZm9fcm93PSVkLCBsaXN0X3Jvdz0lZCxcbiIKKyN+ICJcbiIKKworI34gbXNnaWQgIltub25lXSIKKyN+IG1zZ3N0ciAiW+yXhuydjF0iCisKKyN+IG1zZ2lkICJlcnJvciB1bi1jYXRjaGluZyBzaWduYWwgJWQ6ICVzXG4iCisjfiBtc2dzdHIgIuyLnOq3uOuEkCAlZOuyiOydhCDqsIDroZzssYTsp4Ag7JWK6rKMIOunjOuTnOuKlCDrjbAg7Jik66WY6rCAIOuwnOyDne2WiOyKteuLiOuLpDogJXNcbiIKKworI34gbXNnaWQgInVuYWJsZSB0byBpZ25vcmUgc2lnbmFsICVkIGJlZm9yZSBydW5uaW5nICUuMjUwcyIKKyN+IG1zZ3N0ciAiJTIkLjI1MHMg7Iuk7ZaJ7JeQIOyVnuyEnCDsi5zqt7jrhJAgJTEkZOuyiOydhCDrrLTsi5ztlaAg7IiYIOyXhuyKteuLiOuLpCIKKworI34gbXNnaWQgIihubyBjbGllbnRkYXRhKSIKKyN+IG1zZ3N0ciAiKO2BtOudvOydtOyWuO2KuCDrjbDsnbTthLAg7JeG7J2MKSIKKworI34gbXNnaWQgIjxudWxsPiIKKyN+IG1zZ3N0ciAiPOu5hOyWtOyeiOydjD4iCisKKyMgRklYTUU6IGJhZCBtc2dpZAorI34gbXNnaWQgImludGVycmVsYXRpb25zaGlwcyBhZmZlY3RpbmcgIgorI34gbXNnc3RyICLqvrjrn6zrr7gg6rSA6rOE6rCAIOuLpOydjOyXkCDsmIHtlqXsnYQg66+47Lmp64uI64ukOiAiCisKKyMgRklYTUU6IGJhZCBtc2dpZAorI34gbXNnaWQgImRlc2NyaXB0aW9uIG9mICIKKyN+IG1zZ3N0ciAi7ISk66qFIDogIgorCisjIEZJWE1FOiBiYWQgbXNnaWQKKyN+IG1zZ2lkICJkZXNjcmlwdGlvbiIKKyN+IG1zZ3N0ciAi7IOB7IS4IOyEpOuqhSIKKworI34gbXNnaWQgImN1cnJlbnRseSBpbnN0YWxsZWQgY29udHJvbCBpbmZvIgorI34gbXNnc3RyICLtmITsnqwg7ISk7LmY65CcIOygnOyWtCDsoJXrs7QiCisKKyN+IG1zZ2lkICJhdmFpbGFibGUgdmVyc2lvbiBvZiBjb250cm9sIGluZm8gZm9yICIKKyN+IG1zZ3N0ciAi7KCc7Ja0IOygleuztOydmCDsnKDtmqgg67KE7KCEIDogIgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL25iLmdtbyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9uYi5nbW8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTBhYTc2MwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9uYi5nbW8KQmluYXJ5IGZpbGVzIGRpZmZlcgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL25iLnBvIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL25iLnBvCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjY4Y2M4MDgKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vbmIucG8KQEAgLTAsMCArMSwxNzA3IEBACisjIE5vcndlZ2lhbiBCb2ttw6VsIHRyYW5zbGF0aW9uIG9mIGRzZWxlY3QuDQorIyBHYXV0ZSBIdm9zbGVmIEt2YWxuZXMgPGdhdXRlQHZlcmRzdmV2ZW4uY29tPiwgMjAwMywgMjAwNC4NCisjIEjDpXZhcmQgS29yc3ZvbGwgPGtvcnN2b2xsQHNrdWxlbGludXgubm8+LCAyMDAzLCAyMDA0Lg0KKyMgQmpvcm4gU3RlZW5zcnVkIDxiam9ybnN0QHBvd2VydGVjaC5ubz4sIDIwMDQuDQorIyBIYW5zIEZyZWRyaWsgTm9yZGhhdWcgPGhhbnNAbm9yZGhhdWcucHJpdi5ubz4sIDIwMDUsIDIwMDksIDIwMTAuDQorbXNnaWQgIiIKK21zZ3N0ciAiIgorIlByb2plY3QtSWQtVmVyc2lvbjogZHNlbGVjdFxuIgorIlJlcG9ydC1Nc2dpZC1CdWdzLVRvOiBkZWJpYW4tZHBrZ0BsaXN0cy5kZWJpYW4ub3JnXG4iCisiUE9ULUNyZWF0aW9uLURhdGU6IDIwMTEtMTAtMTQgMDc6MTErMDIwMFxuIgorIlBPLVJldmlzaW9uLURhdGU6IDIwMTAtMDktMDIgMjM6MDErMDIwMFxuIgorIkxhc3QtVHJhbnNsYXRvcjogSGFucyBGcmVkcmlrIE5vcmRoYXVnIDxoYW5zQG5vcmRoYXVnLnByaXYubm8+XG4iCisiTGFuZ3VhZ2UtVGVhbTogTm9yd2VnaWFuIEJva23DpWwgPGkxOG4tbmJAbGlzdGVyLnBpbmcudWlvLm5vPlxuIgorIkxhbmd1YWdlOiBuYlxuIgorIk1JTUUtVmVyc2lvbjogMS4wXG4iCisiQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PVVURi04XG4iCisiQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdFxuIgorIlBsdXJhbC1Gb3JtczogbnBsdXJhbHM9MjsgcGx1cmFsPShuICE9IDEpO1xuIgorIlgtR2VuZXJhdG9yOiBWaXJ0YWFsIDAuNi4xXG4iCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MTI1Cittc2dpZCAiU2VhcmNoIGZvciA/ICIKK21zZ3N0ciAiU8O4ayBldHRlciA/ICIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxNDcKK21zZ2lkICJFcnJvcjogIgorbXNnc3RyICJGZWlsOiAiCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MTc4Cittc2dpZCAiSGVscDogIgorbXNnc3RyICJIamVscDogIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE4NAorbXNnaWQgIlByZXNzID8gZm9yIGhlbHAgbWVudSwgLiBmb3IgbmV4dCB0b3BpYywgPHNwYWNlPiB0byBleGl0IGhlbHAuIgorbXNnc3RyICIiCisiVHJ5a2sgPyBmb3Igw6UgdmlzZSBoamVscGVtZW55ZW4sIC4gZm9yIG5lc3RlIGVtbmUsIDxtZWxsb21yb20+IGZvciDDpSAiCisiYXZzbHV0dGUgaGplbHAuIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE5MQorbXNnaWQgIkhlbHAgaW5mb3JtYXRpb24gaXMgYXZhaWxhYmxlIHVuZGVyIHRoZSBmb2xsb3dpbmcgdG9waWNzOiIKK21zZ3N0ciAiSGplbHAgZm9yIGbDuGxnZW5kZSBlbW5lciBlciB0aWxnamVuZ2VsaWc6IgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE5OQorbXNnaWQgIiIKKyJQcmVzcyBhIGtleSBmcm9tIHRoZSBsaXN0IGFib3ZlLCA8c3BhY2U+IG9yIGBxJyB0byBleGl0IGhlbHAsXG4iCisiICBvciBgLicgKGZ1bGwgc3RvcCkgdG8gcmVhZCBlYWNoIGhlbHAgcGFnZSBpbiB0dXJuLiAiCittc2dzdHIgIiIKKyJUcnlrayBlbiB0YXN0IGZyYSBsaXN0YSBvdmVyLCA8bWVsbG9tcm9tPiBlbGxlciDCq3HCuyBmb3Igw6UgYXZzbHV0dGUgaGplbHAsXG4iCisiICBlbGxlciDCqy7CuyAocHVua3R1bSkgZm9yIMOlIGxlc2UgaHZlciBoamVscGVzaWRlIGV0dGVyIGh2ZXJhbmRyZS4gIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjIwNQorbXNnaWQgImVycm9yIHJlYWRpbmcga2V5Ym9hcmQgaW4gaGVscCIKK21zZ3N0ciAiZmVpbCB2ZWQgbGVzaW5nIGF2IHRhc3RhdHVyIGkgaGplbHAiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6NTcKK21zZ2lkICJpb2N0bChUSU9DR1dJTlNaKSBmYWlsZWQiCittc2dzdHIgImlvY3RsKFRJT0NHV0lOU1opIG1pc2x5a3RlcyIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo2MAorbXNnaWQgImRvdXBkYXRlIGluIFNJR1dJTkNIIGhhbmRsZXIgZmFpbGVkIgorbXNnc3RyICJkb3VwZGF0ZSBpIFNJR1dJTkNILWjDpW5kdGVyZXJlbiBtaXNseWt0ZXMiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6NjcKK21zZ2lkICJmYWlsZWQgdG8gcmVzdG9yZSBvbGQgU0lHV0lOQ0ggc2lnYWN0IgorbXNnc3RyICJrbGFydGUgaWtrZSDDpSBnamVub3BwcmV0dGUgZ2FtbWVsIFNJR1dJTkNIIHNpZ2FjdCIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo2OQorbXNnaWQgImZhaWxlZCB0byByZXN0b3JlIG9sZCBzaWduYWwgbWFzayIKK21zZ3N0ciAia2xhcnRlIGlra2Ugw6UgZ2plbm9wcHJldHRlIGdhbW1lbCBzaWduYWxtYXNrZSIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo3OQorbXNnaWQgImZhaWxlZCB0byBnZXQgb2xkIHNpZ25hbCBtYXNrIgorbXNnc3RyICJrbGFydGUgaWtrZSDDpSBoZW50ZSBnYW1tZWwgc2lnbmFsbWFza2UiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6ODAKK21zZ2lkICJmYWlsZWQgdG8gZ2V0IG9sZCBTSUdXSU5DSCBzaWdhY3QiCittc2dzdHIgImtsYXJ0ZSBpa2tlIMOlIGhlbnRlIGdhbW1lbCBTSUdXSU5DSCBzaWdhY3QiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6ODQKK21zZ2lkICJmYWlsZWQgdG8gYmxvY2sgU0lHV0lOQ0giCittc2dzdHIgImtsYXJ0ZSBpa2tlIMOlIGJsb2trZXJlIFNJR1dJTkNIIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjg5Cittc2dpZCAiZmFpbGVkIHRvIHNldCBuZXcgU0lHV0lOQ0ggc2lnYWN0IgorbXNnc3RyICJrbGFydGUgaWtrZSDDpSBzZXR0ZSBueSBTSUdXSU5DSCBzaWdhY3QiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTI2Cittc2dpZCAiZmFpbGVkIHRvIGFsbG9jYXRlIGNvbG91ciBwYWlyIgorbXNnc3RyICJrbGFydGUgaWtrZSDDpSB0aWxvcmRuZSBmYXJnZXBhciIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxNjcKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHRpdGxlIHdpbmRvdyIKK21zZ3N0ciAia2xhcnRlIGlra2UgbGFnZSB0aXR0ZWx2aW5kdSIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxNzEKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHdoYXRpbmZvIHdpbmRvdyIKK21zZ3N0ciAia2xhcnRlIGlra2UgbGFnZSB3aGF0aW5mby12aW5kdSIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxNzUKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGJhc2VsaXN0IHBhZCIKK21zZ3N0ciAia2xhcnRlIGlra2UgbGFnZSBiYXNlbGlzdC1wYWQiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTc4Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBoZWFkaW5nIHBhZCIKK21zZ3N0ciAia2xhcnRlIGlra2UgbGFnZSBoZWFkaW5nLXBhZCIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxODIKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHRoaXNzdGF0ZSBwYWQiCittc2dzdHIgImtsYXJ0ZSBpa2tlIGxhZ2UgdGhpc3N0YXRlLXBhZCIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxODYKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGluZm8gcGFkIgorbXNnc3RyICJrbGFydGUgaWtrZSBsYWdlIGluZm8tcGFkIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE5MQorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgcXVlcnkgd2luZG93IgorbXNnc3RyICJrbGFydGUgaWtrZSBsYWdlIHNww7hycmluZ3N2aW5kdSIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoyNTUKK21zZ2lkICJLZXliaW5kaW5ncyIKK21zZ3N0ciAiVGFzdGV0cnlrayIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzozMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAtLSAlZCUlLCBwcmVzcyAiCittc2dzdHIgIiAgLS0gJWQlJSwgdHJ5a2sgIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjMwNgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBmb3IgbW9yZSIKK21zZ3N0ciAiJXMgZm9yIG1lciIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzozMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgdG8gZ28gYmFjayIKK21zZ3N0ciAiJXMgZm9yIMOlIGfDpSB0aWxiYWtlIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjc4Cittc2dpZCAiW25vdCBib3VuZF0iCittc2dzdHIgIltpa2tlIGF2Z3JlbnNldF0iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiW3VuazogJWRdIgorbXNnc3RyICJbdWtqZW50OiAlZF0iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTM5Cittc2dpZCAiU2Nyb2xsIG9ud2FyZHMgdGhyb3VnaCBoZWxwL2luZm9ybWF0aW9uIgorbXNnc3RyICJHw6UgdmlkZXJlIGdqZW5ub20gaGplbHAvaW5mb3JtYXNqb24iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQwCittc2dpZCAiU2Nyb2xsIGJhY2t3YXJkcyB0aHJvdWdoIGhlbHAvaW5mb3JtYXRpb24iCittc2dzdHIgIkfDpSBiYWtvdmVyIGdqZW5ub20gaGplbHAvaW5mb3JtYXNqb24iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQxCittc2dpZCAiTW92ZSB1cCIKK21zZ3N0ciAiRmx5dHQgb3BwIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0MgorbXNnaWQgIk1vdmUgZG93biIKK21zZ3N0ciAiRmx5dHQgbmVkIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0MworbXNnaWQgIkdvIHRvIHRvcCBvZiBsaXN0IgorbXNnc3RyICJHw6UgdGlsIHRvcHBlbiBhdiBsaXN0YSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDQKK21zZ2lkICJHbyB0byBlbmQgb2YgbGlzdCIKK21zZ3N0ciAiR8OlIHRpbCBzbHV0dGVuIGF2IGxpc3RhIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0NQorbXNnaWQgIlJlcXVlc3QgaGVscCAoY3ljbGUgdGhyb3VnaCBoZWxwIHNjcmVlbnMpIgorbXNnc3RyICJCZSBvbSBoamVscCAoZ8OlIGdqZW5ub20gaGplbHBlc2lkZW5lKSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDYKK21zZ2lkICJDeWNsZSB0aHJvdWdoIGluZm9ybWF0aW9uIGRpc3BsYXlzIgorbXNnc3RyICJHw6UgZ2plbm5vbSBpbmZvcm1hc2pvbnNzaWRlbmUiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ3Cittc2dpZCAiUmVkcmF3IGRpc3BsYXkiCittc2dzdHIgIlRlZ24gc2lkYSBww6Ugbnl0dCIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDgKK21zZ2lkICJTY3JvbGwgb253YXJkcyB0aHJvdWdoIGxpc3QgYnkgMSBsaW5lIgorbXNnc3RyICJHw6UgdmlkZXJlIGdqZW5ub20gbGlzdGEgbWVkIGVuIGxpbmplIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0OQorbXNnaWQgIlNjcm9sbCBiYWNrd2FyZHMgdGhyb3VnaCBsaXN0IGJ5IDEgbGluZSIKK21zZ3N0ciAiR8OlIGJha292ZXIgZ2plbm5vbSBsaXN0YSBtZWQgZW4gbGluamUiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTUwCittc2dpZCAiU2Nyb2xsIG9ud2FyZHMgdGhyb3VnaCBoZWxwL2luZm9ybWF0aW9uIGJ5IDEgbGluZSIKK21zZ3N0ciAiR8OlIHZpZGVyZSBnamVubm9tIGhqZWxwL2luZm9ybWFzam9uIG1lZCBlbiBsaW5qZSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTEKK21zZ2lkICJTY3JvbGwgYmFja3dhcmRzIHRocm91Z2ggaGVscC9pbmZvcm1hdGlvbiBieSAxIGxpbmUiCittc2dzdHIgIkfDpSBiYWtvdmVyIGdqZW5ub20gaGplbHAvaW5mb3JtYXNqb24gbWVkIGVuIGxpbmplIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1MgorbXNnaWQgIlNjcm9sbCBvbndhcmRzIHRocm91Z2ggbGlzdCIKK21zZ3N0ciAiR8OlIHZpZGVyZSBnamVubm9tIGxpc3RhIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1MworbXNnaWQgIlNjcm9sbCBiYWNrd2FyZHMgdGhyb3VnaCBsaXN0IgorbXNnc3RyICJHw6UgYmFrb3ZlciBnamVubm9tIGxpc3RhIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1NgorbXNnaWQgIk1hcmsgcGFja2FnZShzKSBmb3IgaW5zdGFsbGF0aW9uIgorbXNnc3RyICJNZXJrIHBha2tlciBmb3IgaW5zdGFsbGFzam9uIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1NworbXNnaWQgIk1hcmsgcGFja2FnZShzKSBmb3IgZGVpbnN0YWxsYXRpb24iCittc2dzdHIgIk1lcmsgcGFra2VyIGZvciBhdmluc3RhbGxhc2pvbiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTgKK21zZ2lkICJNYXJrIHBhY2thZ2UocykgZm9yIGRlaW5zdGFsbCBhbmQgcHVyZ2UiCittc2dzdHIgIk1lcmsgcGFra2VyIGZvciBhdmluc3RhbGxhc2pvbiBvZyBzbGV0dCIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTkKK21zZ2lkICJNYWtlIGhpZ2hsaWdodCBtb3JlIHNwZWNpZmljIgorbXNnc3RyICJHasO4ciB1dGhldmluZyBtZXIgc3Blc2lmaWtrIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2MAorbXNnaWQgIk1ha2UgaGlnaGxpZ2h0IGxlc3Mgc3BlY2lmaWMiCittc2dzdHIgIkdqw7hyIHV0aGV2aW5nIG1pbmRyZSBzcGVzaWZpa2siCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTYxCittc2dpZCAiU2VhcmNoIGZvciBhIHBhY2thZ2Ugd2hvc2UgbmFtZSBjb250YWlucyBhIHN0cmluZyIKK21zZ3N0ciAiU8O4ayBldHRlciBlbiBwYWtrZSBzb20gaGFyIGV0IG5hdm4gc29tIGlubmVob2xkZXIgZW4gc3RyZW5nIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2MgorbXNnaWQgIlJlcGVhdCBsYXN0IHNlYXJjaC4iCittc2dzdHIgIkdqZW50YSBmb3JyaWdlIHPDuGsuIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2MworbXNnaWQgIlN3YXAgc29ydCBvcmRlciBwcmlvcml0eS9zZWN0aW9uIgorbXNnc3RyICJCeXR0IG9tIHNvcnRlcmluZ3NyZWtrZWbDuGxnZSBwcmlvcml0ZXQvc2Vrc2pvbiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjQKK21zZ2lkICJRdWl0LCBjb25maXJtaW5nLCBhbmQgY2hlY2tpbmcgZGVwZW5kZW5jaWVzIgorbXNnc3RyICJBdnNsdXR0LCBiZWtyZWZ0ZXIsIG9nIHNqZWtrIHBha2tla3JhdiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjUKK21zZ2lkICJRdWl0LCBjb25maXJtaW5nIHdpdGhvdXQgY2hlY2siCittc2dzdHIgIkF2c2x1dHQsIGJla3JlZnRlbHNlIHV0ZW4gc2pla2siCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY2Cittc2dpZCAiUXVpdCwgcmVqZWN0aW5nIGNvbmZsaWN0L2RlcGVuZGVuY3kgc3VnZ2VzdGlvbnMiCittc2dzdHIgIkF2c2x1dHQsIGF2dmlzIGZvcnNsYWcgdGlsIGzDuHNuaW5nIGF2IGtvbmZsaWt0L3Bha2tla3JhdiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjcKK21zZ2lkICJBYm9ydCAtIHF1aXQgd2l0aG91dCBtYWtpbmcgY2hhbmdlcyIKK21zZ3N0ciAiQXZicnl0IC0gYXZzbHV0dCB1dGVuIMOlIGdqw7hyZSBlbmRyaW5nZXIiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY4Cittc2dpZCAiUmV2ZXJ0IHRvIG9sZCBzdGF0ZSBmb3IgYWxsIHBhY2thZ2VzIgorbXNnc3RyICJHw6UgdGlsYmFrZSB0aWwgZ2FtbWVsIHRpbHN0YW5kIGZvciBhbGxlIHBha2tlciIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjkKK21zZ2lkICJSZXZlcnQgdG8gc3VnZ2VzdGVkIHN0YXRlIGZvciBhbGwgcGFja2FnZXMiCittc2dzdHIgIkfDpSB0aWxiYWtlIHRpbCBmb3Jlc2zDpXR0IHRpbHN0YW5kIGZvciBhbGxlIHBha2tlciIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNzAKK21zZ2lkICJSZXZlcnQgdG8gZGlyZWN0bHkgcmVxdWVzdGVkIHN0YXRlIGZvciBhbGwgcGFja2FnZXMiCittc2dzdHIgIkfDpSB0aWxiYWtlIHRpbCBkaXJla3RlIGV0dGVyc3B1cnQgdGlsc3RhbmQgZm9yIGFsbGUgcGFra2VyIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE3MQorbXNnaWQgIlJldmVydCB0byBjdXJyZW50bHkgaW5zdGFsbGVkIHN0YXRlIGZvciBhbGwgcGFja2FnZXMiCittc2dzdHIgIkfDpSB0aWxiYWtlIHRpbCBuw6V2w6ZyZW5kZSBpbnN0YWxsZXJ0IHRpbHN0YW5kIGZvciBhbGxlIHBha2tlciIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNzQKK21zZ2lkICJTZWxlY3QgY3VycmVudGx5LWhpZ2hsaWdodGVkIGFjY2VzcyBtZXRob2QiCittc2dzdHIgIlZlbGcgZGVuIHV0aGV2ZWRlIHRpbGdhbmdzbWV0b2RlbiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNzUKK21zZ2lkICJRdWl0IHdpdGhvdXQgY2hhbmdpbmcgc2VsZWN0ZWQgYWNjZXNzIG1ldGhvZCIKK21zZ3N0ciAiQXZzbHV0dCB1dGVuIMOlIGVuZHJlIGRlbiB2YWxndGUgdGlsZ2FuZ3NtZXRvZGVuIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjI5Cittc2dpZCAiS2V5c3Ryb2tlcyIKK21zZ3N0ciAiVGFzdGVyIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjI5Cittc2dpZCAiIgorIk1vdGlvbiBrZXlzOiBOZXh0L1ByZXZpb3VzLCBUb3AvRW5kLCBVcC9Eb3duLCBCYWNrd2FyZHMvRm9yd2FyZHM6XG4iCisiICBqLCBEb3duLWFycm93ICAgICAgICAgaywgVXAtYXJyb3cgICAgICAgICAgICAgbW92ZSBoaWdobGlnaHRcbiIKKyIgIE4sIFBhZ2UtZG93biwgU3BhY2UgICBQLCBQYWdlLXVwLCBCYWNrc3BhY2UgICBzY3JvbGwgbGlzdCBieSAxIHBhZ2VcbiIKKyIgIF5uICAgICAgICAgICAgICAgICAgICBecCAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgbGlzdCBieSAxIGxpbmVcbiIKKyIgIHQsIEhvbWUgICAgICAgICAgICAgICBlLCBFbmQgICAgICAgICAgICAgICAgICBqdW1wIHRvIHRvcC9lbmQgb2YgbGlzdFxuIgorIiAgdSAgICAgICAgICAgICAgICAgICAgIGQgICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIGJ5IDEgcGFnZVxuIgorIiAgXnUgICAgICAgICAgICAgICAgICAgIF5kICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIGJ5IDEgbGluZVxuIgorIiAgQiwgTGVmdC1hcnJvdyAgICAgICAgIEYsIFJpZ2h0LWFycm93ICAgICAgICAgIHBhbiBkaXNwbGF5IGJ5IDEvMyBzY3JlZW5cbiIKKyIgIF5iICAgICAgICAgICAgICAgICAgICBeZiAgICAgICAgICAgICAgICAgICAgICBwYW4gZGlzcGxheSBieSAxIGNoYXJhY3RlclxuIgorIlxuIgorIk1hcmsgcGFja2FnZXMgZm9yIGxhdGVyIHByb2Nlc3Npbmc6XG4iCisiICssIEluc2VydCAgaW5zdGFsbCBvciB1cGdyYWRlICAgICAgPSwgSCAgaG9sZCBpbiBwcmVzZW50IHN0YXRlXG4iCisiIC0sIERlbGV0ZSAgcmVtb3ZlICAgICAgICAgICAgICAgICAgOiwgRyAgdW5ob2xkOiB1cGdyYWRlIG9yIGxlYXZlICIKKyJ1bmluc3RhbGxlZFxuIgorIiBfICAgICAgICAgIHJlbW92ZSAmIHB1cmdlIGNvbmZpZ1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1pc2NlbGxhbmVvdXM6XG4iCisiUXVpdCwgZXhpdCwgb3ZlcndyaXRlIChub3RlIGNhcGl0YWxzISk6ICAgICAgID8sIEYxIHJlcXVlc3QgaGVscCAoYWxzbyAiCisiSGVscClcbiIKKyIgUmV0dXJuICBDb25maXJtLCBxdWl0IChjaGVjayBkZXBlbmRlbmNpZXMpICAgaSwgSSAgdG9nZ2xlL2N5Y2xlIGluZm8gIgorImRpc3BsYXlzXG4iCisiICAgUSAgICAgQ29uZmlybSwgcXVpdCAob3ZlcnJpZGUgZGVwLnMpICAgICAgIG8sIE8gIGN5Y2xlIHRocm91Z2ggc29ydCAiCisib3B0aW9uc1xuIgorIiBYLCBFc2MgIGVYaXQsIGFiYW5kb25pbmcgYW55IGNoYW5nZXMgbWFkZSAgICB2LCBWICBjaGFuZ2Ugc3RhdHVzIGRpc3BsYXkgIgorIm9wdHNcbiIKKyIgICBSICAgICBSZXZlcnQgdG8gc3RhdGUgYmVmb3JlIHRoaXMgbGlzdCAgICAgIF5sICAgcmVkcmF3IGRpc3BsYXlcbiIKKyIgICBVICAgICBzZXQgYWxsIHRvIHNVZ2dlc3RlZCBzdGF0ZSAgICAgICAgICAgICAvICAgc2VhcmNoIChSZXR1cm4gdG8gIgorImNhbmNlbClcbiIKKyIgICBEICAgICBzZXQgYWxsIHRvIERpcmVjdGx5IHJlcXVlc3RlZCBzdGF0ZSAgbiwgXFwgIHJlcGVhdCBsYXN0IHNlYXJjaFxuIgorbXNnc3RyICIiCisiRmx5dHRldGFzdGVyOiBOZXN0ZS9Gb3JyaWdlLCBUb3BwL1NsdXR0LCBPcHAvTmVkLCBGcmFtL1RpbGJha2U6XG4iCisiICBqLCBQaWwgbmVkICAgICAgICAgICAgICBrLCBQaWwgb3BwICAgICAgICAgICAgIGZseXR0IG1hcmtlcmluZ2VuXG4iCisiICBOLCBQYWdlIERvd24sIE1lbGxvbXJvbSBQLCBQaWwgb3BwLCBSZXR0ZXRhc3QgIGJsYSBsaXN0YSAxIHNpZGVcbiIKKyIgIF5uICAgICAgICAgICAgICAgICAgICAgIF5wICAgICAgICAgICAgICAgICAgICAgYmxhIGxpc3RhIDEgbGluamVcbiIKKyIgIHQsIEhvbWUgICAgICAgICAgICAgICAgIGUsIEVuZCAgICAgICAgICAgICAgICAgaG9wcCDDuHZlcnN0L25lZGVyc3QgaSAiCisibGlzdGFcbiIKKyIgIHUgICAgICAgICAgICAgICAgICAgICAgIGQgICAgICAgICAgICAgICAgICAgICAgYmxhIGluZm8gMSBzaWRlXG4iCisiICBedSAgICAgICAgICAgICAgICAgICAgICBeZCAgICAgICAgICAgICAgICAgICAgIGJsYSBpbmZvIDEgbGluamVcbiIKKyIgIEIsIFBpbCB2ZW5zdHJlICAgICAgICAgIEYsIFBpbCBow7h5cmUgICAgICAgICAgIHNpZGV2ZWlzIDEvMyBza2plcm1cbiIKKyIgIF5iICAgICAgICAgICAgICAgICAgICAgIF5mICAgICAgICAgICAgICAgICAgICAgc2lkZXZlaXMgMSB0ZWduXG4iCisiXG4iCisiTWFya2VyIHBha2tlciBmb3IgYmVoYW5kbGluZyBzZW5lcmU6XG4iCisiICssIEluc2VydCAgaW5zdGFsbGVyIGVsbGVyIG9wcGdyYWRlciAgPSwgSCAgaG9sZCBpIG7DpXbDpnJlbmRlIHN0YXR1c1xuIgorIiAtLCBEZWxldGUgIGZqZXJuICAgICAgICAgICAgICAgICAgICAgIDosIEcgIGZyaWdqw7hyOiBvcHBncmFkZXIgZWxsZXIgbGEgIgorInbDpnJlIGlra2UtaW5zdGFsbGVydFxuIgorIiBfICAgICAgICAgIGZqZXJuIG9nIHJlbnMgdXQgb3Bwc2V0dGV0XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRGl2ZXJzZTpcbiIKKyJBdnNsdXR0LCBhdmJyeXQsIHNrcml2IG92ZXIgKGh1c2sgc3RvcmUgYm9rc3RhdmVyKTogPywgRjEgaGplbHAgKG9nc8OlICIKKyJIamVscClcbiIKKyIgUmV0dXJuICBCZWtyZWZ0LCBhdnNsdXR0IChzamVrayBwYWtrZWtyYXYpICAgICAgIGksIEkgIGJ5dHQgaW5mb2ZlbHRcbiIKKyIgICBRICAgICBCZWtyZWZ0LCBhdnNsdXR0IChvdmVyc3R5ciBwYWtrZWtyYXYpICAgICAgbywgTyAgYnl0dCBzb3J0ZXJpbmdcbiIKKyIgWCwgRXNjYXBlICBBdnNsdXR0IHV0ZW4gw6UgZ2plbm5vbWbDuHJlIGVuZHJpbmdlciAgICB2LCBWICAiCisiZW5kcmVzdGF0dXN2aXNuaW5nXG4iCisiICAgUiAgICAgdGlsYmFrZSB0aWwgc3RhdHVzIGbDuHIgZGVubmUgbGlzdGEgICAgICAgICAgXmwgIHRlZ24gc2tqZXJtZW4gIgorIm9taWdqZW5cbiIKKyIgICBVICAgICBzZXR0IGFsbGUgdGlsIGZvcmVzbMOldHQgc3RhdHVzICAgICAgICAgICAgICAgLyAgc8O4ayAoUmV0dXJuICIKKyJhdmJyeXQpXG4iCisiICAgRCAgICAgc2V0dCBhbGxlIHRpbCBkaXJla3RlIGV0dGVyc3B1cnQgc3RhdHVzICAgIG4sIFxcIGdqZW50YSBzaXN0ZSBzw7hrXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6NTUKK21zZ2lkICJJbnRyb2R1Y3Rpb24gdG8gcGFja2FnZSBzZWxlY3Rpb25zIgorbXNnc3RyICJJbnRyb2R1a3Nqb24gdGlsIHBha2tldmFsZyIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo1NQorbXNnaWQgIiIKKyJXZWxjb21lIHRvIGRzZWxlY3QncyBtYWluIHBhY2thZ2UgbGlzdGluZy5cbiIKKyJcbiIKKyJZb3Ugd2lsbCBiZSBwcmVzZW50ZWQgd2l0aCBhIGxpc3Qgb2YgcGFja2FnZXMgd2hpY2ggYXJlIGluc3RhbGxlZCBvciAiCisiYXZhaWxhYmxlXG4iCisiZm9yIGluc3RhbGxhdGlvbi4gIFlvdSBjYW4gbmF2aWdhdGUgYXJvdW5kIHRoZSBsaXN0IHVzaW5nIHRoZSBjdXJzb3Iga2V5cyxcbiIKKyJtYXJrIHBhY2thZ2VzIGZvciBpbnN0YWxsYXRpb24gKHVzaW5nIGArJykgb3IgZGVpbnN0YWxsYXRpb24gKHVzaW5nIGAtJykuXG4iCisiUGFja2FnZXMgY2FuIGJlIG1hcmtlZCBlaXRoZXIgc2luZ2x5IG9yIGluIGdyb3VwczsgaW5pdGlhbGx5IHlvdSB3aWxsIHNlZSAiCisidGhhdFxuIgorInRoZSBsaW5lIGBBbGwgcGFja2FnZXMnIGlzIHNlbGVjdGVkLiAgYCsnLCBgLScgYW5kIHNvIG9uIHdpbGwgYWZmZWN0IGFsbCAiCisidGhlXG4iCisicGFja2FnZXMgZGVzY3JpYmVkIGJ5IHRoZSBoaWdobGlnaHRlZCBsaW5lLlxuIgorIlxuIgorIlNvbWUgb2YgeW91ciBjaG9pY2VzIHdpbGwgY2F1c2UgY29uZmxpY3RzIG9yIGRlcGVuZGVuY3kgcHJvYmxlbXM7IHlvdSB3aWxsICIKKyJiZVxuIgorImdpdmVuIGEgc3ViLWxpc3Qgb2YgdGhlIHJlbGV2YW50IHBhY2thZ2VzLCBzbyB0aGF0IHlvdSBjYW4gc29sdmUgdGhlICIKKyJwcm9ibGVtcy5cbiIKKyJcbiIKKyJZb3Ugc2hvdWxkIHJlYWQgdGhlIGxpc3Qgb2Yga2V5cyBhbmQgdGhlIGV4cGxhbmF0aW9ucyBvZiB0aGUgZGlzcGxheS5cbiIKKyJNdWNoIG9uLWxpbmUgaGVscCBpcyBhdmFpbGFibGUsIHBsZWFzZSBtYWtlIHVzZSBvZiBpdCAtIHByZXNzIGA/JyBhdFxuIgorImFueSB0aW1lIGZvciBoZWxwLlxuIgorIlxuIgorIldoZW4geW91IGhhdmUgZmluaXNoZWQgc2VsZWN0aW5nIHBhY2thZ2VzLCBwcmVzcyA8ZW50ZXI+IHRvIGNvbmZpcm0gIgorImNoYW5nZXMsXG4iCisib3IgYFgnIHRvIHF1aXQgd2l0aG91dCBzYXZpbmcgY2hhbmdlcy4gQSBmaW5hbCBjaGVjayBvbiBjb25mbGljdHMgYW5kXG4iCisiZGVwZW5kZW5jaWVzIHdpbGwgYmUgZG9uZSAtIGhlcmUgdG9vIHlvdSBtYXkgc2VlIGEgc3VibGlzdC5cbiIKKyJcbiIKKyJQcmVzcyA8c3BhY2U+IHRvIGxlYXZlIGhlbHAgYW5kIGVudGVyIHRoZSBsaXN0IG5vdy5cbiIKK21zZ3N0ciAiIgorIlZlbGtvbW1lbiB0aWwgaG92ZWRwYWtrZWxpc3RhIGkgZHNlbGVjdC5cbiIKKyJcbiIKKyJEdSB2aWwgZsOlIHNlIGVuIGxpc3RlIG92ZXIgcGFra2VyIHNvbSBlciBpbnN0YWxsZXJ0ZSBlbGxlciBzb20ga2FuIFxuIgorImluc3RhbGxlcmVzdCAuIER1IGthbiBibGEgZ2plbm5vbSBsaXN0YSB2ZWQgaGplbHAgYXYgcGlsdGFzdGVuZS4gTWVkICIKKyJ0YXN0ZW5lIFxuIgorIsKrK8K7IG9nIMKrLcK7IGthbiBkdSB2ZWxnZSDDpSBpbnN0YWxsZXJlIGVsbGVyIGZqZXJuZSBwYWtrZXIgZWxsZXIgZ3J1cHBlciBhdiBcbiIKKyJwYWtrZXIuIEkgdXRnYW5nc3B1bmt0ZXIgZXIgbGluamEgwqtBbGxlIHBha2tlcsK7IHZhbGd0LCBzbGlrIGF0IGRlICIKKyJoYW5kbGluZ2VuZSBcbiIKKyJkdSBnasO4ciBww6V2aXJrZXIgYWxsZSBwYWtrZW5lIHNvbSBow7hyZXIgdGlsIGRlbm5lIGthdGVnb3JpZW4uXG4iCisiXG4iCisiTm9lIGF2IGRldCBkdSB2ZWxnZXIga2FuIGbDuHJlIHRpbCBrb25mbGlrdGVyIGVsbGVyIHByb2JsZW1lciBtZWQgcGFra2VrcmF2LiAiCisiSSBzw6UgXG4iCisiZmFsbCB2aWwgZHUgZsOlIGVuIGVnZW4gbGlzdGUgbWVkIGRlIHBha2tlbmUgZGV0dGUgZ2plbGRlciwgc2xpayBhdCBkdSBrYW4gIgorImzDuHNlIFxuIgorInByb2JsZW1lbmUuXG4iCisiXG4iCisiRHUgYsO4ciBsZXNlIG92ZXJzaWt0ZW4gb3ZlciB0YXN0ZXIgb2cgZm9ya2xhcmluZ2VuZSB0aWwgc2tqZXJtYmlsZGV0LiBEZXQgXG4iCisiZmlubmVzIGVuIGdvZCBkZWwgc2tqZXJtaGplbHAgc29tIGR1IGthbiB2aXNlIHZlZCDDpSB0cnlra2UgcMOlIMKrP8K7LlxuIgorIlxuIgorIk7DpXIgZHUgZXIgZmVyZGlnIG1lZCDDpSB2ZWxnZSBwYWtrZXIsIHRyeWtrZXIgZHUgPGVudGVyPiBkZXJzb20gZHUgdmlsICIKKyJiZWtyZWZ0ZSBcbiIKKyJlbmRyaW5nZW5lIGVsbGVyIMKrWMK7IG9tIGR1IHZpbCBhdnNsdXR0ZSB1dGVuIGVuZHJpbmdlci4gRW4gc2lzdGUga29udHJvbGwgIgorImF2IFxuIgorImtvbmZsaWt0ZXIgb2cgcGFra2VrcmF2IGJsaXIgdXRmw7hydC4gSGVyIHZpbCBkdSBvZ3PDpSBmw6Ugb3BwIGVuIGVnZW4gbGlzdGUgIgorInZlZCBcbiIKKyJwcm9ibGVtZXIuXG4iCisiXG4iCisiVHJ5a2sgPG1lbGxvbXJvbT4gZm9yIMOlIGF2c2x1dHRlIGhqZWxwIG9nIGfDpSB0aWwgbGlzdGEgbsOlLlxuIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjgwCittc2dpZCAiSW50cm9kdWN0aW9uIHRvIHJlYWQtb25seSBwYWNrYWdlIGxpc3QgYnJvd3NlciIKK21zZ3N0ciAiSW50cm9kdWtzam9uIHRpbCBza3JpdmViZXNreXR0ZXQgcGFra2VsaXN0ZSIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo4MAorbXNnaWQgIiIKKyJXZWxjb21lIHRvIGRzZWxlY3QncyBtYWluIHBhY2thZ2UgbGlzdGluZy5cbiIKKyJcbiIKKyJZb3Ugd2lsbCBiZSBwcmVzZW50ZWQgd2l0aCBhIGxpc3Qgb2YgcGFja2FnZXMgd2hpY2ggYXJlIGluc3RhbGxlZCBvciAiCisiYXZhaWxhYmxlXG4iCisiZm9yIGluc3RhbGxhdGlvbi4gIFNpbmNlIHlvdSBkbyBub3QgaGF2ZSB0aGUgcHJpdmlsZWdlIG5lY2Vzc2FyeSB0byB1cGRhdGVcbiIKKyJwYWNrYWdlIHN0YXRlcywgeW91IGFyZSBpbiBhIHJlYWQtb25seSBtb2RlLiAgWW91IGNhbiBuYXZpZ2F0ZSBhcm91bmQgdGhlXG4iCisibGlzdCB1c2luZyB0aGUgY3Vyc29yIGtleXMgKHBsZWFzZSBzZWUgdGhlIGBLZXlzdHJva2VzJyBoZWxwIHNjcmVlbiksICIKKyJvYnNlcnZlXG4iCisidGhlIHN0YXR1cyBvZiB0aGUgcGFja2FnZXMgYW5kIHJlYWQgaW5mb3JtYXRpb24gYWJvdXQgdGhlbS5cbiIKKyJcbiIKKyJZb3Ugc2hvdWxkIHJlYWQgdGhlIGxpc3Qgb2Yga2V5cyBhbmQgdGhlIGV4cGxhbmF0aW9ucyBvZiB0aGUgZGlzcGxheS5cbiIKKyJNdWNoIG9uLWxpbmUgaGVscCBpcyBhdmFpbGFibGUsIHBsZWFzZSBtYWtlIHVzZSBvZiBpdCAtIHByZXNzIGA/JyBhdFxuIgorImFueSB0aW1lIGZvciBoZWxwLlxuIgorIlxuIgorIldoZW4geW91IGhhdmUgZmluaXNoZWQgYnJvd3NpbmcsIHByZXNzIGBRJyBvciA8ZW50ZXI+IHRvIHF1aXQuXG4iCisiXG4iCisiUHJlc3MgPHNwYWNlPiB0byBsZWF2ZSBoZWxwIGFuZCBlbnRlciB0aGUgbGlzdCBub3cuXG4iCittc2dzdHIgIiIKKyJWZWxrb21tZW4gdGlsIGhvdmVkcGFra2VsaXN0YSBpIGRzZWxlY3QuXG4iCisiXG4iCisiRHUgdmlsIGbDpSBzZSBlbiBsaXN0ZSBvdmVyIHBha2tlciBzb20gZXIgaW5zdGFsbGVydGUgZWxsZXIgc29tIGthbiBcbiIKKyJpbnN0YWxsZXJlcy4gRm9yZGkgZHUgaWtrZSBoYXIgdGlsbGF0ZWxzZSB0aWwgw6Ugb3BwZGF0ZXJlIFxuIgorInBha2tlc3RhdHVzZXIsIGbDpXIgZHUgaWtrZSBsb3YgdGlsIMOlIGVuZHJhIHBha2tlbGlzdGEuIER1IGthbiBibGEgZ2plbm5vbSBcbiIKKyJsaXN0YSB2ZWQgaGplbHAgYXYgcGlsdGFzdGVuZSAoc2UgaGplbHBlc2tqZXJtZW4gwqtUYXN0ZXRyeWtrwrspLCBzdHVkZXJlIFxuIgorInBha2tlbmVzIHN0YXR1cyBvZyBsZXNlIGluZm9ybWFzam9uIG9tIGRlbS5cbiIKKyJcbiIKKyJEdSBiw7hyIGxlc2Ugb3ZlcnNpa3RlbiBvdmVyIHRhc3RlciBvZyBmb3JrbGFyaW5nZW5lIHRpbCBza2plcm1iaWxkZXQuIERldCBcbiIKKyJmaW5uZXMgZW4gZ29kIGRlbCBza2plcm1oamVscCBzb20gZHUga2FuIHZpc2UgdmVkIMOlIHRyeWtrZSBww6Ugwqs/wrsuXG4iCisiXG4iCisiTsOlciBkdSBlciBmZXJkaWcgbWVkIMOlIHN0dWRlcmUgbGlzdGEsIGthbiBkdSBhdnNsdXR0ZSBtZWQgwqtRwrsgZWxsZXIgIgorIjxlbnRlcj4uXG4iCisiXG4iCisiVHJ5a2sgPG1lbGxvbXJvbT4gZm9yIMOlIGF2c2x1dHRlIGhqZWxwIG9nIGfDpSB0aWwgbGlzdGEgbsOlLlxuIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjk5Cittc2dpZCAiSW50cm9kdWN0aW9uIHRvIGNvbmZsaWN0L2RlcGVuZGVuY3kgcmVzb2x1dGlvbiBzdWItbGlzdCIKK21zZ3N0ciAiSW50cm9kdWtzam9uIHRpbCBlZ2VuIGxpc3RlIGZvciBsw7hzbmluZyBhdiBrb25mbGlrdCBlbGxlciBwYWtrZWtyYXYiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6OTkKK21zZ2lkICIiCisiRGVwZW5kZW5jeS9jb25mbGljdCByZXNvbHV0aW9uIC0gaW50cm9kdWN0aW9uLlxuIgorIlxuIgorIk9uZSBvciBtb3JlIG9mIHlvdXIgY2hvaWNlcyBoYXZlIHJhaXNlZCBhIGNvbmZsaWN0IG9yIGRlcGVuZGVuY3kgcHJvYmxlbSAtXG4iCisic29tZSBwYWNrYWdlcyBzaG91bGQgb25seSBiZSBpbnN0YWxsZWQgaW4gY29uanVuY3Rpb24gd2l0aCBjZXJ0YWluIG90aGVycywgIgorImFuZFxuIgorInNvbWUgY29tYmluYXRpb25zIG9mIHBhY2thZ2VzIG1heSBub3QgYmUgaW5zdGFsbGVkIHRvZ2V0aGVyLlxuIgorIlxuIgorIllvdSB3aWxsIHNlZSBhIHN1Yi1saXN0IGNvbnRhaW5pbmcgdGhlIHBhY2thZ2VzIGludm9sdmVkLiAgVGhlIGJvdHRvbSBoYWxmICIKKyJvZlxuIgorInRoZSBkaXNwbGF5IHNob3dzIHJlbGV2YW50IGNvbmZsaWN0cyBhbmQgZGVwZW5kZW5jaWVzOyB1c2UgYGknIHRvIGN5Y2xlICIKKyJiZXR3ZWVuXG4iCisidGhhdCwgdGhlIHBhY2thZ2UgZGVzY3JpcHRpb25zIGFuZCB0aGUgaW50ZXJuYWwgY29udHJvbCBpbmZvcm1hdGlvbi5cbiIKKyJcbiIKKyJBIHNldCBvZiBgc3VnZ2VzdGVkJyBwYWNrYWdlcyBoYXMgYmVlbiBjYWxjdWxhdGVkLCBhbmQgdGhlIGluaXRpYWwgbWFya2luZ3MgIgorImluXG4iCisidGhpcyBzdWItbGlzdCBoYXZlIGJlZW4gc2V0IHRvIG1hdGNoIHRob3NlLCBzbyB5b3UgY2FuIGp1c3QgaGl0IFJldHVybiB0b1xuIgorImFjY2VwdCB0aGUgc3VnZ2VzdGlvbnMgaWYgeW91IHdpc2guICBZb3UgbWF5IGFib3J0IHRoZSBjaGFuZ2Uocykgd2hpY2ggIgorImNhdXNlZFxuIgorInRoZSBwcm9ibGVtKHMpLCBhbmQgZ28gYmFjayB0byB0aGUgbWFpbiBsaXN0LCBieSBwcmVzc2luZyBjYXBpdGFsIGBYJy5cbiIKKyJcbiIKKyJZb3UgY2FuIGFsc28gbW92ZSBhcm91bmQgdGhlIGxpc3QgYW5kIGNoYW5nZSB0aGUgbWFya2luZ3Mgc28gdGhhdCB0aGV5IGFyZSAiCisibW9yZVxuIgorImxpa2Ugd2hhdCB5b3Ugd2FudCwgYW5kIHlvdSBjYW4gYHJlamVjdCcgbXkgc3VnZ2VzdGlvbnMgYnkgdXNpbmcgdGhlICIKKyJjYXBpdGFsXG4iCisiYEQnIG9yIGBSJyBrZXlzIChzZWUgdGhlIGtleWJpbmRpbmdzIGhlbHAgc2NyZWVuKS4gIFlvdSBjYW4gdXNlIGNhcGl0YWwgYFEnICIKKyJ0b1xuIgorImZvcmNlIG1lIHRvIGFjY2VwdCB0aGUgc2l0dWF0aW9uIGN1cnJlbnRseSBkaXNwbGF5ZWQsIGluIGNhc2UgeW91IHdhbnQgdG9cbiIKKyJvdmVycmlkZSBhIHJlY29tbWVuZGF0aW9uIG9yIHRoaW5rIHRoYXQgdGhlIHByb2dyYW0gaXMgbWlzdGFrZW4uXG4iCisiXG4iCisiUHJlc3MgPHNwYWNlPiB0byBsZWF2ZSBoZWxwIGFuZCBlbnRlciB0aGUgc3ViLWxpc3Q7IHJlbWVtYmVyOiBwcmVzcyBgPycgZm9yICIKKyJoZWxwLlxuIgorbXNnc3RyICIiCisiTMO4c25pbmcgYXYgcGFra2VrcmF2IG9nIGtvbmZsaWt0ZXIgLSBpbnRyb2R1a3Nqb24uXG4iCisiXG4iCisiRXR0IGVsbGVyIGZsZXJlIGF2IGRlIHZhbGdlbmUgZHUgaGFyIGdqb3J0IGbDuHJlciB0aWwgcHJvYmxlbWVyIG1lZCAiCisia29uZmxpa3RlciBcbiIKKyJlbGxlciBwYWtrZWtyYXYuIE5vZW4gYXYgcGFra2VuZSBtw6UgaW5zdGFsbGVyZXMgc2FtbWVuIG1lZCB2aXNzZSBhbmRyZSwgb2cgXG4iCisibm9lbiBrb21iaW5hc2pvbmVyIGF2IHBha2tlciBnw6VyIGlra2Ugc2FtbWVuLlxuIgorIlxuIgorIkR1IHZpbCBmw6Ugc2UgZW4gZWdlbiBsaXN0ZSBtZWQgYmFyZSBkZSBwYWtrZW5lIGRldHRlIGdqZWxkZXIuIE5lZGVyc3QgcMOlIFxuIgorInNramVybWVuIGVyIGtvbmZsaWt0ZXIgb2cgcGFra2VrcmF2IHZpc3QuIE1lZCDCq2nCuyBrYW4gZHUgYnl0dGUgbWVsbG9tICIKKyJkZXR0ZSBcbiIKKyJmZWx0ZXQgb2cgZmVsdGVuZSBmb3IgcGFra2ViZXNrcml2ZWxzZXIgb2cgaW50ZXJuIGtvbnRyb2xsaW5mb3JtYXNqb24uXG4iCisiXG4iCisiRXQgc2V0dCBtZWQgwqtmb3Jlc2zDpXR0ZcK7IHBha2tlciBlciBnam9ydCBrbGFydCwgb2cgcGFra2VuZSBpIGxpc3RhIGVyIFxuIgorIm1hcmtlcnRlIGkgc2Ftc3ZhciBtZWQgZm9yc2xhZ2V0LiBEdSBrYW4gdHJ5a2tlIDxlbnRlcj4gbWVkIGVuIGdvbmcgZm9yIMOlIFxuIgorImdvZHRhIGZvcnNsYWdldC4gRHUga2FuIGF2YnJ5dGUgZW5kcmluZ2VuZSBzb20gZm9yw6Vyc2FrZXQgcHJvYmxlbWV0IG9nIGfDpSBcbiIKKyJ0aWxiYWtlIHRpbCBob3ZlZGxpc3RhIHZlZCDDpSB0cnlra2Ugc3RvciDCq1jCuy5cbiIKKyJcbiIKKyJEdSBrYW4gb2dzw6UgYmxhIGdqZW5ub20gbGlzdGEgb2cgZW5kcmUgcMOlIG1hcmtlcmluZ2VuZSBzbGlrIGR1IHZpbCBoYSBkZW0sICIKKyJvZyBcbiIKKyJkdSBrYW4gZm9ya2FzdGUgZm9yc2xhZ2V0IHZlZCDDpSB0cnlra2Ugc3RvciDCq0TCuyBlbGxlciDCq1LCuy4gKFNlIFxuIgorImhqZWxwZXNramVybWVuIGZvciB0YXN0ZXRyeWtrLikgTWVkIHN0b3IgwqtRwrsga2FuIGR1IHR2aW5nZSBnamVubm9tIGV0ICIKKyJ2YWxnLCBcbiIKKyJkZXJzb20gZHUgdmlsIG92ZXJzdHlyZSByw6VkZW5lIGVsbGVyIHRyb3IgYXQgcHJvZ3JhbW1ldCB0YXIgZmVpbC5cbiIKKyJcbiIKKyJUcnlrayA8bWVsbG9tcm9tPiBmb3Igw6UgYXZzbHV0dGUgaGplbHAgb2cgZ8OlIHRpbCBsaXN0YS4gSHVzayBhdCBkdSBrYW4gZsOlICIKKyJoamVscCBcbiIKKyJtZWQgwqs/wrsuXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTI1Cittc2dpZCAiRGlzcGxheSwgcGFydCAxOiBwYWNrYWdlIGxpc3RpbmcgYW5kIHN0YXR1cyBjaGFycyIKK21zZ3N0ciAiU2tqZXJtYmlsZGUsIGRlbCAxOiBQYWtrZWxpc3RlIG9nIHN0YXR1c3RlZ24iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTI1Cittc2dpZCAiIgorIlRoZSB0b3AgaGFsZiBvZiB0aGUgc2NyZWVuIHNob3dzIGEgbGlzdCBvZiBwYWNrYWdlcy4gIEZvciBlYWNoIHBhY2thZ2UgeW91ICIKKyJzZWVcbiIKKyJmb3VyIGNvbHVtbnMgZm9yIGl0cyBjdXJyZW50IHN0YXR1cyBvbiB0aGUgc3lzdGVtIGFuZCBtYXJrLiAgSW4gdGVyc2UgbW9kZSAiCisiKHVzZVxuIgorImB2JyB0byB0b2dnbGUgdmVyYm9zZSBkaXNwbGF5KSB0aGVzZSBhcmUgc2luZ2xlIGNoYXJhY3RlcnMsIGZyb20gbGVmdCB0byAiCisicmlnaHQ6XG4iCisiXG4iCisiIEVycm9yIGZsYWc6IFNwYWNlIC0gbm8gZXJyb3IgKGJ1dCBwYWNrYWdlIG1heSBiZSBpbiBicm9rZW4gc3RhdGUgLSBzZWUgIgorImJlbG93KVxuIgorIiAgICAgICAgICAgICAgYFInICAtIHNlcmlvdXMgZXJyb3IgZHVyaW5nIGluc3RhbGxhdGlvbiwgbmVlZHMgIgorInJlaW5zdGFsbGF0aW9uO1xuIgorIiBJbnN0YWxsZWQgc3RhdGU6ICAgICBTcGFjZSAgICAtIG5vdCBpbnN0YWxsZWQ7XG4iCisiICAgICAgICAgICAgICAgICAgICAgICBgKicgICAgIC0gaW5zdGFsbGVkO1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgYC0nICAgICAtIG5vdCBpbnN0YWxsZWQgYnV0IGNvbmZpZyBmaWxlcyByZW1haW47XG4iCisiICAgcGFja2FnZXMgaW4gdGhlc2UgeyBgVScgICAgIC0gdW5wYWNrZWQgYnV0IG5vdCB5ZXQgY29uZmlndXJlZDtcbiIKKyIgICBzdGF0ZXMgYXJlIG5vdCAgICB7IGBDJyAgICAgLSBoYWxmLWNvbmZpZ3VyZWQgKGFuIGVycm9yIGhhcHBlbmVkKTtcbiIKKyIgICAocXVpdGUpIHByb3Blcmx5ICB7IGBJJyAgICAgLSBoYWxmLWluc3RhbGxlZCAoYW4gZXJyb3IgaGFwcGVuZWQpO1xuIgorIiAgIGluc3RhbGxlZCAgICAgICAgIHsgYFcnLGB0JyAtIHRyaWdnZXJzIGFyZSBhd2FpdGVkIHJlc3AuIHBlbmRpbmcuXG4iCisiIE9sZCBtYXJrOiB3aGF0IHdhcyByZXF1ZXN0ZWQgZm9yIHRoaXMgcGFja2FnZSBiZWZvcmUgcHJlc2VudGluZyB0aGlzIGxpc3Q7XG4iCisiIE1hcms6IHdoYXQgaXMgcmVxdWVzdGVkIGZvciB0aGlzIHBhY2thZ2U6XG4iCisiICBgKic6IG1hcmtlZCBmb3IgaW5zdGFsbGF0aW9uIG9yIHVwZ3JhZGU7XG4iCisiICBgLSc6IG1hcmtlZCBmb3IgcmVtb3ZhbCwgYnV0IGFueSBjb25maWd1cmF0aW9uIGZpbGVzIHdpbGwgcmVtYWluO1xuIgorIiAgYD0nOiBvbiBob2xkOiBwYWNrYWdlIHdpbGwgbm90IGJlIHByb2Nlc3NlZCBhdCBhbGw7XG4iCisiICBgXyc6IG1hcmtlZCBmb3IgcHVyZ2UgY29tcGxldGVseSAtIGV2ZW4gcmVtb3ZlIGNvbmZpZ3VyYXRpb247XG4iCisiICBgbic6IHBhY2thZ2UgaXMgbmV3IGFuZCBoYXMgeWV0IHRvIGJlIG1hcmtlZCBmb3IgaW5zdGFsbC9yZW1vdmUvJmMuXG4iCisiXG4iCisiQWxzbyBkaXNwbGF5ZWQgYXJlIGVhY2ggcGFja2FnZSdzIFByaW9yaXR5LCBTZWN0aW9uLCBuYW1lLCBpbnN0YWxsZWQgYW5kXG4iCisiYXZhaWxhYmxlIHZlcnNpb24gbnVtYmVycyAoc2hpZnQtViB0byBkaXNwbGF5L2hpZGUpIGFuZCBzdW1tYXJ5ICIKKyJkZXNjcmlwdGlvbi5cbiIKK21zZ3N0ciAiIgorIkRlbiDDuHZlcnN0ZSBoYWx2ZGVsZW4gYXYgc2tqZXJtZW4gdmlzZXIgZWkgbGlzdGUgb3ZlciBwYWtrZW5lLiBGb3IgaHZlciAiCisicGFra2UgXG4iCisiZmlubmVzIGRldCBmaXJlIGtvbG9ubmVyIGZvciBzdGF0dXMgaSBzeXN0ZW1ldC4gSSBrb3J0bW9kdXMgKGJydWsgwqt2wrsgZm9yICIKKyLDpSBcbiIKKyJieXR0ZSB0aWwgZGV0YWxqbW9kdXMpIGVyIGtvbG9ubmVuZSBlbmtlbHR0ZWduIGZyYSB2ZW5zdHJlIHRpbCBow7h5cmU6XG4iCisiXG4iCisiIEZlaWxtZXJrZTogICBNZWxsb21yb20gLSBpbmdlbiBmZWlsIChtZW4gcGFra2VuIGthbiB2w6ZyZSDDuGRlbGFndCwgc2UgIgorIm5lZGVuZm9yKVxuIgorIiAgICAgICAgICAgICAgwqtSwrsgICAgIC0gYWx2b3JsaWcgZmVpbCB2ZWQgaW5zdGFsbGFzam9uLCBtw6UgaW5zdGFsbGVyZXMgb20gIgorImlnamVuXG4iCisiIEluc3RhbGxlcnQgc3RhdHVzOiAgICAgIE1lbGxvbXJvbSAtIGlra2UgaW5zdGFsbGVydFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICDCqyrCuyAgICAgLSBpbnN0YWxsZXJ0XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgIMKrLcK7ICAgICAtIGlra2UgaW5zdGFsbGVydCwgbWVuIG9wcHNldHRzZmlsZW5lICIKKyJsaWdnZXIgaWdqZW5cbiIKKyIgICBwYWtrZXIgaSBkaXNzZSAgICAgIHsgwqtVwrsgICAgIC0gdXRwYWtrZXQsIG1lbiBpa2tlIHNhdHQgb3BwIGVubsOlXG4iCisiICAgdGlsc3RhbmRlbmUgZXIgaWtrZSB7IMKrQ8K7ICAgICAtIGhhbHZ2ZWlzIG9wcHNhdHQgKGVuIGZlaWwgb3Bwc3RvKVxuIgorIiAgIChoZWx0KSBza2lra2VsaWcgICAgeyDCq0nCuyAgICAgLSBoYWx2dmVncyBpbnN0YWxsZXJ0IChlbiBmZWlsIG9wcHN0bylcbiIKKyIgICBpbnN0YWxsZXJ0ICAgICAgICAgIHsgYFcnLGB0JyAgIC0gdXRsw7hzZXJlIGVyIGZvcnZlbnRldC91dGVzdMOlZW5kZS5cbiIKKyIgR2FtbWVsdCBtZXJrZTogZGV0IHNvbSB2YXIgcGxhbmxhZ3QgZm9yIGRlbm5lIHBha2tlbiBmw7hyIGxpc3RhIGJsZSB2aXN0XG4iCisiIE1lcmtlOiBkZXQgc29tIGVyIHBsYW5sYWd0IGZvciBkZW5uZSBwYWtrZW5cbiIKKyIgICDCqyrCuzogbWFya2VydCBmb3IgaW5zdGFsbGFzam9uIGVsbGVyIG9wcGdyYWRlcmluZ1xuIgorIiAgIMKrLcK7OiBtYXJrZXJ0IGZvciBmamVybmluZywgbWVuIG9wcHNldHRzZmlsZW5lIHZpbCBsaWdnZSBpZ2plblxuIgorIiAgIMKrPcK7OiBww6UgdmVudCwgcGFra2VuIHNrYWwgaWtrZSBlbmRyZXMgaSBkZXQgaGVsZSB0YXR0XG4iCisiICAgwqtfwrs6IG1hcmtlcnQgZm9yIGZ1bGxzdGVuZGlnIGZqZXJuaW5nLCBpbmtsdWRlcnQgb3Bwc2V0dGV0XG4iCisiICAgwqtuwrs6IHBha2tlbiBlciBueSBvZyBlciBlbm7DpSBpa2tlIG1hcmtlcnQgZm9yIGluc3RhbGxlcmluZywgZmplcm5pbmcgZS4iCisibC5cbiIKKyJcbiIKKyJGb3IgaHZlciBwYWtrZSBrYW4gZHUgb2dzw6Ugc2UgaW5mb3JtYXNqb24gb20gcHJpb3JpdGV0LCBrYXRlZ29yaSwgbmF2biwgXG4iCisiaW5zdGFsbGVydGUgb2cgdGlsZ2plbmdlbGlnZSB2ZXJzam9uZXIgKHZpcy9za2p1bCBtZWQgU2hpZnQgKyBWKSBvZyBcbiIKKyJlbiBrb3J0IGJlc2tyaXZlbHNlLlxuIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjE1MgorbXNnaWQgIkRpc3BsYXksIHBhcnQgMjogbGlzdCBoaWdobGlnaHQ7IGluZm9ybWF0aW9uIGRpc3BsYXkiCittc2dzdHIgIlNramVybWJpbGRlLCBkZWwgMjogTGlzdGVtYXJrZXJpbmcsIGluZm9ybWFzam9uc3Zpc25pbmciCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTUyCittc2dpZCAiIgorIiogSGlnaGxpZ2h0OiBPbmUgbGluZSBpbiB0aGUgcGFja2FnZSBsaXN0IHdpbGwgYmUgaGlnaGxpZ2h0ZWQuICBJdCAiCisiaW5kaWNhdGVzXG4iCisiICB3aGljaCBwYWNrYWdlKHMpIHdpbGwgYmUgYWZmZWN0ZWQgYnkgcHJlc3NlcyBvZiBgKycsIGAtJyBhbmQgYF8nLlxuIgorIlxuIgorIiogVGhlIGRpdmlkaW5nIGxpbmUgaW4gdGhlIG1pZGRsZSBvZiB0aGUgc2NyZWVuIHNob3dzIGEgYnJpZWYgZXhwbGFuYXRpb24gIgorIm9mXG4iCisiICB0aGUgc3RhdHVzIG9mIHRoZSBjdXJyZW50bHktaGlnaGxpZ2h0ZWQgcGFja2FnZSwgb3IgYSBkZXNjcmlwdGlvbiBvZiAiCisid2hpY2hcbiIKKyIgIGdyb3VwIGlzIGhpZ2hsaWdodGVkIGlmIGEgZ3JvdXAgbGluZSBpcy4gIElmIHlvdSBkb24ndCB1bmRlcnN0YW5kIHRoZVxuIgorIiAgbWVhbmluZyBvZiBzb21lIG9mIHRoZSBzdGF0dXMgY2hhcmFjdGVycyBkaXNwbGF5ZWQsIGdvIHRvIHRoZSByZWxldmFudFxuIgorIiAgcGFja2FnZSBhbmQgbG9vayBhdCB0aGlzIGRpdmlkZXIgbGluZSwgb3IgdXNlIHRoZSBgdicga2V5IGZvciBhIHZlcmJvc2VcbiIKKyIgIGRpc3BsYXkgKHByZXNzIGB2JyBhZ2FpbiB0byBnbyBiYWNrIHRvIHRoZSB0ZXJzZSBkaXNwbGF5KS5cbiIKKyJcbiIKKyIqIFRoZSBib3R0b20gb2YgdGhlIHNjcmVlbiBzaG93cyBtb3JlIGluZm9ybWF0aW9uIGFib3V0IHRoZVxuIgorIiAgY3VycmVudGx5LWhpZ2hsaWdodGVkIHBhY2thZ2UgKGlmIHRoZXJlIGlzIG9ubHkgb25lKS5cbiIKKyJcbiIKKyIgIEl0IGNhbiBzaG93IGFuIGV4dGVuZGVkIGRlc2NyaXB0aW9uIG9mIHRoZSBwYWNrYWdlLCB0aGUgaW50ZXJuYWwgcGFja2FnZVxuIgorIiAgY29udHJvbCBkZXRhaWxzIChlaXRoZXIgZm9yIHRoZSBpbnN0YWxsZWQgb3IgYXZhaWxhYmxlIHZlcnNpb24gb2YgdGhlXG4iCisiICBwYWNrYWdlKSwgb3IgaW5mb3JtYXRpb24gYWJvdXQgY29uZmxpY3RzIGFuZCBkZXBlbmRlbmNpZXMgaW52b2x2aW5nIHRoZVxuIgorIiAgY3VycmVudCBwYWNrYWdlIChpbiBjb25mbGljdC9kZXBlbmRlbmN5IHJlc29sdXRpb24gc3VibGlzdHMpLlxuIgorIlxuIgorIiAgVXNlIHRoZSBgaScga2V5IHRvIGN5Y2xlIHRocm91Z2ggdGhlIGRpc3BsYXlzLCBhbmQgYEknIHRvIGhpZGUgdGhlXG4iCisiICBpbmZvcm1hdGlvbiBkaXNwbGF5IG9yIGV4cGFuZCBpdCB0byB1c2UgYWxtb3N0IGFsbCBvZiB0aGUgc2NyZWVuLlxuIgorbXNnc3RyICIiCisiKiBNYXJrZXJpbmc6IMOJbiBsaW5qZSBpIHBha2tlbGlzdGEgZXIgbWFya2VydC4gRGVubmUgdmlzZXIgaHZpbGtlbiBwYWtrZSBcbiIKKyIgIGVsbGVyIHBha2tlciBzb20gYmxpciBww6V2aXJrZXQgbsOlciBkdSB0cnlra2VyIHDDpSDCqyvCuywgwqstwrsgZWxsZXIgwqtfwrsuXG4iCisiXG4iCisiKiBEZWxlbGluamEgbWlkdCBww6Ugc2tqZXJtZW4gZm9ya2xhcmVyIGtvcnQgc3RhdHVzZW4gdGlsIGRlbiBtYXJrZXJ0ZSBcbiIKKyIgIHBha2tlbi4gRGVyc29tIGVuIGdydXBwZSBlciB2YWxndCwgdmlzZXIgbGluamEgZW4gYmVza3JpdmVsc2UgYXYgIgorImdydXBwZW4uIFxuIgorIiAgRGVyc29tIGR1IGlra2Ugc2tqw7hubmVyIGh2YSBzdGF0dXN0ZWduZW5lIGJldHlyLCBrYW4gZHUgZ8OlIHRpbCBwYWtrZW4gb2cgXG4iCisiICBzZSBodmEgc29tIHN0w6VyIHDDpSBkZW5uZSBkZWxlbGluamEuIER1IGthbiBvZ3PDpSB0cnlra2Ugwqt2wrsgZm9yIFxuIgorIiAgZnlsZGlnZXJlIHZpc25pbmcuIChUcnlrayDCq3bCuyBpZ2plbiBmb3Igw6UgZ8OlIHRpbGJha2UgdGlsIGtvcnR2aXNuaW5nZW4uKVxuIgorIlxuIgorIiogRGV0IG5lZGVyc3RlIGZlbHRldCBww6Ugc2tqZXJtZW4gdmlzZXIgbWVyIGluZm9ybWFzam9uIG9tIGRlbiBwYWtrZW4gc29tICIKKyJlciBcbiIKKyIgIHZhbGd0IChvbSBiYXJlIMOpbiBlciB2YWxndCkuXG4iCisiXG4iCisiICBGZWx0ZXQga2FuIHZpc8OrIGVuIGZ5bGRpZyBiZXNrcml2ZWxzZSBhdiBwYWtrZW4sIGRlIGludGVybmUgXG4iCisiICBrb250cm9sbGRldGFsamVuZSB0aWwgcGFra2VuIChlbnRlbiBmb3IgaW5zdGFsbGVydGUgZWxsZXIgdGlsZ2plbmdlbGlnZSBcbiIKKyIgIHZlcnNqb25lciBhdiBwYWtrZW4pIGVsbGVyIGluZm9ybWFzam9uIG9tIGtvbmZsaWt0ZXIgb2cgcGFra2VrcmF2IHNvbSBcbiIKKyIgIGludm9sdmVyZXIgZGVuIHZhbGd0ZSBwYWtrZW4gKGkgbGlzdGVyIGZvciBsw7hzbmluZyBhdiBrb25mbGlrdGVyLyIKKyJwYWtrZWtyYXYpLlxuIgorIlxuIgorIiAgVHJ5a2sgwqtpwrsgZm9yIMOlIGJ5dHRlIG1lbGxvbSB2aXNuaW5nZW5lLCBvZyDCq0nCuyBmb3Igw6Ugc2tqdWxlICIKKyJpbmZvcm1hc2pvbnNmZWx0ZXQgXG4iCisiZWxsZXIgdXR2aWRlIGRldCBzbGlrIGF0IGRldCBkZWtrZXIgbmVzdGVuIGhlbGUgc2tqZXJtZW4uXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTc2Cittc2dpZCAiSW50cm9kdWN0aW9uIHRvIG1ldGhvZCBzZWxlY3Rpb24gZGlzcGxheSIKK21zZ3N0ciAiSW50cm9kdWtzam9uIHRpbCBtZXRvZGV2YWxnIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjE3NgorbXNnaWQgIiIKKyJkc2VsZWN0IGFuZCBkcGtnIGNhbiBkbyBhdXRvbWF0aWMgaW5zdGFsbGF0aW9uLCBsb2FkaW5nIHRoZSBwYWNrYWdlIGZpbGVzIHRvICIKKyJiZVxuIgorImluc3RhbGxlZCBmcm9tIG9uZSBvZiBhIG51bWJlciBvZiBkaWZmZXJlbnQgcG9zc2libGUgcGxhY2VzLlxuIgorIlxuIgorIlRoaXMgbGlzdCBhbGxvd3MgeW91IHRvIHNlbGVjdCBvbmUgb2YgdGhlc2UgaW5zdGFsbGF0aW9uIG1ldGhvZHMuXG4iCisiXG4iCisiTW92ZSB0aGUgaGlnaGxpZ2h0IHRvIHRoZSBtZXRob2QgeW91IHdpc2ggdG8gdXNlLCBhbmQgaGl0IEVudGVyLiAgWW91IHdpbGwgIgorInRoZW5cbiIKKyJiZSBwcm9tcHRlZCBmb3IgdGhlIGluZm9ybWF0aW9uIHJlcXVpcmVkIHRvIGRvIHRoZSBpbnN0YWxsYXRpb24uXG4iCisiXG4iCisiQXMgeW91IG1vdmUgdGhlIGhpZ2hsaWdodCBhIGRlc2NyaXB0aW9uIG9mIGVhY2ggbWV0aG9kLCB3aGVyZSBhdmFpbGFibGUsIGlzXG4iCisiZGlzcGxheWVkIGluIHRoZSBib3R0b20gaGFsZiBvZiB0aGUgc2NyZWVuLlxuIgorIlxuIgorIklmIHlvdSB3aXNoIHRvIHF1aXQgd2l0aG91dCBjaGFuZ2luZyBhbnl0aGluZyB1c2UgdGhlIGB4JyBrZXkgd2hpbGUgaW4gdGhlICIKKyJsaXN0XG4iCisib2YgaW5zdGFsbGF0aW9uIG1ldGhvZHMuXG4iCisiXG4iCisiQSBmdWxsIGxpc3Qgb2Yga2V5c3Ryb2tlcyBpcyBhdmFpbGFibGUgYnkgcHJlc3NpbmcgYGsnIG5vdywgb3IgZnJvbSB0aGUgIgorImhlbHBcbiIKKyJtZW51IHJlYWNoYWJsZSBieSBwcmVzc2luZyBgPycuXG4iCittc2dzdHIgIiIKKyJkc2VsZWN0IG9nIGRwa2cga2FuIGluc3RhbGxlcmUgYXV0b21hdGlzayB2ZWQgw6UgaGVudGUgcGFra2VmaWxlbmUgc29tIHNrYWwgXG4iCisiaW5zdGFsbGVyZXMgZnJhIGZsZXJlIHVsaWtlIHN0ZWRlci5cbiIKKyJcbiIKKyJJIGRlbm5lIGxpc3RhIGthbiBkdSB2ZWxnZSBlbiBhdiBkaXNzZSBpbnN0YWxsYXNqb25zbWV0b2RlbmUuXG4iCisiXG4iCisiRmx5dHQgbWFya2VyaW5nZW4gdGlsIG1ldG9kZW4gZHUgdmlsIGJydWtlIG9nIHRyeWtrIHDDpSA8ZW50ZXI+LiBEdSBibGlyIGRhICIKKyJzcHVydCBcbiIKKyJldHRlciBpbmZvcm1hc2pvbmVuIHNvbSB0cmVuZ3MgZm9yIMOlIGluc3RhbGxlcmUuXG4iCisiXG4iCisiTsOlciBkdSBmbHl0dGFyIG1hcmtlcmluZ2VuLCBmw6VyIGR1IHNlIGVuIGJlc2tyaXZlbHNlIGF2IGh2ZXIgbWV0b2RlIG5lZGVyc3QgIgorInDDpSBcbiIKKyJza2plcm1lbiwgZGVyc29tIGRldCBmaW5uZXMgZW4gYmVza3JpdmVsc2UuXG4iCisiXG4iCisiRGVyc29tIGR1IHZpbCBhdnNsdXR0ZSB1dGVuIMOlIGVuZHJlIHDDpSBub2VuLCB0cnlra2VyIGR1IHDDpSDCq3jCuyBtZW5zIGR1IGVyICIKKyJpIFxuIgorImxpc3RhIG92ZXIgaW5zdGFsbGFzam9uc21ldG9kZXIuXG4iCisiXG4iCisiRHUga2FuIHNlIGhlbGUgbGlzdGEgb3ZlciB0YXN0ZXRyeWtrIHZlZCDDpSB0cnlra2UgcMOlIMKra8K7IG7DpSBlbGxlciBmcmEgXG4iCisiaGplbHBlbWVueWVuIHNvbSBkdSBmw6VyIG7DpXIgZHUgdHJ5a2tlciDCqz/Cuy5cbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxOTYKK21zZ2lkICJLZXlzdHJva2VzIGZvciBtZXRob2Qgc2VsZWN0aW9uIgorbXNnc3RyICJUYXN0ZXRyeWtrIGZvciBtZXRvZGV2YWxnIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjE5NgorbXNnaWQgIiIKKyJNb3Rpb24ga2V5czogTmV4dC9QcmV2aW91cywgVG9wL0VuZCwgVXAvRG93biwgQmFja3dhcmRzL0ZvcndhcmRzOlxuIgorIiAgaiwgRG93bi1hcnJvdyAgICAgICAgIGssIFVwLWFycm93ICAgICAgICAgICAgIG1vdmUgaGlnaGxpZ2h0XG4iCisiICBOLCBQYWdlLWRvd24sIFNwYWNlICAgUCwgUGFnZS11cCwgQmFja3NwYWNlICAgc2Nyb2xsIGxpc3QgYnkgMSBwYWdlXG4iCisiICBebiAgICAgICAgICAgICAgICAgICAgXnAgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGxpc3QgYnkgMSBsaW5lXG4iCisiICB0LCBIb21lICAgICAgICAgICAgICAgZSwgRW5kICAgICAgICAgICAgICAgICAganVtcCB0byB0b3AvZW5kIG9mIGxpc3RcbiIKKyIgIHUgICAgICAgICAgICAgICAgICAgICBkICAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyBieSAxIHBhZ2VcbiIKKyIgIF51ICAgICAgICAgICAgICAgICAgICBeZCAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyBieSAxIGxpbmVcbiIKKyIgIEIsIExlZnQtYXJyb3cgICAgICAgICBGLCBSaWdodC1hcnJvdyAgICAgICAgICBwYW4gZGlzcGxheSBieSAxLzMgc2NyZWVuXG4iCisiICBeYiAgICAgICAgICAgICAgICAgICAgXmYgICAgICAgICAgICAgICAgICAgICAgcGFuIGRpc3BsYXkgYnkgMSBjaGFyYWN0ZXJcbiIKKyIoVGhlc2UgYXJlIHRoZSBzYW1lIG1vdGlvbiBrZXlzIGFzIGluIHRoZSBwYWNrYWdlIGxpc3QgZGlzcGxheS4pXG4iCisiXG4iCisiUXVpdDpcbiIKKyIgUmV0dXJuLCBFbnRlciAgICBzZWxlY3QgdGhpcyBtZXRob2QgYW5kIGdvIHRvIGl0cyBjb25maWd1cmF0aW9uIGRpYWxvZ3VlXG4iCisiIHgsIFggICAgICAgICAgICAgZXhpdCB3aXRob3V0IGNoYW5naW5nIG9yIHNldHRpbmcgdXAgdGhlIGluc3RhbGxhdGlvbiAiCisibWV0aG9kXG4iCisiXG4iCisiTWlzY2VsbGFuZW91czpcbiIKKyIgID8sIEhlbHAsIEYxICAgICAgcmVxdWVzdCBoZWxwXG4iCisiIF5sICAgICAgICAgICAgICAgIHJlZHJhdyBkaXNwbGF5XG4iCisiICAvICAgICAgICAgICAgICAgIHNlYXJjaCAoanVzdCByZXR1cm4gdG8gY2FuY2VsKVxuIgorIiAgXFwgICAgICAgICAgICAgICAgcmVwZWF0IGxhc3Qgc2VhcmNoXG4iCittc2dzdHIgIiIKKyJGbHl0dGV0YXN0ZXI6IE5lc3RlL0ZvcnJpZ2UsIFRvcHAvQnVubiwgT3BwL05lZCwgRnJhbS9UaWxiYWtlOlxuIgorIiAgaiwgUGlsIG5lZCAgICAgICAgICAgICAgaywgUGlsIG9wcCAgICAgICAgICAgICBmbHl0dCBtYXJrZXJpbmdlblxuIgorIiAgTiwgUGFnZSBEb3duLCBNZWxsb21yb20gUCwgUGlsIG9wcCwgUmV0dGV0YXN0ICBibGEgbGlzdGEgMSBzaWRlXG4iCisiICBebiAgICAgICAgICAgICAgICAgICAgICBecCAgICAgICAgICAgICAgICAgICAgIGJsYSBsaXN0YSAxIGxpbmplXG4iCisiICB0LCBIb21lICAgICAgICAgICAgICAgICBlLCBFbmQgICAgICAgICAgICAgICAgIGhvcHAgw7h2ZXJzdC9uZWRlcnN0IGkgIgorImxpc3RhXG4iCisiICB1ICAgICAgICAgICAgICAgICAgICAgICBkICAgICAgICAgICAgICAgICAgICAgIGJsYSBpbmZvIDEgc2lkZVxuIgorIiAgXnUgICAgICAgICAgICAgICAgICAgICAgXmQgICAgICAgICAgICAgICAgICAgICBibGEgaW5mbyAxIGxpbmplXG4iCisiICBCLCBQaWwgdmVuc3RyZSAgICAgICAgICBGLCBQaWwgaMO4Z3JlICAgICAgICAgICBzaWRlbGVuZ3MgMS8zIHNramVybVxuIgorIiAgXmIgICAgICAgICAgICAgICAgICAgICAgXmYgICAgICAgICAgICAgICAgICAgICBzaWRlbGVuZ3MgMSB0ZWduXG4iCisiKERpc3NlIGZseXR0ZXRhc3RlbmUgZXIgZGUgc2FtbWUgc29tIGkgcGFra2VsaXN0YS4pXG4iCisiXG4iCisiQXZzbHV0dDpcbiIKKyIgUmV0dXJuLCBFbnRlciAgICB2ZWxnIGRlbm5lIG1ldG9kZW4gb2cgZ8OlIHRpbCBvcHBzZXR0c2RpYWxvZ2VuXG4iCisiIHgsIFggICAgICAgICAgICAgYXZicnl0IHV0ZW4gw6UgZW5kcmUgZWxsZXIgc2V0dGUgb3BwIGluc3RhbGxhc2pvbmVuXG4iCisiXG4iCisiRGl2ZXJzZTpcbiIKKyIgID8sIEhqZWxwLCBGMSAgICAgaGplbHBcbiIKKyIgXmwgICAgICAgICAgICAgICAgdGVnbiBza2plcm1iaWxkZXQgcMOlIG55dHRcbiIKKyIgIC8gICAgICAgICAgICAgICAgc8O4ayAoYnJ1ayBFbnRlciB0aWwgw6UgYXZicnl0ZSBtZWQgZW4gZ2FuZylcbiIKKyIgIFxcICAgICAgICAgICAgICAgIHNpc3RlIHPDuGsgb20gaWdqZW5cbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjYwCittc2dpZCAiVHlwZSBkc2VsZWN0IC0taGVscCBmb3IgaGVscC4iCittc2dzdHIgIlNrcml2IMKrZHNlbGVjdCAtLWhlbHDCuyBmb3IgaGplbHAuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQzCittc2dpZCAiYSIKK21zZ3N0ciAidCIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0MworbXNnaWQgIltBXWNjZXNzIgorbXNnc3RyICJbVF1pbGdhbmciCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDMKK21zZ2lkICJDaG9vc2UgdGhlIGFjY2VzcyBtZXRob2QgdG8gdXNlLiIKK21zZ3N0ciAiVmVsZyB0aWxnYW5nc21ldG9kZW4gc29tIHNrYWwgYnJ1a2VzLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NAorbXNnaWQgInUiCittc2dzdHIgIm8iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDQKK21zZ2lkICJbVV1wZGF0ZSIKK21zZ3N0ciAiW09dcHBkYXRlciIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NAorbXNnaWQgIlVwZGF0ZSBsaXN0IG9mIGF2YWlsYWJsZSBwYWNrYWdlcywgaWYgcG9zc2libGUuIgorbXNnc3RyICJPcHBkYXRlciBsaXN0ZSBvdmVyIHRpbGdqZW5nZWxpZ2UgcGFra2VyLCBodmlzIG11bGlnLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NQorbXNnaWQgInMiCittc2dzdHIgInYiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDUKK21zZ2lkICJbU11lbGVjdCIKK21zZ3N0ciAiW1ZdZWxnIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ1Cittc2dpZCAiUmVxdWVzdCB3aGljaCBwYWNrYWdlcyB5b3Ugd2FudCBvbiB5b3VyIHN5c3RlbS4iCittc2dzdHIgIkJlIG9tIGRlIHBha2tlbmUgZHUgdmlsIGhhIHDDpSBzeXN0ZW1ldC4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDYKK21zZ2lkICJpIgorbXNnc3RyICJpIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ2Cittc2dpZCAiW0ldbnN0YWxsIgorbXNnc3RyICJbSV1uc3RhbGxlciIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NgorbXNnaWQgIkluc3RhbGwgYW5kIHVwZ3JhZGUgd2FudGVkIHBhY2thZ2VzLiIKK21zZ3N0ciAiSW5zdGFsbGVyIG9nIG9wcGdyYWRlciBkZSB2YWxndGUgcGFra2VuZS4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDcKK21zZ2lkICJjIgorbXNnc3RyICJzIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ3Cittc2dpZCAiW0Ndb25maWciCittc2dzdHIgIltTXWV0dCBvcHAiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDcKK21zZ2lkICJDb25maWd1cmUgYW55IHBhY2thZ2VzIHRoYXQgYXJlIHVuY29uZmlndXJlZC4iCittc2dzdHIgIlNldHQgb3BwIHBha2tlciBzb20gaWtrZSBlciBzYXR0IG9wcC4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDgKK21zZ2lkICJyIgorbXNnc3RyICJmIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ4Cittc2dpZCAiW1JdZW1vdmUiCittc2dzdHIgIltGXWplcm4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDgKK21zZ2lkICJSZW1vdmUgdW53YW50ZWQgc29mdHdhcmUuIgorbXNnc3RyICJGamVybiB1w7huc2tlZGUgcHJvZ3JhbW1lci4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDkKK21zZ2lkICJxIgorbXNnc3RyICJhIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ5Cittc2dpZCAiW1FddWl0IgorbXNnc3RyICJbQV12c2x1dHQiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDkKK21zZ2lkICJRdWl0IGRzZWxlY3QuIgorbXNnc3RyICJBdnNsdXR0ZXIgZHNlbGVjdC4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNTAKK21zZ2lkICJtZW51IgorbXNnc3RyICJtZW55IgorCisjOiBkc2VsZWN0L21haW4uY2M6MTU1CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiBgJXMnIHBhY2thZ2UgaGFuZGxpbmcgZnJvbnRlbmQgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiRGViaWFuIMKrJXPCuyBicnVrZXJncmVuc2Vzbml0dCBmb3IgcGFra2Vow6VuZHRlcmluZyB2ZXJzam9uICVzLlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTU4Cittc2dpZCAiIgorIkNvcHlyaWdodCAoQykgMTk5NC0xOTk2IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uXG4iCittc2dzdHIgIiIKKyJPcHBoYXZzcmV0dCAoQykgMTk5NC0xOTk2IElhbiBKYWNrc29uLlxuIgorIk9wcGhhdnNyZXR0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE2MgorbXNnaWQgIiIKKyJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAyIG9yXG4iCisibGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuXG4iCittc2dzdHIgIiIKKyJEZXR0ZSBlciBmcmkgcHJvZ3JhbXZhcmUuIER1IGZpbm5lciBrb3BpZXJpbmdzdmlsa8OlcmVuZSBpXG4iCisiR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2pvbiAyIGVsbGVyIG55ZXJlLiBEZXQgZmlubmVzIElOR0VOIGdhcmFudGkuXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNzIgZHNlbGVjdC9tYWluLmNjOjIyMAorbXNnaWQgIjxzdGFuZGFyZCBvdXRwdXQ+IgorbXNnc3RyICI8c3RhbmRhcmQgdXRkYXRhPiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE4MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIFs8YWN0aW9uPiAuLi5dXG4iCisiXG4iCittc2dzdHIgIiIKKyJCcnVrOiAlcyBbPHZhbGc+IC4uLl0gWzxoYW5kbGluZz4gLi4uXVxuIgorIlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTg3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMuXG4iCisiICAtLWV4cGVydCAgICAgICAgICAgICAgICAgICBUdXJuIG9uIGV4cGVydCBtb2RlLlxuIgorIiAgLS1kZWJ1ZyA8ZmlsZT4gfCAtRDxmaWxlPiAgVHVybiBvbiBkZWJ1Z2dpbmcsIHNlbmRpbmcgb3V0cHV0IHRvIDxmaWxlPi5cbiIKKyIgIC0tY29sb3VyIHwgLS1jb2xvciBzY3JlZW5wYXJ0Oltmb3JlZ3JvdW5kXSxbYmFja2dyb3VuZF1bOmF0dHJbK2F0dHIrLi5dXVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ29uZmlndXJlIHNjcmVlbiBjb2xvdXJzLlxuIgorIlxuIgorbXNnc3RyICIiCisiVmFsZzpcbiIKKyIgIC0tYWRtaW5kaXIgPGthdGFsb2c+ICAgICBCcnVrIDxrYXRhbG9nPiBpIHN0ZWRlbiBmb3IgJXMuXG4iCisiICAtLWV4cGVydCAgICAgICAgICAgICAgICAgICBTbMOlIHDDpSBla3NwZXJ0bW9kdXMuXG4iCisiICAtLWRlYnVnIDxmaWw+IHwgLUQ8ZmlsPiAgU2zDpSBww6UgZmVpbHPDuGtpbmcgb2cgc2VuZCByZXN1bHRhdCB0aWwgPGZpbD4uXG4iCisiICAtLWNvbG91ciB8IC0tY29sb3Igc2NyZWVucGFydDpbZm9yZWdyb3VuZF0sW2JhY2tncm91bmRdWzphdHRyWythdHRyKy4uXV1cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNldHQgb3BwIHNramVybWZhcmdlci5cbiIKKyJcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE5NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgICBTaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICAgU2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgICAgdmlzZXIgZGVubmUgaGplbHBtZWxkaW5nZW4uXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgICB2aXNlciB2ZXJzam9uc251bW1lcmV0LlxuIgorIlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjAxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJBY3Rpb25zOlxuIgorIiAgYWNjZXNzIHVwZGF0ZSBzZWxlY3QgaW5zdGFsbCBjb25maWcgcmVtb3ZlIHF1aXRcbiIKKyJcbiIKK21zZ3N0ciAiIgorIkhhbmRsaW5nZXI6XG4iCisiICBhY2Nlc3MgdXBkYXRlIHNlbGVjdCBpbnN0YWxsIGNvbmZpZyByZW1vdmUgcXVpdFxuIgorIlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjA1CisjLCBjLWZvcm1hdAorbXNnaWQgIlNjcmVlbnBhcnRzOlxuIgorbXNnc3RyICJTa2plcm1kZWxlcjpcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjIxMAorIywgYy1mb3JtYXQKK21zZ2lkICJDb2xvdXJzOlxuIgorbXNnc3RyICJGYXJnZXI6XG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiQXR0cmlidXRlczpcbiIKK21zZ3N0ciAiQXR0cmlidXR0ZXI6XG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGRuJ3Qgb3BlbiBkZWJ1ZyBmaWxlIGAlLjI1NXMnXG4iCittc2dzdHIgImtsYXJ0ZSBpa2tlIMOlcG5lIGF2bHVzaW5nc2ZpbCBgJS4yNTVzJ1xuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjUzCisjLCBjLWZvcm1hdAorbXNnaWQgIkludmFsaWQgJXMgYCVzJ1xuIgorbXNnc3RyICJVZ3lsZGlnICVzIGAlcydcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjI3MAorbXNnaWQgInNjcmVlbiBwYXJ0IgorbXNnc3RyICJza2plcm1kZWwiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyNzYKK21zZ2lkICJOdWxsIGNvbG91ciBzcGVjaWZpY2F0aW9uXG4iCittc2dzdHIgIkluZ2VuIGZhcmdlc3Blc2lmaWthc2pvblxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6Mjg0IGRzZWxlY3QvbWFpbi5jYzoyODkKK21zZ2lkICJjb2xvdXIiCittc2dzdHIgImZhcmdlIgorCisjOiBkc2VsZWN0L21haW4uY2M6Mjk3Cittc2dpZCAiY29sb3VyIGF0dHJpYnV0ZSIKK21zZ3N0ciAiZmFyZ2VhdHRyaWJ1dHQiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzozMjkKK21zZ2lkICJUZXJtaW5hbCBkb2VzIG5vdCBhcHBlYXIgdG8gc3VwcG9ydCBjdXJzb3IgYWRkcmVzc2luZy5cbiIKK21zZ3N0ciAiVGVybWluYWxlbiBzZXIgaWtrZSB1dCB0aWwgw6Ugc3TDuHR0ZSBtYXJrw7hyYWRyZXNzZXJpbmcuXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzozMzEKK21zZ2lkICJUZXJtaW5hbCBkb2VzIG5vdCBhcHBlYXIgdG8gc3VwcG9ydCBoaWdobGlnaHRpbmcuXG4iCittc2dzdHIgIlRlcm1pbmFsZW4gc2VyIGlra2UgdXQgdGlsIMOlIHN0w7h0dGUgdXRoZXZpbmcuXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzozMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlNldCB5b3VyIFRFUk0gdmFyaWFibGUgY29ycmVjdGx5LCB1c2UgYSBiZXR0ZXIgdGVybWluYWwsXG4iCisib3IgbWFrZSBkbyB3aXRoIHRoZSBwZXItcGFja2FnZSBtYW5hZ2VtZW50IHRvb2wgJXMuXG4iCittc2dzdHIgIiIKKyJTZXR0IFRFUk0tdmFyaWFiZWxlbiByaWt0aWcsIGJydWsgZW4gYmVkcmUgdGVybWluYWwgZWxsZXIgXG4iCisiZHUgZsOlciBrbGFyZSBkZWcgbWVkIGjDpW5kdGVyaW5nc3Zlcmt0w7h5ZXQgJXMgZm9yIGh2ZXIgcGFra2UuXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzozMzYKK21zZ2lkICJ0ZXJtaW5hbCBsYWNrcyBuZWNlc3NhcnkgZmVhdHVyZXMsIGdpdmluZyB1cCIKK21zZ3N0ciAidGVybWluYWxlbiBtYW5nbGVyIG7DuGR2ZW5kaWdlIGZ1bmtzam9uZXIsIGdpciBvcHAiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzo0MTcKK21zZ2lkICIiCisiXG4iCisiXG4iCisiTW92ZSBhcm91bmQgd2l0aCBeUCBhbmQgXk4sIGN1cnNvciBrZXlzLCBpbml0aWFsIGxldHRlcnMsIG9yIGRpZ2l0cztcbiIKKyJQcmVzcyA8ZW50ZXI+IHRvIGNvbmZpcm0gc2VsZWN0aW9uLiAgIF5MIHJlZHJhd3Mgc2NyZWVuLlxuIgorIlxuIgorbXNnc3RyICIiCisiXG4iCisiXG4iCisiRmx5dHQgcnVuZHQgbWVkIF5QIG9nIF5OLCBwaWx0YXN0ZXIsIGlubmxlZGVuZGUgYm9rc3RhdmVyIGVsbGVyICIKKyJudW1tZXJ0YXN0ZW5lO1xuIgorIlRyeWtrIDxlbnRlcj4gZm9yIMOlIGJla3JlZnRlIHV0dmFsZ2V0LiAgIF5MIHRlZ25lciBza2plcm1lbiBww6Ugbnl0dC5cbiIKKyJcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjQyOAorbXNnaWQgIiIKKyJcbiIKKyJcbiIKKyJSZWFkLW9ubHkgYWNjZXNzOiBvbmx5IHByZXZpZXcgb2Ygc2VsZWN0aW9ucyBpcyBhdmFpbGFibGUhIgorbXNnc3RyICIiCisiXG4iCisiXG4iCisiU2tyaXZlYmVza3l0dGV0IHRpbGdhbmc6IGJhcmUgZm9yaMOlbmRzdmlzbmluZyBhdiB1dHZhbGcgZXIgdGlsZ2plbmdlbGlnISIKKworIzogZHNlbGVjdC9tYWluLmNjOjQ0OAorbXNnaWQgImZhaWxlZCB0byBnZXRjaCBpbiBtYWluIG1lbnUiCittc2dzdHIgImtsYXJ0ZSBpa2tlIGJydWtlIMKrZ2V0Y2jCuyBpIGhvdmVkbWVueWVuIgorCisjOiBkc2VsZWN0L21haW4uY2M6NTMxCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gYWN0aW9uIHN0cmluZyBgJS41MHMnIgorbXNnc3RyICJ1a2plbnQgaGFuZGxpbmdzc3RyZW5nIGAlLjUwcyciCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6NzcKK21zZ2lkICJkc2VsZWN0IC0gbGlzdCBvZiBhY2Nlc3MgbWV0aG9kcyIKK21zZ3N0ciAiZHNlbGVjdCAtIGxpc3RlIG92ZXIgdGlsZ2FuZ3NtZXRvZGVyIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjg2CisjLCBjLWZvcm1hdAorbXNnaWQgIkFjY2VzcyBtZXRob2QgYCVzJy4iCittc2dzdHIgIlRpbGdhbmdzbWV0b2RlIGAlcycuIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjEyMAorbXNnaWQgIkFiYnJldi4iCittc2dzdHIgIkZvcmtvcnQuIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjEyMSBkc2VsZWN0L3BrZ2luZm8uY2M6MTA1IGRzZWxlY3QvcGtndG9wLmNjOjI5MQorbXNnaWQgIkRlc2NyaXB0aW9uIgorbXNnc3RyICJCZXNrcml2ZWxzZSIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxNjQgZHNlbGVjdC9wa2dsaXN0LmNjOjU3MgorbXNnaWQgImRvdXBkYXRlIGZhaWxlZCIKK21zZ3N0ciAiwqtkb3VwZGF0ZcK7IG1pc2x5a3RlcyIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxNjYgZHNlbGVjdC9wa2dsaXN0LmNjOjU3NQorbXNnaWQgImZhaWxlZCB0byB1bmJsb2NrIFNJR1dJTkNIIgorbXNnc3RyICJrbGFydGUgaWtrZSBhdmJsb2trZXJlIFNJR1dJTkNIIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjE3MCBkc2VsZWN0L3BrZ2xpc3QuY2M6NTgwCittc2dpZCAiZmFpbGVkIHRvIHJlLWJsb2NrIFNJR1dJTkNIIgorbXNnc3RyICJrbGFydGUgaWtrZSByZWJsb2trZXJlIFNJR1dJTkNIIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjE3MSBkc2VsZWN0L3BrZ2xpc3QuY2M6NTgyCittc2dpZCAiZ2V0Y2ggZmFpbGVkIgorbXNnc3RyICLCq2dldGNowrsgbWlzbHlrdGVzIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjE4OAorbXNnaWQgIkV4cGxhbmF0aW9uIgorbXNnc3RyICJGb3JrbGFyaW5nIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjE5NworbXNnaWQgIk5vIGV4cGxhbmF0aW9uIGF2YWlsYWJsZS4iCittc2dzdHIgIkluZ2VuIGZvcmtsYXJpbmcgdGlsZ2plbmdlbGlnLiIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6NjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIlxuIgorIiVzOiAlc1xuIgorbXNnc3RyICIiCisiXG4iCisiXG4iCisiJXM6ICVzXG4iCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjcwCittc2dpZCAiIgorIlxuIgorIlByZXNzIDxlbnRlcj4gdG8gY29udGludWUuIgorbXNnc3RyICIiCisiXG4iCisiVHJ5a2sgPGVudGVyPiBmb3Igw6UgZm9ydHNldHRlLiIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MTYxCisjLCBjLWZvcm1hdAorbXNnaWQgIlByZXNzIDxlbnRlcj4gdG8gY29udGludWUuXG4iCittc2dzdHIgIlRyeWtrIDxlbnRlcj4gZm9yIMOlIGZvcnRzZXR0ZS5cbiIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MTYyCittc2dpZCAiPHN0YW5kYXJkIGVycm9yPiIKK21zZ3N0ciAiPHN0YW5kYXJkIGZlaWw+IgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoxNjUKK21zZ2lkICJlcnJvciByZWFkaW5nIGFja25vd2xlZGdlbWVudCBvZiBwcm9ncmFtIGZhaWx1cmUgbWVzc2FnZSIKK21zZ3N0ciAiZmVpbCB2ZWQgbGVzaW5nIGF2IGdvZGtqZW5uaW5nIGF2IHByb2dyYW1mZWlsbWVsZGluZyIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MTk2Cittc2dpZCAidXBkYXRlIGF2YWlsYWJsZSBsaXN0IHNjcmlwdCIKK21zZ3N0ciAic2tyaXB0IHRpbCBvcHBkYXRlcmluZyBhdiB0aWxnamVuZ2VsaWdoZXRzbGlzdGUiCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjIwMAorbXNnaWQgImluc3RhbGxhdGlvbiBzY3JpcHQiCittc2dzdHIgImluc3RhbGxhc2pvbnNza3JpcHQiCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjI0NgorbXNnaWQgInF1ZXJ5L3NldHVwIHNjcmlwdCIKK21zZ3N0ciAic2tyaXB0IHRpbCBzcMO4cnJpbmcvb3Bwc2V0dCIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yIGluIG1ldGhvZCBvcHRpb25zIGZpbGUgYCUuMjUwcycgLS0gJXMiCittc2dzdHIgInN5bnRha3NmZWlsIGkgbWV0b2Rlb3Bzam9uc2ZpbGEgwqslLjI1MHPCuyAtLSAlcyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcmVhZGluZyBvcHRpb25zIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImZlaWwgdmVkIGxlc2luZyBhdiBvcHNqb25zZmlsYSDCqyUuMjUwc8K7IgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzo5MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBgJS4yNTBzJyBkaXJlY3RvcnkgZm9yIHJlYWRpbmcgbWV0aG9kcyIKK21zZ3N0ciAia2xhcnRlIGlra2UgbGVzZSBrYXRhbG9nZW4gwqslLjI1MHPCuyBmb3IgbGVzaW5nIGF2IG1ldG9kZXIiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjEwNgorIywgYy1mb3JtYXQKK21zZ2lkICJtZXRob2QgYCUuMjUwcycgaGFzIG5hbWUgdGhhdCBpcyB0b28gbG9uZyAoJWQgPiAlZCBjaGFyYWN0ZXJzKSIKK21zZ3N0ciAibWV0b2RlbiDCqyUuMjUwc8K7IGhhciBmb3IgbGFuZ3QgbmF2biAoJWQgPiAlZCB0ZWduKSIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTE3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBhY2Nlc3MgbWV0aG9kIHNjcmlwdCBgJS4yNTBzJyIKK21zZ3N0ciAiZmlrayBpa2tlIHRpbGdhbmcgdGlsIG1ldG9kZXNrcmlwdGV0IMKrJS4yNTBzwrsiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjEyMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBtZXRob2Qgb3B0aW9ucyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrbGFydGUgaWtrZSBsZXNlIG1ldG9kZW9wc2pvbnNmaWxhIMKrJS4yNTBzwrsiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE0NworbXNnaWQgIm5vbi1kaWdpdCB3aGVyZSBkaWdpdCB3YW50ZWQiCittc2dzdHIgImlra2Utc2lmZmVyIGRlciBkZXQgc2t1bGxlIHbDpnJlIGV0IHNpZmZlciAiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE1MAorbXNnaWQgIkVPRiBpbiBpbmRleCBzdHJpbmciCittc2dzdHIgInNsdXR0LXDDpS1maWwgaSBpbmRla3NzdHJlbmciCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE1MworbXNnaWQgImluZGV4IHN0cmluZyB0b28gbG9uZyIKK21zZ3N0ciAiZm9yIGxhbmcgaW5kZWtzc3RyZW5nIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNTYKK21zZ2lkICJuZXdsaW5lIGJlZm9yZSBvcHRpb24gbmFtZSBzdGFydCIKK21zZ3N0ciAibGluamVza2lmdCBmw7hyIHN0YXJ0ZW4gcMOlIG9wc2pvbnNuYXZuZXQiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE1OAorbXNnaWQgIkVPRiBiZWZvcmUgb3B0aW9uIG5hbWUgc3RhcnQiCittc2dzdHIgInNsdXR0LXDDpS1maWwgZsO4ciBzdGFydGVuIHDDpSBvcHNqb25zbmF2bmV0IgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNjIKK21zZ2lkICJub25hbHBoYSB3aGVyZSBvcHRpb24gbmFtZSBzdGFydCB3YW50ZWQiCittc2dzdHIgImlra2UtYm9rc3RhdiBkZXIgZXQgb3Bzam9uc25hdm4gc2t1bGxlIHN0YXJ0ZSIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTY0Cittc2dpZCAibm9uLWFscGhhbnVtIGluIG9wdGlvbiBuYW1lIgorbXNnc3RyICJvcHNqb25zbmF2bmV0IGlubmVob2xkZXIgdGVnbiBzb20gaWtrZSBlciB0YWxsIGVsbGVyIGJva3N0YXZlciIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTY3Cittc2dpZCAiRU9GIGluIG9wdGlvbiBuYW1lIgorbXNnc3RyICJzbHV0dC1ww6UtZmlsIGkgb3Bzam9uc25hdm4iCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE3MgorbXNnaWQgIm5ld2xpbmUgYmVmb3JlIHN1bW1hcnkiCittc2dzdHIgImxpbmplc2tpZnQgZsO4ciBzYW1tZW5kcmFnZXQiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE3NAorbXNnaWQgIkVPRiBiZWZvcmUgc3VtbWFyeSIKK21zZ3N0ciAic2x1dHQtcMOlLWZpbCBmw7hyIHNhbW1lbmRyYWdldCIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTgwCittc2dpZCAiRU9GIGluIHN1bW1hcnkgLSBtaXNzaW5nIG5ld2xpbmUiCittc2dzdHIgInNsdXR0LXDDpS1maWwgaSBzYW1tZW5kcmFnZXQgLSBtYW5nbGVyIGxpbmplc2tpZnQiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE5MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBvcHRpb24gZGVzY3JpcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia2xhcnRlIGlra2Ugw6VwbmUgwqslLjI1MHPCuyBtZWQgb3Bzam9uc2Jlc2tyaXZlbHNlciIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTk0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IG9wdGlvbiBkZXNjcmlwdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJmYW50IGlra2UgZmlsYSDCqyUuMjUwc8K7IG1lZCBvcHNqb25zYmVza3JpdmVsc2VyIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxOTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgb3B0aW9uIGRlc2NyaXB0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImtsYXJ0ZSBpa2tlIGxlc2UgZmlsYSDCqyUuMjUwc8K7IG1lZCBvcHNqb25zYmVza3JpdmVsc2VyIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgZHVyaW5nIHJlYWQgb2Ygb3B0aW9uIGRlc2NyaXB0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImZlaWwgdmVkIGxlc2luZyBhdiBmaWxhIMKrJS4yNTBzwrsgbWVkIG9wc2pvbnNiZXNrcml2ZWxzZXIiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjIyNAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBkdXJpbmcgcmVhZCBvZiBtZXRob2Qgb3B0aW9ucyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJmZWlsIHZlZCBsZXNpbmcgYXYgbWV0b2Rlb3Bzam9uc2ZpbGEgwqslLjI1MHPCuyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MjQ3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIGN1cnJlbnQgb3B0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImtsYXJ0ZSBpa2tlIMOlcG5lIG9wc2pvbnNmaWxhIMKrJS4yNTBzwrsiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjI4OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBuZXcgb3B0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImtsYXJ0ZSBpa2tlIMOlcG5lIGRlbiBueWUgb3Bzam9uc2ZpbGEgwqslLjI1MHPCuyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MjkyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgb3B0aW9uIHRvIGAlLjI1MHMnIgorbXNnc3RyICJrbGFydGUgaWtrZSBza3JpdmUgZGVuIG55ZSBvcHNqb25zZmlsYSDCqyUuMjUwc8K7IgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyOTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIG5ldyBvcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia2xhcnRlIGlra2UgbHVra2UgZGVuIG55ZSBvcHNqb25zZmlsYSDCqyUuMjUwc8K7IgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyOTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IG9wdGlvbiBhcyBgJS4yNTBzJyIKK21zZ3N0ciAia2xhcnRlIGlra2UgaW5zdGFsbGVyZSBueSBvcHNqb24gc29tIMKrJS4yNTBzwrsiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzozNgorbXNnaWQgIm5ldyBwYWNrYWdlIgorbXNnc3RyICJueSBwYWtrZSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjM3Cittc2dpZCAiaW5zdGFsbCIKK21zZ3N0ciAiaW5zdGFsbGVyIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MzgKK21zZ2lkICJob2xkIgorbXNnc3RyICJob2xkIHRpbGJha2UiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzozOQorbXNnaWQgInJlbW92ZSIKK21zZ3N0ciAiZmplcm4iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo0MAorbXNnaWQgInB1cmdlIgorbXNnc3RyICJyZW5zIgorCisjLiBUUkFOU0xBVE9SUzogVGhlIHNwYWNlIGlzIGEgdHJpY2sgdG8gd29yayBhcm91bmQgZ2V0dGV4dCB3aGljaCB1c2VzCisjLiAqIHRoZSBlbXB0eSBzdHJpbmcgdG8gc3RvcmUgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHRyYW5zbGF0aW9uLiBETyBOT1QKKyMuICogQ0hBTkdFIFRIQVQgSU4gQSBUUkFOU0xBVElPTiEgVGhlIGNvZGUgcmVhbGx5IHJlbGllcyBvbiB0aGF0IGJlaW5nCisjLiAqIGEgc2luZ2xlIHNwYWNlLgorIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjQ3Cittc2dpZCAiICIKK21zZ3N0ciAiICIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjQ4Cittc2dpZCAiUkVJTlNUQUxMIgorbXNnc3RyICJJTlNUQUxMRVIgT00gSUdKRU4iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1MQorbXNnaWQgIm5vdCBpbnN0YWxsZWQiCittc2dzdHIgImlra2UgaW5zdGFsbGVydCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjUyCittc2dpZCAicmVtb3ZlZCAoY29uZmlncyByZW1haW4pIgorbXNnc3RyICJmamVybmV0ICh0YXR0IHZhcmUgcMOlIG9wcHNldHQpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTMKK21zZ2lkICJoYWxmIGluc3RhbGxlZCIKK21zZ3N0ciAiaGFsdmluc3RhbGxlcnQiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1NAorbXNnaWQgInVucGFja2VkIChub3Qgc2V0IHVwKSIKK21zZ3N0ciAidXRwYWtrZXQgKGlra2Ugc2F0dCBvcHApIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTUKK21zZ2lkICJoYWxmIGNvbmZpZ3VyZWQgKGNvbmZpZyBmYWlsZWQpIgorbXNnc3RyICJoYWx2dmVpcyBzYXR0IG9wcCAob3Bwc2V0dCBtaXNseWt0ZXMpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTYKK21zZ2lkICJhd2FpdGluZyB0cmlnZ2VyIHByb2Nlc3NpbmciCittc2dzdHIgInZlbnRlciBww6UgdXRsw7hzZXJwcm9zZXNzZXJpbmciCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1NworbXNnaWQgInRyaWdnZXJlZCIKK21zZ3N0ciAidXRsw7hzdCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjU4Cittc2dpZCAiaW5zdGFsbGVkIgorbXNnc3RyICJpbnN0YWxsZXJ0IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjEKK21zZ2lkICJSZXF1aXJlZCIKK21zZ3N0ciAiUMOla3JldmV0IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjIKK21zZ2lkICJJbXBvcnRhbnQiCittc2dzdHIgIlZpa3RpZyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjYzCittc2dpZCAiU3RhbmRhcmQiCittc2dzdHIgIlN0YW5kYXJkIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjQKK21zZ2lkICJPcHRpb25hbCIKK21zZ3N0ciAiVmFsZ2ZyaSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjY1Cittc2dpZCAiRXh0cmEiCittc2dzdHIgIkVrc3RyYSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjY2Cittc2dpZCAiIUJ1ZyEiCittc2dzdHIgIiFMdXMhIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjcKK21zZ2lkICJVbmNsYXNzaWZpZWQiCittc2dzdHIgIlVrbGFzc2lmaXNlcnQiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3MAorbXNnaWQgInN1Z2dlc3RzIgorbXNnc3RyICJmb3Jlc2zDpXIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3MQorbXNnaWQgInJlY29tbWVuZHMiCittc2dzdHIgImFuYmVmYWxlciIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjcyCittc2dpZCAiZGVwZW5kcyBvbiIKK21zZ3N0ciAia3JldmVyIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzMKK21zZ2lkICJwcmUtZGVwZW5kcyBvbiIKK21zZ3N0ciAiZm9ya3JhdiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjc0Cittc2dpZCAiYnJlYWtzIgorbXNnc3RyICLDuGRlbGVnZ2VyIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzUKK21zZ2lkICJjb25mbGljdHMgd2l0aCIKK21zZ3N0ciAia29uZmxpa3QgbWVkIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzYKK21zZ2lkICJwcm92aWRlcyIKK21zZ3N0ciAiZ2lyIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzcKK21zZ2lkICJyZXBsYWNlcyIKK21zZ3N0ciAiZXJzdGF0dGVyIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzgKK21zZ2lkICJlbmhhbmNlcyIKK21zZ3N0ciAiZm9yYmVkcmVyIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODEKK21zZ2lkICJSZXEiCittc2dzdHIgIktydiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjgyCittc2dpZCAiSW1wIgorbXNnc3RyICJWa3QiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4MworbXNnaWQgIlN0ZCIKK21zZ3N0ciAiU3RkIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODQKK21zZ2lkICJPcHQiCittc2dzdHIgIlZhbCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjg1Cittc2dpZCAiWHRyIgorbXNnc3RyICJFa3MiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4NgorbXNnaWQgImJVRyIKK21zZ3N0ciAiTFVTIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODcKK21zZ2lkICI/IgorbXNnc3RyICI/IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6OTUgZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExNQorbXNnaWQgIkJyb2tlbiIKK21zZ3N0ciAiw5hkZWxhZ3QiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo5NgorbXNnaWQgIk5ldyIKK21zZ3N0ciAiTnllIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6OTcKK21zZ2lkICJVcGRhdGVkIgorbXNnc3RyICJPcHBkYXRlcnRlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6OTgKK21zZ2lkICJPYnNvbGV0ZS9sb2NhbCIKK21zZ3N0ciAiRm9yZWxkZXQvbG9rYWxlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6OTkKK21zZ2lkICJVcC10by1kYXRlIgorbXNnc3RyICJGZXJkaWcgb3BwZGF0ZXJ0ZSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwMAorbXNnaWQgIkF2YWlsYWJsZSIKK21zZ3N0ciAiVGlsZ2plbmdlbGlnZSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwMSBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTE3Cittc2dpZCAiUmVtb3ZlZCIKK21zZ3N0ciAiRmplcm5ldCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwMiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTExCittc2dpZCAiQnJva2VubHkgaW5zdGFsbGVkIHBhY2thZ2VzIgorbXNnc3RyICLDmGRlbGFndGUgaW5zdGFsbGVydGUgcGFra2VyIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTAzCittc2dpZCAiTmV3bHkgYXZhaWxhYmxlIHBhY2thZ2VzIgorbXNnc3RyICJOeWUgdGlsZ2plbmdlbGlnZSBwYWtrZXIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDQKK21zZ2lkICJVcGRhdGVkIHBhY2thZ2VzIChuZXdlciB2ZXJzaW9uIGlzIGF2YWlsYWJsZSkiCittc2dzdHIgIk9wcGRhdGVydGUgcGFra2VyIChueWVyZSB2ZXJzam9uIHRpbGdqZW5nZWxpZykiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDUKK21zZ2lkICJPYnNvbGV0ZSBhbmQgbG9jYWwgcGFja2FnZXMgcHJlc2VudCBvbiBzeXN0ZW0iCittc2dzdHIgIkZvcmVsZGV0ZSBvZyBsb2thbGUgcGFra2VyIHDDpSBzeXN0ZW1ldCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwNgorbXNnaWQgIlVwIHRvIGRhdGUgaW5zdGFsbGVkIHBhY2thZ2VzIgorbXNnc3RyICJQYWtrZXIgc29tIGVyIGluc3RhbGxlcnRlIGkgbnllc3RlIHZlcnNqb24iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDcKK21zZ2lkICJBdmFpbGFibGUgcGFja2FnZXMgKG5vdCBjdXJyZW50bHkgaW5zdGFsbGVkKSIKK21zZ3N0ciAiVGlsZ2plbmdlbGlnZSBwYWtrZXIgKGlra2UgaW5zdGFsbGVydGUpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTA4Cittc2dpZCAiUmVtb3ZlZCBhbmQgbm8gbG9uZ2VyIGF2YWlsYWJsZSBwYWNrYWdlcyIKK21zZ3N0ciAiRmplcm5lZGUgcGFra2VyIHNvbSBpa2tlIGxlbmdlciBlciB0aWxnamVuZ2VsaWdlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTEyCittc2dpZCAiSW5zdGFsbGVkIHBhY2thZ2VzIgorbXNnc3RyICJJbnN0YWxsZXJ0ZSBwYWtrZXIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTMKK21zZ2lkICJSZW1vdmVkIHBhY2thZ2VzIChjb25maWd1cmF0aW9uIHN0aWxsIHByZXNlbnQpIgorbXNnc3RyICJGamVybmVkZSBwYWtrZXIgKHRhdHQgdmFyZSBww6Ugb3Bwc2V0dGV0KSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExNAorbXNnaWQgIlB1cmdlZCBwYWNrYWdlcyBhbmQgdGhvc2UgbmV2ZXIgaW5zdGFsbGVkIgorbXNnc3RyICJQYWtrZXIgc29tIGVyIHJlbnNldCBib3J0IGVsbGVyIGFsZHJpIGluc3RhbGxlcnRlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTE2Cittc2dpZCAiSW5zdGFsbGVkIgorbXNnc3RyICJJbnN0YWxsZXJ0ZSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExOAorbXNnaWQgIlB1cmdlZCIKK21zZ3N0ciAiUmVuc2V0IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTk4Cittc2dpZCAiZHNlbGVjdCAtIHJlY3Vyc2l2ZSBwYWNrYWdlIGxpc3RpbmciCittc2dzdHIgImRzZWxlY3QgLSByZWt1cnNpdiBwYWtrZWxpc3RlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTk5Cittc2dpZCAiZHNlbGVjdCAtIGluc3BlY3Rpb24gb2YgcGFja2FnZSBzdGF0ZXMiCittc2dzdHIgImRzZWxlY3QgLSBpbnNwZWtzam9uIGF2IHBha2tlc3RhdHVzIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjAwCittc2dpZCAiZHNlbGVjdCAtIG1haW4gcGFja2FnZSBsaXN0aW5nIgorbXNnc3RyICJkc2VsZWN0IC0gaG92ZWRwYWtrZWxpc3RlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjA4Cittc2dpZCAiIChieSBzZWN0aW9uKSIKK21zZ3N0ciAiIChldHRlciBkZWwpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjExCittc2dpZCAiIChhdmFpbC4sIHNlY3Rpb24pIgorbXNnc3RyICIgKHRpbGdqLiwgZGVsKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIxNAorbXNnaWQgIiAoc3RhdHVzLCBzZWN0aW9uKSIKK21zZ3N0ciAiIChzdGF0dXMsIGRlbCkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMjMKK21zZ2lkICIgKGJ5IHByaW9yaXR5KSIKK21zZ3N0ciAiIChldHRlciBwcmlvcml0ZXQpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjI2Cittc2dpZCAiIChhdmFpbC4sIHByaW9yaXR5KSIKK21zZ3N0ciAiICh0aWxnai4sIHByaW9yaXRldCkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMjkKK21zZ2lkICIgKHN0YXR1cywgcHJpb3JpdHkpIgorbXNnc3RyICIgKHN0YXR1cywgcHJpb3JpdGV0KSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIzOCBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjUwCittc2dpZCAiIChhbHBoYWJldGljYWxseSkiCittc2dzdHIgIiAoYWxmYWJldGlzaykiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNDEKK21zZ2lkICIgKGJ5IGF2YWlsYWJpbGl0eSkiCittc2dzdHIgIiAoZXR0ZXIgdGlsZ2plbmdlbGlnaGV0KSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI0NAorbXNnaWQgIiAoYnkgc3RhdHVzKSIKK21zZ3N0ciAiIChldHRlciBzdGF0dXMpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjU4Cittc2dpZCAiIG1hcms6Ky89Ly0gdGVyc2U6diBoZWxwOj8iCittc2dzdHIgIiBtYXJrZXI6Ky89Ly0ga29ydDp2IGhqZWxwOj8iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNTkKK21zZ2lkICIgbWFyazorLz0vLSB2ZXJib3NlOnYgaGVscDo/IgorbXNnc3RyICIgbWFya2VyOisvPS8tIGZ5bGRpZzp2IGhqZWxwOj8iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNjAKK21zZ2lkICIgdGVyc2U6diBoZWxwOj8iCittc2dzdHIgIiBrb3J0OnYgaGplbHA6PyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI2MQorbXNnaWQgIiB2ZXJib3NlOnYgaGVscDo/IgorbXNnc3RyICIgZnlsZGlnOnYgaGplbHA6PyIKKworIzogZHNlbGVjdC9wa2dpbmZvLmNjOjgwCittc2dpZCAiIgorIlRoZSBsaW5lIHlvdSBoYXZlIGhpZ2hsaWdodGVkIHJlcHJlc2VudHMgbWFueSBwYWNrYWdlczsgaWYgeW91IGFzayB0byAiCisiaW5zdGFsbCwgcmVtb3ZlLCBob2xkLCBldGMuIGl0IHlvdSB3aWxsIGFmZmVjdCBhbGwgdGhlIHBhY2thZ2VzIHdoaWNoIG1hdGNoICIKKyJ0aGUgY3JpdGVyaW9uIHNob3duLlxuIgorIlxuIgorIklmIHlvdSBtb3ZlIHRoZSBoaWdobGlnaHQgdG8gYSBsaW5lIGZvciBhIHBhcnRpY3VsYXIgcGFja2FnZSB5b3Ugd2lsbCBzZWUgIgorImluZm9ybWF0aW9uIGFib3V0IHRoYXQgcGFja2FnZSBkaXNwbGF5ZWQgaGVyZS5cbiIKKyJZb3UgY2FuIHVzZSBgbycgYW5kIGBPJyB0byBjaGFuZ2UgdGhlIHNvcnQgb3JkZXIgYW5kIGdpdmUgeW91cnNlbGYgdGhlICIKKyJvcHBvcnR1bml0eSB0byBtYXJrIHBhY2thZ2VzIGluIGRpZmZlcmVudCBraW5kcyBvZiBncm91cHMuIgorbXNnc3RyICIiCisiRHUgaGFyIHZhbGd0IGVuIGxpbmplIG1lZCBtYW5nZSBwYWtrZXIuIERlcnNvbSBkdSB2ZWxnZXIgw6UgaW5zdGFsbGVyZSwgIgorImZqZXJuZSwgaG9sZGUgdGlsYmFrZSBlbGxlciBsaWtuZW5kZSwgdmlsIGhhbmRsaW5nZW4gcMOldmlya2UgYWxsZSBwYWtrZW5lICIKKyJzb20gcGFzc2VyIHRpbCBrcml0ZXJpZXQuXG4iCisiXG4iCisiRGVyc29tIGR1IGZseXR0ZXIgbWFya2VyaW5nZW4gdGlsIGVuIGxpbmplIG1lZCBiYXJlIMOpbiBwYWtrZSwga2FuIGR1IHNlICIKKyJpbmZvcm1hc2pvbiBvbSBkZW4gcGFra2VuIGkgZGV0dGUgZmVsdGV0LlxuIgorIkR1IGthbiBlbmRyZSBzb3J0ZXJpbmdzcmVra2Vmw7hsZ2UgbWVkIMKrb8K7IG9nIMKrT8K7IGZvciBzZWx2IMOlIGt1bm5lIG1hcmtlcmUgIgorInBha2tlciBpIGFuZHJlIGdydXBwZXIuIgorCisjOiBkc2VsZWN0L3BrZ2luZm8uY2M6OTMKK21zZ2lkICJJbnRlcnJlbGF0aW9uc2hpcHMiCittc2dzdHIgIlNhbW1lbmhlbmdlciIKKworIzogZHNlbGVjdC9wa2dpbmZvLmNjOjExMgorbXNnaWQgIk5vIGRlc2NyaXB0aW9uIGF2YWlsYWJsZS4iCittc2dzdHIgIkluZ2VuIGJlc2tyaXZlbHNlIHRpbGdqZW5nZWxpZy4iCisKKyM6IGRzZWxlY3QvcGtnaW5mby5jYzoxMzAKK21zZ2lkICJJbnN0YWxsZWQgY29udHJvbCBmaWxlIGluZm9ybWF0aW9uIgorbXNnc3RyICJJbnN0YWxsZXJ0IGtvbnRyb2xsZmlsaW5mb3JtYXNqb24iCisKKyM6IGRzZWxlY3QvcGtnaW5mby5jYzoxNDYKK21zZ2lkICJBdmFpbGFibGUgY29udHJvbCBmaWxlIGluZm9ybWF0aW9uIgorbXNnc3RyICJUaWxnamVuZ2VsaWcga29udHJvbGxmaWxpbmZvcm1hc2pvbiIKKworIzogZHNlbGVjdC9wa2dsaXN0LmNjOjQxNgorbXNnaWQgIlRoZXJlIGFyZSBubyBwYWNrYWdlcy4iCittc2dzdHIgIkRldCBlciBpbmdlbiBwYWtrZXIuIgorCisjOiBkc2VsZWN0L3BrZ2xpc3QuY2M6NTA3Cittc2dpZCAiaW52YWxpZCBzZWFyY2ggb3B0aW9uIGdpdmVuIgorbXNnc3RyICJ1Z3lsZGlnIHPDuGtldmFsZyBvcHBnaXR0IgorCisjOiBkc2VsZWN0L3BrZ2xpc3QuY2M6NTIxCittc2dpZCAiZXJyb3IgaW4gcmVndWxhciBleHByZXNzaW9uIgorbXNnc3RyICJmZWlsIGkgcmVndWzDpnJ0IHV0dHJ5a2siCisKKyM6IGRzZWxlY3QvcGtnc3VibGlzdC5jYzoxMDcKK21zZ2lkICIgZG9lcyBub3QgYXBwZWFyIHRvIGJlIGF2YWlsYWJsZVxuIgorbXNnc3RyICIgc2VyIGlra2UgdXQgdGlsIMOlIHbDpnJlIHRpbGdqZW5nZWxpZ1xuIgorCisjOiBkc2VsZWN0L3BrZ3N1Ymxpc3QuY2M6MTI3Cittc2dpZCAiIG9yICIKK21zZ3N0ciAiIGVsbGVyICIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6NTcKK21zZ2lkICJBbGwiCittc2dzdHIgIkFsbGUiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjc5Cittc2dpZCAiQWxsIHBhY2thZ2VzIgorbXNnc3RyICJBbGxlIHBha2tlciIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcGFja2FnZXMgd2l0aG91dCBhIHNlY3Rpb24iCittc2dzdHIgIiVzIHBha2tlciB1dGVuIG5vZW4gZGVsIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo4NQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBwYWNrYWdlcyBpbiBzZWN0aW9uICVzIgorbXNnc3RyICIlcyBwYWtrZXIgaSBkZWxlbiAlcyIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6OTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgJXMgcGFja2FnZXMiCittc2dzdHIgIiVzICVzIHBha2tlciIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgJXMgcGFja2FnZXMgd2l0aG91dCBhIHNlY3Rpb24iCittc2dzdHIgIiVzICVzIHBha2tlciB1dGVuIG5vZW4gZGVsIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo5NworIywgYy1mb3JtYXQKK21zZ2lkICIlcyAlcyBwYWNrYWdlcyBpbiBzZWN0aW9uICVzIgorbXNnc3RyICIlcyAlcyBwYWtrZXIgaSBkZWxlbiAlcyIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6MTE4CisjLCBjLWZvcm1hdAorbXNnaWQgIiUtKnMgJXMlcyVzOyAgJXMgKHdhczogJXMpLiAgJXMiCittc2dzdHIgIiUtKnMgJXMlcyVzOyAgJXMgKHZhcjogJXMpLiAgJXMiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI2MworbXNnaWQgIkVycm9yIgorbXNnc3RyICJGZWlsIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyNjcKK21zZ2lkICJJbnN0YWxsZWQ/IgorbXNnc3RyICJJbnN0YWxsZXJ0PyIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6MjcxCittc2dpZCAiT2xkIG1hcmsiCittc2dzdHIgIkdhbW1lbHQgbWVya2UiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI3NQorbXNnaWQgIk1hcmtlZCBmb3IiCittc2dzdHIgIk1hcmtlcnQgZm9yIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyNzgKK21zZ2lkICJFSU9NIgorbXNnc3RyICJGSUdNIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyODAKK21zZ2lkICJTZWN0aW9uIgorbXNnc3RyICJEZWwiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI4MQorbXNnaWQgIlByaW9yaXR5IgorbXNnc3RyICJQcmlvcml0ZXQiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI4MgorbXNnaWQgIlBhY2thZ2UiCittc2dzdHIgIlBha2tlIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyODYKK21zZ2lkICJJbnN0LnZlciIKK21zZ3N0ciAiSW5zdC52ZXIiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI4OQorbXNnaWQgIkF2YWlsLnZlciIKK21zZ3N0ciAiVGlsZ2oudmVyIgorCisjfiBtc2dpZCAicmV0dXJuZWQgZXJyb3IgZXhpdCBzdGF0dXMgJWQuXG4iCisjfiBtc2dzdHIgImF2c2x1dHRldCBtZWQgZmVpbHN0YXR1cyAlZC5cbiIKKworI34gbXNnaWQgIndhcyBpbnRlcnJ1cHRlZC5cbiIKKyN+IG1zZ3N0ciAiYmxlIGF2YnJ1dHQuXG4iCisKKyN+IG1zZ2lkICJ3YXMgdGVybWluYXRlZCBieSBhIHNpZ25hbDogJXMuXG4iCisjfiBtc2dzdHIgImJsZSBhdmJydXR0IGF2IGV0IHNpZ25hbDogJXMuXG4iCisKKyN+IG1zZ2lkICIoSXQgbGVmdCBhIGNvcmVkdW1wLilcbiIKKyN+IG1zZ3N0ciAiKExvdCBldHRlciBzZWcgZW4gbWlubmVkdW1wLilcbiIKKworI34gbXNnaWQgImZhaWxlZCB3aXRoIGFuIHVua25vd24gd2FpdCByZXR1cm4gY29kZSAlZC5cbiIKKyN+IG1zZ3N0ciAibWlzbHlrdGVzIG1lZCBlbiB1a2plbnQgdmVudGVyZXR1cmtvZGUgJWQuXG4iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcnVuICUuMjUwcyBwcm9jZXNzIGAlLjI1MHMnIgorI34gbXNnc3RyICJrbGFyZXIgaWtrZSBrasO4cmUgJS4yNTBzIHByb3Nlc3MgYCUuMjUwcyciCisKKyN+IG1zZ2lkICJmYWlsZWQgY29uZmlnIgorI34gbXNnc3RyICJtaXNseWtrZXQgb3Bwc2V0dCIKKworI34gbXNnaWQgInVuYWJsZSB0byB3YWl0IGZvciAlLjI1MHMiCisjfiBtc2dzdHIgImtsYXJlciBpa2tlIHZlbnRlIHDDpSAlLjI1MHMiCisKKyN+IG1zZ2lkICJnb3Qgd3JvbmcgY2hpbGQncyBzdGF0dXMgLSBhc2tlZCBmb3IgJWxkLCBnb3QgJWxkIgorI34gbXNnc3RyICJmaWtrIHN0YXR1cyBmcmEgZmVpbCBiYXJuIC0gc3B1cnRlIGV0dGVyICVsZCwgZmlrayAlbGQiCisKKyN+IG1zZ2lkICJSZWNvbW1lbmRlZCIKKyN+IG1zZ3N0ciAiVGlscsOlZGQiCisKKyN+IG1zZ2lkICJDb250cmliIgorI34gbXNnc3RyICJCaWRyYWciCisKKyN+IG1zZ2lkICJSZWMiCisjfiBtc2dzdHIgIlRsciIKKworI34gbXNnaWQgIkN0YiIKKyN+IG1zZ3N0ciAiQmRyIgorCisjfiBtc2dpZCAiIgorI34gImJhc2VsaXN0OjpzdGFydGRpc3BsYXkoKSBkb25lIC4uLlxuIgorI34gIlxuIgorI34gIiB4bWF4PSVkLCB5bWF4PSVkO1xuIgorI34gIlxuIgorI34gIiB0aXRsZV9oZWlnaHQ9JWQsIGNvbGhlYWRzX2hlaWdodD0lZCwgbGlzdF9oZWlnaHQ9JWQ7XG4iCisjfiAiIHRoaXNzdGF0ZV9oZWlnaHQ9JWQsIGluZm9faGVpZ2h0PSVkLCB3aGF0aW5mb19oZWlnaHQ9JWQ7XG4iCisjfiAiXG4iCisjfiAiIGNvbGhlYWRzX3Jvdz0lZCwgdGhpc3N0YXRlX3Jvdz0lZCwgaW5mb19yb3c9JWQ7XG4iCisjfiAiIHdoYXRpbmZvX3Jvdz0lZCwgbGlzdF9yb3c9JWQ7XG4iCisjfiAiXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJiYXNlbGlzdDo6c3RhcnRkaXNwbGF5KCkgZmVyZGlnIC4uLlxuIgorI34gIlxuIgorI34gIiB4bWF4PSVkLCB5bWF4PSVkO1xuIgorI34gIlxuIgorI34gIiB0aXRsZV9oZWlnaHQ9JWQsIGNvbGhlYWRzX2hlaWdodD0lZCwgbGlzdF9oZWlnaHQ9JWQ7XG4iCisjfiAiIHRoaXNzdGF0ZV9oZWlnaHQ9JWQsIGluZm9faGVpZ2h0PSVkLCB3aGF0aW5mb19oZWlnaHQ9JWQ7XG4iCisjfiAiXG4iCisjfiAiIGNvbGhlYWRzX3Jvdz0lZCwgdGhpc3N0YXRlX3Jvdz0lZCwgaW5mb19yb3c9JWQ7XG4iCisjfiAiIHdoYXRpbmZvX3Jvdz0lZCwgbGlzdF9yb3c9JWQ7XG4iCisjfiAiXG4iCisKKyN+IG1zZ2lkICJbbm9uZV0iCisjfiBtc2dzdHIgIltpbmdlbl0iCisKKyN+IG1zZ2lkICJlcnJvciB1bi1jYXRjaGluZyBzaWduYWwgJWQ6ICVzXG4iCisjfiBtc2dzdHIgImZlaWwgdmVkIHNsaXBwIGF2IHNpZ25hbCAlZDogJXNcbiIKKworI34gbXNnaWQgInVuYWJsZSB0byBpZ25vcmUgc2lnbmFsICVkIGJlZm9yZSBydW5uaW5nICUuMjUwcyIKKyN+IG1zZ3N0ciAia2xhcmVyIGlra2UgaWdub3JlcmUgc2lnbmFsICVkIGbDuHIga2rDuHJpbmcgYXYgJS4yNTBzIgorCisjfiBtc2dpZCAiKG5vIGNsaWVudGRhdGEpIgorI34gbXNnc3RyICIoaW5nZW4ga2xpZW50ZGF0YSkiCisKKyN+IG1zZ2lkICI8bnVsbD4iCisjfiBtc2dzdHIgIjx0b20+IgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL25sLmdtbyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9ubC5nbW8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYmFlZjE5MwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9ubC5nbW8KQmluYXJ5IGZpbGVzIGRpZmZlcgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL25sLnBvIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL25sLnBvCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjUyOTcwYzUKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vbmwucG8KQEAgLTAsMCArMSwxNzM3IEBACittc2dpZCAiIgorbXNnc3RyICIiCisiUHJvamVjdC1JZC1WZXJzaW9uOiBkcGtnIDEuOS40XG4iCisiUmVwb3J0LU1zZ2lkLUJ1Z3MtVG86IGRlYmlhbi1kcGtnQGxpc3RzLmRlYmlhbi5vcmdcbiIKKyJQT1QtQ3JlYXRpb24tRGF0ZTogMjAxMS0xMC0xNCAwNzoxMSswMjAwXG4iCisiUE8tUmV2aXNpb24tRGF0ZTogMjAwOC0wNS0wNSAxMzoyMCswMTAwXG4iCisiTGFzdC1UcmFuc2xhdG9yOiBCYXJ0IENvcm5lbGlzIDxjb2JhY29Ac2tvbGVsaW51eC5ubz5cbiIKKyJMYW5ndWFnZS1UZWFtOiBEdXRjaCA8ZGViaWFuLWwxMG4tZHV0Y2hAZGViaWFuLm9yZz5cbiIKKyJMYW5ndWFnZTogbmxcbiIKKyJNSU1FLVZlcnNpb246IDEuMFxuIgorIkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD11dGYtOFxuIgorIkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXRcbiIKKyJYLVBvZWRpdC1MYW5ndWFnZTogRHV0Y2hcbiIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxMjUKK21zZ2lkICJTZWFyY2ggZm9yID8gIgorbXNnc3RyICJab2VrZW4gbmFhciA/ICIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxNDcKK21zZ2lkICJFcnJvcjogIgorbXNnc3RyICJGb3V0OiAiCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MTc4Cittc2dpZCAiSGVscDogIgorbXNnc3RyICJIdWxwOiAiCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MTg0Cittc2dpZCAiUHJlc3MgPyBmb3IgaGVscCBtZW51LCAuIGZvciBuZXh0IHRvcGljLCA8c3BhY2U+IHRvIGV4aXQgaGVscC4iCittc2dzdHIgIiIKKyInPycgZHJ1a2tlbiBnZWVmdCBoZXQgaGVscG1lbnUsICcuJyBnZWVmdCBoZXQgdm9sZ2VuZCBvbmRlcndlcnAsICdzcGF0aWUnICIKKyJ2ZXJsYWF0IGhldCBoZWxwbWVudS4iCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MTkxCittc2dpZCAiSGVscCBpbmZvcm1hdGlvbiBpcyBhdmFpbGFibGUgdW5kZXIgdGhlIGZvbGxvd2luZyB0b3BpY3M6IgorbXNnc3RyICJIdWxwIGluZm9ybWF0aWUgaXMgYmVzY2hpa2JhYXIgb25kZXIgdGUgdm9sZ2VuZGUgb25kZXJ3ZXJwZW46IgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE5OQorbXNnaWQgIiIKKyJQcmVzcyBhIGtleSBmcm9tIHRoZSBsaXN0IGFib3ZlLCA8c3BhY2U+IG9yIGBxJyB0byBleGl0IGhlbHAsXG4iCisiICBvciBgLicgKGZ1bGwgc3RvcCkgdG8gcmVhZCBlYWNoIGhlbHAgcGFnZSBpbiB0dXJuLiAiCittc2dzdHIgIiIKKyJEcnVrIG9wIGVlbiB2YW4gZGUgdG9ldHNlbiBoaWVyYm92ZW4sICdTcGF0aWUnIG9mICdxJyBvbSBkZSBoZWxwIGFmIHRlICIKKyJzbHVpdGVuLFxuIgorIiAgb2YgYC4nIChwdW50KSBvbSBhbGxlIHBhZ2luYSdzIGVlbiB2b29yIGVlbiB0ZSBsZXplbi4gIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjIwNQorbXNnaWQgImVycm9yIHJlYWRpbmcga2V5Ym9hcmQgaW4gaGVscCIKK21zZ3N0ciAiZm91dCBiaWogbGV6ZW4gdmFuIHRvZXRzZW5ib3JkIGluIGh1bHAiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6NTcKK21zZ2lkICJpb2N0bChUSU9DR1dJTlNaKSBmYWlsZWQiCittc2dzdHIgImlvY3RsKFRJT0NHV0lOU1opIG1pc2x1a3QiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6NjAKK21zZ2lkICJkb3VwZGF0ZSBpbiBTSUdXSU5DSCBoYW5kbGVyIGZhaWxlZCIKK21zZ3N0ciAiZG91cGRhdGUgaXMgU0lHV0lOQ0ggYWZoYW5kZWxpbmcgaXMgbWlzbHVrdCIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo2NworbXNnaWQgImZhaWxlZCB0byByZXN0b3JlIG9sZCBTSUdXSU5DSCBzaWdhY3QiCittc2dzdHIgImtvbiBvdWRlIFNJR1dJTkNIIGFjdGllIG5pZXQgaGVyc3RlbGxlbiIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo2OQorbXNnaWQgImZhaWxlZCB0byByZXN0b3JlIG9sZCBzaWduYWwgbWFzayIKK21zZ3N0ciAia29uIG91ZCBzaWduYWFsbWFza2VyIG5pZXQgaGVyc3RlbGxlbiIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo3OQorbXNnaWQgImZhaWxlZCB0byBnZXQgb2xkIHNpZ25hbCBtYXNrIgorbXNnc3RyICJrb24gb3VkIHNpZ25hYWxtYXNrZXIgbmlldCBvcHZyYWdlbiIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo4MAorbXNnaWQgImZhaWxlZCB0byBnZXQgb2xkIFNJR1dJTkNIIHNpZ2FjdCIKK21zZ3N0ciAia29uIG91ZGUgU0lHV0lOQ0ggYWN0aWUgbmlldCBvcHZyYWdlbiIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo4NAorbXNnaWQgImZhaWxlZCB0byBibG9jayBTSUdXSU5DSCIKK21zZ3N0ciAia29uIFNJR1dJTkNIIG5pZXQgYmxva2tlcmVuIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjg5Cittc2dpZCAiZmFpbGVkIHRvIHNldCBuZXcgU0lHV0lOQ0ggc2lnYWN0IgorbXNnc3RyICJrb24gbmlldXdlIFNJR1dJTkNIIGFjdGllIG5pZXQgaW5zdGVsbGVuIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjEyNgorbXNnaWQgImZhaWxlZCB0byBhbGxvY2F0ZSBjb2xvdXIgcGFpciIKK21zZ3N0ciAia29uIGtsZXVycGFyZW4gbmlldCByZXNlcnZlcmVuIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE2NworbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgdGl0bGUgd2luZG93IgorbXNnc3RyICJrb24gdGl0ZWx2ZW5zdGVyIG5pZXQgYWFubWFrZW4iCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTcxCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSB3aGF0aW5mbyB3aW5kb3ciCittc2dzdHIgImtvbiB3aGF0aW5mbyB2ZW5zdGVyIG5pZXQgYWFubWFrZW4iCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTc1Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBiYXNlbGlzdCBwYWQiCittc2dzdHIgImtvbiBsaWpzdGdlYmllZCBuaWV0IGFhbm1ha2VuIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE3OAorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgaGVhZGluZyBwYWQiCittc2dzdHIgImtvbiBrb3BnZWJpZWQgbmlldCBhYW5tYWtlbiIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxODIKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHRoaXNzdGF0ZSBwYWQiCittc2dzdHIgImtvbiBzdGF0dXNnZWJpZWQgbmlldCBhYW5tYWtlbiIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxODYKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGluZm8gcGFkIgorbXNnc3RyICJrb24gaW5mb2dlYmllZCBuaWV0IGFhbm1ha2VuIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE5MQorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgcXVlcnkgd2luZG93IgorbXNnc3RyICJrb24gdnJhZ2VudmVuc3RlciBuaWV0IGFhbm1ha2VuIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjI1NQorbXNnaWQgIktleWJpbmRpbmdzIgorbXNnc3RyICJUb2V0c2JpbmRpbmdlbiIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzozMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAtLSAlZCUlLCBwcmVzcyAiCittc2dzdHIgIiAgLS0gJWQlJSwgZHJ1ayBvcCAiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MzA2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGZvciBtb3JlIgorbXNnc3RyICIlcyB2b29yIG1lZXIiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MzEwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHRvIGdvIGJhY2siCittc2dzdHIgIiVzIG9tIHRlcnVnIHRlIGdhYW4iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6NzgKK21zZ2lkICJbbm90IGJvdW5kXSIKK21zZ3N0ciAiW25pZXQgZ2Vib25kZW5dIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjgyCisjLCBjLWZvcm1hdAorbXNnaWQgIlt1bms6ICVkXSIKK21zZ3N0ciAiW29uYmVrOiAlZF0iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTM5Cittc2dpZCAiU2Nyb2xsIG9ud2FyZHMgdGhyb3VnaCBoZWxwL2luZm9ybWF0aW9uIgorbXNnc3RyICJTY2h1aWYgZG9vciBodWxwL2luZm9ybWF0aWUiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQwCittc2dpZCAiU2Nyb2xsIGJhY2t3YXJkcyB0aHJvdWdoIGhlbHAvaW5mb3JtYXRpb24iCittc2dzdHIgIlNjaHVpZiB0ZXJ1ZyBkb29yIGh1bHAvaW5mb3JtYXRpZSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDEKK21zZ2lkICJNb3ZlIHVwIgorbXNnc3RyICJHYSBvbWhvb2ciCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQyCittc2dpZCAiTW92ZSBkb3duIgorbXNnc3RyICJHYSBvbWxhYWciCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQzCittc2dpZCAiR28gdG8gdG9wIG9mIGxpc3QiCittc2dzdHIgIkdhIG5hYXIgZGUgdG9wIHZhbiBkZSBsaWpzdCIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDQKK21zZ2lkICJHbyB0byBlbmQgb2YgbGlzdCIKK21zZ3N0ciAiR2EgbmFhciBoZXQgZWluZCB2YW4gZGUgbGlqc3QiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ1Cittc2dpZCAiUmVxdWVzdCBoZWxwIChjeWNsZSB0aHJvdWdoIGhlbHAgc2NyZWVucykiCittc2dzdHIgIlZyYWFnIGh1bHAgb3AgKHdpc3NlbGVuIHZhbiBodWxwc2NoZXJtZW4pIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0NgorbXNnaWQgIkN5Y2xlIHRocm91Z2ggaW5mb3JtYXRpb24gZGlzcGxheXMiCittc2dzdHIgIldpc3NlbCB0dXNzZW4gaW5mb3JtYXRpZXNjaGVybWVuIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0NworbXNnaWQgIlJlZHJhdyBkaXNwbGF5IgorbXNnc3RyICJTY2hlcm0gb3BuaWV1dyB0ZWtlbmVuIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0OAorbXNnaWQgIlNjcm9sbCBvbndhcmRzIHRocm91Z2ggbGlzdCBieSAxIGxpbmUiCittc2dzdHIgIlNjaHVpZiBkb29yIGRlIGxpanN0IG1ldCAxIHJlZ2VsIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0OQorbXNnaWQgIlNjcm9sbCBiYWNrd2FyZHMgdGhyb3VnaCBsaXN0IGJ5IDEgbGluZSIKK21zZ3N0ciAiU2NodWlmIHRlcnVnIGRvb3IgZGUgbGlqc3QgbWV0IDEgcmVnZWwiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTUwCittc2dpZCAiU2Nyb2xsIG9ud2FyZHMgdGhyb3VnaCBoZWxwL2luZm9ybWF0aW9uIGJ5IDEgbGluZSIKK21zZ3N0ciAiU2NodWlmIGRvb3IgZGUgaHVscC9pbmZvcm1hdGllIG1ldCAxIHJlZ2VsIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1MQorbXNnaWQgIlNjcm9sbCBiYWNrd2FyZHMgdGhyb3VnaCBoZWxwL2luZm9ybWF0aW9uIGJ5IDEgbGluZSIKK21zZ3N0ciAiU2NodWlmIGRvb3IgZGUgaHVscC9pbmZvcm1hdGllIG1ldCAxIHJlZ2VsIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1MgorbXNnaWQgIlNjcm9sbCBvbndhcmRzIHRocm91Z2ggbGlzdCIKK21zZ3N0ciAiU2NodWlmIGRvb3IgZGUgbGlqc3QiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTUzCittc2dpZCAiU2Nyb2xsIGJhY2t3YXJkcyB0aHJvdWdoIGxpc3QiCittc2dzdHIgIlNjaHVpZiB0ZXJ1ZyBkb29yIGRlIGxpanN0IgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1NgorbXNnaWQgIk1hcmsgcGFja2FnZShzKSBmb3IgaW5zdGFsbGF0aW9uIgorbXNnc3RyICJNYXJrZWVyIHBha2tldCh0ZW4pIHZvb3IgaW5zdGFsbGF0aWUiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTU3Cittc2dpZCAiTWFyayBwYWNrYWdlKHMpIGZvciBkZWluc3RhbGxhdGlvbiIKK21zZ3N0ciAiTWFya2VlZXIgcGFra2V0KHRlbikgdm9vciBkZWluc3RhbGxhdGllIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1OAorbXNnaWQgIk1hcmsgcGFja2FnZShzKSBmb3IgZGVpbnN0YWxsIGFuZCBwdXJnZSIKK21zZ3N0ciAiTWFya2VlciBwYWtrZXQodGVuKSB2b29yIGRlaW5zdGFsbGF0aWUgZW4gd2lzc2VuIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1OQorbXNnaWQgIk1ha2UgaGlnaGxpZ2h0IG1vcmUgc3BlY2lmaWMiCittc2dzdHIgIk1hYWsgb3BsaWNodGluZyBtZWVyIHNwZWNpZmllayIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjAKK21zZ2lkICJNYWtlIGhpZ2hsaWdodCBsZXNzIHNwZWNpZmljIgorbXNnc3RyICJNYWFrIG9wbGljaHRpbmcgbWluZGVyIHNwZWNpZmllayIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjEKK21zZ2lkICJTZWFyY2ggZm9yIGEgcGFja2FnZSB3aG9zZSBuYW1lIGNvbnRhaW5zIGEgc3RyaW5nIgorbXNnc3RyICJab2VrIGVlbiBwYWtrZXQgd2FhcnZhbiBkZSBuYWFtIGVlbiB0ZWtlbnJlZWtzIGJldmF0IgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2MgorbXNnaWQgIlJlcGVhdCBsYXN0IHNlYXJjaC4iCittc2dzdHIgIkhlcmhhYWwgbGFhdHN0ZSB6b2Vrb3BkcmFjaHQuIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2MworbXNnaWQgIlN3YXAgc29ydCBvcmRlciBwcmlvcml0eS9zZWN0aW9uIgorbXNnc3RyICJXaXNzZWwgc29ydGVlcnZvbGdvcmRlIHByaW9yaXRlaXQvc2VjdGllIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2NAorbXNnaWQgIlF1aXQsIGNvbmZpcm1pbmcsIGFuZCBjaGVja2luZyBkZXBlbmRlbmNpZXMiCittc2dzdHIgIkJlw6tpbmRpZ2VuLCBtZXQgYmV2ZXN0aWdpbmcgZW4gY29udHJvbGUgYWZoYW5rZWxpamtoZWlkIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2NQorbXNnaWQgIlF1aXQsIGNvbmZpcm1pbmcgd2l0aG91dCBjaGVjayIKK21zZ3N0ciAiQmXDq2luZGlnZW4sIG1ldCBiZXZlc3RpZ2luZyB6b25kZXIgY29udHJvbGUiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY2Cittc2dpZCAiUXVpdCwgcmVqZWN0aW5nIGNvbmZsaWN0L2RlcGVuZGVuY3kgc3VnZ2VzdGlvbnMiCittc2dzdHIgIkJlw6tpbmRpZ2VuLCB6b25kZXIgY29uZmxpY3QvdmVyZWlzdGVuIHN1Z2dlc3RpZXMgdGUgYWNjZXB0ZXJlbiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjcKK21zZ2lkICJBYm9ydCAtIHF1aXQgd2l0aG91dCBtYWtpbmcgY2hhbmdlcyIKK21zZ3N0ciAiQWZicmVrZW4gLSBiZcOraW5kaWdlbiB6b25kZXIgdmVyYW5kZXJpbmdlbiB0ZSBtYWtlbiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjgKK21zZ2lkICJSZXZlcnQgdG8gb2xkIHN0YXRlIGZvciBhbGwgcGFja2FnZXMiCittc2dzdHIgIlRlcnVnZ2FhbiBuYWFyIGRlIG91ZGUgc3RhYXQgdm9vciBhbGxlIHBha2tldHRlbiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjkKK21zZ2lkICJSZXZlcnQgdG8gc3VnZ2VzdGVkIHN0YXRlIGZvciBhbGwgcGFja2FnZXMiCittc2dzdHIgIlRlcnVnZ2FhbiBuYWFyIHZvb3JnZXN0ZWxkZSBzdGF0dXMgdm9vciBhbGxlIHBha2tldHRlbiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNzAKK21zZ2lkICJSZXZlcnQgdG8gZGlyZWN0bHkgcmVxdWVzdGVkIHN0YXRlIGZvciBhbGwgcGFja2FnZXMiCittc2dzdHIgIlRlcnVnZ2FhbiBuYWFyIGRpcmVjdCBnZXZyYWFnZGUgc3RhdHVzIHZvb3IgYWxsZSBwYWtrZXR0ZW4iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTcxCittc2dpZCAiUmV2ZXJ0IHRvIGN1cnJlbnRseSBpbnN0YWxsZWQgc3RhdGUgZm9yIGFsbCBwYWNrYWdlcyIKK21zZ3N0ciAiVGVydWdnYWFuIG5hYXIgZGUgbW9tZW50ZWVsIGdlw69uc3RhbGxlZXJkZSBzdGF0dXMgdm9vciBhbGxlIHBha2tldHRlbiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNzQKK21zZ2lkICJTZWxlY3QgY3VycmVudGx5LWhpZ2hsaWdodGVkIGFjY2VzcyBtZXRob2QiCittc2dzdHIgIlNlbGVjdGVlciBodWlkaWdlIHRvZWdhbmdzbWV0aG9kZSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNzUKK21zZ2lkICJRdWl0IHdpdGhvdXQgY2hhbmdpbmcgc2VsZWN0ZWQgYWNjZXNzIG1ldGhvZCIKK21zZ3N0ciAiQmXDq2luZGlnZW4gem9uZGVyIGRlIHRvZWdhbmdzbWV0aG9kZSB0ZSB2ZXJhbmRlcmVuIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjI5Cittc2dpZCAiS2V5c3Ryb2tlcyIKK21zZ3N0ciAiVG9ldHNlbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoyOQorbXNnaWQgIiIKKyJNb3Rpb24ga2V5czogTmV4dC9QcmV2aW91cywgVG9wL0VuZCwgVXAvRG93biwgQmFja3dhcmRzL0ZvcndhcmRzOlxuIgorIiAgaiwgRG93bi1hcnJvdyAgICAgICAgIGssIFVwLWFycm93ICAgICAgICAgICAgIG1vdmUgaGlnaGxpZ2h0XG4iCisiICBOLCBQYWdlLWRvd24sIFNwYWNlICAgUCwgUGFnZS11cCwgQmFja3NwYWNlICAgc2Nyb2xsIGxpc3QgYnkgMSBwYWdlXG4iCisiICBebiAgICAgICAgICAgICAgICAgICAgXnAgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGxpc3QgYnkgMSBsaW5lXG4iCisiICB0LCBIb21lICAgICAgICAgICAgICAgZSwgRW5kICAgICAgICAgICAgICAgICAganVtcCB0byB0b3AvZW5kIG9mIGxpc3RcbiIKKyIgIHUgICAgICAgICAgICAgICAgICAgICBkICAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyBieSAxIHBhZ2VcbiIKKyIgIF51ICAgICAgICAgICAgICAgICAgICBeZCAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyBieSAxIGxpbmVcbiIKKyIgIEIsIExlZnQtYXJyb3cgICAgICAgICBGLCBSaWdodC1hcnJvdyAgICAgICAgICBwYW4gZGlzcGxheSBieSAxLzMgc2NyZWVuXG4iCisiICBeYiAgICAgICAgICAgICAgICAgICAgXmYgICAgICAgICAgICAgICAgICAgICAgcGFuIGRpc3BsYXkgYnkgMSBjaGFyYWN0ZXJcbiIKKyJcbiIKKyJNYXJrIHBhY2thZ2VzIGZvciBsYXRlciBwcm9jZXNzaW5nOlxuIgorIiArLCBJbnNlcnQgIGluc3RhbGwgb3IgdXBncmFkZSAgICAgID0sIEggIGhvbGQgaW4gcHJlc2VudCBzdGF0ZVxuIgorIiAtLCBEZWxldGUgIHJlbW92ZSAgICAgICAgICAgICAgICAgIDosIEcgIHVuaG9sZDogdXBncmFkZSBvciBsZWF2ZSAiCisidW5pbnN0YWxsZWRcbiIKKyIgXyAgICAgICAgICByZW1vdmUgJiBwdXJnZSBjb25maWdcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBNaXNjZWxsYW5lb3VzOlxuIgorIlF1aXQsIGV4aXQsIG92ZXJ3cml0ZSAobm90ZSBjYXBpdGFscyEpOiAgICAgICA/LCBGMSByZXF1ZXN0IGhlbHAgKGFsc28gIgorIkhlbHApXG4iCisiIFJldHVybiAgQ29uZmlybSwgcXVpdCAoY2hlY2sgZGVwZW5kZW5jaWVzKSAgIGksIEkgIHRvZ2dsZS9jeWNsZSBpbmZvICIKKyJkaXNwbGF5c1xuIgorIiAgIFEgICAgIENvbmZpcm0sIHF1aXQgKG92ZXJyaWRlIGRlcC5zKSAgICAgICBvLCBPICBjeWNsZSB0aHJvdWdoIHNvcnQgIgorIm9wdGlvbnNcbiIKKyIgWCwgRXNjICBlWGl0LCBhYmFuZG9uaW5nIGFueSBjaGFuZ2VzIG1hZGUgICAgdiwgViAgY2hhbmdlIHN0YXR1cyBkaXNwbGF5ICIKKyJvcHRzXG4iCisiICAgUiAgICAgUmV2ZXJ0IHRvIHN0YXRlIGJlZm9yZSB0aGlzIGxpc3QgICAgICBebCAgIHJlZHJhdyBkaXNwbGF5XG4iCisiICAgVSAgICAgc2V0IGFsbCB0byBzVWdnZXN0ZWQgc3RhdGUgICAgICAgICAgICAgLyAgIHNlYXJjaCAoUmV0dXJuIHRvICIKKyJjYW5jZWwpXG4iCisiICAgRCAgICAgc2V0IGFsbCB0byBEaXJlY3RseSByZXF1ZXN0ZWQgc3RhdGUgIG4sIFxcICByZXBlYXQgbGFzdCBzZWFyY2hcbiIKK21zZ3N0ciAiIgorIkJld2VnaW5nc3RvZXRzZW46IFZvbGdlbmRlL1ZvcmlnZSwgQmVnaW4vRWluZGUsIE9tbGFhZy9PbWhvb2csIEFjaHRlci0vIgorIlZvb3J1aXQ6XG4iCisiIFBpamx0LW9tbGFhZywgaiAgICBQaWpsdC1vbWhvb2csIGsgICBiZXdlZWcgc2VsZWN0aWVcbiIKKyIgTixQYWdlLWRvd24sU3BhdGllICAgUCxQYWdlLXVwLEJhY2tzcGFjZSAgIHZlcnNjaHVpZiBsaWpzdCBtZXQgMSBwYWdpbmFcbiIKKyIgXm4gICAgICAgICAgICAgICAgICAgICBecCAgICAgICAgICAgICAgICAgICAgICAgdmVyc2NodWlmIGxpanN0IG1ldCAxICIKKyJyZWdlbFxuIgorIiB0LCBIb21lICAgICAgICAgICAgIGUsIEVuZCAgICAgICAgICAgICAgICAgZ2EgbmFhciBiZWdpbi9laW5kZSBsaWpzdFxuIgorIiB1ICAgICAgICAgICAgICAgICAgICAgICAgZCAgICAgICAgICAgICAgICAgICAgICAgICAgdmVyc2NodWlmIGluZm8gbWV0IDEgIgorInBhZ2luYVxuIgorIiBedSAgICAgICAgICAgICAgICAgICAgIF5kICAgICAgICAgICAgICAgICAgICAgICB2ZXJzY2h1aWYgaW5mbyBtZXQgMSByZWdlbFxuIgorIiBCLCBQaWpsLUxpbmtzICAgICAgICBGLCBQaWpsLVJlY2h0cyAgICAgIHZlcnNjaHVpZiBzY2hlcm0gbWV0IDEvM1xuIgorIiBeYiAgICAgICAgICAgICAgICAgICAgIF5mICAgICAgICAgICAgICAgICAgICAgICAgdmVyc2NodWlmIHNjaGVybSBtZXQgMSAiCisidGVrZW5cbiIKKyJcbiIKKyJNYXJrZWVyIHBha2tldHRlbiB2b29yIGxhdGVyZSBiZWhhbmRlbGluZzpcbiIKKyIgKyBJbnNlcnQgIGluc3RhbGxlZXIvd2VyayBiaWogICAgID0sIEggIGJldnJpZXMgaHVpZGlnZSBzdGFhdFxuIgorIiAtICBEZWxldGUgIHZlcndpamRlciAgICAgICAgICAgICAgIDosIEcgIG9udC12YXN0OiBiaWp3ZXJrZW4vbmlldCAiCisiaW5zdGFsbGVyZW5cbiIKKyJfICB2ZXJ3aWpkZXIgJiB3aXNzZW4gY29uZmlndXJhdGllXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBEaXZlcnNlbjpcbiIKKyJFbmQsIHN0b3BwZW4sIG92ZXJzY2hyaWp2ZW4gKGxldCBvcCBob29mZGxldHRlcnMpICAgPywgRjEgaHVscCAob29rIEhlbHApXG4iCisiIEVudGVyICBCZXZlc3RpZywgZWluZGUgKGNvbnRyb2xlIGFmaGFua2VsaWpraGVpZCkgIGksIEkgIHdpc3NlbCBpbmZvICIKKyJzY2hlcm1lblxuIgorIiBRICAgIEJldmVzdGlnLCBlaW5kZSAoZm9yY2VlciBhZmhhbmtlbGlqa2hlaWQpICAgICAgIG8sIE8gIHdpc3NlbCBzb3J0ZWVyICIKKyJvcHRpZXNcbiIKKyIgWCwgRXNjIEVpbmRlLCB2ZXJhbmRlcmluZ2VuIGdhYW4gdmVybG9yZW4gICAgICAgICAgdiwgViAgd2lzc2VsIHN0YXR1cyAiCisib3B0aWVzXG4iCisiICBSICAgIFRlcnVnIG5hYXIgYmVnaW5zaXR1YXRpZSAgICAgICAgICAgICAgICAgICAgICAgXmwgICBvcG5pZXV3IHRla2VuZW5cbiIKKyIgIFUgICAgWmV0IGFsbGVzIG9wIHZvb3JnZXN0ZWxkZSBzdGF0dXMgICAgICAgICAvICAgIHpvZWtlbiAoRW50ZXI9ZWluZGUpXG4iCisiICBEICAgIFpldCBhbGxlcyBvcCBkaXJlY3QgZ2V2cmFhZ2RlIHN0YXR1cyAgIFxcICAgIGhlcmhhYWwgem9la2VuXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6NTUKK21zZ2lkICJJbnRyb2R1Y3Rpb24gdG8gcGFja2FnZSBzZWxlY3Rpb25zIgorbXNnc3RyICJJbmxlaWRpbmcgaW4gcGFra2V0dGVubGlqc3QiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6NTUKK21zZ2lkICIiCisiV2VsY29tZSB0byBkc2VsZWN0J3MgbWFpbiBwYWNrYWdlIGxpc3RpbmcuXG4iCisiXG4iCisiWW91IHdpbGwgYmUgcHJlc2VudGVkIHdpdGggYSBsaXN0IG9mIHBhY2thZ2VzIHdoaWNoIGFyZSBpbnN0YWxsZWQgb3IgIgorImF2YWlsYWJsZVxuIgorImZvciBpbnN0YWxsYXRpb24uICBZb3UgY2FuIG5hdmlnYXRlIGFyb3VuZCB0aGUgbGlzdCB1c2luZyB0aGUgY3Vyc29yIGtleXMsXG4iCisibWFyayBwYWNrYWdlcyBmb3IgaW5zdGFsbGF0aW9uICh1c2luZyBgKycpIG9yIGRlaW5zdGFsbGF0aW9uICh1c2luZyBgLScpLlxuIgorIlBhY2thZ2VzIGNhbiBiZSBtYXJrZWQgZWl0aGVyIHNpbmdseSBvciBpbiBncm91cHM7IGluaXRpYWxseSB5b3Ugd2lsbCBzZWUgIgorInRoYXRcbiIKKyJ0aGUgbGluZSBgQWxsIHBhY2thZ2VzJyBpcyBzZWxlY3RlZC4gIGArJywgYC0nIGFuZCBzbyBvbiB3aWxsIGFmZmVjdCBhbGwgIgorInRoZVxuIgorInBhY2thZ2VzIGRlc2NyaWJlZCBieSB0aGUgaGlnaGxpZ2h0ZWQgbGluZS5cbiIKKyJcbiIKKyJTb21lIG9mIHlvdXIgY2hvaWNlcyB3aWxsIGNhdXNlIGNvbmZsaWN0cyBvciBkZXBlbmRlbmN5IHByb2JsZW1zOyB5b3Ugd2lsbCAiCisiYmVcbiIKKyJnaXZlbiBhIHN1Yi1saXN0IG9mIHRoZSByZWxldmFudCBwYWNrYWdlcywgc28gdGhhdCB5b3UgY2FuIHNvbHZlIHRoZSAiCisicHJvYmxlbXMuXG4iCisiXG4iCisiWW91IHNob3VsZCByZWFkIHRoZSBsaXN0IG9mIGtleXMgYW5kIHRoZSBleHBsYW5hdGlvbnMgb2YgdGhlIGRpc3BsYXkuXG4iCisiTXVjaCBvbi1saW5lIGhlbHAgaXMgYXZhaWxhYmxlLCBwbGVhc2UgbWFrZSB1c2Ugb2YgaXQgLSBwcmVzcyBgPycgYXRcbiIKKyJhbnkgdGltZSBmb3IgaGVscC5cbiIKKyJcbiIKKyJXaGVuIHlvdSBoYXZlIGZpbmlzaGVkIHNlbGVjdGluZyBwYWNrYWdlcywgcHJlc3MgPGVudGVyPiB0byBjb25maXJtICIKKyJjaGFuZ2VzLFxuIgorIm9yIGBYJyB0byBxdWl0IHdpdGhvdXQgc2F2aW5nIGNoYW5nZXMuIEEgZmluYWwgY2hlY2sgb24gY29uZmxpY3RzIGFuZFxuIgorImRlcGVuZGVuY2llcyB3aWxsIGJlIGRvbmUgLSBoZXJlIHRvbyB5b3UgbWF5IHNlZSBhIHN1Ymxpc3QuXG4iCisiXG4iCisiUHJlc3MgPHNwYWNlPiB0byBsZWF2ZSBoZWxwIGFuZCBlbnRlciB0aGUgbGlzdCBub3cuXG4iCittc2dzdHIgIiIKKyJXZWxrb20gYmlqIGRlIGhvb2ZkcGFra2V0bGlqc3QuXG4iCisiXG4iCisiVSBrcmlqZ3Qgem9tZXRlZW4gZWVuIGxpanN0IHRlIHppZW4gdmFuIHBha2tldHRlbiBkaWUgZ2XDr25zdGFsbGVlcmQgb2YgIgorImJlc2NoaWstXG4iCisiYmFhciB6aWpuIHZvb3IgaW5zdGFsbGF0aWUuICBVIGt1bnQgZG9vciBkZSBsaWpzdCBoZWVuIGxvcGVuIG1ldCBkZSAiCisiY3Vyc29ydG9ldHNlbixcbiIKKyJwYWtrZXR0ZW4gbWFya2VyZW4gb20gdGUgaW5zdGFsbGVyZW4gKG1ldCBgKycpIG9mIGRlaW5zdGFsbGVyZW4gKG1ldCBgLScpLlxuIgorIlBha2tldHRlbiBrdW5uZW4gYWxsZWVuIG9mIGluIGdyb2VwZW4gZ2VtYXJrZWVyZCB3b3JkZW47IGFhbnZhbmtlbGlqayB6dWx0ICIKKyJ1XG4iCisiemllbiBkYXQgZGUgcmVnZWwgbWV0IGBBbGxlIHBha2tldHRlbicgZ2VzZWxlY3RlZXJkIGlzLlxuIgorImArJywgYC0nLCBlbiBkZXJnZWxpamtlIHdlcmtlbiBvcCBhbGxlIHBha2tldHRlbiBvbXNjaHJldmVuIGRvb3IgZGUgIgorIm9wZ2VsaWNodGVcbiIKKyJyZWdlbC4gXG4iCisiU29tbWlnZSBrZXV6ZXMgenVsbGVuIGNvbmZsaWN0ZW4gb2YgdmVyZWlzdGVucHJvYmxlbWVuIHZlcm9vcnpha2VuOyB1XG4iCisiemlldCBkYW4gZWVuIGxpanN0IHZhbiByZWxldmFudGUgcGFra2V0dGVuLCB6b2RhdCB1IGhldCBwcm9ibGVlbSBrdW50ICIKKyJvcGxvc3Nlbi5cbiIKKyJcbiIKKyJVIGt1bnQgYmVzdCBkZSBsaWpzdCBtZXQgc25lbHRvZXRzZW4gZW4gZGUgdWl0bGVnIG92ZXIgZGUgd2VlcmdhdmUgZ29lZCBcbiIKKyJkb29ybGV6ZW4uIEVyIGlzIGVlbiBncm90ZSBob2V2ZWVsaGVpZCBvbi1saW5lIGhlbHAgYmVzY2hpa2JhYXIsIG1hYWsgaGllciAiCisiZHVzXG4iCisiZ2VicnVpayB2YW4hIFUga29tdCBvcCBlbGsgbW9tZW50IGJpaiBkZSBoZWxwIGRvb3IgJz8nIHRlIGRydWtrZW4uXG4iCisiQWxzIHUgdGV2cmVkZW4gYmVudCBtZXQgZGUgbGlqc3QgbW9ldCB1IG9wIEVudGVyIGRydWtrZW4gb20gZGUgIgorInZlcmFuZGVyaW5nZW5cbiIKKyJ0ZSBiZXZlc3RpZ2VuLCBvZiAnWCcgb20gZGUgbGlqc3QgdGUgdmVybGF0ZW4gem9uZGVyIGFhbnBhc3NpbmdlbiB1aXQgdGUgIgorInZvZXJlbi5cbiIKKyJFZW4gbGFhdHN0ZSBjb250cm9sZSBvcCBjb25mbGljdGVuIGVuIHZlcmVpc3RlbiB3b3JkdCB1aXRnZXZvZXJkIC0gb29rIGhpZXIgIgorImt1bnRcbiIKKyIgdSBub2cgZWVuIGxpanN0IGtyaWpnZW4uXG4iCisiXG4iCisiRHJ1ayBvcCBTcGF0aWUgb20gaHVscCB0ZSB2ZXJsYXRlbiBlbiBkZSBiaW5uZW4gdGUgZ2Fhbi5cbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo4MAorbXNnaWQgIkludHJvZHVjdGlvbiB0byByZWFkLW9ubHkgcGFja2FnZSBsaXN0IGJyb3dzZXIiCittc2dzdHIgIklubGVpZGluZyB0b3QgZGUgcGFra2V0dGVubGlqc3Qgc2VsZWN0aWUgKGFsbGVlbi1sZXplbikiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6ODAKK21zZ2lkICIiCisiV2VsY29tZSB0byBkc2VsZWN0J3MgbWFpbiBwYWNrYWdlIGxpc3RpbmcuXG4iCisiXG4iCisiWW91IHdpbGwgYmUgcHJlc2VudGVkIHdpdGggYSBsaXN0IG9mIHBhY2thZ2VzIHdoaWNoIGFyZSBpbnN0YWxsZWQgb3IgIgorImF2YWlsYWJsZVxuIgorImZvciBpbnN0YWxsYXRpb24uICBTaW5jZSB5b3UgZG8gbm90IGhhdmUgdGhlIHByaXZpbGVnZSBuZWNlc3NhcnkgdG8gdXBkYXRlXG4iCisicGFja2FnZSBzdGF0ZXMsIHlvdSBhcmUgaW4gYSByZWFkLW9ubHkgbW9kZS4gIFlvdSBjYW4gbmF2aWdhdGUgYXJvdW5kIHRoZVxuIgorImxpc3QgdXNpbmcgdGhlIGN1cnNvciBrZXlzIChwbGVhc2Ugc2VlIHRoZSBgS2V5c3Ryb2tlcycgaGVscCBzY3JlZW4pLCAiCisib2JzZXJ2ZVxuIgorInRoZSBzdGF0dXMgb2YgdGhlIHBhY2thZ2VzIGFuZCByZWFkIGluZm9ybWF0aW9uIGFib3V0IHRoZW0uXG4iCisiXG4iCisiWW91IHNob3VsZCByZWFkIHRoZSBsaXN0IG9mIGtleXMgYW5kIHRoZSBleHBsYW5hdGlvbnMgb2YgdGhlIGRpc3BsYXkuXG4iCisiTXVjaCBvbi1saW5lIGhlbHAgaXMgYXZhaWxhYmxlLCBwbGVhc2UgbWFrZSB1c2Ugb2YgaXQgLSBwcmVzcyBgPycgYXRcbiIKKyJhbnkgdGltZSBmb3IgaGVscC5cbiIKKyJcbiIKKyJXaGVuIHlvdSBoYXZlIGZpbmlzaGVkIGJyb3dzaW5nLCBwcmVzcyBgUScgb3IgPGVudGVyPiB0byBxdWl0LlxuIgorIlxuIgorIlByZXNzIDxzcGFjZT4gdG8gbGVhdmUgaGVscCBhbmQgZW50ZXIgdGhlIGxpc3Qgbm93LlxuIgorbXNnc3RyICIiCisiV2Vsa29tIGJpaiBkZSBob29mZHBha2tldGxpanN0LlxuIgorIlxuIgorIlUga3Jpamd0IHpvbWV0ZWVuIGVlbiBsaWpzdCB0ZSB6aWVuIHZhbiBwYWtrZXR0ZW4gZGllIGdlw69uc3RhbGxlZXJkIG9mICIKKyJiZXNjaGlrLVxuIgorImJhYXIgemlqbiB2b29yIGluc3RhbGxhdGllLiBPbWRhdCB1IG5pZXQgZGUgYmVub2RpZ2RlIHJlY2h0ZW4gaGVlZnQgb20gZGUgXG4iCisicGFra2V0c3RhdHVzIHRlIHZlcmFuZGVyZW4sIGJldmluZHQgdSB6aWNoIGluIGRlIGFsbGVlbi1sZXplbiBtb2R1cy4gVSAiCisia3VudCBcbiIKKyJkZSBsaWpzdCBiZWtpamtlbiBtLmIudi4gZGUgY3Vyc29ydG9ldHNlbih6aWUgaGV0ICd0b2V0c2FhbnNsYWdlbicgIgorImhlbHBzY2hlcm0pXG4iCisiZGUgc3RhdHVzIHZhbiBwYWtrZXR0ZW4gbmFnYWFuLCBlbiBpbmZvcm1hdGllIG92ZXIgZGV6ZSBwYWtrZXR0ZW4gbmFsZXplbi5cbiIKKyJcbiIKKyJVIGt1bnQgYmVzdCBkZSBsaWpzdCBtZXQgdG9ldHNhYW5zbGFnZW4gZW4gZGUgdWl0bGVnIG92ZXIgZGUgd2VlcmdhdmUgIgorImRvb3ItIFxuIgorImxlemVuLiBFciBpcyB2ZWVsIG9uLWxpbmUgaHVscCBiZXNjaGlrYmFhciwgZ2VsaWV2ZSBkYWFyIGR1cyBnZWJydWlrIHZhbiAiCisidGUgXG4iCisibWFrZW4hICBEcnVrIG9wIG9tIGhldCBldmVuIHdlbGsgbW9tZW50IG9wICc/JyAgb20gaGV0IGhlbHBzY2hlcm0gdGUgIgorImJla29tZW5cbiIKKyJcbiIKKyJBbHMgdSBrbGFhciBiZW50IG1ldCBraWprZW4sIGRydWsgb3AgJ1EnIG9mICdlbnRlcicgb20gYWYgdGUgc2x1aXRlbi5cbiIKKyJcbiIKKyJEcnVrIG9wICdzcGF0aWUnIG9tIGRlIGhlbHAgdGUgdmVybGF0ZW4gZW4gZGUgbGlqc3QgdGUgYmVraWprZW4uXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6OTkKK21zZ2lkICJJbnRyb2R1Y3Rpb24gdG8gY29uZmxpY3QvZGVwZW5kZW5jeSByZXNvbHV0aW9uIHN1Yi1saXN0IgorbXNnc3RyICJJbmxlaWRpbmcgaW4gc3VibGlqc3Qgdm9vciBvcGxvc3NlbiBjb25mbGljdC9hZmhhbmtlbGlqa2hlaWQiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6OTkKK21zZ2lkICIiCisiRGVwZW5kZW5jeS9jb25mbGljdCByZXNvbHV0aW9uIC0gaW50cm9kdWN0aW9uLlxuIgorIlxuIgorIk9uZSBvciBtb3JlIG9mIHlvdXIgY2hvaWNlcyBoYXZlIHJhaXNlZCBhIGNvbmZsaWN0IG9yIGRlcGVuZGVuY3kgcHJvYmxlbSAtXG4iCisic29tZSBwYWNrYWdlcyBzaG91bGQgb25seSBiZSBpbnN0YWxsZWQgaW4gY29uanVuY3Rpb24gd2l0aCBjZXJ0YWluIG90aGVycywgIgorImFuZFxuIgorInNvbWUgY29tYmluYXRpb25zIG9mIHBhY2thZ2VzIG1heSBub3QgYmUgaW5zdGFsbGVkIHRvZ2V0aGVyLlxuIgorIlxuIgorIllvdSB3aWxsIHNlZSBhIHN1Yi1saXN0IGNvbnRhaW5pbmcgdGhlIHBhY2thZ2VzIGludm9sdmVkLiAgVGhlIGJvdHRvbSBoYWxmICIKKyJvZlxuIgorInRoZSBkaXNwbGF5IHNob3dzIHJlbGV2YW50IGNvbmZsaWN0cyBhbmQgZGVwZW5kZW5jaWVzOyB1c2UgYGknIHRvIGN5Y2xlICIKKyJiZXR3ZWVuXG4iCisidGhhdCwgdGhlIHBhY2thZ2UgZGVzY3JpcHRpb25zIGFuZCB0aGUgaW50ZXJuYWwgY29udHJvbCBpbmZvcm1hdGlvbi5cbiIKKyJcbiIKKyJBIHNldCBvZiBgc3VnZ2VzdGVkJyBwYWNrYWdlcyBoYXMgYmVlbiBjYWxjdWxhdGVkLCBhbmQgdGhlIGluaXRpYWwgbWFya2luZ3MgIgorImluXG4iCisidGhpcyBzdWItbGlzdCBoYXZlIGJlZW4gc2V0IHRvIG1hdGNoIHRob3NlLCBzbyB5b3UgY2FuIGp1c3QgaGl0IFJldHVybiB0b1xuIgorImFjY2VwdCB0aGUgc3VnZ2VzdGlvbnMgaWYgeW91IHdpc2guICBZb3UgbWF5IGFib3J0IHRoZSBjaGFuZ2Uocykgd2hpY2ggIgorImNhdXNlZFxuIgorInRoZSBwcm9ibGVtKHMpLCBhbmQgZ28gYmFjayB0byB0aGUgbWFpbiBsaXN0LCBieSBwcmVzc2luZyBjYXBpdGFsIGBYJy5cbiIKKyJcbiIKKyJZb3UgY2FuIGFsc28gbW92ZSBhcm91bmQgdGhlIGxpc3QgYW5kIGNoYW5nZSB0aGUgbWFya2luZ3Mgc28gdGhhdCB0aGV5IGFyZSAiCisibW9yZVxuIgorImxpa2Ugd2hhdCB5b3Ugd2FudCwgYW5kIHlvdSBjYW4gYHJlamVjdCcgbXkgc3VnZ2VzdGlvbnMgYnkgdXNpbmcgdGhlICIKKyJjYXBpdGFsXG4iCisiYEQnIG9yIGBSJyBrZXlzIChzZWUgdGhlIGtleWJpbmRpbmdzIGhlbHAgc2NyZWVuKS4gIFlvdSBjYW4gdXNlIGNhcGl0YWwgYFEnICIKKyJ0b1xuIgorImZvcmNlIG1lIHRvIGFjY2VwdCB0aGUgc2l0dWF0aW9uIGN1cnJlbnRseSBkaXNwbGF5ZWQsIGluIGNhc2UgeW91IHdhbnQgdG9cbiIKKyJvdmVycmlkZSBhIHJlY29tbWVuZGF0aW9uIG9yIHRoaW5rIHRoYXQgdGhlIHByb2dyYW0gaXMgbWlzdGFrZW4uXG4iCisiXG4iCisiUHJlc3MgPHNwYWNlPiB0byBsZWF2ZSBoZWxwIGFuZCBlbnRlciB0aGUgc3ViLWxpc3Q7IHJlbWVtYmVyOiBwcmVzcyBgPycgZm9yICIKKyJoZWxwLlxuIgorbXNnc3RyICIiCisiQWZoYW5rZWxpamtoZWlkcy0vY29uZmxpY3RvcGxvc3NlciAtIGlubGVpZGluZy5cbiIKKyJcbiIKKyJFZW4gb2YgbWVlciB2YW4gdXcga2V1emVzIGhlYmJlbiBlZW4gdmVyZWlzdGVuIG9mIGNvbmZsaWN0cHJvYmxlZW1cbiIKKyJvcGdlcm9lcGVuIC0gc29tbWlnZSBwYWtrZXR0ZW4gbW9nZW4gYWxsZWVuIGdlw69uc3RhbGxlZXJkIHdvcmRlbiBpbiAiCisiY29tYmluYXRpZVxuIgorIm1ldCBhbmRlcmUsIGVuIHNvbW1pZ2UgY29tYmluYXRpZXMgbW9nZW4gbmlldCBzYW1lbiBnZcOvbnN0YWxsZWVyZCB6aWpuLlxuIgorIlxuIgorIlUga3Jpamd0IGVlbiBzdWJsaWpzdCBtZXQgYWxsZSBiZXRyb2trZW4gcGFra2V0dGVuIHRlIHppZW4uICBEZSBvbmRlcnN0ZSAiCisiaGVsZnQgdmFuIGhldFxuIgorInNjaGVybSBiZXZhdCBkZSByZWxldmFudGUgY29uZmxpY3RlbiBlbiB2ZXJlaXN0ZW47IGdlYnJ1aWsgYGknIG9tIHRlXG4iCisid2lzc2VsZW4gZGFhcnR1c3NlbiwgZGUgcGFra2V0b21zY2hyaWp2aW5nZW4gZW4gZGUgaW50ZXJuZSBiZXN0dXJpbmdzaW5mby5cbiIKKyJcbiIKKyJFZW4gcGFhciBgdm9vcmdlc3RlbGRlJyBwYWtrZXR0ZW4ga3VubmVuIGJlcmVrZW5kIHppam4sIGVuIGRlICIKKyJiZWdpbm1hcmtlcmluZ2VuXG4iCisiemlqbiBvdmVyZWVua29tc3RpZyBpbmdlc3RlbGQsIHpvZGF0IHUgZ2V3b29uIG9wIFJldHVybiBrdW50IGRydWtrZW4gYWxzIHUgIgorImhldFxuIgorImVyIG1lZSBlZW5zIGJlbnQuICBVIGt1bnQgZGUgdmVyYW5kZXJpbmcoZW4pIGFmYnJla2VuIGRpZSBkZSBwcm9ibGVtZW4gIgorInZlcm9vci1cbiIKKyJ6YWFrdGVuLCBlbiB0ZXJ1Z2dhYW4gbmFhciBkZSBob29mZGxpanN0IGRvb3Igb3AgZGUgaG9vZmRsZXR0ZXIgYFgnIHRlICIKKyJkcnVra2VuLlxuIgorIlxuIgorIlUga3VudCBvb2sgZG9vciBkZSBsaWpzdCBiZXdlZ2VuIGVuIGRlIG1hcmtlcmluZ2VuIHZlcmFuZGVyZW4gem9kYXQgemUgbWVlclxuIgorIm92ZXJlZW5rb21lbiBtZXQgd2F0IHUgd2lsdCwgZW4gdSBrdW50IG1pam4gc3VnZ2VzdGllcyB2ZXJ3ZXJwZW4gbWV0IGRlICIKKyJob29mZC1cbiIKKyJsZXR0ZXJzIGBEJyBvZiBgUicgKHppZSBodWxwc2NoZXJtIG92ZXIgdG9ldHNlbikuICBVIGt1bnQgZGUgaG9vZmRsZXR0ZXIgIgorImBRJ1xuIgorImdlYnJ1aWtlbiBvbSBkZSBnZXRvb25kZSBsaWpzdCBnZWZvcmNlZXJkIHRlIGFjY2VwdGVyZW4sIGluIGhldCBnZXZhbCBkYXQgdVxuIgorImRlbmt0IGRhdCBoZXQgcHJvZ3JhbW1hIGhldCBtaXMgaGVlZnQuXG4iCisiXG4iCisiRHJ1ayBvcCBTcGF0aWUgb20gaHVscCB0ZSB2ZXJsYXRlbiBlbiBkZSBzdWJsaWpzdCBiaW5uZW4gdGUgZ2FhbjsgVmVyZ2VldCAiCisib29rIG5pZXRcbiIKKyJkYXQgJz8nIGRydWtrZW4gamUgbmFhciBkZSBoZWxwIGJyZW5ndC5cbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxMjUKK21zZ2lkICJEaXNwbGF5LCBwYXJ0IDE6IHBhY2thZ2UgbGlzdGluZyBhbmQgc3RhdHVzIGNoYXJzIgorbXNnc3RyICJTY2hlcm0sIGRlZWwgMTogcGFra2V0bGlqc3QgZW4gc3RhdHVzdGVrZW5zIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjEyNQorbXNnaWQgIiIKKyJUaGUgdG9wIGhhbGYgb2YgdGhlIHNjcmVlbiBzaG93cyBhIGxpc3Qgb2YgcGFja2FnZXMuICBGb3IgZWFjaCBwYWNrYWdlIHlvdSAiCisic2VlXG4iCisiZm91ciBjb2x1bW5zIGZvciBpdHMgY3VycmVudCBzdGF0dXMgb24gdGhlIHN5c3RlbSBhbmQgbWFyay4gIEluIHRlcnNlIG1vZGUgIgorIih1c2VcbiIKKyJgdicgdG8gdG9nZ2xlIHZlcmJvc2UgZGlzcGxheSkgdGhlc2UgYXJlIHNpbmdsZSBjaGFyYWN0ZXJzLCBmcm9tIGxlZnQgdG8gIgorInJpZ2h0OlxuIgorIlxuIgorIiBFcnJvciBmbGFnOiBTcGFjZSAtIG5vIGVycm9yIChidXQgcGFja2FnZSBtYXkgYmUgaW4gYnJva2VuIHN0YXRlIC0gc2VlICIKKyJiZWxvdylcbiIKKyIgICAgICAgICAgICAgIGBSJyAgLSBzZXJpb3VzIGVycm9yIGR1cmluZyBpbnN0YWxsYXRpb24sIG5lZWRzICIKKyJyZWluc3RhbGxhdGlvbjtcbiIKKyIgSW5zdGFsbGVkIHN0YXRlOiAgICAgU3BhY2UgICAgLSBub3QgaW5zdGFsbGVkO1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgYConICAgICAtIGluc3RhbGxlZDtcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgIGAtJyAgICAgLSBub3QgaW5zdGFsbGVkIGJ1dCBjb25maWcgZmlsZXMgcmVtYWluO1xuIgorIiAgIHBhY2thZ2VzIGluIHRoZXNlIHsgYFUnICAgICAtIHVucGFja2VkIGJ1dCBub3QgeWV0IGNvbmZpZ3VyZWQ7XG4iCisiICAgc3RhdGVzIGFyZSBub3QgICAgeyBgQycgICAgIC0gaGFsZi1jb25maWd1cmVkIChhbiBlcnJvciBoYXBwZW5lZCk7XG4iCisiICAgKHF1aXRlKSBwcm9wZXJseSAgeyBgSScgICAgIC0gaGFsZi1pbnN0YWxsZWQgKGFuIGVycm9yIGhhcHBlbmVkKTtcbiIKKyIgICBpbnN0YWxsZWQgICAgICAgICB7IGBXJyxgdCcgLSB0cmlnZ2VycyBhcmUgYXdhaXRlZCByZXNwLiBwZW5kaW5nLlxuIgorIiBPbGQgbWFyazogd2hhdCB3YXMgcmVxdWVzdGVkIGZvciB0aGlzIHBhY2thZ2UgYmVmb3JlIHByZXNlbnRpbmcgdGhpcyBsaXN0O1xuIgorIiBNYXJrOiB3aGF0IGlzIHJlcXVlc3RlZCBmb3IgdGhpcyBwYWNrYWdlOlxuIgorIiAgYConOiBtYXJrZWQgZm9yIGluc3RhbGxhdGlvbiBvciB1cGdyYWRlO1xuIgorIiAgYC0nOiBtYXJrZWQgZm9yIHJlbW92YWwsIGJ1dCBhbnkgY29uZmlndXJhdGlvbiBmaWxlcyB3aWxsIHJlbWFpbjtcbiIKKyIgIGA9Jzogb24gaG9sZDogcGFja2FnZSB3aWxsIG5vdCBiZSBwcm9jZXNzZWQgYXQgYWxsO1xuIgorIiAgYF8nOiBtYXJrZWQgZm9yIHB1cmdlIGNvbXBsZXRlbHkgLSBldmVuIHJlbW92ZSBjb25maWd1cmF0aW9uO1xuIgorIiAgYG4nOiBwYWNrYWdlIGlzIG5ldyBhbmQgaGFzIHlldCB0byBiZSBtYXJrZWQgZm9yIGluc3RhbGwvcmVtb3ZlLyZjLlxuIgorIlxuIgorIkFsc28gZGlzcGxheWVkIGFyZSBlYWNoIHBhY2thZ2UncyBQcmlvcml0eSwgU2VjdGlvbiwgbmFtZSwgaW5zdGFsbGVkIGFuZFxuIgorImF2YWlsYWJsZSB2ZXJzaW9uIG51bWJlcnMgKHNoaWZ0LVYgdG8gZGlzcGxheS9oaWRlKSBhbmQgc3VtbWFyeSAiCisiZGVzY3JpcHRpb24uXG4iCittc2dzdHIgIiIKKyJEZSBib3ZlbnN0ZSBoZWxmdCB2YW4gaGV0IHNjaGVybSBnZWVmdCBlZW4gbGlqc3QgdmFuIHBha2tldHRlbi4gIFZvb3IgaWVkZXIgIgorInBha2tldFxuIgorInZpZXIga29sb21tZW4gbWV0IGRlIGh1aWRpZ2Ugc3RhdHVzIG9wIGhldCBzeXN0ZWVtIGVuIG1hcmtlcmluZy4gIEluIGRlICIKKyJrb3J0ZVxuIgorIm1vZHVzIChnZWJydWlrIGB2JyBvbSB0ZSB3aXNzZWxlbikgemlqbiBkaXQgZW5rZWxlIHRla2VucywgbGlua3MgbmFhciAiCisicmVjaHRzOlxuIgorIlxuIgorIkZvdXR2bGFnOiBTcGF0aWUgLSBnZWVuIGZvdXQgKG1hYXIgcGFra2V0IGthbiBrYXBvdCB6aWpuIC0gemllIGhpZXJvbmRlcilcbiIKKyIgICAgICAgICAgICAgICBgUicgIC0gZXJuc3RpZ2UgZm91dCBiaWogaW5zdGFsbGF0aWUsIGhlcmluc3RhbGxhdGllIG5vZGlnXG4iCisiIEdlw69uc3RhbGxlZXJkOiAgICAgIFNwYXRpZSAtIG5pZXQgZ2XDr25zdGFsbGVlcmQ7XG4iCisiICAgICAgICAgICAgICAgICAgICAgIGAqJyAgIC0gZ2XDr25zdGFsbGVlcmQ7XG4iCisiICAgICAgICAgICAgICAgICAgICAgIGAtJyAgIC0gbmlldCBnZcOvbnN0YWxsZWVyZCBtYWFyIGNvbmZpZyBiZXN0YWF0IG5vZztcbiIKKyIgIHBha2tldHRlbiBtZXQgZGV6ZSB7IGBVJyAgIC0gdWl0Z2VwYWt0IG1hYXIgbm9nIG5pZXQgZ2Vjb25maWd1cmVlcmQ7XG4iCisiICBzdGF0dXNzZW4gemlqbiBuaWV0ICAgICB7IGBDJyAgIC0gaGFsZmdlY29uZmlndXJlZXJkIChlciBnaW5nIGlldHMgZm91dCk7XG4iCisiICAoaGVsZW1hYWwpIGdvZWQgICAgICAgIHsgYEknICAgLSBoYWxmZ2XDr25zdGFsbGVlcmQgKGVyIGdpbmcgaWV0cyBmb3V0KS5cbiIKKyIgIGdlw69uc3RhbGxlZXJkICAgICAgICAgICAgICB7IGBXJyxgdCcgLSB0cmlnZ2VycyB3YWNodGVuIG9mIHppam4gcGVuZGluZy5cbiIKKyIgT3VkZSBtYXJrZXJpbmc6IHdhdCBlciBnZXZyYWFnZCB3YXMgdm9vcmRhdCBkZXplIGxpanN0IHZlcnNjaGVlbjtcbiIKKyIgTWFya2VyaW5nOiB3YXQgZ2V2cmFhZ2Qgd29yZHQgdm9vciBkaXQgcGFra2V0OlxuIgorIiAgYConOiBnZW1hcmtlZXJkIHZvb3IgaW5zdGFsbGF0aWUgb2YgYmlqd2Vya2VuO1xuIgorIiAgYC0nOiBnZW1hcmtlZXJkIHZvb3IgdmVyd2lqZGVyaW5nLCBtYWFyIGNvbmZpZyB6YWwgYWNodGVyYmxpanZlbjtcbiIKKyIgIGA9JzogdmFzdGdlaG91ZGVuOiBwYWtrZXQgd29yZHQgbmlldCBiZWhhbmRlbGQ7XG4iCisiICBgXyc6IGdlbWFya2VlcmQgdm9vciB0b3RhbGUgdmVyd2lqZGVyaW5nIC0gb29rIGNvbmZpZ3VyYXRpZTtcbiIKKyIgIGBuJzogcGFra2V0IGlzIG5pZXV3IGVuIG1vZXQgbm9nIGVlbiBtYXJrZXJpbmcga3Jpamdlbi5cbiIKKyJcbiIKKyJPb2sgdGUgemlqbiB6aWpuIGRlIFByaW9yaXRlaXQsIFNlY3RpZSwgbmFhbSwgZ2XDr25zdGFsbGVlcmRlIGVuIGJlc2NoaWtiYXJlXG4iCisidmVyc2llbnVtbWVycyAoc2hpZnQtViBvbSB0ZSB0b25lbi92ZXJiZXJnZW4pIGVuIGVlbiBrb3J0ZSBvbXNjaHJpanZpbmcuXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTUyCittc2dpZCAiRGlzcGxheSwgcGFydCAyOiBsaXN0IGhpZ2hsaWdodDsgaW5mb3JtYXRpb24gZGlzcGxheSIKK21zZ3N0ciAiU2NoZXJtLCBkZWVsIDI6IGxpanN0c2VsZWN0aWU7IGluZm9ybWF0aWVzY2hlcm0iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTUyCittc2dpZCAiIgorIiogSGlnaGxpZ2h0OiBPbmUgbGluZSBpbiB0aGUgcGFja2FnZSBsaXN0IHdpbGwgYmUgaGlnaGxpZ2h0ZWQuICBJdCAiCisiaW5kaWNhdGVzXG4iCisiICB3aGljaCBwYWNrYWdlKHMpIHdpbGwgYmUgYWZmZWN0ZWQgYnkgcHJlc3NlcyBvZiBgKycsIGAtJyBhbmQgYF8nLlxuIgorIlxuIgorIiogVGhlIGRpdmlkaW5nIGxpbmUgaW4gdGhlIG1pZGRsZSBvZiB0aGUgc2NyZWVuIHNob3dzIGEgYnJpZWYgZXhwbGFuYXRpb24gIgorIm9mXG4iCisiICB0aGUgc3RhdHVzIG9mIHRoZSBjdXJyZW50bHktaGlnaGxpZ2h0ZWQgcGFja2FnZSwgb3IgYSBkZXNjcmlwdGlvbiBvZiAiCisid2hpY2hcbiIKKyIgIGdyb3VwIGlzIGhpZ2hsaWdodGVkIGlmIGEgZ3JvdXAgbGluZSBpcy4gIElmIHlvdSBkb24ndCB1bmRlcnN0YW5kIHRoZVxuIgorIiAgbWVhbmluZyBvZiBzb21lIG9mIHRoZSBzdGF0dXMgY2hhcmFjdGVycyBkaXNwbGF5ZWQsIGdvIHRvIHRoZSByZWxldmFudFxuIgorIiAgcGFja2FnZSBhbmQgbG9vayBhdCB0aGlzIGRpdmlkZXIgbGluZSwgb3IgdXNlIHRoZSBgdicga2V5IGZvciBhIHZlcmJvc2VcbiIKKyIgIGRpc3BsYXkgKHByZXNzIGB2JyBhZ2FpbiB0byBnbyBiYWNrIHRvIHRoZSB0ZXJzZSBkaXNwbGF5KS5cbiIKKyJcbiIKKyIqIFRoZSBib3R0b20gb2YgdGhlIHNjcmVlbiBzaG93cyBtb3JlIGluZm9ybWF0aW9uIGFib3V0IHRoZVxuIgorIiAgY3VycmVudGx5LWhpZ2hsaWdodGVkIHBhY2thZ2UgKGlmIHRoZXJlIGlzIG9ubHkgb25lKS5cbiIKKyJcbiIKKyIgIEl0IGNhbiBzaG93IGFuIGV4dGVuZGVkIGRlc2NyaXB0aW9uIG9mIHRoZSBwYWNrYWdlLCB0aGUgaW50ZXJuYWwgcGFja2FnZVxuIgorIiAgY29udHJvbCBkZXRhaWxzIChlaXRoZXIgZm9yIHRoZSBpbnN0YWxsZWQgb3IgYXZhaWxhYmxlIHZlcnNpb24gb2YgdGhlXG4iCisiICBwYWNrYWdlKSwgb3IgaW5mb3JtYXRpb24gYWJvdXQgY29uZmxpY3RzIGFuZCBkZXBlbmRlbmNpZXMgaW52b2x2aW5nIHRoZVxuIgorIiAgY3VycmVudCBwYWNrYWdlIChpbiBjb25mbGljdC9kZXBlbmRlbmN5IHJlc29sdXRpb24gc3VibGlzdHMpLlxuIgorIlxuIgorIiAgVXNlIHRoZSBgaScga2V5IHRvIGN5Y2xlIHRocm91Z2ggdGhlIGRpc3BsYXlzLCBhbmQgYEknIHRvIGhpZGUgdGhlXG4iCisiICBpbmZvcm1hdGlvbiBkaXNwbGF5IG9yIGV4cGFuZCBpdCB0byB1c2UgYWxtb3N0IGFsbCBvZiB0aGUgc2NyZWVuLlxuIgorbXNnc3RyICIiCisiKiBPcGxpY2h0ZW46IEVlbiBwYWtrZXQgaW4gZGUgbGlqc3Qgd29yZHQgb3BnZWxpY2h0LiAgSGV0IGdlZWZ0IGFhbiBvcFxuIgorIiAgd2VsayhlKSBwYWtrZXQodGVuKSBkZSBrbm9wcGVuIGArJywgYC0nIGVuIGBfJyBlZmZlY3QgenVsbGVuIGhlYmJlbi5cbiIKKyJcbiIKKyIqIERlIHNjaGVpZGluZ3NsaWpuIGluIGhldCBtaWRkZW4gdmFuIGhldCBzY2hlcm0gdG9vbnQgZWVuIGtvcnRlXG4iCisiICB1aXRsZWcgdmFuIGRlIHN0YXR1cyB2YW4gaGV0IG9wZ2VsaWNodGUgcGFra2V0LCBvZiBlZW4gb21zY2hyaWp2aW5nXG4iCisiICB2YW4gZGUgZ3JvZXAgZGllIGlzIG9wZ2VsaWNodC4gIEFscyB1IGRlIGJldGVrZW5pcyB2YW4gZWVuIGdlZ2V2ZW5cbiIKKyIgIHN0YXR1c3Rla2VuLCBrdW50IHUgbmFhciBoZXQgcmVsZXZhbnRlIHBha2tldCBnYWFuIGVuIG5hYXIgZGVcbiIKKyIgIHNjaGVpZGluZ3NsaWpuIGtpamVuLCBvZiBnZWJydWlrIGRlIHRvZXRzIGB2JyB2b29yIGVlbiB1aXRnZWJyZWlkZVxuIgorIiAgd2VlcmdhdmUgKGRydWsgd2VlciBvcCBgdicgb20gdGVydWcgdGUgZ2FhbiBuYWFyIGRlIGtvcnRlIHdlZXJnYXZlKS5cbiIKKyJcbiIKKyIqIERlIG9uZGVyc3RlIGhlbGZ0IHZhbiBoZXQgc2NoZXJtIGdlZWZ0IG1lZXIgaW5mb3JtYXRpZSBvdmVyIGhldFxuIgorIiAgb3BnZWxpY2h0ZSBwYWtrZXQgKGFscyBkYXQgZXIgc2xlY2h0cyBlZW4gaXMpLlxuIgorIlxuIgorIiAgSGV0IGthbiBlZW4gdWl0Z2VicmVpZGUgb21zY2hyaWp2aW5nIHZhbiBoZXQgcGFra2V0IHppam4sIGRlIGludGVybmVcbiIKKyIgIHBha2tldGJlc3R1cmluZ3MgZGV0YWlscyAob2Z3ZWwgdm9vciBkZSBnZcOvbnN0YWxsZWVyZGUgb2YgYmVzY2hpa2JhcmVcbiIKKyIgIHZlcnNpZSB2YW4gaGV0IHBha2tldCksIG9mIGluZm9ybWF0aWUgb3ZlclxuIgorIiAgY29uZmxpY3RzLS92ZXJlaXN0ZW5yZWxhdGllcyBtZXQgaGV0IGh1aWRpZ2UgcGFra2V0IChpbiBkZVxuIgorIiAgY29uZmxpY3RzLS92ZXJlaXN0ZW5vcGxvc3NlcnMpLlxuIgorIlxuIgorIiAgR2VicnVpayBkZSBgaSctdG9ldHMgb20gZGUgd2lzc2VsZW4gdHVzc2VuIHdlZXJnYXZlbiwgZW4gYEknIG9tIGhldFxuIgorIiAgaW5mb3JtYXRpZXNjaGVybSB0ZSB2ZXJncm90ZW4gb2YgdmVyYmVyZ2VuLlxuIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjE3NgorbXNnaWQgIkludHJvZHVjdGlvbiB0byBtZXRob2Qgc2VsZWN0aW9uIGRpc3BsYXkiCittc2dzdHIgIklubGVpZGluZyBpbiBzY2hlcm0gdm9vciBtZXRob2Rlc2VsZWN0aWUiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTc2Cittc2dpZCAiIgorImRzZWxlY3QgYW5kIGRwa2cgY2FuIGRvIGF1dG9tYXRpYyBpbnN0YWxsYXRpb24sIGxvYWRpbmcgdGhlIHBhY2thZ2UgZmlsZXMgdG8gIgorImJlXG4iCisiaW5zdGFsbGVkIGZyb20gb25lIG9mIGEgbnVtYmVyIG9mIGRpZmZlcmVudCBwb3NzaWJsZSBwbGFjZXMuXG4iCisiXG4iCisiVGhpcyBsaXN0IGFsbG93cyB5b3UgdG8gc2VsZWN0IG9uZSBvZiB0aGVzZSBpbnN0YWxsYXRpb24gbWV0aG9kcy5cbiIKKyJcbiIKKyJNb3ZlIHRoZSBoaWdobGlnaHQgdG8gdGhlIG1ldGhvZCB5b3Ugd2lzaCB0byB1c2UsIGFuZCBoaXQgRW50ZXIuICBZb3Ugd2lsbCAiCisidGhlblxuIgorImJlIHByb21wdGVkIGZvciB0aGUgaW5mb3JtYXRpb24gcmVxdWlyZWQgdG8gZG8gdGhlIGluc3RhbGxhdGlvbi5cbiIKKyJcbiIKKyJBcyB5b3UgbW92ZSB0aGUgaGlnaGxpZ2h0IGEgZGVzY3JpcHRpb24gb2YgZWFjaCBtZXRob2QsIHdoZXJlIGF2YWlsYWJsZSwgaXNcbiIKKyJkaXNwbGF5ZWQgaW4gdGhlIGJvdHRvbSBoYWxmIG9mIHRoZSBzY3JlZW4uXG4iCisiXG4iCisiSWYgeW91IHdpc2ggdG8gcXVpdCB3aXRob3V0IGNoYW5naW5nIGFueXRoaW5nIHVzZSB0aGUgYHgnIGtleSB3aGlsZSBpbiB0aGUgIgorImxpc3RcbiIKKyJvZiBpbnN0YWxsYXRpb24gbWV0aG9kcy5cbiIKKyJcbiIKKyJBIGZ1bGwgbGlzdCBvZiBrZXlzdHJva2VzIGlzIGF2YWlsYWJsZSBieSBwcmVzc2luZyBgaycgbm93LCBvciBmcm9tIHRoZSAiCisiaGVscFxuIgorIm1lbnUgcmVhY2hhYmxlIGJ5IHByZXNzaW5nIGA/Jy5cbiIKK21zZ3N0ciAiIgorImRzZWxlY3QgZW4gZHBrZyBrdW5uZW4gYXV0b21hdGlzY2hlIGluc3RhbGxhdGllIGFhbiwgZG9vciBkZSB0ZVxuIgorImluc3RhbGxlcmVuIHBha2tldGJlc3RhbmRlbiBvcCB0ZSBoYWxlbiB2YW4gZWVuIGFhbnRhbCBtb2dlbGlqa2VcbiIKKyJwbGFhdHNlbi5cbiIKKyJcbiIKKyJEZXplIGxpanN0IGdlZWZ0IHUgZGUgbW9nZWxpamtoZWlkIG9tIGVlbiB2YW4gZGV6ZSBpbnN0YWxsYXRpZW1ldGhvZGVzXG4iCisidGUga2llemVuLlxuIgorIlxuIgorIkJld2VlZyBkZSBtYXJrZXJpbmcgbmFhciBkZSBnZXdlbnN0ZSBtZXRob2RlIGVuIGRydWsgb3AgRW50ZXIuICBVIHp1bHRcbiIKKyJkYW4gaW5mb3JtYXRpZSBtb2V0ZW4gb3BnZXZlbiB2b29yIGRlIGluc3RhbGxhdGllLlxuIgorIlxuIgorIkFscyB1IGRlIG1hcmtlcmluZyBiZXdlZWd0IHphbCBlZW4gb21zY2hyaWp2aW5nIHdvcmRlbiBnZWdldmVuIHZhbiBkaWVcbiIKKyJtZXRob2RlIGluIGRlIG9uZGVyc3RlIGhlbGZ0IHZhbiBoZXQgc2NoZXJtLlxuIgorIlxuIgorIkFscyB1IHdpbHQgb3Bob3VkZW4gem9uZGVyIGlldHMgdGUgdmVyYW5kZXJlbiBrdW50IHUgZGUgYHgnIHRvZXRzXG4iCisiZ2VicnVpa2VuIGluIGRlIGxpanN0IHZhbiBtZXRob2Rlbi5cbiIKKyJcbiIKKyJFZW4gdm9sbGVkaWdlIGxpanN0IG1ldCB0b2V0c2VuIGlzIGJlc2NoaWtiYWFyIGRvb3IgbnUgb3AgYGsnIHRlXG4iCisiZHJ1a2tlbiwgb2YgdmFudWl0IGhldCBodWxwbWVudSBkYXQgdSBrdW50IGJlcmVpa2VuIG1ldCBgPycuXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTk2Cittc2dpZCAiS2V5c3Ryb2tlcyBmb3IgbWV0aG9kIHNlbGVjdGlvbiIKK21zZ3N0ciAiVG9ldHNhYW5zbGFnZW4gdm9vciBtZXRob2Rlc2VsZWN0aWUiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTk2Cittc2dpZCAiIgorIk1vdGlvbiBrZXlzOiBOZXh0L1ByZXZpb3VzLCBUb3AvRW5kLCBVcC9Eb3duLCBCYWNrd2FyZHMvRm9yd2FyZHM6XG4iCisiICBqLCBEb3duLWFycm93ICAgICAgICAgaywgVXAtYXJyb3cgICAgICAgICAgICAgbW92ZSBoaWdobGlnaHRcbiIKKyIgIE4sIFBhZ2UtZG93biwgU3BhY2UgICBQLCBQYWdlLXVwLCBCYWNrc3BhY2UgICBzY3JvbGwgbGlzdCBieSAxIHBhZ2VcbiIKKyIgIF5uICAgICAgICAgICAgICAgICAgICBecCAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgbGlzdCBieSAxIGxpbmVcbiIKKyIgIHQsIEhvbWUgICAgICAgICAgICAgICBlLCBFbmQgICAgICAgICAgICAgICAgICBqdW1wIHRvIHRvcC9lbmQgb2YgbGlzdFxuIgorIiAgdSAgICAgICAgICAgICAgICAgICAgIGQgICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIGJ5IDEgcGFnZVxuIgorIiAgXnUgICAgICAgICAgICAgICAgICAgIF5kICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIGJ5IDEgbGluZVxuIgorIiAgQiwgTGVmdC1hcnJvdyAgICAgICAgIEYsIFJpZ2h0LWFycm93ICAgICAgICAgIHBhbiBkaXNwbGF5IGJ5IDEvMyBzY3JlZW5cbiIKKyIgIF5iICAgICAgICAgICAgICAgICAgICBeZiAgICAgICAgICAgICAgICAgICAgICBwYW4gZGlzcGxheSBieSAxIGNoYXJhY3RlclxuIgorIihUaGVzZSBhcmUgdGhlIHNhbWUgbW90aW9uIGtleXMgYXMgaW4gdGhlIHBhY2thZ2UgbGlzdCBkaXNwbGF5LilcbiIKKyJcbiIKKyJRdWl0OlxuIgorIiBSZXR1cm4sIEVudGVyICAgIHNlbGVjdCB0aGlzIG1ldGhvZCBhbmQgZ28gdG8gaXRzIGNvbmZpZ3VyYXRpb24gZGlhbG9ndWVcbiIKKyIgeCwgWCAgICAgICAgICAgICBleGl0IHdpdGhvdXQgY2hhbmdpbmcgb3Igc2V0dGluZyB1cCB0aGUgaW5zdGFsbGF0aW9uICIKKyJtZXRob2RcbiIKKyJcbiIKKyJNaXNjZWxsYW5lb3VzOlxuIgorIiAgPywgSGVscCwgRjEgICAgICByZXF1ZXN0IGhlbHBcbiIKKyIgXmwgICAgICAgICAgICAgICAgcmVkcmF3IGRpc3BsYXlcbiIKKyIgIC8gICAgICAgICAgICAgICAgc2VhcmNoIChqdXN0IHJldHVybiB0byBjYW5jZWwpXG4iCisiICBcXCAgICAgICAgICAgICAgICByZXBlYXQgbGFzdCBzZWFyY2hcbiIKK21zZ3N0ciAiIgorIkJld2VnaW5nc3RvZXRzZW46IFZvbGdlbmRlL1ZvcmlnZSwgQmVnaW4vRWluZCwgT3AvTmVlciwgVm9vcnVpdC9BY2h0ZXJ1aXQ6XG4iCisiICBuLCBQaWpsdC1vbWxhYWcgICBwLCBQaWpsdGplLW9taG9vZyAgICAgdmVycGxhYXRzIG1hcmtlcmluZ1xuIgorIiAgTiwgUGFnZS1kb3duLCBTcGF0aWUgIFAsIFBhZ2UtdXAsIEJhY2tzcGFjZSAgIHZlcnNjaHVpZiBsaWpzdCBtZXQgMSAiCisicGFnaW5hXG4iCisiICBebiAgICAgICAgICAgICAgICAgICAgIF5wICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2ZXJzY2h1aWYgbGlqc3QgbWV0ICIKKyIxIHJlZ2VsXG4iCisiICB0LCBIb21lICAgICAgICAgICAgIGUsIEVuZCAgICAgICAgICAgICAgICAgICAgICAgbmFhciBiZWdpbi9laW5kZSBsaWpzdFxuIgorIiAgdSAgICAgICAgICAgICAgICAgICAgICAgIGQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZlcnNjaHVpZiBpbmZvICIKKyJtZXQgMSBwYWdpbmFcbiIKKyIgIF51ICAgICAgICAgICAgICAgICAgICBeZCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZlcnNjaHVpZiBpbmZvIG1ldCAxICIKKyJyZWdlbFxuIgorIiAgQiwgUGlqbC1saW5rcyAgICAgICAgRiwgUGlqbC1yZWNodHMgICAgICAgICAgICAgIHBhbiBkaXNwbGF5IGJ5IDEvMyAiCisic2NyZWVuXG4iCisiICBeYiAgICAgICAgICAgICAgICAgICAgXmYgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFuIGRpc3BsYXkgYnkgMSAiCisiY2hhcmFjdGVyXG4iCisiKERpdCB6aWpuIGRlIHplbGZkZSB0b2V0c2VuIGFscyBpbiBoZXQgc2NoZXJtIG1ldCBwYWtrZXRsaWpzdC4pXG4iCisiXG4iCisiRWluZGU6XG4iCisiIFJldHVybiwgRW50ZXIgICAgc2VsZWN0ZWVyIGRlemUgbWV0aG9kZSBlbiBnYSBuYWFyIHppam4gIgorImNvbmZpZ3VyYXRpZWRpYWxvb2dcbiIKKyIgeCwgWCAgICAgICAgICAgICBiZcOraW5kaWcgem9uZGVyIHZlcmFuZGVyaW5nZW4gb2YgaW5zdGVsbGVuIHZhbiAiCisiaW5zdGFsbGF0aWVtZXRob2RlXG4iCisiXG4iCisiRGl2ZXJzOlxuIgorIiAgPywgSGVscCwgRjEgICB2cmFhZyBodWxwXG4iCisiIF5sICAgICAgICAgICAgICAgICAgc2NoZXJtIG9wbmlldXcgdGVrZW5lblxuIgorIiAgLyAgICAgICAgICAgICAgICAgICB6b2VrZW4gKGFsbGVlbiBlbnRlciB2b29yIGFubnVsZXJlbilcbiIKKyIgIFxcICAgICAgICAgICAgICAgICAgbGFhdHN0ZSB6b2Vrb3BkcmFjaHQgaGVyaGFsZW5cbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjYwCittc2dpZCAiVHlwZSBkc2VsZWN0IC0taGVscCBmb3IgaGVscC4iCittc2dzdHIgIlR5cGUgZHNlbGVjdCAtLWhlbHAgdm9vciBodWxwLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0MworbXNnaWQgImEiCittc2dzdHIgInQiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDMKK21zZ2lkICJbQV1jY2VzcyIKK21zZ3N0ciAiW1Rdb2VnYW5nIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQzCittc2dpZCAiQ2hvb3NlIHRoZSBhY2Nlc3MgbWV0aG9kIHRvIHVzZS4iCittc2dzdHIgIktpZXMgZWVuIHRvZWdhbmdzbWV0aG9kZS4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDQKK21zZ2lkICJ1IgorbXNnc3RyICJiIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ0Cittc2dpZCAiW1VdcGRhdGUiCittc2dzdHIgIltCXWlqd2Vya2VuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ0Cittc2dpZCAiVXBkYXRlIGxpc3Qgb2YgYXZhaWxhYmxlIHBhY2thZ2VzLCBpZiBwb3NzaWJsZS4iCittc2dzdHIgIldlcmsgZGUgbGlqc3QgbWV0IHBha2tldHRlbiBiaWosIGluZGllbiBtb2dlbGlqay4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDUKK21zZ2lkICJzIgorbXNnc3RyICJzIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ1Cittc2dpZCAiW1NdZWxlY3QiCittc2dzdHIgIltTXWVsZWN0ZWVyIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ1Cittc2dpZCAiUmVxdWVzdCB3aGljaCBwYWNrYWdlcyB5b3Ugd2FudCBvbiB5b3VyIHN5c3RlbS4iCittc2dzdHIgIlZlcnRlbCB3ZWxrZSBwYWtrZXR0ZW4gdSBvcCB1dyBzeXN0ZWVtIHdpbHQuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ2Cittc2dpZCAiaSIKK21zZ3N0ciAiaSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NgorbXNnaWQgIltJXW5zdGFsbCIKK21zZ3N0ciAiW0ldbnN0YWxsZXJlbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NgorbXNnaWQgIkluc3RhbGwgYW5kIHVwZ3JhZGUgd2FudGVkIHBhY2thZ2VzLiIKK21zZ3N0ciAiSW5zdGFsbGVlciBwYWtrZXR0ZW4gb2Ygd2VyayBnZXdlbnN0ZSBwYWtrZXR0ZW4gYmlqLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NworbXNnaWQgImMiCittc2dzdHIgImMiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDcKK21zZ2lkICJbQ11vbmZpZyIKK21zZ3N0ciAiW0Ndb25maWd1cmVyZW4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDcKK21zZ2lkICJDb25maWd1cmUgYW55IHBhY2thZ2VzIHRoYXQgYXJlIHVuY29uZmlndXJlZC4iCittc2dzdHIgIkNvbmZpZ3VyZWVyIHBha2tldHRlbiBkaWUgbm9nIG5pZXQgZ2Vjb25maWd1cmVlcmQgemlqbi4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDgKK21zZ2lkICJyIgorbXNnc3RyICJ2IgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ4Cittc2dpZCAiW1JdZW1vdmUiCittc2dzdHIgIltWXWVyd2lqZGVyZW4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDgKK21zZ2lkICJSZW1vdmUgdW53YW50ZWQgc29mdHdhcmUuIgorbXNnc3RyICJWZXJ3aWpkZXIgb25nZXdlbnN0ZSBwcm9ncmFtbWF0dXVyLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OQorbXNnaWQgInEiCittc2dzdHIgImUiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDkKK21zZ2lkICJbUV11aXQiCittc2dzdHIgIltFXWluZGUiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDkKK21zZ2lkICJRdWl0IGRzZWxlY3QuIgorbXNnc3RyICJkc2VsZWN0IGFmc2x1aXRlbi4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNTAKK21zZ2lkICJtZW51IgorbXNnc3RyICJtZW51IgorCisjOiBkc2VsZWN0L21haW4uY2M6MTU1CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiBgJXMnIHBhY2thZ2UgaGFuZGxpbmcgZnJvbnRlbmQgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiRGViaWFuIGAlcycgcGFra2V0YmVoZWVyLWZyb250ZW5kIHZlcnNpZSAlcy5cbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE1OAorbXNnaWQgIiIKKyJDb3B5cmlnaHQgKEMpIDE5OTQtMTk5NiBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLlxuIgorbXNnc3RyICIiCisiQ29weXJpZ2h0IChDKSAxOTk0LTE5OTYgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE2MgorIywgZnV6enkKK21zZ2lkICIiCisiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvclxuIgorImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LlxuIgorbXNnc3RyICIiCisiRGl0IGlzIHZyaWplIHByb2dyYW1tYXR1dXI7IHppZSBkZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaWUgMlxuIgorIm9mIGxhdGVyIHZvb3Iga29wacOrZXJ2b29yd2FhcmRlbi4gIEVyIGlzIEdFRU4gZ2FyYW50aWUuXG4iCisiWmllICVzIC0tbGljZW5zZSB2b29yIGF1dGV1cnNyZWNodGVuIGVuIGxpY2VudGllZGV0YWlscy5cbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE3MiBkc2VsZWN0L21haW4uY2M6MjIwCittc2dpZCAiPHN0YW5kYXJkIG91dHB1dD4iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE4MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIFs8YWN0aW9uPiAuLi5dXG4iCisiXG4iCittc2dzdHIgIiIKKyJHZWJydWlrOiAlcyBbPG9wdGllPiAuLi5dIFs8YWN0aWU+IC4uLl1cbiIKKyJcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE4NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorIiAgLS1leHBlcnQgICAgICAgICAgICAgICAgICAgVHVybiBvbiBleHBlcnQgbW9kZS5cbiIKKyIgIC0tZGVidWcgPGZpbGU+IHwgLUQ8ZmlsZT4gIFR1cm4gb24gZGVidWdnaW5nLCBzZW5kaW5nIG91dHB1dCB0byA8ZmlsZT4uXG4iCisiICAtLWNvbG91ciB8IC0tY29sb3Igc2NyZWVucGFydDpbZm9yZWdyb3VuZF0sW2JhY2tncm91bmRdWzphdHRyWythdHRyKy4uXV1cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENvbmZpZ3VyZSBzY3JlZW4gY29sb3Vycy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIk9wdGllczpcbiIKKyIgIC0tYWRtaW5kaXIgPG1hcD4gICAgIEdlYnJ1aWsgPG1hcD4gaS5wLnYuICVzLlxuIgorIiAgLS1leHBlcnQgICAgICAgICAgICAgICAgICAgICAgWmV0IGV4cGVydC1tb2R1cyBhYW4uXG4iCisiICAtLWRlYnVnIDxiZXN0YW5kPiB8IC1EPGZpbGU+ICBaZXQgZGVidWdnZW4gYWFuLCBzdHV1ciB1aXR2b2VyIG5hYXIgIgorIjxiZXN0YW5kPi5cbiIKKyIgIC0tY29sb3VyIHwgLS1jb2xvciBzY2hlcm1kZWVsOlt2b29yZ3JvbmRdLFthY2h0ZXJncm9uZF1bOmF0dHJbK2F0dHIrLi5dXVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdGVsIHNjaGVybWtsZXVyZW4gaW4uXG4iCisiXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxOTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgICBTaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorbXNnc3RyICIiCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgICAgIFRvb24gZGV6ZSBoZWxwYm9vZHNjaGFwLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICAgVG9vbiBkZSB2ZXJzaWUuXG4iCisiICAtLWxpY2Vuc2UgfCAtLWxpY2VuY2UgIFRvb24gZGUgbGljZW50aWUuXG4iCisiXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkFjdGlvbnM6XG4iCisiICBhY2Nlc3MgdXBkYXRlIHNlbGVjdCBpbnN0YWxsIGNvbmZpZyByZW1vdmUgcXVpdFxuIgorIlxuIgorbXNnc3RyICIiCisiQWN0aWVzOlxuIgorIiAgYWNjZXNzIHVwZGF0ZSBzZWxlY3QgaW5zdGFsbCBjb25maWcgcmVtb3ZlIHF1aXRcbiIKKyJcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjIwNQorIywgYy1mb3JtYXQKK21zZ2lkICJTY3JlZW5wYXJ0czpcbiIKK21zZ3N0ciAiU2NoZXJtZGVsZW46XG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ29sb3VyczpcbiIKK21zZ3N0ciAiS2xldXJlbjpcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjIxNQorIywgYy1mb3JtYXQKK21zZ2lkICJBdHRyaWJ1dGVzOlxuIgorbXNnc3RyICJBdHRyaWJ1dGVzOlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjMzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkbid0IG9wZW4gZGVidWcgZmlsZSBgJS4yNTVzJ1xuIgorbXNnc3RyICJrb24gZGVidWdiZXN0YW5kIGAlLjI1NXMnIG5pZXQgb3BlbmVuXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyNTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW52YWxpZCAlcyBgJXMnXG4iCittc2dzdHIgIk9uZ2VsZGlnZSAlcyAnJXMnXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyNzAKK21zZ2lkICJzY3JlZW4gcGFydCIKK21zZ3N0ciAic2NoZXJtZGVlbCIKKworIzogZHNlbGVjdC9tYWluLmNjOjI3NgorbXNnaWQgIk51bGwgY29sb3VyIHNwZWNpZmljYXRpb25cbiIKK21zZ3N0ciAiQmxhbmNvLWtsZXVyIHNwZWNpZmljYXRpZVxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6Mjg0IGRzZWxlY3QvbWFpbi5jYzoyODkKK21zZ2lkICJjb2xvdXIiCittc2dzdHIgImtsZXVyIgorCisjOiBkc2VsZWN0L21haW4uY2M6Mjk3Cittc2dpZCAiY29sb3VyIGF0dHJpYnV0ZSIKK21zZ3N0ciAia2xldXJhdHRyaWJ1dXQiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzozMjkKK21zZ2lkICJUZXJtaW5hbCBkb2VzIG5vdCBhcHBlYXIgdG8gc3VwcG9ydCBjdXJzb3IgYWRkcmVzc2luZy5cbiIKK21zZ3N0ciAiVGVybWluYWwgbGlqa3QgZGUgY3Vyc29yIG5pZXQgdGUga3VubmVuIGJlc3R1cmVuLlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MzMxCittc2dpZCAiVGVybWluYWwgZG9lcyBub3QgYXBwZWFyIHRvIHN1cHBvcnQgaGlnaGxpZ2h0aW5nLlxuIgorbXNnc3RyICJUZXJtaW5hbCBsaWprdCBvcGxpY2h0ZW4gbmlldCB0ZSBvbmRlcnN0ZXVuZW4uXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzozMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlNldCB5b3VyIFRFUk0gdmFyaWFibGUgY29ycmVjdGx5LCB1c2UgYSBiZXR0ZXIgdGVybWluYWwsXG4iCisib3IgbWFrZSBkbyB3aXRoIHRoZSBwZXItcGFja2FnZSBtYW5hZ2VtZW50IHRvb2wgJXMuXG4iCittc2dzdHIgIiIKKyJaZXQgdXcgVEVSTSB2YXJpYWJlbGUgZ29lZCwgZ2VicnVpayBlZW4gYmV0ZXJlIHRlcm1pbmFsLFxuIgorIm9mIGRvZSBoZXQgbWV0IGRlIHBlci1wYWtrZXQtYmVoZWVydG9vbCAlcy5cbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjMzNgorbXNnaWQgInRlcm1pbmFsIGxhY2tzIG5lY2Vzc2FyeSBmZWF0dXJlcywgZ2l2aW5nIHVwIgorbXNnc3RyICJ0ZXJtaW5hbCBrYW4gZXNzZW50acOrbGUgLi4uIG5pZXQgYWFuLCBlciB3b3JkdCBvcGdlZ2V2ZW4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzo0MTcKK21zZ2lkICIiCisiXG4iCisiXG4iCisiTW92ZSBhcm91bmQgd2l0aCBeUCBhbmQgXk4sIGN1cnNvciBrZXlzLCBpbml0aWFsIGxldHRlcnMsIG9yIGRpZ2l0cztcbiIKKyJQcmVzcyA8ZW50ZXI+IHRvIGNvbmZpcm0gc2VsZWN0aW9uLiAgIF5MIHJlZHJhd3Mgc2NyZWVuLlxuIgorIlxuIgorbXNnc3RyICIiCisiXG4iCisiXG4iCisiQmV3ZWVnIG1ldCBeUCBlbiBeTiwgY3Vyc29ydG9ldHNlbiwgYmVnaW5sZXR0ZXJzLCBvZiBjaWpmZXJzO1xuIgorIkRydWsgb3AgPGVudGVyPiBvbSBzZWxlY3RpZSB0ZSBhY3RpdmVyZW4uICBeTCB0ZWtlbnQgaGV0IHNjaGVybSBvcG5pZXV3LlxuIgorIlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6NDI4Cittc2dpZCAiIgorIlxuIgorIlxuIgorIlJlYWQtb25seSBhY2Nlc3M6IG9ubHkgcHJldmlldyBvZiBzZWxlY3Rpb25zIGlzIGF2YWlsYWJsZSEiCittc2dzdHIgIiIKKyJcbiIKKyJcbiIKKyJUb2VnYW5nIGlzIGFsbGVlbiBsZXplbjogZGUgc2VsZWN0aWVzIHdvcmRlbiBuaWV0IGJld2FhcmQhIgorCisjOiBkc2VsZWN0L21haW4uY2M6NDQ4Cittc2dpZCAiZmFpbGVkIHRvIGdldGNoIGluIG1haW4gbWVudSIKK21zZ3N0ciAiZ2V0Y2ggaW4gaG9vZmRtZW51IGlzIG1pc2x1a3QiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzo1MzEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBhY3Rpb24gc3RyaW5nIGAlLjUwcyciCittc2dzdHIgIm9uYmVrZW5kIGFjdGlld29vcmQgYCUuNTBzJyIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzo3NworbXNnaWQgImRzZWxlY3QgLSBsaXN0IG9mIGFjY2VzcyBtZXRob2RzIgorbXNnc3RyICJkc2VsZWN0IC0gbGlqc3QgdmFuIHRvZWdhbmdzbWV0aG9kZW4iCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiQWNjZXNzIG1ldGhvZCBgJXMnLiIKK21zZ3N0ciAiVG9lZ2FuZ3NtZXRob2RlIGAlcycuIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjEyMAorbXNnaWQgIkFiYnJldi4iCittc2dzdHIgIkFma29ydGluZyIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxMjEgZHNlbGVjdC9wa2dpbmZvLmNjOjEwNSBkc2VsZWN0L3BrZ3RvcC5jYzoyOTEKK21zZ2lkICJEZXNjcmlwdGlvbiIKK21zZ3N0ciAiT21zY2hyaWp2aW5nIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjE2NCBkc2VsZWN0L3BrZ2xpc3QuY2M6NTcyCittc2dpZCAiZG91cGRhdGUgZmFpbGVkIgorbXNnc3RyICJkb3VwZGF0ZSBpcyBtaXNsdWt0IgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjE2NiBkc2VsZWN0L3BrZ2xpc3QuY2M6NTc1Cittc2dpZCAiZmFpbGVkIHRvIHVuYmxvY2sgU0lHV0lOQ0giCittc2dzdHIgImtvbiBTSUdXSU5DSCBuaWV0IGRlYmxva2tlcmVuIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjE3MCBkc2VsZWN0L3BrZ2xpc3QuY2M6NTgwCittc2dpZCAiZmFpbGVkIHRvIHJlLWJsb2NrIFNJR1dJTkNIIgorbXNnc3RyICJrb24gU0lHV0lOQ0ggbmlldCBvcG5pZXV3IGJsb2trZXJlbiIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxNzEgZHNlbGVjdC9wa2dsaXN0LmNjOjU4MgorbXNnaWQgImdldGNoIGZhaWxlZCIKK21zZ3N0ciAiZ2V0Y2ggaXMgbWlzbHVrdCIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxODgKK21zZ2lkICJFeHBsYW5hdGlvbiIKK21zZ3N0ciAiVmVya2xhcmluZyIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxOTcKK21zZ2lkICJObyBleHBsYW5hdGlvbiBhdmFpbGFibGUuIgorbXNnc3RyICJHZWVuIHVpdGxlZyBiZXNjaGlrYmFhci4iCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjY3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJcbiIKKyIlczogJXNcbiIKK21zZ3N0ciAiIgorIlxuIgorIlxuIgorIiVzOiAlc1xuIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzo3MAorbXNnaWQgIiIKKyJcbiIKKyJQcmVzcyA8ZW50ZXI+IHRvIGNvbnRpbnVlLiIKK21zZ3N0ciAiIgorIlxuIgorIkRydWsgb3AgPGVudGVyPiBvbSBkb29yIHRlIGdhYW4uIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoxNjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHJlc3MgPGVudGVyPiB0byBjb250aW51ZS5cbiIKK21zZ3N0ciAiRHJ1ayBvcCA8ZW50ZXI+IG9tIGRvb3IgdGUgZ2Fhbi5cbiIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MTYyCisjLCBmdXp6eQorbXNnaWQgIjxzdGFuZGFyZCBlcnJvcj4iCittc2dzdHIgInNjaHJpamZmb3V0IG5hYXIgc3RhbmRhYXJkIHVpdHZvZXIiCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjE2NQorbXNnaWQgImVycm9yIHJlYWRpbmcgYWNrbm93bGVkZ2VtZW50IG9mIHByb2dyYW0gZmFpbHVyZSBtZXNzYWdlIgorbXNnc3RyICJrb24gYmV2ZXN0aWdpbmcgdmFuIHByb2dyYW1tYWZvdXQtYmVyaWNodCBuaWV0IGxlemVuIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoxOTYKK21zZ2lkICJ1cGRhdGUgYXZhaWxhYmxlIGxpc3Qgc2NyaXB0IgorbXNnc3RyICJzY3JpcHQgdm9vciBiaWp3ZXJrZW4gdmFuIGJlc2NoaWtiYWFyaGVpZHNsaWpzdCIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MjAwCittc2dpZCAiaW5zdGFsbGF0aW9uIHNjcmlwdCIKK21zZ3N0ciAiaW5zdGFsbGF0aWVzY3JpcHQiCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjI0NgorbXNnaWQgInF1ZXJ5L3NldHVwIHNjcmlwdCIKK21zZ3N0ciAicXVlcnkvc2V0dXAgc2NyaXB0IgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzo1MworIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gbWV0aG9kIG9wdGlvbnMgZmlsZSBgJS4yNTBzJyAtLSAlcyIKK21zZ3N0ciAic3ludGF4Zm91dCBpbiBtZXRob2RlIG9wdGllYmVzdGFuZCBgJS4yNTBzJyAtLSAlcyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcmVhZGluZyBvcHRpb25zIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImZvdXQgYmlqIGxlemVuIG9wdGllYmVzdGFuZCBgJS4yNTBzJyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgYCUuMjUwcycgZGlyZWN0b3J5IGZvciByZWFkaW5nIG1ldGhvZHMiCittc2dzdHIgImtvbiBgJS4yNTBzJyBtYXAgbmlldCBsZXplbiBvbSBtZXRob2RlbiB0ZSBsZXplbiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTA2CisjLCBjLWZvcm1hdAorbXNnaWQgIm1ldGhvZCBgJS4yNTBzJyBoYXMgbmFtZSB0aGF0IGlzIHRvbyBsb25nICglZCA+ICVkIGNoYXJhY3RlcnMpIgorbXNnc3RyICJtZXRob2RlIGAlLjI1MHMnIGhlZWZ0IGVlbiB0ZSBsYW5nZSBuYWFtICglZCA+ICVkIHRla2VucykiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjExNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gYWNjZXNzIG1ldGhvZCBzY3JpcHQgYCUuMjUwcyciCittc2dzdHIgImtvbiBtZXRob2Rlc2NyaXB0IGAlLjI1MHMnIG5pZXQgYmVuYWRlcmVuIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgbWV0aG9kIG9wdGlvbnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia29uIG1ldGhvZGUgb3B0aWViZXN0YW5kIGAlLjI1MHMnIG5pZXQgbGV6ZW4iCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE0NworbXNnaWQgIm5vbi1kaWdpdCB3aGVyZSBkaWdpdCB3YW50ZWQiCittc2dzdHIgIm5pZXQtY2lqZmVycyB3YWFyIGVlbiBjaWpmZXIgZ2V3ZW5zdCBpcyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTUwCittc2dpZCAiRU9GIGluIGluZGV4IHN0cmluZyIKK21zZ3N0ciAiYmVzdGFuZHNlaW5kZSBpbiBpbmRleHRla3N0IgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNTMKK21zZ2lkICJpbmRleCBzdHJpbmcgdG9vIGxvbmciCittc2dzdHIgImluZGV4dGVrc3QgdGUgbGFuZyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTU2Cittc2dpZCAibmV3bGluZSBiZWZvcmUgb3B0aW9uIG5hbWUgc3RhcnQiCittc2dzdHIgIm5pZXV3ZSByZWdlbCB2b29yIGJlZ2luIG9wdGllbmFhbSIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTU4Cittc2dpZCAiRU9GIGJlZm9yZSBvcHRpb24gbmFtZSBzdGFydCIKK21zZ3N0ciAiRU9GIHZvb3IgYmVnaW4gb3B0aWVuYWFtIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNjIKK21zZ2lkICJub25hbHBoYSB3aGVyZSBvcHRpb24gbmFtZSBzdGFydCB3YW50ZWQiCittc2dzdHIgIm5pZXQtbGV0dGVyIHdhYXIgZWVuIG9wdGllbmFhbSBnZXdlbnN0IGlzIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNjQKK21zZ2lkICJub24tYWxwaGFudW0gaW4gb3B0aW9uIG5hbWUiCittc2dzdHIgIm5pZXQtYWxmYW51bWVyaWVrIHRla2VuIGluIG9wdGllbmFhbSIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTY3Cittc2dpZCAiRU9GIGluIG9wdGlvbiBuYW1lIgorbXNnc3RyICJiZXN0YW5kc2VpbmRlIGluIG9wdGllbmFhbSIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTcyCittc2dpZCAibmV3bGluZSBiZWZvcmUgc3VtbWFyeSIKK21zZ3N0ciAibmlldXdlIHJlZ2VsIHZvb3Igc2FtZW52YXR0aW5nIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNzQKK21zZ2lkICJFT0YgYmVmb3JlIHN1bW1hcnkiCittc2dzdHIgImJlc3RhbmRzZWluZGUgdm9vciBzYW1lbnZhdHRpbmciCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE4MAorbXNnaWQgIkVPRiBpbiBzdW1tYXJ5IC0gbWlzc2luZyBuZXdsaW5lIgorbXNnc3RyICJiZXN0YW5kc2VpbmRlIGluIHNhbWVudmF0dGluZyAtIG9udGJyZWtlbmRlIG5pZXV3ZSByZWdlbCIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTkwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIG9wdGlvbiBkZXNjcmlwdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrb24gYmVzdGFuZCBtZXQgb3B0aWViZXNjaHJpanZpbmdlbiBgJS4yNTBzJyBuaWV0IG9wZW5lbiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTk0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IG9wdGlvbiBkZXNjcmlwdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrb24gYmVzdGFuZCBtZXQgb3B0aWViZXNjaHJpanZpbmdlbiBgJS4yNTBzJyBuaWV0IHZpbmRlbiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTk4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZWFkIG9wdGlvbiBkZXNjcmlwdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrb24gYmVzdGFuZCBtZXQgb3B0aWViZXNjaHJpanZpbmdlbiBgJS4yNTBzJyBuaWV0IGxlemVuIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgZHVyaW5nIHJlYWQgb2Ygb3B0aW9uIGRlc2NyaXB0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImZvdXQgYmlqIGxlemVuIHZhbiBiZXN0YW5kIG1ldCBvcHRpZWJlc2NocmlqdmlubmdlbiBgJS4yNTBzJyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MjI0CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGR1cmluZyByZWFkIG9mIG1ldGhvZCBvcHRpb25zIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImZvdXQgYmlqIGxlemVuIHZhbiBiZXN0YW5kIG1ldCBtZXRob2Rlbm9wdGllcyBgJS4yNTBzJyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MjQ3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIGN1cnJlbnQgb3B0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImtvbiBodWlkaWcgb3B0aWViZXN0YW5kIGAlLjI1MHMnIG5pZXQgb3BlbmVuIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyODkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gbmV3IG9wdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrb24gbmlldXdlIG9wdGllYmVzdGFuZCBgJS4yNTBzJyBuaWV0IG9wZW5lbiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MjkyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgb3B0aW9uIHRvIGAlLjI1MHMnIgorbXNnc3RyICJrb24gbmlldXdlIG9wdGllIG5pZXQgd2Vnc2NocmlqdmVuIG5hYXIgYCUuMjUwcyciCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjI5NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgbmV3IG9wdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrb24gbmlldXdlIG9wdGllYmVzdGFuZCBgJS4yNTBzJyBuaWV0IGFmc2x1aXRlbiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6Mjk3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyBvcHRpb24gYXMgYCUuMjUwcyciCittc2dzdHIgImtvbiBuaWV1d2Ugb3B0aWUgbmlldCBpbnN0YWxsZXJlbiBhbHMgYCUuMjUwcyciCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzozNgorbXNnaWQgIm5ldyBwYWNrYWdlIgorbXNnc3RyICJuaWV1dyBwYWtrZXQiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzozNworbXNnaWQgImluc3RhbGwiCittc2dzdHIgImluc3RhbGxlZXIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzozOAorbXNnaWQgImhvbGQiCittc2dzdHIgImJlaG91ZGVuIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MzkKK21zZ2lkICJyZW1vdmUiCittc2dzdHIgInZlcndpamRlciIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjQwCittc2dpZCAicHVyZ2UiCittc2dzdHIgIndpc3NlbiIKKworIy4gVFJBTlNMQVRPUlM6IFRoZSBzcGFjZSBpcyBhIHRyaWNrIHRvIHdvcmsgYXJvdW5kIGdldHRleHQgd2hpY2ggdXNlcworIy4gKiB0aGUgZW1wdHkgc3RyaW5nIHRvIHN0b3JlIGluZm9ybWF0aW9uIGFib3V0IHRoZSB0cmFuc2xhdGlvbi4gRE8gTk9UCisjLiAqIENIQU5HRSBUSEFUIElOIEEgVFJBTlNMQVRJT04hIFRoZSBjb2RlIHJlYWxseSByZWxpZXMgb24gdGhhdCBiZWluZworIy4gKiBhIHNpbmdsZSBzcGFjZS4KKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo0NworbXNnaWQgIiAiCittc2dzdHIgIiAiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo0OAorbXNnaWQgIlJFSU5TVEFMTCIKK21zZ3N0ciAiSEVSSU5TVEFMTEFUSUUiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1MQorbXNnaWQgIm5vdCBpbnN0YWxsZWQiCittc2dzdHIgIm5pZXQgZ2XDr25zdGFsbGVlcmQiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1MgorbXNnaWQgInJlbW92ZWQgKGNvbmZpZ3MgcmVtYWluKSIKK21zZ3N0ciAidmVyd2lqZGVyZCAoY29uZmlnIGJsaWpmdCkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1MworbXNnaWQgImhhbGYgaW5zdGFsbGVkIgorbXNnc3RyICJoYWxmIGdlw69uc3RhbGxlZXJkIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTQKK21zZ2lkICJ1bnBhY2tlZCAobm90IHNldCB1cCkiCittc2dzdHIgInVpdGdlcGFrdCAobmlldCBpbmdlc3RlbGQpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTUKK21zZ2lkICJoYWxmIGNvbmZpZ3VyZWQgKGNvbmZpZyBmYWlsZWQpIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1NgorbXNnaWQgImF3YWl0aW5nIHRyaWdnZXIgcHJvY2Vzc2luZyIKK21zZ3N0ciAid2FjaHQgb3Agb3AgdmVyd2Vya2luZyB2YW4gdHJpZ2dlcnMiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1NworbXNnaWQgInRyaWdnZXJlZCIKK21zZ3N0ciAidHJpZ2dlciBhYW5nZXJvZXBlbiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjU4Cittc2dpZCAiaW5zdGFsbGVkIgorbXNnc3RyICJnZcOvbnN0YWxsZWVyZCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjYxCittc2dpZCAiUmVxdWlyZWQiCittc2dzdHIgIlZlcmVpc3QiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo2MgorbXNnaWQgIkltcG9ydGFudCIKK21zZ3N0ciAiQmVsYW5ncmlqayIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjYzCittc2dpZCAiU3RhbmRhcmQiCittc2dzdHIgIlN0YW5kYWFyZCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjY0Cittc2dpZCAiT3B0aW9uYWwiCittc2dzdHIgIk9wdGlvbmVlbCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjY1Cittc2dpZCAiRXh0cmEiCittc2dzdHIgIkV4dHJhIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjYKK21zZ2lkICIhQnVnISIKK21zZ3N0ciAiIUJ1ZyEiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo2NworbXNnaWQgIlVuY2xhc3NpZmllZCIKK21zZ3N0ciAiT25nZWNsYXNzaWZpY2VlcmQiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3MAorbXNnaWQgInN1Z2dlc3RzIgorbXNnc3RyICJzdWdnZXJlZXJ0IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzEKK21zZ2lkICJyZWNvbW1lbmRzIgorbXNnc3RyICJyYWFkIGFhbiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjcyCittc2dpZCAiZGVwZW5kcyBvbiIKK21zZ3N0ciAiaGVlZnQgYWxzIHZlcmVpc3RlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzMKK21zZ2lkICJwcmUtZGVwZW5kcyBvbiIKK21zZ3N0ciAiaGVlZnQgYWxzIHZvb3ItdmVyZWlzdGUiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3NAorbXNnaWQgImJyZWFrcyIKK21zZ3N0ciAiYnJlZWtwdW50ZW4iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3NQorbXNnaWQgImNvbmZsaWN0cyB3aXRoIgorbXNnc3RyICJpcyBpbiBzdHJpamQgbWV0IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzYKK21zZ2lkICJwcm92aWRlcyIKK21zZ3N0ciAidm9vcnppZXQiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3NworbXNnaWQgInJlcGxhY2VzIgorbXNnc3RyICJ2ZXJ2YW5ndCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjc4Cittc2dpZCAiZW5oYW5jZXMiCittc2dzdHIgInZlcmJldGVydCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjgxCittc2dpZCAiUmVxIgorbXNnc3RyICJSZXEiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4MgorbXNnaWQgIkltcCIKK21zZ3N0ciAiSW1wIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODMKK21zZ2lkICJTdGQiCittc2dzdHIgIlN0ZCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjg0Cittc2dpZCAiT3B0IgorbXNnc3RyICJPcHQiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4NQorbXNnaWQgIlh0ciIKK21zZ3N0ciAiWHRyIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODYKK21zZ2lkICJiVUciCittc2dzdHIgImJVRyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjg3Cittc2dpZCAiPyIKK21zZ3N0ciAiPyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjk1IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTUKK21zZ2lkICJCcm9rZW4iCittc2dzdHIgIk5pZXQtd2Vya2VuZCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjk2Cittc2dpZCAiTmV3IgorbXNnc3RyICJOaWV1dyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjk3Cittc2dpZCAiVXBkYXRlZCIKK21zZ3N0ciAiQmlqZ2V3ZXJrdCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjk4Cittc2dpZCAiT2Jzb2xldGUvbG9jYWwiCittc2dzdHIgIlZlcm91ZGVyZC9sb2thYWwiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo5OQorbXNnaWQgIlVwLXRvLWRhdGUiCittc2dzdHIgIlVwLXRvLWRhdGUiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDAKK21zZ2lkICJBdmFpbGFibGUiCittc2dzdHIgIkJlc2NoaWtiYWFyIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTAxIGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTcKK21zZ2lkICJSZW1vdmVkIgorbXNnc3RyICJWZXJ3aWpkZXJkIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTAyIGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTEKK21zZ2lkICJCcm9rZW5seSBpbnN0YWxsZWQgcGFja2FnZXMiCittc2dzdHIgIk5pZXQtd2Vya2VuZGUgZ2XDr25zdGFsbGVlcmRlIHBha2tldHRlbiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwMworbXNnaWQgIk5ld2x5IGF2YWlsYWJsZSBwYWNrYWdlcyIKK21zZ3N0ciAiTmlldXcgYmVzY2hpa2JhcmUgcGFra2V0dGVuIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTA0Cittc2dpZCAiVXBkYXRlZCBwYWNrYWdlcyAobmV3ZXIgdmVyc2lvbiBpcyBhdmFpbGFibGUpIgorbXNnc3RyICJCaWpnZXdlcmt0ZSBwYWtrZXR0ZW4gKG5pZXV3ZSB2ZXJzaWUgaXMgYmVzY2hpa2JhYXIpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTA1Cittc2dpZCAiT2Jzb2xldGUgYW5kIGxvY2FsIHBhY2thZ2VzIHByZXNlbnQgb24gc3lzdGVtIgorbXNnc3RyICJWZXJvdWRlcmRlIGVuIGxva2FsZSBwYWtrZXR0ZW4gb3Agc3lzdGVlbSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwNgorbXNnaWQgIlVwIHRvIGRhdGUgaW5zdGFsbGVkIHBhY2thZ2VzIgorbXNnc3RyICJVcC10by1kYXRlIGdlw69uc3RhbGxlZXJkZSBwYWtrZXR0ZW4iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDcKK21zZ2lkICJBdmFpbGFibGUgcGFja2FnZXMgKG5vdCBjdXJyZW50bHkgaW5zdGFsbGVkKSIKK21zZ3N0ciAiQmVzY2hpa2JhcmUgcGFra2V0dGVuIChuaWV0IGdlw69uc3RhbGxlZXJkKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwOAorbXNnaWQgIlJlbW92ZWQgYW5kIG5vIGxvbmdlciBhdmFpbGFibGUgcGFja2FnZXMiCittc2dzdHIgIlZlcndpamRlcmRlIGVuIGludHVzc2VuIHZlcm91ZGVyZGUgcGFra2V0dGVuIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTEyCittc2dpZCAiSW5zdGFsbGVkIHBhY2thZ2VzIgorbXNnc3RyICJHZcOvbnN0YWxsZWVyZGUgcGFra2V0dGVuIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTEzCittc2dpZCAiUmVtb3ZlZCBwYWNrYWdlcyAoY29uZmlndXJhdGlvbiBzdGlsbCBwcmVzZW50KSIKK21zZ3N0ciAiVmVyd2lqZGVyZGUgcGFra2V0dGVuIChtYWFyIGNvbmZpZ3VyYXRpZSBzdGFhdCBlciBub2cpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTE0Cittc2dpZCAiUHVyZ2VkIHBhY2thZ2VzIGFuZCB0aG9zZSBuZXZlciBpbnN0YWxsZWQiCittc2dzdHIgIkdld2lzdGUgb2Ygbm9vaXQgZ2XDr25zdGFsbGVlcmRlIHBha2tldHRlbiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExNgorbXNnaWQgIkluc3RhbGxlZCIKK21zZ3N0ciAiR2XDr25zdGFsbGVlcmRlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTE4Cittc2dpZCAiUHVyZ2VkIgorbXNnc3RyICJHZXdpc3QiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxOTgKK21zZ2lkICJkc2VsZWN0IC0gcmVjdXJzaXZlIHBhY2thZ2UgbGlzdGluZyIKK21zZ3N0ciAiZHNlbGVjdCAtIHJlY3Vyc2lldmUgcGFra2V0dGVubGlqc3QiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxOTkKK21zZ2lkICJkc2VsZWN0IC0gaW5zcGVjdGlvbiBvZiBwYWNrYWdlIHN0YXRlcyIKK21zZ3N0ciAiZHNlbGVjdCAtIGJla2lqa2VuIHBha2tldHN0YXR1cyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIwMAorbXNnaWQgImRzZWxlY3QgLSBtYWluIHBhY2thZ2UgbGlzdGluZyIKK21zZ3N0ciAiZHNlbGVjdCAtIGhvb2ZkcGFra2V0dGVubGlqc3QiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMDgKK21zZ2lkICIgKGJ5IHNlY3Rpb24pIgorbXNnc3RyICIgKG9wIHNlY3RpZSkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMTEKK21zZ2lkICIgKGF2YWlsLiwgc2VjdGlvbikiCittc2dzdHIgIiAoYmVzY2guLCBzZWN0aWUpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjE0Cittc2dpZCAiIChzdGF0dXMsIHNlY3Rpb24pIgorbXNnc3RyICIgKHN0YXR1cywgc2VjdGllKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIyMworbXNnaWQgIiAoYnkgcHJpb3JpdHkpIgorbXNnc3RyICIgKG9wIHByaW9yaXRlaXQpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjI2Cittc2dpZCAiIChhdmFpbC4sIHByaW9yaXR5KSIKK21zZ3N0ciAiIChiZXNjaC4sIHByaW9yaXRlaXQpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjI5Cittc2dpZCAiIChzdGF0dXMsIHByaW9yaXR5KSIKK21zZ3N0ciAiIChzdGF0dXMsIHByaW9yaXRlaXQpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjM4IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNTAKK21zZ2lkICIgKGFscGhhYmV0aWNhbGx5KSIKK21zZ3N0ciAiIChhbGZhYmV0aXNjaCkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNDEKK21zZ2lkICIgKGJ5IGF2YWlsYWJpbGl0eSkiCittc2dzdHIgIiAob3AgYmVzY2hpa2JhYXJoZWlkKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI0NAorbXNnaWQgIiAoYnkgc3RhdHVzKSIKK21zZ3N0ciAiIChvcCBzdGF0dXMpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjU4Cittc2dpZCAiIG1hcms6Ky89Ly0gdGVyc2U6diBoZWxwOj8iCittc2dzdHIgIiBtYXJrZWVyOisvPS8tIGtvcnQ6diBodWxwOj8iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNTkKK21zZ2lkICIgbWFyazorLz0vLSB2ZXJib3NlOnYgaGVscDo/IgorbXNnc3RyICIgbWFya2VlcjorLz0vLSBsYW5nOnYgaHVscDo/IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjYwCittc2dpZCAiIHRlcnNlOnYgaGVscDo/IgorbXNnc3RyICIga29ydDp2IGh1bHA6PyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI2MQorbXNnaWQgIiB2ZXJib3NlOnYgaGVscDo/IgorbXNnc3RyICIgbGFuZzp2IGh1bHA6PyIKKworIzogZHNlbGVjdC9wa2dpbmZvLmNjOjgwCittc2dpZCAiIgorIlRoZSBsaW5lIHlvdSBoYXZlIGhpZ2hsaWdodGVkIHJlcHJlc2VudHMgbWFueSBwYWNrYWdlczsgaWYgeW91IGFzayB0byAiCisiaW5zdGFsbCwgcmVtb3ZlLCBob2xkLCBldGMuIGl0IHlvdSB3aWxsIGFmZmVjdCBhbGwgdGhlIHBhY2thZ2VzIHdoaWNoIG1hdGNoICIKKyJ0aGUgY3JpdGVyaW9uIHNob3duLlxuIgorIlxuIgorIklmIHlvdSBtb3ZlIHRoZSBoaWdobGlnaHQgdG8gYSBsaW5lIGZvciBhIHBhcnRpY3VsYXIgcGFja2FnZSB5b3Ugd2lsbCBzZWUgIgorImluZm9ybWF0aW9uIGFib3V0IHRoYXQgcGFja2FnZSBkaXNwbGF5ZWQgaGVyZS5cbiIKKyJZb3UgY2FuIHVzZSBgbycgYW5kIGBPJyB0byBjaGFuZ2UgdGhlIHNvcnQgb3JkZXIgYW5kIGdpdmUgeW91cnNlbGYgdGhlICIKKyJvcHBvcnR1bml0eSB0byBtYXJrIHBhY2thZ2VzIGluIGRpZmZlcmVudCBraW5kcyBvZiBncm91cHMuIgorbXNnc3RyICIiCisiRGUgcmVnZWwgZGllIHUgaGVlZnQgZ2VzZWxlY3RlZXJkIHJlcHJlc2VudGVlcnQgbWVlcmRlcmUgcGFra2V0dGVuOyBhbHMgdSAiCisidnJhYWd0IG9tIHRlIGluc3RhbGxlcmVuLCB2ZXJ3aWpkZXJlbiwgdmFzdGhvdWRlbiwgZW56LiwgaXMgZGl0IHZhbiAiCisidG9lcGFzc2luZyBvcCBhbGxlIHBha2tldHRlbiB3YWFyIGRpdCBjcml0ZXJpYSBvcCB2YW4gdG9lcGFzc2luZyBpcy5cbiIKKyJcbiIKKyJXYW5uZWVyIHUgZGUgc2VsZWN0aWUgdmVycGxhYXRzdCBuYWFyIGRlIHJlZ2VsIHZvb3IgZWVuIGJlcGFhbGQgcGFra2V0LCAiCisia3Jpamd0IHUgZGUgaW5mb3JtYXRpZSBvdmVyIGRhdCBwYWtrZXQgdGUgemllbi5cbiIKKyJVIGt1bnQgYG8nIGVuIGBPJyBnZWJydWlrZW4gb20gZGUgc29ydGVlcnZvbGdvcmRlIHRlIHZlcmFuZGVyZW4gd2FhcmRvb3IgdSAiCisiZGUgbW9nZWxpamtoZWlkIGtyaWpndCBvbSBwYWtrZXR0ZW4gZGUgbWFya2VyZW4gaW4gdmVyc2NoaWxsZW5kZSAiCisiZ3JvZXBlcmluZ2VuLiIKKworIzogZHNlbGVjdC9wa2dpbmZvLmNjOjkzCittc2dpZCAiSW50ZXJyZWxhdGlvbnNoaXBzIgorbXNnc3RyICJPbmRlcmxpbmdlIHJlbGF0aWVzIgorCisjOiBkc2VsZWN0L3BrZ2luZm8uY2M6MTEyCittc2dpZCAiTm8gZGVzY3JpcHRpb24gYXZhaWxhYmxlLiIKK21zZ3N0ciAiR2VlbiBvbXNjaHJpanZpbmcgYmVzY2hpa2JhYXIuIgorCisjOiBkc2VsZWN0L3BrZ2luZm8uY2M6MTMwCittc2dpZCAiSW5zdGFsbGVkIGNvbnRyb2wgZmlsZSBpbmZvcm1hdGlvbiIKK21zZ3N0ciAiR2XDr25zdGFsbGVlcmRlIGluZm9ybWF0aWUgdWl0ICdjb250cm9sJy1iZXN0YW5kZW4iCisKKyM6IGRzZWxlY3QvcGtnaW5mby5jYzoxNDYKK21zZ2lkICJBdmFpbGFibGUgY29udHJvbCBmaWxlIGluZm9ybWF0aW9uIgorbXNnc3RyICJCZXNjaGlrYmFyZSBpbmZvcm1hdGllIHVpdCAnY29udHJvbCctYmVzdGFuZGVuIgorCisjOiBkc2VsZWN0L3BrZ2xpc3QuY2M6NDE2Cittc2dpZCAiVGhlcmUgYXJlIG5vIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2xpc3QuY2M6NTA3Cittc2dpZCAiaW52YWxpZCBzZWFyY2ggb3B0aW9uIGdpdmVuIgorbXNnc3RyICJvbmdlbGRpZ2Ugem9la29wdGllIG9wZ2VnZXZlbiIKKworIzogZHNlbGVjdC9wa2dsaXN0LmNjOjUyMQorbXNnaWQgImVycm9yIGluIHJlZ3VsYXIgZXhwcmVzc2lvbiIKK21zZ3N0ciAiZm91dCBpbiByZWd1bGllcmUgZXhwcmVzc2llIgorCisjOiBkc2VsZWN0L3BrZ3N1Ymxpc3QuY2M6MTA3Cittc2dpZCAiIGRvZXMgbm90IGFwcGVhciB0byBiZSBhdmFpbGFibGVcbiIKK21zZ3N0ciAiIGxpamt0IG5pZXQgYmVzY2hpa2JhYXIgdGUgemlqblxuIgorCisjOiBkc2VsZWN0L3BrZ3N1Ymxpc3QuY2M6MTI3Cittc2dpZCAiIG9yICIKK21zZ3N0ciAiIG9mICIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6NTcKK21zZ2lkICJBbGwiCittc2dzdHIgIkFsbGVzIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo3OQorbXNnaWQgIkFsbCBwYWNrYWdlcyIKK21zZ3N0ciAiQWxsZSBwYWtrZXR0ZW4iCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHBhY2thZ2VzIHdpdGhvdXQgYSBzZWN0aW9uIgorbXNnc3RyICIlcyBwYWtrZXR0ZW4gem9uZGVyIHNlY3RpZSIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcGFja2FnZXMgaW4gc2VjdGlvbiAlcyIKK21zZ3N0ciAiJXMgcGFra2V0dGVuIGluIHNlY3RpZSAlcyIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6OTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgJXMgcGFja2FnZXMiCittc2dzdHIgIiVzICVzIHBha2tldHRlbiIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgJXMgcGFja2FnZXMgd2l0aG91dCBhIHNlY3Rpb24iCittc2dzdHIgIiVzICVzIHBha2tldHRlbiB6b25kZXIgc2VjdGllIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo5NworIywgYy1mb3JtYXQKK21zZ2lkICIlcyAlcyBwYWNrYWdlcyBpbiBzZWN0aW9uICVzIgorbXNnc3RyICIlcyAlcyBwYWtrZXR0ZW4gaW4gc2VjdGllICVzIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoxMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJS0qcyAlcyVzJXM7ICAlcyAod2FzOiAlcykuICAlcyIKK21zZ3N0ciAiJS0qcyAlcyVzJXM7ICAlcyAod2FzOiAlcykuICAlcyIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6MjYzCittc2dpZCAiRXJyb3IiCittc2dzdHIgIkZvdXQiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI2NworbXNnaWQgIkluc3RhbGxlZD8iCittc2dzdHIgIkdlw69uc3RhbGxlZXJkPyIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6MjcxCittc2dpZCAiT2xkIG1hcmsiCittc2dzdHIgIkh1aWRpZyIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6Mjc1Cittc2dpZCAiTWFya2VkIGZvciIKK21zZ3N0ciAiR2V3ZW5zdCIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6Mjc4Cittc2dpZCAiRUlPTSIKK21zZ3N0ciAiRUlPTSIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6MjgwCittc2dpZCAiU2VjdGlvbiIKK21zZ3N0ciAiU2VjdGllIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyODEKK21zZ2lkICJQcmlvcml0eSIKK21zZ3N0ciAiVm9vcnJhbmciCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI4MgorbXNnaWQgIlBhY2thZ2UiCittc2dzdHIgIlBha2tldCIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6Mjg2Cittc2dpZCAiSW5zdC52ZXIiCittc2dzdHIgIkdlw69uc3QudmVyIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyODkKK21zZ2lkICJBdmFpbC52ZXIiCittc2dzdHIgIkJlc2NoLnZlciIKKworI34gbXNnaWQgInJldHVybmVkIGVycm9yIGV4aXQgc3RhdHVzICVkLlxuIgorI34gbXNnc3RyICJnYWYgZm91dHN0YXR1cyAlZCB0ZXJ1Zy5cbiIKKworI34gbXNnaWQgIndhcyBpbnRlcnJ1cHRlZC5cbiIKKyN+IG1zZ3N0ciAid2VyZCBvbmRlcmJyb2tlbi5cbiIKKworI34gbXNnaWQgIndhcyB0ZXJtaW5hdGVkIGJ5IGEgc2lnbmFsOiAlcy5cbiIKKyN+IG1zZ3N0ciAid2VyZCBhZmdlYnJva2VuIGRvb3Igc2lnbmFhbDogJXMuXG4iCisKKyN+IG1zZ2lkICIoSXQgbGVmdCBhIGNvcmVkdW1wLilcbiIKKyN+IG1zZ3N0ciAiKEhldCBsaWV0IGVlbiBnZWhldWdlbmR1bXAgYWNodGVyLilcbiIKKworI34gbXNnaWQgImZhaWxlZCB3aXRoIGFuIHVua25vd24gd2FpdCByZXR1cm4gY29kZSAlZC5cbiIKKyN+IG1zZ3N0ciAibWlzbHVrdCBtZXQgZWVuIG9uYmVrZW5kZSB3YWNodHN0YXR1c2NvZGUgJWQuXG4iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcnVuICUuMjUwcyBwcm9jZXNzIGAlLjI1MHMnIgorI34gbXNnc3RyICJrb24gJS4yNTBzIHByb2NlcyBgJS4yNTBzJyBuaWV0IGRyYWFpZW4iCisKKyN+IG1zZ2lkICJmYWlsZWQgY29uZmlnIgorI34gbXNnc3RyICJjb25maWcgaXMgbWlzbHVrdCIKKworI34gbXNnaWQgInVuYWJsZSB0byB3YWl0IGZvciAlLjI1MHMiCisjfiBtc2dzdHIgImtvbiBuaWV0IHdhY2h0ZW4gb3AgJS4yNTBzIgorCisjfiBtc2dpZCAiZ290IHdyb25nIGNoaWxkJ3Mgc3RhdHVzIC0gYXNrZWQgZm9yICVsZCwgZ290ICVsZCIKKyN+IG1zZ3N0ciAia3JlZWcgZm91dGlldmUga2luZHN0YXR1cyAtIHZyb2VnIG9tICVsZCwga3JlZWcgJWxkIgorCisjfiBtc2dpZCAiUmVjb21tZW5kZWQiCisjfiBtc2dzdHIgIkFhbmdlcmFkZW4iCisKKyN+IG1zZ2lkICJDb250cmliIgorI34gbXNnc3RyICJDb250cmliIgorCisjfiBtc2dpZCAiUmVjIgorI34gbXNnc3RyICJSZWMiCisKKyN+IG1zZ2lkICJDdGIiCisjfiBtc2dzdHIgIkN0YiIKKworI34gbXNnaWQgIiIKKyN+ICJiYXNlbGlzdDo6c3RhcnRkaXNwbGF5KCkgZG9uZSAuLi5cbiIKKyN+ICJcbiIKKyN+ICIgeG1heD0lZCwgeW1heD0lZDtcbiIKKyN+ICJcbiIKKyN+ICIgdGl0bGVfaGVpZ2h0PSVkLCBjb2xoZWFkc19oZWlnaHQ9JWQsIGxpc3RfaGVpZ2h0PSVkO1xuIgorI34gIiB0aGlzc3RhdGVfaGVpZ2h0PSVkLCBpbmZvX2hlaWdodD0lZCwgd2hhdGluZm9faGVpZ2h0PSVkO1xuIgorI34gIlxuIgorI34gIiBjb2xoZWFkc19yb3c9JWQsIHRoaXNzdGF0ZV9yb3c9JWQsIGluZm9fcm93PSVkO1xuIgorI34gIiB3aGF0aW5mb19yb3c9JWQsIGxpc3Rfcm93PSVkO1xuIgorI34gIlxuIgorI34gbXNnc3RyICIiCisjfiAiYmFzZWxpc3Q6OnN0YXJ0ZGlzcGxheSgpIGRvbmUgLi4uXG4iCisjfiAiXG4iCisjfiAiIHhtYXg9JWQsIHltYXg9JWQ7XG4iCisjfiAiXG4iCisjfiAiIHRpdGxlX2hlaWdodD0lZCwgY29saGVhZHNfaGVpZ2h0PSVkLCBsaXN0X2hlaWdodD0lZDtcbiIKKyN+ICIgdGhpc3N0YXRlX2hlaWdodD0lZCwgaW5mb19oZWlnaHQ9JWQsIHdoYXRpbmZvX2hlaWdodD0lZDtcbiIKKyN+ICJcbiIKKyN+ICIgY29saGVhZHNfcm93PSVkLCB0aGlzc3RhdGVfcm93PSVkLCBpbmZvX3Jvdz0lZDtcbiIKKyN+ICIgd2hhdGluZm9fcm93PSVkLCBsaXN0X3Jvdz0lZDtcbiIKKyN+ICJcbiIKKworI34gbXNnaWQgIltub25lXSIKKyN+IG1zZ3N0ciAiW2dlZW5dIgorCisjfiBtc2dpZCAiZXJyb3IgdW4tY2F0Y2hpbmcgc2lnbmFsICVkOiAlc1xuIgorI34gbXNnc3RyICJmb3V0IGJpaiBvbi12YW5nZW4gdmFuIHNpZ25hYWwgJWQ6ICVzXG4iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gaWdub3JlIHNpZ25hbCAlZCBiZWZvcmUgcnVubmluZyAlLjI1MHMiCisjfiBtc2dzdHIgImtvbiBzaWduYWFsICVkIG5pZXQgbmVnZXJlbiB2b29yIGhldCBkcmFhaWVuIHZhbiAlLjI1MHMiCisKKyN+IG1zZ2lkICIobm8gY2xpZW50ZGF0YSkiCisjfiBtc2dzdHIgIihnZWVuIGNsaWVudGRhdGEpIgorCisjfiBtc2dpZCAiPG51bGw+IgorI34gbXNnc3RyICI8bnVsbD4iCisKKyN+IG1zZ2lkICJpbnRlcnJlbGF0aW9uc2hpcHMgYWZmZWN0aW5nICIKKyN+IG1zZ3N0ciAib25kZXJsaW5nZSByZWxhdGllcyBiZXRyZWZmZW5kZSAiCisKKyN+IG1zZ2lkICJkZXNjcmlwdGlvbiBvZiAiCisjfiBtc2dzdHIgIm9tc2NocmlqdmluZyB2YW4gIgorCisjfiBtc2dpZCAiZGVzY3JpcHRpb24iCisjfiBtc2dzdHIgIm9tc2NocmlqdmluZyIKKworI34gbXNnaWQgImN1cnJlbnRseSBpbnN0YWxsZWQgY29udHJvbCBpbmZvIgorI34gbXNnc3RyICJudSBnZcOvbnN0YWxsZWVyZGUgYmVzdHVyaW5nc2luZm8iCisKKyN+IG1zZ2lkICJhdmFpbGFibGUgdmVyc2lvbiBvZiBjb250cm9sIGluZm8gZm9yICIKKyN+IG1zZ3N0ciAiYmVzY2hpa2JhcmUgdmVyc2llIHZhbiBiZXN0dXJpbmdzaW5mbyB2b29yICIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9ubi5nbW8gYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vbm4uZ21vCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjY4OGFmZTgKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vbm4uZ21vCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9ubi5wbyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9ubi5wbwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kYzJkYmZjCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL25uLnBvCkBAIC0wLDAgKzEsMTcxMiBAQAorIyB0cmFuc2xhdGlvbiBvZiBkZWJjb25mX25uLnBvIHRvIE5vcndlZ2lhbiBueW5vcnNrCisjIHRyYW5zbGF0aW9uIG9mIGRwa2dfbm4ucG8gdG8gTm9yd2VnaWFuIChOeW5vcnNrKQorIyB0cmFuc2xhdGlvbiBvZiBubi5wbyB0byBOb3J3ZWdpYW4gbnlub3JzaworIyB0cmFuc2xhdGlvbiBvZiBkcGtnLnBvIHRvIE5vcndlZ2lhbiBueW5vcnNrCisjIHRyYW5zbGF0aW9uIG9mIG5uLnBvIHRvIE5vcndlZ2lhbiBOeW5vcnNrCisjIHRyYW5zbGF0aW9uIG9mIGRwa2cucG8gdG8gTm9yd2VnaWFuIE55bm9yc2sKKyMgR2F1dGUgSHZvc2xlZiBLdmFsbmVzIDxnYXV0ZUB2ZXJkc3ZldmVuLmNvbT4sIDIwMDMsIDIwMDQuCisjIEjDpXZhcmQgS29yc3ZvbGwgPGtvcnN2b2xsQHNrdWxlbGludXgubm8+LCAyMDAzLCAyMDA0LCAyMDA1LgorbXNnaWQgIiIKK21zZ3N0ciAiIgorIlByb2plY3QtSWQtVmVyc2lvbjogZGViY29uZl9ublxuIgorIlJlcG9ydC1Nc2dpZC1CdWdzLVRvOiBkZWJpYW4tZHBrZ0BsaXN0cy5kZWJpYW4ub3JnXG4iCisiUE9ULUNyZWF0aW9uLURhdGU6IDIwMTEtMTAtMTQgMDc6MTErMDIwMFxuIgorIlBPLVJldmlzaW9uLURhdGU6IDIwMDYtMDItMTcgMDg6NTcrMDIwMFxuIgorIkxhc3QtVHJhbnNsYXRvcjogSMOldmFyZCBLb3Jzdm9sbCA8a29yc3ZvbGxAc2t1bGVsaW51eC5ubz5cbiIKKyJMYW5ndWFnZS1UZWFtOiBOb3J3ZWdpYW4gbnlub3JzayA8aTE4bi1ubkBsaXN0ZXIucGluZy51aW8ubm8+XG4iCisiTGFuZ3VhZ2U6IG5uXG4iCisiTUlNRS1WZXJzaW9uOiAxLjBcbiIKKyJDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9VVRGLThcbiIKKyJDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiA4Yml0XG4iCisiWC1HZW5lcmF0b3I6IEtCYWJlbCAxLjEwXG4iCisiUGx1cmFsLUZvcm1zOiAgbnBsdXJhbHM9MjsgcGx1cmFsPShuICE9IDEpO1xuIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjEyNQorbXNnaWQgIlNlYXJjaCBmb3IgPyAiCittc2dzdHIgIlPDuGsgZXR0ZXIgPyAiCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MTQ3Cittc2dpZCAiRXJyb3I6ICIKK21zZ3N0ciAiRmVpbDogIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE3OAorbXNnaWQgIkhlbHA6ICIKK21zZ3N0ciAiSGplbHA6ICIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxODQKK21zZ2lkICJQcmVzcyA/IGZvciBoZWxwIG1lbnUsIC4gZm9yIG5leHQgdG9waWMsIDxzcGFjZT4gdG8gZXhpdCBoZWxwLiIKK21zZ3N0ciAiIgorIlRyeWtrID8gZm9yIMOlIHZpc2EgaGplbHBlbWVueSwgwqsuwrsgZm9yIG5lc3RlIGVtbmUsIDxtZWxsb21yb20+IGZvciDDpSAiCisiYXZzbHV0dGEgaGplbHBhLiIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxOTEKK21zZ2lkICJIZWxwIGluZm9ybWF0aW9uIGlzIGF2YWlsYWJsZSB1bmRlciB0aGUgZm9sbG93aW5nIHRvcGljczoiCittc2dzdHIgIkhqZWxwIGZvciBmw7hsZ2phbmRlIGVtbmUgZXIgdGlsZ2plbmdlbGVnOiIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxOTkKK21zZ2lkICIiCisiUHJlc3MgYSBrZXkgZnJvbSB0aGUgbGlzdCBhYm92ZSwgPHNwYWNlPiBvciBgcScgdG8gZXhpdCBoZWxwLFxuIgorIiAgb3IgYC4nIChmdWxsIHN0b3ApIHRvIHJlYWQgZWFjaCBoZWxwIHBhZ2UgaW4gdHVybi4gIgorbXNnc3RyICIiCisiVHJ5a2sgZWluIHRhc3QgZnLDpSBsaXN0YSBvdmVyLCA8bWVsbG9tcm9tPiBlbGxlciDCq3HCuyBmb3Igw6UgYXZzbHV0dGEgaGplbHAuXG4iCisiICBlbGxlciDCqy7CuyBmb3Igw6UgbGVzZSBrdmFyIGhqZWxwZXNpZGUgZXR0ZXIga3ZhcmFuZHJlLiAiCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MjA1Cittc2dpZCAiZXJyb3IgcmVhZGluZyBrZXlib2FyZCBpbiBoZWxwIgorbXNnc3RyICJmZWlsIHZlZCBsZXNpbmcgYXYgdGFzdGF0dXIgaSBoamVscCIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo1NworbXNnaWQgImlvY3RsKFRJT0NHV0lOU1opIGZhaWxlZCIKK21zZ3N0ciAiaW9jdGwoVElPQ0dXSU5TWikgZmVpbGEiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6NjAKK21zZ2lkICJkb3VwZGF0ZSBpbiBTSUdXSU5DSCBoYW5kbGVyIGZhaWxlZCIKK21zZ3N0ciAiZG91cHRhZGUgaSBTSUdXSU5DSC1oYW5kdGVyYXJlbiBmZWlsYSIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo2NworbXNnaWQgImZhaWxlZCB0byByZXN0b3JlIG9sZCBTSUdXSU5DSCBzaWdhY3QiCittc2dzdHIgImtsYXJ0ZSBpa2tqZSDDpSBnamVub3BwcmV0dGEgZ2FtbWFsIFNJR1dJTkNIIHNpZ2FjdCIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo2OQorbXNnaWQgImZhaWxlZCB0byByZXN0b3JlIG9sZCBzaWduYWwgbWFzayIKK21zZ3N0ciAia2xhcnRlIGlra2plIGdqZW5vcHByZXR0YSBnYW1tYWwgc2lnbmFsbWFza2UiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6NzkKK21zZ2lkICJmYWlsZWQgdG8gZ2V0IG9sZCBzaWduYWwgbWFzayIKK21zZ3N0ciAia2xhcnRlIGlra2plIGhlbnRhIGdhbW1hbCBzaWduYWxtYXNrZSIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo4MAorbXNnaWQgImZhaWxlZCB0byBnZXQgb2xkIFNJR1dJTkNIIHNpZ2FjdCIKK21zZ3N0ciAia2xhcnRlIGlra2plIGhlbnRhIGdhbW1hbCBTSUdXSU5DSCBzaWdhY3QiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6ODQKK21zZ2lkICJmYWlsZWQgdG8gYmxvY2sgU0lHV0lOQ0giCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBibG9ra2VyYSBTSUdXSU5DSCIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo4OQorbXNnaWQgImZhaWxlZCB0byBzZXQgbmV3IFNJR1dJTkNIIHNpZ2FjdCIKK21zZ3N0ciAia2xhcnRlIGlra2plIHNldGphIG55IFNJR1dJTkNIIHNpZ2FjdCIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxMjYKK21zZ2lkICJmYWlsZWQgdG8gYWxsb2NhdGUgY29sb3VyIHBhaXIiCittc2dzdHIgImtsYXJ0ZSBpa2tqZSB0aWxvcmRuYSBmYXJnZXBhciIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxNjcKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHRpdGxlIHdpbmRvdyIKK21zZ3N0ciAia2xhcnRlIGlra2plIGxhZ2EgdGl0dGVsdmluZGF1Z2UiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTcxCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSB3aGF0aW5mbyB3aW5kb3ciCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBsYWdhIHdoYXRpbmZvLXZpbmRhdWdlIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE3NQorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgYmFzZWxpc3QgcGFkIgorbXNnc3RyICJrbGFydGUgaWtramUgbGFnYSBiYXNlbGlzdC1wYWQiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTc4Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBoZWFkaW5nIHBhZCIKK21zZ3N0ciAia2xhcnRlIGlra2plIGxhZ2EgaGVhZGluZy1wYWQiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTgyCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSB0aGlzc3RhdGUgcGFkIgorbXNnc3RyICJrbGFydGUgaWtramUgbGFnYSB0aGlzc3RhdGUtcGFkIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE4NgorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgaW5mbyBwYWQiCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBsYWdhIGluZm8tcGFkIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE5MQorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgcXVlcnkgd2luZG93IgorbXNnc3RyICJrbGFydGUgaWtramUgbGFnYSBzcMO4cmppbmdzdmluZGF1Z2UiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MjU1CisjLCBmdXp6eQorbXNnaWQgIktleWJpbmRpbmdzIgorbXNnc3RyICJzbsO4Z2d0YXN0YXIiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MzAzCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgLS0gJWQlJSwgcHJlc3MgIgorbXNnc3RyICIgIC0tICVkJSUsIHRyeWtrICIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzozMDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgZm9yIG1vcmUiCittc2dzdHIgIiVzIGZvciBtZWlyIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjMxMAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyB0byBnbyBiYWNrIgorbXNnc3RyICIlcyBmb3Igw6UgZ8OlIHRpbGJha2UiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6NzgKK21zZ2lkICJbbm90IGJvdW5kXSIKK21zZ3N0ciAiW2lra2plIGF2Z3JlbnNhXSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzo4MgorIywgYy1mb3JtYXQKK21zZ2lkICJbdW5rOiAlZF0iCittc2dzdHIgIlt1a2plbmQ6ICVkXSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxMzkKK21zZ2lkICJTY3JvbGwgb253YXJkcyB0aHJvdWdoIGhlbHAvaW5mb3JtYXRpb24iCittc2dzdHIgIkfDpSB2aWRhcmUgZ2plbm5vbSBoamVscC9pbmZvcm1hc2pvbiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDAKK21zZ2lkICJTY3JvbGwgYmFja3dhcmRzIHRocm91Z2ggaGVscC9pbmZvcm1hdGlvbiIKK21zZ3N0ciAiR8OlIGJha292ZXIgZ2plbm5vbSBoamVscC9pbmZvcm1hc2pvbiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDEKK21zZ2lkICJNb3ZlIHVwIgorbXNnc3RyICJGbHl0dCBvcHAiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQyCittc2dpZCAiTW92ZSBkb3duIgorbXNnc3RyICJGbHl0dCBuZWQiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQzCittc2dpZCAiR28gdG8gdG9wIG9mIGxpc3QiCittc2dzdHIgIkfDpSB0aWwgdG9wcGVuIGF2IGxpc3RhIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0NAorbXNnaWQgIkdvIHRvIGVuZCBvZiBsaXN0IgorbXNnc3RyICJHw6UgdGlsIHNsdXR0ZW4gYXYgbGlzdGEiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ1Cittc2dpZCAiUmVxdWVzdCBoZWxwIChjeWNsZSB0aHJvdWdoIGhlbHAgc2NyZWVucykiCittc2dzdHIgIkJlIG9tIGhqZWxwIChnw6UgZ2plbm5vbSBoamVscGVzaWRlbmUpIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0NgorbXNnaWQgIkN5Y2xlIHRocm91Z2ggaW5mb3JtYXRpb24gZGlzcGxheXMiCittc2dzdHIgIkfDpSBnamVubm9tIGluZm9ybWFzam9uc3NpZGVuZSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDcKK21zZ2lkICJSZWRyYXcgZGlzcGxheSIKK21zZ3N0ciAiVGVpa24gc2lkYSBww6UgbnkiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ4Cittc2dpZCAiU2Nyb2xsIG9ud2FyZHMgdGhyb3VnaCBsaXN0IGJ5IDEgbGluZSIKK21zZ3N0ciAiR8OlIHZpZGFyZSBnamVubm9tIGxpc3RhIG1lZCBlaSBsaW5qZSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDkKK21zZ2lkICJTY3JvbGwgYmFja3dhcmRzIHRocm91Z2ggbGlzdCBieSAxIGxpbmUiCittc2dzdHIgIkfDpSBiYWtvdmVyIGdqZW5ub20gbGlzdGEgbWVkIGVpIGxpbmplIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1MAorbXNnaWQgIlNjcm9sbCBvbndhcmRzIHRocm91Z2ggaGVscC9pbmZvcm1hdGlvbiBieSAxIGxpbmUiCittc2dzdHIgIkfDpSB2aWRhcmUgZ2plbm5vbSBoamVscC9pbmZvcm1hc2pvbiBtZWQgZWkgbGluamUiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTUxCittc2dpZCAiU2Nyb2xsIGJhY2t3YXJkcyB0aHJvdWdoIGhlbHAvaW5mb3JtYXRpb24gYnkgMSBsaW5lIgorbXNnc3RyICJHw6UgYmFrb3ZlciBnamVubm9tIGhqZWxwL2luZm9ybWFzam9uIG1lZCBlaSBsaW5qZSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTIKK21zZ2lkICJTY3JvbGwgb253YXJkcyB0aHJvdWdoIGxpc3QiCittc2dzdHIgIkfDpSB2aWRhcmUgZ2plbm5vbSBsaXN0YSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTMKK21zZ2lkICJTY3JvbGwgYmFja3dhcmRzIHRocm91Z2ggbGlzdCIKK21zZ3N0ciAiR8OlIGJha292ZXIgZ2plbm5vbSBsaXN0YSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTYKK21zZ2lkICJNYXJrIHBhY2thZ2UocykgZm9yIGluc3RhbGxhdGlvbiIKK21zZ3N0ciAiTWVyayBwYWtrYXIgZm9yIGluc3RhbGxhc2pvbiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTcKK21zZ2lkICJNYXJrIHBhY2thZ2UocykgZm9yIGRlaW5zdGFsbGF0aW9uIgorbXNnc3RyICJNZXJrIHBha2thciBmb3IgYXZpbnN0YWxsYXNqb24iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTU4Cittc2dpZCAiTWFyayBwYWNrYWdlKHMpIGZvciBkZWluc3RhbGwgYW5kIHB1cmdlIgorbXNnc3RyICJNZXJrIHBha2thciBmb3IgYXZpbnN0YWxsYXNqb24gb2cgc2xldHQiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTU5Cittc2dpZCAiTWFrZSBoaWdobGlnaHQgbW9yZSBzcGVjaWZpYyIKK21zZ3N0ciAiR2plciB1dGhldmluZyBtZWlyIHNwZXNpZmlrayIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjAKK21zZ2lkICJNYWtlIGhpZ2hsaWdodCBsZXNzIHNwZWNpZmljIgorbXNnc3RyICJHamVyIHV0aGV2aW5nIG1pbmRyZSBzcGVzaWZpa2siCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTYxCittc2dpZCAiU2VhcmNoIGZvciBhIHBhY2thZ2Ugd2hvc2UgbmFtZSBjb250YWlucyBhIHN0cmluZyIKK21zZ3N0ciAiU8O4ayBldHRlciBlaW4gcGFra2Ugc29tIGhhciBlaXQgbmFtbiBzb20gaW5uZWhlbGQgZWluIHN0cmVuZyIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjIKK21zZ2lkICJSZXBlYXQgbGFzdCBzZWFyY2guIgorbXNnc3RyICJHamVyIG9tIGF0IGbDuHJyZSBzw7hrIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2MworbXNnaWQgIlN3YXAgc29ydCBvcmRlciBwcmlvcml0eS9zZWN0aW9uIgorbXNnc3RyICJCeXQgb20gc29ydGVyaW5nc3Jla2tqZWbDuGxnamUgcHJpb3JpdGV0L3Nla3Nqb24iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY0Cittc2dpZCAiUXVpdCwgY29uZmlybWluZywgYW5kIGNoZWNraW5nIGRlcGVuZGVuY2llcyIKK21zZ3N0ciAiQXZzbHV0dCwgc3RhZGZlc3Rpbmcgb2cgc2pla2sgcGFra2VrcmF2IgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2NQorbXNnaWQgIlF1aXQsIGNvbmZpcm1pbmcgd2l0aG91dCBjaGVjayIKK21zZ3N0ciAiQXZzbHV0dCwgc3RhZGZlc3RpbmcgdXRhbiBzamVrayIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjYKK21zZ2lkICJRdWl0LCByZWplY3RpbmcgY29uZmxpY3QvZGVwZW5kZW5jeSBzdWdnZXN0aW9ucyIKK21zZ3N0ciAiQXZzbHV0dCwgYXZ2aXMgZnJhbWxlZ2cgZm9yIGtvbmZsaWt0L3Bha2tla3JhdiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjcKK21zZ2lkICJBYm9ydCAtIHF1aXQgd2l0aG91dCBtYWtpbmcgY2hhbmdlcyIKK21zZ3N0ciAiQXZicnl0IC0gYXZzbHV0dCB1dGFuIMOlIGdqZXJhIGVuZHJpbmdhciIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjgKK21zZ2lkICJSZXZlcnQgdG8gb2xkIHN0YXRlIGZvciBhbGwgcGFja2FnZXMiCittc2dzdHIgIkfDpSB0aWxiYWtlIHRpbCBnYW1tYWwgdGlsc3RhbmQgZm9yIGFsbGUgcGFra2FyIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2OQorbXNnaWQgIlJldmVydCB0byBzdWdnZXN0ZWQgc3RhdGUgZm9yIGFsbCBwYWNrYWdlcyIKK21zZ3N0ciAiR8OlIHRpbGJha2UgdGlsIGbDuHJlc2zDpXR0IHRpbHN0YW5kIGZvciBhbGxlIHBha2thciIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNzAKK21zZ2lkICJSZXZlcnQgdG8gZGlyZWN0bHkgcmVxdWVzdGVkIHN0YXRlIGZvciBhbGwgcGFja2FnZXMiCittc2dzdHIgIkfDpSB0aWxiYWtlIHRpbCBkaXJla3RlIGbDuHJlc2zDpXR0IHRpbHN0YW5kIGZvciBhbGxlIHBha2thciIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNzEKKyMsIGZ1enp5Cittc2dpZCAiUmV2ZXJ0IHRvIGN1cnJlbnRseSBpbnN0YWxsZWQgc3RhdGUgZm9yIGFsbCBwYWNrYWdlcyIKK21zZ3N0ciAiR8OlIHRpbGJha2UgdGlsIGRpcmVrdGUgZsO4cmVzbMOldHQgdGlsc3RhbmQgZm9yIGFsbGUgcGFra2FyIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE3NAorbXNnaWQgIlNlbGVjdCBjdXJyZW50bHktaGlnaGxpZ2h0ZWQgYWNjZXNzIG1ldGhvZCIKK21zZ3N0ciAiVmVsIGRlbiB1dGhldmEgdGlsZ2FuZ3NtZXRvZGVuIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE3NQorbXNnaWQgIlF1aXQgd2l0aG91dCBjaGFuZ2luZyBzZWxlY3RlZCBhY2Nlc3MgbWV0aG9kIgorbXNnc3RyICJBdnNsdXR0IHV0YW4gw6UgZW5kcmEgZGVuIHZhbGRlIHRpbGdhbmdzbWV0b2RlbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoyOQorbXNnaWQgIktleXN0cm9rZXMiCittc2dzdHIgIlRhc3RhciIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoyOQorIywgZnV6enkKK21zZ2lkICIiCisiTW90aW9uIGtleXM6IE5leHQvUHJldmlvdXMsIFRvcC9FbmQsIFVwL0Rvd24sIEJhY2t3YXJkcy9Gb3J3YXJkczpcbiIKKyIgIGosIERvd24tYXJyb3cgICAgICAgICBrLCBVcC1hcnJvdyAgICAgICAgICAgICBtb3ZlIGhpZ2hsaWdodFxuIgorIiAgTiwgUGFnZS1kb3duLCBTcGFjZSAgIFAsIFBhZ2UtdXAsIEJhY2tzcGFjZSAgIHNjcm9sbCBsaXN0IGJ5IDEgcGFnZVxuIgorIiAgXm4gICAgICAgICAgICAgICAgICAgIF5wICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBsaXN0IGJ5IDEgbGluZVxuIgorIiAgdCwgSG9tZSAgICAgICAgICAgICAgIGUsIEVuZCAgICAgICAgICAgICAgICAgIGp1bXAgdG8gdG9wL2VuZCBvZiBsaXN0XG4iCisiICB1ICAgICAgICAgICAgICAgICAgICAgZCAgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGluZm8gYnkgMSBwYWdlXG4iCisiICBedSAgICAgICAgICAgICAgICAgICAgXmQgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGluZm8gYnkgMSBsaW5lXG4iCisiICBCLCBMZWZ0LWFycm93ICAgICAgICAgRiwgUmlnaHQtYXJyb3cgICAgICAgICAgcGFuIGRpc3BsYXkgYnkgMS8zIHNjcmVlblxuIgorIiAgXmIgICAgICAgICAgICAgICAgICAgIF5mICAgICAgICAgICAgICAgICAgICAgIHBhbiBkaXNwbGF5IGJ5IDEgY2hhcmFjdGVyXG4iCisiXG4iCisiTWFyayBwYWNrYWdlcyBmb3IgbGF0ZXIgcHJvY2Vzc2luZzpcbiIKKyIgKywgSW5zZXJ0ICBpbnN0YWxsIG9yIHVwZ3JhZGUgICAgICA9LCBIICBob2xkIGluIHByZXNlbnQgc3RhdGVcbiIKKyIgLSwgRGVsZXRlICByZW1vdmUgICAgICAgICAgICAgICAgICA6LCBHICB1bmhvbGQ6IHVwZ3JhZGUgb3IgbGVhdmUgIgorInVuaW5zdGFsbGVkXG4iCisiIF8gICAgICAgICAgcmVtb3ZlICYgcHVyZ2UgY29uZmlnXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTWlzY2VsbGFuZW91czpcbiIKKyJRdWl0LCBleGl0LCBvdmVyd3JpdGUgKG5vdGUgY2FwaXRhbHMhKTogICAgICAgPywgRjEgcmVxdWVzdCBoZWxwIChhbHNvICIKKyJIZWxwKVxuIgorIiBSZXR1cm4gIENvbmZpcm0sIHF1aXQgKGNoZWNrIGRlcGVuZGVuY2llcykgICBpLCBJICB0b2dnbGUvY3ljbGUgaW5mbyAiCisiZGlzcGxheXNcbiIKKyIgICBRICAgICBDb25maXJtLCBxdWl0IChvdmVycmlkZSBkZXAucykgICAgICAgbywgTyAgY3ljbGUgdGhyb3VnaCBzb3J0ICIKKyJvcHRpb25zXG4iCisiIFgsIEVzYyAgZVhpdCwgYWJhbmRvbmluZyBhbnkgY2hhbmdlcyBtYWRlICAgIHYsIFYgIGNoYW5nZSBzdGF0dXMgZGlzcGxheSAiCisib3B0c1xuIgorIiAgIFIgICAgIFJldmVydCB0byBzdGF0ZSBiZWZvcmUgdGhpcyBsaXN0ICAgICAgXmwgICByZWRyYXcgZGlzcGxheVxuIgorIiAgIFUgICAgIHNldCBhbGwgdG8gc1VnZ2VzdGVkIHN0YXRlICAgICAgICAgICAgIC8gICBzZWFyY2ggKFJldHVybiB0byAiCisiY2FuY2VsKVxuIgorIiAgIEQgICAgIHNldCBhbGwgdG8gRGlyZWN0bHkgcmVxdWVzdGVkIHN0YXRlICBuLCBcXCAgcmVwZWF0IGxhc3Qgc2VhcmNoXG4iCittc2dzdHIgIiIKKyJGbHl0dGV0YXN0YXI6IE5lc3RlL0bDuHJyZSwgVG9wcC9Cb3RuLCBPcHAvTmVkLCBGcmFtL1RpbGJha2U6XG4iCisiICBQaWwgbmVkLCBqICAgICAgICAgICAgICBQaWwgb3BwLCBrICAgICAgICAgICAgIGZseXR0IG1hcmtlcmluZ2FcbiIKKyIgIE4sIFBhZ2UgRG93biwgTWVsbG9tcm9tIFAsIFBpbCBvcHAsIFJldHRldGFzdCAgYmxhIGxpc3RhIDEgc2lkZVxuIgorIiAgXm4gICAgICAgICAgICAgICAgICAgICAgXnAgICAgICAgICAgICAgICAgICAgICBibGEgbGlzdGEgMSBsaW5qZVxuIgorIiAgdCwgSG9tZSAgICAgICAgICAgICAgICAgZSwgRW5kICAgICAgICAgICAgICAgICBob3BwIMO4dnN0L25lZHN0IGkgbGlzdGFcbiIKKyIgIHUgICAgICAgICAgICAgICAgICAgICAgIGQgICAgICAgICAgICAgICAgICAgICAgYmxhIGluZm8gMSBzaWRlXG4iCisiICBedSAgICAgICAgICAgICAgICAgICAgICBeZCAgICAgICAgICAgICAgICAgICAgIGJsYSBpbmZvIDEgbGluamVcbiIKKyIgIEIsIFBpbCB2ZW5zdHJlICAgICAgICAgIEYsIFBpbCBow7hncmUgICAgICAgICAgIHNpZGV2ZWdzIDEvMyBza2plcm1cbiIKKyIgIF5iICAgICAgICAgICAgICAgICAgICAgIF5mICAgICAgICAgICAgICAgICAgICAgc2lkZXZlZ3MgMSB0ZWlrblxuIgorIlxuIgorIk1hcmtlciBwYWtrYXIgZm9yIGhhbmR0ZXJpbmcgc2VpbmFyZTpcbiIKKyIgKywgSW5zZXJ0ICBpbnN0YWxsZXIgZWxsZXIgb3BwZ3JhZGVyICA9LCBIICBoYWxkIGkgbm92ZXJhbmRlIHN0YXR1c1xuIgorIiAtLCBEZWxldGUgIGZqZXJuICAgICAgICAgICAgICAgICAgICAgIDosIEcgIGZyaWdqZXI6IG9wcGdyYWRlciBlbGxlciBsYSAiCisidmVyYSBpa2tqZS1pbnN0YWxsZXJ0XG4iCisiIF8gICAgICAgICAgZmplcm4gb2cgcmVpbnNrIHV0IG9wcHNldHRldFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFltc2U6XG4iCisiQXZzbHV0dCwgYXZicnl0LCBza3JpdiBvdmVyIChodWdzIHN0b3JlIGJva3N0YXZhcik6ID8sIEYxIGhqZWxwICjDsmcgSGplbHApXG4iCisiIFJldHVybiAgU3RhZGZlc3QsIGF2c2x1dHQgKHNqZWtrIHBha2tla3JhdikgICAgICAgIGksIEkgIGJ5dCBpbmZvZmVsdFxuIgorIiAgIFEgICAgIFN0YWRmZXN0LCBhdnNsdXR0IChvdmVyc3R5ciBwYWtrZWtyYXYpICAgICBvLCBPICBieXQgc29ydGVyaW5nXG4iCisiIFgsIEVzY2FwZSAgQXZzbHV0dCB1dGFuIMOlIGdqZW5ub21mw7hyYSBlbmRyaW5nYXIgICAgdiwgViAgZW5kcmEgIgorInN0YXR1c3Zpc2luZ1xuIgorIiAgIFIgICAgIHRpbGJha2UgdGlsIHN0YXR1cyBmw7hyIGRlbm5lIGxpc3RhICAgICAgICAgIF5sICB0ZWlrbiBza2plcm1lbiBvbSAiCisiYXR0XG4iCisiICAgVSAgICAgc2V0IGFsbGUgdGlsIGbDuHJlc2zDpXR0IHN0YXR1cyAgICAgICAgICAgICAgICAvICBzw7hrIChSZXR1cm4gIgorImF2YnJ5dClcbiIKKyIgICBEICAgICBzZXQgYWxsZSB0aWwgZGlyZWt0ZSBmw7hyZXNwdXJkIHN0YXR1cyAgICAgbiwgXFwgc2lzdGUgc8O4ayBvbSBhdHRcbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo1NQorbXNnaWQgIkludHJvZHVjdGlvbiB0byBwYWNrYWdlIHNlbGVjdGlvbnMiCittc2dzdHIgIkludHJvZHVrc2pvbiB0aWwgcGFra2V2YWwiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6NTUKK21zZ2lkICIiCisiV2VsY29tZSB0byBkc2VsZWN0J3MgbWFpbiBwYWNrYWdlIGxpc3RpbmcuXG4iCisiXG4iCisiWW91IHdpbGwgYmUgcHJlc2VudGVkIHdpdGggYSBsaXN0IG9mIHBhY2thZ2VzIHdoaWNoIGFyZSBpbnN0YWxsZWQgb3IgIgorImF2YWlsYWJsZVxuIgorImZvciBpbnN0YWxsYXRpb24uICBZb3UgY2FuIG5hdmlnYXRlIGFyb3VuZCB0aGUgbGlzdCB1c2luZyB0aGUgY3Vyc29yIGtleXMsXG4iCisibWFyayBwYWNrYWdlcyBmb3IgaW5zdGFsbGF0aW9uICh1c2luZyBgKycpIG9yIGRlaW5zdGFsbGF0aW9uICh1c2luZyBgLScpLlxuIgorIlBhY2thZ2VzIGNhbiBiZSBtYXJrZWQgZWl0aGVyIHNpbmdseSBvciBpbiBncm91cHM7IGluaXRpYWxseSB5b3Ugd2lsbCBzZWUgIgorInRoYXRcbiIKKyJ0aGUgbGluZSBgQWxsIHBhY2thZ2VzJyBpcyBzZWxlY3RlZC4gIGArJywgYC0nIGFuZCBzbyBvbiB3aWxsIGFmZmVjdCBhbGwgIgorInRoZVxuIgorInBhY2thZ2VzIGRlc2NyaWJlZCBieSB0aGUgaGlnaGxpZ2h0ZWQgbGluZS5cbiIKKyJcbiIKKyJTb21lIG9mIHlvdXIgY2hvaWNlcyB3aWxsIGNhdXNlIGNvbmZsaWN0cyBvciBkZXBlbmRlbmN5IHByb2JsZW1zOyB5b3Ugd2lsbCAiCisiYmVcbiIKKyJnaXZlbiBhIHN1Yi1saXN0IG9mIHRoZSByZWxldmFudCBwYWNrYWdlcywgc28gdGhhdCB5b3UgY2FuIHNvbHZlIHRoZSAiCisicHJvYmxlbXMuXG4iCisiXG4iCisiWW91IHNob3VsZCByZWFkIHRoZSBsaXN0IG9mIGtleXMgYW5kIHRoZSBleHBsYW5hdGlvbnMgb2YgdGhlIGRpc3BsYXkuXG4iCisiTXVjaCBvbi1saW5lIGhlbHAgaXMgYXZhaWxhYmxlLCBwbGVhc2UgbWFrZSB1c2Ugb2YgaXQgLSBwcmVzcyBgPycgYXRcbiIKKyJhbnkgdGltZSBmb3IgaGVscC5cbiIKKyJcbiIKKyJXaGVuIHlvdSBoYXZlIGZpbmlzaGVkIHNlbGVjdGluZyBwYWNrYWdlcywgcHJlc3MgPGVudGVyPiB0byBjb25maXJtICIKKyJjaGFuZ2VzLFxuIgorIm9yIGBYJyB0byBxdWl0IHdpdGhvdXQgc2F2aW5nIGNoYW5nZXMuIEEgZmluYWwgY2hlY2sgb24gY29uZmxpY3RzIGFuZFxuIgorImRlcGVuZGVuY2llcyB3aWxsIGJlIGRvbmUgLSBoZXJlIHRvbyB5b3UgbWF5IHNlZSBhIHN1Ymxpc3QuXG4iCisiXG4iCisiUHJlc3MgPHNwYWNlPiB0byBsZWF2ZSBoZWxwIGFuZCBlbnRlciB0aGUgbGlzdCBub3cuXG4iCittc2dzdHIgIiIKKyJWZWxrb21lbiB0aWwgaG92dWRwYWtrZWxpc3RhIGkgZHNlbGVjdC5cbiIKKyJcbiIKKyJEdSB2aWwgZsOlIHNqw6UgZWkgbGlzdGUgb3ZlciBwYWtrYXIgc29tIGVyIGluc3RhbGxlcnRlIGVsbGVyIHNvbSBrYW4gXG4iCisiaW5zdGFsbGVyYXN0LiBEdSBrYW4gYmxhIGdqZW5ub20gbGlzdGEgdmVkIGhqZWxwIGF2IHBpbHRhc3RhbmUuIE1lZCAiCisidGFzdGFuZSBcbiIKKyLCqyvCuyBvZyDCqy3CuyBrYW4gZHUgdmVsamEgw6UgaW5zdGFsbGVyYSBlbGxlciBmamVybmEgcGFra2FyIGVsbGVyIGdydXBwZXIgYXYgXG4iCisicGFra2FyLiBJIHV0Z2FuZ3NwdW5rdGVyIGVyIGxpbmphIMKrQWxsZSBwYWtrYXLCuyB2YWxkLCBzbGlrIGF0IGRlaSAiCisiaGFuZGxpbmdhbmUgXG4iCisiZHUgZ2plciBww6V2ZXJrYXIgYWxsZSBwYWtrYW5lIHNvbSBow7h5cmVyIHRpbCB1bmRlciBkZW4gbWFya2VydGUgbGluamEuXG4iCisiXG4iCisiTm9rbyBhdiBkZXQgZHUgdmVsIGthbiBmw7hyYSB0aWwga29uZmxpa3RhciBlbGxlciBwcm9ibGVtIG1lZCBwYWtrZWtyYXYuIEkgIgorInPDpSBcbiIKKyJmYWxsIHZpbCBkdSBmw6UgZWkgZWlnYSBsaXN0ZSBtZWQgZGVpIHBha2thbmUgZGV0dGUgZ2plbGQsIHNsaWsgYXQgZHUga2FuICIKKyJsw7h5c2EgXG4iCisicHJvYmxlbWEuXG4iCisiXG4iCisiRHUgYsO4ciBsZXNhIG92ZXJzaWt0YSBvdmVyIHRhc3RhciBvZyBmb3JrbGFyaW5nYW5lIHRpbCBza2plcm1iaWxldGV0LiBEZXQgXG4iCisiZmluc3QgZWluIGdvZCBkZWwgc2tqZXJtaGplbHAgc29tIGR1IGthbiB2aXNhIHZlZCDDpSB0cnlra2phIHDDpSDCqz/Cuy5cbiIKKyJcbiIKKyJOw6VyIGR1IGVyIGZlcmRpZyBtZWQgw6UgdmVsamEgcGFra2FyLCB0cnlra2plciBkdSA8RW50ZXI+IGRlcnNvbSBkdSB2aWwgIgorInN0YWRmZXN0YSBcbiIKKyJlbmRyaW5nYW5lIGVsbGVyIMKrWMK7IG9tIGR1IHZpbCBhdnNsdXR0YSB1dGFuIGVuZHJpbmdhci4gRWluIHNpc3RlIGtvbnRyb2xsICIKKyJhdiBcbiIKKyJrb25mbGlrdGFyIG9nIHBha2tla3JhdiB2ZXJ0IHV0ZsO4cnQuIEhlciB2aWwgZHUgw7JnIGbDpSBvcHAgZWkgZWlnYSBsaXN0ZSAiCisidmVkIFxuIgorInByb2JsZW0uXG4iCisiXG4iCisiVHJ5a2sgPG1lbGxvbXJvbT4gZm9yIMOlIGF2c2x1dHRhIGhqZWxwYSBvZyBnw6UgdGlsIGxpc3RhIG5vLlxuIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjgwCittc2dpZCAiSW50cm9kdWN0aW9uIHRvIHJlYWQtb25seSBwYWNrYWdlIGxpc3QgYnJvd3NlciIKK21zZ3N0ciAiSW50cm9kdWtzam9uIHRpbCBza3JpdmV2ZXJuYSBwYWtrZWxpc3RlIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjgwCittc2dpZCAiIgorIldlbGNvbWUgdG8gZHNlbGVjdCdzIG1haW4gcGFja2FnZSBsaXN0aW5nLlxuIgorIlxuIgorIllvdSB3aWxsIGJlIHByZXNlbnRlZCB3aXRoIGEgbGlzdCBvZiBwYWNrYWdlcyB3aGljaCBhcmUgaW5zdGFsbGVkIG9yICIKKyJhdmFpbGFibGVcbiIKKyJmb3IgaW5zdGFsbGF0aW9uLiAgU2luY2UgeW91IGRvIG5vdCBoYXZlIHRoZSBwcml2aWxlZ2UgbmVjZXNzYXJ5IHRvIHVwZGF0ZVxuIgorInBhY2thZ2Ugc3RhdGVzLCB5b3UgYXJlIGluIGEgcmVhZC1vbmx5IG1vZGUuICBZb3UgY2FuIG5hdmlnYXRlIGFyb3VuZCB0aGVcbiIKKyJsaXN0IHVzaW5nIHRoZSBjdXJzb3Iga2V5cyAocGxlYXNlIHNlZSB0aGUgYEtleXN0cm9rZXMnIGhlbHAgc2NyZWVuKSwgIgorIm9ic2VydmVcbiIKKyJ0aGUgc3RhdHVzIG9mIHRoZSBwYWNrYWdlcyBhbmQgcmVhZCBpbmZvcm1hdGlvbiBhYm91dCB0aGVtLlxuIgorIlxuIgorIllvdSBzaG91bGQgcmVhZCB0aGUgbGlzdCBvZiBrZXlzIGFuZCB0aGUgZXhwbGFuYXRpb25zIG9mIHRoZSBkaXNwbGF5LlxuIgorIk11Y2ggb24tbGluZSBoZWxwIGlzIGF2YWlsYWJsZSwgcGxlYXNlIG1ha2UgdXNlIG9mIGl0IC0gcHJlc3MgYD8nIGF0XG4iCisiYW55IHRpbWUgZm9yIGhlbHAuXG4iCisiXG4iCisiV2hlbiB5b3UgaGF2ZSBmaW5pc2hlZCBicm93c2luZywgcHJlc3MgYFEnIG9yIDxlbnRlcj4gdG8gcXVpdC5cbiIKKyJcbiIKKyJQcmVzcyA8c3BhY2U+IHRvIGxlYXZlIGhlbHAgYW5kIGVudGVyIHRoZSBsaXN0IG5vdy5cbiIKK21zZ3N0ciAiIgorIlZlbGtvbWVuIHRpbCBob3Z1ZHBha2tlbGlzdGEgaSBkc2VsZWN0LlxuIgorIlxuIgorIkR1IHZpbCBmw6Ugc2rDpSBlaSBsaXN0ZSBvdmVyIHBha2thciBzb20gZXIgaW5zdGFsbGVydGUgZWxsZXIgc29tIGthbiBcbiIKKyJpbnN0YWxsZXJhc3QuIEZvcmRpIGR1IGlra2plIGhhciB0aWxzdHJla2tlbGVnZSBsw7h5dmUgdGlsIMOlIG9wcGRhdGVyYSBcbiIKKyJwYWtrZXN0YXR1c2FyLCBmw6VyIGR1IGlra2plIGxvdiB0aWwgw6UgZW5kcmEgcGFra2VsaXN0YS4gRHUga2FuIGJsYSBnamVubm9tIFxuIgorImxpc3RhIHZlZCBoamVscCBhdiBwaWx0YXN0YW5lIChzasOlIGhqZWxwZXNramVybWVuIMKrVGFzdGV0cnlra8K7KSwgc3R1ZGVyYSBcbiIKKyJzdGF0dXNlbiB0aWwgcGFra2FuZSBvZyBsZXNhIGluZm9ybWFzam9uIG9tIGRlaS5cbiIKKyJcbiIKKyJEdSBiw7hyIGxlc2Egb3ZlcnNpa3RhIG92ZXIgdGFzdGFyIG9nIGZvcmtsYXJpbmdhbmUgdGlsIHNramVybWJpbGV0ZXQuIERldCBcbiIKKyJmaW5zdCBlaW4gZ29kIGRlbCBza2plcm1oamVscCBzb20gZHUga2FuIHZpc2EgdmVkIMOlIHRyeWtramEgcMOlIMKrP8K7LlxuIgorIlxuIgorIk7DpXIgZHUgZXIgZmVyZGlnIG1lZCDDpSBzdHVkZXJhIGxpc3RhLCBrYW4gZHUgYXZzbHV0dGEgbWVkIMKrWMK7IGVsbGVyIEVudGVyLlxuIgorIlxuIgorIlRyeWtrIDxtZWxsb21yb20+IGZvciDDpSBhdnNsdXR0YSBoamVscGEgb2cgZ8OlIHRpbCBsaXN0YSBuby5cbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo5OQorbXNnaWQgIkludHJvZHVjdGlvbiB0byBjb25mbGljdC9kZXBlbmRlbmN5IHJlc29sdXRpb24gc3ViLWxpc3QiCittc2dzdHIgIkludHJvZHVrc2pvbiB0aWwgZWlnYSBsaXN0ZSBmb3IgbMO4eXNpbmcgYXYga29uZmxpa3QgZWxsZXIgcGFra2VrcmF2IgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjk5Cittc2dpZCAiIgorIkRlcGVuZGVuY3kvY29uZmxpY3QgcmVzb2x1dGlvbiAtIGludHJvZHVjdGlvbi5cbiIKKyJcbiIKKyJPbmUgb3IgbW9yZSBvZiB5b3VyIGNob2ljZXMgaGF2ZSByYWlzZWQgYSBjb25mbGljdCBvciBkZXBlbmRlbmN5IHByb2JsZW0gLVxuIgorInNvbWUgcGFja2FnZXMgc2hvdWxkIG9ubHkgYmUgaW5zdGFsbGVkIGluIGNvbmp1bmN0aW9uIHdpdGggY2VydGFpbiBvdGhlcnMsICIKKyJhbmRcbiIKKyJzb21lIGNvbWJpbmF0aW9ucyBvZiBwYWNrYWdlcyBtYXkgbm90IGJlIGluc3RhbGxlZCB0b2dldGhlci5cbiIKKyJcbiIKKyJZb3Ugd2lsbCBzZWUgYSBzdWItbGlzdCBjb250YWluaW5nIHRoZSBwYWNrYWdlcyBpbnZvbHZlZC4gIFRoZSBib3R0b20gaGFsZiAiCisib2ZcbiIKKyJ0aGUgZGlzcGxheSBzaG93cyByZWxldmFudCBjb25mbGljdHMgYW5kIGRlcGVuZGVuY2llczsgdXNlIGBpJyB0byBjeWNsZSAiCisiYmV0d2VlblxuIgorInRoYXQsIHRoZSBwYWNrYWdlIGRlc2NyaXB0aW9ucyBhbmQgdGhlIGludGVybmFsIGNvbnRyb2wgaW5mb3JtYXRpb24uXG4iCisiXG4iCisiQSBzZXQgb2YgYHN1Z2dlc3RlZCcgcGFja2FnZXMgaGFzIGJlZW4gY2FsY3VsYXRlZCwgYW5kIHRoZSBpbml0aWFsIG1hcmtpbmdzICIKKyJpblxuIgorInRoaXMgc3ViLWxpc3QgaGF2ZSBiZWVuIHNldCB0byBtYXRjaCB0aG9zZSwgc28geW91IGNhbiBqdXN0IGhpdCBSZXR1cm4gdG9cbiIKKyJhY2NlcHQgdGhlIHN1Z2dlc3Rpb25zIGlmIHlvdSB3aXNoLiAgWW91IG1heSBhYm9ydCB0aGUgY2hhbmdlKHMpIHdoaWNoICIKKyJjYXVzZWRcbiIKKyJ0aGUgcHJvYmxlbShzKSwgYW5kIGdvIGJhY2sgdG8gdGhlIG1haW4gbGlzdCwgYnkgcHJlc3NpbmcgY2FwaXRhbCBgWCcuXG4iCisiXG4iCisiWW91IGNhbiBhbHNvIG1vdmUgYXJvdW5kIHRoZSBsaXN0IGFuZCBjaGFuZ2UgdGhlIG1hcmtpbmdzIHNvIHRoYXQgdGhleSBhcmUgIgorIm1vcmVcbiIKKyJsaWtlIHdoYXQgeW91IHdhbnQsIGFuZCB5b3UgY2FuIGByZWplY3QnIG15IHN1Z2dlc3Rpb25zIGJ5IHVzaW5nIHRoZSAiCisiY2FwaXRhbFxuIgorImBEJyBvciBgUicga2V5cyAoc2VlIHRoZSBrZXliaW5kaW5ncyBoZWxwIHNjcmVlbikuICBZb3UgY2FuIHVzZSBjYXBpdGFsIGBRJyAiCisidG9cbiIKKyJmb3JjZSBtZSB0byBhY2NlcHQgdGhlIHNpdHVhdGlvbiBjdXJyZW50bHkgZGlzcGxheWVkLCBpbiBjYXNlIHlvdSB3YW50IHRvXG4iCisib3ZlcnJpZGUgYSByZWNvbW1lbmRhdGlvbiBvciB0aGluayB0aGF0IHRoZSBwcm9ncmFtIGlzIG1pc3Rha2VuLlxuIgorIlxuIgorIlByZXNzIDxzcGFjZT4gdG8gbGVhdmUgaGVscCBhbmQgZW50ZXIgdGhlIHN1Yi1saXN0OyByZW1lbWJlcjogcHJlc3MgYD8nIGZvciAiCisiaGVscC5cbiIKK21zZ3N0ciAiIgorIkzDuHlzaW5nIGF2IHBha2tla3JhdiBvZyBrb25mbGlrdGFyIC0gaW50cm9kdWtzam9uLlxuIgorIlxuIgorIkVpdHQgZWxsZXIgZmxlaXJlIGF2IGRlaSB2YWxhIGR1IGhhciBnam9ydCBmw7hyZXIgdGlsIHByb2JsZW0gbWVkICIKKyJrb25mbGlrdGFyIFxuIgorImVsbGVyIHBha2tla3Jhdi4gTm9rcmUgYXYgcGFra2FuZSBtw6UgaW5zdGFsbGVyYXN0IHNhbWFuIG1lZCB2aXNzZSBhbmRyZSwgIgorIm9nIFxuIgorIm5va3JlIGtvbWJpbmFzam9uYXIgYXYgcGFra2FyIGfDpXIgaWtramUgc2FtYW4uXG4iCisiXG4iCisiRHUgdmlsIGbDpSBzasOlIGVpIGVpZ2EgbGlzdGUgbWVkIGJlcnJlIGRlaSBwYWtrYW5lIGRldHRlIGdqZWxkLiBOZWRzdCBww6UgXG4iCisic2tqZXJtZW4gZXIga29uZmxpa3RhciBvZyBwYWtrZWtyYXYgdmlzdC4gTWVkIMKracK7IGthbiBkdSBieXRhIG1lbGxvbSBkZXR0ZSBcbiIKKyJmZWx0ZXQgb2cgZmVsdGEgZm9yIHBha2tlc2tpbGRyaW5nYXIgb2cgaW50ZXJuIGtvbnRyb2xsaW5mb3JtYXNqb24uXG4iCisiXG4iCisiRWl0IHNldHQgbWVkIMKrZsO4cmVzbGVnbmXCuyBwYWtrYXIgZXIgZ2pvcnQga2xhcnQsIG9nIHBha2thbmUgaSBsaXN0YSBlciBcbiIKKyJtYXJrZXJ0ZSBpIHNhbXN2YXIgbWVkIGZyYW1sZWdnZXQuIER1IGthbiB0cnlra2phIEVudGVyIG1lZCBlaW4gZ29uZyBmb3Igw6UgXG4iCisiZ29kdGEgZnJhbWxlZ2dldC4gRHUga2FuIGF2YnJ5dGEgZW5kcmluZ2FuZSBzb20gZm9yw6Vyc2FrYSBwcm9ibGVtZXQgb2cgZ8OlIFxuIgorInRpbGJha2UgdGlsIGhvdnVkbGlzdGEgdmVkIMOlIHRyeWtramEgc3RvciDCq1jCuy5cbiIKKyJcbiIKKyJEdSBrYW4gw7JnIGJsYSBnamVubm9tIGxpc3RhIG9nIGVuZHJhIHDDpSBtYXJrZXJpbmdhbmUgc2xpayBkdSB2aWwgaGEgZGVpLCAiCisib2cgXG4iCisiZHUga2FuIGZvcmthc3RhIGZyYW1sZWdnZXQgdmVkIMOlIHRyeWtramEgc3RvciDCq0TCuyBlbGxlciDCq1LCuy4gKFNqw6UgXG4iCisiaGplbHBlc2tqZXJtZW4gZm9yIHRhc3RldHJ5a2suKSBNZWQgc3RvciDCq1HCuyBrYW4gZHUgdHZpbmdhIGdqZW5ub20gZWl0ICIKKyJ2YWwsIFxuIgorImRlcnNvbSBkdSB2aWwgb3ZlcnN0eXJhIHLDpWRhIGVsbGVyIHRydXIgYXQgcHJvZ3JhbW1ldCB0ZWsgZmVpbC5cbiIKKyJcbiIKKyJUcnlrayA8bWVsbG9tcm9tPiBmb3Igw6UgYXZzbHV0dGEgaGplbHBhIG9nIGfDpSB0aWwgbGlzdGEuIFxuIgorIkh1Z3MgYXQgZHUga2FuIGbDpSBoamVscCBtZWQgwqs/wrsuXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTI1Cittc2dpZCAiRGlzcGxheSwgcGFydCAxOiBwYWNrYWdlIGxpc3RpbmcgYW5kIHN0YXR1cyBjaGFycyIKK21zZ3N0ciAiU2tqZXJtYmlsZXRlLCBkZWwgMTogUGFra2VsaXN0ZSBvZyBzdGF0dXN0ZWlrbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxMjUKKyMsIGZ1enp5Cittc2dpZCAiIgorIlRoZSB0b3AgaGFsZiBvZiB0aGUgc2NyZWVuIHNob3dzIGEgbGlzdCBvZiBwYWNrYWdlcy4gIEZvciBlYWNoIHBhY2thZ2UgeW91ICIKKyJzZWVcbiIKKyJmb3VyIGNvbHVtbnMgZm9yIGl0cyBjdXJyZW50IHN0YXR1cyBvbiB0aGUgc3lzdGVtIGFuZCBtYXJrLiAgSW4gdGVyc2UgbW9kZSAiCisiKHVzZVxuIgorImB2JyB0byB0b2dnbGUgdmVyYm9zZSBkaXNwbGF5KSB0aGVzZSBhcmUgc2luZ2xlIGNoYXJhY3RlcnMsIGZyb20gbGVmdCB0byAiCisicmlnaHQ6XG4iCisiXG4iCisiIEVycm9yIGZsYWc6IFNwYWNlIC0gbm8gZXJyb3IgKGJ1dCBwYWNrYWdlIG1heSBiZSBpbiBicm9rZW4gc3RhdGUgLSBzZWUgIgorImJlbG93KVxuIgorIiAgICAgICAgICAgICAgYFInICAtIHNlcmlvdXMgZXJyb3IgZHVyaW5nIGluc3RhbGxhdGlvbiwgbmVlZHMgIgorInJlaW5zdGFsbGF0aW9uO1xuIgorIiBJbnN0YWxsZWQgc3RhdGU6ICAgICBTcGFjZSAgICAtIG5vdCBpbnN0YWxsZWQ7XG4iCisiICAgICAgICAgICAgICAgICAgICAgICBgKicgICAgIC0gaW5zdGFsbGVkO1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgYC0nICAgICAtIG5vdCBpbnN0YWxsZWQgYnV0IGNvbmZpZyBmaWxlcyByZW1haW47XG4iCisiICAgcGFja2FnZXMgaW4gdGhlc2UgeyBgVScgICAgIC0gdW5wYWNrZWQgYnV0IG5vdCB5ZXQgY29uZmlndXJlZDtcbiIKKyIgICBzdGF0ZXMgYXJlIG5vdCAgICB7IGBDJyAgICAgLSBoYWxmLWNvbmZpZ3VyZWQgKGFuIGVycm9yIGhhcHBlbmVkKTtcbiIKKyIgICAocXVpdGUpIHByb3Blcmx5ICB7IGBJJyAgICAgLSBoYWxmLWluc3RhbGxlZCAoYW4gZXJyb3IgaGFwcGVuZWQpO1xuIgorIiAgIGluc3RhbGxlZCAgICAgICAgIHsgYFcnLGB0JyAtIHRyaWdnZXJzIGFyZSBhd2FpdGVkIHJlc3AuIHBlbmRpbmcuXG4iCisiIE9sZCBtYXJrOiB3aGF0IHdhcyByZXF1ZXN0ZWQgZm9yIHRoaXMgcGFja2FnZSBiZWZvcmUgcHJlc2VudGluZyB0aGlzIGxpc3Q7XG4iCisiIE1hcms6IHdoYXQgaXMgcmVxdWVzdGVkIGZvciB0aGlzIHBhY2thZ2U6XG4iCisiICBgKic6IG1hcmtlZCBmb3IgaW5zdGFsbGF0aW9uIG9yIHVwZ3JhZGU7XG4iCisiICBgLSc6IG1hcmtlZCBmb3IgcmVtb3ZhbCwgYnV0IGFueSBjb25maWd1cmF0aW9uIGZpbGVzIHdpbGwgcmVtYWluO1xuIgorIiAgYD0nOiBvbiBob2xkOiBwYWNrYWdlIHdpbGwgbm90IGJlIHByb2Nlc3NlZCBhdCBhbGw7XG4iCisiICBgXyc6IG1hcmtlZCBmb3IgcHVyZ2UgY29tcGxldGVseSAtIGV2ZW4gcmVtb3ZlIGNvbmZpZ3VyYXRpb247XG4iCisiICBgbic6IHBhY2thZ2UgaXMgbmV3IGFuZCBoYXMgeWV0IHRvIGJlIG1hcmtlZCBmb3IgaW5zdGFsbC9yZW1vdmUvJmMuXG4iCisiXG4iCisiQWxzbyBkaXNwbGF5ZWQgYXJlIGVhY2ggcGFja2FnZSdzIFByaW9yaXR5LCBTZWN0aW9uLCBuYW1lLCBpbnN0YWxsZWQgYW5kXG4iCisiYXZhaWxhYmxlIHZlcnNpb24gbnVtYmVycyAoc2hpZnQtViB0byBkaXNwbGF5L2hpZGUpIGFuZCBzdW1tYXJ5ICIKKyJkZXNjcmlwdGlvbi5cbiIKK21zZ3N0ciAiIgorIkRlbiDDuHZzdGUgaGFsdmRlbGVuIGF2IHNramVybWVuIHZpc2VyIGVpIGxpc3RlIG92ZXIgcGFra2FuZS4gRm9yIGt2YXIgIgorInBha2tlIFxuIgorImZpbnN0IGRldCBmaXJlIGtvbG9ubmFyIGZvciBzdGF0dXMgaSBzeXN0ZW1ldC4gSSBzdHV0dG1vZHVzIChicnVrIMKrdsK7IGZvciAiCisiw6UgXG4iCisiYnl0YSB0aWwgZGV0YWxqbW9kdXMpIGVyIGtvbG9ubmFuZSBlbmtlbHR0ZWlrbiBmcsOlIHZlbnN0cmUgdGlsIGjDuGdyZTpcbiIKKyJcbiIKKyIgRmVpbG1lcmtlOiBNZWxsb21yb20gLSBpbmdlbiBmZWlsIChtZW4gcGFra2VuIGthbiB2ZXJhIMO4eWRlbGFnZCwgc2rDpSAiCisibmVkYW5mb3IpXG4iCisiICAgICAgICAgICAgICDCq1LCuyAgICAgLSBhbHZvcmxlZyBmZWlsIHZlZCBpbnN0YWxsYXNqb24sIG3DpSBpbnN0YWxsZXJhc3Qgb20gIgorImF0dFxuIgorIiBJbnN0YWxsZXJ0IHN0YXR1czogTWVsbG9tcm9tIC0gaWtramUgaW5zdGFsbGVydFxuIgorIiAgICAgICAgICAgICAgICAgICAgICDCqyrCuyAgICAgLSBpbnN0YWxsZXJ0XG4iCisiICAgICAgICAgICAgICAgICAgICAgIMKrLcK7ICAgICAtIGlra2plIGluc3RhbGxlcnQsIG1lbiBvcHBzZXR0c2ZpbGVuZSBsaWdnICIKKyJhdHRcbiIKKyIgICAgICAgICAgIHBha2thciBpIHsgwqtVwrsgICAgIC0gcGFra2EgdXQsIG1lbiBpa2tqZSBzZXR0IG9wcCBlbm5vXG4iCisiICBkZXNzZSB0aWxzdGFuZGFuZSB7IMKrQ8K7ICAgICAtIGhhbHZ2ZWdzIG9wcHNldHQgKGVpbiBmZWlsIG9wcHN0b2QpXG4iCisiICAgICAgIGVyIMO4eWRlbGFnZGUgeyDCq0nCuyAgICAgLSBoYWx2dmVncyBvcHBzZXR0IChlaW4gZmVpbCBvcHBzdG9kKVxuIgorIiBHYW1tYWx0IG1lcmtlOiBkZXQgc29tIHZhciBwbGFubGFnZCBmb3IgZGVubmUgcGFra2VuIGbDuHIgbGlzdGEgdmFydCB2aXN0XG4iCisiIE1lcmtlOiBkZXQgc29tIGVyIHBsYW5sYWdkIGZvciBkZW5uZSBwYWtrZW5cbiIKKyIgICDCqyrCuzogbWFya2VydCBmb3IgaW5zdGFsbGFzam9uIGVsbGVyIG9wcGdyYWRlcmluZ1xuIgorIiAgIMKrLcK7OiBtYXJrZXJ0IGZvciBmamVybmluZywgbWVuIG9wcHNldHRzZmlsZW5lIHZpbCBsaWdnamEgYXR0XG4iCisiICAgwqs9wrs6IHDDpSB2ZW50LCBwYWtrZW4gc2thbCBpa2tqZSBlbmRyYXN0IGkgZGV0IGhlaWxlXG4iCisiICAgwqtfwrs6IG1hcmtlcnQgZm9yIGZ1bGxzdGVuZGlnIGZqZXJuaW5nLCBpbmtsdWRlcnQgb3Bwc2V0dGV0XG4iCisiICAgwqtuwrs6IHBha2tlbiBlciBueSBvZyBlciBlbm5vIGlra2plIG1hcmtlcnQgZm9yIGluc3RhbGxlcmluZywgZmplcm5pbmcgZS4iCisibC5cbiIKKyJcbiIKKyJGb3Iga3ZhciBwYWtrZSBrYW4gZHUgw7JnIHNqw6UgaW5mb3JtYXNqb24gb20gcHJpb3JpdGV0LCBrYXRlZ29yaSwgbmFtbiwgXG4iCisiaW5zdGFsbGVydGUgb2cgdGlsZ2plbmdlbGVnZSB2ZXJzam9uYXIgKHZpcy9nw7h5bSBtZWQgU2hpZnQgKyBWKSBvZyBcbiIKKyJlaSBrb3J0IHNraWxkcmluZy5cbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxNTIKK21zZ2lkICJEaXNwbGF5LCBwYXJ0IDI6IGxpc3QgaGlnaGxpZ2h0OyBpbmZvcm1hdGlvbiBkaXNwbGF5IgorbXNnc3RyICJTa2plcm1iaWxldGUsIGRlbCAyOiBMaXN0ZW1hcmtlcmluZywgaW5mb3JtYXNqb25zdmlzaW5nIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjE1MgorbXNnaWQgIiIKKyIqIEhpZ2hsaWdodDogT25lIGxpbmUgaW4gdGhlIHBhY2thZ2UgbGlzdCB3aWxsIGJlIGhpZ2hsaWdodGVkLiAgSXQgIgorImluZGljYXRlc1xuIgorIiAgd2hpY2ggcGFja2FnZShzKSB3aWxsIGJlIGFmZmVjdGVkIGJ5IHByZXNzZXMgb2YgYCsnLCBgLScgYW5kIGBfJy5cbiIKKyJcbiIKKyIqIFRoZSBkaXZpZGluZyBsaW5lIGluIHRoZSBtaWRkbGUgb2YgdGhlIHNjcmVlbiBzaG93cyBhIGJyaWVmIGV4cGxhbmF0aW9uICIKKyJvZlxuIgorIiAgdGhlIHN0YXR1cyBvZiB0aGUgY3VycmVudGx5LWhpZ2hsaWdodGVkIHBhY2thZ2UsIG9yIGEgZGVzY3JpcHRpb24gb2YgIgorIndoaWNoXG4iCisiICBncm91cCBpcyBoaWdobGlnaHRlZCBpZiBhIGdyb3VwIGxpbmUgaXMuICBJZiB5b3UgZG9uJ3QgdW5kZXJzdGFuZCB0aGVcbiIKKyIgIG1lYW5pbmcgb2Ygc29tZSBvZiB0aGUgc3RhdHVzIGNoYXJhY3RlcnMgZGlzcGxheWVkLCBnbyB0byB0aGUgcmVsZXZhbnRcbiIKKyIgIHBhY2thZ2UgYW5kIGxvb2sgYXQgdGhpcyBkaXZpZGVyIGxpbmUsIG9yIHVzZSB0aGUgYHYnIGtleSBmb3IgYSB2ZXJib3NlXG4iCisiICBkaXNwbGF5IChwcmVzcyBgdicgYWdhaW4gdG8gZ28gYmFjayB0byB0aGUgdGVyc2UgZGlzcGxheSkuXG4iCisiXG4iCisiKiBUaGUgYm90dG9tIG9mIHRoZSBzY3JlZW4gc2hvd3MgbW9yZSBpbmZvcm1hdGlvbiBhYm91dCB0aGVcbiIKKyIgIGN1cnJlbnRseS1oaWdobGlnaHRlZCBwYWNrYWdlIChpZiB0aGVyZSBpcyBvbmx5IG9uZSkuXG4iCisiXG4iCisiICBJdCBjYW4gc2hvdyBhbiBleHRlbmRlZCBkZXNjcmlwdGlvbiBvZiB0aGUgcGFja2FnZSwgdGhlIGludGVybmFsIHBhY2thZ2VcbiIKKyIgIGNvbnRyb2wgZGV0YWlscyAoZWl0aGVyIGZvciB0aGUgaW5zdGFsbGVkIG9yIGF2YWlsYWJsZSB2ZXJzaW9uIG9mIHRoZVxuIgorIiAgcGFja2FnZSksIG9yIGluZm9ybWF0aW9uIGFib3V0IGNvbmZsaWN0cyBhbmQgZGVwZW5kZW5jaWVzIGludm9sdmluZyB0aGVcbiIKKyIgIGN1cnJlbnQgcGFja2FnZSAoaW4gY29uZmxpY3QvZGVwZW5kZW5jeSByZXNvbHV0aW9uIHN1Ymxpc3RzKS5cbiIKKyJcbiIKKyIgIFVzZSB0aGUgYGknIGtleSB0byBjeWNsZSB0aHJvdWdoIHRoZSBkaXNwbGF5cywgYW5kIGBJJyB0byBoaWRlIHRoZVxuIgorIiAgaW5mb3JtYXRpb24gZGlzcGxheSBvciBleHBhbmQgaXQgdG8gdXNlIGFsbW9zdCBhbGwgb2YgdGhlIHNjcmVlbi5cbiIKK21zZ3N0ciAiIgorIiogTWFya2VyaW5nOiDDiWkgbGluamUgaSBwYWtrZWxpc3RhIGVyIG1hcmtlcnQuIERlbm5lIHZpc2VyIGt2YSBmb3IgcGFra2UgXG4iCisiICBlbGxlciBwYWtrYXIgc29tIHZlcnQgcMOldmVya2EgbsOlciBkdSB0cnlra2plciBww6UgwqsrwrssIMKrLcK7IGVsbGVyIMKrX8K7LlxuIgorIlxuIgorIiogRGVsZWxpbmphIG1pZHQgcMOlIHNramVybWVuIGZvcmtsYXJhciBrb3J0IHN0YXR1c2VuIHRpbCBkZW4gbWFya2VydGUgXG4iCisiICBwYWtrZW4uIERlcnNvbSBlaSBncnVwcGUgZXIgdmFsZCwgdmlzZXIgbGluamEgZWkgc2tpbGRyaW5nIGF2IGdydXBwYS4gXG4iCisiICBEZXJzb20gZHUgaWtramUgc2tqw7huYXIga3ZhIHN0YXR1c3RlaWtuYSB0eWRlciwga2FuIGR1IGfDpSB0aWwgcGFra2VuIG9nIFxuIgorIiAgc2rDpSBrdmEgc29tIHN0w6VyIHDDpSBkZW5uZSBkZWxlbGluZ2EuIER1IGthbiDDsmcgdHJ5a2tqYSDCq3bCuyBmb3IgXG4iCisiICBmeWxkaWdhcmUgdmlzaW5nLiAoVHJ5a2sgwqt2wrsgaWdqZW4gZm9yIMOlIGfDpSB0aWxiYWtlIHRpbCBzdHV0dHZpc2luZ2EuKVxuIgorIlxuIgorIiogRGV0IG5lZHN0ZSBmZWx0ZXQgcMOlIHNramVybWVuIHZpc2VyIG1laXIgaW5mb3JtYXNqb24gb20gZGVuIHBha2tlbiBzb20gIgorImVyIFxuIgorIiAgdmFsZCAoZGVyc29tIGJlcnJlIMOpaW4gZXIgdmFsZCkuXG4iCisiXG4iCisiICBGZWx0ZXQga2FuIHZpc2EgZWkgZnlsZGlnIHNraWxkcmluZyBhdiBwYWtrZW4sIGRlaSBpbnRlcm5lIFxuIgorIiAga29udHJvbGxkZXRhbGphbmUgdGlsIHBha2tlbiAoYW50ZW4gZm9yIGluc3RhbGxlcnRlIGVsbGVyIHRpbGdqZW5nZWxlZ2UgXG4iCisiICB2ZXJzam9uYXIgYXYgcGFra2VuKSBlbGxlciBpbmZvcm1hc2pvbiBvbSBrb25mbGlrdGFyIG9nIHBha2tla3JhdiBzb20gXG4iCisiICBpbnZvbHZlcmVyIGRlbiB2YWxkZSBwYWtrZW4gKGkgbGlzdGVyIGZvciBsw7h5c2luZyBhdiBrb25mbGlrdC9wYWtrZWtyYXYpLlxuIgorIlxuIgorIiAgVHJ5a2sgwqtpwrsgZm9yIMOlIGJ5dGEgbWVsbG9tIHZpc2luZ2FuZSwgb2cgwqtJwrsgZm9yIMOlIGfDuHltYSAiCisiaW5mb3JtYXNqb25zZmVsdGV0IFxuIgorImVsbGVyIHV0dmlkYSBkZXQgc2xpayBhdCBkZXQgZGVra2plciBuZXN0ZW4gaGVpbGUgc2tqZXJtZW4uXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTc2Cittc2dpZCAiSW50cm9kdWN0aW9uIHRvIG1ldGhvZCBzZWxlY3Rpb24gZGlzcGxheSIKK21zZ3N0ciAiSW50cm9kdWtzam9uIHRpbCBtZXRvZGV2YWwiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTc2Cittc2dpZCAiIgorImRzZWxlY3QgYW5kIGRwa2cgY2FuIGRvIGF1dG9tYXRpYyBpbnN0YWxsYXRpb24sIGxvYWRpbmcgdGhlIHBhY2thZ2UgZmlsZXMgdG8gIgorImJlXG4iCisiaW5zdGFsbGVkIGZyb20gb25lIG9mIGEgbnVtYmVyIG9mIGRpZmZlcmVudCBwb3NzaWJsZSBwbGFjZXMuXG4iCisiXG4iCisiVGhpcyBsaXN0IGFsbG93cyB5b3UgdG8gc2VsZWN0IG9uZSBvZiB0aGVzZSBpbnN0YWxsYXRpb24gbWV0aG9kcy5cbiIKKyJcbiIKKyJNb3ZlIHRoZSBoaWdobGlnaHQgdG8gdGhlIG1ldGhvZCB5b3Ugd2lzaCB0byB1c2UsIGFuZCBoaXQgRW50ZXIuICBZb3Ugd2lsbCAiCisidGhlblxuIgorImJlIHByb21wdGVkIGZvciB0aGUgaW5mb3JtYXRpb24gcmVxdWlyZWQgdG8gZG8gdGhlIGluc3RhbGxhdGlvbi5cbiIKKyJcbiIKKyJBcyB5b3UgbW92ZSB0aGUgaGlnaGxpZ2h0IGEgZGVzY3JpcHRpb24gb2YgZWFjaCBtZXRob2QsIHdoZXJlIGF2YWlsYWJsZSwgaXNcbiIKKyJkaXNwbGF5ZWQgaW4gdGhlIGJvdHRvbSBoYWxmIG9mIHRoZSBzY3JlZW4uXG4iCisiXG4iCisiSWYgeW91IHdpc2ggdG8gcXVpdCB3aXRob3V0IGNoYW5naW5nIGFueXRoaW5nIHVzZSB0aGUgYHgnIGtleSB3aGlsZSBpbiB0aGUgIgorImxpc3RcbiIKKyJvZiBpbnN0YWxsYXRpb24gbWV0aG9kcy5cbiIKKyJcbiIKKyJBIGZ1bGwgbGlzdCBvZiBrZXlzdHJva2VzIGlzIGF2YWlsYWJsZSBieSBwcmVzc2luZyBgaycgbm93LCBvciBmcm9tIHRoZSAiCisiaGVscFxuIgorIm1lbnUgcmVhY2hhYmxlIGJ5IHByZXNzaW5nIGA/Jy5cbiIKK21zZ3N0ciAiIgorImRzZWxlY3Qgb2cgZHBrZyBrYW4gaW5zdGFsbGVyYSBhdXRvbWF0aXNrIHZlZCDDpSBoZW50YSBwYWtrZWZpbGVuZSBzb20gc2thbCBcbiIKKyJpbnN0YWxsZXJhc3QgZnLDpSBmbGVpcmUgdWxpa2Ugc3RhZGVyLlxuIgorIlxuIgorIkkgZGVubmUgbGlzdGEga2FuIGR1IHZlbGphIGVpbiBhdiBkZXNzZSBpbnN0YWxsYXNqb25zbWV0b2RhbmUuXG4iCisiXG4iCisiRmx5dHQgbWFya2VyaW5nYSB0aWwgbWV0b2RlbiBkdSB2aWwgYnJ1a2Egb2cgdHJ5a2sgcMOlIEVudGVyLiBEdSB2ZXJ0IGTDpSAiCisic3B1cmQgXG4iCisib20gaW5mb3JtYXNqb25lbiBzb20gdHJlbmdzdCBmb3Igw6UgaW5zdGFsbGVyYS5cbiIKKyJcbiIKKyJOw6VyIGR1IGZseXR0YXIgbWFya2VyaW5nYSwgZsOlciBkdSBzasOlIGVpIHNraWxkcmluZyBhdiBrdmFyIG1ldG9kZSBuZWRzdCBww6UgXG4iCisic2tqZXJtZW4sIGRlcnNvbSBkZXQgZmluc3Qgbm9rYSBza2lsZHJpbmcuXG4iCisiXG4iCisiRGVyc29tIGR1IHZpbCBhdnNsdXR0YSB1dGFuIMOlIGVuZHJhIHDDpSBub2tvLCB0cnlra2plciBkdSBww6Ugwqt4wrsgbWVkYW4gZHUgZXIgIgorImkgXG4iCisibGlzdGEgb3ZlciBpbnN0YWxsYXNqb25zbWV0b2Rhci5cbiIKKyJcbiIKKyJEdSBrYW4gc2rDpSBoZWlsZSBsaXN0YSBvdmVyIHRhc3RldHJ5a2sgdmVkIMOlIHRyeWtramEgcMOlIMKra8K7IG5vIGVsbGVyIGZyw6UgXG4iCisiaGplbHBlbWVueWVuIHNvbSBkdSBmw6VyIG7DpXIgZHUgdHJ5a2tqZXIgwqs/wrsuXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTk2Cittc2dpZCAiS2V5c3Ryb2tlcyBmb3IgbWV0aG9kIHNlbGVjdGlvbiIKK21zZ3N0ciAiVGFzdGV0cnlrayBmb3IgbWV0b2RldmFsIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjE5NgorIywgZnV6enkKK21zZ2lkICIiCisiTW90aW9uIGtleXM6IE5leHQvUHJldmlvdXMsIFRvcC9FbmQsIFVwL0Rvd24sIEJhY2t3YXJkcy9Gb3J3YXJkczpcbiIKKyIgIGosIERvd24tYXJyb3cgICAgICAgICBrLCBVcC1hcnJvdyAgICAgICAgICAgICBtb3ZlIGhpZ2hsaWdodFxuIgorIiAgTiwgUGFnZS1kb3duLCBTcGFjZSAgIFAsIFBhZ2UtdXAsIEJhY2tzcGFjZSAgIHNjcm9sbCBsaXN0IGJ5IDEgcGFnZVxuIgorIiAgXm4gICAgICAgICAgICAgICAgICAgIF5wICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBsaXN0IGJ5IDEgbGluZVxuIgorIiAgdCwgSG9tZSAgICAgICAgICAgICAgIGUsIEVuZCAgICAgICAgICAgICAgICAgIGp1bXAgdG8gdG9wL2VuZCBvZiBsaXN0XG4iCisiICB1ICAgICAgICAgICAgICAgICAgICAgZCAgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGluZm8gYnkgMSBwYWdlXG4iCisiICBedSAgICAgICAgICAgICAgICAgICAgXmQgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGluZm8gYnkgMSBsaW5lXG4iCisiICBCLCBMZWZ0LWFycm93ICAgICAgICAgRiwgUmlnaHQtYXJyb3cgICAgICAgICAgcGFuIGRpc3BsYXkgYnkgMS8zIHNjcmVlblxuIgorIiAgXmIgICAgICAgICAgICAgICAgICAgIF5mICAgICAgICAgICAgICAgICAgICAgIHBhbiBkaXNwbGF5IGJ5IDEgY2hhcmFjdGVyXG4iCisiKFRoZXNlIGFyZSB0aGUgc2FtZSBtb3Rpb24ga2V5cyBhcyBpbiB0aGUgcGFja2FnZSBsaXN0IGRpc3BsYXkuKVxuIgorIlxuIgorIlF1aXQ6XG4iCisiIFJldHVybiwgRW50ZXIgICAgc2VsZWN0IHRoaXMgbWV0aG9kIGFuZCBnbyB0byBpdHMgY29uZmlndXJhdGlvbiBkaWFsb2d1ZVxuIgorIiB4LCBYICAgICAgICAgICAgIGV4aXQgd2l0aG91dCBjaGFuZ2luZyBvciBzZXR0aW5nIHVwIHRoZSBpbnN0YWxsYXRpb24gIgorIm1ldGhvZFxuIgorIlxuIgorIk1pc2NlbGxhbmVvdXM6XG4iCisiICA/LCBIZWxwLCBGMSAgICAgIHJlcXVlc3QgaGVscFxuIgorIiBebCAgICAgICAgICAgICAgICByZWRyYXcgZGlzcGxheVxuIgorIiAgLyAgICAgICAgICAgICAgICBzZWFyY2ggKGp1c3QgcmV0dXJuIHRvIGNhbmNlbClcbiIKKyIgIFxcICAgICAgICAgICAgICAgIHJlcGVhdCBsYXN0IHNlYXJjaFxuIgorbXNnc3RyICIiCisiRmx5dHRldGFzdGFyOiBOZXN0ZS9Gw7hycmUsIFRvcHAvQm90biwgT3BwL05lZCwgRnJhbS9UaWxiYWtlOlxuIgorIiAgbiwgUGlsIG5lZCwgaiAgICAgICAgICAgcCwgUGlsIG9wcCwgayAgICAgICAgICBmbHl0dCBtYXJrZXJpbmdhXG4iCisiICBOLCBQYWdlIERvd24sIE1lbGxvbXJvbSBQLCBQaWwgb3BwLCBSZXR0ZXRhc3QgIGJsYSBsaXN0YSAxIHNpZGVcbiIKKyIgIF5uICAgICAgICAgICAgICAgICAgICAgIF5wICAgICAgICAgICAgICAgICAgICAgYmxhIGxpc3RhIDEgbGluamVcbiIKKyIgIHQsIEhvbWUgICAgICAgICAgICAgICAgIGUsIEVuZCAgICAgICAgICAgICAgICAgaG9wcCDDuHZzdC9uZWRzdCBpIGxpc3RhXG4iCisiICB1ICAgICAgICAgICAgICAgICAgICAgICBkICAgICAgICAgICAgICAgICAgICAgIGJsYSBpbmZvIDEgc2lkZVxuIgorIiAgXnUgICAgICAgICAgICAgICAgICAgICAgXmQgICAgICAgICAgICAgICAgICAgICBibGEgaW5mbyAxIGxpbmplXG4iCisiICBCLCBQaWwgdmVuc3RyZSAgICAgICAgICBGLCBQaWwgaMO4Z3JlICAgICAgICAgICBzaWRldmVncyAxLzMgc2tqZXJtXG4iCisiICBeYiAgICAgICAgICAgICAgICAgICAgICBeZiAgICAgICAgICAgICAgICAgICAgIHNpZGV2ZWdzIDEgdGVpa25cbiIKKyIoRGVzc2UgZmx5dHRldGFzdGFuZSBlciBkZWkgc2FtZSBzb20gaSBwYWtrZWxpc3RhLilcbiIKKyJcbiIKKyJBdnNsdXR0OlxuIgorIiBSZXR1cm4sIEVudGVyICAgIHZlbCBkZW5uZSBtZXRvZGVuIG9nIGfDpSB0aWwgb3Bwc2V0dHNkaWFsb2dlblxuIgorIiB4LCBYICAgICAgICAgICAgIGF2YnJ5dCB1dGFuIMOlIGVuZHJhIGVsbGVyIHNldGphIG9wcCBpbnN0YWxsYXNqb25lblxuIgorIlxuIgorIlltc2U6XG4iCisiICA/LCBIamVscCwgRjEgICAgIGhqZWxwXG4iCisiIF5sICAgICAgICAgICAgICAgIHRlaWtuIHNramVybWJpbGV0ZXQgcMOlIG55dHRcbiIKKyIgIC8gICAgICAgICAgICAgICAgc8O4ayAoYnJ1ayBFbnRlciB0aWwgw6UgYXZicnl0YSBtZWQgZWluIGdvbmcpXG4iCisiICBcXCAgICAgICAgICAgICAgICBzaXN0ZSBzw7hrIG9tIGF0dFxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6NjAKK21zZ2lkICJUeXBlIGRzZWxlY3QgLS1oZWxwIGZvciBoZWxwLiIKK21zZ3N0ciAiU2tyaXYgwqtkc2VsZWN0IC0taGVscMK7IGZvciBoamVscC4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDMKK21zZ2lkICJhIgorbXNnc3RyICJ0IgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQzCittc2dpZCAiW0FdY2Nlc3MiCittc2dzdHIgIltUXWlsZ2FuZyIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0MworbXNnaWQgIkNob29zZSB0aGUgYWNjZXNzIG1ldGhvZCB0byB1c2UuIgorbXNnc3RyICJWZWwgdGlsZ2FuZ3NtZXRvZGVuIHNvbSBza2FsIGJydWthc3QiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDQKK21zZ2lkICJ1IgorbXNnc3RyICJvIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ0Cittc2dpZCAiW1VdcGRhdGUiCittc2dzdHIgIltPXXBwZGF0ZXIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDQKK21zZ2lkICJVcGRhdGUgbGlzdCBvZiBhdmFpbGFibGUgcGFja2FnZXMsIGlmIHBvc3NpYmxlLiIKK21zZ3N0ciAiT3BwZGF0ZXIgbGlzdGUgb3ZlciB0aWxnamVuZ2VsZWdlIHBha2thciwgdmlzcyBtb2dlbGVnLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NQorbXNnaWQgInMiCittc2dzdHIgInYiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDUKK21zZ2lkICJbU11lbGVjdCIKK21zZ3N0ciAiW1ZdZWwiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDUKK21zZ2lkICJSZXF1ZXN0IHdoaWNoIHBhY2thZ2VzIHlvdSB3YW50IG9uIHlvdXIgc3lzdGVtLiIKK21zZ3N0ciAiQmUgb20gZGVpIHBha2thbmUgZHUgdmlsIGhhIHDDpSBzeXN0ZW1ldC4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDYKK21zZ2lkICJpIgorbXNnc3RyICJpIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ2Cittc2dpZCAiW0ldbnN0YWxsIgorbXNnc3RyICJbSV1uc3RhbGxlciIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NgorbXNnaWQgIkluc3RhbGwgYW5kIHVwZ3JhZGUgd2FudGVkIHBhY2thZ2VzLiIKK21zZ3N0ciAiSW5zdGFsbGVyIG9nIG9wcGdyYWRlciBkZWkgdmFsZGUgcGFra2FuZS4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDcKK21zZ2lkICJjIgorbXNnc3RyICJzIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ3Cittc2dpZCAiW0Ndb25maWciCittc2dzdHIgIltTXWV0IG9wcCIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NworbXNnaWQgIkNvbmZpZ3VyZSBhbnkgcGFja2FnZXMgdGhhdCBhcmUgdW5jb25maWd1cmVkLiIKK21zZ3N0ciAiU2V0IG9wcCBwYWtrYXIgc29tIGlra2plIGVyIHNldHQgb3BwLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OAorbXNnaWQgInIiCittc2dzdHIgImYiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDgKK21zZ2lkICJbUl1lbW92ZSIKK21zZ3N0ciAiW0ZdamVybiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OAorbXNnaWQgIlJlbW92ZSB1bndhbnRlZCBzb2Z0d2FyZS4iCittc2dzdHIgIkZqZXJuIHXDuG5za3RlIHByb2dyYW0uIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ5Cittc2dpZCAicSIKK21zZ3N0ciAiYSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OQorbXNnaWQgIltRXXVpdCIKK21zZ3N0ciAiW0FddnNsdXR0IgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ5Cittc2dpZCAiUXVpdCBkc2VsZWN0LiIKK21zZ3N0ciAiQXZzbHV0dGFyIGRzZWxlY3QuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTUwCittc2dpZCAibWVudSIKK21zZ3N0ciAibWVueSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE1NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuIGAlcycgcGFja2FnZSBoYW5kbGluZyBmcm9udGVuZCB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICJEZWJpYW4gYCVzJywgYnJ1a2FyZ3JlbnNlc25pdHQgZm9yIHBha2tlaGFuZHRlcmluZy4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNTgKK21zZ2lkICIiCisiQ29weXJpZ2h0IChDKSAxOTk0LTE5OTYgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTYyCisjLCBmdXp6eQorbXNnaWQgIiIKKyJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAyIG9yXG4iCisibGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuXG4iCittc2dzdHIgIiIKKyJEZXR0ZSBlciBmcmkgcHJvZ3JhbXZhcmUuIER1IGZpbm4ga29waWVyaW5nc3ZpbGvDpXJhIGlcbiIKKyJHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzam9uIDIgZWxsZXIgbnlhcmUuIERldCBmaW5zdCBJTkdFTiBnYXJhbnRpLlxuIgorIlNqw6UgwqtkcGtnLWRlYiAtLWxpY2VuY2XCuyBmb3IgZGV0YWxqYXIuXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNzIgZHNlbGVjdC9tYWluLmNjOjIyMAorbXNnaWQgIjxzdGFuZGFyZCBvdXRwdXQ+IgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSBbPGFjdGlvbj4gLi4uXVxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyIgIC0tZXhwZXJ0ICAgICAgICAgICAgICAgICAgIFR1cm4gb24gZXhwZXJ0IG1vZGUuXG4iCisiICAtLWRlYnVnIDxmaWxlPiB8IC1EPGZpbGU+ICBUdXJuIG9uIGRlYnVnZ2luZywgc2VuZGluZyBvdXRwdXQgdG8gPGZpbGU+LlxuIgorIiAgLS1jb2xvdXIgfCAtLWNvbG9yIHNjcmVlbnBhcnQ6W2ZvcmVncm91bmRdLFtiYWNrZ3JvdW5kXVs6YXR0clsrYXR0cisuLl1dXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDb25maWd1cmUgc2NyZWVuIGNvbG91cnMuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE5NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgICBTaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICAgU2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjAxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJBY3Rpb25zOlxuIgorIiAgYWNjZXNzIHVwZGF0ZSBzZWxlY3QgaW5zdGFsbCBjb25maWcgcmVtb3ZlIHF1aXRcbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjA1CisjLCBjLWZvcm1hdAorbXNnaWQgIlNjcmVlbnBhcnRzOlxuIgorbXNnc3RyICJTa2plcm1kZWxhcjpcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjIxMAorIywgYy1mb3JtYXQKK21zZ2lkICJDb2xvdXJzOlxuIgorbXNnc3RyICJGYXJnYXI6XG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiQXR0cmlidXRlczpcbiIKK21zZ3N0ciAiQXR0cmlidXR0YXI6XG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGRuJ3Qgb3BlbiBkZWJ1ZyBmaWxlIGAlLjI1NXMnXG4iCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBvcG5hIGF2bHVzaW5nc2ZpbCBgJS4yNTVzJ1xuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjUzCisjLCBjLWZvcm1hdAorbXNnaWQgIkludmFsaWQgJXMgYCVzJ1xuIgorbXNnc3RyICJVZ3lsZGlnICVzIGAlcydcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjI3MAorbXNnaWQgInNjcmVlbiBwYXJ0IgorbXNnc3RyICJza2plcm1kZWwiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyNzYKK21zZ2lkICJOdWxsIGNvbG91ciBzcGVjaWZpY2F0aW9uXG4iCittc2dzdHIgIkluZ2VuIGZhcmdlc3Blc2lmaWthc2pvblxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6Mjg0IGRzZWxlY3QvbWFpbi5jYzoyODkKK21zZ2lkICJjb2xvdXIiCittc2dzdHIgImZhcmdlIgorCisjOiBkc2VsZWN0L21haW4uY2M6Mjk3Cittc2dpZCAiY29sb3VyIGF0dHJpYnV0ZSIKK21zZ3N0ciAiZmFyZ2VhdHRyaWJ1dHQiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzozMjkKK21zZ2lkICJUZXJtaW5hbCBkb2VzIG5vdCBhcHBlYXIgdG8gc3VwcG9ydCBjdXJzb3IgYWRkcmVzc2luZy5cbiIKK21zZ3N0ciAiVGVybWluYWxlbiBzZXIgaWtramUgdXQgdGlsIMOlIHN0w7h0dGEgbWFya8O4cmFkcmVzc2VyaW5nLlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MzMxCittc2dpZCAiVGVybWluYWwgZG9lcyBub3QgYXBwZWFyIHRvIHN1cHBvcnQgaGlnaGxpZ2h0aW5nLlxuIgorbXNnc3RyICJUZXJtaW5hbGVuIHNlciBpa2tqZSB1dCB0aWwgw6Ugc3TDuHR0YSB1dGhldmluZy5cbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjMzMworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIlNldCB5b3VyIFRFUk0gdmFyaWFibGUgY29ycmVjdGx5LCB1c2UgYSBiZXR0ZXIgdGVybWluYWwsXG4iCisib3IgbWFrZSBkbyB3aXRoIHRoZSBwZXItcGFja2FnZSBtYW5hZ2VtZW50IHRvb2wgJXMuXG4iCittc2dzdHIgIiIKKyJTZXQgVEVSTS12YXJpYWJlbGVuIHJldHQsIGJydWsgZWluIGJldHJlIHRlcm1pbmFsIGVsbGVyIFxuIgorImR1IGx5dCBrbGFyZSBkZWcgbWVkIGhhbmR0ZXJpbmdzdmVya3TDuHlldCBmb3Iga3ZhciBwYWtrZSAiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzozMzYKK21zZ2lkICJ0ZXJtaW5hbCBsYWNrcyBuZWNlc3NhcnkgZmVhdHVyZXMsIGdpdmluZyB1cCIKK21zZ3N0ciAidGVybWluYWxlbiBtYW5nbGFyIG7DuGR2ZW5kaWdlIGZ1bmtzam9uYXIsIGdqZXYgb3BwIgorCisjOiBkc2VsZWN0L21haW4uY2M6NDE3Cittc2dpZCAiIgorIlxuIgorIlxuIgorIk1vdmUgYXJvdW5kIHdpdGggXlAgYW5kIF5OLCBjdXJzb3Iga2V5cywgaW5pdGlhbCBsZXR0ZXJzLCBvciBkaWdpdHM7XG4iCisiUHJlc3MgPGVudGVyPiB0byBjb25maXJtIHNlbGVjdGlvbi4gICBeTCByZWRyYXdzIHNjcmVlbi5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIlxuIgorIlxuIgorIkZseXR0IHJ1bmR0IG1lZCBeUCBvZyBeTiwgcGlsdGFzdGFyLCBpbm5sZWlhbmRlIGJva3N0YXZhciBlbGxlciAiCisibnVtbWVydGFzdGFuZTtcbiIKKyJUcnlrayA8ZW50ZXI+IGZvciDDpSBzdGFkZmVzdGEgdXR2YWxldC4gICBeTCB0ZWlrbmFyIHNramVybWVuIHDDpSBueS5cbiIKKyJcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjQyOAorbXNnaWQgIiIKKyJcbiIKKyJcbiIKKyJSZWFkLW9ubHkgYWNjZXNzOiBvbmx5IHByZXZpZXcgb2Ygc2VsZWN0aW9ucyBpcyBhdmFpbGFibGUhIgorbXNnc3RyICIiCisiXG4iCisiXG4iCisiU2tyaXZldmVybmEgdGlsZ2FuZzogYmVycmUgZsO4cmVoYW5kc3Zpc2luZyBhdiB1dHZhbCBlciB0aWxnamVuZ2VsZWchIgorCisjOiBkc2VsZWN0L21haW4uY2M6NDQ4Cittc2dpZCAiZmFpbGVkIHRvIGdldGNoIGluIG1haW4gbWVudSIKK21zZ3N0ciAia2xhcnRlIGlra2plIGJydWthIMKrZ2V0Y2jCuyBpIGhvdmVkbWVueWVuIgorCisjOiBkc2VsZWN0L21haW4uY2M6NTMxCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gYWN0aW9uIHN0cmluZyBgJS41MHMnIgorbXNnc3RyICJ1a2plbnQgaGFuZGxpbmdzc3RyZW5nIGAlLjUwcyciCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6NzcKK21zZ2lkICJkc2VsZWN0IC0gbGlzdCBvZiBhY2Nlc3MgbWV0aG9kcyIKK21zZ3N0ciAiZHNlbGVjdCAtIGxpc3RlIG92ZXIgdGlsZ2FuZ3NtZXRvZGFyIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjg2CisjLCBjLWZvcm1hdAorbXNnaWQgIkFjY2VzcyBtZXRob2QgYCVzJy4iCittc2dzdHIgIlRpbGdhbmdzbWV0b2RlIGAlcycuIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjEyMAorbXNnaWQgIkFiYnJldi4iCittc2dzdHIgIkZvcmtvcnQuIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjEyMSBkc2VsZWN0L3BrZ2luZm8uY2M6MTA1IGRzZWxlY3QvcGtndG9wLmNjOjI5MQorbXNnaWQgIkRlc2NyaXB0aW9uIgorbXNnc3RyICJTa2lsZHJpbmciCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTY0IGRzZWxlY3QvcGtnbGlzdC5jYzo1NzIKK21zZ2lkICJkb3VwZGF0ZSBmYWlsZWQiCittc2dzdHIgIsKrZG91cGRhdGXCuyBmZWlsYSIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxNjYgZHNlbGVjdC9wa2dsaXN0LmNjOjU3NQorbXNnaWQgImZhaWxlZCB0byB1bmJsb2NrIFNJR1dJTkNIIgorbXNnc3RyICJrbGFydGUgaWtramUgYXZibG9ra2VyYSBTSUdXSU5DSCIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxNzAgZHNlbGVjdC9wa2dsaXN0LmNjOjU4MAorbXNnaWQgImZhaWxlZCB0byByZS1ibG9jayBTSUdXSU5DSCIKK21zZ3N0ciAia2xhcnRlIGlra2plIHJlYmxva2tlcmEgU0lHV0lOQ0giCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTcxIGRzZWxlY3QvcGtnbGlzdC5jYzo1ODIKK21zZ2lkICJnZXRjaCBmYWlsZWQiCittc2dzdHIgIsKrZ2V0Y2jCuyBmZWlsYSIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxODgKKyMsIGZ1enp5Cittc2dpZCAiRXhwbGFuYXRpb24iCittc2dzdHIgImZvcmtsYXJpbmcgcMOlICIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxOTcKK21zZ2lkICJObyBleHBsYW5hdGlvbiBhdmFpbGFibGUuIgorbXNnc3RyICJJbmdlbiBmb3JrbGFyaW5nIHRpbGdqZW5nZWxlZy4iCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjY3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJcbiIKKyIlczogJXNcbiIKK21zZ3N0ciAiIgorIlxuIgorIlxuIgorIiVzOiAlc1xuIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzo3MAorbXNnaWQgIiIKKyJcbiIKKyJQcmVzcyA8ZW50ZXI+IHRvIGNvbnRpbnVlLiIKK21zZ3N0ciAiIgorIlxuIgorIlRyeWtrIDxlbnRlcj4gZm9yIMOlIGhhbGRhIGZyYW0uIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoxNjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHJlc3MgPGVudGVyPiB0byBjb250aW51ZS5cbiIKK21zZ3N0ciAiVHJ5a2sgRW50ZXIgZm9yIMOlIGhhbGRhIGZyYW0uXG4iCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjE2MgorIywgZnV6enkKK21zZ2lkICI8c3RhbmRhcmQgZXJyb3I+IgorbXNnc3RyICJza3JpdmVmZWlsIHDDpSBzdGFuZGFyZC1mZWlsIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoxNjUKK21zZ2lkICJlcnJvciByZWFkaW5nIGFja25vd2xlZGdlbWVudCBvZiBwcm9ncmFtIGZhaWx1cmUgbWVzc2FnZSIKK21zZ3N0ciAiZmVpbCB2ZWQgbGVzaW5nIGF2IGdvZGtqZW5uaW5nIGF2IHByb2dyYW1mZWlsbWVsZGluZyIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MTk2Cittc2dpZCAidXBkYXRlIGF2YWlsYWJsZSBsaXN0IHNjcmlwdCIKK21zZ3N0ciAic2tyaXB0IHRpbCBvcHBkYXRlcmluZyBhdiB0aWxnamVuZ2VsaXN0ZSIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MjAwCittc2dpZCAiaW5zdGFsbGF0aW9uIHNjcmlwdCIKK21zZ3N0ciAiaW5zdGFsbGFzam9uc3NrcmlwdCIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MjQ2Cittc2dpZCAicXVlcnkvc2V0dXAgc2NyaXB0IgorbXNnc3RyICJza3JpcHQgdGlsIHNww7hyamluZy9vcHBzZXR0IgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzo1MworIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gbWV0aG9kIG9wdGlvbnMgZmlsZSBgJS4yNTBzJyAtLSAlcyIKK21zZ3N0ciAic3ludGFrc2ZlaWwgaSBtZXRvZGV2YWxmaWxhIMKrJS4yNTBzwrsgLS0gJXMiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjU5CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHJlYWRpbmcgb3B0aW9ucyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJmZWlsIHZlZCBsZXNpbmcgYXYgdmFsZmlsYSDCqyUuMjUwc8K7IgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzo5MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBgJS4yNTBzJyBkaXJlY3RvcnkgZm9yIHJlYWRpbmcgbWV0aG9kcyIKK21zZ3N0ciAia2xhcnRlIGlra2plIGxlc2Ega2F0YWxvZ2VuIMKrJS4yNTBzwrsgZm9yIGxlc2luZyBhdiBtZXRvZGFyIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxMDYKKyMsIGMtZm9ybWF0Cittc2dpZCAibWV0aG9kIGAlLjI1MHMnIGhhcyBuYW1lIHRoYXQgaXMgdG9vIGxvbmcgKCVkID4gJWQgY2hhcmFjdGVycykiCittc2dzdHIgIm1ldG9kZW4gwqslLjI1MHPCuyBoYXIgZm9yIGxhbmd0IG5hbW4gKCVkID4gJWQgdGVpa24pIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGFjY2VzcyBtZXRob2Qgc2NyaXB0IGAlLjI1MHMnIgorbXNnc3RyICJmZWtrIGlra2plIHRpbGdhbmcgdGlsIG1ldG9kZXNrcmlwdGV0IMKrJS4yNTBzwrsiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjEyMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBtZXRob2Qgb3B0aW9ucyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrbGFydGUgaWtramUgbGVzYSBtZXRvZGV2YWxmaWxhIMKrJS4yNTBzwrsiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE0NworbXNnaWQgIm5vbi1kaWdpdCB3aGVyZSBkaWdpdCB3YW50ZWQiCittc2dzdHIgImlra2plLXRhbCBkZXIgZGV0IHNrdWxsZSB2ZXJhIGVpdCB0YWwiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE1MAorbXNnaWQgIkVPRiBpbiBpbmRleCBzdHJpbmciCittc2dzdHIgInNsdXR0LXDDpS1maWwgaSBpbmRla3NzdHJlbmciCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE1MworbXNnaWQgImluZGV4IHN0cmluZyB0b28gbG9uZyIKK21zZ3N0ciAiZm9yIGxhbmcgaW5kZWtzc3RyZW5nIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNTYKK21zZ2lkICJuZXdsaW5lIGJlZm9yZSBvcHRpb24gbmFtZSBzdGFydCIKK21zZ3N0ciAibGluamVza2lmdCBmw7hyIHN0YXJ0ZW4gcMOlIHZhbG5hbW5ldCIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTU4Cittc2dpZCAiRU9GIGJlZm9yZSBvcHRpb24gbmFtZSBzdGFydCIKK21zZ3N0ciAic2x1dHQtcMOlLWZpbCBmw7hyIHN0YXJ0ZW4gcMOlIHZhbG5hbW5ldCIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTYyCittc2dpZCAibm9uYWxwaGEgd2hlcmUgb3B0aW9uIG5hbWUgc3RhcnQgd2FudGVkIgorbXNnc3RyICJpa2tqZS1ib2tzdGF2IGRlciBlaXQgdmFsbmFtbiBza3VsbGUgc3RhcnRhIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNjQKK21zZ2lkICJub24tYWxwaGFudW0gaW4gb3B0aW9uIG5hbWUiCittc2dzdHIgInZhbG5hbW5ldCBpbm5laGVsZCB0ZWlrbiBzb20gaWtramUgZXIgdGFsIGVsbGVyIGJva3N0YXZhciIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTY3Cittc2dpZCAiRU9GIGluIG9wdGlvbiBuYW1lIgorbXNnc3RyICJzbHV0dC1ww6UtZmlsIGkgdmFsbmFtbiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTcyCittc2dpZCAibmV3bGluZSBiZWZvcmUgc3VtbWFyeSIKK21zZ3N0ciAibGluamVza2lmdCBmw7hyIHNraWxkcmluZ2EiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE3NAorbXNnaWQgIkVPRiBiZWZvcmUgc3VtbWFyeSIKK21zZ3N0ciAic2x1dHQtcMOlLWZpbCBmw7hyIHNraWxkcmluZ2EiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE4MAorbXNnaWQgIkVPRiBpbiBzdW1tYXJ5IC0gbWlzc2luZyBuZXdsaW5lIgorbXNnc3RyICJzbHV0dC1ww6UtZmlsIGkgc2tpbGRyaW5nYSAtIG1hbmdsYXIgbGluamVza2lmdCIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTkwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIG9wdGlvbiBkZXNjcmlwdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrbGFydGUgaWtramUgb3BuYSB2YWxza2lsZHJpbmdzZmlsYSDCqyUuMjUwc8K7IgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxOTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgb3B0aW9uIGRlc2NyaXB0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImZhbm4gaWtramUgdmFsc2tpbGRyaW5nc2ZpbGEgwqslLjI1MHPCuyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTk4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZWFkIG9wdGlvbiBkZXNjcmlwdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrbGFydGUgaWtramUgbGVzYSB2YWxza2lsZHJpbmdzZmlsYSDCqyUuMjUwc8K7IgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgZHVyaW5nIHJlYWQgb2Ygb3B0aW9uIGRlc2NyaXB0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImZlaWwgdmVkIGxlc2luZyBhdiB2YWxza2lsZHJpbmdzZmlsYSDCqyUuMjUwc8K7IgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgZHVyaW5nIHJlYWQgb2YgbWV0aG9kIG9wdGlvbnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiZmVpbCB2ZWQgbGVzaW5nIGF2IG1ldG9kZXZhbGZpbGEgwqslLjI1MHPCuyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MjQ3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIGN1cnJlbnQgb3B0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBvcG5hIHZhbGZpbGEgwqslLjI1MHPCuyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6Mjg5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIG5ldyBvcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia2xhcnRlIGlra2plIG9wbmEgZGVuIG55ZSB2YWxmaWxhIMKrJS4yNTBzwrsiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjI5MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgbmV3IG9wdGlvbiB0byBgJS4yNTBzJyIKK21zZ3N0ciAia2xhcnRlIGlra2plIHNrcml2YSBkZW4gbnllIHZhbGZpbGEgwqslLjI1MHPCuyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6Mjk1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBuZXcgb3B0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBsdWtrYSBkZW4gbnllIHZhbGZpbGEgwqslLjI1MHPCuyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6Mjk3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyBvcHRpb24gYXMgYCUuMjUwcyciCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBpbnN0YWxsZXJhIG55dHQgdmFsIHNvbSDCqyUuMjUwc8K7IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MzYKK21zZ2lkICJuZXcgcGFja2FnZSIKK21zZ3N0ciAibnkgcGFra2UiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzozNworbXNnaWQgImluc3RhbGwiCittc2dzdHIgImluc3RhbGxlciIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjM4Cittc2dpZCAiaG9sZCIKK21zZ3N0ciAiaGFsZCB0aWxiYWtlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MzkKK21zZ2lkICJyZW1vdmUiCittc2dzdHIgImZqZXJuIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NDAKK21zZ2lkICJwdXJnZSIKK21zZ3N0ciAicmVpbnNrIgorCisjLiBUUkFOU0xBVE9SUzogVGhlIHNwYWNlIGlzIGEgdHJpY2sgdG8gd29yayBhcm91bmQgZ2V0dGV4dCB3aGljaCB1c2VzCisjLiAqIHRoZSBlbXB0eSBzdHJpbmcgdG8gc3RvcmUgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHRyYW5zbGF0aW9uLiBETyBOT1QKKyMuICogQ0hBTkdFIFRIQVQgSU4gQSBUUkFOU0xBVElPTiEgVGhlIGNvZGUgcmVhbGx5IHJlbGllcyBvbiB0aGF0IGJlaW5nCisjLiAqIGEgc2luZ2xlIHNwYWNlLgorIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjQ3Cittc2dpZCAiICIKK21zZ3N0ciAiICIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjQ4Cittc2dpZCAiUkVJTlNUQUxMIgorbXNnc3RyICJJTlNUQUxMRVIgT00gQVRUIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTEKK21zZ2lkICJub3QgaW5zdGFsbGVkIgorbXNnc3RyICJpa2tqZSBpbnN0YWxsZXJ0IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTIKK21zZ2lkICJyZW1vdmVkIChjb25maWdzIHJlbWFpbikiCittc2dzdHIgImZqZXJuYSAodGVrZSB2YXJlIHDDpSBvcHBzZXR0KSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjUzCittc2dpZCAiaGFsZiBpbnN0YWxsZWQiCittc2dzdHIgImhhbHZpbnN0YWxsZXJ0IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTQKK21zZ2lkICJ1bnBhY2tlZCAobm90IHNldCB1cCkiCittc2dzdHIgInV0cGFra2EgKGlra2plIHNldHQgb3BwKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjU1Cittc2dpZCAiaGFsZiBjb25maWd1cmVkIChjb25maWcgZmFpbGVkKSIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTYKK21zZ2lkICJhd2FpdGluZyB0cmlnZ2VyIHByb2Nlc3NpbmciCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjU3Cittc2dpZCAidHJpZ2dlcmVkIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1OAorbXNnaWQgImluc3RhbGxlZCIKK21zZ3N0ciAiaW5zdGFsbGVydCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjYxCittc2dpZCAiUmVxdWlyZWQiCittc2dzdHIgIlDDpWtyYXZkIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjIKK21zZ2lkICJJbXBvcnRhbnQiCittc2dzdHIgIlZpa3RpZyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjYzCittc2dpZCAiU3RhbmRhcmQiCittc2dzdHIgIlN0YW5kYXJkIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjQKK21zZ2lkICJPcHRpb25hbCIKK21zZ3N0ciAiVmFsZnJpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjUKK21zZ2lkICJFeHRyYSIKK21zZ3N0ciAiRWtzdHJhIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjYKK21zZ2lkICIhQnVnISIKK21zZ3N0ciAiIUx1cyEiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo2NworbXNnaWQgIlVuY2xhc3NpZmllZCIKK21zZ3N0ciAiVWtsYXNzaWZpc2VydCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjcwCittc2dpZCAic3VnZ2VzdHMiCittc2dzdHIgImbDuHJlc2zDpXIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3MQorbXNnaWQgInJlY29tbWVuZHMiCittc2dzdHIgInRpbHLDpXIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3MgorbXNnaWQgImRlcGVuZHMgb24iCittc2dzdHIgImtyZXYiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3MworbXNnaWQgInByZS1kZXBlbmRzIG9uIgorbXNnc3RyICJmb3JrcmF2IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzQKK21zZ2lkICJicmVha3MiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjc1Cittc2dpZCAiY29uZmxpY3RzIHdpdGgiCittc2dzdHIgImtvbmZsaWt0IG1lZCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjc2Cittc2dpZCAicHJvdmlkZXMiCittc2dzdHIgImdqZXYiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3NworbXNnaWQgInJlcGxhY2VzIgorbXNnc3RyICJlcnN0YXR0YXIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3OAorbXNnaWQgImVuaGFuY2VzIgorbXNnc3RyICJmb3JiZXRyYXIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4MQorbXNnaWQgIlJlcSIKK21zZ3N0ciAiS3J2IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODIKK21zZ2lkICJJbXAiCittc2dzdHIgIlZrdCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjgzCittc2dpZCAiU3RkIgorbXNnc3RyICJTdGQiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4NAorbXNnaWQgIk9wdCIKK21zZ3N0ciAiVmFsIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODUKK21zZ2lkICJYdHIiCittc2dzdHIgIkVrcyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjg2Cittc2dpZCAiYlVHIgorbXNnc3RyICJMVVMiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4NworbXNnaWQgIj8iCittc2dzdHIgIj8iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo5NSBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTE1Cittc2dpZCAiQnJva2VuIgorbXNnc3RyICLDmHlkZWxhZ2RlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6OTYKK21zZ2lkICJOZXciCittc2dzdHIgIk55ZSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjk3Cittc2dpZCAiVXBkYXRlZCIKK21zZ3N0ciAiT3BwZGF0ZXJ0ZSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjk4Cittc2dpZCAiT2Jzb2xldGUvbG9jYWwiCittc2dzdHIgIkZvcmVsZGEvbG9rYWxlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6OTkKK21zZ2lkICJVcC10by1kYXRlIgorbXNnc3RyICJGZXJkaWcgb3BwZGF0ZXJ0ZSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwMAorbXNnaWQgIkF2YWlsYWJsZSIKK21zZ3N0ciAiVGlsZ2plbmdlbGVnZSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwMSBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTE3Cittc2dpZCAiUmVtb3ZlZCIKK21zZ3N0ciAiRmplcm5hIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTAyIGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTEKK21zZ2lkICJCcm9rZW5seSBpbnN0YWxsZWQgcGFja2FnZXMiCittc2dzdHIgIsOYeWRlbGFnZGUgaW5zdGFsbGVydGUgcGFra2FyIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTAzCittc2dpZCAiTmV3bHkgYXZhaWxhYmxlIHBhY2thZ2VzIgorbXNnc3RyICJOeWUgdGlsZ2plbmdlbGVnZSBwYWtrYXIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDQKK21zZ2lkICJVcGRhdGVkIHBhY2thZ2VzIChuZXdlciB2ZXJzaW9uIGlzIGF2YWlsYWJsZSkiCittc2dzdHIgIk9wcGRhdGVydGUgcGFra2FyIChueWFyZSB2ZXJzam9uIHRpbGdqZW5nZWxlZykiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDUKK21zZ2lkICJPYnNvbGV0ZSBhbmQgbG9jYWwgcGFja2FnZXMgcHJlc2VudCBvbiBzeXN0ZW0iCittc2dzdHIgIkZvcmVsZGEgb2cgbG9rYWxlIHBha2thciBww6Ugc3lzdGVtZXQiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDYKK21zZ2lkICJVcCB0byBkYXRlIGluc3RhbGxlZCBwYWNrYWdlcyIKK21zZ3N0ciAiUGFra2FyIHNvbSBlciBpbnN0YWxsZXJ0ZSBpIG55YXN0ZSB2ZXJzam9uIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTA3Cittc2dpZCAiQXZhaWxhYmxlIHBhY2thZ2VzIChub3QgY3VycmVudGx5IGluc3RhbGxlZCkiCittc2dzdHIgIlRpbGdqZW5nZWxlZ2UgcGFra2FyIChpa2tqZSBpbnN0YWxsZXJ0ZSkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDgKK21zZ2lkICJSZW1vdmVkIGFuZCBubyBsb25nZXIgYXZhaWxhYmxlIHBhY2thZ2VzIgorbXNnc3RyICJGamVybmEgcGFra2FyIHNvbSBpa2tqZSBsZW5nZXIgZXIgdGlsZ2plbmdlbGVnZSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExMgorbXNnaWQgIkluc3RhbGxlZCBwYWNrYWdlcyIKK21zZ3N0ciAiSW5zdGFsbGVydGUgcGFra2FyIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTEzCittc2dpZCAiUmVtb3ZlZCBwYWNrYWdlcyAoY29uZmlndXJhdGlvbiBzdGlsbCBwcmVzZW50KSIKK21zZ3N0ciAiRmplcm5hIHBha2thciAodGVrZSB2YXJlIHDDpSBvcHBzZXR0ZXQpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTE0Cittc2dpZCAiUHVyZ2VkIHBhY2thZ2VzIGFuZCB0aG9zZSBuZXZlciBpbnN0YWxsZWQiCittc2dzdHIgIlBha2thciBzb20gZXIgdXRyZWluc2thIGVsbGVyIGFsZHJpIGluc3RhbGxlcnRlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTE2Cittc2dpZCAiSW5zdGFsbGVkIgorbXNnc3RyICJJbnN0YWxsZXJ0ZSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExOAorbXNnaWQgIlB1cmdlZCIKK21zZ3N0ciAiUmVpbnNrYSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjE5OAorbXNnaWQgImRzZWxlY3QgLSByZWN1cnNpdmUgcGFja2FnZSBsaXN0aW5nIgorbXNnc3RyICJkc2VsZWN0IC0gcmVrdXJzaXYgcGFra2VsaXN0ZSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjE5OQorbXNnaWQgImRzZWxlY3QgLSBpbnNwZWN0aW9uIG9mIHBhY2thZ2Ugc3RhdGVzIgorbXNnc3RyICJkc2VsZWN0IC0gaW5zcGVrc2pvbiBhdiBwYWtrZXN0YXR1cyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIwMAorbXNnaWQgImRzZWxlY3QgLSBtYWluIHBhY2thZ2UgbGlzdGluZyIKK21zZ3N0ciAiZHNlbGVjdCAtIGhvdnVkcGFra2VsaXN0ZSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIwOAorbXNnaWQgIiAoYnkgc2VjdGlvbikiCittc2dzdHIgIiAoZXR0ZXIgZGVsKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIxMQorbXNnaWQgIiAoYXZhaWwuLCBzZWN0aW9uKSIKK21zZ3N0ciAiICh0aWxnai4sIGRlbCkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMTQKK21zZ2lkICIgKHN0YXR1cywgc2VjdGlvbikiCittc2dzdHIgIiAoc3RhdHVzLCBkZWwpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjIzCittc2dpZCAiIChieSBwcmlvcml0eSkiCittc2dzdHIgIiAoZXR0ZXIgcHJpb3JpdGV0KSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIyNgorbXNnaWQgIiAoYXZhaWwuLCBwcmlvcml0eSkiCittc2dzdHIgIiAodGlsZ2ouLCBwcmlvcml0ZXQpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjI5Cittc2dpZCAiIChzdGF0dXMsIHByaW9yaXR5KSIKK21zZ3N0ciAiIChzdGF0dXMsIHByaW9yaXRldCkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMzggZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI1MAorbXNnaWQgIiAoYWxwaGFiZXRpY2FsbHkpIgorbXNnc3RyICIgKGFsZmFiZXRpc2spIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjQxCittc2dpZCAiIChieSBhdmFpbGFiaWxpdHkpIgorbXNnc3RyICIgKGV0dGVyIHRpbGdqZW5nZSkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNDQKK21zZ2lkICIgKGJ5IHN0YXR1cykiCittc2dzdHIgIiAoZXR0ZXIgc3RhdHVzKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI1OAorbXNnaWQgIiBtYXJrOisvPS8tIHRlcnNlOnYgaGVscDo/IgorbXNnc3RyICIgbWFya2VyOisvPS8tIHN0dXR0OnYgaGplbHA6PyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI1OQorbXNnaWQgIiBtYXJrOisvPS8tIHZlcmJvc2U6diBoZWxwOj8iCittc2dzdHIgIiBtYXJrZXI6Ky89Ly0gZnlsZGlnOnYgaGplbHA6PyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI2MAorbXNnaWQgIiB0ZXJzZTp2IGhlbHA6PyIKK21zZ3N0ciAiIHN0dXR0OnYgaGplbHA6PyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI2MQorbXNnaWQgIiB2ZXJib3NlOnYgaGVscDo/IgorbXNnc3RyICIgZnlsZGlnOnYgaGplbHA6PyIKKworIzogZHNlbGVjdC9wa2dpbmZvLmNjOjgwCittc2dpZCAiIgorIlRoZSBsaW5lIHlvdSBoYXZlIGhpZ2hsaWdodGVkIHJlcHJlc2VudHMgbWFueSBwYWNrYWdlczsgaWYgeW91IGFzayB0byAiCisiaW5zdGFsbCwgcmVtb3ZlLCBob2xkLCBldGMuIGl0IHlvdSB3aWxsIGFmZmVjdCBhbGwgdGhlIHBhY2thZ2VzIHdoaWNoIG1hdGNoICIKKyJ0aGUgY3JpdGVyaW9uIHNob3duLlxuIgorIlxuIgorIklmIHlvdSBtb3ZlIHRoZSBoaWdobGlnaHQgdG8gYSBsaW5lIGZvciBhIHBhcnRpY3VsYXIgcGFja2FnZSB5b3Ugd2lsbCBzZWUgIgorImluZm9ybWF0aW9uIGFib3V0IHRoYXQgcGFja2FnZSBkaXNwbGF5ZWQgaGVyZS5cbiIKKyJZb3UgY2FuIHVzZSBgbycgYW5kIGBPJyB0byBjaGFuZ2UgdGhlIHNvcnQgb3JkZXIgYW5kIGdpdmUgeW91cnNlbGYgdGhlICIKKyJvcHBvcnR1bml0eSB0byBtYXJrIHBhY2thZ2VzIGluIGRpZmZlcmVudCBraW5kcyBvZiBncm91cHMuIgorbXNnc3RyICIiCisiRHUgaGFyIHZhbGQgZWkgbGluamUgbWVkIG1hbmdlIHBha2thci4gRGVyc29tIGR1IHZlbCDDpSBpbnN0YWxsZXJhLCBmamVybmEsICIKKyJoYWxkYSB0aWxiYWtlIGVsbGVyIGxpa25hbmRlLCB2aWwgaGFuZGxpbmdhIHDDpXZlcmthIGFsbGUgcGFra2FuZSBzb20gcGFzc2FyICIKKyJ0aWwga3JpdGVyaWV0LlxuIgorIlxuIgorIkRlcnNvbSBkdSBmbHl0dGFyIG1hcmtlcmluZ2EgdGlsIGVpIGxpbmplIG1lZCBiZXJyZSDDqWluIHBha2tlLCBrYW4gZHUgc2rDpSAiCisiaW5mb3JtYXNqb24gb20gZGVuIHBha2tlbiBpIGRldHRlIGZlbHRldC5cbiIKKyJEdSBrYW4gZW5kcmEgc29ydGVyaW5nc3Jla2tqZWbDuGxnamEgbWVkIMKrb8K7IG9nIMKrT8K7IGZvciBzasO4bHYgw6Uga3VubmEgbWFya2VyYSAiCisicGFra2FyIGkgYW5kcmUgZ3J1cHBlci4iCisKKyM6IGRzZWxlY3QvcGtnaW5mby5jYzo5MworIywgZnV6enkKK21zZ2lkICJJbnRlcnJlbGF0aW9uc2hpcHMiCittc2dzdHIgInNhbWFuaGVuZ2FyIgorCisjOiBkc2VsZWN0L3BrZ2luZm8uY2M6MTEyCisjLCBmdXp6eQorbXNnaWQgIk5vIGRlc2NyaXB0aW9uIGF2YWlsYWJsZS4iCittc2dzdHIgImluZ2Egc2tpbGRyaW5nIHRpbGdqZW5nZWxlZy4iCisKKyM6IGRzZWxlY3QvcGtnaW5mby5jYzoxMzAKKyMsIGZ1enp5Cittc2dpZCAiSW5zdGFsbGVkIGNvbnRyb2wgZmlsZSBpbmZvcm1hdGlvbiIKK21zZ3N0ciAiaW5zdGFsbGVydCBrb250cm9sbGluZm9ybWFzam9uIGZvciAiCisKKyM6IGRzZWxlY3QvcGtnaW5mby5jYzoxNDYKKyMsIGZ1enp5Cittc2dpZCAiQXZhaWxhYmxlIGNvbnRyb2wgZmlsZSBpbmZvcm1hdGlvbiIKK21zZ3N0ciAidGlsZ2plbmdlbGVnIHZlcnNqb24gYXYga29udHJvbGxmaWxpbmZvcm1hc2pvbiIKKworIzogZHNlbGVjdC9wa2dsaXN0LmNjOjQxNgorbXNnaWQgIlRoZXJlIGFyZSBubyBwYWNrYWdlcy4iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dsaXN0LmNjOjUwNworbXNnaWQgImludmFsaWQgc2VhcmNoIG9wdGlvbiBnaXZlbiIKK21zZ3N0ciAidWd5bGRpZyBzw7hramV2YWwgb3BwZ2pldmUiCisKKyM6IGRzZWxlY3QvcGtnbGlzdC5jYzo1MjEKK21zZ2lkICJlcnJvciBpbiByZWd1bGFyIGV4cHJlc3Npb24iCittc2dzdHIgImZlaWwgaSByZWd1bMOmcnQgdXR0cnlrayIKKworIzogZHNlbGVjdC9wa2dzdWJsaXN0LmNjOjEwNworbXNnaWQgIiBkb2VzIG5vdCBhcHBlYXIgdG8gYmUgYXZhaWxhYmxlXG4iCittc2dzdHIgIiBzZXIgaWtramUgdXQgdGlsIMOlIHZlcmEgdGlsZ2plbmdlbGVnXG4iCisKKyM6IGRzZWxlY3QvcGtnc3VibGlzdC5jYzoxMjcKK21zZ2lkICIgb3IgIgorbXNnc3RyICIgZWxsZXIgIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo1NworbXNnaWQgIkFsbCIKK21zZ3N0ciAiQWxsZSIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6NzkKK21zZ2lkICJBbGwgcGFja2FnZXMiCittc2dzdHIgIkFsbGUgcGFra2FyIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo4MworIywgYy1mb3JtYXQKK21zZ2lkICIlcyBwYWNrYWdlcyB3aXRob3V0IGEgc2VjdGlvbiIKK21zZ3N0ciAiJXMgcGFra2FyIHV0YW4gbm9rb24gZGVsIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo4NQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBwYWNrYWdlcyBpbiBzZWN0aW9uICVzIgorbXNnc3RyICIlcyBwYWtrYXIgaSBkZWxlbiAlcyIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6OTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgJXMgcGFja2FnZXMiCittc2dzdHIgIiVzICVzIHBha2thciIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgJXMgcGFja2FnZXMgd2l0aG91dCBhIHNlY3Rpb24iCittc2dzdHIgIiVzICVzIHBha2thciB1dGFuIG5va29uIGRlbCIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6OTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgJXMgcGFja2FnZXMgaW4gc2VjdGlvbiAlcyIKK21zZ3N0ciAiJXMgJXMgcGFra2FyIGkgZGVsZW4gJXMiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjExOAorIywgYy1mb3JtYXQKK21zZ2lkICIlLSpzICVzJXMlczsgICVzICh3YXM6ICVzKS4gICVzIgorbXNnc3RyICIlLSpzICVzJXMlczsgICVzICh2YXI6ICVzKS4gICVzIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyNjMKK21zZ2lkICJFcnJvciIKK21zZ3N0ciAiRmVpbCIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6MjY3Cittc2dpZCAiSW5zdGFsbGVkPyIKK21zZ3N0ciAiSW5zdGFsbGVydD8iCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI3MQorbXNnaWQgIk9sZCBtYXJrIgorbXNnc3RyICJHYW1tYWx0IG1lcmtlIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyNzUKK21zZ2lkICJNYXJrZWQgZm9yIgorbXNnc3RyICJNYXJrZXJ0IGZvciIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6Mjc4Cittc2dpZCAiRUlPTSIKK21zZ3N0ciAiRklHTSIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6MjgwCittc2dpZCAiU2VjdGlvbiIKK21zZ3N0ciAiRGVsIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyODEKK21zZ2lkICJQcmlvcml0eSIKK21zZ3N0ciAiUHJpb3JpdGV0IgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyODIKK21zZ2lkICJQYWNrYWdlIgorbXNnc3RyICJQYWtrZSIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6Mjg2Cittc2dpZCAiSW5zdC52ZXIiCittc2dzdHIgIkluc3QudmVyIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyODkKK21zZ2lkICJBdmFpbC52ZXIiCittc2dzdHIgIlRpbGdqLnZlciIKKworI34gbXNnaWQgInJldHVybmVkIGVycm9yIGV4aXQgc3RhdHVzICVkLlxuIgorI34gbXNnc3RyICJhdnNsdXR0YSBtZWQgZmVpbHN0YXR1cyAlZC5cbiIKKworI34gbXNnaWQgIndhcyBpbnRlcnJ1cHRlZC5cbiIKKyN+IG1zZ3N0ciAidmFydCBhdmJyb3RlLlxuIgorCisjfiBtc2dpZCAid2FzIHRlcm1pbmF0ZWQgYnkgYSBzaWduYWw6ICVzLlxuIgorI34gbXNnc3RyICJ2YXJ0IGF2YnJvdGUgYXYgZWl0IHNpZ25hbDogJXMuXG4iCisKKyN+IG1zZ2lkICIoSXQgbGVmdCBhIGNvcmVkdW1wLilcbiIKKyN+IG1zZ3N0ciAiKEzDqXQgZXR0ZXIgc2VnIGVpbiBtaW5uZWR1bXAuKVxuIgorCisjfiBtc2dpZCAiZmFpbGVkIHdpdGggYW4gdW5rbm93biB3YWl0IHJldHVybiBjb2RlICVkLlxuIgorI34gbXNnc3RyICJtaXNsdWtrYXN0IG1lZCBlaW4gdWtqZW5kIHZlbnRlcmV0dXJrb2RlICVkLlxuIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHJ1biAlLjI1MHMgcHJvY2VzcyBgJS4yNTBzJyIKKyN+IG1zZ3N0ciAia2xhcmVyIGlra2plIGvDuHlyYSAlLjI1MHMgcHJvc2VzcyBgJS4yNTBzJyIKKworI34gbXNnaWQgImZhaWxlZCBjb25maWciCisjfiBtc2dzdHIgIm1pc2x1a2thIG9wcHNldHQiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gd2FpdCBmb3IgJS4yNTBzIgorI34gbXNnc3RyICJrbGFyZXIgaWtramUgdmVudGEgcMOlICUuMjUwcyIKKworI34gbXNnaWQgImdvdCB3cm9uZyBjaGlsZCdzIHN0YXR1cyAtIGFza2VkIGZvciAlbGQsIGdvdCAlbGQiCisjfiBtc2dzdHIgImZla2sgc3RhdHVzIGZyw6UgZmVpbCBiYXJuIC0gc3B1cmRlIGV0dGVyICVsZCwgZmVrayAlbGQiCisKKyN+IG1zZ2lkICJSZWNvbW1lbmRlZCIKKyN+IG1zZ3N0ciAiVGlscsOlZGQiCisKKyN+IG1zZ2lkICJDb250cmliIgorI34gbXNnc3RyICJCaWRyYWciCisKKyN+IG1zZ2lkICJSZWMiCisjfiBtc2dzdHIgIlRsciIKKworI34gbXNnaWQgIkN0YiIKKyN+IG1zZ3N0ciAiQmRyIgorCisjfiBtc2dpZCAiIgorI34gImJhc2VsaXN0OjpzdGFydGRpc3BsYXkoKSBkb25lIC4uLlxuIgorI34gIlxuIgorI34gIiB4bWF4PSVkLCB5bWF4PSVkO1xuIgorI34gIlxuIgorI34gIiB0aXRsZV9oZWlnaHQ9JWQsIGNvbGhlYWRzX2hlaWdodD0lZCwgbGlzdF9oZWlnaHQ9JWQ7XG4iCisjfiAiIHRoaXNzdGF0ZV9oZWlnaHQ9JWQsIGluZm9faGVpZ2h0PSVkLCB3aGF0aW5mb19oZWlnaHQ9JWQ7XG4iCisjfiAiXG4iCisjfiAiIGNvbGhlYWRzX3Jvdz0lZCwgdGhpc3N0YXRlX3Jvdz0lZCwgaW5mb19yb3c9JWQ7XG4iCisjfiAiIHdoYXRpbmZvX3Jvdz0lZCwgbGlzdF9yb3c9JWQ7XG4iCisjfiAiXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJiYXNlbGlzdDo6c3RhcnRkaXNwbGF5KCkgZmVyZGlnIC4uLlxuIgorI34gIlxuIgorI34gIiB4bWF4PSVkLCB5bWF4PSVkO1xuIgorI34gIlxuIgorI34gIiB0aXRsZV9oZWlnaHQ9JWQsIGNvbGhlYWRzX2hlaWdodD0lZCwgbGlzdF9oZWlnaHQ9JWQ7XG4iCisjfiAiIHRoaXNzdGF0ZV9oZWlnaHQ9JWQsIGluZm9faGVpZ2h0PSVkLCB3aGF0aW5mb19oZWlnaHQ9JWQ7XG4iCisjfiAiXG4iCisjfiAiIGNvbGhlYWRzX3Jvdz0lZCwgdGhpc3N0YXRlX3Jvdz0lZCwgaW5mb19yb3c9JWQ7XG4iCisjfiAiIHdoYXRpbmZvX3Jvdz0lZCwgbGlzdF9yb3c9JWQ7XG4iCisjfiAiXG4iCisKKyN+IG1zZ2lkICJbbm9uZV0iCisjfiBtc2dzdHIgIltpbmdlbl0iCisKKyN+IG1zZ2lkICJlcnJvciB1bi1jYXRjaGluZyBzaWduYWwgJWQ6ICVzXG4iCisjfiBtc2dzdHIgImZlaWwgdmVkIHNsZXBwIGF2IHNpZ25hbCAlZDogJXNcbiIKKworI34gbXNnaWQgInVuYWJsZSB0byBpZ25vcmUgc2lnbmFsICVkIGJlZm9yZSBydW5uaW5nICUuMjUwcyIKKyN+IG1zZ3N0ciAia2xhcmVyIGlra2plIGlnbm9yZXJhIHNpZ25hbCAlZCBmw7hyIGvDuHlyaW5nIGF2ICUuMjUwcyIKKworI34gbXNnaWQgIihubyBjbGllbnRkYXRhKSIKKyN+IG1zZ3N0ciAiKGluZ2VuIGtsaWVudGRhdGEpIgorCisjfiBtc2dpZCAiPG51bGw+IgorI34gbXNnc3RyICI8dG9tPiIKKworI34gbXNnaWQgImludGVycmVsYXRpb25zaGlwcyBhZmZlY3RpbmcgIgorI34gbXNnc3RyICJzYW1hbmhlbmdhciBzb20gcMOldmVya2FyICIKKworI34gbXNnaWQgImRlc2NyaXB0aW9uIG9mICIKKyN+IG1zZ3N0ciAic2tpbGRyaW5nIGF2ICIKKworI34gbXNnaWQgImRlc2NyaXB0aW9uIgorI34gbXNnc3RyICJza2lsZHJpbmciCisKKyN+IG1zZ2lkICJjdXJyZW50bHkgaW5zdGFsbGVkIGNvbnRyb2wgaW5mbyIKKyN+IG1zZ3N0ciAiaW5zdGFsbGVydCBrb250cm9sbGluZm9ybWFzam9uIgorCisjfiBtc2dpZCAiYXZhaWxhYmxlIHZlcnNpb24gb2YgY29udHJvbCBpbmZvIGZvciAiCisjfiBtc2dzdHIgInRpbGdqZW5nZWxlZyB2ZXJzam9uIGF2IGtvbnRyb2xsaW5mb3JtYXNqb24gZm9yICIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9wbC5nbW8gYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vcGwuZ21vCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmMzOWVlNTEKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vcGwuZ21vCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9wbC5wbyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9wbC5wbwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mYTg0OTRhCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL3BsLnBvCkBAIC0wLDAgKzEsMTcyMiBAQAorIyBQb2xpc2ggdHJhbnNsYXRpb24gb2YgZHNlbGVjdAorIyBDb3B5cmlnaHQgKEMpIDE5OTkgU29mdHdhcmUgaW4gdGhlIFB1YmxpYyBJbnRlcmVzdCwgSW5jLgorIyBQaW90ciBSb3N6YXR5Y2tpIDxkZXh0ZXJAZGViaWFuLm9yZz4sIDE5OTkuCisjIEJhcnRvc3ogRmXFhHNraSA8ZmVuaW9AZGViaWFuLm9yZz4sIDIwMDQtMjAwNQorIyBSb2JlcnQgTHViZXJkYSA8cm9iZXJ0QGRlYmlhbi5vcmc+LCAyMDA2LTIwMDgKKyMgV2lrdG9yIFdhbmRhY2hvd2ljeiA8c2lyeWVzQGdtYWlsLmNvbT4sIDIwMDgtMjAwOQorIworIyBOYXpld25pY3R3byBpIHNww7Nqbm/Fm8SHIHTFgnVtYWN6ZcWEIHByb2dyYW3Ds3cgYXB0LCBhcHRpdHVkZSwgc3luYXB0aWMgaSBpbm55Y2g6CisjIGh0dHA6Ly93aWtpLmRlYmlhbi5vcmcvUG9saXNoTDEwTi9QYWNrYWdlSW5zdGFsbGVycworbXNnaWQgIiIKK21zZ3N0ciAiIgorIlByb2plY3QtSWQtVmVyc2lvbjogZHBrZyAxLjE1LjRcbiIKKyJSZXBvcnQtTXNnaWQtQnVncy1UbzogZGViaWFuLWRwa2dAbGlzdHMuZGViaWFuLm9yZ1xuIgorIlBPVC1DcmVhdGlvbi1EYXRlOiAyMDExLTEwLTE0IDA3OjExKzAyMDBcbiIKKyJQTy1SZXZpc2lvbi1EYXRlOiAyMDA5LTA5LTI3IDAyOjQxKzAxMDBcbiIKKyJMYXN0LVRyYW5zbGF0b3I6IFdpa3RvciBXYW5kYWNob3dpY3ogPHNpcnllc0BnbWFpbC5jb20+XG4iCisiTGFuZ3VhZ2UtVGVhbTogUG9saXNoIDxkZWJpYW4tbDEwbi1wb2xpc2hAbGlzdHMuZGViaWFuLm9yZz5cbiIKKyJMYW5ndWFnZTogcGxcbiIKKyJNSU1FLVZlcnNpb246IDEuMFxuIgorIkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD1VVEYtOFxuIgorIkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXRcbiIKKyJQbHVyYWwtRm9ybXM6IG5wbHVyYWxzPTM7IHBsdXJhbD1uPT0xID8gMCA6IG4lMTA+PTIgJiYgbiUxMDw9NCAmJiAobiUxMDA8MTAgIgorInx8IG4lMTAwPj0yMCkgPyAxIDogMjtcbiIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxMjUKK21zZ2lkICJTZWFyY2ggZm9yID8gIgorbXNnc3RyICJTenVrYWogPyAiCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MTQ3Cittc2dpZCAiRXJyb3I6ICIKK21zZ3N0ciAiQsWCxIVkOiAiCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MTc4Cittc2dpZCAiSGVscDogIgorbXNnc3RyICJQb21vYzogIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE4NAorbXNnaWQgIlByZXNzID8gZm9yIGhlbHAgbWVudSwgLiBmb3IgbmV4dCB0b3BpYywgPHNwYWNlPiB0byBleGl0IGhlbHAuIgorbXNnc3RyICIiCisiTmFjacWbbmlqID8sIGJ5IHNrb3J6eXN0YcSHIHogcG9tb2N5LCAuIChrcm9wa8SZKSwgYnkgcHJ6ZWrFm8SHIGRvIG5hc3TEmXBuZWdvXG4iCisidGVtYXR1LCA8c3BhY2rEmT4sIGJ5IG9wdcWbY2nEhyBwb21vYy4iCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MTkxCittc2dpZCAiSGVscCBpbmZvcm1hdGlvbiBpcyBhdmFpbGFibGUgdW5kZXIgdGhlIGZvbGxvd2luZyB0b3BpY3M6IgorbXNnc3RyICJJbmZvcm1hY2plIHBvbW9jeSBzxIUgZG9zdMSZcG5lIHBvZCBuYXN0xJlwdWrEhWN5bWkgdGVtYXRhbWk6IgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE5OQorbXNnaWQgIiIKKyJQcmVzcyBhIGtleSBmcm9tIHRoZSBsaXN0IGFib3ZlLCA8c3BhY2U+IG9yIGBxJyB0byBleGl0IGhlbHAsXG4iCisiICBvciBgLicgKGZ1bGwgc3RvcCkgdG8gcmVhZCBlYWNoIGhlbHAgcGFnZSBpbiB0dXJuLiAiCittc2dzdHIgIiIKKyJXeWJpZXJ6IGtsYXdpc3ogeiBwb3d5xbxzemVqIGxpc3R5LCA8c3BhY2rEmT4gbHViIFwicVwiLCBieSBvcHXFm2NpxIcgXG4iCisicG9tb2MsIGx1YiBcIi5cIiAoa3JvcGvEmSksIGJ5IHByemVnbMSFZGHEhyBwbyBrb2xlaSBzdHJvbnkgcG9tb2N5LiAiCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MjA1Cittc2dpZCAiZXJyb3IgcmVhZGluZyBrZXlib2FyZCBpbiBoZWxwIgorbXNnc3RyICJixYLEhWQgb2Rjenl0dSBrbGF3aWF0dXJ5IHcgcG9tb2N5IgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjU3Cittc2dpZCAiaW9jdGwoVElPQ0dXSU5TWikgZmFpbGVkIgorbXNnc3RyICJuaWUgcG93aW9kxYJvIHNpxJkgd3l3b8WCYW5pZSBpb2N0bChUSU9DR1dJTlNaKSIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo2MAorbXNnaWQgImRvdXBkYXRlIGluIFNJR1dJTkNIIGhhbmRsZXIgZmFpbGVkIgorbXNnc3RyICJuaWUgbW/FvG5hIHVha3R1YWxuacSHIHByb2NlZHVyeSBvYnPFgnVnaSBTSUdXSU5DSCIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo2NworbXNnaWQgImZhaWxlZCB0byByZXN0b3JlIG9sZCBTSUdXSU5DSCBzaWdhY3QiCittc2dzdHIgIm5pZSBtb8W8bmEgb2R0d29yennEhyBwb3ByemVkbmllZ28gc3lnbmHFgnUgU0lHV0lOQ0giCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6NjkKK21zZ2lkICJmYWlsZWQgdG8gcmVzdG9yZSBvbGQgc2lnbmFsIG1hc2siCittc2dzdHIgIm5pZSBtb8W8bmEgb2R0d29yennEhyBwb3ByemVkbmllaiBtYXNraSBzeWduYcWCdSIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo3OQorbXNnaWQgImZhaWxlZCB0byBnZXQgb2xkIHNpZ25hbCBtYXNrIgorbXNnc3RyICJuaWUgbW/FvG5hIHBvYnJhxIcgcG9wcnplZG5pZWogbWFza2kgc3lnbmHFgnUiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6ODAKK21zZ2lkICJmYWlsZWQgdG8gZ2V0IG9sZCBTSUdXSU5DSCBzaWdhY3QiCittc2dzdHIgIm5pZSBtb8W8bmEgcG9icmHEhyBwb3ByemVkbmllZ28gc3lnbmHFgnUgU0lHV0lOQ0giCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6ODQKK21zZ2lkICJmYWlsZWQgdG8gYmxvY2sgU0lHV0lOQ0giCittc2dzdHIgIm5pZSBtb8W8bmEgemFibG9rb3dhxIcgU0lHV0lOQ0giCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6ODkKK21zZ2lkICJmYWlsZWQgdG8gc2V0IG5ldyBTSUdXSU5DSCBzaWdhY3QiCittc2dzdHIgIm5pZSBtb8W8bmEgdXN0YXdpxIcgbm93ZWdvIHN5Z25hxYJ1IFNJR1dJTkNIIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjEyNgorbXNnaWQgImZhaWxlZCB0byBhbGxvY2F0ZSBjb2xvdXIgcGFpciIKK21zZ3N0ciAibmllIG1vxbxuYSB6YXJlemVyd293YcSHIHBhciBrb2xvcnUiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTY3Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSB0aXRsZSB3aW5kb3ciCittc2dzdHIgIm5pZSBtb8W8bmEgdXR3b3J6ecSHIG9rbmEgdHl0dcWCb3dlZ28iCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTcxCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSB3aGF0aW5mbyB3aW5kb3ciCittc2dzdHIgIm5pZSBtb8W8bmEgdXR3b3J6ecSHIG9rbmEgaW5mb3JtYWN5am5lZ28iCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTc1Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBiYXNlbGlzdCBwYWQiCittc2dzdHIgIm5pZSBtb8W8bmEgdXR3b3J6ecSHIHBvbGEgbGlzdHkiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTc4Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBoZWFkaW5nIHBhZCIKK21zZ3N0ciAibmllIG1vxbxuYSB1dHdvcnp5xIcgcG9sYSBuYWfFgsOzd2thIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE4MgorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgdGhpc3N0YXRlIHBhZCIKK21zZ3N0ciAibmllIG1vxbxuYSB1dHdvcnp5xIcgcG9sYSBzdGFudSIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxODYKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGluZm8gcGFkIgorbXNnc3RyICJuaWUgbW/FvG5hIHV0d29yennEhyBwb2xhIGluZm9ybWFjeWpuZWdvIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE5MQorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgcXVlcnkgd2luZG93IgorbXNnc3RyICJuaWUgbW/FvG5hIHV0d29yennEhyBva25hIHphcHl0YW5pYSIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoyNTUKK21zZ2lkICJLZXliaW5kaW5ncyIKK21zZ3N0ciAiU2tvamFyemVuaWEga2xhd2lzenkiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MzAzCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgLS0gJWQlJSwgcHJlc3MgIgorbXNnc3RyICIgIC0tICVkJSUsIHdjacWbbmlqICIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzozMDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgZm9yIG1vcmUiCittc2dzdHIgIiVzIC0gd2nEmWNlaiIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzozMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgdG8gZ28gYmFjayIKK21zZ3N0ciAiJXMgLSBwb3dyw7N0IgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjc4Cittc2dpZCAiW25vdCBib3VuZF0iCittc2dzdHIgIltuaWUgc2tvamFyem9uZV0iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiW3VuazogJWRdIgorbXNnc3RyICJbbmllem5hbmU6ICVkXSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxMzkKK21zZ2lkICJTY3JvbGwgb253YXJkcyB0aHJvdWdoIGhlbHAvaW5mb3JtYXRpb24iCittc2dzdHIgIlByemV3aW5pxJljaWUgcG9tb2N5L2luZm9ybWFjamkgdyBkw7PFgiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDAKK21zZ2lkICJTY3JvbGwgYmFja3dhcmRzIHRocm91Z2ggaGVscC9pbmZvcm1hdGlvbiIKK21zZ3N0ciAiUHJ6ZXdpbmnEmWNpZSBwb21vY3kvaW5mb3JtYWNqaSB3IGfDs3LEmSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDEKK21zZ2lkICJNb3ZlIHVwIgorbXNnc3RyICJXIGfDs3LEmSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDIKK21zZ2lkICJNb3ZlIGRvd24iCittc2dzdHIgIlcgZMOzxYIiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQzCittc2dpZCAiR28gdG8gdG9wIG9mIGxpc3QiCittc2dzdHIgIlBvY3rEhXRlayBsaXN0eSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDQKK21zZ2lkICJHbyB0byBlbmQgb2YgbGlzdCIKK21zZ3N0ciAiS29uaWVjIGxpc3R5IgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0NQorbXNnaWQgIlJlcXVlc3QgaGVscCAoY3ljbGUgdGhyb3VnaCBoZWxwIHNjcmVlbnMpIgorbXNnc3RyICJXeXdvxYJhbmllIHBvbW9jeSAocHJ6ZcWCxIVjemFuaWUgZWtyYW7Ds3cgcG9tb2N5KSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDYKK21zZ2lkICJDeWNsZSB0aHJvdWdoIGluZm9ybWF0aW9uIGRpc3BsYXlzIgorbXNnc3RyICJQcnplxYLEhWN6YW5pZSBla3JhbsOzdyB6IGluZm9ybWFjamFtaSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDcKK21zZ2lkICJSZWRyYXcgZGlzcGxheSIKK21zZ3N0ciAiT2TFm3dpZcW8ZW5pZSBla3JhbnUiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ4Cittc2dpZCAiU2Nyb2xsIG9ud2FyZHMgdGhyb3VnaCBsaXN0IGJ5IDEgbGluZSIKK21zZ3N0ciAiUHJ6ZXdpbmnEmWNpZSBsaXN0eSBvIGplZG7EhSBsaW5pxJkgdyBkw7PFgiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDkKK21zZ2lkICJTY3JvbGwgYmFja3dhcmRzIHRocm91Z2ggbGlzdCBieSAxIGxpbmUiCittc2dzdHIgIlByemV3aW5pxJljaWUgbGlzdHkgbyBqZWRuxIUgbGluacSZIHcgZ8OzcsSZIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1MAorbXNnaWQgIlNjcm9sbCBvbndhcmRzIHRocm91Z2ggaGVscC9pbmZvcm1hdGlvbiBieSAxIGxpbmUiCittc2dzdHIgIlByemV3aW5pxJljaWUgZWtyYW51IHBvbW9jeS9pbmZvcm1hY2ppIG8gamVkbsSFIGxpbmnEmSB3IGTDs8WCIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1MQorbXNnaWQgIlNjcm9sbCBiYWNrd2FyZHMgdGhyb3VnaCBoZWxwL2luZm9ybWF0aW9uIGJ5IDEgbGluZSIKK21zZ3N0ciAiUHJ6ZXdpbmnEmWNpZSBla3JhbnUgcG9tb2N5L2luZm9ybWFjamkgbyBqZWRuxIUgbGluacSZIHcgZ8OzcsSZIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1MgorbXNnaWQgIlNjcm9sbCBvbndhcmRzIHRocm91Z2ggbGlzdCIKK21zZ3N0ciAiUHJ6ZXdpbmnEmWNpZSBsaXN0eSB3IGTDs8WCIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1MworbXNnaWQgIlNjcm9sbCBiYWNrd2FyZHMgdGhyb3VnaCBsaXN0IgorbXNnc3RyICJQcnpld2luacSZY2llIGxpc3R5IHcgZ8OzcsSZIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1NgorbXNnaWQgIk1hcmsgcGFja2FnZShzKSBmb3IgaW5zdGFsbGF0aW9uIgorbXNnc3RyICJaYXpuYWN6ZW5pZSBwYWtpZXR1IGRvIGluc3RhbGFjamkiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTU3Cittc2dpZCAiTWFyayBwYWNrYWdlKHMpIGZvciBkZWluc3RhbGxhdGlvbiIKK21zZ3N0ciAiWmF6bmFjemVuaWUgcGFraWV0dSBkbyB1c3VuacSZY2lhIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1OAorbXNnaWQgIk1hcmsgcGFja2FnZShzKSBmb3IgZGVpbnN0YWxsIGFuZCBwdXJnZSIKK21zZ3N0ciAiWmF6bmFjemVuaWUgcGFraWV0dSBkbyB3eWN6eXN6Y3plbmlhIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1OQorbXNnaWQgIk1ha2UgaGlnaGxpZ2h0IG1vcmUgc3BlY2lmaWMiCittc2dzdHIgIlfFgsSFY3plbmllIHN6Y3plZ8OzxYJvd3ljaCBpbmZvcm1hY2ppIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2MAorbXNnaWQgIk1ha2UgaGlnaGxpZ2h0IGxlc3Mgc3BlY2lmaWMiCittc2dzdHIgIld5xYLEhWN6ZW5pZSBzemN6ZWfDs8WCb3d5Y2ggaW5mb3JtYWNqaSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjEKK21zZ2lkICJTZWFyY2ggZm9yIGEgcGFja2FnZSB3aG9zZSBuYW1lIGNvbnRhaW5zIGEgc3RyaW5nIgorbXNnc3RyICJXeXN6dWtpd2FuaWUgcGFraWV0dSBvIG5hendpZSB6YXdpZXJhasSFY2VqIGNpxIVnIHpuYWvDs3ciCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTYyCittc2dpZCAiUmVwZWF0IGxhc3Qgc2VhcmNoLiIKK21zZ3N0ciAiUG93dMOzcnplbmllIG9zdGF0bmllZ28gd3lzenVraXdhbmlhLiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjMKK21zZ2lkICJTd2FwIHNvcnQgb3JkZXIgcHJpb3JpdHkvc2VjdGlvbiIKK21zZ3N0ciAiWm1pYW5hIHNwb3NvYnUgdXBvcnrEhWRrb3dhbmlhIHBha2lldMOzdyIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjQKK21zZ2lkICJRdWl0LCBjb25maXJtaW5nLCBhbmQgY2hlY2tpbmcgZGVwZW5kZW5jaWVzIgorbXNnc3RyICJXeWrFm2NpZSB6IHBvdHdpZXJkemVuaWVtIGkgc3ByYXdkemVuaWVtIHphbGXFvG5vxZtjaSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjUKK21zZ2lkICJRdWl0LCBjb25maXJtaW5nIHdpdGhvdXQgY2hlY2siCittc2dzdHIgIld5asWbY2llIHogcG90d2llZHplbmllbSBiZXogc3ByYXdkemVuaWEiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY2Cittc2dpZCAiUXVpdCwgcmVqZWN0aW5nIGNvbmZsaWN0L2RlcGVuZGVuY3kgc3VnZ2VzdGlvbnMiCittc2dzdHIgIld5asWbY2llIHogb2RyenVjZW5pZW0ga29uZmxpa3TDs3cvc3VnZXN0aWkiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY3Cittc2dpZCAiQWJvcnQgLSBxdWl0IHdpdGhvdXQgbWFraW5nIGNoYW5nZXMiCittc2dzdHIgIld5Y29mYW5pZSBzacSZIGJleiBkb2tvbmFuaWEgem1pYW4iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY4Cittc2dpZCAiUmV2ZXJ0IHRvIG9sZCBzdGF0ZSBmb3IgYWxsIHBhY2thZ2VzIgorbXNnc3RyICJQcnp5d3LDs2NlbmllIHBvcHJ6ZWRuaWVnbyBzdGFudSBwYWtpZXTDs3ciCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY5Cittc2dpZCAiUmV2ZXJ0IHRvIHN1Z2dlc3RlZCBzdGF0ZSBmb3IgYWxsIHBhY2thZ2VzIgorbXNnc3RyICJQcnp5d3LDs2NlbmllIHN1Z2Vyb3dhbmVnbyBzdGFudSBwYWtpZXTDs3ciCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTcwCittc2dpZCAiUmV2ZXJ0IHRvIGRpcmVjdGx5IHJlcXVlc3RlZCBzdGF0ZSBmb3IgYWxsIHBhY2thZ2VzIgorbXNnc3RyICJQcnp5d3LDs2NlbmllIMW8xIVkYW5lZ28gc3RhbnUgcGFraWV0w7N3IgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE3MQorbXNnaWQgIlJldmVydCB0byBjdXJyZW50bHkgaW5zdGFsbGVkIHN0YXRlIGZvciBhbGwgcGFja2FnZXMiCittc2dzdHIgIlByenl3csOzY2VuaWUgb2JlY25pZSB6YWluc3RhbG93YW5lZ28gc3RhbnUgd3N6eXN0a2ljaCBwYWtpZXTDs3ciCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTc0Cittc2dpZCAiU2VsZWN0IGN1cnJlbnRseS1oaWdobGlnaHRlZCBhY2Nlc3MgbWV0aG9kIgorbXNnc3RyICJXeWLDs3IgbWV0b2R5IGRvc3TEmXB1IgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE3NQorbXNnaWQgIlF1aXQgd2l0aG91dCBjaGFuZ2luZyBzZWxlY3RlZCBhY2Nlc3MgbWV0aG9kIgorbXNnc3RyICJXeWrFm2NpZSBiZXogem1pYW55IG1ldG9keSBkb3N0xJlwdSIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoyOQorbXNnaWQgIktleXN0cm9rZXMiCittc2dzdHIgIlNwaXMga2xhd2lzenkiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MjkKK21zZ2lkICIiCisiTW90aW9uIGtleXM6IE5leHQvUHJldmlvdXMsIFRvcC9FbmQsIFVwL0Rvd24sIEJhY2t3YXJkcy9Gb3J3YXJkczpcbiIKKyIgIGosIERvd24tYXJyb3cgICAgICAgICBrLCBVcC1hcnJvdyAgICAgICAgICAgICBtb3ZlIGhpZ2hsaWdodFxuIgorIiAgTiwgUGFnZS1kb3duLCBTcGFjZSAgIFAsIFBhZ2UtdXAsIEJhY2tzcGFjZSAgIHNjcm9sbCBsaXN0IGJ5IDEgcGFnZVxuIgorIiAgXm4gICAgICAgICAgICAgICAgICAgIF5wICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBsaXN0IGJ5IDEgbGluZVxuIgorIiAgdCwgSG9tZSAgICAgICAgICAgICAgIGUsIEVuZCAgICAgICAgICAgICAgICAgIGp1bXAgdG8gdG9wL2VuZCBvZiBsaXN0XG4iCisiICB1ICAgICAgICAgICAgICAgICAgICAgZCAgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGluZm8gYnkgMSBwYWdlXG4iCisiICBedSAgICAgICAgICAgICAgICAgICAgXmQgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGluZm8gYnkgMSBsaW5lXG4iCisiICBCLCBMZWZ0LWFycm93ICAgICAgICAgRiwgUmlnaHQtYXJyb3cgICAgICAgICAgcGFuIGRpc3BsYXkgYnkgMS8zIHNjcmVlblxuIgorIiAgXmIgICAgICAgICAgICAgICAgICAgIF5mICAgICAgICAgICAgICAgICAgICAgIHBhbiBkaXNwbGF5IGJ5IDEgY2hhcmFjdGVyXG4iCisiXG4iCisiTWFyayBwYWNrYWdlcyBmb3IgbGF0ZXIgcHJvY2Vzc2luZzpcbiIKKyIgKywgSW5zZXJ0ICBpbnN0YWxsIG9yIHVwZ3JhZGUgICAgICA9LCBIICBob2xkIGluIHByZXNlbnQgc3RhdGVcbiIKKyIgLSwgRGVsZXRlICByZW1vdmUgICAgICAgICAgICAgICAgICA6LCBHICB1bmhvbGQ6IHVwZ3JhZGUgb3IgbGVhdmUgIgorInVuaW5zdGFsbGVkXG4iCisiIF8gICAgICAgICAgcmVtb3ZlICYgcHVyZ2UgY29uZmlnXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTWlzY2VsbGFuZW91czpcbiIKKyJRdWl0LCBleGl0LCBvdmVyd3JpdGUgKG5vdGUgY2FwaXRhbHMhKTogICAgICAgPywgRjEgcmVxdWVzdCBoZWxwIChhbHNvICIKKyJIZWxwKVxuIgorIiBSZXR1cm4gIENvbmZpcm0sIHF1aXQgKGNoZWNrIGRlcGVuZGVuY2llcykgICBpLCBJICB0b2dnbGUvY3ljbGUgaW5mbyAiCisiZGlzcGxheXNcbiIKKyIgICBRICAgICBDb25maXJtLCBxdWl0IChvdmVycmlkZSBkZXAucykgICAgICAgbywgTyAgY3ljbGUgdGhyb3VnaCBzb3J0ICIKKyJvcHRpb25zXG4iCisiIFgsIEVzYyAgZVhpdCwgYWJhbmRvbmluZyBhbnkgY2hhbmdlcyBtYWRlICAgIHYsIFYgIGNoYW5nZSBzdGF0dXMgZGlzcGxheSAiCisib3B0c1xuIgorIiAgIFIgICAgIFJldmVydCB0byBzdGF0ZSBiZWZvcmUgdGhpcyBsaXN0ICAgICAgXmwgICByZWRyYXcgZGlzcGxheVxuIgorIiAgIFUgICAgIHNldCBhbGwgdG8gc1VnZ2VzdGVkIHN0YXRlICAgICAgICAgICAgIC8gICBzZWFyY2ggKFJldHVybiB0byAiCisiY2FuY2VsKVxuIgorIiAgIEQgICAgIHNldCBhbGwgdG8gRGlyZWN0bHkgcmVxdWVzdGVkIHN0YXRlICBuLCBcXCAgcmVwZWF0IGxhc3Qgc2VhcmNoXG4iCittc2dzdHIgIiIKKyJLbGF3aXN6ZSBydWNodTogTmFzdMSZcG55L1BvcHJ6ZWRuaSwgR8OzcmEvRMOzxYIsIERvIGfDs3J5L1cgZMOzxYI6XG4iCisiICBqLCBTdHJ6YcWCa2Etdy1kw7PFgiwgICAgaywgU3RyemHFgmthLWRvLWfDs3J5LCAgcnVjaCBrdXJzb3JhXG4iCisiICBOLCBQYWdlLWRvd24sIFNwYWNqYSAgUCwgUGFnZS11cCwgQmFja3NwYWNlIHByemV3aW5pxJljaWUgbGlzdHkgbyAxIGVrcmFuXG4iCisiICBebiAgICAgICAgICAgICAgICAgICAgXnAgICAgICAgICAgICAgICAgICAgIHByemV3aW5pxJljaWUgbGlzdHkgbyAxIGxpbmnEmVxuIgorIiAgdCwgSG9tZSAgICAgICAgICAgICAgIGUsIEVuZCAgICAgICAgICAgICAgICBza29rIG5hIHBvY3rEhXRlay9rb25pZWMgbGlzdHlcbiIKKyIgIHUgICAgICAgICAgICAgICAgICAgICBkICAgICAgICAgICAgICAgICAgICAgcHJ6ZXdpbmnEmWNpZSBpbmZvIG8gMSBla3JhblxuIgorIiAgXnUgICAgICAgICAgICAgICAgICAgIF5kICAgICAgICAgICAgICAgICAgICBwcnpld2luacSZY2llIGluZm8gbyAxIGxpbmnEmVxuIgorIiAgQiwgU3RyemHFgmthLXctbGV3byAgICBGLCBTdHJ6YcWCa2Etdy1wcmF3byAgIHByemVzdW5pxJljaWUgdyBib2sgMS8zIGVrcmFudVxuIgorIiAgXmIgICAgICAgICAgICAgICAgICAgIF5mICAgICAgICAgICAgICAgICAgICBwcnplc3VuacSZY2llIHcgYm9rIG8gMSB6bmFrXG4iCisiXG4iCisiWmF6bmFjemVuaWUgcGFraWV0w7N3IGRvIHDDs8W6bmllanN6ZWdvIHByemV0d2FyemFuaWE6XG4iCisiICssIEluc2VydCAgaW5zdGFsYWNqYSBsdWIgYWt0dWFsaXphY2phICAgPSwgSCAgd3N0cnp5bWFuaWVcbiIKKyIgLSwgRGVsZXRlICB1c3VuacSZY2llICAgICAgICAgICAgICAgICAgICAgOiwgRyAgcG9ub3dpZW5pZSBwcnpldHdhcnphbmlhXG4iCisiIF8gICAgICAgICAgdXN1bmnEmWNpZSBpIHd5Y3p5c3pjemVuaWUga29uZmlndXJhY2ppXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUG96b3N0YcWCZSBrbGF3aXN6ZTpcbiIKKyJaYWtvxYRjemVuaWUgd3lib3J1IHBha2lldMOzdzogICAgICAgICAgICAgICAgICAgPywgRjEgcHJ6eXdvxYJhbmllIHBvbW9jeVxuIgorIiBSZXR1cm4gIFBvdHdpZWTFuiwgd3lqZMW6IChzcHJhd2TFuiB6YWxlxbxub8WbY2kpICBpLCBJICBwcnplxYLEhWN6L3d5xYLEhWN6ICIKKyJpbmZvcm1hY2plXG4iCisiICAgUSAgICAgUG90d2llZMW6LCB3eWpkxbogKHppZ25vcnVqIHphbGXFvG5vxZtjaSkgbywgTyAgem1pYW5hIG1ldG9keSAiCisic29ydG93YW5pYVxuIgorIiBYLCBFc2MgIFd5amTFuiwgYW51bHVqIHdzemVsa2llIHptaWFueSAgICAgICAgIHYsIFYgIHptaWFuYSBzcG9zb2J1ICIKKyJ3ecWbd2lldGxhbmlhXG4iCisiICAgUiAgICAgUHJ6eXdyw7NjZW5pZSBzdGFudSBwcnplZCB3eWJvcmVtICAgICAgXmwgICAgb2TFm3dpZcW8ZW5pZSBla3JhbnVcbiIKKyIgICBVICAgICBXeWJpZXJ6IHN1Z2Vyb3dhbmUgcGFraWV0eSAgICAgICAgICAgICAvICAgIHN6dWthaiAoUmV0dXJuIC0gIgorImFudWx1ailcbiIKKyIgICBEICAgICBXeWJpZXJ6IG5pZXpixJlkbmUgcGFraWV0eSAgICAgICAgICAgICBuLCBcXCAgIHBvd3TDs3J6IG9zdGF0bmllICIKKyJzenVrYW5pZVxuIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjU1Cittc2dpZCAiSW50cm9kdWN0aW9uIHRvIHBhY2thZ2Ugc2VsZWN0aW9ucyIKK21zZ3N0ciAiV3Byb3dhZHplbmllIGRvIHd5Ym9ydSBwYWtpZXTDs3ciCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6NTUKK21zZ2lkICIiCisiV2VsY29tZSB0byBkc2VsZWN0J3MgbWFpbiBwYWNrYWdlIGxpc3RpbmcuXG4iCisiXG4iCisiWW91IHdpbGwgYmUgcHJlc2VudGVkIHdpdGggYSBsaXN0IG9mIHBhY2thZ2VzIHdoaWNoIGFyZSBpbnN0YWxsZWQgb3IgIgorImF2YWlsYWJsZVxuIgorImZvciBpbnN0YWxsYXRpb24uICBZb3UgY2FuIG5hdmlnYXRlIGFyb3VuZCB0aGUgbGlzdCB1c2luZyB0aGUgY3Vyc29yIGtleXMsXG4iCisibWFyayBwYWNrYWdlcyBmb3IgaW5zdGFsbGF0aW9uICh1c2luZyBgKycpIG9yIGRlaW5zdGFsbGF0aW9uICh1c2luZyBgLScpLlxuIgorIlBhY2thZ2VzIGNhbiBiZSBtYXJrZWQgZWl0aGVyIHNpbmdseSBvciBpbiBncm91cHM7IGluaXRpYWxseSB5b3Ugd2lsbCBzZWUgIgorInRoYXRcbiIKKyJ0aGUgbGluZSBgQWxsIHBhY2thZ2VzJyBpcyBzZWxlY3RlZC4gIGArJywgYC0nIGFuZCBzbyBvbiB3aWxsIGFmZmVjdCBhbGwgIgorInRoZVxuIgorInBhY2thZ2VzIGRlc2NyaWJlZCBieSB0aGUgaGlnaGxpZ2h0ZWQgbGluZS5cbiIKKyJcbiIKKyJTb21lIG9mIHlvdXIgY2hvaWNlcyB3aWxsIGNhdXNlIGNvbmZsaWN0cyBvciBkZXBlbmRlbmN5IHByb2JsZW1zOyB5b3Ugd2lsbCAiCisiYmVcbiIKKyJnaXZlbiBhIHN1Yi1saXN0IG9mIHRoZSByZWxldmFudCBwYWNrYWdlcywgc28gdGhhdCB5b3UgY2FuIHNvbHZlIHRoZSAiCisicHJvYmxlbXMuXG4iCisiXG4iCisiWW91IHNob3VsZCByZWFkIHRoZSBsaXN0IG9mIGtleXMgYW5kIHRoZSBleHBsYW5hdGlvbnMgb2YgdGhlIGRpc3BsYXkuXG4iCisiTXVjaCBvbi1saW5lIGhlbHAgaXMgYXZhaWxhYmxlLCBwbGVhc2UgbWFrZSB1c2Ugb2YgaXQgLSBwcmVzcyBgPycgYXRcbiIKKyJhbnkgdGltZSBmb3IgaGVscC5cbiIKKyJcbiIKKyJXaGVuIHlvdSBoYXZlIGZpbmlzaGVkIHNlbGVjdGluZyBwYWNrYWdlcywgcHJlc3MgPGVudGVyPiB0byBjb25maXJtICIKKyJjaGFuZ2VzLFxuIgorIm9yIGBYJyB0byBxdWl0IHdpdGhvdXQgc2F2aW5nIGNoYW5nZXMuIEEgZmluYWwgY2hlY2sgb24gY29uZmxpY3RzIGFuZFxuIgorImRlcGVuZGVuY2llcyB3aWxsIGJlIGRvbmUgLSBoZXJlIHRvbyB5b3UgbWF5IHNlZSBhIHN1Ymxpc3QuXG4iCisiXG4iCisiUHJlc3MgPHNwYWNlPiB0byBsZWF2ZSBoZWxwIGFuZCBlbnRlciB0aGUgbGlzdCBub3cuXG4iCittc2dzdHIgIiIKKyJXaXRhaiB3IGfFgsOzd255bSBla3JhbmllIHd5Ym9ydSBwYWtpZXTDs3cgcHJvZ3JhbXUgZHNlbGVjdC5cbiIKKyJcbiIKKyJVa2HFvGUgc2nEmSBsaXN0YSBwYWtpZXTDs3csIGt0w7NyZSBzxIUganXFvCB6YWluc3RhbG93YW5lIGx1YiBtb8W8bmEgamUgZG9waWVyb1xuIgorInphaW5zdGFsb3dhxIcuIFBvIGxpxZtjaWUgbW/FvG5hIHNpxJkgcG9ydXN6YcSHIGtsYXdpc3phbWkga3Vyc29yYS4gS2xhd2lzemVtXG4iCisiXCIrXCIgbW/FvG5hIHphem5hY3p5xIcgcGFraWV0IGRvIGluc3RhbGFjamksIGtsYXdpc3plbSBcIi1cIiBkbyB1c3VuacSZY2lhLlxuIgorIlxuIgorIlBha2lldHkgbW9nxIUgYnnEhyB6YXpuYWN6YW5lIHBvamVkeW5jem8gbHViIGdydXBhbWkuIFBvY3rEhXRrb3dvIGt1cnNvciAiCisiem5hamR1amVcbiIKKyJzacSZIG5hIHBvenljamkgXCJXc3p5c3RraWUgcGFraWV0eVwiLiBLbGF3aXN6ZSBcIitcIiwgXCItXCIgcG93b2R1asSFIHptaWFuxJkgIgorInN0YW51XG4iCisiZGxhIHdzenlzdGtpY2ggcGFraWV0w7N3IHogZGFuZWogZ3J1cHkuXG4iCisiXG4iCisiQ3phc2VtIHd5YsOzciBwYWtpZXR1IHBvd29kdWplIGtvbmZsaWt0IGx1YiBwcm9ibGVtIHphbGXFvG5vxZtjaTsgcG9qYXdpIHNpxJkgIgorInd0ZWR5XG4iCisibGlzdGEgcGFraWV0w7N3LCBrdMOzcnljaCBkb3R5Y3p5IGRhbnkgcHJvYmxlbSwga3TDs3J5IG5hbGXFvHkgcm96d2nEhXphxIcuXG4iCisiXG4iCisiWmFsZWNhbmUgamVzdCB6YXpuYWpvbWllbmllIHNpxJkgeiBvcGlzZW0gbGlzdHkga2xhd2lzenkgb3JheiBla3JhbnUuXG4iCisiV2llbGUgcG9tb2N5IG1vxbxuYSB1enlza2HEhyBuYWNpc2thasSFYyBcIj9cIiB3IGthxbxkeW0gbW9tZW5jaWUuXG4iCisiXG4iCisiSmXFvGVsaSB3eWLDs3IgcGFraWV0w7N3IHpvc3RhxYIgZG9rb25hbnksIG5hbGXFvHkgd2Npc27EhcSHIDxlbnRlcj4gZGxhXG4iCisiIHBvdHdpZXJkemVuaWEgem1pYW4gbHViIFwiWFwiLCBieSB3eWrFm8SHIGJleiBpY2ggemFwaXNhbmlhLiBab3N0YW5pZSAiCisiZG9rb25hbmVcbiIKKyIgb3N0YXRlY3puZSBzcHJhd2R6ZW5pZSBrb25mbGlrdMOzdyBpIHphbGXFvG5vxZtjaSAtIHR1IHRlxbwgbW/FvGUgcG9qYXdpxIcgc2nEmVxuIgorIiBsaXN0YSBwYWtpZXTDs3cuXG4iCisiXG4iCisiUHJvc3rEmSB3Y2lzbsSFxIcgPHNwYWNqxJk+LCBhYnkgb3B1xZtjacSHIGVrcmFuIHBvbW9jeSBpIHByemVqxZvEhyBkbyBsaXN0eSAiCisicGFraWV0w7N3LlxuIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjgwCittc2dpZCAiSW50cm9kdWN0aW9uIHRvIHJlYWQtb25seSBwYWNrYWdlIGxpc3QgYnJvd3NlciIKK21zZ3N0ciAiV3Byb3dhZHplbmllIGRvIHByemVnbMSFZGFya2kgbGlzdHkgcGFraWV0w7N3ICh0eWxrbyBkbyBvZGN6eXR1KSIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo4MAorbXNnaWQgIiIKKyJXZWxjb21lIHRvIGRzZWxlY3QncyBtYWluIHBhY2thZ2UgbGlzdGluZy5cbiIKKyJcbiIKKyJZb3Ugd2lsbCBiZSBwcmVzZW50ZWQgd2l0aCBhIGxpc3Qgb2YgcGFja2FnZXMgd2hpY2ggYXJlIGluc3RhbGxlZCBvciAiCisiYXZhaWxhYmxlXG4iCisiZm9yIGluc3RhbGxhdGlvbi4gIFNpbmNlIHlvdSBkbyBub3QgaGF2ZSB0aGUgcHJpdmlsZWdlIG5lY2Vzc2FyeSB0byB1cGRhdGVcbiIKKyJwYWNrYWdlIHN0YXRlcywgeW91IGFyZSBpbiBhIHJlYWQtb25seSBtb2RlLiAgWW91IGNhbiBuYXZpZ2F0ZSBhcm91bmQgdGhlXG4iCisibGlzdCB1c2luZyB0aGUgY3Vyc29yIGtleXMgKHBsZWFzZSBzZWUgdGhlIGBLZXlzdHJva2VzJyBoZWxwIHNjcmVlbiksICIKKyJvYnNlcnZlXG4iCisidGhlIHN0YXR1cyBvZiB0aGUgcGFja2FnZXMgYW5kIHJlYWQgaW5mb3JtYXRpb24gYWJvdXQgdGhlbS5cbiIKKyJcbiIKKyJZb3Ugc2hvdWxkIHJlYWQgdGhlIGxpc3Qgb2Yga2V5cyBhbmQgdGhlIGV4cGxhbmF0aW9ucyBvZiB0aGUgZGlzcGxheS5cbiIKKyJNdWNoIG9uLWxpbmUgaGVscCBpcyBhdmFpbGFibGUsIHBsZWFzZSBtYWtlIHVzZSBvZiBpdCAtIHByZXNzIGA/JyBhdFxuIgorImFueSB0aW1lIGZvciBoZWxwLlxuIgorIlxuIgorIldoZW4geW91IGhhdmUgZmluaXNoZWQgYnJvd3NpbmcsIHByZXNzIGBRJyBvciA8ZW50ZXI+IHRvIHF1aXQuXG4iCisiXG4iCisiUHJlc3MgPHNwYWNlPiB0byBsZWF2ZSBoZWxwIGFuZCBlbnRlciB0aGUgbGlzdCBub3cuXG4iCittc2dzdHIgIiIKKyJXaXRhaiB3IGfFgsOzd255bSBla3JhbmllIHd5Ym9ydSBwYWtpZXTDs3cgcHJvZ3JhbXUgZHNlbGVjdC5cbiIKKyJcbiIKKyJVa2HFvGUgc2nEmSBsaXN0YSBwYWtpZXTDs3csIGt0w7NyZSBzxIUganXFvCB6YWluc3RhbG93YW5lIGx1YiBtb8W8bmEgamUgZG9waWVyb1xuIgorInphaW5zdGFsb3dhxIcuIFBvbmlld2HFvCBuaWUgbWFzeiBvZHBvd2llZG5pY2ggdXByYXduaWXFhCBkbyBha3R1YWxpemFjamksXG4iCisiem5hamR1amVzeiBzacSZIHcgdHJ5YmllIHR5bGtvIGRvIG9kY3p5dHUuIFBvIHRlaiBsacWbY2llIG1vxbxuYSBzacSZXG4iCisicG9ydXN6YcSHIGtsYXdpc3phbWkga3Vyc29yYSAocHJvc3rEmSBwcnplY3p5dGHEhyBla3JhbiBwb21vY3kgeiBvcGlzZW1cbiIKKyJrbGF3aXN6eSksIG9ic2Vyd293YcSHIHN0YW4gcGFraWV0w7N3IG9yYXogY3p5dGHEhyBpbmZvcm1hY2plIG8gbmljaC5cbiIKKyJcbiIKKyJaYWxlY2FuZSBqZXN0IHphem5ham9taWVuaWUgc2nEmSB6IG9waXNlbSBsaXN0eSBrbGF3aXN6eSBvcmF6IGVrcmFudS5cbiIKKyJXaWVsZSBwb21vY3kgbW/FvG5hIHV6eXNrYcSHIG5hY2lza2FqxIVjIFwiP1wiIHcga2HFvGR5bSBtb21lbmNpZS5cbiIKKyJcbiIKKyJQbyB6YWtvxYRjem9ueW0gcHJ6ZWdsxIVkYW5pdSBsaXN0eSBwYWtpZXTDs3csIHByb3N6xJkgd2Npc27EhcSHIFwiUVwiIGx1YiAiCisiPGVudGVyPi5cbiIKKyJcbiIKKyJQcm9zesSZIHdjaXNuYcSHIDxzcGFjasSZPiwgYWJ5IG9wdcWbY2nEhyBla3JhbiBwb21vY3kgaSBwcnplasWbxIcgZG8gbGlzdHkgIgorInBha2lldMOzdy5cbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo5OQorbXNnaWQgIkludHJvZHVjdGlvbiB0byBjb25mbGljdC9kZXBlbmRlbmN5IHJlc29sdXRpb24gc3ViLWxpc3QiCittc2dzdHIgIldwcm93YWR6ZW5pZSBkbyBsaXN0eSBrb25mbGlrdMOzdy96YWxlxbxub8WbY2kiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6OTkKK21zZ2lkICIiCisiRGVwZW5kZW5jeS9jb25mbGljdCByZXNvbHV0aW9uIC0gaW50cm9kdWN0aW9uLlxuIgorIlxuIgorIk9uZSBvciBtb3JlIG9mIHlvdXIgY2hvaWNlcyBoYXZlIHJhaXNlZCBhIGNvbmZsaWN0IG9yIGRlcGVuZGVuY3kgcHJvYmxlbSAtXG4iCisic29tZSBwYWNrYWdlcyBzaG91bGQgb25seSBiZSBpbnN0YWxsZWQgaW4gY29uanVuY3Rpb24gd2l0aCBjZXJ0YWluIG90aGVycywgIgorImFuZFxuIgorInNvbWUgY29tYmluYXRpb25zIG9mIHBhY2thZ2VzIG1heSBub3QgYmUgaW5zdGFsbGVkIHRvZ2V0aGVyLlxuIgorIlxuIgorIllvdSB3aWxsIHNlZSBhIHN1Yi1saXN0IGNvbnRhaW5pbmcgdGhlIHBhY2thZ2VzIGludm9sdmVkLiAgVGhlIGJvdHRvbSBoYWxmICIKKyJvZlxuIgorInRoZSBkaXNwbGF5IHNob3dzIHJlbGV2YW50IGNvbmZsaWN0cyBhbmQgZGVwZW5kZW5jaWVzOyB1c2UgYGknIHRvIGN5Y2xlICIKKyJiZXR3ZWVuXG4iCisidGhhdCwgdGhlIHBhY2thZ2UgZGVzY3JpcHRpb25zIGFuZCB0aGUgaW50ZXJuYWwgY29udHJvbCBpbmZvcm1hdGlvbi5cbiIKKyJcbiIKKyJBIHNldCBvZiBgc3VnZ2VzdGVkJyBwYWNrYWdlcyBoYXMgYmVlbiBjYWxjdWxhdGVkLCBhbmQgdGhlIGluaXRpYWwgbWFya2luZ3MgIgorImluXG4iCisidGhpcyBzdWItbGlzdCBoYXZlIGJlZW4gc2V0IHRvIG1hdGNoIHRob3NlLCBzbyB5b3UgY2FuIGp1c3QgaGl0IFJldHVybiB0b1xuIgorImFjY2VwdCB0aGUgc3VnZ2VzdGlvbnMgaWYgeW91IHdpc2guICBZb3UgbWF5IGFib3J0IHRoZSBjaGFuZ2Uocykgd2hpY2ggIgorImNhdXNlZFxuIgorInRoZSBwcm9ibGVtKHMpLCBhbmQgZ28gYmFjayB0byB0aGUgbWFpbiBsaXN0LCBieSBwcmVzc2luZyBjYXBpdGFsIGBYJy5cbiIKKyJcbiIKKyJZb3UgY2FuIGFsc28gbW92ZSBhcm91bmQgdGhlIGxpc3QgYW5kIGNoYW5nZSB0aGUgbWFya2luZ3Mgc28gdGhhdCB0aGV5IGFyZSAiCisibW9yZVxuIgorImxpa2Ugd2hhdCB5b3Ugd2FudCwgYW5kIHlvdSBjYW4gYHJlamVjdCcgbXkgc3VnZ2VzdGlvbnMgYnkgdXNpbmcgdGhlICIKKyJjYXBpdGFsXG4iCisiYEQnIG9yIGBSJyBrZXlzIChzZWUgdGhlIGtleWJpbmRpbmdzIGhlbHAgc2NyZWVuKS4gIFlvdSBjYW4gdXNlIGNhcGl0YWwgYFEnICIKKyJ0b1xuIgorImZvcmNlIG1lIHRvIGFjY2VwdCB0aGUgc2l0dWF0aW9uIGN1cnJlbnRseSBkaXNwbGF5ZWQsIGluIGNhc2UgeW91IHdhbnQgdG9cbiIKKyJvdmVycmlkZSBhIHJlY29tbWVuZGF0aW9uIG9yIHRoaW5rIHRoYXQgdGhlIHByb2dyYW0gaXMgbWlzdGFrZW4uXG4iCisiXG4iCisiUHJlc3MgPHNwYWNlPiB0byBsZWF2ZSBoZWxwIGFuZCBlbnRlciB0aGUgc3ViLWxpc3Q7IHJlbWVtYmVyOiBwcmVzcyBgPycgZm9yICIKKyJoZWxwLlxuIgorbXNnc3RyICIiCisiUm96d2nEhXp5d2FuaWUgcHJvYmxlbcOzdyB6YWxlxbxub8WbY2kva29uZmxpa3TDs3cgLSB3cHJvd2FkemVuaWUuXG4iCisiXG4iCisiSmVkZW4gbHViIHdpxJljZWogd3licmFueWNoIHBha2lldMOzdyBwb3dvZHVqZSBrb25mbGlrdCBsdWIgcHJvYmxlbSB6YWxlxbxub8WbY2kgIgorIi1cbiIKKyJuaWVrdMOzcmUgcGFraWV0eSBtb2fEhSB6b3N0YcSHIHphaW5zdGFsb3dhbmUgdHlsa28gd3JheiB6IGlubnltaSBsdWIgbmllIG1vZ8SFXG4iCisiaXN0bmllxIcgdyBzeXN0ZW1pZSByYXplbSBqZWRub2N6ZcWbbmllLlxuIgorIlxuIgorIlVrYcW8ZSBzacSZIGxpc3RhIHphd2llcmFqxIVjYSBwcm9ibGVtYXR5Y3puZSBwYWtpZXR5LiBPa25vIHBvbmnFvGVqIGxpc3R5ICIKKyJwYWtpZXTDs3dcbiIKKyJwb2thenVqZSByb2R6YWoga29uZmxpa3R1IGkgemFsZcW8bm/Fm2NpOyBtb8W8bmEgdcW8ecSHIGtsYXdpc3phIFwiaVwiIGRvICIKKyJwcnplxYLEhWN6YW5pYVxuIgorInNpxJkgcG9tacSZZHp5IHTEhSBpbmZvcm1hY2rEhSBhIG9waXNlbSBwYWtpZXR1LlxuIgorIlxuIgorIlpvc3RhxYIgcHJ6eWdvdG93YW55IHplc3RhdyBwYWtpZXTDs3cgXCJzdWdlcm93YW55Y2hcIiB3cmF6IHplIHdzdMSZcG55bWlcbiIKKyJ1c3Rhd2llbmlhbWkgZG90eWN6xIVjeW1pIGljaCBpbnN0YWxhY2ppLCB3acSZYyBqZcWbbGkgc2nEmSBjaGNlLCBtb8W8bmEgamVcbiIKKyJ6YWFrY2VwdG93YcSHIG5hY2lza2FqxIVjIDxlbnRlcj4uIE1vxbxuYSBhbnVsb3dhxIcgcHJvYmxlbWF0eWN6bmUgem1pYW55XG4iCisibmFjaXNrYWrEhWMgXCJYXCIsIGEgdHltIHNhbXltIHBvd3JhY2FqxIVjIGRvIGfFgsOzd25laiBsaXN0eS5cbiIKKyJcbiIKKyJNb8W8bmEgcsOzd25pZcW8IHBvcnVzemHEhyBzacSZIHBvIGxpxZtjaWUgaSB6bWllbmlhxIcgdXN0YXdpZW5pYSB0YWssIGJ5XG4iCisiZG9zdG9zb3dhxIcgamUgZG8gc3dvaWNoIHBvdHJ6ZWIgbHViIG9kcnp1Y2nEhyBzdWdlc3RpZSBkc2VsZWN0IHXFvHl3YWrEhWNcbiIKKyJ3aWVsa2ljaCBsaXRlciBcIkRcIiBsdWIgXCJSXCIgKHpvYmFjeiBvcGlzIGtsYXdpc3p5KS4gVcW8eXdhasSFYyBrbGF3aXN6YVxuIgorIlwiUVwiLCBtb8W8bmEgem11c2nEhyBkc2VsZWN0IGRvIHphYWtjZXB0b3dhbmlhIGFrdHVhbG5pZSBwcnplZHN0YXdpb25lalxuIgorInN5dHVhY2ppLCB3IHByenlwYWRrdSBnZHkgY2hjZSBzacSZIHptaWVuacSHIHBvZGFuZSB6YWxlY2VuaWEgbHViIGdkeSB1d2HFvGFcbiIKKyJzacSZLCDFvGUgZHNlbGVjdCBwb3BlxYJuacWCIGLFgsSFZC5cbiIKKyJcbiIKKyJQcm9zesSZIHdjaXNuxIXEhyA8c3BhY2rEmT4sIGFieSBvcHXFm2NpxIcgZWtyYW4gcG9tb2N5IGkgcHJ6ZWrFm8SHIGRvIGxpc3R5ICIKKyJwYWtpZXTDs3c7IHByb3N6xJkgcGFtacSZdGHEhywgxbxlIFwiP1wiIHByenl3b8WCdWplIHBvbm93bmllIHRlbiBla3Jhbi5cbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxMjUKK21zZ2lkICJEaXNwbGF5LCBwYXJ0IDE6IHBhY2thZ2UgbGlzdGluZyBhbmQgc3RhdHVzIGNoYXJzIgorbXNnc3RyICJXeWLDs3IgcGFraWV0w7N3LCBjesSZxZvEhyAxOiBsaXN0YSBwYWtpZXTDs3cgaSBvem5hY3plbmllIHN0YW51IgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjEyNQorbXNnaWQgIiIKKyJUaGUgdG9wIGhhbGYgb2YgdGhlIHNjcmVlbiBzaG93cyBhIGxpc3Qgb2YgcGFja2FnZXMuICBGb3IgZWFjaCBwYWNrYWdlIHlvdSAiCisic2VlXG4iCisiZm91ciBjb2x1bW5zIGZvciBpdHMgY3VycmVudCBzdGF0dXMgb24gdGhlIHN5c3RlbSBhbmQgbWFyay4gIEluIHRlcnNlIG1vZGUgIgorIih1c2VcbiIKKyJgdicgdG8gdG9nZ2xlIHZlcmJvc2UgZGlzcGxheSkgdGhlc2UgYXJlIHNpbmdsZSBjaGFyYWN0ZXJzLCBmcm9tIGxlZnQgdG8gIgorInJpZ2h0OlxuIgorIlxuIgorIiBFcnJvciBmbGFnOiBTcGFjZSAtIG5vIGVycm9yIChidXQgcGFja2FnZSBtYXkgYmUgaW4gYnJva2VuIHN0YXRlIC0gc2VlICIKKyJiZWxvdylcbiIKKyIgICAgICAgICAgICAgIGBSJyAgLSBzZXJpb3VzIGVycm9yIGR1cmluZyBpbnN0YWxsYXRpb24sIG5lZWRzICIKKyJyZWluc3RhbGxhdGlvbjtcbiIKKyIgSW5zdGFsbGVkIHN0YXRlOiAgICAgU3BhY2UgICAgLSBub3QgaW5zdGFsbGVkO1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgYConICAgICAtIGluc3RhbGxlZDtcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgIGAtJyAgICAgLSBub3QgaW5zdGFsbGVkIGJ1dCBjb25maWcgZmlsZXMgcmVtYWluO1xuIgorIiAgIHBhY2thZ2VzIGluIHRoZXNlIHsgYFUnICAgICAtIHVucGFja2VkIGJ1dCBub3QgeWV0IGNvbmZpZ3VyZWQ7XG4iCisiICAgc3RhdGVzIGFyZSBub3QgICAgeyBgQycgICAgIC0gaGFsZi1jb25maWd1cmVkIChhbiBlcnJvciBoYXBwZW5lZCk7XG4iCisiICAgKHF1aXRlKSBwcm9wZXJseSAgeyBgSScgICAgIC0gaGFsZi1pbnN0YWxsZWQgKGFuIGVycm9yIGhhcHBlbmVkKTtcbiIKKyIgICBpbnN0YWxsZWQgICAgICAgICB7IGBXJyxgdCcgLSB0cmlnZ2VycyBhcmUgYXdhaXRlZCByZXNwLiBwZW5kaW5nLlxuIgorIiBPbGQgbWFyazogd2hhdCB3YXMgcmVxdWVzdGVkIGZvciB0aGlzIHBhY2thZ2UgYmVmb3JlIHByZXNlbnRpbmcgdGhpcyBsaXN0O1xuIgorIiBNYXJrOiB3aGF0IGlzIHJlcXVlc3RlZCBmb3IgdGhpcyBwYWNrYWdlOlxuIgorIiAgYConOiBtYXJrZWQgZm9yIGluc3RhbGxhdGlvbiBvciB1cGdyYWRlO1xuIgorIiAgYC0nOiBtYXJrZWQgZm9yIHJlbW92YWwsIGJ1dCBhbnkgY29uZmlndXJhdGlvbiBmaWxlcyB3aWxsIHJlbWFpbjtcbiIKKyIgIGA9Jzogb24gaG9sZDogcGFja2FnZSB3aWxsIG5vdCBiZSBwcm9jZXNzZWQgYXQgYWxsO1xuIgorIiAgYF8nOiBtYXJrZWQgZm9yIHB1cmdlIGNvbXBsZXRlbHkgLSBldmVuIHJlbW92ZSBjb25maWd1cmF0aW9uO1xuIgorIiAgYG4nOiBwYWNrYWdlIGlzIG5ldyBhbmQgaGFzIHlldCB0byBiZSBtYXJrZWQgZm9yIGluc3RhbGwvcmVtb3ZlLyZjLlxuIgorIlxuIgorIkFsc28gZGlzcGxheWVkIGFyZSBlYWNoIHBhY2thZ2UncyBQcmlvcml0eSwgU2VjdGlvbiwgbmFtZSwgaW5zdGFsbGVkIGFuZFxuIgorImF2YWlsYWJsZSB2ZXJzaW9uIG51bWJlcnMgKHNoaWZ0LVYgdG8gZGlzcGxheS9oaWRlKSBhbmQgc3VtbWFyeSAiCisiZGVzY3JpcHRpb24uXG4iCittc2dzdHIgIiIKKyJHw7NybmEgY3rEmcWbxIcgZWtyYW51IHByemVkc3Rhd2lhIGxpc3TEmSBwYWtpZXTDs3cuIERsYSBrYcW8ZGVnbyBwYWtpZXR1ICIKKyJ3ecWbd2lldGxhbmVcbiIKKyJzxIUgY3p0ZXJ5IGtvbHVtbnkgb3puYWN6YWrEhWNlIGFrdHVhbG55IGplZ28gc3RhbiB3IHN5c3RlbWllIGkgemF6bmFjemVuaWUuXG4iCisiVyB0cnliaWUgZG9tecWbbG55bSAoa2xhd2lzeiBcInZcIiBwcnplxYLEhWN6YSBuYSB0cnliIHN6Y3plZ8OzxYJvd3kpIHPEhSB0byAiCisiY3p0ZXJ5XG4iCisiem5ha2ksIHd5bWllbmlhasSFYyBvZCBsZXdlaiBzdHJvbnk6XG4iCisiXG4iCisiIEZsYWdhIGLFgsSZZHU6IFNwYWNqYSAtIGJyYWsgYsWCxJlkdSAoYWxlIHBha2lldCBtb8W8ZSBiecSHIHcgbmllcHJhd2lkxYJvd3ltICIKKyJzdGFuaWUpXG4iCisiICAgICAgICAgICAgICAgIFwiUlwiICAtIHBvd2HFvG55IGLFgsSFZCBwb2RjemFzIGluc3RhbGFjamkgLSBrb25pZWN6bmEgIgorInJlaW5zdGFsYWNqYVxuIgorIiBTdGFuIHphaW5zdGFsb3dhbmlhOiBTcGFjamEgIC0gbmllIHphaW5zdGFsb3dhbnlcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgXCIqXCIgICAgIC0gemFpbnN0YWxvd2FueVxuIgorIiAgICAgICAgICAgICAgICAgICAgICBcIi1cIiAgICAgLSBuaWUgemFpbnN0YWxvd2FueSwgem9zdGHFgnkgcGxpa2kgIgorImtvbmZpZ3VyYWN5am5lXG4iCisiICAgICAgdGFraWUgcGFraWV0eSB7IFwiVVwiICAgICAtIHJvenBha293YW55LCBqZXN6Y3plIG5pZSBza29uZmlndXJvd2FueVxuIgorIiAgIG5pZSBzxIUgKGNhxYJraWVtKSB7IFwiQ1wiICAgICAtIHdww7PFgi1za29uZmlndXJvd2FueSAod3lzdMSFcGnFgiBixYLEhWQpXG4iCisiICAgICAgICAgcHJhd2lkxYJvd28geyBcIklcIiAgICAgLSB3cMOzxYItemFpbnN0YWxvd2FueSAod3lzdMSFcGnFgiBixYLEhWQpLlxuIgorIiAgICAgIHphaW5zdGFsb3dhbmUgeyBcIldcIixcInRcIiAtIG9jemVraXdhbmllIG5hIHd5endhbGFjemUgbHViIHd5encuICIKKyJ6YXBsYW5vd2FuZVxuIgorIiBQb3ByemVkbmkgd3liw7NyOiB0bywgY28gem9zdGHFgm8gd3licmFuZSBwcnplZCBwb2phd2llbmllbSBzacSZIHRlaiBsaXN0eTtcbiIKKyIgWmF6bmFjemVuaWU6IHRvLCBjbyB6b3N0YcWCbyBva3JlxZtsb25lIGRsYSBkYW5lZ28gcGFraWV0dTpcbiIKKyIgIFwiKlwiOiB6YXpuYWN6b255IGRvIGluc3RhbGFjamkgbHViIGFrdHVhbGl6YWNqaVxuIgorIiAgXCItXCI6IHphem5hY3pvbnkgZG8gdXN1bmnEmWNpYSwgcGxpa2kga29uZmlndXJhY3lqbmUgem9zdGFuxIUgemFjaG93YW5lXG4iCisiICBcIj1cIjogd3N0cnp5bWFueTsgcGFraWV0IG5pZSBixJlkemllIHByemV0d2FyemFueVxuIgorIiAgXCJfXCI6IHphem5hY3pvbnkgZG8gd3ljenlzemN6ZW5pYSAtIHdyYXogeiBwbGlrYW1pIGtvbmZpZ3VyYWN5am55bWlcbiIKKyIgIFwiblwiOiBub3d5IHBha2lldCwgamVzemN6ZSBuaWUgemF6bmFjem9ueSBkbyBpbnN0YWxhY2ppL3VzdW5pxJljaWFcbiIKKyJcbiIKKyJQb25hZHRvIGthxbxkeSBwYWtpZXQgbWEgd3nFm3dpZXRsb27EhSBpbmZvcm1hY2rEmSBvIHByaW9yeXRlY2llLCBzZWtjamksICIKKyJuYXp3aWUsXG4iCisid2Vyc2ppIHphaW5zdGFsb3dhbmVqIGkgZG9zdMSZcG5laiAoc2hpZnQtViB1a3J5d2EvcG9rYXp1amUpIG9yYXoga3LDs3RraSAiCisib3Bpcy5cbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxNTIKK21zZ2lkICJEaXNwbGF5LCBwYXJ0IDI6IGxpc3QgaGlnaGxpZ2h0OyBpbmZvcm1hdGlvbiBkaXNwbGF5IgorbXNnc3RyICJXeWLDs3IgcGFraWV0w7N3LCBjesSZxZvEhyAyOiBrdXJzb3I7IHd5xZt3aWV0bGFuZSBpbmZvcm1hY2plIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjE1MgorbXNnaWQgIiIKKyIqIEhpZ2hsaWdodDogT25lIGxpbmUgaW4gdGhlIHBhY2thZ2UgbGlzdCB3aWxsIGJlIGhpZ2hsaWdodGVkLiAgSXQgIgorImluZGljYXRlc1xuIgorIiAgd2hpY2ggcGFja2FnZShzKSB3aWxsIGJlIGFmZmVjdGVkIGJ5IHByZXNzZXMgb2YgYCsnLCBgLScgYW5kIGBfJy5cbiIKKyJcbiIKKyIqIFRoZSBkaXZpZGluZyBsaW5lIGluIHRoZSBtaWRkbGUgb2YgdGhlIHNjcmVlbiBzaG93cyBhIGJyaWVmIGV4cGxhbmF0aW9uICIKKyJvZlxuIgorIiAgdGhlIHN0YXR1cyBvZiB0aGUgY3VycmVudGx5LWhpZ2hsaWdodGVkIHBhY2thZ2UsIG9yIGEgZGVzY3JpcHRpb24gb2YgIgorIndoaWNoXG4iCisiICBncm91cCBpcyBoaWdobGlnaHRlZCBpZiBhIGdyb3VwIGxpbmUgaXMuICBJZiB5b3UgZG9uJ3QgdW5kZXJzdGFuZCB0aGVcbiIKKyIgIG1lYW5pbmcgb2Ygc29tZSBvZiB0aGUgc3RhdHVzIGNoYXJhY3RlcnMgZGlzcGxheWVkLCBnbyB0byB0aGUgcmVsZXZhbnRcbiIKKyIgIHBhY2thZ2UgYW5kIGxvb2sgYXQgdGhpcyBkaXZpZGVyIGxpbmUsIG9yIHVzZSB0aGUgYHYnIGtleSBmb3IgYSB2ZXJib3NlXG4iCisiICBkaXNwbGF5IChwcmVzcyBgdicgYWdhaW4gdG8gZ28gYmFjayB0byB0aGUgdGVyc2UgZGlzcGxheSkuXG4iCisiXG4iCisiKiBUaGUgYm90dG9tIG9mIHRoZSBzY3JlZW4gc2hvd3MgbW9yZSBpbmZvcm1hdGlvbiBhYm91dCB0aGVcbiIKKyIgIGN1cnJlbnRseS1oaWdobGlnaHRlZCBwYWNrYWdlIChpZiB0aGVyZSBpcyBvbmx5IG9uZSkuXG4iCisiXG4iCisiICBJdCBjYW4gc2hvdyBhbiBleHRlbmRlZCBkZXNjcmlwdGlvbiBvZiB0aGUgcGFja2FnZSwgdGhlIGludGVybmFsIHBhY2thZ2VcbiIKKyIgIGNvbnRyb2wgZGV0YWlscyAoZWl0aGVyIGZvciB0aGUgaW5zdGFsbGVkIG9yIGF2YWlsYWJsZSB2ZXJzaW9uIG9mIHRoZVxuIgorIiAgcGFja2FnZSksIG9yIGluZm9ybWF0aW9uIGFib3V0IGNvbmZsaWN0cyBhbmQgZGVwZW5kZW5jaWVzIGludm9sdmluZyB0aGVcbiIKKyIgIGN1cnJlbnQgcGFja2FnZSAoaW4gY29uZmxpY3QvZGVwZW5kZW5jeSByZXNvbHV0aW9uIHN1Ymxpc3RzKS5cbiIKKyJcbiIKKyIgIFVzZSB0aGUgYGknIGtleSB0byBjeWNsZSB0aHJvdWdoIHRoZSBkaXNwbGF5cywgYW5kIGBJJyB0byBoaWRlIHRoZVxuIgorIiAgaW5mb3JtYXRpb24gZGlzcGxheSBvciBleHBhbmQgaXQgdG8gdXNlIGFsbW9zdCBhbGwgb2YgdGhlIHNjcmVlbi5cbiIKK21zZ3N0ciAiIgorIiogUG9kxZt3aWV0bGVuaWU6IEplZG5hIHogbGluaWkgamVzdCBwb2TFm3dpZXRsb25hLiBPa3JlxZtsYSBvbmEgcGFraWV0KHkpLFxuIgorIiAga3TDs3JlZ28oeWNoKSBzdGFuIHpvc3RhbmllIHptaWVuaW9ueSBwbyB3Y2nFm25pxJljaXUgXCIrXCIsIFwiLVwiIGkgXCJfXCIuXG4iCisiXG4iCisiKiBQYXNlayBuYSDFm3JvZGt1IGVrcmFudSB3ecWbd2lldGxhIGluZm9ybWFjamUgbyBzdGFuaWUgcGFraWV0dSwga3TDs3J5ICIKKyJ6b3N0YcWCXG4iCisiICB3c2themFueSBrdXJzb3JlbSwgbHViIHd5xZt3aWV0bGEga3LDs3RraSBvcGlzIGdydXB5LCB3IHByenlwYWRrdSBnZHkgdGFrYVxuIgorIiAgem9zdGFuaWUgd3NrYXphbmEuIEplxbxlbGkgbmllIHJvenVtaWUgc2nEmSB6bmFjemVuaWEgcG9zemN6ZWfDs2xueWNoIHpuYWvDs3dcbiIKKyIgIG96bmFjemFqxIVjeWNoIHN0YW4gcGFraWV0dSwgcGXFgm55IG9waXMgc3RhbnUgd3licmFuZWdvIHBha2lldHUgbW/FvG5hICIKKyJ6bmFsZcW6xIdcbiIKKyIgIG5hIHR5bSBwYXNrdSAobW/FvG5hIHRha8W8ZSBza29yenlzdGHEhyB6IGtsYXdpc3phIFwidlwiIHByemXFgsSFY3phasSFY2VnbyAiCisibGlzdMSZXG4iCisiICBuYSB0cnliIHN6Y3plZ8OzxYJvd3kpLlxuIgorIlxuIgorIiogTmEgZG9sZSBla3JhbnUgd3nFm3dpZXRsYW5lIHPEhSBzemN6ZWfDs8WCb3dlIGluZm9ybWFjamUgbyB3c2themFueW0ga3Vyc29yZW1cbiIKKyIgIHBha2llY2llIChqZcWbbGkgdyBvZ8OzbGUgem9zdGHFgiB3c2themFueSkuXG4iCisiXG4iCisiICBNb8W8bmEgd3nFm3dpZXRsacSHIHN6Y3plZ8OzxYJvd3kgb3BpcyBwYWtpZXR1LCBpbmZvcm1hY2plIG8gc3RhbmllIHBha2lldHVcbiIKKyIgIHBvYnJhbmUgeiBiYXp5IGRhbnljaCBzeXN0ZW11IHBha2lldMOzdyBvcmF6IGluZm9ybWFjamUgbyBrb25mbGlrdGFjaCBsdWJcbiIKKyIgIHByb2JsZW1hY2ggeiB6YWxlxbxub8WbY2lhbWkgZGFuZWdvIHBha2lldHUgKGRsYSBsaXN0eSBrb25mbGlrdMOzdy8iCisiemFsZcW8bm/Fm2NpKS5cbiIKKyJcbiIKKyIgIEtsYXdpc3plbSBcImlcIiBtb8W8bmEgd3licmHEhyByb2R6YWogd3nFm3dpZXRsYW5laiBpbmZvcm1hY2ppLCBhIGtsYXdpc3plbSAiCisiXCJJXCJcbiIKKyIgIG1vxbxuYSB1a3J5xIcgdG8gb2tubyBsdWIgamUgcm96c3plcnp5xIcgbmEgd2nEmWtzesSFIGN6xJnFm8SHIGVrcmFudS5cbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxNzYKK21zZ2lkICJJbnRyb2R1Y3Rpb24gdG8gbWV0aG9kIHNlbGVjdGlvbiBkaXNwbGF5IgorbXNnc3RyICJXcHJvd2FkemVuaWUgZG8gd3lib3J1IG1ldG9keSBpbnN0YWxhY2ppIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjE3NgorbXNnaWQgIiIKKyJkc2VsZWN0IGFuZCBkcGtnIGNhbiBkbyBhdXRvbWF0aWMgaW5zdGFsbGF0aW9uLCBsb2FkaW5nIHRoZSBwYWNrYWdlIGZpbGVzIHRvICIKKyJiZVxuIgorImluc3RhbGxlZCBmcm9tIG9uZSBvZiBhIG51bWJlciBvZiBkaWZmZXJlbnQgcG9zc2libGUgcGxhY2VzLlxuIgorIlxuIgorIlRoaXMgbGlzdCBhbGxvd3MgeW91IHRvIHNlbGVjdCBvbmUgb2YgdGhlc2UgaW5zdGFsbGF0aW9uIG1ldGhvZHMuXG4iCisiXG4iCisiTW92ZSB0aGUgaGlnaGxpZ2h0IHRvIHRoZSBtZXRob2QgeW91IHdpc2ggdG8gdXNlLCBhbmQgaGl0IEVudGVyLiAgWW91IHdpbGwgIgorInRoZW5cbiIKKyJiZSBwcm9tcHRlZCBmb3IgdGhlIGluZm9ybWF0aW9uIHJlcXVpcmVkIHRvIGRvIHRoZSBpbnN0YWxsYXRpb24uXG4iCisiXG4iCisiQXMgeW91IG1vdmUgdGhlIGhpZ2hsaWdodCBhIGRlc2NyaXB0aW9uIG9mIGVhY2ggbWV0aG9kLCB3aGVyZSBhdmFpbGFibGUsIGlzXG4iCisiZGlzcGxheWVkIGluIHRoZSBib3R0b20gaGFsZiBvZiB0aGUgc2NyZWVuLlxuIgorIlxuIgorIklmIHlvdSB3aXNoIHRvIHF1aXQgd2l0aG91dCBjaGFuZ2luZyBhbnl0aGluZyB1c2UgdGhlIGB4JyBrZXkgd2hpbGUgaW4gdGhlICIKKyJsaXN0XG4iCisib2YgaW5zdGFsbGF0aW9uIG1ldGhvZHMuXG4iCisiXG4iCisiQSBmdWxsIGxpc3Qgb2Yga2V5c3Ryb2tlcyBpcyBhdmFpbGFibGUgYnkgcHJlc3NpbmcgYGsnIG5vdywgb3IgZnJvbSB0aGUgIgorImhlbHBcbiIKKyJtZW51IHJlYWNoYWJsZSBieSBwcmVzc2luZyBgPycuXG4iCittc2dzdHIgIiIKKyJQcm9ncmFteSBkc2VsZWN0IGkgZHBrZyBwb3RyYWZpxIUgZG9rb25hxIcgYXV0b21hdHljem5laiBpbnN0YWxhY2ppLCAiCisicG9iaWVyYWrEhWNcbiIKKyJwbGlraSBwcnplem5hY3pvbmUgZG8gemFpbnN0YWxvd2FuaWEgeiB3aWVsdSByw7PFvG55Y2ggbW/FvGxpd3ljaCBtaWVqc2MuXG4iCisiXG4iCisiVGEgbGlzdGEgcG96d2FsYSBuYSB3eWJyYW5pZSBqZWRuZWogeiBwb2RhbnljaCBtZXRvZCBpbnN0YWxhY2ppLlxuIgorIlxuIgorIk5hanBpZXJ3IG5hbGXFvHkgd3NrYXphxIcgd3licmFuxIUgbWV0b2TEmSBpbnN0YWxhY2ppIGkgd2Npc27EhcSHIEVudGVyLiAiCisiTmFzdMSZcG5pZVxuIgorIm5hbGXFvHkgb2Rwb3dpZWR6aWXEhyBuYSBweXRhbmlhIGRvdHljesSFY2Ugd3licmFuZWogbWV0b2R5LlxuIgorIlxuIgorIlBvIHByemVzdW5pxJljaXUga3Vyc29yYSBuYSBkYW7EhSBtZXRvZMSZLCBuYSBkb2xlIGVrcmFudSBwb2phd2kgc2nEmSBqZWogb3Bpcy5cbiIKKyJcbiIKKyJLbGF3aXN6IFwieFwiIHPFgnXFvHkgZG8gb3B1c3pjemVuaWEgdGVqIGxpc3R5IGJleiBva3JlxZtsZW5pYSBtZXRvZHkgIgorImluc3RhbGFjamkuXG4iCisiXG4iCisiUGXFgm55IHNwaXMga2xhd2lzenkgZG9zdMSZcG55IGplc3QgcG8gd2NpxZtuacSZY2l1IGtsYXdpc3phIFwia1wiIHRlcmF6LCBsdWIgeiAiCisibWVudVxuIgorInBvbW9jeSBkb3N0xJlwbmVnbyBww7PFum5pZWogcG9kIGtsYXdpc3plbSBcIj9cIi5cbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxOTYKK21zZ2lkICJLZXlzdHJva2VzIGZvciBtZXRob2Qgc2VsZWN0aW9uIgorbXNnc3RyICJTcGlzIGtsYXdpc3p5IGRsYSB3eWJvcnUgbWV0b2R5IGluc3RhbGFjamkiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTk2Cittc2dpZCAiIgorIk1vdGlvbiBrZXlzOiBOZXh0L1ByZXZpb3VzLCBUb3AvRW5kLCBVcC9Eb3duLCBCYWNrd2FyZHMvRm9yd2FyZHM6XG4iCisiICBqLCBEb3duLWFycm93ICAgICAgICAgaywgVXAtYXJyb3cgICAgICAgICAgICAgbW92ZSBoaWdobGlnaHRcbiIKKyIgIE4sIFBhZ2UtZG93biwgU3BhY2UgICBQLCBQYWdlLXVwLCBCYWNrc3BhY2UgICBzY3JvbGwgbGlzdCBieSAxIHBhZ2VcbiIKKyIgIF5uICAgICAgICAgICAgICAgICAgICBecCAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgbGlzdCBieSAxIGxpbmVcbiIKKyIgIHQsIEhvbWUgICAgICAgICAgICAgICBlLCBFbmQgICAgICAgICAgICAgICAgICBqdW1wIHRvIHRvcC9lbmQgb2YgbGlzdFxuIgorIiAgdSAgICAgICAgICAgICAgICAgICAgIGQgICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIGJ5IDEgcGFnZVxuIgorIiAgXnUgICAgICAgICAgICAgICAgICAgIF5kICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIGJ5IDEgbGluZVxuIgorIiAgQiwgTGVmdC1hcnJvdyAgICAgICAgIEYsIFJpZ2h0LWFycm93ICAgICAgICAgIHBhbiBkaXNwbGF5IGJ5IDEvMyBzY3JlZW5cbiIKKyIgIF5iICAgICAgICAgICAgICAgICAgICBeZiAgICAgICAgICAgICAgICAgICAgICBwYW4gZGlzcGxheSBieSAxIGNoYXJhY3RlclxuIgorIihUaGVzZSBhcmUgdGhlIHNhbWUgbW90aW9uIGtleXMgYXMgaW4gdGhlIHBhY2thZ2UgbGlzdCBkaXNwbGF5LilcbiIKKyJcbiIKKyJRdWl0OlxuIgorIiBSZXR1cm4sIEVudGVyICAgIHNlbGVjdCB0aGlzIG1ldGhvZCBhbmQgZ28gdG8gaXRzIGNvbmZpZ3VyYXRpb24gZGlhbG9ndWVcbiIKKyIgeCwgWCAgICAgICAgICAgICBleGl0IHdpdGhvdXQgY2hhbmdpbmcgb3Igc2V0dGluZyB1cCB0aGUgaW5zdGFsbGF0aW9uICIKKyJtZXRob2RcbiIKKyJcbiIKKyJNaXNjZWxsYW5lb3VzOlxuIgorIiAgPywgSGVscCwgRjEgICAgICByZXF1ZXN0IGhlbHBcbiIKKyIgXmwgICAgICAgICAgICAgICAgcmVkcmF3IGRpc3BsYXlcbiIKKyIgIC8gICAgICAgICAgICAgICAgc2VhcmNoIChqdXN0IHJldHVybiB0byBjYW5jZWwpXG4iCisiICBcXCAgICAgICAgICAgICAgICByZXBlYXQgbGFzdCBzZWFyY2hcbiIKK21zZ3N0ciAiIgorIktsYXdpc3plIHJ1Y2h1OiBOYXN0xJlwbnkvUG9wcnplZG5pLCBHw7NyYS9Ew7PFgiwgRG8gZ8OzcnkvVyBkw7PFgjpcbiIKKyIgIGosIFN0cnphxYJrYS13LWTDs8WCICAgICBrLCBTdHJ6YcWCa2EtZG8tZ8OzcnkgICAgIHJ1Y2gga3Vyc29yYVxuIgorIiAgTiwgUGFnZS1kb3duLCBTcGFjamEgIFAsIFBhZ2UtdXAsIEJhY2tzcGFjZSAgIHByemV3aW5pxJljaWUgbGlzdHkgbyAxICIKKyJla3JhblxuIgorIiAgXm4gICAgICAgICAgICAgICAgICAgIF5wICAgICAgICAgICAgICAgICAgICAgIHByemV3aW5pxJljaWUgbGlzdHkgbyAxICIKKyJsaW5pxJlcbiIKKyIgIHQsIEhvbWUgICAgICAgICAgICAgICBlLCBFbmQgICAgICAgICAgICAgICAgICBza29rIG5hIHBvY3rEhXRlay9rb25pZWMgIgorImxpc3R5XG4iCisiICB1ICAgICAgICAgICAgICAgICAgICAgZCAgICAgICAgICAgICAgICAgICAgICAgcHJ6ZXdpbmnEmWNpZSBpbmZvIG8gMSBla3JhblxuIgorIiAgXnUgICAgICAgICAgICAgICAgICAgIF5kICAgICAgICAgICAgICAgICAgICAgIHByemV3aW5pxJljaWUgaW5mbyBvIDEgbGluacSZXG4iCisiICBCLCBMZWZ0LWFycm93ICAgICAgICAgRiwgUmlnaHQtYXJyb3cgICAgICAgICAgcHJ6ZXN1bmnEmWNpZSB3IGJvayAxLzMgIgorImVrcmFudVxuIgorIiAgXmIgICAgICAgICAgICAgICAgICAgIF5mICAgICAgICAgICAgICAgICAgICAgIHByemVzdW5pxJljaWUgdyBib2sgbyAxIHpuYWtcbiIKKyIoVG8gc8SFIHRlIHNhbWUga2xhd2lzemUgcnVjaHUgamFrIHByenkgd3lib3J6ZSBwYWtpZXTDs3cuKVxuIgorIlxuIgorIld5asWbY2llOlxuIgorIiBSZXR1cm4sIEVudGVyICAgIHd5YsOzciBtZXRvZHkgaW5zdGFsYWNqaSBpIHd5d2/FgmFuaWUgamVqIGtvbmZpZ3VyYWNqaVxuIgorIiB4LCBYICAgICAgICAgICAgIHd5asWbY2llIGJleiBkb2tvbmFuaWEgem1pYW4gdyBkb3R5Y2hjemFzb3d5Y2ggIgorInVzdGF3aWVuaWFjaFxuIgorIlxuIgorIlBvem9zdGHFgmU6XG4iCisiICA/LCBIZWxwLCBGMSAgICAgIHd5d2/FgmFuaWUgcG9tb2N5XG4iCisiIF5sICAgICAgICAgICAgICAgIG9kxZt3aWXFvGVuaWUgZWtyYW51XG4iCisiICAvICAgICAgICAgICAgICAgIHd5c3p1a2l3YW5pZSAocmV0dXJuIC0gYW51bG93YW5pZSlcbiIKKyIgIFxcICAgICAgICAgICAgICAgIHBvd3TDs3J6ZW5pZSBvc3RhdG5pZWdvIHd5c3p1a2l3YW5pYVxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6NjAKK21zZ2lkICJUeXBlIGRzZWxlY3QgLS1oZWxwIGZvciBoZWxwLiIKK21zZ3N0ciAiV3Bpc3ogZHNlbGVjdCAtLWhlbHAgYWJ5IG90cnp5bWHEhyBwb21vYy4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDMKK21zZ2lkICJhIgorbXNnc3RyICJhIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQzCittc2dpZCAiW0FdY2Nlc3MiCittc2dzdHIgIltBXSBEb3N0xJlwIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQzCittc2dpZCAiQ2hvb3NlIHRoZSBhY2Nlc3MgbWV0aG9kIHRvIHVzZS4iCittc2dzdHIgIld5YsOzciBtZXRvZHkgZG9zdMSZcHUuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ0Cittc2dpZCAidSIKK21zZ3N0ciAidSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NAorbXNnaWQgIltVXXBkYXRlIgorbXNnc3RyICJbVV0gQWt0dWFsaXphY2phIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ0Cittc2dpZCAiVXBkYXRlIGxpc3Qgb2YgYXZhaWxhYmxlIHBhY2thZ2VzLCBpZiBwb3NzaWJsZS4iCittc2dzdHIgIlpha3R1YWxpem93YW5pZSBpbmZvcm1hY2ppIG8gZG9zdMSZcG55Y2ggcGFraWV0YWNoLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NQorbXNnaWQgInMiCittc2dzdHIgInMiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDUKK21zZ2lkICJbU11lbGVjdCIKK21zZ3N0ciAiW1NdIFd5YsOzciIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NQorbXNnaWQgIlJlcXVlc3Qgd2hpY2ggcGFja2FnZXMgeW91IHdhbnQgb24geW91ciBzeXN0ZW0uIgorbXNnc3RyICJXeWLDs3IgcGFraWV0w7N3IGluc3RhbG93YW55Y2ggdyBzeXN0ZW1pZS4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDYKK21zZ2lkICJpIgorbXNnc3RyICJpIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ2Cittc2dpZCAiW0ldbnN0YWxsIgorbXNnc3RyICJbSV0gSW5zdGFsYWNqYSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NgorbXNnaWQgIkluc3RhbGwgYW5kIHVwZ3JhZGUgd2FudGVkIHBhY2thZ2VzLiIKK21zZ3N0ciAiSW5zdGFsYWNqYSBpIHVha3R1YWxuaWVuaWUgd3licmFueWNoIHBha2lldMOzdy4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDcKK21zZ2lkICJjIgorbXNnc3RyICJjIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ3Cittc2dpZCAiW0Ndb25maWciCittc2dzdHIgIltDXSBLb25maWd1cmFjamEiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDcKK21zZ2lkICJDb25maWd1cmUgYW55IHBhY2thZ2VzIHRoYXQgYXJlIHVuY29uZmlndXJlZC4iCittc2dzdHIgIktvbmZpZ3VyYWNqYSBwYWtpZXTDs3csIGt0w7NyZSBwb3pvc3RhxYJ5IG5pZXNrb25maWd1cm93YW5lLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OAorbXNnaWQgInIiCittc2dzdHIgInIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDgKK21zZ2lkICJbUl1lbW92ZSIKK21zZ3N0ciAiW1JdIFVzdXdhbmllIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ4Cittc2dpZCAiUmVtb3ZlIHVud2FudGVkIHNvZnR3YXJlLiIKK21zZ3N0ciAiVXN1d2FuaWUgbmllY2hjaWFueWNoIHBha2lldMOzdy4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDkKK21zZ2lkICJxIgorbXNnc3RyICJxIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ5Cittc2dpZCAiW1FddWl0IgorbXNnc3RyICJbUV0gV3lqxZtjaWUiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDkKK21zZ2lkICJRdWl0IGRzZWxlY3QuIgorbXNnc3RyICJXeWrFm2NpZSB6IGRzZWxlY3QuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTUwCittc2dpZCAibWVudSIKK21zZ3N0ciAibWVudSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE1NQorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIGhhbmRsaW5nIGZyb250ZW5kIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkRlYmlhbiBcIiVzXCIsIG5ha8WCYWRrYSBuYSBwcm9ncmFtIHphcnrEhWR6YW5pYSBwYWtpZXRhbWksIHdlcnNqYSAlcy5cbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE1OAorbXNnaWQgIiIKKyJDb3B5cmlnaHQgKEMpIDE5OTQtMTk5NiBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLlxuIgorbXNnc3RyICIiCisiQ29weXJpZ2h0IChDKSAxOTk0LTE5OTYgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE2MgorIywgZnV6enkKK21zZ2lkICIiCisiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvclxuIgorImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LlxuIgorbXNnc3RyICIiCisiTmluaWVqc3p5IHByb2dyYW0gamVzdCB3b2xueW0gb3Byb2dyYW1vd2FuaWVtLCBwcm9zesSZIHNwcmF3ZHppxIdcbiIKKyJQb3dzemVjaG7EhSBMaWNlbmNqxJkgUHVibGljem7EhSBHTlUgdyB3ZXJzamkgZHJ1Z2llaiBsdWIgcMOzxbpuaWVqc3plaixcbiIKKyJieSBkb3dpZWR6aWXEhyBzacSZIG8gd2FydW5rYWNoIHJvenBvd3N6ZWNobmlhbmlhLlxuIgorIkJyYWsgSkFLSUVKS09MV0lFSyBnd2FyYW5jamkuXG4iCisiV2nEmWNlaiBzemN6ZWfDs8WCw7N3IHcgJXMgLS1saWNlbnNlLlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTcyIGRzZWxlY3QvbWFpbi5jYzoyMjAKK21zZ2lkICI8c3RhbmRhcmQgb3V0cHV0PiIKK21zZ3N0ciAiPHN0YW5kYXJkb3dlIHd5asWbY2llPiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE4MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIFs8YWN0aW9uPiAuLi5dXG4iCisiXG4iCittc2dzdHIgIiIKKyJVxbx5Y2llOiAlcyBbPG9wY2phPiAuLi5dIFs8YWtjamE+IC4uLl1cbiIKKyJcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE4NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorIiAgLS1leHBlcnQgICAgICAgICAgICAgICAgICAgVHVybiBvbiBleHBlcnQgbW9kZS5cbiIKKyIgIC0tZGVidWcgPGZpbGU+IHwgLUQ8ZmlsZT4gIFR1cm4gb24gZGVidWdnaW5nLCBzZW5kaW5nIG91dHB1dCB0byA8ZmlsZT4uXG4iCisiICAtLWNvbG91ciB8IC0tY29sb3Igc2NyZWVucGFydDpbZm9yZWdyb3VuZF0sW2JhY2tncm91bmRdWzphdHRyWythdHRyKy4uXV1cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENvbmZpZ3VyZSBzY3JlZW4gY29sb3Vycy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIk9wY2plOlxuIgorIiAgLS1hZG1pbmRpciA8a2F0YWxvZz4gICAgICAgVcW8eXdhIDxrYXRhbG9ndT4gemFtaWFzdCAlcy5cbiIKKyIgIC0tZXhwZXJ0ICAgICAgICAgICAgICAgICAgIFfFgsSFY3phIHRyeWIgZWtzcGVydGEuXG4iCisiICAtLWRlYnVnIDxwbGlrPiB8IC1EPHBsaWs+ICBXxYLEhWN6YSBkZWJ1Z293YW5pZSwgd3lzecWCYSB3eWrFm2NpZSBkbyA8cGxpa3U+LlxuIgorIiAgLS1jb2xvdXIgfCAtLWNvbG9yIGN6xJnFm8SHX3dpZG9rdTpba29sb3JfdGVrc3R1XSxba29sb3JfdMWCYV1bOmF0clsrYXRyKy4uXV1cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEtvbmZpZ3VydWplIGtvbG9yeSBla3JhbnUuXG4iCisiXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxOTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgICBTaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorbXNnc3RyICIiCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgICBXecWbd2lldGxhIHRlbiBrb211bmlrYXQgcG9tb2N5LlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICAgV3nFm3dpZXRsYSBpbmZvcm1hY2plIG8gd2Vyc2ppLlxuIgorIiAgLS1saWNlbnNlICAgICAgICAgICAgICAgICAgV3nFm3dpZXRsYSBpbmZvcm1hY2plIG8gbGljZW5jamkuXG4iCisiXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkFjdGlvbnM6XG4iCisiICBhY2Nlc3MgdXBkYXRlIHNlbGVjdCBpbnN0YWxsIGNvbmZpZyByZW1vdmUgcXVpdFxuIgorIlxuIgorbXNnc3RyICIiCisiQWtjamU6XG4iCisiICBhY2Nlc3MgdXBkYXRlIHNlbGVjdCBpbnN0YWxsIGNvbmZpZyByZW1vdmUgcXVpdFxuIgorIlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjA1CisjLCBjLWZvcm1hdAorbXNnaWQgIlNjcmVlbnBhcnRzOlxuIgorbXNnc3RyICJDesSZxZtjaSB3aWRva3U6XG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ29sb3VyczpcbiIKK21zZ3N0ciAiS29sb3J5OlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjE1CisjLCBjLWZvcm1hdAorbXNnaWQgIkF0dHJpYnV0ZXM6XG4iCittc2dzdHIgIkF0cnlidXR5OlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjMzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkbid0IG9wZW4gZGVidWcgZmlsZSBgJS4yNTVzJ1xuIgorbXNnc3RyICJuaWUgbW/FvG5hIG90d29yennEhyBwbGlrdSBkZWJ1Z2dlcmEgXCIlLjI1NXNcIlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjUzCisjLCBjLWZvcm1hdAorbXNnaWQgIkludmFsaWQgJXMgYCVzJ1xuIgorbXNnc3RyICJOaWVwcmF3aWTFgm93eSAlcyBcIiVzXCJcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjI3MAorbXNnaWQgInNjcmVlbiBwYXJ0IgorbXNnc3RyICJjesSZxZvEhyB3aWRva3UiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyNzYKK21zZ2lkICJOdWxsIGNvbG91ciBzcGVjaWZpY2F0aW9uXG4iCittc2dzdHIgIlB1c3RhIHNwZWN5ZmlrYWNqYSBrb2xvcnVcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjI4NCBkc2VsZWN0L21haW4uY2M6Mjg5Cittc2dpZCAiY29sb3VyIgorbXNnc3RyICJrb2xvciIKKworIzogZHNlbGVjdC9tYWluLmNjOjI5NworbXNnaWQgImNvbG91ciBhdHRyaWJ1dGUiCittc2dzdHIgImF0cnlidXR5IGtvbG9ydSIKKworIzogZHNlbGVjdC9tYWluLmNjOjMyOQorbXNnaWQgIlRlcm1pbmFsIGRvZXMgbm90IGFwcGVhciB0byBzdXBwb3J0IGN1cnNvciBhZGRyZXNzaW5nLlxuIgorbXNnc3RyICJUZXJtaW5hbCBuaWUgb2JzxYJ1Z3VqZSBhZHJlc293YW5pYSBrdXJzb3JhLlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MzMxCittc2dpZCAiVGVybWluYWwgZG9lcyBub3QgYXBwZWFyIHRvIHN1cHBvcnQgaGlnaGxpZ2h0aW5nLlxuIgorbXNnc3RyICJUZXJtaW5hbCBuaWUgb2JzxYJ1Z3VqZSBwb2TFm3dpZXRsYW5pYS5cbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjMzMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiU2V0IHlvdXIgVEVSTSB2YXJpYWJsZSBjb3JyZWN0bHksIHVzZSBhIGJldHRlciB0ZXJtaW5hbCxcbiIKKyJvciBtYWtlIGRvIHdpdGggdGhlIHBlci1wYWNrYWdlIG1hbmFnZW1lbnQgdG9vbCAlcy5cbiIKK21zZ3N0ciAiIgorIlByb3N6xJkgcG9wcmF3bmllIHVzdGF3acSHIHptaWVubsSFIFRFUk0sIHXFvHnEhyBsZXBzemVnbyB0ZXJtaW5hbGEsXG4iCisibHViIHd5a29yenlzdGHEhyBuYXJ6xJlkemllIGRvIHphcnrEhWR6YW5pYSBwYWtpZXRhbWkgJXMuXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzozMzYKK21zZ2lkICJ0ZXJtaW5hbCBsYWNrcyBuZWNlc3NhcnkgZmVhdHVyZXMsIGdpdmluZyB1cCIKK21zZ3N0ciAiYnJhayBwb3RyemVibnljaCBmdW5rY2ppIHRlcm1pbmFsYSwgcHJ6ZXJ5d2FuaWUiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzo0MTcKK21zZ2lkICIiCisiXG4iCisiXG4iCisiTW92ZSBhcm91bmQgd2l0aCBeUCBhbmQgXk4sIGN1cnNvciBrZXlzLCBpbml0aWFsIGxldHRlcnMsIG9yIGRpZ2l0cztcbiIKKyJQcmVzcyA8ZW50ZXI+IHRvIGNvbmZpcm0gc2VsZWN0aW9uLiAgIF5MIHJlZHJhd3Mgc2NyZWVuLlxuIgorIlxuIgorbXNnc3RyICIiCisiXG4iCisiXG4iCisiUG9ydXN6YW5pZTogXlAgb3JheiBeTiwga2xhd2lzemUga3Vyc29yYSwgcGllcndzemUgbGl0ZXJ5IGx1YiBjeWZyeTtcbiIKKyJXY2nFm25paiA8ZW50ZXI+IGFieSBwb3R3aWVyZHppxIcgd3liw7NyLiAgXkwgLSBvZMWbd2llxbxlbmllIGVrcmFudS5cbiIKKyJcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjQyOAorbXNnaWQgIiIKKyJcbiIKKyJcbiIKKyJSZWFkLW9ubHkgYWNjZXNzOiBvbmx5IHByZXZpZXcgb2Ygc2VsZWN0aW9ucyBpcyBhdmFpbGFibGUhIgorbXNnc3RyICIiCisiXG4iCisiXG4iCisiVHJ5YiB0eWxrbyBkbyBvZGN6eXR1OiBtb8W8bmEgamVkeW5pZSBwcnplZ2zEhWRhxIcgbGlzdMSZIHBha2lldMOzdyEiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzo0NDgKK21zZ2lkICJmYWlsZWQgdG8gZ2V0Y2ggaW4gbWFpbiBtZW51IgorbXNnc3RyICJuaWUgbW/FvG5hIHd5d2/FgmHEhyBcImdldGNoXCIgdyBnxYLDs3dueW0gbWVudSIKKworIzogZHNlbGVjdC9tYWluLmNjOjUzMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGFjdGlvbiBzdHJpbmcgYCUuNTBzJyIKK21zZ3N0ciAibmllem5hbmUgZHppYcWCYW5pZSBcIiUuNTBzXCIiCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6NzcKK21zZ2lkICJkc2VsZWN0IC0gbGlzdCBvZiBhY2Nlc3MgbWV0aG9kcyIKK21zZ3N0ciAiZHNlbGVjdCAtIGxpc3RhIG1ldG9kIGRvc3TEmXB1IgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjg2CisjLCBjLWZvcm1hdAorbXNnaWQgIkFjY2VzcyBtZXRob2QgYCVzJy4iCittc2dzdHIgIk1ldG9kYSBkb3N0xJlwdSBcIiVzXCIuIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjEyMAorbXNnaWQgIkFiYnJldi4iCittc2dzdHIgIk96bmFjemVuaWUiCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTIxIGRzZWxlY3QvcGtnaW5mby5jYzoxMDUgZHNlbGVjdC9wa2d0b3AuY2M6MjkxCittc2dpZCAiRGVzY3JpcHRpb24iCittc2dzdHIgIk9waXMiCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTY0IGRzZWxlY3QvcGtnbGlzdC5jYzo1NzIKK21zZ2lkICJkb3VwZGF0ZSBmYWlsZWQiCittc2dzdHIgIm5pZSBtb8W8bmEgd3lrb25hxIcgZnVua2NqaSBcImRvdXBkYXRlXCIiCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTY2IGRzZWxlY3QvcGtnbGlzdC5jYzo1NzUKK21zZ2lkICJmYWlsZWQgdG8gdW5ibG9jayBTSUdXSU5DSCIKK21zZ3N0ciAibmllIG1vxbxuYSBvZGJsb2tvd2HEhyBTSUdXSU5DSCIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxNzAgZHNlbGVjdC9wa2dsaXN0LmNjOjU4MAorbXNnaWQgImZhaWxlZCB0byByZS1ibG9jayBTSUdXSU5DSCIKK21zZ3N0ciAibmllIG1vxbxuYSBwb25vd25pZSB6YWJsb2tvd2HEhyBTSUdXSU5DSCIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxNzEgZHNlbGVjdC9wa2dsaXN0LmNjOjU4MgorbXNnaWQgImdldGNoIGZhaWxlZCIKK21zZ3N0ciAibmllIG1vxbxuYSB3eWtvbmHEhyBmdW5rY2ppIFwiZ2V0Y2hcIiIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxODgKK21zZ2lkICJFeHBsYW5hdGlvbiIKK21zZ3N0ciAiV3lqYcWbbmllbmllIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjE5NworbXNnaWQgIk5vIGV4cGxhbmF0aW9uIGF2YWlsYWJsZS4iCittc2dzdHIgIkJyYWsgZG9zdMSZcG5lZ28gd3lqYcWbbmllbmlhLiIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6NjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIlxuIgorIiVzOiAlc1xuIgorbXNnc3RyICIiCisiXG4iCisiXG4iCisiJXM6ICVzXG4iCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjcwCittc2dpZCAiIgorIlxuIgorIlByZXNzIDxlbnRlcj4gdG8gY29udGludWUuIgorbXNnc3RyICIiCisiXG4iCisiV2NpxZtuaWogPGVudGVyPiwgYWJ5IGtvbnR5bnVvd2HEhy4iCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjE2MQorIywgYy1mb3JtYXQKK21zZ2lkICJQcmVzcyA8ZW50ZXI+IHRvIGNvbnRpbnVlLlxuIgorbXNnc3RyICJXY2nFm25paiA8ZW50ZXI+LCBhYnkga29udHludW93YcSHLlxuIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoxNjIKK21zZ2lkICI8c3RhbmRhcmQgZXJyb3I+IgorbXNnc3RyICI8c3RhbmRhcmRvd2Ugd3lqxZtjaWUgYsWCxJlkw7N3PiIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MTY1Cittc2dpZCAiZXJyb3IgcmVhZGluZyBhY2tub3dsZWRnZW1lbnQgb2YgcHJvZ3JhbSBmYWlsdXJlIG1lc3NhZ2UiCittc2dzdHIgIm5pZSBtb8W8bmEgb2Rjenl0YcSHIHBvdHdpZWR6ZW5pYSBrb211bmlrYXTDs3cgYsWCxJlkw7N3IHByb2dyYW11IgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoxOTYKK21zZ2lkICJ1cGRhdGUgYXZhaWxhYmxlIGxpc3Qgc2NyaXB0IgorbXNnc3RyICJha3R1YWxpemFjamEgbGlzdHkgZG9zdMSZcG55Y2ggc2tyeXB0w7N3IgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoyMDAKK21zZ2lkICJpbnN0YWxsYXRpb24gc2NyaXB0IgorbXNnc3RyICJza3J5cHQgaW5zdGFsYWN5am55IgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoyNDYKK21zZ2lkICJxdWVyeS9zZXR1cCBzY3JpcHQiCittc2dzdHIgInNrcnlwdCB6YXB5dGFuaWEvdXN0YXdpYW5pYSIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yIGluIG1ldGhvZCBvcHRpb25zIGZpbGUgYCUuMjUwcycgLS0gJXMiCittc2dzdHIgImLFgsSFZCBza8WCYWRuaSB3IHBsaWt1IG9wY2ppIG1ldG9keSBcIiUuMjUwc1wiIC0tICVzIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzo1OQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciByZWFkaW5nIG9wdGlvbnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmllIG1vxbxuYSBvZGN6eXRhxIcgcGxpa3Ugb3BjamkgXCIlLjI1MHNcIiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgYCUuMjUwcycgZGlyZWN0b3J5IGZvciByZWFkaW5nIG1ldGhvZHMiCittc2dzdHIgIm5pZSBtb8W8bmEgb2Rjenl0YcSHIGthdGFsb2d1IFwiJS4yNTBzXCIgZG8gb2Rjenl0dSBtZXRvZCIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTA2CisjLCBjLWZvcm1hdAorbXNnaWQgIm1ldGhvZCBgJS4yNTBzJyBoYXMgbmFtZSB0aGF0IGlzIHRvbyBsb25nICglZCA+ICVkIGNoYXJhY3RlcnMpIgorbXNnc3RyICJtZXRvZGEgXCIlLjI1MHNcIiBtYSB6YSBkxYJ1Z8SFIG5henfEmSAoJWQgPiAlZCB6bmFrw7N3KSIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTE3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBhY2Nlc3MgbWV0aG9kIHNjcmlwdCBgJS4yNTBzJyIKK21zZ3N0ciAibmllIG1vxbxuYSBvZGN6eXRhxIcgc2tyeXB0dSBvcGNqaSBtZXRvZHkgXCIlLjI1MHNcIiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTIzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIG1ldGhvZCBvcHRpb25zIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5pZSBtb8W8bmEgb2Rjenl0YcSHIHBsaWt1IG9wY2ppIG1ldG9keSBcIiUuMjUwc1wiIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNDcKK21zZ2lkICJub24tZGlnaXQgd2hlcmUgZGlnaXQgd2FudGVkIgorbXNnc3RyICJ6bmFrIG5pZSBixJlkxIVjeSBjeWZyxIUgdGFtIGdkemllIGplc3Qgd3ltYWdhbmEiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE1MAorbXNnaWQgIkVPRiBpbiBpbmRleCBzdHJpbmciCittc2dzdHIgIkVPRiB3IGNpxIVndSB6bmFrw7N3IGluZGVrc3UiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE1MworbXNnaWQgImluZGV4IHN0cmluZyB0b28gbG9uZyIKK21zZ3N0ciAiY2nEhWcgem5ha8OzdyBpbmRla3N1IGplc3QgemEgZMWCdWdpIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNTYKK21zZ2lkICJuZXdsaW5lIGJlZm9yZSBvcHRpb24gbmFtZSBzdGFydCIKK21zZ3N0ciAiem5hayBub3dlaiBsaW5paSBwcnplZCBuYXp3xIUgb3BjamkiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE1OAorbXNnaWQgIkVPRiBiZWZvcmUgb3B0aW9uIG5hbWUgc3RhcnQiCittc2dzdHIgIkVPRiBwcnplZCBuYXp3xIUgb3BjamkiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE2MgorbXNnaWQgIm5vbmFscGhhIHdoZXJlIG9wdGlvbiBuYW1lIHN0YXJ0IHdhbnRlZCIKK21zZ3N0ciAiem5hayBuaWUgYsSZZMSFY3kgbGl0ZXLEhSBuYSBwb2N6xIV0a3UgbmF6d3kgb3BjamkiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE2NAorbXNnaWQgIm5vbi1hbHBoYW51bSBpbiBvcHRpb24gbmFtZSIKK21zZ3N0ciAiem5hayBuaWUgYsSZZMSFY3kgbGl0ZXLEhSBsdWIgY3lmcsSFIHcgbmF6d2llIG9wY2ppIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNjcKK21zZ2lkICJFT0YgaW4gb3B0aW9uIG5hbWUiCittc2dzdHIgIkVPRiB3IG5hendpZSBvcGNqaSIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTcyCittc2dpZCAibmV3bGluZSBiZWZvcmUgc3VtbWFyeSIKK21zZ3N0ciAiem5hayBub3dlaiBsaW5paSBwcnplZCBwb2RzdW1vd2FuaWVtIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNzQKK21zZ2lkICJFT0YgYmVmb3JlIHN1bW1hcnkiCittc2dzdHIgIkVPRiBwcnplZCBwb2RzdW1vd2FuaWVtIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxODAKK21zZ2lkICJFT0YgaW4gc3VtbWFyeSAtIG1pc3NpbmcgbmV3bGluZSIKK21zZ3N0ciAiRU9GIHcgcG9kc3Vtb3dhbml1IC0gYnJhayB6bmFrdSBub3dlaiBsaW5paSIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTkwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIG9wdGlvbiBkZXNjcmlwdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuaWUgbW/FvG5hIG90d29yennEhyBwbGlrdSBvcGlzdSBvcGNqaSBcIiUuMjUwc1wiIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxOTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgb3B0aW9uIGRlc2NyaXB0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5pZSBtb8W8bmEgdXN0YWxpxIcgc3RhbnUgcGxpa3Ugb3Bpc3Ugb3BjamkgJS4yNTBzIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxOTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgb3B0aW9uIGRlc2NyaXB0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5pZSBtb8W8bmEgb2Rjenl0YcSHIHBsaWt1IG9waXN1IG9wY2ppICUuMjUwcyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MjAxCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGR1cmluZyByZWFkIG9mIG9wdGlvbiBkZXNjcmlwdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuaWUgbW/FvG5hIG9kY3p5dGHEhyBwbGlrdSBvcGlzdSBvcGNqaSAlLjI1MHMiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjIyNAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBkdXJpbmcgcmVhZCBvZiBtZXRob2Qgb3B0aW9ucyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuaWUgbW/FvG5hIG9kY3p5dGHEhyBwbGlrdSBvcGNqaSBtZXRvZHkgJS4yNTBzIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gY3VycmVudCBvcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmllIG1vxbxuYSBvdHdvcnp5xIcgcGxpa3UgYmllxbzEhWNlaiBvcGNqaSBcIiUuMjUwc1wiIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyODkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gbmV3IG9wdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuaWUgbW/FvG5hIG90d29yennEhyBwbGlrdSBub3dlaiBvcGNqaSBcIiUuMjUwc1wiIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ldyBvcHRpb24gdG8gYCUuMjUwcyciCittc2dzdHIgIm5pZSBtb8W8bmEgemFwaXNhxIcgbm93ZWogb3BjamkgdyBcIiUuMjUwc1wiIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyOTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIG5ldyBvcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmllIG1vxbxuYSB6YW1rbsSFxIcgcGxpa3Ugbm93ZWogb3BjamkgXCIlLjI1MHNcIiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6Mjk3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyBvcHRpb24gYXMgYCUuMjUwcyciCittc2dzdHIgIm5pZSBtb8W8bmEgemFpbnN0YWxvd2HEhyBub3dlaiBvcGNqaSBqYWtvIFwiJS4yNTBzXCIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzozNgorbXNnaWQgIm5ldyBwYWNrYWdlIgorbXNnc3RyICJub3d5IHBha2lldCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjM3Cittc2dpZCAiaW5zdGFsbCIKK21zZ3N0ciAiaW5zdGFsYWNqYSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjM4Cittc2dpZCAiaG9sZCIKK21zZ3N0ciAid3N0cnp5bWFueSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjM5Cittc2dpZCAicmVtb3ZlIgorbXNnc3RyICJ1c3V3YW5pZSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjQwCittc2dpZCAicHVyZ2UiCittc2dzdHIgInd5Y3p5c3pjem9ueSIKKworIy4gVFJBTlNMQVRPUlM6IFRoZSBzcGFjZSBpcyBhIHRyaWNrIHRvIHdvcmsgYXJvdW5kIGdldHRleHQgd2hpY2ggdXNlcworIy4gKiB0aGUgZW1wdHkgc3RyaW5nIHRvIHN0b3JlIGluZm9ybWF0aW9uIGFib3V0IHRoZSB0cmFuc2xhdGlvbi4gRE8gTk9UCisjLiAqIENIQU5HRSBUSEFUIElOIEEgVFJBTlNMQVRJT04hIFRoZSBjb2RlIHJlYWxseSByZWxpZXMgb24gdGhhdCBiZWluZworIy4gKiBhIHNpbmdsZSBzcGFjZS4KKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo0NworbXNnaWQgIiAiCittc2dzdHIgIiAiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo0OAorbXNnaWQgIlJFSU5TVEFMTCIKK21zZ3N0ciAiUkVJTlNUQUxBQ0pBIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTEKK21zZ2lkICJub3QgaW5zdGFsbGVkIgorbXNnc3RyICJuaWUgemFpbnN0YWxvd2FueSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjUyCittc2dpZCAicmVtb3ZlZCAoY29uZmlncyByZW1haW4pIgorbXNnc3RyICJ1c3VuacSZdHkgKHpvc3RhxYJ5IHBsaWtpIGtvbmZpZ3VyYWN5am5lKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjUzCittc2dpZCAiaGFsZiBpbnN0YWxsZWQiCittc2dzdHIgIndww7PFgiB6YWluc3RhbG93YW55IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTQKK21zZ2lkICJ1bnBhY2tlZCAobm90IHNldCB1cCkiCittc2dzdHIgInJvenBha293YW55IChuaWUgc2tvbmZpZ3Vyb3dhbnkpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTUKK21zZ2lkICJoYWxmIGNvbmZpZ3VyZWQgKGNvbmZpZyBmYWlsZWQpIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1NgorbXNnaWQgImF3YWl0aW5nIHRyaWdnZXIgcHJvY2Vzc2luZyIKK21zZ3N0ciAib2N6ZWtpd2FuaWUgbmEgcHJ6ZXR3b3J6ZW5pZSB3eXp3YWxhY3p5IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTcKK21zZ2lkICJ0cmlnZ2VyZWQiCittc2dzdHIgInd5endhbGFjeiBwb2J1ZHpvbnkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1OAorbXNnaWQgImluc3RhbGxlZCIKK21zZ3N0ciAiemFpbnN0YWxvd2FueSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjYxCittc2dpZCAiUmVxdWlyZWQiCittc2dzdHIgIld5bWFnYW5lIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjIKK21zZ2lkICJJbXBvcnRhbnQiCittc2dzdHIgIldhxbxuZSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjYzCittc2dpZCAiU3RhbmRhcmQiCittc2dzdHIgIlp3eWN6YWpuZSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjY0Cittc2dpZCAiT3B0aW9uYWwiCittc2dzdHIgIk9wY2pvbmFsbmUiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo2NQorbXNnaWQgIkV4dHJhIgorbXNnc3RyICJEb2RhdGtvd2UiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo2NgorbXNnaWQgIiFCdWchIgorbXNnc3RyICIhQsWCxIVkISIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjY3Cittc2dpZCAiVW5jbGFzc2lmaWVkIgorbXNnc3RyICJOaWVza2xhc3lmaWtvd2FuZSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjcwCittc2dpZCAic3VnZ2VzdHMiCittc2dzdHIgInN1Z2VydWplIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzEKK21zZ2lkICJyZWNvbW1lbmRzIgorbXNnc3RyICJwb2xlY2EiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3MgorbXNnaWQgImRlcGVuZHMgb24iCittc2dzdHIgInd5bWFnYSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjczCittc2dpZCAicHJlLWRlcGVuZHMgb24iCittc2dzdHIgInd5bWFnYSB3c3TEmXBuaWUiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3NAorbXNnaWQgImJyZWFrcyIKK21zZ3N0ciAidXN6a2FkemEiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3NQorbXNnaWQgImNvbmZsaWN0cyB3aXRoIgorbXNnc3RyICJ3IGtvbmZsaWtjaWUgeiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjc2Cittc2dpZCAicHJvdmlkZXMiCittc2dzdHIgImRvc3RhcmN6YSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjc3Cittc2dpZCAicmVwbGFjZXMiCittc2dzdHIgInd5bWllbmlhIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzgKK21zZ2lkICJlbmhhbmNlcyIKK21zZ3N0ciAicm96c3plcnphIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODEKK21zZ2lkICJSZXEiCittc2dzdHIgIld5bSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjgyCittc2dpZCAiSW1wIgorbXNnc3RyICJXYcW8IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODMKK21zZ2lkICJTdGQiCittc2dzdHIgIlp3eSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjg0Cittc2dpZCAiT3B0IgorbXNnc3RyICJPcGMiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4NQorbXNnaWQgIlh0ciIKK21zZ3N0ciAiRG9kIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODYKK21zZ2lkICJiVUciCittc2dzdHIgIkLFgsSFIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODcKK21zZ2lkICI/IgorbXNnc3RyICI/IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6OTUgZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExNQorbXNnaWQgIkJyb2tlbiIKK21zZ3N0ciAiVXN6a29kem9uZSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjk2Cittc2dpZCAiTmV3IgorbXNnc3RyICJOb3dlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6OTcKK21zZ2lkICJVcGRhdGVkIgorbXNnc3RyICJEbyBha3R1YWxpemFjamkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo5OAorbXNnaWQgIk9ic29sZXRlL2xvY2FsIgorbXNnc3RyICJXeWNvZmFuZS9sb2thbG5lIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6OTkKK21zZ2lkICJVcC10by1kYXRlIgorbXNnc3RyICJBa3R1YWxuZSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwMAorbXNnaWQgIkF2YWlsYWJsZSIKK21zZ3N0ciAiRG9zdMSZcG5lIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTAxIGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTcKK21zZ2lkICJSZW1vdmVkIgorbXNnc3RyICJVc3VuacSZdGUiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDIgZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExMQorbXNnaWQgIkJyb2tlbmx5IGluc3RhbGxlZCBwYWNrYWdlcyIKK21zZ3N0ciAiUGFraWV0eSB1c3prb2R6b25lIHBvZGN6YXMgaW5zdGFsYWNqaSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwMworbXNnaWQgIk5ld2x5IGF2YWlsYWJsZSBwYWNrYWdlcyIKK21zZ3N0ciAiUGFraWV0eSBub3dvIGRvc3TEmXBuZSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwNAorbXNnaWQgIlVwZGF0ZWQgcGFja2FnZXMgKG5ld2VyIHZlcnNpb24gaXMgYXZhaWxhYmxlKSIKK21zZ3N0ciAiUGFraWV0eSBkbyBha3R1YWxpemFjamkgKGRvc3TEmXBuYSBub3dzemEgd2Vyc2phKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwNQorbXNnaWQgIk9ic29sZXRlIGFuZCBsb2NhbCBwYWNrYWdlcyBwcmVzZW50IG9uIHN5c3RlbSIKK21zZ3N0ciAiUGFraWV0eSB3eWNvZmFuZSBsdWIgZG9zdMSZcG5lIHR5bGtvIGxva2FsbmllIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTA2Cittc2dpZCAiVXAgdG8gZGF0ZSBpbnN0YWxsZWQgcGFja2FnZXMiCittc2dzdHIgIlBha2lldHkgYWt0dWFsbmUiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDcKK21zZ2lkICJBdmFpbGFibGUgcGFja2FnZXMgKG5vdCBjdXJyZW50bHkgaW5zdGFsbGVkKSIKK21zZ3N0ciAiUGFraWV0eSBkb3N0xJlwbmUgKGplc3pjemUgbmllIHphaW5zdGFsb3dhbmUpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTA4Cittc2dpZCAiUmVtb3ZlZCBhbmQgbm8gbG9uZ2VyIGF2YWlsYWJsZSBwYWNrYWdlcyIKK21zZ3N0ciAiUGFraWV0eSB1c3VuacSZdGUgaSBqdcW8IG5pZWRvc3TEmXBuZSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExMgorbXNnaWQgIkluc3RhbGxlZCBwYWNrYWdlcyIKK21zZ3N0ciAiUGFraWV0eSB6YWluc3RhbG93YW5lIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTEzCittc2dpZCAiUmVtb3ZlZCBwYWNrYWdlcyAoY29uZmlndXJhdGlvbiBzdGlsbCBwcmVzZW50KSIKK21zZ3N0ciAiUGFraWV0eSB1c3VuacSZdGUgKHBvem9zdGHFgnkgcGxpa2kga29uZmlndXJhY3lqbmUpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTE0Cittc2dpZCAiUHVyZ2VkIHBhY2thZ2VzIGFuZCB0aG9zZSBuZXZlciBpbnN0YWxsZWQiCittc2dzdHIgIlBha2lldHkgd3ljenlzemN6b25lIGkgbmllIHphaW5zdGFsb3dhbmUiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTYKK21zZ2lkICJJbnN0YWxsZWQiCittc2dzdHIgIlphaW5zdGFsb3dhbmUiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTgKK21zZ2lkICJQdXJnZWQiCittc2dzdHIgIld5Y3p5c3pjem9uZSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjE5OAorbXNnaWQgImRzZWxlY3QgLSByZWN1cnNpdmUgcGFja2FnZSBsaXN0aW5nIgorbXNnc3RyICJkc2VsZWN0IC0gbGlzdGEga29uZmxpa3TDs3ciCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxOTkKK21zZ2lkICJkc2VsZWN0IC0gaW5zcGVjdGlvbiBvZiBwYWNrYWdlIHN0YXRlcyIKK21zZ3N0ciAiZHNlbGVjdCAtIHN0YW4gcGFraWV0w7N3IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjAwCittc2dpZCAiZHNlbGVjdCAtIG1haW4gcGFja2FnZSBsaXN0aW5nIgorbXNnc3RyICJkc2VsZWN0IC0gbGlzdGEgcGFraWV0w7N3IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjA4Cittc2dpZCAiIChieSBzZWN0aW9uKSIKK21zZ3N0ciAiICh3ZyBzZWtjamkpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjExCittc2dpZCAiIChhdmFpbC4sIHNlY3Rpb24pIgorbXNnc3RyICIgKGRvc3TEmXBuLiwgc2VrY2phKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIxNAorbXNnaWQgIiAoc3RhdHVzLCBzZWN0aW9uKSIKK21zZ3N0ciAiIChzdGFuLCBzZWtjamEpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjIzCittc2dpZCAiIChieSBwcmlvcml0eSkiCittc2dzdHIgIiAod2cgcHJpb3J5dGV0dSkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMjYKK21zZ2lkICIgKGF2YWlsLiwgcHJpb3JpdHkpIgorbXNnc3RyICIgKGRvc3TEmXBuLiwgcHJpb3J5dGV0KSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIyOQorbXNnaWQgIiAoc3RhdHVzLCBwcmlvcml0eSkiCittc2dzdHIgIiAoc3RhbiwgcHJpb3J5dGV0KSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIzOCBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjUwCittc2dpZCAiIChhbHBoYWJldGljYWxseSkiCittc2dzdHIgIiAoYWxmYWJldHljem5pZSkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNDEKK21zZ2lkICIgKGJ5IGF2YWlsYWJpbGl0eSkiCittc2dzdHIgIiAod2cgZG9zdMSZcG5vxZtjaSkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNDQKK21zZ2lkICIgKGJ5IHN0YXR1cykiCittc2dzdHIgIiAod2cgc3RhbnUpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjU4Cittc2dpZCAiIG1hcms6Ky89Ly0gdGVyc2U6diBoZWxwOj8iCittc2dzdHIgIiB3eWLDs3I6Ky89Ly0gb2fDs2xuaWU6diBwb21vYzo/IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjU5Cittc2dpZCAiIG1hcms6Ky89Ly0gdmVyYm9zZTp2IGhlbHA6PyIKK21zZ3N0ciAiIHd5YsOzcjorLz0vLSBzemN6ZWfDs8WCb3dvOnYgcG9tb2M6PyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI2MAorbXNnaWQgIiB0ZXJzZTp2IGhlbHA6PyIKK21zZ3N0ciAiIG9nw7NsbmllOnYgcG9tb2M6PyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI2MQorbXNnaWQgIiB2ZXJib3NlOnYgaGVscDo/IgorbXNnc3RyICIgc3pjemVnw7PFgm93bzp2IHBvbW9jOj8iCisKKyM6IGRzZWxlY3QvcGtnaW5mby5jYzo4MAorbXNnaWQgIiIKKyJUaGUgbGluZSB5b3UgaGF2ZSBoaWdobGlnaHRlZCByZXByZXNlbnRzIG1hbnkgcGFja2FnZXM7IGlmIHlvdSBhc2sgdG8gIgorImluc3RhbGwsIHJlbW92ZSwgaG9sZCwgZXRjLiBpdCB5b3Ugd2lsbCBhZmZlY3QgYWxsIHRoZSBwYWNrYWdlcyB3aGljaCBtYXRjaCAiCisidGhlIGNyaXRlcmlvbiBzaG93bi5cbiIKKyJcbiIKKyJJZiB5b3UgbW92ZSB0aGUgaGlnaGxpZ2h0IHRvIGEgbGluZSBmb3IgYSBwYXJ0aWN1bGFyIHBhY2thZ2UgeW91IHdpbGwgc2VlICIKKyJpbmZvcm1hdGlvbiBhYm91dCB0aGF0IHBhY2thZ2UgZGlzcGxheWVkIGhlcmUuXG4iCisiWW91IGNhbiB1c2UgYG8nIGFuZCBgTycgdG8gY2hhbmdlIHRoZSBzb3J0IG9yZGVyIGFuZCBnaXZlIHlvdXJzZWxmIHRoZSAiCisib3Bwb3J0dW5pdHkgdG8gbWFyayBwYWNrYWdlcyBpbiBkaWZmZXJlbnQga2luZHMgb2YgZ3JvdXBzLiIKK21zZ3N0ciAiIgorIlBvZMWbd2lldGxvbmEgbGluaWEgcmVwcmV6ZW50dWplIHdpZWxlIHBha2lldMOzdzsgamXFvGVsaSB6b3N0YW5pZSB3eWJyYW5hICIKKyJvcGVyYWNqYSBpbnN0YWxhY2ppLCB1c3VuacSZY2lhLCB3eWN6eXN6Y3plbmlhIGx1YiB3c3RyenltYW5pYSwgZG90eWN6ecSHICIKKyJixJlkemllIHdzenlzdGtpY2ggcGFraWV0w7N3LCBrdMOzcmUgb2Rwb3dpYWRhasSFIHBvZGFuZW11IGtyeXRlcml1bS5cbiIKKyJcbiIKKyJNb8W8bmEgcHJ6ZXN1bsSFxIcga3Vyc29yLCBhYnkgd3licmHEhyBrb25rcmV0bnkgcGFraWV0IG9yYXogdXp5c2thxIcgaW5mb3JtYWNqZSAiCisibyBuaW0uXG4iCisiTW/FvG5hIHXFvHnEhyBcIm9cIiBsdWIgXCJPXCIsIGFieSB6bWllbmnEhyBrb2xlam5vxZvEhyB1cG9yesSFZGtvd2FuaWEgcGFraWV0w7N3ICIKKyJsdWIgemF6bmFjennEhyBwYWtpZXR5IHogaW5ueWNoIGdydXAuIgorCisjOiBkc2VsZWN0L3BrZ2luZm8uY2M6OTMKK21zZ2lkICJJbnRlcnJlbGF0aW9uc2hpcHMiCittc2dzdHIgIlJlbGFjamUiCisKKyM6IGRzZWxlY3QvcGtnaW5mby5jYzoxMTIKK21zZ2lkICJObyBkZXNjcmlwdGlvbiBhdmFpbGFibGUuIgorbXNnc3RyICJCcmFrIGRvc3TEmXBuZWdvIG9waXN1LiIKKworIzogZHNlbGVjdC9wa2dpbmZvLmNjOjEzMAorbXNnaWQgIkluc3RhbGxlZCBjb250cm9sIGZpbGUgaW5mb3JtYXRpb24iCittc2dzdHIgIkluZm9ybWFjamUgbyB6YWluc3RhbG93YW5laiB3ZXJzamkgcGFraWV0dSIKKworIzogZHNlbGVjdC9wa2dpbmZvLmNjOjE0NgorbXNnaWQgIkF2YWlsYWJsZSBjb250cm9sIGZpbGUgaW5mb3JtYXRpb24iCittc2dzdHIgIkluZm9ybWFjamUgbyBkb3N0xJlwbmVqIHdlcnNqaSBwYWtpZXR1IgorCisjOiBkc2VsZWN0L3BrZ2xpc3QuY2M6NDE2Cittc2dpZCAiVGhlcmUgYXJlIG5vIHBhY2thZ2VzLiIKK21zZ3N0ciAiTmllIG1hIMW8YWRueWNoIHBha2lldMOzdy4iCisKKyM6IGRzZWxlY3QvcGtnbGlzdC5jYzo1MDcKK21zZ2lkICJpbnZhbGlkIHNlYXJjaCBvcHRpb24gZ2l2ZW4iCittc2dzdHIgIm5pZXByYXdpZMWCb3dhIG9wY2phIHd5c3p1a2l3YW5pYSIKKworIzogZHNlbGVjdC9wa2dsaXN0LmNjOjUyMQorbXNnaWQgImVycm9yIGluIHJlZ3VsYXIgZXhwcmVzc2lvbiIKK21zZ3N0ciAiYsWCxIVkIHcgd3lyYcW8ZW5pdSByZWd1bGFybnltIgorCisjOiBkc2VsZWN0L3BrZ3N1Ymxpc3QuY2M6MTA3Cittc2dpZCAiIGRvZXMgbm90IGFwcGVhciB0byBiZSBhdmFpbGFibGVcbiIKK21zZ3N0ciAiIG5pZSB3eWRhamUgc2nEmSBiecSHIGRvc3TEmXBueVxuIgorCisjOiBkc2VsZWN0L3BrZ3N1Ymxpc3QuY2M6MTI3Cittc2dpZCAiIG9yICIKK21zZ3N0ciAiIGx1YiAiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjU3Cittc2dpZCAiQWxsIgorbXNnc3RyICJXc3p5c3RraWUiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjc5Cittc2dpZCAiQWxsIHBhY2thZ2VzIgorbXNnc3RyICJXc3p5c3RraWUgcGFraWV0eSIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcGFja2FnZXMgd2l0aG91dCBhIHNlY3Rpb24iCittc2dzdHIgIiVzIHBha2lldHkgYmV6IHNla2NqaSIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcGFja2FnZXMgaW4gc2VjdGlvbiAlcyIKK21zZ3N0ciAiJXMgcGFraWV0eSB3IHNla2NqaSAlcyIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6OTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgJXMgcGFja2FnZXMiCittc2dzdHIgIiVzICVzIHBha2lldHkiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjk1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzICVzIHBhY2thZ2VzIHdpdGhvdXQgYSBzZWN0aW9uIgorbXNnc3RyICIlcyAlcyBwYWtpZXR5IGJleiBzZWtjamkiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjk3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzICVzIHBhY2thZ2VzIGluIHNlY3Rpb24gJXMiCittc2dzdHIgIiVzICVzIHBha2lldHkgdyBzZWtjamkgJXMiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjExOAorIywgYy1mb3JtYXQKK21zZ2lkICIlLSpzICVzJXMlczsgICVzICh3YXM6ICVzKS4gICVzIgorbXNnc3RyICIlLSpzICVzJXMlczsgICVzIChiecWCOiAlcykuICAlcyIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6MjYzCittc2dpZCAiRXJyb3IiCittc2dzdHIgIkLFgsSFZCIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6MjY3Cittc2dpZCAiSW5zdGFsbGVkPyIKK21zZ3N0ciAiemFpbnN0YWxvd2FueT8iCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI3MQorbXNnaWQgIk9sZCBtYXJrIgorbXNnc3RyICJQb3ByemVkbmkgd3liw7NyIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyNzUKK21zZ2lkICJNYXJrZWQgZm9yIgorbXNnc3RyICJaYXpuYWN6b255IGRvIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyNzgKK21zZ2lkICJFSU9NIgorbXNnc3RyICJFSU9NIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyODAKK21zZ2lkICJTZWN0aW9uIgorbXNnc3RyICJTZWtjamEiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI4MQorbXNnaWQgIlByaW9yaXR5IgorbXNnc3RyICJQcmlvcnl0ZXQiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI4MgorbXNnaWQgIlBhY2thZ2UiCittc2dzdHIgIlBha2lldCIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6Mjg2Cittc2dpZCAiSW5zdC52ZXIiCittc2dzdHIgIlphaW5zdC4iCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI4OQorbXNnaWQgIkF2YWlsLnZlciIKK21zZ3N0ciAiRG9zdMSZcG5lIgorCisjfiBtc2dpZCAicmV0dXJuZWQgZXJyb3IgZXhpdCBzdGF0dXMgJWQuXG4iCisjfiBtc2dzdHIgIm90cnp5bWFubyBrb2QgcG93cm90dSAlZC5cbiIKKworI34gbXNnaWQgIndhcyBpbnRlcnJ1cHRlZC5cbiIKKyN+IG1zZ3N0ciAiem9zdGHFgiBwcnplcndhbnkuXG4iCisKKyN+IG1zZ2lkICJ3YXMgdGVybWluYXRlZCBieSBhIHNpZ25hbDogJXMuXG4iCisjfiBtc2dzdHIgInpvc3RhxYIgemFrb8WEY3pvbnkgc3lnbmHFgmVtOiAlcy5cbiIKKworI34gbXNnaWQgIihJdCBsZWZ0IGEgY29yZWR1bXAuKVxuIgorI34gbXNnc3RyICIoUG96b3N0YXdpxYIgcGxpayBjb3JlLilcbiIKKworI34gbXNnaWQgImZhaWxlZCB3aXRoIGFuIHVua25vd24gd2FpdCByZXR1cm4gY29kZSAlZC5cbiIKKyN+IG1zZ3N0ciAiZnVua2NqYSBcIndhaXRcIiB6d3LDs2NpxYJhIG5pZXJvenBvem5hbnkga29kIGLFgsSZZHUgJWQuXG4iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcnVuICUuMjUwcyBwcm9jZXNzIGAlLjI1MHMnIgorI34gbXNnc3RyICJuaWUgbW/FvG5hIHVydWNob21pxIcgcHJvY2VzdSAlLjI1MHMgXCIlLjI1MHNcIiIKKworI34gbXNnaWQgImZhaWxlZCBjb25maWciCisjfiBtc2dzdHIgImLFgsSZZG5hIGtvbmZpZ3VyYWNqYSIKKworI34gbXNnaWQgInVuYWJsZSB0byB3YWl0IGZvciAlLjI1MHMiCisjfiBtc2dzdHIgIm5pZSBtb8W8bmEgd3lrb25hxIcgZnVua2NqaSBcIndhaXRcIiBkbGEgXCIlLjI1MHNcIiIKKworI34gbXNnaWQgImdvdCB3cm9uZyBjaGlsZCdzIHN0YXR1cyAtIGFza2VkIGZvciAlbGQsIGdvdCAlbGQiCisjfiBtc2dzdHIgIiIKKyN+ICJwcm9jZXMgcG90b21ueSB6d3LDs2NpxYIgesWCeSBrb2QgcG93cm90dSAtIHNwb2R6aWV3YW5vIHNpxJkgJWxkLCBvdHJ6eW1hbm8gIgorI34gIiVsZCIKKworI34gbXNnaWQgIlJlY29tbWVuZGVkIgorI34gbXNnc3RyICJQb2xlY2FuZSIKKworI34gbXNnaWQgIkNvbnRyaWIiCisjfiBtc2dzdHIgIlNlcndpc293YW5lIgorCisjfiBtc2dpZCAiUmVjIgorI34gbXNnc3RyICJQb2wiCisKKyN+IG1zZ2lkICJDdGIiCisjfiBtc2dzdHIgIlNlciIKKworI34gbXNnaWQgIiIKKyN+ICJiYXNlbGlzdDo6c3RhcnRkaXNwbGF5KCkgZG9uZSAuLi5cbiIKKyN+ICJcbiIKKyN+ICIgeG1heD0lZCwgeW1heD0lZDtcbiIKKyN+ICJcbiIKKyN+ICIgdGl0bGVfaGVpZ2h0PSVkLCBjb2xoZWFkc19oZWlnaHQ9JWQsIGxpc3RfaGVpZ2h0PSVkO1xuIgorI34gIiB0aGlzc3RhdGVfaGVpZ2h0PSVkLCBpbmZvX2hlaWdodD0lZCwgd2hhdGluZm9faGVpZ2h0PSVkO1xuIgorI34gIlxuIgorI34gIiBjb2xoZWFkc19yb3c9JWQsIHRoaXNzdGF0ZV9yb3c9JWQsIGluZm9fcm93PSVkO1xuIgorI34gIiB3aGF0aW5mb19yb3c9JWQsIGxpc3Rfcm93PSVkO1xuIgorI34gIlxuIgorI34gbXNnc3RyICIiCisjfiAiYmFzZWxpc3Q6OnN0YXJ0ZGlzcGxheSgpIGRvbmUgLi4uXG4iCisjfiAiXG4iCisjfiAiIHhtYXg9JWQsIHltYXg9JWQ7XG4iCisjfiAiXG4iCisjfiAiIHRpdGxlX2hlaWdodD0lZCwgY29saGVhZHNfaGVpZ2h0PSVkLCBsaXN0X2hlaWdodD0lZDtcbiIKKyN+ICIgdGhpc3N0YXRlX2hlaWdodD0lZCwgaW5mb19oZWlnaHQ9JWQsIHdoYXRpbmZvX2hlaWdodD0lZDtcbiIKKyN+ICJcbiIKKyN+ICIgY29saGVhZHNfcm93PSVkLCB0aGlzc3RhdGVfcm93PSVkLCBpbmZvX3Jvdz0lZDtcbiIKKyN+ICIgd2hhdGluZm9fcm93PSVkLCBsaXN0X3Jvdz0lZDtcbiIKKyN+ICJcbiIKKworI34gbXNnaWQgIltub25lXSIKKyN+IG1zZ3N0ciAiW2JyYWtdIgorCisjfiBtc2dpZCAiZXJyb3IgdW4tY2F0Y2hpbmcgc2lnbmFsICVkOiAlc1xuIgorI34gbXNnc3RyICJuaWUgbW/FvG5hIG9kenlza2HEhyBzeWduYcWCdSAlZDogJXNcbiIKKworI34gbXNnaWQgInVuYWJsZSB0byBpZ25vcmUgc2lnbmFsICVkIGJlZm9yZSBydW5uaW5nICUuMjUwcyIKKyN+IG1zZ3N0ciAibmllIG1vxbxuYSB6aWdub3Jvd2HEhyBzeWduYcWCdSAlZCBwcnplZCB3eWtvbmFuaWVtICUuMjUwcyIKKworI34gbXNnaWQgIihubyBjbGllbnRkYXRhKSIKKyN+IG1zZ3N0ciAiKGJyYWsgZGFueWNoKSIKKworI34gbXNnaWQgIjxudWxsPiIKKyN+IG1zZ3N0ciAiPHB1c3RlPiIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9wdC5nbW8gYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vcHQuZ21vCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmE5MzFlODUKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vcHQuZ21vCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9wdC5wbyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9wdC5wbwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mZGI0NTg5Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL3B0LnBvCkBAIC0wLDAgKzEsMTcyNyBAQAorIyBQVCB0cmFuc2xhdGlvbiBmb3IgZHBrZy4KKyMgQ29weXJpZ2h0IChDKSAyMDA0IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgorIyBNaWd1ZWwgRmlndWVpcmVkbyA8ZWxtaWdAZGViaWFucHQub3JnPiwgMjAwNC0yMDA4LgorIworbXNnaWQgIiIKK21zZ3N0ciAiIgorIlByb2plY3QtSWQtVmVyc2lvbjogZHNlbGVjdFxuIgorIlJlcG9ydC1Nc2dpZC1CdWdzLVRvOiBkZWJpYW4tZHBrZ0BsaXN0cy5kZWJpYW4ub3JnXG4iCisiUE9ULUNyZWF0aW9uLURhdGU6IDIwMTEtMTAtMTQgMDc6MTErMDIwMFxuIgorIlBPLVJldmlzaW9uLURhdGU6IDIwMDgtMTItMjcgMTY6MDUrMDAwMFxuIgorIkxhc3QtVHJhbnNsYXRvcjogTWlndWVsIEZpZ3VlaXJlZG8gPGVsbWlnQGRlYmlhbnB0Lm9yZz5cbiIKKyJMYW5ndWFnZS1UZWFtOiBQb3J0dWd1ZXNlIDx0cmFkdXpAZGViaWFucHQub3JnPlxuIgorIkxhbmd1YWdlOiBwdFxuIgorIk1JTUUtVmVyc2lvbjogMS4wXG4iCisiQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PVVURi04XG4iCisiQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdFxuIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjEyNQorbXNnaWQgIlNlYXJjaCBmb3IgPyAiCittc2dzdHIgIlByb2N1cmFyIHBvciA/ICIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxNDcKK21zZ2lkICJFcnJvcjogIgorbXNnc3RyICJFcnJvOiAiCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MTc4Cittc2dpZCAiSGVscDogIgorbXNnc3RyICJBanVkYTogIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE4NAorbXNnaWQgIlByZXNzID8gZm9yIGhlbHAgbWVudSwgLiBmb3IgbmV4dCB0b3BpYywgPHNwYWNlPiB0byBleGl0IGhlbHAuIgorbXNnc3RyICIiCisiVGVjbGEgPyBwYXJhIG1lbnUgYWp1ZGEsIC4gcGFyYSBwcsOzeGltbyB0w7NwaWNvLCA8ZXNwYcOnbz4gc2FpciBkYSBhanVkYS4iCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MTkxCittc2dpZCAiSGVscCBpbmZvcm1hdGlvbiBpcyBhdmFpbGFibGUgdW5kZXIgdGhlIGZvbGxvd2luZyB0b3BpY3M6IgorbXNnc3RyICJJbmZvcm1hw6fDo28gZGUgYWp1ZGEgZXN0w6EgZGlzcG9uw612ZWwgc29iIG9zIHNlZ3VpbnRlcyB0w7NwaWNvczoiCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MTk5Cittc2dpZCAiIgorIlByZXNzIGEga2V5IGZyb20gdGhlIGxpc3QgYWJvdmUsIDxzcGFjZT4gb3IgYHEnIHRvIGV4aXQgaGVscCxcbiIKKyIgIG9yIGAuJyAoZnVsbCBzdG9wKSB0byByZWFkIGVhY2ggaGVscCBwYWdlIGluIHR1cm4uICIKK21zZ3N0ciAiIgorIkNhcnJlZ3VlIG51bWEgdGVjbGEgZGEgbGlzdGEgYWNpbWEsIDxlc3Bhw6dvPiBvdSBgcScgcGFyYSBzYWlyIGRhIGFqdWRhLFxuIgorIiAgb3UgYC4nIChwb250byBmaW5hbCkgcGFyYSBsZXIgZGUgY2FkYSB2ZXogdW1hIHDDoWdpbmEgZGUgYWp1ZGEuIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjIwNQorbXNnaWQgImVycm9yIHJlYWRpbmcga2V5Ym9hcmQgaW4gaGVscCIKK21zZ3N0ciAiZXJybyBsZW5kbyBvIHRlY2xhZG8gbmEgYWp1ZGEiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6NTcKK21zZ2lkICJpb2N0bChUSU9DR1dJTlNaKSBmYWlsZWQiCittc2dzdHIgImlvY3RsKFRJT0NHV0lOU1opIGZhbGhvdSIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo2MAorbXNnaWQgImRvdXBkYXRlIGluIFNJR1dJTkNIIGhhbmRsZXIgZmFpbGVkIgorbXNnc3RyICJkb3VwZGF0ZSBubyBTSUdXSU5DSCBoYW5kbGVyIGZhbGhvdSIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo2NworbXNnaWQgImZhaWxlZCB0byByZXN0b3JlIG9sZCBTSUdXSU5DSCBzaWdhY3QiCittc2dzdHIgImZhbGhvdSByZXN0YXVyYXIgbyBhbnRpZ28gU0lHV0lOQ0ggc2lnYWN0IgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjY5Cittc2dpZCAiZmFpbGVkIHRvIHJlc3RvcmUgb2xkIHNpZ25hbCBtYXNrIgorbXNnc3RyICJmYWxob3UgcmVzdGF1cmFyIGEgYW50aWdhIG3DoXNjYXJhIGRlIHNpbmFsIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjc5Cittc2dpZCAiZmFpbGVkIHRvIGdldCBvbGQgc2lnbmFsIG1hc2siCittc2dzdHIgImZhbGhvdSBvYnRlciBhIHZlbGhhIG3DoXNjYXJhIGRlIHNpbmFsIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjgwCittc2dpZCAiZmFpbGVkIHRvIGdldCBvbGQgU0lHV0lOQ0ggc2lnYWN0IgorbXNnc3RyICJmYWxob3Ugb2J0ZXIgbyBhbnRpZ28gU0lHV0lOQ0ggc2lnYWN0IgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjg0Cittc2dpZCAiZmFpbGVkIHRvIGJsb2NrIFNJR1dJTkNIIgorbXNnc3RyICJmYWxob3UgYmxvcXVlYXIgU0lHV0lOQ0giCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6ODkKK21zZ2lkICJmYWlsZWQgdG8gc2V0IG5ldyBTSUdXSU5DSCBzaWdhY3QiCittc2dzdHIgImZhbGhvdSBkZWZpbmlyIG8gbm92byBTSUdXSU5DSCBzaWdhY3QiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTI2Cittc2dpZCAiZmFpbGVkIHRvIGFsbG9jYXRlIGNvbG91ciBwYWlyIgorbXNnc3RyICJmYWxob3UgYWxvY2FyIHBhciBkZSBjb3JlcyIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxNjcKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHRpdGxlIHdpbmRvdyIKK21zZ3N0ciAiZmFsaG91IGNyaWFyIG8gdMOtdHVsbyBkYSBqYW5lbGEiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTcxCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSB3aGF0aW5mbyB3aW5kb3ciCittc2dzdHIgImZhbGhvdSBjcmlhciBhIGphbmVsYSB3aGF0aW5mbyIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxNzUKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGJhc2VsaXN0IHBhZCIKK21zZ3N0ciAiZmFsaG91IGFvIGNyaWFyIGJhc2VsaXN0IHBhZCIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxNzgKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGhlYWRpbmcgcGFkIgorbXNnc3RyICJmYWxob3UgYW8gY3JpYXIgaGVhZGluZyBwYWQiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTgyCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSB0aGlzc3RhdGUgcGFkIgorbXNnc3RyICJmYWxob3UgYW8gY3JpYXIgdGhpc3N0YXRlIHBhZCIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxODYKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGluZm8gcGFkIgorbXNnc3RyICJmYWxob3UgYW8gY3JpYXIgaW5mbyBwYWQiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTkxCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBxdWVyeSB3aW5kb3ciCittc2dzdHIgImZhbGhvdSBhbyBjcmlhciBqYW5lbGEgZGUgcXVlcnkiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MjU1Cittc2dpZCAiS2V5YmluZGluZ3MiCittc2dzdHIgIktleWJpbmRpbmdzIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjMwMworIywgYy1mb3JtYXQKK21zZ2lkICIgIC0tICVkJSUsIHByZXNzICIKK21zZ3N0ciAiICAtLSAlZCUlLCBwcmVzc2lvbmUgIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjMwNgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBmb3IgbW9yZSIKK21zZ3N0ciAiJXMgcGFyYSBtYWlzIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjMxMAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyB0byBnbyBiYWNrIgorbXNnc3RyICIlcyBwYXJhIHZvbHRhciBhdHLDoXMiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6NzgKK21zZ2lkICJbbm90IGJvdW5kXSIKK21zZ3N0ciAiW27Do28gbGlnYWRvXSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzo4MgorIywgYy1mb3JtYXQKK21zZ2lkICJbdW5rOiAlZF0iCittc2dzdHIgIltkZXNjb25oZWNpZG86ICVkXSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxMzkKK21zZ2lkICJTY3JvbGwgb253YXJkcyB0aHJvdWdoIGhlbHAvaW5mb3JtYXRpb24iCittc2dzdHIgIlNjcm9sbCBwYXJhIGEgZnJlbnRlIGF0cmF2w6lzIGRhIGFqdWRhL2luZm9ybWHDp8OjbyIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDAKK21zZ2lkICJTY3JvbGwgYmFja3dhcmRzIHRocm91Z2ggaGVscC9pbmZvcm1hdGlvbiIKK21zZ3N0ciAiU2Nyb2xsIHBhcmEgdHLDoXMgYXRyYXbDqXMgZGEgYWp1ZGEvaW5mb3JtYcOnw6NvIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0MQorbXNnaWQgIk1vdmUgdXAiCittc2dzdHIgIk1vdmVyIGFjaW1hIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0MgorbXNnaWQgIk1vdmUgZG93biIKK21zZ3N0ciAiTW92ZXIgYWJhaXhvIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0MworbXNnaWQgIkdvIHRvIHRvcCBvZiBsaXN0IgorbXNnc3RyICJJciBwYXJhIG8gaW5pY2lvIGRhIGxpc3RhIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0NAorbXNnaWQgIkdvIHRvIGVuZCBvZiBsaXN0IgorbXNnc3RyICJJciBwYXJhIG8gZmltIGRhIGxpc3RhIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0NQorbXNnaWQgIlJlcXVlc3QgaGVscCAoY3ljbGUgdGhyb3VnaCBoZWxwIHNjcmVlbnMpIgorbXNnc3RyICJQZWRpciBhanVkYSAocGVyY29ycmVyIG9zIGVjcsOjcyBkZSBhanVkYSkiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ2Cittc2dpZCAiQ3ljbGUgdGhyb3VnaCBpbmZvcm1hdGlvbiBkaXNwbGF5cyIKK21zZ3N0ciAiUGVyY29ycmVyIGF0cmF2w6lzIGRhcyBww6FnaW5hcyBkZSBpbmZvcm1hw6fDo28iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ3Cittc2dpZCAiUmVkcmF3IGRpc3BsYXkiCittc2dzdHIgIlJlZGVzZW5oYXIgbyBlY3LDoyIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDgKK21zZ2lkICJTY3JvbGwgb253YXJkcyB0aHJvdWdoIGxpc3QgYnkgMSBsaW5lIgorbXNnc3RyICJTY3JvbGwgZW0gZnJlbnRlIG5hIGxpc3RhIHBvciAxIGxpbmhhIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0OQorbXNnaWQgIlNjcm9sbCBiYWNrd2FyZHMgdGhyb3VnaCBsaXN0IGJ5IDEgbGluZSIKK21zZ3N0ciAiU2Nyb2xsIHBhcmEgdHLDoXMgbmEgbGlzdGEgcG9yIDEgbGluaGEiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTUwCittc2dpZCAiU2Nyb2xsIG9ud2FyZHMgdGhyb3VnaCBoZWxwL2luZm9ybWF0aW9uIGJ5IDEgbGluZSIKK21zZ3N0ciAiU2Nyb2xsIGVtIGZyZW50ZSBhdHJhdsOpcyBkYSBhanVkYS9pbmZvcm1hw6fDo28gcG9yIDEgbGluaGEiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTUxCittc2dpZCAiU2Nyb2xsIGJhY2t3YXJkcyB0aHJvdWdoIGhlbHAvaW5mb3JtYXRpb24gYnkgMSBsaW5lIgorbXNnc3RyICJTY3JvbGwgcGFyYSB0csOhcyBhdHJhdsOpcyBkYSBhanVkYS9pbmZvcm1hw6fDo28gcG9yIDEgbGluaGEiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTUyCittc2dpZCAiU2Nyb2xsIG9ud2FyZHMgdGhyb3VnaCBsaXN0IgorbXNnc3RyICJTY3JvbGwgZW0gZnJlbnRlIGF0cmF2w6lzIGRhIGxpc3RhIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1MworbXNnaWQgIlNjcm9sbCBiYWNrd2FyZHMgdGhyb3VnaCBsaXN0IgorbXNnc3RyICJTY3JvbGwgcGFyYSB0csOhcyBhdHJhdsOpcyBkYSBsaXN0YSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTYKK21zZ2lkICJNYXJrIHBhY2thZ2UocykgZm9yIGluc3RhbGxhdGlvbiIKK21zZ3N0ciAiTWFyY2FyIHBhY290ZShzKSBwYXJhIGluc3RhbGHDp8OjbyIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTcKK21zZ2lkICJNYXJrIHBhY2thZ2UocykgZm9yIGRlaW5zdGFsbGF0aW9uIgorbXNnc3RyICJNYXJjYXIgcGFjb3RlKHMpIHBhcmEgZGVzaW5zdGFsYcOnw6NvIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1OAorbXNnaWQgIk1hcmsgcGFja2FnZShzKSBmb3IgZGVpbnN0YWxsIGFuZCBwdXJnZSIKK21zZ3N0ciAiTWFyY2FyIHBhY290ZShzKSBwYXJhIGRlc2luc3RhbGFyIGUgYXBhZ2FyIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1OQorbXNnaWQgIk1ha2UgaGlnaGxpZ2h0IG1vcmUgc3BlY2lmaWMiCittc2dzdHIgIkZhemVyIG8gZGVzdGFxdWUgbWFpcyBlc3BlY8OtZmljbyIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjAKK21zZ2lkICJNYWtlIGhpZ2hsaWdodCBsZXNzIHNwZWNpZmljIgorbXNnc3RyICJGYXplciBvIGRlc3RhcXVlIG1lbm9zIGVzcGVjw61maWNvIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2MQorbXNnaWQgIlNlYXJjaCBmb3IgYSBwYWNrYWdlIHdob3NlIG5hbWUgY29udGFpbnMgYSBzdHJpbmciCittc2dzdHIgIlByb2N1cmFyIHBvciBwYWNvdGVzIGN1am8gbm9tZSBjb250ZW5oYW0gdW1hIHN0cmluZyIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjIKK21zZ2lkICJSZXBlYXQgbGFzdCBzZWFyY2guIgorbXNnc3RyICJSZXBldGlyIGEgw7psdGltYSBwcm9jdXJhLiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjMKK21zZ2lkICJTd2FwIHNvcnQgb3JkZXIgcHJpb3JpdHkvc2VjdGlvbiIKK21zZ3N0ciAiVHJvY2FyIG9yZGVtIGRhIG9yZGVuYcOnw6NvIHByaW9yaWRhZGUvc2Vjw6fDo28iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY0Cittc2dpZCAiUXVpdCwgY29uZmlybWluZywgYW5kIGNoZWNraW5nIGRlcGVuZGVuY2llcyIKK21zZ3N0ciAiU2FpciwgYSBjb25maXJtYXIsIGUgdmVyaWZpY2FyIGRlcGVuZMOqbmNpYXMiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY1Cittc2dpZCAiUXVpdCwgY29uZmlybWluZyB3aXRob3V0IGNoZWNrIgorbXNnc3RyICJTYWlyLCBjb25maXJtYXIgc2VtIHZlcmlmaWNhciIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjYKK21zZ2lkICJRdWl0LCByZWplY3RpbmcgY29uZmxpY3QvZGVwZW5kZW5jeSBzdWdnZXN0aW9ucyIKK21zZ3N0ciAiU2FpciwgcmVqZWl0YW5kbyBzdWdlc3TDtWVzIGRlIGNvbmZsaXRvcy9kZXBlbmTDqm5jaWFzIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2NworbXNnaWQgIkFib3J0IC0gcXVpdCB3aXRob3V0IG1ha2luZyBjaGFuZ2VzIgorbXNnc3RyICJBYm9ydGFyIC0gc2FpciBzZW0gZmF6ZXIgYWx0ZXJhw6fDtWVzIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2OAorbXNnaWQgIlJldmVydCB0byBvbGQgc3RhdGUgZm9yIGFsbCBwYWNrYWdlcyIKK21zZ3N0ciAiVm9sdGFyIGFvIGVzdGFkbyBhbnRpZ28gcGFyYSB0b2RvcyBvcyBwYWNvdGVzIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2OQorbXNnaWQgIlJldmVydCB0byBzdWdnZXN0ZWQgc3RhdGUgZm9yIGFsbCBwYWNrYWdlcyIKK21zZ3N0ciAiVm9sdGFyIGFvIGVzdGFkbyBzdWdlcmlkbyBwYXJhIHRvZG9zIG9zIHBhY290ZXMiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTcwCittc2dpZCAiUmV2ZXJ0IHRvIGRpcmVjdGx5IHJlcXVlc3RlZCBzdGF0ZSBmb3IgYWxsIHBhY2thZ2VzIgorbXNnc3RyICJWb2x0YXIgYW8gZXN0YWRvIGRpcmVjdGFtZW50ZSByZXF1aXNpdGFkbyBwYXJhIHRvZG9zIG9zIHBhY290ZXMiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTcxCittc2dpZCAiUmV2ZXJ0IHRvIGN1cnJlbnRseSBpbnN0YWxsZWQgc3RhdGUgZm9yIGFsbCBwYWNrYWdlcyIKK21zZ3N0ciAiVm9sdGFyIGFvIGVzdGFkbyBhY3R1YWxtZW50ZSBpbnN0YWxhZG8gcGFyYSB0b2RvcyBvcyBwYWNvdGVzIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE3NAorbXNnaWQgIlNlbGVjdCBjdXJyZW50bHktaGlnaGxpZ2h0ZWQgYWNjZXNzIG1ldGhvZCIKK21zZ3N0ciAiU2VsZWNjaW9uYXIgbyBtw6l0b2RvIGRlIGFjZXNzbyBhY3R1YWxtZW50ZSBkZXN0YWNhZG8iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTc1Cittc2dpZCAiUXVpdCB3aXRob3V0IGNoYW5naW5nIHNlbGVjdGVkIGFjY2VzcyBtZXRob2QiCittc2dzdHIgIlNhaXIgc2VtIGFsdGVyYXIgbyBtw6l0b2RvIGRlIGFjZXNzbyBzZWxlY2Npb25hZG8iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MjkKK21zZ2lkICJLZXlzdHJva2VzIgorbXNnc3RyICJDb21iaW5hw6fDtWVzIGRlIHRlY2xhcyIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoyOQorbXNnaWQgIiIKKyJNb3Rpb24ga2V5czogTmV4dC9QcmV2aW91cywgVG9wL0VuZCwgVXAvRG93biwgQmFja3dhcmRzL0ZvcndhcmRzOlxuIgorIiAgaiwgRG93bi1hcnJvdyAgICAgICAgIGssIFVwLWFycm93ICAgICAgICAgICAgIG1vdmUgaGlnaGxpZ2h0XG4iCisiICBOLCBQYWdlLWRvd24sIFNwYWNlICAgUCwgUGFnZS11cCwgQmFja3NwYWNlICAgc2Nyb2xsIGxpc3QgYnkgMSBwYWdlXG4iCisiICBebiAgICAgICAgICAgICAgICAgICAgXnAgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGxpc3QgYnkgMSBsaW5lXG4iCisiICB0LCBIb21lICAgICAgICAgICAgICAgZSwgRW5kICAgICAgICAgICAgICAgICAganVtcCB0byB0b3AvZW5kIG9mIGxpc3RcbiIKKyIgIHUgICAgICAgICAgICAgICAgICAgICBkICAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyBieSAxIHBhZ2VcbiIKKyIgIF51ICAgICAgICAgICAgICAgICAgICBeZCAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyBieSAxIGxpbmVcbiIKKyIgIEIsIExlZnQtYXJyb3cgICAgICAgICBGLCBSaWdodC1hcnJvdyAgICAgICAgICBwYW4gZGlzcGxheSBieSAxLzMgc2NyZWVuXG4iCisiICBeYiAgICAgICAgICAgICAgICAgICAgXmYgICAgICAgICAgICAgICAgICAgICAgcGFuIGRpc3BsYXkgYnkgMSBjaGFyYWN0ZXJcbiIKKyJcbiIKKyJNYXJrIHBhY2thZ2VzIGZvciBsYXRlciBwcm9jZXNzaW5nOlxuIgorIiArLCBJbnNlcnQgIGluc3RhbGwgb3IgdXBncmFkZSAgICAgID0sIEggIGhvbGQgaW4gcHJlc2VudCBzdGF0ZVxuIgorIiAtLCBEZWxldGUgIHJlbW92ZSAgICAgICAgICAgICAgICAgIDosIEcgIHVuaG9sZDogdXBncmFkZSBvciBsZWF2ZSAiCisidW5pbnN0YWxsZWRcbiIKKyIgXyAgICAgICAgICByZW1vdmUgJiBwdXJnZSBjb25maWdcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBNaXNjZWxsYW5lb3VzOlxuIgorIlF1aXQsIGV4aXQsIG92ZXJ3cml0ZSAobm90ZSBjYXBpdGFscyEpOiAgICAgICA/LCBGMSByZXF1ZXN0IGhlbHAgKGFsc28gIgorIkhlbHApXG4iCisiIFJldHVybiAgQ29uZmlybSwgcXVpdCAoY2hlY2sgZGVwZW5kZW5jaWVzKSAgIGksIEkgIHRvZ2dsZS9jeWNsZSBpbmZvICIKKyJkaXNwbGF5c1xuIgorIiAgIFEgICAgIENvbmZpcm0sIHF1aXQgKG92ZXJyaWRlIGRlcC5zKSAgICAgICBvLCBPICBjeWNsZSB0aHJvdWdoIHNvcnQgIgorIm9wdGlvbnNcbiIKKyIgWCwgRXNjICBlWGl0LCBhYmFuZG9uaW5nIGFueSBjaGFuZ2VzIG1hZGUgICAgdiwgViAgY2hhbmdlIHN0YXR1cyBkaXNwbGF5ICIKKyJvcHRzXG4iCisiICAgUiAgICAgUmV2ZXJ0IHRvIHN0YXRlIGJlZm9yZSB0aGlzIGxpc3QgICAgICBebCAgIHJlZHJhdyBkaXNwbGF5XG4iCisiICAgVSAgICAgc2V0IGFsbCB0byBzVWdnZXN0ZWQgc3RhdGUgICAgICAgICAgICAgLyAgIHNlYXJjaCAoUmV0dXJuIHRvICIKKyJjYW5jZWwpXG4iCisiICAgRCAgICAgc2V0IGFsbCB0byBEaXJlY3RseSByZXF1ZXN0ZWQgc3RhdGUgIG4sIFxcICByZXBlYXQgbGFzdCBzZWFyY2hcbiIKK21zZ3N0ciAiIgorIlRlY2xhcyBkZSBtb3ZpbWVudG86IFByw7N4Li9BbnRlcmlvciwgVG9wby9GaW5hbCwgQ2ltYS9CYWl4bywgVHLDoXMvRnJlbnRlOlxuIgorIiAgaiwgU2V0YS1iYWl4byAgICAgICAgIGssIFNldGEtY2ltYSAgICAgICAgICAgIG1vdmVyIGRlc3RhcXVlXG4iCisiICBOLCBQYWdlLWRvd24sIEVzcGHDp28gIFAsIFBhZ2UtdXAsIEJhY2tzcGFjZSAgIHJvbGFyIGxpc3RhIGVtIDEgcMOhZ2luYVxuIgorIiAgXm4gICAgICAgICAgICAgICAgICAgIF5wICAgICAgICAgICAgICAgICAgICAgIHJvbGFyIGxpc3RhIGVtIDEgbGluaGFcbiIKKyIgIHQsIEhvbWUgICAgICAgICAgICAgICBlLCBFbmQgICAgICAgICAgICAgICAgICBzYWx0YXIgcC8gdG9wby9maW5hbCBkYSAiCisibGlzdGFcbiIKKyIgIHUgICAgICAgICAgICAgICAgICAgICBkICAgICAgICAgICAgICAgICAgICAgICByb2xhciBpbmZvLiBlbSAxIHDDoWdpbmFcbiIKKyIgIF51ICAgICAgICAgICAgICAgICAgICBeZCAgICAgICAgICAgICAgICAgICAgICByb2xhciBpbmZvLiBlbSAxIGxpbmhhXG4iCisiICBCLCBTZXRhLWVzcXVlcmRhICAgICAgRiwgU2V0YS1kaXJlaXRhICAgICAgICAgbW92ZXIgZWNyw6MgZW0gMS8zXG4iCisiICBeYiAgICAgICAgICAgICAgICAgICAgXmYgICAgICAgICAgICAgICAgICAgICAgbW92ZXIgZWNyw6MgZW0gMSBjYXJhY3RlclxuIgorIlxuIgorIk1hcmNhciBwYWNvdGVzIHBhcmEgcHJvY2Vzc2FtZW50byBwb3N0ZXJpb3I6XG4iCisiICssIEluc2VydCAgaW5zdGFsYXIgb3UgYWN0dWFsaXphciAgID0sIEggIG1hbnRlciBubyBlc3RhZG8gYWN0dWFsXG4iCisiIC0sIERlbGV0ZSAgcmVtb3ZlciAgICAgICAgICAgICAgICAgIDosIEcgIGxhcmdhcjogYWN0dWFsaXphciBvdSBkZWl4YXIgIgorImRlc2luc3RhbGFkb1xuIgorIiBfICAgICAgICAgIHJlbW92ZXIgJiBwdXJnYXIgY29uZmlndXJhw6fDo29cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1pc2NlbMOibmVhOlxuIgorIlF1aXQsIGV4aXQsIHNvYnJlc2NyZXZlciAobm90ZSBtYWnDunNjLiEpICAgICA/LCBGMSBwZWRpciBhanVkYSAodGFtYsOpbSAiCisiQWp1ZGEpXG4iCisiIFJldHVybiAgQ29uZmlybSwgc2FpciAodmVyaWZpY2FyIGRlcGVuZC4pICAgaSwgSSAgbXVkYS9jaXJjdWxhIHBvciB0ZWxhcyBkZSAiCisib3DDp8O1ZXMuXG4iCisiICAgUSAgICAgQ29uZmlybWEsIGRlaXhhIChpZ25vcmEgZGVwZW5kLikgICAgbywgTyAgY2lyYy4gcG9yIG9wYy4gZGUgIgorImNsYXNzaWYuXG4iCisiIFgsIEVzYywgZVhpdCwgYWJhbmRvbmFyIGFsdGVyYcOnw7VlcyAgICAgICAgICB2LCBWIG11ZGFyIG9ww6fDtWVzIGRlIG1vc3RyYXIgIgorImVzdGFkb1xuIgorIiAgIFIgICAgIFJldmVydGUgYW8gZXN0YWRvIGFudGVzIGRlc3RhIGxpc3RhIF5sICAgcmVkZXNlbmhhciBlY3LDo1xuIgorIiAgIFUgICAgIGNvbG9jYXIgdHVkbyBubyBlc3RhZG8gc1VnZXJpZG8gICAgICAvICAgIHByb2N1cmFyIChFbnRlciBwLyIKKyJjYW5jZWxhcilcbiIKKyIgICBEICAgICBjb2xvY2FyIHR1ZG8gZW0gZXN0LiBEaXJlY3RhbWVudGUgcmVxLiBuLCBcXCByZXBldGlyIMO6bHRpbWEgIgorInByb2N1cmFcbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo1NQorbXNnaWQgIkludHJvZHVjdGlvbiB0byBwYWNrYWdlIHNlbGVjdGlvbnMiCittc2dzdHIgIkludHJvZHXDp8OjbyDDoCBzZWxlY8Onw6NvIGRlIHBhY290ZXMiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6NTUKK21zZ2lkICIiCisiV2VsY29tZSB0byBkc2VsZWN0J3MgbWFpbiBwYWNrYWdlIGxpc3RpbmcuXG4iCisiXG4iCisiWW91IHdpbGwgYmUgcHJlc2VudGVkIHdpdGggYSBsaXN0IG9mIHBhY2thZ2VzIHdoaWNoIGFyZSBpbnN0YWxsZWQgb3IgIgorImF2YWlsYWJsZVxuIgorImZvciBpbnN0YWxsYXRpb24uICBZb3UgY2FuIG5hdmlnYXRlIGFyb3VuZCB0aGUgbGlzdCB1c2luZyB0aGUgY3Vyc29yIGtleXMsXG4iCisibWFyayBwYWNrYWdlcyBmb3IgaW5zdGFsbGF0aW9uICh1c2luZyBgKycpIG9yIGRlaW5zdGFsbGF0aW9uICh1c2luZyBgLScpLlxuIgorIlBhY2thZ2VzIGNhbiBiZSBtYXJrZWQgZWl0aGVyIHNpbmdseSBvciBpbiBncm91cHM7IGluaXRpYWxseSB5b3Ugd2lsbCBzZWUgIgorInRoYXRcbiIKKyJ0aGUgbGluZSBgQWxsIHBhY2thZ2VzJyBpcyBzZWxlY3RlZC4gIGArJywgYC0nIGFuZCBzbyBvbiB3aWxsIGFmZmVjdCBhbGwgIgorInRoZVxuIgorInBhY2thZ2VzIGRlc2NyaWJlZCBieSB0aGUgaGlnaGxpZ2h0ZWQgbGluZS5cbiIKKyJcbiIKKyJTb21lIG9mIHlvdXIgY2hvaWNlcyB3aWxsIGNhdXNlIGNvbmZsaWN0cyBvciBkZXBlbmRlbmN5IHByb2JsZW1zOyB5b3Ugd2lsbCAiCisiYmVcbiIKKyJnaXZlbiBhIHN1Yi1saXN0IG9mIHRoZSByZWxldmFudCBwYWNrYWdlcywgc28gdGhhdCB5b3UgY2FuIHNvbHZlIHRoZSAiCisicHJvYmxlbXMuXG4iCisiXG4iCisiWW91IHNob3VsZCByZWFkIHRoZSBsaXN0IG9mIGtleXMgYW5kIHRoZSBleHBsYW5hdGlvbnMgb2YgdGhlIGRpc3BsYXkuXG4iCisiTXVjaCBvbi1saW5lIGhlbHAgaXMgYXZhaWxhYmxlLCBwbGVhc2UgbWFrZSB1c2Ugb2YgaXQgLSBwcmVzcyBgPycgYXRcbiIKKyJhbnkgdGltZSBmb3IgaGVscC5cbiIKKyJcbiIKKyJXaGVuIHlvdSBoYXZlIGZpbmlzaGVkIHNlbGVjdGluZyBwYWNrYWdlcywgcHJlc3MgPGVudGVyPiB0byBjb25maXJtICIKKyJjaGFuZ2VzLFxuIgorIm9yIGBYJyB0byBxdWl0IHdpdGhvdXQgc2F2aW5nIGNoYW5nZXMuIEEgZmluYWwgY2hlY2sgb24gY29uZmxpY3RzIGFuZFxuIgorImRlcGVuZGVuY2llcyB3aWxsIGJlIGRvbmUgLSBoZXJlIHRvbyB5b3UgbWF5IHNlZSBhIHN1Ymxpc3QuXG4iCisiXG4iCisiUHJlc3MgPHNwYWNlPiB0byBsZWF2ZSBoZWxwIGFuZCBlbnRlciB0aGUgbGlzdCBub3cuXG4iCittc2dzdHIgIiIKKyJCZW0tdmluZG8gw6AgbGlzdGFnZW0gcHJpbmNpcGFsIGRlIHBhY290ZXMgZG8gZHNlbGVjdC5cbiIKKyJcbiIKKyJTZXItbGhlLcOhIGFwcmVzZW50YWRhIHVtYSBsaXN0YSBkZSBwYWNvdGVzIHF1ZSBlc3TDo28gaW5zdGFsYWRvcyBvdSAiCisiZGlzcG9uw612ZWlzXG4iCisicGFyYSBpbnN0YWxhw6fDo28uICBWb2PDqiBwb2RlIG5hdmVnYXIgcGVsYSBsaXN0YSB1c2FuZG8gYXMgdGVjbGFzIGRlIGN1cnNvcixcbiIKKyJtYXJjYXIgcGFjb3RlcyBwYXJhIGluc3RhbGHDp8OjbyAodXNhbmRvIGArJykgb3UgZGVzaW5zdGFsYcOnw6NvICh1c2FuZG8gYC0nKS5cbiIKKyJcbiIKKyJPcyBwYWNvdGVzIHBvZGVtIHNlciBtYXJjYWRvcyBpbmRpdmlkdWFsbWVudGUgb3UgZW0gZ3J1cG9zOyBpbmljaWFsbWVudGVcbiIKKyJ2b2PDqiBpcsOhIHZlciBxdWUgYSBsaW5oYSBgVG9kb3Mgb3MgcGFjb3RlcycgZXN0w6Egc2VsZWNpb25hZGEuXG4iCisiXG4iCisiQWxndW1hcyBkYXMgc3VhcyBlc2NvbGhhcyBpcsOjbyBjYXVzYXIgY29uZmxpdG9zIG91IHByb2JsZW1hcyBkZVxuIgorImRlcGVuZMOqbmNpYXM7IHNlci1saGUtw6EgZGFkYSB1bWEgc3ViLWxpc3RhIGRvcyBwYWNvdGVzIHJlbGV2YW50ZXMsIHBhcmEgcXVlXG4iCisidm9jw6ogcmVzb2x2YSBvcyBwcm9ibGVtYXMuXG4iCisiXG4iCisiVm9jw6ogZGV2ZSBsZXIgYSBsaXN0YSBkZSB0ZWNsYXMgZSBhcyBleHBsaWNhw6fDtWVzIGRvIGVjcsOjLlxuIgorIkVzdMOhIGRpc3BvbsOtdmVsIG11aXRhIGFqdWRhIG9uLWxpbmUsIHBvciBmYXZvciBmYcOnYSB1c28gZGlzc28gLSBlbSBxdWFscXVlclxuIgorImFsdHVyYSBjYXJyZWd1ZSBlbSBgPycgcGFyYSBhanVkYS5cbiIKKyJcbiIKKyJRdWFuZG8gdGl2ZXIgdGVybWluYWRvIGRlIGVzY29saGVyIG9zIHBhY290ZXMsIGNhcnJlZ3VlIGVtIDxlbnRlcj4gcGFyYVxuIgorImNvbmZpcm1hciBhcyBhbHRlcmHDp8O1ZXMsIG91IGBYJyBwYXJhIHNhaXIgc2VtIGdyYXZhciBhcyBhbHRlcmHDp8O1ZXMuIFNlcsOhXG4iCisiZmVpdGEgdW1hIHZlcmlmaWNhw6fDo28gZmluYWwgZGUgY29uZmxpdG9zIGUgZGUgZGVwZW5kw6puY2lhcyAtIHRhbWLDqW0gYXF1aVxuIgorInBvZGVyw6EgdmVyIHVtYSBzdWItbGlzdGEuXG4iCisiXG4iCisiQ2FycmVndWUgZW0gPGVzcGHDp28+IHBhcmEgc2FpciBkYSBhanVkYSBlIGVudHJhciBhZ29yYSBuYSBsaXN0YS5cbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo4MAorbXNnaWQgIkludHJvZHVjdGlvbiB0byByZWFkLW9ubHkgcGFja2FnZSBsaXN0IGJyb3dzZXIiCittc2dzdHIgIkludHJvZHXDp8OjbyBhbyBuYXZlZ2Fkb3IgZGUgbGlzdGEgZGUgcGFjb3RlcyBzw7MgZGUgbGVpdHVyYSIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo4MAorbXNnaWQgIiIKKyJXZWxjb21lIHRvIGRzZWxlY3QncyBtYWluIHBhY2thZ2UgbGlzdGluZy5cbiIKKyJcbiIKKyJZb3Ugd2lsbCBiZSBwcmVzZW50ZWQgd2l0aCBhIGxpc3Qgb2YgcGFja2FnZXMgd2hpY2ggYXJlIGluc3RhbGxlZCBvciAiCisiYXZhaWxhYmxlXG4iCisiZm9yIGluc3RhbGxhdGlvbi4gIFNpbmNlIHlvdSBkbyBub3QgaGF2ZSB0aGUgcHJpdmlsZWdlIG5lY2Vzc2FyeSB0byB1cGRhdGVcbiIKKyJwYWNrYWdlIHN0YXRlcywgeW91IGFyZSBpbiBhIHJlYWQtb25seSBtb2RlLiAgWW91IGNhbiBuYXZpZ2F0ZSBhcm91bmQgdGhlXG4iCisibGlzdCB1c2luZyB0aGUgY3Vyc29yIGtleXMgKHBsZWFzZSBzZWUgdGhlIGBLZXlzdHJva2VzJyBoZWxwIHNjcmVlbiksICIKKyJvYnNlcnZlXG4iCisidGhlIHN0YXR1cyBvZiB0aGUgcGFja2FnZXMgYW5kIHJlYWQgaW5mb3JtYXRpb24gYWJvdXQgdGhlbS5cbiIKKyJcbiIKKyJZb3Ugc2hvdWxkIHJlYWQgdGhlIGxpc3Qgb2Yga2V5cyBhbmQgdGhlIGV4cGxhbmF0aW9ucyBvZiB0aGUgZGlzcGxheS5cbiIKKyJNdWNoIG9uLWxpbmUgaGVscCBpcyBhdmFpbGFibGUsIHBsZWFzZSBtYWtlIHVzZSBvZiBpdCAtIHByZXNzIGA/JyBhdFxuIgorImFueSB0aW1lIGZvciBoZWxwLlxuIgorIlxuIgorIldoZW4geW91IGhhdmUgZmluaXNoZWQgYnJvd3NpbmcsIHByZXNzIGBRJyBvciA8ZW50ZXI+IHRvIHF1aXQuXG4iCisiXG4iCisiUHJlc3MgPHNwYWNlPiB0byBsZWF2ZSBoZWxwIGFuZCBlbnRlciB0aGUgbGlzdCBub3cuXG4iCittc2dzdHIgIiIKKyJCZW0tdmluZG8gw6AgbGlzdGEgcHJpbmNpcGFsIGRlIHBhY290ZXMgZG8gZHNlbGVjdC5cbiIKKyJcbiIKKyJTZXItbGhlLcOgIGFwcmVzZW50YWRhIHVtYSBsaXN0YSBkb3MgcGFjb3RlcyBxdWUgZXN0w6NvIGluc3RhbGFkb3Mgb3UgXG4iCisiZGlzcG9uw612ZWlzIHBhcmEgaW5zdGFsYcOnw6NvLiAgVW1hIHZleiBxdWUgdm9jw6ogbsOjbyBwb3NzdWkgb3MgcHJpdmlsw6lnaW9zIFxuIgorIm5lY2Vzc8OhcmlvcyBwYXJhIGFjdHVhbGl6YXIgbyBlc3RhZG8gZG9zIHBhY290ZXMsIGVzdMOhIGVtIG1vZG8gZGUgc29tZW50ZSBcbiIKKyJsZWl0dXJhLiAgUG9kZSBuYXZlZ2FyIHBlbGEgbGlzdGEgdXNhbmRvIGFzIHRlY2xhcyBkZSBjdXJzb3IgKHBvciBmYXZvciBcbiIKKyJ2ZWphIG8gZWNyw6MgZGUgYWp1ZGEgYFRlY2xhcyBkZSBhdGFsaG8nKSwgb2JzZXJ2YXIgbyBlc3RhZG8gZG9zIHBhY290ZXMgZSBcbiIKKyJsZXIgaW5mb3JtYcOnw7VlcyBzb2JyZSBvcyBtZXNtb3MuXG4iCisiXG4iCisiVm9jw6ogZGV2ZSBsZXIgYSBsaXN0YSBkZSB0ZWNsYXMgZSBhcyBleHBsaWNhw6fDtWVzIGRvIGVjcsOjLlxuIgorIkVzdMOhIGRpc3BvbsOtdmVsIG11aXRhIGFqdWRhIG9uLWxpbmUsIGZhw6dhIHVzbyBkZWxhIC0gY2FycmVndWUgZW0gcXVhbHF1ZXJcbiIKKyJhbHR1cmEgZW0gYD8nIHBhcmEgYWp1ZGEuXG4iCisiXG4iCisiUXVhbmRvIGFjYWJhciBkZSBuYXZlZ2FyLCBjYXJyZWd1ZSBlbSBgUScgb3UgPGVudGVyPiBwYXJhIHNhaXIuXG4iCisiXG4iCisiQ2FycmVndWUgZW0gPGVudGVyPiBwYXJhIGRlaXhhciBhIGFqdWRhIGUgZW50cmFyIGFnb3JhIG5hIGxpc3RhLlxuIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjk5Cittc2dpZCAiSW50cm9kdWN0aW9uIHRvIGNvbmZsaWN0L2RlcGVuZGVuY3kgcmVzb2x1dGlvbiBzdWItbGlzdCIKK21zZ3N0ciAiSW50cm9kdcOnw6NvIMOgIHN1Yi1saXN0YSBkZSByZXNvbHXDp8OjbyBkZSBjb25mbGl0b3MvZGVwZW5kw6puY2lhcyIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo5OQorbXNnaWQgIiIKKyJEZXBlbmRlbmN5L2NvbmZsaWN0IHJlc29sdXRpb24gLSBpbnRyb2R1Y3Rpb24uXG4iCisiXG4iCisiT25lIG9yIG1vcmUgb2YgeW91ciBjaG9pY2VzIGhhdmUgcmFpc2VkIGEgY29uZmxpY3Qgb3IgZGVwZW5kZW5jeSBwcm9ibGVtIC1cbiIKKyJzb21lIHBhY2thZ2VzIHNob3VsZCBvbmx5IGJlIGluc3RhbGxlZCBpbiBjb25qdW5jdGlvbiB3aXRoIGNlcnRhaW4gb3RoZXJzLCAiCisiYW5kXG4iCisic29tZSBjb21iaW5hdGlvbnMgb2YgcGFja2FnZXMgbWF5IG5vdCBiZSBpbnN0YWxsZWQgdG9nZXRoZXIuXG4iCisiXG4iCisiWW91IHdpbGwgc2VlIGEgc3ViLWxpc3QgY29udGFpbmluZyB0aGUgcGFja2FnZXMgaW52b2x2ZWQuICBUaGUgYm90dG9tIGhhbGYgIgorIm9mXG4iCisidGhlIGRpc3BsYXkgc2hvd3MgcmVsZXZhbnQgY29uZmxpY3RzIGFuZCBkZXBlbmRlbmNpZXM7IHVzZSBgaScgdG8gY3ljbGUgIgorImJldHdlZW5cbiIKKyJ0aGF0LCB0aGUgcGFja2FnZSBkZXNjcmlwdGlvbnMgYW5kIHRoZSBpbnRlcm5hbCBjb250cm9sIGluZm9ybWF0aW9uLlxuIgorIlxuIgorIkEgc2V0IG9mIGBzdWdnZXN0ZWQnIHBhY2thZ2VzIGhhcyBiZWVuIGNhbGN1bGF0ZWQsIGFuZCB0aGUgaW5pdGlhbCBtYXJraW5ncyAiCisiaW5cbiIKKyJ0aGlzIHN1Yi1saXN0IGhhdmUgYmVlbiBzZXQgdG8gbWF0Y2ggdGhvc2UsIHNvIHlvdSBjYW4ganVzdCBoaXQgUmV0dXJuIHRvXG4iCisiYWNjZXB0IHRoZSBzdWdnZXN0aW9ucyBpZiB5b3Ugd2lzaC4gIFlvdSBtYXkgYWJvcnQgdGhlIGNoYW5nZShzKSB3aGljaCAiCisiY2F1c2VkXG4iCisidGhlIHByb2JsZW0ocyksIGFuZCBnbyBiYWNrIHRvIHRoZSBtYWluIGxpc3QsIGJ5IHByZXNzaW5nIGNhcGl0YWwgYFgnLlxuIgorIlxuIgorIllvdSBjYW4gYWxzbyBtb3ZlIGFyb3VuZCB0aGUgbGlzdCBhbmQgY2hhbmdlIHRoZSBtYXJraW5ncyBzbyB0aGF0IHRoZXkgYXJlICIKKyJtb3JlXG4iCisibGlrZSB3aGF0IHlvdSB3YW50LCBhbmQgeW91IGNhbiBgcmVqZWN0JyBteSBzdWdnZXN0aW9ucyBieSB1c2luZyB0aGUgIgorImNhcGl0YWxcbiIKKyJgRCcgb3IgYFInIGtleXMgKHNlZSB0aGUga2V5YmluZGluZ3MgaGVscCBzY3JlZW4pLiAgWW91IGNhbiB1c2UgY2FwaXRhbCBgUScgIgorInRvXG4iCisiZm9yY2UgbWUgdG8gYWNjZXB0IHRoZSBzaXR1YXRpb24gY3VycmVudGx5IGRpc3BsYXllZCwgaW4gY2FzZSB5b3Ugd2FudCB0b1xuIgorIm92ZXJyaWRlIGEgcmVjb21tZW5kYXRpb24gb3IgdGhpbmsgdGhhdCB0aGUgcHJvZ3JhbSBpcyBtaXN0YWtlbi5cbiIKKyJcbiIKKyJQcmVzcyA8c3BhY2U+IHRvIGxlYXZlIGhlbHAgYW5kIGVudGVyIHRoZSBzdWItbGlzdDsgcmVtZW1iZXI6IHByZXNzIGA/JyBmb3IgIgorImhlbHAuXG4iCittc2dzdHIgIiIKKyJSZXNvbHXDp8OjbyBkZSBkZXBlbmTDqm5jaWFzL2NvbmZsaXRvcyAtIGludHJvZHXDp8Ojby5cbiIKKyJcbiIKKyJVbWEgb3UgbWFpcyBkZSB1bWEgZGFzIHN1YXMgZXNjb2xoYXMgIGxldmFudGFyYW0gdW0gcHJvYmxlbWEgZGUgY29uZmxpdG8gb3VcbiIKKyJkZSBkZXBlbmTDqm5jaWFzIC0gYWxndW5zIHBhY290ZXMgc8OzIGRldmVtIHNlciBpbnN0YWxhZG9zIGVtIGNvbmp1bnRvIGNvbVxuIgorIm91dHJvcywgZSBhbGd1bWFzIGNvbWJpbmHDp8O1ZXMgZGUgcGFjb3RlcyBuw6NvIHBvZGVtIHNlciBpbnN0YWxhZGFzIGFvIG1lc21vICIKKyJ0ZW1wby5cbiIKKyJcbiIKKyJWb2PDqiBpcsOhIHZlciB1bWEgc3ViLWxpc3RhIGNvbSBvcyBwYWNvdGVzIGVudm9sdmlkb3MuICBBIG1ldGFkZSBpbmZlcmlvciBkb1xuIgorImVjcsOjIG1vc3RyYSBvcyBjb25mbGl0b3MgZSBkZXBlbmTDqm5jaWFzIHJlbGV2YW50ZXM7IHVzZSBgaScgcGFyYSBhbHRlcm5hclxuIgorImVudHJlIGVzdGVzLCBhcyBkZXNjcmnDp8O1ZXMgZG9zIHBhY290ZXMgZSBhcyBpbmZvcm1hw6fDtWVzIGRlIGNvbnRyb2xlICIKKyJpbnRlcm5hcy5cbiIKKyJcbiIKKyJVbSBjb25qdW50byBkZSBwYWNvdGVzIGBzdWdlcmlkb3MnIGZvaSBjYWxjdWxhZG8sIGUgYXMgbWFyY2HDp8O1ZXMgaW5pY2lhaXNcbiIKKyJuZXNzYSBzdWItbGlzdGEgZm9yYW0gZXN0YWJlbGVjaWRhcyBwYXJhIGNvaW5jaWRpciBjb20gZXNzYXMsIHBvciBpc3NvLCBzZVxuIgorImRlc2VqYXIsIHBvZGUgYXBlbmFzIGNhcnJlZ2FyIGVtIFJldHVybiBwYXJhIGFjZWl0YXIgYXMgc3VnZXN0w7Vlcy4gIFZvY8OqXG4iCisicG9kZSBhYm9ydGFyIGEocykgbXVkYW7Dp2EocykgcXVlIGNhdXNvdS9jYXVzYXJhbSBvKHMpIHByb2JsZW1hKHMpLCBlXG4iCisidm9sdGFyIHBhcmEgYSBsaXN0YSBwcmluY2lwYWwsIGNhcnJlZ2FuZG8gbmEgbWFpw7pzY3VsYSBgWCcuXG4iCisiXG4iCisiVm9jw6ogdGFtYsOpbSBwb2RlIG1vdmltZW50YXItc2UgcGVsYSBsaXN0YSBlIG11ZGFyIGFzIG1hcmNhw6fDtWVzIGRlIG1vZG8gcXVlXG4iCisiZXN0YXMgZXN0ZWphbSBtYWlzIGRlIGFjb3JkbyBjb20gbyBxdWUgdm9jw6ogcXVlciwgZSBwb2RlIGByZWplaXRhcicgYXNcbiIKKyJtaW5oYXMgc3VnZXN0w7VlcyB1dGlsaXphbmRvIGFzIHRlY2xhcyBgRCcgb3IgYFInICh2ZWphIG8gZWNyw6MgZGUgYWp1ZGEgZGVcbiIKKyJhdHJpYnVpw6fDtWVzIGRlIHRlY2xhcykuICBQb2RlIHV0aWxpemFyIGBRJyBtYWnDunNjdWxvIHBhcmEgbWUgZm9yw6dhciBhXG4iCisiYWNlaXRhciBhIHNpdHVhw6fDo28gYWN0dWFsbWVudGUgbW9zdHJhZGEsIG5vIGNhc28gZGUgdm9jw6ogcXVlcmVyIHVsdHJhcGFzc2FyXG4iCisidW1hIHJlY29tZW5kYcOnw6NvIG91IHBlbnNhciBxdWUgbyBwcm9ncmFtYSBlc3TDoSBlbmdhbmFkby5cbiIKKyJcbiIKKyJDYXJyZWd1ZSBlbSA8ZXNwYcOnbz4gcGFyYSBzYWlyIGRhIGFqdWRhIGUgZW50cmFyIG5hIHN1Yi1saXN0YTsgbGVtYnJlLXNlOiAiCisicGFyYSBhanVkYSBjYXJyZWd1ZSBlbSBgPycuXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTI1Cittc2dpZCAiRGlzcGxheSwgcGFydCAxOiBwYWNrYWdlIGxpc3RpbmcgYW5kIHN0YXR1cyBjaGFycyIKK21zZ3N0ciAiVmlzdWFsaXphw6fDo28sIHBhcnRlIDE6IGxpc3RhIGRlIHBhY290ZXMgZSBjYXJhY3RlcmVzIGRlIHN0YXR1cyIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxMjUKK21zZ2lkICIiCisiVGhlIHRvcCBoYWxmIG9mIHRoZSBzY3JlZW4gc2hvd3MgYSBsaXN0IG9mIHBhY2thZ2VzLiAgRm9yIGVhY2ggcGFja2FnZSB5b3UgIgorInNlZVxuIgorImZvdXIgY29sdW1ucyBmb3IgaXRzIGN1cnJlbnQgc3RhdHVzIG9uIHRoZSBzeXN0ZW0gYW5kIG1hcmsuICBJbiB0ZXJzZSBtb2RlICIKKyIodXNlXG4iCisiYHYnIHRvIHRvZ2dsZSB2ZXJib3NlIGRpc3BsYXkpIHRoZXNlIGFyZSBzaW5nbGUgY2hhcmFjdGVycywgZnJvbSBsZWZ0IHRvICIKKyJyaWdodDpcbiIKKyJcbiIKKyIgRXJyb3IgZmxhZzogU3BhY2UgLSBubyBlcnJvciAoYnV0IHBhY2thZ2UgbWF5IGJlIGluIGJyb2tlbiBzdGF0ZSAtIHNlZSAiCisiYmVsb3cpXG4iCisiICAgICAgICAgICAgICBgUicgIC0gc2VyaW91cyBlcnJvciBkdXJpbmcgaW5zdGFsbGF0aW9uLCBuZWVkcyAiCisicmVpbnN0YWxsYXRpb247XG4iCisiIEluc3RhbGxlZCBzdGF0ZTogICAgIFNwYWNlICAgIC0gbm90IGluc3RhbGxlZDtcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgIGAqJyAgICAgLSBpbnN0YWxsZWQ7XG4iCisiICAgICAgICAgICAgICAgICAgICAgICBgLScgICAgIC0gbm90IGluc3RhbGxlZCBidXQgY29uZmlnIGZpbGVzIHJlbWFpbjtcbiIKKyIgICBwYWNrYWdlcyBpbiB0aGVzZSB7IGBVJyAgICAgLSB1bnBhY2tlZCBidXQgbm90IHlldCBjb25maWd1cmVkO1xuIgorIiAgIHN0YXRlcyBhcmUgbm90ICAgIHsgYEMnICAgICAtIGhhbGYtY29uZmlndXJlZCAoYW4gZXJyb3IgaGFwcGVuZWQpO1xuIgorIiAgIChxdWl0ZSkgcHJvcGVybHkgIHsgYEknICAgICAtIGhhbGYtaW5zdGFsbGVkIChhbiBlcnJvciBoYXBwZW5lZCk7XG4iCisiICAgaW5zdGFsbGVkICAgICAgICAgeyBgVycsYHQnIC0gdHJpZ2dlcnMgYXJlIGF3YWl0ZWQgcmVzcC4gcGVuZGluZy5cbiIKKyIgT2xkIG1hcms6IHdoYXQgd2FzIHJlcXVlc3RlZCBmb3IgdGhpcyBwYWNrYWdlIGJlZm9yZSBwcmVzZW50aW5nIHRoaXMgbGlzdDtcbiIKKyIgTWFyazogd2hhdCBpcyByZXF1ZXN0ZWQgZm9yIHRoaXMgcGFja2FnZTpcbiIKKyIgIGAqJzogbWFya2VkIGZvciBpbnN0YWxsYXRpb24gb3IgdXBncmFkZTtcbiIKKyIgIGAtJzogbWFya2VkIGZvciByZW1vdmFsLCBidXQgYW55IGNvbmZpZ3VyYXRpb24gZmlsZXMgd2lsbCByZW1haW47XG4iCisiICBgPSc6IG9uIGhvbGQ6IHBhY2thZ2Ugd2lsbCBub3QgYmUgcHJvY2Vzc2VkIGF0IGFsbDtcbiIKKyIgIGBfJzogbWFya2VkIGZvciBwdXJnZSBjb21wbGV0ZWx5IC0gZXZlbiByZW1vdmUgY29uZmlndXJhdGlvbjtcbiIKKyIgIGBuJzogcGFja2FnZSBpcyBuZXcgYW5kIGhhcyB5ZXQgdG8gYmUgbWFya2VkIGZvciBpbnN0YWxsL3JlbW92ZS8mYy5cbiIKKyJcbiIKKyJBbHNvIGRpc3BsYXllZCBhcmUgZWFjaCBwYWNrYWdlJ3MgUHJpb3JpdHksIFNlY3Rpb24sIG5hbWUsIGluc3RhbGxlZCBhbmRcbiIKKyJhdmFpbGFibGUgdmVyc2lvbiBudW1iZXJzIChzaGlmdC1WIHRvIGRpc3BsYXkvaGlkZSkgYW5kIHN1bW1hcnkgIgorImRlc2NyaXB0aW9uLlxuIgorbXNnc3RyICIiCisiQSBtZXRhZGUgc3VwZXJpb3IgZG8gZWNyYcOjIG1vc3RyYSB1bWEgbGlzdGEgZGUgcGFjb3Rlcy4gUGFyYSBjYWRhIHBhY290ZSB2w6pcbiIKKyJxdWF0cm8gY29sdW5hcyBwYXJhIHNldSBlc3RhZG8gYWN0dWFsIG5vIHNpc3RlbWEgZSBtYXJjYcOnw6NvLiAgTm8gbW9kbyAiCisicmVzdW1pZG9cbiIKKyIodXNlIGB2JyBwYXJhIGNvbXV0YXIgYSBleGliacOnw6NvIGRldGFsaGFkYSkgZXNzZXMgc8OjbyBjYXJhY3RlcmVzIHNpbXBsZXMsICIKKyJkYVxuIgorImVzcXVlcmRhIHBhcmEgYSBkaXJlaXRhOlxuIgorIlxuIgorIiBNYXJjYSBkZSBFcnJvOiBFc3Bhw6dvIC0gc2VtIGVycm9zIChtYXMgbyBwYWNvdGUgcG9kZSBlc3RhciBubyBlc3RhZG8gIgorImVzdHJhZ2Fkb1xuIgorIihicm9rZW4pIC0gdmVqYSBhYmFpeG8pXG4iCisiICAgICAgICAgICAgICAgIGBSJyAgICAtIGVycm8gc8OpcmlvIGR1cmFudGUgYSBpbnN0YWxhw6fDo28sIHJlcXVlciAiCisicmVpbnN0YWxhw6fDo287XG4iCisiIEVzdGFkbyBJbnN0YWxhZG86ICAgXHRFc3Bhw6dvXHQgIC0gbsOjbyBpbnN0YWxhZG87XG4iCisiICAgICAgICAgICAgICAgICAgICAgICBgKidcdCAgLSBpbnN0YWxhZG87XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgYC0nXHQgIC0gbsOjbyBpbnN0YWxhZG8gbWFzIG9zIGZpY2hlaXJvcyBkZVxuIgorIlx0XHRcdFx0ICAgIGNvbmZpZ3VyYcOnw6NvIG1hbnTDqm0tc2U7XG4iCisiICBvcyBwYWNvdGVzXHRcdHsgYFUnICAgICAtIGRlc2NvbXBhY3RhZG8gbWFzIGFpbmRhIG7Do28gY29uZmlndXJhZG87XG4iCisiICBuZXN0ZXMgZXN0YWRvc1x0eyBgQycgICAgIC0gc2VtaS1jb25maWd1cmFkbyAob2NvcnJldSB1bSBlcnJvKTtcbiIKKyIgIG7Do28gZXN0w6NvIGJlbSBcdHsgYEknXHQgIC0gc2VtaS1pbnN0YWxhZG8gKG9jb3JyZXUgdW0gZXJybykuXG4iCisiICBpbnN0YWxhZG9zXHRcdHsgYFcnLGB0JyAtIHPDo28gZXNwZXJhZG9zIHRyaWdnZXJzLCByZXNwb250YSBwZW5kZW50ZS5cbiIKKyIgTWFyY2EgYW50aWdhOiBvIHF1ZSBmb2kgcGVkaWRvIHBhcmEgZXN0ZSBwYWNvdGUgYW50ZXMgZGUgYXByZXNlbnRhciBlc3RhICIKKyJsaXN0YTtcbiIKKyIgTWFyY2E6IG8gcXVlIMOpIHBlZGlkbyBwYXJhIGVzdGUgcGFjb3RlOlxuIgorIiAgYConOiBtYXJjYWRvIHBhcmEgaW5zdGFsYcOnw6NvIG91IGFjdHVhbGl6YcOnw6NvO1xuIgorIiAgYC0nOiBtYXJjYWRvIHBhcmEgcmVtb8Onw6NvLCBtYXMgb3MgYXJxdWl2b3MgZGUgY29uZmlndXJhw6fDo28gZmljYXLDo287XG4iCisiICBgPSc6IG1hbnRlcjogbyBwYWNvdGUgbsOjbyBzZXLDoSBwcm9jZXNzYWRvO1xuIgorIiAgYF8nOiBtYXJjYWRvIHBhcmEgcHVyZ2FyIHBvciBjb21wbGV0byAtIHJlbW92ZXIgYXTDqSBhIGNvbmZpZ3VyYcOnw6NvO1xuIgorIiAgYG4nOiBvIHBhY290ZSDDqSBub3ZvIGUgYWluZGEgZSBhaW5kYSBuw6NvIGZvaSBtYXJjYWRvIHBhcmEgaW5zdGFsYcOnw6NvLyIKKyJyZW1vw6fDo28vJmMuXG4iCisiXG4iCisiVGFtYsOpbSBzw6NvIGV4aWJpZGFzIGNhZGEgUHJpb3JpZGFkZSwgU2Vjw6fDo28sIG5vbWUsIG7Dum1lcm8gZGEgdmVyc8Ojb1xuIgorImluc3RhbGFkYSBlIGRhIGRpc3BvbsOtdmVsIGRlIGNhZGEgcGFjb3RlIChzaGlmdC1WIHBhcmEgbW9zdHJhci9lc2NvbmRlcilcbiIKKyJlIGEgZGVzY3Jpw6fDo28gcmVzdW1pZGEuXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTUyCittc2dpZCAiRGlzcGxheSwgcGFydCAyOiBsaXN0IGhpZ2hsaWdodDsgaW5mb3JtYXRpb24gZGlzcGxheSIKK21zZ3N0ciAiVmlzdWFsaXphw6fDo28sIHBhcnRlIDM6IERlc3RhY2FyIG5hIGxpc3RhOyBtb3N0cmEgZGUgaW5mb3JtYcOnw6NvIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjE1MgorbXNnaWQgIiIKKyIqIEhpZ2hsaWdodDogT25lIGxpbmUgaW4gdGhlIHBhY2thZ2UgbGlzdCB3aWxsIGJlIGhpZ2hsaWdodGVkLiAgSXQgIgorImluZGljYXRlc1xuIgorIiAgd2hpY2ggcGFja2FnZShzKSB3aWxsIGJlIGFmZmVjdGVkIGJ5IHByZXNzZXMgb2YgYCsnLCBgLScgYW5kIGBfJy5cbiIKKyJcbiIKKyIqIFRoZSBkaXZpZGluZyBsaW5lIGluIHRoZSBtaWRkbGUgb2YgdGhlIHNjcmVlbiBzaG93cyBhIGJyaWVmIGV4cGxhbmF0aW9uICIKKyJvZlxuIgorIiAgdGhlIHN0YXR1cyBvZiB0aGUgY3VycmVudGx5LWhpZ2hsaWdodGVkIHBhY2thZ2UsIG9yIGEgZGVzY3JpcHRpb24gb2YgIgorIndoaWNoXG4iCisiICBncm91cCBpcyBoaWdobGlnaHRlZCBpZiBhIGdyb3VwIGxpbmUgaXMuICBJZiB5b3UgZG9uJ3QgdW5kZXJzdGFuZCB0aGVcbiIKKyIgIG1lYW5pbmcgb2Ygc29tZSBvZiB0aGUgc3RhdHVzIGNoYXJhY3RlcnMgZGlzcGxheWVkLCBnbyB0byB0aGUgcmVsZXZhbnRcbiIKKyIgIHBhY2thZ2UgYW5kIGxvb2sgYXQgdGhpcyBkaXZpZGVyIGxpbmUsIG9yIHVzZSB0aGUgYHYnIGtleSBmb3IgYSB2ZXJib3NlXG4iCisiICBkaXNwbGF5IChwcmVzcyBgdicgYWdhaW4gdG8gZ28gYmFjayB0byB0aGUgdGVyc2UgZGlzcGxheSkuXG4iCisiXG4iCisiKiBUaGUgYm90dG9tIG9mIHRoZSBzY3JlZW4gc2hvd3MgbW9yZSBpbmZvcm1hdGlvbiBhYm91dCB0aGVcbiIKKyIgIGN1cnJlbnRseS1oaWdobGlnaHRlZCBwYWNrYWdlIChpZiB0aGVyZSBpcyBvbmx5IG9uZSkuXG4iCisiXG4iCisiICBJdCBjYW4gc2hvdyBhbiBleHRlbmRlZCBkZXNjcmlwdGlvbiBvZiB0aGUgcGFja2FnZSwgdGhlIGludGVybmFsIHBhY2thZ2VcbiIKKyIgIGNvbnRyb2wgZGV0YWlscyAoZWl0aGVyIGZvciB0aGUgaW5zdGFsbGVkIG9yIGF2YWlsYWJsZSB2ZXJzaW9uIG9mIHRoZVxuIgorIiAgcGFja2FnZSksIG9yIGluZm9ybWF0aW9uIGFib3V0IGNvbmZsaWN0cyBhbmQgZGVwZW5kZW5jaWVzIGludm9sdmluZyB0aGVcbiIKKyIgIGN1cnJlbnQgcGFja2FnZSAoaW4gY29uZmxpY3QvZGVwZW5kZW5jeSByZXNvbHV0aW9uIHN1Ymxpc3RzKS5cbiIKKyJcbiIKKyIgIFVzZSB0aGUgYGknIGtleSB0byBjeWNsZSB0aHJvdWdoIHRoZSBkaXNwbGF5cywgYW5kIGBJJyB0byBoaWRlIHRoZVxuIgorIiAgaW5mb3JtYXRpb24gZGlzcGxheSBvciBleHBhbmQgaXQgdG8gdXNlIGFsbW9zdCBhbGwgb2YgdGhlIHNjcmVlbi5cbiIKK21zZ3N0ciAiIgorIiogRGVzdGFxdWU6IFVtYSBsaW5oYSBuYSBsaXN0YSBkZSBwYWNvdGVzIHNlcsOhIGRlc3RhY2FkYS4gRWxhIGluZGljYVxuIgorIiAgcXVhbChpcykgcGFjb3RlKHMpIHNlcsOhKMOjbykgYWZlY3RhZG8ocykgcGVsYXMgdGVjbGFzIGArJywgJy0nIGUgYF8nLlxuIgorIlxuIgorIiogQSBsaW5oYSBkaXZpc8OzcmlhIG5vIG1laW8gZGEgdGVsYSBtb3N0cmEgdW1hIGV4cGxpY2HDp8OjbyBicmV2ZSBkb1xuIgorIiAgZXN0YWRvIGRvIHBhY290ZSBhY3R1YWxtZW50ZSBkZXN0YWNhZG8sIG91IHVtYSBkZXNjcmnDp8OjbyBkbyBncnVwbyBxdWVcbiIKKyIgIGVzdGl2ZXIgZGVzdGFjYWRvLCBzZSB1bWEgbGluaGEgZGUgZ3J1cG8gZXN0aXZlci4gU2Ugdm9jw6ogbsOjbyBlbnRlbmRlciBvXG4iCisiICBzaWduaWZpY2FkbyBkZSBhbGd1bnMgZG9zIGNhcmFjdGVyZXMgZGUgZXN0YWRvIG1vc3RyYWRvcywgdsOhIGFvIHBhY290ZVxuIgorIiAgZW0gcXVlc3TDo28gZSBvbGhlIHBhcmEgZXN0YSBsaW5oYSBkaXZpc8OzcmlhLCBvdSB1c2UgYSB0ZWNsYSBgdicgcGFyYSB1bWFcbiIKKyIgIGV4aWJpw6fDo28gbWFpcyBkZXRhbGhhZGEgKHByZXNzaW9uZSBgdicgbm92YW1lbnRlIHBhcmEgdm9sdGFyIGFvIG1vZG8gIgorInJlc3VtaWRvKS5cbiIKKyJcbiIKKyIqIEEgcGFydGUgZGUgYmFpeG8gZGEgdGVsYSBtb3N0cmEgbWFpcyBpbmZvcm1hw6fDo28gc29icmUgbyBwYWNvdGVcbiIKKyIgIGFjdHVhbG1lbnRlIGRlc3RhY2FkbyAoc2UgYXBlbmFzIHVtIGVzdGl2ZXIgZGVzdGFjYWRvKS5cbiIKKyJcbiIKKyIgIEVsYSBwb2RlIG1vc3RyYXIgdW1hIGRlc2NyacOnw6NvIG1haXMgbG9uZ2EgZG8gcGFjb3RlLCBvcyBkZXRhbGhlcyBpbnRlcm5vc1xuIgorIiAgZGUgY29udHJvbGUgZG8gcGFjb3RlIChvdSBwYXJhIGEgdmVyc8OjbyBpbnN0YWxhZGEgb3UgcGFyYSBhIHZlcnPDo28gIgorImRpc3BvbsOtdmVsXG4iCisiICBkbyBwYWNvdGUpLCBvdSBpbmZvcm1hw6fDo28gc29icmUgY29uZmxpdG9zIGUgZGVwZW5kw6puY2lhcyBlbnZvbHZlbmRvIG9cbiIKKyIgIHBhY290ZSBhY3R1YWwgKGVtIHN1Ymxpc3RhcyBkZSByZXNvbHXDp8OjbyBkZSBjb25mbGl0b3MvZGVwZW5kw6puY2lhcykuXG4iCisiXG4iCisiICBVc2UgYSB0ZWNsYSBgaScgcGFyYSBjaXJjdWxhciBwZWxhcyB0ZWxhcywgZSBgSScgcGFyYSBlc2NvbmRlciBlc3NhXG4iCisiICB0ZWxhIGRlIGluZm9ybWHDp8OjbyBvdSBleHBhbmTDrS1sYSBwb3IgcXVhc2UgdG9kYSBhIHRlbGEuXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTc2Cittc2dpZCAiSW50cm9kdWN0aW9uIHRvIG1ldGhvZCBzZWxlY3Rpb24gZGlzcGxheSIKK21zZ3N0ciAiSW50cm9kdcOnw6NvIGFvIGFjcsOjIGRlIG3DqXRvZG9zIGRlIHNlbGVjw6fDo28iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTc2Cittc2dpZCAiIgorImRzZWxlY3QgYW5kIGRwa2cgY2FuIGRvIGF1dG9tYXRpYyBpbnN0YWxsYXRpb24sIGxvYWRpbmcgdGhlIHBhY2thZ2UgZmlsZXMgdG8gIgorImJlXG4iCisiaW5zdGFsbGVkIGZyb20gb25lIG9mIGEgbnVtYmVyIG9mIGRpZmZlcmVudCBwb3NzaWJsZSBwbGFjZXMuXG4iCisiXG4iCisiVGhpcyBsaXN0IGFsbG93cyB5b3UgdG8gc2VsZWN0IG9uZSBvZiB0aGVzZSBpbnN0YWxsYXRpb24gbWV0aG9kcy5cbiIKKyJcbiIKKyJNb3ZlIHRoZSBoaWdobGlnaHQgdG8gdGhlIG1ldGhvZCB5b3Ugd2lzaCB0byB1c2UsIGFuZCBoaXQgRW50ZXIuICBZb3Ugd2lsbCAiCisidGhlblxuIgorImJlIHByb21wdGVkIGZvciB0aGUgaW5mb3JtYXRpb24gcmVxdWlyZWQgdG8gZG8gdGhlIGluc3RhbGxhdGlvbi5cbiIKKyJcbiIKKyJBcyB5b3UgbW92ZSB0aGUgaGlnaGxpZ2h0IGEgZGVzY3JpcHRpb24gb2YgZWFjaCBtZXRob2QsIHdoZXJlIGF2YWlsYWJsZSwgaXNcbiIKKyJkaXNwbGF5ZWQgaW4gdGhlIGJvdHRvbSBoYWxmIG9mIHRoZSBzY3JlZW4uXG4iCisiXG4iCisiSWYgeW91IHdpc2ggdG8gcXVpdCB3aXRob3V0IGNoYW5naW5nIGFueXRoaW5nIHVzZSB0aGUgYHgnIGtleSB3aGlsZSBpbiB0aGUgIgorImxpc3RcbiIKKyJvZiBpbnN0YWxsYXRpb24gbWV0aG9kcy5cbiIKKyJcbiIKKyJBIGZ1bGwgbGlzdCBvZiBrZXlzdHJva2VzIGlzIGF2YWlsYWJsZSBieSBwcmVzc2luZyBgaycgbm93LCBvciBmcm9tIHRoZSAiCisiaGVscFxuIgorIm1lbnUgcmVhY2hhYmxlIGJ5IHByZXNzaW5nIGA/Jy5cbiIKK21zZ3N0ciAiIgorImRzZWxlY3QgZSBkcGtnIHBvZGVtIGZhemVyIGluc3RhbGHDp8OjbyBhdXRvbcOhdGljYSwgY2FycmVnYW5kbyBvcyBmaWNoZWlyb3MgIgorImRlXG4iCisicGFjb3RlIGEgc2VyZW0gaW5zdGFsYWRvcyBkZSB1bWEgc8OpcmllIGRlIGx1Z2FyZXMgcG9zc8OtdmVpcyBlIGRpZmVyZW50ZXMuXG4iCisiXG4iCisiRXNzYSBsaXN0YSBwZXJtaXRlIGEgdm9jw6ogc2VsZWNpb25hciB1bSBkZXNzZXMgbcOpdG9kb3MgZGUgaW5zdGFsYcOnw6NvLlxuIgorIlxuIgorIk1vdmEgbyBkZXN0YXF1ZSBwYXJhIG8gbcOpdG9kbyBxdWUgZGVzZWphciwgZSBjYXJyZWd1ZSBlbSBFbnRlci4gVm9jw6ogc2Vyw6EgIgorImVudMOjb1xuIgorInF1ZXN0aW9uYWRvIHNvYnJlIGFzIGluZm9ybWHDp8O1ZXMgbmVjZXNzw6FyaWFzIHBhcmEgYSBpbnN0YWxhw6fDo28uXG4iCisiXG4iCisiRW5xdWFudG8gdm9jw6ogbW92ZSBvIGRlc3RhcXVlIHVtYSBkZXNjcmnDp8OjbyBkZSBjYWRhIG3DqXRvZG8sIHF1YW5kbyAiCisiZGlzcG9uw612ZWwsXG4iCisiw6kgZXhpYmlkYSBuYSBwYXJ0ZSBkZSBiYWl4byBkYSB0ZWxhLlxuIgorIlxuIgorIlNlIHZvY8OqIHF1aXNlciBzYWlyIHNlbSBtdWRhciBuYWRhIHVzZSBhIHRlY2xhIGB4JyBlbnF1YW50byBlc3RpdmVyIG5hICIKKyJsaXN0YVxuIgorImRlIG3DqXRvZG9zIGRlIGluc3RhbGHDp8Ojby5cbiIKKyJcbiIKKyJVbWEgbGlzdGEgY29tcGxldGEgZGUgdGVjbGFzIGVzdMOhIGRpc3BvbsOtdmVsIHNlIHByZXNzaW9uYXIgYGsnIGFnb3JhLCBvdSBubyAiCisibWVudVxuIgorImRlIGFqdWRhIGFjZXNzw612ZWwgcHJlc3Npb25hbmRvIGA/Jy5cbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxOTYKK21zZ2lkICJLZXlzdHJva2VzIGZvciBtZXRob2Qgc2VsZWN0aW9uIgorbXNnc3RyICJUZWNsYXMgcGFyYSBzZWxlY8Onw6NvIGRlIG3DqXRvZG8iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTk2Cittc2dpZCAiIgorIk1vdGlvbiBrZXlzOiBOZXh0L1ByZXZpb3VzLCBUb3AvRW5kLCBVcC9Eb3duLCBCYWNrd2FyZHMvRm9yd2FyZHM6XG4iCisiICBqLCBEb3duLWFycm93ICAgICAgICAgaywgVXAtYXJyb3cgICAgICAgICAgICAgbW92ZSBoaWdobGlnaHRcbiIKKyIgIE4sIFBhZ2UtZG93biwgU3BhY2UgICBQLCBQYWdlLXVwLCBCYWNrc3BhY2UgICBzY3JvbGwgbGlzdCBieSAxIHBhZ2VcbiIKKyIgIF5uICAgICAgICAgICAgICAgICAgICBecCAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgbGlzdCBieSAxIGxpbmVcbiIKKyIgIHQsIEhvbWUgICAgICAgICAgICAgICBlLCBFbmQgICAgICAgICAgICAgICAgICBqdW1wIHRvIHRvcC9lbmQgb2YgbGlzdFxuIgorIiAgdSAgICAgICAgICAgICAgICAgICAgIGQgICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIGJ5IDEgcGFnZVxuIgorIiAgXnUgICAgICAgICAgICAgICAgICAgIF5kICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIGJ5IDEgbGluZVxuIgorIiAgQiwgTGVmdC1hcnJvdyAgICAgICAgIEYsIFJpZ2h0LWFycm93ICAgICAgICAgIHBhbiBkaXNwbGF5IGJ5IDEvMyBzY3JlZW5cbiIKKyIgIF5iICAgICAgICAgICAgICAgICAgICBeZiAgICAgICAgICAgICAgICAgICAgICBwYW4gZGlzcGxheSBieSAxIGNoYXJhY3RlclxuIgorIihUaGVzZSBhcmUgdGhlIHNhbWUgbW90aW9uIGtleXMgYXMgaW4gdGhlIHBhY2thZ2UgbGlzdCBkaXNwbGF5LilcbiIKKyJcbiIKKyJRdWl0OlxuIgorIiBSZXR1cm4sIEVudGVyICAgIHNlbGVjdCB0aGlzIG1ldGhvZCBhbmQgZ28gdG8gaXRzIGNvbmZpZ3VyYXRpb24gZGlhbG9ndWVcbiIKKyIgeCwgWCAgICAgICAgICAgICBleGl0IHdpdGhvdXQgY2hhbmdpbmcgb3Igc2V0dGluZyB1cCB0aGUgaW5zdGFsbGF0aW9uICIKKyJtZXRob2RcbiIKKyJcbiIKKyJNaXNjZWxsYW5lb3VzOlxuIgorIiAgPywgSGVscCwgRjEgICAgICByZXF1ZXN0IGhlbHBcbiIKKyIgXmwgICAgICAgICAgICAgICAgcmVkcmF3IGRpc3BsYXlcbiIKKyIgIC8gICAgICAgICAgICAgICAgc2VhcmNoIChqdXN0IHJldHVybiB0byBjYW5jZWwpXG4iCisiICBcXCAgICAgICAgICAgICAgICByZXBlYXQgbGFzdCBzZWFyY2hcbiIKK21zZ3N0ciAiIgorIlRlY2xhcyBkZSBtb3ZpbWVudGHDp8OjbzogUHLDs3guL0FudGVyaW9yLCBUb3BvL0ZpbmFsLCBDaW1hL0JhaXhvLCBUcsOhcy8iCisiRnJlbnRlOlxuIgorIiAgaiwgU2V0YS1iYWl4byAgICAgICAgIGssIFNldGEtY2ltYSAgICAgICAgICAgIG1vdmVyIGRlc3RhcXVlXG4iCisiICBOLCBQYWdlLWRvd24sIEVzcGHDp28gIFAsIFBhZ2UtdXAsIEJhY2tzcGFjZSAgIHJvbGFyIGxpc3RhIGVtIDEgcMOhZ2luYVxuIgorIiAgXm4gICAgICAgICAgICAgICAgICAgIF5wICAgICAgICAgICAgICAgICAgICAgIHJvbGFyIGxpc3RhIGVtIDEgbGluaGFcbiIKKyIgIHQsIEhvbWUgICAgICAgICAgICAgICBlLCBFbmQgICAgICAgICAgICAgICAgICBzYWx0YXIgcC90b3BvL2ZpbmFsIGRhICIKKyJsaXN0YVxuIgorIiAgdSAgICAgICAgICAgICAgICAgICAgIGQgICAgICAgICAgICAgICAgICAgICAgIHJvbGFyIGluZm8uIGVtIDEgcMOhZ2luYVxuIgorIiAgXnUgICAgICAgICAgICAgICAgICAgIF5kICAgICAgICAgICAgICAgICAgICAgIHJvbGFyIGluZm8uIGVtIDEgbGluaGFcbiIKKyIgIEIsIFNldGEtZXNxdWVyZGEgICAgICBGLCBTZXRhLWRpcmVpdGEgICAgICAgICByb2xhciAxLzMgZGEgdGVsYSBwL28gbGFkb1xuIgorIiAgXmIgICAgICAgICAgICAgICAgICAgIF5mICAgICAgICAgICAgICAgICAgICAgIHJvbGFyIDEgY2FyYWN0ZXJlIHAvbyBsYWRvXG4iCisiKEVzdGFzIHPDo28gYXMgbWVzbWFzIHRlY2xhcyBkZSBtb3ZpbWVudGHDp8OjbyBkYSB0ZWxhIGRhIGxpc3RhIGRlIHBhY290ZXMuKVxuIgorIlxuIgorIlNhaXI6XG4iCisiIFJldHVybiwgRW50ZXIgICAgc2VsZWNjaW9uYXIgZXNzZSBtw6l0b2RvIGUgdmFpIHBhcmEgc3VhIGNvbmZpZ3VyYcOnw6NvXG4iCisiIHgsIFggICAgICAgICAgICAgc2FpciBzZW0gbXVkYXIgb3UgZGVmaW5pcnIgbyBtw6l0b2RvIGRlIGluc3RhbGHDp8Ojb1xuIgorIlxuIgorIk1pc2NlbMOibmVhOlxuIgorIiAgPywgQWp1ZGEsIEYxICAgIHBlZGlyIGFqdWRhXG4iCisiIF5sICAgICAgICAgICAgICAgcmVkZXNlbmhhciBhIHRlbGFcbiIKKyIgIC8gICAgICAgICAgICAgICBwcm9jdXJhciAoZW50ZXIgcGFyYSBjYW5jZWxhcilcbiIKKyIgIFxcICAgICAgICAgICAgICAgcmVwZXRpciDDumx0aW1hIGJ1c2NhXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzo2MAorbXNnaWQgIlR5cGUgZHNlbGVjdCAtLWhlbHAgZm9yIGhlbHAuIgorbXNnc3RyICJFc2NyZXZhIGRzZWxlY3QgLS1oZWxwIHBhcmEgYWp1ZGEuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQzCittc2dpZCAiYSIKK21zZ3N0ciAiYSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0MworbXNnaWQgIltBXWNjZXNzIgorbXNnc3RyICJbQV1jZXNzbyIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0MworbXNnaWQgIkNob29zZSB0aGUgYWNjZXNzIG1ldGhvZCB0byB1c2UuIgorbXNnc3RyICJFc2NvbGhhIG8gbcOpdG9kbyBhIHV0aWxpemFyLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NAorbXNnaWQgInUiCittc2dzdHIgInUiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDQKK21zZ2lkICJbVV1wZGF0ZSIKK21zZ3N0ciAiQWN0W1VdYWxpemFyIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ0Cittc2dpZCAiVXBkYXRlIGxpc3Qgb2YgYXZhaWxhYmxlIHBhY2thZ2VzLCBpZiBwb3NzaWJsZS4iCittc2dzdHIgIkFjdHVhbGl6YXIgYSBsaXN0YSBkZSBwYWNvdGVzIGRpc3BvbsOtdmVpcywgc2UgcG9zc8OtdmVsLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NQorbXNnaWQgInMiCittc2dzdHIgInMiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDUKK21zZ2lkICJbU11lbGVjdCIKK21zZ3N0ciAiW1NdZWxlY2Npb25hciIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NQorbXNnaWQgIlJlcXVlc3Qgd2hpY2ggcGFja2FnZXMgeW91IHdhbnQgb24geW91ciBzeXN0ZW0uIgorbXNnc3RyICJTb2xpY2l0ZSBxdWFpcyBwYWNvdGVzIHF1ZXIgbm8gc2V1IHNpc3RlbWEuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ2Cittc2dpZCAiaSIKK21zZ3N0ciAiaSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NgorbXNnaWQgIltJXW5zdGFsbCIKK21zZ3N0ciAiW0ldbnN0YWxhciIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NgorbXNnaWQgIkluc3RhbGwgYW5kIHVwZ3JhZGUgd2FudGVkIHBhY2thZ2VzLiIKK21zZ3N0ciAiSW5zdGFsYXIgZSBhY3R1YWxpemFyIG9zIHBhY290ZXMgZGVzZWphZG9zLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NworbXNnaWQgImMiCittc2dzdHIgImMiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDcKK21zZ2lkICJbQ11vbmZpZyIKK21zZ3N0ciAiW0Ndb25maWciCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDcKK21zZ2lkICJDb25maWd1cmUgYW55IHBhY2thZ2VzIHRoYXQgYXJlIHVuY29uZmlndXJlZC4iCittc2dzdHIgIkNvbmZpZ3VyYSBwYWNvdGVzIGFpbmRhIG7Do28gY29uZmlndXJhZG9zLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OAorbXNnaWQgInIiCittc2dzdHIgInIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDgKK21zZ2lkICJbUl1lbW92ZSIKK21zZ3N0ciAiW1JdZW1vdmVyIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ4Cittc2dpZCAiUmVtb3ZlIHVud2FudGVkIHNvZnR3YXJlLiIKK21zZ3N0ciAiUmVtb3ZlciBzb2Z0d2FyZSBuw6NvIGRlc2VqYWRvIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ5Cittc2dpZCAicSIKK21zZ3N0ciAicSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OQorbXNnaWQgIltRXXVpdCIKK21zZ3N0ciAiW1FdIFNhaXIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDkKK21zZ2lkICJRdWl0IGRzZWxlY3QuIgorbXNnc3RyICJTYWlyIGRvIGRzZWxlY3QuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTUwCittc2dpZCAibWVudSIKK21zZ3N0ciAibWVudSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE1NQorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIGhhbmRsaW5nIGZyb250ZW5kIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkZyb250ZW5kIGRlIGdlc3TDo28gZGUgcGFjb3RlcyBEZWJpYW4gYCVzJyB2ZXJzw6NvICVzLlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTU4Cittc2dpZCAiIgorIkNvcHlyaWdodCAoQykgMTk5NC0xOTk2IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uXG4iCittc2dzdHIgIiIKKyJDb3B5cmlnaHQgKEMpIDE5OTQtMTk5NiBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTYyCisjLCBmdXp6eQorbXNnaWQgIiIKKyJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAyIG9yXG4iCisibGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuXG4iCittc2dzdHIgIiIKKyJJc3RvIMOpIHNvZnR3YXJlIGxpdnJlOyB2ZWphIGEgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc8OjbyAyIG91XG4iCisicG9zdGVyaW9yIHBhcmEgY29uZGnDp8O1ZXMgZGUgY8OzcGlhLiBOw6NvIGV4aXN0ZSBORU5IVU1BIGdhcmFudGlhLlxuIgorIlZlamEgJXMgLS1saWNlbnNlIHBhcmEgZGV0YWxoZXMgZGUgY29weXJpZ2h0IGUgbGljZW7Dp2EuXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNzIgZHNlbGVjdC9tYWluLmNjOjIyMAorbXNnaWQgIjxzdGFuZGFyZCBvdXRwdXQ+IgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSBbPGFjdGlvbj4gLi4uXVxuIgorIlxuIgorbXNnc3RyICIiCisiVXRpbGl6YcOnw6NvOiAlcyBbPG9ww6fDo28+IC4uLl0gWzxhY8Onw6NvPiAuLi5dXG4iCisiXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyIgIC0tZXhwZXJ0ICAgICAgICAgICAgICAgICAgIFR1cm4gb24gZXhwZXJ0IG1vZGUuXG4iCisiICAtLWRlYnVnIDxmaWxlPiB8IC1EPGZpbGU+ICBUdXJuIG9uIGRlYnVnZ2luZywgc2VuZGluZyBvdXRwdXQgdG8gPGZpbGU+LlxuIgorIiAgLS1jb2xvdXIgfCAtLWNvbG9yIHNjcmVlbnBhcnQ6W2ZvcmVncm91bmRdLFtiYWNrZ3JvdW5kXVs6YXR0clsrYXR0cisuLl1dXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDb25maWd1cmUgc2NyZWVuIGNvbG91cnMuXG4iCisiXG4iCittc2dzdHIgIiIKKyJPcMOnw7VlczpcbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdMOzcmlvPiAgICBVc2FyIDxkaXJlY3TDs3Jpbz4gZW0gdmV6IGRlICVzLlxuIgorIiAgLS1leHBlcnQgICAgICAgICAgICAgICAgICAgTGlnYXIgbyBtb2RvIGRlIGVzcGVjaWFsaXN0YS5cbiIKKyIgIC0tZGVidWcgPGZpY2hlaXJvPiB8IC1EPGZpY2hlaXJvPiBMaWdhciBvIGRlYnVnZ2luZywgZW52aWFyIGEgc2HDrWRhICIKKyJwYXJhICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZpY2hlaXJvPi5cbiIKKyIgIC0tY29sb3VyIHwgLS1jb2xvciBzY3JlZW5wYXJ0Oltmb3JlZ3JvdW5kXSxbYmFja2dyb3VuZF1bOmF0dHJbK2F0dHIrLi5dXVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ29uZmlndXJhciBhcyBjb3JlcyBkbyBlY3LDoy5cbiIKKyJcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE5NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgICAgU2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgIFNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCittc2dzdHIgIiIKKyIgIC0taGVscFx0XHQgICAgICBNb3N0cmFyIGVzdGEgbWVuc2FnZW0gZGUgYWp1ZGEuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgICBNb3N0cmFyIGEgdmVyc8Ojby5cbiIKKyIgIC0tbGljZW5zZSB8IC0tbGljZW5jZSAgICAgIE1vc3RyYXIgYSBsaWNlbsOnYS5cbiIKKyJcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjIwMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQWN0aW9uczpcbiIKKyIgIGFjY2VzcyB1cGRhdGUgc2VsZWN0IGluc3RhbGwgY29uZmlnIHJlbW92ZSBxdWl0XG4iCisiXG4iCittc2dzdHIgIiIKKyJBY8Onw7VlczpcbiIKKyIgIGFjY2VzcyB1cGRhdGUgc2VsZWN0IGluc3RhbGwgY29uZmlnIHJlbW92ZSBxdWl0XG4iCisiXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2NyZWVucGFydHM6XG4iCittc2dzdHIgIlNjcmVlbnBhcnRzOlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjEwCisjLCBjLWZvcm1hdAorbXNnaWQgIkNvbG91cnM6XG4iCittc2dzdHIgIkNvcmVzOlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjE1CisjLCBjLWZvcm1hdAorbXNnaWQgIkF0dHJpYnV0ZXM6XG4iCittc2dzdHIgIkF0cmlidXRvczpcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjIzMworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBvcGVuIGRlYnVnIGZpbGUgYCUuMjU1cydcbiIKK21zZ3N0ciAibsOjbyBwb2RlIGFicmlyIGZpY2hlaXJvIGRlIGRlYnVnIGAlLjI1NXMnXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyNTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW52YWxpZCAlcyBgJXMnXG4iCittc2dzdHIgIiVzIGludsOhbGlkbyBgJXMnXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyNzAKK21zZ2lkICJzY3JlZW4gcGFydCIKK21zZ3N0ciAic2NyZWVuIHBhcnQiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyNzYKK21zZ2lkICJOdWxsIGNvbG91ciBzcGVjaWZpY2F0aW9uXG4iCittc2dzdHIgIkVzcGVjaWZpY2HDp8OjbyBkZSBjb3IgbnVsYVxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6Mjg0IGRzZWxlY3QvbWFpbi5jYzoyODkKK21zZ2lkICJjb2xvdXIiCittc2dzdHIgImNvciIKKworIzogZHNlbGVjdC9tYWluLmNjOjI5NworbXNnaWQgImNvbG91ciBhdHRyaWJ1dGUiCittc2dzdHIgImF0cmlidXRvIGRlIGNvciIKKworIzogZHNlbGVjdC9tYWluLmNjOjMyOQorbXNnaWQgIlRlcm1pbmFsIGRvZXMgbm90IGFwcGVhciB0byBzdXBwb3J0IGN1cnNvciBhZGRyZXNzaW5nLlxuIgorbXNnc3RyICJPIHRlcm1pbmFsIG7Do28gcGFyZWNlIHN1cG9ydGFyIGVuZGVyZcOnYW1lbnRvIGRvIGN1cnNvci5cbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjMzMQorbXNnaWQgIlRlcm1pbmFsIGRvZXMgbm90IGFwcGVhciB0byBzdXBwb3J0IGhpZ2hsaWdodGluZy5cbiIKK21zZ3N0ciAiTyB0ZXJtaW5hbCBuw6NvIHBhcmVjZSBzdXBvcnRhciBoaWdobGlnaHRpbmdcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjMzMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiU2V0IHlvdXIgVEVSTSB2YXJpYWJsZSBjb3JyZWN0bHksIHVzZSBhIGJldHRlciB0ZXJtaW5hbCxcbiIKKyJvciBtYWtlIGRvIHdpdGggdGhlIHBlci1wYWNrYWdlIG1hbmFnZW1lbnQgdG9vbCAlcy5cbiIKK21zZ3N0ciAiIgorIkRlZmluYSBjb3JyZWN0YW1lbnRlIGEgdmVyacOhdmVsIFRFUk0sIHV0aWxpemUgdW0gdGVybWluYWwgbWVsaG9yLFxuIgorIm91IGZhw6dhLW8gY29tIGEgZmVycmFtZW50ZSBkZSBnZXN0w6NvIHBvciBwYWNvdGUgJXMuXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzozMzYKK21zZ2lkICJ0ZXJtaW5hbCBsYWNrcyBuZWNlc3NhcnkgZmVhdHVyZXMsIGdpdmluZyB1cCIKK21zZ3N0ciAibyB0ZXJtaW5hbCBjYXJlY2UgZGUgZnVuY2lvbmFsaWRhZGVzIG5lY2Vzc8OhcmlhcywgZGVzaXN0aW5kbyIKKworIzogZHNlbGVjdC9tYWluLmNjOjQxNworbXNnaWQgIiIKKyJcbiIKKyJcbiIKKyJNb3ZlIGFyb3VuZCB3aXRoIF5QIGFuZCBeTiwgY3Vyc29yIGtleXMsIGluaXRpYWwgbGV0dGVycywgb3IgZGlnaXRzO1xuIgorIlByZXNzIDxlbnRlcj4gdG8gY29uZmlybSBzZWxlY3Rpb24uICAgXkwgcmVkcmF3cyBzY3JlZW4uXG4iCisiXG4iCittc2dzdHIgIiIKKyJcbiIKKyJcbiIKKyJNb3ZhLXNlIGNvbSBeUCBlIF5OLCB0ZWNsYXMgZGUgY3Vyc29yLCBsZXRyYXMgaW5pY2lhaXMsIG91IGRpZ2l0b3M7XG4iCisiQ2FycmVndWUgZW0gPGVudGVyPiBwYXJhIGNvbmZpcm1hciBhIHNlbGVjw6fDo28uICAgXkwgcmUtZGVzZW5oYSBvIGVjcsOjLlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6NDI4Cittc2dpZCAiIgorIlxuIgorIlxuIgorIlJlYWQtb25seSBhY2Nlc3M6IG9ubHkgcHJldmlldyBvZiBzZWxlY3Rpb25zIGlzIGF2YWlsYWJsZSEiCittc2dzdHIgIiIKKyJcbiIKKyJcbiIKKyJBY2Vzc28gYXBlbmFzIGRlIGxlaXR1cmE6IHPDsyBlc3TDoSBkaXNwb27DrXZlbCBhIHZpc3VhbGl6YcOnw6NvISIKKworIzogZHNlbGVjdC9tYWluLmNjOjQ0OAorbXNnaWQgImZhaWxlZCB0byBnZXRjaCBpbiBtYWluIG1lbnUiCittc2dzdHIgImZhbGhvdSBvIGdldGNoIG5vIG1lbnUgcHJpbmNpcGFsIgorCisjOiBkc2VsZWN0L21haW4uY2M6NTMxCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gYWN0aW9uIHN0cmluZyBgJS41MHMnIgorbXNnc3RyICJzdHJpbmcgZGUgYWPDp8OjbyBkZXNjb25oZWNpZGEgYCUuNTBzJyIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzo3NworbXNnaWQgImRzZWxlY3QgLSBsaXN0IG9mIGFjY2VzcyBtZXRob2RzIgorbXNnc3RyICJkc2VsZWN0IC0gbGlzdGEgZGUgbcOpdG9kb3MgZGUgYWNlc3NvIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjg2CisjLCBjLWZvcm1hdAorbXNnaWQgIkFjY2VzcyBtZXRob2QgYCVzJy4iCittc2dzdHIgIk3DqXRvZG8gZGUgYWNlc3NvIGAlcycuIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjEyMAorbXNnaWQgIkFiYnJldi4iCittc2dzdHIgIkFicmV2LiIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxMjEgZHNlbGVjdC9wa2dpbmZvLmNjOjEwNSBkc2VsZWN0L3BrZ3RvcC5jYzoyOTEKK21zZ2lkICJEZXNjcmlwdGlvbiIKK21zZ3N0ciAiRGVzY3Jpw6fDo28iCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTY0IGRzZWxlY3QvcGtnbGlzdC5jYzo1NzIKK21zZ2lkICJkb3VwZGF0ZSBmYWlsZWQiCittc2dzdHIgImZhbGhvdSBkb3VwZGF0ZSIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxNjYgZHNlbGVjdC9wa2dsaXN0LmNjOjU3NQorbXNnaWQgImZhaWxlZCB0byB1bmJsb2NrIFNJR1dJTkNIIgorbXNnc3RyICJmYWxoYSBhbyBkZXNibG9xdWVhciBTSUdXSU5DSCIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxNzAgZHNlbGVjdC9wa2dsaXN0LmNjOjU4MAorbXNnaWQgImZhaWxlZCB0byByZS1ibG9jayBTSUdXSU5DSCIKK21zZ3N0ciAiZmFsaG91IHJlLWJsb3F1ZWFyIFNJR1dJTkNIIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjE3MSBkc2VsZWN0L3BrZ2xpc3QuY2M6NTgyCittc2dpZCAiZ2V0Y2ggZmFpbGVkIgorbXNnc3RyICJmYWxob3UgZ2V0Y2giCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTg4Cittc2dpZCAiRXhwbGFuYXRpb24iCittc2dzdHIgIkV4cGxpY2HDp8OjbyBkZSAiCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTk3Cittc2dpZCAiTm8gZXhwbGFuYXRpb24gYXZhaWxhYmxlLiIKK21zZ3N0ciAiU2VtIGV4cGxpY2HDp8OjbyBkaXNwb27DrXZlbC4iCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjY3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJcbiIKKyIlczogJXNcbiIKK21zZ3N0ciAiIgorIlxuIgorIlxuIgorIiVzOiAlc1xuIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzo3MAorbXNnaWQgIiIKKyJcbiIKKyJQcmVzcyA8ZW50ZXI+IHRvIGNvbnRpbnVlLiIKK21zZ3N0ciAiIgorIlxuIgorIkNhcnJlZ3VlIGVtIDxlbnRlcj4gcGFyYSBjb250aW51YXIuIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoxNjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHJlc3MgPGVudGVyPiB0byBjb250aW51ZS5cbiIKK21zZ3N0ciAiQ2FycmVndWUgZW0gPGVudGVyPiBwYXJhIGNvbnRpbnVhci5cbiIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MTYyCisjLCBmdXp6eQorbXNnaWQgIjxzdGFuZGFyZCBlcnJvcj4iCittc2dzdHIgImVycm8gZGUgZXNjcml0YSBuYSBzYcOtZGEgZGUgZXJyb3MgcGFkcsOjbyIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MTY1Cittc2dpZCAiZXJyb3IgcmVhZGluZyBhY2tub3dsZWRnZW1lbnQgb2YgcHJvZ3JhbSBmYWlsdXJlIG1lc3NhZ2UiCittc2dzdHIgImVycm8gbGVuZG8gcmVjb25oZWNpbWVudG8gZGEgbWVuc2FnZW0gZGUgZmFsaGEgZG8gcHJvZ3JhbWEiCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjE5NgorbXNnaWQgInVwZGF0ZSBhdmFpbGFibGUgbGlzdCBzY3JpcHQiCittc2dzdHIgInNjcmlwdCBkZSBhY3R1YWxpemHDp8OjbyBkZSBsaXN0YSBkZSBkaXNwb27DrXZlaXMiCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjIwMAorbXNnaWQgImluc3RhbGxhdGlvbiBzY3JpcHQiCittc2dzdHIgInNjcmlwdCBkZSBpbnN0YWxhw6fDo28iCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjI0NgorbXNnaWQgInF1ZXJ5L3NldHVwIHNjcmlwdCIKK21zZ3N0ciAic2NyaXB0IGRlIHF1ZXJ5L3NldHVwIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzo1MworIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gbWV0aG9kIG9wdGlvbnMgZmlsZSBgJS4yNTBzJyAtLSAlcyIKK21zZ3N0ciAiZXJybyBkZSBzaW50YXhlIG5vIGZpY2hlaXJvIGRlIG9ww6fDtWVzIGRlIG3DqXRvZG8gYCUuMjUwcycgLS0gJXMiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjU5CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHJlYWRpbmcgb3B0aW9ucyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJlcnJvIGxlbmRvIG8gZmljaGVpcm8gZGUgb3DDp8O1ZXMgYCUuMjUwcyciCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjkwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIGAlLjI1MHMnIGRpcmVjdG9yeSBmb3IgcmVhZGluZyBtZXRob2RzIgorbXNnc3RyICJuw6NvIGZvaSBwb3Nzw612ZWwgbGVyIG8gZGlyZWN0w7NyaW8gYCUuMjUwcycgcGFyYSBtw6l0b2RvcyBkZSBsZWl0dXJhIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxMDYKKyMsIGMtZm9ybWF0Cittc2dpZCAibWV0aG9kIGAlLjI1MHMnIGhhcyBuYW1lIHRoYXQgaXMgdG9vIGxvbmcgKCVkID4gJWQgY2hhcmFjdGVycykiCittc2dzdHIgIiIKKyJvIG3DqXRvZG8gYCUuMjUwcycgdGVtIHVtIG5vbWUgcXVlIMOpIGRlbWFzaWFkbyBjb21wcmlkbyAoJWQgPiAlZCBjYXJhY3RlcmVzKSIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTE3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBhY2Nlc3MgbWV0aG9kIHNjcmlwdCBgJS4yNTBzJyIKK21zZ3N0ciAibsOjbyBmb2kgcG9zc8OtdmVsIGFjZWRlciBhbyBzY3JpcHQgZG8gbcOpdG9kbyBgJS4yNTBzJyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTIzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIG1ldGhvZCBvcHRpb25zIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm7Do28gZm9pIHBvc3PDrXZlbCBsZXIgZmljaGVpcm8gZGUgb3DDp8O1ZXMgZGUgbcOpdG9kbyBgJS4yNTBzJyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTQ3Cittc2dpZCAibm9uLWRpZ2l0IHdoZXJlIGRpZ2l0IHdhbnRlZCIKK21zZ3N0ciAibsOjbyBkw61naXRvIG9uZGUgw6kgZXNwZXJhZG8gZMOtZ2l0byIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTUwCittc2dpZCAiRU9GIGluIGluZGV4IHN0cmluZyIKK21zZ3N0ciAiRU9GIG5vIGluZGV4IGRhIHN0cmluZyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTUzCittc2dpZCAiaW5kZXggc3RyaW5nIHRvbyBsb25nIgorbXNnc3RyICJpbmRleCBkYSBzdHJpbmcgZGVtYXNpYWRvIGNvbXByaWRvIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNTYKK21zZ2lkICJuZXdsaW5lIGJlZm9yZSBvcHRpb24gbmFtZSBzdGFydCIKK21zZ3N0ciAibmV3bGluZSBhbnRlcyBhbnRlcyBkZSBjb21lw6dhciBub21lIGRlIG9ww6fDo28iCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE1OAorbXNnaWQgIkVPRiBiZWZvcmUgb3B0aW9uIG5hbWUgc3RhcnQiCittc2dzdHIgIkVPRiBhbnRlcyBkZSBjb21lw6dhciBub21lIGRlIG9ww6fDo28iCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE2MgorbXNnaWQgIm5vbmFscGhhIHdoZXJlIG9wdGlvbiBuYW1lIHN0YXJ0IHdhbnRlZCIKK21zZ3N0ciAibsOjby1hbGZhbnVtw6lyaWNvIG9uZGUgZXJhIG5lY2Vzc8OhcmlvIG8gaW7DrWNpbyBkbyBub21lIGRlIG9ww6fDo28iCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE2NAorbXNnaWQgIm5vbi1hbHBoYW51bSBpbiBvcHRpb24gbmFtZSIKK21zZ3N0ciAibsOjbyBhbGZhbnVtw6lyaWNvIG5vIG5vbWUgZGUgb3DDp8OjbyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTY3Cittc2dpZCAiRU9GIGluIG9wdGlvbiBuYW1lIgorbXNnc3RyICJFT0Ygbm8gbm9tZSBkZSBvcMOnw6NvIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNzIKK21zZ2lkICJuZXdsaW5lIGJlZm9yZSBzdW1tYXJ5IgorbXNnc3RyICJuZXdsaW5lIGFudGVzIGRvIHN1bcOhcmlvIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNzQKK21zZ2lkICJFT0YgYmVmb3JlIHN1bW1hcnkiCittc2dzdHIgIkVPRiBhbnRlcyBkbyBzdW3DoXJpbyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTgwCittc2dpZCAiRU9GIGluIHN1bW1hcnkgLSBtaXNzaW5nIG5ld2xpbmUiCittc2dzdHIgIkVPRiBubyBzdW3DoXJpbyAtIGZhbHRhIG5ld2xpbmUiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE5MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBvcHRpb24gZGVzY3JpcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibsOjbyBmb2kgcG9zc8OtdmVsIGFicmlyIGZpY2hlaXJvIGRlIGRlc2NyacOnw6NvIGRlIG9ww6fDtWVzIGAlLjI1MHMnIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxOTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgb3B0aW9uIGRlc2NyaXB0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKyJuw6NvIGZvaSBwb3Nzw612ZWwgZmF6ZXIgc3RhdCBhbyBmaWNoZWlybyBkZSBkZXNjcmnDp8OjbyBkZSBvcMOnw7VlcyBgJS4yNTBzJyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTk4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZWFkIG9wdGlvbiBkZXNjcmlwdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJmYWxob3UgbGVyIGZpY2hlaXJvIGRlIGRlc2NyacOnw6NvIGRlIG9ww6fDtWVzIGAlLjI1MHMnIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgZHVyaW5nIHJlYWQgb2Ygb3B0aW9uIGRlc2NyaXB0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImVycm8gZHVyYW50ZSBhIGxlaXR1cmEgZG8gZmljaGVpcm8gZGUgZGVzY3Jpw6fDo28gZGUgb3DDp8O1ZXMgYCUuMjUwcyciCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjIyNAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBkdXJpbmcgcmVhZCBvZiBtZXRob2Qgb3B0aW9ucyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJlcnJvIGR1cmFudGUgYSBsZWl0dXJhIGRvIGZpY2hlaXJvIGRlIG9ww6fDtWVzIGRlIG3DqXRvZG8gYCUuMjUwcyciCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjI0NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBjdXJyZW50IG9wdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuw6NvIGZvaSBwb3Nzw612ZWwgYWJyaXIgbyBmaWNoZWlybyBkZSBvcMOnw7VlcyBhY3R1YWwgYCUuMjUwcyciCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjI4OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBuZXcgb3B0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm7Do28gZm9pIHBvc3PDrXZlbCBhYnJpciBub3ZvIGZpY2hlaXJvIGRlIG9ww6fDtWVzIGAlLjI1MHMnIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ldyBvcHRpb24gdG8gYCUuMjUwcyciCittc2dzdHIgIm7Do28gZm9pIHBvc3PDrXZlbCBncmF2YXIgbm92YSBvcMOnw6NvIHBhcmEgYCUuMjUwcyciCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjI5NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgbmV3IG9wdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuw6NvIGZvaSBwb3Nzw612ZWwgZmVjaGFyIG5vdm8gZmljaGVpcm8gZGUgb3DDp8OjbyBgJS4yNTBzJyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6Mjk3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyBvcHRpb24gYXMgYCUuMjUwcyciCittc2dzdHIgIm7Do28gZm9pIHBvc3PDrXZlbCBpbnN0YWxhciBub3ZhIG9ww6fDo28gY29tbyBgJS4yNTBzJyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjM2Cittc2dpZCAibmV3IHBhY2thZ2UiCittc2dzdHIgIm5vdm8gcGFjb3RlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MzcKK21zZ2lkICJpbnN0YWxsIgorbXNnc3RyICJpbnN0YWxhciIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjM4Cittc2dpZCAiaG9sZCIKK21zZ3N0ciAibWFudGVyIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MzkKK21zZ2lkICJyZW1vdmUiCittc2dzdHIgInJlbW92ZXIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo0MAorbXNnaWQgInB1cmdlIgorbXNnc3RyICJwdXJnYXIiCisKKyMuIFRSQU5TTEFUT1JTOiBUaGUgc3BhY2UgaXMgYSB0cmljayB0byB3b3JrIGFyb3VuZCBnZXR0ZXh0IHdoaWNoIHVzZXMKKyMuICogdGhlIGVtcHR5IHN0cmluZyB0byBzdG9yZSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgdHJhbnNsYXRpb24uIERPIE5PVAorIy4gKiBDSEFOR0UgVEhBVCBJTiBBIFRSQU5TTEFUSU9OISBUaGUgY29kZSByZWFsbHkgcmVsaWVzIG9uIHRoYXQgYmVpbmcKKyMuICogYSBzaW5nbGUgc3BhY2UuCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NDcKK21zZ2lkICIgIgorbXNnc3RyICIgIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NDgKK21zZ2lkICJSRUlOU1RBTEwiCittc2dzdHIgIlJFSU5TVEFMQVIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1MQorbXNnaWQgIm5vdCBpbnN0YWxsZWQiCittc2dzdHIgIm7Do28gaW5zdGFsYWRvIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTIKK21zZ2lkICJyZW1vdmVkIChjb25maWdzIHJlbWFpbikiCittc2dzdHIgInJlbW92aWRvIChhcyBjb25maWd1cmHDp8O1ZXMgbWFudMOpbS1zZSkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1MworbXNnaWQgImhhbGYgaW5zdGFsbGVkIgorbXNnc3RyICJzZW1pLWluc3RhbGFkbyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjU0Cittc2dpZCAidW5wYWNrZWQgKG5vdCBzZXQgdXApIgorbXNnc3RyICJkZXNjb21wYWN0YWRvIChuw6NvIGNvbmZpZ3VyYWRvKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjU1Cittc2dpZCAiaGFsZiBjb25maWd1cmVkIChjb25maWcgZmFpbGVkKSIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTYKK21zZ2lkICJhd2FpdGluZyB0cmlnZ2VyIHByb2Nlc3NpbmciCittc2dzdHIgImEgYWd1YXJkYXIgbyBwcm9jZXNzYW1lbnRvIGRlICd0cmlnZ2VyJyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjU3Cittc2dpZCAidHJpZ2dlcmVkIgorbXNnc3RyICJmZWl0byBvICd0cmlnZ2VyJyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjU4Cittc2dpZCAiaW5zdGFsbGVkIgorbXNnc3RyICJpbnN0YWxhZG8iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo2MQorbXNnaWQgIlJlcXVpcmVkIgorbXNnc3RyICJOZWNlc3PDoXJpbyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjYyCittc2dpZCAiSW1wb3J0YW50IgorbXNnc3RyICJJbXBvcnRhbnRlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjMKK21zZ2lkICJTdGFuZGFyZCIKK21zZ3N0ciAiU3RhbmRhcmQiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo2NAorbXNnaWQgIk9wdGlvbmFsIgorbXNnc3RyICJPcGNpb25hbCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjY1Cittc2dpZCAiRXh0cmEiCittc2dzdHIgIkV4dHJhIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjYKK21zZ2lkICIhQnVnISIKK21zZ3N0ciAiIUJ1ZyEiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo2NworbXNnaWQgIlVuY2xhc3NpZmllZCIKK21zZ3N0ciAiTsOjbyBjbGFzc2lmaWNhZG8iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3MAorbXNnaWQgInN1Z2dlc3RzIgorbXNnc3RyICJzdWdlcmUiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3MQorbXNnaWQgInJlY29tbWVuZHMiCittc2dzdHIgInJlY29tZW5kYSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjcyCittc2dpZCAiZGVwZW5kcyBvbiIKK21zZ3N0ciAiZGVwZW5kZSBkZSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjczCittc2dpZCAicHJlLWRlcGVuZHMgb24iCittc2dzdHIgInByZS1kZXBlbmRlIGRlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzQKK21zZ2lkICJicmVha3MiCittc2dzdHIgImVzdHJhZ2EiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3NQorbXNnaWQgImNvbmZsaWN0cyB3aXRoIgorbXNnc3RyICJlbSBjb25mbGl0byBjb20iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3NgorbXNnaWQgInByb3ZpZGVzIgorbXNnc3RyICJkaXNwb25pYmlsaXphIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzcKK21zZ2lkICJyZXBsYWNlcyIKK21zZ3N0ciAic3Vic3RpdHVpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzgKK21zZ2lkICJlbmhhbmNlcyIKK21zZ3N0ciAibWVsaG9yYSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjgxCittc2dpZCAiUmVxIgorbXNnc3RyICJOZWMiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4MgorbXNnaWQgIkltcCIKK21zZ3N0ciAiSW1wIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODMKK21zZ2lkICJTdGQiCittc2dzdHIgIlN0ZCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjg0Cittc2dpZCAiT3B0IgorbXNnc3RyICJPcGMiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4NQorbXNnaWQgIlh0ciIKK21zZ3N0ciAiWHRyIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODYKK21zZ2lkICJiVUciCittc2dzdHIgImJVRyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjg3Cittc2dpZCAiPyIKK21zZ3N0ciAiPyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjk1IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTUKK21zZ2lkICJCcm9rZW4iCittc2dzdHIgIkRhbmlmaWNhZG8iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo5NgorbXNnaWQgIk5ldyIKK21zZ3N0ciAiTm92byIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjk3Cittc2dpZCAiVXBkYXRlZCIKK21zZ3N0ciAiQWN0dWFsaXphZG8iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo5OAorbXNnaWQgIk9ic29sZXRlL2xvY2FsIgorbXNnc3RyICJPYnNvbGV0by9sb2NhbCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjk5Cittc2dpZCAiVXAtdG8tZGF0ZSIKK21zZ3N0ciAiQWN0dWFsaXphZG9zIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTAwCittc2dpZCAiQXZhaWxhYmxlIgorbXNnc3RyICJEaXNwb27DrXZlaXMiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDEgZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExNworbXNnaWQgIlJlbW92ZWQiCittc2dzdHIgIlJlbW92aWRvcyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwMiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTExCittc2dpZCAiQnJva2VubHkgaW5zdGFsbGVkIHBhY2thZ2VzIgorbXNnc3RyICJQYWNvdGVzIGluc3RhbGFkb3MgZGFuaWZpY2Fkb3MiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDMKK21zZ2lkICJOZXdseSBhdmFpbGFibGUgcGFja2FnZXMiCittc2dzdHIgIk5vdm9zIHBhY290ZXMgZGlzcG9uw612ZWlzIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTA0Cittc2dpZCAiVXBkYXRlZCBwYWNrYWdlcyAobmV3ZXIgdmVyc2lvbiBpcyBhdmFpbGFibGUpIgorbXNnc3RyICJQYWNvdGVzIGFjdHVhbGl6YWRvcyAoZXN0w6EgZGlzcG9uw612ZWwgdmVyc8OjbyBtYWlzIHJlY2VudGUpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTA1Cittc2dpZCAiT2Jzb2xldGUgYW5kIGxvY2FsIHBhY2thZ2VzIHByZXNlbnQgb24gc3lzdGVtIgorbXNnc3RyICJQYWNvdGVzIG9ic29sZXRvcyBlIGxvY2FpcyBwcmVzZW50ZXMgbm8gc2lzdGVtYSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwNgorbXNnaWQgIlVwIHRvIGRhdGUgaW5zdGFsbGVkIHBhY2thZ2VzIgorbXNnc3RyICJQYWNvdGVzIGluc3RhbGFkb3MgYWN0dWFsaXphZG9zIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTA3Cittc2dpZCAiQXZhaWxhYmxlIHBhY2thZ2VzIChub3QgY3VycmVudGx5IGluc3RhbGxlZCkiCittc2dzdHIgIlBhY290ZXMgZGlzcG9uw612ZWlzIChuw6NvIGluc3RhbGFkb3MgYWN0dWFsbWVudGUpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTA4Cittc2dpZCAiUmVtb3ZlZCBhbmQgbm8gbG9uZ2VyIGF2YWlsYWJsZSBwYWNrYWdlcyIKK21zZ3N0ciAiUGFjb3RlcyByZW1vdmlkb3MgZSBxdWUgasOhIG7Do28gZXN0w6NvIGRpc3BvbsOtdmVpcyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExMgorbXNnaWQgIkluc3RhbGxlZCBwYWNrYWdlcyIKK21zZ3N0ciAiUGFjb3RlcyBpbnN0YWxhZG9zIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTEzCittc2dpZCAiUmVtb3ZlZCBwYWNrYWdlcyAoY29uZmlndXJhdGlvbiBzdGlsbCBwcmVzZW50KSIKK21zZ3N0ciAiUGFjb3RlcyByZW1vdmlkb3MgKGNvbmZpZ3VyYcOnw6NvIGFpbmRhIHByZXNlbnRlKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExNAorbXNnaWQgIlB1cmdlZCBwYWNrYWdlcyBhbmQgdGhvc2UgbmV2ZXIgaW5zdGFsbGVkIgorbXNnc3RyICJQYWNvdGVzIHB1cmdhZG9zIGUgb3MgcXVlIG51bmNhIGZvcmFtIGluc3RhbGFkb3MiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTYKK21zZ2lkICJJbnN0YWxsZWQiCittc2dzdHIgIkluc3RhbGFkbyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExOAorbXNnaWQgIlB1cmdlZCIKK21zZ3N0ciAiUHVyZ2FkbyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjE5OAorbXNnaWQgImRzZWxlY3QgLSByZWN1cnNpdmUgcGFja2FnZSBsaXN0aW5nIgorbXNnc3RyICJkc2VsZWN0IC0gbGlzdGFnZW0gcmVjdXJzaXZhIGRlIHBhY290ZXMiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxOTkKK21zZ2lkICJkc2VsZWN0IC0gaW5zcGVjdGlvbiBvZiBwYWNrYWdlIHN0YXRlcyIKK21zZ3N0ciAiZHNlbGVjdCAtIGluc3BlY8Onw6NvIGRlIGVzdGFkbyBkb3MgcGFjb3RlcyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIwMAorbXNnaWQgImRzZWxlY3QgLSBtYWluIHBhY2thZ2UgbGlzdGluZyIKK21zZ3N0ciAiZHNlbGVjdCAtIGxpc3RhIHByaW5jaXBhbCBkZSBwYWNvdGVzIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjA4Cittc2dpZCAiIChieSBzZWN0aW9uKSIKK21zZ3N0ciAiIChwb3Igc2Vjw6fDo28pIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjExCittc2dpZCAiIChhdmFpbC4sIHNlY3Rpb24pIgorbXNnc3RyICIgKGRpc3AuLCBzZWPDp8OjbykiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMTQKK21zZ2lkICIgKHN0YXR1cywgc2VjdGlvbikiCittc2dzdHIgIiAoc3RhdHVzLCBzZWPDp8OjbykiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMjMKK21zZ2lkICIgKGJ5IHByaW9yaXR5KSIKK21zZ3N0ciAiKHBvciBwcmlvcmlkYWRlKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIyNgorbXNnaWQgIiAoYXZhaWwuLCBwcmlvcml0eSkiCittc2dzdHIgIiAoZGlzcC4sIHByb2lvcmlkYWRlKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIyOQorbXNnaWQgIiAoc3RhdHVzLCBwcmlvcml0eSkiCittc2dzdHIgIiAoc3RhdHVzLCBwcmlvcmlkYWRlKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIzOCBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjUwCittc2dpZCAiIChhbHBoYWJldGljYWxseSkiCittc2dzdHIgIiAoYWxmYWJldGljYW1lbnRlKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI0MQorbXNnaWQgIiAoYnkgYXZhaWxhYmlsaXR5KSIKK21zZ3N0ciAiIChwb3IgZGlzcG9uaWJpbGlkYWRlKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI0NAorbXNnaWQgIiAoYnkgc3RhdHVzKSIKK21zZ3N0ciAiIChwb3Igc3RhdHVzKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI1OAorbXNnaWQgIiBtYXJrOisvPS8tIHRlcnNlOnYgaGVscDo/IgorbXNnc3RyICIgbWFyY2E6Ky89Ly0gcmVzdW1vOnYgYWp1ZGE6PyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI1OQorbXNnaWQgIiBtYXJrOisvPS8tIHZlcmJvc2U6diBoZWxwOj8iCittc2dzdHIgIiBtYXJjYTorLz0vLSBkZXRhbGhlOnYgYWp1ZGE6PyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI2MAorbXNnaWQgIiB0ZXJzZTp2IGhlbHA6PyIKK21zZ3N0ciAiIGRldGFsaGU6diBhanVkYTo/IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjYxCittc2dpZCAiIHZlcmJvc2U6diBoZWxwOj8iCittc2dzdHIgIiBkZXRhbGhlOnYgYWp1ZGE6PyIKKworIzogZHNlbGVjdC9wa2dpbmZvLmNjOjgwCittc2dpZCAiIgorIlRoZSBsaW5lIHlvdSBoYXZlIGhpZ2hsaWdodGVkIHJlcHJlc2VudHMgbWFueSBwYWNrYWdlczsgaWYgeW91IGFzayB0byAiCisiaW5zdGFsbCwgcmVtb3ZlLCBob2xkLCBldGMuIGl0IHlvdSB3aWxsIGFmZmVjdCBhbGwgdGhlIHBhY2thZ2VzIHdoaWNoIG1hdGNoICIKKyJ0aGUgY3JpdGVyaW9uIHNob3duLlxuIgorIlxuIgorIklmIHlvdSBtb3ZlIHRoZSBoaWdobGlnaHQgdG8gYSBsaW5lIGZvciBhIHBhcnRpY3VsYXIgcGFja2FnZSB5b3Ugd2lsbCBzZWUgIgorImluZm9ybWF0aW9uIGFib3V0IHRoYXQgcGFja2FnZSBkaXNwbGF5ZWQgaGVyZS5cbiIKKyJZb3UgY2FuIHVzZSBgbycgYW5kIGBPJyB0byBjaGFuZ2UgdGhlIHNvcnQgb3JkZXIgYW5kIGdpdmUgeW91cnNlbGYgdGhlICIKKyJvcHBvcnR1bml0eSB0byBtYXJrIHBhY2thZ2VzIGluIGRpZmZlcmVudCBraW5kcyBvZiBncm91cHMuIgorbXNnc3RyICIiCisiQSBsaW5oYSBxdWUgc2VsZWNjaW9ub3UgcmVwcmVzZW50YSBtdWl0b3MgcGFjb3Rlczsgc2UgcGVkaXIgcGFyYSBpbnN0YWxhciwgIgorInJlbW92ZXIsIG1hbnRlciwgZXRjIHZhaSBhZmVjdGFyIG9zIHBhY290ZXMgcXVlIGNvaW5jaWRhbSBjb20gbyBjcml0w6lyaW8gIgorIm1vc3RyYWRvLlxuIgorIlxuIgorIlNlIG1vdmVyIGEgc2VsZWPDp8OjbyBwYXJhIHVtYSBsaW5oYSBkZSB1bSBwYWNvdGUgaW5kaXZpZHVhbCB2ZXLDoSBhIGluZm9ybWHDp8OjbyAiCisiYWNlcmNhIGRlc3NlIHBhY290ZSBtb3N0cmFkYSBhcXVpLlxuIgorIlBvZGUgdXRpbGl6YXIgJ28nIGUgJ08nIHBhcmEgbW9kaWZpY2FyIGEgb3JkZW5hw6fDo28gZSBkYXIgYSB2b2PDqiBwcsOzcmlvIGEgIgorIm9wb3J0dW5pZGFkZSBkZSBtYXJjYXIgcGFjb3RlcyBlbSBkaWZlcmVudGVzIHRpcG9zIGRlIGdydXBvcy4iCisKKyM6IGRzZWxlY3QvcGtnaW5mby5jYzo5MworbXNnaWQgIkludGVycmVsYXRpb25zaGlwcyIKK21zZ3N0ciAiSW50ZXJyZWxhY2lvbmFtZW50b3MiCisKKyM6IGRzZWxlY3QvcGtnaW5mby5jYzoxMTIKK21zZ2lkICJObyBkZXNjcmlwdGlvbiBhdmFpbGFibGUuIgorbXNnc3RyICJTZW0gZGVzY3Jpw6fDo28gZGlzcG9uw612ZWwiCisKKyM6IGRzZWxlY3QvcGtnaW5mby5jYzoxMzAKK21zZ2lkICJJbnN0YWxsZWQgY29udHJvbCBmaWxlIGluZm9ybWF0aW9uIgorbXNnc3RyICJJbmZvcm1hw6fDo28gZG8gZmljaGVpcm8gY29udHJvbGUgZGUgJ0luc3RhbGxlZCciCisKKyM6IGRzZWxlY3QvcGtnaW5mby5jYzoxNDYKK21zZ2lkICJBdmFpbGFibGUgY29udHJvbCBmaWxlIGluZm9ybWF0aW9uIgorbXNnc3RyICJpbmZvcm1hw6fDo28gJ0F2YWlsYWJsZScgZG8gZmljaGVpcm8gZGUgY29udHJvbGUiCisKKyM6IGRzZWxlY3QvcGtnbGlzdC5jYzo0MTYKK21zZ2lkICJUaGVyZSBhcmUgbm8gcGFja2FnZXMuIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnbGlzdC5jYzo1MDcKK21zZ2lkICJpbnZhbGlkIHNlYXJjaCBvcHRpb24gZ2l2ZW4iCittc2dzdHIgImZvcm5lY2lkYSBvcMOnw6NvIGRlIGJ1c2NhIGludsOhbGlkYSIKKworIzogZHNlbGVjdC9wa2dsaXN0LmNjOjUyMQorbXNnaWQgImVycm9yIGluIHJlZ3VsYXIgZXhwcmVzc2lvbiIKK21zZ3N0ciAiZXJybyBlbSBleHByZXNzw6NvIHJlZ3VsYXIiCisKKyM6IGRzZWxlY3QvcGtnc3VibGlzdC5jYzoxMDcKK21zZ2lkICIgZG9lcyBub3QgYXBwZWFyIHRvIGJlIGF2YWlsYWJsZVxuIgorbXNnc3RyICIgbsOjbyBwYXJlY2UgZXN0YXIgZGlzcG9uw612ZWxcbiIKKworIzogZHNlbGVjdC9wa2dzdWJsaXN0LmNjOjEyNworbXNnaWQgIiBvciAiCittc2dzdHIgIiBvdSAiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjU3Cittc2dpZCAiQWxsIgorbXNnc3RyICJUb2RvcyIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6NzkKK21zZ2lkICJBbGwgcGFja2FnZXMiCittc2dzdHIgIlRvZG9zIG9zIHBhY290ZXMiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHBhY2thZ2VzIHdpdGhvdXQgYSBzZWN0aW9uIgorbXNnc3RyICIlcyBwYWNvdGVzIHNlbSBzZWPDp8OjbyIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcGFja2FnZXMgaW4gc2VjdGlvbiAlcyIKK21zZ3N0ciAiJXMgcGFjb3RlcyBuYSBzZWPDp8OjbyAlcyIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6OTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgJXMgcGFja2FnZXMiCittc2dzdHIgIiVzICVzIHBhY290ZXMiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjk1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzICVzIHBhY2thZ2VzIHdpdGhvdXQgYSBzZWN0aW9uIgorbXNnc3RyICIlcyAlcyBwYWNvdGVzIHNlbSBzZWPDp8OjbyIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6OTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgJXMgcGFja2FnZXMgaW4gc2VjdGlvbiAlcyIKK21zZ3N0ciAiJXMgJXMgcGFjb3RlcyBuYSBzZWPDp8OjbyAlcyIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6MTE4CisjLCBjLWZvcm1hdAorbXNnaWQgIiUtKnMgJXMlcyVzOyAgJXMgKHdhczogJXMpLiAgJXMiCittc2dzdHIgIiUtKnMgJXMlcyVzOyAgJXMgKGZvaTogJXMpLiAgJXMiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI2MworbXNnaWQgIkVycm9yIgorbXNnc3RyICJFcnJvIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyNjcKK21zZ2lkICJJbnN0YWxsZWQ/IgorbXNnc3RyICJJbnN0YWxhZG8/IgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyNzEKK21zZ2lkICJPbGQgbWFyayIKK21zZ3N0ciAiTWFyY2EgYW50aWdhIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyNzUKK21zZ2lkICJNYXJrZWQgZm9yIgorbXNnc3RyICJNYXJjYWRvIHBhcmEiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI3OAorbXNnaWQgIkVJT00iCittc2dzdHIgIkVJT00iCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI4MAorbXNnaWQgIlNlY3Rpb24iCittc2dzdHIgIlNlY8Onw6NvIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyODEKK21zZ2lkICJQcmlvcml0eSIKK21zZ3N0ciAiUHJpb3JpZGFkZSIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6MjgyCittc2dpZCAiUGFja2FnZSIKK21zZ3N0ciAiUGFjb3RlIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyODYKK21zZ2lkICJJbnN0LnZlciIKK21zZ3N0ciAiVmVycy5JbnN0IgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyODkKK21zZ2lkICJBdmFpbC52ZXIiCittc2dzdHIgIlZlci5EaXNwb24uIgorCisjfiBtc2dpZCAicmV0dXJuZWQgZXJyb3IgZXhpdCBzdGF0dXMgJWQuXG4iCisjfiBtc2dzdHIgIm8gZXJybyByZXRvcm5vdSBvIHN0YXR1cyBkZSBzYcOtZGEgJWQuXG4iCisKKyN+IG1zZ2lkICJ3YXMgaW50ZXJydXB0ZWQuXG4iCisjfiBtc2dzdHIgImZvaSBpbnRlcnJvbXBpZG8uXG4iCisKKyN+IG1zZ2lkICJ3YXMgdGVybWluYXRlZCBieSBhIHNpZ25hbDogJXMuXG4iCisjfiBtc2dzdHIgImZvaSB0ZXJtaW5hZG8gcG9yIHVtIHNpbmFsOiAlcy5cbiIKKworI34gbXNnaWQgIihJdCBsZWZ0IGEgY29yZWR1bXAuKVxuIgorI34gbXNnc3RyICIoRGVpeG91IHVtIGNvcmVkdW1wLilcbiIKKworI34gbXNnaWQgImZhaWxlZCB3aXRoIGFuIHVua25vd24gd2FpdCByZXR1cm4gY29kZSAlZC5cbiIKKyN+IG1zZ3N0ciAiZmFsaG91IGNvbSB1bSBjw7NkaWdvIGRlIHJldG9ybm8gJWQgZGVzY29uaGVjaWRvIGRlIHdhaXQuXG4iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcnVuICUuMjUwcyBwcm9jZXNzIGAlLjI1MHMnIgorI34gbXNnc3RyICJuw6NvIGZvaSBwb3Nzw612ZWwgY29ycmVyICUuMjUwcyBwcm9jZXNzbyBgJS4yNTBzJyIKKworI34gbXNnaWQgImZhaWxlZCBjb25maWciCisjfiBtc2dzdHIgImZhbGhhIG5hIGNvbmZpZ3VyYcOnw6NvIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHdhaXQgZm9yICUuMjUwcyIKKyN+IG1zZ3N0ciAibsOjbyBmb2kgcG9zc8OtdmVsIGVzcGVyYXIgcG9yICUuMjUwcyciCisKKyN+IG1zZ2lkICJnb3Qgd3JvbmcgY2hpbGQncyBzdGF0dXMgLSBhc2tlZCBmb3IgJWxkLCBnb3QgJWxkIgorI34gbXNnc3RyICJyZWNlYmV1IG8gc3RhdHVzIGRvIGZpbGhvIGVycmFkbyAtIHBlZGlkbyBwb3IgJWxkLCByZWNlYmV1ICVsZCIKKworI34gbXNnaWQgIlJlY29tbWVuZGVkIgorI34gbXNnc3RyICJSZWNvbWVuZGFkbyIKKworI34gbXNnaWQgIkNvbnRyaWIiCisjfiBtc2dzdHIgIkNvbnRyaWIiCisKKyN+IG1zZ2lkICJSZWMiCisjfiBtc2dzdHIgIlJlYyIKKworI34gbXNnaWQgIkN0YiIKKyN+IG1zZ3N0ciAiQ3RiIgorCisjfiBtc2dpZCAiIgorI34gImJhc2VsaXN0OjpzdGFydGRpc3BsYXkoKSBkb25lIC4uLlxuIgorI34gIlxuIgorI34gIiB4bWF4PSVkLCB5bWF4PSVkO1xuIgorI34gIlxuIgorI34gIiB0aXRsZV9oZWlnaHQ9JWQsIGNvbGhlYWRzX2hlaWdodD0lZCwgbGlzdF9oZWlnaHQ9JWQ7XG4iCisjfiAiIHRoaXNzdGF0ZV9oZWlnaHQ9JWQsIGluZm9faGVpZ2h0PSVkLCB3aGF0aW5mb19oZWlnaHQ9JWQ7XG4iCisjfiAiXG4iCisjfiAiIGNvbGhlYWRzX3Jvdz0lZCwgdGhpc3N0YXRlX3Jvdz0lZCwgaW5mb19yb3c9JWQ7XG4iCisjfiAiIHdoYXRpbmZvX3Jvdz0lZCwgbGlzdF9yb3c9JWQ7XG4iCisjfiAiXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJiYXNlbGlzdDo6c3RhcnRkaXNwbGF5KCkgZmVpdG8gLi4uXG4iCisjfiAiXG4iCisjfiAiIHhtYXg9JWQsIHltYXg9JWQ7XG4iCisjfiAiXG4iCisjfiAiIHRpdGxlX2hlaWdodD0lZCwgY29saGVhZHNfaGVpZ2h0PSVkLCBsaXN0X2hlaWdodD0lZDtcbiIKKyN+ICIgdGhpc3N0YXRlX2hlaWdodD0lZCwgaW5mb19oZWlnaHQ9JWQsIHdoYXRpbmZvX2hlaWdodD0lZDtcbiIKKyN+ICJcbiIKKyN+ICIgY29saGVhZHNfcm93PSVkLCB0aGlzc3RhdGVfcm93PSVkLCBpbmZvX3Jvdz0lZDtcbiIKKyN+ICIgd2hhdGluZm9fcm93PSVkLCBsaXN0X3Jvdz0lZDtcbiIKKyN+ICJcbiIKKworI34gbXNnaWQgIltub25lXSIKKyN+IG1zZ3N0ciAiW25lbmh1bV0iCisKKyN+IG1zZ2lkICJlcnJvciB1bi1jYXRjaGluZyBzaWduYWwgJWQ6ICVzXG4iCisjfiBtc2dzdHIgImVycm8sIGB1bi1jYXRjaGluZycgbyBzaW5hbCAlZDogJXNcbiIKKworI34gbXNnaWQgInVuYWJsZSB0byBpZ25vcmUgc2lnbmFsICVkIGJlZm9yZSBydW5uaW5nICUuMjUwcyIKKyN+IG1zZ3N0ciAibsOjbyBmb2kgcG9zc8OtdmVsIGlnbm9yYXIgbyBzaW5hbCAlZCBhbnRlcyBkZSBjb3JyZXIgJS4yNTBzIgorCisjfiBtc2dpZCAiKG5vIGNsaWVudGRhdGEpIgorI34gbXNnc3RyICIoc2VtIGRhZG9zIGRvIGNsaWVudGUpIgorCisjfiBtc2dpZCAiPG51bGw+IgorI34gbXNnc3RyICI8bnVsbz4iCisKKyN+IG1zZ2lkICJpbnRlcnJlbGF0aW9uc2hpcHMgYWZmZWN0aW5nICIKKyN+IG1zZ3N0ciAiaW50ZXJyZWxhY2lvbmFtZW50b3MgYWZlY3RhbmRvIgorCisjfiBtc2dpZCAiZGVzY3JpcHRpb24gb2YgIgorI34gbXNnc3RyICJkZXNjcmnDp8OjbyBkZSAiCisKKyN+IG1zZ2lkICJkZXNjcmlwdGlvbiIKKyN+IG1zZ3N0ciAiZGVzY3Jpw6fDo28iCisKKyN+IG1zZ2lkICJjdXJyZW50bHkgaW5zdGFsbGVkIGNvbnRyb2wgaW5mbyIKKyN+IG1zZ3N0ciAiaW5mb3JtYcOnw6NvIGRlIGNvbnRyb2xlIGFjdHVhbG1lbnRlIGluc3RhbGFkYSIKKworI34gbXNnaWQgImF2YWlsYWJsZSB2ZXJzaW9uIG9mIGNvbnRyb2wgaW5mbyBmb3IgIgorI34gbXNnc3RyICJ2ZXJzw6NvIGRpc3BvbsOtdmVsIGRlIGluZm9ybWHDp8OjbyBkZSBjb250cm9sZSBwYXJhICIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9wdF9CUi5nbW8gYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vcHRfQlIuZ21vCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjllNWZmYTgKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vcHRfQlIuZ21vCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9wdF9CUi5wbyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9wdF9CUi5wbwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jNjJlNmRlCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL3B0X0JSLnBvCkBAIC0wLDAgKzEsMTc0MyBAQAorIyBUcmFkdcOnw6NvIHBhcmEgbyBQb3J0dWd1w6pzIChCcmFzaWwpIGRvIGRwa2cvZHNlbGVjdCAoRGViaWFuKQorIyBDb3B5cmlnaHQgwqkgMTk5OSwgMjAwMCBTb2Z0d2FyZSBpbiB0aGUgUHVibGljIEludGVyZXN0LgorIyBUaGlhZ28gSnVuZyBCYXVlcm1hbm4gPGp1bmdtYW5uQGN3Yi5tYXRyaXguY29tLmJyPiwgMTk5OS4KKyMgQ2FybG9zIEhlbnJpcXVlIFNhbnRvcyBMYXZpb2xhIDxjbGF2aW9sYUBicmZyZWUuY29tLmJyPiwgMjAwMC4KKyMgQW5kcsOpIEx1w61zIExvcGVzIDxhbmRyZWxvcEBpZy5jb20uYnI+LCAyMDAyLgorIyBBbmRyw6kgTHXDrXMgTG9wZXMgPGFuZHJlbG9wQGRlYmlhbi5vcmc+LCAyMDA0LgorIyBBbmRyw6kgTHXDrXMgTG9wZXMgPGFuZHJlbG9wQGRlYmlhbi5vcmc+LCAyMDA1LgorIyBGZWxpcGUgQXVndXN0byB2YW4gZGUgV2llbCAoZmF3KSA8ZmF3QGRlYmlhbi5vcmc+LCAyMDA4LgorIworbXNnaWQgIiIKK21zZ3N0ciAiIgorIlByb2plY3QtSWQtVmVyc2lvbjogZHBrZyAxLjEzXG4iCisiUmVwb3J0LU1zZ2lkLUJ1Z3MtVG86IGRlYmlhbi1kcGtnQGxpc3RzLmRlYmlhbi5vcmdcbiIKKyJQT1QtQ3JlYXRpb24tRGF0ZTogMjAxMS0xMC0xNCAwNzoxMSswMjAwXG4iCisiUE8tUmV2aXNpb24tRGF0ZTogMjAwOC0wNi0wOSAwMjo1My0wMzAwXG4iCisiTGFzdC1UcmFuc2xhdG9yOiBGZWxpcGUgQXVndXN0byB2YW4gZGUgV2llbCA8ZmF3QGRlYmlhbi5vcmc+XG4iCisiTGFuZ3VhZ2UtVGVhbTogQnJhemlsaWFuIFBvcnR1Z3Vlc2UgPGRlYmlhbi1sMTBuLXBvcnR1Z3Vlc2VAbGlzdHMuZGViaWFuLiIKKyJvcmc+XG4iCisiTGFuZ3VhZ2U6IHB0X0JSXG4iCisiTUlNRS1WZXJzaW9uOiAxLjBcbiIKKyJDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9VVRGLThcbiIKKyJDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiA4LWJpdFxuIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjEyNQorbXNnaWQgIlNlYXJjaCBmb3IgPyAiCittc2dzdHIgIlByb2N1cmFyIHBvcj8gIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE0NworbXNnaWQgIkVycm9yOiAiCittc2dzdHIgIkVycm86ICIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxNzgKK21zZ2lkICJIZWxwOiAiCittc2dzdHIgIkFqdWRhOiAiCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MTg0Cittc2dpZCAiUHJlc3MgPyBmb3IgaGVscCBtZW51LCAuIGZvciBuZXh0IHRvcGljLCA8c3BhY2U+IHRvIGV4aXQgaGVscC4iCittc2dzdHIgIiIKKyJQcmVzc2lvbmUgPyBwYXJhIG8gbWVudSBkZSBhanVkYSwgLiBwYXJhIG8gcHLDs3hpbW8gdMOzcGljbywgPGVzcGHDp28+IHBhcmEgIgorInNhaXIgZGEgYWp1ZGEuIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE5MQorbXNnaWQgIkhlbHAgaW5mb3JtYXRpb24gaXMgYXZhaWxhYmxlIHVuZGVyIHRoZSBmb2xsb3dpbmcgdG9waWNzOiIKK21zZ3N0ciAiSW5mb3JtYcOnw7VlcyBkZSBhanVkYSBlc3TDo28gZGlzcG9uw612ZWlzIG5vcyBzZWd1aW50ZXMgdMOzcGljb3M6IgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE5OQorbXNnaWQgIiIKKyJQcmVzcyBhIGtleSBmcm9tIHRoZSBsaXN0IGFib3ZlLCA8c3BhY2U+IG9yIGBxJyB0byBleGl0IGhlbHAsXG4iCisiICBvciBgLicgKGZ1bGwgc3RvcCkgdG8gcmVhZCBlYWNoIGhlbHAgcGFnZSBpbiB0dXJuLiAiCittc2dzdHIgIiIKKyJQcmVzc2lvbmUgdW1hIGRhcyB0ZWNsYXMgZGEgbGlzdGEgYWNpbWEsIDxlc3Bhw6dvPiBvdSAncScgcGFyYVxuIgorIiAgc2FpciBkYSBhanVkYSwgb3UgJy4nIChwb250byBmaW5hbCkgcGFyYSBsZXIgdW1hIHDDoWdpbmEgZGVcbiIKKyIgIGFqdWRhIHBvciB2ZXouICIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoyMDUKK21zZ2lkICJlcnJvciByZWFkaW5nIGtleWJvYXJkIGluIGhlbHAiCittc2dzdHIgImVycm8gbGVuZG8gdGVjbGFkbyBuYSBhanVkYSIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo1NworbXNnaWQgImlvY3RsKFRJT0NHV0lOU1opIGZhaWxlZCIKK21zZ3N0ciAiaW9jdGwoVElPQ0dXSU5TWikgZmFsaG91IgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjYwCittc2dpZCAiZG91cGRhdGUgaW4gU0lHV0lOQ0ggaGFuZGxlciBmYWlsZWQiCittc2dzdHIgImRvdXBkYXRlIG5vIGhhbmRsZXIgU0lHV0lOQ0ggZmFsaG91IgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjY3Cittc2dpZCAiZmFpbGVkIHRvIHJlc3RvcmUgb2xkIFNJR1dJTkNIIHNpZ2FjdCIKK21zZ3N0ciAiZmFsaG91IGFvIHJlc3RhdXJhciBhbnRpZ28gc2lnYWN0IFNJR1dJTkNIIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjY5Cittc2dpZCAiZmFpbGVkIHRvIHJlc3RvcmUgb2xkIHNpZ25hbCBtYXNrIgorbXNnc3RyICJmYWxob3UgYW8gcmVzdGF1cmFyIGFudGlnYSBtw6FzY2FyYSBkZSBzaW5hbCIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo3OQorbXNnaWQgImZhaWxlZCB0byBnZXQgb2xkIHNpZ25hbCBtYXNrIgorbXNnc3RyICJmYWxob3UgYW8gb2J0ZXIgYW50aWdhIG3DoXNjYXJhIGRlIHNpbmFsIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjgwCittc2dpZCAiZmFpbGVkIHRvIGdldCBvbGQgU0lHV0lOQ0ggc2lnYWN0IgorbXNnc3RyICJmYWxob3UgYW8gb2J0ZXIgYW50aWdhIHNpZ2FjdCBTSUdXSU5DSCIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo4NAorbXNnaWQgImZhaWxlZCB0byBibG9jayBTSUdXSU5DSCIKK21zZ3N0ciAiZmFsaG91IGFvIGJsb3F1ZWFyIFNJR1dJTkNIIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjg5Cittc2dpZCAiZmFpbGVkIHRvIHNldCBuZXcgU0lHV0lOQ0ggc2lnYWN0IgorbXNnc3RyICJmYWxob3UgYW8gZGVmaW5pciBub3ZvIHNpZ2FjdCBTSUdXSU5DSCIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxMjYKK21zZ2lkICJmYWlsZWQgdG8gYWxsb2NhdGUgY29sb3VyIHBhaXIiCittc2dzdHIgImZhbGhvdSBhbyBhbG9jYXIgcGFyIGRlIGNvcmVzIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE2NworbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgdGl0bGUgd2luZG93IgorbXNnc3RyICJmYWxob3UgYW8gY3JpYXIgdMOtdHVsbyBkYSBqYW5lbGEiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTcxCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSB3aGF0aW5mbyB3aW5kb3ciCittc2dzdHIgImZhbGhvdSBhbyBjcmlhciBqYW5lbGEgXCJ3aGF0aW5mb1wiIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE3NQorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgYmFzZWxpc3QgcGFkIgorbXNnc3RyICJmYWxob3UgYW8gY3JpYXIgXCJiYXNlbGlzdCBwYWRcIiIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxNzgKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGhlYWRpbmcgcGFkIgorbXNnc3RyICJmYWxob3UgYW8gY3JpYXIgXCJoZWFkaW5nIHBhZFwiIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE4MgorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgdGhpc3N0YXRlIHBhZCIKK21zZ3N0ciAiZmFsaG91IGFvIGNyaWFyIFwidGhpc3N0YXRlIHBhZFwiIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE4NgorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgaW5mbyBwYWQiCittc2dzdHIgImZhbGhvdSBhbyBjcmlhciBcImluZm8gcGFkXCIiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTkxCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBxdWVyeSB3aW5kb3ciCittc2dzdHIgImZhbGhvdSBhbyBjcmlhciBqYW5lbGEgZGUgY29uc3VsdGEiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MjU1Cittc2dpZCAiS2V5YmluZGluZ3MiCittc2dzdHIgIkFzc29jaWHDp8O1ZXMgZGUgdGVjbGFzIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjMwMworIywgYy1mb3JtYXQKK21zZ2lkICIgIC0tICVkJSUsIHByZXNzICIKK21zZ3N0ciAiICAtLSAlZCUlLCBwcmVzc2lvbmUgIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjMwNgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBmb3IgbW9yZSIKK21zZ3N0ciAiJXMgcGFyYSBtYWlzIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjMxMAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyB0byBnbyBiYWNrIgorbXNnc3RyICIlcyBwYXJhIHZvbHRhciIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzo3OAorbXNnaWQgIltub3QgYm91bmRdIgorbXNnc3RyICJbbsOjbyBhdHJpYnXDrWRvXSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzo4MgorIywgYy1mb3JtYXQKK21zZ2lkICJbdW5rOiAlZF0iCittc2dzdHIgIltkZXM6ICVkXSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxMzkKK21zZ2lkICJTY3JvbGwgb253YXJkcyB0aHJvdWdoIGhlbHAvaW5mb3JtYXRpb24iCittc2dzdHIgIlJvbGFnZW0gcHJvZ3Jlc3NpdmEgYXRyYXbDqXMgZGEgYWp1ZGEvaW5mb3JtYcOnw6NvIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0MAorbXNnaWQgIlNjcm9sbCBiYWNrd2FyZHMgdGhyb3VnaCBoZWxwL2luZm9ybWF0aW9uIgorbXNnc3RyICJSb2xhZ2VtIHJlZ3Jlc3NpdmEgYXRyYXbDqXMgZGEgYWp1ZGEvaW5mb3JtYcOnw6NvIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0MQorbXNnaWQgIk1vdmUgdXAiCittc2dzdHIgIk1vdmVyIHBhcmEgYWNpbWEiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQyCittc2dpZCAiTW92ZSBkb3duIgorbXNnc3RyICJNb3ZlciBwYXJhIGFiYWl4byIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDMKK21zZ2lkICJHbyB0byB0b3Agb2YgbGlzdCIKK21zZ3N0ciAiSXIgYW8gdG9wbyBkYSBsaXN0YSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDQKK21zZ2lkICJHbyB0byBlbmQgb2YgbGlzdCIKK21zZ3N0ciAiSXIgYW8gZmltIGRhIGxpc3RhIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0NQorbXNnaWQgIlJlcXVlc3QgaGVscCAoY3ljbGUgdGhyb3VnaCBoZWxwIHNjcmVlbnMpIgorbXNnc3RyICJTb2xpY2l0YXIgYWp1ZGEgKHBlcmNvcnJlciBhcyB0ZWxhcyBkZSBhanVkYSkiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ2Cittc2dpZCAiQ3ljbGUgdGhyb3VnaCBpbmZvcm1hdGlvbiBkaXNwbGF5cyIKK21zZ3N0ciAiUGVyY29ycmVyIGFzIHRlbGFzIGRlIGluZm9ybWHDp8O1ZXMiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ3Cittc2dpZCAiUmVkcmF3IGRpc3BsYXkiCittc2dzdHIgIlJlZGVzZW5oYXIgYSB0ZWxhIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0OAorbXNnaWQgIlNjcm9sbCBvbndhcmRzIHRocm91Z2ggbGlzdCBieSAxIGxpbmUiCittc2dzdHIgIlJvbGFnZW0gcHJvZ3Jlc3NpdmEgZGUgMSBsaW5oYSBhdHJhdsOpcyBsaXN0YSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDkKK21zZ2lkICJTY3JvbGwgYmFja3dhcmRzIHRocm91Z2ggbGlzdCBieSAxIGxpbmUiCittc2dzdHIgIlJvbGFnZW0gcmVncmVzc2l2YSBkZSAxIGxpbmhhIGF0cmF2w6lzIGRhIGxpc3RhIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1MAorbXNnaWQgIlNjcm9sbCBvbndhcmRzIHRocm91Z2ggaGVscC9pbmZvcm1hdGlvbiBieSAxIGxpbmUiCittc2dzdHIgIlJvbGFnZW0gcHJvZ3Jlc3NpdmEgZGUgMSBsaW5oYSBhdHJhdsOpcyBkYSBhanVkYS9pbmZvcm1hw6fDo28iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTUxCittc2dpZCAiU2Nyb2xsIGJhY2t3YXJkcyB0aHJvdWdoIGhlbHAvaW5mb3JtYXRpb24gYnkgMSBsaW5lIgorbXNnc3RyICJSb2xhZ2VtIHJlZ3Jlc3NpdmEgZGUgMSBsaW5oYSBhdHJhdsOpcyBkYSBhanVkYS9pbmZvcm1hw6fDo28iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTUyCittc2dpZCAiU2Nyb2xsIG9ud2FyZHMgdGhyb3VnaCBsaXN0IgorbXNnc3RyICJSb2xhZ2VtIHByb2dyZXNzaXZhIGF0cmF2w6lzIGRhIGxpc3RhIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1MworbXNnaWQgIlNjcm9sbCBiYWNrd2FyZHMgdGhyb3VnaCBsaXN0IgorbXNnc3RyICJSb2xhZ2VtIHJlZ3Jlc3NpdmEgYXRyYXbDqXMgZGEgbGlzdGEiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTU2Cittc2dpZCAiTWFyayBwYWNrYWdlKHMpIGZvciBpbnN0YWxsYXRpb24iCittc2dzdHIgIk1hcmNhciBwYWNvdGUocykgcGFyYSBpbnN0YWxhw6fDo28iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTU3Cittc2dpZCAiTWFyayBwYWNrYWdlKHMpIGZvciBkZWluc3RhbGxhdGlvbiIKK21zZ3N0ciAiTWFyY2FyIHBhY290ZShzKSBwYXJhIGRlc2luc3RhbGHDp8OjbyIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTgKK21zZ2lkICJNYXJrIHBhY2thZ2UocykgZm9yIGRlaW5zdGFsbCBhbmQgcHVyZ2UiCittc2dzdHIgIk1hcmNhciBwYWNvdGUocykgcGFyYSBkZXNpbnN0YWxhw6fDo28gZSBleHB1cmdhbWVudG8iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTU5Cittc2dpZCAiTWFrZSBoaWdobGlnaHQgbW9yZSBzcGVjaWZpYyIKK21zZ3N0ciAiRmF6ZXIgcmVhbGNlIG1haXMgZXNwZWPDrWZpY28iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTYwCittc2dpZCAiTWFrZSBoaWdobGlnaHQgbGVzcyBzcGVjaWZpYyIKK21zZ3N0ciAiRmF6ZXIgcmVhbGNlIG1lbm9zIGVzcGVjw61maWNvIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2MQorbXNnaWQgIlNlYXJjaCBmb3IgYSBwYWNrYWdlIHdob3NlIG5hbWUgY29udGFpbnMgYSBzdHJpbmciCittc2dzdHIgIlByb2N1cmFyIHBvciB1bSBwYWNvdGUgY3VqbyBub21lIGNvbnTDqW0gdW1hIHN0cmluZyIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjIKK21zZ2lkICJSZXBlYXQgbGFzdCBzZWFyY2guIgorbXNnc3RyICJSZXBldGlyIMO6bHRpbWEgYnVzY2EuIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2MworbXNnaWQgIlN3YXAgc29ydCBvcmRlciBwcmlvcml0eS9zZWN0aW9uIgorbXNnc3RyICJUcm9jYXIgb3JkZW5hw6fDo28gZGUgcHJpb3JpZGFkZS9zZcOnw6NvIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2NAorbXNnaWQgIlF1aXQsIGNvbmZpcm1pbmcsIGFuZCBjaGVja2luZyBkZXBlbmRlbmNpZXMiCittc2dzdHIgIlNhaXIsIGNvbmZpcm1hbmRvLCBlIGNoZWNhbmRvIGRlcGVuZMOqbmNpYXMiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY1Cittc2dpZCAiUXVpdCwgY29uZmlybWluZyB3aXRob3V0IGNoZWNrIgorbXNnc3RyICJTYWlyLCBjb25maXJtYW5kbyBzZW0gY2hlY2FyIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2NgorbXNnaWQgIlF1aXQsIHJlamVjdGluZyBjb25mbGljdC9kZXBlbmRlbmN5IHN1Z2dlc3Rpb25zIgorbXNnc3RyICJTYWlyLCByZWplaXRhbmRvIHN1Z2VzdMO1ZXMgZGUgY29uZmxpdG9zL2RlcGVuZMOqbmNpYXMiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY3Cittc2dpZCAiQWJvcnQgLSBxdWl0IHdpdGhvdXQgbWFraW5nIGNoYW5nZXMiCittc2dzdHIgIkFib3J0YXIgLSBzYWlyIHNlbSBmYXplciBtdWRhbsOnYXMiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY4Cittc2dpZCAiUmV2ZXJ0IHRvIG9sZCBzdGF0ZSBmb3IgYWxsIHBhY2thZ2VzIgorbXNnc3RyICJSZXZlcnRlciBhbyBlc3RhZG8gYW50aWdvIGVtIHRvZG9zIG9zIHBhY290ZXMiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY5Cittc2dpZCAiUmV2ZXJ0IHRvIHN1Z2dlc3RlZCBzdGF0ZSBmb3IgYWxsIHBhY2thZ2VzIgorbXNnc3RyICJSZXZlcnRlciBhbyBlc3RhZG8gc3VnZXJpZG8gZW0gdG9kb3Mgb3MgcGFjb3RlcyIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNzAKK21zZ2lkICJSZXZlcnQgdG8gZGlyZWN0bHkgcmVxdWVzdGVkIHN0YXRlIGZvciBhbGwgcGFja2FnZXMiCittc2dzdHIgIlJldmVydGVyIGFvIGVzdGFkbyBkaXJldGFtZW50ZSByZXF1aXNpdGFkbyBlbSB0b2RvcyBvcyBwYWNvdGVzIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE3MQorbXNnaWQgIlJldmVydCB0byBjdXJyZW50bHkgaW5zdGFsbGVkIHN0YXRlIGZvciBhbGwgcGFja2FnZXMiCittc2dzdHIgIlJldmVydGVyIGFvIGVzdGFkbyBhdHVhbG1lbnRlIGluc3RhbGFkbyBlbSB0b2RvcyBvcyBwYWNvdGVzIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE3NAorbXNnaWQgIlNlbGVjdCBjdXJyZW50bHktaGlnaGxpZ2h0ZWQgYWNjZXNzIG1ldGhvZCIKK21zZ3N0ciAiU2VsZWNpb25hciBtw6l0b2RvIGRlIGFjZXNzbyBlbSBkZXN0YXF1ZSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNzUKK21zZ2lkICJRdWl0IHdpdGhvdXQgY2hhbmdpbmcgc2VsZWN0ZWQgYWNjZXNzIG1ldGhvZCIKK21zZ3N0ciAiU2FpciBzZW0gbXVkYXIgbcOpdG9kbyBkZSBhY2Vzc28gc2VsZWNpb25hZG8iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MjkKK21zZ2lkICJLZXlzdHJva2VzIgorbXNnc3RyICJUZWNsYXMgZGUgYXRhbGhvIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjI5Cittc2dpZCAiIgorIk1vdGlvbiBrZXlzOiBOZXh0L1ByZXZpb3VzLCBUb3AvRW5kLCBVcC9Eb3duLCBCYWNrd2FyZHMvRm9yd2FyZHM6XG4iCisiICBqLCBEb3duLWFycm93ICAgICAgICAgaywgVXAtYXJyb3cgICAgICAgICAgICAgbW92ZSBoaWdobGlnaHRcbiIKKyIgIE4sIFBhZ2UtZG93biwgU3BhY2UgICBQLCBQYWdlLXVwLCBCYWNrc3BhY2UgICBzY3JvbGwgbGlzdCBieSAxIHBhZ2VcbiIKKyIgIF5uICAgICAgICAgICAgICAgICAgICBecCAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgbGlzdCBieSAxIGxpbmVcbiIKKyIgIHQsIEhvbWUgICAgICAgICAgICAgICBlLCBFbmQgICAgICAgICAgICAgICAgICBqdW1wIHRvIHRvcC9lbmQgb2YgbGlzdFxuIgorIiAgdSAgICAgICAgICAgICAgICAgICAgIGQgICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIGJ5IDEgcGFnZVxuIgorIiAgXnUgICAgICAgICAgICAgICAgICAgIF5kICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIGJ5IDEgbGluZVxuIgorIiAgQiwgTGVmdC1hcnJvdyAgICAgICAgIEYsIFJpZ2h0LWFycm93ICAgICAgICAgIHBhbiBkaXNwbGF5IGJ5IDEvMyBzY3JlZW5cbiIKKyIgIF5iICAgICAgICAgICAgICAgICAgICBeZiAgICAgICAgICAgICAgICAgICAgICBwYW4gZGlzcGxheSBieSAxIGNoYXJhY3RlclxuIgorIlxuIgorIk1hcmsgcGFja2FnZXMgZm9yIGxhdGVyIHByb2Nlc3Npbmc6XG4iCisiICssIEluc2VydCAgaW5zdGFsbCBvciB1cGdyYWRlICAgICAgPSwgSCAgaG9sZCBpbiBwcmVzZW50IHN0YXRlXG4iCisiIC0sIERlbGV0ZSAgcmVtb3ZlICAgICAgICAgICAgICAgICAgOiwgRyAgdW5ob2xkOiB1cGdyYWRlIG9yIGxlYXZlICIKKyJ1bmluc3RhbGxlZFxuIgorIiBfICAgICAgICAgIHJlbW92ZSAmIHB1cmdlIGNvbmZpZ1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1pc2NlbGxhbmVvdXM6XG4iCisiUXVpdCwgZXhpdCwgb3ZlcndyaXRlIChub3RlIGNhcGl0YWxzISk6ICAgICAgID8sIEYxIHJlcXVlc3QgaGVscCAoYWxzbyAiCisiSGVscClcbiIKKyIgUmV0dXJuICBDb25maXJtLCBxdWl0IChjaGVjayBkZXBlbmRlbmNpZXMpICAgaSwgSSAgdG9nZ2xlL2N5Y2xlIGluZm8gIgorImRpc3BsYXlzXG4iCisiICAgUSAgICAgQ29uZmlybSwgcXVpdCAob3ZlcnJpZGUgZGVwLnMpICAgICAgIG8sIE8gIGN5Y2xlIHRocm91Z2ggc29ydCAiCisib3B0aW9uc1xuIgorIiBYLCBFc2MgIGVYaXQsIGFiYW5kb25pbmcgYW55IGNoYW5nZXMgbWFkZSAgICB2LCBWICBjaGFuZ2Ugc3RhdHVzIGRpc3BsYXkgIgorIm9wdHNcbiIKKyIgICBSICAgICBSZXZlcnQgdG8gc3RhdGUgYmVmb3JlIHRoaXMgbGlzdCAgICAgIF5sICAgcmVkcmF3IGRpc3BsYXlcbiIKKyIgICBVICAgICBzZXQgYWxsIHRvIHNVZ2dlc3RlZCBzdGF0ZSAgICAgICAgICAgICAvICAgc2VhcmNoIChSZXR1cm4gdG8gIgorImNhbmNlbClcbiIKKyIgICBEICAgICBzZXQgYWxsIHRvIERpcmVjdGx5IHJlcXVlc3RlZCBzdGF0ZSAgbiwgXFwgIHJlcGVhdCBsYXN0IHNlYXJjaFxuIgorbXNnc3RyICIiCisiVGVjbGFzIGRlIG1vdmltZW50YcOnw6NvOiBQcsOzeGltby9BbnRlcmlvciwgVG9wby9GaW0sIENpbWEvQmFpeG8sIFRyw6FzLyIKKyJGcmVudGU6XG4iCisiICBqLCBTZXRhLWFiYWl4byAgICAgICAgaywgU2V0YS1hY2ltYSAgICAgICAgICAgbW92ZSByZWFsY2VcbiIKKyIgIE4sIFBhZ2UtZG93biwgRXNwYcOnbyAgUCwgUGFnZS11cCwgQmFja3NwYWNlICAgcm9sYSBsaXN0YSBlbSAxIHDDoWdpbmFcbiIKKyIgIF5uICAgICAgICAgICAgICAgICAgICBecCAgICAgICAgICAgICAgICAgICAgICByb2xhIGxpc3RhIGVtIDEgbGluaGFcbiIKKyIgIHQsIEhvbWUgICAgICAgICAgICAgICBlLCBFbmQgICAgICAgICAgICAgICAgICBwdWxhIHBhcmEgdG9wby9maW0gZGEgbGlzdGFcbiIKKyIgIHUgICAgICAgICAgICAgICAgICAgICBkICAgICAgICAgICAgICAgICAgICAgICByb2xhIGluZm9ybWHDp8OjbyBlbSAxIHDDoWdpbmFcbiIKKyIgIF51ICAgICAgICAgICAgICAgICAgICBeZCAgICAgICAgICAgICAgICAgICAgICByb2xhIGluZm9ybWHDp8OjbyBlbSAxIGxpbmhhXG4iCisiICBCLCBTZXRhLcOgLWVzcXVlcmRhICAgIEYsIFNldGEtw6AtZGlyZWl0YSAgICAgICByb2xhIDEvMyBkYSB0ZWxhIHBhcmEgbyAiCisibGFkb1xuIgorIiAgXmIgICAgICAgICAgICAgICAgICAgIF5mICAgICAgICAgICAgICAgICAgICAgIHJvbGEgMSBjYXJhY3RlciBwYXJhIG8gbGFkb1xuIgorIlxuIgorIk1hcmNhIHBhY290ZXMgcGFyYSBwcm9jZXNzYW1lbnRvIHBvc3RlcmlvcjpcbiIKKyIgKywgSW5zZXJlICBpbnN0YWxhIG91IGF0dWFsaXphICAgICA9LCBIICByZXRlciBubyBlc3RhZG8gYXR1YWxcbiIKKyIgLSwgRXhjbHVpICByZW1vdmUgICAgICAgICAgICAgICAgICA6LCBHICBsaWJlcmFyOiBhdHVhbGl6YXIgb3UgZGVpeGFyICIKKyJkZXNpbnN0LlxuIgorIiBfICAgICAgICAgIHJlbW92ZXIgZSBleHB1cmdhciBjb25maWd1cmHDp8Ojb1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1pc2NlbMOibmVhOlxuIgorIlNhaXIgKFEpLCBzb2JyZXNjcmV2ZXIgKG5vdGUgbWFpw7pzY3VsYXMhKSAgICAgPywgRjEgc29saWNpdGFyIGFqdWRhICh0YW1iw6ltXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFqdWRhIChIKSlcbiIKKyIgRW50ZXIgICBDb25maXJtYSwgc2FpIChjaGVjYSBkZXBlbmTDqm5jaWFzKSAgIGksIEkgIGFsdGVybmFyL3BlcmNvcnJlciAiCisidGVsYXNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGUgaW5mb3JtYcOnw7Vlc1xuIgorIiAgIFEgICAgIENvbmZpcm1hLCBzYWkgKHNvYnJlcMO1ZSBkZXBlbmQuKSAgICAgbywgTyAgcGVyY29ycmVyIGF0cmF2w6lzIGRhc1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcMOnw7VlcyBkZSBvcmRlbmHDp8Ojb1xuIgorIiBYLCBFc2MgIFNhaXIgKFgpLCBhYmFuZG9uYW5kbyBtdWRhbsOnYXMgICAgICAgdiwgViAgbXVkYSBvcMOnw7VlcyBkZSBlc3RhZG8gIgorImRlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4aWJpw6fDo29cbiIKKyIgICBSICAgICBSZXZlcnRlIGFvIGVzdGFkbyBhbnRlcmlvciAgICAgICAgICAgIF5sICAgcmVkZXNlbmhhciB0ZWxhXG4iCisiICAgVSAgICAgY29sb2NhciB0dWRvIG5vIGVzdGFkbyBzVWdlcmlkbyAgICAgICAgLyAgIHByb2N1cmFyIChFbnRlciBwYXJhXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhbmNlbGFyKVxuIgorIiAgIEQgICAgIGNvbmZpZ3VyYXIgdHVkbyBwYXJhIG8gZXN0YWRvXG4iCisiICAgICAgICAgZXN0YWRvIERpcmV0YW1lbnRlIHJlcXVpc2l0YWRvICAgICAgIG4sIFxcICByZXBldGlyIMO6bHRpbWEgYnVzY2FcbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo1NQorbXNnaWQgIkludHJvZHVjdGlvbiB0byBwYWNrYWdlIHNlbGVjdGlvbnMiCittc2dzdHIgIkludHJvZHXDp8OjbyDDoHMgc2VsZcOnw7VlcyBkZSBwYWNvdGVzIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjU1Cittc2dpZCAiIgorIldlbGNvbWUgdG8gZHNlbGVjdCdzIG1haW4gcGFja2FnZSBsaXN0aW5nLlxuIgorIlxuIgorIllvdSB3aWxsIGJlIHByZXNlbnRlZCB3aXRoIGEgbGlzdCBvZiBwYWNrYWdlcyB3aGljaCBhcmUgaW5zdGFsbGVkIG9yICIKKyJhdmFpbGFibGVcbiIKKyJmb3IgaW5zdGFsbGF0aW9uLiAgWW91IGNhbiBuYXZpZ2F0ZSBhcm91bmQgdGhlIGxpc3QgdXNpbmcgdGhlIGN1cnNvciBrZXlzLFxuIgorIm1hcmsgcGFja2FnZXMgZm9yIGluc3RhbGxhdGlvbiAodXNpbmcgYCsnKSBvciBkZWluc3RhbGxhdGlvbiAodXNpbmcgYC0nKS5cbiIKKyJQYWNrYWdlcyBjYW4gYmUgbWFya2VkIGVpdGhlciBzaW5nbHkgb3IgaW4gZ3JvdXBzOyBpbml0aWFsbHkgeW91IHdpbGwgc2VlICIKKyJ0aGF0XG4iCisidGhlIGxpbmUgYEFsbCBwYWNrYWdlcycgaXMgc2VsZWN0ZWQuICBgKycsIGAtJyBhbmQgc28gb24gd2lsbCBhZmZlY3QgYWxsICIKKyJ0aGVcbiIKKyJwYWNrYWdlcyBkZXNjcmliZWQgYnkgdGhlIGhpZ2hsaWdodGVkIGxpbmUuXG4iCisiXG4iCisiU29tZSBvZiB5b3VyIGNob2ljZXMgd2lsbCBjYXVzZSBjb25mbGljdHMgb3IgZGVwZW5kZW5jeSBwcm9ibGVtczsgeW91IHdpbGwgIgorImJlXG4iCisiZ2l2ZW4gYSBzdWItbGlzdCBvZiB0aGUgcmVsZXZhbnQgcGFja2FnZXMsIHNvIHRoYXQgeW91IGNhbiBzb2x2ZSB0aGUgIgorInByb2JsZW1zLlxuIgorIlxuIgorIllvdSBzaG91bGQgcmVhZCB0aGUgbGlzdCBvZiBrZXlzIGFuZCB0aGUgZXhwbGFuYXRpb25zIG9mIHRoZSBkaXNwbGF5LlxuIgorIk11Y2ggb24tbGluZSBoZWxwIGlzIGF2YWlsYWJsZSwgcGxlYXNlIG1ha2UgdXNlIG9mIGl0IC0gcHJlc3MgYD8nIGF0XG4iCisiYW55IHRpbWUgZm9yIGhlbHAuXG4iCisiXG4iCisiV2hlbiB5b3UgaGF2ZSBmaW5pc2hlZCBzZWxlY3RpbmcgcGFja2FnZXMsIHByZXNzIDxlbnRlcj4gdG8gY29uZmlybSAiCisiY2hhbmdlcyxcbiIKKyJvciBgWCcgdG8gcXVpdCB3aXRob3V0IHNhdmluZyBjaGFuZ2VzLiBBIGZpbmFsIGNoZWNrIG9uIGNvbmZsaWN0cyBhbmRcbiIKKyJkZXBlbmRlbmNpZXMgd2lsbCBiZSBkb25lIC0gaGVyZSB0b28geW91IG1heSBzZWUgYSBzdWJsaXN0LlxuIgorIlxuIgorIlByZXNzIDxzcGFjZT4gdG8gbGVhdmUgaGVscCBhbmQgZW50ZXIgdGhlIGxpc3Qgbm93LlxuIgorbXNnc3RyICIiCisiQmVtLXZpbmRvIMOgIGxpc3RhIHByaW5jaXBhbCBkZSBwYWNvdGVzIGRvIGRzZWxlY3QuXG4iCisiXG4iCisiU2Vyw6EgYXByZXNlbnRhZGEgYSB2b2PDqiB1bWEgbGlzdGEgZGUgcGFjb3RlcyBxdWUgZXN0w6NvIGluc3RhbGFkb3Mgb3VcbiIKKyJkaXNwb27DrXZlaXMgcGFyYSBpbnN0YWxhw6fDo28uIFZvY8OqIHBvZGUgbmF2ZWdhciBwZWxhIGxpc3RhIHVzYW5kbyBhcyB0ZWNsYXNcbiIKKyJkaXJlY2lvbmFpcywgbWFyY2FyIHBhY290ZXMgcGFyYSBpbnN0YWxhw6fDo28gKHVzYW5kbyAnKycpIG91IGRlc2luc3RhbGHDp8Ojb1xuIgorIih1c2FuZG8gYC0nKS5cbiIKKyJQYWNvdGVzIHBvZGVtIHNlciBtYXJjYWRvcyBpbmRpdmlkdWFsbWVudGUgb3UgZW0gZ3J1cG9zOyBpbmljaWFsbWVudGUsIHZvY8OqXG4iCisidmFpIHZlciBxdWUgYSBsaW5oYSAnVG9kb3Mgb3MgcGFjb3RlcycgZXN0w6Egc2VsZWNpb25hZGEuIENvbWFuZG9zIGNvbW8gJysnLFxuIgorIictJywgZSBvdXRyb3MgYWZldGFyw6NvIHRvZG9zIG9zIHBhY290ZXMgZGVzY3JpdG9zIHBlbGEgbGluaGEgcmVhbMOnYWRhLlxuIgorIlxuIgorIkFsZ3VtYXMgZGUgc3VhcyBlc2NvbGhhcyBjYXVzYXLDo28gY29uZmxpdG9zIG91IHByb2JsZW1hcyBkZSBkZXBlbmTDqm5jaWFzO1xuIgorInNlcsOhIGFwcmVzZW50YWRhIHVtYSBzdWItbGlzdGEgZG9zIHBhY290ZXMgcmVsZXZhbnRlcywgcGFyYSBxdWUgZGVzc2EgZm9ybWFcbiIKKyJ2b2PDqiBwb3NzYSByZXNvbHZlciBvcyBwcm9ibGVtYXMuXG4iCisiXG4iCisiVm9jw6ogZGV2ZXLDoSBsZXIgYSBsaXN0YSBkZSB0ZWNsYXMgZSBhcyBleHBsaWNhw6fDtWVzIG5hIHRlbGEuXG4iCisiTXVpdGEgYWp1ZGEgb24tbGluZSBlc3TDoSBkaXNwb27DrXZlbCwgcG9yIGZhdm9yLCB1c2UtYSAtIHByZXNzaW9uZSAnPycgYVxuIgorInF1YWxxdWVyIG1vbWVudG8gcGFyYSBhanVkYS5cbiIKKyJcbiIKKyJRdWFuZG8gdGl2ZXIgdGVybWluYWRvIGEgc2VsZcOnw6NvIGRlIHBhY290ZXMsIHByZXNzaW9uZSA8ZW50ZXI+IHBhcmEgIgorImNvbmZpcm1hclxuIgorInN1YXMgbXVkYW7Dp2FzIG91ICdYJyBwYXJhIHNhaXIgc2VtIGdyYXZhciBhcyBtdWRhbsOnYXMuIFVtYSBjaGVjYWdlbSBmaW5hbCAiCisiZGVcbiIKKyJjb25mbGl0b3MgZSBkZSBkZXBlbmTDqm5jaWFzIHNlcsOhIGZlaXRhIC0gcG9kZSBzZXIgcXVlIGFxdWkgdm9jw6ogdGFtYsOpbSB2ZWphXG4iCisidW1hIHN1Yi1saXN0YS5cbiIKKyJcbiIKKyJQcmVzc2lvbmUgPGVzcGHDp28+IHBhcmEgc2FpciBkYSBhanVkYSBlIGVudHJhciBuYSBsaXN0YSBhZ29yYS5cbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo4MAorbXNnaWQgIkludHJvZHVjdGlvbiB0byByZWFkLW9ubHkgcGFja2FnZSBsaXN0IGJyb3dzZXIiCittc2dzdHIgIkludHJvZHXDp8OjbyBhbyBuYXZlZ2Fkb3IgZGEgbGlzdGEgZGUgcGFjb3RlcyBzb21lbnRlLWxlaXR1cmEiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6ODAKK21zZ2lkICIiCisiV2VsY29tZSB0byBkc2VsZWN0J3MgbWFpbiBwYWNrYWdlIGxpc3RpbmcuXG4iCisiXG4iCisiWW91IHdpbGwgYmUgcHJlc2VudGVkIHdpdGggYSBsaXN0IG9mIHBhY2thZ2VzIHdoaWNoIGFyZSBpbnN0YWxsZWQgb3IgIgorImF2YWlsYWJsZVxuIgorImZvciBpbnN0YWxsYXRpb24uICBTaW5jZSB5b3UgZG8gbm90IGhhdmUgdGhlIHByaXZpbGVnZSBuZWNlc3NhcnkgdG8gdXBkYXRlXG4iCisicGFja2FnZSBzdGF0ZXMsIHlvdSBhcmUgaW4gYSByZWFkLW9ubHkgbW9kZS4gIFlvdSBjYW4gbmF2aWdhdGUgYXJvdW5kIHRoZVxuIgorImxpc3QgdXNpbmcgdGhlIGN1cnNvciBrZXlzIChwbGVhc2Ugc2VlIHRoZSBgS2V5c3Ryb2tlcycgaGVscCBzY3JlZW4pLCAiCisib2JzZXJ2ZVxuIgorInRoZSBzdGF0dXMgb2YgdGhlIHBhY2thZ2VzIGFuZCByZWFkIGluZm9ybWF0aW9uIGFib3V0IHRoZW0uXG4iCisiXG4iCisiWW91IHNob3VsZCByZWFkIHRoZSBsaXN0IG9mIGtleXMgYW5kIHRoZSBleHBsYW5hdGlvbnMgb2YgdGhlIGRpc3BsYXkuXG4iCisiTXVjaCBvbi1saW5lIGhlbHAgaXMgYXZhaWxhYmxlLCBwbGVhc2UgbWFrZSB1c2Ugb2YgaXQgLSBwcmVzcyBgPycgYXRcbiIKKyJhbnkgdGltZSBmb3IgaGVscC5cbiIKKyJcbiIKKyJXaGVuIHlvdSBoYXZlIGZpbmlzaGVkIGJyb3dzaW5nLCBwcmVzcyBgUScgb3IgPGVudGVyPiB0byBxdWl0LlxuIgorIlxuIgorIlByZXNzIDxzcGFjZT4gdG8gbGVhdmUgaGVscCBhbmQgZW50ZXIgdGhlIGxpc3Qgbm93LlxuIgorbXNnc3RyICIiCisiQmVtLXZpbmRvIMOgIGxpc3RhIHByaW5jaXBhbCBkZSBwYWNvdGVzIGRvIGRzZWxlY3QuXG4iCisiXG4iCisiU2Vyw6EgYXByZXNlbnRhZGEgYSB2b2PDqiB1bWEgbGlzdGEgZGUgcGFjb3RlcyBxdWUgZXN0w6NvIGluc3RhbGFkb3Mgb3VcbiIKKyJkaXNwb27DrXZlaXMgcGFyYSBpbnN0YWxhw6fDo28uIFVtYSB2ZXogcXVlIHZvY8OqIG7Do28gcG9zc3VpIG9zIHByaXZpbMOpZ2lvc1xuIgorIm5lY2Vzc8OhcmlvcyBwYXJhIGF0dWFsaXphciBvIGVzdGFkbyBkb3MgcGFjb3Rlcywgdm9jw6ogZXN0w6Egbm8gbW9kb1xuIgorInNvbWVudGUtbGVpdHVyYS4gVm9jw6ogcG9kZSBuYXZlZ2FyIHBlbGEgbGlzdGEgdXNhbmRvIGFzIHRlY2xhcyBkaXJlY2lvbmFpc1xuIgorIihwb3IgZmF2b3IsIHZlamEgYSB0ZWxhIGRlIGFqdWRhIHNvYnJlICdUZWNsYXMgZGUgYXRhbGhvJyksIG9ic2VydmUgbyAiCisiZXN0YWRvXG4iCisiZG9zIHBhY290ZXMgZSBsZWlhIGFzIGluZm9ybWHDp8O1ZXMgc29icmUgZWxlcy5cbiIKKyJcbiIKKyJWb2PDqiBkZXZlcsOhIGxlciBhIGxpc3RhIGRlIHRlY2xhcyBlIHN1YXMgZXhwbGljYcOnw7VlcyBuYSB0ZWxhLlxuIgorIk11aXRhIGFqdWRhIG9uLWxpbmUgZXN0w6EgZGlzcG9uw612ZWwsIHBvciBmYXZvciwgdXNlLWEgLSBwcmVzc2lvbmUgJz8nIGFcbiIKKyJxdWFscXVlciBtb21lbnRvIHBhcmEgYWp1ZGEuXG4iCisiXG4iCisiUXVhbmRvIHRpdmVyIHRlcm1pbmFkbyBhIG5hdmVnYcOnw6NvLCBwcmVzc2lvbmUgJ1EnIG91IDxlbnRlcj4gcGFyYSBzYWlyLlxuIgorIlxuIgorIlByZXNzaW9uZSA8ZXNwYcOnbz4gcGFyYSBzYWlyIGRhIGFqdWRhIGUgZW50cmFyIG5hIGxpc3RhIGFnb3JhLlxuIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjk5Cittc2dpZCAiSW50cm9kdWN0aW9uIHRvIGNvbmZsaWN0L2RlcGVuZGVuY3kgcmVzb2x1dGlvbiBzdWItbGlzdCIKK21zZ3N0ciAiSW50cm9kdcOnw6NvIMOgIHN1Yi1saXN0YSBkZSByZXNvbHXDp8OjbyBkZSBjb25mbGl0b3MvZGVwZW5kw6puY2lhcyIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo5OQorbXNnaWQgIiIKKyJEZXBlbmRlbmN5L2NvbmZsaWN0IHJlc29sdXRpb24gLSBpbnRyb2R1Y3Rpb24uXG4iCisiXG4iCisiT25lIG9yIG1vcmUgb2YgeW91ciBjaG9pY2VzIGhhdmUgcmFpc2VkIGEgY29uZmxpY3Qgb3IgZGVwZW5kZW5jeSBwcm9ibGVtIC1cbiIKKyJzb21lIHBhY2thZ2VzIHNob3VsZCBvbmx5IGJlIGluc3RhbGxlZCBpbiBjb25qdW5jdGlvbiB3aXRoIGNlcnRhaW4gb3RoZXJzLCAiCisiYW5kXG4iCisic29tZSBjb21iaW5hdGlvbnMgb2YgcGFja2FnZXMgbWF5IG5vdCBiZSBpbnN0YWxsZWQgdG9nZXRoZXIuXG4iCisiXG4iCisiWW91IHdpbGwgc2VlIGEgc3ViLWxpc3QgY29udGFpbmluZyB0aGUgcGFja2FnZXMgaW52b2x2ZWQuICBUaGUgYm90dG9tIGhhbGYgIgorIm9mXG4iCisidGhlIGRpc3BsYXkgc2hvd3MgcmVsZXZhbnQgY29uZmxpY3RzIGFuZCBkZXBlbmRlbmNpZXM7IHVzZSBgaScgdG8gY3ljbGUgIgorImJldHdlZW5cbiIKKyJ0aGF0LCB0aGUgcGFja2FnZSBkZXNjcmlwdGlvbnMgYW5kIHRoZSBpbnRlcm5hbCBjb250cm9sIGluZm9ybWF0aW9uLlxuIgorIlxuIgorIkEgc2V0IG9mIGBzdWdnZXN0ZWQnIHBhY2thZ2VzIGhhcyBiZWVuIGNhbGN1bGF0ZWQsIGFuZCB0aGUgaW5pdGlhbCBtYXJraW5ncyAiCisiaW5cbiIKKyJ0aGlzIHN1Yi1saXN0IGhhdmUgYmVlbiBzZXQgdG8gbWF0Y2ggdGhvc2UsIHNvIHlvdSBjYW4ganVzdCBoaXQgUmV0dXJuIHRvXG4iCisiYWNjZXB0IHRoZSBzdWdnZXN0aW9ucyBpZiB5b3Ugd2lzaC4gIFlvdSBtYXkgYWJvcnQgdGhlIGNoYW5nZShzKSB3aGljaCAiCisiY2F1c2VkXG4iCisidGhlIHByb2JsZW0ocyksIGFuZCBnbyBiYWNrIHRvIHRoZSBtYWluIGxpc3QsIGJ5IHByZXNzaW5nIGNhcGl0YWwgYFgnLlxuIgorIlxuIgorIllvdSBjYW4gYWxzbyBtb3ZlIGFyb3VuZCB0aGUgbGlzdCBhbmQgY2hhbmdlIHRoZSBtYXJraW5ncyBzbyB0aGF0IHRoZXkgYXJlICIKKyJtb3JlXG4iCisibGlrZSB3aGF0IHlvdSB3YW50LCBhbmQgeW91IGNhbiBgcmVqZWN0JyBteSBzdWdnZXN0aW9ucyBieSB1c2luZyB0aGUgIgorImNhcGl0YWxcbiIKKyJgRCcgb3IgYFInIGtleXMgKHNlZSB0aGUga2V5YmluZGluZ3MgaGVscCBzY3JlZW4pLiAgWW91IGNhbiB1c2UgY2FwaXRhbCBgUScgIgorInRvXG4iCisiZm9yY2UgbWUgdG8gYWNjZXB0IHRoZSBzaXR1YXRpb24gY3VycmVudGx5IGRpc3BsYXllZCwgaW4gY2FzZSB5b3Ugd2FudCB0b1xuIgorIm92ZXJyaWRlIGEgcmVjb21tZW5kYXRpb24gb3IgdGhpbmsgdGhhdCB0aGUgcHJvZ3JhbSBpcyBtaXN0YWtlbi5cbiIKKyJcbiIKKyJQcmVzcyA8c3BhY2U+IHRvIGxlYXZlIGhlbHAgYW5kIGVudGVyIHRoZSBzdWItbGlzdDsgcmVtZW1iZXI6IHByZXNzIGA/JyBmb3IgIgorImhlbHAuXG4iCittc2dzdHIgIiIKKyJSZXNvbHXDp8OjbyBkZSBkZXBlbmTDqm5jaWFzL2NvbmZsaXRvcyAtIGludHJvZHXDp8Ojby5cbiIKKyJcbiIKKyJVbWEgb3UgbWFpcyBkZSBzdWFzIGVzY29saGFzIGZpemVyYW0gc3VyZ2lyIHVtIHByb2JsZW1hIGRlIGNvbmZsaXRvIG91IGRlXG4iCisiZGVwZW5kw6puY2lhIC0gYWxndW5zIHBhY290ZXMgc8OzIGRldmVtIHNlciBpbnN0YWxhZG9zIGVtIGNvbmp1bnRvIGNvbSAiCisib3V0cm9zLFxuIgorImUgYWxndW1hcyBjb21iaW5hw6fDtWVzIGRlIHBhY290ZXMgbsOjbyBwb2RlbSBzZXIgaW5zdGFsYWRhcyBhbyBtZXNtbyB0ZW1wby5cbiIKKyJcbiIKKyJWb2PDqiB2ZXLDoSB1bWEgc3ViLWxpc3RhIGNvbnRlbmRvIG9zIHBhY290ZXMgZW52b2x2aWRvcy4gIEEgbWV0YWRlIGRlIGJhaXhvICIKKyJkYVxuIgorInRlbGEgbW9zdHJhIGNvbmZsaXRvcyBlIGRlcGVuZMOqbmNpYXMgcmVsZXZhbnRlczsgdXNlICdpJyBwYXJhIGNpcmN1bGFyICIKKyJlbnRyZVxuIgorImVzc2VzLCBhcyBkZXNjcmnDp8O1ZXMgZG9zIHBhY290ZXMgZSBhcyBpbmZvcm1hw6fDtWVzIGRlIGNvbnRyb2xlIGludGVybmFzLlxuIgorIlxuIgorIlVtIGNvbmp1bnRvIGRlIHBhY290ZXMgJ3N1Z2VyaWRvcycgZm9pIGNhbGN1bGFkbywgZSBhcyBtYXJjYcOnw7VlcyBpbmljaWFpcyAiCisibmVzc2FcbiIKKyJzdWItbGlzdGEgZm9yYW0gZGVmaW5pZGFzIHBhcmEgY29tYmluYXIgY29tIGFxdWVsYXMsIHBhcmEgcXVlIHZvY8OqIHBvc3NhICIKKyJhcGVuYXNcbiIKKyJwcmVzc2lvbmFyIEVudGVyIHBhcmEgYWNlaXRhciBhcyBzdWdlc3TDtWVzLCBzZSBhc3NpbSBkZXNlamFyLiBWb2PDqiBwb2RlICIKKyJhYm9ydGFyXG4iCisiYShzKSBtdWRhbsOnYShzKSBxdWUgY2F1c291L2NhdXNhcmFtIG8ocykgcHJvYmxlbWEocyksIGUgdm9sdGFyIHBhcmEgYSBsaXN0YVxuIgorInByaW5jaXBhbCwgcHJlc3Npb25hbmRvICdYJyBtYWnDunNjdWxvLlxuIgorIlxuIgorIlZvY8OqIHRhbWLDqW0gcG9kZSBtb3ZpbWVudGFyLXNlIHBlbGEgbGlzdGEgZSBtdWRhciBhcyBtYXJjYcOnw7VlcyBkZSBtb2RvIHF1ZSAiCisiZWxhc1xuIgorImZpcXVlbSBtYWlzIGRlIGFjb3JkbyBjb20gbyBxdWUgdm9jw6ogcXVlciwgZSB2b2PDqiBwb2RlICdyZWplaXRhcicgbWluaGFzXG4iCisic3VnZXN0w7VlcyB1c2FuZG8gYXMgdGVjbGFzICdEJyBvdSAnUicgbWFpw7pzY3VsYXMgKHZlamEgYSB0ZWxhIGRlIGFqdWRhIGRlXG4iCisiVGVjbGFzIGRlIEF0YWxobykuIFZvY8OqIHBvZGUgdXNhciAnUScgbWFpw7pzY3VsbyBwYXJhIG1lIGZvcsOnYXIgYSBhY2VpdGFyIGFcbiIKKyJzaXR1YcOnw6NvIGNvbW8gZWxhIGVzdMOhLCBjYXNvIHZvY8OqIHF1ZWlyYSBpZ25vcmFyIHVtYSByZWNvbWVuZGHDp8OjbyBvdSBwZW5zYXJcbiIKKyJxdWUgbyBwcm9ncmFtYSBlc3TDoSBlcnJhZG8uXG4iCisiXG4iCisiUHJlc3Npb25lIDxlc3Bhw6dvPiBwYXJhIHNhaXIgZGEgYWp1ZGEgZSBlbnRyYXIgbmEgc3ViLWxpc3RhOyBsZW1icmUtc2U6XG4iCisicHJlc3Npb25lICc/JyBwYXJhIGFqdWRhLlxuIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjEyNQorbXNnaWQgIkRpc3BsYXksIHBhcnQgMTogcGFja2FnZSBsaXN0aW5nIGFuZCBzdGF0dXMgY2hhcnMiCittc2dzdHIgIlRlbGEsIHBhcnRlIDE6IGxpc3RhIGRlIHBhY290ZXMgZSBjYXJhY3RlcmVzIGRlIGVzdGFkbyIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxMjUKK21zZ2lkICIiCisiVGhlIHRvcCBoYWxmIG9mIHRoZSBzY3JlZW4gc2hvd3MgYSBsaXN0IG9mIHBhY2thZ2VzLiAgRm9yIGVhY2ggcGFja2FnZSB5b3UgIgorInNlZVxuIgorImZvdXIgY29sdW1ucyBmb3IgaXRzIGN1cnJlbnQgc3RhdHVzIG9uIHRoZSBzeXN0ZW0gYW5kIG1hcmsuICBJbiB0ZXJzZSBtb2RlICIKKyIodXNlXG4iCisiYHYnIHRvIHRvZ2dsZSB2ZXJib3NlIGRpc3BsYXkpIHRoZXNlIGFyZSBzaW5nbGUgY2hhcmFjdGVycywgZnJvbSBsZWZ0IHRvICIKKyJyaWdodDpcbiIKKyJcbiIKKyIgRXJyb3IgZmxhZzogU3BhY2UgLSBubyBlcnJvciAoYnV0IHBhY2thZ2UgbWF5IGJlIGluIGJyb2tlbiBzdGF0ZSAtIHNlZSAiCisiYmVsb3cpXG4iCisiICAgICAgICAgICAgICBgUicgIC0gc2VyaW91cyBlcnJvciBkdXJpbmcgaW5zdGFsbGF0aW9uLCBuZWVkcyAiCisicmVpbnN0YWxsYXRpb247XG4iCisiIEluc3RhbGxlZCBzdGF0ZTogICAgIFNwYWNlICAgIC0gbm90IGluc3RhbGxlZDtcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgIGAqJyAgICAgLSBpbnN0YWxsZWQ7XG4iCisiICAgICAgICAgICAgICAgICAgICAgICBgLScgICAgIC0gbm90IGluc3RhbGxlZCBidXQgY29uZmlnIGZpbGVzIHJlbWFpbjtcbiIKKyIgICBwYWNrYWdlcyBpbiB0aGVzZSB7IGBVJyAgICAgLSB1bnBhY2tlZCBidXQgbm90IHlldCBjb25maWd1cmVkO1xuIgorIiAgIHN0YXRlcyBhcmUgbm90ICAgIHsgYEMnICAgICAtIGhhbGYtY29uZmlndXJlZCAoYW4gZXJyb3IgaGFwcGVuZWQpO1xuIgorIiAgIChxdWl0ZSkgcHJvcGVybHkgIHsgYEknICAgICAtIGhhbGYtaW5zdGFsbGVkIChhbiBlcnJvciBoYXBwZW5lZCk7XG4iCisiICAgaW5zdGFsbGVkICAgICAgICAgeyBgVycsYHQnIC0gdHJpZ2dlcnMgYXJlIGF3YWl0ZWQgcmVzcC4gcGVuZGluZy5cbiIKKyIgT2xkIG1hcms6IHdoYXQgd2FzIHJlcXVlc3RlZCBmb3IgdGhpcyBwYWNrYWdlIGJlZm9yZSBwcmVzZW50aW5nIHRoaXMgbGlzdDtcbiIKKyIgTWFyazogd2hhdCBpcyByZXF1ZXN0ZWQgZm9yIHRoaXMgcGFja2FnZTpcbiIKKyIgIGAqJzogbWFya2VkIGZvciBpbnN0YWxsYXRpb24gb3IgdXBncmFkZTtcbiIKKyIgIGAtJzogbWFya2VkIGZvciByZW1vdmFsLCBidXQgYW55IGNvbmZpZ3VyYXRpb24gZmlsZXMgd2lsbCByZW1haW47XG4iCisiICBgPSc6IG9uIGhvbGQ6IHBhY2thZ2Ugd2lsbCBub3QgYmUgcHJvY2Vzc2VkIGF0IGFsbDtcbiIKKyIgIGBfJzogbWFya2VkIGZvciBwdXJnZSBjb21wbGV0ZWx5IC0gZXZlbiByZW1vdmUgY29uZmlndXJhdGlvbjtcbiIKKyIgIGBuJzogcGFja2FnZSBpcyBuZXcgYW5kIGhhcyB5ZXQgdG8gYmUgbWFya2VkIGZvciBpbnN0YWxsL3JlbW92ZS8mYy5cbiIKKyJcbiIKKyJBbHNvIGRpc3BsYXllZCBhcmUgZWFjaCBwYWNrYWdlJ3MgUHJpb3JpdHksIFNlY3Rpb24sIG5hbWUsIGluc3RhbGxlZCBhbmRcbiIKKyJhdmFpbGFibGUgdmVyc2lvbiBudW1iZXJzIChzaGlmdC1WIHRvIGRpc3BsYXkvaGlkZSkgYW5kIHN1bW1hcnkgIgorImRlc2NyaXB0aW9uLlxuIgorbXNnc3RyICIiCisiQSBtZXRhZGUgZGUgY2ltYSBkYSB0ZWxhIG1vc3RyYSB1bWEgbGlzdGEgZGUgcGFjb3Rlcy4gUGFyYSBjYWRhIHBhY290ZSB2b2PDqiAiCisidsOqXG4iCisicXVhdHJvIGNvbHVuYXMgcGFyYSBzZXUgZXN0YWRvIGF0dWFsIG5vIHNpc3RlbWEgZSBtYXJjYcOnw6NvLiBObyBtb2RvICIKKyJyZXN1bWlkb1xuIgorIih1c2UgJ3YnIHBhcmEgbGlnYXIgZXhpYmnDp8OjbyB2ZXJib3NhKSwgZXN0ZXMgc8OjbyBjYXJhY3RlcmVzIMO6bmljb3MsIGRhICIKKyJlc3F1ZXJkYVxuIgorInBhcmEgYSBkaXJlaXRhOlxuIgorIlxuIgorIiBNYXJjYSBkZSBFcnJvOiBFc3Bhw6dvIC0gc2VtIGVycm9zIChwYWNvdGUgcG9kZSBlc3RhciBxdWVicmFkbyAtIHZlamEgIgorImFiYWl4bylcbiIKKyIgICAgICAgICAgICAgICAgICdSJyAgIC0gZXJybyBzw6lyaW8gZHVyYW50ZSBpbnN0YWxhw6fDo28sIHJlcXVlciAiCisicmVpbnN0YWxhw6fDo287XG4iCisiIEVzdGFkbyBkZSBpbnN0YWxhw6fDo286ICBFc3Bhw6dvIC0gbsOjbyBpbnN0YWxhZG87XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICcqJyAgIC0gaW5zdGFsYWRvO1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAnLScgICAtIG7Do28gaW5zdGFsYWRvIG1hcyBhcnF1aXZvcyBkZSBjb25maWd1cmHDp8Ojb1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBlcm1hbmVjZW07XG4iCisiICAgcGFjb3RlcyBuZXN0ZXMgICAgeyAnVScgICAgIC0gZGVzY29tcGFjdGFkbyBtYXMgYWluZGEgbsOjbyBjb25maWd1cmFkbztcbiIKKyIgICBlc3RhZG9zIG7Do28gZXN0w6NvIHsgJ0MnICAgICAtIG1laW8tY29uZmlndXJhZG8gKHVtIGVycm8gYWNvbnRlY2V1KTtcbiIKKyIgICBjb3JyZXRhbWVudGUgICAgICB7ICdJJyAgICAgLSBtZWlvLWluc3RhbGFkbyAodW0gZXJybyBhY29udGVjZXUpLlxuIgorIiAgIGluc3RhbGFkb3MgICAgICAgIHsgJ1cnLCd0JyAtIGdhdGlsaG9zIGVzdMOjbyBlbSBlc3BlcmEgLyBwZW5kZW50ZXMuXG4iCisiIE1hcmNhIGFudGlnYTogbyBxdWUgZm9pIHJlcXVpc2l0YWRvIHBhcmEgZXN0ZSBwYWNvdGUgYW50ZXMgZGUgYXByZXNlbnRhclxuIgorIiAgICAgICAgICAgICAgIGVzdGEgbGlzdGE7XG4iCisiIE1hcmNhOiBvIHF1ZSDDqSByZXF1aXNpdGFkbyBwYXJhIGVzdGUgcGFjb3RlOlxuIgorIiAgJyonOiBtYXJjYWRvIHBhcmEgaW5zdGFsYcOnw6NvIG91IGF0dWFsaXphw6fDo287XG4iCisiICAnLSc6IG1hcmNhZG8gcGFyYSByZW1vw6fDo28sIG1hcyBvcyBhcnF1aXZvcyBkZSBjb25maWd1cmHDp8OjbyBwZXJtYW5lY2Vyw6NvO1xuIgorIiAgJz0nOiByZXRpZG86IHBhY290ZSBuw6NvIHNlcsOhIHByb2Nlc3NhZG8gZGUgZm9ybWEgYWxndW1hO1xuIgorIiAgJ18nOiBtYXJjYWRvIHBhcmEgc2VyIGNvbXBsZXRhbWVudGUgZXhwdXJnYWRvIC0gcmVtb3ZlciBhdMOpIGEgIgorImNvbmZpZ3VyYcOnw6NvO1xuIgorIiAgJ24nOiBwYWNvdGUgw6kgbm92byBlIGFpbmRhIHRlbSBxdWUgc2VyIG1hcmNhZG8gcGFyYSBpbnN0YWxhw6fDo28vcmVtb8Onw6NvLyIKKyJldGMuXG4iCisiXG4iCisiVGFtYsOpbSBzw6NvIGV4aWJpZGFzIGNhZGEgUHJpb3JpZGFkZSwgU2XDp8Ojbywgbm9tZSwgbsO6bWVyb3MgZGUgdmVyc8Ojb1xuIgorImluc3RhbGFkYSBlIGRpc3BvbsOtdmVpcyBkZSBjYWRhIHBhY290ZSAoc2hpZnQtViBwYXJhIGV4aWJlci9vY3VsdGFyKVxuIgorImUgZGVzY3Jpw6fDo28gcmVzdW1pZGEuXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTUyCittc2dpZCAiRGlzcGxheSwgcGFydCAyOiBsaXN0IGhpZ2hsaWdodDsgaW5mb3JtYXRpb24gZGlzcGxheSIKK21zZ3N0ciAiVGVsYSwgcGFydGUgMjogcmVhbGNlcyBuYSBsaXN0YTsgdGVsYSBkZSBpbmZvcm1hw6fDo28iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTUyCittc2dpZCAiIgorIiogSGlnaGxpZ2h0OiBPbmUgbGluZSBpbiB0aGUgcGFja2FnZSBsaXN0IHdpbGwgYmUgaGlnaGxpZ2h0ZWQuICBJdCAiCisiaW5kaWNhdGVzXG4iCisiICB3aGljaCBwYWNrYWdlKHMpIHdpbGwgYmUgYWZmZWN0ZWQgYnkgcHJlc3NlcyBvZiBgKycsIGAtJyBhbmQgYF8nLlxuIgorIlxuIgorIiogVGhlIGRpdmlkaW5nIGxpbmUgaW4gdGhlIG1pZGRsZSBvZiB0aGUgc2NyZWVuIHNob3dzIGEgYnJpZWYgZXhwbGFuYXRpb24gIgorIm9mXG4iCisiICB0aGUgc3RhdHVzIG9mIHRoZSBjdXJyZW50bHktaGlnaGxpZ2h0ZWQgcGFja2FnZSwgb3IgYSBkZXNjcmlwdGlvbiBvZiAiCisid2hpY2hcbiIKKyIgIGdyb3VwIGlzIGhpZ2hsaWdodGVkIGlmIGEgZ3JvdXAgbGluZSBpcy4gIElmIHlvdSBkb24ndCB1bmRlcnN0YW5kIHRoZVxuIgorIiAgbWVhbmluZyBvZiBzb21lIG9mIHRoZSBzdGF0dXMgY2hhcmFjdGVycyBkaXNwbGF5ZWQsIGdvIHRvIHRoZSByZWxldmFudFxuIgorIiAgcGFja2FnZSBhbmQgbG9vayBhdCB0aGlzIGRpdmlkZXIgbGluZSwgb3IgdXNlIHRoZSBgdicga2V5IGZvciBhIHZlcmJvc2VcbiIKKyIgIGRpc3BsYXkgKHByZXNzIGB2JyBhZ2FpbiB0byBnbyBiYWNrIHRvIHRoZSB0ZXJzZSBkaXNwbGF5KS5cbiIKKyJcbiIKKyIqIFRoZSBib3R0b20gb2YgdGhlIHNjcmVlbiBzaG93cyBtb3JlIGluZm9ybWF0aW9uIGFib3V0IHRoZVxuIgorIiAgY3VycmVudGx5LWhpZ2hsaWdodGVkIHBhY2thZ2UgKGlmIHRoZXJlIGlzIG9ubHkgb25lKS5cbiIKKyJcbiIKKyIgIEl0IGNhbiBzaG93IGFuIGV4dGVuZGVkIGRlc2NyaXB0aW9uIG9mIHRoZSBwYWNrYWdlLCB0aGUgaW50ZXJuYWwgcGFja2FnZVxuIgorIiAgY29udHJvbCBkZXRhaWxzIChlaXRoZXIgZm9yIHRoZSBpbnN0YWxsZWQgb3IgYXZhaWxhYmxlIHZlcnNpb24gb2YgdGhlXG4iCisiICBwYWNrYWdlKSwgb3IgaW5mb3JtYXRpb24gYWJvdXQgY29uZmxpY3RzIGFuZCBkZXBlbmRlbmNpZXMgaW52b2x2aW5nIHRoZVxuIgorIiAgY3VycmVudCBwYWNrYWdlIChpbiBjb25mbGljdC9kZXBlbmRlbmN5IHJlc29sdXRpb24gc3VibGlzdHMpLlxuIgorIlxuIgorIiAgVXNlIHRoZSBgaScga2V5IHRvIGN5Y2xlIHRocm91Z2ggdGhlIGRpc3BsYXlzLCBhbmQgYEknIHRvIGhpZGUgdGhlXG4iCisiICBpbmZvcm1hdGlvbiBkaXNwbGF5IG9yIGV4cGFuZCBpdCB0byB1c2UgYWxtb3N0IGFsbCBvZiB0aGUgc2NyZWVuLlxuIgorbXNnc3RyICIiCisiKiBSZWFsY2U6IFVtYSBsaW5oYSBuYSBsaXN0YSBkZSBwYWNvdGVzIHNlcsOhIHJlYWzDp2FkYS4gRWxhIGluZGljYVxuIgorIiAgcXVhbChpcykgcGFjb3RlKHMpIHNlcsOhKMOjbykgYWZldGFkbyhzKSBwZWxhcyB0ZWNsYXMgJysnLCAnLScgZSAnXycuXG4iCisiXG4iCisiKiBBIGxpbmhhIGRpdmlzw7NyaWEgbm8gbWVpbyBkYSB0ZWxhIG1vc3RyYSB1bWEgZXhwbGljYcOnw6NvIGJyZXZlIGRvIGVzdGFkb1xuIgorIiAgZG8gcGFjb3RlIGF0dWFsbWVudGUgcmVhbMOnYWRvLCBvdSB1bWEgZGVzY3Jpw6fDo28gZG8gZ3J1cG8gcXVlIGVzdGl2ZXJcbiIKKyIgIHJlYWzDp2Fkbywgc2UgZm9yIHVtYSBsaW5oYSBkZSBncnVwby4gU2Ugdm9jw6ogbsOjbyBlbnRlbmRlciBvIHNpZ25pZmljYWRvXG4iCisiICBkZSBhbGd1bnMgZG9zIGNhcmFjdGVyZXMgZGUgZXN0YWRvIG1vc3RyYWRvcywgdsOhIGFvIHBhY290ZSBlbSBxdWVzdMOjbyBlXG4iCisiICBvbGhlIHBhcmEgZXN0YSBsaW5oYSBkaXZpc8OzcmlhLCBvdSB1c2UgYSB0ZWNsYSAndicgcGFyYSB1bWEgZXhpYmnDp8Ojb1xuIgorIiAgbWFpcyB2ZXJib3NhIChwcmVzc2lvbmUgJ3YnIG5vdmFtZW50ZSBwYXJhIHZvbHRhciBhbyBtb2RvIHJlc3VtaWRvKS5cbiIKKyJcbiIKKyIqIEEgcGFydGUgZGUgYmFpeG8gZGEgdGVsYSBtb3N0cmEgbWFpcyBpbmZvcm1hw6fDtWVzIHNvYnJlIG8gcGFjb3RlXG4iCisiICBhdHVhbG1lbnRlIHJlYWzDp2FkbyAoc2UgaG91dmVyIHNvbWVudGUgdW0pLlxuIgorIlxuIgorIiAgRWxhIHBvZGUgbW9zdHJhciB1bWEgZGVzY3Jpw6fDo28gbWFpcyBsb25nYSBkbyBwYWNvdGUsIG9zIGRldGFsaGVzIGludGVybm9zXG4iCisiICBkZSBjb250cm9sZSBkbyBwYWNvdGUgKG91IHBhcmEgYSB2ZXJzw6NvIGluc3RhbGFkYSBvdSBwYXJhIGEgdmVyc8Ojb1xuIgorIiAgZGlzcG9uw612ZWwgZG8gcGFjb3RlKSwgb3UgaW5mb3JtYcOnw6NvIHNvYnJlIGNvbmZsaXRvcyBlIGRlcGVuZMOqbmNpYXNcbiIKKyIgIGVudm9sdmVuZG8gbyBwYWNvdGUgYXR1YWwgKGVtIHN1Yi1saXN0YXMgZGUgcmVzb2x1w6fDo28gZGVcbiIKKyIgIGNvbmZsaXRvcy9kZXBlbmTDqm5jaWFzKS5cbiIKKyJcbiIKKyIgIFVzZSBhIHRlY2xhICdpJyBwYXJhIGNpcmN1bGFyIHBlbGFzIHRlbGFzLCBlICdJJyBwYXJhIG9jdWx0YXIgYSB0ZWxhIGRlXG4iCisiICBpbmZvcm1hw6fDtWVzIG91IGV4cGFuZMOtLWxhIHBvciBxdWFzZSB0b2RhIGEgdGVsYS5cbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxNzYKK21zZ2lkICJJbnRyb2R1Y3Rpb24gdG8gbWV0aG9kIHNlbGVjdGlvbiBkaXNwbGF5IgorbXNnc3RyICJJbnRyb2R1w6fDo28gw6AgdGVsYSBkZSBzZWxlw6fDo28gZGUgbcOpdG9kb3MiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTc2Cittc2dpZCAiIgorImRzZWxlY3QgYW5kIGRwa2cgY2FuIGRvIGF1dG9tYXRpYyBpbnN0YWxsYXRpb24sIGxvYWRpbmcgdGhlIHBhY2thZ2UgZmlsZXMgdG8gIgorImJlXG4iCisiaW5zdGFsbGVkIGZyb20gb25lIG9mIGEgbnVtYmVyIG9mIGRpZmZlcmVudCBwb3NzaWJsZSBwbGFjZXMuXG4iCisiXG4iCisiVGhpcyBsaXN0IGFsbG93cyB5b3UgdG8gc2VsZWN0IG9uZSBvZiB0aGVzZSBpbnN0YWxsYXRpb24gbWV0aG9kcy5cbiIKKyJcbiIKKyJNb3ZlIHRoZSBoaWdobGlnaHQgdG8gdGhlIG1ldGhvZCB5b3Ugd2lzaCB0byB1c2UsIGFuZCBoaXQgRW50ZXIuICBZb3Ugd2lsbCAiCisidGhlblxuIgorImJlIHByb21wdGVkIGZvciB0aGUgaW5mb3JtYXRpb24gcmVxdWlyZWQgdG8gZG8gdGhlIGluc3RhbGxhdGlvbi5cbiIKKyJcbiIKKyJBcyB5b3UgbW92ZSB0aGUgaGlnaGxpZ2h0IGEgZGVzY3JpcHRpb24gb2YgZWFjaCBtZXRob2QsIHdoZXJlIGF2YWlsYWJsZSwgaXNcbiIKKyJkaXNwbGF5ZWQgaW4gdGhlIGJvdHRvbSBoYWxmIG9mIHRoZSBzY3JlZW4uXG4iCisiXG4iCisiSWYgeW91IHdpc2ggdG8gcXVpdCB3aXRob3V0IGNoYW5naW5nIGFueXRoaW5nIHVzZSB0aGUgYHgnIGtleSB3aGlsZSBpbiB0aGUgIgorImxpc3RcbiIKKyJvZiBpbnN0YWxsYXRpb24gbWV0aG9kcy5cbiIKKyJcbiIKKyJBIGZ1bGwgbGlzdCBvZiBrZXlzdHJva2VzIGlzIGF2YWlsYWJsZSBieSBwcmVzc2luZyBgaycgbm93LCBvciBmcm9tIHRoZSAiCisiaGVscFxuIgorIm1lbnUgcmVhY2hhYmxlIGJ5IHByZXNzaW5nIGA/Jy5cbiIKK21zZ3N0ciAiIgorImRzZWxlY3QgZSBkcGtnIHBvZGVtIGZhemVyIGluc3RhbGHDp8O1ZXMgYXV0b23DoXRpY2FzLCBjYXJyZWdhbmRvIG9zIGFycXVpdm9zXG4iCisiZGUgcGFjb3RlIGEgc2VyZW0gaW5zdGFsYWRvcyBhIHBhcnRpciBkZSB1bWEgc8OpcmllIGRlIHBvc3PDrXZlaXMgZGlmZXJlbnRlc1xuIgorImx1Z2FyZXMuXG4iCisiXG4iCisiRXN0YSBsaXN0YSBwZXJtaXRlIHF1ZSB2b2PDqiBzZWxlY2lvbmUgdW0gZGVzdGVzIG3DqXRvZG9zIGRlIGluc3RhbGHDp8Ojby5cbiIKKyJcbiIKKyJNb3ZhIG8gcmVhbGNlIHBhcmEgbyBtw6l0b2RvIHF1ZSB2b2PDqiBxdWVyIHVzYXIsIGUgYXBlcnRlIEVudGVyLiBWb2PDqiBzZXLDoVxuIgorInF1ZXN0aW9uYWRvIHNvYnJlIGFzIGluZm9ybWHDp8O1ZXMgbmVjZXNzw6FyaWFzIHBhcmEgcmVhbGl6YXIgYSBpbnN0YWxhw6fDo28uXG4iCisiXG4iCisiw4AgbWVkaWRhIHF1ZSB2b2PDqiBtb3ZlIG8gcmVhbGNlLCB1bWEgZGVzY3Jpw6fDo28gZGUgY2FkYSBtw6l0b2RvLCBxdWFuZG9cbiIKKyJkaXNwb27DrXZlbCwgw6kgZXhpYmlkYSBuYSBwYXJ0ZSBkZSBiYWl4byBkYSB0ZWxhLlxuIgorIlxuIgorIlNlIHZvY8OqIHF1aXNlciBzYWlyIHNlbSBtdWRhciBuYWRhIGFwZXJ0ZSBhIHRlY2xhICd4JyBlbnF1YW50byBlc3RpdmVyIG5hXG4iCisibGlzdGEgZGUgbcOpdG9kb3MgZGUgaW5zdGFsYcOnw6NvLlxuIgorIlxuIgorIlVtYSBsaXN0YSBjb21wbGV0YSBkZSB0ZWNsYXMgZGUgYXRhbGhvIGVzdMOhIGRpc3BvbsOtdmVsIHByZXNzaW9uYW5kbyAnaydcbiIKKyJhZ29yYSwgb3Ugbm8gbWVudSBkZSBhanVkYSBhY2Vzc8OtdmVsIHByZXNzaW9uYW5kbyAnPycuXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTk2Cittc2dpZCAiS2V5c3Ryb2tlcyBmb3IgbWV0aG9kIHNlbGVjdGlvbiIKK21zZ3N0ciAiVGVjbGFzIHBhcmEgc2VsZcOnw6NvIGRlIG3DqXRvZG8iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTk2Cittc2dpZCAiIgorIk1vdGlvbiBrZXlzOiBOZXh0L1ByZXZpb3VzLCBUb3AvRW5kLCBVcC9Eb3duLCBCYWNrd2FyZHMvRm9yd2FyZHM6XG4iCisiICBqLCBEb3duLWFycm93ICAgICAgICAgaywgVXAtYXJyb3cgICAgICAgICAgICAgbW92ZSBoaWdobGlnaHRcbiIKKyIgIE4sIFBhZ2UtZG93biwgU3BhY2UgICBQLCBQYWdlLXVwLCBCYWNrc3BhY2UgICBzY3JvbGwgbGlzdCBieSAxIHBhZ2VcbiIKKyIgIF5uICAgICAgICAgICAgICAgICAgICBecCAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgbGlzdCBieSAxIGxpbmVcbiIKKyIgIHQsIEhvbWUgICAgICAgICAgICAgICBlLCBFbmQgICAgICAgICAgICAgICAgICBqdW1wIHRvIHRvcC9lbmQgb2YgbGlzdFxuIgorIiAgdSAgICAgICAgICAgICAgICAgICAgIGQgICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIGJ5IDEgcGFnZVxuIgorIiAgXnUgICAgICAgICAgICAgICAgICAgIF5kICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIGJ5IDEgbGluZVxuIgorIiAgQiwgTGVmdC1hcnJvdyAgICAgICAgIEYsIFJpZ2h0LWFycm93ICAgICAgICAgIHBhbiBkaXNwbGF5IGJ5IDEvMyBzY3JlZW5cbiIKKyIgIF5iICAgICAgICAgICAgICAgICAgICBeZiAgICAgICAgICAgICAgICAgICAgICBwYW4gZGlzcGxheSBieSAxIGNoYXJhY3RlclxuIgorIihUaGVzZSBhcmUgdGhlIHNhbWUgbW90aW9uIGtleXMgYXMgaW4gdGhlIHBhY2thZ2UgbGlzdCBkaXNwbGF5LilcbiIKKyJcbiIKKyJRdWl0OlxuIgorIiBSZXR1cm4sIEVudGVyICAgIHNlbGVjdCB0aGlzIG1ldGhvZCBhbmQgZ28gdG8gaXRzIGNvbmZpZ3VyYXRpb24gZGlhbG9ndWVcbiIKKyIgeCwgWCAgICAgICAgICAgICBleGl0IHdpdGhvdXQgY2hhbmdpbmcgb3Igc2V0dGluZyB1cCB0aGUgaW5zdGFsbGF0aW9uICIKKyJtZXRob2RcbiIKKyJcbiIKKyJNaXNjZWxsYW5lb3VzOlxuIgorIiAgPywgSGVscCwgRjEgICAgICByZXF1ZXN0IGhlbHBcbiIKKyIgXmwgICAgICAgICAgICAgICAgcmVkcmF3IGRpc3BsYXlcbiIKKyIgIC8gICAgICAgICAgICAgICAgc2VhcmNoIChqdXN0IHJldHVybiB0byBjYW5jZWwpXG4iCisiICBcXCAgICAgICAgICAgICAgICByZXBlYXQgbGFzdCBzZWFyY2hcbiIKK21zZ3N0ciAiIgorIlRlY2xhcyBkZSBtb3ZpbWVudGHDp8OjbzogUHLDs3hpbW8vQW50ZXJpb3IsIFRvcG8vRmltLCBDaW1hL0JhaXhvLCBUcsOhcy8iCisiRnJlbnRlOlxuIgorIiAgaiwgU2V0YS1hYmFpeG8gICAgICAgIGssIFNldGEtYWNpbWEgICAgICAgICAgIG1vdmUgcmVhbGNlXG4iCisiICBOLCBQYWdlLWRvd24sIEVzcGHDp28gIFAsIFBhZ2UtdXAsIEJhY2tzcGFjZSAgIHJvbGEgbGlzdGEgZW0gMSBww6FnaW5hXG4iCisiICBebiAgICAgICAgICAgICAgICAgICAgXnAgICAgICAgICAgICAgICAgICAgICAgcm9sYSBsaXN0YSBlbSAxIGxpbmhhXG4iCisiICB0LCBIb21lICAgICAgICAgICAgICAgZSwgRW5kICAgICAgICAgICAgICAgICAgcHVsYSBwYXJhIHRvcG8vZmltIGRhIGxpc3RhXG4iCisiICB1ICAgICAgICAgICAgICAgICAgICAgZCAgICAgICAgICAgICAgICAgICAgICAgcm9sYSBpbmZvcm1hw6fDo28gZW0gMSBww6FnaW5hXG4iCisiICBedSAgICAgICAgICAgICAgICAgICAgXmQgICAgICAgICAgICAgICAgICAgICAgcm9sYSBpbmZvcm1hw6fDo28gZW0gMSBsaW5oYVxuIgorIiAgQiwgU2V0YS3DoC1lc3F1ZXJkYSAgICBGLCBTZXRhLcOgLWRpcmVpdGEgICAgICAgcm9sYSAxLzMgZGEgdGVsYSBwYXJhIG8gIgorImxhZG9cbiIKKyIgIF5iICAgICAgICAgICAgICAgICAgICBeZiAgICAgICAgICAgICAgICAgICAgICByb2xhIDEgY2FyYWN0ZXIgcGFyYSBvIGxhZG9cbiIKKyIoRXN0YXMgc8OjbyBhcyBtZXNtYXMgdGVjbGFzIGRlIG1vdmltZW50YcOnw6NvIGRhIHRlbGEgZGEgbGlzdGEgZGUgcGFjb3RlcykuXG4iCisiXG4iCisiU2FpcjpcbiIKKyIgUmV0dXJuLCBFbnRlciAgICBzZWxlY2lvbmEgZXN0ZSBtw6l0b2RvIGUgdmFpIHBhcmEgc3VhIGNvbmZpZ3VyYcOnw6NvXG4iCisiIHgsIFggICAgICAgICAgICAgc2FpIHNlbSBtdWRhciBvdSBjb25maWd1cmFyIG8gbcOpdG9kbyBkZSBpbnN0YWxhw6fDo29cbiIKKyJcbiIKKyJNaXNjZWzDom5lYTpcbiIKKyIgID8sIEFqdWRhLCBGMSAgICAgc29saWNpdGEgYWp1ZGFcbiIKKyIgXmwgICAgICAgICAgICAgICAgcmVkZXNlbmhhIGEgdGVsYVxuIgorIiAgLyAgICAgICAgICAgICAgICBwcm9jdXJhIChlbnRlciBwYXJhIGNhbmNlbGFyKVxuIgorIiAgXFwgICAgICAgICAgICAgICAgcmVwZXRpciDDumx0aW1hIGJ1c2NhXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzo2MAorbXNnaWQgIlR5cGUgZHNlbGVjdCAtLWhlbHAgZm9yIGhlbHAuIgorbXNnc3RyICJEaWdpdGUgZHNlbGVjdCAtLWhlbHAgcGFyYSBhanVkYS4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDMKK21zZ2lkICJhIgorbXNnc3RyICJhIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQzCittc2dpZCAiW0FdY2Nlc3MiCittc2dzdHIgIltBXWNlc3NvIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQzCittc2dpZCAiQ2hvb3NlIHRoZSBhY2Nlc3MgbWV0aG9kIHRvIHVzZS4iCittc2dzdHIgIkVzY29saGVyIG8gbcOpdG9kbyBkZSBhY2Vzc28gYSB1c2FyLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NAorbXNnaWQgInUiCittc2dzdHIgInUiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDQKK21zZ2lkICJbVV1wZGF0ZSIKK21zZ3N0ciAiW1VdcGRhdGUiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDQKK21zZ2lkICJVcGRhdGUgbGlzdCBvZiBhdmFpbGFibGUgcGFja2FnZXMsIGlmIHBvc3NpYmxlLiIKK21zZ3N0ciAiQXR1YWxpemFyIGxpc3RhIGRlIHBhY290ZXMgZGlzcG9uw612ZWlzLCBzZSBwb3Nzw612ZWwuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ1Cittc2dpZCAicyIKK21zZ3N0ciAicyIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NQorbXNnaWQgIltTXWVsZWN0IgorbXNnc3RyICJbU11lbGVjaW9uYXIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDUKK21zZ2lkICJSZXF1ZXN0IHdoaWNoIHBhY2thZ2VzIHlvdSB3YW50IG9uIHlvdXIgc3lzdGVtLiIKK21zZ3N0ciAiU29saWNpdGEgcXVhaXMgcGFjb3RlcyB2b2PDqiBxdWVyIGVtIHNldSBzaXN0ZW1hLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NgorbXNnaWQgImkiCittc2dzdHIgImkiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDYKK21zZ2lkICJbSV1uc3RhbGwiCittc2dzdHIgIltJXW5zdGFsYXIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDYKK21zZ2lkICJJbnN0YWxsIGFuZCB1cGdyYWRlIHdhbnRlZCBwYWNrYWdlcy4iCittc2dzdHIgIkluc3RhbGFyIGUgYXR1YWxpemFyIHBhY290ZXMgZGVzZWphZG9zLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NworbXNnaWQgImMiCittc2dzdHIgImMiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDcKK21zZ2lkICJbQ11vbmZpZyIKK21zZ3N0ciAiW0Ndb25maWd1cmFyIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ3Cittc2dpZCAiQ29uZmlndXJlIGFueSBwYWNrYWdlcyB0aGF0IGFyZSB1bmNvbmZpZ3VyZWQuIgorbXNnc3RyICJDb25maWd1cmFyIHF1YWlzcXVlciBwYWNvdGVzIHF1ZSBlc3RlamFtIGRlc2NvbmZpZ3VyYWRvcy4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDgKK21zZ2lkICJyIgorbXNnc3RyICJyIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ4Cittc2dpZCAiW1JdZW1vdmUiCittc2dzdHIgIltSXWVtb3ZlciIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OAorbXNnaWQgIlJlbW92ZSB1bndhbnRlZCBzb2Z0d2FyZS4iCittc2dzdHIgIlJlbW92ZXIgcHJvZ3JhbWFzIGluZGVzZWphZG9zLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OQorbXNnaWQgInEiCittc2dzdHIgInEiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDkKK21zZ2lkICJbUV11aXQiCittc2dzdHIgIltRXVNhaXIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDkKK21zZ2lkICJRdWl0IGRzZWxlY3QuIgorbXNnc3RyICJTYWlyIGRvIGRzZWxlY3QuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTUwCittc2dpZCAibWVudSIKK21zZ3N0ciAibWVudSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE1NQorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIGhhbmRsaW5nIGZyb250ZW5kIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkludGVyZmFjZSBkbyBnZXJlbmNpYWRvciBkZSBwYWNvdGVzIGRvIERlYmlhbiAnJXMnIHZlcnPDo28gJXMuXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNTgKK21zZ2lkICIiCisiQ29weXJpZ2h0IChDKSAxOTk0LTE5OTYgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKK21zZ3N0ciAiIgorIkNvcHlyaWdodCAoQykgMTk5NC0xOTk2IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNjIKKyMsIGZ1enp5Cittc2dpZCAiIgorIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgb3JcbiIKKyJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKK21zZ3N0ciAiIgorIkVzdGUgw6kgdW0gc29mdHdhcmUgbGl2cmU7IHZlamEgYSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSAoXCJHTlUgTGljZW7Dp2FcbiIKKyJQw7pibGljYSBHZXJhbFwiKSB2ZXJzw6NvIDIgb3UgcG9zdGVyaW9yIHBhcmEgY29uZGnDp8O1ZXMgZGUgY8OzcGlhLiAgTsOjbyBow6FcbiIKKyJORU5IVU1BIGdhcmFudGlhLlxuIgorIlZlamEgJXMgLS1saWNlbnNlIHBhcmEgZGV0YWxoZXMgZGUgY29weXJpZ2h0IGUgbGljZW7Dp2EuXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNzIgZHNlbGVjdC9tYWluLmNjOjIyMAorbXNnaWQgIjxzdGFuZGFyZCBvdXRwdXQ+IgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSBbPGFjdGlvbj4gLi4uXVxuIgorIlxuIgorbXNnc3RyICIiCisiVXNvOiAlcyBbPG9ww6fDtWVzPiAuLi5dIFs8YcOnw6NvPiAuLi5dXG4iCisiXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyIgIC0tZXhwZXJ0ICAgICAgICAgICAgICAgICAgIFR1cm4gb24gZXhwZXJ0IG1vZGUuXG4iCisiICAtLWRlYnVnIDxmaWxlPiB8IC1EPGZpbGU+ICBUdXJuIG9uIGRlYnVnZ2luZywgc2VuZGluZyBvdXRwdXQgdG8gPGZpbGU+LlxuIgorIiAgLS1jb2xvdXIgfCAtLWNvbG9yIHNjcmVlbnBhcnQ6W2ZvcmVncm91bmRdLFtiYWNrZ3JvdW5kXVs6YXR0clsrYXR0cisuLl1dXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDb25maWd1cmUgc2NyZWVuIGNvbG91cnMuXG4iCisiXG4iCittc2dzdHIgIiIKKyJPcMOnw7VlczpcbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmV0w7NyaW8+ICAgICBVc2UgPGRpcmV0w7NyaW8+IGFvIGludsOpcyBkZSAlcy5cbiIKKyIgIC0tZXhwZXJ0ICAgICAgICAgICAgICAgICAgIEF0aXZlIG1vZG8gZXhwZXJ0LlxuIgorIiAgLS1kZWJ1ZyA8YXJxPiB8IC1EPGFycT4gICAgQXRpdmUgZGVwdXJhw6fDo28sIGVudmlhbmRvIHNhw61kYSBwYXJhIDxhcnE+LlxuIgorIiAgLS1jb2xvdXIgfCAtLWNvbG9yIHBhcnRlLWRhLXRlbGE6W2ZyZW50ZV0sW2Z1bmRvXVs6YXRyaWJbK2F0cmliKy4uXV1cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENvbmZpZ3VyYSBjb3JlcyBkYSB0ZWxhLlxuIgorIlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTk2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgICBTaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICAgU2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgICAgTW9zdHJhIGVzdGEgbWVuc2FnZW0gZGUgYWp1ZGEuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgICBNb3N0cmEgYSB2ZXJzw6NvLlxuIgorIiAgLS1saWNlbnNlIHwgLS1saWNlbmNlICAgICAgTW9zdHJhIGEgbGljZW7Dp2EuXG4iCisiXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkFjdGlvbnM6XG4iCisiICBhY2Nlc3MgdXBkYXRlIHNlbGVjdCBpbnN0YWxsIGNvbmZpZyByZW1vdmUgcXVpdFxuIgorIlxuIgorbXNnc3RyICIiCisiQcOnw7VlcyA6XG4iCisiICBhY2Nlc3MgdXBkYXRlIHNlbGVjdCBpbnN0YWxsIGNvbmZpZyByZW1vdmUgcXVpdFxuIgorIlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjA1CisjLCBjLWZvcm1hdAorbXNnaWQgIlNjcmVlbnBhcnRzOlxuIgorbXNnc3RyICJQYXJ0ZXMgZGEgdGVsYTpcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjIxMAorIywgYy1mb3JtYXQKK21zZ2lkICJDb2xvdXJzOlxuIgorbXNnc3RyICJDb3JlczpcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjIxNQorIywgYy1mb3JtYXQKK21zZ2lkICJBdHRyaWJ1dGVzOlxuIgorbXNnc3RyICJBdHJpYnV0b3M6XG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGRuJ3Qgb3BlbiBkZWJ1ZyBmaWxlIGAlLjI1NXMnXG4iCittc2dzdHIgIm7Do28gZm9pIHBvc3PDrXZlbCBhYnJpciBhcnF1aXZvIGRlIGRlcHVyYcOnw6NvICclLjI1MHMnXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyNTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW52YWxpZCAlcyBgJXMnXG4iCittc2dzdHIgIiVzIGludsOhbGlkbyAnJXMnXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyNzAKK21zZ2lkICJzY3JlZW4gcGFydCIKK21zZ3N0ciAicGFydGUgZGEgdGVsYSIKKworIzogZHNlbGVjdC9tYWluLmNjOjI3NgorbXNnaWQgIk51bGwgY29sb3VyIHNwZWNpZmljYXRpb25cbiIKK21zZ3N0ciAiRXNwZWNpZmljYcOnw6NvIGRlIGNvciBudWxhXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyODQgZHNlbGVjdC9tYWluLmNjOjI4OQorbXNnaWQgImNvbG91ciIKK21zZ3N0ciAiY29yIgorCisjOiBkc2VsZWN0L21haW4uY2M6Mjk3Cittc2dpZCAiY29sb3VyIGF0dHJpYnV0ZSIKK21zZ3N0ciAiYXRyaWJ1dG8gY29yIgorCisjOiBkc2VsZWN0L21haW4uY2M6MzI5Cittc2dpZCAiVGVybWluYWwgZG9lcyBub3QgYXBwZWFyIHRvIHN1cHBvcnQgY3Vyc29yIGFkZHJlc3NpbmcuXG4iCittc2dzdHIgIlRlcm1pbmFsIG7Do28gcGFyZWNlIGRhciBzdXBvcnRlIGFvIGVuZGVyZcOnYW1lbnRvIGRlIGN1cnNvci5cbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjMzMQorbXNnaWQgIlRlcm1pbmFsIGRvZXMgbm90IGFwcGVhciB0byBzdXBwb3J0IGhpZ2hsaWdodGluZy5cbiIKK21zZ3N0ciAiVGVybWluYWwgbsOjbyBwYXJlY2UgZGFyIHN1cG9ydGUgYW8gcmVhbGNlIChcImhpZ2hsaWdodGluZ1wiKS5cbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjMzMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiU2V0IHlvdXIgVEVSTSB2YXJpYWJsZSBjb3JyZWN0bHksIHVzZSBhIGJldHRlciB0ZXJtaW5hbCxcbiIKKyJvciBtYWtlIGRvIHdpdGggdGhlIHBlci1wYWNrYWdlIG1hbmFnZW1lbnQgdG9vbCAlcy5cbiIKK21zZ3N0ciAiIgorIkRlZmluYSBzdWEgdmFyacOhdmVsIFRFUk0gY29ycmV0YW1lbnRlLCB1c2UgdW0gdGVybWluYWwgbWVsaG9yLFxuIgorIm91IGZhw6dhIGNvbSBhIGZlcnJhbWVudGEgZGUgZ2VyZW5jaWFtZW50byBwb3ItcGFjb3RlICVzLlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MzM2Cittc2dpZCAidGVybWluYWwgbGFja3MgbmVjZXNzYXJ5IGZlYXR1cmVzLCBnaXZpbmcgdXAiCittc2dzdHIgInRlcm1pbmFsIG7Do28gcG9zc3VpIGFsZ3VucyByZWN1cnNvcyBuZWNlc3PDoXJpb3MsIGRlc2lzdGluZG8iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzo0MTcKK21zZ2lkICIiCisiXG4iCisiXG4iCisiTW92ZSBhcm91bmQgd2l0aCBeUCBhbmQgXk4sIGN1cnNvciBrZXlzLCBpbml0aWFsIGxldHRlcnMsIG9yIGRpZ2l0cztcbiIKKyJQcmVzcyA8ZW50ZXI+IHRvIGNvbmZpcm0gc2VsZWN0aW9uLiAgIF5MIHJlZHJhd3Mgc2NyZWVuLlxuIgorIlxuIgorbXNnc3RyICIiCisiXG4iCisiXG4iCisiTW92YS1zZSBjb20gXlAgZSBeTiwgdGVjbGFzIGRpcmVjaW9uYWlzLCBsZXRyYXMgaW5pY2lhaXMsIG91IGTDrWdpdG9zO1xuIgorIlByZXNzaW9uZSA8ZW50ZXI+IHBhcmEgY29uZmlybWFyIGEgc2VsZcOnw6NvLiAgIF5MIHJlZGVzZW5oYSBhIHRlbGEuXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzo0MjgKK21zZ2lkICIiCisiXG4iCisiXG4iCisiUmVhZC1vbmx5IGFjY2Vzczogb25seSBwcmV2aWV3IG9mIHNlbGVjdGlvbnMgaXMgYXZhaWxhYmxlISIKK21zZ3N0ciAiIgorIlxuIgorIlxuIgorIkFjZXNzbyBzb21lbnRlLWxlaXR1cmE6IGFwZW5hcyBhIHByw6ktdmlzdWFsaXphw6fDo28gZGFzIHNlbGXDp8O1ZXMgZXN0w6EgIgorImRpc3BvbsOtdmVsISIKKworIzogZHNlbGVjdC9tYWluLmNjOjQ0OAorbXNnaWQgImZhaWxlZCB0byBnZXRjaCBpbiBtYWluIG1lbnUiCittc2dzdHIgImZhbGhvdSBhbyBleGVjdXRhciBcImdldGNoXCIgbm8gbWVudSBwcmluY2lwYWwiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzo1MzEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBhY3Rpb24gc3RyaW5nIGAlLjUwcyciCittc2dzdHIgInN0cmluZyBkZSBhw6fDo28gZGVzY29uaGVjaWRhICclLjUwcyciCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6NzcKK21zZ2lkICJkc2VsZWN0IC0gbGlzdCBvZiBhY2Nlc3MgbWV0aG9kcyIKK21zZ3N0ciAiZHNlbGVjdCAtIGxpc3RhIGRlIG3DqXRvZG9zIGRlIGFjZXNzbyIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzo4NgorIywgYy1mb3JtYXQKK21zZ2lkICJBY2Nlc3MgbWV0aG9kIGAlcycuIgorbXNnc3RyICJNw6l0b2RvIGRlIGFjZXNzbyAnJXMnLiIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxMjAKK21zZ2lkICJBYmJyZXYuIgorbXNnc3RyICJBYnJldi4iCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTIxIGRzZWxlY3QvcGtnaW5mby5jYzoxMDUgZHNlbGVjdC9wa2d0b3AuY2M6MjkxCittc2dpZCAiRGVzY3JpcHRpb24iCittc2dzdHIgIkRlc2NyacOnw6NvIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjE2NCBkc2VsZWN0L3BrZ2xpc3QuY2M6NTcyCittc2dpZCAiZG91cGRhdGUgZmFpbGVkIgorbXNnc3RyICJkb3VwZGF0ZSBmYWxob3UiCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTY2IGRzZWxlY3QvcGtnbGlzdC5jYzo1NzUKK21zZ2lkICJmYWlsZWQgdG8gdW5ibG9jayBTSUdXSU5DSCIKK21zZ3N0ciAiZmFsaG91IGFvIGRlc2Jsb3F1ZWFyIFNJR1dJTkNIIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjE3MCBkc2VsZWN0L3BrZ2xpc3QuY2M6NTgwCittc2dpZCAiZmFpbGVkIHRvIHJlLWJsb2NrIFNJR1dJTkNIIgorbXNnc3RyICJmYWxob3UgYW8gcmUtYmxvcXVlYXIgU0lHV0lOQ0giCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTcxIGRzZWxlY3QvcGtnbGlzdC5jYzo1ODIKK21zZ2lkICJnZXRjaCBmYWlsZWQiCittc2dzdHIgIlwiZ2V0Y2hcIiBmYWxob3UiCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTg4Cittc2dpZCAiRXhwbGFuYXRpb24iCittc2dzdHIgIkV4cGxpY2HDp8OjbyBkZSIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxOTcKK21zZ2lkICJObyBleHBsYW5hdGlvbiBhdmFpbGFibGUuIgorbXNnc3RyICJTZW0gZXhwbGljYcOnw6NvIGRpc3BvbsOtdmVsIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzo2NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiXG4iCisiJXM6ICVzXG4iCittc2dzdHIgIiIKKyJcbiIKKyJcbiIKKyIlczogJXNcbiIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6NzAKK21zZ2lkICIiCisiXG4iCisiUHJlc3MgPGVudGVyPiB0byBjb250aW51ZS4iCittc2dzdHIgIiIKKyJcbiIKKyJQcmVzc2lvbmUgPGVudGVyPiBwYXJhIGNvbnRpbnVhci4iCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjE2MQorIywgYy1mb3JtYXQKK21zZ2lkICJQcmVzcyA8ZW50ZXI+IHRvIGNvbnRpbnVlLlxuIgorbXNnc3RyICJQcmVzc2lvbmUgPGVudGVyPiBwYXJhIGNvbnRpbnVhci5cbiIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MTYyCisjLCBmdXp6eQorbXNnaWQgIjxzdGFuZGFyZCBlcnJvcj4iCittc2dzdHIgImVycm8gZGUgZXNjcml0YSBuYSBzYcOtZGEgZGUgZXJyb3MgcGFkcsOjbyIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MTY1Cittc2dpZCAiZXJyb3IgcmVhZGluZyBhY2tub3dsZWRnZW1lbnQgb2YgcHJvZ3JhbSBmYWlsdXJlIG1lc3NhZ2UiCittc2dzdHIgImVycm8gbGVuZG8gcmVjb25oZWNpbWVudG8gZGEgbWVuc2FnZW0gZGUgZmFsaGEgZG8gcHJvZ3JhbWEiCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjE5NgorbXNnaWQgInVwZGF0ZSBhdmFpbGFibGUgbGlzdCBzY3JpcHQiCittc2dzdHIgInNjcmlwdCBkZSBhdHVhbGl6YcOnw6NvIGRhIGxpc3RhIGRlIGRpc3BvbsOtdmVpcyIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MjAwCittc2dpZCAiaW5zdGFsbGF0aW9uIHNjcmlwdCIKK21zZ3N0ciAic2NyaXB0IGRlIGluc3RhbGHDp8OjbyIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MjQ2Cittc2dpZCAicXVlcnkvc2V0dXAgc2NyaXB0IgorbXNnc3RyICJzY3JpcHQgZGUgcGVzcXVpc2EvY29uZmlndXJhw6fDo28iCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjUzCisjLCBjLWZvcm1hdAorbXNnaWQgInN5bnRheCBlcnJvciBpbiBtZXRob2Qgb3B0aW9ucyBmaWxlIGAlLjI1MHMnIC0tICVzIgorbXNnc3RyICJlcnJvIGRlIHNpbnRheGUgbm8gYXJxdWl2byBkZSBvcMOnw7VlcyBkZSBtw6l0b2RvICclLjI1MHMnIC0tICVzIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzo1OQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciByZWFkaW5nIG9wdGlvbnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiZXJybyBsZW5kbyBhcnF1aXZvIGRlIG9ww6fDtWVzICclLjI1MHMnIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzo5MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBgJS4yNTBzJyBkaXJlY3RvcnkgZm9yIHJlYWRpbmcgbWV0aG9kcyIKK21zZ3N0ciAiaW1wb3Nzw612ZWwgbGVyIGRpcmV0w7NyaW8gJyUuMjUwcycgcGFyYSBtw6l0b2RvcyBkZSBsZWl0dXJhIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxMDYKKyMsIGMtZm9ybWF0Cittc2dpZCAibWV0aG9kIGAlLjI1MHMnIGhhcyBuYW1lIHRoYXQgaXMgdG9vIGxvbmcgKCVkID4gJWQgY2hhcmFjdGVycykiCittc2dzdHIgIm3DqXRvZG8gJyUuMjUwcycgcG9zc3VpIHVtIG5vbWUgbXVpdG8gbG9uZ28gKCVkID4gJWQgY2FyYWN0ZXJlcykiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjExNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gYWNjZXNzIG1ldGhvZCBzY3JpcHQgYCUuMjUwcyciCittc2dzdHIgImltcG9zc8OtdmVsIGFjZXNzYXIgc2NyaXB0IGRlIG3DqXRvZG8gJyUuMjUwcyciCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjEyMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBtZXRob2Qgb3B0aW9ucyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJpbXBvc3PDrXZlbCBsZXIgYXJxdWl2byBkZSBvcMOnw7VlcyBkZSBtw6l0b2RvICclLjI1MHMnIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNDcKK21zZ2lkICJub24tZGlnaXQgd2hlcmUgZGlnaXQgd2FudGVkIgorbXNnc3RyICJuw6NvLWTDrWdpdG8gb25kZSBlcmEgbmVjZXNzw6FyaW8gZMOtZ2l0byIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTUwCittc2dpZCAiRU9GIGluIGluZGV4IHN0cmluZyIKK21zZ3N0ciAiRU9GIG5vIMOtbmRpY2UgZGEgc3RyaW5nIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNTMKK21zZ2lkICJpbmRleCBzdHJpbmcgdG9vIGxvbmciCittc2dzdHIgIsOtbmRpY2UgZGEgc3RyaW5nIG11aXRvIGxvbmdvIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNTYKK21zZ2lkICJuZXdsaW5lIGJlZm9yZSBvcHRpb24gbmFtZSBzdGFydCIKK21zZ3N0ciAibm92YSBsaW5oYSBhbnRlcyBkbyBpbsOtY2lvIGRvIG5vbWUgZGEgb3DDp8OjbyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTU4Cittc2dpZCAiRU9GIGJlZm9yZSBvcHRpb24gbmFtZSBzdGFydCIKK21zZ3N0ciAiRU9GIGFudGVzIGRvIGluw61jaW8gZG8gbm9tZSBkYSBvcMOnw6NvIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNjIKK21zZ2lkICJub25hbHBoYSB3aGVyZSBvcHRpb24gbmFtZSBzdGFydCB3YW50ZWQiCittc2dzdHIgIm7Do28tYWxwaGEgb25kZSBlcmEgbmVjZXNzw6FyaW8gaW7DrWNpbyBkbyBub21lIGRhIG9ww6fDo28iCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE2NAorbXNnaWQgIm5vbi1hbHBoYW51bSBpbiBvcHRpb24gbmFtZSIKK21zZ3N0ciAibsOjbyBhbGZhbnVtw6lyaWNvIG5vIG5vbWUgZGEgb3DDp8OjbyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTY3Cittc2dpZCAiRU9GIGluIG9wdGlvbiBuYW1lIgorbXNnc3RyICJFT0Ygbm8gbm9tZSBkYSBvcMOnw6NvIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNzIKK21zZ2lkICJuZXdsaW5lIGJlZm9yZSBzdW1tYXJ5IgorbXNnc3RyICJub3ZhIGxpbmhhIGFudGVzIGRvIHN1bcOhcmlvIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNzQKK21zZ2lkICJFT0YgYmVmb3JlIHN1bW1hcnkiCittc2dzdHIgIkVPRiBhbnRlcyBkbyBzdW3DoXJpbyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTgwCittc2dpZCAiRU9GIGluIHN1bW1hcnkgLSBtaXNzaW5nIG5ld2xpbmUiCittc2dzdHIgIkVPRiBubyBzdW3DoXJpbyAtIG5vdmEgbGluaGEgZmFsdGFuZG8iCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE5MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBvcHRpb24gZGVzY3JpcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiaW1wb3Nzw612ZWwgYWJyaXIgYXJxdWl2byBkZSBkZXNjcmnDp8OjbyBkZSBvcMOnw6NvICclLjI1MHMnIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxOTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgb3B0aW9uIGRlc2NyaXB0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImltcG9zc8OtdmVsIGV4ZWN1dGFyIFwic3RhdFwiIG5vIGFycXVpdm8gZGUgZGVzY3Jpw6fDo28gZGUgb3DDp8OjbyAnJS4yNTBzJyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTk4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZWFkIG9wdGlvbiBkZXNjcmlwdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJmYWxob3UgYW8gbGVyIGFycXVpdm8gZGUgZGVzY3Jpw6fDo28gZGUgb3DDp8OjbyAnJS4yNTBzJyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MjAxCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGR1cmluZyByZWFkIG9mIG9wdGlvbiBkZXNjcmlwdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJlcnJvIGR1cmFudGUgYSBsZWl0dXJhIGRvIGFycXVpdm8gZGUgZGVzY3Jpw6fDo28gZGUgb3DDp8OjbyAnJS4yNTBzJyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MjI0CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGR1cmluZyByZWFkIG9mIG1ldGhvZCBvcHRpb25zIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImVycm8gZHVyYW50ZSBhIGxlaXR1cmEgZG8gYXJxdWl2byBkZSBvcMOnw7VlcyBkZSBtw6l0b2RvICclLjI1MHMnIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gY3VycmVudCBvcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiaW1wb3Nzw612ZWwgYWJyaXIgYXJxdWl2byBkZSBvcMOnw6NvIGF0dWFsICclLjI1MHMnIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyODkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gbmV3IG9wdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJpbXBvc3PDrXZlbCBhYnJpciBub3ZvIGFycXVpdm8gZGUgb3DDp8OjbyAnJS4yNTBzJyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MjkyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgb3B0aW9uIHRvIGAlLjI1MHMnIgorbXNnc3RyICJpbXBvc3PDrXZlbCBlc2NyZXZlciBub3ZhIG9ww6fDo28gcGFyYSAnJS4yNTBzJyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6Mjk1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBuZXcgb3B0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImltcG9zc8OtdmVsIGZlY2hhciBub3ZvIGFycXVpdm8gZGUgb3DDp8OjbyAnJS4yNTBzJyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6Mjk3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyBvcHRpb24gYXMgYCUuMjUwcyciCittc2dzdHIgImltcG9zc8OtdmVsIGluc3RhbGFyIG5vdmEgb3DDp8OjbyBjb21vICclLjI1MHMnIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MzYKK21zZ2lkICJuZXcgcGFja2FnZSIKK21zZ3N0ciAibm92byBwYWNvdGUiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzozNworbXNnaWQgImluc3RhbGwiCittc2dzdHIgImluc3RhbGFyIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MzgKK21zZ2lkICJob2xkIgorbXNnc3RyICJyZXRlciIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjM5Cittc2dpZCAicmVtb3ZlIgorbXNnc3RyICJyZW1vdmVyIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NDAKK21zZ2lkICJwdXJnZSIKK21zZ3N0ciAiZXhwdXJnYXIiCisKKyMuIFRSQU5TTEFUT1JTOiBUaGUgc3BhY2UgaXMgYSB0cmljayB0byB3b3JrIGFyb3VuZCBnZXR0ZXh0IHdoaWNoIHVzZXMKKyMuICogdGhlIGVtcHR5IHN0cmluZyB0byBzdG9yZSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgdHJhbnNsYXRpb24uIERPIE5PVAorIy4gKiBDSEFOR0UgVEhBVCBJTiBBIFRSQU5TTEFUSU9OISBUaGUgY29kZSByZWFsbHkgcmVsaWVzIG9uIHRoYXQgYmVpbmcKKyMuICogYSBzaW5nbGUgc3BhY2UuCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NDcKK21zZ2lkICIgIgorbXNnc3RyICIgIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NDgKK21zZ2lkICJSRUlOU1RBTEwiCittc2dzdHIgIlJFSU5TVEFMQVIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1MQorbXNnaWQgIm5vdCBpbnN0YWxsZWQiCittc2dzdHIgIm7Do28gaW5zdGFsYWRvIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTIKK21zZ2lkICJyZW1vdmVkIChjb25maWdzIHJlbWFpbikiCittc2dzdHIgInJlbW92aWRvIChjb25maWd1cmHDp8O1ZXMgcGVybWFuZWNlbSkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1MworbXNnaWQgImhhbGYgaW5zdGFsbGVkIgorbXNnc3RyICJzZW1pLWluc3RhbGFkbyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjU0Cittc2dpZCAidW5wYWNrZWQgKG5vdCBzZXQgdXApIgorbXNnc3RyICJkZXNlbXBhY290YWRvIChuw6NvIGNvbmZpZ3VyYWRvKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjU1Cittc2dpZCAiaGFsZiBjb25maWd1cmVkIChjb25maWcgZmFpbGVkKSIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTYKK21zZ2lkICJhd2FpdGluZyB0cmlnZ2VyIHByb2Nlc3NpbmciCittc2dzdHIgInByb2Nlc3NhbWVudG8gZGUgZ2F0aWxob3MgZW0gZXNwZXJhIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTcKK21zZ2lkICJ0cmlnZ2VyZWQiCittc2dzdHIgImRpc3BhcmFkbyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjU4Cittc2dpZCAiaW5zdGFsbGVkIgorbXNnc3RyICJpbnN0YWxhZG8iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo2MQorbXNnaWQgIlJlcXVpcmVkIgorbXNnc3RyICJSZXF1ZXJpZG9zIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjIKK21zZ2lkICJJbXBvcnRhbnQiCittc2dzdHIgIkltcG9ydGFudGVzIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjMKK21zZ2lkICJTdGFuZGFyZCIKK21zZ3N0ciAiUGFkcsO1ZXMiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo2NAorbXNnaWQgIk9wdGlvbmFsIgorbXNnc3RyICJPcGNpb25haXMiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo2NQorbXNnaWQgIkV4dHJhIgorbXNnc3RyICJFeHRyYXMiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo2NgorbXNnaWQgIiFCdWchIgorbXNnc3RyICIhQnVnISIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjY3Cittc2dpZCAiVW5jbGFzc2lmaWVkIgorbXNnc3RyICJTZW0gY2xhc3NpZmljYcOnw6NvIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzAKK21zZ2lkICJzdWdnZXN0cyIKK21zZ3N0ciAic3VnZXJlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzEKK21zZ2lkICJyZWNvbW1lbmRzIgorbXNnc3RyICJyZWNvbWVuZGEiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3MgorbXNnaWQgImRlcGVuZHMgb24iCittc2dzdHIgImRlcGVuZGUgZGUiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3MworbXNnaWQgInByZS1kZXBlbmRzIG9uIgorbXNnc3RyICJwcsOpLWRlcGVuZGUgZGUiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3NAorbXNnaWQgImJyZWFrcyIKK21zZ3N0ciAicXVlYnJhIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzUKK21zZ2lkICJjb25mbGljdHMgd2l0aCIKK21zZ3N0ciAiY29uZmxpdGEgY29tIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzYKK21zZ2lkICJwcm92aWRlcyIKK21zZ3N0ciAiaW5jbHVpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzcKK21zZ2lkICJyZXBsYWNlcyIKK21zZ3N0ciAic3Vic3RpdHVpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzgKK21zZ2lkICJlbmhhbmNlcyIKK21zZ3N0ciAibWVsaG9yYSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjgxCittc2dpZCAiUmVxIgorbXNnc3RyICJSZXEiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4MgorbXNnaWQgIkltcCIKK21zZ3N0ciAiSW1wIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODMKK21zZ2lkICJTdGQiCittc2dzdHIgIlBkciIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjg0Cittc2dpZCAiT3B0IgorbXNnc3RyICJPcGMiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4NQorbXNnaWQgIlh0ciIKK21zZ3N0ciAiRXh0IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODYKK21zZ2lkICJiVUciCittc2dzdHIgImJVRyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjg3Cittc2dpZCAiPyIKK21zZ3N0ciAiPyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjk1IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTUKK21zZ2lkICJCcm9rZW4iCittc2dzdHIgIlF1ZWJyYWRvIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6OTYKK21zZ2lkICJOZXciCittc2dzdHIgIk5vdm9zIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6OTcKK21zZ2lkICJVcGRhdGVkIgorbXNnc3RyICJBdHVhbGl6YWRvcyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjk4Cittc2dpZCAiT2Jzb2xldGUvbG9jYWwiCittc2dzdHIgIk9ic29sZXRvcy9sb2NhaXMiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo5OQorbXNnaWQgIlVwLXRvLWRhdGUiCittc2dzdHIgIkF0dWFsaXphZG9zIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTAwCittc2dpZCAiQXZhaWxhYmxlIgorbXNnc3RyICJEaXNwb27DrXZlaXMiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDEgZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExNworbXNnaWQgIlJlbW92ZWQiCittc2dzdHIgIlJlbW92aWRvcyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwMiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTExCittc2dpZCAiQnJva2VubHkgaW5zdGFsbGVkIHBhY2thZ2VzIgorbXNnc3RyICJQYWNvdGVzIGluc3RhbGFkb3MgcXVlYnJhZG9zIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTAzCittc2dpZCAiTmV3bHkgYXZhaWxhYmxlIHBhY2thZ2VzIgorbXNnc3RyICJOb3ZvcyBwYWNvdGVzIGRpc3BvbsOtdmVpcyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwNAorbXNnaWQgIlVwZGF0ZWQgcGFja2FnZXMgKG5ld2VyIHZlcnNpb24gaXMgYXZhaWxhYmxlKSIKK21zZ3N0ciAiUGFjb3RlcyBhdHVhbGl6YWRvcyAobm92YSB2ZXJzw6NvIGVzdMOhIGRpc3BvbsOtdmVsKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwNQorbXNnaWQgIk9ic29sZXRlIGFuZCBsb2NhbCBwYWNrYWdlcyBwcmVzZW50IG9uIHN5c3RlbSIKK21zZ3N0ciAiUGFjb3RlcyBvYnNvbGV0b3MgZSBsb2NhaXMgcHJlc2VudGVzIG5vIHNpc3RlbWEiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDYKK21zZ2lkICJVcCB0byBkYXRlIGluc3RhbGxlZCBwYWNrYWdlcyIKK21zZ3N0ciAiUGFjb3RlcyBpbnN0YWxhZG9zIGF0dWFsaXphZG9zIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTA3Cittc2dpZCAiQXZhaWxhYmxlIHBhY2thZ2VzIChub3QgY3VycmVudGx5IGluc3RhbGxlZCkiCittc2dzdHIgIlBhY290ZXMgZGlzcG9uw612ZWlzIChuw6NvIGluc3RhbGFkb3Mgbm8gbW9tZW50bykiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDgKK21zZ2lkICJSZW1vdmVkIGFuZCBubyBsb25nZXIgYXZhaWxhYmxlIHBhY2thZ2VzIgorbXNnc3RyICJQYWNvdGVzIHJlbW92aWRvcyBlIG7Do28gbWFpcyBkaXNwb27DrXZlaXMiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTIKK21zZ2lkICJJbnN0YWxsZWQgcGFja2FnZXMiCittc2dzdHIgIlBhY290ZXMgaW5zdGFsYWRvcyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExMworbXNnaWQgIlJlbW92ZWQgcGFja2FnZXMgKGNvbmZpZ3VyYXRpb24gc3RpbGwgcHJlc2VudCkiCittc2dzdHIgIlBhY290ZXMgcmVtb3ZpZG9zIChjb25maWd1cmHDp8OjbyBhaW5kYSBwcmVzZW50ZSkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTQKK21zZ2lkICJQdXJnZWQgcGFja2FnZXMgYW5kIHRob3NlIG5ldmVyIGluc3RhbGxlZCIKK21zZ3N0ciAiUGFjb3RlcyBleHB1cmdhZG9zIGUgb3MgbnVuY2EgaW5zdGFsYWRvcyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExNgorbXNnaWQgIkluc3RhbGxlZCIKK21zZ3N0ciAiSW5zdGFsYWRvIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTE4Cittc2dpZCAiUHVyZ2VkIgorbXNnc3RyICJFeHB1cmdhZG8iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxOTgKK21zZ2lkICJkc2VsZWN0IC0gcmVjdXJzaXZlIHBhY2thZ2UgbGlzdGluZyIKK21zZ3N0ciAiZHNlbGVjdCAtIGxpc3RhIHJlY3Vyc2l2YSBkZSBwYWNvdGVzIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTk5Cittc2dpZCAiZHNlbGVjdCAtIGluc3BlY3Rpb24gb2YgcGFja2FnZSBzdGF0ZXMiCittc2dzdHIgImRzZWxlY3QgLSBpbnNwZcOnw6NvIGRvcyBlc3RhZG9zIGRvcyBwYWNvdGVzIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjAwCittc2dpZCAiZHNlbGVjdCAtIG1haW4gcGFja2FnZSBsaXN0aW5nIgorbXNnc3RyICJkc2VsZWN0IC0gbGlzdGEgcHJpbmNpcGFsIGRlIHBhY290ZXMiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMDgKK21zZ2lkICIgKGJ5IHNlY3Rpb24pIgorbXNnc3RyICIgKHBvciBzZcOnw6NvKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIxMQorbXNnaWQgIiAoYXZhaWwuLCBzZWN0aW9uKSIKK21zZ3N0ciAiIChkaXNwLiwgc2XDp8OjbykiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMTQKK21zZ2lkICIgKHN0YXR1cywgc2VjdGlvbikiCittc2dzdHIgIiAoZXN0YWRvLCBzZcOnw6NvKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIyMworbXNnaWQgIiAoYnkgcHJpb3JpdHkpIgorbXNnc3RyICIgKHBvciBwcmlvcmlkYWRlKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIyNgorbXNnaWQgIiAoYXZhaWwuLCBwcmlvcml0eSkiCittc2dzdHIgIiAoZGlzcC4sIHByaW9yaWRhZGUpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjI5Cittc2dpZCAiIChzdGF0dXMsIHByaW9yaXR5KSIKK21zZ3N0ciAiIChlc3RhZG8sIHByaW9yaWRhZGUpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjM4IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNTAKK21zZ2lkICIgKGFscGhhYmV0aWNhbGx5KSIKK21zZ3N0ciAiIChvcmRlbSBhbGZhYsOpdGljYSkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNDEKK21zZ2lkICIgKGJ5IGF2YWlsYWJpbGl0eSkiCittc2dzdHIgIiAocG9yIGRpc3BvbmliaWxpZGFkZSkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNDQKK21zZ2lkICIgKGJ5IHN0YXR1cykiCittc2dzdHIgIiAocG9yIGVzdGFkbykiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNTgKK21zZ2lkICIgbWFyazorLz0vLSB0ZXJzZTp2IGhlbHA6PyIKK21zZ3N0ciAiIG1hcmNhOisvPS8tIHJlc3Vtbzp2IGFqdWRhOj8iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNTkKK21zZ2lkICIgbWFyazorLz0vLSB2ZXJib3NlOnYgaGVscDo/IgorbXNnc3RyICIgbWFyY2E6Ky89Ly0gZGV0YWxoYWRvOnYgYWp1ZGE6PyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI2MAorbXNnaWQgIiB0ZXJzZTp2IGhlbHA6PyIKK21zZ3N0ciAiIHJlc3Vtbzp2IGFqdWRhOj8iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNjEKK21zZ2lkICIgdmVyYm9zZTp2IGhlbHA6PyIKK21zZ3N0ciAiIGRldGFsaGFkbzp2IGFqdWRhOj8iCisKKyM6IGRzZWxlY3QvcGtnaW5mby5jYzo4MAorbXNnaWQgIiIKKyJUaGUgbGluZSB5b3UgaGF2ZSBoaWdobGlnaHRlZCByZXByZXNlbnRzIG1hbnkgcGFja2FnZXM7IGlmIHlvdSBhc2sgdG8gIgorImluc3RhbGwsIHJlbW92ZSwgaG9sZCwgZXRjLiBpdCB5b3Ugd2lsbCBhZmZlY3QgYWxsIHRoZSBwYWNrYWdlcyB3aGljaCBtYXRjaCAiCisidGhlIGNyaXRlcmlvbiBzaG93bi5cbiIKKyJcbiIKKyJJZiB5b3UgbW92ZSB0aGUgaGlnaGxpZ2h0IHRvIGEgbGluZSBmb3IgYSBwYXJ0aWN1bGFyIHBhY2thZ2UgeW91IHdpbGwgc2VlICIKKyJpbmZvcm1hdGlvbiBhYm91dCB0aGF0IHBhY2thZ2UgZGlzcGxheWVkIGhlcmUuXG4iCisiWW91IGNhbiB1c2UgYG8nIGFuZCBgTycgdG8gY2hhbmdlIHRoZSBzb3J0IG9yZGVyIGFuZCBnaXZlIHlvdXJzZWxmIHRoZSAiCisib3Bwb3J0dW5pdHkgdG8gbWFyayBwYWNrYWdlcyBpbiBkaWZmZXJlbnQga2luZHMgb2YgZ3JvdXBzLiIKK21zZ3N0ciAiIgorIkEgbGluaGEgcXVlIHZvY8OqIHJlYWzDp291IHJlcHJlc2VudGEgbXVpdG9zIHBhY290ZXM7IHNlIHZvY8OqIHBlZGlyIHBhcmEgIgorImluc3RhbMOhLWxhLCByZW1vdsOqLWxhLCByZXTDqi1sYSwgZXRjLCB2b2PDqiBhZmV0YXLDoSB0b2RvcyBvcyBwYWNvdGVzIHF1ZSAiCisiY29tYmluYW0gY29tIG8gY3JpdMOpcmlvIGV4aWJpZG8uXG4iCisiXG4iCisiU2Ugdm9jw6ogbW92ZXIgbyByZWFsY2UgcGFyYSB1bWEgbGluaGEgZGUgdW0gcGFjb3RlIGVtIHBhcnRpY3VsYXIgdm9jw6ogdmVyw6EgIgorImluZm9ybWHDp8O1ZXMgc29icmUgZXN0ZSBwYWNvdGUgZXhpYmlkYXMgYXF1aS5cbiIKKyJWb2PDqiBwb2RlIHVzYXIgJ28nIGUgJ08nIHBhcmEgbXVkYXIgYSBvcmRlbmHDp8OjbyBlIHRlciBhIG9wb3J0dW5pZGFkZSBkZSAiCisibWFyY2FyIHBhY290ZXMgZW0gZGlmZXJlbnRlcyB0aXBvcyBkZSBncnVwb3MuIgorCisjOiBkc2VsZWN0L3BrZ2luZm8uY2M6OTMKK21zZ2lkICJJbnRlcnJlbGF0aW9uc2hpcHMiCittc2dzdHIgIkludGVyLXJlbGHDp8O1ZXMiCisKKyM6IGRzZWxlY3QvcGtnaW5mby5jYzoxMTIKK21zZ2lkICJObyBkZXNjcmlwdGlvbiBhdmFpbGFibGUuIgorbXNnc3RyICJOZW5odW1hIGRlc2NyacOnw6NvIGRpc3BvbsOtdmVsLiIKKworIzogZHNlbGVjdC9wa2dpbmZvLmNjOjEzMAorbXNnaWQgIkluc3RhbGxlZCBjb250cm9sIGZpbGUgaW5mb3JtYXRpb24iCittc2dzdHIgIkluZm9ybWHDp8OjbyBkbyBhcnF1aXZvIGRlIGNvbnRyb2xlIGluc3RhbGFkbyIKKworIzogZHNlbGVjdC9wa2dpbmZvLmNjOjE0NgorbXNnaWQgIkF2YWlsYWJsZSBjb250cm9sIGZpbGUgaW5mb3JtYXRpb24iCittc2dzdHIgIkluZm9ybWHDp8OjbyBkbyBhcnF1aXZvIGRlIGNvbnRyb2xlIGRpc3BvbsOtdmVsIgorCisjOiBkc2VsZWN0L3BrZ2xpc3QuY2M6NDE2Cittc2dpZCAiVGhlcmUgYXJlIG5vIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2xpc3QuY2M6NTA3Cittc2dpZCAiaW52YWxpZCBzZWFyY2ggb3B0aW9uIGdpdmVuIgorbXNnc3RyICJmb3JuZWNpZGEgb3DDp8OjbyBkZSBidXNjYSBpbnbDoWxpZGEiCisKKyM6IGRzZWxlY3QvcGtnbGlzdC5jYzo1MjEKK21zZ2lkICJlcnJvciBpbiByZWd1bGFyIGV4cHJlc3Npb24iCittc2dzdHIgImVycm8gbmEgZXhwcmVzc8OjbyByZWd1bGFyIgorCisjOiBkc2VsZWN0L3BrZ3N1Ymxpc3QuY2M6MTA3Cittc2dpZCAiIGRvZXMgbm90IGFwcGVhciB0byBiZSBhdmFpbGFibGVcbiIKK21zZ3N0ciAiIG7Do28gcGFyZWNlIGVzdGFyIGRpc3BvbsOtdmVsXG4iCisKKyM6IGRzZWxlY3QvcGtnc3VibGlzdC5jYzoxMjcKK21zZ2lkICIgb3IgIgorbXNnc3RyICIgb3UgIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo1NworbXNnaWQgIkFsbCIKK21zZ3N0ciAiVG9kb3MiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjc5Cittc2dpZCAiQWxsIHBhY2thZ2VzIgorbXNnc3RyICJUb2RvcyBvcyBwYWNvdGVzIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo4MworIywgYy1mb3JtYXQKK21zZ2lkICIlcyBwYWNrYWdlcyB3aXRob3V0IGEgc2VjdGlvbiIKK21zZ3N0ciAiUGFjb3RlcyAlcyBzZW0gc2XDp8OjbyIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcGFja2FnZXMgaW4gc2VjdGlvbiAlcyIKK21zZ3N0ciAiUGFjb3RlcyAlcyBuYSBzZcOnw6NvICVzIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo5MQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyAlcyBwYWNrYWdlcyIKK21zZ3N0ciAiUGFjb3RlcyAlcyAlcyIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgJXMgcGFja2FnZXMgd2l0aG91dCBhIHNlY3Rpb24iCittc2dzdHIgIlBhY290ZXMgJXMgJXMgc2VtIHNlw6fDo28iCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjk3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzICVzIHBhY2thZ2VzIGluIHNlY3Rpb24gJXMiCittc2dzdHIgIlBhY290ZXMgJXMgJXMgbmEgc2XDp8OjbyAlcyIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6MTE4CisjLCBjLWZvcm1hdAorbXNnaWQgIiUtKnMgJXMlcyVzOyAgJXMgKHdhczogJXMpLiAgJXMiCittc2dzdHIgIiUtKnMgJXMlcyVzOyAgJXMgKGVyYTogJXMpLiAgJXMiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI2MworbXNnaWQgIkVycm9yIgorbXNnc3RyICJFcnJvIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyNjcKK21zZ2lkICJJbnN0YWxsZWQ/IgorbXNnc3RyICJJbnN0YWxhZG8/IgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyNzEKK21zZ2lkICJPbGQgbWFyayIKK21zZ3N0ciAiTWFyY2EgYW50aWdhIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyNzUKK21zZ2lkICJNYXJrZWQgZm9yIgorbXNnc3RyICJNYXJjYWRvIHBhcmEiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI3OAorbXNnaWQgIkVJT00iCittc2dzdHIgIkVJT00iCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI4MAorbXNnaWQgIlNlY3Rpb24iCittc2dzdHIgIlNlw6fDo28iCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI4MQorbXNnaWQgIlByaW9yaXR5IgorbXNnc3RyICJQcmlvcmlkYWRlIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyODIKK21zZ2lkICJQYWNrYWdlIgorbXNnc3RyICJQYWNvdGUiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI4NgorbXNnaWQgIkluc3QudmVyIgorbXNnc3RyICJWZXIuaW5zdC4iCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI4OQorbXNnaWQgIkF2YWlsLnZlciIKK21zZ3N0ciAiVmVyLmRpc3AuIgorCisjfiBtc2dpZCAicmV0dXJuZWQgZXJyb3IgZXhpdCBzdGF0dXMgJWQuXG4iCisjfiBtc2dzdHIgInJldG9ybmFkbyBlc3RhZG8gZGUgc2HDrWRhIGRlIGVycm8gJWQuXG4iCisKKyN+IG1zZ2lkICJ3YXMgaW50ZXJydXB0ZWQuXG4iCisjfiBtc2dzdHIgImZvaSBpbnRlcnJvbXBpZG8uXG4iCisKKyN+IG1zZ2lkICJ3YXMgdGVybWluYXRlZCBieSBhIHNpZ25hbDogJXMuXG4iCisjfiBtc2dzdHIgImZvaSB0ZXJtaW5hZG8gcG9yIHVtIHNpbmFsOiAlcy5cbiIKKworI34gbXNnaWQgIihJdCBsZWZ0IGEgY29yZWR1bXAuKVxuIgorI34gbXNnc3RyICIoRGVpeG91IHVtIFwiY29yZWR1bXBcIikuXG4iCisKKyN+IG1zZ2lkICJmYWlsZWQgd2l0aCBhbiB1bmtub3duIHdhaXQgcmV0dXJuIGNvZGUgJWQuXG4iCisjfiBtc2dzdHIgImZhbGhvdSBjb20gdW0gY8OzZGlnbyBkZSByZXRvcm5vIGRlIGVzcGVyYSBkZXNjb25oZWNpZG8gJWQuXG4iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcnVuICUuMjUwcyBwcm9jZXNzIGAlLjI1MHMnIgorI34gbXNnc3RyICJpbXBvc3PDrXZlbCBleGVjdXRhciBvIHByb2Nlc3NvICUuMjUwcyAnJS4yNTBzJyIKKworI34gbXNnaWQgImZhaWxlZCBjb25maWciCisjfiBtc2dzdHIgImZhbGhhIG5hIGNvbmZpZ3VyYcOnw6NvIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHdhaXQgZm9yICUuMjUwcyIKKyN+IG1zZ3N0ciAiaW1wb3Nzw612ZWwgYWd1YXJkYXIgcG9yICUuMjUwcyIKKworI34gbXNnaWQgImdvdCB3cm9uZyBjaGlsZCdzIHN0YXR1cyAtIGFza2VkIGZvciAlbGQsIGdvdCAlbGQiCisjfiBtc2dzdHIgIm9idGl2ZSBlc3RhZG8gZXJyYWRvIGRvIGZpbGhvIC0gcGVkaSBwb3IgJWxkLCByZWNlYmkgJWxkIgorCisjfiBtc2dpZCAiUmVjb21tZW5kZWQiCisjfiBtc2dzdHIgIlJlY29tZW5kYWRvcyIKKworI34gbXNnaWQgIkNvbnRyaWIiCisjfiBtc2dzdHIgIkNvbnRyaWIiCisKKyN+IG1zZ2lkICJSZWMiCisjfiBtc2dzdHIgIlJlYyIKKworI34gbXNnaWQgIkN0YiIKKyN+IG1zZ3N0ciAiQ3RiIgorCisjfiBtc2dpZCAiIgorI34gImJhc2VsaXN0OjpzdGFydGRpc3BsYXkoKSBkb25lIC4uLlxuIgorI34gIlxuIgorI34gIiB4bWF4PSVkLCB5bWF4PSVkO1xuIgorI34gIlxuIgorI34gIiB0aXRsZV9oZWlnaHQ9JWQsIGNvbGhlYWRzX2hlaWdodD0lZCwgbGlzdF9oZWlnaHQ9JWQ7XG4iCisjfiAiIHRoaXNzdGF0ZV9oZWlnaHQ9JWQsIGluZm9faGVpZ2h0PSVkLCB3aGF0aW5mb19oZWlnaHQ9JWQ7XG4iCisjfiAiXG4iCisjfiAiIGNvbGhlYWRzX3Jvdz0lZCwgdGhpc3N0YXRlX3Jvdz0lZCwgaW5mb19yb3c9JWQ7XG4iCisjfiAiIHdoYXRpbmZvX3Jvdz0lZCwgbGlzdF9yb3c9JWQ7XG4iCisjfiAiXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJiYXNlbGlzdDo6c3RhcnRkaXNwbGF5KCkgZmVpdG8gLi4uXG4iCisjfiAiXG4iCisjfiAiIHhtYXg9JWQsIHltYXg9JWQ7XG4iCisjfiAiXG4iCisjfiAiIHRpdGxlX2hlaWdodD0lZCwgY29saGVhZHNfaGVpZ2h0PSVkLCBsaXN0X2hlaWdodD0lZDtcbiIKKyN+ICIgdGhpc3N0YXRlX2hlaWdodD0lZCwgaW5mb19oZWlnaHQ9JWQsIHdoYXRpbmZvX2hlaWdodD0lZDtcbiIKKyN+ICJcbiIKKyN+ICIgY29saGVhZHNfcm93PSVkLCB0aGlzc3RhdGVfcm93PSVkLCBpbmZvX3Jvdz0lZDtcbiIKKyN+ICIgd2hhdGluZm9fcm93PSVkLCBsaXN0X3Jvdz0lZDtcbiIKKyN+ICJcbiIKKworI34gbXNnaWQgIltub25lXSIKKyN+IG1zZ3N0ciAiW25lbmh1bV0iCisKKyMgQWxndcOpbSB0ZW0gYWxndW1hIHN1Z2VzdMOjbyBwYXJhIHVtYSBib2EgdHJhZHXDp8OjbyBkZQorIyB1bi1jYXRjaGluZyBuZXN0ZSBjb250ZXh0byA/IC0tIEFuZHJlCisjfiBtc2dpZCAiZXJyb3IgdW4tY2F0Y2hpbmcgc2lnbmFsICVkOiAlc1xuIgorI34gbXNnc3RyICJlcnJvIG7Do28gcGVnYW5kbyBzaW5hbCAlZDogJXNcbiIKKworI34gbXNnaWQgInVuYWJsZSB0byBpZ25vcmUgc2lnbmFsICVkIGJlZm9yZSBydW5uaW5nICUuMjUwcyIKKyN+IG1zZ3N0ciAiaW1wb3Nzw612ZWwgaWdub3JhciBzaW5hbCAlZCBhbnRlcyBkZSBleGVjdXRhciAlLjI1MHMiCisKKyN+IG1zZ2lkICIobm8gY2xpZW50ZGF0YSkiCisjfiBtc2dzdHIgIihzZW0gZGFkb3MgZG8gY2xpZW50ZSkiCisKKyN+IG1zZ2lkICI8bnVsbD4iCisjfiBtc2dzdHIgIjxudWxvPiIKKworI34gbXNnaWQgImludGVycmVsYXRpb25zaGlwcyBhZmZlY3RpbmcgIgorI34gbXNnc3RyICJpbnRlcnJlbGHDp8O1ZXMgYWZldGFuZG8gIgorCisjfiBtc2dpZCAiZGVzY3JpcHRpb24gb2YgIgorI34gbXNnc3RyICJkZXNjcmnDp8OjbyBkZSAiCisKKyN+IG1zZ2lkICJkZXNjcmlwdGlvbiIKKyN+IG1zZ3N0ciAiZGVzY3Jpw6fDo28iCisKKyN+IG1zZ2lkICJjdXJyZW50bHkgaW5zdGFsbGVkIGNvbnRyb2wgaW5mbyIKKyN+IG1zZ3N0ciAiaW5mb3JtYcOnw6NvIGRlIGNvbnRyb2xlIGF0dWFsbWVudGUgaW5zdGFsYWRhIgorCisjfiBtc2dpZCAiYXZhaWxhYmxlIHZlcnNpb24gb2YgY29udHJvbCBpbmZvIGZvciAiCisjfiBtc2dzdHIgInZlcnPDo28gZGlzcG9uw612ZWwgZGEgaW5mb3JtYcOnw6NvIGRlIGNvbnRyb2xlIHBhcmEgIgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL3F1b3Quc2VkIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL3F1b3Quc2VkCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjAxMjJjNDYKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vcXVvdC5zZWQKQEAgLTAsMCArMSw2IEBACitzLyJcKFteIl0qXCkiL+KAnFwx4oCdL2cKK3MvYFwoW15gJ10qXCknL+KAmFwx4oCZL2cKK3MvICdcKFteYCddKlwpJyAvIOKAmFwx4oCZIC9nCitzLyAnXChbXmAnXSpcKSckLyDigJhcMeKAmS9nCitzL14nXChbXmAnXSpcKScgL+KAmFwx4oCZIC9nCitzL+KAnOKAnS8iIi9nCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vcmVtb3ZlLXBvdGNkYXRlLnNpbiBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9yZW1vdmUtcG90Y2RhdGUuc2luCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjI0MzZjNDkKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vcmVtb3ZlLXBvdGNkYXRlLnNpbgpAQCAtMCwwICsxLDE5IEBACisjIFNlZCBzY3JpcHQgdGhhdCByZW1vdmUgdGhlIFBPVC1DcmVhdGlvbi1EYXRlIGxpbmUgaW4gdGhlIGhlYWRlciBlbnRyeQorIyBmcm9tIGEgUE9UIGZpbGUuCisjCisjIFRoZSBkaXN0aW5jdGlvbiBiZXR3ZWVuIHRoZSBmaXJzdCBhbmQgdGhlIGZvbGxvd2luZyBvY2N1cnJlbmNlcyBvZiB0aGUKKyMgcGF0dGVybiBpcyBhY2hpZXZlZCBieSBsb29raW5nIGF0IHRoZSBob2xkIHNwYWNlLgorL14iUE9ULUNyZWF0aW9uLURhdGU6IC4qIiQveworeAorIyBUZXN0IGlmIHRoZSBob2xkIHNwYWNlIGlzIGVtcHR5Lgorcy9QL1AvCit0YQorIyBZZXMgaXQgd2FzIGVtcHR5LiBGaXJzdCBvY2N1cnJlbmNlLiBSZW1vdmUgdGhlIGxpbmUuCitnCitkCitiYgorOmEKKyMgVGhlIGhvbGQgc3BhY2Ugd2FzIG5vbmVtcHR5LiBGb2xsb3dpbmcgb2NjdXJyZW5jZXMuIERvIG5vdGhpbmcuCit4Cis6YgorfQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL3JvLmdtbyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9yby5nbW8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZmU3ZWYxZgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9yby5nbW8KQmluYXJ5IGZpbGVzIGRpZmZlcgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL3JvLnBvIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL3JvLnBvCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjczMmU1Y2IKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vcm8ucG8KQEAgLTAsMCArMSwxNzY0IEBACisjIHRyYW5zbGF0aW9uIG9mIHJvLnBvIHRvIFJvbWFuaWFuCisjIFJvbWFuaWFuIHRyYW5zbGF0aW9ucyBmb3IgdGhlIGRwa2cgcGFja2FnZS4KKyMgVGhpcyBmaWxlIGlzIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBzYW1lIGxpY2Vuc2UgYXMgdGhlIGRwa2cgcGFja2FnZS4KKyMKKyMgRXhwbGljYcibaWkgbGVnYXRlIGRlIG1vZHVsIGRlIHRyYWR1Y2VyZToKKyMgLSBsYSBtZXNhamVsZSBlbWlzZSDDrm4gdXJtYSBhY8ibaXVuaWxvciBwcm9ncmFtdWx1aSBzZSBmb2xvc2XImXRlIGZvcm1hIGltcGVyc29uYWzEgywKKyMgICBmb2xvc2l0xIMgyJlpIMOubiB2ZXJzaXVuZWEgw65uIGVuZ2xlesSDCisjIC0gc2UgcMSDc3RyZWF6xIMgZGVudW1pcmlsZSDDrm4gZW5nbGV6xIMgcGVudHJ1OgorIyAgIC0gbnVtZWxlIGZ1bmPIm2lsb3IgyJlpIGEgYXJndW1lbnRlbG9yIGFjZXN0b3JhCisjICAgLSBudW1lbGUgyJlpIG9wyJtpdW5pbGUgcHJvZ3JhbWVsb3IKKyMKKyMgQ29weXJpZ2h0IChDKSAyMDA1IFRIRSBQQUNLQUdFJ1MgQ09QWVJJR0hUIEhPTERFUgorIworIyBSdciZZcibIFplbm8gPHJ6ZW5vQGN3YXp5LmNvLnVrPiwgMjAwNS4KKyMgRWRkeSBQZXRyaciZb3IgPGVkZHkucGV0cmlzb3JAZ21haWwuY29tPiwgMjAwNSwgMjAwNiwgMjAwNywgMjAwOC4KKyMgU29yaW4gQmF0YXJpdWMgPHNvcmluQGJvbmJvbi5uZXQ+LCAyMDA1LgorbXNnaWQgIiIKK21zZ3N0ciAiIgorIlByb2plY3QtSWQtVmVyc2lvbjogcm9cbiIKKyJSZXBvcnQtTXNnaWQtQnVncy1UbzogZGViaWFuLWRwa2dAbGlzdHMuZGViaWFuLm9yZ1xuIgorIlBPVC1DcmVhdGlvbi1EYXRlOiAyMDExLTEwLTE0IDA3OjExKzAyMDBcbiIKKyJQTy1SZXZpc2lvbi1EYXRlOiAyMDA4LTA2LTI4IDE5OjExKzAzMDBcbiIKKyJMYXN0LVRyYW5zbGF0b3I6IEVkZHkgUGV0cmnImW9yIDxlZGR5LnBldHJpc29yQGdtYWlsLmNvbT5cbiIKKyJMYW5ndWFnZS1UZWFtOiBSb21hbmlhbiA8ZGViaWFuLWwxMG4tcm9tYW5pYW5AbGlzdHMuZGViaWFuLm9yZz5cbiIKKyJMYW5ndWFnZTogcm9cbiIKKyJNSU1FLVZlcnNpb246IDEuMFxuIgorIkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD1VVEYtOFxuIgorIkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXRcbiIKKyJQbHVyYWwtRm9ybXM6ICBucGx1cmFscz0zOyBwbHVyYWw9bj09MSA/IDAgOiAobj09MCB8fCAobiUxMDAgPiAwICYmIG4lMTAwIDwgIgorIjIwKSkgPyAxIDogMjtcbiIKKyJYLUdlbmVyYXRvcjogS0JhYmVsIDEuMTEuNFxuIgorCisjICBzcGHIm2lpbGUgc3VudCBuZWNlc2FyZSEhCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjEyNQorbXNnaWQgIlNlYXJjaCBmb3IgPyAiCittc2dzdHIgIkNlIGPEg3V0YcibaSA/ICIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxNDcKK21zZ2lkICJFcnJvcjogIgorbXNnc3RyICJFcm9hcmU6ICIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxNzgKK21zZ2lkICJIZWxwOiAiCittc2dzdHIgIkFqdXRvcjogIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE4NAorbXNnaWQgIlByZXNzID8gZm9yIGhlbHAgbWVudSwgLiBmb3IgbmV4dCB0b3BpYywgPHNwYWNlPiB0byBleGl0IGhlbHAuIgorbXNnc3RyICIiCisiQXDEg3NhyJtpID8gcGVudHJ1IG1lbml1bCBhanV0b3IsIC4gcGVudHJ1IHVybcSDdG9ydWwgc3ViaWVjdCwgPHNwYcibaXU+IHBlbnRydSAiCisiaWXImWlyZS4iCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MTkxCittc2dpZCAiSGVscCBpbmZvcm1hdGlvbiBpcyBhdmFpbGFibGUgdW5kZXIgdGhlIGZvbGxvd2luZyB0b3BpY3M6IgorbXNnc3RyICJJbmZvcm1hyJtpaSBhanV0xIN0b2FyZSBzdW50IGRpc3BvbmliaWxlIHBlbnRydSB1cm3Eg3RvYXJlbGUgc3ViaWVjdGU6IgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE5OQorbXNnaWQgIiIKKyJQcmVzcyBhIGtleSBmcm9tIHRoZSBsaXN0IGFib3ZlLCA8c3BhY2U+IG9yIGBxJyB0byBleGl0IGhlbHAsXG4iCisiICBvciBgLicgKGZ1bGwgc3RvcCkgdG8gcmVhZCBlYWNoIGhlbHAgcGFnZSBpbiB0dXJuLiAiCittc2dzdHIgIiIKKyJBcMSDc2HIm2kgbyB0YXN0xIMgZGluIGxpc3RhIGNhcmUgdXJtZWF6xIMsIDxzcGHIm2l1PiBzYXUg4oCeceKAnSBwZW50cnUgaWXImWlyZSBkaW4gIgorImFqdXRvcixcbiIKKyIgIHNhdSAg4oCeLuKAnSAob3ByaXJlIHRvdGFsxIMpIHBlbnRydSBhIGNpdGkgZmllY2FyZSBwYWdpbsSDIGRlIGFqdXRvci4gIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjIwNQorbXNnaWQgImVycm9yIHJlYWRpbmcga2V5Ym9hcmQgaW4gaGVscCIKK21zZ3N0ciAiZXJvYXJlIGNpdGlyZSB0YXN0YXR1csSDIMOubiBhanV0b3IiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6NTcKK21zZ2lkICJpb2N0bChUSU9DR1dJTlNaKSBmYWlsZWQiCittc2dzdHIgImXImWVjIGlvY3RsKFRJT0NHV0lOU1opIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjYwCittc2dpZCAiZG91cGRhdGUgaW4gU0lHV0lOQ0ggaGFuZGxlciBmYWlsZWQiCittc2dzdHIgImXImWVjIGRvdXBkYXRlIMOubiBkZXNjcmlwdG9ydWwgU0lHV0lOQ0giCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6NjcKK21zZ2lkICJmYWlsZWQgdG8gcmVzdG9yZSBvbGQgU0lHV0lOQ0ggc2lnYWN0IgorbXNnc3RyICJlyJllYyBsYSByZXN0YXVyYXJlYSB2ZWNoaXVsdWkgc2lnYWN0IHBlbnRydSBTSUdXSU5DSCIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo2OQorbXNnaWQgImZhaWxlZCB0byByZXN0b3JlIG9sZCBzaWduYWwgbWFzayIKK21zZ3N0ciAiZciZZWMgbGEgcmVzdGF1cmFyZWEgdmVjaGlpIG3Eg8iZdGkgZGUgc2VtbmFsIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjc5Cittc2dpZCAiZmFpbGVkIHRvIGdldCBvbGQgc2lnbmFsIG1hc2siCittc2dzdHIgImXImWVjIGxhIHByZWx1YXJlYSB2ZWNoaWkgbcSDyJl0aSBkZSBzZW1uYWwiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6ODAKK21zZ2lkICJmYWlsZWQgdG8gZ2V0IG9sZCBTSUdXSU5DSCBzaWdhY3QiCittc2dzdHIgImXImWVjIGxhIHByZWx1YXJlYSB2ZWNoaXVsdWkgc2lnYWN0IHBlbnRydSBTSUdXSU5DSCIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo4NAorbXNnaWQgImZhaWxlZCB0byBibG9jayBTSUdXSU5DSCIKK21zZ3N0ciAiZciZZWMgbGEgYmxvY2FyZWEgbHVpIFNJR1dJTkNIIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjg5Cittc2dpZCAiZmFpbGVkIHRvIHNldCBuZXcgU0lHV0lOQ0ggc2lnYWN0IgorbXNnc3RyICJlyJllYyBsYSBpbmnIm2lhbGl6YXJlYSBub3VsdWkgc2lnYWN0IHBlbnRydSBTSUdXSU5DSCIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxMjYKK21zZ2lkICJmYWlsZWQgdG8gYWxsb2NhdGUgY29sb3VyIHBhaXIiCittc2dzdHIgImXImWVjIGxhIGFsb2NhcmVhIHBlcmVjaGlpIGRlIGN1bG9yaSIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxNjcKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHRpdGxlIHdpbmRvdyIKK21zZ3N0ciAiZciZZWMgbGEgY3JlYXJlYSB0aXRsdWx1aSBmZXJlc3RyZWkiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTcxCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSB3aGF0aW5mbyB3aW5kb3ciCittc2dzdHIgImXImWVjIGxhIGNyZWFyZWEgZmVyZXN0cmVpIGRlIGluZm9ybWHIm2lpIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE3NQorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgYmFzZWxpc3QgcGFkIgorbXNnc3RyICJlyJllYyBsYSBjcmVhcmVhIHpvbmVpIGxpc3RlaSBkZSBiYXrEgyIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxNzgKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGhlYWRpbmcgcGFkIgorbXNnc3RyICJlyJllYyBsYSBjcmVhcmVhIHpvbmVpIHBlbnRydSB0aXRsdWwiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTgyCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSB0aGlzc3RhdGUgcGFkIgorbXNnc3RyICJlyJllYyBsYSBjcmVhcmVhIHpvbmVpIGRlc3ByZSBzdGFyZWEgY3VyZW50xIMiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTg2Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBpbmZvIHBhZCIKK21zZ3N0ciAiZciZZWMgbGEgY3JlYXJlYSB6b25laSBkZSBpbmZvcm1hcmUiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTkxCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBxdWVyeSB3aW5kb3ciCittc2dzdHIgImXImWVjIGxhIGNyZWFyZWEgZmVyZXN0cmVpIGRlIGludGVyb2dhcmUiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MjU1Cittc2dpZCAiS2V5YmluZGluZ3MiCittc2dzdHIgIkNvbWJpbmHIm2lpIGRlIHRhc3RlIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjMwMworIywgYy1mb3JtYXQKK21zZ2lkICIgIC0tICVkJSUsIHByZXNzICIKK21zZ3N0ciAiICAtLSAlZCUlLCBhcMSDc2HIm2kgIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjMwNgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBmb3IgbW9yZSIKK21zZ3N0ciAiJXMgcGVudHJ1IG1haSBtdWx0IgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjMxMAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyB0byBnbyBiYWNrIgorbXNnc3RyICIlcyBwZW50cnUgYSBtZXJnZSDDrm5hcG9pIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjc4Cittc2dpZCAiW25vdCBib3VuZF0iCittc2dzdHIgIltuZWFzaWduYXTEg10iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiW3VuazogJWRdIgorbXNnc3RyICJbbmVjdW5vc2N1dDogJWRdIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjEzOQorbXNnaWQgIlNjcm9sbCBvbndhcmRzIHRocm91Z2ggaGVscC9pbmZvcm1hdGlvbiIKK21zZ3N0ciAiRGVydWxhcmUgw65uYWludGUgcHJpbiBhanV0b3IvaW5mb3JtYcibaWkiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQwCittc2dpZCAiU2Nyb2xsIGJhY2t3YXJkcyB0aHJvdWdoIGhlbHAvaW5mb3JtYXRpb24iCittc2dzdHIgIkRlcnVsYXJlIMOubmFwb2kgcHJpbiBhanV0b3IvaW5mb3JtYcibaWkiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQxCittc2dpZCAiTW92ZSB1cCIKK21zZ3N0ciAiRGVwbGFzYXJlIMOubiBzdXMiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQyCittc2dpZCAiTW92ZSBkb3duIgorbXNnc3RyICJEZXBsYXNhcmUgw65uIGpvcyIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDMKK21zZ2lkICJHbyB0byB0b3Agb2YgbGlzdCIKK21zZ3N0ciAiTWVyZ2kgbGEgw65uY2VwdXR1bCBsaXN0ZWkiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ0Cittc2dpZCAiR28gdG8gZW5kIG9mIGxpc3QiCittc2dzdHIgIk1lcmdpIGxhIHNmw6JyyJlpdHVsIGxpc3RlaSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDUKK21zZ2lkICJSZXF1ZXN0IGhlbHAgKGN5Y2xlIHRocm91Z2ggaGVscCBzY3JlZW5zKSIKK21zZ3N0ciAiQ2VyZXJlIGRlIGFqdXRvciAoY2ljbHUgcHJpbnRyZSBlY3JhbmVsZSBkZSBhanV0b3IpIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0NgorbXNnaWQgIkN5Y2xlIHRocm91Z2ggaW5mb3JtYXRpb24gZGlzcGxheXMiCittc2dzdHIgIkNpY2x1IHByaW50cmUgaW5mb3JtYcibaWlsZSBhZmnImWF0ZSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDcKK21zZ2lkICJSZWRyYXcgZGlzcGxheSIKK21zZ3N0ciAiUmVkZXNlbmFyZSBlY3JhbiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDgKK21zZ2lkICJTY3JvbGwgb253YXJkcyB0aHJvdWdoIGxpc3QgYnkgMSBsaW5lIgorbXNnc3RyICJEZXJ1bGFyZSDDrm5haW50ZSBwcmluIGxpc3TEgyBjdSAxIHLDom5kIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0OQorbXNnaWQgIlNjcm9sbCBiYWNrd2FyZHMgdGhyb3VnaCBsaXN0IGJ5IDEgbGluZSIKK21zZ3N0ciAiRGVydWxhcmUgw65uYXBvaSBwcmluIGxpc3TEgyBjdSAxIHLDom5kIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1MAorbXNnaWQgIlNjcm9sbCBvbndhcmRzIHRocm91Z2ggaGVscC9pbmZvcm1hdGlvbiBieSAxIGxpbmUiCittc2dzdHIgIkRlcnVsYXJlIMOubmFpbnRlIHByaW4gYWp1dG9yL2luZm9ybWHIm2lpIGN1IDEgcsOibmQiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTUxCittc2dpZCAiU2Nyb2xsIGJhY2t3YXJkcyB0aHJvdWdoIGhlbHAvaW5mb3JtYXRpb24gYnkgMSBsaW5lIgorbXNnc3RyICJEZXJ1bGFyZSDDrm5hcG9pIHByaW4gYWp1dG9yL2luZm9ybWHIm2lpIGN1IDEgcsOibmQiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTUyCittc2dpZCAiU2Nyb2xsIG9ud2FyZHMgdGhyb3VnaCBsaXN0IgorbXNnc3RyICJEZXJ1bGFyZSDDrm5haW50ZSBwcmluIGxpc3TEgyIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTMKK21zZ2lkICJTY3JvbGwgYmFja3dhcmRzIHRocm91Z2ggbGlzdCIKK21zZ3N0ciAiRGVydWxhcmUgw65uYXBvaSBwcmluIGxpc3TEgyIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTYKK21zZ2lkICJNYXJrIHBhY2thZ2UocykgZm9yIGluc3RhbGxhdGlvbiIKK21zZ3N0ciAiTWFyY2hlYXrEgyBwYWNoZXQodWwvZWxlKSBwZW50cnUgaW5zdGFsYXJlIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1NworbXNnaWQgIk1hcmsgcGFja2FnZShzKSBmb3IgZGVpbnN0YWxsYXRpb24iCittc2dzdHIgIk1hcmNoZWF6xIMgcGFjaGV0KHVsL2VsZSkgcGVudHJ1IGRlemluc3RhbGFyZSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTgKK21zZ2lkICJNYXJrIHBhY2thZ2UocykgZm9yIGRlaW5zdGFsbCBhbmQgcHVyZ2UiCittc2dzdHIgIk1hcmNoZWF6xIMgcGFjaGV0KHVsL2VsZSkgcGVudHJ1IGRlemluc3RhbGFyZSDImWkgY3VyxIPIm2FyZSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTkKK21zZ2lkICJNYWtlIGhpZ2hsaWdodCBtb3JlIHNwZWNpZmljIgorbXNnc3RyICJFdmlkZW7Im2llcmVhIGVzdGUgbWFpIHNwZWNpZmljxIMiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTYwCittc2dpZCAiTWFrZSBoaWdobGlnaHQgbGVzcyBzcGVjaWZpYyIKK21zZ3N0ciAiRXZpZGVuyJtpZXJlYSBlc3RlIG1haSBnZW5lcmljxIMiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTYxCittc2dpZCAiU2VhcmNoIGZvciBhIHBhY2thZ2Ugd2hvc2UgbmFtZSBjb250YWlucyBhIHN0cmluZyIKK21zZ3N0ciAiQ2F1dMSDIHBhY2hldHVsIGFsIGPEg3J1aSBudW1lIGNvbsibaW5lIHVuIMiZaXIgZGUgY2FyYWN0ZXJlIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2MgorbXNnaWQgIlJlcGVhdCBsYXN0IHNlYXJjaC4iCittc2dzdHIgIlJlcGV0xIMgdWx0aW1hIGPEg3V0YXJlLiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjMKK21zZ2lkICJTd2FwIHNvcnQgb3JkZXIgcHJpb3JpdHkvc2VjdGlvbiIKK21zZ3N0ciAiQ29tdXTEgyBvcmRpbmVhIGRlIHNvcnRhcmUgcHJpb3JpdGF0ZS9zZWPIm2l1bmUiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY0Cittc2dpZCAiUXVpdCwgY29uZmlybWluZywgYW5kIGNoZWNraW5nIGRlcGVuZGVuY2llcyIKK21zZ3N0ciAiSWXImWlyZSwgY29uZmlybWFyZSwgyJlpIHZlcmlmaWNhcmUgZGVwZW5kZW7Im2UiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY1Cittc2dpZCAiUXVpdCwgY29uZmlybWluZyB3aXRob3V0IGNoZWNrIgorbXNnc3RyICJUZXJtaW5hcmUsIGNvbmZpcm1hcmUgZsSDcsSDIHZlcmlmaWNhcmUiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY2Cittc2dpZCAiUXVpdCwgcmVqZWN0aW5nIGNvbmZsaWN0L2RlcGVuZGVuY3kgc3VnZ2VzdGlvbnMiCittc2dzdHIgIlRlcm1pbmFyZSwgc2UgcmVmdXrEgyBzdWdlc3RpaWxlIGxlZ2F0ZSBkZSBjb25mbGljdGUvZGVwZW5kZW7Im2UiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY3Cittc2dpZCAiQWJvcnQgLSBxdWl0IHdpdGhvdXQgbWFraW5nIGNoYW5nZXMiCittc2dzdHIgIkFiYW5kb24gLSB0ZXJtaW5hcmUgZsSDcsSDIGEgZmFjZSBzY2hpbWLEg3JpIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2OAorbXNnaWQgIlJldmVydCB0byBvbGQgc3RhdGUgZm9yIGFsbCBwYWNrYWdlcyIKK21zZ3N0ciAiUmV2ZW5pcmUgbGEgdmVjaGlsZSBzdMSDcmkgcGVudHJ1IHRvYXRlIHBhY2hldGVsZSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjkKK21zZ2lkICJSZXZlcnQgdG8gc3VnZ2VzdGVkIHN0YXRlIGZvciBhbGwgcGFja2FnZXMiCittc2dzdHIgIlJldmVuaXJlIGxhIHN0xINyaWxlIHN1Z2VyYXRlIHBlbnRydSB0b2F0ZSBwYWNoZXRlbGUiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTcwCittc2dpZCAiUmV2ZXJ0IHRvIGRpcmVjdGx5IHJlcXVlc3RlZCBzdGF0ZSBmb3IgYWxsIHBhY2thZ2VzIgorbXNnc3RyICJSZXZlbmlyZSBkaXJlY3QgbGEgc3TEg3JpbGUgY2VydXRlIHBlbnRydSB0b2F0ZSBwYWNoZXRlbGUiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTcxCittc2dpZCAiUmV2ZXJ0IHRvIGN1cnJlbnRseSBpbnN0YWxsZWQgc3RhdGUgZm9yIGFsbCBwYWNrYWdlcyIKK21zZ3N0ciAiUmV2ZW5pcmUgbGEgc3RhcmVhIGluc3RhbGF0xIMgYWN1bSBwZW50cnUgdG9hdGUgcGFjaGV0ZWxlIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE3NAorbXNnaWQgIlNlbGVjdCBjdXJyZW50bHktaGlnaGxpZ2h0ZWQgYWNjZXNzIG1ldGhvZCIKK21zZ3N0ciAiU2VsY3RlYXrEgyBtZXRvZGEgY2FyZSBlc3RlIGV2aWRlbsibaWF0xIMgYWN1bSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNzUKK21zZ2lkICJRdWl0IHdpdGhvdXQgY2hhbmdpbmcgc2VsZWN0ZWQgYWNjZXNzIG1ldGhvZCIKK21zZ3N0ciAiQWJhbmRvbmVhesSDIGbEg3LEgyBzY2hpbWJhcmVhIG1ldG9kZWkgZGUgYWNjZXMgc2VsZWN0YXRlIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjI5Cittc2dpZCAiS2V5c3Ryb2tlcyIKK21zZ3N0ciAiQ29tYmluYcibaWkgdGFzdGUiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MjkKK21zZ2lkICIiCisiTW90aW9uIGtleXM6IE5leHQvUHJldmlvdXMsIFRvcC9FbmQsIFVwL0Rvd24sIEJhY2t3YXJkcy9Gb3J3YXJkczpcbiIKKyIgIGosIERvd24tYXJyb3cgICAgICAgICBrLCBVcC1hcnJvdyAgICAgICAgICAgICBtb3ZlIGhpZ2hsaWdodFxuIgorIiAgTiwgUGFnZS1kb3duLCBTcGFjZSAgIFAsIFBhZ2UtdXAsIEJhY2tzcGFjZSAgIHNjcm9sbCBsaXN0IGJ5IDEgcGFnZVxuIgorIiAgXm4gICAgICAgICAgICAgICAgICAgIF5wICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBsaXN0IGJ5IDEgbGluZVxuIgorIiAgdCwgSG9tZSAgICAgICAgICAgICAgIGUsIEVuZCAgICAgICAgICAgICAgICAgIGp1bXAgdG8gdG9wL2VuZCBvZiBsaXN0XG4iCisiICB1ICAgICAgICAgICAgICAgICAgICAgZCAgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGluZm8gYnkgMSBwYWdlXG4iCisiICBedSAgICAgICAgICAgICAgICAgICAgXmQgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGluZm8gYnkgMSBsaW5lXG4iCisiICBCLCBMZWZ0LWFycm93ICAgICAgICAgRiwgUmlnaHQtYXJyb3cgICAgICAgICAgcGFuIGRpc3BsYXkgYnkgMS8zIHNjcmVlblxuIgorIiAgXmIgICAgICAgICAgICAgICAgICAgIF5mICAgICAgICAgICAgICAgICAgICAgIHBhbiBkaXNwbGF5IGJ5IDEgY2hhcmFjdGVyXG4iCisiXG4iCisiTWFyayBwYWNrYWdlcyBmb3IgbGF0ZXIgcHJvY2Vzc2luZzpcbiIKKyIgKywgSW5zZXJ0ICBpbnN0YWxsIG9yIHVwZ3JhZGUgICAgICA9LCBIICBob2xkIGluIHByZXNlbnQgc3RhdGVcbiIKKyIgLSwgRGVsZXRlICByZW1vdmUgICAgICAgICAgICAgICAgICA6LCBHICB1bmhvbGQ6IHVwZ3JhZGUgb3IgbGVhdmUgIgorInVuaW5zdGFsbGVkXG4iCisiIF8gICAgICAgICAgcmVtb3ZlICYgcHVyZ2UgY29uZmlnXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTWlzY2VsbGFuZW91czpcbiIKKyJRdWl0LCBleGl0LCBvdmVyd3JpdGUgKG5vdGUgY2FwaXRhbHMhKTogICAgICAgPywgRjEgcmVxdWVzdCBoZWxwIChhbHNvICIKKyJIZWxwKVxuIgorIiBSZXR1cm4gIENvbmZpcm0sIHF1aXQgKGNoZWNrIGRlcGVuZGVuY2llcykgICBpLCBJICB0b2dnbGUvY3ljbGUgaW5mbyAiCisiZGlzcGxheXNcbiIKKyIgICBRICAgICBDb25maXJtLCBxdWl0IChvdmVycmlkZSBkZXAucykgICAgICAgbywgTyAgY3ljbGUgdGhyb3VnaCBzb3J0ICIKKyJvcHRpb25zXG4iCisiIFgsIEVzYyAgZVhpdCwgYWJhbmRvbmluZyBhbnkgY2hhbmdlcyBtYWRlICAgIHYsIFYgIGNoYW5nZSBzdGF0dXMgZGlzcGxheSAiCisib3B0c1xuIgorIiAgIFIgICAgIFJldmVydCB0byBzdGF0ZSBiZWZvcmUgdGhpcyBsaXN0ICAgICAgXmwgICByZWRyYXcgZGlzcGxheVxuIgorIiAgIFUgICAgIHNldCBhbGwgdG8gc1VnZ2VzdGVkIHN0YXRlICAgICAgICAgICAgIC8gICBzZWFyY2ggKFJldHVybiB0byAiCisiY2FuY2VsKVxuIgorIiAgIEQgICAgIHNldCBhbGwgdG8gRGlyZWN0bHkgcmVxdWVzdGVkIHN0YXRlICBuLCBcXCAgcmVwZWF0IGxhc3Qgc2VhcmNoXG4iCittc2dzdHIgIiIKKyJUYXN0ZSBkZSBkZXBsYXNhcmU6IFVybcSDdG9yL0FudGVyaW9yLCBDYXAvQ29hZMSDLCBTdXMvSm9zLCDDjm5haW50ZS/Djm5hcG9pOlxuIgorIiAgaiwgU8SDZ2VhdMSDLWpvcyAgICAgICAgaywgU8SDZ2VhdMSDLXN1cyAgICAgICAgICBtdXTEgyBjdXJzb3J1bFxuIgorIiAgTiwgUGFnZS1kb3duLCBTcGFjZSAgIFAsIFBhZ2UtdXAsIEJhY2tzcGFjZSAgIGRlcnVsZWF6xIMgbGlzdGEgY3UgMSBwYWdpbsSDXG4iCisiICBebiAgICAgICAgICAgICAgICAgICAgXnAgICAgICAgICAgICAgICAgICAgICAgZGVydWxlYXrEgyBsaXN0YSBjdSAxIGxpbmllXG4iCisiICB0LCBIb21lICAgICAgICAgICAgICAgZSwgRW5kICAgICAgICAgICAgICAgICAgc2FyaSBsYSBjYXB1bC9jb2FkYSBsaXN0ZWlcbiIKKyIgIHUgICAgICAgICAgICAgICAgICAgICBkICAgICAgICAgICAgICAgICAgICAgICBkZXJ1bGVhesSDIGluZm8gY3UgMSBwYWdpbsSDXG4iCisiICBedSAgICAgICAgICAgICAgICAgICAgXmQgICAgICAgICAgICAgICAgICAgICAgZGVydWxlYXrEgyBpbmZvIGN1IDEgbGluaWVcbiIKKyIgIEIsIFPEg2dlYXTEgy1zdMOibmdhICAgICBGLCBTxINnZWF0xIMtZHJlYXB0YSAgICAgIG11dMSDIGFmaciZYWp1bCBjdSAxLzMgZGUgIgorImVjcmFuXG4iCisiICBeYiAgICAgICAgICAgICAgICAgICAgXmYgICAgICAgICAgICAgICAgICAgICAgbXV0xIMgYWZpyJlhanVsIGN1IDEgY2FyYWN0ZXJcbiIKKyJcbiIKKyJNYXJjaGVhesSDIHBhY2hldGVsZSBwZW50cnUgcHJlbHVjcmFyZSB1bHRlcmlvYXLEgzpcbiIKKyIgKywgSW5zZXJ0ICBpbnN0YWxhcmUvYWN0dWFsaXphcmUgICAgID0sIEggIHDEg3N0cmFyZSDDrm4gc3RhcmVhIHByZXplbnTEg1xuIgorIiAtLCBEZWxldGUgIMiZdGVyZ2UgICAgICAgICAgICAgICAgICAgIDosIEcgIGVsaWJlcmFyZTogYWN0dWFsaXphcmUgc2F1ICIKKyJwxINzdHJhcmUgbmVpbnN0YWxhdFxuIgorIiBfICAgICAgICAgIGRlemluc3RhbGFyZSDImWkgyJl0ZXJnZXJlIGNvbmZpZ3VyYcibaWVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIERpdmVyc2U6XG4iCisiVGVybWluxIMsIGllyJlpLCByZXNjcmllcmUgKGxpdGVyZSBtYXJpL21pY2khKTogICAgICA/LCBGMSBjZXJlcmUgZGUgYWp1dG9yICIKKyIobGEgZmVsIMiZaSBBanV0b3IpXG4iCisiIFJldHVybiAgQ29uZmlybcSDLCB0ZXJtaW7EgyAodmVyaWZpY8SDIGRlcGVuZGVuyJtlKSAgIGksIEkgIGNvbXV0xIMvY2ljbGVhesSDICIKKyJlY3JhbmVsZSBpbmZvXG4iCisiICAgUSAgICAgQ29uZmlybcSDLCB0ZXJtaW7EgyAoc3VwcmFzY3JpZXJlIGRlcC4pICAgICBvLCBPICBjaWNsZWF6xIMgw65udHJlICIKKyJvcMibaXVuaWxlIGRlIHNvcnRhcmVcbiIKKyIgWCwgRXNjICBpZciZaXJlLCBhYmFuZG9uZWF6xIMgc2NoaW1ixINyaWxlIGbEg2N1dGUgICAgdiwgViAgc2NoaW1ixIMgc3RhcmVhICIKKyJvcMibaXVuaWxvciBkZSBhZmnImWFyZVxuIgorIiAgIFIgICAgIFJldmVuaXJlIGxhIHN0YXJlYSBhbnRlcmlvYXLEgyBsaXN0ZWkgICAgICAgXmwgICByZWRlc2VuYXJlIGVjcmFuXG4iCisiICAgVSAgICAgcGxhc2VhesSDIHRvdCDDrm4gc3RhcmVhIHNVZ2VyYXTEgyAgICAgICAgICAgICAvICAgY2F1dMSDIChSZXR1cm4gIgorInBlbnRydSByZW51bsibYXJlKVxuIgorIiAgIEQgICAgIHBsYXNlYXrEgyB0b3QsIERpcmVjdCDDrm4gc3RhcmVhIGNlcnV0xIMgICAgICBuLCBcXCAgcmVwZXTEgyB1bHRpbWEgIgorImPEg3V0YXJlXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6NTUKK21zZ2lkICJJbnRyb2R1Y3Rpb24gdG8gcGFja2FnZSBzZWxlY3Rpb25zIgorbXNnc3RyICJJbnRyb2R1Y2VyZSDDrm4gc2VsZWPIm2lhIHBhY2hldGVsb3IiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6NTUKK21zZ2lkICIiCisiV2VsY29tZSB0byBkc2VsZWN0J3MgbWFpbiBwYWNrYWdlIGxpc3RpbmcuXG4iCisiXG4iCisiWW91IHdpbGwgYmUgcHJlc2VudGVkIHdpdGggYSBsaXN0IG9mIHBhY2thZ2VzIHdoaWNoIGFyZSBpbnN0YWxsZWQgb3IgIgorImF2YWlsYWJsZVxuIgorImZvciBpbnN0YWxsYXRpb24uICBZb3UgY2FuIG5hdmlnYXRlIGFyb3VuZCB0aGUgbGlzdCB1c2luZyB0aGUgY3Vyc29yIGtleXMsXG4iCisibWFyayBwYWNrYWdlcyBmb3IgaW5zdGFsbGF0aW9uICh1c2luZyBgKycpIG9yIGRlaW5zdGFsbGF0aW9uICh1c2luZyBgLScpLlxuIgorIlBhY2thZ2VzIGNhbiBiZSBtYXJrZWQgZWl0aGVyIHNpbmdseSBvciBpbiBncm91cHM7IGluaXRpYWxseSB5b3Ugd2lsbCBzZWUgIgorInRoYXRcbiIKKyJ0aGUgbGluZSBgQWxsIHBhY2thZ2VzJyBpcyBzZWxlY3RlZC4gIGArJywgYC0nIGFuZCBzbyBvbiB3aWxsIGFmZmVjdCBhbGwgIgorInRoZVxuIgorInBhY2thZ2VzIGRlc2NyaWJlZCBieSB0aGUgaGlnaGxpZ2h0ZWQgbGluZS5cbiIKKyJcbiIKKyJTb21lIG9mIHlvdXIgY2hvaWNlcyB3aWxsIGNhdXNlIGNvbmZsaWN0cyBvciBkZXBlbmRlbmN5IHByb2JsZW1zOyB5b3Ugd2lsbCAiCisiYmVcbiIKKyJnaXZlbiBhIHN1Yi1saXN0IG9mIHRoZSByZWxldmFudCBwYWNrYWdlcywgc28gdGhhdCB5b3UgY2FuIHNvbHZlIHRoZSAiCisicHJvYmxlbXMuXG4iCisiXG4iCisiWW91IHNob3VsZCByZWFkIHRoZSBsaXN0IG9mIGtleXMgYW5kIHRoZSBleHBsYW5hdGlvbnMgb2YgdGhlIGRpc3BsYXkuXG4iCisiTXVjaCBvbi1saW5lIGhlbHAgaXMgYXZhaWxhYmxlLCBwbGVhc2UgbWFrZSB1c2Ugb2YgaXQgLSBwcmVzcyBgPycgYXRcbiIKKyJhbnkgdGltZSBmb3IgaGVscC5cbiIKKyJcbiIKKyJXaGVuIHlvdSBoYXZlIGZpbmlzaGVkIHNlbGVjdGluZyBwYWNrYWdlcywgcHJlc3MgPGVudGVyPiB0byBjb25maXJtICIKKyJjaGFuZ2VzLFxuIgorIm9yIGBYJyB0byBxdWl0IHdpdGhvdXQgc2F2aW5nIGNoYW5nZXMuIEEgZmluYWwgY2hlY2sgb24gY29uZmxpY3RzIGFuZFxuIgorImRlcGVuZGVuY2llcyB3aWxsIGJlIGRvbmUgLSBoZXJlIHRvbyB5b3UgbWF5IHNlZSBhIHN1Ymxpc3QuXG4iCisiXG4iCisiUHJlc3MgPHNwYWNlPiB0byBsZWF2ZSBoZWxwIGFuZCBlbnRlciB0aGUgbGlzdCBub3cuXG4iCittc2dzdHIgIiIKKyJCaW5lIGHIm2kgdmVuaXQgbGEgbGlzdGFyZWEgcHJpbmNpcGFsxIMgYSBwYWNoZXRlbG9yIGx1aSBkc2VsZWN0LlxuIgorIlxuIgorIlbEgyB2YSBmaSBhcsSDdGF0xIMgbyBsaXN0xIMgZGUgcGFjaGV0ZSBjYXJlIHN1bnQgaW5zdGFsYXRlIHNhdSBkaXNwb25pYmlsZVxuIgorInBlbnRydSBpbnN0YWxhcmUuIFB1dGXIm2kgbmF2aWdhIHByaW4gbGlzdMSDIGZvbG9zaW5kIHRhc3RlbGUgY3Vyc29ydWx1aSxcbiIKKyJwdXRlyJtpIG1hcmNhIHBhY2hldGVsZSBwZW50cnUgaW5zdGFsYXJlIChmb2xvc2luZCDigJ4r4oCdKSBzYXUgZGV6aW5zdGFsYXJlICIKKyIoZm9sb3NpbmQg4oCeLeKAnSkuXG4iCisiUGFjaGV0ZWxlIHBvdCBmaSBtYXJjYXRlIGZpZSBpbmRpdmlkdWFsIGZpZSDDrm4gZ3J1cHVyaSwgaW5pyJtpYWwgdmXIm2kgdmVkZWEgIgorImPEg1xuIgorImxpbmlhIOKAnlRvYXRlIHBhY2hldGVsZeKAnSBlc3RlIHNlbGVjdGF0xIMuICDigJ4r4oCdLCDigJ4t4oCdIMiZaSB0b2F0ZSBjZWxlbGFsdGUgdm9yICIKKyJhZmVjdGEgdG9hdGVcbiIKKyJwYWNoZXRlbGUgZGVzY3Jpc2UgZGUgbGluaWEgZXZpZGVuyJtpYXTEgy5cbiIKKyJcbiIKKyJVbmVsZSBkaW4gYWxlZ2VyaWxlIGR2cy4gdm9yIGRldGVybWluYSBjb25mbGljdGUgc2F1IHByb2JsZW1lIGRlIGRlcGVuZGVuyJtlLCAiCisidmkgc2VcbiIKKyJ2YSBkYSBvIHN1Yi1saXN0xIMgZGUgcGFjaGV0ZSByZWxldmFudGUsIGNhcmUgdm9yIHJlem9sdmEgcHJvYmxlbWVsZS5cbiIKKyJcbiIKKyJBciB0cmVidWkgc8SDIGNpdGnIm2kgbGlzdGEgZGUgdGFzdGUgyJlpIGV4cGxpY2HIm2lpbGUgZGUgcGUgZWNyYW4uXG4iCisiRXN0ZSBkaXNwb25pYmlsIG11bHQgYWp1dG9yIGltZWRpYXQsIHN1bnRlyJtpIHJ1Z2F0IHPEgyB2xIMgZm9sb3NpyJtpIGRlIGVsIC0gIgorImFwxINzYcibaSBjw6JuZCBkb3JpyJtpXG4iCisi4oCeP+KAnSBwZW50cnUgYSBwcmltaSBhanV0b3IuXG4iCisiXG4iCisiQ8OibmQgYcibaSB0ZXJtaW5hdCBkZSBzZWxlY3RhdCBwYWNoZXRlbGUsIGFwxINzYcibaSA8ZW50ZXI+IHBlbnRydSBhIGNvbmZpcm1hICIKKyJzY2hpbWLEg3JpbGUsXG4iCisic2F1IOKAnljigJ0gcGVudHJ1IGEgaWXImWkgZsSDcsSDIHPEgyBzYWx2YcibaSBzY2hpbWLEg3JpbGUuIE8gdmVyaWZpY2FyZSBmaW5hbMSDIGxhICIKKyJjb25mbGljdGUgyJlpXG4iCisiZGVwZW5kZW7Im2UgdmEgZmkgZsSDY3V0xIMgLSBhaWNpIMiZaSBkdnMgdmXIm2kgcHV0ZWEgdmVkZWEgbyBzdWJsaXN0xIMuXG4iCisiXG4iCisiQXDEg3NhyJtpIDxzcGHIm2l1PiBwZW50cnUgYSBwxINyxINzaSBhanV0b3J1bCDImWkgYSBpbnRyYSDDrm4gbGlzdMSDLlxuIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjgwCittc2dpZCAiSW50cm9kdWN0aW9uIHRvIHJlYWQtb25seSBwYWNrYWdlIGxpc3QgYnJvd3NlciIKK21zZ3N0ciAiSW50cm9kdWNlcmUgYSBuYXZpZ2F0b3J1bHVpIGxpc3RlaSBkZSBwYWNoZXRlLCDDrm4gbW9kIHN0cmljdCBjaXRpcmUiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6ODAKK21zZ2lkICIiCisiV2VsY29tZSB0byBkc2VsZWN0J3MgbWFpbiBwYWNrYWdlIGxpc3RpbmcuXG4iCisiXG4iCisiWW91IHdpbGwgYmUgcHJlc2VudGVkIHdpdGggYSBsaXN0IG9mIHBhY2thZ2VzIHdoaWNoIGFyZSBpbnN0YWxsZWQgb3IgIgorImF2YWlsYWJsZVxuIgorImZvciBpbnN0YWxsYXRpb24uICBTaW5jZSB5b3UgZG8gbm90IGhhdmUgdGhlIHByaXZpbGVnZSBuZWNlc3NhcnkgdG8gdXBkYXRlXG4iCisicGFja2FnZSBzdGF0ZXMsIHlvdSBhcmUgaW4gYSByZWFkLW9ubHkgbW9kZS4gIFlvdSBjYW4gbmF2aWdhdGUgYXJvdW5kIHRoZVxuIgorImxpc3QgdXNpbmcgdGhlIGN1cnNvciBrZXlzIChwbGVhc2Ugc2VlIHRoZSBgS2V5c3Ryb2tlcycgaGVscCBzY3JlZW4pLCAiCisib2JzZXJ2ZVxuIgorInRoZSBzdGF0dXMgb2YgdGhlIHBhY2thZ2VzIGFuZCByZWFkIGluZm9ybWF0aW9uIGFib3V0IHRoZW0uXG4iCisiXG4iCisiWW91IHNob3VsZCByZWFkIHRoZSBsaXN0IG9mIGtleXMgYW5kIHRoZSBleHBsYW5hdGlvbnMgb2YgdGhlIGRpc3BsYXkuXG4iCisiTXVjaCBvbi1saW5lIGhlbHAgaXMgYXZhaWxhYmxlLCBwbGVhc2UgbWFrZSB1c2Ugb2YgaXQgLSBwcmVzcyBgPycgYXRcbiIKKyJhbnkgdGltZSBmb3IgaGVscC5cbiIKKyJcbiIKKyJXaGVuIHlvdSBoYXZlIGZpbmlzaGVkIGJyb3dzaW5nLCBwcmVzcyBgUScgb3IgPGVudGVyPiB0byBxdWl0LlxuIgorIlxuIgorIlByZXNzIDxzcGFjZT4gdG8gbGVhdmUgaGVscCBhbmQgZW50ZXIgdGhlIGxpc3Qgbm93LlxuIgorbXNnc3RyICIiCisiQmluZSBhyJtpIHZlbml0IGxhIGxpc3RhIHByaW5jaXBhbMSDIGRlIHBhY2hldGUgYSBsdWkgZHNlbGVjdC5cbiIKKyJcbiIKKyJWxIMgdmEgZmkgYXLEg3RhdMSDIG8gbGlzdMSDIGRlIHBhY2hldGUgY2FyZSBzdW50IGluc3RhbGF0ZSBzYXUgZGlzcG9uaWJpbGVcbiIKKyJwZW50cnUgaW5zdGFsYXJlLiBEaW4gbW9tZW50IGNlIG51IGF2ZcibaSBwcml2aWxlZ2lpbGUgbmVjZXNhcmUgcGVudHJ1IGEgXG4iCisiYWN0dWFsaXphIHN0YXJlYSBwYWNoZXRlbG9yLCBzdW50ZcibaSDDrm4gbW9kdWwgZG9hci1jaXRpcmUuIFB1dGXIm2kgbmF2aWdhIFxuIgorInByaW4gbGlzdMSDIGZvbG9zaW5kIHRhc3RlbGUgcGVudHJ1IGN1cnNvciAodsSDIHJvZywgdmVkZcibaSBlY3JhbnVsIGRlIGFqdXRvclxuIgorIuKAnkNvbWJpbmHIm2lpIHRhc3Rl4oCdKSwgb2JzZXJ2YSBzdGFyZWEgcGFjaGV0ZWxvciDImWkgY2l0aSBpbmZvcm1hyJtpaWxlIGRlc3ByZSAiCisiZWxlLlxuIgorIlxuIgorIkFyIHRyZWJ1aSBzxIMgY2l0acibaSBsaXN0YSBkZSB0YXN0ZSDImWkgZXhwbGljYcibaWlsZSBkZSBwZSBlY3Jhbi5cbiIKKyJFc3RlIGRpc3BvbmliaWwgbXVsdCBhanV0b3IgaW1lZGlhdCwgc3VudGXIm2kgcnVnYXQgc8SDIHbEgyBmb2xvc2nIm2kgZGUgZWwgLSAiCisiYXDEg3NhyJtpIG9yaWPDom5kIGRvcmnIm2lcbiIKKyIg4oCeP+KAnSBwZW50cnUgYSBwcmltaSBhanV0b3IuXG4iCisiXG4iCisiQ8OibmQgYcibaSB0ZXJtaW5hdCBkZSBzZWxlY3RhdCBwYWNoZXRlbGUsIGFwxINzYcibaSDigJ5R4oCdIHNhdSA8ZW50ZXI+IHBlbnRydSBhICIKKyJpZciZaS5cbiIKKyJcbiIKKyJBcMSDc2HIm2kgPHNwYcibaXU+IHBlbnRydSBhIHDEg3LEg3NpIGFqdXRvcnVsIMiZaSBhIGludHJhIMOubiBsaXN0xIMuXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6OTkKK21zZ2lkICJJbnRyb2R1Y3Rpb24gdG8gY29uZmxpY3QvZGVwZW5kZW5jeSByZXNvbHV0aW9uIHN1Yi1saXN0IgorbXNnc3RyICJJbnRyb2R1Y2VyZSBhIHN1Ymxpc3RlaSBkZSByZXpvbHZhcmUgYSBjb25mbGljdGVsb3IvZGVwZW5kZW7Im2Vsb3IiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6OTkKK21zZ2lkICIiCisiRGVwZW5kZW5jeS9jb25mbGljdCByZXNvbHV0aW9uIC0gaW50cm9kdWN0aW9uLlxuIgorIlxuIgorIk9uZSBvciBtb3JlIG9mIHlvdXIgY2hvaWNlcyBoYXZlIHJhaXNlZCBhIGNvbmZsaWN0IG9yIGRlcGVuZGVuY3kgcHJvYmxlbSAtXG4iCisic29tZSBwYWNrYWdlcyBzaG91bGQgb25seSBiZSBpbnN0YWxsZWQgaW4gY29uanVuY3Rpb24gd2l0aCBjZXJ0YWluIG90aGVycywgIgorImFuZFxuIgorInNvbWUgY29tYmluYXRpb25zIG9mIHBhY2thZ2VzIG1heSBub3QgYmUgaW5zdGFsbGVkIHRvZ2V0aGVyLlxuIgorIlxuIgorIllvdSB3aWxsIHNlZSBhIHN1Yi1saXN0IGNvbnRhaW5pbmcgdGhlIHBhY2thZ2VzIGludm9sdmVkLiAgVGhlIGJvdHRvbSBoYWxmICIKKyJvZlxuIgorInRoZSBkaXNwbGF5IHNob3dzIHJlbGV2YW50IGNvbmZsaWN0cyBhbmQgZGVwZW5kZW5jaWVzOyB1c2UgYGknIHRvIGN5Y2xlICIKKyJiZXR3ZWVuXG4iCisidGhhdCwgdGhlIHBhY2thZ2UgZGVzY3JpcHRpb25zIGFuZCB0aGUgaW50ZXJuYWwgY29udHJvbCBpbmZvcm1hdGlvbi5cbiIKKyJcbiIKKyJBIHNldCBvZiBgc3VnZ2VzdGVkJyBwYWNrYWdlcyBoYXMgYmVlbiBjYWxjdWxhdGVkLCBhbmQgdGhlIGluaXRpYWwgbWFya2luZ3MgIgorImluXG4iCisidGhpcyBzdWItbGlzdCBoYXZlIGJlZW4gc2V0IHRvIG1hdGNoIHRob3NlLCBzbyB5b3UgY2FuIGp1c3QgaGl0IFJldHVybiB0b1xuIgorImFjY2VwdCB0aGUgc3VnZ2VzdGlvbnMgaWYgeW91IHdpc2guICBZb3UgbWF5IGFib3J0IHRoZSBjaGFuZ2Uocykgd2hpY2ggIgorImNhdXNlZFxuIgorInRoZSBwcm9ibGVtKHMpLCBhbmQgZ28gYmFjayB0byB0aGUgbWFpbiBsaXN0LCBieSBwcmVzc2luZyBjYXBpdGFsIGBYJy5cbiIKKyJcbiIKKyJZb3UgY2FuIGFsc28gbW92ZSBhcm91bmQgdGhlIGxpc3QgYW5kIGNoYW5nZSB0aGUgbWFya2luZ3Mgc28gdGhhdCB0aGV5IGFyZSAiCisibW9yZVxuIgorImxpa2Ugd2hhdCB5b3Ugd2FudCwgYW5kIHlvdSBjYW4gYHJlamVjdCcgbXkgc3VnZ2VzdGlvbnMgYnkgdXNpbmcgdGhlICIKKyJjYXBpdGFsXG4iCisiYEQnIG9yIGBSJyBrZXlzIChzZWUgdGhlIGtleWJpbmRpbmdzIGhlbHAgc2NyZWVuKS4gIFlvdSBjYW4gdXNlIGNhcGl0YWwgYFEnICIKKyJ0b1xuIgorImZvcmNlIG1lIHRvIGFjY2VwdCB0aGUgc2l0dWF0aW9uIGN1cnJlbnRseSBkaXNwbGF5ZWQsIGluIGNhc2UgeW91IHdhbnQgdG9cbiIKKyJvdmVycmlkZSBhIHJlY29tbWVuZGF0aW9uIG9yIHRoaW5rIHRoYXQgdGhlIHByb2dyYW0gaXMgbWlzdGFrZW4uXG4iCisiXG4iCisiUHJlc3MgPHNwYWNlPiB0byBsZWF2ZSBoZWxwIGFuZCBlbnRlciB0aGUgc3ViLWxpc3Q7IHJlbWVtYmVyOiBwcmVzcyBgPycgZm9yICIKKyJoZWxwLlxuIgorbXNnc3RyICIiCisiUmV6b2x1yJtpZSBkZSBkZXBlbmRlbsibZS9jb25mbGljdGUgLSBpbnRyb2R1Y2VyZS5cbiIKKyJcbiIKKyJVbmEgc2F1IG1haSBtdWx0ZSBkaW50cmUgYWxlZ2VyaWxlIGR2cy4gdm9yIGRldGVybWluYSBjb25mbGljdGUgc2F1IHByb2JsZW1lICIKKyJkZSBkZXBlbmRlbsibZSAtXG4iCisidW5lbGUgcGFjaGV0ZSBhciB0cmVidWkgaW5zdGFsYXRlIGRvYXIgw65tcHJldW7EgyBjdSBhbnVtaXRlIGFsdGVsZSwgyJlpXG4iCisidW5lbGUgY29tYmluYcibaWkgZGUgcGFjaGV0ZSBudSBwb3QgZmkgaW5zdGFsYXRlIMOubXByZXVuxIMuXG4iCisiXG4iCisiVmXIm2kgdmVkZWEgbyBzdWItbGlzdMSDIGNvbsibaW7Dom5kIHBhY2hldGVsZSBpbXBsaWNhdGUuICBKdW3Eg3RhdGVhIGluZmVyaW9hcsSDICIKKyJhXG4iCisiYWZpyJlhanVsdWkgYXJhdMSDIGNvbmZsaWN0ZWxlIMiZaSBkZXBlbmRlbsibZWxlIHJlbGV2YW50ZTsgZm9sb3NpyJtpIOKAnmnigJ0gcGVudHJ1ICIKKyJhIGNpcmN1bGEgw65udHJlXG4iCisiYWNlc3RlYSwgZGVzY3JpZXJpbGUgcGFjaGV0ZWxvciDImWkgaW5mb3JtYcibaWEgaW50ZXJuxIMgZGUgY29udHJvbC5cbiIKKyJcbiIKKyJBdSBmb3N0IGNhbGN1bGF0ZSB1biBzZXQgZGUgcGFjaGV0ZSDigJ5zdWdlcmF0ZeKAnSwgyJlpIHNlbGVjyJtpaWxlIGluacibaWFsZSDDrm5cbiIKKyJhY2Vhc3TEgyBzdWItbGlzdMSDIGF1IGZvc3QgYXJhbmphdGUgc8SDIHNlIHBvdHJpdmVhc2PEgyBjdSBhY2VsZWEsIGFzdGZlbCDDrm5jw6J0ICIKKyJkb2FyIGFwxINzYcibaSBFbnRlclxuIgorInBlbnRydSBhIGFjY2VwdGEgc3VnZXN0aWlsZSwgZGFjxIMgZG9yacibaS4gUHV0ZcibaSBhbnVsYSBzY2hpbWLEg3JpbGUgY2FyZSAiCisiZGV0ZXJtaW7Eg1xuIgorInByb2JsZW1lLCDImWkgdsSDIGR1Y2XIm2kgw65uYXBvaSBsYSBsaXN0YSBwcmluY2lwYWzEgywgYXDEg3PDom5kIG1hanVzY3VsYSDigJ5Y4oCdLlxuIgorIlxuIgorIlB1dGXIm2kgZGUgYXNlbWVuZWEgc8SDIG5hdmlnYcibaSBwcmluIGxpc3TEgyDImWkgc2NoaW1iYSBzZWxlY8ibaWlsZSBkdXDEgyAiCisiZG9yaW7Im8SDLFxuIgorIsiZaSBwdXRlyJtpIGFudWxhIHN1Z2VzdGlpbGUgZm9sb3NpbmQgbWFqdXNjdWxlbGUg4oCeROKAnSBvcmkg4oCeUuKAnVxuIgorIih2ZWRlyJtpIGVjcmFudWwgZGUgYWp1dG9yIGN1IGNvbWJpbmHIm2lpbGUgZGUgdGFzdGUpLiBQdXRlyJtpIGZvbG9zaSAiCisibWFqdXNjdWxhXG4iCisi4oCeUeKAnSBwZW50cnUgYSBmb3LIm2EgYWNjZXB0dWwgw65uIHNpdHVhyJtpYSBjdXJlbnQgYWZpyJlhdMSDLCDDrm4gY2F6IGPEgyB2cmXIm2kgc8SDXG4iCisidHJlY2XIm2kgcGVzdGUgbyByZWNvbWFuZGFyZSBzYXUgdsSDIGfDom5kacibaSBjxIMgcHJvZ3JhbXVsIHNlIMOubsiZZWFsxIMuXG4iCisiXG4iCisiQXBhc2HIm2kgPHNwYcibaXU+IHBlbnRydSBhIHDEg3LEg3NpIGFqdXRvcnVsIMiZaSBhIGludHJhIMOubiBzdWItbGlzdMSDOyBudSAiCisidWl0YcibaTogYXDEg3NhyJtpIOKAnj/igJ0gcGVudHJ1IGFqdXRvci5cbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxMjUKK21zZ2lkICJEaXNwbGF5LCBwYXJ0IDE6IHBhY2thZ2UgbGlzdGluZyBhbmQgc3RhdHVzIGNoYXJzIgorbXNnc3RyICJBZmnImWFyZSwgcGFydGVhIDE6IGxpc3RhIGRlIHBhY2hldGUgyJlpIGNhcmFjdGVyZWxlIGRlIHN0YXJlIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjEyNQorbXNnaWQgIiIKKyJUaGUgdG9wIGhhbGYgb2YgdGhlIHNjcmVlbiBzaG93cyBhIGxpc3Qgb2YgcGFja2FnZXMuICBGb3IgZWFjaCBwYWNrYWdlIHlvdSAiCisic2VlXG4iCisiZm91ciBjb2x1bW5zIGZvciBpdHMgY3VycmVudCBzdGF0dXMgb24gdGhlIHN5c3RlbSBhbmQgbWFyay4gIEluIHRlcnNlIG1vZGUgIgorIih1c2VcbiIKKyJgdicgdG8gdG9nZ2xlIHZlcmJvc2UgZGlzcGxheSkgdGhlc2UgYXJlIHNpbmdsZSBjaGFyYWN0ZXJzLCBmcm9tIGxlZnQgdG8gIgorInJpZ2h0OlxuIgorIlxuIgorIiBFcnJvciBmbGFnOiBTcGFjZSAtIG5vIGVycm9yIChidXQgcGFja2FnZSBtYXkgYmUgaW4gYnJva2VuIHN0YXRlIC0gc2VlICIKKyJiZWxvdylcbiIKKyIgICAgICAgICAgICAgIGBSJyAgLSBzZXJpb3VzIGVycm9yIGR1cmluZyBpbnN0YWxsYXRpb24sIG5lZWRzICIKKyJyZWluc3RhbGxhdGlvbjtcbiIKKyIgSW5zdGFsbGVkIHN0YXRlOiAgICAgU3BhY2UgICAgLSBub3QgaW5zdGFsbGVkO1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgYConICAgICAtIGluc3RhbGxlZDtcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgIGAtJyAgICAgLSBub3QgaW5zdGFsbGVkIGJ1dCBjb25maWcgZmlsZXMgcmVtYWluO1xuIgorIiAgIHBhY2thZ2VzIGluIHRoZXNlIHsgYFUnICAgICAtIHVucGFja2VkIGJ1dCBub3QgeWV0IGNvbmZpZ3VyZWQ7XG4iCisiICAgc3RhdGVzIGFyZSBub3QgICAgeyBgQycgICAgIC0gaGFsZi1jb25maWd1cmVkIChhbiBlcnJvciBoYXBwZW5lZCk7XG4iCisiICAgKHF1aXRlKSBwcm9wZXJseSAgeyBgSScgICAgIC0gaGFsZi1pbnN0YWxsZWQgKGFuIGVycm9yIGhhcHBlbmVkKTtcbiIKKyIgICBpbnN0YWxsZWQgICAgICAgICB7IGBXJyxgdCcgLSB0cmlnZ2VycyBhcmUgYXdhaXRlZCByZXNwLiBwZW5kaW5nLlxuIgorIiBPbGQgbWFyazogd2hhdCB3YXMgcmVxdWVzdGVkIGZvciB0aGlzIHBhY2thZ2UgYmVmb3JlIHByZXNlbnRpbmcgdGhpcyBsaXN0O1xuIgorIiBNYXJrOiB3aGF0IGlzIHJlcXVlc3RlZCBmb3IgdGhpcyBwYWNrYWdlOlxuIgorIiAgYConOiBtYXJrZWQgZm9yIGluc3RhbGxhdGlvbiBvciB1cGdyYWRlO1xuIgorIiAgYC0nOiBtYXJrZWQgZm9yIHJlbW92YWwsIGJ1dCBhbnkgY29uZmlndXJhdGlvbiBmaWxlcyB3aWxsIHJlbWFpbjtcbiIKKyIgIGA9Jzogb24gaG9sZDogcGFja2FnZSB3aWxsIG5vdCBiZSBwcm9jZXNzZWQgYXQgYWxsO1xuIgorIiAgYF8nOiBtYXJrZWQgZm9yIHB1cmdlIGNvbXBsZXRlbHkgLSBldmVuIHJlbW92ZSBjb25maWd1cmF0aW9uO1xuIgorIiAgYG4nOiBwYWNrYWdlIGlzIG5ldyBhbmQgaGFzIHlldCB0byBiZSBtYXJrZWQgZm9yIGluc3RhbGwvcmVtb3ZlLyZjLlxuIgorIlxuIgorIkFsc28gZGlzcGxheWVkIGFyZSBlYWNoIHBhY2thZ2UncyBQcmlvcml0eSwgU2VjdGlvbiwgbmFtZSwgaW5zdGFsbGVkIGFuZFxuIgorImF2YWlsYWJsZSB2ZXJzaW9uIG51bWJlcnMgKHNoaWZ0LVYgdG8gZGlzcGxheS9oaWRlKSBhbmQgc3VtbWFyeSAiCisiZGVzY3JpcHRpb24uXG4iCittc2dzdHIgIiIKKyJKdW3Eg3RhdGVhIHN1cGVyaW9hcsSDIGEgZWNyYW51bHVpIGFyYXTEgyBvIGxpc3TEgyBkZSBwYWNoZXRlLiBMYSBmaWVjYXJlIHBhY2hldCAiCisidmXIm2kgdmVkZWFcbiIKKyJwYXRydSBjb2xvYW5lIHBlbnRydSBzdGFyZWEgY3VyZW50xIMgw65uIHNpc3RlbSDImWkgbWFyY2FqdWwuIMOObiBtb2R1bCBjb25jaXMgIgorIihmb2xvc2nIm2kg4oCeduKAnVxuIgorInBlbnRydSBhIGNvbXV0YSBsYSBhZmnImWFqdWwgZGV0YWxpYXQpIGFjZXN0ZWEgc3VudCBjYXJhY3RlcmUgaW5kaXZpZHVhbGUsIGRlICIKKyJsYSBzdMOibmdhIGxhIGRyZWFwdGE6XG4iCisiXG4iCisiIEZhbmlvbiBkZSBlcm9hcmU6ICAgU3BhyJtpdSAtIGbEg3LEgyBlcm9hcmUgKGRhciBwYWNoZXR1bCBhciBwdXRlYSBmaVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRldGVyaW9yYXQgLSB2ZWRlyJtpIG1haSBqb3MpXG4iCisiICAgICAgICAgICAgICAgICAgICAgICDigJ5S4oCdICAtIGVyb2FyZSBncmF2xIMgw65uIHRpbXB1bCBpbnN0YWzEg3JpaSwgYXJlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmV2b2llIGRlIHJlaW5zdGFsYXJlO1xuIgorIiBTdGFyZWEgaW5zdGFsxINyaWk6ICAgIFNwYcibaXUgICAgLSBuZWluc3RhbGF0O1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICDigJ4q4oCdICAgICAtIGluc3RhbGF0O1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICDigJ4t4oCdICAgICAtIG5laW5zdGFsYXQgZGFyIGZpyJlpZXJlbGUgZGUgY29uZmlndXJhcmVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcsSDbcOibjtcbiIKKyIgICBwYWNoZXRlbGUgw65uIGFjZXN0ZSB7IOKAnlXigJ0gICAgIC0gZGVzcGFjaGV0YXQgZGFyIMOubmPEgyBuZWNvbmZpZ3VyYXQ7XG4iCisiICAgc3TEg3JpIG51IHN1bnQgICAgICAgeyDigJ5D4oCdICAgICAtIHNlbWktY29uZmlndXJhdCAocy1hIMOubnTDomxuaXQgZXJvYXJlKTtcbiIKKyIgICAoY2hpYXIpIGJpbmUgICAgICAgIHsg4oCeSeKAnSAgICAgLSBzZW1pLWluc3RhbGF0IChzLWEgw65udMOibG5pdCBlcm9hcmUpLlxuIgorIiAgIGluc3RhbGF0ZSAgICAgICAgICAgeyDigJ5X4oCdLOKAnnTigJ0gLSBkZWNsYW7ImWF0b3JpaSBzdW50IGHImXRlcHRhyJtpLCByZXNwZWN0aXZcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgw65uIGHImXRlcHRhcmUuIFZlY2hpdWwgbWFyY2FqOiBjZWVhIGNlIHMtIgorImEgY2VydXQgZGUgbGEgYWNlc3QgcGFjaGV0IMOubmFpbnRlIGRlIGEgYWZpyJlhXG4iCisiICAgICAgICAgICAgICAgICAgIGFjZWFzdMSDIGxpc3TEgztcbiIKKyIgTWFyY2FqOiBjZWVhIGNlIHNlIGNlcmUgcGVudHJ1IGFjZXN0IHBhY2hldDpcbiIKKyIgIOKAnirigJ06IG1hcmNhdCBwZW50cnUgaW5zdGFsYXJlIHNhdSDDrm5ub2lyZTtcbiIKKyIgIOKAni3igJ06IG1hcmNhdCBwZW50cnUgyJl0ZXJnZXJlLCBkYXIgZmnImWllcmVsZSBkZSBjb25maWd1cmFyZSByxINtw6JuO1xuIgorIiAg4oCePeKAnTogw65uIGHImXRlcHRhcmU6IHBhY2hldHVsIG51IHZhIGZpIHByb2Nlc2F0IGRlbG9jO1xuIgorIiAg4oCeX+KAnTogbWFyY2F0IHBlbnRydSDImXRlcmdlcmUgY29tcGxldMSDIC0gaW5jbHVzaXYgY29uZmlndXJhcmVhO1xuIgorIiAg4oCebuKAnTogcGFjaGV0dWwgZXN0ZSBub3UgyJlpIHBvYXRlIMOubmPEgyBmaSBtYXJjYXQgcGVudHJ1XG4iCisiICAgICAgICAgaW5zdGFsYXJlL8iZdGVyZ2VyZS8mYy5cbiIKKyJcbiIKKyJEZSBhc2VtZW5lYSwgcGVudHJ1IGZpZWNhcmUgcGFjaGV0LCBzdW50IGFmaciZYXRlIFByaW9yaXRhdGVhLCBTZWPIm2l1bmVhLFxuIgorIm51bWVsZSwgdmVyc2l1bmVhIGluc3RhbGF0xIMgyJlpIGNlYSBkaXNwb25pYmlsxIMgKHNoaWZ0LVYgcGVudHJ1IGFcbiIKKyJhZmnImWEvYXNjdW5kZSkgyJlpIGRlc2NyaWVyZWEgcGUgc2N1cnQuXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTUyCittc2dpZCAiRGlzcGxheSwgcGFydCAyOiBsaXN0IGhpZ2hsaWdodDsgaW5mb3JtYXRpb24gZGlzcGxheSIKK21zZ3N0ciAiQWZpyJlhcmUsIHBhcnRlYSBhIDItYTogZXZpZGVuyJtpZXJlYSDDrm4gbGlzdMSDOyBhZmnImWFyZWEgaW5mb3JtYcibaWVpIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjE1MgorbXNnaWQgIiIKKyIqIEhpZ2hsaWdodDogT25lIGxpbmUgaW4gdGhlIHBhY2thZ2UgbGlzdCB3aWxsIGJlIGhpZ2hsaWdodGVkLiAgSXQgIgorImluZGljYXRlc1xuIgorIiAgd2hpY2ggcGFja2FnZShzKSB3aWxsIGJlIGFmZmVjdGVkIGJ5IHByZXNzZXMgb2YgYCsnLCBgLScgYW5kIGBfJy5cbiIKKyJcbiIKKyIqIFRoZSBkaXZpZGluZyBsaW5lIGluIHRoZSBtaWRkbGUgb2YgdGhlIHNjcmVlbiBzaG93cyBhIGJyaWVmIGV4cGxhbmF0aW9uICIKKyJvZlxuIgorIiAgdGhlIHN0YXR1cyBvZiB0aGUgY3VycmVudGx5LWhpZ2hsaWdodGVkIHBhY2thZ2UsIG9yIGEgZGVzY3JpcHRpb24gb2YgIgorIndoaWNoXG4iCisiICBncm91cCBpcyBoaWdobGlnaHRlZCBpZiBhIGdyb3VwIGxpbmUgaXMuICBJZiB5b3UgZG9uJ3QgdW5kZXJzdGFuZCB0aGVcbiIKKyIgIG1lYW5pbmcgb2Ygc29tZSBvZiB0aGUgc3RhdHVzIGNoYXJhY3RlcnMgZGlzcGxheWVkLCBnbyB0byB0aGUgcmVsZXZhbnRcbiIKKyIgIHBhY2thZ2UgYW5kIGxvb2sgYXQgdGhpcyBkaXZpZGVyIGxpbmUsIG9yIHVzZSB0aGUgYHYnIGtleSBmb3IgYSB2ZXJib3NlXG4iCisiICBkaXNwbGF5IChwcmVzcyBgdicgYWdhaW4gdG8gZ28gYmFjayB0byB0aGUgdGVyc2UgZGlzcGxheSkuXG4iCisiXG4iCisiKiBUaGUgYm90dG9tIG9mIHRoZSBzY3JlZW4gc2hvd3MgbW9yZSBpbmZvcm1hdGlvbiBhYm91dCB0aGVcbiIKKyIgIGN1cnJlbnRseS1oaWdobGlnaHRlZCBwYWNrYWdlIChpZiB0aGVyZSBpcyBvbmx5IG9uZSkuXG4iCisiXG4iCisiICBJdCBjYW4gc2hvdyBhbiBleHRlbmRlZCBkZXNjcmlwdGlvbiBvZiB0aGUgcGFja2FnZSwgdGhlIGludGVybmFsIHBhY2thZ2VcbiIKKyIgIGNvbnRyb2wgZGV0YWlscyAoZWl0aGVyIGZvciB0aGUgaW5zdGFsbGVkIG9yIGF2YWlsYWJsZSB2ZXJzaW9uIG9mIHRoZVxuIgorIiAgcGFja2FnZSksIG9yIGluZm9ybWF0aW9uIGFib3V0IGNvbmZsaWN0cyBhbmQgZGVwZW5kZW5jaWVzIGludm9sdmluZyB0aGVcbiIKKyIgIGN1cnJlbnQgcGFja2FnZSAoaW4gY29uZmxpY3QvZGVwZW5kZW5jeSByZXNvbHV0aW9uIHN1Ymxpc3RzKS5cbiIKKyJcbiIKKyIgIFVzZSB0aGUgYGknIGtleSB0byBjeWNsZSB0aHJvdWdoIHRoZSBkaXNwbGF5cywgYW5kIGBJJyB0byBoaWRlIHRoZVxuIgorIiAgaW5mb3JtYXRpb24gZGlzcGxheSBvciBleHBhbmQgaXQgdG8gdXNlIGFsbW9zdCBhbGwgb2YgdGhlIHNjcmVlbi5cbiIKK21zZ3N0ciAiIgorIiogRXZpZGVuyJtpZXJlYTogTyBsaW5pZSBkaW4gbGlzdGEgZGUgcGFjaGV0ZSB2YSBmaSBldmlkZW7Im2lhdMSDLiBTZW1uaWZpY8SDICIKKyJjZVxuIgorIiAgcGFjaGV0ZSBzdW50IGFmZWN0YXRlIGRlIHRhc3RlbGUg4oCeK+KAnSwg4oCeLeKAnSDImWkg4oCeX+KAnS5cbiIKKyJcbiIKKyIqIExpbmlhIGRlc3DEg3LIm2l0b2FyZSBkaW4gbWlqbG9jdWwgZWNyYW51bHVpIGFyYXTEgyBvIHNjdXJ0xIMgZGVzY3JpZXJlIGFcbiIKKyIgIHN0xINyaWkgcGFjaGV0dWx1aSBjdXJlbnQgZXZpZGVuyJtpYXQsIHNhdSBvIGRlc2NyaWVyZSBhIGdydXB1bHVpIGNhcmUgIgorImVzdGUgXG4iCisiICBldmlkZW7Im2lhdCBkYWPEgyBlc3RlIG8gbGluaWUgZGUgZ3J1cHVyaS4gRGFjxIMgbnUgw65uyJtlbGVnZcibaSBzZW5zdWxcbiIKKyIgIHVub3JhIGRpbnRyZSBjYXJhY3RlcmVsZSBkZSBzdGFyZSBhZmnImWF0ZSwgZHVjZcibaS12xIMgbGEgcGFjaGV0dWxcbiIKKyIgIHJlc3BlY3RpdiDImWkgdWl0YcibaS12xIMgbGEgbGluaWEgZGVzcMSDcsibaXRvYXJlLCBzYXUgZm9sb3NpyJtpIHRhc3RhIOKAnnbigJ0gIgorInBlbnRydSBhZmnImWFqXG4iCisiICBkZXRhbGlhdCAoYXDEg3NhyJtpIGRpbiBub3Ug4oCeduKAnSBwZW50cnUgYSB2xIMgcmXDrm50b2FyY2UgbGEgYWZpyJlhcmVhICIKKyJjb25jaXPEgykuXG4iCisiXG4iCisiKiBQYXJ0ZWEgaW5mZXJpb2FyxIMgYSBlY3JhbnVsdWkgYXJhdMSDIG1haSBtdWx0ZSBpbmZvcm1hyJtpaSBkZXNwcmVcbiIKKyIgIHBhY2hldHVsIGN1cmVudCBldmlkZW7Im2lhdCAoZGFjxIMgZXN0ZSB2cmV1bnVsKS5cbiIKKyJcbiIKKyIgIFBvYXRlIGFyxIN0YSBkZXNjcmllcmVhIGV4dGluc8SDIGEgcGFjaGV0dWx1aSwgZGV0YWxpaSBpbnRlcm5lIGRlIGNvbnRyb2xcbiIKKyIgIGFsZSBwYWNoZXR1bHVpIChmaWUgcGVudHJ1IHZlcnNpdW5lYSBpbnN0YWxhdMSDIGZpZSBwZW50cnUgY2VhICIKKyJkaXNwb25pYmlsxIMpLFxuIgorIiAgc2F1IGluZm9ybWHIm2lpIGRlc3ByZSBjb25mbGljdGUgyJlpIGRlcGVuZGVuyJtlIGltcGxpY2F0ZSBkZSBwYWNoZXR1bCAiCisiY3VyZW50XG4iCisiICAow65uIHN1Ymxpc3RhIGRlIHJlem9sdcibaWkgZGUgY29uZmxpY3RlL2RlcGVuZGVuyJtlKS5cbiIKKyJcbiIKKyIgIEZvbG9zacibaSB0YXN0YSDigJ5p4oCdIHBlbnRydSBhIGNpcmN1bGEgcHJpbnRyZSBhZmnImWFqZSwgyJlpIOKAnknigJ0gcGVudHJ1IGEgIgorImFzY3VuZGVcbiIKKyIgIGFmaciZYWp1bCBkZSBpbmZvcm1hyJtpaSBzYXUgYS1sIG3Eg3JpIHDDom7EgyBsYSBhIHV0aWxpemEgYXByb2FwZSB0b3QgIgorImVjcmFudWwuXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTc2Cittc2dpZCAiSW50cm9kdWN0aW9uIHRvIG1ldGhvZCBzZWxlY3Rpb24gZGlzcGxheSIKK21zZ3N0ciAiSW50cm9kdWNlcmUgYSBhZmnImcSDcmlpIHNlbGVjyJtpZWkgbWV0b2RlaSIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxNzYKK21zZ2lkICIiCisiZHNlbGVjdCBhbmQgZHBrZyBjYW4gZG8gYXV0b21hdGljIGluc3RhbGxhdGlvbiwgbG9hZGluZyB0aGUgcGFja2FnZSBmaWxlcyB0byAiCisiYmVcbiIKKyJpbnN0YWxsZWQgZnJvbSBvbmUgb2YgYSBudW1iZXIgb2YgZGlmZmVyZW50IHBvc3NpYmxlIHBsYWNlcy5cbiIKKyJcbiIKKyJUaGlzIGxpc3QgYWxsb3dzIHlvdSB0byBzZWxlY3Qgb25lIG9mIHRoZXNlIGluc3RhbGxhdGlvbiBtZXRob2RzLlxuIgorIlxuIgorIk1vdmUgdGhlIGhpZ2hsaWdodCB0byB0aGUgbWV0aG9kIHlvdSB3aXNoIHRvIHVzZSwgYW5kIGhpdCBFbnRlci4gIFlvdSB3aWxsICIKKyJ0aGVuXG4iCisiYmUgcHJvbXB0ZWQgZm9yIHRoZSBpbmZvcm1hdGlvbiByZXF1aXJlZCB0byBkbyB0aGUgaW5zdGFsbGF0aW9uLlxuIgorIlxuIgorIkFzIHlvdSBtb3ZlIHRoZSBoaWdobGlnaHQgYSBkZXNjcmlwdGlvbiBvZiBlYWNoIG1ldGhvZCwgd2hlcmUgYXZhaWxhYmxlLCBpc1xuIgorImRpc3BsYXllZCBpbiB0aGUgYm90dG9tIGhhbGYgb2YgdGhlIHNjcmVlbi5cbiIKKyJcbiIKKyJJZiB5b3Ugd2lzaCB0byBxdWl0IHdpdGhvdXQgY2hhbmdpbmcgYW55dGhpbmcgdXNlIHRoZSBgeCcga2V5IHdoaWxlIGluIHRoZSAiCisibGlzdFxuIgorIm9mIGluc3RhbGxhdGlvbiBtZXRob2RzLlxuIgorIlxuIgorIkEgZnVsbCBsaXN0IG9mIGtleXN0cm9rZXMgaXMgYXZhaWxhYmxlIGJ5IHByZXNzaW5nIGBrJyBub3csIG9yIGZyb20gdGhlICIKKyJoZWxwXG4iCisibWVudSByZWFjaGFibGUgYnkgcHJlc3NpbmcgYD8nLlxuIgorbXNnc3RyICIiCisiZHNlbGVjdCDImWkgZHBrZyBwb3QgZmFjZSBvIGluc3RhbGFyZSBhdXRvbWF0xIMsIMOubmPEg3Jjw6JuZCBmaciZaWVyZWxlICIKKyJwYWNoZXRlbG9yIGRlXG4iCisiaW5zdGFsYXQgZGludHItdW4gbnVtxINyIGRlIGRpZmVyaXRlIHBvc2liaWxlIGxvY3VyaS5cbiIKKyJcbiIKKyJBY2Vhc3TEgyBsaXN0xIMgdsSDIHBlcm1pdGUgc8SDIHNlbGVjdGHIm2kgdW5hIGRpbiBhY2VzdGUgbWV0b2RlIGRlIGluc3RhbGFyZS5cbiIKKyJcbiIKKyJEZXBsYXNhyJtpIGV2aWRlbsibaWVyZWEgY8SDdHJlIG1ldG9kYSBwZSBjYXJlIGRvcmnIm2kgcy1vIGZvbG9zacibaSwgyJlpIGFwxINzYcibaSAiCisiRW50ZXIuIFZlyJtpIGZpXG4iCisiY2hlc3Rpb25hdCBwZW50cnUgaW5mb3JtYcibaWlsZSBuZWNlc2FyZSBwZW50cnUgaW5zdGFsYXJlLlxuIgorIlxuIgorIkN1bSBkZXBsYXNhyJtpIGV2aWRlbsibaWVyZWEsIGVzdGUgYWZpyJlhdMSDIMOubiBqdW3Eg3RhdGVhIGluZmVyaW9hcsSDIGEgZWNyYW51bHVpICIKKyJvXG4iCisiZGVzY3JpZXJlIGEgZmllY8SDcmVpIG1ldG9kZSwgZGFjxIMgZXN0ZSBkaXNwb25pYmlsxIMuXG4iCisiXG4iCisiRGFjxIMgZG9yacibaSBzxIMgaWXImWnIm2kgZsSDcsSDIGEgbW9kaWZpY2EgbmltaWMgZm9sb3NpyJtpIHRhc3RhIOKAnnjigJ0gw65uIHRpbXAgY2VcbiIKKyJzdW50ZcibaSDDrm4gbGlzdGEgbWV0b2RlbG9yIGRlIGluc3RhbGFyZS5cbiIKKyJcbiIKKyJPIGxpc3TEgyBjb21wbGV0xIMgZGUgdGFzdGUgZXN0ZSBkaXNwb25pYmlsxIMgYXDEg3PDom5kIGFjdW0g4oCea+KAnSwgc2F1IGRpbiBtZW5pdWwgIgorImRlXG4iCisiYWp1dG9yLCBhY2Nlc2liaWzEgyBhcMSDc8OibmQg4oCeP+KAnS5cbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxOTYKK21zZ2lkICJLZXlzdHJva2VzIGZvciBtZXRob2Qgc2VsZWN0aW9uIgorbXNnc3RyICJDb21iaW5hyJtpaSBkZSB0YXN0ZSBwZW50cnUgc2VsZWN0YXJlYSBtZXRvZGVpIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjE5NgorbXNnaWQgIiIKKyJNb3Rpb24ga2V5czogTmV4dC9QcmV2aW91cywgVG9wL0VuZCwgVXAvRG93biwgQmFja3dhcmRzL0ZvcndhcmRzOlxuIgorIiAgaiwgRG93bi1hcnJvdyAgICAgICAgIGssIFVwLWFycm93ICAgICAgICAgICAgIG1vdmUgaGlnaGxpZ2h0XG4iCisiICBOLCBQYWdlLWRvd24sIFNwYWNlICAgUCwgUGFnZS11cCwgQmFja3NwYWNlICAgc2Nyb2xsIGxpc3QgYnkgMSBwYWdlXG4iCisiICBebiAgICAgICAgICAgICAgICAgICAgXnAgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGxpc3QgYnkgMSBsaW5lXG4iCisiICB0LCBIb21lICAgICAgICAgICAgICAgZSwgRW5kICAgICAgICAgICAgICAgICAganVtcCB0byB0b3AvZW5kIG9mIGxpc3RcbiIKKyIgIHUgICAgICAgICAgICAgICAgICAgICBkICAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyBieSAxIHBhZ2VcbiIKKyIgIF51ICAgICAgICAgICAgICAgICAgICBeZCAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyBieSAxIGxpbmVcbiIKKyIgIEIsIExlZnQtYXJyb3cgICAgICAgICBGLCBSaWdodC1hcnJvdyAgICAgICAgICBwYW4gZGlzcGxheSBieSAxLzMgc2NyZWVuXG4iCisiICBeYiAgICAgICAgICAgICAgICAgICAgXmYgICAgICAgICAgICAgICAgICAgICAgcGFuIGRpc3BsYXkgYnkgMSBjaGFyYWN0ZXJcbiIKKyIoVGhlc2UgYXJlIHRoZSBzYW1lIG1vdGlvbiBrZXlzIGFzIGluIHRoZSBwYWNrYWdlIGxpc3QgZGlzcGxheS4pXG4iCisiXG4iCisiUXVpdDpcbiIKKyIgUmV0dXJuLCBFbnRlciAgICBzZWxlY3QgdGhpcyBtZXRob2QgYW5kIGdvIHRvIGl0cyBjb25maWd1cmF0aW9uIGRpYWxvZ3VlXG4iCisiIHgsIFggICAgICAgICAgICAgZXhpdCB3aXRob3V0IGNoYW5naW5nIG9yIHNldHRpbmcgdXAgdGhlIGluc3RhbGxhdGlvbiAiCisibWV0aG9kXG4iCisiXG4iCisiTWlzY2VsbGFuZW91czpcbiIKKyIgID8sIEhlbHAsIEYxICAgICAgcmVxdWVzdCBoZWxwXG4iCisiIF5sICAgICAgICAgICAgICAgIHJlZHJhdyBkaXNwbGF5XG4iCisiICAvICAgICAgICAgICAgICAgIHNlYXJjaCAoanVzdCByZXR1cm4gdG8gY2FuY2VsKVxuIgorIiAgXFwgICAgICAgICAgICAgICAgcmVwZWF0IGxhc3Qgc2VhcmNoXG4iCittc2dzdHIgIiIKKyJUYXN0ZSBkZSBkZXBsYXNhcmU6IFVybcSDdG9yL0FudGVyaW9yLCDDjm5jZXB1dC9TZsOicsiZaXQsIFN1cy9Kb3MsIMOObmFwb2kvIgorIsOObmFpbnRlOlxuIgorIiAgaiwgRG93bi1hcnJvdyAgICAgICAgIGssIFVwLWFycm93ICAgICAgICAgICAgIG11dMSDIHNlbGVjyJtpYVxuIgorIiAgTiwgUGFnZS1kb3duLCBTcGFjZSAgIFAsIFBhZ2UtdXAsIEJhY2tzcGFjZSAgIGRlcnVsZWF6xIMgbGlzdGEgY3UgMSBwYWdpbsSDXG4iCisiICBebiAgICAgICAgICAgICAgICAgICAgXnAgICAgICAgICAgICAgICAgICAgICAgZGVydWxlYXrEgyBsaXN0YSBjdSAxIGxpbmllXG4iCisiICB0LCBIb21lICAgICAgICAgICAgICAgZSwgRW5kICAgICAgICAgICAgICAgICAgc2FyaSBsYSDDrm5jZXB1dHVsL3Nmw6JyyJlpdHVsICIKKyJsaXN0ZWlcbiIKKyIgIHUgICAgICAgICAgICAgICAgICAgICBkICAgICAgICAgICAgICAgICAgICAgICBkZXJ1bGVhesSDIGluZm8gY3UgMSBwYWdpbsSDXG4iCisiICBedSAgICAgICAgICAgICAgICAgICAgXmQgICAgICAgICAgICAgICAgICAgICAgZGVydWxlYXrEgyBpbmZvIGN1IDEgbGluaWVcbiIKKyIgIEIsIExlZnQtYXJyb3cgICAgICAgICBGLCBSaWdodC1hcnJvdyAgICAgICAgICBtdXTEgyBhZmnImWFyZWEgY3UgMS8zIGRlICIKKyJlY3JhblxuIgorIiAgXmIgICAgICAgICAgICAgICAgICAgIF5mICAgICAgICAgICAgICAgICAgICAgIG11dMSDIGFmaciZYXJlYSBjdSAxIGNhcmFjdGVyXG4iCisiKEFjZXN0ZWEgc3VudCBhY2VsZWHImWkgdGFzdGUgZGUgZGVwbGFzYXJlIGNhIMOubiBhZmnImWFyZWEgbGlzdGVpIGRlICIKKyJwYWNoZXRlLilcbiIKKyJcbiIKKyJUZXJtaW7EgzpcbiIKKyIgUmV0dXJuLCBFbnRlciAgICBzZWxlY3RlYXrEgyBhY2Vhc3TEgyBtZXRvZMSDIMiZaSB0cmVjaSBsYSBkaWFsb2d1bCBlaSBkZSAiCisiY29uZmlndXJhcmVcbiIKKyIgeCwgWCAgICAgICAgICAgICB0ZXJtaW7EgyBmYXLEgyBzY2hpbWLEg3JpIHNhdSBzZXRhcmVhIG1ldG9kZWkgZGUgaW5zdGFsYXJlXG4iCisiXG4iCisiRGl2ZXJzZTpcbiIKKyIgID8sIEhlbHAsIEYxICAgICAgY2VyZXJlIGRlIGFqdXRvclxuIgorIiBebCAgICAgICAgICAgICAgICByZWFmaciZYXJlIGVjcmFuXG4iCisiICAvICAgICAgICAgICAgICAgIGPEg3V0YXJlIChlbnRlciBwZW50cnUgcmVudW7Im2FyZSlcbiIKKyIgIFxcICAgICAgICAgICAgICAgIHJlcGV0xIMgdWx0aW1hIGPEg3V0YXJlXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzo2MAorbXNnaWQgIlR5cGUgZHNlbGVjdCAtLWhlbHAgZm9yIGhlbHAuIgorbXNnc3RyICJUYXN0YcibaSBkc2VsZWN0IC0taGVscCBwZW50cnUgYWp1dG9yLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0MworbXNnaWQgImEiCittc2dzdHIgImEiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDMKK21zZ2lkICJbQV1jY2VzcyIKK21zZ3N0ciAiW0FdY2NlcyIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0MworbXNnaWQgIkNob29zZSB0aGUgYWNjZXNzIG1ldGhvZCB0byB1c2UuIgorbXNnc3RyICJBbGVnZcibaSBtZXRvZGEgZGUgYWNjZXMgZm9sb3NpdMSDLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NAorbXNnaWQgInUiCittc2dzdHIgInUiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDQKK21zZ2lkICJbVV1wZGF0ZSIKK21zZ3N0ciAiQWN0W3VdYWxpemFyZSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NAorbXNnaWQgIlVwZGF0ZSBsaXN0IG9mIGF2YWlsYWJsZSBwYWNrYWdlcywgaWYgcG9zc2libGUuIgorbXNnc3RyICJBY3R1YWxpemVhesSDIGxpc3RhIHBhY2hldGVsb3IgZGlzcG9uaWJpbGUsIGRhY8SDIGVzdGUgcG9zaWJpbC4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDUKK21zZ2lkICJzIgorbXNnc3RyICJzIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ1Cittc2dpZCAiW1NdZWxlY3QiCittc2dzdHIgIltTXWVsZWPIm2llIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ1Cittc2dpZCAiUmVxdWVzdCB3aGljaCBwYWNrYWdlcyB5b3Ugd2FudCBvbiB5b3VyIHN5c3RlbS4iCittc2dzdHIgIkNlcmXIm2kgcGFjaGV0ZWxlIHBlIGNhcmUgbGUgZG9yacibaSDDrm4gc2lzdGVtdWwgZHZzLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NgorbXNnaWQgImkiCittc2dzdHIgImkiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDYKK21zZ2lkICJbSV1uc3RhbGwiCittc2dzdHIgIltJXW5zdGFsYXJlIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ2Cittc2dpZCAiSW5zdGFsbCBhbmQgdXBncmFkZSB3YW50ZWQgcGFja2FnZXMuIgorbXNnc3RyICJJbnN0YWxlYXrEgyDImWkgYWN0dWFsaXplYXrEgyBwYWNoZXRlbGUgZG9yaXRlLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NworbXNnaWQgImMiCittc2dzdHIgImMiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDcKK21zZ2lkICJbQ11vbmZpZyIKK21zZ3N0ciAiW0Ndb25maWd1cmFyZSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NworbXNnaWQgIkNvbmZpZ3VyZSBhbnkgcGFja2FnZXMgdGhhdCBhcmUgdW5jb25maWd1cmVkLiIKK21zZ3N0ciAiQ29uZmlndXJlYXrEgyBvcmljZSBwYWNoZXQgbmVjb25maWd1cmF0LiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OAorbXNnaWQgInIiCittc2dzdHIgInIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDgKK21zZ2lkICJbUl1lbW92ZSIKK21zZ3N0ciAiw45uZGVwxINbUl10YXJlIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ4Cittc2dpZCAiUmVtb3ZlIHVud2FudGVkIHNvZnR3YXJlLiIKK21zZ3N0ciAiw45uZGVwxINydGVhesSDIHByb2dyYW1lbGUgbmVkb3JpdGUuIgorCisjIHNlbW5pZmljxIMgdGFzdGEgY2FyZSB0cmVidWllIGFwxINzYXTEgywgcG9hdGUgZmkgc2NoaW1iYXTEgyBkYXIgdHJlYnVpZSBzxIMgdmVyaWZpY8SDbSBjb25mbGljdGVsZQorIzogZHNlbGVjdC9tYWluLmNjOjE0OQorbXNnaWQgInEiCittc2dzdHIgInEiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDkKK21zZ2lkICJbUV11aXQiCittc2dzdHIgIkllyJlpcmUgW3FdIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ5Cittc2dpZCAiUXVpdCBkc2VsZWN0LiIKK21zZ3N0ciAiSWXImWlyZSBkaW4gZHNlbGVjdC4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNTAKK21zZ2lkICJtZW51IgorbXNnc3RyICJtZW5pdSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE1NQorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIGhhbmRsaW5nIGZyb250ZW5kIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkludGVyZmHIm8SDIGRlIG1hbmlwdWxhcmUgYSBwYWNoZXRlbG9yIERlYmlhbiDigJ4lc+KAnSwgdmVyc2l1bmVhICVzLlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTU4Cittc2dpZCAiIgorIkNvcHlyaWdodCAoQykgMTk5NC0xOTk2IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uXG4iCittc2dzdHIgIiIKKyJEcmVwdHVyaSBkZSBhdXRvciAoQykgMTk5NC0xOTk2IElhbiBKYWNrc29uLlxuIgorIkRyZXB0dXJpIGRlIGF1dG9yIChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE2MgorIywgZnV6enkKK21zZ2lkICIiCisiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvclxuIgorImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LlxuIgorbXNnc3RyICIiCisiQWNlc3RhIGVzdGUgc29mdCBsaWJlcjsgdmV6aSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaXVuZWEgMiBzYXVcbiIKKyJ1bHRlcmlvYXLEgyBwZW50cnUgY29uZGnIm2lpbGUgZGUgY29waWVyZS4gTlUgZXhpc3TEgyBOSUNJIG8gZ2FyYW7Im2llLlxuIgorIlZlemkgJXMgLS1saWNlbmNlIHBlbnRydSBkZXRhbGlpIGRlIGxpY2VuyJtpZXJlIMiZaSBjb25kacibaWkgZGUgY29waWVyZS5cbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE3MiBkc2VsZWN0L21haW4uY2M6MjIwCittc2dpZCAiPHN0YW5kYXJkIG91dHB1dD4iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE4MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIFs8YWN0aW9uPiAuLi5dXG4iCisiXG4iCittc2dzdHIgIiIKKyJVdGlsaXphcmU6ICVzIFs8b3DIm2l1bmU+IC4uLl0gWzxhY8ibaXVuZT4gLi4uXVxuIgorIlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTg3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMuXG4iCisiICAtLWV4cGVydCAgICAgICAgICAgICAgICAgICBUdXJuIG9uIGV4cGVydCBtb2RlLlxuIgorIiAgLS1kZWJ1ZyA8ZmlsZT4gfCAtRDxmaWxlPiAgVHVybiBvbiBkZWJ1Z2dpbmcsIHNlbmRpbmcgb3V0cHV0IHRvIDxmaWxlPi5cbiIKKyIgIC0tY29sb3VyIHwgLS1jb2xvciBzY3JlZW5wYXJ0Oltmb3JlZ3JvdW5kXSxbYmFja2dyb3VuZF1bOmF0dHJbK2F0dHIrLi5dXVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ29uZmlndXJlIHNjcmVlbiBjb2xvdXJzLlxuIgorIlxuIgorbXNnc3RyICIiCisiT3DIm2l1bmk6XG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcj4gICAgICBGb2xvc2XImXRlIDxkaXJlY3Rvcj4gw65uIGxvYyBkZSAlcy5cbiIKKyIgIC0tZXhwZXJ0ICAgICAgICAgICAgICAgICAgIFBvcm5lyJl0ZSBtb2R1bCBleHBlcnQuXG4iCisiICAtLWRlYnVnIDxmaWxlPiB8IC1EPGZpbGU+ICBQb3JuZciZdGUgZGVwYW5hcmVhLCB0cmltacibw6JuZCBpZciZaXJlYSDDrm4gIgorIjxmaWxlPi5cbiIKKyIgIC0tY29sb3VyIHwgLS1jb2xvciBwYXJ0ZWVjcmFuOltwcmltIHBsYW5dLFtmdW5kYWxdWzphdHJpYlsrYXRyaWIrLi5dXVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ29uZmlndXJlYXrEgyBjdWxvcmlsZSBlY3JhbnVsdWkuXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxOTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgICBTaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorbXNnc3RyICIiCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgICBBZmnImWVhesSDIGFjZXN0IG1lc2FqIGRlIGFqdXRvci5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgIEFmaciZZWF6xIMgdmVyc2l1bmVhLlxuIgorIiAgLS1saWNlbnNlIHwgLS1saWNlbmNlICAgICAgQWZpyJllYXrEgyBsaWNlbsibYS5cbiIKKyJcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjIwMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQWN0aW9uczpcbiIKKyIgIGFjY2VzcyB1cGRhdGUgc2VsZWN0IGluc3RhbGwgY29uZmlnIHJlbW92ZSBxdWl0XG4iCisiXG4iCittc2dzdHIgIiIKKyJBY8ibaXVuaTpcbiIKKyIgIGFjY2VzcyB1cGRhdGUgc2VsZWN0IGluc3RhbGwgY29uZmlnIHJlbW92ZSBxdWl0XG4iCisiXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2NyZWVucGFydHM6XG4iCittc2dzdHIgIkNvbXBvbmVudGUgZWNyYW46XG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ29sb3VyczpcbiIKK21zZ3N0ciAiQ3Vsb3JpOlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjE1CisjLCBjLWZvcm1hdAorbXNnaWQgIkF0dHJpYnV0ZXM6XG4iCittc2dzdHIgIkF0cmlidXRlOlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjMzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkbid0IG9wZW4gZGVidWcgZmlsZSBgJS4yNTVzJ1xuIgorbXNnc3RyICJudSBwb3QgZGVzY2hpZGUgZmnImWllcnVsIGRlIGRlcGFuYXJlIOKAniUuMjU1c+KAnVxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjUzCisjLCBjLWZvcm1hdAorbXNnaWQgIkludmFsaWQgJXMgYCVzJ1xuIgorbXNnc3RyICJJbnZhbGlkICVzIOKAniVz4oCdXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyNzAKK21zZ2lkICJzY3JlZW4gcGFydCIKK21zZ3N0ciAicGFydGUgZWNyYW4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyNzYKK21zZ2lkICJOdWxsIGNvbG91ciBzcGVjaWZpY2F0aW9uXG4iCittc2dzdHIgIkxpcHPEgyBzcGVjaWZpY2HIm2llIGRlIGN1bG9hcmVcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjI4NCBkc2VsZWN0L21haW4uY2M6Mjg5Cittc2dpZCAiY29sb3VyIgorbXNnc3RyICJjdWxvYXJlIgorCisjOiBkc2VsZWN0L21haW4uY2M6Mjk3Cittc2dpZCAiY29sb3VyIGF0dHJpYnV0ZSIKK21zZ3N0ciAiYXRyaWJ1dCBjdWxvYXJlIgorCisjOiBkc2VsZWN0L21haW4uY2M6MzI5Cittc2dpZCAiVGVybWluYWwgZG9lcyBub3QgYXBwZWFyIHRvIHN1cHBvcnQgY3Vyc29yIGFkZHJlc3NpbmcuXG4iCittc2dzdHIgIlRlcm1pbmFsdWwgbnUgcGFyZSBzxIMgc3Vwb3J0ZSBhZHJlc2FyZSBsYSBuaXZlbCBkZSBjdXJzb3IuXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzozMzEKK21zZ2lkICJUZXJtaW5hbCBkb2VzIG5vdCBhcHBlYXIgdG8gc3VwcG9ydCBoaWdobGlnaHRpbmcuXG4iCittc2dzdHIgIlRlcm1pbmFsdWwgbnUgcGFyZSBzxIMgc3Vwb3J0ZSBldmlkZW7Im2llcmUuXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzozMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlNldCB5b3VyIFRFUk0gdmFyaWFibGUgY29ycmVjdGx5LCB1c2UgYSBiZXR0ZXIgdGVybWluYWwsXG4iCisib3IgbWFrZSBkbyB3aXRoIHRoZSBwZXItcGFja2FnZSBtYW5hZ2VtZW50IHRvb2wgJXMuXG4iCittc2dzdHIgIiIKKyJJbmnIm2lhbGl6YcibaSBjb3JlY3QgdmFyaWFiaWxhIGRlIG1lZGl1IFRFUk0sIGZvbG9zacibaSB1biB0ZXJtaW5hbCBtYWkgYnVuLFxuIgorInNhdSBmYWNlyJtpIGFzdGEgY3UgcHJvZ3JhbXVsIGRlIG1hbmFnZW1lbnQgcGVyIHBhY2hldCAlcy5cbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjMzNgorbXNnaWQgInRlcm1pbmFsIGxhY2tzIG5lY2Vzc2FyeSBmZWF0dXJlcywgZ2l2aW5nIHVwIgorbXNnc3RyICJ0ZXJtaW5hbHVsIG51IHN1cG9ydMSDIGNlcmluyJtlbGUgbmVjZXNhcmUsIGFiYW5kb25leiIKKworIzogZHNlbGVjdC9tYWluLmNjOjQxNworbXNnaWQgIiIKKyJcbiIKKyJcbiIKKyJNb3ZlIGFyb3VuZCB3aXRoIF5QIGFuZCBeTiwgY3Vyc29yIGtleXMsIGluaXRpYWwgbGV0dGVycywgb3IgZGlnaXRzO1xuIgorIlByZXNzIDxlbnRlcj4gdG8gY29uZmlybSBzZWxlY3Rpb24uICAgXkwgcmVkcmF3cyBzY3JlZW4uXG4iCisiXG4iCittc2dzdHIgIiIKKyJcbiIKKyJcbiIKKyJEZXBsYXNhcmUgY3UgXlAgyJlpIF5OLCB0YXN0ZWxlIGN1cnNvciwgbGl0ZXJlbGUgaW5pyJtpYWxlLCBzYXUgY2lmcmU7XG4iCisiQXDEg3NhyJtpIDxlbnRlcj4gcGVudHJ1IGNvbmZpcm1hcmVhIHNlbGVjyJtpZWkuICBeTCByZWRlc2VuZWF6xIMgZWNyYW51bC5cbiIKKyJcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjQyOAorbXNnaWQgIiIKKyJcbiIKKyJcbiIKKyJSZWFkLW9ubHkgYWNjZXNzOiBvbmx5IHByZXZpZXcgb2Ygc2VsZWN0aW9ucyBpcyBhdmFpbGFibGUhIgorbXNnc3RyICIiCisiXG4iCisiXG4iCisiQWNjZXMgZG9hciDDrm4gY2l0aXJlOiBlc3RlIGRpc3BvbmliaWzEgyBkb2FyIHZpenVhbGl6YXJlYSBzZWxlY8ibaWlsb3IhIgorCisjOiBkc2VsZWN0L21haW4uY2M6NDQ4Cittc2dpZCAiZmFpbGVkIHRvIGdldGNoIGluIG1haW4gbWVudSIKK21zZ3N0ciAiZciZZWMgw65uIGdldGNoIMOubiBtZW5pdWwgcHJpbmNpcGFsIgorCisjOiBkc2VsZWN0L21haW4uY2M6NTMxCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gYWN0aW9uIHN0cmluZyBgJS41MHMnIgorbXNnc3RyICLImWlyIGFjyJtpdW5lIG5lY3Vub3NjdXQg4oCeJS41MHPigJ0iCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6NzcKK21zZ2lkICJkc2VsZWN0IC0gbGlzdCBvZiBhY2Nlc3MgbWV0aG9kcyIKK21zZ3N0ciAiZHNlbGVjdCAtIGxpc3RhIG1ldG9kZWxvciBkZSBhY2NlcyIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzo4NgorIywgYy1mb3JtYXQKK21zZ2lkICJBY2Nlc3MgbWV0aG9kIGAlcycuIgorbXNnc3RyICJNZXRvZGEgZGUgYWNjZXMg4oCeJXPigJ0uIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjEyMAorbXNnaWQgIkFiYnJldi4iCittc2dzdHIgIlByZXNjLiIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxMjEgZHNlbGVjdC9wa2dpbmZvLmNjOjEwNSBkc2VsZWN0L3BrZ3RvcC5jYzoyOTEKK21zZ2lkICJEZXNjcmlwdGlvbiIKK21zZ3N0ciAiRGVzY3JpZXJlIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjE2NCBkc2VsZWN0L3BrZ2xpc3QuY2M6NTcyCittc2dpZCAiZG91cGRhdGUgZmFpbGVkIgorbXNnc3RyICJkb3VwZGF0ZSBhIGXImXVhdCIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxNjYgZHNlbGVjdC9wa2dsaXN0LmNjOjU3NQorbXNnaWQgImZhaWxlZCB0byB1bmJsb2NrIFNJR1dJTkNIIgorbXNnc3RyICJlyJllYyBsYSBkZWJsb2NhcmVhIGx1aSBTSUdXSU5DSCIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxNzAgZHNlbGVjdC9wa2dsaXN0LmNjOjU4MAorbXNnaWQgImZhaWxlZCB0byByZS1ibG9jayBTSUdXSU5DSCIKK21zZ3N0ciAiZciZZWMgbGEgcmVibG9jYXJlYSBsdWkgU0lHV0lOQ0giCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTcxIGRzZWxlY3QvcGtnbGlzdC5jYzo1ODIKK21zZ2lkICJnZXRjaCBmYWlsZWQiCittc2dzdHIgImXImWVjIGdldGNoIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjE4OAorbXNnaWQgIkV4cGxhbmF0aW9uIgorbXNnc3RyICJFeHBsaWNhyJtpZSIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxOTcKK21zZ2lkICJObyBleHBsYW5hdGlvbiBhdmFpbGFibGUuIgorbXNnc3RyICJOaWNpIG8gZXhwbGljYcibaWUgZGlzcG9uaWJpbMSDLiIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6NjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIlxuIgorIiVzOiAlc1xuIgorbXNnc3RyICIiCisiXG4iCisiXG4iCisiJXM6ICVzXG4iCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjcwCittc2dpZCAiIgorIlxuIgorIlByZXNzIDxlbnRlcj4gdG8gY29udGludWUuIgorbXNnc3RyICIiCisiXG4iCisiQXDEg3NhyJtpIDxlbnRlcj4gcGVudHJ1IGEgY29udGludWEuIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoxNjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHJlc3MgPGVudGVyPiB0byBjb250aW51ZS5cbiIKK21zZ3N0ciAiQXDEg3NhyJtpIDxlbnRlcj4gcGVudHJ1IGEgY29udGludWEuXG4iCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjE2MgorIywgZnV6enkKK21zZ2lkICI8c3RhbmRhcmQgZXJyb3I+IgorbXNnc3RyICJlcm9hcmUgZGUgc2NyaWVyZSBsYSBpZciZaXJlYSBzdGFuZGFyZCBkZSBlcnJvYXJlIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoxNjUKK21zZ2lkICJlcnJvciByZWFkaW5nIGFja25vd2xlZGdlbWVudCBvZiBwcm9ncmFtIGZhaWx1cmUgbWVzc2FnZSIKK21zZ3N0ciAiZXJvYXJlIGxhIGNpdGlyZWEgY29uZmlybcSDcmlpIG1lc2FqdWx1aSBkZSBlyJllYyBhbCBwcm9ncmFtdWx1aSIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MTk2Cittc2dpZCAidXBkYXRlIGF2YWlsYWJsZSBsaXN0IHNjcmlwdCIKK21zZ3N0ciAiYWN0dWFsaXplYXrEgyBzY3JpcHR1bCBkZSBsaXN0YXJlL2N1IGxpc3RlIGRpc3BvbmliaWwiCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjIwMAorbXNnaWQgImluc3RhbGxhdGlvbiBzY3JpcHQiCittc2dzdHIgInNjcmlwdCBkZSBpbnN0YWxhcmUiCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjI0NgorbXNnaWQgInF1ZXJ5L3NldHVwIHNjcmlwdCIKK21zZ3N0ciAic2NyaXB0IGRlIGludGVyb2dhcmUvcHJlZ8SDdGlyZSIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yIGluIG1ldGhvZCBvcHRpb25zIGZpbGUgYCUuMjUwcycgLS0gJXMiCittc2dzdHIgImVyb2FyZSBkZSBzaW50YXjEgyDDrm4gZmnImWllcnVsIGRlIG9wyJtpdW5pIHBlbnRydSBtZXRvZGUg4oCeJS4yNTBz4oCdIC0tICVzIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzo1OQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciByZWFkaW5nIG9wdGlvbnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiZXJvYXJlIGxhIGNpdGlyZWEgZmnImWllcnVsdWkgZGUgb3DIm2l1bmkg4oCeJS4yNTBz4oCdIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzo5MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBgJS4yNTBzJyBkaXJlY3RvcnkgZm9yIHJlYWRpbmcgbWV0aG9kcyIKK21zZ3N0ciAibnUgcG90IHPEgyBjaXRlc2MgZGlyZWN0b3J1bCDigJ4lLjI1MHPigJ0gcGVudHJ1IG1ldG9kZWxlIGRlIGNpdGlyZSIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTA2CisjLCBjLWZvcm1hdAorbXNnaWQgIm1ldGhvZCBgJS4yNTBzJyBoYXMgbmFtZSB0aGF0IGlzIHRvbyBsb25nICglZCA+ICVkIGNoYXJhY3RlcnMpIgorbXNnc3RyICJtZXRvZGEg4oCeJS4yNTBz4oCdIGFyZSB1biBudW1lIHByZWEgbHVuZyAoJWQgPiAlZCBjYXJhY3RlcmUpIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGFjY2VzcyBtZXRob2Qgc2NyaXB0IGAlLjI1MHMnIgorbXNnc3RyICJpbXBvc2liaWxpdGF0ZSBkZSBhY2NlcyBsYSBzY3JpcHR1bCBkZSBtZXRvZGUgZGUgYWNjZXMg4oCeJS4yNTBz4oCdIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgbWV0aG9kIG9wdGlvbnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiY2l0aXJlIGltcG9zaWJpbMSDIGEgZmnImWllcnVsdWkgZGUgb3DIm2l1bmkgcGVudHJ1IG1ldG9kZSDigJ4lLjI1MHPigJ0iCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE0NworbXNnaWQgIm5vbi1kaWdpdCB3aGVyZSBkaWdpdCB3YW50ZWQiCittc2dzdHIgIm5vbi1udW1lcmljIHVuZGUgc2UgY2VyZSBudW1lcmljIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNTAKK21zZ2lkICJFT0YgaW4gaW5kZXggc3RyaW5nIgorbXNnc3RyICJFT0Ygw65uIMiZaXJ1bCBpbmRleCIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTUzCittc2dpZCAiaW5kZXggc3RyaW5nIHRvbyBsb25nIgorbXNnc3RyICLImWlyIGluZGV4IHByZWEgbHVuZyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTU2Cittc2dpZCAibmV3bGluZSBiZWZvcmUgb3B0aW9uIG5hbWUgc3RhcnQiCittc2dzdHIgImxpbmllIG5vdcSDIMOubmFpbnRlIGRlIMOubmNlcGVyZWEgbnVtZWx1aSBvcMibaXVuaWkiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE1OAorbXNnaWQgIkVPRiBiZWZvcmUgb3B0aW9uIG5hbWUgc3RhcnQiCittc2dzdHIgIkVPRiDDrm5haW50ZSBkZSDDrm5jZXBlcmVhIG51bWVsdWkgb3DIm2l1bmlpIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNjIKK21zZ2lkICJub25hbHBoYSB3aGVyZSBvcHRpb24gbmFtZSBzdGFydCB3YW50ZWQiCittc2dzdHIgIm51IGVzdGUgbGl0ZXLEgyB1bmRlIHRyZWJ1aWUgc8SDIMOubmNlYXDEgyBudW1lbGUgb3DIm2l1bmlpIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNjQKK21zZ2lkICJub24tYWxwaGFudW0gaW4gb3B0aW9uIG5hbWUiCittc2dzdHIgIm5vbi1hbGZhbnVtZXJpYyDDrm4gbnVtZWxlIG9wyJtpdW5paSIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTY3Cittc2dpZCAiRU9GIGluIG9wdGlvbiBuYW1lIgorbXNnc3RyICJFT0Ygw65uIG51bWVsZSBvcMibaXVuaWkiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE3MgorbXNnaWQgIm5ld2xpbmUgYmVmb3JlIHN1bW1hcnkiCittc2dzdHIgImxpbmllIG5vdcSDIMOubmFpbnRlIGRlIHN1bWFyIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNzQKK21zZ2lkICJFT0YgYmVmb3JlIHN1bW1hcnkiCittc2dzdHIgIkVPRiDDrm5haW50ZSBkZSBzdW1hciIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTgwCittc2dpZCAiRU9GIGluIHN1bW1hcnkgLSBtaXNzaW5nIG5ld2xpbmUiCittc2dzdHIgIkVPRiDDrm4gc3VtYXIgLSBsaXBzZciZdGUgbGluaWUgbm91xIMiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE5MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBvcHRpb24gZGVzY3JpcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibnUgcG90IHPEgyBkZXNjaGlkIGZpyJlpZXJ1bCBkZSBkZXNjcmllcmUgYSBvcMibaXVuaWxvciDigJ4lLjI1MHPigJ0iCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE5NAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBvcHRpb24gZGVzY3JpcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibnUgcG90IHPEgyBjaXRlc2MgZmnImWllcnVsIGRlIGRlc2NyaWVyZSBhIG9wyJtpdW5pbG9yIOKAniUuMjUwc+KAnSIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTk4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZWFkIG9wdGlvbiBkZXNjcmlwdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJlyJllYyBsYSBjaXRpcmVhIGZpyJlpZXJ1bCBkZSBkZXNjcmllcmUgYSBvcMibaXVuaWxvciDigJ4lLjI1MHPigJ0iCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjIwMQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBkdXJpbmcgcmVhZCBvZiBvcHRpb24gZGVzY3JpcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiZXJvYXJlIMOubiB0aW1wdWwgY2l0aXJpaSBmaciZaWVydWx1aSBjdSBkZXNjcmllcmlsZSBvcMibaXVuaWxvciDigJ4lLjI1MHPigJ0iCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjIyNAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBkdXJpbmcgcmVhZCBvZiBtZXRob2Qgb3B0aW9ucyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJlcm9hcmUgw65uIHRpbXB1bCBjaXRpcmlpIGZpyJlpZXJ1bHVpIGN1IG9wyJtpdW5pIHBlbnRydSBtZXRvZGUg4oCeJS4yNTBz4oCdIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gY3VycmVudCBvcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiaW1wb3NpYmlsIGEgZGVzY2hpZGUgZmnImWllcnVsdSBjdXJlbnQgZGUgb3DIm2l1bmkg4oCeJS4yNTBz4oCdIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyODkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gbmV3IG9wdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJpbXBvc2liaWwgYSBkZXNjaGlkZSBmaciZaWVydWx1IG5vdSBkZSBvcMibaXVuaSDigJ4lLjI1MHPigJ0iCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjI5MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgbmV3IG9wdGlvbiB0byBgJS4yNTBzJyIKK21zZ3N0ciAiaW1wb3NpYmlsIGEgc2NyaWUgbm91YSBvcMibaXVuZSDDrm4g4oCeJS4yNTBz4oCdIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyOTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIG5ldyBvcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiaW1wb3NpYmlsIGEgw65uY2hpZGUgZmnImWllcnVsIG5vdSBkZSBvcMibaXVuaSDigJ4lLjI1MHPigJ0iCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjI5NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgb3B0aW9uIGFzIGAlLjI1MHMnIgorbXNnc3RyICJpbXBvc2liaWwgYSBpbnN0YWxhIG5vaWxlIG9wyJtpdW5pIGNhIOKAniUuMjUwc+KAnSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjM2Cittc2dpZCAibmV3IHBhY2thZ2UiCittc2dzdHIgInBhY2hldCBub3UiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzozNworbXNnaWQgImluc3RhbGwiCittc2dzdHIgImluc3RhbGVhesSDIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MzgKK21zZ2lkICJob2xkIgorbXNnc3RyICJwxINzdHJlYXrEgyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjM5Cittc2dpZCAicmVtb3ZlIgorbXNnc3RyICJlbGltaW7EgyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjQwCittc2dpZCAicHVyZ2UiCittc2dzdHIgImN1csSDyJvEgyIKKworIy4gVFJBTlNMQVRPUlM6IFRoZSBzcGFjZSBpcyBhIHRyaWNrIHRvIHdvcmsgYXJvdW5kIGdldHRleHQgd2hpY2ggdXNlcworIy4gKiB0aGUgZW1wdHkgc3RyaW5nIHRvIHN0b3JlIGluZm9ybWF0aW9uIGFib3V0IHRoZSB0cmFuc2xhdGlvbi4gRE8gTk9UCisjLiAqIENIQU5HRSBUSEFUIElOIEEgVFJBTlNMQVRJT04hIFRoZSBjb2RlIHJlYWxseSByZWxpZXMgb24gdGhhdCBiZWluZworIy4gKiBhIHNpbmdsZSBzcGFjZS4KKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo0NworbXNnaWQgIiAiCittc2dzdHIgIiAiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo0OAorbXNnaWQgIlJFSU5TVEFMTCIKK21zZ3N0ciAiUkVJTlNUQUxFQVrEgiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjUxCittc2dpZCAibm90IGluc3RhbGxlZCIKK21zZ3N0ciAibmVpbnN0YWxhdCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjUyCittc2dpZCAicmVtb3ZlZCAoY29uZmlncyByZW1haW4pIgorbXNnc3RyICLDrm5kZXDEg3J0YXRlIChjb25maWd1csSDcmlsZSByxINtw6JuKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjUzCittc2dpZCAiaGFsZiBpbnN0YWxsZWQiCittc2dzdHIgImp1bcSDdGF0ZSBpbnN0YWxhdGUiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1NAorbXNnaWQgInVucGFja2VkIChub3Qgc2V0IHVwKSIKK21zZ3N0ciAiZGVzcGFjaGV0YXRlIChuZXByZWfEg3RpdGUpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTUKK21zZ2lkICJoYWxmIGNvbmZpZ3VyZWQgKGNvbmZpZyBmYWlsZWQpIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1NgorbXNnaWQgImF3YWl0aW5nIHRyaWdnZXIgcHJvY2Vzc2luZyIKK21zZ3N0ciAiYciZdGVhcHTEgyBwcm9jZXNhcmVhIGRlY2xhbsiZYXRvcmlsb3IiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1NworbXNnaWQgInRyaWdnZXJlZCIKK21zZ3N0ciAiZGVjbGFuyJlhdCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjU4Cittc2dpZCAiaW5zdGFsbGVkIgorbXNnc3RyICJpbnN0YWxhdCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjYxCittc2dpZCAiUmVxdWlyZWQiCittc2dzdHIgIk5lY2VzYXJlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjIKK21zZ2lkICJJbXBvcnRhbnQiCittc2dzdHIgIkltcG9ydGFudCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjYzCittc2dpZCAiU3RhbmRhcmQiCittc2dzdHIgIlN0YW5kYXJkIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjQKK21zZ2lkICJPcHRpb25hbCIKK21zZ3N0ciAiT3DIm2lvbmFsIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjUKK21zZ2lkICJFeHRyYSIKK21zZ3N0ciAiRXh0cmEiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo2NgorbXNnaWQgIiFCdWchIgorbXNnc3RyICIhRGVmZWN0ISIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjY3Cittc2dpZCAiVW5jbGFzc2lmaWVkIgorbXNnc3RyICJOZWNsYXNpZmljYXQiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3MAorbXNnaWQgInN1Z2dlc3RzIgorbXNnc3RyICJzdWdlcmVhesSDIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzEKK21zZ2lkICJyZWNvbW1lbmRzIgorbXNnc3RyICJyZWNvbWFuZMSDIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzIKK21zZ2lkICJkZXBlbmRzIG9uIgorbXNnc3RyICJkZXBpbmRlIGRlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzMKK21zZ2lkICJwcmUtZGVwZW5kcyBvbiIKK21zZ3N0ciAiYW50ZS1kZXBlbmRlbsibxIMgZGUiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3NAorbXNnaWQgImJyZWFrcyIKK21zZ3N0ciAiY29ydXBlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzUKK21zZ2lkICJjb25mbGljdHMgd2l0aCIKK21zZ3N0ciAiw65uIGNvbmZsaWN0IGN1IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzYKK21zZ2lkICJwcm92aWRlcyIKK21zZ3N0ciAiZnVybml6ZWF6xIMiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3NworbXNnaWQgInJlcGxhY2VzIgorbXNnc3RyICLDrm5sb2N1aWXImXRlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzgKK21zZ2lkICJlbmhhbmNlcyIKK21zZ3N0ciAiw65tYnVuxIN0xIPIm2XImXRlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODEKK21zZ2lkICJSZXEiCittc2dzdHIgIk5jcyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjgyCittc2dpZCAiSW1wIgorbXNnc3RyICJJbXAiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4MworbXNnaWQgIlN0ZCIKK21zZ3N0ciAiU3RkIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODQKK21zZ2lkICJPcHQiCittc2dzdHIgIk9wyJsiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4NQorbXNnaWQgIlh0ciIKK21zZ3N0ciAiU3VwIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODYKK21zZ2lkICJiVUciCittc2dzdHIgImRGVCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjg3Cittc2dpZCAiPyIKK21zZ3N0ciAiPyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjk1IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTUKK21zZ2lkICJCcm9rZW4iCittc2dzdHIgIkRldGVyaW9yYXQiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo5NgorbXNnaWQgIk5ldyIKK21zZ3N0ciAiTm91IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6OTcKK21zZ2lkICJVcGRhdGVkIgorbXNnc3RyICJBY3R1YWxpemF0IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6OTgKK21zZ2lkICJPYnNvbGV0ZS9sb2NhbCIKK21zZ3N0ciAiw45udmVjaGl0L2xvY2FsIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6OTkKK21zZ2lkICJVcC10by1kYXRlIgorbXNnc3RyICJMYS16aSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwMAorbXNnaWQgIkF2YWlsYWJsZSIKK21zZ3N0ciAiRGlzcG9uaWJpbCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwMSBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTE3Cittc2dpZCAiUmVtb3ZlZCIKK21zZ3N0ciAiw45uZGVwxINydGF0IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTAyIGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTEKK21zZ2lkICJCcm9rZW5seSBpbnN0YWxsZWQgcGFja2FnZXMiCittc2dzdHIgIlBhY2hldGUgaW5zdGFsYXRlIGRlZmVjdHVvcyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwMworbXNnaWQgIk5ld2x5IGF2YWlsYWJsZSBwYWNrYWdlcyIKK21zZ3N0ciAiUGFjaGV0ZSBub2kgZGlzcG9uaWJpbGUiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDQKK21zZ2lkICJVcGRhdGVkIHBhY2thZ2VzIChuZXdlciB2ZXJzaW9uIGlzIGF2YWlsYWJsZSkiCittc2dzdHIgIlBhY2hldGUgYWN0dWFsaXphdGUgKGVzdGUgZGlzcG9uaWJpbMSDIG8gdmVyc2l1bmUgbWFpIG5vdcSDKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwNQorbXNnaWQgIk9ic29sZXRlIGFuZCBsb2NhbCBwYWNrYWdlcyBwcmVzZW50IG9uIHN5c3RlbSIKK21zZ3N0ciAiUGFjaGV0ZSDDrm52ZWNoaXRlIMiZaSBsb2NhbGUgZXhpc3RlbnRlIHBlIHNpc3RlbSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwNgorbXNnaWQgIlVwIHRvIGRhdGUgaW5zdGFsbGVkIHBhY2thZ2VzIgorbXNnc3RyICJQYWNoZXRlIGluc3RhbGF0ZSBhZHVzZSBsYSB6aSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwNworbXNnaWQgIkF2YWlsYWJsZSBwYWNrYWdlcyAobm90IGN1cnJlbnRseSBpbnN0YWxsZWQpIgorbXNnc3RyICJQYWNoZXRlIGRpc3BvbmliaWxlIChuZWluc3RhbGF0ZSDDrm5jxIMpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTA4Cittc2dpZCAiUmVtb3ZlZCBhbmQgbm8gbG9uZ2VyIGF2YWlsYWJsZSBwYWNrYWdlcyIKK21zZ3N0ciAiUGFjaGV0ZSDDrm5kZXDEg3J0YXRlIHNhdSBpbmRpc3BvbmliaWxlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTEyCittc2dpZCAiSW5zdGFsbGVkIHBhY2thZ2VzIgorbXNnc3RyICJQYWNoZXRlIGluc3RhbGF0ZSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExMworbXNnaWQgIlJlbW92ZWQgcGFja2FnZXMgKGNvbmZpZ3VyYXRpb24gc3RpbGwgcHJlc2VudCkiCittc2dzdHIgIlBhY2hldGUgw65uZGVwxINydGF0ZSAoY29uZmlndXJhcmVhIMOubmPEgyBwcmV6ZW50xIMpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTE0Cittc2dpZCAiUHVyZ2VkIHBhY2thZ2VzIGFuZCB0aG9zZSBuZXZlciBpbnN0YWxsZWQiCittc2dzdHIgIlBhY2hldGUgY3VyxIPIm2F0ZSDImWkgY2VsZSBjYXJlIG51IGF1IGZvc3QgbmljaW9kYXTEgyBpbnN0YWxhdGUiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTYKK21zZ2lkICJJbnN0YWxsZWQiCittc2dzdHIgIkluc3RhbGF0ZSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExOAorbXNnaWQgIlB1cmdlZCIKK21zZ3N0ciAiQ3VyxIPIm2F0ZSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjE5OAorbXNnaWQgImRzZWxlY3QgLSByZWN1cnNpdmUgcGFja2FnZSBsaXN0aW5nIgorbXNnc3RyICJkc2VsZWN0IC0gYWZpyJlhcmUgcmVjdXJzaXbEgyBhIHBhY2hldGVsb3IiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxOTkKK21zZ2lkICJkc2VsZWN0IC0gaW5zcGVjdGlvbiBvZiBwYWNrYWdlIHN0YXRlcyIKK21zZ3N0ciAiZHNlbGVjdCAtIGluc3BlY8ibaWEgc3TEg3JpaSBwYWNoZXRlbG9yIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjAwCittc2dpZCAiZHNlbGVjdCAtIG1haW4gcGFja2FnZSBsaXN0aW5nIgorbXNnc3RyICJkc2VsZWN0IC0gbGlzdGEgcHJpbmNpcGFsxIMgYSBwYWNoZXRlbG9yIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjA4Cittc2dpZCAiIChieSBzZWN0aW9uKSIKK21zZ3N0ciAiIChkdXDEgyBzZWPIm2l1bmUpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjExCittc2dpZCAiIChhdmFpbC4sIHNlY3Rpb24pIgorbXNnc3RyICIgKGRpc3BvbmliaWwsIHNlY8ibaXVuZSkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMTQKK21zZ2lkICIgKHN0YXR1cywgc2VjdGlvbikiCittc2dzdHIgIiAoc3RhcmUsIHNlY8ibaXVuZSkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMjMKK21zZ2lkICIgKGJ5IHByaW9yaXR5KSIKK21zZ3N0ciAiIChkdXDEgyBwcmlvcml0YXRlKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIyNgorbXNnaWQgIiAoYXZhaWwuLCBwcmlvcml0eSkiCittc2dzdHIgIiAoZGlzcG9uaWJpbCwgcHJpb3JpdGF0ZSkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMjkKK21zZ2lkICIgKHN0YXR1cywgcHJpb3JpdHkpIgorbXNnc3RyICIgKHN0YXJlLCBwcmlvcml0YXRlKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIzOCBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjUwCittc2dpZCAiIChhbHBoYWJldGljYWxseSkiCittc2dzdHIgIiAoYWxmYWJldGljKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI0MQorbXNnaWQgIiAoYnkgYXZhaWxhYmlsaXR5KSIKK21zZ3N0ciAiIChkdXDEgyBkaXNwb25pYmlsaXRhdGUpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjQ0Cittc2dpZCAiIChieSBzdGF0dXMpIgorbXNnc3RyICIgKGR1cMSDIHN0YXJlKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI1OAorbXNnaWQgIiBtYXJrOisvPS8tIHRlcnNlOnYgaGVscDo/IgorbXNnc3RyICIgbWFyY2hlYXrEgzorLz0vLSBjb25jaXM6diBhanV0b3I6PyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI1OQorbXNnaWQgIiBtYXJrOisvPS8tIHZlcmJvc2U6diBoZWxwOj8iCittc2dzdHIgIiBtYXJjaGVhesSDOisvPS8tIGRldGFsaWF0OnYgYWp1dG9yOj8iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNjAKK21zZ2lkICIgdGVyc2U6diBoZWxwOj8iCittc2dzdHIgIiBjb25jaXM6diBhanV0b3I6PyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI2MQorbXNnaWQgIiB2ZXJib3NlOnYgaGVscDo/IgorbXNnc3RyICIgZGV0YWxpYXQ6diBhanV0b3I6PyIKKworIzogZHNlbGVjdC9wa2dpbmZvLmNjOjgwCittc2dpZCAiIgorIlRoZSBsaW5lIHlvdSBoYXZlIGhpZ2hsaWdodGVkIHJlcHJlc2VudHMgbWFueSBwYWNrYWdlczsgaWYgeW91IGFzayB0byAiCisiaW5zdGFsbCwgcmVtb3ZlLCBob2xkLCBldGMuIGl0IHlvdSB3aWxsIGFmZmVjdCBhbGwgdGhlIHBhY2thZ2VzIHdoaWNoIG1hdGNoICIKKyJ0aGUgY3JpdGVyaW9uIHNob3duLlxuIgorIlxuIgorIklmIHlvdSBtb3ZlIHRoZSBoaWdobGlnaHQgdG8gYSBsaW5lIGZvciBhIHBhcnRpY3VsYXIgcGFja2FnZSB5b3Ugd2lsbCBzZWUgIgorImluZm9ybWF0aW9uIGFib3V0IHRoYXQgcGFja2FnZSBkaXNwbGF5ZWQgaGVyZS5cbiIKKyJZb3UgY2FuIHVzZSBgbycgYW5kIGBPJyB0byBjaGFuZ2UgdGhlIHNvcnQgb3JkZXIgYW5kIGdpdmUgeW91cnNlbGYgdGhlICIKKyJvcHBvcnR1bml0eSB0byBtYXJrIHBhY2thZ2VzIGluIGRpZmZlcmVudCBraW5kcyBvZiBncm91cHMuIgorbXNnc3RyICIiCisiUsOibmR1bCBldmlkZW7Im2lhdCByZXByZXppbnTEgyBtYWkgbXVsdGUgcGFjaGV0ZTsgZGFjxIMgY2VyZcibaSBpbnN0YWxhcmUsICIKKyLDrm5kZXDEg3J0YXJlLCBwxINzdHJhcmUsIGV0Yy4gdmEgYWZlY3RhIHRvYXRlIHBhY2hldGUgY2FyZSByZXNwZWN0xIMgY3JpdGVyaXVsICIKKyJhcsSDdGF0LlxuIgorIlxuIgorIkRhY8SDIG11dGHIm2kgY3Vyc29ydWwgcGUgdW4gcsOibmQgY3UgdW4gcGFjaGV0IGFudW1lLCB2ZcibaSB2ZWRlYSBhaWNpICIKKyJpbmZvcm1hyJtpaSBkZXNwcmUgYWNlbCBwYWNoZXQuXG4iCisiUHV0ZcibaSBmb2xvc2kg4oCeb+KAnSDImWkg4oCeT+KAnSBwZW50cnUgc2NoaW1iYXJlYSBvcmRpbmlpIGRlIHNvcnRhcmUgZMOibmR1LXbEgyAiCisicG9zaWJpbGl0YXRlYSBzxIMgbWFyY2HIm2kgcGFjaGV0ZWxlIMOubiBkaWZlcml0ZSBtb2R1cmkgZGUgZ3J1cGFyZS4iCisKKyM6IGRzZWxlY3QvcGtnaW5mby5jYzo5MworbXNnaWQgIkludGVycmVsYXRpb25zaGlwcyIKK21zZ3N0ciAiSW50ZXItcmVsYcibaWkiCisKKyM6IGRzZWxlY3QvcGtnaW5mby5jYzoxMTIKK21zZ2lkICJObyBkZXNjcmlwdGlvbiBhdmFpbGFibGUuIgorbXNnc3RyICJOaWNpIG8gZGVzY3JpZXJlIGRpc3BvbmliaWzEgy4iCisKKyM6IGRzZWxlY3QvcGtnaW5mby5jYzoxMzAKK21zZ2lkICJJbnN0YWxsZWQgY29udHJvbCBmaWxlIGluZm9ybWF0aW9uIgorbXNnc3RyICJJbmZvcm1hyJtpYSBkZSBjb250cm9sIGluc3RhbGF0xIMiCisKKyM6IGRzZWxlY3QvcGtnaW5mby5jYzoxNDYKK21zZ2lkICJBdmFpbGFibGUgY29udHJvbCBmaWxlIGluZm9ybWF0aW9uIgorbXNnc3RyICJJbmZvcm1hyJtpYSBkZSBjb250cm9sIGRpc3BvbmliaWzEgyIKKworIzogZHNlbGVjdC9wa2dsaXN0LmNjOjQxNgorbXNnaWQgIlRoZXJlIGFyZSBubyBwYWNrYWdlcy4iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dsaXN0LmNjOjUwNworbXNnaWQgImludmFsaWQgc2VhcmNoIG9wdGlvbiBnaXZlbiIKK21zZ3N0ciAib3DIm2l1bmVhIGRlIGPEg3V0YXJlIGRhdMSDIGVzdGUgaW52YWxpZMSDIgorCisjOiBkc2VsZWN0L3BrZ2xpc3QuY2M6NTIxCittc2dpZCAiZXJyb3IgaW4gcmVndWxhciBleHByZXNzaW9uIgorbXNnc3RyICJlcm9hcmUgw65uIGV4cHJlc2lhIHJlZ3VsYXTEgyIKKworIzogZHNlbGVjdC9wa2dzdWJsaXN0LmNjOjEwNworbXNnaWQgIiBkb2VzIG5vdCBhcHBlYXIgdG8gYmUgYXZhaWxhYmxlXG4iCittc2dzdHIgIm51IHBhcmUgc8SDIGZpZSBkaXNwb25pYmlsxINcbiIKKworIzogZHNlbGVjdC9wa2dzdWJsaXN0LmNjOjEyNworbXNnaWQgIiBvciAiCittc2dzdHIgIiBzYXUgIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo1NworbXNnaWQgIkFsbCIKK21zZ3N0ciAiVG90IgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo3OQorbXNnaWQgIkFsbCBwYWNrYWdlcyIKK21zZ3N0ciAiVG9hdGUgcGFjaGV0ZWxlIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo4MworIywgYy1mb3JtYXQKK21zZ2lkICIlcyBwYWNrYWdlcyB3aXRob3V0IGEgc2VjdGlvbiIKK21zZ3N0ciAiJXMgcGFjaGV0ZSBmxINyxIMgbyBzZWPIm2l1bmUiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjg1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHBhY2thZ2VzIGluIHNlY3Rpb24gJXMiCittc2dzdHIgIiVzIHBhY2hldGUgw65uIHNlY8ibaXVuZWEgJXMiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjkxCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzICVzIHBhY2thZ2VzIgorbXNnc3RyICIlcyAlcyBwYWNoZXRlIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo5NQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyAlcyBwYWNrYWdlcyB3aXRob3V0IGEgc2VjdGlvbiIKK21zZ3N0ciAiJXMgJXMgcGFjaGV0ZSBmxINyxIMgbyBzZWPIm2l1bmUiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjk3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzICVzIHBhY2thZ2VzIGluIHNlY3Rpb24gJXMiCittc2dzdHIgIiVzICVzIHBhY2hldGUgw65uIHNlY8ibaXVuZWEgJXMiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjExOAorIywgYy1mb3JtYXQKK21zZ2lkICIlLSpzICVzJXMlczsgICVzICh3YXM6ICVzKS4gICVzIgorbXNnc3RyICIlLSpzICVzJXMlczsgICVzIChhIGZvc3Q6ICVzKS4gICVzIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyNjMKK21zZ2lkICJFcnJvciIKK21zZ3N0ciAiRXJvYXJlIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyNjcKK21zZ2lkICJJbnN0YWxsZWQ/IgorbXNnc3RyICJJbnN0YWxhdD8iCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI3MQorbXNnaWQgIk9sZCBtYXJrIgorbXNnc3RyICJNYXJjYWogdmVjaGkiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI3NQorbXNnaWQgIk1hcmtlZCBmb3IiCittc2dzdHIgIk1hcmNhdCBwZW50cnUiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI3OAorbXNnaWQgIkVJT00iCittc2dzdHIgIkVJT00iCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI4MAorbXNnaWQgIlNlY3Rpb24iCittc2dzdHIgIlNlY8ibaXVuZSIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6MjgxCittc2dpZCAiUHJpb3JpdHkiCittc2dzdHIgIlByaW9yaXRhdGUiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI4MgorbXNnaWQgIlBhY2thZ2UiCittc2dzdHIgIlBhY2hldCIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6Mjg2Cittc2dpZCAiSW5zdC52ZXIiCittc2dzdHIgIlZlci4gSW5zdCIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6Mjg5Cittc2dpZCAiQXZhaWwudmVyIgorbXNnc3RyICJWZXIuZGlzcCIKKworI34gbXNnaWQgInJldHVybmVkIGVycm9yIGV4aXQgc3RhdHVzICVkLlxuIgorI34gbXNnc3RyICJzLWEgcmV0dXJuYXQgc3RhcmUgZGUgaWXImWlyZSBlcm9uYXTEgyAlZC5cbiIKKworI34gbXNnaWQgIndhcyBpbnRlcnJ1cHRlZC5cbiIKKyN+IG1zZ3N0ciAiYSBmb3N0IMOubnRyZXJ1cHQuXG4iCisKKyN+IG1zZ2lkICJ3YXMgdGVybWluYXRlZCBieSBhIHNpZ25hbDogJXMuXG4iCisjfiBtc2dzdHIgImEgZm9zdCB0ZXJtaW5hdCBkZSB1biBzZW1uYWw6ICVzLlxuIgorCisjfiBtc2dpZCAiKEl0IGxlZnQgYSBjb3JlZHVtcC4pXG4iCisjfiBtc2dzdHIgIihBIHDEg3LEg3NpdCBvIHN0YXJlIGNvcmVkdW1wLilcbiIKKworI34gbXNnaWQgImZhaWxlZCB3aXRoIGFuIHVua25vd24gd2FpdCByZXR1cm4gY29kZSAlZC5cbiIKKyN+IG1zZ3N0ciAiZciZdWF0IGN1IHJldHVybmFyZWEgdW51aSBjb2QgZGUgYciZdGVwdGFyZSBuZWN1bm9zY3V0ICVkLlxuIgorCisjIHNpcnVsIGRlIGxhIHByb2Nlc3MgZSBjYWxlIGRlIGFjY2VzIGxhIGV4ZWN1dGFiaWwKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcnVuICUuMjUwcyBwcm9jZXNzIGAlLjI1MHMnIgorI34gbXNnc3RyICJudSBwb3QgcnVsYSAlLjI1MHMgcHJvY2VzIOKAniUuMjUwc+KAnSIKKworI34gbXNnaWQgImZhaWxlZCBjb25maWciCisjfiBtc2dzdHIgImNvbmZpZ3VyYXJlIGXImXVhdMSDIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHdhaXQgZm9yICUuMjUwcyIKKyN+IG1zZ3N0ciAibnUgcG90IGHImXRlcHRhIGR1cMSDICUuMjUwcyIKKworI34gbXNnaWQgImdvdCB3cm9uZyBjaGlsZCdzIHN0YXR1cyAtIGFza2VkIGZvciAlbGQsIGdvdCAlbGQiCisjfiBtc2dzdHIgIiIKKyN+ICJhbSByZWNlcMibaW9uYXQgbyBzdGFyZSBncmXImWl0xIMgYSBwcm9jZXN1bHVpLWZpdSAtIGNlcnV0ICVsZCwgcmVjZXDIm2lvbmF0ICIKKyN+ICIlbGQiCisKKyN+IG1zZ2lkICJSZWNvbW1lbmRlZCIKKyN+IG1zZ3N0ciAiUmVjb21hbmRhdCIKKworI34gbXNnaWQgIkNvbnRyaWIiCisjfiBtc2dzdHIgIkNvbnRyaWIiCisKKyN+IG1zZ2lkICJSZWMiCisjfiBtc2dzdHIgIk5lYyIKKworI34gbXNnaWQgIkN0YiIKKyN+IG1zZ3N0ciAiQ3RiIgorCisjfiBtc2dpZCAiIgorI34gImJhc2VsaXN0OjpzdGFydGRpc3BsYXkoKSBkb25lIC4uLlxuIgorI34gIlxuIgorI34gIiB4bWF4PSVkLCB5bWF4PSVkO1xuIgorI34gIlxuIgorI34gIiB0aXRsZV9oZWlnaHQ9JWQsIGNvbGhlYWRzX2hlaWdodD0lZCwgbGlzdF9oZWlnaHQ9JWQ7XG4iCisjfiAiIHRoaXNzdGF0ZV9oZWlnaHQ9JWQsIGluZm9faGVpZ2h0PSVkLCB3aGF0aW5mb19oZWlnaHQ9JWQ7XG4iCisjfiAiXG4iCisjfiAiIGNvbGhlYWRzX3Jvdz0lZCwgdGhpc3N0YXRlX3Jvdz0lZCwgaW5mb19yb3c9JWQ7XG4iCisjfiAiIHdoYXRpbmZvX3Jvdz0lZCwgbGlzdF9yb3c9JWQ7XG4iCisjfiAiXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJiYXNlbGlzdDo6c3RhcnRkaXNwbGF5KCkgdGVybWluYXQgLi4uXG4iCisjfiAiXG4iCisjfiAiIHhtYXg9JWQsIHltYXg9JWQ7XG4iCisjfiAiXG4iCisjfiAiIHRpdGxlX2hlaWdodD0lZCwgY29saGVhZHNfaGVpZ2h0PSVkLCBsaXN0X2hlaWdodD0lZDtcbiIKKyN+ICIgdGhpc3N0YXRlX2hlaWdodD0lZCwgaW5mb19oZWlnaHQ9JWQsIHdoYXRpbmZvX2hlaWdodD0lZDtcbiIKKyN+ICJcbiIKKyN+ICIgY29saGVhZHNfcm93PSVkLCB0aGlzc3RhdGVfcm93PSVkLCBpbmZvX3Jvdz0lZDtcbiIKKyN+ICIgd2hhdGluZm9fcm93PSVkLCBsaXN0X3Jvdz0lZDtcbiIKKyN+ICJcbiIKKworI34gbXNnaWQgIltub25lXSIKKyN+IG1zZ3N0ciAiW25pY2l1bmFdIgorCisjfiBtc2dpZCAiZXJyb3IgdW4tY2F0Y2hpbmcgc2lnbmFsICVkOiAlc1xuIgorI34gbXNnc3RyICJlcm9hcmUgc2VtbmFsIG5lY2FwdHVyYXQgJWQ6ICVzXG4iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gaWdub3JlIHNpZ25hbCAlZCBiZWZvcmUgcnVubmluZyAlLjI1MHMiCisjfiBtc2dzdHIgIm51IHBvdCBpZ25vcmEgc2VtbmFsdWwgJWQgw65uYWludGUgZGUgYSBydWxhICUuMjUwcyIKKworI34gbXNnaWQgIihubyBjbGllbnRkYXRhKSIKKyN+IG1zZ3N0ciAiKGRhdGUgY2xpZW50IGxpcHPEgykiCisKKyN+IG1zZ2lkICI8bnVsbD4iCisjfiBtc2dzdHIgIjxudWxsPiIKKworI34gbXNnaWQgImludGVycmVsYXRpb25zaGlwcyBhZmZlY3RpbmcgIgorI34gbXNnc3RyICJyZWxhyJtpaSBpbnRlcm5lIGNhcmUgYWZlY3RlYXrEgyAiCisKKyN+IG1zZ2lkICJkZXNjcmlwdGlvbiBvZiAiCisjfiBtc2dzdHIgImRlc2NyaWVyZSBhICIKKworI34gbXNnaWQgImRlc2NyaXB0aW9uIgorI34gbXNnc3RyICJkZXNjcmllcmUiCisKKyN+IG1zZ2lkICJjdXJyZW50bHkgaW5zdGFsbGVkIGNvbnRyb2wgaW5mbyIKKyN+IG1zZ3N0ciAiaW5mb3JtYcibaWEgZGUgY29udHJvbCBpbnN0YWxhdMSDIMOubiBwcmV6ZW50IgorCisjfiBtc2dpZCAiYXZhaWxhYmxlIHZlcnNpb24gb2YgY29udHJvbCBpbmZvIGZvciAiCisjfiBtc2dzdHIgInZlcnNpdW5lIGRpc3BvbmliaWzEgyBhIGluZm9ybWHIm2llaSBkZSBjb250cm9sIHBlbnRydSIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9ydS5nbW8gYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vcnUuZ21vCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmFiMDAxMTYKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vcnUuZ21vCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9ydS5wbyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9ydS5wbwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45NjM3YWRjCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL3J1LnBvCkBAIC0wLDAgKzEsMTY3MSBAQAorIyB0cmFuc2xhdGlvbiBvZiBkc2VsZWN0X3BvX3J1LnBvIHRvIFJ1c3NpYW4KKyMgTG9jYWxpemF0aW9uIGZpbGUgZm9yIGRwa2cgYW5kIG90aGVyIHByb2dyYW1zIGZyb20gZHBrZyBwYWNrYWdlLgorIyBDb3B5cmlnaHQgKEMpIDE5OTkgTWljaGFlbCBTb2JvbGV2CisjCisjIE1pY2hhZWwgU29ib2xldiA8bXNzQHRyYW5zYXMuY29tPiwgMTk5OS4KKyMgWXVyaSBLb3psb3YgPGtvemxvdi55QGdtYWlsLmNvbT4sIDIwMDQsIDIwMDUsIDIwMDYsIDIwMDcsIDIwMDguCisjIFl1cmkgS296bG92IDx5dXJheUBrb215YWtpbm8ucnU+LCAyMDA5LCAyMDEwLgorbXNnaWQgIiIKK21zZ3N0ciAiIgorIlByb2plY3QtSWQtVmVyc2lvbjogZHBrZyAxLjE1LjcuMVxuIgorIlJlcG9ydC1Nc2dpZC1CdWdzLVRvOiBkZWJpYW4tZHBrZ0BsaXN0cy5kZWJpYW4ub3JnXG4iCisiUE9ULUNyZWF0aW9uLURhdGU6IDIwMTEtMTAtMTQgMDc6MTErMDIwMFxuIgorIlBPLVJldmlzaW9uLURhdGU6IDIwMTAtMDQtMjUgMjI6MzcrMDQwMFxuIgorIkxhc3QtVHJhbnNsYXRvcjogWXVyaSBLb3psb3YgPHl1cmF5QGtvbXlha2luby5ydT5cbiIKKyJMYW5ndWFnZS1UZWFtOiBSdXNzaWFuIDxkZWJpYW4tbDEwbi1ydXNzaWFuQGxpc3RzLmRlYmlhbi5vcmc+XG4iCisiTGFuZ3VhZ2U6IHJ1XG4iCisiTUlNRS1WZXJzaW9uOiAxLjBcbiIKKyJDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9VVRGLThcbiIKKyJDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiA4Yml0XG4iCisiWC1HZW5lcmF0b3I6IEtCYWJlbCAxLjExLjRcbiIKKyJQbHVyYWwtRm9ybXM6ICBucGx1cmFscz0zOyBwbHVyYWw9KG4lMTA9PTEgJiYgbiUxMDAhPTExID8gMCA6IG4lMTA+PTIgJiYgbiIKKyIlMTA8PTQgJiYgKG4lMTAwPDEwIHx8IG4lMTAwPj0yMCkgPyAxIDogMik7XG4iCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MTI1Cittc2dpZCAiU2VhcmNoIGZvciA/ICIKK21zZ3N0ciAi0JjRgdC60LDRgtGMOiAiCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MTQ3Cittc2dpZCAiRXJyb3I6ICIKK21zZ3N0ciAi0J7RiNC40LHQutCwOiAiCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MTc4Cittc2dpZCAiSGVscDogIgorbXNnc3RyICLQodC/0YDQsNCy0LrQsDogIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE4NAorbXNnaWQgIlByZXNzID8gZm9yIGhlbHAgbWVudSwgLiBmb3IgbmV4dCB0b3BpYywgPHNwYWNlPiB0byBleGl0IGhlbHAuIgorbXNnc3RyICIiCisi0J3QsNC20LzQuNGC0LUgPyDQtNC70Y8g0L/QtdGA0LXRhdC+0LTQsCDQsiDQvNC10L3RjiDRgdC/0YDQsNCy0LrQuCwgLiDQtNC70Y8g0L/QtdGA0LXRhdC+0LTQsCDQuiDRgdC70LXQtNGD0Y7RidC10Lkg0YLQtdC80LUsICIKKyI8c3BhY2U+INC00LvRjyDQstGL0YXQvtC00LAg0LjQtyDRgdC/0YDQsNCy0LrQuCIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxOTEKK21zZ2lkICJIZWxwIGluZm9ybWF0aW9uIGlzIGF2YWlsYWJsZSB1bmRlciB0aGUgZm9sbG93aW5nIHRvcGljczoiCittc2dzdHIgItCU0L7RgdGC0YPQv9C90LAg0YHQv9GA0LDQstC+0YfQvdCw0Y8g0LjQvdGE0L7RgNC80LDRhtC40Y8g0L/QviDRgdC70LXQtNGD0Y7RidC40Lwg0YLQtdC80LDQvDoiCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MTk5Cittc2dpZCAiIgorIlByZXNzIGEga2V5IGZyb20gdGhlIGxpc3QgYWJvdmUsIDxzcGFjZT4gb3IgYHEnIHRvIGV4aXQgaGVscCxcbiIKKyIgIG9yIGAuJyAoZnVsbCBzdG9wKSB0byByZWFkIGVhY2ggaGVscCBwYWdlIGluIHR1cm4uICIKK21zZ3N0ciAiIgorItCd0LDQttC80LjRgtC1INC+0LTQvdGDINC40Lcg0LLRi9GI0LXQv9C10YDQtdGH0LjRgdC70LXQvdC90YvRhSDQutC70LDQstC40YgsIDxzcGFjZT4g0LjQu9C4IGBxJyDQtNC70Y8g0LLRi9GF0L7QtNCwXG4iCisi0LjQu9C4IGAuJyAo0YLQvtGH0LrQsCkg0LTQu9GPINC/0L7RgdC70LXQtNC+0LLQsNGC0LXQu9GM0L3QvtCz0L4g0L/RgNC+0YHQvNC+0YLRgNCwINGB0YLRgNCw0L3QuNGGLiAiCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MjA1Cittc2dpZCAiZXJyb3IgcmVhZGluZyBrZXlib2FyZCBpbiBoZWxwIgorbXNnc3RyICLQvtGI0LjQsdC60LAg0LLQstC+0LTQsCDRgSDQutC70LDQstC40LDRgtGD0YDRiyDQsiDRgdC/0YDQsNCy0LrQtSIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo1NworbXNnaWQgImlvY3RsKFRJT0NHV0lOU1opIGZhaWxlZCIKK21zZ3N0ciAi0YDQsNCx0L7RgtCwINGE0YPQvdC60YbQuNC4IGlvY3RsKFRJT0NHV0lOU1opINC30LDQstC10YDRiNC40LvQsNGB0Ywg0L3QtdGD0LTQsNGH0L3QviIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo2MAorbXNnaWQgImRvdXBkYXRlIGluIFNJR1dJTkNIIGhhbmRsZXIgZmFpbGVkIgorbXNnc3RyICIiCisi0YDQsNCx0L7RgtCwINGE0YPQvdC60YbQuNC4IGRvdXBkYXRlINCyINC+0LHRgNCw0LHQvtGC0YfQuNC60LUg0YHQuNCz0L3QsNC70LAgU0lHV0lOQ0gg0LfQsNCy0LXRgNGI0LjQu9Cw0YHRjCDQvdC10YPQtNCw0YfQvdC+IgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjY3Cittc2dpZCAiZmFpbGVkIHRvIHJlc3RvcmUgb2xkIFNJR1dJTkNIIHNpZ2FjdCIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQstC+0YHRgdGC0LDQvdC+0LLQuNGC0Ywg0YHRgtCw0YDRi9C5INC+0LHRgNCw0LHQvtGC0YfQuNC6INGB0LjQs9C90LDQu9CwIFNJR1dJTkNIIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjY5Cittc2dpZCAiZmFpbGVkIHRvIHJlc3RvcmUgb2xkIHNpZ25hbCBtYXNrIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINCy0L7RgdGB0YLQsNC90L7QstC40YLRjCDRgdGC0LDRgNGD0Y4g0LzQsNGB0LrRgyDRgdC40LPQvdCw0LvQvtCyIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjc5Cittc2dpZCAiZmFpbGVkIHRvIGdldCBvbGQgc2lnbmFsIG1hc2siCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L/QvtC70YPRh9C40YLRjCDRgdGC0LDRgNGD0Y4g0LzQsNGB0LrRgyDRgdC40LPQvdCw0LvQvtCyIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjgwCittc2dpZCAiZmFpbGVkIHRvIGdldCBvbGQgU0lHV0lOQ0ggc2lnYWN0IgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC/0L7Qu9GD0YfQuNGC0Ywg0YHRgtCw0YDRi9C5INC+0LHRgNCw0LHQvtGC0YfQuNC6INGB0LjQs9C90LDQu9CwIFNJR1dJTkNIIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjg0Cittc2dpZCAiZmFpbGVkIHRvIGJsb2NrIFNJR1dJTkNIIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINCx0LvQvtC60LjRgNC+0LLQsNGC0Ywg0YHQuNCz0L3QsNC7IFNJR1dJTkNIIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjg5Cittc2dpZCAiZmFpbGVkIHRvIHNldCBuZXcgU0lHV0lOQ0ggc2lnYWN0IgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGD0YHRgtCw0L3QvtCy0LjRgtGMINC90L7QstGL0Lkg0L7QsdGA0LDQsdC+0YLRh9C40Log0YHQuNCz0L3QsNC70LAgU0lHV0lOQ0giCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTI2Cittc2dpZCAiZmFpbGVkIHRvIGFsbG9jYXRlIGNvbG91ciBwYWlyIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINCy0YvQtNC10LvQuNGC0Ywg0YbQstC10YLQvtCy0YPRjiDQv9Cw0YDRgyIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxNjcKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHRpdGxlIHdpbmRvdyIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRgdC+0LfQtNCw0YLRjCDQvtC60L3QviDQt9Cw0LPQvtC70L7QstC60LAiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTcxCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSB3aGF0aW5mbyB3aW5kb3ciCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0YHQvtC30LTQsNGC0Ywg0L7QutC90L4gd2hhdGluZm8iCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTc1Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBiYXNlbGlzdCBwYWQiCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0YHQvtC30LTQsNGC0Ywg0YHRgtGA0LDQvdC40YbRgyBiYXNlbGlzdCIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxNzgKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGhlYWRpbmcgcGFkIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGB0L7Qt9C00LDRgtGMINGB0YLRgNCw0L3QuNGG0YMgaGVhZGluZyIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxODIKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHRoaXNzdGF0ZSBwYWQiCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0YHQvtC30LTQsNGC0Ywg0YHRgtGA0LDQvdC40YbRgyB0aGlzc3RhdGUiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTg2Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBpbmZvIHBhZCIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRgdC+0LfQtNCw0YLRjCDRgdGC0YDQsNC90LjRhtGDIGluZm8iCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTkxCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBxdWVyeSB3aW5kb3ciCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0YHQvtC30LTQsNGC0Ywg0L7QutC90L4g0LfQsNC/0YDQvtGB0LAiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MjU1Cittc2dpZCAiS2V5YmluZGluZ3MiCittc2dzdHIgItCT0L7RgNGP0YfQuNC1INC60LvQsNCy0LjRiNC4IgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjMwMworIywgYy1mb3JtYXQKK21zZ2lkICIgIC0tICVkJSUsIHByZXNzICIKK21zZ3N0ciAiICAtLSAlZCUlLCDRh9GC0L7QsdGLICIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzozMDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgZm9yIG1vcmUiCittc2dzdHIgItC/0L7Qu9GD0YfQuNGC0Ywg0L/QvtC00YDQvtCx0L3Rg9GOINC40L3RhNC+0YDQvNCw0YbQuNGOLCDQvdCw0LbQvNC40YLQtSAlcyIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzozMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgdG8gZ28gYmFjayIKK21zZ3N0ciAi0LLQtdGA0L3Rg9GC0YzRgdGPLCDQvdCw0LbQvNC40YLQtSAlcyIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzo3OAorbXNnaWQgIltub3QgYm91bmRdIgorbXNnc3RyICJb0L3QtSDRgdC+0L/QvtGB0YLQsNCy0LvQtdC90LBdIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjgyCisjLCBjLWZvcm1hdAorbXNnaWQgIlt1bms6ICVkXSIKK21zZ3N0ciAiW9C90LXQuNC30LI6ICVkXSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxMzkKK21zZ2lkICJTY3JvbGwgb253YXJkcyB0aHJvdWdoIGhlbHAvaW5mb3JtYXRpb24iCittc2dzdHIgItCf0YDQvtC60YDRg9GC0LrQsCDRgdC/0YDQsNCy0LrQuC/QuNC90YTQvtGA0LzQsNGG0LjQuCDQsiDQv9GA0Y/QvNC+0Lwg0L3QsNC/0YDQsNCy0LvQtdC90LjQuCIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDAKK21zZ2lkICJTY3JvbGwgYmFja3dhcmRzIHRocm91Z2ggaGVscC9pbmZvcm1hdGlvbiIKK21zZ3N0ciAi0J/RgNC+0LrRgNGD0YLQutCwINGB0L/RgNCw0LLQutC4L9C40L3RhNC+0YDQvNCw0YbQuNC4INCyINC+0LHRgNCw0YLQvdC+0Lwg0L3QsNC/0YDQsNCy0LvQtdC90LjQuCIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDEKK21zZ2lkICJNb3ZlIHVwIgorbXNnc3RyICLQktCy0LXRgNGFIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0MgorbXNnaWQgIk1vdmUgZG93biIKK21zZ3N0ciAi0JLQvdC40LciCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQzCittc2dpZCAiR28gdG8gdG9wIG9mIGxpc3QiCittc2dzdHIgItCf0LXRgNC10LnRgtC4INCyINC90LDRh9Cw0LvQviDRgdC/0LjRgdC60LAiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ0Cittc2dpZCAiR28gdG8gZW5kIG9mIGxpc3QiCittc2dzdHIgItCf0LXRgNC10LnRgtC4INCyINC60L7QvdC10YYg0YHQv9C40YHQutCwIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0NQorbXNnaWQgIlJlcXVlc3QgaGVscCAoY3ljbGUgdGhyb3VnaCBoZWxwIHNjcmVlbnMpIgorbXNnc3RyICLQodC/0YDQsNCy0LrQsCAo0YbQuNC60LvQuNGH0LXRgdC60LjQuSDQv9GA0L7RhdC+0LQg0L/QviDRjdC60YDQsNC90LDQvCDRgdC/0YDQsNCy0LrQuCkiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ2Cittc2dpZCAiQ3ljbGUgdGhyb3VnaCBpbmZvcm1hdGlvbiBkaXNwbGF5cyIKK21zZ3N0ciAi0KbQuNC60LvQuNGH0LXRgdC60LjQuSDQv9GA0L7RhdC+0LQg0L/QviDRjdC60YDQsNC90LDQvCDQuNC90YTQvtGA0LzQsNGG0LjQuCIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDcKK21zZ2lkICJSZWRyYXcgZGlzcGxheSIKK21zZ3N0ciAi0J/QtdGA0LXRgNC40YHQvtCy0LDRgtGMINGN0LrRgNCw0L0iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ4Cittc2dpZCAiU2Nyb2xsIG9ud2FyZHMgdGhyb3VnaCBsaXN0IGJ5IDEgbGluZSIKK21zZ3N0ciAi0J/RgNC+0LrRgNGD0YLQutCwINGB0L/QuNGB0LrQsCDQsiDQv9GA0Y/QvNC+0Lwg0L3QsNC/0YDQsNCy0LvQtdC90LjQuCDQv9C+INC+0LTQvdC+0Lkg0YHRgtGA0L7QutC1IgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0OQorbXNnaWQgIlNjcm9sbCBiYWNrd2FyZHMgdGhyb3VnaCBsaXN0IGJ5IDEgbGluZSIKK21zZ3N0ciAi0J/RgNC+0LrRgNGD0YLQutCwINGB0L/QuNGB0LrQsCDQsiDQvtCx0YDQsNGC0L3QvtC8INC90LDQv9GA0LDQstC70LXQvdC40Lgg0L/QviDQvtC00L3QvtC5INGB0YLRgNC+0LrQtSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTAKK21zZ2lkICJTY3JvbGwgb253YXJkcyB0aHJvdWdoIGhlbHAvaW5mb3JtYXRpb24gYnkgMSBsaW5lIgorbXNnc3RyICLQn9GA0L7QutGA0YPRgtC60LAg0YHQv9GA0LDQstC60Lgv0LjQvdGE0L7RgNC80LDRhtC40Lgg0LIg0L/RgNGP0LzQvtC8INC90LDQv9GA0LDQstC70LXQvdC40Lgg0L/QviDQvtC00L3QvtC5INGB0YLRgNC+0LrQtSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTEKK21zZ2lkICJTY3JvbGwgYmFja3dhcmRzIHRocm91Z2ggaGVscC9pbmZvcm1hdGlvbiBieSAxIGxpbmUiCittc2dzdHIgItCf0YDQvtC60YDRg9GC0LrQsCDRgdC/0YDQsNCy0LrQuC/QuNC90YTQvtGA0LzQsNGG0LjQuCDQsiDQvtCx0YDQsNGC0L3QvtC8INC90LDQv9GA0LDQstC70LXQvdC40Lgg0L/QviDQvtC00L3QvtC5INGB0YLRgNC+0LrQtSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTIKK21zZ2lkICJTY3JvbGwgb253YXJkcyB0aHJvdWdoIGxpc3QiCittc2dzdHIgItCf0YDQvtC60YDRg9GC0LrQsCDRgdC/0LjRgdC60LAg0LIg0L/RgNGP0LzQvtC8INC90LDQv9GA0LDQstC70LXQvdC40LgiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTUzCittc2dpZCAiU2Nyb2xsIGJhY2t3YXJkcyB0aHJvdWdoIGxpc3QiCittc2dzdHIgItCf0YDQvtC60YDRg9GC0LrQsCDRgdC/0LjRgdC60LAg0LIg0L7QsdGA0LDRgtC90L7QvCDQvdCw0L/RgNCw0LLQu9C10L3QuNC4IgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1NgorbXNnaWQgIk1hcmsgcGFja2FnZShzKSBmb3IgaW5zdGFsbGF0aW9uIgorbXNnc3RyICLQn9C+0LzQtdGC0LjRgtGMINC/0LDQutC10YIo0YspINC00LvRjyDRg9GB0YLQsNC90L7QstC60LgiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTU3Cittc2dpZCAiTWFyayBwYWNrYWdlKHMpIGZvciBkZWluc3RhbGxhdGlvbiIKK21zZ3N0ciAi0J/QvtC80LXRgtC40YLRjCDQv9Cw0LrQtdGCKNGLKSDQtNC70Y8g0YPQtNCw0LvQtdC90LjRjyIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTgKK21zZ2lkICJNYXJrIHBhY2thZ2UocykgZm9yIGRlaW5zdGFsbCBhbmQgcHVyZ2UiCittc2dzdHIgItCf0L7QvNC10YLQuNGC0Ywg0L/QsNC60LXRgijRiykg0LTQu9GPINGD0LTQsNC70LXQvdC40Y8g0Lgg0LLRi9GH0LjRgdGC0LrQuCIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTkKK21zZ2lkICJNYWtlIGhpZ2hsaWdodCBtb3JlIHNwZWNpZmljIgorbXNnc3RyICLQodC00LXQu9Cw0YLRjCDQv9C+0LTRgdCy0LXRgtC60YMg0LHQvtC70LXQtSDQutC+0L3RgtGA0LDRgdGC0L3QvtC5IgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2MAorbXNnaWQgIk1ha2UgaGlnaGxpZ2h0IGxlc3Mgc3BlY2lmaWMiCittc2dzdHIgItCh0LTQtdC70LDRgtGMINC/0L7QtNGB0LLQtdGC0LrRgyDQvNC10L3QtdC1INC60L7QvdGC0YDQsNGB0YLQvdC+0LkiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTYxCittc2dpZCAiU2VhcmNoIGZvciBhIHBhY2thZ2Ugd2hvc2UgbmFtZSBjb250YWlucyBhIHN0cmluZyIKK21zZ3N0ciAi0J3QsNC50YLQuCDQv9Cw0LrQtdGCLCDQuNC80Y8g0LrQvtGC0L7RgNC+0LPQviDRgdC+0LTQtdGA0LbQuNGCINGB0YLRgNC+0LrRgyIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjIKK21zZ2lkICJSZXBlYXQgbGFzdCBzZWFyY2guIgorbXNnc3RyICLQn9C+0LLRgtC+0YDQuNGC0Ywg0L/QvtGB0LvQtdC00L3QuNC5INC/0L7QuNGB0LouIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2MworbXNnaWQgIlN3YXAgc29ydCBvcmRlciBwcmlvcml0eS9zZWN0aW9uIgorbXNnc3RyICLQn9C+0LzQtdC90Y/RgtGMINC/0L7RgNGP0LTQvtC6INC/0YDQuNC+0YDQuNGC0LXRgtC+0LIg0YHQvtGA0YLQuNGA0L7QstC60Lgg0L/RgNC40L7RgNC40YLQtdGCL9GA0LDQt9C00LXQuyIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjQKK21zZ2lkICJRdWl0LCBjb25maXJtaW5nLCBhbmQgY2hlY2tpbmcgZGVwZW5kZW5jaWVzIgorbXNnc3RyICLQktGL0LnRgtC4LCDQv9C+0LTRgtCy0LXRgNC00LjQsiDQstGL0LHQvtGAINC4INC/0YDQvtCy0LXRgNC40LIg0LfQsNCy0LjRgdC40LzQvtGB0YLQuCIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjUKK21zZ2lkICJRdWl0LCBjb25maXJtaW5nIHdpdGhvdXQgY2hlY2siCittc2dzdHIgItCS0YvQudGC0LgsINC/0L7QtNGC0LLQtdGA0LTQuNCyINCy0YvQsdC+0YAsINC90L4g0L3QtSDQv9GA0L7QstC10YDRj9GPINC30LDQstC40YHQuNC80L7RgdGC0LgiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY2Cittc2dpZCAiUXVpdCwgcmVqZWN0aW5nIGNvbmZsaWN0L2RlcGVuZGVuY3kgc3VnZ2VzdGlvbnMiCittc2dzdHIgItCS0YvQudGC0LgsINC+0YLQstC10YDQs9C90YPQsiDQv9GA0LXQtNC70L7QttC10L3QuNGPLCDRgdCy0Y/Qt9Cw0L3QvdGL0LUg0YEg0LrQvtC90YTQu9C40LrRgtCw0LzQuCDQuCDQt9Cw0LLQuNGB0LjQvNC+0YHRgtGP0LzQuCIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjcKK21zZ2lkICJBYm9ydCAtIHF1aXQgd2l0aG91dCBtYWtpbmcgY2hhbmdlcyIKK21zZ3N0ciAi0JLRi9GF0L7QtCDQsdC10Lcg0YHQvtGF0YDQsNC90LXQvdC40Y8g0LjQt9C80LXQvdC10L3QuNC5IgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2OAorbXNnaWQgIlJldmVydCB0byBvbGQgc3RhdGUgZm9yIGFsbCBwYWNrYWdlcyIKK21zZ3N0ciAi0JLQtdGA0L3Rg9GC0Ywg0LLRgdC1INC/0LDQutC10YLRiyDQuiDQv9GA0LXQtNGL0LTRg9GJ0LXQvNGDINGB0L7RgdGC0L7Rj9C90LjRjiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjkKK21zZ2lkICJSZXZlcnQgdG8gc3VnZ2VzdGVkIHN0YXRlIGZvciBhbGwgcGFja2FnZXMiCittc2dzdHIgItCS0LXRgNC90YPRgtGMINCy0YHQtSDQv9Cw0LrQtdGC0Ysg0Log0L/RgNC10LTQu9C+0LbQtdC90L3QvtC80YMg0L/RgNC+0LPRgNCw0LzQvNC+0Lkg0YHQvtGB0YLQvtGP0L3QuNGOIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE3MAorbXNnaWQgIlJldmVydCB0byBkaXJlY3RseSByZXF1ZXN0ZWQgc3RhdGUgZm9yIGFsbCBwYWNrYWdlcyIKK21zZ3N0ciAi0JLQtdGA0L3Rg9GC0Ywg0LLRgdC1INC/0LDQutC10YLRiyDQuiDQvdC10L/QvtGB0YDQtdC00YHRgtCy0LXQvdC90L4g0LfQsNGC0YDQtdCx0L7QstCw0L3QvdC+0LzRgyDRgdC+0YHRgtC+0Y/QvdC40Y4iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTcxCittc2dpZCAiUmV2ZXJ0IHRvIGN1cnJlbnRseSBpbnN0YWxsZWQgc3RhdGUgZm9yIGFsbCBwYWNrYWdlcyIKK21zZ3N0ciAi0JLQtdGA0L3Rg9GC0Ywg0LLRgdC1INC/0LDQutC10YLRiyDQuiDRg9GB0YLQsNC90L7QstC70LXQvdC90L7QvNGDINCyINC00LDQvdC90YvQuSDQvNC+0LzQtdC90YIg0YHQvtGB0YLQvtGP0L3QuNGOIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE3NAorbXNnaWQgIlNlbGVjdCBjdXJyZW50bHktaGlnaGxpZ2h0ZWQgYWNjZXNzIG1ldGhvZCIKK21zZ3N0ciAi0JLRi9Cx0YDQsNGC0Ywg0LLRi9C00LXQu9C10L3QvdGL0Lkg0LzQtdGC0L7QtCDQtNC+0YHRgtGD0L/QsCIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNzUKK21zZ2lkICJRdWl0IHdpdGhvdXQgY2hhbmdpbmcgc2VsZWN0ZWQgYWNjZXNzIG1ldGhvZCIKK21zZ3N0ciAi0JLRi9GF0L7QtCDQsdC10Lcg0LjQt9C80LXQvdC10L3QuNGPINCy0YvQsdGA0LDQvdC90L7Qs9C+INC80LXRgtC+0LTQsCDQtNC+0YHRgtGD0L/QsCIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoyOQorbXNnaWQgIktleXN0cm9rZXMiCittc2dzdHIgItCT0L7RgNGP0YfQuNC1INC60LvQsNCy0LjRiNC4IgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjI5Cittc2dpZCAiIgorIk1vdGlvbiBrZXlzOiBOZXh0L1ByZXZpb3VzLCBUb3AvRW5kLCBVcC9Eb3duLCBCYWNrd2FyZHMvRm9yd2FyZHM6XG4iCisiICBqLCBEb3duLWFycm93ICAgICAgICAgaywgVXAtYXJyb3cgICAgICAgICAgICAgbW92ZSBoaWdobGlnaHRcbiIKKyIgIE4sIFBhZ2UtZG93biwgU3BhY2UgICBQLCBQYWdlLXVwLCBCYWNrc3BhY2UgICBzY3JvbGwgbGlzdCBieSAxIHBhZ2VcbiIKKyIgIF5uICAgICAgICAgICAgICAgICAgICBecCAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgbGlzdCBieSAxIGxpbmVcbiIKKyIgIHQsIEhvbWUgICAgICAgICAgICAgICBlLCBFbmQgICAgICAgICAgICAgICAgICBqdW1wIHRvIHRvcC9lbmQgb2YgbGlzdFxuIgorIiAgdSAgICAgICAgICAgICAgICAgICAgIGQgICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIGJ5IDEgcGFnZVxuIgorIiAgXnUgICAgICAgICAgICAgICAgICAgIF5kICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIGJ5IDEgbGluZVxuIgorIiAgQiwgTGVmdC1hcnJvdyAgICAgICAgIEYsIFJpZ2h0LWFycm93ICAgICAgICAgIHBhbiBkaXNwbGF5IGJ5IDEvMyBzY3JlZW5cbiIKKyIgIF5iICAgICAgICAgICAgICAgICAgICBeZiAgICAgICAgICAgICAgICAgICAgICBwYW4gZGlzcGxheSBieSAxIGNoYXJhY3RlclxuIgorIlxuIgorIk1hcmsgcGFja2FnZXMgZm9yIGxhdGVyIHByb2Nlc3Npbmc6XG4iCisiICssIEluc2VydCAgaW5zdGFsbCBvciB1cGdyYWRlICAgICAgPSwgSCAgaG9sZCBpbiBwcmVzZW50IHN0YXRlXG4iCisiIC0sIERlbGV0ZSAgcmVtb3ZlICAgICAgICAgICAgICAgICAgOiwgRyAgdW5ob2xkOiB1cGdyYWRlIG9yIGxlYXZlICIKKyJ1bmluc3RhbGxlZFxuIgorIiBfICAgICAgICAgIHJlbW92ZSAmIHB1cmdlIGNvbmZpZ1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1pc2NlbGxhbmVvdXM6XG4iCisiUXVpdCwgZXhpdCwgb3ZlcndyaXRlIChub3RlIGNhcGl0YWxzISk6ICAgICAgID8sIEYxIHJlcXVlc3QgaGVscCAoYWxzbyAiCisiSGVscClcbiIKKyIgUmV0dXJuICBDb25maXJtLCBxdWl0IChjaGVjayBkZXBlbmRlbmNpZXMpICAgaSwgSSAgdG9nZ2xlL2N5Y2xlIGluZm8gIgorImRpc3BsYXlzXG4iCisiICAgUSAgICAgQ29uZmlybSwgcXVpdCAob3ZlcnJpZGUgZGVwLnMpICAgICAgIG8sIE8gIGN5Y2xlIHRocm91Z2ggc29ydCAiCisib3B0aW9uc1xuIgorIiBYLCBFc2MgIGVYaXQsIGFiYW5kb25pbmcgYW55IGNoYW5nZXMgbWFkZSAgICB2LCBWICBjaGFuZ2Ugc3RhdHVzIGRpc3BsYXkgIgorIm9wdHNcbiIKKyIgICBSICAgICBSZXZlcnQgdG8gc3RhdGUgYmVmb3JlIHRoaXMgbGlzdCAgICAgIF5sICAgcmVkcmF3IGRpc3BsYXlcbiIKKyIgICBVICAgICBzZXQgYWxsIHRvIHNVZ2dlc3RlZCBzdGF0ZSAgICAgICAgICAgICAvICAgc2VhcmNoIChSZXR1cm4gdG8gIgorImNhbmNlbClcbiIKKyIgICBEICAgICBzZXQgYWxsIHRvIERpcmVjdGx5IHJlcXVlc3RlZCBzdGF0ZSAgbiwgXFwgIHJlcGVhdCBsYXN0IHNlYXJjaFxuIgorbXNnc3RyICIiCisi0JrQu9Cw0LLQuNGI0Lgg0L/QtdGA0LXQvNC10YnQtdC90LjRjzog0KHQu9C10LQv0J/RgNC10LQsINCd0LDRhy/QmtC+0L0sINCS0LXRgNGFL9Cd0LjQtywg0J3QsNC30LDQtC/QktC/0LXRgNGR0LQ6XG4iCisiICBqLCDRgdGC0YDQtdC70LrQsCDQstC90LjQtywgICAgICBrLCDRgdGC0YDQtdC70LrQsCDQstCy0LXRgNGFLCAgICAg0L/QtdGA0LXQvNC10YnQtdC90LjQtSDQstGL0LTQtdC70LXQvdC40Y9cbiIKKyIgIE4sIFBhZ2VEb3duLCDQv9GA0L7QsdC10LsgICAgIFAsIFBhZ2VVcCwgQmFja3NwYWNlICAgINC/0YDQvtC60YDRg9GC0LrQsCDRgdC/0LjRgdC60LAg0L3QsCAiCisi0YHRgtGA0LDQvdC40YbRg1xuIgorIiAgXm4gICAgICAgICAgICAgICAgICAgICAgXnAgICAgICAgICAgICAgICAgICAgICAg0L/RgNC+0LrRgNGD0YLQutCwINGB0L/QuNGB0LrQsCDQvdCwICIKKyLRgdGC0YDQvtC60YNcbiIKKyIgIHQsIEhvbWUgICAgICAgICAgICAgICAgIGUsIEVuZCAgICAgICAgICAgICAgICAgINC/0LXRgNC10YXQvtC0INCyINC90LDRh9Cw0LvQvi/QutC+0L3QtdGGICIKKyLRgdC/0LjRgdC60LBcbiIKKyIgIHUgICAgICAgICAgICAgICAgICAgICAgIGQgICAgICAgICAgICAgICAgICAgICAgINC/0YDQvtC60YDRg9GC0LrQsCDQuNC90YQt0YbQuNC4INC90LAgIgorItGB0YLRgNCw0L3QuNGG0YNcbiIKKyIgIF51ICAgICAgICAgICAgICAgICAgICAgIF5kICAgICAgICAgICAgICAgICAgICAgINC/0YDQvtC60YDRg9GC0LrQsCDQuNC90YQt0YbQuNC4INC90LAgIgorItGB0YLRgNC+0LrRg1xuIgorIiAgQiwg0YHRgtGA0LXQu9C60LAg0LLQu9C10LLQviAgICAgICAgRiwg0YHRgtGA0LXQu9C60LAg0LLQv9GA0LDQstC+ICAgICAgINC/0YDQvtC60YDRg9GC0LrQsCDQsiDRgdGC0L7RgNC+0L3Rg1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgINC90LAgMS8zINGN0LrRgNCw0L3QsFxuIgorIiAgXmIgICAgICAgICAgICAgICAgICAgICAgXmYgICAgICAgICAgICAgICAgICAgICAg0L/RgNC+0LrRgNGD0YLQutCwINCyINGB0YLQvtGA0L7QvdGDXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg0L3QsCAxINC60L7Qu9C+0L3QutGDXG4iCisiXG4iCisi0J/QvtC80LXRgtC60LAg0L/QsNC60LXRgtC+0LIg0LTQu9GPINC00LDQu9GM0L3QtdC50YjQtdC5INC+0LHRgNCw0LHQvtGC0LrQuDpcbiIKKyIgKywgSW5zZXJ0ICDRg9GB0YLQsNC90L7QstC40YLRjCDQuNC70Lgg0L7QsdC90L7QstC40YLRjCAgPSwgSCAg0LfQsNGE0LjQutGB0LjRgNC+0LLQsNGC0Ywg0LIg0YLQtdC60YPRidC10LwgIgorItGB0L7RgdGC0L7Rj9C90LjQuFxuIgorIiAtLCBEZWxldGUgINGD0LTQsNC70LjRgtGMICAgICAgICAgICAgICAgICAgOiwgRyAg0YDQsNGB0YTQuNC60YHQuNGA0L7QstCw0YLRjDog0L7QsdC90L7QstC40YLRjCDQuNC70LhcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg0L7RgdGC0LDQstC40YLRjCDQvdC10YPRgdGC0LDQvdC+0LLQu9C10L3QvdGL0LxcbiIKKyIgXyAgICAgICAgICDRg9C00LDQu9C40YLRjCDQuCDQstGL0YfQuNGB0YLQuNGC0Ywg0YTQsNC50LvRiyDQutC+0L3RhNC40LPRg9GA0LDRhtC40LhcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDQoNCw0LfQu9C40YfQvdGL0LU6XG4iCisi0JLRi9GF0L7QtCwg0L/QtdGA0LXQt9Cw0L/QuNGB0YwgKNC60LDQv9C40YLQsNC70LjQt9Cw0YbQuNGPINCy0LDQttC90LAhKTogICAgID8sIEYxINCy0YvQt9C+0LIg0YHQv9GA0LDQstC60LggKNGC0LDQutC20LUgIgorIkhlbHApXG4iCisiICDQktCy0L7QtCAg0J/QvtC00YLQstC10YDQtNC40YLRjCwg0LLRi9C50YLQuCAo0L/RgNC+0LLQtdGA0LrQsCDQt9Cw0LLQuNGB0LjQvNC+0YHRgtC10LkpIGksIEkgINC/0LXRgNC10LrQu9GO0YfQtdC90LjQtSAiCisi0Y3QutGA0LDQvdC+0LJcbiIKKyIgICBRICAgINCf0L7QtNGC0LLQtdGA0LTQuNGC0YwsINCy0YvQudGC0LggKNC90LUg0L/RgNC+0LLQtdGA0Y/RjykgICAgICBvLCBPICDQv9C10YDQtdC60LvRjtGH0LXQvdC40LUg0L/QvtGA0Y/QtNC60LBcbiIKKyIgWCwgRXNjINCS0YvQudGC0LgsINC+0YLQvNC10L3QuNGC0Ywg0LLRgdC1INC40LfQvNC10L3QtdC90LjRjyAgICAgICAgIHYsIFYgINC40LfQvNC10L3QuNGC0Ywg0Y3QutGA0LDQvSAiCisi0YHQvtGB0YLQvtGP0L3QuNGPXG4iCisiICAgUiAgICDQktC10YDQvdGD0YLRjNGB0Y8g0Log0L/RgNC10LTRi9C00YPRidC10LzRgyDRgdC+0YHRgtC+0Y/QvdC40Y4gICAgICBebCAgINC/0LXRgNC10YDQuNGB0L7QstCw0YLRjCDRjdC60YDQsNC9XG4iCisiICAgVSAgICDQo9GB0YLQsNC90L7QstC40YLRjCDQv9GA0LXQtNC70L7QttC10L3QvdC+0LUg0L/RgNC+0LPRgNCw0LzQvNC+0LkgICAgICAvICAg0L/QvtC40YHQuiAo0LLQstC+0LQg0LTQu9GPINC+0YLQvNC10L3RiylcbiIKKyIgICAgICAgINGB0L7RgdGC0L7Rj9C90LjQtSDQtNC70Y8g0LLRgdC10YUg0L/QsNC60LXRgtC+0LJcbiIKKyIgICBEICAgINCj0YHRgtCw0L3QvtCy0LjRgtGMINC90LXQv9C+0YHRgNC10LTRgdGC0LLQtdC90L3QviAgICAgICAgICAgIG4sIFxcICAg0L/QvtCy0YLQvtGA0LjRgtGMINC/0L7RgdC70LXQtNC90LjQuSAiCisi0L/QvtC40YHQulxuIgorIiAgICAgICAg0LfQsNGC0YDQtdCx0L7QstCw0L3QvdC+0LUg0YHQvtGB0YLQvtGP0L3QuNC1INC00LvRjyDQstGB0LXRhSDQv9Cw0LrQtdGC0L7QslxuIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjU1Cittc2dpZCAiSW50cm9kdWN0aW9uIHRvIHBhY2thZ2Ugc2VsZWN0aW9ucyIKK21zZ3N0ciAi0JLQstC+0LTQvdCw0Y8g0LjQvdGE0L7RgNC80LDRhtC40Y8g0L4g0YHQv9C40YHQutC1INC/0LDQutC10YLQvtCyIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjU1Cittc2dpZCAiIgorIldlbGNvbWUgdG8gZHNlbGVjdCdzIG1haW4gcGFja2FnZSBsaXN0aW5nLlxuIgorIlxuIgorIllvdSB3aWxsIGJlIHByZXNlbnRlZCB3aXRoIGEgbGlzdCBvZiBwYWNrYWdlcyB3aGljaCBhcmUgaW5zdGFsbGVkIG9yICIKKyJhdmFpbGFibGVcbiIKKyJmb3IgaW5zdGFsbGF0aW9uLiAgWW91IGNhbiBuYXZpZ2F0ZSBhcm91bmQgdGhlIGxpc3QgdXNpbmcgdGhlIGN1cnNvciBrZXlzLFxuIgorIm1hcmsgcGFja2FnZXMgZm9yIGluc3RhbGxhdGlvbiAodXNpbmcgYCsnKSBvciBkZWluc3RhbGxhdGlvbiAodXNpbmcgYC0nKS5cbiIKKyJQYWNrYWdlcyBjYW4gYmUgbWFya2VkIGVpdGhlciBzaW5nbHkgb3IgaW4gZ3JvdXBzOyBpbml0aWFsbHkgeW91IHdpbGwgc2VlICIKKyJ0aGF0XG4iCisidGhlIGxpbmUgYEFsbCBwYWNrYWdlcycgaXMgc2VsZWN0ZWQuICBgKycsIGAtJyBhbmQgc28gb24gd2lsbCBhZmZlY3QgYWxsICIKKyJ0aGVcbiIKKyJwYWNrYWdlcyBkZXNjcmliZWQgYnkgdGhlIGhpZ2hsaWdodGVkIGxpbmUuXG4iCisiXG4iCisiU29tZSBvZiB5b3VyIGNob2ljZXMgd2lsbCBjYXVzZSBjb25mbGljdHMgb3IgZGVwZW5kZW5jeSBwcm9ibGVtczsgeW91IHdpbGwgIgorImJlXG4iCisiZ2l2ZW4gYSBzdWItbGlzdCBvZiB0aGUgcmVsZXZhbnQgcGFja2FnZXMsIHNvIHRoYXQgeW91IGNhbiBzb2x2ZSB0aGUgIgorInByb2JsZW1zLlxuIgorIlxuIgorIllvdSBzaG91bGQgcmVhZCB0aGUgbGlzdCBvZiBrZXlzIGFuZCB0aGUgZXhwbGFuYXRpb25zIG9mIHRoZSBkaXNwbGF5LlxuIgorIk11Y2ggb24tbGluZSBoZWxwIGlzIGF2YWlsYWJsZSwgcGxlYXNlIG1ha2UgdXNlIG9mIGl0IC0gcHJlc3MgYD8nIGF0XG4iCisiYW55IHRpbWUgZm9yIGhlbHAuXG4iCisiXG4iCisiV2hlbiB5b3UgaGF2ZSBmaW5pc2hlZCBzZWxlY3RpbmcgcGFja2FnZXMsIHByZXNzIDxlbnRlcj4gdG8gY29uZmlybSAiCisiY2hhbmdlcyxcbiIKKyJvciBgWCcgdG8gcXVpdCB3aXRob3V0IHNhdmluZyBjaGFuZ2VzLiBBIGZpbmFsIGNoZWNrIG9uIGNvbmZsaWN0cyBhbmRcbiIKKyJkZXBlbmRlbmNpZXMgd2lsbCBiZSBkb25lIC0gaGVyZSB0b28geW91IG1heSBzZWUgYSBzdWJsaXN0LlxuIgorIlxuIgorIlByZXNzIDxzcGFjZT4gdG8gbGVhdmUgaGVscCBhbmQgZW50ZXIgdGhlIGxpc3Qgbm93LlxuIgorbXNnc3RyICIiCisi0JTQvtCx0YDQviDQv9C+0LbQsNC70L7QstCw0YLRjCDQsiDQvtGB0L3QvtCy0L3QvtC5INGB0L/QuNGB0L7QuiDQv9Cw0LrQtdGC0L7QsiDQv9GA0L7Qs9GA0LDQvNC80YsgZHNlbGVjdCFcbiIKKyJcbiIKKyLQktGLINGD0LLQuNC00LjRgtC1INGB0L/QuNGB0L7QuiDQv9Cw0LrQtdGC0L7Qsiwg0LrQvtGC0L7RgNGL0LUg0YPRgdGC0LDQvdC+0LLQu9C10L3RiyDQuNC70Lgg0LTQvtGB0YLRg9C/0L3RiyDQtNC70Y8g0YPRgdGC0LDQvdC+0LLQutC4LlxuIgorItCS0Ysg0LzQvtC20LXRgtC1INC/0LXRgNC10LTQstC40LPQsNGC0YzRgdGPINC/0L4g0YHQv9C40YHQutGDLCDQuNGB0L/QvtC70YzQt9GD0Y8g0LrQu9Cw0LLQuNGI0Lgg0YPQv9GA0LDQstC70LXQvdC40Y8g0LrRg9GA0YHQvtGA0L7QvCxcbiIKKyLQvtGC0LzQtdGH0LDRgtGMINC/0LDQutC10YLRiyDQtNC70Y8g0YPRgdGC0LDQvdC+0LLQutC4ICjQuNGB0L/QvtC70YzQt9GD0Y8g0LrQu9Cw0LLQuNGI0YMgYCsnKSDQuNC70Lgg0YPQtNCw0LvQtdC90LjRj1xuIgorIijRgdC+0L7RgtCy0LXRgtGB0YLQstC10L3QvdC+LCBgLScpLlxuIgorItCf0LDQutC10YLRiyDQvNC+0LPRg9GCINC/0L7QvNC10YfQsNGC0YzRgdGPINC60LDQuiDQv9C+INC+0YLQtNC10LvRjNC90L7RgdGC0LgsINGC0LDQuiDQuCDQs9GA0YPQv9C/0LDQvNC4LiDQkiDQvdCw0YfQsNC70LUg0LLRi1xuIgorItGD0LLQuNC00LjRgtC1LCDRh9GC0L4g0LLRi9C00LXQu9C10L3QsCDRgdGC0YDQvtC60LAgYNCS0YHQtSDQv9Cw0LrQtdGC0YsnLiDQmtC70LDQstC40YjQuCBgKycsIGAtJyDQuCDRgi7QtC4g0LHRg9C00YPRglxuIgorItCy0LvQuNGP0YLRjCDQvdCwINCy0YHQtSDQv9Cw0LrQtdGC0YssINC+0L/QuNGB0LDQvdC90YvQtSDQstGL0LTQtdC70LXQvdC90L7QuSDRgdGC0YDQvtC60L7QuS5cbiIKKyJcbiIKKyLQndC10LrQvtGC0L7RgNGL0LUg0LLQsNGI0Lgg0YDQtdGI0LXQvdC40Y8g0LLRi9C30L7QstGD0YIg0LrQvtC90YTQu9C40LrRgtGLINC40LvQuCDQv9GA0L7QsdC70LXQvNGLINC30LDQstC40YHQuNC80L7RgdGC0LXQuS4g0JIg0Y3RgtC+0LxcbiIKKyLRgdC70YPRh9Cw0LUg0LLRiyDQv9C+0LvRg9GH0LjRgtC1INGB0L/QuNGB0L7QuiDQt9Cw0YLRgNC+0L3Rg9GC0YvRhSDQv9Cw0LrQtdGC0L7Qsiwg0YfRgtC+0LHRiyDQvNC+0LbQvdC+INCx0YvQu9C+INGA0LXRiNC40YLRjCAiCisi0L/RgNC+0LHQu9C10LzRgy5cbiIKKyJcbiIKKyLQktCw0Lwg0YHQu9C10LTRg9C10YIg0L/RgNC+0YfQtdGB0YLRjCDRgdC/0LjRgdC+0Log0LrQu9Cw0LLQuNGIINC4INC/0L7Rj9GB0L3QtdC90LjRjyDQuiDRjdC60YDQsNC90LDQvC4g0KHQv9GA0LDQstC60LAg0LTQvtGB0YLRg9C/0L3QsFxuIgorItCyINC70Y7QsdC+0Lkg0LzQvtC80LXQvdGCIC0tINC/0YDQvtGB0YLQviDQvdCw0LbQvNC40YLQtSDQutC70LDQstC40YjRgyBgPycuXG4iCisiXG4iCisi0JrQvtCz0LTQsCDQstGLINC30LDQutC+0L3Rh9C40YLQtSDQstGL0LHQvtGAINC/0LDQutC10YLQvtCyLCDQvdCw0LbQvNC40YLQtSA8ZW50ZXI+LCDRh9GC0L7QsdGLINC/0L7QtNGC0LLQtdGA0LTQuNGC0YxcbiIKKyLQuNC30LzQtdC90LXQvdC40Y8g0LjQu9C4INC60LvQsNCy0LjRiNGDIGBYJywg0YfRgtC+0LHRiyDQstGL0LnRgtC4LCDQvdC1INGB0L7RhdGA0LDQvdGP0Y8g0LLQsNGIINCy0YvQsdC+0YAuINCV0YHQu9C4ICIKKyLQuNC30LzQtdC90LXQvdC40Y9cbiIKKyLQv9C+0LTRgtCy0LXRgNC20LTQtdC90YssINC/0YDQvtC40LfQstC+0LTQuNGC0YHRjyDQvtC60L7QvdGH0LDRgtC10LvRjNC90LDRjyDQv9GA0L7QstC10YDQutCwINC60L7QvdGE0LvQuNC60YLQvtCyINC4ICIKKyLQt9Cw0LLQuNGB0LjQvNC+0YHRgtC10LkuXG4iCisi0J/RgNC4INGN0YLQvtC8INCy0Ysg0YLQvtC20LUg0LzQvtC20LXRgtC1INGD0LLQuNC00LXRgtGMINC00L7Qv9C+0LvQvdC40YLQtdC70YzQvdGL0Lkg0YHQv9C40YHQvtC6INC/0LDQutC10YLQvtCyLlxuIgorIlxuIgorItCn0YLQvtCx0Ysg0LLRi9C50YLQuCDQuNC3INGB0L/RgNCw0LLQutC4INC4INCy0L7QudGC0Lgg0LIg0YHQv9C40YHQvtC6INC/0LDQutC10YLQvtCyLCDQvdCw0LbQvNC40YLQtSA8c3BhY2U+LlxuIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjgwCittc2dpZCAiSW50cm9kdWN0aW9uIHRvIHJlYWQtb25seSBwYWNrYWdlIGxpc3QgYnJvd3NlciIKK21zZ3N0ciAi0JLQstC+0LTQvdCw0Y8g0LjQvdGE0L7RgNC80LDRhtC40Y8g0L4g0L/RgNC+0YHQvNC+0YLRgNC1INGB0L/QuNGB0LrQtSDQv9Cw0LrQtdGC0L7QsiDQsiDRgNC10LbQuNC80LUg0YfRgtC10L3QuNGPIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjgwCittc2dpZCAiIgorIldlbGNvbWUgdG8gZHNlbGVjdCdzIG1haW4gcGFja2FnZSBsaXN0aW5nLlxuIgorIlxuIgorIllvdSB3aWxsIGJlIHByZXNlbnRlZCB3aXRoIGEgbGlzdCBvZiBwYWNrYWdlcyB3aGljaCBhcmUgaW5zdGFsbGVkIG9yICIKKyJhdmFpbGFibGVcbiIKKyJmb3IgaW5zdGFsbGF0aW9uLiAgU2luY2UgeW91IGRvIG5vdCBoYXZlIHRoZSBwcml2aWxlZ2UgbmVjZXNzYXJ5IHRvIHVwZGF0ZVxuIgorInBhY2thZ2Ugc3RhdGVzLCB5b3UgYXJlIGluIGEgcmVhZC1vbmx5IG1vZGUuICBZb3UgY2FuIG5hdmlnYXRlIGFyb3VuZCB0aGVcbiIKKyJsaXN0IHVzaW5nIHRoZSBjdXJzb3Iga2V5cyAocGxlYXNlIHNlZSB0aGUgYEtleXN0cm9rZXMnIGhlbHAgc2NyZWVuKSwgIgorIm9ic2VydmVcbiIKKyJ0aGUgc3RhdHVzIG9mIHRoZSBwYWNrYWdlcyBhbmQgcmVhZCBpbmZvcm1hdGlvbiBhYm91dCB0aGVtLlxuIgorIlxuIgorIllvdSBzaG91bGQgcmVhZCB0aGUgbGlzdCBvZiBrZXlzIGFuZCB0aGUgZXhwbGFuYXRpb25zIG9mIHRoZSBkaXNwbGF5LlxuIgorIk11Y2ggb24tbGluZSBoZWxwIGlzIGF2YWlsYWJsZSwgcGxlYXNlIG1ha2UgdXNlIG9mIGl0IC0gcHJlc3MgYD8nIGF0XG4iCisiYW55IHRpbWUgZm9yIGhlbHAuXG4iCisiXG4iCisiV2hlbiB5b3UgaGF2ZSBmaW5pc2hlZCBicm93c2luZywgcHJlc3MgYFEnIG9yIDxlbnRlcj4gdG8gcXVpdC5cbiIKKyJcbiIKKyJQcmVzcyA8c3BhY2U+IHRvIGxlYXZlIGhlbHAgYW5kIGVudGVyIHRoZSBsaXN0IG5vdy5cbiIKK21zZ3N0ciAiIgorItCU0L7QsdGA0L4g0L/QvtC20LDQu9C+0LLQsNGC0Ywg0LIg0L7RgdC90L7QstC90L7QuSDRgdC/0LjRgdC+0Log0L/QsNC60LXRgtC+0LIg0L/RgNC+0LPRgNCw0LzQvNGLIGRzZWxlY3QhXG4iCisiXG4iCisi0JLRiyDRg9Cy0LjQtNC40YLQtSDRgdC/0LjRgdC+0Log0L/QsNC60LXRgtC+0LIsINC60L7RgtC+0YDRi9C1INGD0YHRgtCw0L3QvtCy0LvQtdC90Ysg0LjQu9C4INC00L7RgdGC0YPQv9C90Ysg0LTQu9GPINGD0YHRgtCw0L3QvtCy0LrQuC5cbiIKKyLQn9C+0YHQutC+0LvRjNC60YMg0YMg0LLQsNGBINC90LXRgiDQv9GA0LDQsiDQvdCwINC40LfQvNC10L3QtdC90LjQtSDRgdC+0YHRgtC+0Y/QvdC40Y8g0L/QsNC60YLQvtCyLCDQstGLINC90LDRhdC+0LTQuNGC0LXRgdGMINCyXG4iCisi0YDQtdC20LjQvNC1INGH0YLQtdC90LjRjy4g0JLRiyDQvNC+0LbQtdGC0LUg0L/QtdGA0LXQtNCy0LjQs9Cw0YLRjNGB0Y8g0L/QviDRgdC/0LjRgdC60YMsINC40YHQv9C+0LvRjNC30YPRjyDQutC70LDQstC40YjQuFxuIgorItGD0L/RgNCw0LLQu9C10L3QuNGPINC60YPRgNGB0L7RgNC+0LwgKNGB0LwuINGN0LrRgNCw0L0g0YHQv9GA0LDQstC60LggYNCT0L7RgNGP0YfQuNC1INC60LvQsNCy0LjRiNC4JyksINCy0LjQtNC10YLRjCDRgdC+0YHRgtC+0Y/QvdC40LVcbiIKKyLQv9Cw0LrQtdGC0L7QsiDQuCDRh9C40YLQsNGC0Ywg0LrQsNGB0LDRjtGJ0YPRjtGB0Y8g0LjRhSDQuNC90YTQvtGA0LzQsNGG0LjRji5cbiIKKyJcbiIKKyLQktCw0Lwg0YHQu9C10LTRg9C10YIg0L/RgNC+0YfQtdGB0YLRjCDRgdC/0LjRgdC+0Log0LrQu9Cw0LLQuNGIINC4INC/0L7Rj9GB0L3QtdC90LjRjyDQuiDRjdC60YDQsNC90LDQvC4g0KHQv9GA0LDQstC60LAg0LTQvtGB0YLRg9C/0L3QsFxuIgorItCyINC70Y7QsdC+0Lkg0LzQvtC80LXQvdGCIC0tINC/0YDQvtGB0YLQviDQvdCw0LbQvNC40YLQtSDQutC70LDQstC40YjRgyBgPycuXG4iCisiXG4iCisi0JrQvtCz0LTQsCDQstGLINC30LDQutC+0L3Rh9C40YLQtSDQv9GA0L7RgdC80L7RgtGALCDQvdCw0LbQvNC40YLQtSDQutC70LDQstC40YjRgyA8ZW50ZXI+INC40LvQuCBgUScsINGH0YLQvtCx0YtcbiIKKyLQstGL0LnRgtC4INC40Lcg0YHQv9C40YHQutCwINC/0LDQutC10YLQvtCyLlxuIgorIlxuIgorItCn0YLQvtCx0Ysg0LLRi9C50YLQuCDQuNC3INGB0L/RgNCw0LLQutC4INC4INCy0L7QudGC0Lgg0LIg0YHQv9C40YHQvtC6INC/0LDQutC10YLQvtCyLCDQvdCw0LbQvNC40YLQtSA8c3BhY2U+LlxuIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjk5Cittc2dpZCAiSW50cm9kdWN0aW9uIHRvIGNvbmZsaWN0L2RlcGVuZGVuY3kgcmVzb2x1dGlvbiBzdWItbGlzdCIKK21zZ3N0ciAiIgorItCS0LLQvtC00L3QsNGPINC40L3RhNC+0YDQvNCw0YbQuNGPINC+INCy0LvQvtC20LXQvdC90L7QvCDRgdC/0LjRgdC60LUg0L/QsNC60LXRgtC+0LIg0LTQu9GPINGA0LDQt9GA0LXRiNC10L3QuNGPINC60L7QvdGE0LvQuNC60YLQvtCyLyIKKyLQt9Cw0LLQuNGB0LjQvNC+0YHRgtC10LkiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6OTkKK21zZ2lkICIiCisiRGVwZW5kZW5jeS9jb25mbGljdCByZXNvbHV0aW9uIC0gaW50cm9kdWN0aW9uLlxuIgorIlxuIgorIk9uZSBvciBtb3JlIG9mIHlvdXIgY2hvaWNlcyBoYXZlIHJhaXNlZCBhIGNvbmZsaWN0IG9yIGRlcGVuZGVuY3kgcHJvYmxlbSAtXG4iCisic29tZSBwYWNrYWdlcyBzaG91bGQgb25seSBiZSBpbnN0YWxsZWQgaW4gY29uanVuY3Rpb24gd2l0aCBjZXJ0YWluIG90aGVycywgIgorImFuZFxuIgorInNvbWUgY29tYmluYXRpb25zIG9mIHBhY2thZ2VzIG1heSBub3QgYmUgaW5zdGFsbGVkIHRvZ2V0aGVyLlxuIgorIlxuIgorIllvdSB3aWxsIHNlZSBhIHN1Yi1saXN0IGNvbnRhaW5pbmcgdGhlIHBhY2thZ2VzIGludm9sdmVkLiAgVGhlIGJvdHRvbSBoYWxmICIKKyJvZlxuIgorInRoZSBkaXNwbGF5IHNob3dzIHJlbGV2YW50IGNvbmZsaWN0cyBhbmQgZGVwZW5kZW5jaWVzOyB1c2UgYGknIHRvIGN5Y2xlICIKKyJiZXR3ZWVuXG4iCisidGhhdCwgdGhlIHBhY2thZ2UgZGVzY3JpcHRpb25zIGFuZCB0aGUgaW50ZXJuYWwgY29udHJvbCBpbmZvcm1hdGlvbi5cbiIKKyJcbiIKKyJBIHNldCBvZiBgc3VnZ2VzdGVkJyBwYWNrYWdlcyBoYXMgYmVlbiBjYWxjdWxhdGVkLCBhbmQgdGhlIGluaXRpYWwgbWFya2luZ3MgIgorImluXG4iCisidGhpcyBzdWItbGlzdCBoYXZlIGJlZW4gc2V0IHRvIG1hdGNoIHRob3NlLCBzbyB5b3UgY2FuIGp1c3QgaGl0IFJldHVybiB0b1xuIgorImFjY2VwdCB0aGUgc3VnZ2VzdGlvbnMgaWYgeW91IHdpc2guICBZb3UgbWF5IGFib3J0IHRoZSBjaGFuZ2Uocykgd2hpY2ggIgorImNhdXNlZFxuIgorInRoZSBwcm9ibGVtKHMpLCBhbmQgZ28gYmFjayB0byB0aGUgbWFpbiBsaXN0LCBieSBwcmVzc2luZyBjYXBpdGFsIGBYJy5cbiIKKyJcbiIKKyJZb3UgY2FuIGFsc28gbW92ZSBhcm91bmQgdGhlIGxpc3QgYW5kIGNoYW5nZSB0aGUgbWFya2luZ3Mgc28gdGhhdCB0aGV5IGFyZSAiCisibW9yZVxuIgorImxpa2Ugd2hhdCB5b3Ugd2FudCwgYW5kIHlvdSBjYW4gYHJlamVjdCcgbXkgc3VnZ2VzdGlvbnMgYnkgdXNpbmcgdGhlICIKKyJjYXBpdGFsXG4iCisiYEQnIG9yIGBSJyBrZXlzIChzZWUgdGhlIGtleWJpbmRpbmdzIGhlbHAgc2NyZWVuKS4gIFlvdSBjYW4gdXNlIGNhcGl0YWwgYFEnICIKKyJ0b1xuIgorImZvcmNlIG1lIHRvIGFjY2VwdCB0aGUgc2l0dWF0aW9uIGN1cnJlbnRseSBkaXNwbGF5ZWQsIGluIGNhc2UgeW91IHdhbnQgdG9cbiIKKyJvdmVycmlkZSBhIHJlY29tbWVuZGF0aW9uIG9yIHRoaW5rIHRoYXQgdGhlIHByb2dyYW0gaXMgbWlzdGFrZW4uXG4iCisiXG4iCisiUHJlc3MgPHNwYWNlPiB0byBsZWF2ZSBoZWxwIGFuZCBlbnRlciB0aGUgc3ViLWxpc3Q7IHJlbWVtYmVyOiBwcmVzcyBgPycgZm9yICIKKyJoZWxwLlxuIgorbXNnc3RyICIiCisi0KDQsNC30YDQtdGI0LXQvdC40LUg0LfQsNCy0LjRgdC40LzQvtGB0YLQtdC5INC4INC60L7QvdGE0LvQuNC60YLQvtCyIC0tINCy0LLQtdC00LXQvdC40LUuXG4iCisiXG4iCisi0JLQsNGIINCy0YvQsdC+0YAg0LzQvtC20LXRgiDQstGL0LfQstCw0YLRjCDQutC+0L3RhNC70LjQutGCINC40LvQuCDQv9GA0L7QsdC70LXQvNGDINC30LDQstC40YHQuNC80L7RgdGC0LXQuSAtLSDQvdC10LrQvtGC0L7RgNGL0LVcbiIKKyLQv9Cw0LrQtdGC0Ysg0LzQvtCz0YPRgiDRg9GB0YLQsNC90LDQstC70LjQstCw0YLRjNGB0Y8g0YLQvtC70YzQutC+INCy0LzQtdGB0YLQtSDRgSDQvdC10LrQvtGC0L7RgNGL0LzQuCDQtNGA0YPQs9C40LzQuCwg0LBcbiIKKyLQvdC10LrQvtGC0L7RgNGL0LUg0LrQvtC80LHQuNC90LDRhtC40Lgg0L/QsNC60LXRgtC+0LIg0L3QtSDQvNC+0LPRg9GCINCx0YvRgtGMINGD0YHRgtCw0L3QvtCy0LvQtdC90Ysg0YHQvtCy0LzQtdGB0YLQvdC+LlxuIgorIlxuIgorItCSINGN0YLQvtC8INGB0LvRg9GH0LDQtSDQstGLINGD0LLQuNC00LjRgtC1INC00L7Qv9C+0LvQvdC40YLQtdC70YzQvdGL0Lkg0YHQv9C40YHQvtC6LCDRgdC+0LTQtdGA0LbQsNGJ0LjQuSDQt9Cw0YLRgNC+0L3Rg9GC0YvQtVxuIgorItC/0LDQutC10YLRiy4g0J3QuNC20L3Rj9GPINC/0L7Qu9C+0LLQuNC90LAg0YHQv9C40YHQutCwINC/0L7QutCw0LfRi9Cy0LDQtdGCINC+0YLQvdC+0YHRj9GJ0LjQtdGB0Y8g0Log0L/QsNC60LXRgtGDINC60L7QvdGE0LvQuNC60YLRi1xuIgorItC4INC30LDQstC40YHQuNC80L7RgdGC0LguINCa0LvQsNCy0LjRiNCwIGBpJyDQvNC+0LbQtdGCINC/0LXRgNC10LrQu9GO0YfQuNGC0Ywg0Y3RgtC+INC+0LrQvdC+INGC0LDQutC20LUg0LIg0YDQtdC20LjQvFxuIgorItC+0YLQvtCx0YDQsNC20LXQvdC40Y8g0L7Qv9C40YHQsNC90LjQuSDQv9Cw0LrQtdGC0L7QsiDQuCDQstC90YPRgtGA0LXQvdC90LXQuSDRg9C/0YDQsNCy0LvRj9GO0YnQtdC5INC40L3RhNC+0YDQvNCw0YbQuNC4LlxuIgorIlxuIgorItCf0YDQvtCz0YDQsNC80LzQsCDQstGL0YfQuNGB0LvRj9C10YIg0LzQvdC+0LbQtdGB0YLQstC+IGDQv9GA0LXQtNC70LDQs9Cw0LXQvNGL0YUnINC/0LDQutC10YLQvtCyINC4INC/0LXRgNCy0L7QvdCw0YfQsNC70YzQvdC+ICIKKyLQv9C+0LzQtdGC0LrQuFxuIgorItCyINGN0YLQvtC8INC00L7Qv9C+0LvQvdC40YLQtdC70YzQvdC+0Lwg0YHQv9C40YHQutC1INCx0YPQtNGD0YIg0YHQvtC+0YLQstC10YLRgdGC0LLQvtCy0LDRgtGMINC40LzQtdC90L3QviDRjdGC0L7QvNGDINCy0LDRgNC40LDQvdGC0YMuXG4iCisi0KLQsNC60LjQvCDQvtCx0YDQsNC30L7QvCwg0LLRiyDQvNC+0LbQtdGC0LUg0L/RgNC+0YHRgtC+INC90LDQttCw0YLRjCDQutC70LDQstC40YjRgyBSZXR1cm4sINC/0YDQuNC90Y/QsiDQv9GA0LXQtNC70L7QttC10L3QvdGL0LlcbiIKKyLQstCw0YDQuNCw0L3Rgi4g0JzQvtC20L3QviDRgtCw0LrQttC1INC+0YLQutCw0LfQsNGC0YzRgdGPINC+0YIg0LjQt9C80LXQvdC10L3QuNC5LCDQstGL0LfQstCw0LLRiNC40YUg0L/RgNC+0LHQu9C10LzRiywg0LggIgorItCy0LXRgNC90YPRgtGM0YHRj1xuIgorItCyINC+0YHQvdC+0LLQvdC+0Lkg0YHQv9C40YHQvtC6LCDQstCy0LXQtNGPINC30LDQs9C70LDQstC90YPRjiBgWCcuXG4iCisiXG4iCisi0J3QsNC60L7QvdC10YYsINC80L7QttC90L4g0L/RgNC+0LnRgtC4INC/0L4g0YHQv9C40YHQutGDINC4INC40LfQvNC10L3QuNGC0Ywg0L7RgtC80LXRgtC60Lgg0YLQsNC6LCDQutCw0Log0LLQsNC8INCx0L7Qu9GM0YjQtVxuIgorItC90YDQsNCy0LjRgtGB0Y8uINCf0YDQuCDRjdGC0L7QvCDQvNC+0LbQvdC+INC+0YLQstC10YDQs9C90YPRgtGMINC/0YDQtdC00LvQvtC20LXQvdC90YvQtSDQv9GA0L7Qs9GA0LDQvNC80L7QuSDQuNC30LzQtdC90LXQvdC40Y8sICIKKyLQstCy0LXQtNGPXG4iCisi0LfQsNCz0LvQsNCy0L3Rg9GOIGBEJyDQuNC70LggYFInICjRgdC8LiDRjdC60YDQsNC9INGB0L/RgNCw0LLQutC4IGDQk9C+0YDRj9GH0LjQtSDQutC70LDQstC40YjQuCcpLiDQldGB0LvQuCDQstCw0YEg0L3QtSAiCisi0YPRgdGC0YDQsNC40LLQsNGO0YJcbiIKKyLQv9GA0LXQtNC70L7QttC10L3QvdGL0LUg0LjQt9C80LXQvdC10L3QuNGPLCDQuNC70Lgg0LXRgdC70Lgg0LLRiyDQtNGD0LzQsNC10YLQtSwg0YfRgtC+INC/0YDQvtCz0YDQsNC80LzQsCDQvtGI0LjQsdCw0LXRgtGB0Y8sINC80L7QttC90L5cbiIKKyLQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0LfQsNCz0LvQsNCy0L3Rg9GOIGBRJywg0YfRgtC+0LHRiyDQv9C+0YLRgNC10LHQvtCy0LDRgtGMINC/0YDQuNC90Y/RgtGMINGC0LXQutGD0YnQuNC5INCy0YvQsdC+0YAsICIKKyLQvdC10YHQvNC+0YLRgNGPXG4iCisi0L3QsCDQv9GA0L7QsdC70LXQvNGLINC30LDQstC40YHQuNC80L7RgdGC0LXQuS5cbiIKKyJcbiIKKyLQp9GC0L7QsdGLINCy0YvQudGC0Lgg0LjQtyDRgdC/0YDQsNCy0LrQuCDQuCDQstC+0LnRgtC4INCyINGB0L/QuNGB0L7QuiDQv9Cw0LrQtdGC0L7Qsiwg0L3QsNC20LzQuNGC0LUgPHNwYWNlPi4g0J/QvtC80L3QuNGC0LUsICIKKyLRh9GC0L4g0LTQu9GPINCy0YvQt9C+0LLQsCDRgdC/0YDQsNCy0LrQuCDQtNC+0YHRgtCw0YLQvtGH0L3QviDQvdCw0LbQsNGC0Ywg0LrQu9Cw0LLQuNGI0YMgYD8nLlxuIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjEyNQorbXNnaWQgIkRpc3BsYXksIHBhcnQgMTogcGFja2FnZSBsaXN0aW5nIGFuZCBzdGF0dXMgY2hhcnMiCittc2dzdHIgItCf0YDQvtGB0LzQvtGC0YAsINGH0LDRgdGC0YwgMTog0YHQv9C40YHQvtC6INC/0LDQutC10YLQvtCyINC4INGB0LjQvNCy0L7Qu9GLINGB0L7RgdGC0L7Rj9C90LjRjyIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxMjUKK21zZ2lkICIiCisiVGhlIHRvcCBoYWxmIG9mIHRoZSBzY3JlZW4gc2hvd3MgYSBsaXN0IG9mIHBhY2thZ2VzLiAgRm9yIGVhY2ggcGFja2FnZSB5b3UgIgorInNlZVxuIgorImZvdXIgY29sdW1ucyBmb3IgaXRzIGN1cnJlbnQgc3RhdHVzIG9uIHRoZSBzeXN0ZW0gYW5kIG1hcmsuICBJbiB0ZXJzZSBtb2RlICIKKyIodXNlXG4iCisiYHYnIHRvIHRvZ2dsZSB2ZXJib3NlIGRpc3BsYXkpIHRoZXNlIGFyZSBzaW5nbGUgY2hhcmFjdGVycywgZnJvbSBsZWZ0IHRvICIKKyJyaWdodDpcbiIKKyJcbiIKKyIgRXJyb3IgZmxhZzogU3BhY2UgLSBubyBlcnJvciAoYnV0IHBhY2thZ2UgbWF5IGJlIGluIGJyb2tlbiBzdGF0ZSAtIHNlZSAiCisiYmVsb3cpXG4iCisiICAgICAgICAgICAgICBgUicgIC0gc2VyaW91cyBlcnJvciBkdXJpbmcgaW5zdGFsbGF0aW9uLCBuZWVkcyAiCisicmVpbnN0YWxsYXRpb247XG4iCisiIEluc3RhbGxlZCBzdGF0ZTogICAgIFNwYWNlICAgIC0gbm90IGluc3RhbGxlZDtcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgIGAqJyAgICAgLSBpbnN0YWxsZWQ7XG4iCisiICAgICAgICAgICAgICAgICAgICAgICBgLScgICAgIC0gbm90IGluc3RhbGxlZCBidXQgY29uZmlnIGZpbGVzIHJlbWFpbjtcbiIKKyIgICBwYWNrYWdlcyBpbiB0aGVzZSB7IGBVJyAgICAgLSB1bnBhY2tlZCBidXQgbm90IHlldCBjb25maWd1cmVkO1xuIgorIiAgIHN0YXRlcyBhcmUgbm90ICAgIHsgYEMnICAgICAtIGhhbGYtY29uZmlndXJlZCAoYW4gZXJyb3IgaGFwcGVuZWQpO1xuIgorIiAgIChxdWl0ZSkgcHJvcGVybHkgIHsgYEknICAgICAtIGhhbGYtaW5zdGFsbGVkIChhbiBlcnJvciBoYXBwZW5lZCk7XG4iCisiICAgaW5zdGFsbGVkICAgICAgICAgeyBgVycsYHQnIC0gdHJpZ2dlcnMgYXJlIGF3YWl0ZWQgcmVzcC4gcGVuZGluZy5cbiIKKyIgT2xkIG1hcms6IHdoYXQgd2FzIHJlcXVlc3RlZCBmb3IgdGhpcyBwYWNrYWdlIGJlZm9yZSBwcmVzZW50aW5nIHRoaXMgbGlzdDtcbiIKKyIgTWFyazogd2hhdCBpcyByZXF1ZXN0ZWQgZm9yIHRoaXMgcGFja2FnZTpcbiIKKyIgIGAqJzogbWFya2VkIGZvciBpbnN0YWxsYXRpb24gb3IgdXBncmFkZTtcbiIKKyIgIGAtJzogbWFya2VkIGZvciByZW1vdmFsLCBidXQgYW55IGNvbmZpZ3VyYXRpb24gZmlsZXMgd2lsbCByZW1haW47XG4iCisiICBgPSc6IG9uIGhvbGQ6IHBhY2thZ2Ugd2lsbCBub3QgYmUgcHJvY2Vzc2VkIGF0IGFsbDtcbiIKKyIgIGBfJzogbWFya2VkIGZvciBwdXJnZSBjb21wbGV0ZWx5IC0gZXZlbiByZW1vdmUgY29uZmlndXJhdGlvbjtcbiIKKyIgIGBuJzogcGFja2FnZSBpcyBuZXcgYW5kIGhhcyB5ZXQgdG8gYmUgbWFya2VkIGZvciBpbnN0YWxsL3JlbW92ZS8mYy5cbiIKKyJcbiIKKyJBbHNvIGRpc3BsYXllZCBhcmUgZWFjaCBwYWNrYWdlJ3MgUHJpb3JpdHksIFNlY3Rpb24sIG5hbWUsIGluc3RhbGxlZCBhbmRcbiIKKyJhdmFpbGFibGUgdmVyc2lvbiBudW1iZXJzIChzaGlmdC1WIHRvIGRpc3BsYXkvaGlkZSkgYW5kIHN1bW1hcnkgIgorImRlc2NyaXB0aW9uLlxuIgorbXNnc3RyICIiCisi0JIg0LLQtdGA0YXQvdC10Lkg0L/QvtC70L7QstC40L3QtSDRjdC60YDQsNC90LAg0L/QvtC60LDQt9Cw0L0g0YHQv9C40YHQvtC6INC/0LDQutC10YLQvtCyLiDQkiDQv9C10YDQstGL0YUg0YfQtdGC0YvRgNGR0YUg0LrQvtC70L7QvdC60LDRhVxuIgorItC00LDQvdGLINGC0LXQutGD0YnQtdC1INGB0L7RgdGC0L7Rj9C90LjQtSDQuCDQv9C+0LzQtdGC0LrQsCDQutCw0LbQtNC+0LPQviDQv9Cw0LrQtdGC0LAuINCSINC60YDQsNGC0LrQvtC8INGA0LXQttC40LzQtSAo0LrQu9Cw0LLQuNGI0LAgIgorInZcbiIKKyLQv9C10YDQtdC60LvRjtGH0LDQtdGCINC80LXQttC00YMg0LrRgNCw0YLQutC40Lwg0Lgg0L/QvtC00YDQvtCx0L3Ri9C8INGA0LXQttC40LzQsNC80LgpINGN0YLQviDQvtC00LjQvdC+0YfQvdGL0LUg0YHQuNC80LLQvtC70YssXG4iCisi0L7QsdC+0LfQvdCw0YfQsNGO0YnQuNC1ICjRgdC70LXQstCwINC90LDQv9GA0LDQstC+KTpcbiIKKyJcbiIKKyIg0KTQu9Cw0LMg0L7RiNC40LHQutC4OiDQn9GA0L7QsdC10LsgLS0g0L3QtdGCINC+0YjQuNCx0LrQuCAo0L3QviDQv9Cw0LrQtdGCINC80L7QttC10YIg0LHRi9GC0Ywg0L3QtdGA0LDQsdC+0YLQvtGB0L/QvtGB0L7QsdC10L0sINGB0LwuIgorItC90LjQttC1KVxuIgorIiAgICAgICAgICAgICAgUiAgICAgIC0tINGB0LXRgNGM0ZHQt9C90LDRjyDQvtGI0LjQsdC60LAg0L/RgNC4INGD0YHRgtCw0L3QvtCy0LrQtSwg0YLRgNC10LHRg9C10YLRgdGPICIKKyLQv9C10YDQtdGD0YHRgtCw0L3QvtCy0LrQsC5cbiIKKyIg0KTQu9Cw0LMg0YPRgdGC0LDQvdC+0LLQutC4OiAg0J/RgNC+0LHQtdC7IC0tINC90LUg0YPRgdGC0LDQvdC+0LLQu9C10L1cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgKiAgLS0g0YPRgdGC0LDQvdC+0LLQu9C10L1cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgLSAgLS0g0L3QtSDRg9GB0YLQsNC90L7QstC70LXQvSwg0L3QviDQvtGB0YLQsNC70LjRgdGMINGE0LDQudC70Ysg0LrQvtC90YTQuNCz0YPRgNCw0YbQuNC4XG4iCisiICAgINC/0LDQutC10YLRiyDQsiDRjdGC0LjRhSAgeyAgVSAgLS0g0YDQsNGB0L/QsNC60L7QstCw0L0sINC90L4g0L3QtSDQvdCw0YHRgtGA0L7QtdC9XG4iCisiICAgICDRgdC+0YHRgtC+0Y/QvdC40Y/RhSAgICB7ICBDICAtLSDQvdCw0L/QvtC70L7QstC40L3RgyDQvdCw0YHRgtGA0L7QtdC9ICjQv9GA0L7QuNC30L7RiNC70LAg0L7RiNC40LHQutCwKVxuIgorIiAg0L3QtSDRg9GB0YLQsNC90L7QstC70LXQvdGLICAgeyAgSSAgLS0g0L3QsNC/0L7Qu9C+0LLQuNC90YMg0YPRgdGC0LDQvdC+0LLQu9C10L0gKNC/0YDQvtC40LfQvtGI0LvQsCDQvtGI0LjQsdC60LApXG4iCisiICAgICDQv9GA0LDQstC40LvRjNC90L4gICAgIHsgVywgdCAtLSDQvtGC0LzQtdGH0LXQvSDQutCw0Log0LbQtNGD0YnQuNC5INGA0LDRgdGB0LzQvtGC0YDQtdC90LjRj1xuIgorIlxuIgorIiDQodGC0LDRgNCw0Y8g0L/QvtC80LXRgtC60LA6INGB0L7RgdGC0L7Rj9C90LjQtSwg0LfQsNGC0YDQtdCx0L7QstCw0L3QvdC+0LUg0LTQviDQstGF0L7QtNCwINCyINGN0YLQvtGCINGB0L/QuNGB0L7QulxuIgorIiDQn9C+0LzQtdGC0LrQsDog0LrQsNC60L7QtSDRgdC+0YHRgtC+0Y/QvdC40LUg0LfQsNGC0YDQtdCx0L7QstCw0L3QviDQtNC70Y8g0L/QsNC60LXRgtCwOlxuIgorIiAgICogOiDQv9C+0LzQtdGH0LXQvSDQtNC70Y8g0YPRgdGC0LDQvdC+0LLQutC4INC40LvQuCDQvtCx0L3QvtCy0LvQtdC90LjRj1xuIgorIiAgIC0gOiDQv9C+0LzQtdGH0LXQvSDQtNC70Y8g0YPQtNCw0LvQtdC90LjRjywg0L3QviDRhNCw0LnQu9GLINC60L7QvdGE0LjQs9GD0YDQsNGG0LjQuCDQtNC+0LvQttC90Ysg0L7RgdGC0LDRgtGM0YHRj1xuIgorIiAgID0gOiDQt9Cw0YTQuNC60YHQuNGA0L7QstCw0L06INC/0LDQutC10YIg0L3QtSDQsdGD0LTQtdGCINC+0LHRgNCw0LHQsNGC0YvQstCw0YLRjNGB0Y9cbiIKKyIgICBfIDog0L/QvtC80LXRh9C10L0g0LTQu9GPINC/0L7Qu9C90L7QuSDQstGL0YfQuNGB0YLQutC4OiDRg9C00LDQu9GP0Y7RgtGB0Y8g0YLQsNC60LbQtSDRhNCw0LnQu9GLINC60L7QvdGE0LjQs9GD0YDQsNGG0LjQuFxuIgorIiAgIG4gOiDRjdGC0L4g0L3QvtCy0YvQuSDQv9Cw0LrQtdGCINC4INC10YnRkSDQvdC1INC/0L7QvNC10YfQtdC9INC00LvRjyDRg9GB0YLQsNC90L7QstC60Lgv0YPQtNCw0LvQtdC90LjRjyDQuCDRgtC0XG4iCisiXG4iCisi0KLQsNC60LbQtSDQv9C+0LrQsNC30LDQvdGLINC/0YDQuNC+0YDQuNGC0LXRgiwg0YDQsNC30LTQtdC7LCDQuNC80Y8g0LrQsNC20LTQvtCz0L4g0L/QsNC60LXRgtCwLCDQvdC+0LzQtdGA0LAg0YPRgdGC0LDQvdC+0LLQu9C10L3QvdC+0LlcbiIKKyLQuCDQtNC+0YHRgtGD0L/QvdC+0Lkg0LLQtdGA0YHQuNC5IChzaGlmdC1WINC/0LXRgNC10LrQu9GO0YfQsNC10YIg0YDQtdC20LjQvCDQvtGC0L7QsdGA0LDQttC10L3QuNGPKSDQuCDQutGA0LDRgtC60L7QtVxuIgorItC+0L/QuNGB0LDQvdC40LUuXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTUyCittc2dpZCAiRGlzcGxheSwgcGFydCAyOiBsaXN0IGhpZ2hsaWdodDsgaW5mb3JtYXRpb24gZGlzcGxheSIKK21zZ3N0ciAi0J/RgNC+0YHQvNC+0YLRgCwg0YfQsNGB0YLRjCAyOiDQstGL0LTQtdC70LXQvdC40LUsINC+0YLQvtCx0YDQsNC20LXQvdC40LUg0LjQvdGE0L7RgNC80LDRhtC40LgiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTUyCittc2dpZCAiIgorIiogSGlnaGxpZ2h0OiBPbmUgbGluZSBpbiB0aGUgcGFja2FnZSBsaXN0IHdpbGwgYmUgaGlnaGxpZ2h0ZWQuICBJdCAiCisiaW5kaWNhdGVzXG4iCisiICB3aGljaCBwYWNrYWdlKHMpIHdpbGwgYmUgYWZmZWN0ZWQgYnkgcHJlc3NlcyBvZiBgKycsIGAtJyBhbmQgYF8nLlxuIgorIlxuIgorIiogVGhlIGRpdmlkaW5nIGxpbmUgaW4gdGhlIG1pZGRsZSBvZiB0aGUgc2NyZWVuIHNob3dzIGEgYnJpZWYgZXhwbGFuYXRpb24gIgorIm9mXG4iCisiICB0aGUgc3RhdHVzIG9mIHRoZSBjdXJyZW50bHktaGlnaGxpZ2h0ZWQgcGFja2FnZSwgb3IgYSBkZXNjcmlwdGlvbiBvZiAiCisid2hpY2hcbiIKKyIgIGdyb3VwIGlzIGhpZ2hsaWdodGVkIGlmIGEgZ3JvdXAgbGluZSBpcy4gIElmIHlvdSBkb24ndCB1bmRlcnN0YW5kIHRoZVxuIgorIiAgbWVhbmluZyBvZiBzb21lIG9mIHRoZSBzdGF0dXMgY2hhcmFjdGVycyBkaXNwbGF5ZWQsIGdvIHRvIHRoZSByZWxldmFudFxuIgorIiAgcGFja2FnZSBhbmQgbG9vayBhdCB0aGlzIGRpdmlkZXIgbGluZSwgb3IgdXNlIHRoZSBgdicga2V5IGZvciBhIHZlcmJvc2VcbiIKKyIgIGRpc3BsYXkgKHByZXNzIGB2JyBhZ2FpbiB0byBnbyBiYWNrIHRvIHRoZSB0ZXJzZSBkaXNwbGF5KS5cbiIKKyJcbiIKKyIqIFRoZSBib3R0b20gb2YgdGhlIHNjcmVlbiBzaG93cyBtb3JlIGluZm9ybWF0aW9uIGFib3V0IHRoZVxuIgorIiAgY3VycmVudGx5LWhpZ2hsaWdodGVkIHBhY2thZ2UgKGlmIHRoZXJlIGlzIG9ubHkgb25lKS5cbiIKKyJcbiIKKyIgIEl0IGNhbiBzaG93IGFuIGV4dGVuZGVkIGRlc2NyaXB0aW9uIG9mIHRoZSBwYWNrYWdlLCB0aGUgaW50ZXJuYWwgcGFja2FnZVxuIgorIiAgY29udHJvbCBkZXRhaWxzIChlaXRoZXIgZm9yIHRoZSBpbnN0YWxsZWQgb3IgYXZhaWxhYmxlIHZlcnNpb24gb2YgdGhlXG4iCisiICBwYWNrYWdlKSwgb3IgaW5mb3JtYXRpb24gYWJvdXQgY29uZmxpY3RzIGFuZCBkZXBlbmRlbmNpZXMgaW52b2x2aW5nIHRoZVxuIgorIiAgY3VycmVudCBwYWNrYWdlIChpbiBjb25mbGljdC9kZXBlbmRlbmN5IHJlc29sdXRpb24gc3VibGlzdHMpLlxuIgorIlxuIgorIiAgVXNlIHRoZSBgaScga2V5IHRvIGN5Y2xlIHRocm91Z2ggdGhlIGRpc3BsYXlzLCBhbmQgYEknIHRvIGhpZGUgdGhlXG4iCisiICBpbmZvcm1hdGlvbiBkaXNwbGF5IG9yIGV4cGFuZCBpdCB0byB1c2UgYWxtb3N0IGFsbCBvZiB0aGUgc2NyZWVuLlxuIgorbXNnc3RyICIiCisiKiDQktGL0LTQtdC70LXQvdC40LU6INC+0LTQvdCwINGB0YLRgNC+0LrQsCDRgdC/0LjRgdC60LAg0L/QsNC60LXRgtC+0LIg0LHRg9C00LXRgiDQstGL0LTQtdC70LXQvdCwLiDQntC90LAg0L/QvtC60LDQt9GL0LLQsNC10YIsXG4iCisiICDQuiDQutCw0LrQvtC80YMo0LjQvCkg0L/QsNC60LXRgtGDKNCw0LwpINCx0YPQtNC10YIg0L7RgtC90L7RgdC40YLRgdGPINC90LDQttCw0YLQuNC1INC60LvQsNCy0LjRiCArLCAtINC40LvQuCBfLlxuIgorIlxuIgorIiog0KDQsNC30LTQtdC70LjRgtC10LvRjNC90LDRjyDQu9C40L3QuNGPINCyINGB0LXRgNC10LTQuNC90LUg0Y3QutGA0LDQvdCwINC+0YLQvtCx0YDQsNC20LDQtdGCINC60YDQsNGC0LrQvtC1INC+0L/QuNGB0LDQvdC40LVcbiIKKyIgINGB0L7RgdGC0L7Rj9C90LjRjyDQstGL0LTQtdC70LXQvdC90L7Qs9C+INC/0LDQutC10YLQsCDQuNC70Lgg0L7Qv9C40YHQsNC90LjQtSDQstGL0LTQtdC70LXQvdC90L7QuSDQs9GA0YPQv9C/0YsuINCV0YHQu9C4INCy0YtcbiIKKyIgINC90LUg0L/QvtC90LjQvNCw0LXRgtC1INC30L3QsNGH0LXQvdC40LUg0YHQuNC80LLQvtC70L7Qsiwg0L7RgtC+0LHRgNCw0LbQsNGO0YnQuNGFINGB0L7RgdGC0L7Rj9C90LjQtSwg0L/QtdGA0LXQudC00LjRgtC1XG4iCisiICDQuiDRgdC+0L7RgtCy0LXRgtGB0YLQstGD0Y7RidC10LzRgyDQv9Cw0LrQtdGC0YMg0Lgg0L/QvtGB0LzQvtGC0YDQuNGC0LUg0L3QsCDRgNCw0LfQtNC10LvQuNGC0LXQu9GM0L3Rg9GOINC70LjQvdC40Y4sINC40LvQuFxuIgorIiAg0YEg0L/QvtC80L7RidGM0Y4g0LrQu9Cw0LLQuNGI0LggdiDQv9C10YDQtdC60LvRjtGH0LjRgtC1INC/0YDQvtCz0YDQsNC80LzRgyDQsiDRgNC10LbQuNC8INC/0L7QtNGA0L7QsdC90L7Qs9C+INC+0YLQvtCx0YDQsNC20LXQvdC40Y9cbiIKKyIgICjRgdC70LXQtNGD0Y7RidC10LUg0L3QsNC20LDRgtC40LUg0LrQu9Cw0LLQuNGI0LggdiDQstC10YDQvdGR0YIg0Y3QutGA0LDQvSDQsiDQutGA0LDRgtC60LjQuSDRgNC10LbQuNC8KS5cbiIKKyJcbiIKKyIqINCd0LjQttC90Y/RjyDRh9Cw0YHRgtGMINGN0LrRgNCw0L3QsCDQv9C+0LrQsNC30YvQstCw0LXRgiDQsdC+0LvQtdC1INC/0L7QtNGA0L7QsdC90YPRjiDQuNC90YTQvtGA0LzQsNGG0LjRjiDQviDQstGL0LTQtdC70LXQvdC90L7QvFxuIgorIiAg0L/QsNC60LXRgtC1ICjQtdGB0LvQuCDQstGL0LTQtdC70LXQvSDRgtC+0LvRjNC60L4g0L7QtNC40L0g0L/QsNC60LXRgikuXG4iCisiXG4iCisiICDQkiDRjdGC0L7QuSDRh9Cw0YHRgtC4INC80L7QttC10YIg0L7RgtC+0LHRgNCw0LbQsNGC0YzRgdGPINGA0LDRgdGI0LjRgNC10L3QvdC+0LUg0L7Qv9C40YHQsNC90LjQtSDQv9Cw0LrQtdGC0LAsINCy0L3Rg9GC0YDQtdC90L3Rj9GPXG4iCisiICDQuNC90YTQvtGA0LzQsNGG0LjRjyDQviDQv9Cw0LrQtdGC0LUgKNC70LjQsdC+INC+INGD0YHRgtCw0L3QvtCy0LvQtdC90L3QvtC5LCDQu9C40LHQviDQviDQtNC+0YHRgtGD0L/QvdC+0Lkg0LLQtdGA0YHQuNC4KSwg0LvQuNCx0L5cbiIKKyIgINC40L3RhNC+0YDQvNCw0YbQuNGPINC+INC60L7QvdGE0LvQuNC60YLQsNGFINC4INC30LDQstC40YHQuNC80L7RgdGC0Y/RhSwg0LfQsNGC0YDQsNCz0LjQstCw0Y7RidC40YUg0LTQsNC90L3Ri9C5INC/0LDQutC10YJcbiIKKyIgICjQsiDQtNC+0L/QvtC70L3QuNGC0LXQu9GM0L3Ri9GFINGB0L/QuNGB0LrQsNGFINGA0LDQt9GA0LXRiNC10L3QuNGPINC60L7QvdGE0LvQuNC60YLQvtCyINC4INC30LDQstC40YHQuNC80L7RgdGC0LXQuSkuXG4iCisiXG4iCisiICDQmtC70LDQstC40YjQsCBpINGG0LjQutC70LjRh9C10YHQutC4INC/0LXRgNC10LrQu9GO0YfQsNC10YIg0YDQtdC20LjQvNGLINC+0YLQvtCx0YDQsNC20LXQvdC40Y8g0LIg0Y3RgtC+0Lkg0YfQsNGB0YLQuCDRjdC60YDQsNC90LAsXG4iCisiICDQsCDQutC70LDQstC40YjQsCBJINGB0LrRgNGL0LLQsNC10YIg0LXRkSDQuNC70Lgg0YDQsNGB0YjQuNGA0Y/QtdGCINC/0L7Rh9GC0Lgg0LTQviDRgNCw0LfQvNC10YDQvtCyINGN0LrRgNCw0L3QsC5cbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxNzYKK21zZ2lkICJJbnRyb2R1Y3Rpb24gdG8gbWV0aG9kIHNlbGVjdGlvbiBkaXNwbGF5IgorbXNnc3RyICLQktCy0L7QtNC90LDRjyDQuNC90YTQvtGA0LzQsNGG0LjRjyDQvtCxINGN0LrRgNCw0L3QtSDQstGL0LHQvtGA0LAg0LzQtdGC0L7QtNCwINC00L7RgdGC0YPQv9CwIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjE3NgorbXNnaWQgIiIKKyJkc2VsZWN0IGFuZCBkcGtnIGNhbiBkbyBhdXRvbWF0aWMgaW5zdGFsbGF0aW9uLCBsb2FkaW5nIHRoZSBwYWNrYWdlIGZpbGVzIHRvICIKKyJiZVxuIgorImluc3RhbGxlZCBmcm9tIG9uZSBvZiBhIG51bWJlciBvZiBkaWZmZXJlbnQgcG9zc2libGUgcGxhY2VzLlxuIgorIlxuIgorIlRoaXMgbGlzdCBhbGxvd3MgeW91IHRvIHNlbGVjdCBvbmUgb2YgdGhlc2UgaW5zdGFsbGF0aW9uIG1ldGhvZHMuXG4iCisiXG4iCisiTW92ZSB0aGUgaGlnaGxpZ2h0IHRvIHRoZSBtZXRob2QgeW91IHdpc2ggdG8gdXNlLCBhbmQgaGl0IEVudGVyLiAgWW91IHdpbGwgIgorInRoZW5cbiIKKyJiZSBwcm9tcHRlZCBmb3IgdGhlIGluZm9ybWF0aW9uIHJlcXVpcmVkIHRvIGRvIHRoZSBpbnN0YWxsYXRpb24uXG4iCisiXG4iCisiQXMgeW91IG1vdmUgdGhlIGhpZ2hsaWdodCBhIGRlc2NyaXB0aW9uIG9mIGVhY2ggbWV0aG9kLCB3aGVyZSBhdmFpbGFibGUsIGlzXG4iCisiZGlzcGxheWVkIGluIHRoZSBib3R0b20gaGFsZiBvZiB0aGUgc2NyZWVuLlxuIgorIlxuIgorIklmIHlvdSB3aXNoIHRvIHF1aXQgd2l0aG91dCBjaGFuZ2luZyBhbnl0aGluZyB1c2UgdGhlIGB4JyBrZXkgd2hpbGUgaW4gdGhlICIKKyJsaXN0XG4iCisib2YgaW5zdGFsbGF0aW9uIG1ldGhvZHMuXG4iCisiXG4iCisiQSBmdWxsIGxpc3Qgb2Yga2V5c3Ryb2tlcyBpcyBhdmFpbGFibGUgYnkgcHJlc3NpbmcgYGsnIG5vdywgb3IgZnJvbSB0aGUgIgorImhlbHBcbiIKKyJtZW51IHJlYWNoYWJsZSBieSBwcmVzc2luZyBgPycuXG4iCittc2dzdHIgIiIKKyJkc2VsZWN0INC4IGRwa2cg0LzQvtCz0YPRgiDQv9GA0L7QuNC30LLQvtC00LjRgtGMINGD0YHRgtCw0L3QvtCy0LrRgyDQsNCy0YLQvtC80LDRgtC40YfQtdGB0LrQuCwg0YHQsNC80L7RgdGC0L7Rj9GC0LXQu9GM0L3QvlxuIgorItC30LDQs9GA0YPQttCw0Y8g0YTQsNC50LvRiyDQv9Cw0LrQtdGC0L7Qsiwg0LrQvtGC0L7RgNGL0LUg0L3QsNC00L4g0YPRgdGC0LDQvdC+0LLQuNGC0YwsINC40Lcg0L7QtNC90L7Qs9C+INC40Lcg0LLQvtC30LzQvtC20L3Ri9GFXG4iCisi0YDQsNGB0L/QvtC70L7QttC10L3QuNC5LlxuIgorIlxuIgorItCt0YLQviDRgdC/0LjRgdC+0Log0L/QvtC30LLQvtC70Y/QtdGCINCy0YvQsdGA0LDRgtGMINC+0LTQuNC9INC40Lcg0LzQtdGC0L7QtNC+0LIg0YPRgdGC0LDQvdC+0LLQutC4LlxuIgorIlxuIgorItCS0YvQtNC10LvQuNGC0LUg0LzQtdGC0L7QtCwg0LrQvtGC0L7RgNGL0Lkg0LLRiyDQv9GA0LXQtNC/0L7Rh9C40YLQsNC10YLQtSDQuNGB0L/QvtC70YzQt9C+0LLQsNGC0YwsINC4INC90LDQttC80LjRgtC1INC60LvQsNCy0LjRiNGDXG4iCisi0LLQstC+0LTQsC4g0J/RgNC+0LPRgNCw0LzQvNCwINC30LDQv9GA0L7RgdC40YIg0YMg0LLQsNGBINC90LXQvtCx0YXQvtC00LjQvNGD0Y4g0LTQu9GPINGD0YHRgtCw0L3QvtCy0LrQuCDQuNC90YTQvtGA0LzQsNGG0LjRji5cbiIKKyJcbiIKKyLQn9GA0Lgg0L/QtdGA0LXQvNC10YnQtdC90LjQuCDQstGL0LTQtdC70LXQvdC40Y8g0LIg0L3QuNC20L3QtdC5INGH0LDRgdGC0Lgg0Y3QutGA0LDQvdCwINC/0L7Rj9Cy0LvRj9C10YLRgdGPINC+0L/QuNGB0LDQvdC40LVcbiIKKyLQutCw0LbQtNC+0LPQviDQvNC10YLQvtC00LAsINC00LvRjyDQutC+0YLQvtGA0L7Qs9C+INC+0L3QviDQtNC+0YHRgtGD0L/QvdC+LlxuIgorIlxuIgorItCV0YHQu9C4INCy0Ysg0YXQvtGC0LjRgtC1INCy0YvQudGC0LgsINC90LjRh9C10LPQviDQvdC1INC80LXQvdGP0Y8sINC90LDQttC80LjRgtC1INC60LvQsNCy0LjRiNGDIHgsINC60L7Qs9C00LAg0L/RgNC+0LPRgNCw0LzQvNCwXG4iCisi0L3QsNGF0L7QtNC40YLRgdGPINCyINGB0L/QuNGB0LrQtSDQvNC10YLQvtC00L7QsiDRg9GB0YLQsNC90L7QstC60LguXG4iCisiXG4iCisi0J/QvtC70L3Ri9C5INGB0L/QuNGB0L7QuiDQs9C+0YDRj9GH0LjRhSDQutC70LDQstC40Ygg0LzQvtC20L3QviDQv9C+0LvRg9GH0LjRgtGMLCDQvdCw0LbQsNCyINC60LvQsNCy0LjRiNGDIGsg0LjQu9C4INCy0L7QudC00Y9cbiIKKyLQsiDQvtCx0YnRg9GOINGB0L/RgNCw0LLQutGDLCDQvdCw0LbQsNCyINC60LvQsNCy0LjRiNGDID8uXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTk2Cittc2dpZCAiS2V5c3Ryb2tlcyBmb3IgbWV0aG9kIHNlbGVjdGlvbiIKK21zZ3N0ciAi0JPQvtGA0Y/Rh9C40LUg0LrQu9Cw0LLQuNGI0Lgg0L/RgNC4INCy0YvQsdC+0YDQtSDQvNC10YLQvtC00LAg0LTQvtGB0YLRg9C/0LAiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTk2Cittc2dpZCAiIgorIk1vdGlvbiBrZXlzOiBOZXh0L1ByZXZpb3VzLCBUb3AvRW5kLCBVcC9Eb3duLCBCYWNrd2FyZHMvRm9yd2FyZHM6XG4iCisiICBqLCBEb3duLWFycm93ICAgICAgICAgaywgVXAtYXJyb3cgICAgICAgICAgICAgbW92ZSBoaWdobGlnaHRcbiIKKyIgIE4sIFBhZ2UtZG93biwgU3BhY2UgICBQLCBQYWdlLXVwLCBCYWNrc3BhY2UgICBzY3JvbGwgbGlzdCBieSAxIHBhZ2VcbiIKKyIgIF5uICAgICAgICAgICAgICAgICAgICBecCAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgbGlzdCBieSAxIGxpbmVcbiIKKyIgIHQsIEhvbWUgICAgICAgICAgICAgICBlLCBFbmQgICAgICAgICAgICAgICAgICBqdW1wIHRvIHRvcC9lbmQgb2YgbGlzdFxuIgorIiAgdSAgICAgICAgICAgICAgICAgICAgIGQgICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIGJ5IDEgcGFnZVxuIgorIiAgXnUgICAgICAgICAgICAgICAgICAgIF5kICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIGJ5IDEgbGluZVxuIgorIiAgQiwgTGVmdC1hcnJvdyAgICAgICAgIEYsIFJpZ2h0LWFycm93ICAgICAgICAgIHBhbiBkaXNwbGF5IGJ5IDEvMyBzY3JlZW5cbiIKKyIgIF5iICAgICAgICAgICAgICAgICAgICBeZiAgICAgICAgICAgICAgICAgICAgICBwYW4gZGlzcGxheSBieSAxIGNoYXJhY3RlclxuIgorIihUaGVzZSBhcmUgdGhlIHNhbWUgbW90aW9uIGtleXMgYXMgaW4gdGhlIHBhY2thZ2UgbGlzdCBkaXNwbGF5LilcbiIKKyJcbiIKKyJRdWl0OlxuIgorIiBSZXR1cm4sIEVudGVyICAgIHNlbGVjdCB0aGlzIG1ldGhvZCBhbmQgZ28gdG8gaXRzIGNvbmZpZ3VyYXRpb24gZGlhbG9ndWVcbiIKKyIgeCwgWCAgICAgICAgICAgICBleGl0IHdpdGhvdXQgY2hhbmdpbmcgb3Igc2V0dGluZyB1cCB0aGUgaW5zdGFsbGF0aW9uICIKKyJtZXRob2RcbiIKKyJcbiIKKyJNaXNjZWxsYW5lb3VzOlxuIgorIiAgPywgSGVscCwgRjEgICAgICByZXF1ZXN0IGhlbHBcbiIKKyIgXmwgICAgICAgICAgICAgICAgcmVkcmF3IGRpc3BsYXlcbiIKKyIgIC8gICAgICAgICAgICAgICAgc2VhcmNoIChqdXN0IHJldHVybiB0byBjYW5jZWwpXG4iCisiICBcXCAgICAgICAgICAgICAgICByZXBlYXQgbGFzdCBzZWFyY2hcbiIKK21zZ3N0ciAiIgorItCa0LvQsNCy0LjRiNC4INC/0LXRgNC10LzQtdGJ0LXQvdC40Y86INCh0LvQtdC0L9Cf0YDQtdC0LCDQndCw0Ycv0JrQvtC9LCDQktC10YDRhS/QndC40LcsINCd0LDQt9Cw0LQv0JLQv9C10YDRkdC0OlxuIgorIiAgaiwg0YHRgtGA0LXQu9C60LAg0LLQvdC40LcgICAgICAgaywg0YHRgtGA0LXQu9C60LAg0LLQstC10YDRhSAgICAg0L/QtdGA0LXQvNC10YnQtdC90LjQtSDQstGL0LTQtdC70LXQvdC40Y9cbiIKKyIgIE4sIFBhZ2VEb3duLCDQv9GA0L7QsdC10LsgICAgIFAsIFBhZ2VVcCwgQmFja3NwYWNlICAgINC/0YDQvtC60YDRg9GC0LrQsCDRgdC/0LjRgdC60LAg0L3QsCAiCisi0YHRgtGA0LDQvdC40YbRg1xuIgorIiAgXm4gICAgICAgICAgICAgICAgICAgICAgXnAgICAgICAgICAgICAgICAgICAgICAg0L/RgNC+0LrRgNGD0YLQutCwINGB0L/QuNGB0LrQsCDQvdCwICIKKyLRgdGC0YDQvtC60YNcbiIKKyIgIHQsIEhvbWUgICAgICAgICAgICAgICAgIGUsIEVuZCAgICAgICAgICAgICAgICAgINC/0LXRgNC10YXQvtC0INCyINC90LDRh9Cw0LvQvi/QutC+0L3QtdGGICIKKyLRgdC/0LjRgdC60LBcbiIKKyIgIHUgICAgICAgICAgICAgICAgICAgICAgIGQgICAgICAgICAgICAgICAgICAgICAgINC/0YDQvtC60YDRg9GC0LrQsCDQuNC90YQt0YbQuNC4INC90LAgIgorItGB0YLRgNCw0L3QuNGG0YNcbiIKKyIgIF51ICAgICAgICAgICAgICAgICAgICAgIF5kICAgICAgICAgICAgICAgICAgICAgINC/0YDQvtC60YDRg9GC0LrQsCDQuNC90YQt0YbQuNC4INC90LAgIgorItGB0YLRgNC+0LrRg1xuIgorIiAgQiwg0YHRgtGA0LXQu9C60LAg0LLQu9C10LLQviAgICAgICAgRiwg0YHRgtGA0LXQu9C60LAg0LLQv9GA0LDQstC+ICAgICAgINC/0YDQvtC60YDRg9GC0LrQsCDQsiDRgdGC0L7RgNC+0L3Rg1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgINC90LAgMS8zINGN0LrRgNCw0L3QsFxuIgorIiAgXmIgICAgICAgICAgICAgICAgICAgICAgXmYgICAgICAgICAgICAgICAgICAgICAg0L/RgNC+0LrRgNGD0YLQutCwINCyINGB0YLQvtGA0L7QvdGDXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg0L3QsCAxINC60L7Qu9C+0L3QutGDXG4iCisiKNCt0YLQviDRgtC1INC20LUg0LrQu9Cw0LLQuNGI0Lgg0L/QtdGA0LXQvNC10YnQtdC90LjRjywg0YfRgtC+INC4INCyINGB0L/QuNGB0LrQtSDQv9Cw0LrQtdGC0L7Qsi4pXG4iCisiXG4iCisi0JLRi9GF0L7QtDpcbiIKKyIgIFJldHVybiwgRW50ZXIgICAg0LLRi9Cx0YDQsNGC0Ywg0LLRi9C00LXQu9C10L3QvdGL0Lkg0LzQtdGC0L7QtCDQuCDQv9C10YDQtdC50YLQuCDQuiDQtNC40LDQu9C+0LPRgyDQtdCz0L4gIgorItC90LDRgdGC0YDQvtC50LrQuFxuIgorIiAgeCwgWCAgICAgICAgICAgICDQstGL0LnRgtC4LCDQvdC1INC40LfQvNC10L3Rj9GPINC40YHQv9C+0LvRjNC30YPQtdC80YvQuSDQvNC10YLQvtC0INGD0YHRgtCw0L3QvtCy0LrQuFxuIgorIlxuIgorItCg0LDQt9C70LjRh9C90L7QtTpcbiIKKyIgID8sIEhlbHAsIEYxICAgICAg0LLRi9C30L7QsiDRgdC/0YDQsNCy0LrQuFxuIgorIiBebCAgICAgICAgICAgICAgICDQv9C10YDQtdGA0LjRgdC+0LLQsNGC0Ywg0Y3QutGA0LDQvVxuIgorIiAgLyAgICAgICAgICAgICAgICDQv9C+0LjRgdC6ICjQstCy0L7QtCDQtNC70Y8g0L7RgtC80LXQvdGLKVxuIgorIiAgXFwgICAgICAgICAgICAgICAg0L/QvtCy0YLQvtGA0LjRgtGMINC/0L7RgdC70LXQtNC90LjQuSDQv9C+0LjRgdC6XG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzo2MAorbXNnaWQgIlR5cGUgZHNlbGVjdCAtLWhlbHAgZm9yIGhlbHAuIgorbXNnc3RyICLQp9GC0L7QsdGLINC/0L7Qu9GD0YfQuNGC0Ywg0YHQv9GA0LDQstC60YMsINCy0LLQtdC00LjRgtC1IGRzZWxlY3QgLS1oZWxwLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0MworbXNnaWQgImEiCittc2dzdHIgImEiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDMKK21zZ2lkICJbQV1jY2VzcyIKK21zZ3N0ciAiW0FdINCc0LXRgtC+0LQiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDMKK21zZ2lkICJDaG9vc2UgdGhlIGFjY2VzcyBtZXRob2QgdG8gdXNlLiIKK21zZ3N0ciAi0JLRi9Cx0L7RgCDQvNC10YLQvtC00LAg0YPRgdGC0LDQvdC+0LLQutC4LiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NAorbXNnaWQgInUiCittc2dzdHIgInUiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDQKK21zZ2lkICJbVV1wZGF0ZSIKK21zZ3N0ciAiW1VdINCe0LHQvdC+0LLQuNGC0YwiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDQKK21zZ2lkICJVcGRhdGUgbGlzdCBvZiBhdmFpbGFibGUgcGFja2FnZXMsIGlmIHBvc3NpYmxlLiIKK21zZ3N0ciAi0J7QsdC90L7QstC70LXQvdC40LUg0YHQv9C40YHQutCwINC00L7RgdGC0YPQv9C90YvRhSDQv9Cw0LrQtdGC0L7Qsi4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDUKK21zZ2lkICJzIgorbXNnc3RyICJzIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ1Cittc2dpZCAiW1NdZWxlY3QiCittc2dzdHIgIltTXSDQktGL0LHRgNCw0YLRjCIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NQorbXNnaWQgIlJlcXVlc3Qgd2hpY2ggcGFja2FnZXMgeW91IHdhbnQgb24geW91ciBzeXN0ZW0uIgorbXNnc3RyICLQktGL0LHQvtGAINC90LDQsdC+0YDQsCDQv9Cw0LrQtdGC0L7QsiDQtNC70Y8g0YPRgdGC0LDQvdC+0LLQutC4LCDQvtCx0L3QvtCy0LvQtdC90LjRjyDQuCDRg9C00LDQu9C10L3QuNGPLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NgorbXNnaWQgImkiCittc2dzdHIgImkiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDYKK21zZ2lkICJbSV1uc3RhbGwiCittc2dzdHIgIltJXSDQo9GB0YLQsNC90L7QstC40YLRjCIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NgorbXNnaWQgIkluc3RhbGwgYW5kIHVwZ3JhZGUgd2FudGVkIHBhY2thZ2VzLiIKK21zZ3N0ciAi0KPRgdGC0LDQvdC+0LLQutCwINC4INC+0LHQvdC+0LLQu9C10L3QuNC1INC/0LDQutC10YLQvtCyLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NworbXNnaWQgImMiCittc2dzdHIgImMiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDcKK21zZ2lkICJbQ11vbmZpZyIKK21zZ3N0ciAiW0NdINCd0LDRgdGC0YDQvtC40YLRjCIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NworbXNnaWQgIkNvbmZpZ3VyZSBhbnkgcGFja2FnZXMgdGhhdCBhcmUgdW5jb25maWd1cmVkLiIKK21zZ3N0ciAi0J3QsNGB0YLRgNC+0LnQutCwINC10YnRkSDQvdC1INC90LDRgdGC0YDQvtC10L3QvdGL0YUg0L/QsNC60LXRgtC+0LIuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ4Cittc2dpZCAiciIKK21zZ3N0ciAiciIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OAorbXNnaWQgIltSXWVtb3ZlIgorbXNnc3RyICJbUl0g0KPQtNCw0LvQuNGC0YwiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDgKK21zZ2lkICJSZW1vdmUgdW53YW50ZWQgc29mdHdhcmUuIgorbXNnc3RyICLQo9C00LDQu9C10L3QuNC1INC90LXQvdGD0LbQvdGL0YUg0L/QsNC60LXRgtC+0LIuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ5Cittc2dpZCAicSIKK21zZ3N0ciAicSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OQorbXNnaWQgIltRXXVpdCIKK21zZ3N0ciAiW1FdINCS0YvRhdC+0LQiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDkKK21zZ2lkICJRdWl0IGRzZWxlY3QuIgorbXNnc3RyICLQktGL0YXQvtC0INC40Lcg0L/RgNC+0LPRgNCw0LzQvNGLLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE1MAorbXNnaWQgIm1lbnUiCittc2dzdHIgItC80LXQvdGOIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTU1CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiBgJXMnIHBhY2thZ2UgaGFuZGxpbmcgZnJvbnRlbmQgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAi0JjQvdGC0LXRgNGE0LXQudGBINGD0L/RgNCw0LLQu9C10L3QuNGPINC/0LDQutC10YLQsNC80LggRGViaWFuIGAlcycsINCy0LXRgNGB0LjRjyAlcy5cbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE1OAorbXNnaWQgIiIKKyJDb3B5cmlnaHQgKEMpIDE5OTQtMTk5NiBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLlxuIgorbXNnc3RyICIiCisiQ29weXJpZ2h0IChDKSAxOTk0LTE5OTYgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE2MgorbXNnaWQgIiIKKyJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAyIG9yXG4iCisibGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuXG4iCittc2dzdHIgIiIKKyLQrdGC0L4g0YHQstC+0LHQvtC00L3QvtC1INC/0YDQvtCz0YDQsNC80LzQvdC+0LUg0L7QsdC10YHQv9C10YfQtdC90LjQtS4g0KHQvNC+0YLRgNC40YLQtSDRg9GB0LvQvtCy0LjRjyDRgNCw0YHQv9GA0L7RgdGC0YDQsNC90LXQvdC40Y8g0LJcbiIKKyLQo9C90LjQstC10YDRgdCw0LvRjNC90L7QuSDQvtCx0YnQtdGB0YLQstC10L3QvdC+0Lkg0LvQuNGG0LXQvdC30LjQuCBHTlUg0LLQtdGA0YHQuNC4IDIg0LjQu9C4INCx0L7Qu9C10LUg0L/QvtC30LTQvdC10LkuXG4iCisi0J3QmNCa0JDQmtCY0JUg0LPQsNGA0LDQvdGC0LjQuCDQvdC1INC/0YDQtdC00L7RgdGC0LDQstC70Y/RjtGC0YHRjy5cbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE3MiBkc2VsZWN0L21haW4uY2M6MjIwCittc2dpZCAiPHN0YW5kYXJkIG91dHB1dD4iCittc2dzdHIgIjzRgdGC0LDQvdC00LDRgNGC0L3Ri9C5INCy0YvQstC+0LQ+IgorCisjOiBkc2VsZWN0L21haW4uY2M6MTgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gWzxhY3Rpb24+IC4uLl1cbiIKKyJcbiIKK21zZ3N0ciAiIgorItCY0YHQv9C+0LvRjNC30L7QstCw0L3QuNC1OiAlcyBbPNC/0LDRgNCw0LzQtdGC0YA+IC4uLl0gWzzQtNC10LnRgdGC0LLQuNC1PiAuLi5dXG4iCisiXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyIgIC0tZXhwZXJ0ICAgICAgICAgICAgICAgICAgIFR1cm4gb24gZXhwZXJ0IG1vZGUuXG4iCisiICAtLWRlYnVnIDxmaWxlPiB8IC1EPGZpbGU+ICBUdXJuIG9uIGRlYnVnZ2luZywgc2VuZGluZyBvdXRwdXQgdG8gPGZpbGU+LlxuIgorIiAgLS1jb2xvdXIgfCAtLWNvbG9yIHNjcmVlbnBhcnQ6W2ZvcmVncm91bmRdLFtiYWNrZ3JvdW5kXVs6YXR0clsrYXR0cisuLl1dXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDb25maWd1cmUgc2NyZWVuIGNvbG91cnMuXG4iCisiXG4iCittc2dzdHIgIiIKKyLQn9Cw0YDQsNC80LXRgtGA0Ys6XG4iCisiICAtLWFkbWluZGlyIDzQutCw0YLQsNC70L7Qsz4gICAgICAg0JjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMIDzQutCw0YLQsNC70L7Qsz4g0LLQvNC10YHRgtC+ICVzLlxuIgorIiAgLS1leHBlcnQgICAgICAgICAgICAgICAgICAg0JLQutC70Y7Rh9C40YLRjCDRjdC60YHQv9C10YDRgtC90YvQuSDRgNC10LbQuNC8LlxuIgorIiAgLS1kZWJ1ZyA80YTQsNC50Ls+IHwgLUQ80YTQsNC50Ls+ICDQktC60LvRjtGH0LjRgtGMINC+0YLQu9Cw0LTQutGDLCDQv9C+0YHRi9C70LDRgtGMINCy0YHQtSDRgdC+0L7QsdGJ0LXQvdC40Y8g0LIgIgorIjzRhNCw0LnQuz4uXG4iCisiICAtLWNvbG91ciB8IC0tY29sb3Igc2NyZWVucGFydDpbZm9yZWdyb3VuZF0sW2JhY2tncm91bmRdWzphdHRyWythdHRyKy4uXV1cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgINCd0LDRgdGC0YDQvtC40YLRjCDRhtCy0LXRgtCwINGN0LrRgNCw0L3QsC5cbiIKKyJcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE5NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgICBTaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICAgU2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgICAg0J/QvtC60LDQt9Cw0YLRjCDRjdGC0YMg0YHQv9GA0LDQstC60YMuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgICDQn9C+0LrQsNC30LDRgtGMINCy0LXRgNGB0LjRji5cbiIKKyJcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjIwMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQWN0aW9uczpcbiIKKyIgIGFjY2VzcyB1cGRhdGUgc2VsZWN0IGluc3RhbGwgY29uZmlnIHJlbW92ZSBxdWl0XG4iCisiXG4iCittc2dzdHIgIiIKKyLQlNC10LnRgdGC0LLQuNGPOlxuIgorIiAgYWNjZXNzIHVwZGF0ZSBzZWxlY3QgaW5zdGFsbCBjb25maWcgcmVtb3ZlIHF1aXRcbiIKKyJcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjIwNQorIywgYy1mb3JtYXQKK21zZ2lkICJTY3JlZW5wYXJ0czpcbiIKK21zZ3N0ciAi0KHQtdC60YLQvtGA0Ysg0Y3QutGA0LDQvdCwOlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjEwCisjLCBjLWZvcm1hdAorbXNnaWQgIkNvbG91cnM6XG4iCittc2dzdHIgItCm0LLQtdGC0LA6XG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiQXR0cmlidXRlczpcbiIKK21zZ3N0ciAi0JDRgtGA0LjQsdGD0YLRizpcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjIzMworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBvcGVuIGRlYnVnIGZpbGUgYCUuMjU1cydcbiIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQvtGC0LrRgNGL0YLRjCDQvtGC0LvQsNC00L7Rh9C90YvQuSDRhNCw0LnQuyBgJS4yNTVzJ1xuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjUzCisjLCBjLWZvcm1hdAorbXNnaWQgIkludmFsaWQgJXMgYCVzJ1xuIgorbXNnc3RyICLQndC10LrQvtGA0YDQtdC60YLQvdGL0LkgJXMgYCVzJ1xuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjcwCittc2dpZCAic2NyZWVuIHBhcnQiCittc2dzdHIgItGB0LXQutGC0L7RgCDRjdC60YDQsNC90LAiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyNzYKK21zZ2lkICJOdWxsIGNvbG91ciBzcGVjaWZpY2F0aW9uXG4iCittc2dzdHIgItCX0LDQtNCw0Y7RidC40LUg0YbQstC10YIg0LfQvdCw0YfQtdC90LjRjyDQv9GD0YHRgtGLXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyODQgZHNlbGVjdC9tYWluLmNjOjI4OQorbXNnaWQgImNvbG91ciIKK21zZ3N0ciAi0YbQstC10YIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyOTcKK21zZ2lkICJjb2xvdXIgYXR0cmlidXRlIgorbXNnc3RyICLQsNGC0YDQuNCx0YPRgiDRhtCy0LXRgtCwIgorCisjOiBkc2VsZWN0L21haW4uY2M6MzI5Cittc2dpZCAiVGVybWluYWwgZG9lcyBub3QgYXBwZWFyIHRvIHN1cHBvcnQgY3Vyc29yIGFkZHJlc3NpbmcuXG4iCittc2dzdHIgItCi0LXRgNC80LjQvdCw0Lsg0L3QtSDQv9C+0LTQtNC10YDQttC40LLQsNC10YIg0L/QvtC30LjRhtC40L7QvdC40YDQvtCy0LDQvdC40LUg0LrRg9GA0YHQvtGA0LAuXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzozMzEKK21zZ2lkICJUZXJtaW5hbCBkb2VzIG5vdCBhcHBlYXIgdG8gc3VwcG9ydCBoaWdobGlnaHRpbmcuXG4iCittc2dzdHIgItCi0LXRgNC80LjQvdCw0Lsg0L3QtSDQv9C+0LTQtNC10YDQttC40LLQsNC10YIg0L/QvtC00YHQstC10YLQutGDLlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MzMzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJTZXQgeW91ciBURVJNIHZhcmlhYmxlIGNvcnJlY3RseSwgdXNlIGEgYmV0dGVyIHRlcm1pbmFsLFxuIgorIm9yIG1ha2UgZG8gd2l0aCB0aGUgcGVyLXBhY2thZ2UgbWFuYWdlbWVudCB0b29sICVzLlxuIgorbXNnc3RyICIiCisi0JfQsNC00LDQudGC0LUg0LLQtdGA0L3QvtC1INC30L3QsNGH0LXQvdC40LUg0L/QtdGA0LXQvNC10L3QvdC+0LkgVEVSTSwg0LjRgdC/0L7Qu9GM0LfRg9C50YLQtSDQsdC+0LvQtdC1INGE0YPQvdC60YbQuNC+0L3QsNC70YzQvdGL0LlcbiIKKyLRgtC10YDQvNC40L3QsNC7INC40LvQuCDQuNGB0L/QvtC70YzQt9GD0LnRgtC1INC/0YDQvtCz0YDQsNC80LzRgyDRg9C/0YDQsNCy0LvQtdC90LjRjyDQvtGC0LTQtdC70YzQvdGL0LzQuCDQv9Cw0LrQtdGC0LDQvNC4ICVzLlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MzM2Cittc2dpZCAidGVybWluYWwgbGFja3MgbmVjZXNzYXJ5IGZlYXR1cmVzLCBnaXZpbmcgdXAiCittc2dzdHIgItGDINGC0LXRgNC80LjQvdCw0LvQsCDQvtGC0YHRg9GC0YHRgtCy0YPRjtGCINC90LXQvtCx0YXQvtC00LjQvNGL0LUg0LLQvtC30LzQvtC20L3QvtGB0YLQuCwg0L7RgdGC0LDQvdC+0LIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzo0MTcKK21zZ2lkICIiCisiXG4iCisiXG4iCisiTW92ZSBhcm91bmQgd2l0aCBeUCBhbmQgXk4sIGN1cnNvciBrZXlzLCBpbml0aWFsIGxldHRlcnMsIG9yIGRpZ2l0cztcbiIKKyJQcmVzcyA8ZW50ZXI+IHRvIGNvbmZpcm0gc2VsZWN0aW9uLiAgIF5MIHJlZHJhd3Mgc2NyZWVuLlxuIgorIlxuIgorbXNnc3RyICIiCisiXG4iCisiXG4iCisi0JjRgdC/0L7Qu9GM0LfRg9C50YLQtSDQutC+0LzQsdC40L3QsNGG0LjQuCDQutC70LDQstC40YggXlAg0LggXk4sINGB0YLRgNC10LvQutC4LCDQv9C10YDQstGL0LUg0LHRg9C60LLRiyDQutC+0LzQsNC90LQg0LjQu9C4ICIKKyLRhtC40YTRgNGLO1xuIgorItCd0LDQttC80LjRgtC1INCy0LLQvtC0INC00LvRjyDQstGL0LHQvtGA0LAg0LTQtdC50YHRgtCy0LjRjy4gIF5MIC0tINC/0LXRgNC10YDQuNGB0L7QstCw0YLRjCDRjdC60YDQsNC9LlxuIgorIlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6NDI4Cittc2dpZCAiIgorIlxuIgorIlxuIgorIlJlYWQtb25seSBhY2Nlc3M6IG9ubHkgcHJldmlldyBvZiBzZWxlY3Rpb25zIGlzIGF2YWlsYWJsZSEiCittc2dzdHIgIiIKKyJcbiIKKyJcbiIKKyLQlNC+0YHRgtGD0L8g0YLQvtC70YzQutC+INC00LvRjyDRh9GC0LXQvdC40Y86INC00L7RgdGC0YPQv9C10L0g0YLQvtC70YzQutC+INC/0YDQvtGB0LzQvtGC0YAg0YHQvtGB0YLQvtGP0L3QuNGPINC/0LDQutC10YLQvtCyISIKKworIzogZHNlbGVjdC9tYWluLmNjOjQ0OAorbXNnaWQgImZhaWxlZCB0byBnZXRjaCBpbiBtYWluIG1lbnUiCittc2dzdHIgItC+0LbQuNC00LDQvdC40LUg0L3QsNC20LDRgtC40Y8g0LrQu9Cw0LLQuNGI0Lgg0LIg0LPQu9Cw0LLQvdC+0Lwg0LzQtdC90Y4g0LfQsNCy0LXRgNGI0LjQu9C+0YHRjCDQvdC10YPQtNCw0YfQvdC+IgorCisjOiBkc2VsZWN0L21haW4uY2M6NTMxCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gYWN0aW9uIHN0cmluZyBgJS41MHMnIgorbXNnc3RyICLQvdC10LjQt9Cy0LXRgdGC0L3QvtC1INC00LXQudGB0YLQstC40LUgYCUuNTBzJyIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzo3NworbXNnaWQgImRzZWxlY3QgLSBsaXN0IG9mIGFjY2VzcyBtZXRob2RzIgorbXNnc3RyICJkc2VsZWN0IC0tINGB0L/QuNGB0L7QuiDQvNC10YLQvtC00L7QsiDQtNC+0YHRgtGD0L/QsCIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzo4NgorIywgYy1mb3JtYXQKK21zZ2lkICJBY2Nlc3MgbWV0aG9kIGAlcycuIgorbXNnc3RyICLQnNC10YLQvtC0INC00L7RgdGC0YPQv9CwIGAlcycuIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjEyMAorbXNnaWQgIkFiYnJldi4iCittc2dzdHIgItCh0L7QutGALiIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxMjEgZHNlbGVjdC9wa2dpbmZvLmNjOjEwNSBkc2VsZWN0L3BrZ3RvcC5jYzoyOTEKK21zZ2lkICJEZXNjcmlwdGlvbiIKK21zZ3N0ciAi0J7Qv9C40YHQsNC90LjQtSIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxNjQgZHNlbGVjdC9wa2dsaXN0LmNjOjU3MgorbXNnaWQgImRvdXBkYXRlIGZhaWxlZCIKK21zZ3N0ciAi0YDQsNCx0L7RgtCwINGE0YPQvdC60YbQuNC4IGRvdXBkYXRlINC30LDQstC10YDRiNC40LvQsNGB0Ywg0L3QtdGD0LTQsNGH0L3QviIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxNjYgZHNlbGVjdC9wa2dsaXN0LmNjOjU3NQorbXNnaWQgImZhaWxlZCB0byB1bmJsb2NrIFNJR1dJTkNIIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGA0LDQt9Cx0LvQvtC60LjRgNC+0LLQsNGC0Ywg0YHQuNCz0L3QsNC7IFNJR1dJTkNIIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjE3MCBkc2VsZWN0L3BrZ2xpc3QuY2M6NTgwCittc2dpZCAiZmFpbGVkIHRvIHJlLWJsb2NrIFNJR1dJTkNIIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC30LDQvdC+0LLQviDQsdC70L7QutC40YDQvtCy0LDRgtGMINGB0LjQs9C90LDQuyBTSUdXSU5DSCIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxNzEgZHNlbGVjdC9wa2dsaXN0LmNjOjU4MgorbXNnaWQgImdldGNoIGZhaWxlZCIKK21zZ3N0ciAi0L7QttC40LTQsNC90LjQtSDQvdCw0LbQsNGC0LjRjyDQutC70LDQstC40YjQuCDQt9Cw0LLQtdGA0YjQuNC70L7RgdGMINC90LXRg9C00LDRh9C90L4iCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTg4Cittc2dpZCAiRXhwbGFuYXRpb24iCittc2dzdHIgItCe0L/QuNGB0LDQvdC40LUg0LzQtdGC0L7QtNCwIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjE5NworbXNnaWQgIk5vIGV4cGxhbmF0aW9uIGF2YWlsYWJsZS4iCittc2dzdHIgItCd0LXRgiDQvtC/0LjRgdCw0L3QuNGPLiIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6NjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIlxuIgorIiVzOiAlc1xuIgorbXNnc3RyICIiCisiXG4iCisiXG4iCisiJXM6ICVzXG4iCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjcwCittc2dpZCAiIgorIlxuIgorIlByZXNzIDxlbnRlcj4gdG8gY29udGludWUuIgorbXNnc3RyICIiCisiXG4iCisi0KfRgtC+0LHRiyDQv9GA0L7QtNC+0LvQttC40YLRjCwg0L3QsNC20LzQuNGC0LUgPNCy0LLQvtC0Pi4iCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjE2MQorIywgYy1mb3JtYXQKK21zZ2lkICJQcmVzcyA8ZW50ZXI+IHRvIGNvbnRpbnVlLlxuIgorbXNnc3RyICLQp9GC0L7QsdGLINC/0YDQvtC00L7Qu9C20LjRgtGMLCDQvdCw0LbQvNC40YLQtSDQstCy0L7QtC5cbiIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MTYyCittc2dpZCAiPHN0YW5kYXJkIGVycm9yPiIKK21zZ3N0ciAiPNGB0YLQsNC90LTQsNGA0YLQvdGL0Lkg0L/QvtGC0L7QuiDQvtGI0LjQsdC+0Lo+IgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoxNjUKK21zZ2lkICJlcnJvciByZWFkaW5nIGFja25vd2xlZGdlbWVudCBvZiBwcm9ncmFtIGZhaWx1cmUgbWVzc2FnZSIKK21zZ3N0ciAi0L7RiNC40LHQutCwINGH0YLQtdC90LjRjyDQv9C+0LTRgtCy0LXRgNC20LTQtdC90LjRjyDRgdC+0L7QsdGJ0LXQvdC40Y8g0L/RgNC+0LPRgNCw0LzQvNGLINC+0LEg0L7RiNC40LHQutC1IgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoxOTYKK21zZ2lkICJ1cGRhdGUgYXZhaWxhYmxlIGxpc3Qgc2NyaXB0IgorbXNnc3RyICLRgdC60YDQuNC/0YIg0L7QsdC90L7QstC70LXQvdC40Y8g0YHQv9C40YHQutCwINC00L7RgdGC0YPQv9C90YvRhSDQv9Cw0LrQtdGC0L7QsiIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MjAwCittc2dpZCAiaW5zdGFsbGF0aW9uIHNjcmlwdCIKK21zZ3N0ciAi0YHQutGA0LjQv9GCINGD0YHRgtCw0L3QvtCy0LrQuCIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MjQ2Cittc2dpZCAicXVlcnkvc2V0dXAgc2NyaXB0IgorbXNnc3RyICLRgdC60YDQuNC/0YIg0L3QsNGB0YLRgNC+0LnQutC4IgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzo1MworIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gbWV0aG9kIG9wdGlvbnMgZmlsZSBgJS4yNTBzJyAtLSAlcyIKK21zZ3N0ciAi0YHQuNC90YLQsNC60YHQuNGH0LXRgdC60LDRjyDQvtGI0LjQsdC60LAg0LIg0YTQsNC50LvQtSDRgdC/0LjRgdC60LAg0LzQtdGC0L7QtNC+0LIgJS4yNTBzOiAlcyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcmVhZGluZyBvcHRpb25zIGZpbGUgYCUuMjUwcyciCittc2dzdHIgItC+0YjQuNCx0LrQsCDRh9GC0LXQvdC40Y8g0YHQv9C40YHQutCwINC80LXRgtC+0LTQvtCyICUuMjUwcyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgYCUuMjUwcycgZGlyZWN0b3J5IGZvciByZWFkaW5nIG1ldGhvZHMiCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L/RgNC+0YfQuNGC0LDRgtGMINGB0L/QuNGB0L7QuiDQvNC10YLQvtC00L7QsiDQtNC+0YHRgtGD0L/QsCDQuNC3INC60LDRgtCw0LvQvtCz0LAgJS4yNTBzIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxMDYKKyMsIGMtZm9ybWF0Cittc2dpZCAibWV0aG9kIGAlLjI1MHMnIGhhcyBuYW1lIHRoYXQgaXMgdG9vIGxvbmcgKCVkID4gJWQgY2hhcmFjdGVycykiCittc2dzdHIgIiIKKyLQvdCw0LfQstCw0L3QuNC1INC80LXRgtC+0LTQsCAo0L3QsNGH0LjQvdCw0LXRgtGB0Y8g0YEgJS4yNTBzKSDRgdC70LjRiNC60L7QvCDQtNC70LjQvdC90L7QtSAoJWQgPiAlZCDRgdC40LzQstC+0LvQvtCyKSIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTE3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBhY2Nlc3MgbWV0aG9kIHNjcmlwdCBgJS4yNTBzJyIKK21zZ3N0ciAi0L3QtdGCINC00L7RgdGC0YPQv9CwINC6INGB0LrRgNC40L/RgtGDINC80LXRgtC+0LTQsCDQtNC+0YHRgtGD0L/QsCAlLjI1MHMiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjEyMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBtZXRob2Qgb3B0aW9ucyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC/0YDQvtGH0LjRgtCw0YLRjCDRgdC/0LjRgdC+0Log0LLQvtC30LzQvtC20L3Ri9GFINC80LXRgtC+0LTQvtCyINC00L7RgdGC0YPQv9CwICUuMjUwcyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTQ3Cittc2dpZCAibm9uLWRpZ2l0IHdoZXJlIGRpZ2l0IHdhbnRlZCIKK21zZ3N0ciAi0L7QsdC90LDRgNGD0LbQtdC9INGB0LjQvNCy0L7Quywg0L3QtSDRj9Cy0LvRj9GO0YnQuNC50YHRjyDRhtC40YTRgNC+0LkiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE1MAorbXNnaWQgIkVPRiBpbiBpbmRleCBzdHJpbmciCittc2dzdHIgItCyINGB0YLRgNC+0LrQtSDRgdC/0LjRgdC60LAg0L7QsdC90LDRgNGD0LbQtdC9INGB0LjQvNCy0L7QuyDQutC+0L3RhtCwINGE0LDQudC70LAiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE1MworbXNnaWQgImluZGV4IHN0cmluZyB0b28gbG9uZyIKK21zZ3N0ciAi0YHRgtGA0L7QutCwINGB0L/QuNGB0LrQsCDRh9C10YDQtdGB0YfRg9GAINC00LvQuNC90L3QsCIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTU2Cittc2dpZCAibmV3bGluZSBiZWZvcmUgb3B0aW9uIG5hbWUgc3RhcnQiCittc2dzdHIgItC/0LXRgNC10LQg0LjQvNC10L3QtdC8INC80LXRgtC+0LTQsCDQvtCx0L3QsNGA0YPQttC10L0g0YHQuNC80LLQvtC7INC60L7QvdGG0LAg0YHRgtGA0L7QutC4IgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNTgKK21zZ2lkICJFT0YgYmVmb3JlIG9wdGlvbiBuYW1lIHN0YXJ0IgorbXNnc3RyICLQv9C10YDQtdC0INC40LzQtdC90LXQvCDQvNC10YLQvtC00LAg0L7QsdC90LDRgNGD0LbQtdC9INGB0LjQvNCy0L7QuyDQutC+0L3RhtCwINGE0LDQudC70LAiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE2MgorbXNnaWQgIm5vbmFscGhhIHdoZXJlIG9wdGlvbiBuYW1lIHN0YXJ0IHdhbnRlZCIKK21zZ3N0ciAiIgorItCyINC90LDRh9Cw0LvQtSDQuNC80LXQvdC4INC80LXRgtC+0LTQsCDQvtCx0L3QsNGA0YPQttC10L0g0YHQuNC80LLQvtC7LCDQvdC1INGP0LLQu9GP0Y7RidC40LnRgdGPINCx0YPQutCy0L7QuSDQuNC70Lgg0YHQuNC80LLQvtC70L7QvCAiCisi0L/QvtC00YfRkdGA0LrQuNCy0LDQvdC40Y8iCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE2NAorbXNnaWQgIm5vbi1hbHBoYW51bSBpbiBvcHRpb24gbmFtZSIKK21zZ3N0ciAiIgorItCyINC40LzQtdC90Lgg0LzQtdGC0L7QtNCwINC+0LHQvdCw0YDRg9C20LXQvSDRgdC40LzQstC+0LssINC90LUg0Y/QstC70Y/RjtGJ0LjQudGB0Y8g0LHRg9C60LLQvtC5LCDRhtC40YTRgNC+0Lkg0LjQu9C4INGB0LjQvNCy0L7Qu9C+0LwgIgorItC/0L7QtNGH0ZHRgNC60LjQstCw0L3QuNGPIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNjcKK21zZ2lkICJFT0YgaW4gb3B0aW9uIG5hbWUiCittc2dzdHIgItCyINC40LzQtdC90Lgg0LzQtdGC0L7QtNCwINC+0LHQvdCw0YDRg9C20LXQvSDRgdC40LzQstC+0Lsg0LrQvtC90YbQsCDRhNCw0LnQu9CwIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNzIKK21zZ2lkICJuZXdsaW5lIGJlZm9yZSBzdW1tYXJ5IgorbXNnc3RyICLQv9C10YDQtdC0INC+0L/QuNGB0LDQvdC40LXQvCDQvNC10YLQvtC00LAg0L7QsdC90LDRgNGD0LbQtdC9INGB0LjQvNCy0L7QuyDQutC+0L3RhtCwINGB0YLRgNC+0LrQuCIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTc0Cittc2dpZCAiRU9GIGJlZm9yZSBzdW1tYXJ5IgorbXNnc3RyICLQv9C10YDQtdC0INC+0L/QuNGB0LDQvdC40LXQvCDQvNC10YLQvtC00LAg0L7QsdC90LDRgNGD0LbQtdC9INGB0LjQvNCy0L7QuyDQutC+0L3RhtCwINGE0LDQudC70LAiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE4MAorbXNnaWQgIkVPRiBpbiBzdW1tYXJ5IC0gbWlzc2luZyBuZXdsaW5lIgorbXNnc3RyICIiCisi0LIg0L7Qv9C40YHQsNC90LjQuCDQvtCx0L3QsNGA0YPQttC10L0g0YHQuNC80LLQvtC7INC60L7QvdGG0LAg0YTQsNC50LvQsCAtLSDQvtGC0YHRg9GC0YHRgtCy0YPQtdGCINGB0LjQvNCy0L7QuyDQutC+0L3RhtCwINGB0YLRgNC+0LrQuCIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTkwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIG9wdGlvbiBkZXNjcmlwdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC+0YLQutGA0YvRgtGMINGE0LDQudC7INC+0L/QuNGB0LDQvdC40Y8g0LzQtdGC0L7QtNCwICUuMjUwcyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTk0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IG9wdGlvbiBkZXNjcmlwdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC/0L7Qu9GD0YfQuNGC0Ywg0LjQvdGE0L7RgNC80LDRhtC40Y4g0L4g0YTQsNC50LvQtSDQvtC/0LjRgdCw0L3QuNGPINC80LXRgtC+0LTQsCAlLjI1MHMiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE5OAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCBvcHRpb24gZGVzY3JpcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi0L7RiNC40LHQutCwINGH0YLQtdC90LjRjyDRhNCw0LnQu9CwINC+0L/QuNGB0LDQvdC40Y8g0LzQtdGC0L7QtNCwICUuMjUwcyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MjAxCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGR1cmluZyByZWFkIG9mIG9wdGlvbiBkZXNjcmlwdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLQvtGI0LjQsdC60LAg0YfRgtC10L3QuNGPINGE0LDQudC70LAg0L7Qv9C40YHQsNC90LjRjyDQvNC10YLQvtC00LAg0LTQvtGB0YLRg9C/0LAgJS4yNTBzIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgZHVyaW5nIHJlYWQgb2YgbWV0aG9kIG9wdGlvbnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi0L7RiNC40LHQutCwINGH0YLQtdC90LjRjyDRgdC/0LjRgdC60LAg0LLQvtC30LzQvtC20L3Ri9GFINC80LXRgtC+0LTQvtCyINC00L7RgdGC0YPQv9CwICUuMjUwcyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MjQ3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIGN1cnJlbnQgb3B0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L7RgtC60YDRi9GC0Ywg0YTQsNC50Lsg0YLQtdC60YPRidC10LPQviDQvNC10YLQvtC00LAg0LTQvtGB0YLRg9C/0LAgJS4yNTBzIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyODkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gbmV3IG9wdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC+0YLQutGA0YvRgtGMINC90L7QstGL0Lkg0YTQsNC50Lsg0LzQtdGC0L7QtNCwINC00L7RgdGC0YPQv9CwICUuMjUwcyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MjkyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgb3B0aW9uIHRvIGAlLjI1MHMnIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC30LDQv9C40YHQsNGC0Ywg0L3QvtCy0YvQuSDRhNCw0LnQuyDQvNC10YLQvtC00LAg0LTQvtGB0YLRg9C/0LAgJS4yNTBzIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyOTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIG5ldyBvcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQt9Cw0LrRgNGL0YLRjCDQvdC+0LLRi9C5INGE0LDQudC7INC80LXRgtC+0LTQsCDQtNC+0YHRgtGD0L/QsCAlLjI1MHMiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjI5NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgb3B0aW9uIGFzIGAlLjI1MHMnIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC/0LXRgNC10LjQvNC10L3QvtCy0LDRgtGMINC90L7QstGL0Lkg0YTQsNC50Lsg0LzQtdGC0L7QtNCwINC00L7RgdGC0YPQv9CwINCyICUuMjUwcyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjM2Cittc2dpZCAibmV3IHBhY2thZ2UiCittc2dzdHIgItC90L7QstGL0Lkg0L/QsNC60LXRgiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjM3Cittc2dpZCAiaW5zdGFsbCIKK21zZ3N0ciAi0YPRgdGC0LDQvdC+0LLQuNGC0YwiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzozOAorbXNnaWQgImhvbGQiCittc2dzdHIgItC30LDRhNC40LrRgdC40YDQvtCy0LDRgtGMIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MzkKK21zZ2lkICJyZW1vdmUiCittc2dzdHIgItGD0LTQsNC70LjRgtGMIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NDAKK21zZ2lkICJwdXJnZSIKK21zZ3N0ciAi0LLRi9GH0LjRgdGC0LjRgtGMIgorCisjLiBUUkFOU0xBVE9SUzogVGhlIHNwYWNlIGlzIGEgdHJpY2sgdG8gd29yayBhcm91bmQgZ2V0dGV4dCB3aGljaCB1c2VzCisjLiAqIHRoZSBlbXB0eSBzdHJpbmcgdG8gc3RvcmUgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHRyYW5zbGF0aW9uLiBETyBOT1QKKyMuICogQ0hBTkdFIFRIQVQgSU4gQSBUUkFOU0xBVElPTiEgVGhlIGNvZGUgcmVhbGx5IHJlbGllcyBvbiB0aGF0IGJlaW5nCisjLiAqIGEgc2luZ2xlIHNwYWNlLgorIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjQ3Cittc2dpZCAiICIKK21zZ3N0ciAiICIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjQ4Cittc2dpZCAiUkVJTlNUQUxMIgorbXNnc3RyICLQn9CV0KDQldCj0KHQotCQ0J3QntCS0JjQotCsIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTEKK21zZ2lkICJub3QgaW5zdGFsbGVkIgorbXNnc3RyICLQvdC1INGD0YHRgtCw0L3QvtCy0LvQtdC9IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTIKK21zZ2lkICJyZW1vdmVkIChjb25maWdzIHJlbWFpbikiCittc2dzdHIgItGD0LTQsNC70ZHQvSwg0L3QviDRhNCw0LnQu9GLINC60L7QvdGE0LjQs9GD0YDQsNGG0LjQuCDRgdC+0YXRgNCw0L3QtdC90YsiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1MworbXNnaWQgImhhbGYgaW5zdGFsbGVkIgorbXNnc3RyICLRh9Cw0YHRgtC40YfQvdC+INGD0YHRgtCw0L3QvtCy0LvQtdC9IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTQKK21zZ2lkICJ1bnBhY2tlZCAobm90IHNldCB1cCkiCittc2dzdHIgItGA0LDRgdC/0LDQutC+0LLQsNC9LCDQvdC+INC90LUg0L3QsNGB0YLRgNC+0LXQvSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjU1Cittc2dpZCAiaGFsZiBjb25maWd1cmVkIChjb25maWcgZmFpbGVkKSIKK21zZ3N0ciAi0L3QsNC/0L7Qu9C+0LLQuNC90YMg0L3QsNGB0YLRgNC+0LXQvSAo0L3QtSDRg9C00LDQu9C+0YHRjCDQvdCw0YHRgtGA0L7QuNGC0YwpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTYKK21zZ2lkICJhd2FpdGluZyB0cmlnZ2VyIHByb2Nlc3NpbmciCittc2dzdHIgItC+0LbQuNC00LDQtdGCINC90LDRh9Cw0LvQsCDQvtCx0YDQsNCx0L7RgtC60LgiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1NworbXNnaWQgInRyaWdnZXJlZCIKK21zZ3N0ciAi0L7QsdGA0LDQsdC+0YLQutCwINC90LDRh9Cw0YLQsCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjU4Cittc2dpZCAiaW5zdGFsbGVkIgorbXNnc3RyICLRg9GB0YLQsNC90L7QstC70LXQvSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjYxCittc2dpZCAiUmVxdWlyZWQiCittc2dzdHIgItCe0LHRj9C30LDRgtC10LvRjNC90YvQuSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjYyCittc2dpZCAiSW1wb3J0YW50IgorbXNnc3RyICLQktCw0LbQvdGL0LkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo2MworbXNnaWQgIlN0YW5kYXJkIgorbXNnc3RyICLQodGC0LDQvdC00LDRgNGC0L3Ri9C5IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjQKK21zZ2lkICJPcHRpb25hbCIKK21zZ3N0ciAi0JTQvtC/0L7Qu9C90LjRgtC10LvRjNC90YvQuSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjY1Cittc2dpZCAiRXh0cmEiCittc2dzdHIgItCt0LrRgdGC0YDQsCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjY2Cittc2dpZCAiIUJ1ZyEiCittc2dzdHIgIiHQntGI0LjQsdC60LAhIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjcKK21zZ2lkICJVbmNsYXNzaWZpZWQiCittc2dzdHIgItCf0YDQuNC+0YDQuNGC0LXRgiDQvdC1INC+0L/RgNC10LTQtdC70ZHQvSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjcwCittc2dpZCAic3VnZ2VzdHMiCittc2dzdHIgItC/0YDQtdC00LvQsNCz0LDQtdGCIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzEKK21zZ2lkICJyZWNvbW1lbmRzIgorbXNnc3RyICLRgNC10LrQvtC80LXQvdC00YPQtdGCIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzIKK21zZ2lkICJkZXBlbmRzIG9uIgorbXNnc3RyICLQt9Cw0LLQuNGB0LjRgiDQvtGCIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzMKK21zZ2lkICJwcmUtZGVwZW5kcyBvbiIKK21zZ3N0ciAi0YLRgNC10LHRg9C10YIg0L/RgNC10LTQstCw0YDQuNGC0LXQu9GM0L3QvtC5INGD0YHRgtCw0L3QvtCy0LrQuCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjc0Cittc2dpZCAiYnJlYWtzIgorbXNnc3RyICLQu9C+0LzQsNC10YIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3NQorbXNnaWQgImNvbmZsaWN0cyB3aXRoIgorbXNnc3RyICLQutC+0L3RhNC70LjQutGC0YPQtdGCINGBIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzYKK21zZ2lkICJwcm92aWRlcyIKK21zZ3N0ciAi0L/RgNC10LTQvtGB0YLQsNCy0LvRj9C10YIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3NworbXNnaWQgInJlcGxhY2VzIgorbXNnc3RyICLQt9Cw0LzQtdC90Y/QtdGCIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzgKK21zZ2lkICJlbmhhbmNlcyIKK21zZ3N0ciAi0YDQsNGB0YjQuNGA0Y/QtdGCIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODEKK21zZ2lkICJSZXEiCittc2dzdHIgItCe0LHQtyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjgyCittc2dpZCAiSW1wIgorbXNnc3RyICLQktC20L0iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4MworbXNnaWQgIlN0ZCIKK21zZ3N0ciAi0KHRgtC0IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODQKK21zZ2lkICJPcHQiCittc2dzdHIgItCU0L7QvyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjg1Cittc2dpZCAiWHRyIgorbXNnc3RyICLQrdC60YEiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4NgorbXNnaWQgImJVRyIKK21zZ3N0ciAi0L7QqNCRIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODcKK21zZ2lkICI/IgorbXNnc3RyICI/IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6OTUgZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExNQorbXNnaWQgIkJyb2tlbiIKK21zZ3N0ciAi0J3QtdGA0LDQsdC+0YLQvtGB0L/QvtGB0L7QsdC90YvQtSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjk2Cittc2dpZCAiTmV3IgorbXNnc3RyICLQndC+0LLRi9C1IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6OTcKK21zZ2lkICJVcGRhdGVkIgorbXNnc3RyICLQntCx0L3QvtCy0LvRkdC90L3Ri9C1IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6OTgKK21zZ2lkICJPYnNvbGV0ZS9sb2NhbCIKK21zZ3N0ciAi0KPRgdGC0LDRgNC10LLRiNC40LUv0LvQvtC60LDQu9GM0L3Ri9C1IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6OTkKK21zZ2lkICJVcC10by1kYXRlIgorbXNnc3RyICLQkNC60YLRg9Cw0LvRjNC90YvQtSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwMAorbXNnaWQgIkF2YWlsYWJsZSIKK21zZ3N0ciAi0JTQvtGB0YLRg9C/0L3Ri9C1IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTAxIGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTcKK21zZ2lkICJSZW1vdmVkIgorbXNnc3RyICLQo9C00LDQu9GR0L3QvdGL0LUiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDIgZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExMQorbXNnaWQgIkJyb2tlbmx5IGluc3RhbGxlZCBwYWNrYWdlcyIKK21zZ3N0ciAi0J/QsNC60LXRgtGLLCDRg9GB0YLQsNC90L7QstC60LAg0LrQvtGC0L7RgNGL0YUg0LfQsNCy0LXRgNGI0LjQu9Cw0YHRjCDQvdC10YPQtNCw0YfQvdC+IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTAzCittc2dpZCAiTmV3bHkgYXZhaWxhYmxlIHBhY2thZ2VzIgorbXNnc3RyICLQndC+0LLRi9C1INC00L7RgdGC0YPQv9C90YvQtSDQv9Cw0LrQtdGC0YsiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDQKK21zZ2lkICJVcGRhdGVkIHBhY2thZ2VzIChuZXdlciB2ZXJzaW9uIGlzIGF2YWlsYWJsZSkiCittc2dzdHIgItCe0LHQvdC+0LLQu9GR0L3QvdGL0LUg0L/QsNC60LXRgtGLICjQtNC+0YHRgtGD0L/QvdCwINC90L7QstCw0Y8g0LLQtdGA0YHQuNGPKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwNQorbXNnaWQgIk9ic29sZXRlIGFuZCBsb2NhbCBwYWNrYWdlcyBwcmVzZW50IG9uIHN5c3RlbSIKK21zZ3N0ciAi0KPRgdGC0LDQvdC+0LLQu9C10L3QvdGL0LUg0YPRgdGC0LDRgNC10LLRiNC40LUg0LjQu9C4INC70L7QutCw0LvRjNC90YvQtSDQv9Cw0LrQtdGC0YsiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDYKK21zZ2lkICJVcCB0byBkYXRlIGluc3RhbGxlZCBwYWNrYWdlcyIKK21zZ3N0ciAi0KPRgdGC0LDQvdC+0LLQu9C10L3QvdGL0LUg0LDQutGC0YPQsNC70YzQvdGL0LUg0L/QsNC60LXRgtGLIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTA3Cittc2dpZCAiQXZhaWxhYmxlIHBhY2thZ2VzIChub3QgY3VycmVudGx5IGluc3RhbGxlZCkiCittc2dzdHIgItCU0L7RgdGC0YPQv9C90YvQtSDQvdC1INGD0YHRgtCw0L3QvtCy0LvQtdC90L3Ri9C1INC/0LDQutC10YLRiyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwOAorbXNnaWQgIlJlbW92ZWQgYW5kIG5vIGxvbmdlciBhdmFpbGFibGUgcGFja2FnZXMiCittc2dzdHIgItCj0LTQsNC70ZHQvdC90YvQtSDQuNC70Lgg0LHQvtC70LXQtSDQvdC10LTQvtGB0YLRg9C/0L3Ri9C1INC/0LDQutC10YLRiyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExMgorbXNnaWQgIkluc3RhbGxlZCBwYWNrYWdlcyIKK21zZ3N0ciAi0KPRgdGC0LDQvdC+0LLQu9C10L3QvdGL0LUg0L/QsNC60LXRgtGLIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTEzCittc2dpZCAiUmVtb3ZlZCBwYWNrYWdlcyAoY29uZmlndXJhdGlvbiBzdGlsbCBwcmVzZW50KSIKK21zZ3N0ciAi0KPQtNCw0LvRkdC90L3Ri9C1INC/0LDQutC10YLRiyAo0YTQsNC50LvRiyDQutC+0L3RhNC40LPRg9GA0LDRhtC40Lgg0YHQvtGF0YDQsNC90LXQvdGLKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExNAorbXNnaWQgIlB1cmdlZCBwYWNrYWdlcyBhbmQgdGhvc2UgbmV2ZXIgaW5zdGFsbGVkIgorbXNnc3RyICLQktGL0YfQuNGJ0LXQvdC90YvQtSDQuCDQvdC40LrQvtCz0LTQsCDQvdC1INGD0YHRgtCw0L3QsNCy0LvQuNCy0LDQstGI0LjQtdGB0Y8g0L/QsNC60LXRgtGLIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTE2Cittc2dpZCAiSW5zdGFsbGVkIgorbXNnc3RyICLQo9GB0YLQsNC90L7QstC70LXQvSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExOAorbXNnaWQgIlB1cmdlZCIKK21zZ3N0ciAi0JLRi9GH0LjRidC10L0iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxOTgKK21zZ2lkICJkc2VsZWN0IC0gcmVjdXJzaXZlIHBhY2thZ2UgbGlzdGluZyIKK21zZ3N0ciAiZHNlbGVjdCAtLSDQstC70L7QttC10L3QvdGL0Lkg0YHQv9C40YHQvtC6INC/0LDQutC10YLQvtCyIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTk5Cittc2dpZCAiZHNlbGVjdCAtIGluc3BlY3Rpb24gb2YgcGFja2FnZSBzdGF0ZXMiCittc2dzdHIgImRzZWxlY3QgLS0g0L/RgNC+0YHQvNC+0YLRgCDRgdC+0YHRgtC+0Y/QvdC40Lkg0L/QsNC60LXRgtC+0LIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMDAKK21zZ2lkICJkc2VsZWN0IC0gbWFpbiBwYWNrYWdlIGxpc3RpbmciCittc2dzdHIgImRzZWxlY3QgLS0g0L7RgdC90L7QstC90L7QuSDRgdC/0LjRgdC+0Log0L/QsNC60LXRgtC+0LIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMDgKK21zZ2lkICIgKGJ5IHNlY3Rpb24pIgorbXNnc3RyICIgKNC/0L4g0YDQsNC30LTQtdC70YMpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjExCittc2dpZCAiIChhdmFpbC4sIHNlY3Rpb24pIgorbXNnc3RyICIgKNC00L7RgdGC0YPQv9C90L7RgdGC0YwsINGA0LDQt9C00LXQuykiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMTQKK21zZ2lkICIgKHN0YXR1cywgc2VjdGlvbikiCittc2dzdHIgIiAo0YHQvtGB0YLQvtGP0L3QuNC1LCDRgNCw0LfQtNC10LspIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjIzCittc2dpZCAiIChieSBwcmlvcml0eSkiCittc2dzdHIgIiAo0L/QviDQv9GA0LjQvtGA0LjRgtC10YLRgykiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMjYKK21zZ2lkICIgKGF2YWlsLiwgcHJpb3JpdHkpIgorbXNnc3RyICIgKNC00L7RgdGC0YPQv9C90L7RgdGC0YwsINC/0YDQuNC+0YDQuNGC0LXRgikiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMjkKK21zZ2lkICIgKHN0YXR1cywgcHJpb3JpdHkpIgorbXNnc3RyICIgKNGB0L7RgdGC0L7Rj9C90LjQtSwg0L/RgNC40L7RgNC40YLQtdGCKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIzOCBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjUwCittc2dpZCAiIChhbHBoYWJldGljYWxseSkiCittc2dzdHIgIiAo0L/QviDQsNC70YTQsNCy0LjRgtGDKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI0MQorbXNnaWQgIiAoYnkgYXZhaWxhYmlsaXR5KSIKK21zZ3N0ciAiICjQv9C+INC00L7RgdGC0YPQv9C90L7RgdGC0LgpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjQ0Cittc2dpZCAiIChieSBzdGF0dXMpIgorbXNnc3RyICIgKNC/0L4g0YHQvtGB0YLQvtGP0L3QuNGOKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI1OAorbXNnaWQgIiBtYXJrOisvPS8tIHRlcnNlOnYgaGVscDo/IgorbXNnc3RyICIg0L7RgtC80LXRgtC40YLRjDorLz0vLSDQutGA0LDRgtC60L46diDQv9C+0LTRgdC60LDQt9C60LA6PyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI1OQorbXNnaWQgIiBtYXJrOisvPS8tIHZlcmJvc2U6diBoZWxwOj8iCittc2dzdHIgIiDQvtGC0LzQtdGC0LjRgtGMOisvPS8tINC/0L7QtNGA0L7QsdC90L46diDQv9C+0LTRgdC60LDQt9C60LA6PyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI2MAorbXNnaWQgIiB0ZXJzZTp2IGhlbHA6PyIKK21zZ3N0ciAiINC60YDQsNGC0LrQvjp2INC/0L7QtNGB0LrQsNC30LrQsDo/IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjYxCittc2dpZCAiIHZlcmJvc2U6diBoZWxwOj8iCittc2dzdHIgIiDQv9C+0LTRgNC+0LHQvdC+OnYg0L/QvtC00YHQutCw0LfQutCwOj8iCisKKyM6IGRzZWxlY3QvcGtnaW5mby5jYzo4MAorbXNnaWQgIiIKKyJUaGUgbGluZSB5b3UgaGF2ZSBoaWdobGlnaHRlZCByZXByZXNlbnRzIG1hbnkgcGFja2FnZXM7IGlmIHlvdSBhc2sgdG8gIgorImluc3RhbGwsIHJlbW92ZSwgaG9sZCwgZXRjLiBpdCB5b3Ugd2lsbCBhZmZlY3QgYWxsIHRoZSBwYWNrYWdlcyB3aGljaCBtYXRjaCAiCisidGhlIGNyaXRlcmlvbiBzaG93bi5cbiIKKyJcbiIKKyJJZiB5b3UgbW92ZSB0aGUgaGlnaGxpZ2h0IHRvIGEgbGluZSBmb3IgYSBwYXJ0aWN1bGFyIHBhY2thZ2UgeW91IHdpbGwgc2VlICIKKyJpbmZvcm1hdGlvbiBhYm91dCB0aGF0IHBhY2thZ2UgZGlzcGxheWVkIGhlcmUuXG4iCisiWW91IGNhbiB1c2UgYG8nIGFuZCBgTycgdG8gY2hhbmdlIHRoZSBzb3J0IG9yZGVyIGFuZCBnaXZlIHlvdXJzZWxmIHRoZSAiCisib3Bwb3J0dW5pdHkgdG8gbWFyayBwYWNrYWdlcyBpbiBkaWZmZXJlbnQga2luZHMgb2YgZ3JvdXBzLiIKK21zZ3N0ciAiIgorItCU0LDQvdC90LDRjyDRgdGC0YDQvtC60LAg0L/RgNC10LTRgdGC0LDQstC70Y/QtdGCINC80L3QvtCz0L4g0L/QsNC60LXRgtC+0LIuICDQldGB0LvQuCDQstGLINC/0L7QvNC10YLQuNGC0LUg0LXRkSDQtNC70Y8gIgorItGD0YHRgtCw0L3QvtCy0LrQuCwg0YPQtNCw0LvQtdC90LjRjyDQuCDRgi7Qvy4sINGN0YLQsCDQutC+0LzQsNC90LTQsCDQsdGD0LTQtdGCINCy0YvQv9C+0LvQvdC10L3QsCDQtNC70Y8g0LLRgdC10YUg0L/QsNC60LXRgtC+0LIsICIKKyLRgdC+0L7RgtCy0LXRgtGB0YLQstGD0Y7RidC40YUg0YPQutCw0LfQsNC90L3QvtC80YMg0LrRgNC40YLQtdGA0LjRji5cbiIKKyJcbiIKKyLQldGB0LvQuCDQstGLINC/0LXRgNC10LnQtNGR0YLQtSDQuiDRgdGC0YDQvtC60LUsINCyINC60L7RgtC+0YDQvtC5INC/0YDQtdC00YHRgtCw0LLQu9C10L0g0L7RgtC00LXQu9GM0L3Ri9C5INC/0LDQutC10YIsINCyINGN0YLQvtC8ICIKKyLQvtC60L3QtSDQstGLINGD0LLQuNC00LjRgtC1INC40L3RhNC+0YDQvNCw0YbQuNGOINC+0LEg0Y3RgtC+0Lwg0L/QsNC60LXRgtC1LlxuIgorItCY0YHQv9C+0LvRjNC30YPQudGC0LUg0LrQu9Cw0LLQuNGI0LggYG8nINC4IGBPJyDQtNC70Y8g0LjQt9C80LXQvdC10L3QuNGPINC/0L7RgNGP0LTQutCwINGB0L7RgNGC0LjRgNC+0LLQutC4INC/0LDQutC10YLQvtCyLiDQrdGC0L4gIgorItC/0L7Qt9Cy0L7Qu9C40YIg0L7RgtC80LXRh9Cw0YLRjCDQv9Cw0LrQtdGC0YssINC/0L7Qu9GM0LfRg9GP0YHRjCDRiNC40YDQvtC60LjQvCDQvdCw0LHQvtGA0L7QvCDQutGA0LjRgtC10YDQuNC10LIuIgorCisjOiBkc2VsZWN0L3BrZ2luZm8uY2M6OTMKK21zZ2lkICJJbnRlcnJlbGF0aW9uc2hpcHMiCittc2dzdHIgItC30LDQstC40YHQuNC80L7RgdGC0LgiCisKKyM6IGRzZWxlY3QvcGtnaW5mby5jYzoxMTIKK21zZ2lkICJObyBkZXNjcmlwdGlvbiBhdmFpbGFibGUuIgorbXNnc3RyICLQntC/0LjRgdCw0L3QuNC1INC+0YLRgdGD0YLRgdGC0LLRg9C10YIuIgorCisjOiBkc2VsZWN0L3BrZ2luZm8uY2M6MTMwCittc2dpZCAiSW5zdGFsbGVkIGNvbnRyb2wgZmlsZSBpbmZvcm1hdGlvbiIKK21zZ3N0ciAi0KPRgdGC0LDQvdC+0LLQu9C10L3QsCDQuNC90YTQvtGA0LzQsNGG0LjRjyDQuNC3INGE0LDQudC70LAgY29udHJvbCIKKworIzogZHNlbGVjdC9wa2dpbmZvLmNjOjE0NgorbXNnaWQgIkF2YWlsYWJsZSBjb250cm9sIGZpbGUgaW5mb3JtYXRpb24iCittc2dzdHIgItCU0L7RgdGC0YPQv9C90LAg0LjQvdGE0L7RgNC80LDRhtC40Y8g0LjQtyDRhNCw0LnQu9CwIGNvbnRyb2wiCisKKyM6IGRzZWxlY3QvcGtnbGlzdC5jYzo0MTYKK21zZ2lkICJUaGVyZSBhcmUgbm8gcGFja2FnZXMuIgorbXNnc3RyICLQn9Cw0LrQtdGC0L7QsiDQvdC10YIuIgorCisjOiBkc2VsZWN0L3BrZ2xpc3QuY2M6NTA3Cittc2dpZCAiaW52YWxpZCBzZWFyY2ggb3B0aW9uIGdpdmVuIgorbXNnc3RyICLQt9Cw0LTQsNC90Ysg0L3QtdCy0LXRgNC90YvQtSDQv9Cw0YDQsNC80LXRgtGA0Ysg0L/QvtC40YHQutCwIgorCisjOiBkc2VsZWN0L3BrZ2xpc3QuY2M6NTIxCittc2dpZCAiZXJyb3IgaW4gcmVndWxhciBleHByZXNzaW9uIgorbXNnc3RyICLQvdC10LrQvtGA0YDQtdC60YLQvdC+0LUg0YDQtdCz0YPQu9GP0YDQvdC+0LUg0LLRi9GA0LDQttC10L3QuNC1IgorCisjOiBkc2VsZWN0L3BrZ3N1Ymxpc3QuY2M6MTA3Cittc2dpZCAiIGRvZXMgbm90IGFwcGVhciB0byBiZSBhdmFpbGFibGVcbiIKK21zZ3N0ciAiINC90LXQtNC+0YHRgtGD0L/QtdC9XG4iCisKKyM6IGRzZWxlY3QvcGtnc3VibGlzdC5jYzoxMjcKK21zZ2lkICIgb3IgIgorbXNnc3RyICIg0LjQu9C4ICIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6NTcKK21zZ2lkICJBbGwiCittc2dzdHIgItCS0YHQtSIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6NzkKK21zZ2lkICJBbGwgcGFja2FnZXMiCittc2dzdHIgItCS0YHQtSDQv9Cw0LrQtdGC0YsiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHBhY2thZ2VzIHdpdGhvdXQgYSBzZWN0aW9uIgorbXNnc3RyICIlcyDQv9Cw0LrQtdGC0Ysg0LLQvdC1INC40LfQstC10YHRgtC90YvRhSDRgNCw0LfQtNC10LvQvtCyIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo4NQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBwYWNrYWdlcyBpbiBzZWN0aW9uICVzIgorbXNnc3RyICIlcyDQv9Cw0LrQtdGC0Ysg0LIg0YDQsNC30LTQtdC70LUgJXMiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjkxCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzICVzIHBhY2thZ2VzIgorbXNnc3RyICIlcyDQv9Cw0LrQtdGC0Ysg0L/RgNC40L7RgNC40YLQtdGC0LAgJXMiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjk1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzICVzIHBhY2thZ2VzIHdpdGhvdXQgYSBzZWN0aW9uIgorbXNnc3RyICIlcyDQv9Cw0LrQtdGC0Ysg0L/RgNC40L7RgNC40YLQtdGC0LAgJXMg0LLQvdC1INC40LfQstC10YHRgtC90YvRhSDRgNCw0LfQtNC10LvQvtCyIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo5NworIywgYy1mb3JtYXQKK21zZ2lkICIlcyAlcyBwYWNrYWdlcyBpbiBzZWN0aW9uICVzIgorbXNnc3RyICIlcyDQv9Cw0LrQtdGC0Ysg0L/RgNC40L7RgNC40YLQtdGC0LAgJXMg0LIg0YDQsNC30LTQtdC70LUgJXMiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjExOAorIywgYy1mb3JtYXQKK21zZ2lkICIlLSpzICVzJXMlczsgICVzICh3YXM6ICVzKS4gICVzIgorbXNnc3RyICIlLSpzICVzJXMlczsgICVzICjQsdGL0LvQvjogJXMpLiAgJXMiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI2MworbXNnaWQgIkVycm9yIgorbXNnc3RyICLQntGI0LjQsdC60LAiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI2NworbXNnaWQgIkluc3RhbGxlZD8iCittc2dzdHIgItCj0YHRgtCw0L3QvtCy0LvQtdC9PyIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6MjcxCittc2dpZCAiT2xkIG1hcmsiCittc2dzdHIgItCR0YvQuyDQv9C+0LzQtdGH0LXQvSDQtNC70Y8iCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI3NQorbXNnaWQgIk1hcmtlZCBmb3IiCittc2dzdHIgItCf0L7QvNC10YfQtdC9INC00LvRjyIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6Mjc4Cittc2dpZCAiRUlPTSIKK21zZ3N0ciAi0J7Qo9CR0J8iCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI4MAorbXNnaWQgIlNlY3Rpb24iCittc2dzdHIgItCg0LDQt9C00LXQuyIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6MjgxCittc2dpZCAiUHJpb3JpdHkiCittc2dzdHIgItCf0YDQuNC+0YDQuNGC0LXRgiIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6MjgyCittc2dpZCAiUGFja2FnZSIKK21zZ3N0ciAi0J/QsNC60LXRgiIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6Mjg2Cittc2dpZCAiSW5zdC52ZXIiCittc2dzdHIgItCj0YHRgi7QstC10YDRgS4iCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI4OQorbXNnaWQgIkF2YWlsLnZlciIKK21zZ3N0ciAi0JTQvtGB0YIu0LLQtdGA0YEuIgorCisjfiBtc2dpZCAicmV0dXJuZWQgZXJyb3IgZXhpdCBzdGF0dXMgJWQuXG4iCisjfiBtc2dzdHIgItCy0LXRgNC90YPQuyDQv9GA0Lgg0LLRi9GF0L7QtNC1INC60L7QtCDQvtGI0LjQsdC60LggJWQuXG4iCisKKyN+IG1zZ2lkICJ3YXMgaW50ZXJydXB0ZWQuXG4iCisjfiBtc2dzdHIgItCx0YvQuyDQv9GA0LXRgNCy0LDQvS5cbiIKKworI34gbXNnaWQgIndhcyB0ZXJtaW5hdGVkIGJ5IGEgc2lnbmFsOiAlcy5cbiIKKyN+IG1zZ3N0ciAi0LHRi9C7INC30LDQstC10YDRiNGR0L0g0YHQuNCz0L3QsNC70L7QvCAlcy5cbiIKKworI34gbXNnaWQgIihJdCBsZWZ0IGEgY29yZWR1bXAuKVxuIgorI34gbXNnc3RyICIo0KHQvtGF0YDQsNC90LjQu9GB0Y8g0YHQvdC40LzQvtC6INC/0LDQvNGP0YLQuClcbiIKKworI34gbXNnaWQgImZhaWxlZCB3aXRoIGFuIHVua25vd24gd2FpdCByZXR1cm4gY29kZSAlZC5cbiIKKyN+IG1zZ3N0ciAiIgorI34gItGA0LDQsdC+0YLQsCDQv9GA0L7RhtC10YHRgdCwINC30LDQstC10YDRiNC40LvQsNGB0Ywg0L3QtdGD0LTQsNGH0L3QviDRgSDQvdC10LjQt9Cy0LXRgdGC0L3Ri9C8INC60L7QtNC+0Lwg0LLQvtC30LLRgNCw0YLQsCAlZC5cbiIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9zay5nbW8gYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vc2suZ21vCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjg2N2RiMDIKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vc2suZ21vCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9zay5wbyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9zay5wbwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42M2I1NGQ5Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL3NrLnBvCkBAIC0wLDAgKzEsMTc0NCBAQAorIyBkcGtnIC0gU2xvdmFrIHRyYW5zbGF0aW9uCisjIENvcHlyaWdodCAoQykgMjAwNSwgMjAwNiwgMjAwOCBTb2Z0d2FyZSBpbiB0aGUgUHVibGljIEludGVyZXN0LCBJbmMuCisjIFRoaXMgZmlsZSBpcyBkaXN0cmlidXRlZCB1bmRlciB0aGUgc2FtZSBsaWNlbnNlIGFzIHRoZSBkc2VsZWN0IHBhY2thZ2UuCisjCisjIFJvbWFuIEJlbmtvIDxiZW5jb0BhY2lkLnNrPiwgMjAwNSAtIG1hc3RlciB0cmFuc2xhdG9yCisjIFBldGVyIE1hbm4gPFBldGVyLk1hbm5AdHVrZS5zaz4sIDIwMDYgLSBvbmx5IG5ldyBjaGFuZ2VzCisjIEl2YW4gTWFzw6FyIDxoZWxpeDg0QGNlbnRydW0uc2s+LCAyMDA4LCAyMDA5LgorIworbXNnaWQgIiIKK21zZ3N0ciAiIgorIlByb2plY3QtSWQtVmVyc2lvbjogZHBrZyAxLjEzXG4iCisiUmVwb3J0LU1zZ2lkLUJ1Z3MtVG86IGRlYmlhbi1kcGtnQGxpc3RzLmRlYmlhbi5vcmdcbiIKKyJQT1QtQ3JlYXRpb24tRGF0ZTogMjAxMS0xMC0xNCAwNzoxMSswMjAwXG4iCisiUE8tUmV2aXNpb24tRGF0ZTogMjAwOS0wNy0yMCAxNzozMiswMTAwXG4iCisiTGFzdC1UcmFuc2xhdG9yOiBJdmFuIE1hc8OhciA8aGVsaXg4NEBjZW50cnVtLnNrPlxuIgorIkxhbmd1YWdlLVRlYW06IFNsb3ZhayA8c2staTE4bkBsaXN0cy5saW51eC5zaz5cbiIKKyJMYW5ndWFnZTogc2tcbiIKKyJNSU1FLVZlcnNpb246IDEuMFxuIgorIkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD1VVEYtOFxuIgorIkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXRcbiIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxMjUKK21zZ2lkICJTZWFyY2ggZm9yID8gIgorbXNnc3RyICJWeWjEvmFkYcWlID8gIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE0NworbXNnaWQgIkVycm9yOiAiCittc2dzdHIgIkNoeWJhOiAiCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MTc4Cittc2dpZCAiSGVscDogIgorbXNnc3RyICJQb21vY27DrWs6ICIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxODQKK21zZ2lkICJQcmVzcyA/IGZvciBoZWxwIG1lbnUsIC4gZm9yIG5leHQgdG9waWMsIDxzcGFjZT4gdG8gZXhpdCBoZWxwLiIKK21zZ3N0ciAiIgorIk1lbnUgcG9tb2Nuw61rYSB6b2JyYXrDrXRlIHN0bGHEjWVuw61tID8sIMSPYWzFoWl1IHTDqW11IC4sIFBvbW9jbsOta2EgdWtvbsSNw610ZSAiCisiPG1lZHplcm7DrWs+LiIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxOTEKK21zZ2lkICJIZWxwIGluZm9ybWF0aW9uIGlzIGF2YWlsYWJsZSB1bmRlciB0aGUgZm9sbG93aW5nIHRvcGljczoiCittc2dzdHIgIlBvbW9jbsOtayBqZSBkb3N0dXBuw70gcHJlIG5hc2xlZHVqw7pjZSB0w6lteTogIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE5OQorbXNnaWQgIiIKKyJQcmVzcyBhIGtleSBmcm9tIHRoZSBsaXN0IGFib3ZlLCA8c3BhY2U+IG9yIGBxJyB0byBleGl0IGhlbHAsXG4iCisiICBvciBgLicgKGZ1bGwgc3RvcCkgdG8gcmVhZCBlYWNoIGhlbHAgcGFnZSBpbiB0dXJuLiAiCittc2dzdHIgIiIKKyJTdGxhxI10ZSBrbMOhdmVzIHogaG9yZXV2ZWRlbsOpaG8gem96bmFtdSwgPG1lZHplcm7DrWs+IGFsZWJvIOKAnnHigJwgbmEgdWtvbsSNZW5pZSAiCisiUG9tb2Nuw61rYSxcbiIKKyIgIGFsZWJvIOKAni7igJwgKGJvZGthKSBuYSBwb3N0dXBuw6kgxI3DrXRhbmllIHbFoWV0a8O9Y2ggc3Ryw6Fub2sgUG9tb2Nuw61rYS4iCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MjA1Cittc2dpZCAiZXJyb3IgcmVhZGluZyBrZXlib2FyZCBpbiBoZWxwIgorbXNnc3RyICJjaHliYSBwcmkgxI3DrXRhbsOtIGtsw6F2ZXNuaWNlIHYgUG9tb2Nuw61rb3ZpIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjU3Cittc2dpZCAiaW9jdGwoVElPQ0dXSU5TWikgZmFpbGVkIgorbXNnc3RyICJ6bHloYWxhIGZ1bmtjaWEgaW9jdGwoVElPQ0dXSU5TWikiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6NjAKK21zZ2lkICJkb3VwZGF0ZSBpbiBTSUdXSU5DSCBoYW5kbGVyIGZhaWxlZCIKK21zZ3N0ciAiemx5aGFsYSBmdW5rY2lhIGRvdXBkYXRlIHYgb2JzbHVoZSBTSUdXSU5DSCIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo2NworbXNnaWQgImZhaWxlZCB0byByZXN0b3JlIG9sZCBTSUdXSU5DSCBzaWdhY3QiCittc2dzdHIgInpseWhhbG8gb2Jub3ZlbmllIHN0YXLDqWhvIFNJR1dJTkNIIHNpZ2FjdCIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo2OQorbXNnaWQgImZhaWxlZCB0byByZXN0b3JlIG9sZCBzaWduYWwgbWFzayIKK21zZ3N0ciAiemx5aGFsbyBvYm5vdmVuaWUgc3RhcmVqIG1hc2t5IHNpZ27DoWx1IgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjc5Cittc2dpZCAiZmFpbGVkIHRvIGdldCBvbGQgc2lnbmFsIG1hc2siCittc2dzdHIgInpseWhhbG8gesOtc2thbmllIHN0YXJlaiBtYXNreSBzaWduw6FsdSIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo4MAorbXNnaWQgImZhaWxlZCB0byBnZXQgb2xkIFNJR1dJTkNIIHNpZ2FjdCIKK21zZ3N0ciAiemx5aGFsbyB6w61za2FuaWUgc3RhcsOpaG8gU0lHV0lOQ0ggc2lnYWN0IgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjg0Cittc2dpZCAiZmFpbGVkIHRvIGJsb2NrIFNJR1dJTkNIIgorbXNnc3RyICJuZXBvZGFyaWxvIHNhIHphYmxva292YcWlIFNJR1dJTkNIIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjg5Cittc2dpZCAiZmFpbGVkIHRvIHNldCBuZXcgU0lHV0lOQ0ggc2lnYWN0IgorbXNnc3RyICJ6bHloYWxvIG5hc3RhdmVuaWUgbm92w6lobyBTSUdXSU5DSCBzcHJhY292YW5pYSBzaWduw6FsdSIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxMjYKK21zZ2lkICJmYWlsZWQgdG8gYWxsb2NhdGUgY29sb3VyIHBhaXIiCittc2dzdHIgIm5lcG9kYXJpbG8gc2EgYWxva292YcWlIGZhcmVibsO9IHDDoXIiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTY3Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSB0aXRsZSB3aW5kb3ciCittc2dzdHIgInpseWhhbG8gdnl0dm9yZW5pZSB0aXR1bG7DqWhvIG9rbmEiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTcxCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSB3aGF0aW5mbyB3aW5kb3ciCittc2dzdHIgInpseWhhbG8gdnl0dm9yZW5pZSBpbmZvcm1hxI1uw6lobyBva25hIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE3NQorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgYmFzZWxpc3QgcGFkIgorbXNnc3RyICJ6bHloYWxvIHZ5dHZvcmVuaWUgb2tuYSB6w6FrbGFkbsOpaG8gem96bmFtdSIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxNzgKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGhlYWRpbmcgcGFkIgorbXNnc3RyICJ6bHloYWxvIHZ5dHZvcmVuaWUgaGxhdmnEjWtvdsOpaG8gb2tuYSIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxODIKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHRoaXNzdGF0ZSBwYWQiCittc2dzdHIgInpseWhhbG8gdnl0dm9yZW5pZSBzdGF2b3bDqWhvIG9rbmEiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTg2Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBpbmZvIHBhZCIKK21zZ3N0ciAiemx5aGFsbyB2eXR2b3JlbmllIGluZm9ybWHEjW7DqWhvIG9rbmEiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTkxCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBxdWVyeSB3aW5kb3ciCittc2dzdHIgInpseWhhbG8gdnl0dm9yZW5pZSBkb3B5dG92YWNpZWhvIG9rbmEiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MjU1Cittc2dpZCAiS2V5YmluZGluZ3MiCittc2dzdHIgIlbDpHpieSBrbMOhdmVzb3YiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MzAzCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgLS0gJWQlJSwgcHJlc3MgIgorbXNnc3RyICIgLS0gJWQlJSwgc3RsYcSNdGUgIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjMwNgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBmb3IgbW9yZSIKK21zZ3N0ciAiJXMgcHJlIHZpYWMiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MzEwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHRvIGdvIGJhY2siCittc2dzdHIgIiVzIHByZSBuw6F2cmF0IHNww6TFpSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzo3OAorbXNnaWQgIltub3QgYm91bmRdIgorbXNnc3RyICJbbmVuYXZpYXphbsO9XSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzo4MgorIywgYy1mb3JtYXQKK21zZ2lkICJbdW5rOiAlZF0iCittc2dzdHIgIlt1bms6ICVkXSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxMzkKK21zZ2lkICJTY3JvbGwgb253YXJkcyB0aHJvdWdoIGhlbHAvaW5mb3JtYXRpb24iCittc2dzdHIgIlBvc3VuIHBvbW9jbsOta2EvaW5mb3Jtw6FjaWFtaSDEj2FsZWoiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQwCittc2dpZCAiU2Nyb2xsIGJhY2t3YXJkcyB0aHJvdWdoIGhlbHAvaW5mb3JtYXRpb24iCittc2dzdHIgIlBvc3VuIHBvbW9jbsOta2EvaW5mb3Jtw6FjaWFtaSBzcMOkxaUiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQxCittc2dpZCAiTW92ZSB1cCIKK21zZ3N0ciAiUG9zdW4gaG9yZSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDIKK21zZ2lkICJNb3ZlIGRvd24iCittc2dzdHIgIlBvc3VuIGRvbHUiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQzCittc2dpZCAiR28gdG8gdG9wIG9mIGxpc3QiCittc2dzdHIgIlByZWpzxaUgbmEgemHEjWlhdG9rIHpvem5hbXUiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ0Cittc2dpZCAiR28gdG8gZW5kIG9mIGxpc3QiCittc2dzdHIgIlByZWpzxaUgbmEga29uaWVjIHpvem5hbXUiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ1Cittc2dpZCAiUmVxdWVzdCBoZWxwIChjeWNsZSB0aHJvdWdoIGhlbHAgc2NyZWVucykiCittc2dzdHIgIlZ5xb5pYWRhxaUgcG9tb2MgKHBvaHliIG5hcHJpZcSNIG9rbmFtaSBQb21vY27DrWthKSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDYKK21zZ2lkICJDeWNsZSB0aHJvdWdoIGluZm9ybWF0aW9uIGRpc3BsYXlzIgorbXNnc3RyICJQb2h5YiBuYXByaWXEjSBpbmZvcm1hxI1uw71taSBvYnJhem92a2FtaSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDcKK21zZ2lkICJSZWRyYXcgZGlzcGxheSIKK21zZ3N0ciAiUHJla3Jlc2xpxaUgb2JyYXpvdmt1IgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0OAorbXNnaWQgIlNjcm9sbCBvbndhcmRzIHRocm91Z2ggbGlzdCBieSAxIGxpbmUiCittc2dzdHIgIlBvc3VuIHpvem5hbW9tIG8gamVkZW4gcmlhZG9rIHZwcmVkIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0OQorbXNnaWQgIlNjcm9sbCBiYWNrd2FyZHMgdGhyb3VnaCBsaXN0IGJ5IDEgbGluZSIKK21zZ3N0ciAiUG9zdW4gem96bmFtb20gbyBqZWRlbiByaWFkb2sgc3DDpMWlIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1MAorbXNnaWQgIlNjcm9sbCBvbndhcmRzIHRocm91Z2ggaGVscC9pbmZvcm1hdGlvbiBieSAxIGxpbmUiCittc2dzdHIgIlBvc3VuIHYgbsOhcG92ZWRlL2luZm9ybcOhY2nDoWNoIG8gamVkZW4gcmlhZG9rIHZwcmVkIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1MQorbXNnaWQgIlNjcm9sbCBiYWNrd2FyZHMgdGhyb3VnaCBoZWxwL2luZm9ybWF0aW9uIGJ5IDEgbGluZSIKK21zZ3N0ciAiUG9zdW4gdiBQb21vY27DrWtvdmkvaW5mb3Jtw6FjacOhY2ggbyBqZWRlbiByaWFkb2sgc3DDpMWlIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1MgorbXNnaWQgIlNjcm9sbCBvbndhcmRzIHRocm91Z2ggbGlzdCIKK21zZ3N0ciAiUG9zdW4gem96bmFtb20gZG9wcmVkdSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTMKK21zZ2lkICJTY3JvbGwgYmFja3dhcmRzIHRocm91Z2ggbGlzdCIKK21zZ3N0ciAiUG9zdW4gem96bmFtb20gZG96YWR1IgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1NgorbXNnaWQgIk1hcmsgcGFja2FnZShzKSBmb3IgaW5zdGFsbGF0aW9uIgorbXNnc3RyICJPem5hxI1pxaUgYmFsw61rKHkpIG5hIGluxaF0YWzDoWNpdSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTcKK21zZ2lkICJNYXJrIHBhY2thZ2UocykgZm9yIGRlaW5zdGFsbGF0aW9uIgorbXNnc3RyICJPem5hxI1pxaUgYmFsw61rKHkpIG5hIG9kaW7FoXRhbG92YW5pZSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTgKK21zZ2lkICJNYXJrIHBhY2thZ2UocykgZm9yIGRlaW5zdGFsbCBhbmQgcHVyZ2UiCittc2dzdHIgIk96bmHEjWnFpSBiYWzDrWsoeSkgbmEgb2RpbsWhdGFsb3ZhbmllIGEgdnnEjWlzdGVuaWUiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTU5Cittc2dpZCAiTWFrZSBoaWdobGlnaHQgbW9yZSBzcGVjaWZpYyIKK21zZ3N0ciAiVXByZXNuacWlIHp2w71yYXpuZW5pZSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjAKK21zZ2lkICJNYWtlIGhpZ2hsaWdodCBsZXNzIHNwZWNpZmljIgorbXNnc3RyICJSb3rFocOtcmnFpSB6dsO9cmF6bmVuaWUiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTYxCittc2dpZCAiU2VhcmNoIGZvciBhIHBhY2thZ2Ugd2hvc2UgbmFtZSBjb250YWlucyBhIHN0cmluZyIKK21zZ3N0ciAiSMS+YWRhxaUgYmFsw61rLCBrdG9yw6lobyBuw6F6b3Ygb2JzYWh1amUgcmXFpWF6ZWMiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTYyCittc2dpZCAiUmVwZWF0IGxhc3Qgc2VhcmNoLiIKK21zZ3N0ciAiWm9wYWtvdmHFpSBwb3NsZWRuw6kgaMS+YWRhbmllLiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjMKK21zZ2lkICJTd2FwIHNvcnQgb3JkZXIgcHJpb3JpdHkvc2VjdGlvbiIKK21zZ3N0ciAiWm1lbmEgdHJpZWRlbmlhIHBvZMS+YSBwcmlvcml0eS9zZWtjaWUiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY0Cittc2dpZCAiUXVpdCwgY29uZmlybWluZywgYW5kIGNoZWNraW5nIGRlcGVuZGVuY2llcyIKK21zZ3N0ciAiVWtvbsSNZW5pZSwgcG90dnJkZW5pZSwgYSBrb250cm9sYSB6w6F2aXNsb3N0w60iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY1Cittc2dpZCAiUXVpdCwgY29uZmlybWluZyB3aXRob3V0IGNoZWNrIgorbXNnc3RyICJVa29uxI1lbmllLCBwb3R2cmRlbmllIGJleiBrb250cm9seSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjYKK21zZ2lkICJRdWl0LCByZWplY3RpbmcgY29uZmxpY3QvZGVwZW5kZW5jeSBzdWdnZXN0aW9ucyIKK21zZ3N0ciAiVWtvbsSNZW5pZSwgemFtaWV0bnV0aWUgbsOhdnJob3YgcmllxaFlbmlhIGtvbmZsaWt0b3YvesOhdmlzbG9zdMOtIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2NworbXNnaWQgIkFib3J0IC0gcXVpdCB3aXRob3V0IG1ha2luZyBjaGFuZ2VzIgorbXNnc3RyICJacnXFoWVuaWUgLSB1a29uxI1lbmllIHByw6FjZSBiZXpvIHptaWVuIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2OAorbXNnaWQgIlJldmVydCB0byBvbGQgc3RhdGUgZm9yIGFsbCBwYWNrYWdlcyIKK21zZ3N0ciAiTsOhdnJhdCBkbyBzdGFyw6lobyBzdGF2dSBwcmUgdsWhZXRreSBiYWzDrWt5IgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2OQorbXNnaWQgIlJldmVydCB0byBzdWdnZXN0ZWQgc3RhdGUgZm9yIGFsbCBwYWNrYWdlcyIKK21zZ3N0ciAiTsOhdnJhdCBkbyBuYXZyaG92YW7DqWhvIHN0YXZ1IHByZSB2xaFldGt5IGJhbMOta3kiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTcwCittc2dpZCAiUmV2ZXJ0IHRvIGRpcmVjdGx5IHJlcXVlc3RlZCBzdGF0ZSBmb3IgYWxsIHBhY2thZ2VzIgorbXNnc3RyICJOw6F2cmF0IGRvIHByaWFtbyBwb8W+YWRvdmFuw6lobyBzdGF2dSBwcmUgdsWhZXRreSBiYWzDrWt5IgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE3MQorbXNnaWQgIlJldmVydCB0byBjdXJyZW50bHkgaW5zdGFsbGVkIHN0YXRlIGZvciBhbGwgcGFja2FnZXMiCittc2dzdHIgIk7DoXZyYXQgZG8gbW9tZW50w6FsbmUgbmFpbsWhdGFsb3ZhbsOpaG8gc3RhdnUgcHJlIHbFoWV0a3kgYmFsw61reSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNzQKK21zZ2lkICJTZWxlY3QgY3VycmVudGx5LWhpZ2hsaWdodGVkIGFjY2VzcyBtZXRob2QiCittc2dzdHIgIlbDvWJlciBha3R1w6FsbmUgb3puYcSNZW5laiBwcsOtc3R1cG92ZWogbWV0w7NkeSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNzUKK21zZ2lkICJRdWl0IHdpdGhvdXQgY2hhbmdpbmcgc2VsZWN0ZWQgYWNjZXNzIG1ldGhvZCIKK21zZ3N0ciAiVWtvbsSNZW5pZSBiZXogem1lbnkgenZvbGVuZWogdsO9YmVyb3ZlaiBtZXTDs2R5IgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjI5Cittc2dpZCAiS2V5c3Ryb2tlcyIKK21zZ3N0ciAiRnVua2NpZSBrbMOhdmVzb3YiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MjkKK21zZ2lkICIiCisiTW90aW9uIGtleXM6IE5leHQvUHJldmlvdXMsIFRvcC9FbmQsIFVwL0Rvd24sIEJhY2t3YXJkcy9Gb3J3YXJkczpcbiIKKyIgIGosIERvd24tYXJyb3cgICAgICAgICBrLCBVcC1hcnJvdyAgICAgICAgICAgICBtb3ZlIGhpZ2hsaWdodFxuIgorIiAgTiwgUGFnZS1kb3duLCBTcGFjZSAgIFAsIFBhZ2UtdXAsIEJhY2tzcGFjZSAgIHNjcm9sbCBsaXN0IGJ5IDEgcGFnZVxuIgorIiAgXm4gICAgICAgICAgICAgICAgICAgIF5wICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBsaXN0IGJ5IDEgbGluZVxuIgorIiAgdCwgSG9tZSAgICAgICAgICAgICAgIGUsIEVuZCAgICAgICAgICAgICAgICAgIGp1bXAgdG8gdG9wL2VuZCBvZiBsaXN0XG4iCisiICB1ICAgICAgICAgICAgICAgICAgICAgZCAgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGluZm8gYnkgMSBwYWdlXG4iCisiICBedSAgICAgICAgICAgICAgICAgICAgXmQgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGluZm8gYnkgMSBsaW5lXG4iCisiICBCLCBMZWZ0LWFycm93ICAgICAgICAgRiwgUmlnaHQtYXJyb3cgICAgICAgICAgcGFuIGRpc3BsYXkgYnkgMS8zIHNjcmVlblxuIgorIiAgXmIgICAgICAgICAgICAgICAgICAgIF5mICAgICAgICAgICAgICAgICAgICAgIHBhbiBkaXNwbGF5IGJ5IDEgY2hhcmFjdGVyXG4iCisiXG4iCisiTWFyayBwYWNrYWdlcyBmb3IgbGF0ZXIgcHJvY2Vzc2luZzpcbiIKKyIgKywgSW5zZXJ0ICBpbnN0YWxsIG9yIHVwZ3JhZGUgICAgICA9LCBIICBob2xkIGluIHByZXNlbnQgc3RhdGVcbiIKKyIgLSwgRGVsZXRlICByZW1vdmUgICAgICAgICAgICAgICAgICA6LCBHICB1bmhvbGQ6IHVwZ3JhZGUgb3IgbGVhdmUgIgorInVuaW5zdGFsbGVkXG4iCisiIF8gICAgICAgICAgcmVtb3ZlICYgcHVyZ2UgY29uZmlnXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTWlzY2VsbGFuZW91czpcbiIKKyJRdWl0LCBleGl0LCBvdmVyd3JpdGUgKG5vdGUgY2FwaXRhbHMhKTogICAgICAgPywgRjEgcmVxdWVzdCBoZWxwIChhbHNvICIKKyJIZWxwKVxuIgorIiBSZXR1cm4gIENvbmZpcm0sIHF1aXQgKGNoZWNrIGRlcGVuZGVuY2llcykgICBpLCBJICB0b2dnbGUvY3ljbGUgaW5mbyAiCisiZGlzcGxheXNcbiIKKyIgICBRICAgICBDb25maXJtLCBxdWl0IChvdmVycmlkZSBkZXAucykgICAgICAgbywgTyAgY3ljbGUgdGhyb3VnaCBzb3J0ICIKKyJvcHRpb25zXG4iCisiIFgsIEVzYyAgZVhpdCwgYWJhbmRvbmluZyBhbnkgY2hhbmdlcyBtYWRlICAgIHYsIFYgIGNoYW5nZSBzdGF0dXMgZGlzcGxheSAiCisib3B0c1xuIgorIiAgIFIgICAgIFJldmVydCB0byBzdGF0ZSBiZWZvcmUgdGhpcyBsaXN0ICAgICAgXmwgICByZWRyYXcgZGlzcGxheVxuIgorIiAgIFUgICAgIHNldCBhbGwgdG8gc1VnZ2VzdGVkIHN0YXRlICAgICAgICAgICAgIC8gICBzZWFyY2ggKFJldHVybiB0byAiCisiY2FuY2VsKVxuIgorIiAgIEQgICAgIHNldCBhbGwgdG8gRGlyZWN0bHkgcmVxdWVzdGVkIHN0YXRlICBuLCBcXCAgcmVwZWF0IGxhc3Qgc2VhcmNoXG4iCittc2dzdHIgIiIKKyJLbMOhdmVzeSBwcmUgcG9oeWI6IMSOYWzFocOtL1ByZWRvxaFsw70sIFphxI1pYXRvay9Lb25pZWMsIEhvcmUvRG9sdSwgTmFzcMOkxaUvIgorIkRvcHJlZHU6XG4iCisiICBqLCDFoMOtcGthLWRvbGUgICAgICAgICAgICAgaywgxaDDrXBrYS1ob3JlICAgICAgICAgICBwb3N1bsO6xaUgenbDvXJhem5lbmllXG4iCisiICBOLCBQYWdlLWRvd24sIG1lZHplcm7DrWsgICBQLCBQYWdlLXVwLCBCYWNrc3BhY2UgICBwb3N1biB2IHpvem5hbWUgbyAxICIKKyJzdHJhbnVcbiIKKyIgIF5uICAgICAgICAgICAgICAgICAgICAgICAgXnAgICAgICAgICAgICAgICAgICAgICAgcG9zdW4gdiB6b3puYW1lIG8gMSAiCisicmlhZG9rXG4iCisiICB0LCBIb21lICAgICAgICAgICAgICAgICAgIGUsIEVuZCAgICAgICAgICAgICAgICAgIHNrb2sgbmEgemHEjWlhdG9rL2tvbmllYyAiCisiem96bmFtdVxuIgorIiAgdSAgICAgICAgICAgICAgICAgICAgICAgICBkICAgICAgICAgICAgICAgICAgICAgICBwb3N1biBpbmZvIG8gMSBzdHJhbnVcbiIKKyIgIF51ICAgICAgICAgICAgICAgICAgICAgICAgXmQgICAgICAgICAgICAgICAgICAgICAgcG9zdW4gaW5mbyBieSAxIGxpbmVcbiIKKyIgIEIsIMWgw61wa2EtdsS+YXZvICAgICAgICAgICAgRiwgxaDDrXBrYS12cHJhdm8gICAgICAgICBwb3N1biBvIDEvMyBvYnJhem92a3lcbiIKKyIgIF5iICAgICAgICAgICAgICAgICAgICAgICAgXmYgICAgICAgICAgICAgICAgICAgICAgcG9zdW4gbyAxIHpuYWtcbiIKKyJcbiIKKyJPem5hxI1pxaUgYmFsw61reSBwcmUgbmVza29yxaFpZSBzcHJhY292YW5pZTpcbiIKKyIgKywgSW5zZXJ0ICBuYWluxaF0YWxvdmHFpSBhbGVibyBha3R1YWxpem92YcWlICA9LCBIICBwb2Ryxb5hxaUgdiBzw7rEjWFzbm9tIHN0YXZlXG4iCisiIC0sIERlbGV0ZSAgb2RzdHLDoW5pxaUgICAgICAgICAgICAgICAgICA6LCBHICB1dm/Evm5pxaU6IGFrdHVhbGl6b3ZhxaUgYWxlYm8gIgorInBvbmVjaGHFpSBvZGluxaF0YWxvdmFuw71cbiIKKyIgXyAgICAgICAgICBvZHN0csOhbmnFpSBhIHZ5xI1pc3RpxaUga29uZmlndXLDoWNpdVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJvemxpxI1uw6k6XG4iCisiS29uaWVjLCB2w71zdHVwLCBwcmVwaXMgKHbFoWltbml0ZSBzaSB2ZcS+a8OpIHDDrXNtZW7DoSEpOiAgICA/LCBGMSB2ecW+aWFkYcWlICIKKyJwb21vY27DrWthICh0aWXFviBQb21vY27DrWspXG4iCisiIE7DoXZyYXQsIFBvdHZyZGVuaWUsIGtvbmllYyAoc2tvbnRyb2xvdmHFpSB6w6F2aXNsb3N0aSkgICAgIGksIEkgIHptZW5pxaUvIgorImN5a2xvdmHFpSBpbmZvIG9icmF6b3ZreVxuIgorIiAgIFEgICAgIFBvdHZyxI8sIGtvbmllYyAocG90bGHEjWnFpSB6w6F2aXMuKSAgICAgICAgICAgICBvLCBPICBjeWtsb3ZhxaUgY2V6ICIKKyJ6b3JhxI9vdmFjaWUgdm/EvmJ5XG4iCisiIFgsIEVzYyAgc2tvbsSNacWlLCB6YWJ1ZG7DusWlIHbFoWV0a3kgdnlrb25hbsOpIHptZW55ICAgICAgICB2LCBWICB6bWXFiCBzdGF2ICIKKyJ2b2xpZWIgb2JyYXpvdmt5XG4iCisiICAgUiAgICAgVnLDoXRpxaUgZG8gc3RhdnUgcHJlZCB0w71tdG8gem96bmFtb20gICAgICAgICAgICBebCAgICBwcmVrcmVzbGkgIgorImRpc3BsZWpcbiIKKyIgICBVICAgICBuYXN0YXZpxaUgdsWhZXRrbyBuYSBvZHBvcsO6xI1hbsO9IHN0YXYgICAgICAgICAgICAgIC8gICAgIGjEvmFkYcWlICIKKyIoc3RsYcSNZW7DrW0gUmV0dXJuIHpydcWhacWlKVxuIgorIiAgIEQgICAgIG5hc3RhdmnFpSB2xaFldGtvIG5hIHByaWFtbyBwb8W+YWRvdmFuw70gc3RhdiAgICAgIG4sIFxcIG9wYWtvdmHFpSAiCisicG9zbGVkbsOpIHZ5aMS+YWTDoXZhbmllXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6NTUKK21zZ2lkICJJbnRyb2R1Y3Rpb24gdG8gcGFja2FnZSBzZWxlY3Rpb25zIgorbXNnc3RyICLDmnZvZCBkbyB2w71iZXJvdiBiYWzDrWtvdiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo1NQorbXNnaWQgIiIKKyJXZWxjb21lIHRvIGRzZWxlY3QncyBtYWluIHBhY2thZ2UgbGlzdGluZy5cbiIKKyJcbiIKKyJZb3Ugd2lsbCBiZSBwcmVzZW50ZWQgd2l0aCBhIGxpc3Qgb2YgcGFja2FnZXMgd2hpY2ggYXJlIGluc3RhbGxlZCBvciAiCisiYXZhaWxhYmxlXG4iCisiZm9yIGluc3RhbGxhdGlvbi4gIFlvdSBjYW4gbmF2aWdhdGUgYXJvdW5kIHRoZSBsaXN0IHVzaW5nIHRoZSBjdXJzb3Iga2V5cyxcbiIKKyJtYXJrIHBhY2thZ2VzIGZvciBpbnN0YWxsYXRpb24gKHVzaW5nIGArJykgb3IgZGVpbnN0YWxsYXRpb24gKHVzaW5nIGAtJykuXG4iCisiUGFja2FnZXMgY2FuIGJlIG1hcmtlZCBlaXRoZXIgc2luZ2x5IG9yIGluIGdyb3VwczsgaW5pdGlhbGx5IHlvdSB3aWxsIHNlZSAiCisidGhhdFxuIgorInRoZSBsaW5lIGBBbGwgcGFja2FnZXMnIGlzIHNlbGVjdGVkLiAgYCsnLCBgLScgYW5kIHNvIG9uIHdpbGwgYWZmZWN0IGFsbCAiCisidGhlXG4iCisicGFja2FnZXMgZGVzY3JpYmVkIGJ5IHRoZSBoaWdobGlnaHRlZCBsaW5lLlxuIgorIlxuIgorIlNvbWUgb2YgeW91ciBjaG9pY2VzIHdpbGwgY2F1c2UgY29uZmxpY3RzIG9yIGRlcGVuZGVuY3kgcHJvYmxlbXM7IHlvdSB3aWxsICIKKyJiZVxuIgorImdpdmVuIGEgc3ViLWxpc3Qgb2YgdGhlIHJlbGV2YW50IHBhY2thZ2VzLCBzbyB0aGF0IHlvdSBjYW4gc29sdmUgdGhlICIKKyJwcm9ibGVtcy5cbiIKKyJcbiIKKyJZb3Ugc2hvdWxkIHJlYWQgdGhlIGxpc3Qgb2Yga2V5cyBhbmQgdGhlIGV4cGxhbmF0aW9ucyBvZiB0aGUgZGlzcGxheS5cbiIKKyJNdWNoIG9uLWxpbmUgaGVscCBpcyBhdmFpbGFibGUsIHBsZWFzZSBtYWtlIHVzZSBvZiBpdCAtIHByZXNzIGA/JyBhdFxuIgorImFueSB0aW1lIGZvciBoZWxwLlxuIgorIlxuIgorIldoZW4geW91IGhhdmUgZmluaXNoZWQgc2VsZWN0aW5nIHBhY2thZ2VzLCBwcmVzcyA8ZW50ZXI+IHRvIGNvbmZpcm0gIgorImNoYW5nZXMsXG4iCisib3IgYFgnIHRvIHF1aXQgd2l0aG91dCBzYXZpbmcgY2hhbmdlcy4gQSBmaW5hbCBjaGVjayBvbiBjb25mbGljdHMgYW5kXG4iCisiZGVwZW5kZW5jaWVzIHdpbGwgYmUgZG9uZSAtIGhlcmUgdG9vIHlvdSBtYXkgc2VlIGEgc3VibGlzdC5cbiIKKyJcbiIKKyJQcmVzcyA8c3BhY2U+IHRvIGxlYXZlIGhlbHAgYW5kIGVudGVyIHRoZSBsaXN0IG5vdy5cbiIKK21zZ3N0ciAiIgorIlZpdGFqdGUgdiBobGF2bm9tIHpvem5hbWUgYmFsw61rb3YgZHNlbGVjdC11LlxuIgorIlxuIgorIkJ1ZGV0ZSBvYm96bsOhbWVuw60gc28gem96bmFtb20gYmFsw61rb3YsIGt0b3LDqSBzw7ogbmFpbsWhdGFsb3ZhbsOpIGFsZWJvIHPDuiAiCisiZG9zdHVwbsOpXG4iCisibmEgaW7FoXRhbMOhY2l1LiBWIHpvem5hbWUgc2EgbcO0xb5ldGUgcG9oeWJvdmHFpSBwb21vY291IGt1cnpvcm92w71jaCBrbMOhdmVzb3YsXG4iCisib3puYcSNb3ZhxaUgYmFsw61reSBuYSBpbsWhdGFsw6FjaXUgKHBvdcW+aXTDrW0g4oCeK+KAnCkgYWxlYm8gb2RpbsWhdGFsb3ZhbmllIChwb3XFvml0w61tICIKKyLigJ4t4oCcKS5cbiIKKyJCYWzDrWt5IG3DtMW+bm8gb3puYcSNb3ZhxaUgYnXEjyBqZWRub3RsaXZvIGFsZWJvIHYgc2t1cGluw6FjaDsgbmEgemHEjWlhdGt1ICIKKyJ1dmlkw610ZVxuIgorInJpYWRvayDigJ5WxaFldGt5IGJhbMOta3nigJwgc8O6IHZ5YnJhdMOpLiAg4oCeK+KAnCwg4oCeLeKAnCBhIHRhayDEj2FsZWogbWFqw7ogdnBseXYgbmEgIgorInbFoWV0a3kgYmFsw61reVxuIgorIm96bmHEjWVuw6kgenbDvXJhesWIb3ZhY8OtbSByaWFka29tLlxuIgorIlxuIgorIk5pZWt0b3LDqSB6IHZhxaFpY2ggdm9saWViIG3DtMW+dSBzcMO0c29iacWlIGtvbmZsaWt0eSBhbGVibyBwcm9ibMOpbXkgc28gIgorInrDoXZpc2xvc8WlYW1pOyBidWRldGUgcG/FvmlhZGFuw71cbiIKKyJvIHBvZC16b3puYW0gcmVsZXZhbnRuw71jaCBiYWzDrWtvdiwgxI1vIGplIHNww7Rzb2IsIGFrbyBtw7TFvmV0ZSBkYW7DvSBwcm9ibMOpbSAiCisidnlyaWXFoWnFpS5cbiIKKyJcbiIKKyJNYWxpIGJ5IHN0ZSBzaSBwcmXEjcOtdGHFpSB6b3puYW0ga2zDoXZlc292IGEgdnlzdmV0bGl2a3kgayBvYnNhaHUgb2JyYXpvdmt5LlxuIgorIkplIGRvc3R1cG7DvWNoIG1ub8W+c3R2byBwb21vY2kgb25saW5lLCBwcm9zw61tZSB2w6FzLCBhYnkgc3RlIGp1IHZ5dcW+w612YWxpIC1cbiIKKyJQb21vY27DrWthIHZ5dm9sw6F0ZSBrZWR5a2/EvnZlayBzdGxhxI1lbsOtbSDigJ4/4oCcLlxuIgorIlxuIgorIktlxI8gc2tvbsSNw610ZSBzIHbDvWJlcm9tIGJhbMOta292LCBzdGxhxI10ZSA8RW50ZXI+IG5hIHBvdHZyZGVuaWUgem1pZW4sXG4iCisiYWxlYm8g4oCeWOKAnCBuYSB1a29uxI1lbmllIGJleiB6YXDDrXNhbmlhIHptaWVuLiBCdWRlIHVyb2JlbsOhIHrDoXZlcmXEjW7DoSBrb250cm9sYVxuIgorImtvbmZsaWt0b3YgYSB6w6F2aXNsb3N0w60gLSBhaiB0dSBtw7TFvmV0ZSB1dmlkaWXFpSBwb2Qtem96bmFtLlxuIgorIlxuIgorIlBvbW9jbsOta2EgdWtvbsSNw610ZSBhIGRvIHpvem5hbXUgdnN0w7pwaXRlIHN0bGHEjWVuw61tIDxtZWR6ZXJuw61rPi5cbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo4MAorbXNnaWQgIkludHJvZHVjdGlvbiB0byByZWFkLW9ubHkgcGFja2FnZSBsaXN0IGJyb3dzZXIiCittc2dzdHIgIsOadm9kIGsgcHJlaGxpYWRhxI11IHpvem5hbXUgYmFsw61rb3YgbGVuIHByZSDEjcOtdGFuaWUiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6ODAKK21zZ2lkICIiCisiV2VsY29tZSB0byBkc2VsZWN0J3MgbWFpbiBwYWNrYWdlIGxpc3RpbmcuXG4iCisiXG4iCisiWW91IHdpbGwgYmUgcHJlc2VudGVkIHdpdGggYSBsaXN0IG9mIHBhY2thZ2VzIHdoaWNoIGFyZSBpbnN0YWxsZWQgb3IgIgorImF2YWlsYWJsZVxuIgorImZvciBpbnN0YWxsYXRpb24uICBTaW5jZSB5b3UgZG8gbm90IGhhdmUgdGhlIHByaXZpbGVnZSBuZWNlc3NhcnkgdG8gdXBkYXRlXG4iCisicGFja2FnZSBzdGF0ZXMsIHlvdSBhcmUgaW4gYSByZWFkLW9ubHkgbW9kZS4gIFlvdSBjYW4gbmF2aWdhdGUgYXJvdW5kIHRoZVxuIgorImxpc3QgdXNpbmcgdGhlIGN1cnNvciBrZXlzIChwbGVhc2Ugc2VlIHRoZSBgS2V5c3Ryb2tlcycgaGVscCBzY3JlZW4pLCAiCisib2JzZXJ2ZVxuIgorInRoZSBzdGF0dXMgb2YgdGhlIHBhY2thZ2VzIGFuZCByZWFkIGluZm9ybWF0aW9uIGFib3V0IHRoZW0uXG4iCisiXG4iCisiWW91IHNob3VsZCByZWFkIHRoZSBsaXN0IG9mIGtleXMgYW5kIHRoZSBleHBsYW5hdGlvbnMgb2YgdGhlIGRpc3BsYXkuXG4iCisiTXVjaCBvbi1saW5lIGhlbHAgaXMgYXZhaWxhYmxlLCBwbGVhc2UgbWFrZSB1c2Ugb2YgaXQgLSBwcmVzcyBgPycgYXRcbiIKKyJhbnkgdGltZSBmb3IgaGVscC5cbiIKKyJcbiIKKyJXaGVuIHlvdSBoYXZlIGZpbmlzaGVkIGJyb3dzaW5nLCBwcmVzcyBgUScgb3IgPGVudGVyPiB0byBxdWl0LlxuIgorIlxuIgorIlByZXNzIDxzcGFjZT4gdG8gbGVhdmUgaGVscCBhbmQgZW50ZXIgdGhlIGxpc3Qgbm93LlxuIgorbXNnc3RyICIiCisiVml0YWp0ZSB2IGhsYXZub20gem96bmFtZSBiYWzDrWtvdiBkc2VsZWN0LXUuXG4iCisiXG4iCisiQnVkZXRlIG9ib3puw6FtZW7DrSBzbyB6b3puYW1vbSBiYWzDrWtvdiwga3RvcsOpIHPDuiBuYWluxaF0YWxvdmFuw6kgYWxlYm8gc8O6ICIKKyJkb3N0dXBuw6lcbiIKKyJuYSBpbsWhdGFsw6FjaXUuIEtlZMW+ZSBuZW3DoXRlIG9wcsOhdm5lbmllIHBvdHJlYm7DqSBuYSBha3R1YWxpesOhY2l1XG4iCisic3RhdnUgYmFsw61rb3YsIHN0ZSB2IHJlxb5pbWUgbGVuIHByZSDEjcOtdGFuaWUuIFYgem96bmFtZSBzYSBtw7TFvmV0ZSBwb2h5Ym92YcWlXG4iCisicG9tb2NvdSBrdXJ6b3JvdsO9Y2gga2zDoXZlc292IChwb3pyaXRlIHNpIHTDqW11IHBvbW9jbsOta2Eg4oCeRnVua2NpZSAiCisia2zDoXZlc2924oCcKSxcbiIKKyJzbGVkb3ZhxaUgc3RhdiBiYWzDrWtvdiBhIHByZcSNw610YcWlIHNpIGluZm9ybcOhY2llIG8gbmljaC5cbiIKKyJcbiIKKyJNYWxpIGJ5IHN0ZSBzaSBwcmXEjcOtdGHFpSB6b3puYW0ga2zDoXZlc292IGEgdnlzdmV0bGl2a3kgayBvYnNhaHUgb2JyYXpvdmt5LlxuIgorIkplIGRvc3R1cG7DvWNoIG1ub8W+c3R2byBvbmxpbmUgcG9tb2Nuw61rb3YsIHByb3PDrW1lIHbDoXMsIGFieSBzdGUgaWNoXG4iCisicG91xb7DrXZhbGkgLSBzdGxhxI1lbsOtbSDigJ4/4oCcIGtlZHlrb8S+dmVrIHZ5dm9sw6F0ZSBQb21vY27DrWthLlxuIgorIlxuIgorIktlxI8gc2tvbsSNw610ZSBwcmV6ZXJhbmllLCBzdGxhxI10ZSDigJ5R4oCcIGFsZWJvIDxFbnRlcj4gbmEgdWtvbsSNZW5pZS5cbiIKKyJcbiIKKyJQb21vY27DrWthIHVrb27EjcOtdGUgIGEgc3DDpMWlIG5hIHpvem5hbSBzYSB2csOhdGl0ZSBzdGxhxI1lbsOtbSBrbMOhdmVzdSAiCisiPG1lZHplcm7DrWs+LlxuIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjk5Cittc2dpZCAiSW50cm9kdWN0aW9uIHRvIGNvbmZsaWN0L2RlcGVuZGVuY3kgcmVzb2x1dGlvbiBzdWItbGlzdCIKK21zZ3N0ciAiw5p2b2QgayBwb2R6b3puYW11IHJpZcWhZW7DrSBrb25mbGlrdG92L3rDoXZpc2xvc3TDrSIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo5OQorbXNnaWQgIiIKKyJEZXBlbmRlbmN5L2NvbmZsaWN0IHJlc29sdXRpb24gLSBpbnRyb2R1Y3Rpb24uXG4iCisiXG4iCisiT25lIG9yIG1vcmUgb2YgeW91ciBjaG9pY2VzIGhhdmUgcmFpc2VkIGEgY29uZmxpY3Qgb3IgZGVwZW5kZW5jeSBwcm9ibGVtIC1cbiIKKyJzb21lIHBhY2thZ2VzIHNob3VsZCBvbmx5IGJlIGluc3RhbGxlZCBpbiBjb25qdW5jdGlvbiB3aXRoIGNlcnRhaW4gb3RoZXJzLCAiCisiYW5kXG4iCisic29tZSBjb21iaW5hdGlvbnMgb2YgcGFja2FnZXMgbWF5IG5vdCBiZSBpbnN0YWxsZWQgdG9nZXRoZXIuXG4iCisiXG4iCisiWW91IHdpbGwgc2VlIGEgc3ViLWxpc3QgY29udGFpbmluZyB0aGUgcGFja2FnZXMgaW52b2x2ZWQuICBUaGUgYm90dG9tIGhhbGYgIgorIm9mXG4iCisidGhlIGRpc3BsYXkgc2hvd3MgcmVsZXZhbnQgY29uZmxpY3RzIGFuZCBkZXBlbmRlbmNpZXM7IHVzZSBgaScgdG8gY3ljbGUgIgorImJldHdlZW5cbiIKKyJ0aGF0LCB0aGUgcGFja2FnZSBkZXNjcmlwdGlvbnMgYW5kIHRoZSBpbnRlcm5hbCBjb250cm9sIGluZm9ybWF0aW9uLlxuIgorIlxuIgorIkEgc2V0IG9mIGBzdWdnZXN0ZWQnIHBhY2thZ2VzIGhhcyBiZWVuIGNhbGN1bGF0ZWQsIGFuZCB0aGUgaW5pdGlhbCBtYXJraW5ncyAiCisiaW5cbiIKKyJ0aGlzIHN1Yi1saXN0IGhhdmUgYmVlbiBzZXQgdG8gbWF0Y2ggdGhvc2UsIHNvIHlvdSBjYW4ganVzdCBoaXQgUmV0dXJuIHRvXG4iCisiYWNjZXB0IHRoZSBzdWdnZXN0aW9ucyBpZiB5b3Ugd2lzaC4gIFlvdSBtYXkgYWJvcnQgdGhlIGNoYW5nZShzKSB3aGljaCAiCisiY2F1c2VkXG4iCisidGhlIHByb2JsZW0ocyksIGFuZCBnbyBiYWNrIHRvIHRoZSBtYWluIGxpc3QsIGJ5IHByZXNzaW5nIGNhcGl0YWwgYFgnLlxuIgorIlxuIgorIllvdSBjYW4gYWxzbyBtb3ZlIGFyb3VuZCB0aGUgbGlzdCBhbmQgY2hhbmdlIHRoZSBtYXJraW5ncyBzbyB0aGF0IHRoZXkgYXJlICIKKyJtb3JlXG4iCisibGlrZSB3aGF0IHlvdSB3YW50LCBhbmQgeW91IGNhbiBgcmVqZWN0JyBteSBzdWdnZXN0aW9ucyBieSB1c2luZyB0aGUgIgorImNhcGl0YWxcbiIKKyJgRCcgb3IgYFInIGtleXMgKHNlZSB0aGUga2V5YmluZGluZ3MgaGVscCBzY3JlZW4pLiAgWW91IGNhbiB1c2UgY2FwaXRhbCBgUScgIgorInRvXG4iCisiZm9yY2UgbWUgdG8gYWNjZXB0IHRoZSBzaXR1YXRpb24gY3VycmVudGx5IGRpc3BsYXllZCwgaW4gY2FzZSB5b3Ugd2FudCB0b1xuIgorIm92ZXJyaWRlIGEgcmVjb21tZW5kYXRpb24gb3IgdGhpbmsgdGhhdCB0aGUgcHJvZ3JhbSBpcyBtaXN0YWtlbi5cbiIKKyJcbiIKKyJQcmVzcyA8c3BhY2U+IHRvIGxlYXZlIGhlbHAgYW5kIGVudGVyIHRoZSBzdWItbGlzdDsgcmVtZW1iZXI6IHByZXNzIGA/JyBmb3IgIgorImhlbHAuXG4iCittc2dzdHIgIiIKKyJSaWXFoWVuaWUgesOhdmlzbG9zdMOtL2tvbmZsaWt0b3YgLSDDunZvZC5cbiIKKyJcbiIKKyJKZWRubyBhbGVibyB2aWFjZXJvIHogdmHFoWljaCByb3pob2RudXTDrSB2eXZvbGFsbyBrb25mbGlrdCBhbGVibyBwcm9ibMOpbSBzbyAiCisiesOhdmlzbG9zxaVhbWkgLVxuIgorIm5pZWt0b3LDqSBiYWzDrWt5IGJ5IG1hbGkgYnnFpSBpbsWhdGFsb3ZhbsOpIHYgc3BvamVuw60gcyBpbsO9bWksIGFcbiIKKyJuaWVrdG9yw6kga29tYmluw6FjaWUgYmFsw61rb3YgYnkgemFzYSBuZW1hbGkgYnnFpSBpbsWhdGFsb3ZhbsOpIHNwb2xvxI1uZS5cbiIKKyJcbiIKKyJab2JyYXrDrSBzYSB2w6FtIHpvem5hbSBwcsOtc2x1xaFuw71jaCBiYWzDrWtvdi4gViBzcG9kbmVqIHBvbG92aWNpXG4iCisib2JyYXpvdmt5IHPDuiB6b2JyYXplbsOpIHJlbGV2YW50bsOpIGtvbmZsaWt0eSBhIHrDoXZpc2xvc3RpOyBwb3XFvml0ZSDigJ5p4oCcIG5hICIKKyJwb2h5YiBtZWR6aVxuIgorIm5pbWksIG1lZHppIHBvcGlzbWkgYmFsw61rb3YgYSBtZWR6aSBpbnRlcm7DvW1pIHJpYWRpYWNpbWkgaW5mb3Jtw6FjaWFtaS5cbiIKKyJcbiIKKyJTw7pib3Ig4oCebmF2cmhvdmFuw71jaOKAnCBiYWzDrWtvdiBib2wgdnlwb8SNw610YW7DvSBhIMO6dm9kbsOpIG96bmHEjWVuaWEgdlxuIgorInRvbXRvIHBvZC16b3puYW1lIGJvbGkgbmFzdGF2ZW7DqSB0YWssIGFieSBzYSBzIG5pbWkgemhvZG92YWxpLCB0YWvFvmUgc3RhxI3DrSwgIgorImtlxI8gc3RsYcSNw610ZSBFbnRlclxuIgorIm5hIHpuYWsgc8O6aGxhc3UgcyBvZHBvcsO6xI1hbmlhbWksIGFrIHNpIHRvIMW+ZWzDoXRlLiBNw6F0ZSBtb8W+bm9zxaUgenJ1xaFpxaUgem1lbnUiCisiKHkpLCBrdG9yw6kgc3DDtHNvYmlsaVxuIgorInByb2Jsw6ltKHkpIGEgdnLDoXRpxaUgc2EgZG8gaGxhdm7DqWhvIHpvem5hbXUgc3RsYcSNZW7DrW0ga2zDoXZlc3Ug4oCeWOKAnC5cbiIKKyJcbiIKKyJNw7TFvmV0ZSBzYSB0aWXFviBwcmVzdW7DusWlIGluYW0gdiByw6FtY2kgem96bmFtdSBhIHptZW5pxaUgb3puYcSNZW5pYSB0YWssIGFieSAiCisibGVwxaFpZVxuIgorInpvZHBvdmVkYWxpIFZhxaFpbSBwb3RyZWLDoW0gYSBtw7TFvmV0ZSB0aWXFviDigJ5vZG1pZXRudcWl4oCcIG1vamUgb2Rwb3LDusSNYW5pYSAiCisic3RsYcSNZW7DrW0ga2zDoXZlc1xuIgorIuKAnkTigJwgYWxlYm8g4oCeUuKAnCAgKHBvenJpdGUgc2kgdMOpbXUgUG9tb2Nuw61rYSBvIGZ1bmtjacOhY2gga2zDoXZlcykuICBNw7TFvmV0ZSAiCisic3RsYcSNacWlIGtsw6F2ZXMg4oCeUeKAnCxcbiIKKyJrdG9yw71tIG1hIGRvbsO6dGl0ZSBha2NlcHRvdmHFpSBtb21lbnTDoWxuZSB6b2JyYXplbsO6IHNpdHXDoWNpdSB2IHByw61wYWRlLCDFvmUgc2kgIgorIsW+ZWzDoXRlXG4iCisiaWdub3JvdmHFpSBvZHBvcsO6xI1hbmlhIGFsZWJvIHNpIG15c2zDrXRlLCDFvmUgc2EgcHJvZ3JhbSBtw71saS5cbiIKKyJcbiIKKyJQb21vY27DrWthIG9wdXN0w610ZSBhIGRvIHBvZHpvem5hbXUgc2EgdnLDoXRpdGUgc3RsYcSNZW7DrW0gPG1lZHplcm7DrWs+OyAiCisicGFtw6R0YWp0ZTogUG9tb2Nuw61rYSB2eXZvbMOhdGUgc3RsYcSNZW7DrW0g4oCeP+KAnC5cbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxMjUKK21zZ2lkICJEaXNwbGF5LCBwYXJ0IDE6IHBhY2thZ2UgbGlzdGluZyBhbmQgc3RhdHVzIGNoYXJzIgorbXNnc3RyICJab2JyYXplbmllLCDEjWFzxaUgMTogem96bmFtIGJhbMOta292IGEgem5ha3kgc3Rhdm92IgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjEyNQorbXNnaWQgIiIKKyJUaGUgdG9wIGhhbGYgb2YgdGhlIHNjcmVlbiBzaG93cyBhIGxpc3Qgb2YgcGFja2FnZXMuICBGb3IgZWFjaCBwYWNrYWdlIHlvdSAiCisic2VlXG4iCisiZm91ciBjb2x1bW5zIGZvciBpdHMgY3VycmVudCBzdGF0dXMgb24gdGhlIHN5c3RlbSBhbmQgbWFyay4gIEluIHRlcnNlIG1vZGUgIgorIih1c2VcbiIKKyJgdicgdG8gdG9nZ2xlIHZlcmJvc2UgZGlzcGxheSkgdGhlc2UgYXJlIHNpbmdsZSBjaGFyYWN0ZXJzLCBmcm9tIGxlZnQgdG8gIgorInJpZ2h0OlxuIgorIlxuIgorIiBFcnJvciBmbGFnOiBTcGFjZSAtIG5vIGVycm9yIChidXQgcGFja2FnZSBtYXkgYmUgaW4gYnJva2VuIHN0YXRlIC0gc2VlICIKKyJiZWxvdylcbiIKKyIgICAgICAgICAgICAgIGBSJyAgLSBzZXJpb3VzIGVycm9yIGR1cmluZyBpbnN0YWxsYXRpb24sIG5lZWRzICIKKyJyZWluc3RhbGxhdGlvbjtcbiIKKyIgSW5zdGFsbGVkIHN0YXRlOiAgICAgU3BhY2UgICAgLSBub3QgaW5zdGFsbGVkO1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgYConICAgICAtIGluc3RhbGxlZDtcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgIGAtJyAgICAgLSBub3QgaW5zdGFsbGVkIGJ1dCBjb25maWcgZmlsZXMgcmVtYWluO1xuIgorIiAgIHBhY2thZ2VzIGluIHRoZXNlIHsgYFUnICAgICAtIHVucGFja2VkIGJ1dCBub3QgeWV0IGNvbmZpZ3VyZWQ7XG4iCisiICAgc3RhdGVzIGFyZSBub3QgICAgeyBgQycgICAgIC0gaGFsZi1jb25maWd1cmVkIChhbiBlcnJvciBoYXBwZW5lZCk7XG4iCisiICAgKHF1aXRlKSBwcm9wZXJseSAgeyBgSScgICAgIC0gaGFsZi1pbnN0YWxsZWQgKGFuIGVycm9yIGhhcHBlbmVkKTtcbiIKKyIgICBpbnN0YWxsZWQgICAgICAgICB7IGBXJyxgdCcgLSB0cmlnZ2VycyBhcmUgYXdhaXRlZCByZXNwLiBwZW5kaW5nLlxuIgorIiBPbGQgbWFyazogd2hhdCB3YXMgcmVxdWVzdGVkIGZvciB0aGlzIHBhY2thZ2UgYmVmb3JlIHByZXNlbnRpbmcgdGhpcyBsaXN0O1xuIgorIiBNYXJrOiB3aGF0IGlzIHJlcXVlc3RlZCBmb3IgdGhpcyBwYWNrYWdlOlxuIgorIiAgYConOiBtYXJrZWQgZm9yIGluc3RhbGxhdGlvbiBvciB1cGdyYWRlO1xuIgorIiAgYC0nOiBtYXJrZWQgZm9yIHJlbW92YWwsIGJ1dCBhbnkgY29uZmlndXJhdGlvbiBmaWxlcyB3aWxsIHJlbWFpbjtcbiIKKyIgIGA9Jzogb24gaG9sZDogcGFja2FnZSB3aWxsIG5vdCBiZSBwcm9jZXNzZWQgYXQgYWxsO1xuIgorIiAgYF8nOiBtYXJrZWQgZm9yIHB1cmdlIGNvbXBsZXRlbHkgLSBldmVuIHJlbW92ZSBjb25maWd1cmF0aW9uO1xuIgorIiAgYG4nOiBwYWNrYWdlIGlzIG5ldyBhbmQgaGFzIHlldCB0byBiZSBtYXJrZWQgZm9yIGluc3RhbGwvcmVtb3ZlLyZjLlxuIgorIlxuIgorIkFsc28gZGlzcGxheWVkIGFyZSBlYWNoIHBhY2thZ2UncyBQcmlvcml0eSwgU2VjdGlvbiwgbmFtZSwgaW5zdGFsbGVkIGFuZFxuIgorImF2YWlsYWJsZSB2ZXJzaW9uIG51bWJlcnMgKHNoaWZ0LVYgdG8gZGlzcGxheS9oaWRlKSBhbmQgc3VtbWFyeSAiCisiZGVzY3JpcHRpb24uXG4iCittc2dzdHIgIiIKKyJIb3Juw6EgcG9sb3ZpY2Egb2JyYXpvdmt5IHVrYXp1amUgem96bmFtIGJhbMOta292LiBQcmUga2HFvmTDvSBiYWzDrWsgdmlkw610ZVxuIgorIsWhdHlyaSBzdMS6cGNlIG8gamVobyBha3R1w6Fsbm9tIHN0YXZlIHYgc3lzdMOpbWUgYSBvem5hxI1lbmllLiAgViBzdHJ1xI1ub20gIgorInJlxb5pbWUgKHBvdcW+aXRlXG4iCisi4oCeduKAnCBuYSB6YXBudXRpZSBvYnNpYWhsZWhvIHpvYnJhemVuaWEpIHPDuiB0dSBqZWRub2R1Y2jDqSB6bmFreSwgesS+YXZhICIKKyJkb3ByYXZhOlxuIgorIlxuIgorIiBDaHlib3bDvSBwcsOtem5hazogTWVkemVybsOtayAtIMW+aWFkbmEgY2h5YmEgKGFsZSBiYWzDrWsgYnkgbW9ob2wgYnnFpSB2ICIKKyJwb8Wha29kZW5vbSBzdGF2ZSAtIHBvenJpdGUgbmnFvsWhaWUpXG4iCisiICAgICAgICAgICAgICDigJ5S4oCcICAtIHrDoXZhxb5uw6EgY2h5YmEgcHJpIGluxaF0YWzDoWNpaSwgdnnFvmFkdWplICIKKyJwcmVpbsWhdGFsb3ZhbmllO1xuIgorIiBJbsWhdGFsb3ZhbsO9IHN0YXY6ICAgTWVkemVybsOtayAtIG5lbmFpbsWhdGFsb3ZhbsO9O1xuIgorIiAgICAgICAgICAgICAgICAgICAgIOKAnirigJwgIC0gaW7FoXRhbG92YW7DvTtcbiIKKyIgICAgICAgICAgICAgICAgICAgICDigJ4t4oCcICAtIG5lbmFpbsWhdGFsb3ZhbsO9LCBhbGUga29uZmlndXJhxI1uw6kgc8O6Ym9yeSBib2xpICIKKyJ6YWNob3ZhbsOpO1xuIgorIiAgICAgICAgICBiYWzDrWt5IHYgeyDigJ5V4oCcICAtIHJvemJhbGVuw70sIGFsZSBzdMOhbGUgbmVuYWtvbmZpZ3Vyb3ZhbsO9O1xuIgorIiAgICAgICB0aWV0byBzdGF2eSB7IOKAnkPigJwgIC0gcG9sby1uYWtvbmZpZ3Vyb3ZhbsO9ICh2eXNreXRsYSBzYSBjaHliYSk7XG4iCisiICAgICAgc8O6IHBvxaFrb2RlbsOpIHsg4oCefOKAnCAgLSBwb2xvLW5haW7FoXRhbG92YW7DvSAodnlza3l0bGEgc2EgY2h5YmEpLlxuIgorIiBTdGFyw6kgem5hxI1reTogxI1vIGJvbG8gcG/FvmFkb3ZhbsOpIHByZSB0ZW50byBiYWzDrWsgcHJlZCB6b2JyYXplbsOtbSB0b2h0byAiCisiem96bmFtdTtcbiIKKyIgWm5hxI1rYTogxI1vIGplIHBvxb5hZG92YW7DqSBwcmUgdGVudG8gYmFsw61rOlxuIgorIiAg4oCeKuKAnDogb3puYcSNZW7DqSBuYSBpbsWhdGFsw6FjaXUgYWxlYm8gYWt0dWFsaXrDoWNpdTtcbiIKKyIgIOKAni3igJw6IG96bmHEjWVuw6kgbmEgb2RzdHLDoW5lbmllLCBhbGUga29uZmlndXJhxI1uw6kgc8O6Ym9yeSB6b3N0YW7DuiB6YWNob3ZhbsOpO1xuIgorIiAg4oCePeKAnDogbmEgcG9kcsW+YW5pZTogYmFsw63EjWVrIHbDtGJlYyBuZWJ1ZGUgc3ByYWNvdmFuw707XG4iCisiICDigJ5f4oCcOiBvem5hxI1lbsOpIG5hIGtvbXBsZXRuw6kgdnnEjWlzdGVuaWUgLSBhaiBzIG9kc3Ryw6FuZW7DrW0ga29uZmlndXLDoWNpZTtcbiIKKyIgIOKAnm7igJw6IGJhbMOtayBqZSBub3bDvSBhIGXFoXRlIG5lYm9sIG96bmHEjWVuw70gbmEgaW7FoXRhbMOhY2l1L29kc3Ryw6FuZW5pZS9hdMSPLlxuIgorIlxuIgorIlpvYnJhenVqZSBzYSB0aWXFviBQcmlvcml0YSwgU2VrY2lhLCBtZW5vLCBpbsWhdGFsb3ZhbsOpIGFcbiIKKyJkb3N0dXBuw6kgxI3DrXNsYSB2ZXJ6acOtIHByZSBrYcW+ZMO9IGJhbMOtayAoem9icmF6ZW5pZS9za3J5dGllIHBvbW9jb3Ugc2hpZnQtVikgYSAiCisic3Vtw6FybnkgcG9waXMuXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTUyCittc2dpZCAiRGlzcGxheSwgcGFydCAyOiBsaXN0IGhpZ2hsaWdodDsgaW5mb3JtYXRpb24gZGlzcGxheSIKK21zZ3N0ciAiWm9icmF6ZW5pZSwgxI1hc8WlIDI6IHpvem5hbSB6dsO9cmF6bmVuw607IGluZm9ybWHEjW7DoSBvYnJhem92a2EiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTUyCittc2dpZCAiIgorIiogSGlnaGxpZ2h0OiBPbmUgbGluZSBpbiB0aGUgcGFja2FnZSBsaXN0IHdpbGwgYmUgaGlnaGxpZ2h0ZWQuICBJdCAiCisiaW5kaWNhdGVzXG4iCisiICB3aGljaCBwYWNrYWdlKHMpIHdpbGwgYmUgYWZmZWN0ZWQgYnkgcHJlc3NlcyBvZiBgKycsIGAtJyBhbmQgYF8nLlxuIgorIlxuIgorIiogVGhlIGRpdmlkaW5nIGxpbmUgaW4gdGhlIG1pZGRsZSBvZiB0aGUgc2NyZWVuIHNob3dzIGEgYnJpZWYgZXhwbGFuYXRpb24gIgorIm9mXG4iCisiICB0aGUgc3RhdHVzIG9mIHRoZSBjdXJyZW50bHktaGlnaGxpZ2h0ZWQgcGFja2FnZSwgb3IgYSBkZXNjcmlwdGlvbiBvZiAiCisid2hpY2hcbiIKKyIgIGdyb3VwIGlzIGhpZ2hsaWdodGVkIGlmIGEgZ3JvdXAgbGluZSBpcy4gIElmIHlvdSBkb24ndCB1bmRlcnN0YW5kIHRoZVxuIgorIiAgbWVhbmluZyBvZiBzb21lIG9mIHRoZSBzdGF0dXMgY2hhcmFjdGVycyBkaXNwbGF5ZWQsIGdvIHRvIHRoZSByZWxldmFudFxuIgorIiAgcGFja2FnZSBhbmQgbG9vayBhdCB0aGlzIGRpdmlkZXIgbGluZSwgb3IgdXNlIHRoZSBgdicga2V5IGZvciBhIHZlcmJvc2VcbiIKKyIgIGRpc3BsYXkgKHByZXNzIGB2JyBhZ2FpbiB0byBnbyBiYWNrIHRvIHRoZSB0ZXJzZSBkaXNwbGF5KS5cbiIKKyJcbiIKKyIqIFRoZSBib3R0b20gb2YgdGhlIHNjcmVlbiBzaG93cyBtb3JlIGluZm9ybWF0aW9uIGFib3V0IHRoZVxuIgorIiAgY3VycmVudGx5LWhpZ2hsaWdodGVkIHBhY2thZ2UgKGlmIHRoZXJlIGlzIG9ubHkgb25lKS5cbiIKKyJcbiIKKyIgIEl0IGNhbiBzaG93IGFuIGV4dGVuZGVkIGRlc2NyaXB0aW9uIG9mIHRoZSBwYWNrYWdlLCB0aGUgaW50ZXJuYWwgcGFja2FnZVxuIgorIiAgY29udHJvbCBkZXRhaWxzIChlaXRoZXIgZm9yIHRoZSBpbnN0YWxsZWQgb3IgYXZhaWxhYmxlIHZlcnNpb24gb2YgdGhlXG4iCisiICBwYWNrYWdlKSwgb3IgaW5mb3JtYXRpb24gYWJvdXQgY29uZmxpY3RzIGFuZCBkZXBlbmRlbmNpZXMgaW52b2x2aW5nIHRoZVxuIgorIiAgY3VycmVudCBwYWNrYWdlIChpbiBjb25mbGljdC9kZXBlbmRlbmN5IHJlc29sdXRpb24gc3VibGlzdHMpLlxuIgorIlxuIgorIiAgVXNlIHRoZSBgaScga2V5IHRvIGN5Y2xlIHRocm91Z2ggdGhlIGRpc3BsYXlzLCBhbmQgYEknIHRvIGhpZGUgdGhlXG4iCisiICBpbmZvcm1hdGlvbiBkaXNwbGF5IG9yIGV4cGFuZCBpdCB0byB1c2UgYWxtb3N0IGFsbCBvZiB0aGUgc2NyZWVuLlxuIgorbXNnc3RyICIiCisiKiBadsO9cmF6bmVuaWU6IEplZGVuIHJpYWRvayB2IHpvem5hbWUgYmFsw61rb3YgYnVkZSB6dsO9cmF6bmVuw70uIEluZGlrdWplXG4iCisiICB0bywga3RvcsO9IGJhbMOtayh5KSBidWRlIG92cGx5dm5lbsO9IHN0bGHEjWVuw61tIGtsw6F2ZXNvdiDigJ4r4oCcLCDigJ4t4oCcIGEg4oCeX+KAnC5cbiIKKyJcbiIKKyIqIFJvemRlxL5vdmFjw60gcmlhZG9rIHYgc3RyZWRlIG9icmF6b3ZreSB6b2JyYXp1amUgc3RydcSNbsO9IG9waXMgc3RhdnVcbiIKKyIgbW9tZW50w6FsbmUgenbDvXJhem5lbsOpaG8gYmFsw61rdSBhbGVibyBwb3BpcyB6dsO9cmF6bmVuw6lobyBuw6F6dnVcbiIKKyIgIHNrdXBpbnkgYmFsw61rb3YuIEFrIG5lcm96dW1pZXRlIHbDvXpuYW11IG5pZWt0b3LDqWhvIHpvIFxuIgorIiAgem9icmF6ZW7DvWNoIHN0YXZvdsO9Y2ggem5ha292LCBjaG/Ej3RlIG5hIHJlbGV2YW50bsO9XG4iCisiICBiYWzDrWsgYSBwb3pyaXRlIHNhIG5hIHJvemRlxL5vdmFjw60gcmlhZG9rIGFsZWJvIHBvdcW+aXRlIGtsw6F2ZXMg4oCeduKAnCBuYVxuIgorIiAgcG9kcm9ibsO9IHbDvXBpcyAoc3RsYcSNdGUg4oCeduKAnCB6bm92YSBhIHZyw6F0aXRlIHNhIHNww6TFpSBuYSBzdHJ1xI1uw70gdsO9cGlzKS5cbiIKKyJcbiIKKyIqIFNwb2Ruw6EgxI1hc8WlIG9icmF6b3ZreSB6b2JyYXp1amUgdmlhYyBpbmZvcm3DoWNpw60gbyBcbiIKKyIgIG1vbWVudMOhbG5lIHp2w71yYXpuZW5vbSBiYWzDrWt1IChhayBqZSBpYmEgamVkZW4pLlxuIgorIlxuIgorIiAgTcO0xb5lIHpvYnJhem92YcWlIHJvesWhw61yZW7DvSBwb3BpcyBiYWzDrWt1LCBpbnRlcm7DqSBwb2Ryb2Jub3N0aSBiYWzDrWthICIKKyIoY29udHJvbClcbiIKKyIgIChidcSPIHByZSBuYWluxaF0YWxvdmFuw6kgYWxlYm8gcHJlIGRvc3R1cG7DqSB2ZXJ6aWUgYmFsw61rb3YpLFxuIgorIiAgYWxlYm8gaW5mb3Jtw6FjaWUgbyBrb25mbGlrdG9jaCBhIHrDoXZpc2xvc3RpYWNoIHTDvWthasO6Y2ljaCBzYVxuIgorIiAgYWt0dcOhbG5laG8gYmFsw61rYSAodiBwb2Qtem96bmFtZSByaWXFoWVuw60ga29uZmxpa3Rvdi96w6F2aXNsb3N0w60pLlxuIgorIlxuIgorIiAgTmEgYSBwcmVww61uYW5pZSBtZWR6aSBvYnJhem92a2FtaSBwb3XFvml0ZSAga2zDoXZlcyDigJ5p4oCcIGEga2zDoXZlcyDigJ5J4oCcIG5hICIKKyJza3J5dGllXG4iCisiICBpbmZvcm1hxI1uZWogb2JyYXpvdmt5IGFsZWJvIG5hIGplaiB6dsOkxI3FoWVuaWUgbmEgdGFrbWVyIGNlbMO6IHZlxL5rb3PFpSAiCisib2JyYXpvdmt5LlxuIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjE3NgorbXNnaWQgIkludHJvZHVjdGlvbiB0byBtZXRob2Qgc2VsZWN0aW9uIGRpc3BsYXkiCittc2dzdHIgIsOadm9kIGRvIHpvYnJhemVuaWEgdsO9YmVydSBtZXTDs2R5IgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjE3NgorbXNnaWQgIiIKKyJkc2VsZWN0IGFuZCBkcGtnIGNhbiBkbyBhdXRvbWF0aWMgaW5zdGFsbGF0aW9uLCBsb2FkaW5nIHRoZSBwYWNrYWdlIGZpbGVzIHRvICIKKyJiZVxuIgorImluc3RhbGxlZCBmcm9tIG9uZSBvZiBhIG51bWJlciBvZiBkaWZmZXJlbnQgcG9zc2libGUgcGxhY2VzLlxuIgorIlxuIgorIlRoaXMgbGlzdCBhbGxvd3MgeW91IHRvIHNlbGVjdCBvbmUgb2YgdGhlc2UgaW5zdGFsbGF0aW9uIG1ldGhvZHMuXG4iCisiXG4iCisiTW92ZSB0aGUgaGlnaGxpZ2h0IHRvIHRoZSBtZXRob2QgeW91IHdpc2ggdG8gdXNlLCBhbmQgaGl0IEVudGVyLiAgWW91IHdpbGwgIgorInRoZW5cbiIKKyJiZSBwcm9tcHRlZCBmb3IgdGhlIGluZm9ybWF0aW9uIHJlcXVpcmVkIHRvIGRvIHRoZSBpbnN0YWxsYXRpb24uXG4iCisiXG4iCisiQXMgeW91IG1vdmUgdGhlIGhpZ2hsaWdodCBhIGRlc2NyaXB0aW9uIG9mIGVhY2ggbWV0aG9kLCB3aGVyZSBhdmFpbGFibGUsIGlzXG4iCisiZGlzcGxheWVkIGluIHRoZSBib3R0b20gaGFsZiBvZiB0aGUgc2NyZWVuLlxuIgorIlxuIgorIklmIHlvdSB3aXNoIHRvIHF1aXQgd2l0aG91dCBjaGFuZ2luZyBhbnl0aGluZyB1c2UgdGhlIGB4JyBrZXkgd2hpbGUgaW4gdGhlICIKKyJsaXN0XG4iCisib2YgaW5zdGFsbGF0aW9uIG1ldGhvZHMuXG4iCisiXG4iCisiQSBmdWxsIGxpc3Qgb2Yga2V5c3Ryb2tlcyBpcyBhdmFpbGFibGUgYnkgcHJlc3NpbmcgYGsnIG5vdywgb3IgZnJvbSB0aGUgIgorImhlbHBcbiIKKyJtZW51IHJlYWNoYWJsZSBieSBwcmVzc2luZyBgPycuXG4iCittc2dzdHIgIiIKKyJkc2VsZWN0IGEgZHBrZyBkb2vDocW+dSBhdXRvbWF0aWNreSBpbsWhdGFsb3ZhxaUgYSBuYWhyw6F2YcWlIHPDumJvcnkgYmFsw61rb3YsICIKKyJrdG9yw6lcbiIKKyJtYWrDuiBiecWlIG5haW7FoXRhbG92YW7DqSB6IGplZG7DqWhvIHogbW5vaMO9Y2ggbW/Fvm7DvWNoIG1pZXN0LlxuIgorIlxuIgorIlRlbnRvIHpvem5hbSB2w6FtIHVtb8W+xYh1amUgdnlicmHFpSBqZWRudSB6IHTDvWNodG8gaW7FoXRhbGHEjW7DvWNoIG1ldMOzZC5cbiIKKyJcbiIKKyJQcmVzdcWIdGUgenbDvXJhem5lbmllIG5hIG1ldMOzZHUsIGt0b3LDuiBjaGNldGUgcG91xb5pxaUgYSBzdGxhxI10ZSBFbnRlci4gIgorIk7DoXNsZWRuZSBidWRldGVcbiIKKyJwb8W+aWFkYW7DrSBvIHphZGFuaWUgaW5mb3Jtw6FjacOtIHBvdHJlYm7DvWNoIG5hIHZ5a29uYW5pZSBpbsWhdGFsw6FjaWUuXG4iCisiXG4iCisiUHJpIHByZXN1bmUgenbDvXJhem5lbmlhIHNhIHBvcGlzIGthxb5kZWogbWV0w7NkeSwgYWsgamUgayBkaXNwb3rDrWNpaSxcbiIKKyJ6b2JyYXp1amUgdiBkb2xuZWogcG9sb3ZpY2kgb2JyYXpvdmt5LlxuIgorIlxuIgorIkFrIHNpIMW+ZWzDoXRlIHNrb27EjWnFpSBiZXogYWtlamtvxL52ZWsgem1lbnksIHBvdcW+aXRlIGtsw6F2ZXMg4oCeeOKAnCwga2XEjyBzYSAiCisibmFjaMOhZHphdGUgdiB6b3puYW1lXG4iCisiaW7FoXRhbGHEjW7DvWNoIG1ldMOzZC5cbiIKKyJcbiIKKyLDmnBsbsO9IHpvem5hbSBmdW5rY2nDrSBrbMOhdmVzb3YgamUgdGVyYXogZG9zdHVwbsO9IHBvIHN0bGHEjWVuw60ga2zDoXZlc3Ug4oCea+KAnCAiCisiYWxlYm8geiBtZW51XG4iCisiUG9tb2Nuw61rYSwga3RvcsO6IGplIG1vxb5uw6kgesOtc2thxaUgc3RsYcSNZW7DrW0ga2zDoXZlc3Ug4oCeP+KAnC5cbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxOTYKK21zZ2lkICJLZXlzdHJva2VzIGZvciBtZXRob2Qgc2VsZWN0aW9uIgorbXNnc3RyICJLbMOhdmVzeSBuYSB2w71iZXIgbWV0w7NkeSIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxOTYKK21zZ2lkICIiCisiTW90aW9uIGtleXM6IE5leHQvUHJldmlvdXMsIFRvcC9FbmQsIFVwL0Rvd24sIEJhY2t3YXJkcy9Gb3J3YXJkczpcbiIKKyIgIGosIERvd24tYXJyb3cgICAgICAgICBrLCBVcC1hcnJvdyAgICAgICAgICAgICBtb3ZlIGhpZ2hsaWdodFxuIgorIiAgTiwgUGFnZS1kb3duLCBTcGFjZSAgIFAsIFBhZ2UtdXAsIEJhY2tzcGFjZSAgIHNjcm9sbCBsaXN0IGJ5IDEgcGFnZVxuIgorIiAgXm4gICAgICAgICAgICAgICAgICAgIF5wICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBsaXN0IGJ5IDEgbGluZVxuIgorIiAgdCwgSG9tZSAgICAgICAgICAgICAgIGUsIEVuZCAgICAgICAgICAgICAgICAgIGp1bXAgdG8gdG9wL2VuZCBvZiBsaXN0XG4iCisiICB1ICAgICAgICAgICAgICAgICAgICAgZCAgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGluZm8gYnkgMSBwYWdlXG4iCisiICBedSAgICAgICAgICAgICAgICAgICAgXmQgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGluZm8gYnkgMSBsaW5lXG4iCisiICBCLCBMZWZ0LWFycm93ICAgICAgICAgRiwgUmlnaHQtYXJyb3cgICAgICAgICAgcGFuIGRpc3BsYXkgYnkgMS8zIHNjcmVlblxuIgorIiAgXmIgICAgICAgICAgICAgICAgICAgIF5mICAgICAgICAgICAgICAgICAgICAgIHBhbiBkaXNwbGF5IGJ5IDEgY2hhcmFjdGVyXG4iCisiKFRoZXNlIGFyZSB0aGUgc2FtZSBtb3Rpb24ga2V5cyBhcyBpbiB0aGUgcGFja2FnZSBsaXN0IGRpc3BsYXkuKVxuIgorIlxuIgorIlF1aXQ6XG4iCisiIFJldHVybiwgRW50ZXIgICAgc2VsZWN0IHRoaXMgbWV0aG9kIGFuZCBnbyB0byBpdHMgY29uZmlndXJhdGlvbiBkaWFsb2d1ZVxuIgorIiB4LCBYICAgICAgICAgICAgIGV4aXQgd2l0aG91dCBjaGFuZ2luZyBvciBzZXR0aW5nIHVwIHRoZSBpbnN0YWxsYXRpb24gIgorIm1ldGhvZFxuIgorIlxuIgorIk1pc2NlbGxhbmVvdXM6XG4iCisiICA/LCBIZWxwLCBGMSAgICAgIHJlcXVlc3QgaGVscFxuIgorIiBebCAgICAgICAgICAgICAgICByZWRyYXcgZGlzcGxheVxuIgorIiAgLyAgICAgICAgICAgICAgICBzZWFyY2ggKGp1c3QgcmV0dXJuIHRvIGNhbmNlbClcbiIKKyIgIFxcICAgICAgICAgICAgICAgIHJlcGVhdCBsYXN0IHNlYXJjaFxuIgorbXNnc3RyICIiCisiS2zDoXZlc3kgcHJlIHBvaHliOiDEjmFsxaHDrS9QcmVkY2jDoWR6YWrDumNpLCBaYcSNaWF0b2svS29uaWVjLCBIb3JlL0RvbGUsIERvemFkdS8iCisiRG9wcmVkdTpcbiIKKyIgIGosIMWgw61wa2EtZG9sZSAgICAgICAgIGssIMWgw61wa2EtaG9yZSAgICAgICAgICAgcHJlc3VudXRpZSB6dsO9cmF6bmVuaWFcbiIKKyIgIE4sIFBhZ2UtZG93biwgU3BhY2UgICBQLCBQYWdlLXVwLCBCYWNrc3BhY2UgICBwb3N1biB6b3puYW11IG8gMSBzdHJhbnVcbiIKKyIgIF5uICAgICAgICAgICAgICAgICAgICBecCAgICAgICAgICAgICAgICAgICAgICBwb3N1biB6b3puYW11IG8gMSByaWFkb2tcbiIKKyIgIHQsIEhvbWUgICAgICAgICAgICAgICBlLCBFbmQgICAgICAgICAgICAgICAgICBza29rIG5hIHphxI1pYXRvay9rb25pZWMgIgorInpvem5hbXVcbiIKKyIgIHUgICAgICAgICAgICAgICAgICAgICBkICAgICAgICAgICAgICAgICAgICAgICBwb3N1biBpbmZvcm3DoWNpaSBvIDEgc3RyYW51XG4iCisiICBedSAgICAgICAgICAgICAgICAgICAgXmQgICAgICAgICAgICAgICAgICAgICAgcG9zdW4gaW5mb3Jtw6FjaWkgbyAxIHJpYWRva1xuIgorIiAgQiwgxaDDrXBrYS12xL5hdm8gICAgICAgICBGLCDFoMOtcGthLXZwcmF2byAgICAgICAgcG9zdW4gZGlzcGxlamEgbyAxLzMgIgorIm9icmF6b3ZreVxuIgorIiAgXmIgICAgICAgICAgICAgICAgICAgIF5mICAgICAgICAgICAgICAgICAgICAgIHBvc3VuIGRpc3BsZWphIG8gMSB6bmFrXG4iCisiKFRvdG8gc8O6IHJvdm5ha8OpIGtsw6F2ZXN5IHByZSBwb2h5YiBha28gbmEgb2JyYXpvdmtlIHNvIHpvem5hbW9tIGJhbMOta292LilcbiIKKyJcbiIKKyJLb25pZWM6XG4iCisiIFJldHVybiwgRW50ZXIgICAgdnliZXIgdMO6dG8gbWV0w7NkdSBhIGNob8SPIGRvIGplaiBrb25maWd1cmHEjW7DqWhvIGRpYWzDs2d1XG4iCisiIHgsIFggICAgICAgICAgICAgc2tvbsSNacWlIGJleiB6bWllbiBhbGVibyBuYXN0YXZlbsOtIGluxaF0YWxhxI1uZWogbWV0w7NkeVxuIgorIlxuIgorIlLDtHpuZTpcbiIKKyIgID8sIEhlbHAsIEYxICAgICAgdnnFvmlhZGEgUG9tb2Nuw61rYVxuIgorIiBebCAgICAgICAgICAgICAgICBwcmVrcmVzbMOtIG9icmF6b3ZrdVxuIgorIiAgLyAgICAgICAgICAgICAgICB2eWjEvmFkYW5pZSAoc3RsYcSNZW7DrW0gRW50ZXIgenJ1xaHDrXRlIG9wZXLDoWNpdSlcbiIKKyIgIFxcICAgICAgICAgICAgICAgem9wYWt1amUgcG9zbGVkbsOpIGjEvmFkYW5pZVxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6NjAKK21zZ2lkICJUeXBlIGRzZWxlY3QgLS1oZWxwIGZvciBoZWxwLiIKK21zZ3N0ciAiUG9tb2Nuw61rYSB2eXZvbMOhdGUgcHLDrWthem9tIOKAnmRzZWxlY3QgLS1oZWxw4oCcLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0MworbXNnaWQgImEiCittc2dzdHIgInAiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDMKK21zZ2lkICJbQV1jY2VzcyIKK21zZ3N0ciAiW1BdcsOtc3R1cCIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0MworbXNnaWQgIkNob29zZSB0aGUgYWNjZXNzIG1ldGhvZCB0byB1c2UuIgorbXNnc3RyICJWeWJlcnRlIHNpIHByw61zdHVwb3bDuiBtZXTDs2R1LiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NAorbXNnaWQgInUiCittc2dzdHIgImEiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDQKK21zZ2lkICJbVV1wZGF0ZSIKK21zZ3N0ciAiW0Fda3R1YWxpesOhY2lhIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ0Cittc2dpZCAiVXBkYXRlIGxpc3Qgb2YgYXZhaWxhYmxlIHBhY2thZ2VzLCBpZiBwb3NzaWJsZS4iCittc2dzdHIgIkFrdHVhbGl6dWp0ZSB6b3puYW0gZG9zdHVwbsO9Y2ggYmFsw61rb3YsIGFrIGplIHRvIG1vxb5uw6kuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ1Cittc2dpZCAicyIKK21zZ3N0ciAidiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NQorbXNnaWQgIltTXWVsZWN0IgorbXNnc3RyICJbVl3DvWJlciAiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDUKK21zZ2lkICJSZXF1ZXN0IHdoaWNoIHBhY2thZ2VzIHlvdSB3YW50IG9uIHlvdXIgc3lzdGVtLiIKK21zZ3N0ciAiVnnFvmlhZGFqdGUsIGt0b3LDqSBiYWzDrWt5IGNoY2V0ZSB2byB2YcWhb20gc3lzdMOpbWUuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ2Cittc2dpZCAiaSIKK21zZ3N0ciAibiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NgorbXNnaWQgIltJXW5zdGFsbCIKK21zZ3N0ciAiW05dYWluxaF0YWxvdmHFpSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NgorbXNnaWQgIkluc3RhbGwgYW5kIHVwZ3JhZGUgd2FudGVkIHBhY2thZ2VzLiIKK21zZ3N0ciAiTmFpbsWhdGFsb3ZhxaUgYSBha3R1YWxpem92YcWlIHBvxb5hZG92YW7DqSBiYWzDrWt5LiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NworbXNnaWQgImMiCittc2dzdHIgImsiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDcKK21zZ2lkICJbQ11vbmZpZyIKK21zZ3N0ciAiW0tdb25maWd1cm92YcWlIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ3Cittc2dpZCAiQ29uZmlndXJlIGFueSBwYWNrYWdlcyB0aGF0IGFyZSB1bmNvbmZpZ3VyZWQuIgorbXNnc3RyICJLb25maWd1cm92YcWlIHbFoWV0a3kgbmVuYWtvbmZpZ3Vyb3ZhbsOpIGJhbMOta3kuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ4Cittc2dpZCAiciIKK21zZ3N0ciAibyIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OAorbXNnaWQgIltSXWVtb3ZlIgorbXNnc3RyICJbT11kc3Ryw6FuacWlIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ4Cittc2dpZCAiUmVtb3ZlIHVud2FudGVkIHNvZnR3YXJlLiIKK21zZ3N0ciAiT2RzdHLDoW5pxaUgbmVjaGNlbsO9IHNvZnR2w6lyLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OQorbXNnaWQgInEiCittc2dzdHIgInUiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDkKK21zZ2lkICJbUV11aXQiCittc2dzdHIgIltVXWtvbsSNacWlIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ5Cittc2dpZCAiUXVpdCBkc2VsZWN0LiIKK21zZ3N0ciAiVWtvbsSNacWlIGRzZWxlY3QuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTUwCittc2dpZCAibWVudSIKK21zZ3N0ciAibWVudSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE1NQorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIGhhbmRsaW5nIGZyb250ZW5kIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkRlYmlhbiDigJ4lc+KAnCAtIHJvemhyYW5pZSBuYSBzcHLDoXZ1IGJhbMOta292LCB2ZXJ6aWEgJXMuXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNTgKK21zZ2lkICIiCisiQ29weXJpZ2h0IChDKSAxOTk0LTE5OTYgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKK21zZ3N0ciAiIgorIkNvcHlyaWdodCAoQykgMTk5NC0xOTk2IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNjIKKyMsIGZ1enp5Cittc2dpZCAiIgorIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgb3JcbiIKKyJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKK21zZ3N0ciAiIgorIlRvdG8gamUgc2xvYm9kbsO9IHNvZnR2w6lyOyBwb2Ryb2Jub3N0aSBvIHByYXZpZGzDoWNoIGtvcMOtcm92YW5pYVxuIgorIm7DoWpkZXRlIHYgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyemlpIDIgYWxlYm8gbmVza29yxaFlai5cbiIKKyJOZXBvc2t5dHVqZSBzYSDFvUlBRE5BIHrDoXJ1a2EuIFBvbW9jb3UgJXMgLS1saWNlbmNlIHrDrXNrYXRlXG4iCisicG9kcm9ibm9zdGkgbyBhdXRvcnNrw71jaCBwcsOhdmFjaCBhIGxpY2VuY2lpLlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTcyIGRzZWxlY3QvbWFpbi5jYzoyMjAKK21zZ2lkICI8c3RhbmRhcmQgb3V0cHV0PiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gWzxhY3Rpb24+IC4uLl1cbiIKKyJcbiIKK21zZ3N0ciAiIgorIlBvdcW+aXRpZTogJXMgWzx2b8S+YmE+IC4uLl0gWzxvcGVyw6FjaWE+IC4uLl1cbiIKKyJcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE4NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorIiAgLS1leHBlcnQgICAgICAgICAgICAgICAgICAgVHVybiBvbiBleHBlcnQgbW9kZS5cbiIKKyIgIC0tZGVidWcgPGZpbGU+IHwgLUQ8ZmlsZT4gIFR1cm4gb24gZGVidWdnaW5nLCBzZW5kaW5nIG91dHB1dCB0byA8ZmlsZT4uXG4iCisiICAtLWNvbG91ciB8IC0tY29sb3Igc2NyZWVucGFydDpbZm9yZWdyb3VuZF0sW2JhY2tncm91bmRdWzphdHRyWythdHRyKy4uXV1cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENvbmZpZ3VyZSBzY3JlZW4gY29sb3Vycy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIlZvxL5ieTpcbiIKKyIgIC0tYWRtaW5kaXIgPGFkcmVzw6FyPiAgICAgICAgIFBvdcW+aWplIDxhZHJlc8Ohcj4gbmFtaWVzdG8gJXMuXG4iCisiICAtLWV4cGVydCAgICAgICAgICAgICAgICAgICAgIFJlxb5pbSBwcmUgc2vDunNlbsO9Y2ggcG91xb7DrXZhdGXEvm92LlxuIgorIiAgLS1kZWJ1ZyA8c8O6Ym9yPiB8IC1EPHPDumJvcj4gIE5hc3RhdsOtIGxhZGVuaWUsIHbDvXN0dXAgc2EgemFww63FoWUgZG8gc8O6Ym9ydSAiCisiPHPDumJvcj4uXG4iCisiICAtLWNvbG91ciB8IC0tY29sb3Igc2NyZWVucGFydDpbZm9yZWdyb3VuZF0sW2JhY2tncm91bmRdWzphdHRyWythdHRyKy4uXV1cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTmFzdGF2w60gZmFyYnkgb2JyYXpvdmt5LlxuIgorIlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTk2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgICBTaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICAgU2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgICAgICBab2JyYXrDrSB0ZW50byB0ZXh0IFBvbW9jbsOta2EuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgICAgIFpvYnJhesOtIMSNw61zbG8gdmVyemllLlxuIgorIiAgLS1saWNlbnNlIHwgLS1saWNlbmNlICAgICAgICBab2JyYXrDrSBsaWNlbmNpdS5cbiIKKyJcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjIwMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQWN0aW9uczpcbiIKKyIgIGFjY2VzcyB1cGRhdGUgc2VsZWN0IGluc3RhbGwgY29uZmlnIHJlbW92ZSBxdWl0XG4iCisiXG4iCittc2dzdHIgIiIKKyJPcGVyw6FjaWU6XG4iCisiICBhY2Nlc3MgdXBkYXRlIHNlbGVjdCBpbnN0YWxsIGNvbmZpZyByZW1vdmUgcXVpdFxuIgorIlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjA1CisjLCBjLWZvcm1hdAorbXNnaWQgIlNjcmVlbnBhcnRzOlxuIgorbXNnc3RyICLEjGFzdGkgb2JyYXpvdmt5OlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjEwCisjLCBjLWZvcm1hdAorbXNnaWQgIkNvbG91cnM6XG4iCittc2dzdHIgIkZhcmJ5OlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjE1CisjLCBjLWZvcm1hdAorbXNnaWQgIkF0dHJpYnV0ZXM6XG4iCittc2dzdHIgIlZsYXN0bm9zdGk6XG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGRuJ3Qgb3BlbiBkZWJ1ZyBmaWxlIGAlLjI1NXMnXG4iCittc2dzdHIgIm5lYm9sbyBtb8W+bsOpIG90dm9yacWlIGxhZGlhY2kgc8O6Ym9yIOKAniUuMjU1c+KAnFxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjUzCisjLCBjLWZvcm1hdAorbXNnaWQgIkludmFsaWQgJXMgYCVzJ1xuIgorbXNnc3RyICJOZXNwcsOhdm55ICVzIOKAniVz4oCcXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyNzAKK21zZ2lkICJzY3JlZW4gcGFydCIKK21zZ3N0ciAixI1hc8WlIG9icmF6b3ZreSIKKworIzogZHNlbGVjdC9tYWluLmNjOjI3NgorbXNnaWQgIk51bGwgY29sb3VyIHNwZWNpZmljYXRpb25cbiIKK21zZ3N0ciAixb1pYWRuYSBmYXJlYm7DoSDFoXBlY2lmaWvDoWNpYVxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6Mjg0IGRzZWxlY3QvbWFpbi5jYzoyODkKK21zZ2lkICJjb2xvdXIiCittc2dzdHIgImZhcmJhIgorCisjOiBkc2VsZWN0L21haW4uY2M6Mjk3Cittc2dpZCAiY29sb3VyIGF0dHJpYnV0ZSIKK21zZ3N0ciAidmxhc3Rub3PFpSBmYXJieSIKKworIzogZHNlbGVjdC9tYWluLmNjOjMyOQorbXNnaWQgIlRlcm1pbmFsIGRvZXMgbm90IGFwcGVhciB0byBzdXBwb3J0IGN1cnNvciBhZGRyZXNzaW5nLlxuIgorbXNnc3RyICJUZXJtaW7DoWwgemTDoSBzYSBuZXBvZHBvcnVqZSBhZHJlc292YW5pZSBrdXJ6b3J1LlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MzMxCittc2dpZCAiVGVybWluYWwgZG9lcyBub3QgYXBwZWFyIHRvIHN1cHBvcnQgaGlnaGxpZ2h0aW5nLlxuIgorbXNnc3RyICJOZXpkw6Egc2EsIMW+ZSBieSB0ZXJtaW7DoWwgcG9kcG9yb3ZhbCB6dsO9cmF6bmVuaWUuXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzozMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlNldCB5b3VyIFRFUk0gdmFyaWFibGUgY29ycmVjdGx5LCB1c2UgYSBiZXR0ZXIgdGVybWluYWwsXG4iCisib3IgbWFrZSBkbyB3aXRoIHRoZSBwZXItcGFja2FnZSBtYW5hZ2VtZW50IHRvb2wgJXMuXG4iCittc2dzdHIgIiIKKyJOYXN0YXZ0ZSB2YcWhdSBwcmVtZW5uw7ogVEVSTSBzcHLDoXZuZSwgcG91xb5pdGUgbGVwxaHDrSB0ZXJtaW7DoWwsXG4iCisiYWxlYm8gdG8gdXJvYnRlIHBvbW9jb3UgbsOhc3Ryb2phIG5hIHNwcsOhdnUgamVkbm90bGl2w71jaCBiYWzDrWtvdiAlcy5cbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjMzNgorbXNnaWQgInRlcm1pbmFsIGxhY2tzIG5lY2Vzc2FyeSBmZWF0dXJlcywgZ2l2aW5nIHVwIgorbXNnc3RyICJ0ZXJtaW7DoWx1IGNow71iYWrDuiBuZXZ5aG51dG7DqSB6bG/Fvmt5LCB1a29uxI11amUgc2EiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzo0MTcKK21zZ2lkICIiCisiXG4iCisiXG4iCisiTW92ZSBhcm91bmQgd2l0aCBeUCBhbmQgXk4sIGN1cnNvciBrZXlzLCBpbml0aWFsIGxldHRlcnMsIG9yIGRpZ2l0cztcbiIKKyJQcmVzcyA8ZW50ZXI+IHRvIGNvbmZpcm0gc2VsZWN0aW9uLiAgIF5MIHJlZHJhd3Mgc2NyZWVuLlxuIgorIlxuIgorbXNnc3RyICIiCisiXG4iCisiXG4iCisiUG9oeWJ1anRlIHNhIG9rb2xvIHMgXlAgYSBeTiwga3Vyem9yb3bDvW1pIGtsw6F2ZXNtaSwgemHEjWlhdG/EjW7DvW1pIHDDrXNtZW5hbWkgIgorImFsZWJvIMSNw61zbGljYW1pO1xuIgorIlbDvWJlciBwb3R2cmTDrXRlIHN0bGHEjWVuw61tIDxFbnRlcj4uIF5MIHByZWtyZXNsw60gb2JyYXpvdmt1LlxuIgorIlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6NDI4Cittc2dpZCAiIgorIlxuIgorIlxuIgorIlJlYWQtb25seSBhY2Nlc3M6IG9ubHkgcHJldmlldyBvZiBzZWxlY3Rpb25zIGlzIGF2YWlsYWJsZSEiCittc2dzdHIgIiIKKyJcbiIKKyJcbiIKKyJQcsOtc3R1cCBsZW4gbmEgxI3DrXRhbmllOiBtb8W+bsO9IGplIGxlbiBwcmVoxL5hZCB2w71iZXJvdiEiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzo0NDgKK21zZ2lkICJmYWlsZWQgdG8gZ2V0Y2ggaW4gbWFpbiBtZW51IgorbXNnc3RyICJ6bHloYWxhIGZ1bmtjaWEgZ2V0Y2ggdiBobGF2bm9tIG1lbnUiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzo1MzEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBhY3Rpb24gc3RyaW5nIGAlLjUwcyciCittc2dzdHIgIm5lem7DoW15IHJlxaVhemVjIG9wZXLDoWNpZSDigJ4lLjUwc+KAnCIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzo3NworbXNnaWQgImRzZWxlY3QgLSBsaXN0IG9mIGFjY2VzcyBtZXRob2RzIgorbXNnc3RyICJkc2VsZWN0IC0gem96bmFtIHByw61zdHVwb3bDvWNoIG1ldMOzZCIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzo4NgorIywgYy1mb3JtYXQKK21zZ2lkICJBY2Nlc3MgbWV0aG9kIGAlcycuIgorbXNnc3RyICJQcsOtc3R1cG92w6EgbWV0w7NkYSDigJ4lc+KAnC4iCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTIwCittc2dpZCAiQWJicmV2LiIKK21zZ3N0ciAiU2tyw6F0LiIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxMjEgZHNlbGVjdC9wa2dpbmZvLmNjOjEwNSBkc2VsZWN0L3BrZ3RvcC5jYzoyOTEKK21zZ2lkICJEZXNjcmlwdGlvbiIKK21zZ3N0ciAiUG9waXMiCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTY0IGRzZWxlY3QvcGtnbGlzdC5jYzo1NzIKK21zZ2lkICJkb3VwZGF0ZSBmYWlsZWQiCittc2dzdHIgImZ1bmtjaWEgZG91cGRhdGUgemx5aGFsYSIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxNjYgZHNlbGVjdC9wa2dsaXN0LmNjOjU3NQorbXNnaWQgImZhaWxlZCB0byB1bmJsb2NrIFNJR1dJTkNIIgorbXNnc3RyICJ6bHloYWxvIG9kYmxva292YW5pZSBwcmVtZW5uZWogU0lHV0lOQ0giCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTcwIGRzZWxlY3QvcGtnbGlzdC5jYzo1ODAKK21zZ2lkICJmYWlsZWQgdG8gcmUtYmxvY2sgU0lHV0lOQ0giCittc2dzdHIgInpseWhhbG8gb3DDpHRvdm7DqSB6YWJsb2tvdmFuaWUgcHJlbWVubmVqIFNJR1dJTkNIIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjE3MSBkc2VsZWN0L3BrZ2xpc3QuY2M6NTgyCittc2dpZCAiZ2V0Y2ggZmFpbGVkIgorbXNnc3RyICJmdW5rY2lhIGdldGNoIHpseWhhbGEiCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTg4Cittc2dpZCAiRXhwbGFuYXRpb24iCittc2dzdHIgIlZ5c3ZldGxlbmllIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjE5NworbXNnaWQgIk5vIGV4cGxhbmF0aW9uIGF2YWlsYWJsZS4iCittc2dzdHIgIk5pZSBqZSBkb3N0dXBuw6kgxb5pYWRuZSB2eXN2ZXRsZW5pZS4iCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjY3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJcbiIKKyIlczogJXNcbiIKK21zZ3N0ciAiIgorIlxuIgorIlxuIgorIiVzOiAlc1xuIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzo3MAorbXNnaWQgIiIKKyJcbiIKKyJQcmVzcyA8ZW50ZXI+IHRvIGNvbnRpbnVlLiIKK21zZ3N0ciAiIgorIlxuIgorIlBva3JhxI11anRlIHN0bGHEjWVuw61tIDxFbnRlcj4uIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoxNjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHJlc3MgPGVudGVyPiB0byBjb250aW51ZS5cbiIKK21zZ3N0ciAiUG9rcmHEjXVqdGUgc3RsYcSNZW7DrW0ga2zDoXZlc3UgPEVudGVyPi5cbiIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MTYyCisjLCBmdXp6eQorbXNnaWQgIjxzdGFuZGFyZCBlcnJvcj4iCittc2dzdHIgImNoeWJhIHByaSB6w6FwaXNlIG5hIMWhdGFuZGFyZG7DvSB2c3R1cCIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MTY1Cittc2dpZCAiZXJyb3IgcmVhZGluZyBhY2tub3dsZWRnZW1lbnQgb2YgcHJvZ3JhbSBmYWlsdXJlIG1lc3NhZ2UiCittc2dzdHIgImNoeWJhIHByaSDEjcOtdGFuw60gcG90dnJkZW5pYSBzcHLDoXZ5IG8gemx5aGFuw60gcHJvZ3JhbXUiCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjE5NgorbXNnaWQgInVwZGF0ZSBhdmFpbGFibGUgbGlzdCBzY3JpcHQiCittc2dzdHIgImFrdHVhbGl6w6FjaWEgZG9zdHVwbsOpaG8gc2tyaXB0dSB6b3puYW11IgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoyMDAKK21zZ2lkICJpbnN0YWxsYXRpb24gc2NyaXB0IgorbXNnc3RyICJpbsWhdGFsYcSNbsO9IHNrcmlwdCIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MjQ2Cittc2dpZCAicXVlcnkvc2V0dXAgc2NyaXB0IgorbXNnc3RyICJkb3Rhem92YWPDrS9uYXN0YXZvdmFjw60gc2tyaXB0IgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzo1MworIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gbWV0aG9kIG9wdGlvbnMgZmlsZSBgJS4yNTBzJyAtLSAlcyIKK21zZ3N0ciAic3ludGFrdGlja8OhIGNoeWJhIHYgbWV0w7NkZSBzw7pib3J1IHZvbGllYiDigJ4lLjI1MHPigJwgLS0gJXMiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjU5CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHJlYWRpbmcgb3B0aW9ucyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJjaHliYSBwcmkgxI3DrXRhbsOtIHPDumJvcnUgdm9saWViIOKAniUuMjUwc+KAnCIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgYCUuMjUwcycgZGlyZWN0b3J5IGZvciByZWFkaW5nIG1ldGhvZHMiCittc2dzdHIgIm5pZSBqZSBtb8W+bsOpIMSNw610YcWlIG1ldMOzZHkgxI3DrXRhbmlhIHogYWRyZXPDoXJhIOKAniUuMjUwc+KAnCIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTA2CisjLCBjLWZvcm1hdAorbXNnaWQgIm1ldGhvZCBgJS4yNTBzJyBoYXMgbmFtZSB0aGF0IGlzIHRvbyBsb25nICglZCA+ICVkIGNoYXJhY3RlcnMpIgorbXNnc3RyICJtZXTDs2RhIOKAniUuMjUwc+KAnCBtw6EgbsOhem92LCBrdG9yw70gamUgcHLDrWxpxaEgZGxow70gKCVkID4gJWQgem5ha292KSAiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjExNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gYWNjZXNzIG1ldGhvZCBzY3JpcHQgYCUuMjUwcyciCittc2dzdHIgIm5pZSBqZSBtb8W+bsOpIHByaXN0dXBvdmHFpSBrIHNrcmlwdHUgbWV0w7NkeSDigJ4lLjI1MHPigJwiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjEyMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBtZXRob2Qgb3B0aW9ucyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuaWUgamUgbW/Fvm7DqSDEjcOtdGHFpSBzw7pib3Igdm9saWViIG1ldMOzZCDigJ4lLjI1MHPigJwiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE0NworbXNnaWQgIm5vbi1kaWdpdCB3aGVyZSBkaWdpdCB3YW50ZWQiCittc2dzdHIgIm5lxI3DrXNlbG7DoSBob2Rub3RhIHRhbSwga2RlIGplIG/EjWFrw6F2YW7DqSDEjcOtc2xvIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNTAKK21zZ2lkICJFT0YgaW4gaW5kZXggc3RyaW5nIgorbXNnc3RyICJFT0YgdiBpbmRleG92YWNvbSByZcWlYXpjaSIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTUzCittc2dpZCAiaW5kZXggc3RyaW5nIHRvbyBsb25nIgorbXNnc3RyICJpbmRleG92YWPDrSByZcWlYXplYyBqZSBwcsOtbGnFoSBkbGjDvSIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTU2Cittc2dpZCAibmV3bGluZSBiZWZvcmUgb3B0aW9uIG5hbWUgc3RhcnQiCittc2dzdHIgIm5vdsO9IHJpYWRvayBwcmVkIHphxI1pYXRrb20gbsOhenZ1IHZvxL5ieSIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTU4Cittc2dpZCAiRU9GIGJlZm9yZSBvcHRpb24gbmFtZSBzdGFydCIKK21zZ3N0ciAiRU9GIHByZWQgemHEjWlhdGtvbSBuw6F6dnUgdm/EvmJ5IgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNjIKK21zZ2lkICJub25hbHBoYSB3aGVyZSBvcHRpb24gbmFtZSBzdGFydCB3YW50ZWQiCittc2dzdHIgIm5lYWxmYW51bWVyaWNrw70gem5hayB0YW0sIGtkZSBzYSBvxI1ha8OhdmEgemHEjWlhdG9rIG7DoXp2dSB2b8S+YnkiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE2NAorbXNnaWQgIm5vbi1hbHBoYW51bSBpbiBvcHRpb24gbmFtZSIKK21zZ3N0ciAibmVhbGZhbnVtZXJpY2vDvSB6bmFrIHYgbsOhenZlIHZvxL5ieSIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTY3Cittc2dpZCAiRU9GIGluIG9wdGlvbiBuYW1lIgorbXNnc3RyICJFT0YgdiBuw6F6dmUgdm/EvmJ5IgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNzIKK21zZ2lkICJuZXdsaW5lIGJlZm9yZSBzdW1tYXJ5IgorbXNnc3RyICJub3bDvSByaWFkb2sgcHJlZCBwcmVoxL5hZG9tIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNzQKK21zZ2lkICJFT0YgYmVmb3JlIHN1bW1hcnkiCittc2dzdHIgIkVPRiBwcmVkIHByZWjEvmFkb20iCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE4MAorbXNnaWQgIkVPRiBpbiBzdW1tYXJ5IC0gbWlzc2luZyBuZXdsaW5lIgorbXNnc3RyICJFT0YgdiBwcmVoxL5hZGUgLSBjaMO9YmFqw7pjaSBub3bDvSByaWFkb2siCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE5MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBvcHRpb24gZGVzY3JpcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmllIGplIG1vxb5uw6kgb3R2b3JpxaUgdm/EvmJ1IHBvcGlzdSBzw7pib3J1IOKAniUuMjUwc+KAnCIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTk0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IG9wdGlvbiBkZXNjcmlwdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuaWUgamUgbW/Fvm7DqSB6aXN0acWlIHN0YXYgdm/EvmJ5IHBvcGlzdSBzw7pib3J1IOKAniUuMjUwc+KAnCIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTk4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZWFkIG9wdGlvbiBkZXNjcmlwdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJ6bHloYWxvIG5hxI3DrXRhbmllIHBvcGlzbsOpaG8gc8O6Ym9ydSB2b2xpZWIg4oCeJS4yNTBz4oCcIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgZHVyaW5nIHJlYWQgb2Ygb3B0aW9uIGRlc2NyaXB0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImNoeWJhIHByaSDEjcOtdGFuw60gcG9waXNuw6lobyBzw7pib3J1IHZvbGllYiDigJ4lLjI1MHPigJwiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjIyNAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBkdXJpbmcgcmVhZCBvZiBtZXRob2Qgb3B0aW9ucyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJjaHliYSBwcmkgxI3DrXRhbsOtIHPDumJvcnUgcyB2b8S+YmFtaSBtZXTDs2Qg4oCeJS4yNTBz4oCcIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gY3VycmVudCBvcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmllIGplIG1vxb5uw6kgb3R2b3JpxaUgYWt0dcOhbG55IHPDumJvciBzIHZvxL5iYW1pIOKAniUuMjUwc+KAnCIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6Mjg5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIG5ldyBvcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmllIGplIG1vxb5uw6kgb3R2b3JpxaUgbm92w70gc8O6Ym9yIHMgdm/EvmJhbWkg4oCeJS4yNTBz4oCcIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ldyBvcHRpb24gdG8gYCUuMjUwcyciCittc2dzdHIgIm5pZSBqZSBtb8W+bsOpIHphcMOtc2HFpSBub3bDqSB2b8S+YnkgZG8g4oCeJS4yNTVz4oCcIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyOTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIG5ldyBvcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmllIGplIG1vxb5uw6kgemF0dm9yacWlIG5vdsO9IHPDumJvciBzIHZvxL5iYW1pIOKAniUuMjUwc+KAnCIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6Mjk3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyBvcHRpb24gYXMgYCUuMjUwcyciCittc2dzdHIgIm5pZSBqZSBtb8W+bsOpIG5haW7FoXRhbG92YcWlIG5vdsO6IHZvxL5idSBha28g4oCeJS4yNTVz4oCcIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MzYKK21zZ2lkICJuZXcgcGFja2FnZSIKK21zZ3N0ciAibm92w70gYmFsw61rIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MzcKK21zZ2lkICJpbnN0YWxsIgorbXNnc3RyICJuYWluxaF0YWxvdmHFpSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjM4Cittc2dpZCAiaG9sZCIKK21zZ3N0ciAicG9kcsW+YcWlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MzkKK21zZ2lkICJyZW1vdmUiCittc2dzdHIgIm9kc3Ryw6FuacWlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NDAKK21zZ2lkICJwdXJnZSIKK21zZ3N0ciAidnnEjWlzdGnFpSIKKworIy4gVFJBTlNMQVRPUlM6IFRoZSBzcGFjZSBpcyBhIHRyaWNrIHRvIHdvcmsgYXJvdW5kIGdldHRleHQgd2hpY2ggdXNlcworIy4gKiB0aGUgZW1wdHkgc3RyaW5nIHRvIHN0b3JlIGluZm9ybWF0aW9uIGFib3V0IHRoZSB0cmFuc2xhdGlvbi4gRE8gTk9UCisjLiAqIENIQU5HRSBUSEFUIElOIEEgVFJBTlNMQVRJT04hIFRoZSBjb2RlIHJlYWxseSByZWxpZXMgb24gdGhhdCBiZWluZworIy4gKiBhIHNpbmdsZSBzcGFjZS4KKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo0NworbXNnaWQgIiAiCittc2dzdHIgIiAiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo0OAorbXNnaWQgIlJFSU5TVEFMTCIKK21zZ3N0ciAiUFJFSU7FoFRBTE9WQcWkIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTEKK21zZ2lkICJub3QgaW5zdGFsbGVkIgorbXNnc3RyICJuZW5haW7FoXRhbG92YW7DvSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjUyCittc2dpZCAicmVtb3ZlZCAoY29uZmlncyByZW1haW4pIgorbXNnc3RyICJvZHN0csOhbmVuw70gKGtvbmZpZ3Vyw6FjaWUgcG9uZWNoYW7DqSkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1MworbXNnaWQgImhhbGYgaW5zdGFsbGVkIgorbXNnc3RyICLEjWlhc3RvxI1uZSBuYWluxaF0YWxvdmFuw70iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1NAorbXNnaWQgInVucGFja2VkIChub3Qgc2V0IHVwKSIKK21zZ3N0ciAicm96YmFsZW7DvSAobmVuYWtvbmZpZ3Vyb3ZhbsO9KSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjU1Cittc2dpZCAiaGFsZiBjb25maWd1cmVkIChjb25maWcgZmFpbGVkKSIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTYKK21zZ2lkICJhd2FpdGluZyB0cmlnZ2VyIHByb2Nlc3NpbmciCittc2dzdHIgIsSNYWvDoSBzYSBuYSBzcHJhY292YW5pZSBzcMO6xaHFpWHEjW92ICh0cmlnZ2Vycy1hd2FpdGVkKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjU3Cittc2dpZCAidHJpZ2dlcmVkIgorbXNnc3RyICJzcHVzdGVuw6kiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1OAorbXNnaWQgImluc3RhbGxlZCIKK21zZ3N0ciAibmFpbsWhdGFsb3ZhbsO9IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjEKK21zZ2lkICJSZXF1aXJlZCIKK21zZ3N0ciAiVnnFvmFkb3ZhbsO9IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjIKK21zZ2lkICJJbXBvcnRhbnQiCittc2dzdHIgIkTDtGxlxb5pdMO9IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjMKK21zZ2lkICJTdGFuZGFyZCIKK21zZ3N0ciAixaB0YW5kYXJkbsO9IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjQKK21zZ2lkICJPcHRpb25hbCIKK21zZ3N0ciAiVm9saXRlxL5uw70iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo2NQorbXNnaWQgIkV4dHJhIgorbXNnc3RyICJFeHRyYSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjY2Cittc2dpZCAiIUJ1ZyEiCittc2dzdHIgIiFDaHliYSEiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo2NworbXNnaWQgIlVuY2xhc3NpZmllZCIKK21zZ3N0ciAiTmVrbGFzaWZpa292YW7DvSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjcwCittc2dpZCAic3VnZ2VzdHMiCittc2dzdHIgIm5hdnJodWplIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzEKK21zZ2lkICJyZWNvbW1lbmRzIgorbXNnc3RyICJvZHBvcsO6xI1hIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzIKK21zZ2lkICJkZXBlbmRzIG9uIgorbXNnc3RyICJ6w6F2aXPDrSBuYSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjczCittc2dpZCAicHJlLWRlcGVuZHMgb24iCittc2dzdHIgInByZWQtesOhdmlzw60gbmEiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3NAorbXNnaWQgImJyZWFrcyIKK21zZ3N0ciAia2F6w60iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3NQorbXNnaWQgImNvbmZsaWN0cyB3aXRoIgorbXNnc3RyICJ2IGtvbmZsaXRlIHMiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3NgorbXNnaWQgInByb3ZpZGVzIgorbXNnc3RyICJwb3NreXR1amUiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3NworbXNnaWQgInJlcGxhY2VzIgorbXNnc3RyICJuYWhyw6FkemEiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3OAorbXNnaWQgImVuaGFuY2VzIgorbXNnc3RyICJ2eWxlcMWhdWplIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODEKK21zZ2lkICJSZXEiCittc2dzdHIgIlZ5xb4iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4MgorbXNnaWQgIkltcCIKK21zZ3N0ciAiRMO0bCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjgzCittc2dpZCAiU3RkIgorbXNnc3RyICLFoHRhIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODQKK21zZ2lkICJPcHQiCittc2dzdHIgIlZvbCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjg1Cittc2dpZCAiWHRyIgorbXNnc3RyICJYdHIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4NgorbXNnaWQgImJVRyIKK21zZ3N0ciAiQ2h5IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODcKK21zZ2lkICI/IgorbXNnc3RyICI/IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6OTUgZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExNQorbXNnaWQgIkJyb2tlbiIKK21zZ3N0ciAiUG/FoWtvZGVuw70iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo5NgorbXNnaWQgIk5ldyIKK21zZ3N0ciAiTm92w70iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo5NworbXNnaWQgIlVwZGF0ZWQiCittc2dzdHIgIkFrdHVhbGl6b3ZhbsO9IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6OTgKK21zZ2lkICJPYnNvbGV0ZS9sb2NhbCIKK21zZ3N0ciAiWmFzdGFyYWzDvS9sb2vDoWxueSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjk5Cittc2dpZCAiVXAtdG8tZGF0ZSIKK21zZ3N0ciAiQWt0dcOhbG55IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTAwCittc2dpZCAiQXZhaWxhYmxlIgorbXNnc3RyICJEb3N0dXBuw70iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDEgZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExNworbXNnaWQgIlJlbW92ZWQiCittc2dzdHIgIk9kc3Ryw6FuZW7DvSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwMiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTExCittc2dpZCAiQnJva2VubHkgaW5zdGFsbGVkIHBhY2thZ2VzIgorbXNnc3RyICJDaHlibmUgbmFpbsWhdGFsb3ZhbsOpIGJhbMOta3kiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDMKK21zZ2lkICJOZXdseSBhdmFpbGFibGUgcGFja2FnZXMiCittc2dzdHIgIk5vdm8gZG9zdHVwbsOpIGJhbMOta3kiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDQKK21zZ2lkICJVcGRhdGVkIHBhY2thZ2VzIChuZXdlciB2ZXJzaW9uIGlzIGF2YWlsYWJsZSkiCittc2dzdHIgIkFrdHVhbGl6b3ZhbsOpIGJhbMOta3kgKGsgZGlzcG96w61jaWkgamUgbm92xaFpYSB2ZXJ6aWEpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTA1Cittc2dpZCAiT2Jzb2xldGUgYW5kIGxvY2FsIHBhY2thZ2VzIHByZXNlbnQgb24gc3lzdGVtIgorbXNnc3RyICJaYXN0YXJhbMOpIGEgbG9rw6FsbmUgYmFsw61reSB2IHN5c3TDqW1lIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTA2Cittc2dpZCAiVXAgdG8gZGF0ZSBpbnN0YWxsZWQgcGFja2FnZXMiCittc2dzdHIgIkFrdHXDoWxuZSBuYWluxaF0YWxvdmFuw6kgYmFsw61reSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwNworbXNnaWQgIkF2YWlsYWJsZSBwYWNrYWdlcyAobm90IGN1cnJlbnRseSBpbnN0YWxsZWQpIgorbXNnc3RyICJEb3N0dXBuw6kgYmFsw61reSAobW9tZW50w6FsbmUgbmVuYWluxaF0YWxvdmFuw6kpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTA4Cittc2dpZCAiUmVtb3ZlZCBhbmQgbm8gbG9uZ2VyIGF2YWlsYWJsZSBwYWNrYWdlcyIKK21zZ3N0ciAiT2RzdHLDoW5lbsOpIGEgdmlhYyBuZWRvc3R1cG7DqSBiYWzDrWt5IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTEyCittc2dpZCAiSW5zdGFsbGVkIHBhY2thZ2VzIgorbXNnc3RyICJOYWluxaF0YWxvdmFuw6kgYmFsw61reSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExMworbXNnaWQgIlJlbW92ZWQgcGFja2FnZXMgKGNvbmZpZ3VyYXRpb24gc3RpbGwgcHJlc2VudCkiCittc2dzdHIgIk9kc3Ryw6FuZW7DqSBiYWzDrWt5IChrb25maWd1csOhY2lhIHN0w6FsZSB6YWNob3ZhbsOhKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExNAorbXNnaWQgIlB1cmdlZCBwYWNrYWdlcyBhbmQgdGhvc2UgbmV2ZXIgaW5zdGFsbGVkIgorbXNnc3RyICJWecSNaXN0ZW7DqSBhIG5pa2R5IG5lbmFpbsWhdGFsb3ZhbsOpIGJhbMOta3kiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTYKK21zZ2lkICJJbnN0YWxsZWQiCittc2dzdHIgIk5haW7FoXRhbG92YW7DqSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExOAorbXNnaWQgIlB1cmdlZCIKK21zZ3N0ciAiVnnEjWlzdGVuw6kiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxOTgKK21zZ2lkICJkc2VsZWN0IC0gcmVjdXJzaXZlIHBhY2thZ2UgbGlzdGluZyIKK21zZ3N0ciAiZHNlbGVjdCAtIHJla3VyesOtdm55IHbDvXBpcyBiYWzDrWtvdiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjE5OQorbXNnaWQgImRzZWxlY3QgLSBpbnNwZWN0aW9uIG9mIHBhY2thZ2Ugc3RhdGVzIgorbXNnc3RyICJkc2VsZWN0IC0gaW7FoXBla2NpYSBzdGF2b3YgYmFsw61rb3YiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMDAKK21zZ2lkICJkc2VsZWN0IC0gbWFpbiBwYWNrYWdlIGxpc3RpbmciCittc2dzdHIgImRzZWxlY3QgLSBobGF2bsO9IHpvem5hbSBiYWzDrWtvdiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIwOAorbXNnaWQgIiAoYnkgc2VjdGlvbikiCittc2dzdHIgIiAocG9kxL5hIHNla2NpZSkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMTEKK21zZ2lkICIgKGF2YWlsLiwgc2VjdGlvbikiCittc2dzdHIgIiAoZG9zdHVwLiwgc2VrY2lhKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIxNAorbXNnaWQgIiAoc3RhdHVzLCBzZWN0aW9uKSIKK21zZ3N0ciAiIChzdGF2LCBzZWtjaWEpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjIzCittc2dpZCAiIChieSBwcmlvcml0eSkiCittc2dzdHIgIiAocG9kxL5hIHByaW9yaXR5KSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIyNgorbXNnaWQgIiAoYXZhaWwuLCBwcmlvcml0eSkiCittc2dzdHIgIiAoZG9zdHVwLiwgcHJpb3JpdGEpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjI5Cittc2dpZCAiIChzdGF0dXMsIHByaW9yaXR5KSIKK21zZ3N0ciAiIChzdGF2LCBwcmlvcml0YSkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMzggZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI1MAorbXNnaWQgIiAoYWxwaGFiZXRpY2FsbHkpIgorbXNnc3RyICIgKGFiZWNlZG5lKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI0MQorbXNnaWQgIiAoYnkgYXZhaWxhYmlsaXR5KSIKK21zZ3N0ciAiIChwb2TEvmEgZG9zdHVwbm9zdGkpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjQ0Cittc2dpZCAiIChieSBzdGF0dXMpIgorbXNnc3RyICIgKHBvZMS+YSBzdGF2dSkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNTgKK21zZ2lkICIgbWFyazorLz0vLSB0ZXJzZTp2IGhlbHA6PyIKK21zZ3N0ciAiIHpuYcSNLjorLz0vLSBzdHJ1xI06diBQb21vY27DrWs6PyAiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNTkKK21zZ2lkICIgbWFyazorLz0vLSB2ZXJib3NlOnYgaGVscDo/IgorbXNnc3RyICIgem5hxI0uOisvPS8tIHBvZHJvYjp2IFBvbW9jbsOtazo/IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjYwCittc2dpZCAiIHRlcnNlOnYgaGVscDo/IgorbXNnc3RyICIgc3RydcSNbmU6diBQb21vY27DrWs6PyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI2MQorbXNnaWQgIiB2ZXJib3NlOnYgaGVscDo/IgorbXNnc3RyICIgcG9kcm9ibmU6diBQb21vY27DrWs6PyIKKworIzogZHNlbGVjdC9wa2dpbmZvLmNjOjgwCittc2dpZCAiIgorIlRoZSBsaW5lIHlvdSBoYXZlIGhpZ2hsaWdodGVkIHJlcHJlc2VudHMgbWFueSBwYWNrYWdlczsgaWYgeW91IGFzayB0byAiCisiaW5zdGFsbCwgcmVtb3ZlLCBob2xkLCBldGMuIGl0IHlvdSB3aWxsIGFmZmVjdCBhbGwgdGhlIHBhY2thZ2VzIHdoaWNoIG1hdGNoICIKKyJ0aGUgY3JpdGVyaW9uIHNob3duLlxuIgorIlxuIgorIklmIHlvdSBtb3ZlIHRoZSBoaWdobGlnaHQgdG8gYSBsaW5lIGZvciBhIHBhcnRpY3VsYXIgcGFja2FnZSB5b3Ugd2lsbCBzZWUgIgorImluZm9ybWF0aW9uIGFib3V0IHRoYXQgcGFja2FnZSBkaXNwbGF5ZWQgaGVyZS5cbiIKKyJZb3UgY2FuIHVzZSBgbycgYW5kIGBPJyB0byBjaGFuZ2UgdGhlIHNvcnQgb3JkZXIgYW5kIGdpdmUgeW91cnNlbGYgdGhlICIKKyJvcHBvcnR1bml0eSB0byBtYXJrIHBhY2thZ2VzIGluIGRpZmZlcmVudCBraW5kcyBvZiBncm91cHMuIgorbXNnc3RyICIiCisiUmlhZG9rLCBrdG9yw70gc3RlIHp2w71yYXpuaWxpIHJlcHJlemVudHVqZSBtbm/FvnN0dm8gYmFsw61rb3Y7IGFrIHBvxb5hZHVqZXRlICIKKyJpbsWhdGFsw6FjaXUsIG9kc3Ryw6FuZW5pZSwgcG9kcsW+YW5pZSwgYXTEjy4sIG92cGx5dm7DrSB0byB2xaFldGt5IGJhbMOta3ksIGt0b3LDqSAiCisic2EgemhvZHVqw7ogc28gem9icmF6ZW7DvW1pIGtyaXTDqXJpYW1pLlxuIgorIlxuIgorIkFrIHByZXN1bmlldGUgenbDvXJhem5lbmllIG5hIHJpYWRvayBzIHByw61zbHXFoW7DvW0gYmFsw61rb20sIHpvYnJhemlhIHNhIHbDoW0gbmEgIgorInRvbXRvIG1pZXN0ZSBpbmZvcm3DoWNpZSBvIHRvbXRvIGJhbMOta3UuXG4iCisiTcO0xb5ldGUgcG91xb5pxaUg4oCeb+KAnCBhIOKAnk/igJwgbmEgem1lbnUgem9yYWRlbmlhIGEgdW1vxb5uacWlIHRhayBvem5hxI1lbmllIGJhbMOta292IHogIgorImluw71jaCBza3Vww61uLiIKKworIzogZHNlbGVjdC9wa2dpbmZvLmNjOjkzCittc2dpZCAiSW50ZXJyZWxhdGlvbnNoaXBzIgorbXNnc3RyICJaw6F2aXNsb3N0aSIKKworIzogZHNlbGVjdC9wa2dpbmZvLmNjOjExMgorbXNnaWQgIk5vIGRlc2NyaXB0aW9uIGF2YWlsYWJsZS4iCittc2dzdHIgIlBvcGlzIG5pZSBqZSBkb3N0dXBuw70uIgorCisjOiBkc2VsZWN0L3BrZ2luZm8uY2M6MTMwCittc2dpZCAiSW5zdGFsbGVkIGNvbnRyb2wgZmlsZSBpbmZvcm1hdGlvbiIKK21zZ3N0ciAiSW5mb3Jtw6FjaWUgbmFpbsWhdGFsb3ZhbsOpaG8gcmlhZGlhY2VobyBzw7pib3J1IgorCisjOiBkc2VsZWN0L3BrZ2luZm8uY2M6MTQ2Cittc2dpZCAiQXZhaWxhYmxlIGNvbnRyb2wgZmlsZSBpbmZvcm1hdGlvbiIKK21zZ3N0ciAiRG9zdHVwbsOpIGluZm9ybcOhY2llIG8gcmlhZGlhY29tIHPDumJvcmUiCisKKyM6IGRzZWxlY3QvcGtnbGlzdC5jYzo0MTYKK21zZ2lkICJUaGVyZSBhcmUgbm8gcGFja2FnZXMuIgorbXNnc3RyICLFvWlhZG5lIGJhbMOta3kuIgorCisjOiBkc2VsZWN0L3BrZ2xpc3QuY2M6NTA3Cittc2dpZCAiaW52YWxpZCBzZWFyY2ggb3B0aW9uIGdpdmVuIgorbXNnc3RyICJ6YWRhbsOhIG5lc3Byw6F2bmEgcG9kbWllbmthIHZ5aMS+YWTDoXZhbmlhIgorCisjOiBkc2VsZWN0L3BrZ2xpc3QuY2M6NTIxCittc2dpZCAiZXJyb3IgaW4gcmVndWxhciBleHByZXNzaW9uIgorbXNnc3RyICJjaHliYSB2IHJlZ3Vsw6Fybm9tIHbDvXJhemUiCisKKyM6IGRzZWxlY3QvcGtnc3VibGlzdC5jYzoxMDcKK21zZ2lkICIgZG9lcyBub3QgYXBwZWFyIHRvIGJlIGF2YWlsYWJsZVxuIgorbXNnc3RyICIgbmV2eXplcsOhIGJ5xaUgZG9zdHVwbsO9XG4iCisKKyM6IGRzZWxlY3QvcGtnc3VibGlzdC5jYzoxMjcKK21zZ2lkICIgb3IgIgorbXNnc3RyICIgYWxlYm8gIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo1NworbXNnaWQgIkFsbCIKK21zZ3N0ciAiVsWhZXRreSIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6NzkKK21zZ2lkICJBbGwgcGFja2FnZXMiCittc2dzdHIgIlbFoWV0a3kgYmFsw61reSIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcGFja2FnZXMgd2l0aG91dCBhIHNlY3Rpb24iCittc2dzdHIgIiVzIGJhbMOta3kgYmV6IHNla2NpZSIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcGFja2FnZXMgaW4gc2VjdGlvbiAlcyIKK21zZ3N0ciAiJXMgYmFsw61rb3YgdiBzZWtjaWkgJXMiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjkxCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzICVzIHBhY2thZ2VzIgorbXNnc3RyICIlcyAlcyBiYWzDrWt5IgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo5NQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyAlcyBwYWNrYWdlcyB3aXRob3V0IGEgc2VjdGlvbiIKK21zZ3N0ciAiJXMgJXMgYmFsw61reSBiZXogc2VrY2llIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo5NworIywgYy1mb3JtYXQKK21zZ2lkICIlcyAlcyBwYWNrYWdlcyBpbiBzZWN0aW9uICVzIgorbXNnc3RyICIgJXMgJXMgYmFsw61reSB2IHNla2NpaSAlcyIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6MTE4CisjLCBjLWZvcm1hdAorbXNnaWQgIiUtKnMgJXMlcyVzOyAgJXMgKHdhczogJXMpLiAgJXMiCittc2dzdHIgIiUtKnMgJXMlcyVzOyAlcyAoYm9sbzogJXMpLiAgJXMiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI2MworbXNnaWQgIkVycm9yIgorbXNnc3RyICJDaHliYSIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6MjY3Cittc2dpZCAiSW5zdGFsbGVkPyIKK21zZ3N0ciAiTmFpbsWhdGFsb3ZhbsO9PyIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6MjcxCittc2dpZCAiT2xkIG1hcmsiCittc2dzdHIgIlN0YXLDoSB6bmHEjWthIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyNzUKK21zZ2lkICJNYXJrZWQgZm9yIgorbXNnc3RyICJPem5hxI1lbsOpIG5hIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyNzgKK21zZ2lkICJFSU9NIgorbXNnc3RyICJFSU9NIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyODAKK21zZ2lkICJTZWN0aW9uIgorbXNnc3RyICJTZWtjaWEiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI4MQorbXNnaWQgIlByaW9yaXR5IgorbXNnc3RyICJQcmlvcml0YSIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6MjgyCittc2dpZCAiUGFja2FnZSIKK21zZ3N0ciAiQmFsw61rIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyODYKK21zZ2lkICJJbnN0LnZlciIKK21zZ3N0ciAiSW7FoXQudmVyIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyODkKK21zZ2lkICJBdmFpbC52ZXIiCittc2dzdHIgIkRvc3R1cC52ZXIiCisKKyN+IG1zZ2lkICJyZXR1cm5lZCBlcnJvciBleGl0IHN0YXR1cyAlZC5cbiIKKyN+IG1zZ3N0ciAidnLDoXRlbsOhIGNoeWJhIHbDvXN0dXBuw6lobyBzdGF2dSAlZFxuIgorCisjfiBtc2dpZCAid2FzIGludGVycnVwdGVkLlxuIgorI34gbXNnc3RyICJib2wgcHJlcnXFoWVuw70uXG4iCisKKyN+IG1zZ2lkICJ3YXMgdGVybWluYXRlZCBieSBhIHNpZ25hbDogJXMuXG4iCisjfiBtc2dzdHIgImJvbCB1a29uxI1lbsO9IHNpZ27DoWxvbTogJXMuXG4iCisKKyN+IG1zZ2lkICIoSXQgbGVmdCBhIGNvcmVkdW1wLilcbiIKKyN+IG1zZ3N0ciAiKEl0IG5lY2hhbCBjb3JlZHVtcC4pXG4iCisKKyN+IG1zZ2lkICJmYWlsZWQgd2l0aCBhbiB1bmtub3duIHdhaXQgcmV0dXJuIGNvZGUgJWQuXG4iCisjfiBtc2dzdHIgInpseWhhbCBzIG5lem7DoW15bSBuw6F2cmF0b3bDvW0ga8OzZG9tIHdhaXQgJWQuXG4iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcnVuICUuMjUwcyBwcm9jZXNzIGAlLjI1MHMnIgorI34gbXNnc3RyICJuaWUgamUgbW/Fvm7DqSBzcHVzdGnFpSDigJ4lLjI1MHPigJwgcHJvY2VzIOKAniUuMjUwc+KAnCIKKworI34gbXNnaWQgImZhaWxlZCBjb25maWciCisjfiBtc2dzdHIgInpseWhhbGEga29uZmlndXLDoWNpYSIKKworI34gbXNnaWQgInVuYWJsZSB0byB3YWl0IGZvciAlLjI1MHMiCisjfiBtc2dzdHIgIm5pZSBqZSBtb8W+bsOpIMSNYWthxaUgbmEgJS4yNTBzIgorCisjfiBtc2dpZCAiZ290IHdyb25nIGNoaWxkJ3Mgc3RhdHVzIC0gYXNrZWQgZm9yICVsZCwgZ290ICVsZCIKKyN+IG1zZ3N0ciAiZG9zdGFsIHNvbSBuZXNwcsOhdm55IHN0YXYgcG90b21rYSAtIMW+aWFkYW7DqSAlbGQsIG9iZHLFvmFuw6kgJWxkIgorCisjfiBtc2dpZCAiUmVjb21tZW5kZWQiCisjfiBtc2dzdHIgIk9kcG9yw7rEjWFuw70iCisKKyN+IG1zZ2lkICJDb250cmliIgorI34gbXNnc3RyICJEb2RhdG/EjW7DvSIKKworI34gbXNnaWQgIlJlYyIKKyN+IG1zZ3N0ciAiRG9wIgorCisjfiBtc2dpZCAiQ3RiIgorI34gbXNnc3RyICJDdGIiCisKKyN+IG1zZ2lkICIiCisjfiAiYmFzZWxpc3Q6OnN0YXJ0ZGlzcGxheSgpIGRvbmUgLi4uXG4iCisjfiAiXG4iCisjfiAiIHhtYXg9JWQsIHltYXg9JWQ7XG4iCisjfiAiXG4iCisjfiAiIHRpdGxlX2hlaWdodD0lZCwgY29saGVhZHNfaGVpZ2h0PSVkLCBsaXN0X2hlaWdodD0lZDtcbiIKKyN+ICIgdGhpc3N0YXRlX2hlaWdodD0lZCwgaW5mb19oZWlnaHQ9JWQsIHdoYXRpbmZvX2hlaWdodD0lZDtcbiIKKyN+ICJcbiIKKyN+ICIgY29saGVhZHNfcm93PSVkLCB0aGlzc3RhdGVfcm93PSVkLCBpbmZvX3Jvdz0lZDtcbiIKKyN+ICIgd2hhdGluZm9fcm93PSVkLCBsaXN0X3Jvdz0lZDtcbiIKKyN+ICJcbiIKKyN+IG1zZ3N0ciAiIgorI34gInrDoWtsYWRuw70gem96bmFtOjpzdGFydGRpc3BsYXkoKSB2eWtvbmFuw6kgLi4uXG4iCisjfiAiXG4iCisjfiAiIHhtYXg9JWQsIHltYXg9JWQ7XG4iCisjfiAiXG4iCisjfiAiIHRpdGxlX2hlaWdodD0lZCwgY29saGVhZHNfaGVpZ2h0PSVkLCBsaXN0X2hlaWdodD0lZDtcbiIKKyN+ICIgdGhpc3N0YXRlX2hlaWdodD0lZCwgaW5mb19oZWlnaHQ9JWQsIHdoYXRpbmZvX2hlaWdodD0lZDtcbiIKKyN+ICJcbiIKKyN+ICIgY29saGVhZHNfcm93PSVkLCB0aGlzc3RhdGVfcm93PSVkLCBpbmZvX3Jvdz0lZDtcbiIKKyN+ICIgd2hhdGluZm9fcm93PSVkLCBsaXN0X3Jvdz0lZDtcbiIKKyN+ICJcbiIKKworI34gbXNnaWQgIltub25lXSIKKyN+IG1zZ3N0ciAiW8W+aWFkbnldIgorCisjfiBtc2dpZCAiZXJyb3IgdW4tY2F0Y2hpbmcgc2lnbmFsICVkOiAlc1xuIgorI34gbXNnc3RyICJjaHliYSAtIG5lemFjaHl0ZW5pZSBzaWduw6FsdSAlZDogJXNcbiIKKworI34gbXNnaWQgInVuYWJsZSB0byBpZ25vcmUgc2lnbmFsICVkIGJlZm9yZSBydW5uaW5nICUuMjUwcyIKKyN+IG1zZ3N0ciAibmllIGplIG1vxb5uw6kgaWdub3JvdmHFpSBzaWduw6FsICVkIHByZWQgc3B1c3RlbsOtbSAlLjI1MHMiCisKKyN+IG1zZ2lkICIobm8gY2xpZW50ZGF0YSkiCisjfiBtc2dzdHIgIijFvmlhZG5lIGtsaWVudHNrw6kgZMOhdGEpIgorCisjfiBtc2dpZCAiPG51bGw+IgorI34gbXNnc3RyICI8bnVsYT4iCisKKyN+IG1zZ2lkICJpbnRlcnJlbGF0aW9uc2hpcHMgYWZmZWN0aW5nICIKKyN+IG1zZ3N0ciAiesOhdmlzbG9zdGkgb3ZwbHl2xYh1asO6Y2UgIgorCisjfiBtc2dpZCAiZGVzY3JpcHRpb24gb2YgIgorI34gbXNnc3RyICJwb3BpcyIKKworI34gbXNnaWQgImRlc2NyaXB0aW9uIgorI34gbXNnc3RyICJwb3BpcyIKKworI34gbXNnaWQgImN1cnJlbnRseSBpbnN0YWxsZWQgY29udHJvbCBpbmZvIgorI34gbXNnc3RyICJtb21lbnTDoWxuZSBuYWluxaF0YWxvdmFuw6kgcmlhZGlhY2UgaW5mb3Jtw6FjaWUiCisKKyN+IG1zZ2lkICJhdmFpbGFibGUgdmVyc2lvbiBvZiBjb250cm9sIGluZm8gZm9yICIKKyN+IG1zZ3N0ciAiZG9zdHVwbsOhIHZlcnppYSBpbmZvcm3DoWNpw60gbyByaWFkZW7DrSBwcmUiCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vc3RhbXAtcG8gYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vc3RhbXAtcG8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTc4OGY3MAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9zdGFtcC1wbwpAQCAtMCwwICsxIEBACit0aW1lc3RhbXAKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9zdi5nbW8gYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vc3YuZ21vCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmE5ODViNTUKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vc3YuZ21vCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9zdi5wbyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby9zdi5wbwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40ZWU4NTczCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL3N2LnBvCkBAIC0wLDAgKzEsMTcyMCBAQAorIyBTd2VkaXNoIHRyYW5zbGF0aW9uIG9mIGRwa2cKKyMgQ29weXJpZ2h0IMKpIDE5OTktMjAxMCBTb2Z0d2FyZSBpbiB0aGUgUHVibGljIEludGVyZXN0CisjIFBldGVyIEtyZWZ0aW5nIDxwZXRlcmtAZGViaWFuLm9yZz4sIDE5OTktMjAxMC4KKyMgRGFuaWVsIE55bGFuZGVyIDxwb0BkYW5pZWxueWxhbmRlci5zZT4sIDIwMDYuCisjCittc2dpZCAiIgorbXNnc3RyICIiCisiUHJvamVjdC1JZC1WZXJzaW9uOiBkc2VsZWN0XG4iCisiUmVwb3J0LU1zZ2lkLUJ1Z3MtVG86IGRlYmlhbi1kcGtnQGxpc3RzLmRlYmlhbi5vcmdcbiIKKyJQT1QtQ3JlYXRpb24tRGF0ZTogMjAxMS0xMC0xNCAwNzoxMSswMjAwXG4iCisiUE8tUmV2aXNpb24tRGF0ZTogMjAxMC0wMy0wOCAxMzozNyswMTAwXG4iCisiTGFzdC1UcmFuc2xhdG9yOiBQZXRlciBLcmVmdGluZyA8cGV0ZXJrQGRlYmlhbi5vcmc+XG4iCisiTGFuZ3VhZ2UtVGVhbTogU3dlZGlzaCA8ZGViaWFuLWwxMG4tc3dlZGlzaEBsaXN0cy5kZWJpYW4ub3JnPlxuIgorIkxhbmd1YWdlOiBzdlxuIgorIk1JTUUtVmVyc2lvbjogMS4wXG4iCisiQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PXV0Zi04XG4iCisiQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdFxuIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjEyNQorbXNnaWQgIlNlYXJjaCBmb3IgPyAiCittc2dzdHIgIlPDtmsgZWZ0ZXI/ICIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxNDcKK21zZ2lkICJFcnJvcjogIgorbXNnc3RyICJGZWw6ICIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxNzgKK21zZ2lkICJIZWxwOiAiCittc2dzdHIgIkhqw6RscDogIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE4NAorbXNnaWQgIlByZXNzID8gZm9yIGhlbHAgbWVudSwgLiBmb3IgbmV4dCB0b3BpYywgPHNwYWNlPiB0byBleGl0IGhlbHAuIgorbXNnc3RyICJUcnljayA/IGbDtnIgaGrDpGxwbWVueW4sIC4gZsO2ciBuw6RzdGEgw6RtbmUsIDxibGFua3N0ZWc+IGzDpG1uYXIgaGrDpGxwZW4uIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE5MQorbXNnaWQgIkhlbHAgaW5mb3JtYXRpb24gaXMgYXZhaWxhYmxlIHVuZGVyIHRoZSBmb2xsb3dpbmcgdG9waWNzOiIKK21zZ3N0ciAiSGrDpGxwaW5mb3JtYXRpb24gZmlubnMgZsO2ciBmw7ZsamFuZGUgw6RtbmVuOiIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxOTkKK21zZ2lkICIiCisiUHJlc3MgYSBrZXkgZnJvbSB0aGUgbGlzdCBhYm92ZSwgPHNwYWNlPiBvciBgcScgdG8gZXhpdCBoZWxwLFxuIgorIiAgb3IgYC4nIChmdWxsIHN0b3ApIHRvIHJlYWQgZWFjaCBoZWxwIHBhZ2UgaW4gdHVybi4gIgorbXNnc3RyICIiCisiVHJ5Y2sgZW4gdGFuZ2VudCBmcsOlbiBsaXN0YW4gb3ZhbiwgPGJsYW5rc3RlZz4sIFwicVwiIGVsbGVyIFwiUVwiIGF2c2x1dGFyICIKKyJoasOkbHBlbixcbiIKKyIgIGVsbGVyIFwiLlwiIChwdW5rdCkgZsO2ciBhdHQgbMOkc2EgaGrDpGxwc2lkb3JuYSBpIHNla3ZlbnMuICIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoyMDUKK21zZ2lkICJlcnJvciByZWFkaW5nIGtleWJvYXJkIGluIGhlbHAiCittc2dzdHIgImZlbCB2aWQgbMOkc25pbmcgYXYgdGFuZ2VudGJvcmRldCBpIGhqw6RscGZ1bmt0aW9uZW4iCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6NTcKK21zZ2lkICJpb2N0bChUSU9DR1dJTlNaKSBmYWlsZWQiCittc2dzdHIgImlvY3RsKFRJT0NHV0lOU1opIG1pc3NseWNrYWRlcyIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo2MAorbXNnaWQgImRvdXBkYXRlIGluIFNJR1dJTkNIIGhhbmRsZXIgZmFpbGVkIgorbXNnc3RyICJkb3VwZGF0ZSBtaXNzbHlja2FkZXMgaSBoYW50ZXJhcmUgZsO2ciBmw7Zuc3RlcsOkbmRyaW5nIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjY3Cittc2dpZCAiZmFpbGVkIHRvIHJlc3RvcmUgb2xkIFNJR1dJTkNIIHNpZ2FjdCIKK21zZ3N0ciAia3VuZGUgaW50ZSDDpXRlcnN0w6RsbGEgdGlkaWdhcmUgZsO2bnN0ZXJ1cHBkYXRlcmluZ3NoYW50ZXJhcmUiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6NjkKK21zZ2lkICJmYWlsZWQgdG8gcmVzdG9yZSBvbGQgc2lnbmFsIG1hc2siCittc2dzdHIgImt1bmRlIGludGUgw6V0ZXJzdMOkbGxhIGdhbW1hbCBzaWduYWxtYXNrIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjc5Cittc2dpZCAiZmFpbGVkIHRvIGdldCBvbGQgc2lnbmFsIG1hc2siCittc2dzdHIgImt1bmRlIGludGUgaMOkbXRhIGdhbW1hbCBzaWduYWxtYXNrIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjgwCittc2dpZCAiZmFpbGVkIHRvIGdldCBvbGQgU0lHV0lOQ0ggc2lnYWN0IgorbXNnc3RyICJrdW5kZSBpbnRlIGjDpG10YSB0aWRpZ2FyZSBmw7Zuc3RlcnVwcGRhdGVyaW5nc2hhbnRlcmFyZSIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo4NAorbXNnaWQgImZhaWxlZCB0byBibG9jayBTSUdXSU5DSCIKK21zZ3N0ciAia3VuZGUgaW50ZSBibG9ja2VyYSBmw7Zuc3RlcsOkbmRyaW5nIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjg5Cittc2dpZCAiZmFpbGVkIHRvIHNldCBuZXcgU0lHV0lOQ0ggc2lnYWN0IgorbXNnc3RyICJrdW5kZSBpbnRlIHPDpHR0YSBueSBmw7Zuc3RlcnVwcGRhdGVyaW5nc2hhbnRlcmFyZSIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxMjYKK21zZ2lkICJmYWlsZWQgdG8gYWxsb2NhdGUgY29sb3VyIHBhaXIiCittc2dzdHIgImt1bmRlIGFsbG9rZXJhIGbDpHJncGFyIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE2NworbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgdGl0bGUgd2luZG93IgorbXNnc3RyICJrdW5kZSBpbnRlIHNrYXBhIHRpdGVsZsO2bnN0ZXIiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTcxCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSB3aGF0aW5mbyB3aW5kb3ciCittc2dzdHIgImt1bmRlIGludGUgc2thcGEgaW5mb3JtYXRpb25mw7Zuc3RlciIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxNzUKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGJhc2VsaXN0IHBhZCIKK21zZ3N0ciAia3VuZGUgaW50ZSBza2FwYSBiYXNsaXN0ZWZsaWsiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTc4Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBoZWFkaW5nIHBhZCIKK21zZ3N0ciAia3VuZGUgaW50ZSBza2FwYSBydWJyaWtmbGlrIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE4MgorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgdGhpc3N0YXRlIHBhZCIKK21zZ3N0ciAia3VuZGUgaW50ZSBza2FwYSBcImRldHRhIHRpbGxzdMOlbmRcIi1mbGlrIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE4NgorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgaW5mbyBwYWQiCittc2dzdHIgImt1bmRlIGludGUgc2thcGEgaW5mb3JtYXRpb25zZmxpayIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxOTEKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHF1ZXJ5IHdpbmRvdyIKK21zZ3N0ciAia3VuZGUgaW50ZSBza2FwYSBmcsOlZ2Vmw7Zuc3RlciIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoyNTUKK21zZ2lkICJLZXliaW5kaW5ncyIKK21zZ3N0ciAiVGFuZ2VudGJpbmRuaW5nYXIiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MzAzCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgLS0gJWQlJSwgcHJlc3MgIgorbXNnc3RyICIgIC0tICVkJSUsIHRyeWNrICIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzozMDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgZm9yIG1vcmUiCittc2dzdHIgIiVzIGbDtnIgbWVyIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjMxMAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyB0byBnbyBiYWNrIgorbXNnc3RyICIlcyDDpXRlcmfDpXIiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6NzgKK21zZ2lkICJbbm90IGJvdW5kXSIKK21zZ3N0ciAiW2VqIGZ1bm5ldF0iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiW3VuazogJWRdIgorbXNnc3RyICJbb2vDpG5kOiAlZF0iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTM5Cittc2dpZCAiU2Nyb2xsIG9ud2FyZHMgdGhyb3VnaCBoZWxwL2luZm9ybWF0aW9uIgorbXNnc3RyICJSdWxsYSBmcmFtw6V0IGdlbm9tIGhqw6RscC9pbmZvcm1hdGlvbiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDAKK21zZ2lkICJTY3JvbGwgYmFja3dhcmRzIHRocm91Z2ggaGVscC9pbmZvcm1hdGlvbiIKK21zZ3N0ciAiUnVsbGEgYmFrw6V0IGdlbm9tIGhqw6RscC9pbmZvcm1hdGlvbiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDEKK21zZ2lkICJNb3ZlIHVwIgorbXNnc3RyICJHw6UgdXBwIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0MgorbXNnaWQgIk1vdmUgZG93biIKK21zZ3N0ciAiR8OlIG5lciIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDMKK21zZ2lkICJHbyB0byB0b3Agb2YgbGlzdCIKK21zZ3N0ciAiR8OlIHRpbGwgbGlzdGFucyBiw7ZyamFuIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0NAorbXNnaWQgIkdvIHRvIGVuZCBvZiBsaXN0IgorbXNnc3RyICJHw6UgdGlsbCBsaXN0YW5zIHNsdXQiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ1Cittc2dpZCAiUmVxdWVzdCBoZWxwIChjeWNsZSB0aHJvdWdoIGhlbHAgc2NyZWVucykiCittc2dzdHIgIkJlIG9tIGhqw6RscCAoZ8OlIGdlbm9tIGhqw6RscHNrw6RybWFybmEpIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0NgorbXNnaWQgIkN5Y2xlIHRocm91Z2ggaW5mb3JtYXRpb24gZGlzcGxheXMiCittc2dzdHIgIkfDpSBnZW5vbSBpbmZvcm1hdGlvbnN2aXNuaW5nYXJuYSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDcKK21zZ2lkICJSZWRyYXcgZGlzcGxheSIKK21zZ3N0ciAiUml0YSBvbSBiaWxkZW4iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ4Cittc2dpZCAiU2Nyb2xsIG9ud2FyZHMgdGhyb3VnaCBsaXN0IGJ5IDEgbGluZSIKK21zZ3N0ciAiUnVsbGEgZnJhbSBsaXN0YW4gZW4gcmFkIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0OQorbXNnaWQgIlNjcm9sbCBiYWNrd2FyZHMgdGhyb3VnaCBsaXN0IGJ5IDEgbGluZSIKK21zZ3N0ciAiUnVsbGEgdGlsbGJha2EgbGlzdGFuIGVuIHJhZCIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTAKK21zZ2lkICJTY3JvbGwgb253YXJkcyB0aHJvdWdoIGhlbHAvaW5mb3JtYXRpb24gYnkgMSBsaW5lIgorbXNnc3RyICJSdWxsYWZyYW0gaGrDpGxwZW4vaW5mb3JtYXRpb25lbiBlbiByYWQiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTUxCittc2dpZCAiU2Nyb2xsIGJhY2t3YXJkcyB0aHJvdWdoIGhlbHAvaW5mb3JtYXRpb24gYnkgMSBsaW5lIgorbXNnc3RyICJSdWxsYSB0aWxsYmFrYSBoasOkbHBlbi9pbmZvcm1hdGlvbmVuIGVuIHJhZCIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTIKK21zZ2lkICJTY3JvbGwgb253YXJkcyB0aHJvdWdoIGxpc3QiCittc2dzdHIgIlJ1bGxhIGZyYW3DpXQgZ2Vub20gbGlzdGFuIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1MworbXNnaWQgIlNjcm9sbCBiYWNrd2FyZHMgdGhyb3VnaCBsaXN0IgorbXNnc3RyICJSdWxsYSBiYWvDpXQgZ2Vub20gbGlzdGFuIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1NgorbXNnaWQgIk1hcmsgcGFja2FnZShzKSBmb3IgaW5zdGFsbGF0aW9uIgorbXNnc3RyICJNYXJrZXJhIHBha2V0IGbDtnIgaW5zdGFsbGF0aW9uIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1NworbXNnaWQgIk1hcmsgcGFja2FnZShzKSBmb3IgZGVpbnN0YWxsYXRpb24iCittc2dzdHIgIk1hcmtlcmEgcGFrZXQgZsO2ciBhdmluc3RhbGxhdGlvbiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTgKK21zZ2lkICJNYXJrIHBhY2thZ2UocykgZm9yIGRlaW5zdGFsbCBhbmQgcHVyZ2UiCittc2dzdHIgIk1hcmtlcmEgcGFrZXQgZsO2ciBhdmluc3RhbGxhdGlvbiBvY2ggcmFkZXJpbmciCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTU5Cittc2dpZCAiTWFrZSBoaWdobGlnaHQgbW9yZSBzcGVjaWZpYyIKK21zZ3N0ciAiR8O2ciBtYXJrZXJpbmcgbWVyIHNwZWNpZmlrIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2MAorbXNnaWQgIk1ha2UgaGlnaGxpZ2h0IGxlc3Mgc3BlY2lmaWMiCittc2dzdHIgIkfDtnIgbWFya2VyaW5nIG1pbmRyZSBzcGVjaWZpayIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjEKK21zZ2lkICJTZWFyY2ggZm9yIGEgcGFja2FnZSB3aG9zZSBuYW1lIGNvbnRhaW5zIGEgc3RyaW5nIgorbXNnc3RyICJTw7ZrIGVmdGVyIHBha2V0IHZhcnMgbmFtbiBpbm5laMOlbGxlciBlbiBzdHLDpG5nIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2MgorbXNnaWQgIlJlcGVhdCBsYXN0IHNlYXJjaC4iCittc2dzdHIgIlJlcGV0ZXJhIHNlbmFzdGUgc8O2a25pbmcuIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2MworbXNnaWQgIlN3YXAgc29ydCBvcmRlciBwcmlvcml0eS9zZWN0aW9uIgorbXNnc3RyICJCeXQgc29ydGVyaW5nc29yZG5pbmcgcHJpb3JpdGV0L3Nla3Rpb24iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY0Cittc2dpZCAiUXVpdCwgY29uZmlybWluZywgYW5kIGNoZWNraW5nIGRlcGVuZGVuY2llcyIKK21zZ3N0ciAiQXZzbHV0YSBiZWtyw6RmdGFuZGUgb2NoIGtvbnRyb2xsZXJhIGJlcm9lbmRlbiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjUKK21zZ2lkICJRdWl0LCBjb25maXJtaW5nIHdpdGhvdXQgY2hlY2siCittc2dzdHIgIkF2c2x1dGEgYmVrcsOkZnRhbmRlIHV0YW4ga29udHJvbGwiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY2Cittc2dpZCAiUXVpdCwgcmVqZWN0aW5nIGNvbmZsaWN0L2RlcGVuZGVuY3kgc3VnZ2VzdGlvbnMiCittc2dzdHIgIkF2c2x1dGEgb2NoIHN0cnVudGEgaSBmw7Zyc2xhZ2VuIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2NworbXNnaWQgIkFib3J0IC0gcXVpdCB3aXRob3V0IG1ha2luZyBjaGFuZ2VzIgorbXNnc3RyICJBdmJyeXQgLSBzbHV0YSB1dGFuIGF0dCDDpG5kcmEiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY4Cittc2dpZCAiUmV2ZXJ0IHRvIG9sZCBzdGF0ZSBmb3IgYWxsIHBhY2thZ2VzIgorbXNnc3RyICLDhXRlcmfDpSB0aWxsIHRpZGlnYXJlIHRpbGxzdMOlbmQgZsO2ciBhbGxhIHBha2V0IgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2OQorbXNnaWQgIlJldmVydCB0byBzdWdnZXN0ZWQgc3RhdGUgZm9yIGFsbCBwYWNrYWdlcyIKK21zZ3N0ciAiw4V0ZXJnw6UgdGlsbCBmw7ZyZXNsYWduYSB0aWxsc3TDpW5kIGbDtnIgYWxsYSBwYWtldCIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNzAKK21zZ2lkICJSZXZlcnQgdG8gZGlyZWN0bHkgcmVxdWVzdGVkIHN0YXRlIGZvciBhbGwgcGFja2FnZXMiCittc2dzdHIgIsOFdGVyZ8OlIHRpbGwgZGlyZWt0IGbDtnJlc2xhZ25hIHRpbGxzdMOlbmQgZsO2ciBhbGxhIHBha2V0IgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE3MQorbXNnaWQgIlJldmVydCB0byBjdXJyZW50bHkgaW5zdGFsbGVkIHN0YXRlIGZvciBhbGwgcGFja2FnZXMiCittc2dzdHIgIsOFdGVyZ8OlIHRpbGwgbnV2YXJhbmRlIGluc3RhbGxlcmF0IHRpbGxzdMOlbmQgZsO2ciBhbGxhIHBha2V0IgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE3NAorbXNnaWQgIlNlbGVjdCBjdXJyZW50bHktaGlnaGxpZ2h0ZWQgYWNjZXNzIG1ldGhvZCIKK21zZ3N0ciAiVsOkbGogbnUgbWFya2VyYWQgw6V0a29tc3RtZXRvZCIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNzUKK21zZ2lkICJRdWl0IHdpdGhvdXQgY2hhbmdpbmcgc2VsZWN0ZWQgYWNjZXNzIG1ldGhvZCIKK21zZ3N0ciAiQXZzbHV0YSB1dGFuIGF0dCDDpG5kcmEgdmFsZCDDpXRrb21zdG1ldG9kIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjI5Cittc2dpZCAiS2V5c3Ryb2tlcyIKK21zZ3N0ciAiVGFuZ2VudGVyIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjI5Cittc2dpZCAiIgorIk1vdGlvbiBrZXlzOiBOZXh0L1ByZXZpb3VzLCBUb3AvRW5kLCBVcC9Eb3duLCBCYWNrd2FyZHMvRm9yd2FyZHM6XG4iCisiICBqLCBEb3duLWFycm93ICAgICAgICAgaywgVXAtYXJyb3cgICAgICAgICAgICAgbW92ZSBoaWdobGlnaHRcbiIKKyIgIE4sIFBhZ2UtZG93biwgU3BhY2UgICBQLCBQYWdlLXVwLCBCYWNrc3BhY2UgICBzY3JvbGwgbGlzdCBieSAxIHBhZ2VcbiIKKyIgIF5uICAgICAgICAgICAgICAgICAgICBecCAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgbGlzdCBieSAxIGxpbmVcbiIKKyIgIHQsIEhvbWUgICAgICAgICAgICAgICBlLCBFbmQgICAgICAgICAgICAgICAgICBqdW1wIHRvIHRvcC9lbmQgb2YgbGlzdFxuIgorIiAgdSAgICAgICAgICAgICAgICAgICAgIGQgICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIGJ5IDEgcGFnZVxuIgorIiAgXnUgICAgICAgICAgICAgICAgICAgIF5kICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIGJ5IDEgbGluZVxuIgorIiAgQiwgTGVmdC1hcnJvdyAgICAgICAgIEYsIFJpZ2h0LWFycm93ICAgICAgICAgIHBhbiBkaXNwbGF5IGJ5IDEvMyBzY3JlZW5cbiIKKyIgIF5iICAgICAgICAgICAgICAgICAgICBeZiAgICAgICAgICAgICAgICAgICAgICBwYW4gZGlzcGxheSBieSAxIGNoYXJhY3RlclxuIgorIlxuIgorIk1hcmsgcGFja2FnZXMgZm9yIGxhdGVyIHByb2Nlc3Npbmc6XG4iCisiICssIEluc2VydCAgaW5zdGFsbCBvciB1cGdyYWRlICAgICAgPSwgSCAgaG9sZCBpbiBwcmVzZW50IHN0YXRlXG4iCisiIC0sIERlbGV0ZSAgcmVtb3ZlICAgICAgICAgICAgICAgICAgOiwgRyAgdW5ob2xkOiB1cGdyYWRlIG9yIGxlYXZlICIKKyJ1bmluc3RhbGxlZFxuIgorIiBfICAgICAgICAgIHJlbW92ZSAmIHB1cmdlIGNvbmZpZ1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1pc2NlbGxhbmVvdXM6XG4iCisiUXVpdCwgZXhpdCwgb3ZlcndyaXRlIChub3RlIGNhcGl0YWxzISk6ICAgICAgID8sIEYxIHJlcXVlc3QgaGVscCAoYWxzbyAiCisiSGVscClcbiIKKyIgUmV0dXJuICBDb25maXJtLCBxdWl0IChjaGVjayBkZXBlbmRlbmNpZXMpICAgaSwgSSAgdG9nZ2xlL2N5Y2xlIGluZm8gIgorImRpc3BsYXlzXG4iCisiICAgUSAgICAgQ29uZmlybSwgcXVpdCAob3ZlcnJpZGUgZGVwLnMpICAgICAgIG8sIE8gIGN5Y2xlIHRocm91Z2ggc29ydCAiCisib3B0aW9uc1xuIgorIiBYLCBFc2MgIGVYaXQsIGFiYW5kb25pbmcgYW55IGNoYW5nZXMgbWFkZSAgICB2LCBWICBjaGFuZ2Ugc3RhdHVzIGRpc3BsYXkgIgorIm9wdHNcbiIKKyIgICBSICAgICBSZXZlcnQgdG8gc3RhdGUgYmVmb3JlIHRoaXMgbGlzdCAgICAgIF5sICAgcmVkcmF3IGRpc3BsYXlcbiIKKyIgICBVICAgICBzZXQgYWxsIHRvIHNVZ2dlc3RlZCBzdGF0ZSAgICAgICAgICAgICAvICAgc2VhcmNoIChSZXR1cm4gdG8gIgorImNhbmNlbClcbiIKKyIgICBEICAgICBzZXQgYWxsIHRvIERpcmVjdGx5IHJlcXVlc3RlZCBzdGF0ZSAgbiwgXFwgIHJlcGVhdCBsYXN0IHNlYXJjaFxuIgorbXNnc3RyICIiCisiUsO2cmVsc2V0YW5nZW50ZXI6IE7DpHN0YS9Gw7ZyZWfDpWVuZGUsIELDtnJqYW4vU2x1dCwgVXBwL05lciwgRnJhbcOldC9CYWvDpXQ6XG4iCisiICBqLCBOZWTDpXRwaWwgICAgICAgICAgIGssIFVwcMOldHBpbCAgICAgICAgICAgICBmbHl0dGEgbWFya2VyaW5nc3JhZFxuIgorIiAgTiwgUGdEbiwgYmxhbmtzdGVnICAgIFAsIFBnVXAsIGJhY2tzdGVnICAgICAgIHJ1bGxhIGxpc3RhbiBlbiBzaWRhXG4iCisiICBebiAgICAgICAgICAgICAgICAgICAgXnAgICAgICAgICAgICAgICAgICAgICAgcnVsbGEgbGlzdGFuIGVuIHJhZFxuIgorIiAgdCwgSG9tZSAgICAgICAgICAgICAgIGUsIEVuZCAgICAgICAgICAgICAgICAgIGLDtnJqYW4vc2x1dGV0IGF2IGxpc3RhblxuIgorIiAgdSAgICAgICAgICAgICAgICAgICAgIGQgICAgICAgICAgICAgICAgICAgICAgIHJ1bGxhIGluZm90ZXh0IGVuIHNpZGFcbiIKKyIgIF51ICAgICAgICAgICAgICAgICAgICBeZCAgICAgICAgICAgICAgICAgICAgICBydWxsYSBpbmZvdGV4dCBlbiByYWRcbiIKKyIgIEIsIHbDpG5zdGVycGlsICAgICAgICAgRiwgaMO2Z2VycGlsICAgICAgICAgICAgIHBhbm9yZXJhIHZpc25pbmcgMS8zIHNrw6RybVxuIgorIiAgXmIgICAgICAgICAgICAgICAgICAgIF5mICAgICAgICAgICAgICAgICAgICAgIHBhbm9yZXJhIHZpc25pbmcgZXR0IHRlY2tlblxuIgorIlxuIgorIk1hcmtlcmEgcGFrZXQgZsO2ciBzZW5hcmUgaGFudGVyaW5nOlxuIgorIiArLCBJbnNlcnQgIGluc3RhbGxlcmEvdXBwZ3JhZGVyYSAgID0sIEggIGjDpWxsIGkgbnV2YXJhbmRlIHRpbGxzdMOlbmRcbiIKKyIgLSwgRGVsZXRlICB0YSBib3J0ICAgICAgICAgICAgICAgICA6LCBHICBzdMOkbmcgYXYgXCJow6VsbFwiOlxuIgorIiBfICAgICAgICAgIHRhIGJvcnQgJiByYWRlcmEga29uZmlnLiAgICAgICAgICAgIHVwcGdyYWRlcmEvbMOkbW5hICIKKyJvaW5zdGFsbGVyYXRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBEaXZlcnNlOlxuIgorIkF2c2x1dGEsIGzDpG1uYSwgc2tyaXYgw7Z2ZXIgKHZlcnNhbGVyISk6ICAgICAgID8sIEYxIGJlZ8OkciBoasOkbHAgKMOkdmVuIEhlbHApXG4iCisiIEVudGVyICAgQmVrcsOkZnRhLCBsw6RtbmEgKHVuZGVyc8O2ayBiZXJvZW5kZW4pIGksIEkgIHbDpHhsYS9jeWtsYSAiCisiaW5mb3Zpc25pbmdhclxuIgorIiAgIFEgICAgIEJla3LDpGZ0YSwgbMOkbW5hIChpZ25vcmVyYSBiZXJvZW5kZW4pIG8sIE8gIGN5a2xhIHNvcnRlcmluZ3N2YWxcbiIKKyIgWCwgRXNjICBBdnNsdXRhIHV0YW4gYXR0IGdlbm9tZsO2cmEgw6RuZHJpbmdhciB2LCBWICDDpG5kcmEgc3RhdHVzdmlzbmluZ3N2YWxcbiIKKyIgICBSICAgICDDhXRlcmfDpSB0aWxsIGbDtnJlZ8OlZW5kZSB0aWxsc3TDpW5kICAgICAgXmwgICByaXRhIG9tIHNrw6RybWVuXG4iCisiICAgVSAgICAgU3TDpGxsIHRpbGwgZsO2cmVzbGFnZXQgdGlsbHN0w6VuZCAgICAgICAgLyAgIHPDtmsgKEVudGVyIGF2YnJ5dGVyKVxuIgorIiAgIEQgICAgIFPDpHR0IGFsbGEgdGlsbCDDtm5za2F0IHRpbGxzdMOlbmQgICAgICBuLCBcXCAgcmVwZXRlcmEgc2VuYXN0ZSAiCisic8O2a25pbmdlblxuIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjU1Cittc2dpZCAiSW50cm9kdWN0aW9uIHRvIHBhY2thZ2Ugc2VsZWN0aW9ucyIKK21zZ3N0ciAiSW50cm9kdWt0aW9uIHRpbGwgcGFrZXR2YWxlbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo1NQorbXNnaWQgIiIKKyJXZWxjb21lIHRvIGRzZWxlY3QncyBtYWluIHBhY2thZ2UgbGlzdGluZy5cbiIKKyJcbiIKKyJZb3Ugd2lsbCBiZSBwcmVzZW50ZWQgd2l0aCBhIGxpc3Qgb2YgcGFja2FnZXMgd2hpY2ggYXJlIGluc3RhbGxlZCBvciAiCisiYXZhaWxhYmxlXG4iCisiZm9yIGluc3RhbGxhdGlvbi4gIFlvdSBjYW4gbmF2aWdhdGUgYXJvdW5kIHRoZSBsaXN0IHVzaW5nIHRoZSBjdXJzb3Iga2V5cyxcbiIKKyJtYXJrIHBhY2thZ2VzIGZvciBpbnN0YWxsYXRpb24gKHVzaW5nIGArJykgb3IgZGVpbnN0YWxsYXRpb24gKHVzaW5nIGAtJykuXG4iCisiUGFja2FnZXMgY2FuIGJlIG1hcmtlZCBlaXRoZXIgc2luZ2x5IG9yIGluIGdyb3VwczsgaW5pdGlhbGx5IHlvdSB3aWxsIHNlZSAiCisidGhhdFxuIgorInRoZSBsaW5lIGBBbGwgcGFja2FnZXMnIGlzIHNlbGVjdGVkLiAgYCsnLCBgLScgYW5kIHNvIG9uIHdpbGwgYWZmZWN0IGFsbCAiCisidGhlXG4iCisicGFja2FnZXMgZGVzY3JpYmVkIGJ5IHRoZSBoaWdobGlnaHRlZCBsaW5lLlxuIgorIlxuIgorIlNvbWUgb2YgeW91ciBjaG9pY2VzIHdpbGwgY2F1c2UgY29uZmxpY3RzIG9yIGRlcGVuZGVuY3kgcHJvYmxlbXM7IHlvdSB3aWxsICIKKyJiZVxuIgorImdpdmVuIGEgc3ViLWxpc3Qgb2YgdGhlIHJlbGV2YW50IHBhY2thZ2VzLCBzbyB0aGF0IHlvdSBjYW4gc29sdmUgdGhlICIKKyJwcm9ibGVtcy5cbiIKKyJcbiIKKyJZb3Ugc2hvdWxkIHJlYWQgdGhlIGxpc3Qgb2Yga2V5cyBhbmQgdGhlIGV4cGxhbmF0aW9ucyBvZiB0aGUgZGlzcGxheS5cbiIKKyJNdWNoIG9uLWxpbmUgaGVscCBpcyBhdmFpbGFibGUsIHBsZWFzZSBtYWtlIHVzZSBvZiBpdCAtIHByZXNzIGA/JyBhdFxuIgorImFueSB0aW1lIGZvciBoZWxwLlxuIgorIlxuIgorIldoZW4geW91IGhhdmUgZmluaXNoZWQgc2VsZWN0aW5nIHBhY2thZ2VzLCBwcmVzcyA8ZW50ZXI+IHRvIGNvbmZpcm0gIgorImNoYW5nZXMsXG4iCisib3IgYFgnIHRvIHF1aXQgd2l0aG91dCBzYXZpbmcgY2hhbmdlcy4gQSBmaW5hbCBjaGVjayBvbiBjb25mbGljdHMgYW5kXG4iCisiZGVwZW5kZW5jaWVzIHdpbGwgYmUgZG9uZSAtIGhlcmUgdG9vIHlvdSBtYXkgc2VlIGEgc3VibGlzdC5cbiIKKyJcbiIKKyJQcmVzcyA8c3BhY2U+IHRvIGxlYXZlIGhlbHAgYW5kIGVudGVyIHRoZSBsaXN0IG5vdy5cbiIKK21zZ3N0ciAiIgorIlbDpGxrb21lbiB0aWxsIGRzZWxlY3RzIGh1dnVkcGFrZXRsaXN0YS5cbiIKKyJcbiIKKyJEdSBrb21tZXIgYXR0IHZpc2FzIGVuIGxpc3RhIMO2dmVyIHBha2V0IHNvbSDDpHIgaW5zdGFsbGVyYWRlIGVsbGVyICIKKyJ0aWxsZ8OkbmdsaWdhXG4iCisiZsO2ciBpbnN0YWxsYXRpb24uIER1IGthbiBuYXZpZ2VyYSBpIGxpc3RhbiBnZW5vbSBhdHQgYW52w6RuZGEgIgorInBpbHRhbmdlbnRlcm5hLFxuIgorIm1hcmtlcmEgcGFrZXQgZsO2ciBpbnN0YWxsYXRpb24gKG1lZCBcIitcIikgZWxsZXIgYXZpbnN0YWxsYXRpb24gKG1lZCBcIi0iCisiXCIpLlxuIgorIlBha2V0IGthbiBtYXJrZXJhcyBhbnRpbmdlbiBzasOkbHZhIGVsbGVyIGkgZ3J1cHBlci4gVGlsbCBhdHQgYsO2cmphIG1lZCAiCisia29tbWVyXG4iCisiZHUgYXR0IHNlIGF0dCByYWRlbiBcIkFsbGEgcGFrZXRcIiDDpHIgdmFsZC4gXCIrXCIsIFwiLVwiIG9zdi4ga29tbWVyIGF0dCAiCisicMOldmVya2FcbiIKKyJhbGxhIHBha2V0IHNvbSBiZXNrcml2cyBhdiBkZW4gbWFya2VyYWRlIHJhZGVuLlxuIgorIlZpc3NhIGF2IGRpbmEgdmFsIGtvbW1lciBhdHQgb3JzYWthIGtvbmZsaWt0ZXIgZWxsZXIgYmVyb2VuZGVwcm9ibGVtLiBEdSAiCisia29tbWVyXG4iCisiZMOlIGF0dCBnZXMgZW4gZGVsbGlzdGEgbWVkIHJlbGV2YW50YSBwYWtldCwgc8OlIGF0dCBkdSBrYW4gbMO2c2EgcHJvYmxlbWVuLlxuIgorIlxuIgorIkR1IGLDtnIgbMOkc2EgbGlzdGFuIMO2dmVyIHRhbmdlbnRlciBvY2ggZsO2cmtsYXJpbmdlbiBhdiB2aXNuaW5nZW4uXG4iCisiRGV0IGZpbm5zIG15Y2tldCBkaXJla3RoasOkbHAgYXR0IHRpbGxnw6UsIGFudsOkbmQgZGVuIC0gdHJ5Y2sgXCI/XCIgbsOkciBzb21cbiIKKyJoZWxzdCBmw7ZyIGhqw6RscC5cbiIKKyJcbiIKKyJOw6RyIGR1IMOkciBmw6RyZGlnIG1lZCBkaW5hIHZhbCB0cnlja2VyIGR1IDxFbnRlcj4gZsO2ciBhdHQgYmVrcsOkZnRhIGRpbmEgdmFsLFxuIgorImVsbGVyIFwiWFwiIGbDtnIgYXR0IGF2c2x1dGEgdXRhbiBhdHQgc3BhcmEuIEVuIHNpc3RhIGtvbnRyb2xsIGF2IGtvbmZsaWt0ZXJcbiIKKyJvY2ggYmVyb2VuZGVuIGtvbW1lciBhdHQgZ8O2cmFzLCBvY2ggw6R2ZW4gaMOkciBrYW4gZHUga29tbWEgYXR0IHNlIGVuICIKKyJkZWxsaXN0YS5cbiIKKyJcbiIKKyJUcnljayA8QmxhbmtzdGVnPiBmw7ZyIGF0dCBsw6RtbmEgaGrDpGxwZW4gb2NoIGfDpSB0aWxsIGxpc3RhbiBudS5cbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo4MAorbXNnaWQgIkludHJvZHVjdGlvbiB0byByZWFkLW9ubHkgcGFja2FnZSBsaXN0IGJyb3dzZXIiCittc2dzdHIgIkludHJvZHVrdGlvbiB0aWxsIGRlbiBza3JpdnNreWRkYWRlIHBha2V0bGlzdGVibMOkZGRyYXJlbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo4MAorbXNnaWQgIiIKKyJXZWxjb21lIHRvIGRzZWxlY3QncyBtYWluIHBhY2thZ2UgbGlzdGluZy5cbiIKKyJcbiIKKyJZb3Ugd2lsbCBiZSBwcmVzZW50ZWQgd2l0aCBhIGxpc3Qgb2YgcGFja2FnZXMgd2hpY2ggYXJlIGluc3RhbGxlZCBvciAiCisiYXZhaWxhYmxlXG4iCisiZm9yIGluc3RhbGxhdGlvbi4gIFNpbmNlIHlvdSBkbyBub3QgaGF2ZSB0aGUgcHJpdmlsZWdlIG5lY2Vzc2FyeSB0byB1cGRhdGVcbiIKKyJwYWNrYWdlIHN0YXRlcywgeW91IGFyZSBpbiBhIHJlYWQtb25seSBtb2RlLiAgWW91IGNhbiBuYXZpZ2F0ZSBhcm91bmQgdGhlXG4iCisibGlzdCB1c2luZyB0aGUgY3Vyc29yIGtleXMgKHBsZWFzZSBzZWUgdGhlIGBLZXlzdHJva2VzJyBoZWxwIHNjcmVlbiksICIKKyJvYnNlcnZlXG4iCisidGhlIHN0YXR1cyBvZiB0aGUgcGFja2FnZXMgYW5kIHJlYWQgaW5mb3JtYXRpb24gYWJvdXQgdGhlbS5cbiIKKyJcbiIKKyJZb3Ugc2hvdWxkIHJlYWQgdGhlIGxpc3Qgb2Yga2V5cyBhbmQgdGhlIGV4cGxhbmF0aW9ucyBvZiB0aGUgZGlzcGxheS5cbiIKKyJNdWNoIG9uLWxpbmUgaGVscCBpcyBhdmFpbGFibGUsIHBsZWFzZSBtYWtlIHVzZSBvZiBpdCAtIHByZXNzIGA/JyBhdFxuIgorImFueSB0aW1lIGZvciBoZWxwLlxuIgorIlxuIgorIldoZW4geW91IGhhdmUgZmluaXNoZWQgYnJvd3NpbmcsIHByZXNzIGBRJyBvciA8ZW50ZXI+IHRvIHF1aXQuXG4iCisiXG4iCisiUHJlc3MgPHNwYWNlPiB0byBsZWF2ZSBoZWxwIGFuZCBlbnRlciB0aGUgbGlzdCBub3cuXG4iCittc2dzdHIgIiIKKyJWw6Rsa29tZW4gdGlsbCBkc2VsZWN0cyBodXZ1ZHBha2V0bGlzdGEuXG4iCisiXG4iCisiRHUga29tbWVyIGF0dCBmw6Ugc2UgZW4gbGlzdGEgw7Z2ZXIgcGFrZXQgc29tIMOkciBpbnN0YWxsZXJhZGUgZWxsZXIgIgorInRpbGxnw6RuZ2xpZ2FcbiIKKyJmw7ZyIGluc3RhbGxhdGlvbi4gRWZ0ZXJzb20gZHUgaW50ZSBoYXIgdGlsbHLDpGNrbGlnIGJlaMO2cmlnaGV0IGbDtnIgYXR0XG4iCisidXBwZGF0ZXJhIGluZm9ybWF0aW9uZW4gw6RyIGR1IGkgc2tyaXZza3lkZGF0IGzDpGdlLiBEdSBrYW4gbmF2aWdlcmEgaSBsaXN0YW5cbiIKKyJtZWQgcGlsdGFuZ2VudGVybmEgKHNlIGhqw6RscHNrw6RybWVuIFwiVGFuZ2VudGVyXCIpIG9jaCBzZSBww6UgcGFrZXRlbnMgIgorInN0YXR1c1xuIgorInNhbXQgbMOkc2EgaW5mb3JtYXRpb24gb20gZGVtLlxuIgorIlxuIgorIkR1IGLDtnIgbMOkc2EgbGlzdGFuIMO2dmVyIHRhbmdlbnRlciBvY2ggZsO2cmtsYXJpbmdlbiBhdiB2aXNuaW5nZW4uXG4iCisiRGV0IGZpbm5zIG15Y2tldCBkaXJla3RoasOkbHAgYXR0IHRpbGxnw6UsIGFudsOkbmQgZGVuIC0gdHJ5Y2sgXCI/XCIgbsOkciBzb21cbiIKKyJoZWxzdCBmw7ZyIGhqw6RscC5cbiIKKyJcbiIKKyJOw6RyIGR1IHRpdHRhdCBmw6RyZGlndCB0cnlja2VyIGR1IFwiUVwiIGVsbGVyIDxFbnRlcj4gZsO2ciBhdHQgYXZzbHV0YS5cbiIKKyJcbiIKKyJUcnljayA8QmxhbmtzdGVnPiBmw7ZyIGF0dCBsw6RtbmEgaGrDpGxwZW4gb2NoIGfDpSB0aWxsIGxpc3RhbiBudS5cbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo5OQorbXNnaWQgIkludHJvZHVjdGlvbiB0byBjb25mbGljdC9kZXBlbmRlbmN5IHJlc29sdXRpb24gc3ViLWxpc3QiCittc2dzdHIgIkludHJvZHVrdGlvbiB0aWxsIGtvbmZsaWt0LS9iZXJvZW5kZWhhbnRlcmluZ3N1bmRlcmxpc3RhbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo5OQorbXNnaWQgIiIKKyJEZXBlbmRlbmN5L2NvbmZsaWN0IHJlc29sdXRpb24gLSBpbnRyb2R1Y3Rpb24uXG4iCisiXG4iCisiT25lIG9yIG1vcmUgb2YgeW91ciBjaG9pY2VzIGhhdmUgcmFpc2VkIGEgY29uZmxpY3Qgb3IgZGVwZW5kZW5jeSBwcm9ibGVtIC1cbiIKKyJzb21lIHBhY2thZ2VzIHNob3VsZCBvbmx5IGJlIGluc3RhbGxlZCBpbiBjb25qdW5jdGlvbiB3aXRoIGNlcnRhaW4gb3RoZXJzLCAiCisiYW5kXG4iCisic29tZSBjb21iaW5hdGlvbnMgb2YgcGFja2FnZXMgbWF5IG5vdCBiZSBpbnN0YWxsZWQgdG9nZXRoZXIuXG4iCisiXG4iCisiWW91IHdpbGwgc2VlIGEgc3ViLWxpc3QgY29udGFpbmluZyB0aGUgcGFja2FnZXMgaW52b2x2ZWQuICBUaGUgYm90dG9tIGhhbGYgIgorIm9mXG4iCisidGhlIGRpc3BsYXkgc2hvd3MgcmVsZXZhbnQgY29uZmxpY3RzIGFuZCBkZXBlbmRlbmNpZXM7IHVzZSBgaScgdG8gY3ljbGUgIgorImJldHdlZW5cbiIKKyJ0aGF0LCB0aGUgcGFja2FnZSBkZXNjcmlwdGlvbnMgYW5kIHRoZSBpbnRlcm5hbCBjb250cm9sIGluZm9ybWF0aW9uLlxuIgorIlxuIgorIkEgc2V0IG9mIGBzdWdnZXN0ZWQnIHBhY2thZ2VzIGhhcyBiZWVuIGNhbGN1bGF0ZWQsIGFuZCB0aGUgaW5pdGlhbCBtYXJraW5ncyAiCisiaW5cbiIKKyJ0aGlzIHN1Yi1saXN0IGhhdmUgYmVlbiBzZXQgdG8gbWF0Y2ggdGhvc2UsIHNvIHlvdSBjYW4ganVzdCBoaXQgUmV0dXJuIHRvXG4iCisiYWNjZXB0IHRoZSBzdWdnZXN0aW9ucyBpZiB5b3Ugd2lzaC4gIFlvdSBtYXkgYWJvcnQgdGhlIGNoYW5nZShzKSB3aGljaCAiCisiY2F1c2VkXG4iCisidGhlIHByb2JsZW0ocyksIGFuZCBnbyBiYWNrIHRvIHRoZSBtYWluIGxpc3QsIGJ5IHByZXNzaW5nIGNhcGl0YWwgYFgnLlxuIgorIlxuIgorIllvdSBjYW4gYWxzbyBtb3ZlIGFyb3VuZCB0aGUgbGlzdCBhbmQgY2hhbmdlIHRoZSBtYXJraW5ncyBzbyB0aGF0IHRoZXkgYXJlICIKKyJtb3JlXG4iCisibGlrZSB3aGF0IHlvdSB3YW50LCBhbmQgeW91IGNhbiBgcmVqZWN0JyBteSBzdWdnZXN0aW9ucyBieSB1c2luZyB0aGUgIgorImNhcGl0YWxcbiIKKyJgRCcgb3IgYFInIGtleXMgKHNlZSB0aGUga2V5YmluZGluZ3MgaGVscCBzY3JlZW4pLiAgWW91IGNhbiB1c2UgY2FwaXRhbCBgUScgIgorInRvXG4iCisiZm9yY2UgbWUgdG8gYWNjZXB0IHRoZSBzaXR1YXRpb24gY3VycmVudGx5IGRpc3BsYXllZCwgaW4gY2FzZSB5b3Ugd2FudCB0b1xuIgorIm92ZXJyaWRlIGEgcmVjb21tZW5kYXRpb24gb3IgdGhpbmsgdGhhdCB0aGUgcHJvZ3JhbSBpcyBtaXN0YWtlbi5cbiIKKyJcbiIKKyJQcmVzcyA8c3BhY2U+IHRvIGxlYXZlIGhlbHAgYW5kIGVudGVyIHRoZSBzdWItbGlzdDsgcmVtZW1iZXI6IHByZXNzIGA/JyBmb3IgIgorImhlbHAuXG4iCittc2dzdHIgIiIKKyJIYW50ZXJpbmcgYXYgYmVyb2VuZGVuL2tvbmZsaWt0ZXIgLSBpbnRyb2R1a3Rpb24uXG4iCisiXG4iCisiRXR0IGVsbGVyIGZsZXJhIGF2IGRpbmEgdmFsIGhhciBvcnNha2F0IGVuIGtvbmZsaWt0IGVsbGVyIGV0dCAiCisiYmVyb2VuZGVwcm9ibGVtIC1cbiIKKyJ2aXNzYSBwYWtldCBiw7ZyIGVuZGFzdCBpbnN0YWxsZXJhcyBpIHNhbWJhbmQgbWVkIHZpc3NhIGFuZHJhLCBvY2ggdmlzc2FcbiIKKyJrb21iaW5hdGlvbmVyIGF2IHBha2V0IGthbiBpbnRlIGluc3RhbGxlcmFzIHNhbXRpZGlndC5cbiIKKyJcbiIKKyJEdSBrb21tZXIgYXR0IHNlIGVuIHVuZGVybGlzdGEgbWVkIGRlIGludm9sdmVyYW5kZSBwYWtldGVuLiBOZWRyZSBoYWx2YW4gYXZcbiIKKyJza8Okcm1lbiB2aXNhciByZWxldmFudGEga29uZmxpa3RlciBvY2ggYmVyb2VuZGVuLiBBbnbDpG5kIFwiaVwiIGbDtnIgYXR0ICIKKyJjeWtsYVxuIgorIm1lbGxhbiBkZW0sIHBha2V0YmVza3Jpdm5pbmdhcm5hIG9jaCBkZW4gaW50ZXJuYSBrb250cm9sbGluZm9ybWF0aW9uZW4uXG4iCisiXG4iCisiRW4gc2FtbGluZyBcImbDtnJlc2xhZ25hXCIgcGFrZXQgaGFyIGJlcsOka25hdHMsIG9jaCBkZSB1cnNwcnVuZ2xpZ2FcbiIKKyJpbnN0w6RsbG5pbmdhcm5hIGkgdW5kZXJsaXN0YW4gaGFyIHNhdHRzIHRpbGwgYXR0IG1hdGNoYSBkZXNzYSwgc8OlIGF0dCBkdVxuIgorImhlbHQgZW5rZWx0IGthbiB0cnlja2EgRW50ZXIgZsO2ciBhdHQgYWNjZXB0ZXJhIHZhbGVuIG9tIGR1IHZpbGwuIER1IGthblxuIgorImF2YnJ5dGEgw6RuZHJpbmdhcm5hIHNvbSBvcnNha2FkZSBwcm9ibGVtZW4gb2NoIGfDpSB0aWxsYmFrYSB0aWxsIGh1dnVkbGlzdGFuXG4iCisiZ2Vub20gYXR0IHRyeWNrYSBldHQgdmVyc2FsdCBcIlhcIi5cbiIKKyJcbiIKKyJEdSBrYW4gb2Nrc8OlIHN0ZWdhIGdlbm9tIGxpc3RhbiBvY2ggw6RuZHJhIGluc3TDpGxsbmluZ2FybmEgc8OlIGF0dCBkZSBibGlyICIKKyJtZXJcbiIKKyJ2YWQgZHUgw7Zuc2thciwgb2NoIGR1IGthbiBcImbDtnJrYXN0YVwiIG1pdHQgZsO2cnNsYWcgZ2Vub20gYXR0IGFudsOkbmRhICIKKyJ2ZXJzYWx0XG4iCisiXCJEXCIgZWxsZXIgXCJSXCIgKHNlIHRhbmdlbnRib3Jkc2hqw6RscGVuKS4gRHUga2FuIGFudsOkbmRhIHZlcnNhbHQgXCJRXCIgIgorImbDtnJcbiIKKyJhdHQgdHZpbmdhIG1pZyBhdHQgYWNjZXB0ZXJhIG51dmFyYW5kZSBpbnN0w6RsbG5pbmdhciwgb20gZHUgw7Zuc2thciBnw6UgZsO2cmJpXG4iCisicmVrb21tZW5kYXRpb25lbiwgZWxsZXIgdHlja2VyIGF0dCBwcm9ncmFtbWV0IG1pc3N0YWdpdCBzaWcuXG4iCisiXG4iCisiVHJ5Y2sgPEJsYW5rc3RlZz4gZsO2ciBhdHQgbMOkbW5hIGhqw6RscGVuIG9jaCBrb21tYSB0aWxsIHVuZGVybGlzdGFuLiBLb20gIgorImlow6VnOlxuIgorInRyeWNrIFwiP1wiIGbDtnIgaGrDpGxwLlxuIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjEyNQorbXNnaWQgIkRpc3BsYXksIHBhcnQgMTogcGFja2FnZSBsaXN0aW5nIGFuZCBzdGF0dXMgY2hhcnMiCittc2dzdHIgIlZpc25pbmcsIGRlbCAxOiBwYWtldGxpc3RuaW5nIG9jaCBzdGF0dXNzeW1ib2xlciIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxMjUKK21zZ2lkICIiCisiVGhlIHRvcCBoYWxmIG9mIHRoZSBzY3JlZW4gc2hvd3MgYSBsaXN0IG9mIHBhY2thZ2VzLiAgRm9yIGVhY2ggcGFja2FnZSB5b3UgIgorInNlZVxuIgorImZvdXIgY29sdW1ucyBmb3IgaXRzIGN1cnJlbnQgc3RhdHVzIG9uIHRoZSBzeXN0ZW0gYW5kIG1hcmsuICBJbiB0ZXJzZSBtb2RlICIKKyIodXNlXG4iCisiYHYnIHRvIHRvZ2dsZSB2ZXJib3NlIGRpc3BsYXkpIHRoZXNlIGFyZSBzaW5nbGUgY2hhcmFjdGVycywgZnJvbSBsZWZ0IHRvICIKKyJyaWdodDpcbiIKKyJcbiIKKyIgRXJyb3IgZmxhZzogU3BhY2UgLSBubyBlcnJvciAoYnV0IHBhY2thZ2UgbWF5IGJlIGluIGJyb2tlbiBzdGF0ZSAtIHNlZSAiCisiYmVsb3cpXG4iCisiICAgICAgICAgICAgICBgUicgIC0gc2VyaW91cyBlcnJvciBkdXJpbmcgaW5zdGFsbGF0aW9uLCBuZWVkcyAiCisicmVpbnN0YWxsYXRpb247XG4iCisiIEluc3RhbGxlZCBzdGF0ZTogICAgIFNwYWNlICAgIC0gbm90IGluc3RhbGxlZDtcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgIGAqJyAgICAgLSBpbnN0YWxsZWQ7XG4iCisiICAgICAgICAgICAgICAgICAgICAgICBgLScgICAgIC0gbm90IGluc3RhbGxlZCBidXQgY29uZmlnIGZpbGVzIHJlbWFpbjtcbiIKKyIgICBwYWNrYWdlcyBpbiB0aGVzZSB7IGBVJyAgICAgLSB1bnBhY2tlZCBidXQgbm90IHlldCBjb25maWd1cmVkO1xuIgorIiAgIHN0YXRlcyBhcmUgbm90ICAgIHsgYEMnICAgICAtIGhhbGYtY29uZmlndXJlZCAoYW4gZXJyb3IgaGFwcGVuZWQpO1xuIgorIiAgIChxdWl0ZSkgcHJvcGVybHkgIHsgYEknICAgICAtIGhhbGYtaW5zdGFsbGVkIChhbiBlcnJvciBoYXBwZW5lZCk7XG4iCisiICAgaW5zdGFsbGVkICAgICAgICAgeyBgVycsYHQnIC0gdHJpZ2dlcnMgYXJlIGF3YWl0ZWQgcmVzcC4gcGVuZGluZy5cbiIKKyIgT2xkIG1hcms6IHdoYXQgd2FzIHJlcXVlc3RlZCBmb3IgdGhpcyBwYWNrYWdlIGJlZm9yZSBwcmVzZW50aW5nIHRoaXMgbGlzdDtcbiIKKyIgTWFyazogd2hhdCBpcyByZXF1ZXN0ZWQgZm9yIHRoaXMgcGFja2FnZTpcbiIKKyIgIGAqJzogbWFya2VkIGZvciBpbnN0YWxsYXRpb24gb3IgdXBncmFkZTtcbiIKKyIgIGAtJzogbWFya2VkIGZvciByZW1vdmFsLCBidXQgYW55IGNvbmZpZ3VyYXRpb24gZmlsZXMgd2lsbCByZW1haW47XG4iCisiICBgPSc6IG9uIGhvbGQ6IHBhY2thZ2Ugd2lsbCBub3QgYmUgcHJvY2Vzc2VkIGF0IGFsbDtcbiIKKyIgIGBfJzogbWFya2VkIGZvciBwdXJnZSBjb21wbGV0ZWx5IC0gZXZlbiByZW1vdmUgY29uZmlndXJhdGlvbjtcbiIKKyIgIGBuJzogcGFja2FnZSBpcyBuZXcgYW5kIGhhcyB5ZXQgdG8gYmUgbWFya2VkIGZvciBpbnN0YWxsL3JlbW92ZS8mYy5cbiIKKyJcbiIKKyJBbHNvIGRpc3BsYXllZCBhcmUgZWFjaCBwYWNrYWdlJ3MgUHJpb3JpdHksIFNlY3Rpb24sIG5hbWUsIGluc3RhbGxlZCBhbmRcbiIKKyJhdmFpbGFibGUgdmVyc2lvbiBudW1iZXJzIChzaGlmdC1WIHRvIGRpc3BsYXkvaGlkZSkgYW5kIHN1bW1hcnkgIgorImRlc2NyaXB0aW9uLlxuIgorbXNnc3RyICIiCisiw5Z2cmUgaGFsdmFuIGF2IHNrw6RybWVuIHZpc2FyIGVuIGxpc3RhIMO2dmVyIHBha2V0LiBGw7ZyIHZhcmplIHBha2V0IHNlciBkdSAiCisiZnlyYVxuIgorImtvbHVtbmVyIGbDtnIgZGVyYXMgbnV2YXJhbmRlIHN0YXR1cyBvY2ggbWFya2VyaW5nLiBJIGRldCBrb25jaXNhIGzDpGdldCAiCisiKHRyeWNrXG4iCisiXCJ2XCIgZsO2ciBhdHQgZsOlIHByYXRzYW10IGzDpGdlKSDDpHIgZGVzc2EgZW5rbGEgYm9rc3TDpHZlciwgZnLDpW4gdsOkbnN0ZXIgdGlsbFxuIgorImjDtmdlcjpcbiIKKyJcbiIKKyIgRmVsZmxhZ2dhOiBibGFua3N0ZWcgIC0gaW5nZXQgZmVsIChtZW4gcGFrZXRldCBrYW4gdmFyYSB0cmFzaWd0IC0gc2UgIgorIm5lZGFuKVxuIgorIiAgICAgICAgICAgICBcIlJcIiAgICAgICAtIGFsbHZhcmxpZ3QgZmVsIHZpZCBpbnN0YWxsYXRpb24sIG3DpXN0ZSAiCisib21pbnN0YWxsZXJhc1xuIgorIiBUaWxsc3TDpW5kOiAgICAgICBibGFua3N0ZWcgICAgLSBlaiBpbnN0YWxsZXJhdFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgYConICAgICAtIGluc3RhbGxlcmF0XG4iCisiICAgICAgICAgICAgICAgICAgICAgICBgLScgICAgIC0gZWogaW5zdGFsbGVyYXQsIGtvbmZpZ3VyYXRpb25zZmlsZXIgIgorImt2YXJzdMOlclxuIgorIiAgIHBha2V0IGkgZGVzc2EgICAgIHsgYFUnICAgICAtIHVwcGFja2F0LCBtZW4gw6RubnUgZWoga29uZmlndXJlcmF0XG4iCisiICAgdGlsbHN0w6VuZCDDpHIgaW50ZSB7IGBDJyAgICAgLSBoYWx2dCBrb25maWd1cmVyYXQgKGV0dCBmZWwgdXBwc3RvZClcbiIKKyIgICAoaGVsdCkga29ycmVrdCAgICB7IGBJJyAgICAgLSBoYWx2dCBpbnN0YWxsZXJhdCAoZXR0IGZlbCB1cHBzdG9kKVxuIgorIiAgIGluc3RhbGxlcmFkZSAgICAgIHsgYFcnLGB0JyAtIHV0bMO2c2FyZSB2w6RudGFyIHJlc3AuIGbDtnJlc3TDpWVuZGVcbiIKKyIgR2FtbWFsIG1hcmtlcmluZzogdmFkIHNvbSDDtm5za2FkZXMgaW5uYW4gbGlzdGFuIHZpc2FkZXNcbiIKKyIgTWFya2VyaW5nOiB2YWQgw7Zuc2thcyBmw7ZyIGRldHRhIHBha2V0OlxuIgorIiAgXCIqXCI6IG1hcmtlcmF0IGbDtnIgYXR0IGluc3RhbGxlcmFzIGVsbGVyIHVwcGdyYWRlcmFzXG4iCisiICBcIi1cIjogbWFya2VyYXQgZsO2ciBhdHQgdGFzIGJvcnQsIG1lbiBhdHQgYmVow6VsbGEga29uZmlndXJhdGlvbnNmaWxlcm5hXG4iCisiICBcIj1cIjogaMOlbGw6IHBha2V0ZXQga29tbWVyIMO2dmVyIGh1dnVkIHRhZ2V0IGludGUgYXR0IGhhbnRlcmFzXG4iCisiICBcIl9cIjogbWFya2VyYXQgZsO2ciByYWRlcmluZywgw6R2ZW4ga29uZmlndXJhdGlvbnNmaWxlciBrb21tZXIgYXR0IHRhcyAiCisiYm9ydFxuIgorIiAgXCJuXCI6IHBha2V0ZXQgw6RyIG55dHQgaGFyIMOkbm51IGludGUgbWFya2VyYXRzIGbDtnIgbsOlZ29udGluZ1xuIgorIlxuIgorIlZhcmplIHBha2V0cyBwcmlvcml0ZXQsIHNla3Rpb24sIG5hbW4sIGluc3RhbGxlcmFkIG9jaCB0aWxsZ8OkbmdsaWcgdmVyc2lvblxuIgorIihza2lmdC1WIGbDtnIgYXR0IHZpc2EvZMO2bGphKSBvY2ggc2FtbWFuZmF0dGFkIGJlc2tyaXZuaW5nIHZpc2FzIG9ja3PDpS5cbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxNTIKK21zZ2lkICJEaXNwbGF5LCBwYXJ0IDI6IGxpc3QgaGlnaGxpZ2h0OyBpbmZvcm1hdGlvbiBkaXNwbGF5IgorbXNnc3RyICJWaXNuaW5nLCBkZWwgMjogbGlzdG1hcmtlcmluZywgaW5mb3JtYXRpb25zdmlzbmluZyIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxNTIKK21zZ2lkICIiCisiKiBIaWdobGlnaHQ6IE9uZSBsaW5lIGluIHRoZSBwYWNrYWdlIGxpc3Qgd2lsbCBiZSBoaWdobGlnaHRlZC4gIEl0ICIKKyJpbmRpY2F0ZXNcbiIKKyIgIHdoaWNoIHBhY2thZ2Uocykgd2lsbCBiZSBhZmZlY3RlZCBieSBwcmVzc2VzIG9mIGArJywgYC0nIGFuZCBgXycuXG4iCisiXG4iCisiKiBUaGUgZGl2aWRpbmcgbGluZSBpbiB0aGUgbWlkZGxlIG9mIHRoZSBzY3JlZW4gc2hvd3MgYSBicmllZiBleHBsYW5hdGlvbiAiCisib2ZcbiIKKyIgIHRoZSBzdGF0dXMgb2YgdGhlIGN1cnJlbnRseS1oaWdobGlnaHRlZCBwYWNrYWdlLCBvciBhIGRlc2NyaXB0aW9uIG9mICIKKyJ3aGljaFxuIgorIiAgZ3JvdXAgaXMgaGlnaGxpZ2h0ZWQgaWYgYSBncm91cCBsaW5lIGlzLiAgSWYgeW91IGRvbid0IHVuZGVyc3RhbmQgdGhlXG4iCisiICBtZWFuaW5nIG9mIHNvbWUgb2YgdGhlIHN0YXR1cyBjaGFyYWN0ZXJzIGRpc3BsYXllZCwgZ28gdG8gdGhlIHJlbGV2YW50XG4iCisiICBwYWNrYWdlIGFuZCBsb29rIGF0IHRoaXMgZGl2aWRlciBsaW5lLCBvciB1c2UgdGhlIGB2JyBrZXkgZm9yIGEgdmVyYm9zZVxuIgorIiAgZGlzcGxheSAocHJlc3MgYHYnIGFnYWluIHRvIGdvIGJhY2sgdG8gdGhlIHRlcnNlIGRpc3BsYXkpLlxuIgorIlxuIgorIiogVGhlIGJvdHRvbSBvZiB0aGUgc2NyZWVuIHNob3dzIG1vcmUgaW5mb3JtYXRpb24gYWJvdXQgdGhlXG4iCisiICBjdXJyZW50bHktaGlnaGxpZ2h0ZWQgcGFja2FnZSAoaWYgdGhlcmUgaXMgb25seSBvbmUpLlxuIgorIlxuIgorIiAgSXQgY2FuIHNob3cgYW4gZXh0ZW5kZWQgZGVzY3JpcHRpb24gb2YgdGhlIHBhY2thZ2UsIHRoZSBpbnRlcm5hbCBwYWNrYWdlXG4iCisiICBjb250cm9sIGRldGFpbHMgKGVpdGhlciBmb3IgdGhlIGluc3RhbGxlZCBvciBhdmFpbGFibGUgdmVyc2lvbiBvZiB0aGVcbiIKKyIgIHBhY2thZ2UpLCBvciBpbmZvcm1hdGlvbiBhYm91dCBjb25mbGljdHMgYW5kIGRlcGVuZGVuY2llcyBpbnZvbHZpbmcgdGhlXG4iCisiICBjdXJyZW50IHBhY2thZ2UgKGluIGNvbmZsaWN0L2RlcGVuZGVuY3kgcmVzb2x1dGlvbiBzdWJsaXN0cykuXG4iCisiXG4iCisiICBVc2UgdGhlIGBpJyBrZXkgdG8gY3ljbGUgdGhyb3VnaCB0aGUgZGlzcGxheXMsIGFuZCBgSScgdG8gaGlkZSB0aGVcbiIKKyIgIGluZm9ybWF0aW9uIGRpc3BsYXkgb3IgZXhwYW5kIGl0IHRvIHVzZSBhbG1vc3QgYWxsIG9mIHRoZSBzY3JlZW4uXG4iCittc2dzdHIgIiIKKyIqIE1hcmtlcmluZ3NyYWQ6IEVuIHJhZCBpIHBha2V0bGlzdGFuIGtvbW1lciBhdHQgbWFya2VyYXMuIERlbiBhbmdlciB2aWxrYVxuIgorIiAgcGFrZXQgc29tIGtvbW1lciBhdHQgcMOldmVya2FzIG9tIFwiK1wiLCBcIi1cIiBvY2ggXCJfXCIgdHJ5Y2tzLlxuIgorIlxuIgorIiogQXZkZWxuaW5nc2xpbmplbiBpIG1pdHRlbiBhdiBza8Okcm1lbiB2aXNhciBlbiBrb3J0IGbDtnJrbGFyaW5nIGF2IGRldCBudVxuIgorIiAgbWFya2VyYWRlIHBha2V0ZXRzIHN0YXR1cywgZWxsZXIgZW4gYmVza3Jpdm5pbmcgYXYgdmlsa2VuIGdydXBwIHNvbSAiCisibWFya2VyYXNcbiIKKyIgIG9tIG1hcmtlcmluZ3NyYWRlbiBzdMOlciBww6UgZW4gc8OlZGFuIHJhZC4gT20gZHUgaW50ZSBmw7Zyc3TDpXIgYmV0eWRlbHNlbiBhdlxuIgorIiAgbsOlZ29uIGF2IHN0YXR1c3N5bWJvbGVybmEgc29tIHZpc2FzIGthbiBkdSBnw6UgdGlsbCBwYWtldGV0IG9jaCB0aXR0YSBww6VcbiIKKyIgIGF2ZGVsbmluZ3NsaW5qZW4sIGVsbGVyIGFudsOkbmRhIFwidlwiIGbDtnIgYXR0IHNsw6UgcMOlIGRldCBwcmF0c2FtbWEgbMOkZ2V0XG4iCisiICAodHJ5Y2sgXCJ2XCIgaWdlbiBmw7ZyIGF0dCDDpXRlcmfDpSB0aWxsIGRlbiBrb25jaXNhIHZpc25pbmdlbikuXG4iCisiXG4iCisiKiBEZW4gbmVkcmUgZGVsZW4gYXYgc2vDpHJtZW4gdmlzYXIgeXR0ZXJsaWdhcmUgaW5mb3JtYXRpb24gb20gZGV0IG51ICIKKyJtYXJrZXJhZGVcbiIKKyIgIHBha2V0ZXQgKG9tIGVuZGFzdCBldHQgcGFrZXQgbWFya2VyYXRzKS5cbiIKKyJcbiIKKyIgIERlbiBrYW4gdmlzYSBkZW4gdXTDtmthZGUgYmVza3Jpdm5pbmdlbiBhdiBwYWtldGV0LCBkZXRhbGplciBvbSBpbnRlcm4gIgorInBha2V0LVxuIgorIiAgaW5mb3JtYXRpb24gKGFudGluZ2VuIGbDtnIgZGVuIGluc3RhbGxlcmFkZSBlbGxlciBkZW4gdGlsbGfDpG5nbGlnYSAiCisidmVyc2lvbmVuXG4iCisiICBhdiBwYWtldGV0KSwgZWxsZXIgaW5mb3JtYXRpb24gb20ga29uZmxpa3RlciBvY2ggYmVyb2VuZGVuIHNvbSBnw6RsbGVyIGRldFxuIgorIiAgYWt0dWVsbGEgcGVrdGV0IChpIHVuZGVybGlzdG9yIGTDpHIga29uZmxpa3Rlci9iZXJvZW5kZW4gaGFudGVyYXMpLlxuIgorIlxuIgorIiAgQW52w6RuZCBcImlcIi10YW5nZW50ZW4gZsO2ciBhdHQgY3lrbGEgZ2Vub20gZGUgb2xpa2EgdmlzbmluZ3Nsw6RnZW5hLCBvY2ggXCJJIgorIlwiXG4iCisiICBmw7ZyIGF0dCBnw7ZtbWEgaW5mb3JtYXRpb25zdmlzbmluZ2VuLCBlbGxlciB1dMO2a2EgZGVuIHRpbGwgYXR0IGFudsOkbmRhICIKKyJuw6RzdGFuXG4iCisiICBoZWxhIHNrw6RybWVuLlxuIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjE3NgorbXNnaWQgIkludHJvZHVjdGlvbiB0byBtZXRob2Qgc2VsZWN0aW9uIGRpc3BsYXkiCittc2dzdHIgIkludHJvZHVrdGlvbiB0aWxsIG1ldG9kdmFsc3Nrw6RybWVuIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjE3NgorbXNnaWQgIiIKKyJkc2VsZWN0IGFuZCBkcGtnIGNhbiBkbyBhdXRvbWF0aWMgaW5zdGFsbGF0aW9uLCBsb2FkaW5nIHRoZSBwYWNrYWdlIGZpbGVzIHRvICIKKyJiZVxuIgorImluc3RhbGxlZCBmcm9tIG9uZSBvZiBhIG51bWJlciBvZiBkaWZmZXJlbnQgcG9zc2libGUgcGxhY2VzLlxuIgorIlxuIgorIlRoaXMgbGlzdCBhbGxvd3MgeW91IHRvIHNlbGVjdCBvbmUgb2YgdGhlc2UgaW5zdGFsbGF0aW9uIG1ldGhvZHMuXG4iCisiXG4iCisiTW92ZSB0aGUgaGlnaGxpZ2h0IHRvIHRoZSBtZXRob2QgeW91IHdpc2ggdG8gdXNlLCBhbmQgaGl0IEVudGVyLiAgWW91IHdpbGwgIgorInRoZW5cbiIKKyJiZSBwcm9tcHRlZCBmb3IgdGhlIGluZm9ybWF0aW9uIHJlcXVpcmVkIHRvIGRvIHRoZSBpbnN0YWxsYXRpb24uXG4iCisiXG4iCisiQXMgeW91IG1vdmUgdGhlIGhpZ2hsaWdodCBhIGRlc2NyaXB0aW9uIG9mIGVhY2ggbWV0aG9kLCB3aGVyZSBhdmFpbGFibGUsIGlzXG4iCisiZGlzcGxheWVkIGluIHRoZSBib3R0b20gaGFsZiBvZiB0aGUgc2NyZWVuLlxuIgorIlxuIgorIklmIHlvdSB3aXNoIHRvIHF1aXQgd2l0aG91dCBjaGFuZ2luZyBhbnl0aGluZyB1c2UgdGhlIGB4JyBrZXkgd2hpbGUgaW4gdGhlICIKKyJsaXN0XG4iCisib2YgaW5zdGFsbGF0aW9uIG1ldGhvZHMuXG4iCisiXG4iCisiQSBmdWxsIGxpc3Qgb2Yga2V5c3Ryb2tlcyBpcyBhdmFpbGFibGUgYnkgcHJlc3NpbmcgYGsnIG5vdywgb3IgZnJvbSB0aGUgIgorImhlbHBcbiIKKyJtZW51IHJlYWNoYWJsZSBieSBwcmVzc2luZyBgPycuXG4iCittc2dzdHIgIiIKKyJkc2VsZWN0IG9jaCBkcGtnIGthbiBnw7ZyYSBhdXRvbWF0aXNrYSBpbnN0YWxsYXRpb25lciBnZW5vbSBhdHQgbGFkZGEgcGFrZXQtXG4iCisiZmlsZXJuYSBmcsOlbiBlbiBhdiBmbGVyYSBvbGlrYSBwbGF0c2VyLlxuIgorIlxuIgorIkxpc3RhbiBsw6V0ZXIgZGlnIHbDpGxqYSBlbiBhdiBkZXNzYSBpbnN0YWxsYXRpb25zbWV0b2Rlci5cbiIKKyJcbiIKKyJGbHl0dGEgbWFya2VyaW5nc3JhZGVuIHRpbGwgZGVuIG1ldG9kIGR1IHZpbGwgYW52w6RuZGEgb2NoIHRyeWNrIEVudGVyLiBOdVxuIgorImtvbW1lciBkdSBmcsOlZ2FzIG9tIGtyw6R2ZCBpbmZvcm1hdGlvbiBmw7ZyIGF0dCBnZW5vbWbDtnJhIGluc3RhbGxhdGlvbmVuLlxuIgorIlxuIgorIk7DpHIgZHUgZmx5dHRhciBtYXJrZXJpbmdzcmFkZW4gdmlzYXMgZW4gYmVza3Jpdm5pbmcgYXYgdmFyamUgbWV0b2QsIG9tIGVuXG4iCisic8OlZGFuIGZpbm5zLCBww6Ugc2vDpHJtZW5zIG5lZHJlIGhhbHZhLlxuIgorIlxuIgorIk9tIGR1IMO2bnNrYXIgYXZzbHV0YSB1dGFuIGF0dCDDpG5kcmEgbsOlZ29udGluZyBrYW4gZHUgYW52w6RuZGEgXCJ4XCItIgorInRhbmdlbnRlblxuIgorIm1lZGFuIGxpc3RhbiDDtnZlciBpbnN0YWxsYXRpb25zbWV0b2RlciB2aXNhcy5cbiIKKyJcbiIKKyJFbiBrb21wbGV0dCBsaXN0YSBhdiB0YW5nZW50Ym9yZHNmdW5rdGlvbmVyIGbDpXIgZHUgb20gZHUgdHJ5Y2tlciBcImtcIiBudSAiCisiZWxsZXJcbiIKKyJmcsOlbiBoasOkbHBtZW55biBkdSBuw6VyIGdlbm9tIGF0dCB0cnlja2EgXCI/XCIuXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTk2Cittc2dpZCAiS2V5c3Ryb2tlcyBmb3IgbWV0aG9kIHNlbGVjdGlvbiIKK21zZ3N0ciAiVGFuZ2VudGVyIGbDtnIgbWV0b2R2YWwiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTk2Cittc2dpZCAiIgorIk1vdGlvbiBrZXlzOiBOZXh0L1ByZXZpb3VzLCBUb3AvRW5kLCBVcC9Eb3duLCBCYWNrd2FyZHMvRm9yd2FyZHM6XG4iCisiICBqLCBEb3duLWFycm93ICAgICAgICAgaywgVXAtYXJyb3cgICAgICAgICAgICAgbW92ZSBoaWdobGlnaHRcbiIKKyIgIE4sIFBhZ2UtZG93biwgU3BhY2UgICBQLCBQYWdlLXVwLCBCYWNrc3BhY2UgICBzY3JvbGwgbGlzdCBieSAxIHBhZ2VcbiIKKyIgIF5uICAgICAgICAgICAgICAgICAgICBecCAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgbGlzdCBieSAxIGxpbmVcbiIKKyIgIHQsIEhvbWUgICAgICAgICAgICAgICBlLCBFbmQgICAgICAgICAgICAgICAgICBqdW1wIHRvIHRvcC9lbmQgb2YgbGlzdFxuIgorIiAgdSAgICAgICAgICAgICAgICAgICAgIGQgICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIGJ5IDEgcGFnZVxuIgorIiAgXnUgICAgICAgICAgICAgICAgICAgIF5kICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIGJ5IDEgbGluZVxuIgorIiAgQiwgTGVmdC1hcnJvdyAgICAgICAgIEYsIFJpZ2h0LWFycm93ICAgICAgICAgIHBhbiBkaXNwbGF5IGJ5IDEvMyBzY3JlZW5cbiIKKyIgIF5iICAgICAgICAgICAgICAgICAgICBeZiAgICAgICAgICAgICAgICAgICAgICBwYW4gZGlzcGxheSBieSAxIGNoYXJhY3RlclxuIgorIihUaGVzZSBhcmUgdGhlIHNhbWUgbW90aW9uIGtleXMgYXMgaW4gdGhlIHBhY2thZ2UgbGlzdCBkaXNwbGF5LilcbiIKKyJcbiIKKyJRdWl0OlxuIgorIiBSZXR1cm4sIEVudGVyICAgIHNlbGVjdCB0aGlzIG1ldGhvZCBhbmQgZ28gdG8gaXRzIGNvbmZpZ3VyYXRpb24gZGlhbG9ndWVcbiIKKyIgeCwgWCAgICAgICAgICAgICBleGl0IHdpdGhvdXQgY2hhbmdpbmcgb3Igc2V0dGluZyB1cCB0aGUgaW5zdGFsbGF0aW9uICIKKyJtZXRob2RcbiIKKyJcbiIKKyJNaXNjZWxsYW5lb3VzOlxuIgorIiAgPywgSGVscCwgRjEgICAgICByZXF1ZXN0IGhlbHBcbiIKKyIgXmwgICAgICAgICAgICAgICAgcmVkcmF3IGRpc3BsYXlcbiIKKyIgIC8gICAgICAgICAgICAgICAgc2VhcmNoIChqdXN0IHJldHVybiB0byBjYW5jZWwpXG4iCisiICBcXCAgICAgICAgICAgICAgICByZXBlYXQgbGFzdCBzZWFyY2hcbiIKK21zZ3N0ciAiIgorIlLDtnJlbHNldGFuZ2VudGVyOiBOw6RzdGEvRsO2cmVnw6VlbmRlLCBCw7ZyamFuL1NsdXQsIFVwcC9OZXIsIEZyYW3DpXQvQmFrw6V0OlxuIgorIiAgaiwgTmVkw6V0cGlsICAgICAgICAgICBrLCBVcHDDpXRwaWwgICAgICAgICAgICAgZmx5dHRhIG1hcmtlcmluZ3NyYWRcbiIKKyIgIE4sIFBnRG4sIGJsYW5rc3RlZyAgICBQLCBQZ1VwLCBiYWNrc3RlZyAgICAgICBydWxsYSBsaXN0YW4gZW4gc2lkYVxuIgorIiAgXm4gICAgICAgICAgICAgICAgICAgIF5wICAgICAgICAgICAgICAgICAgICAgIHJ1bGxhIGxpc3RhbiBlbiByYWRcbiIKKyIgIHQsIEhvbWUgICAgICAgICAgICAgICBlLCBFbmQgICAgICAgICAgICAgICAgICBiw7ZyamFuL3NsdXRldCBhdiBsaXN0YW5cbiIKKyIgIHUgICAgICAgICAgICAgICAgICAgICBkICAgICAgICAgICAgICAgICAgICAgICBydWxsYSBpbmZvdGV4dCBlbiBzaWRhXG4iCisiICBedSAgICAgICAgICAgICAgICAgICAgXmQgICAgICAgICAgICAgICAgICAgICAgcnVsbGEgaW5mb3RleHQgZW4gcmFkXG4iCisiICBCLCB2w6Ruc3RlcnBpbCAgICAgICAgIEYsIGjDtmdlcnBpbCAgICAgICAgICAgICBwYW5vcmVyYSB2aXNuaW5nIDEvMyBza8Okcm1cbiIKKyIgIF5iICAgICAgICAgICAgICAgICAgICBeZiAgICAgICAgICAgICAgICAgICAgICBwYW5vcmVyYSB2aXNuaW5nIGV0dCB0ZWNrZW5cbiIKKyIoRGV0dGEgw6RyIHNhbW1hIGbDtnJmbHl0dG5pbmdzdGFuZ2VudGVyIHNvbSBpIHBha2V0bGlzdGFuLilcbiIKKyJcbiIKKyJBdnNsdXRhOlxuIgorIiBFbnRlciAgIHbDpGxqZXIgbWV0b2RlbiBvY2ggZ8OlciB0aWxsIGRlc3Mga29uZmlndXJhdGlvbnNkaWFsb2dcbiIKKyIgeCwgWCAgICBhdnNsdXRhciB1dGFuIGF0dCDDpG5kcmEgZWxsZXIgc3TDpGxsYSBpbiBpbnN0YWxsYXRpb25zbWV0b2RlblxuIgorIlxuIgorIkRpdmVyc2U6XG4iCisiICA/LCBIZWxwLCBGMSAgIGJlIG9tIGhqw6RscFxuIgorIiBebCAgICAgICAgICAgICByaXRhIG9tIHNrw6RybWVuXG4iCisiICAvICAgICAgICAgICAgIHPDtmsgKEVudGVyIGF2YnJ5dGVyKVxuIgorIiAgXFwgICAgICAgICAgICAgcmVwZXRlcmEgc2VuYXN0ZSBzw7ZrbmluZ1xuIgorCisjOiBkc2VsZWN0L21haW4uY2M6NjAKK21zZ2lkICJUeXBlIGRzZWxlY3QgLS1oZWxwIGZvciBoZWxwLiIKK21zZ3N0ciAiU2tyaXYgZHNlbGVjdCAtLWhlbHAgZsO2ciBoasOkbHAuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQzCittc2dpZCAiYSIKK21zZ3N0ciAiayIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0MworbXNnaWQgIltBXWNjZXNzIgorbXNnc3RyICLDhXRba11vbXN0IgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQzCittc2dpZCAiQ2hvb3NlIHRoZSBhY2Nlc3MgbWV0aG9kIHRvIHVzZS4iCittc2dzdHIgIlbDpGxqIGFudsOkbmQgw6V0a29tc3RtZXRvZC4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDQKK21zZ2lkICJ1IgorbXNnc3RyICJ1IgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ0Cittc2dpZCAiW1VdcGRhdGUiCittc2dzdHIgIltVXXBwZGF0ZXJhIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ0Cittc2dpZCAiVXBkYXRlIGxpc3Qgb2YgYXZhaWxhYmxlIHBhY2thZ2VzLCBpZiBwb3NzaWJsZS4iCittc2dzdHIgIlVwcGRhdGVyYSBsaXN0YW4gw7Z2ZXIgdGlsbGfDpG5nbGlnYSBwYWtldCwgb20gbcO2amxpZ3QuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ1Cittc2dpZCAicyIKK21zZ3N0ciAidiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NQorbXNnaWQgIltTXWVsZWN0IgorbXNnc3RyICJbVl3DpGxqIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ1Cittc2dpZCAiUmVxdWVzdCB3aGljaCBwYWNrYWdlcyB5b3Ugd2FudCBvbiB5b3VyIHN5c3RlbS4iCittc2dzdHIgIlbDpGxqIHBha2V0IGR1IHZpbGwgaGEgcMOlIGRpdHQgc3lzdGVtLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NgorbXNnaWQgImkiCittc2dzdHIgImkiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDYKK21zZ2lkICJbSV1uc3RhbGwiCittc2dzdHIgIltJXW5zdGFsbGVyYSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NgorbXNnaWQgIkluc3RhbGwgYW5kIHVwZ3JhZGUgd2FudGVkIHBhY2thZ2VzLiIKK21zZ3N0ciAiSW5zdGFsbGVyYSBvY2ggdXBwZ3JhZGVyYSDDtm5za2FkZSBwYWtldC4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDcKK21zZ2lkICJjIgorbXNnc3RyICJrIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ3Cittc2dpZCAiW0Ndb25maWciCittc2dzdHIgIltLXW9uZmlndXJlcmEiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDcKK21zZ2lkICJDb25maWd1cmUgYW55IHBhY2thZ2VzIHRoYXQgYXJlIHVuY29uZmlndXJlZC4iCittc2dzdHIgIktvbmZpZ3VyZXJhIHBha2V0IHNvbSDDpG5udSBlaiBrb25maWd1cmVyYXRzLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OAorbXNnaWQgInIiCittc2dzdHIgInIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDgKK21zZ2lkICJbUl1lbW92ZSIKK21zZ3N0ciAiW1JdYWRlcmEiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDgKK21zZ2lkICJSZW1vdmUgdW53YW50ZWQgc29mdHdhcmUuIgorbXNnc3RyICJUYSBib3J0IG/Dtm5za2FkIHByb2dyYW12YXJhLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OQorbXNnaWQgInEiCittc2dzdHIgImEiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDkKK21zZ2lkICJbUV11aXQiCittc2dzdHIgIltBXXZzbHV0YSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OQorbXNnaWQgIlF1aXQgZHNlbGVjdC4iCittc2dzdHIgIkzDpG1uYXIgZHNlbGVjdC4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNTAKK21zZ2lkICJtZW51IgorbXNnc3RyICJtZW55IgorCisjOiBkc2VsZWN0L21haW4uY2M6MTU1CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiBgJXMnIHBhY2thZ2UgaGFuZGxpbmcgZnJvbnRlbmQgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiRGViaWFuIFwiJXNcIiBwYWtldGhhbnRlcmluZ3NncsOkbnNzbml0dCB2ZXJzaW9uICVzLlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTU4Cittc2dpZCAiIgorIkNvcHlyaWdodCAoQykgMTk5NC0xOTk2IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uXG4iCittc2dzdHIgIiIKKyJDb3B5cmlnaHQgwqkgMTk5NC0xOTk2IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCDCqSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE2MgorbXNnaWQgIiIKKyJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAyIG9yXG4iCisibGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuXG4iCittc2dzdHIgIiIKKyJEZXR0YSBwcm9ncmFtIMOkciBmcmkgcHJvZ3JhbXZhcmEuIFNlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMlxuIgorImVsbGVyIHNlbmFyZSBmw7ZyIGtvcGllcmluZ3N2aWxsa29yLiBEZXQgZmlubnMgSU5HRU4gZ2FyYW50aS5cbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE3MiBkc2VsZWN0L21haW4uY2M6MjIwCittc2dpZCAiPHN0YW5kYXJkIG91dHB1dD4iCittc2dzdHIgIjxzdGFuZGFyZCB1dD4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSBbPGFjdGlvbj4gLi4uXVxuIgorIlxuIgorbXNnc3RyICIiCisiQW52w6RuZG5pbmc6ICVzIFs8ZmxhZ2dhPiAuLi5dIFs8w6V0Z8OkcmQ+IC4uLl1cbiIKKyJcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE4NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorIiAgLS1leHBlcnQgICAgICAgICAgICAgICAgICAgVHVybiBvbiBleHBlcnQgbW9kZS5cbiIKKyIgIC0tZGVidWcgPGZpbGU+IHwgLUQ8ZmlsZT4gIFR1cm4gb24gZGVidWdnaW5nLCBzZW5kaW5nIG91dHB1dCB0byA8ZmlsZT4uXG4iCisiICAtLWNvbG91ciB8IC0tY29sb3Igc2NyZWVucGFydDpbZm9yZWdyb3VuZF0sW2JhY2tncm91bmRdWzphdHRyWythdHRyKy4uXV1cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENvbmZpZ3VyZSBzY3JlZW4gY29sb3Vycy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIkZsYWdnb3I6XG4iCisiICAtLWFkbWluZGlyIDxrYXRhbG9nPiAgICAgICBBbnbDpG5kIDxrYXRhbG9nPiBpc3TDpGxsZXQgZsO2ciAlcy5cbiIKKyIgIC0tZXhwZXJ0ICAgICAgICAgICAgICAgICAgIFNsw6UgcMOlIGV4cGVydGzDpGdldC5cbiIKKyIgIC0tZGVidWcgPGZpbD4gfCAtRDxmaWw+ICAgIFNsw6UgcMOlIGZlbHPDtmtuaW5nLCBza2lja2EgdXRza3JpZnQgdGlsbCA8ZmlsPi5cbiIKKyIgIC0tY29sb3VyIHwgLS1jb2xvciBzY3JlZW5wYXJ0Oltmb3JlZ3JvdW5kXSxbYmFja2dyb3VuZF1bOmF0dHJbK2F0dHIrLi5dXVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgS29uZmlndXJlcmEgc2vDpHJtZsOkcmdlci5cbiIKKyJcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE5NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgICBTaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICAgU2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgICAgVmlzYSBkZXR0YSBoasOkbHBtZWRkZWxhbmRlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICAgVmlzYSB2ZXJzaW9uc251bW1lci5cbiIKKyJcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjIwMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQWN0aW9uczpcbiIKKyIgIGFjY2VzcyB1cGRhdGUgc2VsZWN0IGluc3RhbGwgY29uZmlnIHJlbW92ZSBxdWl0XG4iCisiXG4iCittc2dzdHIgIiIKKyLDhXRnw6RyZGVyOlxuIgorIiAgYWNjZXNzIHVwZGF0ZSBzZWxlY3QgaW5zdGFsbCBjb25maWcgcmVtb3ZlIHF1aXRcbiIKKyJcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjIwNQorIywgYy1mb3JtYXQKK21zZ2lkICJTY3JlZW5wYXJ0czpcbiIKK21zZ3N0ciAiU2vDpHJtZGVsYXI6XG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ29sb3VyczpcbiIKK21zZ3N0ciAiRsOkcmdlcjpcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjIxNQorIywgYy1mb3JtYXQKK21zZ2lkICJBdHRyaWJ1dGVzOlxuIgorbXNnc3RyICJBdHRyaWJ1dDpcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjIzMworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBvcGVuIGRlYnVnIGZpbGUgYCUuMjU1cydcbiIKK21zZ3N0ciAia3VuZGUgaW50ZSDDtnBwbmEgZmVsc8O2a25pbmdzZmlsIFwiJS4yNTVzXCJcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjI1MworIywgYy1mb3JtYXQKK21zZ2lkICJJbnZhbGlkICVzIGAlcydcbiIKK21zZ3N0ciAiT2dpbHRpZyAlcyBcIiVzXCJcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjI3MAorbXNnaWQgInNjcmVlbiBwYXJ0IgorbXNnc3RyICJza8Okcm1kZWwiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyNzYKK21zZ2lkICJOdWxsIGNvbG91ciBzcGVjaWZpY2F0aW9uXG4iCittc2dzdHIgIlRvbSBmw6RyZ2FuZ2l2ZWxzZVxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6Mjg0IGRzZWxlY3QvbWFpbi5jYzoyODkKK21zZ2lkICJjb2xvdXIiCittc2dzdHIgImbDpHJnIgorCisjOiBkc2VsZWN0L21haW4uY2M6Mjk3Cittc2dpZCAiY29sb3VyIGF0dHJpYnV0ZSIKK21zZ3N0ciAiZsOkcmdhdHRyaWJ1dCIKKworIzogZHNlbGVjdC9tYWluLmNjOjMyOQorbXNnaWQgIlRlcm1pbmFsIGRvZXMgbm90IGFwcGVhciB0byBzdXBwb3J0IGN1cnNvciBhZGRyZXNzaW5nLlxuIgorbXNnc3RyICJUZXJtaW5hbGVuIHZlcmthciBpbnRlIHRpbGzDpXRhIG1hcmvDtnJhZHJlc3NlcmluZy5cbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjMzMQorbXNnaWQgIlRlcm1pbmFsIGRvZXMgbm90IGFwcGVhciB0byBzdXBwb3J0IGhpZ2hsaWdodGluZy5cbiIKK21zZ3N0ciAiVGVybWluYWxlbiB2ZXJrYXIgaW50ZSB0aWxsw6V0YSBsanVzbWFya2VyaW5nLlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MzMzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJTZXQgeW91ciBURVJNIHZhcmlhYmxlIGNvcnJlY3RseSwgdXNlIGEgYmV0dGVyIHRlcm1pbmFsLFxuIgorIm9yIG1ha2UgZG8gd2l0aCB0aGUgcGVyLXBhY2thZ2UgbWFuYWdlbWVudCB0b29sICVzLlxuIgorbXNnc3RyICIiCisiU3TDpGxsIGluIGRpbiBURVJNLXZhcmlhYmVsIGtvcnJla3QsIGFudsOkbmQgZW4gYsOkdHRyZSB0ZXJtaW5hbFxuIgorImVsbGVyIGxldiBtZWQgZGV0IHBlci1wYWtldGhhbnRlcmFuZGUgdmVya3R5Z2V0ICVzLlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MzM2Cittc2dpZCAidGVybWluYWwgbGFja3MgbmVjZXNzYXJ5IGZlYXR1cmVzLCBnaXZpbmcgdXAiCittc2dzdHIgInRlcm1pbmFsZW4gc2FrbmFyIGZ1bmt0aW9uZXIgc29tIGJlaMO2dnMsIGdlciB1cHAiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzo0MTcKK21zZ2lkICIiCisiXG4iCisiXG4iCisiTW92ZSBhcm91bmQgd2l0aCBeUCBhbmQgXk4sIGN1cnNvciBrZXlzLCBpbml0aWFsIGxldHRlcnMsIG9yIGRpZ2l0cztcbiIKKyJQcmVzcyA8ZW50ZXI+IHRvIGNvbmZpcm0gc2VsZWN0aW9uLiAgIF5MIHJlZHJhd3Mgc2NyZWVuLlxuIgorIlxuIgorbXNnc3RyICIiCisiXG4iCisiXG4iCisiQW52w6RuZCBeUCBvY2ggXk4sIHBpbHRhbmdlbnRlciwgZsO2cnN0YSBib2tzdMOkdmVyIGVsbGVyIHNpZmZyb3IuXG4iCisiVHJ5Y2sgPEVudGVyPiBmw7ZyIGF0dCBiZWtyw6RmdGEgdmFsLiBeTCByaXRhciBvbSBza8Okcm1lbi5cbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjQyOAorbXNnaWQgIiIKKyJcbiIKKyJcbiIKKyJSZWFkLW9ubHkgYWNjZXNzOiBvbmx5IHByZXZpZXcgb2Ygc2VsZWN0aW9ucyBpcyBhdmFpbGFibGUhIgorbXNnc3RyICIiCisiXG4iCisiXG4iCisiU2tyaXZza3lkZGF0IGzDpGdlOiBkdSBrYW4gYmFyYSB0aXR0YSBww6UgaW5uZWjDpWxsZXQhIgorCisjOiBkc2VsZWN0L21haW4uY2M6NDQ4Cittc2dpZCAiZmFpbGVkIHRvIGdldGNoIGluIG1haW4gbWVudSIKK21zZ3N0ciAia3VuZGUgaW50ZSBsw6RzYSB0ZWNrZW4gaSBodXZ1ZG1lbnluIgorCisjOiBkc2VsZWN0L21haW4uY2M6NTMxCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gYWN0aW9uIHN0cmluZyBgJS41MHMnIgorbXNnc3RyICJva8OkbmQgw6V0Z8OkcmRzc3Ryw6RuZyBcIiUuNTBzXCIiCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6NzcKK21zZ2lkICJkc2VsZWN0IC0gbGlzdCBvZiBhY2Nlc3MgbWV0aG9kcyIKK21zZ3N0ciAiZHNlbGVjdCAtIGxpc3RhIMO2dmVyIMOldGtvbXN0bWV0b2RlciIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzo4NgorIywgYy1mb3JtYXQKK21zZ2lkICJBY2Nlc3MgbWV0aG9kIGAlcycuIgorbXNnc3RyICLDhXRrb21zdG1ldG9kIFwiJXNcIi4iCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTIwCittc2dpZCAiQWJicmV2LiIKK21zZ3N0ciAiRsO2cmsuIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjEyMSBkc2VsZWN0L3BrZ2luZm8uY2M6MTA1IGRzZWxlY3QvcGtndG9wLmNjOjI5MQorbXNnaWQgIkRlc2NyaXB0aW9uIgorbXNnc3RyICJCZXNrcml2bmluZyIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxNjQgZHNlbGVjdC9wa2dsaXN0LmNjOjU3MgorbXNnaWQgImRvdXBkYXRlIGZhaWxlZCIKK21zZ3N0ciAiZG91cGRhdGUgbWlzc2x5Y2thZGVzIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjE2NiBkc2VsZWN0L3BrZ2xpc3QuY2M6NTc1Cittc2dpZCAiZmFpbGVkIHRvIHVuYmxvY2sgU0lHV0lOQ0giCittc2dzdHIgImt1bmRlIGludGUgYXZibG9ja2VyYSBmw7Zuc3RlcnVwcGRhdGVyaW5nIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjE3MCBkc2VsZWN0L3BrZ2xpc3QuY2M6NTgwCittc2dpZCAiZmFpbGVkIHRvIHJlLWJsb2NrIFNJR1dJTkNIIgorbXNnc3RyICJrdW5kZSBpbnRlIMOldGVyIGJsb2NrZXJhIGbDtm5zdGVydXBwZGF0ZXJpbmciCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTcxIGRzZWxlY3QvcGtnbGlzdC5jYzo1ODIKK21zZ2lkICJnZXRjaCBmYWlsZWQiCittc2dzdHIgImdldGNoIG1pc3NseWNrYWRlcyIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxODgKK21zZ2lkICJFeHBsYW5hdGlvbiIKK21zZ3N0ciAiRsO2cmtsYXJpbmciCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTk3Cittc2dpZCAiTm8gZXhwbGFuYXRpb24gYXZhaWxhYmxlLiIKK21zZ3N0ciAiSW5nZW4gZsO2cmtsYXJpbmcgZmlubnMuIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzo2NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiXG4iCisiJXM6ICVzXG4iCittc2dzdHIgIiIKKyJcbiIKKyJcbiIKKyIlczogJXNcbiIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6NzAKK21zZ2lkICIiCisiXG4iCisiUHJlc3MgPGVudGVyPiB0byBjb250aW51ZS4iCittc2dzdHIgIiIKKyJcbiIKKyJUcnljayA8RW50ZXI+IGbDtnIgYXR0IGZvcnRzw6R0dGEuIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoxNjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHJlc3MgPGVudGVyPiB0byBjb250aW51ZS5cbiIKK21zZ3N0ciAiVHJ5Y2sgPEVudGVyPiBmw7ZyIGF0dCBmb3J0c8OkdHRhLlxuIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoxNjIKK21zZ2lkICI8c3RhbmRhcmQgZXJyb3I+IgorbXNnc3RyICI8c3RhbmRhcmQgZmVsPiIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MTY1Cittc2dpZCAiZXJyb3IgcmVhZGluZyBhY2tub3dsZWRnZW1lbnQgb2YgcHJvZ3JhbSBmYWlsdXJlIG1lc3NhZ2UiCittc2dzdHIgImt1bmRlIGludGUgbMOkc2EgYmVrcsOkZnRlbHNlIGF2IG1lZGRlbGFuZGUgb20gcHJvZ3JhbXMgbWlzc2x5Y2thbmRlIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoxOTYKK21zZ2lkICJ1cGRhdGUgYXZhaWxhYmxlIGxpc3Qgc2NyaXB0IgorbXNnc3RyICJza3JpcHQgZsO2ciBhdHQgdXBwZGF0ZXJhIGxpc3RhIMO2dmVyIHRpbGxnw6RuZ2xpZ2EgcGFrZXQiCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjIwMAorbXNnaWQgImluc3RhbGxhdGlvbiBzY3JpcHQiCittc2dzdHIgImluc3RhbGxhdGlvbnNza3JpcHQiCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjI0NgorbXNnaWQgInF1ZXJ5L3NldHVwIHNjcmlwdCIKK21zZ3N0ciAiZnLDpWdlLS9pbnN0w6RsbG5pbmdzc2tyaXB0IgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzo1MworIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gbWV0aG9kIG9wdGlvbnMgZmlsZSBgJS4yNTBzJyAtLSAlcyIKK21zZ3N0ciAic3ludGF4ZmVsIGkgbWV0b2RmbGFnZ2ZpbCBcIiUuMjUwc1wiIC0tICVzIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzo1OQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciByZWFkaW5nIG9wdGlvbnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiZmVsIHZpZCBsw6RzbmluZyBhdiBmbGFnZ2ZpbCBcIiUuMjUwc1wiIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzo5MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBgJS4yNTBzJyBkaXJlY3RvcnkgZm9yIHJlYWRpbmcgbWV0aG9kcyIKK21zZ3N0ciAia3VuZGUgaW50ZSBsw6RzYSBrYXRhbG9nZW4gXCIlLjI1MHNcIiBmw7ZyIGzDpHNuaW5nIGF2IG1ldG9kZXIiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjEwNgorIywgYy1mb3JtYXQKK21zZ2lkICJtZXRob2QgYCUuMjUwcycgaGFzIG5hbWUgdGhhdCBpcyB0b28gbG9uZyAoJWQgPiAlZCBjaGFyYWN0ZXJzKSIKK21zZ3N0ciAibWV0b2RlbiBcIiUuMjUwc1wiIGhhciBldHQgbmFtbiBzb20gw6RyIGbDtnIgbMOlbmd0ICglZCA+ICVkIHRlY2tlbikiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjExNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gYWNjZXNzIG1ldGhvZCBzY3JpcHQgYCUuMjUwcyciCittc2dzdHIgImt1bmRlIGludGUga29tbWEgw6V0IG1ldG9kc2tyaXB0IFwiJS4yNTBzXCIiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjEyMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBtZXRob2Qgb3B0aW9ucyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrdW5kZSBpbnRlIGzDpHNhIG1ldG9kZmxhZ2dmaWxlbiBcIiUuMjUwc1wiIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNDcKK21zZ2lkICJub24tZGlnaXQgd2hlcmUgZGlnaXQgd2FudGVkIgorbXNnc3RyICJpY2tlLXNpZmZyYSBkw6RyIHNpZmZyYSDDtm5za2FkZXMiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE1MAorbXNnaWQgIkVPRiBpbiBpbmRleCBzdHJpbmciCittc2dzdHIgImZpbHNsdXQgaSBpbmRleHN0csOkbmciCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE1MworbXNnaWQgImluZGV4IHN0cmluZyB0b28gbG9uZyIKK21zZ3N0ciAiaW5kZXhzdHLDpG5nIGbDtnIgbMOlbmciCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE1NgorbXNnaWQgIm5ld2xpbmUgYmVmb3JlIG9wdGlvbiBuYW1lIHN0YXJ0IgorbXNnc3RyICJueXJhZCBmw7ZyZSB2YWxuYW1ucyBiw7ZyamFuIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNTgKK21zZ2lkICJFT0YgYmVmb3JlIG9wdGlvbiBuYW1lIHN0YXJ0IgorbXNnc3RyICJmaWxzbHV0IGbDtnIgdmFsbmFtbmV0cyBiw7ZyamFuIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNjIKK21zZ2lkICJub25hbHBoYSB3aGVyZSBvcHRpb24gbmFtZSBzdGFydCB3YW50ZWQiCittc2dzdHIgImlja2UtYm9rc3RhdiBkw6RyIHZhbG5hbW5ldHMgYsO2cmphbiDDtm5za2FkZXMiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE2NAorbXNnaWQgIm5vbi1hbHBoYW51bSBpbiBvcHRpb24gbmFtZSIKK21zZ3N0ciAiaWNrZS1hbGZhbnVtZXJpc2thIHRlY2tlbiBpIHZhbG5hbW4iCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE2NworbXNnaWQgIkVPRiBpbiBvcHRpb24gbmFtZSIKK21zZ3N0ciAiZmlsc2x1dCBpIHZhbG5hbW4iCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE3MgorbXNnaWQgIm5ld2xpbmUgYmVmb3JlIHN1bW1hcnkiCittc2dzdHIgInJhZHNsdXQgZsO2cmUgc2FtbWFuZmF0dG5pbmciCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE3NAorbXNnaWQgIkVPRiBiZWZvcmUgc3VtbWFyeSIKK21zZ3N0ciAiZmlsc2x1dCBmw7ZyZSBzYW1tYW5mYXR0bmluZyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTgwCittc2dpZCAiRU9GIGluIHN1bW1hcnkgLSBtaXNzaW5nIG5ld2xpbmUiCittc2dzdHIgImZpbHNsdXQgaSBzYW1tYW5mYXR0bmluZyAtIHJhZHNsdXQgc2FrbmFzIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gb3B0aW9uIGRlc2NyaXB0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImt1bmRlIGludGUgw7ZwcG5hIGJlc2tyaXZuaW5nc2ZpbCBcIiUuMjUwc1wiIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxOTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgb3B0aW9uIGRlc2NyaXB0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImt1bmRlIGludGUgdGEgc3RhdHVzIHDDpSBiZXNrcml2bmluZ3NmaWwgXCIlLjI1MHNcIiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTk4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZWFkIG9wdGlvbiBkZXNjcmlwdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrdW5kZSBpbnRlIGzDpHNhIGJlc2tyaXZuaW5nc2ZpbCBcIiUuMjUwc1wiIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgZHVyaW5nIHJlYWQgb2Ygb3B0aW9uIGRlc2NyaXB0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImZlbCB2aWQgbMOkc25pbmcgYXYgYmVza3Jpdm5pbmdzZmlsIFwiJS4yNTBzXCIiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjIyNAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBkdXJpbmcgcmVhZCBvZiBtZXRob2Qgb3B0aW9ucyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJmZWwgdmlkIGzDpHNuaW5nIGF2IG1ldG9kdmFsZmlsIFwiJS4yNTBzXCIiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjI0NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBjdXJyZW50IG9wdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrdW5kZSBpbnRlIMO2cHBuYSBha3R1ZWxsIHZhbGZpbCBcIiUuMjUwc1wiIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyODkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gbmV3IG9wdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrdW5kZSBpbnRlIMO2cHBuYSBueSB2YWxmaWwgXCIlLjI1MHNcIiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MjkyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgb3B0aW9uIHRvIGAlLjI1MHMnIgorbXNnc3RyICJrdW5kZSBpbnRlIHNrcml2YSBueSB2YWxmaWwgXCIlLjI1MHNcIiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6Mjk1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBuZXcgb3B0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImt1bmRlIGludGUgc3TDpG5nYSBueSB2YWxmaWwgXCIlLjI1MHNcIiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6Mjk3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyBvcHRpb24gYXMgYCUuMjUwcyciCittc2dzdHIgImt1bmRlIGludGUgaW5zdGFsbGVyYSBueXR0IHZhbCBzb20gXCIlLjI1MHNcIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjM2Cittc2dpZCAibmV3IHBhY2thZ2UiCittc2dzdHIgIm55dHQgcGFrZXQiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzozNworbXNnaWQgImluc3RhbGwiCittc2dzdHIgImluc3RhbGxlcmEiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzozOAorbXNnaWQgImhvbGQiCittc2dzdHIgImjDpWxsIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MzkKK21zZ2lkICJyZW1vdmUiCittc2dzdHIgInJhZGVyYSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjQwCittc2dpZCAicHVyZ2UiCittc2dzdHIgInJhZGVyYSIKKworIy4gVFJBTlNMQVRPUlM6IFRoZSBzcGFjZSBpcyBhIHRyaWNrIHRvIHdvcmsgYXJvdW5kIGdldHRleHQgd2hpY2ggdXNlcworIy4gKiB0aGUgZW1wdHkgc3RyaW5nIHRvIHN0b3JlIGluZm9ybWF0aW9uIGFib3V0IHRoZSB0cmFuc2xhdGlvbi4gRE8gTk9UCisjLiAqIENIQU5HRSBUSEFUIElOIEEgVFJBTlNMQVRJT04hIFRoZSBjb2RlIHJlYWxseSByZWxpZXMgb24gdGhhdCBiZWluZworIy4gKiBhIHNpbmdsZSBzcGFjZS4KKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo0NworbXNnaWQgIiAiCittc2dzdHIgIiAiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo0OAorbXNnaWQgIlJFSU5TVEFMTCIKK21zZ3N0ciAiT01JTlNUQUxMRVJBIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTEKK21zZ2lkICJub3QgaW5zdGFsbGVkIgorbXNnc3RyICJlaiBpbnN0YWxsZXJhdCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjUyCittc2dpZCAicmVtb3ZlZCAoY29uZmlncyByZW1haW4pIgorbXNnc3RyICJib3J0dGFnZXQgKGtvbmZpZy4ga3ZhcikiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1MworbXNnaWQgImhhbGYgaW5zdGFsbGVkIgorbXNnc3RyICJoYWx2aW5zdGFsbGVyYXQiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1NAorbXNnaWQgInVucGFja2VkIChub3Qgc2V0IHVwKSIKK21zZ3N0ciAidXBwYWNrYXQgKGVqIGtvbmYuKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjU1Cittc2dpZCAiaGFsZiBjb25maWd1cmVkIChjb25maWcgZmFpbGVkKSIKK21zZ3N0ciAiaGFsdmtvbmZpZ3VyZXJhdCAoa29uZi4gbWlzc2x5Y2thZCkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1NgorbXNnaWQgImF3YWl0aW5nIHRyaWdnZXIgcHJvY2Vzc2luZyIKK21zZ3N0ciAidsOkbnRhciBww6UgaGFudGVyaW5nIGF2IHV0bMO2c2FyZSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjU3Cittc2dpZCAidHJpZ2dlcmVkIgorbXNnc3RyICJ1dGzDtnN0IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTgKK21zZ2lkICJpbnN0YWxsZWQiCittc2dzdHIgImluc3RhbGxlcmF0IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjEKK21zZ2lkICJSZXF1aXJlZCIKK21zZ3N0ciAia3LDpHZkYSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjYyCittc2dpZCAiSW1wb3J0YW50IgorbXNnc3RyICJ2aWt0aWdhIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjMKK21zZ2lkICJTdGFuZGFyZCIKK21zZ3N0ciAibm9ybWFsYSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjY0Cittc2dpZCAiT3B0aW9uYWwiCittc2dzdHIgInZhbGJhcmEiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo2NQorbXNnaWQgIkV4dHJhIgorbXNnc3RyICJleHRyYSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjY2Cittc2dpZCAiIUJ1ZyEiCittc2dzdHIgIiFGZWwhIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjcKK21zZ2lkICJVbmNsYXNzaWZpZWQiCittc2dzdHIgIm9rbGFzc2lmaWNlcmFkZSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjcwCittc2dpZCAic3VnZ2VzdHMiCittc2dzdHIgImbDtnJlc2zDpXIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3MQorbXNnaWQgInJlY29tbWVuZHMiCittc2dzdHIgInJla29tbWVuZGVyYXIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3MgorbXNnaWQgImRlcGVuZHMgb24iCittc2dzdHIgImJlcm9yIHDDpSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjczCittc2dpZCAicHJlLWRlcGVuZHMgb24iCittc2dzdHIgImJlcm9yIGkgZsO2cnbDpGcgcMOlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzQKK21zZ2lkICJicmVha3MiCittc2dzdHIgImbDtnJzdMO2ciIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjc1Cittc2dpZCAiY29uZmxpY3RzIHdpdGgiCittc2dzdHIgImtyb2NrYXIgbWVkIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzYKK21zZ2lkICJwcm92aWRlcyIKK21zZ3N0ciAidGlsbGhhbmRhaMOlbGxlciIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjc3Cittc2dpZCAicmVwbGFjZXMiCittc2dzdHIgImVyc8OkdHRlciIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjc4Cittc2dpZCAiZW5oYW5jZXMiCittc2dzdHIgInV0w7ZrYXIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4MQorbXNnaWQgIlJlcSIKK21zZ3N0ciAiS3J2IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODIKK21zZ2lkICJJbXAiCittc2dzdHIgIlZpayIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjgzCittc2dpZCAiU3RkIgorbXNnc3RyICJTdGQiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4NAorbXNnaWQgIk9wdCIKK21zZ3N0ciAiVmFsIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODUKK21zZ2lkICJYdHIiCittc2dzdHIgIlh0ciIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjg2Cittc2dpZCAiYlVHIgorbXNnc3RyICJGRUwiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4NworbXNnaWQgIj8iCittc2dzdHIgIj8iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo5NSBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTE1Cittc2dpZCAiQnJva2VuIgorbXNnc3RyICJUcmFzaWdhIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6OTYKK21zZ2lkICJOZXciCittc2dzdHIgIk55YSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjk3Cittc2dpZCAiVXBkYXRlZCIKK21zZ3N0ciAiVXBwZGF0ZXJhZGUiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo5OAorbXNnaWQgIk9ic29sZXRlL2xvY2FsIgorbXNnc3RyICJHYW1sYS9sb2thbGEiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo5OQorbXNnaWQgIlVwLXRvLWRhdGUiCittc2dzdHIgIkFrdHVlbGxhIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTAwCittc2dpZCAiQXZhaWxhYmxlIgorbXNnc3RyICJUaWxsZ8OkbmdsaWdhIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTAxIGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTcKK21zZ2lkICJSZW1vdmVkIgorbXNnc3RyICJCb3J0dGFnbmEiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDIgZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExMQorbXNnaWQgIkJyb2tlbmx5IGluc3RhbGxlZCBwYWNrYWdlcyIKK21zZ3N0ciAiVHJhc2lnYSBpbnN0YWxsZXJhZGUgcGFrZXQiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDMKK21zZ2lkICJOZXdseSBhdmFpbGFibGUgcGFja2FnZXMiCittc2dzdHIgIk55YSB0aWxsZ8OkbmdsaWdhIHBha2V0IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTA0Cittc2dpZCAiVXBkYXRlZCBwYWNrYWdlcyAobmV3ZXIgdmVyc2lvbiBpcyBhdmFpbGFibGUpIgorbXNnc3RyICJVcHBkYXRlcmFkZSBwYWtldCAobnlhcmUgdmVyc2lvbiBmaW5ucykiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDUKK21zZ2lkICJPYnNvbGV0ZSBhbmQgbG9jYWwgcGFja2FnZXMgcHJlc2VudCBvbiBzeXN0ZW0iCittc2dzdHIgIkdhbWxhIG9jaCBsb2thbGEgcGFrZXQgc29tIGZpbm5zIHDDpSBzeXN0ZW1ldCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwNgorbXNnaWQgIlVwIHRvIGRhdGUgaW5zdGFsbGVkIHBhY2thZ2VzIgorbXNnc3RyICJQYWtldCBzb20gw6RyIMOgIGpvdXIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDcKK21zZ2lkICJBdmFpbGFibGUgcGFja2FnZXMgKG5vdCBjdXJyZW50bHkgaW5zdGFsbGVkKSIKK21zZ3N0ciAiVGlsbGfDpG5nbGlnYSBwYWtldCAoZWogaW5zdGFsbGVyYWRlIGp1c3QgbnUpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTA4Cittc2dpZCAiUmVtb3ZlZCBhbmQgbm8gbG9uZ2VyIGF2YWlsYWJsZSBwYWNrYWdlcyIKK21zZ3N0ciAiQm9ydHRhZ25hIG9jaCBlaiBsw6RuZ3JlIHRpbGxnw6RuZ2xpZ2EgcGFrZXQiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTIKK21zZ2lkICJJbnN0YWxsZWQgcGFja2FnZXMiCittc2dzdHIgIkluc3RhbGxlcmFkZSBwYWtldCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExMworbXNnaWQgIlJlbW92ZWQgcGFja2FnZXMgKGNvbmZpZ3VyYXRpb24gc3RpbGwgcHJlc2VudCkiCittc2dzdHIgIkJvcnR0YWduYSBwYWtldCAoa29uZmlndXJhdGlvbiBrdmFyKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExNAorbXNnaWQgIlB1cmdlZCBwYWNrYWdlcyBhbmQgdGhvc2UgbmV2ZXIgaW5zdGFsbGVkIgorbXNnc3RyICJSYWRlcmFkZSBwYWtldCBvY2ggZGUgc29tIGFsZHJpZyBpbnN0YWxsZXJhdHMiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTYKK21zZ2lkICJJbnN0YWxsZWQiCittc2dzdHIgIkluc3RhbGxlcmFkZSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExOAorbXNnaWQgIlB1cmdlZCIKK21zZ3N0ciAiUmFkZXJhZGUiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxOTgKK21zZ2lkICJkc2VsZWN0IC0gcmVjdXJzaXZlIHBhY2thZ2UgbGlzdGluZyIKK21zZ3N0ciAiZHNlbGVjdCAtIHJla3Vyc2l2IHBha2V0bGlzdG5pbmciCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxOTkKK21zZ2lkICJkc2VsZWN0IC0gaW5zcGVjdGlvbiBvZiBwYWNrYWdlIHN0YXRlcyIKK21zZ3N0ciAiZHNlbGVjdCAtIGluc3Bla3Rpb24gYXYgcGFrZXRzdGF0dXMiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMDAKK21zZ2lkICJkc2VsZWN0IC0gbWFpbiBwYWNrYWdlIGxpc3RpbmciCittc2dzdHIgImRzZWxlY3QgLSBodXZ1ZHBha2V0bGlzdGEiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMDgKK21zZ2lkICIgKGJ5IHNlY3Rpb24pIgorbXNnc3RyICIgKHBlciBhdmRlbG5pbmcpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjExCittc2dpZCAiIChhdmFpbC4sIHNlY3Rpb24pIgorbXNnc3RyICIgKHRpbGxnLiwgYXZkZWxuaW5nKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIxNAorbXNnaWQgIiAoc3RhdHVzLCBzZWN0aW9uKSIKK21zZ3N0ciAiIChzdGF0dXMsIGF2ZGVsbmluZykiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMjMKK21zZ2lkICIgKGJ5IHByaW9yaXR5KSIKK21zZ3N0ciAiIChlZnRlciBwcmlvcml0ZXQpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjI2Cittc2dpZCAiIChhdmFpbC4sIHByaW9yaXR5KSIKK21zZ3N0ciAiICh0aWxsZy4sIHByaW9yaXRldCkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMjkKK21zZ2lkICIgKHN0YXR1cywgcHJpb3JpdHkpIgorbXNnc3RyICIgKHN0YXR1cywgcHJpb3JpdGV0KSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIzOCBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjUwCittc2dpZCAiIChhbHBoYWJldGljYWxseSkiCittc2dzdHIgIiAoYWxmYWJldGlza3QpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjQxCittc2dpZCAiIChieSBhdmFpbGFiaWxpdHkpIgorbXNnc3RyICIgKGVmdGVyIHRpbGxnw6RuZ2xpZ2hldCkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNDQKK21zZ2lkICIgKGJ5IHN0YXR1cykiCittc2dzdHIgIiAoZWZ0ZXIgc3RhdHVzKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI1OAorbXNnaWQgIiBtYXJrOisvPS8tIHRlcnNlOnYgaGVscDo/IgorbXNnc3RyICIgbWFya2VyYTorLz0vLSBrb25jaXM6diBoasOkbHA6PyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI1OQorbXNnaWQgIiBtYXJrOisvPS8tIHZlcmJvc2U6diBoZWxwOj8iCittc2dzdHIgIiBtYXJrZXJhOisvPS8tIHByYXRzYW06diBoasOkbHA6PyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI2MAorbXNnaWQgIiB0ZXJzZTp2IGhlbHA6PyIKK21zZ3N0ciAiIGtvbmNpczp2IGhqw6RscDo/IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjYxCittc2dpZCAiIHZlcmJvc2U6diBoZWxwOj8iCittc2dzdHIgIiBwcmF0c2FtOnYgaGrDpGxwOj8iCisKKyM6IGRzZWxlY3QvcGtnaW5mby5jYzo4MAorbXNnaWQgIiIKKyJUaGUgbGluZSB5b3UgaGF2ZSBoaWdobGlnaHRlZCByZXByZXNlbnRzIG1hbnkgcGFja2FnZXM7IGlmIHlvdSBhc2sgdG8gIgorImluc3RhbGwsIHJlbW92ZSwgaG9sZCwgZXRjLiBpdCB5b3Ugd2lsbCBhZmZlY3QgYWxsIHRoZSBwYWNrYWdlcyB3aGljaCBtYXRjaCAiCisidGhlIGNyaXRlcmlvbiBzaG93bi5cbiIKKyJcbiIKKyJJZiB5b3UgbW92ZSB0aGUgaGlnaGxpZ2h0IHRvIGEgbGluZSBmb3IgYSBwYXJ0aWN1bGFyIHBhY2thZ2UgeW91IHdpbGwgc2VlICIKKyJpbmZvcm1hdGlvbiBhYm91dCB0aGF0IHBhY2thZ2UgZGlzcGxheWVkIGhlcmUuXG4iCisiWW91IGNhbiB1c2UgYG8nIGFuZCBgTycgdG8gY2hhbmdlIHRoZSBzb3J0IG9yZGVyIGFuZCBnaXZlIHlvdXJzZWxmIHRoZSAiCisib3Bwb3J0dW5pdHkgdG8gbWFyayBwYWNrYWdlcyBpbiBkaWZmZXJlbnQga2luZHMgb2YgZ3JvdXBzLiIKK21zZ3N0ciAiIgorIlJhZGVuIGR1IGhhciBtYXJrZXJhdCByZXByZXNlbnRlcmFyIGZsZXJhIHBha2V0LCBvbSBkdSBiZXIgb20gaW5zdGFsbGF0aW9uLCAiCisiYm9ydHRhZ25pbmcsIGt2YXJow6VsbG5pbmcsIGV0Yy4ga29tbWVyIGRldCBhdHQgcMOldmVya2EgYWxsYSBwYWtldCBzb20gIgorIm1hdGNoYXIgZGV0IHZpc2FkZSBrcml0ZXJpZXQuXG4iCisiXG4iCisiT20gZHUgZmx5dHRhciBtYXJrZXJpbmdlbiB0aWxsIGVuIHJhZCBmw7ZyIGV0dCBzcGVjaWZpa3QgcGFrZXQga29tbWVyIGR1IGF0dCAiCisic2UgaW5mb3JtYXRpb24gb20gZGV0IHBha2V0ZXQgaMOkci5cbiIKKyJEdSBrYW4gYW52w6RuZGEgXCJvXCIgb2NoIFwiT1wiIGbDtnIgYXR0IHbDpGxqYSBzb3J0ZXJpbmdzb3JkbmluZ2VuIG9jaCBnZSBkaWcgIgorInNqw6RsdiBtw7ZqbGlnaGV0ZW4gYXR0IG1hcmtlcmEgcGFrZXQgaSBvbGlrYSBzb3J0ZXJzIGdydXBwZXIuIgorCisjOiBkc2VsZWN0L3BrZ2luZm8uY2M6OTMKK21zZ2lkICJJbnRlcnJlbGF0aW9uc2hpcHMiCittc2dzdHIgIkluYsO2cmRlcyBiZXJvZW5kZW4iCisKKyM6IGRzZWxlY3QvcGtnaW5mby5jYzoxMTIKK21zZ2lkICJObyBkZXNjcmlwdGlvbiBhdmFpbGFibGUuIgorbXNnc3RyICJJbmdlbiBiZXNrcml2bmluZyBmaW5ucy4iCisKKyM6IGRzZWxlY3QvcGtnaW5mby5jYzoxMzAKK21zZ2lkICJJbnN0YWxsZWQgY29udHJvbCBmaWxlIGluZm9ybWF0aW9uIgorbXNnc3RyICJJbnN0YWxsZXJhZCBrb250cm9sbGZpbHNpbmZvcm1hdGlvbiBmw7ZyICIKKworIzogZHNlbGVjdC9wa2dpbmZvLmNjOjE0NgorbXNnaWQgIkF2YWlsYWJsZSBjb250cm9sIGZpbGUgaW5mb3JtYXRpb24iCittc2dzdHIgIlRpbGxnw6RuZ2xpZyBrb250cm9sbGZpbHNpbmZvcm1hdGlvbiBmw7ZyIgorCisjOiBkc2VsZWN0L3BrZ2xpc3QuY2M6NDE2Cittc2dpZCAiVGhlcmUgYXJlIG5vIHBhY2thZ2VzLiIKK21zZ3N0ciAiRGV0IGZpbm5zIGludGUgbsOlZ3JhIHBha2V0LiIKKworIzogZHNlbGVjdC9wa2dsaXN0LmNjOjUwNworbXNnaWQgImludmFsaWQgc2VhcmNoIG9wdGlvbiBnaXZlbiIKK21zZ3N0ciAib2dpbHRpZ3Qgc8O2a2ZsYWdnYSBnaXZlbiIKKworIzogZHNlbGVjdC9wa2dsaXN0LmNjOjUyMQorbXNnaWQgImVycm9yIGluIHJlZ3VsYXIgZXhwcmVzc2lvbiIKK21zZ3N0ciAiZmVsIGkgcmVndWxqw6RydCB1dHRyeWNrIgorCisjOiBkc2VsZWN0L3BrZ3N1Ymxpc3QuY2M6MTA3Cittc2dpZCAiIGRvZXMgbm90IGFwcGVhciB0byBiZSBhdmFpbGFibGVcbiIKK21zZ3N0ciAiIHZlcmthciBpbnRlIHZhcmEgdGlsbGfDpG5nbGlnXG4iCisKKyM6IGRzZWxlY3QvcGtnc3VibGlzdC5jYzoxMjcKK21zZ2lkICIgb3IgIgorbXNnc3RyICIgZWxsZXIgIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo1NworbXNnaWQgIkFsbCIKK21zZ3N0ciAiQWxsYSIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6NzkKK21zZ2lkICJBbGwgcGFja2FnZXMiCittc2dzdHIgIkFsbGEgcGFrZXQiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHBhY2thZ2VzIHdpdGhvdXQgYSBzZWN0aW9uIgorbXNnc3RyICIlcyBwYWtldCB1dGFuIGF2ZGVsbmluZyIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcGFja2FnZXMgaW4gc2VjdGlvbiAlcyIKK21zZ3N0ciAiJXMgaSBhdmRlbG5pbmcgJXMiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjkxCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzICVzIHBhY2thZ2VzIgorbXNnc3RyICIlcyAlcyBwYWtldCIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgJXMgcGFja2FnZXMgd2l0aG91dCBhIHNlY3Rpb24iCittc2dzdHIgIiVzICVzIHBha2V0IHV0YW4gYXZkZWxuaW5nIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo5NworIywgYy1mb3JtYXQKK21zZ2lkICIlcyAlcyBwYWNrYWdlcyBpbiBzZWN0aW9uICVzIgorbXNnc3RyICIlcyAlcyBwYWtldCBpIGF2ZGVsbmluZyAlcyIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6MTE4CisjLCBjLWZvcm1hdAorbXNnaWQgIiUtKnMgJXMlcyVzOyAgJXMgKHdhczogJXMpLiAgJXMiCittc2dzdHIgIiUtKnMgJXMlcyVzOyAgJXMgKHZhcjogJXMpLiAgJXMiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI2MworbXNnaWQgIkVycm9yIgorbXNnc3RyICJGZWwiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI2NworbXNnaWQgIkluc3RhbGxlZD8iCittc2dzdHIgIkluc3RhbGxlcmFkPyIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6MjcxCittc2dpZCAiT2xkIG1hcmsiCittc2dzdHIgIkdhbW1hbCBtYXJrZXJpbmciCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI3NQorbXNnaWQgIk1hcmtlZCBmb3IiCittc2dzdHIgIk1hcmtlcmFkIGbDtnIiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI3OAorbXNnaWQgIkVJT00iCittc2dzdHIgIkZJR00iCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI4MAorbXNnaWQgIlNlY3Rpb24iCittc2dzdHIgIkF2ZGVsbi4iCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI4MQorbXNnaWQgIlByaW9yaXR5IgorbXNnc3RyICJQcmlvcml0ZXQiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI4MgorbXNnaWQgIlBhY2thZ2UiCittc2dzdHIgIlBha2V0IgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyODYKK21zZ2lkICJJbnN0LnZlciIKK21zZ3N0ciAiSW5zdC52ZXIiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI4OQorbXNnaWQgIkF2YWlsLnZlciIKK21zZ3N0ciAiVGlsbGcudmVyIgorCisjfiBtc2dpZCAicmV0dXJuZWQgZXJyb3IgZXhpdCBzdGF0dXMgJWQuXG4iCisjfiBtc2dzdHIgInJldHVybmVyYWRlIGZlbGtvZCAlZC5cbiIKKworI34gbXNnaWQgIndhcyBpbnRlcnJ1cHRlZC5cbiIKKyN+IG1zZ3N0ciAiYXZicsO2dHMuXG4iCisKKyN+IG1zZ2lkICJ3YXMgdGVybWluYXRlZCBieSBhIHNpZ25hbDogJXMuXG4iCisjfiBtc2dzdHIgImF2YnLDtnRzIGF2IHNpZ25hbDogJXMuXG4iCisKKyN+IG1zZ2lkICIoSXQgbGVmdCBhIGNvcmVkdW1wLilcbiIKKyN+IG1zZ3N0ciAiKEzDpG1uYWRlIG1pbm5lc3V0c2tyaWZ0LilcbiIKKworI34gbXNnaWQgImZhaWxlZCB3aXRoIGFuIHVua25vd24gd2FpdCByZXR1cm4gY29kZSAlZC5cbiIKKyN+IG1zZ3N0ciAibWlzc2x5Y2thZGVzIG1lZCBva8OkbnQgdsOkbnRla29kICVkLlxuIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHJ1biAlLjI1MHMgcHJvY2VzcyBgJS4yNTBzJyIKKyN+IG1zZ3N0ciAia3VuZGUgaW50ZSBrw7ZyYSAlLjI1MHMgcHJvY2VzcyBcIiUuMjUwc1wiIgorCisjfiBtc2dpZCAiZmFpbGVkIGNvbmZpZyIKKyN+IG1zZ3N0ciAibWlzc2x5Y2thZCBrb25maWcuIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHdhaXQgZm9yICUuMjUwcyIKKyN+IG1zZ3N0ciAia3VuZGUgaW50ZSB2w6RudGEgcMOlICUuMjUwcyIKKworI34gbXNnaWQgImdvdCB3cm9uZyBjaGlsZCdzIHN0YXR1cyAtIGFza2VkIGZvciAlbGQsIGdvdCAlbGQiCisjfiBtc2dzdHIgImZpY2sgZmVsIGJhcm5zIHN0YXR1cyAtIGZyw6VnYWRlIGVmdGVyICVsZCwgZmljayAlbGQiCisKKyN+IG1zZ2lkICJSZWNvbW1lbmRlZCIKKyN+IG1zZ3N0ciAicmVrb21tZW5kZXJhZGUiCisKKyN+IG1zZ2lkICJDb250cmliIgorI34gbXNnc3RyICJjb250cmliIgorCisjfiBtc2dpZCAiUmVjIgorI34gbXNnc3RyICJSZWsiCisKKyN+IG1zZ2lkICJDdGIiCisjfiBtc2dzdHIgIkN0YiIKKworI34gbXNnaWQgIiIKKyN+ICJiYXNlbGlzdDo6c3RhcnRkaXNwbGF5KCkgZG9uZSAuLi5cbiIKKyN+ICJcbiIKKyN+ICIgeG1heD0lZCwgeW1heD0lZDtcbiIKKyN+ICJcbiIKKyN+ICIgdGl0bGVfaGVpZ2h0PSVkLCBjb2xoZWFkc19oZWlnaHQ9JWQsIGxpc3RfaGVpZ2h0PSVkO1xuIgorI34gIiB0aGlzc3RhdGVfaGVpZ2h0PSVkLCBpbmZvX2hlaWdodD0lZCwgd2hhdGluZm9faGVpZ2h0PSVkO1xuIgorI34gIlxuIgorI34gIiBjb2xoZWFkc19yb3c9JWQsIHRoaXNzdGF0ZV9yb3c9JWQsIGluZm9fcm93PSVkO1xuIgorI34gIiB3aGF0aW5mb19yb3c9JWQsIGxpc3Rfcm93PSVkO1xuIgorI34gIlxuIgorI34gbXNnc3RyICIiCisjfiAiYmFzZWxpc3Q6OnN0YXJ0ZGlzcGxheSgpIGRvbmUgLi4uXG4iCisjfiAiXG4iCisjfiAiIHhtYXg9JWQsIHltYXg9JWQ7XG4iCisjfiAiXG4iCisjfiAiIHRpdGxlX2hlaWdodD0lZCwgY29saGVhZHNfaGVpZ2h0PSVkLCBsaXN0X2hlaWdodD0lZDtcbiIKKyN+ICIgdGhpc3N0YXRlX2hlaWdodD0lZCwgaW5mb19oZWlnaHQ9JWQsIHdoYXRpbmZvX2hlaWdodD0lZDtcbiIKKyN+ICJcbiIKKyN+ICIgY29saGVhZHNfcm93PSVkLCB0aGlzc3RhdGVfcm93PSVkLCBpbmZvX3Jvdz0lZDtcbiIKKyN+ICIgd2hhdGluZm9fcm93PSVkLCBsaXN0X3Jvdz0lZDtcbiIKKyN+ICJcbiIKKworI34gbXNnaWQgIltub25lXSIKKyN+IG1zZ3N0ciAiW2luZ2VuXSIKKworI34gbXNnaWQgImVycm9yIHVuLWNhdGNoaW5nIHNpZ25hbCAlZDogJXNcbiIKKyN+IG1zZ3N0ciAia3VuZGUgaW50ZSBzdMOkbmdhIGF2IGhhbnRlcmluZyBhdiBzaWduYWwgJWQ6ICVzXG4iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gaWdub3JlIHNpZ25hbCAlZCBiZWZvcmUgcnVubmluZyAlLjI1MHMiCisjfiBtc2dzdHIgImt1bmRlIGludGUgaWdub3JlcmEgc2lnbmFsICVkIGlubmFuICUuMjUwcyBzdGFydGFzIgorCisjfiBtc2dpZCAiKG5vIGNsaWVudGRhdGEpIgorI34gbXNnc3RyICIoaW5nZW4ga2xpZW50ZGF0YSkiCisKKyN+IG1zZ2lkICI8bnVsbD4iCisjfiBtc2dzdHIgIjx0b20+IgorCisjfiBtc2dpZCAiaW50ZXJyZWxhdGlvbnNoaXBzIGFmZmVjdGluZyAiCisjfiBtc2dzdHIgImJlcm9lbmRlbiBzb20gcMOldmVya2FyICIKKworI34gbXNnaWQgImRlc2NyaXB0aW9uIG9mICIKKyN+IG1zZ3N0ciAiYmVza3Jpdm5pbmcgYXYgIgorCisjfiBtc2dpZCAiZGVzY3JpcHRpb24iCisjfiBtc2dzdHIgImJlc2tyaXZuaW5nIgorCisjfiBtc2dpZCAiY3VycmVudGx5IGluc3RhbGxlZCBjb250cm9sIGluZm8iCisjfiBtc2dzdHIgIm51IGluc3RhbGxlcmFkIGtvbnRyb2xsaW5mbyIKKworI34gbXNnaWQgImF2YWlsYWJsZSB2ZXJzaW9uIG9mIGNvbnRyb2wgaW5mbyBmb3IgIgorI34gbXNnc3RyICJ0aWxsZ8OkbmdsaWcgdmVyc2lvbiBhdiBrb250cm9sbGluZm8gZsO2ciAiCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vdGwuZ21vIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL3RsLmdtbwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zODZiOGM2Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL3RsLmdtbwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vdGwucG8gYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vdGwucG8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNWRjYTBhMAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby90bC5wbwpAQCAtMCwwICsxLDE3NjYgQEAKKyMgVGFnYWxvZyB0cmFuc2xhdGlvbiBmaWxlIGZvciBkcGtnCisjIENvcHlyaWdodCAoQykgMjAwNSBFcmljIFBhcmVqYQorIyBUaGlzIGZpbGUgaXMgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIHNhbWUgbGljZW5zZSBhcyB0aGUgcGFja2FnZSBkcGtnLgorIyBFcmljIFBhcmVqYSwgMjAwNQorIworIworbXNnaWQgIiIKK21zZ3N0ciAiIgorIlByb2plY3QtSWQtVmVyc2lvbjogZHBrZyAxLjEzXG4iCisiUmVwb3J0LU1zZ2lkLUJ1Z3MtVG86IGRlYmlhbi1kcGtnQGxpc3RzLmRlYmlhbi5vcmdcbiIKKyJQT1QtQ3JlYXRpb24tRGF0ZTogMjAxMS0xMC0xNCAwNzoxMSswMjAwXG4iCisiUE8tUmV2aXNpb24tRGF0ZTogMjAwNi0wMi0xNyAwODo1OCswMjAwXG4iCisiTGFzdC1UcmFuc2xhdG9yOiBFcmljIFBhcmVqYSA8eGVub3NAdXBtLmVkdS5waD5cbiIKKyJMYW5ndWFnZS1UZWFtOiBUYWdhbG9nIDxkZWJpYW4tdGxAYmFud2EudXBtLmVkdS5waD5cbiIKKyJMYW5ndWFnZTogdGxcbiIKKyJNSU1FLVZlcnNpb246IDEuMFxuIgorIkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD1VVEYtOFxuIgorIkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXRcbiIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxMjUKK21zZ2lkICJTZWFyY2ggZm9yID8gIgorbXNnc3RyICJNYWdoYW5hcCBuZyA/ICIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxNDcKK21zZ2lkICJFcnJvcjogIgorbXNnc3RyICJFcnJvcjogIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE3OAorbXNnaWQgIkhlbHA6ICIKK21zZ3N0ciAiVHVsb25nOiAiCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MTg0Cittc2dpZCAiUHJlc3MgPyBmb3IgaGVscCBtZW51LCAuIGZvciBuZXh0IHRvcGljLCA8c3BhY2U+IHRvIGV4aXQgaGVscC4iCittc2dzdHIgIiIKKyJQaW5kdXRpbiBhbmcgPyBwYXJhIHNhIG1lbnUgbmcgdHVsb25nLCAuIHBhcmEgc2Egc3VzdW5vZCBuYSBwYWtzYSxcbiIKKyI8cHV3YW5nPiB1cGFuZyBsdW1hYmFzIHNhIHR1bG9uZy4iCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MTkxCittc2dpZCAiSGVscCBpbmZvcm1hdGlvbiBpcyBhdmFpbGFibGUgdW5kZXIgdGhlIGZvbGxvd2luZyB0b3BpY3M6IgorbXNnc3RyICIiCisiQW5nIG1hZ2FnYW1pdCBuaXlvbmcgaW1wb3JtYXN5b25nIG1ha2FrYXR1bG9uZyBheSBzYSBtZ2Egc3VtdXN1bm9kIG5hIHBha3NhOiIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxOTkKK21zZ2lkICIiCisiUHJlc3MgYSBrZXkgZnJvbSB0aGUgbGlzdCBhYm92ZSwgPHNwYWNlPiBvciBgcScgdG8gZXhpdCBoZWxwLFxuIgorIiAgb3IgYC4nIChmdWxsIHN0b3ApIHRvIHJlYWQgZWFjaCBoZWxwIHBhZ2UgaW4gdHVybi4gIgorbXNnc3RyICIiCisiUGluZHV0aW4gYW5nIHRpa2xhZG8gbXVsYSBzYSBsaXN0YWhhbiBzYSBpdGFhcywgPHB1d2FuZz4gbyBgcScgdXBhbmcgIgorImx1bWFiYXNcbiIKKyJzYSB0dWxvbmcgbyBgLicgKHR1bGRvaykgdXBhbmcgYmFzYWhpbiBhbmcgYmF3YXQgcGFoaW5hIG5nIHR1bG9uZy4gIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjIwNQorbXNnaWQgImVycm9yIHJlYWRpbmcga2V5Ym9hcmQgaW4gaGVscCIKK21zZ3N0ciAiZXJyb3Igc2EgcGFnYmFzYSBuZyB0aWtsYWRvIGhhYmFuZyBuYXNhIG1vZG9uZyBwYWd0dWxvbmciCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6NTcKK21zZ2lkICJpb2N0bChUSU9DR1dJTlNaKSBmYWlsZWQiCittc2dzdHIgImJpZ28gYW5nIGlvY3RsKFRJT0NHV0lOU1opIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjYwCittc2dpZCAiZG91cGRhdGUgaW4gU0lHV0lOQ0ggaGFuZGxlciBmYWlsZWQiCittc2dzdHIgImJpZ28gYW5nIGRvdXBkYXRlIHNhIGhhbmRsZXIgbmcgU0lHV0lOQ0giCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6NjcKK21zZ2lkICJmYWlsZWQgdG8gcmVzdG9yZSBvbGQgU0lHV0lOQ0ggc2lnYWN0IgorbXNnc3RyICJiaWdvbmcgaWJhbGlrIGFuZyBsdW1hbmcgU0lHV0lOQ0ggc2lnYWN0IgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjY5Cittc2dpZCAiZmFpbGVkIHRvIHJlc3RvcmUgb2xkIHNpZ25hbCBtYXNrIgorbXNnc3RyICJiaWdvbmcgaWJhbGlrIGFuZyBsdW1hbmcgbWFza2FyYW5nIGh1ZHlhdCIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo3OQorbXNnaWQgImZhaWxlZCB0byBnZXQgb2xkIHNpZ25hbCBtYXNrIgorbXNnc3RyICJiaWdvbmcgbWFrdWhhIGFuZyBsdW1hbmcgbWFza2FyYW5nIGh1ZHlhdCIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo4MAorbXNnaWQgImZhaWxlZCB0byBnZXQgb2xkIFNJR1dJTkNIIHNpZ2FjdCIKK21zZ3N0ciAiYmlnb25nIG1ha3VoYSBhbmcgbHVtYW5nIFNJR1dJTkNIIHNpZ2FjdCIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo4NAorbXNnaWQgImZhaWxlZCB0byBibG9jayBTSUdXSU5DSCIKK21zZ3N0ciAiYmlnb25nIGloYXJhbmcgYW5nIFNJR1dJTkNIIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjg5Cittc2dpZCAiZmFpbGVkIHRvIHNldCBuZXcgU0lHV0lOQ0ggc2lnYWN0IgorbXNnc3RyICJiaWdvbmcgaXRha2RhIGFuZyBiYWdvbmcgU0lHV0lOQ0ggc2lnYWN0IgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjEyNgorbXNnaWQgImZhaWxlZCB0byBhbGxvY2F0ZSBjb2xvdXIgcGFpciIKK21zZ3N0ciAiYmlnbyBhbmcgcGFnbGFhbiBuZyBwYXJlcyBuZyBrdWxheSIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxNjcKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHRpdGxlIHdpbmRvdyIKK21zZ3N0ciAiYmlnbyBhbmcgcGFnbGlraGEgbmcgYmludGFuYSBuZyBwYW1hZ2F0IgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE3MQorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgd2hhdGluZm8gd2luZG93IgorbXNnc3RyICJiaWdvIGFuZyBwYWdsaWtoYSBuZyBiaW50YW5hIG5nIHdoYXRpbmZvIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE3NQorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgYmFzZWxpc3QgcGFkIgorbXNnc3RyICJiaWdvIGFuZyBwYWdsaWtoYSBuZyBiYXNlbGlzdCBwYWQiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTc4Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBoZWFkaW5nIHBhZCIKK21zZ3N0ciAiYmlnbyBhbmcgcGFnbGlraGEgbmcgaGVhZGluZyBwYWQiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTgyCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSB0aGlzc3RhdGUgcGFkIgorbXNnc3RyICJiaWdvIGFuZyBwYWdsaWtoYSBuZyB0aGlzc3RhdGUgcGFkIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE4NgorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgaW5mbyBwYWQiCittc2dzdHIgImJpZ28gYW5nIHBhZ2xpa2hhIG5nIGluZm8gcGFkIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE5MQorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgcXVlcnkgd2luZG93IgorbXNnc3RyICJiaWdvIGFuZyBwYWdsaWtoYSBuZyBiaW50YW5hIG5nIHRhbm9uZyIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoyNTUKKyMsIGZ1enp5Cittc2dpZCAiS2V5YmluZGluZ3MiCittc2dzdHIgIm1nYSBrZXliaW5kaW5nIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjMwMworIywgYy1mb3JtYXQKK21zZ2lkICIgIC0tICVkJSUsIHByZXNzICIKK21zZ3N0ciAiICAtLSAlZCUlLCBwaW5kdXRpbiAiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MzA2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGZvciBtb3JlIgorbXNnc3RyICIlcyB1cGFuZyBzdW11bG9uZyIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzozMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgdG8gZ28gYmFjayIKK21zZ3N0ciAiJXMgdXBhbmcgYnVtYWxpayIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzo3OAorbXNnaWQgIltub3QgYm91bmRdIgorbXNnc3RyICJbaGluZGkgbmFrYXRha2RhXSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzo4MgorIywgYy1mb3JtYXQKK21zZ2lkICJbdW5rOiAlZF0iCittc2dzdHIgIltkaSBraWxhbGE6ICVkXSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxMzkKK21zZ2lkICJTY3JvbGwgb253YXJkcyB0aHJvdWdoIGhlbHAvaW5mb3JtYXRpb24iCittc2dzdHIgIlVtYWJhbnRlIHNhIHR1bG9uZy9pbXBvcm1hc3lvbiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDAKK21zZ2lkICJTY3JvbGwgYmFja3dhcmRzIHRocm91Z2ggaGVscC9pbmZvcm1hdGlvbiIKK21zZ3N0ciAiVW1hdHJhcyBzYSB0dWxvbmcvaW1wb3JtYXN5b24iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQxCittc2dpZCAiTW92ZSB1cCIKK21zZ3N0ciAiVW1ha3lhdCIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDIKK21zZ2lkICJNb3ZlIGRvd24iCittc2dzdHIgIkJ1bWFiYSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDMKK21zZ2lkICJHbyB0byB0b3Agb2YgbGlzdCIKK21zZ3N0ciAiUHVtdW50YSBzYSBwdW5vIG5nIGxpc3RhaGFuIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0NAorbXNnaWQgIkdvIHRvIGVuZCBvZiBsaXN0IgorbXNnc3RyICJQdW11bnRhIHNhIGR1bG8gbmcgbGlzdGFoYW4iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ1Cittc2dpZCAiUmVxdWVzdCBoZWxwIChjeWNsZSB0aHJvdWdoIGhlbHAgc2NyZWVucykiCittc2dzdHIgIkh1bWluZ2kgbmcgdHVsb25nIChpaWtvdCBzYSBtZ2EgdGFiaW5nIG5nIHBheW8pIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0NgorbXNnaWQgIkN5Y2xlIHRocm91Z2ggaW5mb3JtYXRpb24gZGlzcGxheXMiCittc2dzdHIgIlVtaWtvdCBzYSBtZ2EgdGFiaW5nIG5nIGltcG9ybWFzeW9uIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0NworbXNnaWQgIlJlZHJhdyBkaXNwbGF5IgorbXNnc3RyICJJZ3VoaXQgbXVsaSBhbmcgdGFiaW5nIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0OAorbXNnaWQgIlNjcm9sbCBvbndhcmRzIHRocm91Z2ggbGlzdCBieSAxIGxpbmUiCittc2dzdHIgIlVtYWJhbnRlIHNhIGxpc3RhaGFuIG5nIGlzYW5nIGxpbnlhIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0OQorbXNnaWQgIlNjcm9sbCBiYWNrd2FyZHMgdGhyb3VnaCBsaXN0IGJ5IDEgbGluZSIKK21zZ3N0ciAiVW1hdHJhcyBzYSBsaXN0YWhhbiBuZyBpc2FuZyBsaW55YSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTAKK21zZ2lkICJTY3JvbGwgb253YXJkcyB0aHJvdWdoIGhlbHAvaW5mb3JtYXRpb24gYnkgMSBsaW5lIgorbXNnc3RyICJVbWFiYW50ZSBzYSB0dWxvbmcvaW1wb3JtYXN5b24gbmcgaXNhbmcgbGlueWEiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTUxCittc2dpZCAiU2Nyb2xsIGJhY2t3YXJkcyB0aHJvdWdoIGhlbHAvaW5mb3JtYXRpb24gYnkgMSBsaW5lIgorbXNnc3RyICJVbWF0cmFzIHNhIHR1bG9uZy9pbXBvcm1hc3lvbiBuZyBpc2FuZyBsaW55YSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTIKK21zZ2lkICJTY3JvbGwgb253YXJkcyB0aHJvdWdoIGxpc3QiCittc2dzdHIgIlVtYWJhbnRlIHNhIGxpc3RhaGFuIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1MworbXNnaWQgIlNjcm9sbCBiYWNrd2FyZHMgdGhyb3VnaCBsaXN0IgorbXNnc3RyICJVbWF0cmFzIHNhIGxpc3RhaGFuIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1NgorbXNnaWQgIk1hcmsgcGFja2FnZShzKSBmb3IgaW5zdGFsbGF0aW9uIgorbXNnc3RyICJNYXJrYWhhbiBhbmcgKG1nYSkgcGFrZXRlIG5hIGlsdWx1a2xvayIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTcKK21zZ2lkICJNYXJrIHBhY2thZ2UocykgZm9yIGRlaW5zdGFsbGF0aW9uIgorbXNnc3RyICJNYXJrYWhhbiBhbmcgKG1nYSkgcGFrZXRlIG5hIHRhdGFuZ2dhbGluIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1OAorbXNnaWQgIk1hcmsgcGFja2FnZShzKSBmb3IgZGVpbnN0YWxsIGFuZCBwdXJnZSIKK21zZ3N0ciAiTWFya2FoYW4gYW5nIChtZ2EpIHBha2V0ZSBuYSB0YXRhbmdnYWxpbiBhdCBwdXB1cmdhaGluIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1OQorbXNnaWQgIk1ha2UgaGlnaGxpZ2h0IG1vcmUgc3BlY2lmaWMiCittc2dzdHIgIkdhd2luZyBtYXMtdGl5YWsgYW5nIGhpZ2hsaWdodCIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjAKK21zZ2lkICJNYWtlIGhpZ2hsaWdodCBsZXNzIHNwZWNpZmljIgorbXNnc3RyICJHYXdpbmcgbWFzLW1hbGF3YWsgYW5nIGhpZ2hsaWdodCIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjEKK21zZ2lkICJTZWFyY2ggZm9yIGEgcGFja2FnZSB3aG9zZSBuYW1lIGNvbnRhaW5zIGEgc3RyaW5nIgorbXNnc3RyICJIYW5hcGluIGFuZyBwYWtldGVuZyBtYXkgcGFuZ2FsYW5nIG5hZ2xhbGFtYW4gbmcgaXNhbmcgc3RyaW5nIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2MgorbXNnaWQgIlJlcGVhdCBsYXN0IHNlYXJjaC4iCittc2dzdHIgIlVsaXRpbiBhbmcgaHVsaW5nIHBhZ2hhaGFuYXAuIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2MworbXNnaWQgIlN3YXAgc29ydCBvcmRlciBwcmlvcml0eS9zZWN0aW9uIgorbXNnc3RyICJJcGFncGFsaXQgYW5nIHBhZ2thc3Vub2Qtc3Vub2QgYW50YXMvc2Vrc3lvbiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjQKK21zZ2lkICJRdWl0LCBjb25maXJtaW5nLCBhbmQgY2hlY2tpbmcgZGVwZW5kZW5jaWVzIgorbXNnc3RyICJMdW1hYmFzLCB0aXlha2luIGF0IHN1cmlpbiBhbmcgbWdhIGRlcGVuZGVuc2l5YSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjUKK21zZ2lkICJRdWl0LCBjb25maXJtaW5nIHdpdGhvdXQgY2hlY2siCittc2dzdHIgIkx1bWFiYXMsIHRpeWFraW4gbmd1bml0IHdhbGFuZyBwYWdzdXN1cmkiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY2Cittc2dpZCAiUXVpdCwgcmVqZWN0aW5nIGNvbmZsaWN0L2RlcGVuZGVuY3kgc3VnZ2VzdGlvbnMiCittc2dzdHIgIiIKKyJMdW1hYmFzLCBodXdhZyB0YW5nZ2FwaW4gYW5nIG1nYSBtdW5na2FoaSB0dW5na29sIHNhIHR1bmdnYWxpYW4vZGVwZW5kZW5zaXlhIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2NworbXNnaWQgIkFib3J0IC0gcXVpdCB3aXRob3V0IG1ha2luZyBjaGFuZ2VzIgorbXNnc3RyICJIdW1pbnRvIC0gbHVtYWJhcyBuYSB3YWxhbmcgYmluYWJhZ28iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY4Cittc2dpZCAiUmV2ZXJ0IHRvIG9sZCBzdGF0ZSBmb3IgYWxsIHBhY2thZ2VzIgorbXNnc3RyICJCdW1hbGlrIHNhIG5ha2FyYWFuZyBrYWxhZ2F5YW4gcGFyYSBzYSBsYWhhdCBuZyBtZ2EgcGFrZXRlIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2OQorbXNnaWQgIlJldmVydCB0byBzdWdnZXN0ZWQgc3RhdGUgZm9yIGFsbCBwYWNrYWdlcyIKK21zZ3N0ciAiQnVtYWxpayBzYSBtdW5na2FoaW5nIGthbGFnYXlhbiBwYXJhIHNhIGxhaGF0IG5nIG1nYSBwYWtldGUiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTcwCittc2dpZCAiUmV2ZXJ0IHRvIGRpcmVjdGx5IHJlcXVlc3RlZCBzdGF0ZSBmb3IgYWxsIHBhY2thZ2VzIgorbXNnc3RyICJCdW1hbGlrIHNhIGhpbmlsaW5nIG5hIGthbGFnYXlhbiBwYXJhIHNhIGxhaGF0IG5nIG1nYSBwYWtldGUiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTcxCisjLCBmdXp6eQorbXNnaWQgIlJldmVydCB0byBjdXJyZW50bHkgaW5zdGFsbGVkIHN0YXRlIGZvciBhbGwgcGFja2FnZXMiCittc2dzdHIgIkJ1bWFsaWsgc2EgaGluaWxpbmcgbmEga2FsYWdheWFuIHBhcmEgc2EgbGFoYXQgbmcgbWdhIHBha2V0ZSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNzQKK21zZ2lkICJTZWxlY3QgY3VycmVudGx5LWhpZ2hsaWdodGVkIGFjY2VzcyBtZXRob2QiCittc2dzdHIgIlBpbGlpbiBhbmcgbmFrYS1oaWdobGlnaHQgbmEgcGFyYWFuIG5nIHBhZy1ha3NlcyIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNzUKK21zZ2lkICJRdWl0IHdpdGhvdXQgY2hhbmdpbmcgc2VsZWN0ZWQgYWNjZXNzIG1ldGhvZCIKK21zZ3N0ciAiTHVtYWJhcyBuYSBoaW5kaSBiaW5hYmFnbyBhbmcgcGluaWxpbmcgcGFyYWFuIG5nIHBhZy1ha3NlcyIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoyOQorbXNnaWQgIktleXN0cm9rZXMiCittc2dzdHIgIlRpa2xhZG8iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MjkKKyMsIGZ1enp5Cittc2dpZCAiIgorIk1vdGlvbiBrZXlzOiBOZXh0L1ByZXZpb3VzLCBUb3AvRW5kLCBVcC9Eb3duLCBCYWNrd2FyZHMvRm9yd2FyZHM6XG4iCisiICBqLCBEb3duLWFycm93ICAgICAgICAgaywgVXAtYXJyb3cgICAgICAgICAgICAgbW92ZSBoaWdobGlnaHRcbiIKKyIgIE4sIFBhZ2UtZG93biwgU3BhY2UgICBQLCBQYWdlLXVwLCBCYWNrc3BhY2UgICBzY3JvbGwgbGlzdCBieSAxIHBhZ2VcbiIKKyIgIF5uICAgICAgICAgICAgICAgICAgICBecCAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgbGlzdCBieSAxIGxpbmVcbiIKKyIgIHQsIEhvbWUgICAgICAgICAgICAgICBlLCBFbmQgICAgICAgICAgICAgICAgICBqdW1wIHRvIHRvcC9lbmQgb2YgbGlzdFxuIgorIiAgdSAgICAgICAgICAgICAgICAgICAgIGQgICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIGJ5IDEgcGFnZVxuIgorIiAgXnUgICAgICAgICAgICAgICAgICAgIF5kICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIGJ5IDEgbGluZVxuIgorIiAgQiwgTGVmdC1hcnJvdyAgICAgICAgIEYsIFJpZ2h0LWFycm93ICAgICAgICAgIHBhbiBkaXNwbGF5IGJ5IDEvMyBzY3JlZW5cbiIKKyIgIF5iICAgICAgICAgICAgICAgICAgICBeZiAgICAgICAgICAgICAgICAgICAgICBwYW4gZGlzcGxheSBieSAxIGNoYXJhY3RlclxuIgorIlxuIgorIk1hcmsgcGFja2FnZXMgZm9yIGxhdGVyIHByb2Nlc3Npbmc6XG4iCisiICssIEluc2VydCAgaW5zdGFsbCBvciB1cGdyYWRlICAgICAgPSwgSCAgaG9sZCBpbiBwcmVzZW50IHN0YXRlXG4iCisiIC0sIERlbGV0ZSAgcmVtb3ZlICAgICAgICAgICAgICAgICAgOiwgRyAgdW5ob2xkOiB1cGdyYWRlIG9yIGxlYXZlICIKKyJ1bmluc3RhbGxlZFxuIgorIiBfICAgICAgICAgIHJlbW92ZSAmIHB1cmdlIGNvbmZpZ1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1pc2NlbGxhbmVvdXM6XG4iCisiUXVpdCwgZXhpdCwgb3ZlcndyaXRlIChub3RlIGNhcGl0YWxzISk6ICAgICAgID8sIEYxIHJlcXVlc3QgaGVscCAoYWxzbyAiCisiSGVscClcbiIKKyIgUmV0dXJuICBDb25maXJtLCBxdWl0IChjaGVjayBkZXBlbmRlbmNpZXMpICAgaSwgSSAgdG9nZ2xlL2N5Y2xlIGluZm8gIgorImRpc3BsYXlzXG4iCisiICAgUSAgICAgQ29uZmlybSwgcXVpdCAob3ZlcnJpZGUgZGVwLnMpICAgICAgIG8sIE8gIGN5Y2xlIHRocm91Z2ggc29ydCAiCisib3B0aW9uc1xuIgorIiBYLCBFc2MgIGVYaXQsIGFiYW5kb25pbmcgYW55IGNoYW5nZXMgbWFkZSAgICB2LCBWICBjaGFuZ2Ugc3RhdHVzIGRpc3BsYXkgIgorIm9wdHNcbiIKKyIgICBSICAgICBSZXZlcnQgdG8gc3RhdGUgYmVmb3JlIHRoaXMgbGlzdCAgICAgIF5sICAgcmVkcmF3IGRpc3BsYXlcbiIKKyIgICBVICAgICBzZXQgYWxsIHRvIHNVZ2dlc3RlZCBzdGF0ZSAgICAgICAgICAgICAvICAgc2VhcmNoIChSZXR1cm4gdG8gIgorImNhbmNlbClcbiIKKyIgICBEICAgICBzZXQgYWxsIHRvIERpcmVjdGx5IHJlcXVlc3RlZCBzdGF0ZSAgbiwgXFwgIHJlcGVhdCBsYXN0IHNlYXJjaFxuIgorbXNnc3RyICIiCisiUGFnLWdhbGF3OiBTdW5vZC9OYWthcmFhbiwgUHVuby9EdWxvLCBUYWFzL0JhYmEsIFBhYXRyYXMvUGFhYmFudGU6XG4iCisiICBEb3duLWFycm93LCBqICAgICAgICAgVXAtYXJyb3csIGsgICAgICAgICAgICAgbW92ZSBoaWdobGlnaHRcbiIKKyIgIE4sIFBhZ2UtZG93biwgU3BhY2UgICBQLCBQYWdlLXVwLCBCYWNrc3BhY2UgICBzY3JvbGwgbGlzdCBieSAxIHBhZ2VcbiIKKyIgIF5uICAgICAgICAgICAgICAgICAgICBecCAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgbGlzdCBieSAxIGxpbmVcbiIKKyIgIHQsIEhvbWUgICAgICAgICAgICAgICBlLCBFbmQgICAgICAgICAgICAgICAgICBqdW1wIHRvIHRvcC9lbmQgb2YgbGlzdFxuIgorIiAgdSAgICAgICAgICAgICAgICAgICAgIGQgICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIGJ5IDEgcGFnZVxuIgorIiAgXnUgICAgICAgICAgICAgICAgICAgIF5kICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIGJ5IDEgbGluZVxuIgorIiAgQiwgTGVmdC1hcnJvdyAgICAgICAgIEYsIFJpZ2h0LWFycm93ICAgICAgICAgIHBhbiBkaXNwbGF5IGJ5IDEvMyBzY3JlZW5cbiIKKyIgIF5iICAgICAgICAgICAgICAgICAgICBeZiAgICAgICAgICAgICAgICAgICAgICBwYW4gZGlzcGxheSBieSAxIGNoYXJhY3RlclxuIgorIlxuIgorIk1hcmthaGFuIGFuZyBtZ2EgcGFrZXRlIHBhcmEgc2EgcGFncHJvc2VzbyBtYW1heWE6XG4iCisiICssIEluc2VydCAgaW5zdGFsbCBvciB1cGdyYWRlICAgICAgPSwgSCAgaG9sZCBpbiBwcmVzZW50IHN0YXRlXG4iCisiIC0sIERlbGV0ZSAgcmVtb3ZlICAgICAgICAgICAgICAgICAgOiwgRyAgdW5ob2xkOiB1cGdyYWRlIG9yIGxlYXZlICIKKyJ1bmluc3RhbGxlZFxuIgorIiBfICAgICAgICAgIHJlbW92ZSAmIHB1cmdlIGNvbmZpZ1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1pc2NlbGxhbmVvdXM6XG4iCisiUXVpdCwgZXhpdCwgb3ZlcndyaXRlIChub3RlIGNhcGl0YWxzISk6ICAgICAgID8sIEYxIGh1bWluZ2kgbmcgdHVsb25nIChhbHNvICIKKyJIZWxwKVxuIgorIiBSZXR1cm4gIENvbmZpcm0sIHF1aXQgKGNoZWNrIGRlcGVuZGVuY2llcykgICBpLCBJICB0b2dnbGUvY3ljbGUgaW5mbyAiCisiZGlzcGxheXNcbiIKKyIgICBRICAgICBDb25maXJtLCBxdWl0IChvdmVycmlkZSBkZXAucykgICAgICAgbywgTyAgY3ljbGUgdGhyb3VnaCBzb3J0ICIKKyJvcHRpb25zXG4iCisiIFgsIEVzYyAgZVhpdCwgYWJhbmRvbmluZyBhbnkgY2hhbmdlcyBtYWRlICAgIHYsIFYgIGNoYW5nZSBzdGF0dXMgZGlzcGxheSAiCisib3B0c1xuIgorIiAgIFIgICAgIFJldmVydCB0byBzdGF0ZSBiZWZvcmUgdGhpcyBsaXN0ICAgICAgXmwgICByZWRyYXcgZGlzcGxheVxuIgorIiAgIFUgICAgIHNldCBhbGwgdG8gc1VnZ2VzdGVkIHN0YXRlICAgICAgICAgICAgIC8gICBzZWFyY2ggKFJldHVybiB0byAiCisiY2FuY2VsKVxuIgorIiAgIEQgICAgIHNldCBhbGwgdG8gRGlyZWN0bHkgcmVxdWVzdGVkIHN0YXRlICBuLCBcXCAgdWxpdGluIGFuZyBodWxpbmcgIgorInBhZ2hhbmFwXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6NTUKK21zZ2lkICJJbnRyb2R1Y3Rpb24gdG8gcGFja2FnZSBzZWxlY3Rpb25zIgorbXNnc3RyICJQYWdwYXBha2lsYWxhIHNhIHBhZ3BpbGkgbmcgbWdhIHBha2V0ZSIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo1NQorbXNnaWQgIiIKKyJXZWxjb21lIHRvIGRzZWxlY3QncyBtYWluIHBhY2thZ2UgbGlzdGluZy5cbiIKKyJcbiIKKyJZb3Ugd2lsbCBiZSBwcmVzZW50ZWQgd2l0aCBhIGxpc3Qgb2YgcGFja2FnZXMgd2hpY2ggYXJlIGluc3RhbGxlZCBvciAiCisiYXZhaWxhYmxlXG4iCisiZm9yIGluc3RhbGxhdGlvbi4gIFlvdSBjYW4gbmF2aWdhdGUgYXJvdW5kIHRoZSBsaXN0IHVzaW5nIHRoZSBjdXJzb3Iga2V5cyxcbiIKKyJtYXJrIHBhY2thZ2VzIGZvciBpbnN0YWxsYXRpb24gKHVzaW5nIGArJykgb3IgZGVpbnN0YWxsYXRpb24gKHVzaW5nIGAtJykuXG4iCisiUGFja2FnZXMgY2FuIGJlIG1hcmtlZCBlaXRoZXIgc2luZ2x5IG9yIGluIGdyb3VwczsgaW5pdGlhbGx5IHlvdSB3aWxsIHNlZSAiCisidGhhdFxuIgorInRoZSBsaW5lIGBBbGwgcGFja2FnZXMnIGlzIHNlbGVjdGVkLiAgYCsnLCBgLScgYW5kIHNvIG9uIHdpbGwgYWZmZWN0IGFsbCAiCisidGhlXG4iCisicGFja2FnZXMgZGVzY3JpYmVkIGJ5IHRoZSBoaWdobGlnaHRlZCBsaW5lLlxuIgorIlxuIgorIlNvbWUgb2YgeW91ciBjaG9pY2VzIHdpbGwgY2F1c2UgY29uZmxpY3RzIG9yIGRlcGVuZGVuY3kgcHJvYmxlbXM7IHlvdSB3aWxsICIKKyJiZVxuIgorImdpdmVuIGEgc3ViLWxpc3Qgb2YgdGhlIHJlbGV2YW50IHBhY2thZ2VzLCBzbyB0aGF0IHlvdSBjYW4gc29sdmUgdGhlICIKKyJwcm9ibGVtcy5cbiIKKyJcbiIKKyJZb3Ugc2hvdWxkIHJlYWQgdGhlIGxpc3Qgb2Yga2V5cyBhbmQgdGhlIGV4cGxhbmF0aW9ucyBvZiB0aGUgZGlzcGxheS5cbiIKKyJNdWNoIG9uLWxpbmUgaGVscCBpcyBhdmFpbGFibGUsIHBsZWFzZSBtYWtlIHVzZSBvZiBpdCAtIHByZXNzIGA/JyBhdFxuIgorImFueSB0aW1lIGZvciBoZWxwLlxuIgorIlxuIgorIldoZW4geW91IGhhdmUgZmluaXNoZWQgc2VsZWN0aW5nIHBhY2thZ2VzLCBwcmVzcyA8ZW50ZXI+IHRvIGNvbmZpcm0gIgorImNoYW5nZXMsXG4iCisib3IgYFgnIHRvIHF1aXQgd2l0aG91dCBzYXZpbmcgY2hhbmdlcy4gQSBmaW5hbCBjaGVjayBvbiBjb25mbGljdHMgYW5kXG4iCisiZGVwZW5kZW5jaWVzIHdpbGwgYmUgZG9uZSAtIGhlcmUgdG9vIHlvdSBtYXkgc2VlIGEgc3VibGlzdC5cbiIKKyJcbiIKKyJQcmVzcyA8c3BhY2U+IHRvIGxlYXZlIGhlbHAgYW5kIGVudGVyIHRoZSBsaXN0IG5vdy5cbiIKK21zZ3N0ciAiIgorIk1hbGlnYXlhbmcgcGFnZGF0aW5nIHNhIHBhbmd1bmFoaW5nIGxpc3RhaGFuIG5nIG1nYSBwYWtldGUgc2EgZHNlbGVjdC5cbiIKKyJcbiIKKyJJcGFwYWtpdGEgc2EgaW55byBhbmcgbGlzdGFoYW4gbmcgbWdhIHBha2V0ZSBuYSBuYWthLWx1a2xvayBvIG1hZ2FnYW1pdCBuYVxuIgorImlsdWx1a2xvay4gTWFhYXJpIGtheW9uZyBndW1hbGF3IHNhIGxpc3RhaGFuIHNhIHBhbWFtYWdpdGFuIG5nIG1nYSBjdXJzb3IgIgorImtleSxcbiIKKyJtYXJrYWhhbiBhbmcgbWdhIHBha2V0ZW5nIGlpbHVsdWtsb2sgKGdhbWl0aW4gYW5nIGArJykgbyB0YXRhbmdnYWxpbiAiCisiKGdhbWl0aW5cbiIKKyJhbmcgYC0nKS4gQW5nIG1nYSBwYWtldGUgYXkgbWFhYXJpbmcgbWFya2FoYW4gbmcgaXNhaGFuIG8gc2EgZ3J1cG87IHNhICIKKyJ1bXBpc2FcbiIKKyJtYWtpa2l0YSBuaW55byBuYSBhbmcgbGlueWFuZyBgTGFoYXQgbmcgcGFrZXRlJyBheSBuYWthcGlsaS4gYCsnLCBgLScgYXQgaWJhICIKKyJwYVxuIgorImF5IG1ha2FrYWFwZWt0byBzYSBsYWhhdCBuZyBtZ2EgcGFrZXRlIG5hIHRpbnV0dWtveSBuZyBuYWthLWhpZ2hsaWdodCBuYSAiCisibGlueWEuXG4iCisiXG4iCisiSWxhbiBzYSBpbnlvbmcgbWdhIHBpcGlsaWluIGF5IG1hZ2tha2Fyb29uIG5nIG1nYSBjb25mbGljdCBvIHByb2JsZW1hIHNhXG4iCisiZGVwZW5kZW5zaXlhOyBrYXlvIGF5IGJpYmlneWFuIG5nIHN1Yi1saXN0IG5nIG1nYSBwYWtldGVuZyBtYXkga2luYWxhbWFuICIKKyJkaXRvLFxuIgorInVwYW5nIGlueW9uZyBtYWx1dGFzIGFuZyBtZ2EgcHJvYmxlbWEuXG4iCisiXG4iCisiRGFwYXQgbmlueW9uZyBiYXNhaGluIGFuZyB0YWxhYW4gbmcgdGlrbGFkbyBhdCBtZ2EgcGFsaXdhbmFnIG5hICIKKyJuYWthZGlzcGxheS5cbiIKKyJNYXJhbWluZyB0dWxvbmcgbmEgbWFnYWdhbWl0LCBtYW5neWFyaW5nIGdhbWl0aW4gbml5byBhbmcgbWdhIGl0byAtICIKKyJwaW5kdXRpblxuIgorImFuZyBgPycga2FoaXQga2FpbGFuIHBhcmEgbWFrYW1pdCBhbmcgdHVsb25nLlxuIgorIlxuIgorIkthcGFnIG5hdGFwb3MgbmEga2F5b25nIG1ha2FwYWdwaWxpIG5nIG1nYSBwYWtldGUsIHBpbmR1dGluIGFuZyA8ZW50ZXI+ICIKKyJ1cGFuZ1xuIgorInRpeWFraW4gYW5nIG1nYSBwYWdiYWJhZ28sIG8gYFgnIHVwYW5nIGx1bWFiYXMgbmEgaGluZGkgaXRhdGFnbyBhbmcgbWdhICIKKyJwYWdiYWJhZ28uXG4iCisiTWF5IGthaHVsaWhhbmcgcGFnc3VzdXJpIG5nIG1nYSBjb25mbGljdCBhdCBkZXBlbmRlbnNpeWEgbmEgZ2FnYXdpbiAtIGRpdG8gIgorInJpblxuIgorImF5IG1hYWFyaW5nIG1heSBpcGFraXRhbmcgc3VibGlzdC5cbiIKKyJcbiIKKyJQaW5kdXRpbiBhbmcgPHB1d2FuZz4gdXBhbmcgbHVtYWJhcyBzYSB0dWxvbmcgYXQgYnVtYWxpayBzYSBsaXN0YWhhbiAiCisibmdheW9uLlxuIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjgwCittc2dpZCAiSW50cm9kdWN0aW9uIHRvIHJlYWQtb25seSBwYWNrYWdlIGxpc3QgYnJvd3NlciIKK21zZ3N0ciAiUGFncGFwYWtpbGFsYSBzYSBicm93c2VyIG5nIGxpc3RhaGFuIG5nIG1nYSBwYWtldGUgbmEgcGFnYmFzYS1sYW1hbmciCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6ODAKK21zZ2lkICIiCisiV2VsY29tZSB0byBkc2VsZWN0J3MgbWFpbiBwYWNrYWdlIGxpc3RpbmcuXG4iCisiXG4iCisiWW91IHdpbGwgYmUgcHJlc2VudGVkIHdpdGggYSBsaXN0IG9mIHBhY2thZ2VzIHdoaWNoIGFyZSBpbnN0YWxsZWQgb3IgIgorImF2YWlsYWJsZVxuIgorImZvciBpbnN0YWxsYXRpb24uICBTaW5jZSB5b3UgZG8gbm90IGhhdmUgdGhlIHByaXZpbGVnZSBuZWNlc3NhcnkgdG8gdXBkYXRlXG4iCisicGFja2FnZSBzdGF0ZXMsIHlvdSBhcmUgaW4gYSByZWFkLW9ubHkgbW9kZS4gIFlvdSBjYW4gbmF2aWdhdGUgYXJvdW5kIHRoZVxuIgorImxpc3QgdXNpbmcgdGhlIGN1cnNvciBrZXlzIChwbGVhc2Ugc2VlIHRoZSBgS2V5c3Ryb2tlcycgaGVscCBzY3JlZW4pLCAiCisib2JzZXJ2ZVxuIgorInRoZSBzdGF0dXMgb2YgdGhlIHBhY2thZ2VzIGFuZCByZWFkIGluZm9ybWF0aW9uIGFib3V0IHRoZW0uXG4iCisiXG4iCisiWW91IHNob3VsZCByZWFkIHRoZSBsaXN0IG9mIGtleXMgYW5kIHRoZSBleHBsYW5hdGlvbnMgb2YgdGhlIGRpc3BsYXkuXG4iCisiTXVjaCBvbi1saW5lIGhlbHAgaXMgYXZhaWxhYmxlLCBwbGVhc2UgbWFrZSB1c2Ugb2YgaXQgLSBwcmVzcyBgPycgYXRcbiIKKyJhbnkgdGltZSBmb3IgaGVscC5cbiIKKyJcbiIKKyJXaGVuIHlvdSBoYXZlIGZpbmlzaGVkIGJyb3dzaW5nLCBwcmVzcyBgUScgb3IgPGVudGVyPiB0byBxdWl0LlxuIgorIlxuIgorIlByZXNzIDxzcGFjZT4gdG8gbGVhdmUgaGVscCBhbmQgZW50ZXIgdGhlIGxpc3Qgbm93LlxuIgorbXNnc3RyICIiCisiTWFsaWdheWFuZyBwYWdkYXRpbmcgc2EgcGFuZ3VuYWhpbmcgbGlzdGFoYW4gbmcgbWdhIHBha2V0ZSBuZyBkc2VsZWN0LlxuIgorIlxuIgorIklwYXBha2l0YSBzYSBpbnlvIGFuZyBsaXN0YWhhbiBuZyBtZ2EgcGFrZXRlIG5hIG5ha2EtbHVrbG9rIG8gbWFnYWdhbWl0ICIKKyJwYXJhXG4iCisiaWx1bHVrbG9rLiBEYWhpbCB3YWxhIGtheW9uZyBwYWhpbnR1bG90IG5hIGthaWxhbmdhbiB1cGFuZyBiYWd1aGluIGFuZyAiCisia2FsYWdheWFuXG4iCisibmcgbWdhIHBha2V0ZSwga2F5byBheSBuYXNhIG1vZGFuZyBwYWdiYXNhLWxhbWFuZy4gTWFhYXJpIGtheW9uZyBndW1hbGF3IHNhXG4iCisibG9vYiBuZyBsaXN0YWhhbiBzYSBwYW1hbWFnaXRhbiBuZyBtZ2EgY3Vyc29yIGtleXMgKG1hbmd5YXJpIG5hIGJhc2FoaW4gYW5nXG4iCisidHVsb25nIG5hIHBpbmFtYWdhdGFuZyBgVGlrbGFkbycpLCB0aWduYW4gYW5nIGthbGFnYXlhbiBuZyBtZ2EgcGFrZXRlIGF0ICIKKyJiYXNhaGluXG4iCisiYW5nIGltcG9ybWFzeW9uIHR1bmdrb2wgc2Ega2FuaWxhLlxuIgorIlxuIgorIkRhcGF0IG5pbnlvbmcgYmFzYWhpbiBhbmcgbGlzdGFoYW4gbmcgbWFhYXJpbmcgcGluZHV0aW4gYXQgYW5nIHBhbGl3YW5hZyBuYVxuIgorImlwaW5hcGFraXRhLiBNYXJhbWluZyB0dWxvbmcgbmEgbWFnYWdhbWl0LCBrYXlhJ3QgZ2FtaXRpbiBpdG8gLSBwaW5kdXRpbiAiCisiYW5nXG4iCisiYD8nIGthaGl0IGthaWxhbiB1cGFuZyBtYWthbWl0IGFuZyB0dWxvbmcuXG4iCisiXG4iCisiS2FwYWcgdGFwb3MgbmEga2F5b25nIG1hZ2Jhc2EtYmFzYSwgcGluZHV0aW4gYW5nIGBRJyBvIDxlbnRlcj4gdXBhbmcgIgorImx1bWFiYXMuXG4iCisiXG4iCisiUGluZHV0aW4gYW5nIDxwdXdhbmc+IHVwYW5nIGx1bWFiYXMgc2EgdHVsb25nIGF0IGJ1bWFsaWsgc2EgbGlzdGFoYW4gIgorIm5nYXlvbi5cbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo5OQorbXNnaWQgIkludHJvZHVjdGlvbiB0byBjb25mbGljdC9kZXBlbmRlbmN5IHJlc29sdXRpb24gc3ViLWxpc3QiCittc2dzdHIgIlBhZ3BhcGFraWxhbGEgc2Egc3ViLWxpc3QgbmcgcGFnLWF5b3MgbmcgY29uZmxpY3QvZGVwZW5kZW5zaXlhIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjk5Cittc2dpZCAiIgorIkRlcGVuZGVuY3kvY29uZmxpY3QgcmVzb2x1dGlvbiAtIGludHJvZHVjdGlvbi5cbiIKKyJcbiIKKyJPbmUgb3IgbW9yZSBvZiB5b3VyIGNob2ljZXMgaGF2ZSByYWlzZWQgYSBjb25mbGljdCBvciBkZXBlbmRlbmN5IHByb2JsZW0gLVxuIgorInNvbWUgcGFja2FnZXMgc2hvdWxkIG9ubHkgYmUgaW5zdGFsbGVkIGluIGNvbmp1bmN0aW9uIHdpdGggY2VydGFpbiBvdGhlcnMsICIKKyJhbmRcbiIKKyJzb21lIGNvbWJpbmF0aW9ucyBvZiBwYWNrYWdlcyBtYXkgbm90IGJlIGluc3RhbGxlZCB0b2dldGhlci5cbiIKKyJcbiIKKyJZb3Ugd2lsbCBzZWUgYSBzdWItbGlzdCBjb250YWluaW5nIHRoZSBwYWNrYWdlcyBpbnZvbHZlZC4gIFRoZSBib3R0b20gaGFsZiAiCisib2ZcbiIKKyJ0aGUgZGlzcGxheSBzaG93cyByZWxldmFudCBjb25mbGljdHMgYW5kIGRlcGVuZGVuY2llczsgdXNlIGBpJyB0byBjeWNsZSAiCisiYmV0d2VlblxuIgorInRoYXQsIHRoZSBwYWNrYWdlIGRlc2NyaXB0aW9ucyBhbmQgdGhlIGludGVybmFsIGNvbnRyb2wgaW5mb3JtYXRpb24uXG4iCisiXG4iCisiQSBzZXQgb2YgYHN1Z2dlc3RlZCcgcGFja2FnZXMgaGFzIGJlZW4gY2FsY3VsYXRlZCwgYW5kIHRoZSBpbml0aWFsIG1hcmtpbmdzICIKKyJpblxuIgorInRoaXMgc3ViLWxpc3QgaGF2ZSBiZWVuIHNldCB0byBtYXRjaCB0aG9zZSwgc28geW91IGNhbiBqdXN0IGhpdCBSZXR1cm4gdG9cbiIKKyJhY2NlcHQgdGhlIHN1Z2dlc3Rpb25zIGlmIHlvdSB3aXNoLiAgWW91IG1heSBhYm9ydCB0aGUgY2hhbmdlKHMpIHdoaWNoICIKKyJjYXVzZWRcbiIKKyJ0aGUgcHJvYmxlbShzKSwgYW5kIGdvIGJhY2sgdG8gdGhlIG1haW4gbGlzdCwgYnkgcHJlc3NpbmcgY2FwaXRhbCBgWCcuXG4iCisiXG4iCisiWW91IGNhbiBhbHNvIG1vdmUgYXJvdW5kIHRoZSBsaXN0IGFuZCBjaGFuZ2UgdGhlIG1hcmtpbmdzIHNvIHRoYXQgdGhleSBhcmUgIgorIm1vcmVcbiIKKyJsaWtlIHdoYXQgeW91IHdhbnQsIGFuZCB5b3UgY2FuIGByZWplY3QnIG15IHN1Z2dlc3Rpb25zIGJ5IHVzaW5nIHRoZSAiCisiY2FwaXRhbFxuIgorImBEJyBvciBgUicga2V5cyAoc2VlIHRoZSBrZXliaW5kaW5ncyBoZWxwIHNjcmVlbikuICBZb3UgY2FuIHVzZSBjYXBpdGFsIGBRJyAiCisidG9cbiIKKyJmb3JjZSBtZSB0byBhY2NlcHQgdGhlIHNpdHVhdGlvbiBjdXJyZW50bHkgZGlzcGxheWVkLCBpbiBjYXNlIHlvdSB3YW50IHRvXG4iCisib3ZlcnJpZGUgYSByZWNvbW1lbmRhdGlvbiBvciB0aGluayB0aGF0IHRoZSBwcm9ncmFtIGlzIG1pc3Rha2VuLlxuIgorIlxuIgorIlByZXNzIDxzcGFjZT4gdG8gbGVhdmUgaGVscCBhbmQgZW50ZXIgdGhlIHN1Yi1saXN0OyByZW1lbWJlcjogcHJlc3MgYD8nIGZvciAiCisiaGVscC5cbiIKK21zZ3N0ciAiIgorIlBhZy1heW9zIG5nIGNvbmZsaWN0L2RlcGVuZGVuc2l5YSAtIHBhZ3BhcGFraWxhbGEuXG4iCisiXG4iCisiTWF5IGlzYSBvIGlsYW4gc2EgaW55b25nIG1nYSBwaW5pbGkgbmEgbmFnLWFuZ2F0IG5nIHByb2JsZW1hbmcgY29uZmxpY3Qgb1xuIgorImRlcGVuZGVuc2l5YSAtIG1heSBpbGFuZyBtZ2EgcGFrZXRlIG5hIGthaWxhbmdhbmcgaWx1bHVrbG9rIG5hIG1heSBrYXNhbWFuZ1xuIgorImliYSwgYXQgbWF5IGliYSBuYW1hbmcga3VtYmluYXN5b24gbmcgbWdhIHBha2V0ZSBuYSBoaW5kaSBtYWFhcmluZyAiCisiaWx1bHVrbG9rXG4iCisibmcgc2FiYXkuXG4iCisiXG4iCisiTWFraWtpdGEgbmlueW8gYW5nIHN1Yi1saXN0IG5hIG5hZ2xhbGFtYW4gbmcgbWdhIHBha2V0ZW5nIHRpbnV0dWtveS4gIEFuZ1xuIgorImliYWJhbmcga2FsYWhhdGkgbmcgdGFiaW5nIGF5IG5hZ3BhcGFraXRhIG5nIG1nYSBjb25mbGljdCBhdCBkZXBlbmRlbnNpeWE7XG4iCisiZ2FtaXRpbiBhbmcgYGknIHVwYW5nIHVtaWtvdCBkaXRvLCBzYSBwYWdsYWxhcmF3YW4gbmcgbWdhIHBha2V0ZSBhdCBzYVxuIgorImltcG9ybWFzeW9uZyBjb250cm9sIG5hIHBhbmxvb2IuXG4iCisiXG4iCisiTWF5IGtvbGVrc3lvbiBuZyBtZ2EgcGFrZXRlIG5hIGBtaW51bXVuZ2thaGknIG5hIHRpbmFudHN5YSwgYXQgbWdhICIKKyJwYW5pbXVsYW5nXG4iCisibWdhIG1hcmthIHNhIHN1Yi1saXN0IG5hIGl0byBuYSBuYWthdGFrZGEgdXBhbmcgbWF0YXBhdGFuIGl0bywgdXBhbmcgbWFhcmlcbiIKKyJuaXlvIGxhbWFuZyBwaW5kdXRpbiBhbmcgUmV0dXJuIHVwYW5nIHRhbmdnYXBpbiBhbmcgbWdhIG11bmdrYWhpIGt1bmcgIgorImlueW9uZ1xuIgorIm5haXNpbi4gTWFhYXJpIGRpbmcgaGludHVpbiBhbmcgKG1nYSkgcGFnYmFiYWdvIG5hIG5hZ3NhbmhpIG5nIChtZ2EpICIKKyJwcm9ibGVtYSxcbiIKKyJhdCBidW1hbGlrIHNhIHBhbmd1bmFoaW5nIGxpc3RhaGFuIHNhIHBhZ3BpbmRvdCBuZyBjYXBpdGFsIGBYJy5cbiIKKyJcbiIKKyJNYWFhcmkgZGluIGtheW9uZyBndW1hbGF3IHNhIGxpc3RhaGFuIGF0IHBhbGl0YW4gYW5nIG1nYSBtYXJrYSB1cGFuZyAiCisidHVtdWdtYVxuIgorInNhIGlueW9uZyBrYWd1c3R1aGFuLCBhdCBtYWFhcmkgbmlueW9uZyBoaW5kaWFuIGFuZyBha2luZyBtZ2EgbXVuZ2thaGkgc2FcbiIKKyJwYWdwaW5kb3QgbmcgY2FwaXRhbCBgRCcgbyBgUicgKHRpZ25hbiBhbmcgdHVsb25nIHNhIHRpa2xhZG8pLiAgTWFhYXJpICIKKyJuaXlvbmdcbiIKKyJnYW1pdGluIGFuZyBjYXBpdGFsIGBRJyB1cGFuZyBwaWxpdGluIGFrb25nIHRhbmdnYXBpbiBhbmcga2FzYWx1a3V5YW5nICIKKyJheW9zLFxuIgorImt1bmcgc2FrYWxpbmcgbmFpcyBuaXlvbmcgaS1vdmVycmlkZSBhbmcgcmVrb21lbmRhc3lvbiBvIGt1bmcgc2EgdGluZ2luIG5peW8gIgorImF5XG4iCisibWFsaSBhbmcgcHJvZ3JhbWEuXG4iCisiXG4iCisiUGluZHV0aW4gYW5nIDxwdXdhbmc+IHVwYW5nIGx1bWFiYXMgc2EgdHVsb25nIGF0IHB1bWFzb2sgc2Egc3ViLWxpc3Q7XG4iCisiYWxhbGFoYW5pbjogcGluZHV0aW4gYW5nIGA/JyBwYXJhIHNhIHR1bG9uZy5cbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxMjUKK21zZ2lkICJEaXNwbGF5LCBwYXJ0IDE6IHBhY2thZ2UgbGlzdGluZyBhbmQgc3RhdHVzIGNoYXJzIgorbXNnc3RyICJEaXNwbGF5LCBpa2EtMSBiYWhhZ2k6IGxpc3RhaGFuIG5nIG1nYSBwYWtldGUgYXQga2FsYWdheWFuZyB0aXRpayIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxMjUKKyMsIGZ1enp5Cittc2dpZCAiIgorIlRoZSB0b3AgaGFsZiBvZiB0aGUgc2NyZWVuIHNob3dzIGEgbGlzdCBvZiBwYWNrYWdlcy4gIEZvciBlYWNoIHBhY2thZ2UgeW91ICIKKyJzZWVcbiIKKyJmb3VyIGNvbHVtbnMgZm9yIGl0cyBjdXJyZW50IHN0YXR1cyBvbiB0aGUgc3lzdGVtIGFuZCBtYXJrLiAgSW4gdGVyc2UgbW9kZSAiCisiKHVzZVxuIgorImB2JyB0byB0b2dnbGUgdmVyYm9zZSBkaXNwbGF5KSB0aGVzZSBhcmUgc2luZ2xlIGNoYXJhY3RlcnMsIGZyb20gbGVmdCB0byAiCisicmlnaHQ6XG4iCisiXG4iCisiIEVycm9yIGZsYWc6IFNwYWNlIC0gbm8gZXJyb3IgKGJ1dCBwYWNrYWdlIG1heSBiZSBpbiBicm9rZW4gc3RhdGUgLSBzZWUgIgorImJlbG93KVxuIgorIiAgICAgICAgICAgICAgYFInICAtIHNlcmlvdXMgZXJyb3IgZHVyaW5nIGluc3RhbGxhdGlvbiwgbmVlZHMgIgorInJlaW5zdGFsbGF0aW9uO1xuIgorIiBJbnN0YWxsZWQgc3RhdGU6ICAgICBTcGFjZSAgICAtIG5vdCBpbnN0YWxsZWQ7XG4iCisiICAgICAgICAgICAgICAgICAgICAgICBgKicgICAgIC0gaW5zdGFsbGVkO1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgYC0nICAgICAtIG5vdCBpbnN0YWxsZWQgYnV0IGNvbmZpZyBmaWxlcyByZW1haW47XG4iCisiICAgcGFja2FnZXMgaW4gdGhlc2UgeyBgVScgICAgIC0gdW5wYWNrZWQgYnV0IG5vdCB5ZXQgY29uZmlndXJlZDtcbiIKKyIgICBzdGF0ZXMgYXJlIG5vdCAgICB7IGBDJyAgICAgLSBoYWxmLWNvbmZpZ3VyZWQgKGFuIGVycm9yIGhhcHBlbmVkKTtcbiIKKyIgICAocXVpdGUpIHByb3Blcmx5ICB7IGBJJyAgICAgLSBoYWxmLWluc3RhbGxlZCAoYW4gZXJyb3IgaGFwcGVuZWQpO1xuIgorIiAgIGluc3RhbGxlZCAgICAgICAgIHsgYFcnLGB0JyAtIHRyaWdnZXJzIGFyZSBhd2FpdGVkIHJlc3AuIHBlbmRpbmcuXG4iCisiIE9sZCBtYXJrOiB3aGF0IHdhcyByZXF1ZXN0ZWQgZm9yIHRoaXMgcGFja2FnZSBiZWZvcmUgcHJlc2VudGluZyB0aGlzIGxpc3Q7XG4iCisiIE1hcms6IHdoYXQgaXMgcmVxdWVzdGVkIGZvciB0aGlzIHBhY2thZ2U6XG4iCisiICBgKic6IG1hcmtlZCBmb3IgaW5zdGFsbGF0aW9uIG9yIHVwZ3JhZGU7XG4iCisiICBgLSc6IG1hcmtlZCBmb3IgcmVtb3ZhbCwgYnV0IGFueSBjb25maWd1cmF0aW9uIGZpbGVzIHdpbGwgcmVtYWluO1xuIgorIiAgYD0nOiBvbiBob2xkOiBwYWNrYWdlIHdpbGwgbm90IGJlIHByb2Nlc3NlZCBhdCBhbGw7XG4iCisiICBgXyc6IG1hcmtlZCBmb3IgcHVyZ2UgY29tcGxldGVseSAtIGV2ZW4gcmVtb3ZlIGNvbmZpZ3VyYXRpb247XG4iCisiICBgbic6IHBhY2thZ2UgaXMgbmV3IGFuZCBoYXMgeWV0IHRvIGJlIG1hcmtlZCBmb3IgaW5zdGFsbC9yZW1vdmUvJmMuXG4iCisiXG4iCisiQWxzbyBkaXNwbGF5ZWQgYXJlIGVhY2ggcGFja2FnZSdzIFByaW9yaXR5LCBTZWN0aW9uLCBuYW1lLCBpbnN0YWxsZWQgYW5kXG4iCisiYXZhaWxhYmxlIHZlcnNpb24gbnVtYmVycyAoc2hpZnQtViB0byBkaXNwbGF5L2hpZGUpIGFuZCBzdW1tYXJ5ICIKKyJkZXNjcmlwdGlvbi5cbiIKK21zZ3N0ciAiIgorIlBpbmFwYWtpdGEgc2EgaXRhYXMgbmEga2FsYWhhdGkgbmcgdGFiaW5nIGFuZyBsaXN0YWhhbiBuZyBtZ2EgcGFrZXRlLiBTYSAiCisiYmF3YXRcbiIKKyJwYWtldGUgYXkgbWFraWtpdGEgYW5nIGFwYXQgbmEgc3VudXJhbiBwYXJhIHNhIGthbnlhbmcga2FsYWdheWFuIHNhIHNpc3RlbWEgIgorImF0XG4iCisibWFya2EuIFNhIG1vZG9uZyB0ZXJzZSAoZ2FtaXRpbiBhbmcgYHYnIHVwYW5nIGl0b2dnbGUgYW5nIG1vZG9uZyB2ZXJib3NlKSAiCisiaXRvXG4iCisiYXkgbmFnLWlpc2FuZyB0aXRpaywgbXVsYSBrYWxpd2EgcGF0dW5nb25nIGthbmFuOlxuIgorIlxuIgorIiBFcnJvciBmbGFnOlxuIgorIiAgICAgUHV3YW5nIC0gd2FsYW5nIGVycm9yIChtYWFhcmluZyBhbmcgcGFrZXRlIGF5IG5hc2Ega2FsYWdheWFuZyBzaXJhIC0gIgorImJhc2FoaW5cbiIKKyIgICAgICAgICAgICAgIHNhIGliYWJhKVxuIgorIiAgICAgICBgUicgIC0gbWFiaWdhdCBuYSBlcnJvciBzYSBwYWctbHVrbG9rLCBraW5ha2FpbGFuZ2FuZyBpbHVsdWtsb2sgIgorIm11bGk7XG4iCisiXG4iCisiIEthbGFnYXlhbmcgcGFna2EtbHVrbG9rOlxuIgorIiAgICAgICAgUHV3YW5nIC0gaGluZGkgbmFrYS1sdWtsb2s7XG4iCisiICAgICAgICAgIGAqJyAgLSBuYWthLWx1a2xvaztcbiIKKyIgICAgICAgICAgYC0nICAtIGhpbmRpIG5ha2EtbHVrbG9rIHBlcm8gbWF5IHRhbGFrc2FuZyBwYWdrYWF5b3MgbmEgbmFpd2FuO1xuIgorIm1nYSAgICAgeyBgVScgIC0gbmFrYWJ1a2xhdCBwZXJvIGhpbmRpIHBhIG5ha2FheW9zO1xuIgorInBha2V0ZSAgeyBgQycgIC0gbmFrYWF5b3MgbmEgYml0aW4gKG1heSBlcnJvciBuYSBuYWdhbmFwKTtcbiIKKyJkaXRvICAgIHsgYEknICAtIG5ha2EtbHVrbG9rIG5hIGJpdGluIChtYXkgZXJyb3IgbmEgbmFnYW5hcCkuXG4iCisiYXkgc2lyYSBcbiIKKyJcbiIKKyIgTHVtYW5nIG1hcmthOiBhbmcgaGluaWxpbmcgcGFyYSBzYSBwYWtldGUgYmFnbyBwaW5ha2l0YSBhbmcgbGlzdGFoYW4gaXRvO1xuIgorIiBNYXJrYTogYW5nIGhpbmlsaW5nIHBhcmEgc2EgcGFrZXRlIG5hIGl0bzpcbiIKKyIgICBgKic6IG5ha2EtbWFya2EgcGFyYSBzYSBwYWctbHVrbG9rIG8gYXBncmV5ZDtcbiIKKyIgICBgLSc6IG5ha2EtbWFya2EgcGFyYSB0YW5nZ2FsaW4sIHBlcm8gaWl3YW5hbiBhbmcgbWdhIHRhbGFrc2FuZyAiCisicGFna2FheW9zO1xuIgorIiAgIGA9JzogbmFrYS1ob2xkOiBoaW5kaSBpcG9wcm9zZXNvIGFuZyBwYWtldGU7XG4iCisiICAgYF8nOiBuYWthLW1hcmthIG5hIHRhbmdnYWxpbiBuZyBidW8gLSB0YW5nZ2FsaW4gcGF0aSBhbmcgcGFna2FheW9zO1xuIgorIiAgIGBuJzogYW5nIHBha2V0ZSBheSBiYWdvIGF0IGhpbmRpIHBhIG5hbWFya2FoYW4gcGFyYSBzYSBsdWtsb2svcGFndGFuZ2dhbC8iCisiJmMuXG4iCisiXG4iCisiUGluYXBha2l0YSByaW4gYW5nIEFudGFzLCBTZWN0aW9uLCBwYW5nYWxhbiwgYmlsYW5nIG5nIGJlcnN5b24gbmcgbmFrYS0iCisibHVrbG9rXG4iCisiYXQgbWFhYXJpbmcgZ2FtaXRpbiBuYSBiZXJzeW9uIChzaGlmdC1WIHVwYW5nIGlwYWtpdGEvaXRhZ28pIGF0ICIKKyJwYWdsYWxhcmF3YW5nXG4iCisibWFpa2xpIG5nIGJhd2F0IHBha2V0ZS5cbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxNTIKK21zZ2lkICJEaXNwbGF5LCBwYXJ0IDI6IGxpc3QgaGlnaGxpZ2h0OyBpbmZvcm1hdGlvbiBkaXNwbGF5IgorbXNnc3RyICJEaXNwbGF5LCBpa2EtMiBiYWhhZ2k6IGxpc3RhaGFuZyBoaWdobGlnaHQ7IHBhZ3Bha2l0YSBuZyBpbXBvcm1hc3lvbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxNTIKK21zZ2lkICIiCisiKiBIaWdobGlnaHQ6IE9uZSBsaW5lIGluIHRoZSBwYWNrYWdlIGxpc3Qgd2lsbCBiZSBoaWdobGlnaHRlZC4gIEl0ICIKKyJpbmRpY2F0ZXNcbiIKKyIgIHdoaWNoIHBhY2thZ2Uocykgd2lsbCBiZSBhZmZlY3RlZCBieSBwcmVzc2VzIG9mIGArJywgYC0nIGFuZCBgXycuXG4iCisiXG4iCisiKiBUaGUgZGl2aWRpbmcgbGluZSBpbiB0aGUgbWlkZGxlIG9mIHRoZSBzY3JlZW4gc2hvd3MgYSBicmllZiBleHBsYW5hdGlvbiAiCisib2ZcbiIKKyIgIHRoZSBzdGF0dXMgb2YgdGhlIGN1cnJlbnRseS1oaWdobGlnaHRlZCBwYWNrYWdlLCBvciBhIGRlc2NyaXB0aW9uIG9mICIKKyJ3aGljaFxuIgorIiAgZ3JvdXAgaXMgaGlnaGxpZ2h0ZWQgaWYgYSBncm91cCBsaW5lIGlzLiAgSWYgeW91IGRvbid0IHVuZGVyc3RhbmQgdGhlXG4iCisiICBtZWFuaW5nIG9mIHNvbWUgb2YgdGhlIHN0YXR1cyBjaGFyYWN0ZXJzIGRpc3BsYXllZCwgZ28gdG8gdGhlIHJlbGV2YW50XG4iCisiICBwYWNrYWdlIGFuZCBsb29rIGF0IHRoaXMgZGl2aWRlciBsaW5lLCBvciB1c2UgdGhlIGB2JyBrZXkgZm9yIGEgdmVyYm9zZVxuIgorIiAgZGlzcGxheSAocHJlc3MgYHYnIGFnYWluIHRvIGdvIGJhY2sgdG8gdGhlIHRlcnNlIGRpc3BsYXkpLlxuIgorIlxuIgorIiogVGhlIGJvdHRvbSBvZiB0aGUgc2NyZWVuIHNob3dzIG1vcmUgaW5mb3JtYXRpb24gYWJvdXQgdGhlXG4iCisiICBjdXJyZW50bHktaGlnaGxpZ2h0ZWQgcGFja2FnZSAoaWYgdGhlcmUgaXMgb25seSBvbmUpLlxuIgorIlxuIgorIiAgSXQgY2FuIHNob3cgYW4gZXh0ZW5kZWQgZGVzY3JpcHRpb24gb2YgdGhlIHBhY2thZ2UsIHRoZSBpbnRlcm5hbCBwYWNrYWdlXG4iCisiICBjb250cm9sIGRldGFpbHMgKGVpdGhlciBmb3IgdGhlIGluc3RhbGxlZCBvciBhdmFpbGFibGUgdmVyc2lvbiBvZiB0aGVcbiIKKyIgIHBhY2thZ2UpLCBvciBpbmZvcm1hdGlvbiBhYm91dCBjb25mbGljdHMgYW5kIGRlcGVuZGVuY2llcyBpbnZvbHZpbmcgdGhlXG4iCisiICBjdXJyZW50IHBhY2thZ2UgKGluIGNvbmZsaWN0L2RlcGVuZGVuY3kgcmVzb2x1dGlvbiBzdWJsaXN0cykuXG4iCisiXG4iCisiICBVc2UgdGhlIGBpJyBrZXkgdG8gY3ljbGUgdGhyb3VnaCB0aGUgZGlzcGxheXMsIGFuZCBgSScgdG8gaGlkZSB0aGVcbiIKKyIgIGluZm9ybWF0aW9uIGRpc3BsYXkgb3IgZXhwYW5kIGl0IHRvIHVzZSBhbG1vc3QgYWxsIG9mIHRoZSBzY3JlZW4uXG4iCittc2dzdHIgIiIKKyIqIEhpZ2hsaWdodDogSXNhbmcgbGlueWEgc2EgbGlzdGFoYW4gbmcgcGFrZXRlIGF5IG1heSBoaWdobGlnaHQuICIKKyJQaW5hcGFoaXdhdGlnXG4iCisiICBrdW5nIGFsaW5nIChtZ2EpIHBha2V0ZSBhbmcgYXBla3RhZG8gbmcgcGFncGluZG90IG5nIGArJywgYC0nIGF0IGBfJy5cbiIKKyJcbiIKKyIqIEFuZyBsaW55YW5nIG5hZ2hhaGF0aSBzYSBnaXRuYSBuZyB0YWJpbmcgYXkgbmFncGFwYWtpdGEgbmcgbWFpa2xpbmcgIgorInBhbGl3YW5hZ1xuIgorIiAgdHVuZ2tvbCBzYSBrYWxhZ2F5YW4gbmcgcGFrZXRlbmcgbmFrYS1oaWdobGlnaHQsIG8gcGFnbGFyYXdhbiBuZyBncnVwb25nICIKKyJuYWthLVxuIgorIiAgaGlnaGxpZ2h0LCBrdW5nIGdydXBvIGl0by4gS3VuZyBoaW5kaSBuaXlvIG5haW50aW5kaWhhbiBhbmcgaWJpZyBzYWJpaGluICIKKyJuZ1xuIgorIiAgaWxhbiBzYSBtZ2EgY2hhcmFjdGVyIG5hIG5hZ3BhcGFraXRhIG5nIGthbGFnYXlhbiwgcHVtdW50YSBzYSBha21hbmcgIgorInBha2V0ZSBhdFxuIgorIiAgdGlnbmFuIGl0b25nIGxpbnlhbmcgbmFnaGFoYXRpLCBvIGdhbWl0aW4gYW5nIHRpa2xhZG9uZyBgdicgcGFyYSBzYSAiCisidmVyYm9zZVxuIgorIiAgbmEgZGlzcGxheSAocGluZHV0aW4gYW5nIGB2JyBtdWxpIHVwYW5nIGJ1bWFsaWsgc2EgbW9kb25nIHRlcnNlKS5cbiIKKyJcbiIKKyIqIEFuZyBpYmFiYSBuZyB0YWJpbmcgYXkgbmFncGFwYWtpdGEgbmcga2FyYWdkYWdhbmcgaW1wb3JtYXN5b24gdHVuZ2tvbCBzYVxuIgorIiAga2FzYWx1a3V5YW5nIG5ha2EtaGlnaGxpZ2h0IG5hIHBha2V0ZSAoa3VuZyBpaXNhIGxhbWFuZykuXG4iCisiXG4iCisiICBNYWFhcmluZyBpcGFraXRhIGFuZyBwaW5hbGF3aWcgbmEgcGFnbGFsYXJhd2FuIG5nIHBha2V0ZSwgYW5nIGludGVybmFsICIKKyJuYSBcbiIKKyIgIGRldGFseWUgbmcgcGFnLWNvbnRyb2wgbmcgcGFrZXRlIChtYWdpbmcgYW5nIG5ha2EtbHVrbG9rIG8gbmcgbWFhYXJpbmdcbiIKKyIgIG1hZ2FtaXQgbmEgYmVyc3lvbiBuZyBwYWtldGUpLCBvIG5nIGltcG9ybWFzeW9uIHR1bmdrb2wgc2EgY29uZmxpY3QgYXRcbiIKKyIgIGRlcGVuZGVuc2l5YSBuYSBrYXVnbmF5IG5nIGthc2FsdWt1eWFuZyBwYWtldGUgKHNhIHN1Ymxpc3QgbmcgcGFnLWF5b3MgbmdcbiIKKyIgIGNvbmZsaWN0L2RlcGVuZGVuc2l5YSkuXG4iCisiXG4iCisiICBHYW1pdGluZyBhbmcgdGlrbGFkb25nIGBpJyB1cGFuZyB1bWlrb3Qgc2EgbWdhIGRpc3BsYXksIGF0IGBJJyB1cGFuZyAiCisiaXRhZ29cbiIKKyIgIGFuZyBkaXNwbGF5IG5nIGltcG9ybWFzeW9uIG8gbGFraWhhbiBpdG8gbmEgZ2FtaXRpbiBhbmcgaGFsb3MgYnVvbmcgIgorInRhYmluZy5cbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxNzYKK21zZ2lkICJJbnRyb2R1Y3Rpb24gdG8gbWV0aG9kIHNlbGVjdGlvbiBkaXNwbGF5IgorbXNnc3RyICJQYWdwYXBha2lsYWxhIHNhIHBhZ3BpbGkgbmcgcGFyYWFuIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjE3NgorbXNnaWQgIiIKKyJkc2VsZWN0IGFuZCBkcGtnIGNhbiBkbyBhdXRvbWF0aWMgaW5zdGFsbGF0aW9uLCBsb2FkaW5nIHRoZSBwYWNrYWdlIGZpbGVzIHRvICIKKyJiZVxuIgorImluc3RhbGxlZCBmcm9tIG9uZSBvZiBhIG51bWJlciBvZiBkaWZmZXJlbnQgcG9zc2libGUgcGxhY2VzLlxuIgorIlxuIgorIlRoaXMgbGlzdCBhbGxvd3MgeW91IHRvIHNlbGVjdCBvbmUgb2YgdGhlc2UgaW5zdGFsbGF0aW9uIG1ldGhvZHMuXG4iCisiXG4iCisiTW92ZSB0aGUgaGlnaGxpZ2h0IHRvIHRoZSBtZXRob2QgeW91IHdpc2ggdG8gdXNlLCBhbmQgaGl0IEVudGVyLiAgWW91IHdpbGwgIgorInRoZW5cbiIKKyJiZSBwcm9tcHRlZCBmb3IgdGhlIGluZm9ybWF0aW9uIHJlcXVpcmVkIHRvIGRvIHRoZSBpbnN0YWxsYXRpb24uXG4iCisiXG4iCisiQXMgeW91IG1vdmUgdGhlIGhpZ2hsaWdodCBhIGRlc2NyaXB0aW9uIG9mIGVhY2ggbWV0aG9kLCB3aGVyZSBhdmFpbGFibGUsIGlzXG4iCisiZGlzcGxheWVkIGluIHRoZSBib3R0b20gaGFsZiBvZiB0aGUgc2NyZWVuLlxuIgorIlxuIgorIklmIHlvdSB3aXNoIHRvIHF1aXQgd2l0aG91dCBjaGFuZ2luZyBhbnl0aGluZyB1c2UgdGhlIGB4JyBrZXkgd2hpbGUgaW4gdGhlICIKKyJsaXN0XG4iCisib2YgaW5zdGFsbGF0aW9uIG1ldGhvZHMuXG4iCisiXG4iCisiQSBmdWxsIGxpc3Qgb2Yga2V5c3Ryb2tlcyBpcyBhdmFpbGFibGUgYnkgcHJlc3NpbmcgYGsnIG5vdywgb3IgZnJvbSB0aGUgIgorImhlbHBcbiIKKyJtZW51IHJlYWNoYWJsZSBieSBwcmVzc2luZyBgPycuXG4iCittc2dzdHIgIiIKKyJNYWFhcmluZyBtYWdsdWtsb2sgbmcga3VzYSBhbmcgZHNlbGVjdCBhdCBkcGtnLCBrdWt1bmluIGFuZyB0YWxha3NhbmdcbiIKKyJwYWtldGUgbmEgaWlsdWx1a2xvayBtdWxhIHNhIGlzYSBzYSBpYmEndCBpYmFuZyBwYWdtdW11bGFuLiBNYWFhcmkga2F5b25nXG4iCisicHVtaWxpIG5nIGlzYSBzYSBtZ2EgcGFyYWFuIG5nIHBhZy1sdWtsb2sgbXVsYSBzYSBsaXN0YWhhbmcgaXRvLklsaXBhdCBhbmdcbiIKKyJoaWdobGlnaHQgc2EgcGFyYWFuIG5hIG5haXMgbml5b25nIGdhbWl0aW4sIGF0IHBpbmR1dGluIGFuZyBFbnRlci4gIEtheW8gYXlcbiIKKyJ0YXRhbnVuZ2luIG5nIGlsYW5nIG1nYSBiYWdheSBuYSBrYWlsYW5nYW4gdXBhbmcgbWFrYXBhZy1sdWtsb2suXG4iCisiXG4iCisiU2EgcGFnbGlwYXQgbml5byBuZyBoaWdobGlnaHQgYXkgaXBhcGFraXRhIGFuZyBwYWdsYXJhd2FuIG5nIGJhd2F0IHBhcmFhbixcbiIKKyJrdW5nIG1lcm9uIG5pdG8sIHNhIGliYWJhbmcga2FsYWhhdGkgbmcgdGFiaW5nLlxuIgorIlxuIgorIkt1bmcgbmFpcyBuaXlvbmcgbHVtYWJhcyBuYSB3YWxhbmcgYmFiYWd1aGluIGF5IGdhbWl0aW4gYW5nIGB4JyBoYWJhbmcgbmFzYVxuIgorImxpc3RhaGFuIG5nIG1nYSBwYXJhYW4gbmcgcGFnLWx1a2xvay5cbiIKKyJcbiIKKyJNYWFhcmluZyBtYWtpdGEgYW5nIGJ1b25nIGxpc3RhaGFuIG5nIG1hZ2FnYW1pdCBuYSB0aWtsYWRvIHNhIHBhZ3BpbmRvdCBuZ1xuIgorImBrJ2lsYWxhbmluLCBvIG11bGEgc2EgbWVudSBuZyB0dWxvbmcgbmEgbWFraWtpdGEgc2EgcGFncGluZG90IG5nIGA/Jy5cbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxOTYKK21zZ2lkICJLZXlzdHJva2VzIGZvciBtZXRob2Qgc2VsZWN0aW9uIgorbXNnc3RyICJUaWtsYWRvbmcgZ2FtaXQgc2EgcGFncGlsaSBuZyBwYXJhYW4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTk2CisjLCBmdXp6eQorbXNnaWQgIiIKKyJNb3Rpb24ga2V5czogTmV4dC9QcmV2aW91cywgVG9wL0VuZCwgVXAvRG93biwgQmFja3dhcmRzL0ZvcndhcmRzOlxuIgorIiAgaiwgRG93bi1hcnJvdyAgICAgICAgIGssIFVwLWFycm93ICAgICAgICAgICAgIG1vdmUgaGlnaGxpZ2h0XG4iCisiICBOLCBQYWdlLWRvd24sIFNwYWNlICAgUCwgUGFnZS11cCwgQmFja3NwYWNlICAgc2Nyb2xsIGxpc3QgYnkgMSBwYWdlXG4iCisiICBebiAgICAgICAgICAgICAgICAgICAgXnAgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGxpc3QgYnkgMSBsaW5lXG4iCisiICB0LCBIb21lICAgICAgICAgICAgICAgZSwgRW5kICAgICAgICAgICAgICAgICAganVtcCB0byB0b3AvZW5kIG9mIGxpc3RcbiIKKyIgIHUgICAgICAgICAgICAgICAgICAgICBkICAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyBieSAxIHBhZ2VcbiIKKyIgIF51ICAgICAgICAgICAgICAgICAgICBeZCAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyBieSAxIGxpbmVcbiIKKyIgIEIsIExlZnQtYXJyb3cgICAgICAgICBGLCBSaWdodC1hcnJvdyAgICAgICAgICBwYW4gZGlzcGxheSBieSAxLzMgc2NyZWVuXG4iCisiICBeYiAgICAgICAgICAgICAgICAgICAgXmYgICAgICAgICAgICAgICAgICAgICAgcGFuIGRpc3BsYXkgYnkgMSBjaGFyYWN0ZXJcbiIKKyIoVGhlc2UgYXJlIHRoZSBzYW1lIG1vdGlvbiBrZXlzIGFzIGluIHRoZSBwYWNrYWdlIGxpc3QgZGlzcGxheS4pXG4iCisiXG4iCisiUXVpdDpcbiIKKyIgUmV0dXJuLCBFbnRlciAgICBzZWxlY3QgdGhpcyBtZXRob2QgYW5kIGdvIHRvIGl0cyBjb25maWd1cmF0aW9uIGRpYWxvZ3VlXG4iCisiIHgsIFggICAgICAgICAgICAgZXhpdCB3aXRob3V0IGNoYW5naW5nIG9yIHNldHRpbmcgdXAgdGhlIGluc3RhbGxhdGlvbiAiCisibWV0aG9kXG4iCisiXG4iCisiTWlzY2VsbGFuZW91czpcbiIKKyIgID8sIEhlbHAsIEYxICAgICAgcmVxdWVzdCBoZWxwXG4iCisiIF5sICAgICAgICAgICAgICAgIHJlZHJhdyBkaXNwbGF5XG4iCisiICAvICAgICAgICAgICAgICAgIHNlYXJjaCAoanVzdCByZXR1cm4gdG8gY2FuY2VsKVxuIgorIiAgXFwgICAgICAgICAgICAgICAgcmVwZWF0IGxhc3Qgc2VhcmNoXG4iCittc2dzdHIgIiIKKyJQYWctZ2FsYXc6IE5leHQvUHJldmlvdXMsIFRvcC9FbmQsIFVwL0Rvd24sIEJhY2t3YXJkcy9Gb3J3YXJkczpcbiIKKyIgIG4sIERvd24tYXJyb3cgICAgICAgICBwLCBVcC1hcnJvdyAgICAgICAgICAgICBnYWxhd2luIGFuZyBoaWdobGlnaHRcbiIKKyIgIE4sIFBhZ2UtZG93biwgU3BhY2UgICBQLCBQYWdlLXVwLCBCYWNrc3BhY2UgICBpZ2FsYXcgYW5nIGxpc3RhaGFuIG5nIDEgIgorInBhaGluYVxuIgorIiAgXm4gICAgICAgICAgICAgICAgICAgIF5wICAgICAgICAgICAgICAgICAgICAgIGlnYWxhdyBhbmcgbGlzdGFoYW4gbmcgMSAiCisibGlueWFcbiIKKyIgIHQsIEhvbWUgICAgICAgICAgICAgICBlLCBFbmQgICAgICAgICAgICAgICAgICB0dW1hbG9uIHNhIHB1bm8vZHVsbyBuZyAiCisibGlzdFxuIgorIiAgdSAgICAgICAgICAgICAgICAgICAgIGQgICAgICAgICAgICAgICAgICAgICAgIGlnYWxhdyBhbmcgaW5mbyBuZyAxIHBhaGluYVxuIgorIiAgXnUgICAgICAgICAgICAgICAgICAgIF5kICAgICAgICAgICAgICAgICAgICAgIGlnYWxhdyBhbmcgaW5mbyBuZyAxIGxpbnlhXG4iCisiICBCLCBMZWZ0LWFycm93ICAgICAgICAgRiwgUmlnaHQtYXJyb3cgICAgICAgICAgaWtpbGluZyBuZyAxLzMgYW5nIHRhYmluZ1xuIgorIiAgXmIgICAgICAgICAgICAgICAgICAgIF5mICAgICAgICAgICAgICAgICAgICBpa2lsaW5nIG5nIDEgY2hhcmFjdGVyIGFuZyAiCisidGFiaW5nXG4iCisiKFBhcmVobyBhbmcgbWdhIHRpa2xhZG9uZyBnYW1pdCBkaXRvIGF0IHNhIGxpc3RhaGFuIG5nIHBha2V0ZS4pXG4iCisiXG4iCisiUXVpdDpcbiIKKyIgUmV0dXJuLCBFbnRlciAgICAgICBwaWxpaW4gYW5nIHBhcmFhbiBuYSBpdG8gYXQgcHVtdW50YSBzYSBwYWdzYXNhYXlvc1xuIgorIiB4LCBYICAgICAgICAgICAgICAgIGx1bWFiYXMgbmEgd2FsYW5nIGJpbmFiYWdvIG8gaW5hYXlvcyBuYSBwYXJhYW5nIHBhZy0iCisibHVrbG9rXG4iCisiXG4iCisiU2FyaS1zYXJpOlxuIgorIiAgPywgVHVsb25nLCBGMSAgICAgIGh1bWluZ2kgbmcgdHVsb25nXG4iCisiIF5sICAgICAgICAgICAgICAgICAgdWxpdGluIGFuZyBwYWdndWhpdCBuZyB0YWJpbmdcbiIKKyIgIC8gICAgICAgICAgICAgICAgICBwYWdoYW5hcCAocGluZHV0aW4gYW5nIHJldHVybiBwYXJhIGloaW50bylcbiIKKyIgIFxcICAgICAgICAgICAgICAgICAgdWxpdGluIGFuZyBodWxpbmcgcGFnaGFuYXBcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjYwCittc2dpZCAiVHlwZSBkc2VsZWN0IC0taGVscCBmb3IgaGVscC4iCittc2dzdHIgImRzZWxlY3QgLS1oZWxwIHBhcmEgc2EgdHVsb25nLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0MworbXNnaWQgImEiCittc2dzdHIgImEiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDMKK21zZ2lkICJbQV1jY2VzcyIKK21zZ3N0ciAiW0Fda3NlcyIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0MworbXNnaWQgIkNob29zZSB0aGUgYWNjZXNzIG1ldGhvZCB0byB1c2UuIgorbXNnc3RyICJQaWxpaW4gYW5nIHBhcmFhbiBuZyBwYWctYWtzZXMgbmEgZ2FnYW1pdGluLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NAorbXNnaWQgInUiCittc2dzdHIgInUiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDQKK21zZ2lkICJbVV1wZGF0ZSIKK21zZ3N0ciAiW1VdcGRhdGUvSXNhcml3YSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NAorbXNnaWQgIlVwZGF0ZSBsaXN0IG9mIGF2YWlsYWJsZSBwYWNrYWdlcywgaWYgcG9zc2libGUuIgorbXNnc3RyICJJc2FyaXdhIGFuZyBsaXN0YWhhbiBuZyBtYWdhZ2FtaXQgbmEgbWdhIHBha2V0ZSwga3VuZyBrYXlhLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NQorbXNnaWQgInMiCittc2dzdHIgInAiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDUKK21zZ2lkICJbU11lbGVjdCIKK21zZ3N0ciAiW1BddW1pbGkiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDUKK21zZ2lkICJSZXF1ZXN0IHdoaWNoIHBhY2thZ2VzIHlvdSB3YW50IG9uIHlvdXIgc3lzdGVtLiIKK21zZ3N0ciAiSGlsaW5naW4gYW5nIG1nYSBwYWtldGVuZyBuYWlzIG5peW8gc2EgaW55b25nIHNpc3RlbWEuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ2Cittc2dpZCAiaSIKK21zZ3N0ciAiaSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NgorbXNnaWQgIltJXW5zdGFsbCIKK21zZ3N0ciAiW0ldbHVrbG9rIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ2Cittc2dpZCAiSW5zdGFsbCBhbmQgdXBncmFkZSB3YW50ZWQgcGFja2FnZXMuIgorbXNnc3RyICJJbHVrbG9rIGF0IGktYXBncmV5ZCBhbmcgbWdhIHBha2V0ZW5nIG5pbmFuYWlzLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NworbXNnaWQgImMiCittc2dzdHIgImMiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDcKK21zZ2lkICJbQ11vbmZpZyIKK21zZ3N0ciAiW0Ndb25maWcvSXNhYXlvcyIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NworbXNnaWQgIkNvbmZpZ3VyZSBhbnkgcGFja2FnZXMgdGhhdCBhcmUgdW5jb25maWd1cmVkLiIKK21zZ3N0ciAiSXNhYXlvcyBhbmcgbWdhIHBha2V0ZW5nIGhpbmRpIHBhIG5ha2FheW9zLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OAorbXNnaWQgInIiCittc2dzdHIgInQiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDgKK21zZ2lkICJbUl1lbW92ZSIKK21zZ3N0ciAiW1RdYW5nZ2FsaW4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDgKK21zZ2lkICJSZW1vdmUgdW53YW50ZWQgc29mdHdhcmUuIgorbXNnc3RyICJUYW5nZ2FsaW4gYW5nIGhpbmRpIGd1c3RvbmcgbWdhIHNvZnR3YXJlLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OQorbXNnaWQgInEiCittc2dzdHIgInEiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDkKK21zZ2lkICJbUV11aXQiCittc2dzdHIgIltRXXVpdC9MdW1hYmFzIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ5Cittc2dpZCAiUXVpdCBkc2VsZWN0LiIKK21zZ3N0ciAiTHVtYWJhcyBzYSBkc2VsZWN0LiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE1MAorbXNnaWQgIm1lbnUiCittc2dzdHIgIm1lbnUiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNTUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiBgJXMnIHBhY2thZ2UgaGFuZGxpbmcgZnJvbnRlbmQgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiRGViaWFuIGAlcycgbXVraGEgbmcgdGFnYXBhbmdhc2l3YSBuZyBtZ2EgcGFrZXRlLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE1OAorbXNnaWQgIiIKKyJDb3B5cmlnaHQgKEMpIDE5OTQtMTk5NiBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLlxuIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNjIKKyMsIGZ1enp5Cittc2dpZCAiIgorIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgb3JcbiIKKyJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKK21zZ3N0ciAiIgorIkl0byBheSBtYWxheWFuZyBzb2Z0d2FyZTsgYmFzYWhpbiBhbmcgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYmVyc3lvbiAyICIKKyJvXG4iCisibWFzLWJhZ28gcGFyYSBzYSBrdW5kaXN5b24gbmcgcGFuZ29uZ29weWEuIFdhbGFuZyB3YXJhbnRpLlxuIgorIkJhc2FoaW4gYW5nIGRwa2ctZGViIC0tbGljZW5jZSBwYXJhIHNhIGRldGFseWUuXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNzIgZHNlbGVjdC9tYWluLmNjOjIyMAorbXNnaWQgIjxzdGFuZGFyZCBvdXRwdXQ+IgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSBbPGFjdGlvbj4gLi4uXVxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyIgIC0tZXhwZXJ0ICAgICAgICAgICAgICAgICAgIFR1cm4gb24gZXhwZXJ0IG1vZGUuXG4iCisiICAtLWRlYnVnIDxmaWxlPiB8IC1EPGZpbGU+ICBUdXJuIG9uIGRlYnVnZ2luZywgc2VuZGluZyBvdXRwdXQgdG8gPGZpbGU+LlxuIgorIiAgLS1jb2xvdXIgfCAtLWNvbG9yIHNjcmVlbnBhcnQ6W2ZvcmVncm91bmRdLFtiYWNrZ3JvdW5kXVs6YXR0clsrYXR0cisuLl1dXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDb25maWd1cmUgc2NyZWVuIGNvbG91cnMuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE5NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgICBTaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICAgU2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjAxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJBY3Rpb25zOlxuIgorIiAgYWNjZXNzIHVwZGF0ZSBzZWxlY3QgaW5zdGFsbCBjb25maWcgcmVtb3ZlIHF1aXRcbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjA1CisjLCBjLWZvcm1hdAorbXNnaWQgIlNjcmVlbnBhcnRzOlxuIgorbXNnc3RyICJCYWhhZ2luZ3RhYmluZzpcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjIxMAorIywgYy1mb3JtYXQKK21zZ2lkICJDb2xvdXJzOlxuIgorbXNnc3RyICJDb2xvdXJzL01nYSBrdWxheTpcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjIxNQorIywgYy1mb3JtYXQKK21zZ2lkICJBdHRyaWJ1dGVzOlxuIgorbXNnc3RyICJNZ2EgYXR0cmlidXRlOlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjMzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkbid0IG9wZW4gZGVidWcgZmlsZSBgJS4yNTVzJ1xuIgorbXNnc3RyICJoaW5kaSBtYWJ1a3NhbiBhbmcgdGFsYWtzYW5nIHBhbi1kZWJ1ZyBgJS4yNTVzJ1xuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjUzCisjLCBjLWZvcm1hdAorbXNnaWQgIkludmFsaWQgJXMgYCVzJ1xuIgorbXNnc3RyICJEaSB0YW5nZ2FwIG5hICVzIGAlcydcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjI3MAorbXNnaWQgInNjcmVlbiBwYXJ0IgorbXNnc3RyICJiYWhhZ2kgbmcgdGFiaW5nIgorCisjOiBkc2VsZWN0L21haW4uY2M6Mjc2Cittc2dpZCAiTnVsbCBjb2xvdXIgc3BlY2lmaWNhdGlvblxuIgorbXNnc3RyICJOdWxsIG5hIHNwZXNpcGlrYXN5b25nIHBhbmdrdWxheVxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6Mjg0IGRzZWxlY3QvbWFpbi5jYzoyODkKK21zZ2lkICJjb2xvdXIiCittc2dzdHIgImt1bGF5IgorCisjOiBkc2VsZWN0L21haW4uY2M6Mjk3Cittc2dpZCAiY29sb3VyIGF0dHJpYnV0ZSIKK21zZ3N0ciAiYXR0cmlidXRlIG5nIGt1bGF5IgorCisjOiBkc2VsZWN0L21haW4uY2M6MzI5Cittc2dpZCAiVGVybWluYWwgZG9lcyBub3QgYXBwZWFyIHRvIHN1cHBvcnQgY3Vyc29yIGFkZHJlc3NpbmcuXG4iCittc2dzdHIgIk11a2hhbmcgYW5nIGhpbXBpbGFuIGF5IGhpbmRpIHN1bXVzdXBvcnRhIG5nIGN1cnNvciBhZGRyZXNzaW5nLlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MzMxCittc2dpZCAiVGVybWluYWwgZG9lcyBub3QgYXBwZWFyIHRvIHN1cHBvcnQgaGlnaGxpZ2h0aW5nLlxuIgorbXNnc3RyICJNdWtoYW5nIGFuZyBoaW1waWxhbiBheSBoaW5kaSBzdW11c3Vwb3J0YSBuZyBoaWdobGlnaHRpbmcuXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzozMzMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJTZXQgeW91ciBURVJNIHZhcmlhYmxlIGNvcnJlY3RseSwgdXNlIGEgYmV0dGVyIHRlcm1pbmFsLFxuIgorIm9yIG1ha2UgZG8gd2l0aCB0aGUgcGVyLXBhY2thZ2UgbWFuYWdlbWVudCB0b29sICVzLlxuIgorbXNnc3RyICIiCisiSXRha2RhIGFuZyBpbnlvbmcgVEVSTSB2YXJpYWJsZSBuZyB3YXN0bywgZ3VtYW1pdCBuZyBtYXMgbWFodXNheSBuYSAiCisiaGltcGlsYW4sXG4iCisibyBrYXlhbmluIG5hIGxhbWFuZyBuYSBnYW1pdCBhbmcga2FzYW5na2FwYW5nIHRhZ2FwYW5nYXNpd2EgbmcgYmF3YXQgcGFrZXRlICIKKworIzogZHNlbGVjdC9tYWluLmNjOjMzNgorbXNnaWQgInRlcm1pbmFsIGxhY2tzIG5lY2Vzc2FyeSBmZWF0dXJlcywgZ2l2aW5nIHVwIgorbXNnc3RyICJrdWxhbmcgbmcga2FpbGFuZ2FuIG5hIG1nYSBmZWF0dXJlIGFuZyB0ZXJtaW5hbCwgc3VtdXN1a28gbmEiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzo0MTcKK21zZ2lkICIiCisiXG4iCisiXG4iCisiTW92ZSBhcm91bmQgd2l0aCBeUCBhbmQgXk4sIGN1cnNvciBrZXlzLCBpbml0aWFsIGxldHRlcnMsIG9yIGRpZ2l0cztcbiIKKyJQcmVzcyA8ZW50ZXI+IHRvIGNvbmZpcm0gc2VsZWN0aW9uLiAgIF5MIHJlZHJhd3Mgc2NyZWVuLlxuIgorIlxuIgorbXNnc3RyICIiCisiXG4iCisiXG4iCisiR2FtaXRpbiBhbmcgXlAgYXQgXk4sIG1nYSBjdXJzb3Iga2V5LCB1bmFuZyBtZ2EgdGl0aWssIG8gbnVtZXJvIHVwYW5nICIKKyJndW1hbGF3OlxuIgorIlBpbmR1dGluIGFuZyA8ZW50ZXI+IHVwYW5nIHRpeWFraW4gYW5nIHBpbmlsaS4gXkwgdXBhbmcgaWd1aGl0IG11bGkgYW5nICIKKyJ0YWJpbmcuXG4iCisiXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzo0MjgKK21zZ2lkICIiCisiXG4iCisiXG4iCisiUmVhZC1vbmx5IGFjY2Vzczogb25seSBwcmV2aWV3IG9mIHNlbGVjdGlvbnMgaXMgYXZhaWxhYmxlISIKK21zZ3N0ciAiIgorIlxuIgorIlxuIgorIlBhZ2Jhc2EtbGFtYW5nIG5hIGFrc2VzOiBtYXRpdGlnbmFuIGxhbWFuZyBhbmcgbWFnYWdhbWl0IG5hIG1nYSBwYWdwaXBpbGlhbiEiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzo0NDgKK21zZ2lkICJmYWlsZWQgdG8gZ2V0Y2ggaW4gbWFpbiBtZW51IgorbXNnc3RyICJiaWdvIGFuZyBnZXRjaCBzYSBwYW5ndW5haGluZyBtZW51IgorCisjOiBkc2VsZWN0L21haW4uY2M6NTMxCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gYWN0aW9uIHN0cmluZyBgJS41MHMnIgorbXNnc3RyICJkaSBraWxhbGFuZyBhY3Rpb24gc3RyaW5nIGAlLjUwcyciCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6NzcKK21zZ2lkICJkc2VsZWN0IC0gbGlzdCBvZiBhY2Nlc3MgbWV0aG9kcyIKK21zZ3N0ciAiZHNlbGVjdCAtIGxpc3RhaGFuIG5nIHBhcmFhbiBuZyBha3NlcyIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzo4NgorIywgYy1mb3JtYXQKK21zZ2lkICJBY2Nlc3MgbWV0aG9kIGAlcycuIgorbXNnc3RyICJQYXJhYW4gbmcgYWtzZXMgYCVzJy4iCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTIwCittc2dpZCAiQWJicmV2LiIKK21zZ3N0ciAiRGFnbGF0IgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjEyMSBkc2VsZWN0L3BrZ2luZm8uY2M6MTA1IGRzZWxlY3QvcGtndG9wLmNjOjI5MQorbXNnaWQgIkRlc2NyaXB0aW9uIgorbXNnc3RyICJQYWdsYWxhcmF3YW4iCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTY0IGRzZWxlY3QvcGtnbGlzdC5jYzo1NzIKK21zZ2lkICJkb3VwZGF0ZSBmYWlsZWQiCittc2dzdHIgImJpZ28gYW5nIGRvdXBkYXRlIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjE2NiBkc2VsZWN0L3BrZ2xpc3QuY2M6NTc1Cittc2dpZCAiZmFpbGVkIHRvIHVuYmxvY2sgU0lHV0lOQ0giCittc2dzdHIgImJpZ28gc2EgcGFnLXVuYmxvY2sgbmcgU0lHV0lOQ0giCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTcwIGRzZWxlY3QvcGtnbGlzdC5jYzo1ODAKK21zZ2lkICJmYWlsZWQgdG8gcmUtYmxvY2sgU0lHV0lOQ0giCittc2dzdHIgImJpZ28gc2EgcGFnLXJlLWJsb2NrIG5nIFNJR1dJTkNIIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjE3MSBkc2VsZWN0L3BrZ2xpc3QuY2M6NTgyCittc2dpZCAiZ2V0Y2ggZmFpbGVkIgorbXNnc3RyICJiaWdvIGFuZyBnZXRjaCIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxODgKKyMsIGZ1enp5Cittc2dpZCAiRXhwbGFuYXRpb24iCittc2dzdHIgInBhbGl3YW5hZyBuZyAiCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTk3Cittc2dpZCAiTm8gZXhwbGFuYXRpb24gYXZhaWxhYmxlLiIKK21zZ3N0ciAiV2FsYW5nIHBhbGl3YW5hZyBuYSBtYWliaWdheS4iCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjY3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJcbiIKKyIlczogJXNcbiIKK21zZ3N0ciAiIgorIlxuIgorIlxuIgorIiVzOiAlc1xuIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzo3MAorbXNnaWQgIiIKKyJcbiIKKyJQcmVzcyA8ZW50ZXI+IHRvIGNvbnRpbnVlLiIKK21zZ3N0ciAiIgorIlxuIgorIlBpbmR1dGluIGFuZyA8ZW50ZXI+IHVwYW5nIG1hZ3BhdHVsb3kuIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoxNjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHJlc3MgPGVudGVyPiB0byBjb250aW51ZS5cbiIKK21zZ3N0ciAiUGluZHV0aW4gYW5nIDxlbnRlcj4gdXBhbmcgbWFncGF0dWxveS5cbiIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MTYyCisjLCBmdXp6eQorbXNnaWQgIjxzdGFuZGFyZCBlcnJvcj4iCittc2dzdHIgImVycm9yIHNhIHBhZ3N1bGF0IHNhIHN0YW5kYXJkIGVycm9yIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoxNjUKK21zZ2lkICJlcnJvciByZWFkaW5nIGFja25vd2xlZGdlbWVudCBvZiBwcm9ncmFtIGZhaWx1cmUgbWVzc2FnZSIKK21zZ3N0ciAiIgorImVycm9yIHNhIHBhZ2Jhc2EgbmcgcGFna2lsYWxhIG5nIG1lbnNhaGUgdHVuZ2tvbCBzYSBwYWdrYWJpZ28gbmcgcHJvZ3JhbWEiCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjE5NgorbXNnaWQgInVwZGF0ZSBhdmFpbGFibGUgbGlzdCBzY3JpcHQiCittc2dzdHIgInNjcmlwdG9uZyBwYW5nLWFwZGV5dCBhbmcgbWFnYWdhbWl0IG5hIGxpc3RhaGFuIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoyMDAKK21zZ2lkICJpbnN0YWxsYXRpb24gc2NyaXB0IgorbXNnc3RyICJzY3JpcHRvbmcgdGFnYWx1a2xvayIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MjQ2Cittc2dpZCAicXVlcnkvc2V0dXAgc2NyaXB0IgorbXNnc3RyICJzY3JpcHRvbmcgcGFndGFub25nL3BhZ2hhbmRhIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzo1MworIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gbWV0aG9kIG9wdGlvbnMgZmlsZSBgJS4yNTBzJyAtLSAlcyIKK21zZ3N0ciAic3ludGF4IGVycm9yIHNhIHRhbGFrc2FuZyBvcHN5b24gbmcgcGFtYW1hcmFhbiBgJS4yNTBzJyAtLSAlcyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcmVhZGluZyBvcHRpb25zIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImVycm9yIHNhIHBhZ2Jhc2EgbmcgdGFsYWtzYW5nIG9wc3lvbiBgJS4yNTBzJyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgYCUuMjUwcycgZGlyZWN0b3J5IGZvciByZWFkaW5nIG1ldGhvZHMiCittc2dzdHIgImRpIG1hYmFzYSBhbmcgYCUuMjUwcycgbmEgZGlyZWN0b3J5IHBhcmEgc2EgcGFtYW1hcmFhbiBuZyBwYWdiYXNhIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxMDYKKyMsIGMtZm9ybWF0Cittc2dpZCAibWV0aG9kIGAlLjI1MHMnIGhhcyBuYW1lIHRoYXQgaXMgdG9vIGxvbmcgKCVkID4gJWQgY2hhcmFjdGVycykiCittc2dzdHIgIiIKKyJwYW1hbWFyYWFuIGAlLjI1MHMnIGF5IG1heSBwYW5nYWxhbiBuYSBsYWJpcyBhbmcgaGFiYSAoJWQgPiAlZCBrYXJha3RlcikiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjExNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gYWNjZXNzIG1ldGhvZCBzY3JpcHQgYCUuMjUwcyciCittc2dzdHIgImRpIG1hLWFrc2VzIGFuZyBzY3JpcHQgbmcgcGFtYW1hcmFhbiBgJS4yNTBzJyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTIzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIG1ldGhvZCBvcHRpb25zIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImRpIG1hYmFzYSBhbmcgdGFsYWtzYW5nIG9wc3lvbiBuZyBwYW1hbWFyYWFuIGAlLjI1MHMnIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNDcKK21zZ2lkICJub24tZGlnaXQgd2hlcmUgZGlnaXQgd2FudGVkIgorbXNnc3RyICJkaS1udW1lcm8gc2FhbiBudW1lcm8gZGFwYXQiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE1MAorbXNnaWQgIkVPRiBpbiBpbmRleCBzdHJpbmciCittc2dzdHIgIkVPRiBzYSBpbmRleCBzdHJpbmciCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE1MworbXNnaWQgImluZGV4IHN0cmluZyB0b28gbG9uZyIKK21zZ3N0ciAibGFiaXMgYW5nIGhhYmEgbmcgaW5kZXggc3RyaW5nIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNTYKK21zZ2lkICJuZXdsaW5lIGJlZm9yZSBvcHRpb24gbmFtZSBzdGFydCIKK21zZ3N0ciAibmV3bGluZSBiYWdvIHNhIHVtcGlzYSBuZyBwYW5nYWxhbiBuZyBvcHN5b24iCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE1OAorbXNnaWQgIkVPRiBiZWZvcmUgb3B0aW9uIG5hbWUgc3RhcnQiCittc2dzdHIgIkVPRiBuYXVuYSBzYSB1bXBpc2EgYW5nIHBhbmdhbGFuIG5nIG9wc3lvbiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTYyCittc2dpZCAibm9uYWxwaGEgd2hlcmUgb3B0aW9uIG5hbWUgc3RhcnQgd2FudGVkIgorbXNnc3RyICJkaS1hbHBoYSBrdW5nIHNhYW4gZGFwYXQgbWFndW1waXNhIGFuZyBwYW5nYWxhbiBuZyBvcHN5b24iCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE2NAorbXNnaWQgIm5vbi1hbHBoYW51bSBpbiBvcHRpb24gbmFtZSIKK21zZ3N0ciAiZGktYWxwaGFudW0gc2EgcGFuZ2FsYW4gbmcgb3BzeW9uIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNjcKK21zZ2lkICJFT0YgaW4gb3B0aW9uIG5hbWUiCittc2dzdHIgIkVPRiBzYSBwYW5nYWxhbiBuZyBvcHN5b24iCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE3MgorbXNnaWQgIm5ld2xpbmUgYmVmb3JlIHN1bW1hcnkiCittc2dzdHIgIm5ld2xpbmUgYmFnbyBzYSBwYWdsYWxhaGF0IgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNzQKK21zZ2lkICJFT0YgYmVmb3JlIHN1bW1hcnkiCittc2dzdHIgIkVPRiBuYXVuYSBzYSBwYWdsYWxhaGF0IgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxODAKK21zZ2lkICJFT0YgaW4gc3VtbWFyeSAtIG1pc3NpbmcgbmV3bGluZSIKK21zZ3N0ciAiRU9GIHNhIHBhZ2xhbGFoYXQgLSBrdWxhbmcgbmcgbmV3bGluZSIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTkwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIG9wdGlvbiBkZXNjcmlwdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJkaSBtYWJ1a3NhbiBhbmcgdGFsYWtzYW5nIG9wc3lvbiBuYSBwYWdsYWxhcmF3YW4gYCUuMjUwcyciCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE5NAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBvcHRpb24gZGVzY3JpcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiZGkgbWEtc3RhdCBhbmcgdGFsYWtzYW5nIG9wc3lvbiBuYSBwYWdsYWxhcmF3YW4gYCUuMjUwcyciCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE5OAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCBvcHRpb24gZGVzY3JpcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiYmlnbyBzYSBwYWdiYXNhIG5nIHRhbGFrc2FuZyBvcHN5b24gbmEgcGFnbGFsYXJhd2FuIGAlLjI1MHMnIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgZHVyaW5nIHJlYWQgb2Ygb3B0aW9uIGRlc2NyaXB0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImVycm9yIGhhYmFuZyBiaW5hYmFzYSBhbmcgdGFsYWtzYW5nIG9wc3lvbiBuYSBwYWdsYWxhcmF3YW4gYCUuMjUwcyciCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjIyNAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBkdXJpbmcgcmVhZCBvZiBtZXRob2Qgb3B0aW9ucyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJlcnJvciBoYWJhbmcgYmluYWJhc2EgYW5nIHRhbGFrc2FuZyBvcHN5b24gbmcgcGFtYW1hcmFhbiBgJS4yNTBzJyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MjQ3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIGN1cnJlbnQgb3B0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImRpIG1hYnVrc2FuIGFuZyBrYXNhbHVrdXlhbmcgdGFsYWtzYW5nIG9wc3lvbiBgJS4yNTBzJyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6Mjg5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIG5ldyBvcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiZGkgbWFidWtzYW4gYW5nIGJhZ29uZyB0YWxha3Nhbmcgb3BzeW9uIGAlLjI1MHMnIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ldyBvcHRpb24gdG8gYCUuMjUwcyciCittc2dzdHIgImRpIG1haXN1bGF0IGFuZyBiYWdvbmcgb3BzeW9uIHNhIGAlLjI1MHMnIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyOTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIG5ldyBvcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiZGkgbWFzYXJoYW4gYW5nIGJhZ29uZyB0YWxha3Nhbmcgb3BzeW9uIGAlLjI1MHMnIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyOTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IG9wdGlvbiBhcyBgJS4yNTBzJyIKK21zZ3N0ciAiZGkgbWFsdWtsb2sgYW5nIGJhZ29uZyBvcHN5b24gYmlsYW5nIGAlLjI1MHMnIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MzYKK21zZ2lkICJuZXcgcGFja2FnZSIKK21zZ3N0ciAiYmFnb25nIHBha2V0ZSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjM3Cittc2dpZCAiaW5zdGFsbCIKK21zZ3N0ciAiaWx1a2xvayIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjM4Cittc2dpZCAiaG9sZCIKK21zZ3N0ciAiaGF3YWthbiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjM5Cittc2dpZCAicmVtb3ZlIgorbXNnc3RyICJ0YW5nZ2FsaW4iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo0MAorbXNnaWQgInB1cmdlIgorbXNnc3RyICJwdXJnYSIKKworIy4gVFJBTlNMQVRPUlM6IFRoZSBzcGFjZSBpcyBhIHRyaWNrIHRvIHdvcmsgYXJvdW5kIGdldHRleHQgd2hpY2ggdXNlcworIy4gKiB0aGUgZW1wdHkgc3RyaW5nIHRvIHN0b3JlIGluZm9ybWF0aW9uIGFib3V0IHRoZSB0cmFuc2xhdGlvbi4gRE8gTk9UCisjLiAqIENIQU5HRSBUSEFUIElOIEEgVFJBTlNMQVRJT04hIFRoZSBjb2RlIHJlYWxseSByZWxpZXMgb24gdGhhdCBiZWluZworIy4gKiBhIHNpbmdsZSBzcGFjZS4KKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo0NworbXNnaWQgIiAiCittc2dzdHIgIiAiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo0OAorbXNnaWQgIlJFSU5TVEFMTCIKK21zZ3N0ciAiSUxVS0xPSyBNVUxJIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTEKK21zZ2lkICJub3QgaW5zdGFsbGVkIgorbXNnc3RyICJoaW5kaSBuYWthbHVrbG9rIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTIKK21zZ2lkICJyZW1vdmVkIChjb25maWdzIHJlbWFpbikiCittc2dzdHIgInRpbmFuZ2dhbCAobmFpd2FuIGFuZyBwYWdrYWF5b3MpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTMKK21zZ2lkICJoYWxmIGluc3RhbGxlZCIKK21zZ3N0ciAiYml0aW4gbmEgcGFnbHVrbG9rIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTQKK21zZ2lkICJ1bnBhY2tlZCAobm90IHNldCB1cCkiCittc2dzdHIgIm5ha2FidWtsYXQgKGhpbmRpIG5ha2FheW9zKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjU1Cittc2dpZCAiaGFsZiBjb25maWd1cmVkIChjb25maWcgZmFpbGVkKSIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTYKK21zZ2lkICJhd2FpdGluZyB0cmlnZ2VyIHByb2Nlc3NpbmciCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjU3Cittc2dpZCAidHJpZ2dlcmVkIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1OAorbXNnaWQgImluc3RhbGxlZCIKK21zZ3N0ciAibmFrYWx1a2xvayIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjYxCittc2dpZCAiUmVxdWlyZWQiCittc2dzdHIgIkthaWxhbmdhbiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjYyCittc2dpZCAiSW1wb3J0YW50IgorbXNnc3RyICJJbXBvcnRhbnRlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjMKK21zZ2lkICJTdGFuZGFyZCIKK21zZ3N0ciAiU3RhbmRhcmQiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo2NAorbXNnaWQgIk9wdGlvbmFsIgorbXNnc3RyICJPcHN5b25hbCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjY1Cittc2dpZCAiRXh0cmEiCittc2dzdHIgIkV4dHJhIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjYKK21zZ2lkICIhQnVnISIKK21zZ3N0ciAiIUJ1ZyEiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo2NworbXNnaWQgIlVuY2xhc3NpZmllZCIKK21zZ3N0ciAiRGkgbmFrYS11cmkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3MAorbXNnaWQgInN1Z2dlc3RzIgorbXNnc3RyICJuYWdtdW11bmdrYWhpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzEKK21zZ2lkICJyZWNvbW1lbmRzIgorbXNnc3RyICJyZWtvbWVuZGFkbyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjcyCittc2dpZCAiZGVwZW5kcyBvbiIKK21zZ3N0ciAidW1hYXNhIHNhIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzMKK21zZ2lkICJwcmUtZGVwZW5kcyBvbiIKK21zZ3N0ciAidW1hYXNhIG5nIGx1Ym9zIHNhIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzQKK21zZ2lkICJicmVha3MiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjc1Cittc2dpZCAiY29uZmxpY3RzIHdpdGgiCittc2dzdHIgImthdHVuZ2dhbGkgYW5nIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzYKK21zZ2lkICJwcm92aWRlcyIKK21zZ3N0ciAibmFnYmliaWdheSBuZyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjc3Cittc2dpZCAicmVwbGFjZXMiCittc2dzdHIgImthcGFsaXQgbmciCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3OAorbXNnaWQgImVuaGFuY2VzIgorbXNnc3RyICJuYWdwYXBhaHVzYXkgc2EiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4MQorbXNnaWQgIlJlcSIKK21zZ3N0ciAiUmVxIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODIKK21zZ2lkICJJbXAiCittc2dzdHIgIkltcCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjgzCittc2dpZCAiU3RkIgorbXNnc3RyICJTdGQiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4NAorbXNnaWQgIk9wdCIKK21zZ3N0ciAiT3B0IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODUKK21zZ2lkICJYdHIiCittc2dzdHIgIlh0ciIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjg2Cittc2dpZCAiYlVHIgorbXNnc3RyICJiVWciCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4NworbXNnaWQgIj8iCittc2dzdHIgIj8iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo5NSBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTE1Cittc2dpZCAiQnJva2VuIgorbXNnc3RyICJTaXJhIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6OTYKK21zZ2lkICJOZXciCittc2dzdHIgIkJhZ28iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo5NworbXNnaWQgIlVwZGF0ZWQiCittc2dzdHIgIk1heSBNYXMgQmFnbyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjk4Cittc2dpZCAiT2Jzb2xldGUvbG9jYWwiCittc2dzdHIgIkxhb3MvbG9rYWwiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo5OQorbXNnaWQgIlVwLXRvLWRhdGUiCittc2dzdHIgIkthc2FsdWt1eWFuIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTAwCittc2dpZCAiQXZhaWxhYmxlIgorbXNnc3RyICJNYWdhZ2FtaXQiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDEgZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExNworbXNnaWQgIlJlbW92ZWQiCittc2dzdHIgIlRpbmFuZ2dhbCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwMiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTExCittc2dpZCAiQnJva2VubHkgaW5zdGFsbGVkIHBhY2thZ2VzIgorbXNnc3RyICJTaXJhIGFuZyBwYWdrYWx1a2xvayBuYSBtZ2EgcGFrZXRlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTAzCittc2dpZCAiTmV3bHkgYXZhaWxhYmxlIHBhY2thZ2VzIgorbXNnc3RyICJCYWdvbmcgbWFnYWdhbWl0IG5hIG1nYSBwYWtldGUiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDQKK21zZ2lkICJVcGRhdGVkIHBhY2thZ2VzIChuZXdlciB2ZXJzaW9uIGlzIGF2YWlsYWJsZSkiCittc2dzdHIgIk1ha2FiYWdvbmcgbWdhIHBha2V0ZSAobWF5IGJhZ29uZyBiZXJzeW9uZyBtYWdhZ2FtaXQpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTA1Cittc2dpZCAiT2Jzb2xldGUgYW5kIGxvY2FsIHBhY2thZ2VzIHByZXNlbnQgb24gc3lzdGVtIgorbXNnc3RyICJMYW9zIG5hIGF0IG1nYSBsb2thbCBuYSBwYWtldGUgbmEgbmFyaXRvIHNhIHNpc3RlbWEiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDYKK21zZ2lkICJVcCB0byBkYXRlIGluc3RhbGxlZCBwYWNrYWdlcyIKK21zZ3N0ciAiTmFrYWx1a2xvayBuYSBtZ2EgcGFrZXRlIG5hIGhpbmRpIGxhb3MiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDcKK21zZ2lkICJBdmFpbGFibGUgcGFja2FnZXMgKG5vdCBjdXJyZW50bHkgaW5zdGFsbGVkKSIKK21zZ3N0ciAiTWFnYWdhbWl0IG5hIG1nYSBwYWtldGUgKGhpbmRpIG5ha2FsdWtsb2sgc2Ega2FzYWx1a3V5YW4pIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTA4Cittc2dpZCAiUmVtb3ZlZCBhbmQgbm8gbG9uZ2VyIGF2YWlsYWJsZSBwYWNrYWdlcyIKK21zZ3N0ciAiVGluYW5nZ2FsIGF0IGhpbmRpIG5hIG1hZ2FnYW1pdCBuYSBtZ2EgcGFrZXRlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTEyCittc2dpZCAiSW5zdGFsbGVkIHBhY2thZ2VzIgorbXNnc3RyICJOYWthbHVrbG9rIG5hIG1nYSBwYWtldGUiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTMKK21zZ2lkICJSZW1vdmVkIHBhY2thZ2VzIChjb25maWd1cmF0aW9uIHN0aWxsIHByZXNlbnQpIgorbXNnc3RyICJUaW5hbmdnYWwgbmEgbWdhIHBha2V0ZSAocGFna2FheW9zIGF5IG5hcml0byBwYSkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTQKK21zZ2lkICJQdXJnZWQgcGFja2FnZXMgYW5kIHRob3NlIG5ldmVyIGluc3RhbGxlZCIKK21zZ3N0ciAiUGludXJnYW5nIG1nYSBwYWtldGUgYXQgbWdhIGhpbmRpIGthaWxhbm1hbiBuYWx1a2xvayIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExNgorbXNnaWQgIkluc3RhbGxlZCIKK21zZ3N0ciAiTGludWtsb2siCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTgKK21zZ2lkICJQdXJnZWQiCittc2dzdHIgIlBpbnVyZ2EiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxOTgKK21zZ2lkICJkc2VsZWN0IC0gcmVjdXJzaXZlIHBhY2thZ2UgbGlzdGluZyIKK21zZ3N0ciAiZHNlbGVjdCAtIGxpc3RhaGFuIG5nIG1nYSBwYWtldGUgbmEgcmVjdXJzaXZlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTk5Cittc2dpZCAiZHNlbGVjdCAtIGluc3BlY3Rpb24gb2YgcGFja2FnZSBzdGF0ZXMiCittc2dzdHIgImRzZWxlY3QgLSBwYWdzdXJpIG5nIGthbGFnYXlhbiBuZyBtZ2EgcGFrZXRlIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjAwCittc2dpZCAiZHNlbGVjdCAtIG1haW4gcGFja2FnZSBsaXN0aW5nIgorbXNnc3RyICJkc2VsZWN0IC0gcGFuZ3VuYWhpbmcgbGlzdGFoYW4gbmcgbWdhIHBha2V0ZSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIwOAorbXNnaWQgIiAoYnkgc2VjdGlvbikiCittc2dzdHIgIiAoYXlvbiBzYSBzZWtzeW9uKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIxMQorbXNnaWQgIiAoYXZhaWwuLCBzZWN0aW9uKSIKK21zZ3N0ciAiIChtYWdhZ2FtaXQsIHNla3N5b24pIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjE0Cittc2dpZCAiIChzdGF0dXMsIHNlY3Rpb24pIgorbXNnc3RyICIgKGthbGFnYXlhbiwgc2Vrc3lvbikiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMjMKK21zZ2lkICIgKGJ5IHByaW9yaXR5KSIKK21zZ3N0ciAiIChheW9uIHNhIHByaW9yaWRhZCkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMjYKK21zZ2lkICIgKGF2YWlsLiwgcHJpb3JpdHkpIgorbXNnc3RyICIgKG1hZ2FnYW1pdCwgcHJpb3JpZGFkKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIyOQorbXNnaWQgIiAoc3RhdHVzLCBwcmlvcml0eSkiCittc2dzdHIgIiAoa2FsYWdheWFuLCBwcmlvcmlkYWQpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjM4IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNTAKK21zZ2lkICIgKGFscGhhYmV0aWNhbGx5KSIKK21zZ3N0ciAiIChheW9uIHNhIGFiYWthZGEpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjQxCittc2dpZCAiIChieSBhdmFpbGFiaWxpdHkpIgorbXNnc3RyICIgKGF5b24gc2EgbWFnYWdhbWl0KSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI0NAorbXNnaWQgIiAoYnkgc3RhdHVzKSIKK21zZ3N0ciAiIChheW9uIHNhIGthbGFnYXlhbikiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNTgKK21zZ2lkICIgbWFyazorLz0vLSB0ZXJzZTp2IGhlbHA6PyIKK21zZ3N0ciAiIG1hcmthaGFuOisvPS8tIG1haWtsaTp2IHR1bG9uZzo/IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjU5Cittc2dpZCAiIG1hcms6Ky89Ly0gdmVyYm9zZTp2IGhlbHA6PyIKK21zZ3N0ciAiIG1hcmthaGFuOisvPS8tIG1hbGlnb3k6diB0dWxvbmc6PyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI2MAorbXNnaWQgIiB0ZXJzZTp2IGhlbHA6PyIKK21zZ3N0ciAiIG1haWtsaTp2IHR1bG9uZzo/IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjYxCittc2dpZCAiIHZlcmJvc2U6diBoZWxwOj8iCittc2dzdHIgIiBtYWxpZ295OnYgdHVsb25nOj8iCisKKyM6IGRzZWxlY3QvcGtnaW5mby5jYzo4MAorbXNnaWQgIiIKKyJUaGUgbGluZSB5b3UgaGF2ZSBoaWdobGlnaHRlZCByZXByZXNlbnRzIG1hbnkgcGFja2FnZXM7IGlmIHlvdSBhc2sgdG8gIgorImluc3RhbGwsIHJlbW92ZSwgaG9sZCwgZXRjLiBpdCB5b3Ugd2lsbCBhZmZlY3QgYWxsIHRoZSBwYWNrYWdlcyB3aGljaCBtYXRjaCAiCisidGhlIGNyaXRlcmlvbiBzaG93bi5cbiIKKyJcbiIKKyJJZiB5b3UgbW92ZSB0aGUgaGlnaGxpZ2h0IHRvIGEgbGluZSBmb3IgYSBwYXJ0aWN1bGFyIHBhY2thZ2UgeW91IHdpbGwgc2VlICIKKyJpbmZvcm1hdGlvbiBhYm91dCB0aGF0IHBhY2thZ2UgZGlzcGxheWVkIGhlcmUuXG4iCisiWW91IGNhbiB1c2UgYG8nIGFuZCBgTycgdG8gY2hhbmdlIHRoZSBzb3J0IG9yZGVyIGFuZCBnaXZlIHlvdXJzZWxmIHRoZSAiCisib3Bwb3J0dW5pdHkgdG8gbWFyayBwYWNrYWdlcyBpbiBkaWZmZXJlbnQga2luZHMgb2YgZ3JvdXBzLiIKK21zZ3N0ciAiIgorIkFuZyBsaW55YSBuYSBpbnlvbmcgbmEtaGlnaGxpZ2h0IGF5IHR1bXV0dWtveSBzYSBtYXJhbWluZyBtZ2EgcGFrZXRlOyBrdW5nXG4iCisiaGlsaW5naW4gbmlueW9uZyBpbHVsdWtsb2ssIHRhbmdnYWxpbiwgaGF3YWthbiwgYXRicC4gYXkgaXRvJ3kgYWFwZWt0byBzYVxuIgorImxhaGF0IG5nIG1nYSBwaW5hcGFraXRhbmcgbWdhIGNyaXRlcmlhLlxuIgorIlxuIgorIkt1bmcgaW55b25nIGdhbGF3aW4gYW5nIGhpZ2hsaWdodCBzYSBsaW55YSBwYXJhIHNhIGlzYW5nIHBha2V0ZSBheSBtYWtpa2l0YVxuIgorIm5pbnlvIGFuZyBpbXBvcm1hc3lvbiB0dW5na29sIHNhIHBha2V0ZW5nIGl5b24gZGl0by5cbiIKKyJNYWFyaSBuaXlvbmcgZ2FtaXRpbiBhbmcgYG8nIGF0IGBPJyB1cGFuZyBwYWxpdGFuIGFuZyBwYXJhYW4gbmcgcGFnc3Vub2QtIgorInN1bm9kXG4iCisiYXQgdXBhbmcgYmlneWFuIG5peW8gYW5nIHNhcmlsaSBuaXlvIG5nIHBhZ2tha2F0YW9uIG5hIG1hcmthaGFuIGFuZyBtZ2EgIgorInBha2V0ZVxuIgorInNhIGliYSd0IGliYW5nIHVyaSBuZyBwYWctZ3J1cG8uIgorCisjOiBkc2VsZWN0L3BrZ2luZm8uY2M6OTMKKyMsIGZ1enp5Cittc2dpZCAiSW50ZXJyZWxhdGlvbnNoaXBzIgorbXNnc3RyICJtZ2Ega2F1Z25heWFuIgorCisjOiBkc2VsZWN0L3BrZ2luZm8uY2M6MTEyCisjLCBmdXp6eQorbXNnaWQgIk5vIGRlc2NyaXB0aW9uIGF2YWlsYWJsZS4iCittc2dzdHIgIndhbGFuZyBwYWdsYWxhcmF3YW4gbmEgbWFnYWdhbWl0LiIKKworIzogZHNlbGVjdC9wa2dpbmZvLmNjOjEzMAorIywgZnV6enkKK21zZ2lkICJJbnN0YWxsZWQgY29udHJvbCBmaWxlIGluZm9ybWF0aW9uIgorbXNnc3RyICJuYWthLWx1a2xvayBuYSBpbXBvcm1hc3lvbmcgY29udHJvbCBwYXJhIHNhICIKKworIzogZHNlbGVjdC9wa2dpbmZvLmNjOjE0NgorIywgZnV6enkKK21zZ2lkICJBdmFpbGFibGUgY29udHJvbCBmaWxlIGluZm9ybWF0aW9uIgorbXNnc3RyICJtYWdhZ2FtaXQgbmEgYmVyc3lvbiBuZyBpbXBvcm1hc3lvbiBuZyB0YWxha3NhbmcgY29udHJvbCIKKworIzogZHNlbGVjdC9wa2dsaXN0LmNjOjQxNgorbXNnaWQgIlRoZXJlIGFyZSBubyBwYWNrYWdlcy4iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dsaXN0LmNjOjUwNworbXNnaWQgImludmFsaWQgc2VhcmNoIG9wdGlvbiBnaXZlbiIKK21zZ3N0ciAiZGkgdGFuZ2dhcCBuYSBvcHN5b24gc2EgcGFnaGFoYW5hcCBheSBpYmluaWdheSIKKworIzogZHNlbGVjdC9wa2dsaXN0LmNjOjUyMQorbXNnaWQgImVycm9yIGluIHJlZ3VsYXIgZXhwcmVzc2lvbiIKK21zZ3N0ciAiZXJyb3Igc2EgcmVndWxhciBleHByZXNzaW9uIgorCisjOiBkc2VsZWN0L3BrZ3N1Ymxpc3QuY2M6MTA3Cittc2dpZCAiIGRvZXMgbm90IGFwcGVhciB0byBiZSBhdmFpbGFibGVcbiIKK21zZ3N0ciAiIGF5IG11a2hhbmcgaGluZGkgbWFnYWdhbWl0XG4iCisKKyM6IGRzZWxlY3QvcGtnc3VibGlzdC5jYzoxMjcKK21zZ2lkICIgb3IgIgorbXNnc3RyICIgbyAiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjU3Cittc2dpZCAiQWxsIgorbXNnc3RyICJMYWhhdCIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6NzkKK21zZ2lkICJBbGwgcGFja2FnZXMiCittc2dzdHIgIkxhaGF0IG5nIG1nYSBwYWtldGUiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHBhY2thZ2VzIHdpdGhvdXQgYSBzZWN0aW9uIgorbXNnc3RyICIlcyBuYSBwYWtldGUgbmEgd2FsYW5nIHNla3N5b24iCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjg1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHBhY2thZ2VzIGluIHNlY3Rpb24gJXMiCittc2dzdHIgIiVzIG5hIHBha2V0ZSBzYSBzZWtzeW9uICVzIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo5MQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyAlcyBwYWNrYWdlcyIKK21zZ3N0ciAiJXMgJXMgbmEgcGFrZXRlIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo5NQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyAlcyBwYWNrYWdlcyB3aXRob3V0IGEgc2VjdGlvbiIKK21zZ3N0ciAiJXMgJXMgbmEgcGFrZXRlIG5hIHdhbGFuZyBzZWtzeW9uIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo5NworIywgYy1mb3JtYXQKK21zZ2lkICIlcyAlcyBwYWNrYWdlcyBpbiBzZWN0aW9uICVzIgorbXNnc3RyICIlcyAlcyBuYSBwYWtldGUgc2Egc2Vrc3lvbiAlcyIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6MTE4CisjLCBjLWZvcm1hdAorbXNnaWQgIiUtKnMgJXMlcyVzOyAgJXMgKHdhczogJXMpLiAgJXMiCittc2dzdHIgIiUtKnMgJXMlcyVzOyAlcyAoZGF0aSBheTogJXMpLiAgJXMiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI2MworbXNnaWQgIkVycm9yIgorbXNnc3RyICJFcnJvciIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6MjY3Cittc2dpZCAiSW5zdGFsbGVkPyIKK21zZ3N0ciAiTmFrYS1sdWtsb2s/IgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyNzEKK21zZ2lkICJPbGQgbWFyayIKK21zZ3N0ciAiTHVtYW5nIG1hcmthIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyNzUKK21zZ2lkICJNYXJrZWQgZm9yIgorbXNnc3RyICJNYXJrYWRvIHBhcmEiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI3OAorbXNnaWQgIkVJT00iCittc2dzdHIgIkVJTE0iCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI4MAorbXNnaWQgIlNlY3Rpb24iCittc2dzdHIgIlNlY3Rpb24iCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI4MQorbXNnaWQgIlByaW9yaXR5IgorbXNnc3RyICJQcmlvcmlkYWQiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI4MgorbXNnaWQgIlBhY2thZ2UiCittc2dzdHIgIlBha2V0ZSIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6Mjg2Cittc2dpZCAiSW5zdC52ZXIiCittc2dzdHIgIkluc3QuYmVyIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyODkKK21zZ2lkICJBdmFpbC52ZXIiCittc2dzdHIgIkF2YWlsLmJlciIKKworI34gbXNnaWQgInJldHVybmVkIGVycm9yIGV4aXQgc3RhdHVzICVkLlxuIgorI34gbXNnc3RyICJuYWdiYWxpayBuZyBlcnJvciBleGl0IHN0YXR1cyAlZC5cbiIKKworI34gbXNnaWQgIndhcyBpbnRlcnJ1cHRlZC5cbiIKKyN+IG1zZ3N0ciAiYXkgaW5pbnRlcnJ1cHQuXG4iCisKKyN+IG1zZ2lkICJ3YXMgdGVybWluYXRlZCBieSBhIHNpZ25hbDogJXMuXG4iCisjfiBtc2dzdHIgImF5IHRpbmVybWluYXRlIG5nIGh1ZHlhdDogJXMuXG4iCisKKyN+IG1zZ2lkICIoSXQgbGVmdCBhIGNvcmVkdW1wLilcbiIKKyN+IG1zZ3N0ciAiKE1heSBpbml3YW4gbmEgY29yZWR1bXAuKVxuIgorCisjfiBtc2dpZCAiZmFpbGVkIHdpdGggYW4gdW5rbm93biB3YWl0IHJldHVybiBjb2RlICVkLlxuIgorI34gbXNnc3RyICJiaWdvIG5hIG1heSBoaW5kaSBraWxhbGFuZyB3YWl0IHJldHVybiBjb2RlICVkLlxuIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHJ1biAlLjI1MHMgcHJvY2VzcyBgJS4yNTBzJyIKKyN+IG1zZ3N0ciAiaGluZGkgbWFwYXRha2JvICUuMjUwcyBwcm9zZXNvIGAlLjI1MHMnIgorCisjfiBtc2dpZCAiZmFpbGVkIGNvbmZpZyIKKyN+IG1zZ3N0ciAiYmlnbyBzYSBwYWdzYXNhYXlvcyIKKworI34gbXNnaWQgInVuYWJsZSB0byB3YWl0IGZvciAlLjI1MHMiCisjfiBtc2dzdHIgImhpbmRpIG1ha2FoaW50YXkgbmcgJS4yNTBzIgorCisjfiBtc2dpZCAiZ290IHdyb25nIGNoaWxkJ3Mgc3RhdHVzIC0gYXNrZWQgZm9yICVsZCwgZ290ICVsZCIKKyN+IG1zZ3N0ciAibmFrYWt1aGEgbmcgbWFsaW5nIGVzdGFkbyBuZyBhbmFrIC0gaHVtaW5naSBuZyAlbGQsIG5ha3VoYSBheSAlbGQiCisKKyN+IG1zZ2lkICJSZWNvbW1lbmRlZCIKKyN+IG1zZ3N0ciAiUmVrb21lbmRhZG8iCisKKyN+IG1zZ2lkICJDb250cmliIgorI34gbXNnc3RyICJDb250cmliIgorCisjfiBtc2dpZCAiUmVjIgorI34gbXNnc3RyICJSZWMiCisKKyN+IG1zZ2lkICJDdGIiCisjfiBtc2dzdHIgIkN0YiIKKworI34gbXNnaWQgIiIKKyN+ICJiYXNlbGlzdDo6c3RhcnRkaXNwbGF5KCkgZG9uZSAuLi5cbiIKKyN+ICJcbiIKKyN+ICIgeG1heD0lZCwgeW1heD0lZDtcbiIKKyN+ICJcbiIKKyN+ICIgdGl0bGVfaGVpZ2h0PSVkLCBjb2xoZWFkc19oZWlnaHQ9JWQsIGxpc3RfaGVpZ2h0PSVkO1xuIgorI34gIiB0aGlzc3RhdGVfaGVpZ2h0PSVkLCBpbmZvX2hlaWdodD0lZCwgd2hhdGluZm9faGVpZ2h0PSVkO1xuIgorI34gIlxuIgorI34gIiBjb2xoZWFkc19yb3c9JWQsIHRoaXNzdGF0ZV9yb3c9JWQsIGluZm9fcm93PSVkO1xuIgorI34gIiB3aGF0aW5mb19yb3c9JWQsIGxpc3Rfcm93PSVkO1xuIgorI34gIlxuIgorI34gbXNnc3RyICIiCisjfiAidGFwb3MgYW5nIGJhc2VsaXN0OjpzdGFydGRpc3BsYXkoKSAgLi4uXG4iCisjfiAiXG4iCisjfiAiIHhtYXg9JWQsIHltYXg9JWQ7XG4iCisjfiAiXG4iCisjfiAiIHRpdGxlX2hlaWdodD0lZCwgY29saGVhZHNfaGVpZ2h0PSVkLCBsaXN0X2hlaWdodD0lZDtcbiIKKyN+ICIgdGhpc3N0YXRlX2hlaWdodD0lZCwgaW5mb19oZWlnaHQ9JWQsIHdoYXRpbmZvX2hlaWdodD0lZDtcbiIKKyN+ICJcbiIKKyN+ICIgY29saGVhZHNfcm93PSVkLCB0aGlzc3RhdGVfcm93PSVkLCBpbmZvX3Jvdz0lZDtcbiIKKyN+ICIgd2hhdGluZm9fcm93PSVkLCBsaXN0X3Jvdz0lZDtcbiIKKyN+ICJcbiIKKworI34gbXNnaWQgIltub25lXSIKKyN+IG1zZ3N0ciAiW3dhbGFdIgorCisjfiBtc2dpZCAiZXJyb3IgdW4tY2F0Y2hpbmcgc2lnbmFsICVkOiAlc1xuIgorI34gbXNnc3RyICJlcnJvciBzYSBwYWctdW4tY2F0Y2ggbmcgaHVkeWF0ICVkOiAlc1xuIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGlnbm9yZSBzaWduYWwgJWQgYmVmb3JlIHJ1bm5pbmcgJS4yNTBzIgorI34gbXNnc3RyICJkaSBrYXlhbmcgaGluZGkgcGFuc2luaW4gYW5nIGh1ZHlhdCAlZCBiYWdvIHBhdGFrYnVoaW4gYW5nICUuMjUwcyIKKworI34gbXNnaWQgIihubyBjbGllbnRkYXRhKSIKKyN+IG1zZ3N0ciAiKHdhbGFuZyBkYXRvc2tsaWVudGUpIgorCisjfiBtc2dpZCAiPG51bGw+IgorI34gbXNnc3RyICI8d2FsYT4iCisKKyN+IG1zZ2lkICJpbnRlcnJlbGF0aW9uc2hpcHMgYWZmZWN0aW5nICIKKyN+IG1zZ3N0ciAibWdhIGthdWduYXlhbmcgbmFrYWthYXBla3RvIHNhICIKKworI34gbXNnaWQgImRlc2NyaXB0aW9uIG9mICIKKyN+IG1zZ3N0ciAicGFnbGFsYXJhd2FuIG5nICIKKworI34gbXNnaWQgImRlc2NyaXB0aW9uIgorI34gbXNnc3RyICJwYWdsYWxhcmF3YW4iCisKKyN+IG1zZ2lkICJjdXJyZW50bHkgaW5zdGFsbGVkIGNvbnRyb2wgaW5mbyIKKyN+IG1zZ3N0ciAia2FzYWx1a3V5YW5nIG5ha2FsdWtsb2sgbmEgaW1wb3JtYXN5b25nIGNvbnRyb2wiCisKKyN+IG1zZ2lkICJhdmFpbGFibGUgdmVyc2lvbiBvZiBjb250cm9sIGluZm8gZm9yICIKKyN+IG1zZ3N0ciAibWFnYWdhbWl0IG5hIGJlcnN5b24gbmcgaW1wb3JtYXN5b25nIGNvbnRyb2wgcGFyYSBzYSAiCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vdmkuZ21vIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL3ZpLmdtbwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43NDg2NDQ2Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL3ZpLmdtbwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vdmkucG8gYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vdmkucG8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDk0NjBjNQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby92aS5wbwpAQCAtMCwwICsxLDE3MzggQEAKKyMgVmlldG5hbWVzZSB0cmFuc2xhdGlvbiBmb3IgRHNlbGVjdC4KKyMgQ29weXJpZ2h0IMKpIDIwMDYgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCisjIFRoaXMgZmlsZSBpcyBkaXN0cmlidXRlZCB1bmRlciB0aGUgc2FtZSBsaWNlbnNlIGFzIHRoZSBkcGtnIHBhY2thZ2UuCisjIFBoYW4gVmluaCBUaGluaCA8dGVwcGlAdm5vc3Mub3JnPiwgMjAwNS4KKyMgQ2x5dGllIFNpZGRhbGwgPGNseXRpZUByaXZlcmxhbmQubmV0LmF1PiwgMjAwNi4KK21zZ2lkICIiCittc2dzdHIgIiIKKyJQcm9qZWN0LUlkLVZlcnNpb246IGRzZWxlY3RcbiIKKyJSZXBvcnQtTXNnaWQtQnVncy1UbzogZGViaWFuLWRwa2dAbGlzdHMuZGViaWFuLm9yZ1xuIgorIlBPVC1DcmVhdGlvbi1EYXRlOiAyMDExLTEwLTE0IDA3OjExKzAyMDBcbiIKKyJQTy1SZXZpc2lvbi1EYXRlOiAyMDA2LTEwLTA5IDIwOjM3KzA5MzBcbiIKKyJMYXN0LVRyYW5zbGF0b3I6IENseXRpZSBTaWRkYWxsIDxjbHl0aWVAcml2ZXJsYW5kLm5ldC5hdT5cbiIKKyJMYW5ndWFnZS1UZWFtOiBWaWV0bmFtZXNlIDx2aS1WTkBnb29nbGVncm91cHMuY29tPlxuIgorIkxhbmd1YWdlOiB2aVxuIgorIk1JTUUtVmVyc2lvbjogMS4wXG4iCisiQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PVVURi04XG4iCisiQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdFxuIgorIlBsdXJhbC1Gb3JtczogbnBsdXJhbHM9MTsgcGx1cmFsPTA7XG4iCisiWC1HZW5lcmF0b3I6IExvY0ZhY3RvcnlFZGl0b3IgMS42ZmMxXG4iCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MTI1Cittc2dpZCAiU2VhcmNoIGZvciA/ICIKK21zZ3N0ciAiVMOsbSBraeG6v20gPyAiCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MTQ3Cittc2dpZCAiRXJyb3I6ICIKK21zZ3N0ciAiTOG7l2k6ICIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxNzgKK21zZ2lkICJIZWxwOiAiCittc2dzdHIgIlRy4bujIGdpw7pwOiAiCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MTg0Cittc2dpZCAiUHJlc3MgPyBmb3IgaGVscCBtZW51LCAuIGZvciBuZXh0IHRvcGljLCA8c3BhY2U+IHRvIGV4aXQgaGVscC4iCittc2dzdHIgIiIKKyJOaOG6pW46XG4iCisiXHQ/IFx0XHRcdFx0xJHhu4MgaGnhu4duIHRyw6xuaCDEkcahbiB0cuG7oyBnacO6cFxuIgorIlx0Llx0XHRcdFx0KGThuqV1IGNo4bqlbSkgxJHhu4MgeGVtIGNo4bunIMSR4buBIHRp4bq/cCB0aGVvXG4iCisiXHRwaMOtbSBkw6BpIFx0xJHhu4MgdGhvw6F0IGto4buPaSB0cuG7oyBnacO6cC4iCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MTkxCittc2dpZCAiSGVscCBpbmZvcm1hdGlvbiBpcyBhdmFpbGFibGUgdW5kZXIgdGhlIGZvbGxvd2luZyB0b3BpY3M6IgorbXNnc3RyICJDw7Mgc+G6tW4gdGjDtG5nIHRpbiB0cuG7oyBnacO6cCBkxrDhu5tpIG5o4buvbmcgY2jhu6cgxJHhu4Egc2F1IDoiCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MTk5Cittc2dpZCAiIgorIlByZXNzIGEga2V5IGZyb20gdGhlIGxpc3QgYWJvdmUsIDxzcGFjZT4gb3IgYHEnIHRvIGV4aXQgaGVscCxcbiIKKyIgIG9yIGAuJyAoZnVsbCBzdG9wKSB0byByZWFkIGVhY2ggaGVscCBwYWdlIGluIHR1cm4uICIKK21zZ3N0ciAiIgorIk5o4bqlbjpcbiIKKyJcdG3hu5l0IHBow61tIHThu6sgZGFuaCBzw6FjaCDhu58gdHLDqm4sXG4iCisiXHRwaMOtbSBkw6BpIGhv4bq3YyBwaMOtbSBRIMSR4buDIHRob8OhdCwgaG/hurdjXG4iCisiXHQuXHQoZOG6pXUgY2jhuqVtKSDEkeG7gyDEkeG7jWMgbeG7l2kgdHJhbmcgdHLhu6MgZ2nDunAgbOG6p24gbMaw4bujdC4gIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjIwNQorbXNnaWQgImVycm9yIHJlYWRpbmcga2V5Ym9hcmQgaW4gaGVscCIKK21zZ3N0ciAiZ+G6t3AgbOG7l2kga2hpIMSR4buNYyBiw6BuIHBow61tIHRyb25nIHRy4bujIGdpw7pwIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjU3Cittc2dpZCAiaW9jdGwoVElPQ0dXSU5TWikgZmFpbGVkIgorbXNnc3RyICJpb2N0bChUSU9DR1dJTlNaKSB0aOG6pXQgYuG6oWkiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6NjAKK21zZ2lkICJkb3VwZGF0ZSBpbiBTSUdXSU5DSCBoYW5kbGVyIGZhaWxlZCIKK21zZ3N0ciAiZG91cGRhdGUgKGNo4bqheSBj4bqtcCBuaOG6rXQpIHRyb25nIHBo4bqnbiDEkWnhu4F1IGtoaeG7g24gU0lHV0lOQ0ggYuG7iyBs4buXaSIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo2NworbXNnaWQgImZhaWxlZCB0byByZXN0b3JlIG9sZCBTSUdXSU5DSCBzaWdhY3QiCittc2dzdHIgInZp4buHYyBwaOG7pWMgaOG7k2kgU0lHV0lOQ0ggc2lnYWN0IGPFqSBi4buLIGzhu5dpIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjY5Cittc2dpZCAiZmFpbGVkIHRvIHJlc3RvcmUgb2xkIHNpZ25hbCBtYXNrIgorbXNnc3RyICJ2aeG7h2MgcGjhu6VjIGjhu5NpIG3hurd0IG7huqEgdMOtbiBoaeG7h3UgY8WpIGLhu4sgbOG7l2kiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6NzkKK21zZ2lkICJmYWlsZWQgdG8gZ2V0IG9sZCBzaWduYWwgbWFzayIKK21zZ3N0ciAidmnhu4djIGzhuqV5IG3hurd0IG7huqEgdMOtbiBoaeG7h3UgY8WpIGLhu4sgbOG7l2kiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6ODAKK21zZ2lkICJmYWlsZWQgdG8gZ2V0IG9sZCBTSUdXSU5DSCBzaWdhY3QiCittc2dzdHIgInZp4buHYyBs4bqleSBt4bq3dCBu4bqhIFNJR1dJTkNIIHNpZ2FjdCBjxakgYuG7iyBs4buXaSIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo4NAorbXNnaWQgImZhaWxlZCB0byBibG9jayBTSUdXSU5DSCIKK21zZ3N0ciAidmnhu4djIG5nxINuIGNo4bq3biBTSUdXSU5DSCBi4buLIGzhu5dpIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjg5Cittc2dpZCAiZmFpbGVkIHRvIHNldCBuZXcgU0lHV0lOQ0ggc2lnYWN0IgorbXNnc3RyICJ2aeG7h2MgxJHhurd0IFNJR1dJTkNIIHNpZ2FjdCBt4bubaSBi4buLIGzhu5dpIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjEyNgorbXNnaWQgImZhaWxlZCB0byBhbGxvY2F0ZSBjb2xvdXIgcGFpciIKK21zZ3N0ciAidmnhur9jIGPhuqVwIHBow6F0IGPhurdwIG3DoHUgYuG7iyBs4buXaSIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxNjcKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHRpdGxlIHdpbmRvdyIKK21zZ3N0ciAidmnhu4djIHThuqFvIGPhu61hIHPhu5UgdGnDqnUgxJHhu4EgYuG7iyBs4buXaSIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxNzEKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHdoYXRpbmZvIHdpbmRvdyIKK21zZ3N0ciAidmnhu4djIHThuqFvIGPhu61hIHPhu5Ugd2hhdGluZm8gKHRow7RuZyB0aW4gbsOgbz8pIGLhu4sgbOG7l2kiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTc1Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBiYXNlbGlzdCBwYWQiCittc2dzdHIgInZp4buHYyB04bqhbyBwaOG6p24gxJHhu4dtIGJhc2VsaXN0IChkYW5oIHPDoWNoIGPGoSBi4bqjbikgYuG7iyBs4buXaSIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxNzgKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGhlYWRpbmcgcGFkIgorbXNnc3RyICJ2aeG7h2MgdOG6oW8gcGjhuqduIMSR4buHbSBoZWFkaW5nICh0acOqdSDEkeG7gSkgYuG7iyBs4buXaSIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxODIKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHRoaXNzdGF0ZSBwYWQiCittc2dzdHIgInZp4buHYyB04bqhbyBwaOG6p24gxJHhu4dtIHRoaXNzdGF0ZSAodMOtbmggdHLhuqFuZyBuw6B5KSBi4buLIGzhu5dpIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE4NgorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgaW5mbyBwYWQiCittc2dzdHIgInZp4buHYyB04bqhbyBwaOG6p24gxJHhu4dtIGluZm8gKHRow7RuZyB0aW4pIGLhu4sgbOG7l2kiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTkxCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBxdWVyeSB3aW5kb3ciCittc2dzdHIgInZp4buHYyB04bqhbyBj4butYSBz4buVIHRydXkgduG6pW4gYuG7iyBs4buXaSIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoyNTUKKyMsIGZ1enp5Cittc2dpZCAiS2V5YmluZGluZ3MiCittc2dzdHIgInThu5UgaOG7o3AgcGjDrW0iCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MzAzCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgLS0gJWQlJSwgcHJlc3MgIgorbXNnc3RyICIgIC0tICVkJSUsIG5o4bqlbiAiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MzA2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGZvciBtb3JlIgorbXNnc3RyICIlcyDEkeG7gyB4ZW0gdGjDqm0iCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MzEwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHRvIGdvIGJhY2siCittc2dzdHIgIiVzIMSR4buDIHF1YXkgbOG6oWkiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6NzgKK21zZ2lkICJbbm90IGJvdW5kXSIKK21zZ3N0ciAiW2tow7RuZyBjw7MgdOG7lSBo4bujcF0iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiW3VuazogJWRdIgorbXNnc3RyICJba2jDtG5nIHLDtTogJWRdIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjEzOQorbXNnaWQgIlNjcm9sbCBvbndhcmRzIHRocm91Z2ggaGVscC9pbmZvcm1hdGlvbiIKK21zZ3N0ciAiQ3Xhu5luIHbhu4EgcGjDrWEgdHLGsOG7m2MgdHJvbmcgdHLhu6MgZ2nDunAvdGjDtG5nIHRpbiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDAKK21zZ2lkICJTY3JvbGwgYmFja3dhcmRzIHRocm91Z2ggaGVscC9pbmZvcm1hdGlvbiIKK21zZ3N0ciAiQ3Xhu5luIG5nxrDhu6NjIGzhuqFpIHRyb25nIHRy4bujIGdpw7pwL3Row7RuZyB0aW4iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQxCittc2dpZCAiTW92ZSB1cCIKK21zZ3N0ciAixJBpIGzDqm4iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQyCittc2dpZCAiTW92ZSBkb3duIgorbXNnc3RyICLEkGkgeHXhu5FuZyIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDMKK21zZ2lkICJHbyB0byB0b3Agb2YgbGlzdCIKK21zZ3N0ciAixJBpIHThu5tpIMSR4bqndSBkYW5oIHPDoWNoIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0NAorbXNnaWQgIkdvIHRvIGVuZCBvZiBsaXN0IgorbXNnc3RyICLEkGkgdOG7m2kgY3Xhu5FpIGRhbmggc8OhY2giCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ1Cittc2dpZCAiUmVxdWVzdCBoZWxwIChjeWNsZSB0aHJvdWdoIGhlbHAgc2NyZWVucykiCittc2dzdHIgIlnDqnUgY+G6p3UgdHLhu6MgZ2nDunAgKHF1YXkgdsOybmcgcXVhIGPDoWMgbcOgbiBow6xuaCB0cuG7oyBnacO6cCkiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ2Cittc2dpZCAiQ3ljbGUgdGhyb3VnaCBpbmZvcm1hdGlvbiBkaXNwbGF5cyIKK21zZ3N0ciAiUXVheSB2w7JuZyBxdWEgY8OhYyBtw6BuIGjDrG5oIHRow7RuZyB0aW4iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ3Cittc2dpZCAiUmVkcmF3IGRpc3BsYXkiCittc2dzdHIgIlbhur0gbOG6oWkgbcOgbiBow6xuaCIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDgKK21zZ2lkICJTY3JvbGwgb253YXJkcyB0aHJvdWdoIGxpc3QgYnkgMSBsaW5lIgorbXNnc3RyICJDdeG7mW4gduG7gSBwaMOtYSB0csaw4bubYyB0cm9uZyBkYW5oIHPDoWNoIDEgZMOybmciCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ5Cittc2dpZCAiU2Nyb2xsIGJhY2t3YXJkcyB0aHJvdWdoIGxpc3QgYnkgMSBsaW5lIgorbXNnc3RyICJDdeG7mW4gbmfGsOG7o2MgbOG6oWkgdHJvbmcgZGFuaCBzw6FjaCAxIGTDsm5nIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1MAorbXNnaWQgIlNjcm9sbCBvbndhcmRzIHRocm91Z2ggaGVscC9pbmZvcm1hdGlvbiBieSAxIGxpbmUiCittc2dzdHIgIkN14buZbiB24buBIHBow61hIHRyxrDhu5tjIHRyb25nIHRy4bujIGdpw7pwL3Row7RuZyB0aW4gMSBkw7JuZyIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTEKK21zZ2lkICJTY3JvbGwgYmFja3dhcmRzIHRocm91Z2ggaGVscC9pbmZvcm1hdGlvbiBieSAxIGxpbmUiCittc2dzdHIgIkN14buZbiBuZ8aw4bujYyBs4bqhaSB0cm9uZyB0cuG7oyBnacO6cC90aMO0bmcgdGluIDEgZMOybmciCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTUyCittc2dpZCAiU2Nyb2xsIG9ud2FyZHMgdGhyb3VnaCBsaXN0IgorbXNnc3RyICJDdeG7mW4gduG7gSBwaMOtYSB0csaw4bubYyB0cm9uZyBkYW5oIHPDoWNoIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1MworbXNnaWQgIlNjcm9sbCBiYWNrd2FyZHMgdGhyb3VnaCBsaXN0IgorbXNnc3RyICJDdeG7mW4gbmfGsOG7o2MgbOG6oWkgdHJvbmcgZGFuaCBzw6FjaCIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTYKK21zZ2lkICJNYXJrIHBhY2thZ2UocykgZm9yIGluc3RhbGxhdGlvbiIKK21zZ3N0ciAixJDDoW5oIGThuqV1IChjw6FjKSBnw7NpIMSR4buDIGPDoGkgxJHhurd0IgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1NworbXNnaWQgIk1hcmsgcGFja2FnZShzKSBmb3IgZGVpbnN0YWxsYXRpb24iCittc2dzdHIgIsSQw6FuaCBk4bqldSAoY8OhYykgZ8OzaSDEkeG7gyBo4buneSBjw6BpIMSR4bq3dCIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTgKK21zZ2lkICJNYXJrIHBhY2thZ2UocykgZm9yIGRlaW5zdGFsbCBhbmQgcHVyZ2UiCittc2dzdHIgIsSQw6FuaCBk4bqldSAoY8OhYykgZ8OzaSDEkeG7gyBo4buneSBjw6BpIMSR4bq3dCB2w6AgdOG6qXkiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTU5Cittc2dpZCAiTWFrZSBoaWdobGlnaHQgbW9yZSBzcGVjaWZpYyIKK21zZ3N0ciAiS2hp4bq/biBjaGnhur91IHPDoW5nIHLDtSByw6BuZyBoxqFuIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2MAorbXNnaWQgIk1ha2UgaGlnaGxpZ2h0IGxlc3Mgc3BlY2lmaWMiCittc2dzdHIgIktoaeG6v24gY2hp4bq/dSBzw6FuZyDDrXQgcsO1IHLDoG5nIGjGoW4iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTYxCittc2dpZCAiU2VhcmNoIGZvciBhIHBhY2thZ2Ugd2hvc2UgbmFtZSBjb250YWlucyBhIHN0cmluZyIKK21zZ3N0ciAiVMOsbSBraeG6v20gbeG7mXQgZ8OzaSBtw6AgdMOqbiBjaOG7qWEgbeG7mXQgY2h14buXaSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjIKK21zZ2lkICJSZXBlYXQgbGFzdCBzZWFyY2guIgorbXNnc3RyICJM4bq3cCBs4bqhaSB0w6xtIGtp4bq/bSBjdeG7kWkgY8O5bmcuIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2MworbXNnaWQgIlN3YXAgc29ydCBvcmRlciBwcmlvcml0eS9zZWN0aW9uIgorbXNnc3RyICJUcmFvIMSR4buVaSDGsHUgdGnDqm4vcGjhuqduIGPhu6dhIHRo4bupIHThu7Egc+G6r3AgeOG6v3AiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY0Cittc2dpZCAiUXVpdCwgY29uZmlybWluZywgYW5kIGNoZWNraW5nIGRlcGVuZGVuY2llcyIKK21zZ3N0ciAiVGhvw6F0LCB4w6FjIG5o4bqtbiwgdsOgIGtp4buDbSB0cmEgcGjhu6UgdGh14buZYyIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjUKK21zZ2lkICJRdWl0LCBjb25maXJtaW5nIHdpdGhvdXQgY2hlY2siCittc2dzdHIgIlRob8OhdCwgeMOhYyBuaOG6rW4gbcOgIGtow7RuZyBraeG7g20gdHJhIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2NgorbXNnaWQgIlF1aXQsIHJlamVjdGluZyBjb25mbGljdC9kZXBlbmRlbmN5IHN1Z2dlc3Rpb25zIgorbXNnc3RyICJUaG/DoXQsIHThu6sgY2jhu5FpIG5o4buvbmcgxJHhu4Egbmdo4buLIHh1bmcgxJHhu5l0L3Bo4bulIHRodeG7mWMiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY3Cittc2dpZCAiQWJvcnQgLSBxdWl0IHdpdGhvdXQgbWFraW5nIGNoYW5nZXMiCittc2dzdHIgIkjhu6d5IGLhu48g4oCUIHRob8OhdCBtw6Aga2jDtG5nIHRoYXkgxJHhu5VpIGfDrCIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjgKK21zZ2lkICJSZXZlcnQgdG8gb2xkIHN0YXRlIGZvciBhbGwgcGFja2FnZXMiCittc2dzdHIgIsSQxrBhIG3hu41pIGfDs2kgdHLhu58gduG7gSB0w61uaCB0cuG6oW5nIGPFqSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjkKK21zZ2lkICJSZXZlcnQgdG8gc3VnZ2VzdGVkIHN0YXRlIGZvciBhbGwgcGFja2FnZXMiCittc2dzdHIgIsSQxrBhIG3hu41pIGfDs2kgdHLhu58gduG7gSB0w61uaCB0cuG6oW5nIMSRw6MgxJHhu4Egbmdo4buLIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE3MAorbXNnaWQgIlJldmVydCB0byBkaXJlY3RseSByZXF1ZXN0ZWQgc3RhdGUgZm9yIGFsbCBwYWNrYWdlcyIKK21zZ3N0ciAixJDGsGEgbeG7jWkgZ8OzaSB0cuG7nyB24buBIHTDrW5oIHRy4bqhbmcgxJHDoyDEkeG7gSBuZ2jhu4sgdGjhurNuZyIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNzEKKyMsIGZ1enp5Cittc2dpZCAiUmV2ZXJ0IHRvIGN1cnJlbnRseSBpbnN0YWxsZWQgc3RhdGUgZm9yIGFsbCBwYWNrYWdlcyIKK21zZ3N0ciAixJDGsGEgbeG7jWkgZ8OzaSB0cuG7nyB24buBIHTDrW5oIHRy4bqhbmcgxJHDoyDEkeG7gSBuZ2jhu4sgdGjhurNuZyIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNzQKK21zZ2lkICJTZWxlY3QgY3VycmVudGx5LWhpZ2hsaWdodGVkIGFjY2VzcyBtZXRob2QiCittc2dzdHIgIkNo4buNbiBwaMawxqFuZyBwaMOhcCB0cnV5IGPhuq1wIMSRYW5nIMSRxrDhu6NjIGNoaeG6v3Ugc8OhbmciCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTc1Cittc2dpZCAiUXVpdCB3aXRob3V0IGNoYW5naW5nIHNlbGVjdGVkIGFjY2VzcyBtZXRob2QiCittc2dzdHIgIlRob8OhdCBtw6Aga2jDtG5nIHRoYXkgxJHhu5VpIHBoxrDGoW5nIHBow6FwIHRydXkgY+G6rXAgxJHDoyBjaOG7jW4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MjkKK21zZ2lkICJLZXlzdHJva2VzIgorbXNnc3RyICJQaMOtbSB04bqvdCIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoyOQorIywgZnV6enkKK21zZ2lkICIiCisiTW90aW9uIGtleXM6IE5leHQvUHJldmlvdXMsIFRvcC9FbmQsIFVwL0Rvd24sIEJhY2t3YXJkcy9Gb3J3YXJkczpcbiIKKyIgIGosIERvd24tYXJyb3cgICAgICAgICBrLCBVcC1hcnJvdyAgICAgICAgICAgICBtb3ZlIGhpZ2hsaWdodFxuIgorIiAgTiwgUGFnZS1kb3duLCBTcGFjZSAgIFAsIFBhZ2UtdXAsIEJhY2tzcGFjZSAgIHNjcm9sbCBsaXN0IGJ5IDEgcGFnZVxuIgorIiAgXm4gICAgICAgICAgICAgICAgICAgIF5wICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBsaXN0IGJ5IDEgbGluZVxuIgorIiAgdCwgSG9tZSAgICAgICAgICAgICAgIGUsIEVuZCAgICAgICAgICAgICAgICAgIGp1bXAgdG8gdG9wL2VuZCBvZiBsaXN0XG4iCisiICB1ICAgICAgICAgICAgICAgICAgICAgZCAgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGluZm8gYnkgMSBwYWdlXG4iCisiICBedSAgICAgICAgICAgICAgICAgICAgXmQgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGluZm8gYnkgMSBsaW5lXG4iCisiICBCLCBMZWZ0LWFycm93ICAgICAgICAgRiwgUmlnaHQtYXJyb3cgICAgICAgICAgcGFuIGRpc3BsYXkgYnkgMS8zIHNjcmVlblxuIgorIiAgXmIgICAgICAgICAgICAgICAgICAgIF5mICAgICAgICAgICAgICAgICAgICAgIHBhbiBkaXNwbGF5IGJ5IDEgY2hhcmFjdGVyXG4iCisiXG4iCisiTWFyayBwYWNrYWdlcyBmb3IgbGF0ZXIgcHJvY2Vzc2luZzpcbiIKKyIgKywgSW5zZXJ0ICBpbnN0YWxsIG9yIHVwZ3JhZGUgICAgICA9LCBIICBob2xkIGluIHByZXNlbnQgc3RhdGVcbiIKKyIgLSwgRGVsZXRlICByZW1vdmUgICAgICAgICAgICAgICAgICA6LCBHICB1bmhvbGQ6IHVwZ3JhZGUgb3IgbGVhdmUgIgorInVuaW5zdGFsbGVkXG4iCisiIF8gICAgICAgICAgcmVtb3ZlICYgcHVyZ2UgY29uZmlnXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTWlzY2VsbGFuZW91czpcbiIKKyJRdWl0LCBleGl0LCBvdmVyd3JpdGUgKG5vdGUgY2FwaXRhbHMhKTogICAgICAgPywgRjEgcmVxdWVzdCBoZWxwIChhbHNvICIKKyJIZWxwKVxuIgorIiBSZXR1cm4gIENvbmZpcm0sIHF1aXQgKGNoZWNrIGRlcGVuZGVuY2llcykgICBpLCBJICB0b2dnbGUvY3ljbGUgaW5mbyAiCisiZGlzcGxheXNcbiIKKyIgICBRICAgICBDb25maXJtLCBxdWl0IChvdmVycmlkZSBkZXAucykgICAgICAgbywgTyAgY3ljbGUgdGhyb3VnaCBzb3J0ICIKKyJvcHRpb25zXG4iCisiIFgsIEVzYyAgZVhpdCwgYWJhbmRvbmluZyBhbnkgY2hhbmdlcyBtYWRlICAgIHYsIFYgIGNoYW5nZSBzdGF0dXMgZGlzcGxheSAiCisib3B0c1xuIgorIiAgIFIgICAgIFJldmVydCB0byBzdGF0ZSBiZWZvcmUgdGhpcyBsaXN0ICAgICAgXmwgICByZWRyYXcgZGlzcGxheVxuIgorIiAgIFUgICAgIHNldCBhbGwgdG8gc1VnZ2VzdGVkIHN0YXRlICAgICAgICAgICAgIC8gICBzZWFyY2ggKFJldHVybiB0byAiCisiY2FuY2VsKVxuIgorIiAgIEQgICAgIHNldCBhbGwgdG8gRGlyZWN0bHkgcmVxdWVzdGVkIHN0YXRlICBuLCBcXCAgcmVwZWF0IGxhc3Qgc2VhcmNoXG4iCittc2dzdHIgIiIKKyJQaMOtbSBkaSBjaHV54buDbjpcbiIKKyJcdEvhur8vVHLGsOG7m2MsIMSQ4bqndS9DdeG7kWksIEzDqm4vWHXhu5FuZywgTMO5aS9UaeG6v3A6XG4iCisiICBNxalpIHTDqm4geHXhu5FuZywgSiAgICAgICAgIE3FqWkgdMOqbiBsw6puLCBLICAgICAgICAgICAgIGRpIGNodXnhu4NuIGNoaeG6v3Ugc8OhbmdcbiIKKyIgIE4sIFBhZ2UtZG93biwgUGjDrW0gZMOgaSAgIFx0XHRcdFAsIFBhZ2UtdXAsIEJhY2tzcGFjZSAoWMOzYSBsw7lpKVxuIgorIlx0XHRcdFx0XHRcdFx0Y3Xhu5luIDEgdHJhbmcgZGFuaCBzw6FjaFxuIgorIiAgXm4gICAgICAgICAgICAgICAgICAgIF5wICAgICAgICAgICAgICAgICAgICAgIFx0XHRjdeG7mW4gMSBkw7JuZyBkYW5oIHPDoWNoXG4iCisiICB0LCBIb21lICAgICAgICAgICAgZSwgRW5kICAgICAgICAgICAgICAgICAgXHRuaOG6o3kgdOG7m2kgxJHhuqd1L2N14buRaSBkYW5oIHPDoWNoXG4iCisiICB1ICAgICAgICAgICAgICAgICAgICAgIGQgICAgICAgICAgICAgICAgICAgICAgIFx0Y3Xhu5luIDEgdHJhbmcgdGjDtG5nIHRpblxuIgorIiAgXnUgICAgICAgICAgICAgICAgICAgIF5kICAgICAgICAgICAgICAgICAgICAgIFx0Y3Xhu5luIDEgZMOybmcgdGjDtG5nIHRpblxuIgorIiAgQiwgTcWpaSB0w6puIHRyw6FpICAgXHRcdEYsIE3FqWkgdMOqbiBwaOG6o2kgICAgICAgICAga8OpbyBuZ2FuZyAxLzMgbcOgbiBow6xuaFxuIgorIiAgXmIgICAgICAgICAgICAgICAgICAgIF5mICAgICAgICAgICAgICAgICAgIGvDqW8gbmdhbmcgbcOgbiBow6xuaCB0aGVvIDEga8O9ICIKKyJ04buxXG4iCisiXG4iCisixJDDoW5oIGThuqV1IGfDs2kgxJHhu4MgeOG7rSBsw70gc2F1OlxuIgorIlx0KywgSW5zZXJ0ICBcdFx0XHRjw6BpIMSR4bq3dCBob+G6t2MgY+G6rXAgbmjhuq10XG4iCisiXHQ9LCBIICBcdFx0XHRcdGdp4buvIHRyb25nIHTDrW5oIHRy4bqhbmcgaGnhu4duIHRo4budaVxuIgorIiBcdC0sIERlbGV0ZSAgXHRcdFx0eMOzYSBi4buPLCBn4buhIGLhu49cbiIKKyJcdDosIEcgIFx0XHRcdFx0XHRi4buPIGdp4buvOiBj4bqtcCBuaOG6rXQgaG/hurdjIMSR4buDIGtow7RuZyBjw6BpIMSR4bq3dFxuIgorIlx0XyAgICAgICAgICBcdFx0XHRcdGfhu6EgYuG7jyB2w6AgdOG6qXkgY+G6pXUgaMOsbmhcbiIKKyJcbiIKKyJUw61uaCBuxINuZyBraMOhYzpcbiIKKyJcdFF1aXRcdFx0XHRcdFx0KGNo4buvIGhvYSDEkeG6p3UhKSB0aG/DoXRcbiIKKyJcdGV4aXRcdFx0XHRcdFx0dGhvw6F0IGzhu4duaCBuw6B5XG4iCisiXHRvdmVyd3JpdGVcdFx0XHRnaGkgxJHDqFxuIgorIlx0PywgRjEsIEhlbHAgXHRcdHnDqnUgY+G6p3UgdHLhu6MgZ2nDunBcbiIKKyIgXHRSZXR1cm4gIFx0XHRcdHjDoWMgbmjhuq1uIHLhu5NpIHRob8OhdCAoa2nhu4NtIHRyYSBwaOG7pSB0aHXhu5ljKVxuIgorIlx0aSwgSSAgXHRcdFx0XHRcdGLhuq10IHThuq90L3F1YXkgdsOybmcgbcOgbiBow6xuaCB0aMO0bmcgdEluXG4iCisiICAgUSAgICAgXHRcdFx0XHRcdHjDoWMgbmjhuq1uIHLhu5NpIHRob8OhdCAoYuG7jyBRdWEgcGjhu6UgdGh14buZYylcbiIKKyJcdG8sIE8gIFx0XHRcdFx0cXVheSB2w5JuZyBxdWEgY8OhYyB0w7l5IGNo4buNbiBz4bqvcCB44bq/cFxuIgorIlx0WCwgRXNjICBcdFx0XHRcdHRob8OhdCBtw6AgYuG7jyBt4buNaSB0aGF5IMSR4buVaVxuIgorIlx0diwgViAgXHRcdFx0XHRcdHRoYXkgxJHhu5VpIHTDuXkgY2jhu41uIGhp4buDbiB0aOG7iyB0cuG6oW5nIHRow6FpXG4iCisiICAgUiAgICAgXHRcdFx0XHRcdMSR4bq3dCBs4bqhaSB0w61uaCB0UuG6oW5nIHRSxrDhu5tjIGRhbmggc8OhY2ggbsOgeVxuIgorIlx0XmwgICBcdFx0XHRcdFx0duG6vSBM4bqhaSBtw6BuIGjDrG5oXG4iCisiICAgVSAgICAgXHRcdFx0XHRcdMSR4bq3dCB04bqldCBj4bqjIHRow6BuaCB0cuG6oW5nIHRow6FpIMSRw6MgxJHhu4cgbmdo4buLXG4iCisiXHQvICAgXHRcdFx0XHRcdHTDrG0ga2nhu4NtIChSZXR1cm4gxJHhu4MgdGjDtGkpXG4iCisiICAgRCAgICAgXHRcdFx0XHRcdMSR4bq3dCB04bqldCBj4bqjIHRow6BuaCB0cuG6oW5nIHRow6FpIFnDqnUgY+G6p3UgdGjhurNuZ1xuIgorIlx0biwgXFwgIFx0XHRcdFx0bOG6t3AgbOG6oWkgdMOsbSBraeG6v20gY3Xhu5FpXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6NTUKK21zZ2lkICJJbnRyb2R1Y3Rpb24gdG8gcGFja2FnZSBzZWxlY3Rpb25zIgorbXNnc3RyICJHaeG7m2kgdGhp4buHdSBz4buxIGzhu7FhIGNo4buNbiBnw7NpIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjU1Cittc2dpZCAiIgorIldlbGNvbWUgdG8gZHNlbGVjdCdzIG1haW4gcGFja2FnZSBsaXN0aW5nLlxuIgorIlxuIgorIllvdSB3aWxsIGJlIHByZXNlbnRlZCB3aXRoIGEgbGlzdCBvZiBwYWNrYWdlcyB3aGljaCBhcmUgaW5zdGFsbGVkIG9yICIKKyJhdmFpbGFibGVcbiIKKyJmb3IgaW5zdGFsbGF0aW9uLiAgWW91IGNhbiBuYXZpZ2F0ZSBhcm91bmQgdGhlIGxpc3QgdXNpbmcgdGhlIGN1cnNvciBrZXlzLFxuIgorIm1hcmsgcGFja2FnZXMgZm9yIGluc3RhbGxhdGlvbiAodXNpbmcgYCsnKSBvciBkZWluc3RhbGxhdGlvbiAodXNpbmcgYC0nKS5cbiIKKyJQYWNrYWdlcyBjYW4gYmUgbWFya2VkIGVpdGhlciBzaW5nbHkgb3IgaW4gZ3JvdXBzOyBpbml0aWFsbHkgeW91IHdpbGwgc2VlICIKKyJ0aGF0XG4iCisidGhlIGxpbmUgYEFsbCBwYWNrYWdlcycgaXMgc2VsZWN0ZWQuICBgKycsIGAtJyBhbmQgc28gb24gd2lsbCBhZmZlY3QgYWxsICIKKyJ0aGVcbiIKKyJwYWNrYWdlcyBkZXNjcmliZWQgYnkgdGhlIGhpZ2hsaWdodGVkIGxpbmUuXG4iCisiXG4iCisiU29tZSBvZiB5b3VyIGNob2ljZXMgd2lsbCBjYXVzZSBjb25mbGljdHMgb3IgZGVwZW5kZW5jeSBwcm9ibGVtczsgeW91IHdpbGwgIgorImJlXG4iCisiZ2l2ZW4gYSBzdWItbGlzdCBvZiB0aGUgcmVsZXZhbnQgcGFja2FnZXMsIHNvIHRoYXQgeW91IGNhbiBzb2x2ZSB0aGUgIgorInByb2JsZW1zLlxuIgorIlxuIgorIllvdSBzaG91bGQgcmVhZCB0aGUgbGlzdCBvZiBrZXlzIGFuZCB0aGUgZXhwbGFuYXRpb25zIG9mIHRoZSBkaXNwbGF5LlxuIgorIk11Y2ggb24tbGluZSBoZWxwIGlzIGF2YWlsYWJsZSwgcGxlYXNlIG1ha2UgdXNlIG9mIGl0IC0gcHJlc3MgYD8nIGF0XG4iCisiYW55IHRpbWUgZm9yIGhlbHAuXG4iCisiXG4iCisiV2hlbiB5b3UgaGF2ZSBmaW5pc2hlZCBzZWxlY3RpbmcgcGFja2FnZXMsIHByZXNzIDxlbnRlcj4gdG8gY29uZmlybSAiCisiY2hhbmdlcyxcbiIKKyJvciBgWCcgdG8gcXVpdCB3aXRob3V0IHNhdmluZyBjaGFuZ2VzLiBBIGZpbmFsIGNoZWNrIG9uIGNvbmZsaWN0cyBhbmRcbiIKKyJkZXBlbmRlbmNpZXMgd2lsbCBiZSBkb25lIC0gaGVyZSB0b28geW91IG1heSBzZWUgYSBzdWJsaXN0LlxuIgorIlxuIgorIlByZXNzIDxzcGFjZT4gdG8gbGVhdmUgaGVscCBhbmQgZW50ZXIgdGhlIGxpc3Qgbm93LlxuIgorbXNnc3RyICIiCisiWGluIGNow6BvIG3hu6tuZyB04bubaSBkYW5oIHPDoWNoIHF14bqjbiBsw70gZ8OzaSBjaMOtbmggY+G7p2EgZHNlbGVjdC5cbiIKKyJcbiIKKyLEkMOieSBsw6AgZGFuaCBzw6FjaCBuaOG7r25nIGfDs2kgxJHDoyBjw6BpIMSR4bq3dCBob+G6t2Mgc+G6tW4gc8OgbmcgxJHhu4MgY8OgaSDEkeG6t3QuXG4iCisiQ8OzIHRo4buDIGRpIGNodXnhu4NuIHF1YW5oIGRhbmggc8OhY2ggYuG6sW5nIGPDoWMgcGjDrW0gbcWpaSB0w6puLFxuIgorIsSRw6FuaCBk4bqldSBjw6FjIGfDs2kgxJHhu4MgY8OgaSDEkeG6t3QgKGTDuW5nIGArJykgaG/hurdjIGjhu6d5IGPDoGkgxJHhurd0IChkw7luZyBgLScpLlxuIgorIkPDsyB0aOG7gyDEkcOhbmggZOG6pXUgY8OhYyBnw7NpIHJpw6puZyBy4bq9IGhv4bq3YyB0aGVvIG5ow7NtO1xuIgorIsSR4bqndSB0acOqbiBkw7JuZyDCqyBN4buNaSBnw7NpIMK7IMSRxrDhu6NjIGNo4buNbi5cbiIKKyIgIGArJywgYC0nIHYudi4g4bqjbmggaMaw4bufbmcgbeG7jWkgZ8OzaSBu4bqxbSB0csOqbiBkw7JuZyBjaGnhur91IHPDoW5nLlxuIgorIlxuIgorIk3hu5l0IHbDoGkgbOG7sWEgY2jhu41uIGPDsyB0aOG7gyB04bqhbyB24bqlbiDEkeG7gSB4dW5nIMSR4buZdCBob+G6t2MgcGjhu6UgdGh14buZYztcbiIKKyJu4bq/dSB24bqteSB0aMOsIHPhur0gY8OzIG3hu5l0IGRhbmggc8OhY2ggY29uIGPhu6dhIG5o4buvbmcgZ8OzaSBsacOqbiBxdWFuLFxuIgorIsSR4buDIGdpw7pwIGdp4bqjaSBxdXnhur90IHbhuqVuIMSR4buBLlxuIgorIlxuIgorIk7Dqm4gxJHhu41jIG3DoG4gaMOsbmggZGFuaCBzw6FjaCBjw6FjIHBow61tIHThuq90IHbDoCB0w6FjIMSR4buZbmcgxJHhu4F1LlxuIgorIkPDsyBj4bqjIHRy4bujIGdpw7pwIHRy4buxYyB0aeG6v3AgdHJvbmcgY2jGsMahbmcgdHLDrG5oLCBi4bqhbiB4ZW0gbmjDqS5cbiIKKyJIaeG7g24gdGjhu4sgdHLhu6MgZ2nDunAgbsOgeSBi4bqldCBr4buzIGzDumMgbsOgbyBi4bqxbmcgcGjDrW0gwqsgPyDCuy5cbiIKKyJcbiIKKyJLaGkgxJHDoyBr4bq/dCB0aMO6YyB2aeG7h2MgY2jhu41uIGfDs2ksIG5o4bqlbiBwaMOtbSA8ZW50ZXI+IMSR4buDIHjDoWMgdGjhu7FjIHRoYXkgxJHhu5VpLFxuIgorImhv4bq3YyBwaMOtbSDCqyBYIMK7IMSR4buDIHRob8OhdCByYSBtw6Aga2jDtG5nIGdoaSBuaOG7myB0aGF5IMSR4buVaS5cbiIKKyJDdeG7kWkgY8O5bmcgbMOgIHZp4buHYyBraeG7g20gdHJhIHh1bmcgxJHhu5l0IHbDoCBwaOG7pSB0aHXhu5ljIOKAlCBjxaluZyBjw7MgdGjhu4MgaGnhu4NuIHRo4buLIG3hu5l0ICIKKyJkYW5oIHPDoWNoIGNvbi5cbiIKKyJcbiIKKyJMw7pjIG7DoHksIGLhuqFuIG5o4bqlbiBwaMOtbSBkw6BpIMSR4buDIGThu51pIGto4buPaSB0cuG7oyBnacO6cCB2w6AgxJFpIHbDoG8gZGFuaCBzw6FjaC5cbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo4MAorbXNnaWQgIkludHJvZHVjdGlvbiB0byByZWFkLW9ubHkgcGFja2FnZSBsaXN0IGJyb3dzZXIiCittc2dzdHIgIkdp4bubaSB0aGnhu4d1IGLhu5kgZHV54buHdCBkYW5oIHPDoWNoIGfDs2kgY2jhu4kgxJHhu41jIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjgwCittc2dpZCAiIgorIldlbGNvbWUgdG8gZHNlbGVjdCdzIG1haW4gcGFja2FnZSBsaXN0aW5nLlxuIgorIlxuIgorIllvdSB3aWxsIGJlIHByZXNlbnRlZCB3aXRoIGEgbGlzdCBvZiBwYWNrYWdlcyB3aGljaCBhcmUgaW5zdGFsbGVkIG9yICIKKyJhdmFpbGFibGVcbiIKKyJmb3IgaW5zdGFsbGF0aW9uLiAgU2luY2UgeW91IGRvIG5vdCBoYXZlIHRoZSBwcml2aWxlZ2UgbmVjZXNzYXJ5IHRvIHVwZGF0ZVxuIgorInBhY2thZ2Ugc3RhdGVzLCB5b3UgYXJlIGluIGEgcmVhZC1vbmx5IG1vZGUuICBZb3UgY2FuIG5hdmlnYXRlIGFyb3VuZCB0aGVcbiIKKyJsaXN0IHVzaW5nIHRoZSBjdXJzb3Iga2V5cyAocGxlYXNlIHNlZSB0aGUgYEtleXN0cm9rZXMnIGhlbHAgc2NyZWVuKSwgIgorIm9ic2VydmVcbiIKKyJ0aGUgc3RhdHVzIG9mIHRoZSBwYWNrYWdlcyBhbmQgcmVhZCBpbmZvcm1hdGlvbiBhYm91dCB0aGVtLlxuIgorIlxuIgorIllvdSBzaG91bGQgcmVhZCB0aGUgbGlzdCBvZiBrZXlzIGFuZCB0aGUgZXhwbGFuYXRpb25zIG9mIHRoZSBkaXNwbGF5LlxuIgorIk11Y2ggb24tbGluZSBoZWxwIGlzIGF2YWlsYWJsZSwgcGxlYXNlIG1ha2UgdXNlIG9mIGl0IC0gcHJlc3MgYD8nIGF0XG4iCisiYW55IHRpbWUgZm9yIGhlbHAuXG4iCisiXG4iCisiV2hlbiB5b3UgaGF2ZSBmaW5pc2hlZCBicm93c2luZywgcHJlc3MgYFEnIG9yIDxlbnRlcj4gdG8gcXVpdC5cbiIKKyJcbiIKKyJQcmVzcyA8c3BhY2U+IHRvIGxlYXZlIGhlbHAgYW5kIGVudGVyIHRoZSBsaXN0IG5vdy5cbiIKK21zZ3N0ciAiIgorIlhpbiBjaMOgbyBt4burbmcgdOG7m2kgZGFuaCBzw6FjaCBxdeG6o24gbMO9IGfDs2kgY2jDrW5oIGPhu6dhIGRzZWxlY3QuXG4iCisiXG4iCisixJDDonkgbMOgIGRhbmggc8OhY2ggbmjhu69uZyBnw7NpIMSRw6MgY8OgaSDEkeG6t3QgaG/hurdjIHPhurVuIHPDoG5nIMSR4buDIGPDoGkgxJHhurd0LlxuIgorIlbDrCBi4bqhbiBraMO0bmcgY8OzIMSR4bunIHF1eeG7gW4gY+G6p24gdGhp4bq/dCDEkeG7gyBj4bqtcCBuaOG6rXQgdMOtbmggdHLhuqFuZyBjw6FjIGfDs2ksXG4iCisibsOqbiBu4bqxbSB0cm9uZyBjaOG6vyDEkeG7mSBjaOG7iSDEkeG7jWMuIEPDsyB0aOG7gyBkaSBjaHV54buDbiBxdWFuaCBkYW5oIHPDoWNoXG4iCisiYuG6sW5nIGPDoWMgcGjDrW0gbcWpaSB0w6puICh4aW4gaMOjeSB4ZW0gbcOgbiBow6xuaCB0cuG7oyBnacO6cCDCqyBQaMOtbSB04bqvdCDCuyksXG4iCisidGhlbyBkw7VpIHRy4bqhbmcgdGjDoWkgY8OhYyBnw7NpIHbDoCDEkeG7jWMgdGjDtG5nIHRpbiB24buBIGNow7puZy5cbiIKKyJcbiIKKyJOw6puIMSR4buNYyBtw6BuIGjDrG5oIGRhbmggc8OhY2ggY8OhYyBwaMOtbSB04bqvdCB2w6AgdMOhYyDEkeG7mW5nIMSR4buBdS5cbiIKKyJDw7MgY+G6oyB0cuG7oyBnacO6cCB0cuG7sWMgdGnhur9wIHRyb25nIGNoxrDGoW5nIHRyw6xuaCwgYuG6oW4geGVtIG5ow6kuXG4iCisiSGnhu4NuIHRo4buLIHRy4bujIGdpw7pwIG7DoHkgYuG6pXQga+G7syBsw7pjIG7DoG8gYuG6sW5nIHBow61tIMKrID8gwrsuXG4iCisiXG4iCisiS2hpIMSRw6Mga+G6v3QgdGjDumMgdmnhu4djIGR1eeG7h3QsIGjDo3kgbmjhuqVuIHBow61tIMKrIFEgwrsgaG/hurdjIHBow61tIGTDoGkgxJHhu4MgdGhvw6F0LlxuIgorIlxuIgorIkzDumMgbsOgeSwgYuG6oW4gbmjhuqVuIHBow61tIGTDoGkgxJHhu4MgZOG7nWkga2jhu49pIHRy4bujIGdpw7pwIHbDoCDEkWkgdsOgbyBkYW5oIHPDoWNoLlxuIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjk5Cittc2dpZCAiSW50cm9kdWN0aW9uIHRvIGNvbmZsaWN0L2RlcGVuZGVuY3kgcmVzb2x1dGlvbiBzdWItbGlzdCIKK21zZ3N0ciAiR2nhu5tpIHRoaeG7h3UgZGFuaCBzw6FjaCBjb24gY8OhYyBnaeG6o2kgcGjDoXAgY2hvIHh1bmcgxJHhu5l0L3Bo4bulIHRodeG7mWMiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6OTkKK21zZ2lkICIiCisiRGVwZW5kZW5jeS9jb25mbGljdCByZXNvbHV0aW9uIC0gaW50cm9kdWN0aW9uLlxuIgorIlxuIgorIk9uZSBvciBtb3JlIG9mIHlvdXIgY2hvaWNlcyBoYXZlIHJhaXNlZCBhIGNvbmZsaWN0IG9yIGRlcGVuZGVuY3kgcHJvYmxlbSAtXG4iCisic29tZSBwYWNrYWdlcyBzaG91bGQgb25seSBiZSBpbnN0YWxsZWQgaW4gY29uanVuY3Rpb24gd2l0aCBjZXJ0YWluIG90aGVycywgIgorImFuZFxuIgorInNvbWUgY29tYmluYXRpb25zIG9mIHBhY2thZ2VzIG1heSBub3QgYmUgaW5zdGFsbGVkIHRvZ2V0aGVyLlxuIgorIlxuIgorIllvdSB3aWxsIHNlZSBhIHN1Yi1saXN0IGNvbnRhaW5pbmcgdGhlIHBhY2thZ2VzIGludm9sdmVkLiAgVGhlIGJvdHRvbSBoYWxmICIKKyJvZlxuIgorInRoZSBkaXNwbGF5IHNob3dzIHJlbGV2YW50IGNvbmZsaWN0cyBhbmQgZGVwZW5kZW5jaWVzOyB1c2UgYGknIHRvIGN5Y2xlICIKKyJiZXR3ZWVuXG4iCisidGhhdCwgdGhlIHBhY2thZ2UgZGVzY3JpcHRpb25zIGFuZCB0aGUgaW50ZXJuYWwgY29udHJvbCBpbmZvcm1hdGlvbi5cbiIKKyJcbiIKKyJBIHNldCBvZiBgc3VnZ2VzdGVkJyBwYWNrYWdlcyBoYXMgYmVlbiBjYWxjdWxhdGVkLCBhbmQgdGhlIGluaXRpYWwgbWFya2luZ3MgIgorImluXG4iCisidGhpcyBzdWItbGlzdCBoYXZlIGJlZW4gc2V0IHRvIG1hdGNoIHRob3NlLCBzbyB5b3UgY2FuIGp1c3QgaGl0IFJldHVybiB0b1xuIgorImFjY2VwdCB0aGUgc3VnZ2VzdGlvbnMgaWYgeW91IHdpc2guICBZb3UgbWF5IGFib3J0IHRoZSBjaGFuZ2Uocykgd2hpY2ggIgorImNhdXNlZFxuIgorInRoZSBwcm9ibGVtKHMpLCBhbmQgZ28gYmFjayB0byB0aGUgbWFpbiBsaXN0LCBieSBwcmVzc2luZyBjYXBpdGFsIGBYJy5cbiIKKyJcbiIKKyJZb3UgY2FuIGFsc28gbW92ZSBhcm91bmQgdGhlIGxpc3QgYW5kIGNoYW5nZSB0aGUgbWFya2luZ3Mgc28gdGhhdCB0aGV5IGFyZSAiCisibW9yZVxuIgorImxpa2Ugd2hhdCB5b3Ugd2FudCwgYW5kIHlvdSBjYW4gYHJlamVjdCcgbXkgc3VnZ2VzdGlvbnMgYnkgdXNpbmcgdGhlICIKKyJjYXBpdGFsXG4iCisiYEQnIG9yIGBSJyBrZXlzIChzZWUgdGhlIGtleWJpbmRpbmdzIGhlbHAgc2NyZWVuKS4gIFlvdSBjYW4gdXNlIGNhcGl0YWwgYFEnICIKKyJ0b1xuIgorImZvcmNlIG1lIHRvIGFjY2VwdCB0aGUgc2l0dWF0aW9uIGN1cnJlbnRseSBkaXNwbGF5ZWQsIGluIGNhc2UgeW91IHdhbnQgdG9cbiIKKyJvdmVycmlkZSBhIHJlY29tbWVuZGF0aW9uIG9yIHRoaW5rIHRoYXQgdGhlIHByb2dyYW0gaXMgbWlzdGFrZW4uXG4iCisiXG4iCisiUHJlc3MgPHNwYWNlPiB0byBsZWF2ZSBoZWxwIGFuZCBlbnRlciB0aGUgc3ViLWxpc3Q7IHJlbWVtYmVyOiBwcmVzcyBgPycgZm9yICIKKyJoZWxwLlxuIgorbXNnc3RyICIiCisiR2nhuqNpIHF1eeG6v3QgcGjhu6UgdGh14buZYy94dW5nIMSR4buZdCDigJQgZ2nhu5tpIHRoaeG7h3UuXG4iCisiXG4iCisiTeG7mXQgaG/hurdjIHbDoGkgbOG7sWEgY2jhu41uIMSRw6MgZ8OieSByYSB24bqlbiDEkeG7gSB4dW5nIMSR4buZdCBoYXkgcGjhu6UgdGh14buZYyDigJRcbiIKKyJt4buZdCBz4buRIGfDs2kgbsOgbyDEkcOzIGNo4buJIGPDoGkgxJHhurd0IMSRxrDhu6NjIGPDuW5nIHbhu5tpIG3hu5l0IHPhu5EgZ8OzaSBraMOhYywgY8OybiBt4buZdCBz4buRIHThu5UgIgorImjhu6NwIGfDs2kga2jDtG5nIHRo4buDIMSRxrDhu6NjIGPDoGkgxJHhurd0IGPDuW5nIHbhu5tpIG5oYXUuXG4iCisiTeG7mXQgZGFuaCBzw6FjaCBjb24gc+G6vSBoaeG7h24gcmEgY2hvIGJp4bq/dCBuaOG7r25nIGfDs2kgbmjGsCB24bqteS5cbiIKKyJO4butYSBkxrDhu5tpIGPhu6dhIG3DoG4gaMOsbmggaGnhu4NuIHRo4buLIGPDoWNoIHh1bmcgxJHhu5l0IHbDoCBwaOG7pSB0aHXhu5ljIHTGsMahbmcg4bupbmc7XG4iCisibmjhuqVuIHBow61tIMKrIGkgwrsgxJHhu4MgZGkgY2h1eeG7g24gZ2nhu69hIHRow7RuZyB0aW4gxJHDsywgbcO0IHThuqMgZ8OzaSB2w6BcbiIKKyJ0aMO0bmcgdGluIMSRaeG7gXUga2hp4buDbiBu4buZaSBi4buZLlxuIgorIlxuIgorIkNoxrDGoW5nIHRyw6xuaCDEkcawYSByYSBjw6FjIGfDs2kgwqsgxJHhu4Egbmdo4buLIMK7LCB2w6Agc+G7sSDEkcOhbmggZOG6pXUgYmFuIMSR4bqndSB0cm9uZ1xuIgorImRhbmggc8OhY2ggY29uIG7DoHkgdMawxqFuZyDhu6luZyB24bubaSBuaOG7r25nIGfDs2kgxJHDsywgdsOsIHRo4bq/IGPDsyB0aOG7gyBuaOG6pW4gUmV0dXJuXG4iCisixJHhu4MgY2jhuqVwIG5o4bqtbiBuaOG7r25nIMSR4buBIG5naOG7iyBu4bq/dSBtdeG7kW4uICBDw7MgdGjhu4MgaOG7p3kgYuG7jyAoY8OhYykgdGhheSDEkeG7lWkgZ8OieVxuIgorInJhIHbhuqVuIMSR4buBLCB2w6AgcXVheSBs4bqhaSBtw6BuIGjDrG5oIGNow61uaCBi4bqxbmcgYuG6pW0gcGjDrW0gwqsgWCDCuyB2aeG6v3QgaG9hLlxuIgorIlxuIgorIsSQ4buTbmcgdGjhu51pIGPDsm4gY8OzIHRo4buDIGRpIGNodXnhu4NuIHh1bmcgcXVhbmggZGFuaCBzw6FjaFxuIgorInbDoCB0aGF5IMSR4buVaSBjw6FjIGThuqV1IGNobyBo4bujcCB24bubaSDDvSBtdeG7kW4sXG4iCisidsOgIGPDsyB0aOG7gyDCqyBi4buPIMSRaSDCuyBjw6FjIMSR4buBIG5naOG7iyBj4bunYSB0csOsbmggbsOgeSBi4bqxbmcgwqsgRCDCuyBob+G6t2MgwqsgUiDCuyB2aeG6v3QgIgorImhvYVxuIgorIih4ZW0gbcOgbiBow6xuaCB0cuG7oyBnacO6cCBwaMOtbSkuXG4iCisiQ8OzIHRo4buDIGTDuW5nIMKrIFEgwrsgdmnhur90IGhvYSDEkeG7gyBi4bqvdCBideG7mWMgY2jGsMahbmcgdHLDrG5oIGNo4bqlcCBuaOG6rW5cbiIKKyJ0w6xuaCBodeG7kW5nIMSRw6MgaGnhu4NuIHRo4buLLCB0cm9uZyB0csaw4budbmcgaOG7o3AgbXXhu5FuIGLhu48gcXVhIG5o4buvbmcgbOG7nWkga2h1ecOqblxuIgorImhv4bq3YyBuZ2jEqSBy4bqxbmcgY2jGsMahbmcgdHLDrG5oIMSRw6MgbmjhuqdtLlxuIgorIlxuIgorIkzDumMgbsOgeSBjw7MgdGjhu4MgbmjhuqVuIHBow61tIGTDoGkgxJHhu4MgdGhvw6F0IGto4buPaSB0cuG7oyBnacO6cCB2w6AgeGVtIGRhbmggc8OhY2ggY29uO1xuIgorImjDo3kgbmjhu5sgOiBuaOG6pW4gwqsgPyDCuyDEkeG7gyB4ZW0gdHLhu6MgZ2nDunAuXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTI1Cittc2dpZCAiRGlzcGxheSwgcGFydCAxOiBwYWNrYWdlIGxpc3RpbmcgYW5kIHN0YXR1cyBjaGFycyIKK21zZ3N0ciAiTcOgbiBow6xuaCwgcGjhuqduIDE6IGRhbmggc8OhY2ggZ8OzaSB2w6Aga8O9IHThu7EgdHLhuqFuZyB0aMOhaSIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxMjUKKyMsIGZ1enp5Cittc2dpZCAiIgorIlRoZSB0b3AgaGFsZiBvZiB0aGUgc2NyZWVuIHNob3dzIGEgbGlzdCBvZiBwYWNrYWdlcy4gIEZvciBlYWNoIHBhY2thZ2UgeW91ICIKKyJzZWVcbiIKKyJmb3VyIGNvbHVtbnMgZm9yIGl0cyBjdXJyZW50IHN0YXR1cyBvbiB0aGUgc3lzdGVtIGFuZCBtYXJrLiAgSW4gdGVyc2UgbW9kZSAiCisiKHVzZVxuIgorImB2JyB0byB0b2dnbGUgdmVyYm9zZSBkaXNwbGF5KSB0aGVzZSBhcmUgc2luZ2xlIGNoYXJhY3RlcnMsIGZyb20gbGVmdCB0byAiCisicmlnaHQ6XG4iCisiXG4iCisiIEVycm9yIGZsYWc6IFNwYWNlIC0gbm8gZXJyb3IgKGJ1dCBwYWNrYWdlIG1heSBiZSBpbiBicm9rZW4gc3RhdGUgLSBzZWUgIgorImJlbG93KVxuIgorIiAgICAgICAgICAgICAgYFInICAtIHNlcmlvdXMgZXJyb3IgZHVyaW5nIGluc3RhbGxhdGlvbiwgbmVlZHMgIgorInJlaW5zdGFsbGF0aW9uO1xuIgorIiBJbnN0YWxsZWQgc3RhdGU6ICAgICBTcGFjZSAgICAtIG5vdCBpbnN0YWxsZWQ7XG4iCisiICAgICAgICAgICAgICAgICAgICAgICBgKicgICAgIC0gaW5zdGFsbGVkO1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgYC0nICAgICAtIG5vdCBpbnN0YWxsZWQgYnV0IGNvbmZpZyBmaWxlcyByZW1haW47XG4iCisiICAgcGFja2FnZXMgaW4gdGhlc2UgeyBgVScgICAgIC0gdW5wYWNrZWQgYnV0IG5vdCB5ZXQgY29uZmlndXJlZDtcbiIKKyIgICBzdGF0ZXMgYXJlIG5vdCAgICB7IGBDJyAgICAgLSBoYWxmLWNvbmZpZ3VyZWQgKGFuIGVycm9yIGhhcHBlbmVkKTtcbiIKKyIgICAocXVpdGUpIHByb3Blcmx5ICB7IGBJJyAgICAgLSBoYWxmLWluc3RhbGxlZCAoYW4gZXJyb3IgaGFwcGVuZWQpO1xuIgorIiAgIGluc3RhbGxlZCAgICAgICAgIHsgYFcnLGB0JyAtIHRyaWdnZXJzIGFyZSBhd2FpdGVkIHJlc3AuIHBlbmRpbmcuXG4iCisiIE9sZCBtYXJrOiB3aGF0IHdhcyByZXF1ZXN0ZWQgZm9yIHRoaXMgcGFja2FnZSBiZWZvcmUgcHJlc2VudGluZyB0aGlzIGxpc3Q7XG4iCisiIE1hcms6IHdoYXQgaXMgcmVxdWVzdGVkIGZvciB0aGlzIHBhY2thZ2U6XG4iCisiICBgKic6IG1hcmtlZCBmb3IgaW5zdGFsbGF0aW9uIG9yIHVwZ3JhZGU7XG4iCisiICBgLSc6IG1hcmtlZCBmb3IgcmVtb3ZhbCwgYnV0IGFueSBjb25maWd1cmF0aW9uIGZpbGVzIHdpbGwgcmVtYWluO1xuIgorIiAgYD0nOiBvbiBob2xkOiBwYWNrYWdlIHdpbGwgbm90IGJlIHByb2Nlc3NlZCBhdCBhbGw7XG4iCisiICBgXyc6IG1hcmtlZCBmb3IgcHVyZ2UgY29tcGxldGVseSAtIGV2ZW4gcmVtb3ZlIGNvbmZpZ3VyYXRpb247XG4iCisiICBgbic6IHBhY2thZ2UgaXMgbmV3IGFuZCBoYXMgeWV0IHRvIGJlIG1hcmtlZCBmb3IgaW5zdGFsbC9yZW1vdmUvJmMuXG4iCisiXG4iCisiQWxzbyBkaXNwbGF5ZWQgYXJlIGVhY2ggcGFja2FnZSdzIFByaW9yaXR5LCBTZWN0aW9uLCBuYW1lLCBpbnN0YWxsZWQgYW5kXG4iCisiYXZhaWxhYmxlIHZlcnNpb24gbnVtYmVycyAoc2hpZnQtViB0byBkaXNwbGF5L2hpZGUpIGFuZCBzdW1tYXJ5ICIKKyJkZXNjcmlwdGlvbi5cbiIKK21zZ3N0ciAiIgorIk7hu61hIHRyw6puIGPhu6dhIG3DoG4gaMOsbmggaGnhu4NuIHRo4buLIGRhbmggc8OhY2ggY8OhYyBnw7NpLlxuIgorIk3hu5dpIGfDs2kgY8OzIGLhu5FuIGPhu5l0IGhp4buDbiB0aOG7iyB0cuG6oW5nIHRow6FpIGhp4buHbiB0aOG7nWkgdHLDqm4gaOG7hyB0aOG7kW5nIHbDoCDEkcOhbmggZOG6pXUuXG4iCisiVHJvbmcgY2jhur8gxJHhu5kgbmfhuq9uIGfhu41uIChkw7luZyDCqyB2IMK7IMSR4buDIGNodXnhu4NuIHNhbmcgY2jhur8gxJHhu5kgY2hpIHRp4bq/dClcbiIKKyJjaMO6bmcgbMOgIG5o4buvbmcga8O9IHThu7EgxJHGoW4sIHThu6sgdHLDoWkgc2FuZyBwaOG6o2k6XG4iCisiXG4iCisiIEPhu50gbOG7l2k6XG4iCisiXHRE4bqldSBjw6FjaFx0XHQgIGtow7RuZyBs4buXaSAobmjGsG5nIGfDs2kgY8OzIHRo4buDIOG7nyB0cuG6oW5nIHRow6FpIHbhu6Eg4oCUIHhlbSBkxrDhu5tpKVxuIgorIlx0Ulx0XHRcdFx0XHQgIGzhu5dpIG5naGnDqm0gdHLhu41uZyBraGkgY8OgaSDEkeG6t3QsIGPhuqduIGPDoGkgxJHhurd0IGzhuqFpO1xuIgorIlRy4bqhbmcgdGjDoWkgY8OgaSDEkeG6t3Q6XG4iCisiXHRE4bqldSBjw6FjaFx0XHQgIGNoxrBhIGPDoGkgxJHhurd0O1xuIgorIlx0Klx0XHRcdFx0XHQgIMSRw6MgY8OgaSDEkeG6t3Q7XG4iCisiXHQtXHRcdFx0XHRcdCAga2jDtG5nIGPDoGkgxJHhurd0IG5oxrBuZyBjw7MgdOG6rXAgdGluIGPhuqV1IGjDrG5oIGPDsm4gbOG6oWk7XG4iCisiICAgR8OTSSAgIHtcdFVcdFx0XHTEkcOjIG3hu58gZ8OzaSBuaMawbmcgY2jGsGEgY+G6pXUgaMOsbmg7XG4iCisiIFx0QuG7iiAgICAgIHsgXHRDXHRcdFx0Y+G6pXUgaMOsbmggbeG7mXQgbuG7rWEgKGfhurdwIGzhu5dpKTtcbiIKKyIgXHRW4bugICAgIHsgXHRJXHRcdFx0Y8OgaSDEkeG6t3QgbeG7mXQgbuG7rWEgKGfhurdwIGzhu5dpKS5cbiIKKyJE4bqldSBjxalcdFx0Y8OhaSDEkcOjIHnDqnUgY+G6p3UgY2hvIGfDs2kgbsOgeSB0csaw4bubYyBraGkgxJHGsGEgcmEgZGFuaCBzw6FjaCBuw6B5O1xuIgorIkThuqV1XHRcdFx0Y8OhaSBoaeG7h24gdGjhu51pIHnDqnUgY+G6p3UgxJHhu5FpIHbhu5tpIGfDs2kgbsOgeTpcbiIKKyJcdCpcdFx0XHRcdFx0Y8OgaSDEkeG6t3QgaG/hurdjIG7Dom5nIGPhuqVwO1xuIgorIlx0LVx0XHRcdFx0XHRn4buhIGLhu48sIG5oxrBuZyB24bqrbiBnaeG7ryBs4bqhaSBjw6FjIHThuq1wIHRpbiBj4bqldSBow6xuaDtcbiIKKyJcdD1cdFx0XHRcdFx0Z2nhu68gbOG6oWk6IHPhur0ga2jDtG5nIHjhu60gbMO9IGfDs2kgY+G6oztcbiIKKyJcdF9cdFx0XHRcdFx0dOG6qXkgaG/DoG4gdG/DoG4g4oCUIHRo4bqtbSBjaMOtIGPhuqMgY+G6pXUgaMOsbmg7XG4iCisiXHRuXHRcdFx0XHRcdGfDs2kgbeG7m2kgbsOqbiBjaMawYSDEkcOhbmggZOG6pXUgxJHhu4MgY8OgaSDEkeG6t3QvZ+G7oSBi4buPL3Yudi4uXG4iCisiXG4iCisixJDhu5NuZyB0aOG7nWkgY8OybiBoaeG7g24gdGjhu4sgxq91IHRpw6puLCBQaOG6p24sIFTDqm4sIHBoacOqbiBi4bqjbiDEkMOjIGPDoGkgdsOgIEPDsyB0aOG7gyBjw6BpXG4iCisiKHBow61tIHThuq90IFNoaWZ0LVYgxJHhu4MgaGnhu4duL+G6qW4pIG3hu5dpIGfDs2kgdsOgIG3DtCB04bqjIHTDs20gdOG6r3QgY2h1bmcuXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTUyCittc2dpZCAiRGlzcGxheSwgcGFydCAyOiBsaXN0IGhpZ2hsaWdodDsgaW5mb3JtYXRpb24gZGlzcGxheSIKK21zZ3N0ciAiTcOgbiBow6xuaCwgcGjhuqduIDI6IGNoaeG6v3Ugc8OhbmcgZGFuaCBzw6FjaDsgbcOgbiBow6xuaCB0aMO0bmcgdGluIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjE1MgorbXNnaWQgIiIKKyIqIEhpZ2hsaWdodDogT25lIGxpbmUgaW4gdGhlIHBhY2thZ2UgbGlzdCB3aWxsIGJlIGhpZ2hsaWdodGVkLiAgSXQgIgorImluZGljYXRlc1xuIgorIiAgd2hpY2ggcGFja2FnZShzKSB3aWxsIGJlIGFmZmVjdGVkIGJ5IHByZXNzZXMgb2YgYCsnLCBgLScgYW5kIGBfJy5cbiIKKyJcbiIKKyIqIFRoZSBkaXZpZGluZyBsaW5lIGluIHRoZSBtaWRkbGUgb2YgdGhlIHNjcmVlbiBzaG93cyBhIGJyaWVmIGV4cGxhbmF0aW9uICIKKyJvZlxuIgorIiAgdGhlIHN0YXR1cyBvZiB0aGUgY3VycmVudGx5LWhpZ2hsaWdodGVkIHBhY2thZ2UsIG9yIGEgZGVzY3JpcHRpb24gb2YgIgorIndoaWNoXG4iCisiICBncm91cCBpcyBoaWdobGlnaHRlZCBpZiBhIGdyb3VwIGxpbmUgaXMuICBJZiB5b3UgZG9uJ3QgdW5kZXJzdGFuZCB0aGVcbiIKKyIgIG1lYW5pbmcgb2Ygc29tZSBvZiB0aGUgc3RhdHVzIGNoYXJhY3RlcnMgZGlzcGxheWVkLCBnbyB0byB0aGUgcmVsZXZhbnRcbiIKKyIgIHBhY2thZ2UgYW5kIGxvb2sgYXQgdGhpcyBkaXZpZGVyIGxpbmUsIG9yIHVzZSB0aGUgYHYnIGtleSBmb3IgYSB2ZXJib3NlXG4iCisiICBkaXNwbGF5IChwcmVzcyBgdicgYWdhaW4gdG8gZ28gYmFjayB0byB0aGUgdGVyc2UgZGlzcGxheSkuXG4iCisiXG4iCisiKiBUaGUgYm90dG9tIG9mIHRoZSBzY3JlZW4gc2hvd3MgbW9yZSBpbmZvcm1hdGlvbiBhYm91dCB0aGVcbiIKKyIgIGN1cnJlbnRseS1oaWdobGlnaHRlZCBwYWNrYWdlIChpZiB0aGVyZSBpcyBvbmx5IG9uZSkuXG4iCisiXG4iCisiICBJdCBjYW4gc2hvdyBhbiBleHRlbmRlZCBkZXNjcmlwdGlvbiBvZiB0aGUgcGFja2FnZSwgdGhlIGludGVybmFsIHBhY2thZ2VcbiIKKyIgIGNvbnRyb2wgZGV0YWlscyAoZWl0aGVyIGZvciB0aGUgaW5zdGFsbGVkIG9yIGF2YWlsYWJsZSB2ZXJzaW9uIG9mIHRoZVxuIgorIiAgcGFja2FnZSksIG9yIGluZm9ybWF0aW9uIGFib3V0IGNvbmZsaWN0cyBhbmQgZGVwZW5kZW5jaWVzIGludm9sdmluZyB0aGVcbiIKKyIgIGN1cnJlbnQgcGFja2FnZSAoaW4gY29uZmxpY3QvZGVwZW5kZW5jeSByZXNvbHV0aW9uIHN1Ymxpc3RzKS5cbiIKKyJcbiIKKyIgIFVzZSB0aGUgYGknIGtleSB0byBjeWNsZSB0aHJvdWdoIHRoZSBkaXNwbGF5cywgYW5kIGBJJyB0byBoaWRlIHRoZVxuIgorIiAgaW5mb3JtYXRpb24gZGlzcGxheSBvciBleHBhbmQgaXQgdG8gdXNlIGFsbW9zdCBhbGwgb2YgdGhlIHNjcmVlbi5cbiIKK21zZ3N0ciAiIgorIiogQ2hp4bq/dSBzw6FuZzogU+G6vSBjaGnhur91IHPDoW5nIG3hu5l0IGTDsm5nIHRyb25nIGRhbmggc8OhY2ggZ8OzaS4gIENoaeG6v3Ugc8OhbmdcbiIKKyIgIGNo4buJIHJhIGfDs2kgbsOgbyBz4bq9IGLhu4sg4bqjbmggaMaw4bufbmcga2hpIG5o4bqlbiBwaMOtbSDCqyArIMK7LCDCqyAtIMK7IHbDoCDCqyBfIMK7LlxuIgorIlxuIgorIuKAoiBEw7JuZyBjaGlhIOG7nyBnaeG7r2EgbcOgbiBow6xuaCBjaG8gYmnhur90IGdp4bqjaSB0aMOtY2ggbmfhuq9uIGfhu41uIHbhu4EgdHLhuqFuZyB0aMOhaSBj4bunYVxuIgorIiAgZ8OzaSDEkWFuZyDEkcaw4bujYyBjaGnhur91IHPDoW5nLCBob+G6t2MgbeG7mXQgbcO0IHThuqMgbmfhuq9uIGfhu41uIGPhu6dhIG5ow7NtIG7hur91IGTDsm5nXG4iCisiICDEkcOzIGzDoCBt4buZdCBuaMOzbS4gIE7hur91IGtow7RuZyBoaeG7g3Ugw70gbmdoxKlhIGPhu6dhIG3hu5l0IHbDoGkga8O9IHThu7EgY2hvIGJp4bq/dFxuIgorIiAgdHLhuqFuZyB0aMOhaSwgdGjDrCBow6N5IMSRaSB04bubaSBnw7NpIHRow61jaCBo4bujcCB2w6AgbmjDrG4gdsOgbyBkw7JuZyBjaGlhLCBob+G6t2Mgc+G7rVxuIgorIiAgZOG7pW5nIHBow61tIMKrIHYgwrsgIMSR4buDIGLhuq10L3Thuq90IGhp4buDbiB0aOG7iyBtw7QgdOG6oyBjaGkgdGnhur90L25n4bqvbiBn4buNbi5cbiIKKyLigKIgUGjhuqduIMSRw6F5IG3DoG4gaMOsbmggaGnhu4NuIHRo4buLIHRow7RuZyB0aW4gdGjDqm0gduG7gSBnw7NpIMSRYW5nIMSRxrDhu6NjIGNoaeG6v3VcbiIKKyIgIHPDoW5nIChu4bq/dSBjw7MpLlxuIgorIlxuIgorIiAgTsOzIGPDsyB0aOG7gyBoaeG7g24gdGjhu4sgbcO0IHThuqMgY2hpIHRp4bq/dCBoxqFuIHbhu4EgZ8OzaSwgY2hpIHRp4bq/dCB24buBIMSRaeG7gXUga2hp4buDbiBnw7NpXG4iCisiICBu4buZaSBi4buZIChjaG8gcGhpw6puIGLhuqNuIMSRw6MgY8OgaSwgaG/hurdjIGPDsyB0aOG7gyBjw6BpIGPhu6dhIGfDs2kpLCBob+G6t2MgdGjDtG5nIHRpbiB24buBXG4iCisiICB4dW5nIMSR4buZdCB2w6AgcGjhu6UgdGh14buZYyBtw6AgZ8OzaSBnw6J5IHJhXG4iCisiICAodHJvbmcgZGFuaCBzw6FjaCBjb24geHVuZyDEkeG7mXQvcGjhu6UgdGh14buZYykuXG4iCisiXG4iCisiICBEw7luZyBwaMOtbSDCqyBpIMK7IMSR4buDIGNodXnhu4NuIHF1YW5oIGPDoWMgbcOgbiBow6xuaCwgdsOgIMKrIEkgwrsgxJHhu4Mg4bqpbiBtw6BuIGjDrG5oXG4iCisiICB0aMO0bmcgdGluIGhheSBt4bufIHLhu5luZyDEkeG7gyBuw7MgY2hp4bq/dSBn4bqnbiBo4bq/dCBtw6BuIGjDrG5oLlxuIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjE3NgorbXNnaWQgIkludHJvZHVjdGlvbiB0byBtZXRob2Qgc2VsZWN0aW9uIGRpc3BsYXkiCittc2dzdHIgIkdp4bubaSB0aGnhu4d1IG3DoG4gaMOsbmggY2jhu41uIHBoxrDGoW5nIHBow6FwIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjE3NgorbXNnaWQgIiIKKyJkc2VsZWN0IGFuZCBkcGtnIGNhbiBkbyBhdXRvbWF0aWMgaW5zdGFsbGF0aW9uLCBsb2FkaW5nIHRoZSBwYWNrYWdlIGZpbGVzIHRvICIKKyJiZVxuIgorImluc3RhbGxlZCBmcm9tIG9uZSBvZiBhIG51bWJlciBvZiBkaWZmZXJlbnQgcG9zc2libGUgcGxhY2VzLlxuIgorIlxuIgorIlRoaXMgbGlzdCBhbGxvd3MgeW91IHRvIHNlbGVjdCBvbmUgb2YgdGhlc2UgaW5zdGFsbGF0aW9uIG1ldGhvZHMuXG4iCisiXG4iCisiTW92ZSB0aGUgaGlnaGxpZ2h0IHRvIHRoZSBtZXRob2QgeW91IHdpc2ggdG8gdXNlLCBhbmQgaGl0IEVudGVyLiAgWW91IHdpbGwgIgorInRoZW5cbiIKKyJiZSBwcm9tcHRlZCBmb3IgdGhlIGluZm9ybWF0aW9uIHJlcXVpcmVkIHRvIGRvIHRoZSBpbnN0YWxsYXRpb24uXG4iCisiXG4iCisiQXMgeW91IG1vdmUgdGhlIGhpZ2hsaWdodCBhIGRlc2NyaXB0aW9uIG9mIGVhY2ggbWV0aG9kLCB3aGVyZSBhdmFpbGFibGUsIGlzXG4iCisiZGlzcGxheWVkIGluIHRoZSBib3R0b20gaGFsZiBvZiB0aGUgc2NyZWVuLlxuIgorIlxuIgorIklmIHlvdSB3aXNoIHRvIHF1aXQgd2l0aG91dCBjaGFuZ2luZyBhbnl0aGluZyB1c2UgdGhlIGB4JyBrZXkgd2hpbGUgaW4gdGhlICIKKyJsaXN0XG4iCisib2YgaW5zdGFsbGF0aW9uIG1ldGhvZHMuXG4iCisiXG4iCisiQSBmdWxsIGxpc3Qgb2Yga2V5c3Ryb2tlcyBpcyBhdmFpbGFibGUgYnkgcHJlc3NpbmcgYGsnIG5vdywgb3IgZnJvbSB0aGUgIgorImhlbHBcbiIKKyJtZW51IHJlYWNoYWJsZSBieSBwcmVzc2luZyBgPycuXG4iCittc2dzdHIgIiIKKyJkc2VsZWN0IHbDoCBkcGtnIGPDsyB0aOG7gyBjw6BpIMSR4bq3dCB04buxIMSR4buZbmcsIHThuqNpIHThuq1wIHRpbiBj4bunYSBnw7NpIGPhuqduIGPDoGkgxJHhurd0XG4iCisidOG7qyBt4buZdCB0cm9uZyBz4buRIG5o4buvbmcgbsahaSBjw7MgdGjhu4MgZMO5bmcuXG4iCisiXG4iCisiRGFuaCBzw6FjaCBuw6B5IGNobyBwaMOpcCBjaOG7jW4gbeG7mXQgdHJvbmcgc+G7kSBuaOG7r25nIHBoxrDGoW5nIHBow6FwIGPDoGkgxJHhurd0IG7DoHkuXG4iCisiXG4iCisiRGkgY2h1eeG7g24gY2hp4bq/dSBzw6FuZyB04bubaSBwaMawxqFuZyBwaMOhcCBtdeG7kW4gZMO5bmcsIHbDoCBuaOG6pW4gcGjDrW0gRW50ZXIuXG4iCisiU2F1IMSRw7Mgc+G6vSBjw7Mgbmjhuq9jIHbhu4EgdGjDtG5nIHRpbiBj4bqnbiB0aGnhur90IGNobyB2aeG7h2MgY8OgaSDEkeG6t3QuXG4iCisiXG4iCisiS2hpIGRpIGNodXnhu4NuIGNoaeG6v3Ugc8OhbmcgdOG7m2kgbeG7l2kgcGjGsMahbmcgcGjDoXAsIHPhur0gY8OzIG3DtCB04bqjIHbhu4EgbsOzIChu4bq/dSBjw7MpXG4iCisi4bufIG7hu61hIGTGsOG7m2kgY+G7p2EgbcOgbiBow6xuaC5cbiIKKyJcbiIKKyJO4bq/dSBtdeG7kW4gdGhvw6F0IG3DoCBraMO0bmcgdGhheSDEkeG7lWkgZ8OsIHRow6wgZMO5bmcgcGjDrW0gwqsgeCDCuyBraGkgdHJvbmcgZGFuaCBzw6FjaFxuIgorImPDoWMgcGjGsMahbmcgcGjDoXAgY8OgaSDEkeG6t3QuXG4iCisiXG4iCisiTmjhuqVuIHBow61tIMKrIGsgwrsgxJHhu4MgeGVtIGRhbmggc8OhY2ggxJHhuqd5IMSR4bunIGPDoWMgcGjDrW0gdOG6r3QsXG4iCisiaG/hurdjIHThu6sgdHLDrG5oIMSRxqFuIHRy4bujIGdpw7pwIGLhurFuZyBjw6FjaCBuaOG6pW4gcGjDrW0gwqsgPyDCuy5cbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxOTYKK21zZ2lkICJLZXlzdHJva2VzIGZvciBtZXRob2Qgc2VsZWN0aW9uIgorbXNnc3RyICJQaMOtbSB04bqvdCDEkeG7gyBjaOG7jW4gcGjGsMahbmcgcGjDoXAiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTk2CisjLCBmdXp6eQorbXNnaWQgIiIKKyJNb3Rpb24ga2V5czogTmV4dC9QcmV2aW91cywgVG9wL0VuZCwgVXAvRG93biwgQmFja3dhcmRzL0ZvcndhcmRzOlxuIgorIiAgaiwgRG93bi1hcnJvdyAgICAgICAgIGssIFVwLWFycm93ICAgICAgICAgICAgIG1vdmUgaGlnaGxpZ2h0XG4iCisiICBOLCBQYWdlLWRvd24sIFNwYWNlICAgUCwgUGFnZS11cCwgQmFja3NwYWNlICAgc2Nyb2xsIGxpc3QgYnkgMSBwYWdlXG4iCisiICBebiAgICAgICAgICAgICAgICAgICAgXnAgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGxpc3QgYnkgMSBsaW5lXG4iCisiICB0LCBIb21lICAgICAgICAgICAgICAgZSwgRW5kICAgICAgICAgICAgICAgICAganVtcCB0byB0b3AvZW5kIG9mIGxpc3RcbiIKKyIgIHUgICAgICAgICAgICAgICAgICAgICBkICAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyBieSAxIHBhZ2VcbiIKKyIgIF51ICAgICAgICAgICAgICAgICAgICBeZCAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyBieSAxIGxpbmVcbiIKKyIgIEIsIExlZnQtYXJyb3cgICAgICAgICBGLCBSaWdodC1hcnJvdyAgICAgICAgICBwYW4gZGlzcGxheSBieSAxLzMgc2NyZWVuXG4iCisiICBeYiAgICAgICAgICAgICAgICAgICAgXmYgICAgICAgICAgICAgICAgICAgICAgcGFuIGRpc3BsYXkgYnkgMSBjaGFyYWN0ZXJcbiIKKyIoVGhlc2UgYXJlIHRoZSBzYW1lIG1vdGlvbiBrZXlzIGFzIGluIHRoZSBwYWNrYWdlIGxpc3QgZGlzcGxheS4pXG4iCisiXG4iCisiUXVpdDpcbiIKKyIgUmV0dXJuLCBFbnRlciAgICBzZWxlY3QgdGhpcyBtZXRob2QgYW5kIGdvIHRvIGl0cyBjb25maWd1cmF0aW9uIGRpYWxvZ3VlXG4iCisiIHgsIFggICAgICAgICAgICAgZXhpdCB3aXRob3V0IGNoYW5naW5nIG9yIHNldHRpbmcgdXAgdGhlIGluc3RhbGxhdGlvbiAiCisibWV0aG9kXG4iCisiXG4iCisiTWlzY2VsbGFuZW91czpcbiIKKyIgID8sIEhlbHAsIEYxICAgICAgcmVxdWVzdCBoZWxwXG4iCisiIF5sICAgICAgICAgICAgICAgIHJlZHJhdyBkaXNwbGF5XG4iCisiICAvICAgICAgICAgICAgICAgIHNlYXJjaCAoanVzdCByZXR1cm4gdG8gY2FuY2VsKVxuIgorIiAgXFwgICAgICAgICAgICAgICAgcmVwZWF0IGxhc3Qgc2VhcmNoXG4iCittc2dzdHIgIiIKKyJQaMOtbSBkaSBjaHV54buDbjogS+G6vy9Ucsaw4bubYywgxJDhuqd1L0N14buRaSwgTMOqbi9YdeG7kW5nLCBMw7lpL1Rp4bq/cDpcbiIKKyIgIG4sIE3FqWkgdMOqbiB4deG7kW5nICAgICAgICAgcCwgTcWpaSB0w6puIGzDqm4gICAgICAgICAgICAgZGkgY2h1eeG7g24gY2hp4bq/dSBzw6FuZ1xuIgorIiAgTiwgUGFnZS1kb3duLCBQaMOtbSBkw6BpICAgUCwgUGFnZS11cCwgWMOzYSBsw7lpICAgY3Xhu5luIDEgdHJhbmcgZGFuaCBzw6FjaFxuIgorIiAgXm4gICAgICAgICAgICAgICAgICAgIF5wICAgICAgICAgICAgICAgICAgICAgIGN14buZbiAxIGTDsm5nIGRhbmggc8OhY2hcbiIKKyIgIHQsIEhvbWUgICAgICAgICAgICAgICBlLCBFbmQgICAgICAgICAgICAgbmjhuqN5IHThu5tpIMSR4bqndS9jdeG7kWkgZGFuaCBzw6FjaFxuIgorIiAgdSAgICAgICAgICAgICAgICAgICAgIGQgICAgICAgICAgICAgICAgICAgICAgICBjdeG7mW4gMSB0cmFuZyB0aMO0bmcgdGluXG4iCisiICBedSAgICAgICAgICAgICAgICAgICAgXmQgICAgICAgICAgICAgICAgICAgICAgY3Xhu5luIDEgZMOybmcgdGjDtG5nIHRpblxuIgorIiAgQiwgTcWpaSB0w6puIHRyw6FpICAgICAgICAgRiwgTcWpaSB0w6puIHBo4bqjaSAgICAgICAgICBrw6lvIG5nYW5nIDEvMyBtw6BuIGjDrG5oXG4iCisiICBeYiAgICAgICAgICAgICAgICAgICAgXmYgICAgICAgICAgICAgICAgICAgICAga8OpbyBuZ2FuZyBtw6BuIGjDrG5oIHRoZW8gMSBrw70gIgorInThu7FcbiIKKyIoQ8OhYyBwaMOtbSBkaSBjaHV54buDbiB0cm9uZyBkYW5oIHPDoWNoIGfDs2kgbMOgIHTGsMahbmcgdOG7sS4pXG4iCisiXG4iCisiVGhvw6F0OlxuIgorIiAgUmV0dXJuLCBFbnRlciAgICBjaOG7jW4gcGjGsMahbmcgcGjDoXAgbsOgeSB2w6AgxJFpIHThu5tpIGjhu5lwIHRob+G6oWkgY+G6pXUgaMOsbmggbsOzXG4iCisiICB4LCBYICAgICAgICAgICB0aG/DoXQgdsOgIGLhu48gbeG7jWkgdGhheSDEkeG7lWkgaG/hurdjIHRoaeG6v3QgbOG6rXAgcGjGsMahbmcgcGjDoXAgY8OgaSAiCisixJHhurd0XG4iCisiXG4iCisiS2jDoWM6XG4iCisiICA/LCBIZWxwLCBGMSAgICAgIFx0ecOqdSBj4bqndSB0cuG7oyBnacO6cFxuIgorIiBebCAgICAgICAgICAgICAgICBcdFx0duG6vSBs4bqhaSBtw6BuIGjDrG5oXG4iCisiICAvICAgICAgICAgICAgICAgIFx0XHR0w6xtIGtp4bq/bSAoxJHGoW4gZ2nhuqNuIG5o4bqlbiBSZXR1cm4gxJHhu4MgdGjDtGkpXG4iCisiICBcXCAgICAgICAgICAgICAgICBcdFx0bOG6t3AgbOG6oWkgdMOsbSBraeG6v20gY3Xhu5FpIGPDuW5nXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzo2MAorbXNnaWQgIlR5cGUgZHNlbGVjdCAtLWhlbHAgZm9yIGhlbHAuIgorbXNnc3RyICJHw7UgwqsgZHNlbGVjdCAtLWhlbHAgwrsgxJHhu4MgeGVtIHRy4bujIGdpw7pwLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0MworbXNnaWQgImEiCittc2dzdHIgImEiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDMKK21zZ2lkICJbQV1jY2VzcyIKK21zZ3N0ciAiW0FdVHJ1eSBj4bqtcCIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0MworbXNnaWQgIkNob29zZSB0aGUgYWNjZXNzIG1ldGhvZCB0byB1c2UuIgorbXNnc3RyICJDaOG7jW4gcGjGsMahbmcgcGjDoXAgdHJ1eSBj4bqtcCDEkeG7gyBz4butIGThu6VuZy4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDQKK21zZ2lkICJ1IgorbXNnc3RyICJ1IgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ0Cittc2dpZCAiW1VdcGRhdGUiCittc2dzdHIgIltVXUPhuq1wIG5o4bqtdCIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NAorbXNnaWQgIlVwZGF0ZSBsaXN0IG9mIGF2YWlsYWJsZSBwYWNrYWdlcywgaWYgcG9zc2libGUuIgorbXNnc3RyICJD4bqtcCBuaOG6rXQgZGFuaCBzw6FjaCBuaOG7r25nIGfDs2kgY8OzIHPhurVuLCBu4bq/dSBjw7MgdGjhu4MuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ1Cittc2dpZCAicyIKK21zZ3N0ciAicyIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NQorbXNnaWQgIltTXWVsZWN0IgorbXNnc3RyICJbU11DaOG7jW4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDUKK21zZ2lkICJSZXF1ZXN0IHdoaWNoIHBhY2thZ2VzIHlvdSB3YW50IG9uIHlvdXIgc3lzdGVtLiIKK21zZ3N0ciAiWcOqdSBj4bqndSBuaOG7r25nIGfDs2kgbXXhu5FuIGPDsyB0csOqbiBo4buHIHRo4buRbmcuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ2Cittc2dpZCAiaSIKK21zZ3N0ciAiaSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NgorbXNnaWQgIltJXW5zdGFsbCIKK21zZ3N0ciAiW0ldQ8OgaSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NgorbXNnaWQgIkluc3RhbGwgYW5kIHVwZ3JhZGUgd2FudGVkIHBhY2thZ2VzLiIKK21zZ3N0ciAiQ8OgaSDEkeG6t3QgdsOgIG7Dom5nIGPhuqVwIGPDoWMgZ8OzaSBtb25nIG114buRbi4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDcKK21zZ2lkICJjIgorbXNnc3RyICJjIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ3Cittc2dpZCAiW0Ndb25maWciCittc2dzdHIgIltDXeG6pXUgaMOsbmgiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDcKK21zZ2lkICJDb25maWd1cmUgYW55IHBhY2thZ2VzIHRoYXQgYXJlIHVuY29uZmlndXJlZC4iCittc2dzdHIgIkPhuqV1IGjDrG5oIG5o4buvbmcgZ8OzaSBjw7JuIGNoxrBhIMSRxrDhu6NjIGPhuqV1IGjDrG5oLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OAorbXNnaWQgInIiCittc2dzdHIgInIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDgKK21zZ2lkICJbUl1lbW92ZSIKK21zZ3N0ciAiW1JdR+G7oSBi4buPIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ4Cittc2dpZCAiUmVtb3ZlIHVud2FudGVkIHNvZnR3YXJlLiIKK21zZ3N0ciAiR+G7oSBi4buPIHBo4bqnbiBt4buBbSBraMO0bmcgbW9uZyBtdeG7kW4uIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ5Cittc2dpZCAicSIKK21zZ3N0ciAicSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OQorbXNnaWQgIltRXXVpdCIKK21zZ3N0ciAiW1FdVGhvw6F0IgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ5Cittc2dpZCAiUXVpdCBkc2VsZWN0LiIKK21zZ3N0ciAiVGhvw6F0IGto4buPaSBkc2VsZWN0LiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE1MAorbXNnaWQgIm1lbnUiCittc2dzdHIgInRyw6xuaCDEkcahbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE1NQorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIGhhbmRsaW5nIGZyb250ZW5kIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIlRp4buBbiB0acOqdSBxdeG6o24gbMO9IGfDs2kgRGViaWFuIMKrICVzIMK7IHBoacOqbiBi4bqjbiAlcy5cbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE1OAorbXNnaWQgIiIKKyJDb3B5cmlnaHQgKEMpIDE5OTQtMTk5NiBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLlxuIgorbXNnc3RyICIiCisiQuG6o24gcXV54buBbiDCqSBuYW0gMTk5NC0xOTk2IElhbiBKYWNrc29uLlxuIgorIkLhuqNuIHF1eeG7gW4gwqkgbsSDbSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE2MgorIywgZnV6enkKK21zZ2lkICIiCisiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvclxuIgorImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LlxuIgorbXNnc3RyICIiCisixJDDonkgbMOgIHBo4bqnbiBt4buBbSB04buxIGRvLCBow6N5IHhlbSBRdXnhu4FuIEPDtG5nIENodW5nIEdOVSAoR1BMKVxuIgorInBoacOqbiBi4bqjbiAyIGhv4bq3YyBt4bubaSBoxqFuIMSR4buDIGJp4bq/dCDEkWnhu4F1IGtp4buHbiBzYW8gY2jDqXAuXG4iCisiS0jDlE5HIGPDsyBi4bqjbiDEkeG6o20gZ8OsIGPhuqMuXG4iCisiSMOjeSB4ZW0gwqsgJXMgLS1saWNlbmNlIMK7IMSR4buDIGJp4bq/dCDEkWnhu4F1IGtp4buHbiBfcXV54buBbiBwaMOpcF8uXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNzIgZHNlbGVjdC9tYWluLmNjOjIyMAorbXNnaWQgIjxzdGFuZGFyZCBvdXRwdXQ+IgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSBbPGFjdGlvbj4gLi4uXVxuIgorIlxuIgorbXNnc3RyICIiCisiQ8OhY2ggc+G7rSBk4bulbmc6ICVzIFs8dMO5eV9jaOG7jW4+IC4uLl0gWzxow6BuaF/EkeG7mW5nPiAuLi5dXG4iCisiXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyIgIC0tZXhwZXJ0ICAgICAgICAgICAgICAgICAgIFR1cm4gb24gZXhwZXJ0IG1vZGUuXG4iCisiICAtLWRlYnVnIDxmaWxlPiB8IC1EPGZpbGU+ICBUdXJuIG9uIGRlYnVnZ2luZywgc2VuZGluZyBvdXRwdXQgdG8gPGZpbGU+LlxuIgorIiAgLS1jb2xvdXIgfCAtLWNvbG9yIHNjcmVlbnBhcnQ6W2ZvcmVncm91bmRdLFtiYWNrZ3JvdW5kXVs6YXR0clsrYXR0cisuLl1dXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDb25maWd1cmUgc2NyZWVuIGNvbG91cnMuXG4iCisiXG4iCittc2dzdHIgIiIKKyJUw7l5IGNo4buNbjpcbiIKKyIgIC0tYWRtaW5kaXIgPHRoxrBfbeG7pWM+XHRkw7luZyB0aMawIG3hu6VjIG7DoHkgdGhheSBjaG8gJXMuXG4iCisiXHRbX3RoxrAgbeG7pWMgcXXhuqNuIHRy4buLX11cbiIKKyIgIC0tZXhwZXJ0ICAgICAgICAgICAgICAgICAgIFx0QuG6rXQgY2jhur8gxJHhu5kgX2PhuqVwIGNhb18uXG4iCisiICAtLWRlYnVnIDx04bqtcF90aW4+IHwgLUQ8dOG6rXBfdGluPlxuIgorIlx0XHRcdFx0XHRC4bqtdCBraOG6oyBuxINuZyBfZ+G7oSBs4buXaV8sIHh14bqldCB2w6BvIHThuq1wIHRpbiBuw6B5LlxuIgorIiAgLS1jb2xvdXIgfCAtLWNvbG9yIHNjcmVlbnBhcnQ6W2PhuqNuaF9n4bqnbl0sW27hu4FuXVs6VFRbK1RUKy4uXV1cbiIKKyJcdFtUVCBsw6AgdGh14buZYyB0w61uaF1cdGPhuqV1IGjDrG5oIG3DoHUgc+G6r2MgbcOgbiBow6xuaFxuIgorIlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTk2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgICBTaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICAgU2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgICAgSGnhu4duIF90cuG7oyBnacO6cF8gbsOgeS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgIEhp4buHbiBfcGhpw6puIGLhuqNuXy5cbiIKKyIgIC0tbGljZW5zZSB8IC0tbGljZW5jZSAgICAgIEhp4buHbiBfZ2nhuqV5IHBow6lwXy5cbiIKKyJcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjIwMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQWN0aW9uczpcbiIKKyIgIGFjY2VzcyB1cGRhdGUgc2VsZWN0IGluc3RhbGwgY29uZmlnIHJlbW92ZSBxdWl0XG4iCisiXG4iCittc2dzdHIgIiIKKyJIw6BuaCDEkeG7mW5nOlxuIgorIiDigKIgYWNjZXNzXHRcdHRydXkgY+G6rXBcbiIKKyIg4oCiIHVwZGF0ZVx0XHRj4bqtcCBuaOG6rXRcbiIKKyIg4oCiIHNlbGVjdFx0XHRs4buxYSBjaOG7jW5cbiIKKyIg4oCiIGluc3RhbGxcdFx0Y8OgaSDEkeG6t3RcbiIKKyIg4oCiIGNvbmZpZ1x0XHRj4bqldSBow6xuaCAodmnhur90IHThuq90KVxuIgorIiDigKIgcmVtb3ZlXHRn4buhIGLhu49cbiIKKyIg4oCiIHF1aXRcdFx0dGhvw6F0XG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2NyZWVucGFydHM6XG4iCittc2dzdHIgIkPDoWMgcGjhuqduIG3DoG4gaMOsbmg6XG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ29sb3VyczpcbiIKK21zZ3N0ciAiTcOgdSBz4bqvYzpcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjIxNQorIywgYy1mb3JtYXQKK21zZ2lkICJBdHRyaWJ1dGVzOlxuIgorbXNnc3RyICJUaHXhu5ljIHTDrW5oOlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjMzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkbid0IG9wZW4gZGVidWcgZmlsZSBgJS4yNTVzJ1xuIgorbXNnc3RyICJraMO0bmcgdGjhu4MgbeG7nyB04bqtcCB0aW4gZ+G7oSBs4buXaSDCqyAlLjI1MHMgwrtcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjI1MworIywgYy1mb3JtYXQKK21zZ2lkICJJbnZhbGlkICVzIGAlcydcbiIKK21zZ3N0ciAiJXMga2jDtG5nIGjhu6NwIGzhu4cgwqsgJXMgwrtcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjI3MAorbXNnaWQgInNjcmVlbiBwYXJ0IgorbXNnc3RyICJwaOG6p24gbcOgbiBow6xuaCIKKworIzogZHNlbGVjdC9tYWluLmNjOjI3NgorbXNnaWQgIk51bGwgY29sb3VyIHNwZWNpZmljYXRpb25cbiIKK21zZ3N0ciAixJDhurdjIHThuqMgbcOgdSBy4buXbmdcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjI4NCBkc2VsZWN0L21haW4uY2M6Mjg5Cittc2dpZCAiY29sb3VyIgorbXNnc3RyICJtw6B1IgorCisjOiBkc2VsZWN0L21haW4uY2M6Mjk3Cittc2dpZCAiY29sb3VyIGF0dHJpYnV0ZSIKK21zZ3N0ciAidGh14buZYyB0w61uaCBtw6B1IgorCisjOiBkc2VsZWN0L21haW4uY2M6MzI5Cittc2dpZCAiVGVybWluYWwgZG9lcyBub3QgYXBwZWFyIHRvIHN1cHBvcnQgY3Vyc29yIGFkZHJlc3NpbmcuXG4iCittc2dzdHIgIlRoaeG6v3QgYuG7iyBjdeG7l2kgY8OzIHbhursga2jDtG5nIGjhu5cgdHLhu6MgY8OhY2ggZ8OhbiDEkeG7i2EgY2jhu4kgY2hvIGNvbiBjaOG6oXkuXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzozMzEKK21zZ2lkICJUZXJtaW5hbCBkb2VzIG5vdCBhcHBlYXIgdG8gc3VwcG9ydCBoaWdobGlnaHRpbmcuXG4iCittc2dzdHIgIlRoaeG6v3QgYuG7iyBjdeG7l2kgY8OzIHbhursga2jDtG5nIGjhu5cgdHLhu6MgY2hp4bq/dSBzw6FuZy5cbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjMzMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiU2V0IHlvdXIgVEVSTSB2YXJpYWJsZSBjb3JyZWN0bHksIHVzZSBhIGJldHRlciB0ZXJtaW5hbCxcbiIKKyJvciBtYWtlIGRvIHdpdGggdGhlIHBlci1wYWNrYWdlIG1hbmFnZW1lbnQgdG9vbCAlcy5cbiIKK21zZ3N0ciAiIgorIkjDo3kgxJHhurd0IMSRw7puZyBnacOhIHRy4buLIGJp4bq/biBURVJNLCBkw7luZyBt4buZdCB0aGnhur90IGLhu4sgY3Xhu5FpIHThu5F0IGjGoW4sXG4iCisiaG/hurdjIGzDoG0gdmnhu4djIHbhu5tpIGPDtG5nIGPhu6UgcXXhuqNuIGzDvSB0aGVvIHThu6tuZyBnw7NpICVzLlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MzM2Cittc2dpZCAidGVybWluYWwgbGFja3MgbmVjZXNzYXJ5IGZlYXR1cmVzLCBnaXZpbmcgdXAiCittc2dzdHIgInRoaeG6v3QgYuG7iyBjdeG7kWkgdGhp4bq/dSB0w61uaCBuxINuZyBj4bqnbiB0aGnhur90LCDEkeG6p3UgaMOgbmciCisKKyM6IGRzZWxlY3QvbWFpbi5jYzo0MTcKK21zZ2lkICIiCisiXG4iCisiXG4iCisiTW92ZSBhcm91bmQgd2l0aCBeUCBhbmQgXk4sIGN1cnNvciBrZXlzLCBpbml0aWFsIGxldHRlcnMsIG9yIGRpZ2l0cztcbiIKKyJQcmVzcyA8ZW50ZXI+IHRvIGNvbmZpcm0gc2VsZWN0aW9uLiAgIF5MIHJlZHJhd3Mgc2NyZWVuLlxuIgorIlxuIgorbXNnc3RyICIiCisiXG4iCisiXG4iCisiRGkgY2h1eeG7g24gYuG6sW5nIF5QIHbDoCBeTiwgcGjDrW0gbcWpaSB0w6puLCBjaOG7ryBjw6FpIMSR4bqndSwgaG/hurdjIGNo4buvIHPhu5E7XG4iCisiTmjhuqVuIHBow61tIEVudGVyIMSR4buDIGNo4buNbi4gICBeTCB24bq9IGzhuqFpIG3DoG4gaMOsbmguXG4iCisiXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzo0MjgKK21zZ2lkICIiCisiXG4iCisiXG4iCisiUmVhZC1vbmx5IGFjY2Vzczogb25seSBwcmV2aWV3IG9mIHNlbGVjdGlvbnMgaXMgYXZhaWxhYmxlISIKK21zZ3N0ciAiIgorIlxuIgorIlxuIgorIlRydXkgY+G6rXAgY2jhu4kgxJHhu41jOiBjaOG7iSBjw7Mgc+G6tW4geGVtIHRyxrDhu5tjIGPDoWMgbOG7sWEgY2jhu41uLiIKKworIzogZHNlbGVjdC9tYWluLmNjOjQ0OAorbXNnaWQgImZhaWxlZCB0byBnZXRjaCBpbiBtYWluIG1lbnUiCittc2dzdHIgInZp4buHYyBnZXRjaCAoxJHhu41jIHThu6tuZyBrw70gdOG7sSBraGkgZ8O1KSB2w6BvIHRyw6xuaCDEkcahbiBjaMOtbmggYuG7iyBs4buXaSIKKworIzogZHNlbGVjdC9tYWluLmNjOjUzMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGFjdGlvbiBzdHJpbmcgYCUuNTBzJyIKK21zZ3N0ciAiY2h14buXaSBow6BuaCDEkeG7mW5nIGtow7RuZyByw7UgwqsgJS4yNTBzIMK7IgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjc3Cittc2dpZCAiZHNlbGVjdCAtIGxpc3Qgb2YgYWNjZXNzIG1ldGhvZHMiCittc2dzdHIgImRzZWxlY3Qg4oCUIGRhbmggc8OhY2ggY8OhYyBwaMawxqFuZyBwaMOhcCB0cnV5IGPhuq1wIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjg2CisjLCBjLWZvcm1hdAorbXNnaWQgIkFjY2VzcyBtZXRob2QgYCVzJy4iCittc2dzdHIgIlBoxrDGoW5nIHBow6FwIHRydXkgY+G6rXAgwqsgJXMgwrsiCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTIwCittc2dpZCAiQWJicmV2LiIKK21zZ3N0ciAiVmnhur90IHThuq90IgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjEyMSBkc2VsZWN0L3BrZ2luZm8uY2M6MTA1IGRzZWxlY3QvcGtndG9wLmNjOjI5MQorbXNnaWQgIkRlc2NyaXB0aW9uIgorbXNnc3RyICJNw7QgdOG6oyIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxNjQgZHNlbGVjdC9wa2dsaXN0LmNjOjU3MgorbXNnaWQgImRvdXBkYXRlIGZhaWxlZCIKK21zZ3N0ciAidmnhu4djIGRvdXBkYXRlIChjaOG6oXkgdGnhur9uIHRyw6xuaCBj4bqtcCBuaOG6rXQpIGLhu4sgbOG7l2kiCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTY2IGRzZWxlY3QvcGtnbGlzdC5jYzo1NzUKK21zZ2lkICJmYWlsZWQgdG8gdW5ibG9jayBTSUdXSU5DSCIKK21zZ3N0ciAidmnhu4djIGLhu48gbmfEg24gY2jhurduIFNJR1dJTkNIIGLhu4sgbOG7l2kiCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTcwIGRzZWxlY3QvcGtnbGlzdC5jYzo1ODAKK21zZ2lkICJmYWlsZWQgdG8gcmUtYmxvY2sgU0lHV0lOQ0giCittc2dzdHIgInZp4buHYyBuZ8SDbiBjaOG6t24gbOG6oWkgU0lHV0lOQ0ggYuG7iyBs4buXaSIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxNzEgZHNlbGVjdC9wa2dsaXN0LmNjOjU4MgorbXNnaWQgImdldGNoIGZhaWxlZCIKK21zZ3N0ciAidmnhu4djIGdldGNoICjEkeG7jWMgdOG7q25nIGvDvSB04buxIGtoaSBnw7UpIGLhu4sgbOG7l2kiCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTg4CisjLCBmdXp6eQorbXNnaWQgIkV4cGxhbmF0aW9uIgorbXNnc3RyICJnaeG6o2kgdGjDrWNoIHbhu4EgIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjE5NworbXNnaWQgIk5vIGV4cGxhbmF0aW9uIGF2YWlsYWJsZS4iCittc2dzdHIgIktow7RuZyBjw7MgZ2nhuqNpIHRow61jaCBz4bq1biBzw6BuZy4iCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjY3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJcbiIKKyIlczogJXNcbiIKK21zZ3N0ciAiIgorIlxuIgorIlxuIgorIiVzOiAlc1xuIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzo3MAorbXNnaWQgIiIKKyJcbiIKKyJQcmVzcyA8ZW50ZXI+IHRvIGNvbnRpbnVlLiIKK21zZ3N0ciAiIgorIlxuIgorIk5o4bqlbiBwaMOtbSBFbnRlciDEkeG7gyB0aeG6v3AgdOG7pWMgbOG6oWkuIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoxNjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHJlc3MgPGVudGVyPiB0byBjb250aW51ZS5cbiIKK21zZ3N0ciAiTmjhuqVuIHBow61tIEVudGVyIMSR4buDIHRp4bq/cCB04bulYyBs4bqhaS5cbiIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MTYyCisjLCBmdXp6eQorbXNnaWQgIjxzdGFuZGFyZCBlcnJvcj4iCittc2dzdHIgImzhu5dpIGdoaSB0csOqbiB0aGnhur90IGLhu4sgbOG7l2kgY2h14bqpbiIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MTY1Cittc2dpZCAiZXJyb3IgcmVhZGluZyBhY2tub3dsZWRnZW1lbnQgb2YgcHJvZ3JhbSBmYWlsdXJlIG1lc3NhZ2UiCittc2dzdHIgImfhurdwIGzhu5dpIGtoaSDEkeG7jWMgc+G7sSB0aOG7q2Egbmjhuq1uIHRow7RuZyDEkWnhu4dwIGzhu5dpIGPhu6dhIGNoxrDGoW5nIHRyw6xuaCIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MTk2Cittc2dpZCAidXBkYXRlIGF2YWlsYWJsZSBsaXN0IHNjcmlwdCIKK21zZ3N0ciAiY+G6rXAgbmjhuq10IHThuq1wIGzhu4duaCBkYW5oIHPDoWNoIGPDsyBz4bq1biIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MjAwCittc2dpZCAiaW5zdGFsbGF0aW9uIHNjcmlwdCIKK21zZ3N0ciAidOG6rXAgbOG7h25oIGPDoGkgxJHhurd0IgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoyNDYKK21zZ2lkICJxdWVyeS9zZXR1cCBzY3JpcHQiCittc2dzdHIgInThuq1wIGzhu4duaCB0cnV5IHbhuqVuL3RoaeG6v3QgbOG6rXAiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjUzCisjLCBjLWZvcm1hdAorbXNnaWQgInN5bnRheCBlcnJvciBpbiBtZXRob2Qgb3B0aW9ucyBmaWxlIGAlLjI1MHMnIC0tICVzIgorbXNnc3RyICJs4buXaSBjw7ogcGjDoXAgdHJvbmcgdOG6rXAgdGluIHTDuXkgY2jhu41uIHBoxrDGoW5nIHBow6FwIMKrICUuMjUwcyDCuyAtLSAlcyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcmVhZGluZyBvcHRpb25zIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImfhurdwIGzhu5dpIGtoaSDEkeG7jWMgdOG6rXAgdGluIHTDuXkgY2jhu41uIMKrICUuMjUwcyDCuyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgYCUuMjUwcycgZGlyZWN0b3J5IGZvciByZWFkaW5nIG1ldGhvZHMiCittc2dzdHIgImtow7RuZyB0aOG7gyDEkeG7jWMgdGjGsCBt4bulYyDCqyAlLjI1MHMgwrsgxJHhu4MgY8OhYyBwaMawxqFuZyBwaMOhcCDEkeG7jWMiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjEwNgorIywgYy1mb3JtYXQKK21zZ2lkICJtZXRob2QgYCUuMjUwcycgaGFzIG5hbWUgdGhhdCBpcyB0b28gbG9uZyAoJWQgPiAlZCBjaGFyYWN0ZXJzKSIKK21zZ3N0ciAicGjGsMahbmcgcGjDoXAgwqsgJS4yNTBzIMK7IGPDsyB0w6puIHF1w6EgZMOgaSAoJWQgPiAlZCBrw70gdOG7sSkiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjExNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gYWNjZXNzIG1ldGhvZCBzY3JpcHQgYCUuMjUwcyciCittc2dzdHIgImtow7RuZyB0aOG7gyB0cnV5IGPhuq1wIHThuq1wIGzhu4duaCBwaMawxqFuZyBwaMOhcCDCqyAlLjI1MHMgwrsiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjEyMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBtZXRob2Qgb3B0aW9ucyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJraMO0bmcgdGjhu4MgxJHhu41jIHThuq1wIHRpbiB0w7l5IGNo4buNbiBwaMawxqFuZyBwaMOhcCDCqyAlLjI1MHMgwrsiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE0NworbXNnaWQgIm5vbi1kaWdpdCB3aGVyZSBkaWdpdCB3YW50ZWQiCittc2dzdHIgImtow7RuZyBwaOG6o2kgY2jhu68gc+G7kSDhu58gY2jhu5cgY+G6p24gY2jhu68gc+G7kSIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTUwCittc2dpZCAiRU9GIGluIGluZGV4IHN0cmluZyIKK21zZ3N0ciAiZ+G6t3Aga+G6v3QgdGjDumMgdOG6rXAgdGluIHRyb25nIGNodeG7l2kgY2jhu4kgbeG7pWMiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE1MworbXNnaWQgImluZGV4IHN0cmluZyB0b28gbG9uZyIKK21zZ3N0ciAiY2h14buXaSBjaOG7iSBt4bulYyBxdcOhIGTDoGkiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE1NgorbXNnaWQgIm5ld2xpbmUgYmVmb3JlIG9wdGlvbiBuYW1lIHN0YXJ0IgorbXNnc3RyICJkw7JuZyBt4bubaSB0csaw4bubYyBraGkgYuG6r3QgxJHhuqd1IHTDqm4gdMO5eSBjaOG7jW4iCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE1OAorbXNnaWQgIkVPRiBiZWZvcmUgb3B0aW9uIG5hbWUgc3RhcnQiCittc2dzdHIgImfhurdwIGvhur90IHRow7pjIHThuq1wIHRpbiB0csaw4bubYyBraGkgYuG6r3QgxJHhuqd1IHTDqm4gdMO5eSBjaOG7jW4iCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE2MgorbXNnaWQgIm5vbmFscGhhIHdoZXJlIG9wdGlvbiBuYW1lIHN0YXJ0IHdhbnRlZCIKK21zZ3N0ciAia2jDtG5nIHBo4bqjaSBjaOG7ryBjw6FpIOG7nyBjaOG7lyBj4bqnbiBi4bqvdCDEkeG6p3UgdMOqbiB0w7l5IGNo4buNbiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTY0Cittc2dpZCAibm9uLWFscGhhbnVtIGluIG9wdGlvbiBuYW1lIgorbXNnc3RyICJraMO0bmcgcGjhuqNpIGNo4buvIGPDoWkgaGF5IHPhu5Eg4bufIHRyb25nIHTDqm4gdMO5eSBjaOG7jW4iCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE2NworbXNnaWQgIkVPRiBpbiBvcHRpb24gbmFtZSIKK21zZ3N0ciAiZ+G6t3Aga+G6v3QgdGjDumMgdOG6rXAgdGluIHRyb25nIHTDqm4gdMO5eSBjaOG7jW4iCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE3MgorbXNnaWQgIm5ld2xpbmUgYmVmb3JlIHN1bW1hcnkiCittc2dzdHIgImTDsm5nIG3hu5tpIHRyxrDhu5tjIHThu5VuZyBr4bq/dCIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTc0Cittc2dpZCAiRU9GIGJlZm9yZSBzdW1tYXJ5IgorbXNnc3RyICJn4bq3cCBr4bq/dCB0aMO6YyB04bqtcCB0aW4gdHLGsOG7m2MgdOG7lW5nIGvhur90IgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxODAKK21zZ2lkICJFT0YgaW4gc3VtbWFyeSAtIG1pc3NpbmcgbmV3bGluZSIKK21zZ3N0ciAiZ+G6t3Aga+G6v3QgdGjDumMgdOG6rXAgdGluIHRyb25nIHThu5VuZyBr4bq/dCDigJQgdGhp4bq/dSBkw7JuZyBt4bubaSIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTkwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIG9wdGlvbiBkZXNjcmlwdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJraMO0bmcgdGjhu4MgbeG7nyB04bqtcCB0aW4gbcO0IHThuqMgdMO5eSBjaOG7jW4gwqsgJS4yNTBzIMK7IgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxOTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgb3B0aW9uIGRlc2NyaXB0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImtow7RuZyB0aOG7gyBs4bqleSBjw6FjIHRow7RuZyB0aW4gduG7gSB04bqtcCB0aW4gbcO0IHThuqMgdMO5eSBjaOG7jW4gwqsgJS4yNTBzIMK7IgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxOTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgb3B0aW9uIGRlc2NyaXB0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImtow7RuZyB0aOG7gyDEkeG7jWMgdOG6rXAgdGluIG3DtCB04bqjIHTDuXkgY2jhu41uIMKrICUuMjUwcyDCuyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MjAxCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGR1cmluZyByZWFkIG9mIG9wdGlvbiBkZXNjcmlwdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJn4bq3cCBs4buXaSB0cm9uZyBraGkgxJHhu41jIHThuq1wIHRpbiBtw7QgdOG6oyB0w7l5IGNo4buNbiDCqyAlLjI1MHMgwrsiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjIyNAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBkdXJpbmcgcmVhZCBvZiBtZXRob2Qgb3B0aW9ucyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJn4bq3cCBs4buXaSB0cm9uZyBraGkgxJHhu41jIHThuq1wIHRpbiB0w7l5IGNo4buNbiBwaMawxqFuZyBwaMOhcCDCqyAlLjI1MHMgwrsiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjI0NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBjdXJyZW50IG9wdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJraMO0bmcgdGjhu4MgbeG7nyB04bqtcCB0aW4gdMO5eSBjaOG7jW4gaGnhu4duIHRo4budaSDCqyAlLjI1MHMgwrsiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjI4OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBuZXcgb3B0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImtow7RuZyB0aOG7gyBt4bufIHThuq1wIHRpbiB0w7l5IGNo4buNbiBt4bubaSDCqyAlLjI1MHMgwrsiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjI5MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgbmV3IG9wdGlvbiB0byBgJS4yNTBzJyIKK21zZ3N0ciAia2jDtG5nIHRo4buDIGdoaSB0w7l5IGNo4buNbiBt4bubaSB04bubaSDCqyAlLjI1MHMgwrsiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjI5NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgbmV3IG9wdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJraMO0bmcgdGjhu4MgxJHDs25nIHThuq1wIHRpbiB0w7l5IGNo4buNbiBt4bubaSDCqyAlLjI1MHMgwrsiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjI5NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgb3B0aW9uIGFzIGAlLjI1MHMnIgorbXNnc3RyICJraMO0bmcgdGjhu4MgY8OgaSDEkeG6t3QgdMO5eSBjaOG7jW4gbeG7m2kgZOG6oW5nIMKrICUuMjUwcyDCuyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjM2Cittc2dpZCAibmV3IHBhY2thZ2UiCittc2dzdHIgImfDs2kgbeG7m2kiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzozNworbXNnaWQgImluc3RhbGwiCittc2dzdHIgImPDoGkgxJHhurd0IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MzgKK21zZ2lkICJob2xkIgorbXNnc3RyICJnaeG7ryBs4bqhaSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjM5Cittc2dpZCAicmVtb3ZlIgorbXNnc3RyICJn4buhIGLhu48iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo0MAorbXNnaWQgInB1cmdlIgorbXNnc3RyICJ04bqpeSIKKworIy4gVFJBTlNMQVRPUlM6IFRoZSBzcGFjZSBpcyBhIHRyaWNrIHRvIHdvcmsgYXJvdW5kIGdldHRleHQgd2hpY2ggdXNlcworIy4gKiB0aGUgZW1wdHkgc3RyaW5nIHRvIHN0b3JlIGluZm9ybWF0aW9uIGFib3V0IHRoZSB0cmFuc2xhdGlvbi4gRE8gTk9UCisjLiAqIENIQU5HRSBUSEFUIElOIEEgVFJBTlNMQVRJT04hIFRoZSBjb2RlIHJlYWxseSByZWxpZXMgb24gdGhhdCBiZWluZworIy4gKiBhIHNpbmdsZSBzcGFjZS4KKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo0NworbXNnaWQgIiAiCittc2dzdHIgIiAiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo0OAorbXNnaWQgIlJFSU5TVEFMTCIKK21zZ3N0ciAiQ8OASV/EkOG6tlRfTOG6oEkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1MQorbXNnaWQgIm5vdCBpbnN0YWxsZWQiCittc2dzdHIgImNoxrBhIGPDoGkgxJHhurd0IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTIKK21zZ2lkICJyZW1vdmVkIChjb25maWdzIHJlbWFpbikiCittc2dzdHIgIsSRw6MgZ+G7oSBi4buPICh24bqrbiBjw7JuIGPhuqV1IGjDrG5oKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjUzCittc2dpZCAiaGFsZiBpbnN0YWxsZWQiCittc2dzdHIgIsSRw6MgY8OgaSBt4buZdCBu4butYSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjU0Cittc2dpZCAidW5wYWNrZWQgKG5vdCBzZXQgdXApIgorbXNnc3RyICLEkcOjIG3hu58gZ8OzaSAoY2jGsGEgdGhp4bq/dCBs4bqtcCkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1NQorbXNnaWQgImhhbGYgY29uZmlndXJlZCAoY29uZmlnIGZhaWxlZCkiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjU2Cittc2dpZCAiYXdhaXRpbmcgdHJpZ2dlciBwcm9jZXNzaW5nIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1NworbXNnaWQgInRyaWdnZXJlZCIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTgKK21zZ2lkICJpbnN0YWxsZWQiCittc2dzdHIgIsSRw6MgY8OgaSDEkeG6t3QiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo2MQorbXNnaWQgIlJlcXVpcmVkIgorbXNnc3RyICJZw6p1IGPhuqd1IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjIKK21zZ2lkICJJbXBvcnRhbnQiCittc2dzdHIgIlF1YW4gdHLhu41uZyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjYzCittc2dpZCAiU3RhbmRhcmQiCittc2dzdHIgIkPGoSBi4bqjbiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjY0Cittc2dpZCAiT3B0aW9uYWwiCittc2dzdHIgIlTDuXkgY2jhu41uIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjUKK21zZ2lkICJFeHRyYSIKK21zZ3N0ciAiVGjDqm0iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo2NgorbXNnaWQgIiFCdWchIgorbXNnc3RyICIhTOG7l2khIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjcKK21zZ2lkICJVbmNsYXNzaWZpZWQiCittc2dzdHIgIkNoxrBhIHBow6JuIGxv4bqhaSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjcwCittc2dpZCAic3VnZ2VzdHMiCittc2dzdHIgIsSR4buBIG5naOG7iyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjcxCittc2dpZCAicmVjb21tZW5kcyIKK21zZ3N0ciAia2h1ecOqbiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjcyCittc2dpZCAiZGVwZW5kcyBvbiIKK21zZ3N0ciAicGjhu6UgdGh14buZYyB2w6BvIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzMKK21zZ2lkICJwcmUtZGVwZW5kcyBvbiIKK21zZ3N0ciAicGjhu6UgdGh14buZYyB0csaw4bubYyB2w6BvIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzQKK21zZ2lkICJicmVha3MiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjc1Cittc2dpZCAiY29uZmxpY3RzIHdpdGgiCittc2dzdHIgInh1bmcgxJHhu5l0IHbhu5tpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzYKK21zZ2lkICJwcm92aWRlcyIKK21zZ3N0ciAiY3VuZyBj4bqlcCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjc3Cittc2dpZCAicmVwbGFjZXMiCittc2dzdHIgInRoYXkgdGjhur8iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3OAorbXNnaWQgImVuaGFuY2VzIgorbXNnc3RyICJ0xINuZyBjxrDhu51uZyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjgxCittc2dpZCAiUmVxIgorbXNnc3RyICJD4bqnbiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjgyCittc2dpZCAiSW1wIgorbXNnc3RyICJRdGciCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4MworbXNnaWQgIlN0ZCIKK21zZ3N0ciAiQ2huIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODQKK21zZ2lkICJPcHQiCittc2dzdHIgIlRDaCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjg1Cittc2dpZCAiWHRyIgorbXNnc3RyICJO4buvYSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjg2Cittc2dpZCAiYlVHIgorbXNnc3RyICJs4buXaSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjg3Cittc2dpZCAiPyIKK21zZ3N0ciAiPyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjk1IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTUKK21zZ2lkICJCcm9rZW4iCittc2dzdHIgIkLhu4sgduG7oSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjk2Cittc2dpZCAiTmV3IgorbXNnc3RyICJN4bubaSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjk3Cittc2dpZCAiVXBkYXRlZCIKK21zZ3N0ciAixJDDoyBj4bqtcCBuaOG6rXQiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo5OAorbXNnaWQgIk9ic29sZXRlL2xvY2FsIgorbXNnc3RyICLEkMOjIGPFqS9u4buZaSBi4buZIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6OTkKK21zZ2lkICJVcC10by1kYXRlIgorbXNnc3RyICJIaeG7h24gdGjhu51pIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTAwCittc2dpZCAiQXZhaWxhYmxlIgorbXNnc3RyICJDw7Mgc+G6tW4iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDEgZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExNworbXNnaWQgIlJlbW92ZWQiCittc2dzdHIgIsSQw6MgZ+G7oSBi4buPIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTAyIGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTEKK21zZ2lkICJCcm9rZW5seSBpbnN0YWxsZWQgcGFja2FnZXMiCittc2dzdHIgIkfDs2kgxJHDoyBjw6BpIG5oxrBuZyBi4buLIHbhu6EiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDMKK21zZ2lkICJOZXdseSBhdmFpbGFibGUgcGFja2FnZXMiCittc2dzdHIgIk5o4buvbmcgZ8OzaSBt4bubaSBz4bq1biBzw6BuZyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwNAorbXNnaWQgIlVwZGF0ZWQgcGFja2FnZXMgKG5ld2VyIHZlcnNpb24gaXMgYXZhaWxhYmxlKSIKK21zZ3N0ciAiTmjhu69uZyBnw7NpIGPhuq1wIG5o4bqtdCAoY8OzIHPhurVuIHBoacOqbiBi4bqjbiBt4bubaSBoxqFuKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwNQorbXNnaWQgIk9ic29sZXRlIGFuZCBsb2NhbCBwYWNrYWdlcyBwcmVzZW50IG9uIHN5c3RlbSIKK21zZ3N0ciAiQ8OzIG5o4buvbmcgZ8OzaSDEkcOjIGPFqSB2w6AgZ8OzaSBu4buZaSBi4buZIHRyb25nIGjhu4cgdGjhu5FuZyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwNgorbXNnaWQgIlVwIHRvIGRhdGUgaW5zdGFsbGVkIHBhY2thZ2VzIgorbXNnc3RyICJOaOG7r25nIGfDs2kgxJHDoyBjw6BpIMSR4bq3dCBwaGnDqm4gYuG6o24gbeG7m2kgbmjhuqV0IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTA3Cittc2dpZCAiQXZhaWxhYmxlIHBhY2thZ2VzIChub3QgY3VycmVudGx5IGluc3RhbGxlZCkiCittc2dzdHIgIk5o4buvbmcgZ8OzaSBjw7Mgc+G6tW4gKG5oxrBuZyBjaMawYSBjw6BpIMSR4bq3dCkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDgKK21zZ2lkICJSZW1vdmVkIGFuZCBubyBsb25nZXIgYXZhaWxhYmxlIHBhY2thZ2VzIgorbXNnc3RyICJOaOG7r25nIGfDs2kgxJHDoyBn4buhIGLhu48gdsOgIGtow7RuZyBjw7JuIG7hu69hIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTEyCittc2dpZCAiSW5zdGFsbGVkIHBhY2thZ2VzIgorbXNnc3RyICJOaOG7r25nIGfDs2kgxJHDoyBjw6BpIMSR4bq3dCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExMworbXNnaWQgIlJlbW92ZWQgcGFja2FnZXMgKGNvbmZpZ3VyYXRpb24gc3RpbGwgcHJlc2VudCkiCittc2dzdHIgIk5o4buvbmcgZ8OzaSDEkcOjIGfhu6EgYuG7jyAobmjGsG5nIHbhuqtuIGPDsm4gY+G6pXUgaMOsbmgpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTE0Cittc2dpZCAiUHVyZ2VkIHBhY2thZ2VzIGFuZCB0aG9zZSBuZXZlciBpbnN0YWxsZWQiCittc2dzdHIgIk5o4buvbmcgZ8OzaSDEkcOjIHThuql5IHbDoCBnw7NpIGNoxrBhIGJhbyBnaeG7nSDEkcaw4bujYyBjw6BpIMSR4bq3dCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExNgorbXNnaWQgIkluc3RhbGxlZCIKK21zZ3N0ciAixJDDoyBjw6BpIMSR4bq3dCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExOAorbXNnaWQgIlB1cmdlZCIKK21zZ3N0ciAixJDDoyB04bqpeSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjE5OAorbXNnaWQgImRzZWxlY3QgLSByZWN1cnNpdmUgcGFja2FnZSBsaXN0aW5nIgorbXNnc3RyICJkc2VsZWN0IOKAlCBkYW5oIHPDoWNoIGfDs2kgxJHhu4cgcXV5IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTk5Cittc2dpZCAiZHNlbGVjdCAtIGluc3BlY3Rpb24gb2YgcGFja2FnZSBzdGF0ZXMiCittc2dzdHIgImRzZWxlY3Qg4oCUIHPhu7Ega2nhu4NtIHRyYSB0cuG6oW5nIHRow6FpIGPDoWMgZ8OzaSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIwMAorbXNnaWQgImRzZWxlY3QgLSBtYWluIHBhY2thZ2UgbGlzdGluZyIKK21zZ3N0ciAiZHNlbGVjdCDigJQgZGFuaCBzw6FjaCBnw7NpIGNow61uaCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIwOAorbXNnaWQgIiAoYnkgc2VjdGlvbikiCittc2dzdHIgIiAodGhlbyBwaOG6p24pIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjExCittc2dpZCAiIChhdmFpbC4sIHNlY3Rpb24pIgorbXNnc3RyICIgKHPhurVuLCBwaOG6p24pIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjE0Cittc2dpZCAiIChzdGF0dXMsIHNlY3Rpb24pIgorbXNnc3RyICIgKHRy4bqhbmcgdGjDoWksIHBo4bqnbikiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMjMKK21zZ2lkICIgKGJ5IHByaW9yaXR5KSIKK21zZ3N0ciAiICh0aGVvIMawdSB0acOqbikiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMjYKK21zZ2lkICIgKGF2YWlsLiwgcHJpb3JpdHkpIgorbXNnc3RyICIgKHPhurVuLCDGsHUgdGnDqm4pIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjI5Cittc2dpZCAiIChzdGF0dXMsIHByaW9yaXR5KSIKK21zZ3N0ciAiICh0cuG6oW5nIHRow6FpLCDGsHUgdGnDqm4pIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjM4IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNTAKK21zZ2lkICIgKGFscGhhYmV0aWNhbGx5KSIKK21zZ3N0ciAiICh0aGVvIGLhuqNuZyBjaOG7ryBjw6FpKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI0MQorbXNnaWQgIiAoYnkgYXZhaWxhYmlsaXR5KSIKK21zZ3N0ciAiICh0aGVvIGto4bqjIG7Eg25nIHPhurVuKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI0NAorbXNnaWQgIiAoYnkgc3RhdHVzKSIKK21zZ3N0ciAiICh0aGVvIHRy4bqhbmcgdGjDoWkpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjU4Cittc2dpZCAiIG1hcms6Ky89Ly0gdGVyc2U6diBoZWxwOj8iCittc2dzdHIgIiBk4bqldTorLz0vLSBuZ+G6r24gZ+G7jW46diB0cuG7oyBnacO6cDo/IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjU5Cittc2dpZCAiIG1hcms6Ky89Ly0gdmVyYm9zZTp2IGhlbHA6PyIKK21zZ3N0ciAiIGThuqV1OisvPS8tIGNoaSB0aeG6v3Q6diB0cuG7oyBnacO6cDo/IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjYwCittc2dpZCAiIHRlcnNlOnYgaGVscDo/IgorbXNnc3RyICIgbmfhuq9uIGfhu41uOnYgdHLhu6MgZ2nDunA6PyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI2MQorbXNnaWQgIiB2ZXJib3NlOnYgaGVscDo/IgorbXNnc3RyICIgY2hpIHRp4bq/dDp2IHRy4bujIGdpw7pwOj8iCisKKyM6IGRzZWxlY3QvcGtnaW5mby5jYzo4MAorbXNnaWQgIiIKKyJUaGUgbGluZSB5b3UgaGF2ZSBoaWdobGlnaHRlZCByZXByZXNlbnRzIG1hbnkgcGFja2FnZXM7IGlmIHlvdSBhc2sgdG8gIgorImluc3RhbGwsIHJlbW92ZSwgaG9sZCwgZXRjLiBpdCB5b3Ugd2lsbCBhZmZlY3QgYWxsIHRoZSBwYWNrYWdlcyB3aGljaCBtYXRjaCAiCisidGhlIGNyaXRlcmlvbiBzaG93bi5cbiIKKyJcbiIKKyJJZiB5b3UgbW92ZSB0aGUgaGlnaGxpZ2h0IHRvIGEgbGluZSBmb3IgYSBwYXJ0aWN1bGFyIHBhY2thZ2UgeW91IHdpbGwgc2VlICIKKyJpbmZvcm1hdGlvbiBhYm91dCB0aGF0IHBhY2thZ2UgZGlzcGxheWVkIGhlcmUuXG4iCisiWW91IGNhbiB1c2UgYG8nIGFuZCBgTycgdG8gY2hhbmdlIHRoZSBzb3J0IG9yZGVyIGFuZCBnaXZlIHlvdXJzZWxmIHRoZSAiCisib3Bwb3J0dW5pdHkgdG8gbWFyayBwYWNrYWdlcyBpbiBkaWZmZXJlbnQga2luZHMgb2YgZ3JvdXBzLiIKK21zZ3N0ciAiIgorIkTDsm5nIHbhu6thIGNoaeG6v3Ugc8OhbmcgY8OzIG5oaeG7gXUgZ8OzaTsgaMOgbmggxJHhu5luZyBjw6BpIMSR4bq3dCwgZ+G7oSBi4buPLCBnaeG7ryBs4bqhaSwgdi52Li4uICIKKyJz4bq9IOG6o25oIGjGsOG7n25nIMSR4bq/biBt4buNaSBnw7NpIHTGsMahbmcg4bupbmcgduG7m2kgdGnDqnUgY2h14bqpbiBjaOG7iSByYS5cbiIKKyJcbiIKKyJO4bq/dSBkaSBjaHV54buDbiBjaGnhur91IHPDoW5nIHThu5tpIG3hu5l0IGTDsm5nIGPhu6dhIG3hu5l0IGfDs2kgbsOgbyDEkcOzLCB0aMOsIHPhur0gdGjhuqV5IHRow7RuZyAiCisidGluIHbhu4EgZ8OzaSDEkcOzIGhp4buDbiB0aOG7iyDhu58gxJHDonkuXG4iCisiQ8OzIHRo4buDIGTDuW5nIMKrIG8gwrsgdsOgIMKrIE8gwrsgxJHhu4MgdGhheSDEkeG7lWkgdGjhu6kgdOG7sSBz4bqvcCB44bq/cCB2w6AgdOG6oW8gxJFp4buBdSBraeG7h24gY2hvICIKKyJ2aeG7h2MgxJHDoW5oIGThuqV1IGPDoWMgZ8OzaSB0cm9uZyBjw6FjIGThuqFuZyBuaMOzbSBraMOhYyBuaGF1LiIKKworIzogZHNlbGVjdC9wa2dpbmZvLmNjOjkzCisjLCBmdXp6eQorbXNnaWQgIkludGVycmVsYXRpb25zaGlwcyIKK21zZ3N0ciAicXVhbiBo4buHIHF1YSBs4bqhaSIKKworIzogZHNlbGVjdC9wa2dpbmZvLmNjOjExMgorIywgZnV6enkKK21zZ2lkICJObyBkZXNjcmlwdGlvbiBhdmFpbGFibGUuIgorbXNnc3RyICJraMO0bmcgY8OzIG3DtCB04bqjLiIKKworIzogZHNlbGVjdC9wa2dpbmZvLmNjOjEzMAorIywgZnV6enkKK21zZ2lkICJJbnN0YWxsZWQgY29udHJvbCBmaWxlIGluZm9ybWF0aW9uIgorbXNnc3RyICJ0aMO0bmcgdGluIMSRaeG7gXUga2hp4buDbiDEkcOjIGPDoGkgxJHhurd0IGNobyAiCisKKyM6IGRzZWxlY3QvcGtnaW5mby5jYzoxNDYKKyMsIGZ1enp5Cittc2dpZCAiQXZhaWxhYmxlIGNvbnRyb2wgZmlsZSBpbmZvcm1hdGlvbiIKK21zZ3N0ciAicGhpw6puIGLhuqNuIGPDsyBz4bq1biBj4bunYSB0aMO0bmcgdGluIHThuq1wIHRpbiDEkWnhu4F1IGtoaeG7g24iCisKKyM6IGRzZWxlY3QvcGtnbGlzdC5jYzo0MTYKK21zZ2lkICJUaGVyZSBhcmUgbm8gcGFja2FnZXMuIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnbGlzdC5jYzo1MDcKK21zZ2lkICJpbnZhbGlkIHNlYXJjaCBvcHRpb24gZ2l2ZW4iCittc2dzdHIgIsSRxrBhIHJhIHR14buzIGNo4buNbiB0w6xtIGtp4bq/bSBraMO0bmcgaOG7o3AgbOG7hyIKKworIzogZHNlbGVjdC9wa2dsaXN0LmNjOjUyMQorbXNnaWQgImVycm9yIGluIHJlZ3VsYXIgZXhwcmVzc2lvbiIKK21zZ3N0ciAiZ+G6t3AgbOG7l2kgdHJvbmcgYmnhu4N1IHRo4bupYyBjaMOtbmggcXV5IgorCisjOiBkc2VsZWN0L3BrZ3N1Ymxpc3QuY2M6MTA3Cittc2dpZCAiIGRvZXMgbm90IGFwcGVhciB0byBiZSBhdmFpbGFibGVcbiIKK21zZ3N0ciAiIGPDsyB24bq7IGtow7RuZyBjw7Mgc+G6tW5cbiIKKworIzogZHNlbGVjdC9wa2dzdWJsaXN0LmNjOjEyNworbXNnaWQgIiBvciAiCittc2dzdHIgIiBob+G6t2MgIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo1NworbXNnaWQgIkFsbCIKK21zZ3N0ciAiTeG7jWkiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjc5Cittc2dpZCAiQWxsIHBhY2thZ2VzIgorbXNnc3RyICJN4buNaSBnw7NpIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo4MworIywgYy1mb3JtYXQKK21zZ2lkICIlcyBwYWNrYWdlcyB3aXRob3V0IGEgc2VjdGlvbiIKK21zZ3N0ciAiJXMgZ8OzaSBraMO0bmcgbuG6sW0gdHJvbmcgcGjhuqduIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo4NQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBwYWNrYWdlcyBpbiBzZWN0aW9uICVzIgorbXNnc3RyICIlcyBnw7NpIHRyb25nIHBo4bqnbiAlcyIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6OTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgJXMgcGFja2FnZXMiCittc2dzdHIgIiVzICVzIGfDs2kiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjk1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzICVzIHBhY2thZ2VzIHdpdGhvdXQgYSBzZWN0aW9uIgorbXNnc3RyICIlcyAlcyBnw7NpIGtow7RuZyBu4bqxbSB0cm9uZyBwaOG6p24iCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjk3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzICVzIHBhY2thZ2VzIGluIHNlY3Rpb24gJXMiCittc2dzdHIgIiVzICVzIGfDs2kgdHJvbmcgcGjhuqduICVzIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoxMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJS0qcyAlcyVzJXM7ICAlcyAod2FzOiAlcykuICAlcyIKK21zZ3N0ciAiJS0qcyAlcyVzJXM7ICAlcyAoxJHDoyBsw6A6ICVzKS4gICVzIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyNjMKK21zZ2lkICJFcnJvciIKK21zZ3N0ciAiTOG7l2kiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI2NworbXNnaWQgIkluc3RhbGxlZD8iCittc2dzdHIgIsSQw6MgY8OgaT8iCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI3MQorbXNnaWQgIk9sZCBtYXJrIgorbXNnc3RyICJE4bqldSBjxakiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI3NQorbXNnaWQgIk1hcmtlZCBmb3IiCittc2dzdHIgIkThuqV1IGNobyIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6Mjc4Cittc2dpZCAiRUlPTSIKK21zZ3N0ciAiRUlPTSIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6MjgwCittc2dpZCAiU2VjdGlvbiIKK21zZ3N0ciAiUGjhuqduIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyODEKK21zZ2lkICJQcmlvcml0eSIKK21zZ3N0ciAixq91IHRpw6puIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyODIKK21zZ2lkICJQYWNrYWdlIgorbXNnc3RyICJHw7NpIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyODYKK21zZ2lkICJJbnN0LnZlciIKK21zZ3N0ciAiQuG6o25fY8OgaSIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6Mjg5Cittc2dpZCAiQXZhaWwudmVyIgorbXNnc3RyICJC4bqjbl9jw7MiCisKKyN+IG1zZ2lkICJyZXR1cm5lZCBlcnJvciBleGl0IHN0YXR1cyAlZC5cbiIKKyN+IG1zZ3N0ciAidHLhuqMgbOG6oWkgdHLhuqFuZyB0aMOhaSB0aG/DoXQgcmEgbOG7l2kgJWQuXG4iCisKKyN+IG1zZ2lkICJ3YXMgaW50ZXJydXB0ZWQuXG4iCisjfiBtc2dzdHIgIsSRw6MgYuG7iyBnacOhbiDEkW/huqFuLlxuIgorCisjfiBtc2dpZCAid2FzIHRlcm1pbmF0ZWQgYnkgYSBzaWduYWw6ICVzLlxuIgorI34gbXNnc3RyICLEkcOjIGLhu4sgZOG7q25nIGLhu59pIHTDrW4gaGnhu4d1OiAlcy5cbiIKKworI34gbXNnaWQgIihJdCBsZWZ0IGEgY29yZWR1bXAuKVxuIgorI34gbXNnc3RyICIoTsOzIMSR4buDIGzhuqFpIG3hu5l0IGNvcmVkdW1wIChi4buZIMSR4buVIGzDtWkpLilcbiIKKworI34gbXNnaWQgImZhaWxlZCB3aXRoIGFuIHVua25vd24gd2FpdCByZXR1cm4gY29kZSAlZC5cbiIKKyN+IG1zZ3N0ciAidGjhuqV0IGLhuqFpIHbhu5tpIG3hu5l0IG3DoyB0cuG6oyBs4bqhaSBjaOG7nSBraMO0bmcgcsO1ICVkLlxuIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHJ1biAlLjI1MHMgcHJvY2VzcyBgJS4yNTBzJyIKKyN+IG1zZ3N0ciAia2jDtG5nIHRo4buDIGNo4bqheSB0aeG6v24gdHLDrG5oICUuMjUwcyDCqyAlLjI1MHMgwrsiCisKKyN+IG1zZ2lkICJmYWlsZWQgY29uZmlnIgorI34gbXNnc3RyICJj4bqldSBow6xuaCBi4buLIGzhu5dpIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHdhaXQgZm9yICUuMjUwcyIKKyN+IG1zZ3N0ciAia2jDtG5nIHRo4buDIGNo4budICUuMjUwcyIKKworI34gbXNnaWQgImdvdCB3cm9uZyBjaGlsZCdzIHN0YXR1cyAtIGFza2VkIGZvciAlbGQsIGdvdCAlbGQiCisjfiBtc2dzdHIgIiIKKyN+ICJuaOG6rW4gdHLhuqFuZyB0aMOhaSBj4bunYSB0aeG6v24gdHLDrG5oIGNvbiBzYWkg4oCUIHnDqnUgY+G6p3UgJWxkIGPDsm4gbmjhuq1uIMSRxrDhu6NjICVsZCIKKworI34gbXNnaWQgIlJlY29tbWVuZGVkIgorI34gbXNnc3RyICJLaHV5w6puIgorCisjfiBtc2dpZCAiQ29udHJpYiIKKyN+IG1zZ3N0ciAiR8OzcCIKKworI34gbXNnaWQgIlJlYyIKKyN+IG1zZ3N0ciAiTsOqbiIKKworI34gbXNnaWQgIkN0YiIKKyN+IG1zZ3N0ciAiR8OzcCIKKworI34gbXNnaWQgIiIKKyN+ICJiYXNlbGlzdDo6c3RhcnRkaXNwbGF5KCkgZG9uZSAuLi5cbiIKKyN+ICJcbiIKKyN+ICIgeG1heD0lZCwgeW1heD0lZDtcbiIKKyN+ICJcbiIKKyN+ICIgdGl0bGVfaGVpZ2h0PSVkLCBjb2xoZWFkc19oZWlnaHQ9JWQsIGxpc3RfaGVpZ2h0PSVkO1xuIgorI34gIiB0aGlzc3RhdGVfaGVpZ2h0PSVkLCBpbmZvX2hlaWdodD0lZCwgd2hhdGluZm9faGVpZ2h0PSVkO1xuIgorI34gIlxuIgorI34gIiBjb2xoZWFkc19yb3c9JWQsIHRoaXNzdGF0ZV9yb3c9JWQsIGluZm9fcm93PSVkO1xuIgorI34gIiB3aGF0aW5mb19yb3c9JWQsIGxpc3Rfcm93PSVkO1xuIgorI34gIlxuIgorI34gbXNnc3RyICIiCisjfiAiZGFuaCBzw6FjaCBjxqEgYuG6o246OnN0YXJ0ZGlzcGxheSgpIChz4bufIGto4bufaSBi4buZIHRyw6xuaCBiw6B5KSDEkcOjIHhvbmcgLi4uXG4iCisjfiAiXG4iCisjfiAiIHhfdOG7kWlfxJFhPSVkLCB5X8SR4buRaV/EkWE9JWQ7XG4iCisjfiAiXG4iCisjfiAiIGNhb1904buxYT0lZCwgY2FvX8SR4bqndV9j4buZdD0lZCwgY2FvX2Rhbmhfc8OhY2g9JWQ7XG4iCisjfiAiIGNhb190w61uaF90cuG6oW5nX27DoHk9JWQsIGNhb190aMO0bmdfdGluPSVkLCBjYW9fdGjDtG5nX3Rpbl9uw6BvPSVkO1xuIgorI34gIlxuIgorI34gIiBow6BuZ1/EkeG6p3VfY+G7mXQ9JWQsIGjDoG5nX3TDrW5oX3Ry4bqhbmdfbsOgeT0lZCwgaMOgbmdfdGjDtG5nX3Rpbj0lZDtcbiIKKyN+ICIgaMOgbmdfdGjDtG5nX3Rpbl9uw6BvPSVkLCBow6BuZ19kYW5oX3PDoWNoPSVkO1xuIgorI34gIlxuIgorCisjfiBtc2dpZCAiW25vbmVdIgorI34gbXNnc3RyICJba2jDtG5nIGPDs10iCisKKyN+IG1zZ2lkICJlcnJvciB1bi1jYXRjaGluZyBzaWduYWwgJWQ6ICVzXG4iCisjfiBtc2dzdHIgImfhurdwIGzhu5dpIGtoaSBi4buPIGLhuq90IHTDrW4gaGnhu4d1ICVkOiAlc1xuIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGlnbm9yZSBzaWduYWwgJWQgYmVmb3JlIHJ1bm5pbmcgJS4yNTBzIgorI34gbXNnc3RyICJraMO0bmcgdGjhu4MgbOG7nWkgxJFpIHTDrW4gaGnhu4d1ICVkIHRyxrDhu5tjIGtoaSBjaOG6oXkgJS4yNTBzIgorCisjfiBtc2dpZCAiKG5vIGNsaWVudGRhdGEpIgorI34gbXNnc3RyICIoa2jDtG5nIGThu68gbGnhu4d1IGtow6FjaCkiCisKKyN+IG1zZ2lkICI8bnVsbD4iCisjfiBtc2dzdHIgIjxy4buXbmc+IgorCisjfiBtc2dpZCAiaW50ZXJyZWxhdGlvbnNoaXBzIGFmZmVjdGluZyAiCisjfiBtc2dzdHIgIuG6o25oIGjGsOG7n25nIHF1YW4gaOG7hyBxdWEgbOG6oWkgIgorCisjfiBtc2dpZCAiZGVzY3JpcHRpb24gb2YgIgorI34gbXNnc3RyICJtw7QgdOG6oyB24buBICIKKworI34gbXNnaWQgImRlc2NyaXB0aW9uIgorI34gbXNnc3RyICJtw7QgdOG6oyIKKworI34gbXNnaWQgImN1cnJlbnRseSBpbnN0YWxsZWQgY29udHJvbCBpbmZvIgorI34gbXNnc3RyICJ0aMO0bmcgdGluIMSRaeG7gXUga2hp4buDbiBoaeG7h24gdGjhu51pIMSRw6MgY8OgaSDEkeG6t3QiCisKKyN+IG1zZ2lkICJhdmFpbGFibGUgdmVyc2lvbiBvZiBjb250cm9sIGluZm8gZm9yICIKKyN+IG1zZ3N0ciAicGhpw6puIGLhuqNuIGPDsyBz4bq1biBj4bunYSB0aMO0bmcgdGluIMSRaeG7gXUga2hp4buDbiBjaG8gIgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL3poX0NOLmdtbyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby96aF9DTi5nbW8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzRiOTg0ZgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby96aF9DTi5nbW8KQmluYXJ5IGZpbGVzIGRpZmZlcgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL3poX0NOLnBvIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL3poX0NOLnBvCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQ0ZjlhYmIKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vemhfQ04ucG8KQEAgLTAsMCArMSwxNzEzIEBACisjIFNpbXBsaWZpZWQgQ2hpbmVzZSB0cmFuc2xhdGlvbiB0byBkcGtnLgorIyBDb3B5cmlnaHQgKEMpIDIwMDQgVEhFIFBBQ0tBR0UnUyBDT1BZUklHSFQgSE9MREVSCisjIFRoaXMgZmlsZSBpcyBkaXN0cmlidXRlZCB1bmRlciB0aGUgc2FtZSBsaWNlbnNlIGFzIHRoZSBQQUNLQUdFIHBhY2thZ2UuCisjCisjIENvcHlyaWdodHM6CisjIEtvdiBDaGFpIDx0Y2hhaWtvdkBzanR1LmVkdS5jbj4sIDIwMDUsMjAwNi4KKyMgSGl3ZWVkIExlbmcgPGhpd2VlZEAxNjMuY29tPiwgMjAwNC4KKyMgQ2FybG9zIFouRi4gTGl1IDxjYXJsb3NsaXVAdXNlcnMuc291cmNlZm9yZ2UubmV0PiwgMjAwNC4KKyMKK21zZ2lkICIiCittc2dzdHIgIiIKKyJQcm9qZWN0LUlkLVZlcnNpb246IGRwa2cgMS4xM1xuIgorIlJlcG9ydC1Nc2dpZC1CdWdzLVRvOiBkZWJpYW4tZHBrZ0BsaXN0cy5kZWJpYW4ub3JnXG4iCisiUE9ULUNyZWF0aW9uLURhdGU6IDIwMTEtMTAtMTQgMDc6MTErMDIwMFxuIgorIlBPLVJldmlzaW9uLURhdGU6IDIwMDYtMDUtMDYgMjA6MTErMDgwMFxuIgorIkxhc3QtVHJhbnNsYXRvcjogS292IENoYWkgPHRjaGFpa292QHNqdHUuZWR1LmNuPlxuIgorIkxhbmd1YWdlLVRlYW06IERlYmlhbiBDaGluZXNlIFtHQl0gPGRlYmlhbi1jaGluZXNlLWdiQGxpc3RzLmRlYmlhbi5vcmc+XG4iCisiTGFuZ3VhZ2U6IHpoX0NOXG4iCisiTUlNRS1WZXJzaW9uOiAxLjBcbiIKKyJDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9VVRGLThcbiIKKyJDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiA4Yml0XG4iCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MTI1Cittc2dpZCAiU2VhcmNoIGZvciA/ICIKK21zZ3N0ciAi5oOz5pCc57Si5LuA5LmI77yfIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE0NworbXNnaWQgIkVycm9yOiAiCittc2dzdHIgIumUmeivr++8miIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxNzgKK21zZ2lkICJIZWxwOiAiCittc2dzdHIgIuW4ruWKqe+8miIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxODQKK21zZ2lkICJQcmVzcyA/IGZvciBoZWxwIG1lbnUsIC4gZm9yIG5leHQgdG9waWMsIDxzcGFjZT4gdG8gZXhpdCBoZWxwLiIKK21zZ3N0ciAiIgorIuaRgSA/IOWPr+S7peW8ueWHuuW4ruWKqeiPnOWNle+8jOeUqCAuIOadpei/m+WFpeS4i+S4quS4u+mimO+8jOmAmui/hyA856m65qC8PiDlsLHog73pgIDlh7rluK7liqnnlYzpnaLjgIIiCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MTkxCittc2dpZCAiSGVscCBpbmZvcm1hdGlvbiBpcyBhdmFpbGFibGUgdW5kZXIgdGhlIGZvbGxvd2luZyB0b3BpY3M6IgorbXNnc3RyICLmgqjlj6/ojrflvpfmnInlhbPkuIvliJfkuLvpopjnmoTluK7liqnkv6Hmga/vvJoiCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MTk5Cittc2dpZCAiIgorIlByZXNzIGEga2V5IGZyb20gdGhlIGxpc3QgYWJvdmUsIDxzcGFjZT4gb3IgYHEnIHRvIGV4aXQgaGVscCxcbiIKKyIgIG9yIGAuJyAoZnVsbCBzdG9wKSB0byByZWFkIGVhY2ggaGVscCBwYWdlIGluIHR1cm4uICIKK21zZ3N0ciAiIgorIuivt+aRgeS4iumdouWIl+ihqOS4reaJgOekuueahOaMiemUru+8jOeUqCA856m65qC8PiDmiJbogIXigJxx4oCd5p2l6YCA5Ye65biu5Yqp55WM6Z2i77yMXG4iCisi5oiW6ICF55So4oCcLuKAnSjoi7Hmloflj6Xngrkp5p2l5L6d5qyh6ZiF6K+75biu5Yqp6aG16Z2i44CCIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjIwNQorbXNnaWQgImVycm9yIHJlYWRpbmcga2V5Ym9hcmQgaW4gaGVscCIKK21zZ3N0ciAi5Zyo5biu5Yqp55WM6Z2i6K+75Y+W6ZSu55uY6L6T5YWl5pe25Ye66ZSZIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjU3Cittc2dpZCAiaW9jdGwoVElPQ0dXSU5TWikgZmFpbGVkIgorbXNnc3RyICJpb2N0bChUSU9DR1dJTlNaKSDlpLHotKUiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6NjAKK21zZ2lkICJkb3VwZGF0ZSBpbiBTSUdXSU5DSCBoYW5kbGVyIGZhaWxlZCIKK21zZ3N0ciAi5ZyoIFNJR1dJTkNIIOeahOWkhOeQhuWHveaVsOmHjCBkb3VwZGF0ZSDlpLHotKXkuoYiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6NjcKK21zZ2lkICJmYWlsZWQgdG8gcmVzdG9yZSBvbGQgU0lHV0lOQ0ggc2lnYWN0IgorbXNnc3RyICLmgaLlpI3ljp/lhYjnmoQgU0lHV0lOQ0ggc2lnYWN0IOWksei0pSIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo2OQorbXNnaWQgImZhaWxlZCB0byByZXN0b3JlIG9sZCBzaWduYWwgbWFzayIKK21zZ3N0ciAi5oGi5aSN5Y6f5YWI55qEIHNpZ25hbCBtYXNrIOWksei0pSIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo3OQorbXNnaWQgImZhaWxlZCB0byBnZXQgb2xkIHNpZ25hbCBtYXNrIgorbXNnc3RyICLojrflj5bljp/lhYjnmoQgc2lnbmFsIG1hc2sg5aSx6LSlIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjgwCittc2dpZCAiZmFpbGVkIHRvIGdldCBvbGQgU0lHV0lOQ0ggc2lnYWN0IgorbXNnc3RyICLojrflj5bljp/lhYjnmoQgU0lHV0lOQ0ggc2lnYWN0IOWHuumUmSIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo4NAorbXNnaWQgImZhaWxlZCB0byBibG9jayBTSUdXSU5DSCIKK21zZ3N0ciAi5peg5rOV6Zi75aGeIFNJR1dJTkNIIOS/oeWPtyIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo4OQorbXNnaWQgImZhaWxlZCB0byBzZXQgbmV3IFNJR1dJTkNIIHNpZ2FjdCIKK21zZ3N0ciAi6K6+572u5paw55qEIFNJR1dJTkNIIHNpZ2FjdCDlpLHotKUiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTI2Cittc2dpZCAiZmFpbGVkIHRvIGFsbG9jYXRlIGNvbG91ciBwYWlyIgorbXNnc3RyICLliIbphY3popzoibLlr7nlpLHotKUiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTY3Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSB0aXRsZSB3aW5kb3ciCittc2dzdHIgIuWIm+W7uuagh+mimOeql+WPo+Wksei0pSIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxNzEKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHdoYXRpbmZvIHdpbmRvdyIKK21zZ3N0ciAi5Yib5bu6IHdoYXRpbmZvIOeql+WPo+Wksei0pSIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxNzUKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGJhc2VsaXN0IHBhZCIKK21zZ3N0ciAi5peg5rOV5paw5bu65Z+65YiX6KGo55qE5bCP56qX5Y+jIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE3OAorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgaGVhZGluZyBwYWQiCittc2dzdHIgIuaXoOazleaWsOW7uuagh+mimOWwj+eql+WPoyIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxODIKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHRoaXNzdGF0ZSBwYWQiCittc2dzdHIgIuaXoOazleaWsOW7uiB0aGlzc3RhdGUg5bCP56qX5Y+jIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE4NgorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgaW5mbyBwYWQiCittc2dzdHIgIuaXoOazleaWsOW7uuebuOWFs+S/oeaBr+Wwj+eql+WPoyIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxOTEKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHF1ZXJ5IHdpbmRvdyIKK21zZ3N0ciAi5Yib5bu65p+l6K+i56qX5Y+j5aSx6LSlIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjI1NQorIywgZnV6enkKK21zZ2lkICJLZXliaW5kaW5ncyIKK21zZ3N0ciAi6ZSu5L2N57uR5a6aIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjMwMworIywgYy1mb3JtYXQKK21zZ2lkICIgIC0tICVkJSUsIHByZXNzICIKK21zZ3N0ciAiICAtLSAlZCUl77yM6K+35pGBICIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzozMDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgZm9yIG1vcmUiCittc2dzdHIgIiVzIOe7p+e7reW+gOS4i+ivuyIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzozMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgdG8gZ28gYmFjayIKK21zZ3N0ciAiJXMg5Y+v5Lul6Lez5Zue5Y6f5p2l55qE5L2N572uIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjc4Cittc2dpZCAiW25vdCBib3VuZF0iCittc2dzdHIgIlvmnKrnu5HlrppdIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjgyCisjLCBjLWZvcm1hdAorbXNnaWQgIlt1bms6ICVkXSIKK21zZ3N0ciAiW+acquefpe+8miVkXSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxMzkKK21zZ2lkICJTY3JvbGwgb253YXJkcyB0aHJvdWdoIGhlbHAvaW5mb3JtYXRpb24iCittc2dzdHIgIuWcqOW4ruWKqeaWh+aho+aIluebuOWFs+S/oeaBr+S4reWQkeWJjea7muWKqCIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDAKK21zZ2lkICJTY3JvbGwgYmFja3dhcmRzIHRocm91Z2ggaGVscC9pbmZvcm1hdGlvbiIKK21zZ3N0ciAi5Zyo5biu5Yqp5oiW55u45YWz5L+h5oGv5Lit5ZCR5YmN5rua5YqoIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0MQorbXNnaWQgIk1vdmUgdXAiCittc2dzdHIgIuS4iuenuyIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDIKK21zZ2lkICJNb3ZlIGRvd24iCittc2dzdHIgIuS4i+enuyIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDMKK21zZ2lkICJHbyB0byB0b3Agb2YgbGlzdCIKK21zZ3N0ciAi6Lez5Yiw6aG256uv5YiX6KGoIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0NAorbXNnaWQgIkdvIHRvIGVuZCBvZiBsaXN0IgorbXNnc3RyICLot7PliLDlupXnq6/liJfooagiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ1Cittc2dpZCAiUmVxdWVzdCBoZWxwIChjeWNsZSB0aHJvdWdoIGhlbHAgc2NyZWVucykiCittc2dzdHIgIuivt+axguW4ruWKqSjlnKjluK7liqnnlYzpnaLlkajmuLgpIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0NgorbXNnaWQgIkN5Y2xlIHRocm91Z2ggaW5mb3JtYXRpb24gZGlzcGxheXMiCittc2dzdHIgIuWcqOebuOWFs+S/oeaBr+eVjOmdoumHjOWRqOa4uCIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDcKK21zZ2lkICJSZWRyYXcgZGlzcGxheSIKK21zZ3N0ciAi6YeN55S75bGP5bmVIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0OAorbXNnaWQgIlNjcm9sbCBvbndhcmRzIHRocm91Z2ggbGlzdCBieSAxIGxpbmUiCittc2dzdHIgIuWcqOWIl+ihqOS4reWQkeWJjea7muWKqOS4gOihjCIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDkKK21zZ2lkICJTY3JvbGwgYmFja3dhcmRzIHRocm91Z2ggbGlzdCBieSAxIGxpbmUiCittc2dzdHIgIuWcqOWIl+ihqOS4reWQkeWQjua7muWKqOS4gOihjCIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTAKK21zZ2lkICJTY3JvbGwgb253YXJkcyB0aHJvdWdoIGhlbHAvaW5mb3JtYXRpb24gYnkgMSBsaW5lIgorbXNnc3RyICLlnKjluK7liqnmiJbnm7jlhbPkv6Hmga/kuK3lkJHliY3mu5rliqjkuIDooYwiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTUxCittc2dpZCAiU2Nyb2xsIGJhY2t3YXJkcyB0aHJvdWdoIGhlbHAvaW5mb3JtYXRpb24gYnkgMSBsaW5lIgorbXNnc3RyICLlnKjluK7liqnmiJbnm7jlhbPkv6Hmga/kuK3lkJHlkI7mu5rliqjkuIDooYwiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTUyCittc2dpZCAiU2Nyb2xsIG9ud2FyZHMgdGhyb3VnaCBsaXN0IgorbXNnc3RyICLlnKjliJfooajkuK3lkJHliY3mu5rliqgiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTUzCittc2dpZCAiU2Nyb2xsIGJhY2t3YXJkcyB0aHJvdWdoIGxpc3QiCittc2dzdHIgIuWcqOWIl+ihqOS4reWQkeWJjea7muWKqCIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTYKK21zZ2lkICJNYXJrIHBhY2thZ2UocykgZm9yIGluc3RhbGxhdGlvbiIKK21zZ3N0ciAi5oqK6L2v5Lu25YyF5qCH6K6w5Li64oCc5bCG6KaB5a6J6KOF4oCdIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1NworbXNnaWQgIk1hcmsgcGFja2FnZShzKSBmb3IgZGVpbnN0YWxsYXRpb24iCittc2dzdHIgIuaKiui9r+S7tuWMheagh+iusOS4uuKAnOWwhuimgeWNuOi9veKAnSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTgKK21zZ2lkICJNYXJrIHBhY2thZ2UocykgZm9yIGRlaW5zdGFsbCBhbmQgcHVyZ2UiCittc2dzdHIgIuaKiui9r+S7tuWMheagh+iusOS4uuKAnOWNuOi9veW5tua4hemZpOKAnSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTkKK21zZ2lkICJNYWtlIGhpZ2hsaWdodCBtb3JlIHNwZWNpZmljIgorbXNnc3RyICLorqnpq5jkuq7mmL7npLrmm7TmnInpkojlr7nmgKciCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTYwCittc2dpZCAiTWFrZSBoaWdobGlnaHQgbGVzcyBzcGVjaWZpYyIKK21zZ3N0ciAi6K6p6auY5Lqu5pi+56S65pu05rKh5pyJ6ZKI5a+55oCnIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2MQorbXNnaWQgIlNlYXJjaCBmb3IgYSBwYWNrYWdlIHdob3NlIG5hbWUgY29udGFpbnMgYSBzdHJpbmciCittc2dzdHIgIuaQnOe0oui9r+S7tuWMheWQjeWtl+WQq+acieeJueWumuWtl+espuS4sueahOi9r+S7tuWMhSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjIKK21zZ2lkICJSZXBlYXQgbGFzdCBzZWFyY2guIgorbXNnc3RyICLph43lpI3kuIrmrKHnmoTmkJzntKLjgIIiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTYzCittc2dpZCAiU3dhcCBzb3J0IG9yZGVyIHByaW9yaXR5L3NlY3Rpb24iCittc2dzdHIgIuiwg+aVtOaOkuW6j+eahOS+neaNriAtIOS8mOWFiOe6py/miYDlsZ7lpKfnsbsiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY0Cittc2dpZCAiUXVpdCwgY29uZmlybWluZywgYW5kIGNoZWNraW5nIGRlcGVuZGVuY2llcyIKK21zZ3N0ciAi6YCA5Ye677yM5bm256Gu6K6k5pON5L2c6ICM5LiU5a+55L6d6LWW6Zeu6aKY6L+b6KGM5aSN5p+lIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2NQorbXNnaWQgIlF1aXQsIGNvbmZpcm1pbmcgd2l0aG91dCBjaGVjayIKK21zZ3N0ciAi6YCA5Ye677yM5bm256Gu6K6k5pON5L2c6ICM5LiU5LiN5YaN5qOA5p+lIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2NgorbXNnaWQgIlF1aXQsIHJlamVjdGluZyBjb25mbGljdC9kZXBlbmRlbmN5IHN1Z2dlc3Rpb25zIgorbXNnc3RyICLpgIDlh7rvvIzlubbmi5Lnu53mnInlhbPlhrLnqoHlkozkvp3otZbpl67popjnmoTlu7rorq4iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY3Cittc2dpZCAiQWJvcnQgLSBxdWl0IHdpdGhvdXQgbWFraW5nIGNoYW5nZXMiCittc2dzdHIgIuS4reatouaTjeS9nCAtIOS4jeS9nOS7u+S9leabtOaUueW5tumAgOWHuiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjgKK21zZ2lkICJSZXZlcnQgdG8gb2xkIHN0YXRlIGZvciBhbGwgcGFja2FnZXMiCittc2dzdHIgIuaKiuaJgOaciei9r+S7tuWMheeahOeKtuaAgeaBouWkjeWIsOS/ruaUueWJjSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjkKK21zZ2lkICJSZXZlcnQgdG8gc3VnZ2VzdGVkIHN0YXRlIGZvciBhbGwgcGFja2FnZXMiCittc2dzdHIgIuaKiuaJgOaciei9r+S7tuWMheeahOeKtuaAgeaBouWkjeWIsOW7uuiuruWAvCIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNzAKK21zZ2lkICJSZXZlcnQgdG8gZGlyZWN0bHkgcmVxdWVzdGVkIHN0YXRlIGZvciBhbGwgcGFja2FnZXMiCittc2dzdHIgIuaKiuaJgOaciei9r+S7tuWMheeahOeKtuaAgeaBouWkjeWIsOaJgOimgeaxgueahOWAvCIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNzEKKyMsIGZ1enp5Cittc2dpZCAiUmV2ZXJ0IHRvIGN1cnJlbnRseSBpbnN0YWxsZWQgc3RhdGUgZm9yIGFsbCBwYWNrYWdlcyIKK21zZ3N0ciAi5oqK5omA5pyJ6L2v5Lu25YyF55qE54q25oCB5oGi5aSN5Yiw5omA6KaB5rGC55qE5YC8IgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE3NAorbXNnaWQgIlNlbGVjdCBjdXJyZW50bHktaGlnaGxpZ2h0ZWQgYWNjZXNzIG1ldGhvZCIKK21zZ3N0ciAi6YCJ5Lit5b2T5YmN6auY5Lqu5pi+56S655qE5a6J6KOF5omL5q61IgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE3NQorbXNnaWQgIlF1aXQgd2l0aG91dCBjaGFuZ2luZyBzZWxlY3RlZCBhY2Nlc3MgbWV0aG9kIgorbXNnc3RyICLpgIDlh7rnqIvluo/vvIzogIzkuJTkuI3kv67mlLnmiYDpgInnmoTlronoo4XmiYvmrrUiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MjkKK21zZ2lkICJLZXlzdHJva2VzIgorbXNnc3RyICLmjInplK7mk43kvZwiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MjkKKyMsIGZ1enp5Cittc2dpZCAiIgorIk1vdGlvbiBrZXlzOiBOZXh0L1ByZXZpb3VzLCBUb3AvRW5kLCBVcC9Eb3duLCBCYWNrd2FyZHMvRm9yd2FyZHM6XG4iCisiICBqLCBEb3duLWFycm93ICAgICAgICAgaywgVXAtYXJyb3cgICAgICAgICAgICAgbW92ZSBoaWdobGlnaHRcbiIKKyIgIE4sIFBhZ2UtZG93biwgU3BhY2UgICBQLCBQYWdlLXVwLCBCYWNrc3BhY2UgICBzY3JvbGwgbGlzdCBieSAxIHBhZ2VcbiIKKyIgIF5uICAgICAgICAgICAgICAgICAgICBecCAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgbGlzdCBieSAxIGxpbmVcbiIKKyIgIHQsIEhvbWUgICAgICAgICAgICAgICBlLCBFbmQgICAgICAgICAgICAgICAgICBqdW1wIHRvIHRvcC9lbmQgb2YgbGlzdFxuIgorIiAgdSAgICAgICAgICAgICAgICAgICAgIGQgICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIGJ5IDEgcGFnZVxuIgorIiAgXnUgICAgICAgICAgICAgICAgICAgIF5kICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIGJ5IDEgbGluZVxuIgorIiAgQiwgTGVmdC1hcnJvdyAgICAgICAgIEYsIFJpZ2h0LWFycm93ICAgICAgICAgIHBhbiBkaXNwbGF5IGJ5IDEvMyBzY3JlZW5cbiIKKyIgIF5iICAgICAgICAgICAgICAgICAgICBeZiAgICAgICAgICAgICAgICAgICAgICBwYW4gZGlzcGxheSBieSAxIGNoYXJhY3RlclxuIgorIlxuIgorIk1hcmsgcGFja2FnZXMgZm9yIGxhdGVyIHByb2Nlc3Npbmc6XG4iCisiICssIEluc2VydCAgaW5zdGFsbCBvciB1cGdyYWRlICAgICAgPSwgSCAgaG9sZCBpbiBwcmVzZW50IHN0YXRlXG4iCisiIC0sIERlbGV0ZSAgcmVtb3ZlICAgICAgICAgICAgICAgICAgOiwgRyAgdW5ob2xkOiB1cGdyYWRlIG9yIGxlYXZlICIKKyJ1bmluc3RhbGxlZFxuIgorIiBfICAgICAgICAgIHJlbW92ZSAmIHB1cmdlIGNvbmZpZ1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1pc2NlbGxhbmVvdXM6XG4iCisiUXVpdCwgZXhpdCwgb3ZlcndyaXRlIChub3RlIGNhcGl0YWxzISk6ICAgICAgID8sIEYxIHJlcXVlc3QgaGVscCAoYWxzbyAiCisiSGVscClcbiIKKyIgUmV0dXJuICBDb25maXJtLCBxdWl0IChjaGVjayBkZXBlbmRlbmNpZXMpICAgaSwgSSAgdG9nZ2xlL2N5Y2xlIGluZm8gIgorImRpc3BsYXlzXG4iCisiICAgUSAgICAgQ29uZmlybSwgcXVpdCAob3ZlcnJpZGUgZGVwLnMpICAgICAgIG8sIE8gIGN5Y2xlIHRocm91Z2ggc29ydCAiCisib3B0aW9uc1xuIgorIiBYLCBFc2MgIGVYaXQsIGFiYW5kb25pbmcgYW55IGNoYW5nZXMgbWFkZSAgICB2LCBWICBjaGFuZ2Ugc3RhdHVzIGRpc3BsYXkgIgorIm9wdHNcbiIKKyIgICBSICAgICBSZXZlcnQgdG8gc3RhdGUgYmVmb3JlIHRoaXMgbGlzdCAgICAgIF5sICAgcmVkcmF3IGRpc3BsYXlcbiIKKyIgICBVICAgICBzZXQgYWxsIHRvIHNVZ2dlc3RlZCBzdGF0ZSAgICAgICAgICAgICAvICAgc2VhcmNoIChSZXR1cm4gdG8gIgorImNhbmNlbClcbiIKKyIgICBEICAgICBzZXQgYWxsIHRvIERpcmVjdGx5IHJlcXVlc3RlZCBzdGF0ZSAgbiwgXFwgIHJlcGVhdCBsYXN0IHNlYXJjaFxuIgorbXNnc3RyICIiCisi56e75Yqo5oyJ6ZSu77ya5LiL5LiA5LiqL+WJjeS4gOS4qu+8jOmhtuerry/lupXnq6/vvIzkuIrnp7sv5LiL56e777yM5ZCO56e7L+WJjeenu++8mlxuIgorIiAgbu+8jOS4i+eureWktCAgICAgICAgICAgICBw77yM5LiK566t5aS0ICAgICAgICAgICAgICAg56e75Yqo6auY5Lqu5omA5Zyo55qE5p2h55uuXG4iCisiICBO77yMUGFnZS1kb3du77yM56m65qC8ICAgIFDvvIxQYWdlLXVw77yMQmFja3NwYWNlICAg6K6p5YiX6KGo5rua5Yqo5LiA6aG1XG4iCisiICBebiAgICAgICAgICAgICAgICAgICAgXnAgICAgICAgICAgICAgICAgICAgICAg6K6p5YiX6KGo5rua5Yqo5LiA6KGMXG4iCisiICB077yMSG9tZSAgICAgICAgICAgICAgIGXvvIxFbmQgICAgICAgICAgICAgICAgICDot7PliLDliJfooajnmoTpobbnq68v5bqV56uvXG4iCisiICB1ICAgICAgICAgICAgICAgICAgICAgZCAgICAgICAgICAgICAgICAgICAgICAg6K6p55u45YWz5L+h5oGv5rua5Yqo5LiA6aG1XG4iCisiICBedSAgICAgICAgICAgICAgICAgICAgXmQgICAgICAgICAgICAgICAgICAgICAg6K6p55u45YWz5L+h5oGv5rua5Yqo5LiA6KGMXG4iCisiICBC77yM5bem566t5aS0ICAgICAgICAgICAgIEbvvIzlj7Pnrq3lpLQgICAgICAgICAgICAgICDorqnmmL7npLrlhoXlrrnlt6blj7PlubPnp7sgMS8zIOWxj+W5leWuvSIKKyLluqZcbiIKKyIgIF5iICAgICAgICAgICAgICAgICAgICBeZiAgICAgICAgICAgICAgICAgICAgICDorqnmmL7npLrlhoXlrrnlt6blj7PlubPnp7vkuIDkuKrlrZfnrKblrr0iCisi5bqmXG4iCisiXG4iCisi5Li66L2v5Lu25YyF5L2c5LiK5qCH6K6w77yM5b6F5LmL5ZCO5YaN5L2c5aSE55CG77yaXG4iCisiICvvvIxJbnNlcnQgICDlronoo4XmiJbogIXljYfnuqcgICAgICAgICAgID3vvIxIICDku6Tlhbbkv53mjIHlvZPliY3nirbmgIFcbiIKKyIgLSDvvIxEZWxldGUgIOWNuOi9vSAgICAgICAgICAgICAgICAgICA6LCBHICDlj5bmtojkv53mjIHvvJrljYfnuqfmiJbogIXku43nhLbkuI3lronoo4VcbiIKKyIgXyAgICAgICAgICAg5Yig6Zmk5bm25riF6Zmk6YWN572uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg5YW25a6D77yaXG4iCisi6YCA5Ye677yM5pS55Yqo54q25oCBKOazqOaEj++8jOmDveaYr+Wkp+WGme+8gSnvvJogICAgICAgICAgICA/LCBGMSAgICAg6K+35rGC5biu5YqpXG4iCisiICDlm57ovaYgICAg56Gu6K6k5bm26YCA5Ye6KOWkjeafpeS+nei1lumXrumimCkgICAgICAgICAgICBpLCBJICAgICAg5YiH5o2i5oiW5rua5Yqo55u45YWz5L+h5oGv55qEIgorIuaYvuekulxuIgorIiAgIFEgICAgIOehruiupOW5tumAgOWHuijlv73nlaXkvp3otZbpl67popgpICAgICAgICAgICAgIG8sIE8gICAgICDmu5rliqjmjpLluo/nmoTlkITkuKrpgInpoblcbiIKKyIgWCwgRXNjICDpgIDlh7rnqIvluo/vvIzmiorkuYvliY3nmoTmlLnliqjkvZzlup8gICAgICAgICAgIHYsIFYgICAgICDkv67mlLnnirbmgIHmmL7npLrnmoTpgInpoblcbiIKKyIgICBSICAgICDmiormiYDmnInova/ku7bljIXnmoTnirbmgIHmgaLlpI3liLDkv67mlLnliY0gICAgICAgXmwgICAgICAgIOmHjeeUu+Wxj+W5lVxuIgorIiAgIFUgICAgIOaKiuaJgOaciei9r+S7tuWMheeahOeKtuaAgeaUueaIkOW7uuiuruWAvCAgICAgICAgIC8gICAgICAgICDmkJzntKIgKOeUqOWbnui9puWPlua2iOaQnCIKKyLntKIpXG4iCisiICAgRCAgICAg5oqK5omA5pyJ6L2v5Lu25YyF55qE54q25oCB5pS55oiQ5Yiw5omA6KaB5rGC55qE5YC8ICAgXFwgICAgICAgIOmHjeWkjeS4iuasoeeahOaQnOe0olxuIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjU1Cittc2dpZCAiSW50cm9kdWN0aW9uIHRvIHBhY2thZ2Ugc2VsZWN0aW9ucyIKK21zZ3N0ciAi6L2v5Lu25YyF6Ieq6YCJ55WM6Z2i566A5LuLIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjU1Cittc2dpZCAiIgorIldlbGNvbWUgdG8gZHNlbGVjdCdzIG1haW4gcGFja2FnZSBsaXN0aW5nLlxuIgorIlxuIgorIllvdSB3aWxsIGJlIHByZXNlbnRlZCB3aXRoIGEgbGlzdCBvZiBwYWNrYWdlcyB3aGljaCBhcmUgaW5zdGFsbGVkIG9yICIKKyJhdmFpbGFibGVcbiIKKyJmb3IgaW5zdGFsbGF0aW9uLiAgWW91IGNhbiBuYXZpZ2F0ZSBhcm91bmQgdGhlIGxpc3QgdXNpbmcgdGhlIGN1cnNvciBrZXlzLFxuIgorIm1hcmsgcGFja2FnZXMgZm9yIGluc3RhbGxhdGlvbiAodXNpbmcgYCsnKSBvciBkZWluc3RhbGxhdGlvbiAodXNpbmcgYC0nKS5cbiIKKyJQYWNrYWdlcyBjYW4gYmUgbWFya2VkIGVpdGhlciBzaW5nbHkgb3IgaW4gZ3JvdXBzOyBpbml0aWFsbHkgeW91IHdpbGwgc2VlICIKKyJ0aGF0XG4iCisidGhlIGxpbmUgYEFsbCBwYWNrYWdlcycgaXMgc2VsZWN0ZWQuICBgKycsIGAtJyBhbmQgc28gb24gd2lsbCBhZmZlY3QgYWxsICIKKyJ0aGVcbiIKKyJwYWNrYWdlcyBkZXNjcmliZWQgYnkgdGhlIGhpZ2hsaWdodGVkIGxpbmUuXG4iCisiXG4iCisiU29tZSBvZiB5b3VyIGNob2ljZXMgd2lsbCBjYXVzZSBjb25mbGljdHMgb3IgZGVwZW5kZW5jeSBwcm9ibGVtczsgeW91IHdpbGwgIgorImJlXG4iCisiZ2l2ZW4gYSBzdWItbGlzdCBvZiB0aGUgcmVsZXZhbnQgcGFja2FnZXMsIHNvIHRoYXQgeW91IGNhbiBzb2x2ZSB0aGUgIgorInByb2JsZW1zLlxuIgorIlxuIgorIllvdSBzaG91bGQgcmVhZCB0aGUgbGlzdCBvZiBrZXlzIGFuZCB0aGUgZXhwbGFuYXRpb25zIG9mIHRoZSBkaXNwbGF5LlxuIgorIk11Y2ggb24tbGluZSBoZWxwIGlzIGF2YWlsYWJsZSwgcGxlYXNlIG1ha2UgdXNlIG9mIGl0IC0gcHJlc3MgYD8nIGF0XG4iCisiYW55IHRpbWUgZm9yIGhlbHAuXG4iCisiXG4iCisiV2hlbiB5b3UgaGF2ZSBmaW5pc2hlZCBzZWxlY3RpbmcgcGFja2FnZXMsIHByZXNzIDxlbnRlcj4gdG8gY29uZmlybSAiCisiY2hhbmdlcyxcbiIKKyJvciBgWCcgdG8gcXVpdCB3aXRob3V0IHNhdmluZyBjaGFuZ2VzLiBBIGZpbmFsIGNoZWNrIG9uIGNvbmZsaWN0cyBhbmRcbiIKKyJkZXBlbmRlbmNpZXMgd2lsbCBiZSBkb25lIC0gaGVyZSB0b28geW91IG1heSBzZWUgYSBzdWJsaXN0LlxuIgorIlxuIgorIlByZXNzIDxzcGFjZT4gdG8gbGVhdmUgaGVscCBhbmQgZW50ZXIgdGhlIGxpc3Qgbm93LlxuIgorbXNnc3RyICIiCisi5qyi6L+O5p2l5YiwIGRzZWxlY3Qg55qE6L2v5Lu25YyF5Li75YiX6KGo55WM6Z2i44CCXG4iCisiXG4iCisi5bGV546w5Zyo5oKo6Z2i5YmN55qE5piv5bey57uP5a6J6KOF55qE5oiW5Y+v5Lul5a6J6KOF55qE6L2v5Lu25YyF5YiX6KGo44CCXG4iCisi5oKo6Iul6KaB5oOz5a6J6KOF55qE6K+d77yM5Y+v5Lul5L2/55So5pa55ZCR6ZSu5Zyo6L+Z5Liq5YiX6KGo5Lit5rWP6KeI77yMXG4iCisi5Li66KaB5a6J6KOF55qE6L2v5Lu25YyF5L2c5LiK6K6w5Y+3KOeUqOKAnCvigJ0p77yM5Lmf5Y+v5Lul5Li65biM5pyb5Y246L29XG4iCisi55qE6L2v5Lu25YyF5L2c6K6w5Y+3KOeUqOKAnC3igJ0p44CCXG4iCisi5L2c6K6w5Y+35pe277yM5LiN5LuF5Y+v5Lul5a+55Y2V5Liq6L2v5Lu25YyF5L2c6K6w5Y+377yM6L+Y5Y+v5Lul5Li65oiQ57uEXG4iCisi55qE6L2v5Lu25YyF5L2c6K6w5Y+344CC5Yia5byA5aeL5pe25oKo5Lya55yL5Yiw4oCc5omA5pyJ6L2v5Lu25YyF4oCd5LiA6KGM6KKrXG4iCisi6YCJ5Lit5LqG77yM6YKj5LmI55So4oCcK+KAneWSjOKAnC3igJ3nrYnplK7lsLHlj6/ku6Xmk43mjqfooqvpq5jkuq7mmL7npLrnmoTooYxcbiIKKyLmiYDmjIfku6PnmoTmiYDmnInova/ku7bljIXjgIJcbiIKKyJcbiIKKyLmgqjkvZznmoTkuIDkupvpgInmi6nlj6/og73kvJrlr7zoh7Tova/ku7bljIXpl7Tlh7rnjrDkuIDkupvnmoTlhrLnqoHmiJbkvp3otZZcbiIKKyLpl67popjvvIzov5nml7bnqIvluo/kvJrlkJHmgqjmj5DkuqTkuIDku73nm7jlhbPova/ku7bnmoTlrZDliJfooajvvIzov5nmoLfvvIxcbiIKKyLmgqjlsLHog73op6PlhrPor6Xpl67popjjgIJcbiIKKyJcbiIKKyLmgqjlupTlvZPnnIvnnIvmjInplK7nmoTliJfooajvvIzku6Xlj4rmnInlhbPlsY/luZXkuIrmmL7npLrkv6Hmga/nmoTor7TmmI7jgIJcbiIKKyLov5jmnInorrjlpJrlnKjnur/nmoTluK7liqnmlofmoaPvvIzlj6ropoHlnKjpnIDopoHluK7liqnnmoTml7blgJnmkYHigJw/4oCdXG4iCisi5bCx5Y+v6LCD6ZiF5a6D5Lus44CCXG4iCisiXG4iCisi5LiA5pem5oKo6YCJ5a6M6L2v5Lu25YyF77yM6K+35pGBIDzlm57ovaY+IOmUruadpeehruiupOWImuaJjeeahOS/ruaUue+8jFxuIgorIuaIluiAheeUqOKAnFjigJ3pgIDlh7rkuJTkuI3kv53lrZjkv67mlLnlhoXlrrnjgILlnKjov5nml7bvvIznqIvluo/kvJrmnIDlkI5cbiIKKyLkvZzkuIDmrKHlhrLnqoHlkozkvp3otZbmgKfmo4Dmn6XigKbigKblr7nkuobvvIzmgqjlnKjov5nph4zlj6/og73ov5jkvJrnnItcbiIKKyLkuIDmrKHnm7jlhbPova/ku7bnmoTlrZDliJfooajjgIJcbiIKKyJcbiIKKyLnjrDlnKjmgqjlj6/ku6XpgJrov4fmkYEgPOepuuagvD4g6ZSu56a75byA5pys5biu5Yqp77yM6L+b5YWl5YiX6KGo55WM6Z2i5LqG44CCXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6ODAKK21zZ2lkICJJbnRyb2R1Y3Rpb24gdG8gcmVhZC1vbmx5IHBhY2thZ2UgbGlzdCBicm93c2VyIgorbXNnc3RyICLlj6ror7vova/ku7bljIXliJfooajmtY/op4jnlYzpnaLnroDku4siCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6ODAKK21zZ2lkICIiCisiV2VsY29tZSB0byBkc2VsZWN0J3MgbWFpbiBwYWNrYWdlIGxpc3RpbmcuXG4iCisiXG4iCisiWW91IHdpbGwgYmUgcHJlc2VudGVkIHdpdGggYSBsaXN0IG9mIHBhY2thZ2VzIHdoaWNoIGFyZSBpbnN0YWxsZWQgb3IgIgorImF2YWlsYWJsZVxuIgorImZvciBpbnN0YWxsYXRpb24uICBTaW5jZSB5b3UgZG8gbm90IGhhdmUgdGhlIHByaXZpbGVnZSBuZWNlc3NhcnkgdG8gdXBkYXRlXG4iCisicGFja2FnZSBzdGF0ZXMsIHlvdSBhcmUgaW4gYSByZWFkLW9ubHkgbW9kZS4gIFlvdSBjYW4gbmF2aWdhdGUgYXJvdW5kIHRoZVxuIgorImxpc3QgdXNpbmcgdGhlIGN1cnNvciBrZXlzIChwbGVhc2Ugc2VlIHRoZSBgS2V5c3Ryb2tlcycgaGVscCBzY3JlZW4pLCAiCisib2JzZXJ2ZVxuIgorInRoZSBzdGF0dXMgb2YgdGhlIHBhY2thZ2VzIGFuZCByZWFkIGluZm9ybWF0aW9uIGFib3V0IHRoZW0uXG4iCisiXG4iCisiWW91IHNob3VsZCByZWFkIHRoZSBsaXN0IG9mIGtleXMgYW5kIHRoZSBleHBsYW5hdGlvbnMgb2YgdGhlIGRpc3BsYXkuXG4iCisiTXVjaCBvbi1saW5lIGhlbHAgaXMgYXZhaWxhYmxlLCBwbGVhc2UgbWFrZSB1c2Ugb2YgaXQgLSBwcmVzcyBgPycgYXRcbiIKKyJhbnkgdGltZSBmb3IgaGVscC5cbiIKKyJcbiIKKyJXaGVuIHlvdSBoYXZlIGZpbmlzaGVkIGJyb3dzaW5nLCBwcmVzcyBgUScgb3IgPGVudGVyPiB0byBxdWl0LlxuIgorIlxuIgorIlByZXNzIDxzcGFjZT4gdG8gbGVhdmUgaGVscCBhbmQgZW50ZXIgdGhlIGxpc3Qgbm93LlxuIgorbXNnc3RyICIiCisi5qyi6L+O5p2l5YiwIGRzZWxlY3Qg55qE6L2v5Lu25YyF5Li75YiX6KGo55WM6Z2i44CCXG4iCisiXG4iCisi5bGV546w5Zyo5oKo6Z2i5YmN55qE5piv5bey57uP5a6J6KOF55qE5oiW5Y+v5Lul5a6J6KOF55qE6L2v5Lu25YyF5YiX6KGo44CCXG4iCisi55Sx5LqO5oKo5rKh5pyJ5p2D6ZmQ5L+u5pS56L2v5Lu25YyF55qE54q25oCB77yM5bCx5Y+q6IO95Lul5Y+q6K+75qih5byP5pONXG4iCisi5L2c5LqG44CC5oKo5Y+v5Lul5L2/55So5pa55ZCR6ZSu5Zyo5pys5YiX6KGo5Lit56e75YqoKOivt+WPguiAg+W4ruWKqeeVjFxuIgorIumdouS4reeahOKAnOaMiemUruaTjeS9nOKAneS4gOiKginvvIzlubbmn6XnnIvova/ku7bljIXnmoTnirbmgIHku6Xlj4rojrflvpdcbiIKKyLova/ku7bljIXnmoTnm7jlhbPkv6Hmga/jgIJcbiIKKyJcbiIKKyLmgqjlupTlvZPnnIvnnIvmjInplK7nmoTliJfooajvvIzku6Xlj4rmnInlhbPlsY/luZXkuIrmmL7npLrkv6Hmga/nmoTop6Pph4rjgIJcbiIKKyLov5jmnInorrjlpJrlnKjnur/nmoTluK7liqnmlofmoaPvvIzlj6ropoHlnKjpnIDopoHluK7liqnnmoTml7blgJnmkYHigJw/4oCdXG4iCisi5bCx5Y+v6LCD6ZiF5a6D5Lus44CCXG4iCisiXG4iCisi5oKo55yL5a6M5ZCO77yM6K+35pGB4oCcUeKAneaIluiAhSA85Zue6L2mPiDplK7mnaXpgIDlh7rova/ku7bjgIJcbiIKKyJcbiIKKyLnjrDlnKjmgqjlj6/ku6XpgJrov4fmkYEgPOepuuagvD4g6ZSu56a75byA5biu5Yqp57O757uf5bm26L+b5YWl5YiX6KGo55WM6Z2i5LqG44CCXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6OTkKK21zZ2lkICJJbnRyb2R1Y3Rpb24gdG8gY29uZmxpY3QvZGVwZW5kZW5jeSByZXNvbHV0aW9uIHN1Yi1saXN0IgorbXNnc3RyICLnlKjkuo7op6PlhrPlhrLnqoEv5L6d6LWW6Zeu6aKY55qE5a2Q5YiX6KGo55qE566A5LuLIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjk5Cittc2dpZCAiIgorIkRlcGVuZGVuY3kvY29uZmxpY3QgcmVzb2x1dGlvbiAtIGludHJvZHVjdGlvbi5cbiIKKyJcbiIKKyJPbmUgb3IgbW9yZSBvZiB5b3VyIGNob2ljZXMgaGF2ZSByYWlzZWQgYSBjb25mbGljdCBvciBkZXBlbmRlbmN5IHByb2JsZW0gLVxuIgorInNvbWUgcGFja2FnZXMgc2hvdWxkIG9ubHkgYmUgaW5zdGFsbGVkIGluIGNvbmp1bmN0aW9uIHdpdGggY2VydGFpbiBvdGhlcnMsICIKKyJhbmRcbiIKKyJzb21lIGNvbWJpbmF0aW9ucyBvZiBwYWNrYWdlcyBtYXkgbm90IGJlIGluc3RhbGxlZCB0b2dldGhlci5cbiIKKyJcbiIKKyJZb3Ugd2lsbCBzZWUgYSBzdWItbGlzdCBjb250YWluaW5nIHRoZSBwYWNrYWdlcyBpbnZvbHZlZC4gIFRoZSBib3R0b20gaGFsZiAiCisib2ZcbiIKKyJ0aGUgZGlzcGxheSBzaG93cyByZWxldmFudCBjb25mbGljdHMgYW5kIGRlcGVuZGVuY2llczsgdXNlIGBpJyB0byBjeWNsZSAiCisiYmV0d2VlblxuIgorInRoYXQsIHRoZSBwYWNrYWdlIGRlc2NyaXB0aW9ucyBhbmQgdGhlIGludGVybmFsIGNvbnRyb2wgaW5mb3JtYXRpb24uXG4iCisiXG4iCisiQSBzZXQgb2YgYHN1Z2dlc3RlZCcgcGFja2FnZXMgaGFzIGJlZW4gY2FsY3VsYXRlZCwgYW5kIHRoZSBpbml0aWFsIG1hcmtpbmdzICIKKyJpblxuIgorInRoaXMgc3ViLWxpc3QgaGF2ZSBiZWVuIHNldCB0byBtYXRjaCB0aG9zZSwgc28geW91IGNhbiBqdXN0IGhpdCBSZXR1cm4gdG9cbiIKKyJhY2NlcHQgdGhlIHN1Z2dlc3Rpb25zIGlmIHlvdSB3aXNoLiAgWW91IG1heSBhYm9ydCB0aGUgY2hhbmdlKHMpIHdoaWNoICIKKyJjYXVzZWRcbiIKKyJ0aGUgcHJvYmxlbShzKSwgYW5kIGdvIGJhY2sgdG8gdGhlIG1haW4gbGlzdCwgYnkgcHJlc3NpbmcgY2FwaXRhbCBgWCcuXG4iCisiXG4iCisiWW91IGNhbiBhbHNvIG1vdmUgYXJvdW5kIHRoZSBsaXN0IGFuZCBjaGFuZ2UgdGhlIG1hcmtpbmdzIHNvIHRoYXQgdGhleSBhcmUgIgorIm1vcmVcbiIKKyJsaWtlIHdoYXQgeW91IHdhbnQsIGFuZCB5b3UgY2FuIGByZWplY3QnIG15IHN1Z2dlc3Rpb25zIGJ5IHVzaW5nIHRoZSAiCisiY2FwaXRhbFxuIgorImBEJyBvciBgUicga2V5cyAoc2VlIHRoZSBrZXliaW5kaW5ncyBoZWxwIHNjcmVlbikuICBZb3UgY2FuIHVzZSBjYXBpdGFsIGBRJyAiCisidG9cbiIKKyJmb3JjZSBtZSB0byBhY2NlcHQgdGhlIHNpdHVhdGlvbiBjdXJyZW50bHkgZGlzcGxheWVkLCBpbiBjYXNlIHlvdSB3YW50IHRvXG4iCisib3ZlcnJpZGUgYSByZWNvbW1lbmRhdGlvbiBvciB0aGluayB0aGF0IHRoZSBwcm9ncmFtIGlzIG1pc3Rha2VuLlxuIgorIlxuIgorIlByZXNzIDxzcGFjZT4gdG8gbGVhdmUgaGVscCBhbmQgZW50ZXIgdGhlIHN1Yi1saXN0OyByZW1lbWJlcjogcHJlc3MgYD8nIGZvciAiCisiaGVscC5cbiIKK21zZ3N0ciAiIgorIuS+nei1li/lhrLnqoHpl67popjnmoTop6PlhrPlip7ms5UgLSDnroDku4vjgIJcbiIKKyJcbiIKKyLmgqjmiYDkvZznmoTpgInmi6nkuK3mnInkupvlvJXotbfkuoblhrLnqoHmiJbkvp3otZbpl67popjvvIzljbPvvIxcbiIKKyLmnInkupvova/ku7bljIXlv4XpobvkuI7mn5DkupvlhbblroPova/ku7bljIXkuIDlkIzlronoo4XvvIxcbiIKKyLogIzmnInnmoTova/ku7bljIXnmoTnibnlrprnu4TlkIjmmK/kuI3og73lkIzml7blronoo4XnmoTjgIJcbiIKKyJcbiIKKyLmgqjlsIbkvJrop4HliLDkuIDkuKrlrZDliJfooajvvIzlroPljIXlkKvkuobooqvms6Llj4rliLDnmoRcbiIKKyLova/ku7bljIXjgILlsY/luZXmmL7npLrnmoTkuIvljYrpg6jliIbkvJrlkYror4nmgqjnm7jlhbNcbiIKKyLnmoTlhrLnqoHlkozkvp3otZblhbPns7vjgILor7fkvb/nlKjigJxp4oCd5p2l5rWP6KeI6L2v5Lu25YyFXG4iCisi55qE566A5LuL5ZKM5YaF6YOo5o6n5Yi25L+h5oGv44CCXG4iCisiXG4iCisi6L+Z6YeM5bey57uP5YiG5p6Q5bm24oCc5bu66K6u4oCd5LqG5LiA57uE6L2v5Lu25YyF77yM5bm25LiUXG4iCisi5pys5a2Q5YiX6KGo5Lit55qE6L2v5Lu25YyF55qE5Yid5aeL54q25oCB6YO95bey57uP6KKr5qCH6K6w5Li6XG4iCisi5a+55bqU55qE4oCc5bu66K6u4oCd54q25oCB44CC6L+Z5qC377yM5aaC5p6c5oKo5oS/5oSP55qE6K+d77yMXG4iCisi5Y+q6ZyA5pGB5LiA5LiL5Zue6L2m5p2l5o6l5Y+X6K+l5bu66K6u44CC5oKo5Lmf5Y+v5Lul5pGB5aSn5YaZXG4iCisi55qE4oCcWOKAneadpeWPlua2iOi/meS4quWvvOiHtOmXrumimOeahOabtOaUue+8jOW5tuWbnuWIsOS4u1xuIgorIuWIl+ihqOeVjOmdouOAglxuIgorIlxuIgorIuaCqOS5n+WPr+S7peaMieeFp+iHquW3seeahOmcgOaxguS/ruaUueWIl+ihqOS4rei9r+S7tuWMhVxuIgorIueahOeKtuaAgeOAguWQjOaXtu+8jOaCqOS5n+WPr+S7peaRgeWkp+WGmeeahOKAnETigJ3miJbigJxS4oCdXG4iCisi6ZSuKOWPguiAg+aMiemUrue7keWumueahOW4ruWKqeeVjOmdoinvvIzmnaXigJzmi5Lnu53igJ3miJFcbiIKKyLmj5Dlh7rnmoTlu7rorq7jgILlvZPmgqjluIzmnJvlv73nlaXmiJHnmoTlu7rorq7miJbmmK/orqTkuLpcbiIKKyLmnKzova/ku7blh7rplJnml7bvvIzmgqjov5jlj6/ku6XmkYHlpKflhpnnmoTigJxR4oCd5p2l5by65Yi2XG4iCisi5oiR5o6l5Y+X5b2T5YmN5pi+56S655qE6K6+5a6a44CCXG4iCisiXG4iCisi6K+35pGBIDznqbrmoLw+IOemu+W8gOW4ruWKqeezu+e7n+W5tui/m+WFpeWtkOWIl+ihqOOAglxuIgorIuivt+iusOS9j++8mumcgOimgeW4ruWKqeaXtu+8jOaRgeKAnD/igJ3plK7jgIJcbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxMjUKK21zZ2lkICJEaXNwbGF5LCBwYXJ0IDE6IHBhY2thZ2UgbGlzdGluZyBhbmQgc3RhdHVzIGNoYXJzIgorbXNnc3RyICLmmL7npLrpg6jkvY0gMe+8mui9r+S7tuWMheWIl+ihqOWPiueKtuaAgeeugOWGmSIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxMjUKKyMsIGZ1enp5Cittc2dpZCAiIgorIlRoZSB0b3AgaGFsZiBvZiB0aGUgc2NyZWVuIHNob3dzIGEgbGlzdCBvZiBwYWNrYWdlcy4gIEZvciBlYWNoIHBhY2thZ2UgeW91ICIKKyJzZWVcbiIKKyJmb3VyIGNvbHVtbnMgZm9yIGl0cyBjdXJyZW50IHN0YXR1cyBvbiB0aGUgc3lzdGVtIGFuZCBtYXJrLiAgSW4gdGVyc2UgbW9kZSAiCisiKHVzZVxuIgorImB2JyB0byB0b2dnbGUgdmVyYm9zZSBkaXNwbGF5KSB0aGVzZSBhcmUgc2luZ2xlIGNoYXJhY3RlcnMsIGZyb20gbGVmdCB0byAiCisicmlnaHQ6XG4iCisiXG4iCisiIEVycm9yIGZsYWc6IFNwYWNlIC0gbm8gZXJyb3IgKGJ1dCBwYWNrYWdlIG1heSBiZSBpbiBicm9rZW4gc3RhdGUgLSBzZWUgIgorImJlbG93KVxuIgorIiAgICAgICAgICAgICAgYFInICAtIHNlcmlvdXMgZXJyb3IgZHVyaW5nIGluc3RhbGxhdGlvbiwgbmVlZHMgIgorInJlaW5zdGFsbGF0aW9uO1xuIgorIiBJbnN0YWxsZWQgc3RhdGU6ICAgICBTcGFjZSAgICAtIG5vdCBpbnN0YWxsZWQ7XG4iCisiICAgICAgICAgICAgICAgICAgICAgICBgKicgICAgIC0gaW5zdGFsbGVkO1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgYC0nICAgICAtIG5vdCBpbnN0YWxsZWQgYnV0IGNvbmZpZyBmaWxlcyByZW1haW47XG4iCisiICAgcGFja2FnZXMgaW4gdGhlc2UgeyBgVScgICAgIC0gdW5wYWNrZWQgYnV0IG5vdCB5ZXQgY29uZmlndXJlZDtcbiIKKyIgICBzdGF0ZXMgYXJlIG5vdCAgICB7IGBDJyAgICAgLSBoYWxmLWNvbmZpZ3VyZWQgKGFuIGVycm9yIGhhcHBlbmVkKTtcbiIKKyIgICAocXVpdGUpIHByb3Blcmx5ICB7IGBJJyAgICAgLSBoYWxmLWluc3RhbGxlZCAoYW4gZXJyb3IgaGFwcGVuZWQpO1xuIgorIiAgIGluc3RhbGxlZCAgICAgICAgIHsgYFcnLGB0JyAtIHRyaWdnZXJzIGFyZSBhd2FpdGVkIHJlc3AuIHBlbmRpbmcuXG4iCisiIE9sZCBtYXJrOiB3aGF0IHdhcyByZXF1ZXN0ZWQgZm9yIHRoaXMgcGFja2FnZSBiZWZvcmUgcHJlc2VudGluZyB0aGlzIGxpc3Q7XG4iCisiIE1hcms6IHdoYXQgaXMgcmVxdWVzdGVkIGZvciB0aGlzIHBhY2thZ2U6XG4iCisiICBgKic6IG1hcmtlZCBmb3IgaW5zdGFsbGF0aW9uIG9yIHVwZ3JhZGU7XG4iCisiICBgLSc6IG1hcmtlZCBmb3IgcmVtb3ZhbCwgYnV0IGFueSBjb25maWd1cmF0aW9uIGZpbGVzIHdpbGwgcmVtYWluO1xuIgorIiAgYD0nOiBvbiBob2xkOiBwYWNrYWdlIHdpbGwgbm90IGJlIHByb2Nlc3NlZCBhdCBhbGw7XG4iCisiICBgXyc6IG1hcmtlZCBmb3IgcHVyZ2UgY29tcGxldGVseSAtIGV2ZW4gcmVtb3ZlIGNvbmZpZ3VyYXRpb247XG4iCisiICBgbic6IHBhY2thZ2UgaXMgbmV3IGFuZCBoYXMgeWV0IHRvIGJlIG1hcmtlZCBmb3IgaW5zdGFsbC9yZW1vdmUvJmMuXG4iCisiXG4iCisiQWxzbyBkaXNwbGF5ZWQgYXJlIGVhY2ggcGFja2FnZSdzIFByaW9yaXR5LCBTZWN0aW9uLCBuYW1lLCBpbnN0YWxsZWQgYW5kXG4iCisiYXZhaWxhYmxlIHZlcnNpb24gbnVtYmVycyAoc2hpZnQtViB0byBkaXNwbGF5L2hpZGUpIGFuZCBzdW1tYXJ5ICIKKyJkZXNjcmlwdGlvbi5cbiIKK21zZ3N0ciAiIgorIuWxj+W5leeahOS4iuWNiumDqOWIhuaYvuekuueahOaYr+i9r+S7tuWMheeahOWIl+ihqOOAguWvueavj+S4qui9r+S7tuWMheadpeivtO+8jFxuIgorIumDveacieWbm+WIl+S7o+WPt+ihqOekuuivpei9r+S7tuWMheWcqOezu+e7n+S4reeahOeKtuaAgeS7peWPiueOsOWcqOiiq+S9nOeahOagh+iusOOAglxuIgorIuWcqOeugOeVpeaooeW8j+mHjCjlj6/nlKjigJx24oCd5p2l5YiH5o2i5Yiw6K+m5bC95qih5byPKeWug+S7rOmDveaYr+WNleS4queahOWtl+avje+8jFxuIgorIuS7juW3puWIsOWPs+WIhuWIq+aYr++8mlxuIgorIlxuIgorIumUmeivr+agh+W/l++8muepuueZve+8jOWNs+ayoeaciemUmeivryjkvYbmmK/ova/ku7bljIXlj6/og73mnInmlYXpmpzvvIzop4HkuIspXG4iCisiICAgICAgICAgICAgICAg4oCcUuKAne+8jCAg5Y2z5Zyo5a6J6KOF6L+H56iL6YGt6YGH5LqG5Lil6YeN6ZSZ6K+v77yM6ZyA6KaB6YeN5paw5a6J6KOF77ybXG4iCisi5a6J6KOF54q25oCB77ya56m655m977yM5Y2z5rKh5pyJ5a6J6KOF77ybXG4iCisiICAgICAgICAgICAgICAg4oCcKuKAne+8jCAg5Y2z5bey5a6J6KOF77ybXG4iCisiICAgICAgICAgICAgICAg4oCcLeKAne+8jCAg5Y2z5rKh5pyJ5a6J6KOF77yM5L2G5piv5q6L55WZ5pyJ5YW26YWN572u5paH5Lu277ybXG4iCisiICAgICDlpITkuo7ov5nkupvnirbmgIEgICAgeyDigJxV4oCd77yM5Y2z5bey6Kej5Y6L57yp5L2G6L+Y5pyq6L+b6KGM6YWN572u77ybXG4iCisiICAgICAgICAg55qE6L2v5Lu25YyFICAgIHsg4oCcQ+KAne+8jOWNs+S4jeWujOWFqOmFjee9rijlhbbpl7TmnInplJnor6/lj5HnlJ8p77ybXG4iCisiICAgICDpg73mmK/mnInmlYXpmpznmoQgICAgeyDigJxJ4oCd77yM5Y2z6YOo5YiG5a6J6KOFKOWFtumXtOaciemUmeivr+WPkeeUnynjgIJcbiIKKyLljp/mnInmoIforrDvvJrliJfooajmmL7npLrlh7rmnaXkuYvliY3ova/ku7bljIXlsLHooqvopoHmsYLorr7nva7nmoTmiJDnirbmgIHvvJtcbiIKKyLlvZPliY3moIforrDvvJrnjrDlnKjova/ku7bljIXooqvopoHmsYLorr7nva7nmoTmiJDnirbmgIHvvJpcbiIKKyIgIOKAnCrigJ3vvJrlsIblhbbmoIforrDkuLrlronoo4XmiJbljYfnuqfvvJtcbiIKKyIgIOKAnC3igJ3vvJrlsIblhbbmoIforrDkuLrliKDpmaTvvIzkvYbmmK/lsIbkv53nlZnlroPnmoTphY3nva7mlofku7bvvJtcbiIKKyIgIOKAnD3igJ3vvJrnu7TmjIHljp/nirbvvJrova/ku7bljIXlsIbkuI3liqjliIbmr6vvvJtcbiIKKyIgIOKAnF/igJ3vvJrlsIblhbbmoIforrDkuLrlrozlhajmuIXpmaTvvIzov57lkIzphY3nva7kuIDotbfliKDpmaTvvJtcbiIKKyIgIOKAnG7igJ3vvJrova/ku7bljIXmmK/mlrDnmoTvvIzlsJrmnKrmoIforrDov4fjgIJcbiIKKyJcbiIKKyLlj6blpJbnlYzpnaLkuIrov5jmmL7npLrmnInova/ku7bljIXnmoTkvJjlhYjnuqfjgIHmiYDlsZ7lpKfnsbvjgIHlkI3np7DjgIHlt7Llronoo4VcbiIKKyLnmoTniYjmnKzlj7flkozlvZPliY3lj6/nlKjnmoTniYjmnKzlj7fvvIjkvb/nlKggc2hpZnQtdiDlj6/ku6XlvIDlkK/miJblhbPpl63lhbZcbiIKKyLmmL7npLop77yM5Lul5Y+K566A6KaB55qE5LuL57uN44CCXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTUyCittc2dpZCAiRGlzcGxheSwgcGFydCAyOiBsaXN0IGhpZ2hsaWdodDsgaW5mb3JtYXRpb24gZGlzcGxheSIKK21zZ3N0ciAi5pi+56S66YOo5L2NIDLvvJrliJfooajpq5jkuq7pg6jliIbvvJvnm7jlhbPkv6Hmga/nmoTmmL7npLoiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTUyCittc2dpZCAiIgorIiogSGlnaGxpZ2h0OiBPbmUgbGluZSBpbiB0aGUgcGFja2FnZSBsaXN0IHdpbGwgYmUgaGlnaGxpZ2h0ZWQuICBJdCAiCisiaW5kaWNhdGVzXG4iCisiICB3aGljaCBwYWNrYWdlKHMpIHdpbGwgYmUgYWZmZWN0ZWQgYnkgcHJlc3NlcyBvZiBgKycsIGAtJyBhbmQgYF8nLlxuIgorIlxuIgorIiogVGhlIGRpdmlkaW5nIGxpbmUgaW4gdGhlIG1pZGRsZSBvZiB0aGUgc2NyZWVuIHNob3dzIGEgYnJpZWYgZXhwbGFuYXRpb24gIgorIm9mXG4iCisiICB0aGUgc3RhdHVzIG9mIHRoZSBjdXJyZW50bHktaGlnaGxpZ2h0ZWQgcGFja2FnZSwgb3IgYSBkZXNjcmlwdGlvbiBvZiAiCisid2hpY2hcbiIKKyIgIGdyb3VwIGlzIGhpZ2hsaWdodGVkIGlmIGEgZ3JvdXAgbGluZSBpcy4gIElmIHlvdSBkb24ndCB1bmRlcnN0YW5kIHRoZVxuIgorIiAgbWVhbmluZyBvZiBzb21lIG9mIHRoZSBzdGF0dXMgY2hhcmFjdGVycyBkaXNwbGF5ZWQsIGdvIHRvIHRoZSByZWxldmFudFxuIgorIiAgcGFja2FnZSBhbmQgbG9vayBhdCB0aGlzIGRpdmlkZXIgbGluZSwgb3IgdXNlIHRoZSBgdicga2V5IGZvciBhIHZlcmJvc2VcbiIKKyIgIGRpc3BsYXkgKHByZXNzIGB2JyBhZ2FpbiB0byBnbyBiYWNrIHRvIHRoZSB0ZXJzZSBkaXNwbGF5KS5cbiIKKyJcbiIKKyIqIFRoZSBib3R0b20gb2YgdGhlIHNjcmVlbiBzaG93cyBtb3JlIGluZm9ybWF0aW9uIGFib3V0IHRoZVxuIgorIiAgY3VycmVudGx5LWhpZ2hsaWdodGVkIHBhY2thZ2UgKGlmIHRoZXJlIGlzIG9ubHkgb25lKS5cbiIKKyJcbiIKKyIgIEl0IGNhbiBzaG93IGFuIGV4dGVuZGVkIGRlc2NyaXB0aW9uIG9mIHRoZSBwYWNrYWdlLCB0aGUgaW50ZXJuYWwgcGFja2FnZVxuIgorIiAgY29udHJvbCBkZXRhaWxzIChlaXRoZXIgZm9yIHRoZSBpbnN0YWxsZWQgb3IgYXZhaWxhYmxlIHZlcnNpb24gb2YgdGhlXG4iCisiICBwYWNrYWdlKSwgb3IgaW5mb3JtYXRpb24gYWJvdXQgY29uZmxpY3RzIGFuZCBkZXBlbmRlbmNpZXMgaW52b2x2aW5nIHRoZVxuIgorIiAgY3VycmVudCBwYWNrYWdlIChpbiBjb25mbGljdC9kZXBlbmRlbmN5IHJlc29sdXRpb24gc3VibGlzdHMpLlxuIgorIlxuIgorIiAgVXNlIHRoZSBgaScga2V5IHRvIGN5Y2xlIHRocm91Z2ggdGhlIGRpc3BsYXlzLCBhbmQgYEknIHRvIGhpZGUgdGhlXG4iCisiICBpbmZvcm1hdGlvbiBkaXNwbGF5IG9yIGV4cGFuZCBpdCB0byB1c2UgYWxtb3N0IGFsbCBvZiB0aGUgc2NyZWVuLlxuIgorbXNnc3RyICIiCisiKiDpq5jkuq7vvJrova/ku7bljIXliJfooajkuK3ooqvpq5jkuq7mmL7npLrnmoTpgqPkuIDooYzjgILlroPmiYDlnKjnmoTooYznmoRcbiIKKyIgIOi9r+S7tuWMheWwhuS8muiiq+KAnCvigJ3jgIHigJwt4oCd5ZKM4oCcX+KAneeahOaMiemUruaTjeaOp+OAglxuIgorIlxuIgorIiog5Zyo5bGP5bmV5Lit6Ze055qE5YiG6ZqU5p2h5qaC5ous5LqG5b2T5YmN6auY5Lqu55qEKOS4gOe7hCnova/ku7bljIXnmoTnirbmgIHjgIJcbiIKKyIgIOWmguaenOaCqOS4jeS6huino+W3puS+p+eKtuaAgeS7o+WPt+eahOaEj+aAne+8jOivt+enu+WKqOWIsOebuOW6lOeahOi9r+S7tuWMhe+8jFxuIgorIiAg5YaN5p+l55yL5YiG6ZqU5p2h77yM5oiW6ICF5L2/55So4oCcduKAnemUruadpeiwg+mYhei+g+ivpue7hueahOaYvuekuijlho3mkYHkuIDmrKFcbiIKKyIgIOWwseWPr+S7peWbnuWIsOeugOeVpeeahOaYvuekuuaooeW8jynjgIJcbiIKKyJcbiIKKyIqIOWxj+W5leW6lemDqOaYvuekuueahOaYr+W9k+WJjemrmOS6rueahOi9r+S7tuWMhSjlpoLmnpzlj6rmnInkuIDkuKop55qE5pu05aSaXG4iCisiICDkv6Hmga/jgIJcbiIKKyIgIFxuIgorIiAg5a6D5Lya5pi+56S65YWz5LqO6K+l6L2v5Lu25YyF55qE6KGl5YWF5L+h5oGv44CB6L2v5Lu25YyF5YaF6YOo55qE5o6n5Yi257uG6IqCXG4iCisiICAo5LiN566h5piv5bey57uP5a6J6KOF55qE6L+Y5piv5bCa5pyq5a6J6KOF55qE54mI5pysKeOAgeiLpeaYr+S4juW9k+WJjei9r+S7tuWMhVxuIgorIiAgKOWHuueOsOWcqOWGsueqgS/kvp3otZbpl67popjop6PlhrPlip7ms5XlrZDliJfooagp5pyJ5YWz55qE5Yay56qB5ZKM5L6d6LWW6Zeu6aKY44CCXG4iCisiXG4iCisiICDmgqjlj6/ku6XnlKjigJxp4oCd6ZSu5Zyo6L+Z5Lqb5pi+56S65YaF5a655Lit5p2l5Zue5YiH5o2i77yM55So4oCcSeKAneadpeWFs+mXreebuOWFs+S/oeaBr1xuIgorIiAg55qE5pi+56S677yM5oiW6ICF5omp5aSn5a6D5Zyo5bGP5bmV5Lit5omA5Y2g55qE5bmF6Z2i55u05Yiw5Yeg5LmO5a6M5YWo5Y2g5o2u5bGP5bmV44CCXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTc2Cittc2dpZCAiSW50cm9kdWN0aW9uIHRvIG1ldGhvZCBzZWxlY3Rpb24gZGlzcGxheSIKK21zZ3N0ciAi5a6J6KOF5omL5q616YCJ5oup55WM6Z2i55qE566A5LuLIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjE3NgorbXNnaWQgIiIKKyJkc2VsZWN0IGFuZCBkcGtnIGNhbiBkbyBhdXRvbWF0aWMgaW5zdGFsbGF0aW9uLCBsb2FkaW5nIHRoZSBwYWNrYWdlIGZpbGVzIHRvICIKKyJiZVxuIgorImluc3RhbGxlZCBmcm9tIG9uZSBvZiBhIG51bWJlciBvZiBkaWZmZXJlbnQgcG9zc2libGUgcGxhY2VzLlxuIgorIlxuIgorIlRoaXMgbGlzdCBhbGxvd3MgeW91IHRvIHNlbGVjdCBvbmUgb2YgdGhlc2UgaW5zdGFsbGF0aW9uIG1ldGhvZHMuXG4iCisiXG4iCisiTW92ZSB0aGUgaGlnaGxpZ2h0IHRvIHRoZSBtZXRob2QgeW91IHdpc2ggdG8gdXNlLCBhbmQgaGl0IEVudGVyLiAgWW91IHdpbGwgIgorInRoZW5cbiIKKyJiZSBwcm9tcHRlZCBmb3IgdGhlIGluZm9ybWF0aW9uIHJlcXVpcmVkIHRvIGRvIHRoZSBpbnN0YWxsYXRpb24uXG4iCisiXG4iCisiQXMgeW91IG1vdmUgdGhlIGhpZ2hsaWdodCBhIGRlc2NyaXB0aW9uIG9mIGVhY2ggbWV0aG9kLCB3aGVyZSBhdmFpbGFibGUsIGlzXG4iCisiZGlzcGxheWVkIGluIHRoZSBib3R0b20gaGFsZiBvZiB0aGUgc2NyZWVuLlxuIgorIlxuIgorIklmIHlvdSB3aXNoIHRvIHF1aXQgd2l0aG91dCBjaGFuZ2luZyBhbnl0aGluZyB1c2UgdGhlIGB4JyBrZXkgd2hpbGUgaW4gdGhlICIKKyJsaXN0XG4iCisib2YgaW5zdGFsbGF0aW9uIG1ldGhvZHMuXG4iCisiXG4iCisiQSBmdWxsIGxpc3Qgb2Yga2V5c3Ryb2tlcyBpcyBhdmFpbGFibGUgYnkgcHJlc3NpbmcgYGsnIG5vdywgb3IgZnJvbSB0aGUgIgorImhlbHBcbiIKKyJtZW51IHJlYWNoYWJsZSBieSBwcmVzc2luZyBgPycuXG4iCittc2dzdHIgIiIKKyJkc2VsZWN0IOWSjCBkcGtnIOiDveWkn+WunueOsOiHquWKqOWMlueahOWuieijhe+8jOWug+S7rOWPr+S7peS7juWkmuS4quS4jeWQjOeahOWcsOWdgOWPluWbnlxuIgorIuimgeWuieijheeahOi9r+S7tuWMheaWh+S7tuOAglxuIgorIlxuIgorIuacrOWIl+ihqOWPr+S7peiuqeaCqOS7jui/meS6m+WuieijheaJi+auteS4remAieaLqeS4gOS4quOAglxuIgorIlxuIgorIuivt+enu+WKqOmrmOS6ruadoeWIsOaCqOW4jOacm+S9v+eUqOeahOWuieijheaJi+aute+8jOWGjeaRgeWbnui9puOAgueEtuWQjui9r+S7tuS8muaPkOekuuaCqOi+k+WFpVxuIgorIui/meenjeWuieijheaJi+auteaJgOW/hemhu+eahOS4gOS6m+ebuOWFs+S/oeaBr+OAglxuIgorIlxuIgorIuWmguaenOaCqOaDs+imgemAgOWHuueoi+W6j++8jOiAjOS4lOS4jeWBmuS7u+S9leWPmOWKqO+8jOmCo+S5iOivt+WcqOWuieijheaJi+auteWIl+ihqOeahOeVjOmdouS4rVxuIgorIuS9v+eUqOKAnHjigJ3plK7jgIJcbiIKKyJcbiIKKyLnjrDlnKjmkYHigJxr4oCd6ZSu5bCx6IO96KeB5Yiw5oyJ6ZSu5pON5L2c55qE5a6M5pW05YiX6KGo77yM5Lmf5Y+v5Lul5Zyo5biu5Yqp6I+c5Y2V5Lit5pGB4oCca+KAnemUruOAglxuIgorIuaRgeKAnD/igJ3lsLHog73lkbzlh7rluK7liqnoj5zljZXjgIJcbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxOTYKK21zZ2lkICJLZXlzdHJva2VzIGZvciBtZXRob2Qgc2VsZWN0aW9uIgorbXNnc3RyICLpgInmi6nlronoo4XmiYvmrrXnmoTmjInplK7mk43kvZwiCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTk2CisjLCBmdXp6eQorbXNnaWQgIiIKKyJNb3Rpb24ga2V5czogTmV4dC9QcmV2aW91cywgVG9wL0VuZCwgVXAvRG93biwgQmFja3dhcmRzL0ZvcndhcmRzOlxuIgorIiAgaiwgRG93bi1hcnJvdyAgICAgICAgIGssIFVwLWFycm93ICAgICAgICAgICAgIG1vdmUgaGlnaGxpZ2h0XG4iCisiICBOLCBQYWdlLWRvd24sIFNwYWNlICAgUCwgUGFnZS11cCwgQmFja3NwYWNlICAgc2Nyb2xsIGxpc3QgYnkgMSBwYWdlXG4iCisiICBebiAgICAgICAgICAgICAgICAgICAgXnAgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGxpc3QgYnkgMSBsaW5lXG4iCisiICB0LCBIb21lICAgICAgICAgICAgICAgZSwgRW5kICAgICAgICAgICAgICAgICAganVtcCB0byB0b3AvZW5kIG9mIGxpc3RcbiIKKyIgIHUgICAgICAgICAgICAgICAgICAgICBkICAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyBieSAxIHBhZ2VcbiIKKyIgIF51ICAgICAgICAgICAgICAgICAgICBeZCAgICAgICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyBieSAxIGxpbmVcbiIKKyIgIEIsIExlZnQtYXJyb3cgICAgICAgICBGLCBSaWdodC1hcnJvdyAgICAgICAgICBwYW4gZGlzcGxheSBieSAxLzMgc2NyZWVuXG4iCisiICBeYiAgICAgICAgICAgICAgICAgICAgXmYgICAgICAgICAgICAgICAgICAgICAgcGFuIGRpc3BsYXkgYnkgMSBjaGFyYWN0ZXJcbiIKKyIoVGhlc2UgYXJlIHRoZSBzYW1lIG1vdGlvbiBrZXlzIGFzIGluIHRoZSBwYWNrYWdlIGxpc3QgZGlzcGxheS4pXG4iCisiXG4iCisiUXVpdDpcbiIKKyIgUmV0dXJuLCBFbnRlciAgICBzZWxlY3QgdGhpcyBtZXRob2QgYW5kIGdvIHRvIGl0cyBjb25maWd1cmF0aW9uIGRpYWxvZ3VlXG4iCisiIHgsIFggICAgICAgICAgICAgZXhpdCB3aXRob3V0IGNoYW5naW5nIG9yIHNldHRpbmcgdXAgdGhlIGluc3RhbGxhdGlvbiAiCisibWV0aG9kXG4iCisiXG4iCisiTWlzY2VsbGFuZW91czpcbiIKKyIgID8sIEhlbHAsIEYxICAgICAgcmVxdWVzdCBoZWxwXG4iCisiIF5sICAgICAgICAgICAgICAgIHJlZHJhdyBkaXNwbGF5XG4iCisiICAvICAgICAgICAgICAgICAgIHNlYXJjaCAoanVzdCByZXR1cm4gdG8gY2FuY2VsKVxuIgorIiAgXFwgICAgICAgICAgICAgICAgcmVwZWF0IGxhc3Qgc2VhcmNoXG4iCittc2dzdHIgIiIKKyLnp7vliqjmjInplK7vvJrkuIvkuIDkuKov5YmN5LiA5Liq77yM6aG256uvL+W6leerr++8jOS4iuenuy/kuIvnp7vvvIzlkI7np7sv5YmN56e777yaXG4iCisiICBu77yM5LiL566t5aS0ICAgICAgICAgICAgIHDvvIzkuIrnrq3lpLQgICAgICAgICAgICAgICDnp7vliqjpq5jkuq7miYDlnKjnmoTmnaHnm65cbiIKKyIgIE7vvIxQYWdlLWRvd27vvIznqbrmoLwgICAgUO+8jFBhZ2UtdXDvvIxCYWNrc3BhY2UgICDorqnliJfooajmu5rliqjkuIDpobVcbiIKKyIgIF5uICAgICAgICAgICAgICAgICAgICBecCAgICAgICAgICAgICAgICAgICAgICDorqnliJfooajmu5rliqjkuIDooYxcbiIKKyIgIHTvvIxIb21lICAgICAgICAgICAgICAgZe+8jEVuZCAgICAgICAgICAgICAgICAgIOi3s+WIsOWIl+ihqOeahOmhtuerry/lupXnq69cbiIKKyIgIHUgICAgICAgICAgICAgICAgICAgICBkICAgICAgICAgICAgICAgICAgICAgICDorqnnm7jlhbPkv6Hmga/mu5rliqjkuIDpobVcbiIKKyIgIF51ICAgICAgICAgICAgICAgICAgICBeZCAgICAgICAgICAgICAgICAgICAgICDorqnnm7jlhbPkv6Hmga/mu5rliqjkuIDooYxcbiIKKyIgIELvvIzlt6bnrq3lpLQgICAgICAgICAgICAgRu+8jOWPs+eureWktCAgICAgICAgICAgICAgIOiuqeaYvuekuuWGheWuueW3puWPs+W5s+enuyAxLzMg55qE5bGP5bmVIgorIuWuveW6plxuIgorIiAgXmIgICAgICAgICAgICAgICAgICAgIF5mICAgICAgICAgICAgICAgICAgICAgIOiuqeaYvuekuuWGheWuueW3puWPs+W5s+enu+S4gOS4quWtl+espuWuvSIKKyLluqZcbiIKKyIo5Zyo6L2v5Lu25YyF5YiX6KGo55WM6Z2i5Lmf5L2/55So5ZCM5qC355qE5oyJ6ZSu6K6+572u44CCKVxuIgorIlxuIgorIumAgOWHuu+8mlxuIgorIiDlm57ovaYgICAgICAgICAgICAg6YCJ5Lit6K+l5a6J6KOF5omL5q6177yM5bm26L+b5YWl5YW26K6+572u55WM6Z2iXG4iCisiIHjvvIxYICAgICAgICAgICAgIOmAgOWHuu+8jOiAjOS4lOS4jeWvueWuieijheaJi+auteS9nOS7u+S9leabtOaUueaIluiuvue9rlxuIgorIlxuIgorIuWFtuWug++8mlxuIgorIiAgPywgSGVscCwgRjEgICAgICDor7fmsYLluK7liqlcbiIKKyIgXmwgICAgICAgICAgICAgICAg6YeN55S75bGP5bmVXG4iCisiICAvICAgICAgICAgICAgICAgIOi/m+ihjOaQnOe0oijmkYHlm57ovablj5bmtojmkJzntKIpXG4iCisiICBcXCAgICAgICAgICAgICAgIOmHjeWkjeS4iuasoeeahOaQnOe0olxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6NjAKK21zZ2lkICJUeXBlIGRzZWxlY3QgLS1oZWxwIGZvciBoZWxwLiIKK21zZ3N0ciAi6L6T5YWlIGRzZWxlY3QgLS1oZWxwIOWwseWPr+S7pemYheivu+W4ruWKqeS/oeaBr+OAgiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0MworbXNnaWQgImEiCittc2dzdHIgImEiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDMKK21zZ2lkICJbQV1jY2VzcyIKK21zZ3N0ciAi5p2l5rqQW0FdIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQzCittc2dpZCAiQ2hvb3NlIHRoZSBhY2Nlc3MgbWV0aG9kIHRvIHVzZS4iCittc2dzdHIgIumAieaLqeaJgOS9v+eUqOeahOWuieijheadpea6kOOAgiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NAorbXNnaWQgInUiCittc2dzdHIgInUiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDQKK21zZ2lkICJbVV1wZGF0ZSIKK21zZ3N0ciAi5pu05pawW1VdIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ0Cittc2dpZCAiVXBkYXRlIGxpc3Qgb2YgYXZhaWxhYmxlIHBhY2thZ2VzLCBpZiBwb3NzaWJsZS4iCittc2dzdHIgIuWmguaenOWPr+iDveeahOivne+8jOabtOaWsOWPr+eUqOeahOi9r+S7tuWMheWIl+ihqOOAgiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NQorbXNnaWQgInMiCittc2dzdHIgInMiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDUKK21zZ2lkICJbU11lbGVjdCIKK21zZ3N0ciAi6YCJ5oupW1NdIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ1Cittc2dpZCAiUmVxdWVzdCB3aGljaCBwYWNrYWdlcyB5b3Ugd2FudCBvbiB5b3VyIHN5c3RlbS4iCittc2dzdHIgIuWvueezu+e7n+S4reWuieijheeahOi9r+S7tuWMhei/m+ihjOWPluiIjeOAgiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NgorbXNnaWQgImkiCittc2dzdHIgImkiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDYKK21zZ2lkICJbSV1uc3RhbGwiCittc2dzdHIgIuWuieijhVtJXSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NgorbXNnaWQgIkluc3RhbGwgYW5kIHVwZ3JhZGUgd2FudGVkIHBhY2thZ2VzLiIKK21zZ3N0ciAi5a6J6KOF5bm25Y2H57qn5LmL5YmN5oyH5a6a55qE6L2v5Lu25YyF44CCIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ3Cittc2dpZCAiYyIKK21zZ3N0ciAiYyIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NworbXNnaWQgIltDXW9uZmlnIgorbXNnc3RyICLphY3nva5bQ10iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDcKK21zZ2lkICJDb25maWd1cmUgYW55IHBhY2thZ2VzIHRoYXQgYXJlIHVuY29uZmlndXJlZC4iCittc2dzdHIgIuWvueaJgOaciei/mOacqumFjee9rueahOi9r+S7tuWMhei/m+ihjOmFjee9riIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OAorbXNnaWQgInIiCittc2dzdHIgInIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDgKK21zZ2lkICJbUl1lbW92ZSIKK21zZ3N0ciAi5Yig6ZmkW1JdIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ4Cittc2dpZCAiUmVtb3ZlIHVud2FudGVkIHNvZnR3YXJlLiIKK21zZ3N0ciAi5Yig6Zmk5LiN6ZyA6KaB55qE6L2v5Lu25YyFIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ5Cittc2dpZCAicSIKK21zZ3N0ciAicSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OQorbXNnaWQgIltRXXVpdCIKK21zZ3N0ciAi6YCA5Ye6W1FdIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ5Cittc2dpZCAiUXVpdCBkc2VsZWN0LiIKK21zZ3N0ciAi6YCA5Ye6IGRzZWxlY3Qg56iL5bqPIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTUwCittc2dpZCAibWVudSIKK21zZ3N0ciAi6I+c5Y2VIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTU1CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiBgJXMnIHBhY2thZ2UgaGFuZGxpbmcgZnJvbnRlbmQgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiRGViaWFuIOKAnCVz4oCdIOi9r+S7tuWMheaTjeS9nOWJjeerryAlcyDniYjjgIJcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE1OAorbXNnaWQgIiIKKyJDb3B5cmlnaHQgKEMpIDE5OTQtMTk5NiBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLlxuIgorbXNnc3RyICIiCisi54mI5p2D5omA5pyJIChDKSAxOTk0LTE5OTYgSWFuIEphY2tzb27jgIJcbiIKKyLniYjmnYPmiYDmnIkgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFu44CCXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNjIKKyMsIGZ1enp5Cittc2dpZCAiIgorIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgb3JcbiIKKyJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKK21zZ3N0ciAiIgorIui/meaYr+iHqueUsei9r+S7tu+8m+imgeiOt+efpeWkjeWItuivpei9r+S7tueahOWJjeaPkOWSjOadoeS7tu+8jOivt+WPgumYhSBHTlUg5YWs5YWx6K645Y+v6K+B55qEXG4iCisi56ys5LqM54mI5oiW5YW25pu05paw55qE54mI5pys44CC6K+l6L2v5Lu244CQ5LiN44CR5o+Q5L6b5Lu75L2V5ouF5L+d44CCXG4iCisi6K+36YCa6L+H5omn6KGMICVzIC0tbGljZW5jZSDmnaXmn6XnnIvniYjmnYPlkozorrjlj6/or4HnmoTnu4boioLjgIJcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE3MiBkc2VsZWN0L21haW4uY2M6MjIwCittc2dpZCAiPHN0YW5kYXJkIG91dHB1dD4iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE4MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIFs8YWN0aW9uPiAuLi5dXG4iCisiXG4iCittc2dzdHIgIiIKKyLnlKjms5XvvJolcyBbPOmAiemhuT4gLi4uXSBbPOaTjeS9nD4gLi4uXVxuIgorIlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTg3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMuXG4iCisiICAtLWV4cGVydCAgICAgICAgICAgICAgICAgICBUdXJuIG9uIGV4cGVydCBtb2RlLlxuIgorIiAgLS1kZWJ1ZyA8ZmlsZT4gfCAtRDxmaWxlPiAgVHVybiBvbiBkZWJ1Z2dpbmcsIHNlbmRpbmcgb3V0cHV0IHRvIDxmaWxlPi5cbiIKKyIgIC0tY29sb3VyIHwgLS1jb2xvciBzY3JlZW5wYXJ0Oltmb3JlZ3JvdW5kXSxbYmFja2dyb3VuZF1bOmF0dHJbK2F0dHIrLi5dXVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ29uZmlndXJlIHNjcmVlbiBjb2xvdXJzLlxuIgorIlxuIgorbXNnc3RyICIiCisi6YCJ6aG577yaXG4iCisiICAtLWFkbWluZGlyIDznm67lvZU+ICAgICAgICAgIOS9v+eUqCA855uu5b2VPiDogIzpnZ4gJXPjgIJcbiIKKyIgIC0tZXhwZXJ0ICAgICAgICAgICAgICAgICAgIOW8gOWQr+S4k+WutuaooeW8j+OAglxuIgorIiAgLS1kZWJ1ZyA85paH5Lu2PiB8IC1EPOaWh+S7tj4gIOaJk+W8gOiwg+ivleS/oeaBr++8jOW5tuaKiui+k+WHuumAgeWIsCA85paH5Lu2PuOAglxuIgorIiAgLS1jb2xvdXIgfCAtLWNvbG9yIOaYvuekuuWMuuWdlzpb5YmN5pmvXSxb6IOM5pmvXVs65bGe5oCnWyvlsZ7mgKcrLi5dXVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg6K6+572u5pi+56S65omA55So55qE6YWN6Imy44CCXG4iCisiXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxOTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgICBTaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorbXNnc3RyICIiCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgICDmmL7npLrmnKzluK7liqnkv6Hmga/jgIJcbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgIOaYvuekuueJiOacrOS/oeaBr+OAglxuIgorIiAgLS1saWNlbnNlIHwgLS1saWNlbnNlICAgICAg5pi+56S66K645Y+v6K+B44CCXG4iCisiXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkFjdGlvbnM6XG4iCisiICBhY2Nlc3MgdXBkYXRlIHNlbGVjdCBpbnN0YWxsIGNvbmZpZyByZW1vdmUgcXVpdFxuIgorIlxuIgorbXNnc3RyICIiCisi5pON5L2c77yaXG4iCisiICDmiYvmrrUg5pu05pawIOmAieaLqSDlronoo4Ug6K6+572uIOWNuOi9vSDpgIDlh7pcbiIKKyJcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjIwNQorIywgYy1mb3JtYXQKK21zZ2lkICJTY3JlZW5wYXJ0czpcbiIKK21zZ3N0ciAi5pi+56S66YOo5L2N77yaXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ29sb3VyczpcbiIKK21zZ3N0ciAi6aKc6Imy77yaXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiQXR0cmlidXRlczpcbiIKK21zZ3N0ciAi5bGe5oCn77yaXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGRuJ3Qgb3BlbiBkZWJ1ZyBmaWxlIGAlLjI1NXMnXG4iCittc2dzdHIgIuaXoOazleaJk+W8gOiwg+ivleS/oeaBr+aWh+S7tuKAnCUuMjU1c+KAnVxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjUzCisjLCBjLWZvcm1hdAorbXNnaWQgIkludmFsaWQgJXMgYCVzJ1xuIgorbXNnc3RyICLml6DmlYjnmoQgJXMg4oCcJXPigJ1cbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjI3MAorbXNnaWQgInNjcmVlbiBwYXJ0IgorbXNnc3RyICLmmL7npLrpg6jliIYiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyNzYKK21zZ2lkICJOdWxsIGNvbG91ciBzcGVjaWZpY2F0aW9uXG4iCittc2dzdHIgIuacquaMh+WumuminOiJslxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6Mjg0IGRzZWxlY3QvbWFpbi5jYzoyODkKK21zZ2lkICJjb2xvdXIiCittc2dzdHIgIuminOiJsiIKKworIzogZHNlbGVjdC9tYWluLmNjOjI5NworbXNnaWQgImNvbG91ciBhdHRyaWJ1dGUiCittc2dzdHIgIuminOiJsuWxnuaApyIKKworIzogZHNlbGVjdC9tYWluLmNjOjMyOQorbXNnaWQgIlRlcm1pbmFsIGRvZXMgbm90IGFwcGVhciB0byBzdXBwb3J0IGN1cnNvciBhZGRyZXNzaW5nLlxuIgorbXNnc3RyICLnu4jnq6/kuI3mlK/mjIHmuLjmoIfnmoTlrprkvY3jgIJcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjMzMQorbXNnaWQgIlRlcm1pbmFsIGRvZXMgbm90IGFwcGVhciB0byBzdXBwb3J0IGhpZ2hsaWdodGluZy5cbiIKK21zZ3N0ciAi57uI56uv5LiN5pSv5oyB6auY5Lqu5pi+56S644CCXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzozMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlNldCB5b3VyIFRFUk0gdmFyaWFibGUgY29ycmVjdGx5LCB1c2UgYSBiZXR0ZXIgdGVybWluYWwsXG4iCisib3IgbWFrZSBkbyB3aXRoIHRoZSBwZXItcGFja2FnZSBtYW5hZ2VtZW50IHRvb2wgJXMuXG4iCittc2dzdHIgIiIKKyLor7fmraPnoa7orr7nva7mgqjnmoQgVEVSTSDlj5jph4/vvIznlKjkuIDkuKrmm7TlkIjpgILnmoTnu4jnq6/nsbvlnovvvIxcbiIKKyLmiJbogIXovaznlKjpkojlr7nljZXkuKrova/ku7bljIXnmoTljIXnrqHnkIblt6XlhbfvvIzljbMgJXPjgIJcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjMzNgorbXNnaWQgInRlcm1pbmFsIGxhY2tzIG5lY2Vzc2FyeSBmZWF0dXJlcywgZ2l2aW5nIHVwIgorbXNnc3RyICLnlLHkuo7nu4jnq6/nvLrkuY/lv4XopoHnmoTnibnmgKfvvIzlj6rlvpfkuK3mraLmk43kvZwiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzo0MTcKK21zZ2lkICIiCisiXG4iCisiXG4iCisiTW92ZSBhcm91bmQgd2l0aCBeUCBhbmQgXk4sIGN1cnNvciBrZXlzLCBpbml0aWFsIGxldHRlcnMsIG9yIGRpZ2l0cztcbiIKKyJQcmVzcyA8ZW50ZXI+IHRvIGNvbmZpcm0gc2VsZWN0aW9uLiAgIF5MIHJlZHJhd3Mgc2NyZWVuLlxuIgorIlxuIgorbXNnc3RyICIiCisiXG4iCisiXG4iCisi5Y+v5Lul55SoIF5QIOWSjCBeTuOAgeaWueWQkemUruOAgemmluWtl+avjeaIluiAheaVsOWtl+mUruadpeenu+WKqOa4uOagh++8m1xuIgorIuaRgSA85Zue6L2mPiDmnaXnoa7orqTjgIIgIOeUqCBeTCDmnaXliLflsY/jgIJcbiIKKyJcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjQyOAorbXNnaWQgIiIKKyJcbiIKKyJcbiIKKyJSZWFkLW9ubHkgYWNjZXNzOiBvbmx5IHByZXZpZXcgb2Ygc2VsZWN0aW9ucyBpcyBhdmFpbGFibGUhIgorbXNnc3RyICIiCisiXG4iCisiXG4iCisi5Y+q6K+76K6/6Zeu77ya5LuF5LuF5Y+v5Lul5p+l55yL6KKr6YCJ5Lit55qE6aG555uu77yBIgorCisjOiBkc2VsZWN0L21haW4uY2M6NDQ4Cittc2dpZCAiZmFpbGVkIHRvIGdldGNoIGluIG1haW4gbWVudSIKK21zZ3N0ciAi5Zyo5Li76I+c5Y2V55WM6Z2i5LitIGdldGNoIOWksei0pSIKKworIzogZHNlbGVjdC9tYWluLmNjOjUzMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGFjdGlvbiBzdHJpbmcgYCUuNTBzJyIKK21zZ3N0ciAi5LiN6IO96K+G5Yir55qE5pON5L2c5a2X5Liy4oCcJS41MHPigJ0iCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6NzcKK21zZ2lkICJkc2VsZWN0IC0gbGlzdCBvZiBhY2Nlc3MgbWV0aG9kcyIKK21zZ3N0ciAiZHNlbGVjdCAtIOWuieijheaJi+auteeahOWIl+ihqCIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzo4NgorIywgYy1mb3JtYXQKK21zZ2lkICJBY2Nlc3MgbWV0aG9kIGAlcycuIgorbXNnc3RyICLlronoo4XmiYvmrrXigJwlc+KAneOAgiIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxMjAKK21zZ2lkICJBYmJyZXYuIgorbXNnc3RyICLnvKnlhpkiCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTIxIGRzZWxlY3QvcGtnaW5mby5jYzoxMDUgZHNlbGVjdC9wa2d0b3AuY2M6MjkxCittc2dpZCAiRGVzY3JpcHRpb24iCittc2dzdHIgIueugOS7iyIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxNjQgZHNlbGVjdC9wa2dsaXN0LmNjOjU3MgorbXNnaWQgImRvdXBkYXRlIGZhaWxlZCIKK21zZ3N0ciAiZG91cGRhdGUg5aSx6LSlIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjE2NiBkc2VsZWN0L3BrZ2xpc3QuY2M6NTc1Cittc2dpZCAiZmFpbGVkIHRvIHVuYmxvY2sgU0lHV0lOQ0giCittc2dzdHIgIuaXoOazleWPlua2iOmYu+WhniBTSUdXSU5DSCDkv6Hlj7ciCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTcwIGRzZWxlY3QvcGtnbGlzdC5jYzo1ODAKK21zZ2lkICJmYWlsZWQgdG8gcmUtYmxvY2sgU0lHV0lOQ0giCittc2dzdHIgIumHjeaWsOmYu+WhniBTSUdXSU5DSCDkv6Hlj7flpLHotKUiCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTcxIGRzZWxlY3QvcGtnbGlzdC5jYzo1ODIKK21zZ2lkICJnZXRjaCBmYWlsZWQiCittc2dzdHIgImdldGNoIOWksei0pSIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxODgKKyMsIGZ1enp5Cittc2dpZCAiRXhwbGFuYXRpb24iCittc2dzdHIgIuWQjumdouWuieijheaJi+auteeahOivtOaYjiIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxOTcKK21zZ2lkICJObyBleHBsYW5hdGlvbiBhdmFpbGFibGUuIgorbXNnc3RyICLmsqHmnInlj5HnjrDnm7jlupTnmoTor7TmmI7jgIIiCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjY3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJcbiIKKyIlczogJXNcbiIKK21zZ3N0ciAiIgorIlxuIgorIlxuIgorIiVz77yaJXNcbiIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6NzAKK21zZ2lkICIiCisiXG4iCisiUHJlc3MgPGVudGVyPiB0byBjb250aW51ZS4iCittc2dzdHIgIiIKKyJcbiIKKyLmkYEgPOWbnui9pj4g57un57ut44CCIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoxNjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHJlc3MgPGVudGVyPiB0byBjb250aW51ZS5cbiIKK21zZ3N0ciAi6K+35pGBIDzlm57ovaY+IOe7p+e7reOAglxuIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoxNjIKKyMsIGZ1enp5Cittc2dpZCAiPHN0YW5kYXJkIGVycm9yPiIKK21zZ3N0ciAi5YaZ5qCH5YeG6ZSZ6K+v6L6T5Ye65pe25Ye66ZSZIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoxNjUKK21zZ2lkICJlcnJvciByZWFkaW5nIGFja25vd2xlZGdlbWVudCBvZiBwcm9ncmFtIGZhaWx1cmUgbWVzc2FnZSIKK21zZ3N0ciAi6K+75Y+W56iL5bqP55qE6ZSZ6K+v5o+Q56S65pe25Ye66ZSZIgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoxOTYKK21zZ2lkICJ1cGRhdGUgYXZhaWxhYmxlIGxpc3Qgc2NyaXB0IgorbXNnc3RyICLmm7TmlrDlj6/nlKjova/ku7bljIXliJfooajnmoTohJrmnKwiCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjIwMAorbXNnaWQgImluc3RhbGxhdGlvbiBzY3JpcHQiCittc2dzdHIgIui9r+S7tuWMheWuieijheiEmuacrCIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MjQ2Cittc2dpZCAicXVlcnkvc2V0dXAgc2NyaXB0IgorbXNnc3RyICLmn6Xor6Iv6K6+572u6ISa5pysIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzo1MworIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gbWV0aG9kIG9wdGlvbnMgZmlsZSBgJS4yNTBzJyAtLSAlcyIKK21zZ3N0ciAi5a6J6KOF5omL5q6155qE6YCJ6aG55paH5Lu24oCcJS4yNTBz4oCd5Lit5pyJ6K+t5rOV6ZSZ6K+vIC0tICVzIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzo1OQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciByZWFkaW5nIG9wdGlvbnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi6K+75Y+W5a6J6KOF5omL5q6155qE6YCJ6aG55paH5Lu24oCcJS4yNTBz4oCd5pe25Ye66ZSZIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzo5MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBgJS4yNTBzJyBkaXJlY3RvcnkgZm9yIHJlYWRpbmcgbWV0aG9kcyIKK21zZ3N0ciAi5peg5rOV6K+75Y+W4oCcJS4yNTBz4oCd55uu5b2V5Lul6I635Y+W5a6J6KOF5omL5q6155qE55u45YWz5L+h5oGvIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxMDYKKyMsIGMtZm9ybWF0Cittc2dpZCAibWV0aG9kIGAlLjI1MHMnIGhhcyBuYW1lIHRoYXQgaXMgdG9vIGxvbmcgKCVkID4gJWQgY2hhcmFjdGVycykiCittc2dzdHIgIuWuieijheaJi+auteKAnCUuMjUwc+KAneeahOWQjeWtl+i2hemVvyglZCA+ICVkIOS4quWtl+espikiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjExNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gYWNjZXNzIG1ldGhvZCBzY3JpcHQgYCUuMjUwcyciCittc2dzdHIgIuaXoOazleiuv+mXruaJi+auteiEmuacrOKAnCUuMjUwc+KAnSIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTIzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIG1ldGhvZCBvcHRpb25zIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuaXoOazleivu+WPluaJi+auteiEmuacrOKAnCUuMjUwc+KAnSIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTQ3Cittc2dpZCAibm9uLWRpZ2l0IHdoZXJlIGRpZ2l0IHdhbnRlZCIKK21zZ3N0ciAi5Zyo5pys6K+l5pyJ5pWw5a2X55qE5Zyw5pa55rKh5pyJ5Y+R546w5pWw5a2XIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNTAKK21zZ2lkICJFT0YgaW4gaW5kZXggc3RyaW5nIgorbXNnc3RyICLlnKjntKLlvJXlrZfkuLLkuK3lj5HnjrDkuoYgRU9GIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNTMKK21zZ2lkICJpbmRleCBzdHJpbmcgdG9vIGxvbmciCittc2dzdHIgIue0ouW8leWtl+S4sui2hemVvyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTU2Cittc2dpZCAibmV3bGluZSBiZWZvcmUgb3B0aW9uIG5hbWUgc3RhcnQiCittc2dzdHIgIuWcqOmAiemhueWQjeW8gOWni+WJjeWwseWPkeeOsOS6huaNouihjOespiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTU4Cittc2dpZCAiRU9GIGJlZm9yZSBvcHRpb24gbmFtZSBzdGFydCIKK21zZ3N0ciAi5Zyo6YCJ6aG55ZCN5byA5aeL5YmN5bCx5Y+R546w5LqGIEVPRiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTYyCittc2dpZCAibm9uYWxwaGEgd2hlcmUgb3B0aW9uIG5hbWUgc3RhcnQgd2FudGVkIgorbXNnc3RyICLlnKjmnKzor6XmmK/pgInpobnlkI3lvIDlpLTnmoTlnLDmlrnkuI3mmK/lrZfmr40iCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE2NAorbXNnaWQgIm5vbi1hbHBoYW51bSBpbiBvcHRpb24gbmFtZSIKK21zZ3N0ciAi5Zyo6YCJ6aG55ZCN5Lit5Y+R546w5LqG5pei5LiN5piv5a2X5q+N5Lmf5LiN5piv5pWw5a2X55qE5a2X56ymIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNjcKK21zZ2lkICJFT0YgaW4gb3B0aW9uIG5hbWUiCittc2dzdHIgIuWcqOmAiemhueWQjeS4reWPkeeOsOS6hiBFT0YiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE3MgorbXNnaWQgIm5ld2xpbmUgYmVmb3JlIHN1bW1hcnkiCittc2dzdHIgIuWcqOamgui/sOWJjeWPkeeOsOS6huaNouihjOespiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTc0Cittc2dpZCAiRU9GIGJlZm9yZSBzdW1tYXJ5IgorbXNnc3RyICLlnKjmpoLov7DliY3lj5HnjrDkuoYgRU9GIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxODAKK21zZ2lkICJFT0YgaW4gc3VtbWFyeSAtIG1pc3NpbmcgbmV3bGluZSIKK21zZ3N0ciAi5Zyo5qaC6L+w5Lit5Y+R546w5LqGIEVPRiAtIOacrOivpeaYr+aNouihjOespueahCIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTkwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIG9wdGlvbiBkZXNjcmlwdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLml6Dms5XmiZPlvIDpgInpobnor7TmmI7mlofku7bigJwlLjI1MHPigJ0iCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE5NAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBvcHRpb24gZGVzY3JpcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi5peg5rOVIHN0YXQg6YCJ6aG56K+05piO5paH5Lu24oCcJS4yNTBz4oCdIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxOTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgb3B0aW9uIGRlc2NyaXB0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuivu+WPlumAiemhueivtOaYjuaWh+S7tuKAnCUuMjUwc+KAneWksei0pSIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MjAxCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGR1cmluZyByZWFkIG9mIG9wdGlvbiBkZXNjcmlwdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLor7vlj5bpgInpobnor7TmmI7mlofku7bigJwlLjI1MHPigJ3ml7blh7rplJkiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjIyNAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBkdXJpbmcgcmVhZCBvZiBtZXRob2Qgb3B0aW9ucyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLor7vlj5blronoo4XmiYvmrrXnmoTpgInpobnmlofku7bigJwlLjI1MHPigJ3ml7blh7rplJkiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjI0NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBjdXJyZW50IG9wdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLml6Dms5XmiZPlvIDlvZPliY3nmoTpgInpobnmlofku7bigJwlLjI1MHPigJ0iCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjI4OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBuZXcgb3B0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuaXoOazleaJk+W8gOaWsOeahOeahOmAiemhueaWh+S7tuKAnCUuMjUwc+KAnSIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MjkyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgb3B0aW9uIHRvIGAlLjI1MHMnIgorbXNnc3RyICLml6Dms5XlhpnlhaXmlrDnmoTpgInpobnmlofku7bigJwlLjI1MHPigJ0iCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjI5NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgbmV3IG9wdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLml6Dms5XlhbPpl63mlrDnmoTpgInpobnmlofku7bigJwlLjI1MHPigJ0iCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjI5NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgb3B0aW9uIGFzIGAlLjI1MHMnIgorbXNnc3RyICLml6Dms5Xlronoo4XmlrDnmoTpgInpobnmlofku7bliLDigJwlLjI1MHPigJ0iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzozNgorbXNnaWQgIm5ldyBwYWNrYWdlIgorbXNnc3RyICLmlrDliLDova/ku7bljIUiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzozNworbXNnaWQgImluc3RhbGwiCittc2dzdHIgIuWuieijhSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjM4Cittc2dpZCAiaG9sZCIKK21zZ3N0ciAi5L+d5oyBIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MzkKK21zZ2lkICJyZW1vdmUiCittc2dzdHIgIuWIoOmZpCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjQwCittc2dpZCAicHVyZ2UiCittc2dzdHIgIua4hemZpCIKKworIy4gVFJBTlNMQVRPUlM6IFRoZSBzcGFjZSBpcyBhIHRyaWNrIHRvIHdvcmsgYXJvdW5kIGdldHRleHQgd2hpY2ggdXNlcworIy4gKiB0aGUgZW1wdHkgc3RyaW5nIHRvIHN0b3JlIGluZm9ybWF0aW9uIGFib3V0IHRoZSB0cmFuc2xhdGlvbi4gRE8gTk9UCisjLiAqIENIQU5HRSBUSEFUIElOIEEgVFJBTlNMQVRJT04hIFRoZSBjb2RlIHJlYWxseSByZWxpZXMgb24gdGhhdCBiZWluZworIy4gKiBhIHNpbmdsZSBzcGFjZS4KKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo0NworbXNnaWQgIiAiCittc2dzdHIgIiAiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo0OAorbXNnaWQgIlJFSU5TVEFMTCIKK21zZ3N0ciAi44CQ6YeN5paw5a6J6KOF44CRIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTEKK21zZ2lkICJub3QgaW5zdGFsbGVkIgorbXNnc3RyICLmsqHmnInlronoo4UiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1MgorbXNnaWQgInJlbW92ZWQgKGNvbmZpZ3MgcmVtYWluKSIKK21zZ3N0ciAi5Yig6ZmkKOaui+WtmOmFjee9ruaWh+S7tikiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1MworbXNnaWQgImhhbGYgaW5zdGFsbGVkIgorbXNnc3RyICLpg6jliIblronoo4UiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1NAorbXNnaWQgInVucGFja2VkIChub3Qgc2V0IHVwKSIKK21zZ3N0ciAi5bey6Kej5Y6L57ypKOWwmuacquiuvue9rikiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1NQorbXNnaWQgImhhbGYgY29uZmlndXJlZCAoY29uZmlnIGZhaWxlZCkiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjU2Cittc2dpZCAiYXdhaXRpbmcgdHJpZ2dlciBwcm9jZXNzaW5nIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1NworbXNnaWQgInRyaWdnZXJlZCIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTgKK21zZ2lkICJpbnN0YWxsZWQiCittc2dzdHIgIuW3suWuieijheWujOavlSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjYxCittc2dpZCAiUmVxdWlyZWQiCittc2dzdHIgIumcgOimgSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjYyCittc2dpZCAiSW1wb3J0YW50IgorbXNnc3RyICLph43opoEiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo2MworbXNnaWQgIlN0YW5kYXJkIgorbXNnc3RyICLmoIflh4YiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo2NAorbXNnaWQgIk9wdGlvbmFsIgorbXNnc3RyICLlj6/pgIkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo2NQorbXNnaWQgIkV4dHJhIgorbXNnc3RyICLpop3lpJYiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo2NgorbXNnaWQgIiFCdWchIgorbXNnc3RyICIh55GV55a1ISIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjY3Cittc2dpZCAiVW5jbGFzc2lmaWVkIgorbXNnc3RyICLmnKrlvZLnsbsiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3MAorbXNnaWQgInN1Z2dlc3RzIgorbXNnc3RyICLlu7rorq4iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3MQorbXNnaWQgInJlY29tbWVuZHMiCittc2dzdHIgIuaOqOiNkCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjcyCittc2dpZCAiZGVwZW5kcyBvbiIKK21zZ3N0ciAi5L6d6LWW5LqOIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzMKK21zZ2lkICJwcmUtZGVwZW5kcyBvbiIKK21zZ3N0ciAi6aKE5L6d6LWW5LqOIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzQKK21zZ2lkICJicmVha3MiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjc1Cittc2dpZCAiY29uZmxpY3RzIHdpdGgiCittc2dzdHIgIuS4juS5i+WGsueqgSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjc2Cittc2dpZCAicHJvdmlkZXMiCittc2dzdHIgIuaPkOS+myIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjc3Cittc2dpZCAicmVwbGFjZXMiCittc2dzdHIgIuabv+aNoiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjc4Cittc2dpZCAiZW5oYW5jZXMiCittc2dzdHIgIuacieWKqeS6jiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjgxCittc2dpZCAiUmVxIgorbXNnc3RyICLpnIAiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4MgorbXNnaWQgIkltcCIKK21zZ3N0ciAi6KaBIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODMKK21zZ2lkICJTdGQiCittc2dzdHIgIuaghyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjg0Cittc2dpZCAiT3B0IgorbXNnc3RyICLpgIkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4NQorbXNnaWQgIlh0ciIKK21zZ3N0ciAi5L2ZIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODYKK21zZ2lkICJiVUciCittc2dzdHIgIueRlSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjg3Cittc2dpZCAiPyIKK21zZ3N0ciAiPyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjk1IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTUKK21zZ2lkICJCcm9rZW4iCittc2dzdHIgIuacieaVhemanCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjk2Cittc2dpZCAiTmV3IgorbXNnc3RyICLmlrDnmoQiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo5NworbXNnaWQgIlVwZGF0ZWQiCittc2dzdHIgIuacieabtOaWsCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjk4Cittc2dpZCAiT2Jzb2xldGUvbG9jYWwiCittc2dzdHIgIua3mOaxsC/mnKzlnLAiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo5OQorbXNnaWQgIlVwLXRvLWRhdGUiCittc2dzdHIgIuW3suabtOaWsCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwMAorbXNnaWQgIkF2YWlsYWJsZSIKK21zZ3N0ciAi5Y+v55SoIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTAxIGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTcKK21zZ2lkICJSZW1vdmVkIgorbXNnc3RyICLlt7LliKDpmaQiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDIgZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExMQorbXNnaWQgIkJyb2tlbmx5IGluc3RhbGxlZCBwYWNrYWdlcyIKK21zZ3N0ciAi5pyJ5pWF6Zqc55qE5bey5a6J6KOF6L2v5Lu25YyFIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTAzCittc2dpZCAiTmV3bHkgYXZhaWxhYmxlIHBhY2thZ2VzIgorbXNnc3RyICLmlrDnmoTlj6/nlKjova/ku7bljIUiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDQKK21zZ2lkICJVcGRhdGVkIHBhY2thZ2VzIChuZXdlciB2ZXJzaW9uIGlzIGF2YWlsYWJsZSkiCittc2dzdHIgIui9r+S7tuWMheacieabtOaWsOeJiOacrCjmnInmm7Tpq5jnmoTniYjmnKzlj6/nlKjkuoYpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTA1Cittc2dpZCAiT2Jzb2xldGUgYW5kIGxvY2FsIHBhY2thZ2VzIHByZXNlbnQgb24gc3lzdGVtIgorbXNnc3RyICLns7vnu5/kuK3lronoo4Xov5nkupvnmoTova/ku7bljIXmmK/lt7Lmt5jmsbDnmoTlkozmnKzlnLDnmoQiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDYKK21zZ2lkICJVcCB0byBkYXRlIGluc3RhbGxlZCBwYWNrYWdlcyIKK21zZ3N0ciAi5a6J6KOF5LqG55qE6L2v5Lu25YyF54mI5pys5piv5pyA5paw55qEIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTA3Cittc2dpZCAiQXZhaWxhYmxlIHBhY2thZ2VzIChub3QgY3VycmVudGx5IGluc3RhbGxlZCkiCittc2dzdHIgIuWPr+eUqOeahOi9r+S7tuWMhSjnm67liY3msqHmnInooqvlronoo4UpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTA4Cittc2dpZCAiUmVtb3ZlZCBhbmQgbm8gbG9uZ2VyIGF2YWlsYWJsZSBwYWNrYWdlcyIKK21zZ3N0ciAi6KKr5Yig6Zmk6ICM5LiU5LiN5YaN5Y+v55So55qE6L2v5Lu25YyFIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTEyCittc2dpZCAiSW5zdGFsbGVkIHBhY2thZ2VzIgorbXNnc3RyICLlt7Lnu4/lronoo4XnmoTova/ku7bljIUiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTMKK21zZ2lkICJSZW1vdmVkIHBhY2thZ2VzIChjb25maWd1cmF0aW9uIHN0aWxsIHByZXNlbnQpIgorbXNnc3RyICLooqvliKDpmaTnmoTova/ku7bljIUgKOWFtumFjee9ruaWh+S7tuS7jeeEtuWtmOWcqOS6juezu+e7n+S4rSkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTQKK21zZ2lkICJQdXJnZWQgcGFja2FnZXMgYW5kIHRob3NlIG5ldmVyIGluc3RhbGxlZCIKK21zZ3N0ciAi6KKr5a6M5YWo5riF6Zmk55qE6L2v5Lu25YyF5Lul5Y+K6YKj5Lqb5LuO5pyq6KKr5a6J6KOF6L+H55qE6L2v5Lu25YyFIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTE2Cittc2dpZCAiSW5zdGFsbGVkIgorbXNnc3RyICLlt7Llronoo4UiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTgKK21zZ2lkICJQdXJnZWQiCittc2dzdHIgIuW3sua4hemZpCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjE5OAorbXNnaWQgImRzZWxlY3QgLSByZWN1cnNpdmUgcGFja2FnZSBsaXN0aW5nIgorbXNnc3RyICJkc2VsZWN0IC0g6YCS5b2S5Zyw5YiX5Ye66L2v5Lu25YyFIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTk5Cittc2dpZCAiZHNlbGVjdCAtIGluc3BlY3Rpb24gb2YgcGFja2FnZSBzdGF0ZXMiCittc2dzdHIgImRzZWxlY3QgLSDmo4Dop4bova/ku7bljIXnmoTnirbmgIEiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMDAKK21zZ2lkICJkc2VsZWN0IC0gbWFpbiBwYWNrYWdlIGxpc3RpbmciCittc2dzdHIgImRzZWxlY3QgLSDova/ku7bljIXkuLvliJfooagiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMDgKK21zZ2lkICIgKGJ5IHNlY3Rpb24pIgorbXNnc3RyICIgKOaMieaJgOWxnuWkp+exuykiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMTEKK21zZ2lkICIgKGF2YWlsLiwgc2VjdGlvbikiCittc2dzdHIgIiAo5oyJ5piv5ZCm5Y+v55So5ZKM5omA5bGe5aSn57G7KSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIxNAorbXNnaWQgIiAoc3RhdHVzLCBzZWN0aW9uKSIKK21zZ3N0ciAiICjmjInnirbmgIHlkozmiYDlsZ7lpKfnsbspIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjIzCittc2dpZCAiIChieSBwcmlvcml0eSkiCittc2dzdHIgIiAo5oyJ5LyY5YWI57qnKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIyNgorbXNnaWQgIiAoYXZhaWwuLCBwcmlvcml0eSkiCittc2dzdHIgIiAo5oyJ5piv5ZCm5Y+v55So5ZKM5LyY5YWI57qnKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIyOQorbXNnaWQgIiAoc3RhdHVzLCBwcmlvcml0eSkiCittc2dzdHIgIiAo5oyJ54q25oCB5ZKM5LyY5YWI57qnKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIzOCBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjUwCittc2dpZCAiIChhbHBoYWJldGljYWxseSkiCittc2dzdHIgIiAo5oyJ5a2X5q+N6KGo6aG65bqPKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI0MQorbXNnaWQgIiAoYnkgYXZhaWxhYmlsaXR5KSIKK21zZ3N0ciAiICjmjInmmK/lkKblj6/nlKgpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjQ0Cittc2dpZCAiIChieSBzdGF0dXMpIgorbXNnc3RyICIgKOaMieeKtuaAgSkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNTgKK21zZ2lkICIgbWFyazorLz0vLSB0ZXJzZTp2IGhlbHA6PyIKK21zZ3N0ciAiIOagh+iusDorLz0vLSDnroDnlaU6diDluK7liqk6PyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI1OQorbXNnaWQgIiBtYXJrOisvPS8tIHZlcmJvc2U6diBoZWxwOj8iCittc2dzdHIgIiDmoIforrA6Ky89Ly0g6K+m5bC9OnYg5biu5YqpOj8iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNjAKK21zZ2lkICIgdGVyc2U6diBoZWxwOj8iCittc2dzdHIgIiDnroDnlaU6diDluK7liqk6PyIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI2MQorbXNnaWQgIiB2ZXJib3NlOnYgaGVscDo/IgorbXNnc3RyICIg6K+m5bC9OnYg5biu5YqpOj8iCisKKyM6IGRzZWxlY3QvcGtnaW5mby5jYzo4MAorbXNnaWQgIiIKKyJUaGUgbGluZSB5b3UgaGF2ZSBoaWdobGlnaHRlZCByZXByZXNlbnRzIG1hbnkgcGFja2FnZXM7IGlmIHlvdSBhc2sgdG8gIgorImluc3RhbGwsIHJlbW92ZSwgaG9sZCwgZXRjLiBpdCB5b3Ugd2lsbCBhZmZlY3QgYWxsIHRoZSBwYWNrYWdlcyB3aGljaCBtYXRjaCAiCisidGhlIGNyaXRlcmlvbiBzaG93bi5cbiIKKyJcbiIKKyJJZiB5b3UgbW92ZSB0aGUgaGlnaGxpZ2h0IHRvIGEgbGluZSBmb3IgYSBwYXJ0aWN1bGFyIHBhY2thZ2UgeW91IHdpbGwgc2VlICIKKyJpbmZvcm1hdGlvbiBhYm91dCB0aGF0IHBhY2thZ2UgZGlzcGxheWVkIGhlcmUuXG4iCisiWW91IGNhbiB1c2UgYG8nIGFuZCBgTycgdG8gY2hhbmdlIHRoZSBzb3J0IG9yZGVyIGFuZCBnaXZlIHlvdXJzZWxmIHRoZSAiCisib3Bwb3J0dW5pdHkgdG8gbWFyayBwYWNrYWdlcyBpbiBkaWZmZXJlbnQga2luZHMgb2YgZ3JvdXBzLiIKK21zZ3N0ciAiIgorIuaCqOeOsOWcqOmrmOS6ruaYvuekuueahOihjOS7o+ihqOedgOWkmuS4qui9r+S7tuWMheOAguWmguaenOaCqOimgeaxguWuieijheOAgeWIoOmZpOOAgeS/neaMgeetieetie+8jOaCqOWwhuS8mlxuIgorIuW9seWTjeWIsOespuWQiOaJgOekuuagh+WHhueahOaJgOaciei9r+S7tuWMheOAglxuIgorIlxuIgorIuWmguaenOaCqOenu+WKqOmrmOS6ruadoeWIsOWNleS4qui9r+S7tuWMheaJgOWcqOeahOihjOS4iu+8jOaCqOWwhuS8mueci+WIsOi/memHjOaYvuekuueahOaYr+ivpei9r+S7tuWMheeahOebuFxuIgorIuWFs+S/oeaBr+OAglxuIgorIuaCqOWPr+S7peaRgeKAnG/igJ3miJbogIXigJxP4oCd5p2l5Lul5LiN5ZCM55qE6KeE5YiZ5o6S5bqP77yM6L+Z5qC35oKo5bCx6IO957uZ5LiN5ZCM57G75Z6L55qE6L2v5Lu25YyF5L2c5LiKXG4iCisi5qCH6K6w5LqG44CCIgorCisjOiBkc2VsZWN0L3BrZ2luZm8uY2M6OTMKKyMsIGZ1enp5Cittc2dpZCAiSW50ZXJyZWxhdGlvbnNoaXBzIgorbXNnc3RyICLova/ku7bljIXnmoTnm7jkupLlhbPns7siCisKKyM6IGRzZWxlY3QvcGtnaW5mby5jYzoxMTIKKyMsIGZ1enp5Cittc2dpZCAiTm8gZGVzY3JpcHRpb24gYXZhaWxhYmxlLiIKK21zZ3N0ciAi5peg55u45YWz5LuL57uN44CCIgorCisjOiBkc2VsZWN0L3BrZ2luZm8uY2M6MTMwCisjLCBmdXp6eQorbXNnaWQgIkluc3RhbGxlZCBjb250cm9sIGZpbGUgaW5mb3JtYXRpb24iCittc2dzdHIgIuS4uuS4i+mdoui9r+S7tuWMheWuieijheeahOaOp+WItuS/oeaBryIKKworIzogZHNlbGVjdC9wa2dpbmZvLmNjOjE0NgorIywgZnV6enkKK21zZ2lkICJBdmFpbGFibGUgY29udHJvbCBmaWxlIGluZm9ybWF0aW9uIgorbXNnc3RyICLlj6/nlKjnmoTmjqfliLbkv6Hmga/nmoTniYjmnKwiCisKKyM6IGRzZWxlY3QvcGtnbGlzdC5jYzo0MTYKK21zZ2lkICJUaGVyZSBhcmUgbm8gcGFja2FnZXMuIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnbGlzdC5jYzo1MDcKK21zZ2lkICJpbnZhbGlkIHNlYXJjaCBvcHRpb24gZ2l2ZW4iCittc2dzdHIgIuaMh+WumuS6huaXoOaViOeahOaQnOe0oumAiemhuSIKKworIzogZHNlbGVjdC9wa2dsaXN0LmNjOjUyMQorbXNnaWQgImVycm9yIGluIHJlZ3VsYXIgZXhwcmVzc2lvbiIKK21zZ3N0ciAi5q2j5YiZ6KGo6L6+5byP5pyJ6K+vIgorCisjOiBkc2VsZWN0L3BrZ3N1Ymxpc3QuY2M6MTA3Cittc2dpZCAiIGRvZXMgbm90IGFwcGVhciB0byBiZSBhdmFpbGFibGVcbiIKK21zZ3N0ciAiIOeci+S4iuWOu+W6lOivpeS4jeWPr+eUqFxuIgorCisjOiBkc2VsZWN0L3BrZ3N1Ymxpc3QuY2M6MTI3Cittc2dpZCAiIG9yICIKK21zZ3N0ciAiIOaIluiAhSAiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjU3Cittc2dpZCAiQWxsIgorbXNnc3RyICLmiYDmnIkiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjc5Cittc2dpZCAiQWxsIHBhY2thZ2VzIgorbXNnc3RyICLmiYDmnInova/ku7bljIUiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHBhY2thZ2VzIHdpdGhvdXQgYSBzZWN0aW9uIgorbXNnc3RyICLkuI3mjIflrprlpKfnsbsgJXMg6L2v5Lu25YyFIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo4NQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBwYWNrYWdlcyBpbiBzZWN0aW9uICVzIgorbXNnc3RyICLlnKggJTIkcyDlpKfnsbvkuK0gJTEkcyDova/ku7bljIUiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjkxCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzICVzIHBhY2thZ2VzIgorbXNnc3RyICIlcyAlcyDova/ku7bljIUiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjk1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzICVzIHBhY2thZ2VzIHdpdGhvdXQgYSBzZWN0aW9uIgorbXNnc3RyICLkuI3mjIflrprlpKfnsbsgJXMgJXMg6L2v5Lu25YyFIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo5NworIywgYy1mb3JtYXQKK21zZ2lkICIlcyAlcyBwYWNrYWdlcyBpbiBzZWN0aW9uICVzIgorbXNnc3RyICLlnKggJTMkcyDlpKfnsbvkuK0gJTEkcyAlMiRzIOi9r+S7tuWMhSIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6MTE4CisjLCBjLWZvcm1hdAorbXNnaWQgIiUtKnMgJXMlcyVzOyAgJXMgKHdhczogJXMpLiAgJXMiCittc2dzdHIgIiUtKnMgJXMlcyVzOyAgJXMgKOabvuS4uu+8miVzKS4gICVzIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyNjMKK21zZ2lkICJFcnJvciIKK21zZ3N0ciAi6ZSZ6K+vIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyNjcKK21zZ2lkICJJbnN0YWxsZWQ/IgorbXNnc3RyICLlt7Llronoo4XvvJ8iCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI3MQorbXNnaWQgIk9sZCBtYXJrIgorbXNnc3RyICLljp/mnInmoIforrAiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI3NQorbXNnaWQgIk1hcmtlZCBmb3IiCittc2dzdHIgIueOsOagh+iusOS4uiIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6Mjc4Cittc2dpZCAiRUlPTSIKK21zZ3N0ciAiRUlPTSIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6MjgwCittc2dpZCAiU2VjdGlvbiIKK21zZ3N0ciAi5omA5bGe5aSn57G7IgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyODEKK21zZ2lkICJQcmlvcml0eSIKK21zZ3N0ciAi5LyY5YWI57qnIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyODIKK21zZ2lkICJQYWNrYWdlIgorbXNnc3RyICLova/ku7bljIXlkI0iCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI4NgorbXNnaWQgIkluc3QudmVyIgorbXNnc3RyICLlronoo4XniYjmnKwiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI4OQorbXNnaWQgIkF2YWlsLnZlciIKK21zZ3N0ciAi5Y+v55So54mI5pysIgorCisjfiBtc2dpZCAicmV0dXJuZWQgZXJyb3IgZXhpdCBzdGF0dXMgJWQuXG4iCisjfiBtc2dzdHIgIui/lOWbnuS6humUmeivr+eahOmAgOWHuueKtuaAgeeggSAlZOOAglxuIgorCisjfiBtc2dpZCAid2FzIGludGVycnVwdGVkLlxuIgorI34gbXNnc3RyICLooqvkuK3mlq3kuobjgIJcbiIKKworI34gbXNnaWQgIndhcyB0ZXJtaW5hdGVkIGJ5IGEgc2lnbmFsOiAlcy5cbiIKKyN+IG1zZ3N0ciAi6KKr5LiA5Liq5L+h5Y+35Lit5pat5LqG77yaJXPjgIJcbiIKKworI34gbXNnaWQgIihJdCBsZWZ0IGEgY29yZWR1bXAuKVxuIgorI34gbXNnc3RyICIo5a6DIGNvcmVkdW1wIOS6huOAgilcbiIKKworI34gbXNnaWQgImZhaWxlZCB3aXRoIGFuIHVua25vd24gd2FpdCByZXR1cm4gY29kZSAlZC5cbiIKKyN+IG1zZ3N0ciAi5Zug5Li65b6X5Yiw5LqG5LiA5Liq5LiN6IO96K+G5Yir55qE6L+U5Zue56CBICVkIOiAjOS9v+aTjeS9nOWksei0peOAglxuIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHJ1biAlLjI1MHMgcHJvY2VzcyBgJS4yNTBzJyIKKyN+IG1zZ3N0ciAi5peg5rOV6L+Q6KGMICUuMjUwcyDov5vnqIvigJwlLjI1MHPigJ0iCisKKyN+IG1zZ2lkICJmYWlsZWQgY29uZmlnIgorI34gbXNnc3RyICLorr7nva7lpLHotKUiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gd2FpdCBmb3IgJS4yNTBzIgorI34gbXNnc3RyICLml6Dms5XnrYnlvoXlrZDov5vnqIvigJwlLjI1MHPigJ0iCisKKyN+IG1zZ2lkICJnb3Qgd3JvbmcgY2hpbGQncyBzdGF0dXMgLSBhc2tlZCBmb3IgJWxkLCBnb3QgJWxkIgorI34gbXNnc3RyICLojrflvpfkuoblhbblroPlrZDov5vnqIvnmoTnirbmgIEgLSDmnKzmg7PopoEgJWxkIOeahO+8jOe7k+aenOaLv+WIsOS6hiAlbGQg55qEIgorCisjfiBtc2dpZCAiUmVjb21tZW5kZWQiCisjfiBtc2dzdHIgIuW7uuiuriIKKworI34gbXNnaWQgIkNvbnRyaWIiCisjfiBtc2dzdHIgIui0oeeMriIKKworI34gbXNnaWQgIlJlYyIKKyN+IG1zZ3N0ciAi6I2QIgorCisjfiBtc2dpZCAiQ3RiIgorI34gbXNnc3RyICLnjK4iCisKKyN+IG1zZ2lkICIiCisjfiAiYmFzZWxpc3Q6OnN0YXJ0ZGlzcGxheSgpIGRvbmUgLi4uXG4iCisjfiAiXG4iCisjfiAiIHhtYXg9JWQsIHltYXg9JWQ7XG4iCisjfiAiXG4iCisjfiAiIHRpdGxlX2hlaWdodD0lZCwgY29saGVhZHNfaGVpZ2h0PSVkLCBsaXN0X2hlaWdodD0lZDtcbiIKKyN+ICIgdGhpc3N0YXRlX2hlaWdodD0lZCwgaW5mb19oZWlnaHQ9JWQsIHdoYXRpbmZvX2hlaWdodD0lZDtcbiIKKyN+ICJcbiIKKyN+ICIgY29saGVhZHNfcm93PSVkLCB0aGlzc3RhdGVfcm93PSVkLCBpbmZvX3Jvdz0lZDtcbiIKKyN+ICIgd2hhdGluZm9fcm93PSVkLCBsaXN0X3Jvdz0lZDtcbiIKKyN+ICJcbiIKKyN+IG1zZ3N0ciAiIgorI34gImJhc2VsaXN0OjpzdGFydGRpc3BsYXkoKSBkb25lIC4uLlxuIgorI34gIlxuIgorI34gIiB4bWF4PSVkLCB5bWF4PSVkO1xuIgorI34gIlxuIgorI34gIiB0aXRsZV9oZWlnaHQ9JWQsIGNvbGhlYWRzX2hlaWdodD0lZCwgbGlzdF9oZWlnaHQ9JWQ7XG4iCisjfiAiIHRoaXNzdGF0ZV9oZWlnaHQ9JWQsIGluZm9faGVpZ2h0PSVkLCB3aGF0aW5mb19oZWlnaHQ9JWQ7XG4iCisjfiAiXG4iCisjfiAiIGNvbGhlYWRzX3Jvdz0lZCwgdGhpc3N0YXRlX3Jvdz0lZCwgaW5mb19yb3c9JWQ7XG4iCisjfiAiIHdoYXRpbmZvX3Jvdz0lZCwgbGlzdF9yb3c9JWQ7XG4iCisjfiAiXG4iCisKKyN+IG1zZ2lkICJbbm9uZV0iCisjfiBtc2dzdHIgIlvml6BdIgorCisjfiBtc2dpZCAiZXJyb3IgdW4tY2F0Y2hpbmcgc2lnbmFsICVkOiAlc1xuIgorI34gbXNnc3RyICLlj5HnlJ/plJnor6/vvIzmnInml6Dms5XmjZXojrfnmoTkv6Hlj7cgJWTvvJolc1xuIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGlnbm9yZSBzaWduYWwgJWQgYmVmb3JlIHJ1bm5pbmcgJS4yNTBzIgorI34gbXNnc3RyICLml6Dms5XlnKjov5DooYwgJTIkLjI1MHMg5LmL5YmN5b+955Wl5L+h5Y+3ICUxJGQiCisKKyN+IG1zZ2lkICIobm8gY2xpZW50ZGF0YSkiCisjfiBtc2dzdHIgIijml6DlrqLmiLfnq6/mlbDmja4pIgorCisjfiBtc2dpZCAiPG51bGw+IgorI34gbXNnc3RyICI85pegPiIKKworI34gbXNnaWQgImludGVycmVsYXRpb25zaGlwcyBhZmZlY3RpbmcgIgorI34gbXNnc3RyICLova/ku7bljIXnmoTnm7jkupLlhbPns7vpl67popjnibXov57liLDkuoYiCisKKyN+IG1zZ2lkICJkZXNjcmlwdGlvbiBvZiAiCisjfiBtc2dzdHIgIuS4i+mdoui9r+S7tuWMheeahOS7i+e7jSIKKworI34gbXNnaWQgImRlc2NyaXB0aW9uIgorI34gbXNnc3RyICLku4vnu40iCisKKyN+IG1zZ2lkICJjdXJyZW50bHkgaW5zdGFsbGVkIGNvbnRyb2wgaW5mbyIKKyN+IG1zZ3N0ciAi5b2T5YmN5a6J6KOF55qE5o6n5Yi25L+h5oGvIgorCisjfiBtc2dpZCAiYXZhaWxhYmxlIHZlcnNpb24gb2YgY29udHJvbCBpbmZvIGZvciAiCisjfiBtc2dzdHIgIuS4i+mdoui9r+S7tuWMheeahOWPr+eUqOaOp+WItuS/oeaBr+eahOeJiOacrCIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby96aF9UVy5nbW8gYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vemhfVFcuZ21vCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmI3ZTE5ZDYKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2RzZWxlY3QvcG8vemhfVFcuZ21vCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby96aF9UVy5wbyBiL2Rwa2ctMS4xNi4xLjEvZHNlbGVjdC9wby96aF9UVy5wbwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42MzMxMTY5Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9kc2VsZWN0L3BvL3poX1RXLnBvCkBAIC0wLDAgKzEsMTY4NyBAQAorIyBUcmFkaXRpb25hbCBDaGluZXNlIHRyYW5zbGF0aW9uIHRvIGRwa2cuCisjIENvcHlyaWdodCAoQykgMjAwNCBUSEUgUEFDS0FHRSdTIENPUFlSSUdIVCBIT0xERVIKKyMgVGhpcyBmaWxlIGlzIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBzYW1lIGxpY2Vuc2UgYXMgdGhlIFBBQ0tBR0UgcGFja2FnZS4KKyMKKyMKK21zZ2lkICIiCittc2dzdHIgIiIKKyJQcm9qZWN0LUlkLVZlcnNpb246IGRwa2cgMS4xM1xuIgorIlJlcG9ydC1Nc2dpZC1CdWdzLVRvOiBkZWJpYW4tZHBrZ0BsaXN0cy5kZWJpYW4ub3JnXG4iCisiUE9ULUNyZWF0aW9uLURhdGU6IDIwMTEtMTAtMTQgMDc6MTErMDIwMFxuIgorIlBPLVJldmlzaW9uLURhdGU6IDIwMDYtMDItMTcgMDg6NTgrMDIwMFxuIgorIkxhc3QtVHJhbnNsYXRvcjogQXNobyBZZWggPGFzaG9AZGViaWFuLm9yZy50dz5cbiIKKyJMYW5ndWFnZS1UZWFtOiBDaGluZXNlICh0cmFkaXRpb25hbCkgPHpoLWwxMG5AbGludXgub3JnLnR3PlxuIgorIkxhbmd1YWdlOiB6aF9UV1xuIgorIk1JTUUtVmVyc2lvbjogMS4wXG4iCisiQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PVVURi04XG4iCisiQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdFxuIgorIlgtUG9lZGl0LUxhbmd1YWdlOiBDaGluZXNlXG4iCisiWC1Qb2VkaXQtQ291bnRyeTogVEFJV0FOXG4iCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MTI1Cittc2dpZCAiU2VhcmNoIGZvciA/ICIKK21zZ3N0ciAi5oOz5pCc5bCL5LuA6bq877yfIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE0NworbXNnaWQgIkVycm9yOiAiCittc2dzdHIgIumMr+iqpO+8miIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxNzgKK21zZ2lkICJIZWxwOiAiCittc2dzdHIgIuW5q+WKqe+8miIKKworIzogZHNlbGVjdC9iYXNlY21kcy5jYzoxODQKK21zZ2lkICJQcmVzcyA/IGZvciBoZWxwIG1lbnUsIC4gZm9yIG5leHQgdG9waWMsIDxzcGFjZT4gdG8gZXhpdCBoZWxwLiIKK21zZ3N0ciAi5oyJID8g5Y+v5Lul5b2I5Ye65bmr5Yqp6YG45Zau77yM55SoIDxzcGFjZT4g6IO96YCy5YWl5LiL5YCL5Li76aGM5Lim6Zui6ZaL5bmr5Yqp55Wr6Z2i44CCIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE5MQorbXNnaWQgIkhlbHAgaW5mb3JtYXRpb24gaXMgYXZhaWxhYmxlIHVuZGVyIHRoZSBmb2xsb3dpbmcgdG9waWNzOiIKK21zZ3N0ciAi5oKo5Y+v542y5b6X5pyJ6Zec5LiL5YiX5Li76aGM55qE5bmr5Yqp6KiK5oGv77yaIgorCisjOiBkc2VsZWN0L2Jhc2VjbWRzLmNjOjE5OQorbXNnaWQgIiIKKyJQcmVzcyBhIGtleSBmcm9tIHRoZSBsaXN0IGFib3ZlLCA8c3BhY2U+IG9yIGBxJyB0byBleGl0IGhlbHAsXG4iCisiICBvciBgLicgKGZ1bGwgc3RvcCkgdG8gcmVhZCBlYWNoIGhlbHAgcGFnZSBpbiB0dXJuLiAiCittc2dzdHIgIiIKKyLoq4vmjInkuIrpnaLliJfooajkuK3nmoTmjInpjbXvvIw8c3BhY2U+IOaIluKAnHHigJ3lj6/pgIDlh7rluavliqnnlYzpnaLvvIxcbiIKKyLmiJbogIXnlKjigJwu4oCdKGZ1bGwgc3RvcCnkvobkvp3mrKHplrHoroDluavliqnpoIHpnaLjgIIiCisKKyM6IGRzZWxlY3QvYmFzZWNtZHMuY2M6MjA1Cittc2dpZCAiZXJyb3IgcmVhZGluZyBrZXlib2FyZCBpbiBoZWxwIgorbXNnc3RyICLlnKjluavliqnnlYzpnaLoroDlj5bpjbXnm6TovLjlhaXmmYLlh7rpjK8iCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6NTcKK21zZ2lkICJpb2N0bChUSU9DR1dJTlNaKSBmYWlsZWQiCittc2dzdHIgImlvY3RsKFRJT0NHV0lOU1opIOWkseaVlyIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo2MAorbXNnaWQgImRvdXBkYXRlIGluIFNJR1dJTkNIIGhhbmRsZXIgZmFpbGVkIgorbXNnc3RyICLlnKggU0lHV0lOQ0gg6JmV55CG56iL5byP5LitIGRvdXBkYXRlIOWkseaVl+S6hiIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzo2NworbXNnaWQgImZhaWxlZCB0byByZXN0b3JlIG9sZCBTSUdXSU5DSCBzaWdhY3QiCittc2dzdHIgIuaBouW+qeWOn+WFiOeahCBTSUdXSU5DSCBzaWdhY3Qg5aSx5pWXIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjY5Cittc2dpZCAiZmFpbGVkIHRvIHJlc3RvcmUgb2xkIHNpZ25hbCBtYXNrIgorbXNnc3RyICLmgaLlvqnljp/lhYjnmoQgc2lnbmFsIG1hc2sg5aSx5pWXIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjc5Cittc2dpZCAiZmFpbGVkIHRvIGdldCBvbGQgc2lnbmFsIG1hc2siCittc2dzdHIgIuaTt+WPluWOn+WFiOeahCBzaWduYWwgbWFzayDlpLHmlZciCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6ODAKK21zZ2lkICJmYWlsZWQgdG8gZ2V0IG9sZCBTSUdXSU5DSCBzaWdhY3QiCittc2dzdHIgIuaTt+WPluWOn+WFiOeahCBTSUdXSU5DSCBzaWdhY3Qg5Ye66YyvIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjg0Cittc2dpZCAiZmFpbGVkIHRvIGJsb2NrIFNJR1dJTkNIIgorbXNnc3RyICLnhKHms5XpmLvloZ4gU0lHV0lOQ0gg5L+h6JmfIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjg5Cittc2dpZCAiZmFpbGVkIHRvIHNldCBuZXcgU0lHV0lOQ0ggc2lnYWN0IgorbXNnc3RyICLoqK3lrprmlrDnmoQgU0lHV0lOQ0ggc2lnYWN0IOWkseaVlyIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxMjYKK21zZ2lkICJmYWlsZWQgdG8gYWxsb2NhdGUgY29sb3VyIHBhaXIiCittc2dzdHIgIuWIhumFjemhj+iJsuWwjeWkseaVlyIKKworIzogZHNlbGVjdC9iYXNlbGlzdC5jYzoxNjcKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHRpdGxlIHdpbmRvdyIKK21zZ3N0ciAi5bu656uL5qiZ6aGM6KaW56qX5aSx5pWXIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE3MQorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgd2hhdGluZm8gd2luZG93IgorbXNnc3RyICLlu7rnq4sgd2hhdGluZm8g6KaW56qX5aSx5pWXIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE3NQorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgYmFzZWxpc3QgcGFkIgorbXNnc3RyICLnhKHms5Xlu7rnq4vlkI3nqLHliJfooajnmoTlsI/oppbnqpciCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTc4Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBoZWFkaW5nIHBhZCIKK21zZ3N0ciAi54Sh5rOV5bu656uL5qiZ6aGM5bCP6KaW56qXIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE4MgorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgdGhpc3N0YXRlIHBhZCIKK21zZ3N0ciAi54Sh5rOV5bu656uLIHRoaXNzdGF0ZSDlsI/oppbnqpciCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MTg2Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBpbmZvIHBhZCIKK21zZ3N0ciAi54Sh5rOV5bu656uL55u46Zec6KiK5oGv5bCP6KaW56qXIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjE5MQorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgcXVlcnkgd2luZG93IgorbXNnc3RyICLlu7rnq4vmn6XoqaLoppbnqpflpLHmlZciCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MjU1CisjLCBmdXp6eQorbXNnaWQgIktleWJpbmRpbmdzIgorbXNnc3RyICLmjInpjbXpl5zoga/oqK3lrpoiCisKKyM6IGRzZWxlY3QvYmFzZWxpc3QuY2M6MzAzCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgLS0gJWQlJSwgcHJlc3MgIgorbXNnc3RyICIgIC0tICVkJSXvvIzoq4vmjIkgIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjMwNgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBmb3IgbW9yZSIKK21zZ3N0ciAiJXMg57m857qM5b6A5LiL6K6AIgorCisjOiBkc2VsZWN0L2Jhc2VsaXN0LmNjOjMxMAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyB0byBnbyBiYWNrIgorbXNnc3RyICIlcyDlj6/ku6Xot7Plm57ljp/kvobnmoTkvY3nva4iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6NzgKK21zZ2lkICJbbm90IGJvdW5kXSIKK21zZ3N0ciAiW+acquioreWumuaMiemNtemAo+e1kF0iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiW3VuazogJWRdIgorbXNnc3RyICJb5pyq55+l77yaJWRdIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjEzOQorbXNnaWQgIlNjcm9sbCBvbndhcmRzIHRocm91Z2ggaGVscC9pbmZvcm1hdGlvbiIKK21zZ3N0ciAi5Zyo5bmr5Yqp5paH5qqU5oiW55u46Zec6KiK5oGv5Lit5ru+5YuV5ruR6bygIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0MAorbXNnaWQgIlNjcm9sbCBiYWNrd2FyZHMgdGhyb3VnaCBoZWxwL2luZm9ybWF0aW9uIgorbXNnc3RyICLlnKjluavliqnmiJbnm7jpl5zoqIrmga/kuK3mjbLli5XpoIHpnaIiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQxCittc2dpZCAiTW92ZSB1cCIKK21zZ3N0ciAi5LiK56e7IgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0MgorbXNnaWQgIk1vdmUgZG93biIKK21zZ3N0ciAi5LiL56e7IgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0MworbXNnaWQgIkdvIHRvIHRvcCBvZiBsaXN0IgorbXNnc3RyICLot7PliLDliJfooajpoILnq68iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ0Cittc2dpZCAiR28gdG8gZW5kIG9mIGxpc3QiCittc2dzdHIgIui3s+WIsOWIl+ihqOW6leerryIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNDUKK21zZ2lkICJSZXF1ZXN0IGhlbHAgKGN5Y2xlIHRocm91Z2ggaGVscCBzY3JlZW5zKSIKK21zZ3N0ciAi6KuL5rGC5bmr5YqpKOW+queSsOWIh+aPm+W5q+WKqeeVjOmdoikiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ2Cittc2dpZCAiQ3ljbGUgdGhyb3VnaCBpbmZvcm1hdGlvbiBkaXNwbGF5cyIKK21zZ3N0ciAi5b6q55Kw5YiH5o+b6KiK5oGv6aGv56S6IgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0NworbXNnaWQgIlJlZHJhdyBkaXNwbGF5IgorbXNnc3RyICLph43nlavonqLluZUiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTQ4Cittc2dpZCAiU2Nyb2xsIG9ud2FyZHMgdGhyb3VnaCBsaXN0IGJ5IDEgbGluZSIKK21zZ3N0ciAi5Zyo5YiX6KGo5Lit5ZCR5YmN5ru+5YuV5LiA6KGMIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE0OQorbXNnaWQgIlNjcm9sbCBiYWNrd2FyZHMgdGhyb3VnaCBsaXN0IGJ5IDEgbGluZSIKK21zZ3N0ciAi5Zyo5YiX6KGo5Lit5ZCR5b6M5ru+5YuV5LiA6KGMIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1MAorbXNnaWQgIlNjcm9sbCBvbndhcmRzIHRocm91Z2ggaGVscC9pbmZvcm1hdGlvbiBieSAxIGxpbmUiCittc2dzdHIgIuWcqOW5q+WKqeaIluebuOmXnOioiuaBr+S4reWQkeWJjea7vuWLleS4gOihjCIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTEKK21zZ2lkICJTY3JvbGwgYmFja3dhcmRzIHRocm91Z2ggaGVscC9pbmZvcm1hdGlvbiBieSAxIGxpbmUiCittc2dzdHIgIuWcqOW5q+WKqeaIluebuOmXnOioiuaBr+S4reWQkeW+jOa7vuWLleS4gOihjCIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTIKK21zZ2lkICJTY3JvbGwgb253YXJkcyB0aHJvdWdoIGxpc3QiCittc2dzdHIgIuWcqOWIl+ihqOS4reWQkeWJjea7vuWLlSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNTMKK21zZ2lkICJTY3JvbGwgYmFja3dhcmRzIHRocm91Z2ggbGlzdCIKK21zZ3N0ciAi5Zyo5YiX6KGo5Lit5ZCR5YmN5ru+5YuVIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1NgorbXNnaWQgIk1hcmsgcGFja2FnZShzKSBmb3IgaW5zdGFsbGF0aW9uIgorbXNnc3RyICLmiorlpZfku7bmqJnoqJjngrrigJzlsIfopoHlronoo53igJ0iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTU3Cittc2dpZCAiTWFyayBwYWNrYWdlKHMpIGZvciBkZWluc3RhbGxhdGlvbiIKK21zZ3N0ciAi5oqK5aWX5Lu25qiZ6KiY54K64oCc5bCH6KaB56e76Zmk4oCdIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1OAorbXNnaWQgIk1hcmsgcGFja2FnZShzKSBmb3IgZGVpbnN0YWxsIGFuZCBwdXJnZSIKK21zZ3N0ciAi5oqK5aWX5Lu25qiZ6KiY54K656e76Zmk4oCdIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE1OQorbXNnaWQgIk1ha2UgaGlnaGxpZ2h0IG1vcmUgc3BlY2lmaWMiCittc2dzdHIgIuiuk+mrmOS6rumhr+ekuuabtOaYk+itmOWIpSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjAKK21zZ2lkICJNYWtlIGhpZ2hsaWdodCBsZXNzIHNwZWNpZmljIgorbXNnc3RyICLorpPpq5jkuq7poa/npLrovIPkuI3mmJPorZjliKUiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTYxCittc2dpZCAiU2VhcmNoIGZvciBhIHBhY2thZ2Ugd2hvc2UgbmFtZSBjb250YWlucyBhIHN0cmluZyIKK21zZ3N0ciAi5pCc5bCL5ZCN56ix5ZCr5pyJ54m55a6a5a2X5Liy55qE5aWX5Lu2IgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2MgorbXNnaWQgIlJlcGVhdCBsYXN0IHNlYXJjaC4iCittc2dzdHIgIumHjeW+qeS4iuasoeeahOaQnOWwi+OAgiIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjMKK21zZ2lkICJTd2FwIHNvcnQgb3JkZXIgcHJpb3JpdHkvc2VjdGlvbiIKK21zZ3N0ciAi6Kq/5pW05o6S5bqP55qE5L6d5pOaIC0g5YSq5YWI562J57SaL+mhnuWIpSIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjQKK21zZ2lkICJRdWl0LCBjb25maXJtaW5nLCBhbmQgY2hlY2tpbmcgZGVwZW5kZW5jaWVzIgorbXNnc3RyICLpgIDlh7rvvIzkuKbnorroqo3mk43kvZzogIzkuJTlsI3nm7jkvp3llY/poYzpgLLooYzlvqnmn6UiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY1Cittc2dpZCAiUXVpdCwgY29uZmlybWluZyB3aXRob3V0IGNoZWNrIgorbXNnc3RyICLpgIDlh7rvvIzkuKbnorroqo3mk43kvZzogIzkuJTkuI3lho3mqqLmn6UiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTY2Cittc2dpZCAiUXVpdCwgcmVqZWN0aW5nIGNvbmZsaWN0L2RlcGVuZGVuY3kgc3VnZ2VzdGlvbnMiCittc2dzdHIgIumAgOWHuu+8jOS4puaLkue1leaciemXnOihneeqgeWSjOebuOS+neWVj+mhjOeahOW7uuitsCIKKworIzogZHNlbGVjdC9iaW5kaW5ncy5jYzoxNjcKK21zZ2lkICJBYm9ydCAtIHF1aXQgd2l0aG91dCBtYWtpbmcgY2hhbmdlcyIKK21zZ3N0ciAi5Lit5q2i5pON5L2cIC0g5LiN5L2c5Lu75L2V5pu05pS55Lim6YCA5Ye6IgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2OAorbXNnaWQgIlJldmVydCB0byBvbGQgc3RhdGUgZm9yIGFsbCBwYWNrYWdlcyIKK21zZ3N0ciAi5oqK5omA5pyJ5aWX5Lu255qE54uA5oWL5oGi5b6p5Yiw5L+u5pS55YmNIgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE2OQorbXNnaWQgIlJldmVydCB0byBzdWdnZXN0ZWQgc3RhdGUgZm9yIGFsbCBwYWNrYWdlcyIKK21zZ3N0ciAi5oqK5omA5pyJ5aWX5Lu255qE54uA5oWL5oGi5b6p5Yiw5bu66K2w5YC8IgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE3MAorbXNnaWQgIlJldmVydCB0byBkaXJlY3RseSByZXF1ZXN0ZWQgc3RhdGUgZm9yIGFsbCBwYWNrYWdlcyIKK21zZ3N0ciAi5oqK5omA5pyJ5aWX5Lu255qE54uA5oWL5oGi5b6p5Yiw5omA6KaB5rGC55qE5YC8IgorCisjOiBkc2VsZWN0L2JpbmRpbmdzLmNjOjE3MQorIywgZnV6enkKK21zZ2lkICJSZXZlcnQgdG8gY3VycmVudGx5IGluc3RhbGxlZCBzdGF0ZSBmb3IgYWxsIHBhY2thZ2VzIgorbXNnc3RyICLmiormiYDmnInlpZfku7bnmoTni4DmhYvmgaLlvqnliLDmiYDopoHmsYLnmoTlgLwiCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTc0Cittc2dpZCAiU2VsZWN0IGN1cnJlbnRseS1oaWdobGlnaHRlZCBhY2Nlc3MgbWV0aG9kIgorbXNnc3RyICLpgbjmk4fnm67liY3pq5jkuq7poa/npLrnmoTlrZjlj5bmlrnlvI8iCisKKyM6IGRzZWxlY3QvYmluZGluZ3MuY2M6MTc1Cittc2dpZCAiUXVpdCB3aXRob3V0IGNoYW5naW5nIHNlbGVjdGVkIGFjY2VzcyBtZXRob2QiCittc2dzdHIgIumAgOWHuueoi+W6j++8jOiAjOS4lOS4jeS/ruaUueaJgOmBuOeahOWtmOWPluaWueW8jyIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoyOQorbXNnaWQgIktleXN0cm9rZXMiCittc2dzdHIgIuaMiemNteaTjeS9nCIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoyOQorIywgZnV6enkKK21zZ2lkICIiCisiTW90aW9uIGtleXM6IE5leHQvUHJldmlvdXMsIFRvcC9FbmQsIFVwL0Rvd24sIEJhY2t3YXJkcy9Gb3J3YXJkczpcbiIKKyIgIGosIERvd24tYXJyb3cgICAgICAgICBrLCBVcC1hcnJvdyAgICAgICAgICAgICBtb3ZlIGhpZ2hsaWdodFxuIgorIiAgTiwgUGFnZS1kb3duLCBTcGFjZSAgIFAsIFBhZ2UtdXAsIEJhY2tzcGFjZSAgIHNjcm9sbCBsaXN0IGJ5IDEgcGFnZVxuIgorIiAgXm4gICAgICAgICAgICAgICAgICAgIF5wICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBsaXN0IGJ5IDEgbGluZVxuIgorIiAgdCwgSG9tZSAgICAgICAgICAgICAgIGUsIEVuZCAgICAgICAgICAgICAgICAgIGp1bXAgdG8gdG9wL2VuZCBvZiBsaXN0XG4iCisiICB1ICAgICAgICAgICAgICAgICAgICAgZCAgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGluZm8gYnkgMSBwYWdlXG4iCisiICBedSAgICAgICAgICAgICAgICAgICAgXmQgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGluZm8gYnkgMSBsaW5lXG4iCisiICBCLCBMZWZ0LWFycm93ICAgICAgICAgRiwgUmlnaHQtYXJyb3cgICAgICAgICAgcGFuIGRpc3BsYXkgYnkgMS8zIHNjcmVlblxuIgorIiAgXmIgICAgICAgICAgICAgICAgICAgIF5mICAgICAgICAgICAgICAgICAgICAgIHBhbiBkaXNwbGF5IGJ5IDEgY2hhcmFjdGVyXG4iCisiXG4iCisiTWFyayBwYWNrYWdlcyBmb3IgbGF0ZXIgcHJvY2Vzc2luZzpcbiIKKyIgKywgSW5zZXJ0ICBpbnN0YWxsIG9yIHVwZ3JhZGUgICAgICA9LCBIICBob2xkIGluIHByZXNlbnQgc3RhdGVcbiIKKyIgLSwgRGVsZXRlICByZW1vdmUgICAgICAgICAgICAgICAgICA6LCBHICB1bmhvbGQ6IHVwZ3JhZGUgb3IgbGVhdmUgIgorInVuaW5zdGFsbGVkXG4iCisiIF8gICAgICAgICAgcmVtb3ZlICYgcHVyZ2UgY29uZmlnXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTWlzY2VsbGFuZW91czpcbiIKKyJRdWl0LCBleGl0LCBvdmVyd3JpdGUgKG5vdGUgY2FwaXRhbHMhKTogICAgICAgPywgRjEgcmVxdWVzdCBoZWxwIChhbHNvICIKKyJIZWxwKVxuIgorIiBSZXR1cm4gIENvbmZpcm0sIHF1aXQgKGNoZWNrIGRlcGVuZGVuY2llcykgICBpLCBJICB0b2dnbGUvY3ljbGUgaW5mbyAiCisiZGlzcGxheXNcbiIKKyIgICBRICAgICBDb25maXJtLCBxdWl0IChvdmVycmlkZSBkZXAucykgICAgICAgbywgTyAgY3ljbGUgdGhyb3VnaCBzb3J0ICIKKyJvcHRpb25zXG4iCisiIFgsIEVzYyAgZVhpdCwgYWJhbmRvbmluZyBhbnkgY2hhbmdlcyBtYWRlICAgIHYsIFYgIGNoYW5nZSBzdGF0dXMgZGlzcGxheSAiCisib3B0c1xuIgorIiAgIFIgICAgIFJldmVydCB0byBzdGF0ZSBiZWZvcmUgdGhpcyBsaXN0ICAgICAgXmwgICByZWRyYXcgZGlzcGxheVxuIgorIiAgIFUgICAgIHNldCBhbGwgdG8gc1VnZ2VzdGVkIHN0YXRlICAgICAgICAgICAgIC8gICBzZWFyY2ggKFJldHVybiB0byAiCisiY2FuY2VsKVxuIgorIiAgIEQgICAgIHNldCBhbGwgdG8gRGlyZWN0bHkgcmVxdWVzdGVkIHN0YXRlICBuLCBcXCAgcmVwZWF0IGxhc3Qgc2VhcmNoXG4iCittc2dzdHIgIiIKKyLnp7vli5XmjInpjbXvvJrkuIvkuIDlgIsv5YmN5LiA5YCL77yM6aCC56uvL+W6leerr++8jOS4iuenuy/kuIvnp7vvvIzlvoznp7sv5YmN56e777yaXG4iCisiICBu77yM5LiL566t6aCtICAgICAgICAgICAgIHDvvIzkuIrnrq3poK0gICAgICAgICAgICAgICDnp7vli5Xpq5jkuq7poa/npLrmiYDlnKjnmoTlnLDmlrlcbiIKKyIgIE7vvIxQYWdlLWRvd27vvIznqbrmoLwgICAgUO+8jFBhZ2UtdXDvvIxCYWNrc3BhY2UgICDorpPliJfooajmu77li5XkuIDpoIFcbiIKKyIgIF5uICAgICAgICAgICAgICAgICAgICBecCAgICAgICAgICAgICAgICAgICAgICDorpPliJfooajmu77li5XkuIDooYxcbiIKKyIgIHTvvIxIb21lICAgICAgICAgICAgICAgZe+8jEVuZCAgICAgICAgICAgICAgICAgIOi3s+WIsOWIl+ihqOeahOmgguerry/lupXnq69cbiIKKyIgIHUgICAgICAgICAgICAgICAgICAgICBkICAgICAgICAgICAgICAgICAgICAgICDorpPnm7jpl5zoqIrmga/mu77li5XkuIDpoIFcbiIKKyIgIF51ICAgICAgICAgICAgICAgICAgICBeZCAgICAgICAgICAgICAgICAgICAgICDorpPnm7jpl5zoqIrmga/mu77li5XkuIDooYxcbiIKKyIgIELvvIzlt6bnrq3poK0gICAgICAgICAgICAgRu+8jOWPs+euremgrSAgICAgICAgICAgICAgIOiuk+mhr+ekuuWFp+WuueW3puWPs+W5s+enuyAxLzMg6J6i5bmV5a+sIgorIuW6plxuIgorIiAgXmIgICAgICAgICAgICAgICAgICAgIF5mICAgICAgICAgICAgICAgICAgICAgIOiuk+mhr+ekuuWFp+WuueW3puWPs+W5s+enu+S4gOWAi+Wtl+WFg+WvrCIKKyLluqZcbiIKKyJcbiIKKyLngrrlpZfku7bkvZzkuIrmqJnoqJjvvIzlvoXkuYvlvozlho3kvZzomZXnkIbvvJpcbiIKKyIgK++8jEluc2VydCAgIOWuieijneaIluiAheWNh+e0miAgICAgICAgICAgPe+8jEggIOS7pOWFtuS/neaMgeeVtuWJjeeLgOaFi1xuIgorIiAtIO+8jERlbGV0ZSAg5Yiq6ZmkICAgICAgICAgICAgICAgICAgIDosIEcgIOWPlua2iOS/neaMge+8muWNh+e0muaIluiAheS7jeeEtuS4jeWuieijnVxuIgorIiBfICAgICAgICAgICDliKrpmaTkuKbmuIXpmaToqK3lrppcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDlhbblroPvvJpcbiIKKyLpgIDlh7rvvIzmlLnli5Xni4DmhYso5rOo5oSP77yM6YO95piv5aSn5a+r77yBKe+8miAgICAgICAgICAgID8sIEYxICAgICDoq4vmsYLluavliqlcbiIKKyIgIGVudGVyICAgIOeiuuiqjeS4pumAgOWHuijlvqnmn6Xnm7jkvp3llY/poYwpICAgICAgICAgICAgaSwgSSAgICAgIOWIh+aPm+aIlua7vuWLleebuOmXnOioiuaBr+eahCIKKyLpoa/npLpcbiIKKyIgICBRICAgICDnorroqo3kuKbpgIDlh7oo5b+955Wl55u45L6d5ZWP6aGMKSAgICAgICAgICAgICBvLCBPICAgICAg5ru+5YuV5o6S5bqP55qE5ZCE5YCL6YG46aCFXG4iCisiIFgsIEVzYyAg6YCA5Ye656iL5bqP77yM5oqK5LmL5YmN55qE5pS55YuV5L2c5buiICAgICAgICAgICB2LCBWICAgICAg5L+u5pS554uA5oWL6aGv56S655qE6YG46aCFXG4iCisiICAgUiAgICAg5oqK5omA5pyJ5aWX5Lu255qE54uA5oWL5oGi5b6p5Yiw5L+u5pS55YmNICAgICAgIF5sICAgICAgICDph43nlavonqLluZVcbiIKKyIgICBVICAgICDmiormiYDmnInlpZfku7bnmoTni4DmhYvmlLnmiJDlu7rorbDlgLwgICAgICAgICAvICAgICAgICAg5pCc5bCLICjnlKhlbnRlcuWPlua2iOaQnCIKKyLntKIpXG4iCisiICAgRCAgICAg5oqK5omA5pyJ5aWX5Lu255qE54uA5oWL5pS55oiQ5Yiw5omA6KaB5rGC55qE5YC8ICAgXFwgICAgICAgIOmHjeW+qeS4iuasoeeahOaQnOWwi1xuIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjU1Cittc2dpZCAiSW50cm9kdWN0aW9uIHRvIHBhY2thZ2Ugc2VsZWN0aW9ucyIKK21zZ3N0ciAi5aWX5Lu26YG45pOH55WM6Z2i57Ch5LuLIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjU1Cittc2dpZCAiIgorIldlbGNvbWUgdG8gZHNlbGVjdCdzIG1haW4gcGFja2FnZSBsaXN0aW5nLlxuIgorIlxuIgorIllvdSB3aWxsIGJlIHByZXNlbnRlZCB3aXRoIGEgbGlzdCBvZiBwYWNrYWdlcyB3aGljaCBhcmUgaW5zdGFsbGVkIG9yICIKKyJhdmFpbGFibGVcbiIKKyJmb3IgaW5zdGFsbGF0aW9uLiAgWW91IGNhbiBuYXZpZ2F0ZSBhcm91bmQgdGhlIGxpc3QgdXNpbmcgdGhlIGN1cnNvciBrZXlzLFxuIgorIm1hcmsgcGFja2FnZXMgZm9yIGluc3RhbGxhdGlvbiAodXNpbmcgYCsnKSBvciBkZWluc3RhbGxhdGlvbiAodXNpbmcgYC0nKS5cbiIKKyJQYWNrYWdlcyBjYW4gYmUgbWFya2VkIGVpdGhlciBzaW5nbHkgb3IgaW4gZ3JvdXBzOyBpbml0aWFsbHkgeW91IHdpbGwgc2VlICIKKyJ0aGF0XG4iCisidGhlIGxpbmUgYEFsbCBwYWNrYWdlcycgaXMgc2VsZWN0ZWQuICBgKycsIGAtJyBhbmQgc28gb24gd2lsbCBhZmZlY3QgYWxsICIKKyJ0aGVcbiIKKyJwYWNrYWdlcyBkZXNjcmliZWQgYnkgdGhlIGhpZ2hsaWdodGVkIGxpbmUuXG4iCisiXG4iCisiU29tZSBvZiB5b3VyIGNob2ljZXMgd2lsbCBjYXVzZSBjb25mbGljdHMgb3IgZGVwZW5kZW5jeSBwcm9ibGVtczsgeW91IHdpbGwgIgorImJlXG4iCisiZ2l2ZW4gYSBzdWItbGlzdCBvZiB0aGUgcmVsZXZhbnQgcGFja2FnZXMsIHNvIHRoYXQgeW91IGNhbiBzb2x2ZSB0aGUgIgorInByb2JsZW1zLlxuIgorIlxuIgorIllvdSBzaG91bGQgcmVhZCB0aGUgbGlzdCBvZiBrZXlzIGFuZCB0aGUgZXhwbGFuYXRpb25zIG9mIHRoZSBkaXNwbGF5LlxuIgorIk11Y2ggb24tbGluZSBoZWxwIGlzIGF2YWlsYWJsZSwgcGxlYXNlIG1ha2UgdXNlIG9mIGl0IC0gcHJlc3MgYD8nIGF0XG4iCisiYW55IHRpbWUgZm9yIGhlbHAuXG4iCisiXG4iCisiV2hlbiB5b3UgaGF2ZSBmaW5pc2hlZCBzZWxlY3RpbmcgcGFja2FnZXMsIHByZXNzIDxlbnRlcj4gdG8gY29uZmlybSAiCisiY2hhbmdlcyxcbiIKKyJvciBgWCcgdG8gcXVpdCB3aXRob3V0IHNhdmluZyBjaGFuZ2VzLiBBIGZpbmFsIGNoZWNrIG9uIGNvbmZsaWN0cyBhbmRcbiIKKyJkZXBlbmRlbmNpZXMgd2lsbCBiZSBkb25lIC0gaGVyZSB0b28geW91IG1heSBzZWUgYSBzdWJsaXN0LlxuIgorIlxuIgorIlByZXNzIDxzcGFjZT4gdG8gbGVhdmUgaGVscCBhbmQgZW50ZXIgdGhlIGxpc3Qgbm93LlxuIgorbXNnc3RyICIiCisi5q2h6L+O5L6G5YiwIGRzZWxlY3Qg55qE5aWX5Lu25Li75YiX6KGo55WM6Z2i44CCXG4iCisiXG4iCisi5bGV54++5Zyo5oKo6Z2i5YmN55qE5piv5bey57aT5a6J6KOd55qE5oiW5Y+v5Lul5a6J6KOd55qE5aWX5Lu25YiX6KGo44CCXG4iCisi5oOz6KaB5a6J6KOd5pmC77yM5Y+v5Lul5L2/55So5pa55ZCR6Y2154CP6Ka96YCZ5YCL5YiX6KGo77yMXG4iCisi5bCH5a6J6KOd55qE5aWX5Lu25L2c5LiK6KiY6JmfKOeUqCBgKycp77yM5Lmf5Y+v5Lul5bCH5oOz6KaB56e76ZmkXG4iCisi55qE5aWX5Lu25L2c6KiY6JmfKOeUqOKAnGAtJynjgIJcbiIKKyLkvZzoqJjomZ/mmYLvvIzkuI3lg4Xlj6/ku6XlsI3llq7lgIvlpZfku7bkvZzoqJjomZ/vvIzpgoTlj6/ku6XngrrmiJDntYRcbiIKKyLnmoTlpZfku7bkvZzoqJjomZ/jgILliZvplovlp4vmmYLmgqjmnIPnnIvliLDigJzmiYDmnInlpZfku7bigJ3pgJnkuIDooYzooqtcbiIKKyLpgbjkuK3jgILpgqPpurznlKhgKyflkoxgLSfnrYnpjbXlsLHlj6/ku6Xmk43mjqfooqvpq5jkuq7poa/npLrnmoTooYxcbiIKKyLmiYDmjIfnmoTmiYDmnInlpZfku7bjgIJcbiIKKyJcbiIKKyLmgqjkvZznmoTkuIDkupvpgbjmk4flj6/og73mnIPlsI7oh7TlpZfku7bplpPnmoTooZ3nqoHmiJbnm7jkvp3llY/poYzvvIxcbiIKKyLpgJnmmYLou5/pq5TmnIPmiorkuIDku73mnInllY/poYznmoTnm7jpl5zou5/pq5TliJfooajkuqTntabkvaDvvIzpgJnmqKPvvIxcbiIKKyLmgqjlsLHog73op6PmsbrpgJnlgIvllY/poYzkuobjgIJcbiIKKyJcbiIKKyLmgqjlv4XpoIjplrHoroDpgJnkupvliJflh7rnmoTmjInpjbXku6Xlj4rlsZXplovoqqrmmI7jgIJcbiIKKyLlnKjmgqjlsIvmsYLluavliqnmmYLlj6ropoHmjInkuItgPyflsLHog73lj5blvpfoqLHlpJrnt5rkuIroqqrmmI7jgIJcbiIKKyJcbiIKKyLkuIDml6bmgqjpgbjlrozlpZfku7bvvIzoq4vmjIkgPGVudGVyPiDpjbXkvobnorroqo3liZvmiY3nmoTkv67mlLnvvIxcbiIKKyLmiJbogIXnlKhgWCfpgIDlh7rlkIzmmYLkuI3lhLLlrZjku7vkvZXmlLnororjgILmnIDlvozkvZzkuIDmrKHooZ3nqoHlkoxcbiIKKyLnm7jkvp3mgKfnmoTmqqLmn6UgLSDmgqjlnKjpgJnoo6Hlj6/og73pgoTmnIPnnIvkuIDmrKHnm7jpl5zou5/pq5TliJfooajjgIJcbiIKKyJcbiIKKyLnj77lnKjmgqjlj6/ku6XmjIkgPGVudGVyPiDpjbXpm6LplovluavliqnnlYzpnaLvvIzpgLLlhaXliJfooajnlYzpnaLkuobjgIJcbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo4MAorbXNnaWQgIkludHJvZHVjdGlvbiB0byByZWFkLW9ubHkgcGFja2FnZSBsaXN0IGJyb3dzZXIiCittc2dzdHIgIuWUr+iugOeahOWll+S7tuWIl+ihqOeAj+imveeVjOmdouewoeS7iyIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzo4MAorbXNnaWQgIiIKKyJXZWxjb21lIHRvIGRzZWxlY3QncyBtYWluIHBhY2thZ2UgbGlzdGluZy5cbiIKKyJcbiIKKyJZb3Ugd2lsbCBiZSBwcmVzZW50ZWQgd2l0aCBhIGxpc3Qgb2YgcGFja2FnZXMgd2hpY2ggYXJlIGluc3RhbGxlZCBvciAiCisiYXZhaWxhYmxlXG4iCisiZm9yIGluc3RhbGxhdGlvbi4gIFNpbmNlIHlvdSBkbyBub3QgaGF2ZSB0aGUgcHJpdmlsZWdlIG5lY2Vzc2FyeSB0byB1cGRhdGVcbiIKKyJwYWNrYWdlIHN0YXRlcywgeW91IGFyZSBpbiBhIHJlYWQtb25seSBtb2RlLiAgWW91IGNhbiBuYXZpZ2F0ZSBhcm91bmQgdGhlXG4iCisibGlzdCB1c2luZyB0aGUgY3Vyc29yIGtleXMgKHBsZWFzZSBzZWUgdGhlIGBLZXlzdHJva2VzJyBoZWxwIHNjcmVlbiksICIKKyJvYnNlcnZlXG4iCisidGhlIHN0YXR1cyBvZiB0aGUgcGFja2FnZXMgYW5kIHJlYWQgaW5mb3JtYXRpb24gYWJvdXQgdGhlbS5cbiIKKyJcbiIKKyJZb3Ugc2hvdWxkIHJlYWQgdGhlIGxpc3Qgb2Yga2V5cyBhbmQgdGhlIGV4cGxhbmF0aW9ucyBvZiB0aGUgZGlzcGxheS5cbiIKKyJNdWNoIG9uLWxpbmUgaGVscCBpcyBhdmFpbGFibGUsIHBsZWFzZSBtYWtlIHVzZSBvZiBpdCAtIHByZXNzIGA/JyBhdFxuIgorImFueSB0aW1lIGZvciBoZWxwLlxuIgorIlxuIgorIldoZW4geW91IGhhdmUgZmluaXNoZWQgYnJvd3NpbmcsIHByZXNzIGBRJyBvciA8ZW50ZXI+IHRvIHF1aXQuXG4iCisiXG4iCisiUHJlc3MgPHNwYWNlPiB0byBsZWF2ZSBoZWxwIGFuZCBlbnRlciB0aGUgbGlzdCBub3cuXG4iCittc2dzdHIgIiIKKyLmraHov47kvobliLAgZHNlbGVjdCDnmoTlpZfku7bkuLvliJfooajnlYzpnaLjgIJcbiIKKyJcbiIKKyLlsZXnj77lnKjmgqjpnaLliY3nmoTmmK/lt7LntpPlronoo53nmoTmiJblj6/ku6Xlronoo53nmoTlpZfku7bliJfooajjgIJcbiIKKyLnlLHmlrzmgqjmspLmnInmrIrpmZDkv67mlLnlpZfku7bnmoTni4DmhYvvvIzlsLHlj6rog73ku6XllK/oroDmqKHlvI/mk43kvZzkuobjgIJcbiIKKyLmgqjlj6/ku6Xkvb/nlKjmlrnlkJHpjbXlnKjmnKzliJfooajkuK0o6KuL5Y+D6ICD5bmr5Yqp55WM6Z2i5Lit55qE4oCc5oyJ6Y215pON5L2c4oCd5LiA56+AKVxuIgorIuenu+WLle+8jOmChOWPr+S7peafpeeci+Wll+S7tueahOeLgOaFi+S4pueNsuefpeWll+S7tueahOebuOmXnOioiuaBr+OAglxuIgorIlxuIgorIuaCqOaHieeVtueci+eci+aMiemNteeahOWIl+ihqO+8jOS7peWPiuaciemXnOieouW5leS4iumhr+ekuuioiuaBr+eahOino+mHi+OAglxuIgorIuaCqOWPr+S7pemWseiugOioseWkmue3muS4iueahOW5q+WKqeaWh+aqlO+8jOeEoeirluS9leaZguWPquimgeaMieKAnD/igJ3lsLHlj69cbiIKKyLoqr/plrHlroPlgJHjgIJcbiIKKyJcbiIKKyLkuIDml6bmgqjnnIvlrozvvIzoq4vmjInigJxR4oCd5oiW6ICFIDxlbnRlcj4g6Y215L6G6YCA5Ye66Luf6auU44CCXG4iCisiXG4iCisi54++5Zyo5oKo5Y+v5Lul6YCa6YGO5oyJIDxlbnRlcj4g6Y216Zui6ZaL5bmr5Yqp55WM6Z2i77yM6YCy5YWl5YiX6KGo55WM6Z2i5LqG44CCXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6OTkKK21zZ2lkICJJbnRyb2R1Y3Rpb24gdG8gY29uZmxpY3QvZGVwZW5kZW5jeSByZXNvbHV0aW9uIHN1Yi1saXN0IgorbXNnc3RyICLnlKjmlrzop6PmsbrooZ3nqoEv55u45L6d5ZWP6aGM55qE5a2Q5YiX6KGo55qE57Ch5LuLIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjk5Cittc2dpZCAiIgorIkRlcGVuZGVuY3kvY29uZmxpY3QgcmVzb2x1dGlvbiAtIGludHJvZHVjdGlvbi5cbiIKKyJcbiIKKyJPbmUgb3IgbW9yZSBvZiB5b3VyIGNob2ljZXMgaGF2ZSByYWlzZWQgYSBjb25mbGljdCBvciBkZXBlbmRlbmN5IHByb2JsZW0gLVxuIgorInNvbWUgcGFja2FnZXMgc2hvdWxkIG9ubHkgYmUgaW5zdGFsbGVkIGluIGNvbmp1bmN0aW9uIHdpdGggY2VydGFpbiBvdGhlcnMsICIKKyJhbmRcbiIKKyJzb21lIGNvbWJpbmF0aW9ucyBvZiBwYWNrYWdlcyBtYXkgbm90IGJlIGluc3RhbGxlZCB0b2dldGhlci5cbiIKKyJcbiIKKyJZb3Ugd2lsbCBzZWUgYSBzdWItbGlzdCBjb250YWluaW5nIHRoZSBwYWNrYWdlcyBpbnZvbHZlZC4gIFRoZSBib3R0b20gaGFsZiAiCisib2ZcbiIKKyJ0aGUgZGlzcGxheSBzaG93cyByZWxldmFudCBjb25mbGljdHMgYW5kIGRlcGVuZGVuY2llczsgdXNlIGBpJyB0byBjeWNsZSAiCisiYmV0d2VlblxuIgorInRoYXQsIHRoZSBwYWNrYWdlIGRlc2NyaXB0aW9ucyBhbmQgdGhlIGludGVybmFsIGNvbnRyb2wgaW5mb3JtYXRpb24uXG4iCisiXG4iCisiQSBzZXQgb2YgYHN1Z2dlc3RlZCcgcGFja2FnZXMgaGFzIGJlZW4gY2FsY3VsYXRlZCwgYW5kIHRoZSBpbml0aWFsIG1hcmtpbmdzICIKKyJpblxuIgorInRoaXMgc3ViLWxpc3QgaGF2ZSBiZWVuIHNldCB0byBtYXRjaCB0aG9zZSwgc28geW91IGNhbiBqdXN0IGhpdCBSZXR1cm4gdG9cbiIKKyJhY2NlcHQgdGhlIHN1Z2dlc3Rpb25zIGlmIHlvdSB3aXNoLiAgWW91IG1heSBhYm9ydCB0aGUgY2hhbmdlKHMpIHdoaWNoICIKKyJjYXVzZWRcbiIKKyJ0aGUgcHJvYmxlbShzKSwgYW5kIGdvIGJhY2sgdG8gdGhlIG1haW4gbGlzdCwgYnkgcHJlc3NpbmcgY2FwaXRhbCBgWCcuXG4iCisiXG4iCisiWW91IGNhbiBhbHNvIG1vdmUgYXJvdW5kIHRoZSBsaXN0IGFuZCBjaGFuZ2UgdGhlIG1hcmtpbmdzIHNvIHRoYXQgdGhleSBhcmUgIgorIm1vcmVcbiIKKyJsaWtlIHdoYXQgeW91IHdhbnQsIGFuZCB5b3UgY2FuIGByZWplY3QnIG15IHN1Z2dlc3Rpb25zIGJ5IHVzaW5nIHRoZSAiCisiY2FwaXRhbFxuIgorImBEJyBvciBgUicga2V5cyAoc2VlIHRoZSBrZXliaW5kaW5ncyBoZWxwIHNjcmVlbikuICBZb3UgY2FuIHVzZSBjYXBpdGFsIGBRJyAiCisidG9cbiIKKyJmb3JjZSBtZSB0byBhY2NlcHQgdGhlIHNpdHVhdGlvbiBjdXJyZW50bHkgZGlzcGxheWVkLCBpbiBjYXNlIHlvdSB3YW50IHRvXG4iCisib3ZlcnJpZGUgYSByZWNvbW1lbmRhdGlvbiBvciB0aGluayB0aGF0IHRoZSBwcm9ncmFtIGlzIG1pc3Rha2VuLlxuIgorIlxuIgorIlByZXNzIDxzcGFjZT4gdG8gbGVhdmUgaGVscCBhbmQgZW50ZXIgdGhlIHN1Yi1saXN0OyByZW1lbWJlcjogcHJlc3MgYD8nIGZvciAiCisiaGVscC5cbiIKK21zZ3N0ciAiIgorIueUqOaWvOino+axuuihneeqgS/nm7jkvp3llY/poYznmoTlrZDliJfooajnmoTnsKHku4vjgIJcbiIKKyJcbiIKKyLmgqjkvZznmoTpgbjmk4fkuK3mnInkupvlvJXotbfkuobooZ3nqoHmiJbnm7jkvp3llY/poYzvvIzljbPvvIxcbiIKKyLmnInkupvlpZfku7blv4XpoIjoiIfmn5DkupvlhbblroPlpZfku7bkuIDlkIzlronoo53vvIxcbiIKKyLogIzmnInnmoTlpZfku7bnmoTnibnlrprntYTlkIjmmK/kuI3og73lkIzmmYLlronoo53nmoTjgIJcbiIKKyJcbiIKKyLmgqjlsIfmnIPopovliLDkuIDlgIvlrZDliJfooajvvIzlroPlm4rmi6zkuobms6Llj4rliLDnmoRcbiIKKyLlpZfku7bjgILpoa/npLrlhaflrrnnmoTkuIvljYrpg6jliIbmnIPlkYroqLTmgqjnm7jpl5xcbiIKKyLnmoTooZ3nqoHlkoznm7jkvp3pl5zns7vjgILoq4vkvb/nlKjigJxp4oCd5L6G54CP6Ka95aWX5Lu2XG4iCisi55qE57Ch5LuL5ZKM5YWn6YOo5o6n5Yi26KiK5oGv44CCXG4iCisiXG4iCisi5pyJ5LiA57WE6KKr4oCc5bu66K2w4oCd55qE5aWX5Lu25bey6KKr57Wx6KiI5Ye65L6G5LqG77yMXG4iCisi6ICM5LiU6YCZ5YCL5a2Q5YiX6KGo5Lit55qE5bCN5oeJ5aWX5Lu255qE54uA5oWL5Lmf6KKr5qiZ6KiY5oiQ5LqG4oCc5bu66K2w4oCd55qE54uA5oWL44CC6YCZ5qij77yM5aaC5p6c5oKo6aGY5oSP55qEIgorIuipse+8jFxuIgorIuWPqumcgOaMieS4gOS4i2VudGVy5L6G5o6l5Y+X6Luf6auU55qE5bu66K2w44CCXG4iCisi5oKo6YKE5Y+v5Lul5oyJ5aSn5a+r55qE4oCcWOKAneS+huWPlua2iOWwjuiHtOWVj+mhjOeahOabtOWLle+8jOS4puWbnuWIsOS4u+WIl+ihqOeVjOmdouOAglxuIgorIlxuIgorIuaCqOS5n+WPr+S7peaMieeFp+iHquW3seeahOmcgOaxguS/ruaUueWIl+ihqOS4reWll+S7tueahOeLgOaFi+OAglxuIgorIuWQjOaZgu+8jOaCqOS5n+WPr+S7peaMieWkp+Wvq+eahOKAnETigJ3miJbigJxS4oCdXG4iCisi6Y21KOWPg+iAg+W/q+mAn+mNteeahOW5q+WKqeeVjOmdoinvvIzkvobigJzmi5LntZXigJ3miJHmj5Dlh7rnmoTlu7rorbDjgIJcbiIKKyLnlbbmgqjluIzmnJvlv73nlaXmiJHnmoTlu7rorbDmiJbmmK/oqo3ngrrmnKzou5/pq5Tlh7rpjK/mmYLvvIxcbiIKKyLmgqjpgoTlj6/ku6XmjInlpKflr6vnmoTigJxR4oCd5L6G5by35Yi25o6l5Y+X55W25YmN6aGv56S655qE6Kit5a6a44CCXG4iCisiXG4iCisi6KuL5oyJPGVudGVyPumboumWi+W5q+WKqeeVjOmdou+8jOmAsuWFpeWtkOWIl+ihqOOAglxuIgorIumcgOimgeW5q+WKqeaZgu+8jOaMieKAnD/igJ3pjbXjgIJcbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxMjUKK21zZ2lkICJEaXNwbGF5LCBwYXJ0IDE6IHBhY2thZ2UgbGlzdGluZyBhbmQgc3RhdHVzIGNoYXJzIgorbXNnc3RyICLpoa/npLrpg6jkvY0gMe+8muWll+S7tuWIl+ihqOWPiueLgOaFi+ewoeWvqyIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxMjUKKyMsIGZ1enp5Cittc2dpZCAiIgorIlRoZSB0b3AgaGFsZiBvZiB0aGUgc2NyZWVuIHNob3dzIGEgbGlzdCBvZiBwYWNrYWdlcy4gIEZvciBlYWNoIHBhY2thZ2UgeW91ICIKKyJzZWVcbiIKKyJmb3VyIGNvbHVtbnMgZm9yIGl0cyBjdXJyZW50IHN0YXR1cyBvbiB0aGUgc3lzdGVtIGFuZCBtYXJrLiAgSW4gdGVyc2UgbW9kZSAiCisiKHVzZVxuIgorImB2JyB0byB0b2dnbGUgdmVyYm9zZSBkaXNwbGF5KSB0aGVzZSBhcmUgc2luZ2xlIGNoYXJhY3RlcnMsIGZyb20gbGVmdCB0byAiCisicmlnaHQ6XG4iCisiXG4iCisiIEVycm9yIGZsYWc6IFNwYWNlIC0gbm8gZXJyb3IgKGJ1dCBwYWNrYWdlIG1heSBiZSBpbiBicm9rZW4gc3RhdGUgLSBzZWUgIgorImJlbG93KVxuIgorIiAgICAgICAgICAgICAgYFInICAtIHNlcmlvdXMgZXJyb3IgZHVyaW5nIGluc3RhbGxhdGlvbiwgbmVlZHMgIgorInJlaW5zdGFsbGF0aW9uO1xuIgorIiBJbnN0YWxsZWQgc3RhdGU6ICAgICBTcGFjZSAgICAtIG5vdCBpbnN0YWxsZWQ7XG4iCisiICAgICAgICAgICAgICAgICAgICAgICBgKicgICAgIC0gaW5zdGFsbGVkO1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgYC0nICAgICAtIG5vdCBpbnN0YWxsZWQgYnV0IGNvbmZpZyBmaWxlcyByZW1haW47XG4iCisiICAgcGFja2FnZXMgaW4gdGhlc2UgeyBgVScgICAgIC0gdW5wYWNrZWQgYnV0IG5vdCB5ZXQgY29uZmlndXJlZDtcbiIKKyIgICBzdGF0ZXMgYXJlIG5vdCAgICB7IGBDJyAgICAgLSBoYWxmLWNvbmZpZ3VyZWQgKGFuIGVycm9yIGhhcHBlbmVkKTtcbiIKKyIgICAocXVpdGUpIHByb3Blcmx5ICB7IGBJJyAgICAgLSBoYWxmLWluc3RhbGxlZCAoYW4gZXJyb3IgaGFwcGVuZWQpO1xuIgorIiAgIGluc3RhbGxlZCAgICAgICAgIHsgYFcnLGB0JyAtIHRyaWdnZXJzIGFyZSBhd2FpdGVkIHJlc3AuIHBlbmRpbmcuXG4iCisiIE9sZCBtYXJrOiB3aGF0IHdhcyByZXF1ZXN0ZWQgZm9yIHRoaXMgcGFja2FnZSBiZWZvcmUgcHJlc2VudGluZyB0aGlzIGxpc3Q7XG4iCisiIE1hcms6IHdoYXQgaXMgcmVxdWVzdGVkIGZvciB0aGlzIHBhY2thZ2U6XG4iCisiICBgKic6IG1hcmtlZCBmb3IgaW5zdGFsbGF0aW9uIG9yIHVwZ3JhZGU7XG4iCisiICBgLSc6IG1hcmtlZCBmb3IgcmVtb3ZhbCwgYnV0IGFueSBjb25maWd1cmF0aW9uIGZpbGVzIHdpbGwgcmVtYWluO1xuIgorIiAgYD0nOiBvbiBob2xkOiBwYWNrYWdlIHdpbGwgbm90IGJlIHByb2Nlc3NlZCBhdCBhbGw7XG4iCisiICBgXyc6IG1hcmtlZCBmb3IgcHVyZ2UgY29tcGxldGVseSAtIGV2ZW4gcmVtb3ZlIGNvbmZpZ3VyYXRpb247XG4iCisiICBgbic6IHBhY2thZ2UgaXMgbmV3IGFuZCBoYXMgeWV0IHRvIGJlIG1hcmtlZCBmb3IgaW5zdGFsbC9yZW1vdmUvJmMuXG4iCisiXG4iCisiQWxzbyBkaXNwbGF5ZWQgYXJlIGVhY2ggcGFja2FnZSdzIFByaW9yaXR5LCBTZWN0aW9uLCBuYW1lLCBpbnN0YWxsZWQgYW5kXG4iCisiYXZhaWxhYmxlIHZlcnNpb24gbnVtYmVycyAoc2hpZnQtViB0byBkaXNwbGF5L2hpZGUpIGFuZCBzdW1tYXJ5ICIKKyJkZXNjcmlwdGlvbi5cbiIKK21zZ3N0ciAiIgorIuieouW5leeahOS4iuWNiumDqOWIhumhr+ekuueahOaYr+Wll+S7tueahOWIl+ihqOOAguWwjeavj+WAi+Wll+S7tuS+huiqqu+8jFxuIgorIumDveacieWbm+WIl+S7o+iZn+ihqOekuuipsuWll+S7tuWcqOezu+e1seS4reeahOeLgOaFi+S7peWPiuePvuWcqOeahOaomeiomOOAglxuIgorIuWcqOewoeeVpeaooeW8j+ijoSjlj6/nlKjigJx24oCd5L6G5YiH5o+b5Yiw6Kmz55uh5qih5byPKeWug+WAkemDveaYr+WWruWAi+Wtl+avje+8jFxuIgorIuW+nuW3puWIsOWPs+WIhuWIpeaYr++8mlxuIgorIlxuIgorIumMr+iqpOaXl+aome+8muepuueZve+8jOWNs+aykuaciemMr+iqpCjkvYbmmK/lpZfku7blj6/og73mnInmlYXpmpzvvIzopovkuIspXG4iCisiICAgICAgICAgICAgICAg4oCcUuKAne+8jCAg5Y2z5Zyo5a6J6KOd6YGO56iL6YGt6YGH5LqG5Zq06YeN6Yyv6Kqk77yM6ZyA6KaB6YeN5paw5a6J6KOd77mUXG4iCisi5a6J6KOd54uA5oWL77ya56m655m977yM5Y2z5rKS5pyJ5a6J6KOd77mUXG4iCisiICAgICAgICAgICAgICAg4oCcKuKAne+8jCAg5Y2z5bey5a6J6KOd77mUXG4iCisiICAgICAgICAgICAgICAg4oCcLeKAne+8jCAg5Y2z5rKS5pyJ5a6J6KOd77yM5L2G5piv5q6Y55WZ5pyJ5YW26Kit5a6a5qqU5qGI77mUXG4iCisiICAgICDomZXmlrzpgJnkupvni4DmhYsgICAgeyDigJxV4oCd77yM5Y2z5bey6Kej5aOT57iu5L2G6YKE5pyq6YCy6KGM6Kit5a6a77mUXG4iCisiICAgICAgICAgIOeahOWll+S7tiAgeyDigJxD4oCd77yM5Y2z5LiN5a6M5YWo6Kit5a6aKOWFtumWk+aciemMr+iqpOeZvOeUnynvuZRcbiIKKyIgICAgIOmDveaYr+acieaVhemanOeahCAgICB7IOKAnEnigJ3vvIzljbPpg6jliIblronoo50o5YW26ZaT5pyJ6Yyv6Kqk55m855SfKeOAglxuIgorIuWOn+acieaomeiomO+8muWIl+ihqOmhr+ekuuWHuuS5i+WJjeeahOWll+S7tuiiq+imgeaxguioreWumueahOeLgOaFi++5lFxuIgorIueVtuWJjeaomeiomO+8muePvuWcqOWll+S7tuiiq+imgeaxguioreWumueahOeLgOaFi++8mlxuIgorIiAg4oCcKuKAne+8muWwh+WFtuaomeiomOeCuuWuieijneaIluWNh+e0mu+5lFxuIgorIiAg4oCcLeKAne+8muWwh+WFtuaomeiomOeCuuWIqumZpO+8jOS9huaYr+Wwh+S/neeVmeWug+eahOioreWumuaqlOahiO+5lFxuIgorIiAg4oCcPeKAne+8mue2reaMgeWOn+eLgO+8muWll+S7tuWwh+S4jeWLleWIhuavq++5lFxuIgorIiAg4oCcX+KAne+8muWwh+WFtuaomeiomOeCuuWujOWFqOa4hemZpO+8jOmAo+WQjOioreWumuS4gOi1t+WIqumZpO+5lFxuIgorIiAg4oCcbuKAne+8muWll+S7tuaYr+aWsOeahO+8jOWwmuacquaomeiomOmBjuOAglxuIgorIlxuIgorIuWPpuWklueVjOmdouS4iumChOmhr+ekuuacieWll+S7tueahOWEquWFiOe0muOAgeaJgOWxrOmhnuWIpeOAgeWQjeeoseOAgeW3suWuieijnVxuIgorIueahOeJiOacrOiZn+WSjOeVtuWJjeWPr+eUqOeahOeJiOacrOiZn++8iOS9v+eUqCBzaGlmdC12IOWPr+S7pemWi+WVn+aIlumXnOmWieWFtlxuIgorIumhr+ekuinvvIzku6Xlj4rnsKHopoHnmoTku4vntLnjgIJcbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxNTIKK21zZ2lkICJEaXNwbGF5LCBwYXJ0IDI6IGxpc3QgaGlnaGxpZ2h0OyBpbmZvcm1hdGlvbiBkaXNwbGF5IgorbXNnc3RyICLpoa/npLrpg6jkvY0gMu+8muWIl+ihqOmrmOS6rumhr+ekuumDqOWIhu+5lOebuOmXnOioiuaBr+eahOmhr+ekuiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxNTIKK21zZ2lkICIiCisiKiBIaWdobGlnaHQ6IE9uZSBsaW5lIGluIHRoZSBwYWNrYWdlIGxpc3Qgd2lsbCBiZSBoaWdobGlnaHRlZC4gIEl0ICIKKyJpbmRpY2F0ZXNcbiIKKyIgIHdoaWNoIHBhY2thZ2Uocykgd2lsbCBiZSBhZmZlY3RlZCBieSBwcmVzc2VzIG9mIGArJywgYC0nIGFuZCBgXycuXG4iCisiXG4iCisiKiBUaGUgZGl2aWRpbmcgbGluZSBpbiB0aGUgbWlkZGxlIG9mIHRoZSBzY3JlZW4gc2hvd3MgYSBicmllZiBleHBsYW5hdGlvbiAiCisib2ZcbiIKKyIgIHRoZSBzdGF0dXMgb2YgdGhlIGN1cnJlbnRseS1oaWdobGlnaHRlZCBwYWNrYWdlLCBvciBhIGRlc2NyaXB0aW9uIG9mICIKKyJ3aGljaFxuIgorIiAgZ3JvdXAgaXMgaGlnaGxpZ2h0ZWQgaWYgYSBncm91cCBsaW5lIGlzLiAgSWYgeW91IGRvbid0IHVuZGVyc3RhbmQgdGhlXG4iCisiICBtZWFuaW5nIG9mIHNvbWUgb2YgdGhlIHN0YXR1cyBjaGFyYWN0ZXJzIGRpc3BsYXllZCwgZ28gdG8gdGhlIHJlbGV2YW50XG4iCisiICBwYWNrYWdlIGFuZCBsb29rIGF0IHRoaXMgZGl2aWRlciBsaW5lLCBvciB1c2UgdGhlIGB2JyBrZXkgZm9yIGEgdmVyYm9zZVxuIgorIiAgZGlzcGxheSAocHJlc3MgYHYnIGFnYWluIHRvIGdvIGJhY2sgdG8gdGhlIHRlcnNlIGRpc3BsYXkpLlxuIgorIlxuIgorIiogVGhlIGJvdHRvbSBvZiB0aGUgc2NyZWVuIHNob3dzIG1vcmUgaW5mb3JtYXRpb24gYWJvdXQgdGhlXG4iCisiICBjdXJyZW50bHktaGlnaGxpZ2h0ZWQgcGFja2FnZSAoaWYgdGhlcmUgaXMgb25seSBvbmUpLlxuIgorIlxuIgorIiAgSXQgY2FuIHNob3cgYW4gZXh0ZW5kZWQgZGVzY3JpcHRpb24gb2YgdGhlIHBhY2thZ2UsIHRoZSBpbnRlcm5hbCBwYWNrYWdlXG4iCisiICBjb250cm9sIGRldGFpbHMgKGVpdGhlciBmb3IgdGhlIGluc3RhbGxlZCBvciBhdmFpbGFibGUgdmVyc2lvbiBvZiB0aGVcbiIKKyIgIHBhY2thZ2UpLCBvciBpbmZvcm1hdGlvbiBhYm91dCBjb25mbGljdHMgYW5kIGRlcGVuZGVuY2llcyBpbnZvbHZpbmcgdGhlXG4iCisiICBjdXJyZW50IHBhY2thZ2UgKGluIGNvbmZsaWN0L2RlcGVuZGVuY3kgcmVzb2x1dGlvbiBzdWJsaXN0cykuXG4iCisiXG4iCisiICBVc2UgdGhlIGBpJyBrZXkgdG8gY3ljbGUgdGhyb3VnaCB0aGUgZGlzcGxheXMsIGFuZCBgSScgdG8gaGlkZSB0aGVcbiIKKyIgIGluZm9ybWF0aW9uIGRpc3BsYXkgb3IgZXhwYW5kIGl0IHRvIHVzZSBhbG1vc3QgYWxsIG9mIHRoZSBzY3JlZW4uXG4iCittc2dzdHIgIiIKKyIqIOmrmOS6ru+8muWll+S7tuWIl+ihqOS4reiiq+mrmOS6rumhr+ekuueahOmCo+S4gOihjOOAguWug+aJgOWcqOeahOihjOeahFxuIgorIiAg5aWX5Lu25bCH5pyD6KKr4oCcK+KAneOAgeKAnC3igJ3lkozigJxf4oCd55qE5oyJ6Y215pON5o6n44CCXG4iCisiXG4iCisiKiDlnKjonqLluZXkuK3plpPnmoTliIbpmpTmop3mpoLmi6zkuobnlbbliY3pq5jkuq7nmoQo5LiA57WEKeWll+S7tueahOeLgOaFi+OAglxuIgorIiAg5aaC5p6c5oKo5LiN5LqG6Kej5bem5YG054uA5oWL5Luj6Jmf55qE5oSP5oCd77yM6KuL56e75YuV5Yiw55u45oeJ55qE5aWX5Lu277yMXG4iCisiICDlho3mn6XnnIvliIbpmpTmop3vvIzmiJbogIXkvb/nlKjigJx24oCd6Y215L6G6Kq/6Zax6LyD6Kmz57Sw55qE6aGv56S6KOWGjeaMieS4gOasoVxuIgorIiAg5bCx5Y+v5Lul5Zue5Yiw57Ch55Wl55qE6aGv56S65qih5byPKeOAglxuIgorIlxuIgorIiog6J6i5bmV5bqV6YOo6aGv56S655qE5piv55W25YmN6auY5Lqu55qE5aWX5Lu2KOWmguaenOWPquacieS4gOWAiynnmoTmm7TlpJpcbiIKKyIgIOioiuaBr+OAglxuIgorIiAgXG4iCisiICDlroPmnIPpoa/npLrpl5zmlrzoqbLlpZfku7bnmoToo5zlhYXoqIrmga/jgIHlpZfku7blhafpg6jnmoTmjqfliLbntLDnr4BcbiIKKyIgICjkuI3nrqHmmK/lt7LntpPlronoo53nmoTpgoTmmK/lsJrmnKrlronoo53nmoTniYjmnKwp44CB6Iul5piv6IiH55W25YmN5aWX5Lu2XG4iCisiICAo5Ye654++5Zyo6KGd56qBL+ebuOS+neWVj+mhjOino+axuui+puazleWtkOWIl+ihqCnmnInpl5znmoTooZ3nqoHlkoznm7jkvp3llY/poYzjgIJcbiIKKyJcbiIKKyIgIOaCqOWPr+S7peeUqOKAnGnigJ3pjbXlnKjpgJnkupvpoa/npLrlhaflrrnkuK3kvoblm57liIfmj5vvvIznlKjigJxJ4oCd5L6G6Zec6ZaJ55u46Zec6KiK5oGvXG4iCisiICDnmoTpoa/npLrvvIzmiJbogIXmk7TlpKflroPlnKjonqLluZXkuK3miYDljaDnmoTnr4fluYXnm7TliLDlub7kuY7lrozlhajkvZTmk5ronqLluZXjgIJcbiIKKworIzogZHNlbGVjdC9oZWxwbXNncy5jYzoxNzYKK21zZ2lkICJJbnRyb2R1Y3Rpb24gdG8gbWV0aG9kIHNlbGVjdGlvbiBkaXNwbGF5IgorbXNnc3RyICLlronoo53mlrnlvI/pgbjmk4fnlYzpnaLnmoTnsKHku4siCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTc2Cittc2dpZCAiIgorImRzZWxlY3QgYW5kIGRwa2cgY2FuIGRvIGF1dG9tYXRpYyBpbnN0YWxsYXRpb24sIGxvYWRpbmcgdGhlIHBhY2thZ2UgZmlsZXMgdG8gIgorImJlXG4iCisiaW5zdGFsbGVkIGZyb20gb25lIG9mIGEgbnVtYmVyIG9mIGRpZmZlcmVudCBwb3NzaWJsZSBwbGFjZXMuXG4iCisiXG4iCisiVGhpcyBsaXN0IGFsbG93cyB5b3UgdG8gc2VsZWN0IG9uZSBvZiB0aGVzZSBpbnN0YWxsYXRpb24gbWV0aG9kcy5cbiIKKyJcbiIKKyJNb3ZlIHRoZSBoaWdobGlnaHQgdG8gdGhlIG1ldGhvZCB5b3Ugd2lzaCB0byB1c2UsIGFuZCBoaXQgRW50ZXIuICBZb3Ugd2lsbCAiCisidGhlblxuIgorImJlIHByb21wdGVkIGZvciB0aGUgaW5mb3JtYXRpb24gcmVxdWlyZWQgdG8gZG8gdGhlIGluc3RhbGxhdGlvbi5cbiIKKyJcbiIKKyJBcyB5b3UgbW92ZSB0aGUgaGlnaGxpZ2h0IGEgZGVzY3JpcHRpb24gb2YgZWFjaCBtZXRob2QsIHdoZXJlIGF2YWlsYWJsZSwgaXNcbiIKKyJkaXNwbGF5ZWQgaW4gdGhlIGJvdHRvbSBoYWxmIG9mIHRoZSBzY3JlZW4uXG4iCisiXG4iCisiSWYgeW91IHdpc2ggdG8gcXVpdCB3aXRob3V0IGNoYW5naW5nIGFueXRoaW5nIHVzZSB0aGUgYHgnIGtleSB3aGlsZSBpbiB0aGUgIgorImxpc3RcbiIKKyJvZiBpbnN0YWxsYXRpb24gbWV0aG9kcy5cbiIKKyJcbiIKKyJBIGZ1bGwgbGlzdCBvZiBrZXlzdHJva2VzIGlzIGF2YWlsYWJsZSBieSBwcmVzc2luZyBgaycgbm93LCBvciBmcm9tIHRoZSAiCisiaGVscFxuIgorIm1lbnUgcmVhY2hhYmxlIGJ5IHByZXNzaW5nIGA/Jy5cbiIKK21zZ3N0ciAiIgorImRzZWxlY3Qg5ZKMIGRwa2cg6IO95aSg5a+m54++6Ieq5YuV5YyW55qE5a6J6KOd77yM5a6D5YCR5Y+v5Lul5b6e5aSa5YCL5LiN5ZCM55qE5L2N572u5Y+W5ZueXG4iCisi6KaB5a6J6KOd55qE5aWX5Lu25qqU5qGI44CCXG4iCisiXG4iCisi5pys5YiX6KGo5Y+v5Lul6K6T5oKo5b6e6YCZ5Lqb5a6J6KOd5pa55byP5Lit6YG45pOH5LiA5YCL44CCXG4iCisiXG4iCisi6KuL56e75YuV6auY5Lqu5YWJ5qOS5Yiw5oKo5biM5pyb5L2/55So55qE5a6J6KOd5pa55byP77yM5YaN5oyJZW50ZXLjgILnhLblvozou5/pq5TmnIPmj5DnpLrmgqjovLjlhaVcbiIKKyLpgJnnqK7lronoo53mlrnlvI/miYDlv4XpoIjnmoTkuIDkupvnm7jpl5zoqIrmga/jgIJcbiIKKyJcbiIKKyLlpoLmnpzmgqjmg7PopoHpgIDlh7rnqIvluo/vvIzogIzkuJTkuI3lgZrku7vkvZXororli5XvvIzpgqPpurzoq4vlnKjlronoo53mlrnlvI/liJfooajnmoTnlYzpnaLkuK1cbiIKKyLkvb/nlKjigJx44oCd6Y2144CCXG4iCisiXG4iCisi54++5Zyo5oyJ4oCca+KAnemNteWwseiDveimi+WIsOaMiemNteaTjeS9nOeahOWujOaVtOWIl+ihqO+8jOS5n+WPr+S7peWcqOW5q+WKqemBuOWWruS4reaMieKAnGvigJ3pjbXjgIJcbiIKKyLmjInigJw/4oCd5bCx6IO95ZG85Ye65bmr5Yqp6YG45Zau44CCXG4iCisKKyM6IGRzZWxlY3QvaGVscG1zZ3MuY2M6MTk2Cittc2dpZCAiS2V5c3Ryb2tlcyBmb3IgbWV0aG9kIHNlbGVjdGlvbiIKK21zZ3N0ciAi6YG45pOH5a6J6KOd5pa55byP55qE5oyJ6Y215pON5L2cIgorCisjOiBkc2VsZWN0L2hlbHBtc2dzLmNjOjE5NgorIywgZnV6enkKK21zZ2lkICIiCisiTW90aW9uIGtleXM6IE5leHQvUHJldmlvdXMsIFRvcC9FbmQsIFVwL0Rvd24sIEJhY2t3YXJkcy9Gb3J3YXJkczpcbiIKKyIgIGosIERvd24tYXJyb3cgICAgICAgICBrLCBVcC1hcnJvdyAgICAgICAgICAgICBtb3ZlIGhpZ2hsaWdodFxuIgorIiAgTiwgUGFnZS1kb3duLCBTcGFjZSAgIFAsIFBhZ2UtdXAsIEJhY2tzcGFjZSAgIHNjcm9sbCBsaXN0IGJ5IDEgcGFnZVxuIgorIiAgXm4gICAgICAgICAgICAgICAgICAgIF5wICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbCBsaXN0IGJ5IDEgbGluZVxuIgorIiAgdCwgSG9tZSAgICAgICAgICAgICAgIGUsIEVuZCAgICAgICAgICAgICAgICAgIGp1bXAgdG8gdG9wL2VuZCBvZiBsaXN0XG4iCisiICB1ICAgICAgICAgICAgICAgICAgICAgZCAgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGluZm8gYnkgMSBwYWdlXG4iCisiICBedSAgICAgICAgICAgICAgICAgICAgXmQgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsIGluZm8gYnkgMSBsaW5lXG4iCisiICBCLCBMZWZ0LWFycm93ICAgICAgICAgRiwgUmlnaHQtYXJyb3cgICAgICAgICAgcGFuIGRpc3BsYXkgYnkgMS8zIHNjcmVlblxuIgorIiAgXmIgICAgICAgICAgICAgICAgICAgIF5mICAgICAgICAgICAgICAgICAgICAgIHBhbiBkaXNwbGF5IGJ5IDEgY2hhcmFjdGVyXG4iCisiKFRoZXNlIGFyZSB0aGUgc2FtZSBtb3Rpb24ga2V5cyBhcyBpbiB0aGUgcGFja2FnZSBsaXN0IGRpc3BsYXkuKVxuIgorIlxuIgorIlF1aXQ6XG4iCisiIFJldHVybiwgRW50ZXIgICAgc2VsZWN0IHRoaXMgbWV0aG9kIGFuZCBnbyB0byBpdHMgY29uZmlndXJhdGlvbiBkaWFsb2d1ZVxuIgorIiB4LCBYICAgICAgICAgICAgIGV4aXQgd2l0aG91dCBjaGFuZ2luZyBvciBzZXR0aW5nIHVwIHRoZSBpbnN0YWxsYXRpb24gIgorIm1ldGhvZFxuIgorIlxuIgorIk1pc2NlbGxhbmVvdXM6XG4iCisiICA/LCBIZWxwLCBGMSAgICAgIHJlcXVlc3QgaGVscFxuIgorIiBebCAgICAgICAgICAgICAgICByZWRyYXcgZGlzcGxheVxuIgorIiAgLyAgICAgICAgICAgICAgICBzZWFyY2ggKGp1c3QgcmV0dXJuIHRvIGNhbmNlbClcbiIKKyIgIFxcICAgICAgICAgICAgICAgIHJlcGVhdCBsYXN0IHNlYXJjaFxuIgorbXNnc3RyICIiCisi56e75YuV5oyJ6Y2177ya5LiL5LiA5YCLL+WJjeS4gOWAi++8jOmgguerry/lupXnq6/vvIzkuIrnp7sv5LiL56e777yM5b6M56e7L+WJjeenu++8mlxuIgorIiAgbu+8jOS4i+euremgrSAgICAgICAgICAgICBw77yM5LiK566t6aCtICAgICAgICAgICAgICAg56e75YuV6auY5Lqu5omA5Zyo55qE5Zyw5pa5XG4iCisiICBO77yMUGFnZS1kb3du77yM56m65qC8ICAgIFDvvIxQYWdlLXVw77yMQmFja3NwYWNlICAg6K6T5YiX6KGo5ru+5YuV5LiA6aCBXG4iCisiICBebiAgICAgICAgICAgICAgICAgICAgXnAgICAgICAgICAgICAgICAgICAgICAg6K6T5YiX6KGo5ru+5YuV5LiA6KGMXG4iCisiICB077yMSG9tZSAgICAgICAgICAgICAgIGXvvIxFbmQgICAgICAgICAgICAgICAgICDot7PliLDliJfooajnmoTpoILnq68v5bqV56uvXG4iCisiICB1ICAgICAgICAgICAgICAgICAgICAgZCAgICAgICAgICAgICAgICAgICAgICAg6K6T55u46Zec6KiK5oGv5ru+5YuV5LiA6aCBXG4iCisiICBedSAgICAgICAgICAgICAgICAgICAgXmQgICAgICAgICAgICAgICAgICAgICAg6K6T55u46Zec6KiK5oGv5ru+5YuV5LiA6KGMXG4iCisiICBC77yM5bem566t6aCtICAgICAgICAgICAgIEbvvIzlj7Pnrq3poK0gICAgICAgICAgICAgICDorpPpoa/npLrlhaflrrnlt6blj7PlubPnp7sgMS8zIOeahOieouW5lSIKKyLlr6zluqZcbiIKKyIgIF5iICAgICAgICAgICAgICAgICAgICBeZiAgICAgICAgICAgICAgICAgICAgICDorpPpoa/npLrlhaflrrnlt6blj7PlubPnp7vkuIDlgIvlrZflhYPlr6wiCisi5bqmXG4iCisiKOWcqOWll+S7tuWIl+ihqOeVjOmdouS5n+S9v+eUqOWQjOaoo+eahOaMiemNteioreWumuOAgilcbiIKKyJcbiIKKyLpgIDlh7rvvJpcbiIKKyIgZW50ZXIgICAgICAgICAgICAg6YG45Lit6Kmy5a6J6KOd5pa55byP77yM5Lim6YCy5YWl5YW26Kit5a6a55WM6Z2iXG4iCisiIHjvvIxYICAgICAgICAgICAgIOmAgOWHuu+8jOiAjOS4lOS4jeWwjeWuieijneaWueW8j+S9nOS7u+S9leabtOaUueaIluioreWumlxuIgorIlxuIgorIuWFtuWug++8mlxuIgorIiAgPywgSGVscCwgRjEgICAgICDoq4vmsYLluavliqlcbiIKKyIgXmwgICAgICAgICAgICAgICAg6YeN55Wr6J6i5bmVXG4iCisiICAvICAgICAgICAgICAgICAgIOmAsuihjOaQnOWwiyjmjIllbnRlcuWPlua2iOaQnOWwiylcbiIKKyIgIFxcICAgICAgICAgICAgICAg6YeN5b6p5LiK5qyh55qE5pCc5bCLXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzo2MAorbXNnaWQgIlR5cGUgZHNlbGVjdCAtLWhlbHAgZm9yIGhlbHAuIgorbXNnc3RyICLovLjlhaUgZHNlbGVjdCAtLWhlbHAg5bCx5Y+v5Lul6Zax6K6A5bmr5Yqp6KiK5oGv44CCIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQzCittc2dpZCAiYSIKK21zZ3N0ciAiYSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0MworbXNnaWQgIltBXWNjZXNzIgorbXNnc3RyICLkvobmupBbQV0iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDMKK21zZ2lkICJDaG9vc2UgdGhlIGFjY2VzcyBtZXRob2QgdG8gdXNlLiIKK21zZ3N0ciAi6YG45pOH5omA5L2/55So55qE5a6J6KOd5L6G5rqQ44CCIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ0Cittc2dpZCAidSIKK21zZ3N0ciAidSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NAorbXNnaWQgIltVXXBkYXRlIgorbXNnc3RyICLmm7TmlrBbVV0iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDQKK21zZ2lkICJVcGRhdGUgbGlzdCBvZiBhdmFpbGFibGUgcGFja2FnZXMsIGlmIHBvc3NpYmxlLiIKK21zZ3N0ciAi5aaC5p6c5Y+v6IO955qE6Kmx77yM5pu05paw5Y+v55So55qE5aWX5Lu25YiX6KGo44CCIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ1Cittc2dpZCAicyIKK21zZ3N0ciAicyIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NQorbXNnaWQgIltTXWVsZWN0IgorbXNnc3RyICLpgbjmk4dbU10iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDUKK21zZ2lkICJSZXF1ZXN0IHdoaWNoIHBhY2thZ2VzIHlvdSB3YW50IG9uIHlvdXIgc3lzdGVtLiIKK21zZ3N0ciAi5bCN57O757Wx5Lit5a6J6KOd55qE5aWX5Lu25L2c5Y+W5o2o44CCIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ2Cittc2dpZCAiaSIKK21zZ3N0ciAiaSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NgorbXNnaWQgIltJXW5zdGFsbCIKK21zZ3N0ciAi5a6J6KOdW0ldIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ2Cittc2dpZCAiSW5zdGFsbCBhbmQgdXBncmFkZSB3YW50ZWQgcGFja2FnZXMuIgorbXNnc3RyICLlronoo53kuKbljYfntJrkuYvliY3mjIflrprnmoTlpZfku7bjgIIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDcKK21zZ2lkICJjIgorbXNnc3RyICJjIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ3Cittc2dpZCAiW0Ndb25maWciCittc2dzdHIgIuioreWumltDXSIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0NworbXNnaWQgIkNvbmZpZ3VyZSBhbnkgcGFja2FnZXMgdGhhdCBhcmUgdW5jb25maWd1cmVkLiIKK21zZ3N0ciAi5bCN5omA5pyJ5bCa5pyq6Kit5a6a55qE5aWX5Lu26YCy6KGM6Kit5a6aIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ4Cittc2dpZCAiciIKK21zZ3N0ciAiciIKKworIzogZHNlbGVjdC9tYWluLmNjOjE0OAorbXNnaWQgIltSXWVtb3ZlIgorbXNnc3RyICLliKrpmaRbUl0iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDgKK21zZ2lkICJSZW1vdmUgdW53YW50ZWQgc29mdHdhcmUuIgorbXNnc3RyICLliKrpmaTkuI3pnIDopoHnmoTlpZfku7YiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDkKK21zZ2lkICJxIgorbXNnc3RyICJxIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTQ5Cittc2dpZCAiW1FddWl0IgorbXNnc3RyICLpgIDlh7pbUV0iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNDkKK21zZ2lkICJRdWl0IGRzZWxlY3QuIgorbXNnc3RyICLpgIDlh7ogZHNlbGVjdCDnqIvluo8iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNTAKK21zZ2lkICJtZW51IgorbXNnc3RyICLpgbjllq4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNTUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiBgJXMnIHBhY2thZ2UgaGFuZGxpbmcgZnJvbnRlbmQgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiRGViaWFuIOKAnCVz4oCdIOWll+S7tuaTjeS9nOWJjeerr+eoi+W8jyIKKworIzogZHNlbGVjdC9tYWluLmNjOjE1OAorbXNnaWQgIiIKKyJDb3B5cmlnaHQgKEMpIDE5OTQtMTk5NiBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLlxuIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoxNjIKKyMsIGZ1enp5Cittc2dpZCAiIgorIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgb3JcbiIKKyJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKK21zZ3N0ciAiIgorIumAmeaYr+iHqueUsei7n+mrlO+5lOimgeeNsuefpeW+qeWItuipsui7n+mrlOeahOWJjeaPkOWSjOaineS7tu+8jOiri+WPg+mWsSBHTlUgUHVibGljIExpY2Vuc2UgXG4iCisi56ys5LqM5oiW5pu05paw55qE54mI5pys44CC6Kmy6Luf6auU44CQ5LiN44CR5o+Q5L6b5Lu75L2V5pOU5L+d44CCXG4iCisi6KuL6YCa6YGO5Z+36KGMIGRwa2ctZGViIC0tbGljZW5jZSDkvobmn6XnnIvniYjmrIrlkozoqLHlj6/oqLznmoTntLDnr4DjgIJcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE3MiBkc2VsZWN0L21haW4uY2M6MjIwCittc2dpZCAiPHN0YW5kYXJkIG91dHB1dD4iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE4MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIFs8YWN0aW9uPiAuLi5dXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9tYWluLmNjOjE4NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorIiAgLS1leHBlcnQgICAgICAgICAgICAgICAgICAgVHVybiBvbiBleHBlcnQgbW9kZS5cbiIKKyIgIC0tZGVidWcgPGZpbGU+IHwgLUQ8ZmlsZT4gIFR1cm4gb24gZGVidWdnaW5nLCBzZW5kaW5nIG91dHB1dCB0byA8ZmlsZT4uXG4iCisiICAtLWNvbG91ciB8IC0tY29sb3Igc2NyZWVucGFydDpbZm9yZWdyb3VuZF0sW2JhY2tncm91bmRdWzphdHRyWythdHRyKy4uXV1cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENvbmZpZ3VyZSBzY3JlZW4gY29sb3Vycy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L21haW4uY2M6MTk2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgICBTaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkFjdGlvbnM6XG4iCisiICBhY2Nlc3MgdXBkYXRlIHNlbGVjdCBpbnN0YWxsIGNvbmZpZyByZW1vdmUgcXVpdFxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2NyZWVucGFydHM6XG4iCittc2dzdHIgIumhr+ekuumDqOWIhu+8mlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjEwCisjLCBjLWZvcm1hdAorbXNnaWQgIkNvbG91cnM6XG4iCittc2dzdHIgIumhj+iJsu+8mlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjE1CisjLCBjLWZvcm1hdAorbXNnaWQgIkF0dHJpYnV0ZXM6XG4iCittc2dzdHIgIuWxrOaAp++8mlxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MjMzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkbid0IG9wZW4gZGVidWcgZmlsZSBgJS4yNTVzJ1xuIgorbXNnc3RyICLnhKHms5XmiZPplovlgbXpjK/mqpTmoYjigJwlLjI1NXPigJ1cbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjI1MworIywgYy1mb3JtYXQKK21zZ2lkICJJbnZhbGlkICVzIGAlcydcbiIKK21zZ3N0ciAi54Sh5pWI55qEICVzIOKAnCVz4oCdXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyNzAKK21zZ2lkICJzY3JlZW4gcGFydCIKK21zZ3N0ciAi6aGv56S65ZOq5LiA6YOo5YiGIgorCisjOiBkc2VsZWN0L21haW4uY2M6Mjc2Cittc2dpZCAiTnVsbCBjb2xvdXIgc3BlY2lmaWNhdGlvblxuIgorbXNnc3RyICLmnKrmjIflrprpoY/oibJcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjI4NCBkc2VsZWN0L21haW4uY2M6Mjg5Cittc2dpZCAiY29sb3VyIgorbXNnc3RyICLpoY/oibIiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzoyOTcKK21zZ2lkICJjb2xvdXIgYXR0cmlidXRlIgorbXNnc3RyICLpoY/oibLlsazmgKciCisKKyM6IGRzZWxlY3QvbWFpbi5jYzozMjkKK21zZ2lkICJUZXJtaW5hbCBkb2VzIG5vdCBhcHBlYXIgdG8gc3VwcG9ydCBjdXJzb3IgYWRkcmVzc2luZy5cbiIKK21zZ3N0ciAi57WC56uv5qmf5LiN5pSv5oyB5ri45qiZ55qE5a6a5L2N44CCXG4iCisKKyM6IGRzZWxlY3QvbWFpbi5jYzozMzEKK21zZ2lkICJUZXJtaW5hbCBkb2VzIG5vdCBhcHBlYXIgdG8gc3VwcG9ydCBoaWdobGlnaHRpbmcuXG4iCittc2dzdHIgIue1guerr+apn+S4jeaUr+aMgemrmOS6rumhr+ekuuOAglxuIgorCisjOiBkc2VsZWN0L21haW4uY2M6MzMzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiU2V0IHlvdXIgVEVSTSB2YXJpYWJsZSBjb3JyZWN0bHksIHVzZSBhIGJldHRlciB0ZXJtaW5hbCxcbiIKKyJvciBtYWtlIGRvIHdpdGggdGhlIHBlci1wYWNrYWdlIG1hbmFnZW1lbnQgdG9vbCAlcy5cbiIKK21zZ3N0ciAiIgorIuiri+ato+eiuuioreWumuaCqOeahCBURVJNIOiuiumHj++8jOeUqOS4gOWAi+abtOWQiOmBqeeahOe1guerr+apn+mhnuWei++8jFxuIgorIuaIluiAheaUueeUqOmHneWwjeWWruS4gOWll+S7tueahOWll+ijneeuoeeQhuW3peWFt++8jOWNsyAiCisKKyM6IGRzZWxlY3QvbWFpbi5jYzozMzYKK21zZ2lkICJ0ZXJtaW5hbCBsYWNrcyBuZWNlc3NhcnkgZmVhdHVyZXMsIGdpdmluZyB1cCIKK21zZ3N0ciAi55Sx5pa857WC56uv5qmf57y65LmP5b+F6KaB55qE54m56Imy77yM5Y+q5b6X5Lit5q2i5pON5L2cIgorCisjOiBkc2VsZWN0L21haW4uY2M6NDE3Cittc2dpZCAiIgorIlxuIgorIlxuIgorIk1vdmUgYXJvdW5kIHdpdGggXlAgYW5kIF5OLCBjdXJzb3Iga2V5cywgaW5pdGlhbCBsZXR0ZXJzLCBvciBkaWdpdHM7XG4iCisiUHJlc3MgPGVudGVyPiB0byBjb25maXJtIHNlbGVjdGlvbi4gICBeTCByZWRyYXdzIHNjcmVlbi5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIlxuIgorIlxuIgorIuWPr+S7peeUqCBeUCDlkowgXk7jgIHmlrnlkJHpjbXjgIHliJ3lp4vlrZfmr43miJbogIXmlbjlrZfpjbXkvobnp7vli5XmuLjmqJnvuZRcbiIKKyLmjIkgPGVudGVyPiDkvobnorroqo3jgIIgIOeUqCBeTCDkvobph43nuaronqLluZXjgIJcbiIKKyJcbiIKKworIzogZHNlbGVjdC9tYWluLmNjOjQyOAorbXNnaWQgIiIKKyJcbiIKKyJcbiIKKyJSZWFkLW9ubHkgYWNjZXNzOiBvbmx5IHByZXZpZXcgb2Ygc2VsZWN0aW9ucyBpcyBhdmFpbGFibGUhIgorbXNnc3RyICIiCisiXG4iCisiXG4iCisi5ZSv6K6A5a2Y5Y+W77ya5YOF5YOF5Y+v5Lul6aCQ6Ka96KKr6YG45Lit55qE6aCF55uu77yBIgorCisjOiBkc2VsZWN0L21haW4uY2M6NDQ4Cittc2dpZCAiZmFpbGVkIHRvIGdldGNoIGluIG1haW4gbWVudSIKK21zZ3N0ciAi5Zyo5Li76YG45Zau5LitIGdldGNoIOWkseaVlyIKKworIzogZHNlbGVjdC9tYWluLmNjOjUzMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGFjdGlvbiBzdHJpbmcgYCUuNTBzJyIKK21zZ3N0ciAi5LiN6IO96K2Y5Yil55qE5pON5L2c5a2X5Liy4oCcJS41MHPigJ0iCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6NzcKK21zZ2lkICJkc2VsZWN0IC0gbGlzdCBvZiBhY2Nlc3MgbWV0aG9kcyIKK21zZ3N0ciAiZHNlbGVjdCAtIOWtmOWPluaWueW8j+eahOWIl+ihqCIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzo4NgorIywgYy1mb3JtYXQKK21zZ2lkICJBY2Nlc3MgbWV0aG9kIGAlcycuIgorbXNnc3RyICLlrZjlj5bmlrnlvI/igJwlc+KAneOAgiIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxMjAKK21zZ2lkICJBYmJyZXYuIgorbXNnc3RyICLnuK7lr6siCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTIxIGRzZWxlY3QvcGtnaW5mby5jYzoxMDUgZHNlbGVjdC9wa2d0b3AuY2M6MjkxCittc2dpZCAiRGVzY3JpcHRpb24iCittc2dzdHIgIuewoeS7iyIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxNjQgZHNlbGVjdC9wa2dsaXN0LmNjOjU3MgorbXNnaWQgImRvdXBkYXRlIGZhaWxlZCIKK21zZ3N0ciAiZG91cGRhdGUg5aSx5pWXIgorCisjOiBkc2VsZWN0L21ldGhsaXN0LmNjOjE2NiBkc2VsZWN0L3BrZ2xpc3QuY2M6NTc1Cittc2dpZCAiZmFpbGVkIHRvIHVuYmxvY2sgU0lHV0lOQ0giCittc2dzdHIgIueEoeazleino+mZpOmYu+WhniBTSUdXSU5DSCDkv6HomZ8iCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTcwIGRzZWxlY3QvcGtnbGlzdC5jYzo1ODAKK21zZ2lkICJmYWlsZWQgdG8gcmUtYmxvY2sgU0lHV0lOQ0giCittc2dzdHIgIumHjeaWsOmYu+WhniBTSUdXSU5DSCDkv6HomZ/lpLHmlZciCisKKyM6IGRzZWxlY3QvbWV0aGxpc3QuY2M6MTcxIGRzZWxlY3QvcGtnbGlzdC5jYzo1ODIKK21zZ2lkICJnZXRjaCBmYWlsZWQiCittc2dzdHIgImdldGNoIOWkseaVlyIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxODgKKyMsIGZ1enp5Cittc2dpZCAiRXhwbGFuYXRpb24iCittc2dzdHIgIuW+jOmdouWuieijneaWueW8j+eahOiqquaYjiIKKworIzogZHNlbGVjdC9tZXRobGlzdC5jYzoxOTcKK21zZ2lkICJObyBleHBsYW5hdGlvbiBhdmFpbGFibGUuIgorbXNnc3RyICLmspLmnInnmbznj77nm7jpl5zoqqrmmI7jgIIiCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjY3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJcbiIKKyIlczogJXNcbiIKK21zZ3N0ciAiIgorIlxuIgorIlxuIgorIiVz77yaJXNcbiIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6NzAKK21zZ2lkICIiCisiXG4iCisiUHJlc3MgPGVudGVyPiB0byBjb250aW51ZS4iCittc2dzdHIgIiIKKyJcbiIKKyLmjIkgPGVudGVyPiDnubznuozjgIIiCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjE2MQorIywgYy1mb3JtYXQKK21zZ2lkICJQcmVzcyA8ZW50ZXI+IHRvIGNvbnRpbnVlLlxuIgorbXNnc3RyICLoq4vmjIkgPGVudGVyPiDnubznuozjgIJcbiIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MTYyCisjLCBmdXp6eQorbXNnaWQgIjxzdGFuZGFyZCBlcnJvcj4iCittc2dzdHIgIuWvq+aomea6lumMr+iqpOi8uOWHuuaZguWHuumMryIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MTY1Cittc2dpZCAiZXJyb3IgcmVhZGluZyBhY2tub3dsZWRnZW1lbnQgb2YgcHJvZ3JhbSBmYWlsdXJlIG1lc3NhZ2UiCittc2dzdHIgIuiugOWPlueoi+W6j+eahOmMr+iqpOaPkOekuuaZguWHuumMryIKKworIzogZHNlbGVjdC9tZXRob2QuY2M6MTk2Cittc2dpZCAidXBkYXRlIGF2YWlsYWJsZSBsaXN0IHNjcmlwdCIKK21zZ3N0ciAi5pu05paw5aWX5Lu25YiX6KGo55qEc2NyaXB0IgorCisjOiBkc2VsZWN0L21ldGhvZC5jYzoyMDAKK21zZ2lkICJpbnN0YWxsYXRpb24gc2NyaXB0IgorbXNnc3RyICLlronoo51zY3JpcHTlpZfku7YiCisKKyM6IGRzZWxlY3QvbWV0aG9kLmNjOjI0NgorbXNnaWQgInF1ZXJ5L3NldHVwIHNjcmlwdCIKK21zZ3N0ciAi5p+l6KmiL+ioreWumiBzY3JpcHQgIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzo1MworIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gbWV0aG9kIG9wdGlvbnMgZmlsZSBgJS4yNTBzJyAtLSAlcyIKK21zZ3N0ciAi5a6J6KOd5pa55byP55qE6YG46aCF5qqU5qGI4oCcJS4yNTBz4oCd5Lit5pyJ6Kqe5rOV6Yyv6KqkIC0tICVzIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzo1OQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciByZWFkaW5nIG9wdGlvbnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi6K6A5Y+W5a6J6KOd5pa55byP55qE6YG46aCF5qqU5qGI4oCcJS4yNTBz4oCd5pmC5Ye66YyvIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzo5MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBgJS4yNTBzJyBkaXJlY3RvcnkgZm9yIHJlYWRpbmcgbWV0aG9kcyIKK21zZ3N0ciAi54Sh5rOV6K6A5Y+W4oCcJS4yNTBz4oCd55uu6YyE5Lit6Zec5pa85a6J6KOd5pa55byP55qE6KiK5oGvIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxMDYKKyMsIGMtZm9ybWF0Cittc2dpZCAibWV0aG9kIGAlLjI1MHMnIGhhcyBuYW1lIHRoYXQgaXMgdG9vIGxvbmcgKCVkID4gJWQgY2hhcmFjdGVycykiCittc2dzdHIgIuWuieijneaWueW8j+KAnCUuMjUwc+KAneeahOWQjeWtl+mBjumVtyglZCA+ICVkIOWAi+Wtl+WFgykiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjExNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gYWNjZXNzIG1ldGhvZCBzY3JpcHQgYCUuMjUwcyciCittc2dzdHIgIueEoeazleWPluW+lyBtZXRob2Qgc2NyaXB04oCcJS4yNTBz4oCdIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgbWV0aG9kIG9wdGlvbnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi54Sh5rOV6K6A5Y+WIG1ldGhvZCBzY3JpcHTigJwlLjI1MHPigJ0iCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE0NworbXNnaWQgIm5vbi1kaWdpdCB3aGVyZSBkaWdpdCB3YW50ZWQiCittc2dzdHIgIuWcqOacrOipsuacieaVuOWtl+eahOWcsOaWueaykuacieeZvOePvuaVuOWtlyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTUwCittc2dpZCAiRU9GIGluIGluZGV4IHN0cmluZyIKK21zZ3N0ciAi5Zyo57Si5byV5a2X5Liy5Lit55m854++5LqGIEVPRiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTUzCittc2dpZCAiaW5kZXggc3RyaW5nIHRvbyBsb25nIgorbXNnc3RyICLntKLlvJXlrZfkuLLpgY7plbciCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE1NgorbXNnaWQgIm5ld2xpbmUgYmVmb3JlIG9wdGlvbiBuYW1lIHN0YXJ0IgorbXNnc3RyICLlnKjpgbjpoIXlkI3nqLHplovlp4vliY3lsLHnmbznj77kuobmj5vooYznrKbomZ8iCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE1OAorbXNnaWQgIkVPRiBiZWZvcmUgb3B0aW9uIG5hbWUgc3RhcnQiCittc2dzdHIgIuWcqOmBuOmgheWQjemWi+Wni+WJjeWwseeZvOePvuS6hiBFT0YiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE2MgorbXNnaWQgIm5vbmFscGhhIHdoZXJlIG9wdGlvbiBuYW1lIHN0YXJ0IHdhbnRlZCIKK21zZ3N0ciAi5Zyo5pys6Kmy5piv6YG46aCF5ZCN6ZaL6aCt55qE5Zyw5pa55LiN5piv5a2X5q+NIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNjQKK21zZ2lkICJub24tYWxwaGFudW0gaW4gb3B0aW9uIG5hbWUiCittc2dzdHIgIuWcqOmBuOmgheWQjeS4reeZvOePvuS6huaXouS4jeaYr+Wtl+avjeS5n+S4jeaYr+aVuOWtl+eahOWtl+WFgyIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTY3Cittc2dpZCAiRU9GIGluIG9wdGlvbiBuYW1lIgorbXNnc3RyICLlnKjpgbjpoIXlkI3kuK3nmbznj77kuoYgRU9GIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxNzIKK21zZ2lkICJuZXdsaW5lIGJlZm9yZSBzdW1tYXJ5IgorbXNnc3RyICLlnKjmpoLov7DliY3nmbznj77kuobmj5vooYznrKbomZ8iCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE3NAorbXNnaWQgIkVPRiBiZWZvcmUgc3VtbWFyeSIKK21zZ3N0ciAi5Zyo5qaC6L+w5YmN55m854++5LqGIEVPRiIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTgwCittc2dpZCAiRU9GIGluIHN1bW1hcnkgLSBtaXNzaW5nIG5ld2xpbmUiCittc2dzdHIgIuWcqOamgui/sOS4reeZvOePvuS6hiBFT0YgLSDmnKzoqbLmmK/mj5vooYznrKbomZ/nmoQiCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjE5MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBvcHRpb24gZGVzY3JpcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi54Sh5rOV5omT6ZaL6YG46aCF6Kqq5piO5qqU5qGI4oCcJS4yNTBz4oCdIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoxOTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgb3B0aW9uIGRlc2NyaXB0aW9uIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIueEoeazlSBzdGF0IOmBuOmgheiqquaYjuaqlOahiOKAnCUuMjUwc+KAnSIKKworIzogZHNlbGVjdC9tZXRocGFyc2UuY2M6MTk4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZWFkIG9wdGlvbiBkZXNjcmlwdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLoroDlj5bpgbjpoIXoqqrmmI7mqpTigJwlLjI1MHPigJ3lpLHmlZciCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjIwMQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBkdXJpbmcgcmVhZCBvZiBvcHRpb24gZGVzY3JpcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi6K6A5Y+W6YG46aCF6Kqq5piO5qqU4oCcJS4yNTBz4oCd5pmC5Ye66YyvIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgZHVyaW5nIHJlYWQgb2YgbWV0aG9kIG9wdGlvbnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi6K6A5Y+W5a6J6KOd5pa55byP55qE6YG46aCF5qqU5qGI4oCcJS4yNTBz4oCd5pmC5Ye66YyvIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gY3VycmVudCBvcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi54Sh5rOV5omT6ZaL55uu5YmN55qE6YG46aCF5qqU5qGI4oCcJS4yNTBz4oCdIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyODkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gbmV3IG9wdGlvbiBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLnhKHms5XmiZPplovmlrDnmoTnmoTpgbjpoIXmqpTmoYjigJwlLjI1MHPigJ0iCisKKyM6IGRzZWxlY3QvbWV0aHBhcnNlLmNjOjI5MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgbmV3IG9wdGlvbiB0byBgJS4yNTBzJyIKK21zZ3N0ciAi54Sh5rOV5a+r5YWl5paw55qE6YG46aCF5qqU5qGI4oCcJS4yNTBz4oCdIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyOTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIG5ldyBvcHRpb24gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi54Sh5rOV6Zec6ZaJ5paw55qE6YG46aCF5qqU5qGI4oCcJS4yNTBz4oCdIgorCisjOiBkc2VsZWN0L21ldGhwYXJzZS5jYzoyOTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IG9wdGlvbiBhcyBgJS4yNTBzJyIKK21zZ3N0ciAi54Sh5rOV5a6J6KOd5paw55qE6YG46aCF5qqU5qGI5Yiw4oCcJS4yNTBz4oCdIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MzYKK21zZ2lkICJuZXcgcGFja2FnZSIKK21zZ3N0ciAi5paw5aWX5Lu2IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MzcKK21zZ2lkICJpbnN0YWxsIgorbXNnc3RyICLlronoo50iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzozOAorbXNnaWQgImhvbGQiCittc2dzdHIgIuS/neaMgSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjM5Cittc2dpZCAicmVtb3ZlIgorbXNnc3RyICLliKrpmaQiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo0MAorbXNnaWQgInB1cmdlIgorbXNnc3RyICLmuIXpmaQiCisKKyMuIFRSQU5TTEFUT1JTOiBUaGUgc3BhY2UgaXMgYSB0cmljayB0byB3b3JrIGFyb3VuZCBnZXR0ZXh0IHdoaWNoIHVzZXMKKyMuICogdGhlIGVtcHR5IHN0cmluZyB0byBzdG9yZSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgdHJhbnNsYXRpb24uIERPIE5PVAorIy4gKiBDSEFOR0UgVEhBVCBJTiBBIFRSQU5TTEFUSU9OISBUaGUgY29kZSByZWFsbHkgcmVsaWVzIG9uIHRoYXQgYmVpbmcKKyMuICogYSBzaW5nbGUgc3BhY2UuCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NDcKK21zZ2lkICIgIgorbXNnc3RyICIgIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NDgKK21zZ2lkICJSRUlOU1RBTEwiCittc2dzdHIgIuOAkOmHjeaWsOWuieijneOAkSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjUxCittc2dpZCAibm90IGluc3RhbGxlZCIKK21zZ3N0ciAi5rKS5pyJ5a6J6KOdIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTIKK21zZ2lkICJyZW1vdmVkIChjb25maWdzIHJlbWFpbikiCittc2dzdHIgIuWIqumZpCjmrpjlrZjoqK3lrprmqpTmoYgpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTMKK21zZ2lkICJoYWxmIGluc3RhbGxlZCIKK21zZ3N0ciAi5bey6YOo5YiG5a6J6KOdIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTQKK21zZ2lkICJ1bnBhY2tlZCAobm90IHNldCB1cCkiCittc2dzdHIgIuW3suino+Wjk+e4rijlsJrmnKroqK3lrpopIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTUKK21zZ2lkICJoYWxmIGNvbmZpZ3VyZWQgKGNvbmZpZyBmYWlsZWQpIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo1NgorbXNnaWQgImF3YWl0aW5nIHRyaWdnZXIgcHJvY2Vzc2luZyIKK21zZ3N0ciAiIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NTcKK21zZ2lkICJ0cmlnZ2VyZWQiCittc2dzdHIgIiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjU4Cittc2dpZCAiaW5zdGFsbGVkIgorbXNnc3RyICLlt7Llronoo53lroznlaIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo2MQorbXNnaWQgIlJlcXVpcmVkIgorbXNnc3RyICLpnIDopoEiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo2MgorbXNnaWQgIkltcG9ydGFudCIKK21zZ3N0ciAi6YeN6KaBIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjMKK21zZ2lkICJTdGFuZGFyZCIKK21zZ3N0ciAi5qiZ5rqWIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjQKK21zZ2lkICJPcHRpb25hbCIKK21zZ3N0ciAi5Y+v6YG45pOHIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjUKK21zZ2lkICJFeHRyYSIKK21zZ3N0ciAi6aGN5aSWIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NjYKK21zZ2lkICIhQnVnISIKK21zZ3N0ciAiIeiHreifsiEiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo2NworbXNnaWQgIlVuY2xhc3NpZmllZCIKK21zZ3N0ciAi5pyq5q246aGeIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzAKK21zZ2lkICJzdWdnZXN0cyIKK21zZ3N0ciAi5bu66K2wIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6NzEKK21zZ2lkICJyZWNvbW1lbmRzIgorbXNnc3RyICLmjqjolqYiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3MgorbXNnaWQgImRlcGVuZHMgb24iCittc2dzdHIgIuebuOS+neaWvCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjczCittc2dpZCAicHJlLWRlcGVuZHMgb24iCittc2dzdHIgIumgkOebuOS+neaWvCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjc0Cittc2dpZCAiYnJlYWtzIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3NQorbXNnaWQgImNvbmZsaWN0cyB3aXRoIgorbXNnc3RyICLoiIfkuYvooZ3nqoEiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3NgorbXNnaWQgInByb3ZpZGVzIgorbXNnc3RyICLmj5DkvpsiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3NworbXNnaWQgInJlcGxhY2VzIgorbXNnc3RyICLmm7/mj5siCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo3OAorbXNnaWQgImVuaGFuY2VzIgorbXNnc3RyICLmnInliqnmlrwiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4MQorbXNnaWQgIlJlcSIKK21zZ3N0ciAi6ZyAIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODIKK21zZ2lkICJJbXAiCittc2dzdHIgIuimgSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjgzCittc2dpZCAiU3RkIgorbXNnc3RyICLmqJkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4NAorbXNnaWQgIk9wdCIKK21zZ3N0ciAi6YG4IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6ODUKK21zZ2lkICJYdHIiCittc2dzdHIgIumkmCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjg2Cittc2dpZCAiYlVHIgorbXNnc3RyICLnkZUiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo4NworbXNnaWQgIj8iCittc2dzdHIgIj8iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo5NSBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTE1Cittc2dpZCAiQnJva2VuIgorbXNnc3RyICLmnInmlYXpmpwiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo5NgorbXNnaWQgIk5ldyIKK21zZ3N0ciAi5paw55qEIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6OTcKK21zZ2lkICJVcGRhdGVkIgorbXNnc3RyICLmnInmm7TmlrAiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzo5OAorbXNnaWQgIk9ic29sZXRlL2xvY2FsIgorbXNnc3RyICLmt5jmsbAv5pys5ZywIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6OTkKK21zZ2lkICJVcC10by1kYXRlIgorbXNnc3RyICLlt7Lmm7TmlrAiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMDAKK21zZ2lkICJBdmFpbGFibGUiCittc2dzdHIgIuWPr+eUqCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwMSBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTE3Cittc2dpZCAiUmVtb3ZlZCIKK21zZ3N0ciAi5bey5Yiq6ZmkIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTAyIGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxMTEKK21zZ2lkICJCcm9rZW5seSBpbnN0YWxsZWQgcGFja2FnZXMiCittc2dzdHIgIuacieWVj+mhjOeahOW3suWuieijneWll+S7tiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwMworbXNnaWQgIk5ld2x5IGF2YWlsYWJsZSBwYWNrYWdlcyIKK21zZ3N0ciAi5paw55qE5Y+v55So5aWX5Lu2IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTA0Cittc2dpZCAiVXBkYXRlZCBwYWNrYWdlcyAobmV3ZXIgdmVyc2lvbiBpcyBhdmFpbGFibGUpIgorbXNnc3RyICLlpZfku7bmnInmm7TmlrDniYjmnKwo5pyJ5pu05paw55qE54mI5pys5Y+v55So5LqGKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwNQorbXNnaWQgIk9ic29sZXRlIGFuZCBsb2NhbCBwYWNrYWdlcyBwcmVzZW50IG9uIHN5c3RlbSIKK21zZ3N0ciAi57O757Wx5Lit5a6J6KOd6YCZ5Lqb55qE5aWX5Lu25piv5bey5reY5rGw55qE5ZKM5pys5Zyw55qEIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTA2Cittc2dpZCAiVXAgdG8gZGF0ZSBpbnN0YWxsZWQgcGFja2FnZXMiCittc2dzdHIgIuWuieijneS6hueahOWll+S7tueJiOacrOaYr+acgOaWsOeahCIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwNworbXNnaWQgIkF2YWlsYWJsZSBwYWNrYWdlcyAobm90IGN1cnJlbnRseSBpbnN0YWxsZWQpIgorbXNnc3RyICLlj6/nlKjnmoTlpZfku7Yo55uu5YmN5rKS5pyJ6KKr5a6J6KOdKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjEwOAorbXNnaWQgIlJlbW92ZWQgYW5kIG5vIGxvbmdlciBhdmFpbGFibGUgcGFja2FnZXMiCittc2dzdHIgIuiiq+WIqumZpOiAjOS4lOS4jeWGjeWPr+eUqOeahOWll+S7tiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExMgorbXNnaWQgIkluc3RhbGxlZCBwYWNrYWdlcyIKK21zZ3N0ciAi5bey57aT5a6J6KOd55qE5aWX5Lu2IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTEzCittc2dpZCAiUmVtb3ZlZCBwYWNrYWdlcyAoY29uZmlndXJhdGlvbiBzdGlsbCBwcmVzZW50KSIKK21zZ3N0ciAi6KKr5Yiq6Zmk55qE5aWX5Lu2ICjlhbboqK3lrprmqpTmoYjku43nhLblrZjlnKjmlrzns7vntbHkuK0pIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTE0Cittc2dpZCAiUHVyZ2VkIHBhY2thZ2VzIGFuZCB0aG9zZSBuZXZlciBpbnN0YWxsZWQiCittc2dzdHIgIuiiq+WujOWFqOa4hemZpOeahOWll+S7tuS7peWPiumCo+S6m+W+nuacquiiq+WuieijnemBjueahOWll+S7tiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjExNgorbXNnaWQgIkluc3RhbGxlZCIKK21zZ3N0ciAi5bey5a6J6KOdIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MTE4Cittc2dpZCAiUHVyZ2VkIgorbXNnc3RyICLlt7LlvrnlupXnp7vpmaQiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoxOTgKK21zZ2lkICJkc2VsZWN0IC0gcmVjdXJzaXZlIHBhY2thZ2UgbGlzdGluZyIKK21zZ3N0ciAiZHNlbGVjdCAtIOmBnui/tOWcsOWIl+WHuuWll+S7tiIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjE5OQorbXNnaWQgImRzZWxlY3QgLSBpbnNwZWN0aW9uIG9mIHBhY2thZ2Ugc3RhdGVzIgorbXNnc3RyICJkc2VsZWN0IC0g5qqi6KaW5aWX5Lu255qE54uA5oWLIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjAwCittc2dpZCAiZHNlbGVjdCAtIG1haW4gcGFja2FnZSBsaXN0aW5nIgorbXNnc3RyICJkc2VsZWN0IC0g5aWX5Lu25Li75YiX6KGoIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjA4Cittc2dpZCAiIChieSBzZWN0aW9uKSIKK21zZ3N0ciAiICjkvp3poZ7liKXljYDliIYpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjExCittc2dpZCAiIChhdmFpbC4sIHNlY3Rpb24pIgorbXNnc3RyICIgKOS+neaYr+WQpuWPr+eUqOWSjOaJgOWxrOmhnuWIpSkiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMTQKK21zZ2lkICIgKHN0YXR1cywgc2VjdGlvbikiCittc2dzdHIgIiAo5L6d54uA5oWL5ZKM5omA5bGs6aGe5YilKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjIyMworbXNnaWQgIiAoYnkgcHJpb3JpdHkpIgorbXNnc3RyICIgKOS+neWEquWFiOe0mikiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMjYKK21zZ2lkICIgKGF2YWlsLiwgcHJpb3JpdHkpIgorbXNnc3RyICIgKOS+neaYr+WQpuWPr+eUqOWSjOWEquWFiOe0mikiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMjkKK21zZ2lkICIgKHN0YXR1cywgcHJpb3JpdHkpIgorbXNnc3RyICIgKOS+neeLgOaFi+WSjOWEquWFiOe0mikiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyMzggZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI1MAorbXNnaWQgIiAoYWxwaGFiZXRpY2FsbHkpIgorbXNnc3RyICIgKOS+neWtl+avjeihqOmghuW6jykiCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNDEKK21zZ2lkICIgKGJ5IGF2YWlsYWJpbGl0eSkiCittc2dzdHIgIiAo5L6d5piv5ZCm5Y+v55SoKSIKKworIzogZHNlbGVjdC9wa2dkaXNwbGF5LmNjOjI0NAorbXNnaWQgIiAoYnkgc3RhdHVzKSIKK21zZ3N0ciAiICjkvp3ni4DmhYvljYDliIYpIgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjU4Cittc2dpZCAiIG1hcms6Ky89Ly0gdGVyc2U6diBoZWxwOj8iCittc2dzdHIgIiDmqJnoqJg6Ky89Ly0g57Ch55WlOnYg5bmr5YqpOj8iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNTkKK21zZ2lkICIgbWFyazorLz0vLSB2ZXJib3NlOnYgaGVscDo/IgorbXNnc3RyICIg5qiZ6KiYOisvPS8tIOips+eboTp2IOW5q+WKqTo/IgorCisjOiBkc2VsZWN0L3BrZ2Rpc3BsYXkuY2M6MjYwCittc2dpZCAiIHRlcnNlOnYgaGVscDo/IgorbXNnc3RyICIg57Ch55WlOnYg5bmr5YqpOj8iCisKKyM6IGRzZWxlY3QvcGtnZGlzcGxheS5jYzoyNjEKK21zZ2lkICIgdmVyYm9zZTp2IGhlbHA6PyIKK21zZ3N0ciAiIOips+eboTp2IOW5q+WKqTo/IgorCisjOiBkc2VsZWN0L3BrZ2luZm8uY2M6ODAKK21zZ2lkICIiCisiVGhlIGxpbmUgeW91IGhhdmUgaGlnaGxpZ2h0ZWQgcmVwcmVzZW50cyBtYW55IHBhY2thZ2VzOyBpZiB5b3UgYXNrIHRvICIKKyJpbnN0YWxsLCByZW1vdmUsIGhvbGQsIGV0Yy4gaXQgeW91IHdpbGwgYWZmZWN0IGFsbCB0aGUgcGFja2FnZXMgd2hpY2ggbWF0Y2ggIgorInRoZSBjcml0ZXJpb24gc2hvd24uXG4iCisiXG4iCisiSWYgeW91IG1vdmUgdGhlIGhpZ2hsaWdodCB0byBhIGxpbmUgZm9yIGEgcGFydGljdWxhciBwYWNrYWdlIHlvdSB3aWxsIHNlZSAiCisiaW5mb3JtYXRpb24gYWJvdXQgdGhhdCBwYWNrYWdlIGRpc3BsYXllZCBoZXJlLlxuIgorIllvdSBjYW4gdXNlIGBvJyBhbmQgYE8nIHRvIGNoYW5nZSB0aGUgc29ydCBvcmRlciBhbmQgZ2l2ZSB5b3Vyc2VsZiB0aGUgIgorIm9wcG9ydHVuaXR5IHRvIG1hcmsgcGFja2FnZXMgaW4gZGlmZmVyZW50IGtpbmRzIG9mIGdyb3Vwcy4iCittc2dzdHIgIiIKKyLmgqjnj77lnKjpq5jkuq7poa/npLrnmoTku6PooajokZflpJrlgIvlpZfku7bjgILlpoLmnpzmgqjopoHmsYLlronoo53jgIHliKrpmaTjgIHkv53mjIHnrYnnrYnvvIzmgqjlsIfmnINcbiIKKyLlvbHpn7/liLDnrKblkIjmiYDnpLrmqJnmupbnmoTmiYDmnInlpZfku7bjgIJcbiIKKyJcbiIKKyLlpoLmnpzmgqjnp7vli5Xpq5jkuq7lhYnmo5LliLDllq7lgIvlpZfku7bmiYDlnKjnmoTooYzkuIrvvIzmgqjlsIfmnIPnnIvliLDpgJnoo6Hpoa/npLrnmoTmmK/oqbLlpZfku7bnmoTnm7hcbiIKKyLpl5zoqIrmga/jgIJcbiIKKyLmgqjlj6/ku6XmjIkgYG8nIOaIluiAhSBgTycg5L6G5Lul5LiN5ZCM55qE6KaP5YmH5o6S5bqP77yM6YCZ5qij5oKo5bCx6IO95Zyo5LiN5ZCM6aGe5Z6L55qE5aWX5Lu25L2cXG4iCisi5qiZ6KiY5LqG44CCIgorCisjOiBkc2VsZWN0L3BrZ2luZm8uY2M6OTMKKyMsIGZ1enp5Cittc2dpZCAiSW50ZXJyZWxhdGlvbnNoaXBzIgorbXNnc3RyICLlpZfku7bnmoTnm7jkupLpl5zns7siCisKKyM6IGRzZWxlY3QvcGtnaW5mby5jYzoxMTIKKyMsIGZ1enp5Cittc2dpZCAiTm8gZGVzY3JpcHRpb24gYXZhaWxhYmxlLiIKK21zZ3N0ciAi54Sh55u46Zec5LuL57S544CCIgorCisjOiBkc2VsZWN0L3BrZ2luZm8uY2M6MTMwCisjLCBmdXp6eQorbXNnaWQgIkluc3RhbGxlZCBjb250cm9sIGZpbGUgaW5mb3JtYXRpb24iCittc2dzdHIgIueCuuS4i+mdouWll+S7tuWuieijneeahOaOp+WItuioiuaBryIKKworIzogZHNlbGVjdC9wa2dpbmZvLmNjOjE0NgorIywgZnV6enkKK21zZ2lkICJBdmFpbGFibGUgY29udHJvbCBmaWxlIGluZm9ybWF0aW9uIgorbXNnc3RyICLlj6/nlKjnmoTmjqfliLboqIrmga/nmoTniYjmnKwiCisKKyM6IGRzZWxlY3QvcGtnbGlzdC5jYzo0MTYKK21zZ2lkICJUaGVyZSBhcmUgbm8gcGFja2FnZXMuIgorbXNnc3RyICIiCisKKyM6IGRzZWxlY3QvcGtnbGlzdC5jYzo1MDcKK21zZ2lkICJpbnZhbGlkIHNlYXJjaCBvcHRpb24gZ2l2ZW4iCittc2dzdHIgIuaMh+WumuS6hueEoeaViOeahOaQnOWwi+mBuOmghSIKKworIzogZHNlbGVjdC9wa2dsaXN0LmNjOjUyMQorbXNnaWQgImVycm9yIGluIHJlZ3VsYXIgZXhwcmVzc2lvbiIKK21zZ3N0ciAi5q2j6KaP6KGo56S65rOV5pyJ6KqkIgorCisjOiBkc2VsZWN0L3BrZ3N1Ymxpc3QuY2M6MTA3Cittc2dpZCAiIGRvZXMgbm90IGFwcGVhciB0byBiZSBhdmFpbGFibGVcbiIKK21zZ3N0ciAiIOeci+S4iuWOu+aHieipsuS4jeWPr+eUqFxuIgorCisjOiBkc2VsZWN0L3BrZ3N1Ymxpc3QuY2M6MTI3Cittc2dpZCAiIG9yICIKK21zZ3N0ciAiIOaIluiAhSAiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjU3Cittc2dpZCAiQWxsIgorbXNnc3RyICLmiYDmnIkiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjc5Cittc2dpZCAiQWxsIHBhY2thZ2VzIgorbXNnc3RyICLmiYDmnInlpZfku7YiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHBhY2thZ2VzIHdpdGhvdXQgYSBzZWN0aW9uIgorbXNnc3RyICLkuI3mjIflrprpoZ7liKUgJXMg5aWX5Lu2IgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo4NQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBwYWNrYWdlcyBpbiBzZWN0aW9uICVzIgorbXNnc3RyICLlnKggJTIkcyDpoZ7liKXkuK0gJTEkcyDlpZfku7YiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjkxCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzICVzIHBhY2thZ2VzIgorbXNnc3RyICIlcyAlcyDlpZfku7YiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjk1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzICVzIHBhY2thZ2VzIHdpdGhvdXQgYSBzZWN0aW9uIgorbXNnc3RyICLkuI3mjIflrprpoZ7liKUgJXMgJXMg5aWX5Lu2IgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzo5NworIywgYy1mb3JtYXQKK21zZ2lkICIlcyAlcyBwYWNrYWdlcyBpbiBzZWN0aW9uICVzIgorbXNnc3RyICLlnKggJTMkcyDpoZ7liKXkuK0gJTEkcyAlMiRzIOWll+S7tiIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6MTE4CisjLCBjLWZvcm1hdAorbXNnaWQgIiUtKnMgJXMlcyVzOyAgJXMgKHdhczogJXMpLiAgJXMiCittc2dzdHIgIiUtKnMgJXMlcyVzOyAgJXMgKOabvueCuu+8miVzKS4gICVzIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyNjMKK21zZ2lkICJFcnJvciIKK21zZ3N0ciAi6Yyv6KqkIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyNjcKK21zZ2lkICJJbnN0YWxsZWQ/IgorbXNnc3RyICLlt7Llronoo53vvJ8iCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI3MQorbXNnaWQgIk9sZCBtYXJrIgorbXNnc3RyICLljp/mnInmqJnoqJgiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI3NQorbXNnaWQgIk1hcmtlZCBmb3IiCittc2dzdHIgIuePvuaomeiomOeCuiIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6Mjc4Cittc2dpZCAiRUlPTSIKK21zZ3N0ciAiRUlPTSIKKworIzogZHNlbGVjdC9wa2d0b3AuY2M6MjgwCittc2dpZCAiU2VjdGlvbiIKK21zZ3N0ciAi5omA5bGs6aGe5YilIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyODEKK21zZ2lkICJQcmlvcml0eSIKK21zZ3N0ciAi5YSq5YWI57SaIgorCisjOiBkc2VsZWN0L3BrZ3RvcC5jYzoyODIKK21zZ2lkICJQYWNrYWdlIgorbXNnc3RyICLlpZfku7blkI0iCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI4NgorbXNnaWQgIkluc3QudmVyIgorbXNnc3RyICLlronoo53niYjmnKwiCisKKyM6IGRzZWxlY3QvcGtndG9wLmNjOjI4OQorbXNnaWQgIkF2YWlsLnZlciIKK21zZ3N0ciAi5Y+v55So54mI5pysIgorCisjfiBtc2dpZCAicmV0dXJuZWQgZXJyb3IgZXhpdCBzdGF0dXMgJWQuXG4iCisjfiBtc2dzdHIgIuWbnuWCs+S6humMr+iqpOeahOmAgOWHuueLgOaFi+eivCAlZOOAglxuIgorCisjfiBtc2dpZCAid2FzIGludGVycnVwdGVkLlxuIgorI34gbXNnc3RyICLooqvkuK3mlrfkuobjgIJcbiIKKworI34gbXNnaWQgIndhcyB0ZXJtaW5hdGVkIGJ5IGEgc2lnbmFsOiAlcy5cbiIKKyN+IG1zZ3N0ciAi6KKr5LiA5YCL5L+h6Jmf5Lit5pa35LqG77yaJXPjgIJcbiIKKworI34gbXNnaWQgIihJdCBsZWZ0IGEgY29yZWR1bXAuKVxuIgorI34gbXNnc3RyICIo5a6DIGNvcmVkdW1wIOS6huOAgilcbiIKKworI34gbXNnaWQgImZhaWxlZCB3aXRoIGFuIHVua25vd24gd2FpdCByZXR1cm4gY29kZSAlZC5cbiIKKyN+IG1zZ3N0ciAi5Zug54K65b6X5Yiw5LqG5LiA5YCL5LiN6IO96K2Y5Yil55qE5YKz5Zue56K8ICVkIOiAjOS9v+aTjeS9nOWkseaVl+OAglxuIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHJ1biAlLjI1MHMgcHJvY2VzcyBgJS4yNTBzJyIKKyN+IG1zZ3N0ciAi54Sh5rOV5Z+36KGMICUuMjUwcyDnqIvluo/igJwlLjI1MHPigJ0iCisKKyN+IG1zZ2lkICJmYWlsZWQgY29uZmlnIgorI34gbXNnc3RyICLoqK3lrprlpLHmlZciCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gd2FpdCBmb3IgJS4yNTBzIgorI34gbXNnc3RyICLnhKHms5XnrYnlvoXlrZDnqIvluo/igJwlLjI1MHPigJ0iCisKKyN+IG1zZ2lkICJnb3Qgd3JvbmcgY2hpbGQncyBzdGF0dXMgLSBhc2tlZCBmb3IgJWxkLCBnb3QgJWxkIgorI34gbXNnc3RyICLoqqTlj5bkuoblhbbku5blrZDnqIvluo/nmoTni4DmhYsgLSDmnKzmg7PopoEgJWxkIOeahO+8jOe1kOaenOaLv+WIsOS6hiAlbGQg55qEIgorCisjfiBtc2dpZCAiUmVjb21tZW5kZWQiCisjfiBtc2dzdHIgIuW7uuitsCIKKworI34gbXNnaWQgIkNvbnRyaWIiCisjfiBtc2dzdHIgIuiyoueNuyIKKworI34gbXNnaWQgIlJlYyIKKyN+IG1zZ3N0ciAi6JamIgorCisjfiBtc2dpZCAiQ3RiIgorI34gbXNnc3RyICLnjbsiCisKKyN+IG1zZ2lkICIiCisjfiAiYmFzZWxpc3Q6OnN0YXJ0ZGlzcGxheSgpIGRvbmUgLi4uXG4iCisjfiAiXG4iCisjfiAiIHhtYXg9JWQsIHltYXg9JWQ7XG4iCisjfiAiXG4iCisjfiAiIHRpdGxlX2hlaWdodD0lZCwgY29saGVhZHNfaGVpZ2h0PSVkLCBsaXN0X2hlaWdodD0lZDtcbiIKKyN+ICIgdGhpc3N0YXRlX2hlaWdodD0lZCwgaW5mb19oZWlnaHQ9JWQsIHdoYXRpbmZvX2hlaWdodD0lZDtcbiIKKyN+ICJcbiIKKyN+ICIgY29saGVhZHNfcm93PSVkLCB0aGlzc3RhdGVfcm93PSVkLCBpbmZvX3Jvdz0lZDtcbiIKKyN+ICIgd2hhdGluZm9fcm93PSVkLCBsaXN0X3Jvdz0lZDtcbiIKKyN+ICJcbiIKKyN+IG1zZ3N0ciAiIgorI34gImJhc2VsaXN0OjpzdGFydGRpc3BsYXkoKSBkb25lIC4uLlxuIgorI34gIlxuIgorI34gIiB4bWF4PSVkLCB5bWF4PSVkO1xuIgorI34gIlxuIgorI34gIiB0aXRsZV9oZWlnaHQ9JWQsIGNvbGhlYWRzX2hlaWdodD0lZCwgbGlzdF9oZWlnaHQ9JWQ7XG4iCisjfiAiIHRoaXNzdGF0ZV9oZWlnaHQ9JWQsIGluZm9faGVpZ2h0PSVkLCB3aGF0aW5mb19oZWlnaHQ9JWQ7XG4iCisjfiAiXG4iCisjfiAiIGNvbGhlYWRzX3Jvdz0lZCwgdGhpc3N0YXRlX3Jvdz0lZCwgaW5mb19yb3c9JWQ7XG4iCisjfiAiIHdoYXRpbmZvX3Jvdz0lZCwgbGlzdF9yb3c9JWQ7XG4iCisjfiAiXG4iCisKKyN+IG1zZ2lkICJbbm9uZV0iCisjfiBtc2dzdHIgIlvnhKFdIgorCisjfiBtc2dpZCAiZXJyb3IgdW4tY2F0Y2hpbmcgc2lnbmFsICVkOiAlc1xuIgorI34gbXNnc3RyICLnmbznlJ/pjK/oqqTvvIzmnInnhKHms5Xlj5blvpfnmoTkv6HomZ8gJWTvvJolc1xuIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGlnbm9yZSBzaWduYWwgJWQgYmVmb3JlIHJ1bm5pbmcgJS4yNTBzIgorI34gbXNnc3RyICLnhKHms5XlnKjln7fooYwgJTIkLjI1MHMg5LmL5YmN5b+955Wl5L+h6JmfICUxJGQiCisKKyN+IG1zZ2lkICIobm8gY2xpZW50ZGF0YSkiCisjfiBtc2dzdHIgIijnhKHlrqLmiLbnq6/mlbjmk5opIgorCisjfiBtc2dpZCAiPG51bGw+IgorI34gbXNnc3RyICI854ShPiIKKworI34gbXNnaWQgImludGVycmVsYXRpb25zaGlwcyBhZmZlY3RpbmcgIgorI34gbXNnc3RyICLlpZfku7bnmoTnm7jkupLpl5zns7vllY/poYznib3pgKPliLDkuoYiCisKKyN+IG1zZ2lkICJkZXNjcmlwdGlvbiBvZiAiCisjfiBtc2dzdHIgIuS4i+mdouWll+S7tueahOS7i+e0uSIKKworI34gbXNnaWQgImRlc2NyaXB0aW9uIgorI34gbXNnc3RyICLku4vntLkiCisKKyN+IG1zZ2lkICJjdXJyZW50bHkgaW5zdGFsbGVkIGNvbnRyb2wgaW5mbyIKKyN+IG1zZ3N0ciAi55W25YmN5a6J6KOd55qE5o6n5Yi26KiK5oGvIgorCisjfiBtc2dpZCAiYXZhaWxhYmxlIHZlcnNpb24gb2YgY29udHJvbCBpbmZvIGZvciAiCisjfiBtc2dzdHIgIuS4i+mdouWll+S7tueahOWPr+eUqOaOp+WItuioiuaBr+eahOeJiOacrCIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvZ2V0LXZlcnNpb24gYi9kcGtnLTEuMTYuMS4xL2dldC12ZXJzaW9uCm5ldyBmaWxlIG1vZGUgMTAwNzU1CmluZGV4IDAwMDAwMDAuLmVkN2U2MjQKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2dldC12ZXJzaW9uCkBAIC0wLDAgKzEsNDAgQEAKKyMhL2Jpbi9zaAorIworIyBnZXQtdmVyc2lvbgorIworIyBDb3B5cmlnaHQgwqkgMjAwOSBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CisjCisjIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisjIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisjIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisjIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisjCisjIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisjIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisjCisjIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisjIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorIworCitpZiBbIC1mIC5kaXN0LXZlcnNpb24gXTsgdGhlbgorICAjIEdldCB0aGUgdmVyc2lvbiBmcm9tIHRoZSBmaWxlIGRpc3RyaWJ1dGVkIGluIHRoZSB0YXJiYWxsLgorICB2ZXJzaW9uPSQoY2F0IC5kaXN0LXZlcnNpb24pCitlbGlmIFsgLWQgLmdpdCBdOyB0aGVuCisgICMgR2VyIHRoZSB2ZXJzaW9uIGZyb20gdGhlIGdpdCByZXBvc2l0b3J5LgorICB2ZXJzaW9uPSQoZ2l0IGRlc2NyaWJlIC0tYWJicmV2PTQgSEVBRCAyPi9kZXYvbnVsbCkKKworICAjIENoZWNrIGlmIHdlIGFyZSBvbiBhIGRpcnR5IGNoZWNrb3V0LgorICBnaXQgdXBkYXRlLWluZGV4IC0tcmVmcmVzaCAtcSA+L2Rldi9udWxsCisgIGRpcnR5PSQoZ2l0IGRpZmYtaW5kZXggLS1uYW1lLW9ubHkgSEVBRCAyPi9kZXYvbnVsbCkKKyAgaWYgWyAtbiAiJGRpcnR5IiBdOyB0aGVuCisgICAgdmVyc2lvbj0iJHZlcnNpb24tZGlydHkiCisgIGZpCitlbHNlCisgIGVjaG8gImVycm9yOiBjYW5ub3QgZ2V0IHByb2plY3QgdmVyc2lvbi4iIDE+JjIKKyAgZXhpdCAxCitmaQorCisjIFVzZSBwcmludGYgdG8gYXZvaWQgdGhlIHRyYWlsaW5nIG5ldyBsaW5lIHRoYXQgbTRfZXN5c2NtZCB3b3VsZCBub3QgaGFuZGxlLgorcHJpbnRmICIkdmVyc2lvbiIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbGliL01ha2VmaWxlLmFtIGIvZHBrZy0xLjE2LjEuMS9saWIvTWFrZWZpbGUuYW0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYmYzYWQ1MQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbGliL01ha2VmaWxlLmFtCkBAIC0wLDAgKzEsNSBAQAorIyMgUHJvY2VzcyB0aGlzIGZpbGUgd2l0aCBhdXRvbWFrZSB0byBwcm9kdWNlIE1ha2VmaWxlLmluCisKK1NVQkRJUlMgPSBcCisJY29tcGF0IFwKKwlkcGtnCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2xpYi9NYWtlZmlsZS5pbiBiL2Rwa2ctMS4xNi4xLjEvbGliL01ha2VmaWxlLmluCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQ2NWM0MDkKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2xpYi9NYWtlZmlsZS5pbgpAQCAtMCwwICsxLDU5NiBAQAorIyBNYWtlZmlsZS5pbiBnZW5lcmF0ZWQgYnkgYXV0b21ha2UgMS4xMS4xIGZyb20gTWFrZWZpbGUuYW0uCisjIEBjb25maWd1cmVfaW5wdXRACisKKyMgQ29weXJpZ2h0IChDKSAxOTk0LCAxOTk1LCAxOTk2LCAxOTk3LCAxOTk4LCAxOTk5LCAyMDAwLCAyMDAxLCAyMDAyLAorIyAyMDAzLCAyMDA0LCAyMDA1LCAyMDA2LCAyMDA3LCAyMDA4LCAyMDA5ICBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sCisjIEluYy4KKyMgVGhpcyBNYWtlZmlsZS5pbiBpcyBmcmVlIHNvZnR3YXJlOyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uCisjIGdpdmVzIHVubGltaXRlZCBwZXJtaXNzaW9uIHRvIGNvcHkgYW5kL29yIGRpc3RyaWJ1dGUgaXQsCisjIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb25zLCBhcyBsb25nIGFzIHRoaXMgbm90aWNlIGlzIHByZXNlcnZlZC4KKworIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZLCB0byB0aGUgZXh0ZW50IHBlcm1pdHRlZCBieSBsYXc7IHdpdGhvdXQKKyMgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQQorIyBQQVJUSUNVTEFSIFBVUlBPU0UuCisKK0BTRVRfTUFLRUAKK1ZQQVRIID0gQHNyY2RpckAKK3BrZ2RhdGFkaXIgPSAkKGRhdGFkaXIpL0BQQUNLQUdFQAorcGtnaW5jbHVkZWRpciA9ICQoaW5jbHVkZWRpcikvQFBBQ0tBR0VACitwa2dsaWJkaXIgPSAkKGxpYmRpcikvQFBBQ0tBR0VACitwa2dsaWJleGVjZGlyID0gJChsaWJleGVjZGlyKS9AUEFDS0FHRUAKK2FtX19jZCA9IENEUEFUSD0iJCR7WlNIX1ZFUlNJT04rLn0kKFBBVEhfU0VQQVJBVE9SKSIgJiYgY2QKK2luc3RhbGxfc2hfREFUQSA9ICQoaW5zdGFsbF9zaCkgLWMgLW0gNjQ0CitpbnN0YWxsX3NoX1BST0dSQU0gPSAkKGluc3RhbGxfc2gpIC1jCitpbnN0YWxsX3NoX1NDUklQVCA9ICQoaW5zdGFsbF9zaCkgLWMKK0lOU1RBTExfSEVBREVSID0gJChJTlNUQUxMX0RBVEEpCit0cmFuc2Zvcm0gPSAkKHByb2dyYW1fdHJhbnNmb3JtX25hbWUpCitOT1JNQUxfSU5TVEFMTCA9IDoKK1BSRV9JTlNUQUxMID0gOgorUE9TVF9JTlNUQUxMID0gOgorTk9STUFMX1VOSU5TVEFMTCA9IDoKK1BSRV9VTklOU1RBTEwgPSA6CitQT1NUX1VOSU5TVEFMTCA9IDoKK2J1aWxkX3RyaXBsZXQgPSBAYnVpbGRACitob3N0X3RyaXBsZXQgPSBAaG9zdEAKK3N1YmRpciA9IGxpYgorRElTVF9DT01NT04gPSAkKHNyY2RpcikvTWFrZWZpbGUuYW0gJChzcmNkaXIpL01ha2VmaWxlLmluCitBQ0xPQ0FMX000ID0gJCh0b3Bfc3JjZGlyKS9hY2xvY2FsLm00CithbV9fYWNsb2NhbF9tNF9kZXBzID0gJCh0b3Bfc3JjZGlyKS9tNC9kcGtnLWFyY2gubTQgXAorCSQodG9wX3NyY2RpcikvbTQvZHBrZy1idWlsZC5tNCBcCisJJCh0b3Bfc3JjZGlyKS9tNC9kcGtnLWNvbXBpbGVyLm00IFwKKwkkKHRvcF9zcmNkaXIpL200L2Rwa2ctY292ZXJhZ2UubTQgXAorCSQodG9wX3NyY2RpcikvbTQvZHBrZy1mdW5jcy5tNCAkKHRvcF9zcmNkaXIpL200L2Rwa2ctbGlicy5tNCBcCisJJCh0b3Bfc3JjZGlyKS9tNC9kcGtnLWxpbmtlci5tNCAkKHRvcF9zcmNkaXIpL200L2Rwa2ctcHJvZ3MubTQgXAorCSQodG9wX3NyY2RpcikvbTQvZHBrZy10eXBlcy5tNCBcCisJJCh0b3Bfc3JjZGlyKS9tNC9kcGtnLXVuaWNvZGUubTQgJCh0b3Bfc3JjZGlyKS9tNC9nZXR0ZXh0Lm00IFwKKwkkKHRvcF9zcmNkaXIpL200L2ljb252Lm00ICQodG9wX3NyY2RpcikvbTQvaW50bG1hY29zeC5tNCBcCisJJCh0b3Bfc3JjZGlyKS9tNC9saWItbGQubTQgJCh0b3Bfc3JjZGlyKS9tNC9saWItbGluay5tNCBcCisJJCh0b3Bfc3JjZGlyKS9tNC9saWItcHJlZml4Lm00ICQodG9wX3NyY2RpcikvbTQvbmxzLm00IFwKKwkkKHRvcF9zcmNkaXIpL200L3BvLm00ICQodG9wX3NyY2RpcikvbTQvcHJvZ3Rlc3QubTQgXAorCSQodG9wX3NyY2RpcikvY29uZmlndXJlLmFjCithbV9fY29uZmlndXJlX2RlcHMgPSAkKGFtX19hY2xvY2FsX200X2RlcHMpICQoQ09ORklHVVJFX0RFUEVOREVOQ0lFUykgXAorCSQoQUNMT0NBTF9NNCkKK21raW5zdGFsbGRpcnMgPSAkKGluc3RhbGxfc2gpIC1kCitDT05GSUdfSEVBREVSID0gJCh0b3BfYnVpbGRkaXIpL2NvbmZpZy5oCitDT05GSUdfQ0xFQU5fRklMRVMgPQorQ09ORklHX0NMRUFOX1ZQQVRIX0ZJTEVTID0KK0FNX1ZfR0VOID0gJChhbV9fdl9HRU5fJChWKSkKK2FtX192X0dFTl8gPSAkKGFtX192X0dFTl8kKEFNX0RFRkFVTFRfVkVSQk9TSVRZKSkKK2FtX192X0dFTl8wID0gQGVjaG8gIiAgR0VOICAgIiAkQDsKK0FNX1ZfYXQgPSAkKGFtX192X2F0XyQoVikpCithbV9fdl9hdF8gPSAkKGFtX192X2F0XyQoQU1fREVGQVVMVF9WRVJCT1NJVFkpKQorYW1fX3ZfYXRfMCA9IEAKK1NPVVJDRVMgPQorRElTVF9TT1VSQ0VTID0KK1JFQ1VSU0lWRV9UQVJHRVRTID0gYWxsLXJlY3Vyc2l2ZSBjaGVjay1yZWN1cnNpdmUgZHZpLXJlY3Vyc2l2ZSBcCisJaHRtbC1yZWN1cnNpdmUgaW5mby1yZWN1cnNpdmUgaW5zdGFsbC1kYXRhLXJlY3Vyc2l2ZSBcCisJaW5zdGFsbC1kdmktcmVjdXJzaXZlIGluc3RhbGwtZXhlYy1yZWN1cnNpdmUgXAorCWluc3RhbGwtaHRtbC1yZWN1cnNpdmUgaW5zdGFsbC1pbmZvLXJlY3Vyc2l2ZSBcCisJaW5zdGFsbC1wZGYtcmVjdXJzaXZlIGluc3RhbGwtcHMtcmVjdXJzaXZlIGluc3RhbGwtcmVjdXJzaXZlIFwKKwlpbnN0YWxsY2hlY2stcmVjdXJzaXZlIGluc3RhbGxkaXJzLXJlY3Vyc2l2ZSBwZGYtcmVjdXJzaXZlIFwKKwlwcy1yZWN1cnNpdmUgdW5pbnN0YWxsLXJlY3Vyc2l2ZQorUkVDVVJTSVZFX0NMRUFOX1RBUkdFVFMgPSBtb3N0bHljbGVhbi1yZWN1cnNpdmUgY2xlYW4tcmVjdXJzaXZlCVwKKyAgZGlzdGNsZWFuLXJlY3Vyc2l2ZSBtYWludGFpbmVyLWNsZWFuLXJlY3Vyc2l2ZQorQU1fUkVDVVJTSVZFX1RBUkdFVFMgPSAkKFJFQ1VSU0lWRV9UQVJHRVRTOi1yZWN1cnNpdmU9KSBcCisJJChSRUNVUlNJVkVfQ0xFQU5fVEFSR0VUUzotcmVjdXJzaXZlPSkgdGFncyBUQUdTIGN0YWdzIENUQUdTIFwKKwlkaXN0ZGlyCitFVEFHUyA9IGV0YWdzCitDVEFHUyA9IGN0YWdzCitESVNUX1NVQkRJUlMgPSAkKFNVQkRJUlMpCitESVNURklMRVMgPSAkKERJU1RfQ09NTU9OKSAkKERJU1RfU09VUkNFUykgJChURVhJTkZPUykgJChFWFRSQV9ESVNUKQorYW1fX3JlbGF0aXZpemUgPSBcCisgIGRpcjA9YHB3ZGA7IFwKKyAgc2VkX2ZpcnN0PSdzLF5cKFteL10qXCkvLiokJCxcMSwnOyBcCisgIHNlZF9yZXN0PSdzLF5bXi9dKi8qLCwnOyBcCisgIHNlZF9sYXN0PSdzLF4uKi9cKFteL10qXCkkJCxcMSwnOyBcCisgIHNlZF9idXRsYXN0PSdzLC8qW14vXSokJCwsJzsgXAorICB3aGlsZSB0ZXN0IC1uICIkJGRpcjEiOyBkbyBcCisgICAgZmlyc3Q9YGVjaG8gIiQkZGlyMSIgfCBzZWQgLWUgIiQkc2VkX2ZpcnN0ImA7IFwKKyAgICBpZiB0ZXN0ICIkJGZpcnN0IiAhPSAiLiI7IHRoZW4gXAorICAgICAgaWYgdGVzdCAiJCRmaXJzdCIgPSAiLi4iOyB0aGVuIFwKKyAgICAgICAgZGlyMj1gZWNobyAiJCRkaXIwIiB8IHNlZCAtZSAiJCRzZWRfbGFzdCJgLyIkJGRpcjIiOyBcCisgICAgICAgIGRpcjA9YGVjaG8gIiQkZGlyMCIgfCBzZWQgLWUgIiQkc2VkX2J1dGxhc3QiYDsgXAorICAgICAgZWxzZSBcCisgICAgICAgIGZpcnN0Mj1gZWNobyAiJCRkaXIyIiB8IHNlZCAtZSAiJCRzZWRfZmlyc3QiYDsgXAorICAgICAgICBpZiB0ZXN0ICIkJGZpcnN0MiIgPSAiJCRmaXJzdCI7IHRoZW4gXAorICAgICAgICAgIGRpcjI9YGVjaG8gIiQkZGlyMiIgfCBzZWQgLWUgIiQkc2VkX3Jlc3QiYDsgXAorICAgICAgICBlbHNlIFwKKyAgICAgICAgICBkaXIyPSIuLi8kJGRpcjIiOyBcCisgICAgICAgIGZpOyBcCisgICAgICAgIGRpcjA9IiQkZGlyMCIvIiQkZmlyc3QiOyBcCisgICAgICBmaTsgXAorICAgIGZpOyBcCisgICAgZGlyMT1gZWNobyAiJCRkaXIxIiB8IHNlZCAtZSAiJCRzZWRfcmVzdCJgOyBcCisgIGRvbmU7IFwKKyAgcmVsZGlyPSIkJGRpcjIiCitBQ0xPQ0FMID0gQEFDTE9DQUxACitBTVRBUiA9IEBBTVRBUkAKK0FNX0RFRkFVTFRfVkVSQk9TSVRZID0gQEFNX0RFRkFVTFRfVkVSQk9TSVRZQAorQVVUT0NPTkYgPSBAQVVUT0NPTkZACitBVVRPSEVBREVSID0gQEFVVE9IRUFERVJACitBVVRPTUFLRSA9IEBBVVRPTUFLRUAKK0FXSyA9IEBBV0tACitCWjJfTElCUyA9IEBCWjJfTElCU0AKK0NDID0gQENDQAorQ0NERVBNT0RFID0gQENDREVQTU9ERUAKK0NGTEFHUyA9IEBDRkxBR1NACitDUFAgPSBAQ1BQQAorQ1BQRkxBR1MgPSBAQ1BQRkxBR1NACitDVVJTRVNfTElCUyA9IEBDVVJTRVNfTElCU0AKK0NYWCA9IEBDWFhACitDWFhERVBNT0RFID0gQENYWERFUE1PREVACitDWFhGTEFHUyA9IEBDWFhGTEFHU0AKK0NZR1BBVEhfVyA9IEBDWUdQQVRIX1dACitERUZTID0gQERFRlNACitERVBESVIgPSBAREVQRElSQAorRE9YWUdFTiA9IEBET1hZR0VOQAorRUNIT19DID0gQEVDSE9fQ0AKK0VDSE9fTiA9IEBFQ0hPX05ACitFQ0hPX1QgPSBARUNIT19UQAorRUdSRVAgPSBARUdSRVBACitFWEVFWFQgPSBARVhFRVhUQAorR0NPViA9IEBHQ09WQAorR0VUVEVYVF9NQUNST19WRVJTSU9OID0gQEdFVFRFWFRfTUFDUk9fVkVSU0lPTkAKK0dNU0dGTVQgPSBAR01TR0ZNVEAKK0dNU0dGTVRfMDE1ID0gQEdNU0dGTVRfMDE1QAorR1JFUCA9IEBHUkVQQAorSEFWRV9ET1QgPSBASEFWRV9ET1RACitJTlNUQUxMID0gQElOU1RBTExACitJTlNUQUxMX0RBVEEgPSBASU5TVEFMTF9EQVRBQAorSU5TVEFMTF9QUk9HUkFNID0gQElOU1RBTExfUFJPR1JBTUAKK0lOU1RBTExfU0NSSVBUID0gQElOU1RBTExfU0NSSVBUQAorSU5TVEFMTF9TVFJJUF9QUk9HUkFNID0gQElOU1RBTExfU1RSSVBfUFJPR1JBTUAKK0lOVExMSUJTID0gQElOVExMSUJTQAorSU5UTF9NQUNPU1hfTElCUyA9IEBJTlRMX01BQ09TWF9MSUJTQAorTENPViA9IEBMQ09WQAorTENPVl9HRU5IVE1MID0gQExDT1ZfR0VOSFRNTEAKK0xERkxBR1MgPSBATERGTEFHU0AKK0xFWCA9IEBMRVhACitMRVhMSUIgPSBATEVYTElCQAorTEVYX09VVFBVVF9ST09UID0gQExFWF9PVVRQVVRfUk9PVEAKK0xJQklDT05WID0gQExJQklDT05WQAorTElCSU5UTCA9IEBMSUJJTlRMQAorTElCT0JKUyA9IEBMSUJPQkpTQAorTElCUyA9IEBMSUJTQAorTFRMSUJJQ09OViA9IEBMVExJQklDT05WQAorTFRMSUJJTlRMID0gQExUTElCSU5UTEAKK0xUTElCT0JKUyA9IEBMVExJQk9CSlNACitNQUtFSU5GTyA9IEBNQUtFSU5GT0AKK01LRElSX1AgPSBATUtESVJfUEAKK01TR0ZNVCA9IEBNU0dGTVRACitNU0dGTVRfMDE1ID0gQE1TR0ZNVF8wMTVACitNU0dNRVJHRSA9IEBNU0dNRVJHRUAKK09CSkVYVCA9IEBPQkpFWFRACitQQUNLQUdFID0gQFBBQ0tBR0VACitQQUNLQUdFX0JVR1JFUE9SVCA9IEBQQUNLQUdFX0JVR1JFUE9SVEAKK1BBQ0tBR0VfTkFNRSA9IEBQQUNLQUdFX05BTUVACitQQUNLQUdFX1NUUklORyA9IEBQQUNLQUdFX1NUUklOR0AKK1BBQ0tBR0VfVEFSTkFNRSA9IEBQQUNLQUdFX1RBUk5BTUVACitQQUNLQUdFX1VSTCA9IEBQQUNLQUdFX1VSTEAKK1BBQ0tBR0VfVkVSU0lPTiA9IEBQQUNLQUdFX1ZFUlNJT05ACitQQVRIX1NFUEFSQVRPUiA9IEBQQVRIX1NFUEFSQVRPUkAKK1BFUkwgPSBAUEVSTEAKK1BFUkxfQ09WRVIgPSBAUEVSTF9DT1ZFUkAKK1BFUkxfQ09WRVJBR0UgPSBAUEVSTF9DT1ZFUkFHRUAKK1BFUkxfTElCRElSID0gQFBFUkxfTElCRElSQAorUEtHX0NPTkZJRyA9IEBQS0dfQ09ORklHQAorUEtHX0NPTkZJR19MSUJESVIgPSBAUEtHX0NPTkZJR19MSUJESVJACitQS0dfQ09ORklHX1BBVEggPSBAUEtHX0NPTkZJR19QQVRIQAorUE80QSA9IEBQTzRBQAorUE9EMk1BTiA9IEBQT0QyTUFOQAorUE9TVUIgPSBAUE9TVUJACitSQU5MSUIgPSBAUkFOTElCQAorU0VMSU5VWF9MSUJTID0gQFNFTElOVVhfTElCU0AKK1NFVF9NQUtFID0gQFNFVF9NQUtFQAorU0hFTEwgPSBAU0hFTExACitTU0RfTElCUyA9IEBTU0RfTElCU0AKK1NUUklQID0gQFNUUklQQAorVVNFX05MUyA9IEBVU0VfTkxTQAorVVNFX1BPNEEgPSBAVVNFX1BPNEFACitVU0VfVU5JQ09ERSA9IEBVU0VfVU5JQ09ERUAKK1ZFUlNJT04gPSBAVkVSU0lPTkAKK1hHRVRURVhUID0gQFhHRVRURVhUQAorWEdFVFRFWFRfMDE1ID0gQFhHRVRURVhUXzAxNUAKK1hHRVRURVhUX0VYVFJBX09QVElPTlMgPSBAWEdFVFRFWFRfRVhUUkFfT1BUSU9OU0AKK1pMSUJfTElCUyA9IEBaTElCX0xJQlNACithYnNfYnVpbGRkaXIgPSBAYWJzX2J1aWxkZGlyQAorYWJzX3NyY2RpciA9IEBhYnNfc3JjZGlyQAorYWJzX3RvcF9idWlsZGRpciA9IEBhYnNfdG9wX2J1aWxkZGlyQAorYWJzX3RvcF9zcmNkaXIgPSBAYWJzX3RvcF9zcmNkaXJACithY19jdF9DQyA9IEBhY19jdF9DQ0AKK2FjX2N0X0NYWCA9IEBhY19jdF9DWFhACithZG1pbmRpciA9IEBhZG1pbmRpckAKK2FtX19pbmNsdWRlID0gQGFtX19pbmNsdWRlQAorYW1fX2xlYWRpbmdfZG90ID0gQGFtX19sZWFkaW5nX2RvdEAKK2FtX19xdW90ZSA9IEBhbV9fcXVvdGVACithbV9fdGFyID0gQGFtX190YXJACithbV9fdW50YXIgPSBAYW1fX3VudGFyQAorYmluZGlyID0gQGJpbmRpckAKK2J1aWxkID0gQGJ1aWxkQAorYnVpbGRfYWxpYXMgPSBAYnVpbGRfYWxpYXNACitidWlsZF9jcHUgPSBAYnVpbGRfY3B1QAorYnVpbGRfb3MgPSBAYnVpbGRfb3NACitidWlsZF92ZW5kb3IgPSBAYnVpbGRfdmVuZG9yQAorYnVpbGRkaXIgPSBAYnVpbGRkaXJACitkYXRhZGlyID0gQGRhdGFkaXJACitkYXRhcm9vdGRpciA9IEBkYXRhcm9vdGRpckAKK2RvY2RpciA9IEBkb2NkaXJACitkdmlkaXIgPSBAZHZpZGlyQAorZXhlY19wcmVmaXggPSBAZXhlY19wcmVmaXhACitob3N0ID0gQGhvc3RACitob3N0X2FsaWFzID0gQGhvc3RfYWxpYXNACitob3N0X2NwdSA9IEBob3N0X2NwdUAKK2hvc3Rfb3MgPSBAaG9zdF9vc0AKK2hvc3RfdmVuZG9yID0gQGhvc3RfdmVuZG9yQAoraHRtbGRpciA9IEBodG1sZGlyQAoraW5jbHVkZWRpciA9IEBpbmNsdWRlZGlyQAoraW5mb2RpciA9IEBpbmZvZGlyQAoraW5zdGFsbF9zaCA9IEBpbnN0YWxsX3NoQAorbGliZGlyID0gQGxpYmRpckAKK2xpYmV4ZWNkaXIgPSBAbGliZXhlY2RpckAKK2xvY2FsZWRpciA9IEBsb2NhbGVkaXJACitsb2NhbHN0YXRlZGlyID0gQGxvY2Fsc3RhdGVkaXJACitsb2dkaXIgPSBAbG9nZGlyQAorbWFuZGlyID0gQG1hbmRpckAKK21rZGlyX3AgPSBAbWtkaXJfcEAKK29sZGluY2x1ZGVkaXIgPSBAb2xkaW5jbHVkZWRpckAKK3BkZmRpciA9IEBwZGZkaXJACitwcmVmaXggPSBAcHJlZml4QAorcHJvZ3JhbV90cmFuc2Zvcm1fbmFtZSA9IEBwcm9ncmFtX3RyYW5zZm9ybV9uYW1lQAorcHNkaXIgPSBAcHNkaXJACitzYmluZGlyID0gQHNiaW5kaXJACitzaGFyZWRzdGF0ZWRpciA9IEBzaGFyZWRzdGF0ZWRpckAKK3NyY2RpciA9IEBzcmNkaXJACitzeXNjb25mZGlyID0gQHN5c2NvbmZkaXJACit0YXJnZXRfYWxpYXMgPSBAdGFyZ2V0X2FsaWFzQAordG9wX2J1aWxkX3ByZWZpeCA9IEB0b3BfYnVpbGRfcHJlZml4QAordG9wX2J1aWxkZGlyID0gQHRvcF9idWlsZGRpckAKK3RvcF9zcmNkaXIgPSBAdG9wX3NyY2RpckAKK1NVQkRJUlMgPSBcCisJY29tcGF0IFwKKwlkcGtnCisKK2FsbDogYWxsLXJlY3Vyc2l2ZQorCisuU1VGRklYRVM6CiskKHNyY2RpcikvTWFrZWZpbGUuaW46ICAkKHNyY2RpcikvTWFrZWZpbGUuYW0gICQoYW1fX2NvbmZpZ3VyZV9kZXBzKQorCUBmb3IgZGVwIGluICQ/OyBkbyBcCisJICBjYXNlICckKGFtX19jb25maWd1cmVfZGVwcyknIGluIFwKKwkgICAgKiQkZGVwKikgXAorCSAgICAgICggY2QgJCh0b3BfYnVpbGRkaXIpICYmICQoTUFLRSkgJChBTV9NQUtFRkxBR1MpIGFtLS1yZWZyZXNoICkgXAorCSAgICAgICAgJiYgeyBpZiB0ZXN0IC1mICRAOyB0aGVuIGV4aXQgMDsgZWxzZSBicmVhazsgZmk7IH07IFwKKwkgICAgICBleGl0IDE7OyBcCisJICBlc2FjOyBcCisJZG9uZTsgXAorCWVjaG8gJyBjZCAkKHRvcF9zcmNkaXIpICYmICQoQVVUT01BS0UpIC0tZm9yZWlnbiBsaWIvTWFrZWZpbGUnOyBcCisJJChhbV9fY2QpICQodG9wX3NyY2RpcikgJiYgXAorCSAgJChBVVRPTUFLRSkgLS1mb3JlaWduIGxpYi9NYWtlZmlsZQorLlBSRUNJT1VTOiBNYWtlZmlsZQorTWFrZWZpbGU6ICQoc3JjZGlyKS9NYWtlZmlsZS5pbiAkKHRvcF9idWlsZGRpcikvY29uZmlnLnN0YXR1cworCUBjYXNlICckPycgaW4gXAorCSAgKmNvbmZpZy5zdGF0dXMqKSBcCisJICAgIGNkICQodG9wX2J1aWxkZGlyKSAmJiAkKE1BS0UpICQoQU1fTUFLRUZMQUdTKSBhbS0tcmVmcmVzaDs7IFwKKwkgICopIFwKKwkgICAgZWNobyAnIGNkICQodG9wX2J1aWxkZGlyKSAmJiAkKFNIRUxMKSAuL2NvbmZpZy5zdGF0dXMgJChzdWJkaXIpLyRAICQoYW1fX2RlcGZpbGVzX21heWJlKSc7IFwKKwkgICAgY2QgJCh0b3BfYnVpbGRkaXIpICYmICQoU0hFTEwpIC4vY29uZmlnLnN0YXR1cyAkKHN1YmRpcikvJEAgJChhbV9fZGVwZmlsZXNfbWF5YmUpOzsgXAorCWVzYWM7CisKKyQodG9wX2J1aWxkZGlyKS9jb25maWcuc3RhdHVzOiAkKHRvcF9zcmNkaXIpL2NvbmZpZ3VyZSAkKENPTkZJR19TVEFUVVNfREVQRU5ERU5DSUVTKQorCWNkICQodG9wX2J1aWxkZGlyKSAmJiAkKE1BS0UpICQoQU1fTUFLRUZMQUdTKSBhbS0tcmVmcmVzaAorCiskKHRvcF9zcmNkaXIpL2NvbmZpZ3VyZTogICQoYW1fX2NvbmZpZ3VyZV9kZXBzKQorCWNkICQodG9wX2J1aWxkZGlyKSAmJiAkKE1BS0UpICQoQU1fTUFLRUZMQUdTKSBhbS0tcmVmcmVzaAorJChBQ0xPQ0FMX000KTogICQoYW1fX2FjbG9jYWxfbTRfZGVwcykKKwljZCAkKHRvcF9idWlsZGRpcikgJiYgJChNQUtFKSAkKEFNX01BS0VGTEFHUykgYW0tLXJlZnJlc2gKKyQoYW1fX2FjbG9jYWxfbTRfZGVwcyk6CisKKyMgVGhpcyBkaXJlY3RvcnkncyBzdWJkaXJlY3RvcmllcyBhcmUgbW9zdGx5IGluZGVwZW5kZW50OyB5b3UgY2FuIGNkCisjIGludG8gdGhlbSBhbmQgcnVuIGBtYWtlJyB3aXRob3V0IGdvaW5nIHRocm91Z2ggdGhpcyBNYWtlZmlsZS4KKyMgVG8gY2hhbmdlIHRoZSB2YWx1ZXMgb2YgYG1ha2UnIHZhcmlhYmxlczogaW5zdGVhZCBvZiBlZGl0aW5nIE1ha2VmaWxlcywKKyMgKDEpIGlmIHRoZSB2YXJpYWJsZSBpcyBzZXQgaW4gYGNvbmZpZy5zdGF0dXMnLCBlZGl0IGBjb25maWcuc3RhdHVzJworIyAgICAgKHdoaWNoIHdpbGwgY2F1c2UgdGhlIE1ha2VmaWxlcyB0byBiZSByZWdlbmVyYXRlZCB3aGVuIHlvdSBydW4gYG1ha2UnKTsKKyMgKDIpIG90aGVyd2lzZSwgcGFzcyB0aGUgZGVzaXJlZCB2YWx1ZXMgb24gdGhlIGBtYWtlJyBjb21tYW5kIGxpbmUuCiskKFJFQ1VSU0lWRV9UQVJHRVRTKToKKwlAZmFpbD0gZmFpbGNvbT0nZXhpdCAxJzsgXAorCWZvciBmIGluIHggJCRNQUtFRkxBR1M7IGRvIFwKKwkgIGNhc2UgJCRmIGluIFwKKwkgICAgKj0qIHwgLS1bIWtdKik7OyBcCisJICAgICprKikgZmFpbGNvbT0nZmFpbD15ZXMnOzsgXAorCSAgZXNhYzsgXAorCWRvbmU7IFwKKwlkb3Rfc2Vlbj1ubzsgXAorCXRhcmdldD1gZWNobyAkQCB8IHNlZCBzLy1yZWN1cnNpdmUvL2A7IFwKKwlsaXN0PSckKFNVQkRJUlMpJzsgZm9yIHN1YmRpciBpbiAkJGxpc3Q7IGRvIFwKKwkgIGVjaG8gIk1ha2luZyAkJHRhcmdldCBpbiAkJHN1YmRpciI7IFwKKwkgIGlmIHRlc3QgIiQkc3ViZGlyIiA9ICIuIjsgdGhlbiBcCisJICAgIGRvdF9zZWVuPXllczsgXAorCSAgICBsb2NhbF90YXJnZXQ9IiQkdGFyZ2V0LWFtIjsgXAorCSAgZWxzZSBcCisJICAgIGxvY2FsX3RhcmdldD0iJCR0YXJnZXQiOyBcCisJICBmaTsgXAorCSAgKCQoYW1fX2NkKSAkJHN1YmRpciAmJiAkKE1BS0UpICQoQU1fTUFLRUZMQUdTKSAkJGxvY2FsX3RhcmdldCkgXAorCSAgfHwgZXZhbCAkJGZhaWxjb207IFwKKwlkb25lOyBcCisJaWYgdGVzdCAiJCRkb3Rfc2VlbiIgPSAibm8iOyB0aGVuIFwKKwkgICQoTUFLRSkgJChBTV9NQUtFRkxBR1MpICIkJHRhcmdldC1hbSIgfHwgZXhpdCAxOyBcCisJZmk7IHRlc3QgLXogIiQkZmFpbCIKKworJChSRUNVUlNJVkVfQ0xFQU5fVEFSR0VUUyk6CisJQGZhaWw9IGZhaWxjb209J2V4aXQgMSc7IFwKKwlmb3IgZiBpbiB4ICQkTUFLRUZMQUdTOyBkbyBcCisJICBjYXNlICQkZiBpbiBcCisJICAgICo9KiB8IC0tWyFrXSopOzsgXAorCSAgICAqayopIGZhaWxjb209J2ZhaWw9eWVzJzs7IFwKKwkgIGVzYWM7IFwKKwlkb25lOyBcCisJZG90X3NlZW49bm87IFwKKwljYXNlICIkQCIgaW4gXAorCSAgZGlzdGNsZWFuLSogfCBtYWludGFpbmVyLWNsZWFuLSopIGxpc3Q9JyQoRElTVF9TVUJESVJTKScgOzsgXAorCSAgKikgbGlzdD0nJChTVUJESVJTKScgOzsgXAorCWVzYWM7IFwKKwlyZXY9Jyc7IGZvciBzdWJkaXIgaW4gJCRsaXN0OyBkbyBcCisJICBpZiB0ZXN0ICIkJHN1YmRpciIgPSAiLiI7IHRoZW4gOjsgZWxzZSBcCisJICAgIHJldj0iJCRzdWJkaXIgJCRyZXYiOyBcCisJICBmaTsgXAorCWRvbmU7IFwKKwlyZXY9IiQkcmV2IC4iOyBcCisJdGFyZ2V0PWBlY2hvICRAIHwgc2VkIHMvLXJlY3Vyc2l2ZS8vYDsgXAorCWZvciBzdWJkaXIgaW4gJCRyZXY7IGRvIFwKKwkgIGVjaG8gIk1ha2luZyAkJHRhcmdldCBpbiAkJHN1YmRpciI7IFwKKwkgIGlmIHRlc3QgIiQkc3ViZGlyIiA9ICIuIjsgdGhlbiBcCisJICAgIGxvY2FsX3RhcmdldD0iJCR0YXJnZXQtYW0iOyBcCisJICBlbHNlIFwKKwkgICAgbG9jYWxfdGFyZ2V0PSIkJHRhcmdldCI7IFwKKwkgIGZpOyBcCisJICAoJChhbV9fY2QpICQkc3ViZGlyICYmICQoTUFLRSkgJChBTV9NQUtFRkxBR1MpICQkbG9jYWxfdGFyZ2V0KSBcCisJICB8fCBldmFsICQkZmFpbGNvbTsgXAorCWRvbmUgJiYgdGVzdCAteiAiJCRmYWlsIgordGFncy1yZWN1cnNpdmU6CisJbGlzdD0nJChTVUJESVJTKSc7IGZvciBzdWJkaXIgaW4gJCRsaXN0OyBkbyBcCisJICB0ZXN0ICIkJHN1YmRpciIgPSAuIHx8ICgkKGFtX19jZCkgJCRzdWJkaXIgJiYgJChNQUtFKSAkKEFNX01BS0VGTEFHUykgdGFncyk7IFwKKwlkb25lCitjdGFncy1yZWN1cnNpdmU6CisJbGlzdD0nJChTVUJESVJTKSc7IGZvciBzdWJkaXIgaW4gJCRsaXN0OyBkbyBcCisJICB0ZXN0ICIkJHN1YmRpciIgPSAuIHx8ICgkKGFtX19jZCkgJCRzdWJkaXIgJiYgJChNQUtFKSAkKEFNX01BS0VGTEFHUykgY3RhZ3MpOyBcCisJZG9uZQorCitJRDogJChIRUFERVJTKSAkKFNPVVJDRVMpICQoTElTUCkgJChUQUdTX0ZJTEVTKQorCWxpc3Q9JyQoU09VUkNFUykgJChIRUFERVJTKSAkKExJU1ApICQoVEFHU19GSUxFUyknOyBcCisJdW5pcXVlPWBmb3IgaSBpbiAkJGxpc3Q7IGRvIFwKKwkgICAgaWYgdGVzdCAtZiAiJCRpIjsgdGhlbiBlY2hvICQkaTsgZWxzZSBlY2hvICQoc3JjZGlyKS8kJGk7IGZpOyBcCisJICBkb25lIHwgXAorCSAgJChBV0spICd7IGZpbGVzWyQkMF0gPSAxOyBub25lbXB0eSA9IDE7IH0gXAorCSAgICAgIEVORCB7IGlmIChub25lbXB0eSkgeyBmb3IgKGkgaW4gZmlsZXMpIHByaW50IGk7IH07IH0nYDsgXAorCW1raWQgLWZJRCAkJHVuaXF1ZQordGFnczogVEFHUworCitUQUdTOiB0YWdzLXJlY3Vyc2l2ZSAkKEhFQURFUlMpICQoU09VUkNFUykgICQoVEFHU19ERVBFTkRFTkNJRVMpIFwKKwkJJChUQUdTX0ZJTEVTKSAkKExJU1ApCisJc2V0IHg7IFwKKwloZXJlPWBwd2RgOyBcCisJaWYgKCQoRVRBR1MpIC0tZXRhZ3MtaW5jbHVkZSAtLXZlcnNpb24pID4vZGV2L251bGwgMj4mMTsgdGhlbiBcCisJICBpbmNsdWRlX29wdGlvbj0tLWV0YWdzLWluY2x1ZGU7IFwKKwkgIGVtcHR5X2ZpeD0uOyBcCisJZWxzZSBcCisJICBpbmNsdWRlX29wdGlvbj0tLWluY2x1ZGU7IFwKKwkgIGVtcHR5X2ZpeD07IFwKKwlmaTsgXAorCWxpc3Q9JyQoU1VCRElSUyknOyBmb3Igc3ViZGlyIGluICQkbGlzdDsgZG8gXAorCSAgaWYgdGVzdCAiJCRzdWJkaXIiID0gLjsgdGhlbiA6OyBlbHNlIFwKKwkgICAgdGVzdCAhIC1mICQkc3ViZGlyL1RBR1MgfHwgXAorCSAgICAgIHNldCAiJCRAIiAiJCRpbmNsdWRlX29wdGlvbj0kJGhlcmUvJCRzdWJkaXIvVEFHUyI7IFwKKwkgIGZpOyBcCisJZG9uZTsgXAorCWxpc3Q9JyQoU09VUkNFUykgJChIRUFERVJTKSAgJChMSVNQKSAkKFRBR1NfRklMRVMpJzsgXAorCXVuaXF1ZT1gZm9yIGkgaW4gJCRsaXN0OyBkbyBcCisJICAgIGlmIHRlc3QgLWYgIiQkaSI7IHRoZW4gZWNobyAkJGk7IGVsc2UgZWNobyAkKHNyY2RpcikvJCRpOyBmaTsgXAorCSAgZG9uZSB8IFwKKwkgICQoQVdLKSAneyBmaWxlc1skJDBdID0gMTsgbm9uZW1wdHkgPSAxOyB9IFwKKwkgICAgICBFTkQgeyBpZiAobm9uZW1wdHkpIHsgZm9yIChpIGluIGZpbGVzKSBwcmludCBpOyB9OyB9J2A7IFwKKwlzaGlmdDsgXAorCWlmIHRlc3QgLXogIiQoRVRBR1NfQVJHUykkJCokJHVuaXF1ZSI7IHRoZW4gOjsgZWxzZSBcCisJICB0ZXN0IC1uICIkJHVuaXF1ZSIgfHwgdW5pcXVlPSQkZW1wdHlfZml4OyBcCisJICBpZiB0ZXN0ICQkIyAtZ3QgMDsgdGhlbiBcCisJICAgICQoRVRBR1MpICQoRVRBR1NGTEFHUykgJChBTV9FVEFHU0ZMQUdTKSAkKEVUQUdTX0FSR1MpIFwKKwkgICAgICAiJCRAIiAkJHVuaXF1ZTsgXAorCSAgZWxzZSBcCisJICAgICQoRVRBR1MpICQoRVRBR1NGTEFHUykgJChBTV9FVEFHU0ZMQUdTKSAkKEVUQUdTX0FSR1MpIFwKKwkgICAgICAkJHVuaXF1ZTsgXAorCSAgZmk7IFwKKwlmaQorY3RhZ3M6IENUQUdTCitDVEFHUzogY3RhZ3MtcmVjdXJzaXZlICQoSEVBREVSUykgJChTT1VSQ0VTKSAgJChUQUdTX0RFUEVOREVOQ0lFUykgXAorCQkkKFRBR1NfRklMRVMpICQoTElTUCkKKwlsaXN0PSckKFNPVVJDRVMpICQoSEVBREVSUykgICQoTElTUCkgJChUQUdTX0ZJTEVTKSc7IFwKKwl1bmlxdWU9YGZvciBpIGluICQkbGlzdDsgZG8gXAorCSAgICBpZiB0ZXN0IC1mICIkJGkiOyB0aGVuIGVjaG8gJCRpOyBlbHNlIGVjaG8gJChzcmNkaXIpLyQkaTsgZmk7IFwKKwkgIGRvbmUgfCBcCisJICAkKEFXSykgJ3sgZmlsZXNbJCQwXSA9IDE7IG5vbmVtcHR5ID0gMTsgfSBcCisJICAgICAgRU5EIHsgaWYgKG5vbmVtcHR5KSB7IGZvciAoaSBpbiBmaWxlcykgcHJpbnQgaTsgfTsgfSdgOyBcCisJdGVzdCAteiAiJChDVEFHU19BUkdTKSQkdW5pcXVlIiBcCisJICB8fCAkKENUQUdTKSAkKENUQUdTRkxBR1MpICQoQU1fQ1RBR1NGTEFHUykgJChDVEFHU19BUkdTKSBcCisJICAgICAkJHVuaXF1ZQorCitHVEFHUzoKKwloZXJlPWAkKGFtX19jZCkgJCh0b3BfYnVpbGRkaXIpICYmIHB3ZGAgXAorCSAgJiYgJChhbV9fY2QpICQodG9wX3NyY2RpcikgXAorCSAgJiYgZ3RhZ3MgLWkgJChHVEFHU19BUkdTKSAiJCRoZXJlIgorCitkaXN0Y2xlYW4tdGFnczoKKwktcm0gLWYgVEFHUyBJRCBHVEFHUyBHUlRBR1MgR1NZTVMgR1BBVEggdGFncworCitkaXN0ZGlyOiAkKERJU1RGSUxFUykKKwlAc3JjZGlyc3RyaXA9YGVjaG8gIiQoc3JjZGlyKSIgfCBzZWQgJ3MvW10uW14kJFxcKl0vXFxcXCYvZydgOyBcCisJdG9wc3JjZGlyc3RyaXA9YGVjaG8gIiQodG9wX3NyY2RpcikiIHwgc2VkICdzL1tdLlteJCRcXCpdL1xcXFwmL2cnYDsgXAorCWxpc3Q9JyQoRElTVEZJTEVTKSc7IFwKKwkgIGRpc3RfZmlsZXM9YGZvciBmaWxlIGluICQkbGlzdDsgZG8gZWNobyAkJGZpbGU7IGRvbmUgfCBcCisJICBzZWQgLWUgInN8XiQkc3JjZGlyc3RyaXAvfHw7dCIgXAorCSAgICAgIC1lICJzfF4kJHRvcHNyY2RpcnN0cmlwL3wkKHRvcF9idWlsZGRpcikvfDt0ImA7IFwKKwljYXNlICQkZGlzdF9maWxlcyBpbiBcCisJICAqLyopICQoTUtESVJfUCkgYGVjaG8gIiQkZGlzdF9maWxlcyIgfCBcCisJCQkgICBzZWQgJy9cLy8hZDtzfF58JChkaXN0ZGlyKS98O3MsL1teL10qJCQsLCcgfCBcCisJCQkgICBzb3J0IC11YCA7OyBcCisJZXNhYzsgXAorCWZvciBmaWxlIGluICQkZGlzdF9maWxlczsgZG8gXAorCSAgaWYgdGVzdCAtZiAkJGZpbGUgfHwgdGVzdCAtZCAkJGZpbGU7IHRoZW4gZD0uOyBlbHNlIGQ9JChzcmNkaXIpOyBmaTsgXAorCSAgaWYgdGVzdCAtZCAkJGQvJCRmaWxlOyB0aGVuIFwKKwkgICAgZGlyPWBlY2hvICIvJCRmaWxlIiB8IHNlZCAtZSAncywvW14vXSokJCwsJ2A7IFwKKwkgICAgaWYgdGVzdCAtZCAiJChkaXN0ZGlyKS8kJGZpbGUiOyB0aGVuIFwKKwkgICAgICBmaW5kICIkKGRpc3RkaXIpLyQkZmlsZSIgLXR5cGUgZCAhIC1wZXJtIC03MDAgLWV4ZWMgY2htb2QgdStyd3gge30gXDs7IFwKKwkgICAgZmk7IFwKKwkgICAgaWYgdGVzdCAtZCAkKHNyY2RpcikvJCRmaWxlICYmIHRlc3QgJCRkICE9ICQoc3JjZGlyKTsgdGhlbiBcCisJICAgICAgY3AgLWZwUiAkKHNyY2RpcikvJCRmaWxlICIkKGRpc3RkaXIpJCRkaXIiIHx8IGV4aXQgMTsgXAorCSAgICAgIGZpbmQgIiQoZGlzdGRpcikvJCRmaWxlIiAtdHlwZSBkICEgLXBlcm0gLTcwMCAtZXhlYyBjaG1vZCB1K3J3eCB7fSBcOzsgXAorCSAgICBmaTsgXAorCSAgICBjcCAtZnBSICQkZC8kJGZpbGUgIiQoZGlzdGRpcikkJGRpciIgfHwgZXhpdCAxOyBcCisJICBlbHNlIFwKKwkgICAgdGVzdCAtZiAiJChkaXN0ZGlyKS8kJGZpbGUiIFwKKwkgICAgfHwgY3AgLXAgJCRkLyQkZmlsZSAiJChkaXN0ZGlyKS8kJGZpbGUiIFwKKwkgICAgfHwgZXhpdCAxOyBcCisJICBmaTsgXAorCWRvbmUKKwlAbGlzdD0nJChESVNUX1NVQkRJUlMpJzsgZm9yIHN1YmRpciBpbiAkJGxpc3Q7IGRvIFwKKwkgIGlmIHRlc3QgIiQkc3ViZGlyIiA9IC47IHRoZW4gOjsgZWxzZSBcCisJICAgIHRlc3QgLWQgIiQoZGlzdGRpcikvJCRzdWJkaXIiIFwKKwkgICAgfHwgJChNS0RJUl9QKSAiJChkaXN0ZGlyKS8kJHN1YmRpciIgXAorCSAgICB8fCBleGl0IDE7IFwKKwkgIGZpOyBcCisJZG9uZQorCUBsaXN0PSckKERJU1RfU1VCRElSUyknOyBmb3Igc3ViZGlyIGluICQkbGlzdDsgZG8gXAorCSAgaWYgdGVzdCAiJCRzdWJkaXIiID0gLjsgdGhlbiA6OyBlbHNlIFwKKwkgICAgZGlyMT0kJHN1YmRpcjsgZGlyMj0iJChkaXN0ZGlyKS8kJHN1YmRpciI7IFwKKwkgICAgJChhbV9fcmVsYXRpdml6ZSk7IFwKKwkgICAgbmV3X2Rpc3RkaXI9JCRyZWxkaXI7IFwKKwkgICAgZGlyMT0kJHN1YmRpcjsgZGlyMj0iJCh0b3BfZGlzdGRpcikiOyBcCisJICAgICQoYW1fX3JlbGF0aXZpemUpOyBcCisJICAgIG5ld190b3BfZGlzdGRpcj0kJHJlbGRpcjsgXAorCSAgICBlY2hvICIgKGNkICQkc3ViZGlyICYmICQoTUFLRSkgJChBTV9NQUtFRkxBR1MpIHRvcF9kaXN0ZGlyPSIkJG5ld190b3BfZGlzdGRpciIgZGlzdGRpcj0iJCRuZXdfZGlzdGRpciIgXFwiOyBcCisJICAgIGVjaG8gIiAgICAgYW1fX3JlbW92ZV9kaXN0ZGlyPTogYW1fX3NraXBfbGVuZ3RoX2NoZWNrPTogYW1fX3NraXBfbW9kZV9maXg9OiBkaXN0ZGlyKSI7IFwKKwkgICAgKCQoYW1fX2NkKSAkJHN1YmRpciAmJiBcCisJICAgICAgJChNQUtFKSAkKEFNX01BS0VGTEFHUykgXAorCSAgICAgICAgdG9wX2Rpc3RkaXI9IiQkbmV3X3RvcF9kaXN0ZGlyIiBcCisJICAgICAgICBkaXN0ZGlyPSIkJG5ld19kaXN0ZGlyIiBcCisJCWFtX19yZW1vdmVfZGlzdGRpcj06IFwKKwkJYW1fX3NraXBfbGVuZ3RoX2NoZWNrPTogXAorCQlhbV9fc2tpcF9tb2RlX2ZpeD06IFwKKwkgICAgICAgIGRpc3RkaXIpIFwKKwkgICAgICB8fCBleGl0IDE7IFwKKwkgIGZpOyBcCisJZG9uZQorY2hlY2stYW06IGFsbC1hbQorY2hlY2s6IGNoZWNrLXJlY3Vyc2l2ZQorYWxsLWFtOiBNYWtlZmlsZQoraW5zdGFsbGRpcnM6IGluc3RhbGxkaXJzLXJlY3Vyc2l2ZQoraW5zdGFsbGRpcnMtYW06CitpbnN0YWxsOiBpbnN0YWxsLXJlY3Vyc2l2ZQoraW5zdGFsbC1leGVjOiBpbnN0YWxsLWV4ZWMtcmVjdXJzaXZlCitpbnN0YWxsLWRhdGE6IGluc3RhbGwtZGF0YS1yZWN1cnNpdmUKK3VuaW5zdGFsbDogdW5pbnN0YWxsLXJlY3Vyc2l2ZQorCitpbnN0YWxsLWFtOiBhbGwtYW0KKwlAJChNQUtFKSAkKEFNX01BS0VGTEFHUykgaW5zdGFsbC1leGVjLWFtIGluc3RhbGwtZGF0YS1hbQorCitpbnN0YWxsY2hlY2s6IGluc3RhbGxjaGVjay1yZWN1cnNpdmUKK2luc3RhbGwtc3RyaXA6CisJJChNQUtFKSAkKEFNX01BS0VGTEFHUykgSU5TVEFMTF9QUk9HUkFNPSIkKElOU1RBTExfU1RSSVBfUFJPR1JBTSkiIFwKKwkgIGluc3RhbGxfc2hfUFJPR1JBTT0iJChJTlNUQUxMX1NUUklQX1BST0dSQU0pIiBJTlNUQUxMX1NUUklQX0ZMQUc9LXMgXAorCSAgYHRlc3QgLXogJyQoU1RSSVApJyB8fCBcCisJICAgIGVjaG8gIklOU1RBTExfUFJPR1JBTV9FTlY9U1RSSVBQUk9HPSckKFNUUklQKSciYCBpbnN0YWxsCittb3N0bHljbGVhbi1nZW5lcmljOgorCitjbGVhbi1nZW5lcmljOgorCitkaXN0Y2xlYW4tZ2VuZXJpYzoKKwktdGVzdCAteiAiJChDT05GSUdfQ0xFQU5fRklMRVMpIiB8fCBybSAtZiAkKENPTkZJR19DTEVBTl9GSUxFUykKKwktdGVzdCAuID0gIiQoc3JjZGlyKSIgfHwgdGVzdCAteiAiJChDT05GSUdfQ0xFQU5fVlBBVEhfRklMRVMpIiB8fCBybSAtZiAkKENPTkZJR19DTEVBTl9WUEFUSF9GSUxFUykKKworbWFpbnRhaW5lci1jbGVhbi1nZW5lcmljOgorCUBlY2hvICJUaGlzIGNvbW1hbmQgaXMgaW50ZW5kZWQgZm9yIG1haW50YWluZXJzIHRvIHVzZSIKKwlAZWNobyAiaXQgZGVsZXRlcyBmaWxlcyB0aGF0IG1heSByZXF1aXJlIHNwZWNpYWwgdG9vbHMgdG8gcmVidWlsZC4iCitjbGVhbjogY2xlYW4tcmVjdXJzaXZlCisKK2NsZWFuLWFtOiBjbGVhbi1nZW5lcmljIG1vc3RseWNsZWFuLWFtCisKK2Rpc3RjbGVhbjogZGlzdGNsZWFuLXJlY3Vyc2l2ZQorCS1ybSAtZiBNYWtlZmlsZQorZGlzdGNsZWFuLWFtOiBjbGVhbi1hbSBkaXN0Y2xlYW4tZ2VuZXJpYyBkaXN0Y2xlYW4tdGFncworCitkdmk6IGR2aS1yZWN1cnNpdmUKKworZHZpLWFtOgorCitodG1sOiBodG1sLXJlY3Vyc2l2ZQorCitodG1sLWFtOgorCitpbmZvOiBpbmZvLXJlY3Vyc2l2ZQorCitpbmZvLWFtOgorCitpbnN0YWxsLWRhdGEtYW06CisKK2luc3RhbGwtZHZpOiBpbnN0YWxsLWR2aS1yZWN1cnNpdmUKKworaW5zdGFsbC1kdmktYW06CisKK2luc3RhbGwtZXhlYy1hbToKKworaW5zdGFsbC1odG1sOiBpbnN0YWxsLWh0bWwtcmVjdXJzaXZlCisKK2luc3RhbGwtaHRtbC1hbToKKworaW5zdGFsbC1pbmZvOiBpbnN0YWxsLWluZm8tcmVjdXJzaXZlCisKK2luc3RhbGwtaW5mby1hbToKKworaW5zdGFsbC1tYW46CisKK2luc3RhbGwtcGRmOiBpbnN0YWxsLXBkZi1yZWN1cnNpdmUKKworaW5zdGFsbC1wZGYtYW06CisKK2luc3RhbGwtcHM6IGluc3RhbGwtcHMtcmVjdXJzaXZlCisKK2luc3RhbGwtcHMtYW06CisKK2luc3RhbGxjaGVjay1hbToKKworbWFpbnRhaW5lci1jbGVhbjogbWFpbnRhaW5lci1jbGVhbi1yZWN1cnNpdmUKKwktcm0gLWYgTWFrZWZpbGUKK21haW50YWluZXItY2xlYW4tYW06IGRpc3RjbGVhbi1hbSBtYWludGFpbmVyLWNsZWFuLWdlbmVyaWMKKworbW9zdGx5Y2xlYW46IG1vc3RseWNsZWFuLXJlY3Vyc2l2ZQorCittb3N0bHljbGVhbi1hbTogbW9zdGx5Y2xlYW4tZ2VuZXJpYworCitwZGY6IHBkZi1yZWN1cnNpdmUKKworcGRmLWFtOgorCitwczogcHMtcmVjdXJzaXZlCisKK3BzLWFtOgorCit1bmluc3RhbGwtYW06CisKKy5NQUtFOiAkKFJFQ1VSU0lWRV9DTEVBTl9UQVJHRVRTKSAkKFJFQ1VSU0lWRV9UQVJHRVRTKSBjdGFncy1yZWN1cnNpdmUgXAorCWluc3RhbGwtYW0gaW5zdGFsbC1zdHJpcCB0YWdzLXJlY3Vyc2l2ZQorCisuUEhPTlk6ICQoUkVDVVJTSVZFX0NMRUFOX1RBUkdFVFMpICQoUkVDVVJTSVZFX1RBUkdFVFMpIENUQUdTIEdUQUdTIFwKKwlhbGwgYWxsLWFtIGNoZWNrIGNoZWNrLWFtIGNsZWFuIGNsZWFuLWdlbmVyaWMgY3RhZ3MgXAorCWN0YWdzLXJlY3Vyc2l2ZSBkaXN0Y2xlYW4gZGlzdGNsZWFuLWdlbmVyaWMgZGlzdGNsZWFuLXRhZ3MgXAorCWRpc3RkaXIgZHZpIGR2aS1hbSBodG1sIGh0bWwtYW0gaW5mbyBpbmZvLWFtIGluc3RhbGwgXAorCWluc3RhbGwtYW0gaW5zdGFsbC1kYXRhIGluc3RhbGwtZGF0YS1hbSBpbnN0YWxsLWR2aSBcCisJaW5zdGFsbC1kdmktYW0gaW5zdGFsbC1leGVjIGluc3RhbGwtZXhlYy1hbSBpbnN0YWxsLWh0bWwgXAorCWluc3RhbGwtaHRtbC1hbSBpbnN0YWxsLWluZm8gaW5zdGFsbC1pbmZvLWFtIGluc3RhbGwtbWFuIFwKKwlpbnN0YWxsLXBkZiBpbnN0YWxsLXBkZi1hbSBpbnN0YWxsLXBzIGluc3RhbGwtcHMtYW0gXAorCWluc3RhbGwtc3RyaXAgaW5zdGFsbGNoZWNrIGluc3RhbGxjaGVjay1hbSBpbnN0YWxsZGlycyBcCisJaW5zdGFsbGRpcnMtYW0gbWFpbnRhaW5lci1jbGVhbiBtYWludGFpbmVyLWNsZWFuLWdlbmVyaWMgXAorCW1vc3RseWNsZWFuIG1vc3RseWNsZWFuLWdlbmVyaWMgcGRmIHBkZi1hbSBwcyBwcy1hbSB0YWdzIFwKKwl0YWdzLXJlY3Vyc2l2ZSB1bmluc3RhbGwgdW5pbnN0YWxsLWFtCisKKworIyBUZWxsIHZlcnNpb25zIFszLjU5LDMuNjMpIG9mIEdOVSBtYWtlIHRvIG5vdCBleHBvcnQgYWxsIHZhcmlhYmxlcy4KKyMgT3RoZXJ3aXNlIGEgc3lzdGVtIGxpbWl0IChmb3IgU3lzViBhdCBsZWFzdCkgbWF5IGJlIGV4Y2VlZGVkLgorLk5PRVhQT1JUOgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9saWIvY29tcGF0L01ha2VmaWxlLmFtIGIvZHBrZy0xLjE2LjEuMS9saWIvY29tcGF0L01ha2VmaWxlLmFtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmNiMzIyNGEKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2xpYi9jb21wYXQvTWFrZWZpbGUuYW0KQEAgLTAsMCArMSw1NyBAQAorIyMgUHJvY2VzcyB0aGlzIGZpbGUgd2l0aCBhdXRvbWFrZSB0byBwcm9kdWNlIE1ha2VmaWxlLmluCisKK0FNX0NQUEZMQUdTID0gXAorCS1pZGlyYWZ0ZXIgJCh0b3Bfc3JjZGlyKS9saWIvY29tcGF0IFwKKwktSSQodG9wX2J1aWxkZGlyKQorCisKK25vaW5zdF9MSUJSQVJJRVMgPSBsaWJjb21wYXQuYQorCitsaWJjb21wYXRfYV9TT1VSQ0VTID0gXAorCWVtcHR5LmMgXAorCWNvbXBhdC5oIFwKKwlnZXR0ZXh0LmgKKworaWYgIUhBVkVfR0VUT1BUCitsaWJjb21wYXRfYV9TT1VSQ0VTICs9IGdldG9wdC5jIGdldG9wdC5oCitlbmRpZgorCitpZiAhSEFWRV9HRVRPUFRfTE9ORworbGliY29tcGF0X2FfU09VUkNFUyArPSBnZXRvcHQxLmMKK2VuZGlmCisKK2lmICFIQVZFX09CU1RBQ0tfRlJFRQorbGliY29tcGF0X2FfU09VUkNFUyArPSBvYnN0YWNrLmMgb2JzdGFjay5oCitlbmRpZgorCitpZiAhSEFWRV9TVFJOTEVOCitsaWJjb21wYXRfYV9TT1VSQ0VTICs9IHN0cm5sZW4uYyBzdHJubGVuLmgKK2VuZGlmCisKK2lmICFIQVZFX1NUUkVSUk9SCitsaWJjb21wYXRfYV9TT1VSQ0VTICs9IHN0cmVycm9yLmMKK2VuZGlmCisKK2lmICFIQVZFX1NUUlNJR05BTAorbGliY29tcGF0X2FfU09VUkNFUyArPSBzdHJzaWduYWwuYworZW5kaWYKKworaWYgIUhBVkVfQzk5X1NOUFJJTlRGCitsaWJjb21wYXRfYV9TT1VSQ0VTICs9IHNucHJpbnRmLmMgdnNucHJpbnRmLmMKK2VuZGlmCisKK2lmICFIQVZFX0FTUFJJTlRGCitsaWJjb21wYXRfYV9TT1VSQ0VTICs9IGFzcHJpbnRmLmMgdmFzcHJpbnRmLmMKK2VuZGlmCisKK2lmICFIQVZFX0FMUEhBU09SVAorbGliY29tcGF0X2FfU09VUkNFUyArPSBhbHBoYXNvcnQuYworZW5kaWYKKworaWYgIUhBVkVfU0NBTkRJUgorbGliY29tcGF0X2FfU09VUkNFUyArPSBzY2FuZGlyLmMKK2VuZGlmCisKK2lmICFIQVZFX1VOU0VURU5WCitsaWJjb21wYXRfYV9TT1VSQ0VTICs9IHVuc2V0ZW52LmMKK2VuZGlmCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2xpYi9jb21wYXQvTWFrZWZpbGUuaW4gYi9kcGtnLTEuMTYuMS4xL2xpYi9jb21wYXQvTWFrZWZpbGUuaW4KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZWI2OWVhNAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbGliL2NvbXBhdC9NYWtlZmlsZS5pbgpAQCAtMCwwICsxLDU1NiBAQAorIyBNYWtlZmlsZS5pbiBnZW5lcmF0ZWQgYnkgYXV0b21ha2UgMS4xMS4xIGZyb20gTWFrZWZpbGUuYW0uCisjIEBjb25maWd1cmVfaW5wdXRACisKKyMgQ29weXJpZ2h0IChDKSAxOTk0LCAxOTk1LCAxOTk2LCAxOTk3LCAxOTk4LCAxOTk5LCAyMDAwLCAyMDAxLCAyMDAyLAorIyAyMDAzLCAyMDA0LCAyMDA1LCAyMDA2LCAyMDA3LCAyMDA4LCAyMDA5ICBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sCisjIEluYy4KKyMgVGhpcyBNYWtlZmlsZS5pbiBpcyBmcmVlIHNvZnR3YXJlOyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uCisjIGdpdmVzIHVubGltaXRlZCBwZXJtaXNzaW9uIHRvIGNvcHkgYW5kL29yIGRpc3RyaWJ1dGUgaXQsCisjIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb25zLCBhcyBsb25nIGFzIHRoaXMgbm90aWNlIGlzIHByZXNlcnZlZC4KKworIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZLCB0byB0aGUgZXh0ZW50IHBlcm1pdHRlZCBieSBsYXc7IHdpdGhvdXQKKyMgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQQorIyBQQVJUSUNVTEFSIFBVUlBPU0UuCisKK0BTRVRfTUFLRUAKKworVlBBVEggPSBAc3JjZGlyQAorcGtnZGF0YWRpciA9ICQoZGF0YWRpcikvQFBBQ0tBR0VACitwa2dpbmNsdWRlZGlyID0gJChpbmNsdWRlZGlyKS9AUEFDS0FHRUAKK3BrZ2xpYmRpciA9ICQobGliZGlyKS9AUEFDS0FHRUAKK3BrZ2xpYmV4ZWNkaXIgPSAkKGxpYmV4ZWNkaXIpL0BQQUNLQUdFQAorYW1fX2NkID0gQ0RQQVRIPSIkJHtaU0hfVkVSU0lPTisufSQoUEFUSF9TRVBBUkFUT1IpIiAmJiBjZAoraW5zdGFsbF9zaF9EQVRBID0gJChpbnN0YWxsX3NoKSAtYyAtbSA2NDQKK2luc3RhbGxfc2hfUFJPR1JBTSA9ICQoaW5zdGFsbF9zaCkgLWMKK2luc3RhbGxfc2hfU0NSSVBUID0gJChpbnN0YWxsX3NoKSAtYworSU5TVEFMTF9IRUFERVIgPSAkKElOU1RBTExfREFUQSkKK3RyYW5zZm9ybSA9ICQocHJvZ3JhbV90cmFuc2Zvcm1fbmFtZSkKK05PUk1BTF9JTlNUQUxMID0gOgorUFJFX0lOU1RBTEwgPSA6CitQT1NUX0lOU1RBTEwgPSA6CitOT1JNQUxfVU5JTlNUQUxMID0gOgorUFJFX1VOSU5TVEFMTCA9IDoKK1BPU1RfVU5JTlNUQUxMID0gOgorYnVpbGRfdHJpcGxldCA9IEBidWlsZEAKK2hvc3RfdHJpcGxldCA9IEBob3N0QAorQEhBVkVfR0VUT1BUX0ZBTFNFQGFtX19hcHBlbmRfMSA9IGdldG9wdC5jIGdldG9wdC5oCitASEFWRV9HRVRPUFRfTE9OR19GQUxTRUBhbV9fYXBwZW5kXzIgPSBnZXRvcHQxLmMKK0BIQVZFX09CU1RBQ0tfRlJFRV9GQUxTRUBhbV9fYXBwZW5kXzMgPSBvYnN0YWNrLmMgb2JzdGFjay5oCitASEFWRV9TVFJOTEVOX0ZBTFNFQGFtX19hcHBlbmRfNCA9IHN0cm5sZW4uYyBzdHJubGVuLmgKK0BIQVZFX1NUUkVSUk9SX0ZBTFNFQGFtX19hcHBlbmRfNSA9IHN0cmVycm9yLmMKK0BIQVZFX1NUUlNJR05BTF9GQUxTRUBhbV9fYXBwZW5kXzYgPSBzdHJzaWduYWwuYworQEhBVkVfQzk5X1NOUFJJTlRGX0ZBTFNFQGFtX19hcHBlbmRfNyA9IHNucHJpbnRmLmMgdnNucHJpbnRmLmMKK0BIQVZFX0FTUFJJTlRGX0ZBTFNFQGFtX19hcHBlbmRfOCA9IGFzcHJpbnRmLmMgdmFzcHJpbnRmLmMKK0BIQVZFX0FMUEhBU09SVF9GQUxTRUBhbV9fYXBwZW5kXzkgPSBhbHBoYXNvcnQuYworQEhBVkVfU0NBTkRJUl9GQUxTRUBhbV9fYXBwZW5kXzEwID0gc2NhbmRpci5jCitASEFWRV9VTlNFVEVOVl9GQUxTRUBhbV9fYXBwZW5kXzExID0gdW5zZXRlbnYuYworc3ViZGlyID0gbGliL2NvbXBhdAorRElTVF9DT01NT04gPSAkKHNyY2RpcikvTWFrZWZpbGUuYW0gJChzcmNkaXIpL01ha2VmaWxlLmluCitBQ0xPQ0FMX000ID0gJCh0b3Bfc3JjZGlyKS9hY2xvY2FsLm00CithbV9fYWNsb2NhbF9tNF9kZXBzID0gJCh0b3Bfc3JjZGlyKS9tNC9kcGtnLWFyY2gubTQgXAorCSQodG9wX3NyY2RpcikvbTQvZHBrZy1idWlsZC5tNCBcCisJJCh0b3Bfc3JjZGlyKS9tNC9kcGtnLWNvbXBpbGVyLm00IFwKKwkkKHRvcF9zcmNkaXIpL200L2Rwa2ctY292ZXJhZ2UubTQgXAorCSQodG9wX3NyY2RpcikvbTQvZHBrZy1mdW5jcy5tNCAkKHRvcF9zcmNkaXIpL200L2Rwa2ctbGlicy5tNCBcCisJJCh0b3Bfc3JjZGlyKS9tNC9kcGtnLWxpbmtlci5tNCAkKHRvcF9zcmNkaXIpL200L2Rwa2ctcHJvZ3MubTQgXAorCSQodG9wX3NyY2RpcikvbTQvZHBrZy10eXBlcy5tNCBcCisJJCh0b3Bfc3JjZGlyKS9tNC9kcGtnLXVuaWNvZGUubTQgJCh0b3Bfc3JjZGlyKS9tNC9nZXR0ZXh0Lm00IFwKKwkkKHRvcF9zcmNkaXIpL200L2ljb252Lm00ICQodG9wX3NyY2RpcikvbTQvaW50bG1hY29zeC5tNCBcCisJJCh0b3Bfc3JjZGlyKS9tNC9saWItbGQubTQgJCh0b3Bfc3JjZGlyKS9tNC9saWItbGluay5tNCBcCisJJCh0b3Bfc3JjZGlyKS9tNC9saWItcHJlZml4Lm00ICQodG9wX3NyY2RpcikvbTQvbmxzLm00IFwKKwkkKHRvcF9zcmNkaXIpL200L3BvLm00ICQodG9wX3NyY2RpcikvbTQvcHJvZ3Rlc3QubTQgXAorCSQodG9wX3NyY2RpcikvY29uZmlndXJlLmFjCithbV9fY29uZmlndXJlX2RlcHMgPSAkKGFtX19hY2xvY2FsX200X2RlcHMpICQoQ09ORklHVVJFX0RFUEVOREVOQ0lFUykgXAorCSQoQUNMT0NBTF9NNCkKK21raW5zdGFsbGRpcnMgPSAkKGluc3RhbGxfc2gpIC1kCitDT05GSUdfSEVBREVSID0gJCh0b3BfYnVpbGRkaXIpL2NvbmZpZy5oCitDT05GSUdfQ0xFQU5fRklMRVMgPQorQ09ORklHX0NMRUFOX1ZQQVRIX0ZJTEVTID0KK0xJQlJBUklFUyA9ICQobm9pbnN0X0xJQlJBUklFUykKK0FSID0gYXIKK0FSRkxBR1MgPSBjcnUKK0FNX1ZfQVIgPSAkKGFtX192X0FSXyQoVikpCithbV9fdl9BUl8gPSAkKGFtX192X0FSXyQoQU1fREVGQVVMVF9WRVJCT1NJVFkpKQorYW1fX3ZfQVJfMCA9IEBlY2hvICIgIEFSICAgICIgJEA7CitBTV9WX2F0ID0gJChhbV9fdl9hdF8kKFYpKQorYW1fX3ZfYXRfID0gJChhbV9fdl9hdF8kKEFNX0RFRkFVTFRfVkVSQk9TSVRZKSkKK2FtX192X2F0XzAgPSBACitsaWJjb21wYXRfYV9BUiA9ICQoQVIpICQoQVJGTEFHUykKK2xpYmNvbXBhdF9hX0xJQkFERCA9CithbV9fbGliY29tcGF0X2FfU09VUkNFU19ESVNUID0gZW1wdHkuYyBjb21wYXQuaCBnZXR0ZXh0LmggZ2V0b3B0LmMgXAorCWdldG9wdC5oIGdldG9wdDEuYyBvYnN0YWNrLmMgb2JzdGFjay5oIHN0cm5sZW4uYyBzdHJubGVuLmggXAorCXN0cmVycm9yLmMgc3Ryc2lnbmFsLmMgc25wcmludGYuYyB2c25wcmludGYuYyBhc3ByaW50Zi5jIFwKKwl2YXNwcmludGYuYyBhbHBoYXNvcnQuYyBzY2FuZGlyLmMgdW5zZXRlbnYuYworQEhBVkVfR0VUT1BUX0ZBTFNFQGFtX19vYmplY3RzXzEgPSBnZXRvcHQuJChPQkpFWFQpCitASEFWRV9HRVRPUFRfTE9OR19GQUxTRUBhbV9fb2JqZWN0c18yID0gZ2V0b3B0MS4kKE9CSkVYVCkKK0BIQVZFX09CU1RBQ0tfRlJFRV9GQUxTRUBhbV9fb2JqZWN0c18zID0gb2JzdGFjay4kKE9CSkVYVCkKK0BIQVZFX1NUUk5MRU5fRkFMU0VAYW1fX29iamVjdHNfNCA9IHN0cm5sZW4uJChPQkpFWFQpCitASEFWRV9TVFJFUlJPUl9GQUxTRUBhbV9fb2JqZWN0c181ID0gc3RyZXJyb3IuJChPQkpFWFQpCitASEFWRV9TVFJTSUdOQUxfRkFMU0VAYW1fX29iamVjdHNfNiA9IHN0cnNpZ25hbC4kKE9CSkVYVCkKK0BIQVZFX0M5OV9TTlBSSU5URl9GQUxTRUBhbV9fb2JqZWN0c183ID0gc25wcmludGYuJChPQkpFWFQpIFwKK0BIQVZFX0M5OV9TTlBSSU5URl9GQUxTRUAJdnNucHJpbnRmLiQoT0JKRVhUKQorQEhBVkVfQVNQUklOVEZfRkFMU0VAYW1fX29iamVjdHNfOCA9IGFzcHJpbnRmLiQoT0JKRVhUKSBcCitASEFWRV9BU1BSSU5URl9GQUxTRUAJdmFzcHJpbnRmLiQoT0JKRVhUKQorQEhBVkVfQUxQSEFTT1JUX0ZBTFNFQGFtX19vYmplY3RzXzkgPSBhbHBoYXNvcnQuJChPQkpFWFQpCitASEFWRV9TQ0FORElSX0ZBTFNFQGFtX19vYmplY3RzXzEwID0gc2NhbmRpci4kKE9CSkVYVCkKK0BIQVZFX1VOU0VURU5WX0ZBTFNFQGFtX19vYmplY3RzXzExID0gdW5zZXRlbnYuJChPQkpFWFQpCithbV9saWJjb21wYXRfYV9PQkpFQ1RTID0gZW1wdHkuJChPQkpFWFQpICQoYW1fX29iamVjdHNfMSkgXAorCSQoYW1fX29iamVjdHNfMikgJChhbV9fb2JqZWN0c18zKSAkKGFtX19vYmplY3RzXzQpIFwKKwkkKGFtX19vYmplY3RzXzUpICQoYW1fX29iamVjdHNfNikgJChhbV9fb2JqZWN0c183KSBcCisJJChhbV9fb2JqZWN0c184KSAkKGFtX19vYmplY3RzXzkpICQoYW1fX29iamVjdHNfMTApIFwKKwkkKGFtX19vYmplY3RzXzExKQorbGliY29tcGF0X2FfT0JKRUNUUyA9ICQoYW1fbGliY29tcGF0X2FfT0JKRUNUUykKK0RFRkFVTFRfSU5DTFVERVMgPSAKK2RlcGNvbXAgPSAkKFNIRUxMKSAkKHRvcF9zcmNkaXIpL2J1aWxkLWF1eC9kZXBjb21wCithbV9fZGVwZmlsZXNfbWF5YmUgPSBkZXBmaWxlcworYW1fX212ID0gbXYgLWYKK0NPTVBJTEUgPSAkKENDKSAkKERFRlMpICQoREVGQVVMVF9JTkNMVURFUykgJChJTkNMVURFUykgJChBTV9DUFBGTEFHUykgXAorCSQoQ1BQRkxBR1MpICQoQU1fQ0ZMQUdTKSAkKENGTEFHUykKK0FNX1ZfQ0MgPSAkKGFtX192X0NDXyQoVikpCithbV9fdl9DQ18gPSAkKGFtX192X0NDXyQoQU1fREVGQVVMVF9WRVJCT1NJVFkpKQorYW1fX3ZfQ0NfMCA9IEBlY2hvICIgIENDICAgICIgJEA7CitDQ0xEID0gJChDQykKK0xJTksgPSAkKENDTEQpICQoQU1fQ0ZMQUdTKSAkKENGTEFHUykgJChBTV9MREZMQUdTKSAkKExERkxBR1MpIC1vICRACitBTV9WX0NDTEQgPSAkKGFtX192X0NDTERfJChWKSkKK2FtX192X0NDTERfID0gJChhbV9fdl9DQ0xEXyQoQU1fREVGQVVMVF9WRVJCT1NJVFkpKQorYW1fX3ZfQ0NMRF8wID0gQGVjaG8gIiAgQ0NMRCAgIiAkQDsKK0FNX1ZfR0VOID0gJChhbV9fdl9HRU5fJChWKSkKK2FtX192X0dFTl8gPSAkKGFtX192X0dFTl8kKEFNX0RFRkFVTFRfVkVSQk9TSVRZKSkKK2FtX192X0dFTl8wID0gQGVjaG8gIiAgR0VOICAgIiAkQDsKK1NPVVJDRVMgPSAkKGxpYmNvbXBhdF9hX1NPVVJDRVMpCitESVNUX1NPVVJDRVMgPSAkKGFtX19saWJjb21wYXRfYV9TT1VSQ0VTX0RJU1QpCitFVEFHUyA9IGV0YWdzCitDVEFHUyA9IGN0YWdzCitESVNURklMRVMgPSAkKERJU1RfQ09NTU9OKSAkKERJU1RfU09VUkNFUykgJChURVhJTkZPUykgJChFWFRSQV9ESVNUKQorQUNMT0NBTCA9IEBBQ0xPQ0FMQAorQU1UQVIgPSBAQU1UQVJACitBTV9ERUZBVUxUX1ZFUkJPU0lUWSA9IEBBTV9ERUZBVUxUX1ZFUkJPU0lUWUAKK0FVVE9DT05GID0gQEFVVE9DT05GQAorQVVUT0hFQURFUiA9IEBBVVRPSEVBREVSQAorQVVUT01BS0UgPSBAQVVUT01BS0VACitBV0sgPSBAQVdLQAorQloyX0xJQlMgPSBAQloyX0xJQlNACitDQyA9IEBDQ0AKK0NDREVQTU9ERSA9IEBDQ0RFUE1PREVACitDRkxBR1MgPSBAQ0ZMQUdTQAorQ1BQID0gQENQUEAKK0NQUEZMQUdTID0gQENQUEZMQUdTQAorQ1VSU0VTX0xJQlMgPSBAQ1VSU0VTX0xJQlNACitDWFggPSBAQ1hYQAorQ1hYREVQTU9ERSA9IEBDWFhERVBNT0RFQAorQ1hYRkxBR1MgPSBAQ1hYRkxBR1NACitDWUdQQVRIX1cgPSBAQ1lHUEFUSF9XQAorREVGUyA9IEBERUZTQAorREVQRElSID0gQERFUERJUkAKK0RPWFlHRU4gPSBARE9YWUdFTkAKK0VDSE9fQyA9IEBFQ0hPX0NACitFQ0hPX04gPSBARUNIT19OQAorRUNIT19UID0gQEVDSE9fVEAKK0VHUkVQID0gQEVHUkVQQAorRVhFRVhUID0gQEVYRUVYVEAKK0dDT1YgPSBAR0NPVkAKK0dFVFRFWFRfTUFDUk9fVkVSU0lPTiA9IEBHRVRURVhUX01BQ1JPX1ZFUlNJT05ACitHTVNHRk1UID0gQEdNU0dGTVRACitHTVNHRk1UXzAxNSA9IEBHTVNHRk1UXzAxNUAKK0dSRVAgPSBAR1JFUEAKK0hBVkVfRE9UID0gQEhBVkVfRE9UQAorSU5TVEFMTCA9IEBJTlNUQUxMQAorSU5TVEFMTF9EQVRBID0gQElOU1RBTExfREFUQUAKK0lOU1RBTExfUFJPR1JBTSA9IEBJTlNUQUxMX1BST0dSQU1ACitJTlNUQUxMX1NDUklQVCA9IEBJTlNUQUxMX1NDUklQVEAKK0lOU1RBTExfU1RSSVBfUFJPR1JBTSA9IEBJTlNUQUxMX1NUUklQX1BST0dSQU1ACitJTlRMTElCUyA9IEBJTlRMTElCU0AKK0lOVExfTUFDT1NYX0xJQlMgPSBASU5UTF9NQUNPU1hfTElCU0AKK0xDT1YgPSBATENPVkAKK0xDT1ZfR0VOSFRNTCA9IEBMQ09WX0dFTkhUTUxACitMREZMQUdTID0gQExERkxBR1NACitMRVggPSBATEVYQAorTEVYTElCID0gQExFWExJQkAKK0xFWF9PVVRQVVRfUk9PVCA9IEBMRVhfT1VUUFVUX1JPT1RACitMSUJJQ09OViA9IEBMSUJJQ09OVkAKK0xJQklOVEwgPSBATElCSU5UTEAKK0xJQk9CSlMgPSBATElCT0JKU0AKK0xJQlMgPSBATElCU0AKK0xUTElCSUNPTlYgPSBATFRMSUJJQ09OVkAKK0xUTElCSU5UTCA9IEBMVExJQklOVExACitMVExJQk9CSlMgPSBATFRMSUJPQkpTQAorTUFLRUlORk8gPSBATUFLRUlORk9ACitNS0RJUl9QID0gQE1LRElSX1BACitNU0dGTVQgPSBATVNHRk1UQAorTVNHRk1UXzAxNSA9IEBNU0dGTVRfMDE1QAorTVNHTUVSR0UgPSBATVNHTUVSR0VACitPQkpFWFQgPSBAT0JKRVhUQAorUEFDS0FHRSA9IEBQQUNLQUdFQAorUEFDS0FHRV9CVUdSRVBPUlQgPSBAUEFDS0FHRV9CVUdSRVBPUlRACitQQUNLQUdFX05BTUUgPSBAUEFDS0FHRV9OQU1FQAorUEFDS0FHRV9TVFJJTkcgPSBAUEFDS0FHRV9TVFJJTkdACitQQUNLQUdFX1RBUk5BTUUgPSBAUEFDS0FHRV9UQVJOQU1FQAorUEFDS0FHRV9VUkwgPSBAUEFDS0FHRV9VUkxACitQQUNLQUdFX1ZFUlNJT04gPSBAUEFDS0FHRV9WRVJTSU9OQAorUEFUSF9TRVBBUkFUT1IgPSBAUEFUSF9TRVBBUkFUT1JACitQRVJMID0gQFBFUkxACitQRVJMX0NPVkVSID0gQFBFUkxfQ09WRVJACitQRVJMX0NPVkVSQUdFID0gQFBFUkxfQ09WRVJBR0VACitQRVJMX0xJQkRJUiA9IEBQRVJMX0xJQkRJUkAKK1BLR19DT05GSUcgPSBAUEtHX0NPTkZJR0AKK1BLR19DT05GSUdfTElCRElSID0gQFBLR19DT05GSUdfTElCRElSQAorUEtHX0NPTkZJR19QQVRIID0gQFBLR19DT05GSUdfUEFUSEAKK1BPNEEgPSBAUE80QUAKK1BPRDJNQU4gPSBAUE9EMk1BTkAKK1BPU1VCID0gQFBPU1VCQAorUkFOTElCID0gQFJBTkxJQkAKK1NFTElOVVhfTElCUyA9IEBTRUxJTlVYX0xJQlNACitTRVRfTUFLRSA9IEBTRVRfTUFLRUAKK1NIRUxMID0gQFNIRUxMQAorU1NEX0xJQlMgPSBAU1NEX0xJQlNACitTVFJJUCA9IEBTVFJJUEAKK1VTRV9OTFMgPSBAVVNFX05MU0AKK1VTRV9QTzRBID0gQFVTRV9QTzRBQAorVVNFX1VOSUNPREUgPSBAVVNFX1VOSUNPREVACitWRVJTSU9OID0gQFZFUlNJT05ACitYR0VUVEVYVCA9IEBYR0VUVEVYVEAKK1hHRVRURVhUXzAxNSA9IEBYR0VUVEVYVF8wMTVACitYR0VUVEVYVF9FWFRSQV9PUFRJT05TID0gQFhHRVRURVhUX0VYVFJBX09QVElPTlNACitaTElCX0xJQlMgPSBAWkxJQl9MSUJTQAorYWJzX2J1aWxkZGlyID0gQGFic19idWlsZGRpckAKK2Fic19zcmNkaXIgPSBAYWJzX3NyY2RpckAKK2Fic190b3BfYnVpbGRkaXIgPSBAYWJzX3RvcF9idWlsZGRpckAKK2Fic190b3Bfc3JjZGlyID0gQGFic190b3Bfc3JjZGlyQAorYWNfY3RfQ0MgPSBAYWNfY3RfQ0NACithY19jdF9DWFggPSBAYWNfY3RfQ1hYQAorYWRtaW5kaXIgPSBAYWRtaW5kaXJACithbV9faW5jbHVkZSA9IEBhbV9faW5jbHVkZUAKK2FtX19sZWFkaW5nX2RvdCA9IEBhbV9fbGVhZGluZ19kb3RACithbV9fcXVvdGUgPSBAYW1fX3F1b3RlQAorYW1fX3RhciA9IEBhbV9fdGFyQAorYW1fX3VudGFyID0gQGFtX191bnRhckAKK2JpbmRpciA9IEBiaW5kaXJACitidWlsZCA9IEBidWlsZEAKK2J1aWxkX2FsaWFzID0gQGJ1aWxkX2FsaWFzQAorYnVpbGRfY3B1ID0gQGJ1aWxkX2NwdUAKK2J1aWxkX29zID0gQGJ1aWxkX29zQAorYnVpbGRfdmVuZG9yID0gQGJ1aWxkX3ZlbmRvckAKK2J1aWxkZGlyID0gQGJ1aWxkZGlyQAorZGF0YWRpciA9IEBkYXRhZGlyQAorZGF0YXJvb3RkaXIgPSBAZGF0YXJvb3RkaXJACitkb2NkaXIgPSBAZG9jZGlyQAorZHZpZGlyID0gQGR2aWRpckAKK2V4ZWNfcHJlZml4ID0gQGV4ZWNfcHJlZml4QAoraG9zdCA9IEBob3N0QAoraG9zdF9hbGlhcyA9IEBob3N0X2FsaWFzQAoraG9zdF9jcHUgPSBAaG9zdF9jcHVACitob3N0X29zID0gQGhvc3Rfb3NACitob3N0X3ZlbmRvciA9IEBob3N0X3ZlbmRvckAKK2h0bWxkaXIgPSBAaHRtbGRpckAKK2luY2x1ZGVkaXIgPSBAaW5jbHVkZWRpckAKK2luZm9kaXIgPSBAaW5mb2RpckAKK2luc3RhbGxfc2ggPSBAaW5zdGFsbF9zaEAKK2xpYmRpciA9IEBsaWJkaXJACitsaWJleGVjZGlyID0gQGxpYmV4ZWNkaXJACitsb2NhbGVkaXIgPSBAbG9jYWxlZGlyQAorbG9jYWxzdGF0ZWRpciA9IEBsb2NhbHN0YXRlZGlyQAorbG9nZGlyID0gQGxvZ2RpckAKK21hbmRpciA9IEBtYW5kaXJACitta2Rpcl9wID0gQG1rZGlyX3BACitvbGRpbmNsdWRlZGlyID0gQG9sZGluY2x1ZGVkaXJACitwZGZkaXIgPSBAcGRmZGlyQAorcHJlZml4ID0gQHByZWZpeEAKK3Byb2dyYW1fdHJhbnNmb3JtX25hbWUgPSBAcHJvZ3JhbV90cmFuc2Zvcm1fbmFtZUAKK3BzZGlyID0gQHBzZGlyQAorc2JpbmRpciA9IEBzYmluZGlyQAorc2hhcmVkc3RhdGVkaXIgPSBAc2hhcmVkc3RhdGVkaXJACitzcmNkaXIgPSBAc3JjZGlyQAorc3lzY29uZmRpciA9IEBzeXNjb25mZGlyQAordGFyZ2V0X2FsaWFzID0gQHRhcmdldF9hbGlhc0AKK3RvcF9idWlsZF9wcmVmaXggPSBAdG9wX2J1aWxkX3ByZWZpeEAKK3RvcF9idWlsZGRpciA9IEB0b3BfYnVpbGRkaXJACit0b3Bfc3JjZGlyID0gQHRvcF9zcmNkaXJACitBTV9DUFBGTEFHUyA9IFwKKwktaWRpcmFmdGVyICQodG9wX3NyY2RpcikvbGliL2NvbXBhdCBcCisJLUkkKHRvcF9idWlsZGRpcikKKworbm9pbnN0X0xJQlJBUklFUyA9IGxpYmNvbXBhdC5hCitsaWJjb21wYXRfYV9TT1VSQ0VTID0gZW1wdHkuYyBjb21wYXQuaCBnZXR0ZXh0LmggJChhbV9fYXBwZW5kXzEpIFwKKwkkKGFtX19hcHBlbmRfMikgJChhbV9fYXBwZW5kXzMpICQoYW1fX2FwcGVuZF80KSBcCisJJChhbV9fYXBwZW5kXzUpICQoYW1fX2FwcGVuZF82KSAkKGFtX19hcHBlbmRfNykgXAorCSQoYW1fX2FwcGVuZF84KSAkKGFtX19hcHBlbmRfOSkgJChhbV9fYXBwZW5kXzEwKSBcCisJJChhbV9fYXBwZW5kXzExKQorYWxsOiBhbGwtYW0KKworLlNVRkZJWEVTOgorLlNVRkZJWEVTOiAuYyAubyAub2JqCiskKHNyY2RpcikvTWFrZWZpbGUuaW46ICAkKHNyY2RpcikvTWFrZWZpbGUuYW0gICQoYW1fX2NvbmZpZ3VyZV9kZXBzKQorCUBmb3IgZGVwIGluICQ/OyBkbyBcCisJICBjYXNlICckKGFtX19jb25maWd1cmVfZGVwcyknIGluIFwKKwkgICAgKiQkZGVwKikgXAorCSAgICAgICggY2QgJCh0b3BfYnVpbGRkaXIpICYmICQoTUFLRSkgJChBTV9NQUtFRkxBR1MpIGFtLS1yZWZyZXNoICkgXAorCSAgICAgICAgJiYgeyBpZiB0ZXN0IC1mICRAOyB0aGVuIGV4aXQgMDsgZWxzZSBicmVhazsgZmk7IH07IFwKKwkgICAgICBleGl0IDE7OyBcCisJICBlc2FjOyBcCisJZG9uZTsgXAorCWVjaG8gJyBjZCAkKHRvcF9zcmNkaXIpICYmICQoQVVUT01BS0UpIC0tZm9yZWlnbiBsaWIvY29tcGF0L01ha2VmaWxlJzsgXAorCSQoYW1fX2NkKSAkKHRvcF9zcmNkaXIpICYmIFwKKwkgICQoQVVUT01BS0UpIC0tZm9yZWlnbiBsaWIvY29tcGF0L01ha2VmaWxlCisuUFJFQ0lPVVM6IE1ha2VmaWxlCitNYWtlZmlsZTogJChzcmNkaXIpL01ha2VmaWxlLmluICQodG9wX2J1aWxkZGlyKS9jb25maWcuc3RhdHVzCisJQGNhc2UgJyQ/JyBpbiBcCisJICAqY29uZmlnLnN0YXR1cyopIFwKKwkgICAgY2QgJCh0b3BfYnVpbGRkaXIpICYmICQoTUFLRSkgJChBTV9NQUtFRkxBR1MpIGFtLS1yZWZyZXNoOzsgXAorCSAgKikgXAorCSAgICBlY2hvICcgY2QgJCh0b3BfYnVpbGRkaXIpICYmICQoU0hFTEwpIC4vY29uZmlnLnN0YXR1cyAkKHN1YmRpcikvJEAgJChhbV9fZGVwZmlsZXNfbWF5YmUpJzsgXAorCSAgICBjZCAkKHRvcF9idWlsZGRpcikgJiYgJChTSEVMTCkgLi9jb25maWcuc3RhdHVzICQoc3ViZGlyKS8kQCAkKGFtX19kZXBmaWxlc19tYXliZSk7OyBcCisJZXNhYzsKKworJCh0b3BfYnVpbGRkaXIpL2NvbmZpZy5zdGF0dXM6ICQodG9wX3NyY2RpcikvY29uZmlndXJlICQoQ09ORklHX1NUQVRVU19ERVBFTkRFTkNJRVMpCisJY2QgJCh0b3BfYnVpbGRkaXIpICYmICQoTUFLRSkgJChBTV9NQUtFRkxBR1MpIGFtLS1yZWZyZXNoCisKKyQodG9wX3NyY2RpcikvY29uZmlndXJlOiAgJChhbV9fY29uZmlndXJlX2RlcHMpCisJY2QgJCh0b3BfYnVpbGRkaXIpICYmICQoTUFLRSkgJChBTV9NQUtFRkxBR1MpIGFtLS1yZWZyZXNoCiskKEFDTE9DQUxfTTQpOiAgJChhbV9fYWNsb2NhbF9tNF9kZXBzKQorCWNkICQodG9wX2J1aWxkZGlyKSAmJiAkKE1BS0UpICQoQU1fTUFLRUZMQUdTKSBhbS0tcmVmcmVzaAorJChhbV9fYWNsb2NhbF9tNF9kZXBzKToKKworY2xlYW4tbm9pbnN0TElCUkFSSUVTOgorCS10ZXN0IC16ICIkKG5vaW5zdF9MSUJSQVJJRVMpIiB8fCBybSAtZiAkKG5vaW5zdF9MSUJSQVJJRVMpCitsaWJjb21wYXQuYTogJChsaWJjb21wYXRfYV9PQkpFQ1RTKSAkKGxpYmNvbXBhdF9hX0RFUEVOREVOQ0lFUykgCisJJChBTV9WX2F0KS1ybSAtZiBsaWJjb21wYXQuYQorCSQoQU1fVl9BUikkKGxpYmNvbXBhdF9hX0FSKSBsaWJjb21wYXQuYSAkKGxpYmNvbXBhdF9hX09CSkVDVFMpICQobGliY29tcGF0X2FfTElCQUREKQorCSQoQU1fVl9hdCkkKFJBTkxJQikgbGliY29tcGF0LmEKKworbW9zdGx5Y2xlYW4tY29tcGlsZToKKwktcm0gLWYgKi4kKE9CSkVYVCkKKworZGlzdGNsZWFuLWNvbXBpbGU6CisJLXJtIC1mICoudGFiLmMKKworQEFNREVQX1RSVUVAQGFtX19pbmNsdWRlQCBAYW1fX3F1b3RlQC4vJChERVBESVIpL2FscGhhc29ydC5Qb0BhbV9fcXVvdGVACitAQU1ERVBfVFJVRUBAYW1fX2luY2x1ZGVAIEBhbV9fcXVvdGVALi8kKERFUERJUikvYXNwcmludGYuUG9AYW1fX3F1b3RlQAorQEFNREVQX1RSVUVAQGFtX19pbmNsdWRlQCBAYW1fX3F1b3RlQC4vJChERVBESVIpL2VtcHR5LlBvQGFtX19xdW90ZUAKK0BBTURFUF9UUlVFQEBhbV9faW5jbHVkZUAgQGFtX19xdW90ZUAuLyQoREVQRElSKS9nZXRvcHQuUG9AYW1fX3F1b3RlQAorQEFNREVQX1RSVUVAQGFtX19pbmNsdWRlQCBAYW1fX3F1b3RlQC4vJChERVBESVIpL2dldG9wdDEuUG9AYW1fX3F1b3RlQAorQEFNREVQX1RSVUVAQGFtX19pbmNsdWRlQCBAYW1fX3F1b3RlQC4vJChERVBESVIpL29ic3RhY2suUG9AYW1fX3F1b3RlQAorQEFNREVQX1RSVUVAQGFtX19pbmNsdWRlQCBAYW1fX3F1b3RlQC4vJChERVBESVIpL3NjYW5kaXIuUG9AYW1fX3F1b3RlQAorQEFNREVQX1RSVUVAQGFtX19pbmNsdWRlQCBAYW1fX3F1b3RlQC4vJChERVBESVIpL3NucHJpbnRmLlBvQGFtX19xdW90ZUAKK0BBTURFUF9UUlVFQEBhbV9faW5jbHVkZUAgQGFtX19xdW90ZUAuLyQoREVQRElSKS9zdHJlcnJvci5Qb0BhbV9fcXVvdGVACitAQU1ERVBfVFJVRUBAYW1fX2luY2x1ZGVAIEBhbV9fcXVvdGVALi8kKERFUERJUikvc3Rybmxlbi5Qb0BhbV9fcXVvdGVACitAQU1ERVBfVFJVRUBAYW1fX2luY2x1ZGVAIEBhbV9fcXVvdGVALi8kKERFUERJUikvc3Ryc2lnbmFsLlBvQGFtX19xdW90ZUAKK0BBTURFUF9UUlVFQEBhbV9faW5jbHVkZUAgQGFtX19xdW90ZUAuLyQoREVQRElSKS91bnNldGVudi5Qb0BhbV9fcXVvdGVACitAQU1ERVBfVFJVRUBAYW1fX2luY2x1ZGVAIEBhbV9fcXVvdGVALi8kKERFUERJUikvdmFzcHJpbnRmLlBvQGFtX19xdW90ZUAKK0BBTURFUF9UUlVFQEBhbV9faW5jbHVkZUAgQGFtX19xdW90ZUAuLyQoREVQRElSKS92c25wcmludGYuUG9AYW1fX3F1b3RlQAorCisuYy5vOgorQGFtX19mYXN0ZGVwQ0NfVFJVRUAJJChBTV9WX0NDKSQoQ09NUElMRSkgLU1UICRAIC1NRCAtTVAgLU1GICQoREVQRElSKS8kKi5UcG8gLWMgLW8gJEAgJDwKK0BhbV9fZmFzdGRlcENDX1RSVUVACSQoQU1fVl9hdCkkKGFtX19tdikgJChERVBESVIpLyQqLlRwbyAkKERFUERJUikvJCouUG8KK0BhbV9fZmFzdGRlcENDX0ZBTFNFQAkkKEFNX1ZfQ0MpIEBBTV9CQUNLU0xBU0hACitAQU1ERVBfVFJVRUBAYW1fX2Zhc3RkZXBDQ19GQUxTRUAJc291cmNlPSckPCcgb2JqZWN0PSckQCcgbGlidG9vbD1ubyBAQU1ERVBCQUNLU0xBU0hACitAQU1ERVBfVFJVRUBAYW1fX2Zhc3RkZXBDQ19GQUxTRUAJREVQRElSPSQoREVQRElSKSAkKENDREVQTU9ERSkgJChkZXBjb21wKSBAQU1ERVBCQUNLU0xBU0hACitAYW1fX2Zhc3RkZXBDQ19GQUxTRUAJJChDT01QSUxFKSAtYyAkPAorCisuYy5vYmo6CitAYW1fX2Zhc3RkZXBDQ19UUlVFQAkkKEFNX1ZfQ0MpJChDT01QSUxFKSAtTVQgJEAgLU1EIC1NUCAtTUYgJChERVBESVIpLyQqLlRwbyAtYyAtbyAkQCBgJChDWUdQQVRIX1cpICckPCdgCitAYW1fX2Zhc3RkZXBDQ19UUlVFQAkkKEFNX1ZfYXQpJChhbV9fbXYpICQoREVQRElSKS8kKi5UcG8gJChERVBESVIpLyQqLlBvCitAYW1fX2Zhc3RkZXBDQ19GQUxTRUAJJChBTV9WX0NDKSBAQU1fQkFDS1NMQVNIQAorQEFNREVQX1RSVUVAQGFtX19mYXN0ZGVwQ0NfRkFMU0VACXNvdXJjZT0nJDwnIG9iamVjdD0nJEAnIGxpYnRvb2w9bm8gQEFNREVQQkFDS1NMQVNIQAorQEFNREVQX1RSVUVAQGFtX19mYXN0ZGVwQ0NfRkFMU0VACURFUERJUj0kKERFUERJUikgJChDQ0RFUE1PREUpICQoZGVwY29tcCkgQEFNREVQQkFDS1NMQVNIQAorQGFtX19mYXN0ZGVwQ0NfRkFMU0VACSQoQ09NUElMRSkgLWMgYCQoQ1lHUEFUSF9XKSAnJDwnYAorCitJRDogJChIRUFERVJTKSAkKFNPVVJDRVMpICQoTElTUCkgJChUQUdTX0ZJTEVTKQorCWxpc3Q9JyQoU09VUkNFUykgJChIRUFERVJTKSAkKExJU1ApICQoVEFHU19GSUxFUyknOyBcCisJdW5pcXVlPWBmb3IgaSBpbiAkJGxpc3Q7IGRvIFwKKwkgICAgaWYgdGVzdCAtZiAiJCRpIjsgdGhlbiBlY2hvICQkaTsgZWxzZSBlY2hvICQoc3JjZGlyKS8kJGk7IGZpOyBcCisJICBkb25lIHwgXAorCSAgJChBV0spICd7IGZpbGVzWyQkMF0gPSAxOyBub25lbXB0eSA9IDE7IH0gXAorCSAgICAgIEVORCB7IGlmIChub25lbXB0eSkgeyBmb3IgKGkgaW4gZmlsZXMpIHByaW50IGk7IH07IH0nYDsgXAorCW1raWQgLWZJRCAkJHVuaXF1ZQordGFnczogVEFHUworCitUQUdTOiAgJChIRUFERVJTKSAkKFNPVVJDRVMpICAkKFRBR1NfREVQRU5ERU5DSUVTKSBcCisJCSQoVEFHU19GSUxFUykgJChMSVNQKQorCXNldCB4OyBcCisJaGVyZT1gcHdkYDsgXAorCWxpc3Q9JyQoU09VUkNFUykgJChIRUFERVJTKSAgJChMSVNQKSAkKFRBR1NfRklMRVMpJzsgXAorCXVuaXF1ZT1gZm9yIGkgaW4gJCRsaXN0OyBkbyBcCisJICAgIGlmIHRlc3QgLWYgIiQkaSI7IHRoZW4gZWNobyAkJGk7IGVsc2UgZWNobyAkKHNyY2RpcikvJCRpOyBmaTsgXAorCSAgZG9uZSB8IFwKKwkgICQoQVdLKSAneyBmaWxlc1skJDBdID0gMTsgbm9uZW1wdHkgPSAxOyB9IFwKKwkgICAgICBFTkQgeyBpZiAobm9uZW1wdHkpIHsgZm9yIChpIGluIGZpbGVzKSBwcmludCBpOyB9OyB9J2A7IFwKKwlzaGlmdDsgXAorCWlmIHRlc3QgLXogIiQoRVRBR1NfQVJHUykkJCokJHVuaXF1ZSI7IHRoZW4gOjsgZWxzZSBcCisJICB0ZXN0IC1uICIkJHVuaXF1ZSIgfHwgdW5pcXVlPSQkZW1wdHlfZml4OyBcCisJICBpZiB0ZXN0ICQkIyAtZ3QgMDsgdGhlbiBcCisJICAgICQoRVRBR1MpICQoRVRBR1NGTEFHUykgJChBTV9FVEFHU0ZMQUdTKSAkKEVUQUdTX0FSR1MpIFwKKwkgICAgICAiJCRAIiAkJHVuaXF1ZTsgXAorCSAgZWxzZSBcCisJICAgICQoRVRBR1MpICQoRVRBR1NGTEFHUykgJChBTV9FVEFHU0ZMQUdTKSAkKEVUQUdTX0FSR1MpIFwKKwkgICAgICAkJHVuaXF1ZTsgXAorCSAgZmk7IFwKKwlmaQorY3RhZ3M6IENUQUdTCitDVEFHUzogICQoSEVBREVSUykgJChTT1VSQ0VTKSAgJChUQUdTX0RFUEVOREVOQ0lFUykgXAorCQkkKFRBR1NfRklMRVMpICQoTElTUCkKKwlsaXN0PSckKFNPVVJDRVMpICQoSEVBREVSUykgICQoTElTUCkgJChUQUdTX0ZJTEVTKSc7IFwKKwl1bmlxdWU9YGZvciBpIGluICQkbGlzdDsgZG8gXAorCSAgICBpZiB0ZXN0IC1mICIkJGkiOyB0aGVuIGVjaG8gJCRpOyBlbHNlIGVjaG8gJChzcmNkaXIpLyQkaTsgZmk7IFwKKwkgIGRvbmUgfCBcCisJICAkKEFXSykgJ3sgZmlsZXNbJCQwXSA9IDE7IG5vbmVtcHR5ID0gMTsgfSBcCisJICAgICAgRU5EIHsgaWYgKG5vbmVtcHR5KSB7IGZvciAoaSBpbiBmaWxlcykgcHJpbnQgaTsgfTsgfSdgOyBcCisJdGVzdCAteiAiJChDVEFHU19BUkdTKSQkdW5pcXVlIiBcCisJICB8fCAkKENUQUdTKSAkKENUQUdTRkxBR1MpICQoQU1fQ1RBR1NGTEFHUykgJChDVEFHU19BUkdTKSBcCisJICAgICAkJHVuaXF1ZQorCitHVEFHUzoKKwloZXJlPWAkKGFtX19jZCkgJCh0b3BfYnVpbGRkaXIpICYmIHB3ZGAgXAorCSAgJiYgJChhbV9fY2QpICQodG9wX3NyY2RpcikgXAorCSAgJiYgZ3RhZ3MgLWkgJChHVEFHU19BUkdTKSAiJCRoZXJlIgorCitkaXN0Y2xlYW4tdGFnczoKKwktcm0gLWYgVEFHUyBJRCBHVEFHUyBHUlRBR1MgR1NZTVMgR1BBVEggdGFncworCitkaXN0ZGlyOiAkKERJU1RGSUxFUykKKwlAc3JjZGlyc3RyaXA9YGVjaG8gIiQoc3JjZGlyKSIgfCBzZWQgJ3MvW10uW14kJFxcKl0vXFxcXCYvZydgOyBcCisJdG9wc3JjZGlyc3RyaXA9YGVjaG8gIiQodG9wX3NyY2RpcikiIHwgc2VkICdzL1tdLlteJCRcXCpdL1xcXFwmL2cnYDsgXAorCWxpc3Q9JyQoRElTVEZJTEVTKSc7IFwKKwkgIGRpc3RfZmlsZXM9YGZvciBmaWxlIGluICQkbGlzdDsgZG8gZWNobyAkJGZpbGU7IGRvbmUgfCBcCisJICBzZWQgLWUgInN8XiQkc3JjZGlyc3RyaXAvfHw7dCIgXAorCSAgICAgIC1lICJzfF4kJHRvcHNyY2RpcnN0cmlwL3wkKHRvcF9idWlsZGRpcikvfDt0ImA7IFwKKwljYXNlICQkZGlzdF9maWxlcyBpbiBcCisJICAqLyopICQoTUtESVJfUCkgYGVjaG8gIiQkZGlzdF9maWxlcyIgfCBcCisJCQkgICBzZWQgJy9cLy8hZDtzfF58JChkaXN0ZGlyKS98O3MsL1teL10qJCQsLCcgfCBcCisJCQkgICBzb3J0IC11YCA7OyBcCisJZXNhYzsgXAorCWZvciBmaWxlIGluICQkZGlzdF9maWxlczsgZG8gXAorCSAgaWYgdGVzdCAtZiAkJGZpbGUgfHwgdGVzdCAtZCAkJGZpbGU7IHRoZW4gZD0uOyBlbHNlIGQ9JChzcmNkaXIpOyBmaTsgXAorCSAgaWYgdGVzdCAtZCAkJGQvJCRmaWxlOyB0aGVuIFwKKwkgICAgZGlyPWBlY2hvICIvJCRmaWxlIiB8IHNlZCAtZSAncywvW14vXSokJCwsJ2A7IFwKKwkgICAgaWYgdGVzdCAtZCAiJChkaXN0ZGlyKS8kJGZpbGUiOyB0aGVuIFwKKwkgICAgICBmaW5kICIkKGRpc3RkaXIpLyQkZmlsZSIgLXR5cGUgZCAhIC1wZXJtIC03MDAgLWV4ZWMgY2htb2QgdStyd3gge30gXDs7IFwKKwkgICAgZmk7IFwKKwkgICAgaWYgdGVzdCAtZCAkKHNyY2RpcikvJCRmaWxlICYmIHRlc3QgJCRkICE9ICQoc3JjZGlyKTsgdGhlbiBcCisJICAgICAgY3AgLWZwUiAkKHNyY2RpcikvJCRmaWxlICIkKGRpc3RkaXIpJCRkaXIiIHx8IGV4aXQgMTsgXAorCSAgICAgIGZpbmQgIiQoZGlzdGRpcikvJCRmaWxlIiAtdHlwZSBkICEgLXBlcm0gLTcwMCAtZXhlYyBjaG1vZCB1K3J3eCB7fSBcOzsgXAorCSAgICBmaTsgXAorCSAgICBjcCAtZnBSICQkZC8kJGZpbGUgIiQoZGlzdGRpcikkJGRpciIgfHwgZXhpdCAxOyBcCisJICBlbHNlIFwKKwkgICAgdGVzdCAtZiAiJChkaXN0ZGlyKS8kJGZpbGUiIFwKKwkgICAgfHwgY3AgLXAgJCRkLyQkZmlsZSAiJChkaXN0ZGlyKS8kJGZpbGUiIFwKKwkgICAgfHwgZXhpdCAxOyBcCisJICBmaTsgXAorCWRvbmUKK2NoZWNrLWFtOiBhbGwtYW0KK2NoZWNrOiBjaGVjay1hbQorYWxsLWFtOiBNYWtlZmlsZSAkKExJQlJBUklFUykKK2luc3RhbGxkaXJzOgoraW5zdGFsbDogaW5zdGFsbC1hbQoraW5zdGFsbC1leGVjOiBpbnN0YWxsLWV4ZWMtYW0KK2luc3RhbGwtZGF0YTogaW5zdGFsbC1kYXRhLWFtCit1bmluc3RhbGw6IHVuaW5zdGFsbC1hbQorCitpbnN0YWxsLWFtOiBhbGwtYW0KKwlAJChNQUtFKSAkKEFNX01BS0VGTEFHUykgaW5zdGFsbC1leGVjLWFtIGluc3RhbGwtZGF0YS1hbQorCitpbnN0YWxsY2hlY2s6IGluc3RhbGxjaGVjay1hbQoraW5zdGFsbC1zdHJpcDoKKwkkKE1BS0UpICQoQU1fTUFLRUZMQUdTKSBJTlNUQUxMX1BST0dSQU09IiQoSU5TVEFMTF9TVFJJUF9QUk9HUkFNKSIgXAorCSAgaW5zdGFsbF9zaF9QUk9HUkFNPSIkKElOU1RBTExfU1RSSVBfUFJPR1JBTSkiIElOU1RBTExfU1RSSVBfRkxBRz0tcyBcCisJICBgdGVzdCAteiAnJChTVFJJUCknIHx8IFwKKwkgICAgZWNobyAiSU5TVEFMTF9QUk9HUkFNX0VOVj1TVFJJUFBST0c9JyQoU1RSSVApJyJgIGluc3RhbGwKK21vc3RseWNsZWFuLWdlbmVyaWM6CisKK2NsZWFuLWdlbmVyaWM6CisKK2Rpc3RjbGVhbi1nZW5lcmljOgorCS10ZXN0IC16ICIkKENPTkZJR19DTEVBTl9GSUxFUykiIHx8IHJtIC1mICQoQ09ORklHX0NMRUFOX0ZJTEVTKQorCS10ZXN0IC4gPSAiJChzcmNkaXIpIiB8fCB0ZXN0IC16ICIkKENPTkZJR19DTEVBTl9WUEFUSF9GSUxFUykiIHx8IHJtIC1mICQoQ09ORklHX0NMRUFOX1ZQQVRIX0ZJTEVTKQorCittYWludGFpbmVyLWNsZWFuLWdlbmVyaWM6CisJQGVjaG8gIlRoaXMgY29tbWFuZCBpcyBpbnRlbmRlZCBmb3IgbWFpbnRhaW5lcnMgdG8gdXNlIgorCUBlY2hvICJpdCBkZWxldGVzIGZpbGVzIHRoYXQgbWF5IHJlcXVpcmUgc3BlY2lhbCB0b29scyB0byByZWJ1aWxkLiIKK2NsZWFuOiBjbGVhbi1hbQorCitjbGVhbi1hbTogY2xlYW4tZ2VuZXJpYyBjbGVhbi1ub2luc3RMSUJSQVJJRVMgbW9zdGx5Y2xlYW4tYW0KKworZGlzdGNsZWFuOiBkaXN0Y2xlYW4tYW0KKwktcm0gLXJmIC4vJChERVBESVIpCisJLXJtIC1mIE1ha2VmaWxlCitkaXN0Y2xlYW4tYW06IGNsZWFuLWFtIGRpc3RjbGVhbi1jb21waWxlIGRpc3RjbGVhbi1nZW5lcmljIFwKKwlkaXN0Y2xlYW4tdGFncworCitkdmk6IGR2aS1hbQorCitkdmktYW06CisKK2h0bWw6IGh0bWwtYW0KKworaHRtbC1hbToKKworaW5mbzogaW5mby1hbQorCitpbmZvLWFtOgorCitpbnN0YWxsLWRhdGEtYW06CisKK2luc3RhbGwtZHZpOiBpbnN0YWxsLWR2aS1hbQorCitpbnN0YWxsLWR2aS1hbToKKworaW5zdGFsbC1leGVjLWFtOgorCitpbnN0YWxsLWh0bWw6IGluc3RhbGwtaHRtbC1hbQorCitpbnN0YWxsLWh0bWwtYW06CisKK2luc3RhbGwtaW5mbzogaW5zdGFsbC1pbmZvLWFtCisKK2luc3RhbGwtaW5mby1hbToKKworaW5zdGFsbC1tYW46CisKK2luc3RhbGwtcGRmOiBpbnN0YWxsLXBkZi1hbQorCitpbnN0YWxsLXBkZi1hbToKKworaW5zdGFsbC1wczogaW5zdGFsbC1wcy1hbQorCitpbnN0YWxsLXBzLWFtOgorCitpbnN0YWxsY2hlY2stYW06CisKK21haW50YWluZXItY2xlYW46IG1haW50YWluZXItY2xlYW4tYW0KKwktcm0gLXJmIC4vJChERVBESVIpCisJLXJtIC1mIE1ha2VmaWxlCittYWludGFpbmVyLWNsZWFuLWFtOiBkaXN0Y2xlYW4tYW0gbWFpbnRhaW5lci1jbGVhbi1nZW5lcmljCisKK21vc3RseWNsZWFuOiBtb3N0bHljbGVhbi1hbQorCittb3N0bHljbGVhbi1hbTogbW9zdGx5Y2xlYW4tY29tcGlsZSBtb3N0bHljbGVhbi1nZW5lcmljCisKK3BkZjogcGRmLWFtCisKK3BkZi1hbToKKworcHM6IHBzLWFtCisKK3BzLWFtOgorCit1bmluc3RhbGwtYW06CisKKy5NQUtFOiBpbnN0YWxsLWFtIGluc3RhbGwtc3RyaXAKKworLlBIT05ZOiBDVEFHUyBHVEFHUyBhbGwgYWxsLWFtIGNoZWNrIGNoZWNrLWFtIGNsZWFuIGNsZWFuLWdlbmVyaWMgXAorCWNsZWFuLW5vaW5zdExJQlJBUklFUyBjdGFncyBkaXN0Y2xlYW4gZGlzdGNsZWFuLWNvbXBpbGUgXAorCWRpc3RjbGVhbi1nZW5lcmljIGRpc3RjbGVhbi10YWdzIGRpc3RkaXIgZHZpIGR2aS1hbSBodG1sIFwKKwlodG1sLWFtIGluZm8gaW5mby1hbSBpbnN0YWxsIGluc3RhbGwtYW0gaW5zdGFsbC1kYXRhIFwKKwlpbnN0YWxsLWRhdGEtYW0gaW5zdGFsbC1kdmkgaW5zdGFsbC1kdmktYW0gaW5zdGFsbC1leGVjIFwKKwlpbnN0YWxsLWV4ZWMtYW0gaW5zdGFsbC1odG1sIGluc3RhbGwtaHRtbC1hbSBpbnN0YWxsLWluZm8gXAorCWluc3RhbGwtaW5mby1hbSBpbnN0YWxsLW1hbiBpbnN0YWxsLXBkZiBpbnN0YWxsLXBkZi1hbSBcCisJaW5zdGFsbC1wcyBpbnN0YWxsLXBzLWFtIGluc3RhbGwtc3RyaXAgaW5zdGFsbGNoZWNrIFwKKwlpbnN0YWxsY2hlY2stYW0gaW5zdGFsbGRpcnMgbWFpbnRhaW5lci1jbGVhbiBcCisJbWFpbnRhaW5lci1jbGVhbi1nZW5lcmljIG1vc3RseWNsZWFuIG1vc3RseWNsZWFuLWNvbXBpbGUgXAorCW1vc3RseWNsZWFuLWdlbmVyaWMgcGRmIHBkZi1hbSBwcyBwcy1hbSB0YWdzIHVuaW5zdGFsbCBcCisJdW5pbnN0YWxsLWFtCisKKworIyBUZWxsIHZlcnNpb25zIFszLjU5LDMuNjMpIG9mIEdOVSBtYWtlIHRvIG5vdCBleHBvcnQgYWxsIHZhcmlhYmxlcy4KKyMgT3RoZXJ3aXNlIGEgc3lzdGVtIGxpbWl0IChmb3IgU3lzViBhdCBsZWFzdCkgbWF5IGJlIGV4Y2VlZGVkLgorLk5PRVhQT1JUOgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9saWIvY29tcGF0L2FscGhhc29ydC5jIGIvZHBrZy0xLjE2LjEuMS9saWIvY29tcGF0L2FscGhhc29ydC5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmYzMDdlZjIKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2xpYi9jb21wYXQvYWxwaGFzb3J0LmMKQEAgLTAsMCArMSwzMyBAQAorLyoKKyAqIGxpYmNvbXBhdCAtIHN5c3RlbSBjb21wYXRpYmlsaXR5IGxpYnJhcnkKKyAqCisgKiBDb3B5cmlnaHQgwqkgMTk5NSBJYW4gSmFja3NvbiA8aWFuQGNoaWFyay5ncmVlbmVuZC5vcmcudWs+CisgKgorICogVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisgKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAqIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorICovCisKKyNpbmNsdWRlIDxjb25maWcuaD4KKworI2luY2x1ZGUgPHN0cmluZy5oPgorI2luY2x1ZGUgPGRpcmVudC5oPgorCisjaWZuZGVmIEhBVkVfQUxQSEFTT1JUCitpbnQKK2FscGhhc29ydChjb25zdCB2b2lkICphLCBjb25zdCB2b2lkICpiKQoreworCXJldHVybiBzdHJjbXAoKCooY29uc3Qgc3RydWN0IGRpcmVudCAqKilhKS0+ZF9uYW1lLAorCSAgICAgICAgICAgICAgKCooY29uc3Qgc3RydWN0IGRpcmVudCAqKiliKS0+ZF9uYW1lKTsKKworfQorI2VuZGlmCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2xpYi9jb21wYXQvYXNwcmludGYuYyBiL2Rwa2ctMS4xNi4xLjEvbGliL2NvbXBhdC9hc3ByaW50Zi5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjIyM2Q1MTQKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2xpYi9jb21wYXQvYXNwcmludGYuYwpAQCAtMCwwICsxLDM4IEBACisvKgorICogbGliY29tcGF0IC0gc3lzdGVtIGNvbXBhdGliaWxpdHkgbGlicmFyeQorICoKKyAqIENvcHlyaWdodCDCqSAyMDEwIEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworI2luY2x1ZGUgPGNvbmZpZy5oPgorCisjaW5jbHVkZSA8c3RkYXJnLmg+CisjaW5jbHVkZSA8c3RkaW8uaD4KKworI2lmbmRlZiBIQVZFX0FTUFJJTlRGCitpbnQKK2FzcHJpbnRmKGNoYXIgKipzdHJwLCBjaGFyIGNvbnN0ICpmbXQsIC4uLikKK3sKKwl2YV9saXN0IGFyZ3M7CisJaW50IG47CisKKwl2YV9zdGFydChhcmdzLCBmbXQpOworCW4gPSB2YXNwcmludGYoc3RycCwgZm10LCBhcmdzKTsKKwl2YV9lbmQoYXJncyk7CisKKwlyZXR1cm4gbjsKK30KKyNlbmRpZgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9saWIvY29tcGF0L2NvbXBhdC5oIGIvZHBrZy0xLjE2LjEuMS9saWIvY29tcGF0L2NvbXBhdC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmRhZjljYzcKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2xpYi9jb21wYXQvY29tcGF0LmgKQEAgLTAsMCArMSw5NCBAQAorLyoKKyAqIGxpYmNvbXBhdCAtIHN5c3RlbSBjb21wYXRpYmlsaXR5IGxpYnJhcnkKKyAqIGNvbXBhdC5oIC0gc3lzdGVtIGNvbXBhdGliaWxpdHkgZGVjbGFyYXRpb25zCisgKgorICogQ29weXJpZ2h0IMKpIDE5OTUgSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuZ3JlZW5lbmQub3JnLnVrPgorICogQ29weXJpZ2h0IMKpIDIwMDgsIDIwMDkgR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaWZuZGVmIENPTVBBVF9ICisjZGVmaW5lIENPTVBBVF9ICisKKyNpZmRlZiBfX2NwbHVzcGx1cworZXh0ZXJuICJDIiB7CisjZW5kaWYKKworI2lmbmRlZiBIQVZFX09GRlNFVE9GCisjZGVmaW5lIG9mZnNldG9mKHN0LCBtKSAoKHNpemVfdCkmKChzdCAqKU5VTEwpLT5tKQorI2VuZGlmCisKKy8qCisgKiBEZWZpbmUgV0NPUkVEVU1QIGlmIHdlIGRvbid0IGhhdmUgaXQgYWxyZWFkeSwgY29yZWR1bXBzIHdvbid0IGJlCisgKiBkZXRlY3RlZCwgdGhvdWdoLgorICovCisjaWZuZGVmIEhBVkVfV0NPUkVEVU1QCisjZGVmaW5lIFdDT1JFRFVNUCh4KSAwCisjZW5kaWYKKworI2lmbmRlZiBIQVZFX1NUUlRPVUwKKyNkZWZpbmUgc3RydG91bCBzdHJ0b2wKKyNlbmRpZgorCisjaWZuZGVmIEhBVkVfVkFfQ09QWQorI2luY2x1ZGUgPHN0cmluZy5oPgorI2RlZmluZSB2YV9jb3B5KGRlc3QsIHNyYykgbWVtY3B5KCYoZGVzdCksICYoc3JjKSwgc2l6ZW9mKHZhX2xpc3QpKQorI2VuZGlmCisKKyNpbmNsdWRlIDxzdHJubGVuLmg+CisKKyNpZm5kZWYgSEFWRV9DOTlfU05QUklOVEYKKyNpbmNsdWRlIDxzdGRkZWYuaD4KKyNpbmNsdWRlIDxzdGRhcmcuaD4KKworaW50IHNucHJpbnRmKGNoYXIgKnN0ciwgc2l6ZV90IG4sIGNoYXIgY29uc3QgKmZtdCwgLi4uKTsKK2ludCB2c25wcmludGYoY2hhciAqYnVmLCBzaXplX3QgbWF4c2l6ZSwgY29uc3QgY2hhciAqZm10LCB2YV9saXN0IGFyZ3MpOworI2VuZGlmCisKKyNpZm5kZWYgSEFWRV9BU1BSSU5URgorI2luY2x1ZGUgPHN0ZGFyZy5oPgorCitpbnQgYXNwcmludGYoY2hhciAqc3RyLCBjaGFyIGNvbnN0ICpmbXQsIC4uLik7CitpbnQgdmFzcHJpbnRmKGNoYXIgKnN0ciwgY29uc3QgY2hhciAqZm10LCB2YV9saXN0IGFyZ3MpOworI2VuZGlmCisKKyNpZm5kZWYgSEFWRV9TVFJFUlJPUgorY29uc3QgY2hhciAqc3RyZXJyb3IoaW50KTsKKyNlbmRpZgorCisjaWZuZGVmIEhBVkVfU1RSU0lHTkFMCitjb25zdCBjaGFyICpzdHJzaWduYWwoaW50KTsKKyNlbmRpZgorCisjaWZuZGVmIEhBVkVfU0NBTkRJUgorc3RydWN0IGRpcmVudDsKK2ludCBzY2FuZGlyKGNvbnN0IGNoYXIgKmRpciwgc3RydWN0IGRpcmVudCAqKipuYW1lbGlzdCwKKyAgICAgICAgICAgIGludCAoKmZpbHRlcikoY29uc3Qgc3RydWN0IGRpcmVudCAqKSwKKyAgICAgICAgICAgIGludCAoKmNtcCkoY29uc3Qgdm9pZCAqLCBjb25zdCB2b2lkICopKTsKKyNlbmRpZgorCisjaWZuZGVmIEhBVkVfQUxQSEFTT1JUCitpbnQgYWxwaGFzb3J0KGNvbnN0IHZvaWQgKmEsIGNvbnN0IHZvaWQgKmIpOworI2VuZGlmCisKKyNpZm5kZWYgSEFWRV9VTlNFVEVOVgoraW50IHVuc2V0ZW52KGNvbnN0IGNoYXIgKngpOworI2VuZGlmCisKKyNpZmRlZiBfX2NwbHVzcGx1cworfQorI2VuZGlmCisKKyNlbmRpZiAvKiBDT01QQVRfSCAqLwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9saWIvY29tcGF0L2VtcHR5LmMgYi9kcGtnLTEuMTYuMS4xL2xpYi9jb21wYXQvZW1wdHkuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lZjE3MmNlCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9saWIvY29tcGF0L2VtcHR5LmMKQEAgLTAsMCArMSBAQAorLyogU29tZSBpbXBsZW1lbnRhdGlvbnMgb2YgYXIgY2Fubm90IGNyZWF0ZSBhbiBlbXB0eSBhcmNoaXZlLiAqLwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9saWIvY29tcGF0L2dldG9wdC5jIGIvZHBrZy0xLjE2LjEuMS9saWIvY29tcGF0L2dldG9wdC5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjBhM2E0N2UKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2xpYi9jb21wYXQvZ2V0b3B0LmMKQEAgLTAsMCArMSwxMDU2IEBACisvKiBHZXRvcHQgZm9yIEdOVS4KKyAgIE5PVEU6IGdldG9wdCBpcyBub3cgcGFydCBvZiB0aGUgQyBsaWJyYXJ5LCBzbyBpZiB5b3UgZG9uJ3Qga25vdyB3aGF0CisgICAiS2VlcCB0aGlzIGZpbGUgbmFtZS1zcGFjZSBjbGVhbiIgbWVhbnMsIHRhbGsgdG8gcm9sYW5kQGdudS5haS5taXQuZWR1CisgICBiZWZvcmUgY2hhbmdpbmcgaXQhCisKKyAgIENvcHlyaWdodCAoQykgMTk4NywgODgsIDg5LCA5MCwgOTEsIDkyLCA5MywgOTQsIDk1LCA5NiwgOTcKKyAgIAlGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KKworICAgdGhlIEMgbGlicmFyeSwgaG93ZXZlci4gIFRoZSBtYXN0ZXIgc291cmNlIGxpdmVzIGluIC9nZC9nbnUvbGliLgorCitOT1RFOiBUaGUgY2Fub25pY2FsIHNvdXJjZSBvZiB0aGlzIGZpbGUgaXMgbWFpbnRhaW5lZCB3aXRoIHRoZSBHTlUgQyBMaWJyYXJ5LgorQnVncyBjYW4gYmUgcmVwb3J0ZWQgdG8gYnVnLWdsaWJjQHByZXAuYWkubWl0LmVkdS4KKworVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQKK3VuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZQorRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyLCBvciAoYXQgeW91ciBvcHRpb24pIGFueQorbGF0ZXIgdmVyc2lvbi4KKworVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCitidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKworWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKK2Fsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCitGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UgLSBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNywKK1VTQS4gICovCisMCisvKiBUaGlzIHRlbGxzIEFscGhhIE9TRi8xIG5vdCB0byBkZWZpbmUgYSBnZXRvcHQgcHJvdG90eXBlIGluIDxzdGRpby5oPi4KKyAgIERpdHRvIGZvciBBSVggMy4yIGFuZCA8c3RkbGliLmg+LiAgKi8KKyNpZm5kZWYgX05PX1BST1RPCisjZGVmaW5lIF9OT19QUk9UTworI2VuZGlmCisKKyNpZmRlZiBIQVZFX0NPTkZJR19ICisjaW5jbHVkZSA8Y29uZmlnLmg+CisjZW5kaWYKKworI2lmICFkZWZpbmVkIChfX1NURENfXykgfHwgIV9fU1REQ19fCisvKiBUaGlzIGlzIGEgc2VwYXJhdGUgY29uZGl0aW9uYWwgc2luY2Ugc29tZSBzdGRjIHN5c3RlbXMKKyAgIHJlamVjdCBgZGVmaW5lZCAoY29uc3QpJy4gICovCisjaWZuZGVmIGNvbnN0CisjZGVmaW5lIGNvbnN0CisjZW5kaWYKKyNlbmRpZgorCisjaW5jbHVkZSA8c3RkaW8uaD4KKworLyogQ29tbWVudCBvdXQgYWxsIHRoaXMgY29kZSBpZiB3ZSBhcmUgdXNpbmcgdGhlIEdOVSBDIExpYnJhcnksIGFuZCBhcmUgbm90CisgICBhY3R1YWxseSBjb21waWxpbmcgdGhlIGxpYnJhcnkgaXRzZWxmLiAgVGhpcyBjb2RlIGlzIHBhcnQgb2YgdGhlIEdOVSBDCisgICBMaWJyYXJ5LCBidXQgYWxzbyBpbmNsdWRlZCBpbiBtYW55IG90aGVyIEdOVSBkaXN0cmlidXRpb25zLiAgQ29tcGlsaW5nCisgICBhbmQgbGlua2luZyBpbiB0aGlzIGNvZGUgaXMgYSB3YXN0ZSB3aGVuIHVzaW5nIHRoZSBHTlUgQyBsaWJyYXJ5CisgICAoZXNwZWNpYWxseSBpZiBpdCBpcyBhIHNoYXJlZCBsaWJyYXJ5KS4gIFJhdGhlciB0aGFuIGhhdmluZyBldmVyeSBHTlUKKyAgIHByb2dyYW0gdW5kZXJzdGFuZCBgY29uZmlndXJlIC0td2l0aC1nbnUtbGliYycgYW5kIG9taXQgdGhlIG9iamVjdCBmaWxlcywKKyAgIGl0IGlzIHNpbXBsZXIgdG8ganVzdCBkbyB0aGlzIGluIHRoZSBzb3VyY2UgZm9yIGVhY2ggc3VjaCBmaWxlLiAgKi8KKworI2RlZmluZSBHRVRPUFRfSU5URVJGQUNFX1ZFUlNJT04gMgorI2lmICFkZWZpbmVkIChfTElCQykgJiYgZGVmaW5lZCAoX19HTElCQ19fKSAmJiBfX0dMSUJDX18gPj0gMgorI2luY2x1ZGUgPGdudS12ZXJzaW9ucy5oPgorI2lmIF9HTlVfR0VUT1BUX0lOVEVSRkFDRV9WRVJTSU9OID09IEdFVE9QVF9JTlRFUkZBQ0VfVkVSU0lPTgorI2RlZmluZSBFTElERV9DT0RFCisjZW5kaWYKKyNlbmRpZgorCisjaWZuZGVmIEVMSURFX0NPREUKKworCisvKiBUaGlzIG5lZWRzIHRvIGNvbWUgYWZ0ZXIgc29tZSBsaWJyYXJ5ICNpbmNsdWRlCisgICB0byBnZXQgX19HTlVfTElCUkFSWV9fIGRlZmluZWQuICAqLworI2lmZGVmCV9fR05VX0xJQlJBUllfXworLyogRG9uJ3QgaW5jbHVkZSBzdGRsaWIuaCBmb3Igbm9uLUdOVSBDIGxpYnJhcmllcyBiZWNhdXNlIHNvbWUgb2YgdGhlbQorICAgY29udGFpbiBjb25mbGljdGluZyBwcm90b3R5cGVzIGZvciBnZXRvcHQuICAqLworI2luY2x1ZGUgPHN0ZGxpYi5oPgorI2luY2x1ZGUgPHVuaXN0ZC5oPgorI2VuZGlmCS8qIEdOVSBDIGxpYnJhcnkuICAqLworCisjaWZkZWYgVk1TCisjaW5jbHVkZSA8dW5peGxpYi5oPgorI2lmIEhBVkVfU1RSSU5HX0ggLSAwCisjaW5jbHVkZSA8c3RyaW5nLmg+CisjZW5kaWYKKyNlbmRpZgorCisjaWYgZGVmaW5lZCAoV0lOMzIpICYmICFkZWZpbmVkIChfX0NZR1dJTjMyX18pCisvKiBJdCdzIG5vdCBVbml4LCByZWFsbHkuICBTZWU/ICBDYXBpdGFsIGxldHRlcnMuICAqLworI2luY2x1ZGUgPHdpbmRvd3MuaD4KKyNkZWZpbmUgZ2V0cGlkKCkgR2V0Q3VycmVudFByb2Nlc3NJZCgpCisjZW5kaWYKKworI2lmbmRlZiBfCisvKiBUaGlzIGlzIGZvciBvdGhlciBHTlUgZGlzdHJpYnV0aW9ucyB3aXRoIGludGVybmF0aW9uYWxpemVkIG1lc3NhZ2VzLgorICAgV2hlbiBjb21waWxpbmcgbGliYywgdGhlIF8gbWFjcm8gaXMgcHJlZGVmaW5lZC4gICovCisjaWZkZWYgSEFWRV9MSUJJTlRMX0gKKyMgaW5jbHVkZSA8bGliaW50bC5oPgorIyBkZWZpbmUgXyhtc2dpZCkJZ2V0dGV4dCAobXNnaWQpCisjZWxzZQorIyBkZWZpbmUgXyhtc2dpZCkJKG1zZ2lkKQorI2VuZGlmCisjZW5kaWYKKworLyogVGhpcyB2ZXJzaW9uIG9mIGBnZXRvcHQnIGFwcGVhcnMgdG8gdGhlIGNhbGxlciBsaWtlIHN0YW5kYXJkIFVuaXggYGdldG9wdCcKKyAgIGJ1dCBpdCBiZWhhdmVzIGRpZmZlcmVudGx5IGZvciB0aGUgdXNlciwgc2luY2UgaXQgYWxsb3dzIHRoZSB1c2VyCisgICB0byBpbnRlcnNwZXJzZSB0aGUgb3B0aW9ucyB3aXRoIHRoZSBvdGhlciBhcmd1bWVudHMuCisKKyAgIEFzIGBnZXRvcHQnIHdvcmtzLCBpdCBwZXJtdXRlcyB0aGUgZWxlbWVudHMgb2YgQVJHViBzbyB0aGF0LAorICAgd2hlbiBpdCBpcyBkb25lLCBhbGwgdGhlIG9wdGlvbnMgcHJlY2VkZSBldmVyeXRoaW5nIGVsc2UuICBUaHVzCisgICBhbGwgYXBwbGljYXRpb24gcHJvZ3JhbXMgYXJlIGV4dGVuZGVkIHRvIGhhbmRsZSBmbGV4aWJsZSBhcmd1bWVudCBvcmRlci4KKworICAgU2V0dGluZyB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGUgUE9TSVhMWV9DT1JSRUNUIGRpc2FibGVzIHBlcm11dGF0aW9uLgorICAgVGhlbiB0aGUgYmVoYXZpb3IgaXMgY29tcGxldGVseSBzdGFuZGFyZC4KKworICAgR05VIGFwcGxpY2F0aW9uIHByb2dyYW1zIGNhbiB1c2UgYSB0aGlyZCBhbHRlcm5hdGl2ZSBtb2RlIGluIHdoaWNoCisgICB0aGV5IGNhbiBkaXN0aW5ndWlzaCB0aGUgcmVsYXRpdmUgb3JkZXIgb2Ygb3B0aW9ucyBhbmQgb3RoZXIgYXJndW1lbnRzLiAgKi8KKworI2luY2x1ZGUgImdldG9wdC5oIgorCisvKiBGb3IgY29tbXVuaWNhdGlvbiBmcm9tIGBnZXRvcHQnIHRvIHRoZSBjYWxsZXIuCisgICBXaGVuIGBnZXRvcHQnIGZpbmRzIGFuIG9wdGlvbiB0aGF0IHRha2VzIGFuIGFyZ3VtZW50LAorICAgdGhlIGFyZ3VtZW50IHZhbHVlIGlzIHJldHVybmVkIGhlcmUuCisgICBBbHNvLCB3aGVuIGBvcmRlcmluZycgaXMgUkVUVVJOX0lOX09SREVSLAorICAgZWFjaCBub24tb3B0aW9uIEFSR1YtZWxlbWVudCBpcyByZXR1cm5lZCBoZXJlLiAgKi8KKworY2hhciAqb3B0YXJnID0gTlVMTDsKKworLyogSW5kZXggaW4gQVJHViBvZiB0aGUgbmV4dCBlbGVtZW50IHRvIGJlIHNjYW5uZWQuCisgICBUaGlzIGlzIHVzZWQgZm9yIGNvbW11bmljYXRpb24gdG8gYW5kIGZyb20gdGhlIGNhbGxlcgorICAgYW5kIGZvciBjb21tdW5pY2F0aW9uIGJldHdlZW4gc3VjY2Vzc2l2ZSBjYWxscyB0byBgZ2V0b3B0Jy4KKworICAgT24gZW50cnkgdG8gYGdldG9wdCcsIHplcm8gbWVhbnMgdGhpcyBpcyB0aGUgZmlyc3QgY2FsbDsgaW5pdGlhbGl6ZS4KKworICAgV2hlbiBgZ2V0b3B0JyByZXR1cm5zIC0xLCB0aGlzIGlzIHRoZSBpbmRleCBvZiB0aGUgZmlyc3Qgb2YgdGhlCisgICBub24tb3B0aW9uIGVsZW1lbnRzIHRoYXQgdGhlIGNhbGxlciBzaG91bGQgaXRzZWxmIHNjYW4uCisKKyAgIE90aGVyd2lzZSwgYG9wdGluZCcgY29tbXVuaWNhdGVzIGZyb20gb25lIGNhbGwgdG8gdGhlIG5leHQKKyAgIGhvdyBtdWNoIG9mIEFSR1YgaGFzIGJlZW4gc2Nhbm5lZCBzbyBmYXIuICAqLworCisvKiAxMDAzLjIgc2F5cyB0aGlzIG11c3QgYmUgMSBiZWZvcmUgYW55IGNhbGwuICAqLworaW50IG9wdGluZCA9IDE7CisKKy8qIEZvcm1lcmx5LCBpbml0aWFsaXphdGlvbiBvZiBnZXRvcHQgZGVwZW5kZWQgb24gb3B0aW5kPT0wLCB3aGljaAorICAgY2F1c2VzIHByb2JsZW1zIHdpdGggcmUtY2FsbGluZyBnZXRvcHQgYXMgcHJvZ3JhbXMgZ2VuZXJhbGx5IGRvbid0CisgICBrbm93IHRoYXQuICovCisKK2ludCBfX2dldG9wdF9pbml0aWFsaXplZCA9IDA7CisKKy8qIFRoZSBuZXh0IGNoYXIgdG8gYmUgc2Nhbm5lZCBpbiB0aGUgb3B0aW9uLWVsZW1lbnQKKyAgIGluIHdoaWNoIHRoZSBsYXN0IG9wdGlvbiBjaGFyYWN0ZXIgd2UgcmV0dXJuZWQgd2FzIGZvdW5kLgorICAgVGhpcyBhbGxvd3MgdXMgdG8gcGljayB1cCB0aGUgc2NhbiB3aGVyZSB3ZSBsZWZ0IG9mZi4KKworICAgSWYgdGhpcyBpcyB6ZXJvLCBvciBhIG51bGwgc3RyaW5nLCBpdCBtZWFucyByZXN1bWUgdGhlIHNjYW4KKyAgIGJ5IGFkdmFuY2luZyB0byB0aGUgbmV4dCBBUkdWLWVsZW1lbnQuICAqLworCitzdGF0aWMgY2hhciAqbmV4dGNoYXI7CisKKy8qIENhbGxlcnMgc3RvcmUgemVybyBoZXJlIHRvIGluaGliaXQgdGhlIGVycm9yIG1lc3NhZ2UKKyAgIGZvciB1bnJlY29nbml6ZWQgb3B0aW9ucy4gICovCisKK2ludCBvcHRlcnIgPSAxOworCisvKiBTZXQgdG8gYW4gb3B0aW9uIGNoYXJhY3RlciB3aGljaCB3YXMgdW5yZWNvZ25pemVkLgorICAgVGhpcyBtdXN0IGJlIGluaXRpYWxpemVkIG9uIHNvbWUgc3lzdGVtcyB0byBhdm9pZCBsaW5raW5nIGluIHRoZQorICAgc3lzdGVtJ3Mgb3duIGdldG9wdCBpbXBsZW1lbnRhdGlvbi4gICovCisKK2ludCBvcHRvcHQgPSAnPyc7CisKKy8qIERlc2NyaWJlIGhvdyB0byBkZWFsIHdpdGggb3B0aW9ucyB0aGF0IGZvbGxvdyBub24tb3B0aW9uIEFSR1YtZWxlbWVudHMuCisKKyAgIElmIHRoZSBjYWxsZXIgZGlkIG5vdCBzcGVjaWZ5IGFueXRoaW5nLAorICAgdGhlIGRlZmF1bHQgaXMgUkVRVUlSRV9PUkRFUiBpZiB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGUKKyAgIFBPU0lYTFlfQ09SUkVDVCBpcyBkZWZpbmVkLCBQRVJNVVRFIG90aGVyd2lzZS4KKworICAgUkVRVUlSRV9PUkRFUiBtZWFucyBkb24ndCByZWNvZ25pemUgdGhlbSBhcyBvcHRpb25zOworICAgc3RvcCBvcHRpb24gcHJvY2Vzc2luZyB3aGVuIHRoZSBmaXJzdCBub24tb3B0aW9uIGlzIHNlZW4uCisgICBUaGlzIGlzIHdoYXQgVW5peCBkb2VzLgorICAgVGhpcyBtb2RlIG9mIG9wZXJhdGlvbiBpcyBzZWxlY3RlZCBieSBlaXRoZXIgc2V0dGluZyB0aGUgZW52aXJvbm1lbnQKKyAgIHZhcmlhYmxlIFBPU0lYTFlfQ09SUkVDVCwgb3IgdXNpbmcgYCsnIGFzIHRoZSBmaXJzdCBjaGFyYWN0ZXIKKyAgIG9mIHRoZSBsaXN0IG9mIG9wdGlvbiBjaGFyYWN0ZXJzLgorCisgICBQRVJNVVRFIGlzIHRoZSBkZWZhdWx0LiAgV2UgcGVybXV0ZSB0aGUgY29udGVudHMgb2YgQVJHViBhcyB3ZSBzY2FuLAorICAgc28gdGhhdCBldmVudHVhbGx5IGFsbCB0aGUgbm9uLW9wdGlvbnMgYXJlIGF0IHRoZSBlbmQuICBUaGlzIGFsbG93cyBvcHRpb25zCisgICB0byBiZSBnaXZlbiBpbiBhbnkgb3JkZXIsIGV2ZW4gd2l0aCBwcm9ncmFtcyB0aGF0IHdlcmUgbm90IHdyaXR0ZW4gdG8KKyAgIGV4cGVjdCB0aGlzLgorCisgICBSRVRVUk5fSU5fT1JERVIgaXMgYW4gb3B0aW9uIGF2YWlsYWJsZSB0byBwcm9ncmFtcyB0aGF0IHdlcmUgd3JpdHRlbgorICAgdG8gZXhwZWN0IG9wdGlvbnMgYW5kIG90aGVyIEFSR1YtZWxlbWVudHMgaW4gYW55IG9yZGVyIGFuZCB0aGF0IGNhcmUgYWJvdXQKKyAgIHRoZSBvcmRlcmluZyBvZiB0aGUgdHdvLiAgV2UgZGVzY3JpYmUgZWFjaCBub24tb3B0aW9uIEFSR1YtZWxlbWVudAorICAgYXMgaWYgaXQgd2VyZSB0aGUgYXJndW1lbnQgb2YgYW4gb3B0aW9uIHdpdGggY2hhcmFjdGVyIGNvZGUgMS4KKyAgIFVzaW5nIGAtJyBhcyB0aGUgZmlyc3QgY2hhcmFjdGVyIG9mIHRoZSBsaXN0IG9mIG9wdGlvbiBjaGFyYWN0ZXJzCisgICBzZWxlY3RzIHRoaXMgbW9kZSBvZiBvcGVyYXRpb24uCisKKyAgIFRoZSBzcGVjaWFsIGFyZ3VtZW50IGAtLScgZm9yY2VzIGFuIGVuZCBvZiBvcHRpb24tc2Nhbm5pbmcgcmVnYXJkbGVzcworICAgb2YgdGhlIHZhbHVlIG9mIGBvcmRlcmluZycuICBJbiB0aGUgY2FzZSBvZiBSRVRVUk5fSU5fT1JERVIsIG9ubHkKKyAgIGAtLScgY2FuIGNhdXNlIGBnZXRvcHQnIHRvIHJldHVybiAtMSB3aXRoIGBvcHRpbmQnICE9IEFSR0MuICAqLworCitzdGF0aWMgZW51bQoreworICBSRVFVSVJFX09SREVSLCBQRVJNVVRFLCBSRVRVUk5fSU5fT1JERVIKK30gb3JkZXJpbmc7CisKKy8qIFZhbHVlIG9mIFBPU0lYTFlfQ09SUkVDVCBlbnZpcm9ubWVudCB2YXJpYWJsZS4gICovCitzdGF0aWMgY2hhciAqcG9zaXhseV9jb3JyZWN0OworDAorI2lmZGVmCV9fR05VX0xJQlJBUllfXworLyogV2Ugd2FudCB0byBhdm9pZCBpbmNsdXNpb24gb2Ygc3RyaW5nLmggd2l0aCBub24tR05VIGxpYnJhcmllcworICAgYmVjYXVzZSB0aGVyZSBhcmUgbWFueSB3YXlzIGl0IGNhbiBjYXVzZSB0cm91YmxlLgorICAgT24gc29tZSBzeXN0ZW1zLCBpdCBjb250YWlucyBzcGVjaWFsIG1hZ2ljIG1hY3JvcyB0aGF0IGRvbid0IHdvcmsKKyAgIGluIEdDQy4gICovCisjaW5jbHVkZSA8c3RyaW5nLmg+CisjZGVmaW5lCW15X2luZGV4CXN0cmNocgorI2Vsc2UKKworLyogQXZvaWQgZGVwZW5kaW5nIG9uIGxpYnJhcnkgZnVuY3Rpb25zIG9yIGZpbGVzCisgICB3aG9zZSBuYW1lcyBhcmUgaW5jb25zaXN0ZW50LiAgKi8KKworY2hhciAqZ2V0ZW52ICgpOworCitzdGF0aWMgY2hhciAqCitteV9pbmRleCAoc3RyLCBjaHIpCisgICAgIGNvbnN0IGNoYXIgKnN0cjsKKyAgICAgaW50IGNocjsKK3sKKyAgd2hpbGUgKCpzdHIpCisgICAgeworICAgICAgaWYgKCpzdHIgPT0gY2hyKQorCXJldHVybiAoY2hhciAqKSBzdHI7CisgICAgICBzdHIrKzsKKyAgICB9CisgIHJldHVybiAwOworfQorCisvKiBJZiB1c2luZyBHQ0MsIHdlIGNhbiBzYWZlbHkgZGVjbGFyZSBzdHJsZW4gdGhpcyB3YXkuCisgICBJZiBub3QgdXNpbmcgR0NDLCBpdCBpcyBvayBub3QgdG8gZGVjbGFyZSBpdC4gICovCisjaWZkZWYgX19HTlVDX18KKy8qIE5vdGUgdGhhdCBNb3Rvcm9sYSBEZWx0YSA2OGsgUjNWNyBjb21lcyB3aXRoIEdDQyBidXQgbm90IHN0ZGRlZi5oLgorICAgVGhhdCB3YXMgcmVsZXZhbnQgdG8gY29kZSB0aGF0IHdhcyBoZXJlIGJlZm9yZS4gICovCisjaWYgIWRlZmluZWQgKF9fU1REQ19fKSB8fCAhX19TVERDX18KKy8qIGdjYyB3aXRoIC10cmFkaXRpb25hbCBkZWNsYXJlcyB0aGUgYnVpbHQtaW4gc3RybGVuIHRvIHJldHVybiBpbnQsCisgICBhbmQgaGFzIGRvbmUgc28gYXQgbGVhc3Qgc2luY2UgdmVyc2lvbiAyLjQuNS4gLS0gcm1zLiAgKi8KK2V4dGVybiBpbnQgc3RybGVuIChjb25zdCBjaGFyICopOworI2VuZGlmIC8qIG5vdCBfX1NURENfXyAqLworI2VuZGlmIC8qIF9fR05VQ19fICovCisKKyNlbmRpZiAvKiBub3QgX19HTlVfTElCUkFSWV9fICovCisMCisvKiBIYW5kbGUgcGVybXV0YXRpb24gb2YgYXJndW1lbnRzLiAgKi8KKworLyogRGVzY3JpYmUgdGhlIHBhcnQgb2YgQVJHViB0aGF0IGNvbnRhaW5zIG5vbi1vcHRpb25zIHRoYXQgaGF2ZQorICAgYmVlbiBza2lwcGVkLiAgYGZpcnN0X25vbm9wdCcgaXMgdGhlIGluZGV4IGluIEFSR1Ygb2YgdGhlIGZpcnN0IG9mIHRoZW07CisgICBgbGFzdF9ub25vcHQnIGlzIHRoZSBpbmRleCBhZnRlciB0aGUgbGFzdCBvZiB0aGVtLiAgKi8KKworc3RhdGljIGludCBmaXJzdF9ub25vcHQ7CitzdGF0aWMgaW50IGxhc3Rfbm9ub3B0OworCisjaWZkZWYgX0xJQkMKKy8qIEJhc2ggMi4wIGdpdmVzIHVzIGFuIGVudmlyb25tZW50IHZhcmlhYmxlIGNvbnRhaW5pbmcgZmxhZ3MKKyAgIGluZGljYXRpbmcgQVJHViBlbGVtZW50cyB0aGF0IHNob3VsZCBub3QgYmUgY29uc2lkZXJlZCBhcmd1bWVudHMuICAqLworCisvKiBEZWZpbmVkIGluIGdldG9wdF9pbml0LmMgICovCitleHRlcm4gY2hhciAqX19nZXRvcHRfbm9ub3B0aW9uX2ZsYWdzOworCitzdGF0aWMgaW50IG5vbm9wdGlvbl9mbGFnc19tYXhfbGVuOworc3RhdGljIGludCBub25vcHRpb25fZmxhZ3NfbGVuOworCitzdGF0aWMgaW50IG9yaWdpbmFsX2FyZ2M7CitzdGF0aWMgY2hhciAqY29uc3QgKm9yaWdpbmFsX2FyZ3Y7CisKK2V4dGVybiBwaWRfdCBfX2xpYmNfcGlkOworCisvKiBNYWtlIHN1cmUgdGhlIGVudmlyb25tZW50IHZhcmlhYmxlIGJhc2ggMi4wIHB1dHMgaW4gdGhlIGVudmlyb25tZW50CisgICBpcyB2YWxpZCBmb3IgdGhlIGdldG9wdCBjYWxsIHdlIG11c3QgbWFrZSBzdXJlIHRoYXQgdGhlIEFSR1YgcGFzc2VkCisgICB0byBnZXRvcHQgaXMgdGhhdCBvbmUgcGFzc2VkIHRvIHRoZSBwcm9jZXNzLiAgKi8KK3N0YXRpYyB2b2lkCitzdG9yZV9hcmdzX2FuZF9lbnYgKGludCBhcmdjLCBjaGFyICpjb25zdCAqYXJndikKK3sKKyAgLyogWFhYIFRoaXMgaXMgbm8gZ29vZCBzb2x1dGlvbi4gIFdlIHNob3VsZCByYXRoZXIgY29weSB0aGUgYXJncyBzbworICAgICB0aGF0IHdlIGNhbiBjb21wYXJlIHRoZW0gbGF0ZXIuICBCdXQgd2UgbXVzdCBub3QgdXNlIG1hbGxvYygzKS4gICovCisgIG9yaWdpbmFsX2FyZ2MgPSBhcmdjOworICBvcmlnaW5hbF9hcmd2ID0gYXJndjsKK30KK3RleHRfc2V0X2VsZW1lbnQgKF9fbGliY19zdWJpbml0LCBzdG9yZV9hcmdzX2FuZF9lbnYpOworCisjIGRlZmluZSBTV0FQX0ZMQUdTKGNoMSwgY2gyKSBcCisgIGlmIChub25vcHRpb25fZmxhZ3NfbGVuID4gMCkJCQkJCQkgICAgICBcCisgICAgewkJCQkJCQkJCSAgICAgIFwKKyAgICAgIGNoYXIgX190bXAgPSBfX2dldG9wdF9ub25vcHRpb25fZmxhZ3NbY2gxXTsJCQkgICAgICBcCisgICAgICBfX2dldG9wdF9ub25vcHRpb25fZmxhZ3NbY2gxXSA9IF9fZ2V0b3B0X25vbm9wdGlvbl9mbGFnc1tjaDJdOwkgICAgICBcCisgICAgICBfX2dldG9wdF9ub25vcHRpb25fZmxhZ3NbY2gyXSA9IF9fdG1wOwkJCQkgICAgICBcCisgICAgfQorI2Vsc2UJLyogIV9MSUJDICovCisjIGRlZmluZSBTV0FQX0ZMQUdTKGNoMSwgY2gyKQorI2VuZGlmCS8qIF9MSUJDICovCisKKy8qIEV4Y2hhbmdlIHR3byBhZGphY2VudCBzdWJzZXF1ZW5jZXMgb2YgQVJHVi4KKyAgIE9uZSBzdWJzZXF1ZW5jZSBpcyBlbGVtZW50cyBbZmlyc3Rfbm9ub3B0LGxhc3Rfbm9ub3B0KQorICAgd2hpY2ggY29udGFpbnMgYWxsIHRoZSBub24tb3B0aW9ucyB0aGF0IGhhdmUgYmVlbiBza2lwcGVkIHNvIGZhci4KKyAgIFRoZSBvdGhlciBpcyBlbGVtZW50cyBbbGFzdF9ub25vcHQsb3B0aW5kKSwgd2hpY2ggY29udGFpbnMgYWxsCisgICB0aGUgb3B0aW9ucyBwcm9jZXNzZWQgc2luY2UgdGhvc2Ugbm9uLW9wdGlvbnMgd2VyZSBza2lwcGVkLgorCisgICBgZmlyc3Rfbm9ub3B0JyBhbmQgYGxhc3Rfbm9ub3B0JyBhcmUgcmVsb2NhdGVkIHNvIHRoYXQgdGhleSBkZXNjcmliZQorICAgdGhlIG5ldyBpbmRpY2VzIG9mIHRoZSBub24tb3B0aW9ucyBpbiBBUkdWIGFmdGVyIHRoZXkgYXJlIG1vdmVkLiAgKi8KKworI2lmIGRlZmluZWQgKF9fU1REQ19fKSAmJiBfX1NURENfXworc3RhdGljIHZvaWQgZXhjaGFuZ2UgKGNoYXIgKiopOworI2VuZGlmCisKK3N0YXRpYyB2b2lkCitleGNoYW5nZSAoYXJndikKKyAgICAgY2hhciAqKmFyZ3Y7Cit7CisgIGludCBib3R0b20gPSBmaXJzdF9ub25vcHQ7CisgIGludCBtaWRkbGUgPSBsYXN0X25vbm9wdDsKKyAgaW50IHRvcCA9IG9wdGluZDsKKyAgY2hhciAqdGVtOworCisgIC8qIEV4Y2hhbmdlIHRoZSBzaG9ydGVyIHNlZ21lbnQgd2l0aCB0aGUgZmFyIGVuZCBvZiB0aGUgbG9uZ2VyIHNlZ21lbnQuCisgICAgIFRoYXQgcHV0cyB0aGUgc2hvcnRlciBzZWdtZW50IGludG8gdGhlIHJpZ2h0IHBsYWNlLgorICAgICBJdCBsZWF2ZXMgdGhlIGxvbmdlciBzZWdtZW50IGluIHRoZSByaWdodCBwbGFjZSBvdmVyYWxsLAorICAgICBidXQgaXQgY29uc2lzdHMgb2YgdHdvIHBhcnRzIHRoYXQgbmVlZCB0byBiZSBzd2FwcGVkIG5leHQuICAqLworCisjaWZkZWYgX0xJQkMKKyAgLyogRmlyc3QgbWFrZSBzdXJlIHRoZSBoYW5kbGluZyBvZiB0aGUgYF9fZ2V0b3B0X25vbm9wdGlvbl9mbGFncycKKyAgICAgc3RyaW5nIGNhbiB3b3JrIG5vcm1hbGx5LiAgT3VyIHRvcCBhcmd1bWVudCBtdXN0IGJlIGluIHRoZSByYW5nZQorICAgICBvZiB0aGUgc3RyaW5nLiAgKi8KKyAgaWYgKG5vbm9wdGlvbl9mbGFnc19sZW4gPiAwICYmIHRvcCA+PSBub25vcHRpb25fZmxhZ3NfbWF4X2xlbikKKyAgICB7CisgICAgICAvKiBXZSBtdXN0IGV4dGVuZCB0aGUgYXJyYXkuICBUaGUgdXNlciBwbGF5cyBnYW1lcyB3aXRoIHVzIGFuZAorCSBwcmVzZW50cyBuZXcgYXJndW1lbnRzLiAgKi8KKyAgICAgIGNoYXIgKm5ld19zdHIgPSBtYWxsb2MgKHRvcCArIDEpOworICAgICAgaWYgKG5ld19zdHIgPT0gTlVMTCkKKwlub25vcHRpb25fZmxhZ3NfbGVuID0gbm9ub3B0aW9uX2ZsYWdzX21heF9sZW4gPSAwOworICAgICAgZWxzZQorCXsKKwkgIG1lbWNweSAobmV3X3N0ciwgX19nZXRvcHRfbm9ub3B0aW9uX2ZsYWdzLCBub25vcHRpb25fZmxhZ3NfbWF4X2xlbik7CisJICBtZW1zZXQgKCZuZXdfc3RyW25vbm9wdGlvbl9mbGFnc19tYXhfbGVuXSwgJ1wwJywKKwkJICB0b3AgKyAxIC0gbm9ub3B0aW9uX2ZsYWdzX21heF9sZW4pOworCSAgbm9ub3B0aW9uX2ZsYWdzX21heF9sZW4gPSB0b3AgKyAxOworCSAgX19nZXRvcHRfbm9ub3B0aW9uX2ZsYWdzID0gbmV3X3N0cjsKKwl9CisgICAgfQorI2VuZGlmCisKKyAgd2hpbGUgKHRvcCA+IG1pZGRsZSAmJiBtaWRkbGUgPiBib3R0b20pCisgICAgeworICAgICAgaWYgKHRvcCAtIG1pZGRsZSA+IG1pZGRsZSAtIGJvdHRvbSkKKwl7CisJICAvKiBCb3R0b20gc2VnbWVudCBpcyB0aGUgc2hvcnQgb25lLiAgKi8KKwkgIGludCBsZW4gPSBtaWRkbGUgLSBib3R0b207CisJICByZWdpc3RlciBpbnQgaTsKKworCSAgLyogU3dhcCBpdCB3aXRoIHRoZSB0b3AgcGFydCBvZiB0aGUgdG9wIHNlZ21lbnQuICAqLworCSAgZm9yIChpID0gMDsgaSA8IGxlbjsgaSsrKQorCSAgICB7CisJICAgICAgdGVtID0gYXJndltib3R0b20gKyBpXTsKKwkgICAgICBhcmd2W2JvdHRvbSArIGldID0gYXJndlt0b3AgLSAobWlkZGxlIC0gYm90dG9tKSArIGldOworCSAgICAgIGFyZ3ZbdG9wIC0gKG1pZGRsZSAtIGJvdHRvbSkgKyBpXSA9IHRlbTsKKwkgICAgICBTV0FQX0ZMQUdTIChib3R0b20gKyBpLCB0b3AgLSAobWlkZGxlIC0gYm90dG9tKSArIGkpOworCSAgICB9CisJICAvKiBFeGNsdWRlIHRoZSBtb3ZlZCBib3R0b20gc2VnbWVudCBmcm9tIGZ1cnRoZXIgc3dhcHBpbmcuICAqLworCSAgdG9wIC09IGxlbjsKKwl9CisgICAgICBlbHNlCisJeworCSAgLyogVG9wIHNlZ21lbnQgaXMgdGhlIHNob3J0IG9uZS4gICovCisJICBpbnQgbGVuID0gdG9wIC0gbWlkZGxlOworCSAgcmVnaXN0ZXIgaW50IGk7CisKKwkgIC8qIFN3YXAgaXQgd2l0aCB0aGUgYm90dG9tIHBhcnQgb2YgdGhlIGJvdHRvbSBzZWdtZW50LiAgKi8KKwkgIGZvciAoaSA9IDA7IGkgPCBsZW47IGkrKykKKwkgICAgeworCSAgICAgIHRlbSA9IGFyZ3ZbYm90dG9tICsgaV07CisJICAgICAgYXJndltib3R0b20gKyBpXSA9IGFyZ3ZbbWlkZGxlICsgaV07CisJICAgICAgYXJndlttaWRkbGUgKyBpXSA9IHRlbTsKKwkgICAgICBTV0FQX0ZMQUdTIChib3R0b20gKyBpLCBtaWRkbGUgKyBpKTsKKwkgICAgfQorCSAgLyogRXhjbHVkZSB0aGUgbW92ZWQgdG9wIHNlZ21lbnQgZnJvbSBmdXJ0aGVyIHN3YXBwaW5nLiAgKi8KKwkgIGJvdHRvbSArPSBsZW47CisJfQorICAgIH0KKworICAvKiBVcGRhdGUgcmVjb3JkcyBmb3IgdGhlIHNsb3RzIHRoZSBub24tb3B0aW9ucyBub3cgb2NjdXB5LiAgKi8KKworICBmaXJzdF9ub25vcHQgKz0gKG9wdGluZCAtIGxhc3Rfbm9ub3B0KTsKKyAgbGFzdF9ub25vcHQgPSBvcHRpbmQ7Cit9CisKKy8qIEluaXRpYWxpemUgdGhlIGludGVybmFsIGRhdGEgd2hlbiB0aGUgZmlyc3QgY2FsbCBpcyBtYWRlLiAgKi8KKworI2lmIGRlZmluZWQgKF9fU1REQ19fKSAmJiBfX1NURENfXworc3RhdGljIGNvbnN0IGNoYXIgKl9nZXRvcHRfaW5pdGlhbGl6ZSAoaW50LCBjaGFyICpjb25zdCAqLCBjb25zdCBjaGFyICopOworI2VuZGlmCitzdGF0aWMgY29uc3QgY2hhciAqCitfZ2V0b3B0X2luaXRpYWxpemUgKGFyZ2MsIGFyZ3YsIG9wdHN0cmluZykKKyAgICAgaW50IGFyZ2M7CisgICAgIGNoYXIgKmNvbnN0ICphcmd2OworICAgICBjb25zdCBjaGFyICpvcHRzdHJpbmc7Cit7CisgIC8qIFN0YXJ0IHByb2Nlc3Npbmcgb3B0aW9ucyB3aXRoIEFSR1YtZWxlbWVudCAxIChzaW5jZSBBUkdWLWVsZW1lbnQgMAorICAgICBpcyB0aGUgcHJvZ3JhbSBuYW1lKTsgdGhlIHNlcXVlbmNlIG9mIHByZXZpb3VzbHkgc2tpcHBlZAorICAgICBub24tb3B0aW9uIEFSR1YtZWxlbWVudHMgaXMgZW1wdHkuICAqLworCisgIGZpcnN0X25vbm9wdCA9IGxhc3Rfbm9ub3B0ID0gb3B0aW5kOworCisgIG5leHRjaGFyID0gTlVMTDsKKworICBwb3NpeGx5X2NvcnJlY3QgPSBnZXRlbnYgKCJQT1NJWExZX0NPUlJFQ1QiKTsKKworICAvKiBEZXRlcm1pbmUgaG93IHRvIGhhbmRsZSB0aGUgb3JkZXJpbmcgb2Ygb3B0aW9ucyBhbmQgbm9ub3B0aW9ucy4gICovCisKKyAgaWYgKG9wdHN0cmluZ1swXSA9PSAnLScpCisgICAgeworICAgICAgb3JkZXJpbmcgPSBSRVRVUk5fSU5fT1JERVI7CisgICAgICArK29wdHN0cmluZzsKKyAgICB9CisgIGVsc2UgaWYgKG9wdHN0cmluZ1swXSA9PSAnKycpCisgICAgeworICAgICAgb3JkZXJpbmcgPSBSRVFVSVJFX09SREVSOworICAgICAgKytvcHRzdHJpbmc7CisgICAgfQorICBlbHNlIGlmIChwb3NpeGx5X2NvcnJlY3QgIT0gTlVMTCkKKyAgICBvcmRlcmluZyA9IFJFUVVJUkVfT1JERVI7CisgIGVsc2UKKyAgICBvcmRlcmluZyA9IFBFUk1VVEU7CisKKyNpZmRlZiBfTElCQworICBpZiAocG9zaXhseV9jb3JyZWN0ID09IE5VTEwKKyAgICAgICYmIGFyZ2MgPT0gb3JpZ2luYWxfYXJnYyAmJiBhcmd2ID09IG9yaWdpbmFsX2FyZ3YpCisgICAgeworICAgICAgaWYgKG5vbm9wdGlvbl9mbGFnc19tYXhfbGVuID09IDApCisJeworCSAgaWYgKF9fZ2V0b3B0X25vbm9wdGlvbl9mbGFncyA9PSBOVUxMCisJICAgICAgfHwgX19nZXRvcHRfbm9ub3B0aW9uX2ZsYWdzWzBdID09ICdcMCcpCisJICAgIG5vbm9wdGlvbl9mbGFnc19tYXhfbGVuID0gLTE7CisJICBlbHNlCisJICAgIHsKKwkgICAgICBjb25zdCBjaGFyICpvcmlnX3N0ciA9IF9fZ2V0b3B0X25vbm9wdGlvbl9mbGFnczsKKwkgICAgICBpbnQgbGVuID0gbm9ub3B0aW9uX2ZsYWdzX21heF9sZW4gPSBzdHJsZW4gKG9yaWdfc3RyKTsKKwkgICAgICBpZiAobm9ub3B0aW9uX2ZsYWdzX21heF9sZW4gPCBhcmdjKQorCQlub25vcHRpb25fZmxhZ3NfbWF4X2xlbiA9IGFyZ2M7CisJICAgICAgX19nZXRvcHRfbm9ub3B0aW9uX2ZsYWdzID0KKwkJKGNoYXIgKikgbWFsbG9jIChub25vcHRpb25fZmxhZ3NfbWF4X2xlbik7CisJICAgICAgaWYgKF9fZ2V0b3B0X25vbm9wdGlvbl9mbGFncyA9PSBOVUxMKQorCQlub25vcHRpb25fZmxhZ3NfbWF4X2xlbiA9IC0xOworCSAgICAgIGVsc2UKKwkJeworCQkgIG1lbWNweSAoX19nZXRvcHRfbm9ub3B0aW9uX2ZsYWdzLCBvcmlnX3N0ciwgbGVuKTsKKwkJICBtZW1zZXQgKCZfX2dldG9wdF9ub25vcHRpb25fZmxhZ3NbbGVuXSwgJ1wwJywKKwkJCSAgbm9ub3B0aW9uX2ZsYWdzX21heF9sZW4gLSBsZW4pOworCQl9CisJICAgIH0KKwl9CisgICAgICBub25vcHRpb25fZmxhZ3NfbGVuID0gbm9ub3B0aW9uX2ZsYWdzX21heF9sZW47CisgICAgfQorICBlbHNlCisgICAgbm9ub3B0aW9uX2ZsYWdzX2xlbiA9IDA7CisjZW5kaWYKKworICByZXR1cm4gb3B0c3RyaW5nOworfQorDAorLyogU2NhbiBlbGVtZW50cyBvZiBBUkdWICh3aG9zZSBsZW5ndGggaXMgQVJHQykgZm9yIG9wdGlvbiBjaGFyYWN0ZXJzCisgICBnaXZlbiBpbiBPUFRTVFJJTkcuCisKKyAgIElmIGFuIGVsZW1lbnQgb2YgQVJHViBzdGFydHMgd2l0aCAnLScsIGFuZCBpcyBub3QgZXhhY3RseSAiLSIgb3IgIi0tIiwKKyAgIHRoZW4gaXQgaXMgYW4gb3B0aW9uIGVsZW1lbnQuICBUaGUgY2hhcmFjdGVycyBvZiB0aGlzIGVsZW1lbnQKKyAgIChhc2lkZSBmcm9tIHRoZSBpbml0aWFsICctJykgYXJlIG9wdGlvbiBjaGFyYWN0ZXJzLiAgSWYgYGdldG9wdCcKKyAgIGlzIGNhbGxlZCByZXBlYXRlZGx5LCBpdCByZXR1cm5zIHN1Y2Nlc3NpdmVseSBlYWNoIG9mIHRoZSBvcHRpb24gY2hhcmFjdGVycworICAgZnJvbSBlYWNoIG9mIHRoZSBvcHRpb24gZWxlbWVudHMuCisKKyAgIElmIGBnZXRvcHQnIGZpbmRzIGFub3RoZXIgb3B0aW9uIGNoYXJhY3RlciwgaXQgcmV0dXJucyB0aGF0IGNoYXJhY3RlciwKKyAgIHVwZGF0aW5nIGBvcHRpbmQnIGFuZCBgbmV4dGNoYXInIHNvIHRoYXQgdGhlIG5leHQgY2FsbCB0byBgZ2V0b3B0JyBjYW4KKyAgIHJlc3VtZSB0aGUgc2NhbiB3aXRoIHRoZSBmb2xsb3dpbmcgb3B0aW9uIGNoYXJhY3RlciBvciBBUkdWLWVsZW1lbnQuCisKKyAgIElmIHRoZXJlIGFyZSBubyBtb3JlIG9wdGlvbiBjaGFyYWN0ZXJzLCBgZ2V0b3B0JyByZXR1cm5zIC0xLgorICAgVGhlbiBgb3B0aW5kJyBpcyB0aGUgaW5kZXggaW4gQVJHViBvZiB0aGUgZmlyc3QgQVJHVi1lbGVtZW50CisgICB0aGF0IGlzIG5vdCBhbiBvcHRpb24uICAoVGhlIEFSR1YtZWxlbWVudHMgaGF2ZSBiZWVuIHBlcm11dGVkCisgICBzbyB0aGF0IHRob3NlIHRoYXQgYXJlIG5vdCBvcHRpb25zIG5vdyBjb21lIGxhc3QuKQorCisgICBPUFRTVFJJTkcgaXMgYSBzdHJpbmcgY29udGFpbmluZyB0aGUgbGVnaXRpbWF0ZSBvcHRpb24gY2hhcmFjdGVycy4KKyAgIElmIGFuIG9wdGlvbiBjaGFyYWN0ZXIgaXMgc2VlbiB0aGF0IGlzIG5vdCBsaXN0ZWQgaW4gT1BUU1RSSU5HLAorICAgcmV0dXJuICc/JyBhZnRlciBwcmludGluZyBhbiBlcnJvciBtZXNzYWdlLiAgSWYgeW91IHNldCBgb3B0ZXJyJyB0bworICAgemVybywgdGhlIGVycm9yIG1lc3NhZ2UgaXMgc3VwcHJlc3NlZCBidXQgd2Ugc3RpbGwgcmV0dXJuICc/Jy4KKworICAgSWYgYSBjaGFyIGluIE9QVFNUUklORyBpcyBmb2xsb3dlZCBieSBhIGNvbG9uLCB0aGF0IG1lYW5zIGl0IHdhbnRzIGFuIGFyZywKKyAgIHNvIHRoZSBmb2xsb3dpbmcgdGV4dCBpbiB0aGUgc2FtZSBBUkdWLWVsZW1lbnQsIG9yIHRoZSB0ZXh0IG9mIHRoZSBmb2xsb3dpbmcKKyAgIEFSR1YtZWxlbWVudCwgaXMgcmV0dXJuZWQgaW4gYG9wdGFyZycuICBUd28gY29sb25zIG1lYW4gYW4gb3B0aW9uIHRoYXQKKyAgIHdhbnRzIGFuIG9wdGlvbmFsIGFyZzsgaWYgdGhlcmUgaXMgdGV4dCBpbiB0aGUgY3VycmVudCBBUkdWLWVsZW1lbnQsCisgICBpdCBpcyByZXR1cm5lZCBpbiBgb3B0YXJnJywgb3RoZXJ3aXNlIGBvcHRhcmcnIGlzIHNldCB0byB6ZXJvLgorCisgICBJZiBPUFRTVFJJTkcgc3RhcnRzIHdpdGggYC0nIG9yIGArJywgaXQgcmVxdWVzdHMgZGlmZmVyZW50IG1ldGhvZHMgb2YKKyAgIGhhbmRsaW5nIHRoZSBub24tb3B0aW9uIEFSR1YtZWxlbWVudHMuCisgICBTZWUgdGhlIGNvbW1lbnRzIGFib3V0IFJFVFVSTl9JTl9PUkRFUiBhbmQgUkVRVUlSRV9PUkRFUiwgYWJvdmUuCisKKyAgIExvbmctbmFtZWQgb3B0aW9ucyBiZWdpbiB3aXRoIGAtLScgaW5zdGVhZCBvZiBgLScuCisgICBUaGVpciBuYW1lcyBtYXkgYmUgYWJicmV2aWF0ZWQgYXMgbG9uZyBhcyB0aGUgYWJicmV2aWF0aW9uIGlzIHVuaXF1ZQorICAgb3IgaXMgYW4gZXhhY3QgbWF0Y2ggZm9yIHNvbWUgZGVmaW5lZCBvcHRpb24uICBJZiB0aGV5IGhhdmUgYW4KKyAgIGFyZ3VtZW50LCBpdCBmb2xsb3dzIHRoZSBvcHRpb24gbmFtZSBpbiB0aGUgc2FtZSBBUkdWLWVsZW1lbnQsIHNlcGFyYXRlZAorICAgZnJvbSB0aGUgb3B0aW9uIG5hbWUgYnkgYSBgPScsIG9yIGVsc2UgdGhlIGluIG5leHQgQVJHVi1lbGVtZW50LgorICAgV2hlbiBgZ2V0b3B0JyBmaW5kcyBhIGxvbmctbmFtZWQgb3B0aW9uLCBpdCByZXR1cm5zIDAgaWYgdGhhdCBvcHRpb24ncworICAgYGZsYWcnIGZpZWxkIGlzIG5vbnplcm8sIHRoZSB2YWx1ZSBvZiB0aGUgb3B0aW9uJ3MgYHZhbCcgZmllbGQKKyAgIGlmIHRoZSBgZmxhZycgZmllbGQgaXMgemVyby4KKworICAgVGhlIGVsZW1lbnRzIG9mIEFSR1YgYXJlbid0IHJlYWxseSBjb25zdCwgYmVjYXVzZSB3ZSBwZXJtdXRlIHRoZW0uCisgICBCdXQgd2UgcHJldGVuZCB0aGV5J3JlIGNvbnN0IGluIHRoZSBwcm90b3R5cGUgdG8gYmUgY29tcGF0aWJsZQorICAgd2l0aCBvdGhlciBzeXN0ZW1zLgorCisgICBMT05HT1BUUyBpcyBhIHZlY3RvciBvZiBgc3RydWN0IG9wdGlvbicgdGVybWluYXRlZCBieSBhbgorICAgZWxlbWVudCBjb250YWluaW5nIGEgbmFtZSB3aGljaCBpcyB6ZXJvLgorCisgICBMT05HSU5EIHJldHVybnMgdGhlIGluZGV4IGluIExPTkdPUFQgb2YgdGhlIGxvbmctbmFtZWQgb3B0aW9uIGZvdW5kLgorICAgSXQgaXMgb25seSB2YWxpZCB3aGVuIGEgbG9uZy1uYW1lZCBvcHRpb24gaGFzIGJlZW4gZm91bmQgYnkgdGhlIG1vc3QKKyAgIHJlY2VudCBjYWxsLgorCisgICBJZiBMT05HX09OTFkgaXMgbm9uemVybywgJy0nIGFzIHdlbGwgYXMgJy0tJyBjYW4gaW50cm9kdWNlCisgICBsb25nLW5hbWVkIG9wdGlvbnMuICAqLworCitpbnQKK19nZXRvcHRfaW50ZXJuYWwgKGFyZ2MsIGFyZ3YsIG9wdHN0cmluZywgbG9uZ29wdHMsIGxvbmdpbmQsIGxvbmdfb25seSkKKyAgICAgaW50IGFyZ2M7CisgICAgIGNoYXIgKmNvbnN0ICphcmd2OworICAgICBjb25zdCBjaGFyICpvcHRzdHJpbmc7CisgICAgIGNvbnN0IHN0cnVjdCBvcHRpb24gKmxvbmdvcHRzOworICAgICBpbnQgKmxvbmdpbmQ7CisgICAgIGludCBsb25nX29ubHk7Cit7CisgIG9wdGFyZyA9IE5VTEw7CisKKyAgaWYgKG9wdGluZCA9PSAwIHx8ICFfX2dldG9wdF9pbml0aWFsaXplZCkKKyAgICB7CisgICAgICBpZiAob3B0aW5kID09IDApCisJb3B0aW5kID0gMTsJLyogRG9uJ3Qgc2NhbiBBUkdWWzBdLCB0aGUgcHJvZ3JhbSBuYW1lLiAgKi8KKyAgICAgIG9wdHN0cmluZyA9IF9nZXRvcHRfaW5pdGlhbGl6ZSAoYXJnYywgYXJndiwgb3B0c3RyaW5nKTsKKyAgICAgIF9fZ2V0b3B0X2luaXRpYWxpemVkID0gMTsKKyAgICB9CisKKyAgLyogVGVzdCB3aGV0aGVyIEFSR1Zbb3B0aW5kXSBwb2ludHMgdG8gYSBub24tb3B0aW9uIGFyZ3VtZW50LgorICAgICBFaXRoZXIgaXQgZG9lcyBub3QgaGF2ZSBvcHRpb24gc3ludGF4LCBvciB0aGVyZSBpcyBhbiBlbnZpcm9ubWVudCBmbGFnCisgICAgIGZyb20gdGhlIHNoZWxsIGluZGljYXRpbmcgaXQgaXMgbm90IGFuIG9wdGlvbi4gIFRoZSBsYXRlciBpbmZvcm1hdGlvbgorICAgICBpcyBvbmx5IHVzZWQgd2hlbiB0aGUgdXNlZCBpbiB0aGUgR05VIGxpYmMuICAqLworI2lmZGVmIF9MSUJDCisjZGVmaW5lIE5PTk9QVElPTl9QIChhcmd2W29wdGluZF1bMF0gIT0gJy0nIHx8IGFyZ3Zbb3B0aW5kXVsxXSA9PSAnXDAnCSAgICAgIFwKKwkJICAgICB8fCAob3B0aW5kIDwgbm9ub3B0aW9uX2ZsYWdzX2xlbgkJCSAgICAgIFwKKwkJCSAmJiBfX2dldG9wdF9ub25vcHRpb25fZmxhZ3Nbb3B0aW5kXSA9PSAnMScpKQorI2Vsc2UKKyNkZWZpbmUgTk9OT1BUSU9OX1AgKGFyZ3Zbb3B0aW5kXVswXSAhPSAnLScgfHwgYXJndltvcHRpbmRdWzFdID09ICdcMCcpCisjZW5kaWYKKworICBpZiAobmV4dGNoYXIgPT0gTlVMTCB8fCAqbmV4dGNoYXIgPT0gJ1wwJykKKyAgICB7CisgICAgICAvKiBBZHZhbmNlIHRvIHRoZSBuZXh0IEFSR1YtZWxlbWVudC4gICovCisKKyAgICAgIC8qIEdpdmUgRklSU1RfTk9OT1BUICYgTEFTVF9OT05PUFQgcmF0aW9uYWwgdmFsdWVzIGlmIE9QVElORCBoYXMgYmVlbgorCSBtb3ZlZCBiYWNrIGJ5IHRoZSB1c2VyICh3aG8gbWF5IGFsc28gaGF2ZSBjaGFuZ2VkIHRoZSBhcmd1bWVudHMpLiAgKi8KKyAgICAgIGlmIChsYXN0X25vbm9wdCA+IG9wdGluZCkKKwlsYXN0X25vbm9wdCA9IG9wdGluZDsKKyAgICAgIGlmIChmaXJzdF9ub25vcHQgPiBvcHRpbmQpCisJZmlyc3Rfbm9ub3B0ID0gb3B0aW5kOworCisgICAgICBpZiAob3JkZXJpbmcgPT0gUEVSTVVURSkKKwl7CisJICAvKiBJZiB3ZSBoYXZlIGp1c3QgcHJvY2Vzc2VkIHNvbWUgb3B0aW9ucyBmb2xsb3dpbmcgc29tZSBub24tb3B0aW9ucywKKwkgICAgIGV4Y2hhbmdlIHRoZW0gc28gdGhhdCB0aGUgb3B0aW9ucyBjb21lIGZpcnN0LiAgKi8KKworCSAgaWYgKGZpcnN0X25vbm9wdCAhPSBsYXN0X25vbm9wdCAmJiBsYXN0X25vbm9wdCAhPSBvcHRpbmQpCisJICAgIGV4Y2hhbmdlICgoY2hhciAqKikgYXJndik7CisJICBlbHNlIGlmIChsYXN0X25vbm9wdCAhPSBvcHRpbmQpCisJICAgIGZpcnN0X25vbm9wdCA9IG9wdGluZDsKKworCSAgLyogU2tpcCBhbnkgYWRkaXRpb25hbCBub24tb3B0aW9ucworCSAgICAgYW5kIGV4dGVuZCB0aGUgcmFuZ2Ugb2Ygbm9uLW9wdGlvbnMgcHJldmlvdXNseSBza2lwcGVkLiAgKi8KKworCSAgd2hpbGUgKG9wdGluZCA8IGFyZ2MgJiYgTk9OT1BUSU9OX1ApCisJICAgIG9wdGluZCsrOworCSAgbGFzdF9ub25vcHQgPSBvcHRpbmQ7CisJfQorCisgICAgICAvKiBUaGUgc3BlY2lhbCBBUkdWLWVsZW1lbnQgYC0tJyBtZWFucyBwcmVtYXR1cmUgZW5kIG9mIG9wdGlvbnMuCisJIFNraXAgaXQgbGlrZSBhIG51bGwgb3B0aW9uLAorCSB0aGVuIGV4Y2hhbmdlIHdpdGggcHJldmlvdXMgbm9uLW9wdGlvbnMgYXMgaWYgaXQgd2VyZSBhbiBvcHRpb24sCisJIHRoZW4gc2tpcCBldmVyeXRoaW5nIGVsc2UgbGlrZSBhIG5vbi1vcHRpb24uICAqLworCisgICAgICBpZiAob3B0aW5kICE9IGFyZ2MgJiYgIXN0cmNtcCAoYXJndltvcHRpbmRdLCAiLS0iKSkKKwl7CisJICBvcHRpbmQrKzsKKworCSAgaWYgKGZpcnN0X25vbm9wdCAhPSBsYXN0X25vbm9wdCAmJiBsYXN0X25vbm9wdCAhPSBvcHRpbmQpCisJICAgIGV4Y2hhbmdlICgoY2hhciAqKikgYXJndik7CisJICBlbHNlIGlmIChmaXJzdF9ub25vcHQgPT0gbGFzdF9ub25vcHQpCisJICAgIGZpcnN0X25vbm9wdCA9IG9wdGluZDsKKwkgIGxhc3Rfbm9ub3B0ID0gYXJnYzsKKworCSAgb3B0aW5kID0gYXJnYzsKKwl9CisKKyAgICAgIC8qIElmIHdlIGhhdmUgZG9uZSBhbGwgdGhlIEFSR1YtZWxlbWVudHMsIHN0b3AgdGhlIHNjYW4KKwkgYW5kIGJhY2sgb3ZlciBhbnkgbm9uLW9wdGlvbnMgdGhhdCB3ZSBza2lwcGVkIGFuZCBwZXJtdXRlZC4gICovCisKKyAgICAgIGlmIChvcHRpbmQgPT0gYXJnYykKKwl7CisJICAvKiBTZXQgdGhlIG5leHQtYXJnLWluZGV4IHRvIHBvaW50IGF0IHRoZSBub24tb3B0aW9ucworCSAgICAgdGhhdCB3ZSBwcmV2aW91c2x5IHNraXBwZWQsIHNvIHRoZSBjYWxsZXIgd2lsbCBkaWdlc3QgdGhlbS4gICovCisJICBpZiAoZmlyc3Rfbm9ub3B0ICE9IGxhc3Rfbm9ub3B0KQorCSAgICBvcHRpbmQgPSBmaXJzdF9ub25vcHQ7CisJICByZXR1cm4gLTE7CisJfQorCisgICAgICAvKiBJZiB3ZSBoYXZlIGNvbWUgdG8gYSBub24tb3B0aW9uIGFuZCBkaWQgbm90IHBlcm11dGUgaXQsCisJIGVpdGhlciBzdG9wIHRoZSBzY2FuIG9yIGRlc2NyaWJlIGl0IHRvIHRoZSBjYWxsZXIgYW5kIHBhc3MgaXQgYnkuICAqLworCisgICAgICBpZiAoTk9OT1BUSU9OX1ApCisJeworCSAgaWYgKG9yZGVyaW5nID09IFJFUVVJUkVfT1JERVIpCisJICAgIHJldHVybiAtMTsKKwkgIG9wdGFyZyA9IGFyZ3Zbb3B0aW5kKytdOworCSAgcmV0dXJuIDE7CisJfQorCisgICAgICAvKiBXZSBoYXZlIGZvdW5kIGFub3RoZXIgb3B0aW9uLUFSR1YtZWxlbWVudC4KKwkgU2tpcCB0aGUgaW5pdGlhbCBwdW5jdHVhdGlvbi4gICovCisKKyAgICAgIG5leHRjaGFyID0gKGFyZ3Zbb3B0aW5kXSArIDEKKwkJICArIChsb25nb3B0cyAhPSBOVUxMICYmIGFyZ3Zbb3B0aW5kXVsxXSA9PSAnLScpKTsKKyAgICB9CisKKyAgLyogRGVjb2RlIHRoZSBjdXJyZW50IG9wdGlvbi1BUkdWLWVsZW1lbnQuICAqLworCisgIC8qIENoZWNrIHdoZXRoZXIgdGhlIEFSR1YtZWxlbWVudCBpcyBhIGxvbmcgb3B0aW9uLgorCisgICAgIElmIGxvbmdfb25seSBhbmQgdGhlIEFSR1YtZWxlbWVudCBoYXMgdGhlIGZvcm0gIi1mIiwgd2hlcmUgZiBpcworICAgICBhIHZhbGlkIHNob3J0IG9wdGlvbiwgZG9uJ3QgY29uc2lkZXIgaXQgYW4gYWJicmV2aWF0ZWQgZm9ybSBvZgorICAgICBhIGxvbmcgb3B0aW9uIHRoYXQgc3RhcnRzIHdpdGggZi4gIE90aGVyd2lzZSB0aGVyZSB3b3VsZCBiZSBubworICAgICB3YXkgdG8gZ2l2ZSB0aGUgLWYgc2hvcnQgb3B0aW9uLgorCisgICAgIE9uIHRoZSBvdGhlciBoYW5kLCBpZiB0aGVyZSdzIGEgbG9uZyBvcHRpb24gImZ1YmFyIiBhbmQKKyAgICAgdGhlIEFSR1YtZWxlbWVudCBpcyAiLWZ1IiwgZG8gY29uc2lkZXIgdGhhdCBhbiBhYmJyZXZpYXRpb24gb2YKKyAgICAgdGhlIGxvbmcgb3B0aW9uLCBqdXN0IGxpa2UgIi0tZnUiLCBhbmQgbm90ICItZiIgd2l0aCBhcmcgInUiLgorCisgICAgIFRoaXMgZGlzdGluY3Rpb24gc2VlbXMgdG8gYmUgdGhlIG1vc3QgdXNlZnVsIGFwcHJvYWNoLiAgKi8KKworICBpZiAobG9uZ29wdHMgIT0gTlVMTAorICAgICAgJiYgKGFyZ3Zbb3B0aW5kXVsxXSA9PSAnLScKKwkgIHx8IChsb25nX29ubHkgJiYgKGFyZ3Zbb3B0aW5kXVsyXSB8fCAhbXlfaW5kZXggKG9wdHN0cmluZywgYXJndltvcHRpbmRdWzFdKSkpKSkKKyAgICB7CisgICAgICBjaGFyICpuYW1lZW5kOworICAgICAgY29uc3Qgc3RydWN0IG9wdGlvbiAqcDsKKyAgICAgIGNvbnN0IHN0cnVjdCBvcHRpb24gKnBmb3VuZCA9IE5VTEw7CisgICAgICBpbnQgZXhhY3QgPSAwOworICAgICAgaW50IGFtYmlnID0gMDsKKyAgICAgIGludCBpbmRmb3VuZCA9IC0xOworICAgICAgaW50IG9wdGlvbl9pbmRleDsKKworICAgICAgZm9yIChuYW1lZW5kID0gbmV4dGNoYXI7ICpuYW1lZW5kICYmICpuYW1lZW5kICE9ICc9JzsgbmFtZWVuZCsrKQorCS8qIERvIG5vdGhpbmcuICAqLyA7CisKKyAgICAgIC8qIFRlc3QgYWxsIGxvbmcgb3B0aW9ucyBmb3IgZWl0aGVyIGV4YWN0IG1hdGNoCisJIG9yIGFiYnJldmlhdGVkIG1hdGNoZXMuICAqLworICAgICAgZm9yIChwID0gbG9uZ29wdHMsIG9wdGlvbl9pbmRleCA9IDA7IHAtPm5hbWU7IHArKywgb3B0aW9uX2luZGV4KyspCisJaWYgKCFzdHJuY21wIChwLT5uYW1lLCBuZXh0Y2hhciwgbmFtZWVuZCAtIG5leHRjaGFyKSkKKwkgIHsKKwkgICAgaWYgKCh1bnNpZ25lZCBpbnQpIChuYW1lZW5kIC0gbmV4dGNoYXIpCisJCT09ICh1bnNpZ25lZCBpbnQpIHN0cmxlbiAocC0+bmFtZSkpCisJICAgICAgeworCQkvKiBFeGFjdCBtYXRjaCBmb3VuZC4gICovCisJCXBmb3VuZCA9IHA7CisJCWluZGZvdW5kID0gb3B0aW9uX2luZGV4OworCQlleGFjdCA9IDE7CisJCWJyZWFrOworCSAgICAgIH0KKwkgICAgZWxzZSBpZiAocGZvdW5kID09IE5VTEwpCisJICAgICAgeworCQkvKiBGaXJzdCBub25leGFjdCBtYXRjaCBmb3VuZC4gICovCisJCXBmb3VuZCA9IHA7CisJCWluZGZvdW5kID0gb3B0aW9uX2luZGV4OworCSAgICAgIH0KKwkgICAgZWxzZQorCSAgICAgIC8qIFNlY29uZCBvciBsYXRlciBub25leGFjdCBtYXRjaCBmb3VuZC4gICovCisJICAgICAgYW1iaWcgPSAxOworCSAgfQorCisgICAgICBpZiAoYW1iaWcgJiYgIWV4YWN0KQorCXsKKwkgIGlmIChvcHRlcnIpCisJICAgIGZwcmludGYgKHN0ZGVyciwgXygiJXM6IG9wdGlvbiBgJXMnIGlzIGFtYmlndW91c1xuIiksCisJCSAgICAgYXJndlswXSwgYXJndltvcHRpbmRdKTsKKwkgIG5leHRjaGFyICs9IHN0cmxlbiAobmV4dGNoYXIpOworCSAgb3B0aW5kKys7CisJICBvcHRvcHQgPSAwOworCSAgcmV0dXJuICc/JzsKKwl9CisKKyAgICAgIGlmIChwZm91bmQgIT0gTlVMTCkKKwl7CisJICBvcHRpb25faW5kZXggPSBpbmRmb3VuZDsKKwkgIG9wdGluZCsrOworCSAgaWYgKCpuYW1lZW5kKQorCSAgICB7CisJICAgICAgLyogRG9uJ3QgdGVzdCBoYXNfYXJnIHdpdGggPiwgYmVjYXVzZSBzb21lIEMgY29tcGlsZXJzIGRvbid0CisJCSBhbGxvdyBpdCB0byBiZSB1c2VkIG9uIGVudW1zLiAgKi8KKwkgICAgICBpZiAocGZvdW5kLT5oYXNfYXJnKQorCQlvcHRhcmcgPSBuYW1lZW5kICsgMTsKKwkgICAgICBlbHNlCisJCXsKKwkJICBpZiAob3B0ZXJyKQorCQkgICAgeworCQkgICAgICBpZiAoYXJndltvcHRpbmQgLSAxXVsxXSA9PSAnLScpCisJCQkvKiAtLW9wdGlvbiAqLworCQkJZnByaW50ZiAoc3RkZXJyLAorCQkJICAgICBfKCIlczogb3B0aW9uIGAtLSVzJyBkb2Vzbid0IGFsbG93IGFuIGFyZ3VtZW50XG4iKSwKKwkJCQkgYXJndlswXSwgcGZvdW5kLT5uYW1lKTsKKwkJICAgICAgZWxzZQorCQkJLyogK29wdGlvbiBvciAtb3B0aW9uICovCisJCQlmcHJpbnRmIChzdGRlcnIsCisJCQkgICAgIF8oIiVzOiBvcHRpb24gYCVjJXMnIGRvZXNuJ3QgYWxsb3cgYW4gYXJndW1lbnRcbiIpLAorCQkJCSBhcmd2WzBdLCBhcmd2W29wdGluZCAtIDFdWzBdLCBwZm91bmQtPm5hbWUpOworCQkgICAgfQorCisJCSAgbmV4dGNoYXIgKz0gc3RybGVuIChuZXh0Y2hhcik7CisKKwkJICBvcHRvcHQgPSBwZm91bmQtPnZhbDsKKwkJICByZXR1cm4gJz8nOworCQl9CisJICAgIH0KKwkgIGVsc2UgaWYgKHBmb3VuZC0+aGFzX2FyZyA9PSAxKQorCSAgICB7CisJICAgICAgaWYgKG9wdGluZCA8IGFyZ2MpCisJCW9wdGFyZyA9IGFyZ3Zbb3B0aW5kKytdOworCSAgICAgIGVsc2UKKwkJeworCQkgIGlmIChvcHRlcnIpCisJCSAgICBmcHJpbnRmIChzdGRlcnIsCisJCQkgICBfKCIlczogb3B0aW9uIGAlcycgcmVxdWlyZXMgYW4gYXJndW1lbnRcbiIpLAorCQkJICAgYXJndlswXSwgYXJndltvcHRpbmQgLSAxXSk7CisJCSAgbmV4dGNoYXIgKz0gc3RybGVuIChuZXh0Y2hhcik7CisJCSAgb3B0b3B0ID0gcGZvdW5kLT52YWw7CisJCSAgcmV0dXJuIG9wdHN0cmluZ1swXSA9PSAnOicgPyAnOicgOiAnPyc7CisJCX0KKwkgICAgfQorCSAgbmV4dGNoYXIgKz0gc3RybGVuIChuZXh0Y2hhcik7CisJICBpZiAobG9uZ2luZCAhPSBOVUxMKQorCSAgICAqbG9uZ2luZCA9IG9wdGlvbl9pbmRleDsKKwkgIGlmIChwZm91bmQtPmZsYWcpCisJICAgIHsKKwkgICAgICAqKHBmb3VuZC0+ZmxhZykgPSBwZm91bmQtPnZhbDsKKwkgICAgICByZXR1cm4gMDsKKwkgICAgfQorCSAgcmV0dXJuIHBmb3VuZC0+dmFsOworCX0KKworICAgICAgLyogQ2FuJ3QgZmluZCBpdCBhcyBhIGxvbmcgb3B0aW9uLiAgSWYgdGhpcyBpcyBub3QgZ2V0b3B0X2xvbmdfb25seSwKKwkgb3IgdGhlIG9wdGlvbiBzdGFydHMgd2l0aCAnLS0nIG9yIGlzIG5vdCBhIHZhbGlkIHNob3J0CisJIG9wdGlvbiwgdGhlbiBpdCdzIGFuIGVycm9yLgorCSBPdGhlcndpc2UgaW50ZXJwcmV0IGl0IGFzIGEgc2hvcnQgb3B0aW9uLiAgKi8KKyAgICAgIGlmICghbG9uZ19vbmx5IHx8IGFyZ3Zbb3B0aW5kXVsxXSA9PSAnLScKKwkgIHx8IG15X2luZGV4IChvcHRzdHJpbmcsICpuZXh0Y2hhcikgPT0gTlVMTCkKKwl7CisJICBpZiAob3B0ZXJyKQorCSAgICB7CisJICAgICAgaWYgKGFyZ3Zbb3B0aW5kXVsxXSA9PSAnLScpCisJCS8qIC0tb3B0aW9uICovCisJCWZwcmludGYgKHN0ZGVyciwgXygiJXM6IHVucmVjb2duaXplZCBvcHRpb24gYC0tJXMnXG4iKSwKKwkJCSBhcmd2WzBdLCBuZXh0Y2hhcik7CisJICAgICAgZWxzZQorCQkvKiArb3B0aW9uIG9yIC1vcHRpb24gKi8KKwkJZnByaW50ZiAoc3RkZXJyLCBfKCIlczogdW5yZWNvZ25pemVkIG9wdGlvbiBgJWMlcydcbiIpLAorCQkJIGFyZ3ZbMF0sIGFyZ3Zbb3B0aW5kXVswXSwgbmV4dGNoYXIpOworCSAgICB9CisJICBuZXh0Y2hhciA9IChjaGFyICopICIiOworCSAgb3B0aW5kKys7CisJICBvcHRvcHQgPSAwOworCSAgcmV0dXJuICc/JzsKKwl9CisgICAgfQorCisgIC8qIExvb2sgYXQgYW5kIGhhbmRsZSB0aGUgbmV4dCBzaG9ydCBvcHRpb24tY2hhcmFjdGVyLiAgKi8KKworICB7CisgICAgY2hhciBjID0gKm5leHRjaGFyKys7CisgICAgY2hhciAqdGVtcCA9IG15X2luZGV4IChvcHRzdHJpbmcsIGMpOworCisgICAgLyogSW5jcmVtZW50IGBvcHRpbmQnIHdoZW4gd2Ugc3RhcnQgdG8gcHJvY2VzcyBpdHMgbGFzdCBjaGFyYWN0ZXIuICAqLworICAgIGlmICgqbmV4dGNoYXIgPT0gJ1wwJykKKyAgICAgICsrb3B0aW5kOworCisgICAgaWYgKHRlbXAgPT0gTlVMTCB8fCBjID09ICc6JykKKyAgICAgIHsKKwlpZiAob3B0ZXJyKQorCSAgeworCSAgICBpZiAocG9zaXhseV9jb3JyZWN0KQorCSAgICAgIC8qIDEwMDMuMiBzcGVjaWZpZXMgdGhlIGZvcm1hdCBvZiB0aGlzIG1lc3NhZ2UuICAqLworCSAgICAgIGZwcmludGYgKHN0ZGVyciwgXygiJXM6IGlsbGVnYWwgb3B0aW9uIC0tICVjXG4iKSwKKwkJICAgICAgIGFyZ3ZbMF0sIGMpOworCSAgICBlbHNlCisJICAgICAgZnByaW50ZiAoc3RkZXJyLCBfKCIlczogaW52YWxpZCBvcHRpb24gLS0gJWNcbiIpLAorCQkgICAgICAgYXJndlswXSwgYyk7CisJICB9CisJb3B0b3B0ID0gYzsKKwlyZXR1cm4gJz8nOworICAgICAgfQorICAgIC8qIENvbnZlbmllbmNlLiBUcmVhdCBQT1NJWCAtVyBmb28gc2FtZSBhcyBsb25nIG9wdGlvbiAtLWZvbyAqLworICAgIGlmICh0ZW1wWzBdID09ICdXJyAmJiB0ZW1wWzFdID09ICc7JykKKyAgICAgIHsKKwljaGFyICpuYW1lZW5kOworCWNvbnN0IHN0cnVjdCBvcHRpb24gKnA7CisJY29uc3Qgc3RydWN0IG9wdGlvbiAqcGZvdW5kID0gTlVMTDsKKwlpbnQgZXhhY3QgPSAwOworCWludCBhbWJpZyA9IDA7CisJaW50IGluZGZvdW5kID0gMDsKKwlpbnQgb3B0aW9uX2luZGV4OworCisJLyogVGhpcyBpcyBhbiBvcHRpb24gdGhhdCByZXF1aXJlcyBhbiBhcmd1bWVudC4gICovCisJaWYgKCpuZXh0Y2hhciAhPSAnXDAnKQorCSAgeworCSAgICBvcHRhcmcgPSBuZXh0Y2hhcjsKKwkgICAgLyogSWYgd2UgZW5kIHRoaXMgQVJHVi1lbGVtZW50IGJ5IHRha2luZyB0aGUgcmVzdCBhcyBhbiBhcmcsCisJICAgICAgIHdlIG11c3QgYWR2YW5jZSB0byB0aGUgbmV4dCBlbGVtZW50IG5vdy4gICovCisJICAgIG9wdGluZCsrOworCSAgfQorCWVsc2UgaWYgKG9wdGluZCA9PSBhcmdjKQorCSAgeworCSAgICBpZiAob3B0ZXJyKQorCSAgICAgIHsKKwkJLyogMTAwMy4yIHNwZWNpZmllcyB0aGUgZm9ybWF0IG9mIHRoaXMgbWVzc2FnZS4gICovCisJCWZwcmludGYgKHN0ZGVyciwgXygiJXM6IG9wdGlvbiByZXF1aXJlcyBhbiBhcmd1bWVudCAtLSAlY1xuIiksCisJCQkgYXJndlswXSwgYyk7CisJICAgICAgfQorCSAgICBvcHRvcHQgPSBjOworCSAgICBpZiAob3B0c3RyaW5nWzBdID09ICc6JykKKwkgICAgICBjID0gJzonOworCSAgICBlbHNlCisJICAgICAgYyA9ICc/JzsKKwkgICAgcmV0dXJuIGM7CisJICB9CisJZWxzZQorCSAgLyogV2UgYWxyZWFkeSBpbmNyZW1lbnRlZCBgb3B0aW5kJyBvbmNlOworCSAgICAgaW5jcmVtZW50IGl0IGFnYWluIHdoZW4gdGFraW5nIG5leHQgQVJHVi1lbHQgYXMgYXJndW1lbnQuICAqLworCSAgb3B0YXJnID0gYXJndltvcHRpbmQrK107CisKKwkvKiBvcHRhcmcgaXMgbm93IHRoZSBhcmd1bWVudCwgc2VlIGlmIGl0J3MgaW4gdGhlCisJICAgdGFibGUgb2YgbG9uZ29wdHMuICAqLworCisJZm9yIChuZXh0Y2hhciA9IG5hbWVlbmQgPSBvcHRhcmc7ICpuYW1lZW5kICYmICpuYW1lZW5kICE9ICc9JzsgbmFtZWVuZCsrKQorCSAgLyogRG8gbm90aGluZy4gICovIDsKKworCS8qIFRlc3QgYWxsIGxvbmcgb3B0aW9ucyBmb3IgZWl0aGVyIGV4YWN0IG1hdGNoCisJICAgb3IgYWJicmV2aWF0ZWQgbWF0Y2hlcy4gICovCisJZm9yIChwID0gbG9uZ29wdHMsIG9wdGlvbl9pbmRleCA9IDA7IHAtPm5hbWU7IHArKywgb3B0aW9uX2luZGV4KyspCisJICBpZiAoIXN0cm5jbXAgKHAtPm5hbWUsIG5leHRjaGFyLCBuYW1lZW5kIC0gbmV4dGNoYXIpKQorCSAgICB7CisJICAgICAgaWYgKCh1bnNpZ25lZCBpbnQpIChuYW1lZW5kIC0gbmV4dGNoYXIpID09IHN0cmxlbiAocC0+bmFtZSkpCisJCXsKKwkJICAvKiBFeGFjdCBtYXRjaCBmb3VuZC4gICovCisJCSAgcGZvdW5kID0gcDsKKwkJICBpbmRmb3VuZCA9IG9wdGlvbl9pbmRleDsKKwkJICBleGFjdCA9IDE7CisJCSAgYnJlYWs7CisJCX0KKwkgICAgICBlbHNlIGlmIChwZm91bmQgPT0gTlVMTCkKKwkJeworCQkgIC8qIEZpcnN0IG5vbmV4YWN0IG1hdGNoIGZvdW5kLiAgKi8KKwkJICBwZm91bmQgPSBwOworCQkgIGluZGZvdW5kID0gb3B0aW9uX2luZGV4OworCQl9CisJICAgICAgZWxzZQorCQkvKiBTZWNvbmQgb3IgbGF0ZXIgbm9uZXhhY3QgbWF0Y2ggZm91bmQuICAqLworCQlhbWJpZyA9IDE7CisJICAgIH0KKwlpZiAoYW1iaWcgJiYgIWV4YWN0KQorCSAgeworCSAgICBpZiAob3B0ZXJyKQorCSAgICAgIGZwcmludGYgKHN0ZGVyciwgXygiJXM6IG9wdGlvbiBgLVcgJXMnIGlzIGFtYmlndW91c1xuIiksCisJCSAgICAgICBhcmd2WzBdLCBhcmd2W29wdGluZF0pOworCSAgICBuZXh0Y2hhciArPSBzdHJsZW4gKG5leHRjaGFyKTsKKwkgICAgb3B0aW5kKys7CisJICAgIHJldHVybiAnPyc7CisJICB9CisJaWYgKHBmb3VuZCAhPSBOVUxMKQorCSAgeworCSAgICBvcHRpb25faW5kZXggPSBpbmRmb3VuZDsKKwkgICAgaWYgKCpuYW1lZW5kKQorCSAgICAgIHsKKwkJLyogRG9uJ3QgdGVzdCBoYXNfYXJnIHdpdGggPiwgYmVjYXVzZSBzb21lIEMgY29tcGlsZXJzIGRvbid0CisJCSAgIGFsbG93IGl0IHRvIGJlIHVzZWQgb24gZW51bXMuICAqLworCQlpZiAocGZvdW5kLT5oYXNfYXJnKQorCQkgIG9wdGFyZyA9IG5hbWVlbmQgKyAxOworCQllbHNlCisJCSAgeworCQkgICAgaWYgKG9wdGVycikKKwkJICAgICAgZnByaW50ZiAoc3RkZXJyLCBfKCJcCislczogb3B0aW9uIGAtVyAlcycgZG9lc24ndCBhbGxvdyBhbiBhcmd1bWVudFxuIiksCisJCQkgICAgICAgYXJndlswXSwgcGZvdW5kLT5uYW1lKTsKKworCQkgICAgbmV4dGNoYXIgKz0gc3RybGVuIChuZXh0Y2hhcik7CisJCSAgICByZXR1cm4gJz8nOworCQkgIH0KKwkgICAgICB9CisJICAgIGVsc2UgaWYgKHBmb3VuZC0+aGFzX2FyZyA9PSAxKQorCSAgICAgIHsKKwkJaWYgKG9wdGluZCA8IGFyZ2MpCisJCSAgb3B0YXJnID0gYXJndltvcHRpbmQrK107CisJCWVsc2UKKwkJICB7CisJCSAgICBpZiAob3B0ZXJyKQorCQkgICAgICBmcHJpbnRmIChzdGRlcnIsCisJCQkgICAgICAgXygiJXM6IG9wdGlvbiBgJXMnIHJlcXVpcmVzIGFuIGFyZ3VtZW50XG4iKSwKKwkJCSAgICAgICBhcmd2WzBdLCBhcmd2W29wdGluZCAtIDFdKTsKKwkJICAgIG5leHRjaGFyICs9IHN0cmxlbiAobmV4dGNoYXIpOworCQkgICAgcmV0dXJuIG9wdHN0cmluZ1swXSA9PSAnOicgPyAnOicgOiAnPyc7CisJCSAgfQorCSAgICAgIH0KKwkgICAgbmV4dGNoYXIgKz0gc3RybGVuIChuZXh0Y2hhcik7CisJICAgIGlmIChsb25naW5kICE9IE5VTEwpCisJICAgICAgKmxvbmdpbmQgPSBvcHRpb25faW5kZXg7CisJICAgIGlmIChwZm91bmQtPmZsYWcpCisJICAgICAgeworCQkqKHBmb3VuZC0+ZmxhZykgPSBwZm91bmQtPnZhbDsKKwkJcmV0dXJuIDA7CisJICAgICAgfQorCSAgICByZXR1cm4gcGZvdW5kLT52YWw7CisJICB9CisJICBuZXh0Y2hhciA9IE5VTEw7CisJICByZXR1cm4gJ1cnOwkvKiBMZXQgdGhlIGFwcGxpY2F0aW9uIGhhbmRsZSBpdC4gICAqLworICAgICAgfQorICAgIGlmICh0ZW1wWzFdID09ICc6JykKKyAgICAgIHsKKwlpZiAodGVtcFsyXSA9PSAnOicpCisJICB7CisJICAgIC8qIFRoaXMgaXMgYW4gb3B0aW9uIHRoYXQgYWNjZXB0cyBhbiBhcmd1bWVudCBvcHRpb25hbGx5LiAgKi8KKwkgICAgaWYgKCpuZXh0Y2hhciAhPSAnXDAnKQorCSAgICAgIHsKKwkJb3B0YXJnID0gbmV4dGNoYXI7CisJCW9wdGluZCsrOworCSAgICAgIH0KKwkgICAgZWxzZQorCSAgICAgIG9wdGFyZyA9IE5VTEw7CisJICAgIG5leHRjaGFyID0gTlVMTDsKKwkgIH0KKwllbHNlCisJICB7CisJICAgIC8qIFRoaXMgaXMgYW4gb3B0aW9uIHRoYXQgcmVxdWlyZXMgYW4gYXJndW1lbnQuICAqLworCSAgICBpZiAoKm5leHRjaGFyICE9ICdcMCcpCisJICAgICAgeworCQlvcHRhcmcgPSBuZXh0Y2hhcjsKKwkJLyogSWYgd2UgZW5kIHRoaXMgQVJHVi1lbGVtZW50IGJ5IHRha2luZyB0aGUgcmVzdCBhcyBhbiBhcmcsCisJCSAgIHdlIG11c3QgYWR2YW5jZSB0byB0aGUgbmV4dCBlbGVtZW50IG5vdy4gICovCisJCW9wdGluZCsrOworCSAgICAgIH0KKwkgICAgZWxzZSBpZiAob3B0aW5kID09IGFyZ2MpCisJICAgICAgeworCQlpZiAob3B0ZXJyKQorCQkgIHsKKwkJICAgIC8qIDEwMDMuMiBzcGVjaWZpZXMgdGhlIGZvcm1hdCBvZiB0aGlzIG1lc3NhZ2UuICAqLworCQkgICAgZnByaW50ZiAoc3RkZXJyLAorCQkJICAgXygiJXM6IG9wdGlvbiByZXF1aXJlcyBhbiBhcmd1bWVudCAtLSAlY1xuIiksCisJCQkgICBhcmd2WzBdLCBjKTsKKwkJICB9CisJCW9wdG9wdCA9IGM7CisJCWlmIChvcHRzdHJpbmdbMF0gPT0gJzonKQorCQkgIGMgPSAnOic7CisJCWVsc2UKKwkJICBjID0gJz8nOworCSAgICAgIH0KKwkgICAgZWxzZQorCSAgICAgIC8qIFdlIGFscmVhZHkgaW5jcmVtZW50ZWQgYG9wdGluZCcgb25jZTsKKwkJIGluY3JlbWVudCBpdCBhZ2FpbiB3aGVuIHRha2luZyBuZXh0IEFSR1YtZWx0IGFzIGFyZ3VtZW50LiAgKi8KKwkgICAgICBvcHRhcmcgPSBhcmd2W29wdGluZCsrXTsKKwkgICAgbmV4dGNoYXIgPSBOVUxMOworCSAgfQorICAgICAgfQorICAgIHJldHVybiBjOworICB9Cit9CisKK2ludAorZ2V0b3B0IChhcmdjLCBhcmd2LCBvcHRzdHJpbmcpCisgICAgIGludCBhcmdjOworICAgICBjaGFyICpjb25zdCAqYXJndjsKKyAgICAgY29uc3QgY2hhciAqb3B0c3RyaW5nOworeworICByZXR1cm4gX2dldG9wdF9pbnRlcm5hbCAoYXJnYywgYXJndiwgb3B0c3RyaW5nLAorCQkJICAgKGNvbnN0IHN0cnVjdCBvcHRpb24gKikgMCwKKwkJCSAgIChpbnQgKikgMCwKKwkJCSAgIDApOworfQorCisjZW5kaWYJLyogTm90IEVMSURFX0NPREUuICAqLworDAorI2lmZGVmIFRFU1QKKworLyogQ29tcGlsZSB3aXRoIC1EVEVTVCB0byBtYWtlIGFuIGV4ZWN1dGFibGUgZm9yIHVzZSBpbiB0ZXN0aW5nCisgICB0aGUgYWJvdmUgZGVmaW5pdGlvbiBvZiBgZ2V0b3B0Jy4gICovCisKK2ludAorbWFpbiAoYXJnYywgYXJndikKKyAgICAgaW50IGFyZ2M7CisgICAgIGNoYXIgKiphcmd2OworeworICBpbnQgYzsKKyAgaW50IGRpZ2l0X29wdGluZCA9IDA7CisKKyAgd2hpbGUgKDEpCisgICAgeworICAgICAgaW50IHRoaXNfb3B0aW9uX29wdGluZCA9IG9wdGluZCA/IG9wdGluZCA6IDE7CisKKyAgICAgIGMgPSBnZXRvcHQgKGFyZ2MsIGFyZ3YsICJhYmM6ZDowMTIzNDU2Nzg5Iik7CisgICAgICBpZiAoYyA9PSAtMSkKKwlicmVhazsKKworICAgICAgc3dpdGNoIChjKQorCXsKKwljYXNlICcwJzoKKwljYXNlICcxJzoKKwljYXNlICcyJzoKKwljYXNlICczJzoKKwljYXNlICc0JzoKKwljYXNlICc1JzoKKwljYXNlICc2JzoKKwljYXNlICc3JzoKKwljYXNlICc4JzoKKwljYXNlICc5JzoKKwkgIGlmIChkaWdpdF9vcHRpbmQgIT0gMCAmJiBkaWdpdF9vcHRpbmQgIT0gdGhpc19vcHRpb25fb3B0aW5kKQorCSAgICBwcmludGYgKCJkaWdpdHMgb2NjdXIgaW4gdHdvIGRpZmZlcmVudCBhcmd2LWVsZW1lbnRzLlxuIik7CisJICBkaWdpdF9vcHRpbmQgPSB0aGlzX29wdGlvbl9vcHRpbmQ7CisJICBwcmludGYgKCJvcHRpb24gJWNcbiIsIGMpOworCSAgYnJlYWs7CisKKwljYXNlICdhJzoKKwkgIHByaW50ZiAoIm9wdGlvbiBhXG4iKTsKKwkgIGJyZWFrOworCisJY2FzZSAnYic6CisJICBwcmludGYgKCJvcHRpb24gYlxuIik7CisJICBicmVhazsKKworCWNhc2UgJ2MnOgorCSAgcHJpbnRmICgib3B0aW9uIGMgd2l0aCB2YWx1ZSBgJXMnXG4iLCBvcHRhcmcpOworCSAgYnJlYWs7CisKKwljYXNlICc/JzoKKwkgIGJyZWFrOworCisJZGVmYXVsdDoKKwkgIHByaW50ZiAoIj8/IGdldG9wdCByZXR1cm5lZCBjaGFyYWN0ZXIgY29kZSAwJW8gPz9cbiIsIGMpOworCX0KKyAgICB9CisKKyAgaWYgKG9wdGluZCA8IGFyZ2MpCisgICAgeworICAgICAgcHJpbnRmICgibm9uLW9wdGlvbiBBUkdWLWVsZW1lbnRzOiAiKTsKKyAgICAgIHdoaWxlIChvcHRpbmQgPCBhcmdjKQorCXByaW50ZiAoIiVzICIsIGFyZ3Zbb3B0aW5kKytdKTsKKyAgICAgIHByaW50ZiAoIlxuIik7CisgICAgfQorCisgIGV4aXQgKDApOworfQorCisjZW5kaWYgLyogVEVTVCAqLwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9saWIvY29tcGF0L2dldG9wdC5oIGIvZHBrZy0xLjE2LjEuMS9saWIvY29tcGF0L2dldG9wdC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjkyOTUxZTUKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2xpYi9jb21wYXQvZ2V0b3B0LmgKQEAgLTAsMCArMSwxMzUgQEAKKy8qIERlY2xhcmF0aW9ucyBmb3IgZ2V0b3B0LgorICAgQ29weXJpZ2h0IChDKSAxOTg5LDkwLDkxLDkyLDkzLDk0LDk2LDk3IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgorCisgICB0aGUgQyBsaWJyYXJ5LCBob3dldmVyLiAgVGhlIG1hc3RlciBzb3VyY2UgbGl2ZXMgaW4gL2dkL2dudS9saWIuCisKK05PVEU6IFRoZSBjYW5vbmljYWwgc291cmNlIG9mIHRoaXMgZmlsZSBpcyBtYWludGFpbmVkIHdpdGggdGhlIEdOVSBDIExpYnJhcnkuCitCdWdzIGNhbiBiZSByZXBvcnRlZCB0byBidWctZ2xpYmNAcHJlcC5haS5taXQuZWR1LgorCitUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeSBpdAordW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlCitGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55CitsYXRlciB2ZXJzaW9uLgorCitUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKK2J1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCitNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCitHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorCitZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKK0ZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSAtIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3LAorVVNBLiAgKi8KKworI2lmbmRlZiBfR0VUT1BUX0gKKyNkZWZpbmUgX0dFVE9QVF9IIDEKKworI2lmZGVmCV9fY3BsdXNwbHVzCitleHRlcm4gIkMiIHsKKyNlbmRpZgorCisvKiBGb3IgY29tbXVuaWNhdGlvbiBmcm9tIGBnZXRvcHQnIHRvIHRoZSBjYWxsZXIuCisgICBXaGVuIGBnZXRvcHQnIGZpbmRzIGFuIG9wdGlvbiB0aGF0IHRha2VzIGFuIGFyZ3VtZW50LAorICAgdGhlIGFyZ3VtZW50IHZhbHVlIGlzIHJldHVybmVkIGhlcmUuCisgICBBbHNvLCB3aGVuIGBvcmRlcmluZycgaXMgUkVUVVJOX0lOX09SREVSLAorICAgZWFjaCBub24tb3B0aW9uIEFSR1YtZWxlbWVudCBpcyByZXR1cm5lZCBoZXJlLiAgKi8KKworZXh0ZXJuIGNoYXIgKm9wdGFyZzsKKworLyogSW5kZXggaW4gQVJHViBvZiB0aGUgbmV4dCBlbGVtZW50IHRvIGJlIHNjYW5uZWQuCisgICBUaGlzIGlzIHVzZWQgZm9yIGNvbW11bmljYXRpb24gdG8gYW5kIGZyb20gdGhlIGNhbGxlcgorICAgYW5kIGZvciBjb21tdW5pY2F0aW9uIGJldHdlZW4gc3VjY2Vzc2l2ZSBjYWxscyB0byBgZ2V0b3B0Jy4KKworICAgT24gZW50cnkgdG8gYGdldG9wdCcsIHplcm8gbWVhbnMgdGhpcyBpcyB0aGUgZmlyc3QgY2FsbDsgaW5pdGlhbGl6ZS4KKworICAgV2hlbiBgZ2V0b3B0JyByZXR1cm5zIC0xLCB0aGlzIGlzIHRoZSBpbmRleCBvZiB0aGUgZmlyc3Qgb2YgdGhlCisgICBub24tb3B0aW9uIGVsZW1lbnRzIHRoYXQgdGhlIGNhbGxlciBzaG91bGQgaXRzZWxmIHNjYW4uCisKKyAgIE90aGVyd2lzZSwgYG9wdGluZCcgY29tbXVuaWNhdGVzIGZyb20gb25lIGNhbGwgdG8gdGhlIG5leHQKKyAgIGhvdyBtdWNoIG9mIEFSR1YgaGFzIGJlZW4gc2Nhbm5lZCBzbyBmYXIuICAqLworCitleHRlcm4gaW50IG9wdGluZDsKKworLyogQ2FsbGVycyBzdG9yZSB6ZXJvIGhlcmUgdG8gaW5oaWJpdCB0aGUgZXJyb3IgbWVzc2FnZSBgZ2V0b3B0JyBwcmludHMKKyAgIGZvciB1bnJlY29nbml6ZWQgb3B0aW9ucy4gICovCisKK2V4dGVybiBpbnQgb3B0ZXJyOworCisvKiBTZXQgdG8gYW4gb3B0aW9uIGNoYXJhY3RlciB3aGljaCB3YXMgdW5yZWNvZ25pemVkLiAgKi8KKworZXh0ZXJuIGludCBvcHRvcHQ7CisKKy8qIERlc2NyaWJlIHRoZSBsb25nLW5hbWVkIG9wdGlvbnMgcmVxdWVzdGVkIGJ5IHRoZSBhcHBsaWNhdGlvbi4KKyAgIFRoZSBMT05HX09QVElPTlMgYXJndW1lbnQgdG8gZ2V0b3B0X2xvbmcgb3IgZ2V0b3B0X2xvbmdfb25seSBpcyBhIHZlY3RvcgorICAgb2YgYHN0cnVjdCBvcHRpb24nIHRlcm1pbmF0ZWQgYnkgYW4gZWxlbWVudCBjb250YWluaW5nIGEgbmFtZSB3aGljaCBpcworICAgemVyby4KKworICAgVGhlIGZpZWxkIGBoYXNfYXJnJyBpczoKKyAgIG5vX2FyZ3VtZW50CQkob3IgMCkgaWYgdGhlIG9wdGlvbiBkb2VzIG5vdCB0YWtlIGFuIGFyZ3VtZW50LAorICAgcmVxdWlyZWRfYXJndW1lbnQJKG9yIDEpIGlmIHRoZSBvcHRpb24gcmVxdWlyZXMgYW4gYXJndW1lbnQsCisgICBvcHRpb25hbF9hcmd1bWVudCAJKG9yIDIpIGlmIHRoZSBvcHRpb24gdGFrZXMgYW4gb3B0aW9uYWwgYXJndW1lbnQuCisKKyAgIElmIHRoZSBmaWVsZCBgZmxhZycgaXMgbm90IE5VTEwsIGl0IHBvaW50cyB0byBhIHZhcmlhYmxlIHRoYXQgaXMgc2V0CisgICB0byB0aGUgdmFsdWUgZ2l2ZW4gaW4gdGhlIGZpZWxkIGB2YWwnIHdoZW4gdGhlIG9wdGlvbiBpcyBmb3VuZCwgYnV0CisgICBsZWZ0IHVuY2hhbmdlZCBpZiB0aGUgb3B0aW9uIGlzIG5vdCBmb3VuZC4KKworICAgVG8gaGF2ZSBhIGxvbmctbmFtZWQgb3B0aW9uIGRvIHNvbWV0aGluZyBvdGhlciB0aGFuIHNldCBhbiBgaW50JyB0bworICAgYSBjb21waWxlZC1pbiBjb25zdGFudCwgc3VjaCBhcyBzZXQgYSB2YWx1ZSBmcm9tIGBvcHRhcmcnLCBzZXQgdGhlCisgICBvcHRpb24ncyBgZmxhZycgZmllbGQgdG8gemVybyBhbmQgaXRzIGB2YWwnIGZpZWxkIHRvIGEgbm9uemVybworICAgdmFsdWUgKHRoZSBlcXVpdmFsZW50IHNpbmdsZS1sZXR0ZXIgb3B0aW9uIGNoYXJhY3RlciwgaWYgdGhlcmUgaXMKKyAgIG9uZSkuICBGb3IgbG9uZyBvcHRpb25zIHRoYXQgaGF2ZSBhIHplcm8gYGZsYWcnIGZpZWxkLCBgZ2V0b3B0JworICAgcmV0dXJucyB0aGUgY29udGVudHMgb2YgdGhlIGB2YWwnIGZpZWxkLiAgKi8KKworc3RydWN0IG9wdGlvbgoreworI2lmIGRlZmluZWQgKF9fU1REQ19fKSAmJiBfX1NURENfXworICBjb25zdCBjaGFyICpuYW1lOworI2Vsc2UKKyAgY2hhciAqbmFtZTsKKyNlbmRpZgorICAvKiBoYXNfYXJnIGNhbid0IGJlIGFuIGVudW0gYmVjYXVzZSBzb21lIGNvbXBpbGVycyBjb21wbGFpbiBhYm91dAorICAgICB0eXBlIG1pc21hdGNoZXMgaW4gYWxsIHRoZSBjb2RlIHRoYXQgYXNzdW1lcyBpdCBpcyBhbiBpbnQuICAqLworICBpbnQgaGFzX2FyZzsKKyAgaW50ICpmbGFnOworICBpbnQgdmFsOworfTsKKworLyogTmFtZXMgZm9yIHRoZSB2YWx1ZXMgb2YgdGhlIGBoYXNfYXJnJyBmaWVsZCBvZiBgc3RydWN0IG9wdGlvbicuICAqLworCisjZGVmaW5lCW5vX2FyZ3VtZW50CQkwCisjZGVmaW5lIHJlcXVpcmVkX2FyZ3VtZW50CTEKKyNkZWZpbmUgb3B0aW9uYWxfYXJndW1lbnQJMgorCisjaWYgZGVmaW5lZCAoX19TVERDX18pICYmIF9fU1REQ19fCisjaWZkZWYgX19HTlVfTElCUkFSWV9fCisvKiBNYW55IG90aGVyIGxpYnJhcmllcyBoYXZlIGNvbmZsaWN0aW5nIHByb3RvdHlwZXMgZm9yIGdldG9wdCwgd2l0aAorICAgZGlmZmVyZW5jZXMgaW4gdGhlIGNvbnN0cywgaW4gc3RkbGliLmguICBUbyBhdm9pZCBjb21waWxhdGlvbgorICAgZXJyb3JzLCBvbmx5IHByb3RvdHlwZSBnZXRvcHQgZm9yIHRoZSBHTlUgQyBsaWJyYXJ5LiAgKi8KK2V4dGVybiBpbnQgZ2V0b3B0IChpbnQgYXJnYywgY2hhciAqY29uc3QgKmFyZ3YsIGNvbnN0IGNoYXIgKnNob3J0b3B0cyk7CisjZWxzZSAvKiBub3QgX19HTlVfTElCUkFSWV9fICovCisKKyNlbmRpZiAvKiBfX0dOVV9MSUJSQVJZX18gKi8KK2V4dGVybiBpbnQgZ2V0b3B0X2xvbmcgKGludCBhcmdjLCBjaGFyICpjb25zdCAqYXJndiwgY29uc3QgY2hhciAqc2hvcnRvcHRzLAorCQkgICAgICAgIGNvbnN0IHN0cnVjdCBvcHRpb24gKmxvbmdvcHRzLCBpbnQgKmxvbmdpbmQpOworZXh0ZXJuIGludCBnZXRvcHRfbG9uZ19vbmx5IChpbnQgYXJnYywgY2hhciAqY29uc3QgKmFyZ3YsCisJCQkgICAgIGNvbnN0IGNoYXIgKnNob3J0b3B0cywKKwkJICAgICAgICAgICAgIGNvbnN0IHN0cnVjdCBvcHRpb24gKmxvbmdvcHRzLCBpbnQgKmxvbmdpbmQpOworCisvKiBJbnRlcm5hbCBvbmx5LiAgVXNlcnMgc2hvdWxkIG5vdCBjYWxsIHRoaXMgZGlyZWN0bHkuICAqLworZXh0ZXJuIGludCBfZ2V0b3B0X2ludGVybmFsIChpbnQgYXJnYywgY2hhciAqY29uc3QgKmFyZ3YsCisJCQkgICAgIGNvbnN0IGNoYXIgKnNob3J0b3B0cywKKwkJICAgICAgICAgICAgIGNvbnN0IHN0cnVjdCBvcHRpb24gKmxvbmdvcHRzLCBpbnQgKmxvbmdpbmQsCisJCQkgICAgIGludCBsb25nX29ubHkpOworI2Vsc2UgLyogbm90IF9fU1REQ19fICovCitleHRlcm4gaW50IGdldG9wdCAoKTsKK2V4dGVybiBpbnQgZ2V0b3B0X2xvbmcgKCk7CitleHRlcm4gaW50IGdldG9wdF9sb25nX29ubHkgKCk7CisKK2V4dGVybiBpbnQgX2dldG9wdF9pbnRlcm5hbCAoKTsKKyNlbmRpZiAvKiBfX1NURENfXyAqLworCisjaWZkZWYJX19jcGx1c3BsdXMKK30KKyNlbmRpZgorCisjZW5kaWYgLyogX0dFVE9QVF9IICovCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2xpYi9jb21wYXQvZ2V0b3B0MS5jIGIvZHBrZy0xLjE2LjEuMS9saWIvY29tcGF0L2dldG9wdDEuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iNTFiZTdmCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9saWIvY29tcGF0L2dldG9wdDEuYwpAQCAtMCwwICsxLDE5MSBAQAorLyogZ2V0b3B0X2xvbmcgYW5kIGdldG9wdF9sb25nX29ubHkgZW50cnkgcG9pbnRzIGZvciBHTlUgZ2V0b3B0LgorICAgQ29weXJpZ2h0IChDKSAxOTg3LDg4LDg5LDkwLDkxLDkyLDkzLDk0LDk2LDk3IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgorCisgICB0aGUgQyBsaWJyYXJ5LCBob3dldmVyLiAgVGhlIG1hc3RlciBzb3VyY2UgbGl2ZXMgaW4gL2dkL2dudS9saWIuCisKK05PVEU6IFRoZSBjYW5vbmljYWwgc291cmNlIG9mIHRoaXMgZmlsZSBpcyBtYWludGFpbmVkIHdpdGggdGhlIEdOVSBDIExpYnJhcnkuCitCdWdzIGNhbiBiZSByZXBvcnRlZCB0byBidWctZ2xpYmNAcHJlcC5haS5taXQuZWR1LgorCitUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeSBpdAordW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlCitGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55CitsYXRlciB2ZXJzaW9uLgorCitUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKK2J1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCitNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCitHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorCitZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKK0ZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSAtIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3LAorVVNBLiAgKi8KKwwKKyNpZmRlZiBIQVZFX0NPTkZJR19ICisjaW5jbHVkZSA8Y29uZmlnLmg+CisjZW5kaWYKKworI2luY2x1ZGUgImdldG9wdC5oIgorCisjaWYgIWRlZmluZWQgKF9fU1REQ19fKSB8fCAhX19TVERDX18KKy8qIFRoaXMgaXMgYSBzZXBhcmF0ZSBjb25kaXRpb25hbCBzaW5jZSBzb21lIHN0ZGMgc3lzdGVtcworICAgcmVqZWN0IGBkZWZpbmVkIChjb25zdCknLiAgKi8KKyNpZm5kZWYgY29uc3QKKyNkZWZpbmUgY29uc3QKKyNlbmRpZgorI2VuZGlmCisKKyNpbmNsdWRlIDxzdGRpby5oPgorCisvKiBDb21tZW50IG91dCBhbGwgdGhpcyBjb2RlIGlmIHdlIGFyZSB1c2luZyB0aGUgR05VIEMgTGlicmFyeSwgYW5kIGFyZSBub3QKKyAgIGFjdHVhbGx5IGNvbXBpbGluZyB0aGUgbGlicmFyeSBpdHNlbGYuICBUaGlzIGNvZGUgaXMgcGFydCBvZiB0aGUgR05VIEMKKyAgIExpYnJhcnksIGJ1dCBhbHNvIGluY2x1ZGVkIGluIG1hbnkgb3RoZXIgR05VIGRpc3RyaWJ1dGlvbnMuICBDb21waWxpbmcKKyAgIGFuZCBsaW5raW5nIGluIHRoaXMgY29kZSBpcyBhIHdhc3RlIHdoZW4gdXNpbmcgdGhlIEdOVSBDIGxpYnJhcnkKKyAgIChlc3BlY2lhbGx5IGlmIGl0IGlzIGEgc2hhcmVkIGxpYnJhcnkpLiAgUmF0aGVyIHRoYW4gaGF2aW5nIGV2ZXJ5IEdOVQorICAgcHJvZ3JhbSB1bmRlcnN0YW5kIGBjb25maWd1cmUgLS13aXRoLWdudS1saWJjJyBhbmQgb21pdCB0aGUgb2JqZWN0IGZpbGVzLAorICAgaXQgaXMgc2ltcGxlciB0byBqdXN0IGRvIHRoaXMgaW4gdGhlIHNvdXJjZSBmb3IgZWFjaCBzdWNoIGZpbGUuICAqLworCisjZGVmaW5lIEdFVE9QVF9JTlRFUkZBQ0VfVkVSU0lPTiAyCisjaWYgIWRlZmluZWQgKF9MSUJDKSAmJiBkZWZpbmVkIChfX0dMSUJDX18pICYmIF9fR0xJQkNfXyA+PSAyCisjaW5jbHVkZSA8Z251LXZlcnNpb25zLmg+CisjaWYgX0dOVV9HRVRPUFRfSU5URVJGQUNFX1ZFUlNJT04gPT0gR0VUT1BUX0lOVEVSRkFDRV9WRVJTSU9OCisjZGVmaW5lIEVMSURFX0NPREUKKyNlbmRpZgorI2VuZGlmCisKKyNpZm5kZWYgRUxJREVfQ09ERQorCisKKy8qIFRoaXMgbmVlZHMgdG8gY29tZSBhZnRlciBzb21lIGxpYnJhcnkgI2luY2x1ZGUKKyAgIHRvIGdldCBfX0dOVV9MSUJSQVJZX18gZGVmaW5lZC4gICovCisjaWZkZWYgX19HTlVfTElCUkFSWV9fCisjaW5jbHVkZSA8c3RkbGliLmg+CisjZW5kaWYKKworI2lmbmRlZglOVUxMCisjZGVmaW5lIE5VTEwgMAorI2VuZGlmCisKK2ludAorZ2V0b3B0X2xvbmcgKGFyZ2MsIGFyZ3YsIG9wdGlvbnMsIGxvbmdfb3B0aW9ucywgb3B0X2luZGV4KQorICAgICBpbnQgYXJnYzsKKyAgICAgY2hhciAqY29uc3QgKmFyZ3Y7CisgICAgIGNvbnN0IGNoYXIgKm9wdGlvbnM7CisgICAgIGNvbnN0IHN0cnVjdCBvcHRpb24gKmxvbmdfb3B0aW9uczsKKyAgICAgaW50ICpvcHRfaW5kZXg7Cit7CisgIHJldHVybiBfZ2V0b3B0X2ludGVybmFsIChhcmdjLCBhcmd2LCBvcHRpb25zLCBsb25nX29wdGlvbnMsIG9wdF9pbmRleCwgMCk7Cit9CisKKy8qIExpa2UgZ2V0b3B0X2xvbmcsIGJ1dCAnLScgYXMgd2VsbCBhcyAnLS0nIGNhbiBpbmRpY2F0ZSBhIGxvbmcgb3B0aW9uLgorICAgSWYgYW4gb3B0aW9uIHRoYXQgc3RhcnRzIHdpdGggJy0nIChub3QgJy0tJykgZG9lc24ndCBtYXRjaCBhIGxvbmcgb3B0aW9uLAorICAgYnV0IGRvZXMgbWF0Y2ggYSBzaG9ydCBvcHRpb24sIGl0IGlzIHBhcnNlZCBhcyBhIHNob3J0IG9wdGlvbgorICAgaW5zdGVhZC4gICovCisKK2ludAorZ2V0b3B0X2xvbmdfb25seSAoYXJnYywgYXJndiwgb3B0aW9ucywgbG9uZ19vcHRpb25zLCBvcHRfaW5kZXgpCisgICAgIGludCBhcmdjOworICAgICBjaGFyICpjb25zdCAqYXJndjsKKyAgICAgY29uc3QgY2hhciAqb3B0aW9uczsKKyAgICAgY29uc3Qgc3RydWN0IG9wdGlvbiAqbG9uZ19vcHRpb25zOworICAgICBpbnQgKm9wdF9pbmRleDsKK3sKKyAgcmV0dXJuIF9nZXRvcHRfaW50ZXJuYWwgKGFyZ2MsIGFyZ3YsIG9wdGlvbnMsIGxvbmdfb3B0aW9ucywgb3B0X2luZGV4LCAxKTsKK30KKworCisjZW5kaWYJLyogTm90IEVMSURFX0NPREUuICAqLworDAorI2lmZGVmIFRFU1QKKworI2luY2x1ZGUgPHN0ZGlvLmg+CisKK2ludAorbWFpbiAoYXJnYywgYXJndikKKyAgICAgaW50IGFyZ2M7CisgICAgIGNoYXIgKiphcmd2OworeworICBpbnQgYzsKKyAgaW50IGRpZ2l0X29wdGluZCA9IDA7CisKKyAgd2hpbGUgKDEpCisgICAgeworICAgICAgaW50IHRoaXNfb3B0aW9uX29wdGluZCA9IG9wdGluZCA/IG9wdGluZCA6IDE7CisgICAgICBpbnQgb3B0aW9uX2luZGV4ID0gMDsKKyAgICAgIHN0YXRpYyBzdHJ1Y3Qgb3B0aW9uIGxvbmdfb3B0aW9uc1tdID0KKyAgICAgIHsKKwl7ImFkZCIsIDEsIDAsIDB9LAorCXsiYXBwZW5kIiwgMCwgMCwgMH0sCisJeyJkZWxldGUiLCAxLCAwLCAwfSwKKwl7InZlcmJvc2UiLCAwLCAwLCAwfSwKKwl7ImNyZWF0ZSIsIDAsIDAsIDB9LAorCXsiZmlsZSIsIDEsIDAsIDB9LAorCXswLCAwLCAwLCAwfQorICAgICAgfTsKKworICAgICAgYyA9IGdldG9wdF9sb25nIChhcmdjLCBhcmd2LCAiYWJjOmQ6MDEyMzQ1Njc4OSIsCisJCSAgICAgICBsb25nX29wdGlvbnMsICZvcHRpb25faW5kZXgpOworICAgICAgaWYgKGMgPT0gLTEpCisJYnJlYWs7CisKKyAgICAgIHN3aXRjaCAoYykKKwl7CisJY2FzZSAwOgorCSAgcHJpbnRmICgib3B0aW9uICVzIiwgbG9uZ19vcHRpb25zW29wdGlvbl9pbmRleF0ubmFtZSk7CisJICBpZiAob3B0YXJnKQorCSAgICBwcmludGYgKCIgd2l0aCBhcmcgJXMiLCBvcHRhcmcpOworCSAgcHJpbnRmICgiXG4iKTsKKwkgIGJyZWFrOworCisJY2FzZSAnMCc6CisJY2FzZSAnMSc6CisJY2FzZSAnMic6CisJY2FzZSAnMyc6CisJY2FzZSAnNCc6CisJY2FzZSAnNSc6CisJY2FzZSAnNic6CisJY2FzZSAnNyc6CisJY2FzZSAnOCc6CisJY2FzZSAnOSc6CisJICBpZiAoZGlnaXRfb3B0aW5kICE9IDAgJiYgZGlnaXRfb3B0aW5kICE9IHRoaXNfb3B0aW9uX29wdGluZCkKKwkgICAgcHJpbnRmICgiZGlnaXRzIG9jY3VyIGluIHR3byBkaWZmZXJlbnQgYXJndi1lbGVtZW50cy5cbiIpOworCSAgZGlnaXRfb3B0aW5kID0gdGhpc19vcHRpb25fb3B0aW5kOworCSAgcHJpbnRmICgib3B0aW9uICVjXG4iLCBjKTsKKwkgIGJyZWFrOworCisJY2FzZSAnYSc6CisJICBwcmludGYgKCJvcHRpb24gYVxuIik7CisJICBicmVhazsKKworCWNhc2UgJ2InOgorCSAgcHJpbnRmICgib3B0aW9uIGJcbiIpOworCSAgYnJlYWs7CisKKwljYXNlICdjJzoKKwkgIHByaW50ZiAoIm9wdGlvbiBjIHdpdGggdmFsdWUgYCVzJ1xuIiwgb3B0YXJnKTsKKwkgIGJyZWFrOworCisJY2FzZSAnZCc6CisJICBwcmludGYgKCJvcHRpb24gZCB3aXRoIHZhbHVlIGAlcydcbiIsIG9wdGFyZyk7CisJICBicmVhazsKKworCWNhc2UgJz8nOgorCSAgYnJlYWs7CisKKwlkZWZhdWx0OgorCSAgcHJpbnRmICgiPz8gZ2V0b3B0IHJldHVybmVkIGNoYXJhY3RlciBjb2RlIDAlbyA/P1xuIiwgYyk7CisJfQorICAgIH0KKworICBpZiAob3B0aW5kIDwgYXJnYykKKyAgICB7CisgICAgICBwcmludGYgKCJub24tb3B0aW9uIEFSR1YtZWxlbWVudHM6ICIpOworICAgICAgd2hpbGUgKG9wdGluZCA8IGFyZ2MpCisJcHJpbnRmICgiJXMgIiwgYXJndltvcHRpbmQrK10pOworICAgICAgcHJpbnRmICgiXG4iKTsKKyAgICB9CisKKyAgZXhpdCAoMCk7Cit9CisKKyNlbmRpZiAvKiBURVNUICovCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2xpYi9jb21wYXQvZ2V0dGV4dC5oIGIvZHBrZy0xLjE2LjEuMS9saWIvY29tcGF0L2dldHRleHQuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yZDY1NGI3Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9saWIvY29tcGF0L2dldHRleHQuaApAQCAtMCwwICsxLDMwMyBAQAorLyogQ29udmVuaWVuY2UgaGVhZGVyIGZvciBjb25kaXRpb25hbCB1c2Ugb2YgR05VIDxsaWJpbnRsLmg+LgorICAgQ29weXJpZ2h0IChDKSAxOTk1LTE5OTgsIDIwMDAtMjAwMiwgMjAwNC0yMDA2IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgorCisgICBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeSBpdAorICAgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQKKyAgIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIsIG9yIChhdCB5b3VyIG9wdGlvbikKKyAgIGFueSBsYXRlciB2ZXJzaW9uLgorCisgICBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAgIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgICBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVQorICAgTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisKKyAgIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYworICAgTGljZW5zZSBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQorICAgRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0LCBGaWZ0aCBGbG9vciwgQm9zdG9uLCBNQSAwMjExMC0xMzAxLAorICAgVVNBLiAgKi8KKworI2lmbmRlZiBfTElCR0VUVEVYVF9ICisjZGVmaW5lIF9MSUJHRVRURVhUX0ggMQorCisvKiBOTFMgY2FuIGJlIGRpc2FibGVkIHRocm91Z2ggdGhlIGNvbmZpZ3VyZSAtLWRpc2FibGUtbmxzIG9wdGlvbi4gICovCisjaWYgRU5BQkxFX05MUworCisvKiBHZXQgZGVjbGFyYXRpb25zIG9mIEdOVSBtZXNzYWdlIGNhdGFsb2cgZnVuY3Rpb25zLiAgKi8KKyMgaW5jbHVkZSA8bGliaW50bC5oPgorCisvKiBZb3UgY2FuIHNldCB0aGUgREVGQVVMVF9URVhUX0RPTUFJTiBtYWNybyB0byBzcGVjaWZ5IHRoZSBkb21haW4gdXNlZCBieQorICAgdGhlIGdldHRleHQoKSBhbmQgbmdldHRleHQoKSBtYWNyb3MuICBUaGlzIGlzIGFuIGFsdGVybmF0aXZlIHRvIGNhbGxpbmcKKyAgIHRleHRkb21haW4oKSwgYW5kIGlzIHVzZWZ1bCBmb3IgbGlicmFyaWVzLiAgKi8KKyMgaWZkZWYgREVGQVVMVF9URVhUX0RPTUFJTgorIyAgdW5kZWYgZ2V0dGV4dAorIyAgZGVmaW5lIGdldHRleHQoTXNnaWQpIFwKKyAgICAgZGdldHRleHQgKERFRkFVTFRfVEVYVF9ET01BSU4sIE1zZ2lkKQorIyAgdW5kZWYgbmdldHRleHQKKyMgIGRlZmluZSBuZ2V0dGV4dChNc2dpZDEsIE1zZ2lkMiwgTikgXAorICAgICBkbmdldHRleHQgKERFRkFVTFRfVEVYVF9ET01BSU4sIE1zZ2lkMSwgTXNnaWQyLCBOKQorIyBlbmRpZgorCisjZWxzZQorCisvKiBTb2xhcmlzIC91c3IvaW5jbHVkZS9sb2NhbGUuaCBpbmNsdWRlcyAvdXNyL2luY2x1ZGUvbGliaW50bC5oLCB3aGljaAorICAgY2hva2VzIGlmIGRjZ2V0dGV4dCBpcyBkZWZpbmVkIGFzIGEgbWFjcm8uICBTbyBpbmNsdWRlIGl0IG5vdywgdG8gbWFrZQorICAgbGF0ZXIgaW5jbHVzaW9ucyBvZiA8bG9jYWxlLmg+IGEgTk9QLiAgV2UgZG9uJ3QgaW5jbHVkZSA8bGliaW50bC5oPgorICAgYXMgd2VsbCBiZWNhdXNlIHBlb3BsZSB1c2luZyAiZ2V0dGV4dC5oIiB3aWxsIG5vdCBpbmNsdWRlIDxsaWJpbnRsLmg+LAorICAgYW5kIGFsc28gaW5jbHVkaW5nIDxsaWJpbnRsLmg+IHdvdWxkIGZhaWwgb24gU3VuT1MgNCwgd2hlcmVhcyA8bG9jYWxlLmg+CisgICBpcyBPSy4gICovCisjaWYgZGVmaW5lZChfX3N1bikKKyMgaW5jbHVkZSA8bG9jYWxlLmg+CisjZW5kaWYKKworLyogTWFueSBoZWFkZXIgZmlsZXMgZnJvbSB0aGUgbGlic3RkYysrIGNvbWluZyB3aXRoIGcrKyAzLjMgb3IgbmV3ZXIgaW5jbHVkZQorICAgPGxpYmludGwuaD4sIHdoaWNoIGNob2tlcyBpZiBkY2dldHRleHQgaXMgZGVmaW5lZCBhcyBhIG1hY3JvLiAgU28gaW5jbHVkZQorICAgaXQgbm93LCB0byBtYWtlIGxhdGVyIGluY2x1c2lvbnMgb2YgPGxpYmludGwuaD4gYSBOT1AuICAqLworI2lmIGRlZmluZWQoX19jcGx1c3BsdXMpICYmIGRlZmluZWQoX19HTlVHX18pICYmIChfX0dOVUNfXyA+PSAzKQorIyBpbmNsdWRlIDxjc3RkbGliPgorIyBpZiBIQVZFX0xJQklOVExfSCB8fCBfR0xJQkNYWF9IQVZFX0xJQklOVExfSAorIyAgaW5jbHVkZSA8bGliaW50bC5oPgorIyBlbmRpZgorI2VuZGlmCisKKy8qIERpc2FibGVkIE5MUy4KKyAgIFRoZSBjYXN0cyB0byAnY29uc3QgY2hhciAqJyBzZXJ2ZSB0aGUgcHVycG9zZSBvZiBwcm9kdWNpbmcgd2FybmluZ3MKKyAgIGZvciBpbnZhbGlkIHVzZXMgb2YgdGhlIHZhbHVlIHJldHVybmVkIGZyb20gdGhlc2UgZnVuY3Rpb25zLgorICAgT24gcHJlLUFOU0kgc3lzdGVtcyB3aXRob3V0ICdjb25zdCcsIHRoZSBjb25maWcuaCBmaWxlIGlzIHN1cHBvc2VkIHRvCisgICBjb250YWluICIjZGVmaW5lIGNvbnN0Ii4gICovCisjIGRlZmluZSBnZXR0ZXh0KE1zZ2lkKSAoKGNvbnN0IGNoYXIgKikgKE1zZ2lkKSkKKyMgZGVmaW5lIGRnZXR0ZXh0KERvbWFpbm5hbWUsIE1zZ2lkKSAoKHZvaWQpIChEb21haW5uYW1lKSwgZ2V0dGV4dCAoTXNnaWQpKQorIyBkZWZpbmUgZGNnZXR0ZXh0KERvbWFpbm5hbWUsIE1zZ2lkLCBDYXRlZ29yeSkgXAorICAgICgodm9pZCkgKENhdGVnb3J5KSwgZGdldHRleHQgKERvbWFpbm5hbWUsIE1zZ2lkKSkKKyMgZGVmaW5lIG5nZXR0ZXh0KE1zZ2lkMSwgTXNnaWQyLCBOKSBcCisgICAgKChOKSA9PSAxIFwKKyAgICAgPyAoKHZvaWQpIChNc2dpZDIpLCAoY29uc3QgY2hhciAqKSAoTXNnaWQxKSkgXAorICAgICA6ICgodm9pZCkgKE1zZ2lkMSksIChjb25zdCBjaGFyICopIChNc2dpZDIpKSkKKyMgZGVmaW5lIGRuZ2V0dGV4dChEb21haW5uYW1lLCBNc2dpZDEsIE1zZ2lkMiwgTikgXAorICAgICgodm9pZCkgKERvbWFpbm5hbWUpLCBuZ2V0dGV4dCAoTXNnaWQxLCBNc2dpZDIsIE4pKQorIyBkZWZpbmUgZGNuZ2V0dGV4dChEb21haW5uYW1lLCBNc2dpZDEsIE1zZ2lkMiwgTiwgQ2F0ZWdvcnkpIFwKKyAgICAoKHZvaWQpIChDYXRlZ29yeSksIGRuZ2V0dGV4dChEb21haW5uYW1lLCBNc2dpZDEsIE1zZ2lkMiwgTikpCisjIGRlZmluZSB0ZXh0ZG9tYWluKERvbWFpbm5hbWUpICgoY29uc3QgY2hhciAqKSAoRG9tYWlubmFtZSkpCisjIGRlZmluZSBiaW5kdGV4dGRvbWFpbihEb21haW5uYW1lLCBEaXJuYW1lKSBcCisgICAgKCh2b2lkKSAoRG9tYWlubmFtZSksIChjb25zdCBjaGFyICopIChEaXJuYW1lKSkKKyMgZGVmaW5lIGJpbmRfdGV4dGRvbWFpbl9jb2Rlc2V0KERvbWFpbm5hbWUsIENvZGVzZXQpIFwKKyAgICAoKHZvaWQpIChEb21haW5uYW1lKSwgKGNvbnN0IGNoYXIgKikgKENvZGVzZXQpKQorCisjZW5kaWYKKworLyogQSBwc2V1ZG8gZnVuY3Rpb24gY2FsbCB0aGF0IHNlcnZlcyBhcyBhIG1hcmtlciBmb3IgdGhlIGF1dG9tYXRlZAorICAgZXh0cmFjdGlvbiBvZiBtZXNzYWdlcywgYnV0IGRvZXMgbm90IGNhbGwgZ2V0dGV4dCgpLiAgVGhlIHJ1bi10aW1lCisgICB0cmFuc2xhdGlvbiBpcyBkb25lIGF0IGEgZGlmZmVyZW50IHBsYWNlIGluIHRoZSBjb2RlLgorICAgVGhlIGFyZ3VtZW50LCBTdHJpbmcsIHNob3VsZCBiZSBhIGxpdGVyYWwgc3RyaW5nLiAgQ29uY2F0ZW5hdGVkIHN0cmluZ3MKKyAgIGFuZCBvdGhlciBzdHJpbmcgZXhwcmVzc2lvbnMgd29uJ3Qgd29yay4KKyAgIFRoZSBtYWNybydzIGV4cGFuc2lvbiBpcyBub3QgcGFyZW50aGVzaXplZCwgc28gdGhhdCBpdCBpcyBzdWl0YWJsZSBhcworICAgaW5pdGlhbGl6ZXIgZm9yIHN0YXRpYyAnY2hhcltdJyBvciAnY29uc3QgY2hhcltdJyB2YXJpYWJsZXMuICAqLworI2RlZmluZSBnZXR0ZXh0X25vb3AoU3RyaW5nKSBTdHJpbmcKKworLyogVGhlIHNlcGFyYXRvciBiZXR3ZWVuIG1zZ2N0eHQgYW5kIG1zZ2lkIGluIGEgLm1vIGZpbGUuICAqLworI2RlZmluZSBHRVRURVhUX0NPTlRFWFRfR0xVRSAiXDAwNCIKKworI2lmIEVOQUJMRV9OTFMKKworLyogUHNldWRvIGZ1bmN0aW9uIGNhbGxzLCB0YWtpbmcgYSBNU0dDVFhUIGFuZCBhIE1TR0lEIGluc3RlYWQgb2YganVzdCBhCisgICBNU0dJRC4gIE1TR0NUWFQgYW5kIE1TR0lEIG11c3QgYmUgc3RyaW5nIGxpdGVyYWxzLiAgTVNHQ1RYVCBzaG91bGQgYmUKKyAgIHNob3J0IGFuZCByYXJlbHkgbmVlZCB0byBjaGFuZ2UuCisgICBUaGUgbGV0dGVyICdwJyBzdGFuZHMgZm9yICdwYXJ0aWN1bGFyJyBvciAnc3BlY2lhbCcuICAqLworI2lmZGVmIERFRkFVTFRfVEVYVF9ET01BSU4KKyMgZGVmaW5lIHBnZXR0ZXh0KE1zZ2N0eHQsIE1zZ2lkKSBcCisgICBwZ2V0dGV4dF9hdXggKERFRkFVTFRfVEVYVF9ET01BSU4sIE1zZ2N0eHQgR0VUVEVYVF9DT05URVhUX0dMVUUgTXNnaWQsIE1zZ2lkLCBMQ19NRVNTQUdFUykKKyNlbHNlCisjIGRlZmluZSBwZ2V0dGV4dChNc2djdHh0LCBNc2dpZCkgXAorICAgcGdldHRleHRfYXV4IChOVUxMLCBNc2djdHh0IEdFVFRFWFRfQ09OVEVYVF9HTFVFIE1zZ2lkLCBNc2dpZCwgTENfTUVTU0FHRVMpCisjZW5kaWYKKyNkZWZpbmUgZHBnZXR0ZXh0KERvbWFpbm5hbWUsIE1zZ2N0eHQsIE1zZ2lkKSBcCisgIHBnZXR0ZXh0X2F1eCAoRG9tYWlubmFtZSwgTXNnY3R4dCBHRVRURVhUX0NPTlRFWFRfR0xVRSBNc2dpZCwgTXNnaWQsIExDX01FU1NBR0VTKQorI2RlZmluZSBkY3BnZXR0ZXh0KERvbWFpbm5hbWUsIE1zZ2N0eHQsIE1zZ2lkLCBDYXRlZ29yeSkgXAorICBwZ2V0dGV4dF9hdXggKERvbWFpbm5hbWUsIE1zZ2N0eHQgR0VUVEVYVF9DT05URVhUX0dMVUUgTXNnaWQsIE1zZ2lkLCBDYXRlZ29yeSkKKyNpZmRlZiBERUZBVUxUX1RFWFRfRE9NQUlOCisjIGRlZmluZSBucGdldHRleHQoTXNnY3R4dCwgTXNnaWQsIE1zZ2lkUGx1cmFsLCBOKSBcCisgICBucGdldHRleHRfYXV4IChERUZBVUxUX1RFWFRfRE9NQUlOLCBNc2djdHh0IEdFVFRFWFRfQ09OVEVYVF9HTFVFIE1zZ2lkLCBNc2dpZCwgTXNnaWRQbHVyYWwsIE4sIExDX01FU1NBR0VTKQorI2Vsc2UKKyMgZGVmaW5lIG5wZ2V0dGV4dChNc2djdHh0LCBNc2dpZCwgTXNnaWRQbHVyYWwsIE4pIFwKKyAgIG5wZ2V0dGV4dF9hdXggKE5VTEwsIE1zZ2N0eHQgR0VUVEVYVF9DT05URVhUX0dMVUUgTXNnaWQsIE1zZ2lkLCBNc2dpZFBsdXJhbCwgTiwgTENfTUVTU0FHRVMpCisjZW5kaWYKKyNkZWZpbmUgZG5wZ2V0dGV4dChEb21haW5uYW1lLCBNc2djdHh0LCBNc2dpZCwgTXNnaWRQbHVyYWwsIE4pIFwKKyAgbnBnZXR0ZXh0X2F1eCAoRG9tYWlubmFtZSwgTXNnY3R4dCBHRVRURVhUX0NPTlRFWFRfR0xVRSBNc2dpZCwgTXNnaWQsIE1zZ2lkUGx1cmFsLCBOLCBMQ19NRVNTQUdFUykKKyNkZWZpbmUgZGNucGdldHRleHQoRG9tYWlubmFtZSwgTXNnY3R4dCwgTXNnaWQsIE1zZ2lkUGx1cmFsLCBOLCBDYXRlZ29yeSkgXAorICBucGdldHRleHRfYXV4IChEb21haW5uYW1lLCBNc2djdHh0IEdFVFRFWFRfQ09OVEVYVF9HTFVFIE1zZ2lkLCBNc2dpZCwgTXNnaWRQbHVyYWwsIE4sIENhdGVnb3J5KQorCisjaWZkZWYgX19HTlVDX18KK19faW5saW5lCisjZWxzZQorI2lmZGVmIF9fY3BsdXNwbHVzCitpbmxpbmUKKyNlbmRpZgorI2VuZGlmCitzdGF0aWMgY29uc3QgY2hhciAqCitwZ2V0dGV4dF9hdXggKGNvbnN0IGNoYXIgKmRvbWFpbiwKKwkgICAgICBjb25zdCBjaGFyICptc2dfY3R4dF9pZCwgY29uc3QgY2hhciAqbXNnaWQsCisJICAgICAgaW50IGNhdGVnb3J5KQoreworICBjb25zdCBjaGFyICp0cmFuc2xhdGlvbiA9IGRjZ2V0dGV4dCAoZG9tYWluLCBtc2dfY3R4dF9pZCwgY2F0ZWdvcnkpOworICBpZiAodHJhbnNsYXRpb24gPT0gbXNnX2N0eHRfaWQpCisgICAgcmV0dXJuIG1zZ2lkOworICBlbHNlCisgICAgcmV0dXJuIHRyYW5zbGF0aW9uOworfQorCisjaWZkZWYgX19HTlVDX18KK19faW5saW5lCisjZWxzZQorI2lmZGVmIF9fY3BsdXNwbHVzCitpbmxpbmUKKyNlbmRpZgorI2VuZGlmCitzdGF0aWMgY29uc3QgY2hhciAqCitucGdldHRleHRfYXV4IChjb25zdCBjaGFyICpkb21haW4sCisJICAgICAgIGNvbnN0IGNoYXIgKm1zZ19jdHh0X2lkLCBjb25zdCBjaGFyICptc2dpZCwKKwkgICAgICAgY29uc3QgY2hhciAqbXNnaWRfcGx1cmFsLCB1bnNpZ25lZCBsb25nIGludCBuLAorCSAgICAgICBpbnQgY2F0ZWdvcnkpCit7CisgIGNvbnN0IGNoYXIgKnRyYW5zbGF0aW9uID0KKyAgICBkY25nZXR0ZXh0IChkb21haW4sIG1zZ19jdHh0X2lkLCBtc2dpZF9wbHVyYWwsIG4sIGNhdGVnb3J5KTsKKyAgaWYgKHRyYW5zbGF0aW9uID09IG1zZ19jdHh0X2lkIHx8IHRyYW5zbGF0aW9uID09IG1zZ2lkX3BsdXJhbCkKKyAgICByZXR1cm4gKG4gPT0gMSA/IG1zZ2lkIDogbXNnaWRfcGx1cmFsKTsKKyAgZWxzZQorICAgIHJldHVybiB0cmFuc2xhdGlvbjsKK30KKworLyogVGhlIHNhbWUgdGhpbmcgZXh0ZW5kZWQgZm9yIG5vbi1jb25zdGFudCBhcmd1bWVudHMuICBIZXJlIE1TR0NUWFQgYW5kIE1TR0lECisgICBjYW4gYmUgYXJiaXRyYXJ5IGV4cHJlc3Npb25zLiAgQnV0IGZvciBzdHJpbmcgbGl0ZXJhbHMgdGhlc2UgbWFjcm9zIGFyZQorICAgbGVzcyBlZmZpY2llbnQgdGhhbiB0aG9zZSBhYm92ZS4gICovCisKKyNpbmNsdWRlIDxzdHJpbmcuaD4KKworI2RlZmluZSBfTElCR0VUVEVYVF9IQVZFX1ZBUklBQkxFX1NJWkVfQVJSQVlTIFwKKyAgKCgoX19HTlVDX18gPj0gMyB8fCBfX0dOVUdfXyA+PSAyKSAmJiAhX19TVFJJQ1RfQU5TSV9fKSBcCisgICAvKiB8fCBfX1NURENfVkVSU0lPTl9fID49IDE5OTkwMUwgKi8gKQorCisjaWYgIV9MSUJHRVRURVhUX0hBVkVfVkFSSUFCTEVfU0laRV9BUlJBWVMKKyNpbmNsdWRlIDxzdGRsaWIuaD4KKyNlbmRpZgorCisjZGVmaW5lIHBnZXR0ZXh0X2V4cHIoTXNnY3R4dCwgTXNnaWQpIFwKKyAgZGNwZ2V0dGV4dF9leHByIChOVUxMLCBNc2djdHh0LCBNc2dpZCwgTENfTUVTU0FHRVMpCisjZGVmaW5lIGRwZ2V0dGV4dF9leHByKERvbWFpbm5hbWUsIE1zZ2N0eHQsIE1zZ2lkKSBcCisgIGRjcGdldHRleHRfZXhwciAoRG9tYWlubmFtZSwgTXNnY3R4dCwgTXNnaWQsIExDX01FU1NBR0VTKQorCisjaWZkZWYgX19HTlVDX18KK19faW5saW5lCisjZWxzZQorI2lmZGVmIF9fY3BsdXNwbHVzCitpbmxpbmUKKyNlbmRpZgorI2VuZGlmCitzdGF0aWMgY29uc3QgY2hhciAqCitkY3BnZXR0ZXh0X2V4cHIgKGNvbnN0IGNoYXIgKmRvbWFpbiwKKwkJIGNvbnN0IGNoYXIgKm1zZ2N0eHQsIGNvbnN0IGNoYXIgKm1zZ2lkLAorCQkgaW50IGNhdGVnb3J5KQoreworICBzaXplX3QgbXNnY3R4dF9sZW4gPSBzdHJsZW4gKG1zZ2N0eHQpICsgMTsKKyAgc2l6ZV90IG1zZ2lkX2xlbiA9IHN0cmxlbiAobXNnaWQpICsgMTsKKyAgY29uc3QgY2hhciAqdHJhbnNsYXRpb247CisjaWYgX0xJQkdFVFRFWFRfSEFWRV9WQVJJQUJMRV9TSVpFX0FSUkFZUworICBjaGFyIG1zZ19jdHh0X2lkW21zZ2N0eHRfbGVuICsgbXNnaWRfbGVuXTsKKyNlbHNlCisgIGNoYXIgYnVmWzEwMjRdOworICBjaGFyICptc2dfY3R4dF9pZCA9CisgICAgKG1zZ2N0eHRfbGVuICsgbXNnaWRfbGVuIDw9IHNpemVvZiAoYnVmKQorICAgICA/IGJ1ZgorICAgICA6IChjaGFyICopIG1hbGxvYyAobXNnY3R4dF9sZW4gKyBtc2dpZF9sZW4pKTsKKyAgaWYgKG1zZ19jdHh0X2lkICE9IE5VTEwpCisjZW5kaWYKKyAgICB7CisgICAgICBtZW1jcHkgKG1zZ19jdHh0X2lkLCBtc2djdHh0LCBtc2djdHh0X2xlbiAtIDEpOworICAgICAgbXNnX2N0eHRfaWRbbXNnY3R4dF9sZW4gLSAxXSA9ICdcMDA0JzsKKyAgICAgIG1lbWNweSAobXNnX2N0eHRfaWQgKyBtc2djdHh0X2xlbiwgbXNnaWQsIG1zZ2lkX2xlbik7CisgICAgICB0cmFuc2xhdGlvbiA9IGRjZ2V0dGV4dCAoZG9tYWluLCBtc2dfY3R4dF9pZCwgY2F0ZWdvcnkpOworI2lmICFfTElCR0VUVEVYVF9IQVZFX1ZBUklBQkxFX1NJWkVfQVJSQVlTCisgICAgICBpZiAobXNnX2N0eHRfaWQgIT0gYnVmKQorCWZyZWUgKG1zZ19jdHh0X2lkKTsKKyNlbmRpZgorICAgICAgaWYgKHRyYW5zbGF0aW9uICE9IG1zZ19jdHh0X2lkKQorCXJldHVybiB0cmFuc2xhdGlvbjsKKyAgICB9CisgIHJldHVybiBtc2dpZDsKK30KKworI2RlZmluZSBucGdldHRleHRfZXhwcihNc2djdHh0LCBNc2dpZCwgTXNnaWRQbHVyYWwsIE4pIFwKKyAgZGNucGdldHRleHRfZXhwciAoTlVMTCwgTXNnY3R4dCwgTXNnaWQsIE1zZ2lkUGx1cmFsLCBOLCBMQ19NRVNTQUdFUykKKyNkZWZpbmUgZG5wZ2V0dGV4dF9leHByKERvbWFpbm5hbWUsIE1zZ2N0eHQsIE1zZ2lkLCBNc2dpZFBsdXJhbCwgTikgXAorICBkY25wZ2V0dGV4dF9leHByIChEb21haW5uYW1lLCBNc2djdHh0LCBNc2dpZCwgTXNnaWRQbHVyYWwsIE4sIExDX01FU1NBR0VTKQorCisjaWZkZWYgX19HTlVDX18KK19faW5saW5lCisjZWxzZQorI2lmZGVmIF9fY3BsdXNwbHVzCitpbmxpbmUKKyNlbmRpZgorI2VuZGlmCitzdGF0aWMgY29uc3QgY2hhciAqCitkY25wZ2V0dGV4dF9leHByIChjb25zdCBjaGFyICpkb21haW4sCisJCSAgY29uc3QgY2hhciAqbXNnY3R4dCwgY29uc3QgY2hhciAqbXNnaWQsCisJCSAgY29uc3QgY2hhciAqbXNnaWRfcGx1cmFsLCB1bnNpZ25lZCBsb25nIGludCBuLAorCQkgIGludCBjYXRlZ29yeSkKK3sKKyAgc2l6ZV90IG1zZ2N0eHRfbGVuID0gc3RybGVuIChtc2djdHh0KSArIDE7CisgIHNpemVfdCBtc2dpZF9sZW4gPSBzdHJsZW4gKG1zZ2lkKSArIDE7CisgIGNvbnN0IGNoYXIgKnRyYW5zbGF0aW9uOworI2lmIF9MSUJHRVRURVhUX0hBVkVfVkFSSUFCTEVfU0laRV9BUlJBWVMKKyAgY2hhciBtc2dfY3R4dF9pZFttc2djdHh0X2xlbiArIG1zZ2lkX2xlbl07CisjZWxzZQorICBjaGFyIGJ1ZlsxMDI0XTsKKyAgY2hhciAqbXNnX2N0eHRfaWQgPQorICAgIChtc2djdHh0X2xlbiArIG1zZ2lkX2xlbiA8PSBzaXplb2YgKGJ1ZikKKyAgICAgPyBidWYKKyAgICAgOiAoY2hhciAqKSBtYWxsb2MgKG1zZ2N0eHRfbGVuICsgbXNnaWRfbGVuKSk7CisgIGlmIChtc2dfY3R4dF9pZCAhPSBOVUxMKQorI2VuZGlmCisgICAgeworICAgICAgbWVtY3B5IChtc2dfY3R4dF9pZCwgbXNnY3R4dCwgbXNnY3R4dF9sZW4gLSAxKTsKKyAgICAgIG1zZ19jdHh0X2lkW21zZ2N0eHRfbGVuIC0gMV0gPSAnXDAwNCc7CisgICAgICBtZW1jcHkgKG1zZ19jdHh0X2lkICsgbXNnY3R4dF9sZW4sIG1zZ2lkLCBtc2dpZF9sZW4pOworICAgICAgdHJhbnNsYXRpb24gPSBkY25nZXR0ZXh0IChkb21haW4sIG1zZ19jdHh0X2lkLCBtc2dpZF9wbHVyYWwsIG4sIGNhdGVnb3J5KTsKKyNpZiAhX0xJQkdFVFRFWFRfSEFWRV9WQVJJQUJMRV9TSVpFX0FSUkFZUworICAgICAgaWYgKG1zZ19jdHh0X2lkICE9IGJ1ZikKKwlmcmVlIChtc2dfY3R4dF9pZCk7CisjZW5kaWYKKyAgICAgIGlmICghKHRyYW5zbGF0aW9uID09IG1zZ19jdHh0X2lkIHx8IHRyYW5zbGF0aW9uID09IG1zZ2lkX3BsdXJhbCkpCisJcmV0dXJuIHRyYW5zbGF0aW9uOworICAgIH0KKyAgcmV0dXJuIChuID09IDEgPyBtc2dpZCA6IG1zZ2lkX3BsdXJhbCk7Cit9CisKKyNlbHNlIC8qIEVOQUJMRV9OTFMgKi8KKworI2RlZmluZSBwZ2V0dGV4dChNc2djdHh0LCBNc2dpZCkgKCh2b2lkKSAoTXNnY3R4dCksIGdldHRleHQgKE1zZ2lkKSkKKyNkZWZpbmUgZHBnZXR0ZXh0KERvbWFpbm5hbWUsIE1zZ2N0eHQsIE1zZ2lkKSBcCisgICgodm9pZCkgKERvbWFpbm5hbWUpLCBwZ2V0dGV4dCAoTXNnY3R4dCwgTXNnaWQpKQorI2RlZmluZSBkY3BnZXR0ZXh0KERvbWFpbm5hbWUsIE1zZ2N0eHQsIE1zZ2lkLCBDYXRlZ29yeSkgXAorICAoKHZvaWQpIChDYXRlZ29yeSksIGRwZ2V0dGV4dCAoRG9tYWlubmFtZSwgTXNnY3R4dCwgTXNnaWQpKQorCisjZGVmaW5lIG5wZ2V0dGV4dChNc2djdHh0LCBNc2dpZCwgTXNnaWRQbHVyYWwsIE4pIFwKKyAgKCh2b2lkKSAoTXNnY3R4dCksIG5nZXR0ZXh0IChNc2dpZCwgTXNnaWRQbHVyYWwsIE4pKQorI2RlZmluZSBkbnBnZXR0ZXh0KERvbWFpbm5hbWUsIE1zZ2N0eHQsIE1zZ2lkLCBNc2dpZFBsdXJhbCwgTikgXAorICAoKHZvaWQpIChEb21haW5uYW1lKSwgbnBnZXR0ZXh0IChNc2djdHh0LCBNc2dpZCwgTXNnaWRQbHVyYWwsIE4pCisjZGVmaW5lIGRjbnBnZXR0ZXh0KERvbWFpbm5hbWUsIE1zZ2N0eHQsIE1zZ2lkLCBNc2dpZFBsdXJhbCwgTiwgQ2F0ZWdvcnkpIFwKKyAgICgodm9pZCkgKENhdGVnb3J5KSwgZG5wZ2V0dGV4dCAoRG9tYWlubmFtZSwgTXNnY3R4dCwgTXNnaWQsIE1zZ2lkUGx1cmFsLCBOKQorCisjZGVmaW5lIHBnZXR0ZXh0X2V4cHIoTXNnY3R4dCwgTXNnaWQpIHBnZXR0ZXh0IChNc2djdHh0LCBNc2dpZCkKKyNkZWZpbmUgZHBnZXR0ZXh0X2V4cHIoRG9tYWlubmFtZSwgTXNnY3R4dCwgTXNnaWQpIFwKKyAgZHBnZXR0ZXh0IChEb21haW5uYW1lLCBNc2djdHh0LCBNc2dpZCkKKyNkZWZpbmUgZGNwZ2V0dGV4dF9leHByKERvbWFpbm5hbWUsIE1zZ2N0eHQsIE1zZ2lkLCBDYXRlZ29yeSkgXAorICBkY3BnZXR0ZXh0IChEb21haW5uYW1lLCBNc2djdHh0LCBNc2dpZCwgQ2F0ZWdvcnkpCisKKyNkZWZpbmUgbnBnZXR0ZXh0X2V4cHIoTXNnY3R4dCwgTXNnaWQsIE1zZ2lkUGx1cmFsLCBOKSBcCisgIG5wZ2V0dGV4dCAoTXNnY3R4dCwgTXNnaWQsIE1zZ2lkUGx1cmFsLCBOKQorI2RlZmluZSBkbnBnZXR0ZXh0X2V4cHIoRG9tYWlubmFtZSwgTXNnY3R4dCwgTXNnaWQsIE1zZ2lkUGx1cmFsLCBOKSBcCisgIGRucGdldHRleHQgKERvbWFpbm5hbWUsIE1zZ2N0eHQsIE1zZ2lkLCBNc2dpZFBsdXJhbCwgTikKKyNkZWZpbmUgZGNucGdldHRleHRfZXhwcihEb21haW5uYW1lLCBNc2djdHh0LCBNc2dpZCwgTXNnaWRQbHVyYWwsIE4sIENhdGVnb3J5KSBcCisgIGRjbnBnZXR0ZXh0IChEb21haW5uYW1lLCBNc2djdHh0LCBNc2dpZCwgTXNnaWRQbHVyYWwsIE4sIENhdGVnb3J5KQorCisjZW5kaWYgLyogRU5BQkxFX05MUyAqLworCisjZW5kaWYgLyogX0xJQkdFVFRFWFRfSCAqLwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9saWIvY29tcGF0L29ic3RhY2suYyBiL2Rwa2ctMS4xNi4xLjEvbGliL2NvbXBhdC9vYnN0YWNrLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODM2OGYyOAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbGliL2NvbXBhdC9vYnN0YWNrLmMKQEAgLTAsMCArMSw2MDQgQEAKKy8qIG9ic3RhY2suYyAtIHN1YnJvdXRpbmVzIHVzZWQgaW1wbGljaXRseSBieSBvYmplY3Qgc3RhY2sgbWFjcm9zCisgICBDb3B5cmlnaHQgKEMpIDE5ODgtMTk5NCw5Niw5Nyw5OCw5OSwyMDAwIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgorCisgICBUaGlzIGZpbGUgaXMgcGFydCBvZiB0aGUgR05VIEMgTGlicmFyeS4gIEl0cyBtYXN0ZXIgc291cmNlIGlzIE5PVCBwYXJ0IG9mCisgICB0aGUgQyBsaWJyYXJ5LCBob3dldmVyLiAgVGhlIG1hc3RlciBzb3VyY2UgbGl2ZXMgaW4gL2dkL2dudS9saWIuCisKKyAgIFRoZSBHTlUgQyBMaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgorICAgbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcworICAgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlCisgICBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorCisgICBUaGUgR05VIEMgTGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICAgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAgIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCisgICBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKworICAgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMKKyAgIExpY2Vuc2UgYWxvbmcgd2l0aCB0aGUgR05VIEMgTGlicmFyeTsgc2VlIHRoZSBmaWxlIENPUFlJTkcuTElCLiAgSWYgbm90LAorICAgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlIC0gU3VpdGUgMzMwLAorICAgQm9zdG9uLCBNQSAwMjExMS0xMzA3LCBVU0EuICAqLworCisjaWZkZWYgSEFWRV9DT05GSUdfSAorI2luY2x1ZGUgPGNvbmZpZy5oPgorI2VuZGlmCisKKyNpbmNsdWRlICJvYnN0YWNrLmgiCisKKy8qIE5PVEUgQkVGT1JFIE1PRElGWUlORyBUSElTIEZJTEU6IFRoaXMgdmVyc2lvbiBudW1iZXIgbXVzdCBiZQorICAgaW5jcmVtZW50ZWQgd2hlbmV2ZXIgY2FsbGVycyBjb21waWxlZCB1c2luZyBhbiBvbGQgb2JzdGFjay5oIGNhbiBubworICAgbG9uZ2VyIHByb3Blcmx5IGNhbGwgdGhlIGZ1bmN0aW9ucyBpbiB0aGlzIG9ic3RhY2suYy4gICovCisjZGVmaW5lIE9CU1RBQ0tfSU5URVJGQUNFX1ZFUlNJT04gMQorCisvKiBDb21tZW50IG91dCBhbGwgdGhpcyBjb2RlIGlmIHdlIGFyZSB1c2luZyB0aGUgR05VIEMgTGlicmFyeSwgYW5kIGFyZSBub3QKKyAgIGFjdHVhbGx5IGNvbXBpbGluZyB0aGUgbGlicmFyeSBpdHNlbGYsIGFuZCB0aGUgaW5zdGFsbGVkIGxpYnJhcnkKKyAgIHN1cHBvcnRzIHRoZSBzYW1lIGxpYnJhcnkgaW50ZXJmYWNlIHdlIGRvLiAgVGhpcyBjb2RlIGlzIHBhcnQgb2YgdGhlIEdOVQorICAgQyBMaWJyYXJ5LCBidXQgYWxzbyBpbmNsdWRlZCBpbiBtYW55IG90aGVyIEdOVSBkaXN0cmlidXRpb25zLiAgQ29tcGlsaW5nCisgICBhbmQgbGlua2luZyBpbiB0aGlzIGNvZGUgaXMgYSB3YXN0ZSB3aGVuIHVzaW5nIHRoZSBHTlUgQyBsaWJyYXJ5CisgICAoZXNwZWNpYWxseSBpZiBpdCBpcyBhIHNoYXJlZCBsaWJyYXJ5KS4gIFJhdGhlciB0aGFuIGhhdmluZyBldmVyeSBHTlUKKyAgIHByb2dyYW0gdW5kZXJzdGFuZCBgY29uZmlndXJlIC0td2l0aC1nbnUtbGliYycgYW5kIG9taXQgdGhlIG9iamVjdAorICAgZmlsZXMsIGl0IGlzIHNpbXBsZXIgdG8ganVzdCBkbyB0aGlzIGluIHRoZSBzb3VyY2UgZm9yIGVhY2ggc3VjaCBmaWxlLiAgKi8KKworI2luY2x1ZGUgPHN0ZGlvLmg+CQkvKiBSYW5kb20gdGhpbmcgdG8gZ2V0IF9fR05VX0xJQlJBUllfXy4gICovCisjaWYgIWRlZmluZWQgKF9MSUJDKSAmJiBkZWZpbmVkIChfX0dOVV9MSUJSQVJZX18pICYmIF9fR05VX0xJQlJBUllfXyA+IDEKKyNpbmNsdWRlIDxnbnUtdmVyc2lvbnMuaD4KKyNpZiBfR05VX09CU1RBQ0tfSU5URVJGQUNFX1ZFUlNJT04gPT0gT0JTVEFDS19JTlRFUkZBQ0VfVkVSU0lPTgorI2RlZmluZSBFTElERV9DT0RFCisjZW5kaWYKKyNlbmRpZgorCisKKyNpZm5kZWYgRUxJREVfQ09ERQorCisKKyNpZiBkZWZpbmVkIChfX1NURENfXykgJiYgX19TVERDX18KKyNkZWZpbmUgUE9JTlRFUiB2b2lkICoKKyNlbHNlCisjZGVmaW5lIFBPSU5URVIgY2hhciAqCisjZW5kaWYKKworLyogRGV0ZXJtaW5lIGRlZmF1bHQgYWxpZ25tZW50LiAgKi8KK3N0cnVjdCBmb29hbGlnbiB7Y2hhciB4OyBkb3VibGUgZDt9OworI2RlZmluZSBERUZBVUxUX0FMSUdOTUVOVCAgXAorICAoKFBUUl9JTlRfVFlQRSkgKChjaGFyICopICYoKHN0cnVjdCBmb29hbGlnbiAqKSAwKS0+ZCAtIChjaGFyICopIDApKQorLyogSWYgbWFsbG9jIHdlcmUgcmVhbGx5IHNtYXJ0LCBpdCB3b3VsZCByb3VuZCBhZGRyZXNzZXMgdG8gREVGQVVMVF9BTElHTk1FTlQuCisgICBCdXQgaW4gZmFjdCBpdCBtaWdodCBiZSBsZXNzIHNtYXJ0IGFuZCByb3VuZCBhZGRyZXNzZXMgdG8gYXMgbXVjaCBhcworICAgREVGQVVMVF9ST1VORElORy4gIFNvIHdlIHByZXBhcmUgZm9yIGl0IHRvIGRvIHRoYXQuICAqLwordW5pb24gZm9vcm91bmQge2xvbmcgeDsgZG91YmxlIGQ7fTsKKyNkZWZpbmUgREVGQVVMVF9ST1VORElORyAoc2l6ZW9mICh1bmlvbiBmb29yb3VuZCkpCisKKy8qIFdoZW4gd2UgY29weSBhIGxvbmcgYmxvY2sgb2YgZGF0YSwgdGhpcyBpcyB0aGUgdW5pdCB0byBkbyBpdCB3aXRoLgorICAgT24gc29tZSBtYWNoaW5lcywgY29weWluZyBzdWNjZXNzaXZlIGludHMgZG9lcyBub3Qgd29yazsKKyAgIGluIHN1Y2ggYSBjYXNlLCByZWRlZmluZSBDT1BZSU5HX1VOSVQgdG8gYGxvbmcnIChpZiB0aGF0IHdvcmtzKQorICAgb3IgYGNoYXInIGFzIGEgbGFzdCByZXNvcnQuICAqLworI2lmbmRlZiBDT1BZSU5HX1VOSVQKKyNkZWZpbmUgQ09QWUlOR19VTklUIGludAorI2VuZGlmCisKKworLyogVGhlIGZ1bmN0aW9ucyBhbGxvY2F0aW5nIG1vcmUgcm9vbSBieSBjYWxsaW5nIGBvYnN0YWNrX2NodW5rX2FsbG9jJworICAganVtcCB0byB0aGUgaGFuZGxlciBwb2ludGVkIHRvIGJ5IGBvYnN0YWNrX2FsbG9jX2ZhaWxlZF9oYW5kbGVyJy4KKyAgIFRoaXMgY2FuIGJlIHNldCB0byBhIHVzZXIgZGVmaW5lZCBmdW5jdGlvbiB3aGljaCBzaG91bGQgZWl0aGVyCisgICBhYm9ydCBncmFjZWZ1bGx5IG9yIHVzZSBsb25nanVtcCAtIGJ1dCBzaG91bGRuJ3QgcmV0dXJuLiAgVGhpcworICAgdmFyaWFibGUgYnkgZGVmYXVsdCBwb2ludHMgdG8gdGhlIGludGVybmFsIGZ1bmN0aW9uCisgICBgcHJpbnRfYW5kX2Fib3J0Jy4gICovCisjaWYgZGVmaW5lZCAoX19TVERDX18pICYmIF9fU1REQ19fCitzdGF0aWMgdm9pZCBwcmludF9hbmRfYWJvcnQgKHZvaWQpOwordm9pZCAoKm9ic3RhY2tfYWxsb2NfZmFpbGVkX2hhbmRsZXIpICh2b2lkKSA9IHByaW50X2FuZF9hYm9ydDsKKyNlbHNlCitzdGF0aWMgdm9pZCBwcmludF9hbmRfYWJvcnQgKCk7Cit2b2lkICgqb2JzdGFja19hbGxvY19mYWlsZWRfaGFuZGxlcikgKCkgPSBwcmludF9hbmRfYWJvcnQ7CisjZW5kaWYKKworLyogRXhpdCB2YWx1ZSB1c2VkIHdoZW4gYHByaW50X2FuZF9hYm9ydCcgaXMgdXNlZC4gICovCisjaWYgZGVmaW5lZCBfX0dOVV9MSUJSQVJZX18gfHwgZGVmaW5lZCBIQVZFX1NURExJQl9ICisjaW5jbHVkZSA8c3RkbGliLmg+CisjZW5kaWYKKyNpZm5kZWYgRVhJVF9GQUlMVVJFCisjZGVmaW5lIEVYSVRfRkFJTFVSRSAxCisjZW5kaWYKK2ludCBvYnN0YWNrX2V4aXRfZmFpbHVyZSA9IEVYSVRfRkFJTFVSRTsKKworLyogVGhlIG5vbi1HTlUtQyBtYWNyb3MgY29weSB0aGUgb2JzdGFjayBpbnRvIHRoaXMgZ2xvYmFsIHZhcmlhYmxlCisgICB0byBhdm9pZCBtdWx0aXBsZSBldmFsdWF0aW9uLiAgKi8KKworc3RydWN0IG9ic3RhY2sgKl9vYnN0YWNrOworCisvKiBEZWZpbmUgYSBtYWNybyB0aGF0IGVpdGhlciBjYWxscyBmdW5jdGlvbnMgd2l0aCB0aGUgdHJhZGl0aW9uYWwgbWFsbG9jL2ZyZWUKKyAgIGNhbGxpbmcgaW50ZXJmYWNlLCBvciBjYWxscyBmdW5jdGlvbnMgd2l0aCB0aGUgbW1hbGxvYy9tZnJlZSBpbnRlcmZhY2UKKyAgICh0aGF0IGFkZHMgYW4gZXh0cmEgZmlyc3QgYXJndW1lbnQpLCBiYXNlZCBvbiB0aGUgc3RhdGUgb2YgdXNlX2V4dHJhX2FyZy4KKyAgIEZvciBmcmVlLCBkbyBub3QgdXNlID86LCBzaW5jZSBzb21lIGNvbXBpbGVycywgbGlrZSB0aGUgTUlQUyBjb21waWxlcnMsCisgICBkbyBub3QgYWxsb3cgKGV4cHIpID8gdm9pZCA6IHZvaWQuICAqLworCisjaWYgZGVmaW5lZCAoX19TVERDX18pICYmIF9fU1REQ19fCisjZGVmaW5lIENBTExfQ0hVTktGVU4oaCwgc2l6ZSkgXAorICAoKChoKSAtPiB1c2VfZXh0cmFfYXJnKSBcCisgICA/ICgqKGgpLT5jaHVua2Z1bikgKChoKS0+ZXh0cmFfYXJnLCAoc2l6ZSkpIFwKKyAgIDogKCooc3RydWN0IF9vYnN0YWNrX2NodW5rICooKikgKGxvbmcpKSAoaCktPmNodW5rZnVuKSAoKHNpemUpKSkKKworI2RlZmluZSBDQUxMX0ZSRUVGVU4oaCwgb2xkX2NodW5rKSBcCisgIGRvIHsgXAorICAgIGlmICgoaCkgLT4gdXNlX2V4dHJhX2FyZykgXAorICAgICAgKCooaCktPmZyZWVmdW4pICgoaCktPmV4dHJhX2FyZywgKG9sZF9jaHVuaykpOyBcCisgICAgZWxzZSBcCisgICAgICAoKih2b2lkICgqKSAodm9pZCAqKSkgKGgpLT5mcmVlZnVuKSAoKG9sZF9jaHVuaykpOyBcCisgIH0gd2hpbGUgKDApCisjZWxzZQorI2RlZmluZSBDQUxMX0NIVU5LRlVOKGgsIHNpemUpIFwKKyAgKCgoaCkgLT4gdXNlX2V4dHJhX2FyZykgXAorICAgPyAoKihoKS0+Y2h1bmtmdW4pICgoaCktPmV4dHJhX2FyZywgKHNpemUpKSBcCisgICA6ICgqKHN0cnVjdCBfb2JzdGFja19jaHVuayAqKCopICgpKSAoaCktPmNodW5rZnVuKSAoKHNpemUpKSkKKworI2RlZmluZSBDQUxMX0ZSRUVGVU4oaCwgb2xkX2NodW5rKSBcCisgIGRvIHsgXAorICAgIGlmICgoaCkgLT4gdXNlX2V4dHJhX2FyZykgXAorICAgICAgKCooaCktPmZyZWVmdW4pICgoaCktPmV4dHJhX2FyZywgKG9sZF9jaHVuaykpOyBcCisgICAgZWxzZSBcCisgICAgICAoKih2b2lkICgqKSAoKSkgKGgpLT5mcmVlZnVuKSAoKG9sZF9jaHVuaykpOyBcCisgIH0gd2hpbGUgKDApCisjZW5kaWYKKworDAorLyogSW5pdGlhbGl6ZSBhbiBvYnN0YWNrIEggZm9yIHVzZS4gIFNwZWNpZnkgY2h1bmsgc2l6ZSBTSVpFICgwIG1lYW5zIGRlZmF1bHQpLgorICAgT2JqZWN0cyBzdGFydCBvbiBtdWx0aXBsZXMgb2YgQUxJR05NRU5UICgwIG1lYW5zIHVzZSBkZWZhdWx0KS4KKyAgIENIVU5LRlVOIGlzIHRoZSBmdW5jdGlvbiB0byB1c2UgdG8gYWxsb2NhdGUgY2h1bmtzLAorICAgYW5kIEZSRUVGVU4gdGhlIGZ1bmN0aW9uIHRvIGZyZWUgdGhlbS4KKworICAgUmV0dXJuIG5vbnplcm8gaWYgc3VjY2Vzc2Z1bCwgY2FsbHMgb2JzdGFja19hbGxvY19mYWlsZWRfaGFuZGxlciBpZgorICAgYWxsb2NhdGlvbiBmYWlscy4gICovCisKK2ludAorX29ic3RhY2tfYmVnaW4gKGgsIHNpemUsIGFsaWdubWVudCwgY2h1bmtmdW4sIGZyZWVmdW4pCisgICAgIHN0cnVjdCBvYnN0YWNrICpoOworICAgICBpbnQgc2l6ZTsKKyAgICAgaW50IGFsaWdubWVudDsKKyNpZiBkZWZpbmVkIChfX1NURENfXykgJiYgX19TVERDX18KKyAgICAgUE9JTlRFUiAoKmNodW5rZnVuKSAobG9uZyk7CisgICAgIHZvaWQgKCpmcmVlZnVuKSAodm9pZCAqKTsKKyNlbHNlCisgICAgIFBPSU5URVIgKCpjaHVua2Z1bikgKCk7CisgICAgIHZvaWQgKCpmcmVlZnVuKSAoKTsKKyNlbmRpZgoreworICByZWdpc3RlciBzdHJ1Y3QgX29ic3RhY2tfY2h1bmsgKmNodW5rOyAvKiBwb2ludHMgdG8gbmV3IGNodW5rICovCisKKyAgaWYgKGFsaWdubWVudCA9PSAwKQorICAgIGFsaWdubWVudCA9IChpbnQpIERFRkFVTFRfQUxJR05NRU5UOworICBpZiAoc2l6ZSA9PSAwKQorICAgIC8qIERlZmF1bHQgc2l6ZSBpcyB3aGF0IEdOVSBtYWxsb2MgY2FuIGZpdCBpbiBhIDQwOTYtYnl0ZSBibG9jay4gICovCisgICAgeworICAgICAgLyogMTIgaXMgc2l6ZW9mIChtaGVhZCkgYW5kIDQgaXMgRVhUUkEgZnJvbSBHTlUgbWFsbG9jLgorCSBVc2UgdGhlIHZhbHVlcyBmb3IgcmFuZ2UgY2hlY2tpbmcsIGJlY2F1c2UgaWYgcmFuZ2UgY2hlY2tpbmcgaXMgb2ZmLAorCSB0aGUgZXh0cmEgYnl0ZXMgd29uJ3QgYmUgbWlzc2VkIHRlcnJpYmx5LCBidXQgaWYgcmFuZ2UgY2hlY2tpbmcgaXMgb24KKwkgYW5kIHdlIHVzZWQgYSBsYXJnZXIgcmVxdWVzdCwgYSB3aG9sZSBleHRyYSA0MDk2IGJ5dGVzIHdvdWxkIGJlCisJIGFsbG9jYXRlZC4KKworCSBUaGVzZSBudW1iZXIgYXJlIGlycmVsZXZhbnQgdG8gdGhlIG5ldyBHTlUgbWFsbG9jLiAgSSBzdXNwZWN0IGl0IGlzCisJIGxlc3Mgc2Vuc2l0aXZlIHRvIHRoZSBzaXplIG9mIHRoZSByZXF1ZXN0LiAgKi8KKyAgICAgIGludCBleHRyYSA9ICgoKCgxMiArIERFRkFVTFRfUk9VTkRJTkcgLSAxKSAmIH4oREVGQVVMVF9ST1VORElORyAtIDEpKQorCQkgICAgKyA0ICsgREVGQVVMVF9ST1VORElORyAtIDEpCisJCSAgICYgfihERUZBVUxUX1JPVU5ESU5HIC0gMSkpOworICAgICAgc2l6ZSA9IDQwOTYgLSBleHRyYTsKKyAgICB9CisKKyNpZiBkZWZpbmVkIChfX1NURENfXykgJiYgX19TVERDX18KKyAgaC0+Y2h1bmtmdW4gPSAoc3RydWN0IF9vYnN0YWNrX2NodW5rICogKCopKHZvaWQgKiwgbG9uZykpIGNodW5rZnVuOworICBoLT5mcmVlZnVuID0gKHZvaWQgKCopICh2b2lkICosIHN0cnVjdCBfb2JzdGFja19jaHVuayAqKSkgZnJlZWZ1bjsKKyNlbHNlCisgIGgtPmNodW5rZnVuID0gKHN0cnVjdCBfb2JzdGFja19jaHVuayAqICgqKSgpKSBjaHVua2Z1bjsKKyAgaC0+ZnJlZWZ1biA9IGZyZWVmdW47CisjZW5kaWYKKyAgaC0+Y2h1bmtfc2l6ZSA9IHNpemU7CisgIGgtPmFsaWdubWVudF9tYXNrID0gYWxpZ25tZW50IC0gMTsKKyAgaC0+dXNlX2V4dHJhX2FyZyA9IDA7CisKKyAgY2h1bmsgPSBoLT5jaHVuayA9IENBTExfQ0hVTktGVU4gKGgsIGggLT4gY2h1bmtfc2l6ZSk7CisgIGlmICghY2h1bmspCisgICAgKCpvYnN0YWNrX2FsbG9jX2ZhaWxlZF9oYW5kbGVyKSAoKTsKKyAgaC0+bmV4dF9mcmVlID0gaC0+b2JqZWN0X2Jhc2UgPSBjaHVuay0+Y29udGVudHM7CisgIGgtPmNodW5rX2xpbWl0ID0gY2h1bmstPmxpbWl0CisgICAgPSAoY2hhciAqKSBjaHVuayArIGgtPmNodW5rX3NpemU7CisgIGNodW5rLT5wcmV2ID0gMDsKKyAgLyogVGhlIGluaXRpYWwgY2h1bmsgbm93IGNvbnRhaW5zIG5vIGVtcHR5IG9iamVjdC4gICovCisgIGgtPm1heWJlX2VtcHR5X29iamVjdCA9IDA7CisgIGgtPmFsbG9jX2ZhaWxlZCA9IDA7CisgIHJldHVybiAxOworfQorCitpbnQKK19vYnN0YWNrX2JlZ2luXzEgKGgsIHNpemUsIGFsaWdubWVudCwgY2h1bmtmdW4sIGZyZWVmdW4sIGFyZykKKyAgICAgc3RydWN0IG9ic3RhY2sgKmg7CisgICAgIGludCBzaXplOworICAgICBpbnQgYWxpZ25tZW50OworI2lmIGRlZmluZWQgKF9fU1REQ19fKSAmJiBfX1NURENfXworICAgICBQT0lOVEVSICgqY2h1bmtmdW4pIChQT0lOVEVSLCBsb25nKTsKKyAgICAgdm9pZCAoKmZyZWVmdW4pIChQT0lOVEVSLCBQT0lOVEVSKTsKKyNlbHNlCisgICAgIFBPSU5URVIgKCpjaHVua2Z1bikgKCk7CisgICAgIHZvaWQgKCpmcmVlZnVuKSAoKTsKKyNlbmRpZgorICAgICBQT0lOVEVSIGFyZzsKK3sKKyAgcmVnaXN0ZXIgc3RydWN0IF9vYnN0YWNrX2NodW5rICpjaHVuazsgLyogcG9pbnRzIHRvIG5ldyBjaHVuayAqLworCisgIGlmIChhbGlnbm1lbnQgPT0gMCkKKyAgICBhbGlnbm1lbnQgPSAoaW50KSBERUZBVUxUX0FMSUdOTUVOVDsKKyAgaWYgKHNpemUgPT0gMCkKKyAgICAvKiBEZWZhdWx0IHNpemUgaXMgd2hhdCBHTlUgbWFsbG9jIGNhbiBmaXQgaW4gYSA0MDk2LWJ5dGUgYmxvY2suICAqLworICAgIHsKKyAgICAgIC8qIDEyIGlzIHNpemVvZiAobWhlYWQpIGFuZCA0IGlzIEVYVFJBIGZyb20gR05VIG1hbGxvYy4KKwkgVXNlIHRoZSB2YWx1ZXMgZm9yIHJhbmdlIGNoZWNraW5nLCBiZWNhdXNlIGlmIHJhbmdlIGNoZWNraW5nIGlzIG9mZiwKKwkgdGhlIGV4dHJhIGJ5dGVzIHdvbid0IGJlIG1pc3NlZCB0ZXJyaWJseSwgYnV0IGlmIHJhbmdlIGNoZWNraW5nIGlzIG9uCisJIGFuZCB3ZSB1c2VkIGEgbGFyZ2VyIHJlcXVlc3QsIGEgd2hvbGUgZXh0cmEgNDA5NiBieXRlcyB3b3VsZCBiZQorCSBhbGxvY2F0ZWQuCisKKwkgVGhlc2UgbnVtYmVyIGFyZSBpcnJlbGV2YW50IHRvIHRoZSBuZXcgR05VIG1hbGxvYy4gIEkgc3VzcGVjdCBpdCBpcworCSBsZXNzIHNlbnNpdGl2ZSB0byB0aGUgc2l6ZSBvZiB0aGUgcmVxdWVzdC4gICovCisgICAgICBpbnQgZXh0cmEgPSAoKCgoMTIgKyBERUZBVUxUX1JPVU5ESU5HIC0gMSkgJiB+KERFRkFVTFRfUk9VTkRJTkcgLSAxKSkKKwkJICAgICsgNCArIERFRkFVTFRfUk9VTkRJTkcgLSAxKQorCQkgICAmIH4oREVGQVVMVF9ST1VORElORyAtIDEpKTsKKyAgICAgIHNpemUgPSA0MDk2IC0gZXh0cmE7CisgICAgfQorCisjaWYgZGVmaW5lZChfX1NURENfXykgJiYgX19TVERDX18KKyAgaC0+Y2h1bmtmdW4gPSAoc3RydWN0IF9vYnN0YWNrX2NodW5rICogKCopKHZvaWQgKixsb25nKSkgY2h1bmtmdW47CisgIGgtPmZyZWVmdW4gPSAodm9pZCAoKikgKHZvaWQgKiwgc3RydWN0IF9vYnN0YWNrX2NodW5rICopKSBmcmVlZnVuOworI2Vsc2UKKyAgaC0+Y2h1bmtmdW4gPSAoc3RydWN0IF9vYnN0YWNrX2NodW5rICogKCopKCkpIGNodW5rZnVuOworICBoLT5mcmVlZnVuID0gZnJlZWZ1bjsKKyNlbmRpZgorICBoLT5jaHVua19zaXplID0gc2l6ZTsKKyAgaC0+YWxpZ25tZW50X21hc2sgPSBhbGlnbm1lbnQgLSAxOworICBoLT5leHRyYV9hcmcgPSBhcmc7CisgIGgtPnVzZV9leHRyYV9hcmcgPSAxOworCisgIGNodW5rID0gaC0+Y2h1bmsgPSBDQUxMX0NIVU5LRlVOIChoLCBoIC0+IGNodW5rX3NpemUpOworICBpZiAoIWNodW5rKQorICAgICgqb2JzdGFja19hbGxvY19mYWlsZWRfaGFuZGxlcikgKCk7CisgIGgtPm5leHRfZnJlZSA9IGgtPm9iamVjdF9iYXNlID0gY2h1bmstPmNvbnRlbnRzOworICBoLT5jaHVua19saW1pdCA9IGNodW5rLT5saW1pdAorICAgID0gKGNoYXIgKikgY2h1bmsgKyBoLT5jaHVua19zaXplOworICBjaHVuay0+cHJldiA9IDA7CisgIC8qIFRoZSBpbml0aWFsIGNodW5rIG5vdyBjb250YWlucyBubyBlbXB0eSBvYmplY3QuICAqLworICBoLT5tYXliZV9lbXB0eV9vYmplY3QgPSAwOworICBoLT5hbGxvY19mYWlsZWQgPSAwOworICByZXR1cm4gMTsKK30KKworLyogQWxsb2NhdGUgYSBuZXcgY3VycmVudCBjaHVuayBmb3IgdGhlIG9ic3RhY2sgKkgKKyAgIG9uIHRoZSBhc3N1bXB0aW9uIHRoYXQgTEVOR1RIIGJ5dGVzIG5lZWQgdG8gYmUgYWRkZWQKKyAgIHRvIHRoZSBjdXJyZW50IG9iamVjdCwgb3IgYSBuZXcgb2JqZWN0IG9mIGxlbmd0aCBMRU5HVEggYWxsb2NhdGVkLgorICAgQ29waWVzIGFueSBwYXJ0aWFsIG9iamVjdCBmcm9tIHRoZSBlbmQgb2YgdGhlIG9sZCBjaHVuaworICAgdG8gdGhlIGJlZ2lubmluZyBvZiB0aGUgbmV3IG9uZS4gICovCisKK3ZvaWQKK19vYnN0YWNrX25ld2NodW5rIChoLCBsZW5ndGgpCisgICAgIHN0cnVjdCBvYnN0YWNrICpoOworICAgICBpbnQgbGVuZ3RoOworeworICByZWdpc3RlciBzdHJ1Y3QgX29ic3RhY2tfY2h1bmsgKm9sZF9jaHVuayA9IGgtPmNodW5rOworICByZWdpc3RlciBzdHJ1Y3QgX29ic3RhY2tfY2h1bmsgKm5ld19jaHVuazsKKyAgcmVnaXN0ZXIgbG9uZwluZXdfc2l6ZTsKKyAgcmVnaXN0ZXIgbG9uZyBvYmpfc2l6ZSA9IGgtPm5leHRfZnJlZSAtIGgtPm9iamVjdF9iYXNlOworICByZWdpc3RlciBsb25nIGk7CisgIGxvbmcgYWxyZWFkeTsKKyAgY2hhciAqb2JqZWN0X2Jhc2U7CisKKyAgLyogQ29tcHV0ZSBzaXplIGZvciBuZXcgY2h1bmsuICAqLworICBuZXdfc2l6ZSA9IChvYmpfc2l6ZSArIGxlbmd0aCkgKyAob2JqX3NpemUgPj4gMykgKyBoLT5hbGlnbm1lbnRfbWFzayArIDEwMDsKKyAgaWYgKG5ld19zaXplIDwgaC0+Y2h1bmtfc2l6ZSkKKyAgICBuZXdfc2l6ZSA9IGgtPmNodW5rX3NpemU7CisKKyAgLyogQWxsb2NhdGUgYW5kIGluaXRpYWxpemUgdGhlIG5ldyBjaHVuay4gICovCisgIG5ld19jaHVuayA9IENBTExfQ0hVTktGVU4gKGgsIG5ld19zaXplKTsKKyAgaWYgKCFuZXdfY2h1bmspCisgICAgKCpvYnN0YWNrX2FsbG9jX2ZhaWxlZF9oYW5kbGVyKSAoKTsKKyAgaC0+Y2h1bmsgPSBuZXdfY2h1bms7CisgIG5ld19jaHVuay0+cHJldiA9IG9sZF9jaHVuazsKKyAgbmV3X2NodW5rLT5saW1pdCA9IGgtPmNodW5rX2xpbWl0ID0gKGNoYXIgKikgbmV3X2NodW5rICsgbmV3X3NpemU7CisKKyAgLyogQ29tcHV0ZSBhbiBhbGlnbmVkIG9iamVjdF9iYXNlIGluIHRoZSBuZXcgY2h1bmsgKi8KKyAgb2JqZWN0X2Jhc2UgPQorICAgIF9fSU5UX1RPX1BUUiAoKF9fUFRSX1RPX0lOVCAobmV3X2NodW5rLT5jb250ZW50cykgKyBoLT5hbGlnbm1lbnRfbWFzaykKKwkJICAmIH4gKGgtPmFsaWdubWVudF9tYXNrKSk7CisKKyAgLyogTW92ZSB0aGUgZXhpc3Rpbmcgb2JqZWN0IHRvIHRoZSBuZXcgY2h1bmsuCisgICAgIFdvcmQgYXQgYSB0aW1lIGlzIGZhc3QgYW5kIGlzIHNhZmUgaWYgdGhlIG9iamVjdAorICAgICBpcyBzdWZmaWNpZW50bHkgYWxpZ25lZC4gICovCisgIGlmIChoLT5hbGlnbm1lbnRfbWFzayArIDEgPj0gREVGQVVMVF9BTElHTk1FTlQpCisgICAgeworICAgICAgZm9yIChpID0gb2JqX3NpemUgLyBzaXplb2YgKENPUFlJTkdfVU5JVCkgLSAxOworCSAgIGkgPj0gMDsgaS0tKQorCSgoQ09QWUlOR19VTklUICopb2JqZWN0X2Jhc2UpW2ldCisJICA9ICgoQ09QWUlOR19VTklUICopaC0+b2JqZWN0X2Jhc2UpW2ldOworICAgICAgLyogV2UgdXNlZCB0byBjb3B5IHRoZSBvZGQgZmV3IHJlbWFpbmluZyBieXRlcyBhcyBvbmUgZXh0cmEgQ09QWUlOR19VTklULAorCSBidXQgdGhhdCBjYW4gY3Jvc3MgYSBwYWdlIGJvdW5kYXJ5IG9uIGEgbWFjaGluZQorCSB3aGljaCBkb2VzIG5vdCBkbyBzdHJpY3QgYWxpZ25tZW50IGZvciBDT1BZSU5HX1VOSVRTLiAgKi8KKyAgICAgIGFscmVhZHkgPSBvYmpfc2l6ZSAvIHNpemVvZiAoQ09QWUlOR19VTklUKSAqIHNpemVvZiAoQ09QWUlOR19VTklUKTsKKyAgICB9CisgIGVsc2UKKyAgICBhbHJlYWR5ID0gMDsKKyAgLyogQ29weSByZW1haW5pbmcgYnl0ZXMgb25lIGJ5IG9uZS4gICovCisgIGZvciAoaSA9IGFscmVhZHk7IGkgPCBvYmpfc2l6ZTsgaSsrKQorICAgIG9iamVjdF9iYXNlW2ldID0gaC0+b2JqZWN0X2Jhc2VbaV07CisKKyAgLyogSWYgdGhlIG9iamVjdCBqdXN0IGNvcGllZCB3YXMgdGhlIG9ubHkgZGF0YSBpbiBPTERfQ0hVTkssCisgICAgIGZyZWUgdGhhdCBjaHVuayBhbmQgcmVtb3ZlIGl0IGZyb20gdGhlIGNoYWluLgorICAgICBCdXQgbm90IGlmIHRoYXQgY2h1bmsgbWlnaHQgY29udGFpbiBhbiBlbXB0eSBvYmplY3QuICAqLworICBpZiAoaC0+b2JqZWN0X2Jhc2UgPT0gb2xkX2NodW5rLT5jb250ZW50cyAmJiAhIGgtPm1heWJlX2VtcHR5X29iamVjdCkKKyAgICB7CisgICAgICBuZXdfY2h1bmstPnByZXYgPSBvbGRfY2h1bmstPnByZXY7CisgICAgICBDQUxMX0ZSRUVGVU4gKGgsIG9sZF9jaHVuayk7CisgICAgfQorCisgIGgtPm9iamVjdF9iYXNlID0gb2JqZWN0X2Jhc2U7CisgIGgtPm5leHRfZnJlZSA9IGgtPm9iamVjdF9iYXNlICsgb2JqX3NpemU7CisgIC8qIFRoZSBuZXcgY2h1bmsgY2VydGFpbmx5IGNvbnRhaW5zIG5vIGVtcHR5IG9iamVjdCB5ZXQuICAqLworICBoLT5tYXliZV9lbXB0eV9vYmplY3QgPSAwOworfQorCisvKiBSZXR1cm4gbm9uemVybyBpZiBvYmplY3QgT0JKIGhhcyBiZWVuIGFsbG9jYXRlZCBmcm9tIG9ic3RhY2sgSC4KKyAgIFRoaXMgaXMgaGVyZSBmb3IgZGVidWdnaW5nLgorICAgSWYgeW91IHVzZSBpdCBpbiBhIHByb2dyYW0sIHlvdSBhcmUgcHJvYmFibHkgbG9zaW5nLiAgKi8KKworI2lmIGRlZmluZWQgKF9fU1REQ19fKSAmJiBfX1NURENfXworLyogU3VwcHJlc3MgLVdtaXNzaW5nLXByb3RvdHlwZXMgd2FybmluZy4gIFdlIGRvbid0IHdhbnQgdG8gZGVjbGFyZSB0aGlzIGluCisgICBvYnN0YWNrLmggYmVjYXVzZSBpdCBpcyBqdXN0IGZvciBkZWJ1Z2dpbmcuICAqLworaW50IF9vYnN0YWNrX2FsbG9jYXRlZF9wIChzdHJ1Y3Qgb2JzdGFjayAqaCwgUE9JTlRFUiBvYmopOworI2VuZGlmCisKK2ludAorX29ic3RhY2tfYWxsb2NhdGVkX3AgKGgsIG9iaikKKyAgICAgc3RydWN0IG9ic3RhY2sgKmg7CisgICAgIFBPSU5URVIgb2JqOworeworICByZWdpc3RlciBzdHJ1Y3QgX29ic3RhY2tfY2h1bmsgKmxwOwkvKiBiZWxvdyBhZGRyIG9mIGFueSBvYmplY3RzIGluIHRoaXMgY2h1bmsgKi8KKyAgcmVnaXN0ZXIgc3RydWN0IF9vYnN0YWNrX2NodW5rICpwbHA7CS8qIHBvaW50IHRvIHByZXZpb3VzIGNodW5rIGlmIGFueSAqLworCisgIGxwID0gKGgpLT5jaHVuazsKKyAgLyogV2UgdXNlID49IHJhdGhlciB0aGFuID4gc2luY2UgdGhlIG9iamVjdCBjYW5ub3QgYmUgZXhhY3RseSBhdAorICAgICB0aGUgYmVnaW5uaW5nIG9mIHRoZSBjaHVuayBidXQgbWlnaHQgYmUgYW4gZW1wdHkgb2JqZWN0IGV4YWN0bHkKKyAgICAgYXQgdGhlIGVuZCBvZiBhbiBhZGphY2VudCBjaHVuay4gICovCisgIHdoaWxlIChscCAhPSAwICYmICgoUE9JTlRFUikgbHAgPj0gb2JqIHx8IChQT0lOVEVSKSAobHApLT5saW1pdCA8IG9iaikpCisgICAgeworICAgICAgcGxwID0gbHAtPnByZXY7CisgICAgICBscCA9IHBscDsKKyAgICB9CisgIHJldHVybiBscCAhPSAwOworfQorDAorLyogRnJlZSBvYmplY3RzIGluIG9ic3RhY2sgSCwgaW5jbHVkaW5nIE9CSiBhbmQgZXZlcnl0aGluZyBhbGxvY2F0ZQorICAgbW9yZSByZWNlbnRseSB0aGFuIE9CSi4gIElmIE9CSiBpcyB6ZXJvLCBmcmVlIGV2ZXJ5dGhpbmcgaW4gSC4gICovCisKKyN1bmRlZiBvYnN0YWNrX2ZyZWUKKworLyogVGhpcyBmdW5jdGlvbiBoYXMgdHdvIG5hbWVzIHdpdGggaWRlbnRpY2FsIGRlZmluaXRpb25zLgorICAgVGhpcyBpcyB0aGUgZmlyc3Qgb25lLCBjYWxsZWQgZnJvbSBub24tQU5TSSBjb2RlLiAgKi8KKwordm9pZAorX29ic3RhY2tfZnJlZSAoaCwgb2JqKQorICAgICBzdHJ1Y3Qgb2JzdGFjayAqaDsKKyAgICAgUE9JTlRFUiBvYmo7Cit7CisgIHJlZ2lzdGVyIHN0cnVjdCBfb2JzdGFja19jaHVuayAqbHA7CS8qIGJlbG93IGFkZHIgb2YgYW55IG9iamVjdHMgaW4gdGhpcyBjaHVuayAqLworICByZWdpc3RlciBzdHJ1Y3QgX29ic3RhY2tfY2h1bmsgKnBscDsJLyogcG9pbnQgdG8gcHJldmlvdXMgY2h1bmsgaWYgYW55ICovCisKKyAgbHAgPSBoLT5jaHVuazsKKyAgLyogV2UgdXNlID49IGJlY2F1c2UgdGhlcmUgY2Fubm90IGJlIGFuIG9iamVjdCBhdCB0aGUgYmVnaW5uaW5nIG9mIGEgY2h1bmsuCisgICAgIEJ1dCB0aGVyZSBjYW4gYmUgYW4gZW1wdHkgb2JqZWN0IGF0IHRoYXQgYWRkcmVzcworICAgICBhdCB0aGUgZW5kIG9mIGFub3RoZXIgY2h1bmsuICAqLworICB3aGlsZSAobHAgIT0gMCAmJiAoKFBPSU5URVIpIGxwID49IG9iaiB8fCAoUE9JTlRFUikgKGxwKS0+bGltaXQgPCBvYmopKQorICAgIHsKKyAgICAgIHBscCA9IGxwLT5wcmV2OworICAgICAgQ0FMTF9GUkVFRlVOIChoLCBscCk7CisgICAgICBscCA9IHBscDsKKyAgICAgIC8qIElmIHdlIHN3aXRjaCBjaHVua3MsIHdlIGNhbid0IHRlbGwgd2hldGhlciB0aGUgbmV3IGN1cnJlbnQKKwkgY2h1bmsgY29udGFpbnMgYW4gZW1wdHkgb2JqZWN0LCBzbyBhc3N1bWUgdGhhdCBpdCBtYXkuICAqLworICAgICAgaC0+bWF5YmVfZW1wdHlfb2JqZWN0ID0gMTsKKyAgICB9CisgIGlmIChscCkKKyAgICB7CisgICAgICBoLT5vYmplY3RfYmFzZSA9IGgtPm5leHRfZnJlZSA9IChjaGFyICopIChvYmopOworICAgICAgaC0+Y2h1bmtfbGltaXQgPSBscC0+bGltaXQ7CisgICAgICBoLT5jaHVuayA9IGxwOworICAgIH0KKyAgZWxzZSBpZiAob2JqICE9IDApCisgICAgLyogb2JqIGlzIG5vdCBpbiBhbnkgb2YgdGhlIGNodW5rcyEgKi8KKyAgICBhYm9ydCAoKTsKK30KKworLyogVGhpcyBmdW5jdGlvbiBpcyB1c2VkIGZyb20gQU5TSSBjb2RlLiAgKi8KKwordm9pZAorb2JzdGFja19mcmVlIChoLCBvYmopCisgICAgIHN0cnVjdCBvYnN0YWNrICpoOworICAgICBQT0lOVEVSIG9iajsKK3sKKyAgcmVnaXN0ZXIgc3RydWN0IF9vYnN0YWNrX2NodW5rICpscDsJLyogYmVsb3cgYWRkciBvZiBhbnkgb2JqZWN0cyBpbiB0aGlzIGNodW5rICovCisgIHJlZ2lzdGVyIHN0cnVjdCBfb2JzdGFja19jaHVuayAqcGxwOwkvKiBwb2ludCB0byBwcmV2aW91cyBjaHVuayBpZiBhbnkgKi8KKworICBscCA9IGgtPmNodW5rOworICAvKiBXZSB1c2UgPj0gYmVjYXVzZSB0aGVyZSBjYW5ub3QgYmUgYW4gb2JqZWN0IGF0IHRoZSBiZWdpbm5pbmcgb2YgYSBjaHVuay4KKyAgICAgQnV0IHRoZXJlIGNhbiBiZSBhbiBlbXB0eSBvYmplY3QgYXQgdGhhdCBhZGRyZXNzCisgICAgIGF0IHRoZSBlbmQgb2YgYW5vdGhlciBjaHVuay4gICovCisgIHdoaWxlIChscCAhPSAwICYmICgoUE9JTlRFUikgbHAgPj0gb2JqIHx8IChQT0lOVEVSKSAobHApLT5saW1pdCA8IG9iaikpCisgICAgeworICAgICAgcGxwID0gbHAtPnByZXY7CisgICAgICBDQUxMX0ZSRUVGVU4gKGgsIGxwKTsKKyAgICAgIGxwID0gcGxwOworICAgICAgLyogSWYgd2Ugc3dpdGNoIGNodW5rcywgd2UgY2FuJ3QgdGVsbCB3aGV0aGVyIHRoZSBuZXcgY3VycmVudAorCSBjaHVuayBjb250YWlucyBhbiBlbXB0eSBvYmplY3QsIHNvIGFzc3VtZSB0aGF0IGl0IG1heS4gICovCisgICAgICBoLT5tYXliZV9lbXB0eV9vYmplY3QgPSAxOworICAgIH0KKyAgaWYgKGxwKQorICAgIHsKKyAgICAgIGgtPm9iamVjdF9iYXNlID0gaC0+bmV4dF9mcmVlID0gKGNoYXIgKikgKG9iaik7CisgICAgICBoLT5jaHVua19saW1pdCA9IGxwLT5saW1pdDsKKyAgICAgIGgtPmNodW5rID0gbHA7CisgICAgfQorICBlbHNlIGlmIChvYmogIT0gMCkKKyAgICAvKiBvYmogaXMgbm90IGluIGFueSBvZiB0aGUgY2h1bmtzISAqLworICAgIGFib3J0ICgpOworfQorDAoraW50Citfb2JzdGFja19tZW1vcnlfdXNlZCAoaCkKKyAgICAgc3RydWN0IG9ic3RhY2sgKmg7Cit7CisgIHJlZ2lzdGVyIHN0cnVjdCBfb2JzdGFja19jaHVuayogbHA7CisgIHJlZ2lzdGVyIGludCBuYnl0ZXMgPSAwOworCisgIGZvciAobHAgPSBoLT5jaHVuazsgbHAgIT0gMDsgbHAgPSBscC0+cHJldikKKyAgICB7CisgICAgICBuYnl0ZXMgKz0gbHAtPmxpbWl0IC0gKGNoYXIgKikgbHA7CisgICAgfQorICByZXR1cm4gbmJ5dGVzOworfQorDAorLyogRGVmaW5lIHRoZSBlcnJvciBoYW5kbGVyLiAgKi8KKyNpZm5kZWYgXworIyBpZiBkZWZpbmVkIEhBVkVfTElCSU5UTF9IIHx8IGRlZmluZWQgX0xJQkMKKyMgIGluY2x1ZGUgPGxpYmludGwuaD4KKyMgIGlmbmRlZiBfCisjICAgZGVmaW5lIF8oU3RyKSBnZXR0ZXh0IChTdHIpCisjICBlbmRpZgorIyBlbHNlCisjICBkZWZpbmUgXyhTdHIpIChTdHIpCisjIGVuZGlmCisjZW5kaWYKKyNpZiBkZWZpbmVkIF9MSUJDICYmIGRlZmluZWQgVVNFX0lOX0xJQklPCisjIGluY2x1ZGUgPGxpYmlvL2lvbGliaW8uaD4KKyMgZGVmaW5lIGZwdXRzKHMsIGYpIF9JT19mcHV0cyAocywgZikKKyNlbmRpZgorCitzdGF0aWMgdm9pZAorcHJpbnRfYW5kX2Fib3J0ICgpCit7CisgIGZwdXRzIChfKCJtZW1vcnkgZXhoYXVzdGVkIiksIHN0ZGVycik7CisgIGZwdXRjICgnXG4nLCBzdGRlcnIpOworICBleGl0IChvYnN0YWNrX2V4aXRfZmFpbHVyZSk7Cit9CisMCisjaWYgMAorLyogVGhlc2UgYXJlIG5vdyB0dXJuZWQgb2ZmIGJlY2F1c2UgdGhlIGFwcGxpY2F0aW9ucyBkbyBub3QgdXNlIGl0CisgICBhbmQgaXQgdXNlcyBiY29weSB2aWEgb2JzdGFja19ncm93LCB3aGljaCBjYXVzZXMgdHJvdWJsZSBvbiBzeXNWLiAgKi8KKworLyogTm93IGRlZmluZSB0aGUgZnVuY3Rpb25hbCB2ZXJzaW9ucyBvZiB0aGUgb2JzdGFjayBtYWNyb3MuCisgICBEZWZpbmUgdGhlbSB0byBzaW1wbHkgdXNlIHRoZSBjb3JyZXNwb25kaW5nIG1hY3JvcyB0byBkbyB0aGUgam9iLiAgKi8KKworI2lmIGRlZmluZWQgKF9fU1REQ19fKSAmJiBfX1NURENfXworLyogVGhlc2UgZnVuY3Rpb24gZGVmaW5pdGlvbnMgZG8gbm90IHdvcmsgd2l0aCBub24tQU5TSSBwcmVwcm9jZXNzb3JzOworICAgdGhleSB3b24ndCBwYXNzIHRocm91Z2ggdGhlIG1hY3JvIG5hbWVzIGluIHBhcmVudGhlc2VzLiAgKi8KKworLyogVGhlIGZ1bmN0aW9uIG5hbWVzIGFwcGVhciBpbiBwYXJlbnRoZXNlcyBpbiBvcmRlciB0byBwcmV2ZW50CisgICB0aGUgbWFjcm8tZGVmaW5pdGlvbnMgb2YgdGhlIG5hbWVzIGZyb20gYmVpbmcgZXhwYW5kZWQgdGhlcmUuICAqLworCitQT0lOVEVSIChvYnN0YWNrX2Jhc2UpIChvYnN0YWNrKQorICAgICBzdHJ1Y3Qgb2JzdGFjayAqb2JzdGFjazsKK3sKKyAgcmV0dXJuIG9ic3RhY2tfYmFzZSAob2JzdGFjayk7Cit9CisKK1BPSU5URVIgKG9ic3RhY2tfbmV4dF9mcmVlKSAob2JzdGFjaykKKyAgICAgc3RydWN0IG9ic3RhY2sgKm9ic3RhY2s7Cit7CisgIHJldHVybiBvYnN0YWNrX25leHRfZnJlZSAob2JzdGFjayk7Cit9CisKK2ludCAob2JzdGFja19vYmplY3Rfc2l6ZSkgKG9ic3RhY2spCisgICAgIHN0cnVjdCBvYnN0YWNrICpvYnN0YWNrOworeworICByZXR1cm4gb2JzdGFja19vYmplY3Rfc2l6ZSAob2JzdGFjayk7Cit9CisKK2ludCAob2JzdGFja19yb29tKSAob2JzdGFjaykKKyAgICAgc3RydWN0IG9ic3RhY2sgKm9ic3RhY2s7Cit7CisgIHJldHVybiBvYnN0YWNrX3Jvb20gKG9ic3RhY2spOworfQorCitpbnQgKG9ic3RhY2tfbWFrZV9yb29tKSAob2JzdGFjaywgbGVuZ3RoKQorICAgICBzdHJ1Y3Qgb2JzdGFjayAqb2JzdGFjazsKKyAgICAgaW50IGxlbmd0aDsKK3sKKyAgcmV0dXJuIG9ic3RhY2tfbWFrZV9yb29tIChvYnN0YWNrLCBsZW5ndGgpOworfQorCit2b2lkIChvYnN0YWNrX2dyb3cpIChvYnN0YWNrLCBkYXRhLCBsZW5ndGgpCisgICAgIHN0cnVjdCBvYnN0YWNrICpvYnN0YWNrOworICAgICBjb25zdCBQT0lOVEVSIGRhdGE7CisgICAgIGludCBsZW5ndGg7Cit7CisgIG9ic3RhY2tfZ3JvdyAob2JzdGFjaywgZGF0YSwgbGVuZ3RoKTsKK30KKwordm9pZCAob2JzdGFja19ncm93MCkgKG9ic3RhY2ssIGRhdGEsIGxlbmd0aCkKKyAgICAgc3RydWN0IG9ic3RhY2sgKm9ic3RhY2s7CisgICAgIGNvbnN0IFBPSU5URVIgZGF0YTsKKyAgICAgaW50IGxlbmd0aDsKK3sKKyAgb2JzdGFja19ncm93MCAob2JzdGFjaywgZGF0YSwgbGVuZ3RoKTsKK30KKwordm9pZCAob2JzdGFja18xZ3JvdykgKG9ic3RhY2ssIGNoYXJhY3RlcikKKyAgICAgc3RydWN0IG9ic3RhY2sgKm9ic3RhY2s7CisgICAgIGludCBjaGFyYWN0ZXI7Cit7CisgIG9ic3RhY2tfMWdyb3cgKG9ic3RhY2ssIGNoYXJhY3Rlcik7Cit9CisKK3ZvaWQgKG9ic3RhY2tfYmxhbmspIChvYnN0YWNrLCBsZW5ndGgpCisgICAgIHN0cnVjdCBvYnN0YWNrICpvYnN0YWNrOworICAgICBpbnQgbGVuZ3RoOworeworICBvYnN0YWNrX2JsYW5rIChvYnN0YWNrLCBsZW5ndGgpOworfQorCit2b2lkIChvYnN0YWNrXzFncm93X2Zhc3QpIChvYnN0YWNrLCBjaGFyYWN0ZXIpCisgICAgIHN0cnVjdCBvYnN0YWNrICpvYnN0YWNrOworICAgICBpbnQgY2hhcmFjdGVyOworeworICBvYnN0YWNrXzFncm93X2Zhc3QgKG9ic3RhY2ssIGNoYXJhY3Rlcik7Cit9CisKK3ZvaWQgKG9ic3RhY2tfYmxhbmtfZmFzdCkgKG9ic3RhY2ssIGxlbmd0aCkKKyAgICAgc3RydWN0IG9ic3RhY2sgKm9ic3RhY2s7CisgICAgIGludCBsZW5ndGg7Cit7CisgIG9ic3RhY2tfYmxhbmtfZmFzdCAob2JzdGFjaywgbGVuZ3RoKTsKK30KKworUE9JTlRFUiAob2JzdGFja19maW5pc2gpIChvYnN0YWNrKQorICAgICBzdHJ1Y3Qgb2JzdGFjayAqb2JzdGFjazsKK3sKKyAgcmV0dXJuIG9ic3RhY2tfZmluaXNoIChvYnN0YWNrKTsKK30KKworUE9JTlRFUiAob2JzdGFja19hbGxvYykgKG9ic3RhY2ssIGxlbmd0aCkKKyAgICAgc3RydWN0IG9ic3RhY2sgKm9ic3RhY2s7CisgICAgIGludCBsZW5ndGg7Cit7CisgIHJldHVybiBvYnN0YWNrX2FsbG9jIChvYnN0YWNrLCBsZW5ndGgpOworfQorCitQT0lOVEVSIChvYnN0YWNrX2NvcHkpIChvYnN0YWNrLCBhZGRyZXNzLCBsZW5ndGgpCisgICAgIHN0cnVjdCBvYnN0YWNrICpvYnN0YWNrOworICAgICBjb25zdCBQT0lOVEVSIGFkZHJlc3M7CisgICAgIGludCBsZW5ndGg7Cit7CisgIHJldHVybiBvYnN0YWNrX2NvcHkgKG9ic3RhY2ssIGFkZHJlc3MsIGxlbmd0aCk7Cit9CisKK1BPSU5URVIgKG9ic3RhY2tfY29weTApIChvYnN0YWNrLCBhZGRyZXNzLCBsZW5ndGgpCisgICAgIHN0cnVjdCBvYnN0YWNrICpvYnN0YWNrOworICAgICBjb25zdCBQT0lOVEVSIGFkZHJlc3M7CisgICAgIGludCBsZW5ndGg7Cit7CisgIHJldHVybiBvYnN0YWNrX2NvcHkwIChvYnN0YWNrLCBhZGRyZXNzLCBsZW5ndGgpOworfQorCisjZW5kaWYgLyogX19TVERDX18gKi8KKworI2VuZGlmIC8qIDAgKi8KKworI2VuZGlmCS8qICFFTElERV9DT0RFICovCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2xpYi9jb21wYXQvb2JzdGFjay5oIGIvZHBrZy0xLjE2LjEuMS9saWIvY29tcGF0L29ic3RhY2suaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iYjkyMjMyCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9saWIvY29tcGF0L29ic3RhY2suaApAQCAtMCwwICsxLDYwNiBAQAorLyogb2JzdGFjay5oIC0gb2JqZWN0IHN0YWNrIG1hY3JvcworICAgQ29weXJpZ2h0IChDKSAxOTg4LDg5LDkwLDkxLDkyLDkzLDk0LDk2LDk3LDk4LDk5IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgorCisgICBUaGlzIGZpbGUgaXMgcGFydCBvZiB0aGUgR05VIEMgTGlicmFyeS4gIEl0cyBtYXN0ZXIgc291cmNlIGlzIE5PVCBwYXJ0IG9mCisgICB0aGUgQyBsaWJyYXJ5LCBob3dldmVyLiAgVGhlIG1hc3RlciBzb3VyY2UgbGl2ZXMgaW4gL2dkL2dudS9saWIuCisKKyAgIFRoZSBHTlUgQyBMaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgorICAgbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcworICAgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlCisgICBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorCisgICBUaGUgR05VIEMgTGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICAgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAgIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCisgICBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKworICAgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMKKyAgIExpY2Vuc2UgYWxvbmcgd2l0aCB0aGUgR05VIEMgTGlicmFyeTsgc2VlIHRoZSBmaWxlIENPUFlJTkcuTElCLiAgSWYgbm90LAorICAgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlIC0gU3VpdGUgMzMwLAorICAgQm9zdG9uLCBNQSAwMjExMS0xMzA3LCBVU0EuICAqLworCisvKiBTdW1tYXJ5OgorCitBbGwgdGhlIGFwcGFyZW50IGZ1bmN0aW9ucyBkZWZpbmVkIGhlcmUgYXJlIG1hY3Jvcy4gVGhlIGlkZWEKK2lzIHRoYXQgeW91IHdvdWxkIHVzZSB0aGVzZSBwcmUtdGVzdGVkIG1hY3JvcyB0byBzb2x2ZSBhCit2ZXJ5IHNwZWNpZmljIHNldCBvZiBwcm9ibGVtcywgYW5kIHRoZXkgd291bGQgcnVuIGZhc3QuCitDYXV0aW9uOiBubyBzaWRlLWVmZmVjdHMgaW4gYXJndW1lbnRzIHBsZWFzZSEhIFRoZXkgbWF5IGJlCitldmFsdWF0ZWQgTUFOWSB0aW1lcyEhCisKK1RoZXNlIG1hY3JvcyBvcGVyYXRlIGEgc3RhY2sgb2Ygb2JqZWN0cy4gIEVhY2ggb2JqZWN0IHN0YXJ0cyBsaWZlCitzbWFsbCwgYW5kIG1heSBncm93IHRvIG1hdHVyaXR5LiAgKENvbnNpZGVyIGJ1aWxkaW5nIGEgd29yZCBzeWxsYWJsZQorYnkgc3lsbGFibGUuKSAgQW4gb2JqZWN0IGNhbiBtb3ZlIHdoaWxlIGl0IGlzIGdyb3dpbmcuICBPbmNlIGl0IGhhcworYmVlbiAiZmluaXNoZWQiIGl0IG5ldmVyIGNoYW5nZXMgYWRkcmVzcyBhZ2Fpbi4gIFNvIHRoZSAidG9wIG9mIHRoZQorc3RhY2siIGlzIHR5cGljYWxseSBhbiBpbW1hdHVyZSBncm93aW5nIG9iamVjdCwgd2hpbGUgdGhlIHJlc3Qgb2YgdGhlCitzdGFjayBpcyBvZiBtYXR1cmUsIGZpeGVkIHNpemUgYW5kIGZpeGVkIGFkZHJlc3Mgb2JqZWN0cy4KKworVGhlc2Ugcm91dGluZXMgZ3JhYiBsYXJnZSBjaHVua3Mgb2YgbWVtb3J5LCB1c2luZyBhIGZ1bmN0aW9uIHlvdQorc3VwcGx5LCBjYWxsZWQgYG9ic3RhY2tfY2h1bmtfYWxsb2MnLiAgT24gb2NjYXNpb24sIHRoZXkgZnJlZSBjaHVua3MsCitieSBjYWxsaW5nIGBvYnN0YWNrX2NodW5rX2ZyZWUnLiAgWW91IG11c3QgZGVmaW5lIHRoZW0gYW5kIGRlY2xhcmUKK3RoZW0gYmVmb3JlIHVzaW5nIGFueSBvYnN0YWNrIG1hY3Jvcy4KKworRWFjaCBpbmRlcGVuZGVudCBzdGFjayBpcyByZXByZXNlbnRlZCBieSBhIGBzdHJ1Y3Qgb2JzdGFjaycuCitFYWNoIG9mIHRoZSBvYnN0YWNrIG1hY3JvcyBleHBlY3RzIGEgcG9pbnRlciB0byBzdWNoIGEgc3RydWN0dXJlCithcyB0aGUgZmlyc3QgYXJndW1lbnQuCisKK09uZSBtb3RpdmF0aW9uIGZvciB0aGlzIHBhY2thZ2UgaXMgdGhlIHByb2JsZW0gb2YgZ3Jvd2luZyBjaGFyIHN0cmluZ3MKK2luIHN5bWJvbCB0YWJsZXMuICBVbmxlc3MgeW91IGFyZSAiZmFzY2lzdCBwaWcgd2l0aCBhIHJlYWQtb25seSBtaW5kIgorLS1Hb3NwZXIncyBpbW1vcnRhbCBxdW90ZSBmcm9tIEhBS01FTSBpdGVtIDE1NCwgb3V0IG9mIGNvbnRleHQtLXlvdQord291bGQgbm90IGxpa2UgdG8gcHV0IGFueSBhcmJpdHJhcnkgdXBwZXIgbGltaXQgb24gdGhlIGxlbmd0aCBvZiB5b3VyCitzeW1ib2xzLgorCitJbiBwcmFjdGljZSB0aGlzIG9mdGVuIG1lYW5zIHlvdSB3aWxsIGJ1aWxkIG1hbnkgc2hvcnQgc3ltYm9scyBhbmQgYQorZmV3IGxvbmcgc3ltYm9scy4gIEF0IHRoZSB0aW1lIHlvdSBhcmUgcmVhZGluZyBhIHN5bWJvbCB5b3UgZG9uJ3Qga25vdworaG93IGxvbmcgaXQgaXMuICBPbmUgdHJhZGl0aW9uYWwgbWV0aG9kIGlzIHRvIHJlYWQgYSBzeW1ib2wgaW50byBhCitidWZmZXIsIHJlYWxsb2MoKWF0aW5nIHRoZSBidWZmZXIgZXZlcnkgdGltZSB5b3UgdHJ5IHRvIHJlYWQgYSBzeW1ib2wKK3RoYXQgaXMgbG9uZ2VyIHRoYW4gdGhlIGJ1ZmZlci4gIFRoaXMgaXMgYmVhdXQsIGJ1dCB5b3Ugc3RpbGwgd2lsbAord2FudCB0byBjb3B5IHRoZSBzeW1ib2wgZnJvbSB0aGUgYnVmZmVyIHRvIGEgbW9yZSBwZXJtYW5lbnQKK3N5bWJvbC10YWJsZSBlbnRyeSBzYXkgYWJvdXQgaGFsZiB0aGUgdGltZS4KKworV2l0aCBvYnN0YWNrcywgeW91IGNhbiB3b3JrIGRpZmZlcmVudGx5LiAgVXNlIG9uZSBvYnN0YWNrIGZvciBhbGwgc3ltYm9sCituYW1lcy4gIEFzIHlvdSByZWFkIGEgc3ltYm9sLCBncm93IHRoZSBuYW1lIGluIHRoZSBvYnN0YWNrIGdyYWR1YWxseS4KK1doZW4gdGhlIG5hbWUgaXMgY29tcGxldGUsIGZpbmFsaXplIGl0LiAgVGhlbiwgaWYgdGhlIHN5bWJvbCBleGlzdHMgYWxyZWFkeSwKK2ZyZWUgdGhlIG5ld2x5IHJlYWQgbmFtZS4KKworVGhlIHdheSB3ZSBkbyB0aGlzIGlzIHRvIHRha2UgYSBsYXJnZSBjaHVuaywgYWxsb2NhdGluZyBtZW1vcnkgZnJvbQorbG93IGFkZHJlc3Nlcy4gIFdoZW4geW91IHdhbnQgdG8gYnVpbGQgYSBzeW1ib2wgaW4gdGhlIGNodW5rIHlvdSBqdXN0CithZGQgY2hhcnMgYWJvdmUgdGhlIGN1cnJlbnQgImhpZ2ggd2F0ZXIgbWFyayIgaW4gdGhlIGNodW5rLiAgV2hlbiB5b3UKK2hhdmUgZmluaXNoZWQgYWRkaW5nIGNoYXJzLCBiZWNhdXNlIHlvdSBnb3QgdG8gdGhlIGVuZCBvZiB0aGUgc3ltYm9sLAoreW91IGtub3cgaG93IGxvbmcgdGhlIGNoYXJzIGFyZSwgYW5kIHlvdSBjYW4gY3JlYXRlIGEgbmV3IG9iamVjdC4KK01vc3RseSB0aGUgY2hhcnMgd2lsbCBub3QgYnVyc3Qgb3ZlciB0aGUgaGlnaGVzdCBhZGRyZXNzIG9mIHRoZSBjaHVuaywKK2JlY2F1c2UgeW91IHdvdWxkIHR5cGljYWxseSBleHBlY3QgYSBjaHVuayB0byBiZSAoc2F5KSAxMDAgdGltZXMgYXMKK2xvbmcgYXMgYW4gYXZlcmFnZSBvYmplY3QuCisKK0luIGNhc2UgdGhhdCBpc24ndCBjbGVhciwgd2hlbiB3ZSBoYXZlIGVub3VnaCBjaGFycyB0byBtYWtlIHVwCit0aGUgb2JqZWN0LCBUSEVZIEFSRSBBTFJFQURZIENPTlRJR1VPVVMgSU4gVEhFIENIVU5LIChndWFyYW50ZWVkKQorc28gd2UganVzdCBwb2ludCB0byBpdCB3aGVyZSBpdCBsaWVzLiAgTm8gbW92aW5nIG9mIGNoYXJzIGlzCituZWVkZWQgYW5kIHRoaXMgaXMgdGhlIHNlY29uZCB3aW46IHBvdGVudGlhbGx5IGxvbmcgc3RyaW5ncyBuZWVkCituZXZlciBiZSBleHBsaWNpdGx5IHNodWZmbGVkLiBPbmNlIGFuIG9iamVjdCBpcyBmb3JtZWQsIGl0IGRvZXMgbm90CitjaGFuZ2UgaXRzIGFkZHJlc3MgZHVyaW5nIGl0cyBsaWZldGltZS4KKworV2hlbiB0aGUgY2hhcnMgYnVyc3Qgb3ZlciBhIGNodW5rIGJvdW5kYXJ5LCB3ZSBhbGxvY2F0ZSBhIGxhcmdlcgorY2h1bmssIGFuZCB0aGVuIGNvcHkgdGhlIHBhcnRseSBmb3JtZWQgb2JqZWN0IGZyb20gdGhlIGVuZCBvZiB0aGUgb2xkCitjaHVuayB0byB0aGUgYmVnaW5uaW5nIG9mIHRoZSBuZXcgbGFyZ2VyIGNodW5rLiAgV2UgdGhlbiBjYXJyeSBvbgorYWNjcmV0aW5nIGNoYXJhY3RlcnMgdG8gdGhlIGVuZCBvZiB0aGUgb2JqZWN0IGFzIHdlIG5vcm1hbGx5IHdvdWxkLgorCitBIHNwZWNpYWwgbWFjcm8gaXMgcHJvdmlkZWQgdG8gYWRkIGEgc2luZ2xlIGNoYXIgYXQgYSB0aW1lIHRvIGEKK2dyb3dpbmcgb2JqZWN0LiAgVGhpcyBhbGxvd3MgdGhlIHVzZSBvZiByZWdpc3RlciB2YXJpYWJsZXMsIHdoaWNoCiticmVhayB0aGUgb3JkaW5hcnkgJ2dyb3d0aCcgbWFjcm8uCisKK1N1bW1hcnk6CisJV2UgYWxsb2NhdGUgbGFyZ2UgY2h1bmtzLgorCVdlIGNhcnZlIG91dCBvbmUgb2JqZWN0IGF0IGEgdGltZSBmcm9tIHRoZSBjdXJyZW50IGNodW5rLgorCU9uY2UgY2FydmVkLCBhbiBvYmplY3QgbmV2ZXIgbW92ZXMuCisJV2UgYXJlIGZyZWUgdG8gYXBwZW5kIGRhdGEgb2YgYW55IHNpemUgdG8gdGhlIGN1cnJlbnRseQorCSAgZ3Jvd2luZyBvYmplY3QuCisJRXhhY3RseSBvbmUgb2JqZWN0IGlzIGdyb3dpbmcgaW4gYW4gb2JzdGFjayBhdCBhbnkgb25lIHRpbWUuCisJWW91IGNhbiBydW4gb25lIG9ic3RhY2sgcGVyIGNvbnRyb2wgYmxvY2suCisJWW91IG1heSBoYXZlIGFzIG1hbnkgY29udHJvbCBibG9ja3MgYXMgeW91IGRhcmUuCisJQmVjYXVzZSBvZiB0aGUgd2F5IHdlIGRvIGl0LCB5b3UgY2FuIGB1bndpbmQnIGFuIG9ic3RhY2sKKwkgIGJhY2sgdG8gYSBwcmV2aW91cyBzdGF0ZS4gKFlvdSBtYXkgcmVtb3ZlIG9iamVjdHMgbXVjaAorCSAgYXMgeW91IHdvdWxkIHdpdGggYSBzdGFjay4pCisqLworCisKKy8qIERvbid0IGRvIHRoZSBjb250ZW50cyBvZiB0aGlzIGZpbGUgbW9yZSB0aGFuIG9uY2UuICAqLworCisjaWZuZGVmIF9PQlNUQUNLX0gKKyNkZWZpbmUgX09CU1RBQ0tfSCAxCisKKyNpZmRlZiBfX2NwbHVzcGx1cworZXh0ZXJuICJDIiB7CisjZW5kaWYKKwwKKy8qIFdlIHVzZSBzdWJ0cmFjdGlvbiBvZiAoY2hhciAqKSAwIGluc3RlYWQgb2YgY2FzdGluZyB0byBpbnQKKyAgIGJlY2F1c2Ugb24gd29yZC1hZGRyZXNzYWJsZSBtYWNoaW5lcyBhIHNpbXBsZSBjYXN0IHRvIGludAorICAgbWF5IGlnbm9yZSB0aGUgYnl0ZS13aXRoaW4td29yZCBmaWVsZCBvZiB0aGUgcG9pbnRlci4gICovCisKKyNpZm5kZWYgX19QVFJfVE9fSU5UCisjIGRlZmluZSBfX1BUUl9UT19JTlQoUCkgKChQKSAtIChjaGFyICopIDApCisjZW5kaWYKKworI2lmbmRlZiBfX0lOVF9UT19QVFIKKyMgZGVmaW5lIF9fSU5UX1RPX1BUUihQKSAoKFApICsgKGNoYXIgKikgMCkKKyNlbmRpZgorCisvKiBXZSBuZWVkIHRoZSB0eXBlIG9mIHRoZSByZXN1bHRpbmcgb2JqZWN0LiAgSWYgX19QVFJESUZGX1RZUEVfXyBpcworICAgZGVmaW5lZCwgYXMgd2l0aCBHTlUgQywgdXNlIHRoYXQ7IHRoYXQgd2F5IHdlIGRvbid0IHBvbGx1dGUgdGhlCisgICBuYW1lc3BhY2Ugd2l0aCA8c3RkZGVmLmg+J3Mgc3ltYm9scy4gIE90aGVyd2lzZSwgaWYgPHN0ZGRlZi5oPiBpcworICAgYXZhaWxhYmxlLCBpbmNsdWRlIGl0IGFuZCB1c2UgcHRyZGlmZl90LiAgSW4gdHJhZGl0aW9uYWwgQywgbG9uZyBpcworICAgdGhlIGJlc3QgdGhhdCB3ZSBjYW4gZG8uICAqLworCisjaWZkZWYgX19QVFJESUZGX1RZUEVfXworIyBkZWZpbmUgUFRSX0lOVF9UWVBFIF9fUFRSRElGRl9UWVBFX18KKyNlbHNlCisjIGlmZGVmIEhBVkVfU1REREVGX0gKKyMgIGluY2x1ZGUgPHN0ZGRlZi5oPgorIyAgZGVmaW5lIFBUUl9JTlRfVFlQRSBwdHJkaWZmX3QKKyMgZWxzZQorIyAgZGVmaW5lIFBUUl9JTlRfVFlQRSBsb25nCisjIGVuZGlmCisjZW5kaWYKKworI2lmIGRlZmluZWQgX0xJQkMgfHwgZGVmaW5lZCBIQVZFX1NUUklOR19ICisjIGluY2x1ZGUgPHN0cmluZy5oPgorIyBkZWZpbmUgX29ic3RhY2tfbWVtY3B5KFRvLCBGcm9tLCBOKSBtZW1jcHkgKChUbyksIChGcm9tKSwgKE4pKQorI2Vsc2UKKyMgaWZkZWYgbWVtY3B5CisjICBkZWZpbmUgX29ic3RhY2tfbWVtY3B5KFRvLCBGcm9tLCBOKSBtZW1jcHkgKChUbyksIChGcm9tKSwgKE4pKQorIyBlbHNlCisjICBkZWZpbmUgX29ic3RhY2tfbWVtY3B5KFRvLCBGcm9tLCBOKSBiY29weSAoKEZyb20pLCAoVG8pLCAoTikpCisjIGVuZGlmCisjZW5kaWYKKworc3RydWN0IF9vYnN0YWNrX2NodW5rCQkvKiBMaXZlcyBhdCBmcm9udCBvZiBlYWNoIGNodW5rLiAqLworeworICBjaGFyICAqbGltaXQ7CQkJLyogMSBwYXN0IGVuZCBvZiB0aGlzIGNodW5rICovCisgIHN0cnVjdCBfb2JzdGFja19jaHVuayAqcHJldjsJLyogYWRkcmVzcyBvZiBwcmlvciBjaHVuayBvciBOVUxMICovCisgIGNoYXIJY29udGVudHNbNF07CQkvKiBvYmplY3RzIGJlZ2luIGhlcmUgKi8KK307CisKK3N0cnVjdCBvYnN0YWNrCQkvKiBjb250cm9sIGN1cnJlbnQgb2JqZWN0IGluIGN1cnJlbnQgY2h1bmsgKi8KK3sKKyAgbG9uZwljaHVua19zaXplOwkJLyogcHJlZmVycmVkIHNpemUgdG8gYWxsb2NhdGUgY2h1bmtzIGluICovCisgIHN0cnVjdCBfb2JzdGFja19jaHVuayAqY2h1bms7CS8qIGFkZHJlc3Mgb2YgY3VycmVudCBzdHJ1Y3Qgb2JzdGFja19jaHVuayAqLworICBjaGFyCSpvYmplY3RfYmFzZTsJCS8qIGFkZHJlc3Mgb2Ygb2JqZWN0IHdlIGFyZSBidWlsZGluZyAqLworICBjaGFyCSpuZXh0X2ZyZWU7CQkvKiB3aGVyZSB0byBhZGQgbmV4dCBjaGFyIHRvIGN1cnJlbnQgb2JqZWN0ICovCisgIGNoYXIJKmNodW5rX2xpbWl0OwkJLyogYWRkcmVzcyBvZiBjaGFyIGFmdGVyIGN1cnJlbnQgY2h1bmsgKi8KKyAgUFRSX0lOVF9UWVBFIHRlbXA7CQkvKiBUZW1wb3JhcnkgZm9yIHNvbWUgbWFjcm9zLiAgKi8KKyAgaW50ICAgYWxpZ25tZW50X21hc2s7CQkvKiBNYXNrIG9mIGFsaWdubWVudCBmb3IgZWFjaCBvYmplY3QuICovCisjaWYgZGVmaW5lZCBfX1NURENfXyAmJiBfX1NURENfXworICAvKiBUaGVzZSBwcm90b3R5cGVzIHZhcnkgYmFzZWQgb24gYHVzZV9leHRyYV9hcmcnLCBhbmQgd2UgdXNlCisgICAgIGNhc3RzIHRvIHRoZSBwcm90b3R5cGVsZXNzIGZ1bmN0aW9uIHR5cGUgaW4gYWxsIGFzc2lnbm1lbnRzLAorICAgICBidXQgaGF2aW5nIHByb3RvdHlwZXMgaGVyZSBxdWlldHMgLVdzdHJpY3QtcHJvdG90eXBlcy4gICovCisgIHN0cnVjdCBfb2JzdGFja19jaHVuayAqKCpjaHVua2Z1bikgKHZvaWQgKiwgbG9uZyk7CisgIHZvaWQgKCpmcmVlZnVuKSAodm9pZCAqLCBzdHJ1Y3QgX29ic3RhY2tfY2h1bmsgKik7CisgIHZvaWQgKmV4dHJhX2FyZzsJCS8qIGZpcnN0IGFyZyBmb3IgY2h1bmsgYWxsb2MvZGVhbGxvYyBmdW5jcyAqLworI2Vsc2UKKyAgc3RydWN0IF9vYnN0YWNrX2NodW5rICooKmNodW5rZnVuKSAoKTsgLyogVXNlcidzIGZjbiB0byBhbGxvY2F0ZSBhIGNodW5rLiAgKi8KKyAgdm9pZCAoKmZyZWVmdW4pICgpOwkJLyogVXNlcidzIGZ1bmN0aW9uIHRvIGZyZWUgYSBjaHVuay4gICovCisgIGNoYXIgKmV4dHJhX2FyZzsJCS8qIGZpcnN0IGFyZyBmb3IgY2h1bmsgYWxsb2MvZGVhbGxvYyBmdW5jcyAqLworI2VuZGlmCisgIHVuc2lnbmVkIHVzZV9leHRyYV9hcmc6MTsJLyogY2h1bmsgYWxsb2MvZGVhbGxvYyBmdW5jcyB0YWtlIGV4dHJhIGFyZyAqLworICB1bnNpZ25lZCBtYXliZV9lbXB0eV9vYmplY3Q6MTsvKiBUaGVyZSBpcyBhIHBvc3NpYmlsaXR5IHRoYXQgdGhlIGN1cnJlbnQKKwkJCQkgICBjaHVuayBjb250YWlucyBhIHplcm8tbGVuZ3RoIG9iamVjdC4gIFRoaXMKKwkJCQkgICBwcmV2ZW50cyBmcmVlaW5nIHRoZSBjaHVuayBpZiB3ZSBhbGxvY2F0ZQorCQkJCSAgIGEgYmlnZ2VyIGNodW5rIHRvIHJlcGxhY2UgaXQuICovCisgIHVuc2lnbmVkIGFsbG9jX2ZhaWxlZDoxOwkvKiBObyBsb25nZXIgdXNlZCwgYXMgd2Ugbm93IGNhbGwgdGhlIGZhaWxlZAorCQkJCSAgIGhhbmRsZXIgb24gZXJyb3IsIGJ1dCByZXRhaW5lZCBmb3IgYmluYXJ5CisJCQkJICAgY29tcGF0aWJpbGl0eS4gICovCit9OworCisvKiBEZWNsYXJlIHRoZSBleHRlcm5hbCBmdW5jdGlvbnMgd2UgdXNlOyB0aGV5IGFyZSBpbiBvYnN0YWNrLmMuICAqLworCisjaWYgZGVmaW5lZCBfX1NURENfXyAmJiBfX1NURENfXworZXh0ZXJuIHZvaWQgX29ic3RhY2tfbmV3Y2h1bmsgKHN0cnVjdCBvYnN0YWNrICosIGludCk7CitleHRlcm4gdm9pZCBfb2JzdGFja19mcmVlIChzdHJ1Y3Qgb2JzdGFjayAqLCB2b2lkICopOworZXh0ZXJuIGludCBfb2JzdGFja19iZWdpbiAoc3RydWN0IG9ic3RhY2sgKiwgaW50LCBpbnQsCisJCQkgICAgdm9pZCAqKCopIChsb25nKSwgdm9pZCAoKikgKHZvaWQgKikpOworZXh0ZXJuIGludCBfb2JzdGFja19iZWdpbl8xIChzdHJ1Y3Qgb2JzdGFjayAqLCBpbnQsIGludCwKKwkJCSAgICAgdm9pZCAqKCopICh2b2lkICosIGxvbmcpLAorCQkJICAgICB2b2lkICgqKSAodm9pZCAqLCB2b2lkICopLCB2b2lkICopOworZXh0ZXJuIGludCBfb2JzdGFja19tZW1vcnlfdXNlZCAoc3RydWN0IG9ic3RhY2sgKik7CisjZWxzZQorZXh0ZXJuIHZvaWQgX29ic3RhY2tfbmV3Y2h1bmsgKCk7CitleHRlcm4gdm9pZCBfb2JzdGFja19mcmVlICgpOworZXh0ZXJuIGludCBfb2JzdGFja19iZWdpbiAoKTsKK2V4dGVybiBpbnQgX29ic3RhY2tfYmVnaW5fMSAoKTsKK2V4dGVybiBpbnQgX29ic3RhY2tfbWVtb3J5X3VzZWQgKCk7CisjZW5kaWYKKwwKKyNpZiBkZWZpbmVkIF9fU1REQ19fICYmIF9fU1REQ19fCisKKy8qIERvIHRoZSBmdW5jdGlvbi1kZWNsYXJhdGlvbnMgYWZ0ZXIgdGhlIHN0cnVjdHMKKyAgIGJ1dCBiZWZvcmUgZGVmaW5pbmcgdGhlIG1hY3Jvcy4gICovCisKK3ZvaWQgb2JzdGFja19pbml0IChzdHJ1Y3Qgb2JzdGFjayAqb2JzdGFjayk7CisKK3ZvaWQgKiBvYnN0YWNrX2FsbG9jIChzdHJ1Y3Qgb2JzdGFjayAqb2JzdGFjaywgaW50IHNpemUpOworCit2b2lkICogb2JzdGFja19jb3B5IChzdHJ1Y3Qgb2JzdGFjayAqb2JzdGFjaywgY29uc3Qgdm9pZCAqYWRkcmVzcywgaW50IHNpemUpOwordm9pZCAqIG9ic3RhY2tfY29weTAgKHN0cnVjdCBvYnN0YWNrICpvYnN0YWNrLCBjb25zdCB2b2lkICphZGRyZXNzLCBpbnQgc2l6ZSk7CisKK3ZvaWQgb2JzdGFja19mcmVlIChzdHJ1Y3Qgb2JzdGFjayAqb2JzdGFjaywgdm9pZCAqYmxvY2spOworCit2b2lkIG9ic3RhY2tfYmxhbmsgKHN0cnVjdCBvYnN0YWNrICpvYnN0YWNrLCBpbnQgc2l6ZSk7CisKK3ZvaWQgb2JzdGFja19ncm93IChzdHJ1Y3Qgb2JzdGFjayAqb2JzdGFjaywgY29uc3Qgdm9pZCAqZGF0YSwgaW50IHNpemUpOwordm9pZCBvYnN0YWNrX2dyb3cwIChzdHJ1Y3Qgb2JzdGFjayAqb2JzdGFjaywgY29uc3Qgdm9pZCAqZGF0YSwgaW50IHNpemUpOworCit2b2lkIG9ic3RhY2tfMWdyb3cgKHN0cnVjdCBvYnN0YWNrICpvYnN0YWNrLCBpbnQgZGF0YV9jaGFyKTsKK3ZvaWQgb2JzdGFja19wdHJfZ3JvdyAoc3RydWN0IG9ic3RhY2sgKm9ic3RhY2ssIGNvbnN0IHZvaWQgKmRhdGEpOwordm9pZCBvYnN0YWNrX2ludF9ncm93IChzdHJ1Y3Qgb2JzdGFjayAqb2JzdGFjaywgaW50IGRhdGEpOworCit2b2lkICogb2JzdGFja19maW5pc2ggKHN0cnVjdCBvYnN0YWNrICpvYnN0YWNrKTsKKworaW50IG9ic3RhY2tfb2JqZWN0X3NpemUgKHN0cnVjdCBvYnN0YWNrICpvYnN0YWNrKTsKKworaW50IG9ic3RhY2tfcm9vbSAoc3RydWN0IG9ic3RhY2sgKm9ic3RhY2spOwordm9pZCBvYnN0YWNrX21ha2Vfcm9vbSAoc3RydWN0IG9ic3RhY2sgKm9ic3RhY2ssIGludCBzaXplKTsKK3ZvaWQgb2JzdGFja18xZ3Jvd19mYXN0IChzdHJ1Y3Qgb2JzdGFjayAqb2JzdGFjaywgaW50IGRhdGFfY2hhcik7Cit2b2lkIG9ic3RhY2tfcHRyX2dyb3dfZmFzdCAoc3RydWN0IG9ic3RhY2sgKm9ic3RhY2ssIGNvbnN0IHZvaWQgKmRhdGEpOwordm9pZCBvYnN0YWNrX2ludF9ncm93X2Zhc3QgKHN0cnVjdCBvYnN0YWNrICpvYnN0YWNrLCBpbnQgZGF0YSk7Cit2b2lkIG9ic3RhY2tfYmxhbmtfZmFzdCAoc3RydWN0IG9ic3RhY2sgKm9ic3RhY2ssIGludCBzaXplKTsKKwordm9pZCAqIG9ic3RhY2tfYmFzZSAoc3RydWN0IG9ic3RhY2sgKm9ic3RhY2spOwordm9pZCAqIG9ic3RhY2tfbmV4dF9mcmVlIChzdHJ1Y3Qgb2JzdGFjayAqb2JzdGFjayk7CitpbnQgb2JzdGFja19hbGlnbm1lbnRfbWFzayAoc3RydWN0IG9ic3RhY2sgKm9ic3RhY2spOworaW50IG9ic3RhY2tfY2h1bmtfc2l6ZSAoc3RydWN0IG9ic3RhY2sgKm9ic3RhY2spOworaW50IG9ic3RhY2tfbWVtb3J5X3VzZWQgKHN0cnVjdCBvYnN0YWNrICpvYnN0YWNrKTsKKworI2VuZGlmIC8qIF9fU1REQ19fICovCisKKy8qIE5vbi1BTlNJIEMgY2Fubm90IHJlYWxseSBzdXBwb3J0IGFsdGVybmF0aXZlIGZ1bmN0aW9ucyBmb3IgdGhlc2UgbWFjcm9zLAorICAgc28gd2UgZG8gbm90IGRlY2xhcmUgdGhlbS4gICovCisKKy8qIEVycm9yIGhhbmRsZXIgY2FsbGVkIHdoZW4gYG9ic3RhY2tfY2h1bmtfYWxsb2MnIGZhaWxlZCB0byBhbGxvY2F0ZQorICAgbW9yZSBtZW1vcnkuICBUaGlzIGNhbiBiZSBzZXQgdG8gYSB1c2VyIGRlZmluZWQgZnVuY3Rpb24gd2hpY2gKKyAgIHNob3VsZCBlaXRoZXIgYWJvcnQgZ3JhY2VmdWxseSBvciB1c2UgbG9uZ2p1bXAgLSBidXQgc2hvdWxkbid0CisgICByZXR1cm4uICBUaGUgZGVmYXVsdCBhY3Rpb24gaXMgdG8gcHJpbnQgYSBtZXNzYWdlIGFuZCBhYm9ydC4gICovCisjaWYgZGVmaW5lZCBfX1NURENfXyAmJiBfX1NURENfXworZXh0ZXJuIHZvaWQgKCpvYnN0YWNrX2FsbG9jX2ZhaWxlZF9oYW5kbGVyKSAodm9pZCk7CisjZWxzZQorZXh0ZXJuIHZvaWQgKCpvYnN0YWNrX2FsbG9jX2ZhaWxlZF9oYW5kbGVyKSAoKTsKKyNlbmRpZgorCisvKiBFeGl0IHZhbHVlIHVzZWQgd2hlbiBgcHJpbnRfYW5kX2Fib3J0JyBpcyB1c2VkLiAgKi8KK2V4dGVybiBpbnQgb2JzdGFja19leGl0X2ZhaWx1cmU7CisMCisvKiBQb2ludGVyIHRvIGJlZ2lubmluZyBvZiBvYmplY3QgYmVpbmcgYWxsb2NhdGVkIG9yIHRvIGJlIGFsbG9jYXRlZCBuZXh0LgorICAgTm90ZSB0aGF0IHRoaXMgbWlnaHQgbm90IGJlIHRoZSBmaW5hbCBhZGRyZXNzIG9mIHRoZSBvYmplY3QKKyAgIGJlY2F1c2UgYSBuZXcgY2h1bmsgbWlnaHQgYmUgbmVlZGVkIHRvIGhvbGQgdGhlIGZpbmFsIHNpemUuICAqLworCisjZGVmaW5lIG9ic3RhY2tfYmFzZShoKSAoKGgpLT5vYmplY3RfYmFzZSkKKworLyogU2l6ZSBmb3IgYWxsb2NhdGluZyBvcmRpbmFyeSBjaHVua3MuICAqLworCisjZGVmaW5lIG9ic3RhY2tfY2h1bmtfc2l6ZShoKSAoKGgpLT5jaHVua19zaXplKQorCisvKiBQb2ludGVyIHRvIG5leHQgYnl0ZSBub3QgeWV0IGFsbG9jYXRlZCBpbiBjdXJyZW50IGNodW5rLiAgKi8KKworI2RlZmluZSBvYnN0YWNrX25leHRfZnJlZShoKQkoKGgpLT5uZXh0X2ZyZWUpCisKKy8qIE1hc2sgc3BlY2lmeWluZyBsb3cgYml0cyB0aGF0IHNob3VsZCBiZSBjbGVhciBpbiBhZGRyZXNzIG9mIGFuIG9iamVjdC4gICovCisKKyNkZWZpbmUgb2JzdGFja19hbGlnbm1lbnRfbWFzayhoKSAoKGgpLT5hbGlnbm1lbnRfbWFzaykKKworLyogVG8gcHJldmVudCBwcm90b3R5cGUgd2FybmluZ3MgcHJvdmlkZSBjb21wbGV0ZSBhcmd1bWVudCBsaXN0IGluCisgICBzdGFuZGFyZCBDIHZlcnNpb24uICAqLworI2lmIGRlZmluZWQgX19TVERDX18gJiYgX19TVERDX18KKworIyBkZWZpbmUgb2JzdGFja19pbml0KGgpCQkJCQlcCisgIF9vYnN0YWNrX2JlZ2luICgoaCksIDAsIDAsCQkJCQlcCisJCSAgKHZvaWQgKigqKSAobG9uZykpIG9ic3RhY2tfY2h1bmtfYWxsb2MsIAlcCisJCSAgKHZvaWQgKCopICh2b2lkICopKSBvYnN0YWNrX2NodW5rX2ZyZWUpCisKKyMgZGVmaW5lIG9ic3RhY2tfYmVnaW4oaCwgc2l6ZSkJCQkJCVwKKyAgX29ic3RhY2tfYmVnaW4gKChoKSwgKHNpemUpLCAwLAkJCQlcCisJCSAgKHZvaWQgKigqKSAobG9uZykpIG9ic3RhY2tfY2h1bmtfYWxsb2MsIAlcCisJCSAgKHZvaWQgKCopICh2b2lkICopKSBvYnN0YWNrX2NodW5rX2ZyZWUpCisKKyMgZGVmaW5lIG9ic3RhY2tfc3BlY2lmeV9hbGxvY2F0aW9uKGgsIHNpemUsIGFsaWdubWVudCwgY2h1bmtmdW4sIGZyZWVmdW4pIFwKKyAgX29ic3RhY2tfYmVnaW4gKChoKSwgKHNpemUpLCAoYWxpZ25tZW50KSwJCQkJICAgXAorCQkgICh2b2lkICooKikgKGxvbmcpKSAoY2h1bmtmdW4pLCAJCQkgICBcCisJCSAgKHZvaWQgKCopICh2b2lkICopKSAoZnJlZWZ1bikpCisKKyMgZGVmaW5lIG9ic3RhY2tfc3BlY2lmeV9hbGxvY2F0aW9uX3dpdGhfYXJnKGgsIHNpemUsIGFsaWdubWVudCwgY2h1bmtmdW4sIGZyZWVmdW4sIGFyZykgXAorICBfb2JzdGFja19iZWdpbl8xICgoaCksIChzaXplKSwgKGFsaWdubWVudCksCQkJCVwKKwkJICAgICh2b2lkICooKikgKHZvaWQgKiwgbG9uZykpIChjaHVua2Z1biksCQlcCisJCSAgICAodm9pZCAoKikgKHZvaWQgKiwgdm9pZCAqKSkgKGZyZWVmdW4pLCAoYXJnKSkKKworIyBkZWZpbmUgb2JzdGFja19jaHVua2Z1bihoLCBuZXdjaHVua2Z1bikgXAorICAoKGgpIC0+IGNodW5rZnVuID0gKHN0cnVjdCBfb2JzdGFja19jaHVuayAqKCopKHZvaWQgKiwgbG9uZykpIChuZXdjaHVua2Z1bikpCisKKyMgZGVmaW5lIG9ic3RhY2tfZnJlZWZ1bihoLCBuZXdmcmVlZnVuKSBcCisgICgoaCkgLT4gZnJlZWZ1biA9ICh2b2lkICgqKSh2b2lkICosIHN0cnVjdCBfb2JzdGFja19jaHVuayAqKSkgKG5ld2ZyZWVmdW4pKQorCisjZWxzZQorCisjIGRlZmluZSBvYnN0YWNrX2luaXQoaCkJCQkJCQlcCisgIF9vYnN0YWNrX2JlZ2luICgoaCksIDAsIDAsCQkJCQkJXAorCQkgICh2b2lkICooKikgKCkpIG9ic3RhY2tfY2h1bmtfYWxsb2MsIAkJCVwKKwkJICAodm9pZCAoKikgKCkpIG9ic3RhY2tfY2h1bmtfZnJlZSkKKworIyBkZWZpbmUgb2JzdGFja19iZWdpbihoLCBzaXplKQkJCQkJCVwKKyAgX29ic3RhY2tfYmVnaW4gKChoKSwgKHNpemUpLCAwLAkJCQkJXAorCQkgICh2b2lkICooKikgKCkpIG9ic3RhY2tfY2h1bmtfYWxsb2MsCQkJXAorCQkgICh2b2lkICgqKSAoKSkgb2JzdGFja19jaHVua19mcmVlKQorCisjIGRlZmluZSBvYnN0YWNrX3NwZWNpZnlfYWxsb2NhdGlvbihoLCBzaXplLCBhbGlnbm1lbnQsIGNodW5rZnVuLCBmcmVlZnVuKSBcCisgIF9vYnN0YWNrX2JlZ2luICgoaCksIChzaXplKSwgKGFsaWdubWVudCksCQkJCSAgIFwKKwkJICAodm9pZCAqKCopICgpKSAoY2h1bmtmdW4pLCAJCQkJICAgXAorCQkgICh2b2lkICgqKSAoKSkgKGZyZWVmdW4pKQorCisjIGRlZmluZSBvYnN0YWNrX3NwZWNpZnlfYWxsb2NhdGlvbl93aXRoX2FyZyhoLCBzaXplLCBhbGlnbm1lbnQsIGNodW5rZnVuLCBmcmVlZnVuLCBhcmcpIFwKKyAgX29ic3RhY2tfYmVnaW5fMSAoKGgpLCAoc2l6ZSksIChhbGlnbm1lbnQpLAkJCQlcCisJCSAgICAodm9pZCAqKCopICgpKSAoY2h1bmtmdW4pLCAJCQkJXAorCQkgICAgKHZvaWQgKCopICgpKSAoZnJlZWZ1biksIChhcmcpKQorCisjIGRlZmluZSBvYnN0YWNrX2NodW5rZnVuKGgsIG5ld2NodW5rZnVuKSBcCisgICgoaCkgLT4gY2h1bmtmdW4gPSAoc3RydWN0IF9vYnN0YWNrX2NodW5rICooKikoKSkgKG5ld2NodW5rZnVuKSkKKworIyBkZWZpbmUgb2JzdGFja19mcmVlZnVuKGgsIG5ld2ZyZWVmdW4pIFwKKyAgKChoKSAtPiBmcmVlZnVuID0gKHZvaWQgKCopKCkpIChuZXdmcmVlZnVuKSkKKworI2VuZGlmCisKKyNkZWZpbmUgb2JzdGFja18xZ3Jvd19mYXN0KGgsYWNoYXIpICgqKChoKS0+bmV4dF9mcmVlKSsrID0gYWNoYXIpCisKKyNkZWZpbmUgb2JzdGFja19ibGFua19mYXN0KGgsbikgKChoKS0+bmV4dF9mcmVlICs9IChuKSkKKworI2RlZmluZSBvYnN0YWNrX21lbW9yeV91c2VkKGgpIF9vYnN0YWNrX21lbW9yeV91c2VkIChoKQorDAorI2lmIGRlZmluZWQgX19HTlVDX18gJiYgZGVmaW5lZCBfX1NURENfXyAmJiBfX1NURENfXworLyogTmV4dFN0ZXAgMi4wIGNjIGlzIHJlYWxseSBnY2MgMS45MyBidXQgaXQgZGVmaW5lcyBfX0dOVUNfXyA9IDIgYW5kCisgICBkb2VzIG5vdCBpbXBsZW1lbnQgX19leHRlbnNpb25fXy4gIEJ1dCB0aGF0IGNvbXBpbGVyIGRvZXNuJ3QgZGVmaW5lCisgICBfX0dOVUNfTUlOT1JfXy4gICovCisjIGlmIF9fR05VQ19fIDwgMiB8fCAoX19OZVhUX18gJiYgIV9fR05VQ19NSU5PUl9fKQorIyAgZGVmaW5lIF9fZXh0ZW5zaW9uX18KKyMgZW5kaWYKKworLyogRm9yIEdOVSBDLCBpZiBub3QgLXRyYWRpdGlvbmFsLAorICAgd2UgY2FuIGRlZmluZSB0aGVzZSBtYWNyb3MgdG8gY29tcHV0ZSBhbGwgYXJncyBvbmx5IG9uY2UKKyAgIHdpdGhvdXQgdXNpbmcgYSBnbG9iYWwgdmFyaWFibGUuCisgICBBbHNvLCB3ZSBjYW4gYXZvaWQgdXNpbmcgdGhlIGB0ZW1wJyBzbG90LCB0byBtYWtlIGZhc3RlciBjb2RlLiAgKi8KKworIyBkZWZpbmUgb2JzdGFja19vYmplY3Rfc2l6ZShPQlNUQUNLKQkJCQkJXAorICBfX2V4dGVuc2lvbl9fCQkJCQkJCQlcCisgICh7IHN0cnVjdCBvYnN0YWNrICpfX28gPSAoT0JTVEFDSyk7CQkJCQlcCisgICAgICh1bnNpZ25lZCkgKF9fby0+bmV4dF9mcmVlIC0gX19vLT5vYmplY3RfYmFzZSk7IH0pCisKKyMgZGVmaW5lIG9ic3RhY2tfcm9vbShPQlNUQUNLKQkJCQkJCVwKKyAgX19leHRlbnNpb25fXwkJCQkJCQkJXAorICAoeyBzdHJ1Y3Qgb2JzdGFjayAqX19vID0gKE9CU1RBQ0spOwkJCQkJXAorICAgICAodW5zaWduZWQpIChfX28tPmNodW5rX2xpbWl0IC0gX19vLT5uZXh0X2ZyZWUpOyB9KQorCisjIGRlZmluZSBvYnN0YWNrX21ha2Vfcm9vbShPQlNUQUNLLGxlbmd0aCkJCQkJXAorX19leHRlbnNpb25fXwkJCQkJCQkJXAorKHsgc3RydWN0IG9ic3RhY2sgKl9fbyA9IChPQlNUQUNLKTsJCQkJCVwKKyAgIGludCBfX2xlbiA9IChsZW5ndGgpOwkJCQkJCVwKKyAgIGlmIChfX28tPmNodW5rX2xpbWl0IC0gX19vLT5uZXh0X2ZyZWUgPCBfX2xlbikJCQlcCisgICAgIF9vYnN0YWNrX25ld2NodW5rIChfX28sIF9fbGVuKTsJCQkJCVwKKyAgICh2b2lkKSAwOyB9KQorCisjIGRlZmluZSBvYnN0YWNrX2VtcHR5X3AoT0JTVEFDSykJCQkJCVwKKyAgX19leHRlbnNpb25fXwkJCQkJCQkJXAorICAoeyBzdHJ1Y3Qgb2JzdGFjayAqX19vID0gKE9CU1RBQ0spOwkJCQkJXAorICAgICAoX19vLT5jaHVuay0+cHJldiA9PSAwICYmIF9fby0+bmV4dF9mcmVlIC0gX19vLT5jaHVuay0+Y29udGVudHMgPT0gMCk7IH0pCisKKyMgZGVmaW5lIG9ic3RhY2tfZ3JvdyhPQlNUQUNLLHdoZXJlLGxlbmd0aCkJCQkJXAorX19leHRlbnNpb25fXwkJCQkJCQkJXAorKHsgc3RydWN0IG9ic3RhY2sgKl9fbyA9IChPQlNUQUNLKTsJCQkJCVwKKyAgIGludCBfX2xlbiA9IChsZW5ndGgpOwkJCQkJCVwKKyAgIGlmIChfX28tPm5leHRfZnJlZSArIF9fbGVuID4gX19vLT5jaHVua19saW1pdCkJCQlcCisgICAgIF9vYnN0YWNrX25ld2NodW5rIChfX28sIF9fbGVuKTsJCQkJCVwKKyAgIF9vYnN0YWNrX21lbWNweSAoX19vLT5uZXh0X2ZyZWUsICh3aGVyZSksIF9fbGVuKTsJCQlcCisgICBfX28tPm5leHRfZnJlZSArPSBfX2xlbjsJCQkJCQlcCisgICAodm9pZCkgMDsgfSkKKworIyBkZWZpbmUgb2JzdGFja19ncm93MChPQlNUQUNLLHdoZXJlLGxlbmd0aCkJCQkJXAorX19leHRlbnNpb25fXwkJCQkJCQkJXAorKHsgc3RydWN0IG9ic3RhY2sgKl9fbyA9IChPQlNUQUNLKTsJCQkJCVwKKyAgIGludCBfX2xlbiA9IChsZW5ndGgpOwkJCQkJCVwKKyAgIGlmIChfX28tPm5leHRfZnJlZSArIF9fbGVuICsgMSA+IF9fby0+Y2h1bmtfbGltaXQpCQkJXAorICAgICBfb2JzdGFja19uZXdjaHVuayAoX19vLCBfX2xlbiArIDEpOwkJCQlcCisgICBfb2JzdGFja19tZW1jcHkgKF9fby0+bmV4dF9mcmVlLCAod2hlcmUpLCBfX2xlbik7CQkJXAorICAgX19vLT5uZXh0X2ZyZWUgKz0gX19sZW47CQkJCQkJXAorICAgKihfX28tPm5leHRfZnJlZSkrKyA9IDA7CQkJCQkJXAorICAgKHZvaWQpIDA7IH0pCisKKyMgZGVmaW5lIG9ic3RhY2tfMWdyb3coT0JTVEFDSyxkYXR1bSkJCQkJCVwKK19fZXh0ZW5zaW9uX18JCQkJCQkJCVwKKyh7IHN0cnVjdCBvYnN0YWNrICpfX28gPSAoT0JTVEFDSyk7CQkJCQlcCisgICBpZiAoX19vLT5uZXh0X2ZyZWUgKyAxID4gX19vLT5jaHVua19saW1pdCkJCQkJXAorICAgICBfb2JzdGFja19uZXdjaHVuayAoX19vLCAxKTsJCQkJCVwKKyAgICooX19vLT5uZXh0X2ZyZWUpKysgPSAoZGF0dW0pOwkJCQkJXAorICAgKHZvaWQpIDA7IH0pCisKKy8qIFRoZXNlIGFzc3VtZSB0aGF0IHRoZSBvYnN0YWNrIGFsaWdubWVudCBpcyBnb29kIGVub3VnaCBmb3IgcG9pbnRlcnMKKyAgIG9yIGludHMsIGFuZCB0aGF0IHRoZSBkYXRhIGFkZGVkIHNvIGZhciB0byB0aGUgY3VycmVudCBvYmplY3QKKyAgIHNoYXJlcyB0aGF0IG11Y2ggYWxpZ25tZW50LiAgKi8KKworIyBkZWZpbmUgb2JzdGFja19wdHJfZ3JvdyhPQlNUQUNLLGRhdHVtKQkJCQlcCitfX2V4dGVuc2lvbl9fCQkJCQkJCQlcCisoeyBzdHJ1Y3Qgb2JzdGFjayAqX19vID0gKE9CU1RBQ0spOwkJCQkJXAorICAgaWYgKF9fby0+bmV4dF9mcmVlICsgc2l6ZW9mICh2b2lkICopID4gX19vLT5jaHVua19saW1pdCkJCVwKKyAgICAgX29ic3RhY2tfbmV3Y2h1bmsgKF9fbywgc2l6ZW9mICh2b2lkICopKTsJCQkJXAorICAgKigodm9pZCAqKilfX28tPm5leHRfZnJlZSkrKyA9IChkYXR1bSk7CQkJCVwKKyAgICh2b2lkKSAwOyB9KQorCisjIGRlZmluZSBvYnN0YWNrX2ludF9ncm93KE9CU1RBQ0ssZGF0dW0pCQkJCVwKK19fZXh0ZW5zaW9uX18JCQkJCQkJCVwKKyh7IHN0cnVjdCBvYnN0YWNrICpfX28gPSAoT0JTVEFDSyk7CQkJCQlcCisgICBpZiAoX19vLT5uZXh0X2ZyZWUgKyBzaXplb2YgKGludCkgPiBfX28tPmNodW5rX2xpbWl0KQkJXAorICAgICBfb2JzdGFja19uZXdjaHVuayAoX19vLCBzaXplb2YgKGludCkpOwkJCQlcCisgICAqKChpbnQgKilfX28tPm5leHRfZnJlZSkrKyA9IChkYXR1bSk7CQkJCVwKKyAgICh2b2lkKSAwOyB9KQorCisjIGRlZmluZSBvYnN0YWNrX3B0cl9ncm93X2Zhc3QoaCxhcHRyKQkJCQkJXAorICAoKigodm9pZCAqKikgKGgpLT5uZXh0X2ZyZWUpKysgPSAoYXB0cikpCisKKyMgZGVmaW5lIG9ic3RhY2tfaW50X2dyb3dfZmFzdChoLGFpbnQpCQkJCQlcCisgICgqKChpbnQgKikgKGgpLT5uZXh0X2ZyZWUpKysgPSAoYWludCkpCisKKyMgZGVmaW5lIG9ic3RhY2tfYmxhbmsoT0JTVEFDSyxsZW5ndGgpCQkJCQlcCitfX2V4dGVuc2lvbl9fCQkJCQkJCQlcCisoeyBzdHJ1Y3Qgb2JzdGFjayAqX19vID0gKE9CU1RBQ0spOwkJCQkJXAorICAgaW50IF9fbGVuID0gKGxlbmd0aCk7CQkJCQkJXAorICAgaWYgKF9fby0+Y2h1bmtfbGltaXQgLSBfX28tPm5leHRfZnJlZSA8IF9fbGVuKQkJCVwKKyAgICAgX29ic3RhY2tfbmV3Y2h1bmsgKF9fbywgX19sZW4pOwkJCQkJXAorICAgX19vLT5uZXh0X2ZyZWUgKz0gX19sZW47CQkJCQkJXAorICAgKHZvaWQpIDA7IH0pCisKKyMgZGVmaW5lIG9ic3RhY2tfYWxsb2MoT0JTVEFDSyxsZW5ndGgpCQkJCQlcCitfX2V4dGVuc2lvbl9fCQkJCQkJCQlcCisoeyBzdHJ1Y3Qgb2JzdGFjayAqX19oID0gKE9CU1RBQ0spOwkJCQkJXAorICAgb2JzdGFja19ibGFuayAoX19oLCAobGVuZ3RoKSk7CQkJCQlcCisgICBvYnN0YWNrX2ZpbmlzaCAoX19oKTsgfSkKKworIyBkZWZpbmUgb2JzdGFja19jb3B5KE9CU1RBQ0ssd2hlcmUsbGVuZ3RoKQkJCQlcCitfX2V4dGVuc2lvbl9fCQkJCQkJCQlcCisoeyBzdHJ1Y3Qgb2JzdGFjayAqX19oID0gKE9CU1RBQ0spOwkJCQkJXAorICAgb2JzdGFja19ncm93IChfX2gsICh3aGVyZSksIChsZW5ndGgpKTsJCQkJXAorICAgb2JzdGFja19maW5pc2ggKF9faCk7IH0pCisKKyMgZGVmaW5lIG9ic3RhY2tfY29weTAoT0JTVEFDSyx3aGVyZSxsZW5ndGgpCQkJCVwKK19fZXh0ZW5zaW9uX18JCQkJCQkJCVwKKyh7IHN0cnVjdCBvYnN0YWNrICpfX2ggPSAoT0JTVEFDSyk7CQkJCQlcCisgICBvYnN0YWNrX2dyb3cwIChfX2gsICh3aGVyZSksIChsZW5ndGgpKTsJCQkJXAorICAgb2JzdGFja19maW5pc2ggKF9faCk7IH0pCisKKy8qIFRoZSBsb2NhbCB2YXJpYWJsZSBpcyBuYW1lZCBfX28xIHRvIGF2b2lkIGEgbmFtZSBjb25mbGljdAorICAgd2hlbiBvYnN0YWNrX2JsYW5rIGlzIGNhbGxlZC4gICovCisjIGRlZmluZSBvYnN0YWNrX2ZpbmlzaChPQlNUQUNLKSAgCQkJCQlcCitfX2V4dGVuc2lvbl9fCQkJCQkJCQlcCisoeyBzdHJ1Y3Qgb2JzdGFjayAqX19vMSA9IChPQlNUQUNLKTsJCQkJCVwKKyAgIHZvaWQgKnZhbHVlOwkJCQkJCQkJXAorICAgdmFsdWUgPSAodm9pZCAqKSBfX28xLT5vYmplY3RfYmFzZTsJCQkJCVwKKyAgIGlmIChfX28xLT5uZXh0X2ZyZWUgPT0gdmFsdWUpCQkJCQlcCisgICAgIF9fbzEtPm1heWJlX2VtcHR5X29iamVjdCA9IDE7CQkJCQlcCisgICBfX28xLT5uZXh0X2ZyZWUJCQkJCQkJXAorICAgICA9IF9fSU5UX1RPX1BUUiAoKF9fUFRSX1RPX0lOVCAoX19vMS0+bmV4dF9mcmVlKStfX28xLT5hbGlnbm1lbnRfbWFzaylcCisJCSAgICAgJiB+IChfX28xLT5hbGlnbm1lbnRfbWFzaykpOwkJCVwKKyAgIGlmIChfX28xLT5uZXh0X2ZyZWUgLSAoY2hhciAqKV9fbzEtPmNodW5rCQkJCVwKKyAgICAgICA+IF9fbzEtPmNodW5rX2xpbWl0IC0gKGNoYXIgKilfX28xLT5jaHVuaykJCQlcCisgICAgIF9fbzEtPm5leHRfZnJlZSA9IF9fbzEtPmNodW5rX2xpbWl0OwkJCQlcCisgICBfX28xLT5vYmplY3RfYmFzZSA9IF9fbzEtPm5leHRfZnJlZTsJCQkJCVwKKyAgIHZhbHVlOyB9KQorCisjIGRlZmluZSBvYnN0YWNrX2ZyZWUoT0JTVEFDSywgT0JKKQkJCQkJXAorX19leHRlbnNpb25fXwkJCQkJCQkJXAorKHsgc3RydWN0IG9ic3RhY2sgKl9fbyA9IChPQlNUQUNLKTsJCQkJCVwKKyAgIHZvaWQgKl9fb2JqID0gKE9CSik7CQkJCQkJCVwKKyAgIGlmIChfX29iaiA+ICh2b2lkICopX19vLT5jaHVuayAmJiBfX29iaiA8ICh2b2lkICopX19vLT5jaHVua19saW1pdCkgIFwKKyAgICAgX19vLT5uZXh0X2ZyZWUgPSBfX28tPm9iamVjdF9iYXNlID0gKGNoYXIgKilfX29iajsJCQlcCisgICBlbHNlIChvYnN0YWNrX2ZyZWUpIChfX28sIF9fb2JqKTsgfSkKKwwKKyNlbHNlIC8qIG5vdCBfX0dOVUNfXyBvciBub3QgX19TVERDX18gKi8KKworIyBkZWZpbmUgb2JzdGFja19vYmplY3Rfc2l6ZShoKSBcCisgKHVuc2lnbmVkKSAoKGgpLT5uZXh0X2ZyZWUgLSAoaCktPm9iamVjdF9iYXNlKQorCisjIGRlZmluZSBvYnN0YWNrX3Jvb20oaCkJCVwKKyAodW5zaWduZWQpICgoaCktPmNodW5rX2xpbWl0IC0gKGgpLT5uZXh0X2ZyZWUpCisKKyMgZGVmaW5lIG9ic3RhY2tfZW1wdHlfcChoKSBcCisgKChoKS0+Y2h1bmstPnByZXYgPT0gMCAmJiAoaCktPm5leHRfZnJlZSAtIChoKS0+Y2h1bmstPmNvbnRlbnRzID09IDApCisKKy8qIE5vdGUgdGhhdCB0aGUgY2FsbCB0byBfb2JzdGFja19uZXdjaHVuayBpcyBlbmNsb3NlZCBpbiAoLi4uLCAwKQorICAgc28gdGhhdCB3ZSBjYW4gYXZvaWQgaGF2aW5nIHZvaWQgZXhwcmVzc2lvbnMKKyAgIGluIHRoZSBhcm1zIG9mIHRoZSBjb25kaXRpb25hbCBleHByZXNzaW9uLgorICAgQ2FzdGluZyB0aGUgdGhpcmQgb3BlcmFuZCB0byB2b2lkIHdhcyB0cmllZCBiZWZvcmUsCisgICBidXQgc29tZSBjb21waWxlcnMgd29uJ3QgYWNjZXB0IGl0LiAgKi8KKworIyBkZWZpbmUgb2JzdGFja19tYWtlX3Jvb20oaCxsZW5ndGgpCQkJCQlcCisoIChoKS0+dGVtcCA9IChsZW5ndGgpLAkJCQkJCQlcCisgICgoKGgpLT5uZXh0X2ZyZWUgKyAoaCktPnRlbXAgPiAoaCktPmNodW5rX2xpbWl0KQkJCVwKKyAgID8gKF9vYnN0YWNrX25ld2NodW5rICgoaCksIChoKS0+dGVtcCksIDApIDogMCkpCisKKyMgZGVmaW5lIG9ic3RhY2tfZ3JvdyhoLHdoZXJlLGxlbmd0aCkJCQkJCVwKKyggKGgpLT50ZW1wID0gKGxlbmd0aCksCQkJCQkJCVwKKyAgKCgoaCktPm5leHRfZnJlZSArIChoKS0+dGVtcCA+IChoKS0+Y2h1bmtfbGltaXQpCQkJXAorICAgPyAoX29ic3RhY2tfbmV3Y2h1bmsgKChoKSwgKGgpLT50ZW1wKSwgMCkgOiAwKSwJCQlcCisgIF9vYnN0YWNrX21lbWNweSAoKGgpLT5uZXh0X2ZyZWUsICh3aGVyZSksIChoKS0+dGVtcCksCQkJXAorICAoaCktPm5leHRfZnJlZSArPSAoaCktPnRlbXApCisKKyMgZGVmaW5lIG9ic3RhY2tfZ3JvdzAoaCx3aGVyZSxsZW5ndGgpCQkJCQlcCisoIChoKS0+dGVtcCA9IChsZW5ndGgpLAkJCQkJCQlcCisgICgoKGgpLT5uZXh0X2ZyZWUgKyAoaCktPnRlbXAgKyAxID4gKGgpLT5jaHVua19saW1pdCkJCQlcCisgICA/IChfb2JzdGFja19uZXdjaHVuayAoKGgpLCAoaCktPnRlbXAgKyAxKSwgMCkgOiAwKSwJCQlcCisgIF9vYnN0YWNrX21lbWNweSAoKGgpLT5uZXh0X2ZyZWUsICh3aGVyZSksIChoKS0+dGVtcCksCQkJXAorICAoaCktPm5leHRfZnJlZSArPSAoaCktPnRlbXAsCQkJCQkJXAorICAqKChoKS0+bmV4dF9mcmVlKSsrID0gMCkKKworIyBkZWZpbmUgb2JzdGFja18xZ3JvdyhoLGRhdHVtKQkJCQkJCVwKKyggKCgoaCktPm5leHRfZnJlZSArIDEgPiAoaCktPmNodW5rX2xpbWl0KQkJCQlcCisgICA/IChfb2JzdGFja19uZXdjaHVuayAoKGgpLCAxKSwgMCkgOiAwKSwJCQkJXAorICAoKigoaCktPm5leHRfZnJlZSkrKyA9IChkYXR1bSkpKQorCisjIGRlZmluZSBvYnN0YWNrX3B0cl9ncm93KGgsZGF0dW0pCQkJCQlcCisoICgoKGgpLT5uZXh0X2ZyZWUgKyBzaXplb2YgKGNoYXIgKikgPiAoaCktPmNodW5rX2xpbWl0KQkJXAorICAgPyAoX29ic3RhY2tfbmV3Y2h1bmsgKChoKSwgc2l6ZW9mIChjaGFyICopKSwgMCkgOiAwKSwJCVwKKyAgKCooKGNvbnN0IGNoYXIgKiopICgoKGgpLT5uZXh0X2ZyZWUrPXNpemVvZihjaGFyICopKS1zaXplb2YoY2hhciAqKSkpID0gKGRhdHVtKSkpCisKKyMgZGVmaW5lIG9ic3RhY2tfaW50X2dyb3coaCxkYXR1bSkJCQkJCVwKKyggKCgoaCktPm5leHRfZnJlZSArIHNpemVvZiAoaW50KSA+IChoKS0+Y2h1bmtfbGltaXQpCQkJXAorICAgPyAoX29ic3RhY2tfbmV3Y2h1bmsgKChoKSwgc2l6ZW9mIChpbnQpKSwgMCkgOiAwKSwJCQlcCisgICgqKChpbnQgKikgKCgoaCktPm5leHRfZnJlZSs9c2l6ZW9mKGludCkpLXNpemVvZihpbnQpKSkgPSAoZGF0dW0pKSkKKworIyBkZWZpbmUgb2JzdGFja19wdHJfZ3Jvd19mYXN0KGgsYXB0cikJCQkJCVwKKyAgKCooKGNvbnN0IGNoYXIgKiopIChoKS0+bmV4dF9mcmVlKSsrID0gKGFwdHIpKQorCisjIGRlZmluZSBvYnN0YWNrX2ludF9ncm93X2Zhc3QoaCxhaW50KQkJCQkJXAorICAoKigoaW50ICopIChoKS0+bmV4dF9mcmVlKSsrID0gKGFpbnQpKQorCisjIGRlZmluZSBvYnN0YWNrX2JsYW5rKGgsbGVuZ3RoKQkJCQkJXAorKCAoaCktPnRlbXAgPSAobGVuZ3RoKSwJCQkJCQkJXAorICAoKChoKS0+Y2h1bmtfbGltaXQgLSAoaCktPm5leHRfZnJlZSA8IChoKS0+dGVtcCkJCQlcCisgICA/IChfb2JzdGFja19uZXdjaHVuayAoKGgpLCAoaCktPnRlbXApLCAwKSA6IDApLAkJCVwKKyAgKChoKS0+bmV4dF9mcmVlICs9IChoKS0+dGVtcCkpCisKKyMgZGVmaW5lIG9ic3RhY2tfYWxsb2MoaCxsZW5ndGgpCQkJCQlcCisgKG9ic3RhY2tfYmxhbmsgKChoKSwgKGxlbmd0aCkpLCBvYnN0YWNrX2ZpbmlzaCAoKGgpKSkKKworIyBkZWZpbmUgb2JzdGFja19jb3B5KGgsd2hlcmUsbGVuZ3RoKQkJCQkJXAorIChvYnN0YWNrX2dyb3cgKChoKSwgKHdoZXJlKSwgKGxlbmd0aCkpLCBvYnN0YWNrX2ZpbmlzaCAoKGgpKSkKKworIyBkZWZpbmUgb2JzdGFja19jb3B5MChoLHdoZXJlLGxlbmd0aCkJCQkJCVwKKyAob2JzdGFja19ncm93MCAoKGgpLCAod2hlcmUpLCAobGVuZ3RoKSksIG9ic3RhY2tfZmluaXNoICgoaCkpKQorCisjIGRlZmluZSBvYnN0YWNrX2ZpbmlzaChoKSAgCQkJCQkJXAorKCAoKGgpLT5uZXh0X2ZyZWUgPT0gKGgpLT5vYmplY3RfYmFzZQkJCQkJXAorICAgPyAoKChoKS0+bWF5YmVfZW1wdHlfb2JqZWN0ID0gMSksIDApCQkJCQlcCisgICA6IDApLAkJCQkJCQkJXAorICAoaCktPnRlbXAgPSBfX1BUUl9UT19JTlQgKChoKS0+b2JqZWN0X2Jhc2UpLAkJCQlcCisgIChoKS0+bmV4dF9mcmVlCQkJCQkJCVwKKyAgICA9IF9fSU5UX1RPX1BUUiAoKF9fUFRSX1RPX0lOVCAoKGgpLT5uZXh0X2ZyZWUpKyhoKS0+YWxpZ25tZW50X21hc2spCVwKKwkJICAgICYgfiAoKGgpLT5hbGlnbm1lbnRfbWFzaykpLAkJCQlcCisgICgoKGgpLT5uZXh0X2ZyZWUgLSAoY2hhciAqKSAoaCktPmNodW5rCQkJCVwKKyAgICA+IChoKS0+Y2h1bmtfbGltaXQgLSAoY2hhciAqKSAoaCktPmNodW5rKQkJCQlcCisgICA/ICgoaCktPm5leHRfZnJlZSA9IChoKS0+Y2h1bmtfbGltaXQpIDogMCksCQkJCVwKKyAgKGgpLT5vYmplY3RfYmFzZSA9IChoKS0+bmV4dF9mcmVlLAkJCQkJXAorICBfX0lOVF9UT19QVFIgKChoKS0+dGVtcCkpCisKKyMgaWYgZGVmaW5lZCBfX1NURENfXyAmJiBfX1NURENfXworIyAgZGVmaW5lIG9ic3RhY2tfZnJlZShoLG9iaikJCQkJCQlcCisoIChoKS0+dGVtcCA9IChjaGFyICopIChvYmopIC0gKGNoYXIgKikgKGgpLT5jaHVuaywJCQlcCisgICgoKGgpLT50ZW1wID4gMCAmJiAoaCktPnRlbXAgPCAoaCktPmNodW5rX2xpbWl0IC0gKGNoYXIgKikgKGgpLT5jaHVuaylcCisgICA/IChpbnQpICgoaCktPm5leHRfZnJlZSA9IChoKS0+b2JqZWN0X2Jhc2UJCQkJXAorCSAgICA9IChoKS0+dGVtcCArIChjaGFyICopIChoKS0+Y2h1bmspCQkJCVwKKyAgIDogKCgob2JzdGFja19mcmVlKSAoKGgpLCAoaCktPnRlbXAgKyAoY2hhciAqKSAoaCktPmNodW5rKSwgMCksIDApKSkKKyMgZWxzZQorIyAgZGVmaW5lIG9ic3RhY2tfZnJlZShoLG9iaikJCQkJCQlcCisoIChoKS0+dGVtcCA9IChjaGFyICopIChvYmopIC0gKGNoYXIgKikgKGgpLT5jaHVuaywJCQlcCisgICgoKGgpLT50ZW1wID4gMCAmJiAoaCktPnRlbXAgPCAoaCktPmNodW5rX2xpbWl0IC0gKGNoYXIgKikgKGgpLT5jaHVuaylcCisgICA/IChpbnQpICgoaCktPm5leHRfZnJlZSA9IChoKS0+b2JqZWN0X2Jhc2UJCQkJXAorCSAgICA9IChoKS0+dGVtcCArIChjaGFyICopIChoKS0+Y2h1bmspCQkJCVwKKyAgIDogKF9vYnN0YWNrX2ZyZWUgKChoKSwgKGgpLT50ZW1wICsgKGNoYXIgKikgKGgpLT5jaHVuayksIDApKSkKKyMgZW5kaWYKKworI2VuZGlmIC8qIG5vdCBfX0dOVUNfXyBvciBub3QgX19TVERDX18gKi8KKworI2lmZGVmIF9fY3BsdXNwbHVzCit9CS8qIEMrKyAqLworI2VuZGlmCisKKyNlbmRpZiAvKiBvYnN0YWNrLmggKi8KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbGliL2NvbXBhdC9zY2FuZGlyLmMgYi9kcGtnLTEuMTYuMS4xL2xpYi9jb21wYXQvc2NhbmRpci5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjRmYWVjZTQKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2xpYi9jb21wYXQvc2NhbmRpci5jCkBAIC0wLDAgKzEsMTAwIEBACisvKgorICogbGliY29tcGF0IC0gc3lzdGVtIGNvbXBhdGliaWxpdHkgbGlicmFyeQorICoKKyAqIENvcHlyaWdodCDCqSAxOTk1IElhbiBKYWNrc29uIDxpYW5AY2hpYXJrLmdyZWVuZW5kLm9yZy51az4KKyAqIENvcHlyaWdodCDCqSAyMDA4LCAyMDA5IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworI2luY2x1ZGUgPGNvbmZpZy5oPgorCisjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CisKKyNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDxkaXJlbnQuaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKworI2lmbmRlZiBIQVZFX1NDQU5ESVIKK3N0YXRpYyBpbnQKK2NsZWFudXAoRElSICpkaXIsIHN0cnVjdCBkaXJlbnQgKipkaXJsaXN0LCBpbnQgdXNlZCkKK3sKKwlpZiAoZGlyKQorCQljbG9zZWRpcihkaXIpOworCisJaWYgKGRpcmxpc3QpIHsKKwkJaW50IGk7CisKKwkJZm9yIChpID0gMDsgaSA8IHVzZWQ7IGkrKykKKwkJCWZyZWUoZGlybGlzdFtpXSk7CisJCWZyZWUoZGlybGlzdCk7CisJfQorCisJcmV0dXJuIC0xOworfQorCitpbnQKK3NjYW5kaXIoY29uc3QgY2hhciAqZGlyLCBzdHJ1Y3QgZGlyZW50ICoqKm5hbWVsaXN0LAorICAgICAgICBpbnQgKCpmaWx0ZXIpKGNvbnN0IHN0cnVjdCBkaXJlbnQgKiksCisgICAgICAgIGludCAoKmNtcCkoY29uc3Qgdm9pZCAqLCBjb25zdCB2b2lkICopKQoreworCURJUiAqZDsKKwlzdHJ1Y3QgZGlyZW50ICplLCAqbSwgKipsaXN0OworCWludCB1c2VkLCBhdmFpbDsKKworCWQgPSBvcGVuZGlyKGRpcik7CisJaWYgKCFkKQorCQlyZXR1cm4gLTE7CisKKwlsaXN0ID0gTlVMTDsKKwl1c2VkID0gYXZhaWwgPSAwOworCisJd2hpbGUgKChlID0gcmVhZGRpcihkKSkgIT0gTlVMTCkgeworCQlpZiAoZmlsdGVyICE9IE5VTEwgJiYgIWZpbHRlcihlKSkKKwkJCWNvbnRpbnVlOworCisJCWlmICh1c2VkID49IGF2YWlsIC0gMSkgeworCQkJc3RydWN0IGRpcmVudCAqKm5ld2xpc3Q7CisKKwkJCWlmIChhdmFpbCkKKwkJCQlhdmFpbCAqPSAyOworCQkJZWxzZQorCQkJCWF2YWlsID0gMjA7CisJCQluZXdsaXN0ID0gcmVhbGxvYyhsaXN0LCBhdmFpbCAqIHNpemVvZihzdHJ1Y3QgZGlyZW50ICopKTsKKwkJCWlmICghbmV3bGlzdCkKKwkJCQlyZXR1cm4gY2xlYW51cChkLCBsaXN0LCB1c2VkKTsKKwkJCWxpc3QgPSBuZXdsaXN0OworCQl9CisKKwkJbSA9IG1hbGxvYyhzaXplb2Yoc3RydWN0IGRpcmVudCkgKyBzdHJsZW4oZS0+ZF9uYW1lKSk7CisJCWlmICghbSkKKwkJCXJldHVybiBjbGVhbnVwKGQsIGxpc3QsIHVzZWQpOworCQkqbSA9ICplOworCQlzdHJjcHkobS0+ZF9uYW1lLCBlLT5kX25hbWUpOworCisJCWxpc3RbdXNlZF0gPSBtOworCQl1c2VkKys7CisJfQorCWxpc3RbdXNlZF0gPSBOVUxMOworCisJY2xvc2VkaXIoZCk7CisKKwlpZiAoY21wICE9IE5VTEwpCisJCXFzb3J0KGxpc3QsIHVzZWQsIHNpemVvZihzdHJ1Y3QgZGlyZW50ICopLCBjbXApOworCisJKm5hbWVsaXN0ID0gbGlzdDsKKworCXJldHVybiB1c2VkOworfQorI2VuZGlmCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2xpYi9jb21wYXQvc25wcmludGYuYyBiL2Rwa2ctMS4xNi4xLjEvbGliL2NvbXBhdC9zbnByaW50Zi5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjVkZDY3MDUKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2xpYi9jb21wYXQvc25wcmludGYuYwpAQCAtMCwwICsxLDQwIEBACisvKgorICogbGliY29tcGF0IC0gc3lzdGVtIGNvbXBhdGliaWxpdHkgbGlicmFyeQorICoKKyAqIENvcHlyaWdodCDCqSAxOTk1IElhbiBKYWNrc29uIDxpYW5AY2hpYXJrLmdyZWVuZW5kLm9yZy51az4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworI2luY2x1ZGUgPGNvbmZpZy5oPgorI2luY2x1ZGUgPGNvbXBhdC5oPgorCisjaW5jbHVkZSA8c3RkZGVmLmg+CisjaW5jbHVkZSA8c3RkYXJnLmg+CisjaW5jbHVkZSA8c3RkaW8uaD4KKworI2lmbmRlZiBIQVZFX1NOUFJJTlRGCitpbnQKK3NucHJpbnRmKGNoYXIgKnN0ciwgc2l6ZV90IG4sIGNoYXIgY29uc3QgKmZtdCwgLi4uKQoreworCXZhX2xpc3QgYXJnczsKKwlpbnQgaTsKKworCXZhX3N0YXJ0KGFyZ3MsIGZtdCk7CisJaSA9IHZzbnByaW50ZihzdHIsIG4sIGZtdCwgYXJncyk7CisJdmFfZW5kKGFyZ3MpOworCisJcmV0dXJuIGk7Cit9CisjZW5kaWYKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbGliL2NvbXBhdC9zdHJlcnJvci5jIGIvZHBrZy0xLjE2LjEuMS9saWIvY29tcGF0L3N0cmVycm9yLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZWE4ZjFkNwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbGliL2NvbXBhdC9zdHJlcnJvci5jCkBAIC0wLDAgKzEsNDMgQEAKKy8qCisgKiBsaWJjb21wYXQgLSBzeXN0ZW0gY29tcGF0aWJpbGl0eSBsaWJyYXJ5CisgKgorICogQ29weXJpZ2h0IMKpIDE5OTUgSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuZ3JlZW5lbmQub3JnLnVrPgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaW5jbHVkZSA8Y29uZmlnLmg+CisKKyNpbmNsdWRlIDxzdGRpby5oPgorI2luY2x1ZGUgPGdldHRleHQuaD4KKworI2RlZmluZSBfKHN0cikgZ2V0dGV4dChzdHIpCisKKyNpZm5kZWYgSEFWRV9TVFJFUlJPUgorZXh0ZXJuIGNvbnN0IGNoYXIgKmNvbnN0IHN5c19lcnJsaXN0W107CitleHRlcm4gY29uc3QgaW50IHN5c19uZXJyOworCitjb25zdCBjaGFyICoKK3N0cmVycm9yKGludCBlKQoreworCXN0YXRpYyBjaGFyIGJ1ZlsxMDBdOworCisJaWYgKGUgPj0gMCAmJiBlIDwgc3lzX25lcnIpCisJCXJldHVybiBzeXNfZXJybGlzdFtlXTsKKworCXNwcmludGYoYnVmLCBfKCJVbmtub3duIGVycm9yICVkIiksIGUpOworCisJcmV0dXJuIGJ1ZjsKK30KKyNlbmRpZgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9saWIvY29tcGF0L3N0cm5sZW4uYyBiL2Rwa2ctMS4xNi4xLjEvbGliL2NvbXBhdC9zdHJubGVuLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDliYTc4OAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbGliL2NvbXBhdC9zdHJubGVuLmMKQEAgLTAsMCArMSwzMyBAQAorLyogRmluZCB0aGUgbGVuZ3RoIG9mIFNUUklORywgYnV0IHNjYW4gYXQgbW9zdCBNQVhMRU4gY2hhcmFjdGVycy4KKyAgIENvcHlyaWdodCAoQykgMjAwNSwgMjAwNiBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KKyAgIFdyaXR0ZW4gYnkgU2ltb24gSm9zZWZzc29uLgorCisgICBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICAgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAgIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIsIG9yIChhdCB5b3VyIG9wdGlvbikKKyAgIGFueSBsYXRlciB2ZXJzaW9uLgorCisgICBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAgIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgICBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgICBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorCisgICBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICAgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwKKyAgIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxvb3IsIEJvc3RvbiwgTUEgMDIxMTAtMTMwMSwgVVNBLiAgKi8KKworI2lmZGVmIEhBVkVfQ09ORklHX0gKKyMgaW5jbHVkZSA8Y29uZmlnLmg+CisjZW5kaWYKKworI2luY2x1ZGUgInN0cm5sZW4uaCIKKworLyogRmluZCB0aGUgbGVuZ3RoIG9mIFNUUklORywgYnV0IHNjYW4gYXQgbW9zdCBNQVhMRU4gY2hhcmFjdGVycy4KKyAgIElmIG5vICdcMCcgdGVybWluYXRvciBpcyBmb3VuZCBpbiB0aGF0IG1hbnkgY2hhcmFjdGVycywgcmV0dXJuIE1BWExFTi4gICovCisKK3NpemVfdAorc3RybmxlbiAoY29uc3QgY2hhciAqc3RyaW5nLCBzaXplX3QgbWF4bGVuKQoreworICBjb25zdCBjaGFyICplbmQgPSBtZW1jaHIgKHN0cmluZywgJ1wwJywgbWF4bGVuKTsKKyAgcmV0dXJuIGVuZCA/IChzaXplX3QpIChlbmQgLSBzdHJpbmcpIDogbWF4bGVuOworfQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9saWIvY29tcGF0L3N0cm5sZW4uaCBiL2Rwa2ctMS4xNi4xLjEvbGliL2NvbXBhdC9zdHJubGVuLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYmE3NGRiYQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbGliL2NvbXBhdC9zdHJubGVuLmgKQEAgLTAsMCArMSwzMiBAQAorLyogRmluZCB0aGUgbGVuZ3RoIG9mIFNUUklORywgYnV0IHNjYW4gYXQgbW9zdCBNQVhMRU4gY2hhcmFjdGVycy4KKyAgIENvcHlyaWdodCAoQykgMjAwNSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KKyAgIFdyaXR0ZW4gYnkgU2ltb24gSm9zZWZzc29uLgorCisgICBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICAgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAgIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIsIG9yIChhdCB5b3VyIG9wdGlvbikKKyAgIGFueSBsYXRlciB2ZXJzaW9uLgorCisgICBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAgIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgICBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgICBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorCisgICBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICAgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwKKyAgIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxvb3IsIEJvc3RvbiwgTUEgMDIxMTAtMTMwMSwgVVNBLiAgKi8KKworI2lmbmRlZiBTVFJOTEVOX0gKKyNkZWZpbmUgU1RSTkxFTl9ICisKKy8qIEdldCBzdHJubGVuIGRlY2xhcmF0aW9uLCBpZiBhdmFpbGFibGUuICAqLworI2luY2x1ZGUgPHN0cmluZy5oPgorCisjaWYgZGVmaW5lZCBIQVZFX0RFQ0xfU1RSTkxFTiAmJiAhSEFWRV9ERUNMX1NUUk5MRU4KKy8qIEZpbmQgdGhlIGxlbmd0aCAobnVtYmVyIG9mIGJ5dGVzKSBvZiBTVFJJTkcsIGJ1dCBzY2FuIGF0IG1vc3QKKyAgIE1BWExFTiBieXRlcy4gIElmIG5vICdcMCcgdGVybWluYXRvciBpcyBmb3VuZCBpbiB0aGF0IG1hbnkgYnl0ZXMsCisgICByZXR1cm4gTUFYTEVOLiAgKi8KK2V4dGVybiBzaXplX3Qgc3Rybmxlbihjb25zdCBjaGFyICpzdHJpbmcsIHNpemVfdCBtYXhsZW4pOworI2VuZGlmCisKKyNlbmRpZiAvKiBTVFJOTEVOX0ggKi8KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbGliL2NvbXBhdC9zdHJzaWduYWwuYyBiL2Rwa2ctMS4xNi4xLjEvbGliL2NvbXBhdC9zdHJzaWduYWwuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iNGUzZGJlCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9saWIvY29tcGF0L3N0cnNpZ25hbC5jCkBAIC0wLDAgKzEsNzIgQEAKKy8qCisgKiBsaWJjb21wYXQgLSBzeXN0ZW0gY29tcGF0aWJpbGl0eSBsaWJyYXJ5CisgKgorICogQ29weXJpZ2h0IMKpIDE5OTUgSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuZ3JlZW5lbmQub3JnLnVrPgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaW5jbHVkZSA8Y29uZmlnLmg+CisKKyNpbmNsdWRlIDxzaWduYWwuaD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDxzdGRpby5oPgorI2luY2x1ZGUgPGdldHRleHQuaD4KKworI2RlZmluZSBfKHN0cikgZ2V0dGV4dChzdHIpCisKKyNpZm5kZWYgSEFWRV9ERUNMX1NZU19TSUdMSVNUCitjb25zdCBjaGFyICpjb25zdCBzeXNfc2lnbGlzdFtdID0geworCU5VTEwsCQkvKiAwICovCisJIlNJR0hVUCIsCS8qIDEgKi8KKwkiU0lHSU5UIiwJLyogMiAqLworCSJTSUdRVUlUIiwJLyogMyAqLworCSJTSUdJTEwiLAkvKiA0ICovCisJIlNJR1RSQVAiLAkvKiA1ICovCisJIlNJR0FCUlQiLAkvKiA2ICovCisJIlNJR0VNVCIsCS8qIDcgKi8KKwkiU0lHRlBFIiwJLyogOCAqLworCSJTSUdLSUxMIiwJLyogOSAqLworCSJTSUdVU1IxIiwJLyogMTAgKi8KKwkiU0lHU0VHViIsCS8qIDExICovCisJIlNJR1VTUjIiLAkvKiAxMiAqLworCSJTSUdQSVBFIiwJLyogMTMgKi8KKwkiU0lHQUxSTSIsCS8qIDE0ICovCisJIlNJR1RFUk0iLAkvKiAxNSAqLworCSJTSUdTVEtGTFQiLAkvKiAxNiAqLworCSJTSUdDSExEIiwJLyogMTcgKi8KKwkiU0lHQ09OVCIsCS8qIDE4ICovCisJIlNJR1NUT1AiLAkvKiAxOSAqLworCSJTSUdUU1RQIiwJLyogMjAgKi8KKwkiU0lHVFRJTiIsCS8qIDIxICovCisJIlNJR1RUT1UiLAkvKiAyMiAqLworfTsKKyNlbHNlCitleHRlcm4gY29uc3QgY2hhciAqY29uc3Qgc3lzX3NpZ2xpc3RbXTsKKyNlbmRpZgorCisjaWZuZGVmIEhBVkVfU1RSU0lHTkFMCitjb25zdCBjaGFyICoKK3N0cnNpZ25hbChpbnQgcykKK3sKKwlzdGF0aWMgY2hhciBidWZbMTAwXTsKKworCWlmIChzID4gMCAmJiBzIDwgc2l6ZW9mKHN5c19zaWdsaXN0KSAvIHNpemVvZihzeXNfc2lnbGlzdFswXSkpCisJCXJldHVybiBzeXNfc2lnbGlzdFtzXTsKKworCXNwcmludGYoYnVmLCBfKCJVbmtub3duIHNpZ25hbCAlZCIpLCBzKTsKKworCXJldHVybiBidWY7Cit9CisjZW5kaWYKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbGliL2NvbXBhdC91bnNldGVudi5jIGIvZHBrZy0xLjE2LjEuMS9saWIvY29tcGF0L3Vuc2V0ZW52LmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzU1MTYyOQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbGliL2NvbXBhdC91bnNldGVudi5jCkBAIC0wLDAgKzEsMzkgQEAKKy8qCisgKiBsaWJjb21wYXQgLSBzeXN0ZW0gY29tcGF0aWJpbGl0eSBsaWJyYXJ5CisgKgorICogQ29weXJpZ2h0IMKpIDE5OTUgSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuZ3JlZW5lbmQub3JnLnVrPgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaW5jbHVkZSA8Y29uZmlnLmg+CisKKyNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKworI2lmbmRlZiBIQVZFX1VOU0VURU5WCitpbnQKK3Vuc2V0ZW52KGNvbnN0IGNoYXIgKnApCit7CisJY2hhciAqcTsKKworCXEgPSBtYWxsb2Moc3RybGVuKHApICsgMyk7CisJaWYgKCFxKQorCQlyZXR1cm4gLTE7CisKKwlzdHJjcHkocSwgcCk7CisJc3RyY2F0KHEsICI9Iik7CisJcmV0dXJuIHB1dGVudihxKTsKK30KKyNlbmRpZgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9saWIvY29tcGF0L3Zhc3ByaW50Zi5jIGIvZHBrZy0xLjE2LjEuMS9saWIvY29tcGF0L3Zhc3ByaW50Zi5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjNkMmJiMzAKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2xpYi9jb21wYXQvdmFzcHJpbnRmLmMKQEAgLTAsMCArMSw1OSBAQAorLyoKKyAqIGxpYmNvbXBhdCAtIHN5c3RlbSBjb21wYXRpYmlsaXR5IGxpYnJhcnkKKyAqCisgKiBDb3B5cmlnaHQgwqkgMjAxMCBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CisgKgorICogVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisgKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAqIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorICovCisKKyNpbmNsdWRlIDxjb25maWcuaD4KKworI2luY2x1ZGUgPHN0ZGFyZy5oPgorI2luY2x1ZGUgPHN0ZGlvLmg+CisjaW5jbHVkZSA8c3RkbGliLmg+CisKKyNpZm5kZWYgSEFWRV9WQVNQUklOVEYKK2ludAordmFzcHJpbnRmKGNoYXIgKipzdHJwLCBjaGFyIGNvbnN0ICpmbXQsIHZhX2xpc3QgYXJncykKK3sKKwl2YV9saXN0IGFyZ3NfY29weTsKKwlpbnQgbmVlZGVkLCBuOworCWNoYXIgKnN0cjsKKworCXZhX2NvcHkoYXJnc19jb3B5LCBhcmdzKTsKKwluZWVkZWQgPSB2c25wcmludGYoTlVMTCwgMCwgZm10LCBhcmdzX2NvcHkpOworCXZhX2VuZChhcmdzX2NvcHkpOworCisJaWYgKG5lZWRlZCA8IDApIHsKKwkJKnN0cnAgPSBOVUxMOworCQlyZXR1cm4gLTE7CisJfQorCisJc3RyID0gbWFsbG9jKG5lZWRlZCArIDEpOworCWlmIChzdHIgPT0gTlVMTCkgeworCQkqc3RycCA9IE5VTEw7CisJCXJldHVybiAtMTsKKwl9CisKKwluID0gdnNucHJpbnRmKHN0ciwgbmVlZGVkICsgMSwgZm10LCBhcmdzKTsKKwlpZiAobiA8IDApIHsKKwkJZnJlZShzdHIpOworCQlzdHIgPSBOVUxMOworCX0KKworCSpzdHJwID0gc3RyOworCisJcmV0dXJuIG47Cit9CisjZW5kaWYKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbGliL2NvbXBhdC92c25wcmludGYuYyBiL2Rwa2ctMS4xNi4xLjEvbGliL2NvbXBhdC92c25wcmludGYuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42ZTA4Y2VmCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9saWIvY29tcGF0L3ZzbnByaW50Zi5jCkBAIC0wLDAgKzEsNzEgQEAKKy8qCisgKiBsaWJjb21wYXQgLSBzeXN0ZW0gY29tcGF0aWJpbGl0eSBsaWJyYXJ5CisgKgorICogQ29weXJpZ2h0IMKpIDE5OTUgSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuZ3JlZW5lbmQub3JnLnVrPgorICogQ29weXJpZ2h0IMKpIDIwMDgsIDIwMDkgR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaW5jbHVkZSA8Y29uZmlnLmg+CisKKyNpbmNsdWRlIDx1bmlzdGQuaD4KKyNpbmNsdWRlIDxzdGRhcmcuaD4KKyNpbmNsdWRlIDxzdGRpby5oPgorCisjaWZuZGVmIEhBVkVfVlNOUFJJTlRGCitpbnQKK3ZzbnByaW50ZihjaGFyICpidWYsIHNpemVfdCBtYXhzaXplLCBjb25zdCBjaGFyICpmbXQsIHZhX2xpc3QgYXJncykKK3sKKwlzdGF0aWMgRklMRSAqZmlsZSA9IE5VTEw7CisKKwlzaXplX3Qgd2FudCwgbnI7CisJaW50IHRvdGFsOworCisJaWYgKG1heHNpemUgIT0gMCAmJiBidWYgPT0gTlVMTCkKKwkJcmV0dXJuIC0xOworCisJaWYgKCFmaWxlKSB7CisJCWZpbGUgPSB0bXBmaWxlKCk7CisJCWlmICghZmlsZSkKKwkJCXJldHVybiAtMTsKKwl9IGVsc2UgeworCQlpZiAoZnNlZWsoZmlsZSwgMCwgMCkpCisJCQlyZXR1cm4gLTE7CisJCWlmIChmdHJ1bmNhdGUoZmlsZW5vKGZpbGUpLCAwKSkKKwkJCXJldHVybiAtMTsKKwl9CisKKwl0b3RhbCA9IHZmcHJpbnRmKGZpbGUsIGZtdCwgYXJncyk7CisJaWYgKHRvdGFsIDwgMCkKKwkJcmV0dXJuIC0xOworCWlmIChtYXhzaXplID09IDApCisJCXJldHVybiB0b3RhbDsKKwlpZiAodG90YWwgPj0gKGludCltYXhzaXplKQorCQl3YW50ID0gbWF4c2l6ZSAtIDE7CisJZWxzZQorCQl3YW50ID0gdG90YWw7CisJaWYgKGZmbHVzaChmaWxlKSkKKwkJcmV0dXJuIC0xOworCWlmIChmc2VlayhmaWxlLCAwLCBTRUVLX1NFVCkpCisJCXJldHVybiAtMTsKKworCW5yID0gZnJlYWQoYnVmLCAxLCB3YW50LCBmaWxlKTsKKwlpZiAobnIgIT0gd2FudCkKKwkJcmV0dXJuIC0xOworCWJ1Zlt3YW50XSA9ICdcMCc7CisKKwlyZXR1cm4gdG90YWw7Cit9CisjZW5kaWYKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvTWFrZWZpbGUuYW0gYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL01ha2VmaWxlLmFtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjI1YzMxNTkKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL01ha2VmaWxlLmFtCkBAIC0wLDAgKzEsMTA4IEBACisjIyBQcm9jZXNzIHRoaXMgZmlsZSB3aXRoIGF1dG9tYWtlIHRvIHByb2R1Y2UgTWFrZWZpbGUuaW4KKworU1VCRElSUyA9IC4gdGVzdAorCitsb2NhbGVkaXIgPSAkKGRhdGFkaXIpL2xvY2FsZQorcGtnY29uZmRpciA9ICQoc3lzY29uZmRpcikvQFBBQ0tBR0VACitBTV9DUFBGTEFHUyA9IFwKKwktRExPQ0FMRURJUj1cIiQobG9jYWxlZGlyKVwiIFwKKwktRENPTkZJR0RJUj1cIiQocGtnY29uZmRpcilcIiBcCisJLURBRE1JTkRJUj1cIiQoYWRtaW5kaXIpXCIgXAorCS1pZGlyYWZ0ZXIgJCh0b3Bfc3JjZGlyKS9saWIvY29tcGF0IFwKKwktSSQodG9wX2J1aWxkZGlyKSBcCisJLUkkKHRvcF9zcmNkaXIpL2xpYgorCisKK0VYVFJBX0RJU1QgPSBcCisJbGliZHBrZy5WZXJzaW9ucyBcCisJbGliZHBrZy5wYy5pbgorCitwa2djb25maWdkaXIgPSAkKGxpYmRpcikvcGtnY29uZmlnCitwa2djb25maWdfREFUQSA9IGxpYmRwa2cucGMKKworbGliX0xJQlJBUklFUyA9IGxpYmRwa2cuYQorCitsaWJkcGtnX2FfU09VUkNFUyA9IFwKKwlkbGlzdC5oIFwKKwlhci5jIFwKKwlidWZmZXIuYyBcCisJY2xlYW51cC5jIFwKKwljb21tYW5kLmMgXAorCWNvbXByZXNzLmMgXAorCWRiZGlyLmMgXAorCWRibW9kaWZ5LmMgXAorCWRlYnVnLmMgXAorCWRpci5jIFwKKwlkdW1wLmMgXAorCWVoYW5kbGUuYyBcCisJZXJyb3IuYyBcCisJZmRpby5jIFwKKwlmaWxlLmMgXAorCWZpZWxkcy5jIFwKKwlnbG9iLmMgXAorCWkxOG4uaCBcCisJbG9nLmMgXAorCW1kNS5jIG1kNS5oIFwKKwltbGliLmMgXAorCW5hbWV2YWx1ZS5jIFwKKwluZm1hbGxvYy5jIFwKKwlvcHRpb25zLmMgXAorCXBhcnNlLmMgXAorCXBhcnNlaGVscC5jIFwKKwlwYXRoLmMgXAorCXBrZy5jIFwKKwlwa2ctZGIuYyBcCisJcGtnLWFycmF5LmMgXAorCXBrZy1mb3JtYXQuYyBcCisJcGtnLWxpc3QuYyBcCisJcGtnLXF1ZXVlLmMgXAorCXBrZy1zaG93LmMgXAorCXByb2duYW1lLmMgXAorCXByb2dyZXNzLmMgXAorCXN0cmluZy5jIFwKKwlzdWJwcm9jLmMgXAorCXRhcmZuLmMgXAorCXRlc3QuaCBcCisJdHJpZ25hbWUuYyBcCisJdHJpZ25vdGUuYyBcCisJdHJpZ2xpYi5jIFwKKwl0cmlnZGVmZXJyZWQubCBcCisJdXRpbHMuYyBcCisJdmFyYnVmLmMgXAorCXZlcmNtcC5jIFwKKwl2ZXJzaW9uLmMKKworcGtnaW5jbHVkZV9IRUFERVJTID0gXAorCWFyLmggXAorCWJ1ZmZlci5oIFwKKwljb21tYW5kLmggXAorCWNvbXByZXNzLmggXAorCWRlYnVnLmggXAorCWRpci5oIFwKKwlkcGtnLmggXAorCWRwa2ctZGIuaCBcCisJZWhhbmRsZS5oIFwKKwllcnJvci5oIFwKKwlmZGlvLmggXAorCWZpbGUuaCBcCisJZ2xvYi5oIFwKKwltYWNyb3MuaCBcCisJbmFtZXZhbHVlLmggXAorCW9wdGlvbnMuaCBcCisJcGFyc2VkdW1wLmggXAorCXBhdGguaCBcCisJcGtnLmggXAorCXBrZy1hcnJheS5oIFwKKwlwa2ctZm9ybWF0LmggXAorCXBrZy1saXN0LmggXAorCXBrZy1xdWV1ZS5oIFwKKwlwa2ctc2hvdy5oIFwKKwlwcm9nbmFtZS5oIFwKKwlwcm9ncmVzcy5oIFwKKwlzdHJpbmcuaCBcCisJc3VicHJvYy5oIFwKKwl0YXJmbi5oIFwKKwl0cmlnZGVmZXJyZWQuaCBcCisJdHJpZ2xpYi5oIFwKKwl2YXJidWYuaCBcCisJdmVyc2lvbi5oCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL01ha2VmaWxlLmluIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9NYWtlZmlsZS5pbgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wMTk1ZWViCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9NYWtlZmlsZS5pbgpAQCAtMCwwICsxLDkyOCBAQAorIyBNYWtlZmlsZS5pbiBnZW5lcmF0ZWQgYnkgYXV0b21ha2UgMS4xMS4xIGZyb20gTWFrZWZpbGUuYW0uCisjIEBjb25maWd1cmVfaW5wdXRACisKKyMgQ29weXJpZ2h0IChDKSAxOTk0LCAxOTk1LCAxOTk2LCAxOTk3LCAxOTk4LCAxOTk5LCAyMDAwLCAyMDAxLCAyMDAyLAorIyAyMDAzLCAyMDA0LCAyMDA1LCAyMDA2LCAyMDA3LCAyMDA4LCAyMDA5ICBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sCisjIEluYy4KKyMgVGhpcyBNYWtlZmlsZS5pbiBpcyBmcmVlIHNvZnR3YXJlOyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uCisjIGdpdmVzIHVubGltaXRlZCBwZXJtaXNzaW9uIHRvIGNvcHkgYW5kL29yIGRpc3RyaWJ1dGUgaXQsCisjIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb25zLCBhcyBsb25nIGFzIHRoaXMgbm90aWNlIGlzIHByZXNlcnZlZC4KKworIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZLCB0byB0aGUgZXh0ZW50IHBlcm1pdHRlZCBieSBsYXc7IHdpdGhvdXQKKyMgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQQorIyBQQVJUSUNVTEFSIFBVUlBPU0UuCisKK0BTRVRfTUFLRUAKKworCisKK1ZQQVRIID0gQHNyY2RpckAKK3BrZ2RhdGFkaXIgPSAkKGRhdGFkaXIpL0BQQUNLQUdFQAorcGtnaW5jbHVkZWRpciA9ICQoaW5jbHVkZWRpcikvQFBBQ0tBR0VACitwa2dsaWJkaXIgPSAkKGxpYmRpcikvQFBBQ0tBR0VACitwa2dsaWJleGVjZGlyID0gJChsaWJleGVjZGlyKS9AUEFDS0FHRUAKK2FtX19jZCA9IENEUEFUSD0iJCR7WlNIX1ZFUlNJT04rLn0kKFBBVEhfU0VQQVJBVE9SKSIgJiYgY2QKK2luc3RhbGxfc2hfREFUQSA9ICQoaW5zdGFsbF9zaCkgLWMgLW0gNjQ0CitpbnN0YWxsX3NoX1BST0dSQU0gPSAkKGluc3RhbGxfc2gpIC1jCitpbnN0YWxsX3NoX1NDUklQVCA9ICQoaW5zdGFsbF9zaCkgLWMKK0lOU1RBTExfSEVBREVSID0gJChJTlNUQUxMX0RBVEEpCit0cmFuc2Zvcm0gPSAkKHByb2dyYW1fdHJhbnNmb3JtX25hbWUpCitOT1JNQUxfSU5TVEFMTCA9IDoKK1BSRV9JTlNUQUxMID0gOgorUE9TVF9JTlNUQUxMID0gOgorTk9STUFMX1VOSU5TVEFMTCA9IDoKK1BSRV9VTklOU1RBTEwgPSA6CitQT1NUX1VOSU5TVEFMTCA9IDoKK2J1aWxkX3RyaXBsZXQgPSBAYnVpbGRACitob3N0X3RyaXBsZXQgPSBAaG9zdEAKK3N1YmRpciA9IGxpYi9kcGtnCitESVNUX0NPTU1PTiA9ICQocGtnaW5jbHVkZV9IRUFERVJTKSAkKHNyY2RpcikvTWFrZWZpbGUuYW0gXAorCSQoc3JjZGlyKS9NYWtlZmlsZS5pbiAkKHNyY2RpcikvbGliZHBrZy5wYy5pbiB0cmlnZGVmZXJyZWQuYworQUNMT0NBTF9NNCA9ICQodG9wX3NyY2RpcikvYWNsb2NhbC5tNAorYW1fX2FjbG9jYWxfbTRfZGVwcyA9ICQodG9wX3NyY2RpcikvbTQvZHBrZy1hcmNoLm00IFwKKwkkKHRvcF9zcmNkaXIpL200L2Rwa2ctYnVpbGQubTQgXAorCSQodG9wX3NyY2RpcikvbTQvZHBrZy1jb21waWxlci5tNCBcCisJJCh0b3Bfc3JjZGlyKS9tNC9kcGtnLWNvdmVyYWdlLm00IFwKKwkkKHRvcF9zcmNkaXIpL200L2Rwa2ctZnVuY3MubTQgJCh0b3Bfc3JjZGlyKS9tNC9kcGtnLWxpYnMubTQgXAorCSQodG9wX3NyY2RpcikvbTQvZHBrZy1saW5rZXIubTQgJCh0b3Bfc3JjZGlyKS9tNC9kcGtnLXByb2dzLm00IFwKKwkkKHRvcF9zcmNkaXIpL200L2Rwa2ctdHlwZXMubTQgXAorCSQodG9wX3NyY2RpcikvbTQvZHBrZy11bmljb2RlLm00ICQodG9wX3NyY2RpcikvbTQvZ2V0dGV4dC5tNCBcCisJJCh0b3Bfc3JjZGlyKS9tNC9pY29udi5tNCAkKHRvcF9zcmNkaXIpL200L2ludGxtYWNvc3gubTQgXAorCSQodG9wX3NyY2RpcikvbTQvbGliLWxkLm00ICQodG9wX3NyY2RpcikvbTQvbGliLWxpbmsubTQgXAorCSQodG9wX3NyY2RpcikvbTQvbGliLXByZWZpeC5tNCAkKHRvcF9zcmNkaXIpL200L25scy5tNCBcCisJJCh0b3Bfc3JjZGlyKS9tNC9wby5tNCAkKHRvcF9zcmNkaXIpL200L3Byb2d0ZXN0Lm00IFwKKwkkKHRvcF9zcmNkaXIpL2NvbmZpZ3VyZS5hYworYW1fX2NvbmZpZ3VyZV9kZXBzID0gJChhbV9fYWNsb2NhbF9tNF9kZXBzKSAkKENPTkZJR1VSRV9ERVBFTkRFTkNJRVMpIFwKKwkkKEFDTE9DQUxfTTQpCitta2luc3RhbGxkaXJzID0gJChpbnN0YWxsX3NoKSAtZAorQ09ORklHX0hFQURFUiA9ICQodG9wX2J1aWxkZGlyKS9jb25maWcuaAorQ09ORklHX0NMRUFOX0ZJTEVTID0gbGliZHBrZy5wYworQ09ORklHX0NMRUFOX1ZQQVRIX0ZJTEVTID0KK2FtX192cGF0aF9hZGpfc2V0dXAgPSBzcmNkaXJzdHJpcD1gZWNobyAiJChzcmNkaXIpIiB8IHNlZCAnc3wufC58ZydgOworYW1fX3ZwYXRoX2FkaiA9IGNhc2UgJCRwIGluIFwKKyAgICAkKHNyY2RpcikvKikgZj1gZWNobyAiJCRwIiB8IHNlZCAic3xeJCRzcmNkaXJzdHJpcC98fCJgOzsgXAorICAgICopIGY9JCRwOzsgXAorICBlc2FjOworYW1fX3N0cmlwX2RpciA9IGY9YGVjaG8gJCRwIHwgc2VkIC1lICdzfF4uKi98fCdgOworYW1fX2luc3RhbGxfbWF4ID0gNDAKK2FtX19ub2Jhc2Vfc3RyaXBfc2V0dXAgPSBcCisgIHNyY2RpcnN0cmlwPWBlY2hvICIkKHNyY2RpcikiIHwgc2VkICdzL1tdLlteJCRcXCp8XS9cXFxcJi9nJ2AKK2FtX19ub2Jhc2Vfc3RyaXAgPSBcCisgIGZvciBwIGluICQkbGlzdDsgZG8gZWNobyAiJCRwIjsgZG9uZSB8IHNlZCAtZSAic3wkJHNyY2RpcnN0cmlwL3x8IgorYW1fX25vYmFzZV9saXN0ID0gJChhbV9fbm9iYXNlX3N0cmlwX3NldHVwKTsgXAorICBmb3IgcCBpbiAkJGxpc3Q7IGRvIGVjaG8gIiQkcCAkJHAiOyBkb25lIHwgXAorICBzZWQgInN8ICQkc3JjZGlyc3RyaXAvfCB8OyInIC8gLipcLy8hcy8gLiovIC4vOyBzLFwoIC4qXCkvW14vXSokJCxcMSwnIHwgXAorICAkKEFXSykgJ0JFR0lOIHsgZmlsZXNbIi4iXSA9ICIiIH0geyBmaWxlc1skJDJdID0gZmlsZXNbJCQyXSAiICIgJCQxOyBcCisgICAgaWYgKCsrblskJDJdID09ICQoYW1fX2luc3RhbGxfbWF4KSkgXAorICAgICAgeyBwcmludCAkJDIsIGZpbGVzWyQkMl07IG5bJCQyXSA9IDA7IGZpbGVzWyQkMl0gPSAiIiB9IH0gXAorICAgIEVORCB7IGZvciAoZGlyIGluIGZpbGVzKSBwcmludCBkaXIsIGZpbGVzW2Rpcl0gfScKK2FtX19iYXNlX2xpc3QgPSBcCisgIHNlZCAnJCQhTjskJCFOOyQkIU47JCQhTjskJCFOOyQkIU47JCQhTjtzL1xuLyAvZycgfCBcCisgIHNlZCAnJCQhTjskJCFOOyQkIU47JCQhTjtzL1xuLyAvZycKK2FtX19pbnN0YWxsZGlycyA9ICIkKERFU1RESVIpJChsaWJkaXIpIiAiJChERVNURElSKSQocGtnY29uZmlnZGlyKSIgXAorCSIkKERFU1RESVIpJChwa2dpbmNsdWRlZGlyKSIKK0xJQlJBUklFUyA9ICQobGliX0xJQlJBUklFUykKK0FSID0gYXIKK0FSRkxBR1MgPSBjcnUKK0FNX1ZfQVIgPSAkKGFtX192X0FSXyQoVikpCithbV9fdl9BUl8gPSAkKGFtX192X0FSXyQoQU1fREVGQVVMVF9WRVJCT1NJVFkpKQorYW1fX3ZfQVJfMCA9IEBlY2hvICIgIEFSICAgICIgJEA7CitBTV9WX2F0ID0gJChhbV9fdl9hdF8kKFYpKQorYW1fX3ZfYXRfID0gJChhbV9fdl9hdF8kKEFNX0RFRkFVTFRfVkVSQk9TSVRZKSkKK2FtX192X2F0XzAgPSBACitsaWJkcGtnX2FfQVIgPSAkKEFSKSAkKEFSRkxBR1MpCitsaWJkcGtnX2FfTElCQUREID0KK2FtX2xpYmRwa2dfYV9PQkpFQ1RTID0gYXIuJChPQkpFWFQpIGJ1ZmZlci4kKE9CSkVYVCkgY2xlYW51cC4kKE9CSkVYVCkgXAorCWNvbW1hbmQuJChPQkpFWFQpIGNvbXByZXNzLiQoT0JKRVhUKSBkYmRpci4kKE9CSkVYVCkgXAorCWRibW9kaWZ5LiQoT0JKRVhUKSBkZWJ1Zy4kKE9CSkVYVCkgZGlyLiQoT0JKRVhUKSBcCisJZHVtcC4kKE9CSkVYVCkgZWhhbmRsZS4kKE9CSkVYVCkgZXJyb3IuJChPQkpFWFQpIFwKKwlmZGlvLiQoT0JKRVhUKSBmaWxlLiQoT0JKRVhUKSBmaWVsZHMuJChPQkpFWFQpIGdsb2IuJChPQkpFWFQpIFwKKwlsb2cuJChPQkpFWFQpIG1kNS4kKE9CSkVYVCkgbWxpYi4kKE9CSkVYVCkgbmFtZXZhbHVlLiQoT0JKRVhUKSBcCisJbmZtYWxsb2MuJChPQkpFWFQpIG9wdGlvbnMuJChPQkpFWFQpIHBhcnNlLiQoT0JKRVhUKSBcCisJcGFyc2VoZWxwLiQoT0JKRVhUKSBwYXRoLiQoT0JKRVhUKSBwa2cuJChPQkpFWFQpIFwKKwlwa2ctZGIuJChPQkpFWFQpIHBrZy1hcnJheS4kKE9CSkVYVCkgcGtnLWZvcm1hdC4kKE9CSkVYVCkgXAorCXBrZy1saXN0LiQoT0JKRVhUKSBwa2ctcXVldWUuJChPQkpFWFQpIHBrZy1zaG93LiQoT0JKRVhUKSBcCisJcHJvZ25hbWUuJChPQkpFWFQpIHByb2dyZXNzLiQoT0JKRVhUKSBzdHJpbmcuJChPQkpFWFQpIFwKKwlzdWJwcm9jLiQoT0JKRVhUKSB0YXJmbi4kKE9CSkVYVCkgdHJpZ25hbWUuJChPQkpFWFQpIFwKKwl0cmlnbm90ZS4kKE9CSkVYVCkgdHJpZ2xpYi4kKE9CSkVYVCkgdHJpZ2RlZmVycmVkLiQoT0JKRVhUKSBcCisJdXRpbHMuJChPQkpFWFQpIHZhcmJ1Zi4kKE9CSkVYVCkgdmVyY21wLiQoT0JKRVhUKSBcCisJdmVyc2lvbi4kKE9CSkVYVCkKK2xpYmRwa2dfYV9PQkpFQ1RTID0gJChhbV9saWJkcGtnX2FfT0JKRUNUUykKK0RFRkFVTFRfSU5DTFVERVMgPSAKK2RlcGNvbXAgPSAkKFNIRUxMKSAkKHRvcF9zcmNkaXIpL2J1aWxkLWF1eC9kZXBjb21wCithbV9fZGVwZmlsZXNfbWF5YmUgPSBkZXBmaWxlcworYW1fX212ID0gbXYgLWYKK0NPTVBJTEUgPSAkKENDKSAkKERFRlMpICQoREVGQVVMVF9JTkNMVURFUykgJChJTkNMVURFUykgJChBTV9DUFBGTEFHUykgXAorCSQoQ1BQRkxBR1MpICQoQU1fQ0ZMQUdTKSAkKENGTEFHUykKK0FNX1ZfQ0MgPSAkKGFtX192X0NDXyQoVikpCithbV9fdl9DQ18gPSAkKGFtX192X0NDXyQoQU1fREVGQVVMVF9WRVJCT1NJVFkpKQorYW1fX3ZfQ0NfMCA9IEBlY2hvICIgIENDICAgICIgJEA7CitDQ0xEID0gJChDQykKK0xJTksgPSAkKENDTEQpICQoQU1fQ0ZMQUdTKSAkKENGTEFHUykgJChBTV9MREZMQUdTKSAkKExERkxBR1MpIC1vICRACitBTV9WX0NDTEQgPSAkKGFtX192X0NDTERfJChWKSkKK2FtX192X0NDTERfID0gJChhbV9fdl9DQ0xEXyQoQU1fREVGQVVMVF9WRVJCT1NJVFkpKQorYW1fX3ZfQ0NMRF8wID0gQGVjaG8gIiAgQ0NMRCAgIiAkQDsKK0xFWENPTVBJTEUgPSAkKExFWCkgJChMRkxBR1MpICQoQU1fTEZMQUdTKQorQU1fVl9MRVggPSAkKGFtX192X0xFWF8kKFYpKQorYW1fX3ZfTEVYXyA9ICQoYW1fX3ZfTEVYXyQoQU1fREVGQVVMVF9WRVJCT1NJVFkpKQorYW1fX3ZfTEVYXzAgPSBAZWNobyAiICBMRVggICAiICRAOworWUxXUkFQID0gJCh0b3Bfc3JjZGlyKS9idWlsZC1hdXgveWx3cmFwCitBTV9WX0dFTiA9ICQoYW1fX3ZfR0VOXyQoVikpCithbV9fdl9HRU5fID0gJChhbV9fdl9HRU5fJChBTV9ERUZBVUxUX1ZFUkJPU0lUWSkpCithbV9fdl9HRU5fMCA9IEBlY2hvICIgIEdFTiAgICIgJEA7CitTT1VSQ0VTID0gJChsaWJkcGtnX2FfU09VUkNFUykKK0RJU1RfU09VUkNFUyA9ICQobGliZHBrZ19hX1NPVVJDRVMpCitSRUNVUlNJVkVfVEFSR0VUUyA9IGFsbC1yZWN1cnNpdmUgY2hlY2stcmVjdXJzaXZlIGR2aS1yZWN1cnNpdmUgXAorCWh0bWwtcmVjdXJzaXZlIGluZm8tcmVjdXJzaXZlIGluc3RhbGwtZGF0YS1yZWN1cnNpdmUgXAorCWluc3RhbGwtZHZpLXJlY3Vyc2l2ZSBpbnN0YWxsLWV4ZWMtcmVjdXJzaXZlIFwKKwlpbnN0YWxsLWh0bWwtcmVjdXJzaXZlIGluc3RhbGwtaW5mby1yZWN1cnNpdmUgXAorCWluc3RhbGwtcGRmLXJlY3Vyc2l2ZSBpbnN0YWxsLXBzLXJlY3Vyc2l2ZSBpbnN0YWxsLXJlY3Vyc2l2ZSBcCisJaW5zdGFsbGNoZWNrLXJlY3Vyc2l2ZSBpbnN0YWxsZGlycy1yZWN1cnNpdmUgcGRmLXJlY3Vyc2l2ZSBcCisJcHMtcmVjdXJzaXZlIHVuaW5zdGFsbC1yZWN1cnNpdmUKK0RBVEEgPSAkKHBrZ2NvbmZpZ19EQVRBKQorSEVBREVSUyA9ICQocGtnaW5jbHVkZV9IRUFERVJTKQorUkVDVVJTSVZFX0NMRUFOX1RBUkdFVFMgPSBtb3N0bHljbGVhbi1yZWN1cnNpdmUgY2xlYW4tcmVjdXJzaXZlCVwKKyAgZGlzdGNsZWFuLXJlY3Vyc2l2ZSBtYWludGFpbmVyLWNsZWFuLXJlY3Vyc2l2ZQorQU1fUkVDVVJTSVZFX1RBUkdFVFMgPSAkKFJFQ1VSU0lWRV9UQVJHRVRTOi1yZWN1cnNpdmU9KSBcCisJJChSRUNVUlNJVkVfQ0xFQU5fVEFSR0VUUzotcmVjdXJzaXZlPSkgdGFncyBUQUdTIGN0YWdzIENUQUdTIFwKKwlkaXN0ZGlyCitFVEFHUyA9IGV0YWdzCitDVEFHUyA9IGN0YWdzCitESVNUX1NVQkRJUlMgPSAkKFNVQkRJUlMpCitESVNURklMRVMgPSAkKERJU1RfQ09NTU9OKSAkKERJU1RfU09VUkNFUykgJChURVhJTkZPUykgJChFWFRSQV9ESVNUKQorYW1fX3JlbGF0aXZpemUgPSBcCisgIGRpcjA9YHB3ZGA7IFwKKyAgc2VkX2ZpcnN0PSdzLF5cKFteL10qXCkvLiokJCxcMSwnOyBcCisgIHNlZF9yZXN0PSdzLF5bXi9dKi8qLCwnOyBcCisgIHNlZF9sYXN0PSdzLF4uKi9cKFteL10qXCkkJCxcMSwnOyBcCisgIHNlZF9idXRsYXN0PSdzLC8qW14vXSokJCwsJzsgXAorICB3aGlsZSB0ZXN0IC1uICIkJGRpcjEiOyBkbyBcCisgICAgZmlyc3Q9YGVjaG8gIiQkZGlyMSIgfCBzZWQgLWUgIiQkc2VkX2ZpcnN0ImA7IFwKKyAgICBpZiB0ZXN0ICIkJGZpcnN0IiAhPSAiLiI7IHRoZW4gXAorICAgICAgaWYgdGVzdCAiJCRmaXJzdCIgPSAiLi4iOyB0aGVuIFwKKyAgICAgICAgZGlyMj1gZWNobyAiJCRkaXIwIiB8IHNlZCAtZSAiJCRzZWRfbGFzdCJgLyIkJGRpcjIiOyBcCisgICAgICAgIGRpcjA9YGVjaG8gIiQkZGlyMCIgfCBzZWQgLWUgIiQkc2VkX2J1dGxhc3QiYDsgXAorICAgICAgZWxzZSBcCisgICAgICAgIGZpcnN0Mj1gZWNobyAiJCRkaXIyIiB8IHNlZCAtZSAiJCRzZWRfZmlyc3QiYDsgXAorICAgICAgICBpZiB0ZXN0ICIkJGZpcnN0MiIgPSAiJCRmaXJzdCI7IHRoZW4gXAorICAgICAgICAgIGRpcjI9YGVjaG8gIiQkZGlyMiIgfCBzZWQgLWUgIiQkc2VkX3Jlc3QiYDsgXAorICAgICAgICBlbHNlIFwKKyAgICAgICAgICBkaXIyPSIuLi8kJGRpcjIiOyBcCisgICAgICAgIGZpOyBcCisgICAgICAgIGRpcjA9IiQkZGlyMCIvIiQkZmlyc3QiOyBcCisgICAgICBmaTsgXAorICAgIGZpOyBcCisgICAgZGlyMT1gZWNobyAiJCRkaXIxIiB8IHNlZCAtZSAiJCRzZWRfcmVzdCJgOyBcCisgIGRvbmU7IFwKKyAgcmVsZGlyPSIkJGRpcjIiCitBQ0xPQ0FMID0gQEFDTE9DQUxACitBTVRBUiA9IEBBTVRBUkAKK0FNX0RFRkFVTFRfVkVSQk9TSVRZID0gQEFNX0RFRkFVTFRfVkVSQk9TSVRZQAorQVVUT0NPTkYgPSBAQVVUT0NPTkZACitBVVRPSEVBREVSID0gQEFVVE9IRUFERVJACitBVVRPTUFLRSA9IEBBVVRPTUFLRUAKK0FXSyA9IEBBV0tACitCWjJfTElCUyA9IEBCWjJfTElCU0AKK0NDID0gQENDQAorQ0NERVBNT0RFID0gQENDREVQTU9ERUAKK0NGTEFHUyA9IEBDRkxBR1NACitDUFAgPSBAQ1BQQAorQ1BQRkxBR1MgPSBAQ1BQRkxBR1NACitDVVJTRVNfTElCUyA9IEBDVVJTRVNfTElCU0AKK0NYWCA9IEBDWFhACitDWFhERVBNT0RFID0gQENYWERFUE1PREVACitDWFhGTEFHUyA9IEBDWFhGTEFHU0AKK0NZR1BBVEhfVyA9IEBDWUdQQVRIX1dACitERUZTID0gQERFRlNACitERVBESVIgPSBAREVQRElSQAorRE9YWUdFTiA9IEBET1hZR0VOQAorRUNIT19DID0gQEVDSE9fQ0AKK0VDSE9fTiA9IEBFQ0hPX05ACitFQ0hPX1QgPSBARUNIT19UQAorRUdSRVAgPSBARUdSRVBACitFWEVFWFQgPSBARVhFRVhUQAorR0NPViA9IEBHQ09WQAorR0VUVEVYVF9NQUNST19WRVJTSU9OID0gQEdFVFRFWFRfTUFDUk9fVkVSU0lPTkAKK0dNU0dGTVQgPSBAR01TR0ZNVEAKK0dNU0dGTVRfMDE1ID0gQEdNU0dGTVRfMDE1QAorR1JFUCA9IEBHUkVQQAorSEFWRV9ET1QgPSBASEFWRV9ET1RACitJTlNUQUxMID0gQElOU1RBTExACitJTlNUQUxMX0RBVEEgPSBASU5TVEFMTF9EQVRBQAorSU5TVEFMTF9QUk9HUkFNID0gQElOU1RBTExfUFJPR1JBTUAKK0lOU1RBTExfU0NSSVBUID0gQElOU1RBTExfU0NSSVBUQAorSU5TVEFMTF9TVFJJUF9QUk9HUkFNID0gQElOU1RBTExfU1RSSVBfUFJPR1JBTUAKK0lOVExMSUJTID0gQElOVExMSUJTQAorSU5UTF9NQUNPU1hfTElCUyA9IEBJTlRMX01BQ09TWF9MSUJTQAorTENPViA9IEBMQ09WQAorTENPVl9HRU5IVE1MID0gQExDT1ZfR0VOSFRNTEAKK0xERkxBR1MgPSBATERGTEFHU0AKK0xFWCA9IEBMRVhACitMRVhMSUIgPSBATEVYTElCQAorTEVYX09VVFBVVF9ST09UID0gQExFWF9PVVRQVVRfUk9PVEAKK0xJQklDT05WID0gQExJQklDT05WQAorTElCSU5UTCA9IEBMSUJJTlRMQAorTElCT0JKUyA9IEBMSUJPQkpTQAorTElCUyA9IEBMSUJTQAorTFRMSUJJQ09OViA9IEBMVExJQklDT05WQAorTFRMSUJJTlRMID0gQExUTElCSU5UTEAKK0xUTElCT0JKUyA9IEBMVExJQk9CSlNACitNQUtFSU5GTyA9IEBNQUtFSU5GT0AKK01LRElSX1AgPSBATUtESVJfUEAKK01TR0ZNVCA9IEBNU0dGTVRACitNU0dGTVRfMDE1ID0gQE1TR0ZNVF8wMTVACitNU0dNRVJHRSA9IEBNU0dNRVJHRUAKK09CSkVYVCA9IEBPQkpFWFRACitQQUNLQUdFID0gQFBBQ0tBR0VACitQQUNLQUdFX0JVR1JFUE9SVCA9IEBQQUNLQUdFX0JVR1JFUE9SVEAKK1BBQ0tBR0VfTkFNRSA9IEBQQUNLQUdFX05BTUVACitQQUNLQUdFX1NUUklORyA9IEBQQUNLQUdFX1NUUklOR0AKK1BBQ0tBR0VfVEFSTkFNRSA9IEBQQUNLQUdFX1RBUk5BTUVACitQQUNLQUdFX1VSTCA9IEBQQUNLQUdFX1VSTEAKK1BBQ0tBR0VfVkVSU0lPTiA9IEBQQUNLQUdFX1ZFUlNJT05ACitQQVRIX1NFUEFSQVRPUiA9IEBQQVRIX1NFUEFSQVRPUkAKK1BFUkwgPSBAUEVSTEAKK1BFUkxfQ09WRVIgPSBAUEVSTF9DT1ZFUkAKK1BFUkxfQ09WRVJBR0UgPSBAUEVSTF9DT1ZFUkFHRUAKK1BFUkxfTElCRElSID0gQFBFUkxfTElCRElSQAorUEtHX0NPTkZJRyA9IEBQS0dfQ09ORklHQAorUEtHX0NPTkZJR19MSUJESVIgPSBAUEtHX0NPTkZJR19MSUJESVJACitQS0dfQ09ORklHX1BBVEggPSBAUEtHX0NPTkZJR19QQVRIQAorUE80QSA9IEBQTzRBQAorUE9EMk1BTiA9IEBQT0QyTUFOQAorUE9TVUIgPSBAUE9TVUJACitSQU5MSUIgPSBAUkFOTElCQAorU0VMSU5VWF9MSUJTID0gQFNFTElOVVhfTElCU0AKK1NFVF9NQUtFID0gQFNFVF9NQUtFQAorU0hFTEwgPSBAU0hFTExACitTU0RfTElCUyA9IEBTU0RfTElCU0AKK1NUUklQID0gQFNUUklQQAorVVNFX05MUyA9IEBVU0VfTkxTQAorVVNFX1BPNEEgPSBAVVNFX1BPNEFACitVU0VfVU5JQ09ERSA9IEBVU0VfVU5JQ09ERUAKK1ZFUlNJT04gPSBAVkVSU0lPTkAKK1hHRVRURVhUID0gQFhHRVRURVhUQAorWEdFVFRFWFRfMDE1ID0gQFhHRVRURVhUXzAxNUAKK1hHRVRURVhUX0VYVFJBX09QVElPTlMgPSBAWEdFVFRFWFRfRVhUUkFfT1BUSU9OU0AKK1pMSUJfTElCUyA9IEBaTElCX0xJQlNACithYnNfYnVpbGRkaXIgPSBAYWJzX2J1aWxkZGlyQAorYWJzX3NyY2RpciA9IEBhYnNfc3JjZGlyQAorYWJzX3RvcF9idWlsZGRpciA9IEBhYnNfdG9wX2J1aWxkZGlyQAorYWJzX3RvcF9zcmNkaXIgPSBAYWJzX3RvcF9zcmNkaXJACithY19jdF9DQyA9IEBhY19jdF9DQ0AKK2FjX2N0X0NYWCA9IEBhY19jdF9DWFhACithZG1pbmRpciA9IEBhZG1pbmRpckAKK2FtX19pbmNsdWRlID0gQGFtX19pbmNsdWRlQAorYW1fX2xlYWRpbmdfZG90ID0gQGFtX19sZWFkaW5nX2RvdEAKK2FtX19xdW90ZSA9IEBhbV9fcXVvdGVACithbV9fdGFyID0gQGFtX190YXJACithbV9fdW50YXIgPSBAYW1fX3VudGFyQAorYmluZGlyID0gQGJpbmRpckAKK2J1aWxkID0gQGJ1aWxkQAorYnVpbGRfYWxpYXMgPSBAYnVpbGRfYWxpYXNACitidWlsZF9jcHUgPSBAYnVpbGRfY3B1QAorYnVpbGRfb3MgPSBAYnVpbGRfb3NACitidWlsZF92ZW5kb3IgPSBAYnVpbGRfdmVuZG9yQAorYnVpbGRkaXIgPSBAYnVpbGRkaXJACitkYXRhZGlyID0gQGRhdGFkaXJACitkYXRhcm9vdGRpciA9IEBkYXRhcm9vdGRpckAKK2RvY2RpciA9IEBkb2NkaXJACitkdmlkaXIgPSBAZHZpZGlyQAorZXhlY19wcmVmaXggPSBAZXhlY19wcmVmaXhACitob3N0ID0gQGhvc3RACitob3N0X2FsaWFzID0gQGhvc3RfYWxpYXNACitob3N0X2NwdSA9IEBob3N0X2NwdUAKK2hvc3Rfb3MgPSBAaG9zdF9vc0AKK2hvc3RfdmVuZG9yID0gQGhvc3RfdmVuZG9yQAoraHRtbGRpciA9IEBodG1sZGlyQAoraW5jbHVkZWRpciA9IEBpbmNsdWRlZGlyQAoraW5mb2RpciA9IEBpbmZvZGlyQAoraW5zdGFsbF9zaCA9IEBpbnN0YWxsX3NoQAorbGliZGlyID0gQGxpYmRpckAKK2xpYmV4ZWNkaXIgPSBAbGliZXhlY2RpckAKK2xvY2FsZWRpciA9ICQoZGF0YWRpcikvbG9jYWxlCitsb2NhbHN0YXRlZGlyID0gQGxvY2Fsc3RhdGVkaXJACitsb2dkaXIgPSBAbG9nZGlyQAorbWFuZGlyID0gQG1hbmRpckAKK21rZGlyX3AgPSBAbWtkaXJfcEAKK29sZGluY2x1ZGVkaXIgPSBAb2xkaW5jbHVkZWRpckAKK3BkZmRpciA9IEBwZGZkaXJACitwcmVmaXggPSBAcHJlZml4QAorcHJvZ3JhbV90cmFuc2Zvcm1fbmFtZSA9IEBwcm9ncmFtX3RyYW5zZm9ybV9uYW1lQAorcHNkaXIgPSBAcHNkaXJACitzYmluZGlyID0gQHNiaW5kaXJACitzaGFyZWRzdGF0ZWRpciA9IEBzaGFyZWRzdGF0ZWRpckAKK3NyY2RpciA9IEBzcmNkaXJACitzeXNjb25mZGlyID0gQHN5c2NvbmZkaXJACit0YXJnZXRfYWxpYXMgPSBAdGFyZ2V0X2FsaWFzQAordG9wX2J1aWxkX3ByZWZpeCA9IEB0b3BfYnVpbGRfcHJlZml4QAordG9wX2J1aWxkZGlyID0gQHRvcF9idWlsZGRpckAKK3RvcF9zcmNkaXIgPSBAdG9wX3NyY2RpckAKK1NVQkRJUlMgPSAuIHRlc3QKK3BrZ2NvbmZkaXIgPSAkKHN5c2NvbmZkaXIpL0BQQUNLQUdFQAorQU1fQ1BQRkxBR1MgPSBcCisJLURMT0NBTEVESVI9XCIkKGxvY2FsZWRpcilcIiBcCisJLURDT05GSUdESVI9XCIkKHBrZ2NvbmZkaXIpXCIgXAorCS1EQURNSU5ESVI9XCIkKGFkbWluZGlyKVwiIFwKKwktaWRpcmFmdGVyICQodG9wX3NyY2RpcikvbGliL2NvbXBhdCBcCisJLUkkKHRvcF9idWlsZGRpcikgXAorCS1JJCh0b3Bfc3JjZGlyKS9saWIKKworRVhUUkFfRElTVCA9IFwKKwlsaWJkcGtnLlZlcnNpb25zIFwKKwlsaWJkcGtnLnBjLmluCisKK3BrZ2NvbmZpZ2RpciA9ICQobGliZGlyKS9wa2djb25maWcKK3BrZ2NvbmZpZ19EQVRBID0gbGliZHBrZy5wYworbGliX0xJQlJBUklFUyA9IGxpYmRwa2cuYQorbGliZHBrZ19hX1NPVVJDRVMgPSBcCisJZGxpc3QuaCBcCisJYXIuYyBcCisJYnVmZmVyLmMgXAorCWNsZWFudXAuYyBcCisJY29tbWFuZC5jIFwKKwljb21wcmVzcy5jIFwKKwlkYmRpci5jIFwKKwlkYm1vZGlmeS5jIFwKKwlkZWJ1Zy5jIFwKKwlkaXIuYyBcCisJZHVtcC5jIFwKKwllaGFuZGxlLmMgXAorCWVycm9yLmMgXAorCWZkaW8uYyBcCisJZmlsZS5jIFwKKwlmaWVsZHMuYyBcCisJZ2xvYi5jIFwKKwlpMThuLmggXAorCWxvZy5jIFwKKwltZDUuYyBtZDUuaCBcCisJbWxpYi5jIFwKKwluYW1ldmFsdWUuYyBcCisJbmZtYWxsb2MuYyBcCisJb3B0aW9ucy5jIFwKKwlwYXJzZS5jIFwKKwlwYXJzZWhlbHAuYyBcCisJcGF0aC5jIFwKKwlwa2cuYyBcCisJcGtnLWRiLmMgXAorCXBrZy1hcnJheS5jIFwKKwlwa2ctZm9ybWF0LmMgXAorCXBrZy1saXN0LmMgXAorCXBrZy1xdWV1ZS5jIFwKKwlwa2ctc2hvdy5jIFwKKwlwcm9nbmFtZS5jIFwKKwlwcm9ncmVzcy5jIFwKKwlzdHJpbmcuYyBcCisJc3VicHJvYy5jIFwKKwl0YXJmbi5jIFwKKwl0ZXN0LmggXAorCXRyaWduYW1lLmMgXAorCXRyaWdub3RlLmMgXAorCXRyaWdsaWIuYyBcCisJdHJpZ2RlZmVycmVkLmwgXAorCXV0aWxzLmMgXAorCXZhcmJ1Zi5jIFwKKwl2ZXJjbXAuYyBcCisJdmVyc2lvbi5jCisKK3BrZ2luY2x1ZGVfSEVBREVSUyA9IFwKKwlhci5oIFwKKwlidWZmZXIuaCBcCisJY29tbWFuZC5oIFwKKwljb21wcmVzcy5oIFwKKwlkZWJ1Zy5oIFwKKwlkaXIuaCBcCisJZHBrZy5oIFwKKwlkcGtnLWRiLmggXAorCWVoYW5kbGUuaCBcCisJZXJyb3IuaCBcCisJZmRpby5oIFwKKwlmaWxlLmggXAorCWdsb2IuaCBcCisJbWFjcm9zLmggXAorCW5hbWV2YWx1ZS5oIFwKKwlvcHRpb25zLmggXAorCXBhcnNlZHVtcC5oIFwKKwlwYXRoLmggXAorCXBrZy5oIFwKKwlwa2ctYXJyYXkuaCBcCisJcGtnLWZvcm1hdC5oIFwKKwlwa2ctbGlzdC5oIFwKKwlwa2ctcXVldWUuaCBcCisJcGtnLXNob3cuaCBcCisJcHJvZ25hbWUuaCBcCisJcHJvZ3Jlc3MuaCBcCisJc3RyaW5nLmggXAorCXN1YnByb2MuaCBcCisJdGFyZm4uaCBcCisJdHJpZ2RlZmVycmVkLmggXAorCXRyaWdsaWIuaCBcCisJdmFyYnVmLmggXAorCXZlcnNpb24uaAorCithbGw6IGFsbC1yZWN1cnNpdmUKKworLlNVRkZJWEVTOgorLlNVRkZJWEVTOiAuYyAubCAubyAub2JqCiskKHNyY2RpcikvTWFrZWZpbGUuaW46ICAkKHNyY2RpcikvTWFrZWZpbGUuYW0gICQoYW1fX2NvbmZpZ3VyZV9kZXBzKQorCUBmb3IgZGVwIGluICQ/OyBkbyBcCisJICBjYXNlICckKGFtX19jb25maWd1cmVfZGVwcyknIGluIFwKKwkgICAgKiQkZGVwKikgXAorCSAgICAgICggY2QgJCh0b3BfYnVpbGRkaXIpICYmICQoTUFLRSkgJChBTV9NQUtFRkxBR1MpIGFtLS1yZWZyZXNoICkgXAorCSAgICAgICAgJiYgeyBpZiB0ZXN0IC1mICRAOyB0aGVuIGV4aXQgMDsgZWxzZSBicmVhazsgZmk7IH07IFwKKwkgICAgICBleGl0IDE7OyBcCisJICBlc2FjOyBcCisJZG9uZTsgXAorCWVjaG8gJyBjZCAkKHRvcF9zcmNkaXIpICYmICQoQVVUT01BS0UpIC0tZm9yZWlnbiBsaWIvZHBrZy9NYWtlZmlsZSc7IFwKKwkkKGFtX19jZCkgJCh0b3Bfc3JjZGlyKSAmJiBcCisJICAkKEFVVE9NQUtFKSAtLWZvcmVpZ24gbGliL2Rwa2cvTWFrZWZpbGUKKy5QUkVDSU9VUzogTWFrZWZpbGUKK01ha2VmaWxlOiAkKHNyY2RpcikvTWFrZWZpbGUuaW4gJCh0b3BfYnVpbGRkaXIpL2NvbmZpZy5zdGF0dXMKKwlAY2FzZSAnJD8nIGluIFwKKwkgICpjb25maWcuc3RhdHVzKikgXAorCSAgICBjZCAkKHRvcF9idWlsZGRpcikgJiYgJChNQUtFKSAkKEFNX01BS0VGTEFHUykgYW0tLXJlZnJlc2g7OyBcCisJICAqKSBcCisJICAgIGVjaG8gJyBjZCAkKHRvcF9idWlsZGRpcikgJiYgJChTSEVMTCkgLi9jb25maWcuc3RhdHVzICQoc3ViZGlyKS8kQCAkKGFtX19kZXBmaWxlc19tYXliZSknOyBcCisJICAgIGNkICQodG9wX2J1aWxkZGlyKSAmJiAkKFNIRUxMKSAuL2NvbmZpZy5zdGF0dXMgJChzdWJkaXIpLyRAICQoYW1fX2RlcGZpbGVzX21heWJlKTs7IFwKKwllc2FjOworCiskKHRvcF9idWlsZGRpcikvY29uZmlnLnN0YXR1czogJCh0b3Bfc3JjZGlyKS9jb25maWd1cmUgJChDT05GSUdfU1RBVFVTX0RFUEVOREVOQ0lFUykKKwljZCAkKHRvcF9idWlsZGRpcikgJiYgJChNQUtFKSAkKEFNX01BS0VGTEFHUykgYW0tLXJlZnJlc2gKKworJCh0b3Bfc3JjZGlyKS9jb25maWd1cmU6ICAkKGFtX19jb25maWd1cmVfZGVwcykKKwljZCAkKHRvcF9idWlsZGRpcikgJiYgJChNQUtFKSAkKEFNX01BS0VGTEFHUykgYW0tLXJlZnJlc2gKKyQoQUNMT0NBTF9NNCk6ICAkKGFtX19hY2xvY2FsX200X2RlcHMpCisJY2QgJCh0b3BfYnVpbGRkaXIpICYmICQoTUFLRSkgJChBTV9NQUtFRkxBR1MpIGFtLS1yZWZyZXNoCiskKGFtX19hY2xvY2FsX200X2RlcHMpOgorbGliZHBrZy5wYzogJCh0b3BfYnVpbGRkaXIpL2NvbmZpZy5zdGF0dXMgJChzcmNkaXIpL2xpYmRwa2cucGMuaW4KKwljZCAkKHRvcF9idWlsZGRpcikgJiYgJChTSEVMTCkgLi9jb25maWcuc3RhdHVzICQoc3ViZGlyKS8kQAoraW5zdGFsbC1saWJMSUJSQVJJRVM6ICQobGliX0xJQlJBUklFUykKKwlAJChOT1JNQUxfSU5TVEFMTCkKKwl0ZXN0IC16ICIkKGxpYmRpcikiIHx8ICQoTUtESVJfUCkgIiQoREVTVERJUikkKGxpYmRpcikiCisJQGxpc3Q9JyQobGliX0xJQlJBUklFUyknOyB0ZXN0IC1uICIkKGxpYmRpcikiIHx8IGxpc3Q9OyBcCisJbGlzdDI9OyBmb3IgcCBpbiAkJGxpc3Q7IGRvIFwKKwkgIGlmIHRlc3QgLWYgJCRwOyB0aGVuIFwKKwkgICAgbGlzdDI9IiQkbGlzdDIgJCRwIjsgXAorCSAgZWxzZSA6OyBmaTsgXAorCWRvbmU7IFwKKwl0ZXN0IC16ICIkJGxpc3QyIiB8fCB7IFwKKwkgIGVjaG8gIiAkKElOU1RBTExfREFUQSkgJCRsaXN0MiAnJChERVNURElSKSQobGliZGlyKSciOyBcCisJICAkKElOU1RBTExfREFUQSkgJCRsaXN0MiAiJChERVNURElSKSQobGliZGlyKSIgfHwgZXhpdCAkJD87IH0KKwlAJChQT1NUX0lOU1RBTEwpCisJQGxpc3Q9JyQobGliX0xJQlJBUklFUyknOyB0ZXN0IC1uICIkKGxpYmRpcikiIHx8IGxpc3Q9OyBcCisJZm9yIHAgaW4gJCRsaXN0OyBkbyBcCisJICBpZiB0ZXN0IC1mICQkcDsgdGhlbiBcCisJICAgICQoYW1fX3N0cmlwX2RpcikgXAorCSAgICBlY2hvICIgKCBjZCAnJChERVNURElSKSQobGliZGlyKScgJiYgJChSQU5MSUIpICQkZiApIjsgXAorCSAgICAoIGNkICIkKERFU1RESVIpJChsaWJkaXIpIiAmJiAkKFJBTkxJQikgJCRmICkgfHwgZXhpdCAkJD87IFwKKwkgIGVsc2UgOjsgZmk7IFwKKwlkb25lCisKK3VuaW5zdGFsbC1saWJMSUJSQVJJRVM6CisJQCQoTk9STUFMX1VOSU5TVEFMTCkKKwlAbGlzdD0nJChsaWJfTElCUkFSSUVTKSc7IHRlc3QgLW4gIiQobGliZGlyKSIgfHwgbGlzdD07IFwKKwlmaWxlcz1gZm9yIHAgaW4gJCRsaXN0OyBkbyBlY2hvICQkcDsgZG9uZSB8IHNlZCAtZSAnc3xeLiovfHwnYDsgXAorCXRlc3QgLW4gIiQkZmlsZXMiIHx8IGV4aXQgMDsgXAorCWVjaG8gIiAoIGNkICckKERFU1RESVIpJChsaWJkaXIpJyAmJiBybSAtZiAiJCRmaWxlcyIgKSI7IFwKKwljZCAiJChERVNURElSKSQobGliZGlyKSIgJiYgcm0gLWYgJCRmaWxlcworCitjbGVhbi1saWJMSUJSQVJJRVM6CisJLXRlc3QgLXogIiQobGliX0xJQlJBUklFUykiIHx8IHJtIC1mICQobGliX0xJQlJBUklFUykKK2xpYmRwa2cuYTogJChsaWJkcGtnX2FfT0JKRUNUUykgJChsaWJkcGtnX2FfREVQRU5ERU5DSUVTKSAKKwkkKEFNX1ZfYXQpLXJtIC1mIGxpYmRwa2cuYQorCSQoQU1fVl9BUikkKGxpYmRwa2dfYV9BUikgbGliZHBrZy5hICQobGliZHBrZ19hX09CSkVDVFMpICQobGliZHBrZ19hX0xJQkFERCkKKwkkKEFNX1ZfYXQpJChSQU5MSUIpIGxpYmRwa2cuYQorCittb3N0bHljbGVhbi1jb21waWxlOgorCS1ybSAtZiAqLiQoT0JKRVhUKQorCitkaXN0Y2xlYW4tY29tcGlsZToKKwktcm0gLWYgKi50YWIuYworCitAQU1ERVBfVFJVRUBAYW1fX2luY2x1ZGVAIEBhbV9fcXVvdGVALi8kKERFUERJUikvYXIuUG9AYW1fX3F1b3RlQAorQEFNREVQX1RSVUVAQGFtX19pbmNsdWRlQCBAYW1fX3F1b3RlQC4vJChERVBESVIpL2J1ZmZlci5Qb0BhbV9fcXVvdGVACitAQU1ERVBfVFJVRUBAYW1fX2luY2x1ZGVAIEBhbV9fcXVvdGVALi8kKERFUERJUikvY2xlYW51cC5Qb0BhbV9fcXVvdGVACitAQU1ERVBfVFJVRUBAYW1fX2luY2x1ZGVAIEBhbV9fcXVvdGVALi8kKERFUERJUikvY29tbWFuZC5Qb0BhbV9fcXVvdGVACitAQU1ERVBfVFJVRUBAYW1fX2luY2x1ZGVAIEBhbV9fcXVvdGVALi8kKERFUERJUikvY29tcHJlc3MuUG9AYW1fX3F1b3RlQAorQEFNREVQX1RSVUVAQGFtX19pbmNsdWRlQCBAYW1fX3F1b3RlQC4vJChERVBESVIpL2RiZGlyLlBvQGFtX19xdW90ZUAKK0BBTURFUF9UUlVFQEBhbV9faW5jbHVkZUAgQGFtX19xdW90ZUAuLyQoREVQRElSKS9kYm1vZGlmeS5Qb0BhbV9fcXVvdGVACitAQU1ERVBfVFJVRUBAYW1fX2luY2x1ZGVAIEBhbV9fcXVvdGVALi8kKERFUERJUikvZGVidWcuUG9AYW1fX3F1b3RlQAorQEFNREVQX1RSVUVAQGFtX19pbmNsdWRlQCBAYW1fX3F1b3RlQC4vJChERVBESVIpL2Rpci5Qb0BhbV9fcXVvdGVACitAQU1ERVBfVFJVRUBAYW1fX2luY2x1ZGVAIEBhbV9fcXVvdGVALi8kKERFUERJUikvZHVtcC5Qb0BhbV9fcXVvdGVACitAQU1ERVBfVFJVRUBAYW1fX2luY2x1ZGVAIEBhbV9fcXVvdGVALi8kKERFUERJUikvZWhhbmRsZS5Qb0BhbV9fcXVvdGVACitAQU1ERVBfVFJVRUBAYW1fX2luY2x1ZGVAIEBhbV9fcXVvdGVALi8kKERFUERJUikvZXJyb3IuUG9AYW1fX3F1b3RlQAorQEFNREVQX1RSVUVAQGFtX19pbmNsdWRlQCBAYW1fX3F1b3RlQC4vJChERVBESVIpL2ZkaW8uUG9AYW1fX3F1b3RlQAorQEFNREVQX1RSVUVAQGFtX19pbmNsdWRlQCBAYW1fX3F1b3RlQC4vJChERVBESVIpL2ZpZWxkcy5Qb0BhbV9fcXVvdGVACitAQU1ERVBfVFJVRUBAYW1fX2luY2x1ZGVAIEBhbV9fcXVvdGVALi8kKERFUERJUikvZmlsZS5Qb0BhbV9fcXVvdGVACitAQU1ERVBfVFJVRUBAYW1fX2luY2x1ZGVAIEBhbV9fcXVvdGVALi8kKERFUERJUikvZ2xvYi5Qb0BhbV9fcXVvdGVACitAQU1ERVBfVFJVRUBAYW1fX2luY2x1ZGVAIEBhbV9fcXVvdGVALi8kKERFUERJUikvbG9nLlBvQGFtX19xdW90ZUAKK0BBTURFUF9UUlVFQEBhbV9faW5jbHVkZUAgQGFtX19xdW90ZUAuLyQoREVQRElSKS9tZDUuUG9AYW1fX3F1b3RlQAorQEFNREVQX1RSVUVAQGFtX19pbmNsdWRlQCBAYW1fX3F1b3RlQC4vJChERVBESVIpL21saWIuUG9AYW1fX3F1b3RlQAorQEFNREVQX1RSVUVAQGFtX19pbmNsdWRlQCBAYW1fX3F1b3RlQC4vJChERVBESVIpL25hbWV2YWx1ZS5Qb0BhbV9fcXVvdGVACitAQU1ERVBfVFJVRUBAYW1fX2luY2x1ZGVAIEBhbV9fcXVvdGVALi8kKERFUERJUikvbmZtYWxsb2MuUG9AYW1fX3F1b3RlQAorQEFNREVQX1RSVUVAQGFtX19pbmNsdWRlQCBAYW1fX3F1b3RlQC4vJChERVBESVIpL29wdGlvbnMuUG9AYW1fX3F1b3RlQAorQEFNREVQX1RSVUVAQGFtX19pbmNsdWRlQCBAYW1fX3F1b3RlQC4vJChERVBESVIpL3BhcnNlLlBvQGFtX19xdW90ZUAKK0BBTURFUF9UUlVFQEBhbV9faW5jbHVkZUAgQGFtX19xdW90ZUAuLyQoREVQRElSKS9wYXJzZWhlbHAuUG9AYW1fX3F1b3RlQAorQEFNREVQX1RSVUVAQGFtX19pbmNsdWRlQCBAYW1fX3F1b3RlQC4vJChERVBESVIpL3BhdGguUG9AYW1fX3F1b3RlQAorQEFNREVQX1RSVUVAQGFtX19pbmNsdWRlQCBAYW1fX3F1b3RlQC4vJChERVBESVIpL3BrZy1hcnJheS5Qb0BhbV9fcXVvdGVACitAQU1ERVBfVFJVRUBAYW1fX2luY2x1ZGVAIEBhbV9fcXVvdGVALi8kKERFUERJUikvcGtnLWRiLlBvQGFtX19xdW90ZUAKK0BBTURFUF9UUlVFQEBhbV9faW5jbHVkZUAgQGFtX19xdW90ZUAuLyQoREVQRElSKS9wa2ctZm9ybWF0LlBvQGFtX19xdW90ZUAKK0BBTURFUF9UUlVFQEBhbV9faW5jbHVkZUAgQGFtX19xdW90ZUAuLyQoREVQRElSKS9wa2ctbGlzdC5Qb0BhbV9fcXVvdGVACitAQU1ERVBfVFJVRUBAYW1fX2luY2x1ZGVAIEBhbV9fcXVvdGVALi8kKERFUERJUikvcGtnLXF1ZXVlLlBvQGFtX19xdW90ZUAKK0BBTURFUF9UUlVFQEBhbV9faW5jbHVkZUAgQGFtX19xdW90ZUAuLyQoREVQRElSKS9wa2ctc2hvdy5Qb0BhbV9fcXVvdGVACitAQU1ERVBfVFJVRUBAYW1fX2luY2x1ZGVAIEBhbV9fcXVvdGVALi8kKERFUERJUikvcGtnLlBvQGFtX19xdW90ZUAKK0BBTURFUF9UUlVFQEBhbV9faW5jbHVkZUAgQGFtX19xdW90ZUAuLyQoREVQRElSKS9wcm9nbmFtZS5Qb0BhbV9fcXVvdGVACitAQU1ERVBfVFJVRUBAYW1fX2luY2x1ZGVAIEBhbV9fcXVvdGVALi8kKERFUERJUikvcHJvZ3Jlc3MuUG9AYW1fX3F1b3RlQAorQEFNREVQX1RSVUVAQGFtX19pbmNsdWRlQCBAYW1fX3F1b3RlQC4vJChERVBESVIpL3N0cmluZy5Qb0BhbV9fcXVvdGVACitAQU1ERVBfVFJVRUBAYW1fX2luY2x1ZGVAIEBhbV9fcXVvdGVALi8kKERFUERJUikvc3VicHJvYy5Qb0BhbV9fcXVvdGVACitAQU1ERVBfVFJVRUBAYW1fX2luY2x1ZGVAIEBhbV9fcXVvdGVALi8kKERFUERJUikvdGFyZm4uUG9AYW1fX3F1b3RlQAorQEFNREVQX1RSVUVAQGFtX19pbmNsdWRlQCBAYW1fX3F1b3RlQC4vJChERVBESVIpL3RyaWdkZWZlcnJlZC5Qb0BhbV9fcXVvdGVACitAQU1ERVBfVFJVRUBAYW1fX2luY2x1ZGVAIEBhbV9fcXVvdGVALi8kKERFUERJUikvdHJpZ2xpYi5Qb0BhbV9fcXVvdGVACitAQU1ERVBfVFJVRUBAYW1fX2luY2x1ZGVAIEBhbV9fcXVvdGVALi8kKERFUERJUikvdHJpZ25hbWUuUG9AYW1fX3F1b3RlQAorQEFNREVQX1RSVUVAQGFtX19pbmNsdWRlQCBAYW1fX3F1b3RlQC4vJChERVBESVIpL3RyaWdub3RlLlBvQGFtX19xdW90ZUAKK0BBTURFUF9UUlVFQEBhbV9faW5jbHVkZUAgQGFtX19xdW90ZUAuLyQoREVQRElSKS91dGlscy5Qb0BhbV9fcXVvdGVACitAQU1ERVBfVFJVRUBAYW1fX2luY2x1ZGVAIEBhbV9fcXVvdGVALi8kKERFUERJUikvdmFyYnVmLlBvQGFtX19xdW90ZUAKK0BBTURFUF9UUlVFQEBhbV9faW5jbHVkZUAgQGFtX19xdW90ZUAuLyQoREVQRElSKS92ZXJjbXAuUG9AYW1fX3F1b3RlQAorQEFNREVQX1RSVUVAQGFtX19pbmNsdWRlQCBAYW1fX3F1b3RlQC4vJChERVBESVIpL3ZlcnNpb24uUG9AYW1fX3F1b3RlQAorCisuYy5vOgorQGFtX19mYXN0ZGVwQ0NfVFJVRUAJJChBTV9WX0NDKSQoQ09NUElMRSkgLU1UICRAIC1NRCAtTVAgLU1GICQoREVQRElSKS8kKi5UcG8gLWMgLW8gJEAgJDwKK0BhbV9fZmFzdGRlcENDX1RSVUVACSQoQU1fVl9hdCkkKGFtX19tdikgJChERVBESVIpLyQqLlRwbyAkKERFUERJUikvJCouUG8KK0BhbV9fZmFzdGRlcENDX0ZBTFNFQAkkKEFNX1ZfQ0MpIEBBTV9CQUNLU0xBU0hACitAQU1ERVBfVFJVRUBAYW1fX2Zhc3RkZXBDQ19GQUxTRUAJc291cmNlPSckPCcgb2JqZWN0PSckQCcgbGlidG9vbD1ubyBAQU1ERVBCQUNLU0xBU0hACitAQU1ERVBfVFJVRUBAYW1fX2Zhc3RkZXBDQ19GQUxTRUAJREVQRElSPSQoREVQRElSKSAkKENDREVQTU9ERSkgJChkZXBjb21wKSBAQU1ERVBCQUNLU0xBU0hACitAYW1fX2Zhc3RkZXBDQ19GQUxTRUAJJChDT01QSUxFKSAtYyAkPAorCisuYy5vYmo6CitAYW1fX2Zhc3RkZXBDQ19UUlVFQAkkKEFNX1ZfQ0MpJChDT01QSUxFKSAtTVQgJEAgLU1EIC1NUCAtTUYgJChERVBESVIpLyQqLlRwbyAtYyAtbyAkQCBgJChDWUdQQVRIX1cpICckPCdgCitAYW1fX2Zhc3RkZXBDQ19UUlVFQAkkKEFNX1ZfYXQpJChhbV9fbXYpICQoREVQRElSKS8kKi5UcG8gJChERVBESVIpLyQqLlBvCitAYW1fX2Zhc3RkZXBDQ19GQUxTRUAJJChBTV9WX0NDKSBAQU1fQkFDS1NMQVNIQAorQEFNREVQX1RSVUVAQGFtX19mYXN0ZGVwQ0NfRkFMU0VACXNvdXJjZT0nJDwnIG9iamVjdD0nJEAnIGxpYnRvb2w9bm8gQEFNREVQQkFDS1NMQVNIQAorQEFNREVQX1RSVUVAQGFtX19mYXN0ZGVwQ0NfRkFMU0VACURFUERJUj0kKERFUERJUikgJChDQ0RFUE1PREUpICQoZGVwY29tcCkgQEFNREVQQkFDS1NMQVNIQAorQGFtX19mYXN0ZGVwQ0NfRkFMU0VACSQoQ09NUElMRSkgLWMgYCQoQ1lHUEFUSF9XKSAnJDwnYAorCisubC5jOgorCSQoQU1fVl9MRVgpJChhbV9fc2tpcGxleCkgJChTSEVMTCkgJChZTFdSQVApICQ8ICQoTEVYX09VVFBVVF9ST09UKS5jICRAIC0tICQoTEVYQ09NUElMRSkKK2luc3RhbGwtcGtnY29uZmlnREFUQTogJChwa2djb25maWdfREFUQSkKKwlAJChOT1JNQUxfSU5TVEFMTCkKKwl0ZXN0IC16ICIkKHBrZ2NvbmZpZ2RpcikiIHx8ICQoTUtESVJfUCkgIiQoREVTVERJUikkKHBrZ2NvbmZpZ2RpcikiCisJQGxpc3Q9JyQocGtnY29uZmlnX0RBVEEpJzsgdGVzdCAtbiAiJChwa2djb25maWdkaXIpIiB8fCBsaXN0PTsgXAorCWZvciBwIGluICQkbGlzdDsgZG8gXAorCSAgaWYgdGVzdCAtZiAiJCRwIjsgdGhlbiBkPTsgZWxzZSBkPSIkKHNyY2RpcikvIjsgZmk7IFwKKwkgIGVjaG8gIiQkZCQkcCI7IFwKKwlkb25lIHwgJChhbV9fYmFzZV9saXN0KSB8IFwKKwl3aGlsZSByZWFkIGZpbGVzOyBkbyBcCisJICBlY2hvICIgJChJTlNUQUxMX0RBVEEpICQkZmlsZXMgJyQoREVTVERJUikkKHBrZ2NvbmZpZ2RpciknIjsgXAorCSAgJChJTlNUQUxMX0RBVEEpICQkZmlsZXMgIiQoREVTVERJUikkKHBrZ2NvbmZpZ2RpcikiIHx8IGV4aXQgJCQ/OyBcCisJZG9uZQorCit1bmluc3RhbGwtcGtnY29uZmlnREFUQToKKwlAJChOT1JNQUxfVU5JTlNUQUxMKQorCUBsaXN0PSckKHBrZ2NvbmZpZ19EQVRBKSc7IHRlc3QgLW4gIiQocGtnY29uZmlnZGlyKSIgfHwgbGlzdD07IFwKKwlmaWxlcz1gZm9yIHAgaW4gJCRsaXN0OyBkbyBlY2hvICQkcDsgZG9uZSB8IHNlZCAtZSAnc3xeLiovfHwnYDsgXAorCXRlc3QgLW4gIiQkZmlsZXMiIHx8IGV4aXQgMDsgXAorCWVjaG8gIiAoIGNkICckKERFU1RESVIpJChwa2djb25maWdkaXIpJyAmJiBybSAtZiIgJCRmaWxlcyAiKSI7IFwKKwljZCAiJChERVNURElSKSQocGtnY29uZmlnZGlyKSIgJiYgcm0gLWYgJCRmaWxlcworaW5zdGFsbC1wa2dpbmNsdWRlSEVBREVSUzogJChwa2dpbmNsdWRlX0hFQURFUlMpCisJQCQoTk9STUFMX0lOU1RBTEwpCisJdGVzdCAteiAiJChwa2dpbmNsdWRlZGlyKSIgfHwgJChNS0RJUl9QKSAiJChERVNURElSKSQocGtnaW5jbHVkZWRpcikiCisJQGxpc3Q9JyQocGtnaW5jbHVkZV9IRUFERVJTKSc7IHRlc3QgLW4gIiQocGtnaW5jbHVkZWRpcikiIHx8IGxpc3Q9OyBcCisJZm9yIHAgaW4gJCRsaXN0OyBkbyBcCisJICBpZiB0ZXN0IC1mICIkJHAiOyB0aGVuIGQ9OyBlbHNlIGQ9IiQoc3JjZGlyKS8iOyBmaTsgXAorCSAgZWNobyAiJCRkJCRwIjsgXAorCWRvbmUgfCAkKGFtX19iYXNlX2xpc3QpIHwgXAorCXdoaWxlIHJlYWQgZmlsZXM7IGRvIFwKKwkgIGVjaG8gIiAkKElOU1RBTExfSEVBREVSKSAkJGZpbGVzICckKERFU1RESVIpJChwa2dpbmNsdWRlZGlyKSciOyBcCisJICAkKElOU1RBTExfSEVBREVSKSAkJGZpbGVzICIkKERFU1RESVIpJChwa2dpbmNsdWRlZGlyKSIgfHwgZXhpdCAkJD87IFwKKwlkb25lCisKK3VuaW5zdGFsbC1wa2dpbmNsdWRlSEVBREVSUzoKKwlAJChOT1JNQUxfVU5JTlNUQUxMKQorCUBsaXN0PSckKHBrZ2luY2x1ZGVfSEVBREVSUyknOyB0ZXN0IC1uICIkKHBrZ2luY2x1ZGVkaXIpIiB8fCBsaXN0PTsgXAorCWZpbGVzPWBmb3IgcCBpbiAkJGxpc3Q7IGRvIGVjaG8gJCRwOyBkb25lIHwgc2VkIC1lICdzfF4uKi98fCdgOyBcCisJdGVzdCAtbiAiJCRmaWxlcyIgfHwgZXhpdCAwOyBcCisJZWNobyAiICggY2QgJyQoREVTVERJUikkKHBrZ2luY2x1ZGVkaXIpJyAmJiBybSAtZiIgJCRmaWxlcyAiKSI7IFwKKwljZCAiJChERVNURElSKSQocGtnaW5jbHVkZWRpcikiICYmIHJtIC1mICQkZmlsZXMKKworIyBUaGlzIGRpcmVjdG9yeSdzIHN1YmRpcmVjdG9yaWVzIGFyZSBtb3N0bHkgaW5kZXBlbmRlbnQ7IHlvdSBjYW4gY2QKKyMgaW50byB0aGVtIGFuZCBydW4gYG1ha2UnIHdpdGhvdXQgZ29pbmcgdGhyb3VnaCB0aGlzIE1ha2VmaWxlLgorIyBUbyBjaGFuZ2UgdGhlIHZhbHVlcyBvZiBgbWFrZScgdmFyaWFibGVzOiBpbnN0ZWFkIG9mIGVkaXRpbmcgTWFrZWZpbGVzLAorIyAoMSkgaWYgdGhlIHZhcmlhYmxlIGlzIHNldCBpbiBgY29uZmlnLnN0YXR1cycsIGVkaXQgYGNvbmZpZy5zdGF0dXMnCisjICAgICAod2hpY2ggd2lsbCBjYXVzZSB0aGUgTWFrZWZpbGVzIHRvIGJlIHJlZ2VuZXJhdGVkIHdoZW4geW91IHJ1biBgbWFrZScpOworIyAoMikgb3RoZXJ3aXNlLCBwYXNzIHRoZSBkZXNpcmVkIHZhbHVlcyBvbiB0aGUgYG1ha2UnIGNvbW1hbmQgbGluZS4KKyQoUkVDVVJTSVZFX1RBUkdFVFMpOgorCUBmYWlsPSBmYWlsY29tPSdleGl0IDEnOyBcCisJZm9yIGYgaW4geCAkJE1BS0VGTEFHUzsgZG8gXAorCSAgY2FzZSAkJGYgaW4gXAorCSAgICAqPSogfCAtLVsha10qKTs7IFwKKwkgICAgKmsqKSBmYWlsY29tPSdmYWlsPXllcyc7OyBcCisJICBlc2FjOyBcCisJZG9uZTsgXAorCWRvdF9zZWVuPW5vOyBcCisJdGFyZ2V0PWBlY2hvICRAIHwgc2VkIHMvLXJlY3Vyc2l2ZS8vYDsgXAorCWxpc3Q9JyQoU1VCRElSUyknOyBmb3Igc3ViZGlyIGluICQkbGlzdDsgZG8gXAorCSAgZWNobyAiTWFraW5nICQkdGFyZ2V0IGluICQkc3ViZGlyIjsgXAorCSAgaWYgdGVzdCAiJCRzdWJkaXIiID0gIi4iOyB0aGVuIFwKKwkgICAgZG90X3NlZW49eWVzOyBcCisJICAgIGxvY2FsX3RhcmdldD0iJCR0YXJnZXQtYW0iOyBcCisJICBlbHNlIFwKKwkgICAgbG9jYWxfdGFyZ2V0PSIkJHRhcmdldCI7IFwKKwkgIGZpOyBcCisJICAoJChhbV9fY2QpICQkc3ViZGlyICYmICQoTUFLRSkgJChBTV9NQUtFRkxBR1MpICQkbG9jYWxfdGFyZ2V0KSBcCisJICB8fCBldmFsICQkZmFpbGNvbTsgXAorCWRvbmU7IFwKKwlpZiB0ZXN0ICIkJGRvdF9zZWVuIiA9ICJubyI7IHRoZW4gXAorCSAgJChNQUtFKSAkKEFNX01BS0VGTEFHUykgIiQkdGFyZ2V0LWFtIiB8fCBleGl0IDE7IFwKKwlmaTsgdGVzdCAteiAiJCRmYWlsIgorCiskKFJFQ1VSU0lWRV9DTEVBTl9UQVJHRVRTKToKKwlAZmFpbD0gZmFpbGNvbT0nZXhpdCAxJzsgXAorCWZvciBmIGluIHggJCRNQUtFRkxBR1M7IGRvIFwKKwkgIGNhc2UgJCRmIGluIFwKKwkgICAgKj0qIHwgLS1bIWtdKik7OyBcCisJICAgICprKikgZmFpbGNvbT0nZmFpbD15ZXMnOzsgXAorCSAgZXNhYzsgXAorCWRvbmU7IFwKKwlkb3Rfc2Vlbj1ubzsgXAorCWNhc2UgIiRAIiBpbiBcCisJICBkaXN0Y2xlYW4tKiB8IG1haW50YWluZXItY2xlYW4tKikgbGlzdD0nJChESVNUX1NVQkRJUlMpJyA7OyBcCisJICAqKSBsaXN0PSckKFNVQkRJUlMpJyA7OyBcCisJZXNhYzsgXAorCXJldj0nJzsgZm9yIHN1YmRpciBpbiAkJGxpc3Q7IGRvIFwKKwkgIGlmIHRlc3QgIiQkc3ViZGlyIiA9ICIuIjsgdGhlbiA6OyBlbHNlIFwKKwkgICAgcmV2PSIkJHN1YmRpciAkJHJldiI7IFwKKwkgIGZpOyBcCisJZG9uZTsgXAorCXJldj0iJCRyZXYgLiI7IFwKKwl0YXJnZXQ9YGVjaG8gJEAgfCBzZWQgcy8tcmVjdXJzaXZlLy9gOyBcCisJZm9yIHN1YmRpciBpbiAkJHJldjsgZG8gXAorCSAgZWNobyAiTWFraW5nICQkdGFyZ2V0IGluICQkc3ViZGlyIjsgXAorCSAgaWYgdGVzdCAiJCRzdWJkaXIiID0gIi4iOyB0aGVuIFwKKwkgICAgbG9jYWxfdGFyZ2V0PSIkJHRhcmdldC1hbSI7IFwKKwkgIGVsc2UgXAorCSAgICBsb2NhbF90YXJnZXQ9IiQkdGFyZ2V0IjsgXAorCSAgZmk7IFwKKwkgICgkKGFtX19jZCkgJCRzdWJkaXIgJiYgJChNQUtFKSAkKEFNX01BS0VGTEFHUykgJCRsb2NhbF90YXJnZXQpIFwKKwkgIHx8IGV2YWwgJCRmYWlsY29tOyBcCisJZG9uZSAmJiB0ZXN0IC16ICIkJGZhaWwiCit0YWdzLXJlY3Vyc2l2ZToKKwlsaXN0PSckKFNVQkRJUlMpJzsgZm9yIHN1YmRpciBpbiAkJGxpc3Q7IGRvIFwKKwkgIHRlc3QgIiQkc3ViZGlyIiA9IC4gfHwgKCQoYW1fX2NkKSAkJHN1YmRpciAmJiAkKE1BS0UpICQoQU1fTUFLRUZMQUdTKSB0YWdzKTsgXAorCWRvbmUKK2N0YWdzLXJlY3Vyc2l2ZToKKwlsaXN0PSckKFNVQkRJUlMpJzsgZm9yIHN1YmRpciBpbiAkJGxpc3Q7IGRvIFwKKwkgIHRlc3QgIiQkc3ViZGlyIiA9IC4gfHwgKCQoYW1fX2NkKSAkJHN1YmRpciAmJiAkKE1BS0UpICQoQU1fTUFLRUZMQUdTKSBjdGFncyk7IFwKKwlkb25lCisKK0lEOiAkKEhFQURFUlMpICQoU09VUkNFUykgJChMSVNQKSAkKFRBR1NfRklMRVMpCisJbGlzdD0nJChTT1VSQ0VTKSAkKEhFQURFUlMpICQoTElTUCkgJChUQUdTX0ZJTEVTKSc7IFwKKwl1bmlxdWU9YGZvciBpIGluICQkbGlzdDsgZG8gXAorCSAgICBpZiB0ZXN0IC1mICIkJGkiOyB0aGVuIGVjaG8gJCRpOyBlbHNlIGVjaG8gJChzcmNkaXIpLyQkaTsgZmk7IFwKKwkgIGRvbmUgfCBcCisJICAkKEFXSykgJ3sgZmlsZXNbJCQwXSA9IDE7IG5vbmVtcHR5ID0gMTsgfSBcCisJICAgICAgRU5EIHsgaWYgKG5vbmVtcHR5KSB7IGZvciAoaSBpbiBmaWxlcykgcHJpbnQgaTsgfTsgfSdgOyBcCisJbWtpZCAtZklEICQkdW5pcXVlCit0YWdzOiBUQUdTCisKK1RBR1M6IHRhZ3MtcmVjdXJzaXZlICQoSEVBREVSUykgJChTT1VSQ0VTKSAgJChUQUdTX0RFUEVOREVOQ0lFUykgXAorCQkkKFRBR1NfRklMRVMpICQoTElTUCkKKwlzZXQgeDsgXAorCWhlcmU9YHB3ZGA7IFwKKwlpZiAoJChFVEFHUykgLS1ldGFncy1pbmNsdWRlIC0tdmVyc2lvbikgPi9kZXYvbnVsbCAyPiYxOyB0aGVuIFwKKwkgIGluY2x1ZGVfb3B0aW9uPS0tZXRhZ3MtaW5jbHVkZTsgXAorCSAgZW1wdHlfZml4PS47IFwKKwllbHNlIFwKKwkgIGluY2x1ZGVfb3B0aW9uPS0taW5jbHVkZTsgXAorCSAgZW1wdHlfZml4PTsgXAorCWZpOyBcCisJbGlzdD0nJChTVUJESVJTKSc7IGZvciBzdWJkaXIgaW4gJCRsaXN0OyBkbyBcCisJICBpZiB0ZXN0ICIkJHN1YmRpciIgPSAuOyB0aGVuIDo7IGVsc2UgXAorCSAgICB0ZXN0ICEgLWYgJCRzdWJkaXIvVEFHUyB8fCBcCisJICAgICAgc2V0ICIkJEAiICIkJGluY2x1ZGVfb3B0aW9uPSQkaGVyZS8kJHN1YmRpci9UQUdTIjsgXAorCSAgZmk7IFwKKwlkb25lOyBcCisJbGlzdD0nJChTT1VSQ0VTKSAkKEhFQURFUlMpICAkKExJU1ApICQoVEFHU19GSUxFUyknOyBcCisJdW5pcXVlPWBmb3IgaSBpbiAkJGxpc3Q7IGRvIFwKKwkgICAgaWYgdGVzdCAtZiAiJCRpIjsgdGhlbiBlY2hvICQkaTsgZWxzZSBlY2hvICQoc3JjZGlyKS8kJGk7IGZpOyBcCisJICBkb25lIHwgXAorCSAgJChBV0spICd7IGZpbGVzWyQkMF0gPSAxOyBub25lbXB0eSA9IDE7IH0gXAorCSAgICAgIEVORCB7IGlmIChub25lbXB0eSkgeyBmb3IgKGkgaW4gZmlsZXMpIHByaW50IGk7IH07IH0nYDsgXAorCXNoaWZ0OyBcCisJaWYgdGVzdCAteiAiJChFVEFHU19BUkdTKSQkKiQkdW5pcXVlIjsgdGhlbiA6OyBlbHNlIFwKKwkgIHRlc3QgLW4gIiQkdW5pcXVlIiB8fCB1bmlxdWU9JCRlbXB0eV9maXg7IFwKKwkgIGlmIHRlc3QgJCQjIC1ndCAwOyB0aGVuIFwKKwkgICAgJChFVEFHUykgJChFVEFHU0ZMQUdTKSAkKEFNX0VUQUdTRkxBR1MpICQoRVRBR1NfQVJHUykgXAorCSAgICAgICIkJEAiICQkdW5pcXVlOyBcCisJICBlbHNlIFwKKwkgICAgJChFVEFHUykgJChFVEFHU0ZMQUdTKSAkKEFNX0VUQUdTRkxBR1MpICQoRVRBR1NfQVJHUykgXAorCSAgICAgICQkdW5pcXVlOyBcCisJICBmaTsgXAorCWZpCitjdGFnczogQ1RBR1MKK0NUQUdTOiBjdGFncy1yZWN1cnNpdmUgJChIRUFERVJTKSAkKFNPVVJDRVMpICAkKFRBR1NfREVQRU5ERU5DSUVTKSBcCisJCSQoVEFHU19GSUxFUykgJChMSVNQKQorCWxpc3Q9JyQoU09VUkNFUykgJChIRUFERVJTKSAgJChMSVNQKSAkKFRBR1NfRklMRVMpJzsgXAorCXVuaXF1ZT1gZm9yIGkgaW4gJCRsaXN0OyBkbyBcCisJICAgIGlmIHRlc3QgLWYgIiQkaSI7IHRoZW4gZWNobyAkJGk7IGVsc2UgZWNobyAkKHNyY2RpcikvJCRpOyBmaTsgXAorCSAgZG9uZSB8IFwKKwkgICQoQVdLKSAneyBmaWxlc1skJDBdID0gMTsgbm9uZW1wdHkgPSAxOyB9IFwKKwkgICAgICBFTkQgeyBpZiAobm9uZW1wdHkpIHsgZm9yIChpIGluIGZpbGVzKSBwcmludCBpOyB9OyB9J2A7IFwKKwl0ZXN0IC16ICIkKENUQUdTX0FSR1MpJCR1bmlxdWUiIFwKKwkgIHx8ICQoQ1RBR1MpICQoQ1RBR1NGTEFHUykgJChBTV9DVEFHU0ZMQUdTKSAkKENUQUdTX0FSR1MpIFwKKwkgICAgICQkdW5pcXVlCisKK0dUQUdTOgorCWhlcmU9YCQoYW1fX2NkKSAkKHRvcF9idWlsZGRpcikgJiYgcHdkYCBcCisJICAmJiAkKGFtX19jZCkgJCh0b3Bfc3JjZGlyKSBcCisJICAmJiBndGFncyAtaSAkKEdUQUdTX0FSR1MpICIkJGhlcmUiCisKK2Rpc3RjbGVhbi10YWdzOgorCS1ybSAtZiBUQUdTIElEIEdUQUdTIEdSVEFHUyBHU1lNUyBHUEFUSCB0YWdzCisKK2Rpc3RkaXI6ICQoRElTVEZJTEVTKQorCUBzcmNkaXJzdHJpcD1gZWNobyAiJChzcmNkaXIpIiB8IHNlZCAncy9bXS5bXiQkXFwqXS9cXFxcJi9nJ2A7IFwKKwl0b3BzcmNkaXJzdHJpcD1gZWNobyAiJCh0b3Bfc3JjZGlyKSIgfCBzZWQgJ3MvW10uW14kJFxcKl0vXFxcXCYvZydgOyBcCisJbGlzdD0nJChESVNURklMRVMpJzsgXAorCSAgZGlzdF9maWxlcz1gZm9yIGZpbGUgaW4gJCRsaXN0OyBkbyBlY2hvICQkZmlsZTsgZG9uZSB8IFwKKwkgIHNlZCAtZSAic3xeJCRzcmNkaXJzdHJpcC98fDt0IiBcCisJICAgICAgLWUgInN8XiQkdG9wc3JjZGlyc3RyaXAvfCQodG9wX2J1aWxkZGlyKS98O3QiYDsgXAorCWNhc2UgJCRkaXN0X2ZpbGVzIGluIFwKKwkgICovKikgJChNS0RJUl9QKSBgZWNobyAiJCRkaXN0X2ZpbGVzIiB8IFwKKwkJCSAgIHNlZCAnL1wvLyFkO3N8XnwkKGRpc3RkaXIpL3w7cywvW14vXSokJCwsJyB8IFwKKwkJCSAgIHNvcnQgLXVgIDs7IFwKKwllc2FjOyBcCisJZm9yIGZpbGUgaW4gJCRkaXN0X2ZpbGVzOyBkbyBcCisJICBpZiB0ZXN0IC1mICQkZmlsZSB8fCB0ZXN0IC1kICQkZmlsZTsgdGhlbiBkPS47IGVsc2UgZD0kKHNyY2Rpcik7IGZpOyBcCisJICBpZiB0ZXN0IC1kICQkZC8kJGZpbGU7IHRoZW4gXAorCSAgICBkaXI9YGVjaG8gIi8kJGZpbGUiIHwgc2VkIC1lICdzLC9bXi9dKiQkLCwnYDsgXAorCSAgICBpZiB0ZXN0IC1kICIkKGRpc3RkaXIpLyQkZmlsZSI7IHRoZW4gXAorCSAgICAgIGZpbmQgIiQoZGlzdGRpcikvJCRmaWxlIiAtdHlwZSBkICEgLXBlcm0gLTcwMCAtZXhlYyBjaG1vZCB1K3J3eCB7fSBcOzsgXAorCSAgICBmaTsgXAorCSAgICBpZiB0ZXN0IC1kICQoc3JjZGlyKS8kJGZpbGUgJiYgdGVzdCAkJGQgIT0gJChzcmNkaXIpOyB0aGVuIFwKKwkgICAgICBjcCAtZnBSICQoc3JjZGlyKS8kJGZpbGUgIiQoZGlzdGRpcikkJGRpciIgfHwgZXhpdCAxOyBcCisJICAgICAgZmluZCAiJChkaXN0ZGlyKS8kJGZpbGUiIC10eXBlIGQgISAtcGVybSAtNzAwIC1leGVjIGNobW9kIHUrcnd4IHt9IFw7OyBcCisJICAgIGZpOyBcCisJICAgIGNwIC1mcFIgJCRkLyQkZmlsZSAiJChkaXN0ZGlyKSQkZGlyIiB8fCBleGl0IDE7IFwKKwkgIGVsc2UgXAorCSAgICB0ZXN0IC1mICIkKGRpc3RkaXIpLyQkZmlsZSIgXAorCSAgICB8fCBjcCAtcCAkJGQvJCRmaWxlICIkKGRpc3RkaXIpLyQkZmlsZSIgXAorCSAgICB8fCBleGl0IDE7IFwKKwkgIGZpOyBcCisJZG9uZQorCUBsaXN0PSckKERJU1RfU1VCRElSUyknOyBmb3Igc3ViZGlyIGluICQkbGlzdDsgZG8gXAorCSAgaWYgdGVzdCAiJCRzdWJkaXIiID0gLjsgdGhlbiA6OyBlbHNlIFwKKwkgICAgdGVzdCAtZCAiJChkaXN0ZGlyKS8kJHN1YmRpciIgXAorCSAgICB8fCAkKE1LRElSX1ApICIkKGRpc3RkaXIpLyQkc3ViZGlyIiBcCisJICAgIHx8IGV4aXQgMTsgXAorCSAgZmk7IFwKKwlkb25lCisJQGxpc3Q9JyQoRElTVF9TVUJESVJTKSc7IGZvciBzdWJkaXIgaW4gJCRsaXN0OyBkbyBcCisJICBpZiB0ZXN0ICIkJHN1YmRpciIgPSAuOyB0aGVuIDo7IGVsc2UgXAorCSAgICBkaXIxPSQkc3ViZGlyOyBkaXIyPSIkKGRpc3RkaXIpLyQkc3ViZGlyIjsgXAorCSAgICAkKGFtX19yZWxhdGl2aXplKTsgXAorCSAgICBuZXdfZGlzdGRpcj0kJHJlbGRpcjsgXAorCSAgICBkaXIxPSQkc3ViZGlyOyBkaXIyPSIkKHRvcF9kaXN0ZGlyKSI7IFwKKwkgICAgJChhbV9fcmVsYXRpdml6ZSk7IFwKKwkgICAgbmV3X3RvcF9kaXN0ZGlyPSQkcmVsZGlyOyBcCisJICAgIGVjaG8gIiAoY2QgJCRzdWJkaXIgJiYgJChNQUtFKSAkKEFNX01BS0VGTEFHUykgdG9wX2Rpc3RkaXI9IiQkbmV3X3RvcF9kaXN0ZGlyIiBkaXN0ZGlyPSIkJG5ld19kaXN0ZGlyIiBcXCI7IFwKKwkgICAgZWNobyAiICAgICBhbV9fcmVtb3ZlX2Rpc3RkaXI9OiBhbV9fc2tpcF9sZW5ndGhfY2hlY2s9OiBhbV9fc2tpcF9tb2RlX2ZpeD06IGRpc3RkaXIpIjsgXAorCSAgICAoJChhbV9fY2QpICQkc3ViZGlyICYmIFwKKwkgICAgICAkKE1BS0UpICQoQU1fTUFLRUZMQUdTKSBcCisJICAgICAgICB0b3BfZGlzdGRpcj0iJCRuZXdfdG9wX2Rpc3RkaXIiIFwKKwkgICAgICAgIGRpc3RkaXI9IiQkbmV3X2Rpc3RkaXIiIFwKKwkJYW1fX3JlbW92ZV9kaXN0ZGlyPTogXAorCQlhbV9fc2tpcF9sZW5ndGhfY2hlY2s9OiBcCisJCWFtX19za2lwX21vZGVfZml4PTogXAorCSAgICAgICAgZGlzdGRpcikgXAorCSAgICAgIHx8IGV4aXQgMTsgXAorCSAgZmk7IFwKKwlkb25lCitjaGVjay1hbTogYWxsLWFtCitjaGVjazogY2hlY2stcmVjdXJzaXZlCithbGwtYW06IE1ha2VmaWxlICQoTElCUkFSSUVTKSAkKERBVEEpICQoSEVBREVSUykKK2luc3RhbGxkaXJzOiBpbnN0YWxsZGlycy1yZWN1cnNpdmUKK2luc3RhbGxkaXJzLWFtOgorCWZvciBkaXIgaW4gIiQoREVTVERJUikkKGxpYmRpcikiICIkKERFU1RESVIpJChwa2djb25maWdkaXIpIiAiJChERVNURElSKSQocGtnaW5jbHVkZWRpcikiOyBkbyBcCisJICB0ZXN0IC16ICIkJGRpciIgfHwgJChNS0RJUl9QKSAiJCRkaXIiOyBcCisJZG9uZQoraW5zdGFsbDogaW5zdGFsbC1yZWN1cnNpdmUKK2luc3RhbGwtZXhlYzogaW5zdGFsbC1leGVjLXJlY3Vyc2l2ZQoraW5zdGFsbC1kYXRhOiBpbnN0YWxsLWRhdGEtcmVjdXJzaXZlCit1bmluc3RhbGw6IHVuaW5zdGFsbC1yZWN1cnNpdmUKKworaW5zdGFsbC1hbTogYWxsLWFtCisJQCQoTUFLRSkgJChBTV9NQUtFRkxBR1MpIGluc3RhbGwtZXhlYy1hbSBpbnN0YWxsLWRhdGEtYW0KKworaW5zdGFsbGNoZWNrOiBpbnN0YWxsY2hlY2stcmVjdXJzaXZlCitpbnN0YWxsLXN0cmlwOgorCSQoTUFLRSkgJChBTV9NQUtFRkxBR1MpIElOU1RBTExfUFJPR1JBTT0iJChJTlNUQUxMX1NUUklQX1BST0dSQU0pIiBcCisJICBpbnN0YWxsX3NoX1BST0dSQU09IiQoSU5TVEFMTF9TVFJJUF9QUk9HUkFNKSIgSU5TVEFMTF9TVFJJUF9GTEFHPS1zIFwKKwkgIGB0ZXN0IC16ICckKFNUUklQKScgfHwgXAorCSAgICBlY2hvICJJTlNUQUxMX1BST0dSQU1fRU5WPVNUUklQUFJPRz0nJChTVFJJUCknImAgaW5zdGFsbAorbW9zdGx5Y2xlYW4tZ2VuZXJpYzoKKworY2xlYW4tZ2VuZXJpYzoKKworZGlzdGNsZWFuLWdlbmVyaWM6CisJLXRlc3QgLXogIiQoQ09ORklHX0NMRUFOX0ZJTEVTKSIgfHwgcm0gLWYgJChDT05GSUdfQ0xFQU5fRklMRVMpCisJLXRlc3QgLiA9ICIkKHNyY2RpcikiIHx8IHRlc3QgLXogIiQoQ09ORklHX0NMRUFOX1ZQQVRIX0ZJTEVTKSIgfHwgcm0gLWYgJChDT05GSUdfQ0xFQU5fVlBBVEhfRklMRVMpCisKK21haW50YWluZXItY2xlYW4tZ2VuZXJpYzoKKwlAZWNobyAiVGhpcyBjb21tYW5kIGlzIGludGVuZGVkIGZvciBtYWludGFpbmVycyB0byB1c2UiCisJQGVjaG8gIml0IGRlbGV0ZXMgZmlsZXMgdGhhdCBtYXkgcmVxdWlyZSBzcGVjaWFsIHRvb2xzIHRvIHJlYnVpbGQuIgorCS1ybSAtZiB0cmlnZGVmZXJyZWQuYworY2xlYW46IGNsZWFuLXJlY3Vyc2l2ZQorCitjbGVhbi1hbTogY2xlYW4tZ2VuZXJpYyBjbGVhbi1saWJMSUJSQVJJRVMgbW9zdGx5Y2xlYW4tYW0KKworZGlzdGNsZWFuOiBkaXN0Y2xlYW4tcmVjdXJzaXZlCisJLXJtIC1yZiAuLyQoREVQRElSKQorCS1ybSAtZiBNYWtlZmlsZQorZGlzdGNsZWFuLWFtOiBjbGVhbi1hbSBkaXN0Y2xlYW4tY29tcGlsZSBkaXN0Y2xlYW4tZ2VuZXJpYyBcCisJZGlzdGNsZWFuLXRhZ3MKKworZHZpOiBkdmktcmVjdXJzaXZlCisKK2R2aS1hbToKKworaHRtbDogaHRtbC1yZWN1cnNpdmUKKworaHRtbC1hbToKKworaW5mbzogaW5mby1yZWN1cnNpdmUKKworaW5mby1hbToKKworaW5zdGFsbC1kYXRhLWFtOiBpbnN0YWxsLXBrZ2NvbmZpZ0RBVEEgaW5zdGFsbC1wa2dpbmNsdWRlSEVBREVSUworCitpbnN0YWxsLWR2aTogaW5zdGFsbC1kdmktcmVjdXJzaXZlCisKK2luc3RhbGwtZHZpLWFtOgorCitpbnN0YWxsLWV4ZWMtYW06IGluc3RhbGwtbGliTElCUkFSSUVTCisKK2luc3RhbGwtaHRtbDogaW5zdGFsbC1odG1sLXJlY3Vyc2l2ZQorCitpbnN0YWxsLWh0bWwtYW06CisKK2luc3RhbGwtaW5mbzogaW5zdGFsbC1pbmZvLXJlY3Vyc2l2ZQorCitpbnN0YWxsLWluZm8tYW06CisKK2luc3RhbGwtbWFuOgorCitpbnN0YWxsLXBkZjogaW5zdGFsbC1wZGYtcmVjdXJzaXZlCisKK2luc3RhbGwtcGRmLWFtOgorCitpbnN0YWxsLXBzOiBpbnN0YWxsLXBzLXJlY3Vyc2l2ZQorCitpbnN0YWxsLXBzLWFtOgorCitpbnN0YWxsY2hlY2stYW06CisKK21haW50YWluZXItY2xlYW46IG1haW50YWluZXItY2xlYW4tcmVjdXJzaXZlCisJLXJtIC1yZiAuLyQoREVQRElSKQorCS1ybSAtZiBNYWtlZmlsZQorbWFpbnRhaW5lci1jbGVhbi1hbTogZGlzdGNsZWFuLWFtIG1haW50YWluZXItY2xlYW4tZ2VuZXJpYworCittb3N0bHljbGVhbjogbW9zdGx5Y2xlYW4tcmVjdXJzaXZlCisKK21vc3RseWNsZWFuLWFtOiBtb3N0bHljbGVhbi1jb21waWxlIG1vc3RseWNsZWFuLWdlbmVyaWMKKworcGRmOiBwZGYtcmVjdXJzaXZlCisKK3BkZi1hbToKKworcHM6IHBzLXJlY3Vyc2l2ZQorCitwcy1hbToKKwordW5pbnN0YWxsLWFtOiB1bmluc3RhbGwtbGliTElCUkFSSUVTIHVuaW5zdGFsbC1wa2djb25maWdEQVRBIFwKKwl1bmluc3RhbGwtcGtnaW5jbHVkZUhFQURFUlMKKworLk1BS0U6ICQoUkVDVVJTSVZFX0NMRUFOX1RBUkdFVFMpICQoUkVDVVJTSVZFX1RBUkdFVFMpIGN0YWdzLXJlY3Vyc2l2ZSBcCisJaW5zdGFsbC1hbSBpbnN0YWxsLXN0cmlwIHRhZ3MtcmVjdXJzaXZlCisKKy5QSE9OWTogJChSRUNVUlNJVkVfQ0xFQU5fVEFSR0VUUykgJChSRUNVUlNJVkVfVEFSR0VUUykgQ1RBR1MgR1RBR1MgXAorCWFsbCBhbGwtYW0gY2hlY2sgY2hlY2stYW0gY2xlYW4gY2xlYW4tZ2VuZXJpYyBcCisJY2xlYW4tbGliTElCUkFSSUVTIGN0YWdzIGN0YWdzLXJlY3Vyc2l2ZSBkaXN0Y2xlYW4gXAorCWRpc3RjbGVhbi1jb21waWxlIGRpc3RjbGVhbi1nZW5lcmljIGRpc3RjbGVhbi10YWdzIGRpc3RkaXIgZHZpIFwKKwlkdmktYW0gaHRtbCBodG1sLWFtIGluZm8gaW5mby1hbSBpbnN0YWxsIGluc3RhbGwtYW0gXAorCWluc3RhbGwtZGF0YSBpbnN0YWxsLWRhdGEtYW0gaW5zdGFsbC1kdmkgaW5zdGFsbC1kdmktYW0gXAorCWluc3RhbGwtZXhlYyBpbnN0YWxsLWV4ZWMtYW0gaW5zdGFsbC1odG1sIGluc3RhbGwtaHRtbC1hbSBcCisJaW5zdGFsbC1pbmZvIGluc3RhbGwtaW5mby1hbSBpbnN0YWxsLWxpYkxJQlJBUklFUyBpbnN0YWxsLW1hbiBcCisJaW5zdGFsbC1wZGYgaW5zdGFsbC1wZGYtYW0gaW5zdGFsbC1wa2djb25maWdEQVRBIFwKKwlpbnN0YWxsLXBrZ2luY2x1ZGVIRUFERVJTIGluc3RhbGwtcHMgaW5zdGFsbC1wcy1hbSBcCisJaW5zdGFsbC1zdHJpcCBpbnN0YWxsY2hlY2sgaW5zdGFsbGNoZWNrLWFtIGluc3RhbGxkaXJzIFwKKwlpbnN0YWxsZGlycy1hbSBtYWludGFpbmVyLWNsZWFuIG1haW50YWluZXItY2xlYW4tZ2VuZXJpYyBcCisJbW9zdGx5Y2xlYW4gbW9zdGx5Y2xlYW4tY29tcGlsZSBtb3N0bHljbGVhbi1nZW5lcmljIHBkZiBwZGYtYW0gXAorCXBzIHBzLWFtIHRhZ3MgdGFncy1yZWN1cnNpdmUgdW5pbnN0YWxsIHVuaW5zdGFsbC1hbSBcCisJdW5pbnN0YWxsLWxpYkxJQlJBUklFUyB1bmluc3RhbGwtcGtnY29uZmlnREFUQSBcCisJdW5pbnN0YWxsLXBrZ2luY2x1ZGVIRUFERVJTCisKKworIyBUZWxsIHZlcnNpb25zIFszLjU5LDMuNjMpIG9mIEdOVSBtYWtlIHRvIG5vdCBleHBvcnQgYWxsIHZhcmlhYmxlcy4KKyMgT3RoZXJ3aXNlIGEgc3lzdGVtIGxpbWl0IChmb3IgU3lzViBhdCBsZWFzdCkgbWF5IGJlIGV4Y2VlZGVkLgorLk5PRVhQT1JUOgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9hci5jIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9hci5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmVjMmNkODUKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL2FyLmMKQEAgLTAsMCArMSwxMzUgQEAKKy8qCisgKiBsaWJkcGtnIC0gRGViaWFuIHBhY2thZ2luZyBzdWl0ZSBsaWJyYXJ5IHJvdXRpbmVzCisgKiBhci5jIC0gcHJpbWl0aXZlcyBmb3IgYXIgaGFuZGxpbmcKKyAqCisgKiBDb3B5cmlnaHQgwqkgMjAxMCBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CisgKgorICogVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisgKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAqIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorICovCisKKyNpbmNsdWRlIDxjb25maWcuaD4KKyNpbmNsdWRlIDxjb21wYXQuaD4KKworI2luY2x1ZGUgPHN5cy90eXBlcy5oPgorI2luY2x1ZGUgPHN5cy9zdGF0Lmg+CisKKyNpbmNsdWRlIDx0aW1lLmg+CisjaW5jbHVkZSA8c3RkaW50Lmg+CisjaW5jbHVkZSA8dW5pc3RkLmg+CisKKyNpbmNsdWRlIDxkcGtnL2kxOG4uaD4KKyNpbmNsdWRlIDxkcGtnL2Rwa2cuaD4KKyNpbmNsdWRlIDxkcGtnL2ZkaW8uaD4KKyNpbmNsdWRlIDxkcGtnL2J1ZmZlci5oPgorI2luY2x1ZGUgPGRwa2cvYXIuaD4KKwordm9pZAorZHBrZ19hcl9ub3JtYWxpemVfbmFtZShzdHJ1Y3QgYXJfaGRyICphcmgpCit7CisJY2hhciAqbmFtZSA9IGFyaC0+YXJfbmFtZTsKKwlpbnQgaTsKKworCS8qIFJlbW92ZSB0cmFpbGluZyBzcGFjZXMgZnJvbSB0aGUgbWVtYmVyIG5hbWUuICovCisJZm9yIChpID0gc2l6ZW9mKGFyaC0+YXJfbmFtZSkgLSAxOyBpID49IDAgJiYgbmFtZVtpXSA9PSAnICc7IGktLSkKKwkJbmFtZVtpXSA9ICdcMCc7CisKKwkvKiBSZW1vdmUgb3B0aW9uYWwgc2xhc2ggdGVybWluYXRvciAob24gR05VLXN0eWxlIGFyY2hpdmVzKS4gKi8KKwlpZiAobmFtZVtpXSA9PSAnLycpCisJCW5hbWVbaV0gPSAnXDAnOworfQorCitvZmZfdAorZHBrZ19hcl9tZW1iZXJfZ2V0X3NpemUoY29uc3QgY2hhciAqYXJfbmFtZSwgc3RydWN0IGFyX2hkciAqYXJoKQoreworCWNvbnN0IGNoYXIgKnN0ciA9IGFyaC0+YXJfc2l6ZTsKKwlpbnQgbGVuID0gc2l6ZW9mKGFyaC0+YXJfc2l6ZSk7CisJb2ZmX3Qgc2l6ZSA9IDA7CisKKwl3aGlsZSAobGVuICYmICpzdHIgPT0gJyAnKQorCQlzdHIrKywgbGVuLS07CisKKwl3aGlsZSAobGVuLS0pIHsKKwkJaWYgKCpzdHIgPT0gJyAnKQorCQkJYnJlYWs7CisJCWlmICgqc3RyIDwgJzAnIHx8ICpzdHIgPiAnOScpCisJCQlvaHNoaXQoXygiaW52YWxpZCBjaGFyYWN0ZXIgJyVjJyBpbiBhcmNoaXZlICclLjI1MHMnICIKKwkJCSAgICAgICAgICJtZW1iZXIgJyUuMTZzJyBzaXplIiksCisJCQkgICAgICAgKnN0ciwgYXJoLT5hcl9uYW1lLCBhcl9uYW1lKTsKKworCQlzaXplICo9IDEwOworCQlzaXplICs9ICpzdHIrKyAtICcwJzsKKwl9CisKKwlyZXR1cm4gc2l6ZTsKK30KKwordm9pZAorZHBrZ19hcl9wdXRfbWFnaWMoY29uc3QgY2hhciAqYXJfbmFtZSwgaW50IGFyX2ZkKQoreworCWlmIChmZF93cml0ZShhcl9mZCwgRFBLR19BUl9NQUdJQywgc3RybGVuKERQS0dfQVJfTUFHSUMpKSA8IDApCisJCW9oc2hpdGUoXygidW5hYmxlIHRvIHdyaXRlIGZpbGUgJyVzJyIpLCBhcl9uYW1lKTsKK30KKwordm9pZAorZHBrZ19hcl9tZW1iZXJfcHV0X2hlYWRlcihjb25zdCBjaGFyICphcl9uYW1lLCBpbnQgYXJfZmQsCisgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKm5hbWUsIG9mZl90IHNpemUpCit7CisJY2hhciBoZWFkZXJbc2l6ZW9mKHN0cnVjdCBhcl9oZHIpICsgMV07CisJaW50IG47CisKKwluID0gc3ByaW50ZihoZWFkZXIsICIlLTE2cyUtMTJsdTAgICAgIDAgICAgIDEwMDY0NCAgJS0xMGpkYFxuIiwKKwkgICAgICAgICAgICBuYW1lLCB0aW1lKE5VTEwpLCAoaW50bWF4X3Qpc2l6ZSk7CisJaWYgKG4gIT0gc2l6ZW9mKHN0cnVjdCBhcl9oZHIpKQorCQlvaHNoaXQoXygiZ2VuZXJhdGVkIGNvcnJ1cHQgYXIgaGVhZGVyIGZvciAnJXMnIiksIGFyX25hbWUpOworCisJaWYgKGZkX3dyaXRlKGFyX2ZkLCBoZWFkZXIsIG4pIDwgMCkKKwkJb2hzaGl0ZShfKCJ1bmFibGUgdG8gd3JpdGUgZmlsZSAnJXMnIiksIGFyX25hbWUpOworfQorCit2b2lkCitkcGtnX2FyX21lbWJlcl9wdXRfbWVtKGNvbnN0IGNoYXIgKmFyX25hbWUsIGludCBhcl9mZCwKKyAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqbmFtZSwgY29uc3Qgdm9pZCAqZGF0YSwgc2l6ZV90IHNpemUpCit7CisJZHBrZ19hcl9tZW1iZXJfcHV0X2hlYWRlcihhcl9uYW1lLCBhcl9mZCwgbmFtZSwgc2l6ZSk7CisKKwkvKiBDb3B5IGRhdGEgY29udGVudHMuICovCisJaWYgKGZkX3dyaXRlKGFyX2ZkLCBkYXRhLCBzaXplKSA8IDApCisJCW9oc2hpdGUoXygidW5hYmxlIHRvIHdyaXRlIGZpbGUgJyVzJyIpLCBhcl9uYW1lKTsKKworCWlmIChzaXplICYgMSkKKwkJaWYgKGZkX3dyaXRlKGFyX2ZkLCAiXG4iLCAxKSA8IDApCisJCQlvaHNoaXRlKF8oInVuYWJsZSB0byB3cml0ZSBmaWxlICclcyciKSwgYXJfbmFtZSk7Cit9CisKK3ZvaWQKK2Rwa2dfYXJfbWVtYmVyX3B1dF9maWxlKGNvbnN0IGNoYXIgKmFyX25hbWUsIGludCBhcl9mZCwKKyAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKm5hbWUsIGludCBmZCwgb2ZmX3Qgc2l6ZSkKK3sKKwlpZiAoc2l6ZSA8PSAwKSB7CisJCXN0cnVjdCBzdGF0IHN0OworCisJCWlmIChmc3RhdChmZCwgJnN0KSkKKwkJCW9oc2hpdGUoXygiZmFpbGVkIHRvIGZzdGF0IGFyIG1lbWJlciBmaWxlICglcykiKSwgbmFtZSk7CisJCXNpemUgPSBzdC5zdF9zaXplOworCX0KKworCWRwa2dfYXJfbWVtYmVyX3B1dF9oZWFkZXIoYXJfbmFtZSwgYXJfZmQsIG5hbWUsIHNpemUpOworCisJLyogQ29weSBkYXRhIGNvbnRlbnRzLiAqLworCWZkX2ZkX2NvcHkoZmQsIGFyX2ZkLCBzaXplLCBfKCJhciBtZW1iZXIgZmlsZSAoJXMpIiksIG5hbWUpOworCisJaWYgKHNpemUgJiAxKQorCQlpZiAoZmRfd3JpdGUoYXJfZmQsICJcbiIsIDEpIDwgMCkKKwkJCW9oc2hpdGUoXygidW5hYmxlIHRvIHdyaXRlIGZpbGUgJyVzJyIpLCBhcl9uYW1lKTsKK30KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvYXIuaCBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvYXIuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kZWNkZTA0Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9hci5oCkBAIC0wLDAgKzEsNDcgQEAKKy8qCisgKiBsaWJkcGtnIC0gRGViaWFuIHBhY2thZ2luZyBzdWl0ZSBsaWJyYXJ5IHJvdXRpbmVzCisgKiBhci5jIC0gcHJpbWl0aXZlcyBmb3IgYXIgaGFuZGxpbmcKKyAqCisgKiBDb3B5cmlnaHQgwqkgMjAxMCBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CisgKgorICogVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisgKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAqIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorICovCisKKyNpZm5kZWYgTElCRFBLR19BUl9ICisjZGVmaW5lIExJQkRQS0dfQVJfSAorCisjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CisKKyNpbmNsdWRlIDxhci5oPgorCisjaW5jbHVkZSA8ZHBrZy9tYWNyb3MuaD4KKworRFBLR19CRUdJTl9ERUNMUworCisjZGVmaW5lIERQS0dfQVJfTUFHSUMgIiE8YXJjaD5cbiIKKwordm9pZCBkcGtnX2FyX25vcm1hbGl6ZV9uYW1lKHN0cnVjdCBhcl9oZHIgKmFyaCk7CisKK3ZvaWQgZHBrZ19hcl9wdXRfbWFnaWMoY29uc3QgY2hhciAqYXJfbmFtZSwgaW50IGFyX2ZkKTsKK3ZvaWQgZHBrZ19hcl9tZW1iZXJfcHV0X2hlYWRlcihjb25zdCBjaGFyICphcl9uYW1lLCBpbnQgYXJfZmQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqbmFtZSwgb2ZmX3Qgc2l6ZSk7Cit2b2lkIGRwa2dfYXJfbWVtYmVyX3B1dF9maWxlKGNvbnN0IGNoYXIgKmFyX25hbWUsIGludCBhcl9mZCwgY29uc3QgY2hhciAqbmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IGZkLCBvZmZfdCBzaXplKTsKK3ZvaWQgZHBrZ19hcl9tZW1iZXJfcHV0X21lbShjb25zdCBjaGFyICphcl9uYW1lLCBpbnQgYXJfZmQsIGNvbnN0IGNoYXIgKm5hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgdm9pZCAqZGF0YSwgc2l6ZV90IHNpemUpOworb2ZmX3QgZHBrZ19hcl9tZW1iZXJfZ2V0X3NpemUoY29uc3QgY2hhciAqYXJfbmFtZSwgc3RydWN0IGFyX2hkciAqYXJoKTsKKworRFBLR19FTkRfREVDTFMKKworI2VuZGlmIC8qIExJQkRQS0dfQVJfSCAqLwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9idWZmZXIuYyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvYnVmZmVyLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMmQwNTNjMAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvYnVmZmVyLmMKQEAgLTAsMCArMSwzMjAgQEAKKy8qCisgKiBsaWJkcGtnIC0gRGViaWFuIHBhY2thZ2luZyBzdWl0ZSBsaWJyYXJ5IHJvdXRpbmVzCisgKiBidWZmZXIuYyAtIGJ1ZmZlciBJL08gaGFuZGxpbmcgcm91dGluZXMKKyAqCisgKiBDb3B5cmlnaHQgwqkgMTk5OSwgMjAwMCBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorICogQ29weXJpZ2h0IMKpIDIwMDAtMjAwMyBBZGFtIEhlYXRoIDxkb29naWVAZGViaWFuLm9yZz4KKyAqIENvcHlyaWdodCDCqSAyMDA4LTIwMTEgR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaW5jbHVkZSA8Y29uZmlnLmg+CisjaW5jbHVkZSA8Y29tcGF0Lmg+CisKKyNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KKworI2luY2x1ZGUgPGVycm5vLmg+CisjaW5jbHVkZSA8c3RyaW5nLmg+CisjaW5jbHVkZSA8dW5pc3RkLmg+CisjaW5jbHVkZSA8c3RkbGliLmg+CisKKyNpbmNsdWRlIDxkcGtnL2kxOG4uaD4KKyNpbmNsdWRlIDxkcGtnL2Rwa2cuaD4KKyNpbmNsdWRlIDxkcGtnL3ZhcmJ1Zi5oPgorI2luY2x1ZGUgPGRwa2cvbWQ1Lmg+CisjaW5jbHVkZSA8ZHBrZy9mZGlvLmg+CisjaW5jbHVkZSA8ZHBrZy9idWZmZXIuaD4KKworc3RydWN0IGJ1ZmZlcl9tZDVfY3R4IHsKKwlzdHJ1Y3QgTUQ1Q29udGV4dCBjdHg7CisJY2hhciAqaGFzaDsKK307CisKK3N0YXRpYyB2b2lkCitidWZmZXJfbWQ1X2luaXQoc3RydWN0IGJ1ZmZlcl9kYXRhICpkYXRhKQoreworCXN0cnVjdCBidWZmZXJfbWQ1X2N0eCAqY3R4OworCisJY3R4ID0gbV9tYWxsb2Moc2l6ZW9mKCpjdHgpKTsKKwljdHgtPmhhc2ggPSBkYXRhLT5hcmcucHRyOworCWRhdGEtPmFyZy5wdHIgPSBjdHg7CisJTUQ1SW5pdCgmY3R4LT5jdHgpOworfQorCitzdGF0aWMgb2ZmX3QKK2J1ZmZlcl9maWx0ZXJfaW5pdChzdHJ1Y3QgYnVmZmVyX2RhdGEgKmRhdGEpCit7CisJc3dpdGNoIChkYXRhLT50eXBlKSB7CisJY2FzZSBCVUZGRVJfRklMVEVSX05VTEw6CisJCWJyZWFrOworCWNhc2UgQlVGRkVSX0ZJTFRFUl9NRDU6CisJCWJ1ZmZlcl9tZDVfaW5pdChkYXRhKTsKKwkJYnJlYWs7CisJfQorCXJldHVybiAwOworfQorCitzdGF0aWMgb2ZmX3QKK2J1ZmZlcl9maWx0ZXJfdXBkYXRlKHN0cnVjdCBidWZmZXJfZGF0YSAqZmlsdGVyLCBjb25zdCB2b2lkICpidWYsIG9mZl90IGxlbmd0aCkKK3sKKwlvZmZfdCByZXQgPSBsZW5ndGg7CisKKwlzd2l0Y2ggKGZpbHRlci0+dHlwZSkgeworCWNhc2UgQlVGRkVSX0ZJTFRFUl9OVUxMOgorCQlicmVhazsKKwljYXNlIEJVRkZFUl9GSUxURVJfTUQ1OgorCQlNRDVVcGRhdGUoJigoKHN0cnVjdCBidWZmZXJfbWQ1X2N0eCAqKWZpbHRlci0+YXJnLnB0ciktPmN0eCksCisJCSAgICAgICAgICBidWYsIGxlbmd0aCk7CisJCWJyZWFrOworCWRlZmF1bHQ6CisJCWludGVybmVycigidW5rbm93biBkYXRhIHR5cGUgJyVpJyBpbiBidWZmZXJfZmlsdGVyX3VwZGF0ZSIsCisJCSAgICAgICAgICBmaWx0ZXItPnR5cGUpOworCX0KKworCXJldHVybiByZXQ7Cit9CisKK3N0YXRpYyB2b2lkCitidWZmZXJfbWQ1X2RvbmUoc3RydWN0IGJ1ZmZlcl9kYXRhICpkYXRhKQoreworCXN0cnVjdCBidWZmZXJfbWQ1X2N0eCAqY3R4OworCXVuc2lnbmVkIGNoYXIgZGlnZXN0WzE2XSwgKnAgPSBkaWdlc3Q7CisJY2hhciAqaGFzaDsKKwlpbnQgaTsKKworCWN0eCA9IChzdHJ1Y3QgYnVmZmVyX21kNV9jdHggKilkYXRhLT5hcmcucHRyOworCWhhc2ggPSBjdHgtPmhhc2g7CisJTUQ1RmluYWwoZGlnZXN0LCAmY3R4LT5jdHgpOworCWZvciAoaSA9IDA7IGkgPCAxNjsgKytpKSB7CisJCXNwcmludGYoaGFzaCwgIiUwMngiLCAqcCsrKTsKKwkJaGFzaCArPSAyOworCX0KKwkqaGFzaCA9ICdcMCc7CisJZnJlZShjdHgpOworfQorCitzdGF0aWMgb2ZmX3QKK2J1ZmZlcl9maWx0ZXJfZG9uZShzdHJ1Y3QgYnVmZmVyX2RhdGEgKmRhdGEpCit7CisJc3dpdGNoIChkYXRhLT50eXBlKSB7CisJY2FzZSBCVUZGRVJfRklMVEVSX05VTEw6CisJCWJyZWFrOworCWNhc2UgQlVGRkVSX0ZJTFRFUl9NRDU6CisJCWJ1ZmZlcl9tZDVfZG9uZShkYXRhKTsKKwkJYnJlYWs7CisJfQorCXJldHVybiAwOworfQorCitzdGF0aWMgb2ZmX3QKK2J1ZmZlcl93cml0ZShzdHJ1Y3QgYnVmZmVyX2RhdGEgKmRhdGEsIGNvbnN0IHZvaWQgKmJ1Ziwgb2ZmX3QgbGVuZ3RoKQoreworCW9mZl90IHJldCA9IGxlbmd0aDsKKworCXN3aXRjaCAoZGF0YS0+dHlwZSkgeworCWNhc2UgQlVGRkVSX1dSSVRFX1ZCVUY6CisJCXZhcmJ1Zl9hZGRfYnVmKChzdHJ1Y3QgdmFyYnVmICopZGF0YS0+YXJnLnB0ciwgYnVmLCBsZW5ndGgpOworCQlicmVhazsKKwljYXNlIEJVRkZFUl9XUklURV9GRDoKKwkJcmV0ID0gZmRfd3JpdGUoZGF0YS0+YXJnLmksIGJ1ZiwgbGVuZ3RoKTsKKwkJYnJlYWs7CisJY2FzZSBCVUZGRVJfV1JJVEVfTlVMTDoKKwkJYnJlYWs7CisJZGVmYXVsdDoKKwkJaW50ZXJuZXJyKCJ1bmtub3duIGRhdGEgdHlwZSAnJWknIGluIGJ1ZmZlcl93cml0ZSIsCisJCSAgICAgICAgICBkYXRhLT50eXBlKTsKKwl9CisKKwlyZXR1cm4gcmV0OworfQorCitzdGF0aWMgb2ZmX3QKK2J1ZmZlcl9yZWFkKHN0cnVjdCBidWZmZXJfZGF0YSAqZGF0YSwgdm9pZCAqYnVmLCBvZmZfdCBsZW5ndGgpCit7CisJb2ZmX3QgcmV0OworCisJc3dpdGNoIChkYXRhLT50eXBlKSB7CisJY2FzZSBCVUZGRVJfUkVBRF9GRDoKKwkJcmV0ID0gZmRfcmVhZChkYXRhLT5hcmcuaSwgYnVmLCBsZW5ndGgpOworCQlicmVhazsKKwlkZWZhdWx0OgorCQlpbnRlcm5lcnIoInVua25vd24gZGF0YSB0eXBlICclaScgaW4gYnVmZmVyX3JlYWRcbiIsCisJCSAgICAgICAgICBkYXRhLT50eXBlKTsKKwl9CisKKwlyZXR1cm4gcmV0OworfQorCitvZmZfdAorYnVmZmVyX2ZpbHRlcihjb25zdCB2b2lkICppbnB1dCwgdm9pZCAqb3V0cHV0LCBpbnQgdHlwZSwgb2ZmX3QgbGltaXQpCit7CisJc3RydWN0IGJ1ZmZlcl9kYXRhIGRhdGEgPSB7IC5hcmcucHRyID0gb3V0cHV0LCAudHlwZSA9IHR5cGUgfTsKKwlvZmZfdCByZXQ7CisKKwlidWZmZXJfZmlsdGVyX2luaXQoJmRhdGEpOworCXJldCA9IGJ1ZmZlcl9maWx0ZXJfdXBkYXRlKCZkYXRhLCBpbnB1dCwgbGltaXQpOworCWJ1ZmZlcl9maWx0ZXJfZG9uZSgmZGF0YSk7CisKKwlyZXR1cm4gcmV0OworfQorCitzdGF0aWMgb2ZmX3QKK2J1ZmZlcl9jb3B5KHN0cnVjdCBidWZmZXJfZGF0YSAqcmVhZF9kYXRhLAorICAgICAgICAgICAgc3RydWN0IGJ1ZmZlcl9kYXRhICpmaWx0ZXIsCisgICAgICAgICAgICBzdHJ1Y3QgYnVmZmVyX2RhdGEgKndyaXRlX2RhdGEsCisgICAgICAgICAgICBvZmZfdCBsaW1pdCwgY29uc3QgY2hhciAqZGVzYykKK3sKKwljaGFyICpidWY7CisJaW50IGJ1ZnNpemUgPSAzMjc2ODsKKwlvZmZfdCBieXRlc3JlYWQgPSAwLCBieXRlc3dyaXR0ZW4gPSAwOworCW9mZl90IHRvdGFscmVhZCA9IDAsIHRvdGFsd3JpdHRlbiA9IDA7CisKKwlpZiAoKGxpbWl0ICE9IC0xKSAmJiAobGltaXQgPCBidWZzaXplKSkKKwkJYnVmc2l6ZSA9IGxpbWl0OworCWlmIChidWZzaXplID09IDApCisJCXJldHVybiAwOworCisJYnVmID0gbV9tYWxsb2MoYnVmc2l6ZSk7CisKKwlidWZmZXJfZmlsdGVyX2luaXQoZmlsdGVyKTsKKworCXdoaWxlIChidWZzaXplID4gMCkgeworCQlieXRlc3JlYWQgPSBidWZmZXJfcmVhZChyZWFkX2RhdGEsIGJ1ZiwgYnVmc2l6ZSk7CisJCWlmIChieXRlc3JlYWQgPCAwKQorCQkJb2hzaGl0ZShfKCJmYWlsZWQgdG8gcmVhZCBvbiBidWZmZXIgY29weSBmb3IgJXMiKSwgZGVzYyk7CisJCWlmIChieXRlc3JlYWQgPT0gMCkKKwkJCWJyZWFrOworCisJCXRvdGFscmVhZCArPSBieXRlc3JlYWQ7CisKKwkJaWYgKGxpbWl0ICE9IC0xKSB7CisJCQlsaW1pdCAtPSBieXRlc3JlYWQ7CisJCQlpZiAobGltaXQgPCBidWZzaXplKQorCQkJCWJ1ZnNpemUgPSBsaW1pdDsKKwkJfQorCisJCWJ1ZmZlcl9maWx0ZXJfdXBkYXRlKGZpbHRlciwgYnVmLCBieXRlc3JlYWQpOworCisJCWJ5dGVzd3JpdHRlbiA9IGJ1ZmZlcl93cml0ZSh3cml0ZV9kYXRhLCBidWYsIGJ5dGVzcmVhZCk7CisJCWlmIChieXRlc3dyaXR0ZW4gPCAwKQorCQkJb2hzaGl0ZShfKCJmYWlsZWQgaW4gd3JpdGUgb24gYnVmZmVyIGNvcHkgZm9yICVzIiksIGRlc2MpOworCQlpZiAoYnl0ZXN3cml0dGVuID09IDApCisJCQlicmVhazsKKworCQl0b3RhbHdyaXR0ZW4gKz0gYnl0ZXN3cml0dGVuOworCX0KKworCWlmIChsaW1pdCA+IDApCisJCW9oc2hpdChfKCJzaG9ydCByZWFkIG9uIGJ1ZmZlciBjb3B5IGZvciAlcyIpLCBkZXNjKTsKKworCWJ1ZmZlcl9maWx0ZXJfZG9uZShmaWx0ZXIpOworCisJZnJlZShidWYpOworCisJcmV0dXJuIHRvdGFscmVhZDsKK30KKworb2ZmX3QKK2J1ZmZlcl9jb3B5X0ludEludChpbnQgSWluLCBpbnQgVGluLAorICAgICAgICAgICAgICAgICAgIHZvaWQgKlBmaWx0ZXIsIGludCBUZmlsdGVyLAorICAgICAgICAgICAgICAgICAgIGludCBJb3V0LCBpbnQgVG91dCwKKyAgICAgICAgICAgICAgICAgICBvZmZfdCBsaW1pdCwgY29uc3QgY2hhciAqZGVzYywgLi4uKQoreworCXZhX2xpc3QgYXJnczsKKwlzdHJ1Y3QgYnVmZmVyX2RhdGEgcmVhZF9kYXRhID0geyAudHlwZSA9IFRpbiwgLmFyZy5pID0gSWluIH07CisJc3RydWN0IGJ1ZmZlcl9kYXRhIGZpbHRlciA9IHsgLnR5cGUgPSBUZmlsdGVyLCAuYXJnLnB0ciA9IFBmaWx0ZXIgfTsKKwlzdHJ1Y3QgYnVmZmVyX2RhdGEgd3JpdGVfZGF0YSA9IHsgLnR5cGUgPSBUb3V0LCAuYXJnLmkgPSBJb3V0IH07CisJc3RydWN0IHZhcmJ1ZiB2ID0gVkFSQlVGX0lOSVQ7CisJb2ZmX3QgcmV0OworCisJdmFfc3RhcnQoYXJncywgZGVzYyk7CisJdmFyYnVmX3ZwcmludGYoJnYsIGRlc2MsIGFyZ3MpOworCXZhX2VuZChhcmdzKTsKKworCXJldCA9IGJ1ZmZlcl9jb3B5KCZyZWFkX2RhdGEsICZmaWx0ZXIsICZ3cml0ZV9kYXRhLCBsaW1pdCwgdi5idWYpOworCisJdmFyYnVmX2Rlc3Ryb3koJnYpOworCisJcmV0dXJuIHJldDsKK30KKworb2ZmX3QKK2J1ZmZlcl9jb3B5X0ludFB0cihpbnQgSWluLCBpbnQgVGluLAorICAgICAgICAgICAgICAgICAgIHZvaWQgKlBmaWx0ZXIsIGludCBUZmlsdGVyLAorICAgICAgICAgICAgICAgICAgIHZvaWQgKlBvdXQsIGludCBUb3V0LAorICAgICAgICAgICAgICAgICAgIG9mZl90IGxpbWl0LCBjb25zdCBjaGFyICpkZXNjLCAuLi4pCit7CisJdmFfbGlzdCBhcmdzOworCXN0cnVjdCBidWZmZXJfZGF0YSByZWFkX2RhdGEgPSB7IC50eXBlID0gVGluLCAuYXJnLmkgPSBJaW4gfTsKKwlzdHJ1Y3QgYnVmZmVyX2RhdGEgZmlsdGVyID0geyAudHlwZSA9IFRmaWx0ZXIsIC5hcmcucHRyID0gUGZpbHRlciB9OworCXN0cnVjdCBidWZmZXJfZGF0YSB3cml0ZV9kYXRhID0geyAudHlwZSA9IFRvdXQsIC5hcmcucHRyID0gUG91dCB9OworCXN0cnVjdCB2YXJidWYgdiA9IFZBUkJVRl9JTklUOworCW9mZl90IHJldDsKKworCXZhX3N0YXJ0KGFyZ3MsIGRlc2MpOworCXZhcmJ1Zl92cHJpbnRmKCZ2LCBkZXNjLCBhcmdzKTsKKwl2YV9lbmQoYXJncyk7CisKKwlyZXQgPSBidWZmZXJfY29weSgmcmVhZF9kYXRhLCAmZmlsdGVyLCAmd3JpdGVfZGF0YSwgbGltaXQsIHYuYnVmKTsKKworCXZhcmJ1Zl9kZXN0cm95KCZ2KTsKKworCXJldHVybiByZXQ7Cit9CisKK3N0YXRpYyBvZmZfdAorYnVmZmVyX3NraXAoc3RydWN0IGJ1ZmZlcl9kYXRhICppbnB1dCwgb2ZmX3QgbGltaXQsIGNvbnN0IGNoYXIgKmRlc2MpCit7CisJc3RydWN0IGJ1ZmZlcl9kYXRhIG91dHB1dDsKKwlzdHJ1Y3QgYnVmZmVyX2RhdGEgZmlsdGVyOworCisJc3dpdGNoIChpbnB1dC0+dHlwZSkgeworCWNhc2UgQlVGRkVSX1JFQURfRkQ6CisJCWlmIChsc2VlayhpbnB1dC0+YXJnLmksIGxpbWl0LCBTRUVLX0NVUikgIT0gLTEpCisJCQlyZXR1cm4gbGltaXQ7CisJCWlmIChlcnJubyAhPSBFU1BJUEUpCisJCQlvaHNoaXRlKF8oImZhaWxlZCB0byBzZWVrICVzIiksIGRlc2MpOworCQlicmVhazsKKwlkZWZhdWx0OgorCQlpbnRlcm5lcnIoInVua25vd24gZGF0YSB0eXBlICclaScgaW4gYnVmZmVyX3NraXBcbiIsCisJCSAgICAgICAgICBpbnB1dC0+dHlwZSk7CisJfQorCisJb3V0cHV0LnR5cGUgPSBCVUZGRVJfV1JJVEVfTlVMTDsKKwlvdXRwdXQuYXJnLnB0ciA9IE5VTEw7CisJZmlsdGVyLnR5cGUgPSBCVUZGRVJfRklMVEVSX05VTEw7CisJZmlsdGVyLmFyZy5wdHIgPSBOVUxMOworCisJcmV0dXJuIGJ1ZmZlcl9jb3B5KGlucHV0LCAmZmlsdGVyLCAmb3V0cHV0LCBsaW1pdCwgZGVzYyk7Cit9CisKK29mZl90CitidWZmZXJfc2tpcF9JbnQoaW50IEksIGludCBULCBvZmZfdCBsaW1pdCwgY29uc3QgY2hhciAqZGVzY19mbXQsIC4uLikKK3sKKwl2YV9saXN0IGFyZ3M7IFwKKwlzdHJ1Y3QgYnVmZmVyX2RhdGEgaW5wdXQgPSB7IC50eXBlID0gVCwgLmFyZy5pID0gSSB9OworCXN0cnVjdCB2YXJidWYgdiA9IFZBUkJVRl9JTklUOworCW9mZl90IHJldDsKKworCXZhX3N0YXJ0KGFyZ3MsIGRlc2NfZm10KTsKKwl2YXJidWZfdnByaW50ZigmdiwgZGVzY19mbXQsIGFyZ3MpOworCXZhX2VuZChhcmdzKTsKKworCXJldCA9IGJ1ZmZlcl9za2lwKCZpbnB1dCwgbGltaXQsIHYuYnVmKTsKKworCXZhcmJ1Zl9kZXN0cm95KCZ2KTsKKworCXJldHVybiByZXQ7Cit9CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL2J1ZmZlci5oIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9idWZmZXIuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45OGI1MTlhCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9idWZmZXIuaApAQCAtMCwwICsxLDkwIEBACisvKgorICogbGliZHBrZyAtIERlYmlhbiBwYWNrYWdpbmcgc3VpdGUgbGlicmFyeSByb3V0aW5lcworICogYnVmZmVyLmggLSBidWZmZXIgSS9PIGhhbmRsaW5nIHJvdXRpbmVzCisgKgorICogQ29weXJpZ2h0IMKpIDE5OTksIDIwMDAgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKyAqIENvcHlyaWdodCDCqSAyMDAwLTIwMDMgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisgKiBDb3B5cmlnaHQgwqkgMjAwNSBTY290dCBKYW1lcyBSZW1uYW50CisgKiBDb3B5cmlnaHQgwqkgMjAwOC0yMDExIEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworI2lmbmRlZiBMSUJEUEtHX0JVRkZFUl9ICisjZGVmaW5lIExJQkRQS0dfQlVGRkVSX0gKKworI2luY2x1ZGUgPHN5cy90eXBlcy5oPgorCisjaW5jbHVkZSA8ZHBrZy9tYWNyb3MuaD4KKworRFBLR19CRUdJTl9ERUNMUworCisjZGVmaW5lIERQS0dfQlVGRkVSX1NJWkUgNDA5NgorCisjZGVmaW5lIEJVRkZFUl9XUklURV9WQlVGCQkxCisjZGVmaW5lIEJVRkZFUl9XUklURV9GRAkJCTIKKyNkZWZpbmUgQlVGRkVSX1dSSVRFX05VTEwJCTMKKworI2RlZmluZSBCVUZGRVJfRklMVEVSX05VTEwJCTQKKyNkZWZpbmUgQlVGRkVSX0ZJTFRFUl9NRDUJCTUKKworI2RlZmluZSBCVUZGRVJfUkVBRF9GRAkJCTAKKworc3RydWN0IGJ1ZmZlcl9kYXRhIHsKKwl1bmlvbiB7CisJCXZvaWQgKnB0cjsKKwkJaW50IGk7CisJfSBhcmc7CisJaW50IHR5cGU7Cit9OworCisjIGRlZmluZSBidWZmZXJfbWQ1KGJ1ZiwgaGFzaCwgbGltaXQpIFwKKwlidWZmZXJfZmlsdGVyKGJ1ZiwgaGFzaCwgQlVGRkVSX0ZJTFRFUl9NRDUsIGxpbWl0KQorCisjIGRlZmluZSBmZF9tZDUoZmQsIGhhc2gsIGxpbWl0LCAuLi4pIFwKKwlidWZmZXJfY29weV9JbnRQdHIoZmQsIEJVRkZFUl9SRUFEX0ZELCBcCisJICAgICAgICAgICAgICAgICAgIGhhc2gsIEJVRkZFUl9GSUxURVJfTUQ1LCBcCisJICAgICAgICAgICAgICAgICAgIE5VTEwsIEJVRkZFUl9XUklURV9OVUxMLCBcCisJICAgICAgICAgICAgICAgICAgIGxpbWl0LCBfX1ZBX0FSR1NfXykKKyMgZGVmaW5lIGZkX2ZkX2NvcHkoZmQxLCBmZDIsIGxpbWl0LCAuLi4pIFwKKwlidWZmZXJfY29weV9JbnRJbnQoZmQxLCBCVUZGRVJfUkVBRF9GRCwgXAorCSAgICAgICAgICAgICAgICAgICBOVUxMLCBCVUZGRVJfRklMVEVSX05VTEwsIFwKKwkgICAgICAgICAgICAgICAgICAgZmQyLCBCVUZGRVJfV1JJVEVfRkQsIFwKKwkgICAgICAgICAgICAgICAgICAgbGltaXQsIF9fVkFfQVJHU19fKQorIyBkZWZpbmUgZmRfdmJ1Zl9jb3B5KGZkLCBidWYsIGxpbWl0LCAuLi4pIFwKKwlidWZmZXJfY29weV9JbnRQdHIoZmQsIEJVRkZFUl9SRUFEX0ZELCBcCisJICAgICAgICAgICAgICAgICAgIE5VTEwsIEJVRkZFUl9GSUxURVJfTlVMTCwgXAorCSAgICAgICAgICAgICAgICAgICBidWYsIEJVRkZFUl9XUklURV9WQlVGLCBcCisJICAgICAgICAgICAgICAgICAgIGxpbWl0LCBfX1ZBX0FSR1NfXykKKyMgZGVmaW5lIGZkX3NraXAoZmQsIGxpbWl0LCAuLi4pIFwKKwlidWZmZXJfc2tpcF9JbnQoZmQsIEJVRkZFUl9SRUFEX0ZELCBsaW1pdCwgX19WQV9BUkdTX18pCisKKworb2ZmX3QgYnVmZmVyX2NvcHlfSW50UHRyKGludCBpLCBpbnQgdHlwZUluLAorICAgICAgICAgICAgICAgICAgICAgICAgIHZvaWQgKmYsIGludCB0eXBlRmlsdGVyLAorICAgICAgICAgICAgICAgICAgICAgICAgIHZvaWQgKnAsIGludCB0eXBlT3V0LAorICAgICAgICAgICAgICAgICAgICAgICAgIG9mZl90IGxpbWl0LCBjb25zdCBjaGFyICpkZXNjLAorICAgICAgICAgICAgICAgICAgICAgICAgIC4uLikgRFBLR19BVFRSX1BSSU5URig4KTsKK29mZl90IGJ1ZmZlcl9jb3B5X0ludEludChpbnQgaTEsIGludCB0eXBlSW4sCisgICAgICAgICAgICAgICAgICAgICAgICAgdm9pZCAqZiwgaW50IHR5cGVGaWx0ZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgaW50IGkyLCBpbnQgdHlwZU91dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICBvZmZfdCBsaW1pdCwgY29uc3QgY2hhciAqZGVzYywKKyAgICAgICAgICAgICAgICAgICAgICAgICAuLi4pIERQS0dfQVRUUl9QUklOVEYoOCk7CitvZmZfdCBidWZmZXJfc2tpcF9JbnQoaW50IEksIGludCBULCBvZmZfdCBsaW1pdCwgY29uc3QgY2hhciAqZGVzY19mbXQsIC4uLikKKwlEUEtHX0FUVFJfUFJJTlRGKDQpOworb2ZmX3QgYnVmZmVyX2ZpbHRlcihjb25zdCB2b2lkICpidWYsIHZvaWQgKmhhc2gsIGludCB0eXBlRmlsdGVyLCBvZmZfdCBsZW5ndGgpOworCitEUEtHX0VORF9ERUNMUworCisjZW5kaWYgLyogTElCRFBLR19CVUZGRVJfSCAqLwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9jbGVhbnVwLmMgYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL2NsZWFudXAuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lZGYyYjhmCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9jbGVhbnVwLmMKQEAgLTAsMCArMSw2MSBAQAorLyoKKyAqIGxpYmRwa2cgLSBEZWJpYW4gcGFja2FnaW5nIHN1aXRlIGxpYnJhcnkgcm91dGluZXMKKyAqIGNsZWFudXAuYyAtIGNsZWFudXAgZnVuY3Rpb25zLCB1c2VkIHdoZW4gd2UgbmVlZCB0byB1bndpbmQKKyAqCisgKiBDb3B5cmlnaHQgwqkgMTk5NSBJYW4gSmFja3NvbiA8aWFuQGNoaWFyay5ncmVlbmVuZC5vcmcudWs+CisgKgorICogVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisgKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAqIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorICovCisKKyNpbmNsdWRlIDxjb25maWcuaD4KKyNpbmNsdWRlIDxjb21wYXQuaD4KKworI2luY2x1ZGUgPGRpcmVudC5oPgorI2luY2x1ZGUgPHVuaXN0ZC5oPgorI2luY2x1ZGUgPHN0ZGlvLmg+CisKKyNpbmNsdWRlIDxkcGtnL2Rwa2cuaD4KKwordm9pZAorY3VfY2xvc2VwaXBlKGludCBhcmdjLCB2b2lkICoqYXJndikKK3sKKwlpbnQgKnAxID0gKGludCAqKWFyZ3ZbMF07CisKKwljbG9zZShwMVswXSk7CisJY2xvc2UocDFbMV0pOworfQorCit2b2lkCitjdV9jbG9zZXN0cmVhbShpbnQgYXJnYywgdm9pZCAqKmFyZ3YpCit7CisJRklMRSAqZiA9IChGSUxFICopKGFyZ3ZbMF0pOworCisJZmNsb3NlKGYpOworfQorCit2b2lkCitjdV9jbG9zZWRpcihpbnQgYXJnYywgdm9pZCAqKmFyZ3YpCit7CisJRElSICpkID0gKERJUiAqKShhcmd2WzBdKTsKKworCWNsb3NlZGlyKGQpOworfQorCit2b2lkCitjdV9jbG9zZWZkKGludCBhcmdjLCB2b2lkICoqYXJndikKK3sKKwlpbnQgaXAgPSAqKGludCAqKWFyZ3ZbMF07CisKKwljbG9zZShpcCk7Cit9CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL2NvbW1hbmQuYyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvY29tbWFuZC5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjM3NGUzYTcKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL2NvbW1hbmQuYwpAQCAtMCwwICsxLDIwNSBAQAorLyoKKyAqIGxpYmRwa2cgLSBEZWJpYW4gcGFja2FnaW5nIHN1aXRlIGxpYnJhcnkgcm91dGluZXMKKyAqIGNvbW1hbmQuYyAtIGNvbW1hbmQgZXhlY3V0aW9uIHN1cHBvcnQKKyAqCisgKiBDb3B5cmlnaHQgwqkgMjAxMC0yMDExIEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworI2luY2x1ZGUgPGNvbmZpZy5oPgorI2luY2x1ZGUgPGNvbXBhdC5oPgorCisjaW5jbHVkZSA8c3RkYXJnLmg+CisjaW5jbHVkZSA8c3RkbGliLmg+CisjaW5jbHVkZSA8dW5pc3RkLmg+CisKKyNpbmNsdWRlIDxkcGtnL2Rwa2cuaD4KKyNpbmNsdWRlIDxkcGtnL2kxOG4uaD4KKyNpbmNsdWRlIDxkcGtnL3BhdGguaD4KKyNpbmNsdWRlIDxkcGtnL2NvbW1hbmQuaD4KKworLyoqCisgKiBJbml0aWFsaXplIGEgY29tbWFuZCBzdHJ1Y3R1cmUuCisgKgorICogSWYgbmFtZSBpcyBOVUxMLCB0aGVuIHRoZSBsYXN0IGNvbXBvbmVudCBvZiB0aGUgZmlsZW5hbWUgcGF0aCB3aWxsIGJlCisgKiB1c2VkIHRvIGluaXRpYWxpemUgdGhlIG5hbWUgbWVtYmVyLgorICoKKyAqIEBwYXJhbSBjbWQgVGhlIGNvbW1hbmQgc3RydWN0dXJlIHRvIGluaXRpYWxpemUuCisgKiBAcGFyYW0gZmlsZW5hbWUgVGhlIGZpbGVuYW1lIG9mIHRoZSBjb21tYW5kIHRvIGV4ZWN1dGUuCisgKiBAcGFyYW0gbmFtZSBUaGUgZGVzY3JpcHRpb24gb2YgdGhlIGNvbW1hbmQgdG8gZXhlY3V0ZS4KKyAqLwordm9pZAorY29tbWFuZF9pbml0KHN0cnVjdCBjb21tYW5kICpjbWQsIGNvbnN0IGNoYXIgKmZpbGVuYW1lLCBjb25zdCBjaGFyICpuYW1lKQoreworCWNtZC0+ZmlsZW5hbWUgPSBmaWxlbmFtZTsKKwlpZiAobmFtZSA9PSBOVUxMKQorCQljbWQtPm5hbWUgPSBwYXRoX2Jhc2VuYW1lKGZpbGVuYW1lKTsKKwllbHNlCisJCWNtZC0+bmFtZSA9IG5hbWU7CisJY21kLT5hcmdjID0gMDsKKwljbWQtPmFyZ3Zfc2l6ZSA9IDEwOworCWNtZC0+YXJndiA9IG1fbWFsbG9jKGNtZC0+YXJndl9zaXplICogc2l6ZW9mKGNvbnN0IGNoYXIgKikpOworCWNtZC0+YXJndlswXSA9IE5VTEw7Cit9CisKKy8qKgorICogRGVzdHJveSBhIGNvbW1hbmQgc3RydWN0dXJlLgorICoKKyAqIEZyZWUgdGhlIG1lbWJlcnMgbWFuYWdlZCBieSB0aGUgY29tbWFuZCBmdW5jdGlvbnMgKGkuZS4gdGhlIGFyZ3YgcG9pbnRlcgorICogYXJyYXkpLCBhbmQgemVybyBhbGwgbWVtYmVycyBvZiBhIGNvbW1hbmQgc3RydWN0dXJlLgorICoKKyAqIEBwYXJhbSBjbWQgVGhlIGNvbW1hbmQgc3RydWN0dXJlIHRvIGZyZWUuCisgKi8KK3ZvaWQKK2NvbW1hbmRfZGVzdHJveShzdHJ1Y3QgY29tbWFuZCAqY21kKQoreworCWNtZC0+ZmlsZW5hbWUgPSBOVUxMOworCWNtZC0+bmFtZSA9IE5VTEw7CisJY21kLT5hcmdjID0gMDsKKwljbWQtPmFyZ3Zfc2l6ZSA9IDA7CisJZnJlZShjbWQtPmFyZ3YpOworCWNtZC0+YXJndiA9IE5VTEw7Cit9CisKK3N0YXRpYyB2b2lkCitjb21tYW5kX2dyb3dfYXJndihzdHJ1Y3QgY29tbWFuZCAqY21kLCBpbnQgbmVlZCkKK3sKKwkvKiBDaGVjayBpZiB3ZSBhbHJlYWR5IGhhdmUgZW5vdWdoIHJvb20uICovCisJaWYgKChjbWQtPmFyZ3Zfc2l6ZSAtIGNtZC0+YXJnYykgPj0gbmVlZCkKKwkJcmV0dXJuOworCisJY21kLT5hcmd2X3NpemUgPSAoY21kLT5hcmd2X3NpemUgKyBuZWVkKSAqIDI7CisJY21kLT5hcmd2ID0gbV9yZWFsbG9jKGNtZC0+YXJndiwgY21kLT5hcmd2X3NpemUgKiBzaXplb2YoY29uc3QgY2hhciAqKSk7Cit9CisKKy8qKgorICogQXBwZW5kIGFuIGFyZ3VtZW50IHRvIHRoZSBjb21tYW5kJ3MgYXJndi4KKyAqCisgKiBAcGFyYW0gY21kIFRoZSBjb21tYW5kIHN0cnVjdHVyZSB0byBhY3Qgb24uCisgKiBAcGFyYW0gYXJnIFRoZSBhcmd1bWVudCB0byBhcHBlbmQgdG8gYXJndi4KKyAqLwordm9pZAorY29tbWFuZF9hZGRfYXJnKHN0cnVjdCBjb21tYW5kICpjbWQsIGNvbnN0IGNoYXIgKmFyZykKK3sKKwljb21tYW5kX2dyb3dfYXJndihjbWQsIDEpOworCisJY21kLT5hcmd2W2NtZC0+YXJnYysrXSA9IGFyZzsKKwljbWQtPmFyZ3ZbY21kLT5hcmdjXSA9IE5VTEw7Cit9CisKKy8qKgorICogQXBwZW5kIGFuIGFyZ3VtZW50IGFycmF5IHRvIHRoZSBjb21tYW5kJ3MgYXJndi4KKyAqCisgKiBAcGFyYW0gY21kIFRoZSBjb21tYW5kIHN0cnVjdHVyZSB0byBhY3Qgb24uCisgKiBAcGFyYW0gYXJndiBUaGUgTlVMTCB0ZXJtaW5hdGVkIGFyZ3VtZW50IGFycmF5IHRvIGFwcGVuZCB0byBhcmd2LgorICovCit2b2lkCitjb21tYW5kX2FkZF9hcmdsKHN0cnVjdCBjb21tYW5kICpjbWQsIGNvbnN0IGNoYXIgKiphcmd2KQoreworCWludCBpLCBhZGRfYXJnYyA9IDA7CisKKwl3aGlsZSAoYXJndlthZGRfYXJnY10gIT0gTlVMTCkKKwkJYWRkX2FyZ2MrKzsKKworCWNvbW1hbmRfZ3Jvd19hcmd2KGNtZCwgYWRkX2FyZ2MpOworCisJZm9yIChpID0gMDsgaSA8IGFkZF9hcmdjOyBpKyspCisJCWNtZC0+YXJndltjbWQtPmFyZ2MrK10gPSBhcmd2W2ldOworCisJY21kLT5hcmd2W2NtZC0+YXJnY10gPSBOVUxMOworfQorCisvKioKKyAqIEFwcGVuZCBhIHZhX2xpc3Qgb2YgYXJndW1lbnQgdG8gdGhlIGNvbW1hbmQncyBhcmd2LgorICoKKyAqIEBwYXJhbSBjbWQgVGhlIGNvbW1hbmQgc3RydWN0dXJlIHRvIGFjdCBvbi4KKyAqIEBwYXJhbSBhcmdzIFRoZSBOVUxMIHRlcm1pbmF0ZWQgdmFfbGlzdCBvZiBhcmd1bWVudCBhcnJheSB0byBhcHBlbmQgdG8gYXJndi4KKyAqLwordm9pZAorY29tbWFuZF9hZGRfYXJndihzdHJ1Y3QgY29tbWFuZCAqY21kLCB2YV9saXN0IGFyZ3MpCit7CisJdmFfbGlzdCBhcmdzX2NvcHk7CisJaW50IGksIGFkZF9hcmdjID0gMDsKKworCXZhX2NvcHkoYXJnc19jb3B5LCBhcmdzKTsKKwl3aGlsZSAodmFfYXJnKGFyZ3NfY29weSwgY29uc3QgY2hhciAqKSAhPSBOVUxMKQorCQlhZGRfYXJnYysrOworCXZhX2VuZChhcmdzX2NvcHkpOworCisJY29tbWFuZF9ncm93X2FyZ3YoY21kLCBhZGRfYXJnYyk7CisKKwlmb3IgKGkgPSAwOyBpIDwgYWRkX2FyZ2M7IGkrKykKKwkJY21kLT5hcmd2W2NtZC0+YXJnYysrXSA9IHZhX2FyZyhhcmdzLCBjb25zdCBjaGFyICopOworCisJY21kLT5hcmd2W2NtZC0+YXJnY10gPSBOVUxMOworfQorCisvKioKKyAqIEFwcGVuZCBhIHZhcmlhYmxlIGxpc3Qgb2YgYXJndW1lbnQgdG8gdGhlIGNvbW1hbmQncyBhcmd2LgorICoKKyAqIEBwYXJhbSBjbWQgVGhlIGNvbW1hbmQgc3RydWN0dXJlIHRvIGFjdCBvbi4KKyAqIEBwYXJhbSAuLi4gVGhlIE5VTEwgdGVybWluYXRlZCB2YXJpYWJsZSBsaXN0IG9mIGFyZ3VtZW50IHRvIGFwcGVuZCB0byBhcmd2LgorICovCit2b2lkCitjb21tYW5kX2FkZF9hcmdzKHN0cnVjdCBjb21tYW5kICpjbWQsIC4uLikKK3sKKwl2YV9saXN0IGFyZ3M7CisKKwl2YV9zdGFydChhcmdzLCBjbWQpOworCWNvbW1hbmRfYWRkX2FyZ3YoY21kLCBhcmdzKTsKKwl2YV9lbmQoYXJncyk7Cit9CisKKy8qKgorICogRXhlY3V0ZSB0aGUgY29tbWFuZCBzcGVjaWZpZWQuCisgKgorICogVGhlIGNvbW1hbmQgaXMgZXhlY3V0ZWQgc2VhcmNoaW5nIHRoZSBQQVRIIGlmIHRoZSBmaWxlbmFtZSBkb2VzIG5vdAorICogY29udGFpbiBhbnkgc2xhc2hlcywgb3IgdXNpbmcgdGhlIGZ1bGwgcGF0aCBpZiBpdCdzIGVpdGhlciBhIHJlbGF0aXZlIG9yCisgKiBhYnNvbHV0ZSBwYXRobmFtZS4gVGhpcyBmdW5jdGlvbnMgZG9lcyBub3QgcmV0dXJuLgorICoKKyAqIEBwYXJhbSBjbWQgVGhlIGNvbW1hbmQgc3RydWN0dXJlIHRvIGFjdCBvbi4KKyAqLwordm9pZAorY29tbWFuZF9leGVjKHN0cnVjdCBjb21tYW5kICpjbWQpCit7CisJZXhlY3ZwKGNtZC0+ZmlsZW5hbWUsIChjaGFyICogY29uc3QgKiljbWQtPmFyZ3YpOworCW9oc2hpdGUoXygidW5hYmxlIHRvIGV4ZWN1dGUgJXMgKCVzKSIpLCBjbWQtPm5hbWUsIGNtZC0+ZmlsZW5hbWUpOworfQorCisvKioKKyAqIEV4ZWN1dGUgYSBzaGVsbCB3aXRoIGEgcG9zc2libGUgY29tbWFuZC4KKyAqCisgKiBAcGFyYW0gY21kIFRoZSBjb21tYW5kIHN0cmluZyB0byBleGVjdXRlLCBpZiBpdCdzIE5VTEwgYW4gaW50ZXJhY3RpdmUKKyAqICAgICAgICAgICAgc2hlbGwgd2lsbCBiZSBleGVjdXRlZCBpbnN0ZWFkLgorICogQHBhcmFtIG5hbWUgVGhlIGRlc2NyaXB0aW9uIG9mIHRoZSBjb21tYW5kIHRvIGV4ZWN1dGUuCisgKi8KK3ZvaWQKK2NvbW1hbmRfc2hlbGwoY29uc3QgY2hhciAqY21kLCBjb25zdCBjaGFyICpuYW1lKQoreworCWNvbnN0IGNoYXIgKnNoZWxsOworCWNvbnN0IGNoYXIgKm1vZGU7CisKKwlzaGVsbCA9IGdldGVudigiU0hFTEwiKTsKKwlpZiAoc2hlbGwgPT0gTlVMTCB8fCBzaGVsbFswXSA9PSAnXDAnKQorCQlzaGVsbCA9IERFRkFVTFRTSEVMTDsKKworCWlmIChjbWQgPT0gTlVMTCkKKwkJbW9kZSA9ICItaSI7CisJZWxzZQorCQltb2RlID0gIi1jIjsKKworCWV4ZWNscChzaGVsbCwgc2hlbGwsIG1vZGUsIGNtZCwgTlVMTCk7CisJb2hzaGl0ZShfKCJ1bmFibGUgdG8gZXhlY3V0ZSAlcyAoJXMpIiksIG5hbWUsIGNtZCk7Cit9CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL2NvbW1hbmQuaCBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvY29tbWFuZC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmEwNWNjNTIKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL2NvbW1hbmQuaApAQCAtMCwwICsxLDU1IEBACisvKgorICogbGliZHBrZyAtIERlYmlhbiBwYWNrYWdpbmcgc3VpdGUgbGlicmFyeSByb3V0aW5lcworICogY29tbWFuZC5oIC0gY29tbWFuZCBleGVjdXRpb24gc3VwcG9ydAorICoKKyAqIENvcHlyaWdodCDCqSAyMDEwIEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworI2lmbmRlZiBMSUJEUEtHX0NPTU1BTkRfSAorI2RlZmluZSBMSUJEUEtHX0NPTU1BTkRfSAorCisjaW5jbHVkZSA8ZHBrZy9tYWNyb3MuaD4KKworRFBLR19CRUdJTl9ERUNMUworCisvKioKKyAqIERlc2NyaWJlIGEgY29tbWFuZCB0byBleGVjdXRlLgorICovCitzdHJ1Y3QgY29tbWFuZCB7CisJLyoqIERlc2NyaXB0aXZlIG5hbWUgb2YgdGhlIGNvbW1hbmQsIHVzZWQgd2hlbiBwcmludGluZy4gKi8KKwljb25zdCBjaGFyICpuYW1lOworCS8qKiBGaWxlbmFtZSB0byBleGVjdXRlOyBlaXRoZXIgYSBwYXRoIG9yIHRoZSBwcm9nbmFtZS4gKi8KKwljb25zdCBjaGFyICpmaWxlbmFtZTsKKwlpbnQgYXJnYzsKKwlpbnQgYXJndl9zaXplOworCWNvbnN0IGNoYXIgKiphcmd2OworfTsKKwordm9pZCBjb21tYW5kX2luaXQoc3RydWN0IGNvbW1hbmQgKmNtZCwgY29uc3QgY2hhciAqZmlsZW5hbWUsIGNvbnN0IGNoYXIgKm5hbWUpOwordm9pZCBjb21tYW5kX2Rlc3Ryb3koc3RydWN0IGNvbW1hbmQgKmNtZCk7CisKK3ZvaWQgY29tbWFuZF9hZGRfYXJnKHN0cnVjdCBjb21tYW5kICpjbWQsIGNvbnN0IGNoYXIgKmFyZyk7Cit2b2lkIGNvbW1hbmRfYWRkX2FyZ2woc3RydWN0IGNvbW1hbmQgKmNtZCwgY29uc3QgY2hhciAqKmFyZ3YpOwordm9pZCBjb21tYW5kX2FkZF9hcmd2KHN0cnVjdCBjb21tYW5kICpjbWQsIHZhX2xpc3QgYXJncyk7Cit2b2lkIGNvbW1hbmRfYWRkX2FyZ3Moc3RydWN0IGNvbW1hbmQgKmNtZCwgLi4uKSBEUEtHX0FUVFJfU0VOVElORUw7CisKK3ZvaWQgY29tbWFuZF9leGVjKHN0cnVjdCBjb21tYW5kICpjbWQpIERQS0dfQVRUUl9OT1JFVDsKKwordm9pZCBjb21tYW5kX3NoZWxsKGNvbnN0IGNoYXIgKmNtZCwgY29uc3QgY2hhciAqbmFtZSk7CisKK0RQS0dfRU5EX0RFQ0xTCisKKyNlbmRpZiAvKiBMSUJEUEtHX0NPTU1BTkRfSCAqLwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9jb21wcmVzcy5jIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9jb21wcmVzcy5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjUxOTk0MzkKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL2NvbXByZXNzLmMKQEAgLTAsMCArMSw0NDggQEAKKy8qCisgKiBsaWJkcGtnIC0gRGViaWFuIHBhY2thZ2luZyBzdWl0ZSBsaWJyYXJ5IHJvdXRpbmVzCisgKiBjb21wcmVzcy5jIC0gY29tcHJlc3Npb24gc3VwcG9ydCBmdW5jdGlvbnMKKyAqCisgKiBDb3B5cmlnaHQgwqkgMjAwMCBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorICogQ29weXJpZ2h0IMKpIDIwMDQgU2NvdHQgSmFtZXMgUmVtbmFudCA8c2NvdHRAbmV0c3BsaXQuY29tPgorICogQ29weXJpZ2h0IMKpIDIwMDYtMjAxMCBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CisgKgorICogVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisgKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAqIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorICovCisKKyNpbmNsdWRlIDxjb25maWcuaD4KKyNpbmNsdWRlIDxjb21wYXQuaD4KKworI2luY2x1ZGUgPGVycm5vLmg+CisjaW5jbHVkZSA8c3RyaW5nLmg+CisjaW5jbHVkZSA8dW5pc3RkLmg+CisjaW5jbHVkZSA8c3RkbGliLmg+CisKKyNpZmRlZiBXSVRIX1pMSUIKKyNpbmNsdWRlIDx6bGliLmg+CisjZW5kaWYKKyNpZmRlZiBXSVRIX0JaMgorI2luY2x1ZGUgPGJ6bGliLmg+CisjZW5kaWYKKworI2luY2x1ZGUgPGRwa2cvaTE4bi5oPgorI2luY2x1ZGUgPGRwa2cvZHBrZy5oPgorI2luY2x1ZGUgPGRwa2cvdmFyYnVmLmg+CisjaW5jbHVkZSA8ZHBrZy9mZGlvLmg+CisjaW5jbHVkZSA8ZHBrZy9idWZmZXIuaD4KKyNpbmNsdWRlIDxkcGtnL2NvbW1hbmQuaD4KKyNpbmNsdWRlIDxkcGtnL2NvbXByZXNzLmg+CisjaW5jbHVkZSA8ZHBrZy9zdWJwcm9jLmg+CisKK3N0YXRpYyB2b2lkIERQS0dfQVRUUl9TRU5USU5FTAorZmRfZmRfZmlsdGVyKGludCBmZF9pbiwgaW50IGZkX291dCwgY29uc3QgY2hhciAqZGVzYywgY29uc3QgY2hhciAqZmlsZSwgLi4uKQoreworCXZhX2xpc3QgYXJnczsKKwlzdHJ1Y3QgY29tbWFuZCBjbWQ7CisJcGlkX3QgcGlkOworCisJcGlkID0gc3VicHJvY19mb3JrKCk7CisJaWYgKHBpZCA9PSAwKSB7CisJCWlmIChmZF9pbiAhPSAwKSB7CisJCQltX2R1cDIoZmRfaW4sIDApOworCQkJY2xvc2UoZmRfaW4pOworCQl9CisJCWlmIChmZF9vdXQgIT0gMSkgeworCQkJbV9kdXAyKGZkX291dCwgMSk7CisJCQljbG9zZShmZF9vdXQpOworCQl9CisKKwkJY29tbWFuZF9pbml0KCZjbWQsIGZpbGUsIGRlc2MpOworCQljb21tYW5kX2FkZF9hcmcoJmNtZCwgZmlsZSk7CisJCXZhX3N0YXJ0KGFyZ3MsIGZpbGUpOworCQljb21tYW5kX2FkZF9hcmd2KCZjbWQsIGFyZ3MpOworCQl2YV9lbmQoYXJncyk7CisKKwkJY29tbWFuZF9leGVjKCZjbWQpOworCX0KKwlzdWJwcm9jX3dhaXRfY2hlY2socGlkLCBkZXNjLCAwKTsKK30KKworLyoKKyAqIE5vIGNvbXByZXNzb3IgKHBhc3MtdGhyb3VnaCkuCisgKi8KKworc3RhdGljIHZvaWQKK2RlY29tcHJlc3Nfbm9uZShpbnQgZmRfaW4sIGludCBmZF9vdXQsIGNvbnN0IGNoYXIgKmRlc2MpCit7CisJZmRfZmRfY29weShmZF9pbiwgZmRfb3V0LCAtMSwgXygiJXM6IGRlY29tcHJlc3Npb24iKSwgZGVzYyk7Cit9CisKK3N0YXRpYyB2b2lkCitjb21wcmVzc19ub25lKGludCBmZF9pbiwgaW50IGZkX291dCwgaW50IGNvbXByZXNzX2xldmVsLCBjb25zdCBjaGFyICpkZXNjKQoreworCWZkX2ZkX2NvcHkoZmRfaW4sIGZkX291dCwgLTEsIF8oIiVzOiBjb21wcmVzc2lvbiIpLCBkZXNjKTsKK30KKworc3RydWN0IGNvbXByZXNzb3IgY29tcHJlc3Nvcl9ub25lID0geworCS5uYW1lID0gIm5vbmUiLAorCS5leHRlbnNpb24gPSAiIiwKKwkuZGVmYXVsdF9sZXZlbCA9IDAsCisJLmNvbXByZXNzID0gY29tcHJlc3Nfbm9uZSwKKwkuZGVjb21wcmVzcyA9IGRlY29tcHJlc3Nfbm9uZSwKK307CisKKy8qCisgKiBHemlwIGNvbXByZXNzb3IuCisgKi8KKworI2lmZGVmIFdJVEhfWkxJQgorc3RhdGljIHZvaWQKK2RlY29tcHJlc3NfZ3ppcChpbnQgZmRfaW4sIGludCBmZF9vdXQsIGNvbnN0IGNoYXIgKmRlc2MpCit7CisJY2hhciBidWZmZXJbRFBLR19CVUZGRVJfU0laRV07CisJZ3pGaWxlIGd6ZmlsZSA9IGd6ZG9wZW4oZmRfaW4sICJyIik7CisKKwlpZiAoZ3pmaWxlID09IE5VTEwpCisJCW9oc2hpdChfKCIlczogZXJyb3IgYmluZGluZyBpbnB1dCB0byBnemlwIHN0cmVhbSIpLCBkZXNjKTsKKworCWZvciAoOzspIHsKKwkJaW50IGFjdHVhbHJlYWQsIGFjdHVhbHdyaXRlOworCisJCWFjdHVhbHJlYWQgPSBnenJlYWQoZ3pmaWxlLCBidWZmZXIsIHNpemVvZihidWZmZXIpKTsKKwkJaWYgKGFjdHVhbHJlYWQgPCAwKSB7CisJCQlpbnQgel9lcnJudW0gPSAwOworCQkJY29uc3QgY2hhciAqZXJybXNnID0gZ3plcnJvcihnemZpbGUsICZ6X2Vycm51bSk7CisKKwkJCWlmICh6X2Vycm51bSA9PSBaX0VSUk5PKQorCQkJCWVycm1zZyA9IHN0cmVycm9yKGVycm5vKTsKKwkJCW9oc2hpdChfKCIlczogaW50ZXJuYWwgZ3ppcCByZWFkIGVycm9yOiAnJXMnIiksIGRlc2MsCisJCQkgICAgICAgZXJybXNnKTsKKwkJfQorCQlpZiAoYWN0dWFscmVhZCA9PSAwKSAvKiBFT0YuICovCisJCQlicmVhazsKKworCQlhY3R1YWx3cml0ZSA9IGZkX3dyaXRlKGZkX291dCwgYnVmZmVyLCBhY3R1YWxyZWFkKTsKKwkJaWYgKGFjdHVhbHdyaXRlICE9IGFjdHVhbHJlYWQpCisJCQlvaHNoaXRlKF8oIiVzOiBpbnRlcm5hbCBnemlwIHdyaXRlIGVycm9yIiksIGRlc2MpOworCX0KKworCWlmIChjbG9zZShmZF9vdXQpKQorCQlvaHNoaXRlKF8oIiVzOiBpbnRlcm5hbCBnemlwIHdyaXRlIGVycm9yIiksIGRlc2MpOworfQorCitzdGF0aWMgdm9pZAorY29tcHJlc3NfZ3ppcChpbnQgZmRfaW4sIGludCBmZF9vdXQsIGludCBjb21wcmVzc19sZXZlbCwgY29uc3QgY2hhciAqZGVzYykKK3sKKwljaGFyIGJ1ZmZlcltEUEtHX0JVRkZFUl9TSVpFXTsKKwljaGFyIGNvbWJ1Zls2XTsKKwlpbnQgel9lcnJudW07CisJZ3pGaWxlIGd6ZmlsZTsKKworCXNucHJpbnRmKGNvbWJ1Ziwgc2l6ZW9mKGNvbWJ1ZiksICJ3JWQiLCBjb21wcmVzc19sZXZlbCk7CisJZ3pmaWxlID0gZ3pkb3BlbihmZF9vdXQsIGNvbWJ1Zik7CisJaWYgKGd6ZmlsZSA9PSBOVUxMKQorCQlvaHNoaXQoXygiJXM6IGVycm9yIGJpbmRpbmcgb3V0cHV0IHRvIGd6aXAgc3RyZWFtIiksIGRlc2MpOworCisJZm9yICg7OykgeworCQlpbnQgYWN0dWFscmVhZCwgYWN0dWFsd3JpdGU7CisKKwkJYWN0dWFscmVhZCA9IGZkX3JlYWQoZmRfaW4sIGJ1ZmZlciwgc2l6ZW9mKGJ1ZmZlcikpOworCQlpZiAoYWN0dWFscmVhZCA8IDApCisJCQlvaHNoaXRlKF8oIiVzOiBpbnRlcm5hbCBnemlwIHJlYWQgZXJyb3IiKSwgZGVzYyk7CisJCWlmIChhY3R1YWxyZWFkID09IDApIC8qIEVPRi4gKi8KKwkJCWJyZWFrOworCisJCWFjdHVhbHdyaXRlID0gZ3p3cml0ZShnemZpbGUsIGJ1ZmZlciwgYWN0dWFscmVhZCk7CisJCWlmIChhY3R1YWx3cml0ZSAhPSBhY3R1YWxyZWFkKSB7CisJCQljb25zdCBjaGFyICplcnJtc2cgPSBnemVycm9yKGd6ZmlsZSwgJnpfZXJybnVtKTsKKworCQkJaWYgKHpfZXJybnVtID09IFpfRVJSTk8pCisJCQkJZXJybXNnID0gc3RyZXJyb3IoZXJybm8pOworCQkJb2hzaGl0KF8oIiVzOiBpbnRlcm5hbCBnemlwIHdyaXRlIGVycm9yOiAnJXMnIiksIGRlc2MsCisJCQkgICAgICAgZXJybXNnKTsKKwkJfQorCX0KKworCXpfZXJybnVtID0gZ3pjbG9zZShnemZpbGUpOworCWlmICh6X2Vycm51bSkgeworCQljb25zdCBjaGFyICplcnJtc2c7CisKKwkJaWYgKHpfZXJybnVtID09IFpfRVJSTk8pCisJCQllcnJtc2cgPSBzdHJlcnJvcihlcnJubyk7CisJCWVsc2UKKwkJCWVycm1zZyA9IHpFcnJvcih6X2Vycm51bSk7CisJCW9oc2hpdChfKCIlczogaW50ZXJuYWwgZ3ppcCB3cml0ZSBlcnJvcjogJXMiKSwgZGVzYywgZXJybXNnKTsKKwl9Cit9CisjZWxzZQorc3RhdGljIHZvaWQKK2RlY29tcHJlc3NfZ3ppcChpbnQgZmRfaW4sIGludCBmZF9vdXQsIGNvbnN0IGNoYXIgKmRlc2MpCit7CisJZmRfZmRfZmlsdGVyKGZkX2luLCBmZF9vdXQsIGRlc2MsIEdaSVAsICItZGMiLCBOVUxMKTsKK30KKworc3RhdGljIHZvaWQKK2NvbXByZXNzX2d6aXAoaW50IGZkX2luLCBpbnQgZmRfb3V0LCBpbnQgY29tcHJlc3NfbGV2ZWwsIGNvbnN0IGNoYXIgKmRlc2MpCit7CisJY2hhciBjb21idWZbNl07CisKKwlzbnByaW50Zihjb21idWYsIHNpemVvZihjb21idWYpLCAiLWMlZCIsIGNvbXByZXNzX2xldmVsKTsKKwlmZF9mZF9maWx0ZXIoZmRfaW4sIGZkX291dCwgZGVzYywgR1pJUCwgY29tYnVmLCBOVUxMKTsKK30KKyNlbmRpZgorCitzdHJ1Y3QgY29tcHJlc3NvciBjb21wcmVzc29yX2d6aXAgPSB7CisJLm5hbWUgPSAiZ3ppcCIsCisJLmV4dGVuc2lvbiA9ICIuZ3oiLAorCS5kZWZhdWx0X2xldmVsID0gOSwKKwkuY29tcHJlc3MgPSBjb21wcmVzc19nemlwLAorCS5kZWNvbXByZXNzID0gZGVjb21wcmVzc19nemlwLAorfTsKKworLyoKKyAqIEJ6aXAyIGNvbXByZXNzb3IuCisgKi8KKworI2lmZGVmIFdJVEhfQloyCitzdGF0aWMgdm9pZAorZGVjb21wcmVzc19iemlwMihpbnQgZmRfaW4sIGludCBmZF9vdXQsIGNvbnN0IGNoYXIgKmRlc2MpCit7CisJY2hhciBidWZmZXJbRFBLR19CVUZGRVJfU0laRV07CisJQlpGSUxFICpiemZpbGUgPSBCWjJfYnpkb3BlbihmZF9pbiwgInIiKTsKKworCWlmIChiemZpbGUgPT0gTlVMTCkKKwkJb2hzaGl0KF8oIiVzOiBlcnJvciBiaW5kaW5nIGlucHV0IHRvIGJ6aXAyIHN0cmVhbSIpLCBkZXNjKTsKKworCWZvciAoOzspIHsKKwkJaW50IGFjdHVhbHJlYWQsIGFjdHVhbHdyaXRlOworCisJCWFjdHVhbHJlYWQgPSBCWjJfYnpyZWFkKGJ6ZmlsZSwgYnVmZmVyLCBzaXplb2YoYnVmZmVyKSk7CisJCWlmIChhY3R1YWxyZWFkIDwgMCkgeworCQkJaW50IGJ6X2Vycm51bSA9IDA7CisJCQljb25zdCBjaGFyICplcnJtc2cgPSBCWjJfYnplcnJvcihiemZpbGUsICZiel9lcnJudW0pOworCisJCQlpZiAoYnpfZXJybnVtID09IEJaX0lPX0VSUk9SKQorCQkJCWVycm1zZyA9IHN0cmVycm9yKGVycm5vKTsKKwkJCW9oc2hpdChfKCIlczogaW50ZXJuYWwgYnppcDIgcmVhZCBlcnJvcjogJyVzJyIpLCBkZXNjLAorCQkJICAgICAgIGVycm1zZyk7CisJCX0KKwkJaWYgKGFjdHVhbHJlYWQgPT0gMCkgLyogRU9GLiAqLworCQkJYnJlYWs7CisKKwkJYWN0dWFsd3JpdGUgPSBmZF93cml0ZShmZF9vdXQsIGJ1ZmZlciwgYWN0dWFscmVhZCk7CisJCWlmIChhY3R1YWx3cml0ZSAhPSBhY3R1YWxyZWFkKQorCQkJb2hzaGl0ZShfKCIlczogaW50ZXJuYWwgYnppcDIgd3JpdGUgZXJyb3IiKSwgZGVzYyk7CisJfQorCisJaWYgKGNsb3NlKGZkX291dCkpCisJCW9oc2hpdGUoXygiJXM6IGludGVybmFsIGJ6aXAyIHdyaXRlIGVycm9yIiksIGRlc2MpOworfQorCitzdGF0aWMgdm9pZAorY29tcHJlc3NfYnppcDIoaW50IGZkX2luLCBpbnQgZmRfb3V0LCBpbnQgY29tcHJlc3NfbGV2ZWwsIGNvbnN0IGNoYXIgKmRlc2MpCit7CisJY2hhciBidWZmZXJbRFBLR19CVUZGRVJfU0laRV07CisJY2hhciBjb21idWZbNl07CisJaW50IGJ6X2Vycm51bTsKKwlCWkZJTEUgKmJ6ZmlsZTsKKworCXNucHJpbnRmKGNvbWJ1Ziwgc2l6ZW9mKGNvbWJ1ZiksICJ3JWQiLCBjb21wcmVzc19sZXZlbCk7CisJYnpmaWxlID0gQloyX2J6ZG9wZW4oZmRfb3V0LCBjb21idWYpOworCWlmIChiemZpbGUgPT0gTlVMTCkKKwkJb2hzaGl0KF8oIiVzOiBlcnJvciBiaW5kaW5nIG91dHB1dCB0byBiemlwMiBzdHJlYW0iKSwgZGVzYyk7CisKKwlmb3IgKDs7KSB7CisJCWludCBhY3R1YWxyZWFkLCBhY3R1YWx3cml0ZTsKKworCQlhY3R1YWxyZWFkID0gZmRfcmVhZChmZF9pbiwgYnVmZmVyLCBzaXplb2YoYnVmZmVyKSk7CisJCWlmIChhY3R1YWxyZWFkIDwgMCkKKwkJCW9oc2hpdGUoXygiJXM6IGludGVybmFsIGJ6aXAyIHJlYWQgZXJyb3IiKSwgZGVzYyk7CisJCWlmIChhY3R1YWxyZWFkID09IDApIC8qIEVPRi4gKi8KKwkJCWJyZWFrOworCisJCWFjdHVhbHdyaXRlID0gQloyX2J6d3JpdGUoYnpmaWxlLCBidWZmZXIsIGFjdHVhbHJlYWQpOworCQlpZiAoYWN0dWFsd3JpdGUgIT0gYWN0dWFscmVhZCkgeworCQkJY29uc3QgY2hhciAqZXJybXNnID0gQloyX2J6ZXJyb3IoYnpmaWxlLCAmYnpfZXJybnVtKTsKKworCQkJaWYgKGJ6X2Vycm51bSA9PSBCWl9JT19FUlJPUikKKwkJCQllcnJtc2cgPSBzdHJlcnJvcihlcnJubyk7CisJCQlvaHNoaXQoXygiJXM6IGludGVybmFsIGJ6aXAyIHdyaXRlIGVycm9yOiAnJXMnIiksIGRlc2MsCisJCQkgICAgICAgZXJybXNnKTsKKwkJfQorCX0KKworCUJaMl9ieldyaXRlQ2xvc2UoJmJ6X2Vycm51bSwgYnpmaWxlLCAwLCBOVUxMLCBOVUxMKTsKKwlpZiAoYnpfZXJybnVtICE9IEJaX09LKSB7CisJCWNvbnN0IGNoYXIgKmVycm1zZyA9IF8oInVuZXhwZWN0ZWQgYnppcDIgZXJyb3IiKTsKKworCQlpZiAoYnpfZXJybnVtID09IEJaX0lPX0VSUk9SKQorCQkJZXJybXNnID0gc3RyZXJyb3IoZXJybm8pOworCQlvaHNoaXQoXygiJXM6IGludGVybmFsIGJ6aXAyIHdyaXRlIGVycm9yOiAnJXMnIiksIGRlc2MsCisJCSAgICAgICBlcnJtc2cpOworCX0KKworCS8qIEJlY2F1c2UgQloyX2J6V3JpdGVDbG9zZSBoYXMgZG9uZSBhIGZmbHVzaCBvbiB0aGUgZmlsZSBoYW5kbGUsCisJICogZG9pbmcgYSBjbG9zZSBvbiB0aGUgZmlsZSBkZXNjcmlwdG9yIGFzc29jaWF0ZWQgd2l0aCBpdCBzaG91bGQKKwkgKiBiZSBzYWZl4oSiLiAqLworCWlmIChjbG9zZShmZF9vdXQpKQorCQlvaHNoaXRlKF8oIiVzOiBpbnRlcm5hbCBiemlwMiB3cml0ZSBlcnJvciIpLCBkZXNjKTsKK30KKyNlbHNlCitzdGF0aWMgdm9pZAorZGVjb21wcmVzc19iemlwMihpbnQgZmRfaW4sIGludCBmZF9vdXQsIGNvbnN0IGNoYXIgKmRlc2MpCit7CisJZmRfZmRfZmlsdGVyKGZkX2luLCBmZF9vdXQsIGRlc2MsIEJaSVAyLCAiLWRjIiwgTlVMTCk7Cit9CisKK3N0YXRpYyB2b2lkCitjb21wcmVzc19iemlwMihpbnQgZmRfaW4sIGludCBmZF9vdXQsIGludCBjb21wcmVzc19sZXZlbCwgY29uc3QgY2hhciAqZGVzYykKK3sKKwljaGFyIGNvbWJ1Zls2XTsKKworCXNucHJpbnRmKGNvbWJ1Ziwgc2l6ZW9mKGNvbWJ1ZiksICItYyVkIiwgY29tcHJlc3NfbGV2ZWwpOworCWZkX2ZkX2ZpbHRlcihmZF9pbiwgZmRfb3V0LCBkZXNjLCBCWklQMiwgY29tYnVmLCBOVUxMKTsKK30KKyNlbmRpZgorCitzdHJ1Y3QgY29tcHJlc3NvciBjb21wcmVzc29yX2J6aXAyID0geworCS5uYW1lID0gImJ6aXAyIiwKKwkuZXh0ZW5zaW9uID0gIi5iejIiLAorCS5kZWZhdWx0X2xldmVsID0gOSwKKwkuY29tcHJlc3MgPSBjb21wcmVzc19iemlwMiwKKwkuZGVjb21wcmVzcyA9IGRlY29tcHJlc3NfYnppcDIsCit9OworCisvKgorICogWHogY29tcHJlc3Nvci4KKyAqLworCitzdGF0aWMgdm9pZAorZGVjb21wcmVzc194eihpbnQgZmRfaW4sIGludCBmZF9vdXQsIGNvbnN0IGNoYXIgKmRlc2MpCit7CisJZmRfZmRfZmlsdGVyKGZkX2luLCBmZF9vdXQsIGRlc2MsIFhaLCAiLWRjIiwgTlVMTCk7Cit9CisKK3N0YXRpYyB2b2lkCitjb21wcmVzc194eihpbnQgZmRfaW4sIGludCBmZF9vdXQsIGludCBjb21wcmVzc19sZXZlbCwgY29uc3QgY2hhciAqZGVzYykKK3sKKwljaGFyIGNvbWJ1Zls2XTsKKworCXNucHJpbnRmKGNvbWJ1Ziwgc2l6ZW9mKGNvbWJ1ZiksICItYyVkIiwgY29tcHJlc3NfbGV2ZWwpOworCWZkX2ZkX2ZpbHRlcihmZF9pbiwgZmRfb3V0LCBkZXNjLCBYWiwgY29tYnVmLCBOVUxMKTsKK30KKworc3RydWN0IGNvbXByZXNzb3IgY29tcHJlc3Nvcl94eiA9IHsKKwkubmFtZSA9ICJ4eiIsCisJLmV4dGVuc2lvbiA9ICIueHoiLAorCS5kZWZhdWx0X2xldmVsID0gNiwKKwkuY29tcHJlc3MgPSBjb21wcmVzc194eiwKKwkuZGVjb21wcmVzcyA9IGRlY29tcHJlc3NfeHosCit9OworCisvKgorICogTHptYSBjb21wcmVzc29yLgorICovCisKK3N0YXRpYyB2b2lkCitkZWNvbXByZXNzX2x6bWEoaW50IGZkX2luLCBpbnQgZmRfb3V0LCBjb25zdCBjaGFyICpkZXNjKQoreworCWZkX2ZkX2ZpbHRlcihmZF9pbiwgZmRfb3V0LCBkZXNjLCBYWiwgIi1kYyIsICItLWZvcm1hdD1sem1hIiwgTlVMTCk7Cit9CisKK3N0YXRpYyB2b2lkCitjb21wcmVzc19sem1hKGludCBmZF9pbiwgaW50IGZkX291dCwgaW50IGNvbXByZXNzX2xldmVsLCBjb25zdCBjaGFyICpkZXNjKQoreworCWNoYXIgY29tYnVmWzZdOworCisJc25wcmludGYoY29tYnVmLCBzaXplb2YoY29tYnVmKSwgIi1jJWQiLCBjb21wcmVzc19sZXZlbCk7CisJZmRfZmRfZmlsdGVyKGZkX2luLCBmZF9vdXQsIGRlc2MsIFhaLCBjb21idWYsICItLWZvcm1hdD1sem1hIiwgTlVMTCk7Cit9CisKK3N0cnVjdCBjb21wcmVzc29yIGNvbXByZXNzb3JfbHptYSA9IHsKKwkubmFtZSA9ICJsem1hIiwKKwkuZXh0ZW5zaW9uID0gIi5sem1hIiwKKwkuZGVmYXVsdF9sZXZlbCA9IDYsCisJLmNvbXByZXNzID0gY29tcHJlc3NfbHptYSwKKwkuZGVjb21wcmVzcyA9IGRlY29tcHJlc3NfbHptYSwKK307CisKKy8qCisgKiBHZW5lcmljIGNvbXByZXNzb3IgZmlsdGVyLgorICovCisKK3N0YXRpYyBzdHJ1Y3QgY29tcHJlc3NvciAqY29tcHJlc3Nvcl9hcnJheVtdID0geworCSZjb21wcmVzc29yX25vbmUsCisJJmNvbXByZXNzb3JfZ3ppcCwKKwkmY29tcHJlc3Nvcl94eiwKKwkmY29tcHJlc3Nvcl9iemlwMiwKKwkmY29tcHJlc3Nvcl9sem1hLAorfTsKKworc3RydWN0IGNvbXByZXNzb3IgKgorY29tcHJlc3Nvcl9maW5kX2J5X25hbWUoY29uc3QgY2hhciAqbmFtZSkKK3sKKwlzaXplX3QgaTsKKworCWZvciAoaSA9IDA7IGkgPCBhcnJheV9jb3VudChjb21wcmVzc29yX2FycmF5KTsgaSsrKQorCQlpZiAoc3RyY21wKGNvbXByZXNzb3JfYXJyYXlbaV0tPm5hbWUsIG5hbWUpID09IDApCisJCQlyZXR1cm4gY29tcHJlc3Nvcl9hcnJheVtpXTsKKworCXJldHVybiBOVUxMOworfQorCitzdHJ1Y3QgY29tcHJlc3NvciAqCitjb21wcmVzc29yX2ZpbmRfYnlfZXh0ZW5zaW9uKGNvbnN0IGNoYXIgKmV4dGVuc2lvbikKK3sKKwlzaXplX3QgaTsKKworCWZvciAoaSA9IDA7IGkgPCBhcnJheV9jb3VudChjb21wcmVzc29yX2FycmF5KTsgaSsrKQorCQlpZiAoc3RyY21wKGNvbXByZXNzb3JfYXJyYXlbaV0tPmV4dGVuc2lvbiwgZXh0ZW5zaW9uKSA9PSAwKQorCQkJcmV0dXJuIGNvbXByZXNzb3JfYXJyYXlbaV07CisKKwlyZXR1cm4gTlVMTDsKK30KKwordm9pZAorZGVjb21wcmVzc19maWx0ZXIoc3RydWN0IGNvbXByZXNzb3IgKmNvbXByZXNzb3IsIGludCBmZF9pbiwgaW50IGZkX291dCwKKyAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmRlc2NfZm10LCAuLi4pCit7CisJdmFfbGlzdCBhcmdzOworCXN0cnVjdCB2YXJidWYgZGVzYyA9IFZBUkJVRl9JTklUOworCisJaWYgKGNvbXByZXNzb3IgPT0gTlVMTCkKKwkJaW50ZXJuZXJyKCJubyBjb21wcmVzc29yIHNwZWNpZmllZCIpOworCisJdmFfc3RhcnQoYXJncywgZGVzY19mbXQpOworCXZhcmJ1Zl92cHJpbnRmKCZkZXNjLCBkZXNjX2ZtdCwgYXJncyk7CisJdmFfZW5kKGFyZ3MpOworCisJY29tcHJlc3Nvci0+ZGVjb21wcmVzcyhmZF9pbiwgZmRfb3V0LCBkZXNjLmJ1Zik7Cit9CisKK3ZvaWQKK2NvbXByZXNzX2ZpbHRlcihzdHJ1Y3QgY29tcHJlc3NvciAqY29tcHJlc3NvciwgaW50IGZkX2luLCBpbnQgZmRfb3V0LAorICAgICAgICAgICAgICAgIGludCBjb21wcmVzc19sZXZlbCwgY29uc3QgY2hhciAqZGVzY19mbXQsIC4uLikKK3sKKwl2YV9saXN0IGFyZ3M7CisJc3RydWN0IHZhcmJ1ZiBkZXNjID0gVkFSQlVGX0lOSVQ7CisKKwlpZiAoY29tcHJlc3NvciA9PSBOVUxMKQorCQlpbnRlcm5lcnIoIm5vIGNvbXByZXNzb3Igc3BlY2lmaWVkIik7CisKKwl2YV9zdGFydChhcmdzLCBkZXNjX2ZtdCk7CisJdmFyYnVmX3ZwcmludGYoJmRlc2MsIGRlc2NfZm10LCBhcmdzKTsKKwl2YV9lbmQoYXJncyk7CisKKwlpZiAoY29tcHJlc3NfbGV2ZWwgPCAwKQorCQljb21wcmVzc19sZXZlbCA9IGNvbXByZXNzb3ItPmRlZmF1bHRfbGV2ZWw7CisJZWxzZSBpZiAoY29tcHJlc3NfbGV2ZWwgPT0gMCkKKwkJY29tcHJlc3NvciA9ICZjb21wcmVzc29yX25vbmU7CisKKwljb21wcmVzc29yLT5jb21wcmVzcyhmZF9pbiwgZmRfb3V0LCBjb21wcmVzc19sZXZlbCwgZGVzYy5idWYpOworfQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9jb21wcmVzcy5oIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9jb21wcmVzcy5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjE4ZjY1NzMKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL2NvbXByZXNzLmgKQEAgLTAsMCArMSw1OSBAQAorLyoKKyAqIGxpYmRwa2cgLSBEZWJpYW4gcGFja2FnaW5nIHN1aXRlIGxpYnJhcnkgcm91dGluZXMKKyAqIGNvbXByZXNzLmggLSBjb21wcmVzc2lvbiBzdXBwb3J0IGZ1bmN0aW9ucworICoKKyAqIENvcHlyaWdodCDCqSAyMDA0IFNjb3R0IEphbWVzIFJlbW5hbnQgPHNjb3R0QG5ldHNwbGl0LmNvbT4KKyAqIENvcHlyaWdodCDCqSAyMDA2LTIwMDkgR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaWZuZGVmIExJQkRQS0dfQ09NUFJFU1NfSAorI2RlZmluZSBMSUJEUEtHX0NPTVBSRVNTX0gKKworI2luY2x1ZGUgPGRwa2cvbWFjcm9zLmg+CisKK0RQS0dfQkVHSU5fREVDTFMKKworI2RlZmluZSBHWklQCQkiZ3ppcCIKKyNkZWZpbmUgWFoJCSJ4eiIKKyNkZWZpbmUgQlpJUDIJCSJiemlwMiIKKworc3RydWN0IGNvbXByZXNzb3IgeworCWNvbnN0IGNoYXIgKm5hbWU7CisJY29uc3QgY2hhciAqZXh0ZW5zaW9uOworCWludCBkZWZhdWx0X2xldmVsOworCXZvaWQgKCpjb21wcmVzcykoaW50IGZkX2luLCBpbnQgZmRfb3V0LCBpbnQgbGV2ZWwsIGNvbnN0IGNoYXIgKmRlc2MpOworCXZvaWQgKCpkZWNvbXByZXNzKShpbnQgZmRfaW4sIGludCBmZF9vdXQsIGNvbnN0IGNoYXIgKmRlc2MpOworfTsKKworc3RydWN0IGNvbXByZXNzb3IgY29tcHJlc3Nvcl9ub25lOworc3RydWN0IGNvbXByZXNzb3IgY29tcHJlc3Nvcl9nemlwOworc3RydWN0IGNvbXByZXNzb3IgY29tcHJlc3Nvcl94ejsKK3N0cnVjdCBjb21wcmVzc29yIGNvbXByZXNzb3JfYnppcDI7CitzdHJ1Y3QgY29tcHJlc3NvciBjb21wcmVzc29yX2x6bWE7CisKK3N0cnVjdCBjb21wcmVzc29yICpjb21wcmVzc29yX2ZpbmRfYnlfbmFtZShjb25zdCBjaGFyICpuYW1lKTsKK3N0cnVjdCBjb21wcmVzc29yICpjb21wcmVzc29yX2ZpbmRfYnlfZXh0ZW5zaW9uKGNvbnN0IGNoYXIgKm5hbWUpOworCit2b2lkIGRlY29tcHJlc3NfZmlsdGVyKHN0cnVjdCBjb21wcmVzc29yICpjb21wLCBpbnQgZmRfaW4sIGludCBmZF9vdXQsCisgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmRlc2MsIC4uLikKKyAgICAgICAgICAgICAgICAgICAgICAgRFBLR19BVFRSX1BSSU5URig0KTsKK3ZvaWQgY29tcHJlc3NfZmlsdGVyKHN0cnVjdCBjb21wcmVzc29yICpjb21wLCBpbnQgZmRfaW4sIGludCBmZF9vdXQsCisgICAgICAgICAgICAgICAgICAgICBpbnQgY29tcHJlc3NfbGV2ZWwsIGNvbnN0IGNoYXIgKmRlc2MsIC4uLikKKyAgICAgICAgICAgICAgICAgICAgIERQS0dfQVRUUl9QUklOVEYoNSk7CisKK0RQS0dfRU5EX0RFQ0xTCisKKyNlbmRpZiAvKiBMSUJEUEtHX0NPTVBSRVNTX0ggKi8KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvZGJkaXIuYyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvZGJkaXIuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mZTJhNTViCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9kYmRpci5jCkBAIC0wLDAgKzEsOTIgQEAKKy8qCisgKiBsaWJkcGtnIC0gRGViaWFuIHBhY2thZ2luZyBzdWl0ZSBsaWJyYXJ5IHJvdXRpbmVzCisgKiBkYmRpci5jIC0gb24tZGlzayBkYXRhYmFzZSBkaXJlY3RvcnkgZnVuY3Rpb25zCisgKgorICogQ29weXJpZ2h0IMKpIDIwMTEgR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaW5jbHVkZSA8Y29uZmlnLmg+CisjaW5jbHVkZSA8Y29tcGF0Lmg+CisKKyNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KKworI2luY2x1ZGUgPHN0ZGxpYi5oPgorCisjaW5jbHVkZSA8ZHBrZy9kcGtnLmg+CisjaW5jbHVkZSA8ZHBrZy9kcGtnLWRiLmg+CisKK3N0YXRpYyBjb25zdCBjaGFyICpkYl9kaXIgPSBBRE1JTkRJUjsKKworLyoqCisgKiBTZXQgY3VycmVudCBvbi1kaXNrIGRhdGFiYXNlIGRpcmVjdG9yeS4KKyAqCisgKiBUaGUgZGlyZWN0b3J5IGlzIGluaXRpYWxseSBzZXQgdG8gQURNSU5ESVIsIHRoaXMgZnVuY3Rpb24gY2FuIGJlIHVzZWQgdG8KKyAqIHNldCB0aGUgZGlyZWN0b3J5IHRvIGEgbmV3IHZhbHVlLCBvciB0byBzZXQgaXQgdG8gYSBkZWZhdWx0IHZhbHVlIGlmIGRpcgorICogaXMgTlVMTC4gRm9yIHRoZSBsYXR0ZXIgdGhlIG9yZGVyIGlzLCB2YWx1ZSBmcm9tIGVudmlyb25tZW50IHZhcmlhYmxlCisgKiBEUEtHX0FETUlORElSLCBhbmQgdGhlbiB0aGUgYnVpbHQtaW4gZGVmYXVsdCBBRE1JTkRJUiwKKyAqCisgKiBAcGFyYW0gZGlyIFRoZSBuZXcgZGF0YWJzZSBkaXJlY3RvcnksIG9yIE5VTEwgdG8gc2V0IHRvIGRlZmF1bHQuCisgKgorICogQHJldHVybiBUaGUgbmV3IGRhdGFiYXNlIGRpcmVjdG9yeS4KKyAqLworY29uc3QgY2hhciAqCitkcGtnX2RiX3NldF9kaXIoY29uc3QgY2hhciAqZGlyKQoreworCWlmIChkaXIgPT0gTlVMTCkgeworCQljb25zdCBjaGFyICplbnY7CisKKwkJZW52ID0gZ2V0ZW52KCJEUEtHX0FETUlORElSIik7CisJCWlmIChlbnYpCisJCQlkYl9kaXIgPSBlbnY7CisJCWVsc2UKKwkJCWRiX2RpciA9IEFETUlORElSOworCX0gZWxzZSB7CisJCWRiX2RpciA9IGRpcjsKKwl9CisKKwlyZXR1cm4gZGJfZGlyOworfQorCisvKioKKyAqIEdldCBjdXJyZW50IG9uLWRpc2sgZGF0YWJhc2UgZGlyZWN0b3J5LgorICoKKyAqIEByZXR1cm4gVGhlIGN1cnJlbnQgZGF0YWJhc2UgZGlyZWN0b3J5LgorICovCitjb25zdCBjaGFyICoKK2Rwa2dfZGJfZ2V0X2Rpcih2b2lkKQoreworCXJldHVybiBkYl9kaXI7Cit9CisKKy8qKgorICogR2V0IGEgcGF0aG5hbWUgdG8gdGhlIGN1cnJlbnQgb24tZGlzayBkYXRhYmFzZSBkaXJlY3RvcnkuCisgKgorICogVGhpcyBmdW5jdGlvbiByZXR1cm5zIGFuIGFsbG9jYXRlZCBzdHJpbmcsIHdoaWNoIHNob3VsZCBiZSBmcmVlZCB3aXRoCisgKiBmcmVlKDIpLgorICoKKyAqIEBwYXJhbSBwYXRocGFydCBUaGUgcGF0aHBhcnQgdG8gYXBwZW5kIHRvIHRoZSBuZXcgcGF0aG5tZS4KKyAqCisgKiBAcmV0dXJuIFRoZSBuZXdseSBhbGxvY2F0ZWQgcGF0aG5hbWUuCisgKi8KK2NoYXIgKgorZHBrZ19kYl9nZXRfcGF0aChjb25zdCBjaGFyICpwYXRocGFydCkKK3sKKwljaGFyICpwYXRobmFtZTsKKworCW1fYXNwcmludGYoJnBhdGhuYW1lLCAiJXMvJXMiLCBkYl9kaXIsIHBhdGhwYXJ0KTsKKworCXJldHVybiBwYXRobmFtZTsKK30KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvZGJtb2RpZnkuYyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvZGJtb2RpZnkuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45MWYzZWMyCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9kYm1vZGlmeS5jCkBAIC0wLDAgKzEsNDI1IEBACisvKgorICogbGliZHBrZyAtIERlYmlhbiBwYWNrYWdpbmcgc3VpdGUgbGlicmFyeSByb3V0aW5lcworICogZGJtb2RpZnkuYyAtIHJvdXRpbmVzIGZvciBtYW5hZ2luZyBkcGtnIGRhdGFiYXNlIHVwZGF0ZXMKKyAqCisgKiBDb3B5cmlnaHQgwqkgMTk5NCwxOTk1IElhbiBKYWNrc29uIDxpYW5AY2hpYXJrLmdyZWVuZW5kLm9yZy51az4KKyAqIENvcHlyaWdodCDCqSAyMDAxIFdpY2hlcnQgQWtrZXJtYW4gPHdpY2hlcnRAZGViaWFuLm9yZz4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworI2luY2x1ZGUgPGNvbmZpZy5oPgorI2luY2x1ZGUgPGNvbXBhdC5oPgorCisjaW5jbHVkZSA8c3lzL3N0YXQuaD4KKyNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KKyNpbmNsdWRlIDxzeXMvd2FpdC5oPgorCisjaW5jbHVkZSA8YXNzZXJ0Lmg+CisjaW5jbHVkZSA8ZXJybm8uaD4KKyNpbmNsdWRlIDxsaW1pdHMuaD4KKyNpbmNsdWRlIDxjdHlwZS5oPgorI2luY2x1ZGUgPHN0cmluZy5oPgorI2luY2x1ZGUgPHRpbWUuaD4KKyNpbmNsdWRlIDxmY250bC5oPgorI2luY2x1ZGUgPGRpcmVudC5oPgorI2luY2x1ZGUgPHVuaXN0ZC5oPgorI2luY2x1ZGUgPHN0ZGJvb2wuaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlIDxzdGRpby5oPgorCisjaW5jbHVkZSA8ZHBrZy9pMThuLmg+CisjaW5jbHVkZSA8ZHBrZy9kcGtnLmg+CisjaW5jbHVkZSA8ZHBrZy9kcGtnLWRiLmg+CisjaW5jbHVkZSA8ZHBrZy9maWxlLmg+CisjaW5jbHVkZSA8ZHBrZy9kaXIuaD4KKyNpbmNsdWRlIDxkcGtnL3RyaWdsaWIuaD4KKworc3RhdGljIGJvb2wgZGJfaW5pdGlhbGl6ZWQ7CisKK3N0YXRpYyBlbnVtIG1vZHN0YXRkYl9ydyBjc3RhdHVzPS0xLCBjZmxhZ3M9MDsKK3N0YXRpYyBjaGFyICpsb2NrZmlsZTsKK3N0YXRpYyBjaGFyICpzdGF0dXNmaWxlLCAqYXZhaWxhYmxlZmlsZTsKK3N0YXRpYyBjaGFyICppbXBvcnRhbnR0bXBmaWxlPU5VTEw7CitzdGF0aWMgRklMRSAqaW1wb3J0YW50dG1wOworc3RhdGljIGludCBuZXh0dXBkYXRlOworc3RhdGljIGNoYXIgKnVwZGF0ZXNkaXI7CitzdGF0aWMgaW50IHVwZGF0ZXNsZW5ndGg7CitzdGF0aWMgY2hhciAqdXBkYXRlZm5idWYsICp1cGRhdGVmbnJlc3Q7CitzdGF0aWMgc3RydWN0IHZhcmJ1ZiB1dmI7CisKK3N0YXRpYyBpbnQgdWxpc3Rfc2VsZWN0KGNvbnN0IHN0cnVjdCBkaXJlbnQgKmRlKSB7CisgIGNvbnN0IGNoYXIgKnA7CisgIGludCBsOworICBmb3IgKHA9IGRlLT5kX25hbWUsIGw9MDsgKnA7IHArKywgbCsrKQorICAgIGlmICghY2lzZGlnaXQoKnApKSByZXR1cm4gMDsKKyAgaWYgKGwgPiBJTVBPUlRBTlRNQVhMRU4pCisgICAgb2hzaGl0KF8oInVwZGF0ZXMgZGlyZWN0b3J5IGNvbnRhaW5zIGZpbGUgYCUuMjUwcycgd2hvc2UgbmFtZSBpcyB0b28gbG9uZyAiCisgICAgICAgICAgICIobGVuZ3RoPSVkLCBtYXg9JWQpIiksIGRlLT5kX25hbWUsIGwsIElNUE9SVEFOVE1BWExFTik7CisgIGlmICh1cGRhdGVzbGVuZ3RoID09IC0xKSB1cGRhdGVzbGVuZ3RoPSBsOworICBlbHNlIGlmIChsICE9IHVwZGF0ZXNsZW5ndGgpCisgICAgb2hzaGl0KF8oInVwZGF0ZXMgZGlyZWN0b3J5IGNvbnRhaW5zIGZpbGVzIHdpdGggZGlmZmVyZW50IGxlbmd0aCBuYW1lcyAiCisgICAgICAgICAgICIoYm90aCAlZCBhbmQgJWQpIiksIGwsIHVwZGF0ZXNsZW5ndGgpOworICByZXR1cm4gMTsKK30KKworc3RhdGljIHZvaWQgY2xlYW51cGRhdGVzKHZvaWQpIHsKKyAgc3RydWN0IGRpcmVudCAqKmNkbGlzdDsKKyAgaW50IGNkbiwgaTsKKworICBwYXJzZWRiKHN0YXR1c2ZpbGUsIHBkYl9sYXhfcGFyc2VyIHwgcGRiX3dlYWtjbGFzc2lmaWNhdGlvbiwgTlVMTCk7CisKKyAgKnVwZGF0ZWZucmVzdCA9ICdcMCc7CisgIHVwZGF0ZXNsZW5ndGg9IC0xOworICBjZG49IHNjYW5kaXIodXBkYXRlZm5idWYsICZjZGxpc3QsICZ1bGlzdF9zZWxlY3QsIGFscGhhc29ydCk7CisgIGlmIChjZG4gPT0gLTEpIG9oc2hpdGUoXygiY2Fubm90IHNjYW4gdXBkYXRlcyBkaXJlY3RvcnkgYCUuMjU1cyciKSx1cGRhdGVmbmJ1Zik7CisKKyAgaWYgKGNkbikgeworICAgIGZvciAoaT0wOyBpPGNkbjsgaSsrKSB7CisgICAgICBzdHJjcHkodXBkYXRlZm5yZXN0LCBjZGxpc3RbaV0tPmRfbmFtZSk7CisgICAgICBwYXJzZWRiKHVwZGF0ZWZuYnVmLCBwZGJfbGF4X3BhcnNlciB8IHBkYl93ZWFrY2xhc3NpZmljYXRpb24sCisgICAgICAgICAgICAgIE5VTEwpOworICAgICAgaWYgKGNzdGF0dXMgPCBtc2Ricndfd3JpdGUpIGZyZWUoY2RsaXN0W2ldKTsKKyAgICB9CisKKyAgICBpZiAoY3N0YXR1cyA+PSBtc2Ricndfd3JpdGUpIHsKKyAgICAgIHdyaXRlZGIoc3RhdHVzZmlsZSwgd2RiX211c3Rfc3luYyk7CisKKyAgICAgIGZvciAoaT0wOyBpPGNkbjsgaSsrKSB7CisgICAgICAgIHN0cmNweSh1cGRhdGVmbnJlc3QsIGNkbGlzdFtpXS0+ZF9uYW1lKTsKKyAgICAgICAgaWYgKHVubGluayh1cGRhdGVmbmJ1ZikpCisgICAgICAgICAgb2hzaGl0ZShfKCJmYWlsZWQgdG8gcmVtb3ZlIGluY29ycG9yYXRlZCB1cGRhdGUgZmlsZSAlLjI1NXMiKSx1cGRhdGVmbmJ1Zik7CisgICAgICAgIGZyZWUoY2RsaXN0W2ldKTsKKyAgICAgIH0KKworICAgICAgZGlyX3N5bmNfcGF0aCh1cGRhdGVzZGlyKTsKKyAgICB9CisgIH0KKyAgZnJlZShjZGxpc3QpOworCisgIG5leHR1cGRhdGU9IDA7Cit9CisKK3N0YXRpYyB2b2lkIGNyZWF0ZWltcHRtcCh2b2lkKSB7CisgIGludCBpOworCisgIG9uZXJyX2Fib3J0Kys7CisKKyAgaW1wb3J0YW50dG1wPSBmb3BlbihpbXBvcnRhbnR0bXBmaWxlLCJ3Iik7CisgIGlmICghaW1wb3J0YW50dG1wKQorICAgIG9oc2hpdGUoXygidW5hYmxlIHRvIGNyZWF0ZSBgJS4yNTVzJyIpLCBpbXBvcnRhbnR0bXBmaWxlKTsKKyAgc2V0Y2xvZXhlYyhmaWxlbm8oaW1wb3J0YW50dG1wKSxpbXBvcnRhbnR0bXBmaWxlKTsKKyAgZm9yIChpPTA7IGk8NTEyOyBpKyspIGZwdXRzKCIjcGFkZGluZ1xuIixpbXBvcnRhbnR0bXApOworICBpZiAoZmVycm9yKGltcG9ydGFudHRtcCkpCisgICAgb2hzaGl0ZShfKCJ1bmFibGUgdG8gZmlsbCAlLjI1MHMgd2l0aCBwYWRkaW5nIiksaW1wb3J0YW50dG1wZmlsZSk7CisgIGlmIChmZmx1c2goaW1wb3J0YW50dG1wKSkKKyAgICBvaHNoaXRlKF8oInVuYWJsZSB0byBmbHVzaCAlLjI1MHMgYWZ0ZXIgcGFkZGluZyIpLCBpbXBvcnRhbnR0bXBmaWxlKTsKKyAgaWYgKGZzZWVrKGltcG9ydGFudHRtcCwwLFNFRUtfU0VUKSkKKyAgICBvaHNoaXRlKF8oInVuYWJsZSB0byBzZWVrIHRvIHN0YXJ0IG9mICUuMjUwcyBhZnRlciBwYWRkaW5nIiksCisJICAgIGltcG9ydGFudHRtcGZpbGUpOworCisgIG9uZXJyX2Fib3J0LS07Cit9CisKK3N0YXRpYyBjb25zdCBzdHJ1Y3QgZm5pIHsKKyAgY29uc3QgY2hhciAqc3VmZml4OworICBjaGFyICoqc3RvcmU7Cit9IGZuaXNbXSA9IHsKKyAgeyAgIExPQ0tGSUxFLCAgICAgICAgICAgICAgICAgICAmbG9ja2ZpbGUgICAgICAgICAgIH0sCisgIHsgICBTVEFUVVNGSUxFLCAgICAgICAgICAgICAgICAgJnN0YXR1c2ZpbGUgICAgICAgICB9LAorICB7ICAgQVZBSUxGSUxFLCAgICAgICAgICAgICAgICAgICZhdmFpbGFibGVmaWxlICAgICAgfSwKKyAgeyAgIFVQREFURVNESVIsICAgICAgICAgICAgICAgICAmdXBkYXRlc2RpciAgICAgICAgIH0sCisgIHsgICBVUERBVEVTRElSIElNUE9SVEFOVFRNUCwgICAgJmltcG9ydGFudHRtcGZpbGUgICB9LAorICB7ICAgTlVMTCwgTlVMTCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQorfTsKKwordm9pZAorbW9kc3RhdGRiX2luaXQodm9pZCkKK3sKKyAgY29uc3Qgc3RydWN0IGZuaSAqZm5pcDsKKworICBpZiAoZGJfaW5pdGlhbGl6ZWQpCisgICAgcmV0dXJuOworCisgIGZvciAoZm5pcCA9IGZuaXM7IGZuaXAtPnN1ZmZpeDsgZm5pcCsrKSB7CisgICAgZnJlZSgqZm5pcC0+c3RvcmUpOworICAgICpmbmlwLT5zdG9yZSA9IGRwa2dfZGJfZ2V0X3BhdGgoZm5pcC0+c3VmZml4KTsKKyAgfQorCisgIHVwZGF0ZWZuYnVmID0gbV9tYWxsb2Moc3RybGVuKHVwZGF0ZXNkaXIpICsgSU1QT1JUQU5UTUFYTEVOICsgNSk7CisgIHN0cmNweSh1cGRhdGVmbmJ1ZiwgdXBkYXRlc2Rpcik7CisgIHVwZGF0ZWZucmVzdCA9IHVwZGF0ZWZuYnVmICsgc3RybGVuKHVwZGF0ZWZuYnVmKTsKKworICBkYl9pbml0aWFsaXplZCA9IHRydWU7Cit9CisKK3ZvaWQKK21vZHN0YXRkYl9kb25lKHZvaWQpCit7CisgIGNvbnN0IHN0cnVjdCBmbmkgKmZuaXA7CisKKyAgaWYgKCFkYl9pbml0aWFsaXplZCkKKyAgICByZXR1cm47CisKKyAgZm9yIChmbmlwID0gZm5pczsgZm5pcC0+c3VmZml4OyBmbmlwKyspIHsKKyAgICBmcmVlKCpmbmlwLT5zdG9yZSk7CisgICAgKmZuaXAtPnN0b3JlID0gTlVMTDsKKyAgfQorICBmcmVlKHVwZGF0ZWZuYnVmKTsKKworICBkYl9pbml0aWFsaXplZCA9IGZhbHNlOworfQorCitzdGF0aWMgaW50IGRibG9ja2ZkID0gLTE7CisKK2Jvb2wKK21vZHN0YXRkYl9pc19sb2NrZWQodm9pZCkKK3sKKyAgaW50IGxvY2tmZDsKKyAgYm9vbCBsb2NrZWQ7CisKKyAgaWYgKGRibG9ja2ZkID09IC0xKSB7CisgICAgbG9ja2ZkID0gb3Blbihsb2NrZmlsZSwgT19SRE9OTFkpOworICAgIGlmIChsb2NrZmQgPT0gLTEpCisgICAgICBvaHNoaXRlKF8oInVuYWJsZSB0byBvcGVuIGxvY2sgZmlsZSAlcyBmb3IgdGVzdGluZyIpLCBsb2NrZmlsZSk7CisgIH0gZWxzZSB7CisgICAgbG9ja2ZkID0gZGJsb2NrZmQ7CisgIH0KKworICBsb2NrZWQgPSBmaWxlX2lzX2xvY2tlZChsb2NrZmQsIGxvY2tmaWxlKTsKKworICAvKiBXZSBvbmx5IGNsb3NlIHRoZSBmaWxlIGlmIHRoZXJlIHdhcyBubyBsb2NrIG9wZW4sIG90aGVyd2lzZSB3ZSB3b3VsZAorICAgKiByZWxlYXNlIHRoZSBleGlzdGluZyBsb2NrIG9uIGNsb3NlLiAqLworICBpZiAoZGJsb2NrZmQgPT0gLTEpCisgICAgY2xvc2UobG9ja2ZkKTsKKworICByZXR1cm4gbG9ja2VkOworfQorCitib29sCittb2RzdGF0ZGJfY2FuX2xvY2sodm9pZCkKK3sKKyAgaWYgKGRibG9ja2ZkID49IDApCisgICAgcmV0dXJuIHRydWU7CisKKyAgZGJsb2NrZmQgPSBvcGVuKGxvY2tmaWxlLCBPX1JEV1IgfCBPX0NSRUFUIHwgT19UUlVOQywgMDY2MCk7CisgIGlmIChkYmxvY2tmZCA9PSAtMSkgeworICAgIGlmIChlcnJubyA9PSBFQUNDRVMgfHwgZXJybm8gPT0gRVBFUk0pCisgICAgICByZXR1cm4gZmFsc2U7CisgICAgZWxzZQorICAgICAgb2hzaGl0ZShfKCJ1bmFibGUgdG8gb3Blbi9jcmVhdGUgc3RhdHVzIGRhdGFiYXNlIGxvY2tmaWxlIikpOworICB9CisKKyAgcmV0dXJuIHRydWU7Cit9CisKK3ZvaWQKK21vZHN0YXRkYl9sb2NrKHZvaWQpCit7CisgIGlmICghbW9kc3RhdGRiX2Nhbl9sb2NrKCkpCisgICAgb2hzaGl0KF8oInlvdSBkbyBub3QgaGF2ZSBwZXJtaXNzaW9uIHRvIGxvY2sgdGhlIGRwa2cgc3RhdHVzIGRhdGFiYXNlIikpOworCisgIGZpbGVfbG9jaygmZGJsb2NrZmQsIEZJTEVfTE9DS19OT1dBSVQsIGxvY2tmaWxlLCBfKCJkcGtnIHN0YXR1cyBkYXRhYmFzZSIpKTsKK30KKwordm9pZAorbW9kc3RhdGRiX3VubG9jayh2b2lkKQoreworICAvKiBVbmxvY2suICovCisgIHBvcF9jbGVhbnVwKGVoZmxhZ19ub3JtYWx0aWR5KTsKKworICBkYmxvY2tmZCA9IC0xOworfQorCitlbnVtIG1vZHN0YXRkYl9ydworbW9kc3RhdGRiX29wZW4oZW51bSBtb2RzdGF0ZGJfcncgcmVhZHdyaXRlcmVxKQoreworICBtb2RzdGF0ZGJfaW5pdCgpOworCisgIGNmbGFncyA9IHJlYWR3cml0ZXJlcSAmIG1zZGJyd19hdmFpbGFibGVfbWFzazsKKyAgcmVhZHdyaXRlcmVxICY9IH5tc2RicndfYXZhaWxhYmxlX21hc2s7CisKKyAgc3dpdGNoIChyZWFkd3JpdGVyZXEpIHsKKyAgY2FzZSBtc2RicndfbmVlZHN1cGVydXNlcjoKKyAgY2FzZSBtc2RicndfbmVlZHN1cGVydXNlcmxvY2tvbmx5OgorICAgIGlmIChnZXR1aWQoKSB8fCBnZXRldWlkKCkpCisgICAgICBvaHNoaXQoXygicmVxdWVzdGVkIG9wZXJhdGlvbiByZXF1aXJlcyBzdXBlcnVzZXIgcHJpdmlsZWdlIikpOworICAgIC8qIEZhbGwgdGhyb3VnaC4gKi8KKyAgY2FzZSBtc2Ricndfd3JpdGU6IGNhc2UgbXNkYnJ3X3dyaXRlaWZwb3NzOgorICAgIGlmIChhY2Nlc3MoZHBrZ19kYl9nZXRfZGlyKCksIFdfT0spKSB7CisgICAgICBpZiAoZXJybm8gIT0gRUFDQ0VTKQorICAgICAgICBvaHNoaXRlKF8oInVuYWJsZSB0byBhY2Nlc3MgZHBrZyBzdGF0dXMgYXJlYSIpKTsKKyAgICAgIGVsc2UgaWYgKHJlYWR3cml0ZXJlcSA9PSBtc2Ricndfd3JpdGUpCisgICAgICAgIG9oc2hpdChfKCJvcGVyYXRpb24gcmVxdWlyZXMgcmVhZC93cml0ZSBhY2Nlc3MgdG8gZHBrZyBzdGF0dXMgYXJlYSIpKTsKKyAgICAgIGNzdGF0dXM9IG1zZGJyd19yZWFkb25seTsKKyAgICB9IGVsc2UgeworICAgICAgbW9kc3RhdGRiX2xvY2soKTsKKyAgICAgIGNzdGF0dXM9IChyZWFkd3JpdGVyZXEgPT0gbXNkYnJ3X25lZWRzdXBlcnVzZXJsb2Nrb25seSA/CisgICAgICAgICAgICAgICAgbXNkYnJ3X25lZWRzdXBlcnVzZXJsb2Nrb25seSA6CisgICAgICAgICAgICAgICAgbXNkYnJ3X3dyaXRlKTsKKyAgICB9CisgICAgYnJlYWs7CisgIGNhc2UgbXNkYnJ3X3JlYWRvbmx5OgorICAgIGNzdGF0dXM9IG1zZGJyd19yZWFkb25seTsgYnJlYWs7CisgIGRlZmF1bHQ6CisgICAgaW50ZXJuZXJyKCJ1bmtub3duIG1vZHN0YXRkYl9ydyAnJWQnIiwgcmVhZHdyaXRlcmVxKTsKKyAgfQorCisgIGlmIChjc3RhdHVzICE9IG1zZGJyd19uZWVkc3VwZXJ1c2VybG9ja29ubHkpIHsKKyAgICBjbGVhbnVwZGF0ZXMoKTsKKyAgICBpZiAoY2ZsYWdzID49IG1zZGJyd19hdmFpbGFibGVfcmVhZG9ubHkpCisgICAgICBwYXJzZWRiKGF2YWlsYWJsZWZpbGUsCisgICAgICAgICAgICAgIHBkYl9yZWNvcmRhdmFpbGFibGUgfCBwZGJfcmVqZWN0c3RhdHVzIHwgcGRiX2xheF9wYXJzZXIsCisgICAgICAgICAgICAgIE5VTEwpOworICB9CisKKyAgaWYgKGNzdGF0dXMgPj0gbXNkYnJ3X3dyaXRlKSB7CisgICAgY3JlYXRlaW1wdG1wKCk7CisgICAgdmFyYnVmX2luaXQoJnV2YiwgMTAyNDApOworICB9CisKKyAgdHJpZ19maXh1cF9hd2FpdGVycyhjc3RhdHVzKTsKKyAgdHJpZ19pbmNvcnBvcmF0ZShjc3RhdHVzKTsKKworICByZXR1cm4gY3N0YXR1czsKK30KKwordm9pZCBtb2RzdGF0ZGJfY2hlY2twb2ludCh2b2lkKSB7CisgIGludCBpOworCisgIGFzc2VydChjc3RhdHVzID49IG1zZGJyd193cml0ZSk7CisgIHdyaXRlZGIoc3RhdHVzZmlsZSwgd2RiX211c3Rfc3luYyk7CisKKyAgZm9yIChpPTA7IGk8bmV4dHVwZGF0ZTsgaSsrKSB7CisgICAgc3ByaW50Zih1cGRhdGVmbnJlc3QsIElNUE9SVEFOVEZNVCwgaSk7CisgICAgLyogSGF2ZSB3ZSBtYWRlIGEgcmVhbCBtZXNzPyAqLworICAgIGFzc2VydChzdHJsZW4odXBkYXRlZm5yZXN0KSA8PSBJTVBPUlRBTlRNQVhMRU4pOworICAgIGlmICh1bmxpbmsodXBkYXRlZm5idWYpKQorICAgICAgb2hzaGl0ZShfKCJmYWlsZWQgdG8gcmVtb3ZlIG15IG93biB1cGRhdGUgZmlsZSAlLjI1NXMiKSx1cGRhdGVmbmJ1Zik7CisgIH0KKworICBkaXJfc3luY19wYXRoKHVwZGF0ZXNkaXIpOworCisgIG5leHR1cGRhdGU9IDA7Cit9CisKK3ZvaWQgbW9kc3RhdGRiX3NodXRkb3duKHZvaWQpIHsKKyAgaWYgKGNmbGFncyA+PSBtc2RicndfYXZhaWxhYmxlX3dyaXRlKQorICAgIHdyaXRlZGIoYXZhaWxhYmxlZmlsZSwgd2RiX2R1bXBfYXZhaWxhYmxlKTsKKworICBzd2l0Y2ggKGNzdGF0dXMpIHsKKyAgY2FzZSBtc2Ricndfd3JpdGU6CisgICAgbW9kc3RhdGRiX2NoZWNrcG9pbnQoKTsKKyAgICAvKiBUaWR5IHVwIGEgYml0LCBidXQgZG9uJ3Qgd29ycnkgdG9vIG11Y2ggYWJvdXQgZmFpbHVyZS4gKi8KKyAgICBmY2xvc2UoaW1wb3J0YW50dG1wKTsKKyAgICB1bmxpbmsoaW1wb3J0YW50dG1wZmlsZSk7CisgICAgdmFyYnVmX2Rlc3Ryb3koJnV2Yik7CisgICAgLyogRmFsbCB0aHJvdWdoLiAqLworICBjYXNlIG1zZGJyd19uZWVkc3VwZXJ1c2VybG9ja29ubHk6CisgICAgbW9kc3RhdGRiX3VubG9jaygpOworICBkZWZhdWx0OgorICAgIGJyZWFrOworICB9CisKKyAgbW9kc3RhdGRiX2RvbmUoKTsKK30KKworc3RhdGljIHZvaWQKK21vZHN0YXRkYl9ub3RlX2NvcmUoc3RydWN0IHBrZ2luZm8gKnBrZykKK3sKKyAgYXNzZXJ0KGNzdGF0dXMgPj0gbXNkYnJ3X3dyaXRlKTsKKworICB2YXJidWZfcmVzZXQoJnV2Yik7CisgIHZhcmJ1ZnJlY29yZCgmdXZiLCBwa2csICZwa2ctPmluc3RhbGxlZCk7CisKKyAgaWYgKGZ3cml0ZSh1dmIuYnVmLCAxLCB1dmIudXNlZCwgaW1wb3J0YW50dG1wKSAhPSB1dmIudXNlZCkKKyAgICBvaHNoaXRlKF8oInVuYWJsZSB0byB3cml0ZSB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIpLCBwa2ctPm5hbWUpOworICBpZiAoZmZsdXNoKGltcG9ydGFudHRtcCkpCisgICAgb2hzaGl0ZShfKCJ1bmFibGUgdG8gZmx1c2ggdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciKSwgcGtnLT5uYW1lKTsKKyAgaWYgKGZ0cnVuY2F0ZShmaWxlbm8oaW1wb3J0YW50dG1wKSwgdXZiLnVzZWQpKQorICAgIG9oc2hpdGUoXygidW5hYmxlIHRvIHRydW5jYXRlIGZvciB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIpLCBwa2ctPm5hbWUpOworICBpZiAoZnN5bmMoZmlsZW5vKGltcG9ydGFudHRtcCkpKQorICAgIG9oc2hpdGUoXygidW5hYmxlIHRvIGZzeW5jIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIiksIHBrZy0+bmFtZSk7CisgIGlmIChmY2xvc2UoaW1wb3J0YW50dG1wKSkKKyAgICBvaHNoaXRlKF8oInVuYWJsZSB0byBjbG9zZSB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIpLCBwa2ctPm5hbWUpOworICBzcHJpbnRmKHVwZGF0ZWZucmVzdCwgSU1QT1JUQU5URk1ULCBuZXh0dXBkYXRlKTsKKyAgaWYgKHJlbmFtZShpbXBvcnRhbnR0bXBmaWxlLCB1cGRhdGVmbmJ1ZikpCisgICAgb2hzaGl0ZShfKCJ1bmFibGUgdG8gaW5zdGFsbCB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIpLCBwa2ctPm5hbWUpOworCisgIGRpcl9zeW5jX3BhdGgodXBkYXRlc2Rpcik7CisKKyAgLyogSGF2ZSB3ZSBtYWRlIGEgcmVhbCBtZXNzPyAqLworICBhc3NlcnQoc3RybGVuKHVwZGF0ZWZucmVzdCkgPD0gSU1QT1JUQU5UTUFYTEVOKTsKKworICBuZXh0dXBkYXRlKys7CisKKyAgaWYgKG5leHR1cGRhdGUgPiBNQVhVUERBVEVTKSB7CisgICAgbW9kc3RhdGRiX2NoZWNrcG9pbnQoKTsKKyAgICBuZXh0dXBkYXRlID0gMDsKKyAgfQorCisgIGNyZWF0ZWltcHRtcCgpOworfQorCisvKgorICogTm90ZTogSWYgYW55b25lIHdhbnRzIHRvIHNldCBzb21lIHRyaWdnZXJzLXBlbmRpbmcsIHRoZXkgbXVzdCBhbHNvCisgKiBzZXQgc3RhdHVzIGFwcHJvcHJpYXRlbHksIG9yIHdlIHdpbGwgdW5kbyBpdC4gVGhhdCBpcywgaXQgaXMgbGVnYWwKKyAqIHRvIGNhbGwgdGhpcyB3aGVuIHBrZy0+c3RhdHVzIGFuZCBwa2ctPnRyaWdwZW5kX2hlYWQgZGlzYWdyZWUgYW5kCisgKiBpbiB0aGF0IGNhc2UgcGtnLT5zdGF0dXMgdGFrZXMgcHJlY2VkZW5jZSBhbmQgcGtnLT50cmlncGVuZF9oZWFkCisgKiB3aWxsIGJlIGFkanVzdGVkLgorICovCit2b2lkIG1vZHN0YXRkYl9ub3RlKHN0cnVjdCBwa2dpbmZvICpwa2cpIHsKKyAgc3RydWN0IHRyaWdhdyAqdGE7CisKKyAgb25lcnJfYWJvcnQrKzsKKworICAvKiBDbGVhciBwZW5kaW5nIHRyaWdnZXJzIGhlcmUgc28gdGhhdCBvbmx5IGNvZGUgdGhhdCBzZXRzIHRoZSBzdGF0dXMKKyAgICogdG8gaW50ZXJlc3RpbmcgKGZvciB0cmlnZ2VycykgdmFsdWVzIGhhcyB0byBjYXJlIGFib3V0IHRyaWdnZXJzLiAqLworICBpZiAocGtnLT5zdGF0dXMgIT0gc3RhdF90cmlnZ2Vyc3BlbmRpbmcgJiYKKyAgICAgIHBrZy0+c3RhdHVzICE9IHN0YXRfdHJpZ2dlcnNhd2FpdGVkKQorICAgIHBrZy0+dHJpZ3BlbmRfaGVhZCA9IE5VTEw7CisKKyAgaWYgKHBrZy0+c3RhdHVzIDw9IHN0YXRfY29uZmlnZmlsZXMpIHsKKyAgICBmb3IgKHRhID0gcGtnLT50cmlnYXcuaGVhZDsgdGE7IHRhID0gdGEtPnNhbWVhdy5uZXh0KQorICAgICAgdGEtPmF3ID0gTlVMTDsKKyAgICBwa2ctPnRyaWdhdy5oZWFkID0gcGtnLT50cmlnYXcudGFpbCA9IE5VTEw7CisgIH0KKworICBsb2dfbWVzc2FnZSgic3RhdHVzICVzICVzICVzIiwgc3RhdHVzaW5mb3NbcGtnLT5zdGF0dXNdLm5hbWUsIHBrZy0+bmFtZSwKKwkgICAgICB2ZXJzaW9uZGVzY3JpYmUoJnBrZy0+aW5zdGFsbGVkLnZlcnNpb24sIHZkZXdfbm9uYW1iaWcpKTsKKyAgc3RhdHVzZmRfc2VuZCgic3RhdHVzOiAlczogJXMiLCBwa2ctPm5hbWUsIHN0YXR1c2luZm9zW3BrZy0+c3RhdHVzXS5uYW1lKTsKKworICBpZiAoY3N0YXR1cyA+PSBtc2Ricndfd3JpdGUpCisgICAgbW9kc3RhdGRiX25vdGVfY29yZShwa2cpOworCisgIGlmICghcGtnLT50cmlncGVuZF9oZWFkICYmIHBrZy0+b3RoZXJ0cmlnYXdfaGVhZCkgeworICAgIC8qIEF1dG9tYXRpY2FsbHkgcmVtb3ZlIHVzIGZyb20gb3RoZXIgcGFja2FnZXMnIFRyaWdnZXJzLUF3YWl0ZWQuCisgICAgICogV2UgZG8gdGhpcyBsYXN0IGJlY2F1c2Ugd2Ugd2FudCB0byBtYXhpbWl6ZSBvdXIgY2hhbmNlcyBvZgorICAgICAqIHN1Y2Nlc3NmdWxseSByZWNvcmRpbmcgdGhlIHN0YXR1cyBvZiB0aGUgcGFja2FnZSB3ZSB3ZXJlCisgICAgICogcG9pbnRlZCBhdCBieSBvdXIgY2FsbGVyLCBhbHRob3VnaCB0aGVyZSBpcyBzb21lIHJpc2sgb2YKKyAgICAgKiBsZWF2aW5nIHVzIGluIGEgc2xpZ2h0bHkgb2RkIHNpdHVhdGlvbiB3aGljaCBpcyBjbGVhcmVkIHVwCisgICAgICogYnkgdGhlIHRyaWdnZXIgaGFuZGxpbmcgbG9naWMgaW4gZGVwcG9zc2lfb2tfZm91bmQuICovCisgICAgdHJpZ19jbGVhcl9hd2FpdGVycyhwa2cpOworICB9CisKKyAgb25lcnJfYWJvcnQtLTsKK30KKwordm9pZAorbW9kc3RhdGRiX25vdGVfaWZ3cml0ZShzdHJ1Y3QgcGtnaW5mbyAqcGtnKQoreworICBpZiAoY3N0YXR1cyA+PSBtc2Ricndfd3JpdGUpCisgICAgbW9kc3RhdGRiX25vdGUocGtnKTsKK30KKwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9kZWJ1Zy5jIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9kZWJ1Zy5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjdmZjEyYjMKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL2RlYnVnLmMKQEAgLTAsMCArMSw4NCBAQAorLyoKKyAqIGxpYmRwa2cgLSBEZWJpYW4gcGFja2FnaW5nIHN1aXRlIGxpYnJhcnkgcm91dGluZXMKKyAqIGRlYnVnLmMgLSBkZWJ1Z2dpbmcgc3VwcG9ydAorICoKKyAqIENvcHlyaWdodCDCqSAxOTk1IElhbiBKYWNrc29uIDxpYW5AY2hpYXJrLmdyZWVuZW5kLm9yZy51az4KKyAqIENvcHlyaWdodCDCqSAyMDExIEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZ2lhbj4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworI2luY2x1ZGUgPGNvbmZpZy5oPgorI2luY2x1ZGUgPGNvbXBhdC5oPgorCisjaW5jbHVkZSA8c3RkYXJnLmg+CisjaW5jbHVkZSA8c3RkaW8uaD4KKworI2luY2x1ZGUgPGRwa2cvZGVidWcuaD4KKworc3RhdGljIGludCBkZWJ1Z19tYXNrID0gMDsKK3N0YXRpYyBGSUxFICpkZWJ1Z19vdXRwdXQgPSBOVUxMOworCisvKioKKyAqIFNldCB0aGUgZGVidWdnaW5nIG91dHB1dCBmaWxlLgorICovCit2b2lkCitkZWJ1Z19zZXRfb3V0cHV0KEZJTEUgKm91dHB1dCkKK3sKKwlkZWJ1Z19vdXRwdXQgPSBvdXRwdXQ7Cit9CisKKy8qKgorICogU2V0IHRoZSBkZWJ1Z2dpbmcgbWFzay4KKyAqCisgKiBUaGUgbWFzayBkZXRlcm1pbmVzIHdoYXQgZGVidWdnaW5nIGZsYWdzIGFyZSBnb2luZyB0byB0YWtlIGVmZmVjdCBhdAorICogcnVuLXRpbWUuIFRoZSBvdXRwdXQgd2lsbCBiZSBzZXQgdG8gc3RkZXJyIGlmIGl0IGhhcyBub3QgYmVlbiBzZXQgYmVmb3JlLgorICovCit2b2lkCitkZWJ1Z19zZXRfbWFzayhpbnQgbWFzaykKK3sKKwlkZWJ1Z19tYXNrID0gbWFzazsKKwlpZiAoIWRlYnVnX291dHB1dCkKKwkJZGVidWdfb3V0cHV0ID0gc3RkZXJyOworfQorCisvKioKKyAqIENoZWNrIGlmIGEgZGVidWdnaW5nIGZsYWcgaXMgY3VycmVudGx5IHNldCBvbiB0aGUgZGVidWdnaW5nIG1hc2suCisgKi8KK2Jvb2wKK2RlYnVnX2hhc19mbGFnKGludCBmbGFnKQoreworCXJldHVybiBkZWJ1Z19tYXNrICYgZmxhZzsKK30KKworLyoqCisgKiBPdXRwdXQgYSBkZWJ1Z2dpbmcgbWVzc2FnZS4KKyAqCisgKiBUaGUgbWVzc2FnZSB3aWxsIGJlIHByaW50ZWQgdG8gdGhlIHByZXZpb3VzbHkgc3BlY2lmaWVkIG91dHB1dCBpZiB0aGUKKyAqIHNwZWNpZmllZCBmbGFnIGlzIHByZXNlbnQgaW4gdGhlIGN1cnJlbnQgZGVidWdnaW5nIG1hc2suCisgKi8KK3ZvaWQKK2RlYnVnKGludCBmbGFnLCBjb25zdCBjaGFyICpmbXQsIC4uLikKK3sKKwl2YV9saXN0IGFyZ3M7CisKKwlpZiAoIWRlYnVnX2hhc19mbGFnKGZsYWcpKQorCQlyZXR1cm47CisKKwlmcHJpbnRmKGRlYnVnX291dHB1dCwgIkQwJTA1bzogIiwgZmxhZyk7CisJdmFfc3RhcnQoYXJncywgZm10KTsKKwl2ZnByaW50ZihkZWJ1Z19vdXRwdXQsIGZtdCwgYXJncyk7CisJdmFfZW5kKGFyZ3MpOworCXB1dGMoJ1xuJywgZGVidWdfb3V0cHV0KTsKK30KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvZGVidWcuaCBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvZGVidWcuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yOTFiYzgzCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9kZWJ1Zy5oCkBAIC0wLDAgKzEsNTQgQEAKKy8qCisgKiBsaWJkcGtnIC0gRGViaWFuIHBhY2thZ2luZyBzdWl0ZSBsaWJyYXJ5IHJvdXRpbmVzCisgKiBkZWJ1Zy5oIC0gZGVidWdnaW5nIHN1cHBvcnQKKyAqCisgKiBDb3B5cmlnaHQgwqkgMjAxMSBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmdpYW4+CisgKgorICogVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisgKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAqIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorICovCisKKyNpZm5kZWYgTElCRFBLR19ERUJVR19ICisjZGVmaW5lIExJQkRQS0dfREVCVUdfSAorCisjaW5jbHVkZSA8ZHBrZy9tYWNyb3MuaD4KKworI2luY2x1ZGUgPHN0ZGJvb2wuaD4KKyNpbmNsdWRlIDxzdGRpby5oPgorCitEUEtHX0JFR0lOX0RFQ0xTCisKK2VudW0gZGVidWdmbGFncyB7CisJZGJnX2dlbmVyYWwgPSAwMSwKKwlkYmdfc2NyaXB0cyA9IDAyLAorCWRiZ19lYWNoZmlsZSA9IDAxMCwKKwlkYmdfZWFjaGZpbGVkZXRhaWwgPSAwMTAwLAorCWRiZ19jb25mZiA9IDAyMCwKKwlkYmdfY29uZmZkZXRhaWwgPSAwMjAwLAorCWRiZ19kZXBjb24gPSAwNDAsCisJZGJnX2RlcGNvbmRldGFpbCA9IDA0MDAsCisJZGJnX3Zlcnl2ZXJib3NlID0gMDEwMDAsCisJZGJnX3N0dXBpZGx5dmVyYm9zZSA9IDAyMDAwLAorCWRiZ190cmlnZ2VycyA9IDAxMDAwMCwKKwlkYmdfdHJpZ2dlcnNkZXRhaWwgPSAwMjAwMDAsCisJZGJnX3RyaWdnZXJzc3R1cGlkID0gMDQwMDAwLAorfTsKKwordm9pZCBkZWJ1Z19zZXRfb3V0cHV0KEZJTEUgKm91dHB1dCk7Cit2b2lkIGRlYnVnX3NldF9tYXNrKGludCBtYXNrKTsKK2Jvb2wgZGVidWdfaGFzX2ZsYWcoaW50IGZsYWcpOwordm9pZCBkZWJ1ZyhpbnQgZmxhZywgY29uc3QgY2hhciAqZm10LCAuLi4pIERQS0dfQVRUUl9QUklOVEYoMik7CisKK0RQS0dfRU5EX0RFQ0xTCisKKyNlbmRpZiAvKiBMSUJEUEtHX0RFQlVHX0ggKi8KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvZGlyLmMgYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL2Rpci5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjczZGJiMWQKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL2Rpci5jCkBAIC0wLDAgKzEsMTQ0IEBACisvKgorICogbGliZHBrZyAtIERlYmlhbiBwYWNrYWdpbmcgc3VpdGUgbGlicmFyeSByb3V0aW5lcworICogZGlyLmMgLSBkaXJlY3RvcnkgaGFuZGxpbmcgZnVuY3Rpb25zCisgKgorICogQ29weXJpZ2h0IMKpIDIwMTAgR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaW5jbHVkZSA8Y29uZmlnLmg+CisjaW5jbHVkZSA8Y29tcGF0Lmg+CisKKyNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KKyNpbmNsdWRlIDxzeXMvc3RhdC5oPgorCisjaW5jbHVkZSA8ZmNudGwuaD4KKyNpbmNsdWRlIDxkaXJlbnQuaD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlIDx1bmlzdGQuaD4KKworI2luY2x1ZGUgPGRwa2cvZHBrZy5oPgorI2luY2x1ZGUgPGRwa2cvaTE4bi5oPgorI2luY2x1ZGUgPGRwa2cvZGlyLmg+CisKKy8qKgorICogU3luYyBhIGRpcmVjdG9yeSB0byBkaXNrIGZyb20gYSBESVIgc3RydWN0dXJlLgorICoKKyAqIEBwYXJhbSBkaXIgVGhlIGRpcmVjdG9yeSB0byBzeW5jLgorICogQHBhcmFtIHBhdGggVGhlIG5hbWUgb2YgdGhlIGRpcmVjdG9yeSB0byBzeW5jIChmb3IgZXJyb3IgbWVzc2FnZXMpLgorICovCitzdGF0aWMgdm9pZAorZGlyX3N5bmMoRElSICpkaXIsIGNvbnN0IGNoYXIgKnBhdGgpCit7CisJaW50IGZkOworCisJZmQgPSBkaXJmZChkaXIpOworCWlmIChmZCA8IDApCisJCW9oc2hpdGUoXygidW5hYmxlIHRvIGdldCBmaWxlIGRlc2NyaXB0b3IgZm9yIGRpcmVjdG9yeSAnJXMnIiksCisJCSAgICAgICAgcGF0aCk7CisKKwlpZiAoZnN5bmMoZmQpKQorCQlvaHNoaXRlKF8oInVuYWJsZSB0byBzeW5jIGRpcmVjdG9yeSAnJXMnIiksIHBhdGgpOworfQorCisvKioKKyAqIFN5bmMgYSBkaXJlY3RvcnkgdG8gZGlzayBmcm9tIGEgcGF0aG5hbWUuCisgKgorICogQHBhcmFtIHBhdGggVGhlIG5hbWUgb2YgdGhlIGRpcmVjdG9yeSB0byBzeW5jLgorICovCit2b2lkCitkaXJfc3luY19wYXRoKGNvbnN0IGNoYXIgKnBhdGgpCit7CisJRElSICpkaXI7CisKKwlkaXIgPSBvcGVuZGlyKHBhdGgpOworCWlmICghZGlyKQorCQlvaHNoaXRlKF8oInVuYWJsZSB0byBvcGVuIGRpcmVjdG9yeSAnJXMnIiksIHBhdGgpOworCisJZGlyX3N5bmMoZGlyLCBwYXRoKTsKKworCWNsb3NlZGlyKGRpcik7Cit9CisKKy8qKgorICogU3luYyB0byBkaXNrIHRoZSBwYXJlbnQgZGlyZWN0b3J5IG9mIGEgcGF0aG5hbWUuCisgKgorICogQHBhcmFtIHBhdGggVGhlIGNoaWxkIHBhdGhuYW1lIG9mIHRoZSBkaXJlY3RvcnkgdG8gc3luYy4KKyAqLwordm9pZAorZGlyX3N5bmNfcGF0aF9wYXJlbnQoY29uc3QgY2hhciAqcGF0aCkKK3sKKwljaGFyICpkaXJuYW1lLCAqc2xhc2g7CisKKwlkaXJuYW1lID0gbV9zdHJkdXAocGF0aCk7CisKKwlzbGFzaCA9IHN0cnJjaHIoZGlybmFtZSwgJy8nKTsKKwlpZiAoc2xhc2ggIT0gTlVMTCkgeworCQkqc2xhc2ggPSAnXDAnOworCQlkaXJfc3luY19wYXRoKGRpcm5hbWUpOworCX0KKworCWZyZWUoZGlybmFtZSk7Cit9CisKKy8qIEZJWE1FOiBJZGVhbGx5IHdlJ2QgdXNlIG9wZW5hdCgpIGhlcmUsIHRvIGF2b2lkIHRoZSBwYXRoIG1hbmdsaW5nLCBidXQKKyAqIGl0J3Mgbm90IHdpZGVseSBhdmFpbGFibGUgeWV0LCBzbyB0aGlzIHdpbGwgZG8gZm9yIG5vdy4gKi8KK3N0YXRpYyB2b2lkCitkaXJfZmlsZV9zeW5jKGNvbnN0IGNoYXIgKmRpciwgY29uc3QgY2hhciAqZmlsZW5hbWUpCit7CisJY2hhciAqcGF0aDsKKwlpbnQgZmQ7CisKKwltX2FzcHJpbnRmKCZwYXRoLCAiJXMvJXMiLCBkaXIsIGZpbGVuYW1lKTsKKworCWZkID0gb3BlbihwYXRoLCBPX1dST05MWSk7CisJaWYgKGZkIDwgMCkKKwkJb2hzaGl0ZShfKCJ1bmFibGUgdG8gb3BlbiBmaWxlICclcyciKSwgcGF0aCk7CisJaWYgKGZzeW5jKGZkKSkKKwkJb2hzaGl0ZShfKCJ1bmFibGUgdG8gc3luYyBmaWxlICclcyciKSwgcGF0aCk7CisJaWYgKGNsb3NlKGZkKSkKKwkJb2hzaGl0ZShfKCJ1bmFibGUgdG8gY2xvc2UgZmlsZSAnJXMnIiksIHBhdGgpOworCisJZnJlZShwYXRoKTsKK30KKworLyoqCisgKiBTeW5jIHRvIGRpc2sgdGhlIGNvbnRlbnRzIGFuZCB0aGUgZGlyZWN0b3J5IHNwZWNpZmllZC4KKyAqCisgKiBAcGFyYW0gcGF0aCBUaGUgcGF0aG5hbWUgdG8gc3luYy4KKyAqLwordm9pZAorZGlyX3N5bmNfY29udGVudHMoY29uc3QgY2hhciAqcGF0aCkKK3sKKwlESVIgKmRpcjsKKwlzdHJ1Y3QgZGlyZW50ICpkZW50OworCisJZGlyID0gb3BlbmRpcihwYXRoKTsKKwlpZiAoIWRpcikKKwkJb2hzaGl0ZShfKCJ1bmFibGUgdG8gb3BlbiBkaXJlY3RvcnkgJyVzJyIpLCBwYXRoKTsKKworCXdoaWxlICgoZGVudCA9IHJlYWRkaXIoZGlyKSkgIT0gTlVMTCkgeworCQlpZiAoc3RyY21wKGRlbnQtPmRfbmFtZSwgIi4iKSA9PSAwIHx8CisJCSAgICBzdHJjbXAoZGVudC0+ZF9uYW1lLCAiLi4iKSA9PSAwKQorCQkJY29udGludWU7CisKKwkJZGlyX2ZpbGVfc3luYyhwYXRoLCBkZW50LT5kX25hbWUpOworCX0KKworCWRpcl9zeW5jKGRpciwgcGF0aCk7CisKKwljbG9zZWRpcihkaXIpOworfQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9kaXIuaCBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvZGlyLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYWQ4ZmE4MwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvZGlyLmgKQEAgLTAsMCArMSwzNiBAQAorLyoKKyAqIGxpYmRwa2cgLSBEZWJpYW4gcGFja2FnaW5nIHN1aXRlIGxpYnJhcnkgcm91dGluZXMKKyAqIGRpci5oIC0gZGlyZWN0b3J5IGhhbmRsaW5nIHJvdXRpbmVzCisgKgorICogQ29weXJpZ2h0IMKpIDIwMTAgR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaWZuZGVmIExJQkRQS0dfRElSX0gKKyNkZWZpbmUgTElCRFBLR19ESVJfSAorCisjaW5jbHVkZSA8ZHBrZy9tYWNyb3MuaD4KKworI2luY2x1ZGUgPGRpcmVudC5oPgorCitEUEtHX0JFR0lOX0RFQ0xTCisKK3ZvaWQgZGlyX3N5bmNfcGF0aChjb25zdCBjaGFyICpwYXRoKTsKK3ZvaWQgZGlyX3N5bmNfcGF0aF9wYXJlbnQoY29uc3QgY2hhciAqcGF0aCk7Cit2b2lkIGRpcl9zeW5jX2NvbnRlbnRzKGNvbnN0IGNoYXIgKnBhdGgpOworCitEUEtHX0VORF9ERUNMUworCisjZW5kaWYgLyogTElCRFBLR19ESVJfSCAqLwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9kbGlzdC5oIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9kbGlzdC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjEzZGVmMGIKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL2RsaXN0LmgKQEAgLTAsMCArMSw2NSBAQAorLyoKKyAqIGRsaXN0LmggLSBtYWNyb3MgZm9yIGhhbmRsaW5nIGRvdWJseSBsaW5rZWQgbGlzdHMKKyAqCisgKiBDb3B5cmlnaHQgwqkgMTk5Ny0xOTk5IElhbiBKYWNrc29uIDxpYW5AZGF2ZW5hbnQuZ3JlZW5lbmQub3JnLnVrPgorICoKKyAqIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisgKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworI2lmbmRlZiBBRE5TX0RMSVNUX0hfSU5DTFVERUQKKyNkZWZpbmUgQUROU19ETElTVF9IX0lOQ0xVREVECisKKyNkZWZpbmUgTElTVF9JTklUKGxpc3QpICgobGlzdCkuaGVhZCA9IChsaXN0KS50YWlsID0gTlVMTCkKKyNkZWZpbmUgTElOS19JTklUKGxpbmspICgobGluaykubmV4dCA9IChsaW5rKS5wcmV2ID0gTlVMTCkKKworI2RlZmluZSBMSVNUX1VOTElOS19QQVJUKGxpc3QsIG5vZGUsIHBhcnQpCQkJCVwKKyAgZG8gewkJCQkJCQkJCVwKKyAgICBpZiAoKG5vZGUpLT5wYXJ0IHByZXYpIFwKKyAgICAgIChub2RlKS0+cGFydCBwcmV2LT5wYXJ0IG5leHQgPSAobm9kZSktPnBhcnQgbmV4dDsgXAorICAgIGVsc2UgXAorICAgICAgKGxpc3QpLmhlYWQgPSAobm9kZSktPnBhcnQgbmV4dDsgXAorICAgIGlmICgobm9kZSktPnBhcnQgbmV4dCkgXAorICAgICAgKG5vZGUpLT5wYXJ0IG5leHQtPnBhcnQgcHJldiA9IChub2RlKS0+cGFydCBwcmV2OyBcCisgICAgZWxzZSBcCisgICAgICAobGlzdCkudGFpbCA9IChub2RlKS0+cGFydCBwcmV2OyBcCisgIH0gd2hpbGUgKDApCisKKyNkZWZpbmUgTElTVF9MSU5LX1RBSUxfUEFSVChsaXN0LCBub2RlLCBwYXJ0KQkJXAorICBkbyB7CQkJCQkJCVwKKyAgICAobm9kZSktPnBhcnQgbmV4dCA9IE5VTEw7CQkJCVwKKyAgICAobm9kZSktPnBhcnQgcHJldiA9IChsaXN0KS50YWlsOwkJCVwKKyAgICBpZiAoKGxpc3QpLnRhaWwpIFwKKyAgICAgIChsaXN0KS50YWlsLT5wYXJ0IG5leHQgPSAobm9kZSk7CVwKKyAgICBlbHNlIChsaXN0KS5oZWFkID0gKG5vZGUpOwkJCQlcCisgICAgICAobGlzdCkudGFpbCA9IChub2RlKTsJCQkJXAorICB9IHdoaWxlICgwKQorCisKKyNkZWZpbmUgTElTVF9DSEVDS05PREVfUEFSVChsaXN0LCBub2RlLCBwYXJ0KQkJCQlcCisgIGRvIHsJCQkJCQkJCQlcCisgICAgaWYgKChub2RlKS0+bmV4dCkgXAorICAgICAgYXNzZXJ0KChub2RlKS0+cGFydCBuZXh0LT5wYXJ0IHByZXYgPT0gKG5vZGUpKTsJXAorICAgIGVsc2UgXAorICAgICAgYXNzZXJ0KChub2RlKSA9PSAobGlzdCkudGFpbCk7CQkJCQlcCisgICAgaWYgKChub2RlKS0+cHJldikgXAorICAgICAgYXNzZXJ0KChub2RlKS0+cGFydCBwcmV2LT5wYXJ0IG5leHQgPT0gKG5vZGUpKTsJXAorICAgIGVsc2UgXAorICAgICAgYXNzZXJ0KChub2RlKSA9PSAobGlzdCkuaGVhZCk7CQkJCQlcCisgIH0gd2hpbGUgKDApCisKKyNkZWZpbmUgTElTVF9VTkxJTksobGlzdCwgbm9kZSkgTElTVF9VTkxJTktfUEFSVChsaXN0LCBub2RlLCkKKyNkZWZpbmUgTElTVF9MSU5LX1RBSUwobGlzdCwgbm9kZSkgTElTVF9MSU5LX1RBSUxfUEFSVChsaXN0LCBub2RlLCkKKyNkZWZpbmUgTElTVF9DSEVDS05PREUobGlzdCwgbm9kZSkgTElTVF9DSEVDS05PREVfUEFSVChsaXN0LCBub2RlLCkKKworI2VuZGlmCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL2Rwa2ctZGIuaCBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvZHBrZy1kYi5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjMxYjRjMTMKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL2Rwa2ctZGIuaApAQCAtMCwwICsxLDMzOSBAQAorLyoKKyAqIGxpYmRwa2cgLSBEZWJpYW4gcGFja2FnaW5nIHN1aXRlIGxpYnJhcnkgcm91dGluZXMKKyAqIGRwa2ctZGIuaCAtIGRlY2xhcmF0aW9ucyBmb3IgaW4tY29yZSBwYWNrYWdlIGRhdGFiYXNlIG1hbmFnZW1lbnQKKyAqCisgKiBDb3B5cmlnaHQgwqkgMTk5NCwxOTk1IElhbiBKYWNrc29uIDxpYW5AY2hpYXJrLmdyZWVuZW5kLm9yZy51az4KKyAqIENvcHlyaWdodCDCqSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaWZuZGVmIExJQkRQS0dfRFBLR19EQl9ICisjZGVmaW5lIExJQkRQS0dfRFBLR19EQl9ICisKKyNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KKworI2luY2x1ZGUgPHN0ZGJvb2wuaD4KKyNpbmNsdWRlIDxzdGRpby5oPgorCisjaW5jbHVkZSA8ZHBrZy9tYWNyb3MuaD4KKyNpbmNsdWRlIDxkcGtnL3ZhcmJ1Zi5oPgorI2luY2x1ZGUgPGRwa2cvdmVyc2lvbi5oPgorCitEUEtHX0JFR0lOX0RFQ0xTCisKK2VudW0gZGVwdHlwZSB7CisgIGRlcF9zdWdnZXN0cywKKyAgZGVwX3JlY29tbWVuZHMsCisgIGRlcF9kZXBlbmRzLAorICBkZXBfcHJlZGVwZW5kcywKKyAgZGVwX2JyZWFrcywKKyAgZGVwX2NvbmZsaWN0cywKKyAgZGVwX3Byb3ZpZGVzLAorICBkZXBfcmVwbGFjZXMsCisgIGRlcF9lbmhhbmNlcworfTsKKworZW51bSBkZXB2ZXJyZWwgeworICBkdnJmX2VhcmxpZXI9ICAgICAgMDAwMSwKKyAgZHZyZl9sYXRlcj0gICAgICAgIDAwMDIsCisgIGR2cmZfc3RyaWN0PSAgICAgICAwMDEwLAorICBkdnJmX29yZXF1YWw9ICAgICAgMDAyMCwKKyAgZHZyZl9idWlsdHVwPSAgICAgIDAxMDAsCisgIGR2cl9ub25lPSAgICAgICAgICAwMjAwLAorICBkdnJfZWFybGllcmVxdWFsPSAgZHZyZl9idWlsdHVwIHwgZHZyZl9lYXJsaWVyIHwgZHZyZl9vcmVxdWFsLAorICBkdnJfZWFybGllcnN0cmljdD0gZHZyZl9idWlsdHVwIHwgZHZyZl9lYXJsaWVyIHwgZHZyZl9zdHJpY3QsCisgIGR2cl9sYXRlcmVxdWFsPSAgICBkdnJmX2J1aWx0dXAgfCBkdnJmX2xhdGVyICAgfCBkdnJmX29yZXF1YWwsCisgIGR2cl9sYXRlcnN0cmljdD0gICBkdnJmX2J1aWx0dXAgfCBkdnJmX2xhdGVyICAgfCBkdnJmX3N0cmljdCwKKyAgZHZyX2V4YWN0PSAgICAgICAgIDA0MDAKK307CisKK3N0cnVjdCBkZXBlbmRlbmN5IHsKKyAgc3RydWN0IHBrZ2luZm8gKnVwOworICBzdHJ1Y3QgZGVwZW5kZW5jeSAqbmV4dDsKKyAgc3RydWN0IGRlcHBvc3NpICpsaXN0OworICBlbnVtIGRlcHR5cGUgdHlwZTsKK307CisKK3N0cnVjdCBkZXBwb3NzaSB7CisgIHN0cnVjdCBkZXBlbmRlbmN5ICp1cDsKKyAgc3RydWN0IHBrZ2luZm8gKmVkOworICBzdHJ1Y3QgZGVwcG9zc2kgKm5leHQsICpyZXZfbmV4dCwgKnJldl9wcmV2OworICBzdHJ1Y3QgdmVyc2lvbnJldmlzaW9uIHZlcnNpb247CisgIGVudW0gZGVwdmVycmVsIHZlcnJlbDsKKyAgYm9vbCBjeWNsZWJyZWFrOworfTsKKworc3RydWN0IGFyYml0cmFyeWZpZWxkIHsKKyAgc3RydWN0IGFyYml0cmFyeWZpZWxkICpuZXh0OworICBjb25zdCBjaGFyICpuYW1lOworICBjb25zdCBjaGFyICp2YWx1ZTsKK307CisKK3N0cnVjdCBjb25mZmlsZSB7CisgIHN0cnVjdCBjb25mZmlsZSAqbmV4dDsKKyAgY29uc3QgY2hhciAqbmFtZTsKKyAgY29uc3QgY2hhciAqaGFzaDsKKyAgYm9vbCBvYnNvbGV0ZTsKK307CisKK3N0cnVjdCBmaWxlZGV0YWlscyB7CisgIHN0cnVjdCBmaWxlZGV0YWlscyAqbmV4dDsKKyAgY29uc3QgY2hhciAqbmFtZTsKKyAgY29uc3QgY2hhciAqbXNkb3NuYW1lOworICBjb25zdCBjaGFyICpzaXplOworICBjb25zdCBjaGFyICptZDVzdW07Cit9OworCisvKioKKyAqIE5vZGUgZGVzY3JpYmluZyBhIGJpbmFyeSBwYWNrYWdlIGZpbGUuCisgKgorICogVGhpcyBzdHJ1Y3R1cmUgaG9sZHMgaW5mb3JtYXRpb24gY29udGFpbmVkIG9uIGVhY2ggYmluYXJ5IHBhY2thZ2UuCisgKgorICogTm90ZTogVXN1YWxseSByZWZlcnJlZCBpbiB0aGUgY29kZSBhcyDigJhwaWbigJkgZm9yIGhpc3RvcmljYWwgcmVhc29ucy4KKyAqLworc3RydWN0IHBrZ2JpbiB7CisgIHN0cnVjdCBkZXBlbmRlbmN5ICpkZXBlbmRzOworICBzdHJ1Y3QgZGVwcG9zc2kgKmRlcGVuZGVkOworICAvKiBUaGUg4oCYZXNzZW50aWFs4oCZIGZsYWcsIHRydWUgPSB5ZXMsIGZhbHNlID0gbm8gKGFic2VudCkuICovCisgIGJvb2wgZXNzZW50aWFsOworICBjb25zdCBjaGFyICpkZXNjcmlwdGlvbjsKKyAgY29uc3QgY2hhciAqbWFpbnRhaW5lcjsKKyAgY29uc3QgY2hhciAqc291cmNlOworICBjb25zdCBjaGFyICphcmNoOworICBjb25zdCBjaGFyICppbnN0YWxsZWRzaXplOworICBjb25zdCBjaGFyICpvcmlnaW47CisgIGNvbnN0IGNoYXIgKmJ1Z3M7CisgIHN0cnVjdCB2ZXJzaW9ucmV2aXNpb24gdmVyc2lvbjsKKyAgc3RydWN0IGNvbmZmaWxlICpjb25mZmlsZXM7CisgIHN0cnVjdCBhcmJpdHJhcnlmaWVsZCAqYXJiczsKK307CisKKy8qKgorICogTm9kZSBpbmRpY2F0ZXMgdGhhdCBwYXJlbnQncyBUcmlnZ2Vycy1QZW5kaW5nIG1lbnRpb25zIG5hbWUuCisgKgorICogTm90ZTogVGhlc2Ugbm9kZXMgZG8gZG91YmxlIGR1dHk6IGFmdGVyIHRoZXkncmUgcmVtb3ZlZCBmcm9tIGEgcGFja2FnZSdzCisgKiB0cmlncGVuZCBsaXN0LCByZWZlcmVuY2VzIG1heSBiZSBwcmVzZXJ2ZWQgYnkgdGhlIHRyaWdnZXIgY3ljbGUgY2hlY2tlcgorICogKHNlZSB0cmlncHJvYy5jKS4KKyAqLworc3RydWN0IHRyaWdwZW5kIHsKKyAgc3RydWN0IHRyaWdwZW5kICpuZXh0OworICBjb25zdCBjaGFyICpuYW1lOworfTsKKworLyoqCisgKiBOb2RlIGluZGljYXRlcyB0aGF0IGF3J3MgVHJpZ2dlcnMtQXdhaXRlZCBtZW50aW9ucyBwZW5kLgorICovCitzdHJ1Y3QgdHJpZ2F3IHsKKyAgc3RydWN0IHBrZ2luZm8gKmF3LCAqcGVuZDsKKyAgc3RydWN0IHRyaWdhdyAqc2FtZXBlbmRfbmV4dDsKKyAgc3RydWN0IHsKKyAgICBzdHJ1Y3QgdHJpZ2F3ICpuZXh0LCAqcHJldjsKKyAgfSBzYW1lYXc7Cit9OworCisvKiBOb3RlOiBkc2VsZWN0IGFuZCBkcGtnIGhhdmUgZGlmZmVyZW50IHZlcnNpb25zIG9mIHRoaXMuICovCitzdHJ1Y3QgcGVycGFja2FnZXN0YXRlOworCisvKioKKyAqIE5vZGUgZGVzY3JpYmluZyBhbiBhcmNoaXRlY3R1cmUgcGFja2FnZSBpbnN0YW5jZS4KKyAqCisgKiBUaGlzIHN0cnVjdHVyZSBob2xkcyBzdGF0ZSBpbmZvcm1hdGlvbi4KKyAqCisgKiBOb3RlOiBVc3VhbGx5IHJlZmVycmVkIGluIHRoZSBjb2RlIGFzIHBpZy4KKyAqLworc3RydWN0IHBrZ2luZm8geworICBzdHJ1Y3QgcGtnaW5mbyAqbmV4dDsKKyAgY29uc3QgY2hhciAqbmFtZTsKKyAgZW51bSBwa2d3YW50IHsKKyAgICB3YW50X3Vua25vd24sIHdhbnRfaW5zdGFsbCwgd2FudF9ob2xkLCB3YW50X2RlaW5zdGFsbCwgd2FudF9wdXJnZSwKKyAgICAvKiBOb3QgYWxsb3dlZCBleGNlcHQgYXMgc3BlY2lhbCBzZW50aW5lbCB2YWx1ZSBpbiBzb21lIHBsYWNlcy4gKi8KKyAgICB3YW50X3NlbnRpbmVsLAorICB9IHdhbnQ7CisgIC8qIFRoZSBlcnJvciBmbGFnIGJpdG1hc2suICovCisgIGVudW0gcGtnZWZsYWcgeworICAgIGVmbGFnX29rCQk9IDAsCisgICAgZWZsYWdfcmVpbnN0cmVxCT0gMSwKKyAgfSBlZmxhZzsKKyAgZW51bSBwa2dzdGF0dXMgeworICAgIHN0YXRfbm90aW5zdGFsbGVkLAorICAgIHN0YXRfY29uZmlnZmlsZXMsCisgICAgc3RhdF9oYWxmaW5zdGFsbGVkLAorICAgIHN0YXRfdW5wYWNrZWQsCisgICAgc3RhdF9oYWxmY29uZmlndXJlZCwKKyAgICBzdGF0X3RyaWdnZXJzYXdhaXRlZCwKKyAgICBzdGF0X3RyaWdnZXJzcGVuZGluZywKKyAgICBzdGF0X2luc3RhbGxlZAorICB9IHN0YXR1czsKKyAgZW51bSBwa2dwcmlvcml0eSB7CisgICAgcHJpX3JlcXVpcmVkLAorICAgIHByaV9pbXBvcnRhbnQsCisgICAgcHJpX3N0YW5kYXJkLAorICAgIHByaV9vcHRpb25hbCwKKyAgICBwcmlfZXh0cmEsCisgICAgcHJpX290aGVyLCBwcmlfdW5rbm93biwgcHJpX3Vuc2V0PS0xCisgIH0gcHJpb3JpdHk7CisgIGNvbnN0IGNoYXIgKm90aGVycHJpb3JpdHk7CisgIGNvbnN0IGNoYXIgKnNlY3Rpb247CisgIHN0cnVjdCB2ZXJzaW9ucmV2aXNpb24gY29uZmlndmVyc2lvbjsKKyAgc3RydWN0IGZpbGVkZXRhaWxzICpmaWxlczsKKyAgc3RydWN0IHBrZ2JpbiBpbnN0YWxsZWQ7CisgIHN0cnVjdCBwa2diaW4gYXZhaWxhYmxlOworICBzdHJ1Y3QgcGVycGFja2FnZXN0YXRlICpjbGllbnRkYXRhOworCisgIHN0cnVjdCB7CisgICAgLyogLT5hdyA9PSB0aGlzICovCisgICAgc3RydWN0IHRyaWdhdyAqaGVhZCwgKnRhaWw7CisgIH0gdHJpZ2F3OworCisgIC8qIC0+cGVuZCA9PSB0aGlzLCBub24tTlVMTCBmb3IgdXMgd2hlbiBUcmlnZ2Vycy1QZW5kaW5nLiAqLworICBzdHJ1Y3QgdHJpZ2F3ICpvdGhlcnRyaWdhd19oZWFkOworICBzdHJ1Y3QgdHJpZ3BlbmQgKnRyaWdwZW5kX2hlYWQ7Cit9OworCisvKioqIGZyb20gZGJkaXIuYyAqKiovCisKK2NvbnN0IGNoYXIgKmRwa2dfZGJfc2V0X2Rpcihjb25zdCBjaGFyICpkaXIpOworY29uc3QgY2hhciAqZHBrZ19kYl9nZXRfZGlyKHZvaWQpOworY2hhciAqZHBrZ19kYl9nZXRfcGF0aChjb25zdCBjaGFyICpwYXRocGFydCk7CisKKy8qKiogZnJvbSBkYm1vZGlmeS5jICoqKi8KKworZW51bSBtb2RzdGF0ZGJfcncgeworICAvKiBUaG9zZSBtYXJrZWQgd2l0aCBcKnMqXCBhcmUgcG9zc2libGUgcmV0dXJucyBmcm9tIG1vZHN0YXRkYl9pbml0LiAqLworICBtc2RicndfcmVhZG9ubHkvKnMqLywgbXNkYnJ3X25lZWRzdXBlcnVzZXJsb2Nrb25seS8qcyovLAorICBtc2Ricndfd3JpdGVpZnBvc3MsCisgIG1zZGJyd193cml0ZS8qcyovLCBtc2RicndfbmVlZHN1cGVydXNlciwKKworICAvKiBOb3cgc29tZSBvcHRpb25hbCBmbGFnczogKi8KKyAgbXNkYnJ3X2F2YWlsYWJsZV9tYXNrPSB+MDc3LAorICAvKiBGbGFncyBzdGFydCBhdCAwMTAwLiAqLworICBtc2RicndfYXZhaWxhYmxlX3JlYWRvbmx5ID0gMDEwMCwKKyAgbXNkYnJ3X2F2YWlsYWJsZV93cml0ZSA9IDAyMDAsCit9OworCit2b2lkIG1vZHN0YXRkYl9pbml0KHZvaWQpOwordm9pZCBtb2RzdGF0ZGJfZG9uZSh2b2lkKTsKK2Jvb2wgbW9kc3RhdGRiX2lzX2xvY2tlZCh2b2lkKTsKK2Jvb2wgbW9kc3RhdGRiX2Nhbl9sb2NrKHZvaWQpOwordm9pZCBtb2RzdGF0ZGJfbG9jayh2b2lkKTsKK3ZvaWQgbW9kc3RhdGRiX3VubG9jayh2b2lkKTsKK2VudW0gbW9kc3RhdGRiX3J3IG1vZHN0YXRkYl9vcGVuKGVudW0gbW9kc3RhdGRiX3J3IHJlcXJ3ZmxhZ3MpOwordm9pZCBtb2RzdGF0ZGJfbm90ZShzdHJ1Y3QgcGtnaW5mbyAqcGtnKTsKK3ZvaWQgbW9kc3RhdGRiX25vdGVfaWZ3cml0ZShzdHJ1Y3QgcGtnaW5mbyAqcGtnKTsKK3ZvaWQgbW9kc3RhdGRiX2NoZWNrcG9pbnQodm9pZCk7Cit2b2lkIG1vZHN0YXRkYl9zaHV0ZG93bih2b2lkKTsKKworLyoqKiBmcm9tIGRhdGFiYXNlLmMgKioqLworCit2b2lkIHBrZ19ibGFuayhzdHJ1Y3QgcGtnaW5mbyAqcHApOwordm9pZCBwa2diaW5fYmxhbmsoc3RydWN0IHBrZ2JpbiAqcGlmcCk7Citib29sIHBrZ19pc19pbmZvcm1hdGl2ZShzdHJ1Y3QgcGtnaW5mbyAqcGtnLCBzdHJ1Y3QgcGtnYmluICppbmZvKTsKKworc3RydWN0IHBrZ2luZm8gKnBrZ19kYl9maW5kKGNvbnN0IGNoYXIgKm5hbWUpOworaW50IHBrZ19kYl9jb3VudCh2b2lkKTsKK3ZvaWQgcGtnX2RiX3Jlc2V0KHZvaWQpOworCitzdHJ1Y3QgcGtnaXRlcmF0b3IgKnBrZ19kYl9pdGVyX25ldyh2b2lkKTsKK3N0cnVjdCBwa2dpbmZvICpwa2dfZGJfaXRlcl9uZXh0KHN0cnVjdCBwa2dpdGVyYXRvciAqaXRlcik7Cit2b2lkIHBrZ19kYl9pdGVyX2ZyZWUoc3RydWN0IHBrZ2l0ZXJhdG9yICppdGVyKTsKKwordm9pZCBwa2dfZGJfcmVwb3J0KEZJTEUgKik7CisKKy8qKiogZnJvbSBwYXJzZS5jICoqKi8KKworZW51bSBwYXJzZWRiZmxhZ3MgeworICAvKiBTdG9yZSBpbiDigJhhdmFpbGFibGXigJkgaW4tY29yZSBzdHJ1Y3R1cmVzLCBub3Qg4oCYc3RhdHVz4oCZLiAqLworICBwZGJfcmVjb3JkYXZhaWxhYmxlID0gMDAxLAorICAvKiBUaHJvdyB1cCBhbiBlcnJvciBpZiDigJhTdGF0dXPigJkgZW5jb3VudGVyZWQuICovCisgIHBkYl9yZWplY3RzdGF0dXMgPSAwMDIsCisgIC8qIElnbm9yZSBwcmlvcml0eS9zZWN0aW9uIGluZm8gaWYgd2UgYWxyZWFkeSBoYXZlIGFueS4gKi8KKyAgcGRiX3dlYWtjbGFzc2lmaWNhdGlvbiA9IDAwNCwKKyAgLyogSWdub3JlIGZpbGVzIGluZm8gaWYgd2UgYWxyZWFkeSBoYXZlIHRoZW0uICovCisgIHBkYl9pZ25vcmVmaWxlcyA9IDAxMCwKKyAgLyogSWdub3JlIHBhY2thZ2VzIHdpdGggb2xkZXIgdmVyc2lvbnMgYWxyZWFkeSByZWFkLiAqLworICBwZGJfaWdub3Jlb2xkZXIgPSAwMjAsCisgIC8qIFBlcmZvcm0gbGF4ZXIgdmVyc2lvbiBwYXJzaW5nLiAqLworICBwZGJfbGF4X3ZlcnNpb25fcGFyc2VyID0gMDQwLAorICAvKiBQZXJmb3JtIGxheGVyIHBhcnNpbmcsIHVzZWQgdG8gdHJhbnNpdGlvbiB0byBzdHJpY3RlciBwYXJzaW5nLiAqLworICBwZGJfbGF4X3BhcnNlciA9IHBkYl9sYXhfdmVyc2lvbl9wYXJzZXIsCit9OworCitjb25zdCBjaGFyICpwa2dfbmFtZV9pc19pbGxlZ2FsKGNvbnN0IGNoYXIgKnAsIGNvbnN0IGNoYXIgKiplcCk7CitpbnQgcGFyc2VkYihjb25zdCBjaGFyICpmaWxlbmFtZSwgZW51bSBwYXJzZWRiZmxhZ3MsIHN0cnVjdCBwa2dpbmZvICoqZG9uZXApOwordm9pZCBjb3B5X2RlcGVuZGVuY3lfbGlua3Moc3RydWN0IHBrZ2luZm8gKnBrZywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cnVjdCBkZXBlbmRlbmN5ICoqdXBkYXRlbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3QgZGVwZW5kZW5jeSAqbmV3ZGVwZW5kcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wgYXZhaWxhYmxlKTsKKworLyoqKiBmcm9tIHBhcnNlaGVscC5jICoqKi8KKworI2luY2x1ZGUgPGRwa2cvbmFtZXZhbHVlLmg+CisKK2V4dGVybiBjb25zdCBzdHJ1Y3QgbmFtZXZhbHVlIGJvb2xlYW5pbmZvc1tdOworZXh0ZXJuIGNvbnN0IHN0cnVjdCBuYW1ldmFsdWUgcHJpb3JpdHlpbmZvc1tdOworZXh0ZXJuIGNvbnN0IHN0cnVjdCBuYW1ldmFsdWUgc3RhdHVzaW5mb3NbXTsKK2V4dGVybiBjb25zdCBzdHJ1Y3QgbmFtZXZhbHVlIGVmbGFnaW5mb3NbXTsKK2V4dGVybiBjb25zdCBzdHJ1Y3QgbmFtZXZhbHVlIHdhbnRpbmZvc1tdOworCisjaW5jbHVkZSA8ZHBrZy9lcnJvci5oPgorCitlbnVtIHZlcnNpb25kaXNwbGF5ZXBvY2h3aGVuIHsgdmRld19uZXZlciwgdmRld19ub25hbWJpZywgdmRld19hbHdheXMgfTsKK3ZvaWQgdmFyYnVmdmVyc2lvbihzdHJ1Y3QgdmFyYnVmKiwgY29uc3Qgc3RydWN0IHZlcnNpb25yZXZpc2lvbiosCisgICAgICAgICAgICAgICAgICAgZW51bSB2ZXJzaW9uZGlzcGxheWVwb2Nod2hlbik7CitpbnQgcGFyc2V2ZXJzaW9uKHN0cnVjdCB2ZXJzaW9ucmV2aXNpb24gKnJ2ZXJzaW9uLCBjb25zdCBjaGFyICosCisgICAgICAgICAgICAgICAgIHN0cnVjdCBkcGtnX2Vycm9yICplcnIpOworY29uc3QgY2hhciAqdmVyc2lvbmRlc2NyaWJlKGNvbnN0IHN0cnVjdCB2ZXJzaW9ucmV2aXNpb24qLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVudW0gdmVyc2lvbmRpc3BsYXllcG9jaHdoZW4pOworCisvKioqIGZyb20gZHVtcC5jICoqKi8KKwordm9pZCB3cml0ZXJlY29yZChGSUxFKiwgY29uc3QgY2hhciosCisgICAgICAgICAgICAgICAgIGNvbnN0IHN0cnVjdCBwa2dpbmZvICosIGNvbnN0IHN0cnVjdCBwa2diaW4gKik7CisKK2VudW0gd3JpdGVkYl9mbGFncyB7CisgIC8qIER1bXAg4oCYYXZhaWxhYmxl4oCZIGluLWNvcmUgc3RydWN0dXJlcywgbm90IOKAmHN0YXR1c+KAmS4gKi8KKyAgd2RiX2R1bXBfYXZhaWxhYmxlID0gMDAxLAorICAvKiBNdXN0IHN5bmMgdGhlIHdyaXR0ZW4gZmlsZS4gKi8KKyAgd2RiX211c3Rfc3luYyA9IDAwMiwKK307CisKK3ZvaWQgd3JpdGVkYihjb25zdCBjaGFyICpmaWxlbmFtZSwgZW51bSB3cml0ZWRiX2ZsYWdzIGZsYWdzKTsKKworLyogTm90ZTogVGhlIHZhcmJ1ZnMgbXVzdCBoYXZlIGJlZW4gaW5pdGlhbGl6ZWQgYW5kIHdpbGwgbm90IGJlCisgKiBOVUwtdGVybWluYXRlZC4gKi8KK3ZvaWQgdmFyYnVmcmVjb3JkKHN0cnVjdCB2YXJidWYgKiwgY29uc3Qgc3RydWN0IHBrZ2luZm8gKiwKKyAgICAgICAgICAgICAgICAgIGNvbnN0IHN0cnVjdCBwa2diaW4gKik7Cit2b2lkIHZhcmJ1ZmRlcGVuZGVuY3koc3RydWN0IHZhcmJ1ZiAqdmIsIHN0cnVjdCBkZXBlbmRlbmN5ICpkZXApOworCisvKioqIGZyb20gdmVyY21wLmMgKioqLworCitib29sIHZlcnNpb25zYXRpc2ZpZWQoc3RydWN0IHBrZ2JpbiAqaXQsIHN0cnVjdCBkZXBwb3NzaSAqYWdhaW5zdCk7Citib29sIHZlcnNpb25zYXRpc2ZpZWQzKGNvbnN0IHN0cnVjdCB2ZXJzaW9ucmV2aXNpb24gKml0LAorICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzdHJ1Y3QgdmVyc2lvbnJldmlzaW9uICpyZWYsCisgICAgICAgICAgICAgICAgICAgICAgIGVudW0gZGVwdmVycmVsIHZlcnJlbCk7CitpbnQgdmVyc2lvbmNvbXBhcmUoY29uc3Qgc3RydWN0IHZlcnNpb25yZXZpc2lvbiAqdmVyc2lvbiwKKyAgICAgICAgICAgICAgICAgICBjb25zdCBzdHJ1Y3QgdmVyc2lvbnJldmlzaW9uICpyZWZ2ZXJzaW9uKTsKK2Jvb2wgZXBvY2hzZGlmZmVyKGNvbnN0IHN0cnVjdCB2ZXJzaW9ucmV2aXNpb24gKmEsCisgICAgICAgICAgICAgICAgICBjb25zdCBzdHJ1Y3QgdmVyc2lvbnJldmlzaW9uICpiKTsKKworLyoqKiBmcm9tIG5mbWFsbG9jLmMgKioqLwordm9pZCAqbmZtYWxsb2Moc2l6ZV90KTsKK2NoYXIgKm5mc3Ryc2F2ZShjb25zdCBjaGFyKik7CitjaGFyICpuZnN0cm5zYXZlKGNvbnN0IGNoYXIqLCBzaXplX3QpOwordm9pZCBuZmZyZWVhbGwodm9pZCk7CisKK0RQS0dfRU5EX0RFQ0xTCisKKyNlbmRpZiAvKiBMSUJEUEtHX0RQS0dfREJfSCAqLwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9kcGtnLmggYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL2Rwa2cuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hMjQyNjA2Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9kcGtnLmgKQEAgLTAsMCArMSwxNTMgQEAKKy8qCisgKiBsaWJkcGtnIC0gRGViaWFuIHBhY2thZ2luZyBzdWl0ZSBsaWJyYXJ5IHJvdXRpbmVzCisgKiBkcGtnLmggLSBnZW5lcmFsIGhlYWRlciBmb3IgRGViaWFuIHBhY2thZ2UgaGFuZGxpbmcKKyAqCisgKiBDb3B5cmlnaHQgwqkgMTk5NCwxOTk1IElhbiBKYWNrc29uIDxpYW5AY2hpYXJrLmdyZWVuZW5kLm9yZy51az4KKyAqIENvcHlyaWdodCDCqSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbiA8d2ljaGVydEBkZWJpYW4ub3JnPgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaWZuZGVmIExJQkRQS0dfRFBLR19ICisjZGVmaW5lIExJQkRQS0dfRFBLR19ICisKKyNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KKworI2luY2x1ZGUgPHN0ZGRlZi5oPgorI2luY2x1ZGUgPHN0ZGlvLmg+CisKKyNpbmNsdWRlIDxkcGtnL21hY3Jvcy5oPgorCitEUEtHX0JFR0lOX0RFQ0xTCisKKyNkZWZpbmUgTUFYQ09ORkZJTEVOQU1FICAgICAxMDAwCisjZGVmaW5lIE1BWERJVkVSVEZJTEVOQU1FICAgMTAyNAorI2RlZmluZSBNQVhDT05UUk9MRklMRU5BTUUgIDEwMAorI2RlZmluZSBERUJFWFQgICAgICAgICAgICAgIi5kZWIiCisjZGVmaW5lIE9MRERCRVhUICAgICAgICAgICAiLW9sZCIKKyNkZWZpbmUgTkVXREJFWFQgICAgICAgICAgICItbmV3IgorI2RlZmluZSBSRU1PVkVDT05GRkVYVFMgICAgIn4iLCAiLmJhayIsICIlIiwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgRFBLR1RFTVBFWFQsIERQS0dORVdFWFQsIERQS0dPTERFWFQsIERQS0dESVNURVhUCisKKyNkZWZpbmUgRFBLR19WRVJTSU9OX0FSQ0ggIFBBQ0tBR0VfVkVSU0lPTiAiICgiIEFSQ0hJVEVDVFVSRSAiKSIKKworI2RlZmluZSBORVdDT05GRklMRUZMQUcgICAgIm5ld2NvbmZmaWxlIgorI2RlZmluZSBOT05FWElTVEVOVEZMQUcgICAgIm5vbmV4aXN0ZW50IgorCisjZGVmaW5lIERQS0dURU1QRVhUICAgICAgICAiLmRwa2ctdG1wIgorI2RlZmluZSBEUEtHTkVXRVhUICAgICAgICAgIi5kcGtnLW5ldyIKKyNkZWZpbmUgRFBLR09MREVYVCAgICAgICAgICIuZHBrZy1vbGQiCisjZGVmaW5lIERQS0dESVNURVhUICAgICAgICAiLmRwa2ctZGlzdCIKKworI2RlZmluZSBDT05UUk9MRklMRSAgICAgICAgImNvbnRyb2wiCisjZGVmaW5lIENPTkZGSUxFU0ZJTEUgICAgICAiY29uZmZpbGVzIgorI2RlZmluZSBQUkVJTlNURklMRSAgICAgICAgInByZWluc3QiCisjZGVmaW5lIFBPU1RJTlNURklMRSAgICAgICAicG9zdGluc3QiCisjZGVmaW5lIFBSRVJNRklMRSAgICAgICAgICAicHJlcm0iCisjZGVmaW5lIFBPU1RSTUZJTEUgICAgICAgICAicG9zdHJtIgorI2RlZmluZSBUUklHR0VSU0NJRklMRSAgICAgInRyaWdnZXJzIgorCisjZGVmaW5lIFNUQVRVU0ZJTEUgICAgICAgICJzdGF0dXMiCisjZGVmaW5lIEFWQUlMRklMRSAgICAgICAgICJhdmFpbGFibGUiCisjZGVmaW5lIExPQ0tGSUxFICAgICAgICAgICJsb2NrIgorI2RlZmluZSBESVZFUlNJT05TRklMRSAgICAiZGl2ZXJzaW9ucyIKKyNkZWZpbmUgU1RBVE9WRVJSSURFRklMRSAgInN0YXRvdmVycmlkZSIKKyNkZWZpbmUgVVBEQVRFU0RJUiAgICAgICAgInVwZGF0ZXMvIgorI2RlZmluZSBJTkZPRElSICAgICAgICAgICAiaW5mbyIKKyNkZWZpbmUgVFJJR0dFUlNESVIgICAgICAgInRyaWdnZXJzIgorI2RlZmluZSBUUklHR0VSU0ZJTEVGSUxFICAiRmlsZSIKKyNkZWZpbmUgVFJJR0dFUlNERUZFUlJFREZJTEUgIlVuaW5jb3JwIgorI2RlZmluZSBUUklHR0VSU0xPQ0tGSUxFICAiTG9jayIKKyNkZWZpbmUgQ09OVFJPTERJUlRNUCAgICAgInRtcC5jaSIKKyNkZWZpbmUgSU1QT1JUQU5UVE1QICAgICAgInRtcC5pIgorI2RlZmluZSBSRUFTU0VNQkxFVE1QICAgICAicmVhc3NlbWJsZSIgREVCRVhUCisjZGVmaW5lIElNUE9SVEFOVE1BWExFTiAgICAxMAorI2RlZmluZSBJTVBPUlRBTlRGTVQgICAgICAiJTA0ZCIKKyNkZWZpbmUgTUFYVVBEQVRFUyAgICAgICAgIDI1MAorCisjZGVmaW5lIERFRkFVTFRTSEVMTCAgICAgICAgInNoIgorI2RlZmluZSBERUZBVUxUUEFHRVIgICAgICAgICJwYWdlciIKKworI2RlZmluZSBNRDVIQVNITEVOICAgICAgICAgICAzMgorI2RlZmluZSBNQVhUUklHRElSRUNUSVZFICAgICAyNTYKKworI2RlZmluZSBCQUNLRU5ECQkiZHBrZy1kZWIiCisjZGVmaW5lIFNQTElUVEVSCSJkcGtnLXNwbGl0IgorI2RlZmluZSBEUEtHUVVFUlkJImRwa2ctcXVlcnkiCisjZGVmaW5lIERQS0dESVZFUlQJImRwa2ctZGl2ZXJ0IgorI2RlZmluZSBEUEtHU1RBVAkiZHBrZy1zdGF0b3ZlcnJpZGUiCisjZGVmaW5lIERQS0dUUklHR0VSCSJkcGtnLXRyaWdnZXIiCisjZGVmaW5lIERQS0cJCSJkcGtnIgorI2RlZmluZSBERUJTSUdWRVJJRlkJIi91c3IvYmluL2RlYnNpZy12ZXJpZnkiCisKKyNkZWZpbmUgVEFSCQkidGFyIgorI2RlZmluZSBSTQkJInJtIgorI2RlZmluZSBGSU5ECQkiZmluZCIKKyNkZWZpbmUgRElGRgkJImRpZmYiCisKKyNkZWZpbmUgRklORF9FWFBSU1RBUlRDSEFSUyAiLSgpLCEiCisKKyNpbmNsdWRlIDxkcGtnL3Byb2duYW1lLmg+CisjaW5jbHVkZSA8ZHBrZy9laGFuZGxlLmg+CisKKy8qKiogZnJvbSBzdGFydHVwLmMgKioqLworCisjZGVmaW5lIHN0YW5kYXJkX3N0YXJ0dXAoKSBkbyB7IFwKKyAgcHVzaF9lcnJvcl9jb250ZXh0KCk7IFwKKyAgLyogTWFrZSBzdXJlIGFsbCBvdXIgc3RhdHVzIGRhdGFiYXNlcyBhcmUgcmVhZGFibGUuICovIFwKKyAgdW1hc2soMDIyKTsgXAorfSB3aGlsZSAoMCkKKworI2RlZmluZSBzdGFuZGFyZF9zaHV0ZG93bigpIGRvIHsgXAorICBwb3BfZXJyb3JfY29udGV4dChlaGZsYWdfbm9ybWFsdGlkeSk7IFwKK30gd2hpbGUgKDApCisKKy8qKiogbG9nLmMgKioqLworCitleHRlcm4gY29uc3QgY2hhciAqbG9nX2ZpbGU7Cit2b2lkIGxvZ19tZXNzYWdlKGNvbnN0IGNoYXIgKmZtdCwgLi4uKSBEUEtHX0FUVFJfUFJJTlRGKDEpOworCit2b2lkIHN0YXR1c2ZkX2FkZChpbnQgZmQpOwordm9pZCBzdGF0dXNmZF9zZW5kKGNvbnN0IGNoYXIgKmZtdCwgLi4uKSBEUEtHX0FUVFJfUFJJTlRGKDEpOworCisvKioqIGNsZWFudXAuYyAqKiovCisKK3ZvaWQgY3VfY2xvc2VzdHJlYW0oaW50IGFyZ2MsIHZvaWQgKiphcmd2KTsKK3ZvaWQgY3VfY2xvc2VwaXBlKGludCBhcmdjLCB2b2lkICoqYXJndik7Cit2b2lkIGN1X2Nsb3NlZGlyKGludCBhcmdjLCB2b2lkICoqYXJndik7Cit2b2lkIGN1X2Nsb3NlZmQoaW50IGFyZ2MsIHZvaWQgKiphcmd2KTsKKworLyoqKiBmcm9tIG1saWIuYyAqKiovCisKK3ZvaWQgc2V0Y2xvZXhlYyhpbnQgZmQsIGNvbnN0IGNoYXIqIGZuKTsKK3ZvaWQgKm1fbWFsbG9jKHNpemVfdCk7Cit2b2lkICptX3JlYWxsb2Modm9pZCosIHNpemVfdCk7CitjaGFyICptX3N0cmR1cChjb25zdCBjaGFyICpzdHIpOworaW50IG1fYXNwcmludGYoY2hhciAqKnN0cnAsIGNvbnN0IGNoYXIgKmZtdCwgLi4uKSBEUEtHX0FUVFJfUFJJTlRGKDIpOwordm9pZCBtX2R1cDIoaW50IG9sZGZkLCBpbnQgbmV3ZmQpOwordm9pZCBtX3BpcGUoaW50IGZkc1syXSk7Cit2b2lkIG1fb3V0cHV0KEZJTEUgKmYsIGNvbnN0IGNoYXIgKm5hbWUpOworCisvKioqIGZyb20gdXRpbHMuYyAqKiovCisKK2ludCBjaXNkaWdpdChpbnQgYyk7CitpbnQgY2lzYWxwaGEoaW50IGMpOworaW50IGNpc3NwYWNlKGludCBjKTsKKworaW50IGZnZXRzX2NoZWNrZWQoY2hhciAqYnVmLCBzaXplX3QgYnVmc3osIEZJTEUgKmYsIGNvbnN0IGNoYXIgKmZuKTsKK2ludCBmZ2V0c19tdXN0KGNoYXIgKmJ1Ziwgc2l6ZV90IGJ1ZnN6LCBGSUxFICpmLCBjb25zdCBjaGFyICpmbik7CisKK0RQS0dfRU5EX0RFQ0xTCisKKyNlbmRpZiAvKiBMSUJEUEtHX0RQS0dfSCAqLwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9kdW1wLmMgYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL2R1bXAuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wZTdkNjgyCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9kdW1wLmMKQEAgLTAsMCArMSw0NjYgQEAKKy8qCisgKiBsaWJkcGtnIC0gRGViaWFuIHBhY2thZ2luZyBzdWl0ZSBsaWJyYXJ5IHJvdXRpbmVzCisgKiBkdW1wLmMgLSBjb2RlIHRvIHdyaXRlIGluLWNvcmUgZGF0YWJhc2UgdG8gYSBmaWxlCisgKgorICogQ29weXJpZ2h0IMKpIDE5OTUgSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuZ3JlZW5lbmQub3JnLnVrPgorICogQ29weXJpZ2h0IMKpIDIwMDEgV2ljaGVydCBBa2tlcm1hbgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisvKiBGSVhNRTogRG9uJ3Qgd3JpdGUgdW5pbnRlcmVzdGluZyBwYWNrYWdlcy4gKi8KKworI2luY2x1ZGUgPGNvbmZpZy5oPgorI2luY2x1ZGUgPGNvbXBhdC5oPgorCisjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CisjaW5jbHVkZSA8c3lzL3N0YXQuaD4KKworI2luY2x1ZGUgPGFzc2VydC5oPgorI2luY2x1ZGUgPGVycm5vLmg+CisjaW5jbHVkZSA8Y3R5cGUuaD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDx1bmlzdGQuaD4KKyNpbmNsdWRlIDxzdGRpby5oPgorI2luY2x1ZGUgPHN0ZGxpYi5oPgorI2luY2x1ZGUgPHN0ZGJvb2wuaD4KKworI2luY2x1ZGUgPGRwa2cvaTE4bi5oPgorI2luY2x1ZGUgPGRwa2cvZHBrZy5oPgorI2luY2x1ZGUgPGRwa2cvZHBrZy1kYi5oPgorI2luY2x1ZGUgPGRwa2cvZGlyLmg+CisjaW5jbHVkZSA8ZHBrZy9wYXJzZWR1bXAuaD4KKwordm9pZAord19uYW1lKHN0cnVjdCB2YXJidWYgKnZiLAorICAgICAgIGNvbnN0IHN0cnVjdCBwa2dpbmZvICpwaWdwLCBjb25zdCBzdHJ1Y3QgcGtnYmluICpwaWZwLAorICAgICAgIGVudW0gZndyaXRlZmxhZ3MgZmxhZ3MsIGNvbnN0IHN0cnVjdCBmaWVsZGluZm8gKmZpcCkKK3sKKyAgYXNzZXJ0KHBpZ3AtPm5hbWUpOworICBpZiAoZmxhZ3MmZndfcHJpbnRoZWFkZXIpCisgICAgdmFyYnVmX2FkZF9zdHIodmIsICJQYWNrYWdlOiAiKTsKKyAgdmFyYnVmX2FkZF9zdHIodmIsIHBpZ3AtPm5hbWUpOworICBpZiAoZmxhZ3MmZndfcHJpbnRoZWFkZXIpCisgICAgdmFyYnVmX2FkZF9jaGFyKHZiLCAnXG4nKTsKK30KKwordm9pZAord192ZXJzaW9uKHN0cnVjdCB2YXJidWYgKnZiLAorICAgICAgICAgIGNvbnN0IHN0cnVjdCBwa2dpbmZvICpwaWdwLCBjb25zdCBzdHJ1Y3QgcGtnYmluICpwaWZwLAorICAgICAgICAgIGVudW0gZndyaXRlZmxhZ3MgZmxhZ3MsIGNvbnN0IHN0cnVjdCBmaWVsZGluZm8gKmZpcCkKK3sKKyAgaWYgKCFpbmZvcm1hdGl2ZXZlcnNpb24oJnBpZnAtPnZlcnNpb24pKSByZXR1cm47CisgIGlmIChmbGFncyZmd19wcmludGhlYWRlcikKKyAgICB2YXJidWZfYWRkX3N0cih2YiwgIlZlcnNpb246ICIpOworICB2YXJidWZ2ZXJzaW9uKHZiLCZwaWZwLT52ZXJzaW9uLHZkZXdfbm9uYW1iaWcpOworICBpZiAoZmxhZ3MmZndfcHJpbnRoZWFkZXIpCisgICAgdmFyYnVmX2FkZF9jaGFyKHZiLCAnXG4nKTsKK30KKwordm9pZAord19jb25maWd2ZXJzaW9uKHN0cnVjdCB2YXJidWYgKnZiLAorICAgICAgICAgICAgICAgIGNvbnN0IHN0cnVjdCBwa2dpbmZvICpwaWdwLCBjb25zdCBzdHJ1Y3QgcGtnYmluICpwaWZwLAorICAgICAgICAgICAgICAgIGVudW0gZndyaXRlZmxhZ3MgZmxhZ3MsIGNvbnN0IHN0cnVjdCBmaWVsZGluZm8gKmZpcCkKK3sKKyAgaWYgKHBpZnAgIT0gJnBpZ3AtPmluc3RhbGxlZCkgcmV0dXJuOworICBpZiAoIWluZm9ybWF0aXZldmVyc2lvbigmcGlncC0+Y29uZmlndmVyc2lvbikpIHJldHVybjsKKyAgaWYgKHBpZ3AtPnN0YXR1cyA9PSBzdGF0X2luc3RhbGxlZCB8fAorICAgICAgcGlncC0+c3RhdHVzID09IHN0YXRfbm90aW5zdGFsbGVkIHx8CisgICAgICBwaWdwLT5zdGF0dXMgPT0gc3RhdF90cmlnZ2Vyc3BlbmRpbmcpCisgICAgcmV0dXJuOworICBpZiAoZmxhZ3MmZndfcHJpbnRoZWFkZXIpCisgICAgdmFyYnVmX2FkZF9zdHIodmIsICJDb25maWctVmVyc2lvbjogIik7CisgIHZhcmJ1ZnZlcnNpb24odmIsJnBpZ3AtPmNvbmZpZ3ZlcnNpb24sdmRld19ub25hbWJpZyk7CisgIGlmIChmbGFncyZmd19wcmludGhlYWRlcikKKyAgICB2YXJidWZfYWRkX2NoYXIodmIsICdcbicpOworfQorCit2b2lkCit3X251bGwoc3RydWN0IHZhcmJ1ZiAqdmIsCisgICAgICAgY29uc3Qgc3RydWN0IHBrZ2luZm8gKnBpZ3AsIGNvbnN0IHN0cnVjdCBwa2diaW4gKnBpZnAsCisgICAgICAgZW51bSBmd3JpdGVmbGFncyBmbGFncywgY29uc3Qgc3RydWN0IGZpZWxkaW5mbyAqZmlwKQoreworfQorCit2b2lkCit3X3NlY3Rpb24oc3RydWN0IHZhcmJ1ZiAqdmIsCisgICAgICAgICAgY29uc3Qgc3RydWN0IHBrZ2luZm8gKnBpZ3AsIGNvbnN0IHN0cnVjdCBwa2diaW4gKnBpZnAsCisgICAgICAgICAgZW51bSBmd3JpdGVmbGFncyBmbGFncywgY29uc3Qgc3RydWN0IGZpZWxkaW5mbyAqZmlwKQoreworICBjb25zdCBjaGFyICp2YWx1ZT0gcGlncC0+c2VjdGlvbjsKKyAgaWYgKCF2YWx1ZSB8fCAhKnZhbHVlKSByZXR1cm47CisgIGlmIChmbGFncyZmd19wcmludGhlYWRlcikKKyAgICB2YXJidWZfYWRkX3N0cih2YiwgIlNlY3Rpb246ICIpOworICB2YXJidWZfYWRkX3N0cih2YiwgdmFsdWUpOworICBpZiAoZmxhZ3MmZndfcHJpbnRoZWFkZXIpCisgICAgdmFyYnVmX2FkZF9jaGFyKHZiLCAnXG4nKTsKK30KKwordm9pZAord19jaGFyZmllbGQoc3RydWN0IHZhcmJ1ZiAqdmIsCisgICAgICAgICAgICBjb25zdCBzdHJ1Y3QgcGtnaW5mbyAqcGlncCwgY29uc3Qgc3RydWN0IHBrZ2JpbiAqcGlmcCwKKyAgICAgICAgICAgIGVudW0gZndyaXRlZmxhZ3MgZmxhZ3MsIGNvbnN0IHN0cnVjdCBmaWVsZGluZm8gKmZpcCkKK3sKKyAgY29uc3QgY2hhciAqdmFsdWUgPSBQS0dQRklFTEQocGlmcCwgZmlwLT5pbnRlZ2VyLCBjb25zdCBjaGFyICopOworICBpZiAoIXZhbHVlIHx8ICEqdmFsdWUpIHJldHVybjsKKyAgaWYgKGZsYWdzJmZ3X3ByaW50aGVhZGVyKSB7CisgICAgdmFyYnVmX2FkZF9zdHIodmIsIGZpcC0+bmFtZSk7CisgICAgdmFyYnVmX2FkZF9zdHIodmIsICI6ICIpOworICB9CisgIHZhcmJ1Zl9hZGRfc3RyKHZiLCB2YWx1ZSk7CisgIGlmIChmbGFncyZmd19wcmludGhlYWRlcikKKyAgICB2YXJidWZfYWRkX2NoYXIodmIsICdcbicpOworfQorCit2b2lkCit3X2ZpbGVjaGFyZihzdHJ1Y3QgdmFyYnVmICp2YiwKKyAgICAgICAgICAgIGNvbnN0IHN0cnVjdCBwa2dpbmZvICpwaWdwLCBjb25zdCBzdHJ1Y3QgcGtnYmluICpwaWZwLAorICAgICAgICAgICAgZW51bSBmd3JpdGVmbGFncyBmbGFncywgY29uc3Qgc3RydWN0IGZpZWxkaW5mbyAqZmlwKQoreworICBzdHJ1Y3QgZmlsZWRldGFpbHMgKmZkcDsKKworICBpZiAocGlmcCAhPSAmcGlncC0+YXZhaWxhYmxlKSByZXR1cm47CisgIGZkcD0gcGlncC0+ZmlsZXM7CisgIGlmICghZmRwIHx8ICFGSUxFRkZJRUxEKGZkcCxmaXAtPmludGVnZXIsY29uc3QgY2hhciopKSByZXR1cm47CisKKyAgaWYgKGZsYWdzJmZ3X3ByaW50aGVhZGVyKSB7CisgICAgdmFyYnVmX2FkZF9zdHIodmIsIGZpcC0+bmFtZSk7CisgICAgdmFyYnVmX2FkZF9jaGFyKHZiLCAnOicpOworICB9CisKKyAgd2hpbGUgKGZkcCkgeworICAgIHZhcmJ1Zl9hZGRfY2hhcih2YiwgJyAnKTsKKyAgICB2YXJidWZfYWRkX3N0cih2YiwgRklMRUZGSUVMRChmZHAsIGZpcC0+aW50ZWdlciwgY29uc3QgY2hhciAqKSk7CisgICAgZmRwPSBmZHAtPm5leHQ7CisgIH0KKworICBpZiAoZmxhZ3MmZndfcHJpbnRoZWFkZXIpCisgICAgdmFyYnVmX2FkZF9jaGFyKHZiLCAnXG4nKTsKK30KKwordm9pZAord19ib29sZWFuZGVmbm8oc3RydWN0IHZhcmJ1ZiAqdmIsCisgICAgICAgICAgICAgICBjb25zdCBzdHJ1Y3QgcGtnaW5mbyAqcGlncCwgY29uc3Qgc3RydWN0IHBrZ2JpbiAqcGlmcCwKKyAgICAgICAgICAgICAgIGVudW0gZndyaXRlZmxhZ3MgZmxhZ3MsIGNvbnN0IHN0cnVjdCBmaWVsZGluZm8gKmZpcCkKK3sKKyAgYm9vbCB2YWx1ZSA9IFBLR1BGSUVMRChwaWZwLCBmaXAtPmludGVnZXIsIGJvb2wpOworICBpZiAoIShmbGFncyZmd19wcmludGhlYWRlcikpIHsKKyAgICB2YXJidWZfYWRkX3N0cih2YiwgdmFsdWUgPyAieWVzIiA6ICJubyIpOworICAgIHJldHVybjsKKyAgfQorICBpZiAoIXZhbHVlKSByZXR1cm47CisgIGFzc2VydCh2YWx1ZSA9PSB0cnVlKTsKKyAgdmFyYnVmX2FkZF9zdHIodmIsIGZpcC0+bmFtZSk7CisgIHZhcmJ1Zl9hZGRfc3RyKHZiLCAiOiB5ZXNcbiIpOworfQorCit2b2lkCit3X3ByaW9yaXR5KHN0cnVjdCB2YXJidWYgKnZiLAorICAgICAgICAgICBjb25zdCBzdHJ1Y3QgcGtnaW5mbyAqcGlncCwgY29uc3Qgc3RydWN0IHBrZ2JpbiAqcGlmcCwKKyAgICAgICAgICAgZW51bSBmd3JpdGVmbGFncyBmbGFncywgY29uc3Qgc3RydWN0IGZpZWxkaW5mbyAqZmlwKQoreworICBpZiAocGlncC0+cHJpb3JpdHkgPT0gcHJpX3Vua25vd24pIHJldHVybjsKKyAgYXNzZXJ0KHBpZ3AtPnByaW9yaXR5IDw9IHByaV91bmtub3duKTsKKyAgaWYgKGZsYWdzJmZ3X3ByaW50aGVhZGVyKQorICAgIHZhcmJ1Zl9hZGRfc3RyKHZiLCAiUHJpb3JpdHk6ICIpOworICB2YXJidWZfYWRkX3N0cih2YiwgcGlncC0+cHJpb3JpdHkgPT0gcHJpX290aGVyID8KKyAgICAgICAgICAgICAgICAgICAgIHBpZ3AtPm90aGVycHJpb3JpdHkgOgorICAgICAgICAgICAgICAgICAgICAgcHJpb3JpdHlpbmZvc1twaWdwLT5wcmlvcml0eV0ubmFtZSk7CisgIGlmIChmbGFncyZmd19wcmludGhlYWRlcikKKyAgICB2YXJidWZfYWRkX2NoYXIodmIsICdcbicpOworfQorCit2b2lkCit3X3N0YXR1cyhzdHJ1Y3QgdmFyYnVmICp2YiwKKyAgICAgICAgIGNvbnN0IHN0cnVjdCBwa2dpbmZvICpwaWdwLCBjb25zdCBzdHJ1Y3QgcGtnYmluICpwaWZwLAorICAgICAgICAgZW51bSBmd3JpdGVmbGFncyBmbGFncywgY29uc3Qgc3RydWN0IGZpZWxkaW5mbyAqZmlwKQoreworICBpZiAocGlmcCAhPSAmcGlncC0+aW5zdGFsbGVkKSByZXR1cm47CisgIGFzc2VydChwaWdwLT53YW50IDw9IHdhbnRfcHVyZ2UpOworICBhc3NlcnQocGlncC0+ZWZsYWcgPD0gZWZsYWdfcmVpbnN0cmVxKTsKKworI2RlZmluZSBQRU5EIHBpZ3AtPnRyaWdwZW5kX2hlYWQKKyNkZWZpbmUgQVcgcGlncC0+dHJpZ2F3LmhlYWQKKyAgc3dpdGNoIChwaWdwLT5zdGF0dXMpIHsKKyAgY2FzZSBzdGF0X25vdGluc3RhbGxlZDoKKyAgY2FzZSBzdGF0X2NvbmZpZ2ZpbGVzOgorICAgIGFzc2VydCghUEVORCk7CisgICAgYXNzZXJ0KCFBVyk7CisgICAgYnJlYWs7CisgIGNhc2Ugc3RhdF9oYWxmaW5zdGFsbGVkOgorICBjYXNlIHN0YXRfdW5wYWNrZWQ6CisgIGNhc2Ugc3RhdF9oYWxmY29uZmlndXJlZDoKKyAgICBhc3NlcnQoIVBFTkQpOworICAgIGJyZWFrOworICBjYXNlIHN0YXRfdHJpZ2dlcnNhd2FpdGVkOgorICAgIGFzc2VydChBVyk7CisgICAgYnJlYWs7CisgIGNhc2Ugc3RhdF90cmlnZ2Vyc3BlbmRpbmc6CisgICAgYXNzZXJ0KFBFTkQpOworICAgIGFzc2VydCghQVcpOworICAgIGJyZWFrOworICBjYXNlIHN0YXRfaW5zdGFsbGVkOgorICAgIGFzc2VydCghUEVORCk7CisgICAgYXNzZXJ0KCFBVyk7CisgICAgYnJlYWs7CisgIGRlZmF1bHQ6CisgICAgaW50ZXJuZXJyKCJ1bmtub3duIHBhY2thZ2Ugc3RhdHVzICclZCciLCBwaWdwLT5zdGF0dXMpOworICB9CisjdW5kZWYgUEVORAorI3VuZGVmIEFXCisKKyAgaWYgKGZsYWdzJmZ3X3ByaW50aGVhZGVyKQorICAgIHZhcmJ1Zl9hZGRfc3RyKHZiLCAiU3RhdHVzOiAiKTsKKyAgdmFyYnVmX2FkZF9zdHIodmIsIHdhbnRpbmZvc1twaWdwLT53YW50XS5uYW1lKTsKKyAgdmFyYnVmX2FkZF9jaGFyKHZiLCAnICcpOworICB2YXJidWZfYWRkX3N0cih2YiwgZWZsYWdpbmZvc1twaWdwLT5lZmxhZ10ubmFtZSk7CisgIHZhcmJ1Zl9hZGRfY2hhcih2YiwgJyAnKTsKKyAgdmFyYnVmX2FkZF9zdHIodmIsIHN0YXR1c2luZm9zW3BpZ3AtPnN0YXR1c10ubmFtZSk7CisgIGlmIChmbGFncyZmd19wcmludGhlYWRlcikKKyAgICB2YXJidWZfYWRkX2NoYXIodmIsICdcbicpOworfQorCit2b2lkIHZhcmJ1ZmRlcGVuZGVuY3koc3RydWN0IHZhcmJ1ZiAqdmIsIHN0cnVjdCBkZXBlbmRlbmN5ICpkZXApIHsKKyAgc3RydWN0IGRlcHBvc3NpICpkb3A7CisgIGNvbnN0IGNoYXIgKnBvc3NkZWw7CisKKyAgcG9zc2RlbD0gIiI7CisgIGZvciAoZG9wPSBkZXAtPmxpc3Q7IGRvcDsgZG9wPSBkb3AtPm5leHQpIHsKKyAgICBhc3NlcnQoZG9wLT51cCA9PSBkZXApOworICAgIHZhcmJ1Zl9hZGRfc3RyKHZiLCBwb3NzZGVsKTsKKyAgICBwb3NzZGVsID0gIiB8ICI7CisgICAgdmFyYnVmX2FkZF9zdHIodmIsIGRvcC0+ZWQtPm5hbWUpOworICAgIGlmIChkb3AtPnZlcnJlbCAhPSBkdnJfbm9uZSkgeworICAgICAgdmFyYnVmX2FkZF9zdHIodmIsICIgKCIpOworICAgICAgc3dpdGNoIChkb3AtPnZlcnJlbCkgeworICAgICAgY2FzZSBkdnJfZXhhY3Q6CisgICAgICAgIHZhcmJ1Zl9hZGRfY2hhcih2YiwgJz0nKTsKKyAgICAgICAgYnJlYWs7CisgICAgICBjYXNlIGR2cl9sYXRlcmVxdWFsOgorICAgICAgICB2YXJidWZfYWRkX3N0cih2YiwgIj49Iik7CisgICAgICAgIGJyZWFrOworICAgICAgY2FzZSBkdnJfZWFybGllcmVxdWFsOgorICAgICAgICB2YXJidWZfYWRkX3N0cih2YiwgIjw9Iik7CisgICAgICAgIGJyZWFrOworICAgICAgY2FzZSBkdnJfbGF0ZXJzdHJpY3Q6CisgICAgICAgIHZhcmJ1Zl9hZGRfc3RyKHZiLCAiPj4iKTsKKyAgICAgICAgYnJlYWs7CisgICAgICBjYXNlIGR2cl9lYXJsaWVyc3RyaWN0OgorICAgICAgICB2YXJidWZfYWRkX3N0cih2YiwgIjw8Iik7CisgICAgICAgIGJyZWFrOworICAgICAgZGVmYXVsdDoKKyAgICAgICAgaW50ZXJuZXJyKCJ1bmtub3duIHZlcnJlbCAnJWQnIiwgZG9wLT52ZXJyZWwpOworICAgICAgfQorICAgICAgdmFyYnVmX2FkZF9jaGFyKHZiLCAnICcpOworICAgICAgdmFyYnVmdmVyc2lvbih2YiwmZG9wLT52ZXJzaW9uLHZkZXdfbm9uYW1iaWcpOworICAgICAgdmFyYnVmX2FkZF9jaGFyKHZiLCAnKScpOworICAgIH0KKyAgfQorfQorCit2b2lkCit3X2RlcGVuZGVuY3koc3RydWN0IHZhcmJ1ZiAqdmIsCisgICAgICAgICAgICAgY29uc3Qgc3RydWN0IHBrZ2luZm8gKnBpZ3AsIGNvbnN0IHN0cnVjdCBwa2diaW4gKnBpZnAsCisgICAgICAgICAgICAgZW51bSBmd3JpdGVmbGFncyBmbGFncywgY29uc3Qgc3RydWN0IGZpZWxkaW5mbyAqZmlwKQoreworICBjaGFyIGZuYnVmWzUwXTsKKyAgY29uc3QgY2hhciAqZGVwZGVsOworICBzdHJ1Y3QgZGVwZW5kZW5jeSAqZHlwOworCisgIGlmIChmbGFncyZmd19wcmludGhlYWRlcikKKyAgICBzcHJpbnRmKGZuYnVmLCIlczogIixmaXAtPm5hbWUpOworICBlbHNlCisgICAgZm5idWZbMF0gPSAnXDAnOworCisgIGRlcGRlbD0gZm5idWY7CisgIGZvciAoZHlwPSBwaWZwLT5kZXBlbmRzOyBkeXA7IGR5cD0gZHlwLT5uZXh0KSB7CisgICAgaWYgKGR5cC0+dHlwZSAhPSBmaXAtPmludGVnZXIpIGNvbnRpbnVlOworICAgIGFzc2VydChkeXAtPnVwID09IHBpZ3ApOworICAgIHZhcmJ1Zl9hZGRfc3RyKHZiLCBkZXBkZWwpOworICAgIGRlcGRlbCA9ICIsICI7CisgICAgdmFyYnVmZGVwZW5kZW5jeSh2YixkeXApOworICB9CisgIGlmICgoZmxhZ3MmZndfcHJpbnRoZWFkZXIpICYmIChkZXBkZWwhPWZuYnVmKSkKKyAgICB2YXJidWZfYWRkX2NoYXIodmIsICdcbicpOworfQorCit2b2lkCit3X2NvbmZmaWxlcyhzdHJ1Y3QgdmFyYnVmICp2YiwKKyAgICAgICAgICAgIGNvbnN0IHN0cnVjdCBwa2dpbmZvICpwaWdwLCBjb25zdCBzdHJ1Y3QgcGtnYmluICpwaWZwLAorICAgICAgICAgICAgZW51bSBmd3JpdGVmbGFncyBmbGFncywgY29uc3Qgc3RydWN0IGZpZWxkaW5mbyAqZmlwKQoreworICBzdHJ1Y3QgY29uZmZpbGUgKmk7CisKKyAgaWYgKCFwaWZwLT5jb25mZmlsZXMgfHwgcGlmcCA9PSAmcGlncC0+YXZhaWxhYmxlKQorICAgIHJldHVybjsKKyAgaWYgKGZsYWdzJmZ3X3ByaW50aGVhZGVyKQorICAgIHZhcmJ1Zl9hZGRfc3RyKHZiLCAiQ29uZmZpbGVzOlxuIik7CisgIGZvciAoaT1waWZwLT5jb25mZmlsZXM7IGk7IGk9IGktPm5leHQpIHsKKyAgICBpZiAoaSAhPSBwaWZwLT5jb25mZmlsZXMpCisgICAgICB2YXJidWZfYWRkX2NoYXIodmIsICdcbicpOworICAgIHZhcmJ1Zl9hZGRfY2hhcih2YiwgJyAnKTsKKyAgICB2YXJidWZfYWRkX3N0cih2YiwgaS0+bmFtZSk7CisgICAgdmFyYnVmX2FkZF9jaGFyKHZiLCAnICcpOworICAgIHZhcmJ1Zl9hZGRfc3RyKHZiLCBpLT5oYXNoKTsKKyAgICBpZiAoaS0+b2Jzb2xldGUpCisgICAgICB2YXJidWZfYWRkX3N0cih2YiwgIiBvYnNvbGV0ZSIpOworICB9CisgIGlmIChmbGFncyZmd19wcmludGhlYWRlcikKKyAgICB2YXJidWZfYWRkX2NoYXIodmIsICdcbicpOworfQorCit2b2lkCit3X3RyaWdwZW5kKHN0cnVjdCB2YXJidWYgKnZiLAorICAgICAgICAgICBjb25zdCBzdHJ1Y3QgcGtnaW5mbyAqcGlncCwgY29uc3Qgc3RydWN0IHBrZ2JpbiAqcGlmcCwKKyAgICAgICAgICAgZW51bSBmd3JpdGVmbGFncyBmbGFncywgY29uc3Qgc3RydWN0IGZpZWxkaW5mbyAqZmlwKQoreworICBzdHJ1Y3QgdHJpZ3BlbmQgKnRwOworCisgIGlmIChwaWZwID09ICZwaWdwLT5hdmFpbGFibGUgfHwgIXBpZ3AtPnRyaWdwZW5kX2hlYWQpCisgICAgcmV0dXJuOworCisgIGFzc2VydChwaWdwLT5zdGF0dXMgPj0gc3RhdF90cmlnZ2Vyc2F3YWl0ZWQgJiYKKyAgICAgICAgIHBpZ3AtPnN0YXR1cyA8PSBzdGF0X3RyaWdnZXJzcGVuZGluZyk7CisKKyAgaWYgKGZsYWdzICYgZndfcHJpbnRoZWFkZXIpCisgICAgdmFyYnVmX2FkZF9zdHIodmIsICJUcmlnZ2Vycy1QZW5kaW5nOiIpOworICBmb3IgKHRwID0gcGlncC0+dHJpZ3BlbmRfaGVhZDsgdHA7IHRwID0gdHAtPm5leHQpIHsKKyAgICB2YXJidWZfYWRkX2NoYXIodmIsICcgJyk7CisgICAgdmFyYnVmX2FkZF9zdHIodmIsIHRwLT5uYW1lKTsKKyAgfQorICBpZiAoZmxhZ3MgJiBmd19wcmludGhlYWRlcikKKyAgICB2YXJidWZfYWRkX2NoYXIodmIsICdcbicpOworfQorCit2b2lkCit3X3RyaWdhdyhzdHJ1Y3QgdmFyYnVmICp2YiwKKyAgICAgICAgIGNvbnN0IHN0cnVjdCBwa2dpbmZvICpwaWdwLCBjb25zdCBzdHJ1Y3QgcGtnYmluICpwaWZwLAorICAgICAgICAgZW51bSBmd3JpdGVmbGFncyBmbGFncywgY29uc3Qgc3RydWN0IGZpZWxkaW5mbyAqZmlwKQoreworICBzdHJ1Y3QgdHJpZ2F3ICp0YTsKKworICBpZiAocGlmcCA9PSAmcGlncC0+YXZhaWxhYmxlIHx8ICFwaWdwLT50cmlnYXcuaGVhZCkKKyAgICByZXR1cm47CisKKyAgYXNzZXJ0KHBpZ3AtPnN0YXR1cyA+IHN0YXRfY29uZmlnZmlsZXMgJiYKKyAgICAgICAgIHBpZ3AtPnN0YXR1cyA8PSBzdGF0X3RyaWdnZXJzYXdhaXRlZCk7CisKKyAgaWYgKGZsYWdzICYgZndfcHJpbnRoZWFkZXIpCisgICAgdmFyYnVmX2FkZF9zdHIodmIsICJUcmlnZ2Vycy1Bd2FpdGVkOiIpOworICBmb3IgKHRhID0gcGlncC0+dHJpZ2F3LmhlYWQ7IHRhOyB0YSA9IHRhLT5zYW1lYXcubmV4dCkgeworICAgIHZhcmJ1Zl9hZGRfY2hhcih2YiwgJyAnKTsKKyAgICB2YXJidWZfYWRkX3N0cih2YiwgdGEtPnBlbmQtPm5hbWUpOworICB9CisgIGlmIChmbGFncyAmIGZ3X3ByaW50aGVhZGVyKQorICAgIHZhcmJ1Zl9hZGRfY2hhcih2YiwgJ1xuJyk7Cit9CisKK3ZvaWQKK3ZhcmJ1ZnJlY29yZChzdHJ1Y3QgdmFyYnVmICp2YiwKKyAgICAgICAgICAgICBjb25zdCBzdHJ1Y3QgcGtnaW5mbyAqcGlncCwgY29uc3Qgc3RydWN0IHBrZ2JpbiAqcGlmcCkKK3sKKyAgY29uc3Qgc3RydWN0IGZpZWxkaW5mbyAqZmlwOworICBjb25zdCBzdHJ1Y3QgYXJiaXRyYXJ5ZmllbGQgKmFmcDsKKworICBmb3IgKGZpcD0gZmllbGRpbmZvczsgZmlwLT5uYW1lOyBmaXArKykgeworICAgIGZpcC0+d2NhbGwodmIscGlncCxwaWZwLGZ3X3ByaW50aGVhZGVyLGZpcCk7CisgIH0KKyAgZm9yIChhZnAgPSBwaWZwLT5hcmJzOyBhZnA7IGFmcCA9IGFmcC0+bmV4dCkgeworICAgIHZhcmJ1Zl9hZGRfc3RyKHZiLCBhZnAtPm5hbWUpOworICAgIHZhcmJ1Zl9hZGRfc3RyKHZiLCAiOiAiKTsKKyAgICB2YXJidWZfYWRkX3N0cih2YiwgYWZwLT52YWx1ZSk7CisgICAgdmFyYnVmX2FkZF9jaGFyKHZiLCAnXG4nKTsKKyAgfQorfQorCit2b2lkCit3cml0ZXJlY29yZChGSUxFICpmaWxlLCBjb25zdCBjaGFyICpmaWxlbmFtZSwKKyAgICAgICAgICAgIGNvbnN0IHN0cnVjdCBwa2dpbmZvICpwaWdwLCBjb25zdCBzdHJ1Y3QgcGtnYmluICpwaWZwKQoreworICBzdHJ1Y3QgdmFyYnVmIHZiID0gVkFSQlVGX0lOSVQ7CisKKyAgdmFyYnVmcmVjb3JkKCZ2YixwaWdwLHBpZnApOworICB2YXJidWZfZW5kX3N0cigmdmIpOworICBpZiAoZnB1dHModmIuYnVmLGZpbGUpIDwgMCkKKyAgICBvaHNoaXRlKF8oImZhaWxlZCB0byB3cml0ZSBkZXRhaWxzIG9mIGAlLjUwcycgdG8gYCUuMjUwcyciKSwgcGlncC0+bmFtZSwKKwkgICAgZmlsZW5hbWUpOworICAgdmFyYnVmX2Rlc3Ryb3koJnZiKTsKK30KKwordm9pZAord3JpdGVkYihjb25zdCBjaGFyICpmaWxlbmFtZSwgZW51bSB3cml0ZWRiX2ZsYWdzIGZsYWdzKQoreworICBzdGF0aWMgY2hhciB3cml0ZWJ1Zls4MTkyXTsKKworICBzdHJ1Y3QgcGtnaXRlcmF0b3IgKml0OworICBzdHJ1Y3QgcGtnaW5mbyAqcGlncDsKKyAgc3RydWN0IHBrZ2JpbiAqcGlmcDsKKyAgY2hhciAqb2xkZm4sICpuZXdmbjsKKyAgY29uc3QgY2hhciAqd2hpY2g7CisgIEZJTEUgKmZpbGU7CisgIHN0cnVjdCB2YXJidWYgdmIgPSBWQVJCVUZfSU5JVDsKKyAgaW50IG9sZF91bWFzazsKKworICB3aGljaCA9IChmbGFncyAmIHdkYl9kdW1wX2F2YWlsYWJsZSkgPyAiYXZhaWxhYmxlIiA6ICJzdGF0dXMiOworICBtX2FzcHJpbnRmKCZvbGRmbiwgIiVzJXMiLCBmaWxlbmFtZSwgT0xEREJFWFQpOworICBtX2FzcHJpbnRmKCZuZXdmbiwgIiVzJXMiLCBmaWxlbmFtZSwgTkVXREJFWFQpOworCisgIG9sZF91bWFzayA9IHVtYXNrKDAyMik7CisgIGZpbGU9IGZvcGVuKG5ld2ZuLCJ3Iik7CisgIHVtYXNrKG9sZF91bWFzayk7CisgIGlmICghZmlsZSkKKyAgICBvaHNoaXRlKF8oImZhaWxlZCB0byBvcGVuICclcycgZm9yIHdyaXRpbmcgJXMgZGF0YWJhc2UiKSwgZmlsZW5hbWUsIHdoaWNoKTsKKworICBpZiAoc2V0dmJ1ZihmaWxlLHdyaXRlYnVmLF9JT0ZCRixzaXplb2Yod3JpdGVidWYpKSkKKyAgICBvaHNoaXRlKF8oInVuYWJsZSB0byBzZXQgYnVmZmVyaW5nIG9uICVzIGRhdGFiYXNlIGZpbGUiKSwgd2hpY2gpOworCisgIGl0ID0gcGtnX2RiX2l0ZXJfbmV3KCk7CisgIHdoaWxlICgocGlncCA9IHBrZ19kYl9pdGVyX25leHQoaXQpKSAhPSBOVUxMKSB7CisgICAgcGlmcCA9IChmbGFncyAmIHdkYl9kdW1wX2F2YWlsYWJsZSkgPyAmcGlncC0+YXZhaWxhYmxlIDogJnBpZ3AtPmluc3RhbGxlZDsKKyAgICAvKiBEb24ndCBkdW1wIHJlY29yZHMgd2hpY2ggaGF2ZSBubyB1c2VmdWwgY29udGVudC4gKi8KKyAgICBpZiAoIXBrZ19pc19pbmZvcm1hdGl2ZShwaWdwLCBwaWZwKSkKKyAgICAgIGNvbnRpbnVlOworICAgIHZhcmJ1ZnJlY29yZCgmdmIscGlncCxwaWZwKTsKKyAgICB2YXJidWZfYWRkX2NoYXIoJnZiLCAnXG4nKTsKKyAgICB2YXJidWZfZW5kX3N0cigmdmIpOworICAgIGlmIChmcHV0cyh2Yi5idWYsZmlsZSkgPCAwKQorICAgICAgb2hzaGl0ZShfKCJmYWlsZWQgdG8gd3JpdGUgJXMgZGF0YWJhc2UgcmVjb3JkIGFib3V0ICclLjUwcycgdG8gJyUuMjUwcyciKSwKKyAgICAgICAgICAgICAgd2hpY2gsIHBpZ3AtPm5hbWUsIGZpbGVuYW1lKTsKKyAgICB2YXJidWZfcmVzZXQoJnZiKTsKKyAgfQorICBwa2dfZGJfaXRlcl9mcmVlKGl0KTsKKyAgdmFyYnVmX2Rlc3Ryb3koJnZiKTsKKyAgaWYgKGZsYWdzICYgd2RiX211c3Rfc3luYykgeworICAgIGlmIChmZmx1c2goZmlsZSkpCisgICAgICBvaHNoaXRlKF8oImZhaWxlZCB0byBmbHVzaCAlcyBkYXRhYmFzZSB0byAnJS4yNTBzJyIpLCB3aGljaCwgZmlsZW5hbWUpOworICAgIGlmIChmc3luYyhmaWxlbm8oZmlsZSkpKQorICAgICAgb2hzaGl0ZShfKCJmYWlsZWQgdG8gZnN5bmMgJXMgZGF0YWJhc2UgdG8gJyUuMjUwcyciKSwgd2hpY2gsIGZpbGVuYW1lKTsKKyAgfQorICBpZiAoZmNsb3NlKGZpbGUpKQorICAgIG9oc2hpdGUoXygiZmFpbGVkIHRvIGNsb3NlICclLjI1MHMnIGFmdGVyIHdyaXRpbmcgJXMgZGF0YWJhc2UiKSwKKyAgICAgICAgICAgIGZpbGVuYW1lLCB3aGljaCk7CisgIHVubGluayhvbGRmbik7CisgIGlmIChsaW5rKGZpbGVuYW1lLG9sZGZuKSAmJiBlcnJubyAhPSBFTk9FTlQpCisgICAgb2hzaGl0ZShfKCJmYWlsZWQgdG8gbGluayAnJS4yNTBzJyB0byAnJS4yNTBzJyBmb3IgYmFja3VwIG9mICVzIGRhdGFiYXNlIiksCisgICAgICAgICAgICBmaWxlbmFtZSwgb2xkZm4sIHdoaWNoKTsKKyAgaWYgKHJlbmFtZShuZXdmbixmaWxlbmFtZSkpCisgICAgb2hzaGl0ZShfKCJmYWlsZWQgdG8gaW5zdGFsbCAnJS4yNTBzJyBhcyAnJS4yNTBzJyBjb250YWluaW5nICVzIGRhdGFiYXNlIiksCisgICAgICAgICAgICBuZXdmbiwgZmlsZW5hbWUsIHdoaWNoKTsKKworICBpZiAoZmxhZ3MgJiB3ZGJfbXVzdF9zeW5jKQorICAgIGRpcl9zeW5jX3BhdGhfcGFyZW50KGZpbGVuYW1lKTsKKworICBmcmVlKG5ld2ZuKTsKKyAgZnJlZShvbGRmbik7Cit9CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL2VoYW5kbGUuYyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvZWhhbmRsZS5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmMyZmJkNmYKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL2VoYW5kbGUuYwpAQCAtMCwwICsxLDQyMCBAQAorLyoKKyAqIGxpYmRwa2cgLSBEZWJpYW4gcGFja2FnaW5nIHN1aXRlIGxpYnJhcnkgcm91dGluZXMKKyAqIGVoYW5kbGUuYyAtIGVycm9yIGhhbmRsaW5nCisgKgorICogQ29weXJpZ2h0IMKpIDE5OTQsMTk5NSBJYW4gSmFja3NvbiA8aWFuQGNoaWFyay5ncmVlbmVuZC5vcmcudWs+CisgKgorICogVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisgKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAqIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorICovCisKKyNpbmNsdWRlIDxjb25maWcuaD4KKyNpbmNsdWRlIDxjb21wYXQuaD4KKworI2luY2x1ZGUgPGFzc2VydC5oPgorI2luY2x1ZGUgPGVycm5vLmg+CisjaW5jbHVkZSA8c3RyaW5nLmg+CisjaW5jbHVkZSA8dW5pc3RkLmg+CisjaW5jbHVkZSA8c3RkYXJnLmg+CisjaW5jbHVkZSA8c3RkbGliLmg+CisjaW5jbHVkZSA8c3RkaW8uaD4KKworI2luY2x1ZGUgPGRwa2cvbWFjcm9zLmg+CisjaW5jbHVkZSA8ZHBrZy9pMThuLmg+CisjaW5jbHVkZSA8ZHBrZy9wcm9nbmFtZS5oPgorI2luY2x1ZGUgPGRwa2cvZWhhbmRsZS5oPgorCisvKiA2eDI1NSBmb3IgaW5zZXJ0ZWQgc3RyaW5ncyAoJS4yNTVzICZjIGluIGZtdDsgYW5kICVzIHdpdGggbGltaXRlZCBsZW5ndGggYXJnKQorICogMXgyNTUgZm9yIGNvbnN0YW50IHRleHQKKyAqIDF4MjU1IGZvciBzdHJlcnJvcigpCisgKiBzYW1lIGFnYWluIGp1c3QgaW4gY2FzZS4gKi8KK3N0YXRpYyBjaGFyIGVycm1zZ1s0MDk2XTsKKworLyogSW5jcmVtZW50ZWQgd2hlbiB3ZSBkbyBzb21lIGtpbmQgb2YgZ2VuZXJhbGx5IG5lY2Vzc2FyeSBvcGVyYXRpb24sCisgKiBzbyB0aGF0IGxvb3BzICZjIGtub3cgdG8gcXVpdCBpZiB3ZSB0YWtlIGFuIGVycm9yIGV4aXQuIERlY3JlbWVudGVkCisgKiBhZ2FpbiBhZnRlcndhcmRzLiAqLwordm9sYXRpbGUgaW50IG9uZXJyX2Fib3J0ID0gMDsKKworI2RlZmluZSBOQ0FMTFMgMgorCitzdHJ1Y3QgY2xlYW51cF9lbnRyeSB7CisgIHN0cnVjdCBjbGVhbnVwX2VudHJ5ICpuZXh0OworICBzdHJ1Y3QgeworICAgIGludCBtYXNrOworICAgIHZvaWQgKCpjYWxsKShpbnQgYXJnYywgdm9pZCAqKmFyZ3YpOworICB9IGNhbGxzW05DQUxMU107CisgIGludCBjcG1hc2ssIGNwdmFsdWU7CisgIGludCBhcmdjOworICB2b2lkICphcmd2WzFdOworfTsKKworc3RydWN0IGVycm9yX2NvbnRleHQgeworICBzdHJ1Y3QgZXJyb3JfY29udGV4dCAqbmV4dDsKKworICBlbnVtIHsKKyAgICBoYW5kbGVyX3R5cGVfZnVuYywKKyAgICBoYW5kbGVyX3R5cGVfanVtcCwKKyAgfSBoYW5kbGVyX3R5cGU7CisKKyAgdW5pb24geworICAgIGVycm9yX2hhbmRsZXIgKmZ1bmM7CisgICAgam1wX2J1ZiAqanVtcDsKKyAgfSBoYW5kbGVyOworCisgIHN0cnVjdCBjbGVhbnVwX2VudHJ5ICpjbGVhbnVwczsKKyAgdm9pZCAoKnByaW50ZXJyb3IpKGNvbnN0IGNoYXIgKmVtc2csIGNvbnN0IGNoYXIgKmNvbnRleHRzdHJpbmcpOworICBjb25zdCBjaGFyICpjb250ZXh0c3RyaW5nOworfTsKKworc3RhdGljIHN0cnVjdCBlcnJvcl9jb250ZXh0ICp2b2xhdGlsZSBlY29udGV4dCA9IE5VTEw7CitzdGF0aWMgc3RydWN0IHsKKyAgc3RydWN0IGNsZWFudXBfZW50cnkgY2U7CisgIHZvaWQgKmFyZ3NbMjBdOworfSBlbWVyZ2VuY3k7CisKK3N0YXRpYyB2b2lkIERQS0dfQVRUUl9OT1JFVAorcnVuX2Vycm9yX2hhbmRsZXIodm9pZCkKK3sKKyAgaWYgKG9uZXJyX2Fib3J0KSB7CisgICAgLyogV2UgYXJyaXZlZCBoZXJlIGR1ZSB0byBhIGZhdGFsIGVycm9yIGZyb20gd2hpY2ggd2UgY2Fubm90IHJlY292ZXIsCisgICAgICogYW5kIHRyeWluZyB0byBkbyBzbyB3b3VsZCBtb3N0IHByb2JhYmx5IGdldCB1cyBoZXJlIGFnYWluLiBUaGF0J3MKKyAgICAgKiB3aHkgd2Ugd2lsbCBub3QgdHJ5IHRvIGRvIGFueSBlcnJvciB1bndpbmRpbmcgZWl0aGVyLiBXZSdsbCBqdXN0CisgICAgICogYWJvcnQuIEhvcGVmdWxseSB0aGUgdXNlciBjYW4gZml4IHRoZSBzaXR1YXRpb24gKG91dCBvZiBkaXNrLCBvdXQKKyAgICAgKiBvZiBtZW1vcnksIGV0YykuICovCisgICAgZnByaW50ZihzdGRlcnIsIF8oIiVzOiB1bnJlY292ZXJhYmxlIGZhdGFsIGVycm9yLCBhYm9ydGluZzpcbiAlc1xuIiksCisgICAgICAgICAgICBkcGtnX2dldF9wcm9nbmFtZSgpLCBlcnJtc2cpOworICAgIGV4aXQoMik7CisgIH0KKworICBpZiAoZWNvbnRleHQgPT0gTlVMTCkgeworICAgIGZwcmludGYoc3RkZXJyLCBfKCIlczogb3V0c2lkZSBlcnJvciBjb250ZXh0LCBhYm9ydGluZzpcbiAlc1xuIiksCisgICAgICAgICAgICBkcGtnX2dldF9wcm9nbmFtZSgpLCBlcnJtc2cpOworICAgIGV4aXQoMik7CisgIH0gZWxzZSBpZiAoZWNvbnRleHQtPmhhbmRsZXJfdHlwZSA9PSBoYW5kbGVyX3R5cGVfZnVuYykgeworICAgIGVjb250ZXh0LT5oYW5kbGVyLmZ1bmMoKTsKKyAgICBpbnRlcm5lcnIoImVycm9yIGhhbmRsZXIgcmV0dXJuZWQgdW5leHBlY3RlZGx5ISIpOworICB9IGVsc2UgaWYgKGVjb250ZXh0LT5oYW5kbGVyX3R5cGUgPT0gaGFuZGxlcl90eXBlX2p1bXApIHsKKyAgICBsb25nam1wKCplY29udGV4dC0+aGFuZGxlci5qdW1wLCAxKTsKKyAgfSBlbHNlIHsKKyAgICBpbnRlcm5lcnIoInVua25vd24gZXJyb3IgaGFuZGxlciB0eXBlICVkISIsIGVjb250ZXh0LT5oYW5kbGVyX3R5cGUpOworICB9Cit9CisKK3N0YXRpYyBzdHJ1Y3QgZXJyb3JfY29udGV4dCAqCitlcnJvcl9jb250ZXh0X25ldyh2b2lkKQoreworICBzdHJ1Y3QgZXJyb3JfY29udGV4dCAqbmVjcDsKKworICBuZWNwID0gbWFsbG9jKHNpemVvZihzdHJ1Y3QgZXJyb3JfY29udGV4dCkpOworICBpZiAoIW5lY3ApCisgICAgb2hzaGl0ZShfKCJvdXQgb2YgbWVtb3J5IGZvciBuZXcgZXJyb3IgY29udGV4dCIpKTsKKyAgbmVjcC0+bmV4dD0gZWNvbnRleHQ7CisgIG5lY3AtPmNsZWFudXBzPSBOVUxMOworICBlY29udGV4dD0gbmVjcDsKKworICByZXR1cm4gbmVjcDsKK30KKworc3RhdGljIHZvaWQKK3NldF9lcnJvcl9wcmludGVyKHN0cnVjdCBlcnJvcl9jb250ZXh0ICplYywgZXJyb3JfcHJpbnRlciAqcHJpbnRlcnJvciwKKyAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmNvbnRleHRzdHJpbmcpCit7CisgIGVjLT5wcmludGVycm9yID0gcHJpbnRlcnJvcjsKKyAgZWMtPmNvbnRleHRzdHJpbmcgPSBjb250ZXh0c3RyaW5nOworfQorCitzdGF0aWMgdm9pZAorc2V0X2Z1bmNfaGFuZGxlcihzdHJ1Y3QgZXJyb3JfY29udGV4dCAqZWMsIGVycm9yX2hhbmRsZXIgKmZ1bmMpCit7CisgIGVjLT5oYW5kbGVyX3R5cGUgPSBoYW5kbGVyX3R5cGVfZnVuYzsKKyAgZWMtPmhhbmRsZXIuZnVuYyA9IGZ1bmM7Cit9CisKK3N0YXRpYyB2b2lkCitzZXRfanVtcF9oYW5kbGVyKHN0cnVjdCBlcnJvcl9jb250ZXh0ICplYywgam1wX2J1ZiAqanVtcCkKK3sKKyAgZWMtPmhhbmRsZXJfdHlwZSA9IGhhbmRsZXJfdHlwZV9qdW1wOworICBlYy0+aGFuZGxlci5qdW1wID0ganVtcDsKK30KKwordm9pZAorcHVzaF9lcnJvcl9jb250ZXh0X2Z1bmMoZXJyb3JfaGFuZGxlciAqZnVuYywgZXJyb3JfcHJpbnRlciAqcHJpbnRlcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmNvbnRleHRzdHJpbmcpCit7CisgIHN0cnVjdCBlcnJvcl9jb250ZXh0ICplYzsKKworICBlYyA9IGVycm9yX2NvbnRleHRfbmV3KCk7CisgIHNldF9lcnJvcl9wcmludGVyKGVjLCBwcmludGVycm9yLCBjb250ZXh0c3RyaW5nKTsKKyAgc2V0X2Z1bmNfaGFuZGxlcihlYywgZnVuYyk7CisgIG9uZXJyX2Fib3J0ID0gMDsKK30KKwordm9pZAorcHVzaF9lcnJvcl9jb250ZXh0X2p1bXAoam1wX2J1ZiAqanVtcCwgZXJyb3JfcHJpbnRlciAqcHJpbnRlcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmNvbnRleHRzdHJpbmcpCit7CisgIHN0cnVjdCBlcnJvcl9jb250ZXh0ICplYzsKKworICBlYyA9IGVycm9yX2NvbnRleHRfbmV3KCk7CisgIHNldF9lcnJvcl9wcmludGVyKGVjLCBwcmludGVycm9yLCBjb250ZXh0c3RyaW5nKTsKKyAgc2V0X2p1bXBfaGFuZGxlcihlYywganVtcCk7CisgIG9uZXJyX2Fib3J0ID0gMDsKK30KKwordm9pZAorcHVzaF9lcnJvcl9jb250ZXh0KHZvaWQpCit7CisgIHB1c2hfZXJyb3JfY29udGV4dF9mdW5jKGNhdGNoX2ZhdGFsX2Vycm9yLCBwcmludF9mYXRhbF9lcnJvciwgTlVMTCk7Cit9CisKK3N0YXRpYyB2b2lkCitwcmludF9jbGVhbnVwX2Vycm9yKGNvbnN0IGNoYXIgKmVtc2csIGNvbnN0IGNoYXIgKmNvbnRleHRzdHJpbmcpCit7CisgIGZwcmludGYoc3RkZXJyLCBfKCIlczogZXJyb3Igd2hpbGUgY2xlYW5pbmcgdXA6XG4gJXNcbiIpLAorICAgICAgICAgIGRwa2dfZ2V0X3Byb2duYW1lKCksIGVtc2cpOworfQorCitzdGF0aWMgdm9pZAorcnVuX2NsZWFudXBzKHN0cnVjdCBlcnJvcl9jb250ZXh0ICplY29uLCBpbnQgZmxhZ3NldGluKQoreworICBzdGF0aWMgdm9sYXRpbGUgaW50IHByZXZlbnRyZWN1cnNlPSAwOworICBzdHJ1Y3QgY2xlYW51cF9lbnRyeSAqdm9sYXRpbGUgY2VwOworICBzdHJ1Y3QgY2xlYW51cF9lbnRyeSAqbmNlcDsKKyAgc3RydWN0IGVycm9yX2NvbnRleHQgcmVjdXJzZXJyLCAqb2xkZWNvbnRleHQ7CisgIGptcF9idWYgcmVjdXJzZV9qdW1wOworICB2b2xhdGlsZSBpbnQgaSwgZmxhZ3NldDsKKworICBpZiAoZWNvbi0+cHJpbnRlcnJvcikgZWNvbi0+cHJpbnRlcnJvcihlcnJtc2csZWNvbi0+Y29udGV4dHN0cmluZyk7CisKKyAgaWYgKCsrcHJldmVudHJlY3Vyc2UgPiAzKSB7CisgICAgb25lcnJfYWJvcnQrKzsKKyAgICBmcHJpbnRmKHN0ZGVyciwgXygiJXM6IHRvbyBtYW55IG5lc3RlZCBlcnJvcnMgZHVyaW5nIGVycm9yIHJlY292ZXJ5ISFcbiIpLAorICAgICAgICAgICAgZHBrZ19nZXRfcHJvZ25hbWUoKSk7CisgICAgZmxhZ3NldD0gMDsKKyAgfSBlbHNlIHsKKyAgICBmbGFnc2V0PSBmbGFnc2V0aW47CisgIH0KKyAgY2VwPSBlY29uLT5jbGVhbnVwczsKKyAgb2xkZWNvbnRleHQ9IGVjb250ZXh0OworICB3aGlsZSAoY2VwKSB7CisgICAgZm9yIChpPTA7IGk8TkNBTExTOyBpKyspIHsKKyAgICAgIGlmIChjZXAtPmNhbGxzW2ldLmNhbGwgJiYgY2VwLT5jYWxsc1tpXS5tYXNrICYgZmxhZ3NldCkgeworICAgICAgICBpZiAoc2V0am1wKHJlY3Vyc2VfanVtcCkpIHsKKyAgICAgICAgICBydW5fY2xlYW51cHMoJnJlY3Vyc2VyciwgZWhmbGFnX2JvbWJvdXQgfCBlaGZsYWdfcmVjdXJzaXZlZXJyb3IpOworICAgICAgICB9IGVsc2UgeworICAgICAgICAgIHJlY3Vyc2Vyci5jbGVhbnVwcz0gTlVMTDsKKyAgICAgICAgICByZWN1cnNlcnIubmV4dD0gTlVMTDsKKyAgICAgICAgICBzZXRfZXJyb3JfcHJpbnRlcigmcmVjdXJzZXJyLCBwcmludF9jbGVhbnVwX2Vycm9yLCBOVUxMKTsKKyAgICAgICAgICBzZXRfanVtcF9oYW5kbGVyKCZyZWN1cnNlcnIsICZyZWN1cnNlX2p1bXApOworICAgICAgICAgIGVjb250ZXh0PSAmcmVjdXJzZXJyOworICAgICAgICAgIGNlcC0+Y2FsbHNbaV0uY2FsbChjZXAtPmFyZ2MsY2VwLT5hcmd2KTsKKyAgICAgICAgfQorICAgICAgICBlY29udGV4dD0gb2xkZWNvbnRleHQ7CisgICAgICB9CisgICAgfQorICAgIGZsYWdzZXQgJj0gY2VwLT5jcG1hc2s7CisgICAgZmxhZ3NldCB8PSBjZXAtPmNwdmFsdWU7CisgICAgbmNlcD0gY2VwLT5uZXh0OworICAgIGlmIChjZXAgIT0gJmVtZXJnZW5jeS5jZSkgZnJlZShjZXApOworICAgIGNlcD0gbmNlcDsKKyAgfQorICBwcmV2ZW50cmVjdXJzZS0tOworfQorCisvKioKKyAqIFVud2luZCB0aGUgY3VycmVudCBlcnJvciBjb250ZXh0IGJ5IHJ1bm5pbmcgaXRzIHJlZ2lzdGVyZWQgY2xlYW51cHMuCisgKi8KK3ZvaWQKK3BvcF9lcnJvcl9jb250ZXh0KGludCBmbGFnc2V0KQoreworICBzdHJ1Y3QgZXJyb3JfY29udGV4dCAqdGVjcDsKKworICB0ZWNwPSBlY29udGV4dDsKKyAgZWNvbnRleHQ9IHRlY3AtPm5leHQ7CisKKyAgLyogSWYgd2UgYXJlIGNsZWFuaW5nIHVwIG5vcm1hbGx5LCBkbyBub3QgcHJpbnQgYW55dGhpbmcuICovCisgIGlmIChmbGFnc2V0ICYgZWhmbGFnX25vcm1hbHRpZHkpCisgICAgc2V0X2Vycm9yX3ByaW50ZXIodGVjcCwgTlVMTCwgTlVMTCk7CisgIHJ1bl9jbGVhbnVwcyh0ZWNwLGZsYWdzZXQpOworICBmcmVlKHRlY3ApOworfQorCisvKioKKyAqIFB1c2ggYW4gZXJyb3IgY2xlYW51cCBjaGVja3BvaW50LgorICoKKyAqIFRoaXMgd2lsbCBhcnJhbmdlIHRoYXQgd2hlbiBwb3BfZXJyb3JfY29udGV4dCgpIGlzIGNhbGxlZCwgYWxsIHByZXZpb3VzCisgKiBjbGVhbnVwcyB3aWxsIGJlIGV4ZWN1dGVkIHdpdGgKKyAqICAgZmxhZ3NldCA9IChvcmlnaW5hbF9mbGFnc2V0ICYgbWFzaykgfCB2YWx1ZQorICogd2hlcmUgb3JpZ2luYWxfZmxhZ3NldCBpcyB0aGUgYXJndW1lbnQgdG8gcG9wX2Vycm9yX2NvbnRleHQoKSAoYXMKKyAqIG1vZGlmaWVkIGJ5IGFueSBjaGVja3BvaW50IHdoaWNoIHdhcyBwdXNoZWQgbGF0ZXIpLgorICovCit2b2lkIHB1c2hfY2hlY2twb2ludChpbnQgbWFzaywgaW50IHZhbHVlKSB7CisgIHN0cnVjdCBjbGVhbnVwX2VudHJ5ICpjZXA7CisgIGludCBpOworCisgIGNlcCA9IG1hbGxvYyhzaXplb2Yoc3RydWN0IGNsZWFudXBfZW50cnkpICsgc2l6ZW9mKGNoYXIgKikpOworICBpZiAoY2VwID09IE5VTEwpIHsKKyAgICBvbmVycl9hYm9ydCsrOworICAgIG9oc2hpdGUoXygib3V0IG9mIG1lbW9yeSBmb3IgbmV3IGNsZWFudXAgZW50cnkiKSk7CisgIH0KKworICBmb3IgKGk9MDsgaTxOQ0FMTFM7IGkrKykgeyBjZXAtPmNhbGxzW2ldLmNhbGw9TlVMTDsgY2VwLT5jYWxsc1tpXS5tYXNrPTA7IH0KKyAgY2VwLT5jcG1hc2s9IG1hc2s7IGNlcC0+Y3B2YWx1ZT0gdmFsdWU7CisgIGNlcC0+YXJnYz0gMDsgY2VwLT5hcmd2WzBdPSBOVUxMOworICBjZXAtPm5leHQ9IGVjb250ZXh0LT5jbGVhbnVwczsKKyAgZWNvbnRleHQtPmNsZWFudXBzPSBjZXA7Cit9CisKK3ZvaWQgcHVzaF9jbGVhbnVwKHZvaWQgKCpjYWxsMSkoaW50IGFyZ2MsIHZvaWQgKiphcmd2KSwgaW50IG1hc2sxLAorICAgICAgICAgICAgICAgICAgdm9pZCAoKmNhbGwyKShpbnQgYXJnYywgdm9pZCAqKmFyZ3YpLCBpbnQgbWFzazIsCisgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgbmFyZ3MsIC4uLikgeworICBzdHJ1Y3QgY2xlYW51cF9lbnRyeSAqY2VwOworICB2b2lkICoqYXJndjsKKyAgaW50IGUgPSAwOworICB2YV9saXN0IGFyZ3M7CisKKyAgb25lcnJfYWJvcnQrKzsKKworICBjZXAgPSBtYWxsb2Moc2l6ZW9mKHN0cnVjdCBjbGVhbnVwX2VudHJ5KSArIHNpemVvZihjaGFyICopICogKG5hcmdzICsgMSkpOworICBpZiAoIWNlcCkgeworICAgIGlmIChuYXJncyA+IGFycmF5X2NvdW50KGVtZXJnZW5jeS5hcmdzKSkKKyAgICAgIG9oc2hpdGUoXygib3V0IG9mIG1lbW9yeSBmb3IgbmV3IGNsZWFudXAgZW50cnkgd2l0aCBtYW55IGFyZ3VtZW50cyIpKTsKKyAgICBlPSBlcnJubzsgY2VwPSAmZW1lcmdlbmN5LmNlOworICB9CisgIGNlcC0+Y2FsbHNbMF0uY2FsbD0gY2FsbDE7IGNlcC0+Y2FsbHNbMF0ubWFzaz0gbWFzazE7CisgIGNlcC0+Y2FsbHNbMV0uY2FsbD0gY2FsbDI7IGNlcC0+Y2FsbHNbMV0ubWFzaz0gbWFzazI7CisgIGNlcC0+Y3BtYXNrPX4wOyBjZXAtPmNwdmFsdWU9MDsgY2VwLT5hcmdjPSBuYXJnczsKKyAgdmFfc3RhcnQoYXJncywgbmFyZ3MpOworICBhcmd2ID0gY2VwLT5hcmd2OworICB3aGlsZSAobmFyZ3MtLSA+IDApCisgICAgKmFyZ3YrKyA9IHZhX2FyZyhhcmdzLCB2b2lkICopOworICAqYXJndisrID0gTlVMTDsKKyAgdmFfZW5kKGFyZ3MpOworICBjZXAtPm5leHQ9IGVjb250ZXh0LT5jbGVhbnVwczsKKyAgZWNvbnRleHQtPmNsZWFudXBzPSBjZXA7CisgIGlmIChjZXAgPT0gJmVtZXJnZW5jeS5jZSkgeworICAgIGVycm5vID0gZTsKKyAgICBvaHNoaXRlKF8oIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBjbGVhbnVwIGVudHJ5IikpOworICB9CisKKyAgb25lcnJfYWJvcnQtLTsKK30KKwordm9pZCBwb3BfY2xlYW51cChpbnQgZmxhZ3NldCkgeworICBzdHJ1Y3QgY2xlYW51cF9lbnRyeSAqY2VwOworICBpbnQgaTsKKworICBjZXA9IGVjb250ZXh0LT5jbGVhbnVwczsKKyAgZWNvbnRleHQtPmNsZWFudXBzPSBjZXAtPm5leHQ7CisgIGZvciAoaT0wOyBpPE5DQUxMUzsgaSsrKSB7CisgICAgaWYgKGNlcC0+Y2FsbHNbaV0uY2FsbCAmJiBjZXAtPmNhbGxzW2ldLm1hc2sgJiBmbGFnc2V0KQorICAgICAgY2VwLT5jYWxsc1tpXS5jYWxsKGNlcC0+YXJnYyxjZXAtPmFyZ3YpOworICB9CisgIGlmIChjZXAgIT0gJmVtZXJnZW5jeS5jZSkgZnJlZShjZXApOworfQorCit2b2lkIG9oc2hpdChjb25zdCBjaGFyICpmbXQsIC4uLikgeworICB2YV9saXN0IGFyZ3M7CisKKyAgdmFfc3RhcnQoYXJncywgZm10KTsKKyAgdnNucHJpbnRmKGVycm1zZywgc2l6ZW9mKGVycm1zZyksIGZtdCwgYXJncyk7CisgIHZhX2VuZChhcmdzKTsKKworICBydW5fZXJyb3JfaGFuZGxlcigpOworfQorCisvKioKKyAqIERlZmF1bHQgZmF0YWwgZXJyb3IgaGFuZGxlci4KKyAqCisgKiBUaGlzIGhhbmRsZXIgcGVyZm9ybXMgYWxsIGVycm9yIHVud2luZGluZyBmb3IgdGhlIGN1cnJlbnQgY29udGV4dCwgYW5kCisgKiB0ZXJtaW5hdGVzIHRoZSBwcm9ncmFtIHdpdGggYW4gZXJyb3IgZXhpdCBjb2RlLgorICovCit2b2lkCitjYXRjaF9mYXRhbF9lcnJvcih2b2lkKQoreworICBwb3BfZXJyb3JfY29udGV4dChlaGZsYWdfYm9tYm91dCk7CisgIGV4aXQoMik7Cit9CisKK3ZvaWQKK3ByaW50X2ZhdGFsX2Vycm9yKGNvbnN0IGNoYXIgKmVtc2csIGNvbnN0IGNoYXIgKmNvbnRleHRzdHJpbmcpCit7CisgIGZwcmludGYoc3RkZXJyLCBfKCIlczogZXJyb3I6ICVzXG4iKSwgZHBrZ19nZXRfcHJvZ25hbWUoKSwgZW1zZyk7Cit9CisKK3ZvaWQKK29oc2hpdHYoY29uc3QgY2hhciAqZm10LCB2YV9saXN0IGFyZ3MpCit7CisgIHZzbnByaW50ZihlcnJtc2csIHNpemVvZihlcnJtc2cpLCBmbXQsIGFyZ3MpOworCisgIHJ1bl9lcnJvcl9oYW5kbGVyKCk7Cit9CisKK3ZvaWQgb2hzaGl0ZShjb25zdCBjaGFyICpmbXQsIC4uLikgeworICBpbnQgZTsKKyAgdmFfbGlzdCBhcmdzOworICBjaGFyIGJ1ZlsxMDI0XTsKKworICBlPWVycm5vOworICB2YV9zdGFydChhcmdzLCBmbXQpOworICB2c25wcmludGYoYnVmLCBzaXplb2YoYnVmKSwgZm10LCBhcmdzKTsKKyAgdmFfZW5kKGFyZ3MpOworCisgIHNucHJpbnRmKGVycm1zZywgc2l6ZW9mKGVycm1zZyksICIlczogJXMiLCBidWYsIHN0cmVycm9yKGUpKTsKKworICBydW5fZXJyb3JfaGFuZGxlcigpOworfQorCitzdGF0aWMgaW50IHdhcm5fY291bnQgPSAwOworCitpbnQKK3dhcm5pbmdfZ2V0X2NvdW50KHZvaWQpCit7CisgIHJldHVybiB3YXJuX2NvdW50OworfQorCit2b2lkCit3YXJuaW5ndihjb25zdCBjaGFyICpmbXQsIHZhX2xpc3QgYXJncykKK3sKKyAgY2hhciBidWZbMTAyNF07CisKKyAgd2Fybl9jb3VudCsrOworICB2c25wcmludGYoYnVmLCBzaXplb2YoYnVmKSwgZm10LCBhcmdzKTsKKyAgZnByaW50ZihzdGRlcnIsIF8oIiVzOiB3YXJuaW5nOiAlc1xuIiksIGRwa2dfZ2V0X3Byb2duYW1lKCksIGJ1Zik7Cit9CisKK3ZvaWQKK3dhcm5pbmcoY29uc3QgY2hhciAqZm10LCAuLi4pCit7CisgIHZhX2xpc3QgYXJnczsKKworICB2YV9zdGFydChhcmdzLCBmbXQpOworICB3YXJuaW5ndihmbXQsIGFyZ3MpOworICB2YV9lbmQoYXJncyk7Cit9CisKK3ZvaWQKK2RvX2ludGVybmVycihjb25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSwgY29uc3QgY2hhciAqZm10LCAuLi4pCit7CisgIHZhX2xpc3QgYXJnczsKKyAgY2hhciBidWZbMTAyNF07CisKKyAgdmFfc3RhcnQoYXJncywgZm10KTsKKyAgdnNucHJpbnRmKGJ1Ziwgc2l6ZW9mKGJ1ZiksIGZtdCwgYXJncyk7CisgIHZhX2VuZChhcmdzKTsKKworICBmcHJpbnRmKHN0ZGVyciwgXygiJXM6JXM6JWQ6IGludGVybmFsIGVycm9yOiAlc1xuIiksCisgICAgICAgICAgZHBrZ19nZXRfcHJvZ25hbWUoKSwgZmlsZSwgbGluZSwgYnVmKTsKKworICBhYm9ydCgpOworfQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9laGFuZGxlLmggYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL2VoYW5kbGUuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iNDUwNjQ3Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9laGFuZGxlLmgKQEAgLTAsMCArMSw3NSBAQAorLyoKKyAqIGxpYmRwa2cgLSBEZWJpYW4gcGFja2FnaW5nIHN1aXRlIGxpYnJhcnkgcm91dGluZXMKKyAqIGVoYW5kbGUuaCAtIGVycm9yIGhhbmRsaW5nCisgKgorICogQ29weXJpZ2h0IMKpIDE5OTQsMTk5NSBJYW4gSmFja3NvbiA8aWFuQGNoaWFyay5ncmVlbmVuZC5vcmcudWs+CisgKiBDb3B5cmlnaHQgwqkgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4gPHdpY2hlcnRAZGViaWFuLm9yZz4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworI2lmbmRlZiBMSUJEUEtHX0VIQU5ETEVfSAorI2RlZmluZSBMSUJEUEtHX0VIQU5ETEVfSAorCisjaW5jbHVkZSA8c2V0am1wLmg+CisjaW5jbHVkZSA8c3RkZGVmLmg+CisjaW5jbHVkZSA8c3RkYXJnLmg+CisKKyNpbmNsdWRlIDxkcGtnL21hY3Jvcy5oPgorCitEUEtHX0JFR0lOX0RFQ0xTCisKK2V4dGVybiB2b2xhdGlsZSBpbnQgb25lcnJfYWJvcnQ7CisKK2VudW0geworCWVoZmxhZ19ub3JtYWx0aWR5ID0gMDEsCisJZWhmbGFnX2JvbWJvdXQgPSAwMiwKKwllaGZsYWdfcmVjdXJzaXZlZXJyb3IgPSAwNAorfTsKKwordHlwZWRlZiB2b2lkIGVycm9yX2hhbmRsZXIodm9pZCk7Cit0eXBlZGVmIHZvaWQgZXJyb3JfcHJpbnRlcihjb25zdCBjaGFyICplbXNnLCBjb25zdCBjaGFyICpjb250ZXh0c3RyaW5nKTsKKwordm9pZCBwcmludF9mYXRhbF9lcnJvcihjb25zdCBjaGFyICplbXNnLCBjb25zdCBjaGFyICpjb250ZXh0c3RyaW5nKTsKK3ZvaWQgY2F0Y2hfZmF0YWxfZXJyb3Iodm9pZCk7CisKK3ZvaWQgcHVzaF9lcnJvcl9jb250ZXh0X2p1bXAoam1wX2J1ZiAqamJ1ZnAsIGVycm9yX3ByaW50ZXIgKnByaW50ZXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmNvbnRleHRzdHJpbmcpOwordm9pZCBwdXNoX2Vycm9yX2NvbnRleHRfZnVuYyhlcnJvcl9oYW5kbGVyICpmdW5jLCBlcnJvcl9wcmludGVyICpwcmludGVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpjb250ZXh0c3RyaW5nKTsKK3ZvaWQgcHVzaF9lcnJvcl9jb250ZXh0KHZvaWQpOwordm9pZCBwb3BfZXJyb3JfY29udGV4dChpbnQgZmxhZ3NldCk7CisKK3ZvaWQgcHVzaF9jbGVhbnVwKHZvaWQgKCpmMSkoaW50IGFyZ2MsIHZvaWQgKiphcmd2KSwgaW50IGZsYWdtYXNrMSwKKyAgICAgICAgICAgICAgICAgIHZvaWQgKCpmMikoaW50IGFyZ2MsIHZvaWQgKiphcmd2KSwgaW50IGZsYWdtYXNrMiwKKyAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCBuYXJncywgLi4uKTsKK3ZvaWQgcHVzaF9jaGVja3BvaW50KGludCBtYXNrLCBpbnQgdmFsdWUpOwordm9pZCBwb3BfY2xlYW51cChpbnQgZmxhZ3NldCk7CisKK2ludCB3YXJuaW5nX2dldF9jb3VudCh2b2lkKTsKK3ZvaWQgd2FybmluZ3YoY29uc3QgY2hhciAqZm10LCB2YV9saXN0IGFyZ3MpIERQS0dfQVRUUl9WUFJJTlRGKDEpOwordm9pZCB3YXJuaW5nKGNvbnN0IGNoYXIgKmZtdCwgLi4uKSBEUEtHX0FUVFJfUFJJTlRGKDEpOworCit2b2lkIG9oc2hpdHYoY29uc3QgY2hhciAqZm10LCB2YV9saXN0IGFyZ3MpCisJRFBLR19BVFRSX05PUkVUIERQS0dfQVRUUl9WUFJJTlRGKDEpOwordm9pZCBvaHNoaXQoY29uc3QgY2hhciAqZm10LCAuLi4pIERQS0dfQVRUUl9OT1JFVCBEUEtHX0FUVFJfUFJJTlRGKDEpOwordm9pZCBvaHNoaXRlKGNvbnN0IGNoYXIgKmZtdCwgLi4uKSBEUEtHX0FUVFJfTk9SRVQgRFBLR19BVFRSX1BSSU5URigxKTsKKwordm9pZCBkb19pbnRlcm5lcnIoY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUsIGNvbnN0IGNoYXIgKmZtdCwgLi4uKQorCURQS0dfQVRUUl9OT1JFVCBEUEtHX0FUVFJfUFJJTlRGKDMpOworI2RlZmluZSBpbnRlcm5lcnIoLi4uKSBkb19pbnRlcm5lcnIoX19GSUxFX18sIF9fTElORV9fLCBfX1ZBX0FSR1NfXykKKworRFBLR19FTkRfREVDTFMKKworI2VuZGlmIC8qIExJQkRQS0dfRUhBTkRMRV9IICovCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL2Vycm9yLmMgYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL2Vycm9yLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uY2I3MzZlZgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvZXJyb3IuYwpAQCAtMCwwICsxLDkzIEBACisvKgorICogbGliZHBrZyAtIERlYmlhbiBwYWNrYWdpbmcgc3VpdGUgbGlicmFyeSByb3V0aW5lcworICogZXJyb3IuYyAtIGVycm9yIG1lc3NhZ2UgcmVwb3J0aW5nCisgKgorICogQ29weXJpZ2h0IMKpIDIwMTEgR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaW5jbHVkZSA8Y29uZmlnLmg+CisjaW5jbHVkZSA8Y29tcGF0Lmg+CisKKyNpbmNsdWRlIDxlcnJuby5oPgorI2luY2x1ZGUgPHN0ZGxpYi5oPgorCisjaW5jbHVkZSA8ZHBrZy9kcGtnLmg+CisjaW5jbHVkZSA8ZHBrZy92YXJidWYuaD4KKyNpbmNsdWRlIDxkcGtnL2Vycm9yLmg+CisKK3N0YXRpYyB2b2lkIERQS0dfQVRUUl9WUFJJTlRGKDMpCitkcGtnX2Vycm9yX3NldChzdHJ1Y3QgZHBrZ19lcnJvciAqZXJyLCBpbnQgdHlwZSwgY29uc3QgY2hhciAqZm10LCB2YV9saXN0IGFyZ3MpCit7CisJc3RydWN0IHZhcmJ1ZiBzdHIgPSBWQVJCVUZfSU5JVDsKKworCWlmIChlcnIgPT0gTlVMTCkKKwkJcmV0dXJuOworCisJZXJyLT50eXBlID0gdHlwZTsKKworCXZhcmJ1Zl92cHJpbnRmKCZzdHIsIGZtdCwgYXJncyk7CisJZXJyLT5zdHIgPSBzdHIuYnVmOworfQorCitpbnQKK2Rwa2dfcHV0X3dhcm4oc3RydWN0IGRwa2dfZXJyb3IgKmVyciwgY29uc3QgY2hhciAqZm10LCAuLi4pCit7CisJdmFfbGlzdCBhcmdzOworCisJdmFfc3RhcnQoYXJncywgZm10KTsKKwlkcGtnX2Vycm9yX3NldChlcnIsIERQS0dfTVNHX1dBUk4sIGZtdCwgYXJncyk7CisJdmFfZW5kKGFyZ3MpOworCisJcmV0dXJuIC0xOworfQorCitpbnQKK2Rwa2dfcHV0X2Vycm9yKHN0cnVjdCBkcGtnX2Vycm9yICplcnIsIGNvbnN0IGNoYXIgKmZtdCwgLi4uKQoreworCXZhX2xpc3QgYXJnczsKKworCXZhX3N0YXJ0KGFyZ3MsIGZtdCk7CisJZHBrZ19lcnJvcl9zZXQoZXJyLCBEUEtHX01TR19FUlJPUiwgZm10LCBhcmdzKTsKKwl2YV9lbmQoYXJncyk7CisKKwlyZXR1cm4gLTE7Cit9CisKK2ludAorZHBrZ19wdXRfZXJybm8oc3RydWN0IGRwa2dfZXJyb3IgKmVyciwgY29uc3QgY2hhciAqZm10LCAuLi4pCit7CisJdmFfbGlzdCBhcmdzOworCWNoYXIgKm5ld19mbXQ7CisJaW50IGVycm5vX3NhdmVkID0gZXJybm87CisKKwl2YV9zdGFydChhcmdzLCBmbXQpOworCW1fYXNwcmludGYoJm5ld19mbXQsICIlcyAoJXMpIiwgZm10LCBzdHJlcnJvcihlcnJub19zYXZlZCkpOworCXZhX2VuZChhcmdzKTsKKworCWRwa2dfZXJyb3Jfc2V0KGVyciwgRFBLR19NU0dfRVJST1IsIG5ld19mbXQsIGFyZ3MpOworCisJZnJlZShuZXdfZm10KTsKKworCXJldHVybiAtMTsKK30KKwordm9pZAorZHBrZ19lcnJvcl9kZXN0cm95KHN0cnVjdCBkcGtnX2Vycm9yICplcnIpCit7CisJZXJyLT50eXBlID0gRFBLR19NU0dfTk9ORTsKKwlmcmVlKGVyci0+c3RyKTsKKwllcnItPnN0ciA9IE5VTEw7Cit9CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL2Vycm9yLmggYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL2Vycm9yLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMmYyODVkZgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvZXJyb3IuaApAQCAtMCwwICsxLDQ5IEBACisvKgorICogbGliZHBrZyAtIERlYmlhbiBwYWNrYWdpbmcgc3VpdGUgbGlicmFyeSByb3V0aW5lcworICogZXJyb3IuaCAtIGVycm9yIG1lc3NhZ2UgcmVwb3J0aW5nCisgKgorICogQ29weXJpZ2h0IMKpIDIwMTEgR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaWZuZGVmIExJQkRQS0dfRVJST1JfSAorI2RlZmluZSBMSUJEUEtHX0VSUk9SX0gKKworI2luY2x1ZGUgPGRwa2cvbWFjcm9zLmg+CisKK0RQS0dfQkVHSU5fREVDTFMKKworc3RydWN0IGRwa2dfZXJyb3IgeworCWVudW0gZHBrZ19tc2dfdHlwZSB7CisJCURQS0dfTVNHX05PTkUsCisJCURQS0dfTVNHX1dBUk4sCisJCURQS0dfTVNHX0VSUk9SLAorCX0gdHlwZTsKKworCWNoYXIgKnN0cjsKK307CisKK2ludCBkcGtnX3B1dF93YXJuKHN0cnVjdCBkcGtnX2Vycm9yICplcnIsIGNvbnN0IGNoYXIgKmZtdCwgLi4uKQorCURQS0dfQVRUUl9QUklOVEYoMik7CitpbnQgZHBrZ19wdXRfZXJyb3Ioc3RydWN0IGRwa2dfZXJyb3IgKmVyciwgY29uc3QgY2hhciAqZm10LCAuLi4pCisJRFBLR19BVFRSX1BSSU5URigyKTsKK2ludCBkcGtnX3B1dF9lcnJubyhzdHJ1Y3QgZHBrZ19lcnJvciAqZXJyLCBjb25zdCBjaGFyICpmbXQsIC4uLikKKwlEUEtHX0FUVFJfUFJJTlRGKDIpOworCit2b2lkIGRwa2dfZXJyb3JfZGVzdHJveShzdHJ1Y3QgZHBrZ19lcnJvciAqZXJyKTsKKworRFBLR19FTkRfREVDTFMKKworI2VuZGlmIC8qIExJQkRQS0dfRVJST1JfSCAqLwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9mZGlvLmMgYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL2ZkaW8uYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hM2Y0NmEzCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9mZGlvLmMKQEAgLTAsMCArMSw3NyBAQAorLyoKKyAqIGxpYmRwa2cgLSBEZWJpYW4gcGFja2FnaW5nIHN1aXRlIGxpYnJhcnkgcm91dGluZXMKKyAqIGZkaW8uYyAtIHNhZmUgZmlsZSBkZXNjcmlwdG9yIGJhc2VkIGlucHV0L291dHB1dAorICoKKyAqIENvcHlyaWdodCDCqSAyMDA5LTIwMTAgR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaW5jbHVkZSA8Y29uZmlnLmg+CisjaW5jbHVkZSA8Y29tcGF0Lmg+CisKKyNpbmNsdWRlIDxlcnJuby5oPgorI2luY2x1ZGUgPHVuaXN0ZC5oPgorCisjaW5jbHVkZSA8ZHBrZy9mZGlvLmg+CisKK3NzaXplX3QKK2ZkX3JlYWQoaW50IGZkLCB2b2lkICpidWYsIHNpemVfdCBsZW4pCit7CisJc3NpemVfdCB0b3RhbCA9IDA7CisJY2hhciAqcHRyID0gYnVmOworCisJd2hpbGUgKGxlbiA+IDApIHsKKwkJc3NpemVfdCBuOworCisJCW4gPSByZWFkKGZkLCBwdHIgKyB0b3RhbCwgbGVuKTsKKwkJaWYgKG4gPT0gLTEpIHsKKwkJCWlmIChlcnJubyA9PSBFSU5UUiB8fCBlcnJubyA9PSBFQUdBSU4pCisJCQkJY29udGludWU7CisJCQlyZXR1cm4gdG90YWwgPyAtdG90YWwgOiBuOworCQl9CisJCWlmIChuID09IDApCisJCQlicmVhazsKKworCQl0b3RhbCArPSBuOworCQlsZW4gLT0gbjsKKwl9CisKKwlyZXR1cm4gdG90YWw7Cit9CisKK3NzaXplX3QKK2ZkX3dyaXRlKGludCBmZCwgY29uc3Qgdm9pZCAqYnVmLCBzaXplX3QgbGVuKQoreworCXNzaXplX3QgdG90YWwgPSAwOworCWNvbnN0IGNoYXIgKnB0ciA9IGJ1ZjsKKworCXdoaWxlIChsZW4gPiAwKSB7CisJCXNzaXplX3QgbjsKKworCQluID0gd3JpdGUoZmQsIHB0ciArIHRvdGFsLCBsZW4pOworCQlpZiAobiA9PSAtMSkgeworCQkJaWYgKGVycm5vID09IEVJTlRSIHx8IGVycm5vID09IEVBR0FJTikKKwkJCQljb250aW51ZTsKKwkJCXJldHVybiB0b3RhbCA/IC10b3RhbCA6IG47CisJCX0KKwkJaWYgKG4gPT0gMCkKKwkJCWJyZWFrOworCisJCXRvdGFsICs9IG47CisJCWxlbiAtPSBuOworCX0KKworCXJldHVybiB0b3RhbDsKK30KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvZmRpby5oIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9mZGlvLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZmQ1YmRhYQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvZmRpby5oCkBAIC0wLDAgKzEsMzUgQEAKKy8qCisgKiBsaWJkcGtnIC0gRGViaWFuIHBhY2thZ2luZyBzdWl0ZSBsaWJyYXJ5IHJvdXRpbmVzCisgKiBmZGlvLmggLSBzYWZlIGZpbGUgZGVzY3JpcHRvciBiYXNlZCBpbnB1dC9vdXRwdXQKKyAqCisgKiBDb3B5cmlnaHQgwqkgMjAwOS0yMDEwIEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworI2lmbmRlZiBMSUJEUEtHX0ZESU9fSAorI2RlZmluZSBMSUJEUEtHX0ZESU9fSAorCisjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CisKKyNpbmNsdWRlIDxkcGtnL21hY3Jvcy5oPgorCitEUEtHX0JFR0lOX0RFQ0xTCisKK3NzaXplX3QgZmRfcmVhZChpbnQgZmQsIHZvaWQgKmJ1Ziwgc2l6ZV90IGxlbik7Citzc2l6ZV90IGZkX3dyaXRlKGludCBmZCwgY29uc3Qgdm9pZCAqYnVmLCBzaXplX3QgbGVuKTsKKworRFBLR19FTkRfREVDTFMKKworI2VuZGlmIC8qIExJQkRQS0dfRkRJT19IICovCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL2ZpZWxkcy5jIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9maWVsZHMuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jYzg0NGYxCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9maWVsZHMuYwpAQCAtMCwwICsxLDU3OCBAQAorLyoKKyAqIGxpYmRwa2cgLSBEZWJpYW4gcGFja2FnaW5nIHN1aXRlIGxpYnJhcnkgcm91dGluZXMKKyAqIGZpZWxkcy5jIC0gcGFyc2luZyBvZiBhbGwgdGhlIGRpZmZlcmVudCBmaWVsZHMsIHdoZW4gcmVhZGluZyBpbgorICoKKyAqIENvcHlyaWdodCDCqSAxOTk1IElhbiBKYWNrc29uIDxpYW5AY2hpYXJrLmdyZWVuZW5kLm9yZy51az4KKyAqIENvcHlyaWdodCDCqSAyMDAxIFdpY2hlcnQgQWtrZXJtYW4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworI2luY2x1ZGUgPGNvbmZpZy5oPgorI2luY2x1ZGUgPGNvbXBhdC5oPgorCisjaW5jbHVkZSA8Y3R5cGUuaD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDxzdGRpby5oPgorCisjaW5jbHVkZSA8ZHBrZy9pMThuLmg+CisjaW5jbHVkZSA8ZHBrZy9kcGtnLmg+CisjaW5jbHVkZSA8ZHBrZy9kcGtnLWRiLmg+CisjaW5jbHVkZSA8ZHBrZy9wYXRoLmg+CisjaW5jbHVkZSA8ZHBrZy9wYXJzZWR1bXAuaD4KKyNpbmNsdWRlIDxkcGtnL3RyaWdsaWIuaD4KKworc3RhdGljIGludAorcGFyc2VfbnZfbmV4dChzdHJ1Y3QgcGFyc2VkYl9zdGF0ZSAqcHMsCisgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKndoYXQsIGNvbnN0IHN0cnVjdCBuYW1ldmFsdWUgKm52X2hlYWQsCisgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKipzdHJwKQoreworICBjb25zdCBjaGFyICpzdHJfc3RhcnQgPSAqc3RycCwgKnN0cl9lbmQ7CisgIGNvbnN0IHN0cnVjdCBuYW1ldmFsdWUgKm52OworCisgIGlmIChzdHJfc3RhcnRbMF0gPT0gJ1wwJykKKyAgICBwYXJzZV9lcnJvcihwcywgXygiJXMgaXMgbWlzc2luZyIpLCB3aGF0KTsKKworICBudiA9IG5hbWV2YWx1ZV9maW5kX2J5X25hbWUobnZfaGVhZCwgc3RyX3N0YXJ0KTsKKyAgaWYgKG52ID09IE5VTEwpCisgICAgcGFyc2VfZXJyb3IocHMsIF8oIiclLjUwcycgaXMgbm90IGFsbG93ZWQgZm9yICVzIiksIHN0cl9zdGFydCwgd2hhdCk7CisKKyAgLyogV2UgZ290IHRoZSBmYWxsYmFjayB2YWx1ZSwgc2tpcCBmdXJ0aGVyIHN0cmluZyB2YWxpZGF0aW9uLiAqLworICBpZiAobnYtPmxlbmd0aCA9PSAwKSB7CisgICAgc3RyX2VuZCA9IE5VTEw7CisgIH0gZWxzZSB7CisgICAgc3RyX2VuZCA9IHN0cl9zdGFydCArIG52LT5sZW5ndGg7CisgICAgd2hpbGUgKGlzc3BhY2Uoc3RyX2VuZFswXSkpCisgICAgICBzdHJfZW5kKys7CisgIH0KKyAgKnN0cnAgPSBzdHJfZW5kOworCisgIHJldHVybiBudi0+dmFsdWU7Cit9CisKK3N0YXRpYyBpbnQKK3BhcnNlX252X2xhc3Qoc3RydWN0IHBhcnNlZGJfc3RhdGUgKnBzLAorICAgICAgICAgICAgICBjb25zdCBjaGFyICp3aGF0LCBjb25zdCBzdHJ1Y3QgbmFtZXZhbHVlICpudl9oZWFkLAorICAgICAgICAgICAgICBjb25zdCBjaGFyICpzdHIpCit7CisgIGludCB2YWx1ZTsKKworICB2YWx1ZSA9IHBhcnNlX252X25leHQocHMsIHdoYXQsIG52X2hlYWQsICZzdHIpOworICBpZiAoc3RyICE9IE5VTEwgJiYgc3RyWzBdICE9ICdcMCcpCisgICAgcGFyc2VfZXJyb3IocHMsIF8oImp1bmsgYWZ0ZXIgJXMiKSwgd2hhdCk7CisKKyAgcmV0dXJuIHZhbHVlOworfQorCit2b2lkCitmX25hbWUoc3RydWN0IHBrZ2luZm8gKnBpZ3AsIHN0cnVjdCBwa2diaW4gKnBpZnAsCisgICAgICAgc3RydWN0IHBhcnNlZGJfc3RhdGUgKnBzLAorICAgICAgIGNvbnN0IGNoYXIgKnZhbHVlLCBjb25zdCBzdHJ1Y3QgZmllbGRpbmZvICpmaXApCit7CisgIGNvbnN0IGNoYXIgKmU7CisKKyAgZSA9IHBrZ19uYW1lX2lzX2lsbGVnYWwodmFsdWUsIE5VTEwpOworICBpZiAoZSAhPSBOVUxMKQorICAgIHBhcnNlX2Vycm9yKHBzLCBfKCJpbnZhbGlkIHBhY2thZ2UgbmFtZSAoJS4yNTBzKSIpLCBlKTsKKyAgLyogV2UgdXNlIHRoZSBuZXcgbmFtZSwgYXMgcGtnX2RiX2ZpbmQoKSBtYXkgaGF2ZSBkb25lIGEgdG9sb3dlciBmb3IgdXMuICovCisgIHBpZ3AtPm5hbWUgPSBwa2dfZGJfZmluZCh2YWx1ZSktPm5hbWU7Cit9CisKK3ZvaWQKK2ZfZmlsZWNoYXJmKHN0cnVjdCBwa2dpbmZvICpwaWdwLCBzdHJ1Y3QgcGtnYmluICpwaWZwLAorICAgICAgICAgICAgc3RydWN0IHBhcnNlZGJfc3RhdGUgKnBzLAorICAgICAgICAgICAgY29uc3QgY2hhciAqdmFsdWUsIGNvbnN0IHN0cnVjdCBmaWVsZGluZm8gKmZpcCkKK3sKKyAgc3RydWN0IGZpbGVkZXRhaWxzICpmZHAsICoqZmRwcDsKKyAgY2hhciAqY3BvcywgKnNwYWNlOworICBpbnQgYWxsb3dleHRlbmQ7CisKKyAgaWYgKCEqdmFsdWUpCisgICAgcGFyc2VfZXJyb3IocHMsIF8oImVtcHR5IGZpbGUgZGV0YWlscyBmaWVsZCBgJXMnIiksIGZpcC0+bmFtZSk7CisgIGlmICghKHBzLT5mbGFncyAmIHBkYl9yZWNvcmRhdmFpbGFibGUpKQorICAgIHBhcnNlX2Vycm9yKHBzLAorICAgICAgICAgICAgICAgIF8oImZpbGUgZGV0YWlscyBmaWVsZCBgJXMnIG5vdCBhbGxvd2VkIGluIHN0YXR1cyBmaWxlIiksCisgICAgICAgICAgICAgICBmaXAtPm5hbWUpOworICBhbGxvd2V4dGVuZD0gIXBpZ3AtPmZpbGVzOworICBmZHBwPSAmcGlncC0+ZmlsZXM7CisgIGNwb3M9IG5mc3Ryc2F2ZSh2YWx1ZSk7CisgIHdoaWxlICgqY3BvcykgeworICAgIHNwYWNlPSBjcG9zOyB3aGlsZSAoKnNwYWNlICYmICFpc3NwYWNlKCpzcGFjZSkpIHNwYWNlKys7CisgICAgaWYgKCpzcGFjZSkKKyAgICAgICpzcGFjZSsrID0gJ1wwJzsKKyAgICBmZHA9ICpmZHBwOworICAgIGlmICghZmRwKSB7CisgICAgICBpZiAoIWFsbG93ZXh0ZW5kKQorICAgICAgICBwYXJzZV9lcnJvcihwcywKKyAgICAgICAgICAgICAgICAgICAgXygidG9vIG1hbnkgdmFsdWVzIGluIGZpbGUgZGV0YWlscyBmaWVsZCBgJXMnICIKKyAgICAgICAgICAgICAgICAgICAgICAiKGNvbXBhcmVkIHRvIG90aGVycykiKSwgZmlwLT5uYW1lKTsKKyAgICAgIGZkcD0gbmZtYWxsb2Moc2l6ZW9mKHN0cnVjdCBmaWxlZGV0YWlscykpOworICAgICAgZmRwLT5uZXh0PSBOVUxMOworICAgICAgZmRwLT5uYW1lPSBmZHAtPm1zZG9zbmFtZT0gZmRwLT5zaXplPSBmZHAtPm1kNXN1bT0gTlVMTDsKKyAgICAgICpmZHBwPSBmZHA7CisgICAgfQorICAgIEZJTEVGRklFTEQoZmRwLGZpcC0+aW50ZWdlcixjb25zdCBjaGFyKik9IGNwb3M7CisgICAgZmRwcD0gJmZkcC0+bmV4dDsKKyAgICB3aGlsZSAoKnNwYWNlICYmIGlzc3BhY2UoKnNwYWNlKSkgc3BhY2UrKzsKKyAgICBjcG9zPSBzcGFjZTsKKyAgfQorICBpZiAoKmZkcHApCisgICAgcGFyc2VfZXJyb3IocHMsCisgICAgICAgICAgICAgICAgXygidG9vIGZldyB2YWx1ZXMgaW4gZmlsZSBkZXRhaWxzIGZpZWxkIGAlcycgIgorICAgICAgICAgICAgICAgICAgIihjb21wYXJlZCB0byBvdGhlcnMpIiksIGZpcC0+bmFtZSk7Cit9CisKK3ZvaWQKK2ZfY2hhcmZpZWxkKHN0cnVjdCBwa2dpbmZvICpwaWdwLCBzdHJ1Y3QgcGtnYmluICpwaWZwLAorICAgICAgICAgICAgc3RydWN0IHBhcnNlZGJfc3RhdGUgKnBzLAorICAgICAgICAgICAgY29uc3QgY2hhciAqdmFsdWUsIGNvbnN0IHN0cnVjdCBmaWVsZGluZm8gKmZpcCkKK3sKKyAgaWYgKCp2YWx1ZSkgUEtHUEZJRUxEKHBpZnAsZmlwLT5pbnRlZ2VyLGNoYXIqKT0gbmZzdHJzYXZlKHZhbHVlKTsKK30KKwordm9pZAorZl9ib29sZWFuKHN0cnVjdCBwa2dpbmZvICpwaWdwLCBzdHJ1Y3QgcGtnYmluICpwaWZwLAorICAgICAgICAgIHN0cnVjdCBwYXJzZWRiX3N0YXRlICpwcywKKyAgICAgICAgICBjb25zdCBjaGFyICp2YWx1ZSwgY29uc3Qgc3RydWN0IGZpZWxkaW5mbyAqZmlwKQoreworICBib29sIGJvb2xlYW47CisKKyAgaWYgKCEqdmFsdWUpCisgICAgcmV0dXJuOworCisgIGJvb2xlYW4gPSBwYXJzZV9udl9sYXN0KHBzLCBfKCJ5ZXMvbm8gaW4gYm9vbGVhbiBmaWVsZCIpLAorICAgICAgICAgICAgICAgICAgICAgICAgICBib29sZWFuaW5mb3MsIHZhbHVlKTsKKyAgUEtHUEZJRUxEKHBpZnAsIGZpcC0+aW50ZWdlciwgYm9vbCkgPSBib29sZWFuOworfQorCit2b2lkCitmX3NlY3Rpb24oc3RydWN0IHBrZ2luZm8gKnBpZ3AsIHN0cnVjdCBwa2diaW4gKnBpZnAsCisgICAgICAgICAgc3RydWN0IHBhcnNlZGJfc3RhdGUgKnBzLAorICAgICAgICAgIGNvbnN0IGNoYXIgKnZhbHVlLCBjb25zdCBzdHJ1Y3QgZmllbGRpbmZvICpmaXApCit7CisgIGlmICghKnZhbHVlKSByZXR1cm47CisgIHBpZ3AtPnNlY3Rpb249IG5mc3Ryc2F2ZSh2YWx1ZSk7Cit9CisKK3ZvaWQKK2ZfcHJpb3JpdHkoc3RydWN0IHBrZ2luZm8gKnBpZ3AsIHN0cnVjdCBwa2diaW4gKnBpZnAsCisgICAgICAgICAgIHN0cnVjdCBwYXJzZWRiX3N0YXRlICpwcywKKyAgICAgICAgICAgY29uc3QgY2hhciAqdmFsdWUsIGNvbnN0IHN0cnVjdCBmaWVsZGluZm8gKmZpcCkKK3sKKyAgaWYgKCEqdmFsdWUpIHJldHVybjsKKyAgcGlncC0+cHJpb3JpdHkgPSBwYXJzZV9udl9sYXN0KHBzLCBfKCJ3b3JkIGluIGBwcmlvcml0eScgZmllbGQiKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByaW9yaXR5aW5mb3MsIHZhbHVlKTsKKyAgaWYgKHBpZ3AtPnByaW9yaXR5ID09IHByaV9vdGhlcikgcGlncC0+b3RoZXJwcmlvcml0eT0gbmZzdHJzYXZlKHZhbHVlKTsKK30KKwordm9pZAorZl9zdGF0dXMoc3RydWN0IHBrZ2luZm8gKnBpZ3AsIHN0cnVjdCBwa2diaW4gKnBpZnAsCisgICAgICAgICBzdHJ1Y3QgcGFyc2VkYl9zdGF0ZSAqcHMsCisgICAgICAgICBjb25zdCBjaGFyICp2YWx1ZSwgY29uc3Qgc3RydWN0IGZpZWxkaW5mbyAqZmlwKQoreworICBpZiAocHMtPmZsYWdzICYgcGRiX3JlamVjdHN0YXR1cykKKyAgICBwYXJzZV9lcnJvcihwcywKKyAgICAgICAgICAgICAgICBfKCJ2YWx1ZSBmb3IgYHN0YXR1cycgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IikpOworICBpZiAocHMtPmZsYWdzICYgcGRiX3JlY29yZGF2YWlsYWJsZSkKKyAgICByZXR1cm47CisKKyAgcGlncC0+d2FudCA9IHBhcnNlX252X25leHQocHMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF8oImZpcnN0ICh3YW50KSB3b3JkIGluIGBzdGF0dXMnIGZpZWxkIiksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdhbnRpbmZvcywgJnZhbHVlKTsKKyAgcGlncC0+ZWZsYWcgPSBwYXJzZV9udl9uZXh0KHBzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXygic2Vjb25kIChlcnJvcikgd29yZCBpbiBgc3RhdHVzJyBmaWVsZCIpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZWZsYWdpbmZvcywgJnZhbHVlKTsKKyAgcGlncC0+c3RhdHVzID0gcGFyc2VfbnZfbGFzdChwcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfKCJ0aGlyZCAoc3RhdHVzKSB3b3JkIGluIGBzdGF0dXMnIGZpZWxkIiksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdHVzaW5mb3MsIHZhbHVlKTsKK30KKwordm9pZAorZl92ZXJzaW9uKHN0cnVjdCBwa2dpbmZvICpwaWdwLCBzdHJ1Y3QgcGtnYmluICpwaWZwLAorICAgICAgICAgIHN0cnVjdCBwYXJzZWRiX3N0YXRlICpwcywKKyAgICAgICAgICBjb25zdCBjaGFyICp2YWx1ZSwgY29uc3Qgc3RydWN0IGZpZWxkaW5mbyAqZmlwKQoreworICBwYXJzZV9kYl92ZXJzaW9uKHBzLCAmcGlmcC0+dmVyc2lvbiwgdmFsdWUsCisgICAgICAgICAgICAgICAgICAgXygiZXJyb3IgaW4gVmVyc2lvbiBzdHJpbmcgJyUuMjUwcyciKSwgdmFsdWUpOworfQorCit2b2lkCitmX3JldmlzaW9uKHN0cnVjdCBwa2dpbmZvICpwaWdwLCBzdHJ1Y3QgcGtnYmluICpwaWZwLAorICAgICAgICAgICBzdHJ1Y3QgcGFyc2VkYl9zdGF0ZSAqcHMsCisgICAgICAgICAgIGNvbnN0IGNoYXIgKnZhbHVlLCBjb25zdCBzdHJ1Y3QgZmllbGRpbmZvICpmaXApCit7CisgIGNoYXIgKm5ld3ZlcnNpb247CisKKyAgcGFyc2Vfd2FybihwcywKKyAgICAgICAgICAgICBfKCJvYnNvbGV0ZSBgUmV2aXNpb24nIG9yIGBQYWNrYWdlLVJldmlzaW9uJyBmaWVsZCB1c2VkIikpOworICBpZiAoISp2YWx1ZSkgcmV0dXJuOworICBpZiAocGlmcC0+dmVyc2lvbi5yZXZpc2lvbiAmJiAqcGlmcC0+dmVyc2lvbi5yZXZpc2lvbikgeworICAgIG5ld3ZlcnNpb249IG5mbWFsbG9jKHN0cmxlbihwaWZwLT52ZXJzaW9uLnZlcnNpb24pK3N0cmxlbihwaWZwLT52ZXJzaW9uLnJldmlzaW9uKSsyKTsKKyAgICBzcHJpbnRmKG5ld3ZlcnNpb24sIiVzLSVzIixwaWZwLT52ZXJzaW9uLnZlcnNpb24scGlmcC0+dmVyc2lvbi5yZXZpc2lvbik7CisgICAgcGlmcC0+dmVyc2lvbi52ZXJzaW9uPSBuZXd2ZXJzaW9uOworICB9CisgIHBpZnAtPnZlcnNpb24ucmV2aXNpb249IG5mc3Ryc2F2ZSh2YWx1ZSk7Cit9CisKK3ZvaWQKK2ZfY29uZmlndmVyc2lvbihzdHJ1Y3QgcGtnaW5mbyAqcGlncCwgc3RydWN0IHBrZ2JpbiAqcGlmcCwKKyAgICAgICAgICAgICAgICBzdHJ1Y3QgcGFyc2VkYl9zdGF0ZSAqcHMsCisgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqdmFsdWUsIGNvbnN0IHN0cnVjdCBmaWVsZGluZm8gKmZpcCkKK3sKKyAgaWYgKHBzLT5mbGFncyAmIHBkYl9yZWplY3RzdGF0dXMpCisgICAgcGFyc2VfZXJyb3IocHMsCisgICAgICAgICAgICAgICAgXygidmFsdWUgZm9yIGBjb25maWctdmVyc2lvbicgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IikpOworICBpZiAocHMtPmZsYWdzICYgcGRiX3JlY29yZGF2YWlsYWJsZSkKKyAgICByZXR1cm47CisKKyAgcGFyc2VfZGJfdmVyc2lvbihwcywgJnBpZ3AtPmNvbmZpZ3ZlcnNpb24sIHZhbHVlLAorICAgICAgICAgICAgICAgICAgIF8oImVycm9yIGluIENvbmZpZy1WZXJzaW9uIHN0cmluZyAnJS4yNTBzJyIpLCB2YWx1ZSk7CisKK30KKworLyoKKyAqIFRoZSBjb2RlIGluIGZfY29uZmZpbGVzIGVuc3VyZXMgdGhhdCB2YWx1ZVstMV0gPT0gJyAnLCB3aGljaCBpcyBoZWxwZnVsLgorICovCitzdGF0aWMgdm9pZCBjb25mZnZhbHVlX2xhc3R3b3JkKGNvbnN0IGNoYXIgKnZhbHVlLCBjb25zdCBjaGFyICpmcm9tLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplbmRlbnQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKip3b3JkX3N0YXJ0X3IsIGludCAqd29yZF9sZW5fciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqKm5ld19mcm9tX3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cnVjdCBwYXJzZWRiX3N0YXRlICpwcykKK3sKKyAgY29uc3QgY2hhciAqbGFzdHNwYzsKKworICBpZiAoZnJvbSA8PSB2YWx1ZSsxKSBnb3RvIG1hbGZvcm1lZDsKKyAgZm9yIChsYXN0c3BjPSBmcm9tLTE7ICpsYXN0c3BjICE9ICcgJzsgbGFzdHNwYy0tKTsKKyAgaWYgKGxhc3RzcGMgPD0gdmFsdWUrMSB8fCBsYXN0c3BjID49IGVuZGVudC0xKSBnb3RvIG1hbGZvcm1lZDsKKworICAqbmV3X2Zyb21fcj0gbGFzdHNwYzsKKyAgKndvcmRfc3RhcnRfcj0gbGFzdHNwYyArIDE7CisgICp3b3JkX2xlbl9yPSAoaW50KShmcm9tIC0gKndvcmRfc3RhcnRfcik7CisgIHJldHVybjsKKworbWFsZm9ybWVkOgorICBwYXJzZV9lcnJvcihwcywKKyAgICAgICAgICAgICAgXygidmFsdWUgZm9yIGBjb25mZmlsZXMnIGhhcyBtYWxmb3JtYXR0ZWQgbGluZSBgJS4qcyciKSwKKyAgICAgICAgICAgICAgKGludCltaW4oZW5kZW50IC0gdmFsdWUsIDI1MCksIHZhbHVlKTsKK30KKwordm9pZAorZl9jb25mZmlsZXMoc3RydWN0IHBrZ2luZm8gKnBpZ3AsIHN0cnVjdCBwa2diaW4gKnBpZnAsCisgICAgICAgICAgICBzdHJ1Y3QgcGFyc2VkYl9zdGF0ZSAqcHMsCisgICAgICAgICAgICBjb25zdCBjaGFyICp2YWx1ZSwgY29uc3Qgc3RydWN0IGZpZWxkaW5mbyAqZmlwKQoreworICBzdGF0aWMgY29uc3QgY2hhciBvYnNvbGV0ZV9zdHJbXT0gIm9ic29sZXRlIjsKKyAgc3RydWN0IGNvbmZmaWxlICoqbGFzdHAsICpuZXdsaW5rOworICBjb25zdCBjaGFyICplbmRlbnQsICplbmRmbiwgKmhhc2hzdGFydDsKKyAgaW50IGMsIG5hbWVsZW4sIGhhc2hsZW4sIG9ic29sZXRlOworICBjaGFyICpuZXdwdHI7CisKKyAgbGFzdHA9ICZwaWZwLT5jb25mZmlsZXM7CisgIHdoaWxlICgqdmFsdWUpIHsKKyAgICBjPSAqdmFsdWUrKzsKKyAgICBpZiAoYyA9PSAnXG4nKSBjb250aW51ZTsKKyAgICBpZiAoYyAhPSAnICcpCisgICAgICBwYXJzZV9lcnJvcihwcywKKyAgICAgICAgICAgICAgICAgIF8oInZhbHVlIGZvciBgY29uZmZpbGVzJyBoYXMgbGluZSBzdGFydGluZyB3aXRoIG5vbi1zcGFjZSBgJWMnIiksCisgICAgICAgICAgICAgICAgICBjKTsKKyAgICBmb3IgKGVuZGVudCA9IHZhbHVlOyAoYyA9ICplbmRlbnQpICE9ICdcMCcgJiYgYyAhPSAnXG4nOyBlbmRlbnQrKykgOworICAgIGNvbmZmdmFsdWVfbGFzdHdvcmQodmFsdWUsIGVuZGVudCwgZW5kZW50LAorCQkJJmhhc2hzdGFydCwgJmhhc2hsZW4sICZlbmRmbiwKKyAgICAgICAgICAgICAgICAgICAgICAgIHBzKTsKKyAgICBvYnNvbGV0ZT0gKGhhc2hsZW4gPT0gc2l6ZW9mKG9ic29sZXRlX3N0ciktMSAmJgorCSAgICAgICAhbWVtY21wKGhhc2hzdGFydCwgb2Jzb2xldGVfc3RyLCBoYXNobGVuKSk7CisgICAgaWYgKG9ic29sZXRlKQorICAgICAgY29uZmZ2YWx1ZV9sYXN0d29yZCh2YWx1ZSwgZW5kZm4sIGVuZGVudCwKKwkJCSAgJmhhc2hzdGFydCwgJmhhc2hsZW4sICZlbmRmbiwKKwkJCSAgcHMpOworICAgIG5ld2xpbms9IG5mbWFsbG9jKHNpemVvZihzdHJ1Y3QgY29uZmZpbGUpKTsKKyAgICB2YWx1ZSA9IHBhdGhfc2tpcF9zbGFzaF9kb3RzbGFzaCh2YWx1ZSk7CisgICAgbmFtZWxlbj0gKGludCkoZW5kZm4tdmFsdWUpOworICAgIGlmIChuYW1lbGVuIDw9IDApCisgICAgICBwYXJzZV9lcnJvcihwcywKKyAgICAgICAgICAgICAgICAgIF8oInJvb3Qgb3IgbnVsbCBkaXJlY3RvcnkgaXMgbGlzdGVkIGFzIGEgY29uZmZpbGUiKSk7CisgICAgbmV3cHRyID0gbmZtYWxsb2MobmFtZWxlbisyKTsKKyAgICBuZXdwdHJbMF09ICcvJzsKKyAgICBtZW1jcHkobmV3cHRyKzEsdmFsdWUsbmFtZWxlbik7CisgICAgbmV3cHRyW25hbWVsZW4rMV0gPSAnXDAnOworICAgIG5ld2xpbmstPm5hbWU9IG5ld3B0cjsKKyAgICBuZXdwdHI9IG5mbWFsbG9jKGhhc2hsZW4rMSk7CisgICAgbWVtY3B5KG5ld3B0ciwgaGFzaHN0YXJ0LCBoYXNobGVuKTsKKyAgICBuZXdwdHJbaGFzaGxlbl0gPSAnXDAnOworICAgIG5ld2xpbmstPmhhc2g9IG5ld3B0cjsKKyAgICBuZXdsaW5rLT5vYnNvbGV0ZT0gb2Jzb2xldGU7CisgICAgbmV3bGluay0+bmV4dCA9TlVMTDsKKyAgICAqbGFzdHA9IG5ld2xpbms7CisgICAgbGFzdHA9ICZuZXdsaW5rLT5uZXh0OworICAgIHZhbHVlPSBlbmRlbnQ7CisgIH0KK30KKwordm9pZAorZl9kZXBlbmRlbmN5KHN0cnVjdCBwa2dpbmZvICpwaWdwLCBzdHJ1Y3QgcGtnYmluICpwaWZwLAorICAgICAgICAgICAgIHN0cnVjdCBwYXJzZWRiX3N0YXRlICpwcywKKyAgICAgICAgICAgICBjb25zdCBjaGFyICp2YWx1ZSwgY29uc3Qgc3RydWN0IGZpZWxkaW5mbyAqZmlwKQoreworICBjaGFyIGMxLCBjMjsKKyAgY29uc3QgY2hhciAqcCwgKmVtc2c7CisgIGNvbnN0IGNoYXIgKmRlcG5hbWVzdGFydCwgKnZlcnNpb25zdGFydDsKKyAgaW50IGRlcG5hbWVsZW5ndGgsIHZlcnNpb25sZW5ndGg7CisgIHN0YXRpYyBzdHJ1Y3QgdmFyYnVmIGRlcG5hbWUsIHZlcnNpb247CisKKyAgc3RydWN0IGRlcGVuZGVuY3kgKmR5cCwgKipsZHlwcDsKKyAgc3RydWN0IGRlcHBvc3NpICpkb3AsICoqbGRvcHA7CisKKyAgLyogRW1wdHkgZmllbGRzIGFyZSBpZ25vcmVkLiAqLworICBpZiAoISp2YWx1ZSkKKyAgICByZXR1cm47CisgIHA9IHZhbHVlOworICBsZHlwcD0gJnBpZnAtPmRlcGVuZHM7IHdoaWxlICgqbGR5cHApIGxkeXBwPSAmKCpsZHlwcCktPm5leHQ7CisKKyAgIC8qIExvb3AgY3JlYXRpbmcgbmV3IHN0cnVjdCBkZXBlbmRlbmN5J3MuICovCisgIGZvciAoOzspIHsKKyAgICBkeXA9IG5mbWFsbG9jKHNpemVvZihzdHJ1Y3QgZGVwZW5kZW5jeSkpOworICAgIC8qIFNldCB0aGlzIHRvIE5VTEwgZm9yIG5vdywgYXMgd2UgZG9uJ3Qga25vdyB3aGF0IG91ciByZWFsCisgICAgICogc3RydWN0IHBrZ2luZm8gYWRkcmVzcyAoaW4gdGhlIGRhdGFiYXNlKSBpcyBnb2luZyB0byBiZSB5ZXQuICovCisgICAgZHlwLT51cCA9IE5VTEw7CisgICAgZHlwLT5uZXh0PSBOVUxMOyAqbGR5cHA9IGR5cDsgbGR5cHA9ICZkeXAtPm5leHQ7CisgICAgZHlwLT5saXN0PSBOVUxMOyBsZG9wcD0gJmR5cC0+bGlzdDsKKyAgICBkeXAtPnR5cGU9IGZpcC0+aW50ZWdlcjsKKworICAgIC8qIExvb3AgY3JlYXRpbmcgbmV3IHN0cnVjdCBkZXBwb3NzaSdzLiAqLworICAgIGZvciAoOzspIHsKKyAgICAgIGRlcG5hbWVzdGFydD0gcDsKKyAgICAgIC8qIFNraXAgb3ZlciBwYWNrYWdlIG5hbWUgY2hhcmFjdGVycy4gKi8KKyAgICAgIHdoaWxlICgqcCAmJiAhaXNzcGFjZSgqcCkgJiYgKnAgIT0gJygnICYmICpwICE9ICcsJyAmJiAqcCAhPSAnfCcpIHsKKwlwKys7CisgICAgICB9CisgICAgICBkZXBuYW1lbGVuZ3RoPSBwIC0gZGVwbmFtZXN0YXJ0IDsKKyAgICAgIHZhcmJ1Zl9yZXNldCgmZGVwbmFtZSk7CisgICAgICB2YXJidWZfYWRkX2J1ZigmZGVwbmFtZSwgZGVwbmFtZXN0YXJ0LCBkZXBuYW1lbGVuZ3RoKTsKKyAgICAgIHZhcmJ1Zl9lbmRfc3RyKCZkZXBuYW1lKTsKKyAgICAgIGlmICghZGVwbmFtZS5idWZbMF0pCisgICAgICAgIHBhcnNlX2Vycm9yKHBzLAorICAgICAgICAgICAgICAgICAgICBfKCJgJXMnIGZpZWxkLCBtaXNzaW5nIHBhY2thZ2UgbmFtZSwgb3IgZ2FyYmFnZSB3aGVyZSAiCisgICAgICAgICAgICAgICAgICAgICAgInBhY2thZ2UgbmFtZSBleHBlY3RlZCIpLCBmaXAtPm5hbWUpOworICAgICAgZW1zZyA9IHBrZ19uYW1lX2lzX2lsbGVnYWwoZGVwbmFtZS5idWYsIE5VTEwpOworICAgICAgaWYgKGVtc2cpCisgICAgICAgIHBhcnNlX2Vycm9yKHBzLAorICAgICAgICAgICAgICAgICAgICBfKCJgJXMnIGZpZWxkLCBpbnZhbGlkIHBhY2thZ2UgbmFtZSBgJS4yNTVzJzogJXMiKSwKKyAgICAgICAgICAgICAgICAgICAgZmlwLT5uYW1lLCBkZXBuYW1lLmJ1ZiwgZW1zZyk7CisgICAgICBkb3A9IG5mbWFsbG9jKHNpemVvZihzdHJ1Y3QgZGVwcG9zc2kpKTsKKyAgICAgIGRvcC0+dXA9IGR5cDsKKyAgICAgIGRvcC0+ZWQgPSBwa2dfZGJfZmluZChkZXBuYW1lLmJ1Zik7CisgICAgICBkb3AtPm5leHQ9IE5VTEw7ICpsZG9wcD0gZG9wOyBsZG9wcD0gJmRvcC0+bmV4dDsKKworICAgICAgLyogRG9uJ3QgbGluayB0aGlzICh3aGljaCBpcyBhZnRlciBhbGwgb25seSDigJhuZXdwaWfigJkgZnJvbQorICAgICAgICogdGhlIG1haW4gcGFyc2luZyBsb29wIGluIHBhcnNlZGIpIGludG8gdGhlIGRlcGVuZGVkIG9uCisgICAgICAgKiBwYWNrYWdlcycgbGlzdHMgeWV0LiBUaGlzIHdpbGwgYmUgZG9uZSBsYXRlciB3aGVuIHdlCisgICAgICAgKiBpbnN0YWxsIHRoaXMgKGluIHBhcnNlLmMpLiBGb3IgdGhlIG1vbWVudCB3ZSBkbyB0aGUKKyAgICAgICAqIOKAmGZvcndhcmTigJkgbGlua3MgaW4gZGVwcG9zc2kgKOKAmGVk4oCZKSBvbmx5LCBhbmQgdGhlIOKAmGJhY2t3YXJk4oCZCisgICAgICAgKiBsaW5rcyBmcm9tIHRoZSBkZXBlbmRlZCBvbiBwYWNrYWdlcyB0byBkb3AgYXJlIGxlZnQgdW5kb25lLiAqLworICAgICAgZG9wLT5yZXZfbmV4dCA9IE5VTEw7CisgICAgICBkb3AtPnJldl9wcmV2ID0gTlVMTDsKKworICAgICAgZG9wLT5jeWNsZWJyZWFrID0gZmFsc2U7CisKKyAgICAgIC8qIFNraXAgd2hpdGVzcGFjZSBhZnRlciBwYWNrYWdlIG5hbWUuICovCisgICAgICB3aGlsZSAoaXNzcGFjZSgqcCkpIHArKzsKKworICAgICAgLyogU2VlIGlmIHdlIGhhdmUgYSB2ZXJzaW9uZWQgcmVsYXRpb24uICovCisgICAgICBpZiAoKnAgPT0gJygnKSB7CisgICAgICAgIHArKzsgd2hpbGUgKGlzc3BhY2UoKnApKSBwKys7CisgICAgICAgIGMxPSAqcDsKKyAgICAgICAgaWYgKGMxID09ICc8JyB8fCBjMSA9PSAnPicpIHsKKyAgICAgICAgICBjMj0gKisrcDsKKyAgICAgICAgICBkb3AtPnZlcnJlbD0gKGMxID09ICc8JykgPyBkdnJmX2VhcmxpZXIgOiBkdnJmX2xhdGVyOworICAgICAgICAgIGlmIChjMiA9PSAnPScpIHsKKyAgICAgICAgICAgIGRvcC0+dmVycmVsIHw9IChkdnJmX29yZXF1YWwgfCBkdnJmX2J1aWx0dXApOworICAgICAgICAgICAgcCsrOworICAgICAgICAgIH0gZWxzZSBpZiAoYzIgPT0gYzEpIHsKKyAgICAgICAgICAgIGRvcC0+dmVycmVsIHw9IChkdnJmX3N0cmljdCB8IGR2cmZfYnVpbHR1cCk7CisgICAgICAgICAgICBwKys7CisgICAgICAgICAgfSBlbHNlIGlmIChjMiA9PSAnPCcgfHwgYzIgPT0gJz4nKSB7CisgICAgICAgICAgICBwYXJzZV9lcnJvcihwcywKKyAgICAgICAgICAgICAgICAgICAgICAgIF8oImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIiBiYWQgdmVyc2lvbiByZWxhdGlvbnNoaXAgJWMlYyIpLAorICAgICAgICAgICAgICAgICAgICAgICAgZmlwLT5uYW1lLCBkZXBuYW1lLmJ1ZiwgYzEsIGMyKTsKKyAgICAgICAgICAgIGRvcC0+dmVycmVsPSBkdnJfbm9uZTsKKyAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgcGFyc2Vfd2FybihwcywKKyAgICAgICAgICAgICAgICAgICAgICAgXygiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOlxuIgorICAgICAgICAgICAgICAgICAgICAgICAgICIgYCVjJyBpcyBvYnNvbGV0ZSwgdXNlIGAlYz0nIG9yIGAlYyVjJyBpbnN0ZWFkIiksCisgICAgICAgICAgICAgICAgICAgICAgIGZpcC0+bmFtZSwgZGVwbmFtZS5idWYsIGMxLCBjMSwgYzEsIGMxKTsKKyAgICAgICAgICAgIGRvcC0+dmVycmVsIHw9IChkdnJmX29yZXF1YWwgfCBkdnJmX2J1aWx0dXApOworICAgICAgICAgIH0KKyAgICAgICAgfSBlbHNlIGlmIChjMSA9PSAnPScpIHsKKyAgICAgICAgICBkb3AtPnZlcnJlbD0gZHZyX2V4YWN0OworICAgICAgICAgIHArKzsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICBwYXJzZV93YXJuKHBzLAorICAgICAgICAgICAgICAgICAgICAgXygiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOlxuIgorICAgICAgICAgICAgICAgICAgICAgICAiIGltcGxpY2l0IGV4YWN0IG1hdGNoIG9uIHZlcnNpb24gbnVtYmVyLCAiCisgICAgICAgICAgICAgICAgICAgICAgICJzdWdnZXN0IHVzaW5nIGA9JyBpbnN0ZWFkIiksCisgICAgICAgICAgICAgICAgICAgICBmaXAtPm5hbWUsIGRlcG5hbWUuYnVmKTsKKyAgICAgICAgICBkb3AtPnZlcnJlbD0gZHZyX2V4YWN0OworICAgICAgICB9CisJaWYgKChkb3AtPnZlcnJlbCE9ZHZyX2V4YWN0KSAmJiAoZmlwLT5pbnRlZ2VyPT1kZXBfcHJvdmlkZXMpKQorICAgICAgICAgIHBhcnNlX3dhcm4ocHMsCisgICAgICAgICAgICAgICAgICAgICBfKCJPbmx5IGV4YWN0IHZlcnNpb25zIG1heSBiZSB1c2VkIGZvciBQcm92aWRlcyIpKTsKKworICAgICAgICBpZiAoIWlzc3BhY2UoKnApICYmICFpc2FsbnVtKCpwKSkgeworICAgICAgICAgIHBhcnNlX3dhcm4ocHMsCisgICAgICAgICAgICAgICAgICAgICBfKCJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6XG4iCisgICAgICAgICAgICAgICAgICAgICAgICIgdmVyc2lvbiB2YWx1ZSBzdGFydHMgd2l0aCBub24tYWxwaGFudW1lcmljLCAiCisgICAgICAgICAgICAgICAgICAgICAgICJzdWdnZXN0IGFkZGluZyBhIHNwYWNlIiksCisgICAgICAgICAgICAgICAgICAgICBmaXAtPm5hbWUsIGRlcG5hbWUuYnVmKTsKKyAgICAgICAgfQorICAgICAgICAvKiBTa2lwIHNwYWNlcyBiZXR3ZWVuIHRoZSByZWxhdGlvbiBhbmQgdGhlIHZlcnNpb24uICovCisgICAgICAgIHdoaWxlIChpc3NwYWNlKCpwKSkgcCsrOworCisJdmVyc2lvbnN0YXJ0PSBwOworICAgICAgICB3aGlsZSAoKnAgJiYgKnAgIT0gJyknICYmICpwICE9ICcoJykgeworICAgICAgICAgIGlmIChpc3NwYWNlKCpwKSkgYnJlYWs7CisgICAgICAgICAgcCsrOworICAgICAgICB9CisJdmVyc2lvbmxlbmd0aD0gcCAtIHZlcnNpb25zdGFydDsKKyAgICAgICAgd2hpbGUgKGlzc3BhY2UoKnApKSBwKys7CisgICAgICAgIGlmICgqcCA9PSAnKCcpCisgICAgICAgICAgcGFyc2VfZXJyb3IocHMsCisgICAgICAgICAgICAgICAgICAgICAgXygiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOiAiCisgICAgICAgICAgICAgICAgICAgICAgICAidmVyc2lvbiBjb250YWlucyBgJWMnIiksIGZpcC0+bmFtZSwgZGVwbmFtZS5idWYsICcpJyk7CisgICAgICAgIGVsc2UgaWYgKCpwICE9ICcpJykKKyAgICAgICAgICBwYXJzZV9lcnJvcihwcywKKyAgICAgICAgICAgICAgICAgICAgICBfKCJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6ICIKKyAgICAgICAgICAgICAgICAgICAgICAgICJ2ZXJzaW9uIGNvbnRhaW5zIGAlYyciKSwgZmlwLT5uYW1lLCBkZXBuYW1lLmJ1ZiwgJyAnKTsKKyAgICAgICAgZWxzZSBpZiAoKnAgPT0gJ1wwJykKKyAgICAgICAgICBwYXJzZV9lcnJvcihwcywKKyAgICAgICAgICAgICAgICAgICAgICBfKCJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6ICIKKyAgICAgICAgICAgICAgICAgICAgICAgICJ2ZXJzaW9uIHVudGVybWluYXRlZCIpLCBmaXAtPm5hbWUsIGRlcG5hbWUuYnVmKTsKKyAgICAgICAgdmFyYnVmX3Jlc2V0KCZ2ZXJzaW9uKTsKKyAgICAgICAgdmFyYnVmX2FkZF9idWYoJnZlcnNpb24sIHZlcnNpb25zdGFydCwgdmVyc2lvbmxlbmd0aCk7CisgICAgICAgIHZhcmJ1Zl9lbmRfc3RyKCZ2ZXJzaW9uKTsKKyAgICAgICAgcGFyc2VfZGJfdmVyc2lvbihwcywgJmRvcC0+dmVyc2lvbiwgdmVyc2lvbi5idWYsCisgICAgICAgICAgICAgICAgICAgICAgICAgXygiJyVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvICclLjI1NXMnOiAiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAiZXJyb3IgaW4gdmVyc2lvbiIpLCBmaXAtPm5hbWUsIGRlcG5hbWUuYnVmKTsKKyAgICAgICAgcCsrOyB3aGlsZSAoaXNzcGFjZSgqcCkpIHArKzsKKyAgICAgIH0gZWxzZSB7CisgICAgICAgIGRvcC0+dmVycmVsPSBkdnJfbm9uZTsKKyAgICAgICAgYmxhbmt2ZXJzaW9uKCZkb3AtPnZlcnNpb24pOworICAgICAgfQorICAgICAgaWYgKCEqcCB8fCAqcCA9PSAnLCcpIGJyZWFrOworICAgICAgaWYgKCpwICE9ICd8JykKKyAgICAgICAgcGFyc2VfZXJyb3IocHMsCisgICAgICAgICAgICAgICAgICAgIF8oImAlcycgZmllbGQsIHN5bnRheCBlcnJvciBhZnRlciByZWZlcmVuY2UgdG8gcGFja2FnZSBgJS4yNTVzJyIpLAorICAgICAgICAgICAgICAgICAgICBmaXAtPm5hbWUsIGRvcC0+ZWQtPm5hbWUpOworICAgICAgaWYgKGZpcC0+aW50ZWdlciA9PSBkZXBfY29uZmxpY3RzIHx8CisgICAgICAgICAgZmlwLT5pbnRlZ2VyID09IGRlcF9icmVha3MgfHwKKyAgICAgICAgICBmaXAtPmludGVnZXIgPT0gZGVwX3Byb3ZpZGVzIHx8CisgICAgICAgICAgZmlwLT5pbnRlZ2VyID09IGRlcF9yZXBsYWNlcykKKyAgICAgICAgcGFyc2VfZXJyb3IocHMsCisgICAgICAgICAgICAgICAgICAgIF8oImFsdGVybmF0aXZlcyAoYHwnKSBub3QgYWxsb3dlZCBpbiAlcyBmaWVsZCIpLCBmaXAtPm5hbWUpOworICAgICAgcCsrOyB3aGlsZSAoaXNzcGFjZSgqcCkpIHArKzsKKyAgICB9CisgICAgaWYgKCEqcCkgYnJlYWs7CisgICAgcCsrOyB3aGlsZSAoaXNzcGFjZSgqcCkpIHArKzsKKyAgfQorfQorCitzdGF0aWMgY29uc3QgY2hhciAqCitzY2FuX3dvcmQoY29uc3QgY2hhciAqKnZhbHApCit7CisgIHN0YXRpYyBzdHJ1Y3QgdmFyYnVmIHdvcmQ7CisgIGNvbnN0IGNoYXIgKnAsICpzdGFydCwgKmVuZDsKKworICBwID0gKnZhbHA7CisgIGZvciAoOzspIHsKKyAgICBpZiAoISpwKSB7CisgICAgICAqdmFscCA9IHA7CisgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisgICAgaWYgKGNpc3NwYWNlKCpwKSkgeworICAgICAgcCsrOworICAgICAgY29udGludWU7CisgICAgfQorICAgIHN0YXJ0ID0gcDsKKyAgICBicmVhazsKKyAgfQorICBmb3IgKDs7KSB7CisgICAgaWYgKCpwICYmICFjaXNzcGFjZSgqcCkpIHsKKyAgICAgIHArKzsKKyAgICAgIGNvbnRpbnVlOworICAgIH0KKyAgICBlbmQgPSBwOworICAgIGJyZWFrOworICB9CisKKyAgdmFyYnVmX3Jlc2V0KCZ3b3JkKTsKKyAgdmFyYnVmX2FkZF9idWYoJndvcmQsIHN0YXJ0LCBlbmQgLSBzdGFydCk7CisgIHZhcmJ1Zl9lbmRfc3RyKCZ3b3JkKTsKKworICAqdmFscCA9IHA7CisKKyAgcmV0dXJuIHdvcmQuYnVmOworfQorCit2b2lkCitmX3RyaWdwZW5kKHN0cnVjdCBwa2dpbmZvICpwZW5kLCBzdHJ1Y3QgcGtnYmluICpwaWZwLAorICAgICAgICAgICBzdHJ1Y3QgcGFyc2VkYl9zdGF0ZSAqcHMsCisgICAgICAgICAgIGNvbnN0IGNoYXIgKnZhbHVlLCBjb25zdCBzdHJ1Y3QgZmllbGRpbmZvICpmaXApCit7CisgIGNvbnN0IGNoYXIgKndvcmQsICplbXNnOworCisgIGlmIChwcy0+ZmxhZ3MgJiBwZGJfcmVqZWN0c3RhdHVzKQorICAgIHBhcnNlX2Vycm9yKHBzLAorICAgICAgICAgICAgICAgIF8oInZhbHVlIGZvciBgdHJpZ2dlcnMtcGVuZGluZycgZmllbGQgbm90IGFsbG93ZWQgaW4gIgorICAgICAgICAgICAgICAgICAgInRoaXMgY29udGV4dCIpKTsKKworICB3aGlsZSAoKHdvcmQgPSBzY2FuX3dvcmQoJnZhbHVlKSkpIHsKKyAgICBlbXNnID0gdHJpZ19uYW1lX2lzX2lsbGVnYWwod29yZCk7CisgICAgaWYgKGVtc2cpCisgICAgICBwYXJzZV9lcnJvcihwcywKKyAgICAgICAgICAgICAgICAgIF8oImlsbGVnYWwgcGVuZGluZyB0cmlnZ2VyIG5hbWUgYCUuMjU1cyc6ICVzIiksIHdvcmQsIGVtc2cpOworCisgICAgaWYgKCF0cmlnX25vdGVfcGVuZF9jb3JlKHBlbmQsIG5mc3Ryc2F2ZSh3b3JkKSkpCisgICAgICBwYXJzZV9lcnJvcihwcywKKyAgICAgICAgICAgICAgICAgIF8oImR1cGxpY2F0ZSBwZW5kaW5nIHRyaWdnZXIgYCUuMjU1cyciKSwgd29yZCk7CisgIH0KK30KKwordm9pZAorZl90cmlnYXcoc3RydWN0IHBrZ2luZm8gKmF3LCBzdHJ1Y3QgcGtnYmluICpwaWZwLAorICAgICAgICAgc3RydWN0IHBhcnNlZGJfc3RhdGUgKnBzLAorICAgICAgICAgY29uc3QgY2hhciAqdmFsdWUsIGNvbnN0IHN0cnVjdCBmaWVsZGluZm8gKmZpcCkKK3sKKyAgY29uc3QgY2hhciAqd29yZCwgKmVtc2c7CisgIHN0cnVjdCBwa2dpbmZvICpwZW5kOworCisgIGlmIChwcy0+ZmxhZ3MgJiBwZGJfcmVqZWN0c3RhdHVzKQorICAgIHBhcnNlX2Vycm9yKHBzLAorICAgICAgICAgICAgICAgIF8oInZhbHVlIGZvciBgdHJpZ2dlcnMtYXdhaXRlZCcgZmllbGQgbm90IGFsbG93ZWQgaW4gIgorICAgICAgICAgICAgICAgICAgInRoaXMgY29udGV4dCIpKTsKKworICB3aGlsZSAoKHdvcmQgPSBzY2FuX3dvcmQoJnZhbHVlKSkpIHsKKyAgICBlbXNnID0gcGtnX25hbWVfaXNfaWxsZWdhbCh3b3JkLCBOVUxMKTsKKyAgICBpZiAoZW1zZykKKyAgICAgIHBhcnNlX2Vycm9yKHBzLAorICAgICAgICAgICAgICAgICAgXygiaWxsZWdhbCBwYWNrYWdlIG5hbWUgaW4gYXdhaXRlZCB0cmlnZ2VyIGAlLjI1NXMnOiAlcyIpLAorICAgICAgICAgICAgICAgICAgd29yZCwgZW1zZyk7CisgICAgcGVuZCA9IHBrZ19kYl9maW5kKHdvcmQpOworCisgICAgaWYgKCF0cmlnX25vdGVfYXcocGVuZCwgYXcpKQorICAgICAgcGFyc2VfZXJyb3IocHMsCisgICAgICAgICAgICAgICAgICBfKCJkdXBsaWNhdGUgYXdhaXRlZCB0cmlnZ2VyIHBhY2thZ2UgYCUuMjU1cyciKSwgd29yZCk7CisKKyAgICB0cmlnX2F3YWl0ZWRfcGVuZF9lbnF1ZXVlKHBlbmQpOworICB9Cit9CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL2ZpbGUuYyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvZmlsZS5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjI3M2Y0YTEKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL2ZpbGUuYwpAQCAtMCwwICsxLDE1MiBAQAorLyoKKyAqIGxpYmRwa2cgLSBEZWJpYW4gcGFja2FnaW5nIHN1aXRlIGxpYnJhcnkgcm91dGluZXMKKyAqIGZpbGUuYyAtIGZpbGUgaGFuZGxpbmcgZnVuY3Rpb25zCisgKgorICogQ29weXJpZ2h0IMKpIDE5OTQsIDE5OTUgSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuZ3JlZW5lbmQub3JnLnVrPgorICogQ29weXJpZ2h0IMKpIDIwMDggR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaW5jbHVkZSA8Y29uZmlnLmg+CisjaW5jbHVkZSA8Y29tcGF0Lmg+CisKKyNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KKyNpbmNsdWRlIDxzeXMvc3RhdC5oPgorCisjaW5jbHVkZSA8YXNzZXJ0Lmg+CisjaW5jbHVkZSA8ZXJybm8uaD4KKyNpbmNsdWRlIDxmY250bC5oPgorI2luY2x1ZGUgPHVuaXN0ZC5oPgorCisjaW5jbHVkZSA8ZHBrZy9kcGtnLmg+CisjaW5jbHVkZSA8ZHBrZy9pMThuLmg+CisjaW5jbHVkZSA8ZHBrZy9maWxlLmg+CisKKy8qKgorICogQ29weSBmaWxlIG93bmVyc2hpcCBhbmQgcGVybWlzc2lvbnMgZnJvbSBvbmUgZmlsZSB0byBhbm90aGVyLgorICoKKyAqIEBwYXJhbSBzcmMgVGhlIHNvdXJjZSBmaWxlbmFtZS4KKyAqIEBwYXJhbSBkc3QgVGhlIGRlc3RpbmF0aW9uIGZpbGVuYW1lLgorICovCit2b2lkCitmaWxlX2NvcHlfcGVybXMoY29uc3QgY2hhciAqc3JjLCBjb25zdCBjaGFyICpkc3QpCit7CisJc3RydWN0IHN0YXQgc3RhYjsKKworCWlmIChzdGF0KHNyYywgJnN0YWIpID09IC0xKSB7CisJCWlmIChlcnJubyA9PSBFTk9FTlQpCisJCQlyZXR1cm47CisJCW9oc2hpdGUoXygidW5hYmxlIHRvIHN0YXQgc291cmNlIGZpbGUgJyUuMjUwcyciKSwgc3JjKTsKKwl9CisKKwlpZiAoY2hvd24oZHN0LCBzdGFiLnN0X3VpZCwgc3RhYi5zdF9naWQpID09IC0xKQorCQlvaHNoaXRlKF8oInVuYWJsZSB0byBjaGFuZ2Ugb3duZXJzaGlwIG9mIHRhcmdldCBmaWxlICclLjI1MHMnIiksCisJCSAgICAgICAgZHN0KTsKKworCWlmIChjaG1vZChkc3QsIChzdGFiLnN0X21vZGUgJiAwNzc3NykpID09IC0xKQorCQlvaHNoaXRlKF8oInVuYWJsZSB0byBzZXQgbW9kZSBvZiB0YXJnZXQgZmlsZSAnJS4yNTBzJyIpLCBkc3QpOworfQorCitzdGF0aWMgdm9pZAorZmlsZV9sb2NrX3NldHVwKHN0cnVjdCBmbG9jayAqZmwsIHNob3J0IHR5cGUpCit7CisJZmwtPmxfdHlwZSA9IHR5cGU7CisJZmwtPmxfd2hlbmNlID0gU0VFS19TRVQ7CisJZmwtPmxfc3RhcnQgPSAwOworCWZsLT5sX2xlbiA9IDA7CisJZmwtPmxfcGlkID0gMDsKK30KKworLyoqCisgKiBVbmxvY2sgYSBwcmV2aW91c2x5IGxvY2tlZCBmaWxlLgorICovCit2b2lkCitmaWxlX3VubG9jayhpbnQgbG9ja2ZkLCBjb25zdCBjaGFyICpsb2NrX2Rlc2MpCit7CisJc3RydWN0IGZsb2NrIGZsOworCisJYXNzZXJ0KGxvY2tmZCA+PSAwKTsKKworCWZpbGVfbG9ja19zZXR1cCgmZmwsIEZfVU5MQ0spOworCisJaWYgKGZjbnRsKGxvY2tmZCwgRl9TRVRMSywgJmZsKSA9PSAtMSkKKwkJb2hzaGl0ZShfKCJ1bmFibGUgdG8gdW5sb2NrICVzIiksIGxvY2tfZGVzYyk7Cit9CisKK3N0YXRpYyB2b2lkCitmaWxlX3VubG9ja19jbGVhbnVwKGludCBhcmdjLCB2b2lkICoqYXJndikKK3sKKwlpbnQgbG9ja2ZkID0gKihpbnQgKilhcmd2WzBdOworCWNvbnN0IGNoYXIgKmxvY2tfZGVzYyA9IGFyZ3ZbMV07CisKKwlmaWxlX3VubG9jayhsb2NrZmQsIGxvY2tfZGVzYyk7Cit9CisKKy8qKgorICogQ2hlY2sgaWYgYSBmaWxlIGhhcyBhIGxvY2sgYWNxdWlyZWQuCisgKgorICogQHBhcmFtIGxvY2tmZCBUaGUgZmlsZSBkZXNjcmlwdG9yIGZvciB0aGUgbG9jay4KKyAqIEBwYXJhbSBmaWxlbmFtZSBUaGUgZmlsZSBuYW1lIGFzc29jaWF0ZWQgdG8gdGhlIGZpbGUgZGVzY3JpcHRvci4KKyAqLworYm9vbAorZmlsZV9pc19sb2NrZWQoaW50IGxvY2tmZCwgY29uc3QgY2hhciAqZmlsZW5hbWUpCit7CisJc3RydWN0IGZsb2NrIGZsOworCisJZmlsZV9sb2NrX3NldHVwKCZmbCwgRl9XUkxDSyk7CisKKwlpZiAoZmNudGwobG9ja2ZkLCBGX0dFVExLLCAmZmwpID09IC0xKQorCQlvaHNoaXQoXygidW5hYmxlIHRvIGNoZWNrIGZpbGUgJyVzJyBsb2NrIHN0YXR1cyIpLCBmaWxlbmFtZSk7CisKKwlpZiAoZmwubF90eXBlID09IEZfV1JMQ0sgJiYgZmwubF9waWQgIT0gZ2V0cGlkKCkpCisJCXJldHVybiB0cnVlOworCWVsc2UKKwkJcmV0dXJuIGZhbHNlOworfQorCisvKioKKyAqIExvY2sgYSBmaWxlLgorICoKKyAqIEBwYXJhbSBsb2NrZmQgVGhlIHBvaW50ZXIgdG8gdGhlIGxvY2sgZmlsZSBkZXNjcmlwdG9yLiBJdCBtdXN0IGJlIGFsbG9jYXRlZAorICogICAgICAgIHN0YXRpY2FsbHkgYXMgaXRzIGFkZHJlc3NlcyBpcyBwYXNzZWQgdG8gYSBjbGVhbnVwIGhhbmRsZXIuCisgKiBAcGFyYW0gZmxhZ3MgVGhlIGxvY2sgZmxhZ3Mgc3BlY2lmeWluZyB3aGF0IHR5cGUgb2YgbG9ja2luZyB0byBwZXJmb3JtLgorICogQHBhcmFtIGZpbGVuYW1lIFRoZSBuYW1lIG9mIHRoZSBmaWxlIHRvIGxvY2suCisgKiBAcGFyYW0gZGVzYyBUaGUgZGVzY3JpcHRpb24gb2YgdGhlIGZpbGUgdG8gbG9jay4KKyAqLwordm9pZAorZmlsZV9sb2NrKGludCAqbG9ja2ZkLCBlbnVtIGZpbGVfbG9ja19mbGFncyBmbGFncywgY29uc3QgY2hhciAqZmlsZW5hbWUsCisgICAgICAgICAgY29uc3QgY2hhciAqZGVzYykKK3sKKwlzdHJ1Y3QgZmxvY2sgZmw7CisJaW50IGxvY2tfY21kOworCisJc2V0Y2xvZXhlYygqbG9ja2ZkLCBmaWxlbmFtZSk7CisKKwlmaWxlX2xvY2tfc2V0dXAoJmZsLCBGX1dSTENLKTsKKworCWlmIChmbGFncyA9PSBGSUxFX0xPQ0tfV0FJVCkKKwkJbG9ja19jbWQgPSBGX1NFVExLVzsKKwllbHNlCisJCWxvY2tfY21kID0gRl9TRVRMSzsKKworCWlmIChmY250bCgqbG9ja2ZkLCBsb2NrX2NtZCwgJmZsKSA9PSAtMSkgeworCQlpZiAoZXJybm8gPT0gRUFDQ0VTIHx8IGVycm5vID09IEVBR0FJTikKKwkJCW9oc2hpdChfKCIlcyBpcyBsb2NrZWQgYnkgYW5vdGhlciBwcm9jZXNzIiksIGRlc2MpOworCQllbHNlCisJCQlvaHNoaXRlKF8oInVuYWJsZSB0byBsb2NrICVzIiksIGRlc2MpOworCX0KKworCXB1c2hfY2xlYW51cChmaWxlX3VubG9ja19jbGVhbnVwLCB+MCwgTlVMTCwgMCwgMiwgbG9ja2ZkLCBkZXNjKTsKK30KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvZmlsZS5oIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9maWxlLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTY5MmFlMgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvZmlsZS5oCkBAIC0wLDAgKzEsNTIgQEAKKy8qCisgKiBsaWJkcGtnIC0gRGViaWFuIHBhY2thZ2luZyBzdWl0ZSBsaWJyYXJ5IHJvdXRpbmVzCisgKiBmaWxlLmggLSBmaWxlIGhhbmRsaW5nIHJvdXRpbmVzCisgKgorICogQ29weXJpZ2h0IMKpIDIwMDgtMjAxMCBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CisgKgorICogVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisgKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAqIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorICovCisKKyNpZm5kZWYgTElCRFBLR19GSUxFX0gKKyNkZWZpbmUgTElCRFBLR19GSUxFX0gKKworI2luY2x1ZGUgPHN5cy90eXBlcy5oPgorCisjaW5jbHVkZSA8c3RkYm9vbC5oPgorCisjaW5jbHVkZSA8ZHBrZy9tYWNyb3MuaD4KKworRFBLR19CRUdJTl9ERUNMUworCitzdHJ1Y3QgZmlsZV9zdGF0IHsKKwl1aWRfdCB1aWQ7CisJZ2lkX3QgZ2lkOworCW1vZGVfdCBtb2RlOworfTsKKwordm9pZCBmaWxlX2NvcHlfcGVybXMoY29uc3QgY2hhciAqc3JjLCBjb25zdCBjaGFyICpkc3QpOworCitlbnVtIGZpbGVfbG9ja19mbGFncyB7CisJRklMRV9MT0NLX05PV0FJVCwKKwlGSUxFX0xPQ0tfV0FJVCwKK307CisKK2Jvb2wgZmlsZV9pc19sb2NrZWQoaW50IGxvY2tmZCwgY29uc3QgY2hhciAqZmlsZW5hbWUpOwordm9pZCBmaWxlX2xvY2soaW50ICpsb2NrZmQsIGVudW0gZmlsZV9sb2NrX2ZsYWdzIGZsYWdzLCBjb25zdCBjaGFyICpmaWxlbmFtZSwKKyAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmRlc2MpOwordm9pZCBmaWxlX3VubG9jayhpbnQgZmQsIGNvbnN0IGNoYXIgKmRlc2MpOworCitEUEtHX0VORF9ERUNMUworCisjZW5kaWYgLyogTElCRFBLR19GSUxFX0ggKi8KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvZ2xvYi5jIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9nbG9iLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTJkYTZhMwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvZ2xvYi5jCkBAIC0wLDAgKzEsNTAgQEAKKy8qCisgKiBsaWJkcGtnIC0gRGViaWFuIHBhY2thZ2luZyBzdWl0ZSBsaWJyYXJ5IHJvdXRpbmVzCisgKiBnbG9iLmMgLSBmaWxlIGdsb2JpbmcgZnVuY3Rpb25zCisgKgorICogQ29weXJpZ2h0IMKpIDIwMDksIDIwMTAgR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaW5jbHVkZSA8Y29uZmlnLmg+CisjaW5jbHVkZSA8Y29tcGF0Lmg+CisKKyNpbmNsdWRlIDxzdGRsaWIuaD4KKworI2luY2x1ZGUgPGRwa2cvZHBrZy5oPgorI2luY2x1ZGUgPGRwa2cvZ2xvYi5oPgorCit2b2lkCitnbG9iX2xpc3RfcHJlcGVuZChzdHJ1Y3QgZ2xvYl9ub2RlICoqbGlzdCwgY2hhciAqcGF0dGVybikKK3sKKwlzdHJ1Y3QgZ2xvYl9ub2RlICpub2RlOworCisJbm9kZSA9IG1fbWFsbG9jKHNpemVvZigqbm9kZSkpOworCW5vZGUtPnBhdHRlcm4gPSBwYXR0ZXJuOworCW5vZGUtPm5leHQgPSAqbGlzdDsKKwkqbGlzdCA9IG5vZGU7Cit9CisKK3ZvaWQKK2dsb2JfbGlzdF9mcmVlKHN0cnVjdCBnbG9iX25vZGUgKmhlYWQpCit7CisJd2hpbGUgKGhlYWQpIHsKKwkJc3RydWN0IGdsb2Jfbm9kZSAqbm9kZSA9IGhlYWQ7CisKKwkJaGVhZCA9IGhlYWQtPm5leHQ7CisJCWZyZWUobm9kZS0+cGF0dGVybik7CisJCWZyZWUobm9kZSk7CisJfQorfQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9nbG9iLmggYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL2dsb2IuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lYWYyYWY3Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9nbG9iLmgKQEAgLTAsMCArMSwzOCBAQAorLyoKKyAqIGxpYmRwa2cgLSBEZWJpYW4gcGFja2FnaW5nIHN1aXRlIGxpYnJhcnkgcm91dGluZXMKKyAqIGdsb2IuaCAtIGZpbGUgZ2xvYmluZyBmdW5jdGlvbnMKKyAqCisgKiBDb3B5cmlnaHQgwqkgMjAwOSwgMjAxMCBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CisgKgorICogVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisgKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAqIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorICovCisKKyNpZm5kZWYgTElCRFBLR19HTE9CX0gKKyNkZWZpbmUgTElCRFBLR19HTE9CX0gKKworI2luY2x1ZGUgPGRwa2cvbWFjcm9zLmg+CisKK0RQS0dfQkVHSU5fREVDTFMKKworc3RydWN0IGdsb2Jfbm9kZSB7CisJc3RydWN0IGdsb2Jfbm9kZSAqbmV4dDsKKwljaGFyICpwYXR0ZXJuOworfTsKKwordm9pZCBnbG9iX2xpc3RfcHJlcGVuZChzdHJ1Y3QgZ2xvYl9ub2RlICoqbGlzdCwgY2hhciAqcGF0dGVybik7Cit2b2lkIGdsb2JfbGlzdF9mcmVlKHN0cnVjdCBnbG9iX25vZGUgKmhlYWQpOworCitEUEtHX0VORF9ERUNMUworCisjZW5kaWYgLyogTElCRFBLR19HTE9CX0ggKi8KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvaTE4bi5oIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9pMThuLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTY2NzRkYgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvaTE4bi5oCkBAIC0wLDAgKzEsNDEgQEAKKy8qCisgKiBsaWJkcGtnIC0gRGViaWFuIHBhY2thZ2luZyBzdWl0ZSBsaWJyYXJ5IHJvdXRpbmVzCisgKiBpMThuLmggLSBpMThuIHN1cHBvcnQKKyAqCisgKiBDb3B5cmlnaHQgwqkgMjAwOC0yMDExIEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworI2lmbmRlZiBMSUJEUEtHX0kxOE5fSAorI2RlZmluZSBMSUJEUEtHX0kxOE5fSAorCisjaW5jbHVkZSA8ZHBrZy9tYWNyb3MuaD4KKworRFBLR19CRUdJTl9ERUNMUworCisjaW5jbHVkZSA8Z2V0dGV4dC5oPgorCisvKiBXZSBuZWVkIHRvIGluY2x1ZGUgdGhpcyBiZWNhdXNlIHBnZXR0ZXh0KCkgdXNlcyBMQ19NRVNTQUdFUywgYnV0IGxpYmludGwuaAorICogd2hpY2ggZ2V0cyBwdWxsZWQgYnkgZ2V0dGV4dC5oIG9ubHkgaW5jbHVkZXMgaXQgaWYgYnVpbGRpbmcgb3B0aW1pemVkLiAqLworI2luY2x1ZGUgPGxvY2FsZS5oPgorCisjZGVmaW5lIF8oc3RyKSBnZXR0ZXh0KHN0cikKKyNkZWZpbmUgUF8oc3RyLCBzdHJfcGx1cmFsLCBuKSBuZ2V0dGV4dChzdHIsIHN0cl9wbHVyYWwsIG4pCisjZGVmaW5lIE5fKHN0cikgZ2V0dGV4dF9ub29wKHN0cikKKyNkZWZpbmUgQ18oY3R4dCwgc3RyKSBwZ2V0dGV4dChjdHh0LCBzdHIpCisKK0RQS0dfRU5EX0RFQ0xTCisKKyNlbmRpZiAvKiBMSUJEUEtHX0kxOE5fSCAqLwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9saWJkcGtnLlZlcnNpb25zIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9saWJkcGtnLlZlcnNpb25zCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjhkYmQ3YTUKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL2xpYmRwa2cuVmVyc2lvbnMKQEAgLTAsMCArMSwyNjIgQEAKK0xJQkRQS0dfMCB7CitnbG9iYWw6CisJIyBQcm9ncmFtIG5hbWUKKwlkcGtnX3NldF9wcm9nbmFtZTsKKwlkcGtnX2dldF9wcm9nbmFtZTsKKworCSMgQXIgc3VwcG9ydAorCWRwa2dfYXJfbm9ybWFsaXplX25hbWU7CisKK2xvY2FsOgorCSo7Cit9OworCitMSUJEUEtHX1BSSVZBVEUgeworCSMgRXJyb3IgaGFuZGxpbmcKKwlwdXNoX2Vycm9yX2NvbnRleHRfanVtcDsKKwlwdXNoX2Vycm9yX2NvbnRleHRfZnVuYzsKKwlwdXNoX2Vycm9yX2NvbnRleHQ7CisJcG9wX2Vycm9yX2NvbnRleHQ7CisJcHJpbnRfZmF0YWxfZXJyb3I7CisJY2F0Y2hfZmF0YWxfZXJyb3I7CisJcHVzaF9jaGVja3BvaW50OworCXB1c2hfY2xlYW51cDsKKwlwb3BfY2xlYW51cDsKKwlvbmVycl9hYm9ydDsJCSMgWFhYIHZhcmlhYmxlLCBkbyBub3QgZXhwb3J0CisJb2hzaGl0djsKKwlvaHNoaXRlOworCW9oc2hpdDsKKwlkb19pbnRlcm5lcnI7CisJd2FybmluZ19nZXRfY291bnQ7CisJd2FybmluZ3Y7CisJd2FybmluZzsKKworCWRlYnVnX3NldF9vdXRwdXQ7CisJZGVidWdfc2V0X21hc2s7CisJZGVidWdfaGFzX2ZsYWc7CisJZGVidWc7CisKKwkjIEdlbmVyaWMgY2xlYW51cAorCWN1X2Nsb3NlcGlwZTsKKwljdV9jbG9zZWZpbGU7CisJY3VfY2xvc2VkaXI7CisJY3VfY2xvc2VmZDsKKworCSMg4oCYTXVzdCBkb+KAmSBmdW5jdGlvbnMKKwltX21hbGxvYzsKKwltX3JlYWxsb2M7CisJbV9zdHJkdXA7CisJbV9hc3ByaW50ZjsKKwltX2R1cDI7CisJbV9waXBlOworCW1fb3V0cHV0OworCWZnZXRzX211c3Q7CisJZmdldHNfY2hlY2tlZDsKKworCSMgQ2hhcnNldCBhbmQgc3RyaW5nIGZ1bmN0aW9ucworCWNpc2RpZ2l0OworCisJc3RyX2VzY2FwZV9mbXQ7CisJc3RyX3N0cmlwX3F1b3RlczsKKwlzdHJfcXVvdGVfbWV0YTsKKworCSMgVmFyaWFibGUgYnVmZmVyIHN1cHBvcnQKKwl2YXJidWZfaW5pdDsKKwl2YXJidWZfcmVzZXQ7CisJdmFyYnVmX2dyb3c7CisJdmFyYnVmX3RydW5jOworCXZhcmJ1Zl9hZGRfY2hhcjsKKwl2YXJidWZfZHVwX2NoYXI7CisJdmFyYnVmX21hcF9jaGFyOworCXZhcmJ1Zl9hZGRfYnVmOworCXZhcmJ1Zl9lbmRfc3RyOworCXZhcmJ1Zl9wcmludGY7CisJdmFyYnVmX3ZwcmludGY7CisJdmFyYnVmX2RldGFjaDsKKwl2YXJidWZfZGVzdHJveTsKKworCSMgUGF0aCwgZGlyZWN0b3J5IGFuZCBmaWxlIGZ1bmN0aW9ucworCXBhdGhfc2tpcF9zbGFzaF9kb3RzbGFzaDsKKwlwYXRoX3RyaW1fc2xhc2hfc2xhc2hkb3Q7CisJcGF0aF9tYWtlX3RlbXBfdGVtcGxhdGU7CisJcGF0aF9xdW90ZV9maWxlbmFtZTsKKworCWRpcl9zeW5jX3BhdGg7CisJZGlyX3N5bmNfY29udGVudHM7CisKKwlmaWxlX2NvcHlfcGVybXM7CisKKwlnbG9iX2xpc3RfcHJlcGVuZDsKKwlnbG9iX2xpc3RfZnJlZTsKKworCSMgRGF0YSBzdHJ1Y3R1cmUgZnVuY3Rpb25zCisJbmFtZXZhbHVlX2ZpbmRfYnlfbmFtZTsKKworCSMgQnVmZmVyIEkvTyBmdW5jdGlvbnMKKwlmZF9yZWFkOworCWZkX3dyaXRlOworCWJ1ZmZlcl9oYXNoOworCWJ1ZmZlcl9jb3B5Xyo7CisKKwkjIFN1YnByb2Nlc3MgYW5kIGNvbW1hbmQgaGFuZGxpbmcKKwlzdWJwcm9jX3NpZ25hbHNfc2V0dXA7CisJc3VicHJvY19zaWduYWxzX2NsZWFudXA7CisJc3VicHJvY19mb3JrOworCXN1YnByb2Nfd2FpdDsKKwlzdWJwcm9jX2NoZWNrOworCXN1YnByb2Nfd2FpdF9jaGVjazsKKworCWNvbW1hbmRfaW5pdDsKKwljb21tYW5kX2FkZF9hcmc7CisJY29tbWFuZF9hZGRfYXJnbDsKKwljb21tYW5kX2FkZF9hcmd2OworCWNvbW1hbmRfYWRkX2FyZ3M7CisJY29tbWFuZF9leGVjOworCWNvbW1hbmRfc2hlbGw7CisJY29tbWFuZF9kZXN0cm95OworCisJc2V0Y2xvZXhlYzsKKworCSMgQ29tcHJlc3Npb24gc3VwcG9ydAorCWNvbXByZXNzb3JfZ3ppcDsJIyBYWFggdmFyaWFibGUsIGRvIG5vdCBleHBvcnQKKwljb21wcmVzc29yX3h6OwkJIyBYWFggdmFyaWFibGUsIGRvIG5vdCBleHBvcnQKKwljb21wcmVzc29yX2J6aXAyOwkjIFhYWCB2YXJpYWJsZSwgZG8gbm90IGV4cG9ydAorCWNvbXByZXNzb3JfbHptYTsJIyBYWFggdmFyaWFibGUsIGRvIG5vdCBleHBvcnQKKwljb21wcmVzc29yX2ZpbmRfYnlfbmFtZTsKKwljb21wcmVzc29yX2ZpbmRfYnlfZXh0ZW5zaW9uOworCWNvbXByZXNzX2ZpbHRlcjsKKwlkZWNvbXByZXNzX2ZpbHRlcjsKKworCSMgQXIgc3VwcG9ydAorCWRwa2dfYXJfcHV0X21hZ2ljOworCWRwa2dfYXJfbWVtYmVyX3B1dF9oZWFkZXI7CisJZHBrZ19hcl9tZW1iZXJfcHV0X2ZpbGU7CisJZHBrZ19hcl9tZW1iZXJfcHV0X21lbTsKKwlkcGtnX2FyX21lbWJlcl9nZXRfc2l6ZTsKKworCSMgQ29uZmlndXJhdGlvbiBhbmQgY29tbWFuZCBsaW5lIGhhbmRsaW5nCisJbG9hZGNmZ2ZpbGU7CisJbXlvcHQ7CisJYmFkdXNhZ2U7CisJY2lwYWN0aW9uOwkJIyBYWFggdmFyaWFibGUsIGRvIG5vdCBleHBvcnQKKwlzZXRhY3Rpb247CisJc2V0b2Jzb2xldGU7CisKKwkjIEdlbmVyYWwgbG9nZ2luZworCWxvZ19maWxlOwkJIyBYWFggdmFyaWFibGUsIGRvIG5vdCBleHBvcnQKKwlsb2dfbWVzc2FnZTsKKworCSMgQWN0aW9uIGxvZ2dpbmcKKwlzdGF0dXNmZF9hZGQ7CisJc3RhdHVzZmRfc2VuZDsKKworCSMgUHJvZ3Jlc3MgcmVwb3J0IHN1cHBvcnQKKwlwcm9ncmVzc19pbml0OworCXByb2dyZXNzX3N0ZXA7CisJcHJvZ3Jlc3NfZG9uZTsKKworCSMgVGFyIHN1cHBvcnQKKwl0YXJfZXh0cmFjdG9yOworCisJIyBOb24tZnJlZWluZyBtYWxsb2MgKHBvb2wvYXJlbmEpCisJbmZtYWxsb2M7CisJbmZzdHJuc2F2ZTsKKwluZnN0cnNhdmU7CisJbmZmcmVlYWxsOworCisJIyBWZXJzaW9uIHN0cnVjdCBoYW5kbGluZworCWJsYW5rdmVyc2lvbjsKKwlpbmZvcm1hdGl2ZXZlcnNpb247CisJZXBvY2hzZGlmZmVyOworCXZlcnNpb25jb21wYXJlOworCXZlcnNpb25kZXNjcmliZTsKKwl2ZXJzaW9uc2F0aXNmaWVkOworCXZlcnNpb25zYXRpc2ZpZWQzOworCXBhcnNldmVyc2lvbjsKKworCSMgUGFja2FnZSBzdHJ1Y3QgaGFuZGxpbmcKKwlwa2dfYmxhbms7CisJcGtnYmluX2JsYW5rOworCXBrZ19uYW1lX2lzX2lsbGVnYWw7CisJcGtnX2lzX2luZm9ybWF0aXZlOworCWNvcHlfZGVwZW5kZW5jeV9saW5rczsKKwlwa2dfc29ydGVyX2J5X25hbWU7CisJcGtnX3N1bW1hcnk7CisKKwkjIFBhY2thZ2UgbGlzdCBoYW5kbGluZworCXBrZ19saXN0X25ldzsKKwlwa2dfbGlzdF9mcmVlOworCXBrZ19saXN0X3ByZXBlbmQ7CisKKwkjIFBhY2thZ2UgYXJyYXkgaGFuZGxpbmcKKwlwa2dfYXJyYXlfaW5pdF9mcm9tX2RiOworCXBrZ19hcnJheV9zb3J0OworCXBrZ19hcnJheV9kZXN0cm95OworCisJIyBQYWNrYWdlIHF1ZXVlIGhhbmRsaW5nCisJcGtnX3F1ZXVlX2luaXQ7CisJcGtnX3F1ZXVlX2Rlc3Ryb3k7CisJcGtnX3F1ZXVlX2lzX2VtcHR5OworCXBrZ19xdWV1ZV9wdXNoOworCXBrZ19xdWV1ZV9wb3A7CisKKwkjIFBhY2thZ2UgZmllbGQgZm9ybWF0IGhhbmRsaW5nCisJcGtnX2Zvcm1hdF9wYXJzZTsKKwlwa2dfZm9ybWF0X3Nob3c7CisJcGtnX2Zvcm1hdF9mcmVlOworCisJIyBQYWNrYWdlIGluLWNvcmUgZGF0YWJhc2UgZnVuY3Rpb25zCisJcGtnX2RiX2ZpbmQ7CisJcGtnX2RiX2NvdW50OworCXBrZ19kYl9yZXNldDsKKwlwa2dfZGJfaXRlcl9uZXc7CisJcGtnX2RiX2l0ZXJfbmV4dDsKKwlwa2dfZGJfaXRlcl9mcmVlOworCisJIyBQYWNrYWdlIG9uLWRpc2sgZGF0YWJhc2UgZnVuY3Rpb25zCisJc3RhdHVzaW5mb3M7CQkjIFhYWCB2YXJpYWJsZSwgZG8gbm90IGV4cG9ydAorCXdhbnRpbmZvczsJCSMgWFhYIHZhcmlhYmxlLCBkbyBub3QgZXhwb3J0CisJdmFyYnVmZGVwZW5kZW5jeTsKKwl2YXJidWZyZWNvcmQ7CisJd3JpdGVyZWNvcmQ7CisJcGFyc2VkYjsKKwl3cml0ZWRiOworCisJZHBrZ19kYl9zZXRfZGlyOworCWRwa2dfZGJfZ2V0X2RpcjsKKwlkcGtnX2RiX2dldF9wYXRoOworCisJIyBMb2cgYmFzZWQgcGFja2FnZSBvbi1kaXNrIGRhdGFiYXNlIHN1cHBvcnQKKwltb2RzdGF0ZGJfaW5pdDsKKwltb2RzdGF0ZGJfaXNfbG9ja2VkOworCW1vZHN0YXRkYl9jYW5fbG9jazsKKwltb2RzdGF0ZGJfbG9jazsKKwltb2RzdGF0ZGJfdW5sb2NrOworCW1vZHN0YXRkYl9vcGVuOworCW1vZHN0YXRkYl9ub3RlOworCW1vZHN0YXRkYl9ub3RlX2lmd3JpdGU7CisJbW9kc3RhdGRiX2NoZWNrcG9pbnQ7CisJbW9kc3RhdGRiX3NodXRkb3duOworCW1vZHN0YXRkYl9kb25lOworCisJIyBUcmlnZ2VycyBzdXBwb3J0CisJdHJpZ19uYW1lX2lzX2lsbGVnYWw7CisJdHJpZ2RlZl9zZXRfbWV0aG9kczsKKwl0cmlnZGVmX3VwZGF0ZV9zdGFydDsKKwl0cmlnZGVmX3VwZGF0ZV9wcmludGY7CisJdHJpZ2RlZl9wYXJzZTsKKwl0cmlnZGVmX3Byb2Nlc3NfZG9uZTsKKwl0cmlnX292ZXJyaWRlX2hvb2tzOworCXRyaWdfZmlsZV9hY3RpdmF0ZV9ieW5hbWU7CisJdHJpZ19maWxlX2FjdGl2YXRlOworCXRyaWdfbm90ZV9wZW5kOworCXRyaWdfbm90ZV9hdzsKKwl0cmlnX2NsZWFyX2F3YWl0ZXJzOworCXRyaWdfZmlsZV9pbnRlcmVzdHNfZW5zdXJlOworCXRyaWdfZmlsZV9pbnRlcmVzdHNfc2F2ZTsKKwl0cmlnX2NpY2JfaW50ZXJlc3RfZGVsZXRlOworCXRyaWdfY2ljYl9pbnRlcmVzdF9hZGQ7CisJdHJpZ19wYXJzZV9jaTsKKwl0cmlnX2NpY2Jfc3RhdHVzY2hhbmdlX2FjdGl2YXRlOworCXRyaWdfaW5jb3Jwb3JhdGU7Cit9IExJQkRQS0dfMDsKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvbGliZHBrZy5wYy5pbiBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvbGliZHBrZy5wYy5pbgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wNWEzNTE5Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9saWJkcGtnLnBjLmluCkBAIC0wLDAgKzEsMTIgQEAKK3ByZWZpeD1AcHJlZml4QAorZXhlY19wcmVmaXg9QGV4ZWNfcHJlZml4QAorbGliZGlyPUBsaWJkaXJACitpbmNsdWRlZGlyPUBpbmNsdWRlZGlyQAorcGtnbGliZGlyPUBwa2dsaWJkaXJACisKK05hbWU6IGxpYmRwa2cKK0Rlc2NyaXB0aW9uOiBEZWJpYW4gcGFja2FnZSBtYW5hZ2VtZW50IHN5c3RlbSBsaWJyYXJ5CitWZXJzaW9uOiBAVkVSU0lPTkAKK0xpYnM6IC1MJHtsaWJkaXJ9IC1sZHBrZworTGlicy5wcml2YXRlOiBAWkxJQl9MSUJTQCBAQloyX0xJQlNACitDZmxhZ3M6IC1JJHtpbmNsdWRlZGlyfQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9sb2cuYyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvbG9nLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDBiMmY2OAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvbG9nLmMKQEAgLTAsMCArMSwxMTcgQEAKKy8qCisgKiBsaWJkcGtnIC0gRGViaWFuIHBhY2thZ2luZyBzdWl0ZSBsaWJyYXJ5IHJvdXRpbmVzCisgKiBsb2cuYyAtIGxvZ2dpbmcgcmVsYXRlZCBmdW5jdGlvbnMKKyAqCisgKiBDb3B5cmlnaHQgwqkgMjAwNSBTY290dCBKYW1lcyBSZW1uYW50IDxzY290dEBuZXRzcGxpdC5jb20+CisgKgorICogVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisgKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAqIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorICovCisKKyNpbmNsdWRlIDxjb25maWcuaD4KKyNpbmNsdWRlIDxjb21wYXQuaD4KKworI2luY2x1ZGUgPGFzc2VydC5oPgorI2luY2x1ZGUgPGVycm5vLmg+CisjaW5jbHVkZSA8dGltZS5oPgorI2luY2x1ZGUgPHVuaXN0ZC5oPgorI2luY2x1ZGUgPHN0ZGFyZy5oPgorI2luY2x1ZGUgPHN0ZGlvLmg+CisKKyNpbmNsdWRlIDxkcGtnL2kxOG4uaD4KKyNpbmNsdWRlIDxkcGtnL2Rwa2cuaD4KKyNpbmNsdWRlIDxkcGtnL2Rwa2ctZGIuaD4KKyNpbmNsdWRlIDxkcGtnL2ZkaW8uaD4KKworY29uc3QgY2hhciAqbG9nX2ZpbGUgPSBOVUxMOworCit2b2lkCitsb2dfbWVzc2FnZShjb25zdCBjaGFyICpmbXQsIC4uLikKK3sKKwlzdGF0aWMgc3RydWN0IHZhcmJ1ZiBsb2c7CisJc3RhdGljIEZJTEUgKmxvZ2ZkID0gTlVMTDsKKwljaGFyIHRpbWVfc3RyWzIwXTsKKwl0aW1lX3Qgbm93OworCXZhX2xpc3QgYXJnczsKKworCWlmICghbG9nX2ZpbGUpCisJCXJldHVybjsKKworCWlmICghbG9nZmQpIHsKKwkJbG9nZmQgPSBmb3Blbihsb2dfZmlsZSwgImEiKTsKKwkJaWYgKCFsb2dmZCkgeworCQkJZnByaW50ZihzdGRlcnIsIF8oImNvdWxkbid0IG9wZW4gbG9nIGAlcyc6ICVzXG4iKSwKKwkJCSAgICAgICAgbG9nX2ZpbGUsIHN0cmVycm9yKGVycm5vKSk7CisJCQlsb2dfZmlsZSA9IE5VTEw7CisJCQlyZXR1cm47CisJCX0KKwkJc2V0bGluZWJ1Zihsb2dmZCk7CisJCXNldGNsb2V4ZWMoZmlsZW5vKGxvZ2ZkKSwgbG9nX2ZpbGUpOworCX0KKworCXZhX3N0YXJ0KGFyZ3MsIGZtdCk7CisJdmFyYnVmX3Jlc2V0KCZsb2cpOworCXZhcmJ1Zl92cHJpbnRmKCZsb2csIGZtdCwgYXJncyk7CisJdmFfZW5kKGFyZ3MpOworCisJdGltZSgmbm93KTsKKwlzdHJmdGltZSh0aW1lX3N0ciwgc2l6ZW9mKHRpbWVfc3RyKSwgIiVZLSVtLSVkICVIOiVNOiVTIiwKKwkgICAgICAgICBsb2NhbHRpbWUoJm5vdykpOworCWZwcmludGYobG9nZmQsICIlcyAlc1xuIiwgdGltZV9zdHIsIGxvZy5idWYpOworfQorCitzdHJ1Y3QgcGlwZWYgeworCXN0cnVjdCBwaXBlZiAqbmV4dDsKKwlpbnQgZmQ7Cit9OworCitzdGF0aWMgc3RydWN0IHBpcGVmICpzdGF0dXNfcGlwZXMgPSBOVUxMOworCit2b2lkCitzdGF0dXNmZF9hZGQoaW50IGZkKQoreworCXN0cnVjdCBwaXBlZiAqcGlwZV9uZXc7CisKKwlzZXRjbG9leGVjKGZkLCBfKCI8cGFja2FnZSBzdGF0dXMgYW5kIHByb2dyZXNzIGZpbGUgZGVzY3JpcHRvcj4iKSk7CisKKwlwaXBlX25ldyA9IG5mbWFsbG9jKHNpemVvZihzdHJ1Y3QgcGlwZWYpKTsKKwlwaXBlX25ldy0+ZmQgPSBmZDsKKwlwaXBlX25ldy0+bmV4dCA9IHN0YXR1c19waXBlczsKKwlzdGF0dXNfcGlwZXMgPSBwaXBlX25ldzsKK30KKwordm9pZAorc3RhdHVzZmRfc2VuZChjb25zdCBjaGFyICpmbXQsIC4uLikKK3sKKwlzdGF0aWMgc3RydWN0IHZhcmJ1ZiB2YjsKKwlzdHJ1Y3QgcGlwZWYgKnBpcGVmOworCXZhX2xpc3QgYXJnczsKKworCWlmICghc3RhdHVzX3BpcGVzKQorCQlyZXR1cm47CisKKwl2YV9zdGFydChhcmdzLCBmbXQpOworCXZhcmJ1Zl9yZXNldCgmdmIpOworCXZhcmJ1Zl92cHJpbnRmKCZ2YiwgZm10LCBhcmdzKTsKKwkvKiBTYW5pdGl6ZSBzdHJpbmcgdG8gbm90IGluY2x1ZGUgbmV3IGxpbmVzLCBhcyBmcm9udC1lbmRzIHNob3VsZCBiZQorCSAqIGRvaW5nIHRoZWlyIG93biB3b3JkLXdyYXBwaW5nLiAqLworCXZhcmJ1Zl9tYXBfY2hhcigmdmIsICdcbicsICcgJyk7CisJdmFyYnVmX2FkZF9jaGFyKCZ2YiwgJ1xuJyk7CisJdmFfZW5kKGFyZ3MpOworCisJZm9yIChwaXBlZiA9IHN0YXR1c19waXBlczsgcGlwZWY7IHBpcGVmID0gcGlwZWYtPm5leHQpIHsKKwkJaWYgKGZkX3dyaXRlKHBpcGVmLT5mZCwgdmIuYnVmLCB2Yi51c2VkKSA8IDApCisJCQlvaHNoaXRlKF8oInVuYWJsZSB0byB3cml0ZSB0byBzdGF0dXMgZmQgJWQiKSwKKwkJCSAgICAgICAgcGlwZWYtPmZkKTsKKwl9Cit9CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL21hY3Jvcy5oIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9tYWNyb3MuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jMzI5YmJjCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9tYWNyb3MuaApAQCAtMCwwICsxLDkxIEBACisvKgorICogbGliZHBrZyAtIERlYmlhbiBwYWNrYWdpbmcgc3VpdGUgbGlicmFyeSByb3V0aW5lcworICogbWFjcm9zLmggLSBDIGxhbmd1YWdlIHN1cHBvcnQgbWFjcm9zCisgKgorICogQ29weXJpZ2h0IMKpIDIwMDgsIDIwMDkgR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaWZuZGVmIExJQkRQS0dfTUFDUk9TX0gKKyNkZWZpbmUgTElCRFBLR19NQUNST1NfSAorCisjaWZuZGVmIExJQkRQS0dfVk9MQVRJTEVfQVBJCisjZXJyb3IgIlRoZSBsaWJkcGtnIEFQSSBpcyB0byBiZSBjb25zaWRlcmVkIHZvbGF0aWxlLCBwbGVhc2UgcmVhZCAnUkVBRE1FLmFwaScuIgorI2VuZGlmCisKKy8qIExhbmd1YWdlIGRlZmluaXRpb25zLiAqLworCisjaWZkZWYgX19HTlVDX18KKyNkZWZpbmUgRFBLR19HQ0NfVkVSU0lPTiAoX19HTlVDX18gPDwgOCB8IF9fR05VQ19NSU5PUl9fKQorI2Vsc2UKKyNkZWZpbmUgRFBLR19HQ0NfVkVSU0lPTiAwCisjZW5kaWYKKworI2lmIERQS0dfR0NDX1ZFUlNJT04gPj0gMHgwMzAwCisjZGVmaW5lIERQS0dfQVRUUl9VTlVTRUQJX19hdHRyaWJ1dGVfXygodW51c2VkKSkKKyNkZWZpbmUgRFBLR19BVFRSX0NPTlNUCQlfX2F0dHJpYnV0ZV9fKChjb25zdCkpCisjZGVmaW5lIERQS0dfQVRUUl9QVVJFCQlfX2F0dHJpYnV0ZV9fKChwdXJlKSkKKyNkZWZpbmUgRFBLR19BVFRSX01BTExPQwlfX2F0dHJpYnV0ZV9fKChtYWxsb2MpKQorI2RlZmluZSBEUEtHX0FUVFJfTk9SRVQJCV9fYXR0cmlidXRlX18oKG5vcmV0dXJuKSkKKyNkZWZpbmUgRFBLR19BVFRSX1BSSU5URihuKQlfX2F0dHJpYnV0ZV9fKChmb3JtYXQocHJpbnRmLCBuLCBuICsgMSkpKQorI2RlZmluZSBEUEtHX0FUVFJfVlBSSU5URihuKQlfX2F0dHJpYnV0ZV9fKChmb3JtYXQocHJpbnRmLCBuLCAwKSkpCisjZWxzZQorI2RlZmluZSBEUEtHX0FUVFJfVU5VU0VECisjZGVmaW5lIERQS0dfQVRUUl9DT05TVAorI2RlZmluZSBEUEtHX0FUVFJfUFVSRQorI2RlZmluZSBEUEtHX0FUVFJfTUFMTE9DCisjZGVmaW5lIERQS0dfQVRUUl9OT1JFVAorI2RlZmluZSBEUEtHX0FUVFJfUFJJTlRGKG4pCisjZGVmaW5lIERQS0dfQVRUUl9WUFJJTlRGKG4pCisjZW5kaWYKKworI2lmIERQS0dfR0NDX1ZFUlNJT04gPiAweDAzMDIKKyNkZWZpbmUgRFBLR19BVFRSX05PTk5VTEwoLi4uKQlfX2F0dHJpYnV0ZV9fKChub25udWxsKF9fVkFfQVJHU19fKSkpCisjZGVmaW5lIERQS0dfQVRUUl9SRVFSRVQJX19hdHRyaWJ1dGVfXygod2Fybl91bnVzZWRfcmVzdWx0KSkKKyNlbHNlCisjZGVmaW5lIERQS0dfQVRUUl9OT05OVUxMKC4uLikKKyNkZWZpbmUgRFBLR19BVFRSX1JFUVJFVAorI2VuZGlmCisKKyNpZiBEUEtHX0dDQ19WRVJTSU9OID49IDB4MDQwMAorI2RlZmluZSBEUEtHX0FUVFJfU0VOVElORUwJX19hdHRyaWJ1dGVfXygoc2VudGluZWwpKQorI2Vsc2UKKyNkZWZpbmUgRFBLR19BVFRSX1NFTlRJTkVMCisjZW5kaWYKKworI2lmZGVmIF9fY3BsdXNwbHVzCisjZGVmaW5lIERQS0dfQkVHSU5fREVDTFMJZXh0ZXJuICJDIiB7CisjZGVmaW5lIERQS0dfRU5EX0RFQ0xTCQl9CisjZWxzZQorI2RlZmluZSBEUEtHX0JFR0lOX0RFQ0xTCisjZGVmaW5lIERQS0dfRU5EX0RFQ0xTCisjZW5kaWYKKworI2lmbmRlZiBhcnJheV9jb3VudAorI2RlZmluZSBhcnJheV9jb3VudChhKSAoc2l6ZW9mKGEpIC8gc2l6ZW9mKChhKVswXSkpCisjZW5kaWYKKworLyogRm9yIEMrKyB1c2UgbmF0aXZlIGltcGxlbWVudGF0aW9ucyBmcm9tIFNUTCBvciBzaW1pbGFyLiAqLworI2lmbmRlZiBfX2NwbHVzcGx1cworI2lmbmRlZiBtaW4KKyNkZWZpbmUgbWluKGEsIGIpICgoYSkgPCAoYikgPyAoYSkgOiAoYikpCisjZW5kaWYKKworI2lmbmRlZiBtYXgKKyNkZWZpbmUgbWF4KGEsIGIpICgoYSkgPiAoYikgPyAoYSkgOiAoYikpCisjZW5kaWYKKyNlbmRpZgorCisjZW5kaWYgLyogTElCRFBLR19NQUNST1NfSCAqLwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9tZDUuYyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvbWQ1LmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uM2RhMThjOQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvbWQ1LmMKQEAgLTAsMCArMSwyNTIgQEAKKy8qCSRPcGVuQlNEOiBtZDUuYyx2IDEuNyAyMDA0LzA1LzI4IDE1OjEwOjI3IG1pbGxlcnQgRXhwICQJKi8KKworLyoKKyAqIFRoaXMgY29kZSBpbXBsZW1lbnRzIHRoZSBNRDUgbWVzc2FnZS1kaWdlc3QgYWxnb3JpdGhtLgorICogVGhlIGFsZ29yaXRobSBpcyBkdWUgdG8gUm9uIFJpdmVzdC4gIFRoaXMgY29kZSB3YXMKKyAqIHdyaXR0ZW4gYnkgQ29saW4gUGx1bWIgaW4gMTk5Mywgbm8gY29weXJpZ2h0IGlzIGNsYWltZWQuCisgKiBUaGlzIGNvZGUgaXMgaW4gdGhlIHB1YmxpYyBkb21haW47IGRvIHdpdGggaXQgd2hhdCB5b3Ugd2lzaC4KKyAqCisgKiBFcXVpdmFsZW50IGNvZGUgaXMgYXZhaWxhYmxlIGZyb20gUlNBIERhdGEgU2VjdXJpdHksIEluYy4KKyAqIFRoaXMgY29kZSBoYXMgYmVlbiB0ZXN0ZWQgYWdhaW5zdCB0aGF0LCBhbmQgaXMgZXF1aXZhbGVudCwKKyAqIGV4Y2VwdCB0aGF0IHlvdSBkb24ndCBuZWVkIHRvIGluY2x1ZGUgdHdvIHBhZ2VzIG9mIGxlZ2FsZXNlCisgKiB3aXRoIGV2ZXJ5IGNvcHkuCisgKgorICogVG8gY29tcHV0ZSB0aGUgbWVzc2FnZSBkaWdlc3Qgb2YgYSBjaHVuayBvZiBieXRlcywgZGVjbGFyZSBhbgorICogTUQ1Q29udGV4dCBzdHJ1Y3R1cmUsIHBhc3MgaXQgdG8gTUQ1SW5pdCwgY2FsbCBNRDVVcGRhdGUgYXMKKyAqIG5lZWRlZCBvbiBidWZmZXJzIGZ1bGwgb2YgYnl0ZXMsIGFuZCB0aGVuIGNhbGwgTUQ1RmluYWwsIHdoaWNoCisgKiB3aWxsIGZpbGwgYSBzdXBwbGllZCAxNi1ieXRlIGFycmF5IHdpdGggdGhlIGRpZ2VzdC4KKyAqLworCisjaW5jbHVkZSA8Y29uZmlnLmg+CisjaW5jbHVkZSA8Y29tcGF0Lmg+CisKKyNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KKworI2luY2x1ZGUgIm1kNS5oIgorCisjZGVmaW5lIFBVVF82NEJJVF9MRShjcCwgdmFsdWUpIGRvIHsJCQkJCVwKKwkoY3ApWzddID0gKHZhbHVlKSA+PiA1NjsJCQkJCVwKKwkoY3ApWzZdID0gKHZhbHVlKSA+PiA0ODsJCQkJCVwKKwkoY3ApWzVdID0gKHZhbHVlKSA+PiA0MDsJCQkJCVwKKwkoY3ApWzRdID0gKHZhbHVlKSA+PiAzMjsJCQkJCVwKKwkoY3ApWzNdID0gKHZhbHVlKSA+PiAyNDsJCQkJCVwKKwkoY3ApWzJdID0gKHZhbHVlKSA+PiAxNjsJCQkJCVwKKwkoY3ApWzFdID0gKHZhbHVlKSA+PiA4OwkJCQkJCVwKKwkoY3ApWzBdID0gKHZhbHVlKTsgfSB3aGlsZSAoMCkKKworI2RlZmluZSBQVVRfMzJCSVRfTEUoY3AsIHZhbHVlKSBkbyB7CQkJCQlcCisJKGNwKVszXSA9ICh2YWx1ZSkgPj4gMjQ7CQkJCQlcCisJKGNwKVsyXSA9ICh2YWx1ZSkgPj4gMTY7CQkJCQlcCisJKGNwKVsxXSA9ICh2YWx1ZSkgPj4gODsJCQkJCQlcCisJKGNwKVswXSA9ICh2YWx1ZSk7IH0gd2hpbGUgKDApCisKK3N0YXRpYyB1X2ludDhfdCBQQURESU5HW01ENV9CTE9DS19MRU5HVEhdID0geworCTB4ODAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsCisJMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwKKwkwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwCit9OworCisvKgorICogU3RhcnQgTUQ1IGFjY3VtdWxhdGlvbi4gIFNldCBiaXQgY291bnQgdG8gMCBhbmQgYnVmZmVyIHRvIG15c3RlcmlvdXMKKyAqIGluaXRpYWxpemF0aW9uIGNvbnN0YW50cy4KKyAqLwordm9pZAorTUQ1SW5pdChNRDVfQ1RYICpjdHgpCit7CisJY3R4LT5jb3VudCA9IDA7CisJY3R4LT5zdGF0ZVswXSA9IDB4Njc0NTIzMDE7CisJY3R4LT5zdGF0ZVsxXSA9IDB4ZWZjZGFiODk7CisJY3R4LT5zdGF0ZVsyXSA9IDB4OThiYWRjZmU7CisJY3R4LT5zdGF0ZVszXSA9IDB4MTAzMjU0NzY7Cit9CisKKy8qCisgKiBVcGRhdGUgY29udGV4dCB0byByZWZsZWN0IHRoZSBjb25jYXRlbmF0aW9uIG9mIGFub3RoZXIgYnVmZmVyIGZ1bGwKKyAqIG9mIGJ5dGVzLgorICovCit2b2lkCitNRDVVcGRhdGUoTUQ1X0NUWCAqY3R4LCBjb25zdCB1bnNpZ25lZCBjaGFyICppbnB1dCwgc2l6ZV90IGxlbikKK3sKKwlzaXplX3QgaGF2ZSwgbmVlZDsKKworCS8qIENoZWNrIGhvdyBtYW55IGJ5dGVzIHdlIGFscmVhZHkgaGF2ZSBhbmQgaG93IG1hbnkgbW9yZSB3ZSBuZWVkLiAqLworCWhhdmUgPSAoc2l6ZV90KSgoY3R4LT5jb3VudCA+PiAzKSAmIChNRDVfQkxPQ0tfTEVOR1RIIC0gMSkpOworCW5lZWQgPSBNRDVfQkxPQ0tfTEVOR1RIIC0gaGF2ZTsKKworCS8qIFVwZGF0ZSBiaXRjb3VudCAqLworCWN0eC0+Y291bnQgKz0gKHVfaW50NjRfdClsZW4gPDwgMzsKKworCWlmIChsZW4gPj0gbmVlZCkgeworCQlpZiAoaGF2ZSAhPSAwKSB7CisJCQltZW1jcHkoY3R4LT5idWZmZXIgKyBoYXZlLCBpbnB1dCwgbmVlZCk7CisJCQlNRDVUcmFuc2Zvcm0oY3R4LT5zdGF0ZSwgY3R4LT5idWZmZXIpOworCQkJaW5wdXQgKz0gbmVlZDsKKwkJCWxlbiAtPSBuZWVkOworCQkJaGF2ZSA9IDA7CisJCX0KKworCQkvKiBQcm9jZXNzIGRhdGEgaW4gTUQ1X0JMT0NLX0xFTkdUSC1ieXRlIGNodW5rcy4gKi8KKwkJd2hpbGUgKGxlbiA+PSBNRDVfQkxPQ0tfTEVOR1RIKSB7CisJCQlNRDVUcmFuc2Zvcm0oY3R4LT5zdGF0ZSwgaW5wdXQpOworCQkJaW5wdXQgKz0gTUQ1X0JMT0NLX0xFTkdUSDsKKwkJCWxlbiAtPSBNRDVfQkxPQ0tfTEVOR1RIOworCQl9CisJfQorCisJLyogSGFuZGxlIGFueSByZW1haW5pbmcgYnl0ZXMgb2YgZGF0YS4gKi8KKwlpZiAobGVuICE9IDApCisJCW1lbWNweShjdHgtPmJ1ZmZlciArIGhhdmUsIGlucHV0LCBsZW4pOworfQorCisvKgorICogUGFkIHBhZCB0byA2NC1ieXRlIGJvdW5kYXJ5IHdpdGggdGhlIGJpdCBwYXR0ZXJuCisgKiAxIDAqICg2NC1iaXQgY291bnQgb2YgYml0cyBwcm9jZXNzZWQsIE1TQi1maXJzdCkKKyAqLwordm9pZAorTUQ1UGFkKE1ENV9DVFggKmN0eCkKK3sKKwl1X2ludDhfdCBjb3VudFs4XTsKKwlzaXplX3QgcGFkbGVuOworCisJLyogQ29udmVydCBjb3VudCB0byA4IGJ5dGVzIGluIGxpdHRsZSBlbmRpYW4gb3JkZXIuICovCisJUFVUXzY0QklUX0xFKGNvdW50LCBjdHgtPmNvdW50KTsKKworCS8qIFBhZCBvdXQgdG8gNTYgbW9kIDY0LiAqLworCXBhZGxlbiA9IE1ENV9CTE9DS19MRU5HVEggLQorCSAgICAoKGN0eC0+Y291bnQgPj4gMykgJiAoTUQ1X0JMT0NLX0xFTkdUSCAtIDEpKTsKKwlpZiAocGFkbGVuIDwgMSArIDgpCisJCXBhZGxlbiArPSBNRDVfQkxPQ0tfTEVOR1RIOworCU1ENVVwZGF0ZShjdHgsIFBBRERJTkcsIHBhZGxlbiAtIDgpOwkJLyogcGFkbGVuIC0gOCA8PSA2NCAqLworCU1ENVVwZGF0ZShjdHgsIGNvdW50LCA4KTsKK30KKworLyoKKyAqIEZpbmFsIHdyYXB1cC0tY2FsbCBNRDVQYWQsIGZpbGwgaW4gZGlnZXN0IGFuZCB6ZXJvIG91dCBjdHguCisgKi8KK3ZvaWQKK01ENUZpbmFsKHVuc2lnbmVkIGNoYXIgZGlnZXN0W01ENV9ESUdFU1RfTEVOR1RIXSwgTUQ1X0NUWCAqY3R4KQoreworCWludCBpOworCisJTUQ1UGFkKGN0eCk7CisJaWYgKGRpZ2VzdCAhPSBOVUxMKSB7CisJCWZvciAoaSA9IDA7IGkgPCA0OyBpKyspCisJCQlQVVRfMzJCSVRfTEUoZGlnZXN0ICsgaSAqIDQsIGN0eC0+c3RhdGVbaV0pOworCQltZW1zZXQoY3R4LCAwLCBzaXplb2YoKmN0eCkpOworCX0KK30KKworCisvKiBUaGUgZm91ciBjb3JlIGZ1bmN0aW9ucyAtIEYxIGlzIG9wdGltaXplZCBzb21ld2hhdCAqLworCisvKiAjZGVmaW5lIEYxKHgsIHksIHopICh4ICYgeSB8IH54ICYgeikgKi8KKyNkZWZpbmUgRjEoeCwgeSwgeikgKHogXiAoeCAmICh5IF4geikpKQorI2RlZmluZSBGMih4LCB5LCB6KSBGMSh6LCB4LCB5KQorI2RlZmluZSBGMyh4LCB5LCB6KSAoeCBeIHkgXiB6KQorI2RlZmluZSBGNCh4LCB5LCB6KSAoeSBeICh4IHwgfnopKQorCisvKiBUaGlzIGlzIHRoZSBjZW50cmFsIHN0ZXAgaW4gdGhlIE1ENSBhbGdvcml0aG0uICovCisjZGVmaW5lIE1ENVNURVAoZiwgdywgeCwgeSwgeiwgZGF0YSwgcykgXAorCSggdyArPSBmKHgsIHksIHopICsgZGF0YSwgIHcgPSB3PDxzIHwgdz4+KDMyLXMpLCAgdyArPSB4ICkKKworLyoKKyAqIFRoZSBjb3JlIG9mIHRoZSBNRDUgYWxnb3JpdGhtLCB0aGlzIGFsdGVycyBhbiBleGlzdGluZyBNRDUgaGFzaCB0bworICogcmVmbGVjdCB0aGUgYWRkaXRpb24gb2YgMTYgbG9uZ3dvcmRzIG9mIG5ldyBkYXRhLiAgTUQ1VXBkYXRlIGJsb2NrcworICogdGhlIGRhdGEgYW5kIGNvbnZlcnRzIGJ5dGVzIGludG8gbG9uZ3dvcmRzIGZvciB0aGlzIHJvdXRpbmUuCisgKi8KK3ZvaWQKK01ENVRyYW5zZm9ybSh1X2ludDMyX3Qgc3RhdGVbNF0sIGNvbnN0IHVfaW50OF90IGJsb2NrW01ENV9CTE9DS19MRU5HVEhdKQoreworCXVfaW50MzJfdCBhLCBiLCBjLCBkLCBpbltNRDVfQkxPQ0tfTEVOR1RIIC8gNF07CisKKyNpZm5kZWYgV09SRFNfQklHRU5ESUFOCisJbWVtY3B5KGluLCBibG9jaywgc2l6ZW9mKGluKSk7CisjZWxzZQorCWZvciAoYSA9IDA7IGEgPCBNRDVfQkxPQ0tfTEVOR1RIIC8gNDsgYSsrKSB7CisJCWluW2FdID0gKHVfaW50MzJfdCkoCisJCSAgICAodV9pbnQzMl90KShibG9ja1thICogNCArIDBdKSB8CisJCSAgICAodV9pbnQzMl90KShibG9ja1thICogNCArIDFdKSA8PCAgOCB8CisJCSAgICAodV9pbnQzMl90KShibG9ja1thICogNCArIDJdKSA8PCAxNiB8CisJCSAgICAodV9pbnQzMl90KShibG9ja1thICogNCArIDNdKSA8PCAyNCk7CisJfQorI2VuZGlmCisKKwlhID0gc3RhdGVbMF07CisJYiA9IHN0YXRlWzFdOworCWMgPSBzdGF0ZVsyXTsKKwlkID0gc3RhdGVbM107CisKKwlNRDVTVEVQKEYxLCBhLCBiLCBjLCBkLCBpblsgMF0gKyAweGQ3NmFhNDc4LCAgNyk7CisJTUQ1U1RFUChGMSwgZCwgYSwgYiwgYywgaW5bIDFdICsgMHhlOGM3Yjc1NiwgMTIpOworCU1ENVNURVAoRjEsIGMsIGQsIGEsIGIsIGluWyAyXSArIDB4MjQyMDcwZGIsIDE3KTsKKwlNRDVTVEVQKEYxLCBiLCBjLCBkLCBhLCBpblsgM10gKyAweGMxYmRjZWVlLCAyMik7CisJTUQ1U1RFUChGMSwgYSwgYiwgYywgZCwgaW5bIDRdICsgMHhmNTdjMGZhZiwgIDcpOworCU1ENVNURVAoRjEsIGQsIGEsIGIsIGMsIGluWyA1XSArIDB4NDc4N2M2MmEsIDEyKTsKKwlNRDVTVEVQKEYxLCBjLCBkLCBhLCBiLCBpblsgNl0gKyAweGE4MzA0NjEzLCAxNyk7CisJTUQ1U1RFUChGMSwgYiwgYywgZCwgYSwgaW5bIDddICsgMHhmZDQ2OTUwMSwgMjIpOworCU1ENVNURVAoRjEsIGEsIGIsIGMsIGQsIGluWyA4XSArIDB4Njk4MDk4ZDgsICA3KTsKKwlNRDVTVEVQKEYxLCBkLCBhLCBiLCBjLCBpblsgOV0gKyAweDhiNDRmN2FmLCAxMik7CisJTUQ1U1RFUChGMSwgYywgZCwgYSwgYiwgaW5bMTBdICsgMHhmZmZmNWJiMSwgMTcpOworCU1ENVNURVAoRjEsIGIsIGMsIGQsIGEsIGluWzExXSArIDB4ODk1Y2Q3YmUsIDIyKTsKKwlNRDVTVEVQKEYxLCBhLCBiLCBjLCBkLCBpblsxMl0gKyAweDZiOTAxMTIyLCAgNyk7CisJTUQ1U1RFUChGMSwgZCwgYSwgYiwgYywgaW5bMTNdICsgMHhmZDk4NzE5MywgMTIpOworCU1ENVNURVAoRjEsIGMsIGQsIGEsIGIsIGluWzE0XSArIDB4YTY3OTQzOGUsIDE3KTsKKwlNRDVTVEVQKEYxLCBiLCBjLCBkLCBhLCBpblsxNV0gKyAweDQ5YjQwODIxLCAyMik7CisKKwlNRDVTVEVQKEYyLCBhLCBiLCBjLCBkLCBpblsgMV0gKyAweGY2MWUyNTYyLCAgNSk7CisJTUQ1U1RFUChGMiwgZCwgYSwgYiwgYywgaW5bIDZdICsgMHhjMDQwYjM0MCwgIDkpOworCU1ENVNURVAoRjIsIGMsIGQsIGEsIGIsIGluWzExXSArIDB4MjY1ZTVhNTEsIDE0KTsKKwlNRDVTVEVQKEYyLCBiLCBjLCBkLCBhLCBpblsgMF0gKyAweGU5YjZjN2FhLCAyMCk7CisJTUQ1U1RFUChGMiwgYSwgYiwgYywgZCwgaW5bIDVdICsgMHhkNjJmMTA1ZCwgIDUpOworCU1ENVNURVAoRjIsIGQsIGEsIGIsIGMsIGluWzEwXSArIDB4MDI0NDE0NTMsICA5KTsKKwlNRDVTVEVQKEYyLCBjLCBkLCBhLCBiLCBpblsxNV0gKyAweGQ4YTFlNjgxLCAxNCk7CisJTUQ1U1RFUChGMiwgYiwgYywgZCwgYSwgaW5bIDRdICsgMHhlN2QzZmJjOCwgMjApOworCU1ENVNURVAoRjIsIGEsIGIsIGMsIGQsIGluWyA5XSArIDB4MjFlMWNkZTYsICA1KTsKKwlNRDVTVEVQKEYyLCBkLCBhLCBiLCBjLCBpblsxNF0gKyAweGMzMzcwN2Q2LCAgOSk7CisJTUQ1U1RFUChGMiwgYywgZCwgYSwgYiwgaW5bIDNdICsgMHhmNGQ1MGQ4NywgMTQpOworCU1ENVNURVAoRjIsIGIsIGMsIGQsIGEsIGluWyA4XSArIDB4NDU1YTE0ZWQsIDIwKTsKKwlNRDVTVEVQKEYyLCBhLCBiLCBjLCBkLCBpblsxM10gKyAweGE5ZTNlOTA1LCAgNSk7CisJTUQ1U1RFUChGMiwgZCwgYSwgYiwgYywgaW5bIDJdICsgMHhmY2VmYTNmOCwgIDkpOworCU1ENVNURVAoRjIsIGMsIGQsIGEsIGIsIGluWyA3XSArIDB4Njc2ZjAyZDksIDE0KTsKKwlNRDVTVEVQKEYyLCBiLCBjLCBkLCBhLCBpblsxMl0gKyAweDhkMmE0YzhhLCAyMCk7CisKKwlNRDVTVEVQKEYzLCBhLCBiLCBjLCBkLCBpblsgNV0gKyAweGZmZmEzOTQyLCAgNCk7CisJTUQ1U1RFUChGMywgZCwgYSwgYiwgYywgaW5bIDhdICsgMHg4NzcxZjY4MSwgMTEpOworCU1ENVNURVAoRjMsIGMsIGQsIGEsIGIsIGluWzExXSArIDB4NmQ5ZDYxMjIsIDE2KTsKKwlNRDVTVEVQKEYzLCBiLCBjLCBkLCBhLCBpblsxNF0gKyAweGZkZTUzODBjLCAyMyk7CisJTUQ1U1RFUChGMywgYSwgYiwgYywgZCwgaW5bIDFdICsgMHhhNGJlZWE0NCwgIDQpOworCU1ENVNURVAoRjMsIGQsIGEsIGIsIGMsIGluWyA0XSArIDB4NGJkZWNmYTksIDExKTsKKwlNRDVTVEVQKEYzLCBjLCBkLCBhLCBiLCBpblsgN10gKyAweGY2YmI0YjYwLCAxNik7CisJTUQ1U1RFUChGMywgYiwgYywgZCwgYSwgaW5bMTBdICsgMHhiZWJmYmM3MCwgMjMpOworCU1ENVNURVAoRjMsIGEsIGIsIGMsIGQsIGluWzEzXSArIDB4Mjg5YjdlYzYsICA0KTsKKwlNRDVTVEVQKEYzLCBkLCBhLCBiLCBjLCBpblsgMF0gKyAweGVhYTEyN2ZhLCAxMSk7CisJTUQ1U1RFUChGMywgYywgZCwgYSwgYiwgaW5bIDNdICsgMHhkNGVmMzA4NSwgMTYpOworCU1ENVNURVAoRjMsIGIsIGMsIGQsIGEsIGluWyA2XSArIDB4MDQ4ODFkMDUsIDIzKTsKKwlNRDVTVEVQKEYzLCBhLCBiLCBjLCBkLCBpblsgOV0gKyAweGQ5ZDRkMDM5LCAgNCk7CisJTUQ1U1RFUChGMywgZCwgYSwgYiwgYywgaW5bMTJdICsgMHhlNmRiOTllNSwgMTEpOworCU1ENVNURVAoRjMsIGMsIGQsIGEsIGIsIGluWzE1XSArIDB4MWZhMjdjZjgsIDE2KTsKKwlNRDVTVEVQKEYzLCBiLCBjLCBkLCBhLCBpblsyIF0gKyAweGM0YWM1NjY1LCAyMyk7CisKKwlNRDVTVEVQKEY0LCBhLCBiLCBjLCBkLCBpblsgMF0gKyAweGY0MjkyMjQ0LCAgNik7CisJTUQ1U1RFUChGNCwgZCwgYSwgYiwgYywgaW5bNyBdICsgMHg0MzJhZmY5NywgMTApOworCU1ENVNURVAoRjQsIGMsIGQsIGEsIGIsIGluWzE0XSArIDB4YWI5NDIzYTcsIDE1KTsKKwlNRDVTVEVQKEY0LCBiLCBjLCBkLCBhLCBpbls1IF0gKyAweGZjOTNhMDM5LCAyMSk7CisJTUQ1U1RFUChGNCwgYSwgYiwgYywgZCwgaW5bMTJdICsgMHg2NTViNTljMywgIDYpOworCU1ENVNURVAoRjQsIGQsIGEsIGIsIGMsIGluWzMgXSArIDB4OGYwY2NjOTIsIDEwKTsKKwlNRDVTVEVQKEY0LCBjLCBkLCBhLCBiLCBpblsxMF0gKyAweGZmZWZmNDdkLCAxNSk7CisJTUQ1U1RFUChGNCwgYiwgYywgZCwgYSwgaW5bMSBdICsgMHg4NTg0NWRkMSwgMjEpOworCU1ENVNURVAoRjQsIGEsIGIsIGMsIGQsIGluWzggXSArIDB4NmZhODdlNGYsICA2KTsKKwlNRDVTVEVQKEY0LCBkLCBhLCBiLCBjLCBpblsxNV0gKyAweGZlMmNlNmUwLCAxMCk7CisJTUQ1U1RFUChGNCwgYywgZCwgYSwgYiwgaW5bNiBdICsgMHhhMzAxNDMxNCwgMTUpOworCU1ENVNURVAoRjQsIGIsIGMsIGQsIGEsIGluWzEzXSArIDB4NGUwODExYTEsIDIxKTsKKwlNRDVTVEVQKEY0LCBhLCBiLCBjLCBkLCBpbls0IF0gKyAweGY3NTM3ZTgyLCAgNik7CisJTUQ1U1RFUChGNCwgZCwgYSwgYiwgYywgaW5bMTFdICsgMHhiZDNhZjIzNSwgMTApOworCU1ENVNURVAoRjQsIGMsIGQsIGEsIGIsIGluWzIgXSArIDB4MmFkN2QyYmIsIDE1KTsKKwlNRDVTVEVQKEY0LCBiLCBjLCBkLCBhLCBpbls5IF0gKyAweGViODZkMzkxLCAyMSk7CisKKwlzdGF0ZVswXSArPSBhOworCXN0YXRlWzFdICs9IGI7CisJc3RhdGVbMl0gKz0gYzsKKwlzdGF0ZVszXSArPSBkOworfQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9tZDUuaCBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvbWQ1LmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzMxYTJhZgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvbWQ1LmgKQEAgLTAsMCArMSwzNiBAQAorLyoJJE9wZW5CU0Q6IG1kNS5oLHYgMS4xNSAyMDA0LzA1LzAzIDE3OjMwOjE0IG1pbGxlcnQgRXhwICQJKi8KKworLyoKKyAqIFRoaXMgY29kZSBpbXBsZW1lbnRzIHRoZSBNRDUgbWVzc2FnZS1kaWdlc3QgYWxnb3JpdGhtLgorICogVGhlIGFsZ29yaXRobSBpcyBkdWUgdG8gUm9uIFJpdmVzdC4gIFRoaXMgY29kZSB3YXMKKyAqIHdyaXR0ZW4gYnkgQ29saW4gUGx1bWIgaW4gMTk5Mywgbm8gY29weXJpZ2h0IGlzIGNsYWltZWQuCisgKiBUaGlzIGNvZGUgaXMgaW4gdGhlIHB1YmxpYyBkb21haW47IGRvIHdpdGggaXQgd2hhdCB5b3Ugd2lzaC4KKyAqCisgKiBFcXVpdmFsZW50IGNvZGUgaXMgYXZhaWxhYmxlIGZyb20gUlNBIERhdGEgU2VjdXJpdHksIEluYy4KKyAqIFRoaXMgY29kZSBoYXMgYmVlbiB0ZXN0ZWQgYWdhaW5zdCB0aGF0LCBhbmQgaXMgZXF1aXZhbGVudCwKKyAqIGV4Y2VwdCB0aGF0IHlvdSBkb24ndCBuZWVkIHRvIGluY2x1ZGUgdHdvIHBhZ2VzIG9mIGxlZ2FsZXNlCisgKiB3aXRoIGV2ZXJ5IGNvcHkuCisgKi8KKworI2lmbmRlZiBfTUQ1X0hfCisjZGVmaW5lIF9NRDVfSF8KKworI2RlZmluZQlNRDVfQkxPQ0tfTEVOR1RICQk2NAorI2RlZmluZQlNRDVfRElHRVNUX0xFTkdUSAkJMTYKKyNkZWZpbmUJTUQ1X0RJR0VTVF9TVFJJTkdfTEVOR1RICShNRDVfRElHRVNUX0xFTkdUSCAqIDIgKyAxKQorCit0eXBlZGVmIHN0cnVjdCBNRDVDb250ZXh0IHsKKwl1X2ludDMyX3Qgc3RhdGVbNF07CQkJLyogc3RhdGUgKi8KKwl1X2ludDY0X3QgY291bnQ7CQkJLyogbnVtYmVyIG9mIGJpdHMsIG1vZCAyXjY0ICovCisJdV9pbnQ4X3QgYnVmZmVyW01ENV9CTE9DS19MRU5HVEhdOwkvKiBpbnB1dCBidWZmZXIgKi8KK30gTUQ1X0NUWDsKKworI2luY2x1ZGUgPHN5cy9jZGVmcy5oPgorCit2b2lkCSBNRDVJbml0KE1ENV9DVFggKik7Cit2b2lkCSBNRDVVcGRhdGUoTUQ1X0NUWCAqLCBjb25zdCB1X2ludDhfdCAqLCBzaXplX3QpOwordm9pZAkgTUQ1UGFkKE1ENV9DVFggKik7Cit2b2lkCSBNRDVGaW5hbCh1X2ludDhfdCBbTUQ1X0RJR0VTVF9MRU5HVEhdLCBNRDVfQ1RYICopOwordm9pZAkgTUQ1VHJhbnNmb3JtKHVfaW50MzJfdCBbNF0sIGNvbnN0IHVfaW50OF90IFtNRDVfQkxPQ0tfTEVOR1RIXSk7CisKKyNlbmRpZiAvKiBfTUQ1X0hfICovCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL21saWIuYyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvbWxpYi5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmYzMWQ5OWIKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL21saWIuYwpAQCAtMCwwICsxLDEyNyBAQAorLyoKKyAqIGxpYmRwa2cgLSBEZWJpYW4gcGFja2FnaW5nIHN1aXRlIGxpYnJhcnkgcm91dGluZXMKKyAqIG1saWIuYyAtIOKAmG11c3TigJkgbGlicmFyeTogcm91dGluZXMgd2lsbCBzdWNjZWVkIG9yIGxvbmdqbXAKKyAqCisgKiBDb3B5cmlnaHQgwqkgMTk5NCwxOTk1IElhbiBKYWNrc29uIDxpYW5AY2hpYXJrLmdyZWVuZW5kLm9yZy51az4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworI2luY2x1ZGUgPGNvbmZpZy5oPgorI2luY2x1ZGUgPGNvbXBhdC5oPgorCisjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CisKKyNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDxmY250bC5oPgorI2luY2x1ZGUgPHVuaXN0ZC5oPgorI2luY2x1ZGUgPHN0ZGxpYi5oPgorI2luY2x1ZGUgPHN0ZGlvLmg+CisKKyNpbmNsdWRlIDxkcGtnL2kxOG4uaD4KKyNpbmNsdWRlIDxkcGtnL2Rwa2cuaD4KKwordm9pZCAqbV9tYWxsb2Moc2l6ZV90IGFtb3VudCkgeworI2lmZGVmIE1ERUJVRworICB1bnNpZ25lZCBzaG9ydCAqcjIsIHg7CisjZW5kaWYKKyAgdm9pZCAqcjsKKworICBvbmVycl9hYm9ydCsrOworICByPSBtYWxsb2MoYW1vdW50KTsKKyAgaWYgKHIgPT0gTlVMTCkKKyAgICBvaHNoaXRlKF8oIm1hbGxvYyBmYWlsZWQgKCV6dSBieXRlcykiKSwgYW1vdW50KTsKKyAgb25lcnJfYWJvcnQtLTsKKworI2lmZGVmIE1ERUJVRworICByMj0gcjsgeD0gKHVuc2lnbmVkIHNob3J0KWFtb3VudCBeIDB4ZjAwMDsKKyAgd2hpbGUgKGFtb3VudCA+PSAyKSB7ICpyMisrPSB4OyBhbW91bnQgLT0gMjsgfQorI2VuZGlmCisgIHJldHVybiByOworfQorCit2b2lkICptX3JlYWxsb2Modm9pZCAqciwgc2l6ZV90IGFtb3VudCkgeworICBvbmVycl9hYm9ydCsrOworICByPSByZWFsbG9jKHIsYW1vdW50KTsKKyAgaWYgKHIgPT0gTlVMTCkKKyAgICBvaHNoaXRlKF8oInJlYWxsb2MgZmFpbGVkICglenUgYnl0ZXMpIiksIGFtb3VudCk7CisgIG9uZXJyX2Fib3J0LS07CisKKyAgcmV0dXJuIHI7Cit9CisKK2NoYXIgKgorbV9zdHJkdXAoY29uc3QgY2hhciAqc3RyKQoreworICBjaGFyICpuZXdfc3RyOworCisgIG9uZXJyX2Fib3J0Kys7CisgIG5ld19zdHIgPSBzdHJkdXAoc3RyKTsKKyAgaWYgKCFuZXdfc3RyKQorICAgIG9oc2hpdGUoXygiZmFpbGVkIHRvIGFsbG9jYXRlIG1lbW9yeSIpKTsKKyAgb25lcnJfYWJvcnQtLTsKKworICByZXR1cm4gbmV3X3N0cjsKK30KKworaW50CittX2FzcHJpbnRmKGNoYXIgKipzdHJwLCBjb25zdCBjaGFyICpmbXQsIC4uLikKK3sKKyAgdmFfbGlzdCBhcmdzOworICBpbnQgbjsKKworICB2YV9zdGFydChhcmdzLCBmbXQpOworICBuID0gdmFzcHJpbnRmKHN0cnAsIGZtdCwgYXJncyk7CisgIHZhX2VuZChhcmdzKTsKKworICBvbmVycl9hYm9ydCsrOworICBpZiAobiA8IDApCisgICAgb2hzaGl0ZShfKCJmYWlsZWQgdG8gYWxsb2NhdGUgbWVtb3J5IikpOworICBvbmVycl9hYm9ydC0tOworCisgIHJldHVybiBuOworfQorCit2b2lkIG1fZHVwMihpbnQgb2xkZmQsIGludCBuZXdmZCkgeworICBjb25zdCBjaGFyICpjb25zdCBzdGRzdHJpbmdzW109IHsgImluIiwgIm91dCIsICJlcnIiIH07CisKKyAgaWYgKGR1cDIob2xkZmQsbmV3ZmQpID09IG5ld2ZkKSByZXR1cm47CisKKyAgb25lcnJfYWJvcnQrKzsKKyAgaWYgKG5ld2ZkIDwgMykgb2hzaGl0ZShfKCJmYWlsZWQgdG8gZHVwIGZvciBzdGQlcyIpLHN0ZHN0cmluZ3NbbmV3ZmRdKTsKKyAgb2hzaGl0ZShfKCJmYWlsZWQgdG8gZHVwIGZvciBmZCAlZCIpLG5ld2ZkKTsKK30KKwordm9pZCBtX3BpcGUoaW50ICpmZHMpIHsKKyAgaWYgKCFwaXBlKGZkcykpIHJldHVybjsKKyAgb25lcnJfYWJvcnQrKzsKKyAgb2hzaGl0ZShfKCJmYWlsZWQgdG8gY3JlYXRlIHBpcGUiKSk7Cit9CisKK3ZvaWQKK21fb3V0cHV0KEZJTEUgKmYsIGNvbnN0IGNoYXIgKm5hbWUpCit7CisgIGZmbHVzaChmKTsKKyAgaWYgKGZlcnJvcihmKSkKKyAgICBvaHNoaXRlKF8oImVycm9yIHdyaXRpbmcgdG8gJyVzJyIpLCBuYW1lKTsKK30KKwordm9pZCBzZXRjbG9leGVjKGludCBmZCwgY29uc3QgY2hhciogZm4pIHsKKyAgaW50IGY7CisKKyAgaWYgKChmPWZjbnRsKGZkLCBGX0dFVEZEKSk9PS0xKQorICAgIG9oc2hpdGUoXygidW5hYmxlIHRvIHJlYWQgZmlsZWRlc2NyaXB0b3IgZmxhZ3MgZm9yICUuMjUwcyIpLGZuKTsKKyAgaWYgKGZjbnRsKGZkLCBGX1NFVEZELCAoZnxGRF9DTE9FWEVDKSk9PS0xKQorICAgIG9oc2hpdGUoXygidW5hYmxlIHRvIHNldCBjbG9zZS1vbi1leGVjIGZsYWcgZm9yICUuMjUwcyIpLGZuKTsKK30KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvbmFtZXZhbHVlLmMgYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL25hbWV2YWx1ZS5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmNmY2VkY2EKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL25hbWV2YWx1ZS5jCkBAIC0wLDAgKzEsNDMgQEAKKy8qCisgKiBsaWJkcGtnIC0gRGViaWFuIHBhY2thZ2luZyBzdWl0ZSBsaWJyYXJ5IHJvdXRpbmVzCisgKiBuYW1ldmFsdWUuYyAtIG5hbWUgdmFsdWUgc3RydWN0dXJlIGhhbmRsaW5nCisgKgorICogQ29weXJpZ2h0IMKpIDIwMTAtMjAxMSBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CisgKgorICogVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisgKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAqIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorICovCisKKyNpbmNsdWRlIDxjb25maWcuaD4KKyNpbmNsdWRlIDxjb21wYXQuaD4KKworI2luY2x1ZGUgPHN0ZGRlZi5oPgorCisjaW5jbHVkZSA8ZHBrZy9uYW1ldmFsdWUuaD4KKworY29uc3Qgc3RydWN0IG5hbWV2YWx1ZSAqCituYW1ldmFsdWVfZmluZF9ieV9uYW1lKGNvbnN0IHN0cnVjdCBuYW1ldmFsdWUgKmhlYWQsIGNvbnN0IGNoYXIgKnN0cikKK3sKKwljb25zdCBzdHJ1Y3QgbmFtZXZhbHVlICpudiwgKm52X2ZhbGxiYWNrID0gTlVMTDsKKworCWZvciAobnYgPSBoZWFkOyBudi0+bmFtZTsgbnYrKykgeworCQlpZiAobnYtPmxlbmd0aCA9PSAwKSB7CisJCQludl9mYWxsYmFjayA9IG52OworCQkJY29udGludWU7CisJCX0KKwkJaWYgKHN0cm5jYXNlY21wKHN0ciwgbnYtPm5hbWUsIG52LT5sZW5ndGgpID09IDApCisJCQlyZXR1cm4gbnY7CisJfQorCisJcmV0dXJuIG52X2ZhbGxiYWNrOworfQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9uYW1ldmFsdWUuaCBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvbmFtZXZhbHVlLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uM2YxN2M0YgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvbmFtZXZhbHVlLmgKQEAgLTAsMCArMSw0NSBAQAorLyoKKyAqIGxpYmRwa2cgLSBEZWJpYW4gcGFja2FnaW5nIHN1aXRlIGxpYnJhcnkgcm91dGluZXMKKyAqIG5hbWV2YWx1ZS5oIC0gbmFtZSB2YWx1ZSBzdHJ1Y3R1cmUgaGFuZGxpbmcKKyAqCisgKiBDb3B5cmlnaHQgwqkgMTk5NCwxOTk1IElhbiBKYWNrc29uIDxpYW5AY2hpYXJrLmdyZWVuZW5kLm9yZy51az4KKyAqIENvcHlyaWdodCDCqSAyMDA5LTIwMTEgR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaWZuZGVmIExJQkRQS0dfTkFNRVZBTFVFX0gKKyNkZWZpbmUgTElCRFBLR19OQU1FVkFMVUVfSAorCisjaW5jbHVkZSA8ZHBrZy9tYWNyb3MuaD4KKworRFBLR19CRUdJTl9ERUNMUworCitzdHJ1Y3QgbmFtZXZhbHVlIHsKKwljb25zdCBjaGFyICpuYW1lOworCWludCB2YWx1ZTsKKwlpbnQgbGVuZ3RoOworfTsKKworI2RlZmluZSBOQU1FVkFMVUVfREVGKG4sIHYpIFwKKwlbdl0gPSB7IC5uYW1lID0gbiwgLnZhbHVlID0gdiwgLmxlbmd0aCA9IHNpemVvZihuKSAtIDEgfQorI2RlZmluZSBOQU1FVkFMVUVfRkFMTEJBQ0tfREVGKG4sIHYpIFwKKwlbdl0gPSB7IC5uYW1lID0gbiwgLnZhbHVlID0gdiwgLmxlbmd0aCA9IDAgfQorCitjb25zdCBzdHJ1Y3QgbmFtZXZhbHVlICpuYW1ldmFsdWVfZmluZF9ieV9uYW1lKGNvbnN0IHN0cnVjdCBuYW1ldmFsdWUgKmhlYWQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKnN0cik7CisKK0RQS0dfRU5EX0RFQ0xTCisKKyNlbmRpZiAvKiBMSUJEUEtHX05BTUVWQUxVRV9IICovCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL25mbWFsbG9jLmMgYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL25mbWFsbG9jLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTUyOGVmMAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvbmZtYWxsb2MuYwpAQCAtMCwwICsxLDczIEBACisvKgorICogbGliZHBrZyAtIERlYmlhbiBwYWNrYWdpbmcgc3VpdGUgbGlicmFyeSByb3V0aW5lcworICogbmZtYWxsb2MuYyAtIG5vbi1mcmVlaW5nIG1hbGxvYywgdXNlZCBmb3IgaW4tY29yZSBkYXRhYmFzZQorICoKKyAqIENvcHlyaWdodCDCqSAxOTk0LDE5OTUgSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuZ3JlZW5lbmQub3JnLnVrPgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaW5jbHVkZSA8Y29uZmlnLmg+CisjaW5jbHVkZSA8Y29tcGF0Lmg+CisKKyNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlIDxvYnN0YWNrLmg+CisKKyNpbmNsdWRlIDxkcGtnL2kxOG4uaD4KKyNpbmNsdWRlIDxkcGtnL2Rwa2cuaD4KKyNpbmNsdWRlIDxkcGtnL2Rwa2ctZGIuaD4KKworI2RlZmluZSBvYnN0YWNrX2NodW5rX2FsbG9jIG1fbWFsbG9jCisjZGVmaW5lIG9ic3RhY2tfY2h1bmtfZnJlZSBmcmVlCisKK3N0YXRpYyBzdHJ1Y3Qgb2JzdGFjayBkYl9vYnM7CitzdGF0aWMgYm9vbCBkYm9ic19pbml0ID0gZmFsc2U7CisKKy8qIFdlIHVzZSBsb3RzIG9mIG1lbSwgc28gdXNlIGEgbGFyZ2UgY2h1bmsuICovCisjZGVmaW5lIENIVU5LX1NJWkUgODE5MgorCisjZGVmaW5lIE9CU1RBQ0tfSU5JVCBpZiAoIWRib2JzX2luaXQpIHsgbmZvYnN0YWNrX2luaXQoKTsgfQorCitzdGF0aWMgdm9pZCBuZm9ic3RhY2tfaW5pdCh2b2lkKSB7CisgIG9ic3RhY2tfaW5pdCgmZGJfb2JzKTsKKyAgZGJvYnNfaW5pdCA9IHRydWU7CisgIG9ic3RhY2tfY2h1bmtfc2l6ZSgmZGJfb2JzKSA9IENIVU5LX1NJWkU7Cit9CisKK3ZvaWQgKgorbmZtYWxsb2Moc2l6ZV90IHNpemUpCit7CisgIE9CU1RBQ0tfSU5JVDsKKyAgcmV0dXJuIG9ic3RhY2tfYWxsb2MoJmRiX29icywgc2l6ZSk7Cit9CisKK2NoYXIgKm5mc3Ryc2F2ZShjb25zdCBjaGFyICpzdHJpbmcpIHsKKyAgT0JTVEFDS19JTklUOworICByZXR1cm4gb2JzdGFja19jb3B5MCAoJmRiX29icywgc3RyaW5nLCBzdHJsZW4oc3RyaW5nKSk7Cit9CisKK2NoYXIgKgorbmZzdHJuc2F2ZShjb25zdCBjaGFyICpzdHJpbmcsIHNpemVfdCBzaXplKQoreworICBPQlNUQUNLX0lOSVQ7CisgIHJldHVybiBvYnN0YWNrX2NvcHkwKCZkYl9vYnMsIHN0cmluZywgc2l6ZSk7Cit9CisKK3ZvaWQgbmZmcmVlYWxsKHZvaWQpIHsKKyAgaWYgKGRib2JzX2luaXQpIHsKKyAgICBvYnN0YWNrX2ZyZWUoJmRiX29icywgTlVMTCk7CisgICAgZGJvYnNfaW5pdCA9IGZhbHNlOworICB9Cit9CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL29wdGlvbnMuYyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvb3B0aW9ucy5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjM1NzVlMjkKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL29wdGlvbnMuYwpAQCAtMCwwICsxLDI5MSBAQAorLyoKKyAqIGxpYmRwa2cgLSBEZWJpYW4gcGFja2FnaW5nIHN1aXRlIGxpYnJhcnkgcm91dGluZXMKKyAqIG9wdGlvbnMuYyAtIG9wdGlvbiBwYXJzaW5nIGZ1bmN0aW9ucworICoKKyAqIENvcHlyaWdodCDCqSAxOTk0LDE5OTUgSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuZ3JlZW5lbmQub3JnLnVrPgorICogQ29weXJpZ2h0IMKpIDIwMDAsMjAwMiBXaWNoZXJ0IEFra2VybWFuIDx3aWNoZXJ0QGRlZXBoYWNrbW9kZS5vcmc+CisgKiBDb3B5cmlnaHQgwqkgMjAwOCwyMDA5IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworI2luY2x1ZGUgPGNvbmZpZy5oPgorI2luY2x1ZGUgPGNvbXBhdC5oPgorCisjaW5jbHVkZSA8ZXJybm8uaD4KKyNpbmNsdWRlIDxjdHlwZS5oPgorI2luY2x1ZGUgPHN0cmluZy5oPgorI2luY2x1ZGUgPGRpcmVudC5oPgorI2luY2x1ZGUgPHN0ZGFyZy5oPgorI2luY2x1ZGUgPHN0ZGxpYi5oPgorCisjaW5jbHVkZSA8ZHBrZy9pMThuLmg+CisjaW5jbHVkZSA8ZHBrZy9kcGtnLmg+CisjaW5jbHVkZSA8ZHBrZy9zdHJpbmcuaD4KKyNpbmNsdWRlIDxkcGtnL29wdGlvbnMuaD4KKworc3RhdGljIGNvbnN0IGNoYXIgKnByaW50Zm9yaGVscDsKKwordm9pZAorYmFkdXNhZ2UoY29uc3QgY2hhciAqZm10LCAuLi4pCit7CisgIGNoYXIgYnVmWzEwMjRdOworICB2YV9saXN0IGFyZ3M7CisKKyAgdmFfc3RhcnQoYXJncywgZm10KTsKKyAgdnNucHJpbnRmKGJ1Ziwgc2l6ZW9mKGJ1ZiksIGZtdCwgYXJncyk7CisgIHZhX2VuZChhcmdzKTsKKworICBvaHNoaXQoIiVzXG5cbiVzIiwgYnVmLCBnZXR0ZXh0KHByaW50Zm9yaGVscCkpOworfQorCitzdGF0aWMgdm9pZCBEUEtHX0FUVFJfTk9SRVQgRFBLR19BVFRSX1BSSU5URigzKQorY29uZmlnX2Vycm9yKGNvbnN0IGNoYXIgKmZpbGVfbmFtZSwgaW50IGxpbmVfbnVtLCBjb25zdCBjaGFyICpmbXQsIC4uLikKK3sKKyAgY2hhciBidWZbMTAyNF07CisgIHZhX2xpc3QgYXJnczsKKworICB2YV9zdGFydChhcmdzLCBmbXQpOworICB2c25wcmludGYoYnVmLCBzaXplb2YoYnVmKSwgZm10LCBhcmdzKTsKKyAgdmFfZW5kKGFyZ3MpOworCisgIG9oc2hpdChfKCJjb25maWd1cmF0aW9uIGVycm9yOiAlczolZDogJXMiKSwgZmlsZV9uYW1lLCBsaW5lX251bSwgYnVmKTsKK30KKwordm9pZCBteWZpbGVvcHQoY29uc3QgY2hhciogZm4sIGNvbnN0IHN0cnVjdCBjbWRpbmZvKiBjbWRpbmZvcykgeworICBGSUxFKiBmaWxlOworICBpbnQgbGluZV9udW0gPSAwOworICBjaGFyIGxpbmVidWZbTUFYX0NPTkZJR19MSU5FXTsKKworICBmaWxlPSBmb3BlbihmbiwgInIiKTsKKyAgaWYgKCFmaWxlKSB7CisgICAgaWYgKGVycm5vPT1FTk9FTlQpCisgICAgICByZXR1cm47CisgICAgd2FybmluZyhfKCJmYWlsZWQgdG8gb3BlbiBjb25maWd1cmF0aW9uIGZpbGUgJyUuMjU1cycgZm9yIHJlYWRpbmc6ICVzIiksCisgICAgICAgICAgICBmbiwgc3RyZXJyb3IoZXJybm8pKTsKKyAgICByZXR1cm47CisgIH0KKworICB3aGlsZSAoZmdldHMobGluZWJ1Ziwgc2l6ZW9mKGxpbmVidWYpLCBmaWxlKSkgeworICAgIGNoYXIqIG9wdDsKKyAgICBjb25zdCBzdHJ1Y3QgY21kaW5mbyAqY2lwOworICAgIGludCBsOworCisgICAgbGluZV9udW0rKzsKKworICAgIGlmICgobGluZWJ1ZlswXSA9PSAnIycpIHx8IChsaW5lYnVmWzBdID09ICdcbicpIHx8IChsaW5lYnVmWzBdID09ICdcMCcpKQorICAgICAgY29udGludWU7CisgICAgbD1zdHJsZW4obGluZWJ1Zik7CisgICAgaWYgKGxpbmVidWZbbCAtIDFdID09ICdcbicpCisgICAgICBsaW5lYnVmW2wgLSAxXSA9ICdcMCc7CisgICAgZm9yIChvcHQ9bGluZWJ1Zjtpc2FsbnVtKCpvcHQpfHwqb3B0PT0nLSc7b3B0KyspIDsKKyAgICBpZiAoKm9wdCA9PSAnXDAnKQorICAgICAgb3B0PU5VTEw7CisgICAgZWxzZSB7CisgICAgICAqb3B0KysgPSAnXDAnOworICAgICAgaWYgKCpvcHQ9PSc9Jykgb3B0Kys7CisgICAgICB3aGlsZSAoaXNzcGFjZSgqb3B0KSkgb3B0Kys7CisKKyAgICAgIG9wdCA9IHN0cl9zdHJpcF9xdW90ZXMob3B0KTsKKyAgICAgIGlmIChvcHQgPT0gTlVMTCkKKyAgICAgICAgY29uZmlnX2Vycm9yKGZuLCBsaW5lX251bSwgXygidW5iYWxhbmNlZCBxdW90ZXMgaW4gJyVzJyIpLCBsaW5lYnVmKTsKKyAgICB9CisKKyAgICBmb3IgKGNpcD1jbWRpbmZvczsgY2lwLT5vbG9uZyB8fCBjaXAtPm9zaG9ydDsgY2lwKyspIHsKKyAgICAgIGlmICghY2lwLT5vbG9uZykgY29udGludWU7CisgICAgICBpZiAoIXN0cmNtcChjaXAtPm9sb25nLGxpbmVidWYpKSBicmVhazsKKyAgICAgIGw9c3RybGVuKGNpcC0+b2xvbmcpOworICAgICAgaWYgKChjaXAtPnRha2VzdmFsdWU9PTIpICYmIChsaW5lYnVmW2xdPT0nLScpICYmCisJICAhb3B0ICYmICFzdHJuY21wKGxpbmVidWYsY2lwLT5vbG9uZyxsKSkgeworCW9wdD1saW5lYnVmK2wrMTsKKwlicmVhazsKKyAgICAgIH0KKyAgICB9CisKKyAgICBpZiAoIWNpcC0+b2xvbmcpCisgICAgICBjb25maWdfZXJyb3IoZm4sIGxpbmVfbnVtLCBfKCJ1bmtub3duIG9wdGlvbiAnJXMnIiksIGxpbmVidWYpOworCisgICAgaWYgKGNpcC0+dGFrZXN2YWx1ZSkgeworICAgICAgaWYgKCFvcHQpCisgICAgICAgIGNvbmZpZ19lcnJvcihmbiwgbGluZV9udW0sIF8oIiclcycgbmVlZHMgYSB2YWx1ZSIpLCBsaW5lYnVmKTsKKyAgICAgIGlmIChjaXAtPmNhbGwpIGNpcC0+Y2FsbChjaXAsb3B0KTsKKyAgICAgIGVsc2UKKyAgICAgICAgKmNpcC0+c2Fzc2lnbnRvID0gbV9zdHJkdXAob3B0KTsKKyAgICB9IGVsc2UgeworICAgICAgaWYgKG9wdCkKKyAgICAgICAgY29uZmlnX2Vycm9yKGZuLCBsaW5lX251bSwgXygiJyVzJyBkb2VzIG5vdCB0YWtlIGEgdmFsdWUiKSwgbGluZWJ1Zik7CisgICAgICBpZiAoY2lwLT5jYWxsKSBjaXAtPmNhbGwoY2lwLE5VTEwpOworICAgICAgZWxzZQorICAgICAgICAqY2lwLT5pYXNzaWdudG8gPSBjaXAtPmFyZ19pbnQ7CisgICAgfQorICB9CisgIGlmIChmZXJyb3IoZmlsZSkpIG9oc2hpdGUoXygicmVhZCBlcnJvciBpbiBjb25maWd1cmF0aW9uIGZpbGUgYCUuMjU1cyciKSwgZm4pOworICBpZiAoZmNsb3NlKGZpbGUpKSBvaHNoaXRlKF8oImVycm9yIGNsb3NpbmcgY29uZmlndXJhdGlvbiBmaWxlIGAlLjI1NXMnIiksIGZuKTsKK30KKworc3RhdGljIGludAordmFsaWRfY29uZmlnX2ZpbGVuYW1lKGNvbnN0IHN0cnVjdCBkaXJlbnQgKmRlbnQpCit7CisgIGNvbnN0IGNoYXIgKmM7CisKKyAgaWYgKGRlbnQtPmRfbmFtZVswXSA9PSAnLicpCisgICAgcmV0dXJuIDA7CisKKyAgZm9yIChjID0gZGVudC0+ZF9uYW1lOyAqYzsgYysrKQorICAgIGlmICghaXNhbG51bSgqYykgJiYgKmMgIT0gJ18nICYmICpjICE9ICctJykKKyAgICAgIHJldHVybiAwOworCisgIGlmICgqYyA9PSAnXDAnKQorICAgIHJldHVybiAxOworICBlbHNlCisgICAgcmV0dXJuIDA7Cit9CisKK3N0YXRpYyB2b2lkCitsb2FkX2NvbmZpZ19kaXIoY29uc3QgY2hhciAqcHJvZywgY29uc3Qgc3RydWN0IGNtZGluZm8qIGNtZGluZm9zKQoreworICBjaGFyICpkaXJuYW1lOworICBzdHJ1Y3QgZGlyZW50ICoqZGxpc3Q7CisgIGludCBkbGlzdF9uLCBpOworCisgIG1fYXNwcmludGYoJmRpcm5hbWUsICIlcy8lcy5jZmcuZCIsIENPTkZJR0RJUiwgcHJvZyk7CisKKyAgZGxpc3RfbiA9IHNjYW5kaXIoZGlybmFtZSwgJmRsaXN0LCB2YWxpZF9jb25maWdfZmlsZW5hbWUsIGFscGhhc29ydCk7CisgIGlmIChkbGlzdF9uIDwgMCkgeworICAgIGlmIChlcnJubyA9PSBFTk9FTlQpIHsKKyAgICAgIGZyZWUoZGlybmFtZSk7CisgICAgICByZXR1cm47CisgICAgfSBlbHNlCisgICAgICBvaHNoaXRlKF8oImVycm9yIG9wZW5pbmcgY29uZmlndXJhdGlvbiBkaXJlY3RvcnkgJyVzJyIpLCBkaXJuYW1lKTsKKyAgfQorCisgIGZvciAoaSA9IDA7IGkgPCBkbGlzdF9uOyBpKyspIHsKKyAgICBjaGFyICpmaWxlbmFtZTsKKworICAgIG1fYXNwcmludGYoJmZpbGVuYW1lLCAiJXMvJXMiLCBkaXJuYW1lLCBkbGlzdFtpXS0+ZF9uYW1lKTsKKyAgICBteWZpbGVvcHQoZmlsZW5hbWUsIGNtZGluZm9zKTsKKworICAgIGZyZWUoZGxpc3RbaV0pOworICAgIGZyZWUoZmlsZW5hbWUpOworICB9CisKKyAgZnJlZShkaXJuYW1lKTsKKyAgZnJlZShkbGlzdCk7Cit9CisKK3ZvaWQgbG9hZGNmZ2ZpbGUoY29uc3QgY2hhciAqcHJvZywgY29uc3Qgc3RydWN0IGNtZGluZm8qIGNtZGluZm9zKSB7CisgIGNoYXIgKmhvbWUsICpmaWxlOworCisgIGxvYWRfY29uZmlnX2Rpcihwcm9nLCBjbWRpbmZvcyk7CisKKyAgbV9hc3ByaW50ZigmZmlsZSwgIiVzLyVzLmNmZyIsIENPTkZJR0RJUiwgcHJvZyk7CisgIG15ZmlsZW9wdChmaWxlLCBjbWRpbmZvcyk7CisgIGZyZWUoZmlsZSk7CisKKyAgaWYgKChob21lID0gZ2V0ZW52KCJIT01FIikpICE9IE5VTEwpIHsKKyAgICBtX2FzcHJpbnRmKCZmaWxlLCAiJXMvLiVzLmNmZyIsIGhvbWUsIHByb2cpOworICAgIG15ZmlsZW9wdChmaWxlLCBjbWRpbmZvcyk7CisgICAgZnJlZShmaWxlKTsKKyAgfQorfQorCit2b2lkCitteW9wdChjb25zdCBjaGFyICpjb25zdCAqKmFyZ3ZwLCBjb25zdCBzdHJ1Y3QgY21kaW5mbyAqY21kaW5mb3MsCisgICAgICBjb25zdCBjaGFyICpoZWxwX3N0cikKK3sKKyAgY29uc3Qgc3RydWN0IGNtZGluZm8gKmNpcDsKKyAgY29uc3QgY2hhciAqcCwgKnZhbHVlOworICBpbnQgbDsKKworICBwcmludGZvcmhlbHAgPSBoZWxwX3N0cjsKKworICArKygqYXJndnApOworICB3aGlsZSAoKHA9ICoqYXJndnApICYmICpwID09ICctJykgeworICAgICsrKCphcmd2cCk7CisgICAgaWYgKCFzdHJjbXAocCwiLS0iKSkgYnJlYWs7CisgICAgaWYgKCorK3AgPT0gJy0nKSB7CisgICAgICArK3A7IHZhbHVlPU5VTEw7CisgICAgICBmb3IgKGNpcD0gY21kaW5mb3M7CisgICAgICAgICAgIGNpcC0+b2xvbmcgfHwgY2lwLT5vc2hvcnQ7CisgICAgICAgICAgIGNpcCsrKSB7CisgICAgICAgIGlmICghY2lwLT5vbG9uZykgY29udGludWU7CisgICAgICAgIGlmICghc3RyY21wKHAsY2lwLT5vbG9uZykpIGJyZWFrOworICAgICAgICBsPSBzdHJsZW4oY2lwLT5vbG9uZyk7CisgICAgICAgIGlmICghc3RybmNtcChwLGNpcC0+b2xvbmcsbCkgJiYKKyAgICAgICAgICAgIChwW2xdPT0gKChjaXAtPnRha2VzdmFsdWU9PTIpID8gJy0nIDogJz0nKSkpIHsgdmFsdWU9cCtsKzE7IGJyZWFrOyB9CisgICAgICB9CisgICAgICBpZiAoIWNpcC0+b2xvbmcpIGJhZHVzYWdlKF8oInVua25vd24gb3B0aW9uIC0tJXMiKSxwKTsKKyAgICAgIGlmIChjaXAtPnRha2VzdmFsdWUpIHsKKyAgICAgICAgaWYgKCF2YWx1ZSkgeworICAgICAgICAgIHZhbHVlPSAqKCphcmd2cCkrKzsKKyAgICAgICAgICBpZiAoIXZhbHVlKSBiYWR1c2FnZShfKCItLSVzIG9wdGlvbiB0YWtlcyBhIHZhbHVlIiksY2lwLT5vbG9uZyk7CisgICAgICAgIH0KKyAgICAgICAgaWYgKGNpcC0+Y2FsbCkgY2lwLT5jYWxsKGNpcCx2YWx1ZSk7CisgICAgICAgIGVsc2UgKmNpcC0+c2Fzc2lnbnRvPSB2YWx1ZTsKKyAgICAgIH0gZWxzZSB7CisgICAgICAgIGlmICh2YWx1ZSkgYmFkdXNhZ2UoXygiLS0lcyBvcHRpb24gZG9lcyBub3QgdGFrZSBhIHZhbHVlIiksY2lwLT5vbG9uZyk7CisgICAgICAgIGlmIChjaXAtPmNhbGwpIGNpcC0+Y2FsbChjaXAsTlVMTCk7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAqY2lwLT5pYXNzaWdudG8gPSBjaXAtPmFyZ19pbnQ7CisgICAgICB9CisgICAgfSBlbHNlIHsKKyAgICAgIHdoaWxlICgqcCkgeworICAgICAgICBmb3IgKGNpcD0gY21kaW5mb3M7IChjaXAtPm9sb25nIHx8IGNpcC0+b3Nob3J0KSAmJiAqcCAhPSBjaXAtPm9zaG9ydDsgY2lwKyspOworICAgICAgICBpZiAoIWNpcC0+b3Nob3J0KSBiYWR1c2FnZShfKCJ1bmtub3duIG9wdGlvbiAtJWMiKSwqcCk7CisgICAgICAgIHArKzsKKyAgICAgICAgaWYgKGNpcC0+dGFrZXN2YWx1ZSkgeworICAgICAgICAgIGlmICghKnApIHsKKyAgICAgICAgICAgIHZhbHVlPSAqKCphcmd2cCkrKzsKKyAgICAgICAgICAgIGlmICghdmFsdWUpIGJhZHVzYWdlKF8oIi0lYyBvcHRpb24gdGFrZXMgYSB2YWx1ZSIpLGNpcC0+b3Nob3J0KTsKKyAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgdmFsdWU9IHA7IHA9IiI7CisgICAgICAgICAgICBpZiAoKnZhbHVlID09ICc9JykgdmFsdWUrKzsKKyAgICAgICAgICB9CisgICAgICAgICAgaWYgKGNpcC0+Y2FsbCkgY2lwLT5jYWxsKGNpcCx2YWx1ZSk7CisgICAgICAgICAgZWxzZSAqY2lwLT5zYXNzaWdudG89IHZhbHVlOworICAgICAgICB9IGVsc2UgeworICAgICAgICAgIGlmICgqcCA9PSAnPScpIGJhZHVzYWdlKF8oIi0lYyBvcHRpb24gZG9lcyBub3QgdGFrZSBhIHZhbHVlIiksY2lwLT5vc2hvcnQpOworICAgICAgICAgIGlmIChjaXAtPmNhbGwpIGNpcC0+Y2FsbChjaXAsTlVMTCk7CisgICAgICAgICAgZWxzZQorICAgICAgICAgICAgKmNpcC0+aWFzc2lnbnRvID0gY2lwLT5hcmdfaW50OworICAgICAgICB9CisgICAgICB9CisgICAgfQorICB9Cit9CisKK3ZvaWQKK3NldG9ic29sZXRlKGNvbnN0IHN0cnVjdCBjbWRpbmZvICpjaXAsIGNvbnN0IGNoYXIgKnZhbHVlKQoreworICB3YXJuaW5nKF8oIm9ic29sZXRlIG9wdGlvbiAnLS0lcydcbiIpLCBjaXAtPm9sb25nKTsKK30KKworY29uc3Qgc3RydWN0IGNtZGluZm8gKmNpcGFjdGlvbiA9IE5VTEw7CisKKy8qIFhYWDogVGhpcyBmdW5jdGlvbiBpcyBhIGhhY2suICovCitzdGF0aWMgaW5saW5lIGludAorb3B0aW9uX3Nob3J0KGludCBjKQoreworICByZXR1cm4gYyA/IGMgOiAnXGInOworfQorCit2b2lkCitzZXRhY3Rpb24oY29uc3Qgc3RydWN0IGNtZGluZm8gKmNpcCwgY29uc3QgY2hhciAqdmFsdWUpCit7CisgIGlmIChjaXBhY3Rpb24pCisgICAgYmFkdXNhZ2UoXygiY29uZmxpY3RpbmcgYWN0aW9ucyAtJWMgKC0tJXMpIGFuZCAtJWMgKC0tJXMpIiksCisgICAgICAgICAgICAgb3B0aW9uX3Nob3J0KGNpcC0+b3Nob3J0KSwgY2lwLT5vbG9uZywKKyAgICAgICAgICAgICBvcHRpb25fc2hvcnQoY2lwYWN0aW9uLT5vc2hvcnQpLCBjaXBhY3Rpb24tPm9sb25nKTsKKyAgY2lwYWN0aW9uID0gY2lwOworfQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9vcHRpb25zLmggYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL29wdGlvbnMuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iYTQxNWJmCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9vcHRpb25zLmgKQEAgLTAsMCArMSw3NSBAQAorLyoKKyAqIGxpYmRwa2cgLSBEZWJpYW4gcGFja2FnaW5nIHN1aXRlIGxpYnJhcnkgcm91dGluZXMKKyAqIG9wdGlvbnMuaCAtIG9wdGlvbiBwYXJzaW5nIGZ1bmN0aW9ucworICoKKyAqIENvcHlyaWdodCDCqSAxOTk0LDE5OTUgSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuZ3JlZW5lbmQub3JnLnVrPgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaWZuZGVmIExJQkRQS0dfT1BUSU9OU19ICisjZGVmaW5lIExJQkRQS0dfT1BUSU9OU19ICisKKyNpbmNsdWRlIDxkcGtnL21hY3Jvcy5oPgorCitEUEtHX0JFR0lOX0RFQ0xTCisKK3R5cGVkZWYgaW50IGFjdGlvbl9mdW5jKGNvbnN0IGNoYXIgKmNvbnN0ICphcmd2KTsKKworc3RydWN0IGNtZGluZm8geworICBjb25zdCBjaGFyICpvbG9uZzsKKyAgY2hhciBvc2hvcnQ7CisKKyAgLyoKKyAgICogMCA9IE5vcm1hbAkJCQkoLW8sIC0tb3B0aW9uKQorICAgKiAxID0gU3RhbmRhcmQgdmFsdWUJCQkoLW89dmFsdWUsIC0tb3B0aW9uPXZhbHVlIG9yCisgICAqCQkJCQkgLW8gdmFsdWUsIC0tb3B0aW9uIHZhbHVlKQorICAgKiAyID0gT3B0aW9uIHN0cmluZyBjb250aW51ZWQJKC0tb3B0aW9uLXZhbHVlKQorICAgKi8KKyAgaW50IHRha2VzdmFsdWU7CisgIGludCAqaWFzc2lnbnRvOworICBjb25zdCBjaGFyICoqc2Fzc2lnbnRvOworICB2b2lkICgqY2FsbCkoY29uc3Qgc3RydWN0IGNtZGluZm8qLCBjb25zdCBjaGFyICp2YWx1ZSk7CisKKyAgaW50IGFyZ19pbnQ7CisgIHZvaWQgKmFyZ19wdHI7CisKKyAgYWN0aW9uX2Z1bmMgKmFjdGlvbjsKK307CisKK3ZvaWQgYmFkdXNhZ2UoY29uc3QgY2hhciAqZm10LCAuLi4pIERQS0dfQVRUUl9OT1JFVCBEUEtHX0FUVFJfUFJJTlRGKDEpOworCisjZGVmaW5lIE1BWF9DT05GSUdfTElORSAxMDI0CisKK3ZvaWQgbXlmaWxlb3B0KGNvbnN0IGNoYXIqIGZuLCBjb25zdCBzdHJ1Y3QgY21kaW5mbyogY21kaW5mb3MpOwordm9pZCBteW9wdChjb25zdCBjaGFyICpjb25zdCAqKmFyZ3ZwLCBjb25zdCBzdHJ1Y3QgY21kaW5mbyAqY21kaW5mb3MsCisgICAgICAgICAgIGNvbnN0IGNoYXIgKmhlbHBfc3RyKTsKK3ZvaWQgbG9hZGNmZ2ZpbGUoY29uc3QgY2hhciAqcHJvZywgY29uc3Qgc3RydWN0IGNtZGluZm8gKmNtZGluZm9zKTsKKworLyoqCisgKiBDdXJyZW50IGNtZGluZm8gYWN0aW9uLgorICovCitleHRlcm4gY29uc3Qgc3RydWN0IGNtZGluZm8gKmNpcGFjdGlvbjsKKwordm9pZCBzZXRhY3Rpb24oY29uc3Qgc3RydWN0IGNtZGluZm8gKmNpcCwgY29uc3QgY2hhciAqdmFsdWUpOwordm9pZCBzZXRvYnNvbGV0ZShjb25zdCBzdHJ1Y3QgY21kaW5mbyAqY2lwLCBjb25zdCBjaGFyICp2YWx1ZSk7CisKKyNkZWZpbmUgQUNUSU9OKGxvbmdvcHQsIHNob3J0b3B0LCBjb2RlLCBmdW5jKSBcCisgeyBsb25nb3B0LCBzaG9ydG9wdCwgMCwgTlVMTCwgTlVMTCwgc2V0YWN0aW9uLCBjb2RlLCBOVUxMLCBmdW5jIH0KKyNkZWZpbmUgT0JTT0xFVEUobG9uZ29wdCwgc2hvcnRvcHQpIFwKKyB7IGxvbmdvcHQsIHNob3J0b3B0LCAwLCBOVUxMLCBOVUxMLCBzZXRvYnNvbGV0ZSwgMCwgTlVMTCwgTlVMTCB9CisKK0RQS0dfRU5EX0RFQ0xTCisKKyNlbmRpZiAvKiBMSUJEUEtHX09QVElPTlNfSCAqLwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9wYXJzZS5jIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9wYXJzZS5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmMzMWIxZjYKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL3BhcnNlLmMKQEAgLTAsMCArMSw2NDQgQEAKKy8qCisgKiBsaWJkcGtnIC0gRGViaWFuIHBhY2thZ2luZyBzdWl0ZSBsaWJyYXJ5IHJvdXRpbmVzCisgKiBwYXJzZS5jIC0gZGF0YWJhc2UgZmlsZSBwYXJzaW5nLCBtYWluIHBhY2thZ2UvZmllbGQgbG9vcAorICoKKyAqIENvcHlyaWdodCDCqSAxOTk1IElhbiBKYWNrc29uIDxpYW5AY2hpYXJrLmdyZWVuZW5kLm9yZy51az4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworI2luY2x1ZGUgPGNvbmZpZy5oPgorI2luY2x1ZGUgPGNvbXBhdC5oPgorCisjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CisjaW5jbHVkZSA8c3lzL3N0YXQuaD4KKyNpZmRlZiBVU0VfTU1BUAorI2luY2x1ZGUgPHN5cy9tbWFuLmg+CisjZW5kaWYKKworI2luY2x1ZGUgPGFzc2VydC5oPgorI2luY2x1ZGUgPGZjbnRsLmg+CisjaW5jbHVkZSA8Y3R5cGUuaD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDx1bmlzdGQuaD4KKyNpbmNsdWRlIDxzdGRhcmcuaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlIDxzdGRpby5oPgorCisjaW5jbHVkZSA8ZHBrZy9tYWNyb3MuaD4KKyNpbmNsdWRlIDxkcGtnL2kxOG4uaD4KKyNpbmNsdWRlIDxkcGtnL2Rwa2cuaD4KKyNpbmNsdWRlIDxkcGtnL2Rwa2ctZGIuaD4KKyNpbmNsdWRlIDxkcGtnL3BhcnNlZHVtcC5oPgorI2luY2x1ZGUgPGRwa2cvZmRpby5oPgorCisvKioKKyAqIEZpZWxkcyBpbmZvcm1hdGlvbi4KKyAqLworY29uc3Qgc3RydWN0IGZpZWxkaW5mbyBmaWVsZGluZm9zW109IHsKKyAgLyogTm90ZTogQ2FwaXRhbGl6YXRpb24gb2YgZmllbGQgbmFtZSBzdHJpbmdzIGlzIGltcG9ydGFudC4gKi8KKyAgeyAiUGFja2FnZSIsICAgICAgICAgIGZfbmFtZSwgICAgICAgICAgICB3X25hbWUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKKyAgeyAiRXNzZW50aWFsIiwgICAgICAgIGZfYm9vbGVhbiwgICAgICAgICB3X2Jvb2xlYW5kZWZubywgICBQS0dJRlBPRkYoZXNzZW50aWFsKSAgICAgfSwKKyAgeyAiU3RhdHVzIiwgICAgICAgICAgIGZfc3RhdHVzLCAgICAgICAgICB3X3N0YXR1cyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKKyAgeyAiUHJpb3JpdHkiLCAgICAgICAgIGZfcHJpb3JpdHksICAgICAgICB3X3ByaW9yaXR5ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKKyAgeyAiU2VjdGlvbiIsICAgICAgICAgIGZfc2VjdGlvbiwgICAgICAgICB3X3NlY3Rpb24gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKKyAgeyAiSW5zdGFsbGVkLVNpemUiLCAgIGZfY2hhcmZpZWxkLCAgICAgICB3X2NoYXJmaWVsZCwgICAgICBQS0dJRlBPRkYoaW5zdGFsbGVkc2l6ZSkgfSwKKyAgeyAiT3JpZ2luIiwgICAgICAgICAgIGZfY2hhcmZpZWxkLCAgICAgICB3X2NoYXJmaWVsZCwgICAgICBQS0dJRlBPRkYob3JpZ2luKSAgICAgICAgfSwKKyAgeyAiTWFpbnRhaW5lciIsICAgICAgIGZfY2hhcmZpZWxkLCAgICAgICB3X2NoYXJmaWVsZCwgICAgICBQS0dJRlBPRkYobWFpbnRhaW5lcikgICAgfSwKKyAgeyAiQnVncyIsICAgICAgICAgICAgIGZfY2hhcmZpZWxkLCAgICAgICB3X2NoYXJmaWVsZCwgICAgICBQS0dJRlBPRkYoYnVncykgICAgICAgICAgfSwKKyAgeyAiQXJjaGl0ZWN0dXJlIiwgICAgIGZfY2hhcmZpZWxkLCAgICAgICB3X2NoYXJmaWVsZCwgICAgICBQS0dJRlBPRkYoYXJjaCkgICAgICAgICAgfSwKKyAgeyAiU291cmNlIiwgICAgICAgICAgIGZfY2hhcmZpZWxkLCAgICAgICB3X2NoYXJmaWVsZCwgICAgICBQS0dJRlBPRkYoc291cmNlKSAgICAgICAgfSwKKyAgeyAiVmVyc2lvbiIsICAgICAgICAgIGZfdmVyc2lvbiwgICAgICAgICB3X3ZlcnNpb24sICAgICAgICBQS0dJRlBPRkYodmVyc2lvbikgICAgICAgfSwKKyAgeyAiUmV2aXNpb24iLCAgICAgICAgIGZfcmV2aXNpb24sICAgICAgICB3X251bGwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKKyAgeyAiQ29uZmlnLVZlcnNpb24iLCAgIGZfY29uZmlndmVyc2lvbiwgICB3X2NvbmZpZ3ZlcnNpb24gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKKyAgeyAiUmVwbGFjZXMiLCAgICAgICAgIGZfZGVwZW5kZW5jeSwgICAgICB3X2RlcGVuZGVuY3ksICAgICBkZXBfcmVwbGFjZXMgICAgICAgICAgICAgfSwKKyAgeyAiUHJvdmlkZXMiLCAgICAgICAgIGZfZGVwZW5kZW5jeSwgICAgICB3X2RlcGVuZGVuY3ksICAgICBkZXBfcHJvdmlkZXMgICAgICAgICAgICAgfSwKKyAgeyAiRGVwZW5kcyIsICAgICAgICAgIGZfZGVwZW5kZW5jeSwgICAgICB3X2RlcGVuZGVuY3ksICAgICBkZXBfZGVwZW5kcyAgICAgICAgICAgICAgfSwKKyAgeyAiUHJlLURlcGVuZHMiLCAgICAgIGZfZGVwZW5kZW5jeSwgICAgICB3X2RlcGVuZGVuY3ksICAgICBkZXBfcHJlZGVwZW5kcyAgICAgICAgICAgfSwKKyAgeyAiUmVjb21tZW5kcyIsICAgICAgIGZfZGVwZW5kZW5jeSwgICAgICB3X2RlcGVuZGVuY3ksICAgICBkZXBfcmVjb21tZW5kcyAgICAgICAgICAgfSwKKyAgeyAiU3VnZ2VzdHMiLCAgICAgICAgIGZfZGVwZW5kZW5jeSwgICAgICB3X2RlcGVuZGVuY3ksICAgICBkZXBfc3VnZ2VzdHMgICAgICAgICAgICAgfSwKKyAgeyAiQnJlYWtzIiwgICAgICAgICAgIGZfZGVwZW5kZW5jeSwgICAgICB3X2RlcGVuZGVuY3ksICAgICBkZXBfYnJlYWtzICAgICAgICAgICAgICAgfSwKKyAgeyAiQ29uZmxpY3RzIiwgICAgICAgIGZfZGVwZW5kZW5jeSwgICAgICB3X2RlcGVuZGVuY3ksICAgICBkZXBfY29uZmxpY3RzICAgICAgICAgICAgfSwKKyAgeyAiRW5oYW5jZXMiLCAgICAgICAgIGZfZGVwZW5kZW5jeSwgICAgICB3X2RlcGVuZGVuY3ksICAgICBkZXBfZW5oYW5jZXMgICAgICAgICAgICAgfSwKKyAgeyAiQ29uZmZpbGVzIiwgICAgICAgIGZfY29uZmZpbGVzLCAgICAgICB3X2NvbmZmaWxlcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKKyAgeyAiRmlsZW5hbWUiLCAgICAgICAgIGZfZmlsZWNoYXJmLCAgICAgICB3X2ZpbGVjaGFyZiwgICAgICBGSUxFRk9GRihuYW1lKSAgICAgICAgICAgfSwKKyAgeyAiU2l6ZSIsICAgICAgICAgICAgIGZfZmlsZWNoYXJmLCAgICAgICB3X2ZpbGVjaGFyZiwgICAgICBGSUxFRk9GRihzaXplKSAgICAgICAgICAgfSwKKyAgeyAiTUQ1c3VtIiwgICAgICAgICAgIGZfZmlsZWNoYXJmLCAgICAgICB3X2ZpbGVjaGFyZiwgICAgICBGSUxFRk9GRihtZDVzdW0pICAgICAgICAgfSwKKyAgeyAiTVNET1MtRmlsZW5hbWUiLCAgIGZfZmlsZWNoYXJmLCAgICAgICB3X2ZpbGVjaGFyZiwgICAgICBGSUxFRk9GRihtc2Rvc25hbWUpICAgICAgfSwKKyAgeyAiRGVzY3JpcHRpb24iLCAgICAgIGZfY2hhcmZpZWxkLCAgICAgICB3X2NoYXJmaWVsZCwgICAgICBQS0dJRlBPRkYoZGVzY3JpcHRpb24pICAgfSwKKyAgeyAiVHJpZ2dlcnMtUGVuZGluZyIsIGZfdHJpZ3BlbmQsICAgICAgICB3X3RyaWdwZW5kICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKKyAgeyAiVHJpZ2dlcnMtQXdhaXRlZCIsIGZfdHJpZ2F3LCAgICAgICAgICB3X3RyaWdhdyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKKyAgLyogTm90ZSB0aGF0IGFsaWFzZXMgYXJlIGFkZGVkIHRvIHRoZSBuaWNrbmFtZXMgdGFibGUuICovCisgIHsgIE5VTEwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KK307CisKK3N0YXRpYyBjb25zdCBzdHJ1Y3Qgbmlja25hbWUgbmlja25hbWVzW10gPSB7CisgIC8qIE5vdGU6IENhcGl0YWxpemF0aW9uIG9mIHRoZXNlIHN0cmluZ3MgaXMgaW1wb3J0YW50LiAqLworICB7IC5uaWNrID0gIlJlY29tbWVuZGVkIiwgICAgICAuY2Fub24gPSAiUmVjb21tZW5kcyIgfSwKKyAgeyAubmljayA9ICJPcHRpb25hbCIsICAgICAgICAgLmNhbm9uID0gIlN1Z2dlc3RzIiB9LAorICB7IC5uaWNrID0gIkNsYXNzIiwgICAgICAgICAgICAuY2Fub24gPSAiUHJpb3JpdHkiIH0sCisgIHsgLm5pY2sgPSAiUGFja2FnZS1SZXZpc2lvbiIsIC5jYW5vbiA9ICJSZXZpc2lvbiIgfSwKKyAgeyAubmljayA9ICJQYWNrYWdlX1JldmlzaW9uIiwgLmNhbm9uID0gIlJldmlzaW9uIiB9LAorICB7IC5uaWNrID0gTlVMTCB9Cit9OworCisvKioKKyAqIFBhY2thZ2Ugb2JqZWN0IGJlaW5nIHBhcnNlZC4KKyAqCisgKiBTdHJ1Y3R1cmUgdXNlZCB0byBob2xkIHRoZSBwYXJzZWQgZGF0YSBmb3IgdGhlIHBhY2thZ2UgYmVpbmcgY29uc3RydWN0ZWQsCisgKiBiZWZvcmUgaXQgZ2V0cyBwcm9wZXJseSBpbnNlcnRlZCBpbnRvIHRoZSBwYWNrYWdlIGRhdGFiYXNlLgorICovCitzdHJ1Y3QgcGtnX3BhcnNlX29iamVjdCB7CisgIHN0cnVjdCBwa2dpbmZvICpwa2c7CisgIHN0cnVjdCBwa2diaW4gKnBrZ2JpbjsKK307CisKKy8qKgorICogUGFyc2UgdGhlIGZpZWxkIGFuZCB2YWx1ZSBpbnRvIHRoZSBwYWNrYWdlIGJlaW5nIGNvbnN0cnVjdGVkLgorICovCitzdGF0aWMgdm9pZAorcGtnX3BhcnNlX2ZpZWxkKHN0cnVjdCBwYXJzZWRiX3N0YXRlICpwcywgc3RydWN0IGZpZWxkX3N0YXRlICpmcywKKyAgICAgICAgICAgICAgICB2b2lkICpwYXJzZV9vYmopCit7CisgIHN0cnVjdCBwa2dfcGFyc2Vfb2JqZWN0ICpwa2dfb2JqID0gcGFyc2Vfb2JqOworICBjb25zdCBzdHJ1Y3Qgbmlja25hbWUgKm5pY2s7CisgIGNvbnN0IHN0cnVjdCBmaWVsZGluZm8gKmZpcDsKKyAgaW50ICppcDsKKworICBmb3IgKG5pY2sgPSBuaWNrbmFtZXM7IG5pY2stPm5pY2s7IG5pY2srKykKKyAgICBpZiAoc3RybmNhc2VjbXAobmljay0+bmljaywgZnMtPmZpZWxkc3RhcnQsIGZzLT5maWVsZGxlbikgPT0gMCAmJgorICAgICAgICBuaWNrLT5uaWNrW2ZzLT5maWVsZGxlbl0gPT0gJ1wwJykKKyAgICAgIGJyZWFrOworICBpZiAobmljay0+bmljaykgeworICAgIGZzLT5maWVsZHN0YXJ0ID0gbmljay0+Y2Fub247CisgICAgZnMtPmZpZWxkbGVuID0gc3RybGVuKGZzLT5maWVsZHN0YXJ0KTsKKyAgfQorCisgIGZvciAoZmlwID0gZmllbGRpbmZvcywgaXAgPSBmcy0+ZmllbGRlbmNvdW50ZXJlZDsgZmlwLT5uYW1lOyBmaXArKywgaXArKykKKyAgICBpZiAoc3RybmNhc2VjbXAoZmlwLT5uYW1lLCBmcy0+ZmllbGRzdGFydCwgZnMtPmZpZWxkbGVuKSA9PSAwKQorICAgICAgYnJlYWs7CisgIGlmIChmaXAtPm5hbWUpIHsKKyAgICBpZiAoKCppcCkrKykKKyAgICAgIHBhcnNlX2Vycm9yKHBzLAorICAgICAgICAgICAgICAgICAgXygiZHVwbGljYXRlIHZhbHVlIGZvciBgJXMnIGZpZWxkIiksIGZpcC0+bmFtZSk7CisKKyAgICB2YXJidWZfcmVzZXQoJmZzLT52YWx1ZSk7CisgICAgdmFyYnVmX2FkZF9idWYoJmZzLT52YWx1ZSwgZnMtPnZhbHVlc3RhcnQsIGZzLT52YWx1ZWxlbik7CisgICAgdmFyYnVmX2VuZF9zdHIoJmZzLT52YWx1ZSk7CisKKyAgICBmaXAtPnJjYWxsKHBrZ19vYmotPnBrZywgcGtnX29iai0+cGtnYmluLCBwcywgZnMtPnZhbHVlLmJ1ZiwgZmlwKTsKKyAgfSBlbHNlIHsKKyAgICBzdHJ1Y3QgYXJiaXRyYXJ5ZmllbGQgKmFycCwgKipsYXJwcDsKKworICAgIGlmIChmcy0+ZmllbGRsZW4gPCAyKQorICAgICAgcGFyc2VfZXJyb3IocHMsCisgICAgICAgICAgICAgICAgICBfKCJ1c2VyLWRlZmluZWQgZmllbGQgbmFtZSBgJS4qcycgdG9vIHNob3J0IiksCisgICAgICAgICAgICAgICAgICBmcy0+ZmllbGRsZW4sIGZzLT5maWVsZHN0YXJ0KTsKKyAgICBsYXJwcCA9ICZwa2dfb2JqLT5wa2diaW4tPmFyYnM7CisgICAgd2hpbGUgKChhcnAgPSAqbGFycHApICE9IE5VTEwpIHsKKyAgICAgIGlmICghc3RybmNhc2VjbXAoYXJwLT5uYW1lLCBmcy0+ZmllbGRzdGFydCwgZnMtPmZpZWxkbGVuKSkKKyAgICAgICAgcGFyc2VfZXJyb3IocHMsCisgICAgICAgICAgICAgICAgICAgXygiZHVwbGljYXRlIHZhbHVlIGZvciB1c2VyLWRlZmluZWQgZmllbGQgYCUuKnMnIiksCisgICAgICAgICAgICAgICAgICAgZnMtPmZpZWxkbGVuLCBmcy0+ZmllbGRzdGFydCk7CisgICAgICBsYXJwcCA9ICZhcnAtPm5leHQ7CisgICAgfQorICAgIGFycCA9IG5mbWFsbG9jKHNpemVvZihzdHJ1Y3QgYXJiaXRyYXJ5ZmllbGQpKTsKKyAgICBhcnAtPm5hbWUgPSBuZnN0cm5zYXZlKGZzLT5maWVsZHN0YXJ0LCBmcy0+ZmllbGRsZW4pOworICAgIGFycC0+dmFsdWUgPSBuZnN0cm5zYXZlKGZzLT52YWx1ZXN0YXJ0LCBmcy0+dmFsdWVsZW4pOworICAgIGFycC0+bmV4dCA9IE5VTEw7CisgICAgKmxhcnBwID0gYXJwOworICB9Cit9CisKKy8qKgorICogVmVyaWZ5IGFuZCBmaXh1cCB0aGUgcGFja2FnZSBzdHJ1Y3R1cmUgYmVpbmcgY29uc3RydWN0ZWQuCisgKi8KK3N0YXRpYyB2b2lkCitwa2dfcGFyc2VfdmVyaWZ5KHN0cnVjdCBwYXJzZWRiX3N0YXRlICpwcywKKyAgICAgICAgICAgICAgICAgc3RydWN0IHBrZ2luZm8gKnBrZywgc3RydWN0IHBrZ2JpbiAqcGtnYmluKQoreworICBwYXJzZV9tdXN0X2hhdmVfZmllbGQocHMsIHBrZy0+bmFtZSwgInBhY2thZ2UgbmFtZSIpOworCisgIC8qIFhYWDogV2UgbmVlZCB0byBjaGVjayBmb3Igc3RhdHVzICE9IHN0YXRfaGFsZmluc3RhbGxlZCBhcyB3aGlsZQorICAgKiB1bnBhY2tpbmcgYW4gdW5zZWxlY3RlZCBwYWNrYWdlLCBpdCB3aWxsIG5vdCBoYXZlIHlldCBhbGwgZGF0YSBpbgorICAgKiBwbGFjZS4gQnV0IHdlIGNhbm5vdCBjaGVjayBmb3IgPiBzdGF0X2hhbGZpbnN0YWxsZWQgYXMgc3RhdF9jb25maWdmaWxlcworICAgKiBhbHdheXMgc2hvdWxkIGhhdmUgdGhvc2UgZmllbGRzLiAqLworICBpZiAoKHBzLT5mbGFncyAmIHBkYl9yZWNvcmRhdmFpbGFibGUpIHx8CisgICAgICAocGtnLT5zdGF0dXMgIT0gc3RhdF9ub3RpbnN0YWxsZWQgJiYKKyAgICAgICBwa2ctPnN0YXR1cyAhPSBzdGF0X2hhbGZpbnN0YWxsZWQpKSB7CisgICAgcGFyc2VfZW5zdXJlX2hhdmVfZmllbGQocHMsICZwa2diaW4tPmRlc2NyaXB0aW9uLCAiZGVzY3JpcHRpb24iKTsKKyAgICBwYXJzZV9lbnN1cmVfaGF2ZV9maWVsZChwcywgJnBrZ2Jpbi0+bWFpbnRhaW5lciwgIm1haW50YWluZXIiKTsKKyAgICBwYXJzZV9tdXN0X2hhdmVfZmllbGQocHMsIHBrZ2Jpbi0+dmVyc2lvbi52ZXJzaW9uLCAidmVyc2lvbiIpOworICB9CisKKyAgLyogWFhYOiBWZXJzaW9ucyBiZWZvcmUgZHBrZyAxLjEwLjE5IGRpZCBub3QgcHJlc2VydmUgdGhlIEFyY2hpdGVjdHVyZQorICAgKiBmaWVsZCBpbiB0aGUgc3RhdHVzIGZpbGUuIFNvIHRoZXJlJ3Mgc3RpbGwgbGl2ZSBzeXN0ZW1zIHdpdGggcGFja2FnZXMKKyAgICogaW4gc3RhdF9jb25maWdmaWxlcywgaWdub3JlIHRob3NlIHRvbyBmb3Igbm93LiAqLworICBpZiAoKHBzLT5mbGFncyAmIHBkYl9yZWNvcmRhdmFpbGFibGUpIHx8CisgICAgICBwa2ctPnN0YXR1cyA+IHN0YXRfaGFsZmluc3RhbGxlZCkgeworICAgIC8qIFdlIGFsd2F5cyB3YW50IHVzYWJsZSBhcmNoaXRlY3R1cmUgaW5mb3JtYXRpb24gKGFzIGxvbmcgYXMgdGhlIHBhY2thZ2UKKyAgICAgKiBpcyBpbiBzdWNoIGEgc3RhdGUgdGhhdCBpdCBtYWtlIHNlbnNlKSwgc28gdGhhdCBpdCBjYW4gYmUgdXNlZCBzYWZlbHkKKyAgICAgKiBvbiBzdHJpbmcgY29tcGFyaXNvbnMgYW5kIHRoZSBsaWtlLiAqLworICAgIHBhcnNlX2Vuc3VyZV9oYXZlX2ZpZWxkKHBzLCAmcGtnYmluLT5hcmNoLCAiYXJjaGl0ZWN0dXJlIik7CisgIH0gZWxzZSBpZiAocGtnYmluLT5hcmNoID09IE5VTEwpIHsKKyAgICBwa2diaW4tPmFyY2ggPSAiIjsKKyAgfQorCisgIC8qIENoZWNrIHRoZSBDb25maWctVmVyc2lvbiBpbmZvcm1hdGlvbjoKKyAgICogSWYgdGhlcmUgaXMgYSBDb25maWctVmVyc2lvbiBpdCBpcyBkZWZpbml0ZWx5IHRvIGJlIHVzZWQsIGJ1dAorICAgKiB0aGVyZSBzaG91bGRuJ3QgYmUgb25lIGlmIHRoZSBwYWNrYWdlIGlzIOKAmGluc3RhbGxlZOKAmSAoaW4gd2hpY2ggY2FzZQorICAgKiB0aGUgVmVyc2lvbiBhbmQvb3IgUmV2aXNpb24gd2lsbCBiZSBjb3BpZWQpIG9yIGlmIHRoZSBwYWNrYWdlIGlzCisgICAqIOKAmG5vdC1pbnN0YWxsZWTigJkgKGluIHdoaWNoIGNhc2UgdGhlcmUgaXMgbm8gQ29uZmlnLVZlcnNpb24pLiAqLworICBpZiAoIShwcy0+ZmxhZ3MgJiBwZGJfcmVjb3JkYXZhaWxhYmxlKSkgeworICAgIGlmIChwa2ctPmNvbmZpZ3ZlcnNpb24udmVyc2lvbikgeworICAgICAgaWYgKHBrZy0+c3RhdHVzID09IHN0YXRfaW5zdGFsbGVkIHx8IHBrZy0+c3RhdHVzID09IHN0YXRfbm90aW5zdGFsbGVkKQorICAgICAgICBwYXJzZV9lcnJvcihwcywKKyAgICAgICAgICAgICAgICAgICAgXygiQ29uZmlndXJlZC1WZXJzaW9uIGZvciBwYWNrYWdlIHdpdGggaW5hcHByb3ByaWF0ZSBTdGF0dXMiKSk7CisgICAgfSBlbHNlIHsKKyAgICAgIGlmIChwa2ctPnN0YXR1cyA9PSBzdGF0X2luc3RhbGxlZCkKKyAgICAgICAgcGtnLT5jb25maWd2ZXJzaW9uID0gcGtnYmluLT52ZXJzaW9uOworICAgIH0KKyAgfQorCisgIGlmIChwa2ctPnRyaWdhdy5oZWFkICYmCisgICAgICAocGtnLT5zdGF0dXMgPD0gc3RhdF9jb25maWdmaWxlcyB8fAorICAgICAgIHBrZy0+c3RhdHVzID49IHN0YXRfdHJpZ2dlcnNwZW5kaW5nKSkKKyAgICBwYXJzZV9lcnJvcihwcywKKyAgICAgICAgICAgICAgICBfKCJwYWNrYWdlIGhhcyBzdGF0dXMgJXMgYnV0IHRyaWdnZXJzIGFyZSBhd2FpdGVkIiksCisgICAgICAgICAgICAgICAgc3RhdHVzaW5mb3NbcGtnLT5zdGF0dXNdLm5hbWUpOworICBlbHNlIGlmIChwa2ctPnN0YXR1cyA9PSBzdGF0X3RyaWdnZXJzYXdhaXRlZCAmJiAhcGtnLT50cmlnYXcuaGVhZCkKKyAgICBwYXJzZV9lcnJvcihwcywKKyAgICAgICAgICAgICAgICBfKCJwYWNrYWdlIGhhcyBzdGF0dXMgdHJpZ2dlcnMtYXdhaXRlZCBidXQgbm8gdHJpZ2dlcnMgYXdhaXRlZCIpKTsKKworICBpZiAocGtnLT50cmlncGVuZF9oZWFkICYmCisgICAgICAhKHBrZy0+c3RhdHVzID09IHN0YXRfdHJpZ2dlcnNwZW5kaW5nIHx8CisgICAgICAgIHBrZy0+c3RhdHVzID09IHN0YXRfdHJpZ2dlcnNhd2FpdGVkKSkKKyAgICBwYXJzZV9lcnJvcihwcywKKyAgICAgICAgICAgICAgICBfKCJwYWNrYWdlIGhhcyBzdGF0dXMgJXMgYnV0IHRyaWdnZXJzIGFyZSBwZW5kaW5nIiksCisgICAgICAgICAgICAgICAgc3RhdHVzaW5mb3NbcGtnLT5zdGF0dXNdLm5hbWUpOworICBlbHNlIGlmIChwa2ctPnN0YXR1cyA9PSBzdGF0X3RyaWdnZXJzcGVuZGluZyAmJiAhcGtnLT50cmlncGVuZF9oZWFkKQorICAgIHBhcnNlX2Vycm9yKHBzLAorICAgICAgICAgICAgICAgIF8oInBhY2thZ2UgaGFzIHN0YXR1cyB0cmlnZ2Vycy1wZW5kaW5nIGJ1dCBubyB0cmlnZ2VycyAiCisgICAgICAgICAgICAgICAgICAicGVuZGluZyIpKTsKKworICAvKiBGSVhNRTogVGhlcmUgd2FzIGEgYnVnIHRoYXQgY291bGQgbWFrZSBhIG5vdC1pbnN0YWxsZWQgcGFja2FnZSBoYXZlCisgICAqIGNvbmZmaWxlcywgc28gd2UgY2hlY2sgZm9yIHRoZW0gaGVyZSBhbmQgcmVtb3ZlIHRoZW0gKHJhdGhlciB0aGFuCisgICAqIGNhbGxpbmcgaXQgYW4gZXJyb3IsIHdoaWNoIHdpbGwgZG8gYXQgc29tZSBwb2ludCkuICovCisgIGlmICghKHBzLT5mbGFncyAmIHBkYl9yZWNvcmRhdmFpbGFibGUpICYmCisgICAgICBwa2ctPnN0YXR1cyA9PSBzdGF0X25vdGluc3RhbGxlZCAmJgorICAgICAgcGtnYmluLT5jb25mZmlsZXMpIHsKKyAgICBwYXJzZV93YXJuKHBzLAorICAgICAgICAgICAgICAgXygiUGFja2FnZSB3aGljaCBpbiBzdGF0ZSBub3QtaW5zdGFsbGVkIGhhcyBjb25mZmlsZXMsICIKKyAgICAgICAgICAgICAgICAgImZvcmdldHRpbmcgdGhlbSIpKTsKKyAgICBwa2diaW4tPmNvbmZmaWxlcyA9IE5VTEw7CisgIH0KKworICAvKiBYWFg6IE1hcmsgbm90LWluc3RhbGxlZCBsZWZ0b3ZlciBwYWNrYWdlcyBmb3IgYXV0b21hdGljIHJlbW92YWwgb24KKyAgICogbmV4dCBkYXRhYmFzZSBkdW1wLiBUaGlzIGNvZGUgY2FuIGJlIHJlbW92ZWQgYWZ0ZXIgZHBrZyAxLjE2LngsIHdoZW4KKyAgICogdGhlcmUncyBndWFyYW50ZWUgdGhhdCBubyBsZWZ0b3ZlciBpcyBmb3VuZCBvbiB0aGUgc3RhdHVzIGZpbGUgb24KKyAgICogbWFqb3IgZGlzdHJpYnV0aW9ucy4gKi8KKyAgaWYgKCEocHMtPmZsYWdzICYgcGRiX3JlY29yZGF2YWlsYWJsZSkgJiYKKyAgICAgIHBrZy0+c3RhdHVzID09IHN0YXRfbm90aW5zdGFsbGVkICYmCisgICAgICBwa2ctPmVmbGFnID09IGVmbGFnX29rICYmCisgICAgICAocGtnLT53YW50ID09IHdhbnRfcHVyZ2UgfHwKKyAgICAgICBwa2ctPndhbnQgPT0gd2FudF9kZWluc3RhbGwgfHwKKyAgICAgICBwa2ctPndhbnQgPT0gd2FudF9ob2xkKSkgeworICAgIHBrZy0+d2FudCA9IHdhbnRfdW5rbm93bjsKKyAgfQorfQorCisvKioKKyAqIENvcHkgaW50byB0aGUgaW4tY29yZSBkYXRhYmFzZSB0aGUgcGFja2FnZSBiZWluZyBjb25zdHJ1Y3RlZC4KKyAqLworc3RhdGljIHZvaWQKK3BrZ19wYXJzZV9jb3B5KHN0cnVjdCBwYXJzZWRiX3N0YXRlICpwcywKKyAgICAgICAgICAgICAgIHN0cnVjdCBwa2dpbmZvICpkc3RfcGtnLCBzdHJ1Y3QgcGtnYmluICpkc3RfcGtnYmluLAorICAgICAgICAgICAgICAgc3RydWN0IHBrZ2luZm8gKnNyY19wa2csIHN0cnVjdCBwa2diaW4gKnNyY19wa2diaW4pCit7CisgIC8qIENvcHkgdGhlIHByaW9yaXR5IGFuZCBzZWN0aW9uIGFjcm9zcywgYnV0IGRvbid0IG92ZXJ3cml0ZSBleGlzdGluZworICAgKiB2YWx1ZXMgaWYgdGhlIHBkYl93ZWFrY2xhc3NpZmljYXRpb24gZmxhZyBpcyBzZXQuICovCisgIGlmIChzcmNfcGtnLT5zZWN0aW9uICYmICpzcmNfcGtnLT5zZWN0aW9uICYmCisgICAgICAhKChwcy0+ZmxhZ3MgJiBwZGJfd2Vha2NsYXNzaWZpY2F0aW9uKSAmJgorICAgICAgICBkc3RfcGtnLT5zZWN0aW9uICYmICpkc3RfcGtnLT5zZWN0aW9uKSkKKyAgICBkc3RfcGtnLT5zZWN0aW9uID0gc3JjX3BrZy0+c2VjdGlvbjsKKyAgaWYgKHNyY19wa2ctPnByaW9yaXR5ICE9IHByaV91bmtub3duICYmCisgICAgICAhKChwcy0+ZmxhZ3MgJiBwZGJfd2Vha2NsYXNzaWZpY2F0aW9uKSAmJgorICAgICAgICBkc3RfcGtnLT5wcmlvcml0eSAhPSBwcmlfdW5rbm93bikpIHsKKyAgICBkc3RfcGtnLT5wcmlvcml0eSA9IHNyY19wa2ctPnByaW9yaXR5OworICAgIGlmIChzcmNfcGtnLT5wcmlvcml0eSA9PSBwcmlfb3RoZXIpCisgICAgICBkc3RfcGtnLT5vdGhlcnByaW9yaXR5ID0gc3JjX3BrZy0+b3RoZXJwcmlvcml0eTsKKyAgfQorCisgIC8qIFNvcnQgb3V0IHRoZSBkZXBlbmRlbmN5IG1lc3MuICovCisgIGNvcHlfZGVwZW5kZW5jeV9saW5rcyhkc3RfcGtnLCAmZHN0X3BrZ2Jpbi0+ZGVwZW5kcywgc3JjX3BrZ2Jpbi0+ZGVwZW5kcywKKyAgICAgICAgICAgICAgICAgICAgICAgIChwcy0+ZmxhZ3MgJiBwZGJfcmVjb3JkYXZhaWxhYmxlKSA/IHRydWUgOiBmYWxzZSk7CisgIC8qIExlYXZlIHRoZSDigJhkZXBlbmRlZOKAmSBwb2ludGVyIGFsb25lLCB3ZSd2ZSBqdXN0IGdvbmUgdG8gc3VjaAorICAgKiB0cm91YmxlIHRvIGdldCBpdCByaWdodCA6LSkuIFRoZSDigJhkZXBlbmRz4oCZIHBvaW50ZXIgaW4KKyAgICogZHN0X3BrZ2JpbiB3YXMgaW5kZWVkIGFsc28gdXBkYXRlZCBieSBjb3B5X2RlcGVuZGVuY3lfbGlua3MsCisgICAqIGJ1dCBzaW5jZSB0aGUgdmFsdWUgd2FzIHRoYXQgZnJvbSBzcmNfcGtnYmluIGFueXdheSB0aGVyZSdzCisgICAqIG5vIG5lZWQgdG8gY29weSBpdCBiYWNrLiAqLworICBzcmNfcGtnYmluLT5kZXBlbmRlZCA9IGRzdF9wa2diaW4tPmRlcGVuZGVkOworCisgIC8qIENvcHkgYWNyb3NzIGRhdGEuICovCisgIG1lbWNweShkc3RfcGtnYmluLCBzcmNfcGtnYmluLCBzaXplb2Yoc3RydWN0IHBrZ2JpbikpOworICBpZiAoIShwcy0+ZmxhZ3MgJiBwZGJfcmVjb3JkYXZhaWxhYmxlKSkgeworICAgIHN0cnVjdCB0cmlnYXcgKnRhOworCisgICAgZHN0X3BrZy0+d2FudCA9IHNyY19wa2ctPndhbnQ7CisgICAgZHN0X3BrZy0+ZWZsYWcgPSBzcmNfcGtnLT5lZmxhZzsKKyAgICBkc3RfcGtnLT5zdGF0dXMgPSBzcmNfcGtnLT5zdGF0dXM7CisgICAgZHN0X3BrZy0+Y29uZmlndmVyc2lvbiA9IHNyY19wa2ctPmNvbmZpZ3ZlcnNpb247CisgICAgZHN0X3BrZy0+ZmlsZXMgPSBOVUxMOworCisgICAgZHN0X3BrZy0+dHJpZ3BlbmRfaGVhZCA9IHNyY19wa2ctPnRyaWdwZW5kX2hlYWQ7CisgICAgZHN0X3BrZy0+dHJpZ2F3ID0gc3JjX3BrZy0+dHJpZ2F3OworICAgIGZvciAodGEgPSBkc3RfcGtnLT50cmlnYXcuaGVhZDsgdGE7IHRhID0gdGEtPnNhbWVhdy5uZXh0KSB7CisgICAgICBhc3NlcnQodGEtPmF3ID09IHNyY19wa2cpOworICAgICAgdGEtPmF3ID0gZHN0X3BrZzsKKyAgICAgIC8qIC0+b3RoZXJ0cmlnYXdfaGVhZCBpcyB1cGRhdGVkIGJ5IHRyaWdfbm90ZV9hdyBpbiAqKHBrZ19kYl9maW5kKCkpCisgICAgICAgKiByYXRoZXIgdGhhbiBpbiBkc3RfcGtnLiAqLworICAgIH0KKyAgfSBlbHNlIGlmICghKHBzLT5mbGFncyAmIHBkYl9pZ25vcmVmaWxlcykpIHsKKyAgICBkc3RfcGtnLT5maWxlcyA9IHNyY19wa2ctPmZpbGVzOworICB9Cit9CisKKy8qKgorICogT3BlbiBhIGZpbGUgZm9yIFJGQy04MjIgcGFyc2luZy4KKyAqLwordm9pZAorcGFyc2Vfb3BlbihzdHJ1Y3QgcGFyc2VkYl9zdGF0ZSAqcHMsIGNvbnN0IGNoYXIgKmZpbGVuYW1lLAorICAgICAgICAgICBlbnVtIHBhcnNlZGJmbGFncyBmbGFncykKK3sKKyAgc3RhdGljIGludCBmZDsKKyAgc3RydWN0IHN0YXQgc3Q7CisKKyAgcHMtPmZpbGVuYW1lID0gZmlsZW5hbWU7CisgIHBzLT5mbGFncyA9IGZsYWdzOworICBwcy0+bG5vID0gMDsKKyAgcHMtPnBrZyA9IE5VTEw7CisgIHBzLT5wa2diaW4gPSBOVUxMOworCisgIGZkID0gb3BlbihmaWxlbmFtZSwgT19SRE9OTFkpOworICBpZiAoZmQgPT0gLTEpCisgICAgb2hzaGl0ZShfKCJmYWlsZWQgdG8gb3BlbiBwYWNrYWdlIGluZm8gZmlsZSBgJS4yNTVzJyBmb3IgcmVhZGluZyIpLAorICAgICAgICAgICAgZmlsZW5hbWUpOworCisgIHB1c2hfY2xlYW51cChjdV9jbG9zZWZkLCB+ZWhmbGFnX25vcm1hbHRpZHksIE5VTEwsIDAsIDEsICZmZCk7CisKKyAgaWYgKGZzdGF0KGZkLCAmc3QpID09IC0xKQorICAgIG9oc2hpdGUoXygiY2FuJ3Qgc3RhdCBwYWNrYWdlIGluZm8gZmlsZSBgJS4yNTVzJyIpLCBmaWxlbmFtZSk7CisKKyAgaWYgKHN0LnN0X3NpemUgPiAwKSB7CisjaWZkZWYgVVNFX01NQVAKKyAgICBwcy0+ZGF0YXB0ciA9IG1tYXAoTlVMTCwgc3Quc3Rfc2l6ZSwgUFJPVF9SRUFELCBNQVBfU0hBUkVELCBmZCwgMCk7CisgICAgaWYgKHBzLT5kYXRhcHRyID09IE1BUF9GQUlMRUQpCisgICAgICBvaHNoaXRlKF8oImNhbid0IG1tYXAgcGFja2FnZSBpbmZvIGZpbGUgYCUuMjU1cyciKSwgZmlsZW5hbWUpOworI2Vsc2UKKyAgICBwcy0+ZGF0YXB0ciA9IG1fbWFsbG9jKHN0LnN0X3NpemUpOworCisgICAgaWYgKGZkX3JlYWQoZmQsIHBzLT5kYXRhcHRyLCBzdC5zdF9zaXplKSA8IDApCisgICAgICBvaHNoaXRlKF8oInJlYWRpbmcgcGFja2FnZSBpbmZvIGZpbGUgJyUuMjU1cyciKSwgZmlsZW5hbWUpOworI2VuZGlmCisgICAgcHMtPmRhdGEgPSBwcy0+ZGF0YXB0cjsKKyAgICBwcy0+ZW5kcHRyID0gcHMtPmRhdGFwdHIgKyBzdC5zdF9zaXplOworICB9IGVsc2UgeworICAgIHBzLT5kYXRhID0gcHMtPmRhdGFwdHIgPSBwcy0+ZW5kcHRyID0gTlVMTDsKKyAgfQorCisgIHBvcF9jbGVhbnVwKGVoZmxhZ19ub3JtYWx0aWR5KTsKKworICBpZiAoY2xvc2UoZmQpKQorICAgIG9oc2hpdGUoXygiZmFpbGVkIHRvIGNsb3NlIGFmdGVyIHJlYWQ6IGAlLjI1NXMnIiksIGZpbGVuYW1lKTsKK30KKworLyoqCisgKiBQYXJzZSBhbiBSRkMtODIyIHN0eWxlIHN0YW56YS4KKyAqLworYm9vbAorcGFyc2Vfc3RhbnphKHN0cnVjdCBwYXJzZWRiX3N0YXRlICpwcywgc3RydWN0IGZpZWxkX3N0YXRlICpmcywKKyAgICAgICAgICAgICBwYXJzZV9maWVsZF9mdW5jICpwYXJzZV9maWVsZCwgdm9pZCAqcGFyc2Vfb2JqKQoreworICBpbnQgYzsKKworICAvKiBTa2lwIGFkamFjZW50IG5ldyBsaW5lcy4gKi8KKyAgd2hpbGUgKCFwYXJzZV9FT0YocHMpKSB7CisgICAgYyA9IHBhcnNlX2dldGMocHMpOworICAgIGlmIChjICE9ICdcbicgJiYgYyAhPSBNU0RPU19FT0ZfQ0hBUikKKyAgICAgIGJyZWFrOworICAgIHBzLT5sbm8rKzsKKyAgfQorCisgIC8qIE5vdGhpbmcgcmVsZXZhbnQgcGFyc2VkLCBiYWlsIG91dC4gKi8KKyAgaWYgKHBhcnNlX0VPRihwcykpCisgICAgcmV0dXJuIGZhbHNlOworCisgIC8qIExvb3AgcGVyIGZpZWxkLiAqLworICBmb3IgKDs7KSB7CisgICAgYm9vbCBibGFua19saW5lOworCisgICAgLyogU2NhbiBmaWVsZCBuYW1lLiAqLworICAgIGZzLT5maWVsZHN0YXJ0ID0gcHMtPmRhdGFwdHIgLSAxOworICAgIHdoaWxlICghcGFyc2VfRU9GKHBzKSAmJiAhaXNzcGFjZShjKSAmJiBjICE9ICc6JyAmJiBjICE9IE1TRE9TX0VPRl9DSEFSKQorICAgICAgYyA9IHBhcnNlX2dldGMocHMpOworICAgIGZzLT5maWVsZGxlbiA9IHBzLT5kYXRhcHRyIC0gZnMtPmZpZWxkc3RhcnQgLSAxOworCisgICAgLyogU2tpcCBzcGFjZXMgYmVmb3JlIOKAmDrigJkuICovCisgICAgd2hpbGUgKCFwYXJzZV9FT0YocHMpICYmIGMgIT0gJ1xuJyAmJiBpc3NwYWNlKGMpKQorICAgICAgYyA9IHBhcnNlX2dldGMocHMpOworCisgICAgLyogVmFsaWRhdGUg4oCYOuKAmS4gKi8KKyAgICBpZiAocGFyc2VfRU9GKHBzKSkKKyAgICAgIHBhcnNlX2Vycm9yKHBzLAorICAgICAgICAgICAgICAgICAgXygiRU9GIGFmdGVyIGZpZWxkIG5hbWUgYCUuKnMnIiksIGZzLT5maWVsZGxlbiwgZnMtPmZpZWxkc3RhcnQpOworICAgIGlmIChjID09ICdcbicpCisgICAgICBwYXJzZV9lcnJvcihwcywKKyAgICAgICAgICAgICAgICAgIF8oIm5ld2xpbmUgaW4gZmllbGQgbmFtZSBgJS4qcyciKSwgZnMtPmZpZWxkbGVuLCBmcy0+ZmllbGRzdGFydCk7CisgICAgaWYgKGMgPT0gTVNET1NfRU9GX0NIQVIpCisgICAgICBwYXJzZV9lcnJvcihwcywKKyAgICAgICAgICAgICAgICAgIF8oIk1TRE9TIEVPRiAoXlopIGluIGZpZWxkIG5hbWUgYCUuKnMnIiksCisgICAgICAgICAgICAgICAgICBmcy0+ZmllbGRsZW4sIGZzLT5maWVsZHN0YXJ0KTsKKyAgICBpZiAoYyAhPSAnOicpCisgICAgICBwYXJzZV9lcnJvcihwcywKKyAgICAgICAgICAgICAgICAgIF8oImZpZWxkIG5hbWUgYCUuKnMnIG11c3QgYmUgZm9sbG93ZWQgYnkgY29sb24iKSwKKyAgICAgICAgICAgICAgICAgIGZzLT5maWVsZGxlbiwgZnMtPmZpZWxkc3RhcnQpOworCisgICAgLyogU2tpcCBzcGFjZSBhZnRlciDigJg64oCZIGJ1dCBiZWZvcmUgdmFsdWUgYW5kIEVPTC4gKi8KKyAgICB3aGlsZSAoIXBhcnNlX0VPRihwcykpIHsKKyAgICAgIGMgPSBwYXJzZV9nZXRjKHBzKTsKKyAgICAgIGlmIChjID09ICdcbicgfHwgIWlzc3BhY2UoYykpCisgICAgICAgIGJyZWFrOworICAgIH0KKyAgICBpZiAocGFyc2VfRU9GKHBzKSkKKyAgICAgIHBhcnNlX2Vycm9yKHBzLAorICAgICAgICAgICAgICAgICAgXygiRU9GIGJlZm9yZSB2YWx1ZSBvZiBmaWVsZCBgJS4qcycgKG1pc3NpbmcgZmluYWwgbmV3bGluZSkiKSwKKyAgICAgICAgICAgICAgICAgIGZzLT5maWVsZGxlbiwgZnMtPmZpZWxkc3RhcnQpOworICAgIGlmIChjID09IE1TRE9TX0VPRl9DSEFSKQorICAgICAgcGFyc2VfZXJyb3IocHMsCisgICAgICAgICAgICAgICAgICBfKCJNU0RPUyBFT0YgY2hhciBpbiB2YWx1ZSBvZiBmaWVsZCBgJS4qcycgKG1pc3NpbmcgbmV3bGluZT8pIiksCisgICAgICAgICAgICAgICAgICBmcy0+ZmllbGRsZW4sIGZzLT5maWVsZHN0YXJ0KTsKKworICAgIGJsYW5rX2xpbmUgPSBmYWxzZTsKKworICAgIC8qIFNjYW4gZmllbGQgdmFsdWUuICovCisgICAgZnMtPnZhbHVlc3RhcnQgPSBwcy0+ZGF0YXB0ciAtIDE7CisgICAgZm9yICg7OykgeworICAgICAgaWYgKGMgPT0gJ1xuJyB8fCBjID09IE1TRE9TX0VPRl9DSEFSKSB7CisgICAgICAgIGlmIChibGFua19saW5lKQorICAgICAgICAgIHBhcnNlX2Vycm9yKHBzLAorICAgICAgICAgICAgICAgICAgICAgIF8oImJsYW5rIGxpbmUgaW4gdmFsdWUgb2YgZmllbGQgJyUuKnMnIiksCisgICAgICAgICAgICAgICAgICAgICAgZnMtPmZpZWxkbGVuLCBmcy0+ZmllbGRzdGFydCk7CisgICAgICAgIHBzLT5sbm8rKzsKKworICAgICAgICBpZiAocGFyc2VfRU9GKHBzKSkKKyAgICAgICAgICBicmVhazsKKyAgICAgICAgYyA9IHBhcnNlX2dldGMocHMpOworCisgICAgICAgIC8qIEZvdW5kIGRvdWJsZSBFT0wsIG9yIHN0YXJ0IG9mIG5ldyBmaWVsZC4gKi8KKyAgICAgICAgaWYgKHBhcnNlX0VPRihwcykgfHwgYyA9PSAnXG4nIHx8ICFpc3NwYWNlKGMpKQorICAgICAgICAgIGJyZWFrOworCisgICAgICAgIHBhcnNlX3VuZ2V0YyhjLCBwcyk7CisgICAgICAgIGMgPSAnXG4nOworICAgICAgICBibGFua19saW5lID0gdHJ1ZTsKKyAgICAgIH0gZWxzZSBpZiAoYmxhbmtfbGluZSAmJiAhaXNzcGFjZShjKSkgeworICAgICAgICBibGFua19saW5lID0gZmFsc2U7CisgICAgICB9CisKKyAgICAgIGlmIChwYXJzZV9FT0YocHMpKQorICAgICAgICBwYXJzZV9lcnJvcihwcywKKyAgICAgICAgICAgICAgICAgICAgXygiRU9GIGR1cmluZyB2YWx1ZSBvZiBmaWVsZCBgJS4qcycgKG1pc3NpbmcgZmluYWwgbmV3bGluZSkiKSwKKyAgICAgICAgICAgICAgICAgICAgZnMtPmZpZWxkbGVuLCBmcy0+ZmllbGRzdGFydCk7CisKKyAgICAgIGMgPSBwYXJzZV9nZXRjKHBzKTsKKyAgICB9CisgICAgZnMtPnZhbHVlbGVuID0gcHMtPmRhdGFwdHIgLSBmcy0+dmFsdWVzdGFydCAtIDE7CisKKyAgICAvKiBUcmltIGVuZGluZyBzcGFjZSBvbiB2YWx1ZS4gKi8KKyAgICB3aGlsZSAoZnMtPnZhbHVlbGVuICYmIGlzc3BhY2UoKihmcy0+dmFsdWVzdGFydCArIGZzLT52YWx1ZWxlbiAtIDEpKSkKKyAgICAgIGZzLT52YWx1ZWxlbi0tOworCisgICAgcGFyc2VfZmllbGQocHMsIGZzLCBwYXJzZV9vYmopOworCisgICAgaWYgKHBhcnNlX0VPRihwcykgfHwgYyA9PSAnXG4nIHx8IGMgPT0gTVNET1NfRU9GX0NIQVIpCisgICAgICBicmVhazsKKyAgfSAvKiBMb29wIHBlciBmaWVsZC4gKi8KKworICBpZiAoYyA9PSAnXG4nKQorICAgIHBzLT5sbm8rKzsKKworICByZXR1cm4gdHJ1ZTsKK30KKworLyoqCisgKiBDbG9zZSBhbiBSRkMtODIyIHBhcnNlciBjb250ZXh0LgorICovCit2b2lkCitwYXJzZV9jbG9zZShzdHJ1Y3QgcGFyc2VkYl9zdGF0ZSAqcHMpCit7CisgIGlmIChwcy0+ZGF0YSAhPSBOVUxMKSB7CisjaWZkZWYgVVNFX01NQVAKKyAgICBtdW5tYXAocHMtPmRhdGEsIHBzLT5lbmRwdHIgLSBwcy0+ZGF0YSk7CisjZWxzZQorICAgIGZyZWUocHMtPmRhdGEpOworI2VuZGlmCisgIH0KK30KKworLyoqCisgKiBQYXJzZSBhbiBSRkMtODIyIHN0eWxlIGZpbGUuCisgKgorICogZG9uZXAgbWF5IGJlIE5VTEwuCisgKiBJZiBkb25lcCBpcyBub3QgTlVMTCBvbmx5IG9uZSBwYWNrYWdlJ3MgaW5mb3JtYXRpb24gaXMgZXhwZWN0ZWQuCisgKi8KK2ludCBwYXJzZWRiKGNvbnN0IGNoYXIgKmZpbGVuYW1lLCBlbnVtIHBhcnNlZGJmbGFncyBmbGFncywKKyAgICAgICAgICAgIHN0cnVjdCBwa2dpbmZvICoqZG9uZXApCit7CisgIHN0cnVjdCBwa2dpbmZvIHRtcF9wa2c7CisgIHN0cnVjdCBwa2dpbmZvICpuZXdfcGtnLCAqZGJfcGtnOworICBzdHJ1Y3QgcGtnYmluICpuZXdfcGtnYmluLCAqZGJfcGtnYmluOworICBzdHJ1Y3QgcGtnX3BhcnNlX29iamVjdCBwa2dfb2JqOworICBpbnQgZmllbGRlbmNvdW50ZXJlZFthcnJheV9jb3VudChmaWVsZGluZm9zKV07CisgIGludCBwZG9uZTsKKyAgc3RydWN0IHBhcnNlZGJfc3RhdGUgcHM7CisgIHN0cnVjdCBmaWVsZF9zdGF0ZSBmczsKKworICBtZW1zZXQoJmZzLCAwLCBzaXplb2YoZnMpKTsKKyAgZnMuZmllbGRlbmNvdW50ZXJlZCA9IGZpZWxkZW5jb3VudGVyZWQ7CisKKyAgcGFyc2Vfb3BlbigmcHMsIGZpbGVuYW1lLCBmbGFncyk7CisKKyAgbmV3X3BrZyA9ICZ0bXBfcGtnOworICBpZiAoZmxhZ3MgJiBwZGJfcmVjb3JkYXZhaWxhYmxlKQorICAgIG5ld19wa2diaW4gPSAmbmV3X3BrZy0+YXZhaWxhYmxlOworICBlbHNlCisgICAgbmV3X3BrZ2JpbiA9ICZuZXdfcGtnLT5pbnN0YWxsZWQ7CisKKyAgcHMucGtnID0gbmV3X3BrZzsKKyAgcHMucGtnYmluID0gbmV3X3BrZ2JpbjsKKworICBwa2dfb2JqLnBrZyA9IG5ld19wa2c7CisgIHBrZ19vYmoucGtnYmluID0gbmV3X3BrZ2JpbjsKKworICBwZG9uZT0gMDsKKworICAvKiBMb29wIHBlciBwYWNrYWdlLiAqLworICBmb3IgKDs7KSB7CisgICAgbWVtc2V0KGZpZWxkZW5jb3VudGVyZWQsIDAsIHNpemVvZihmaWVsZGVuY291bnRlcmVkKSk7CisgICAgcGtnX2JsYW5rKG5ld19wa2cpOworCisgICAgaWYgKCFwYXJzZV9zdGFuemEoJnBzLCAmZnMsIHBrZ19wYXJzZV9maWVsZCwgJnBrZ19vYmopKQorICAgICAgYnJlYWs7CisKKyAgICBpZiAocGRvbmUgJiYgZG9uZXApCisgICAgICBwYXJzZV9lcnJvcigmcHMsCisgICAgICAgICAgICAgICAgICBfKCJzZXZlcmFsIHBhY2thZ2UgaW5mbyBlbnRyaWVzIGZvdW5kLCBvbmx5IG9uZSBhbGxvd2VkIikpOworCisgICAgcGtnX3BhcnNlX3ZlcmlmeSgmcHMsIG5ld19wa2csIG5ld19wa2diaW4pOworCisgICAgZGJfcGtnID0gcGtnX2RiX2ZpbmQobmV3X3BrZy0+bmFtZSk7CisgICAgaWYgKGZsYWdzICYgcGRiX3JlY29yZGF2YWlsYWJsZSkKKyAgICAgIGRiX3BrZ2JpbiA9ICZkYl9wa2ctPmF2YWlsYWJsZTsKKyAgICBlbHNlCisgICAgICBkYl9wa2diaW4gPSAmZGJfcGtnLT5pbnN0YWxsZWQ7CisKKyAgICBpZiAoKGZsYWdzICYgcGRiX2lnbm9yZW9sZGVyKSAmJgorICAgICAgICB2ZXJzaW9uY29tcGFyZSgmbmV3X3BrZ2Jpbi0+dmVyc2lvbiwgJmRiX3BrZ2Jpbi0+dmVyc2lvbikgPCAwKQorICAgICAgY29udGludWU7CisKKyAgICBwa2dfcGFyc2VfY29weSgmcHMsIGRiX3BrZywgZGJfcGtnYmluLCBuZXdfcGtnLCBuZXdfcGtnYmluKTsKKworICAgIGlmIChkb25lcCkKKyAgICAgICpkb25lcCA9IGRiX3BrZzsKKyAgICBwZG9uZSsrOworICAgIGlmIChwYXJzZV9FT0YoJnBzKSkKKyAgICAgIGJyZWFrOworICB9CisKKyAgcGFyc2VfY2xvc2UoJnBzKTsKKworICB2YXJidWZfZGVzdHJveSgmZnMudmFsdWUpOworICBpZiAoZG9uZXAgJiYgIXBkb25lKSBvaHNoaXQoXygibm8gcGFja2FnZSBpbmZvcm1hdGlvbiBpbiBgJS4yNTVzJyIpLGZpbGVuYW1lKTsKKworICByZXR1cm4gcGRvbmU7Cit9CisKKy8qKgorICogQ29weSBkZXBlbmRlbmN5IGxpbmtzIHN0cnVjdHVyZXMuCisgKgorICogVGhpcyByb3V0aW5lIGlzIHVzZWQgdG8gdXBkYXRlIHRoZSDigJhyZXZlcnNl4oCZIGRlcGVuZGVuY3kgcG9pbnRlcnMgd2hlbgorICogbmV3IOKAmGZvcndhcmRz4oCZIGluZm9ybWF0aW9uIGhhcyBiZWVuIGNvbnN0cnVjdGVkLiBJdCBmaXJzdCByZW1vdmVzIGFsbAorICogdGhlIGxpbmtzIGJhc2VkIG9uIHRoZSBvbGQgaW5mb3JtYXRpb24uIFRoZSBvbGQgaW5mb3JtYXRpb24gc3RhcnRzIGluCisgKiAqdXBkYXRlbWU7IGFmdGVyIG11Y2ggYnJvdS1oYS1oYSB0aGUgcmV2ZXJzZSBzdHJ1Y3R1cmVzIGFyZSBjcmVhdGVkCisgKiBhbmQgKnVwZGF0ZW1lIGlzIHNldCB0byB0aGUgdmFsdWUgZnJvbSBuZXdkZXBlbmRzLgorICoKKyAqIEBwYXJhbSBwa2cgVGhlIHBhY2thZ2Ugd2UncmUgZG9pbmcgdGhpcyBmb3IuIFRoaXMgaXMgdXNlZCB0byBjb25zdHJ1Y3QKKyAqICAgICAgICBjb3JyZWN0IHVwbGlua3MuCisgKiBAcGFyYW0gdXBkYXRlbWUgVGhlIGZvcndhcmRzIGRlcGVuZGVuY3kgcG9pbnRlciB0aGF0IHdlIGFyZSB0byB1cGRhdGUuCisgKiAgICAgICAgVGhpcyBzdGFydHMgb3V0IGNvbnRhaW5pbmcgdGhlIG9sZCBmb3J3YXJkcyBpbmZvLCB3aGljaCB3ZSB1c2UgdG8KKyAqICAgICAgICB1bnRocmVhZCB0aGUgb2xkIHJldmVyc2UgbGlua3MuIEFmdGVyIHdlJ3JlIGRvbmUgaXQgaXMgdXBkYXRlZC4KKyAqIEBwYXJhbSBuZXdkZXBlbmRzIFRoZSB2YWx1ZSB0aGF0IHdlIHVsdGltYXRlbHkgd2FudCB0byBoYXZlIGluIHVwZGF0ZW1lLgorICogQHBhcmFtIGF2YWlsYWJsZSBUaGUgcGtnYmluIHRvIG1vZGlmeSwgYXZhaWxhYmxlIG9yIGluc3RhbGxlZC4KKyAqCisgKiBJdCBpcyBsaWtlbHkgdGhhdCB0aGUgYmFja3dhcmQgcG9pbnRlciBmb3IgdGhlIHBhY2thZ2UgaW4gcXVlc3Rpb24KKyAqICjigJhkZXBlbmRlZOKAmSkgd2lsbCBiZSB1cGRhdGVkIGJ5IHRoaXMgcm91dGluZSwgYnV0IHRoaXMgd2lsbCBoYXBwZW4gYnkKKyAqIHRoZSByb3V0aW5lIHRyYXZlcnNpbmcgdGhlIGRlcGVuZGVuY3kgZGF0YSBzdHJ1Y3R1cmVzLiBJdCBkb2Vzbid0IG5lZWQKKyAqIHRvIGJlIHRvbGQgd2hlcmUgdG8gdXBkYXRlIHRoYXQ7IEkganVzdCBtZW50aW9uIGl0IGFzIHNvbWV0aGluZyB0aGF0CisgKiBvbmUgc2hvdWxkIGJlIGNhdXRpb3VzIGFib3V0LgorICovCit2b2lkIGNvcHlfZGVwZW5kZW5jeV9saW5rcyhzdHJ1Y3QgcGtnaW5mbyAqcGtnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0IGRlcGVuZGVuY3kgKip1cGRhdGVtZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cnVjdCBkZXBlbmRlbmN5ICpuZXdkZXBlbmRzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbCBhdmFpbGFibGUpCit7CisgIHN0cnVjdCBkZXBlbmRlbmN5ICpkeXA7CisgIHN0cnVjdCBkZXBwb3NzaSAqZG9wOworICBzdHJ1Y3QgcGtnYmluICphZGR0b3BpZnA7CisKKyAgLyogRGVsZXRlIOKAmGJhY2t3YXJk4oCZICjigJhkZXBlbmRlZOKAmSkgbGlua3MgZnJvbSBvdGhlciBwYWNrYWdlcyB0bworICAgKiBkZXBlbmRlbmNpZXMgbGlzdGVkIGluIG9sZCB2ZXJzaW9uIG9mIHRoaXMgb25lLiBXZSBkbyB0aGlzIGJ5CisgICAqIGdvaW5nIHRocm91Z2ggYWxsIHRoZSBkZXBlbmRlbmNpZXMgaW4gdGhlIG9sZCB2ZXJzaW9uIG9mIHRoaXMKKyAgICogb25lIGFuZCBmb2xsb3dpbmcgdGhlbSBkb3duIHRvIGZpbmQgd2hpY2ggZGVwcG9zc2kgbm9kZXMgdG8KKyAgICogcmVtb3ZlLiAqLworICBmb3IgKGR5cD0gKnVwZGF0ZW1lOyBkeXA7IGR5cD0gZHlwLT5uZXh0KSB7CisgICAgZm9yIChkb3A9IGR5cC0+bGlzdDsgZG9wOyBkb3A9IGRvcC0+bmV4dCkgeworICAgICAgaWYgKGRvcC0+cmV2X3ByZXYpCisgICAgICAgIGRvcC0+cmV2X3ByZXYtPnJldl9uZXh0ID0gZG9wLT5yZXZfbmV4dDsKKyAgICAgIGVsc2UKKyAgICAgICAgaWYgKGF2YWlsYWJsZSkKKyAgICAgICAgICBkb3AtPmVkLT5hdmFpbGFibGUuZGVwZW5kZWQgPSBkb3AtPnJldl9uZXh0OworICAgICAgICBlbHNlCisgICAgICAgICAgZG9wLT5lZC0+aW5zdGFsbGVkLmRlcGVuZGVkID0gZG9wLT5yZXZfbmV4dDsKKyAgICAgIGlmIChkb3AtPnJldl9uZXh0KQorICAgICAgICBkb3AtPnJldl9uZXh0LT5yZXZfcHJldiA9IGRvcC0+cmV2X3ByZXY7CisgICAgfQorICB9CisKKyAgLyogTm93IGZpbGwgaW4gbmV3IOKAmGVk4oCZIGxpbmtzIGZyb20gb3RoZXIgcGFja2FnZXMgdG8gZGVwZW5kZW5jaWVzCisgICAqIGxpc3RlZCBpbiBuZXcgdmVyc2lvbiBvZiB0aGlzIG9uZSwgYW5kIHNldCBvdXIgdXBsaW5rcyBjb3JyZWN0bHkuICovCisgIGZvciAoZHlwPSBuZXdkZXBlbmRzOyBkeXA7IGR5cD0gZHlwLT5uZXh0KSB7CisgICAgZHlwLT51cD0gcGtnOworICAgIGZvciAoZG9wPSBkeXAtPmxpc3Q7IGRvcDsgZG9wPSBkb3AtPm5leHQpIHsKKyAgICAgIGFkZHRvcGlmcD0gYXZhaWxhYmxlID8gJmRvcC0+ZWQtPmF2YWlsYWJsZSA6ICZkb3AtPmVkLT5pbnN0YWxsZWQ7CisgICAgICBkb3AtPnJldl9uZXh0ID0gYWRkdG9waWZwLT5kZXBlbmRlZDsKKyAgICAgIGRvcC0+cmV2X3ByZXYgPSBOVUxMOworICAgICAgaWYgKGFkZHRvcGlmcC0+ZGVwZW5kZWQpCisgICAgICAgIGFkZHRvcGlmcC0+ZGVwZW5kZWQtPnJldl9wcmV2ID0gZG9wOworICAgICAgYWRkdG9waWZwLT5kZXBlbmRlZD0gZG9wOworICAgIH0KKyAgfQorCisgIC8qIEZpbmFsbHksIHdlIGZpbGwgaW4gdGhlIG5ldyB2YWx1ZS4gKi8KKyAgKnVwZGF0ZW1lPSBuZXdkZXBlbmRzOworfQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9wYXJzZWR1bXAuaCBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvcGFyc2VkdW1wLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNDU3MzVjMwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvcGFyc2VkdW1wLmgKQEAgLTAsMCArMSwxMTcgQEAKKy8qCisgKiBsaWJkcGtnIC0gRGViaWFuIHBhY2thZ2luZyBzdWl0ZSBsaWJyYXJ5IHJvdXRpbmVzCisgKiBwYXJzZWR1bXAuaCAtIGRlY2xhcmF0aW9ucyBmb3IgaW4tY29yZSBkYXRhYmFzZSByZWFkaW5nL3dyaXRpbmcKKyAqCisgKiBDb3B5cmlnaHQgwqkgMTk5NSBJYW4gSmFja3NvbiA8aWFuQGNoaWFyay5ncmVlbmVuZC5vcmcudWs+CisgKiBDb3B5cmlnaHQgwqkgMjAwMSBXaWNoZXJ0IEFra2VybWFuCisgKgorICogVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisgKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAqIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorICovCisKKyNpZm5kZWYgTElCRFBLR19QQVJTRURVTVBfSAorI2RlZmluZSBMSUJEUEtHX1BBUlNFRFVNUF9ICisKK3N0cnVjdCBmaWVsZGluZm87CisKK3N0cnVjdCBwYXJzZWRiX3N0YXRlIHsKKwllbnVtIHBhcnNlZGJmbGFncyBmbGFnczsKKwlzdHJ1Y3QgcGtnaW5mbyAqcGtnOworCXN0cnVjdCBwa2diaW4gKnBrZ2JpbjsKKwljaGFyICpkYXRhOworCWNoYXIgKmRhdGFwdHI7CisJY2hhciAqZW5kcHRyOworCWNvbnN0IGNoYXIgKmZpbGVuYW1lOworCWludCBsbm87Cit9OworCisjZGVmaW5lIHBhcnNlX0VPRihwcykJCSgocHMpLT5kYXRhcHRyID49IChwcyktPmVuZHB0cikKKyNkZWZpbmUgcGFyc2VfZ2V0YyhwcykJCSoocHMpLT5kYXRhcHRyKysKKyNkZWZpbmUgcGFyc2VfdW5nZXRjKGMsIHBzKQkocHMpLT5kYXRhcHRyLS0KKworc3RydWN0IGZpZWxkX3N0YXRlIHsKKwljb25zdCBjaGFyICpmaWVsZHN0YXJ0OworCWNvbnN0IGNoYXIgKnZhbHVlc3RhcnQ7CisJc3RydWN0IHZhcmJ1ZiB2YWx1ZTsKKwlpbnQgZmllbGRsZW47CisJaW50IHZhbHVlbGVuOworCWludCAqZmllbGRlbmNvdW50ZXJlZDsKK307CisKK3ZvaWQgcGFyc2Vfb3BlbihzdHJ1Y3QgcGFyc2VkYl9zdGF0ZSAqcHMsIGNvbnN0IGNoYXIgKmZpbGVuYW1lLAorICAgICAgICAgICAgICAgIGVudW0gcGFyc2VkYmZsYWdzIGZsYWdzKTsKK3ZvaWQgcGFyc2VfY2xvc2Uoc3RydWN0IHBhcnNlZGJfc3RhdGUgKnBzKTsKKwordHlwZWRlZiB2b2lkIHBhcnNlX2ZpZWxkX2Z1bmMoc3RydWN0IHBhcnNlZGJfc3RhdGUgKnBzLCBzdHJ1Y3QgZmllbGRfc3RhdGUgKmZzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdm9pZCAqcGFyc2Vfb2JqKTsKKworYm9vbCBwYXJzZV9zdGFuemEoc3RydWN0IHBhcnNlZGJfc3RhdGUgKnBzLCBzdHJ1Y3QgZmllbGRfc3RhdGUgKmZzLAorICAgICAgICAgICAgICAgICAgcGFyc2VfZmllbGRfZnVuYyAqcGFyc2VfZmllbGQsIHZvaWQgKnBhcnNlX29iaik7CisKKyNkZWZpbmUgUEtHSUZQT0ZGKGYpIChvZmZzZXRvZihzdHJ1Y3QgcGtnYmluLCBmKSkKKyNkZWZpbmUgUEtHUEZJRUxEKHBpZnAsb2YsdHlwZSkgKCoodHlwZSopKChjaGFyKikocGlmcCkrKG9mKSkpCisKKyNkZWZpbmUgRklMRUZPRkYoZikgKG9mZnNldG9mKHN0cnVjdCBmaWxlZGV0YWlscywgZikpCisjZGVmaW5lIEZJTEVGRklFTEQoZmlsZWRldGFpbCxvZix0eXBlKSAoKih0eXBlKikoKGNoYXIqKShmaWxlZGV0YWlsKSsob2YpKSkKKwordHlwZWRlZiB2b2lkIGZyZWFkZnVuY3Rpb24oc3RydWN0IHBrZ2luZm8gKnBpZ3AsIHN0cnVjdCBwa2diaW4gKnBpZnAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3QgcGFyc2VkYl9zdGF0ZSAqcHMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICp2YWx1ZSwgY29uc3Qgc3RydWN0IGZpZWxkaW5mbyAqZmlwKTsKK2ZyZWFkZnVuY3Rpb24gZl9uYW1lLCBmX2NoYXJmaWVsZCwgZl9wcmlvcml0eSwgZl9zZWN0aW9uLCBmX3N0YXR1cywgZl9maWxlY2hhcmY7CitmcmVhZGZ1bmN0aW9uIGZfYm9vbGVhbiwgZl9kZXBlbmRlbmN5LCBmX2NvbmZmaWxlcywgZl92ZXJzaW9uLCBmX3JldmlzaW9uOworZnJlYWRmdW5jdGlvbiBmX2NvbmZpZ3ZlcnNpb247CitmcmVhZGZ1bmN0aW9uIGZfdHJpZ3BlbmQsIGZfdHJpZ2F3OworCitlbnVtIGZ3cml0ZWZsYWdzIHsKKwkvKiBQcmludCBmaWVsZCBoZWFkZXIgYW5kIHRyYWlsaW5nIG5ld2xpbmUuICovCisJZndfcHJpbnRoZWFkZXIgPSAwMDEsCit9OworCit0eXBlZGVmIHZvaWQgZndyaXRlZnVuY3Rpb24oc3RydWN0IHZhcmJ1ZiosCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RydWN0IHBrZ2luZm8gKiwgY29uc3Qgc3RydWN0IHBrZ2JpbiAqLAorCQkJICAgIGVudW0gZndyaXRlZmxhZ3MgZmxhZ3MsIGNvbnN0IHN0cnVjdCBmaWVsZGluZm8qKTsKK2Z3cml0ZWZ1bmN0aW9uIHdfbmFtZSwgd19jaGFyZmllbGQsIHdfcHJpb3JpdHksIHdfc2VjdGlvbiwgd19zdGF0dXMsIHdfY29uZmlndmVyc2lvbjsKK2Z3cml0ZWZ1bmN0aW9uIHdfdmVyc2lvbiwgd19udWxsLCB3X2Jvb2xlYW5kZWZubywgd19kZXBlbmRlbmN5LCB3X2NvbmZmaWxlczsKK2Z3cml0ZWZ1bmN0aW9uIHdfZmlsZWNoYXJmOworZndyaXRlZnVuY3Rpb24gd190cmlncGVuZCwgd190cmlnYXc7CisKK3N0cnVjdCBmaWVsZGluZm8geworICBjb25zdCBjaGFyICpuYW1lOworICBmcmVhZGZ1bmN0aW9uICpyY2FsbDsKKyAgZndyaXRlZnVuY3Rpb24gKndjYWxsOworICBzaXplX3QgaW50ZWdlcjsKK307CisKK3ZvaWQgcGFyc2VfZGJfdmVyc2lvbihzdHJ1Y3QgcGFyc2VkYl9zdGF0ZSAqcHMsCisgICAgICAgICAgICAgICAgICAgICAgc3RydWN0IHZlcnNpb25yZXZpc2lvbiAqdmVyc2lvbiwgY29uc3QgY2hhciAqdmFsdWUsCisgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZm10LCAuLi4pIERQS0dfQVRUUl9QUklOVEYoNCk7CisKK3ZvaWQgcGFyc2VfZXJyb3Ioc3RydWN0IHBhcnNlZGJfc3RhdGUgKnBzLCBjb25zdCBjaGFyICpmbXQsIC4uLikKKwlEUEtHX0FUVFJfTk9SRVQgRFBLR19BVFRSX1BSSU5URigyKTsKK3ZvaWQgcGFyc2Vfd2FybihzdHJ1Y3QgcGFyc2VkYl9zdGF0ZSAqcHMsIGNvbnN0IGNoYXIgKmZtdCwgLi4uKQorCURQS0dfQVRUUl9QUklOVEYoMik7Cit2b2lkIHBhcnNlX211c3RfaGF2ZV9maWVsZChzdHJ1Y3QgcGFyc2VkYl9zdGF0ZSAqcHMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICp2YWx1ZSwgY29uc3QgY2hhciAqd2hhdCk7Cit2b2lkIHBhcnNlX2Vuc3VyZV9oYXZlX2ZpZWxkKHN0cnVjdCBwYXJzZWRiX3N0YXRlICpwcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqKnZhbHVlLCBjb25zdCBjaGFyICp3aGF0KTsKKworI2RlZmluZSBNU0RPU19FT0ZfQ0hBUiAnXDAzMicgLyogXlogKi8KKworc3RydWN0IG5pY2tuYW1lIHsKKyAgY29uc3QgY2hhciAqbmljazsKKyAgY29uc3QgY2hhciAqY2Fub247Cit9OworCitleHRlcm4gY29uc3Qgc3RydWN0IGZpZWxkaW5mbyBmaWVsZGluZm9zW107CisKKyNlbmRpZiAvKiBMSUJEUEtHX1BBUlNFRFVNUF9IICovCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL3BhcnNlaGVscC5jIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9wYXJzZWhlbHAuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43YTJjZmE0Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9wYXJzZWhlbHAuYwpAQCAtMCwwICsxLDMxNiBAQAorLyoKKyAqIGxpYmRwa2cgLSBEZWJpYW4gcGFja2FnaW5nIHN1aXRlIGxpYnJhcnkgcm91dGluZXMKKyAqIHBhcnNlaGVscC5jIC0gaGVscGZ1bCByb3V0aW5lcyBmb3IgcGFyc2luZyBhbmQgd3JpdGluZworICoKKyAqIENvcHlyaWdodCDCqSAxOTk1IElhbiBKYWNrc29uIDxpYW5AY2hpYXJrLmdyZWVuZW5kLm9yZy51az4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworI2luY2x1ZGUgPGNvbmZpZy5oPgorI2luY2x1ZGUgPGNvbXBhdC5oPgorCisjaW5jbHVkZSA8Y3R5cGUuaD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlIDxzdGRpby5oPgorCisjaW5jbHVkZSA8ZHBrZy9pMThuLmg+CisjaW5jbHVkZSA8ZHBrZy9kcGtnLmg+CisjaW5jbHVkZSA8ZHBrZy9kcGtnLWRiLmg+CisjaW5jbHVkZSA8ZHBrZy9zdHJpbmcuaD4KKyNpbmNsdWRlIDxkcGtnL2Vycm9yLmg+CisjaW5jbHVkZSA8ZHBrZy9wYXJzZWR1bXAuaD4KKworc3RhdGljIGNvbnN0IGNoYXIgKgorcGFyc2VfZXJyb3JfbXNnKHN0cnVjdCBwYXJzZWRiX3N0YXRlICpwcywgY29uc3QgY2hhciAqZm10KQoreworICBzdGF0aWMgY2hhciBtc2dbMTAyNF07CisgIGNoYXIgZmlsZW5hbWVbMjU2XTsKKworICBzdHJfZXNjYXBlX2ZtdChmaWxlbmFtZSwgcHMtPmZpbGVuYW1lLCBzaXplb2YoZmlsZW5hbWUpKTsKKworICBpZiAocHMtPnBrZyAmJiBwcy0+cGtnLT5uYW1lKQorICAgIHNwcmludGYobXNnLCBfKCJwYXJzaW5nIGZpbGUgJyUuMjU1cycgbmVhciBsaW5lICVkIHBhY2thZ2UgJyUuMjU1cyc6XG4iCisgICAgICAgICAgICAgICAgICAgIiAlLjI1NXMiKSwgZmlsZW5hbWUsIHBzLT5sbm8sIHBzLT5wa2ctPm5hbWUsIGZtdCk7CisgIGVsc2UKKyAgICBzcHJpbnRmKG1zZywgXygicGFyc2luZyBmaWxlICclLjI1NXMnIG5lYXIgbGluZSAlZDpcbiIKKyAgICAgICAgICAgICAgICAgICAiICUuMjU1cyIpLCBmaWxlbmFtZSwgcHMtPmxubywgZm10KTsKKworICByZXR1cm4gbXNnOworfQorCit2b2lkCitwYXJzZV9lcnJvcihzdHJ1Y3QgcGFyc2VkYl9zdGF0ZSAqcHMsIGNvbnN0IGNoYXIgKmZtdCwgLi4uKQoreworICB2YV9saXN0IGFyZ3M7CisKKyAgdmFfc3RhcnQoYXJncywgZm10KTsKKyAgb2hzaGl0dihwYXJzZV9lcnJvcl9tc2cocHMsIGZtdCksIGFyZ3MpOworfQorCit2b2lkCitwYXJzZV93YXJuKHN0cnVjdCBwYXJzZWRiX3N0YXRlICpwcywgY29uc3QgY2hhciAqZm10LCAuLi4pCit7CisgIHZhX2xpc3QgYXJnczsKKworICB2YV9zdGFydChhcmdzLCBmbXQpOworICB3YXJuaW5ndihwYXJzZV9lcnJvcl9tc2cocHMsIGZtdCksIGFyZ3MpOworICB2YV9lbmQoYXJncyk7Cit9CisKK2NvbnN0IHN0cnVjdCBuYW1ldmFsdWUgYm9vbGVhbmluZm9zW10gPSB7CisgIE5BTUVWQUxVRV9ERUYoIm5vIiwgIGZhbHNlKSwKKyAgTkFNRVZBTFVFX0RFRigieWVzIiwgdHJ1ZSksCisgIHsgLm5hbWUgPSBOVUxMIH0KK307CisKK2NvbnN0IHN0cnVjdCBuYW1ldmFsdWUgcHJpb3JpdHlpbmZvc1tdID0geworICBOQU1FVkFMVUVfREVGKCJyZXF1aXJlZCIsICAgICAgICAgICAgICAgICAgICAgIHByaV9yZXF1aXJlZCksCisgIE5BTUVWQUxVRV9ERUYoImltcG9ydGFudCIsICAgICAgICAgICAgICAgICAgICAgcHJpX2ltcG9ydGFudCksCisgIE5BTUVWQUxVRV9ERUYoInN0YW5kYXJkIiwgICAgICAgICAgICAgICAgICAgICAgcHJpX3N0YW5kYXJkKSwKKyAgTkFNRVZBTFVFX0RFRigib3B0aW9uYWwiLCAgICAgICAgICAgICAgICAgICAgICBwcmlfb3B0aW9uYWwpLAorICBOQU1FVkFMVUVfREVGKCJleHRyYSIsICAgICAgICAgICAgICAgICAgICAgICAgIHByaV9leHRyYSksCisgIE5BTUVWQUxVRV9GQUxMQkFDS19ERUYoInRoaXMgaXMgYSBidWcgLSBwbGVhc2UgcmVwb3J0IiwgcHJpX290aGVyKSwKKyAgTkFNRVZBTFVFX0RFRigidW5rbm93biIsICAgICAgICAgICAgICAgICAgICAgICBwcmlfdW5rbm93biksCisgIHsgLm5hbWUgPSBOVUxMIH0KK307CisKK2NvbnN0IHN0cnVjdCBuYW1ldmFsdWUgc3RhdHVzaW5mb3NbXSA9IHsKKyAgTkFNRVZBTFVFX0RFRigibm90LWluc3RhbGxlZCIsICAgIHN0YXRfbm90aW5zdGFsbGVkKSwKKyAgTkFNRVZBTFVFX0RFRigiY29uZmlnLWZpbGVzIiwgICAgIHN0YXRfY29uZmlnZmlsZXMpLAorICBOQU1FVkFMVUVfREVGKCJoYWxmLWluc3RhbGxlZCIsICAgc3RhdF9oYWxmaW5zdGFsbGVkKSwKKyAgTkFNRVZBTFVFX0RFRigidW5wYWNrZWQiLCAgICAgICAgIHN0YXRfdW5wYWNrZWQpLAorICBOQU1FVkFMVUVfREVGKCJoYWxmLWNvbmZpZ3VyZWQiLCAgc3RhdF9oYWxmY29uZmlndXJlZCksCisgIE5BTUVWQUxVRV9ERUYoInRyaWdnZXJzLWF3YWl0ZWQiLCBzdGF0X3RyaWdnZXJzYXdhaXRlZCksCisgIE5BTUVWQUxVRV9ERUYoInRyaWdnZXJzLXBlbmRpbmciLCBzdGF0X3RyaWdnZXJzcGVuZGluZyksCisgIE5BTUVWQUxVRV9ERUYoImluc3RhbGxlZCIsICAgICAgICBzdGF0X2luc3RhbGxlZCksCisgIHsgLm5hbWUgPSBOVUxMIH0KK307CisKK2NvbnN0IHN0cnVjdCBuYW1ldmFsdWUgZWZsYWdpbmZvc1tdID0geworICBOQU1FVkFMVUVfREVGKCJvayIsICAgICAgICBlZmxhZ19vayksCisgIE5BTUVWQUxVRV9ERUYoInJlaW5zdHJlcSIsIGVmbGFnX3JlaW5zdHJlcSksCisgIHsgLm5hbWUgPSBOVUxMIH0KK307CisKK2NvbnN0IHN0cnVjdCBuYW1ldmFsdWUgd2FudGluZm9zW10gPSB7CisgIE5BTUVWQUxVRV9ERUYoInVua25vd24iLCAgIHdhbnRfdW5rbm93biksCisgIE5BTUVWQUxVRV9ERUYoImluc3RhbGwiLCAgIHdhbnRfaW5zdGFsbCksCisgIE5BTUVWQUxVRV9ERUYoImhvbGQiLCAgICAgIHdhbnRfaG9sZCksCisgIE5BTUVWQUxVRV9ERUYoImRlaW5zdGFsbCIsIHdhbnRfZGVpbnN0YWxsKSwKKyAgTkFNRVZBTFVFX0RFRigicHVyZ2UiLCAgICAgd2FudF9wdXJnZSksCisgIHsgLm5hbWUgPSBOVUxMIH0KK307CisKK2NvbnN0IGNoYXIgKgorcGtnX25hbWVfaXNfaWxsZWdhbChjb25zdCBjaGFyICpwLCBjb25zdCBjaGFyICoqZXApCit7CisgIC8qIEZJWE1FOiBfIGlzIGRlcHJlY2F0ZWQsIHJlbW92ZSBzb21ldGltZS4gKi8KKyAgc3RhdGljIGNvbnN0IGNoYXIgYWxzb2FsbG93ZWRbXSA9ICItKy5fIjsKKyAgc3RhdGljIGNoYXIgYnVmWzE1MF07CisgIGludCBjOworCisgIGlmICghKnApIHJldHVybiBfKCJtYXkgbm90IGJlIGVtcHR5IHN0cmluZyIpOworICBpZiAoIWlzYWxudW0oKnApKQorICAgIHJldHVybiBfKCJtdXN0IHN0YXJ0IHdpdGggYW4gYWxwaGFudW1lcmljIGNoYXJhY3RlciIpOworICB3aGlsZSAoKGMgPSAqcCsrKSAhPSAnXDAnKQorICAgIGlmICghaXNhbG51bShjKSAmJiAhc3RyY2hyKGFsc29hbGxvd2VkLGMpKSBicmVhazsKKyAgaWYgKCFjKSByZXR1cm4gTlVMTDsKKyAgaWYgKGlzc3BhY2UoYykgJiYgZXApIHsKKyAgICB3aGlsZSAoaXNzcGFjZSgqcCkpIHArKzsKKyAgICAqZXA9IHA7IHJldHVybiBOVUxMOworICB9CisgIHNucHJpbnRmKGJ1Ziwgc2l6ZW9mKGJ1ZiksIF8oCisJICAgImNoYXJhY3RlciBgJWMnIG5vdCBhbGxvd2VkIChvbmx5IGxldHRlcnMsIGRpZ2l0cyBhbmQgY2hhcmFjdGVycyBgJXMnKSIpLAorCSAgIGMsIGFsc29hbGxvd2VkKTsKKyAgcmV0dXJuIGJ1ZjsKK30KKwordm9pZCB2YXJidWZ2ZXJzaW9uCisoc3RydWN0IHZhcmJ1ZiAqdmIsCisgY29uc3Qgc3RydWN0IHZlcnNpb25yZXZpc2lvbiAqdmVyc2lvbiwKKyBlbnVtIHZlcnNpb25kaXNwbGF5ZXBvY2h3aGVuIHZkZXcpCit7CisgIHN3aXRjaCAodmRldykgeworICBjYXNlIHZkZXdfbmV2ZXI6CisgICAgYnJlYWs7CisgIGNhc2UgdmRld19ub25hbWJpZzoKKyAgICBpZiAoIXZlcnNpb24tPmVwb2NoICYmCisgICAgICAgICghdmVyc2lvbi0+dmVyc2lvbiB8fCAhc3RyY2hyKHZlcnNpb24tPnZlcnNpb24sJzonKSkgJiYKKyAgICAgICAgKCF2ZXJzaW9uLT5yZXZpc2lvbiB8fCAhc3RyY2hyKHZlcnNpb24tPnJldmlzaW9uLCc6JykpKSBicmVhazsKKyAgICAvKiBGYWxsIHRocm91Z2guICovCisgIGNhc2UgdmRld19hbHdheXM6CisgICAgdmFyYnVmX3ByaW50Zih2YiwgIiVsdToiLCB2ZXJzaW9uLT5lcG9jaCk7CisgICAgYnJlYWs7CisgIGRlZmF1bHQ6CisgICAgaW50ZXJuZXJyKCJ1bmtub3duIHZlcnNpb25kaXNwbGF5ZXBvY2h3aGVuICclZCciLCB2ZGV3KTsKKyAgfQorICBpZiAodmVyc2lvbi0+dmVyc2lvbikKKyAgICB2YXJidWZfYWRkX3N0cih2YiwgdmVyc2lvbi0+dmVyc2lvbik7CisgIGlmICh2ZXJzaW9uLT5yZXZpc2lvbiAmJiAqdmVyc2lvbi0+cmV2aXNpb24pIHsKKyAgICB2YXJidWZfYWRkX2NoYXIodmIsICctJyk7CisgICAgdmFyYnVmX2FkZF9zdHIodmIsIHZlcnNpb24tPnJldmlzaW9uKTsKKyAgfQorfQorCitjb25zdCBjaGFyICp2ZXJzaW9uZGVzY3JpYmUKKyhjb25zdCBzdHJ1Y3QgdmVyc2lvbnJldmlzaW9uICp2ZXJzaW9uLAorIGVudW0gdmVyc2lvbmRpc3BsYXllcG9jaHdoZW4gdmRldykKK3sKKyAgc3RhdGljIHN0cnVjdCB2YXJidWYgYnVmc1sxMF07CisgIHN0YXRpYyBpbnQgYnVmbnVtPTA7CisKKyAgc3RydWN0IHZhcmJ1ZiAqdmI7CisKKyAgaWYgKCFpbmZvcm1hdGl2ZXZlcnNpb24odmVyc2lvbikpCisgICAgcmV0dXJuIENfKCJ2ZXJzaW9uIiwgIjxub25lPiIpOworCisgIHZiPSAmYnVmc1tidWZudW1dOyBidWZudW0rKzsgaWYgKGJ1Zm51bSA9PSAxMCkgYnVmbnVtPSAwOworICB2YXJidWZfcmVzZXQodmIpOworICB2YXJidWZ2ZXJzaW9uKHZiLHZlcnNpb24sdmRldyk7CisgIHZhcmJ1Zl9lbmRfc3RyKHZiKTsKKworICByZXR1cm4gdmItPmJ1ZjsKK30KKworLyoqCisgKiBQYXJzZSBhIHZlcnNpb24gc3RyaW5nIGFuZCBjaGVjayBmb3IgaW52YWxpZCBzeW50YXguCisgKgorICogRGlzdGluZ3Vpc2ggYmV0d2VlbiBsYXggKHdhcm5pbmdzKSBhbmQgc3RyaWN0IChlcnJvcikgcGFyc2luZy4KKyAqCisgKiBAcGFyYW0gcnZlcnNpb24gVGhlIHBhcnNlZCB2ZXJzaW9uLgorICogQHBhcmFtIHN0cmluZyBUaGUgdmVyc2lvbiBzdHJpbmcgdG8gcGFyc2UuCisgKiBAcGFyYW0gZXJyIFRoZSB3YXJuaW5nIG9yIGVycm9yIG1lc3NhZ2UgaWYgYW55LgorICoKKyAqIEByZXR2YWwgIDAgT24gc3VjY2Vzcy4KKyAqIEByZXR2YWwgLTEgT24gZmFpbHVyZSwgYW5kIGVyciBpcyBzZXQgYWNjb3JkaW5nbHkuCisgKi8KK2ludAorcGFyc2V2ZXJzaW9uKHN0cnVjdCB2ZXJzaW9ucmV2aXNpb24gKnJ2ZXJzaW9uLCBjb25zdCBjaGFyICpzdHJpbmcsCisgICAgICAgICAgICAgc3RydWN0IGRwa2dfZXJyb3IgKmVycikKK3sKKyAgY2hhciAqaHlwaGVuLCAqY29sb24sICplZXBvY2hjb2xvbjsKKyAgY29uc3QgY2hhciAqZW5kLCAqcHRyOworICB1bnNpZ25lZCBsb25nIGVwb2NoOworCisgIGlmICghKnN0cmluZykKKyAgICByZXR1cm4gZHBrZ19wdXRfZXJyb3IoZXJyLCBfKCJ2ZXJzaW9uIHN0cmluZyBpcyBlbXB0eSIpKTsKKworICAvKiBUcmltIGxlYWRpbmcgYW5kIHRyYWlsaW5nIHNwYWNlLiAqLworICB3aGlsZSAoKnN0cmluZyAmJiBpc2JsYW5rKCpzdHJpbmcpKQorICAgIHN0cmluZysrOworICAvKiBTdHJpbmcgbm93IHBvaW50cyB0byB0aGUgZmlyc3Qgbm9uLXdoaXRlc3BhY2UgY2hhci4gKi8KKyAgZW5kID0gc3RyaW5nOworICAvKiBGaW5kIGVpdGhlciB0aGUgZW5kIG9mIHRoZSBzdHJpbmcsIG9yIGEgd2hpdGVzcGFjZSBjaGFyLiAqLworICB3aGlsZSAoKmVuZCAmJiAhaXNibGFuaygqZW5kKSkKKyAgICBlbmQrKzsKKyAgLyogQ2hlY2sgZm9yIGV4dHJhIGNoYXJzIGFmdGVyIHRyYWlsaW5nIHNwYWNlLiAqLworICBwdHIgPSBlbmQ7CisgIHdoaWxlICgqcHRyICYmIGlzYmxhbmsoKnB0cikpCisgICAgcHRyKys7CisgIGlmICgqcHRyKQorICAgIHJldHVybiBkcGtnX3B1dF9lcnJvcihlcnIsIF8oInZlcnNpb24gc3RyaW5nIGhhcyBlbWJlZGRlZCBzcGFjZXMiKSk7CisKKyAgY29sb249IHN0cmNocihzdHJpbmcsJzonKTsKKyAgaWYgKGNvbG9uKSB7CisgICAgZXBvY2g9IHN0cnRvdWwoc3RyaW5nLCZlZXBvY2hjb2xvbiwxMCk7CisgICAgaWYgKGNvbG9uICE9IGVlcG9jaGNvbG9uKQorICAgICAgcmV0dXJuIGRwa2dfcHV0X2Vycm9yKGVyciwgXygiZXBvY2ggaW4gdmVyc2lvbiBpcyBub3QgbnVtYmVyIikpOworICAgIGlmICghKisrY29sb24pCisgICAgICByZXR1cm4gZHBrZ19wdXRfZXJyb3IoZXJyLCBfKCJub3RoaW5nIGFmdGVyIGNvbG9uIGluIHZlcnNpb24gbnVtYmVyIikpOworICAgIHN0cmluZz0gY29sb247CisgICAgcnZlcnNpb24tPmVwb2NoPSBlcG9jaDsKKyAgfSBlbHNlIHsKKyAgICBydmVyc2lvbi0+ZXBvY2g9IDA7CisgIH0KKyAgcnZlcnNpb24tPnZlcnNpb249IG5mc3RybnNhdmUoc3RyaW5nLGVuZC1zdHJpbmcpOworICBoeXBoZW49IHN0cnJjaHIocnZlcnNpb24tPnZlcnNpb24sJy0nKTsKKyAgaWYgKGh5cGhlbikKKyAgICAqaHlwaGVuKysgPSAnXDAnOworICBydmVyc2lvbi0+cmV2aXNpb249IGh5cGhlbiA/IGh5cGhlbiA6ICIiOworCisgIC8qIFhYWDogV291bGQgYmUgZmFzdGVyIHRvIHVzZSBzb21ldGhpbmcgbGlrZSBjaXN2ZXJzaW9uIGFuZCBjaXNyZXZpc2lvbi4gKi8KKyAgcHRyID0gcnZlcnNpb24tPnZlcnNpb247CisgIGlmICgqcHRyICYmICFjaXNkaWdpdCgqcHRyKyspKQorICAgIHJldHVybiBkcGtnX3B1dF93YXJuKGVyciwgXygidmVyc2lvbiBudW1iZXIgZG9lcyBub3Qgc3RhcnQgd2l0aCBkaWdpdCIpKTsKKyAgZm9yICg7ICpwdHI7IHB0cisrKSB7CisgICAgaWYgKCFjaXNkaWdpdCgqcHRyKSAmJiAhY2lzYWxwaGEoKnB0cikgJiYgc3RyY2hyKCIuLSt+OiIsICpwdHIpID09IE5VTEwpCisgICAgICByZXR1cm4gZHBrZ19wdXRfd2FybihlcnIsIF8oImludmFsaWQgY2hhcmFjdGVyIGluIHZlcnNpb24gbnVtYmVyIikpOworICB9CisgIGZvciAocHRyID0gcnZlcnNpb24tPnJldmlzaW9uOyAqcHRyOyBwdHIrKykgeworICAgIGlmICghY2lzZGlnaXQoKnB0cikgJiYgIWNpc2FscGhhKCpwdHIpICYmIHN0cmNocigiLit+IiwgKnB0cikgPT0gTlVMTCkKKyAgICAgIHJldHVybiBkcGtnX3B1dF93YXJuKGVyciwgXygiaW52YWxpZCBjaGFyYWN0ZXIgaW4gcmV2aXNpb24gbnVtYmVyIikpOworICB9CisKKyAgcmV0dXJuIDA7Cit9CisKKy8qKgorICogUGFyc2UgYSB2ZXJzaW9uIHN0cmluZyBjb21pbmcgZnJvbSBhIGRhdGFiYXNlIGZpbGUuCisgKgorICogSXQgcGFyc2VzIGEgdmVyc2lvbiBzdHJpbmcsIGFuZCBwcmludHMgYSB3YXJuaW5nIG9yIGFuIGVycm9yIGRlcGVuZGluZworICogb24gdGhlIHBhcnNlIG9wdGlvbnMuCisgKgorICogQHBhcmFtIHBzIFRoZSBwYXJzZWRiIHN0YXRlLgorICogQHBhcmFtIHZlcnNpb24gVGhlIHZlcnNpb24gdG8gcGFyc2UgaW50by4KKyAqIEBwYXJhbSB2YWx1ZSBUaGUgdmVyc2lvbiBzdHJpbmcgdG8gcGFyc2UgZnJvbS4KKyAqIEBwYXJhbSBmbXQgVGhlIGVycm9yIGZvcm1hdCBzdHJpbmcuCisgKi8KK3ZvaWQKK3BhcnNlX2RiX3ZlcnNpb24oc3RydWN0IHBhcnNlZGJfc3RhdGUgKnBzLCBzdHJ1Y3QgdmVyc2lvbnJldmlzaW9uICp2ZXJzaW9uLAorICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICp2YWx1ZSwgY29uc3QgY2hhciAqZm10LCAuLi4pCit7CisgIHN0cnVjdCBkcGtnX2Vycm9yIGVycjsKKyAgdmFfbGlzdCBhcmdzOworICBjaGFyIGJ1ZlsxMDAwXTsKKworICBpZiAocGFyc2V2ZXJzaW9uKHZlcnNpb24sIHZhbHVlLCAmZXJyKSA9PSAwKQorICAgIHJldHVybjsKKworICB2YV9zdGFydChhcmdzLCBmbXQpOworICB2c25wcmludGYoYnVmLCBzaXplb2YoYnVmKSwgZm10LCBhcmdzKTsKKyAgdmFfZW5kKGFyZ3MpOworCisgIGlmIChlcnIudHlwZSA9PSBEUEtHX01TR19XQVJOICYmIChwcy0+ZmxhZ3MgJiBwZGJfbGF4X3BhcnNlcikpCisgICAgcGFyc2Vfd2FybihwcywgIiVzOiAlLjI1MHMiLCBidWYsIGVyci5zdHIpOworICBlbHNlCisgICAgcGFyc2VfZXJyb3IocHMsICIlczogJS4yNTBzIiwgYnVmLCBlcnIuc3RyKTsKKworICBkcGtnX2Vycm9yX2Rlc3Ryb3koJmVycik7Cit9CisKK3ZvaWQKK3BhcnNlX211c3RfaGF2ZV9maWVsZChzdHJ1Y3QgcGFyc2VkYl9zdGF0ZSAqcHMsCisgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqdmFsdWUsIGNvbnN0IGNoYXIgKndoYXQpCit7CisgIGlmICghdmFsdWUpCisgICAgcGFyc2VfZXJyb3IocHMsIF8oIm1pc3NpbmcgJXMiKSwgd2hhdCk7CisgIGVsc2UgaWYgKCEqdmFsdWUpCisgICAgcGFyc2VfZXJyb3IocHMsIF8oImVtcHR5IHZhbHVlIGZvciAlcyIpLCB3aGF0KTsKK30KKwordm9pZAorcGFyc2VfZW5zdXJlX2hhdmVfZmllbGQoc3RydWN0IHBhcnNlZGJfc3RhdGUgKnBzLAorICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqKnZhbHVlLCBjb25zdCBjaGFyICp3aGF0KQoreworICBzdGF0aWMgY29uc3QgY2hhciBlbXB0eVtdID0gIiI7CisKKyAgaWYgKCEqdmFsdWUpIHsKKyAgICBwYXJzZV93YXJuKHBzLCBfKCJtaXNzaW5nICVzIiksIHdoYXQpOworICAgICp2YWx1ZSA9IGVtcHR5OworICB9IGVsc2UgaWYgKCEqKnZhbHVlKSB7CisgICAgcGFyc2Vfd2FybihwcywgXygiZW1wdHkgdmFsdWUgZm9yICVzIiksIHdoYXQpOworICB9Cit9CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL3BhdGguYyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvcGF0aC5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjg0YjE1MmQKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL3BhdGguYwpAQCAtMCwwICsxLDE3NiBAQAorLyoKKyAqIGxpYmRwa2cgLSBEZWJpYW4gcGFja2FnaW5nIHN1aXRlIGxpYnJhcnkgcm91dGluZXMKKyAqIHBhdGguYyAtIHBhdGggaGFuZGxpbmcgZnVuY3Rpb25zCisgKgorICogQ29weXJpZ2h0IMKpIDE5OTUgSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuZ3JlZW5lbmQub3JnLnVrPgorICogQ29weXJpZ2h0IMKpIDIwMDgtMjAxMSBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CisgKgorICogVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisgKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAqIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorICovCisKKyNpbmNsdWRlIDxjb25maWcuaD4KKyNpbmNsdWRlIDxjb21wYXQuaD4KKworI2luY2x1ZGUgPHN0ZGxpYi5oPgorI2luY2x1ZGUgPHN0cmluZy5oPgorI2luY2x1ZGUgPHN0ZGlvLmg+CisKKyNpbmNsdWRlIDxkcGtnL2Rwa2cuaD4KKyNpbmNsdWRlIDxkcGtnL3BhdGguaD4KKworLyoqCisgKiBUcmltIOKAmC/igJkgYW5kIOKAmC8u4oCZIGZyb20gdGhlIGVuZCBvZiBhIHBhdGhuYW1lLgorICoKKyAqIFRoZSBnaXZlbiBzdHJpbmcgd2lsbCBnZXQgTlVMLXRlcm1pbmF0ZC4KKyAqCisgKiBAcGFyYW0gcGF0aCBUaGUgcGF0aG5hbWUgdG8gdHJpbS4KKyAqCisgKiBAcmV0dXJuIFRoZSBzaXplIG9mIHRoZSB0cmltbWVkIHBhdGhuYW1lLgorICovCitzaXplX3QKK3BhdGhfdHJpbV9zbGFzaF9zbGFzaGRvdChjaGFyICpwYXRoKQoreworCWNoYXIgKmVuZDsKKworCWlmICghcGF0aCB8fCAhKnBhdGgpCisJCXJldHVybiAwOworCisJZm9yIChlbmQgPSBwYXRoICsgc3RybGVuKHBhdGgpIC0gMTsgZW5kIC0gcGF0aCA+PSAxOyBlbmQtLSkgeworCQlpZiAoKmVuZCA9PSAnLycgfHwgKCooZW5kIC0gMSkgPT0gJy8nICYmICplbmQgPT0gJy4nKSkKKwkJCSplbmQgPSAnXDAnOworCQllbHNlCisJCQlicmVhazsKKwl9CisKKwlyZXR1cm4gZW5kIC0gcGF0aCArIDE7Cit9CisKKy8qKgorICogU2tpcCDigJgv4oCZIGFuZCDigJguL+KAmSBmcm9tIHRoZSBiZWdpbm5pbmcgb2YgYSBwYXRobmFtZS4KKyAqCisgKiBAcGFyYW0gcGF0aCBUaGUgcGF0aG5hbWUgdG8gc2tpcC4KKyAqCisgKiBAcmV0dXJuIFRoZSBuZXcgYmVnaW5uaW5nIG9mIHRoZSBwYXRobmFtZS4KKyAqLworY29uc3QgY2hhciAqCitwYXRoX3NraXBfc2xhc2hfZG90c2xhc2goY29uc3QgY2hhciAqcGF0aCkKK3sKKwl3aGlsZSAocGF0aFswXSA9PSAnLycgfHwgKHBhdGhbMF0gPT0gJy4nICYmIHBhdGhbMV0gPT0gJy8nKSkKKwkJcGF0aCsrOworCisJcmV0dXJuIHBhdGg7Cit9CisKKy8qKgorICogUmV0dXJuIHRoZSBsYXN0IGNvbXBvbmVudCBvZiBhIHBhdGhuYW1lLgorICoKKyAqIEBwYXJhbSBwYXRoIFRoZSBwYXRobmFtZSB0byBnZXQgdGhlIGJhc2UgbmFtZSBmcm9tLgorICoKKyAqIEByZXR1cm4gQSBwb2ludGVyIHRvIHRoZSBsYXN0IGNvbXBvbmVudCBpbnNpZGUgcGF0aG5hbWUuCisgKi8KK2NvbnN0IGNoYXIgKgorcGF0aF9iYXNlbmFtZShjb25zdCBjaGFyICpwYXRoKQoreworCWNvbnN0IGNoYXIgKmxhc3Rfc2xhc2g7CisKKwlsYXN0X3NsYXNoID0gc3RycmNocihwYXRoLCAnLycpOworCWlmIChsYXN0X3NsYXNoID09IE5VTEwpCisJCXJldHVybiBwYXRoOworCWVsc2UKKwkJcmV0dXJuIGxhc3Rfc2xhc2ggKyAxOworfQorCisvKioKKyAqIENyZWF0ZSBhIHRlbXBsYXRlIGZvciBhIHRlbXBvcmFyeSBwYXRobmFtZS4KKyAqCisgKiBAcGFyYW0gc3VmZml4IFRoZSBzdWZmaXggdG8gdXNlIGZvciB0aGUgdGVtcGxhdGUgc3RyaW5nLgorICoKKyAqIEByZXR1cm4gQW4gYWxsb2NhdGVkIHN0cmluZyB3aXRoIHRoZSBjcmVhdGVkIHRlbXBsYXRlLgorICovCitjaGFyICoKK3BhdGhfbWFrZV90ZW1wX3RlbXBsYXRlKGNvbnN0IGNoYXIgKnN1ZmZpeCkKK3sKKwljb25zdCBjaGFyICp0bXBkaXI7CisJY2hhciAqdGVtcGxhdGU7CisKKwl0bXBkaXIgPSBnZXRlbnYoIlRNUERJUiIpOworI2lmZGVmIFBfdG1wZGlyCisJaWYgKCF0bXBkaXIpCisJCXRtcGRpciA9IFBfdG1wZGlyOworI2VuZGlmCisJaWYgKCF0bXBkaXIpCisJCXRtcGRpciA9ICIvdG1wIjsKKworCW1fYXNwcmludGYoJnRlbXBsYXRlLCAiJXMvJXMuWFhYWFhYIiwgdG1wZGlyLCBzdWZmaXgpOworCisJcmV0dXJuIHRlbXBsYXRlOworfQorCisvKioKKyAqIEVzY2FwZSBjaGFyYWN0ZXJzIGluIGEgcGF0aG5hbWUgZm9yIHNhZmUgbG9jYWxlIHByaW50aW5nLgorICoKKyAqIFdlIG5lZWQgdG8gcXVvdGUgcGF0aHMgc28gdGhhdCB0aGV5IGRvIG5vdCBjYXVzZSBwcm9ibGVtcyB3aGVuIHByaW50aW5nCisgKiB0aGVtLCBmb3IgZXhhbXBsZSB3aXRoIHNucHJpbnRmKDMpIHdoaWNoIGRvZXMgbm90IHdvcmsgaWYgdGhlIGZvcm1hdAorICogc3RyaW5nIGNvbnRhaW5zICVzIGFuZCBhbiBhcmd1bWVudCBoYXMgaW52YWxpZCBjaGFyYWN0ZXJzIGZvciB0aGUKKyAqIGN1cnJlbnQgbG9jYWxlLCBpdCB3aWxsIHRoZW4gcmV0dXJuIC0xLgorICoKKyAqIFRvIHNpbXBsaWZ5IHRoaW5ncywgd2UganVzdCBlc2NhcGUgYWxsIDggYml0IGNoYXJhY3RlcnMsIGluc3RlYWQgb2YKKyAqIGp1c3QgaW52YWxpZCBjaGFyYWN0ZXJzLgorICoKKyAqIEBwYXJhbSBkc3QgVGhlIGVzY2FwZWQgZGVzdGluYXRpb24gc3RyaW5nLgorICogQHBhcmFtIHNyYyBUaGUgc291cmNlIHN0cmluZyB0byBlc2NhcGUuCisgKiBAcGFyYW0gbiBUaGUgc2l6ZSBvZiB0aGUgZGVzdGluYXRpb24gYnVmZmVyLgorICoKKyAqIEByZXR1cm4gVGhlIGRlc3RpbmF0aW9uIHN0cmluZy4KKyAqLworY2hhciAqCitwYXRoX3F1b3RlX2ZpbGVuYW1lKGNoYXIgKmRzdCwgY29uc3QgY2hhciAqc3JjLCBzaXplX3QgbikKK3sKKwljaGFyICpyID0gZHN0OworCXNzaXplX3Qgc2l6ZSA9IChzc2l6ZV90KW47CisKKwlpZiAoc2l6ZSA9PSAwKQorCQlyZXR1cm4gcjsKKworCXdoaWxlICgqc3JjKSB7CisJCWlmICgqc3JjID09ICdcXCcpIHsKKwkJCXNpemUgLT0gMjsKKwkJCWlmIChzaXplIDw9IDApCisJCQkJYnJlYWs7CisKKwkJCSpkc3QrKyA9ICdcXCc7CisJCQkqZHN0KysgPSAnXFwnOworCQkJc3JjKys7CisJCX0gZWxzZSBpZiAoKCgqc3JjKSAmIDB4ODApID09ICdcMCcpIHsKKwkJCXNpemUtLTsKKwkJCWlmIChzaXplIDw9IDApCisJCQkJYnJlYWs7CisKKwkJCSpkc3QrKyA9ICpzcmMrKzsKKwkJfSBlbHNlIHsKKwkJCXNpemUgLT0gNDsKKwkJCWlmIChzaXplIDw9IDApCisJCQkJYnJlYWs7CisKKwkJCXNwcmludGYoZHN0LCAiXFwlMDNvIiwKKwkJCSAgICAgICAgKihjb25zdCB1bnNpZ25lZCBjaGFyICopc3JjKTsKKwkJCWRzdCArPSA0OworCQkJc3JjKys7CisJCX0KKwl9CisKKwkqZHN0ID0gJ1wwJzsKKworCXJldHVybiByOworfQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9wYXRoLmggYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL3BhdGguaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lMzY4N2M3Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9wYXRoLmgKQEAgLTAsMCArMSwzOSBAQAorLyoKKyAqIGxpYmRwa2cgLSBEZWJpYW4gcGFja2FnaW5nIHN1aXRlIGxpYnJhcnkgcm91dGluZXMKKyAqIHBhdGguaCAtIHBhdGggaGFuZGxpbmcgcm91dGluZXMKKyAqCisgKiBDb3B5cmlnaHQgwqkgMjAwOC0yMDExIEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworI2lmbmRlZiBMSUJEUEtHX1BBVEhfSAorI2RlZmluZSBMSUJEUEtHX1BBVEhfSAorCisjaW5jbHVkZSA8c3RkZGVmLmg+CisKKyNpbmNsdWRlIDxkcGtnL21hY3Jvcy5oPgorCitEUEtHX0JFR0lOX0RFQ0xTCisKK3NpemVfdCBwYXRoX3RyaW1fc2xhc2hfc2xhc2hkb3QoY2hhciAqcGF0aCk7Citjb25zdCBjaGFyICpwYXRoX3NraXBfc2xhc2hfZG90c2xhc2goY29uc3QgY2hhciAqcGF0aCk7Citjb25zdCBjaGFyICpwYXRoX2Jhc2VuYW1lKGNvbnN0IGNoYXIgKnBhdGgpOworY2hhciAqcGF0aF9xdW90ZV9maWxlbmFtZShjaGFyICpkc3QsIGNvbnN0IGNoYXIgKnNyYywgc2l6ZV90IHNpemUpOworCitjaGFyICpwYXRoX21ha2VfdGVtcF90ZW1wbGF0ZShjb25zdCBjaGFyICpzdWZmaXgpOworCitEUEtHX0VORF9ERUNMUworCisjZW5kaWYgLyogTElCRFBLR19QQVRIX0ggKi8KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvcGtnLWFycmF5LmMgYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL3BrZy1hcnJheS5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjIwZmYwMmUKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL3BrZy1hcnJheS5jCkBAIC0wLDAgKzEsODEgQEAKKy8qCisgKiBsaWJkcGtnIC0gRGViaWFuIHBhY2thZ2luZyBzdWl0ZSBsaWJyYXJ5IHJvdXRpbmVzCisgKiBwa2ctYXJyYXkuYyAtIHByaW1pdGl2ZXMgZm9yIHBrZyBhcnJheSBoYW5kbGluZworICoKKyAqIENvcHlyaWdodCDCqSAxOTk1LDE5OTYgSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuZ3JlZW5lbmQub3JnLnVrPgorICogQ29weXJpZ2h0IMKpIDIwMDkgR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaW5jbHVkZSA8Y29uZmlnLmg+CisjaW5jbHVkZSA8Y29tcGF0Lmg+CisKKyNpbmNsdWRlIDxhc3NlcnQuaD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKworI2luY2x1ZGUgPGRwa2cvZHBrZy5oPgorI2luY2x1ZGUgPGRwa2cvZHBrZy1kYi5oPgorI2luY2x1ZGUgPGRwa2cvcGtnLWFycmF5Lmg+CisKKy8qKgorICogSW5pdGlhbGl6ZSBhIHBhY2thZ2UgYXJyYXkgZnJvbSB0aGUgcGFja2FnZSBkYXRhYmFzZS4KKyAqCisgKiBAcGFyYW0gYSBUaGUgYXJyYXkgdG8gaW5pdGlhbGl6ZS4KKyAqLwordm9pZAorcGtnX2FycmF5X2luaXRfZnJvbV9kYihzdHJ1Y3QgcGtnX2FycmF5ICphKQoreworCXN0cnVjdCBwa2dpdGVyYXRvciAqaXQ7CisJc3RydWN0IHBrZ2luZm8gKnBrZzsKKwlpbnQgaTsKKworCWEtPm5fcGtncyA9IHBrZ19kYl9jb3VudCgpOworCWEtPnBrZ3MgPSBtX21hbGxvYyhzaXplb2YoYS0+cGtnc1swXSkgKiBhLT5uX3BrZ3MpOworCisJaXQgPSBwa2dfZGJfaXRlcl9uZXcoKTsKKwlmb3IgKGkgPSAwOyAocGtnID0gcGtnX2RiX2l0ZXJfbmV4dChpdCkpOyBpKyspCisJCWEtPnBrZ3NbaV0gPSBwa2c7CisJcGtnX2RiX2l0ZXJfZnJlZShpdCk7CisKKwlhc3NlcnQoaSA9PSBhLT5uX3BrZ3MpOworfQorCisvKioKKyAqIFNvcnQgYSBwYWNrYWdlIGFycmF5LgorICoKKyAqIEBwYXJhbSBhIFRoZSBhcnJheSB0byBzb3J0LgorICogQHBhcmFtIHBrZ19zb3J0IFRoZSBmdW5jdGlvbiB0byBzb3J0IHRoZSBhcnJheS4KKyAqLwordm9pZAorcGtnX2FycmF5X3NvcnQoc3RydWN0IHBrZ19hcnJheSAqYSwgcGtnX3NvcnRlcl9mdW5jICpwa2dfc29ydCkKK3sKKwlxc29ydChhLT5wa2dzLCBhLT5uX3BrZ3MsIHNpemVvZihhLT5wa2dzWzBdKSwgcGtnX3NvcnQpOworfQorCisvKioKKyAqIERlc3Ryb3kgYSBwYWNrYWdlIGFycmF5LgorICoKKyAqIEZyZWVzIHRoZSBhbGxvY2F0ZWQgbWVtb3J5IGFuZCByZXNldHMgdGhlIG1lbWJlcnMuCisgKgorICogQHBhcmFtIGEgVGhlIGFycmF5IHRvIGRlc3Ryb3kuCisgKi8KK3ZvaWQKK3BrZ19hcnJheV9kZXN0cm95KHN0cnVjdCBwa2dfYXJyYXkgKmEpCit7CisJYS0+bl9wa2dzID0gMDsKKwlmcmVlKGEtPnBrZ3MpOworCWEtPnBrZ3MgPSBOVUxMOworfQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9wa2ctYXJyYXkuaCBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvcGtnLWFycmF5LmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNGU0ZWZmNQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvcGtnLWFycmF5LmgKQEAgLTAsMCArMSw0MyBAQAorLyoKKyAqIGxpYmRwa2cgLSBEZWJpYW4gcGFja2FnaW5nIHN1aXRlIGxpYnJhcnkgcm91dGluZXMKKyAqIHBrZy1hcnJheS5oIC0gcHJpbWl0aXZlcyBmb3IgcGtnIGFycmF5IGhhbmRsaW5nCisgKgorICogQ29weXJpZ2h0IMKpIDIwMDkgR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaWZuZGVmIExJQkRQS0dfUEtHX0FSUkFZX0gKKyNkZWZpbmUgTElCRFBLR19QS0dfQVJSQVlfSAorCisjaW5jbHVkZSA8ZHBrZy9kcGtnLWRiLmg+CisjaW5jbHVkZSA8ZHBrZy9wa2cuaD4KKworRFBLR19CRUdJTl9ERUNMUworCisvKioKKyAqIEhvbGRzIGFuIGFycmF5IG9mIHBvaW50ZXJzIHRvIHBhY2thZ2UgZGF0YS4KKyAqLworc3RydWN0IHBrZ19hcnJheSB7CisJaW50IG5fcGtnczsKKwlzdHJ1Y3QgcGtnaW5mbyAqKnBrZ3M7Cit9OworCit2b2lkIHBrZ19hcnJheV9pbml0X2Zyb21fZGIoc3RydWN0IHBrZ19hcnJheSAqYSk7Cit2b2lkIHBrZ19hcnJheV9zb3J0KHN0cnVjdCBwa2dfYXJyYXkgKmEsIHBrZ19zb3J0ZXJfZnVuYyAqcGtnX3NvcnQpOwordm9pZCBwa2dfYXJyYXlfZGVzdHJveShzdHJ1Y3QgcGtnX2FycmF5ICphKTsKKworRFBLR19FTkRfREVDTFMKKworI2VuZGlmIC8qIExJQkRQS0dfUEtHX0FSUkFZX0ggKi8KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvcGtnLWRiLmMgYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL3BrZy1kYi5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjBiNDk0NzkKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL3BrZy1kYi5jCkBAIC0wLDAgKzEsMTU0IEBACisvKgorICogbGliZHBrZyAtIERlYmlhbiBwYWNrYWdpbmcgc3VpdGUgbGlicmFyeSByb3V0aW5lcworICogcGtnLWRiLmMgLSBMb3cgbGV2ZWwgcGFja2FnZSBkYXRhYmFzZSByb3V0aW5lcyAoaGFzaCB0YWJsZXMsIGV0Yy4pCisgKgorICogQ29weXJpZ2h0IMKpIDE5OTUgSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuZ3JlZW5lbmQub3JnLnVrPgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaW5jbHVkZSA8Y29uZmlnLmg+CisjaW5jbHVkZSA8Y29tcGF0Lmg+CisKKyNpbmNsdWRlIDxjdHlwZS5oPgorI2luY2x1ZGUgPHN0cmluZy5oPgorI2luY2x1ZGUgPHN0ZGxpYi5oPgorCisjaW5jbHVkZSA8ZHBrZy9pMThuLmg+CisjaW5jbHVkZSA8ZHBrZy9kcGtnLmg+CisjaW5jbHVkZSA8ZHBrZy9kcGtnLWRiLmg+CisKKy8qIFRoaXMgbXVzdCBhbHdheXMgYmUgYSBwcmltZSBmb3Igb3B0aW1hbCBwZXJmb3JtYW5jZS4KKyAqIFdpdGggNDA5MyBidWNrZXRzLCB3ZSBnbGVhbiBhIDIwJSBzcGVlZHVwLCBmb3IgODE5MSBidWNrZXRzCisgKiB3ZSBnZXQgMjMlLiBUaGUgbm9taW5hbCBpbmNyZWFzZSBpbiBtZW1vcnkgdXNhZ2UgaXMgYSBtZXJlCisgKiBzaXplb2Yodm9pZCAqKSAqIDgwNjMgKGkuZS4gbGVzcyB0aGFuIDMyIEtpQiBvbiAzMmJpdCBzeXN0ZW1zKS4gKi8KKyNkZWZpbmUgQklOUyA4MTkxCisKK3N0YXRpYyBzdHJ1Y3QgcGtnaW5mbyAqYmluc1tCSU5TXTsKK3N0YXRpYyBpbnQgbnBhY2thZ2VzOworCisjZGVmaW5lIEZOVl9vZmZzZXRfYmFzaXMgMjE2NjEzNjI2MXVsCisjZGVmaW5lIEZOVl9taXhpbmdfcHJpbWUgMTY3Nzc2MTl1bAorCisvKioKKyAqIEZvd2xlci9Ob2xsL1ZvIC0tIHNpbXBsZSBzdHJpbmcgaGFzaC4KKyAqCisgKiBGb3IgbW9yZSBpbmZvLCBzZWUgPGh0dHA6Ly93d3cuaXN0aGUuY29tL2Nob25nby90ZWNoL2NvbXAvZm52L2luZGV4Lmh0bWw+LgorICovCitzdGF0aWMgdW5zaWduZWQgaW50IGhhc2goY29uc3QgY2hhciAqbmFtZSkgeworICByZWdpc3RlciB1bnNpZ25lZCBpbnQgaCA9IEZOVl9vZmZzZXRfYmFzaXM7CisgIHJlZ2lzdGVyIHVuc2lnbmVkIGludCBwID0gRk5WX21peGluZ19wcmltZTsKKyAgd2hpbGUoICpuYW1lICkgeworICAgIGggKj0gcDsKKyAgICBoIF49ICpuYW1lKys7CisgIH0KKyAgcmV0dXJuIGg7Cit9CisKK3N0cnVjdCBwa2dpbmZvICoKK3BrZ19kYl9maW5kKGNvbnN0IGNoYXIgKmlubmFtZSkKK3sKKyAgc3RydWN0IHBrZ2luZm8gKipwb2ludGVycCwgKm5ld3BrZzsKKyAgY2hhciAqbmFtZSA9IG1fc3RyZHVwKGlubmFtZSksICpwOworCisgIHA9IG5hbWU7CisgIHdoaWxlKCpwKSB7ICpwPSB0b2xvd2VyKCpwKTsgcCsrOyB9CisKKyAgcG9pbnRlcnA9IGJpbnMgKyAoaGFzaChuYW1lKSAlIChCSU5TKSk7CisgIHdoaWxlICgqcG9pbnRlcnAgJiYgc3RyY2FzZWNtcCgoKnBvaW50ZXJwKS0+bmFtZSxuYW1lKSkKKyAgICBwb2ludGVycD0gJigqcG9pbnRlcnApLT5uZXh0OworICBpZiAoKnBvaW50ZXJwKSB7IGZyZWUobmFtZSk7IHJldHVybiAqcG9pbnRlcnA7IH0KKworICBuZXdwa2c9IG5mbWFsbG9jKHNpemVvZihzdHJ1Y3QgcGtnaW5mbykpOworICBwa2dfYmxhbmsobmV3cGtnKTsKKyAgbmV3cGtnLT5uYW1lPSBuZnN0cnNhdmUobmFtZSk7CisgIG5ld3BrZy0+bmV4dD0gTlVMTDsKKyAgKnBvaW50ZXJwPSBuZXdwa2c7CisgIG5wYWNrYWdlcysrOworCisgIGZyZWUobmFtZSk7CisgIHJldHVybiBuZXdwa2c7Cit9CisKK2ludAorcGtnX2RiX2NvdW50KHZvaWQpCit7CisgIHJldHVybiBucGFja2FnZXM7Cit9CisKK3N0cnVjdCBwa2dpdGVyYXRvciB7CisgIHN0cnVjdCBwa2dpbmZvICpwaWdwOworICBpbnQgbmJpbm47Cit9OworCitzdHJ1Y3QgcGtnaXRlcmF0b3IgKgorcGtnX2RiX2l0ZXJfbmV3KHZvaWQpCit7CisgIHN0cnVjdCBwa2dpdGVyYXRvciAqaTsKKyAgaT0gbV9tYWxsb2Moc2l6ZW9mKHN0cnVjdCBwa2dpdGVyYXRvcikpOworICBpLT5waWdwPSBOVUxMOworICBpLT5uYmlubj0gMDsKKyAgcmV0dXJuIGk7Cit9CisKK3N0cnVjdCBwa2dpbmZvICoKK3BrZ19kYl9pdGVyX25leHQoc3RydWN0IHBrZ2l0ZXJhdG9yICppKQoreworICBzdHJ1Y3QgcGtnaW5mbyAqcjsKKyAgd2hpbGUgKCFpLT5waWdwKSB7CisgICAgaWYgKGktPm5iaW5uID49IEJJTlMpIHJldHVybiBOVUxMOworICAgIGktPnBpZ3A9IGJpbnNbaS0+bmJpbm4rK107CisgIH0KKyAgcj0gaS0+cGlncDsgaS0+cGlncD0gci0+bmV4dDsgcmV0dXJuIHI7Cit9CisKK3ZvaWQKK3BrZ19kYl9pdGVyX2ZyZWUoc3RydWN0IHBrZ2l0ZXJhdG9yICppKQoreworICBmcmVlKGkpOworfQorCit2b2lkCitwa2dfZGJfcmVzZXQodm9pZCkKK3sKKyAgaW50IGk7CisgIG5mZnJlZWFsbCgpOworICBucGFja2FnZXM9IDA7CisgIGZvciAoaT0wOyBpPEJJTlM7IGkrKykgYmluc1tpXT0gTlVMTDsKK30KKwordm9pZAorcGtnX2RiX3JlcG9ydChGSUxFICpmaWxlKQoreworICBpbnQgaSwgYzsKKyAgc3RydWN0IHBrZ2luZm8gKnBrZzsKKyAgaW50ICpmcmVxOworCisgIGZyZXE9IG1fbWFsbG9jKHNpemVvZihpbnQpKm5wYWNrYWdlcysxKTsKKyAgZm9yIChpPTA7IGk8PW5wYWNrYWdlczsgaSsrKSBmcmVxW2ldPSAwOworICBmb3IgKGk9MDsgaTxCSU5TOyBpKyspIHsKKyAgICBmb3IgKGM9MCwgcGtnPSBiaW5zW2ldOyBwa2c7IGMrKywgcGtnPSBwa2ctPm5leHQpOworICAgIGZwcmludGYoZmlsZSwiYmluICU1ZCBoYXMgJTdkXG4iLGksYyk7CisgICAgZnJlcVtjXSsrOworICB9CisgIGZvciAoaT1ucGFja2FnZXM7IGk+MCAmJiBmcmVxW2ldPT0wOyBpLS0pOworICB3aGlsZSAoaSA+PSAwKSB7CisgICAgZnByaW50ZihmaWxlLCAic2l6ZSAlN2Qgb2NjdXJzICU1ZCB0aW1lc1xuIiwgaSwgZnJlcVtpXSk7CisgICAgaS0tOworICB9CisKKyAgbV9vdXRwdXQoZmlsZSwgIjxoYXNoIHJlcG9ydD4iKTsKKworICBmcmVlKGZyZXEpOworfQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9wa2ctZm9ybWF0LmMgYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL3BrZy1mb3JtYXQuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40YjJlYjI0Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9wa2ctZm9ybWF0LmMKQEAgLTAsMCArMSwyNjkgQEAKKy8qCisgKiBsaWJkcGtnIC0gRGViaWFuIHBhY2thZ2luZyBzdWl0ZSBsaWJyYXJ5IHJvdXRpbmVzCisgKiBwa2ctZm9ybWF0LmMgLSBjdXN0b21pemFibGUgcGFja2FnZSBmb3JtYXR0aW5nCisgKgorICogQ29weXJpZ2h0IMKpIDIwMDEgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworI2luY2x1ZGUgPGNvbmZpZy5oPgorI2luY2x1ZGUgPGNvbXBhdC5oPgorCisjaW5jbHVkZSA8c3RyaW5nLmg+CisjaW5jbHVkZSA8c3RkbGliLmg+CisjaW5jbHVkZSA8c3RkaW8uaD4KKworI2luY2x1ZGUgPGRwa2cvaTE4bi5oPgorI2luY2x1ZGUgPGRwa2cvZHBrZy5oPgorI2luY2x1ZGUgPGRwa2cvZHBrZy1kYi5oPgorI2luY2x1ZGUgPGRwa2cvcGFyc2VkdW1wLmg+CisjaW5jbHVkZSA8ZHBrZy9wa2ctZm9ybWF0Lmg+CisKK2VudW0gcGtnX2Zvcm1hdF90eXBlIHsKKwlpbnZhbGlkLAorCXN0cmluZywKKwlmaWVsZCwKK307CisKK3N0cnVjdCBwa2dfZm9ybWF0X25vZGUgeworCXN0cnVjdCBwa2dfZm9ybWF0X25vZGUgKm5leHQ7CisJZW51bSBwa2dfZm9ybWF0X3R5cGUgdHlwZTsKKwlzaXplX3Qgd2lkdGg7CisJaW50IHBhZDsKKwljaGFyICpkYXRhOworfTsKKworCitzdGF0aWMgc3RydWN0IHBrZ19mb3JtYXRfbm9kZSAqCitwa2dfZm9ybWF0X25vZGVfbmV3KHZvaWQpCit7CisJc3RydWN0IHBrZ19mb3JtYXRfbm9kZSAqYnVmOworCisJYnVmID0gbV9tYWxsb2Moc2l6ZW9mKCpidWYpKTsKKwlidWYtPnR5cGUgPSBpbnZhbGlkOworCWJ1Zi0+bmV4dCA9IE5VTEw7CisJYnVmLT5kYXRhID0gTlVMTDsKKwlidWYtPndpZHRoID0gMDsKKwlidWYtPnBhZCA9IDA7CisKKwlyZXR1cm4gYnVmOworfQorCitzdGF0aWMgYm9vbAorcGFyc2VmaWVsZChzdHJ1Y3QgcGtnX2Zvcm1hdF9ub2RlICpjdXIsIGNvbnN0IGNoYXIgKmZtdCwgY29uc3QgY2hhciAqZm10ZW5kKQoreworCWludCBsZW47CisJY29uc3QgY2hhciAqd3M7CisKKwlsZW4gPSBmbXRlbmQgLSBmbXQgKyAxOworCisJd3MgPSBtZW1jaHIoZm10LCAnOycsIGxlbik7CisJaWYgKHdzKSB7CisJCWNoYXIgKmVuZHB0cjsKKwkJbG9uZyB3OworCisJCXcgPSBzdHJ0b2wod3MgKyAxLCAmZW5kcHRyLCAwKTsKKwkJaWYgKGVuZHB0clswXSAhPSAnfScpIHsKKwkJCWZwcmludGYoc3RkZXJyLAorCQkJICAgICAgICBfKCJpbnZhbGlkIGNoYXJhY3RlciBgJWMnIGluIGZpZWxkIHdpZHRoXG4iKSwKKwkJCSAgICAgICAqZW5kcHRyKTsKKwkJCXJldHVybiBmYWxzZTsKKwkJfQorCisJCWlmICh3IDwgMCkgeworCQkJY3VyLT5wYWQgPSAxOworCQkJY3VyLT53aWR0aCA9IChzaXplX3QpLXc7CisJCX0gZWxzZQorCQkJY3VyLT53aWR0aCA9IChzaXplX3QpdzsKKworCQlsZW4gPSB3cyAtIGZtdDsKKwl9CisKKwljdXItPnR5cGUgPSBmaWVsZDsKKwljdXItPmRhdGEgPSBtX21hbGxvYyhsZW4gKyAxKTsKKwltZW1jcHkoY3VyLT5kYXRhLCBmbXQsIGxlbik7CisJY3VyLT5kYXRhW2xlbl0gPSAnXDAnOworCisJcmV0dXJuIHRydWU7Cit9CisKK3N0YXRpYyBib29sCitwYXJzZXN0cmluZyhzdHJ1Y3QgcGtnX2Zvcm1hdF9ub2RlICpjdXIsIGNvbnN0IGNoYXIgKmZtdCwgY29uc3QgY2hhciAqZm10ZW5kKQoreworCWludCBsZW47CisJY2hhciAqd3JpdGU7CisKKwlsZW4gPSBmbXRlbmQgLSBmbXQgKyAxOworCisJY3VyLT50eXBlID0gc3RyaW5nOworCXdyaXRlID0gY3VyLT5kYXRhID0gbV9tYWxsb2MobGVuICsgMSk7CisJd2hpbGUgKGZtdCA8PSBmbXRlbmQpIHsKKwkJaWYgKCpmbXQgPT0gJ1xcJykgeworCQkJZm10Kys7CisJCQlzd2l0Y2ggKCpmbXQpIHsKKwkJCWNhc2UgJ24nOgorCQkJCSp3cml0ZSA9ICdcbic7CisJCQkJYnJlYWs7CisJCQljYXNlICd0JzoKKwkJCQkqd3JpdGUgPSAnXHQnOworCQkJCWJyZWFrOworCQkJY2FzZSAncic6CisJCQkJKndyaXRlID0gJ1xyJzsKKwkJCQlicmVhazsKKwkJCWNhc2UgJ1xcJzoKKwkJCWRlZmF1bHQ6CisJCQkJKndyaXRlID0gKmZtdDsKKwkJCQlicmVhazsKKwkJCX0KKwkJfSBlbHNlCisJCQkqd3JpdGUgPSAqZm10OworCQl3cml0ZSsrOworCQlmbXQrKzsKKwl9CisJKndyaXRlID0gJ1wwJzsKKworCXJldHVybiB0cnVlOworfQorCit2b2lkCitwa2dfZm9ybWF0X2ZyZWUoc3RydWN0IHBrZ19mb3JtYXRfbm9kZSAqaGVhZCkKK3sKKwlzdHJ1Y3QgcGtnX2Zvcm1hdF9ub2RlICpuZXh0OworCisJd2hpbGUgKGhlYWQpIHsKKwkJbmV4dCA9IGhlYWQtPm5leHQ7CisJCWZyZWUoaGVhZC0+ZGF0YSk7CisJCWZyZWUoaGVhZCk7CisJCWhlYWQgPSBuZXh0OworCX0KK30KKworc3RydWN0IHBrZ19mb3JtYXRfbm9kZSAqCitwa2dfZm9ybWF0X3BhcnNlKGNvbnN0IGNoYXIgKmZtdCkKK3sKKwlzdHJ1Y3QgcGtnX2Zvcm1hdF9ub2RlICpoZWFkOworCXN0cnVjdCBwa2dfZm9ybWF0X25vZGUgKmN1cjsKKwljb25zdCBjaGFyICpmbXRlbmQ7CisKKwloZWFkID0gY3VyID0gTlVMTDsKKworCXdoaWxlICgqZm10KSB7CisJCWlmIChjdXIpCisJCQljdXIgPSBjdXItPm5leHQgPSBwa2dfZm9ybWF0X25vZGVfbmV3KCk7CisJCWVsc2UKKwkJCWhlYWQgPSBjdXIgPSBwa2dfZm9ybWF0X25vZGVfbmV3KCk7CisKKwkJaWYgKGZtdFswXSA9PSAnJCcgJiYgZm10WzFdID09ICd7JykgeworCQkJZm10ZW5kID0gc3RyY2hyKGZtdCwgJ30nKTsKKwkJCWlmICghZm10ZW5kKSB7CisJCQkJZnByaW50ZihzdGRlcnIsCisJCQkJICAgICAgXygiQ2xvc2luZyBicmFjZSBtaXNzaW5nIGluIGZvcm1hdFxuIikpOworCQkJCXBrZ19mb3JtYXRfZnJlZShoZWFkKTsKKwkJCQlyZXR1cm4gTlVMTDsKKwkJCX0KKworCQkJaWYgKCFwYXJzZWZpZWxkKGN1ciwgZm10ICsgMiwgZm10ZW5kIC0gMSkpIHsKKwkJCQlwa2dfZm9ybWF0X2ZyZWUoaGVhZCk7CisJCQkJcmV0dXJuIE5VTEw7CisJCQl9CisJCQlmbXQgPSBmbXRlbmQgKyAxOworCQl9IGVsc2UgeworCQkJZm10ZW5kID0gZm10OworCQkJZG8geworCQkJCWZtdGVuZCArPSAxOworCQkJCWZtdGVuZCA9IHN0cmNocihmbXRlbmQsICckJyk7CisJCQl9IHdoaWxlIChmbXRlbmQgJiYgZm10ZW5kWzFdICE9ICd7Jyk7CisKKwkJCWlmICghZm10ZW5kKQorCQkJCWZtdGVuZCA9IGZtdCArIHN0cmxlbihmbXQpOworCisJCQlpZiAoIXBhcnNlc3RyaW5nKGN1ciwgZm10LCBmbXRlbmQgLSAxKSkgeworCQkJCXBrZ19mb3JtYXRfZnJlZShoZWFkKTsKKwkJCQlyZXR1cm4gTlVMTDsKKwkJCX0KKwkJCWZtdCA9IGZtdGVuZDsKKwkJfQorCX0KKworCXJldHVybiBoZWFkOworfQorCit2b2lkCitwa2dfZm9ybWF0X3Nob3coY29uc3Qgc3RydWN0IHBrZ19mb3JtYXRfbm9kZSAqaGVhZCwKKyAgICAgICAgICAgICAgICBzdHJ1Y3QgcGtnaW5mbyAqcGtnLCBzdHJ1Y3QgcGtnYmluICpwaWYpCit7CisJc3RydWN0IHZhcmJ1ZiB2YiA9IFZBUkJVRl9JTklULCBmYiA9IFZBUkJVRl9JTklULCB3YiA9IFZBUkJVRl9JTklUOworCisJd2hpbGUgKGhlYWQpIHsKKwkJYm9vbCBvazsKKwkJY2hhciBmbXRbMTZdOworCisJCW9rID0gZmFsc2U7CisKKwkJaWYgKGhlYWQtPndpZHRoID4gMCkKKwkJCXNucHJpbnRmKGZtdCwgMTYsICIlJSVzJXp1cyIsCisJCQkgICAgICAgICAoKGhlYWQtPnBhZCkgPyAiLSIgOiAiIiksIGhlYWQtPndpZHRoKTsKKwkJZWxzZQorCQkJc3RyY3B5KGZtdCwgIiVzIik7CisKKwkJaWYgKGhlYWQtPnR5cGUgPT0gc3RyaW5nKSB7CisJCQl2YXJidWZfcHJpbnRmKCZmYiwgZm10LCBoZWFkLT5kYXRhKTsKKwkJCW9rID0gdHJ1ZTsKKwkJfSBlbHNlIGlmIChoZWFkLT50eXBlID09IGZpZWxkKSB7CisJCQljb25zdCBzdHJ1Y3QgZmllbGRpbmZvICpmaXA7CisKKwkJCWZvciAoZmlwID0gZmllbGRpbmZvczsgZmlwLT5uYW1lOyBmaXArKykKKwkJCQlpZiAoc3RyY2FzZWNtcChoZWFkLT5kYXRhLCBmaXAtPm5hbWUpID09IDApIHsKKwkJCQkJZmlwLT53Y2FsbCgmd2IsIHBrZywgcGlmLCAwLCBmaXApOworCisJCQkJCXZhcmJ1Zl9lbmRfc3RyKCZ3Yik7CisJCQkJCXZhcmJ1Zl9wcmludGYoJmZiLCBmbXQsIHdiLmJ1Zik7CisJCQkJCXZhcmJ1Zl9yZXNldCgmd2IpOworCQkJCQlvayA9IHRydWU7CisJCQkJCWJyZWFrOworCQkJCX0KKworCQkJaWYgKCFmaXAtPm5hbWUpIHsKKwkJCQljb25zdCBzdHJ1Y3QgYXJiaXRyYXJ5ZmllbGQgKmFmcDsKKworCQkJCWZvciAoYWZwID0gcGlmLT5hcmJzOyBhZnA7IGFmcCA9IGFmcC0+bmV4dCkKKwkJCQkJaWYgKHN0cmNhc2VjbXAoaGVhZC0+ZGF0YSwgYWZwLT5uYW1lKSA9PSAwKSB7CisJCQkJCQl2YXJidWZfcHJpbnRmKCZmYiwgZm10LCBhZnAtPnZhbHVlKTsKKwkJCQkJCW9rID0gdHJ1ZTsKKwkJCQkJCWJyZWFrOworCQkJCQl9CisJCQl9CisJCX0KKworCQlpZiAob2spIHsKKwkJCXNpemVfdCBsZW4gPSBzdHJsZW4oZmIuYnVmKTsKKwkJCWlmICgoaGVhZC0+d2lkdGggPiAwKSAmJiAobGVuID4gaGVhZC0+d2lkdGgpKQorCQkJCWxlbiA9IGhlYWQtPndpZHRoOworCQkJdmFyYnVmX2FkZF9idWYoJnZiLCBmYi5idWYsIGxlbik7CisJCX0KKworCQl2YXJidWZfcmVzZXQoJmZiKTsKKwkJaGVhZCA9IGhlYWQtPm5leHQ7CisJfQorCisJaWYgKHZiLmJ1ZikgeworCQl2YXJidWZfZW5kX3N0cigmdmIpOworCQlmcHV0cyh2Yi5idWYsIHN0ZG91dCk7CisJfQorCisJdmFyYnVmX2Rlc3Ryb3koJndiKTsKKwl2YXJidWZfZGVzdHJveSgmZmIpOworCXZhcmJ1Zl9kZXN0cm95KCZ2Yik7Cit9CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL3BrZy1mb3JtYXQuaCBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvcGtnLWZvcm1hdC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQ5NDUwZjUKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL3BrZy1mb3JtYXQuaApAQCAtMCwwICsxLDM4IEBACisvKgorICogbGliZHBrZyAtIERlYmlhbiBwYWNrYWdpbmcgc3VpdGUgbGlicmFyeSByb3V0aW5lcworICogcGtnLWZvcm1hdC5jIC0gY3VzdG9taXphYmxlIHBhY2thZ2UgZm9ybWF0dGluZworICoKKyAqIENvcHlyaWdodCDCqSAyMDAxIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisgKgorICogVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisgKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAqIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorICovCisKKyNpZm5kZWYgTElCRFBLR19QS0dfRk9STUFUX0gKKyNkZWZpbmUgTElCRFBLR19QS0dfRk9STUFUX0gKKworI2luY2x1ZGUgPGRwa2cvbWFjcm9zLmg+CisjaW5jbHVkZSA8ZHBrZy9kcGtnLWRiLmg+CisKK0RQS0dfQkVHSU5fREVDTFMKKworc3RydWN0IHBrZ19mb3JtYXRfbm9kZTsKKworc3RydWN0IHBrZ19mb3JtYXRfbm9kZSAqcGtnX2Zvcm1hdF9wYXJzZShjb25zdCBjaGFyICpmbXQpOwordm9pZCBwa2dfZm9ybWF0X2ZyZWUoc3RydWN0IHBrZ19mb3JtYXRfbm9kZSAqaGVhZCk7Cit2b2lkIHBrZ19mb3JtYXRfc2hvdyhjb25zdCBzdHJ1Y3QgcGtnX2Zvcm1hdF9ub2RlICpoZWFkLAorICAgICAgICAgICAgICAgICAgICAgc3RydWN0IHBrZ2luZm8gKnBrZywgc3RydWN0IHBrZ2JpbiAqcGlmKTsKKworRFBLR19FTkRfREVDTFMKKworI2VuZGlmIC8qIExJQkRQS0dfUEtHX0ZPUk1BVF9IICovCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL3BrZy1saXN0LmMgYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL3BrZy1saXN0LmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZmE3YmMxNAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvcGtnLWxpc3QuYwpAQCAtMCwwICsxLDc4IEBACisvKgorICogbGliZHBrZyAtIERlYmlhbiBwYWNrYWdpbmcgc3VpdGUgbGlicmFyeSByb3V0aW5lcworICogcGtnLWxpc3QuYyAtIHByaW1pdGl2ZXMgZm9yIHBrZyBsaW5rZWQgbGlzdCBoYW5kbGluZworICoKKyAqIENvcHlyaWdodCDCqSAyMDA5IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworI2luY2x1ZGUgPGNvbmZpZy5oPgorI2luY2x1ZGUgPGNvbXBhdC5oPgorCisjaW5jbHVkZSA8c3RkbGliLmg+CisKKyNpbmNsdWRlIDxkcGtnL2Rwa2cuaD4KKyNpbmNsdWRlIDxkcGtnL2Rwa2ctZGIuaD4KKyNpbmNsdWRlIDxkcGtnL3BrZy1saXN0Lmg+CisKKy8qKgorICogQ3JlYXRlIGEgbmV3IHBhY2thZ2UgbGlzdCBub2RlLgorICoKKyAqIEBwYXJhbSBwa2cgVGhlIHBrZ2luZm8gdG8gYXNzaWduIHRvIHRoZSBub2RlLgorICogQHBhcmFtIG5leHQgVGhlIG5leHQgcGFja2FnZSBsaXN0IG5vZGUuCisgKgorICogQHJldHVybiBUaGUgbmV3IHBhY2thZ2UgbGlzdCBub2RlLgorICovCitzdHJ1Y3QgcGtnX2xpc3QgKgorcGtnX2xpc3RfbmV3KHN0cnVjdCBwa2dpbmZvICpwa2csIHN0cnVjdCBwa2dfbGlzdCAqbmV4dCkKK3sKKwlzdHJ1Y3QgcGtnX2xpc3QgKm5vZGU7CisKKwlub2RlID0gbV9tYWxsb2Moc2l6ZW9mKCpub2RlKSk7CisJbm9kZS0+cGtnID0gcGtnOworCW5vZGUtPm5leHQgPSBuZXh0OworCisJcmV0dXJuIG5vZGU7Cit9CisKKy8qKgorICogRnJlZSBhbGwgbm9kZXMgb2YgYSBwYWNrYWdlIGxpc3QuCisgKgorICogQHBhcmFtIGhlYWQgVGhlIGhlYWQgb2YgdGhlIGxpc3QgdG8gZnJlZS4KKyAqLwordm9pZAorcGtnX2xpc3RfZnJlZShzdHJ1Y3QgcGtnX2xpc3QgKmhlYWQpCit7CisJd2hpbGUgKGhlYWQpIHsKKwkJc3RydWN0IHBrZ19saXN0ICpub2RlOworCisJCW5vZGUgPSBoZWFkOworCQloZWFkID0gaGVhZC0+bmV4dDsKKworCQlmcmVlKG5vZGUpOworCX0KK30KKworLyoqCisgKiBQcmVwZW5kIGEgcGFja2FnZSBsaXN0IG5vZGUgdG8gYSBwYWNrYWdlIGxpc3QuCisgKgorICogQHBhcmFtIGhlYWQgVGhlIGhlYWQgb2YgdGhlIGxpc3QgdG8gcHJlcGVuZCB0by4KKyAqIEBwYXJhbSBwa2cgVGhlIHBrZ2luZm8gdG8gcHJlcGVuZCB0byB0aGUgbGlzdC4KKyAqLwordm9pZAorcGtnX2xpc3RfcHJlcGVuZChzdHJ1Y3QgcGtnX2xpc3QgKipoZWFkLCBzdHJ1Y3QgcGtnaW5mbyAqcGtnKQoreworCSpoZWFkID0gcGtnX2xpc3RfbmV3KHBrZywgKmhlYWQpOworfQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9wa2ctbGlzdC5oIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9wa2ctbGlzdC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjczYjIyNmYKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL3BrZy1saXN0LmgKQEAgLTAsMCArMSwzOSBAQAorLyoKKyAqIGxpYmRwa2cgLSBEZWJpYW4gcGFja2FnaW5nIHN1aXRlIGxpYnJhcnkgcm91dGluZXMKKyAqIHBrZy1saXN0LmggLSBwcmltaXRpdmVzIGZvciBwa2cgbGlua2VkIGxpc3QgaGFuZGxpbmcKKyAqCisgKiBDb3B5cmlnaHQgwqkgMjAwOSBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CisgKgorICogVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisgKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAqIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorICovCisKKyNpZm5kZWYgTElCRFBLR19QS0dfTElTVF9ICisjZGVmaW5lIExJQkRQS0dfUEtHX0xJU1RfSAorCisjaW5jbHVkZSA8ZHBrZy9kcGtnLWRiLmg+CisKK0RQS0dfQkVHSU5fREVDTFMKKworc3RydWN0IHBrZ19saXN0IHsKKwlzdHJ1Y3QgcGtnX2xpc3QgKm5leHQ7CisJc3RydWN0IHBrZ2luZm8gKnBrZzsKK307CisKK3N0cnVjdCBwa2dfbGlzdCAqcGtnX2xpc3RfbmV3KHN0cnVjdCBwa2dpbmZvICpwa2csIHN0cnVjdCBwa2dfbGlzdCAqbmV4dCk7Cit2b2lkIHBrZ19saXN0X2ZyZWUoc3RydWN0IHBrZ19saXN0ICpoZWFkKTsKK3ZvaWQgcGtnX2xpc3RfcHJlcGVuZChzdHJ1Y3QgcGtnX2xpc3QgKipoZWFkLCBzdHJ1Y3QgcGtnaW5mbyAqcGtnKTsKKworRFBLR19FTkRfREVDTFMKKworI2VuZGlmIC8qIExJQkRQS0dfUEtHX0xJU1RfSCAqLwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9wa2ctcXVldWUuYyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvcGtnLXF1ZXVlLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMmM0NDgwZgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvcGtnLXF1ZXVlLmMKQEAgLTAsMCArMSwxMjYgQEAKKy8qCisgKiBsaWJkcGtnIC0gRGViaWFuIHBhY2thZ2luZyBzdWl0ZSBsaWJyYXJ5IHJvdXRpbmVzCisgKiBwa2ctcXVldWUuYyAtIHByaW1pdGl2ZXMgZm9yIHBrZyBxdWV1ZSBoYW5kbGluZworICoKKyAqIENvcHlyaWdodCDCqSAyMDEwIEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworI2luY2x1ZGUgPGNvbmZpZy5oPgorI2luY2x1ZGUgPGNvbXBhdC5oPgorCisjaW5jbHVkZSA8c3RkbGliLmg+CisKKyNpbmNsdWRlIDxkcGtnL2Rwa2ctZGIuaD4KKyNpbmNsdWRlIDxkcGtnL3BrZy1xdWV1ZS5oPgorCisvKioKKyAqIEluaXRpYWxpemUgYSBwYWNrYWdlIHF1ZXVlLgorICoKKyAqIEBwYXJhbSBxdWV1ZSBUaGUgcXVldWUgdG8gaW5pdGlhbGl6ZS4KKyAqLwordm9pZAorcGtnX3F1ZXVlX2luaXQoc3RydWN0IHBrZ19xdWV1ZSAqcXVldWUpCit7CisJcXVldWUtPmhlYWQgPSBOVUxMOworCXF1ZXVlLT50YWlsID0gTlVMTDsKKwlxdWV1ZS0+bGVuZ3RoID0gMDsKK30KKworLyoqCisgKiBEZXN0cm95IGEgcGFja2FnZSBxdWV1ZS4KKyAqCisgKiBJdCBmcmVlcyB0aGUgY29udGFpbmVkIHBhY2thZ2UgbGlzdCBhbmQgcmVzZXRzIHRoZSBxdWV1ZSBtZW1iZXJzLgorICoKKyAqIEBwYXJhbSBxdWV1ZSBUaGUgcXVldWUgdG8gZGVzdHJveS4KKyAqLwordm9pZAorcGtnX3F1ZXVlX2Rlc3Ryb3koc3RydWN0IHBrZ19xdWV1ZSAqcXVldWUpCit7CisJcGtnX2xpc3RfZnJlZShxdWV1ZS0+aGVhZCk7CisJcGtnX3F1ZXVlX2luaXQocXVldWUpOworfQorCisvKioKKyAqIENoZWNrIGlmIGEgcGFja2FnZSBxdWV1ZSBpcyBlbXB0eS4KKyAqCisgKiBAcGFyYW0gcXVldWUgVGhlIHF1ZXVlIHRvIGNoZWNrLgorICoKKyAqIEByZXR1cm4gQSBib29sZWFuIHZhbHVlLgorICovCitpbnQKK3BrZ19xdWV1ZV9pc19lbXB0eShzdHJ1Y3QgcGtnX3F1ZXVlICpxdWV1ZSkKK3sKKwlyZXR1cm4gKHF1ZXVlLT5oZWFkID09IE5VTEwpOworfQorCisvKioKKyAqIFB1c2ggYSBuZXcgbm9kZSBjb250YWluaW5nIHBrZ2luZm8gdG8gdGhlIHRhaWwgb2YgdGhlIHF1ZXVlLgorICoKKyAqIEBwYXJhbSBxdWV1ZSBUaGUgcXVldWUgdG8gaW5zZXJ0IHRvLgorICogQHBhcmFtIHBrZyBUaGUgcGFja2FnZSB0byB1c2UgZm8gdGhlIG5ldyBub2RlLgorICoKKyAqIEByZXR1cm4gVGhlIG5ld2x5IGluc2VydGVkIHBrZ19saXN0IG5vZGUuCisgKi8KK3N0cnVjdCBwa2dfbGlzdCAqCitwa2dfcXVldWVfcHVzaChzdHJ1Y3QgcGtnX3F1ZXVlICpxdWV1ZSwgc3RydWN0IHBrZ2luZm8gKnBrZykKK3sKKwlzdHJ1Y3QgcGtnX2xpc3QgKm5vZGU7CisKKwlub2RlID0gcGtnX2xpc3RfbmV3KHBrZywgTlVMTCk7CisKKwlpZiAocXVldWUtPnRhaWwgPT0gTlVMTCkKKwkJcXVldWUtPmhlYWQgPSBub2RlOworCWVsc2UKKwkJcXVldWUtPnRhaWwtPm5leHQgPSBub2RlOworCisJcXVldWUtPnRhaWwgPSBub2RlOworCisJcXVldWUtPmxlbmd0aCsrOworCisJcmV0dXJuIG5vZGU7Cit9CisKKy8qKgorICogUG9wIGEgbm9kZSBjb250YWluaW5nIHBrZ2luZm8gZnJvbSB0aGUgaGVhZCBvZiB0aGUgcXVldWUuCisgKgorICogVGhpcyByZW1vdmVzIGFuZCBmcmVlcyB0aGUgbm9kZSBmcm9tIHRoZSBxdWV1ZSwgZWZmZWN0aXZlbHkgcmVkdWNpbmcgaXRzCisgKiBzaXplLgorICoKKyAqIEBwYXJhbSBxdWV1ZSBUaGUgcXVldWUgdG8gcmVtb3ZlIGZyb20uCisgKgorICogQHJldHVybiBUaGUgcGtnaW5mbyBmcm9tIHRoZSByZW1vdmVkIG5vZGUsIG9yIE5VTEwgaWYgdGhlIHF1ZXVlIHdhcyBlbXB0eS4KKyAqLworc3RydWN0IHBrZ2luZm8gKgorcGtnX3F1ZXVlX3BvcChzdHJ1Y3QgcGtnX3F1ZXVlICpxdWV1ZSkKK3sKKwlzdHJ1Y3QgcGtnX2xpc3QgKm5vZGU7CisJc3RydWN0IHBrZ2luZm8gKnBrZzsKKworCWlmIChwa2dfcXVldWVfaXNfZW1wdHkocXVldWUpKQorCQlyZXR1cm4gTlVMTDsKKworCW5vZGUgPSBxdWV1ZS0+aGVhZDsKKwlwa2cgPSBub2RlLT5wa2c7CisKKwlxdWV1ZS0+aGVhZCA9IG5vZGUtPm5leHQ7CisJaWYgKHF1ZXVlLT5oZWFkID09IE5VTEwpCisJCXF1ZXVlLT50YWlsID0gTlVMTDsKKworCWZyZWUobm9kZSk7CisJcXVldWUtPmxlbmd0aC0tOworCisJcmV0dXJuIHBrZzsKK30KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvcGtnLXF1ZXVlLmggYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL3BrZy1xdWV1ZS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmZlOTRhMDIKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL3BrZy1xdWV1ZS5oCkBAIC0wLDAgKzEsNTAgQEAKKy8qCisgKiBsaWJkcGtnIC0gRGViaWFuIHBhY2thZ2luZyBzdWl0ZSBsaWJyYXJ5IHJvdXRpbmVzCisgKiBwa2ctcXVldWUuaCAtIHByaW1pdGl2ZXMgZm9yIHBrZyBxdWV1ZSBoYW5kbGluZworICoKKyAqIENvcHlyaWdodCDCqSAyMDEwIEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworI2lmbmRlZiBEUEtHX1BLR19RVUVVRV9ICisjZGVmaW5lIERQS0dfUEtHX1FVRVVFX0gKKworI2luY2x1ZGUgPGRwa2cvbWFjcm9zLmg+CisjaW5jbHVkZSA8ZHBrZy9wa2ctbGlzdC5oPgorCitEUEtHX0JFR0lOX0RFQ0xTCisKK3N0cnVjdCBwa2dfcXVldWUgeworCXN0cnVjdCBwa2dfbGlzdCAqaGVhZCwgKnRhaWw7CisJaW50IGxlbmd0aDsKK307CisKKy8qKgorICogSW5pdGlhbGl6ZXIgZm9yIGEgcGFja2FnZSBxdWV1ZS4KKyAqLworI2RlZmluZSBQS0dfUVVFVUVfSU5JVCBcCisJKHN0cnVjdCBwa2dfcXVldWUpeyAuaGVhZCA9IE5VTEwsIC50YWlsID0gTlVMTCwgLmxlbmd0aCA9IDAgfQorCit2b2lkIHBrZ19xdWV1ZV9pbml0KHN0cnVjdCBwa2dfcXVldWUgKnF1ZXVlKTsKK3ZvaWQgcGtnX3F1ZXVlX2Rlc3Ryb3koc3RydWN0IHBrZ19xdWV1ZSAqcXVldWUpOworCitpbnQgcGtnX3F1ZXVlX2lzX2VtcHR5KHN0cnVjdCBwa2dfcXVldWUgKnF1ZXVlKTsKKworc3RydWN0IHBrZ19saXN0ICpwa2dfcXVldWVfcHVzaChzdHJ1Y3QgcGtnX3F1ZXVlICpxdWV1ZSwgc3RydWN0IHBrZ2luZm8gKnBrZyk7CitzdHJ1Y3QgcGtnaW5mbyAqcGtnX3F1ZXVlX3BvcChzdHJ1Y3QgcGtnX3F1ZXVlICpxdWV1ZSk7CisKK0RQS0dfRU5EX0RFQ0xTCisKKyNlbmRpZiAvKiBEUEtHX1BLR19RVUVVRV9IICovCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL3BrZy1zaG93LmMgYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL3BrZy1zaG93LmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNGE3NWVhOAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvcGtnLXNob3cuYwpAQCAtMCwwICsxLDQ5IEBACisvKgorICogbGliZHBrZyAtIERlYmlhbiBwYWNrYWdpbmcgc3VpdGUgbGlicmFyeSByb3V0aW5lcworICogcGtnLXNob3cuYyAtIHByaW1pdGl2ZXMgZm9yIHBrZyBpbmZvcm1hdGlvbiBkaXNwbGF5CisgKgorICogQ29weXJpZ2h0IMKpIDE5OTUsMTk5NiBJYW4gSmFja3NvbiA8aWFuQGNoaWFyay5ncmVlbmVuZC5vcmcudWs+CisgKiBDb3B5cmlnaHQgwqkgMjAwOC0yMDEwIEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworI2luY2x1ZGUgPGNvbmZpZy5oPgorI2luY2x1ZGUgPGNvbXBhdC5oPgorCisjaW5jbHVkZSA8c3RyaW5nLmg+CisKKyNpbmNsdWRlIDxkcGtnL21hY3Jvcy5oPgorI2luY2x1ZGUgPGRwa2cvaTE4bi5oPgorI2luY2x1ZGUgPGRwa2cvZHBrZy1kYi5oPgorI2luY2x1ZGUgPGRwa2cvcGtnLXNob3cuaD4KKworY29uc3QgY2hhciAqCitwa2dfc3VtbWFyeShjb25zdCBzdHJ1Y3QgcGtnaW5mbyAqcGtnLCBpbnQgKmxlbl9yZXQpCit7CisJY29uc3QgY2hhciAqcGRlc2M7CisJc2l6ZV90IGxlbjsKKworCXBkZXNjID0gcGtnLT5pbnN0YWxsZWQuZGVzY3JpcHRpb247CisJaWYgKCFwZGVzYykKKwkJcGRlc2MgPSBfKCIobm8gZGVzY3JpcHRpb24gYXZhaWxhYmxlKSIpOworCisJbGVuID0gc3RyY3NwbihwZGVzYywgIlxuIik7CisJaWYgKGxlbiA9PSAwKQorCQlsZW4gPSBzdHJsZW4ocGRlc2MpOworCisJKmxlbl9yZXQgPSBsZW47CisKKwlyZXR1cm4gcGRlc2M7Cit9CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL3BrZy1zaG93LmggYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL3BrZy1zaG93LmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMWYyOWI2ZQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvcGtnLXNob3cuaApAQCAtMCwwICsxLDMzIEBACisvKgorICogbGliZHBrZyAtIERlYmlhbiBwYWNrYWdpbmcgc3VpdGUgbGlicmFyeSByb3V0aW5lcworICogcGtnLXNob3cuaCAtIHByaW1pdGl2ZXMgZm9yIHBrZyBpbmZvcm1hdGlvbiBkaXNwbGF5CisgKgorICogQ29weXJpZ2h0IMKpIDIwMTAgR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaWZuZGVmIERQS0dfUEtHX1NIT1dfSAorI2RlZmluZSBEUEtHX1BLR19TSE9XX0gKKworI2luY2x1ZGUgPGRwa2cvbWFjcm9zLmg+CisjaW5jbHVkZSA8ZHBrZy9kcGtnLWRiLmg+CisKK0RQS0dfQkVHSU5fREVDTFMKKworY29uc3QgY2hhciAqcGtnX3N1bW1hcnkoY29uc3Qgc3RydWN0IHBrZ2luZm8gKnBrZywgaW50ICpsZW5fcmV0KTsKKworRFBLR19FTkRfREVDTFMKKworI2VuZGlmIC8qIERQS0dfUEtHX1NIT1dfSCAqLwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9wa2cuYyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvcGtnLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZmJkMjUxOQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvcGtnLmMKQEAgLTAsMCArMSwxMjUgQEAKKy8qCisgKiBsaWJkcGtnIC0gRGViaWFuIHBhY2thZ2luZyBzdWl0ZSBsaWJyYXJ5IHJvdXRpbmVzCisgKiBwa2cuYyAtIHByaW1pdGl2ZXMgZm9yIHBrZyBoYW5kbGluZworICoKKyAqIENvcHlyaWdodCDCqSAxOTk1LCAxOTk2IElhbiBKYWNrc29uIDxpYW5AY2hpYXJrLmdyZWVuZW5kLm9yZy51az4KKyAqIENvcHlyaWdodCDCqSAyMDA5IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworI2luY2x1ZGUgPGNvbmZpZy5oPgorI2luY2x1ZGUgPGNvbXBhdC5oPgorCisjaW5jbHVkZSA8c3RyaW5nLmg+CisKKyNpbmNsdWRlIDxkcGtnL2Rwa2ctZGIuaD4KKyNpbmNsdWRlIDxkcGtnL3BrZy5oPgorCit2b2lkCitwa2diaW5fYmxhbmsoc3RydWN0IHBrZ2JpbiAqcGtnYmluKQoreworCXBrZ2Jpbi0+ZXNzZW50aWFsID0gZmFsc2U7CisJcGtnYmluLT5kZXBlbmRzID0gTlVMTDsKKwlwa2diaW4tPmRlcGVuZGVkID0gTlVMTDsKKwlwa2diaW4tPmRlc2NyaXB0aW9uID0gTlVMTDsKKwlwa2diaW4tPm1haW50YWluZXIgPSBOVUxMOworCXBrZ2Jpbi0+c291cmNlID0gTlVMTDsKKwlwa2diaW4tPmluc3RhbGxlZHNpemUgPSBOVUxMOworCXBrZ2Jpbi0+YnVncyA9IE5VTEw7CisJcGtnYmluLT5vcmlnaW4gPSBOVUxMOworCXBrZ2Jpbi0+YXJjaCA9IE5VTEw7CisJYmxhbmt2ZXJzaW9uKCZwa2diaW4tPnZlcnNpb24pOworCXBrZ2Jpbi0+Y29uZmZpbGVzID0gTlVMTDsKKwlwa2diaW4tPmFyYnMgPSBOVUxMOworfQorCit2b2lkCitwa2dfYmxhbmsoc3RydWN0IHBrZ2luZm8gKnBrZykKK3sKKwlwa2ctPm5hbWUgPSBOVUxMOworCXBrZy0+c3RhdHVzID0gc3RhdF9ub3RpbnN0YWxsZWQ7CisJcGtnLT5lZmxhZyA9IGVmbGFnX29rOworCXBrZy0+d2FudCA9IHdhbnRfdW5rbm93bjsKKwlwa2ctPnByaW9yaXR5ID0gcHJpX3Vua25vd247CisJcGtnLT5vdGhlcnByaW9yaXR5ID0gTlVMTDsKKwlwa2ctPnNlY3Rpb24gPSBOVUxMOworCWJsYW5rdmVyc2lvbigmcGtnLT5jb25maWd2ZXJzaW9uKTsKKwlwa2ctPmZpbGVzID0gTlVMTDsKKwlwa2ctPmNsaWVudGRhdGEgPSBOVUxMOworCXBrZy0+dHJpZ2F3LmhlYWQgPSBOVUxMOworCXBrZy0+dHJpZ2F3LnRhaWwgPSBOVUxMOworCXBrZy0+b3RoZXJ0cmlnYXdfaGVhZCA9IE5VTEw7CisJcGtnLT50cmlncGVuZF9oZWFkID0gTlVMTDsKKwlwa2diaW5fYmxhbmsoJnBrZy0+aW5zdGFsbGVkKTsKKwlwa2diaW5fYmxhbmsoJnBrZy0+YXZhaWxhYmxlKTsKK30KKworc3RhdGljIGludAorbmVzKGNvbnN0IGNoYXIgKnMpCit7CisJcmV0dXJuIHMgJiYgKnM7Cit9CisKKy8qKgorICogQ2hlY2sgaWYgYSBwa2cgaXMgaW5mb3JtYXRpdmUuCisgKgorICogVXNlZCBieSBkc2VsZWN0IGFuZCBkcGtnIHF1ZXJ5IG9wdGlvbnMgYXMgYW4gYWlkIHRvIGRlY2lkZSB3aGV0aGVyIHRvCisgKiBkaXNwbGF5IHRoaW5ncywgYW5kIGJ5IGR1bXAgdG8gZGVjaWRlIHdoZXRoZXIgdG8gd3JpdGUgdGhlbSBvdXQuCisgKi8KK2Jvb2wKK3BrZ19pc19pbmZvcm1hdGl2ZShzdHJ1Y3QgcGtnaW5mbyAqcGtnLCBzdHJ1Y3QgcGtnYmluICpwa2diaW4pCit7CisJLyogV2UgaWdub3JlIFNlY3Rpb24gYW5kIFByaW9yaXR5LCBhcyB0aGVzZSB0ZW5kIHRvIGhhbmcgYXJvdW5kLiAqLworCWlmIChwa2diaW4gPT0gJnBrZy0+aW5zdGFsbGVkICYmCisJICAgIChwa2ctPndhbnQgIT0gd2FudF91bmtub3duIHx8CisJICAgICBwa2ctPmVmbGFnICE9IGVmbGFnX29rIHx8CisJICAgICBwa2ctPnN0YXR1cyAhPSBzdGF0X25vdGluc3RhbGxlZCB8fAorCSAgICAgaW5mb3JtYXRpdmV2ZXJzaW9uKCZwa2ctPmNvbmZpZ3ZlcnNpb24pKSkKKwkJcmV0dXJuIHRydWU7CisKKwlpZiAocGtnYmluLT5kZXBlbmRzIHx8CisJICAgIG5lcyhwa2diaW4tPmRlc2NyaXB0aW9uKSB8fAorCSAgICBuZXMocGtnYmluLT5tYWludGFpbmVyKSB8fAorCSAgICBuZXMocGtnYmluLT5vcmlnaW4pIHx8CisJICAgIG5lcyhwa2diaW4tPmJ1Z3MpIHx8CisJICAgIG5lcyhwa2diaW4tPmluc3RhbGxlZHNpemUpIHx8CisJICAgIG5lcyhwa2diaW4tPnNvdXJjZSkgfHwKKwkgICAgaW5mb3JtYXRpdmV2ZXJzaW9uKCZwa2diaW4tPnZlcnNpb24pIHx8CisJICAgIHBrZ2Jpbi0+Y29uZmZpbGVzIHx8CisJICAgIHBrZ2Jpbi0+YXJicykKKwkJcmV0dXJuIHRydWU7CisKKwlyZXR1cm4gZmFsc2U7Cit9CisKKy8qKgorICogQ29tcGFyZSBhIHBhY2thZ2UgdG8gYmUgc29ydGVkIGJ5IG5hbWUuCisgKgorICogQHBhcmFtIGEgQSBwb2ludGVyIG9mIGEgcG9pbnRlciB0byBhIHN0cnVjdCBwa2dpbmZvLgorICogQHBhcmFtIGIgQSBwb2ludGVyIG9mIGEgcG9pbnRlciB0byBhIHN0cnVjdCBwa2dpbmZvLgorICoKKyAqIEByZXR1cm4gQW4gaW50ZWdlciB3aXRoIHRoZSByZXN1bHQgb2YgdGhlIGNvbXBhcmlzb24uCisgKiBAcmV0dmFsIC0xIGEgaXMgZWFybGllciB0aGFuIGIuCisgKiBAcmV0dmFsIDAgYSBpcyBlcXVhbCB0byBiLgorICogQHJldHZhbCAxIGEgaXMgbGF0ZXIgdGhhbiBiLgorICovCitpbnQKK3BrZ19zb3J0ZXJfYnlfbmFtZShjb25zdCB2b2lkICphLCBjb25zdCB2b2lkICpiKQoreworCWNvbnN0IHN0cnVjdCBwa2dpbmZvICpwYSA9ICooY29uc3Qgc3RydWN0IHBrZ2luZm8gKiopYTsKKwljb25zdCBzdHJ1Y3QgcGtnaW5mbyAqcGIgPSAqKGNvbnN0IHN0cnVjdCBwa2dpbmZvICoqKWI7CisKKwlyZXR1cm4gc3RyY21wKHBhLT5uYW1lLCBwYi0+bmFtZSk7Cit9CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL3BrZy5oIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9wa2cuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zYWYxZWM3Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9wa2cuaApAQCAtMCwwICsxLDM0IEBACisvKgorICogbGliZHBrZyAtIERlYmlhbiBwYWNrYWdpbmcgc3VpdGUgbGlicmFyeSByb3V0aW5lcworICogcGtnLmggLSBwcmltaXRpdmVzIGZvciBwa2cgaGFuZGxpbmcKKyAqCisgKiBDb3B5cmlnaHQgwqkgMjAwOSBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CisgKgorICogVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisgKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAqIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorICovCisKKyNpZm5kZWYgTElCRFBLR19QS0dfSAorI2RlZmluZSBMSUJEUEtHX1BLR19ICisKKyNpbmNsdWRlIDxkcGtnL21hY3Jvcy5oPgorCitEUEtHX0JFR0lOX0RFQ0xTCisKK3R5cGVkZWYgaW50IHBrZ19zb3J0ZXJfZnVuYyhjb25zdCB2b2lkICphLCBjb25zdCB2b2lkICpiKTsKKworaW50IHBrZ19zb3J0ZXJfYnlfbmFtZShjb25zdCB2b2lkICphLCBjb25zdCB2b2lkICpiKTsKKworRFBLR19FTkRfREVDTFMKKworI2VuZGlmIC8qIExJQkRQS0dfUEtHX0ggKi8KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvcHJvZ25hbWUuYyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvcHJvZ25hbWUuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hYmQ1ZGY1Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9wcm9nbmFtZS5jCkBAIC0wLDAgKzEsNzcgQEAKKy8qCisgKiBsaWJkcGtnIC0gRGViaWFuIHBhY2thZ2luZyBzdWl0ZSBsaWJyYXJ5IHJvdXRpbmVzCisgKiBwcm9nbmFtZS5jIC0gcHJvZ3JhbSBuYW1lIGhhbmRsaW5nIGZ1bmN0aW9ucworICoKKyAqIENvcHlyaWdodCDCqSAyMDExIEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworI2luY2x1ZGUgPGNvbmZpZy5oPgorI2luY2x1ZGUgPGNvbXBhdC5oPgorCisjaW5jbHVkZSA8ZXJybm8uaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKworI2luY2x1ZGUgPGRwa2cvcGF0aC5oPgorI2luY2x1ZGUgPGRwa2cvcHJvZ25hbWUuaD4KKworc3RhdGljIGNvbnN0IGNoYXIgKnByb2duYW1lOworCisvKioKKyAqIFNldCB0aGUgcHJvZ3JhbSBuYW1lLgorICoKKyAqIFRoaXMgZnVuY3Rpb24gd2lsbCBzZXQgdGhlIHByb2dyYW0gbmFtZSB3aGljaCB3aWxsIGJlIHVzZWQgYnkgZXJyb3IKKyAqIHJlcG9ydGluZyBmdW5jdGlvbnMsIGFtb25nIG90aGVycy4KKyAqCisgKiBAcGFyYW0gbmFtZSBUaGUgbmV3IHByb2dyYW0gbmFtZS4KKyAqLwordm9pZAorZHBrZ19zZXRfcHJvZ25hbWUoY29uc3QgY2hhciAqbmFtZSkKK3sKKwlwcm9nbmFtZSA9IHBhdGhfYmFzZW5hbWUobmFtZSk7Cit9CisKKyNpZiBkZWZpbmVkKEhBVkVfX19QUk9HTkFNRSkKK2V4dGVybiBjb25zdCBjaGFyICpfX3Byb2duYW1lOworI2VuZGlmCisKKy8qKgorICogR2V0IHRoZSBwcm9ncmFtIG5hbWUuCisgKgorICogVGhlIHByb2dyYW0gbmFtZSBtaWdodCBoYXZlIGJlZW4gc2V0IHByZXZpb3VzbHkgYnkgZHBrZ19zZXRfcHJvZ25hbWUoKSwKKyAqIGJ1dCBpZiBub3QgdGhpcyBmdW5jdGlvbiB3aWxsIHRyeSB0byBpbml0aWFsaXplIGl0IGJ5IHN5c3RlbSBkZXBlbmRlbnQKKyAqIG1lYW5zLCBzbyBpdCdzIGhhbGYgc2FmZSB0byBub3QgY2FsbCBkcGtnX3NldF9wcm9nbmFtZSgpIGF0IGFsbC4gQXQgd29yc3QKKyAqIHRoZSBmdW5jdGlvbiBtaWdodCByZXR1cm4gTlVMTCBpbiB0aGF0IGNhc2UuCisgKgorICogQHJldHVybiBBIHBvaW50ZXIgdG8gYSBzdGF0aWMgYnVmZmVyIHdpdGggdGhlIHByb2dyYW0gbmFtZS4KKyAqLworY29uc3QgY2hhciAqCitkcGtnX2dldF9wcm9nbmFtZSh2b2lkKQoreworCWlmIChwcm9nbmFtZSA9PSBOVUxMKSB7CisjaWYgZGVmaW5lZChIQVZFX1BST0dSQU1fSU5WT0NBVElPTl9TSE9SVF9OQU1FKQorCQlwcm9nbmFtZSA9IHByb2dyYW1faW52b2NhdGlvbl9zaG9ydF9uYW1lOworI2VsaWYgZGVmaW5lZChIQVZFX19fUFJPR05BTUUpCisJCXByb2duYW1lID0gX19wcm9nbmFtZTsKKyNlbGlmIGRlZmluZWQoSEFWRV9HRVRQUk9HTkFNRSkKKwkJcHJvZ25hbWUgPSBnZXRwcm9nbmFtZSgpOworI2VsaWYgZGVmaW5lZChIQVZFX0dFVEVYRUNOQU1FKQorCQkvKiBnZXRleGVjbmFtZSgzKSByZXR1cm5zIGFuIGFic29sdXRlIHBhdGgsIG5vcm1hbGl6ZSBpdC4gKi8KKwkJZHBrZ19zZXRfcHJvZ25hbWUoZ2V0ZXhlY25hbWUoKSk7CisjZW5kaWYKKwl9CisKKwlyZXR1cm4gcHJvZ25hbWU7Cit9CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL3Byb2duYW1lLmggYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL3Byb2duYW1lLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTQwMzRiOQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvcHJvZ25hbWUuaApAQCAtMCwwICsxLDMzIEBACisvKgorICogbGliZHBrZyAtIERlYmlhbiBwYWNrYWdpbmcgc3VpdGUgbGlicmFyeSByb3V0aW5lcworICogcHJvZ25hbWUuaCAtIHByb2dyYW0gbmFtZSBoYW5kbGluZyBmdW5jdGlvbnMKKyAqCisgKiBDb3B5cmlnaHQgwqkgMjAxMSBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CisgKgorICogVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisgKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAqIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorICovCisKKyNpZm5kZWYgTElCRFBLR19QUk9HTkFNRV9ICisjZGVmaW5lIExJQkRQS0dfUFJPR05BTUVfSAorCisjaW5jbHVkZSA8ZHBrZy9tYWNyb3MuaD4KKworRFBLR19CRUdJTl9ERUNMUworCit2b2lkIGRwa2dfc2V0X3Byb2duYW1lKGNvbnN0IGNoYXIgKm5hbWUpOworY29uc3QgY2hhciAqZHBrZ19nZXRfcHJvZ25hbWUodm9pZCk7CisKK0RQS0dfRU5EX0RFQ0xTCisKKyNlbmRpZgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9wcm9ncmVzcy5jIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9wcm9ncmVzcy5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmU4ZmYxZWUKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL3Byb2dyZXNzLmMKQEAgLTAsMCArMSw3MSBAQAorLyoKKyAqIGxpYmRwa2cgLSBEZWJpYW4gcGFja2FnaW5nIHN1aXRlIGxpYnJhcnkgcm91dGluZXMKKyAqIHByb2dyZXNzLmMgLSBnZW5lcmljIHByb2dyZXNzIHJlcG9ydGluZworICoKKyAqIENvcHlyaWdodCDCqSAyMDA5IFJvbWFpbiBGcmFuY29pc2UgPHJmcmFuY29pc2VAZGViaWFuLm9yZz4KKyAqIENvcHlyaWdodCDCqSAyMDA5IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworI2luY2x1ZGUgPGNvbmZpZy5oPgorI2luY2x1ZGUgPGNvbXBhdC5oPgorCisjaW5jbHVkZSA8dW5pc3RkLmg+CisjaW5jbHVkZSA8c3RkaW8uaD4KKworI2luY2x1ZGUgPGRwa2cvaTE4bi5oPgorCisjaW5jbHVkZSAicHJvZ3Jlc3MuaCIKKwordm9pZAorcHJvZ3Jlc3NfaW5pdChzdHJ1Y3QgcHJvZ3Jlc3MgKnByb2dyZXNzLCBjb25zdCBjaGFyICp0ZXh0LCBpbnQgbWF4KQoreworCXByb2dyZXNzLT50ZXh0ID0gdGV4dDsKKwlwcm9ncmVzcy0+bWF4ID0gbWF4OworCXByb2dyZXNzLT5jdXIgPSAwOworCXByb2dyZXNzLT5sYXN0X3BlcmNlbnQgPSAwOworCisJcHJvZ3Jlc3MtPm9uX3R0eSA9IGlzYXR0eSgxKTsKKworCXByaW50ZigiJXMiLCB0ZXh0KTsKK30KKwordm9pZAorcHJvZ3Jlc3Nfc3RlcChzdHJ1Y3QgcHJvZ3Jlc3MgKnByb2dyZXNzKQoreworCWludCBjdXJfcGVyY2VudDsKKworCWlmICghcHJvZ3Jlc3MtPm9uX3R0eSkKKwkJcmV0dXJuOworCisJcHJvZ3Jlc3MtPmN1cisrOworCisJY3VyX3BlcmNlbnQgPSAocHJvZ3Jlc3MtPmN1ciAqIDEwMCkgLyBwcm9ncmVzcy0+bWF4OworCWlmIChjdXJfcGVyY2VudCA8PSBwcm9ncmVzcy0+bGFzdF9wZXJjZW50KQorCQlyZXR1cm47CisJaWYgKGN1cl9wZXJjZW50ICUgNSkKKwkJcmV0dXJuOworCisJcHJvZ3Jlc3MtPmxhc3RfcGVyY2VudCA9IGN1cl9wZXJjZW50OworCisJcHJpbnRmKCJcciVzJWQlJSIsIHByb2dyZXNzLT50ZXh0LCBjdXJfcGVyY2VudCk7Cit9CisKK3ZvaWQKK3Byb2dyZXNzX2RvbmUoc3RydWN0IHByb2dyZXNzICpwcm9ncmVzcykKK3sKKwlpZiAocHJvZ3Jlc3MtPm9uX3R0eSkKKwkJcHJpbnRmKCJcciVzIiwgcHJvZ3Jlc3MtPnRleHQpOworfQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9wcm9ncmVzcy5oIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9wcm9ncmVzcy5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjBmYzNmM2MKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL3Byb2dyZXNzLmgKQEAgLTAsMCArMSw0NiBAQAorLyoKKyAqIGxpYmRwa2cgLSBEZWJpYW4gcGFja2FnaW5nIHN1aXRlIGxpYnJhcnkgcm91dGluZXMKKyAqIHByb2dyZXNzLmggLSBnZW5lcmljIHByb2dyZXNzIHJlcG9ydGluZworICoKKyAqIENvcHlyaWdodCDCqSAyMDA5IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworI2lmbmRlZiBMSUJEUEtHX1BST0dSRVNTX0gKKyNkZWZpbmUgTElCRFBLR19QUk9HUkVTU19ICisKKyNpbmNsdWRlIDxzdGRib29sLmg+CisKKyNpbmNsdWRlIDxkcGtnL21hY3Jvcy5oPgorCitEUEtHX0JFR0lOX0RFQ0xTCisKK3N0cnVjdCBwcm9ncmVzcyB7CisJY29uc3QgY2hhciAqdGV4dDsKKworCWludCBtYXg7CisJaW50IGN1cjsKKwlpbnQgbGFzdF9wZXJjZW50OworCisJYm9vbCBvbl90dHk7Cit9OworCit2b2lkIHByb2dyZXNzX2luaXQoc3RydWN0IHByb2dyZXNzICpwcm9ncmVzcywgY29uc3QgY2hhciAqdGV4dCwgaW50IG1heCk7Cit2b2lkIHByb2dyZXNzX3N0ZXAoc3RydWN0IHByb2dyZXNzICpwcm9ncmVzcyk7Cit2b2lkIHByb2dyZXNzX2RvbmUoc3RydWN0IHByb2dyZXNzICpwcm9ncmVzcyk7CisKK0RQS0dfRU5EX0RFQ0xTCisKKyNlbmRpZgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9zdHJpbmcuYyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvc3RyaW5nLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTIyZWUyZQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvc3RyaW5nLmMKQEAgLTAsMCArMSwxMTUgQEAKKy8qCisgKiBsaWJkcGtnIC0gRGViaWFuIHBhY2thZ2luZyBzdWl0ZSBsaWJyYXJ5IHJvdXRpbmVzCisgKiBzdHJpbmcuYyAtIHN0cmluZyBoYW5kbGluZyByb3V0aW5lcworICoKKyAqIENvcHlyaWdodCDCqSAxOTk1IElhbiBKYWNrc29uIDxpYW5AY2hpYXJrLmdyZWVuZW5kLm9yZy51az4KKyAqIENvcHlyaWdodCDCqSAyMDA4LCAyMDA5IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworI2luY2x1ZGUgPGNvbmZpZy5oPgorI2luY2x1ZGUgPGNvbXBhdC5oPgorCisjaW5jbHVkZSA8c3RyaW5nLmg+CisKKyNpbmNsdWRlIDxkcGtnL3N0cmluZy5oPgorI2luY2x1ZGUgPGRwa2cvZHBrZy5oPgorCisvKioKKyAqIEVzY2FwZSBmb3JtYXQgY2hhcmFjdGVycyBmcm9tIGEgc3RyaW5nLgorICoKKyAqIEBwYXJhbSBkc3QgVGhlIGRlc3RpbmF0aW9uIHN0cmluZy4KKyAqIEBwYXJhbSBzcmMgVGhlIHNvdXJjZSBzdHJpbmcuCisgKiBAcGFyYW0gbiBUaGUgc2l6ZSBvZiB0aGUgZGVzdGluYXRpb24gYnVmZmVyLgorICoKKyAqIEByZXR1cm4gVGhlIGVuZCBvZiB0aGUgZGVzdGluYXRpb24gc3RyaW5nLgorICovCitjaGFyICoKK3N0cl9lc2NhcGVfZm10KGNoYXIgKmRzdCwgY29uc3QgY2hhciAqc3JjLCBzaXplX3QgbikKK3sKKwljaGFyICpkID0gZHN0OworCWNvbnN0IGNoYXIgKnMgPSBzcmM7CisKKwlpZiAobiA9PSAwKQorCQlyZXR1cm4gZDsKKworCXdoaWxlICgqcykgeworCQlpZiAoKnMgPT0gJyUnKSB7CisJCQlpZiAobi0tIDw9IDIpCisJCQkJYnJlYWs7CisJCQkqZCsrID0gJyUnOworCQl9CisJCWlmIChuLS0gPD0gMSkKKwkJCWJyZWFrOworCQkqZCsrID0gKnMrKzsKKwl9CisKKwkqZCA9ICdcMCc7CisKKwlyZXR1cm4gZDsKK30KKworLyoqCisgKiBRdW90ZSBzaGVsbCBtZXRhY2hhcmFjdGVycyBpbiBhIHN0cmluZy4KKyAqCisgKiBUaGlzIGZ1bmN0aW9uIGFsbG93cyBwYXNzaW5nIHN0cmluZ3MgdG8gY29tbWFuZHMgd2l0aG91dCBzcGxpdHRpbmcgdGhlCisgKiBhcmd1bWVudHMsIGxpa2UgaW4gc3lzdGVtKDMpCisgKgorICogQHBhcmFtIHNyYyBUaGUgc291cmNlIHN0cmluZyB0byBlc2NhcGUuCisgKgorICogQHJldHVybiBUaGUgbmV3IGFsbG9jYXRlZCBzdHJpbmcuCisgKi8KK2NoYXIgKgorc3RyX3F1b3RlX21ldGEoY29uc3QgY2hhciAqc3JjKQoreworCWNoYXIgKm5ld19kc3QsICpkc3Q7CisKKwluZXdfZHN0ID0gZHN0ID0gbV9tYWxsb2Moc3RybGVuKHNyYykgKiAyKTsKKworCXdoaWxlICgqc3JjKSB7CisJCWlmICghY2lzZGlnaXQoKnNyYykgJiYgIWNpc2FscGhhKCpzcmMpKQorCQkJKmRzdCsrID0gJ1xcJzsKKworCQkqZHN0KysgPSAqc3JjKys7CisJfQorCisJKmRzdCA9ICdcMCc7CisKKwlyZXR1cm4gbmV3X2RzdDsKK30KKworLyoqCisgKiBDaGVjayBhbmQgc3RyaXAgcG9zc2libGUgc3Vycm91bmRpbmcgcXVvdGVzIGluIHN0cmluZy4KKyAqCisgKiBAcGFyYW0gc3RyIFRoZSBzdHJpbmcgdG8gYWN0IG9uLgorICoKKyAqIEByZXR1cm4gQSBwb2ludGVyIHRvIHN0ciBvciBOVUxMIGlmIHRoZSBxdW90ZXMgd2VyZSB1bmJhbGFuY2VkLgorICovCitjaGFyICoKK3N0cl9zdHJpcF9xdW90ZXMoY2hhciAqc3RyKQoreworCWlmIChzdHJbMF0gPT0gJyInIHx8IHN0clswXSA9PSAnXCcnKSB7CisJCXNpemVfdCBzdHJfbGVuID0gc3RybGVuKHN0cik7CisKKwkJaWYgKHN0clswXSAhPSBzdHJbc3RyX2xlbiAtIDFdKQorCQkJcmV0dXJuIE5VTEw7CisKKwkJLyogUmVtb3ZlIHN1cnJvdW5kaW5nIHF1b3Rlcy4gKi8KKwkJc3RyW3N0cl9sZW4gLSAxXSA9ICdcMCc7CisJCXN0cisrOworCX0KKworCXJldHVybiBzdHI7Cit9CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL3N0cmluZy5oIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9zdHJpbmcuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42ZjM3YmJjCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9zdHJpbmcuaApAQCAtMCwwICsxLDM0IEBACisvKgorICogbGliZHBrZyAtIERlYmlhbiBwYWNrYWdpbmcgc3VpdGUgbGlicmFyeSByb3V0aW5lcworICogc3RyaW5nLmggLSBzdHJpbmcgaGFuZGxpbmcgcm91dGluZXMKKyAqCisgKiBDb3B5cmlnaHQgwqkgMjAwOCwgMjAwOSBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CisgKgorICogVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisgKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAqIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorICovCisKKyNpZm5kZWYgTElCRFBLR19TVFJJTkdfSAorI2RlZmluZSBMSUJEUEtHX1NUUklOR19ICisKKyNpbmNsdWRlIDxkcGtnL21hY3Jvcy5oPgorCitEUEtHX0JFR0lOX0RFQ0xTCisKK2NoYXIgKnN0cl9lc2NhcGVfZm10KGNoYXIgKmRlc3QsIGNvbnN0IGNoYXIgKnNyYywgc2l6ZV90IG4pOworY2hhciAqc3RyX3F1b3RlX21ldGEoY29uc3QgY2hhciAqc3JjKTsKK2NoYXIgKnN0cl9zdHJpcF9xdW90ZXMoY2hhciAqc3RyKTsKKworRFBLR19FTkRfREVDTFMKKworI2VuZGlmIC8qIExJQkRQS0dfU1RSSU5HX0ggKi8KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvc3VicHJvYy5jIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy9zdWJwcm9jLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTAwMTQxYwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvc3VicHJvYy5jCkBAIC0wLDAgKzEsMTY1IEBACisvKgorICogbGliZHBrZyAtIERlYmlhbiBwYWNrYWdpbmcgc3VpdGUgbGlicmFyeSByb3V0aW5lcworICogc3VicHJvYy5jIC0gc3VicHJvY2VzcyBoZWxwZXIgcm91dGluZXMKKyAqCisgKiBDb3B5cmlnaHQgwqkgMTk5NSBJYW4gSmFja3NvbiA8aWFuQGNoaWFyay5ncmVlbmVuZC5vcmcudWs+CisgKgorICogVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisgKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAqIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorICovCisKKyNpbmNsdWRlIDxjb25maWcuaD4KKyNpbmNsdWRlIDxjb21wYXQuaD4KKworI2luY2x1ZGUgPHN5cy90eXBlcy5oPgorI2luY2x1ZGUgPHN5cy93YWl0Lmg+CisKKyNpbmNsdWRlIDxlcnJuby5oPgorI2luY2x1ZGUgPHN0cmluZy5oPgorI2luY2x1ZGUgPHNpZ25hbC5oPgorI2luY2x1ZGUgPHVuaXN0ZC5oPgorI2luY2x1ZGUgPHN0ZGxpYi5oPgorI2luY2x1ZGUgPHN0ZGlvLmg+CisKKyNpbmNsdWRlIDxkcGtnL2kxOG4uaD4KKyNpbmNsdWRlIDxkcGtnL2Rwa2cuaD4KKyNpbmNsdWRlIDxkcGtnL3N1YnByb2MuaD4KKworc3RhdGljIGludCBzaWdub19pZ25vcmVzW10gPSB7IFNJR1FVSVQsIFNJR0lOVCB9Oworc3RhdGljIHN0cnVjdCBzaWdhY3Rpb24gc2Ffc2F2ZVthcnJheV9jb3VudChzaWdub19pZ25vcmVzKV07CisKK3ZvaWQKK3N1YnByb2Nfc2lnbmFsc19zZXR1cChjb25zdCBjaGFyICpuYW1lKQoreworCXN0cnVjdCBzaWdhY3Rpb24gc2E7CisJc2l6ZV90IGk7CisKKwlvbmVycl9hYm9ydCsrOworCW1lbXNldCgmc2EsIDAsIHNpemVvZihzYSkpOworCXNpZ2VtcHR5c2V0KCZzYS5zYV9tYXNrKTsKKwlzYS5zYV9oYW5kbGVyID0gU0lHX0lHTjsKKwlzYS5zYV9mbGFncyA9IDA7CisKKwlmb3IgKGkgPSAwOyBpIDwgYXJyYXlfY291bnQoc2lnbm9faWdub3Jlcyk7IGkrKykKKwkJaWYgKHNpZ2FjdGlvbihzaWdub19pZ25vcmVzW2ldLCAmc2EsICZzYV9zYXZlW2ldKSkKKwkJCW9oc2hpdGUoXygidW5hYmxlIHRvIGlnbm9yZSBzaWduYWwgJXMgYmVmb3JlIHJ1bm5pbmcgJS4yNTBzIiksCisJCQkgICAgICAgIHN0cnNpZ25hbChzaWdub19pZ25vcmVzW2ldKSwgbmFtZSk7CisJcHVzaF9jbGVhbnVwKHN1YnByb2Nfc2lnbmFsc19jbGVhbnVwLCB+MCwgTlVMTCwgMCwgMCk7CisJb25lcnJfYWJvcnQtLTsKK30KKwordm9pZAorc3VicHJvY19zaWduYWxzX2NsZWFudXAoaW50IGFyZ2MsIHZvaWQgKiphcmd2KQoreworCXNpemVfdCBpOworCisJZm9yIChpID0gMDsgaSA8IGFycmF5X2NvdW50KHNpZ25vX2lnbm9yZXMpOyBpKyspIHsKKwkJaWYgKHNpZ2FjdGlvbihzaWdub19pZ25vcmVzW2ldLCAmc2Ffc2F2ZVtpXSwgTlVMTCkpIHsKKwkJCWZwcmludGYoc3RkZXJyLCBfKCJlcnJvciB1bi1jYXRjaGluZyBzaWduYWwgJXM6ICVzXG4iKSwKKwkJCSAgICAgICAgc3Ryc2lnbmFsKHNpZ25vX2lnbm9yZXNbaV0pLCBzdHJlcnJvcihlcnJubykpOworCQkJb25lcnJfYWJvcnQrKzsKKwkJfQorCX0KK30KKworc3RhdGljIHZvaWQKK3ByaW50X3N1YnByb2NfZXJyb3IoY29uc3QgY2hhciAqZW1zZywgY29uc3QgY2hhciAqY29udGV4dHN0cmluZykKK3sKKwlmcHJpbnRmKHN0ZGVyciwgXygiJXMgKHN1YnByb2Nlc3MpOiAlc1xuIiksIGRwa2dfZ2V0X3Byb2duYW1lKCksIGVtc2cpOworfQorCitwaWRfdAorc3VicHJvY19mb3JrKHZvaWQpCit7CisJcGlkX3QgcGlkOworCisJcGlkID0gZm9yaygpOworCWlmIChwaWQgPT0gLTEpIHsKKwkJb25lcnJfYWJvcnQrKzsKKwkJb2hzaGl0ZShfKCJmb3JrIGZhaWxlZCIpKTsKKwl9CisJaWYgKHBpZCA+IDApCisJCXJldHVybiBwaWQ7CisKKwkvKiBQdXNoIGEgbmV3IGVycm9yIGNvbnRleHQsIHNvIHRoYXQgd2UgZG9uJ3QgZG8gdGhlIG90aGVyIGNsZWFudXBzLAorCSAqIGJlY2F1c2UgdGhleSdsbCBiZSBkb25lIGJ5L2luIHRoZSBwYXJlbnQgcHJvY2Vzcy4gKi8KKwlwdXNoX2Vycm9yX2NvbnRleHRfZnVuYyhjYXRjaF9mYXRhbF9lcnJvciwgcHJpbnRfc3VicHJvY19lcnJvciwgTlVMTCk7CisKKwlyZXR1cm4gcGlkOworfQorCitpbnQKK3N1YnByb2NfY2hlY2soaW50IHN0YXR1cywgY29uc3QgY2hhciAqZGVzYywgaW50IGZsYWdzKQoreworCXZvaWQgKCpvdXQpKGNvbnN0IGNoYXIgKmZtdCwgLi4uKSBEUEtHX0FUVFJfUFJJTlRGKDEpOworCWludCBuOworCisJaWYgKGZsYWdzICYgUFJPQ1dBUk4pCisJCW91dCA9IHdhcm5pbmc7CisJZWxzZQorCQlvdXQgPSBvaHNoaXQ7CisKKwlpZiAoV0lGRVhJVEVEKHN0YXR1cykpIHsKKwkJbiA9IFdFWElUU1RBVFVTKHN0YXR1cyk7CisJCWlmICghbikKKwkJCXJldHVybiAwOworCQlpZiAoZmxhZ3MgJiBQUk9DTk9FUlIpCisJCQlyZXR1cm4gbjsKKworCQlvdXQoXygic3VicHJvY2VzcyAlcyByZXR1cm5lZCBlcnJvciBleGl0IHN0YXR1cyAlZCIpLCBkZXNjLCBuKTsKKwl9IGVsc2UgaWYgKFdJRlNJR05BTEVEKHN0YXR1cykpIHsKKwkJbiA9IFdURVJNU0lHKHN0YXR1cyk7CisJCWlmICghbikKKwkJCXJldHVybiAwOworCQlpZiAoKGZsYWdzICYgUFJPQ1BJUEUpICYmIG4gPT0gU0lHUElQRSkKKwkJCXJldHVybiAwOworCisJCWlmIChuID09IFNJR0lOVCkKKwkJCW91dChfKCJzdWJwcm9jZXNzICVzIHdhcyBpbnRlcnJ1cHRlZCIpLCBkZXNjKTsKKwkJZWxzZQorCQkJb3V0KF8oInN1YnByb2Nlc3MgJXMgd2FzIGtpbGxlZCBieSBzaWduYWwgKCVzKSVzIiksCisJCQkgICAgZGVzYywgc3Ryc2lnbmFsKG4pLAorCQkJICAgIFdDT1JFRFVNUChzdGF0dXMpID8gXygiLCBjb3JlIGR1bXBlZCIpIDogIiIpOworCX0gZWxzZSB7CisJCW91dChfKCJzdWJwcm9jZXNzICVzIGZhaWxlZCB3aXRoIHdhaXQgc3RhdHVzIGNvZGUgJWQiKSwgZGVzYywKKwkJICAgIHN0YXR1cyk7CisJfQorCisJcmV0dXJuIC0xOworfQorCitpbnQKK3N1YnByb2Nfd2FpdChwaWRfdCBwaWQsIGNvbnN0IGNoYXIgKmRlc2MpCit7CisJcGlkX3QgcjsKKwlpbnQgc3RhdHVzOworCisJd2hpbGUgKChyID0gd2FpdHBpZChwaWQsICZzdGF0dXMsIDApKSA9PSAtMSAmJiBlcnJubyA9PSBFSU5UUikgOworCisJaWYgKHIgIT0gcGlkKSB7CisJCW9uZXJyX2Fib3J0Kys7CisJCW9oc2hpdGUoXygid2FpdCBmb3Igc3VicHJvY2VzcyAlcyBmYWlsZWQiKSwgZGVzYyk7CisJfQorCisJcmV0dXJuIHN0YXR1czsKK30KKworaW50CitzdWJwcm9jX3dhaXRfY2hlY2socGlkX3QgcGlkLCBjb25zdCBjaGFyICpkZXNjLCBpbnQgZmxhZ3MpCit7CisJaW50IHN0YXR1czsKKworCXN0YXR1cyA9IHN1YnByb2Nfd2FpdChwaWQsIGRlc2MpOworCisJcmV0dXJuIHN1YnByb2NfY2hlY2soc3RhdHVzLCBkZXNjLCBmbGFncyk7Cit9CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL3N1YnByb2MuaCBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvc3VicHJvYy5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjgxZmIxMjIKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL3N1YnByb2MuaApAQCAtMCwwICsxLDQ0IEBACisvKgorICogbGliZHBrZyAtIERlYmlhbiBwYWNrYWdpbmcgc3VpdGUgbGlicmFyeSByb3V0aW5lcworICogc3VicHJvYy5oIC0gc3ViLXByb2Nlc3MgaGFuZGxpbmcgcm91dGluZXMKKyAqCisgKiBDb3B5cmlnaHQgwqkgMjAwOCBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CisgKgorICogVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisgKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAqIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorICovCisKKyNpZm5kZWYgTElCRFBLR19TVUJQUk9DX0gKKyNkZWZpbmUgTElCRFBLR19TVUJQUk9DX0gKKworI2luY2x1ZGUgPHN5cy90eXBlcy5oPgorCisjaW5jbHVkZSA8ZHBrZy9tYWNyb3MuaD4KKworRFBLR19CRUdJTl9ERUNMUworCit2b2lkIHN1YnByb2Nfc2lnbmFsc19zZXR1cChjb25zdCBjaGFyICpuYW1lKTsKK3ZvaWQgc3VicHJvY19zaWduYWxzX2NsZWFudXAoaW50IGFyZ2MsIHZvaWQgKiphcmd2KTsKKworI2RlZmluZSBQUk9DUElQRSAxCisjZGVmaW5lIFBST0NXQVJOIDIKKyNkZWZpbmUgUFJPQ05PRVJSIDQKKworcGlkX3Qgc3VicHJvY19mb3JrKHZvaWQpOworaW50IHN1YnByb2Nfd2FpdChwaWRfdCBwaWQsIGNvbnN0IGNoYXIgKmRlc2MpOworaW50IHN1YnByb2NfY2hlY2soaW50IHN0YXR1cywgY29uc3QgY2hhciAqZGVzYywgaW50IGZsYWdzKTsKK2ludCBzdWJwcm9jX3dhaXRfY2hlY2socGlkX3QgcGlkLCBjb25zdCBjaGFyICpkZXNjLCBpbnQgZmxhZ3MpOworCitEUEtHX0VORF9ERUNMUworCisjZW5kaWYgLyogTElCRFBLR19TVUJQUk9DX0ggKi8KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvdGFyZm4uYyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvdGFyZm4uYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zZWExOTM2Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy90YXJmbi5jCkBAIC0wLDAgKzEsMzk5IEBACisvKgorICogbGliZHBrZyAtIERlYmlhbiBwYWNrYWdpbmcgc3VpdGUgbGlicmFyeSByb3V0aW5lcworICogdGFyZm4uYyAtIHRhciBhcmNoaXZlIGV4dHJhY3Rpb24gZnVuY3Rpb25zCisgKgorICogQ29weXJpZ2h0IMKpIDE5OTUgQnJ1Y2UgUGVyZW5zCisgKiBDb3B5cmlnaHQgwqkgMjAwNy0yMDEwIEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworI2luY2x1ZGUgPGNvbmZpZy5oPgorI2luY2x1ZGUgPGNvbXBhdC5oPgorCisjaW5jbHVkZSA8c3lzL3N0YXQuaD4KKworI2luY2x1ZGUgPGVycm5vLmg+CisjaW5jbHVkZSA8c3RyaW5nLmg+CisjaW5jbHVkZSA8cHdkLmg+CisjaW5jbHVkZSA8Z3JwLmg+CisjaW5jbHVkZSA8dW5pc3RkLmg+CisjaW5jbHVkZSA8aW50dHlwZXMuaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlIDxzdGRpby5oPgorCisjaW5jbHVkZSA8ZHBrZy9tYWNyb3MuaD4KKyNpbmNsdWRlIDxkcGtnL2Rwa2cuaD4KKyNpbmNsdWRlIDxkcGtnL3RhcmZuLmg+CisKKyNkZWZpbmUgVEFSX01BR0lDX1VTVEFSICJ1c3RhclwwIiAiMDAiCisjZGVmaW5lIFRBUl9NQUdJQ19HTlUgICAidXN0YXIgIiAgIiBcMCIKKworc3RydWN0IHRhcl9oZWFkZXIgeworCWNoYXIgbmFtZVsxMDBdOworCWNoYXIgbW9kZVs4XTsKKwljaGFyIHVpZFs4XTsKKwljaGFyIGdpZFs4XTsKKwljaGFyIHNpemVbMTJdOworCWNoYXIgbXRpbWVbMTJdOworCWNoYXIgY2hlY2tzdW1bOF07CisJY2hhciBsaW5rZmxhZzsKKwljaGFyIGxpbmtuYW1lWzEwMF07CisJY2hhciBtYWdpY1s4XTsKKwljaGFyIHVzZXJbMzJdOworCWNoYXIgZ3JvdXBbMzJdOworCWNoYXIgZGV2bWFqb3JbOF07CisJY2hhciBkZXZtaW5vcls4XTsKKworCS8qIE9ubHkgdmFsaWQgb24gdXN0YXIuICovCisJY2hhciBwcmVmaXhbMTU1XTsKK307CisKKy8qKgorICogQ29udmVydCBhbiBBU0NJSSBvY3RhbCBzdHJpbmcgdG8gYW4gaW50bWF4X3QuCisgKi8KK3N0YXRpYyBpbnRtYXhfdAorT3RvTShjb25zdCBjaGFyICpzLCBpbnQgc2l6ZSkKK3sKKwlpbnRtYXhfdCBuID0gMDsKKworCXdoaWxlICgqcyA9PSAnICcpIHsKKwkJcysrOworCQlzaXplLS07CisJfQorCisJd2hpbGUgKC0tc2l6ZSA+PSAwICYmICpzID49ICcwJyAmJiAqcyA8PSAnNycpCisJCW4gPSAobiAqIDAxMCkgKyAoKnMrKyAtICcwJyk7CisKKwlyZXR1cm4gbjsKK30KKworLyoqCisgKiBDb252ZXJ0IGEgc3RyaW5nIGJsb2NrIHRvIEMgTlVMLXRlcm1pbmF0ZWQgc3RyaW5nLgorICovCitzdGF0aWMgY2hhciAqCitTdG9DKGNvbnN0IGNoYXIgKnMsIGludCBzaXplKQoreworCWludCBsZW47CisJY2hhciAqc3RyOworCisJbGVuID0gc3RybmxlbihzLCBzaXplKTsKKwlzdHIgPSBtX21hbGxvYyhsZW4gKyAxKTsKKwltZW1jcHkoc3RyLCBzLCBsZW4pOworCXN0cltsZW5dID0gJ1wwJzsKKworCXJldHVybiBzdHI7Cit9CisKK3N0YXRpYyBjaGFyICoKK2dldF9wcmVmaXhfbmFtZShzdHJ1Y3QgdGFyX2hlYWRlciAqaCkKK3sKKwljaGFyICpwYXRoOworCisJbV9hc3ByaW50ZigmcGF0aCwgIiUuKnMvJS4qcyIsIChpbnQpc2l6ZW9mKGgtPnByZWZpeCksIGgtPnByZWZpeCwKKwkgICAgICAgICAgIChpbnQpc2l6ZW9mKGgtPm5hbWUpLCBoLT5uYW1lKTsKKworCXJldHVybiBwYXRoOworfQorCitzdGF0aWMgbW9kZV90CitnZXRfdW5peF9tb2RlKHN0cnVjdCB0YXJfaGVhZGVyICpoKQoreworCW1vZGVfdCBtb2RlOworCWVudW0gdGFyX2ZpbGV0eXBlIHR5cGU7CisKKwl0eXBlID0gKGVudW0gdGFyX2ZpbGV0eXBlKWgtPmxpbmtmbGFnOworCisJc3dpdGNoICh0eXBlKSB7CisJY2FzZSB0YXJfZmlsZXR5cGVfZmlsZTA6CisJY2FzZSB0YXJfZmlsZXR5cGVfZmlsZToKKwkJbW9kZSA9IFNfSUZSRUc7CisJCWJyZWFrOworCWNhc2UgdGFyX2ZpbGV0eXBlX3N5bWxpbms6CisJCW1vZGUgPSBTX0lGTE5LOworCQlicmVhazsKKwljYXNlIHRhcl9maWxldHlwZV9kaXI6CisJCW1vZGUgPSBTX0lGRElSOworCQlicmVhazsKKwljYXNlIHRhcl9maWxldHlwZV9jaGFyZGV2OgorCQltb2RlID0gU19JRkNIUjsKKwkJYnJlYWs7CisJY2FzZSB0YXJfZmlsZXR5cGVfYmxvY2tkZXY6CisJCW1vZGUgPSBTX0lGQkxLOworCQlicmVhazsKKwljYXNlIHRhcl9maWxldHlwZV9maWZvOgorCQltb2RlID0gU19JRklGTzsKKwkJYnJlYWs7CisJY2FzZSB0YXJfZmlsZXR5cGVfaGFyZGxpbms6CisJZGVmYXVsdDoKKwkJbW9kZSA9IDA7CisJCWJyZWFrOworCX0KKworCW1vZGUgfD0gT3RvTShoLT5tb2RlLCBzaXplb2YoaC0+bW9kZSkpOworCisJcmV0dXJuIG1vZGU7Cit9CisKK3N0YXRpYyBib29sCit0YXJfaGVhZGVyX2NoZWNrc3VtKHN0cnVjdCB0YXJfaGVhZGVyICpoKQoreworCXVuc2lnbmVkIGNoYXIgKnMgPSAodW5zaWduZWQgY2hhciAqKWg7CisJdW5zaWduZWQgaW50IGk7CisJY29uc3Qgc2l6ZV90IGNoZWNrc3VtX29mZnNldCA9IG9mZnNldG9mKHN0cnVjdCB0YXJfaGVhZGVyLCBjaGVja3N1bSk7CisJbG9uZyBjaGVja3N1bTsKKwlsb25nIHN1bTsKKworCWNoZWNrc3VtID0gT3RvTShoLT5jaGVja3N1bSwgc2l6ZW9mKGgtPmNoZWNrc3VtKSk7CisKKwkvKiBUcmVhdCBjaGVja3N1bSBmaWVsZCBhcyBhbGwgYmxhbmsuICovCisJc3VtID0gJyAnICogc2l6ZW9mKGgtPmNoZWNrc3VtKTsKKworCWZvciAoaSA9IGNoZWNrc3VtX29mZnNldDsgaSA+IDA7IGktLSkKKwkJc3VtICs9ICpzKys7CisKKwkvKiBTa2lwIHRoZSByZWFsIGNoZWNrc3VtIGZpZWxkLiAqLworCXMgKz0gc2l6ZW9mKGgtPmNoZWNrc3VtKTsKKworCWZvciAoaSA9IFRBUkJMS1NaIC0gY2hlY2tzdW1fb2Zmc2V0IC0gc2l6ZW9mKGgtPmNoZWNrc3VtKTsgaSA+IDA7IGktLSkKKwkJc3VtICs9ICpzKys7CisKKwlyZXR1cm4gKHN1bSA9PSBjaGVja3N1bSk7Cit9CisKK3N0YXRpYyBpbnQKK3Rhcl9oZWFkZXJfZGVjb2RlKHN0cnVjdCB0YXJfaGVhZGVyICpoLCBzdHJ1Y3QgdGFyX2VudHJ5ICpkKQoreworCXN0cnVjdCBwYXNzd2QgKnBhc3N3ZCA9IE5VTEw7CisJc3RydWN0IGdyb3VwICpncm91cCA9IE5VTEw7CisKKwlpZiAobWVtY21wKGgtPm1hZ2ljLCBUQVJfTUFHSUNfR05VLCA2KSA9PSAwKQorCQlkLT5mb3JtYXQgPSB0YXJfZm9ybWF0X2dudTsKKwllbHNlIGlmIChtZW1jbXAoaC0+bWFnaWMsIFRBUl9NQUdJQ19VU1RBUiwgNikgPT0gMCkKKwkJZC0+Zm9ybWF0ID0gdGFyX2Zvcm1hdF91c3RhcjsKKwllbHNlCisJCWQtPmZvcm1hdCA9IHRhcl9mb3JtYXRfb2xkOworCisJZC0+dHlwZSA9IChlbnVtIHRhcl9maWxldHlwZSloLT5saW5rZmxhZzsKKwlpZiAoZC0+dHlwZSA9PSB0YXJfZmlsZXR5cGVfZmlsZTApCisJCWQtPnR5cGUgPSB0YXJfZmlsZXR5cGVfZmlsZTsKKworCS8qIENvbmNhdGVuYXRlIHByZWZpeCBhbmQgbmFtZSB0byBzdXBwb3J0IHVzdGFyIHN0eWxlIGxvbmcgbmFtZXMuICovCisJaWYgKGQtPmZvcm1hdCA9PSB0YXJfZm9ybWF0X3VzdGFyICYmIGgtPnByZWZpeFswXSAhPSAnXDAnKQorCQlkLT5uYW1lID0gZ2V0X3ByZWZpeF9uYW1lKGgpOworCWVsc2UKKwkJZC0+bmFtZSA9IFN0b0MoaC0+bmFtZSwgc2l6ZW9mKGgtPm5hbWUpKTsKKwlkLT5saW5rbmFtZSA9IFN0b0MoaC0+bGlua25hbWUsIHNpemVvZihoLT5saW5rbmFtZSkpOworCWQtPnN0YXQubW9kZSA9IGdldF91bml4X21vZGUoaCk7CisJZC0+c2l6ZSA9IChvZmZfdClPdG9NKGgtPnNpemUsIHNpemVvZihoLT5zaXplKSk7CisJZC0+bXRpbWUgPSAodGltZV90KU90b00oaC0+bXRpbWUsIHNpemVvZihoLT5tdGltZSkpOworCWQtPmRldiA9ICgoT3RvTShoLT5kZXZtYWpvciwgc2l6ZW9mKGgtPmRldm1ham9yKSkgJiAweGZmKSA8PCA4KSB8CisJICAgICAgICAgKE90b00oaC0+ZGV2bWlub3IsIHNpemVvZihoLT5kZXZtaW5vcikpICYgMHhmZik7CisKKwlpZiAoKmgtPnVzZXIpCisJCXBhc3N3ZCA9IGdldHB3bmFtKGgtPnVzZXIpOworCWlmIChwYXNzd2QpCisJCWQtPnN0YXQudWlkID0gcGFzc3dkLT5wd191aWQ7CisJZWxzZQorCQlkLT5zdGF0LnVpZCA9ICh1aWRfdClPdG9NKGgtPnVpZCwgc2l6ZW9mKGgtPnVpZCkpOworCisJaWYgKCpoLT5ncm91cCkKKwkJZ3JvdXAgPSBnZXRncm5hbShoLT5ncm91cCk7CisJaWYgKGdyb3VwKQorCQlkLT5zdGF0LmdpZCA9IGdyb3VwLT5ncl9naWQ7CisJZWxzZQorCQlkLT5zdGF0LmdpZCA9IChnaWRfdClPdG9NKGgtPmdpZCwgc2l6ZW9mKGgtPmdpZCkpOworCisJcmV0dXJuIHRhcl9oZWFkZXJfY2hlY2tzdW0oaCk7Cit9CisKKy8qKgorICogRGVjb2RlIGEgR05VIGxvbmdsaW5rIG9yIGxvbmduYW1lIGZyb20gdGhlIHRhciBhcmNoaXZlLgorICoKKyAqIFRoZSB3YXkgdGhlIEdOVSBsb25ne2xpbmssbmFtZX0gc3R1ZmYgd29ya3MgaXMgbGlrZSB0aGlzOgorICoKKyAqIC0gVGhlIGZpcnN0IGhlYWRlciBpcyBhIOKAnGR1bW154oCdIGhlYWRlciB0aGF0IGNvbnRhaW5zIHRoZSBzaXplIG9mIHRoZQorICogICBmaWxlbmFtZS4KKyAqIC0gVGhlIG5leHQgTiBoZWFkZXJzIGNvbnRhaW4gdGhlIGZpbGVuYW1lLgorICogLSBBZnRlciB0aGUgaGVhZGVycyB3aXRoIHRoZSBmaWxlbmFtZSBjb21lcyB0aGUg4oCccmVhbOKAnSBoZWFkZXIgd2l0aCBhCisgKiAgIGJvZ3VzIG5hbWUgb3IgbGluay4KKyAqLworc3RhdGljIGludAordGFyX2dudV9sb25nKHZvaWQgKmN0eCwgY29uc3Qgc3RydWN0IHRhcl9vcGVyYXRpb25zICpvcHMsIHN0cnVjdCB0YXJfZW50cnkgKnRlLAorICAgICAgICAgICAgIGNoYXIgKipsb25ncCkKK3sKKwljaGFyIGJ1ZltUQVJCTEtTWl07CisJY2hhciAqYnA7CisJaW50IHN0YXR1cyA9IDA7CisJaW50IGxvbmdfcmVhZDsKKworCWZyZWUoKmxvbmdwKTsKKwkqbG9uZ3AgPSBicCA9IG1fbWFsbG9jKHRlLT5zaXplKTsKKworCWZvciAobG9uZ19yZWFkID0gdGUtPnNpemU7IGxvbmdfcmVhZCA+IDA7IGxvbmdfcmVhZCAtPSBUQVJCTEtTWikgeworCQlpbnQgY29weXNpemU7CisKKwkJc3RhdHVzID0gb3BzLT5yZWFkKGN0eCwgYnVmLCBUQVJCTEtTWik7CisJCWlmIChzdGF0dXMgPT0gVEFSQkxLU1opCisJCQlzdGF0dXMgPSAwOworCQllbHNlIHsKKwkJCS8qIFJlYWQgcGFydGlhbCBoZWFkZXIgcmVjb3JkPyAqLworCQkJaWYgKHN0YXR1cyA+IDApIHsKKwkJCQllcnJubyA9IDA7CisJCQkJc3RhdHVzID0gLTE7CisJCQl9CisKKwkJCS8qIElmIHdlIGRpZG4ndCBnZXQgVEFSQkxLU1ogYnl0ZXMgcmVhZCwgcHVudC4gKi8KKwkJCWJyZWFrOworCQl9CisKKwkJY29weXNpemUgPSBtaW4obG9uZ19yZWFkLCBUQVJCTEtTWik7CisJCW1lbWNweShicCwgYnVmLCBjb3B5c2l6ZSk7CisJCWJwICs9IGNvcHlzaXplOworCX07CisKKwlyZXR1cm4gc3RhdHVzOworfQorCitzdHJ1Y3Qgc3ltbGlua0xpc3QgeworCXN0cnVjdCBzeW1saW5rTGlzdCAqbmV4dDsKKwlzdHJ1Y3QgdGFyX2VudHJ5IGg7Cit9OworCitpbnQKK3Rhcl9leHRyYWN0b3Iodm9pZCAqY3R4LCBjb25zdCBzdHJ1Y3QgdGFyX29wZXJhdGlvbnMgKm9wcykKK3sKKwlpbnQgc3RhdHVzOworCWNoYXIgYnVmZmVyW1RBUkJMS1NaXTsKKwlzdHJ1Y3QgdGFyX2VudHJ5IGg7CisKKwljaGFyICpuZXh0X2xvbmdfbmFtZSwgKm5leHRfbG9uZ19saW5rOworCXN0cnVjdCBzeW1saW5rTGlzdCAqc3ltbGlua19oZWFkLCAqc3ltbGlua190YWlsLCAqc3ltbGlua19ub2RlOworCisJbmV4dF9sb25nX25hbWUgPSBOVUxMOworCW5leHRfbG9uZ19saW5rID0gTlVMTDsKKwlzeW1saW5rX3RhaWwgPSBzeW1saW5rX2hlYWQgPSBOVUxMOworCisJaC5uYW1lID0gTlVMTDsKKwloLmxpbmtuYW1lID0gTlVMTDsKKworCXdoaWxlICgoc3RhdHVzID0gb3BzLT5yZWFkKGN0eCwgYnVmZmVyLCBUQVJCTEtTWikpID09IFRBUkJMS1NaKSB7CisJCWludCBuYW1lX2xlbjsKKworCQlpZiAoIXRhcl9oZWFkZXJfZGVjb2RlKChzdHJ1Y3QgdGFyX2hlYWRlciAqKWJ1ZmZlciwgJmgpKSB7CisJCQlpZiAoaC5uYW1lWzBdID09ICdcMCcpIHsKKwkJCQkvKiBFbmQgb2YgdGFwZS4gKi8KKwkJCQlzdGF0dXMgPSAwOworCQkJfSBlbHNlIHsKKwkJCQkvKiBJbmRpY2F0ZXMgYnJva2VuIHRhcmZpbGU6CisJCQkJICog4oCcSGVhZGVyIGNoZWNrc3VtIGVycm9y4oCdLiAqLworCQkJCWVycm5vID0gMDsKKwkJCQlzdGF0dXMgPSAtMTsKKwkJCX0KKwkJCWJyZWFrOworCQl9CisJCWlmIChoLnR5cGUgIT0gdGFyX2ZpbGV0eXBlX2dudV9sb25nbGluayAmJgorCQkgICAgaC50eXBlICE9IHRhcl9maWxldHlwZV9nbnVfbG9uZ25hbWUpIHsKKwkJCWlmIChuZXh0X2xvbmdfbmFtZSkKKwkJCQloLm5hbWUgPSBuZXh0X2xvbmdfbmFtZTsKKworCQkJaWYgKG5leHRfbG9uZ19saW5rKQorCQkJCWgubGlua25hbWUgPSBuZXh0X2xvbmdfbGluazsKKworCQkJbmV4dF9sb25nX2xpbmsgPSBOVUxMOworCQkJbmV4dF9sb25nX25hbWUgPSBOVUxMOworCQl9CisKKwkJaWYgKGgubmFtZVswXSA9PSAnXDAnKSB7CisJCQkvKiBJbmRpY2F0ZXMgYnJva2VuIHRhcmZpbGU6IOKAnEJhZCBoZWFkZXIgZGF0YeKAnS4gKi8KKwkJCWVycm5vID0gMDsKKwkJCXN0YXR1cyA9IC0xOworCQkJYnJlYWs7CisJCX0KKworCQluYW1lX2xlbiA9IHN0cmxlbihoLm5hbWUpOworCisJCXN3aXRjaCAoaC50eXBlKSB7CisJCWNhc2UgdGFyX2ZpbGV0eXBlX2ZpbGU6CisJCQkvKiBDb21wYXRpYmlsaXR5IHdpdGggcHJlLUFOU0kgdXN0YXIuICovCisJCQlpZiAoaC5uYW1lW25hbWVfbGVuIC0gMV0gIT0gJy8nKSB7CisJCQkJc3RhdHVzID0gb3BzLT5leHRyYWN0X2ZpbGUoY3R4LCAmaCk7CisJCQkJYnJlYWs7CisJCQl9CisJCQkvKiBFbHNlLCBmYWxsIHRocm91Z2guICovCisJCWNhc2UgdGFyX2ZpbGV0eXBlX2RpcjoKKwkJCWlmIChoLm5hbWVbbmFtZV9sZW4gLSAxXSA9PSAnLycpIHsKKwkJCQloLm5hbWVbbmFtZV9sZW4gLSAxXSA9ICdcMCc7CisJCQl9CisJCQlzdGF0dXMgPSBvcHMtPm1rZGlyKGN0eCwgJmgpOworCQkJYnJlYWs7CisJCWNhc2UgdGFyX2ZpbGV0eXBlX2hhcmRsaW5rOgorCQkJc3RhdHVzID0gb3BzLT5saW5rKGN0eCwgJmgpOworCQkJYnJlYWs7CisJCWNhc2UgdGFyX2ZpbGV0eXBlX3N5bWxpbms6CisJCQlzeW1saW5rX25vZGUgPSBtX21hbGxvYyhzaXplb2YoKnN5bWxpbmtfbm9kZSkpOworCQkJbWVtY3B5KCZzeW1saW5rX25vZGUtPmgsICZoLCBzaXplb2Yoc3RydWN0IHRhcl9lbnRyeSkpOworCQkJc3ltbGlua19ub2RlLT5oLm5hbWUgPSBtX3N0cmR1cChoLm5hbWUpOworCQkJc3ltbGlua19ub2RlLT5oLmxpbmtuYW1lID0gbV9zdHJkdXAoaC5saW5rbmFtZSk7CisJCQlzeW1saW5rX25vZGUtPm5leHQgPSBOVUxMOworCisJCQlpZiAoc3ltbGlua19oZWFkKQorCQkJCXN5bWxpbmtfdGFpbC0+bmV4dCA9IHN5bWxpbmtfbm9kZTsKKwkJCWVsc2UKKwkJCQlzeW1saW5rX2hlYWQgPSBzeW1saW5rX25vZGU7CisJCQlzeW1saW5rX3RhaWwgPSBzeW1saW5rX25vZGU7CisJCQlzdGF0dXMgPSAwOworCQkJYnJlYWs7CisJCWNhc2UgdGFyX2ZpbGV0eXBlX2NoYXJkZXY6CisJCWNhc2UgdGFyX2ZpbGV0eXBlX2Jsb2NrZGV2OgorCQljYXNlIHRhcl9maWxldHlwZV9maWZvOgorCQkJc3RhdHVzID0gb3BzLT5ta25vZChjdHgsICZoKTsKKwkJCWJyZWFrOworCQljYXNlIHRhcl9maWxldHlwZV9nbnVfbG9uZ2xpbms6CisJCQlzdGF0dXMgPSB0YXJfZ251X2xvbmcoY3R4LCBvcHMsICZoLCAmbmV4dF9sb25nX2xpbmspOworCQkJYnJlYWs7CisJCWNhc2UgdGFyX2ZpbGV0eXBlX2dudV9sb25nbmFtZToKKwkJCXN0YXR1cyA9IHRhcl9nbnVfbG9uZyhjdHgsIG9wcywgJmgsICZuZXh0X2xvbmdfbmFtZSk7CisJCQlicmVhazsKKwkJZGVmYXVsdDoKKwkJCS8qIEluZGljYXRlcyBicm9rZW4gdGFyZmlsZTog4oCcQmFkIGhlYWRlciBmaWVsZOKAnS4gKi8KKwkJCWVycm5vID0gMDsKKwkJCXN0YXR1cyA9IC0xOworCQl9CisJCWlmIChzdGF0dXMgIT0gMCkKKwkJCS8qIFBhc3Mgb24gc3RhdHVzIGZyb20gY29yb3V0aW5lLiAqLworCQkJYnJlYWs7CisJfQorCisJd2hpbGUgKHN5bWxpbmtfaGVhZCkgeworCQlzeW1saW5rX25vZGUgPSBzeW1saW5rX2hlYWQtPm5leHQ7CisJCWlmIChzdGF0dXMgPT0gMCkKKwkJCXN0YXR1cyA9IG9wcy0+c3ltbGluayhjdHgsICZzeW1saW5rX2hlYWQtPmgpOworCQlmcmVlKHN5bWxpbmtfaGVhZC0+aC5uYW1lKTsKKwkJZnJlZShzeW1saW5rX2hlYWQtPmgubGlua25hbWUpOworCQlmcmVlKHN5bWxpbmtfaGVhZCk7CisJCXN5bWxpbmtfaGVhZCA9IHN5bWxpbmtfbm9kZTsKKwl9CisJZnJlZShoLm5hbWUpOworCWZyZWUoaC5saW5rbmFtZSk7CisKKwlpZiAoc3RhdHVzID4gMCkgeworCQkvKiBJbmRpY2F0ZXMgYnJva2VuIHRhcmZpbGU6IOKAnFJlYWQgcGFydGlhbCBoZWFkZXIgcmVjb3Jk4oCdLiAqLworCQllcnJubyA9IDA7CisJCXJldHVybiAtMTsKKwl9IGVsc2UgeworCQkvKiBSZXR1cm4gd2hhdGV2ZXIgSS9PIGZ1bmN0aW9uIHJldHVybmVkLiAqLworCQlyZXR1cm4gc3RhdHVzOworCX0KK30KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvdGFyZm4uaCBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvdGFyZm4uaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xZTA3MDU4Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy90YXJmbi5oCkBAIC0wLDAgKzEsODEgQEAKKy8qCisgKiBsaWJkcGtnIC0gRGViaWFuIHBhY2thZ2luZyBzdWl0ZSBsaWJyYXJ5IHJvdXRpbmVzCisgKiB0YXJmbi5oIC0gdGFyIGFyY2hpdmUgZXh0cmFjdGlvbiBmdW5jdGlvbnMKKyAqCisgKiBDb3B5cmlnaHQgwqkgMTk5NSBCcnVjZSBQZXJlbnMKKyAqIENvcHlyaWdodCDCqSAyMDA5LTIwMTAgR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaWZuZGVmIExJQkRQS0dfVEFSRk5fSAorI2RlZmluZSBMSUJEUEtHX1RBUkZOX0gKKworI2luY2x1ZGUgPHN5cy90eXBlcy5oPgorCisjaW5jbHVkZSA8dW5pc3RkLmg+CisjaW5jbHVkZSA8c3RkbGliLmg+CisKKyNpbmNsdWRlIDxkcGtnL2ZpbGUuaD4KKworI2RlZmluZSBUQVJCTEtTWgk1MTIKKworZW51bSB0YXJfZm9ybWF0IHsKKwl0YXJfZm9ybWF0X29sZCwKKwl0YXJfZm9ybWF0X2dudSwKKwl0YXJfZm9ybWF0X3VzdGFyLAorCXRhcl9mb3JtYXRfcGF4LAorfTsKKworZW51bSB0YXJfZmlsZXR5cGUgeworCXRhcl9maWxldHlwZV9maWxlMCA9ICdcMCcsCS8qIEZvciBjb21wYXRpYmlsaXR5IHdpdGggZGVjYWRlcy1vbGQgYnVnICovCisJdGFyX2ZpbGV0eXBlX2ZpbGUgPSAnMCcsCisJdGFyX2ZpbGV0eXBlX2hhcmRsaW5rID0gJzEnLAorCXRhcl9maWxldHlwZV9zeW1saW5rID0gJzInLAorCXRhcl9maWxldHlwZV9jaGFyZGV2ID0gJzMnLAorCXRhcl9maWxldHlwZV9ibG9ja2RldiA9ICc0JywKKwl0YXJfZmlsZXR5cGVfZGlyID0gJzUnLAorCXRhcl9maWxldHlwZV9maWZvID0gJzYnLAorCXRhcl9maWxldHlwZV9nbnVfbG9uZ2xpbmsgPSAnSycsCisJdGFyX2ZpbGV0eXBlX2dudV9sb25nbmFtZSA9ICdMJywKK307CisKK3N0cnVjdCB0YXJfZW50cnkgeworCWVudW0gdGFyX2Zvcm1hdCBmb3JtYXQ7CS8qIFRhciBhcmNoaXZlIGZvcm1hdC4gKi8KKwllbnVtIHRhcl9maWxldHlwZSB0eXBlOwkvKiBSZWd1bGFyLCBEaXJlY3RvcnksIFNwZWNpYWwsIExpbmsgKi8KKwljaGFyICpuYW1lOwkJLyogRmlsZSBuYW1lICovCisJY2hhciAqbGlua25hbWU7CQkvKiBOYW1lIGZvciBzeW1ib2xpYyBhbmQgaGFyZCBsaW5rcyAqLworCW9mZl90IHNpemU7CQkvKiBTaXplIG9mIGZpbGUgKi8KKwl0aW1lX3QgbXRpbWU7CQkvKiBMYXN0LW1vZGlmaWVkIHRpbWUuICovCisJZGV2X3QgZGV2OwkJLyogU3BlY2lhbCBkZXZpY2UgZm9yIG1rbm9kKCkgKi8KKworCXN0cnVjdCBmaWxlX3N0YXQgc3RhdDsKK307CisKK3R5cGVkZWYgaW50IHRhcl9yZWFkX2Z1bmModm9pZCAqY3R4LCBjaGFyICpidWZmZXIsIGludCBsZW5ndGgpOwordHlwZWRlZiBpbnQgdGFyX21ha2VfZnVuYyh2b2lkICpjdHgsIHN0cnVjdCB0YXJfZW50cnkgKmgpOworCitzdHJ1Y3QgdGFyX29wZXJhdGlvbnMgeworCXRhcl9yZWFkX2Z1bmMgKnJlYWQ7CisKKwl0YXJfbWFrZV9mdW5jICpleHRyYWN0X2ZpbGU7CisJdGFyX21ha2VfZnVuYyAqbGluazsKKwl0YXJfbWFrZV9mdW5jICpzeW1saW5rOworCXRhcl9tYWtlX2Z1bmMgKm1rZGlyOworCXRhcl9tYWtlX2Z1bmMgKm1rbm9kOworfTsKKworaW50IHRhcl9leHRyYWN0b3Iodm9pZCAqY3R4LCBjb25zdCBzdHJ1Y3QgdGFyX29wZXJhdGlvbnMgKm9wcyk7CisKKyNlbmRpZgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy90ZXN0LmggYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL3Rlc3QuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xNzM0MmZkCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy90ZXN0LmgKQEAgLTAsMCArMSw1NCBAQAorLyoKKyAqIGxpYmRwa2cgLSBEZWJpYW4gcGFja2FnaW5nIHN1aXRlIGxpYnJhcnkgcm91dGluZXMKKyAqIHRlc3QuaCAtIHRlc3Qgc3VpdGUgc3VwcG9ydAorICoKKyAqIENvcHlyaWdodCDCqSAyMDA5IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworI2lmbmRlZiBMSUJEUEtHX1RFU1RfSAorI2RlZmluZSBMSUJEUEtHX1RFU1RfSAorCisjaW5jbHVkZSA8YXNzZXJ0Lmg+CisjaW5jbHVkZSA8c3RyaW5nLmg+CisKKyNpZm5kZWYgVEVTVF9NQUlOX1BST1ZJREVECisjaW5jbHVkZSA8ZHBrZy9laGFuZGxlLmg+CisjZW5kaWYKKworLyogWFhYOiBVc2luZyBhc3NlcnQgaXMgcHJvYmxlbWF0aWMgd2l0aCBOREVCVUcuICovCisKKyNkZWZpbmUgdGVzdF9wYXNzKGEpCQkJYXNzZXJ0KChhKSkKKyNkZWZpbmUgdGVzdF9mYWlsKGEpCQkJYXNzZXJ0KCEoYSkpCisjZGVmaW5lIHRlc3Rfc3RyKGEsIG9wLCBiKQkJYXNzZXJ0KHN0cmNtcCgoYSksIChiKSkgb3AgMCkKKyNkZWZpbmUgdGVzdF9tZW0oYSwgb3AsIGIsIHNpemUpCWFzc2VydChtZW1jbXAoKGEpLCAoYiksIChzaXplKSkgb3AgMCkKKworI2lmbmRlZiBURVNUX01BSU5fUFJPVklERUQKK3N0YXRpYyB2b2lkIHRlc3Qodm9pZCk7CisKK2ludAorbWFpbihpbnQgYXJnYywgY2hhciAqKmFyZ3YpCit7CisJcHVzaF9lcnJvcl9jb250ZXh0KCk7CisKKwl0ZXN0KCk7CisKKwlwb3BfZXJyb3JfY29udGV4dChlaGZsYWdfbm9ybWFsdGlkeSk7CisKKwlyZXR1cm4gMDsKK30KKyNlbmRpZgorCisjZW5kaWYKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvdGVzdC9NYWtlZmlsZS5hbSBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvdGVzdC9NYWtlZmlsZS5hbQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wNzk1YTc4Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy90ZXN0L01ha2VmaWxlLmFtCkBAIC0wLDAgKzEsMjkgQEAKKyMjIFByb2Nlc3MgdGhpcyBmaWxlIHdpdGggYXV0b21ha2UgdG8gcHJvZHVjZSBNYWtlZmlsZS5pbgorCitBTV9DUFBGTEFHUyA9IFwKKwktREFETUlORElSPVwiJChhZG1pbmRpcilcIiBcCisJLWlkaXJhZnRlciAkKHRvcF9zcmNkaXIpL2xpYi9jb21wYXQgXAorCS1JJCh0b3BfYnVpbGRkaXIpIFwKKwktSSQodG9wX3NyY2RpcikvbGliCitMREFERCA9IC4uL2xpYmRwa2cuYQorCisKKyMgVGhlIHRlc3RzIGFyZSBzb3J0ZWQgaW4gb3JkZXIgb2YgaW5jcmVhc2luZyBjb21wbGV4aXR5LgorY2hlY2tfUFJPR1JBTVMgPSBcCisJdC10ZXN0IFwKKwl0LW1hY3JvcyBcCisJdC1zdHJpbmcgXAorCXQtYnVmZmVyIFwKKwl0LXBhdGggXAorCXQtcHJvZ25hbWUgXAorCXQtc3VicHJvYyBcCisJdC1jb21tYW5kIFwKKwl0LXZhcmJ1ZiBcCisJdC1hciBcCisJdC12ZXJzaW9uIFwKKwl0LXBrZ2luZm8gXAorCXQtcGtnLWxpc3QgXAorCXQtcGtnLXF1ZXVlIFwKKwl0LW1vZC1kYgorCitURVNUUyA9ICQoY2hlY2tfUFJPR1JBTVMpCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL3Rlc3QvTWFrZWZpbGUuaW4gYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL3Rlc3QvTWFrZWZpbGUuaW4KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNmQ0OWExZAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvdGVzdC9NYWtlZmlsZS5pbgpAQCAtMCwwICsxLDcxOCBAQAorIyBNYWtlZmlsZS5pbiBnZW5lcmF0ZWQgYnkgYXV0b21ha2UgMS4xMS4xIGZyb20gTWFrZWZpbGUuYW0uCisjIEBjb25maWd1cmVfaW5wdXRACisKKyMgQ29weXJpZ2h0IChDKSAxOTk0LCAxOTk1LCAxOTk2LCAxOTk3LCAxOTk4LCAxOTk5LCAyMDAwLCAyMDAxLCAyMDAyLAorIyAyMDAzLCAyMDA0LCAyMDA1LCAyMDA2LCAyMDA3LCAyMDA4LCAyMDA5ICBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sCisjIEluYy4KKyMgVGhpcyBNYWtlZmlsZS5pbiBpcyBmcmVlIHNvZnR3YXJlOyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uCisjIGdpdmVzIHVubGltaXRlZCBwZXJtaXNzaW9uIHRvIGNvcHkgYW5kL29yIGRpc3RyaWJ1dGUgaXQsCisjIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb25zLCBhcyBsb25nIGFzIHRoaXMgbm90aWNlIGlzIHByZXNlcnZlZC4KKworIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZLCB0byB0aGUgZXh0ZW50IHBlcm1pdHRlZCBieSBsYXc7IHdpdGhvdXQKKyMgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQQorIyBQQVJUSUNVTEFSIFBVUlBPU0UuCisKK0BTRVRfTUFLRUAKK1ZQQVRIID0gQHNyY2RpckAKK3BrZ2RhdGFkaXIgPSAkKGRhdGFkaXIpL0BQQUNLQUdFQAorcGtnaW5jbHVkZWRpciA9ICQoaW5jbHVkZWRpcikvQFBBQ0tBR0VACitwa2dsaWJkaXIgPSAkKGxpYmRpcikvQFBBQ0tBR0VACitwa2dsaWJleGVjZGlyID0gJChsaWJleGVjZGlyKS9AUEFDS0FHRUAKK2FtX19jZCA9IENEUEFUSD0iJCR7WlNIX1ZFUlNJT04rLn0kKFBBVEhfU0VQQVJBVE9SKSIgJiYgY2QKK2luc3RhbGxfc2hfREFUQSA9ICQoaW5zdGFsbF9zaCkgLWMgLW0gNjQ0CitpbnN0YWxsX3NoX1BST0dSQU0gPSAkKGluc3RhbGxfc2gpIC1jCitpbnN0YWxsX3NoX1NDUklQVCA9ICQoaW5zdGFsbF9zaCkgLWMKK0lOU1RBTExfSEVBREVSID0gJChJTlNUQUxMX0RBVEEpCit0cmFuc2Zvcm0gPSAkKHByb2dyYW1fdHJhbnNmb3JtX25hbWUpCitOT1JNQUxfSU5TVEFMTCA9IDoKK1BSRV9JTlNUQUxMID0gOgorUE9TVF9JTlNUQUxMID0gOgorTk9STUFMX1VOSU5TVEFMTCA9IDoKK1BSRV9VTklOU1RBTEwgPSA6CitQT1NUX1VOSU5TVEFMTCA9IDoKK2J1aWxkX3RyaXBsZXQgPSBAYnVpbGRACitob3N0X3RyaXBsZXQgPSBAaG9zdEAKK2NoZWNrX1BST0dSQU1TID0gdC10ZXN0JChFWEVFWFQpIHQtbWFjcm9zJChFWEVFWFQpIHQtc3RyaW5nJChFWEVFWFQpIFwKKwl0LWJ1ZmZlciQoRVhFRVhUKSB0LXBhdGgkKEVYRUVYVCkgdC1wcm9nbmFtZSQoRVhFRVhUKSBcCisJdC1zdWJwcm9jJChFWEVFWFQpIHQtY29tbWFuZCQoRVhFRVhUKSB0LXZhcmJ1ZiQoRVhFRVhUKSBcCisJdC1hciQoRVhFRVhUKSB0LXZlcnNpb24kKEVYRUVYVCkgdC1wa2dpbmZvJChFWEVFWFQpIFwKKwl0LXBrZy1saXN0JChFWEVFWFQpIHQtcGtnLXF1ZXVlJChFWEVFWFQpIHQtbW9kLWRiJChFWEVFWFQpCitzdWJkaXIgPSBsaWIvZHBrZy90ZXN0CitESVNUX0NPTU1PTiA9ICQoc3JjZGlyKS9NYWtlZmlsZS5hbSAkKHNyY2RpcikvTWFrZWZpbGUuaW4KK0FDTE9DQUxfTTQgPSAkKHRvcF9zcmNkaXIpL2FjbG9jYWwubTQKK2FtX19hY2xvY2FsX200X2RlcHMgPSAkKHRvcF9zcmNkaXIpL200L2Rwa2ctYXJjaC5tNCBcCisJJCh0b3Bfc3JjZGlyKS9tNC9kcGtnLWJ1aWxkLm00IFwKKwkkKHRvcF9zcmNkaXIpL200L2Rwa2ctY29tcGlsZXIubTQgXAorCSQodG9wX3NyY2RpcikvbTQvZHBrZy1jb3ZlcmFnZS5tNCBcCisJJCh0b3Bfc3JjZGlyKS9tNC9kcGtnLWZ1bmNzLm00ICQodG9wX3NyY2RpcikvbTQvZHBrZy1saWJzLm00IFwKKwkkKHRvcF9zcmNkaXIpL200L2Rwa2ctbGlua2VyLm00ICQodG9wX3NyY2RpcikvbTQvZHBrZy1wcm9ncy5tNCBcCisJJCh0b3Bfc3JjZGlyKS9tNC9kcGtnLXR5cGVzLm00IFwKKwkkKHRvcF9zcmNkaXIpL200L2Rwa2ctdW5pY29kZS5tNCAkKHRvcF9zcmNkaXIpL200L2dldHRleHQubTQgXAorCSQodG9wX3NyY2RpcikvbTQvaWNvbnYubTQgJCh0b3Bfc3JjZGlyKS9tNC9pbnRsbWFjb3N4Lm00IFwKKwkkKHRvcF9zcmNkaXIpL200L2xpYi1sZC5tNCAkKHRvcF9zcmNkaXIpL200L2xpYi1saW5rLm00IFwKKwkkKHRvcF9zcmNkaXIpL200L2xpYi1wcmVmaXgubTQgJCh0b3Bfc3JjZGlyKS9tNC9ubHMubTQgXAorCSQodG9wX3NyY2RpcikvbTQvcG8ubTQgJCh0b3Bfc3JjZGlyKS9tNC9wcm9ndGVzdC5tNCBcCisJJCh0b3Bfc3JjZGlyKS9jb25maWd1cmUuYWMKK2FtX19jb25maWd1cmVfZGVwcyA9ICQoYW1fX2FjbG9jYWxfbTRfZGVwcykgJChDT05GSUdVUkVfREVQRU5ERU5DSUVTKSBcCisJJChBQ0xPQ0FMX000KQorbWtpbnN0YWxsZGlycyA9ICQoaW5zdGFsbF9zaCkgLWQKK0NPTkZJR19IRUFERVIgPSAkKHRvcF9idWlsZGRpcikvY29uZmlnLmgKK0NPTkZJR19DTEVBTl9GSUxFUyA9CitDT05GSUdfQ0xFQU5fVlBBVEhfRklMRVMgPQordF9hcl9TT1VSQ0VTID0gdC1hci5jCit0X2FyX09CSkVDVFMgPSB0LWFyLiQoT0JKRVhUKQordF9hcl9MREFERCA9ICQoTERBREQpCit0X2FyX0RFUEVOREVOQ0lFUyA9IC4uL2xpYmRwa2cuYQordF9idWZmZXJfU09VUkNFUyA9IHQtYnVmZmVyLmMKK3RfYnVmZmVyX09CSkVDVFMgPSB0LWJ1ZmZlci4kKE9CSkVYVCkKK3RfYnVmZmVyX0xEQUREID0gJChMREFERCkKK3RfYnVmZmVyX0RFUEVOREVOQ0lFUyA9IC4uL2xpYmRwa2cuYQordF9jb21tYW5kX1NPVVJDRVMgPSB0LWNvbW1hbmQuYwordF9jb21tYW5kX09CSkVDVFMgPSB0LWNvbW1hbmQuJChPQkpFWFQpCit0X2NvbW1hbmRfTERBREQgPSAkKExEQUREKQordF9jb21tYW5kX0RFUEVOREVOQ0lFUyA9IC4uL2xpYmRwa2cuYQordF9tYWNyb3NfU09VUkNFUyA9IHQtbWFjcm9zLmMKK3RfbWFjcm9zX09CSkVDVFMgPSB0LW1hY3Jvcy4kKE9CSkVYVCkKK3RfbWFjcm9zX0xEQUREID0gJChMREFERCkKK3RfbWFjcm9zX0RFUEVOREVOQ0lFUyA9IC4uL2xpYmRwa2cuYQordF9tb2RfZGJfU09VUkNFUyA9IHQtbW9kLWRiLmMKK3RfbW9kX2RiX09CSkVDVFMgPSB0LW1vZC1kYi4kKE9CSkVYVCkKK3RfbW9kX2RiX0xEQUREID0gJChMREFERCkKK3RfbW9kX2RiX0RFUEVOREVOQ0lFUyA9IC4uL2xpYmRwa2cuYQordF9wYXRoX1NPVVJDRVMgPSB0LXBhdGguYwordF9wYXRoX09CSkVDVFMgPSB0LXBhdGguJChPQkpFWFQpCit0X3BhdGhfTERBREQgPSAkKExEQUREKQordF9wYXRoX0RFUEVOREVOQ0lFUyA9IC4uL2xpYmRwa2cuYQordF9wa2dfbGlzdF9TT1VSQ0VTID0gdC1wa2ctbGlzdC5jCit0X3BrZ19saXN0X09CSkVDVFMgPSB0LXBrZy1saXN0LiQoT0JKRVhUKQordF9wa2dfbGlzdF9MREFERCA9ICQoTERBREQpCit0X3BrZ19saXN0X0RFUEVOREVOQ0lFUyA9IC4uL2xpYmRwa2cuYQordF9wa2dfcXVldWVfU09VUkNFUyA9IHQtcGtnLXF1ZXVlLmMKK3RfcGtnX3F1ZXVlX09CSkVDVFMgPSB0LXBrZy1xdWV1ZS4kKE9CSkVYVCkKK3RfcGtnX3F1ZXVlX0xEQUREID0gJChMREFERCkKK3RfcGtnX3F1ZXVlX0RFUEVOREVOQ0lFUyA9IC4uL2xpYmRwa2cuYQordF9wa2dpbmZvX1NPVVJDRVMgPSB0LXBrZ2luZm8uYwordF9wa2dpbmZvX09CSkVDVFMgPSB0LXBrZ2luZm8uJChPQkpFWFQpCit0X3BrZ2luZm9fTERBREQgPSAkKExEQUREKQordF9wa2dpbmZvX0RFUEVOREVOQ0lFUyA9IC4uL2xpYmRwa2cuYQordF9wcm9nbmFtZV9TT1VSQ0VTID0gdC1wcm9nbmFtZS5jCit0X3Byb2duYW1lX09CSkVDVFMgPSB0LXByb2duYW1lLiQoT0JKRVhUKQordF9wcm9nbmFtZV9MREFERCA9ICQoTERBREQpCit0X3Byb2duYW1lX0RFUEVOREVOQ0lFUyA9IC4uL2xpYmRwa2cuYQordF9zdHJpbmdfU09VUkNFUyA9IHQtc3RyaW5nLmMKK3Rfc3RyaW5nX09CSkVDVFMgPSB0LXN0cmluZy4kKE9CSkVYVCkKK3Rfc3RyaW5nX0xEQUREID0gJChMREFERCkKK3Rfc3RyaW5nX0RFUEVOREVOQ0lFUyA9IC4uL2xpYmRwa2cuYQordF9zdWJwcm9jX1NPVVJDRVMgPSB0LXN1YnByb2MuYwordF9zdWJwcm9jX09CSkVDVFMgPSB0LXN1YnByb2MuJChPQkpFWFQpCit0X3N1YnByb2NfTERBREQgPSAkKExEQUREKQordF9zdWJwcm9jX0RFUEVOREVOQ0lFUyA9IC4uL2xpYmRwa2cuYQordF90ZXN0X1NPVVJDRVMgPSB0LXRlc3QuYwordF90ZXN0X09CSkVDVFMgPSB0LXRlc3QuJChPQkpFWFQpCit0X3Rlc3RfTERBREQgPSAkKExEQUREKQordF90ZXN0X0RFUEVOREVOQ0lFUyA9IC4uL2xpYmRwa2cuYQordF92YXJidWZfU09VUkNFUyA9IHQtdmFyYnVmLmMKK3RfdmFyYnVmX09CSkVDVFMgPSB0LXZhcmJ1Zi4kKE9CSkVYVCkKK3RfdmFyYnVmX0xEQUREID0gJChMREFERCkKK3RfdmFyYnVmX0RFUEVOREVOQ0lFUyA9IC4uL2xpYmRwa2cuYQordF92ZXJzaW9uX1NPVVJDRVMgPSB0LXZlcnNpb24uYwordF92ZXJzaW9uX09CSkVDVFMgPSB0LXZlcnNpb24uJChPQkpFWFQpCit0X3ZlcnNpb25fTERBREQgPSAkKExEQUREKQordF92ZXJzaW9uX0RFUEVOREVOQ0lFUyA9IC4uL2xpYmRwa2cuYQorREVGQVVMVF9JTkNMVURFUyA9IAorZGVwY29tcCA9ICQoU0hFTEwpICQodG9wX3NyY2RpcikvYnVpbGQtYXV4L2RlcGNvbXAKK2FtX19kZXBmaWxlc19tYXliZSA9IGRlcGZpbGVzCithbV9fbXYgPSBtdiAtZgorQ09NUElMRSA9ICQoQ0MpICQoREVGUykgJChERUZBVUxUX0lOQ0xVREVTKSAkKElOQ0xVREVTKSAkKEFNX0NQUEZMQUdTKSBcCisJJChDUFBGTEFHUykgJChBTV9DRkxBR1MpICQoQ0ZMQUdTKQorQU1fVl9DQyA9ICQoYW1fX3ZfQ0NfJChWKSkKK2FtX192X0NDXyA9ICQoYW1fX3ZfQ0NfJChBTV9ERUZBVUxUX1ZFUkJPU0lUWSkpCithbV9fdl9DQ18wID0gQGVjaG8gIiAgQ0MgICAgIiAkQDsKK0FNX1ZfYXQgPSAkKGFtX192X2F0XyQoVikpCithbV9fdl9hdF8gPSAkKGFtX192X2F0XyQoQU1fREVGQVVMVF9WRVJCT1NJVFkpKQorYW1fX3ZfYXRfMCA9IEAKK0NDTEQgPSAkKENDKQorTElOSyA9ICQoQ0NMRCkgJChBTV9DRkxBR1MpICQoQ0ZMQUdTKSAkKEFNX0xERkxBR1MpICQoTERGTEFHUykgLW8gJEAKK0FNX1ZfQ0NMRCA9ICQoYW1fX3ZfQ0NMRF8kKFYpKQorYW1fX3ZfQ0NMRF8gPSAkKGFtX192X0NDTERfJChBTV9ERUZBVUxUX1ZFUkJPU0lUWSkpCithbV9fdl9DQ0xEXzAgPSBAZWNobyAiICBDQ0xEICAiICRAOworQU1fVl9HRU4gPSAkKGFtX192X0dFTl8kKFYpKQorYW1fX3ZfR0VOXyA9ICQoYW1fX3ZfR0VOXyQoQU1fREVGQVVMVF9WRVJCT1NJVFkpKQorYW1fX3ZfR0VOXzAgPSBAZWNobyAiICBHRU4gICAiICRAOworU09VUkNFUyA9IHQtYXIuYyB0LWJ1ZmZlci5jIHQtY29tbWFuZC5jIHQtbWFjcm9zLmMgdC1tb2QtZGIuYyB0LXBhdGguYyBcCisJdC1wa2ctbGlzdC5jIHQtcGtnLXF1ZXVlLmMgdC1wa2dpbmZvLmMgdC1wcm9nbmFtZS5jIHQtc3RyaW5nLmMgXAorCXQtc3VicHJvYy5jIHQtdGVzdC5jIHQtdmFyYnVmLmMgdC12ZXJzaW9uLmMKK0RJU1RfU09VUkNFUyA9IHQtYXIuYyB0LWJ1ZmZlci5jIHQtY29tbWFuZC5jIHQtbWFjcm9zLmMgdC1tb2QtZGIuYyBcCisJdC1wYXRoLmMgdC1wa2ctbGlzdC5jIHQtcGtnLXF1ZXVlLmMgdC1wa2dpbmZvLmMgdC1wcm9nbmFtZS5jIFwKKwl0LXN0cmluZy5jIHQtc3VicHJvYy5jIHQtdGVzdC5jIHQtdmFyYnVmLmMgdC12ZXJzaW9uLmMKK0VUQUdTID0gZXRhZ3MKK0NUQUdTID0gY3RhZ3MKK2FtX190dHlfY29sb3JzID0gXAorcmVkPTsgZ3JuPTsgbGduPTsgYmx1PTsgc3RkPQorRElTVEZJTEVTID0gJChESVNUX0NPTU1PTikgJChESVNUX1NPVVJDRVMpICQoVEVYSU5GT1MpICQoRVhUUkFfRElTVCkKK0FDTE9DQUwgPSBAQUNMT0NBTEAKK0FNVEFSID0gQEFNVEFSQAorQU1fREVGQVVMVF9WRVJCT1NJVFkgPSBAQU1fREVGQVVMVF9WRVJCT1NJVFlACitBVVRPQ09ORiA9IEBBVVRPQ09ORkAKK0FVVE9IRUFERVIgPSBAQVVUT0hFQURFUkAKK0FVVE9NQUtFID0gQEFVVE9NQUtFQAorQVdLID0gQEFXS0AKK0JaMl9MSUJTID0gQEJaMl9MSUJTQAorQ0MgPSBAQ0NACitDQ0RFUE1PREUgPSBAQ0NERVBNT0RFQAorQ0ZMQUdTID0gQENGTEFHU0AKK0NQUCA9IEBDUFBACitDUFBGTEFHUyA9IEBDUFBGTEFHU0AKK0NVUlNFU19MSUJTID0gQENVUlNFU19MSUJTQAorQ1hYID0gQENYWEAKK0NYWERFUE1PREUgPSBAQ1hYREVQTU9ERUAKK0NYWEZMQUdTID0gQENYWEZMQUdTQAorQ1lHUEFUSF9XID0gQENZR1BBVEhfV0AKK0RFRlMgPSBAREVGU0AKK0RFUERJUiA9IEBERVBESVJACitET1hZR0VOID0gQERPWFlHRU5ACitFQ0hPX0MgPSBARUNIT19DQAorRUNIT19OID0gQEVDSE9fTkAKK0VDSE9fVCA9IEBFQ0hPX1RACitFR1JFUCA9IEBFR1JFUEAKK0VYRUVYVCA9IEBFWEVFWFRACitHQ09WID0gQEdDT1ZACitHRVRURVhUX01BQ1JPX1ZFUlNJT04gPSBAR0VUVEVYVF9NQUNST19WRVJTSU9OQAorR01TR0ZNVCA9IEBHTVNHRk1UQAorR01TR0ZNVF8wMTUgPSBAR01TR0ZNVF8wMTVACitHUkVQID0gQEdSRVBACitIQVZFX0RPVCA9IEBIQVZFX0RPVEAKK0lOU1RBTEwgPSBASU5TVEFMTEAKK0lOU1RBTExfREFUQSA9IEBJTlNUQUxMX0RBVEFACitJTlNUQUxMX1BST0dSQU0gPSBASU5TVEFMTF9QUk9HUkFNQAorSU5TVEFMTF9TQ1JJUFQgPSBASU5TVEFMTF9TQ1JJUFRACitJTlNUQUxMX1NUUklQX1BST0dSQU0gPSBASU5TVEFMTF9TVFJJUF9QUk9HUkFNQAorSU5UTExJQlMgPSBASU5UTExJQlNACitJTlRMX01BQ09TWF9MSUJTID0gQElOVExfTUFDT1NYX0xJQlNACitMQ09WID0gQExDT1ZACitMQ09WX0dFTkhUTUwgPSBATENPVl9HRU5IVE1MQAorTERGTEFHUyA9IEBMREZMQUdTQAorTEVYID0gQExFWEAKK0xFWExJQiA9IEBMRVhMSUJACitMRVhfT1VUUFVUX1JPT1QgPSBATEVYX09VVFBVVF9ST09UQAorTElCSUNPTlYgPSBATElCSUNPTlZACitMSUJJTlRMID0gQExJQklOVExACitMSUJPQkpTID0gQExJQk9CSlNACitMSUJTID0gQExJQlNACitMVExJQklDT05WID0gQExUTElCSUNPTlZACitMVExJQklOVEwgPSBATFRMSUJJTlRMQAorTFRMSUJPQkpTID0gQExUTElCT0JKU0AKK01BS0VJTkZPID0gQE1BS0VJTkZPQAorTUtESVJfUCA9IEBNS0RJUl9QQAorTVNHRk1UID0gQE1TR0ZNVEAKK01TR0ZNVF8wMTUgPSBATVNHRk1UXzAxNUAKK01TR01FUkdFID0gQE1TR01FUkdFQAorT0JKRVhUID0gQE9CSkVYVEAKK1BBQ0tBR0UgPSBAUEFDS0FHRUAKK1BBQ0tBR0VfQlVHUkVQT1JUID0gQFBBQ0tBR0VfQlVHUkVQT1JUQAorUEFDS0FHRV9OQU1FID0gQFBBQ0tBR0VfTkFNRUAKK1BBQ0tBR0VfU1RSSU5HID0gQFBBQ0tBR0VfU1RSSU5HQAorUEFDS0FHRV9UQVJOQU1FID0gQFBBQ0tBR0VfVEFSTkFNRUAKK1BBQ0tBR0VfVVJMID0gQFBBQ0tBR0VfVVJMQAorUEFDS0FHRV9WRVJTSU9OID0gQFBBQ0tBR0VfVkVSU0lPTkAKK1BBVEhfU0VQQVJBVE9SID0gQFBBVEhfU0VQQVJBVE9SQAorUEVSTCA9IEBQRVJMQAorUEVSTF9DT1ZFUiA9IEBQRVJMX0NPVkVSQAorUEVSTF9DT1ZFUkFHRSA9IEBQRVJMX0NPVkVSQUdFQAorUEVSTF9MSUJESVIgPSBAUEVSTF9MSUJESVJACitQS0dfQ09ORklHID0gQFBLR19DT05GSUdACitQS0dfQ09ORklHX0xJQkRJUiA9IEBQS0dfQ09ORklHX0xJQkRJUkAKK1BLR19DT05GSUdfUEFUSCA9IEBQS0dfQ09ORklHX1BBVEhACitQTzRBID0gQFBPNEFACitQT0QyTUFOID0gQFBPRDJNQU5ACitQT1NVQiA9IEBQT1NVQkAKK1JBTkxJQiA9IEBSQU5MSUJACitTRUxJTlVYX0xJQlMgPSBAU0VMSU5VWF9MSUJTQAorU0VUX01BS0UgPSBAU0VUX01BS0VACitTSEVMTCA9IEBTSEVMTEAKK1NTRF9MSUJTID0gQFNTRF9MSUJTQAorU1RSSVAgPSBAU1RSSVBACitVU0VfTkxTID0gQFVTRV9OTFNACitVU0VfUE80QSA9IEBVU0VfUE80QUAKK1VTRV9VTklDT0RFID0gQFVTRV9VTklDT0RFQAorVkVSU0lPTiA9IEBWRVJTSU9OQAorWEdFVFRFWFQgPSBAWEdFVFRFWFRACitYR0VUVEVYVF8wMTUgPSBAWEdFVFRFWFRfMDE1QAorWEdFVFRFWFRfRVhUUkFfT1BUSU9OUyA9IEBYR0VUVEVYVF9FWFRSQV9PUFRJT05TQAorWkxJQl9MSUJTID0gQFpMSUJfTElCU0AKK2Fic19idWlsZGRpciA9IEBhYnNfYnVpbGRkaXJACithYnNfc3JjZGlyID0gQGFic19zcmNkaXJACithYnNfdG9wX2J1aWxkZGlyID0gQGFic190b3BfYnVpbGRkaXJACithYnNfdG9wX3NyY2RpciA9IEBhYnNfdG9wX3NyY2RpckAKK2FjX2N0X0NDID0gQGFjX2N0X0NDQAorYWNfY3RfQ1hYID0gQGFjX2N0X0NYWEAKK2FkbWluZGlyID0gQGFkbWluZGlyQAorYW1fX2luY2x1ZGUgPSBAYW1fX2luY2x1ZGVACithbV9fbGVhZGluZ19kb3QgPSBAYW1fX2xlYWRpbmdfZG90QAorYW1fX3F1b3RlID0gQGFtX19xdW90ZUAKK2FtX190YXIgPSBAYW1fX3RhckAKK2FtX191bnRhciA9IEBhbV9fdW50YXJACitiaW5kaXIgPSBAYmluZGlyQAorYnVpbGQgPSBAYnVpbGRACitidWlsZF9hbGlhcyA9IEBidWlsZF9hbGlhc0AKK2J1aWxkX2NwdSA9IEBidWlsZF9jcHVACitidWlsZF9vcyA9IEBidWlsZF9vc0AKK2J1aWxkX3ZlbmRvciA9IEBidWlsZF92ZW5kb3JACitidWlsZGRpciA9IEBidWlsZGRpckAKK2RhdGFkaXIgPSBAZGF0YWRpckAKK2RhdGFyb290ZGlyID0gQGRhdGFyb290ZGlyQAorZG9jZGlyID0gQGRvY2RpckAKK2R2aWRpciA9IEBkdmlkaXJACitleGVjX3ByZWZpeCA9IEBleGVjX3ByZWZpeEAKK2hvc3QgPSBAaG9zdEAKK2hvc3RfYWxpYXMgPSBAaG9zdF9hbGlhc0AKK2hvc3RfY3B1ID0gQGhvc3RfY3B1QAoraG9zdF9vcyA9IEBob3N0X29zQAoraG9zdF92ZW5kb3IgPSBAaG9zdF92ZW5kb3JACitodG1sZGlyID0gQGh0bWxkaXJACitpbmNsdWRlZGlyID0gQGluY2x1ZGVkaXJACitpbmZvZGlyID0gQGluZm9kaXJACitpbnN0YWxsX3NoID0gQGluc3RhbGxfc2hACitsaWJkaXIgPSBAbGliZGlyQAorbGliZXhlY2RpciA9IEBsaWJleGVjZGlyQAorbG9jYWxlZGlyID0gQGxvY2FsZWRpckAKK2xvY2Fsc3RhdGVkaXIgPSBAbG9jYWxzdGF0ZWRpckAKK2xvZ2RpciA9IEBsb2dkaXJACittYW5kaXIgPSBAbWFuZGlyQAorbWtkaXJfcCA9IEBta2Rpcl9wQAorb2xkaW5jbHVkZWRpciA9IEBvbGRpbmNsdWRlZGlyQAorcGRmZGlyID0gQHBkZmRpckAKK3ByZWZpeCA9IEBwcmVmaXhACitwcm9ncmFtX3RyYW5zZm9ybV9uYW1lID0gQHByb2dyYW1fdHJhbnNmb3JtX25hbWVACitwc2RpciA9IEBwc2RpckAKK3NiaW5kaXIgPSBAc2JpbmRpckAKK3NoYXJlZHN0YXRlZGlyID0gQHNoYXJlZHN0YXRlZGlyQAorc3JjZGlyID0gQHNyY2RpckAKK3N5c2NvbmZkaXIgPSBAc3lzY29uZmRpckAKK3RhcmdldF9hbGlhcyA9IEB0YXJnZXRfYWxpYXNACit0b3BfYnVpbGRfcHJlZml4ID0gQHRvcF9idWlsZF9wcmVmaXhACit0b3BfYnVpbGRkaXIgPSBAdG9wX2J1aWxkZGlyQAordG9wX3NyY2RpciA9IEB0b3Bfc3JjZGlyQAorQU1fQ1BQRkxBR1MgPSBcCisJLURBRE1JTkRJUj1cIiQoYWRtaW5kaXIpXCIgXAorCS1pZGlyYWZ0ZXIgJCh0b3Bfc3JjZGlyKS9saWIvY29tcGF0IFwKKwktSSQodG9wX2J1aWxkZGlyKSBcCisJLUkkKHRvcF9zcmNkaXIpL2xpYgorCitMREFERCA9IC4uL2xpYmRwa2cuYQorVEVTVFMgPSAkKGNoZWNrX1BST0dSQU1TKQorYWxsOiBhbGwtYW0KKworLlNVRkZJWEVTOgorLlNVRkZJWEVTOiAuYyAubyAub2JqCiskKHNyY2RpcikvTWFrZWZpbGUuaW46ICAkKHNyY2RpcikvTWFrZWZpbGUuYW0gICQoYW1fX2NvbmZpZ3VyZV9kZXBzKQorCUBmb3IgZGVwIGluICQ/OyBkbyBcCisJICBjYXNlICckKGFtX19jb25maWd1cmVfZGVwcyknIGluIFwKKwkgICAgKiQkZGVwKikgXAorCSAgICAgICggY2QgJCh0b3BfYnVpbGRkaXIpICYmICQoTUFLRSkgJChBTV9NQUtFRkxBR1MpIGFtLS1yZWZyZXNoICkgXAorCSAgICAgICAgJiYgeyBpZiB0ZXN0IC1mICRAOyB0aGVuIGV4aXQgMDsgZWxzZSBicmVhazsgZmk7IH07IFwKKwkgICAgICBleGl0IDE7OyBcCisJICBlc2FjOyBcCisJZG9uZTsgXAorCWVjaG8gJyBjZCAkKHRvcF9zcmNkaXIpICYmICQoQVVUT01BS0UpIC0tZm9yZWlnbiBsaWIvZHBrZy90ZXN0L01ha2VmaWxlJzsgXAorCSQoYW1fX2NkKSAkKHRvcF9zcmNkaXIpICYmIFwKKwkgICQoQVVUT01BS0UpIC0tZm9yZWlnbiBsaWIvZHBrZy90ZXN0L01ha2VmaWxlCisuUFJFQ0lPVVM6IE1ha2VmaWxlCitNYWtlZmlsZTogJChzcmNkaXIpL01ha2VmaWxlLmluICQodG9wX2J1aWxkZGlyKS9jb25maWcuc3RhdHVzCisJQGNhc2UgJyQ/JyBpbiBcCisJICAqY29uZmlnLnN0YXR1cyopIFwKKwkgICAgY2QgJCh0b3BfYnVpbGRkaXIpICYmICQoTUFLRSkgJChBTV9NQUtFRkxBR1MpIGFtLS1yZWZyZXNoOzsgXAorCSAgKikgXAorCSAgICBlY2hvICcgY2QgJCh0b3BfYnVpbGRkaXIpICYmICQoU0hFTEwpIC4vY29uZmlnLnN0YXR1cyAkKHN1YmRpcikvJEAgJChhbV9fZGVwZmlsZXNfbWF5YmUpJzsgXAorCSAgICBjZCAkKHRvcF9idWlsZGRpcikgJiYgJChTSEVMTCkgLi9jb25maWcuc3RhdHVzICQoc3ViZGlyKS8kQCAkKGFtX19kZXBmaWxlc19tYXliZSk7OyBcCisJZXNhYzsKKworJCh0b3BfYnVpbGRkaXIpL2NvbmZpZy5zdGF0dXM6ICQodG9wX3NyY2RpcikvY29uZmlndXJlICQoQ09ORklHX1NUQVRVU19ERVBFTkRFTkNJRVMpCisJY2QgJCh0b3BfYnVpbGRkaXIpICYmICQoTUFLRSkgJChBTV9NQUtFRkxBR1MpIGFtLS1yZWZyZXNoCisKKyQodG9wX3NyY2RpcikvY29uZmlndXJlOiAgJChhbV9fY29uZmlndXJlX2RlcHMpCisJY2QgJCh0b3BfYnVpbGRkaXIpICYmICQoTUFLRSkgJChBTV9NQUtFRkxBR1MpIGFtLS1yZWZyZXNoCiskKEFDTE9DQUxfTTQpOiAgJChhbV9fYWNsb2NhbF9tNF9kZXBzKQorCWNkICQodG9wX2J1aWxkZGlyKSAmJiAkKE1BS0UpICQoQU1fTUFLRUZMQUdTKSBhbS0tcmVmcmVzaAorJChhbV9fYWNsb2NhbF9tNF9kZXBzKToKKworY2xlYW4tY2hlY2tQUk9HUkFNUzoKKwktdGVzdCAteiAiJChjaGVja19QUk9HUkFNUykiIHx8IHJtIC1mICQoY2hlY2tfUFJPR1JBTVMpCit0LWFyJChFWEVFWFQpOiAkKHRfYXJfT0JKRUNUUykgJCh0X2FyX0RFUEVOREVOQ0lFUykgCisJQHJtIC1mIHQtYXIkKEVYRUVYVCkKKwkkKEFNX1ZfQ0NMRCkkKExJTkspICQodF9hcl9PQkpFQ1RTKSAkKHRfYXJfTERBREQpICQoTElCUykKK3QtYnVmZmVyJChFWEVFWFQpOiAkKHRfYnVmZmVyX09CSkVDVFMpICQodF9idWZmZXJfREVQRU5ERU5DSUVTKSAKKwlAcm0gLWYgdC1idWZmZXIkKEVYRUVYVCkKKwkkKEFNX1ZfQ0NMRCkkKExJTkspICQodF9idWZmZXJfT0JKRUNUUykgJCh0X2J1ZmZlcl9MREFERCkgJChMSUJTKQordC1jb21tYW5kJChFWEVFWFQpOiAkKHRfY29tbWFuZF9PQkpFQ1RTKSAkKHRfY29tbWFuZF9ERVBFTkRFTkNJRVMpIAorCUBybSAtZiB0LWNvbW1hbmQkKEVYRUVYVCkKKwkkKEFNX1ZfQ0NMRCkkKExJTkspICQodF9jb21tYW5kX09CSkVDVFMpICQodF9jb21tYW5kX0xEQUREKSAkKExJQlMpCit0LW1hY3JvcyQoRVhFRVhUKTogJCh0X21hY3Jvc19PQkpFQ1RTKSAkKHRfbWFjcm9zX0RFUEVOREVOQ0lFUykgCisJQHJtIC1mIHQtbWFjcm9zJChFWEVFWFQpCisJJChBTV9WX0NDTEQpJChMSU5LKSAkKHRfbWFjcm9zX09CSkVDVFMpICQodF9tYWNyb3NfTERBREQpICQoTElCUykKK3QtbW9kLWRiJChFWEVFWFQpOiAkKHRfbW9kX2RiX09CSkVDVFMpICQodF9tb2RfZGJfREVQRU5ERU5DSUVTKSAKKwlAcm0gLWYgdC1tb2QtZGIkKEVYRUVYVCkKKwkkKEFNX1ZfQ0NMRCkkKExJTkspICQodF9tb2RfZGJfT0JKRUNUUykgJCh0X21vZF9kYl9MREFERCkgJChMSUJTKQordC1wYXRoJChFWEVFWFQpOiAkKHRfcGF0aF9PQkpFQ1RTKSAkKHRfcGF0aF9ERVBFTkRFTkNJRVMpIAorCUBybSAtZiB0LXBhdGgkKEVYRUVYVCkKKwkkKEFNX1ZfQ0NMRCkkKExJTkspICQodF9wYXRoX09CSkVDVFMpICQodF9wYXRoX0xEQUREKSAkKExJQlMpCit0LXBrZy1saXN0JChFWEVFWFQpOiAkKHRfcGtnX2xpc3RfT0JKRUNUUykgJCh0X3BrZ19saXN0X0RFUEVOREVOQ0lFUykgCisJQHJtIC1mIHQtcGtnLWxpc3QkKEVYRUVYVCkKKwkkKEFNX1ZfQ0NMRCkkKExJTkspICQodF9wa2dfbGlzdF9PQkpFQ1RTKSAkKHRfcGtnX2xpc3RfTERBREQpICQoTElCUykKK3QtcGtnLXF1ZXVlJChFWEVFWFQpOiAkKHRfcGtnX3F1ZXVlX09CSkVDVFMpICQodF9wa2dfcXVldWVfREVQRU5ERU5DSUVTKSAKKwlAcm0gLWYgdC1wa2ctcXVldWUkKEVYRUVYVCkKKwkkKEFNX1ZfQ0NMRCkkKExJTkspICQodF9wa2dfcXVldWVfT0JKRUNUUykgJCh0X3BrZ19xdWV1ZV9MREFERCkgJChMSUJTKQordC1wa2dpbmZvJChFWEVFWFQpOiAkKHRfcGtnaW5mb19PQkpFQ1RTKSAkKHRfcGtnaW5mb19ERVBFTkRFTkNJRVMpIAorCUBybSAtZiB0LXBrZ2luZm8kKEVYRUVYVCkKKwkkKEFNX1ZfQ0NMRCkkKExJTkspICQodF9wa2dpbmZvX09CSkVDVFMpICQodF9wa2dpbmZvX0xEQUREKSAkKExJQlMpCit0LXByb2duYW1lJChFWEVFWFQpOiAkKHRfcHJvZ25hbWVfT0JKRUNUUykgJCh0X3Byb2duYW1lX0RFUEVOREVOQ0lFUykgCisJQHJtIC1mIHQtcHJvZ25hbWUkKEVYRUVYVCkKKwkkKEFNX1ZfQ0NMRCkkKExJTkspICQodF9wcm9nbmFtZV9PQkpFQ1RTKSAkKHRfcHJvZ25hbWVfTERBREQpICQoTElCUykKK3Qtc3RyaW5nJChFWEVFWFQpOiAkKHRfc3RyaW5nX09CSkVDVFMpICQodF9zdHJpbmdfREVQRU5ERU5DSUVTKSAKKwlAcm0gLWYgdC1zdHJpbmckKEVYRUVYVCkKKwkkKEFNX1ZfQ0NMRCkkKExJTkspICQodF9zdHJpbmdfT0JKRUNUUykgJCh0X3N0cmluZ19MREFERCkgJChMSUJTKQordC1zdWJwcm9jJChFWEVFWFQpOiAkKHRfc3VicHJvY19PQkpFQ1RTKSAkKHRfc3VicHJvY19ERVBFTkRFTkNJRVMpIAorCUBybSAtZiB0LXN1YnByb2MkKEVYRUVYVCkKKwkkKEFNX1ZfQ0NMRCkkKExJTkspICQodF9zdWJwcm9jX09CSkVDVFMpICQodF9zdWJwcm9jX0xEQUREKSAkKExJQlMpCit0LXRlc3QkKEVYRUVYVCk6ICQodF90ZXN0X09CSkVDVFMpICQodF90ZXN0X0RFUEVOREVOQ0lFUykgCisJQHJtIC1mIHQtdGVzdCQoRVhFRVhUKQorCSQoQU1fVl9DQ0xEKSQoTElOSykgJCh0X3Rlc3RfT0JKRUNUUykgJCh0X3Rlc3RfTERBREQpICQoTElCUykKK3QtdmFyYnVmJChFWEVFWFQpOiAkKHRfdmFyYnVmX09CSkVDVFMpICQodF92YXJidWZfREVQRU5ERU5DSUVTKSAKKwlAcm0gLWYgdC12YXJidWYkKEVYRUVYVCkKKwkkKEFNX1ZfQ0NMRCkkKExJTkspICQodF92YXJidWZfT0JKRUNUUykgJCh0X3ZhcmJ1Zl9MREFERCkgJChMSUJTKQordC12ZXJzaW9uJChFWEVFWFQpOiAkKHRfdmVyc2lvbl9PQkpFQ1RTKSAkKHRfdmVyc2lvbl9ERVBFTkRFTkNJRVMpIAorCUBybSAtZiB0LXZlcnNpb24kKEVYRUVYVCkKKwkkKEFNX1ZfQ0NMRCkkKExJTkspICQodF92ZXJzaW9uX09CSkVDVFMpICQodF92ZXJzaW9uX0xEQUREKSAkKExJQlMpCisKK21vc3RseWNsZWFuLWNvbXBpbGU6CisJLXJtIC1mICouJChPQkpFWFQpCisKK2Rpc3RjbGVhbi1jb21waWxlOgorCS1ybSAtZiAqLnRhYi5jCisKK0BBTURFUF9UUlVFQEBhbV9faW5jbHVkZUAgQGFtX19xdW90ZUAuLyQoREVQRElSKS90LWFyLlBvQGFtX19xdW90ZUAKK0BBTURFUF9UUlVFQEBhbV9faW5jbHVkZUAgQGFtX19xdW90ZUAuLyQoREVQRElSKS90LWJ1ZmZlci5Qb0BhbV9fcXVvdGVACitAQU1ERVBfVFJVRUBAYW1fX2luY2x1ZGVAIEBhbV9fcXVvdGVALi8kKERFUERJUikvdC1jb21tYW5kLlBvQGFtX19xdW90ZUAKK0BBTURFUF9UUlVFQEBhbV9faW5jbHVkZUAgQGFtX19xdW90ZUAuLyQoREVQRElSKS90LW1hY3Jvcy5Qb0BhbV9fcXVvdGVACitAQU1ERVBfVFJVRUBAYW1fX2luY2x1ZGVAIEBhbV9fcXVvdGVALi8kKERFUERJUikvdC1tb2QtZGIuUG9AYW1fX3F1b3RlQAorQEFNREVQX1RSVUVAQGFtX19pbmNsdWRlQCBAYW1fX3F1b3RlQC4vJChERVBESVIpL3QtcGF0aC5Qb0BhbV9fcXVvdGVACitAQU1ERVBfVFJVRUBAYW1fX2luY2x1ZGVAIEBhbV9fcXVvdGVALi8kKERFUERJUikvdC1wa2ctbGlzdC5Qb0BhbV9fcXVvdGVACitAQU1ERVBfVFJVRUBAYW1fX2luY2x1ZGVAIEBhbV9fcXVvdGVALi8kKERFUERJUikvdC1wa2ctcXVldWUuUG9AYW1fX3F1b3RlQAorQEFNREVQX1RSVUVAQGFtX19pbmNsdWRlQCBAYW1fX3F1b3RlQC4vJChERVBESVIpL3QtcGtnaW5mby5Qb0BhbV9fcXVvdGVACitAQU1ERVBfVFJVRUBAYW1fX2luY2x1ZGVAIEBhbV9fcXVvdGVALi8kKERFUERJUikvdC1wcm9nbmFtZS5Qb0BhbV9fcXVvdGVACitAQU1ERVBfVFJVRUBAYW1fX2luY2x1ZGVAIEBhbV9fcXVvdGVALi8kKERFUERJUikvdC1zdHJpbmcuUG9AYW1fX3F1b3RlQAorQEFNREVQX1RSVUVAQGFtX19pbmNsdWRlQCBAYW1fX3F1b3RlQC4vJChERVBESVIpL3Qtc3VicHJvYy5Qb0BhbV9fcXVvdGVACitAQU1ERVBfVFJVRUBAYW1fX2luY2x1ZGVAIEBhbV9fcXVvdGVALi8kKERFUERJUikvdC10ZXN0LlBvQGFtX19xdW90ZUAKK0BBTURFUF9UUlVFQEBhbV9faW5jbHVkZUAgQGFtX19xdW90ZUAuLyQoREVQRElSKS90LXZhcmJ1Zi5Qb0BhbV9fcXVvdGVACitAQU1ERVBfVFJVRUBAYW1fX2luY2x1ZGVAIEBhbV9fcXVvdGVALi8kKERFUERJUikvdC12ZXJzaW9uLlBvQGFtX19xdW90ZUAKKworLmMubzoKK0BhbV9fZmFzdGRlcENDX1RSVUVACSQoQU1fVl9DQykkKENPTVBJTEUpIC1NVCAkQCAtTUQgLU1QIC1NRiAkKERFUERJUikvJCouVHBvIC1jIC1vICRAICQ8CitAYW1fX2Zhc3RkZXBDQ19UUlVFQAkkKEFNX1ZfYXQpJChhbV9fbXYpICQoREVQRElSKS8kKi5UcG8gJChERVBESVIpLyQqLlBvCitAYW1fX2Zhc3RkZXBDQ19GQUxTRUAJJChBTV9WX0NDKSBAQU1fQkFDS1NMQVNIQAorQEFNREVQX1RSVUVAQGFtX19mYXN0ZGVwQ0NfRkFMU0VACXNvdXJjZT0nJDwnIG9iamVjdD0nJEAnIGxpYnRvb2w9bm8gQEFNREVQQkFDS1NMQVNIQAorQEFNREVQX1RSVUVAQGFtX19mYXN0ZGVwQ0NfRkFMU0VACURFUERJUj0kKERFUERJUikgJChDQ0RFUE1PREUpICQoZGVwY29tcCkgQEFNREVQQkFDS1NMQVNIQAorQGFtX19mYXN0ZGVwQ0NfRkFMU0VACSQoQ09NUElMRSkgLWMgJDwKKworLmMub2JqOgorQGFtX19mYXN0ZGVwQ0NfVFJVRUAJJChBTV9WX0NDKSQoQ09NUElMRSkgLU1UICRAIC1NRCAtTVAgLU1GICQoREVQRElSKS8kKi5UcG8gLWMgLW8gJEAgYCQoQ1lHUEFUSF9XKSAnJDwnYAorQGFtX19mYXN0ZGVwQ0NfVFJVRUAJJChBTV9WX2F0KSQoYW1fX212KSAkKERFUERJUikvJCouVHBvICQoREVQRElSKS8kKi5QbworQGFtX19mYXN0ZGVwQ0NfRkFMU0VACSQoQU1fVl9DQykgQEFNX0JBQ0tTTEFTSEAKK0BBTURFUF9UUlVFQEBhbV9fZmFzdGRlcENDX0ZBTFNFQAlzb3VyY2U9JyQ8JyBvYmplY3Q9JyRAJyBsaWJ0b29sPW5vIEBBTURFUEJBQ0tTTEFTSEAKK0BBTURFUF9UUlVFQEBhbV9fZmFzdGRlcENDX0ZBTFNFQAlERVBESVI9JChERVBESVIpICQoQ0NERVBNT0RFKSAkKGRlcGNvbXApIEBBTURFUEJBQ0tTTEFTSEAKK0BhbV9fZmFzdGRlcENDX0ZBTFNFQAkkKENPTVBJTEUpIC1jIGAkKENZR1BBVEhfVykgJyQ8J2AKKworSUQ6ICQoSEVBREVSUykgJChTT1VSQ0VTKSAkKExJU1ApICQoVEFHU19GSUxFUykKKwlsaXN0PSckKFNPVVJDRVMpICQoSEVBREVSUykgJChMSVNQKSAkKFRBR1NfRklMRVMpJzsgXAorCXVuaXF1ZT1gZm9yIGkgaW4gJCRsaXN0OyBkbyBcCisJICAgIGlmIHRlc3QgLWYgIiQkaSI7IHRoZW4gZWNobyAkJGk7IGVsc2UgZWNobyAkKHNyY2RpcikvJCRpOyBmaTsgXAorCSAgZG9uZSB8IFwKKwkgICQoQVdLKSAneyBmaWxlc1skJDBdID0gMTsgbm9uZW1wdHkgPSAxOyB9IFwKKwkgICAgICBFTkQgeyBpZiAobm9uZW1wdHkpIHsgZm9yIChpIGluIGZpbGVzKSBwcmludCBpOyB9OyB9J2A7IFwKKwlta2lkIC1mSUQgJCR1bmlxdWUKK3RhZ3M6IFRBR1MKKworVEFHUzogICQoSEVBREVSUykgJChTT1VSQ0VTKSAgJChUQUdTX0RFUEVOREVOQ0lFUykgXAorCQkkKFRBR1NfRklMRVMpICQoTElTUCkKKwlzZXQgeDsgXAorCWhlcmU9YHB3ZGA7IFwKKwlsaXN0PSckKFNPVVJDRVMpICQoSEVBREVSUykgICQoTElTUCkgJChUQUdTX0ZJTEVTKSc7IFwKKwl1bmlxdWU9YGZvciBpIGluICQkbGlzdDsgZG8gXAorCSAgICBpZiB0ZXN0IC1mICIkJGkiOyB0aGVuIGVjaG8gJCRpOyBlbHNlIGVjaG8gJChzcmNkaXIpLyQkaTsgZmk7IFwKKwkgIGRvbmUgfCBcCisJICAkKEFXSykgJ3sgZmlsZXNbJCQwXSA9IDE7IG5vbmVtcHR5ID0gMTsgfSBcCisJICAgICAgRU5EIHsgaWYgKG5vbmVtcHR5KSB7IGZvciAoaSBpbiBmaWxlcykgcHJpbnQgaTsgfTsgfSdgOyBcCisJc2hpZnQ7IFwKKwlpZiB0ZXN0IC16ICIkKEVUQUdTX0FSR1MpJCQqJCR1bmlxdWUiOyB0aGVuIDo7IGVsc2UgXAorCSAgdGVzdCAtbiAiJCR1bmlxdWUiIHx8IHVuaXF1ZT0kJGVtcHR5X2ZpeDsgXAorCSAgaWYgdGVzdCAkJCMgLWd0IDA7IHRoZW4gXAorCSAgICAkKEVUQUdTKSAkKEVUQUdTRkxBR1MpICQoQU1fRVRBR1NGTEFHUykgJChFVEFHU19BUkdTKSBcCisJICAgICAgIiQkQCIgJCR1bmlxdWU7IFwKKwkgIGVsc2UgXAorCSAgICAkKEVUQUdTKSAkKEVUQUdTRkxBR1MpICQoQU1fRVRBR1NGTEFHUykgJChFVEFHU19BUkdTKSBcCisJICAgICAgJCR1bmlxdWU7IFwKKwkgIGZpOyBcCisJZmkKK2N0YWdzOiBDVEFHUworQ1RBR1M6ICAkKEhFQURFUlMpICQoU09VUkNFUykgICQoVEFHU19ERVBFTkRFTkNJRVMpIFwKKwkJJChUQUdTX0ZJTEVTKSAkKExJU1ApCisJbGlzdD0nJChTT1VSQ0VTKSAkKEhFQURFUlMpICAkKExJU1ApICQoVEFHU19GSUxFUyknOyBcCisJdW5pcXVlPWBmb3IgaSBpbiAkJGxpc3Q7IGRvIFwKKwkgICAgaWYgdGVzdCAtZiAiJCRpIjsgdGhlbiBlY2hvICQkaTsgZWxzZSBlY2hvICQoc3JjZGlyKS8kJGk7IGZpOyBcCisJICBkb25lIHwgXAorCSAgJChBV0spICd7IGZpbGVzWyQkMF0gPSAxOyBub25lbXB0eSA9IDE7IH0gXAorCSAgICAgIEVORCB7IGlmIChub25lbXB0eSkgeyBmb3IgKGkgaW4gZmlsZXMpIHByaW50IGk7IH07IH0nYDsgXAorCXRlc3QgLXogIiQoQ1RBR1NfQVJHUykkJHVuaXF1ZSIgXAorCSAgfHwgJChDVEFHUykgJChDVEFHU0ZMQUdTKSAkKEFNX0NUQUdTRkxBR1MpICQoQ1RBR1NfQVJHUykgXAorCSAgICAgJCR1bmlxdWUKKworR1RBR1M6CisJaGVyZT1gJChhbV9fY2QpICQodG9wX2J1aWxkZGlyKSAmJiBwd2RgIFwKKwkgICYmICQoYW1fX2NkKSAkKHRvcF9zcmNkaXIpIFwKKwkgICYmIGd0YWdzIC1pICQoR1RBR1NfQVJHUykgIiQkaGVyZSIKKworZGlzdGNsZWFuLXRhZ3M6CisJLXJtIC1mIFRBR1MgSUQgR1RBR1MgR1JUQUdTIEdTWU1TIEdQQVRIIHRhZ3MKKworY2hlY2stVEVTVFM6ICQoVEVTVFMpCisJQGZhaWxlZD0wOyBhbGw9MDsgeGZhaWw9MDsgeHBhc3M9MDsgc2tpcD0wOyBcCisJc3JjZGlyPSQoc3JjZGlyKTsgZXhwb3J0IHNyY2RpcjsgXAorCWxpc3Q9JyAkKFRFU1RTKSAnOyBcCisJJChhbV9fdHR5X2NvbG9ycyk7IFwKKwlpZiB0ZXN0IC1uICIkJGxpc3QiOyB0aGVuIFwKKwkgIGZvciB0c3QgaW4gJCRsaXN0OyBkbyBcCisJICAgIGlmIHRlc3QgLWYgLi8kJHRzdDsgdGhlbiBkaXI9Li87IFwKKwkgICAgZWxpZiB0ZXN0IC1mICQkdHN0OyB0aGVuIGRpcj07IFwKKwkgICAgZWxzZSBkaXI9IiQoc3JjZGlyKS8iOyBmaTsgXAorCSAgICBpZiAkKFRFU1RTX0VOVklST05NRU5UKSAkJHtkaXJ9JCR0c3Q7IHRoZW4gXAorCSAgICAgIGFsbD1gZXhwciAkJGFsbCArIDFgOyBcCisJICAgICAgY2FzZSAiICQoWEZBSUxfVEVTVFMpICIgaW4gXAorCSAgICAgICpbXCBcCV0kJHRzdFtcIFwJXSopIFwKKwkJeHBhc3M9YGV4cHIgJCR4cGFzcyArIDFgOyBcCisJCWZhaWxlZD1gZXhwciAkJGZhaWxlZCArIDFgOyBcCisJCWNvbD0kJHJlZDsgcmVzPVhQQVNTOyBcCisJICAgICAgOzsgXAorCSAgICAgICopIFwKKwkJY29sPSQkZ3JuOyByZXM9UEFTUzsgXAorCSAgICAgIDs7IFwKKwkgICAgICBlc2FjOyBcCisJICAgIGVsaWYgdGVzdCAkJD8gLW5lIDc3OyB0aGVuIFwKKwkgICAgICBhbGw9YGV4cHIgJCRhbGwgKyAxYDsgXAorCSAgICAgIGNhc2UgIiAkKFhGQUlMX1RFU1RTKSAiIGluIFwKKwkgICAgICAqW1wgXAldJCR0c3RbXCBcCV0qKSBcCisJCXhmYWlsPWBleHByICQkeGZhaWwgKyAxYDsgXAorCQljb2w9JCRsZ247IHJlcz1YRkFJTDsgXAorCSAgICAgIDs7IFwKKwkgICAgICAqKSBcCisJCWZhaWxlZD1gZXhwciAkJGZhaWxlZCArIDFgOyBcCisJCWNvbD0kJHJlZDsgcmVzPUZBSUw7IFwKKwkgICAgICA7OyBcCisJICAgICAgZXNhYzsgXAorCSAgICBlbHNlIFwKKwkgICAgICBza2lwPWBleHByICQkc2tpcCArIDFgOyBcCisJICAgICAgY29sPSQkYmx1OyByZXM9U0tJUDsgXAorCSAgICBmaTsgXAorCSAgICBlY2hvICIkJHtjb2x9JCRyZXMkJHtzdGR9OiAkJHRzdCI7IFwKKwkgIGRvbmU7IFwKKwkgIGlmIHRlc3QgIiQkYWxsIiAtZXEgMTsgdGhlbiBcCisJICAgIHRlc3RzPSJ0ZXN0IjsgXAorCSAgICBBbGw9IiI7IFwKKwkgIGVsc2UgXAorCSAgICB0ZXN0cz0idGVzdHMiOyBcCisJICAgIEFsbD0iQWxsICI7IFwKKwkgIGZpOyBcCisJICBpZiB0ZXN0ICIkJGZhaWxlZCIgLWVxIDA7IHRoZW4gXAorCSAgICBpZiB0ZXN0ICIkJHhmYWlsIiAtZXEgMDsgdGhlbiBcCisJICAgICAgYmFubmVyPSIkJEFsbCQkYWxsICQkdGVzdHMgcGFzc2VkIjsgXAorCSAgICBlbHNlIFwKKwkgICAgICBpZiB0ZXN0ICIkJHhmYWlsIiAtZXEgMTsgdGhlbiBmYWlsdXJlcz1mYWlsdXJlOyBlbHNlIGZhaWx1cmVzPWZhaWx1cmVzOyBmaTsgXAorCSAgICAgIGJhbm5lcj0iJCRBbGwkJGFsbCAkJHRlc3RzIGJlaGF2ZWQgYXMgZXhwZWN0ZWQgKCQkeGZhaWwgZXhwZWN0ZWQgJCRmYWlsdXJlcykiOyBcCisJICAgIGZpOyBcCisJICBlbHNlIFwKKwkgICAgaWYgdGVzdCAiJCR4cGFzcyIgLWVxIDA7IHRoZW4gXAorCSAgICAgIGJhbm5lcj0iJCRmYWlsZWQgb2YgJCRhbGwgJCR0ZXN0cyBmYWlsZWQiOyBcCisJICAgIGVsc2UgXAorCSAgICAgIGlmIHRlc3QgIiQkeHBhc3MiIC1lcSAxOyB0aGVuIHBhc3Nlcz1wYXNzOyBlbHNlIHBhc3Nlcz1wYXNzZXM7IGZpOyBcCisJICAgICAgYmFubmVyPSIkJGZhaWxlZCBvZiAkJGFsbCAkJHRlc3RzIGRpZCBub3QgYmVoYXZlIGFzIGV4cGVjdGVkICgkJHhwYXNzIHVuZXhwZWN0ZWQgJCRwYXNzZXMpIjsgXAorCSAgICBmaTsgXAorCSAgZmk7IFwKKwkgIGRhc2hlcz0iJCRiYW5uZXIiOyBcCisJICBza2lwcGVkPSIiOyBcCisJICBpZiB0ZXN0ICIkJHNraXAiIC1uZSAwOyB0aGVuIFwKKwkgICAgaWYgdGVzdCAiJCRza2lwIiAtZXEgMTsgdGhlbiBcCisJICAgICAgc2tpcHBlZD0iKCQkc2tpcCB0ZXN0IHdhcyBub3QgcnVuKSI7IFwKKwkgICAgZWxzZSBcCisJICAgICAgc2tpcHBlZD0iKCQkc2tpcCB0ZXN0cyB3ZXJlIG5vdCBydW4pIjsgXAorCSAgICBmaTsgXAorCSAgICB0ZXN0IGBlY2hvICIkJHNraXBwZWQiIHwgd2MgLWNgIC1sZSBgZWNobyAiJCRiYW5uZXIiIHwgd2MgLWNgIHx8IFwKKwkgICAgICBkYXNoZXM9IiQkc2tpcHBlZCI7IFwKKwkgIGZpOyBcCisJICByZXBvcnQ9IiI7IFwKKwkgIGlmIHRlc3QgIiQkZmFpbGVkIiAtbmUgMCAmJiB0ZXN0IC1uICIkKFBBQ0tBR0VfQlVHUkVQT1JUKSI7IHRoZW4gXAorCSAgICByZXBvcnQ9IlBsZWFzZSByZXBvcnQgdG8gJChQQUNLQUdFX0JVR1JFUE9SVCkiOyBcCisJICAgIHRlc3QgYGVjaG8gIiQkcmVwb3J0IiB8IHdjIC1jYCAtbGUgYGVjaG8gIiQkYmFubmVyIiB8IHdjIC1jYCB8fCBcCisJICAgICAgZGFzaGVzPSIkJHJlcG9ydCI7IFwKKwkgIGZpOyBcCisJICBkYXNoZXM9YGVjaG8gIiQkZGFzaGVzIiB8IHNlZCBzLy4vPS9nYDsgXAorCSAgaWYgdGVzdCAiJCRmYWlsZWQiIC1lcSAwOyB0aGVuIFwKKwkgICAgZWNobyAiJCRncm4kJGRhc2hlcyI7IFwKKwkgIGVsc2UgXAorCSAgICBlY2hvICIkJHJlZCQkZGFzaGVzIjsgXAorCSAgZmk7IFwKKwkgIGVjaG8gIiQkYmFubmVyIjsgXAorCSAgdGVzdCAteiAiJCRza2lwcGVkIiB8fCBlY2hvICIkJHNraXBwZWQiOyBcCisJICB0ZXN0IC16ICIkJHJlcG9ydCIgfHwgZWNobyAiJCRyZXBvcnQiOyBcCisJICBlY2hvICIkJGRhc2hlcyQkc3RkIjsgXAorCSAgdGVzdCAiJCRmYWlsZWQiIC1lcSAwOyBcCisJZWxzZSA6OyBmaQorCitkaXN0ZGlyOiAkKERJU1RGSUxFUykKKwlAc3JjZGlyc3RyaXA9YGVjaG8gIiQoc3JjZGlyKSIgfCBzZWQgJ3MvW10uW14kJFxcKl0vXFxcXCYvZydgOyBcCisJdG9wc3JjZGlyc3RyaXA9YGVjaG8gIiQodG9wX3NyY2RpcikiIHwgc2VkICdzL1tdLlteJCRcXCpdL1xcXFwmL2cnYDsgXAorCWxpc3Q9JyQoRElTVEZJTEVTKSc7IFwKKwkgIGRpc3RfZmlsZXM9YGZvciBmaWxlIGluICQkbGlzdDsgZG8gZWNobyAkJGZpbGU7IGRvbmUgfCBcCisJICBzZWQgLWUgInN8XiQkc3JjZGlyc3RyaXAvfHw7dCIgXAorCSAgICAgIC1lICJzfF4kJHRvcHNyY2RpcnN0cmlwL3wkKHRvcF9idWlsZGRpcikvfDt0ImA7IFwKKwljYXNlICQkZGlzdF9maWxlcyBpbiBcCisJICAqLyopICQoTUtESVJfUCkgYGVjaG8gIiQkZGlzdF9maWxlcyIgfCBcCisJCQkgICBzZWQgJy9cLy8hZDtzfF58JChkaXN0ZGlyKS98O3MsL1teL10qJCQsLCcgfCBcCisJCQkgICBzb3J0IC11YCA7OyBcCisJZXNhYzsgXAorCWZvciBmaWxlIGluICQkZGlzdF9maWxlczsgZG8gXAorCSAgaWYgdGVzdCAtZiAkJGZpbGUgfHwgdGVzdCAtZCAkJGZpbGU7IHRoZW4gZD0uOyBlbHNlIGQ9JChzcmNkaXIpOyBmaTsgXAorCSAgaWYgdGVzdCAtZCAkJGQvJCRmaWxlOyB0aGVuIFwKKwkgICAgZGlyPWBlY2hvICIvJCRmaWxlIiB8IHNlZCAtZSAncywvW14vXSokJCwsJ2A7IFwKKwkgICAgaWYgdGVzdCAtZCAiJChkaXN0ZGlyKS8kJGZpbGUiOyB0aGVuIFwKKwkgICAgICBmaW5kICIkKGRpc3RkaXIpLyQkZmlsZSIgLXR5cGUgZCAhIC1wZXJtIC03MDAgLWV4ZWMgY2htb2QgdStyd3gge30gXDs7IFwKKwkgICAgZmk7IFwKKwkgICAgaWYgdGVzdCAtZCAkKHNyY2RpcikvJCRmaWxlICYmIHRlc3QgJCRkICE9ICQoc3JjZGlyKTsgdGhlbiBcCisJICAgICAgY3AgLWZwUiAkKHNyY2RpcikvJCRmaWxlICIkKGRpc3RkaXIpJCRkaXIiIHx8IGV4aXQgMTsgXAorCSAgICAgIGZpbmQgIiQoZGlzdGRpcikvJCRmaWxlIiAtdHlwZSBkICEgLXBlcm0gLTcwMCAtZXhlYyBjaG1vZCB1K3J3eCB7fSBcOzsgXAorCSAgICBmaTsgXAorCSAgICBjcCAtZnBSICQkZC8kJGZpbGUgIiQoZGlzdGRpcikkJGRpciIgfHwgZXhpdCAxOyBcCisJICBlbHNlIFwKKwkgICAgdGVzdCAtZiAiJChkaXN0ZGlyKS8kJGZpbGUiIFwKKwkgICAgfHwgY3AgLXAgJCRkLyQkZmlsZSAiJChkaXN0ZGlyKS8kJGZpbGUiIFwKKwkgICAgfHwgZXhpdCAxOyBcCisJICBmaTsgXAorCWRvbmUKK2NoZWNrLWFtOiBhbGwtYW0KKwkkKE1BS0UpICQoQU1fTUFLRUZMQUdTKSAkKGNoZWNrX1BST0dSQU1TKQorCSQoTUFLRSkgJChBTV9NQUtFRkxBR1MpIGNoZWNrLVRFU1RTCitjaGVjazogY2hlY2stYW0KK2FsbC1hbTogTWFrZWZpbGUKK2luc3RhbGxkaXJzOgoraW5zdGFsbDogaW5zdGFsbC1hbQoraW5zdGFsbC1leGVjOiBpbnN0YWxsLWV4ZWMtYW0KK2luc3RhbGwtZGF0YTogaW5zdGFsbC1kYXRhLWFtCit1bmluc3RhbGw6IHVuaW5zdGFsbC1hbQorCitpbnN0YWxsLWFtOiBhbGwtYW0KKwlAJChNQUtFKSAkKEFNX01BS0VGTEFHUykgaW5zdGFsbC1leGVjLWFtIGluc3RhbGwtZGF0YS1hbQorCitpbnN0YWxsY2hlY2s6IGluc3RhbGxjaGVjay1hbQoraW5zdGFsbC1zdHJpcDoKKwkkKE1BS0UpICQoQU1fTUFLRUZMQUdTKSBJTlNUQUxMX1BST0dSQU09IiQoSU5TVEFMTF9TVFJJUF9QUk9HUkFNKSIgXAorCSAgaW5zdGFsbF9zaF9QUk9HUkFNPSIkKElOU1RBTExfU1RSSVBfUFJPR1JBTSkiIElOU1RBTExfU1RSSVBfRkxBRz0tcyBcCisJICBgdGVzdCAteiAnJChTVFJJUCknIHx8IFwKKwkgICAgZWNobyAiSU5TVEFMTF9QUk9HUkFNX0VOVj1TVFJJUFBST0c9JyQoU1RSSVApJyJgIGluc3RhbGwKK21vc3RseWNsZWFuLWdlbmVyaWM6CisKK2NsZWFuLWdlbmVyaWM6CisKK2Rpc3RjbGVhbi1nZW5lcmljOgorCS10ZXN0IC16ICIkKENPTkZJR19DTEVBTl9GSUxFUykiIHx8IHJtIC1mICQoQ09ORklHX0NMRUFOX0ZJTEVTKQorCS10ZXN0IC4gPSAiJChzcmNkaXIpIiB8fCB0ZXN0IC16ICIkKENPTkZJR19DTEVBTl9WUEFUSF9GSUxFUykiIHx8IHJtIC1mICQoQ09ORklHX0NMRUFOX1ZQQVRIX0ZJTEVTKQorCittYWludGFpbmVyLWNsZWFuLWdlbmVyaWM6CisJQGVjaG8gIlRoaXMgY29tbWFuZCBpcyBpbnRlbmRlZCBmb3IgbWFpbnRhaW5lcnMgdG8gdXNlIgorCUBlY2hvICJpdCBkZWxldGVzIGZpbGVzIHRoYXQgbWF5IHJlcXVpcmUgc3BlY2lhbCB0b29scyB0byByZWJ1aWxkLiIKK2NsZWFuOiBjbGVhbi1hbQorCitjbGVhbi1hbTogY2xlYW4tY2hlY2tQUk9HUkFNUyBjbGVhbi1nZW5lcmljIG1vc3RseWNsZWFuLWFtCisKK2Rpc3RjbGVhbjogZGlzdGNsZWFuLWFtCisJLXJtIC1yZiAuLyQoREVQRElSKQorCS1ybSAtZiBNYWtlZmlsZQorZGlzdGNsZWFuLWFtOiBjbGVhbi1hbSBkaXN0Y2xlYW4tY29tcGlsZSBkaXN0Y2xlYW4tZ2VuZXJpYyBcCisJZGlzdGNsZWFuLXRhZ3MKKworZHZpOiBkdmktYW0KKworZHZpLWFtOgorCitodG1sOiBodG1sLWFtCisKK2h0bWwtYW06CisKK2luZm86IGluZm8tYW0KKworaW5mby1hbToKKworaW5zdGFsbC1kYXRhLWFtOgorCitpbnN0YWxsLWR2aTogaW5zdGFsbC1kdmktYW0KKworaW5zdGFsbC1kdmktYW06CisKK2luc3RhbGwtZXhlYy1hbToKKworaW5zdGFsbC1odG1sOiBpbnN0YWxsLWh0bWwtYW0KKworaW5zdGFsbC1odG1sLWFtOgorCitpbnN0YWxsLWluZm86IGluc3RhbGwtaW5mby1hbQorCitpbnN0YWxsLWluZm8tYW06CisKK2luc3RhbGwtbWFuOgorCitpbnN0YWxsLXBkZjogaW5zdGFsbC1wZGYtYW0KKworaW5zdGFsbC1wZGYtYW06CisKK2luc3RhbGwtcHM6IGluc3RhbGwtcHMtYW0KKworaW5zdGFsbC1wcy1hbToKKworaW5zdGFsbGNoZWNrLWFtOgorCittYWludGFpbmVyLWNsZWFuOiBtYWludGFpbmVyLWNsZWFuLWFtCisJLXJtIC1yZiAuLyQoREVQRElSKQorCS1ybSAtZiBNYWtlZmlsZQorbWFpbnRhaW5lci1jbGVhbi1hbTogZGlzdGNsZWFuLWFtIG1haW50YWluZXItY2xlYW4tZ2VuZXJpYworCittb3N0bHljbGVhbjogbW9zdGx5Y2xlYW4tYW0KKworbW9zdGx5Y2xlYW4tYW06IG1vc3RseWNsZWFuLWNvbXBpbGUgbW9zdGx5Y2xlYW4tZ2VuZXJpYworCitwZGY6IHBkZi1hbQorCitwZGYtYW06CisKK3BzOiBwcy1hbQorCitwcy1hbToKKwordW5pbnN0YWxsLWFtOgorCisuTUFLRTogY2hlY2stYW0gaW5zdGFsbC1hbSBpbnN0YWxsLXN0cmlwCisKKy5QSE9OWTogQ1RBR1MgR1RBR1MgYWxsIGFsbC1hbSBjaGVjayBjaGVjay1URVNUUyBjaGVjay1hbSBjbGVhbiBcCisJY2xlYW4tY2hlY2tQUk9HUkFNUyBjbGVhbi1nZW5lcmljIGN0YWdzIGRpc3RjbGVhbiBcCisJZGlzdGNsZWFuLWNvbXBpbGUgZGlzdGNsZWFuLWdlbmVyaWMgZGlzdGNsZWFuLXRhZ3MgZGlzdGRpciBkdmkgXAorCWR2aS1hbSBodG1sIGh0bWwtYW0gaW5mbyBpbmZvLWFtIGluc3RhbGwgaW5zdGFsbC1hbSBcCisJaW5zdGFsbC1kYXRhIGluc3RhbGwtZGF0YS1hbSBpbnN0YWxsLWR2aSBpbnN0YWxsLWR2aS1hbSBcCisJaW5zdGFsbC1leGVjIGluc3RhbGwtZXhlYy1hbSBpbnN0YWxsLWh0bWwgaW5zdGFsbC1odG1sLWFtIFwKKwlpbnN0YWxsLWluZm8gaW5zdGFsbC1pbmZvLWFtIGluc3RhbGwtbWFuIGluc3RhbGwtcGRmIFwKKwlpbnN0YWxsLXBkZi1hbSBpbnN0YWxsLXBzIGluc3RhbGwtcHMtYW0gaW5zdGFsbC1zdHJpcCBcCisJaW5zdGFsbGNoZWNrIGluc3RhbGxjaGVjay1hbSBpbnN0YWxsZGlycyBtYWludGFpbmVyLWNsZWFuIFwKKwltYWludGFpbmVyLWNsZWFuLWdlbmVyaWMgbW9zdGx5Y2xlYW4gbW9zdGx5Y2xlYW4tY29tcGlsZSBcCisJbW9zdGx5Y2xlYW4tZ2VuZXJpYyBwZGYgcGRmLWFtIHBzIHBzLWFtIHRhZ3MgdW5pbnN0YWxsIFwKKwl1bmluc3RhbGwtYW0KKworCisjIFRlbGwgdmVyc2lvbnMgWzMuNTksMy42Mykgb2YgR05VIG1ha2UgdG8gbm90IGV4cG9ydCBhbGwgdmFyaWFibGVzLgorIyBPdGhlcndpc2UgYSBzeXN0ZW0gbGltaXQgKGZvciBTeXNWIGF0IGxlYXN0KSBtYXkgYmUgZXhjZWVkZWQuCisuTk9FWFBPUlQ6CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL3Rlc3QvdC1hci5jIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy90ZXN0L3QtYXIuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40MDkzOTk1Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy90ZXN0L3QtYXIuYwpAQCAtMCwwICsxLDQ1IEBACisvKgorICogbGliZHBrZyAtIERlYmlhbiBwYWNrYWdpbmcgc3VpdGUgbGlicmFyeSByb3V0aW5lcworICogdC1hci5jIC0gdGVzdCBhciBpbXBsZW1lbnRhdGlvbgorICoKKyAqIENvcHlyaWdodCDCqSAyMDEwIEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworI2luY2x1ZGUgPGNvbmZpZy5oPgorI2luY2x1ZGUgPGNvbXBhdC5oPgorCisjaW5jbHVkZSA8ZHBrZy90ZXN0Lmg+CisjaW5jbHVkZSA8ZHBrZy9hci5oPgorCitzdGF0aWMgdm9pZAordGVzdF9hcl9ub3JtYWxpemVfbmFtZSh2b2lkKQoreworCXN0cnVjdCBhcl9oZHIgYXJoOworCisJc3RybmNweShhcmguYXJfbmFtZSwgIm1lbWJlci1uYW1lLyAgICAiLCBzaXplb2YoYXJoLmFyX25hbWUpKTsKKwlkcGtnX2FyX25vcm1hbGl6ZV9uYW1lKCZhcmgpOworCXRlc3Rfc3RyKGFyaC5hcl9uYW1lLCA9PSwgIm1lbWJlci1uYW1lIik7CisKKwlzdHJuY3B5KGFyaC5hcl9uYW1lLCAibWVtYmVyLW5hbWUgICAgICIsIHNpemVvZihhcmguYXJfbmFtZSkpOworCWRwa2dfYXJfbm9ybWFsaXplX25hbWUoJmFyaCk7CisJdGVzdF9zdHIoYXJoLmFyX25hbWUsID09LCAibWVtYmVyLW5hbWUiKTsKK30KKwordm9pZAordGVzdCh2b2lkKQoreworCXRlc3RfYXJfbm9ybWFsaXplX25hbWUoKTsKK30KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvdGVzdC90LWJ1ZmZlci5jIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy90ZXN0L3QtYnVmZmVyLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTM0YzE4MgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvdGVzdC90LWJ1ZmZlci5jCkBAIC0wLDAgKzEsODAgQEAKKy8qCisgKiBsaWJkcGtnIC0gRGViaWFuIHBhY2thZ2luZyBzdWl0ZSBsaWJyYXJ5IHJvdXRpbmVzCisgKiB0LWJ1ZmZlci5jIC0gdGVzdCBidWZmZXIgaGFuZGxpbmcKKyAqCisgKiBDb3B5cmlnaHQgwqkgMjAwOS0yMDExIEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworI2luY2x1ZGUgPGNvbmZpZy5oPgorI2luY2x1ZGUgPGNvbXBhdC5oPgorCisjaW5jbHVkZSA8ZHBrZy90ZXN0Lmg+CisjaW5jbHVkZSA8ZHBrZy9idWZmZXIuaD4KKyNpbmNsdWRlIDxkcGtnL2Rwa2cuaD4KKworI2luY2x1ZGUgPHN5cy90eXBlcy5oPgorCisjaW5jbHVkZSA8dW5pc3RkLmg+CisjaW5jbHVkZSA8c3RkbGliLmg+CisjaW5jbHVkZSA8c3RkaW8uaD4KKworc3RhdGljIGNvbnN0IGNoYXIgc3RyX2VtcHR5W10gPSAiIjsKK3N0YXRpYyBjb25zdCBjaGFyIHJlZl9oYXNoX2VtcHR5W10gPSAiZDQxZDhjZDk4ZjAwYjIwNGU5ODAwOTk4ZWNmODQyN2UiOworc3RhdGljIGNvbnN0IGNoYXIgc3RyX3Rlc3RbXSA9ICJ0aGlzIGlzIGEgdGVzdCBzdHJpbmdcbiI7CitzdGF0aWMgY29uc3QgY2hhciByZWZfaGFzaF90ZXN0W10gPSAiNDc1YWFlM2I4ODVkNzBhOTEzMGVlYzIzYWIzM2YyYjkiOworCitzdGF0aWMgdm9pZAordGVzdF9idWZmZXJfaGFzaCh2b2lkKQoreworCWNoYXIgaGFzaFtNRDVIQVNITEVOICsgMV07CisKKwlidWZmZXJfbWQ1KHN0cl9lbXB0eSwgaGFzaCwgc3RybGVuKHN0cl9lbXB0eSkpOworCXRlc3Rfc3RyKGhhc2gsID09LCByZWZfaGFzaF9lbXB0eSk7CisKKwlidWZmZXJfbWQ1KHN0cl90ZXN0LCBoYXNoLCBzdHJsZW4oc3RyX3Rlc3QpKTsKKwl0ZXN0X3N0cihoYXNoLCA9PSwgcmVmX2hhc2hfdGVzdCk7Cit9CisKK3N0YXRpYyB2b2lkCit0ZXN0X2ZkaW9faGFzaCh2b2lkKQoreworCWNoYXIgaGFzaFtNRDVIQVNITEVOICsgMV07CisJY2hhciAqdGVzdF9maWxlOworCWludCBmZDsKKworCXRlc3RfZmlsZSA9IHN0cmR1cCgidGVzdC5YWFhYWFgiKTsKKwl0ZXN0X3Bhc3ModGVzdF9maWxlICE9IE5VTEwpOworCWZkID0gbWtzdGVtcCh0ZXN0X2ZpbGUpOworCXRlc3RfcGFzcyhmZCA+PSAwKTsKKworCWZkX21kNShmZCwgaGFzaCwgLTEsICJ0ZXN0IGVtcHR5IGZpbGUiKTsKKwl0ZXN0X3N0cihoYXNoLCA9PSwgcmVmX2hhc2hfZW1wdHkpOworCisJdGVzdF9wYXNzKHdyaXRlKGZkLCBzdHJfdGVzdCwgc3RybGVuKHN0cl90ZXN0KSkgPT0gc3RybGVuKHN0cl90ZXN0KSk7CisJdGVzdF9wYXNzKGxzZWVrKGZkLCAwLCBTRUVLX1NFVCkgPT0gMCk7CisKKwlmZF9tZDUoZmQsIGhhc2gsIC0xLCAidGVzdCBmaWxsZWQgZmlsZSIpOworCXRlc3Rfc3RyKGhhc2gsID09LCByZWZfaGFzaF90ZXN0KTsKKworCXRlc3RfcGFzcyh1bmxpbmsodGVzdF9maWxlKSA9PSAwKTsKK30KKworc3RhdGljIHZvaWQKK3Rlc3Qodm9pZCkKK3sKKwl0ZXN0X2J1ZmZlcl9oYXNoKCk7CisJdGVzdF9mZGlvX2hhc2goKTsKK30KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvdGVzdC90LWNvbW1hbmQuYyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvdGVzdC90LWNvbW1hbmQuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42Y2JkN2Y4Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy90ZXN0L3QtY29tbWFuZC5jCkBAIC0wLDAgKzEsMTgzIEBACisvKgorICogbGliZHBrZyAtIERlYmlhbiBwYWNrYWdpbmcgc3VpdGUgbGlicmFyeSByb3V0aW5lcworICogdC1jb21tYW5kLmMgLSB0ZXN0IGNvbW1hbmQgaW1wbGVtZW50YXRpb24KKyAqCisgKiBDb3B5cmlnaHQgwqkgMjAxMC0yMDExIEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworI2luY2x1ZGUgPGNvbmZpZy5oPgorI2luY2x1ZGUgPGNvbXBhdC5oPgorCisjaW5jbHVkZSA8ZHBrZy90ZXN0Lmg+CisjaW5jbHVkZSA8ZHBrZy9zdWJwcm9jLmg+CisjaW5jbHVkZSA8ZHBrZy9jb21tYW5kLmg+CisKK3N0YXRpYyB2b2lkCit0ZXN0X2NvbW1hbmRfaW5pdCh2b2lkKQoreworCXN0cnVjdCBjb21tYW5kIGNtZDsKKworCWNvbW1hbmRfaW5pdCgmY21kLCAiL2Fic29sdXRlL3BhdGgvdG8vcHJvZ25hbWUiLCBOVUxMKTsKKwl0ZXN0X3N0cihjbWQuZmlsZW5hbWUsID09LCAiL2Fic29sdXRlL3BhdGgvdG8vcHJvZ25hbWUiKTsKKwl0ZXN0X3N0cihjbWQubmFtZSwgPT0sICJwcm9nbmFtZSIpOworCXRlc3RfcGFzcyhjbWQuYXJnYyA9PSAwKTsKKwl0ZXN0X3Bhc3MoY21kLmFyZ3ZbMF0gPT0gTlVMTCk7CisKKwljb21tYW5kX2Rlc3Ryb3koJmNtZCk7CisJdGVzdF9wYXNzKGNtZC5maWxlbmFtZSA9PSBOVUxMKTsKKwl0ZXN0X3Bhc3MoY21kLm5hbWUgPT0gTlVMTCk7CisJdGVzdF9wYXNzKGNtZC5hcmdjID09IDApOworCXRlc3RfcGFzcyhjbWQuYXJndiA9PSBOVUxMKTsKKworCWNvbW1hbmRfaW5pdCgmY21kLCAicHJvZ25hbWUiLCBOVUxMKTsKKwl0ZXN0X3N0cihjbWQuZmlsZW5hbWUsID09LCAicHJvZ25hbWUiKTsKKwl0ZXN0X3N0cihjbWQubmFtZSwgPT0sICJwcm9nbmFtZSIpOworCXRlc3RfcGFzcyhjbWQuYXJnYyA9PSAwKTsKKwl0ZXN0X3Bhc3MoY21kLmFyZ3ZbMF0gPT0gTlVMTCk7CisKKwljb21tYW5kX2Rlc3Ryb3koJmNtZCk7CisKKwljb21tYW5kX2luaXQoJmNtZCwgInByb2duYW1lIiwgImRlc2NyaXB0aW9uIik7CisJdGVzdF9zdHIoY21kLmZpbGVuYW1lLCA9PSwgInByb2duYW1lIik7CisJdGVzdF9zdHIoY21kLm5hbWUsID09LCAiZGVzY3JpcHRpb24iKTsKKwl0ZXN0X3Bhc3MoY21kLmFyZ2MgPT0gMCk7CisJdGVzdF9wYXNzKGNtZC5hcmd2WzBdID09IE5VTEwpOworCisJY29tbWFuZF9kZXN0cm95KCZjbWQpOworfQorCitzdGF0aWMgdm9pZAordGVzdF9jb21tYW5kX2FkZF9hcmcodm9pZCkKK3sKKwlzdHJ1Y3QgY29tbWFuZCBjbWQ7CisKKwljb21tYW5kX2luaXQoJmNtZCwgInRlc3QiLCBOVUxMKTsKKworCWNvbW1hbmRfYWRkX2FyZygmY21kLCAiYXJnIDAiKTsKKwl0ZXN0X3Bhc3MoY21kLmFyZ2MgPT0gMSk7CisJdGVzdF9zdHIoY21kLmFyZ3ZbMF0sID09LCAiYXJnIDAiKTsKKwl0ZXN0X3Bhc3MoY21kLmFyZ3ZbMV0gPT0gTlVMTCk7CisKKwljb21tYW5kX2FkZF9hcmcoJmNtZCwgImFyZyAxIik7CisJdGVzdF9wYXNzKGNtZC5hcmdjID09IDIpOworCXRlc3Rfc3RyKGNtZC5hcmd2WzBdLCA9PSwgImFyZyAwIik7CisJdGVzdF9zdHIoY21kLmFyZ3ZbMV0sID09LCAiYXJnIDEiKTsKKwl0ZXN0X3Bhc3MoY21kLmFyZ3ZbMl0gPT0gTlVMTCk7CisKKwljb21tYW5kX2FkZF9hcmcoJmNtZCwgImFyZyAyIik7CisJdGVzdF9wYXNzKGNtZC5hcmdjID09IDMpOworCXRlc3Rfc3RyKGNtZC5hcmd2WzBdLCA9PSwgImFyZyAwIik7CisJdGVzdF9zdHIoY21kLmFyZ3ZbMV0sID09LCAiYXJnIDEiKTsKKwl0ZXN0X3N0cihjbWQuYXJndlsyXSwgPT0sICJhcmcgMiIpOworCXRlc3RfcGFzcyhjbWQuYXJndlszXSA9PSBOVUxMKTsKKworCWNvbW1hbmRfZGVzdHJveSgmY21kKTsKK30KKworc3RhdGljIHZvaWQKK3Rlc3RfY29tbWFuZF9hZGRfYXJnbCh2b2lkKQoreworCXN0cnVjdCBjb21tYW5kIGNtZDsKKwljb25zdCBjaGFyICphcmdzW10gPSB7CisJCSJhcmcgMSIsCisJCSJhcmcgMiIsCisJCSJhcmcgMyIsCisJCU5VTEwsCisJfTsKKworCWNvbW1hbmRfaW5pdCgmY21kLCAidGVzdCIsIE5VTEwpOworCisJY29tbWFuZF9hZGRfYXJnKCZjbWQsICJhcmcgMCIpOworCisJY29tbWFuZF9hZGRfYXJnbCgmY21kLCBhcmdzKTsKKwl0ZXN0X3Bhc3MoY21kLmFyZ2MgPT0gNCk7CisJdGVzdF9zdHIoY21kLmFyZ3ZbMF0sID09LCAiYXJnIDAiKTsKKwl0ZXN0X3N0cihjbWQuYXJndlsxXSwgPT0sICJhcmcgMSIpOworCXRlc3Rfc3RyKGNtZC5hcmd2WzJdLCA9PSwgImFyZyAyIik7CisJdGVzdF9zdHIoY21kLmFyZ3ZbM10sID09LCAiYXJnIDMiKTsKKwl0ZXN0X3Bhc3MoY21kLmFyZ3ZbNF0gPT0gTlVMTCk7CisKKwljb21tYW5kX2Rlc3Ryb3koJmNtZCk7Cit9CisKK3N0YXRpYyB2b2lkCit0ZXN0X2NvbW1hbmRfYWRkX2FyZ3Modm9pZCkKK3sKKwlzdHJ1Y3QgY29tbWFuZCBjbWQ7CisKKwljb21tYW5kX2luaXQoJmNtZCwgInRlc3QiLCBOVUxMKTsKKworCWNvbW1hbmRfYWRkX2FyZygmY21kLCAiYXJnIDAiKTsKKworCWNvbW1hbmRfYWRkX2FyZ3MoJmNtZCwgImFyZyAxIiwgImFyZyAyIiwgImFyZyAzIiwgTlVMTCk7CisJdGVzdF9wYXNzKGNtZC5hcmdjID09IDQpOworCXRlc3Rfc3RyKGNtZC5hcmd2WzBdLCA9PSwgImFyZyAwIik7CisJdGVzdF9zdHIoY21kLmFyZ3ZbMV0sID09LCAiYXJnIDEiKTsKKwl0ZXN0X3N0cihjbWQuYXJndlsyXSwgPT0sICJhcmcgMiIpOworCXRlc3Rfc3RyKGNtZC5hcmd2WzNdLCA9PSwgImFyZyAzIik7CisJdGVzdF9wYXNzKGNtZC5hcmd2WzRdID09IE5VTEwpOworCisJY29tbWFuZF9kZXN0cm95KCZjbWQpOworfQorCitzdGF0aWMgdm9pZAordGVzdF9jb21tYW5kX2V4ZWModm9pZCkKK3sKKwlzdHJ1Y3QgY29tbWFuZCBjbWQ7CisJcGlkX3QgcGlkOworCisJY29tbWFuZF9pbml0KCZjbWQsICIvYmluL3RydWUiLCAiZXhlYyB0ZXN0Iik7CisKKwljb21tYW5kX2FkZF9hcmcoJmNtZCwgImFyZyAwIik7CisJY29tbWFuZF9hZGRfYXJnKCZjbWQsICJhcmcgMSIpOworCisJcGlkID0gc3VicHJvY19mb3JrKCk7CisKKwlpZiAocGlkID09IDApCisJCWNvbW1hbmRfZXhlYygmY21kKTsKKworCXN1YnByb2Nfd2FpdF9jaGVjayhwaWQsICJjb21tYW5kIGV4ZWMgdGVzdCIsIDApOworfQorCitzdGF0aWMgdm9pZAordGVzdF9jb21tYW5kX3NoZWxsKHZvaWQpCit7CisJcGlkX3QgcGlkOworCWludCByZXQ7CisKKwlwaWQgPSBzdWJwcm9jX2ZvcmsoKTsKKwlpZiAocGlkID09IDApCisJCWNvbW1hbmRfc2hlbGwoInRydWUiLCAiY29tbWFuZCBzaGVsbCBwYXNzIHRlc3QiKTsKKwlyZXQgPSBzdWJwcm9jX3dhaXRfY2hlY2socGlkLCAiY29tbWFuZCBzaGVsbCBwYXNzIHRlc3QiLCAwKTsKKwl0ZXN0X3Bhc3MocmV0ID09IDApOworCisJcGlkID0gc3VicHJvY19mb3JrKCk7CisJaWYgKHBpZCA9PSAwKQorCQljb21tYW5kX3NoZWxsKCJmYWxzZSIsICJjb21tYW5kIHNoZWxsIGZhaWwgdGVzdCIpOworCXJldCA9IHN1YnByb2Nfd2FpdF9jaGVjayhwaWQsICJjb21tYW5kIHNoZWxsIGZhaWwgdGVzdCIsIFBST0NOT0VSUik7CisJdGVzdF9mYWlsKHJldCA9PSAwKTsKK30KKworc3RhdGljIHZvaWQKK3Rlc3Qodm9pZCkKK3sKKwl0ZXN0X2NvbW1hbmRfaW5pdCgpOworCXRlc3RfY29tbWFuZF9hZGRfYXJnKCk7CisJdGVzdF9jb21tYW5kX2FkZF9hcmdsKCk7CisJdGVzdF9jb21tYW5kX2FkZF9hcmdzKCk7CisJdGVzdF9jb21tYW5kX2V4ZWMoKTsKKwl0ZXN0X2NvbW1hbmRfc2hlbGwoKTsKK30KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvdGVzdC90LW1hY3Jvcy5jIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy90ZXN0L3QtbWFjcm9zLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMmIxOTc3NQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvdGVzdC90LW1hY3Jvcy5jCkBAIC0wLDAgKzEsMzkgQEAKKy8qCisgKiBsaWJkcGtnIC0gRGViaWFuIHBhY2thZ2luZyBzdWl0ZSBsaWJyYXJ5IHJvdXRpbmVzCisgKiB0LW1hY3Jvcy5jIC0gdGVzdCBDIHN1cHBvcnQgbWFjcm9zCisgKgorICogQ29weXJpZ2h0IMKpIDIwMDkgR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaW5jbHVkZSA8Y29uZmlnLmg+CisjaW5jbHVkZSA8Y29tcGF0Lmg+CisKKyNpbmNsdWRlIDxkcGtnL3Rlc3QuaD4KKyNpbmNsdWRlIDxkcGtnL21hY3Jvcy5oPgorCitzdGF0aWMgdm9pZAordGVzdCh2b2lkKQoreworCXRlc3RfcGFzcyhtaW4oMTAsIDMwKSA9PSAxMCk7CisJdGVzdF9wYXNzKG1pbigzMCwgMTApID09IDEwKTsKKwl0ZXN0X3Bhc3MobWluKDAsIDEwKSA9PSAwKTsKKwl0ZXN0X3Bhc3MobWluKC0xMCwgMCkgPT0gLTEwKTsKKworCXRlc3RfcGFzcyhtYXgoMTAsIDMwKSA9PSAzMCk7CisJdGVzdF9wYXNzKG1heCgzMCwgMTApID09IDMwKTsKKwl0ZXN0X3Bhc3MobWF4KDAsIDEwKSA9PSAxMCk7CisJdGVzdF9wYXNzKG1heCgtMTAsIDApID09IDApOworfQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy90ZXN0L3QtbW9kLWRiLmMgYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL3Rlc3QvdC1tb2QtZGIuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kM2NkNTVkCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy90ZXN0L3QtbW9kLWRiLmMKQEAgLTAsMCArMSw1NiBAQAorLyoKKyAqIGxpYmRwa2cgLSBEZWJpYW4gcGFja2FnaW5nIHN1aXRlIGxpYnJhcnkgcm91dGluZXMKKyAqIHQtZGIuYyAtIHRlc3QgZGF0YWJhc2UgaW1wbGVtZW50YXRpb24KKyAqCisgKiBDb3B5cmlnaHQgwqkgMjAxMSBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CisgKgorICogVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisgKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAqIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorICovCisKKyNpbmNsdWRlIDxjb25maWcuaD4KKyNpbmNsdWRlIDxjb21wYXQuaD4KKworI2luY2x1ZGUgPHN0ZGxpYi5oPgorCisjaW5jbHVkZSA8ZHBrZy90ZXN0Lmg+CisjaW5jbHVkZSA8ZHBrZy9kcGtnLWRiLmg+CisKK3N0YXRpYyB2b2lkCit0ZXN0X2RiX2Rpcih2b2lkKQoreworCWNoYXIgKmRpcjsKKworCXRlc3Rfc3RyKGRwa2dfZGJfZ2V0X2RpcigpLCA9PSwgQURNSU5ESVIpOworCisJZHBrZ19kYl9zZXRfZGlyKCJ0ZXN0ZGlyIik7CisJdGVzdF9zdHIoZHBrZ19kYl9nZXRfZGlyKCksID09LCAidGVzdGRpciIpOworCisJc2V0ZW52KCJEUEtHX0FETUlORElSIiwgInRlc3RlbnZkaXIiLCAxKTsKKwlkcGtnX2RiX3NldF9kaXIoTlVMTCk7CisJdGVzdF9zdHIoZHBrZ19kYl9nZXRfZGlyKCksID09LCAidGVzdGVudmRpciIpOworCisJdW5zZXRlbnYoIkRQS0dfQURNSU5ESVIiKTsKKwlkcGtnX2RiX3NldF9kaXIoTlVMTCk7CisJdGVzdF9zdHIoZHBrZ19kYl9nZXRfZGlyKCksID09LCBBRE1JTkRJUik7CisKKwlkaXIgPSBkcGtnX2RiX2dldF9wYXRoKCJ0ZXN0ZmlsZSIpOworCXRlc3Rfc3RyKGRpciwgPT0sIEFETUlORElSICIvdGVzdGZpbGUiKTsKKwlmcmVlKGRpcik7Cit9CisKK3N0YXRpYyB2b2lkCit0ZXN0KHZvaWQpCit7CisJdGVzdF9kYl9kaXIoKTsKK30KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvdGVzdC90LXBhdGguYyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvdGVzdC90LXBhdGguYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iYjg3YzI5Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy90ZXN0L3QtcGF0aC5jCkBAIC0wLDAgKzEsMTgwIEBACisvKgorICogbGliZHBrZyAtIERlYmlhbiBwYWNrYWdpbmcgc3VpdGUgbGlicmFyeSByb3V0aW5lcworICogdC1wYXRoLmMgLSB0ZXN0IHBhdGggaGFuZGxpbmcgY29kZQorICoKKyAqIENvcHlyaWdodCDCqSAyMDA5IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworI2luY2x1ZGUgPGNvbmZpZy5oPgorI2luY2x1ZGUgPGNvbXBhdC5oPgorCisjaW5jbHVkZSA8Y3R5cGUuaD4KKyNpbmNsdWRlIDxzdGRib29sLmg+CisjaW5jbHVkZSA8c3RkbGliLmg+CisKKyNpbmNsdWRlIDxkcGtnL3Rlc3QuaD4KKyNpbmNsdWRlIDxkcGtnL3BhdGguaD4KKworLyogVXNlIHRoZSB0ZXN0X3RyaW1fZXFfcmVmIG1hY3JvIHRvIGF2b2lkIGxlYWtpbmcgdGhlIHN0cmluZyBhbmQgdG8gZ2V0CisgKiBtZWFuaW5nZnVsIGxpbmUgbnVtYmVycyBmcm9tIGFzc2VydC4gKi8KKyNkZWZpbmUgdGVzdF90cmltX2VxX3JlZihwLCByZWYpIFwKK2RvIHsgXAorCWNoYXIgKnQgPSBzdHJkdXAoKHApKTsgXAorCXBhdGhfdHJpbV9zbGFzaF9zbGFzaGRvdCh0KTsgXAorCXRlc3Rfc3RyKHQsID09LCAocmVmKSk7IFwKKwlmcmVlKHQpOyBcCit9IHdoaWxlICgwKQorCitzdGF0aWMgdm9pZAordGVzdF9wYXRoX3RyaW0odm9pZCkKK3sKKwl0ZXN0X3RyaW1fZXFfcmVmKCIuLy4vLi8uIiwgIi4iKTsKKwl0ZXN0X3RyaW1fZXFfcmVmKCIuLy4vLi8iLCAiLiIpOworCXRlc3RfdHJpbV9lcV9yZWYoIi4vLiIsICIuIik7CisJdGVzdF90cmltX2VxX3JlZigiLi8iLCAiLiIpOworCXRlc3RfdHJpbV9lcV9yZWYoIi8uLy4vLi8uIiwgIi8iKTsKKwl0ZXN0X3RyaW1fZXFfcmVmKCIvLi8iLCAiLyIpOworCXRlc3RfdHJpbV9lcV9yZWYoIi8uIiwgIi8iKTsKKwl0ZXN0X3RyaW1fZXFfcmVmKCIvIiwgIi8iKTsKKwl0ZXN0X3RyaW1fZXFfcmVmKCIiLCAiIik7CisJdGVzdF90cmltX2VxX3JlZigiLy4vLi4vLiIsICIvLi8uLiIpOworCXRlc3RfdHJpbV9lcV9yZWYoIi9mb28vYmFyLy4vIiwgIi9mb28vYmFyIik7CisJdGVzdF90cmltX2VxX3JlZigiLi9mb28vYmFyLy4vIiwgIi4vZm9vL2JhciIpOworCXRlc3RfdHJpbV9lcV9yZWYoIi8uL2Zvby9iYXIvLi8iLCAiLy4vZm9vL2JhciIpOworfQorCitzdGF0aWMgdm9pZAordGVzdF9wYXRoX3NraXAodm9pZCkKK3sKKwl0ZXN0X3N0cihwYXRoX3NraXBfc2xhc2hfZG90c2xhc2goIi4vLi8uLy4iKSwgPT0sICIuIik7CisJdGVzdF9zdHIocGF0aF9za2lwX3NsYXNoX2RvdHNsYXNoKCIuLy4vLi8iKSwgPT0sICIiKTsKKwl0ZXN0X3N0cihwYXRoX3NraXBfc2xhc2hfZG90c2xhc2goIi4vLiIpLCA9PSwgIi4iKTsKKwl0ZXN0X3N0cihwYXRoX3NraXBfc2xhc2hfZG90c2xhc2goIi4vIiksID09LCAiIik7CisJdGVzdF9zdHIocGF0aF9za2lwX3NsYXNoX2RvdHNsYXNoKCIvLi8uLy4vLiIpLCA9PSwgIi4iKTsKKwl0ZXN0X3N0cihwYXRoX3NraXBfc2xhc2hfZG90c2xhc2goIi8uLyIpLCA9PSwgIiIpOworCXRlc3Rfc3RyKHBhdGhfc2tpcF9zbGFzaF9kb3RzbGFzaCgiLy4iKSwgPT0sICIuIik7CisJdGVzdF9zdHIocGF0aF9za2lwX3NsYXNoX2RvdHNsYXNoKCIvIiksID09LCAiIik7CisJdGVzdF9zdHIocGF0aF9za2lwX3NsYXNoX2RvdHNsYXNoKCIvLi8uLi8uIiksID09LCAiLi4vLiIpOworCXRlc3Rfc3RyKHBhdGhfc2tpcF9zbGFzaF9kb3RzbGFzaCgiL2Zvby9iYXIvLi8iKSwgPT0sICJmb28vYmFyLy4vIik7CisJdGVzdF9zdHIocGF0aF9za2lwX3NsYXNoX2RvdHNsYXNoKCIuL2Zvby9iYXIvLi8iKSwgPT0sICJmb28vYmFyLy4vIik7CisJdGVzdF9zdHIocGF0aF9za2lwX3NsYXNoX2RvdHNsYXNoKCIvLi9mb28vYmFyLy4vIiksID09LCAiZm9vL2Jhci8uLyIpOworfQorCitzdGF0aWMgdm9pZAordGVzdF9wYXRoX2Jhc2VuYW1lKHZvaWQpCit7CisJdGVzdF9zdHIocGF0aF9iYXNlbmFtZSgiLi8uIiksID09LCAiLiIpOworCXRlc3Rfc3RyKHBhdGhfYmFzZW5hbWUoIi4vIiksID09LCAiIik7CisJdGVzdF9zdHIocGF0aF9iYXNlbmFtZSgiLy4iKSwgPT0sICIuIik7CisJdGVzdF9zdHIocGF0aF9iYXNlbmFtZSgiLyIpLCA9PSwgIiIpOworCXRlc3Rfc3RyKHBhdGhfYmFzZW5hbWUoIi9mb28iKSwgPT0sICJmb28iKTsKKwl0ZXN0X3N0cihwYXRoX2Jhc2VuYW1lKCIvZm9vL2JhciIpLCA9PSwgImJhciIpOworCXRlc3Rfc3RyKHBhdGhfYmFzZW5hbWUoIi9mb28vYmFyLyIpLCA9PSwgIiIpOworfQorCitzdGF0aWMgdm9pZAordGVzdF9wYXRoX3RlbXAodm9pZCkKK3sKKwljaGFyICp0ZW1wbGF0ZTsKKworCXRlbXBsYXRlID0gcGF0aF9tYWtlX3RlbXBfdGVtcGxhdGUoInRlc3QiKTsKKworCXRlc3RfcGFzcyhzdHJzdHIodGVtcGxhdGUsICJ0ZXN0IikgIT0gTlVMTCk7CisJdGVzdF9wYXNzKHN0cnN0cih0ZW1wbGF0ZSwgIlhYWFhYWCIpICE9IE5VTEwpOworCisJZnJlZSh0ZW1wbGF0ZSk7Cit9CisKK3N0YXRpYyBib29sCitzdHJpbmdfaXNfYXNjaWkoY29uc3QgY2hhciAqc3RyKQoreworCXdoaWxlICgqc3RyKSB7CisJCWlmICghaXNhc2NpaSgqc3RyKSkKKwkJCXJldHVybiBmYWxzZTsKKworCQlzdHIrKzsKKwl9CisKKwlyZXR1cm4gdHJ1ZTsKK30KKworc3RhdGljIHZvaWQKK3Rlc3RfcGF0aF9xdW90ZSh2b2lkKQoreworCWNvbnN0IGNoYXIgc3JjXzdfYml0W10gPSAic3RyaW5nIHdpdGggNy1iaXQgY2hhcnMgb25seSI7CisJY29uc3QgY2hhciBzcmNfN19iaXRfdHJpbVtdID0gInN0cmluZyB3aXRoIDctYml0IGNoYXJzIjsKKwljb25zdCBjaGFyIHNyY184X2JpdFtdID0gInRleHQgdy8gOC1iaXQgY2hhcnM6IFxcIFwzNzAgXDMwMCBcMzQyIGVuZCI7CisJY29uc3QgY2hhciBzcmNfOF9iaXRfZW5kW10gPSAidGV4dCBcMzcwIjsKKwljb25zdCBjaGFyIHNyY19ic19lbmRbXSA9ICJ0ZXh0IFxcIjsKKwljaGFyICpkc3Q7CisJc2l6ZV90IGxlbjsKKworCS8qIFRlc3Qgbm8gcXVvdGluZy4gKi8KKwlsZW4gPSBzdHJsZW4oc3JjXzdfYml0KSArIDE7CisJZHN0ID0gbWFsbG9jKGxlbik7CisJdGVzdF9mYWlsKGRzdCA9PSBOVUxMKTsKKworCXBhdGhfcXVvdGVfZmlsZW5hbWUoZHN0LCBzcmNfN19iaXQsIGxlbik7CisJdGVzdF9zdHIoZHN0LCA9PSwgc3JjXzdfYml0KTsKKwlmcmVlKGRzdCk7CisKKwkvKiBUZXN0IG5vIHF1b3Rpbmcgd2l0aCBsaW1pdC4gKi8KKwlsZW4gPSBzdHJsZW4oc3JjXzdfYml0X3RyaW0pICsgMTsKKwlkc3QgPSBtYWxsb2MobGVuKTsKKwl0ZXN0X2ZhaWwoZHN0ID09IE5VTEwpOworCisJcGF0aF9xdW90ZV9maWxlbmFtZShkc3QsIHNyY183X2JpdCwgbGVuKTsKKwl0ZXN0X3N0cihkc3QsID09LCBzcmNfN19iaXRfdHJpbSk7CisJZnJlZShkc3QpOworCisJLyogVGVzdCBub3JtYWwgcXVvdGluZy4gKi8KKwlsZW4gPSBzdHJsZW4oc3JjXzhfYml0KSAqIDIgKyAxOworCWRzdCA9IG1hbGxvYyhsZW4pOworCXRlc3RfZmFpbChkc3QgPT0gTlVMTCk7CisKKwlwYXRoX3F1b3RlX2ZpbGVuYW1lKGRzdCwgc3JjXzhfYml0LCBsZW4pOworCXRlc3RfcGFzcyhzdHJzdHIoZHN0LCAiZW5kIikgIT0gTlVMTCk7CisJdGVzdF9wYXNzKHN0cmluZ19pc19hc2NpaShkc3QpKTsKKwlmcmVlKGRzdCk7CisKKwkvKiBUZXN0IG5vcm1hbCBxdW90aW5nIHdpdGggbGltaXQuICovCisJbGVuID0gc3RybGVuKHNyY184X2JpdF9lbmQpICsgMSArIDI7CisJZHN0ID0gbWFsbG9jKGxlbik7CisJdGVzdF9mYWlsKGRzdCA9PSBOVUxMKTsKKworCXBhdGhfcXVvdGVfZmlsZW5hbWUoZHN0LCBzcmNfOF9iaXRfZW5kLCBsZW4pOworCXRlc3Rfc3RyKGRzdCwgPT0sICJ0ZXh0ICIpOworCWZyZWUoZHN0KTsKKworCS8qIFRlc3QgYmFja3NsYXNoIHF1b3Rpbmcgd2l0aCBsaW1pdC4gKi8KKwlsZW4gPSBzdHJsZW4oc3JjX2JzX2VuZCkgKyAxOworCWRzdCA9IG1hbGxvYyhsZW4pOworCXRlc3RfZmFpbChkc3QgPT0gTlVMTCk7CisKKwlwYXRoX3F1b3RlX2ZpbGVuYW1lKGRzdCwgc3JjX2JzX2VuZCwgbGVuKTsKKwl0ZXN0X3N0cihkc3QsID09LCAidGV4dCAiKTsKKwlmcmVlKGRzdCk7Cit9CisKK3N0YXRpYyB2b2lkCit0ZXN0KHZvaWQpCit7CisJdGVzdF9wYXRoX3RyaW0oKTsKKwl0ZXN0X3BhdGhfc2tpcCgpOworCXRlc3RfcGF0aF9iYXNlbmFtZSgpOworCXRlc3RfcGF0aF90ZW1wKCk7CisJdGVzdF9wYXRoX3F1b3RlKCk7Cit9CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL3Rlc3QvdC1wa2ctbGlzdC5jIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy90ZXN0L3QtcGtnLWxpc3QuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45YTQ0NmUzCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy90ZXN0L3QtcGtnLWxpc3QuYwpAQCAtMCwwICsxLDg5IEBACisvKgorICogbGliZHBrZyAtIERlYmlhbiBwYWNrYWdpbmcgc3VpdGUgbGlicmFyeSByb3V0aW5lcworICogdC1wa2ctbGlzdC5jIC0gdGVzdCBwa2ctbGlzdCBpbXBsZW1lbnRhdGlvbgorICoKKyAqIENvcHlyaWdodCDCqSAyMDEwIEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworI2luY2x1ZGUgPGNvbmZpZy5oPgorI2luY2x1ZGUgPGNvbXBhdC5oPgorCisjaW5jbHVkZSA8ZHBrZy90ZXN0Lmg+CisjaW5jbHVkZSA8ZHBrZy9kcGtnLWRiLmg+CisjaW5jbHVkZSA8ZHBrZy9wa2ctbGlzdC5oPgorCitzdGF0aWMgdm9pZAordGVzdF9wa2dfbGlzdF9uZXcodm9pZCkKK3sKKwlzdHJ1Y3QgcGtnX2xpc3QgKmwxLCAqbDIsICpsMzsKKwlzdHJ1Y3QgcGtnaW5mbyBwa2c7CisKKwlsMSA9IHBrZ19saXN0X25ldygmcGtnLCBOVUxMKTsKKwl0ZXN0X3Bhc3MobDEgIT0gTlVMTCk7CisJdGVzdF9wYXNzKGwxLT5uZXh0ID09IE5VTEwpOworCXRlc3RfcGFzcyhsMS0+cGtnID09ICZwa2cpOworCisJbDIgPSBwa2dfbGlzdF9uZXcoJnBrZywgbDEpOworCXRlc3RfcGFzcyhsMiAhPSBOVUxMKTsKKwl0ZXN0X3Bhc3MobDItPm5leHQgPT0gbDEpOworCXRlc3RfcGFzcyhsMi0+cGtnID09ICZwa2cpOworCisJbDMgPSBwa2dfbGlzdF9uZXcoJnBrZywgbDIpOworCXRlc3RfcGFzcyhsMyAhPSBOVUxMKTsKKwl0ZXN0X3Bhc3MobDMtPm5leHQgPT0gbDIpOworCXRlc3RfcGFzcyhsMy0+cGtnID09ICZwa2cpOworCisJcGtnX2xpc3RfZnJlZShsMyk7Cit9CisKK3N0YXRpYyB2b2lkCit0ZXN0X3BrZ19saXN0X3ByZXBlbmQodm9pZCkKK3sKKwlzdHJ1Y3QgcGtnX2xpc3QgKmhlYWQgPSBOVUxMLCAqbDEsICpsMiwgKmwzOworCXN0cnVjdCBwa2dpbmZvIHBrZzsKKworCXBrZ19saXN0X3ByZXBlbmQoJmhlYWQsICZwa2cpOworCXRlc3RfcGFzcyhoZWFkICE9IE5VTEwpOworCXRlc3RfcGFzcyhoZWFkLT5uZXh0ID09IE5VTEwpOworCXRlc3RfcGFzcyhoZWFkLT5wa2cgPT0gJnBrZyk7CisJbDEgPSBoZWFkOworCisJcGtnX2xpc3RfcHJlcGVuZCgmaGVhZCwgJnBrZyk7CisJdGVzdF9wYXNzKGhlYWQgIT0gTlVMTCk7CisJdGVzdF9wYXNzKGhlYWQtPm5leHQgPT0gbDEpOworCXRlc3RfcGFzcyhoZWFkLT5wa2cgPT0gJnBrZyk7CisJbDIgPSBoZWFkOworCisJcGtnX2xpc3RfcHJlcGVuZCgmaGVhZCwgJnBrZyk7CisJdGVzdF9wYXNzKGhlYWQgIT0gTlVMTCk7CisJdGVzdF9wYXNzKGhlYWQtPm5leHQgPT0gbDIpOworCXRlc3RfcGFzcyhoZWFkLT5wa2cgPT0gJnBrZyk7CisJbDMgPSBoZWFkOworCisJcGtnX2xpc3RfcHJlcGVuZCgmaGVhZCwgJnBrZyk7CisJdGVzdF9wYXNzKGhlYWQgIT0gTlVMTCk7CisJdGVzdF9wYXNzKGhlYWQtPm5leHQgPT0gbDMpOworCXRlc3RfcGFzcyhoZWFkLT5wa2cgPT0gJnBrZyk7CisKKwlwa2dfbGlzdF9mcmVlKGhlYWQpOworfQorCitzdGF0aWMgdm9pZAordGVzdCh2b2lkKQoreworCXRlc3RfcGtnX2xpc3RfbmV3KCk7CisJdGVzdF9wa2dfbGlzdF9wcmVwZW5kKCk7Cit9CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL3Rlc3QvdC1wa2ctcXVldWUuYyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvdGVzdC90LXBrZy1xdWV1ZS5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjk2N2ExYmUKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL3Rlc3QvdC1wa2ctcXVldWUuYwpAQCAtMCwwICsxLDExNyBAQAorLyoKKyAqIGxpYmRwa2cgLSBEZWJpYW4gcGFja2FnaW5nIHN1aXRlIGxpYnJhcnkgcm91dGluZXMKKyAqIHQtcGtnLXF1ZXVlLmMgLSB0ZXN0IHBrZy1xdWV1ZSBpbXBsZW1lbnRhdGlvbgorICoKKyAqIENvcHlyaWdodCDCqSAyMDEwIEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworI2luY2x1ZGUgPGNvbmZpZy5oPgorI2luY2x1ZGUgPGNvbXBhdC5oPgorCisjaW5jbHVkZSA8ZHBrZy90ZXN0Lmg+CisjaW5jbHVkZSA8ZHBrZy9kcGtnLWRiLmg+CisjaW5jbHVkZSA8ZHBrZy9wa2ctcXVldWUuaD4KKworc3RhdGljIHZvaWQKK3Rlc3RfcGtnX3F1ZXVlX2luaXQodm9pZCkKK3sKKwlzdHJ1Y3QgcGtnX3F1ZXVlIHEgPSBQS0dfUVVFVUVfSU5JVDsKKwlzdHJ1Y3QgcGtnX2xpc3QgbDsKKworCXRlc3RfcGFzcyhxLmxlbmd0aCA9PSAwKTsKKwl0ZXN0X3Bhc3MocS5oZWFkID09IE5VTEwpOworCXRlc3RfcGFzcyhxLnRhaWwgPT0gTlVMTCk7CisKKwl0ZXN0X3Bhc3MocGtnX3F1ZXVlX2lzX2VtcHR5KCZxKSk7CisKKwlxID0gKHN0cnVjdCBwa2dfcXVldWUpeyAubGVuZ3RoID0gMTAsIC5oZWFkID0gJmwsIC50YWlsID0gJmwgfTsKKworCXBrZ19xdWV1ZV9pbml0KCZxKTsKKwl0ZXN0X3Bhc3MocS5sZW5ndGggPT0gMCk7CisJdGVzdF9wYXNzKHEuaGVhZCA9PSBOVUxMKTsKKwl0ZXN0X3Bhc3MocS50YWlsID09IE5VTEwpOworCisJdGVzdF9wYXNzKHBrZ19xdWV1ZV9pc19lbXB0eSgmcSkpOworfQorCitzdGF0aWMgdm9pZAordGVzdF9wa2dfcXVldWVfcHVzaF9wb3Aodm9pZCkKK3sKKwlzdHJ1Y3QgcGtnX3F1ZXVlIHEgPSBQS0dfUVVFVUVfSU5JVDsKKwlzdHJ1Y3QgcGtnX2xpc3QgKmwxLCAqbDIsICpsMzsKKwlzdHJ1Y3QgcGtnaW5mbyBwa2csICpwa2dwOworCisJcGtnX2JsYW5rKCZwa2cpOworCisJdGVzdF9wYXNzKHBrZ19xdWV1ZV9pc19lbXB0eSgmcSkpOworCisJLyogVGVzdCBwdXNoIG9wZXJhdGlvbnMuICovCisKKwlsMSA9IHBrZ19xdWV1ZV9wdXNoKCZxLCAmcGtnKTsKKwl0ZXN0X3Bhc3MobDEgIT0gTlVMTCk7CisJdGVzdF9wYXNzKHEuaGVhZCA9PSBsMSk7CisJdGVzdF9wYXNzKHEudGFpbCA9PSBsMSk7CisJdGVzdF9wYXNzKHEubGVuZ3RoID09IDEpOworCisJbDIgPSBwa2dfcXVldWVfcHVzaCgmcSwgJnBrZyk7CisJdGVzdF9wYXNzKGwyICE9IE5VTEwpOworCXRlc3RfcGFzcyhxLmhlYWQgPT0gbDEpOworCXRlc3RfcGFzcyhxLnRhaWwgPT0gbDIpOworCXRlc3RfcGFzcyhxLmxlbmd0aCA9PSAyKTsKKworCWwzID0gcGtnX3F1ZXVlX3B1c2goJnEsICZwa2cpOworCXRlc3RfcGFzcyhsMyAhPSBOVUxMKTsKKwl0ZXN0X3Bhc3MocS5oZWFkID09IGwxKTsKKwl0ZXN0X3Bhc3MocS50YWlsID09IGwzKTsKKwl0ZXN0X3Bhc3MocS5sZW5ndGggPT0gMyk7CisKKwkvKiBUZXN0IHBvcCBvcGVyYXRpb25zLiAqLworCisJcGtncCA9IHBrZ19xdWV1ZV9wb3AoJnEpOworCXRlc3RfcGFzcyhwa2dwICE9IE5VTEwpOworCXRlc3RfcGFzcyhxLmhlYWQgPT0gbDIpOworCXRlc3RfcGFzcyhxLnRhaWwgPT0gbDMpOworCXRlc3RfcGFzcyhxLmxlbmd0aCA9PSAyKTsKKworCXBrZ3AgPSBwa2dfcXVldWVfcG9wKCZxKTsKKwl0ZXN0X3Bhc3MocGtncCAhPSBOVUxMKTsKKwl0ZXN0X3Bhc3MocS5oZWFkID09IGwzKTsKKwl0ZXN0X3Bhc3MocS50YWlsID09IGwzKTsKKwl0ZXN0X3Bhc3MocS5sZW5ndGggPT0gMSk7CisKKwlwa2dwID0gcGtnX3F1ZXVlX3BvcCgmcSk7CisJdGVzdF9wYXNzKHBrZ3AgIT0gTlVMTCk7CisJdGVzdF9wYXNzKHEuaGVhZCA9PSBOVUxMKTsKKwl0ZXN0X3Bhc3MocS50YWlsID09IE5VTEwpOworCXRlc3RfcGFzcyhxLmxlbmd0aCA9PSAwKTsKKworCXRlc3RfcGFzcyhwa2dfcXVldWVfaXNfZW1wdHkoJnEpKTsKKworCXBrZ3AgPSBwa2dfcXVldWVfcG9wKCZxKTsKKwl0ZXN0X3Bhc3MocGtncCA9PSBOVUxMKTsKKwl0ZXN0X3Bhc3MocS5oZWFkID09IE5VTEwpOworCXRlc3RfcGFzcyhxLnRhaWwgPT0gTlVMTCk7CisJdGVzdF9wYXNzKHEubGVuZ3RoID09IDApOworCisJcGtnX3F1ZXVlX2Rlc3Ryb3koJnEpOworfQorCitzdGF0aWMgdm9pZAordGVzdCh2b2lkKQoreworCXRlc3RfcGtnX3F1ZXVlX2luaXQoKTsKKwl0ZXN0X3BrZ19xdWV1ZV9wdXNoX3BvcCgpOworfQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy90ZXN0L3QtcGtnaW5mby5jIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy90ZXN0L3QtcGtnaW5mby5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmIxZGY4ZjgKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL3Rlc3QvdC1wa2dpbmZvLmMKQEAgLTAsMCArMSw1MSBAQAorLyoKKyAqIGxpYmRwa2cgLSBEZWJpYW4gcGFja2FnaW5nIHN1aXRlIGxpYnJhcnkgcm91dGluZXMKKyAqIHQtcGtnaW5mby5jIC0gdGVzdCBwa2dpbmZvIGhhbmRsaW5nCisgKgorICogQ29weXJpZ2h0IMKpIDIwMDkgR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaW5jbHVkZSA8Y29uZmlnLmg+CisjaW5jbHVkZSA8Y29tcGF0Lmg+CisKKyNpbmNsdWRlIDxkcGtnL3Rlc3QuaD4KKyNpbmNsdWRlIDxkcGtnL2Rwa2ctZGIuaD4KKworc3RhdGljIHZvaWQKK3Rlc3RfcGtnaW5mb19pbmZvcm1hdGl2ZSh2b2lkKQoreworCXN0cnVjdCBwa2dpbmZvIHBrZzsKKworCXBrZ19ibGFuaygmcGtnKTsKKwl0ZXN0X2ZhaWwocGtnX2lzX2luZm9ybWF0aXZlKCZwa2csICZwa2cuaW5zdGFsbGVkKSk7CisKKwlwa2cud2FudCA9IHdhbnRfcHVyZ2U7CisJdGVzdF9wYXNzKHBrZ19pc19pbmZvcm1hdGl2ZSgmcGtnLCAmcGtnLmluc3RhbGxlZCkpOworCisJcGtnX2JsYW5rKCZwa2cpOworCXBrZy5pbnN0YWxsZWQuZGVzY3JpcHRpb24gPSAidGVzdCBkZXNjcmlwdGlvbiI7CisJdGVzdF9wYXNzKHBrZ19pc19pbmZvcm1hdGl2ZSgmcGtnLCAmcGtnLmluc3RhbGxlZCkpOworCisJLyogRklYTUU6IENvbXBsZXRlLiAqLworfQorCitzdGF0aWMgdm9pZAordGVzdCh2b2lkKQoreworCXRlc3RfcGtnaW5mb19pbmZvcm1hdGl2ZSgpOworCisJLyogRklYTUU6IENvbXBsZXRlLiAqLworfQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy90ZXN0L3QtcHJvZ25hbWUuYyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvdGVzdC90LXByb2duYW1lLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTdlZDVkZgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvdGVzdC90LXByb2duYW1lLmMKQEAgLTAsMCArMSw0NiBAQAorLyoKKyAqIGxpYmRwa2cgLSBEZWJpYW4gcGFja2FnaW5nIHN1aXRlIGxpYnJhcnkgcm91dGluZXMKKyAqIHQtcHJvZ25hbWUuYyAtIHRlc3QgcHJvZ3JhbSBuYW1lIGhhbmRsaW5nCisgKgorICogQ29weXJpZ2h0IMKpIDIwMTEgR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaW5jbHVkZSA8Y29uZmlnLmg+CisjaW5jbHVkZSA8Y29tcGF0Lmg+CisKKyNpbmNsdWRlIDxkcGtnL3Rlc3QuaD4KKyNpbmNsdWRlIDxkcGtnL3Byb2duYW1lLmg+CisKK3N0YXRpYyB2b2lkCit0ZXN0X3Byb2duYW1lKHZvaWQpCit7CisJLyogVGVzdCBpbml0aWFsbHkgZW1wdHkgcHJvZ25hbWUuICovCisJdGVzdF9zdHIoZHBrZ19nZXRfcHJvZ25hbWUoKSwgPT0sICJ0LXByb2duYW1lIik7CisKKwkvKiBUZXN0IHNldHRpbmcgYSBuZXcgcHJvZ25hbWUuICovCisJZHBrZ19zZXRfcHJvZ25hbWUoIm5ld25hbWUiKTsKKwl0ZXN0X3N0cihkcGtnX2dldF9wcm9nbmFtZSgpLCA9PSwgIm5ld25hbWUiKTsKKworCS8qIFRlc3Qgc2V0dGluZyBhIG5ldyBwcm9nbmFtZSB3aXRoIHBhdGguICovCisJZHBrZ19zZXRfcHJvZ25hbWUoInBhdGgvbmV3cHJvZ25hbWUiKTsKKwl0ZXN0X3N0cihkcGtnX2dldF9wcm9nbmFtZSgpLCA9PSwgIm5ld3Byb2duYW1lIik7Cit9CisKK3N0YXRpYyB2b2lkCit0ZXN0KHZvaWQpCit7CisJdGVzdF9wcm9nbmFtZSgpOworfQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy90ZXN0L3Qtc3RyaW5nLmMgYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL3Rlc3QvdC1zdHJpbmcuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xNmRlN2U3Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy90ZXN0L3Qtc3RyaW5nLmMKQEAgLTAsMCArMSwxMzMgQEAKKy8qCisgKiBsaWJkcGtnIC0gRGViaWFuIHBhY2thZ2luZyBzdWl0ZSBsaWJyYXJ5IHJvdXRpbmVzCisgKiB0LXN0cmluZy5jIC0gdGVzdCBzdHJpbmcgaGFuZGxpbmcKKyAqCisgKiBDb3B5cmlnaHQgwqkgMjAwOSBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CisgKgorICogVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisgKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAqIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorICovCisKKyNpbmNsdWRlIDxjb25maWcuaD4KKyNpbmNsdWRlIDxjb21wYXQuaD4KKworI2luY2x1ZGUgPGRwa2cvdGVzdC5oPgorI2luY2x1ZGUgPGRwa2cvc3RyaW5nLmg+CisKKyNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KKworc3RhdGljIHZvaWQKK3Rlc3Rfc3RyX2VzY2FwZV9mbXQodm9pZCkKK3sKKwljaGFyIGJ1ZlsxMDI0XSwgKnE7CisKKwltZW1zZXQoYnVmLCAnYScsIHNpemVvZihidWYpKTsKKwlxID0gc3RyX2VzY2FwZV9mbXQoYnVmLCAiIiwgc2l6ZW9mKGJ1ZikpOworCXN0cmNweShxLCAiIGVuZCIpOworCXRlc3Rfc3RyKGJ1ZiwgPT0sICIgZW5kIik7CisKKwltZW1zZXQoYnVmLCAnYScsIHNpemVvZihidWYpKTsKKwlxID0gc3RyX2VzY2FwZV9mbXQoYnVmLCAiJSIsIHNpemVvZihidWYpKTsKKwlzdHJjcHkocSwgIiBlbmQiKTsKKwl0ZXN0X3N0cihidWYsID09LCAiJSUgZW5kIik7CisKKwltZW1zZXQoYnVmLCAnYScsIHNpemVvZihidWYpKTsKKwlxID0gc3RyX2VzY2FwZV9mbXQoYnVmLCAiJSUlIiwgc2l6ZW9mKGJ1ZikpOworCXN0cmNweShxLCAiIGVuZCIpOworCXRlc3Rfc3RyKGJ1ZiwgPT0sICIlJSUlJSUgZW5kIik7CisKKwltZW1zZXQoYnVmLCAnYScsIHNpemVvZihidWYpKTsKKwlxID0gc3RyX2VzY2FwZV9mbXQoYnVmLCAiJWIlYiVjJWMlJSIsIHNpemVvZihidWYpKTsKKwlzdHJjcHkocSwgIiBlbmQiKTsKKwl0ZXN0X3N0cihidWYsID09LCAiJSViJSViJSVjJSVjJSUlJSBlbmQiKTsKKworCS8qIFRlc3QgZGVsaW1pdGVkIGJ1ZmZlci4gKi8KKwltZW1zZXQoYnVmLCAnYScsIHNpemVvZihidWYpKTsKKwlxID0gc3RyX2VzY2FwZV9mbXQoYnVmLCAiJSUlIiwgNSk7CisJc3RyY3B5KHEsICIgZW5kIik7CisJdGVzdF9zdHIoYnVmLCA9PSwgIiUlJSUgZW5kIik7CisKKwltZW1zZXQoYnVmLCAnYScsIHNpemVvZihidWYpKTsKKwlxID0gc3RyX2VzY2FwZV9mbXQoYnVmLCAiJSUlIiwgNCk7CisJc3RyY3B5KHEsICIgZW5kIik7CisJdGVzdF9zdHIoYnVmLCA9PSwgIiUlIGVuZCIpOworfQorCitzdGF0aWMgdm9pZAordGVzdF9zdHJfcXVvdGVfbWV0YSh2b2lkKQoreworCWNoYXIgKnN0cjsKKworCXN0ciA9IHN0cl9xdW90ZV9tZXRhKCJmb28gYmFyIik7CisJdGVzdF9zdHIoc3RyLCA9PSwgImZvb1xcIGJhciIpOworCWZyZWUoc3RyKTsKKworCXN0ciA9IHN0cl9xdW90ZV9tZXRhKCJmb28/YmFyIik7CisJdGVzdF9zdHIoc3RyLCA9PSwgImZvb1xcP2JhciIpOworCWZyZWUoc3RyKTsKKworCXN0ciA9IHN0cl9xdW90ZV9tZXRhKCJmb28qYmFyIik7CisJdGVzdF9zdHIoc3RyLCA9PSwgImZvb1xcKmJhciIpOworCWZyZWUoc3RyKTsKK30KKworc3RhdGljIHZvaWQKK3Rlc3Rfc3RyX3N0cmlwX3F1b3Rlcyh2b2lkKQoreworCWNoYXIgYnVmWzEwMjRdLCAqc3RyOworCisJc3RyY3B5KGJ1ZiwgInVucXVvdGVkIHRleHQiKTsKKwlzdHIgPSBzdHJfc3RyaXBfcXVvdGVzKGJ1Zik7CisJdGVzdF9zdHIoc3RyLCA9PSwgInVucXVvdGVkIHRleHQiKTsKKworCXN0cmNweShidWYsICJjb250YWluZWQgJ3F1b3RlZCB0ZXh0JyIpOworCXN0ciA9IHN0cl9zdHJpcF9xdW90ZXMoYnVmKTsKKwl0ZXN0X3N0cihzdHIsID09LCAiY29udGFpbmVkICdxdW90ZWQgdGV4dCciKTsKKworCXN0cmNweShidWYsICJjb250YWluZWQgXCJxdW90ZWQgdGV4dFwiIik7CisJc3RyID0gc3RyX3N0cmlwX3F1b3RlcyhidWYpOworCXRlc3Rfc3RyKHN0ciwgPT0sICJjb250YWluZWQgXCJxdW90ZWQgdGV4dFwiIik7CisKKwlzdHJjcHkoYnVmLCAiJ3VuYmFsYW5jZWQgcXVvdGVzIik7CisJc3RyID0gc3RyX3N0cmlwX3F1b3RlcyhidWYpOworCXRlc3RfcGFzcyhzdHIgPT0gTlVMTCk7CisKKwlzdHJjcHkoYnVmLCAiXCJ1bmJhbGFuY2VkIHF1b3RlcyIpOworCXN0ciA9IHN0cl9zdHJpcF9xdW90ZXMoYnVmKTsKKwl0ZXN0X3Bhc3Moc3RyID09IE5VTEwpOworCisJc3RyY3B5KGJ1ZiwgIidtaXNtYXRjaGVkIHF1b3Rlc1wiIik7CisJc3RyID0gc3RyX3N0cmlwX3F1b3RlcyhidWYpOworCXRlc3RfcGFzcyhzdHIgPT0gTlVMTCk7CisKKwlzdHJjcHkoYnVmLCAiXCJtaXNtYXRjaGVkIHF1b3RlcyciKTsKKwlzdHIgPSBzdHJfc3RyaXBfcXVvdGVzKGJ1Zik7CisJdGVzdF9wYXNzKHN0ciA9PSBOVUxMKTsKKworCXN0cmNweShidWYsICInY29tcGxldGVseSBxdW90ZWQgdGV4dCciKTsKKwlzdHIgPSBzdHJfc3RyaXBfcXVvdGVzKGJ1Zik7CisJdGVzdF9zdHIoc3RyLCA9PSwgImNvbXBsZXRlbHkgcXVvdGVkIHRleHQiKTsKKworCXN0cmNweShidWYsICJcImNvbXBsZXRlbHkgcXVvdGVkIHRleHRcIiIpOworCXN0ciA9IHN0cl9zdHJpcF9xdW90ZXMoYnVmKTsKKwl0ZXN0X3N0cihzdHIsID09LCAiY29tcGxldGVseSBxdW90ZWQgdGV4dCIpOworfQorCitzdGF0aWMgdm9pZAordGVzdCh2b2lkKQoreworCXRlc3Rfc3RyX2VzY2FwZV9mbXQoKTsKKwl0ZXN0X3N0cl9xdW90ZV9tZXRhKCk7CisJdGVzdF9zdHJfc3RyaXBfcXVvdGVzKCk7Cit9CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL3Rlc3QvdC1zdWJwcm9jLmMgYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL3Rlc3QvdC1zdWJwcm9jLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNWNiNWIxMwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvdGVzdC90LXN1YnByb2MuYwpAQCAtMCwwICsxLDkxIEBACisvKgorICogbGliZHBrZyAtIERlYmlhbiBwYWNrYWdpbmcgc3VpdGUgbGlicmFyeSByb3V0aW5lcworICogdC1zdWJwcm9jLmMgLSB0ZXN0IHN1Yi1wcm9jZXNzIG1vZHVsZQorICoKKyAqIENvcHlyaWdodCDCqSAyMDExIEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworI2luY2x1ZGUgPGNvbmZpZy5oPgorI2luY2x1ZGUgPGNvbXBhdC5oPgorCisjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CisKKyNpbmNsdWRlIDxmY250bC5oPgorI2luY2x1ZGUgPHNpZ25hbC5oPgorI2luY2x1ZGUgPHVuaXN0ZC5oPgorI2luY2x1ZGUgPHN0ZGxpYi5oPgorCisjaW5jbHVkZSA8ZHBrZy90ZXN0Lmg+CisjaW5jbHVkZSA8ZHBrZy9zdWJwcm9jLmg+CisKK3N0YXRpYyB2b2lkCit0ZXN0X3N1YnByb2NfZm9yayh2b2lkKQoreworCXBpZF90IHBpZDsKKwlpbnQgcmV0OworCisJLyogVGVzdCBleGl0KCkuICovCisJcGlkID0gc3VicHJvY19mb3JrKCk7CisJaWYgKHBpZCA9PSAwKQorCQlleGl0KDApOworCXJldCA9IHN1YnByb2Nfd2FpdF9jaGVjayhwaWQsICJzdWJwcm9jIGV4aXQgcGFzcyIsIFBST0NOT0VSUik7CisJdGVzdF9wYXNzKHJldCA9PSAwKTsKKworCXBpZCA9IHN1YnByb2NfZm9yaygpOworCWlmIChwaWQgPT0gMCkKKwkJZXhpdCgxMjgpOworCXJldCA9IHN1YnByb2Nfd2FpdF9jaGVjayhwaWQsICJzdWJwcm9jIGV4aXQgZmFpbCIsIFBST0NOT0VSUik7CisJdGVzdF9wYXNzKHJldCA9PSAxMjgpOworCisJLyogVGVzdCBzaWduYWxzLiAqLworCXBpZCA9IHN1YnByb2NfZm9yaygpOworCWlmIChwaWQgPT0gMCkKKwkJcmFpc2UoU0lHSU5UKTsKKwlyZXQgPSBzdWJwcm9jX3dhaXRfY2hlY2socGlkLCAic3VicHJvYyBzaWduYWwiLCBQUk9DV0FSTik7CisJdGVzdF9wYXNzKHJldCA9PSAtMSk7CisKKwlwaWQgPSBzdWJwcm9jX2ZvcmsoKTsKKwlpZiAocGlkID09IDApCisJCXJhaXNlKFNJR1RFUk0pOworCXJldCA9IHN1YnByb2Nfd2FpdF9jaGVjayhwaWQsICJzdWJwcm9jIHNpZ25hbCIsIFBST0NXQVJOKTsKKwl0ZXN0X3Bhc3MocmV0ID09IC0xKTsKKworCXBpZCA9IHN1YnByb2NfZm9yaygpOworCWlmIChwaWQgPT0gMCkKKwkJcmFpc2UoU0lHUElQRSk7CisJcmV0ID0gc3VicHJvY193YWl0X2NoZWNrKHBpZCwgInN1YnByb2MgU0lHUElQRSIsIFBST0NXQVJOIHwgUFJPQ1BJUEUpOworCXRlc3RfcGFzcyhyZXQgPT0gMCk7CisKKwlwaWQgPSBzdWJwcm9jX2ZvcmsoKTsKKwlpZiAocGlkID09IDApCisJCXJhaXNlKFNJR1BJUEUpOworCXJldCA9IHN1YnByb2Nfd2FpdF9jaGVjayhwaWQsICJzdWJwcm9jIFNJR1BJUEUiLCBQUk9DV0FSTik7CisJdGVzdF9wYXNzKHJldCA9PSAtMSk7Cit9CisKK3N0YXRpYyB2b2lkCit0ZXN0KHZvaWQpCit7CisJaW50IGZkOworCisJLyogWFhYOiBTaHV0IHVwIG91dHB1dCwgd2UganVzdCB3YW50IHRoZSBlcnJvciBjb2RlLiAqLworCWZkID0gb3BlbigiL2Rldi9udWxsIiwgT19SRFdSKTsKKwl0ZXN0X3Bhc3MoZmQgPj0gMCk7CisJZHVwMihmZCwgMSk7CisJZHVwMihmZCwgMik7CisKKwl0ZXN0X3N1YnByb2NfZm9yaygpOworfQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy90ZXN0L3QtdGVzdC5jIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy90ZXN0L3QtdGVzdC5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmI3M2EzODkKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL3Rlc3QvdC10ZXN0LmMKQEAgLTAsMCArMSw0NiBAQAorLyoKKyAqIGxpYmRwa2cgLSBEZWJpYW4gcGFja2FnaW5nIHN1aXRlIGxpYnJhcnkgcm91dGluZXMKKyAqIHQtdGVzdC5jIC0gdGVzdCBzdWl0ZSBzZWxmIHRlc3RzCisgKgorICogQ29weXJpZ2h0IMKpIDIwMDkgR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaW5jbHVkZSA8Y29uZmlnLmg+CisjaW5jbHVkZSA8Y29tcGF0Lmg+CisKKyNpbmNsdWRlIDxkcGtnL3Rlc3QuaD4KKworc3RhdGljIHZvaWQKK3Rlc3Qodm9pZCkKK3sKKwl0ZXN0X3Bhc3MoMSk7CisJdGVzdF9mYWlsKDApOworCisJdGVzdF9zdHIoImFhYSIsID09LCAiYWFhIik7CisJdGVzdF9zdHIoImFhYSIsIDwsICJiYmIiKTsKKwl0ZXN0X3N0cigiY2NjIiwgPiwgImJiYiIpOworCXRlc3Rfc3RyKCJjY2MiLCAhPSwgImJiYiIpOworCisJdGVzdF9tZW0oImFhYSIsID09LCAiYWFhIiwgMyk7CisJdGVzdF9tZW0oImFhYSIsIDwsICJiYmIiLCAzKTsKKwl0ZXN0X21lbSgiY2NjIiwgPiwgImJiYiIsIDMpOworCXRlc3RfbWVtKCJjY2MiLCAhPSwgImJiYiIsIDMpOworCisJdGVzdF9tZW0oImFiY2QiLCA9PSwgImFiY2QiLCA0KTsKKwl0ZXN0X21lbSgiYWJjZCIsID09LCAiYWJjZCIsIDUpOworCXRlc3RfbWVtKCJhYmFiY2QiLCA9PSwgImFiYWJmZiIsIDQpOworCXRlc3RfbWVtKCJhYmFiY2QiLCAhPSwgImFiYWJmZiIsIDYpOworfQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy90ZXN0L3QtdmFyYnVmLmMgYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL3Rlc3QvdC12YXJidWYuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42YWU1ZDM3Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy90ZXN0L3QtdmFyYnVmLmMKQEAgLTAsMCArMSwzMDggQEAKKy8qCisgKiBsaWJkcGtnIC0gRGViaWFuIHBhY2thZ2luZyBzdWl0ZSBsaWJyYXJ5IHJvdXRpbmVzCisgKiB0LXZlcmJ1Zi5jIC0gdGVzdCB2YXJidWYgaW1wbGVtZW50YXRpb24KKyAqCisgKiBDb3B5cmlnaHQgwqkgMjAwOS0yMDExIEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworI2luY2x1ZGUgPGNvbmZpZy5oPgorI2luY2x1ZGUgPGNvbXBhdC5oPgorCisjaW5jbHVkZSA8ZHBrZy90ZXN0Lmg+CisjaW5jbHVkZSA8ZHBrZy92YXJidWYuaD4KKworI2luY2x1ZGUgPHN0cmluZy5oPgorI2luY2x1ZGUgPHN0ZGxpYi5oPgorCitzdGF0aWMgdm9pZAordGVzdF92YXJidWZfaW5pdCh2b2lkKQoreworCXN0cnVjdCB2YXJidWYgdmI7CisKKwl2YXJidWZfaW5pdCgmdmIsIDApOworCXRlc3RfcGFzcyh2Yi51c2VkID09IDApOworCXRlc3RfcGFzcyh2Yi5zaXplID09IDApOworCXRlc3RfcGFzcyh2Yi5idWYgPT0gTlVMTCk7CisKKwl2YXJidWZfZGVzdHJveSgmdmIpOworCXRlc3RfcGFzcyh2Yi51c2VkID09IDApOworCXRlc3RfcGFzcyh2Yi5zaXplID09IDApOworCXRlc3RfcGFzcyh2Yi5idWYgPT0gTlVMTCk7Cit9CisKK3N0YXRpYyB2b2lkCit0ZXN0X3ZhcmJ1Zl9wcmVhbGxvYyh2b2lkKQoreworCXN0cnVjdCB2YXJidWYgdmI7CisKKwl2YXJidWZfaW5pdCgmdmIsIDEwKTsKKwl0ZXN0X3Bhc3ModmIudXNlZCA9PSAwKTsKKwl0ZXN0X3Bhc3ModmIuc2l6ZSA+PSAxMCk7CisJdGVzdF9wYXNzKHZiLmJ1ZiAhPSBOVUxMKTsKKworCXZhcmJ1Zl9kZXN0cm95KCZ2Yik7CisJdGVzdF9wYXNzKHZiLnVzZWQgPT0gMCk7CisJdGVzdF9wYXNzKHZiLnNpemUgPT0gMCk7CisJdGVzdF9wYXNzKHZiLmJ1ZiA9PSBOVUxMKTsKK30KKworc3RhdGljIHZvaWQKK3Rlc3RfdmFyYnVmX2dyb3codm9pZCkKK3sKKwlzdHJ1Y3QgdmFyYnVmIHZiOworCXNpemVfdCBvbGRfc2l6ZTsKKwlpbnQgaTsKKworCXZhcmJ1Zl9pbml0KCZ2YiwgMTApOworCisJLyogVGVzdCB0aGF0IHdlIGdyb3cgd2hlbiBuZWVkZWQuICovCisJdmFyYnVmX2dyb3coJnZiLCAxMDApOworCXRlc3RfcGFzcyh2Yi51c2VkID09IDApOworCXRlc3RfcGFzcyh2Yi5zaXplID49IDEwMCk7CisKKwlvbGRfc2l6ZSA9IHZiLnNpemU7CisKKwkvKiBUZXN0IHRoYXQgd2UgYXJlIG5vdCBsZWFraW5nLiAqLworCWZvciAoaSA9IDA7IGkgPCAxMDsgaSsrKSB7CisJCXZhcmJ1Zl9ncm93KCZ2YiwgMTAwKTsKKwkJdGVzdF9wYXNzKHZiLnVzZWQgPT0gMCk7CisJCXRlc3RfcGFzcyh2Yi5zaXplID49IDEwMCk7CisJCXRlc3RfcGFzcyh2Yi5zaXplID09IG9sZF9zaXplKTsKKwl9CisKKwkvKiBUZXN0IHRoYXQgd2UgZ3JvdyB3aGVuIG5lZWRlZCwgd2l0aCB1c2VkIHNwYWNlLiAqLworCXZiLnVzZWQgPSAxMDsKKwl2YXJidWZfZ3JvdygmdmIsIDEwMCk7CisJdGVzdF9wYXNzKHZiLnVzZWQgPT0gMTApOworCXRlc3RfcGFzcyh2Yi5zaXplID49IDExMCk7CisKKwl2YXJidWZfZGVzdHJveSgmdmIpOworfQorCitzdGF0aWMgdm9pZAordGVzdF92YXJidWZfdHJ1bmModm9pZCkKK3sKKwlzdHJ1Y3QgdmFyYnVmIHZiOworCisJdmFyYnVmX2luaXQoJnZiLCA1MCk7CisKKwkvKiBUZXN0IHRoYXQgd2UgdHJ1bmNhdGUgKGdyb3cpLiAqLworCXZhcmJ1Zl90cnVuYygmdmIsIDIwKTsKKwl0ZXN0X3Bhc3ModmIudXNlZCA9PSAyMCk7CisJdGVzdF9wYXNzKHZiLnNpemUgPj0gNTApOworCisJLyogVGVzdCB0aGF0IHdlIHRydW5jYXRlIChzaHJpbmspLiAqLworCXZhcmJ1Zl90cnVuYygmdmIsIDEwKTsKKwl0ZXN0X3Bhc3ModmIudXNlZCA9PSAxMCk7CisJdGVzdF9wYXNzKHZiLnNpemUgPj0gNTApOworCisJdmFyYnVmX2Rlc3Ryb3koJnZiKTsKK30KKworc3RhdGljIHZvaWQKK3Rlc3RfdmFyYnVmX2FkZF9idWYodm9pZCkKK3sKKwlzdHJ1Y3QgdmFyYnVmIHZiOworCisJdmFyYnVmX2luaXQoJnZiLCA1KTsKKworCXZhcmJ1Zl9hZGRfYnVmKCZ2YiwgIjEyMzQ1Njc4OTAiLCAxMCk7CisJdGVzdF9wYXNzKHZiLnVzZWQgPT0gMTApOworCXRlc3RfcGFzcyh2Yi5zaXplID49IHZiLnVzZWQpOworCXRlc3RfbWVtKHZiLmJ1ZiwgPT0sICIxMjM0NTY3ODkwIiwgMTApOworCisJdmFyYnVmX2FkZF9idWYoJnZiLCAiYWJjZGUiLCA1KTsKKwl0ZXN0X3Bhc3ModmIudXNlZCA9PSAxNSk7CisJdGVzdF9wYXNzKHZiLnNpemUgPj0gdmIudXNlZCk7CisJdGVzdF9tZW0odmIuYnVmLCA9PSwgIjEyMzQ1Njc4OTBhYmNkZSIsIDE1KTsKKworCXZhcmJ1Zl9kZXN0cm95KCZ2Yik7Cit9CisKK3N0YXRpYyB2b2lkCit0ZXN0X3ZhcmJ1Zl9hZGRfY2hhcih2b2lkKQoreworCXN0cnVjdCB2YXJidWYgdmI7CisKKwl2YXJidWZfaW5pdCgmdmIsIDEpOworCisJdmFyYnVmX2FkZF9jaGFyKCZ2YiwgJ2EnKTsKKwl0ZXN0X3Bhc3ModmIudXNlZCA9PSAxKTsKKwl0ZXN0X3Bhc3ModmIuc2l6ZSA+PSB2Yi51c2VkKTsKKwl0ZXN0X3Bhc3ModmIuYnVmWzBdID09ICdhJyk7CisKKwl2YXJidWZfYWRkX2NoYXIoJnZiLCAnYicpOworCXRlc3RfcGFzcyh2Yi51c2VkID09IDIpOworCXRlc3RfcGFzcyh2Yi5zaXplID49IHZiLnVzZWQpOworCXRlc3RfbWVtKHZiLmJ1ZiwgPT0sICJhYiIsIDIpOworCisJdmFyYnVmX2FkZF9jaGFyKCZ2YiwgJ2MnKTsKKwl0ZXN0X3Bhc3ModmIudXNlZCA9PSAzKTsKKwl0ZXN0X3Bhc3ModmIuc2l6ZSA+PSB2Yi51c2VkKTsKKwl0ZXN0X21lbSh2Yi5idWYsID09LCAiYWJjIiwgMyk7CisKKwl2YXJidWZfYWRkX2NoYXIoJnZiLCAnZCcpOworCXRlc3RfcGFzcyh2Yi51c2VkID09IDQpOworCXRlc3RfcGFzcyh2Yi5zaXplID49IHZiLnVzZWQpOworCXRlc3RfbWVtKHZiLmJ1ZiwgPT0sICJhYmNkIiwgNCk7CisKKwl2YXJidWZfZGVzdHJveSgmdmIpOworfQorCitzdGF0aWMgdm9pZAordGVzdF92YXJidWZfZHVwX2NoYXIodm9pZCkKK3sKKwlzdHJ1Y3QgdmFyYnVmIHZiOworCisJdmFyYnVmX2luaXQoJnZiLCA1KTsKKworCXZhcmJ1Zl9kdXBfY2hhcigmdmIsICd6JywgMTApOworCXRlc3RfcGFzcyh2Yi51c2VkID09IDEwKTsKKwl0ZXN0X3Bhc3ModmIuc2l6ZSA+PSB2Yi51c2VkKTsKKwl0ZXN0X21lbSh2Yi5idWYsID09LCAienp6enp6enp6eiIsIDEwKTsKKworCXZhcmJ1Zl9kdXBfY2hhcigmdmIsICd5JywgNSk7CisJdGVzdF9wYXNzKHZiLnVzZWQgPT0gMTUpOworCXRlc3RfcGFzcyh2Yi5zaXplID49IHZiLnVzZWQpOworCXRlc3RfbWVtKHZiLmJ1ZiwgPT0sICJ6enp6enp6enp6eXl5eXkiLCAxNSk7CisKKwl2YXJidWZfZGVzdHJveSgmdmIpOworfQorCitzdGF0aWMgdm9pZAordGVzdF92YXJidWZfbWFwX2NoYXIodm9pZCkKK3sKKwlzdHJ1Y3QgdmFyYnVmIHZiOworCisJdmFyYnVmX2luaXQoJnZiLCA1KTsKKworCXZhcmJ1Zl9hZGRfYnVmKCZ2YiwgIjEyMzRhNTY3OGE5MDEyYSIsIDE1KTsKKworCXZhcmJ1Zl9tYXBfY2hhcigmdmIsICdhJywgJ3onKTsKKwl0ZXN0X3Bhc3ModmIudXNlZCA9PSAxNSk7CisJdGVzdF9wYXNzKHZiLnNpemUgPj0gdmIudXNlZCk7CisJdGVzdF9tZW0odmIuYnVmLCA9PSwgIjEyMzR6NTY3OHo5MDEyeiIsIDE1KTsKKworCXZhcmJ1Zl9kZXN0cm95KCZ2Yik7Cit9CisKK3N0YXRpYyB2b2lkCit0ZXN0X3ZhcmJ1Zl9lbmRfc3RyKHZvaWQpCit7CisJc3RydWN0IHZhcmJ1ZiB2YjsKKworCXZhcmJ1Zl9pbml0KCZ2YiwgMTApOworCisJdmFyYnVmX2FkZF9idWYoJnZiLCAiMTIzNDU2Nzg5MFgiLCAxMSk7CisJdGVzdF9wYXNzKHZiLnVzZWQgPT0gMTEpOworCXRlc3RfcGFzcyh2Yi5zaXplID49IHZiLnVzZWQpOworCXRlc3RfbWVtKHZiLmJ1ZiwgPT0sICIxMjM0NTY3ODkwWCIsIDExKTsKKworCXZhcmJ1Zl90cnVuYygmdmIsIDEwKTsKKworCXZhcmJ1Zl9lbmRfc3RyKCZ2Yik7CisJdGVzdF9wYXNzKHZiLnVzZWQgPT0gMTApOworCXRlc3RfcGFzcyh2Yi5zaXplID49IHZiLnVzZWQgKyAxKTsKKwl0ZXN0X3Bhc3ModmIuYnVmWzEwXSA9PSAnXDAnKTsKKwl0ZXN0X3N0cih2Yi5idWYsID09LCAiMTIzNDU2Nzg5MCIpOworCisJdmFyYnVmX2Rlc3Ryb3koJnZiKTsKK30KKworc3RhdGljIHZvaWQKK3Rlc3RfdmFyYnVmX3ByaW50Zih2b2lkKQoreworCXN0cnVjdCB2YXJidWYgdmI7CisKKwl2YXJidWZfaW5pdCgmdmIsIDUpOworCisJLyogVGVzdCBub3JtYWwgZm9ybWF0IHByaW50aW5nLiAqLworCXZhcmJ1Zl9wcmludGYoJnZiLCAiZm9ybWF0ICVzIG51bWJlciAlZCIsICJzdHJpbmciLCAxMCk7CisJdGVzdF9wYXNzKHZiLnVzZWQgPT0gc3RybGVuKCJmb3JtYXQgc3RyaW5nIG51bWJlciAxMCIpKTsKKwl0ZXN0X3Bhc3ModmIuc2l6ZSA+PSB2Yi51c2VkKTsKKwl0ZXN0X3N0cih2Yi5idWYsID09LCAiZm9ybWF0IHN0cmluZyBudW1iZXIgMTAiKTsKKworCXZhcmJ1Zl9yZXNldCgmdmIpOworCisJLyogVGVzdCBjb25jYXRlbmF0ZWQgZm9ybWF0IHByaW50aW5nLiAqLworCXZhcmJ1Zl9wcmludGYoJnZiLCAiZm9ybWF0ICVzIG51bWJlciAlZCIsICJzdHJpbmciLCAxMCk7CisJdmFyYnVmX3ByaW50ZigmdmIsICIgZXh0cmEgJXMiLCAic3RyaW5nIik7CisJdGVzdF9wYXNzKHZiLnVzZWQgPT0gc3RybGVuKCJmb3JtYXQgc3RyaW5nIG51bWJlciAxMCBleHRyYSBzdHJpbmciKSk7CisJdGVzdF9wYXNzKHZiLnNpemUgPj0gdmIudXNlZCk7CisJdGVzdF9zdHIodmIuYnVmLCA9PSwgImZvcm1hdCBzdHJpbmcgbnVtYmVyIDEwIGV4dHJhIHN0cmluZyIpOworCisJdmFyYnVmX2Rlc3Ryb3koJnZiKTsKK30KKworc3RhdGljIHZvaWQKK3Rlc3RfdmFyYnVmX3Jlc2V0KHZvaWQpCit7CisJc3RydWN0IHZhcmJ1ZiB2YjsKKworCXZhcmJ1Zl9pbml0KCZ2YiwgMTApOworCisJdmFyYnVmX2FkZF9idWYoJnZiLCAiMTIzNDU2Nzg5MCIsIDEwKTsKKworCXZhcmJ1Zl9yZXNldCgmdmIpOworCXRlc3RfcGFzcyh2Yi51c2VkID09IDApOworCXRlc3RfcGFzcyh2Yi5zaXplID49IHZiLnVzZWQpOworCisJdmFyYnVmX2FkZF9idWYoJnZiLCAiYWJjZGVmZ2hpamtsbW5vIiwgMTUpOworCXRlc3RfcGFzcyh2Yi51c2VkID09IDE1KTsKKwl0ZXN0X3Bhc3ModmIuc2l6ZSA+PSB2Yi51c2VkKTsKKwl0ZXN0X21lbSh2Yi5idWYsID09LCAiYWJjZGVmZ2hpamtsbW5vIiwgMTUpOworCisJdmFyYnVmX2Rlc3Ryb3koJnZiKTsKK30KKworc3RhdGljIHZvaWQKK3Rlc3RfdmFyYnVmX2RldGFjaCh2b2lkKQoreworCXN0cnVjdCB2YXJidWYgdmI7CisJY2hhciAqc3RyOworCisJdmFyYnVmX2luaXQoJnZiLCAwKTsKKworCXZhcmJ1Zl9hZGRfYnVmKCZ2YiwgIjEyMzQ1Njc4OTAiLCAxMCk7CisKKwlzdHIgPSB2YXJidWZfZGV0YWNoKCZ2Yik7CisKKwl0ZXN0X21lbShzdHIsID09LCAiMTIzNDU2Nzg5MCIsIDEwKTsKKwl0ZXN0X3Bhc3ModmIudXNlZCA9PSAwKTsKKwl0ZXN0X3Bhc3ModmIuc2l6ZSA9PSAwKTsKKwl0ZXN0X3Bhc3ModmIuYnVmID09IE5VTEwpOworCisJZnJlZShzdHIpOworfQorCitzdGF0aWMgdm9pZAordGVzdCh2b2lkKQoreworCXRlc3RfdmFyYnVmX2luaXQoKTsKKwl0ZXN0X3ZhcmJ1Zl9wcmVhbGxvYygpOworCXRlc3RfdmFyYnVmX2dyb3coKTsKKwl0ZXN0X3ZhcmJ1Zl90cnVuYygpOworCXRlc3RfdmFyYnVmX2FkZF9idWYoKTsKKwl0ZXN0X3ZhcmJ1Zl9hZGRfY2hhcigpOworCXRlc3RfdmFyYnVmX2R1cF9jaGFyKCk7CisJdGVzdF92YXJidWZfbWFwX2NoYXIoKTsKKwl0ZXN0X3ZhcmJ1Zl9lbmRfc3RyKCk7CisJdGVzdF92YXJidWZfcHJpbnRmKCk7CisJdGVzdF92YXJidWZfcmVzZXQoKTsKKwl0ZXN0X3ZhcmJ1Zl9kZXRhY2goKTsKKworCS8qIEZJWE1FOiBDb21wbGV0ZS4gKi8KK30KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvdGVzdC90LXZlcnNpb24uYyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvdGVzdC90LXZlcnNpb24uYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jZjk5Mzc1Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy90ZXN0L3QtdmVyc2lvbi5jCkBAIC0wLDAgKzEsMjAzIEBACisvKgorICogbGliZHBrZyAtIERlYmlhbiBwYWNrYWdpbmcgc3VpdGUgbGlicmFyeSByb3V0aW5lcworICogdC12ZXJzaW9uLmMgLSB0ZXN0IHZlcnNpb24gaGFuZGxpbmcKKyAqCisgKiBDb3B5cmlnaHQgwqkgMjAwOS0yMDEwIEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworI2luY2x1ZGUgPGNvbmZpZy5oPgorI2luY2x1ZGUgPGNvbXBhdC5oPgorCisjaW5jbHVkZSA8c3RkbGliLmg+CisKKyNpbmNsdWRlIDxkcGtnL3Rlc3QuaD4KKyNpbmNsdWRlIDxkcGtnL2Rwa2cuaD4KKyNpbmNsdWRlIDxkcGtnL2Rwa2ctZGIuaD4KKworI2RlZmluZSB2ZXJzaW9uKGVwb2NoLCB2ZXJzaW9uLCByZXZpc2lvbikgXAorCShzdHJ1Y3QgdmVyc2lvbnJldmlzaW9uKSB7IChlcG9jaCksICh2ZXJzaW9uKSwgKHJldmlzaW9uKSB9CisKK3N0YXRpYyB2b2lkCit0ZXN0X3ZlcnNpb25fY29tcGFyZSh2b2lkKQoreworCXN0cnVjdCB2ZXJzaW9ucmV2aXNpb24gYSwgYjsKKworCWJsYW5rdmVyc2lvbigmYSk7CisJYmxhbmt2ZXJzaW9uKCZiKTsKKwl0ZXN0X2ZhaWwoZXBvY2hzZGlmZmVyKCZhLCAmYikpOworCisJYS5lcG9jaCA9IDE7CisJYi5lcG9jaCA9IDI7CisJdGVzdF9wYXNzKGVwb2Noc2RpZmZlcigmYSwgJmIpKTsKKworCS8qIFRlc3QgZm9yIHZlcnNpb24gZXF1YWxpdHkuICovCisJYSA9IGIgPSB2ZXJzaW9uKDAsICIwIiwgIjAiKTsKKwl0ZXN0X3Bhc3ModmVyc2lvbmNvbXBhcmUoJmEsICZiKSA9PSAwKTsKKworCWEgPSB2ZXJzaW9uKDAsICIwIiwgIjAwIik7CisJYiA9IHZlcnNpb24oMCwgIjAwIiwgIjAiKTsKKwl0ZXN0X3Bhc3ModmVyc2lvbmNvbXBhcmUoJmEsICZiKSA9PSAwKTsKKworCWEgPSBiID0gdmVyc2lvbigxLCAiMiIsICIzIik7CisJdGVzdF9wYXNzKHZlcnNpb25jb21wYXJlKCZhLCAmYikgPT0gMCk7CisKKwkvKiBUZXN0IGZvciBlcG9jaCBkaWZmZXJlbmNlLiAqLworCWEgPSB2ZXJzaW9uKDAsICIwIiwgIjAiKTsKKwliID0gdmVyc2lvbigxLCAiMCIsICIwIik7CisJdGVzdF9wYXNzKHZlcnNpb25jb21wYXJlKCZhLCAmYikgPCAwKTsKKwl0ZXN0X3Bhc3ModmVyc2lvbmNvbXBhcmUoJmIsICZhKSA+IDApOworCisJLyogRklYTUU6IENvbXBsZXRlLiAqLworfQorCisjZGVmaW5lIHRlc3Rfd2FybihlKSBcCisJZG8geyBcCisJCXRlc3RfcGFzcygoZSkudHlwZSA9PSBEUEtHX01TR19XQVJOKTsgXAorCQlkcGtnX2Vycm9yX2Rlc3Ryb3koJihlKSk7IFwKKwl9IHdoaWxlICgwKQorI2RlZmluZSB0ZXN0X2Vycm9yKGUpIFwKKwlkbyB7IFwKKwkJdGVzdF9wYXNzKChlKS50eXBlID09IERQS0dfTVNHX0VSUk9SKTsgXAorCQlkcGtnX2Vycm9yX2Rlc3Ryb3koJihlKSk7IFwKKwl9IHdoaWxlICgwKQorCitzdGF0aWMgdm9pZAordGVzdF92ZXJzaW9uX3BhcnNlKHZvaWQpCit7CisJc3RydWN0IGRwa2dfZXJyb3IgZXJyOworCXN0cnVjdCB2ZXJzaW9ucmV2aXNpb24gYSwgYjsKKwljb25zdCBjaGFyICpwOworCWNoYXIgKnZlcnN0cjsKKworCS8qIFRlc3QgMCB2ZXJzaW9ucy4gKi8KKwlibGFua3ZlcnNpb24oJmEpOworCWIgPSB2ZXJzaW9uKDAsICIwIiwgIiIpOworCisJdGVzdF9wYXNzKHBhcnNldmVyc2lvbigmYSwgIjAiLCBOVUxMKSA9PSAwKTsKKwl0ZXN0X3Bhc3ModmVyc2lvbmNvbXBhcmUoJmEsICZiKSA9PSAwKTsKKworCXRlc3RfcGFzcyhwYXJzZXZlcnNpb24oJmEsICIwOjAiLCBOVUxMKSA9PSAwKTsKKwl0ZXN0X3Bhc3ModmVyc2lvbmNvbXBhcmUoJmEsICZiKSA9PSAwKTsKKworCXRlc3RfcGFzcyhwYXJzZXZlcnNpb24oJmEsICIwOjAtIiwgTlVMTCkgPT0gMCk7CisJdGVzdF9wYXNzKHZlcnNpb25jb21wYXJlKCZhLCAmYikgPT0gMCk7CisKKwliID0gdmVyc2lvbigwLCAiMCIsICIwIik7CisJdGVzdF9wYXNzKHBhcnNldmVyc2lvbigmYSwgIjA6MC0wIiwgTlVMTCkgPT0gMCk7CisJdGVzdF9wYXNzKHZlcnNpb25jb21wYXJlKCZhLCAmYikgPT0gMCk7CisKKwliID0gdmVyc2lvbigwLCAiMC4wIiwgIjAuMCIpOworCXRlc3RfcGFzcyhwYXJzZXZlcnNpb24oJmEsICIwOjAuMC0wLjAiLCBOVUxMKSA9PSAwKTsKKwl0ZXN0X3Bhc3ModmVyc2lvbmNvbXBhcmUoJmEsICZiKSA9PSAwKTsKKworCS8qIFRlc3QgZXBvY2hlZCB2ZXJzaW9ucy4gKi8KKwliID0gdmVyc2lvbigxLCAiMCIsICIiKTsKKwl0ZXN0X3Bhc3MocGFyc2V2ZXJzaW9uKCZhLCAiMTowIiwgTlVMTCkgPT0gMCk7CisJdGVzdF9wYXNzKHZlcnNpb25jb21wYXJlKCZhLCAmYikgPT0gMCk7CisKKwliID0gdmVyc2lvbig1LCAiMSIsICIiKTsKKwl0ZXN0X3Bhc3MocGFyc2V2ZXJzaW9uKCZhLCAiNToxIiwgTlVMTCkgPT0gMCk7CisJdGVzdF9wYXNzKHZlcnNpb25jb21wYXJlKCZhLCAmYikgPT0gMCk7CisKKwkvKiBUZXN0IG11bHRpcGxlIGRhc2hlcy4gKi8KKwliID0gdmVyc2lvbigwLCAiMC0wIiwgIjAiKTsKKwl0ZXN0X3Bhc3MocGFyc2V2ZXJzaW9uKCZhLCAiMDowLTAtMCIsIE5VTEwpID09IDApOworCXRlc3RfcGFzcyh2ZXJzaW9uY29tcGFyZSgmYSwgJmIpID09IDApOworCisJYiA9IHZlcnNpb24oMCwgIjAtMC0wIiwgIjAiKTsKKwl0ZXN0X3Bhc3MocGFyc2V2ZXJzaW9uKCZhLCAiMDowLTAtMC0wIiwgTlVMTCkgPT0gMCk7CisJdGVzdF9wYXNzKHZlcnNpb25jb21wYXJlKCZhLCAmYikgPT0gMCk7CisKKwkvKiBUZXN0IG11bHRpcGxlIGNvbG9ucy4gKi8KKwliID0gdmVyc2lvbigwLCAiMDowIiwgIjAiKTsKKwl0ZXN0X3Bhc3MocGFyc2V2ZXJzaW9uKCZhLCAiMDowOjAtMCIsIE5VTEwpID09IDApOworCXRlc3RfcGFzcyh2ZXJzaW9uY29tcGFyZSgmYSwgJmIpID09IDApOworCisJYiA9IHZlcnNpb24oMCwgIjA6MDowIiwgIjAiKTsKKwl0ZXN0X3Bhc3MocGFyc2V2ZXJzaW9uKCZhLCAiMDowOjA6MC0wIiwgTlVMTCkgPT0gMCk7CisJdGVzdF9wYXNzKHZlcnNpb25jb21wYXJlKCZhLCAmYikgPT0gMCk7CisKKwkvKiBUZXN0IG11bHRpcGxlIGRhc2hlcyBhbmQgY29sb25zLiAqLworCWIgPSB2ZXJzaW9uKDAsICIwOjAtMCIsICIwIik7CisJdGVzdF9wYXNzKHBhcnNldmVyc2lvbigmYSwgIjA6MDowLTAtMCIsIE5VTEwpID09IDApOworCXRlc3RfcGFzcyh2ZXJzaW9uY29tcGFyZSgmYSwgJmIpID09IDApOworCisJYiA9IHZlcnNpb24oMCwgIjAtMDowIiwgIjAiKTsKKwl0ZXN0X3Bhc3MocGFyc2V2ZXJzaW9uKCZhLCAiMDowLTA6MC0wIiwgTlVMTCkgPT0gMCk7CisJdGVzdF9wYXNzKHZlcnNpb25jb21wYXJlKCZhLCAmYikgPT0gMCk7CisKKwkvKiBUZXN0IHZhbGlkIGNoYXJhY3RlcnMgaW4gdXBzdHJlYW0gdmVyc2lvbi4gKi8KKwliID0gdmVyc2lvbigwLCAiMDlhekFaLi0rfjoiLCAiMCIpOworCXRlc3RfcGFzcyhwYXJzZXZlcnNpb24oJmEsICIwOjA5YXpBWi4tK346LTAiLCBOVUxMKSA9PSAwKTsKKwl0ZXN0X3Bhc3ModmVyc2lvbmNvbXBhcmUoJmEsICZiKSA9PSAwKTsKKworCS8qIFRlc3QgdmFsaWQgY2hhcmFjdGVycyBpbiByZXZpc2lvbi4gKi8KKwliID0gdmVyc2lvbigwLCAiMCIsICJhekFaMDkuK34iKTsKKwl0ZXN0X3Bhc3MocGFyc2V2ZXJzaW9uKCZhLCAiMDowLWF6QVowOS4rfiIsIE5VTEwpID09IDApOworCXRlc3RfcGFzcyh2ZXJzaW9uY29tcGFyZSgmYSwgJmIpID09IDApOworCisJLyogVGVzdCBlbXB0eSB2ZXJzaW9uLiAqLworCXRlc3RfcGFzcyhwYXJzZXZlcnNpb24oJmEsICIiLCAmZXJyKSAhPSAwKTsKKwl0ZXN0X2Vycm9yKGVycik7CisKKwkvKiBUZXN0IGVtcHR5IHVwc3RyZWFtIHZlcnNpb24gYWZ0ZXIgZXBvY2guICovCisJdGVzdF9mYWlsKHBhcnNldmVyc2lvbigmYSwgIjA6IiwgJmVycikgPT0gMCk7CisJdGVzdF9lcnJvcihlcnIpOworCisJLyogVGVzdCB2ZXJzaW9uIHdpdGggZW1iZWRkZWQgc3BhY2VzLiAqLworCXRlc3RfZmFpbChwYXJzZXZlcnNpb24oJmEsICIwOjAgMC0xIiwgJmVycikgPT0gMCk7CisJdGVzdF9lcnJvcihlcnIpOworCisJLyogVGVzdCBpbnZhbGlkIGNoYXJhY3RlcnMgaW4gZXBvY2guICovCisJdGVzdF9mYWlsKHBhcnNldmVyc2lvbigmYSwgImE6MC0wIiwgJmVycikgPT0gMCk7CisJdGVzdF9lcnJvcihlcnIpOworCXRlc3RfZmFpbChwYXJzZXZlcnNpb24oJmEsICJBOjAtMCIsICZlcnIpID09IDApOworCXRlc3RfZXJyb3IoZXJyKTsKKworCS8qIFRlc3QgdXBzdHJlYW0gdmVyc2lvbiBub3Qgc3RhcnRpbmcgd2l0aCBhIGRpZ2l0ICovCisJdGVzdF9mYWlsKHBhcnNldmVyc2lvbigmYSwgIjA6YWJjMy0wIiwgJmVycikgPT0gMCk7CisJdGVzdF93YXJuKGVycik7CisKKwkvKiBUZXN0IGludmFsaWQgY2hhcmFjdGVycyBpbiB1cHN0cmVhbSB2ZXJzaW9uLiAqLworCXZlcnN0ciA9IG1fc3RyZHVwKCIwOjBhLTAiKTsKKwlmb3IgKHAgPSAiISNAJCUmL3xcXDw+KClbXXt9OyxfPSpeJyI7ICpwOyBwKyspIHsKKwkJdmVyc3RyWzNdID0gKnA7CisJCXRlc3RfZmFpbChwYXJzZXZlcnNpb24oJmEsIHZlcnN0ciwgJmVycikgPT0gMCk7CisJCXRlc3Rfd2FybihlcnIpOworCX0KKwlmcmVlKHZlcnN0cik7CisKKwkvKiBUZXN0IGludmFsaWQgY2hhcmFjdGVycyBpbiByZXZpc2lvbi4gKi8KKwl0ZXN0X2ZhaWwocGFyc2V2ZXJzaW9uKCZhLCAiMDowLTA6MCIsICZlcnIpID09IDApOworCXRlc3Rfd2FybihlcnIpOworCisJdmVyc3RyID0gbV9zdHJkdXAoIjA6MC0wIik7CisJZm9yIChwID0gIiEjQCQlJi98XFw8PigpW117fTo7LF89Kl4nIjsgKnA7IHArKykgeworCQl2ZXJzdHJbNF0gPSAqcDsKKwkJdGVzdF9mYWlsKHBhcnNldmVyc2lvbigmYSwgdmVyc3RyLCAmZXJyKSA9PSAwKTsKKwkJdGVzdF93YXJuKGVycik7CisJfQorCWZyZWUodmVyc3RyKTsKKworCS8qIEZJWE1FOiBDb21wbGV0ZS4gKi8KK30KKworc3RhdGljIHZvaWQKK3Rlc3Qodm9pZCkKK3sKKwl0ZXN0X3ZlcnNpb25fY29tcGFyZSgpOworCXRlc3RfdmVyc2lvbl9wYXJzZSgpOworfQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy90cmlnZGVmZXJyZWQuYyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMGI3MTc3MwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmMKQEAgLTAsMCArMSwxOTkwIEBACisjbGluZSAyICJ0cmlnZGVmZXJyZWQuYyIKKworI2xpbmUgNCAidHJpZ2RlZmVycmVkLmMiCisKKyNkZWZpbmUgIFlZX0lOVF9BTElHTkVEIHNob3J0IGludAorCisvKiBBIGxleGljYWwgc2Nhbm5lciBnZW5lcmF0ZWQgYnkgZmxleCAqLworCisjZGVmaW5lIHl5X2NyZWF0ZV9idWZmZXIgdHJpZ2RlZl95eV9jcmVhdGVfYnVmZmVyCisjZGVmaW5lIHl5X2RlbGV0ZV9idWZmZXIgdHJpZ2RlZl95eV9kZWxldGVfYnVmZmVyCisjZGVmaW5lIHl5X2ZsZXhfZGVidWcgdHJpZ2RlZl95eV9mbGV4X2RlYnVnCisjZGVmaW5lIHl5X2luaXRfYnVmZmVyIHRyaWdkZWZfeXlfaW5pdF9idWZmZXIKKyNkZWZpbmUgeXlfZmx1c2hfYnVmZmVyIHRyaWdkZWZfeXlfZmx1c2hfYnVmZmVyCisjZGVmaW5lIHl5X2xvYWRfYnVmZmVyX3N0YXRlIHRyaWdkZWZfeXlfbG9hZF9idWZmZXJfc3RhdGUKKyNkZWZpbmUgeXlfc3dpdGNoX3RvX2J1ZmZlciB0cmlnZGVmX3l5X3N3aXRjaF90b19idWZmZXIKKyNkZWZpbmUgeXlpbiB0cmlnZGVmX3l5aW4KKyNkZWZpbmUgeXlsZW5nIHRyaWdkZWZfeXlsZW5nCisjZGVmaW5lIHl5bGV4IHRyaWdkZWZfeXlsZXgKKyNkZWZpbmUgeXlsaW5lbm8gdHJpZ2RlZl95eWxpbmVubworI2RlZmluZSB5eW91dCB0cmlnZGVmX3l5b3V0CisjZGVmaW5lIHl5cmVzdGFydCB0cmlnZGVmX3l5cmVzdGFydAorI2RlZmluZSB5eXRleHQgdHJpZ2RlZl95eXRleHQKKyNkZWZpbmUgeXl3cmFwIHRyaWdkZWZfeXl3cmFwCisjZGVmaW5lIHl5YWxsb2MgdHJpZ2RlZl95eWFsbG9jCisjZGVmaW5lIHl5cmVhbGxvYyB0cmlnZGVmX3l5cmVhbGxvYworI2RlZmluZSB5eWZyZWUgdHJpZ2RlZl95eWZyZWUKKworI2RlZmluZSBGTEVYX1NDQU5ORVIKKyNkZWZpbmUgWVlfRkxFWF9NQUpPUl9WRVJTSU9OIDIKKyNkZWZpbmUgWVlfRkxFWF9NSU5PUl9WRVJTSU9OIDUKKyNkZWZpbmUgWVlfRkxFWF9TVUJNSU5PUl9WRVJTSU9OIDM1CisjaWYgWVlfRkxFWF9TVUJNSU5PUl9WRVJTSU9OID4gMAorI2RlZmluZSBGTEVYX0JFVEEKKyNlbmRpZgorCisvKiBGaXJzdCwgd2UgZGVhbCB3aXRoICBwbGF0Zm9ybS1zcGVjaWZpYyBvciBjb21waWxlci1zcGVjaWZpYyBpc3N1ZXMuICovCisKKy8qIGJlZ2luIHN0YW5kYXJkIEMgaGVhZGVycy4gKi8KKyNpbmNsdWRlIDxzdGRpby5oPgorI2luY2x1ZGUgPHN0cmluZy5oPgorI2luY2x1ZGUgPGVycm5vLmg+CisjaW5jbHVkZSA8c3RkbGliLmg+CisKKy8qIGVuZCBzdGFuZGFyZCBDIGhlYWRlcnMuICovCisKKy8qIGZsZXggaW50ZWdlciB0eXBlIGRlZmluaXRpb25zICovCisKKyNpZm5kZWYgRkxFWElOVF9ICisjZGVmaW5lIEZMRVhJTlRfSAorCisvKiBDOTkgc3lzdGVtcyBoYXZlIDxpbnR0eXBlcy5oPi4gTm9uLUM5OSBzeXN0ZW1zIG1heSBvciBtYXkgbm90LiAqLworCisjaWYgZGVmaW5lZCAoX19TVERDX1ZFUlNJT05fXykgJiYgX19TVERDX1ZFUlNJT05fXyA+PSAxOTk5MDFMCisKKy8qIEM5OSBzYXlzIHRvIGRlZmluZSBfX1NURENfTElNSVRfTUFDUk9TIGJlZm9yZSBpbmNsdWRpbmcgc3RkaW50LmgsCisgKiBpZiB5b3Ugd2FudCB0aGUgbGltaXQgKG1heC9taW4pIG1hY3JvcyBmb3IgaW50IHR5cGVzLiAKKyAqLworI2lmbmRlZiBfX1NURENfTElNSVRfTUFDUk9TCisjZGVmaW5lIF9fU1REQ19MSU1JVF9NQUNST1MgMQorI2VuZGlmCisKKyNpbmNsdWRlIDxpbnR0eXBlcy5oPgordHlwZWRlZiBpbnQ4X3QgZmxleF9pbnQ4X3Q7Cit0eXBlZGVmIHVpbnQ4X3QgZmxleF91aW50OF90OwordHlwZWRlZiBpbnQxNl90IGZsZXhfaW50MTZfdDsKK3R5cGVkZWYgdWludDE2X3QgZmxleF91aW50MTZfdDsKK3R5cGVkZWYgaW50MzJfdCBmbGV4X2ludDMyX3Q7Cit0eXBlZGVmIHVpbnQzMl90IGZsZXhfdWludDMyX3Q7CisjZWxzZQordHlwZWRlZiBzaWduZWQgY2hhciBmbGV4X2ludDhfdDsKK3R5cGVkZWYgc2hvcnQgaW50IGZsZXhfaW50MTZfdDsKK3R5cGVkZWYgaW50IGZsZXhfaW50MzJfdDsKK3R5cGVkZWYgdW5zaWduZWQgY2hhciBmbGV4X3VpbnQ4X3Q7IAordHlwZWRlZiB1bnNpZ25lZCBzaG9ydCBpbnQgZmxleF91aW50MTZfdDsKK3R5cGVkZWYgdW5zaWduZWQgaW50IGZsZXhfdWludDMyX3Q7CisKKy8qIExpbWl0cyBvZiBpbnRlZ3JhbCB0eXBlcy4gKi8KKyNpZm5kZWYgSU5UOF9NSU4KKyNkZWZpbmUgSU5UOF9NSU4gICAgICAgICAgICAgICAoLTEyOCkKKyNlbmRpZgorI2lmbmRlZiBJTlQxNl9NSU4KKyNkZWZpbmUgSU5UMTZfTUlOICAgICAgICAgICAgICAoLTMyNzY3LTEpCisjZW5kaWYKKyNpZm5kZWYgSU5UMzJfTUlOCisjZGVmaW5lIElOVDMyX01JTiAgICAgICAgICAgICAgKC0yMTQ3NDgzNjQ3LTEpCisjZW5kaWYKKyNpZm5kZWYgSU5UOF9NQVgKKyNkZWZpbmUgSU5UOF9NQVggICAgICAgICAgICAgICAoMTI3KQorI2VuZGlmCisjaWZuZGVmIElOVDE2X01BWAorI2RlZmluZSBJTlQxNl9NQVggICAgICAgICAgICAgICgzMjc2NykKKyNlbmRpZgorI2lmbmRlZiBJTlQzMl9NQVgKKyNkZWZpbmUgSU5UMzJfTUFYICAgICAgICAgICAgICAoMjE0NzQ4MzY0NykKKyNlbmRpZgorI2lmbmRlZiBVSU5UOF9NQVgKKyNkZWZpbmUgVUlOVDhfTUFYICAgICAgICAgICAgICAoMjU1VSkKKyNlbmRpZgorI2lmbmRlZiBVSU5UMTZfTUFYCisjZGVmaW5lIFVJTlQxNl9NQVggICAgICAgICAgICAgKDY1NTM1VSkKKyNlbmRpZgorI2lmbmRlZiBVSU5UMzJfTUFYCisjZGVmaW5lIFVJTlQzMl9NQVggICAgICAgICAgICAgKDQyOTQ5NjcyOTVVKQorI2VuZGlmCisKKyNlbmRpZiAvKiAhIEM5OSAqLworCisjZW5kaWYgLyogISBGTEVYSU5UX0ggKi8KKworI2lmZGVmIF9fY3BsdXNwbHVzCisKKy8qIFRoZSAiY29uc3QiIHN0b3JhZ2UtY2xhc3MtbW9kaWZpZXIgaXMgdmFsaWQuICovCisjZGVmaW5lIFlZX1VTRV9DT05TVAorCisjZWxzZQkvKiAhIF9fY3BsdXNwbHVzICovCisKKy8qIEM5OSByZXF1aXJlcyBfX1NURENfXyB0byBiZSBkZWZpbmVkIGFzIDEuICovCisjaWYgZGVmaW5lZCAoX19TVERDX18pCisKKyNkZWZpbmUgWVlfVVNFX0NPTlNUCisKKyNlbmRpZgkvKiBkZWZpbmVkIChfX1NURENfXykgKi8KKyNlbmRpZgkvKiAhIF9fY3BsdXNwbHVzICovCisKKyNpZmRlZiBZWV9VU0VfQ09OU1QKKyNkZWZpbmUgeXljb25zdCBjb25zdAorI2Vsc2UKKyNkZWZpbmUgeXljb25zdAorI2VuZGlmCisKKy8qIFJldHVybmVkIHVwb24gZW5kLW9mLWZpbGUuICovCisjZGVmaW5lIFlZX05VTEwgMAorCisvKiBQcm9tb3RlcyBhIHBvc3NpYmx5IG5lZ2F0aXZlLCBwb3NzaWJseSBzaWduZWQgY2hhciB0byBhbiB1bnNpZ25lZAorICogaW50ZWdlciBmb3IgdXNlIGFzIGFuIGFycmF5IGluZGV4LiAgSWYgdGhlIHNpZ25lZCBjaGFyIGlzIG5lZ2F0aXZlLAorICogd2Ugd2FudCB0byBpbnN0ZWFkIHRyZWF0IGl0IGFzIGFuIDgtYml0IHVuc2lnbmVkIGNoYXIsIGhlbmNlIHRoZQorICogZG91YmxlIGNhc3QuCisgKi8KKyNkZWZpbmUgWVlfU0NfVE9fVUkoYykgKCh1bnNpZ25lZCBpbnQpICh1bnNpZ25lZCBjaGFyKSBjKQorCisvKiBFbnRlciBhIHN0YXJ0IGNvbmRpdGlvbi4gIFRoaXMgbWFjcm8gcmVhbGx5IG91Z2h0IHRvIHRha2UgYSBwYXJhbWV0ZXIsCisgKiBidXQgd2UgZG8gaXQgdGhlIGRpc2d1c3RpbmcgY3J1ZnR5IHdheSBmb3JjZWQgb24gdXMgYnkgdGhlICgpLWxlc3MKKyAqIGRlZmluaXRpb24gb2YgQkVHSU4uCisgKi8KKyNkZWZpbmUgQkVHSU4gKHl5X3N0YXJ0KSA9IDEgKyAyICoKKworLyogVHJhbnNsYXRlIHRoZSBjdXJyZW50IHN0YXJ0IHN0YXRlIGludG8gYSB2YWx1ZSB0aGF0IGNhbiBiZSBsYXRlciBoYW5kZWQKKyAqIHRvIEJFR0lOIHRvIHJldHVybiB0byB0aGUgc3RhdGUuICBUaGUgWVlTVEFURSBhbGlhcyBpcyBmb3IgbGV4CisgKiBjb21wYXRpYmlsaXR5LgorICovCisjZGVmaW5lIFlZX1NUQVJUICgoKHl5X3N0YXJ0KSAtIDEpIC8gMikKKyNkZWZpbmUgWVlTVEFURSBZWV9TVEFSVAorCisvKiBBY3Rpb24gbnVtYmVyIGZvciBFT0YgcnVsZSBvZiBhIGdpdmVuIHN0YXJ0IHN0YXRlLiAqLworI2RlZmluZSBZWV9TVEFURV9FT0Yoc3RhdGUpIChZWV9FTkRfT0ZfQlVGRkVSICsgc3RhdGUgKyAxKQorCisvKiBTcGVjaWFsIGFjdGlvbiBtZWFuaW5nICJzdGFydCBwcm9jZXNzaW5nIGEgbmV3IGZpbGUiLiAqLworI2RlZmluZSBZWV9ORVdfRklMRSB0cmlnZGVmX3l5cmVzdGFydCh0cmlnZGVmX3l5aW4gICkKKworI2RlZmluZSBZWV9FTkRfT0ZfQlVGRkVSX0NIQVIgMAorCisvKiBTaXplIG9mIGRlZmF1bHQgaW5wdXQgYnVmZmVyLiAqLworI2lmbmRlZiBZWV9CVUZfU0laRQorI2lmZGVmIF9faWE2NF9fCisvKiBPbiBJQS02NCwgdGhlIGJ1ZmZlciBzaXplIGlzIDE2aywgbm90IDhrLgorICogTW9yZW92ZXIsIFlZX0JVRl9TSVpFIGlzIDIqWVlfUkVBRF9CVUZfU0laRSBpbiB0aGUgZ2VuZXJhbCBjYXNlLgorICogRGl0dG8gZm9yIHRoZSBfX2lhNjRfXyBjYXNlIGFjY29yZGluZ2x5LgorICovCisjZGVmaW5lIFlZX0JVRl9TSVpFIDMyNzY4CisjZWxzZQorI2RlZmluZSBZWV9CVUZfU0laRSAxNjM4NAorI2VuZGlmIC8qIF9faWE2NF9fICovCisjZW5kaWYKKworLyogVGhlIHN0YXRlIGJ1ZiBtdXN0IGJlIGxhcmdlIGVub3VnaCB0byBob2xkIG9uZSBzdGF0ZSBwZXIgY2hhcmFjdGVyIGluIHRoZSBtYWluIGJ1ZmZlci4KKyAqLworI2RlZmluZSBZWV9TVEFURV9CVUZfU0laRSAgICgoWVlfQlVGX1NJWkUgKyAyKSAqIHNpemVvZih5eV9zdGF0ZV90eXBlKSkKKworI2lmbmRlZiBZWV9UWVBFREVGX1lZX0JVRkZFUl9TVEFURQorI2RlZmluZSBZWV9UWVBFREVGX1lZX0JVRkZFUl9TVEFURQordHlwZWRlZiBzdHJ1Y3QgeXlfYnVmZmVyX3N0YXRlICpZWV9CVUZGRVJfU1RBVEU7CisjZW5kaWYKKworZXh0ZXJuIGludCB0cmlnZGVmX3l5bGVuZzsKKworZXh0ZXJuIEZJTEUgKnRyaWdkZWZfeXlpbiwgKnRyaWdkZWZfeXlvdXQ7CisKKyNkZWZpbmUgRU9CX0FDVF9DT05USU5VRV9TQ0FOIDAKKyNkZWZpbmUgRU9CX0FDVF9FTkRfT0ZfRklMRSAxCisjZGVmaW5lIEVPQl9BQ1RfTEFTVF9NQVRDSCAyCisKKyAgICAjZGVmaW5lIFlZX0xFU1NfTElORU5PKG4pCisgICAgCisvKiBSZXR1cm4gYWxsIGJ1dCB0aGUgZmlyc3QgIm4iIG1hdGNoZWQgY2hhcmFjdGVycyBiYWNrIHRvIHRoZSBpbnB1dCBzdHJlYW0uICovCisjZGVmaW5lIHl5bGVzcyhuKSBcCisJZG8gXAorCQl7IFwKKwkJLyogVW5kbyBlZmZlY3RzIG9mIHNldHRpbmcgdXAgdHJpZ2RlZl95eXRleHQuICovIFwKKyAgICAgICAgaW50IHl5bGVzc19tYWNyb19hcmcgPSAobik7IFwKKyAgICAgICAgWVlfTEVTU19MSU5FTk8oeXlsZXNzX21hY3JvX2FyZyk7XAorCQkqeXlfY3AgPSAoeXlfaG9sZF9jaGFyKTsgXAorCQlZWV9SRVNUT1JFX1lZX01PUkVfT0ZGU0VUIFwKKwkJKHl5X2NfYnVmX3ApID0geXlfY3AgPSB5eV9icCArIHl5bGVzc19tYWNyb19hcmcgLSBZWV9NT1JFX0FESjsgXAorCQlZWV9ET19CRUZPUkVfQUNUSU9OOyAvKiBzZXQgdXAgdHJpZ2RlZl95eXRleHQgYWdhaW4gKi8gXAorCQl9IFwKKwl3aGlsZSAoIDAgKQorCisjZGVmaW5lIHVucHV0KGMpIHl5dW5wdXQoIGMsICh5eXRleHRfcHRyKSAgKQorCisjaWZuZGVmIFlZX1RZUEVERUZfWVlfU0laRV9UCisjZGVmaW5lIFlZX1RZUEVERUZfWVlfU0laRV9UCit0eXBlZGVmIHNpemVfdCB5eV9zaXplX3Q7CisjZW5kaWYKKworI2lmbmRlZiBZWV9TVFJVQ1RfWVlfQlVGRkVSX1NUQVRFCisjZGVmaW5lIFlZX1NUUlVDVF9ZWV9CVUZGRVJfU1RBVEUKK3N0cnVjdCB5eV9idWZmZXJfc3RhdGUKKwl7CisJRklMRSAqeXlfaW5wdXRfZmlsZTsKKworCWNoYXIgKnl5X2NoX2J1ZjsJCS8qIGlucHV0IGJ1ZmZlciAqLworCWNoYXIgKnl5X2J1Zl9wb3M7CQkvKiBjdXJyZW50IHBvc2l0aW9uIGluIGlucHV0IGJ1ZmZlciAqLworCisJLyogU2l6ZSBvZiBpbnB1dCBidWZmZXIgaW4gYnl0ZXMsIG5vdCBpbmNsdWRpbmcgcm9vbSBmb3IgRU9CCisJICogY2hhcmFjdGVycy4KKwkgKi8KKwl5eV9zaXplX3QgeXlfYnVmX3NpemU7CisKKwkvKiBOdW1iZXIgb2YgY2hhcmFjdGVycyByZWFkIGludG8geXlfY2hfYnVmLCBub3QgaW5jbHVkaW5nIEVPQgorCSAqIGNoYXJhY3RlcnMuCisJICovCisJaW50IHl5X25fY2hhcnM7CisKKwkvKiBXaGV0aGVyIHdlICJvd24iIHRoZSBidWZmZXIgLSBpLmUuLCB3ZSBrbm93IHdlIGNyZWF0ZWQgaXQsCisJICogYW5kIGNhbiByZWFsbG9jKCkgaXQgdG8gZ3JvdyBpdCwgYW5kIHNob3VsZCBmcmVlKCkgaXQgdG8KKwkgKiBkZWxldGUgaXQuCisJICovCisJaW50IHl5X2lzX291cl9idWZmZXI7CisKKwkvKiBXaGV0aGVyIHRoaXMgaXMgYW4gImludGVyYWN0aXZlIiBpbnB1dCBzb3VyY2U7IGlmIHNvLCBhbmQKKwkgKiBpZiB3ZSdyZSB1c2luZyBzdGRpbyBmb3IgaW5wdXQsIHRoZW4gd2Ugd2FudCB0byB1c2UgZ2V0YygpCisJICogaW5zdGVhZCBvZiBmcmVhZCgpLCB0byBtYWtlIHN1cmUgd2Ugc3RvcCBmZXRjaGluZyBpbnB1dCBhZnRlcgorCSAqIGVhY2ggbmV3bGluZS4KKwkgKi8KKwlpbnQgeXlfaXNfaW50ZXJhY3RpdmU7CisKKwkvKiBXaGV0aGVyIHdlJ3JlIGNvbnNpZGVyZWQgdG8gYmUgYXQgdGhlIGJlZ2lubmluZyBvZiBhIGxpbmUuCisJICogSWYgc28sICdeJyBydWxlcyB3aWxsIGJlIGFjdGl2ZSBvbiB0aGUgbmV4dCBtYXRjaCwgb3RoZXJ3aXNlCisJICogbm90LgorCSAqLworCWludCB5eV9hdF9ib2w7CisKKyAgICBpbnQgeXlfYnNfbGluZW5vOyAvKio8IFRoZSBsaW5lIGNvdW50LiAqLworICAgIGludCB5eV9ic19jb2x1bW47IC8qKjwgVGhlIGNvbHVtbiBjb3VudC4gKi8KKyAgICAKKwkvKiBXaGV0aGVyIHRvIHRyeSB0byBmaWxsIHRoZSBpbnB1dCBidWZmZXIgd2hlbiB3ZSByZWFjaCB0aGUKKwkgKiBlbmQgb2YgaXQuCisJICovCisJaW50IHl5X2ZpbGxfYnVmZmVyOworCisJaW50IHl5X2J1ZmZlcl9zdGF0dXM7CisKKyNkZWZpbmUgWVlfQlVGRkVSX05FVyAwCisjZGVmaW5lIFlZX0JVRkZFUl9OT1JNQUwgMQorCS8qIFdoZW4gYW4gRU9GJ3MgYmVlbiBzZWVuIGJ1dCB0aGVyZSdzIHN0aWxsIHNvbWUgdGV4dCB0byBwcm9jZXNzCisJICogdGhlbiB3ZSBtYXJrIHRoZSBidWZmZXIgYXMgWVlfRU9GX1BFTkRJTkcsIHRvIGluZGljYXRlIHRoYXQgd2UKKwkgKiBzaG91bGRuJ3QgdHJ5IHJlYWRpbmcgZnJvbSB0aGUgaW5wdXQgc291cmNlIGFueSBtb3JlLiAgV2UgbWlnaHQKKwkgKiBzdGlsbCBoYXZlIGEgYnVuY2ggb2YgdG9rZW5zIHRvIG1hdGNoLCB0aG91Z2gsIGJlY2F1c2Ugb2YKKwkgKiBwb3NzaWJsZSBiYWNraW5nLXVwLgorCSAqCisJICogV2hlbiB3ZSBhY3R1YWxseSBzZWUgdGhlIEVPRiwgd2UgY2hhbmdlIHRoZSBzdGF0dXMgdG8gIm5ldyIKKwkgKiAodmlhIHRyaWdkZWZfeXlyZXN0YXJ0KCkpLCBzbyB0aGF0IHRoZSB1c2VyIGNhbiBjb250aW51ZSBzY2FubmluZyBieQorCSAqIGp1c3QgcG9pbnRpbmcgdHJpZ2RlZl95eWluIGF0IGEgbmV3IGlucHV0IGZpbGUuCisJICovCisjZGVmaW5lIFlZX0JVRkZFUl9FT0ZfUEVORElORyAyCisKKwl9OworI2VuZGlmIC8qICFZWV9TVFJVQ1RfWVlfQlVGRkVSX1NUQVRFICovCisKKy8qIFN0YWNrIG9mIGlucHV0IGJ1ZmZlcnMuICovCitzdGF0aWMgc2l6ZV90IHl5X2J1ZmZlcl9zdGFja190b3AgPSAwOyAvKio8IGluZGV4IG9mIHRvcCBvZiBzdGFjay4gKi8KK3N0YXRpYyBzaXplX3QgeXlfYnVmZmVyX3N0YWNrX21heCA9IDA7IC8qKjwgY2FwYWNpdHkgb2Ygc3RhY2suICovCitzdGF0aWMgWVlfQlVGRkVSX1NUQVRFICogeXlfYnVmZmVyX3N0YWNrID0gMDsgLyoqPCBTdGFjayBhcyBhbiBhcnJheS4gKi8KKworLyogV2UgcHJvdmlkZSBtYWNyb3MgZm9yIGFjY2Vzc2luZyBidWZmZXIgc3RhdGVzIGluIGNhc2UgaW4gdGhlCisgKiBmdXR1cmUgd2Ugd2FudCB0byBwdXQgdGhlIGJ1ZmZlciBzdGF0ZXMgaW4gYSBtb3JlIGdlbmVyYWwKKyAqICJzY2FubmVyIHN0YXRlIi4KKyAqCisgKiBSZXR1cm5zIHRoZSB0b3Agb2YgdGhlIHN0YWNrLCBvciBOVUxMLgorICovCisjZGVmaW5lIFlZX0NVUlJFTlRfQlVGRkVSICggKHl5X2J1ZmZlcl9zdGFjaykgXAorICAgICAgICAgICAgICAgICAgICAgICAgICA/ICh5eV9idWZmZXJfc3RhY2spWyh5eV9idWZmZXJfc3RhY2tfdG9wKV0gXAorICAgICAgICAgICAgICAgICAgICAgICAgICA6IE5VTEwpCisKKy8qIFNhbWUgYXMgcHJldmlvdXMgbWFjcm8sIGJ1dCB1c2VmdWwgd2hlbiB3ZSBrbm93IHRoYXQgdGhlIGJ1ZmZlciBzdGFjayBpcyBub3QKKyAqIE5VTEwgb3Igd2hlbiB3ZSBuZWVkIGFuIGx2YWx1ZS4gRm9yIGludGVybmFsIHVzZSBvbmx5LgorICovCisjZGVmaW5lIFlZX0NVUlJFTlRfQlVGRkVSX0xWQUxVRSAoeXlfYnVmZmVyX3N0YWNrKVsoeXlfYnVmZmVyX3N0YWNrX3RvcCldCisKKy8qIHl5X2hvbGRfY2hhciBob2xkcyB0aGUgY2hhcmFjdGVyIGxvc3Qgd2hlbiB0cmlnZGVmX3l5dGV4dCBpcyBmb3JtZWQuICovCitzdGF0aWMgY2hhciB5eV9ob2xkX2NoYXI7CitzdGF0aWMgaW50IHl5X25fY2hhcnM7CQkvKiBudW1iZXIgb2YgY2hhcmFjdGVycyByZWFkIGludG8geXlfY2hfYnVmICovCitpbnQgdHJpZ2RlZl95eWxlbmc7CisKKy8qIFBvaW50cyB0byBjdXJyZW50IGNoYXJhY3RlciBpbiBidWZmZXIuICovCitzdGF0aWMgY2hhciAqeXlfY19idWZfcCA9IChjaGFyICopIDA7CitzdGF0aWMgaW50IHl5X2luaXQgPSAwOwkJLyogd2hldGhlciB3ZSBuZWVkIHRvIGluaXRpYWxpemUgKi8KK3N0YXRpYyBpbnQgeXlfc3RhcnQgPSAwOwkvKiBzdGFydCBzdGF0ZSBudW1iZXIgKi8KKworLyogRmxhZyB3aGljaCBpcyB1c2VkIHRvIGFsbG93IHRyaWdkZWZfeXl3cmFwKCkncyB0byBkbyBidWZmZXIgc3dpdGNoZXMKKyAqIGluc3RlYWQgb2Ygc2V0dGluZyB1cCBhIGZyZXNoIHRyaWdkZWZfeXlpbi4gIEEgYml0IG9mIGEgaGFjayAuLi4KKyAqLworc3RhdGljIGludCB5eV9kaWRfYnVmZmVyX3N3aXRjaF9vbl9lb2Y7CisKK3ZvaWQgdHJpZ2RlZl95eXJlc3RhcnQgKEZJTEUgKmlucHV0X2ZpbGUgICk7Cit2b2lkIHRyaWdkZWZfeXlfc3dpdGNoX3RvX2J1ZmZlciAoWVlfQlVGRkVSX1NUQVRFIG5ld19idWZmZXIgICk7CitZWV9CVUZGRVJfU1RBVEUgdHJpZ2RlZl95eV9jcmVhdGVfYnVmZmVyIChGSUxFICpmaWxlLGludCBzaXplICApOwordm9pZCB0cmlnZGVmX3l5X2RlbGV0ZV9idWZmZXIgKFlZX0JVRkZFUl9TVEFURSBiICApOwordm9pZCB0cmlnZGVmX3l5X2ZsdXNoX2J1ZmZlciAoWVlfQlVGRkVSX1NUQVRFIGIgICk7Cit2b2lkIHRyaWdkZWZfeXlwdXNoX2J1ZmZlcl9zdGF0ZSAoWVlfQlVGRkVSX1NUQVRFIG5ld19idWZmZXIgICk7Cit2b2lkIHRyaWdkZWZfeXlwb3BfYnVmZmVyX3N0YXRlICh2b2lkICk7CisKK3N0YXRpYyB2b2lkIHRyaWdkZWZfeXllbnN1cmVfYnVmZmVyX3N0YWNrICh2b2lkICk7CitzdGF0aWMgdm9pZCB0cmlnZGVmX3l5X2xvYWRfYnVmZmVyX3N0YXRlICh2b2lkICk7CitzdGF0aWMgdm9pZCB0cmlnZGVmX3l5X2luaXRfYnVmZmVyIChZWV9CVUZGRVJfU1RBVEUgYixGSUxFICpmaWxlICApOworCisjZGVmaW5lIFlZX0ZMVVNIX0JVRkZFUiB0cmlnZGVmX3l5X2ZsdXNoX2J1ZmZlcihZWV9DVVJSRU5UX0JVRkZFUiApCisKK1lZX0JVRkZFUl9TVEFURSB0cmlnZGVmX3l5X3NjYW5fYnVmZmVyIChjaGFyICpiYXNlLHl5X3NpemVfdCBzaXplICApOworWVlfQlVGRkVSX1NUQVRFIHRyaWdkZWZfeXlfc2Nhbl9zdHJpbmcgKHl5Y29uc3QgY2hhciAqeXlfc3RyICApOworWVlfQlVGRkVSX1NUQVRFIHRyaWdkZWZfeXlfc2Nhbl9ieXRlcyAoeXljb25zdCBjaGFyICpieXRlcyxpbnQgbGVuICApOworCit2b2lkICp0cmlnZGVmX3l5YWxsb2MgKHl5X3NpemVfdCAgKTsKK3ZvaWQgKnRyaWdkZWZfeXlyZWFsbG9jICh2b2lkICoseXlfc2l6ZV90ICApOwordm9pZCB0cmlnZGVmX3l5ZnJlZSAodm9pZCAqICApOworCisjZGVmaW5lIHl5X25ld19idWZmZXIgdHJpZ2RlZl95eV9jcmVhdGVfYnVmZmVyCisKKyNkZWZpbmUgeXlfc2V0X2ludGVyYWN0aXZlKGlzX2ludGVyYWN0aXZlKSBcCisJeyBcCisJaWYgKCAhIFlZX0NVUlJFTlRfQlVGRkVSICl7IFwKKyAgICAgICAgdHJpZ2RlZl95eWVuc3VyZV9idWZmZXJfc3RhY2sgKCk7IFwKKwkJWVlfQ1VSUkVOVF9CVUZGRVJfTFZBTFVFID0gICAgXAorICAgICAgICAgICAgdHJpZ2RlZl95eV9jcmVhdGVfYnVmZmVyKHRyaWdkZWZfeXlpbixZWV9CVUZfU0laRSApOyBcCisJfSBcCisJWVlfQ1VSUkVOVF9CVUZGRVJfTFZBTFVFLT55eV9pc19pbnRlcmFjdGl2ZSA9IGlzX2ludGVyYWN0aXZlOyBcCisJfQorCisjZGVmaW5lIHl5X3NldF9ib2woYXRfYm9sKSBcCisJeyBcCisJaWYgKCAhIFlZX0NVUlJFTlRfQlVGRkVSICl7XAorICAgICAgICB0cmlnZGVmX3l5ZW5zdXJlX2J1ZmZlcl9zdGFjayAoKTsgXAorCQlZWV9DVVJSRU5UX0JVRkZFUl9MVkFMVUUgPSAgICBcCisgICAgICAgICAgICB0cmlnZGVmX3l5X2NyZWF0ZV9idWZmZXIodHJpZ2RlZl95eWluLFlZX0JVRl9TSVpFICk7IFwKKwl9IFwKKwlZWV9DVVJSRU5UX0JVRkZFUl9MVkFMVUUtPnl5X2F0X2JvbCA9IGF0X2JvbDsgXAorCX0KKworI2RlZmluZSBZWV9BVF9CT0woKSAoWVlfQ1VSUkVOVF9CVUZGRVJfTFZBTFVFLT55eV9hdF9ib2wpCisKKy8qIEJlZ2luIHVzZXIgc2VjdDMgKi8KKworI2RlZmluZSB0cmlnZGVmX3l5d3JhcChuKSAxCisjZGVmaW5lIFlZX1NLSVBfWVlXUkFQCisKK3R5cGVkZWYgdW5zaWduZWQgY2hhciBZWV9DSEFSOworCitGSUxFICp0cmlnZGVmX3l5aW4gPSAoRklMRSAqKSAwLCAqdHJpZ2RlZl95eW91dCA9IChGSUxFICopIDA7CisKK3R5cGVkZWYgaW50IHl5X3N0YXRlX3R5cGU7CisKK2V4dGVybiBpbnQgdHJpZ2RlZl95eWxpbmVubzsKKworaW50IHRyaWdkZWZfeXlsaW5lbm8gPSAxOworCitleHRlcm4gY2hhciAqdHJpZ2RlZl95eXRleHQ7CisjZGVmaW5lIHl5dGV4dF9wdHIgdHJpZ2RlZl95eXRleHQKKworc3RhdGljIHl5X3N0YXRlX3R5cGUgeXlfZ2V0X3ByZXZpb3VzX3N0YXRlICh2b2lkICk7CitzdGF0aWMgeXlfc3RhdGVfdHlwZSB5eV90cnlfTlVMX3RyYW5zICh5eV9zdGF0ZV90eXBlIGN1cnJlbnRfc3RhdGUgICk7CitzdGF0aWMgaW50IHl5X2dldF9uZXh0X2J1ZmZlciAodm9pZCApOworc3RhdGljIHZvaWQgeXlfZmF0YWxfZXJyb3IgKHl5Y29uc3QgY2hhciBtc2dbXSAgKTsKKworLyogRG9uZSBhZnRlciB0aGUgY3VycmVudCBwYXR0ZXJuIGhhcyBiZWVuIG1hdGNoZWQgYW5kIGJlZm9yZSB0aGUKKyAqIGNvcnJlc3BvbmRpbmcgYWN0aW9uIC0gc2V0cyB1cCB0cmlnZGVmX3l5dGV4dC4KKyAqLworI2RlZmluZSBZWV9ET19CRUZPUkVfQUNUSU9OIFwKKwkoeXl0ZXh0X3B0cikgPSB5eV9icDsgXAorCXRyaWdkZWZfeXlsZW5nID0gKHNpemVfdCkgKHl5X2NwIC0geXlfYnApOyBcCisJKHl5X2hvbGRfY2hhcikgPSAqeXlfY3A7IFwKKwkqeXlfY3AgPSAnXDAnOyBcCisJKHl5X2NfYnVmX3ApID0geXlfY3A7CisKKyNkZWZpbmUgWVlfTlVNX1JVTEVTIDgKKyNkZWZpbmUgWVlfRU5EX09GX0JVRkZFUiA5CisvKiBUaGlzIHN0cnVjdCBpcyBub3QgdXNlZCBpbiB0aGlzIHNjYW5uZXIsCisgICBidXQgaXRzIHByZXNlbmNlIGlzIG5lY2Vzc2FyeS4gKi8KK3N0cnVjdCB5eV90cmFuc19pbmZvCisJeworCWZsZXhfaW50MzJfdCB5eV92ZXJpZnk7CisJZmxleF9pbnQzMl90IHl5X254dDsKKwl9Oworc3RhdGljIHl5Y29uc3QgZmxleF9pbnQxNl90IHl5X2FjY2VwdFsyM10gPQorICAgIHsgICAwLAorICAgICAgICAwLCAgICAwLCAgICAwLCAgICAwLCAgICA5LCAgICA3LCAgICAxLCAgICAxLCAgICAzLCAgICAzLAorICAgICAgICA0LCAgICA2LCAgICA3LCAgICA1LCAgICAzLCAgICAwLCAgICAyLCAgICAzLCAgICAwLCAgICA2LAorICAgICAgICA1LCAgICAwCisgICAgfSA7CisKK3N0YXRpYyB5eWNvbnN0IGZsZXhfaW50MzJfdCB5eV9lY1syNTZdID0KKyAgICB7ICAgMCwKKyAgICAgICAgMSwgICAgMSwgICAgMSwgICAgMSwgICAgMSwgICAgMSwgICAgMSwgICAgMSwgICAgMiwgICAgMywKKyAgICAgICAgMSwgICAgMSwgICAgMSwgICAgMSwgICAgMSwgICAgMSwgICAgMSwgICAgMSwgICAgMSwgICAgMSwKKyAgICAgICAgMSwgICAgMSwgICAgMSwgICAgMSwgICAgMSwgICAgMSwgICAgMSwgICAgMSwgICAgMSwgICAgMSwKKyAgICAgICAgMSwgICAgMiwgICAgNCwgICAgNCwgICAgNSwgICAgNCwgICAgNCwgICAgNCwgICAgNCwgICAgNCwKKyAgICAgICAgNCwgICAgNCwgICAgNiwgICAgNCwgICAgNywgICAgNiwgICAgNCwgICAgNywgICAgNywgICAgNywKKyAgICAgICAgNywgICAgNywgICAgNywgICAgNywgICAgNywgICAgNywgICAgNywgICAgNCwgICAgNCwgICAgNCwKKyAgICAgICAgNCwgICAgNCwgICAgNCwgICAgNCwgICAgNCwgICAgNCwgICAgNCwgICAgNCwgICAgNCwgICAgNCwKKyAgICAgICAgNCwgICAgNCwgICAgNCwgICAgNCwgICAgNCwgICAgNCwgICAgNCwgICAgNCwgICAgNCwgICAgNCwKKyAgICAgICAgNCwgICAgNCwgICAgNCwgICAgNCwgICAgNCwgICAgNCwgICAgNCwgICAgNCwgICAgNCwgICAgNCwKKyAgICAgICAgNCwgICAgNCwgICAgNCwgICAgNCwgICAgNCwgICAgNCwgICAgNywgICAgNywgICAgNywgICAgNywKKworICAgICAgICA3LCAgICA3LCAgICA3LCAgICA3LCAgICA3LCAgICA3LCAgICA3LCAgICA3LCAgICA3LCAgICA3LAorICAgICAgICA3LCAgICA3LCAgICA3LCAgICA3LCAgICA3LCAgICA3LCAgICA3LCAgICA3LCAgICA3LCAgICA3LAorICAgICAgICA3LCAgICA3LCAgICA0LCAgICA0LCAgICA0LCAgICA0LCAgICAxLCAgICAxLCAgICAxLCAgICAxLAorICAgICAgICAxLCAgICAxLCAgICAxLCAgICAxLCAgICAxLCAgICAxLCAgICAxLCAgICAxLCAgICAxLCAgICAxLAorICAgICAgICAxLCAgICAxLCAgICAxLCAgICAxLCAgICAxLCAgICAxLCAgICAxLCAgICAxLCAgICAxLCAgICAxLAorICAgICAgICAxLCAgICAxLCAgICAxLCAgICAxLCAgICAxLCAgICAxLCAgICAxLCAgICAxLCAgICAxLCAgICAxLAorICAgICAgICAxLCAgICAxLCAgICAxLCAgICAxLCAgICAxLCAgICAxLCAgICAxLCAgICAxLCAgICAxLCAgICAxLAorICAgICAgICAxLCAgICAxLCAgICAxLCAgICAxLCAgICAxLCAgICAxLCAgICAxLCAgICAxLCAgICAxLCAgICAxLAorICAgICAgICAxLCAgICAxLCAgICAxLCAgICAxLCAgICAxLCAgICAxLCAgICAxLCAgICAxLCAgICAxLCAgICAxLAorICAgICAgICAxLCAgICAxLCAgICAxLCAgICAxLCAgICAxLCAgICAxLCAgICAxLCAgICAxLCAgICAxLCAgICAxLAorCisgICAgICAgIDEsICAgIDEsICAgIDEsICAgIDEsICAgIDEsICAgIDEsICAgIDEsICAgIDEsICAgIDEsICAgIDEsCisgICAgICAgIDEsICAgIDEsICAgIDEsICAgIDEsICAgIDEsICAgIDEsICAgIDEsICAgIDEsICAgIDEsICAgIDEsCisgICAgICAgIDEsICAgIDEsICAgIDEsICAgIDEsICAgIDEsICAgIDEsICAgIDEsICAgIDEsICAgIDEsICAgIDEsCisgICAgICAgIDEsICAgIDEsICAgIDEsICAgIDEsICAgIDEsICAgIDEsICAgIDEsICAgIDEsICAgIDEsICAgIDEsCisgICAgICAgIDEsICAgIDEsICAgIDEsICAgIDEsICAgIDEsICAgIDEsICAgIDEsICAgIDEsICAgIDEsICAgIDEsCisgICAgICAgIDEsICAgIDEsICAgIDEsICAgIDEsICAgIDEKKyAgICB9IDsKKworc3RhdGljIHl5Y29uc3QgZmxleF9pbnQzMl90IHl5X21ldGFbOF0gPQorICAgIHsgICAwLAorICAgICAgICAxLCAgICAxLCAgICAxLCAgICAyLCAgICAyLCAgICAzLCAgICAzCisgICAgfSA7CisKK3N0YXRpYyB5eWNvbnN0IGZsZXhfaW50MTZfdCB5eV9iYXNlWzI3XSA9CisgICAgeyAgIDAsCisgICAgICAgIDAsICAgIDAsICAgIDcsICAgIDAsICAgMzQsICAgMzUsICAgMzUsICAgMzUsICAgIDAsICAgMTQsCisgICAgICAgMzUsICAgMzUsICAgMzAsICAgIDAsICAgIDAsICAgMjksICAgMzUsICAgIDAsICAgMjgsICAgMzUsCisgICAgICAgIDAsICAgMzUsICAgMjAsICAgMjMsICAgMjcsICAgMjYKKyAgICB9IDsKKworc3RhdGljIHl5Y29uc3QgZmxleF9pbnQxNl90IHl5X2RlZlsyN10gPQorICAgIHsgICAwLAorICAgICAgIDIyLCAgICAxLCAgIDIyLCAgICAzLCAgIDIyLCAgIDIyLCAgIDIyLCAgIDIyLCAgIDIzLCAgIDIyLAorICAgICAgIDIyLCAgIDIyLCAgIDI0LCAgIDI1LCAgIDIzLCAgIDI2LCAgIDIyLCAgIDEwLCAgIDI0LCAgIDIyLAorICAgICAgIDI1LCAgICAwLCAgIDIyLCAgIDIyLCAgIDIyLCAgIDIyCisgICAgfSA7CisKK3N0YXRpYyB5eWNvbnN0IGZsZXhfaW50MTZfdCB5eV9ueHRbNDNdID0KKyAgICB7ICAgMCwKKyAgICAgICAgNiwgICAgNywgICAgOCwgICAgOSwgICAxMCwgICAgOSwgICAgOSwgICAgNiwgICAxMSwgICAxMiwKKyAgICAgICAgNiwgICAxMywgICAgNiwgICAxNCwgICAxNiwgICAxNiwgICAxNywgICAxOCwgICAxOCwgICAxOCwKKyAgICAgICAxOCwgICAxNSwgICAxNSwgICAxOSwgICAxOSwgICAxOSwgICAxNiwgICAxNiwgICAxNiwgICAyMSwKKyAgICAgICAyMCwgICAxNywgICAyMCwgICAyMiwgICAgNSwgICAyMiwgICAyMiwgICAyMiwgICAyMiwgICAyMiwKKyAgICAgICAyMiwgICAyMgorICAgIH0gOworCitzdGF0aWMgeXljb25zdCBmbGV4X2ludDE2X3QgeXlfY2hrWzQzXSA9CisgICAgeyAgIDAsCisgICAgICAgIDEsICAgIDEsICAgIDEsICAgIDEsICAgIDEsICAgIDEsICAgIDEsICAgIDMsICAgIDMsICAgIDMsCisgICAgICAgIDMsICAgIDMsICAgIDMsICAgIDMsICAgMTAsICAgMTAsICAgMTAsICAgMTAsICAgMTAsICAgMTAsCisgICAgICAgMTAsICAgMjMsICAgMjMsICAgMjQsICAgMjQsICAgMjQsICAgMjYsICAgMjYsICAgMjYsICAgMjUsCisgICAgICAgMTksICAgMTYsICAgMTMsICAgIDUsICAgMjIsICAgMjIsICAgMjIsICAgMjIsICAgMjIsICAgMjIsCisgICAgICAgMjIsICAgMjIKKyAgICB9IDsKKworc3RhdGljIHl5X3N0YXRlX3R5cGUgeXlfbGFzdF9hY2NlcHRpbmdfc3RhdGU7CitzdGF0aWMgY2hhciAqeXlfbGFzdF9hY2NlcHRpbmdfY3BvczsKKworZXh0ZXJuIGludCB0cmlnZGVmX3l5X2ZsZXhfZGVidWc7CitpbnQgdHJpZ2RlZl95eV9mbGV4X2RlYnVnID0gMDsKKworLyogVGhlIGludGVudCBiZWhpbmQgdGhpcyBkZWZpbml0aW9uIGlzIHRoYXQgaXQnbGwgY2F0Y2gKKyAqIGFueSB1c2VzIG9mIFJFSkVDVCB3aGljaCBmbGV4IG1pc3NlZC4KKyAqLworI2RlZmluZSBSRUpFQ1QgcmVqZWN0X3VzZWRfYnV0X25vdF9kZXRlY3RlZAorI2RlZmluZSB5eW1vcmUoKSB5eW1vcmVfdXNlZF9idXRfbm90X2RldGVjdGVkCisjZGVmaW5lIFlZX01PUkVfQURKIDAKKyNkZWZpbmUgWVlfUkVTVE9SRV9ZWV9NT1JFX09GRlNFVAorY2hhciAqdHJpZ2RlZl95eXRleHQ7CisjbGluZSAxICJ0cmlnZGVmZXJyZWQubCIKKy8qCisgKiBsaWJkcGtnIC0gRGViaWFuIHBhY2thZ2luZyBzdWl0ZSBsaWJyYXJ5IHJvdXRpbmVzCisgKiB0cmlnZGVmZXJyZWQubCAtIHBhcnNpbmcgb2YgdHJpZ2dlcnMvRGVmZXJyZWQKKyAqCisgKiBDb3B5cmlnaHQgwqkgMjAwNyBDYW5vbmljYWwgTHRkCisgKiB3cml0dGVuIGJ5IElhbiBKYWNrc29uIDxpYW5AY2hpYXJrLmdyZWVuZW5kLm9yZy51az4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKy8qIFJlc2V0IHRoZSBuYW1lIHRvIHRoZSBkZWZhdWx0IHZhbHVlIChpbnN0ZWFkIG9mIHVzaW5nICJ0cmlnZGVmZXJyZWQuYyIpCisgKiBzbyB0aGF0IGF1dG9tYWtlICh5bHdyYXApIGNhbiBmaW5kIGl0LiAqLworCisjbGluZSAzNiAidHJpZ2RlZmVycmVkLmwiCisKKyNpbmNsdWRlIDxjb25maWcuaD4KKyNpbmNsdWRlIDxjb21wYXQuaD4KKworI2luY2x1ZGUgPHN5cy9zdGF0Lmg+CisjaW5jbHVkZSA8c3lzL2ZjbnRsLmg+CisKKyNpbmNsdWRlIDxkcGtnL2kxOG4uaD4KKyNpbmNsdWRlIDxkcGtnL2Rwa2cuaD4KKyNpbmNsdWRlIDxkcGtnL2Rwa2ctZGIuaD4KKyNpbmNsdWRlIDxkcGtnL2ZpbGUuaD4KKyNpbmNsdWRlIDxkcGtnL2Rpci5oPgorI2luY2x1ZGUgPGRwa2cvdHJpZ2RlZmVycmVkLmg+CisjaW5jbHVkZSA8ZHBrZy90cmlnbGliLmg+CisKKyNkZWZpbmUgWVlfTk9fSU5QVVQKKyNkZWZpbmUgWVlfREVDTCBpbnQgdHJpZ2RlZl9wYXJzZSh2b2lkKQorCitzdGF0aWMgc3RydWN0IHZhcmJ1ZiBmbiwgbmV3Zm47CisKK3N0YXRpYyBjb25zdCBzdHJ1Y3QgdHJpZ2RlZm1ldGhzICp0cmlnZGVmOworCisjbGluZSA1NDEgInRyaWdkZWZlcnJlZC5jIgorCisjZGVmaW5lIElOSVRJQUwgMAorI2RlZmluZSBtaWRsaW5lIDEKKworI2lmbmRlZiBZWV9OT19VTklTVERfSAorLyogU3BlY2lhbCBjYXNlIGZvciAidW5pc3RkLmgiLCBzaW5jZSBpdCBpcyBub24tQU5TSS4gV2UgaW5jbHVkZSBpdCB3YXkKKyAqIGRvd24gaGVyZSBiZWNhdXNlIHdlIHdhbnQgdGhlIHVzZXIncyBzZWN0aW9uIDEgdG8gaGF2ZSBiZWVuIHNjYW5uZWQgZmlyc3QuCisgKiBUaGUgdXNlciBoYXMgYSBjaGFuY2UgdG8gb3ZlcnJpZGUgaXQgd2l0aCBhbiBvcHRpb24uCisgKi8KKyNpbmNsdWRlIDx1bmlzdGQuaD4KKyNlbmRpZgorCisjaWZuZGVmIFlZX0VYVFJBX1RZUEUKKyNkZWZpbmUgWVlfRVhUUkFfVFlQRSB2b2lkICoKKyNlbmRpZgorCitzdGF0aWMgaW50IHl5X2luaXRfZ2xvYmFscyAodm9pZCApOworCisvKiBBY2Nlc3NvciBtZXRob2RzIHRvIGdsb2JhbHMuCisgICBUaGVzZSBhcmUgbWFkZSB2aXNpYmxlIHRvIG5vbi1yZWVudHJhbnQgc2Nhbm5lcnMgZm9yIGNvbnZlbmllbmNlLiAqLworCitpbnQgdHJpZ2RlZl95eWxleF9kZXN0cm95ICh2b2lkICk7CisKK2ludCB0cmlnZGVmX3l5Z2V0X2RlYnVnICh2b2lkICk7CisKK3ZvaWQgdHJpZ2RlZl95eXNldF9kZWJ1ZyAoaW50IGRlYnVnX2ZsYWcgICk7CisKK1lZX0VYVFJBX1RZUEUgdHJpZ2RlZl95eWdldF9leHRyYSAodm9pZCApOworCit2b2lkIHRyaWdkZWZfeXlzZXRfZXh0cmEgKFlZX0VYVFJBX1RZUEUgdXNlcl9kZWZpbmVkICApOworCitGSUxFICp0cmlnZGVmX3l5Z2V0X2luICh2b2lkICk7CisKK3ZvaWQgdHJpZ2RlZl95eXNldF9pbiAgKEZJTEUgKiBpbl9zdHIgICk7CisKK0ZJTEUgKnRyaWdkZWZfeXlnZXRfb3V0ICh2b2lkICk7CisKK3ZvaWQgdHJpZ2RlZl95eXNldF9vdXQgIChGSUxFICogb3V0X3N0ciAgKTsKKworaW50IHRyaWdkZWZfeXlnZXRfbGVuZyAodm9pZCApOworCitjaGFyICp0cmlnZGVmX3l5Z2V0X3RleHQgKHZvaWQgKTsKKworaW50IHRyaWdkZWZfeXlnZXRfbGluZW5vICh2b2lkICk7CisKK3ZvaWQgdHJpZ2RlZl95eXNldF9saW5lbm8gKGludCBsaW5lX251bWJlciAgKTsKKworLyogTWFjcm9zIGFmdGVyIHRoaXMgcG9pbnQgY2FuIGFsbCBiZSBvdmVycmlkZGVuIGJ5IHVzZXIgZGVmaW5pdGlvbnMgaW4KKyAqIHNlY3Rpb24gMS4KKyAqLworCisjaWZuZGVmIFlZX1NLSVBfWVlXUkFQCisjaWZkZWYgX19jcGx1c3BsdXMKK2V4dGVybiAiQyIgaW50IHRyaWdkZWZfeXl3cmFwICh2b2lkICk7CisjZWxzZQorZXh0ZXJuIGludCB0cmlnZGVmX3l5d3JhcCAodm9pZCApOworI2VuZGlmCisjZW5kaWYKKworI2lmbmRlZiB5eXRleHRfcHRyCitzdGF0aWMgdm9pZCB5eV9mbGV4X3N0cm5jcHkgKGNoYXIgKix5eWNvbnN0IGNoYXIgKixpbnQgKTsKKyNlbmRpZgorCisjaWZkZWYgWVlfTkVFRF9TVFJMRU4KK3N0YXRpYyBpbnQgeXlfZmxleF9zdHJsZW4gKHl5Y29uc3QgY2hhciAqICk7CisjZW5kaWYKKworI2lmbmRlZiBZWV9OT19JTlBVVAorCisjaWZkZWYgX19jcGx1c3BsdXMKK3N0YXRpYyBpbnQgeXlpbnB1dCAodm9pZCApOworI2Vsc2UKK3N0YXRpYyBpbnQgaW5wdXQgKHZvaWQgKTsKKyNlbmRpZgorCisjZW5kaWYKKworLyogQW1vdW50IG9mIHN0dWZmIHRvIHNsdXJwIHVwIHdpdGggZWFjaCByZWFkLiAqLworI2lmbmRlZiBZWV9SRUFEX0JVRl9TSVpFCisjaWZkZWYgX19pYTY0X18KKy8qIE9uIElBLTY0LCB0aGUgYnVmZmVyIHNpemUgaXMgMTZrLCBub3QgOGsgKi8KKyNkZWZpbmUgWVlfUkVBRF9CVUZfU0laRSAxNjM4NAorI2Vsc2UKKyNkZWZpbmUgWVlfUkVBRF9CVUZfU0laRSA4MTkyCisjZW5kaWYgLyogX19pYTY0X18gKi8KKyNlbmRpZgorCisvKiBDb3B5IHdoYXRldmVyIHRoZSBsYXN0IHJ1bGUgbWF0Y2hlZCB0byB0aGUgc3RhbmRhcmQgb3V0cHV0LiAqLworI2lmbmRlZiBFQ0hPCisvKiBUaGlzIHVzZWQgdG8gYmUgYW4gZnB1dHMoKSwgYnV0IHNpbmNlIHRoZSBzdHJpbmcgbWlnaHQgY29udGFpbiBOVUwncywKKyAqIHdlIG5vdyB1c2UgZndyaXRlKCkuCisgKi8KKyNkZWZpbmUgRUNITyBkbyB7IGlmIChmd3JpdGUoIHRyaWdkZWZfeXl0ZXh0LCB0cmlnZGVmX3l5bGVuZywgMSwgdHJpZ2RlZl95eW91dCApKSB7fSB9IHdoaWxlICgwKQorI2VuZGlmCisKKy8qIEdldHMgaW5wdXQgYW5kIHN0dWZmcyBpdCBpbnRvICJidWYiLiAgbnVtYmVyIG9mIGNoYXJhY3RlcnMgcmVhZCwgb3IgWVlfTlVMTCwKKyAqIGlzIHJldHVybmVkIGluICJyZXN1bHQiLgorICovCisjaWZuZGVmIFlZX0lOUFVUCisjZGVmaW5lIFlZX0lOUFVUKGJ1ZixyZXN1bHQsbWF4X3NpemUpIFwKKwlpZiAoIFlZX0NVUlJFTlRfQlVGRkVSX0xWQUxVRS0+eXlfaXNfaW50ZXJhY3RpdmUgKSBcCisJCXsgXAorCQlpbnQgYyA9ICcqJzsgXAorCQlzaXplX3QgbjsgXAorCQlmb3IgKCBuID0gMDsgbiA8IG1heF9zaXplICYmIFwKKwkJCSAgICAgKGMgPSBnZXRjKCB0cmlnZGVmX3l5aW4gKSkgIT0gRU9GICYmIGMgIT0gJ1xuJzsgKytuICkgXAorCQkJYnVmW25dID0gKGNoYXIpIGM7IFwKKwkJaWYgKCBjID09ICdcbicgKSBcCisJCQlidWZbbisrXSA9IChjaGFyKSBjOyBcCisJCWlmICggYyA9PSBFT0YgJiYgZmVycm9yKCB0cmlnZGVmX3l5aW4gKSApIFwKKwkJCVlZX0ZBVEFMX0VSUk9SKCAiaW5wdXQgaW4gZmxleCBzY2FubmVyIGZhaWxlZCIgKTsgXAorCQlyZXN1bHQgPSBuOyBcCisJCX0gXAorCWVsc2UgXAorCQl7IFwKKwkJZXJybm89MDsgXAorCQl3aGlsZSAoIChyZXN1bHQgPSBmcmVhZChidWYsIDEsIG1heF9zaXplLCB0cmlnZGVmX3l5aW4pKT09MCAmJiBmZXJyb3IodHJpZ2RlZl95eWluKSkgXAorCQkJeyBcCisJCQlpZiggZXJybm8gIT0gRUlOVFIpIFwKKwkJCQl7IFwKKwkJCQlZWV9GQVRBTF9FUlJPUiggImlucHV0IGluIGZsZXggc2Nhbm5lciBmYWlsZWQiICk7IFwKKwkJCQlicmVhazsgXAorCQkJCX0gXAorCQkJZXJybm89MDsgXAorCQkJY2xlYXJlcnIodHJpZ2RlZl95eWluKTsgXAorCQkJfSBcCisJCX1cCitcCisKKyNlbmRpZgorCisvKiBObyBzZW1pLWNvbG9uIGFmdGVyIHJldHVybjsgY29ycmVjdCB1c2FnZSBpcyB0byB3cml0ZSAieXl0ZXJtaW5hdGUoKTsiIC0KKyAqIHdlIGRvbid0IHdhbnQgYW4gZXh0cmEgJzsnIGFmdGVyIHRoZSAicmV0dXJuIiBiZWNhdXNlIHRoYXQgd2lsbCBjYXVzZQorICogc29tZSBjb21waWxlcnMgdG8gY29tcGxhaW4gYWJvdXQgdW5yZWFjaGFibGUgc3RhdGVtZW50cy4KKyAqLworI2lmbmRlZiB5eXRlcm1pbmF0ZQorI2RlZmluZSB5eXRlcm1pbmF0ZSgpIHJldHVybiBZWV9OVUxMCisjZW5kaWYKKworLyogTnVtYmVyIG9mIGVudHJpZXMgYnkgd2hpY2ggc3RhcnQtY29uZGl0aW9uIHN0YWNrIGdyb3dzLiAqLworI2lmbmRlZiBZWV9TVEFSVF9TVEFDS19JTkNSCisjZGVmaW5lIFlZX1NUQVJUX1NUQUNLX0lOQ1IgMjUKKyNlbmRpZgorCisvKiBSZXBvcnQgYSBmYXRhbCBlcnJvci4gKi8KKyNpZm5kZWYgWVlfRkFUQUxfRVJST1IKKyNkZWZpbmUgWVlfRkFUQUxfRVJST1IobXNnKSB5eV9mYXRhbF9lcnJvciggbXNnICkKKyNlbmRpZgorCisvKiBlbmQgdGFibGVzIHNlcmlhbGl6YXRpb24gc3RydWN0dXJlcyBhbmQgcHJvdG90eXBlcyAqLworCisvKiBEZWZhdWx0IGRlY2xhcmF0aW9uIG9mIGdlbmVyYXRlZCBzY2FubmVyIC0gYSBkZWZpbmUgc28gdGhlIHVzZXIgY2FuCisgKiBlYXNpbHkgYWRkIHBhcmFtZXRlcnMuCisgKi8KKyNpZm5kZWYgWVlfREVDTAorI2RlZmluZSBZWV9ERUNMX0lTX09VUlMgMQorCitleHRlcm4gaW50IHRyaWdkZWZfeXlsZXggKHZvaWQpOworCisjZGVmaW5lIFlZX0RFQ0wgaW50IHRyaWdkZWZfeXlsZXggKHZvaWQpCisjZW5kaWYgLyogIVlZX0RFQ0wgKi8KKworLyogQ29kZSBleGVjdXRlZCBhdCB0aGUgYmVnaW5uaW5nIG9mIGVhY2ggcnVsZSwgYWZ0ZXIgdHJpZ2RlZl95eXRleHQgYW5kIHRyaWdkZWZfeXlsZW5nCisgKiBoYXZlIGJlZW4gc2V0IHVwLgorICovCisjaWZuZGVmIFlZX1VTRVJfQUNUSU9OCisjZGVmaW5lIFlZX1VTRVJfQUNUSU9OCisjZW5kaWYKKworLyogQ29kZSBleGVjdXRlZCBhdCB0aGUgZW5kIG9mIGVhY2ggcnVsZS4gKi8KKyNpZm5kZWYgWVlfQlJFQUsKKyNkZWZpbmUgWVlfQlJFQUsgYnJlYWs7CisjZW5kaWYKKworI2RlZmluZSBZWV9SVUxFX1NFVFVQIFwKKwlZWV9VU0VSX0FDVElPTgorCisvKiogVGhlIG1haW4gc2Nhbm5lciBmdW5jdGlvbiB3aGljaCBkb2VzIGFsbCB0aGUgd29yay4KKyAqLworWVlfREVDTAoreworCXJlZ2lzdGVyIHl5X3N0YXRlX3R5cGUgeXlfY3VycmVudF9zdGF0ZTsKKwlyZWdpc3RlciBjaGFyICp5eV9jcCwgKnl5X2JwOworCXJlZ2lzdGVyIGludCB5eV9hY3Q7CisgICAgCisjbGluZSA2MCAidHJpZ2RlZmVycmVkLmwiCisKKworI2xpbmUgNzMwICJ0cmlnZGVmZXJyZWQuYyIKKworCWlmICggISh5eV9pbml0KSApCisJCXsKKwkJKHl5X2luaXQpID0gMTsKKworI2lmZGVmIFlZX1VTRVJfSU5JVAorCQlZWV9VU0VSX0lOSVQ7CisjZW5kaWYKKworCQlpZiAoICEgKHl5X3N0YXJ0KSApCisJCQkoeXlfc3RhcnQpID0gMTsJLyogZmlyc3Qgc3RhcnQgc3RhdGUgKi8KKworCQlpZiAoICEgdHJpZ2RlZl95eWluICkKKwkJCXRyaWdkZWZfeXlpbiA9IHN0ZGluOworCisJCWlmICggISB0cmlnZGVmX3l5b3V0ICkKKwkJCXRyaWdkZWZfeXlvdXQgPSBzdGRvdXQ7CisKKwkJaWYgKCAhIFlZX0NVUlJFTlRfQlVGRkVSICkgeworCQkJdHJpZ2RlZl95eWVuc3VyZV9idWZmZXJfc3RhY2sgKCk7CisJCQlZWV9DVVJSRU5UX0JVRkZFUl9MVkFMVUUgPQorCQkJCXRyaWdkZWZfeXlfY3JlYXRlX2J1ZmZlcih0cmlnZGVmX3l5aW4sWVlfQlVGX1NJWkUgKTsKKwkJfQorCisJCXRyaWdkZWZfeXlfbG9hZF9idWZmZXJfc3RhdGUoICk7CisJCX0KKworCXdoaWxlICggMSApCQkvKiBsb29wcyB1bnRpbCBlbmQtb2YtZmlsZSBpcyByZWFjaGVkICovCisJCXsKKwkJeXlfY3AgPSAoeXlfY19idWZfcCk7CisKKwkJLyogU3VwcG9ydCBvZiB0cmlnZGVmX3l5dGV4dC4gKi8KKwkJKnl5X2NwID0gKHl5X2hvbGRfY2hhcik7CisKKwkJLyogeXlfYnAgcG9pbnRzIHRvIHRoZSBwb3NpdGlvbiBpbiB5eV9jaF9idWYgb2YgdGhlIHN0YXJ0IG9mCisJCSAqIHRoZSBjdXJyZW50IHJ1bi4KKwkJICovCisJCXl5X2JwID0geXlfY3A7CisKKwkJeXlfY3VycmVudF9zdGF0ZSA9ICh5eV9zdGFydCk7Cit5eV9tYXRjaDoKKwkJZG8KKwkJCXsKKwkJCXJlZ2lzdGVyIFlZX0NIQVIgeXlfYyA9IHl5X2VjW1lZX1NDX1RPX1VJKCp5eV9jcCldOworCQkJaWYgKCB5eV9hY2NlcHRbeXlfY3VycmVudF9zdGF0ZV0gKQorCQkJCXsKKwkJCQkoeXlfbGFzdF9hY2NlcHRpbmdfc3RhdGUpID0geXlfY3VycmVudF9zdGF0ZTsKKwkJCQkoeXlfbGFzdF9hY2NlcHRpbmdfY3BvcykgPSB5eV9jcDsKKwkJCQl9CisJCQl3aGlsZSAoIHl5X2Noa1t5eV9iYXNlW3l5X2N1cnJlbnRfc3RhdGVdICsgeXlfY10gIT0geXlfY3VycmVudF9zdGF0ZSApCisJCQkJeworCQkJCXl5X2N1cnJlbnRfc3RhdGUgPSAoaW50KSB5eV9kZWZbeXlfY3VycmVudF9zdGF0ZV07CisJCQkJaWYgKCB5eV9jdXJyZW50X3N0YXRlID49IDIzICkKKwkJCQkJeXlfYyA9IHl5X21ldGFbKHVuc2lnbmVkIGludCkgeXlfY107CisJCQkJfQorCQkJeXlfY3VycmVudF9zdGF0ZSA9IHl5X254dFt5eV9iYXNlW3l5X2N1cnJlbnRfc3RhdGVdICsgKHVuc2lnbmVkIGludCkgeXlfY107CisJCQkrK3l5X2NwOworCQkJfQorCQl3aGlsZSAoIHl5X2N1cnJlbnRfc3RhdGUgIT0gMjIgKTsKKwkJeXlfY3AgPSAoeXlfbGFzdF9hY2NlcHRpbmdfY3Bvcyk7CisJCXl5X2N1cnJlbnRfc3RhdGUgPSAoeXlfbGFzdF9hY2NlcHRpbmdfc3RhdGUpOworCit5eV9maW5kX2FjdGlvbjoKKwkJeXlfYWN0ID0geXlfYWNjZXB0W3l5X2N1cnJlbnRfc3RhdGVdOworCisJCVlZX0RPX0JFRk9SRV9BQ1RJT047CisKK2RvX2FjdGlvbjoJLyogVGhpcyBsYWJlbCBpcyB1c2VkIG9ubHkgdG8gYWNjZXNzIEVPRiBhY3Rpb25zLiAqLworCisJCXN3aXRjaCAoIHl5X2FjdCApCisJeyAvKiBiZWdpbm5pbmcgb2YgYWN0aW9uIHN3aXRjaCAqLworCQkJY2FzZSAwOiAvKiBtdXN0IGJhY2sgdXAgKi8KKwkJCS8qIHVuZG8gdGhlIGVmZmVjdHMgb2YgWVlfRE9fQkVGT1JFX0FDVElPTiAqLworCQkJKnl5X2NwID0gKHl5X2hvbGRfY2hhcik7CisJCQl5eV9jcCA9ICh5eV9sYXN0X2FjY2VwdGluZ19jcG9zKTsKKwkJCXl5X2N1cnJlbnRfc3RhdGUgPSAoeXlfbGFzdF9hY2NlcHRpbmdfc3RhdGUpOworCQkJZ290byB5eV9maW5kX2FjdGlvbjsKKworY2FzZSAxOgorLyogcnVsZSAxIGNhbiBtYXRjaCBlb2wgKi8KK1lZX1JVTEVfU0VUVVAKKyNsaW5lIDYyICJ0cmlnZGVmZXJyZWQubCIKKy8qIHdoaXRlc3BhY2UgKi8KKwlZWV9CUkVBSworY2FzZSAyOgorLyogcnVsZSAyIGNhbiBtYXRjaCBlb2wgKi8KK1lZX1JVTEVfU0VUVVAKKyNsaW5lIDYzICJ0cmlnZGVmZXJyZWQubCIKKy8qIGNvbW1lbnRzICovCisJWVlfQlJFQUsKK2Nhc2UgMzoKK1lZX1JVTEVfU0VUVVAKKyNsaW5lIDY0ICJ0cmlnZGVmZXJyZWQubCIKK3sKKwl0cmlnZGVmLT50cmlnX2JlZ2luKHRyaWdkZWZfeXl0ZXh0KTsKKwlCRUdJTihtaWRsaW5lKTsKKwl9CisJWVlfQlJFQUsKK2Nhc2UgNDoKK1lZX1JVTEVfU0VUVVAKKyNsaW5lIDY5ICJ0cmlnZGVmZXJyZWQubCIKKy8qIHdoaXRlc3BhY2UgKi8KKwlZWV9CUkVBSworY2FzZSA1OgorWVlfUlVMRV9TRVRVUAorI2xpbmUgNzAgInRyaWdkZWZlcnJlZC5sIgoreworCWlmICh0cmlnZGVmX3l5dGV4dFswXSA9PSAnLScgJiYgdHJpZ2RlZl95eXRleHRbMV0pCisJCW9oc2hpdChfKCJpbnZhbGlkIHBhY2thZ2UgbmFtZSBgJS4yNTBzJyBpbiB0cmlnZ2VycyBkZWZlcnJlZCAiCisJCSAgICAgICAgICJmaWxlIGAlLjI1MHMnIiksIHRyaWdkZWZfeXl0ZXh0LCBmbi5idWYpOworCXRyaWdkZWYtPnBhY2thZ2UodHJpZ2RlZl95eXRleHQpOworCX0KKwlZWV9CUkVBSworY2FzZSA2OgorLyogcnVsZSA2IGNhbiBtYXRjaCBlb2wgKi8KK1lZX1JVTEVfU0VUVVAKKyNsaW5lIDc2ICJ0cmlnZGVmZXJyZWQubCIKK3sKKwl0cmlnZGVmLT50cmlnX2VuZCgpOworCUJFR0lOKDApOworCX0KKwlZWV9CUkVBSworY2FzZSBZWV9TVEFURV9FT0YobWlkbGluZSk6CisjbGluZSA4MCAidHJpZ2RlZmVycmVkLmwiCit7CisJb2hzaGl0KF8oInRydW5jYXRlZCB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIiksIGZuLmJ1Zik7CisJfQorCVlZX0JSRUFLCitjYXNlIDc6CitZWV9SVUxFX1NFVFVQCisjbGluZSA4NCAidHJpZ2RlZmVycmVkLmwiCit7CisJb2hzaGl0KF8oInN5bnRheCBlcnJvciBpbiB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIGF0ICIKKwkgICAgICAgICAiY2hhcmFjdGVyIGAlcyclcyIpLAorCSAgICAgICBmbi5idWYsIHRyaWdkZWZfeXl0ZXh0LCBZWV9TVEFSVCA9PSBtaWRsaW5lID8gIiBtaWRsaW5lIjogIiIpOworCX0KKwlZWV9CUkVBSworY2FzZSA4OgorWVlfUlVMRV9TRVRVUAorI2xpbmUgOTAgInRyaWdkZWZlcnJlZC5sIgorWVlfRkFUQUxfRVJST1IoICJmbGV4IHNjYW5uZXIgamFtbWVkIiApOworCVlZX0JSRUFLCisjbGluZSA4NzMgInRyaWdkZWZlcnJlZC5jIgorY2FzZSBZWV9TVEFURV9FT0YoSU5JVElBTCk6CisJeXl0ZXJtaW5hdGUoKTsKKworCWNhc2UgWVlfRU5EX09GX0JVRkZFUjoKKwkJeworCQkvKiBBbW91bnQgb2YgdGV4dCBtYXRjaGVkIG5vdCBpbmNsdWRpbmcgdGhlIEVPQiBjaGFyLiAqLworCQlpbnQgeXlfYW1vdW50X29mX21hdGNoZWRfdGV4dCA9IChpbnQpICh5eV9jcCAtICh5eXRleHRfcHRyKSkgLSAxOworCisJCS8qIFVuZG8gdGhlIGVmZmVjdHMgb2YgWVlfRE9fQkVGT1JFX0FDVElPTi4gKi8KKwkJKnl5X2NwID0gKHl5X2hvbGRfY2hhcik7CisJCVlZX1JFU1RPUkVfWVlfTU9SRV9PRkZTRVQKKworCQlpZiAoIFlZX0NVUlJFTlRfQlVGRkVSX0xWQUxVRS0+eXlfYnVmZmVyX3N0YXR1cyA9PSBZWV9CVUZGRVJfTkVXICkKKwkJCXsKKwkJCS8qIFdlJ3JlIHNjYW5uaW5nIGEgbmV3IGZpbGUgb3IgaW5wdXQgc291cmNlLiAgSXQncworCQkJICogcG9zc2libGUgdGhhdCB0aGlzIGhhcHBlbmVkIGJlY2F1c2UgdGhlIHVzZXIKKwkJCSAqIGp1c3QgcG9pbnRlZCB0cmlnZGVmX3l5aW4gYXQgYSBuZXcgc291cmNlIGFuZCBjYWxsZWQKKwkJCSAqIHRyaWdkZWZfeXlsZXgoKS4gIElmIHNvLCB0aGVuIHdlIGhhdmUgdG8gYXNzdXJlCisJCQkgKiBjb25zaXN0ZW5jeSBiZXR3ZWVuIFlZX0NVUlJFTlRfQlVGRkVSIGFuZCBvdXIKKwkJCSAqIGdsb2JhbHMuICBIZXJlIGlzIHRoZSByaWdodCBwbGFjZSB0byBkbyBzbywgYmVjYXVzZQorCQkJICogdGhpcyBpcyB0aGUgZmlyc3QgYWN0aW9uIChvdGhlciB0aGFuIHBvc3NpYmx5IGEKKwkJCSAqIGJhY2stdXApIHRoYXQgd2lsbCBtYXRjaCBmb3IgdGhlIG5ldyBpbnB1dCBzb3VyY2UuCisJCQkgKi8KKwkJCSh5eV9uX2NoYXJzKSA9IFlZX0NVUlJFTlRfQlVGRkVSX0xWQUxVRS0+eXlfbl9jaGFyczsKKwkJCVlZX0NVUlJFTlRfQlVGRkVSX0xWQUxVRS0+eXlfaW5wdXRfZmlsZSA9IHRyaWdkZWZfeXlpbjsKKwkJCVlZX0NVUlJFTlRfQlVGRkVSX0xWQUxVRS0+eXlfYnVmZmVyX3N0YXR1cyA9IFlZX0JVRkZFUl9OT1JNQUw7CisJCQl9CisKKwkJLyogTm90ZSB0aGF0IGhlcmUgd2UgdGVzdCBmb3IgeXlfY19idWZfcCAiPD0iIHRvIHRoZSBwb3NpdGlvbgorCQkgKiBvZiB0aGUgZmlyc3QgRU9CIGluIHRoZSBidWZmZXIsIHNpbmNlIHl5X2NfYnVmX3Agd2lsbAorCQkgKiBhbHJlYWR5IGhhdmUgYmVlbiBpbmNyZW1lbnRlZCBwYXN0IHRoZSBOVUwgY2hhcmFjdGVyCisJCSAqIChzaW5jZSBhbGwgc3RhdGVzIG1ha2UgdHJhbnNpdGlvbnMgb24gRU9CIHRvIHRoZQorCQkgKiBlbmQtb2YtYnVmZmVyIHN0YXRlKS4gIENvbnRyYXN0IHRoaXMgd2l0aCB0aGUgdGVzdAorCQkgKiBpbiBpbnB1dCgpLgorCQkgKi8KKwkJaWYgKCAoeXlfY19idWZfcCkgPD0gJllZX0NVUlJFTlRfQlVGRkVSX0xWQUxVRS0+eXlfY2hfYnVmWyh5eV9uX2NoYXJzKV0gKQorCQkJeyAvKiBUaGlzIHdhcyByZWFsbHkgYSBOVUwuICovCisJCQl5eV9zdGF0ZV90eXBlIHl5X25leHRfc3RhdGU7CisKKwkJCSh5eV9jX2J1Zl9wKSA9ICh5eXRleHRfcHRyKSArIHl5X2Ftb3VudF9vZl9tYXRjaGVkX3RleHQ7CisKKwkJCXl5X2N1cnJlbnRfc3RhdGUgPSB5eV9nZXRfcHJldmlvdXNfc3RhdGUoICApOworCisJCQkvKiBPa2F5LCB3ZSdyZSBub3cgcG9zaXRpb25lZCB0byBtYWtlIHRoZSBOVUwKKwkJCSAqIHRyYW5zaXRpb24uICBXZSBjb3VsZG4ndCBoYXZlCisJCQkgKiB5eV9nZXRfcHJldmlvdXNfc3RhdGUoKSBnbyBhaGVhZCBhbmQgZG8gaXQKKwkJCSAqIGZvciB1cyBiZWNhdXNlIGl0IGRvZXNuJ3Qga25vdyBob3cgdG8gZGVhbAorCQkJICogd2l0aCB0aGUgcG9zc2liaWxpdHkgb2YgamFtbWluZyAoYW5kIHdlIGRvbid0CisJCQkgKiB3YW50IHRvIGJ1aWxkIGphbW1pbmcgaW50byBpdCBiZWNhdXNlIHRoZW4gaXQKKwkJCSAqIHdpbGwgcnVuIG1vcmUgc2xvd2x5KS4KKwkJCSAqLworCisJCQl5eV9uZXh0X3N0YXRlID0geXlfdHJ5X05VTF90cmFucyggeXlfY3VycmVudF9zdGF0ZSApOworCisJCQl5eV9icCA9ICh5eXRleHRfcHRyKSArIFlZX01PUkVfQURKOworCisJCQlpZiAoIHl5X25leHRfc3RhdGUgKQorCQkJCXsKKwkJCQkvKiBDb25zdW1lIHRoZSBOVUwuICovCisJCQkJeXlfY3AgPSArKyh5eV9jX2J1Zl9wKTsKKwkJCQl5eV9jdXJyZW50X3N0YXRlID0geXlfbmV4dF9zdGF0ZTsKKwkJCQlnb3RvIHl5X21hdGNoOworCQkJCX0KKworCQkJZWxzZQorCQkJCXsKKwkJCQl5eV9jcCA9ICh5eV9sYXN0X2FjY2VwdGluZ19jcG9zKTsKKwkJCQl5eV9jdXJyZW50X3N0YXRlID0gKHl5X2xhc3RfYWNjZXB0aW5nX3N0YXRlKTsKKwkJCQlnb3RvIHl5X2ZpbmRfYWN0aW9uOworCQkJCX0KKwkJCX0KKworCQllbHNlIHN3aXRjaCAoIHl5X2dldF9uZXh0X2J1ZmZlciggICkgKQorCQkJeworCQkJY2FzZSBFT0JfQUNUX0VORF9PRl9GSUxFOgorCQkJCXsKKwkJCQkoeXlfZGlkX2J1ZmZlcl9zd2l0Y2hfb25fZW9mKSA9IDA7CisKKwkJCQlpZiAoIHRyaWdkZWZfeXl3cmFwKCApICkKKwkJCQkJeworCQkJCQkvKiBOb3RlOiBiZWNhdXNlIHdlJ3ZlIHRha2VuIGNhcmUgaW4KKwkJCQkJICogeXlfZ2V0X25leHRfYnVmZmVyKCkgdG8gaGF2ZSBzZXQgdXAKKwkJCQkJICogdHJpZ2RlZl95eXRleHQsIHdlIGNhbiBub3cgc2V0IHVwCisJCQkJCSAqIHl5X2NfYnVmX3Agc28gdGhhdCBpZiBzb21lIHRvdGFsCisJCQkJCSAqIGhvc2VyIChsaWtlIGZsZXggaXRzZWxmKSB3YW50cyB0bworCQkJCQkgKiBjYWxsIHRoZSBzY2FubmVyIGFmdGVyIHdlIHJldHVybiB0aGUKKwkJCQkJICogWVlfTlVMTCwgaXQnbGwgc3RpbGwgd29yayAtIGFub3RoZXIKKwkJCQkJICogWVlfTlVMTCB3aWxsIGdldCByZXR1cm5lZC4KKwkJCQkJICovCisJCQkJCSh5eV9jX2J1Zl9wKSA9ICh5eXRleHRfcHRyKSArIFlZX01PUkVfQURKOworCisJCQkJCXl5X2FjdCA9IFlZX1NUQVRFX0VPRihZWV9TVEFSVCk7CisJCQkJCWdvdG8gZG9fYWN0aW9uOworCQkJCQl9CisKKwkJCQllbHNlCisJCQkJCXsKKwkJCQkJaWYgKCAhICh5eV9kaWRfYnVmZmVyX3N3aXRjaF9vbl9lb2YpICkKKwkJCQkJCVlZX05FV19GSUxFOworCQkJCQl9CisJCQkJYnJlYWs7CisJCQkJfQorCisJCQljYXNlIEVPQl9BQ1RfQ09OVElOVUVfU0NBTjoKKwkJCQkoeXlfY19idWZfcCkgPQorCQkJCQkoeXl0ZXh0X3B0cikgKyB5eV9hbW91bnRfb2ZfbWF0Y2hlZF90ZXh0OworCisJCQkJeXlfY3VycmVudF9zdGF0ZSA9IHl5X2dldF9wcmV2aW91c19zdGF0ZSggICk7CisKKwkJCQl5eV9jcCA9ICh5eV9jX2J1Zl9wKTsKKwkJCQl5eV9icCA9ICh5eXRleHRfcHRyKSArIFlZX01PUkVfQURKOworCQkJCWdvdG8geXlfbWF0Y2g7CisKKwkJCWNhc2UgRU9CX0FDVF9MQVNUX01BVENIOgorCQkJCSh5eV9jX2J1Zl9wKSA9CisJCQkJJllZX0NVUlJFTlRfQlVGRkVSX0xWQUxVRS0+eXlfY2hfYnVmWyh5eV9uX2NoYXJzKV07CisKKwkJCQl5eV9jdXJyZW50X3N0YXRlID0geXlfZ2V0X3ByZXZpb3VzX3N0YXRlKCAgKTsKKworCQkJCXl5X2NwID0gKHl5X2NfYnVmX3ApOworCQkJCXl5X2JwID0gKHl5dGV4dF9wdHIpICsgWVlfTU9SRV9BREo7CisJCQkJZ290byB5eV9maW5kX2FjdGlvbjsKKwkJCX0KKwkJYnJlYWs7CisJCX0KKworCWRlZmF1bHQ6CisJCVlZX0ZBVEFMX0VSUk9SKAorCQkJImZhdGFsIGZsZXggc2Nhbm5lciBpbnRlcm5hbCBlcnJvci0tbm8gYWN0aW9uIGZvdW5kIiApOworCX0gLyogZW5kIG9mIGFjdGlvbiBzd2l0Y2ggKi8KKwkJfSAvKiBlbmQgb2Ygc2Nhbm5pbmcgb25lIHRva2VuICovCit9IC8qIGVuZCBvZiB0cmlnZGVmX3l5bGV4ICovCisKKy8qIHl5X2dldF9uZXh0X2J1ZmZlciAtIHRyeSB0byByZWFkIGluIGEgbmV3IGJ1ZmZlcgorICoKKyAqIFJldHVybnMgYSBjb2RlIHJlcHJlc2VudGluZyBhbiBhY3Rpb246CisgKglFT0JfQUNUX0xBU1RfTUFUQ0ggLQorICoJRU9CX0FDVF9DT05USU5VRV9TQ0FOIC0gY29udGludWUgc2Nhbm5pbmcgZnJvbSBjdXJyZW50IHBvc2l0aW9uCisgKglFT0JfQUNUX0VORF9PRl9GSUxFIC0gZW5kIG9mIGZpbGUKKyAqLworc3RhdGljIGludCB5eV9nZXRfbmV4dF9idWZmZXIgKHZvaWQpCit7CisgICAgCXJlZ2lzdGVyIGNoYXIgKmRlc3QgPSBZWV9DVVJSRU5UX0JVRkZFUl9MVkFMVUUtPnl5X2NoX2J1ZjsKKwlyZWdpc3RlciBjaGFyICpzb3VyY2UgPSAoeXl0ZXh0X3B0cik7CisJcmVnaXN0ZXIgaW50IG51bWJlcl90b19tb3ZlLCBpOworCWludCByZXRfdmFsOworCisJaWYgKCAoeXlfY19idWZfcCkgPiAmWVlfQ1VSUkVOVF9CVUZGRVJfTFZBTFVFLT55eV9jaF9idWZbKHl5X25fY2hhcnMpICsgMV0gKQorCQlZWV9GQVRBTF9FUlJPUigKKwkJImZhdGFsIGZsZXggc2Nhbm5lciBpbnRlcm5hbCBlcnJvci0tZW5kIG9mIGJ1ZmZlciBtaXNzZWQiICk7CisKKwlpZiAoIFlZX0NVUlJFTlRfQlVGRkVSX0xWQUxVRS0+eXlfZmlsbF9idWZmZXIgPT0gMCApCisJCXsgLyogRG9uJ3QgdHJ5IHRvIGZpbGwgdGhlIGJ1ZmZlciwgc28gdGhpcyBpcyBhbiBFT0YuICovCisJCWlmICggKHl5X2NfYnVmX3ApIC0gKHl5dGV4dF9wdHIpIC0gWVlfTU9SRV9BREogPT0gMSApCisJCQl7CisJCQkvKiBXZSBtYXRjaGVkIGEgc2luZ2xlIGNoYXJhY3RlciwgdGhlIEVPQiwgc28KKwkJCSAqIHRyZWF0IHRoaXMgYXMgYSBmaW5hbCBFT0YuCisJCQkgKi8KKwkJCXJldHVybiBFT0JfQUNUX0VORF9PRl9GSUxFOworCQkJfQorCisJCWVsc2UKKwkJCXsKKwkJCS8qIFdlIG1hdGNoZWQgc29tZSB0ZXh0IHByaW9yIHRvIHRoZSBFT0IsIGZpcnN0CisJCQkgKiBwcm9jZXNzIGl0LgorCQkJICovCisJCQlyZXR1cm4gRU9CX0FDVF9MQVNUX01BVENIOworCQkJfQorCQl9CisKKwkvKiBUcnkgdG8gcmVhZCBtb3JlIGRhdGEuICovCisKKwkvKiBGaXJzdCBtb3ZlIGxhc3QgY2hhcnMgdG8gc3RhcnQgb2YgYnVmZmVyLiAqLworCW51bWJlcl90b19tb3ZlID0gKGludCkgKCh5eV9jX2J1Zl9wKSAtICh5eXRleHRfcHRyKSkgLSAxOworCisJZm9yICggaSA9IDA7IGkgPCBudW1iZXJfdG9fbW92ZTsgKytpICkKKwkJKihkZXN0KyspID0gKihzb3VyY2UrKyk7CisKKwlpZiAoIFlZX0NVUlJFTlRfQlVGRkVSX0xWQUxVRS0+eXlfYnVmZmVyX3N0YXR1cyA9PSBZWV9CVUZGRVJfRU9GX1BFTkRJTkcgKQorCQkvKiBkb24ndCBkbyB0aGUgcmVhZCwgaXQncyBub3QgZ3VhcmFudGVlZCB0byByZXR1cm4gYW4gRU9GLAorCQkgKiBqdXN0IGZvcmNlIGFuIEVPRgorCQkgKi8KKwkJWVlfQ1VSUkVOVF9CVUZGRVJfTFZBTFVFLT55eV9uX2NoYXJzID0gKHl5X25fY2hhcnMpID0gMDsKKworCWVsc2UKKwkJeworCQkJaW50IG51bV90b19yZWFkID0KKwkJCVlZX0NVUlJFTlRfQlVGRkVSX0xWQUxVRS0+eXlfYnVmX3NpemUgLSBudW1iZXJfdG9fbW92ZSAtIDE7CisKKwkJd2hpbGUgKCBudW1fdG9fcmVhZCA8PSAwICkKKwkJCXsgLyogTm90IGVub3VnaCByb29tIGluIHRoZSBidWZmZXIgLSBncm93IGl0LiAqLworCisJCQkvKiBqdXN0IGEgc2hvcnRlciBuYW1lIGZvciB0aGUgY3VycmVudCBidWZmZXIgKi8KKwkJCVlZX0JVRkZFUl9TVEFURSBiID0gWVlfQ1VSUkVOVF9CVUZGRVI7CisKKwkJCWludCB5eV9jX2J1Zl9wX29mZnNldCA9CisJCQkJKGludCkgKCh5eV9jX2J1Zl9wKSAtIGItPnl5X2NoX2J1Zik7CisKKwkJCWlmICggYi0+eXlfaXNfb3VyX2J1ZmZlciApCisJCQkJeworCQkJCWludCBuZXdfc2l6ZSA9IGItPnl5X2J1Zl9zaXplICogMjsKKworCQkJCWlmICggbmV3X3NpemUgPD0gMCApCisJCQkJCWItPnl5X2J1Zl9zaXplICs9IGItPnl5X2J1Zl9zaXplIC8gODsKKwkJCQllbHNlCisJCQkJCWItPnl5X2J1Zl9zaXplICo9IDI7CisKKwkJCQliLT55eV9jaF9idWYgPSAoY2hhciAqKQorCQkJCQkvKiBJbmNsdWRlIHJvb20gaW4gZm9yIDIgRU9CIGNoYXJzLiAqLworCQkJCQl0cmlnZGVmX3l5cmVhbGxvYygodm9pZCAqKSBiLT55eV9jaF9idWYsYi0+eXlfYnVmX3NpemUgKyAyICApOworCQkJCX0KKwkJCWVsc2UKKwkJCQkvKiBDYW4ndCBncm93IGl0LCB3ZSBkb24ndCBvd24gaXQuICovCisJCQkJYi0+eXlfY2hfYnVmID0gMDsKKworCQkJaWYgKCAhIGItPnl5X2NoX2J1ZiApCisJCQkJWVlfRkFUQUxfRVJST1IoCisJCQkJImZhdGFsIGVycm9yIC0gc2Nhbm5lciBpbnB1dCBidWZmZXIgb3ZlcmZsb3ciICk7CisKKwkJCSh5eV9jX2J1Zl9wKSA9ICZiLT55eV9jaF9idWZbeXlfY19idWZfcF9vZmZzZXRdOworCisJCQludW1fdG9fcmVhZCA9IFlZX0NVUlJFTlRfQlVGRkVSX0xWQUxVRS0+eXlfYnVmX3NpemUgLQorCQkJCQkJbnVtYmVyX3RvX21vdmUgLSAxOworCisJCQl9CisKKwkJaWYgKCBudW1fdG9fcmVhZCA+IFlZX1JFQURfQlVGX1NJWkUgKQorCQkJbnVtX3RvX3JlYWQgPSBZWV9SRUFEX0JVRl9TSVpFOworCisJCS8qIFJlYWQgaW4gbW9yZSBkYXRhLiAqLworCQlZWV9JTlBVVCggKCZZWV9DVVJSRU5UX0JVRkZFUl9MVkFMVUUtPnl5X2NoX2J1ZltudW1iZXJfdG9fbW92ZV0pLAorCQkJKHl5X25fY2hhcnMpLCAoc2l6ZV90KSBudW1fdG9fcmVhZCApOworCisJCVlZX0NVUlJFTlRfQlVGRkVSX0xWQUxVRS0+eXlfbl9jaGFycyA9ICh5eV9uX2NoYXJzKTsKKwkJfQorCisJaWYgKCAoeXlfbl9jaGFycykgPT0gMCApCisJCXsKKwkJaWYgKCBudW1iZXJfdG9fbW92ZSA9PSBZWV9NT1JFX0FESiApCisJCQl7CisJCQlyZXRfdmFsID0gRU9CX0FDVF9FTkRfT0ZfRklMRTsKKwkJCXRyaWdkZWZfeXlyZXN0YXJ0KHRyaWdkZWZfeXlpbiAgKTsKKwkJCX0KKworCQllbHNlCisJCQl7CisJCQlyZXRfdmFsID0gRU9CX0FDVF9MQVNUX01BVENIOworCQkJWVlfQ1VSUkVOVF9CVUZGRVJfTFZBTFVFLT55eV9idWZmZXJfc3RhdHVzID0KKwkJCQlZWV9CVUZGRVJfRU9GX1BFTkRJTkc7CisJCQl9CisJCX0KKworCWVsc2UKKwkJcmV0X3ZhbCA9IEVPQl9BQ1RfQ09OVElOVUVfU0NBTjsKKworCWlmICgoeXlfc2l6ZV90KSAoKHl5X25fY2hhcnMpICsgbnVtYmVyX3RvX21vdmUpID4gWVlfQ1VSUkVOVF9CVUZGRVJfTFZBTFVFLT55eV9idWZfc2l6ZSkgeworCQkvKiBFeHRlbmQgdGhlIGFycmF5IGJ5IDUwJSwgcGx1cyB0aGUgbnVtYmVyIHdlIHJlYWxseSBuZWVkLiAqLworCQl5eV9zaXplX3QgbmV3X3NpemUgPSAoeXlfbl9jaGFycykgKyBudW1iZXJfdG9fbW92ZSArICgoeXlfbl9jaGFycykgPj4gMSk7CisJCVlZX0NVUlJFTlRfQlVGRkVSX0xWQUxVRS0+eXlfY2hfYnVmID0gKGNoYXIgKikgdHJpZ2RlZl95eXJlYWxsb2MoKHZvaWQgKikgWVlfQ1VSUkVOVF9CVUZGRVJfTFZBTFVFLT55eV9jaF9idWYsbmV3X3NpemUgICk7CisJCWlmICggISBZWV9DVVJSRU5UX0JVRkZFUl9MVkFMVUUtPnl5X2NoX2J1ZiApCisJCQlZWV9GQVRBTF9FUlJPUiggIm91dCBvZiBkeW5hbWljIG1lbW9yeSBpbiB5eV9nZXRfbmV4dF9idWZmZXIoKSIgKTsKKwl9CisKKwkoeXlfbl9jaGFycykgKz0gbnVtYmVyX3RvX21vdmU7CisJWVlfQ1VSUkVOVF9CVUZGRVJfTFZBTFVFLT55eV9jaF9idWZbKHl5X25fY2hhcnMpXSA9IFlZX0VORF9PRl9CVUZGRVJfQ0hBUjsKKwlZWV9DVVJSRU5UX0JVRkZFUl9MVkFMVUUtPnl5X2NoX2J1ZlsoeXlfbl9jaGFycykgKyAxXSA9IFlZX0VORF9PRl9CVUZGRVJfQ0hBUjsKKworCSh5eXRleHRfcHRyKSA9ICZZWV9DVVJSRU5UX0JVRkZFUl9MVkFMVUUtPnl5X2NoX2J1ZlswXTsKKworCXJldHVybiByZXRfdmFsOworfQorCisvKiB5eV9nZXRfcHJldmlvdXNfc3RhdGUgLSBnZXQgdGhlIHN0YXRlIGp1c3QgYmVmb3JlIHRoZSBFT0IgY2hhciB3YXMgcmVhY2hlZCAqLworCisgICAgc3RhdGljIHl5X3N0YXRlX3R5cGUgeXlfZ2V0X3ByZXZpb3VzX3N0YXRlICh2b2lkKQoreworCXJlZ2lzdGVyIHl5X3N0YXRlX3R5cGUgeXlfY3VycmVudF9zdGF0ZTsKKwlyZWdpc3RlciBjaGFyICp5eV9jcDsKKyAgICAKKwl5eV9jdXJyZW50X3N0YXRlID0gKHl5X3N0YXJ0KTsKKworCWZvciAoIHl5X2NwID0gKHl5dGV4dF9wdHIpICsgWVlfTU9SRV9BREo7IHl5X2NwIDwgKHl5X2NfYnVmX3ApOyArK3l5X2NwICkKKwkJeworCQlyZWdpc3RlciBZWV9DSEFSIHl5X2MgPSAoKnl5X2NwID8geXlfZWNbWVlfU0NfVE9fVUkoKnl5X2NwKV0gOiAxKTsKKwkJaWYgKCB5eV9hY2NlcHRbeXlfY3VycmVudF9zdGF0ZV0gKQorCQkJeworCQkJKHl5X2xhc3RfYWNjZXB0aW5nX3N0YXRlKSA9IHl5X2N1cnJlbnRfc3RhdGU7CisJCQkoeXlfbGFzdF9hY2NlcHRpbmdfY3BvcykgPSB5eV9jcDsKKwkJCX0KKwkJd2hpbGUgKCB5eV9jaGtbeXlfYmFzZVt5eV9jdXJyZW50X3N0YXRlXSArIHl5X2NdICE9IHl5X2N1cnJlbnRfc3RhdGUgKQorCQkJeworCQkJeXlfY3VycmVudF9zdGF0ZSA9IChpbnQpIHl5X2RlZlt5eV9jdXJyZW50X3N0YXRlXTsKKwkJCWlmICggeXlfY3VycmVudF9zdGF0ZSA+PSAyMyApCisJCQkJeXlfYyA9IHl5X21ldGFbKHVuc2lnbmVkIGludCkgeXlfY107CisJCQl9CisJCXl5X2N1cnJlbnRfc3RhdGUgPSB5eV9ueHRbeXlfYmFzZVt5eV9jdXJyZW50X3N0YXRlXSArICh1bnNpZ25lZCBpbnQpIHl5X2NdOworCQl9CisKKwlyZXR1cm4geXlfY3VycmVudF9zdGF0ZTsKK30KKworLyogeXlfdHJ5X05VTF90cmFucyAtIHRyeSB0byBtYWtlIGEgdHJhbnNpdGlvbiBvbiB0aGUgTlVMIGNoYXJhY3RlcgorICoKKyAqIHN5bm9wc2lzCisgKgluZXh0X3N0YXRlID0geXlfdHJ5X05VTF90cmFucyggY3VycmVudF9zdGF0ZSApOworICovCisgICAgc3RhdGljIHl5X3N0YXRlX3R5cGUgeXlfdHJ5X05VTF90cmFucyAgKHl5X3N0YXRlX3R5cGUgeXlfY3VycmVudF9zdGF0ZSApCit7CisJcmVnaXN0ZXIgaW50IHl5X2lzX2phbTsKKyAgICAJcmVnaXN0ZXIgY2hhciAqeXlfY3AgPSAoeXlfY19idWZfcCk7CisKKwlyZWdpc3RlciBZWV9DSEFSIHl5X2MgPSAxOworCWlmICggeXlfYWNjZXB0W3l5X2N1cnJlbnRfc3RhdGVdICkKKwkJeworCQkoeXlfbGFzdF9hY2NlcHRpbmdfc3RhdGUpID0geXlfY3VycmVudF9zdGF0ZTsKKwkJKHl5X2xhc3RfYWNjZXB0aW5nX2Nwb3MpID0geXlfY3A7CisJCX0KKwl3aGlsZSAoIHl5X2Noa1t5eV9iYXNlW3l5X2N1cnJlbnRfc3RhdGVdICsgeXlfY10gIT0geXlfY3VycmVudF9zdGF0ZSApCisJCXsKKwkJeXlfY3VycmVudF9zdGF0ZSA9IChpbnQpIHl5X2RlZlt5eV9jdXJyZW50X3N0YXRlXTsKKwkJaWYgKCB5eV9jdXJyZW50X3N0YXRlID49IDIzICkKKwkJCXl5X2MgPSB5eV9tZXRhWyh1bnNpZ25lZCBpbnQpIHl5X2NdOworCQl9CisJeXlfY3VycmVudF9zdGF0ZSA9IHl5X254dFt5eV9iYXNlW3l5X2N1cnJlbnRfc3RhdGVdICsgKHVuc2lnbmVkIGludCkgeXlfY107CisJeXlfaXNfamFtID0gKHl5X2N1cnJlbnRfc3RhdGUgPT0gMjIpOworCisJcmV0dXJuIHl5X2lzX2phbSA/IDAgOiB5eV9jdXJyZW50X3N0YXRlOworfQorCisjaWZuZGVmIFlZX05PX0lOUFVUCisjaWZkZWYgX19jcGx1c3BsdXMKKyAgICBzdGF0aWMgaW50IHl5aW5wdXQgKHZvaWQpCisjZWxzZQorICAgIHN0YXRpYyBpbnQgaW5wdXQgICh2b2lkKQorI2VuZGlmCisKK3sKKwlpbnQgYzsKKyAgICAKKwkqKHl5X2NfYnVmX3ApID0gKHl5X2hvbGRfY2hhcik7CisKKwlpZiAoICooeXlfY19idWZfcCkgPT0gWVlfRU5EX09GX0JVRkZFUl9DSEFSICkKKwkJeworCQkvKiB5eV9jX2J1Zl9wIG5vdyBwb2ludHMgdG8gdGhlIGNoYXJhY3RlciB3ZSB3YW50IHRvIHJldHVybi4KKwkJICogSWYgdGhpcyBvY2N1cnMgKmJlZm9yZSogdGhlIEVPQiBjaGFyYWN0ZXJzLCB0aGVuIGl0J3MgYQorCQkgKiB2YWxpZCBOVUw7IGlmIG5vdCwgdGhlbiB3ZSd2ZSBoaXQgdGhlIGVuZCBvZiB0aGUgYnVmZmVyLgorCQkgKi8KKwkJaWYgKCAoeXlfY19idWZfcCkgPCAmWVlfQ1VSUkVOVF9CVUZGRVJfTFZBTFVFLT55eV9jaF9idWZbKHl5X25fY2hhcnMpXSApCisJCQkvKiBUaGlzIHdhcyByZWFsbHkgYSBOVUwuICovCisJCQkqKHl5X2NfYnVmX3ApID0gJ1wwJzsKKworCQllbHNlCisJCQl7IC8qIG5lZWQgbW9yZSBpbnB1dCAqLworCQkJaW50IG9mZnNldCA9ICh5eV9jX2J1Zl9wKSAtICh5eXRleHRfcHRyKTsKKwkJCSsrKHl5X2NfYnVmX3ApOworCisJCQlzd2l0Y2ggKCB5eV9nZXRfbmV4dF9idWZmZXIoICApICkKKwkJCQl7CisJCQkJY2FzZSBFT0JfQUNUX0xBU1RfTUFUQ0g6CisJCQkJCS8qIFRoaXMgaGFwcGVucyBiZWNhdXNlIHl5X2dfbl9iKCkKKwkJCQkJICogc2VlcyB0aGF0IHdlJ3ZlIGFjY3VtdWxhdGVkIGEKKwkJCQkJICogdG9rZW4gYW5kIGZsYWdzIHRoYXQgd2UgbmVlZCB0bworCQkJCQkgKiB0cnkgbWF0Y2hpbmcgdGhlIHRva2VuIGJlZm9yZQorCQkJCQkgKiBwcm9jZWVkaW5nLiAgQnV0IGZvciBpbnB1dCgpLAorCQkJCQkgKiB0aGVyZSdzIG5vIG1hdGNoaW5nIHRvIGNvbnNpZGVyLgorCQkJCQkgKiBTbyBjb252ZXJ0IHRoZSBFT0JfQUNUX0xBU1RfTUFUQ0gKKwkJCQkJICogdG8gRU9CX0FDVF9FTkRfT0ZfRklMRS4KKwkJCQkJICovCisKKwkJCQkJLyogUmVzZXQgYnVmZmVyIHN0YXR1cy4gKi8KKwkJCQkJdHJpZ2RlZl95eXJlc3RhcnQodHJpZ2RlZl95eWluICk7CisKKwkJCQkJLypGQUxMVEhST1VHSCovCisKKwkJCQljYXNlIEVPQl9BQ1RfRU5EX09GX0ZJTEU6CisJCQkJCXsKKwkJCQkJaWYgKCB0cmlnZGVmX3l5d3JhcCggKSApCisJCQkJCQlyZXR1cm4gRU9GOworCisJCQkJCWlmICggISAoeXlfZGlkX2J1ZmZlcl9zd2l0Y2hfb25fZW9mKSApCisJCQkJCQlZWV9ORVdfRklMRTsKKyNpZmRlZiBfX2NwbHVzcGx1cworCQkJCQlyZXR1cm4geXlpbnB1dCgpOworI2Vsc2UKKwkJCQkJcmV0dXJuIGlucHV0KCk7CisjZW5kaWYKKwkJCQkJfQorCisJCQkJY2FzZSBFT0JfQUNUX0NPTlRJTlVFX1NDQU46CisJCQkJCSh5eV9jX2J1Zl9wKSA9ICh5eXRleHRfcHRyKSArIG9mZnNldDsKKwkJCQkJYnJlYWs7CisJCQkJfQorCQkJfQorCQl9CisKKwljID0gKih1bnNpZ25lZCBjaGFyICopICh5eV9jX2J1Zl9wKTsJLyogY2FzdCBmb3IgOC1iaXQgY2hhcidzICovCisJKih5eV9jX2J1Zl9wKSA9ICdcMCc7CS8qIHByZXNlcnZlIHRyaWdkZWZfeXl0ZXh0ICovCisJKHl5X2hvbGRfY2hhcikgPSAqKysoeXlfY19idWZfcCk7CisKKwlyZXR1cm4gYzsKK30KKyNlbmRpZgkvKiBpZm5kZWYgWVlfTk9fSU5QVVQgKi8KKworLyoqIEltbWVkaWF0ZWx5IHN3aXRjaCB0byBhIGRpZmZlcmVudCBpbnB1dCBzdHJlYW0uCisgKiBAcGFyYW0gaW5wdXRfZmlsZSBBIHJlYWRhYmxlIHN0cmVhbS4KKyAqIAorICogQG5vdGUgVGhpcyBmdW5jdGlvbiBkb2VzIG5vdCByZXNldCB0aGUgc3RhcnQgY29uZGl0aW9uIHRvIEBjIElOSVRJQUwgLgorICovCisgICAgdm9pZCB0cmlnZGVmX3l5cmVzdGFydCAgKEZJTEUgKiBpbnB1dF9maWxlICkKK3sKKyAgICAKKwlpZiAoICEgWVlfQ1VSUkVOVF9CVUZGRVIgKXsKKyAgICAgICAgdHJpZ2RlZl95eWVuc3VyZV9idWZmZXJfc3RhY2sgKCk7CisJCVlZX0NVUlJFTlRfQlVGRkVSX0xWQUxVRSA9CisgICAgICAgICAgICB0cmlnZGVmX3l5X2NyZWF0ZV9idWZmZXIodHJpZ2RlZl95eWluLFlZX0JVRl9TSVpFICk7CisJfQorCisJdHJpZ2RlZl95eV9pbml0X2J1ZmZlcihZWV9DVVJSRU5UX0JVRkZFUixpbnB1dF9maWxlICk7CisJdHJpZ2RlZl95eV9sb2FkX2J1ZmZlcl9zdGF0ZSggKTsKK30KKworLyoqIFN3aXRjaCB0byBhIGRpZmZlcmVudCBpbnB1dCBidWZmZXIuCisgKiBAcGFyYW0gbmV3X2J1ZmZlciBUaGUgbmV3IGlucHV0IGJ1ZmZlci4KKyAqIAorICovCisgICAgdm9pZCB0cmlnZGVmX3l5X3N3aXRjaF90b19idWZmZXIgIChZWV9CVUZGRVJfU1RBVEUgIG5ld19idWZmZXIgKQoreworICAgIAorCS8qIFRPRE8uIFdlIHNob3VsZCBiZSBhYmxlIHRvIHJlcGxhY2UgdGhpcyBlbnRpcmUgZnVuY3Rpb24gYm9keQorCSAqIHdpdGgKKwkgKgkJdHJpZ2RlZl95eXBvcF9idWZmZXJfc3RhdGUoKTsKKwkgKgkJdHJpZ2RlZl95eXB1c2hfYnVmZmVyX3N0YXRlKG5ld19idWZmZXIpOworICAgICAqLworCXRyaWdkZWZfeXllbnN1cmVfYnVmZmVyX3N0YWNrICgpOworCWlmICggWVlfQ1VSUkVOVF9CVUZGRVIgPT0gbmV3X2J1ZmZlciApCisJCXJldHVybjsKKworCWlmICggWVlfQ1VSUkVOVF9CVUZGRVIgKQorCQl7CisJCS8qIEZsdXNoIG91dCBpbmZvcm1hdGlvbiBmb3Igb2xkIGJ1ZmZlci4gKi8KKwkJKih5eV9jX2J1Zl9wKSA9ICh5eV9ob2xkX2NoYXIpOworCQlZWV9DVVJSRU5UX0JVRkZFUl9MVkFMVUUtPnl5X2J1Zl9wb3MgPSAoeXlfY19idWZfcCk7CisJCVlZX0NVUlJFTlRfQlVGRkVSX0xWQUxVRS0+eXlfbl9jaGFycyA9ICh5eV9uX2NoYXJzKTsKKwkJfQorCisJWVlfQ1VSUkVOVF9CVUZGRVJfTFZBTFVFID0gbmV3X2J1ZmZlcjsKKwl0cmlnZGVmX3l5X2xvYWRfYnVmZmVyX3N0YXRlKCApOworCisJLyogV2UgZG9uJ3QgYWN0dWFsbHkga25vdyB3aGV0aGVyIHdlIGRpZCB0aGlzIHN3aXRjaCBkdXJpbmcKKwkgKiBFT0YgKHRyaWdkZWZfeXl3cmFwKCkpIHByb2Nlc3NpbmcsIGJ1dCB0aGUgb25seSB0aW1lIHRoaXMgZmxhZworCSAqIGlzIGxvb2tlZCBhdCBpcyBhZnRlciB0cmlnZGVmX3l5d3JhcCgpIGlzIGNhbGxlZCwgc28gaXQncyBzYWZlCisJICogdG8gZ28gYWhlYWQgYW5kIGFsd2F5cyBzZXQgaXQuCisJICovCisJKHl5X2RpZF9idWZmZXJfc3dpdGNoX29uX2VvZikgPSAxOworfQorCitzdGF0aWMgdm9pZCB0cmlnZGVmX3l5X2xvYWRfYnVmZmVyX3N0YXRlICAodm9pZCkKK3sKKyAgICAJKHl5X25fY2hhcnMpID0gWVlfQ1VSUkVOVF9CVUZGRVJfTFZBTFVFLT55eV9uX2NoYXJzOworCSh5eXRleHRfcHRyKSA9ICh5eV9jX2J1Zl9wKSA9IFlZX0NVUlJFTlRfQlVGRkVSX0xWQUxVRS0+eXlfYnVmX3BvczsKKwl0cmlnZGVmX3l5aW4gPSBZWV9DVVJSRU5UX0JVRkZFUl9MVkFMVUUtPnl5X2lucHV0X2ZpbGU7CisJKHl5X2hvbGRfY2hhcikgPSAqKHl5X2NfYnVmX3ApOworfQorCisvKiogQWxsb2NhdGUgYW5kIGluaXRpYWxpemUgYW4gaW5wdXQgYnVmZmVyIHN0YXRlLgorICogQHBhcmFtIGZpbGUgQSByZWFkYWJsZSBzdHJlYW0uCisgKiBAcGFyYW0gc2l6ZSBUaGUgY2hhcmFjdGVyIGJ1ZmZlciBzaXplIGluIGJ5dGVzLiBXaGVuIGluIGRvdWJ0LCB1c2UgQGMgWVlfQlVGX1NJWkUuCisgKiAKKyAqIEByZXR1cm4gdGhlIGFsbG9jYXRlZCBidWZmZXIgc3RhdGUuCisgKi8KKyAgICBZWV9CVUZGRVJfU1RBVEUgdHJpZ2RlZl95eV9jcmVhdGVfYnVmZmVyICAoRklMRSAqIGZpbGUsIGludCAgc2l6ZSApCit7CisJWVlfQlVGRkVSX1NUQVRFIGI7CisgICAgCisJYiA9IChZWV9CVUZGRVJfU1RBVEUpIHRyaWdkZWZfeXlhbGxvYyhzaXplb2YoIHN0cnVjdCB5eV9idWZmZXJfc3RhdGUgKSAgKTsKKwlpZiAoICEgYiApCisJCVlZX0ZBVEFMX0VSUk9SKCAib3V0IG9mIGR5bmFtaWMgbWVtb3J5IGluIHRyaWdkZWZfeXlfY3JlYXRlX2J1ZmZlcigpIiApOworCisJYi0+eXlfYnVmX3NpemUgPSBzaXplOworCisJLyogeXlfY2hfYnVmIGhhcyB0byBiZSAyIGNoYXJhY3RlcnMgbG9uZ2VyIHRoYW4gdGhlIHNpemUgZ2l2ZW4gYmVjYXVzZQorCSAqIHdlIG5lZWQgdG8gcHV0IGluIDIgZW5kLW9mLWJ1ZmZlciBjaGFyYWN0ZXJzLgorCSAqLworCWItPnl5X2NoX2J1ZiA9IChjaGFyICopIHRyaWdkZWZfeXlhbGxvYyhiLT55eV9idWZfc2l6ZSArIDIgICk7CisJaWYgKCAhIGItPnl5X2NoX2J1ZiApCisJCVlZX0ZBVEFMX0VSUk9SKCAib3V0IG9mIGR5bmFtaWMgbWVtb3J5IGluIHRyaWdkZWZfeXlfY3JlYXRlX2J1ZmZlcigpIiApOworCisJYi0+eXlfaXNfb3VyX2J1ZmZlciA9IDE7CisKKwl0cmlnZGVmX3l5X2luaXRfYnVmZmVyKGIsZmlsZSApOworCisJcmV0dXJuIGI7Cit9CisKKy8qKiBEZXN0cm95IHRoZSBidWZmZXIuCisgKiBAcGFyYW0gYiBhIGJ1ZmZlciBjcmVhdGVkIHdpdGggdHJpZ2RlZl95eV9jcmVhdGVfYnVmZmVyKCkKKyAqIAorICovCisgICAgdm9pZCB0cmlnZGVmX3l5X2RlbGV0ZV9idWZmZXIgKFlZX0JVRkZFUl9TVEFURSAgYiApCit7CisgICAgCisJaWYgKCAhIGIgKQorCQlyZXR1cm47CisKKwlpZiAoIGIgPT0gWVlfQ1VSUkVOVF9CVUZGRVIgKSAvKiBOb3Qgc3VyZSBpZiB3ZSBzaG91bGQgcG9wIGhlcmUuICovCisJCVlZX0NVUlJFTlRfQlVGRkVSX0xWQUxVRSA9IChZWV9CVUZGRVJfU1RBVEUpIDA7CisKKwlpZiAoIGItPnl5X2lzX291cl9idWZmZXIgKQorCQl0cmlnZGVmX3l5ZnJlZSgodm9pZCAqKSBiLT55eV9jaF9idWYgICk7CisKKwl0cmlnZGVmX3l5ZnJlZSgodm9pZCAqKSBiICApOworfQorCisjaWZuZGVmIF9fY3BsdXNwbHVzCitleHRlcm4gaW50IGlzYXR0eSAoaW50ICk7CisjZW5kaWYgLyogX19jcGx1c3BsdXMgKi8KKyAgICAKKy8qIEluaXRpYWxpemVzIG9yIHJlaW5pdGlhbGl6ZXMgYSBidWZmZXIuCisgKiBUaGlzIGZ1bmN0aW9uIGlzIHNvbWV0aW1lcyBjYWxsZWQgbW9yZSB0aGFuIG9uY2Ugb24gdGhlIHNhbWUgYnVmZmVyLAorICogc3VjaCBhcyBkdXJpbmcgYSB0cmlnZGVmX3l5cmVzdGFydCgpIG9yIGF0IEVPRi4KKyAqLworICAgIHN0YXRpYyB2b2lkIHRyaWdkZWZfeXlfaW5pdF9idWZmZXIgIChZWV9CVUZGRVJfU1RBVEUgIGIsIEZJTEUgKiBmaWxlICkKKworeworCWludCBvZXJybm8gPSBlcnJubzsKKyAgICAKKwl0cmlnZGVmX3l5X2ZsdXNoX2J1ZmZlcihiICk7CisKKwliLT55eV9pbnB1dF9maWxlID0gZmlsZTsKKwliLT55eV9maWxsX2J1ZmZlciA9IDE7CisKKyAgICAvKiBJZiBiIGlzIHRoZSBjdXJyZW50IGJ1ZmZlciwgdGhlbiB0cmlnZGVmX3l5X2luaXRfYnVmZmVyIHdhcyBfcHJvYmFibHlfCisgICAgICogY2FsbGVkIGZyb20gdHJpZ2RlZl95eXJlc3RhcnQoKSBvciB0aHJvdWdoIHl5X2dldF9uZXh0X2J1ZmZlci4KKyAgICAgKiBJbiB0aGF0IGNhc2UsIHdlIGRvbid0IHdhbnQgdG8gcmVzZXQgdGhlIGxpbmVubyBvciBjb2x1bW4uCisgICAgICovCisgICAgaWYgKGIgIT0gWVlfQ1VSUkVOVF9CVUZGRVIpeworICAgICAgICBiLT55eV9ic19saW5lbm8gPSAxOworICAgICAgICBiLT55eV9ic19jb2x1bW4gPSAwOworICAgIH0KKworICAgICAgICBiLT55eV9pc19pbnRlcmFjdGl2ZSA9IGZpbGUgPyAoaXNhdHR5KCBmaWxlbm8oZmlsZSkgKSA+IDApIDogMDsKKyAgICAKKwllcnJubyA9IG9lcnJubzsKK30KKworLyoqIERpc2NhcmQgYWxsIGJ1ZmZlcmVkIGNoYXJhY3RlcnMuIE9uIHRoZSBuZXh0IHNjYW4sIFlZX0lOUFVUIHdpbGwgYmUgY2FsbGVkLgorICogQHBhcmFtIGIgdGhlIGJ1ZmZlciBzdGF0ZSB0byBiZSBmbHVzaGVkLCB1c3VhbGx5IEBjIFlZX0NVUlJFTlRfQlVGRkVSLgorICogCisgKi8KKyAgICB2b2lkIHRyaWdkZWZfeXlfZmx1c2hfYnVmZmVyIChZWV9CVUZGRVJfU1RBVEUgIGIgKQoreworICAgIAlpZiAoICEgYiApCisJCXJldHVybjsKKworCWItPnl5X25fY2hhcnMgPSAwOworCisJLyogV2UgYWx3YXlzIG5lZWQgdHdvIGVuZC1vZi1idWZmZXIgY2hhcmFjdGVycy4gIFRoZSBmaXJzdCBjYXVzZXMKKwkgKiBhIHRyYW5zaXRpb24gdG8gdGhlIGVuZC1vZi1idWZmZXIgc3RhdGUuICBUaGUgc2Vjb25kIGNhdXNlcworCSAqIGEgamFtIGluIHRoYXQgc3RhdGUuCisJICovCisJYi0+eXlfY2hfYnVmWzBdID0gWVlfRU5EX09GX0JVRkZFUl9DSEFSOworCWItPnl5X2NoX2J1ZlsxXSA9IFlZX0VORF9PRl9CVUZGRVJfQ0hBUjsKKworCWItPnl5X2J1Zl9wb3MgPSAmYi0+eXlfY2hfYnVmWzBdOworCisJYi0+eXlfYXRfYm9sID0gMTsKKwliLT55eV9idWZmZXJfc3RhdHVzID0gWVlfQlVGRkVSX05FVzsKKworCWlmICggYiA9PSBZWV9DVVJSRU5UX0JVRkZFUiApCisJCXRyaWdkZWZfeXlfbG9hZF9idWZmZXJfc3RhdGUoICk7Cit9CisKKy8qKiBQdXNoZXMgdGhlIG5ldyBzdGF0ZSBvbnRvIHRoZSBzdGFjay4gVGhlIG5ldyBzdGF0ZSBiZWNvbWVzCisgKiAgdGhlIGN1cnJlbnQgc3RhdGUuIFRoaXMgZnVuY3Rpb24gd2lsbCBhbGxvY2F0ZSB0aGUgc3RhY2sKKyAqICBpZiBuZWNlc3NhcnkuCisgKiAgQHBhcmFtIG5ld19idWZmZXIgVGhlIG5ldyBzdGF0ZS4KKyAqICAKKyAqLwordm9pZCB0cmlnZGVmX3l5cHVzaF9idWZmZXJfc3RhdGUgKFlZX0JVRkZFUl9TVEFURSBuZXdfYnVmZmVyICkKK3sKKyAgICAJaWYgKG5ld19idWZmZXIgPT0gTlVMTCkKKwkJcmV0dXJuOworCisJdHJpZ2RlZl95eWVuc3VyZV9idWZmZXJfc3RhY2soKTsKKworCS8qIFRoaXMgYmxvY2sgaXMgY29waWVkIGZyb20gdHJpZ2RlZl95eV9zd2l0Y2hfdG9fYnVmZmVyLiAqLworCWlmICggWVlfQ1VSUkVOVF9CVUZGRVIgKQorCQl7CisJCS8qIEZsdXNoIG91dCBpbmZvcm1hdGlvbiBmb3Igb2xkIGJ1ZmZlci4gKi8KKwkJKih5eV9jX2J1Zl9wKSA9ICh5eV9ob2xkX2NoYXIpOworCQlZWV9DVVJSRU5UX0JVRkZFUl9MVkFMVUUtPnl5X2J1Zl9wb3MgPSAoeXlfY19idWZfcCk7CisJCVlZX0NVUlJFTlRfQlVGRkVSX0xWQUxVRS0+eXlfbl9jaGFycyA9ICh5eV9uX2NoYXJzKTsKKwkJfQorCisJLyogT25seSBwdXNoIGlmIHRvcCBleGlzdHMuIE90aGVyd2lzZSwgcmVwbGFjZSB0b3AuICovCisJaWYgKFlZX0NVUlJFTlRfQlVGRkVSKQorCQkoeXlfYnVmZmVyX3N0YWNrX3RvcCkrKzsKKwlZWV9DVVJSRU5UX0JVRkZFUl9MVkFMVUUgPSBuZXdfYnVmZmVyOworCisJLyogY29waWVkIGZyb20gdHJpZ2RlZl95eV9zd2l0Y2hfdG9fYnVmZmVyLiAqLworCXRyaWdkZWZfeXlfbG9hZF9idWZmZXJfc3RhdGUoICk7CisJKHl5X2RpZF9idWZmZXJfc3dpdGNoX29uX2VvZikgPSAxOworfQorCisvKiogUmVtb3ZlcyBhbmQgZGVsZXRlcyB0aGUgdG9wIG9mIHRoZSBzdGFjaywgaWYgcHJlc2VudC4KKyAqICBUaGUgbmV4dCBlbGVtZW50IGJlY29tZXMgdGhlIG5ldyB0b3AuCisgKiAgCisgKi8KK3ZvaWQgdHJpZ2RlZl95eXBvcF9idWZmZXJfc3RhdGUgKHZvaWQpCit7CisgICAgCWlmICghWVlfQ1VSUkVOVF9CVUZGRVIpCisJCXJldHVybjsKKworCXRyaWdkZWZfeXlfZGVsZXRlX2J1ZmZlcihZWV9DVVJSRU5UX0JVRkZFUiApOworCVlZX0NVUlJFTlRfQlVGRkVSX0xWQUxVRSA9IE5VTEw7CisJaWYgKCh5eV9idWZmZXJfc3RhY2tfdG9wKSA+IDApCisJCS0tKHl5X2J1ZmZlcl9zdGFja190b3ApOworCisJaWYgKFlZX0NVUlJFTlRfQlVGRkVSKSB7CisJCXRyaWdkZWZfeXlfbG9hZF9idWZmZXJfc3RhdGUoICk7CisJCSh5eV9kaWRfYnVmZmVyX3N3aXRjaF9vbl9lb2YpID0gMTsKKwl9Cit9CisKKy8qIEFsbG9jYXRlcyB0aGUgc3RhY2sgaWYgaXQgZG9lcyBub3QgZXhpc3QuCisgKiAgR3VhcmFudGVlcyBzcGFjZSBmb3IgYXQgbGVhc3Qgb25lIHB1c2guCisgKi8KK3N0YXRpYyB2b2lkIHRyaWdkZWZfeXllbnN1cmVfYnVmZmVyX3N0YWNrICh2b2lkKQoreworCWludCBudW1fdG9fYWxsb2M7CisgICAgCisJaWYgKCEoeXlfYnVmZmVyX3N0YWNrKSkgeworCisJCS8qIEZpcnN0IGFsbG9jYXRpb24gaXMganVzdCBmb3IgMiBlbGVtZW50cywgc2luY2Ugd2UgZG9uJ3Qga25vdyBpZiB0aGlzCisJCSAqIHNjYW5uZXIgd2lsbCBldmVuIG5lZWQgYSBzdGFjay4gV2UgdXNlIDIgaW5zdGVhZCBvZiAxIHRvIGF2b2lkIGFuCisJCSAqIGltbWVkaWF0ZSByZWFsbG9jIG9uIHRoZSBuZXh0IGNhbGwuCisgICAgICAgICAqLworCQludW1fdG9fYWxsb2MgPSAxOworCQkoeXlfYnVmZmVyX3N0YWNrKSA9IChzdHJ1Y3QgeXlfYnVmZmVyX3N0YXRlKiopdHJpZ2RlZl95eWFsbG9jCisJCQkJCQkJCShudW1fdG9fYWxsb2MgKiBzaXplb2Yoc3RydWN0IHl5X2J1ZmZlcl9zdGF0ZSopCisJCQkJCQkJCSk7CisJCWlmICggISAoeXlfYnVmZmVyX3N0YWNrKSApCisJCQlZWV9GQVRBTF9FUlJPUiggIm91dCBvZiBkeW5hbWljIG1lbW9yeSBpbiB0cmlnZGVmX3l5ZW5zdXJlX2J1ZmZlcl9zdGFjaygpIiApOworCQkJCQkJCQkgIAorCQltZW1zZXQoKHl5X2J1ZmZlcl9zdGFjayksIDAsIG51bV90b19hbGxvYyAqIHNpemVvZihzdHJ1Y3QgeXlfYnVmZmVyX3N0YXRlKikpOworCQkJCQorCQkoeXlfYnVmZmVyX3N0YWNrX21heCkgPSBudW1fdG9fYWxsb2M7CisJCSh5eV9idWZmZXJfc3RhY2tfdG9wKSA9IDA7CisJCXJldHVybjsKKwl9CisKKwlpZiAoKHl5X2J1ZmZlcl9zdGFja190b3ApID49ICgoeXlfYnVmZmVyX3N0YWNrX21heCkpIC0gMSl7CisKKwkJLyogSW5jcmVhc2UgdGhlIGJ1ZmZlciB0byBwcmVwYXJlIGZvciBhIHBvc3NpYmxlIHB1c2guICovCisJCWludCBncm93X3NpemUgPSA4IC8qIGFyYml0cmFyeSBncm93IHNpemUgKi87CisKKwkJbnVtX3RvX2FsbG9jID0gKHl5X2J1ZmZlcl9zdGFja19tYXgpICsgZ3Jvd19zaXplOworCQkoeXlfYnVmZmVyX3N0YWNrKSA9IChzdHJ1Y3QgeXlfYnVmZmVyX3N0YXRlKiopdHJpZ2RlZl95eXJlYWxsb2MKKwkJCQkJCQkJKCh5eV9idWZmZXJfc3RhY2spLAorCQkJCQkJCQludW1fdG9fYWxsb2MgKiBzaXplb2Yoc3RydWN0IHl5X2J1ZmZlcl9zdGF0ZSopCisJCQkJCQkJCSk7CisJCWlmICggISAoeXlfYnVmZmVyX3N0YWNrKSApCisJCQlZWV9GQVRBTF9FUlJPUiggIm91dCBvZiBkeW5hbWljIG1lbW9yeSBpbiB0cmlnZGVmX3l5ZW5zdXJlX2J1ZmZlcl9zdGFjaygpIiApOworCisJCS8qIHplcm8gb25seSB0aGUgbmV3IHNsb3RzLiovCisJCW1lbXNldCgoeXlfYnVmZmVyX3N0YWNrKSArICh5eV9idWZmZXJfc3RhY2tfbWF4KSwgMCwgZ3Jvd19zaXplICogc2l6ZW9mKHN0cnVjdCB5eV9idWZmZXJfc3RhdGUqKSk7CisJCSh5eV9idWZmZXJfc3RhY2tfbWF4KSA9IG51bV90b19hbGxvYzsKKwl9Cit9CisKKy8qKiBTZXR1cCB0aGUgaW5wdXQgYnVmZmVyIHN0YXRlIHRvIHNjYW4gZGlyZWN0bHkgZnJvbSBhIHVzZXItc3BlY2lmaWVkIGNoYXJhY3RlciBidWZmZXIuCisgKiBAcGFyYW0gYmFzZSB0aGUgY2hhcmFjdGVyIGJ1ZmZlcgorICogQHBhcmFtIHNpemUgdGhlIHNpemUgaW4gYnl0ZXMgb2YgdGhlIGNoYXJhY3RlciBidWZmZXIKKyAqIAorICogQHJldHVybiB0aGUgbmV3bHkgYWxsb2NhdGVkIGJ1ZmZlciBzdGF0ZSBvYmplY3QuIAorICovCitZWV9CVUZGRVJfU1RBVEUgdHJpZ2RlZl95eV9zY2FuX2J1ZmZlciAgKGNoYXIgKiBiYXNlLCB5eV9zaXplX3QgIHNpemUgKQoreworCVlZX0JVRkZFUl9TVEFURSBiOworICAgIAorCWlmICggc2l6ZSA8IDIgfHwKKwkgICAgIGJhc2Vbc2l6ZS0yXSAhPSBZWV9FTkRfT0ZfQlVGRkVSX0NIQVIgfHwKKwkgICAgIGJhc2Vbc2l6ZS0xXSAhPSBZWV9FTkRfT0ZfQlVGRkVSX0NIQVIgKQorCQkvKiBUaGV5IGZvcmdvdCB0byBsZWF2ZSByb29tIGZvciB0aGUgRU9CJ3MuICovCisJCXJldHVybiAwOworCisJYiA9IChZWV9CVUZGRVJfU1RBVEUpIHRyaWdkZWZfeXlhbGxvYyhzaXplb2YoIHN0cnVjdCB5eV9idWZmZXJfc3RhdGUgKSAgKTsKKwlpZiAoICEgYiApCisJCVlZX0ZBVEFMX0VSUk9SKCAib3V0IG9mIGR5bmFtaWMgbWVtb3J5IGluIHRyaWdkZWZfeXlfc2Nhbl9idWZmZXIoKSIgKTsKKworCWItPnl5X2J1Zl9zaXplID0gc2l6ZSAtIDI7CS8qICItIDIiIHRvIHRha2UgY2FyZSBvZiBFT0IncyAqLworCWItPnl5X2J1Zl9wb3MgPSBiLT55eV9jaF9idWYgPSBiYXNlOworCWItPnl5X2lzX291cl9idWZmZXIgPSAwOworCWItPnl5X2lucHV0X2ZpbGUgPSAwOworCWItPnl5X25fY2hhcnMgPSBiLT55eV9idWZfc2l6ZTsKKwliLT55eV9pc19pbnRlcmFjdGl2ZSA9IDA7CisJYi0+eXlfYXRfYm9sID0gMTsKKwliLT55eV9maWxsX2J1ZmZlciA9IDA7CisJYi0+eXlfYnVmZmVyX3N0YXR1cyA9IFlZX0JVRkZFUl9ORVc7CisKKwl0cmlnZGVmX3l5X3N3aXRjaF90b19idWZmZXIoYiAgKTsKKworCXJldHVybiBiOworfQorCisvKiogU2V0dXAgdGhlIGlucHV0IGJ1ZmZlciBzdGF0ZSB0byBzY2FuIGEgc3RyaW5nLiBUaGUgbmV4dCBjYWxsIHRvIHRyaWdkZWZfeXlsZXgoKSB3aWxsCisgKiBzY2FuIGZyb20gYSBAZSBjb3B5IG9mIEBhIHN0ci4KKyAqIEBwYXJhbSB5eXN0ciBhIE5VTC10ZXJtaW5hdGVkIHN0cmluZyB0byBzY2FuCisgKiAKKyAqIEByZXR1cm4gdGhlIG5ld2x5IGFsbG9jYXRlZCBidWZmZXIgc3RhdGUgb2JqZWN0LgorICogQG5vdGUgSWYgeW91IHdhbnQgdG8gc2NhbiBieXRlcyB0aGF0IG1heSBjb250YWluIE5VTCB2YWx1ZXMsIHRoZW4gdXNlCisgKiAgICAgICB0cmlnZGVmX3l5X3NjYW5fYnl0ZXMoKSBpbnN0ZWFkLgorICovCitZWV9CVUZGRVJfU1RBVEUgdHJpZ2RlZl95eV9zY2FuX3N0cmluZyAoeXljb25zdCBjaGFyICogeXlzdHIgKQoreworICAgIAorCXJldHVybiB0cmlnZGVmX3l5X3NjYW5fYnl0ZXMoeXlzdHIsc3RybGVuKHl5c3RyKSApOworfQorCisvKiogU2V0dXAgdGhlIGlucHV0IGJ1ZmZlciBzdGF0ZSB0byBzY2FuIHRoZSBnaXZlbiBieXRlcy4gVGhlIG5leHQgY2FsbCB0byB0cmlnZGVmX3l5bGV4KCkgd2lsbAorICogc2NhbiBmcm9tIGEgQGUgY29weSBvZiBAYSBieXRlcy4KKyAqIEBwYXJhbSB5eWJ5dGVzIHRoZSBieXRlIGJ1ZmZlciB0byBzY2FuCisgKiBAcGFyYW0gX3l5Ynl0ZXNfbGVuIHRoZSBudW1iZXIgb2YgYnl0ZXMgaW4gdGhlIGJ1ZmZlciBwb2ludGVkIHRvIGJ5IEBhIGJ5dGVzLgorICogCisgKiBAcmV0dXJuIHRoZSBuZXdseSBhbGxvY2F0ZWQgYnVmZmVyIHN0YXRlIG9iamVjdC4KKyAqLworWVlfQlVGRkVSX1NUQVRFIHRyaWdkZWZfeXlfc2Nhbl9ieXRlcyAgKHl5Y29uc3QgY2hhciAqIHl5Ynl0ZXMsIGludCAgX3l5Ynl0ZXNfbGVuICkKK3sKKwlZWV9CVUZGRVJfU1RBVEUgYjsKKwljaGFyICpidWY7CisJeXlfc2l6ZV90IG47CisJaW50IGk7CisgICAgCisJLyogR2V0IG1lbW9yeSBmb3IgZnVsbCBidWZmZXIsIGluY2x1ZGluZyBzcGFjZSBmb3IgdHJhaWxpbmcgRU9CJ3MuICovCisJbiA9IF95eWJ5dGVzX2xlbiArIDI7CisJYnVmID0gKGNoYXIgKikgdHJpZ2RlZl95eWFsbG9jKG4gICk7CisJaWYgKCAhIGJ1ZiApCisJCVlZX0ZBVEFMX0VSUk9SKCAib3V0IG9mIGR5bmFtaWMgbWVtb3J5IGluIHRyaWdkZWZfeXlfc2Nhbl9ieXRlcygpIiApOworCisJZm9yICggaSA9IDA7IGkgPCBfeXlieXRlc19sZW47ICsraSApCisJCWJ1ZltpXSA9IHl5Ynl0ZXNbaV07CisKKwlidWZbX3l5Ynl0ZXNfbGVuXSA9IGJ1ZltfeXlieXRlc19sZW4rMV0gPSBZWV9FTkRfT0ZfQlVGRkVSX0NIQVI7CisKKwliID0gdHJpZ2RlZl95eV9zY2FuX2J1ZmZlcihidWYsbiApOworCWlmICggISBiICkKKwkJWVlfRkFUQUxfRVJST1IoICJiYWQgYnVmZmVyIGluIHRyaWdkZWZfeXlfc2Nhbl9ieXRlcygpIiApOworCisJLyogSXQncyBva2F5IHRvIGdyb3cgZXRjLiB0aGlzIGJ1ZmZlciwgYW5kIHdlIHNob3VsZCB0aHJvdyBpdAorCSAqIGF3YXkgd2hlbiB3ZSdyZSBkb25lLgorCSAqLworCWItPnl5X2lzX291cl9idWZmZXIgPSAxOworCisJcmV0dXJuIGI7Cit9CisKKyNpZm5kZWYgWVlfRVhJVF9GQUlMVVJFCisjZGVmaW5lIFlZX0VYSVRfRkFJTFVSRSAyCisjZW5kaWYKKworc3RhdGljIHZvaWQgeXlfZmF0YWxfZXJyb3IgKHl5Y29uc3QgY2hhciogbXNnICkKK3sKKyAgICAJKHZvaWQpIGZwcmludGYoIHN0ZGVyciwgIiVzXG4iLCBtc2cgKTsKKwlleGl0KCBZWV9FWElUX0ZBSUxVUkUgKTsKK30KKworLyogUmVkZWZpbmUgeXlsZXNzKCkgc28gaXQgd29ya3MgaW4gc2VjdGlvbiAzIGNvZGUuICovCisKKyN1bmRlZiB5eWxlc3MKKyNkZWZpbmUgeXlsZXNzKG4pIFwKKwlkbyBcCisJCXsgXAorCQkvKiBVbmRvIGVmZmVjdHMgb2Ygc2V0dGluZyB1cCB0cmlnZGVmX3l5dGV4dC4gKi8gXAorICAgICAgICBpbnQgeXlsZXNzX21hY3JvX2FyZyA9IChuKTsgXAorICAgICAgICBZWV9MRVNTX0xJTkVOTyh5eWxlc3NfbWFjcm9fYXJnKTtcCisJCXRyaWdkZWZfeXl0ZXh0W3RyaWdkZWZfeXlsZW5nXSA9ICh5eV9ob2xkX2NoYXIpOyBcCisJCSh5eV9jX2J1Zl9wKSA9IHRyaWdkZWZfeXl0ZXh0ICsgeXlsZXNzX21hY3JvX2FyZzsgXAorCQkoeXlfaG9sZF9jaGFyKSA9ICooeXlfY19idWZfcCk7IFwKKwkJKih5eV9jX2J1Zl9wKSA9ICdcMCc7IFwKKwkJdHJpZ2RlZl95eWxlbmcgPSB5eWxlc3NfbWFjcm9fYXJnOyBcCisJCX0gXAorCXdoaWxlICggMCApCisKKy8qIEFjY2Vzc29yICBtZXRob2RzIChnZXQvc2V0IGZ1bmN0aW9ucykgdG8gc3RydWN0IG1lbWJlcnMuICovCisKKy8qKiBHZXQgdGhlIGN1cnJlbnQgbGluZSBudW1iZXIuCisgKiAKKyAqLworaW50IHRyaWdkZWZfeXlnZXRfbGluZW5vICAodm9pZCkKK3sKKyAgICAgICAgCisgICAgcmV0dXJuIHRyaWdkZWZfeXlsaW5lbm87Cit9CisKKy8qKiBHZXQgdGhlIGlucHV0IHN0cmVhbS4KKyAqIAorICovCitGSUxFICp0cmlnZGVmX3l5Z2V0X2luICAodm9pZCkKK3sKKyAgICAgICAgcmV0dXJuIHRyaWdkZWZfeXlpbjsKK30KKworLyoqIEdldCB0aGUgb3V0cHV0IHN0cmVhbS4KKyAqIAorICovCitGSUxFICp0cmlnZGVmX3l5Z2V0X291dCAgKHZvaWQpCit7CisgICAgICAgIHJldHVybiB0cmlnZGVmX3l5b3V0OworfQorCisvKiogR2V0IHRoZSBsZW5ndGggb2YgdGhlIGN1cnJlbnQgdG9rZW4uCisgKiAKKyAqLworaW50IHRyaWdkZWZfeXlnZXRfbGVuZyAgKHZvaWQpCit7CisgICAgICAgIHJldHVybiB0cmlnZGVmX3l5bGVuZzsKK30KKworLyoqIEdldCB0aGUgY3VycmVudCB0b2tlbi4KKyAqIAorICovCisKK2NoYXIgKnRyaWdkZWZfeXlnZXRfdGV4dCAgKHZvaWQpCit7CisgICAgICAgIHJldHVybiB0cmlnZGVmX3l5dGV4dDsKK30KKworLyoqIFNldCB0aGUgY3VycmVudCBsaW5lIG51bWJlci4KKyAqIEBwYXJhbSBsaW5lX251bWJlcgorICogCisgKi8KK3ZvaWQgdHJpZ2RlZl95eXNldF9saW5lbm8gKGludCAgbGluZV9udW1iZXIgKQoreworICAgIAorICAgIHRyaWdkZWZfeXlsaW5lbm8gPSBsaW5lX251bWJlcjsKK30KKworLyoqIFNldCB0aGUgaW5wdXQgc3RyZWFtLiBUaGlzIGRvZXMgbm90IGRpc2NhcmQgdGhlIGN1cnJlbnQKKyAqIGlucHV0IGJ1ZmZlci4KKyAqIEBwYXJhbSBpbl9zdHIgQSByZWFkYWJsZSBzdHJlYW0uCisgKiAKKyAqIEBzZWUgdHJpZ2RlZl95eV9zd2l0Y2hfdG9fYnVmZmVyCisgKi8KK3ZvaWQgdHJpZ2RlZl95eXNldF9pbiAoRklMRSAqICBpbl9zdHIgKQoreworICAgICAgICB0cmlnZGVmX3l5aW4gPSBpbl9zdHIgOworfQorCit2b2lkIHRyaWdkZWZfeXlzZXRfb3V0IChGSUxFICogIG91dF9zdHIgKQoreworICAgICAgICB0cmlnZGVmX3l5b3V0ID0gb3V0X3N0ciA7Cit9CisKK2ludCB0cmlnZGVmX3l5Z2V0X2RlYnVnICAodm9pZCkKK3sKKyAgICAgICAgcmV0dXJuIHRyaWdkZWZfeXlfZmxleF9kZWJ1ZzsKK30KKwordm9pZCB0cmlnZGVmX3l5c2V0X2RlYnVnIChpbnQgIGJkZWJ1ZyApCit7CisgICAgICAgIHRyaWdkZWZfeXlfZmxleF9kZWJ1ZyA9IGJkZWJ1ZyA7Cit9CisKK3N0YXRpYyBpbnQgeXlfaW5pdF9nbG9iYWxzICh2b2lkKQoreworICAgICAgICAvKiBJbml0aWFsaXphdGlvbiBpcyB0aGUgc2FtZSBhcyBmb3IgdGhlIG5vbi1yZWVudHJhbnQgc2Nhbm5lci4KKyAgICAgKiBUaGlzIGZ1bmN0aW9uIGlzIGNhbGxlZCBmcm9tIHRyaWdkZWZfeXlsZXhfZGVzdHJveSgpLCBzbyBkb24ndCBhbGxvY2F0ZSBoZXJlLgorICAgICAqLworCisgICAgKHl5X2J1ZmZlcl9zdGFjaykgPSAwOworICAgICh5eV9idWZmZXJfc3RhY2tfdG9wKSA9IDA7CisgICAgKHl5X2J1ZmZlcl9zdGFja19tYXgpID0gMDsKKyAgICAoeXlfY19idWZfcCkgPSAoY2hhciAqKSAwOworICAgICh5eV9pbml0KSA9IDA7CisgICAgKHl5X3N0YXJ0KSA9IDA7CisKKy8qIERlZmluZWQgaW4gbWFpbi5jICovCisjaWZkZWYgWVlfU1RESU5JVAorICAgIHRyaWdkZWZfeXlpbiA9IHN0ZGluOworICAgIHRyaWdkZWZfeXlvdXQgPSBzdGRvdXQ7CisjZWxzZQorICAgIHRyaWdkZWZfeXlpbiA9IChGSUxFICopIDA7CisgICAgdHJpZ2RlZl95eW91dCA9IChGSUxFICopIDA7CisjZW5kaWYKKworICAgIC8qIEZvciBmdXR1cmUgcmVmZXJlbmNlOiBTZXQgZXJybm8gb24gZXJyb3IsIHNpbmNlIHdlIGFyZSBjYWxsZWQgYnkKKyAgICAgKiB0cmlnZGVmX3l5bGV4X2luaXQoKQorICAgICAqLworICAgIHJldHVybiAwOworfQorCisvKiB0cmlnZGVmX3l5bGV4X2Rlc3Ryb3kgaXMgZm9yIGJvdGggcmVlbnRyYW50IGFuZCBub24tcmVlbnRyYW50IHNjYW5uZXJzLiAqLworaW50IHRyaWdkZWZfeXlsZXhfZGVzdHJveSAgKHZvaWQpCit7CisgICAgCisgICAgLyogUG9wIHRoZSBidWZmZXIgc3RhY2ssIGRlc3Ryb3lpbmcgZWFjaCBlbGVtZW50LiAqLworCXdoaWxlKFlZX0NVUlJFTlRfQlVGRkVSKXsKKwkJdHJpZ2RlZl95eV9kZWxldGVfYnVmZmVyKFlZX0NVUlJFTlRfQlVGRkVSICApOworCQlZWV9DVVJSRU5UX0JVRkZFUl9MVkFMVUUgPSBOVUxMOworCQl0cmlnZGVmX3l5cG9wX2J1ZmZlcl9zdGF0ZSgpOworCX0KKworCS8qIERlc3Ryb3kgdGhlIHN0YWNrIGl0c2VsZi4gKi8KKwl0cmlnZGVmX3l5ZnJlZSgoeXlfYnVmZmVyX3N0YWNrKSApOworCSh5eV9idWZmZXJfc3RhY2spID0gTlVMTDsKKworICAgIC8qIFJlc2V0IHRoZSBnbG9iYWxzLiBUaGlzIGlzIGltcG9ydGFudCBpbiBhIG5vbi1yZWVudHJhbnQgc2Nhbm5lciBzbyB0aGUgbmV4dCB0aW1lCisgICAgICogdHJpZ2RlZl95eWxleCgpIGlzIGNhbGxlZCwgaW5pdGlhbGl6YXRpb24gd2lsbCBvY2N1ci4gKi8KKyAgICB5eV9pbml0X2dsb2JhbHMoICk7CisKKyAgICByZXR1cm4gMDsKK30KKworLyoKKyAqIEludGVybmFsIHV0aWxpdHkgcm91dGluZXMuCisgKi8KKworI2lmbmRlZiB5eXRleHRfcHRyCitzdGF0aWMgdm9pZCB5eV9mbGV4X3N0cm5jcHkgKGNoYXIqIHMxLCB5eWNvbnN0IGNoYXIgKiBzMiwgaW50IG4gKQoreworCXJlZ2lzdGVyIGludCBpOworCWZvciAoIGkgPSAwOyBpIDwgbjsgKytpICkKKwkJczFbaV0gPSBzMltpXTsKK30KKyNlbmRpZgorCisjaWZkZWYgWVlfTkVFRF9TVFJMRU4KK3N0YXRpYyBpbnQgeXlfZmxleF9zdHJsZW4gKHl5Y29uc3QgY2hhciAqIHMgKQoreworCXJlZ2lzdGVyIGludCBuOworCWZvciAoIG4gPSAwOyBzW25dOyArK24gKQorCQk7CisKKwlyZXR1cm4gbjsKK30KKyNlbmRpZgorCit2b2lkICp0cmlnZGVmX3l5YWxsb2MgKHl5X3NpemVfdCAgc2l6ZSApCit7CisJcmV0dXJuICh2b2lkICopIG1hbGxvYyggc2l6ZSApOworfQorCit2b2lkICp0cmlnZGVmX3l5cmVhbGxvYyAgKHZvaWQgKiBwdHIsIHl5X3NpemVfdCAgc2l6ZSApCit7CisJLyogVGhlIGNhc3QgdG8gKGNoYXIgKikgaW4gdGhlIGZvbGxvd2luZyBhY2NvbW1vZGF0ZXMgYm90aAorCSAqIGltcGxlbWVudGF0aW9ucyB0aGF0IHVzZSBjaGFyKiBnZW5lcmljIHBvaW50ZXJzLCBhbmQgdGhvc2UKKwkgKiB0aGF0IHVzZSB2b2lkKiBnZW5lcmljIHBvaW50ZXJzLiAgSXQgd29ya3Mgd2l0aCB0aGUgbGF0dGVyCisJICogYmVjYXVzZSBib3RoIEFOU0kgQyBhbmQgQysrIGFsbG93IGNhc3RsZXNzIGFzc2lnbm1lbnQgZnJvbQorCSAqIGFueSBwb2ludGVyIHR5cGUgdG8gdm9pZCosIGFuZCBkZWFsIHdpdGggYXJndW1lbnQgY29udmVyc2lvbnMKKwkgKiBhcyB0aG91Z2ggZG9pbmcgYW4gYXNzaWdubWVudC4KKwkgKi8KKwlyZXR1cm4gKHZvaWQgKikgcmVhbGxvYyggKGNoYXIgKikgcHRyLCBzaXplICk7Cit9CisKK3ZvaWQgdHJpZ2RlZl95eWZyZWUgKHZvaWQgKiBwdHIgKQoreworCWZyZWUoIChjaGFyICopIHB0ciApOwkvKiBzZWUgdHJpZ2RlZl95eXJlYWxsb2MoKSBmb3IgKGNoYXIgKikgY2FzdCAqLworfQorCisjZGVmaW5lIFlZVEFCTEVTX05BTUUgInl5dGFibGVzIgorCisjbGluZSA5MCAidHJpZ2RlZmVycmVkLmwiCisKKworCisvKi0tLS0tLS0tLS0gRGVmZXJyZWQgZmlsZSBoYW5kbGluZyAtLS0tLS0tLS0tKi8KKworc3RhdGljIGNoYXIgKnRyaWdnZXJzZGlyOworc3RhdGljIGludCBsb2NrX2ZkID0gLTE7CitzdGF0aWMgRklMRSAqb2xkX2RlZmVycmVkOworc3RhdGljIEZJTEUgKnRyaWdfbmV3X2RlZmVycmVkOworCitzdGF0aWMgdm9pZAorY29uc3RydWN0Zm4oc3RydWN0IHZhcmJ1ZiAqdmIsIGNvbnN0IGNoYXIgKmRpciwgY29uc3QgY2hhciAqdGFpbCkKK3sKKwl2YXJidWZfcmVzZXQodmIpOworCXZhcmJ1Zl9hZGRfc3RyKHZiLCBkaXIpOworCXZhcmJ1Zl9hZGRfY2hhcih2YiwgJy8nKTsKKwl2YXJidWZfYWRkX3N0cih2YiwgdGFpbCk7CisJdmFyYnVmX2VuZF9zdHIodmIpOworfQorCisvKioKKyAqIFN0YXJ0IHByb2Nlc3Npbmcgb2YgdGhlIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUuCisgKgorICogQHJldHZhbCAtMSBMb2NrIEVOT0VOVCB3aXRoIE9fQ1JFQVQgKGRpcmVjdG9yeSBkb2VzIG5vdCBleGlzdCkuCisgKiBAcmV0dmFsIC0yIFVuaW5jb3JwIGVtcHR5LCB0ZHVmX3dyaXRlaWZlbXB0eSB1bnNldC4KKyAqIEByZXR2YWwgLTMgVW5pbmNvcnAgRU5PRU5ULCB0ZHVmX3dyaXRlaWZlbm9lbnQgdW5zZXQuCisgKiBAcmV0dmFsICAxIFVuaW5jb3JwIEVOT0VOVCwgdGR1Zl93cml0ZWlmZW5vZW50IHNldC4KKyAqIEByZXR2YWwgIDIgT2suCisgKgorICogRm9yIHBvc2l0aXZlIHJldHVybiB2YWx1ZXMgdGhlIGNhbGxlciBtdXN0IGNhbGwgdHJpZ2RlZl91cGRhdGVfZG9uZSEKKyAqLworZW51bSB0cmlnZGVmX3VwZGF0ZV9zdGF0dXMKK3RyaWdkZWZfdXBkYXRlX3N0YXJ0KGVudW0gdHJpZ2RlZl91cGRhdGVmbGFncyB1ZikKK3sKKwlzdHJ1Y3Qgc3RhdCBzdGFiOworCWludCByOworCisJdHJpZ2dlcnNkaXIgPSBkcGtnX2RiX2dldF9wYXRoKFRSSUdHRVJTRElSKTsKKworCWlmICh1ZiAmIHRkdWZfd3JpdGUpIHsKKwkJY29uc3RydWN0Zm4oJmZuLCB0cmlnZ2Vyc2RpciwgVFJJR0dFUlNMT0NLRklMRSk7CisJCWlmIChsb2NrX2ZkID09IC0xKSB7CisJCQlsb2NrX2ZkID0gb3Blbihmbi5idWYsIE9fUkRXUiB8IE9fQ1JFQVQgfCBPX1RSVU5DLCAwNjAwKTsKKwkJCWlmIChsb2NrX2ZkID09IC0xKSB7CisJCQkJaWYgKCEoZXJybm8gPT0gRU5PRU5UICYmICh1ZiAmIHRkdWZfbm9sb2Nrb2spKSkKKwkJCQkJb2hzaGl0ZShfKCJ1bmFibGUgdG8gb3Blbi9jcmVhdGUgIgorCQkJCQkgICAgICAgICAgInRyaWdnZXJzIGxvY2tmaWxlIGAlLjI1MHMnIiksCisJCQkJCSAgICAgICAgZm4uYnVmKTsKKwkJCQlyZXR1cm4gdGR1c19lcnJvcl9ub19kaXI7CisJCQl9CisJCX0KKworCQlmaWxlX2xvY2soJmxvY2tfZmQsIEZJTEVfTE9DS19XQUlULCBmbi5idWYsIF8oInRyaWdnZXJzIGFyZWEiKSk7CisJfSBlbHNlIHsKKwkJLyogRHVtbXkgZm9yIHBvcF9jbGVhbnVwcy4gKi8KKwkJcHVzaF9jbGVhbnVwKE5VTEwsIDAsIE5VTEwsIDAsIDApOworCX0KKworCWNvbnN0cnVjdGZuKCZmbiwgdHJpZ2dlcnNkaXIsIFRSSUdHRVJTREVGRVJSRURGSUxFKTsKKwlyID0gc3RhdChmbi5idWYsICZzdGFiKTsKKwlpZiAocikgeworCQlpZiAoZXJybm8gIT0gRU5PRU5UKQorCQkJb2hzaGl0ZShfKCJ1bmFibGUgdG8gc3RhdCB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIiksCisJCQkgICAgICAgIGZuLmJ1Zik7CisJfSBlbHNlIGlmICghc3RhYi5zdF9zaXplKSB7CisJCWlmICghKHVmICYgdGR1Zl93cml0ZWlmZW1wdHkpKSB7CisJCQlwb3BfY2xlYW51cChlaGZsYWdfbm9ybWFsdGlkeSk7CisJCQlyZXR1cm4gdGR1c19lcnJvcl9lbXB0eV9kZWZlcnJlZDsKKwkJfQorCX0KKworCWlmIChvbGRfZGVmZXJyZWQpCisJCWZjbG9zZShvbGRfZGVmZXJyZWQpOworCW9sZF9kZWZlcnJlZCA9IGZvcGVuKGZuLmJ1ZiwgInIiKTsKKwlpZiAoIW9sZF9kZWZlcnJlZCkgeworCQlpZiAoZXJybm8gIT0gRU5PRU5UKQorCQkJb2hzaGl0ZShfKCJ1bmFibGUgdG8gb3BlbiB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIiksCisJCQkgICAgICAgIGZuLmJ1Zik7CisJCWlmICghKHVmICYgdGR1Zl93cml0ZWlmZW5vZW50KSkgeworCQkJcG9wX2NsZWFudXAoZWhmbGFnX25vcm1hbHRpZHkpOworCQkJcmV0dXJuIHRkdXNfZXJyb3Jfbm9fZGVmZXJyZWQ7CisJCX0KKwl9CisKKwlpZiAodWYgJiB0ZHVmX3dyaXRlKSB7CisJCWNvbnN0cnVjdGZuKCZuZXdmbiwgdHJpZ2dlcnNkaXIsIFRSSUdHRVJTREVGRVJSRURGSUxFICIubmV3Iik7CisJCWlmICh0cmlnX25ld19kZWZlcnJlZCkKKwkJCWZjbG9zZSh0cmlnX25ld19kZWZlcnJlZCk7CisJCXRyaWdfbmV3X2RlZmVycmVkID0gZm9wZW4obmV3Zm4uYnVmLCAidyIpOworCQlpZiAoIXRyaWdfbmV3X2RlZmVycmVkKQorCQkJb2hzaGl0ZShfKCJ1bmFibGUgdG8gb3Blbi9jcmVhdGUgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciKSwKKwkJCSAgICAgICAgbmV3Zm4uYnVmKTsKKwl9CisKKwlpZiAoIW9sZF9kZWZlcnJlZCkKKwkJcmV0dXJuIHRkdXNfbm9fZGVmZXJyZWQ7CisKKwl0cmlnZGVmX3l5cmVzdGFydChvbGRfZGVmZXJyZWQpOworCUJFR0lOKDApOworCisJcmV0dXJuIHRkdXNfb2s7Cit9CisKK3ZvaWQKK3RyaWdkZWZfc2V0X21ldGhvZHMoY29uc3Qgc3RydWN0IHRyaWdkZWZtZXRocyAqbWV0aG9kcykKK3sKKwl0cmlnZGVmID0gbWV0aG9kczsKK30KKwordm9pZAordHJpZ2RlZl91cGRhdGVfcHJpbnRmKGNvbnN0IGNoYXIgKmZvcm1hdCwgLi4uKQoreworCXZhX2xpc3QgYXA7CisKKwl2YV9zdGFydChhcCwgZm9ybWF0KTsKKwl2ZnByaW50Zih0cmlnX25ld19kZWZlcnJlZCwgZm9ybWF0LCBhcCk7CisJdmFfZW5kKGFwKTsKK30KKwordm9pZAordHJpZ2RlZl9wcm9jZXNzX2RvbmUodm9pZCkKK3sKKwlpbnQgcjsKKworCWlmIChvbGRfZGVmZXJyZWQpIHsKKwkJaWYgKGZlcnJvcihvbGRfZGVmZXJyZWQpKQorCQkJb2hzaGl0ZShfKCJlcnJvciByZWFkaW5nIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciKSwKKwkJCSAgICAgICAgZm4uYnVmKTsKKwkJZmNsb3NlKG9sZF9kZWZlcnJlZCk7CisJCW9sZF9kZWZlcnJlZCA9IE5VTEw7CisJfQorCisJaWYgKHRyaWdfbmV3X2RlZmVycmVkKSB7CisJCWlmIChmZXJyb3IodHJpZ19uZXdfZGVmZXJyZWQpKQorCQkJb2hzaGl0ZShfKCJ1bmFibGUgdG8gd3JpdGUgbmV3IHRyaWdnZXJzIGRlZmVycmVkICIKKwkJCSAgICAgICAgICAiZmlsZSBgJS4yNTBzJyIpLCBuZXdmbi5idWYpOworCQlyID0gZmNsb3NlKHRyaWdfbmV3X2RlZmVycmVkKTsKKwkJdHJpZ19uZXdfZGVmZXJyZWQgPSBOVUxMOworCQlpZiAocikKKwkJCW9oc2hpdGUoXygidW5hYmxlIHRvIGNsb3NlIG5ldyB0cmlnZ2VycyBkZWZlcnJlZCAiCisJCQkgICAgICAgICAgImZpbGUgYCUuMjUwcyciKSwgbmV3Zm4uYnVmKTsKKworCQlpZiAocmVuYW1lKG5ld2ZuLmJ1ZiwgZm4uYnVmKSkKKwkJCW9oc2hpdGUoXygidW5hYmxlIHRvIGluc3RhbGwgbmV3IHRyaWdnZXJzIGRlZmVycmVkICIKKwkJCSAgICAgICAgICAiZmlsZSBgJS4yNTBzJyIpLCBmbi5idWYpOworCisJCWRpcl9zeW5jX3BhdGgodHJpZ2dlcnNkaXIpOworCX0KKworCWZyZWUodHJpZ2dlcnNkaXIpOworCXRyaWdnZXJzZGlyID0gTlVMTDsKKworCS8qIFVubG9jay4gKi8KKwlwb3BfY2xlYW51cChlaGZsYWdfbm9ybWFsdGlkeSk7Cit9CisKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmggYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL3RyaWdkZWZlcnJlZC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjFhYzMwYjAKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL3RyaWdkZWZlcnJlZC5oCkBAIC0wLDAgKzEsNjEgQEAKKy8qCisgKiBsaWJkcGtnIC0gRGViaWFuIHBhY2thZ2luZyBzdWl0ZSBsaWJyYXJ5IHJvdXRpbmVzCisgKiB0cmlnZGVmZXJyZWQuaCAtIHBhcnNpbmcgb2YgdHJpZ2dlcnMvRGVmZXJyZWQKKyAqCisgKiBDb3B5cmlnaHQgwqkgMjAwNyBDYW5vbmljYWwsIEx0ZC4KKyAqICAgd3JpdHRlbiBieSBJYW4gSmFja3NvbiA8aWFuQGNoaWFyay5ncmVlbmVuZC5vcmcudWs+CisgKgorICogVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisgKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAqIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorICovCisKKyNpZm5kZWYgTElCRFBLR19UUklHREVGRVJSRURfSAorI2RlZmluZSBMSUJEUEtHX1RSSUdERUZFUlJFRF9ICisKKyNpbmNsdWRlIDxkcGtnL21hY3Jvcy5oPgorCitEUEtHX0JFR0lOX0RFQ0xTCisKK2VudW0gdHJpZ2RlZl91cGRhdGVmbGFncyB7CisJdGR1Zl9ub2xvY2tvayA9ICAgICAgICAgICAwMDEsCisJdGR1Zl93cml0ZSA9ICAgICAgICAgICAgICAwMDIsCisJdGR1Zl9ub2xvY2sgPSAgICAgICAgICAgICAwMDMsCisJLyogU2hvdWxkIG5vdCBiZSBzZXQgdW5sZXNzIF93cml0ZSBpcy4gKi8KKwl0ZHVmX3dyaXRlaWZlbXB0eSA9ICAgICAgIDAxMCwKKwl0ZHVmX3dyaXRlaWZlbm9lbnQgPSAgICAgIDAyMCwKK307CisKK2VudW0gdHJpZ2RlZl91cGRhdGVfc3RhdHVzIHsKKwl0ZHVzX2Vycm9yX25vX2RpciA9IC0xLAorCXRkdXNfZXJyb3JfZW1wdHlfZGVmZXJyZWQgPSAtMiwKKwl0ZHVzX2Vycm9yX25vX2RlZmVycmVkID0gLTMsCisJdGR1c19ub19kZWZlcnJlZCA9IDEsCisJdGR1c19vayA9IDIsCit9OworCitzdHJ1Y3QgdHJpZ2RlZm1ldGhzIHsKKwl2b2lkICgqdHJpZ19iZWdpbikoY29uc3QgY2hhciAqdHJpZyk7CisJdm9pZCAoKnBhY2thZ2UpKGNvbnN0IGNoYXIgKmF3bmFtZSk7CisJdm9pZCAoKnRyaWdfZW5kKSh2b2lkKTsKK307CisKK3ZvaWQgdHJpZ2RlZl9zZXRfbWV0aG9kcyhjb25zdCBzdHJ1Y3QgdHJpZ2RlZm1ldGhzICptZXRob2RzKTsKKworZW51bSB0cmlnZGVmX3VwZGF0ZV9zdGF0dXMgdHJpZ2RlZl91cGRhdGVfc3RhcnQoZW51bSB0cmlnZGVmX3VwZGF0ZWZsYWdzIHVmKTsKK3ZvaWQgdHJpZ2RlZl91cGRhdGVfcHJpbnRmKGNvbnN0IGNoYXIgKmZvcm1hdCwgLi4uKSBEUEtHX0FUVFJfUFJJTlRGKDEpOworaW50IHRyaWdkZWZfcGFyc2Uodm9pZCk7Cit2b2lkIHRyaWdkZWZfcHJvY2Vzc19kb25lKHZvaWQpOworCitEUEtHX0VORF9ERUNMUworCisjZW5kaWYgLyogTElCRFBLR19UUklHREVGRVJSRURfSCAqLwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy90cmlnZGVmZXJyZWQubCBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzFlOGU2MwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmwKQEAgLTAsMCArMSwyNDMgQEAKKy8qCisgKiBsaWJkcGtnIC0gRGViaWFuIHBhY2thZ2luZyBzdWl0ZSBsaWJyYXJ5IHJvdXRpbmVzCisgKiB0cmlnZGVmZXJyZWQubCAtIHBhcnNpbmcgb2YgdHJpZ2dlcnMvRGVmZXJyZWQKKyAqCisgKiBDb3B5cmlnaHQgwqkgMjAwNyBDYW5vbmljYWwgTHRkCisgKiB3cml0dGVuIGJ5IElhbiBKYWNrc29uIDxpYW5AY2hpYXJrLmdyZWVuZW5kLm9yZy51az4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworJW9wdGlvbiBwcmVmaXg9InRyaWdkZWZfeXkiCisvKiBSZXNldCB0aGUgbmFtZSB0byB0aGUgZGVmYXVsdCB2YWx1ZSAoaW5zdGVhZCBvZiB1c2luZyAidHJpZ2RlZmVycmVkLmMiKQorICogc28gdGhhdCBhdXRvbWFrZSAoeWx3cmFwKSBjYW4gZmluZCBpdC4gKi8KKyVvcHRpb24gb3V0ZmlsZT0ibGV4Lnl5LmMiCislb3B0aW9uIG5veXl3cmFwCislb3B0aW9uIGJhdGNoCislb3B0aW9uIG5vZGVmYXVsdAorJW9wdGlvbiBwZXJmLXJlcG9ydAorJW9wdGlvbiB3YXJuCislb3B0aW9uIG5vdW5wdXQKKworJXggbWlkbGluZQorCisleworCisjaW5jbHVkZSA8Y29uZmlnLmg+CisjaW5jbHVkZSA8Y29tcGF0Lmg+CisKKyNpbmNsdWRlIDxzeXMvc3RhdC5oPgorI2luY2x1ZGUgPHN5cy9mY250bC5oPgorCisjaW5jbHVkZSA8ZHBrZy9pMThuLmg+CisjaW5jbHVkZSA8ZHBrZy9kcGtnLmg+CisjaW5jbHVkZSA8ZHBrZy9kcGtnLWRiLmg+CisjaW5jbHVkZSA8ZHBrZy9maWxlLmg+CisjaW5jbHVkZSA8ZHBrZy9kaXIuaD4KKyNpbmNsdWRlIDxkcGtnL3RyaWdkZWZlcnJlZC5oPgorI2luY2x1ZGUgPGRwa2cvdHJpZ2xpYi5oPgorCisjZGVmaW5lIFlZX05PX0lOUFVUCisjZGVmaW5lIFlZX0RFQ0wgaW50IHRyaWdkZWZfcGFyc2Uodm9pZCkKKworc3RhdGljIHN0cnVjdCB2YXJidWYgZm4sIG5ld2ZuOworCitzdGF0aWMgY29uc3Qgc3RydWN0IHRyaWdkZWZtZXRocyAqdHJpZ2RlZjsKKworJX0KKworJSUKKworWyBcdFxuXQkJLyogd2hpdGVzcGFjZSAqLworIy4qXG4JCS8qIGNvbW1lbnRzICovCitbXHgyMS1ceDdlXSsJeworCXRyaWdkZWYtPnRyaWdfYmVnaW4odHJpZ2RlZl95eXRleHQpOworCUJFR0lOKG1pZGxpbmUpOworCX0KKworPG1pZGxpbmU+WyBcdF0JLyogd2hpdGVzcGFjZSAqLworPG1pZGxpbmU+Wy0wLTlhLXpdWy0rLjAtOWEtel0qCXsKKwlpZiAodHJpZ2RlZl95eXRleHRbMF0gPT0gJy0nICYmIHRyaWdkZWZfeXl0ZXh0WzFdKQorCQlvaHNoaXQoXygiaW52YWxpZCBwYWNrYWdlIG5hbWUgYCUuMjUwcycgaW4gdHJpZ2dlcnMgZGVmZXJyZWQgIgorCQkgICAgICAgICAiZmlsZSBgJS4yNTBzJyIpLCB0cmlnZGVmX3l5dGV4dCwgZm4uYnVmKTsKKwl0cmlnZGVmLT5wYWNrYWdlKHRyaWdkZWZfeXl0ZXh0KTsKKwl9Cis8bWlkbGluZT5cbnwjLipcbgl7CisJdHJpZ2RlZi0+dHJpZ19lbmQoKTsKKwlCRUdJTigwKTsKKwl9Cis8bWlkbGluZT48PEVPRj4+CXsKKwlvaHNoaXQoXygidHJ1bmNhdGVkIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciKSwgZm4uYnVmKTsKKwl9CisKKzwqPi4JeworCW9oc2hpdChfKCJzeW50YXggZXJyb3IgaW4gdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyBhdCAiCisJICAgICAgICAgImNoYXJhY3RlciBgJXMnJXMiKSwKKwkgICAgICAgZm4uYnVmLCB5eXRleHQsIFlZX1NUQVJUID09IG1pZGxpbmUgPyAiIG1pZGxpbmUiOiAiIik7CisJfQorCislJQorCisvKi0tLS0tLS0tLS0gRGVmZXJyZWQgZmlsZSBoYW5kbGluZyAtLS0tLS0tLS0tKi8KKworc3RhdGljIGNoYXIgKnRyaWdnZXJzZGlyOworc3RhdGljIGludCBsb2NrX2ZkID0gLTE7CitzdGF0aWMgRklMRSAqb2xkX2RlZmVycmVkOworc3RhdGljIEZJTEUgKnRyaWdfbmV3X2RlZmVycmVkOworCitzdGF0aWMgdm9pZAorY29uc3RydWN0Zm4oc3RydWN0IHZhcmJ1ZiAqdmIsIGNvbnN0IGNoYXIgKmRpciwgY29uc3QgY2hhciAqdGFpbCkKK3sKKwl2YXJidWZfcmVzZXQodmIpOworCXZhcmJ1Zl9hZGRfc3RyKHZiLCBkaXIpOworCXZhcmJ1Zl9hZGRfY2hhcih2YiwgJy8nKTsKKwl2YXJidWZfYWRkX3N0cih2YiwgdGFpbCk7CisJdmFyYnVmX2VuZF9zdHIodmIpOworfQorCisvKioKKyAqIFN0YXJ0IHByb2Nlc3Npbmcgb2YgdGhlIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUuCisgKgorICogQHJldHZhbCAtMSBMb2NrIEVOT0VOVCB3aXRoIE9fQ1JFQVQgKGRpcmVjdG9yeSBkb2VzIG5vdCBleGlzdCkuCisgKiBAcmV0dmFsIC0yIFVuaW5jb3JwIGVtcHR5LCB0ZHVmX3dyaXRlaWZlbXB0eSB1bnNldC4KKyAqIEByZXR2YWwgLTMgVW5pbmNvcnAgRU5PRU5ULCB0ZHVmX3dyaXRlaWZlbm9lbnQgdW5zZXQuCisgKiBAcmV0dmFsICAxIFVuaW5jb3JwIEVOT0VOVCwgdGR1Zl93cml0ZWlmZW5vZW50IHNldC4KKyAqIEByZXR2YWwgIDIgT2suCisgKgorICogRm9yIHBvc2l0aXZlIHJldHVybiB2YWx1ZXMgdGhlIGNhbGxlciBtdXN0IGNhbGwgdHJpZ2RlZl91cGRhdGVfZG9uZSEKKyAqLworZW51bSB0cmlnZGVmX3VwZGF0ZV9zdGF0dXMKK3RyaWdkZWZfdXBkYXRlX3N0YXJ0KGVudW0gdHJpZ2RlZl91cGRhdGVmbGFncyB1ZikKK3sKKwlzdHJ1Y3Qgc3RhdCBzdGFiOworCWludCByOworCisJdHJpZ2dlcnNkaXIgPSBkcGtnX2RiX2dldF9wYXRoKFRSSUdHRVJTRElSKTsKKworCWlmICh1ZiAmIHRkdWZfd3JpdGUpIHsKKwkJY29uc3RydWN0Zm4oJmZuLCB0cmlnZ2Vyc2RpciwgVFJJR0dFUlNMT0NLRklMRSk7CisJCWlmIChsb2NrX2ZkID09IC0xKSB7CisJCQlsb2NrX2ZkID0gb3Blbihmbi5idWYsIE9fUkRXUiB8IE9fQ1JFQVQgfCBPX1RSVU5DLCAwNjAwKTsKKwkJCWlmIChsb2NrX2ZkID09IC0xKSB7CisJCQkJaWYgKCEoZXJybm8gPT0gRU5PRU5UICYmICh1ZiAmIHRkdWZfbm9sb2Nrb2spKSkKKwkJCQkJb2hzaGl0ZShfKCJ1bmFibGUgdG8gb3Blbi9jcmVhdGUgIgorCQkJCQkgICAgICAgICAgInRyaWdnZXJzIGxvY2tmaWxlIGAlLjI1MHMnIiksCisJCQkJCSAgICAgICAgZm4uYnVmKTsKKwkJCQlyZXR1cm4gdGR1c19lcnJvcl9ub19kaXI7CisJCQl9CisJCX0KKworCQlmaWxlX2xvY2soJmxvY2tfZmQsIEZJTEVfTE9DS19XQUlULCBmbi5idWYsIF8oInRyaWdnZXJzIGFyZWEiKSk7CisJfSBlbHNlIHsKKwkJLyogRHVtbXkgZm9yIHBvcF9jbGVhbnVwcy4gKi8KKwkJcHVzaF9jbGVhbnVwKE5VTEwsIDAsIE5VTEwsIDAsIDApOworCX0KKworCWNvbnN0cnVjdGZuKCZmbiwgdHJpZ2dlcnNkaXIsIFRSSUdHRVJTREVGRVJSRURGSUxFKTsKKwlyID0gc3RhdChmbi5idWYsICZzdGFiKTsKKwlpZiAocikgeworCQlpZiAoZXJybm8gIT0gRU5PRU5UKQorCQkJb2hzaGl0ZShfKCJ1bmFibGUgdG8gc3RhdCB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIiksCisJCQkgICAgICAgIGZuLmJ1Zik7CisJfSBlbHNlIGlmICghc3RhYi5zdF9zaXplKSB7CisJCWlmICghKHVmICYgdGR1Zl93cml0ZWlmZW1wdHkpKSB7CisJCQlwb3BfY2xlYW51cChlaGZsYWdfbm9ybWFsdGlkeSk7CisJCQlyZXR1cm4gdGR1c19lcnJvcl9lbXB0eV9kZWZlcnJlZDsKKwkJfQorCX0KKworCWlmIChvbGRfZGVmZXJyZWQpCisJCWZjbG9zZShvbGRfZGVmZXJyZWQpOworCW9sZF9kZWZlcnJlZCA9IGZvcGVuKGZuLmJ1ZiwgInIiKTsKKwlpZiAoIW9sZF9kZWZlcnJlZCkgeworCQlpZiAoZXJybm8gIT0gRU5PRU5UKQorCQkJb2hzaGl0ZShfKCJ1bmFibGUgdG8gb3BlbiB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIiksCisJCQkgICAgICAgIGZuLmJ1Zik7CisJCWlmICghKHVmICYgdGR1Zl93cml0ZWlmZW5vZW50KSkgeworCQkJcG9wX2NsZWFudXAoZWhmbGFnX25vcm1hbHRpZHkpOworCQkJcmV0dXJuIHRkdXNfZXJyb3Jfbm9fZGVmZXJyZWQ7CisJCX0KKwl9CisKKwlpZiAodWYgJiB0ZHVmX3dyaXRlKSB7CisJCWNvbnN0cnVjdGZuKCZuZXdmbiwgdHJpZ2dlcnNkaXIsIFRSSUdHRVJTREVGRVJSRURGSUxFICIubmV3Iik7CisJCWlmICh0cmlnX25ld19kZWZlcnJlZCkKKwkJCWZjbG9zZSh0cmlnX25ld19kZWZlcnJlZCk7CisJCXRyaWdfbmV3X2RlZmVycmVkID0gZm9wZW4obmV3Zm4uYnVmLCAidyIpOworCQlpZiAoIXRyaWdfbmV3X2RlZmVycmVkKQorCQkJb2hzaGl0ZShfKCJ1bmFibGUgdG8gb3Blbi9jcmVhdGUgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciKSwKKwkJCSAgICAgICAgbmV3Zm4uYnVmKTsKKwl9CisKKwlpZiAoIW9sZF9kZWZlcnJlZCkKKwkJcmV0dXJuIHRkdXNfbm9fZGVmZXJyZWQ7CisKKwl0cmlnZGVmX3l5cmVzdGFydChvbGRfZGVmZXJyZWQpOworCUJFR0lOKDApOworCisJcmV0dXJuIHRkdXNfb2s7Cit9CisKK3ZvaWQKK3RyaWdkZWZfc2V0X21ldGhvZHMoY29uc3Qgc3RydWN0IHRyaWdkZWZtZXRocyAqbWV0aG9kcykKK3sKKwl0cmlnZGVmID0gbWV0aG9kczsKK30KKwordm9pZAordHJpZ2RlZl91cGRhdGVfcHJpbnRmKGNvbnN0IGNoYXIgKmZvcm1hdCwgLi4uKQoreworCXZhX2xpc3QgYXA7CisKKwl2YV9zdGFydChhcCwgZm9ybWF0KTsKKwl2ZnByaW50Zih0cmlnX25ld19kZWZlcnJlZCwgZm9ybWF0LCBhcCk7CisJdmFfZW5kKGFwKTsKK30KKwordm9pZAordHJpZ2RlZl9wcm9jZXNzX2RvbmUodm9pZCkKK3sKKwlpbnQgcjsKKworCWlmIChvbGRfZGVmZXJyZWQpIHsKKwkJaWYgKGZlcnJvcihvbGRfZGVmZXJyZWQpKQorCQkJb2hzaGl0ZShfKCJlcnJvciByZWFkaW5nIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciKSwKKwkJCSAgICAgICAgZm4uYnVmKTsKKwkJZmNsb3NlKG9sZF9kZWZlcnJlZCk7CisJCW9sZF9kZWZlcnJlZCA9IE5VTEw7CisJfQorCisJaWYgKHRyaWdfbmV3X2RlZmVycmVkKSB7CisJCWlmIChmZXJyb3IodHJpZ19uZXdfZGVmZXJyZWQpKQorCQkJb2hzaGl0ZShfKCJ1bmFibGUgdG8gd3JpdGUgbmV3IHRyaWdnZXJzIGRlZmVycmVkICIKKwkJCSAgICAgICAgICAiZmlsZSBgJS4yNTBzJyIpLCBuZXdmbi5idWYpOworCQlyID0gZmNsb3NlKHRyaWdfbmV3X2RlZmVycmVkKTsKKwkJdHJpZ19uZXdfZGVmZXJyZWQgPSBOVUxMOworCQlpZiAocikKKwkJCW9oc2hpdGUoXygidW5hYmxlIHRvIGNsb3NlIG5ldyB0cmlnZ2VycyBkZWZlcnJlZCAiCisJCQkgICAgICAgICAgImZpbGUgYCUuMjUwcyciKSwgbmV3Zm4uYnVmKTsKKworCQlpZiAocmVuYW1lKG5ld2ZuLmJ1ZiwgZm4uYnVmKSkKKwkJCW9oc2hpdGUoXygidW5hYmxlIHRvIGluc3RhbGwgbmV3IHRyaWdnZXJzIGRlZmVycmVkICIKKwkJCSAgICAgICAgICAiZmlsZSBgJS4yNTBzJyIpLCBmbi5idWYpOworCisJCWRpcl9zeW5jX3BhdGgodHJpZ2dlcnNkaXIpOworCX0KKworCWZyZWUodHJpZ2dlcnNkaXIpOworCXRyaWdnZXJzZGlyID0gTlVMTDsKKworCS8qIFVubG9jay4gKi8KKwlwb3BfY2xlYW51cChlaGZsYWdfbm9ybWFsdGlkeSk7Cit9CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL3RyaWdsaWIuYyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvdHJpZ2xpYi5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjEzMjgwZDIKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL3RyaWdsaWIuYwpAQCAtMCwwICsxLDg1MyBAQAorLyoKKyAqIGxpYmRwa2cgLSBEZWJpYW4gcGFja2FnaW5nIHN1aXRlIGxpYnJhcnkgcm91dGluZXMKKyAqIHRyaWdsaWIuYyAtIHRyaWdnZXIgaGFuZGxpbmcKKyAqCisgKiBDb3B5cmlnaHQgwqkgMjAwNyBDYW5vbmljYWwgTHRkCisgKiBXcml0dGVuIGJ5IElhbiBKYWNrc29uIDxpYW5AY2hpYXJrLmdyZWVuZW5kLm9yZy51az4KKyAqIENvcHlyaWdodCDCqSAyMDA4LTIwMTEgR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaW5jbHVkZSA8Y29uZmlnLmg+CisjaW5jbHVkZSA8Y29tcGF0Lmg+CisKKyNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KKyNpbmNsdWRlIDxzeXMvc3RhdC5oPgorCisjaW5jbHVkZSA8YXNzZXJ0Lmg+CisjaW5jbHVkZSA8ZXJybm8uaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlIDx1bmlzdGQuaD4KKworI2luY2x1ZGUgPGRwa2cvaTE4bi5oPgorI2luY2x1ZGUgPGRwa2cvZHBrZy5oPgorI2luY2x1ZGUgPGRwa2cvZHBrZy1kYi5oPgorI2luY2x1ZGUgPGRwa2cvZGxpc3QuaD4KKyNpbmNsdWRlIDxkcGtnL2Rpci5oPgorI2luY2x1ZGUgPGRwa2cvdHJpZ2RlZmVycmVkLmg+CisjaW5jbHVkZSA8ZHBrZy90cmlnbGliLmg+CisKKy8qPT09PT09PT09PSBSZWNvcmRpbmcgdHJpZ2dlcnMuID09PT09PT09PT0qLworCitzdGF0aWMgY2hhciAqdHJpZ2dlcnNkaXIsICp0cmlnZ2Vyc2ZpbGVmaWxlLCAqdHJpZ2dlcnNuZXdmaWxlZmlsZTsKKworc3RhdGljIGNoYXIgKgordHJpZ19nZXRfZmlsZW5hbWUoY29uc3QgY2hhciAqZGlyLCBjb25zdCBjaGFyICpmaWxlbmFtZSkKK3sKKwljaGFyICpwYXRoOworCisJbV9hc3ByaW50ZigmcGF0aCwgIiVzLyVzIiwgZGlyLCBmaWxlbmFtZSk7CisKKwlyZXR1cm4gcGF0aDsKK30KKworc3RhdGljIHN0cnVjdCB0cmlnX2hvb2tzIHRyaWdoOworCisvKi0tLS0tLS0tLS0gTm90aW5nIHRyaWdnZXIgYWN0aXZhdGlvbiBpbiBtZW1vcnkuIC0tLS0tLS0tLS0qLworCisvKgorICogQ2FsbGVkIHZpYSB0cmlnXyphY3RpdmF0ZSogZXQgYWwgZnJvbToKKyAqICAgLSB0cmlnX2luY29ycG9yYXRlOiByZWFkaW5nIG9mIFVuaW5jb3JwIChleHBsaWNpdCB0cmlnZ2VyIGFjdGl2YXRpb25zKQorICogICAtIHZhcmlvdXMgcGxhY2VzOiBwcm9jZXNzaW5nIHN0YXJ0ICjigJhhY3RpdmF0ZeKAmSBpbiB0cmlnZ2VycyBjaSBmaWxlKQorICogICAtIG5hbWVub2RldG91c2U6IGZpbGUgdHJpZ2dlcnMgZHVyaW5nIHVucGFjayAvIHJlbW92ZQorICogICAtIGRlZmVycmVkX2NvbmZpZ3VyZTogZmlsZSB0cmlnZ2VycyBkdXJpbmcgY29uZmlnIGZpbGUgcHJvY2Vzc2luZworICoKKyAqIE5vdCBjYWxsZWQgZnJvbSB0cmlnX3RyYW5zaXRpb25hbF9hY3RpdmF0aW9uOyB0aGF0IHJ1bnMKKyAqIHRyaWdfbm90ZV9wZW5kIGRpcmVjdGx5IHdoaWNoIG1lYW5zIHRoYXQgKGEpIGF3YWl0ZXJzIGFyZSBub3QKKyAqIHJlY29yZGVkIChob3cgd291bGQgd2Uga25vdz8pIGFuZCAoYikgd2UgZG9uJ3QgZW5xdWV1ZSB0aGVtIGZvcgorICogZGVmZXJyZWQgcHJvY2Vzc2luZyBpbiB0aGlzIHJ1bi4KKyAqCisgKiBXZSBhZGQgdGhlIHRyaWdnZXIgdG8gVHJpZ2dlcnMtUGVuZGluZyBmaXJzdC4gVGhpcyBtYWtlcyBpdAorICogaGFyZGVyIHRvIGdldCBpbnRvIHRoZSBzdGF0ZSB3aGVyZSBUcmlnZ2Vycy1Bd2FpdGVkIGZvciBhdyBsaXN0cworICogcGVuZCBidXQgVHJpZ2dlcnMtUGVuZGluZyBmb3IgcGVuZCBpcyBlbXB0eS4gKFNlZSBhbHNvIHRoZQorICogY29tbWVudCBpbiBkZXBwb3NzaV9va19mb3VuZCByZWdhcmRpbmcgdGhpcyBzaXR1YXRpb24uKQorICovCisKKy8qCisgKiBhdyBtaWdodCBiZSBOVUxMLgorICogdHJpZyBpcyBub3QgY29waWVkIQorICovCitzdGF0aWMgdm9pZAordHJpZ19yZWNvcmRfYWN0aXZhdGlvbihzdHJ1Y3QgcGtnaW5mbyAqcGVuZCwgc3RydWN0IHBrZ2luZm8gKmF3LCBjb25zdCBjaGFyICp0cmlnKQoreworCWlmIChwZW5kLT5zdGF0dXMgPCBzdGF0X3RyaWdnZXJzYXdhaXRlZCkKKwkJcmV0dXJuOyAvKiBOb3QgaW50ZXJlc3RlZCB0aGVuLiAqLworCisJaWYgKHRyaWdfbm90ZV9wZW5kKHBlbmQsIHRyaWcpKQorCQltb2RzdGF0ZGJfbm90ZV9pZndyaXRlKHBlbmQpOworCisJaWYgKHRyaWdoLmVucXVldWVfZGVmZXJyZWQpCisJCXRyaWdoLmVucXVldWVfZGVmZXJyZWQocGVuZCk7CisKKwlpZiAoYXcgJiYgcGVuZC0+c3RhdHVzID4gc3RhdF9jb25maWdmaWxlcykKKwkJaWYgKHRyaWdfbm90ZV9hdyhwZW5kLCBhdykpIHsKKwkJCWlmIChhdy0+c3RhdHVzID4gc3RhdF90cmlnZ2Vyc2F3YWl0ZWQpCisJCQkJYXctPnN0YXR1cyA9IHN0YXRfdHJpZ2dlcnNhd2FpdGVkOworCQkJbW9kc3RhdGRiX25vdGVfaWZ3cml0ZShhdyk7CisJCX0KK30KKwordm9pZAordHJpZ19jbGVhcl9hd2FpdGVycyhzdHJ1Y3QgcGtnaW5mbyAqbm90cGVuZCkKK3sKKwlzdHJ1Y3QgdHJpZ2F3ICp0YTsKKwlzdHJ1Y3QgcGtnaW5mbyAqYXc7CisKKwlhc3NlcnQoIW5vdHBlbmQtPnRyaWdwZW5kX2hlYWQpOworCisJdGEgPSBub3RwZW5kLT5vdGhlcnRyaWdhd19oZWFkOworCW5vdHBlbmQtPm90aGVydHJpZ2F3X2hlYWQgPSBOVUxMOworCWZvciAoOyB0YTsgdGEgPSB0YS0+c2FtZXBlbmRfbmV4dCkgeworCQlhdyA9IHRhLT5hdzsKKwkJaWYgKCFhdykKKwkJCWNvbnRpbnVlOworCQlMSVNUX1VOTElOS19QQVJUKGF3LT50cmlnYXcsIHRhLCBzYW1lYXcuKTsKKwkJaWYgKCFhdy0+dHJpZ2F3LmhlYWQgJiYgYXctPnN0YXR1cyA9PSBzdGF0X3RyaWdnZXJzYXdhaXRlZCkgeworCQkJYXctPnN0YXR1cyA9IGF3LT50cmlncGVuZF9oZWFkID8gc3RhdF90cmlnZ2Vyc3BlbmRpbmcgOgorCQkJICAgICAgICAgICAgIHN0YXRfaW5zdGFsbGVkOworCQkJbW9kc3RhdGRiX25vdGUoYXcpOworCQl9CisJfQorfQorCisvKgorICogRml4IHVwIHBhY2thZ2VzIGluIHN0YXRlIHRyaWdnZXJzLWF3YWl0ZWQgdy9vIHRoZSBjb3JyZXNwb25kaW5nIHBhY2thZ2UKKyAqIHdpdGggcGVuZGluZyB0cmlnZ2Vycy4gVGhpcyBjYW4gaGFwcGVuIHdoZW4gZHBrZyB3YXMgaW50ZXJydXB0ZWQKKyAqIHdoaWxlIGluIG1vZHN0YXRkYl9ub3RlLCBhbmQgdGhlIHBhY2thZ2UgaW4gdHJpZ2dlcnMtcGVuZGluZyBoYWQgaXRzCisgKiBzdGF0ZSBtb2RpZmllZCBidXQgZHBrZyBjb3VsZCBub3QgZmluaXNoIGNsZWFyaW5nIHRoZSBhd2FpdGVycy4KKyAqCisgKiBYWFg6IFBvc3NpYmx5IGdldCByaWQgb2Ygc29tZSBvZiB0aGUgY2hlY2tzIGRvbmUgc29tZXdoZXJlIGVsc2UgZm9yCisgKiAgICAgIHRoaXMgY29uZGl0aW9uIGF0IHJ1bi10aW1lLgorICovCit2b2lkCit0cmlnX2ZpeHVwX2F3YWl0ZXJzKGVudW0gbW9kc3RhdGRiX3J3IGNzdGF0dXMpCit7CisJaWYgKGNzdGF0dXMgPCBtc2Ricndfd3JpdGUpCisJCXJldHVybjsKKworCXRyaWdfYXdhaXRlZF9wZW5kX2ZvcmVhY2godHJpZ19jbGVhcl9hd2FpdGVycyk7CisJdHJpZ19hd2FpdGVkX3BlbmRfZnJlZSgpOworfQorCisvKi0tLS0tLS0tLS0gR2VuZXJhbGl6ZWQgaGFuZGxpbmcgb2YgdHJpZ2dlciBraW5kcy4gLS0tLS0tLS0tLSovCisKK3N0cnVjdCB0cmlna2luZGluZm8geworCS8qIE9ubHkgZm9yIHRyaWdfYWN0aXZhdGVfc3RhcnQuICovCisJdm9pZCAoKmFjdGl2YXRlX3N0YXJ0KSh2b2lkKTsKKworCS8qIFJlc3QgYXJlIGZvciBldmVyeW9uZTogKi8KKwl2b2lkICgqYWN0aXZhdGVfYXdhaXRlcikoc3RydWN0IHBrZ2luZm8gKnBrZyAvKiBtYXkgYmUgTlVMTCAqLyk7CisJdm9pZCAoKmFjdGl2YXRlX2RvbmUpKHZvaWQpOworCXZvaWQgKCppbnRlcmVzdF9jaGFuZ2UpKGNvbnN0IGNoYXIgKm5hbWUsIHN0cnVjdCBwa2dpbmZvICpwa2csIGludCBzaWdudW0sCisJICAgICAgICAgICAgICAgICAgICAgICAgZW51bSB0cmlnX29wdGlvbnMgb3B0cyk7Cit9OworCitzdGF0aWMgY29uc3Qgc3RydWN0IHRyaWdraW5kaW5mbyB0a2lfZXhwbGljaXQsIHRraV9maWxlLCB0a2lfdW5rbm93bjsKK3N0YXRpYyBjb25zdCBzdHJ1Y3QgdHJpZ2tpbmRpbmZvICpkdGtpOworCisvKiBBcyBwYXNzZWQgaW50byBhY3RpdmF0ZV9zdGFydC4gKi8KK3N0YXRpYyBjb25zdCBjaGFyICp0cmlnX2FjdGl2YXRpbmdfbmFtZTsKKworc3RhdGljIGNvbnN0IHN0cnVjdCB0cmlna2luZGluZm8gKgordHJpZ19jbGFzc2lmeV9ieW5hbWUoY29uc3QgY2hhciAqbmFtZSkKK3sKKwlpZiAobmFtZVswXSA9PSAnLycpIHsKKwkJY29uc3QgY2hhciAqc2xhc2g7CisKKwkJc2xhc2ggPSBuYW1lOworCQl3aGlsZSAoc2xhc2gpIHsKKwkJCWlmIChzbGFzaFsxXSA9PSAnXDAnIHx8IHNsYXNoWzFdID09ICcvJykKKwkJCQlnb3RvIGludmFsaWQ7CisKKwkJCXNsYXNoID0gc3RyY2hyKHNsYXNoICsgMiwgJy8nKTsKKwkJfQorCQlyZXR1cm4gJnRraV9maWxlOworCX0KKworCWlmICghcGtnX25hbWVfaXNfaWxsZWdhbChuYW1lLCBOVUxMKSAmJiAhc3RyY2hyKG5hbWUsICdfJykpCisJCXJldHVybiAmdGtpX2V4cGxpY2l0OworCitpbnZhbGlkOgorCXJldHVybiAmdGtpX3Vua25vd247Cit9CisKKy8qCisgKiBDYWxsaW5nIHNlcXVlbmNlIGlzOgorICogIHRyaWdfYWN0aXZhdGVfc3RhcnQodHJpZ2dlcm5hbWUpCisgKiAgZHRraS0+YWN0aXZhdGVfYXdhaXRlcihhd2FpdGluZ19wYWNrYWdlKSB9IHplcm8gb3IgbW9yZSB0aW1lcworICogIGR0a2ktPmFjdGl2YXRlX2F3YWl0ZXIoMCkgICAgICAgICAgICAgICAgfSAgaW4gYW55IG9yZGVyCisgKiAgZHRraS0+YWN0aXZhdGVfZG9uZSgwKQorICovCitzdGF0aWMgdm9pZAordHJpZ19hY3RpdmF0ZV9zdGFydChjb25zdCBjaGFyICpuYW1lKQoreworCWR0a2kgPSB0cmlnX2NsYXNzaWZ5X2J5bmFtZShuYW1lKTsKKwl0cmlnX2FjdGl2YXRpbmdfbmFtZSA9IG5hbWU7CisJZHRraS0+YWN0aXZhdGVfc3RhcnQoKTsKK30KKworLyotLS0tLS0tLS0tIFVua25vd24gdHJpZ2dlciBraW5kcy4gLS0tLS0tLS0tLSovCisKK3N0YXRpYyB2b2lkCit0cmtfdW5rbm93bl9hY3RpdmF0ZV9zdGFydCh2b2lkKQoreworfQorCitzdGF0aWMgdm9pZAordHJrX3Vua25vd25fYWN0aXZhdGVfYXdhaXRlcihzdHJ1Y3QgcGtnaW5mbyAqYXcpCit7Cit9CisKK3N0YXRpYyB2b2lkCit0cmtfdW5rbm93bl9hY3RpdmF0ZV9kb25lKHZvaWQpCit7Cit9CisKK3N0YXRpYyB2b2lkIERQS0dfQVRUUl9OT1JFVAordHJrX3Vua25vd25faW50ZXJlc3RfY2hhbmdlKGNvbnN0IGNoYXIgKnRyaWcsIHN0cnVjdCBwa2dpbmZvICpwa2csIGludCBzaWdudW0sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW51bSB0cmlnX29wdGlvbnMgb3B0cykKK3sKKwlvaHNoaXQoXygiaW52YWxpZCBvciB1bmtub3duIHN5bnRheCBpbiB0cmlnZ2VyIG5hbWUgYCUuMjUwcyciCisJICAgICAgICAgIiAoaW4gdHJpZ2dlciBpbnRlcmVzdHMgZm9yIHBhY2thZ2UgYCUuMjUwcycpIiksCisJICAgICAgIHRyaWcsIHBrZy0+bmFtZSk7Cit9CisKK3N0YXRpYyBjb25zdCBzdHJ1Y3QgdHJpZ2tpbmRpbmZvIHRraV91bmtub3duID0geworCS5hY3RpdmF0ZV9zdGFydCA9IHRya191bmtub3duX2FjdGl2YXRlX3N0YXJ0LAorCS5hY3RpdmF0ZV9hd2FpdGVyID0gdHJrX3Vua25vd25fYWN0aXZhdGVfYXdhaXRlciwKKwkuYWN0aXZhdGVfZG9uZSA9IHRya191bmtub3duX2FjdGl2YXRlX2RvbmUsCisJLmludGVyZXN0X2NoYW5nZSA9IHRya191bmtub3duX2ludGVyZXN0X2NoYW5nZSwKK307CisKKy8qLS0tLS0tLS0tLSBFeHBsaWNpdCB0cmlnZ2Vycy4gLS0tLS0tLS0tLSovCisKK3N0YXRpYyBGSUxFICp0cmtfZXhwbGljaXRfZjsKK3N0YXRpYyBzdHJ1Y3QgdmFyYnVmIHRya19leHBsaWNpdF9mbjsKK3N0YXRpYyBjaGFyICp0cmtfZXhwbGljaXRfdHJpZzsKKworc3RhdGljIHZvaWQKK3Rya19leHBsaWNpdF9hY3RpdmF0ZV9kb25lKHZvaWQpCit7CisJaWYgKHRya19leHBsaWNpdF9mKSB7CisJCWZjbG9zZSh0cmtfZXhwbGljaXRfZik7CisJCXRya19leHBsaWNpdF9mID0gTlVMTDsKKwl9Cit9CisKK3N0YXRpYyB2b2lkCit0cmtfZXhwbGljaXRfc3RhcnQoY29uc3QgY2hhciAqdHJpZykKK3sKKwl0cmtfZXhwbGljaXRfYWN0aXZhdGVfZG9uZSgpOworCisJdmFyYnVmX3Jlc2V0KCZ0cmtfZXhwbGljaXRfZm4pOworCXZhcmJ1Zl9hZGRfc3RyKCZ0cmtfZXhwbGljaXRfZm4sIHRyaWdnZXJzZGlyKTsKKwl2YXJidWZfYWRkX2NoYXIoJnRya19leHBsaWNpdF9mbiwgJy8nKTsKKwl2YXJidWZfYWRkX3N0cigmdHJrX2V4cGxpY2l0X2ZuLCB0cmlnKTsKKwl2YXJidWZfZW5kX3N0cigmdHJrX2V4cGxpY2l0X2ZuKTsKKworCXRya19leHBsaWNpdF9mID0gZm9wZW4odHJrX2V4cGxpY2l0X2ZuLmJ1ZiwgInIiKTsKKwlpZiAoIXRya19leHBsaWNpdF9mKSB7CisJCWlmIChlcnJubyAhPSBFTk9FTlQpCisJCQlvaHNoaXRlKF8oImZhaWxlZCB0byBvcGVuIHRyaWdnZXIgaW50ZXJlc3QgbGlzdCBmaWxlIGAlLjI1MHMnIiksCisJCQkgICAgICAgIHRya19leHBsaWNpdF9mbi5idWYpOworCX0KK30KKworc3RhdGljIGludAordHJrX2V4cGxpY2l0X2ZnZXRzKGNoYXIgKmJ1Ziwgc2l6ZV90IHN6KQoreworCXJldHVybiBmZ2V0c19jaGVja2VkKGJ1Ziwgc3osIHRya19leHBsaWNpdF9mLCB0cmtfZXhwbGljaXRfZm4uYnVmKTsKK30KKworc3RhdGljIHZvaWQKK3Rya19leHBsaWNpdF9hY3RpdmF0ZV9zdGFydCh2b2lkKQoreworCXRya19leHBsaWNpdF9zdGFydCh0cmlnX2FjdGl2YXRpbmdfbmFtZSk7CisJdHJrX2V4cGxpY2l0X3RyaWcgPSBuZnN0cnNhdmUodHJpZ19hY3RpdmF0aW5nX25hbWUpOworfQorCitzdGF0aWMgdm9pZAordHJrX2V4cGxpY2l0X2FjdGl2YXRlX2F3YWl0ZXIoc3RydWN0IHBrZ2luZm8gKmF3KQoreworCWNoYXIgYnVmWzEwMjRdOworCWNvbnN0IGNoYXIgKmVtc2c7CisJc3RydWN0IHBrZ2luZm8gKnBlbmQ7CisKKwlpZiAoIXRya19leHBsaWNpdF9mKQorCQlyZXR1cm47CisKKwlpZiAoZnNlZWsodHJrX2V4cGxpY2l0X2YsIDAsIFNFRUtfU0VUKSkKKwkJb2hzaGl0ZShfKCJmYWlsZWQgdG8gcmV3aW5kIHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIpLAorCQkgICAgICAgIHRya19leHBsaWNpdF9mbi5idWYpOworCisJd2hpbGUgKHRya19leHBsaWNpdF9mZ2V0cyhidWYsIHNpemVvZihidWYpKSA+PSAwKSB7CisJCWNoYXIgKnNsYXNoOworCQlib29sIG5vYXdhaXQgPSBmYWxzZTsKKwkJc2xhc2ggPSBzdHJjaHIoYnVmLCAnLycpOworCQlpZiAoc2xhc2ggJiYgc3RyY21wKCIvbm9hd2FpdCIsIHNsYXNoKSA9PSAwKSB7CisJCQlub2F3YWl0ID0gdHJ1ZTsKKwkJCSpzbGFzaCA9ICdcMCc7CisJCX0KKwkJZW1zZyA9IHBrZ19uYW1lX2lzX2lsbGVnYWwoYnVmLCBOVUxMKTsKKwkJaWYgKGVtc2cpCisJCQlvaHNoaXQoXygidHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIHN5bnRheCBlcnJvcjsgIgorCQkJICAgICAgICAgImlsbGVnYWwgcGFja2FnZSBuYW1lIGAlLjI1MHMnOiAlLjI1MHMiKSwKKwkJCSAgICAgICB0cmtfZXhwbGljaXRfZm4uYnVmLCBidWYsIGVtc2cpOworCQlwZW5kID0gcGtnX2RiX2ZpbmQoYnVmKTsKKwkJdHJpZ19yZWNvcmRfYWN0aXZhdGlvbihwZW5kLCBub2F3YWl0ID8gTlVMTCA6IGF3LAorCQkgICAgICAgICAgICAgICAgICAgICAgIHRya19leHBsaWNpdF90cmlnKTsKKwl9Cit9CisKK3N0YXRpYyB2b2lkCit0cmtfZXhwbGljaXRfaW50ZXJlc3RfZmx1c2goY29uc3QgY2hhciAqbmV3ZmlsZW5hbWUsIEZJTEUgKm5mKQoreworCWlmIChmZXJyb3IobmYpKQorCQlvaHNoaXRlKF8oInVuYWJsZSB0byB3cml0ZSBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIiksCisJCSAgICAgICAgbmV3ZmlsZW5hbWUpOworCWlmIChmZmx1c2gobmYpKQorCQlvaHNoaXRlKF8oInVuYWJsZSB0byBmbHVzaCBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlICclLjI1MHMnIiksCisJCSAgICAgICAgbmV3ZmlsZW5hbWUpOworCWlmIChmc3luYyhmaWxlbm8obmYpKSkKKwkJb2hzaGl0ZShfKCJ1bmFibGUgdG8gc3luYyBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlICclLjI1MHMnIiksCisJCSAgICAgICAgbmV3ZmlsZW5hbWUpOworfQorCitzdGF0aWMgdm9pZAordHJrX2V4cGxpY2l0X2ludGVyZXN0X2NvbW1pdChjb25zdCBjaGFyICpuZXdmaWxlbmFtZSkKK3sKKwlpZiAocmVuYW1lKG5ld2ZpbGVuYW1lLCB0cmtfZXhwbGljaXRfZm4uYnVmKSkKKwkJb2hzaGl0ZShfKCJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIiksCisJCSAgICAgICAgdHJrX2V4cGxpY2l0X2ZuLmJ1Zik7Cit9CisKK3N0YXRpYyB2b2lkCit0cmtfZXhwbGljaXRfaW50ZXJlc3RfcmVtb3ZlKGNvbnN0IGNoYXIgKm5ld2ZpbGVuYW1lKQoreworCWlmICh1bmxpbmsobmV3ZmlsZW5hbWUpKQorCQlvaHNoaXRlKF8oImNhbm5vdCByZW1vdmUgYCUuMjUwcyciKSwgbmV3ZmlsZW5hbWUpOworCWlmICh1bmxpbmsodHJrX2V4cGxpY2l0X2ZuLmJ1ZikgJiYgZXJybm8gIT0gRU5PRU5UKQorCQlvaHNoaXRlKF8oImNhbm5vdCByZW1vdmUgYCUuMjUwcyciKSwgdHJrX2V4cGxpY2l0X2ZuLmJ1Zik7Cit9CisKK3N0YXRpYyB2b2lkCit0cmtfZXhwbGljaXRfaW50ZXJlc3RfY2hhbmdlKGNvbnN0IGNoYXIgKnRyaWcsICBzdHJ1Y3QgcGtnaW5mbyAqcGtnLCBpbnQgc2lnbnVtLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbnVtIHRyaWdfb3B0aW9ucyBvcHRzKQoreworCXN0YXRpYyBzdHJ1Y3QgdmFyYnVmIG5ld2ZuOworCWNoYXIgYnVmWzEwMjRdOworCUZJTEUgKm5mOworCWJvb2wgZW1wdHkgPSB0cnVlOworCisJdHJrX2V4cGxpY2l0X3N0YXJ0KHRyaWcpOworCXZhcmJ1Zl9yZXNldCgmbmV3Zm4pOworCXZhcmJ1Zl9wcmludGYoJm5ld2ZuLCAiJXMvJXMubmV3IiwgdHJpZ2dlcnNkaXIsIHRyaWcpOworCisJbmYgPSBmb3BlbihuZXdmbi5idWYsICJ3Iik7CisJaWYgKCFuZikKKwkJb2hzaGl0ZShfKCJ1bmFibGUgdG8gY3JlYXRlIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciKSwKKwkJICAgICAgICBuZXdmbi5idWYpOworCXB1c2hfY2xlYW51cChjdV9jbG9zZXN0cmVhbSwgfmVoZmxhZ19ub3JtYWx0aWR5LCBOVUxMLCAwLCAxLCBuZik7CisKKwl3aGlsZSAodHJrX2V4cGxpY2l0X2YgJiYgdHJrX2V4cGxpY2l0X2ZnZXRzKGJ1Ziwgc2l6ZW9mKGJ1ZikpID49IDApIHsKKwkJaW50IGxlbiA9IHN0cmxlbihwa2ctPm5hbWUpOworCQlpZiAoc3RybmNtcChidWYsIHBrZy0+bmFtZSwgbGVuKSA9PSAwICYmCisJCSAgICAoYnVmW2xlbl0gPT0gJ1wwJyB8fCBidWZbbGVuXSA9PSAnLycpKQorCQkJY29udGludWU7CisJCWZwcmludGYobmYsICIlc1xuIiwgYnVmKTsKKwkJZW1wdHkgPSBmYWxzZTsKKwl9CisJaWYgKHNpZ251bSA+IDApIHsKKwkJZnByaW50ZihuZiwgIiVzJXNcbiIsIHBrZy0+bmFtZSwKKwkJICAgICAgICAob3B0cyA9PSB0cmlnX25vYXdhaXQpID8gIi9ub2F3YWl0IiA6ICIiKTsKKwkJZW1wdHkgPSBmYWxzZTsKKwl9CisKKwlpZiAoIWVtcHR5KQorCQl0cmtfZXhwbGljaXRfaW50ZXJlc3RfZmx1c2gobmV3Zm4uYnVmLCBuZik7CisKKwlwb3BfY2xlYW51cChlaGZsYWdfbm9ybWFsdGlkeSk7CisJaWYgKGZjbG9zZShuZikpCisJCW9oc2hpdGUoXygidW5hYmxlIHRvIGNsb3NlIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciKSwKKwkJICAgICAgICBuZXdmbi5idWYpOworCisJaWYgKGVtcHR5KQorCQl0cmtfZXhwbGljaXRfaW50ZXJlc3RfcmVtb3ZlKG5ld2ZuLmJ1Zik7CisJZWxzZQorCQl0cmtfZXhwbGljaXRfaW50ZXJlc3RfY29tbWl0KG5ld2ZuLmJ1Zik7CisKKwlkaXJfc3luY19wYXRoKHRyaWdnZXJzZGlyKTsKK30KKworc3RhdGljIGNvbnN0IHN0cnVjdCB0cmlna2luZGluZm8gdGtpX2V4cGxpY2l0ID0geworCS5hY3RpdmF0ZV9zdGFydCA9IHRya19leHBsaWNpdF9hY3RpdmF0ZV9zdGFydCwKKwkuYWN0aXZhdGVfYXdhaXRlciA9IHRya19leHBsaWNpdF9hY3RpdmF0ZV9hd2FpdGVyLAorCS5hY3RpdmF0ZV9kb25lID0gdHJrX2V4cGxpY2l0X2FjdGl2YXRlX2RvbmUsCisJLmludGVyZXN0X2NoYW5nZSA9IHRya19leHBsaWNpdF9pbnRlcmVzdF9jaGFuZ2UsCit9OworCisvKi0tLS0tLS0tLS0gRmlsZSB0cmlnZ2Vycy4gLS0tLS0tLS0tLSovCisKK3N0YXRpYyBzdHJ1Y3QgeworCXN0cnVjdCB0cmlnZmlsZWludCAqaGVhZCwgKnRhaWw7Cit9IGZpbGV0cmlnZ2VyczsKKworLyoKKyAqIFZhbHVlczoKKyAqICAtMTogTm90IHJlYWQuCisgKiAgIDA6IE5vdCBlZGl0ZWQuCisgKiAgIDE6IEVkaXRlZAorICovCitzdGF0aWMgaW50IGZpbGV0cmlnZ2Vyc19lZGl0ZWQgPSAtMTsKKworLyoKKyAqIENhbGxlZCBieSB2YXJpb3VzIHBlb3BsZSB3aXRoIHNpZ251bSAtMSBhbmQgKzEgdG8gbWVhbiByZW1vdmUgYW5kIGFkZAorICogYW5kIGFsc28gYnkgdHJpZ19maWxlX2ludGVyZXN0c19lbnN1cmUoKSB3aXRoIHNpZ251bSArMiBtZWFuaW5nIGFkZAorICogYnV0IGRpZSBpZiBhbHJlYWR5IHByZXNlbnQuCisgKi8KK3N0YXRpYyB2b2lkCit0cmtfZmlsZV9pbnRlcmVzdF9jaGFuZ2UoY29uc3QgY2hhciAqdHJpZywgc3RydWN0IHBrZ2luZm8gKnBrZywgaW50IHNpZ251bSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBlbnVtIHRyaWdfb3B0aW9ucyBvcHRzKQoreworCXN0cnVjdCBmaWxlbmFtZW5vZGUgKmZubjsKKwlzdHJ1Y3QgdHJpZ2ZpbGVpbnQgKipzZWFyY2gsICp0Zmk7CisKKwlmbm4gPSB0cmlnaC5uYW1lbm9kZV9maW5kKHRyaWcsIHNpZ251bSA8PSAwKTsKKwlpZiAoIWZubikgeworCQlhc3NlcnQoc2lnbnVtIDwgMCk7CisJCXJldHVybjsKKwl9CisKKwlmb3IgKHNlYXJjaCA9IHRyaWdoLm5hbWVub2RlX2ludGVyZXN0ZWQoZm5uKTsKKwkgICAgICh0ZmkgPSAqc2VhcmNoKTsKKwkgICAgIHNlYXJjaCA9ICZ0ZmktPnNhbWVmaWxlX25leHQpCisJCWlmICh0ZmktPnBrZyA9PSBwa2cpCisJCQlnb3RvIGZvdW5kOworCisJLyogTm90IGZvdW5kLiAqLworCWlmIChzaWdudW0gPCAwKQorCQlyZXR1cm47CisKKwl0ZmkgPSBuZm1hbGxvYyhzaXplb2YoKnRmaSkpOworCXRmaS0+cGtnID0gcGtnOworCXRmaS0+Zm5uID0gZm5uOworCXRmaS0+b3B0aW9ucyA9IG9wdHM7CisJdGZpLT5zYW1lZmlsZV9uZXh0ID0gKnRyaWdoLm5hbWVub2RlX2ludGVyZXN0ZWQoZm5uKTsKKwkqdHJpZ2gubmFtZW5vZGVfaW50ZXJlc3RlZChmbm4pID0gdGZpOworCisJTElTVF9MSU5LX1RBSUxfUEFSVChmaWxldHJpZ2dlcnMsIHRmaSwgaW5vdmVyYWxsLik7CisJZ290byBlZGl0ZWQ7CisKK2ZvdW5kOgorCXRmaS0+b3B0aW9ucyA9IG9wdHM7CisJaWYgKHNpZ251bSA+IDEpCisJCW9oc2hpdChfKCJkdXBsaWNhdGUgZmlsZSB0cmlnZ2VyIGludGVyZXN0IGZvciBmaWxlbmFtZSBgJS4yNTBzJyAiCisJCSAgICAgICAgICJhbmQgcGFja2FnZSBgJS4yNTBzJyIpLCB0cmlnLCBwa2ctPm5hbWUpOworCWlmIChzaWdudW0gPiAwKQorCQlyZXR1cm47CisKKwkvKiBSZW1vdmUgaXQ6ICovCisJKnNlYXJjaCA9IHRmaS0+c2FtZWZpbGVfbmV4dDsKKwlMSVNUX1VOTElOS19QQVJUKGZpbGV0cmlnZ2VycywgdGZpLCBpbm92ZXJhbGwuKTsKK2VkaXRlZDoKKwlmaWxldHJpZ2dlcnNfZWRpdGVkID0gMTsKK30KKworc3RhdGljIHZvaWQKK3RyaWdfZmlsZV9pbnRlcmVzdHNfcmVtb3ZlKHZvaWQpCit7CisJaWYgKHVubGluayh0cmlnZ2Vyc2ZpbGVmaWxlKSAmJiBlcnJubyAhPSBFTk9FTlQpCisJCW9oc2hpdGUoXygiY2Fubm90IHJlbW92ZSBgJS4yNTBzJyIpLCB0cmlnZ2Vyc2ZpbGVmaWxlKTsKK30KKworc3RhdGljIHZvaWQKK3RyaWdfZmlsZV9pbnRlcmVzdHNfdXBkYXRlKHZvaWQpCit7CisJc3RydWN0IHRyaWdmaWxlaW50ICp0Zmk7CisJRklMRSAqbmY7CisKKwluZiA9IGZvcGVuKHRyaWdnZXJzbmV3ZmlsZWZpbGUsICJ3Iik7CisJaWYgKCFuZikKKwkJb2hzaGl0ZShfKCJ1bmFibGUgdG8gY3JlYXRlIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciKSwKKwkJICAgICAgICB0cmlnZ2Vyc25ld2ZpbGVmaWxlKTsKKwlwdXNoX2NsZWFudXAoY3VfY2xvc2VzdHJlYW0sIH5laGZsYWdfbm9ybWFsdGlkeSwgTlVMTCwgMCwgMSwgbmYpOworCisJZm9yICh0ZmkgPSBmaWxldHJpZ2dlcnMuaGVhZDsgdGZpOyB0ZmkgPSB0ZmktPmlub3ZlcmFsbC5uZXh0KQorCQlmcHJpbnRmKG5mLCAiJXMgJXMlc1xuIiwgdHJpZ2gubmFtZW5vZGVfbmFtZSh0ZmktPmZubiksCisJCSAgICAgICAgdGZpLT5wa2ctPm5hbWUsCisJCSAgICAgICAgKHRmaS0+b3B0aW9ucyA9PSB0cmlnX25vYXdhaXQpID8gIi9ub2F3YWl0IiA6ICIiKTsKKworCWlmIChmZXJyb3IobmYpKQorCQlvaHNoaXRlKF8oInVuYWJsZSB0byB3cml0ZSBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIiksCisJCSAgICAgICAgdHJpZ2dlcnNuZXdmaWxlZmlsZSk7CisJaWYgKGZmbHVzaChuZikpCisJCW9oc2hpdGUoXygidW5hYmxlIHRvIGZsdXNoIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgJyUuMjUwcyciKSwKKwkJICAgICAgICB0cmlnZ2Vyc25ld2ZpbGVmaWxlKTsKKwlpZiAoZnN5bmMoZmlsZW5vKG5mKSkpCisJCW9oc2hpdGUoXygidW5hYmxlIHRvIHN5bmMgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSAnJS4yNTBzJyIpLAorCQkgICAgICAgIHRyaWdnZXJzbmV3ZmlsZWZpbGUpOworCXBvcF9jbGVhbnVwKGVoZmxhZ19ub3JtYWx0aWR5KTsKKwlpZiAoZmNsb3NlKG5mKSkKKwkJb2hzaGl0ZShfKCJ1bmFibGUgdG8gY2xvc2UgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIpLAorCQkgICAgICAgIHRyaWdnZXJzbmV3ZmlsZWZpbGUpOworCisJaWYgKHJlbmFtZSh0cmlnZ2Vyc25ld2ZpbGVmaWxlLCB0cmlnZ2Vyc2ZpbGVmaWxlKSkKKwkJb2hzaGl0ZShfKCJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGFzIGAlLjI1MHMnIiksCisJCSAgICAgICAgdHJpZ2dlcnNmaWxlZmlsZSk7Cit9CisKK3ZvaWQKK3RyaWdfZmlsZV9pbnRlcmVzdHNfc2F2ZSh2b2lkKQoreworCWlmIChmaWxldHJpZ2dlcnNfZWRpdGVkIDw9IDApCisJCXJldHVybjsKKworCWlmICghZmlsZXRyaWdnZXJzLmhlYWQpCisJCXRyaWdfZmlsZV9pbnRlcmVzdHNfcmVtb3ZlKCk7CisJZWxzZQorCQl0cmlnX2ZpbGVfaW50ZXJlc3RzX3VwZGF0ZSgpOworCisJZGlyX3N5bmNfcGF0aCh0cmlnZ2Vyc2Rpcik7CisKKwlmaWxldHJpZ2dlcnNfZWRpdGVkID0gMDsKK30KKwordm9pZAordHJpZ19maWxlX2ludGVyZXN0c19lbnN1cmUodm9pZCkKK3sKKwlGSUxFICpmOworCWNoYXIgbGluZWJ1ZlsxMDI0XSwgKnNwYWNlOworCXN0cnVjdCBwa2dpbmZvICpwa2c7CisJY29uc3QgY2hhciAqZW1zZzsKKworCWlmIChmaWxldHJpZ2dlcnNfZWRpdGVkID49IDApCisJCXJldHVybjsKKworCWYgPSBmb3Blbih0cmlnZ2Vyc2ZpbGVmaWxlLCAiciIpOworCWlmICghZikgeworCQlpZiAoZXJybm8gPT0gRU5PRU5UKQorCQkJZ290byBvazsKKwkJb2hzaGl0ZShfKCJ1bmFibGUgdG8gcmVhZCBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciKSwKKwkJICAgICAgICB0cmlnZ2Vyc2ZpbGVmaWxlKTsKKwl9CisKKwlwdXNoX2NsZWFudXAoY3VfY2xvc2VzdHJlYW0sIH4wLCBOVUxMLCAwLCAxLCBmKTsKKwl3aGlsZSAoZmdldHNfY2hlY2tlZChsaW5lYnVmLCBzaXplb2YobGluZWJ1ZiksIGYsIHRyaWdnZXJzZmlsZWZpbGUpID49IDApIHsKKwkJY2hhciAqc2xhc2g7CisJCWVudW0gdHJpZ19vcHRpb25zIHRyaWdfb3B0cyA9IHRyaWdfYXdhaXQ7CisJCXNwYWNlID0gc3RyY2hyKGxpbmVidWYsICcgJyk7CisJCWlmICghc3BhY2UgfHwgbGluZWJ1ZlswXSAhPSAnLycpCisJCQlvaHNoaXQoXygic3ludGF4IGVycm9yIGluIGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIpLAorCQkJICAgICAgIHRyaWdnZXJzZmlsZWZpbGUpOworCQkqc3BhY2UrKyA9ICdcMCc7CisKKwkJc2xhc2ggPSBzdHJjaHIoc3BhY2UsICcvJyk7CisJCWlmIChzbGFzaCAmJiBzdHJjbXAoIi9ub2F3YWl0Iiwgc2xhc2gpID09IDApIHsKKwkJCXRyaWdfb3B0cyA9IHRyaWdfbm9hd2FpdDsKKwkJCSpzbGFzaCA9ICdcMCc7CisJCX0KKwkJZW1zZyA9IHBrZ19uYW1lX2lzX2lsbGVnYWwoc3BhY2UsIE5VTEwpOworCQlpZiAoZW1zZykKKwkJCW9oc2hpdChfKCJmaWxlIHRyaWdnZXJzIHJlY29yZCBtZW50aW9ucyBpbGxlZ2FsICIKKwkJCSAgICAgICAgICJwYWNrYWdlIG5hbWUgYCUuMjUwcycgKGZvciBpbnRlcmVzdCBpbiBmaWxlICIKKwkJCQkgImAlLjI1MHMnKTogJS4yNTBzIiksIHNwYWNlLCBsaW5lYnVmLCBlbXNnKTsKKwkJcGtnID0gcGtnX2RiX2ZpbmQoc3BhY2UpOworCQl0cmtfZmlsZV9pbnRlcmVzdF9jaGFuZ2UobGluZWJ1ZiwgcGtnLCArMiwgdHJpZ19vcHRzKTsKKwl9CisJcG9wX2NsZWFudXAoZWhmbGFnX25vcm1hbHRpZHkpOworb2s6CisJZmlsZXRyaWdnZXJzX2VkaXRlZCA9IDA7Cit9CisKK3N0YXRpYyBzdHJ1Y3QgZmlsZW5hbWVub2RlICpmaWxldHJpZ2dlcnNfYWN0aXZhdGluZzsKKwordm9pZAordHJpZ19maWxlX2FjdGl2YXRlX2J5bmFtZShjb25zdCBjaGFyICp0cmlnLCBzdHJ1Y3QgcGtnaW5mbyAqYXcpCit7CisJc3RydWN0IGZpbGVuYW1lbm9kZSAqZm5uID0gdHJpZ2gubmFtZW5vZGVfZmluZCh0cmlnLCAxKTsKKworCWlmIChmbm4pCisJCXRyaWdfZmlsZV9hY3RpdmF0ZShmbm4sIGF3KTsKK30KKwordm9pZAordHJpZ19maWxlX2FjdGl2YXRlKHN0cnVjdCBmaWxlbmFtZW5vZGUgKnRyaWcsIHN0cnVjdCBwa2dpbmZvICphdykKK3sKKwlzdHJ1Y3QgdHJpZ2ZpbGVpbnQgKnRmaTsKKworCWZvciAodGZpID0gKnRyaWdoLm5hbWVub2RlX2ludGVyZXN0ZWQodHJpZyk7IHRmaTsKKwkgICAgIHRmaSA9IHRmaS0+c2FtZWZpbGVfbmV4dCkKKwkJdHJpZ19yZWNvcmRfYWN0aXZhdGlvbih0ZmktPnBrZywgKHRmaS0+b3B0aW9ucyA9PSB0cmlnX25vYXdhaXQpID8KKwkJICAgICAgICAgICAgICAgICAgICAgICBOVUxMIDogYXcsIHRyaWdoLm5hbWVub2RlX25hbWUodHJpZykpOworfQorCitzdGF0aWMgdm9pZAordHJrX2ZpbGVfYWN0aXZhdGVfc3RhcnQodm9pZCkKK3sKKwlmaWxldHJpZ2dlcnNfYWN0aXZhdGluZyA9IHRyaWdoLm5hbWVub2RlX2ZpbmQodHJpZ19hY3RpdmF0aW5nX25hbWUsIDEpOworfQorCitzdGF0aWMgdm9pZAordHJrX2ZpbGVfYWN0aXZhdGVfYXdhaXRlcihzdHJ1Y3QgcGtnaW5mbyAqYXcpCit7CisJaWYgKCFmaWxldHJpZ2dlcnNfYWN0aXZhdGluZykKKwkJcmV0dXJuOworCXRyaWdfZmlsZV9hY3RpdmF0ZShmaWxldHJpZ2dlcnNfYWN0aXZhdGluZywgYXcpOworfQorCitzdGF0aWMgdm9pZAordHJrX2ZpbGVfYWN0aXZhdGVfZG9uZSh2b2lkKQoreworfQorCitzdGF0aWMgY29uc3Qgc3RydWN0IHRyaWdraW5kaW5mbyB0a2lfZmlsZSA9IHsKKwkuYWN0aXZhdGVfc3RhcnQgPSB0cmtfZmlsZV9hY3RpdmF0ZV9zdGFydCwKKwkuYWN0aXZhdGVfYXdhaXRlciA9IHRya19maWxlX2FjdGl2YXRlX2F3YWl0ZXIsCisJLmFjdGl2YXRlX2RvbmUgPSB0cmtfZmlsZV9hY3RpdmF0ZV9kb25lLAorCS5pbnRlcmVzdF9jaGFuZ2UgPSB0cmtfZmlsZV9pbnRlcmVzdF9jaGFuZ2UsCit9OworCisvKi0tLS0tLS0tLS0gVHJpZ2dlciBjb250cm9sIGluZm8gZmlsZS4gLS0tLS0tLS0tLSovCisKK3N0YXRpYyB2b2lkCit0cmlnX2NpY2JfaW50ZXJlc3RfY2hhbmdlKGNvbnN0IGNoYXIgKnRyaWcsIHN0cnVjdCBwa2dpbmZvICpwa2csIGludCBzaWdudW0sCisgICAgICAgICAgICAgICAgICAgICAgICAgIGVudW0gdHJpZ19vcHRpb25zIG9wdHMpCit7CisJY29uc3Qgc3RydWN0IHRyaWdraW5kaW5mbyAqdGtpID0gdHJpZ19jbGFzc2lmeV9ieW5hbWUodHJpZyk7CisKKwlhc3NlcnQoZmlsZXRyaWdnZXJzX2VkaXRlZCA+PSAwKTsKKwl0a2ktPmludGVyZXN0X2NoYW5nZSh0cmlnLCBwa2csIHNpZ251bSwgb3B0cyk7Cit9CisKK3ZvaWQKK3RyaWdfY2ljYl9pbnRlcmVzdF9kZWxldGUoY29uc3QgY2hhciAqdHJpZywgdm9pZCAqdXNlciwgZW51bSB0cmlnX29wdGlvbnMgb3B0cykKK3sKKwl0cmlnX2NpY2JfaW50ZXJlc3RfY2hhbmdlKHRyaWcsIHVzZXIsIC0xLCBvcHRzKTsKK30KKwordm9pZAordHJpZ19jaWNiX2ludGVyZXN0X2FkZChjb25zdCBjaGFyICp0cmlnLCB2b2lkICp1c2VyLCBlbnVtIHRyaWdfb3B0aW9ucyBvcHRzKQoreworCXRyaWdfY2ljYl9pbnRlcmVzdF9jaGFuZ2UodHJpZywgdXNlciwgKzEsIG9wdHMpOworfQorCit2b2lkCit0cmlnX2NpY2Jfc3RhdHVzY2hhbmdlX2FjdGl2YXRlKGNvbnN0IGNoYXIgKnRyaWcsIHZvaWQgKnVzZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVudW0gdHJpZ19vcHRpb25zIG9wdHMpCit7CisJc3RydWN0IHBrZ2luZm8gKmF3ID0gdXNlcjsKKworCXRyaWdfYWN0aXZhdGVfc3RhcnQodHJpZyk7CisJZHRraS0+YWN0aXZhdGVfYXdhaXRlcigob3B0cyA9PSB0cmlnX25vYXdhaXQpID8gTlVMTCA6IGF3KTsKKwlkdGtpLT5hY3RpdmF0ZV9kb25lKCk7Cit9CisKK3N0YXRpYyB2b2lkCitwYXJzZV9jaV9jYWxsKGNvbnN0IGNoYXIgKmZpbGUsIGNvbnN0IGNoYXIgKmNtZCwgdHJpZ19wYXJzZV9jaWNiICpjYiwKKyAgICAgICAgICAgICAgY29uc3QgY2hhciAqdHJpZywgdm9pZCAqdXNlciwgZW51bSB0cmlnX29wdGlvbnMgb3B0cykKK3sKKwljb25zdCBjaGFyICplbXNnOworCisJZW1zZyA9IHRyaWdfbmFtZV9pc19pbGxlZ2FsKHRyaWcpOworCWlmIChlbXNnKQorCQlvaHNoaXQoXygidHJpZ2dlcnMgY2kgZmlsZSBgJS4yNTBzJyBjb250YWlucyBpbGxlZ2FsIHRyaWdnZXIgIgorCQkgICAgICAgICAic3ludGF4IGluIHRyaWdnZXIgbmFtZSBgJS4yNTBzJzogJS4yNTBzIiksCisJCSAgICAgICBmaWxlLCB0cmlnLCBlbXNnKTsKKwlpZiAoY2IpCisJCWNiKHRyaWcsIHVzZXIsIG9wdHMpOworfQorCit2b2lkCit0cmlnX3BhcnNlX2NpKGNvbnN0IGNoYXIgKmZpbGUsIHRyaWdfcGFyc2VfY2ljYiAqaW50ZXJlc3QsCisgICAgICAgICAgICAgIHRyaWdfcGFyc2VfY2ljYiAqYWN0aXZhdGUsIHZvaWQgKnVzZXIpCit7CisJRklMRSAqZjsKKwljaGFyIGxpbmVidWZbTUFYVFJJR0RJUkVDVElWRV0sICpjbWQsICpzcGMsICplb2w7CisJaW50IGw7CisKKwlmID0gZm9wZW4oZmlsZSwgInIiKTsKKwlpZiAoIWYpIHsKKwkJaWYgKGVycm5vID09IEVOT0VOVCkKKwkJCXJldHVybjsgLyogTm8gZmlsZSBpcyBqdXN0IGxpa2UgYW4gZW1wdHkgb25lLiAqLworCQlvaHNoaXRlKF8oInVuYWJsZSB0byBvcGVuIHRyaWdnZXJzIGNpIGZpbGUgYCUuMjUwcyciKSwgZmlsZSk7CisJfQorCXB1c2hfY2xlYW51cChjdV9jbG9zZXN0cmVhbSwgfjAsIE5VTEwsIDAsIDEsIGYpOworCisJd2hpbGUgKChsID0gZmdldHNfY2hlY2tlZChsaW5lYnVmLCBzaXplb2YobGluZWJ1ZiksIGYsIGZpbGUpKSA+PSAwKSB7CisJCWZvciAoY21kID0gbGluZWJ1ZjsgY2lzc3BhY2UoKmNtZCk7IGNtZCsrKTsKKwkJaWYgKCpjbWQgPT0gJyMnKQorCQkJY29udGludWU7CisJCWZvciAoZW9sID0gbGluZWJ1ZiArIGw7IGVvbCA+IGNtZCAmJiBjaXNzcGFjZShlb2xbLTFdKTsgZW9sLS0pOworCQlpZiAoZW9sID09IGNtZCkKKwkJCWNvbnRpbnVlOworCQkqZW9sID0gJ1wwJzsKKworCQlmb3IgKHNwYyA9IGNtZDsgKnNwYyAmJiAhY2lzc3BhY2UoKnNwYyk7IHNwYysrKTsKKwkJaWYgKCEqc3BjKQorCQkJb2hzaGl0KF8oInRyaWdnZXJzIGNpIGZpbGUgY29udGFpbnMgdW5rbm93biBkaXJlY3RpdmUgc3ludGF4IikpOworCQkqc3BjKysgPSAnXDAnOworCQl3aGlsZSAoY2lzc3BhY2UoKnNwYykpCisJCQlzcGMrKzsKKwkJaWYgKCFzdHJjbXAoY21kLCAiaW50ZXJlc3QiKSkgeworCQkJcGFyc2VfY2lfY2FsbChmaWxlLCBjbWQsIGludGVyZXN0LCBzcGMsIHVzZXIsIHRyaWdfYXdhaXQpOworCQl9IGVsc2UgaWYgKCFzdHJjbXAoY21kLCAiaW50ZXJlc3Qtbm9hd2FpdCIpKSB7CisJCQlwYXJzZV9jaV9jYWxsKGZpbGUsIGNtZCwgaW50ZXJlc3QsIHNwYywgdXNlciwgdHJpZ19ub2F3YWl0KTsKKwkJfSBlbHNlIGlmICghc3RyY21wKGNtZCwgImFjdGl2YXRlIikpIHsKKwkJCXBhcnNlX2NpX2NhbGwoZmlsZSwgY21kLCBhY3RpdmF0ZSwgc3BjLCB1c2VyLCB0cmlnX2F3YWl0KTsKKwkJfSBlbHNlIGlmICghc3RyY21wKGNtZCwgImFjdGl2YXRlLW5vYXdhaXQiKSkgeworCQkJcGFyc2VfY2lfY2FsbChmaWxlLCBjbWQsIGFjdGl2YXRlLCBzcGMsIHVzZXIsIHRyaWdfbm9hd2FpdCk7CisJCX0gZWxzZSB7CisJCQlvaHNoaXQoXygidHJpZ2dlcnMgY2kgZmlsZSBjb250YWlucyB1bmtub3duIGRpcmVjdGl2ZSBgJS4yNTBzJyIpLAorCQkJICAgICAgIGNtZCk7CisJCX0KKwl9CisJcG9wX2NsZWFudXAoZWhmbGFnX25vcm1hbHRpZHkpOyAvKiBmY2xvc2UoKSAqLworfQorCisvKi0tLS0tLS0tLS0gVW5pbmNvcnAgZmlsZSBpbmNvcnBvcmF0aW9uLiAtLS0tLS0tLS0tKi8KKworc3RhdGljIHZvaWQKK3RkbV9pbmNvcnBfdHJpZ19iZWdpbihjb25zdCBjaGFyICp0cmlnKQoreworCXRyaWdfYWN0aXZhdGVfc3RhcnQodHJpZyk7Cit9CisKK3N0YXRpYyB2b2lkCit0ZG1faW5jb3JwX3BhY2thZ2UoY29uc3QgY2hhciAqYXduYW1lKQoreworCXN0cnVjdCBwa2dpbmZvICphdyA9IHN0cmNtcChhd25hbWUsICItIikgPyBwa2dfZGJfZmluZChhd25hbWUpIDogTlVMTDsKKworCWR0a2ktPmFjdGl2YXRlX2F3YWl0ZXIoYXcpOworfQorCitzdGF0aWMgdm9pZAordGRtX2luY29ycF90cmlnX2VuZCh2b2lkKQoreworCWR0a2ktPmFjdGl2YXRlX2RvbmUoKTsKK30KKworc3RhdGljIGNvbnN0IHN0cnVjdCB0cmlnZGVmbWV0aHMgdGRtX2luY29ycCA9IHsKKwkudHJpZ19iZWdpbiA9IHRkbV9pbmNvcnBfdHJpZ19iZWdpbiwKKwkucGFja2FnZSA9IHRkbV9pbmNvcnBfcGFja2FnZSwKKwkudHJpZ19lbmQgPSB0ZG1faW5jb3JwX3RyaWdfZW5kCit9OworCit2b2lkCit0cmlnX2luY29ycG9yYXRlKGVudW0gbW9kc3RhdGRiX3J3IGNzdGF0dXMpCit7CisJZW51bSB0cmlnZGVmX3VwZGF0ZV9zdGF0dXMgdXI7CisJZW51bSB0cmlnZGVmX3VwZGF0ZWZsYWdzIHRkdWY7CisKKwlmcmVlKHRyaWdnZXJzZGlyKTsKKwl0cmlnZ2Vyc2RpciA9IGRwa2dfZGJfZ2V0X3BhdGgoVFJJR0dFUlNESVIpOworCisJZnJlZSh0cmlnZ2Vyc2ZpbGVmaWxlKTsKKwl0cmlnZ2Vyc2ZpbGVmaWxlID0gdHJpZ19nZXRfZmlsZW5hbWUodHJpZ2dlcnNkaXIsICJGaWxlIik7CisKKwlmcmVlKHRyaWdnZXJzbmV3ZmlsZWZpbGUpOworCXRyaWdnZXJzbmV3ZmlsZWZpbGUgPSB0cmlnX2dldF9maWxlbmFtZSh0cmlnZ2Vyc2RpciwgIkZpbGUubmV3Iik7CisKKwl0cmlnZGVmX3NldF9tZXRob2RzKCZ0ZG1faW5jb3JwKTsKKwl0cmlnX2ZpbGVfaW50ZXJlc3RzX2Vuc3VyZSgpOworCisJdGR1ZiA9IHRkdWZfbm9sb2Nrb2s7CisJaWYgKGNzdGF0dXMgPj0gbXNkYnJ3X3dyaXRlKSB7CisJCXRkdWYgfD0gdGR1Zl93cml0ZTsKKwkJaWYgKHRyaWdoLnRyYW5zaXRpb25hbF9hY3RpdmF0ZSkKKwkJCXRkdWYgfD0gdGR1Zl93cml0ZWlmZW5vZW50OworCX0KKworCXVyID0gdHJpZ2RlZl91cGRhdGVfc3RhcnQodGR1Zik7CisJaWYgKHVyID09IHRkdXNfZXJyb3Jfbm9fZGlyICYmIGNzdGF0dXMgPj0gbXNkYnJ3X3dyaXRlKSB7CisJCWlmIChta2Rpcih0cmlnZ2Vyc2RpciwgMDc1NSkpIHsKKwkJCWlmIChlcnJubyAhPSBFRVhJU1QpCisJCQkJb2hzaGl0ZShfKCJ1bmFibGUgdG8gY3JlYXRlIHRyaWdnZXJzIHN0YXRlIgorCQkJCSAgICAgICAgICAiIGRpcmVjdG9yeSBgJS4yNTBzJyIpLCB0cmlnZ2Vyc2Rpcik7CisJCX0gZWxzZSBpZiAoY2hvd24odHJpZ2dlcnNkaXIsIDAsIDApKSB7CisJCQlvaHNoaXRlKF8oInVuYWJsZSB0byBzZXQgb3duZXJzaGlwIG9mIHRyaWdnZXJzIHN0YXRlIgorCQkJICAgICAgICAgICIgZGlyZWN0b3J5IGAlLjI1MHMnIiksIHRyaWdnZXJzZGlyKTsKKwkJfQorCQl1ciA9IHRyaWdkZWZfdXBkYXRlX3N0YXJ0KHRkdWYpOworCX0KKwlzd2l0Y2ggKHVyKSB7CisJY2FzZSB0ZHVzX2Vycm9yX2VtcHR5X2RlZmVycmVkOgorCQlyZXR1cm47CisJY2FzZSB0ZHVzX2Vycm9yX25vX2RpcjoKKwljYXNlIHRkdXNfZXJyb3Jfbm9fZGVmZXJyZWQ6CisJCWlmICghdHJpZ2gudHJhbnNpdGlvbmFsX2FjdGl2YXRlKQorCQkJcmV0dXJuOworCS8qIEZhbGwgdGhyb3VnaC4gKi8KKwljYXNlIHRkdXNfbm9fZGVmZXJyZWQ6CisJCXRyaWdoLnRyYW5zaXRpb25hbF9hY3RpdmF0ZShjc3RhdHVzKTsKKwkJYnJlYWs7CisJY2FzZSB0ZHVzX29rOgorCQkvKiBSZWFkIGFuZCBpbmNvcnBvcmF0ZSB0cmlnZ2Vycy4gKi8KKwkJdHJpZ2RlZl9wYXJzZSgpOworCQlicmVhazsKKwlkZWZhdWx0OgorCQlpbnRlcm5lcnIoInVua25vd24gdHJpZ2RlZl91cGRhdGVfc3RhcnQgcmV0dXJuIHZhbHVlICclZCciLCB1cik7CisJfQorCisJLyogUmlnaHQsIHRoYXQncyBpdC4gTmV3IChlbXB0eSkgVW5pbmNvcnAgY2FuIGJlIGluc3RhbGxlZC4gKi8KKwl0cmlnZGVmX3Byb2Nlc3NfZG9uZSgpOworfQorCisvKi0tLS0tLS0tLS0gRGVmYXVsdCBob29rcy4gLS0tLS0tLS0tLSovCisKK3N0cnVjdCBmaWxlbmFtZW5vZGUgeworCXN0cnVjdCBmaWxlbmFtZW5vZGUgKm5leHQ7CisJY29uc3QgY2hhciAqbmFtZTsKKwlzdHJ1Y3QgdHJpZ2ZpbGVpbnQgKnRyaWdfaW50ZXJlc3RlZDsKK307CisKK3N0YXRpYyBzdHJ1Y3QgZmlsZW5hbWVub2RlICp0cmlnZ2VyX2ZpbGVzOworCitzdGF0aWMgc3RydWN0IGZpbGVuYW1lbm9kZSAqCit0aF9zaW1wbGVfbm5fZmluZChjb25zdCBjaGFyICpuYW1lLCBib29sIG5vbmV3KQoreworCXN0cnVjdCBmaWxlbmFtZW5vZGUgKnNlYXJjaDsKKworCWZvciAoc2VhcmNoID0gdHJpZ2dlcl9maWxlczsgc2VhcmNoOyBzZWFyY2ggPSBzZWFyY2gtPm5leHQpCisJCWlmICghc3RyY21wKHNlYXJjaC0+bmFtZSwgbmFtZSkpCisJCQlyZXR1cm4gc2VhcmNoOworCisJLyogTm90IGZvdW5kLiAqLworCWlmIChub25ldykKKwkJcmV0dXJuIE5VTEw7CisKKwlzZWFyY2ggPSBuZm1hbGxvYyhzaXplb2YoKnNlYXJjaCkpOworCXNlYXJjaC0+bmFtZSA9IG5mc3Ryc2F2ZShuYW1lKTsKKwlzZWFyY2gtPnRyaWdfaW50ZXJlc3RlZCA9IE5VTEw7CisJc2VhcmNoLT5uZXh0ID0gdHJpZ2dlcl9maWxlczsKKwl0cmlnZ2VyX2ZpbGVzID0gc2VhcmNoOworCisJcmV0dXJuIHNlYXJjaDsKK30KKworVFJJR0hPT0tTX0RFRklORV9OQU1FTk9ERV9BQ0NFU1NPUlMKKworc3RhdGljIHN0cnVjdCB0cmlnX2hvb2tzIHRyaWdoID0geworCS5lbnF1ZXVlX2RlZmVycmVkID0gTlVMTCwKKwkudHJhbnNpdGlvbmFsX2FjdGl2YXRlID0gTlVMTCwKKwkubmFtZW5vZGVfZmluZCA9IHRoX3NpbXBsZV9ubl9maW5kLAorCS5uYW1lbm9kZV9pbnRlcmVzdGVkID0gdGhfbm5faW50ZXJlc3RlZCwKKwkubmFtZW5vZGVfbmFtZSA9IHRoX25uX25hbWUsCit9OworCit2b2lkCit0cmlnX292ZXJyaWRlX2hvb2tzKGNvbnN0IHN0cnVjdCB0cmlnX2hvb2tzICpob29rcykKK3sKKwl0cmlnaCA9ICpob29rczsKK30KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvdHJpZ2xpYi5oIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy90cmlnbGliLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjg3MDk1MwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvdHJpZ2xpYi5oCkBAIC0wLDAgKzEsMTA5IEBACisvKgorICogbGliZHBrZyAtIERlYmlhbiBwYWNrYWdpbmcgc3VpdGUgbGlicmFyeSByb3V0aW5lcworICogdHJpZ2xpYi5oIC0gZGVjbGFyYXRpb25zIGZvciB0cmlnZ2VyIGhhbmRsaW5nCisgKgorICogQ29weXJpZ2h0IMKpIDIwMDcgQ2Fub25pY2FsLCBMdGQuCisgKiAgIHdyaXR0ZW4gYnkgSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuZ3JlZW5lbmQub3JnLnVrPgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaWZuZGVmIExJQkRQS0dfVFJJR0xJQl9ICisjZGVmaW5lIExJQkRQS0dfVFJJR0xJQl9ICisKKyNpbmNsdWRlIDxkcGtnL21hY3Jvcy5oPgorI2luY2x1ZGUgPGRwa2cvZHBrZy1kYi5oPgorCitEUEtHX0JFR0lOX0RFQ0xTCisKKy8qCisgKiBIb29rcyBmb3IgbW9yZSBzb3BoaXN0aWNhdGVkIHByb2Nlc3NpbmcgaW4gZHBrZyBwcm9wZXIuCisgKgorICogV2UgZG8gdGhpbmdzIGxpa2UgdGhpcyBzbyB3ZSBjYW4gZ2V0IG1vc3Qgb2YgdGhlIHRyaWdnZXIgdHJhY2tpbmcKKyAqIGluIGRwa2ctcXVlcnksIGRzZWxlY3QsIGFuZCBzbyBvbiwgYnV0IGF2b2lkIHRoZSB0cmFuc2l0aW9uYWwKKyAqIHByb2Nlc3NpbmcgYW5kIGRlZmVycmVkIHRyaWdwcm9jIHF1ZXVlIG1hbmFnZW1lbnQgb3RoZXIgdGhhbiB3aGVuCisgKiB3ZSdyZSBhY3R1YWxseSBkb2luZyByZWFsIHBhY2thZ2UgbWFuYWdlbWVudCB3b3JrLgorICovCisKK2NvbnN0IGNoYXIgKnRyaWdfbmFtZV9pc19pbGxlZ2FsKGNvbnN0IGNoYXIgKnApOworCitlbnVtIHRyaWdfb3B0aW9ucyB7CisJdHJpZ19hd2FpdCwKKwl0cmlnX25vYXdhaXQKK307CisKK3N0cnVjdCB0cmlnZmlsZWludCB7CisJc3RydWN0IHBrZ2luZm8gKnBrZzsKKwlzdHJ1Y3QgZmlsZW5hbWVub2RlICpmbm47CisJZW51bSB0cmlnX29wdGlvbnMgb3B0aW9uczsKKwlzdHJ1Y3QgdHJpZ2ZpbGVpbnQgKnNhbWVmaWxlX25leHQ7CisJc3RydWN0IHsKKwkJc3RydWN0IHRyaWdmaWxlaW50ICpuZXh0LCAqcHJldjsKKwl9IGlub3ZlcmFsbDsKK307CisKKy8qIFRoZSBmaXJzdCB0d28gaG9va3MgYXJlIG5vcm1hbGx5IE5VTEwuCisgKiBJZiBub24tTlVMTCwgd2UncmUgZHBrZyBwcm9wZXIgYW5kIHdlIG1pZ2h0IG5lZWQgdG8gaW52ZW50IHRyaWdnZXIKKyAqIGFjdGl2YXRpb25zIGFzIHRoZSBmaXJzdCBydW4gb2YgYSB0cmlnZ2Vycy1zdXBwb3J0aW5nIGRwa2cuICovCitzdHJ1Y3QgdHJpZ19ob29rcyB7CisJdm9pZCAoKmVucXVldWVfZGVmZXJyZWQpKHN0cnVjdCBwa2dpbmZvICpwZW5kKTsKKwl2b2lkICgqdHJhbnNpdGlvbmFsX2FjdGl2YXRlKShlbnVtIG1vZHN0YXRkYl9ydyBjc3RhdHVzKTsKKworCXN0cnVjdCBmaWxlbmFtZW5vZGUgKigqbmFtZW5vZGVfZmluZCkoY29uc3QgY2hhciAqZmlsZW5hbWUsIGJvb2wgbm9uZXcpOworCXN0cnVjdCB0cmlnZmlsZWludCAqKigqbmFtZW5vZGVfaW50ZXJlc3RlZCkoc3RydWN0IGZpbGVuYW1lbm9kZSAqZm5uKTsKKworCS8qIFJldHVybnMgYSBwb2ludGVyIGZyb20gbmZtYWxsb2MuICovCisJY29uc3QgY2hhciAqKCpuYW1lbm9kZV9uYW1lKShzdHJ1Y3QgZmlsZW5hbWVub2RlICpmbm4pOworfTsKKworI2RlZmluZSBUUklHSE9PS1NfREVGSU5FX05BTUVOT0RFX0FDQ0VTU09SUwkJCQkgXAorICBzdGF0aWMgc3RydWN0IHRyaWdmaWxlaW50ICoqdGhfbm5faW50ZXJlc3RlZChzdHJ1Y3QgZmlsZW5hbWVub2RlICpmbm4pIFwKKyAgICB7IHJldHVybiAmZm5uLT50cmlnX2ludGVyZXN0ZWQ7IH0JCQkJCSBcCisgIHN0YXRpYyBjb25zdCBjaGFyICp0aF9ubl9uYW1lKHN0cnVjdCBmaWxlbmFtZW5vZGUgKmZubikJCSBcCisgICAgeyByZXR1cm4gZm5uLT5uYW1lOyB9CisKK3ZvaWQgdHJpZ19vdmVycmlkZV9ob29rcyhjb25zdCBzdHJ1Y3QgdHJpZ19ob29rcyAqaG9va3MpOworCit2b2lkIHRyaWdfZmlsZV9hY3RpdmF0ZV9ieW5hbWUoY29uc3QgY2hhciAqdHJpZywgc3RydWN0IHBrZ2luZm8gKmF3KTsKK3ZvaWQgdHJpZ19maWxlX2FjdGl2YXRlKHN0cnVjdCBmaWxlbmFtZW5vZGUgKnRyaWcsIHN0cnVjdCBwa2dpbmZvICphdyk7CisKK2Jvb2wgdHJpZ19ub3RlX3BlbmRfY29yZShzdHJ1Y3QgcGtnaW5mbyAqcGVuZCwgY29uc3QgY2hhciAqdHJpZyAvKm5vdCBjb3BpZWQhKi8pOworYm9vbCB0cmlnX25vdGVfcGVuZChzdHJ1Y3QgcGtnaW5mbyAqcGVuZCwgY29uc3QgY2hhciAqdHJpZyAvKm5vdCBjb3BpZWQhKi8pOworYm9vbCB0cmlnX25vdGVfYXcoc3RydWN0IHBrZ2luZm8gKnBlbmQsIHN0cnVjdCBwa2dpbmZvICphdyk7Cit2b2lkIHRyaWdfY2xlYXJfYXdhaXRlcnMoc3RydWN0IHBrZ2luZm8gKm5vdHBlbmQpOworCit0eXBlZGVmIHZvaWQgdHJpZ19hd2FpdGVkX3BlbmRfZm9yZWFjaF9mdW5jKHN0cnVjdCBwa2dpbmZvICpwa2cpOworCit2b2lkIHRyaWdfYXdhaXRlZF9wZW5kX2VucXVldWUoc3RydWN0IHBrZ2luZm8gKnBlbmQpOwordm9pZCB0cmlnX2F3YWl0ZWRfcGVuZF9mb3JlYWNoKHRyaWdfYXdhaXRlZF9wZW5kX2ZvcmVhY2hfZnVuYyAqZnVuYyk7Cit2b2lkIHRyaWdfYXdhaXRlZF9wZW5kX2ZyZWUodm9pZCk7CisKK3ZvaWQgdHJpZ19maXh1cF9hd2FpdGVycyhlbnVtIG1vZHN0YXRkYl9ydyBjc3RhdHVzKTsKKwordm9pZCB0cmlnX2ZpbGVfaW50ZXJlc3RzX2Vuc3VyZSh2b2lkKTsKK3ZvaWQgdHJpZ19maWxlX2ludGVyZXN0c19zYXZlKHZvaWQpOworCit0eXBlZGVmIHZvaWQgdHJpZ19wYXJzZV9jaWNiKGNvbnN0IGNoYXIgKnRyaWcsIHZvaWQgKnVzZXIsIGVudW0gdHJpZ19vcHRpb25zIHRvKTsKK3ZvaWQgdHJpZ19jaWNiX2ludGVyZXN0X2RlbGV0ZShjb25zdCBjaGFyICp0cmlnLCB2b2lkICp1c2VyLCBlbnVtIHRyaWdfb3B0aW9ucyB0byk7Cit2b2lkIHRyaWdfY2ljYl9pbnRlcmVzdF9hZGQoY29uc3QgY2hhciAqdHJpZywgdm9pZCAqdXNlciwgZW51bSB0cmlnX29wdGlvbnMgdG8pOwordm9pZCB0cmlnX2NpY2Jfc3RhdHVzY2hhbmdlX2FjdGl2YXRlKGNvbnN0IGNoYXIgKnRyaWcsIHZvaWQgKnVzZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW51bSB0cmlnX29wdGlvbnMgdG8pOwordm9pZCB0cmlnX3BhcnNlX2NpKGNvbnN0IGNoYXIgKmZpbGUsIHRyaWdfcGFyc2VfY2ljYiAqaW50ZXJlc3QsCisgICAgICAgICAgICAgICAgICAgdHJpZ19wYXJzZV9jaWNiICphY3RpdmF0ZSwgdm9pZCAqdXNlcik7CisKK3ZvaWQgdHJpZ19pbmNvcnBvcmF0ZShlbnVtIG1vZHN0YXRkYl9ydyBjc3RhdHVzKTsKKworRFBLR19FTkRfREVDTFMKKworI2VuZGlmIC8qIExJQkRQS0dfVFJJR0xJQl9IICovCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL3RyaWduYW1lLmMgYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL3RyaWduYW1lLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uN2ZkODhjZgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvdHJpZ25hbWUuYwpAQCAtMCwwICsxLDQyIEBACisvKgorICogbGliZHBrZyAtIERlYmlhbiBwYWNrYWdpbmcgc3VpdGUgbGlicmFyeSByb3V0aW5lcworICogdHJpZ25hbWUuYyAtIHRyaWdnZXIgbmFtZSBoYW5kbGluZworICoKKyAqIENvcHlyaWdodCDCqSAyMDA3IENhbm9uaWNhbCBMdGQKKyAqIFdyaXR0ZW4gYnkgSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuZ3JlZW5lbmQub3JnLnVrPgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaW5jbHVkZSA8Y29uZmlnLmg+CisjaW5jbHVkZSA8Y29tcGF0Lmg+CisKKyNpbmNsdWRlIDxkcGtnL2kxOG4uaD4KKyNpbmNsdWRlIDxkcGtnL3RyaWdsaWIuaD4KKworY29uc3QgY2hhciAqCit0cmlnX25hbWVfaXNfaWxsZWdhbChjb25zdCBjaGFyICpwKQoreworCWludCBjOworCisJaWYgKCEqcCkKKwkJcmV0dXJuIF8oImVtcHR5IHRyaWdnZXIgbmFtZXMgYXJlIG5vdCBwZXJtaXR0ZWQiKTsKKworCXdoaWxlICgoYyA9ICpwKyspKSB7CisJCWlmIChjIDw9ICcgJyB8fCBjID49IDAxNzcpCisJCQlyZXR1cm4gXygidHJpZ2dlciBuYW1lIGNvbnRhaW5zIGludmFsaWQgY2hhcmFjdGVyIik7CisJfQorCisJcmV0dXJuIE5VTEw7Cit9CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL3RyaWdub3RlLmMgYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL3RyaWdub3RlLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjY4MWViNgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvdHJpZ25vdGUuYwpAQCAtMCwwICsxLDEyOCBAQAorLyoKKyAqIGxpYmRwa2cgLSBEZWJpYW4gcGFja2FnaW5nIHN1aXRlIGxpYnJhcnkgcm91dGluZXMKKyAqIHRyaWdub3RlLmMgLSB0cmlnZ2VyIG5vdGUgaGFuZGxpbmcKKyAqCisgKiBDb3B5cmlnaHQgwqkgMjAwNyBDYW5vbmljYWwgTHRkCisgKiBXcml0dGVuIGJ5IElhbiBKYWNrc29uIDxpYW5AY2hpYXJrLmdyZWVuZW5kLm9yZy51az4KKyAqIENvcHlyaWdodCDCqSAyMDA4LTIwMTEgR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaW5jbHVkZSA8Y29uZmlnLmg+CisjaW5jbHVkZSA8Y29tcGF0Lmg+CisKKyNpbmNsdWRlIDxkcGtnL2Rwa2cuaD4KKyNpbmNsdWRlIDxkcGtnL2Rwa2ctZGIuaD4KKyNpbmNsdWRlIDxkcGtnL3BrZy1saXN0Lmg+CisjaW5jbHVkZSA8ZHBrZy9kbGlzdC5oPgorI2luY2x1ZGUgPGRwa2cvdHJpZ2xpYi5oPgorCisvKgorICogTm90ZTogVGhpcyBpcyBhbHNvIGNhbGxlZCBmcm9tIGZpZWxkcy5jIHdoZXJlICpwZW5kIGlzIGEgdGVtcG9yYXJ5IQorICoKKyAqIHRyaWcgaXMgbm90IGNvcGllZCEKKyAqLworYm9vbAordHJpZ19ub3RlX3BlbmRfY29yZShzdHJ1Y3QgcGtnaW5mbyAqcGVuZCwgY29uc3QgY2hhciAqdHJpZykKK3sKKwlzdHJ1Y3QgdHJpZ3BlbmQgKnRwOworCisJZm9yICh0cCA9IHBlbmQtPnRyaWdwZW5kX2hlYWQ7IHRwOyB0cCA9IHRwLT5uZXh0KQorCQlpZiAoIXN0cmNtcCh0cC0+bmFtZSwgdHJpZykpCisJCQlyZXR1cm4gZmFsc2U7CisKKwl0cCA9IG5mbWFsbG9jKHNpemVvZigqdHApKTsKKwl0cC0+bmFtZSA9IHRyaWc7CisJdHAtPm5leHQgPSBwZW5kLT50cmlncGVuZF9oZWFkOworCXBlbmQtPnRyaWdwZW5kX2hlYWQgPSB0cDsKKworCXJldHVybiB0cnVlOworfQorCisvKgorICogdHJpZyBpcyBub3QgY29waWVkIQorICoKKyAqIEByZXR2YWwgdHJ1ZSAgRm9yIGRvbmUuCisgKiBAcmV0dmFsIGZhbHNlIEZvciBhbHJlYWR5IG5vdGVkLgorICovCitib29sCit0cmlnX25vdGVfcGVuZChzdHJ1Y3QgcGtnaW5mbyAqcGVuZCwgY29uc3QgY2hhciAqdHJpZykKK3sKKwlpZiAoIXRyaWdfbm90ZV9wZW5kX2NvcmUocGVuZCwgdHJpZykpCisJCXJldHVybiBmYWxzZTsKKworCXBlbmQtPnN0YXR1cyA9IHBlbmQtPnRyaWdhdy5oZWFkID8gc3RhdF90cmlnZ2Vyc2F3YWl0ZWQgOgorCSAgICAgICAgICAgICAgIHN0YXRfdHJpZ2dlcnNwZW5kaW5nOworCisJcmV0dXJuIHRydWU7Cit9CisKKy8qCisgKiBOb3RlOiBUaGlzIGlzIGNhbGxlZCBhbHNvIGZyb20gZmllbGRzLmMgd2hlcmUgKmF3IGlzIGEgdGVtcG9yYXJ5CisgKiBidXQgcGVuZCBpcyBmcm9tIHBrZ19kYl9maW5kKCkhCisgKgorICogQHJldHZhbCB0cnVlICBGb3IgZG9uZS4KKyAqIEByZXR2YWwgZmFsc2UgRm9yIGFscmVhZHkgbm90ZWQuCisgKi8KK2Jvb2wKK3RyaWdfbm90ZV9hdyhzdHJ1Y3QgcGtnaW5mbyAqcGVuZCwgc3RydWN0IHBrZ2luZm8gKmF3KQoreworCXN0cnVjdCB0cmlnYXcgKnRhOworCisJLyogV2Ugc2VhcmNoIHRocm91Z2ggYXcncyBsaXN0IGJlY2F1c2UgdGhhdCdzIHByb2JhYmx5IHNob3J0ZXIuICovCisJZm9yICh0YSA9IGF3LT50cmlnYXcuaGVhZDsgdGE7IHRhID0gdGEtPnNhbWVhdy5uZXh0KQorCQlpZiAodGEtPnBlbmQgPT0gcGVuZCkKKwkJCXJldHVybiBmYWxzZTsKKworCXRhID0gbmZtYWxsb2Moc2l6ZW9mKCp0YSkpOworCXRhLT5hdyA9IGF3OworCXRhLT5wZW5kID0gcGVuZDsKKwl0YS0+c2FtZXBlbmRfbmV4dCA9IHBlbmQtPm90aGVydHJpZ2F3X2hlYWQ7CisJcGVuZC0+b3RoZXJ0cmlnYXdfaGVhZCA9IHRhOworCUxJU1RfTElOS19UQUlMX1BBUlQoYXctPnRyaWdhdywgdGEsIHNhbWVhdy4pOworCisJcmV0dXJuIHRydWU7Cit9CisKK3N0YXRpYyBzdHJ1Y3QgcGtnX2xpc3QgKnRyaWdfYXdhaXRlZF9wZW5kX2hlYWQ7CisKK3ZvaWQKK3RyaWdfYXdhaXRlZF9wZW5kX2VucXVldWUoc3RydWN0IHBrZ2luZm8gKnBlbmQpCit7CisJc3RydWN0IHBrZ19saXN0ICp0cDsKKworCWZvciAodHAgPSB0cmlnX2F3YWl0ZWRfcGVuZF9oZWFkOyB0cDsgdHAgPSB0cC0+bmV4dCkKKwkJaWYgKHRwLT5wa2cgPT0gcGVuZCkKKwkJCXJldHVybjsKKworCXBrZ19saXN0X3ByZXBlbmQoJnRyaWdfYXdhaXRlZF9wZW5kX2hlYWQsIHBlbmQpOworfQorCit2b2lkCit0cmlnX2F3YWl0ZWRfcGVuZF9mb3JlYWNoKHRyaWdfYXdhaXRlZF9wZW5kX2ZvcmVhY2hfZnVuYyAqZnVuYykKK3sKKwlzdHJ1Y3QgcGtnX2xpc3QgKnRwOworCisJZm9yICh0cCA9IHRyaWdfYXdhaXRlZF9wZW5kX2hlYWQ7IHRwOyB0cCA9IHRwLT5uZXh0KQorCQlpZiAoIXRwLT5wa2ctPnRyaWdwZW5kX2hlYWQpCisJCQlmdW5jKHRwLT5wa2cpOworfQorCit2b2lkCit0cmlnX2F3YWl0ZWRfcGVuZF9mcmVlKHZvaWQpCit7CisJcGtnX2xpc3RfZnJlZSh0cmlnX2F3YWl0ZWRfcGVuZF9oZWFkKTsKKwl0cmlnX2F3YWl0ZWRfcGVuZF9oZWFkID0gTlVMTDsKK30KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvdXRpbHMuYyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvdXRpbHMuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wZWI3NjQ1Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy91dGlscy5jCkBAIC0wLDAgKzEsNzggQEAKKy8qCisgKiBsaWJkcGtnIC0gRGViaWFuIHBhY2thZ2luZyBzdWl0ZSBsaWJyYXJ5IHJvdXRpbmVzCisgKiB1dGlscy5jIC0gSGVscGVyIGZ1bmN0aW9ucyBmb3IgZHBrZworICoKKyAqIENvcHlyaWdodCDCqSAyMDAxIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisgKgorICogVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisgKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdmVyc2lvbiAyIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMKKyAqIExpY2Vuc2UgdmVyc2lvbiAyIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaW5jbHVkZSA8Y29uZmlnLmg+CisjaW5jbHVkZSA8Y29tcGF0Lmg+CisKKyNpbmNsdWRlIDxzdHJpbmcuaD4KKworI2luY2x1ZGUgPGRwa2cvaTE4bi5oPgorI2luY2x1ZGUgPGRwa2cvZHBrZy5oPgorCisvKgorICogUmVpbXBsZW1lbnRhdGlvbiBvZiB0aGUgc3RhbmRhcmQgY3R5cGUuaCBpcyogZnVuY3Rpb25zLiBTaW5jZSBnZXR0ZXh0CisgKiBoYXMgb3ZlcmxvYWRlZCB0aGUgbWVhbmluZyBvZiBMQ19DVFlQRSB3ZSBjYW4ndCB1c2UgdGhhdCB0byBmb3JjZSBDCisgKiBsb2NhbGUsIHNvIHVzZSB0aGVzZSBjaXMqIGZ1bmN0aW9ucyBpbnN0ZWFkLgorICovCisKKworaW50IGNpc2RpZ2l0KGludCBjKSB7CisJcmV0dXJuIChjPj0nMCcpICYmIChjPD0nOScpOworfQorCitpbnQgY2lzYWxwaGEoaW50IGMpIHsKKwlyZXR1cm4gKChjPj0nYScpICYmIChjPD0neicpKSB8fCAoKGM+PSdBJykgJiYgKGM8PSdaJykpOworfQorCitpbnQKK2Npc3NwYWNlKGludCBjKQoreworCXJldHVybiAoYyA9PSAnXG4nIHx8IGMgPT0gJ1x0JyB8fCBjID09ICcgJyk7Cit9CisKK2ludAorZmdldHNfY2hlY2tlZChjaGFyICpidWYsIHNpemVfdCBidWZzeiwgRklMRSAqZiwgY29uc3QgY2hhciAqZm4pCit7CisJaW50IGw7CisKKwlpZiAoIWZnZXRzKGJ1ZiwgYnVmc3osIGYpKSB7CisJCWlmIChmZXJyb3IoZikpCisJCQlvaHNoaXRlKF8oInJlYWQgZXJyb3IgaW4gYCUuMjUwcyciKSwgZm4pOworCQlyZXR1cm4gLTE7CisJfQorCWwgPSBzdHJsZW4oYnVmKTsKKwlpZiAobCA9PSAwKQorCQlvaHNoaXQoXygiZmdldHMgZ2F2ZSBhbiBlbXB0eSBzdHJpbmcgZnJvbSBgJS4yNTBzJyIpLCBmbik7CisJaWYgKGJ1ZlstLWxdICE9ICdcbicpCisJCW9oc2hpdChfKCJ0b28tbG9uZyBsaW5lIG9yIG1pc3NpbmcgbmV3bGluZSBpbiBgJS4yNTBzJyIpLCBmbik7CisJYnVmW2xdID0gJ1wwJzsKKworCXJldHVybiBsOworfQorCitpbnQKK2ZnZXRzX211c3QoY2hhciAqYnVmLCBzaXplX3QgYnVmc3osIEZJTEUgKmYsIGNvbnN0IGNoYXIgKmZuKQoreworCWludCBsID0gZmdldHNfY2hlY2tlZChidWYsIGJ1ZnN6LCBmLCBmbik7CisKKwlpZiAobCA8IDApCisJCW9oc2hpdChfKCJ1bmV4cGVjdGVkIGVvZiByZWFkaW5nIGAlLjI1MHMnIiksIGZuKTsKKworCXJldHVybiBsOworfQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy92YXJidWYuYyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvdmFyYnVmLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNTc1ZTVhYQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvdmFyYnVmLmMKQEAgLTAsMCArMSwxNjggQEAKKy8qCisgKiBsaWJkcGtnIC0gRGViaWFuIHBhY2thZ2luZyBzdWl0ZSBsaWJyYXJ5IHJvdXRpbmVzCisgKiB2YXJidWYuYyAtIHZhcmlhYmxlIGxlbmd0aCBleHBhbmRhYmxlIGJ1ZmZlciBoYW5kbGluZworICoKKyAqIENvcHlyaWdodCDCqSAxOTk0LDE5OTUgSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuZ3JlZW5lbmQub3JnLnVrPgorICogQ29weXJpZ2h0IMKpIDIwMDgtMjAxMSBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CisgKgorICogVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisgKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAqIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorICovCisKKyNpbmNsdWRlIDxjb25maWcuaD4KKyNpbmNsdWRlIDxjb21wYXQuaD4KKworI2luY2x1ZGUgPHN0cmluZy5oPgorI2luY2x1ZGUgPHN0ZGxpYi5oPgorI2luY2x1ZGUgPHN0ZGlvLmg+CisKKyNpbmNsdWRlIDxkcGtnL2kxOG4uaD4KKyNpbmNsdWRlIDxkcGtnL2Rwa2cuaD4KKyNpbmNsdWRlIDxkcGtnL2Rwa2ctZGIuaD4KKwordm9pZAordmFyYnVmX2FkZF9jaGFyKHN0cnVjdCB2YXJidWYgKnYsIGludCBjKQoreworICB2YXJidWZfZ3Jvdyh2LCAxKTsKKyAgdi0+YnVmW3YtPnVzZWQrK109IGM7Cit9CisKK3ZvaWQKK3ZhcmJ1Zl9kdXBfY2hhcihzdHJ1Y3QgdmFyYnVmICp2LCBpbnQgYywgc2l6ZV90IG4pCit7CisgIHZhcmJ1Zl9ncm93KHYsIG4pOworICBtZW1zZXQodi0+YnVmICsgdi0+dXNlZCwgYywgbik7CisgIHYtPnVzZWQgKz0gbjsKK30KKwordm9pZAordmFyYnVmX21hcF9jaGFyKHN0cnVjdCB2YXJidWYgKnYsIGludCBjX3NyYywgaW50IGNfZHN0KQoreworICBzaXplX3QgaTsKKworICBmb3IgKGkgPSAwOyBpIDwgdi0+dXNlZDsgaSsrKQorICAgIGlmICh2LT5idWZbaV0gPT0gY19zcmMpCisgICAgICB2LT5idWZbaV0gPSBjX2RzdDsKK30KKworaW50Cit2YXJidWZfcHJpbnRmKHN0cnVjdCB2YXJidWYgKnYsIGNvbnN0IGNoYXIgKmZtdCwgLi4uKQoreworICBpbnQgcjsKKyAgdmFfbGlzdCBhcmdzOworCisgIHZhX3N0YXJ0KGFyZ3MsIGZtdCk7CisgIHIgPSB2YXJidWZfdnByaW50Zih2LCBmbXQsIGFyZ3MpOworICB2YV9lbmQoYXJncyk7CisKKyAgcmV0dXJuIHI7Cit9CisKK2ludAordmFyYnVmX3ZwcmludGYoc3RydWN0IHZhcmJ1ZiAqdiwgY29uc3QgY2hhciAqZm10LCB2YV9saXN0IGFyZ3MpCit7CisgIHZhX2xpc3QgYXJnc19jb3B5OworICBpbnQgbmVlZGVkLCByOworCisgIHZhX2NvcHkoYXJnc19jb3B5LCBhcmdzKTsKKyAgbmVlZGVkID0gdnNucHJpbnRmKE5VTEwsIDAsIGZtdCwgYXJnc19jb3B5KTsKKyAgdmFfZW5kKGFyZ3NfY29weSk7CisKKyAgaWYgKG5lZWRlZCA8IDApCisgICAgb2hzaGl0ZShfKCJlcnJvciBmb3JtYXR0aW5nIHN0cmluZyBpbnRvIHZhcmJ1ZiB2YXJpYWJsZSIpKTsKKworICB2YXJidWZfZ3Jvdyh2LCBuZWVkZWQgKyAxKTsKKworICByID0gdnNucHJpbnRmKHYtPmJ1ZiArIHYtPnVzZWQsIG5lZWRlZCArIDEsIGZtdCwgYXJncyk7CisgIGlmIChyIDwgMCkKKyAgICBvaHNoaXRlKF8oImVycm9yIGZvcm1hdHRpbmcgc3RyaW5nIGludG8gdmFyYnVmIHZhcmlhYmxlIikpOworCisgIHYtPnVzZWQgKz0gcjsKKworICByZXR1cm4gcjsKK30KKwordm9pZAordmFyYnVmX2FkZF9idWYoc3RydWN0IHZhcmJ1ZiAqdiwgY29uc3Qgdm9pZCAqcywgc2l6ZV90IHNpemUpCit7CisgIHZhcmJ1Zl9ncm93KHYsIHNpemUpOworICBtZW1jcHkodi0+YnVmICsgdi0+dXNlZCwgcywgc2l6ZSk7CisgIHYtPnVzZWQgKz0gc2l6ZTsKK30KKwordm9pZAordmFyYnVmX2VuZF9zdHIoc3RydWN0IHZhcmJ1ZiAqdikKK3sKKyAgdmFyYnVmX2dyb3codiwgMSk7CisgIHYtPmJ1Zlt2LT51c2VkXSA9ICdcMCc7Cit9CisKK3ZvaWQKK3ZhcmJ1Zl9pbml0KHN0cnVjdCB2YXJidWYgKnYsIHNpemVfdCBzaXplKQoreworICB2LT51c2VkID0gMDsKKyAgdi0+c2l6ZSA9IHNpemU7CisgIGlmIChzaXplKQorICAgIHYtPmJ1ZiA9IG1fbWFsbG9jKHNpemUpOworICBlbHNlCisgICAgdi0+YnVmID0gTlVMTDsKK30KKwordm9pZAordmFyYnVmX3Jlc2V0KHN0cnVjdCB2YXJidWYgKnYpCit7CisgIHYtPnVzZWQ9IDA7Cit9CisKK3ZvaWQKK3ZhcmJ1Zl9ncm93KHN0cnVjdCB2YXJidWYgKnYsIHNpemVfdCBuZWVkX3NpemUpCit7CisgIC8qIE1ha2Ugc3VyZSB0aGUgdmFyYnVmIGlzIGluIGEgc2FuZSBzdGF0ZS4gKi8KKyAgaWYgKHYtPnNpemUgPCB2LT51c2VkKQorICAgIGludGVybmVycigiaW5jb25zaXN0ZW50IHZhcmJ1Zjogc2l6ZSglenUpIDwgdXNlZCglenUpIiwgdi0+c2l6ZSwgdi0+dXNlZCk7CisKKyAgLyogQ2hlY2sgaWYgd2UgYWxyZWFkeSBoYXZlIGVub3VnaCByb29tLiAqLworICBpZiAoKHYtPnNpemUgLSB2LT51c2VkKSA+PSBuZWVkX3NpemUpCisgICAgcmV0dXJuOworCisgIHYtPnNpemUgPSAodi0+c2l6ZSArIG5lZWRfc2l6ZSkgKiAyOworICB2LT5idWYgPSBtX3JlYWxsb2Modi0+YnVmLCB2LT5zaXplKTsKK30KKwordm9pZAordmFyYnVmX3RydW5jKHN0cnVjdCB2YXJidWYgKnYsIHNpemVfdCB1c2VkX3NpemUpCit7CisgIC8qIE1ha2Ugc3VyZSB0aGUgY2FsbGVyIGRvZXMgbm90IGNsYWltIG1vcmUgdGhhbiBhdmFpbGFibGUuICovCisgIGlmICh2LT5zaXplIDwgdXNlZF9zaXplKQorICAgIGludGVybmVycigidmFyYnVmOiBjbGFpbWVkIHVzZWQoJXp1KSA+IHNpemUoJXp1KSIsIHYtPnVzZWQsIHYtPnNpemUpOworCisgIHYtPnVzZWQgPSB1c2VkX3NpemU7Cit9CisKK2NoYXIgKgordmFyYnVmX2RldGFjaChzdHJ1Y3QgdmFyYnVmICp2KQoreworICBjaGFyICpidWYgPSB2LT5idWY7CisKKyAgdi0+YnVmID0gTlVMTDsKKyAgdi0+c2l6ZSA9IDA7CisgIHYtPnVzZWQgPSAwOworCisgIHJldHVybiBidWY7Cit9CisKK3ZvaWQKK3ZhcmJ1Zl9kZXN0cm95KHN0cnVjdCB2YXJidWYgKnYpCit7CisgIGZyZWUodi0+YnVmKTsgdi0+YnVmPU5VTEw7IHYtPnNpemU9MDsgdi0+dXNlZD0wOworfQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy92YXJidWYuaCBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvdmFyYnVmLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNTFlMjc2MAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvdmFyYnVmLmgKQEAgLTAsMCArMSwxNDQgQEAKKy8qCisgKiBsaWJkcGtnIC0gRGViaWFuIHBhY2thZ2luZyBzdWl0ZSBsaWJyYXJ5IHJvdXRpbmVzCisgKiB2YXJidWYuaCAtIHZhcmlhYmxlIGxlbmd0aCBleHBhbmRhYmxlIGJ1ZmZlciBoYW5kbGluZworICoKKyAqIENvcHlyaWdodCDCqSAxOTk0LCAxOTk1IElhbiBKYWNrc29uIDxpYW5AY2hpYXJrLmdyZWVuZW5kLm9yZy51az4KKyAqIENvcHlyaWdodCDCqSAyMDA4LTIwMTEgR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaWZuZGVmIExJQkRQS0dfVkFSQlVGX0gKKyNkZWZpbmUgTElCRFBLR19WQVJCVUZfSAorCisjaW5jbHVkZSA8c3RkZGVmLmg+CisjaW5jbHVkZSA8c3RkYXJnLmg+CisKKyNpbmNsdWRlIDxkcGtnL21hY3Jvcy5oPgorCitEUEtHX0JFR0lOX0RFQ0xTCisKKy8qCisgKiB2YXJidWZfaW5pdCBtdXN0IGJlIGNhbGxlZCBleGFjdGx5IG9uY2UgYmVmb3JlIHRoZSB1c2Ugb2YgZWFjaCB2YXJidWYKKyAqIChpbmNsdWRpbmcgYmVmb3JlIGFueSBjYWxsIHRvIHZhcmJ1Zl9kZXN0cm95KSwgb3IgdGhlIHZhcmlhYmxlIG11c3QgYmUKKyAqIGluaXRpYWxpemVkIHdpdGggVkFSQlVGX0lOSVQuCisgKgorICogSG93ZXZlciwgdmFyYnVmcyBhbGxvY2F0ZWQg4oCYc3RhdGlj4oCZIGFyZSBwcm9wZXJseSBpbml0aWFsaXplZCBhbnl3YXkgYW5kCisgKiBkbyBub3QgbmVlZCB2YXJidWZfaW5pdDsgbXVsdGlwbGUgY29uc2VjdXRpdmUgY2FsbHMgdG8gdmFyYnVmX2luaXQgYmVmb3JlCisgKiBhbnkgdXNlIGFyZSBhbGxvd2VkLgorICoKKyAqIHZhcmJ1Zl9kZXN0cm95IG11c3QgYmUgY2FsbGVkIGFmdGVyIGEgdmFyYnVmIGlzIGZpbmlzaGVkIHdpdGgsIGlmIGFueXRoaW5nCisgKiBvdGhlciB0aGFuIHZhcmJ1Zl9pbml0IGhhcyBiZWVuIGRvbmUuIEFmdGVyIHRoaXMgeW91IGFyZSBhbGxvd2VkIGJ1dAorICogbm90IHJlcXVpcmVkIHRvIGNhbGwgdmFyYnVmX2luaXQgYWdhaW4gaWYgeW91IHdhbnQgdG8gc3RhcnQgdXNpbmcgdGhlCisgKiB2YXJidWYgYWdhaW4uCisgKgorICogQ2FsbGVycyB1c2luZyBDKysgbmVlZCBub3Qgd29ycnkgYWJvdXQgYW55IG9mIHRoaXMuCisgKi8KK3N0cnVjdCB2YXJidWYgeworCXNpemVfdCB1c2VkLCBzaXplOworCWNoYXIgKmJ1ZjsKKworI2lmZGVmIF9fY3BsdXNwbHVzCisJdmFyYnVmKHNpemVfdCBfc2l6ZSA9IDApOworCX52YXJidWYoKTsKKwl2b2lkIGluaXQoc2l6ZV90IF9zaXplID0gMCk7CisJdm9pZCByZXNldCgpOworCXZvaWQgZGVzdHJveSgpOworCXZvaWQgb3BlcmF0b3IoKShpbnQgYyk7CisJdm9pZCBvcGVyYXRvcigpKGNvbnN0IGNoYXIgKnMpOworCXZvaWQgdGVybWluYXRlKHZvaWQvKnRvIHNodXQgMi42LjMgdXAqLyk7CisJY29uc3QgY2hhciAqc3RyaW5nKCk7CisjZW5kaWYKK307CisKKyNkZWZpbmUgVkFSQlVGX0lOSVQgeyAwLCAwLCBOVUxMIH0KKwordm9pZCB2YXJidWZfaW5pdChzdHJ1Y3QgdmFyYnVmICp2LCBzaXplX3Qgc2l6ZSk7Cit2b2lkIHZhcmJ1Zl9ncm93KHN0cnVjdCB2YXJidWYgKnYsIHNpemVfdCBuZWVkX3NpemUpOwordm9pZCB2YXJidWZfdHJ1bmMoc3RydWN0IHZhcmJ1ZiAqdiwgc2l6ZV90IHVzZWRfc2l6ZSk7CitjaGFyICp2YXJidWZfZGV0YWNoKHN0cnVjdCB2YXJidWYgKnYpOwordm9pZCB2YXJidWZfcmVzZXQoc3RydWN0IHZhcmJ1ZiAqdik7Cit2b2lkIHZhcmJ1Zl9kZXN0cm95KHN0cnVjdCB2YXJidWYgKnYpOworCit2b2lkIHZhcmJ1Zl9hZGRfY2hhcihzdHJ1Y3QgdmFyYnVmICp2LCBpbnQgYyk7Cit2b2lkIHZhcmJ1Zl9kdXBfY2hhcihzdHJ1Y3QgdmFyYnVmICp2LCBpbnQgYywgc2l6ZV90IG4pOwordm9pZCB2YXJidWZfbWFwX2NoYXIoc3RydWN0IHZhcmJ1ZiAqdiwgaW50IGNfc3JjLCBpbnQgY19kc3QpOworI2RlZmluZSB2YXJidWZfYWRkX3N0cih2LCBzKSB2YXJidWZfYWRkX2J1Zih2LCBzLCBzdHJsZW4ocykpCit2b2lkIHZhcmJ1Zl9hZGRfYnVmKHN0cnVjdCB2YXJidWYgKnYsIGNvbnN0IHZvaWQgKnMsIHNpemVfdCBzaXplKTsKK3ZvaWQgdmFyYnVmX2VuZF9zdHIoc3RydWN0IHZhcmJ1ZiAqdik7CisKK2ludCB2YXJidWZfcHJpbnRmKHN0cnVjdCB2YXJidWYgKnYsIGNvbnN0IGNoYXIgKmZtdCwgLi4uKSBEUEtHX0FUVFJfUFJJTlRGKDIpOworaW50IHZhcmJ1Zl92cHJpbnRmKHN0cnVjdCB2YXJidWYgKnYsIGNvbnN0IGNoYXIgKmZtdCwgdmFfbGlzdCB2YSkKKwlEUEtHX0FUVFJfVlBSSU5URigyKTsKKworRFBLR19FTkRfREVDTFMKKworI2lmZGVmIF9fY3BsdXNwbHVzCitpbmxpbmUKK3ZhcmJ1Zjo6dmFyYnVmKHNpemVfdCBfc2l6ZSkKK3sKKwl2YXJidWZfaW5pdCh0aGlzLCBfc2l6ZSk7Cit9CisKK2lubGluZQordmFyYnVmOjp+dmFyYnVmKCkKK3sKKwl2YXJidWZfZGVzdHJveSh0aGlzKTsKK30KKworaW5saW5lIHZvaWQKK3ZhcmJ1Zjo6aW5pdChzaXplX3QgX3NpemUpCit7CisJdmFyYnVmX2luaXQodGhpcywgX3NpemUpOworfQorCitpbmxpbmUgdm9pZAordmFyYnVmOjpyZXNldCgpCit7CisJdXNlZCA9IDA7Cit9CisKK2lubGluZSB2b2lkCit2YXJidWY6OmRlc3Ryb3koKQoreworCXZhcmJ1Zl9kZXN0cm95KHRoaXMpOworfQorCitpbmxpbmUgdm9pZAordmFyYnVmOjpvcGVyYXRvcigpKGludCBjKQoreworCXZhcmJ1Zl9hZGRfY2hhcih0aGlzLCBjKTsKK30KKworaW5saW5lIHZvaWQKK3ZhcmJ1Zjo6b3BlcmF0b3IoKShjb25zdCBjaGFyICpzKQoreworCXZhcmJ1Zl9hZGRfc3RyKHRoaXMsIHMpOworfQorCitpbmxpbmUgdm9pZAordmFyYnVmOjp0ZXJtaW5hdGUodm9pZC8qdG8gc2h1dCAyLjYuMyB1cCovKQoreworCXZhcmJ1Zl9lbmRfc3RyKHRoaXMpOworfQorCitpbmxpbmUgY29uc3QgY2hhciAqCit2YXJidWY6OnN0cmluZygpCit7CisJdGVybWluYXRlKCk7CisJcmV0dXJuIGJ1ZjsKK30KKyNlbmRpZgorCisjZW5kaWYgLyogTElCRFBLR19WQVJCVUZfSCAqLwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy92ZXJjbXAuYyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvdmVyY21wLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTEzZDQ5ZQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvdmVyY21wLmMKQEAgLTAsMCArMSwxMTkgQEAKKy8qCisgKiBsaWJkcGtnIC0gRGViaWFuIHBhY2thZ2luZyBzdWl0ZSBsaWJyYXJ5IHJvdXRpbmVzCisgKiB2ZXJjbXAuYyAtIGNvbXBhcmlzb24gb2YgdmVyc2lvbiBudW1iZXJzCisgKgorICogQ29weXJpZ2h0IMKpIDE5OTUgSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuZ3JlZW5lbmQub3JnLnVrPgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaW5jbHVkZSA8Y29uZmlnLmg+CisjaW5jbHVkZSA8Y29tcGF0Lmg+CisKKyNpbmNsdWRlIDxjdHlwZS5oPgorI2luY2x1ZGUgPHN0cmluZy5oPgorCisjaW5jbHVkZSA8ZHBrZy9kcGtnLmg+CisjaW5jbHVkZSA8ZHBrZy9kcGtnLWRiLmg+CisjaW5jbHVkZSA8ZHBrZy9wYXJzZWR1bXAuaD4KKworYm9vbAorZXBvY2hzZGlmZmVyKGNvbnN0IHN0cnVjdCB2ZXJzaW9ucmV2aXNpb24gKmEsCisgICAgICAgICAgICAgY29uc3Qgc3RydWN0IHZlcnNpb25yZXZpc2lvbiAqYikKK3sKKyAgcmV0dXJuIGEtPmVwb2NoICE9IGItPmVwb2NoOworfQorCisvKioKKyAqIEdpdmUgYSB3ZWlnaHQgdG8gdGhlIGNoYXJhY3RlciB0byBvcmRlciBpbiB0aGUgdmVyc2lvbiBjb21wYXJpc29uLgorICoKKyAqIEBwYXJhbSBjIEFuIEFTQ0lJIGNoYXJhY3Rlci4KKyAqLworc3RhdGljIGludAorb3JkZXIoaW50IGMpCit7CisgIGlmIChjaXNkaWdpdChjKSkKKyAgICByZXR1cm4gMDsKKyAgZWxzZSBpZiAoY2lzYWxwaGEoYykpCisgICAgcmV0dXJuIGM7CisgIGVsc2UgaWYgKGMgPT0gJ34nKQorICAgIHJldHVybiAtMTsKKyAgZWxzZSBpZiAoYykKKyAgICByZXR1cm4gYyArIDI1NjsKKyAgZWxzZQorICAgIHJldHVybiAwOworfQorCitzdGF0aWMgaW50IHZlcnJldmNtcChjb25zdCBjaGFyICp2YWwsIGNvbnN0IGNoYXIgKnJlZikgeworICBpZiAoIXZhbCkgdmFsPSAiIjsKKyAgaWYgKCFyZWYpIHJlZj0gIiI7CisKKyAgd2hpbGUgKCp2YWwgfHwgKnJlZikgeworICAgIGludCBmaXJzdF9kaWZmPSAwOworCisgICAgd2hpbGUgKCAoKnZhbCAmJiAhY2lzZGlnaXQoKnZhbCkpIHx8ICgqcmVmICYmICFjaXNkaWdpdCgqcmVmKSkgKSB7CisgICAgICBpbnQgdmM9IG9yZGVyKCp2YWwpLCByYz0gb3JkZXIoKnJlZik7CisgICAgICBpZiAodmMgIT0gcmMpIHJldHVybiB2YyAtIHJjOworICAgICAgdmFsKys7IHJlZisrOworICAgIH0KKworICAgIHdoaWxlICggKnZhbCA9PSAnMCcgKSB2YWwrKzsKKyAgICB3aGlsZSAoICpyZWYgPT0gJzAnICkgcmVmKys7CisgICAgd2hpbGUgKGNpc2RpZ2l0KCp2YWwpICYmIGNpc2RpZ2l0KCpyZWYpKSB7CisgICAgICBpZiAoIWZpcnN0X2RpZmYpIGZpcnN0X2RpZmY9ICp2YWwgLSAqcmVmOworICAgICAgdmFsKys7IHJlZisrOworICAgIH0KKyAgICBpZiAoY2lzZGlnaXQoKnZhbCkpIHJldHVybiAxOworICAgIGlmIChjaXNkaWdpdCgqcmVmKSkgcmV0dXJuIC0xOworICAgIGlmIChmaXJzdF9kaWZmKSByZXR1cm4gZmlyc3RfZGlmZjsKKyAgfQorICByZXR1cm4gMDsKK30KKworaW50IHZlcnNpb25jb21wYXJlKGNvbnN0IHN0cnVjdCB2ZXJzaW9ucmV2aXNpb24gKnZlcnNpb24sCisgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RydWN0IHZlcnNpb25yZXZpc2lvbiAqcmVmdmVyc2lvbikgeworICBpbnQgcjsKKworICBpZiAodmVyc2lvbi0+ZXBvY2ggPiByZWZ2ZXJzaW9uLT5lcG9jaCkgcmV0dXJuIDE7CisgIGlmICh2ZXJzaW9uLT5lcG9jaCA8IHJlZnZlcnNpb24tPmVwb2NoKSByZXR1cm4gLTE7CisgIHI9IHZlcnJldmNtcCh2ZXJzaW9uLT52ZXJzaW9uLHJlZnZlcnNpb24tPnZlcnNpb24pOyAgaWYgKHIpIHJldHVybiByOworICByZXR1cm4gdmVycmV2Y21wKHZlcnNpb24tPnJldmlzaW9uLHJlZnZlcnNpb24tPnJldmlzaW9uKTsKK30KKworYm9vbAordmVyc2lvbnNhdGlzZmllZDMoY29uc3Qgc3RydWN0IHZlcnNpb25yZXZpc2lvbiAqaXQsCisgICAgICAgICAgICAgICAgICBjb25zdCBzdHJ1Y3QgdmVyc2lvbnJldmlzaW9uICpyZWYsCisgICAgICAgICAgICAgICAgICBlbnVtIGRlcHZlcnJlbCB2ZXJyZWwpCit7CisgIGludCByOworICBpZiAodmVycmVsID09IGR2cl9ub25lKQorICAgIHJldHVybiB0cnVlOworICByPSB2ZXJzaW9uY29tcGFyZShpdCxyZWYpOworICBzd2l0Y2ggKHZlcnJlbCkgeworICBjYXNlIGR2cl9lYXJsaWVyZXF1YWw6ICAgcmV0dXJuIHIgPD0gMDsKKyAgY2FzZSBkdnJfbGF0ZXJlcXVhbDogICAgIHJldHVybiByID49IDA7CisgIGNhc2UgZHZyX2VhcmxpZXJzdHJpY3Q6ICByZXR1cm4gciA8IDA7CisgIGNhc2UgZHZyX2xhdGVyc3RyaWN0OiAgICByZXR1cm4gciA+IDA7CisgIGNhc2UgZHZyX2V4YWN0OiAgICAgICAgICByZXR1cm4gciA9PSAwOworICBkZWZhdWx0OgorICAgIGludGVybmVycigidW5rbm93biBkZXB2ZXJyZWwgJyVkJyIsIHZlcnJlbCk7CisgIH0KKyAgcmV0dXJuIGZhbHNlOworfQorCitib29sCit2ZXJzaW9uc2F0aXNmaWVkKHN0cnVjdCBwa2diaW4gKml0LCBzdHJ1Y3QgZGVwcG9zc2kgKmFnYWluc3QpCit7CisgIHJldHVybiB2ZXJzaW9uc2F0aXNmaWVkMygmaXQtPnZlcnNpb24sJmFnYWluc3QtPnZlcnNpb24sYWdhaW5zdC0+dmVycmVsKTsKK30KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvdmVyc2lvbi5jIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy92ZXJzaW9uLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNGJkZjc4MgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbGliL2Rwa2cvdmVyc2lvbi5jCkBAIC0wLDAgKzEsNDAgQEAKKy8qCisgKiBsaWJkcGtnIC0gRGViaWFuIHBhY2thZ2luZyBzdWl0ZSBsaWJyYXJ5IHJvdXRpbmVzCisgKiB2ZXJzaW9uLmMgLSBWZXJzaW9uIGhhbmRsaW5nIGZ1bmN0aW9ucworICoKKyAqIENvcHlyaWdodCDCqSAxOTk1IElhbiBKYWNrc29uIDxpYW5AY2hpYXJrLmdyZWVuZW5kLm9yZy51az4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworI2luY2x1ZGUgPGNvbmZpZy5oPgorI2luY2x1ZGUgPGNvbXBhdC5oPgorCisjaW5jbHVkZSA8ZHBrZy92ZXJzaW9uLmg+CisKK3ZvaWQKK2JsYW5rdmVyc2lvbihzdHJ1Y3QgdmVyc2lvbnJldmlzaW9uICp2ZXJzaW9uKQoreworCXZlcnNpb24tPmVwb2NoID0gMDsKKwl2ZXJzaW9uLT52ZXJzaW9uID0gTlVMTDsKKwl2ZXJzaW9uLT5yZXZpc2lvbiA9IE5VTEw7Cit9CisKK2Jvb2wKK2luZm9ybWF0aXZldmVyc2lvbihjb25zdCBzdHJ1Y3QgdmVyc2lvbnJldmlzaW9uICp2ZXJzaW9uKQoreworCXJldHVybiAodmVyc2lvbi0+ZXBvY2ggfHwKKwkgICAgICAgICh2ZXJzaW9uLT52ZXJzaW9uICYmICp2ZXJzaW9uLT52ZXJzaW9uKSB8fAorCSAgICAgICAgKHZlcnNpb24tPnJldmlzaW9uICYmICp2ZXJzaW9uLT5yZXZpc2lvbikpOworfQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy92ZXJzaW9uLmggYi9kcGtnLTEuMTYuMS4xL2xpYi9kcGtnL3ZlcnNpb24uaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jMDNjZWI1Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9saWIvZHBrZy92ZXJzaW9uLmgKQEAgLTAsMCArMSw0MSBAQAorLyoKKyAqIGxpYmRwa2cgLSBEZWJpYW4gcGFja2FnaW5nIHN1aXRlIGxpYnJhcnkgcm91dGluZXMKKyAqIHZlcnNpb24uaCAtIHZlcnNpb24gaGFuZGxpbmcgcm91dGluZXMKKyAqCisgKiBDb3B5cmlnaHQgwqkgMTk5NCwxOTk1IElhbiBKYWNrc29uIDxpYW5AY2hpYXJrLmdyZWVuZW5kLm9yZy51az4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworI2lmbmRlZiBMSUJEUEtHX1ZFUlNJT05fSAorI2RlZmluZSBMSUJEUEtHX1ZFUlNJT05fSAorCisjaW5jbHVkZSA8c3RkYm9vbC5oPgorCisjaW5jbHVkZSA8ZHBrZy9tYWNyb3MuaD4KKworRFBLR19CRUdJTl9ERUNMUworCitzdHJ1Y3QgdmVyc2lvbnJldmlzaW9uIHsKKwl1bnNpZ25lZCBsb25nIGVwb2NoOworCWNvbnN0IGNoYXIgKnZlcnNpb247CisJY29uc3QgY2hhciAqcmV2aXNpb247Cit9OworCit2b2lkIGJsYW5rdmVyc2lvbihzdHJ1Y3QgdmVyc2lvbnJldmlzaW9uICp2ZXJzaW9uKTsKK2Jvb2wgaW5mb3JtYXRpdmV2ZXJzaW9uKGNvbnN0IHN0cnVjdCB2ZXJzaW9ucmV2aXNpb24gKnZlcnNpb24pOworCitEUEtHX0VORF9ERUNMUworCisjZW5kaWYgLyogTElCRFBLR19WRVJTSU9OX0ggKi8KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbTQvZHBrZy1hcmNoLm00IGIvZHBrZy0xLjE2LjEuMS9tNC9kcGtnLWFyY2gubTQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOGE0OTBmYQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbTQvZHBrZy1hcmNoLm00CkBAIC0wLDAgKzEsNjcgQEAKKyMgQ29weXJpZ2h0IMKpIDIwMDUgU2NvdHQgSmFtZXMgUmVtbmFudCA8c2NvdHRAbmV0c3BsaXQuY29tPgorIyBDb3B5cmlnaHQgwqkgMjAwNi0yMDA5IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworIyBfRFBLR19BUkNISVRFQ1RVUkUoW0RFQl9WQVJdLCBbc2hfdmFyXSkKKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisjIFVzZSBkcGtnLWFyY2hpdGVjdHVyZSBmcm9tIHRoZSBzb3VyY2UgdHJlZSB0byBzZXQgc2hfdmFyIHVzaW5nIERFQl9WQVIgZm9yCisjIHRoZSB0YXJnZXQgYXJjaGl0ZWN0dXJlLCB0byBhdm9pZCBkdXBsaWNhdGluZyBpdHMgbG9naWMuCitBQ19ERUZVTihbX0RQS0dfQVJDSElURUNUVVJFXSwgWworQUNfUkVRVUlSRShbRFBLR19QUk9HX1BFUkxdKWRubAorQUNfUkVRVUlSRShbQUNfQ0FOT05JQ0FMX0hPU1RdKWRubAorJDI9JChjZCAkc3JjZGlyL3NjcmlwdHM7IFwKKyAgICBQRVJMNUxJQj0kKHB3ZCkgJFBFUkwgZHBrZy1hcmNoaXRlY3R1cmUucGwgLXQkaG9zdCAtcSQxIDI+L2Rldi9udWxsKQorXSkjIF9EUEtHX0FSQ0hJVEVDVVJFCisKKyMgRFBLR19DUFVfVFlQRQorIyAtLS0tLS0tLS0tLS0tCisjIFBhcnNlIHRoZSBob3N0IGNwdSBuYW1lIGFuZCBjaGVjayBpdCBhZ2FpbnN0IHRoZSBjcHV0YWJsZSB0byBkZXRlcm1pbmUKKyMgdGhlIERlYmlhbiBuYW1lIGZvciBpdC4gIFNldHMgQVJDSElURUNUVVJFX0NQVS4KK0FDX0RFRlVOKFtEUEtHX0NQVV9UWVBFXSwKK1tBQ19NU0dfQ0hFQ0tJTkcoW2Rwa2cgY3B1IHR5cGVdKQorX0RQS0dfQVJDSElURUNUVVJFKFtERUJfSE9TVF9BUkNIX0NQVV0sIFtjcHVfdHlwZV0pCitpZiB0ZXN0ICJ4JGNwdV90eXBlIiA9ICJ4IjsgdGhlbgorCWNwdV90eXBlPSRob3N0X2NwdQorCUFDX01TR19SRVNVTFQoWyRjcHVfdHlwZV0pCisJQUNfTVNHX1dBUk4oWyRob3N0X2NwdSBub3QgZm91bmQgaW4gY3B1dGFibGVdKQorZWxzZQorCUFDX01TR19SRVNVTFQoWyRjcHVfdHlwZV0pCitmaQorQUNfREVGSU5FX1VOUVVPVEVEKEFSQ0hJVEVDVFVSRV9DUFUsICIke2NwdV90eXBlfSIsCisJW1NldCB0aGlzIHRvIHRoZSBjYW5vbmljYWwgZHBrZyBDUFUgbmFtZS5dKQorXSkjIERQS0dfQ1BVX1RZUEUKKworIyBEUEtHX09TX1RZUEUKKyMgLS0tLS0tLS0tLS0tCisjIFBhcnNlIHRoZSBob3N0IG9wZXJhdGluZyBzeXN0ZW0gbmFtZSBhbmQgY2hlY2sgaXQgYWdhaW5zdCBhIGxpc3Qgb2YKKyMgc3BlY2lhbCBjYXNlcyB0byBkZXRlcm1pbmUgd2hhdCB0eXBlIGl0IGlzLiAgU2V0cyBBUkNISVRFQ1RVUkVfT1MuCitBQ19ERUZVTihbRFBLR19PU19UWVBFXSwKK1tBQ19NU0dfQ0hFQ0tJTkcoW2Rwa2cgb3BlcmF0aW5nIHN5c3RlbSB0eXBlXSkKK19EUEtHX0FSQ0hJVEVDVFVSRShbREVCX0hPU1RfQVJDSF9PU10sIFtvc190eXBlXSkKK2lmIHRlc3QgIngkb3NfdHlwZSIgPSAieCI7IHRoZW4KKwlvc190eXBlPSRob3N0X29zCisJQUNfTVNHX1JFU1VMVChbJG9zX3R5cGVdKQorCUFDX01TR19XQVJOKFskaG9zdF9vcyBub3QgZm91bmQgaW4gb3N0YWJsZV0pCitlbHNlCisJQUNfTVNHX1JFU1VMVChbJG9zX3R5cGVdKQorZmkKK0FDX0RFRklORV9VTlFVT1RFRChBUkNISVRFQ1RVUkVfT1MsICIke29zX3R5cGV9IiwKKwlbU2V0IHRoaXMgdG8gdGhlIGNhbm9uaWNhbCBkcGtnIHN5c3RlbSBuYW1lLl0pCitdKSMgRFBLR19PU19UWVBFCisKKyMgRFBLR19BUkNISVRFQ1RVUkUKKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisjIERldGVybWluZSB0aGUgRGViaWFuIG5hbWUgZm9yIHRoZSBob3N0IG9wZXJhdGluZyBzeXN0ZW0sCisjIHNldHMgQVJDSElURUNUVVJFLgorQUNfREVGVU4oW0RQS0dfQVJDSElURUNUVVJFXSwKK1tEUEtHX0NQVV9UWVBFCitEUEtHX09TX1RZUEUKK0FDX01TR19DSEVDS0lORyhbZHBrZyBhcmNoaXRlY3R1cmUgbmFtZV0pCitfRFBLR19BUkNISVRFQ1RVUkUoW0RFQl9IT1NUX0FSQ0hdLCBbZHBrZ19hcmNoXSkKK2lmIHRlc3QgIngkZHBrZ19hcmNoIiA9ICJ4IjsgdGhlbgorCUFDX01TR19FUlJPUihbY2Fubm90IGRldGVybWluZSBob3N0IGRwa2cgYXJjaGl0ZWN0dXJlXSkKK2Vsc2UKKwlBQ19NU0dfUkVTVUxUKFskZHBrZ19hcmNoXSkKK2ZpCitBQ19ERUZJTkVfVU5RVU9URUQoQVJDSElURUNUVVJFLCAiJHtkcGtnX2FyY2h9IiwKKwlbU2V0IHRoaXMgdG8gdGhlIGNhbm9uaWNhbCBkcGtnIGFyY2hpdGVjdHVyZSBuYW1lLl0pCitdKSMgRFBLR19BUkNISVRFQ1RVUkUKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbTQvZHBrZy1idWlsZC5tNCBiL2Rwa2ctMS4xNi4xLjEvbTQvZHBrZy1idWlsZC5tNApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xNjY4NTRkCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tNC9kcGtnLWJ1aWxkLm00CkBAIC0wLDAgKzEsMzMgQEAKKyMgQ29weXJpZ2h0IMKpIDIwMTAgR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisjIERQS0dfV0lUSF9QUk9HKFBST0cpCisjIC0tLS0tLS0tLS0tLS0tCisjIEFsbG93IGRpc2FibGluZyBjb21waWxhdGlvbiBhbmQgdXNhZ2Ugb2Ygc3BlY2lmaWMgcHJvZ3JhbXMuCitBQ19ERUZVTihbRFBLR19XSVRIX1BST0ddLCBbCisgIEFDX0FSR19XSVRIKFskMV0sCisgICAgQVNfSEVMUF9TVFJJTkcoWy0td2l0aG91dC0kMV0sIFtkbyBub3QgYnVpbGQgb3IgdXNlICQxXSksCisgICAgW2J1aWxkX11BU19UUl9TSChbJDFdKVs9JHdpdGhfXUFTX1RSX1NIKFskMV0pLAorICAgIFtidWlsZF9dQVNfVFJfU0goWyQxXSlbPXllc10KKyAgKQorICBBTV9DT05ESVRJT05BTChbV0lUSF9dQVNfVFJfQ1BQKFskMV0pLAorICAgICAgICAgICAgICAgICBbdGVzdCAieCRidWlsZF9dQVNfVFJfU0goWyQxXSlbIiA9ICJ4eWVzIl0pCisgIEFTX0lGKFt0ZXN0ICJ4JGJ1aWxkX11BU19UUl9TSChbJDFdKVsiID0gInh5ZXMiXSwgWworICAgIEFDX0RFRklORShbV0lUSF9dQVNfVFJfQ1BQKFskMV0pLCAxLCBbRGVmaW5lIHRvIDEgaWYgJDEgaXMgY29tcGlsZWQuXSkKKyAgXSwgWworICAgIEFDX0RFRklORShbV0lUSF9dQVNfVFJfQ1BQKFskMV0pLCAwKQorICBdKQorXSkjIERQS0dfV0lUSF9QUk9HCisKKyMgRFBLR19XSVRIX0RJUihESVIsIERFRkFVTFQsIERFU0NSSVBUSU9OKQorIyAtLS0tLS0tLS0tLS0tCisjIEFsbG93IHNwZWNpZnlpbmcgYWx0ZXJuYXRlIGRpcmVjdG9yaWVzLgorQUNfREVGVU4oW0RQS0dfV0lUSF9ESVJdLCBbCisgICQxPSIkMiIKKyAgQUNfQVJHX1dJVEgoWyQxXSwKKyAgICBBU19IRUxQX1NUUklORyhbLS13aXRoLSQxPURJUl0sIFskM10pLAorICAgIEFTX0NBU0UoWyR3aXRoXyQxXSwKKyAgICAgICAgICAgIFsiIl0sIFtBQ19NU0dfRVJST1IoW2ludmFsaWQgJDEgc3BlY2lmaWVkXSldLAorICAgICAgICAgICAgWyQxPSIkd2l0aF8kMSJdKQorICApCisgIEFDX1NVQlNUKFskMV0pCitdKSMgRFBLR19XSVRIX0RJUgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tNC9kcGtnLWNvbXBpbGVyLm00IGIvZHBrZy0xLjE2LjEuMS9tNC9kcGtnLWNvbXBpbGVyLm00Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmM2NDlmYmQKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL200L2Rwa2ctY29tcGlsZXIubTQKQEAgLTAsMCArMSwxMTQgQEAKKyMgQ29weXJpZ2h0IMKpIDIwMDQgU2NvdHQgSmFtZXMgUmVtbmFudCA8c2NvdHRAbmV0c3BsaXQuY29tPgorIyBDb3B5cmlnaHQgwqkgMjAwNiwgMjAwOSBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKyMgRFBLR19DT01QSUxFUl9XQVJOSU5HUworIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyMgQWRkIGNvbmZpZ3VyZSBvcHRpb24gdG8gZGlzYWJsZSBhZGRpdGlvbmFsIGNvbXBpbGVyIHdhcm5pbmdzLgorQUNfREVGVU4oW0RQS0dfQ09NUElMRVJfV0FSTklOR1NdLAorW0FDX0FSR19FTkFCTEUoY29tcGlsZXItd2FybmluZ3MsCisJQVNfSEVMUF9TVFJJTkcoWy0tZGlzYWJsZS1jb21waWxlci13YXJuaW5nc10sCisJICAgICAgICAgICAgICAgW0Rpc2FibGUgYWRkaXRpb25hbCBjb21waWxlciB3YXJuaW5nc10pLAorCVtdLAorCVtlbmFibGVfY29tcGlsZXJfd2FybmluZ3M9eWVzXSkKKworV0ZMQUdTPSItV2FsbCAtV2V4dHJhIC1Xbm8tdW51c2VkLXBhcmFtZXRlciAtV25vLW1pc3NpbmctZmllbGQtaW5pdGlhbGl6ZXJzIFwKKwkgLVdtaXNzaW5nLWRlY2xhcmF0aW9ucyAtV21pc3NpbmctZm9ybWF0LWF0dHJpYnV0ZSBcCisJIC1XZm9ybWF0LXNlY3VyaXR5IC1XcG9pbnRlci1hcml0aCBcCisJIC1XdmxhIC1XaW5pdC1zZWxmIC1Xd3JpdGUtc3RyaW5ncyAtV2Nhc3QtYWxpZ24gLVdzaGFkb3ciCitXQ0ZMQUdTPSItV2RlY2xhcmF0aW9uLWFmdGVyLXN0YXRlbWVudCAtV25lc3RlZC1leHRlcm5zIC1XYmFkLWZ1bmN0aW9uLWNhc3QgXAorCSAtV3N0cmljdC1wcm90b3R5cGVzIC1XbWlzc2luZy1wcm90b3R5cGVzIC1Xb2xkLXN0eWxlLWRlZmluaXRpb24iCisjIFRlbXBvcmFyaWx5IGhlcmUgdW50aWwgIzU0MjAzMSBnZXRzIGZpeGVkIGluIG5jdXJzZXMKK1dDWFhGTEFHUz0iLVduby11bnVzZWQtdmFsdWUiCitpZiB0ZXN0ICJ4JGVuYWJsZV9jb21waWxlcl93YXJuaW5ncyIgPSAieHllcyI7IHRoZW4KKwlpZiB0ZXN0ICJ4JEdDQyIgPSAieHllcyI7IHRoZW4KKwkJQ0ZMQUdTPSIkV0ZMQUdTICRXQ0ZMQUdTICRDRkxBR1MiCisgICAgICAgIGZpCisJaWYgdGVzdCAieCRHWFgiID0gInh5ZXMiOyB0aGVuCisJCUNYWEZMQUdTPSIkV0ZMQUdTICRXQ1hYRkxBR1MgJENYWEZMQUdTIgorCWZpCitmaQorXSkKKworIyBEUEtHX0NPTVBJTEVSX09QVElNSVNBVElPTlMKKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyMgQWRkIGNvbmZpZ3VyZSBvcHRpb24gdG8gZGlzYWJsZSBvcHRpbWlzYXRpb25zLgorQUNfREVGVU4oW0RQS0dfQ09NUElMRVJfT1BUSU1JU0FUSU9OU10sCitbQUNfQVJHX0VOQUJMRShjb21waWxlci1vcHRpbWlzYXRpb25zLAorCUFTX0hFTFBfU1RSSU5HKFstLWRpc2FibGUtY29tcGlsZXItb3B0aW1pc2F0aW9uc10sCisJCSAgICAgICBbRGlzYWJsZSBjb21waWxlciBvcHRpbWlzYXRpb25zXSksCisJW10sCisJW2VuYWJsZV9jb21waWxlcl9vcHRpbWlzYXRpb25zPXllc10pCisKKyAgQVNfSUYoW3Rlc3QgIngkZW5hYmxlX2NvbXBpbGVyX29wdGltaXNhdGlvbnMiID0gInhubyJdLCBbCisgICAgQ0ZMQUdTPSQoZWNobyAiJENGTEFHUyIgfCBzZWQgLWUgInMvIC1PW1sxLTldXSpcYi8gLU8wL2ciKQorICBdKQorXSkKKworIyBEUEtHX1RSWV9DOTkoW0FDVElPTi1JRi1GT1VORF0sIFtBQ1RJT04tSUYtTk9ULUZPVU5EXSkKKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisjIFRyeSBjb21waWxpbmcgc29tZSBDOTkgY29kZSB0byBzZWUgd2hldGhlciBpdCB3b3JrcworQUNfREVGVU4oW0RQS0dfVFJZX0M5OV0sCitbQUNfQ09NUElMRV9JRkVMU0UoW0FDX0xBTkdfUFJPR1JBTShbWworI2luY2x1ZGUgPGludHR5cGVzLmg+CisjaW5jbHVkZSA8c3RkYm9vbC5oPgorI2luY2x1ZGUgPHN0ZGlvLmg+CisKKy8qIFZhcmlhZGljIG1hY3JvIGFyZ3VtZW50cy4gKi8KKyNkZWZpbmUgdmFyaWFkaWNfbWFjcm8oZm9vLCAuLi4pIHByaW50Zihmb28sIF9fVkFfQVJHU19fKQorXV0sCitbWworCWludCByYzsKKworCS8qIENvbXBvdW5kIGluaXRpYWxpemVycy4gKi8KKwlzdHJ1Y3QgeyBpbnQgYSwgYjsgfSBmb28gPSB7IC5hID0gMSwgLmIgPSAyIH07CisKKwkvKiBUcmFpbGluZyBjb21tYSBpbiBlbnVtLiAqLworCWVudW0geyBmaXJzdCwgc2Vjb25kLCB9IHF1dXg7CisKKwkvKiBCb29sZWFuIHR5cGUuICovCisJYm9vbCBiYXIgPSBmYWxzZTsKKworCS8qIFNwZWNpZmljIHNpemUgdHlwZS4gKi8KKwl1aW50MzJfdCBiYXogPSAwOworCXNpemVfdCBzaXplID0gU0laRV9NQVg7CisJaW50bWF4X3QgaW1heCA9IElOVE1BWF9NQVg7CisKKwkvKiBGb3JtYXQgbW9kaWZpZXJzLiAqLworCXJjID0gcHJpbnRmKCIlamQiLCBpbWF4KTsKKwlpZiAocmMgPT0gMykKKwkJcmV0dXJuIDE7CisJcmMgPSBwcmludGYoIiV6dSIsIHNpemUpOworCWlmIChyYyA9PSAzKQorCQlyZXR1cm4gMTsKKworCS8qIE1hZ2ljIF9fZnVuY19fIHZhcmlhYmxlLiAqLworCXByaW50ZigiJXMiLCBfX2Z1bmNfXyk7CitdXSldLCBbJDFdLCBbJDJdKWRubAorXSkjIERQS0dfVFJZX0M5OQorCisjIERQS0dfQ19DOTkKKyMgLS0tLS0tLS0tLQorIyBDaGVjayB3aGV0aGVyIHRoZSBjb21waWxlciBjYW4gZG8gQzk5CitBQ19ERUZVTihbRFBLR19DX0M5OV0sCitbQUNfQ0FDSEVfQ0hFQ0soW3doZXRoZXIgY29tcGlsZXIgc3VwcG9ydHMgQzk5IGZlYXR1cmVzXSwgW2Rwa2dfY3ZfYzk5XSwKKwlbRFBLR19UUllfQzk5KFtkcGtnX2N2X2M5OT15ZXNdLCBbZHBrZ19jdl9jOTk9bm9dKV0pCitBU19JRihbdGVzdCAieCRkcGtnX2N2X2M5OSIgPSAieHllcyJdLAorCVtBQ19ERUZJTkUoW0hBVkVfQzk5XSwgMSwgW0RlZmluZSB0byAxIGlmIHRoZSBjb21waWxlciBzdXBwb3J0cyBDOTkuXSldLAorCVtBQ19DQUNIRV9DSEVDSyhbd2hhdCBhcmd1bWVudCBtYWtlcyBjb21waWxlciBzdXBwb3J0IEM5OSBmZWF0dXJlc10sCisJCVtkcGtnX2N2X2M5OV9hcmddLAorCQlbZHBrZ19jdl9jOTlfYXJnPW5vbmUKKwkJIGRwa2dfc2F2ZV9DQz0iJENDIgorCQkgZm9yIGFyZyBpbiAiLXN0ZD1nbnU5OSIgIi1zdGQ9Yzk5IiAiLWM5OSIgIi1BQzk5IiBcCisJCSAgICAgICAgICAgICIteGM5OT1hbGwiICItcWxhbmdsdmw9ZXh0Yzk5IjsgZG8KKwkJICAgIENDPSIkZHBrZ19zYXZlX0NDICRhcmciCisJCSAgICBEUEtHX1RSWV9DOTkoW2Rwa2dfYXJnX3dvcmtlZD15ZXNdLCBbZHBrZ19hcmdfd29ya2VkPW5vXSkKKwkJICAgIENDPSIkZHBrZ19zYXZlX0NDIgorCisJCSAgICBBU19JRihbdGVzdCAieCRkcGtnX2FyZ193b3JrZWQiID0gInh5ZXMiXSwKKwkJCSAgW2Rwa2dfY3ZfYzk5X2FyZz0iJGFyZyI7IGJyZWFrXSkKKwkJIGRvbmVdKQorCSBBU19JRihbdGVzdCAieCRkcGtnX2N2X2M5OV9hcmciICE9ICJ4bm9uZSJdLAorCSAgICAgICBbQ0M9IiRDQyAkZHBrZ19jdl9jOTlfYXJnIgorCQlBQ19ERUZJTkUoW0hBVkVfQzk5XSwgMSldLAorCSAgICAgICBbQUNfTVNHX0VSUk9SKFt1bnN1cHBvcnRlZCByZXF1aXJlZCBDOTkgZXh0ZW5zaW9uc10pXSldKVtdZG5sCitdKSMgRFBLR19DX0M5OQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tNC9kcGtnLWNvdmVyYWdlLm00IGIvZHBrZy0xLjE2LjEuMS9tNC9kcGtnLWNvdmVyYWdlLm00Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjJjYjc2NGMKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL200L2Rwa2ctY292ZXJhZ2UubTQKQEAgLTAsMCArMSw1MSBAQAorIyBDb3B5cmlnaHQgwqkgMjAxMCBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKyMgRFBLR19DT0RFX0NPVkVSQUdFCisjIC0tLS0tLS0tLS0tLS0tLS0tLQorIyBBZGQgY29uZmlndXJhdGlvbiBvcHRpb24gdG8gZW5hYmxlIGNvZGUgY292ZXJhZ2Ugc3VwcG9ydC4KK0FDX0RFRlVOKFtEUEtHX0NPREVfQ09WRVJBR0VdLAorWworQUNfQVJHX0VOQUJMRShjb3ZlcmFnZSwKKwlBU19IRUxQX1NUUklORyhbLS1lbmFibGUtY292ZXJhZ2VdLAorCSAgICAgICAgICAgICAgIFt3aGV0aGVyIHRvIGVuYWJsZSBjb2RlIGNvdmVyYWdlXSksCisJW10sCisJW2VuYWJsZV9jb3ZlcmFnZT1ub10pCitBTV9DT05ESVRJT05BTChDT1ZFUkFHRV9FTkFCTEVELCBbdGVzdCB4JGVuYWJsZV9jb3ZlcmFnZSA9IHh5ZXNdKQorCitpZiB0ZXN0ICJ4JGVuYWJsZV9jb3ZlcmFnZSIgPSAieHllcyI7IHRoZW4KKyAgIGlmIHRlc3QgIngkR0NDIiA9ICJ4bm8iOyB0aGVuCisgICAgIEFDX01TR19FUlJPUihbbm90IGNvbXBpbGluZyB3aXRoIGdjYywgd2hpY2ggaXMgcmVxdWlyZWQgZm9yIEMgY292ZXJhZ2Ugc3VwcG9ydF0pCisgICBmaQorCisgICBBQ19DSEVDS19QUk9HUyhbR0NPVl0sIFtnY292XSkKKyAgIGlmIHRlc3QgLXogIiRHQ09WIjsgdGhlbgorICAgICBBQ19NU0dfRVJST1IoW21pc3NpbmcgZ2Nvdiwgd2hpY2ggaXMgcmVxdWlyZWQgZm9yIEMgY292ZXJhZ2Ugc3VwcG9ydF0pCisgICBmaQorCisgICBBQ19DSEVDS19QUk9HUyhbTENPVl0sIFtsY292XSkKKyAgIGlmIHRlc3QgLXogIiRMQ09WIjsgdGhlbgorICAgICAgQUNfTVNHX0VSUk9SKFttaXNzaW5nIGxjb3YsIHdoaWNoIGlzIHJlcXVpcmVkIGZvciBDIGNvdmVyYWdlIHN1cHBvcnRdKQorICAgZmkKKworICAgQUNfQ0hFQ0tfUFJPR1MoW0xDT1ZfR0VOSFRNTF0sIFtnZW5odG1sXSkKKyAgIGlmIHRlc3QgLXogIiRMQ09WX0dFTkhUTUwiOyB0aGVuCisgICAgICBBQ19NU0dfRVJST1IoW21pc3NpbmcgZ2VuaHRtbCwgd2hpY2ggaXMgcmVxdWlyZWQgZm9yIEMgY292ZXJhZ2Ugc3VwcG9ydF0pCisgICBmaQorCisgICBDRkxBR1M9IiRDRkxBR1MgLWZwcm9maWxlLWFyY3MgLWZ0ZXN0LWNvdmVyYWdlIgorICAgTERGTEFHUz0iJExERkxBR1MgLWZwcm9maWxlLWFyY3MgLWZ0ZXN0LWNvdmVyYWdlIgorCisgICBBQ19NU0dfQ0hFQ0tJTkcoW2ZvciBEZXZlbDo6Q292ZXIgcGVybCBtb2R1bGVdKQorICAgaWYgJCgkUEVSTCAtZSAicmVxdWlyZSBEZXZlbDo6Q292ZXI7IiAyPi9kZXYvbnVsbCk7IHRoZW4KKyAgICAgIFBFUkxfQ09WRVJBR0U9Ii1NRGV2ZWw6OkNvdmVyIgorICAgICAgQUNfU1VCU1QoUEVSTF9DT1ZFUkFHRSkKKyAgICAgIEFDX01TR19SRVNVTFQoW29rXSkKKyAgIGVsc2UKKyAgICAgIEFDX01TR19FUlJPUihbRGV2ZWw6OkNvdmVyIHBlcmwgbW9kdWxlIGlzIHJlcXVpcmVkIGZvciBjb3ZlcmFnZSBzdXBwb3J0XSkKKyAgIGZpCisgICBBQ19DSEVDS19QUk9HUyhbUEVSTF9DT1ZFUl0sIFtjb3Zlcl0pCisgICBpZiB0ZXN0IC16ICIkUEVSTF9DT1ZFUiI7IHRoZW4KKyAgICAgIEFDX01TR19FUlJPUihbbWlzc2luZyBjb3Zlciwgd2hpY2ggaXMgcmVxdWlyZWQgZm9yIHBlcmwgY292ZXJhZ2Ugc3VwcG9ydF0pCisgICBmaQorZmkKK10pCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL200L2Rwa2ctZnVuY3MubTQgYi9kcGtnLTEuMTYuMS4xL200L2Rwa2ctZnVuY3MubTQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTA4N2JiZAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbTQvZHBrZy1mdW5jcy5tNApAQCAtMCwwICsxLDEyMSBAQAorIyBDb3B5cmlnaHQgwqkgMjAwNSBTY290dCBKYW1lcyBSZW1uYW50IDxzY290dEBuZXRzcGxpdC5jb20+CisjIENvcHlyaWdodCDCqSAyMDA4LCAyMDA5IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworIyBEUEtHX0ZVTkNfVkFfQ09QWQorIyAtLS0tLS0tLS0tLS0tLS0tLQorIyBEZWZpbmUgSEFWRV9WQV9DT1BZIGlmIHdlIGhhdmUgdmFfY29weSwgZmFpbCBpZiB0aGV5IGNhbid0IGJlIGFzc2lnbmVkCitBQ19ERUZVTihbRFBLR19GVU5DX1ZBX0NPUFldLAorW0FDX0NBQ0hFX0NIRUNLKFtmb3IgdmFfY29weV0sIFtkcGtnX2N2X3ZhX2NvcHldLAorCVtBQ19SVU5fSUZFTFNFKFtBQ19MQU5HX1NPVVJDRSgKK1tbI2luY2x1ZGUgPHN0ZGFyZy5oPgoraW50IG1haW4oKQorewordmFfbGlzdCB2MSwgdjI7Cit2YV9jb3B5ICh2MSwgdjIpOworZXhpdCAoMCk7Cit9CisJXV0pXSwKKwlbZHBrZ19jdl92YV9jb3B5PXllc10sCisJW2Rwa2dfY3ZfdmFfY29weT1ub10sCisJW2Rwa2dfY3ZfdmFfY29weT1ub10pXSkKK0FTX0lGKFt0ZXN0ICJ4JGRwa2dfY3ZfdmFfY29weSIgPSAieHllcyJdLAorCVtBQ19ERUZJTkUoW0hBVkVfVkFfQ09QWV0sIDEsCisJICAgICAgICAgICBbRGVmaW5lIHRvIDEgaWYgdGhlICd2YV9jb3B5JyBtYWNybyBleGlzdHNdKV0pCitdKSMgRFBLR19GVU5DX1ZBX0NPUFkKKworIyBEUEtHX0ZVTkNfQzk5X1NOUFJJTlRGCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisjIERlZmluZSBIQVZFX0M5OV9TTlBSSU5URiBpZiB3ZSBoYXZlIEM5OSBzbnByaW50ZiBmYW1pbHkgc2VtYW50aWNzCitBQ19ERUZVTihbRFBLR19GVU5DX0M5OV9TTlBSSU5URl0sCitbQUNfQ0FDSEVfQ0hFQ0soW2ZvciBDOTkgc25wcmludGYgZnVuY3Rpb25zXSwgW2Rwa2dfY3ZfYzk5X3NucHJpbnRmXSwKKwlbQUNfUlVOX0lGRUxTRShbQUNfTEFOR19TT1VSQ0UoW1sKKyNpbmNsdWRlIDxzdGRhcmcuaD4KKyNpbmNsdWRlIDxzdGRpby5oPgorI2luY2x1ZGUgPHN0cmluZy5oPgoraW50IHRlc3RfdnNucHJpbnRmKGNvbnN0IGNoYXIgKmZtdCwgLi4uKQoreworCWludCBuOworCXZhX2xpc3QgYXJnczsKKworCXZhX3N0YXJ0KGFyZ3MsIGZtdCk7CisJbiA9IHZzbnByaW50ZihOVUxMLCAwLCBmbXQsIGFyZ3MpOworCXZhX2VuZChhcmdzKTsKKworCXJldHVybiBuOworfQoraW50IG1haW4oKQoreworCWludCBuOworCisJbiA9IHNucHJpbnRmKE5VTEwsIDAsICJmb3JtYXQgJXMgJWQiLCAic3RyaW5nIiwgMTApOworCWlmIChuICE9IHN0cmxlbigiZm9ybWF0IHN0cmluZyAxMCIpKQorCQlyZXR1cm4gMTsKKworCW4gPSB0ZXN0X3ZzbnByaW50ZigiZm9ybWF0ICVzICVkIiwgInN0cmluZyIsIDEwKTsKKwlpZiAobiAhPSBzdHJsZW4oImZvcm1hdCBzdHJpbmcgMTAiKSkKKwkJcmV0dXJuIDE7CisKKwlyZXR1cm4gMDsKK30KKwldXSldLAorCVtkcGtnX2N2X2M5OV9zbnByaW50Zj15ZXNdLAorCVtkcGtnX2N2X2M5OV9zbnByaW50Zj1ub10sCisJW2Rwa2dfY3ZfYzk5X3NucHJpbnRmPW5vXSldKQorQVNfSUYoW3Rlc3QgIngkZHBrZ19jdl9jOTlfc25wcmludGYiID0gInh5ZXMiXSwKKwlbQUNfREVGSU5FKFtIQVZFX0M5OV9TTlBSSU5URl0sIDEsCisJICAgICAgICAgICBbRGVmaW5lIHRvIDEgaWYgdGhlICdzbnByaW50ZicgZmFtaWx5IGlzIEM5OSBjb25mb3JtYW50XSldLAorCSkKK0FNX0NPTkRJVElPTkFMKEhBVkVfQzk5X1NOUFJJTlRGLCBbdGVzdCAieCRkcGtnX2N2X2M5OV9zbnByaW50ZiIgPSAieHllcyJdKQorXSkjIERQS0dfRlVOQ19DOTlfU05QUklOVEYKKworIyBEUEtHX01NQVAKKyMgLS0tLS0tLS0tCisjIERlZmluZSBVU0VfTU1BUCBpZiBtbWFwKCkgaXMgYXZhaWxhYmxlIGFuZCBpdCB3YXMgcmVxdWVzdGVkCitBQ19ERUZVTihbRFBLR19NTUFQXSwKK1sKKyAgQUNfQVJHX0VOQUJMRShbbW1hcF0sCisgICAgQVNfSEVMUF9TVFJJTkcoWy0tZW5hYmxlLW1tYXBdLAorICAgICAgICAgICAgICAgICAgIFtlbmFibGUgdXNhZ2Ugb2YgdW5yZWFsaWFibGUgbW1hcCBpZiBhdmFpbGFibGVdKSwKKyAgICBbXSwKKyAgICBbZW5hYmxlX21tYXA9bm9dKQorCisgIEFTX0lGKFt0ZXN0ICJ4JGVuYWJsZV9tbWFwIiA9ICJ4eWVzIl0sIFsKKyAgICBBQ19DSEVDS19GVU5DUyhbbW1hcF0pCisgICAgQUNfREVGSU5FKFVTRV9NTUFQLCAxLCBbVXNlIHVucmVsaWFibGUgbW1hcCBzdXBwb3J0XSkKKyAgXSkKK10pCisKKyMgRFBLR19DSEVDS19QUk9HTkFNRQorIyAtLS0tLS0tLS0tLS0tLS0tLS0tCisjIENoZWNrIGZvciBzeXN0ZW0gaW1wbGVtZW50YXRpb25zIG9mIHByb2dyYW0gbmFtZSB0cmFja2luZy4KK0FDX0RFRlVOKFtEUEtHX0NIRUNLX1BST0dOQU1FXSwKK1sKKyAgQUNfTVNHX0NIRUNLSU5HKFtmb3IgcHJvZ3JhbV9pbnZvY2F0aW9uX3Nob3J0X25hbWVdKQorICBBQ19MSU5LX0lGRUxTRShbQUNfTEFOR19QUk9HUkFNKFtbI2luY2x1ZGUgPGVycm5vLmg+XV0sCisgICAgICAgICAgICAgICAgIFtbY29uc3QgY2hhciAqcCA9IHByb2dyYW1faW52b2NhdGlvbl9zaG9ydF9uYW1lO11dKV0sCisgICAgICAgICAgICAgICAgIFtBQ19ERUZJTkUoW0hBVkVfUFJPR1JBTV9JTlZPQ0FUSU9OX1NIT1JUX05BTUVdLCBbMV0sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgW0RlZmluZSB0byAxIGlmIHlvdSBoYXZlIHByb2dyYW1faW52b2NhdGlvbl9zaG9ydF9uYW1lXSkKKyAgICAgICAgICAgICAgICAgIEFDX01TR19SRVNVTFQoW3llc10pXSwKKyAgICAgICAgICAgICAgICAgW0FDX01TR19SRVNVTFQoW25vXSldKQorCisgIEFDX01TR19DSEVDS0lORyhbZm9yIF9fcHJvZ25hbWVdKQorICBBQ19MSU5LX0lGRUxTRShbQUNfTEFOR19QUk9HUkFNKFtbXV0sCisgICAgICAgICAgICAgICAgIFtbZXh0ZXJuIGNoYXIgKl9fcHJvZ25hbWU7CisgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqcCA9IF9fcHJvZ25hbWU7XV0pXSwKKyAgICAgICAgICAgICAgICAgW0FDX0RFRklORShbSEFWRV9fX1BST0dOQU1FXSwgWzFdLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSBfX3Byb2duYW1lXSkKKyAgICAgICAgICAgICAgICAgIEFDX01TR19SRVNVTFQoW3llc10pXSwKKyAgICAgICAgICAgICAgICAgW0FDX01TR19SRVNVTFQoW25vXSldKQorXSkgIyBEUEtHX0NIRUNLX1BST0dOQU1FCisKKyMgRFBLR19DSEVDS19DT01QQVRfRlVOQ1MoTElTVCkKKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyMgQ2hlY2sgZWFjaCBmdW5jdGlvbiBhbmQgZGVmaW5lIGFuIGF1dG9tYWtlIGNvbmRpdGlvbmFsCitBQ19ERUZVTihbRFBLR19DSEVDS19DT01QQVRfRlVOQ1NdLAorWworICBBQ19DSEVDS19GVU5DUyhbJDFdKQorICBtNF9mb3JlYWNoX3coW2FjX2Z1bmNdLCBbJDFdLCBbCisgICAgQU1fQ09ORElUSU9OQUwoSEFWRV9bXUFTX1RSX0NQUChhY19mdW5jKSwKKyAgICAgICAgICAgICAgICAgICBbdGVzdCAieCRhY19jdl9mdW5jX1tdQVNfVFJfU0goYWNfZnVuYykiID0gInh5ZXMiXSkKKyAgXSkKK10pICMgRFBLR19DSEVDS19DT01QQVRfRlVOQ1MKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbTQvZHBrZy1saWJzLm00IGIvZHBrZy0xLjE2LjEuMS9tNC9kcGtnLWxpYnMubTQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMWQ5ODAzZQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbTQvZHBrZy1saWJzLm00CkBAIC0wLDAgKzEsMTMzIEBACisjIENvcHlyaWdodCDCqSAyMDA0IFNjb3R0IEphbWVzIFJlbW5hbnQgPHNjb3R0QG5ldHNwbGl0LmNvbT4KKyMgQ29weXJpZ2h0IMKpIDIwMDcgTmljb2xhcyBGcmFuw6dvaXMgPG5pY29sYXMuZnJhbmNvaXNAY2VudHJhbGllbnMubmV0PgorIyBDb3B5cmlnaHQgwqkgMjAwNiwgMjAwOSBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKyMgRFBLR19XSVRIX0NPTVBSRVNTX0xJQihOQU1FLCBIRUFERVIsIEZVTkMsIExJTkspCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyMgQ2hlY2sgZm9yIGF2YWlsYWJpbGl0eSBvZiBhIGNvbXByZXNzaW9uIGxpYnJhcnkuCitBQ19ERUZVTihbRFBLR19XSVRIX0NPTVBSRVNTX0xJQl0sIFsKKyAgQUNfQVJHX1ZBUihBU19UUl9DUFAoJDEpW19MSUJTXSwgW2xpbmtlciBmbGFncyBmb3IgJDEgbGlicmFyeV0pCisgIEFDX0FSR19XSVRIKCQxLAorICAgIEFTX0hFTFBfU1RSSU5HKFstLXdpdGgtJDFdLAorICAgICAgICAgICAgICAgICAgIFt1c2UgJDEgbGlicmFyeSBmb3IgY29tcHJlc3Npb24gYW5kIGRlY29tcHJlc3Npb25dKSkKKyAgaWYgdGVzdCAieCR3aXRoXyQxIiAhPSAieG5vIjsgdGhlbgorICAgIEFDX0NIRUNLX0xJQihbJDRdLCBbJDNdLCBbCisgICAgICBBQ19ERUZJTkUoW1dJVEhfXUFTX1RSX0NQUCgkMSksIDEsCisgICAgICAgICAgICAgICAgW0RlZmluZSB0byAxIHRvIHVzZSAkMSByYXRoZXIgdGhhbiBjb25zb2xlIHRvb2xdKQorICAgICAgaWYgdGVzdCAieCR3aXRoXyQxIiA9ICJ4c3RhdGljIjsgdGhlbgorICAgICAgICBkcGtnXyQxX2xpYnM9Ii1XbCwtQnN0YXRpYyAtbCQ0IC1XbCwtQmR5bmFtaWMiCisgICAgICBlbHNlCisgICAgICAgIGRwa2dfJDFfbGlicz0iLWwkNCIKKyAgICAgIGZpCisgICAgICBBU19UUl9DUFAoJDEpX0xJQlM9IiR7QVNfVFJfQ1BQKCQxKV9MSUJTOiskQVNfVFJfQ1BQKCQxKV9MSUJTIH0kZHBrZ18kMV9saWJzIgorICAgICAgd2l0aF8kMT0ieWVzIgorICAgIF0sIFsKKyAgICAgIGlmIHRlc3QgLW4gIiR3aXRoXyQxIjsgdGhlbgorICAgICAgICBBQ19NU0dfRkFJTFVSRShbJDEgbGlicmFyeSBub3QgZm91bmRdKQorICAgICAgZmkKKyAgICBdKQorCisgICAgQUNfQ0hFQ0tfSEVBREVSKFskMl0sIFtdLCBbCisgICAgICBpZiB0ZXN0IC1uICIkd2l0aF8kMSI7IHRoZW4KKyAgICAgICAgQUNfTVNHX0ZBSUxVUkUoWyQxIGhlYWRlciBub3QgZm91bmRdKQorICAgICAgZmkKKyAgICBdKQorICBmaQorXSkjIERQS0dfV0lUSF9DT01QUkVTU19MSUIKKworIyBEUEtHX0xJQl9aTElCCisjIC0tLS0tLS0tLS0tLS0KKyMgQ2hlY2sgZm9yIHpsaWIgbGlicmFyeS4KK0FDX0RFRlVOKFtEUEtHX0xJQl9aTElCXSwgWworICBEUEtHX1dJVEhfQ09NUFJFU1NfTElCKFt6bGliXSwgW3psaWIuaF0sIFtnemRvcGVuXSwgW3pdKQorXSkjIERQS0dfTElCX1pMSUIKKworIyBEUEtHX0xJQl9CWjIKKyMgLS0tLS0tLS0tLS0tCisjIENoZWNrIGZvciBiejIgbGlicmFyeS4KK0FDX0RFRlVOKFtEUEtHX0xJQl9CWjJdLCBbCisgIERQS0dfV0lUSF9DT01QUkVTU19MSUIoW2J6Ml0sIFtiemxpYi5oXSwgW0JaMl9iemRvcGVuXSwgW2J6Ml0pCitdKSMgRFBLR19MSUJfQloyCisKKyMgRFBLR19MSUJfU0VMSU5VWAorIyAtLS0tLS0tLS0tLS0tLS0tCisjIENoZWNrIGZvciBzZWxpbnV4IGxpYnJhcnkuCitBQ19ERUZVTihbRFBLR19MSUJfU0VMSU5VWF0sIFsKK0FDX1JFUVVJUkUoW1BLR19QUk9HX1BLR19DT05GSUddKQorQUNfQVJHX1ZBUihbU0VMSU5VWF9MSUJTXSwgW2xpbmtlciBmbGFncyBmb3Igc2VsaW51eCBsaWJyYXJ5XSlkbmwKK0FDX0FSR19XSVRIKHNlbGludXgsCisJQVNfSEVMUF9TVFJJTkcoWy0td2l0aC1zZWxpbnV4XSwKKwkJICAgICAgIFt1c2Ugc2VsaW51eCBsaWJyYXJ5IHRvIHNldCBzZWN1cml0eSBjb250ZXh0c10pKQoraWYgdGVzdCAieCR3aXRoX3NlbGludXgiICE9ICJ4bm8iOyB0aGVuCisJQUNfQ0hFQ0tfTElCKFtzZWxpbnV4XSwgW2lzX3NlbGludXhfZW5hYmxlZF0sCisJCVtBQ19ERUZJTkUoV0lUSF9TRUxJTlVYLCAxLAorCQkJW0RlZmluZSB0byAxIHRvIGNvbXBpbGUgaW4gU0VMaW51eCBzdXBwb3J0XSkKKwkJUEtHX0NIRUNLX0VYSVNUUyhbbGlic2VsaW51eF0sIFsKKwkJCWlmIHRlc3QgIngkd2l0aF9zZWxpbnV4IiA9ICJ4c3RhdGljIjsgdGhlbgorCQkJCWRwa2dfc2VsaW51eF9saWJzPSItV2wsLUJzdGF0aWMgIiQoJFBLR19DT05GSUcgLS1zdGF0aWMgLS1saWJzIGxpYnNlbGludXgpIiAtV2wsLUJkeW5hbWljIgorCQkJZWxzZQorCQkJCWRwa2dfc2VsaW51eF9saWJzPSQoJFBLR19DT05GSUcgLS1saWJzIGxpYnNlbGludXgpCisJCQlmaQorCQldLCBbCisJCQlpZiB0ZXN0ICJ4JHdpdGhfc2VsaW51eCIgPSAieHN0YXRpYyI7IHRoZW4KKwkJCQlkcGtnX3NlbGludXhfbGlicz0iLVdsLC1Cc3RhdGljIC1sc2VsaW51eCAtbHNlcG9sIC1XbCwtQmR5bmFtaWMiCisJCQllbHNlCisJCQkJZHBrZ19zZWxpbnV4X2xpYnM9Ii1sc2VsaW51eCIKKwkJCWZpCisJCV0pCisJCSBTRUxJTlVYX0xJQlM9IiR7U0VMSU5VWF9MSUJTOiskU0VMSU5VWF9MSUJTIH0kZHBrZ19zZWxpbnV4X2xpYnMiCisJCSB3aXRoX3NlbGludXg9InllcyJdLAorCQlbaWYgdGVzdCAtbiAiJHdpdGhfc2VsaW51eCI7IHRoZW4KKwkJCUFDX01TR19GQUlMVVJFKFtzZWxpbnV4IGxpYnJhcnkgbm90IGZvdW5kXSkKKwkJIGZpXSkKKworCUFDX0NIRUNLX0hFQURFUihbc2VsaW51eC9zZWxpbnV4LmhdLCwKKwkJW2lmIHRlc3QgLW4gIiR3aXRoX3NlbGludXgiOyB0aGVuCisJCQlBQ19NU0dfRkFJTFVSRShbc2VsaW51eCBoZWFkZXIgbm90IGZvdW5kXSkKKwkJIGZpXSkKK2ZpCitdKSMgRFBLR19MSUJfU0VMSU5VWAorCisjIF9EUEtHX0NIRUNLX0xJQl9DVVJTRVNfTkFSUk9XCisjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisjIENoZWNrIGZvciBuYXJyb3cgY3Vyc2VzIGxpYnJhcnkuCitBQ19ERUZVTihbX0RQS0dfQ0hFQ0tfTElCX0NVUlNFU19OQVJST1ddLCBbCitBQ19DSEVDS19MSUIoW25jdXJzZXNdLCBbaW5pdHNjcl0sCisgIFtDVVJTRVNfTElCUz0iJHtDVVJTRVNfTElCUzorJENVUlNFU19MSUJTIH0tbG5jdXJzZXMiXSwKKyAgW0FDX0NIRUNLX0xJQihbY3Vyc2VzXSwgW2luaXRzY3JdLAorICAgICBbQ1VSU0VTX0xJQlM9IiR7Q1VSU0VTX0xJQlM6KyRDVVJTRVNfTElCUyB9LWxjdXJzZXMiXSwKKyAgICAgW0FDX01TR19FUlJPUihbbm8gY3Vyc2VzIGxpYnJhcnkgZm91bmRdKV0pXSldKQorXSkjIERQS0dfQ0hFQ0tfTElCX0NVUlNFU19OQVJST1cKKworIyBEUEtHX0xJQl9DVVJTRVMKKyMgLS0tLS0tLS0tLS0tLS0tCisjIENoZWNrIGZvciBjdXJzZXMgbGlicmFyeS4KK0FDX0RFRlVOKFtEUEtHX0xJQl9DVVJTRVNdLCBbCitBQ19SRVFVSVJFKFtEUEtHX1VOSUNPREVdKQorQUNfQVJHX1ZBUihbQ1VSU0VTX0xJQlNdLCBbbGlua2VyIGZsYWdzIGZvciBjdXJzZXMgbGlicmFyeV0pZG5sCitBQ19DSEVDS19IRUFERVJTKFtuY3Vyc2VzL25jdXJzZXMuaCBuY3Vyc2VzLmggY3Vyc2VzLmggbmN1cnNlcy90ZXJtLmggdGVybS5oXSwKKyAgICAgICAgICAgICAgICAgW2hhdmVfY3Vyc2VzX2hlYWRlcj15ZXNdKQoraWYgdGVzdCAieCRVU0VfVU5JQ09ERSIgPSAieHllcyI7IHRoZW4KKyAgQUNfQ0hFQ0tfSEVBREVSUyhbbmN1cnNlc3cvbmN1cnNlcy5oIG5jdXJzZXN3L3Rlcm0uaF0sCisgICAgICAgICAgICAgICAgICAgW2hhdmVfY3Vyc2VzX2hlYWRlcj15ZXNdKQorICBBQ19DSEVDS19MSUIoW25jdXJzZXN3XSwgW2luaXRzY3JdLAorICAgIFtDVVJTRVNfTElCUz0iJHtDVVJTRVNfTElCUzorJENVUlNFU19MSUJTIH0tbG5jdXJzZXN3Il0sCisgICAgW19EUEtHX0NIRUNLX0xJQl9DVVJTRVNfTkFSUk9XKCldKQorZWxzZQorICBfRFBLR19DSEVDS19MSUJfQ1VSU0VTX05BUlJPVygpCitmaQoraWYgdGVzdCAieCRoYXZlX2N1cnNlc19oZWFkZXIiICE9ICJ4eWVzIjsgdGhlbgorICBBQ19NU0dfRkFJTFVSRShbY3Vyc2VzIGhlYWRlciBub3QgZm91bmRdKQorZmkKK10pIyBEUEtHX0xJQl9DVVJTRVMKKworIyBEUEtHX0xJQl9TU0QKKyMgLS0tLS0tLS0tLS0tCisjIENoZWNrIGZvciBzdGFydC1zdG9wLWRhZW1vbiBsaWJyYXJpZXMuCitBQ19ERUZVTihbRFBLR19MSUJfU1NEXSwKK1tBQ19BUkdfVkFSKFtTU0RfTElCU10sIFtsaW5rZXIgZmxhZ3MgZm9yIHN0YXJ0LXN0b3AtZGFlbW9uXSlkbmwKK0FDX0NIRUNLX0xJQihbaWhhc2hdLCBbaWhhc2hfY3JlYXRlXSwgW1NTRF9MSUJTPSIke1NTRF9MSUJTOiskU1NEX0xJQlMgfS1saWhhc2giXSkKK0FDX0NIRUNLX0xJQihbcHNdLCBbcHJvY19zdGF0X2xpc3RfY3JlYXRlXSwgW1NTRF9MSUJTPSIke1NTRF9MSUJTOiskU1NEX0xJQlMgfS1scHMiXSkKK0FDX0NIRUNLX0xJQihbc2hvdWxkYmVpbmxpYmNdLCBbZm10X3Bhc3RfdGltZV0sIFtTU0RfTElCUz0iJHtTU0RfTElCUzorJFNTRF9MSUJTIH0tbHNob3VsZGJlaW5saWJjIl0pCitBQ19DSEVDS19MSUIoW2t2bV0sIFtrdm1fb3BlbmZpbGVzXSwgW1NTRF9MSUJTPSIke1NTRF9MSUJTOiskU1NEX0xJQlMgfS1sa3ZtIl0pCitdKSMgRFBLR19MSUJfU1NECmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL200L2Rwa2ctbGlua2VyLm00IGIvZHBrZy0xLjE2LjEuMS9tNC9kcGtnLWxpbmtlci5tNApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yZmRhYWU1Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tNC9kcGtnLWxpbmtlci5tNApAQCAtMCwwICsxLDE4IEBACisjIENvcHlyaWdodCDCqSAyMDA0IFNjb3R0IEphbWVzIFJlbW5hbnQgPHNjb3R0QG5ldHNwbGl0LmNvbT4uCisKKyMgRFBLR19MSU5LRVJfT1BUSU1JU0FUSU9OUworIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIyBBZGQgY29uZmlndXJlIG9wdGlvbiB0byBkaXNhYmxlIGxpbmtlciBvcHRpbWlzYXRpb25zLgorQUNfREVGVU4oW0RQS0dfTElOS0VSX09QVElNSVNBVElPTlNdLAorW0FDX0FSR19FTkFCTEUobGlua2VyLW9wdGltaXNhdGlvbnMsCisJQVNfSEVMUF9TVFJJTkcoWy0tZGlzYWJsZS1saW5rZXItb3B0aW1pc2F0aW9uc10sCisJCSAgICAgICBbRGlzYWJsZSBsaW5rZXIgb3B0aW1pc2F0aW9uc10pLAorICAgIFtdLAorICAgIFtlbmFibGVfbGlua2VyX29wdGltaXNhdGlvbnM9eWVzXSkKKworICBBU19JRihbdGVzdCAieCRlbmFibGVfbGlua2VyX29wdGltaXNhdGlvbnMiID0gInhubyJdLCBbCisgICAgTERGTEFHUz0kKGVjaG8gIiRMREZMQUdTIiB8IHNlZCAtZSAicy8gLVdsLC1PW1swLTldXSpcYi8vZyIpCisgIF0sIFsKKyAgICBMREZMQUdTPSIkTERGTEFHUyAtV2wsLU8xIgorICBdKQorXSkKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbTQvZHBrZy1wcm9ncy5tNCBiL2Rwa2ctMS4xNi4xLjEvbTQvZHBrZy1wcm9ncy5tNApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jNzFhNDEyCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tNC9kcGtnLXByb2dzLm00CkBAIC0wLDAgKzEsMzUgQEAKKyMgQ29weXJpZ2h0IMKpIDIwMDUgU2NvdHQgSmFtZXMgUmVtbmFudCA8c2NvdHRAbmV0c3BsaXQuY29tPgorIyBDb3B5cmlnaHQgwqkgMjAwNyBGcmFuayBMaWNodGVuaGVsZCA8ZGpwaWdAZGViaWFuLm9yZz4KKyMgQ29weXJpZ2h0IMKpIDIwMDcsIDIwMDkgR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisjIERQS0dfUFJPR19QRVJMCisjIC0tLS0tLS0tLS0tLS0tCisjIExvY2F0ZSBwZXJsIGludGVycHJldGVyIGluIHRoZSBwYXRoCitBQ19ERUZVTihbRFBLR19QUk9HX1BFUkxdLAorW0FDX0FSR19WQVIoW1BFUkxdLCBbUGVybCBpbnRlcnByZXRlcl0pZG5sCitBQ19QQVRIX1BST0coW1BFUkxdLCBbcGVybF0sIFsvdXNyL2Jpbi9wZXJsXSlkbmwKK0FDX0FSR19WQVIoW1BFUkxfTElCRElSXSwgW1BlcmwgbGlicmFyeSBkaXJlY3RvcnldKWRubAorUEVSTF9MSUJESVI9JCgkUEVSTCAtTUNvbmZpZyAtZSAnbXkgJHIgPSAkQ29uZmlne3ZlbmRvcmxpYmV4cH07CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkciA9fiBzLyRDb25maWd7dmVuZG9ycHJlZml4ZXhwfS9cJChwcmVmaXgpLzsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByaW50ICRyJylkbmwKK10pIyBEUEtHX1BST0dfUEVSTAorCisjIERQS0dfUFJPR19QTzRBCisjIC0tLS0tLS0tLS0tLS0tCitBQ19ERUZVTihbRFBLR19QUk9HX1BPNEFdLCBbCitBQ19SRVFVSVJFKFtBTV9OTFNdKQorQUNfQ0hFQ0tfUFJPR1MoW1BPNEFdLCBbcG80YV0pCitpZiB0ZXN0ICIkVVNFX05MUyIgPSAieWVzIiAmJiB0ZXN0IC1uICIkUE80QSI7IHRoZW4KKyAgVVNFX1BPNEE9eWVzCitlbHNlCisgIFVTRV9QTzRBPW5vCitmaQorQUNfU1VCU1QoW1VTRV9QTzRBXSkKK10pIyBEUEtHX1BST0dfUE80QQorCisjIERQS0dfUFJPR19QT0QyTUFOCisjIC0tLS0tLS0tLS0tLS0tCitBQ19ERUZVTihbRFBLR19QUk9HX1BPRDJNQU5dLCBbCitBQ19DSEVDS19QUk9HUyhbUE9EMk1BTl0sIFtwb2QybWFuXSkKK0FNX0NPTkRJVElPTkFMKEJVSUxEX1BPRF9ET0MsIFt0ZXN0ICJ4JFBPRDJNQU4iICE9ICJ4Il0pCitdKSMgRFBLR19QUk9HX1BPRDJNQU4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbTQvZHBrZy10eXBlcy5tNCBiL2Rwa2ctMS4xNi4xLjEvbTQvZHBrZy10eXBlcy5tNApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jM2IzODBkCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tNC9kcGtnLXR5cGVzLm00CkBAIC0wLDAgKzEsMzYgQEAKKyMgQ29weXJpZ2h0IMKpIDIwMDUgU2NvdHQgSmFtZXMgUmVtbmFudCA8c2NvdHRAbmV0c3BsaXQuY29tPgorIyBDb3B5cmlnaHQgwqkgMjAwOSBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKyMgRFBLR19UWVBFX1BUUkRJRkZfVAorIyAtLS0tLS0tLS0tLS0tLS0tLS0tCisjIENoZWNrIGZvciB0aGUgcHRyZGlmZl90IHR5cGUsIGRlZmluaW5nIHRvIGludCBpZiBub3QgZGVmaW5lZAorQUNfREVGVU4oW0RQS0dfVFlQRV9QVFJESUZGX1RdLAorW0FDX0NIRUNLX1RZUEUoW3B0cmRpZmZfdF0sLAorCUFDX0RFRklORV9VTlFVT1RFRChbcHRyZGlmZl90XSwgW2ludF0sCisJCQkgICBbRGVmaW5lIHRvICdpbnQnIGlmIDxtYWxsb2MuaD4gZG9lcyBub3QgZGVmaW5lLl0pKWRubAorXSkjIERQS0dfVFlQRV9QVFJESUZGX1QKKworIyBEUEtHX0RFQ0xfU1lTX1NJR0xJU1QKKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisjIENoZWNrIGZvciB0aGUgc3lzX3NpZ2xpc3QgdmFyaWFibGUgaW4gZWl0aGVyIHNpZ25hbC5oIG9yIHVuaXN0ZC5oCitBQ19ERUZVTihbRFBLR19ERUNMX1NZU19TSUdMSVNUXSwKK1tBQ19DSEVDS19IRUFERVJTKFt1bmlzdGQuaF0pCitBQ19DSEVDS19ERUNMUyhbc3lzX3NpZ2xpc3RdLCwsCitbI2luY2x1ZGUgPHNpZ25hbC5oPgorLyogTmV0QlNEIGRlY2xhcmVzIHN5c19zaWdsaXN0IGluIHVuaXN0ZC5oLiAgKi8KKyNpZiBIQVZFX1VOSVNURF9ICisjICBpbmNsdWRlIDx1bmlzdGQuaD4KKyNlbmRpZgorXSlkbmwKK10pIyBEUEtHX0RFQ0xfU1lTX1NJR0xJU1QKKworIyBEUEtHX0NIRUNLX0RFQ0woW0RFQ0xdLCBbSEVBREVSXSkKKyMgLS0tLS0tLS0tLS0tLS0tLS0KKyMgRGVmaW5lIEhBVkVfREVDTCB0byAxIGlmIGRlY2xhcmVkIGluIEhFQURFUgorQUNfREVGVU4oW0RQS0dfQ0hFQ0tfREVDTF0sCitbCisgIEFDX0NIRUNLX0RFQ0woJDEsCisgICAgICAgICAgICAgICAgW0FDX0RFRklORShbSEFWRV9dQVNfVFJfQ1BQKCQxKSwgMSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIFtEZWZpbmUgdG8gMSBpZiAnXSQxWycgaXMgZGVjbGFyZWQgaW4gPCQyPl0pXSwsCisgICAgICAgICAgICAgICAgW1sjaW5jbHVkZSA8JDI+XV0pCitdKSMgRFBLR19DSEVDS19ERUNMCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL200L2Rwa2ctdW5pY29kZS5tNCBiL2Rwa2ctMS4xNi4xLjEvbTQvZHBrZy11bmljb2RlLm00Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjFhZjdiZjAKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL200L2Rwa2ctdW5pY29kZS5tNApAQCAtMCwwICsxLDIxIEBACisjIENvcHlyaWdodCDCqSAxOTk1LTIwMDMsIDIwMDUtMjAwNiBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KKyMgQ29weXJpZ2h0IMKpIDIwMDkgWXVyaSBWYXNpbGV2c2tpIDx5dmFzaWxldkBnZW50b28ub3JnPgorIyBDb3B5cmlnaHQgwqkgMjAxMCBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CisjCisjIFRoaXMgZmlsZSBpcyBmcmVlIHNvZnR3YXJlOyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uCisjIGdpdmVzIHVubGltaXRlZCBwZXJtaXNzaW9uIHRvIGNvcHkgYW5kL29yIGRpc3RyaWJ1dGUgaXQsCisjIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb25zLCBhcyBsb25nIGFzIHRoaXMgbm90aWNlIGlzIHByZXNlcnZlZC4KKworIyBEUEtHX1VOSUNPREUoKQorIyAtLS0tLS0tLS0tLS0tLQorIyBBZGQgY29uZmlndXJlIG9wdGlvbiB0byBkaXNhYmxlIFVuaWNvZGUgc3VwcG9ydC4KK0FDX0RFRlVOKFtEUEtHX1VOSUNPREVdLCBbCisgIEFDX01TR19DSEVDS0lORyhbd2hldGhlciBVbmljb2RlIGlzIHJlcXVlc3RlZF0pCisgIGRubCBEZWZhdWx0OiBVbmljb2RlIGlzIGVuYWJsZWQuCisgIEFDX0FSR19FTkFCTEUoW3VuaWNvZGVdLAorICAgIFtBU19IRUxQX1NUUklORyhbLS1kaXNhYmxlLXVuaWNvZGVdLAorICAgICAgICAgICAgICAgICAgICBbZG8gbm90IHVzZSBVbmljb2RlICh3aWRlIGNoYXJzKSBzdXBwb3J0XSldLAorICAgIFtVU0VfVU5JQ09ERT0kZW5hYmxldmFsXSwgW1VTRV9VTklDT0RFPXllc10pCisgIEFDX01TR19SRVNVTFQoJFVTRV9VTklDT0RFKQorICBBQ19TVUJTVChVU0VfVU5JQ09ERSkKK10pICMgRFBLR19VTklDT0RFCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL200L2dldHRleHQubTQgYi9kcGtnLTEuMTYuMS4xL200L2dldHRleHQubTQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZjg0ZTZhNQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbTQvZ2V0dGV4dC5tNApAQCAtMCwwICsxLDM4MyBAQAorIyBnZXR0ZXh0Lm00IHNlcmlhbCA2MyAoZ2V0dGV4dC0wLjE4KQorZG5sIENvcHlyaWdodCAoQykgMTk5NS0yMDEwIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgorZG5sIFRoaXMgZmlsZSBpcyBmcmVlIHNvZnR3YXJlOyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uCitkbmwgZ2l2ZXMgdW5saW1pdGVkIHBlcm1pc3Npb24gdG8gY29weSBhbmQvb3IgZGlzdHJpYnV0ZSBpdCwKK2RubCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9ucywgYXMgbG9uZyBhcyB0aGlzIG5vdGljZSBpcyBwcmVzZXJ2ZWQuCitkbmwKK2RubCBUaGlzIGZpbGUgY2FuIGNhbiBiZSB1c2VkIGluIHByb2plY3RzIHdoaWNoIGFyZSBub3QgYXZhaWxhYmxlIHVuZGVyCitkbmwgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIG9yIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYworZG5sIExpY2Vuc2UgYnV0IHdoaWNoIHN0aWxsIHdhbnQgdG8gcHJvdmlkZSBzdXBwb3J0IGZvciB0aGUgR05VIGdldHRleHQKK2RubCBmdW5jdGlvbmFsaXR5LgorZG5sIFBsZWFzZSBub3RlIHRoYXQgdGhlIGFjdHVhbCBjb2RlIG9mIHRoZSBHTlUgZ2V0dGV4dCBsaWJyYXJ5IGlzIGNvdmVyZWQKK2RubCBieSB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSwgYW5kIHRoZSByZXN0IG9mIHRoZSBHTlUKK2RubCBnZXR0ZXh0IHBhY2thZ2UgcGFja2FnZSBpcyBjb3ZlcmVkIGJ5IHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZS4KK2RubCBUaGV5IGFyZSAqbm90KiBpbiB0aGUgcHVibGljIGRvbWFpbi4KKworZG5sIEF1dGhvcnM6CitkbmwgICBVbHJpY2ggRHJlcHBlciA8ZHJlcHBlckBjeWdudXMuY29tPiwgMTk5NS0yMDAwLgorZG5sICAgQnJ1bm8gSGFpYmxlIDxoYWlibGVAY2xpc3AuY29ucy5vcmc+LCAyMDAwLTIwMDYsIDIwMDgtMjAxMC4KKworZG5sIE1hY3JvIHRvIGFkZCBmb3IgdXNpbmcgR05VIGdldHRleHQuCisKK2RubCBVc2FnZTogQU1fR05VX0dFVFRFWFQoW0lOVExTWU1CT0xdLCBbTkVFRFNZTUJPTF0sIFtJTlRMRElSXSkuCitkbmwgSU5UTFNZTUJPTCBjYW4gYmUgb25lIG9mICdleHRlcm5hbCcsICduby1saWJ0b29sJywgJ3VzZS1saWJ0b29sJy4gVGhlCitkbmwgICAgZGVmYXVsdCAoaWYgaXQgaXMgbm90IHNwZWNpZmllZCBvciBlbXB0eSkgaXMgJ25vLWxpYnRvb2wnLgorZG5sICAgIElOVExTWU1CT0wgc2hvdWxkIGJlICdleHRlcm5hbCcgZm9yIHBhY2thZ2VzIHdpdGggbm8gaW50bCBkaXJlY3RvcnksCitkbmwgICAgYW5kICduby1saWJ0b29sJyBvciAndXNlLWxpYnRvb2wnIGZvciBwYWNrYWdlcyB3aXRoIGFuIGludGwgZGlyZWN0b3J5LgorZG5sICAgIElmIElOVExTWU1CT0wgaXMgJ3VzZS1saWJ0b29sJywgdGhlbiBhIGxpYnRvb2wgbGlicmFyeQorZG5sICAgICQodG9wX2J1aWxkZGlyKS9pbnRsL2xpYmludGwubGEgd2lsbCBiZSBjcmVhdGVkIChzaGFyZWQgYW5kL29yIHN0YXRpYywKK2RubCAgICBkZXBlbmRpbmcgb24gLS17ZW5hYmxlLGRpc2FibGV9LXtzaGFyZWQsc3RhdGljfSBhbmQgb24gdGhlIHByZXNlbmNlIG9mCitkbmwgICAgQU0tRElTQUJMRS1TSEFSRUQpLiBJZiBJTlRMU1lNQk9MIGlzICduby1saWJ0b29sJywgYSBzdGF0aWMgbGlicmFyeQorZG5sICAgICQodG9wX2J1aWxkZGlyKS9pbnRsL2xpYmludGwuYSB3aWxsIGJlIGNyZWF0ZWQuCitkbmwgSWYgTkVFRFNZTUJPTCBpcyBzcGVjaWZpZWQgYW5kIGlzICduZWVkLW5nZXR0ZXh0JywgdGhlbiBHTlUgZ2V0dGV4dAorZG5sICAgIGltcGxlbWVudGF0aW9ucyAoaW4gbGliYyBvciBsaWJpbnRsKSB3aXRob3V0IHRoZSBuZ2V0dGV4dCgpIGZ1bmN0aW9uCitkbmwgICAgd2lsbCBiZSBpZ25vcmVkLiAgSWYgTkVFRFNZTUJPTCBpcyBzcGVjaWZpZWQgYW5kIGlzCitkbmwgICAgJ25lZWQtZm9ybWF0c3RyaW5nLW1hY3JvcycsIHRoZW4gR05VIGdldHRleHQgaW1wbGVtZW50YXRpb25zIHRoYXQgZG9uJ3QKK2RubCAgICBzdXBwb3J0IHRoZSBJU08gQyA5OSA8aW50dHlwZXMuaD4gZm9ybWF0c3RyaW5nIG1hY3JvcyB3aWxsIGJlIGlnbm9yZWQuCitkbmwgSU5UTERJUiBpcyB1c2VkIHRvIGZpbmQgdGhlIGludGwgbGlicmFyaWVzLiAgSWYgZW1wdHksCitkbmwgICAgdGhlIHZhbHVlIGAkKHRvcF9idWlsZGRpcikvaW50bC8nIGlzIHVzZWQuCitkbmwKK2RubCBUaGUgcmVzdWx0IG9mIHRoZSBjb25maWd1cmF0aW9uIGlzIG9uZSBvZiB0aHJlZSBjYXNlczoKK2RubCAxKSBHTlUgZ2V0dGV4dCwgYXMgaW5jbHVkZWQgaW4gdGhlIGludGwgc3ViZGlyZWN0b3J5LCB3aWxsIGJlIGNvbXBpbGVkCitkbmwgICAgYW5kIHVzZWQuCitkbmwgICAgQ2F0YWxvZyBmb3JtYXQ6IEdOVSAtLT4gaW5zdGFsbCBpbiAkKGRhdGFkaXIpCitkbmwgICAgQ2F0YWxvZyBleHRlbnNpb246IC5tbyBhZnRlciBpbnN0YWxsYXRpb24sIC5nbW8gaW4gc291cmNlIHRyZWUKK2RubCAyKSBHTlUgZ2V0dGV4dCBoYXMgYmVlbiBmb3VuZCBpbiB0aGUgc3lzdGVtJ3MgQyBsaWJyYXJ5LgorZG5sICAgIENhdGFsb2cgZm9ybWF0OiBHTlUgLS0+IGluc3RhbGwgaW4gJChkYXRhZGlyKQorZG5sICAgIENhdGFsb2cgZXh0ZW5zaW9uOiAubW8gYWZ0ZXIgaW5zdGFsbGF0aW9uLCAuZ21vIGluIHNvdXJjZSB0cmVlCitkbmwgMykgTm8gaW50ZXJuYXRpb25hbGl6YXRpb24sIGFsd2F5cyB1c2UgRW5nbGlzaCBtc2dpZC4KK2RubCAgICBDYXRhbG9nIGZvcm1hdDogbm9uZQorZG5sICAgIENhdGFsb2cgZXh0ZW5zaW9uOiBub25lCitkbmwgSWYgSU5UTFNZTUJPTCBpcyAnZXh0ZXJuYWwnLCBvbmx5IGNhc2VzIDIgYW5kIDMgY2FuIG9jY3VyLgorZG5sIFRoZSB1c2Ugb2YgLmdtbyBpcyBoaXN0b3JpY2FsIChpdCB3YXMgbmVlZGVkIHRvIGF2b2lkIG92ZXJ3cml0aW5nIHRoZQorZG5sIEdOVSBmb3JtYXQgY2F0YWxvZ3Mgd2hlbiBidWlsZGluZyBvbiBhIHBsYXRmb3JtIHdpdGggYW4gWC9PcGVuIGdldHRleHQpLAorZG5sIGJ1dCB3ZSBrZWVwIGl0IGluIG9yZGVyIG5vdCB0byBmb3JjZSBpcnJlbGV2YW50IGZpbGVuYW1lIGNoYW5nZXMgb24gdGhlCitkbmwgbWFpbnRhaW5lcnMuCitkbmwKK0FDX0RFRlVOKFtBTV9HTlVfR0VUVEVYVF0sCitbCisgIGRubCBBcmd1bWVudCBjaGVja2luZy4KKyAgaWZlbHNlKFskMV0sIFtdLCAsIFtpZmVsc2UoWyQxXSwgW2V4dGVybmFsXSwgLCBbaWZlbHNlKFskMV0sIFtuby1saWJ0b29sXSwgLCBbaWZlbHNlKFskMV0sIFt1c2UtbGlidG9vbF0sICwKKyAgICBbZXJycHJpbnQoW0VSUk9SOiBpbnZhbGlkIGZpcnN0IGFyZ3VtZW50IHRvIEFNX0dOVV9HRVRURVhUCitdKV0pXSldKV0pCisgIGlmZWxzZShpZmVsc2UoWyQxXSwgW10sIFtvbGRdKVtdaWZlbHNlKFskMV0sIFtuby1saWJ0b29sXSwgW29sZF0pLCBbb2xkXSwKKyAgICBbQUNfRElBR05PU0UoW29ic29sZXRlXSwgW1VzZSBvZiBBTV9HTlVfR0VUVEVYVCB3aXRob3V0IFtleHRlcm5hbF0gYXJndW1lbnQgaXMgZGVwcmVjYXRlZC5dKV0pCisgIGlmZWxzZShbJDJdLCBbXSwgLCBbaWZlbHNlKFskMl0sIFtuZWVkLW5nZXR0ZXh0XSwgLCBbaWZlbHNlKFskMl0sIFtuZWVkLWZvcm1hdHN0cmluZy1tYWNyb3NdLCAsCisgICAgW2VycnByaW50KFtFUlJPUjogaW52YWxpZCBzZWNvbmQgYXJndW1lbnQgdG8gQU1fR05VX0dFVFRFWFQKK10pXSldKV0pCisgIGRlZmluZShbZ3RfaW5jbHVkZWRfaW50bF0sCisgICAgaWZlbHNlKFskMV0sIFtleHRlcm5hbF0sCisgICAgICBpZmRlZihbQU1fR05VX0dFVFRFWFRfXVtJTlRMX1NVQkRJUl0sIFt5ZXNdLCBbbm9dKSwKKyAgICAgIFt5ZXNdKSkKKyAgZGVmaW5lKFtndF9saWJ0b29sX3N1ZmZpeF9wcmVmaXhdLCBpZmVsc2UoWyQxXSwgW3VzZS1saWJ0b29sXSwgW2xdLCBbXSkpCisgIGd0X05FRURTX0lOSVQKKyAgQU1fR05VX0dFVFRFWFRfTkVFRChbJDJdKQorCisgIEFDX1JFUVVJUkUoW0FNX1BPX1NVQkRJUlNdKWRubAorICBpZmVsc2UoZ3RfaW5jbHVkZWRfaW50bCwgeWVzLCBbCisgICAgQUNfUkVRVUlSRShbQU1fSU5UTF9TVUJESVJdKWRubAorICBdKQorCisgIGRubCBQcmVyZXF1aXNpdGVzIG9mIEFDX0xJQl9MSU5LRkxBR1NfQk9EWS4KKyAgQUNfUkVRVUlSRShbQUNfTElCX1BSRVBBUkVfUFJFRklYXSkKKyAgQUNfUkVRVUlSRShbQUNfTElCX1JQQVRIXSkKKworICBkbmwgU29tZXRpbWVzIGxpYmludGwgcmVxdWlyZXMgbGliaWNvbnYsIHNvIGZpcnN0IHNlYXJjaCBmb3IgbGliaWNvbnYuCisgIGRubCBJZGVhbGx5IHdlIHdvdWxkIGRvIHRoaXMgc2VhcmNoIG9ubHkgYWZ0ZXIgdGhlCisgIGRubCAgICAgIGlmIHRlc3QgIiRVU0VfTkxTIiA9ICJ5ZXMiOyB0aGVuCisgIGRubCAgICAgICAgaWYgeyBldmFsICJndF92YWw9XCQkZ3RfZnVuY19nbnVnZXR0ZXh0X2xpYmMiOyB0ZXN0ICIkZ3RfdmFsIiAhPSAieWVzIjsgfTsgdGhlbgorICBkbmwgdGVzdHMuIEJ1dCBpZiBjb25maWd1cmUuaW4gaW52b2tlcyBBTV9JQ09OViBhZnRlciBBTV9HTlVfR0VUVEVYVAorICBkbmwgdGhlIGNvbmZpZ3VyZSBzY3JpcHQgd291bGQgbmVlZCB0byBjb250YWluIHRoZSBzYW1lIHNoZWxsIGNvZGUKKyAgZG5sIGFnYWluLCBvdXRzaWRlIGFueSAnaWYnLiBUaGVyZSBhcmUgdHdvIHNvbHV0aW9uczoKKyAgZG5sIC0gSW52b2tlIEFNX0lDT05WX0xJTktGTEFHU19CT0RZIGhlcmUsIG91dHNpZGUgYW55ICdpZicuCisgIGRubCAtIENvbnRyb2wgdGhlIGV4cGFuc2lvbnMgaW4gbW9yZSBkZXRhaWwgdXNpbmcgQUNfUFJPVklERV9JRkVMU0UuCisgIGRubCBTaW5jZSBBQ19QUk9WSURFX0lGRUxTRSBpcyBvbmx5IGluIGF1dG9jb25mID49IDIuNTIgYW5kIG5vdAorICBkbmwgZG9jdW1lbnRlZCwgd2UgYXZvaWQgaXQuCisgIGlmZWxzZShndF9pbmNsdWRlZF9pbnRsLCB5ZXMsICwgWworICAgIEFDX1JFUVVJUkUoW0FNX0lDT05WX0xJTktGTEFHU19CT0RZXSkKKyAgXSkKKworICBkbmwgU29tZXRpbWVzLCBvbiBNYWNPUyBYLCBsaWJpbnRsIHJlcXVpcmVzIGxpbmtpbmcgd2l0aCBDb3JlRm91bmRhdGlvbi4KKyAgZ3RfSU5UTF9NQUNPU1gKKworICBkbmwgU2V0IFVTRV9OTFMuCisgIEFDX1JFUVVJUkUoW0FNX05MU10pCisKKyAgaWZlbHNlKGd0X2luY2x1ZGVkX2ludGwsIHllcywgWworICAgIEJVSUxEX0lOQ0xVREVEX0xJQklOVEw9bm8KKyAgICBVU0VfSU5DTFVERURfTElCSU5UTD1ubworICBdKQorICBMSUJJTlRMPQorICBMVExJQklOVEw9CisgIFBPU1VCPQorCisgIGRubCBBZGQgYSB2ZXJzaW9uIG51bWJlciB0byB0aGUgY2FjaGUgbWFjcm9zLgorICBjYXNlICIgJGd0X25lZWRzICIgaW4KKyAgICAqIiBuZWVkLWZvcm1hdHN0cmluZy1tYWNyb3MgIiopIGd0X2FwaV92ZXJzaW9uPTMgOzsKKyAgICAqIiBuZWVkLW5nZXR0ZXh0ICIqKSBndF9hcGlfdmVyc2lvbj0yIDs7CisgICAgKikgZ3RfYXBpX3ZlcnNpb249MSA7OworICBlc2FjCisgIGd0X2Z1bmNfZ251Z2V0dGV4dF9saWJjPSJndF9jdl9mdW5jX2dudWdldHRleHQke2d0X2FwaV92ZXJzaW9ufV9saWJjIgorICBndF9mdW5jX2dudWdldHRleHRfbGliaW50bD0iZ3RfY3ZfZnVuY19nbnVnZXR0ZXh0JHtndF9hcGlfdmVyc2lvbn1fbGliaW50bCIKKworICBkbmwgSWYgd2UgdXNlIE5MUyBmaWd1cmUgb3V0IHdoYXQgbWV0aG9kCisgIGlmIHRlc3QgIiRVU0VfTkxTIiA9ICJ5ZXMiOyB0aGVuCisgICAgZ3RfdXNlX3ByZWluc3RhbGxlZF9nbnVnZXR0ZXh0PW5vCisgICAgaWZlbHNlKGd0X2luY2x1ZGVkX2ludGwsIHllcywgWworICAgICAgQUNfTVNHX0NIRUNLSU5HKFt3aGV0aGVyIGluY2x1ZGVkIGdldHRleHQgaXMgcmVxdWVzdGVkXSkKKyAgICAgIEFDX0FSR19XSVRIKFtpbmNsdWRlZC1nZXR0ZXh0XSwKKyAgICAgICAgWyAgLS13aXRoLWluY2x1ZGVkLWdldHRleHQgdXNlIHRoZSBHTlUgZ2V0dGV4dCBsaWJyYXJ5IGluY2x1ZGVkIGhlcmVdLAorICAgICAgICBubHNfY3ZfZm9yY2VfdXNlX2dudV9nZXR0ZXh0PSR3aXRodmFsLAorICAgICAgICBubHNfY3ZfZm9yY2VfdXNlX2dudV9nZXR0ZXh0PW5vKQorICAgICAgQUNfTVNHX1JFU1VMVChbJG5sc19jdl9mb3JjZV91c2VfZ251X2dldHRleHRdKQorCisgICAgICBubHNfY3ZfdXNlX2dudV9nZXR0ZXh0PSIkbmxzX2N2X2ZvcmNlX3VzZV9nbnVfZ2V0dGV4dCIKKyAgICAgIGlmIHRlc3QgIiRubHNfY3ZfZm9yY2VfdXNlX2dudV9nZXR0ZXh0IiAhPSAieWVzIjsgdGhlbgorICAgIF0pCisgICAgICAgIGRubCBVc2VyIGRvZXMgbm90IGluc2lzdCBvbiB1c2luZyBHTlUgTkxTIGxpYnJhcnkuICBGaWd1cmUgb3V0IHdoYXQKKyAgICAgICAgZG5sIHRvIHVzZS4gIElmIEdOVSBnZXR0ZXh0IGlzIGF2YWlsYWJsZSB3ZSB1c2UgdGhpcy4gIEVsc2Ugd2UgaGF2ZQorICAgICAgICBkbmwgdG8gZmFsbCBiYWNrIHRvIEdOVSBOTFMgbGlicmFyeS4KKworICAgICAgICBpZiB0ZXN0ICRndF9hcGlfdmVyc2lvbiAtZ2UgMzsgdGhlbgorICAgICAgICAgIGd0X3JldmlzaW9uX3Rlc3RfY29kZT0nCisjaWZuZGVmIF9fR05VX0dFVFRFWFRfU1VQUE9SVEVEX1JFVklTSU9OCisjZGVmaW5lIF9fR05VX0dFVFRFWFRfU1VQUE9SVEVEX1JFVklTSU9OKG1ham9yKSAoKG1ham9yKSA9PSAwID8gMCA6IC0xKQorI2VuZGlmCitjaGFuZ2VxdW90ZSgsKWRubAordHlwZWRlZiBpbnQgYXJyYXkgWzIgKiAoX19HTlVfR0VUVEVYVF9TVVBQT1JURURfUkVWSVNJT04oMCkgPj0gMSkgLSAxXTsKK2NoYW5nZXF1b3RlKFssXSlkbmwKKycKKyAgICAgICAgZWxzZQorICAgICAgICAgIGd0X3JldmlzaW9uX3Rlc3RfY29kZT0KKyAgICAgICAgZmkKKyAgICAgICAgaWYgdGVzdCAkZ3RfYXBpX3ZlcnNpb24gLWdlIDI7IHRoZW4KKyAgICAgICAgICBndF9leHByZXNzaW9uX3Rlc3RfY29kZT0nICsgKiBuZ2V0dGV4dCAoIiIsICIiLCAwKScKKyAgICAgICAgZWxzZQorICAgICAgICAgIGd0X2V4cHJlc3Npb25fdGVzdF9jb2RlPQorICAgICAgICBmaQorCisgICAgICAgIEFDX0NBQ0hFX0NIRUNLKFtmb3IgR05VIGdldHRleHQgaW4gbGliY10sIFskZ3RfZnVuY19nbnVnZXR0ZXh0X2xpYmNdLAorICAgICAgICAgW0FDX1RSWV9MSU5LKFsjaW5jbHVkZSA8bGliaW50bC5oPgorJGd0X3JldmlzaW9uX3Rlc3RfY29kZQorZXh0ZXJuIGludCBfbmxfbXNnX2NhdF9jbnRyOworZXh0ZXJuIGludCAqX25sX2RvbWFpbl9iaW5kaW5ncztdLAorICAgICAgICAgICAgW2JpbmR0ZXh0ZG9tYWluICgiIiwgIiIpOworcmV0dXJuICogZ2V0dGV4dCAoIiIpJGd0X2V4cHJlc3Npb25fdGVzdF9jb2RlICsgX25sX21zZ19jYXRfY250ciArICpfbmxfZG9tYWluX2JpbmRpbmdzXSwKKyAgICAgICAgICAgIFtldmFsICIkZ3RfZnVuY19nbnVnZXR0ZXh0X2xpYmM9eWVzIl0sCisgICAgICAgICAgICBbZXZhbCAiJGd0X2Z1bmNfZ251Z2V0dGV4dF9saWJjPW5vIl0pXSkKKworICAgICAgICBpZiB7IGV2YWwgImd0X3ZhbD1cJCRndF9mdW5jX2dudWdldHRleHRfbGliYyI7IHRlc3QgIiRndF92YWwiICE9ICJ5ZXMiOyB9OyB0aGVuCisgICAgICAgICAgZG5sIFNvbWV0aW1lcyBsaWJpbnRsIHJlcXVpcmVzIGxpYmljb252LCBzbyBmaXJzdCBzZWFyY2ggZm9yIGxpYmljb252LgorICAgICAgICAgIGlmZWxzZShndF9pbmNsdWRlZF9pbnRsLCB5ZXMsICwgWworICAgICAgICAgICAgQU1fSUNPTlZfTElOSworICAgICAgICAgIF0pCisgICAgICAgICAgZG5sIFNlYXJjaCBmb3IgbGliaW50bCBhbmQgZGVmaW5lIExJQklOVEwsIExUTElCSU5UTCBhbmQgSU5DSU5UTAorICAgICAgICAgIGRubCBhY2NvcmRpbmdseS4gRG9uJ3QgdXNlIEFDX0xJQl9MSU5LRkxBR1NfQk9EWShbaW50bF0sW2ljb252XSkKKyAgICAgICAgICBkbmwgYmVjYXVzZSB0aGF0IHdvdWxkIGFkZCAiLWxpY29udiIgdG8gTElCSU5UTCBhbmQgTFRMSUJJTlRMCisgICAgICAgICAgZG5sIGV2ZW4gaWYgbGliaWNvbnYgZG9lc24ndCBleGlzdC4KKyAgICAgICAgICBBQ19MSUJfTElOS0ZMQUdTX0JPRFkoW2ludGxdKQorICAgICAgICAgIEFDX0NBQ0hFX0NIRUNLKFtmb3IgR05VIGdldHRleHQgaW4gbGliaW50bF0sCisgICAgICAgICAgICBbJGd0X2Z1bmNfZ251Z2V0dGV4dF9saWJpbnRsXSwKKyAgICAgICAgICAgW2d0X3NhdmVfQ1BQRkxBR1M9IiRDUFBGTEFHUyIKKyAgICAgICAgICAgIENQUEZMQUdTPSIkQ1BQRkxBR1MgJElOQ0lOVEwiCisgICAgICAgICAgICBndF9zYXZlX0xJQlM9IiRMSUJTIgorICAgICAgICAgICAgTElCUz0iJExJQlMgJExJQklOVEwiCisgICAgICAgICAgICBkbmwgTm93IHNlZSB3aGV0aGVyIGxpYmludGwgZXhpc3RzIGFuZCBkb2VzIG5vdCBkZXBlbmQgb24gbGliaWNvbnYuCisgICAgICAgICAgICBBQ19UUllfTElOSyhbI2luY2x1ZGUgPGxpYmludGwuaD4KKyRndF9yZXZpc2lvbl90ZXN0X2NvZGUKK2V4dGVybiBpbnQgX25sX21zZ19jYXRfY250cjsKK2V4dGVybgorI2lmZGVmIF9fY3BsdXNwbHVzCisiQyIKKyNlbmRpZgorY29uc3QgY2hhciAqX25sX2V4cGFuZF9hbGlhcyAoY29uc3QgY2hhciAqKTtdLAorICAgICAgICAgICAgICBbYmluZHRleHRkb21haW4gKCIiLCAiIik7CityZXR1cm4gKiBnZXR0ZXh0ICgiIikkZ3RfZXhwcmVzc2lvbl90ZXN0X2NvZGUgKyBfbmxfbXNnX2NhdF9jbnRyICsgKl9ubF9leHBhbmRfYWxpYXMgKCIiKV0sCisgICAgICAgICAgICAgIFtldmFsICIkZ3RfZnVuY19nbnVnZXR0ZXh0X2xpYmludGw9eWVzIl0sCisgICAgICAgICAgICAgIFtldmFsICIkZ3RfZnVuY19nbnVnZXR0ZXh0X2xpYmludGw9bm8iXSkKKyAgICAgICAgICAgIGRubCBOb3cgc2VlIHdoZXRoZXIgbGliaW50bCBleGlzdHMgYW5kIGRlcGVuZHMgb24gbGliaWNvbnYuCisgICAgICAgICAgICBpZiB7IGV2YWwgImd0X3ZhbD1cJCRndF9mdW5jX2dudWdldHRleHRfbGliaW50bCI7IHRlc3QgIiRndF92YWwiICE9IHllczsgfSAmJiB0ZXN0IC1uICIkTElCSUNPTlYiOyB0aGVuCisgICAgICAgICAgICAgIExJQlM9IiRMSUJTICRMSUJJQ09OViIKKyAgICAgICAgICAgICAgQUNfVFJZX0xJTksoWyNpbmNsdWRlIDxsaWJpbnRsLmg+CiskZ3RfcmV2aXNpb25fdGVzdF9jb2RlCitleHRlcm4gaW50IF9ubF9tc2dfY2F0X2NudHI7CitleHRlcm4KKyNpZmRlZiBfX2NwbHVzcGx1cworIkMiCisjZW5kaWYKK2NvbnN0IGNoYXIgKl9ubF9leHBhbmRfYWxpYXMgKGNvbnN0IGNoYXIgKik7XSwKKyAgICAgICAgICAgICAgICBbYmluZHRleHRkb21haW4gKCIiLCAiIik7CityZXR1cm4gKiBnZXR0ZXh0ICgiIikkZ3RfZXhwcmVzc2lvbl90ZXN0X2NvZGUgKyBfbmxfbXNnX2NhdF9jbnRyICsgKl9ubF9leHBhbmRfYWxpYXMgKCIiKV0sCisgICAgICAgICAgICAgICBbTElCSU5UTD0iJExJQklOVEwgJExJQklDT05WIgorICAgICAgICAgICAgICAgIExUTElCSU5UTD0iJExUTElCSU5UTCAkTFRMSUJJQ09OViIKKyAgICAgICAgICAgICAgICBldmFsICIkZ3RfZnVuY19nbnVnZXR0ZXh0X2xpYmludGw9eWVzIgorICAgICAgICAgICAgICAgXSkKKyAgICAgICAgICAgIGZpCisgICAgICAgICAgICBDUFBGTEFHUz0iJGd0X3NhdmVfQ1BQRkxBR1MiCisgICAgICAgICAgICBMSUJTPSIkZ3Rfc2F2ZV9MSUJTIl0pCisgICAgICAgIGZpCisKKyAgICAgICAgZG5sIElmIGFuIGFscmVhZHkgcHJlc2VudCBvciBwcmVpbnN0YWxsZWQgR05VIGdldHRleHQoKSBpcyBmb3VuZCwKKyAgICAgICAgZG5sIHVzZSBpdC4gIEJ1dCBpZiB0aGlzIG1hY3JvIGlzIHVzZWQgaW4gR05VIGdldHRleHQsIGFuZCBHTlUKKyAgICAgICAgZG5sIGdldHRleHQgaXMgYWxyZWFkeSBwcmVpbnN0YWxsZWQgaW4gbGliaW50bCwgd2UgdXBkYXRlIHRoaXMKKyAgICAgICAgZG5sIGxpYmludGwuICAoQ2YuIHRoZSBpbnN0YWxsIHJ1bGUgaW4gaW50bC9NYWtlZmlsZS5pbi4pCisgICAgICAgIGlmIHsgZXZhbCAiZ3RfdmFsPVwkJGd0X2Z1bmNfZ251Z2V0dGV4dF9saWJjIjsgdGVzdCAiJGd0X3ZhbCIgPSAieWVzIjsgfSBcCisgICAgICAgICAgIHx8IHsgeyBldmFsICJndF92YWw9XCQkZ3RfZnVuY19nbnVnZXR0ZXh0X2xpYmludGwiOyB0ZXN0ICIkZ3RfdmFsIiA9ICJ5ZXMiOyB9IFwKKyAgICAgICAgICAgICAgICAmJiB0ZXN0ICIkUEFDS0FHRSIgIT0gZ2V0dGV4dC1ydW50aW1lIFwKKyAgICAgICAgICAgICAgICAmJiB0ZXN0ICIkUEFDS0FHRSIgIT0gZ2V0dGV4dC10b29sczsgfTsgdGhlbgorICAgICAgICAgIGd0X3VzZV9wcmVpbnN0YWxsZWRfZ251Z2V0dGV4dD15ZXMKKyAgICAgICAgZWxzZQorICAgICAgICAgIGRubCBSZXNldCB0aGUgdmFsdWVzIHNldCBieSBzZWFyY2hpbmcgZm9yIGxpYmludGwuCisgICAgICAgICAgTElCSU5UTD0KKyAgICAgICAgICBMVExJQklOVEw9CisgICAgICAgICAgSU5DSU5UTD0KKyAgICAgICAgZmkKKworICAgIGlmZWxzZShndF9pbmNsdWRlZF9pbnRsLCB5ZXMsIFsKKyAgICAgICAgaWYgdGVzdCAiJGd0X3VzZV9wcmVpbnN0YWxsZWRfZ251Z2V0dGV4dCIgIT0gInllcyI7IHRoZW4KKyAgICAgICAgICBkbmwgR05VIGdldHRleHQgaXMgbm90IGZvdW5kIGluIHRoZSBDIGxpYnJhcnkuCisgICAgICAgICAgZG5sIEZhbGwgYmFjayBvbiBpbmNsdWRlZCBHTlUgZ2V0dGV4dCBsaWJyYXJ5LgorICAgICAgICAgIG5sc19jdl91c2VfZ251X2dldHRleHQ9eWVzCisgICAgICAgIGZpCisgICAgICBmaQorCisgICAgICBpZiB0ZXN0ICIkbmxzX2N2X3VzZV9nbnVfZ2V0dGV4dCIgPSAieWVzIjsgdGhlbgorICAgICAgICBkbmwgTWFyayBhY3Rpb25zIHVzZWQgdG8gZ2VuZXJhdGUgR05VIE5MUyBsaWJyYXJ5LgorICAgICAgICBCVUlMRF9JTkNMVURFRF9MSUJJTlRMPXllcworICAgICAgICBVU0VfSU5DTFVERURfTElCSU5UTD15ZXMKKyAgICAgICAgTElCSU5UTD0iaWZlbHNlKFskM10sW10sXCR7dG9wX2J1aWxkZGlyfS9pbnRsLFskM10pL2xpYmludGwuW11ndF9saWJ0b29sX3N1ZmZpeF9wcmVmaXhbXWEgJExJQklDT05WICRMSUJUSFJFQUQiCisgICAgICAgIExUTElCSU5UTD0iaWZlbHNlKFskM10sW10sXCR7dG9wX2J1aWxkZGlyfS9pbnRsLFskM10pL2xpYmludGwuW11ndF9saWJ0b29sX3N1ZmZpeF9wcmVmaXhbXWEgJExUTElCSUNPTlYgJExUTElCVEhSRUFEIgorICAgICAgICBMSUJTPWBlY2hvICIgJExJQlMgIiB8IHNlZCAtZSAncy8gLWxpbnRsIC8gLycgLWUgJ3MvXiAvLycgLWUgJ3MvICQvLydgCisgICAgICBmaQorCisgICAgICBDQVRPQkpFWFQ9CisgICAgICBpZiB0ZXN0ICIkZ3RfdXNlX3ByZWluc3RhbGxlZF9nbnVnZXR0ZXh0IiA9ICJ5ZXMiIFwKKyAgICAgICAgIHx8IHRlc3QgIiRubHNfY3ZfdXNlX2dudV9nZXR0ZXh0IiA9ICJ5ZXMiOyB0aGVuCisgICAgICAgIGRubCBNYXJrIGFjdGlvbnMgdG8gdXNlIEdOVSBnZXR0ZXh0IHRvb2xzLgorICAgICAgICBDQVRPQkpFWFQ9LmdtbworICAgICAgZmkKKyAgICBdKQorCisgICAgaWYgdGVzdCAtbiAiJElOVExfTUFDT1NYX0xJQlMiOyB0aGVuCisgICAgICBpZiB0ZXN0ICIkZ3RfdXNlX3ByZWluc3RhbGxlZF9nbnVnZXR0ZXh0IiA9ICJ5ZXMiIFwKKyAgICAgICAgIHx8IHRlc3QgIiRubHNfY3ZfdXNlX2dudV9nZXR0ZXh0IiA9ICJ5ZXMiOyB0aGVuCisgICAgICAgIGRubCBTb21lIGV4dHJhIGZsYWdzIGFyZSBuZWVkZWQgZHVyaW5nIGxpbmtpbmcuCisgICAgICAgIExJQklOVEw9IiRMSUJJTlRMICRJTlRMX01BQ09TWF9MSUJTIgorICAgICAgICBMVExJQklOVEw9IiRMVExJQklOVEwgJElOVExfTUFDT1NYX0xJQlMiCisgICAgICBmaQorICAgIGZpCisKKyAgICBpZiB0ZXN0ICIkZ3RfdXNlX3ByZWluc3RhbGxlZF9nbnVnZXR0ZXh0IiA9ICJ5ZXMiIFwKKyAgICAgICB8fCB0ZXN0ICIkbmxzX2N2X3VzZV9nbnVfZ2V0dGV4dCIgPSAieWVzIjsgdGhlbgorICAgICAgQUNfREVGSU5FKFtFTkFCTEVfTkxTXSwgWzFdLAorICAgICAgICBbRGVmaW5lIHRvIDEgaWYgdHJhbnNsYXRpb24gb2YgcHJvZ3JhbSBtZXNzYWdlcyB0byB0aGUgdXNlcidzIG5hdGl2ZSBsYW5ndWFnZQorICAgaXMgcmVxdWVzdGVkLl0pCisgICAgZWxzZQorICAgICAgVVNFX05MUz1ubworICAgIGZpCisgIGZpCisKKyAgQUNfTVNHX0NIRUNLSU5HKFt3aGV0aGVyIHRvIHVzZSBOTFNdKQorICBBQ19NU0dfUkVTVUxUKFskVVNFX05MU10pCisgIGlmIHRlc3QgIiRVU0VfTkxTIiA9ICJ5ZXMiOyB0aGVuCisgICAgQUNfTVNHX0NIRUNLSU5HKFt3aGVyZSB0aGUgZ2V0dGV4dCBmdW5jdGlvbiBjb21lcyBmcm9tXSkKKyAgICBpZiB0ZXN0ICIkZ3RfdXNlX3ByZWluc3RhbGxlZF9nbnVnZXR0ZXh0IiA9ICJ5ZXMiOyB0aGVuCisgICAgICBpZiB7IGV2YWwgImd0X3ZhbD1cJCRndF9mdW5jX2dudWdldHRleHRfbGliaW50bCI7IHRlc3QgIiRndF92YWwiID0gInllcyI7IH07IHRoZW4KKyAgICAgICAgZ3Rfc291cmNlPSJleHRlcm5hbCBsaWJpbnRsIgorICAgICAgZWxzZQorICAgICAgICBndF9zb3VyY2U9ImxpYmMiCisgICAgICBmaQorICAgIGVsc2UKKyAgICAgIGd0X3NvdXJjZT0iaW5jbHVkZWQgaW50bCBkaXJlY3RvcnkiCisgICAgZmkKKyAgICBBQ19NU0dfUkVTVUxUKFskZ3Rfc291cmNlXSkKKyAgZmkKKworICBpZiB0ZXN0ICIkVVNFX05MUyIgPSAieWVzIjsgdGhlbgorCisgICAgaWYgdGVzdCAiJGd0X3VzZV9wcmVpbnN0YWxsZWRfZ251Z2V0dGV4dCIgPSAieWVzIjsgdGhlbgorICAgICAgaWYgeyBldmFsICJndF92YWw9XCQkZ3RfZnVuY19nbnVnZXR0ZXh0X2xpYmludGwiOyB0ZXN0ICIkZ3RfdmFsIiA9ICJ5ZXMiOyB9OyB0aGVuCisgICAgICAgIEFDX01TR19DSEVDS0lORyhbaG93IHRvIGxpbmsgd2l0aCBsaWJpbnRsXSkKKyAgICAgICAgQUNfTVNHX1JFU1VMVChbJExJQklOVExdKQorICAgICAgICBBQ19MSUJfQVBQRU5EVE9WQVIoW0NQUEZMQUdTXSwgWyRJTkNJTlRMXSkKKyAgICAgIGZpCisKKyAgICAgIGRubCBGb3IgYmFja3dhcmQgY29tcGF0aWJpbGl0eS4gU29tZSBwYWNrYWdlcyBtYXkgYmUgdXNpbmcgdGhpcy4KKyAgICAgIEFDX0RFRklORShbSEFWRV9HRVRURVhUXSwgWzFdLAorICAgICAgIFtEZWZpbmUgaWYgdGhlIEdOVSBnZXR0ZXh0KCkgZnVuY3Rpb24gaXMgYWxyZWFkeSBwcmVzZW50IG9yIHByZWluc3RhbGxlZC5dKQorICAgICAgQUNfREVGSU5FKFtIQVZFX0RDR0VUVEVYVF0sIFsxXSwKKyAgICAgICBbRGVmaW5lIGlmIHRoZSBHTlUgZGNnZXR0ZXh0KCkgZnVuY3Rpb24gaXMgYWxyZWFkeSBwcmVzZW50IG9yIHByZWluc3RhbGxlZC5dKQorICAgIGZpCisKKyAgICBkbmwgV2UgbmVlZCB0byBwcm9jZXNzIHRoZSBwby8gZGlyZWN0b3J5LgorICAgIFBPU1VCPXBvCisgIGZpCisKKyAgaWZlbHNlKGd0X2luY2x1ZGVkX2ludGwsIHllcywgWworICAgIGRubCBJZiB0aGlzIGlzIHVzZWQgaW4gR05VIGdldHRleHQgd2UgaGF2ZSB0byBzZXQgQlVJTERfSU5DTFVERURfTElCSU5UTAorICAgIGRubCB0byAneWVzJyBiZWNhdXNlIHNvbWUgb2YgdGhlIHRlc3RzdWl0ZSByZXF1aXJlcyBpdC4KKyAgICBpZiB0ZXN0ICIkUEFDS0FHRSIgPSBnZXR0ZXh0LXJ1bnRpbWUgfHwgdGVzdCAiJFBBQ0tBR0UiID0gZ2V0dGV4dC10b29sczsgdGhlbgorICAgICAgQlVJTERfSU5DTFVERURfTElCSU5UTD15ZXMKKyAgICBmaQorCisgICAgZG5sIE1ha2UgYWxsIHZhcmlhYmxlcyB3ZSB1c2Uga25vd24gdG8gYXV0b2NvbmYuCisgICAgQUNfU1VCU1QoW0JVSUxEX0lOQ0xVREVEX0xJQklOVExdKQorICAgIEFDX1NVQlNUKFtVU0VfSU5DTFVERURfTElCSU5UTF0pCisgICAgQUNfU1VCU1QoW0NBVE9CSkVYVF0pCisKKyAgICBkbmwgRm9yIGJhY2t3YXJkIGNvbXBhdGliaWxpdHkuIFNvbWUgY29uZmlndXJlLmlucyBtYXkgYmUgdXNpbmcgdGhpcy4KKyAgICBubHNfY3ZfaGVhZGVyX2ludGw9CisgICAgbmxzX2N2X2hlYWRlcl9saWJndD0KKworICAgIGRubCBGb3IgYmFja3dhcmQgY29tcGF0aWJpbGl0eS4gU29tZSBNYWtlZmlsZXMgbWF5IGJlIHVzaW5nIHRoaXMuCisgICAgREFUQURJUk5BTUU9c2hhcmUKKyAgICBBQ19TVUJTVChbREFUQURJUk5BTUVdKQorCisgICAgZG5sIEZvciBiYWNrd2FyZCBjb21wYXRpYmlsaXR5LiBTb21lIE1ha2VmaWxlcyBtYXkgYmUgdXNpbmcgdGhpcy4KKyAgICBJTlNUT0JKRVhUPS5tbworICAgIEFDX1NVQlNUKFtJTlNUT0JKRVhUXSkKKworICAgIGRubCBGb3IgYmFja3dhcmQgY29tcGF0aWJpbGl0eS4gU29tZSBNYWtlZmlsZXMgbWF5IGJlIHVzaW5nIHRoaXMuCisgICAgR0VOQ0FUPWdlbmNhdAorICAgIEFDX1NVQlNUKFtHRU5DQVRdKQorCisgICAgZG5sIEZvciBiYWNrd2FyZCBjb21wYXRpYmlsaXR5LiBTb21lIE1ha2VmaWxlcyBtYXkgYmUgdXNpbmcgdGhpcy4KKyAgICBJTlRMT0JKUz0KKyAgICBpZiB0ZXN0ICIkVVNFX0lOQ0xVREVEX0xJQklOVEwiID0geWVzOyB0aGVuCisgICAgICBJTlRMT0JKUz0iXCQoR0VUVE9CSlMpIgorICAgIGZpCisgICAgQUNfU1VCU1QoW0lOVExPQkpTXSkKKworICAgIGRubCBFbmFibGUgbGlidG9vbCBzdXBwb3J0IGlmIHRoZSBzdXJyb3VuZGluZyBwYWNrYWdlIHdpc2hlcyBpdC4KKyAgICBJTlRMX0xJQlRPT0xfU1VGRklYX1BSRUZJWD1ndF9saWJ0b29sX3N1ZmZpeF9wcmVmaXgKKyAgICBBQ19TVUJTVChbSU5UTF9MSUJUT09MX1NVRkZJWF9QUkVGSVhdKQorICBdKQorCisgIGRubCBGb3IgYmFja3dhcmQgY29tcGF0aWJpbGl0eS4gU29tZSBNYWtlZmlsZXMgbWF5IGJlIHVzaW5nIHRoaXMuCisgIElOVExMSUJTPSIkTElCSU5UTCIKKyAgQUNfU1VCU1QoW0lOVExMSUJTXSkKKworICBkbmwgTWFrZSBhbGwgZG9jdW1lbnRlZCB2YXJpYWJsZXMga25vd24gdG8gYXV0b2NvbmYuCisgIEFDX1NVQlNUKFtMSUJJTlRMXSkKKyAgQUNfU1VCU1QoW0xUTElCSU5UTF0pCisgIEFDX1NVQlNUKFtQT1NVQl0pCitdKQorCisKK2RubCBndF9ORUVEU19JTklUIGVuc3VyZXMgdGhhdCB0aGUgZ3RfbmVlZHMgdmFyaWFibGUgaXMgaW5pdGlhbGl6ZWQuCittNF9kZWZpbmUoW2d0X05FRURTX0lOSVRdLAorWworICBtNF9kaXZlcnRfdGV4dChbREVGQVVMVFNdLCBbZ3RfbmVlZHM9XSkKKyAgbTRfZGVmaW5lKFtndF9ORUVEU19JTklUXSwgW10pCitdKQorCisKK2RubCBVc2FnZTogQU1fR05VX0dFVFRFWFRfTkVFRChbTkVFRFNZTUJPTF0pCitBQ19ERUZVTihbQU1fR05VX0dFVFRFWFRfTkVFRF0sCitbCisgIG00X2RpdmVydF90ZXh0KFtJTklUX1BSRVBBUkVdLCBbZ3RfbmVlZHM9IiRndF9uZWVkcyAkMSJdKQorXSkKKworCitkbmwgVXNhZ2U6IEFNX0dOVV9HRVRURVhUX1ZFUlNJT04oW2dldHRleHQtdmVyc2lvbl0pCitBQ19ERUZVTihbQU1fR05VX0dFVFRFWFRfVkVSU0lPTl0sIFtdKQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tNC9pY29udi5tNCBiL2Rwa2ctMS4xNi4xLjEvbTQvaWNvbnYubTQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZjQ2ZmYxNAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbTQvaWNvbnYubTQKQEAgLTAsMCArMSwxOTkgQEAKKyMgaWNvbnYubTQgc2VyaWFsIDkgKGdldHRleHQtMC4xOCkKK2RubCBDb3B5cmlnaHQgKEMpIDIwMDAtMjAwMiwgMjAwNy0yMDEwIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgorZG5sIFRoaXMgZmlsZSBpcyBmcmVlIHNvZnR3YXJlOyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uCitkbmwgZ2l2ZXMgdW5saW1pdGVkIHBlcm1pc3Npb24gdG8gY29weSBhbmQvb3IgZGlzdHJpYnV0ZSBpdCwKK2RubCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9ucywgYXMgbG9uZyBhcyB0aGlzIG5vdGljZSBpcyBwcmVzZXJ2ZWQuCisKK2RubCBGcm9tIEJydW5vIEhhaWJsZS4KKworQUNfREVGVU4oW0FNX0lDT05WX0xJTktGTEFHU19CT0RZXSwKK1sKKyAgZG5sIFByZXJlcXVpc2l0ZXMgb2YgQUNfTElCX0xJTktGTEFHU19CT0RZLgorICBBQ19SRVFVSVJFKFtBQ19MSUJfUFJFUEFSRV9QUkVGSVhdKQorICBBQ19SRVFVSVJFKFtBQ19MSUJfUlBBVEhdKQorCisgIGRubCBTZWFyY2ggZm9yIGxpYmljb252IGFuZCBkZWZpbmUgTElCSUNPTlYsIExUTElCSUNPTlYgYW5kIElOQ0lDT05WCisgIGRubCBhY2NvcmRpbmdseS4KKyAgQUNfTElCX0xJTktGTEFHU19CT0RZKFtpY29udl0pCitdKQorCitBQ19ERUZVTihbQU1fSUNPTlZfTElOS10sCitbCisgIGRubCBTb21lIHN5c3RlbXMgaGF2ZSBpY29udiBpbiBsaWJjLCBzb21lIGhhdmUgaXQgaW4gbGliaWNvbnYgKE9TRi8xIGFuZAorICBkbmwgdGhvc2Ugd2l0aCB0aGUgc3RhbmRhbG9uZSBwb3J0YWJsZSBHTlUgbGliaWNvbnYgaW5zdGFsbGVkKS4KKyAgQUNfUkVRVUlSRShbQUNfQ0FOT05JQ0FMX0hPU1RdKSBkbmwgZm9yIGNyb3NzLWNvbXBpbGVzCisKKyAgZG5sIFNlYXJjaCBmb3IgbGliaWNvbnYgYW5kIGRlZmluZSBMSUJJQ09OViwgTFRMSUJJQ09OViBhbmQgSU5DSUNPTlYKKyAgZG5sIGFjY29yZGluZ2x5LgorICBBQ19SRVFVSVJFKFtBTV9JQ09OVl9MSU5LRkxBR1NfQk9EWV0pCisKKyAgZG5sIEFkZCAkSU5DSUNPTlYgdG8gQ1BQRkxBR1MgYmVmb3JlIHBlcmZvcm1pbmcgdGhlIGZvbGxvd2luZyBjaGVja3MsCisgIGRubCBiZWNhdXNlIGlmIHRoZSB1c2VyIGhhcyBpbnN0YWxsZWQgbGliaWNvbnYgYW5kIG5vdCBkaXNhYmxlZCBpdHMgdXNlCisgIGRubCB2aWEgLS13aXRob3V0LWxpYmljb252LXByZWZpeCwgaGUgd2FudHMgdG8gdXNlIGl0LiBUaGUgZmlyc3QKKyAgZG5sIEFDX1RSWV9MSU5LIHdpbGwgdGhlbiBmYWlsLCB0aGUgc2Vjb25kIEFDX1RSWV9MSU5LIHdpbGwgc3VjY2VlZC4KKyAgYW1fc2F2ZV9DUFBGTEFHUz0iJENQUEZMQUdTIgorICBBQ19MSUJfQVBQRU5EVE9WQVIoW0NQUEZMQUdTXSwgWyRJTkNJQ09OVl0pCisKKyAgQUNfQ0FDSEVfQ0hFQ0soW2ZvciBpY29udl0sIFthbV9jdl9mdW5jX2ljb252XSwgWworICAgIGFtX2N2X2Z1bmNfaWNvbnY9Im5vLCBjb25zaWRlciBpbnN0YWxsaW5nIEdOVSBsaWJpY29udiIKKyAgICBhbV9jdl9saWJfaWNvbnY9bm8KKyAgICBBQ19UUllfTElOSyhbI2luY2x1ZGUgPHN0ZGxpYi5oPgorI2luY2x1ZGUgPGljb252Lmg+XSwKKyAgICAgIFtpY29udl90IGNkID0gaWNvbnZfb3BlbigiIiwiIik7CisgICAgICAgaWNvbnYoY2QsTlVMTCxOVUxMLE5VTEwsTlVMTCk7CisgICAgICAgaWNvbnZfY2xvc2UoY2QpO10sCisgICAgICBbYW1fY3ZfZnVuY19pY29udj15ZXNdKQorICAgIGlmIHRlc3QgIiRhbV9jdl9mdW5jX2ljb252IiAhPSB5ZXM7IHRoZW4KKyAgICAgIGFtX3NhdmVfTElCUz0iJExJQlMiCisgICAgICBMSUJTPSIkTElCUyAkTElCSUNPTlYiCisgICAgICBBQ19UUllfTElOSyhbI2luY2x1ZGUgPHN0ZGxpYi5oPgorI2luY2x1ZGUgPGljb252Lmg+XSwKKyAgICAgICAgW2ljb252X3QgY2QgPSBpY29udl9vcGVuKCIiLCIiKTsKKyAgICAgICAgIGljb252KGNkLE5VTEwsTlVMTCxOVUxMLE5VTEwpOworICAgICAgICAgaWNvbnZfY2xvc2UoY2QpO10sCisgICAgICAgIFthbV9jdl9saWJfaWNvbnY9eWVzXQorICAgICAgICBbYW1fY3ZfZnVuY19pY29udj15ZXNdKQorICAgICAgTElCUz0iJGFtX3NhdmVfTElCUyIKKyAgICBmaQorICBdKQorICBpZiB0ZXN0ICIkYW1fY3ZfZnVuY19pY29udiIgPSB5ZXM7IHRoZW4KKyAgICBBQ19DQUNIRV9DSEVDSyhbZm9yIHdvcmtpbmcgaWNvbnZdLCBbYW1fY3ZfZnVuY19pY29udl93b3Jrc10sIFsKKyAgICAgIGRubCBUaGlzIHRlc3RzIGFnYWluc3QgYnVncyBpbiBBSVggNS4xLCBIUC1VWCAxMS4xMSwgU29sYXJpcyAxMC4KKyAgICAgIGFtX3NhdmVfTElCUz0iJExJQlMiCisgICAgICBpZiB0ZXN0ICRhbV9jdl9saWJfaWNvbnYgPSB5ZXM7IHRoZW4KKyAgICAgICAgTElCUz0iJExJQlMgJExJQklDT05WIgorICAgICAgZmkKKyAgICAgIEFDX1RSWV9SVU4oWworI2luY2x1ZGUgPGljb252Lmg+CisjaW5jbHVkZSA8c3RyaW5nLmg+CitpbnQgbWFpbiAoKQoreworICAvKiBUZXN0IGFnYWluc3QgQUlYIDUuMSBidWc6IEZhaWx1cmVzIGFyZSBub3QgZGlzdGluZ3Vpc2hhYmxlIGZyb20gc3VjY2Vzc2Z1bAorICAgICByZXR1cm5zLiAgKi8KKyAgeworICAgIGljb252X3QgY2RfdXRmOF90b184ODU5MSA9IGljb252X29wZW4gKCJJU084ODU5LTEiLCAiVVRGLTgiKTsKKyAgICBpZiAoY2RfdXRmOF90b184ODU5MSAhPSAoaWNvbnZfdCkoLTEpKQorICAgICAgeworICAgICAgICBzdGF0aWMgY29uc3QgY2hhciBpbnB1dFtdID0gIlwzNDJcMjAyXDI1NCI7IC8qIEVVUk8gU0lHTiAqLworICAgICAgICBjaGFyIGJ1ZlsxMF07CisgICAgICAgIGNvbnN0IGNoYXIgKmlucHRyID0gaW5wdXQ7CisgICAgICAgIHNpemVfdCBpbmJ5dGVzbGVmdCA9IHN0cmxlbiAoaW5wdXQpOworICAgICAgICBjaGFyICpvdXRwdHIgPSBidWY7CisgICAgICAgIHNpemVfdCBvdXRieXRlc2xlZnQgPSBzaXplb2YgKGJ1Zik7CisgICAgICAgIHNpemVfdCByZXMgPSBpY29udiAoY2RfdXRmOF90b184ODU5MSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2hhciAqKikgJmlucHRyLCAmaW5ieXRlc2xlZnQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgJm91dHB0ciwgJm91dGJ5dGVzbGVmdCk7CisgICAgICAgIGlmIChyZXMgPT0gMCkKKyAgICAgICAgICByZXR1cm4gMTsKKyAgICAgIH0KKyAgfQorICAvKiBUZXN0IGFnYWluc3QgU29sYXJpcyAxMCBidWc6IEZhaWx1cmVzIGFyZSBub3QgZGlzdGluZ3Vpc2hhYmxlIGZyb20KKyAgICAgc3VjY2Vzc2Z1bCByZXR1cm5zLiAgKi8KKyAgeworICAgIGljb252X3QgY2RfYXNjaWlfdG9fODg1OTEgPSBpY29udl9vcGVuICgiSVNPODg1OS0xIiwgIjY0NiIpOworICAgIGlmIChjZF9hc2NpaV90b184ODU5MSAhPSAoaWNvbnZfdCkoLTEpKQorICAgICAgeworICAgICAgICBzdGF0aWMgY29uc3QgY2hhciBpbnB1dFtdID0gIlwyNjMiOworICAgICAgICBjaGFyIGJ1ZlsxMF07CisgICAgICAgIGNvbnN0IGNoYXIgKmlucHRyID0gaW5wdXQ7CisgICAgICAgIHNpemVfdCBpbmJ5dGVzbGVmdCA9IHN0cmxlbiAoaW5wdXQpOworICAgICAgICBjaGFyICpvdXRwdHIgPSBidWY7CisgICAgICAgIHNpemVfdCBvdXRieXRlc2xlZnQgPSBzaXplb2YgKGJ1Zik7CisgICAgICAgIHNpemVfdCByZXMgPSBpY29udiAoY2RfYXNjaWlfdG9fODg1OTEsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNoYXIgKiopICZpbnB0ciwgJmluYnl0ZXNsZWZ0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICZvdXRwdHIsICZvdXRieXRlc2xlZnQpOworICAgICAgICBpZiAocmVzID09IDApCisgICAgICAgICAgcmV0dXJuIDE7CisgICAgICB9CisgIH0KKyNpZiAwIC8qIFRoaXMgYnVnIGNvdWxkIGJlIHdvcmtlZCBhcm91bmQgYnkgdGhlIGNhbGxlci4gICovCisgIC8qIFRlc3QgYWdhaW5zdCBIUC1VWCAxMS4xMSBidWc6IFBvc2l0aXZlIHJldHVybiB2YWx1ZSBpbnN0ZWFkIG9mIDAuICAqLworICB7CisgICAgaWNvbnZfdCBjZF84ODU5MV90b191dGY4ID0gaWNvbnZfb3BlbiAoInV0ZjgiLCAiaXNvODg1OTEiKTsKKyAgICBpZiAoY2RfODg1OTFfdG9fdXRmOCAhPSAoaWNvbnZfdCkoLTEpKQorICAgICAgeworICAgICAgICBzdGF0aWMgY29uc3QgY2hhciBpbnB1dFtdID0gIlwzMDRyZ2VyIG1pdCBiXDM2NnNlbiBCXDM3NGJjaGVuIG9obmUgQXVnZW5tYVwzMzciOworICAgICAgICBjaGFyIGJ1Zls1MF07CisgICAgICAgIGNvbnN0IGNoYXIgKmlucHRyID0gaW5wdXQ7CisgICAgICAgIHNpemVfdCBpbmJ5dGVzbGVmdCA9IHN0cmxlbiAoaW5wdXQpOworICAgICAgICBjaGFyICpvdXRwdHIgPSBidWY7CisgICAgICAgIHNpemVfdCBvdXRieXRlc2xlZnQgPSBzaXplb2YgKGJ1Zik7CisgICAgICAgIHNpemVfdCByZXMgPSBpY29udiAoY2RfODg1OTFfdG9fdXRmOCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2hhciAqKikgJmlucHRyLCAmaW5ieXRlc2xlZnQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgJm91dHB0ciwgJm91dGJ5dGVzbGVmdCk7CisgICAgICAgIGlmICgoaW50KXJlcyA+IDApCisgICAgICAgICAgcmV0dXJuIDE7CisgICAgICB9CisgIH0KKyNlbmRpZgorICAvKiBUZXN0IGFnYWluc3QgSFAtVVggMTEuMTEgYnVnOiBObyBjb252ZXJ0ZXIgZnJvbSBFVUMtSlAgdG8gVVRGLTggaXMKKyAgICAgcHJvdmlkZWQuICAqLworICBpZiAoLyogVHJ5IHN0YW5kYXJkaXplZCBuYW1lcy4gICovCisgICAgICBpY29udl9vcGVuICgiVVRGLTgiLCAiRVVDLUpQIikgPT0gKGljb252X3QpKC0xKQorICAgICAgLyogVHJ5IElSSVgsIE9TRi8xIG5hbWVzLiAgKi8KKyAgICAgICYmIGljb252X29wZW4gKCJVVEYtOCIsICJldWNKUCIpID09IChpY29udl90KSgtMSkKKyAgICAgIC8qIFRyeSBBSVggbmFtZXMuICAqLworICAgICAgJiYgaWNvbnZfb3BlbiAoIlVURi04IiwgIklCTS1ldWNKUCIpID09IChpY29udl90KSgtMSkKKyAgICAgIC8qIFRyeSBIUC1VWCBuYW1lcy4gICovCisgICAgICAmJiBpY29udl9vcGVuICgidXRmOCIsICJldWNKUCIpID09IChpY29udl90KSgtMSkpCisgICAgcmV0dXJuIDE7CisgIHJldHVybiAwOworfV0sIFthbV9jdl9mdW5jX2ljb252X3dvcmtzPXllc10sIFthbV9jdl9mdW5jX2ljb252X3dvcmtzPW5vXSwKKyAgICAgICAgW2Nhc2UgIiRob3N0X29zIiBpbgorICAgICAgICAgICBhaXgqIHwgaHB1eCopIGFtX2N2X2Z1bmNfaWNvbnZfd29ya3M9Imd1ZXNzaW5nIG5vIiA7OworICAgICAgICAgICAqKSAgICAgICAgICAgIGFtX2N2X2Z1bmNfaWNvbnZfd29ya3M9Imd1ZXNzaW5nIHllcyIgOzsKKyAgICAgICAgIGVzYWNdKQorICAgICAgTElCUz0iJGFtX3NhdmVfTElCUyIKKyAgICBdKQorICAgIGNhc2UgIiRhbV9jdl9mdW5jX2ljb252X3dvcmtzIiBpbgorICAgICAgKm5vKSBhbV9mdW5jX2ljb252PW5vIGFtX2N2X2xpYl9pY29udj1ubyA7OworICAgICAgKikgICBhbV9mdW5jX2ljb252PXllcyA7OworICAgIGVzYWMKKyAgZWxzZQorICAgIGFtX2Z1bmNfaWNvbnY9bm8gYW1fY3ZfbGliX2ljb252PW5vCisgIGZpCisgIGlmIHRlc3QgIiRhbV9mdW5jX2ljb252IiA9IHllczsgdGhlbgorICAgIEFDX0RFRklORShbSEFWRV9JQ09OVl0sIFsxXSwKKyAgICAgIFtEZWZpbmUgaWYgeW91IGhhdmUgdGhlIGljb252KCkgZnVuY3Rpb24gYW5kIGl0IHdvcmtzLl0pCisgIGZpCisgIGlmIHRlc3QgIiRhbV9jdl9saWJfaWNvbnYiID0geWVzOyB0aGVuCisgICAgQUNfTVNHX0NIRUNLSU5HKFtob3cgdG8gbGluayB3aXRoIGxpYmljb252XSkKKyAgICBBQ19NU0dfUkVTVUxUKFskTElCSUNPTlZdKQorICBlbHNlCisgICAgZG5sIElmICRMSUJJQ09OViBkaWRuJ3QgbGVhZCB0byBhIHVzYWJsZSBsaWJyYXJ5LCB3ZSBkb24ndCBuZWVkICRJTkNJQ09OVgorICAgIGRubCBlaXRoZXIuCisgICAgQ1BQRkxBR1M9IiRhbV9zYXZlX0NQUEZMQUdTIgorICAgIExJQklDT05WPQorICAgIExUTElCSUNPTlY9CisgIGZpCisgIEFDX1NVQlNUKFtMSUJJQ09OVl0pCisgIEFDX1NVQlNUKFtMVExJQklDT05WXSkKK10pCisKK0FDX0RFRlVOKFtBTV9JQ09OVl0sCitbCisgIEFNX0lDT05WX0xJTksKKyAgaWYgdGVzdCAiJGFtX2N2X2Z1bmNfaWNvbnYiID0geWVzOyB0aGVuCisgICAgQUNfTVNHX0NIRUNLSU5HKFtmb3IgaWNvbnYgZGVjbGFyYXRpb25dKQorICAgIEFDX0NBQ0hFX1ZBTChbYW1fY3ZfcHJvdG9faWNvbnZdLCBbCisgICAgICBBQ19UUllfQ09NUElMRShbCisjaW5jbHVkZSA8c3RkbGliLmg+CisjaW5jbHVkZSA8aWNvbnYuaD4KK2V4dGVybgorI2lmZGVmIF9fY3BsdXNwbHVzCisiQyIKKyNlbmRpZgorI2lmIGRlZmluZWQoX19TVERDX18pIHx8IGRlZmluZWQoX19jcGx1c3BsdXMpCitzaXplX3QgaWNvbnYgKGljb252X3QgY2QsIGNoYXIgKiAqaW5idWYsIHNpemVfdCAqaW5ieXRlc2xlZnQsIGNoYXIgKiAqb3V0YnVmLCBzaXplX3QgKm91dGJ5dGVzbGVmdCk7CisjZWxzZQorc2l6ZV90IGljb252KCk7CisjZW5kaWYKK10sIFtdLCBbYW1fY3ZfcHJvdG9faWNvbnZfYXJnMT0iIl0sIFthbV9jdl9wcm90b19pY29udl9hcmcxPSJjb25zdCJdKQorICAgICAgYW1fY3ZfcHJvdG9faWNvbnY9ImV4dGVybiBzaXplX3QgaWNvbnYgKGljb252X3QgY2QsICRhbV9jdl9wcm90b19pY29udl9hcmcxIGNoYXIgKiAqaW5idWYsIHNpemVfdCAqaW5ieXRlc2xlZnQsIGNoYXIgKiAqb3V0YnVmLCBzaXplX3QgKm91dGJ5dGVzbGVmdCk7Il0pCisgICAgYW1fY3ZfcHJvdG9faWNvbnY9YGVjaG8gIlskXWFtX2N2X3Byb3RvX2ljb252IiB8IHRyIC1zICcgJyB8IHNlZCAtZSAncy8oIC8oLydgCisgICAgQUNfTVNHX1JFU1VMVChbCisgICAgICAgICAkYW1fY3ZfcHJvdG9faWNvbnZdKQorICAgIEFDX0RFRklORV9VTlFVT1RFRChbSUNPTlZfQ09OU1RdLCBbJGFtX2N2X3Byb3RvX2ljb252X2FyZzFdLAorICAgICAgW0RlZmluZSBhcyBjb25zdCBpZiB0aGUgZGVjbGFyYXRpb24gb2YgaWNvbnYoKSBuZWVkcyBjb25zdC5dKQorICBmaQorXSkKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbTQvaW50bG1hY29zeC5tNCBiL2Rwa2ctMS4xNi4xLjEvbTQvaW50bG1hY29zeC5tNApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kZDkxMDI1Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tNC9pbnRsbWFjb3N4Lm00CkBAIC0wLDAgKzEsNTEgQEAKKyMgaW50bG1hY29zeC5tNCBzZXJpYWwgMyAoZ2V0dGV4dC0wLjE4KQorZG5sIENvcHlyaWdodCAoQykgMjAwNC0yMDEwIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgorZG5sIFRoaXMgZmlsZSBpcyBmcmVlIHNvZnR3YXJlOyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uCitkbmwgZ2l2ZXMgdW5saW1pdGVkIHBlcm1pc3Npb24gdG8gY29weSBhbmQvb3IgZGlzdHJpYnV0ZSBpdCwKK2RubCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9ucywgYXMgbG9uZyBhcyB0aGlzIG5vdGljZSBpcyBwcmVzZXJ2ZWQuCitkbmwKK2RubCBUaGlzIGZpbGUgY2FuIGNhbiBiZSB1c2VkIGluIHByb2plY3RzIHdoaWNoIGFyZSBub3QgYXZhaWxhYmxlIHVuZGVyCitkbmwgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIG9yIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYworZG5sIExpY2Vuc2UgYnV0IHdoaWNoIHN0aWxsIHdhbnQgdG8gcHJvdmlkZSBzdXBwb3J0IGZvciB0aGUgR05VIGdldHRleHQKK2RubCBmdW5jdGlvbmFsaXR5LgorZG5sIFBsZWFzZSBub3RlIHRoYXQgdGhlIGFjdHVhbCBjb2RlIG9mIHRoZSBHTlUgZ2V0dGV4dCBsaWJyYXJ5IGlzIGNvdmVyZWQKK2RubCBieSB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSwgYW5kIHRoZSByZXN0IG9mIHRoZSBHTlUKK2RubCBnZXR0ZXh0IHBhY2thZ2UgcGFja2FnZSBpcyBjb3ZlcmVkIGJ5IHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZS4KK2RubCBUaGV5IGFyZSAqbm90KiBpbiB0aGUgcHVibGljIGRvbWFpbi4KKworZG5sIENoZWNrcyBmb3Igc3BlY2lhbCBvcHRpb25zIG5lZWRlZCBvbiBNYWNPUyBYLgorZG5sIERlZmluZXMgSU5UTF9NQUNPU1hfTElCUy4KK0FDX0RFRlVOKFtndF9JTlRMX01BQ09TWF0sCitbCisgIGRubCBDaGVjayBmb3IgQVBJIGludHJvZHVjZWQgaW4gTWFjT1MgWCAxMC4yLgorICBBQ19DQUNIRV9DSEVDSyhbZm9yIENGUHJlZmVyZW5jZXNDb3B5QXBwVmFsdWVdLAorICAgIFtndF9jdl9mdW5jX0NGUHJlZmVyZW5jZXNDb3B5QXBwVmFsdWVdLAorICAgIFtndF9zYXZlX0xJQlM9IiRMSUJTIgorICAgICBMSUJTPSIkTElCUyAtV2wsLWZyYW1ld29yayAtV2wsQ29yZUZvdW5kYXRpb24iCisgICAgIEFDX1RSWV9MSU5LKFsjaW5jbHVkZSA8Q29yZUZvdW5kYXRpb24vQ0ZQcmVmZXJlbmNlcy5oPl0sCisgICAgICAgW0NGUHJlZmVyZW5jZXNDb3B5QXBwVmFsdWUoTlVMTCwgTlVMTCldLAorICAgICAgIFtndF9jdl9mdW5jX0NGUHJlZmVyZW5jZXNDb3B5QXBwVmFsdWU9eWVzXSwKKyAgICAgICBbZ3RfY3ZfZnVuY19DRlByZWZlcmVuY2VzQ29weUFwcFZhbHVlPW5vXSkKKyAgICAgTElCUz0iJGd0X3NhdmVfTElCUyJdKQorICBpZiB0ZXN0ICRndF9jdl9mdW5jX0NGUHJlZmVyZW5jZXNDb3B5QXBwVmFsdWUgPSB5ZXM7IHRoZW4KKyAgICBBQ19ERUZJTkUoW0hBVkVfQ0ZQUkVGRVJFTkNFU0NPUFlBUFBWQUxVRV0sIFsxXSwKKyAgICAgIFtEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgTWFjT1MgWCBmdW5jdGlvbiBDRlByZWZlcmVuY2VzQ29weUFwcFZhbHVlIGluIHRoZSBDb3JlRm91bmRhdGlvbiBmcmFtZXdvcmsuXSkKKyAgZmkKKyAgZG5sIENoZWNrIGZvciBBUEkgaW50cm9kdWNlZCBpbiBNYWNPUyBYIDEwLjMuCisgIEFDX0NBQ0hFX0NIRUNLKFtmb3IgQ0ZMb2NhbGVDb3B5Q3VycmVudF0sIFtndF9jdl9mdW5jX0NGTG9jYWxlQ29weUN1cnJlbnRdLAorICAgIFtndF9zYXZlX0xJQlM9IiRMSUJTIgorICAgICBMSUJTPSIkTElCUyAtV2wsLWZyYW1ld29yayAtV2wsQ29yZUZvdW5kYXRpb24iCisgICAgIEFDX1RSWV9MSU5LKFsjaW5jbHVkZSA8Q29yZUZvdW5kYXRpb24vQ0ZMb2NhbGUuaD5dLCBbQ0ZMb2NhbGVDb3B5Q3VycmVudCgpO10sCisgICAgICAgW2d0X2N2X2Z1bmNfQ0ZMb2NhbGVDb3B5Q3VycmVudD15ZXNdLAorICAgICAgIFtndF9jdl9mdW5jX0NGTG9jYWxlQ29weUN1cnJlbnQ9bm9dKQorICAgICBMSUJTPSIkZ3Rfc2F2ZV9MSUJTIl0pCisgIGlmIHRlc3QgJGd0X2N2X2Z1bmNfQ0ZMb2NhbGVDb3B5Q3VycmVudCA9IHllczsgdGhlbgorICAgIEFDX0RFRklORShbSEFWRV9DRkxPQ0FMRUNPUFlDVVJSRU5UXSwgWzFdLAorICAgICAgW0RlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBNYWNPUyBYIGZ1bmN0aW9uIENGTG9jYWxlQ29weUN1cnJlbnQgaW4gdGhlIENvcmVGb3VuZGF0aW9uIGZyYW1ld29yay5dKQorICBmaQorICBJTlRMX01BQ09TWF9MSUJTPQorICBpZiB0ZXN0ICRndF9jdl9mdW5jX0NGUHJlZmVyZW5jZXNDb3B5QXBwVmFsdWUgPSB5ZXMgfHwgdGVzdCAkZ3RfY3ZfZnVuY19DRkxvY2FsZUNvcHlDdXJyZW50ID0geWVzOyB0aGVuCisgICAgSU5UTF9NQUNPU1hfTElCUz0iLVdsLC1mcmFtZXdvcmsgLVdsLENvcmVGb3VuZGF0aW9uIgorICBmaQorICBBQ19TVUJTVChbSU5UTF9NQUNPU1hfTElCU10pCitdKQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tNC9saWItbGQubTQgYi9kcGtnLTEuMTYuMS4xL200L2xpYi1sZC5tNApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lYmIzMDUyCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tNC9saWItbGQubTQKQEAgLTAsMCArMSwxMTAgQEAKKyMgbGliLWxkLm00IHNlcmlhbCA0IChnZXR0ZXh0LTAuMTgpCitkbmwgQ29weXJpZ2h0IChDKSAxOTk2LTIwMDMsIDIwMDktMjAxMCBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KK2RubCBUaGlzIGZpbGUgaXMgZnJlZSBzb2Z0d2FyZTsgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbgorZG5sIGdpdmVzIHVubGltaXRlZCBwZXJtaXNzaW9uIHRvIGNvcHkgYW5kL29yIGRpc3RyaWJ1dGUgaXQsCitkbmwgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbnMsIGFzIGxvbmcgYXMgdGhpcyBub3RpY2UgaXMgcHJlc2VydmVkLgorCitkbmwgU3Vicm91dGluZXMgb2YgbGlidG9vbC5tNCwKK2RubCB3aXRoIHJlcGxhY2VtZW50cyBzL0FDXy9BQ19MSUIvIGFuZCBzL2x0X2N2L2FjbF9jdi8gdG8gYXZvaWQgY29sbGlzaW9uCitkbmwgd2l0aCBsaWJ0b29sLm00LgorCitkbmwgRnJvbSBsaWJ0b29sLTEuNC4gU2V0cyB0aGUgdmFyaWFibGUgd2l0aF9nbnVfbGQgdG8geWVzIG9yIG5vLgorQUNfREVGVU4oW0FDX0xJQl9QUk9HX0xEX0dOVV0sCitbQUNfQ0FDSEVfQ0hFQ0soW2lmIHRoZSBsaW5rZXIgKCRMRCkgaXMgR05VIGxkXSwgW2FjbF9jdl9wcm9nX2dudV9sZF0sCitbIyBJJ2QgcmF0aGVyIHVzZSAtLXZlcnNpb24gaGVyZSwgYnV0IGFwcGFyZW50bHkgc29tZSBHTlUgbGQncyBvbmx5IGFjY2VwdCAtdi4KK2Nhc2UgYCRMRCAtdiAyPiYxIDwvZGV2L251bGxgIGluCisqR05VKiB8ICond2l0aCBCRkQnKikKKyAgYWNsX2N2X3Byb2dfZ251X2xkPXllcyA7OworKikKKyAgYWNsX2N2X3Byb2dfZ251X2xkPW5vIDs7Citlc2FjXSkKK3dpdGhfZ251X2xkPSRhY2xfY3ZfcHJvZ19nbnVfbGQKK10pCisKK2RubCBGcm9tIGxpYnRvb2wtMS40LiBTZXRzIHRoZSB2YXJpYWJsZSBMRC4KK0FDX0RFRlVOKFtBQ19MSUJfUFJPR19MRF0sCitbQUNfQVJHX1dJVEgoW2dudS1sZF0sCitbICAtLXdpdGgtZ251LWxkICAgICAgICAgICBhc3N1bWUgdGhlIEMgY29tcGlsZXIgdXNlcyBHTlUgbGQgW2RlZmF1bHQ9bm9dXSwKK3Rlc3QgIiR3aXRodmFsIiA9IG5vIHx8IHdpdGhfZ251X2xkPXllcywgd2l0aF9nbnVfbGQ9bm8pCitBQ19SRVFVSVJFKFtBQ19QUk9HX0NDXSlkbmwKK0FDX1JFUVVJUkUoW0FDX0NBTk9OSUNBTF9IT1NUXSlkbmwKKyMgUHJlcGFyZSBQQVRIX1NFUEFSQVRPUi4KKyMgVGhlIHVzZXIgaXMgYWx3YXlzIHJpZ2h0LgoraWYgdGVzdCAiJHtQQVRIX1NFUEFSQVRPUitzZXR9IiAhPSBzZXQ7IHRoZW4KKyAgZWNobyAiIyEgL2Jpbi9zaCIgPmNvbmYkJC5zaAorICBlY2hvICAiZXhpdCAwIiAgID4+Y29uZiQkLnNoCisgIGNobW9kICt4IGNvbmYkJC5zaAorICBpZiAoUEFUSD0iL25vbmV4aXN0ZW50Oy4iOyBjb25mJCQuc2gpID4vZGV2L251bGwgMj4mMTsgdGhlbgorICAgIFBBVEhfU0VQQVJBVE9SPSc7JworICBlbHNlCisgICAgUEFUSF9TRVBBUkFUT1I9OgorICBmaQorICBybSAtZiBjb25mJCQuc2gKK2ZpCithY19wcm9nPWxkCitpZiB0ZXN0ICIkR0NDIiA9IHllczsgdGhlbgorICAjIENoZWNrIGlmIGdjYyAtcHJpbnQtcHJvZy1uYW1lPWxkIGdpdmVzIGEgcGF0aC4KKyAgQUNfTVNHX0NIRUNLSU5HKFtmb3IgbGQgdXNlZCBieSBHQ0NdKQorICBjYXNlICRob3N0IGluCisgICotKi1taW5ndyopCisgICAgIyBnY2MgbGVhdmVzIGEgdHJhaWxpbmcgY2FycmlhZ2UgcmV0dXJuIHdoaWNoIHVwc2V0cyBtaW5ndworICAgIGFjX3Byb2c9YCgkQ0MgLXByaW50LXByb2ctbmFtZT1sZCkgMj4mNSB8IHRyIC1kICdcMDE1J2AgOzsKKyAgKikKKyAgICBhY19wcm9nPWAoJENDIC1wcmludC1wcm9nLW5hbWU9bGQpIDI+JjVgIDs7CisgIGVzYWMKKyAgY2FzZSAkYWNfcHJvZyBpbgorICAgICMgQWNjZXB0IGFic29sdXRlIHBhdGhzLgorICAgIFtbXFwvXSogfCBbQS1aYS16XTpbXFwvXSopXQorICAgICAgW3JlX2RpcmVsdD0nL1teL11bXi9dKi9cLlwuLyddCisgICAgICAjIENhbm9uaWNhbGl6ZSB0aGUgcGF0aCBvZiBsZAorICAgICAgYWNfcHJvZz1gZWNobyAkYWNfcHJvZ3wgc2VkICdzJVxcXFwlLyVnJ2AKKyAgICAgIHdoaWxlIGVjaG8gJGFjX3Byb2cgfCBncmVwICIkcmVfZGlyZWx0IiA+IC9kZXYvbnVsbCAyPiYxOyBkbworICAgICAgICBhY19wcm9nPWBlY2hvICRhY19wcm9nfCBzZWQgInMlJHJlX2RpcmVsdCUvJSJgCisgICAgICBkb25lCisgICAgICB0ZXN0IC16ICIkTEQiICYmIExEPSIkYWNfcHJvZyIKKyAgICAgIDs7CisgICIiKQorICAgICMgSWYgaXQgZmFpbHMsIHRoZW4gcHJldGVuZCB3ZSBhcmVuJ3QgdXNpbmcgR0NDLgorICAgIGFjX3Byb2c9bGQKKyAgICA7OworICAqKQorICAgICMgSWYgaXQgaXMgcmVsYXRpdmUsIHRoZW4gc2VhcmNoIGZvciB0aGUgZmlyc3QgbGQgaW4gUEFUSC4KKyAgICB3aXRoX2dudV9sZD11bmtub3duCisgICAgOzsKKyAgZXNhYworZWxpZiB0ZXN0ICIkd2l0aF9nbnVfbGQiID0geWVzOyB0aGVuCisgIEFDX01TR19DSEVDS0lORyhbZm9yIEdOVSBsZF0pCitlbHNlCisgIEFDX01TR19DSEVDS0lORyhbZm9yIG5vbi1HTlUgbGRdKQorZmkKK0FDX0NBQ0hFX1ZBTChbYWNsX2N2X3BhdGhfTERdLAorW2lmIHRlc3QgLXogIiRMRCI7IHRoZW4KKyAgSUZTPSIke0lGUz0gCX0iOyBhY19zYXZlX2lmcz0iJElGUyI7IElGUz0iJHtJRlN9JHtQQVRIX1NFUEFSQVRPUi06fSIKKyAgZm9yIGFjX2RpciBpbiAkUEFUSDsgZG8KKyAgICB0ZXN0IC16ICIkYWNfZGlyIiAmJiBhY19kaXI9LgorICAgIGlmIHRlc3QgLWYgIiRhY19kaXIvJGFjX3Byb2ciIHx8IHRlc3QgLWYgIiRhY19kaXIvJGFjX3Byb2ckYWNfZXhlZXh0IjsgdGhlbgorICAgICAgYWNsX2N2X3BhdGhfTEQ9IiRhY19kaXIvJGFjX3Byb2ciCisgICAgICAjIENoZWNrIHRvIHNlZSBpZiB0aGUgcHJvZ3JhbSBpcyBHTlUgbGQuICBJJ2QgcmF0aGVyIHVzZSAtLXZlcnNpb24sCisgICAgICAjIGJ1dCBhcHBhcmVudGx5IHNvbWUgR05VIGxkJ3Mgb25seSBhY2NlcHQgLXYuCisgICAgICAjIEJyZWFrIG9ubHkgaWYgaXQgd2FzIHRoZSBHTlUvbm9uLUdOVSBsZCB0aGF0IHdlIHByZWZlci4KKyAgICAgIGNhc2UgYCIkYWNsX2N2X3BhdGhfTEQiIC12IDI+JjEgPCAvZGV2L251bGxgIGluCisgICAgICAqR05VKiB8ICond2l0aCBCRkQnKikKKyAgICAgICAgdGVzdCAiJHdpdGhfZ251X2xkIiAhPSBubyAmJiBicmVhayA7OworICAgICAgKikKKyAgICAgICAgdGVzdCAiJHdpdGhfZ251X2xkIiAhPSB5ZXMgJiYgYnJlYWsgOzsKKyAgICAgIGVzYWMKKyAgICBmaQorICBkb25lCisgIElGUz0iJGFjX3NhdmVfaWZzIgorZWxzZQorICBhY2xfY3ZfcGF0aF9MRD0iJExEIiAjIExldCB0aGUgdXNlciBvdmVycmlkZSB0aGUgdGVzdCB3aXRoIGEgcGF0aC4KK2ZpXSkKK0xEPSIkYWNsX2N2X3BhdGhfTEQiCitpZiB0ZXN0IC1uICIkTEQiOyB0aGVuCisgIEFDX01TR19SRVNVTFQoWyRMRF0pCitlbHNlCisgIEFDX01TR19SRVNVTFQoW25vXSkKK2ZpCit0ZXN0IC16ICIkTEQiICYmIEFDX01TR19FUlJPUihbbm8gYWNjZXB0YWJsZSBsZCBmb3VuZCBpbiBcJFBBVEhdKQorQUNfTElCX1BST0dfTERfR05VCitdKQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tNC9saWItbGluay5tNCBiL2Rwa2ctMS4xNi4xLjEvbTQvbGliLWxpbmsubTQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzczYmQ4ZQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbTQvbGliLWxpbmsubTQKQEAgLTAsMCArMSw3NzQgQEAKKyMgbGliLWxpbmsubTQgc2VyaWFsIDIxIChnZXR0ZXh0LTAuMTgpCitkbmwgQ29weXJpZ2h0IChDKSAyMDAxLTIwMTAgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCitkbmwgVGhpcyBmaWxlIGlzIGZyZWUgc29mdHdhcmU7IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24KK2RubCBnaXZlcyB1bmxpbWl0ZWQgcGVybWlzc2lvbiB0byBjb3B5IGFuZC9vciBkaXN0cmlidXRlIGl0LAorZG5sIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb25zLCBhcyBsb25nIGFzIHRoaXMgbm90aWNlIGlzIHByZXNlcnZlZC4KKworZG5sIEZyb20gQnJ1bm8gSGFpYmxlLgorCitBQ19QUkVSRVEoWzIuNTRdKQorCitkbmwgQUNfTElCX0xJTktGTEFHUyhuYW1lIFssIGRlcGVuZGVuY2llc10pIHNlYXJjaGVzIGZvciBsaWJuYW1lIGFuZAorZG5sIHRoZSBsaWJyYXJpZXMgY29ycmVzcG9uZGluZyB0byBleHBsaWNpdCBhbmQgaW1wbGljaXQgZGVwZW5kZW5jaWVzLgorZG5sIFNldHMgYW5kIEFDX1NVQlNUcyB0aGUgTElCJHtOQU1FfSBhbmQgTFRMSUIke05BTUV9IHZhcmlhYmxlcyBhbmQKK2RubCBhdWdtZW50cyB0aGUgQ1BQRkxBR1MgdmFyaWFibGUuCitkbmwgU2V0cyBhbmQgQUNfU1VCU1RzIHRoZSBMSUIke05BTUV9X1BSRUZJWCB2YXJpYWJsZSB0byBub25lbXB0eSBpZiBsaWJuYW1lCitkbmwgd2FzIGZvdW5kIGluICR7TElCJHtOQU1FfV9QUkVGSVh9LyRhY2xfbGliZGlyc3RlbS4KK0FDX0RFRlVOKFtBQ19MSUJfTElOS0ZMQUdTXSwKK1sKKyAgQUNfUkVRVUlSRShbQUNfTElCX1BSRVBBUkVfUFJFRklYXSkKKyAgQUNfUkVRVUlSRShbQUNfTElCX1JQQVRIXSkKKyAgcHVzaGRlZihbTmFtZV0sW3RyYW5zbGl0KFskMV0sWy4vLV0sIFtfX19dKV0pCisgIHB1c2hkZWYoW05BTUVdLFt0cmFuc2xpdChbJDFdLFthYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ei4vLV0sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWl9fX10pXSkKKyAgQUNfQ0FDSEVfQ0hFQ0soW2hvdyB0byBsaW5rIHdpdGggbGliW10kMV0sIFthY19jdl9saWJbXU5hbWVbXV9saWJzXSwgWworICAgIEFDX0xJQl9MSU5LRkxBR1NfQk9EWShbJDFdLCBbJDJdKQorICAgIGFjX2N2X2xpYltdTmFtZVtdX2xpYnM9IiRMSUJbXU5BTUUiCisgICAgYWNfY3ZfbGliW11OYW1lW11fbHRsaWJzPSIkTFRMSUJbXU5BTUUiCisgICAgYWNfY3ZfbGliW11OYW1lW11fY3BwZmxhZ3M9IiRJTkNbXU5BTUUiCisgICAgYWNfY3ZfbGliW11OYW1lW11fcHJlZml4PSIkTElCW11OQU1FW11fUFJFRklYIgorICBdKQorICBMSUJbXU5BTUU9IiRhY19jdl9saWJbXU5hbWVbXV9saWJzIgorICBMVExJQltdTkFNRT0iJGFjX2N2X2xpYltdTmFtZVtdX2x0bGlicyIKKyAgSU5DW11OQU1FPSIkYWNfY3ZfbGliW11OYW1lW11fY3BwZmxhZ3MiCisgIExJQltdTkFNRVtdX1BSRUZJWD0iJGFjX2N2X2xpYltdTmFtZVtdX3ByZWZpeCIKKyAgQUNfTElCX0FQUEVORFRPVkFSKFtDUFBGTEFHU10sIFskSU5DXU5BTUUpCisgIEFDX1NVQlNUKFtMSUJdTkFNRSkKKyAgQUNfU1VCU1QoW0xUTElCXU5BTUUpCisgIEFDX1NVQlNUKFtMSUJdTkFNRVtfUFJFRklYXSkKKyAgZG5sIEFsc28gc2V0IEhBVkVfTElCW11OQU1FIHNvIHRoYXQgQUNfTElCX0hBVkVfTElOS0ZMQUdTIGNhbiByZXVzZSB0aGUKKyAgZG5sIHJlc3VsdHMgb2YgdGhpcyBzZWFyY2ggd2hlbiB0aGlzIGxpYnJhcnkgYXBwZWFycyBhcyBhIGRlcGVuZGVuY3kuCisgIEhBVkVfTElCW11OQU1FPXllcworICBwb3BkZWYoW05BTUVdKQorICBwb3BkZWYoW05hbWVdKQorXSkKKworZG5sIEFDX0xJQl9IQVZFX0xJTktGTEFHUyhuYW1lLCBkZXBlbmRlbmNpZXMsIGluY2x1ZGVzLCB0ZXN0Y29kZSwgW21pc3NpbmctbWVzc2FnZV0pCitkbmwgc2VhcmNoZXMgZm9yIGxpYm5hbWUgYW5kIHRoZSBsaWJyYXJpZXMgY29ycmVzcG9uZGluZyB0byBleHBsaWNpdCBhbmQKK2RubCBpbXBsaWNpdCBkZXBlbmRlbmNpZXMsIHRvZ2V0aGVyIHdpdGggdGhlIHNwZWNpZmllZCBpbmNsdWRlIGZpbGVzIGFuZAorZG5sIHRoZSBhYmlsaXR5IHRvIGNvbXBpbGUgYW5kIGxpbmsgdGhlIHNwZWNpZmllZCB0ZXN0Y29kZS4gVGhlIG1pc3NpbmctbWVzc2FnZQorZG5sIGRlZmF1bHRzIHRvICdubycgYW5kIG1heSBjb250YWluIGFkZGl0aW9uYWwgaGludHMgZm9yIHRoZSB1c2VyLgorZG5sIElmIGZvdW5kLCBpdCBzZXRzIGFuZCBBQ19TVUJTVHMgSEFWRV9MSUIke05BTUV9PXllcyBhbmQgdGhlIExJQiR7TkFNRX0KK2RubCBhbmQgTFRMSUIke05BTUV9IHZhcmlhYmxlcyBhbmQgYXVnbWVudHMgdGhlIENQUEZMQUdTIHZhcmlhYmxlLCBhbmQKK2RubCAjZGVmaW5lcyBIQVZFX0xJQiR7TkFNRX0gdG8gMS4gT3RoZXJ3aXNlLCBpdCBzZXRzIGFuZCBBQ19TVUJTVHMKK2RubCBIQVZFX0xJQiR7TkFNRX09bm8gYW5kIExJQiR7TkFNRX0gYW5kIExUTElCJHtOQU1FfSB0byBlbXB0eS4KK2RubCBTZXRzIGFuZCBBQ19TVUJTVHMgdGhlIExJQiR7TkFNRX1fUFJFRklYIHZhcmlhYmxlIHRvIG5vbmVtcHR5IGlmIGxpYm5hbWUKK2RubCB3YXMgZm91bmQgaW4gJHtMSUIke05BTUV9X1BSRUZJWH0vJGFjbF9saWJkaXJzdGVtLgorQUNfREVGVU4oW0FDX0xJQl9IQVZFX0xJTktGTEFHU10sCitbCisgIEFDX1JFUVVJUkUoW0FDX0xJQl9QUkVQQVJFX1BSRUZJWF0pCisgIEFDX1JFUVVJUkUoW0FDX0xJQl9SUEFUSF0pCisgIHB1c2hkZWYoW05hbWVdLFt0cmFuc2xpdChbJDFdLFsuLy1dLCBbX19fXSldKQorICBwdXNoZGVmKFtOQU1FXSxbdHJhbnNsaXQoWyQxXSxbYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXouLy1dLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVpfX19dKV0pCisKKyAgZG5sIFNlYXJjaCBmb3IgbGliW11OYW1lIGFuZCBkZWZpbmUgTElCW11OQU1FLCBMVExJQltdTkFNRSBhbmQgSU5DW11OQU1FCisgIGRubCBhY2NvcmRpbmdseS4KKyAgQUNfTElCX0xJTktGTEFHU19CT0RZKFskMV0sIFskMl0pCisKKyAgZG5sIEFkZCAkSU5DW11OQU1FIHRvIENQUEZMQUdTIGJlZm9yZSBwZXJmb3JtaW5nIHRoZSBmb2xsb3dpbmcgY2hlY2tzLAorICBkbmwgYmVjYXVzZSBpZiB0aGUgdXNlciBoYXMgaW5zdGFsbGVkIGxpYltdTmFtZSBhbmQgbm90IGRpc2FibGVkIGl0cyB1c2UKKyAgZG5sIHZpYSAtLXdpdGhvdXQtbGliW11OYW1lLXByZWZpeCwgaGUgd2FudHMgdG8gdXNlIGl0LgorICBhY19zYXZlX0NQUEZMQUdTPSIkQ1BQRkxBR1MiCisgIEFDX0xJQl9BUFBFTkRUT1ZBUihbQ1BQRkxBR1NdLCBbJElOQ11OQU1FKQorCisgIEFDX0NBQ0hFX0NIRUNLKFtmb3IgbGliW10kMV0sIFthY19jdl9saWJbXU5hbWVdLCBbCisgICAgYWNfc2F2ZV9MSUJTPSIkTElCUyIKKyAgICBkbmwgSWYgJExJQltdTkFNRSBjb250YWlucyBzb21lIC1sIG9wdGlvbnMsIGFkZCBpdCB0byB0aGUgZW5kIG9mIExJQlMsCisgICAgZG5sIGJlY2F1c2UgdGhlc2UgLWwgb3B0aW9ucyBtaWdodCByZXF1aXJlIC1MIG9wdGlvbnMgdGhhdCBhcmUgcHJlc2VudCBpbgorICAgIGRubCBMSUJTLiAtbCBvcHRpb25zIGJlbmVmaXQgb25seSBmcm9tIHRoZSAtTCBvcHRpb25zIGxpc3RlZCBiZWZvcmUgaXQuCisgICAgZG5sIE90aGVyd2lzZSwgYWRkIGl0IHRvIHRoZSBmcm9udCBvZiBMSUJTLCBiZWNhdXNlIGl0IG1heSBiZSBhIHN0YXRpYworICAgIGRubCBsaWJyYXJ5IHRoYXQgZGVwZW5kcyBvbiBhbm90aGVyIHN0YXRpYyBsaWJyYXJ5IHRoYXQgaXMgcHJlc2VudCBpbiBMSUJTLgorICAgIGRubCBTdGF0aWMgbGlicmFyaWVzIGJlbmVmaXQgb25seSBmcm9tIHRoZSBzdGF0aWMgbGlicmFyaWVzIGxpc3RlZCBhZnRlcgorICAgIGRubCBpdC4KKyAgICBjYXNlICIgJExJQltdTkFNRSIgaW4KKyAgICAgICoiIC1sIiopIExJQlM9IiRMSUJTICRMSUJbXU5BTUUiIDs7CisgICAgICAqKSAgICAgICBMSUJTPSIkTElCW11OQU1FICRMSUJTIiA7OworICAgIGVzYWMKKyAgICBBQ19UUllfTElOSyhbJDNdLCBbJDRdLAorICAgICAgW2FjX2N2X2xpYltdTmFtZT15ZXNdLAorICAgICAgW2FjX2N2X2xpYltdTmFtZT0nbTRfaWYoWyQ1XSwgW10sIFtub10sIFtbJDVdXSknXSkKKyAgICBMSUJTPSIkYWNfc2F2ZV9MSUJTIgorICBdKQorICBpZiB0ZXN0ICIkYWNfY3ZfbGliW11OYW1lIiA9IHllczsgdGhlbgorICAgIEhBVkVfTElCW11OQU1FPXllcworICAgIEFDX0RFRklORShbSEFWRV9MSUJdTkFNRSwgMSwgW0RlZmluZSBpZiB5b3UgaGF2ZSB0aGUgbGliXVskMSBsaWJyYXJ5Ll0pCisgICAgQUNfTVNHX0NIRUNLSU5HKFtob3cgdG8gbGluayB3aXRoIGxpYltdJDFdKQorICAgIEFDX01TR19SRVNVTFQoWyRMSUJbXU5BTUVdKQorICBlbHNlCisgICAgSEFWRV9MSUJbXU5BTUU9bm8KKyAgICBkbmwgSWYgJExJQltdTkFNRSBkaWRuJ3QgbGVhZCB0byBhIHVzYWJsZSBsaWJyYXJ5LCB3ZSBkb24ndCBuZWVkCisgICAgZG5sICRJTkNbXU5BTUUgZWl0aGVyLgorICAgIENQUEZMQUdTPSIkYWNfc2F2ZV9DUFBGTEFHUyIKKyAgICBMSUJbXU5BTUU9CisgICAgTFRMSUJbXU5BTUU9CisgICAgTElCW11OQU1FW11fUFJFRklYPQorICBmaQorICBBQ19TVUJTVChbSEFWRV9MSUJdTkFNRSkKKyAgQUNfU1VCU1QoW0xJQl1OQU1FKQorICBBQ19TVUJTVChbTFRMSUJdTkFNRSkKKyAgQUNfU1VCU1QoW0xJQl1OQU1FW19QUkVGSVhdKQorICBwb3BkZWYoW05BTUVdKQorICBwb3BkZWYoW05hbWVdKQorXSkKKworZG5sIERldGVybWluZSB0aGUgcGxhdGZvcm0gZGVwZW5kZW50IHBhcmFtZXRlcnMgbmVlZGVkIHRvIHVzZSBycGF0aDoKK2RubCAgIGFjbF9saWJleHQsCitkbmwgICBhY2xfc2hsaWJleHQsCitkbmwgICBhY2xfaGFyZGNvZGVfbGliZGlyX2ZsYWdfc3BlYywKK2RubCAgIGFjbF9oYXJkY29kZV9saWJkaXJfc2VwYXJhdG9yLAorZG5sICAgYWNsX2hhcmRjb2RlX2RpcmVjdCwKK2RubCAgIGFjbF9oYXJkY29kZV9taW51c19MLgorQUNfREVGVU4oW0FDX0xJQl9SUEFUSF0sCitbCisgIGRubCBUZWxsIGF1dG9tYWtlID49IDEuMTAgdG8gY29tcGxhaW4gaWYgY29uZmlnLnJwYXRoIGlzIG1pc3NpbmcuCisgIG00X2lmZGVmKFtBQ19SRVFVSVJFX0FVWF9GSUxFXSwgW0FDX1JFUVVJUkVfQVVYX0ZJTEUoW2NvbmZpZy5ycGF0aF0pXSkKKyAgQUNfUkVRVUlSRShbQUNfUFJPR19DQ10pICAgICAgICAgICAgICAgIGRubCB3ZSB1c2UgJENDLCAkR0NDLCAkTERGTEFHUworICBBQ19SRVFVSVJFKFtBQ19MSUJfUFJPR19MRF0pICAgICAgICAgICAgZG5sIHdlIHVzZSAkTEQsICR3aXRoX2dudV9sZAorICBBQ19SRVFVSVJFKFtBQ19DQU5PTklDQUxfSE9TVF0pICAgICAgICAgZG5sIHdlIHVzZSAkaG9zdAorICBBQ19SRVFVSVJFKFtBQ19DT05GSUdfQVVYX0RJUl9ERUZBVUxUXSkgZG5sIHdlIHVzZSAkYWNfYXV4X2RpcgorICBBQ19DQUNIRV9DSEVDSyhbZm9yIHNoYXJlZCBsaWJyYXJ5IHJ1biBwYXRoIG9yaWdpbl0sIFthY2xfY3ZfcnBhdGhdLCBbCisgICAgQ0M9IiRDQyIgR0NDPSIkR0NDIiBMREZMQUdTPSIkTERGTEFHUyIgTEQ9IiRMRCIgd2l0aF9nbnVfbGQ9IiR3aXRoX2dudV9sZCIgXAorICAgICR7Q09ORklHX1NIRUxMLS9iaW4vc2h9ICIkYWNfYXV4X2Rpci9jb25maWcucnBhdGgiICIkaG9zdCIgPiBjb25mdGVzdC5zaAorICAgIC4gLi9jb25mdGVzdC5zaAorICAgIHJtIC1mIC4vY29uZnRlc3Quc2gKKyAgICBhY2xfY3ZfcnBhdGg9ZG9uZQorICBdKQorICB3bD0iJGFjbF9jdl93bCIKKyAgYWNsX2xpYmV4dD0iJGFjbF9jdl9saWJleHQiCisgIGFjbF9zaGxpYmV4dD0iJGFjbF9jdl9zaGxpYmV4dCIKKyAgYWNsX2xpYm5hbWVfc3BlYz0iJGFjbF9jdl9saWJuYW1lX3NwZWMiCisgIGFjbF9saWJyYXJ5X25hbWVzX3NwZWM9IiRhY2xfY3ZfbGlicmFyeV9uYW1lc19zcGVjIgorICBhY2xfaGFyZGNvZGVfbGliZGlyX2ZsYWdfc3BlYz0iJGFjbF9jdl9oYXJkY29kZV9saWJkaXJfZmxhZ19zcGVjIgorICBhY2xfaGFyZGNvZGVfbGliZGlyX3NlcGFyYXRvcj0iJGFjbF9jdl9oYXJkY29kZV9saWJkaXJfc2VwYXJhdG9yIgorICBhY2xfaGFyZGNvZGVfZGlyZWN0PSIkYWNsX2N2X2hhcmRjb2RlX2RpcmVjdCIKKyAgYWNsX2hhcmRjb2RlX21pbnVzX0w9IiRhY2xfY3ZfaGFyZGNvZGVfbWludXNfTCIKKyAgZG5sIERldGVybWluZSB3aGV0aGVyIHRoZSB1c2VyIHdhbnRzIHJwYXRoIGhhbmRsaW5nIGF0IGFsbC4KKyAgQUNfQVJHX0VOQUJMRShbcnBhdGhdLAorICAgIFsgIC0tZGlzYWJsZS1ycGF0aCAgICAgICAgIGRvIG5vdCBoYXJkY29kZSBydW50aW1lIGxpYnJhcnkgcGF0aHNdLAorICAgIDosIGVuYWJsZV9ycGF0aD15ZXMpCitdKQorCitkbmwgQUNfTElCX0ZST01QQUNLQUdFKG5hbWUsIHBhY2thZ2UpCitkbmwgZGVjbGFyZXMgdGhhdCBsaWJuYW1lIGNvbWVzIGZyb20gdGhlIGdpdmVuIHBhY2thZ2UuIFRoZSBjb25maWd1cmUgZmlsZQorZG5sIHdpbGwgdGhlbiBub3QgaGF2ZSBhIC0td2l0aC1saWJuYW1lLXByZWZpeCBvcHRpb24gYnV0IGEKK2RubCAtLXdpdGgtcGFja2FnZS1wcmVmaXggb3B0aW9uLiBTZXZlcmFsIGxpYnJhcmllcyBjYW4gY29tZSBmcm9tIHRoZSBzYW1lCitkbmwgcGFja2FnZS4gVGhpcyBkZWNsYXJhdGlvbiBtdXN0IG9jY3VyIGJlZm9yZSBhbiBBQ19MSUJfTElOS0ZMQUdTIG9yIHNpbWlsYXIKK2RubCBtYWNybyBjYWxsIHRoYXQgc2VhcmNoZXMgZm9yIGxpYm5hbWUuCitBQ19ERUZVTihbQUNfTElCX0ZST01QQUNLQUdFXSwKK1sKKyAgcHVzaGRlZihbTkFNRV0sW3RyYW5zbGl0KFskMV0sW2FiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6Li8tXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW0FCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaX19fXSldKQorICBkZWZpbmUoW2FjbF9mcm9tcGFja2FnZV9dTkFNRSwgWyQyXSkKKyAgcG9wZGVmKFtOQU1FXSkKKyAgcHVzaGRlZihbUEFDS10sWyQyXSkKKyAgcHVzaGRlZihbUEFDS1VQXSxbdHJhbnNsaXQoUEFDSyxbYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXouLy1dLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWl9fX10pXSkKKyAgZGVmaW5lKFthY2xfbGlic2lucGFja2FnZV9dUEFDS1VQLAorICAgIG00X2lmZGVmKFthY2xfbGlic2lucGFja2FnZV9dUEFDS1VQLCBbYWNsX2xpYnNpbnBhY2thZ2VfXVBBQ0tVUFtbLCBdXSwpW2xpYiQxXSkKKyAgcG9wZGVmKFtQQUNLVVBdKQorICBwb3BkZWYoW1BBQ0tdKQorXSkKKworZG5sIEFDX0xJQl9MSU5LRkxBR1NfQk9EWShuYW1lIFssIGRlcGVuZGVuY2llc10pIHNlYXJjaGVzIGZvciBsaWJuYW1lIGFuZAorZG5sIHRoZSBsaWJyYXJpZXMgY29ycmVzcG9uZGluZyB0byBleHBsaWNpdCBhbmQgaW1wbGljaXQgZGVwZW5kZW5jaWVzLgorZG5sIFNldHMgdGhlIExJQiR7TkFNRX0sIExUTElCJHtOQU1FfSBhbmQgSU5DJHtOQU1FfSB2YXJpYWJsZXMuCitkbmwgQWxzbywgc2V0cyB0aGUgTElCJHtOQU1FfV9QUkVGSVggdmFyaWFibGUgdG8gbm9uZW1wdHkgaWYgbGlibmFtZSB3YXMgZm91bmQKK2RubCBpbiAke0xJQiR7TkFNRX1fUFJFRklYfS8kYWNsX2xpYmRpcnN0ZW0uCitBQ19ERUZVTihbQUNfTElCX0xJTktGTEFHU19CT0RZXSwKK1sKKyAgQUNfUkVRVUlSRShbQUNfTElCX1BSRVBBUkVfTVVMVElMSUJdKQorICBwdXNoZGVmKFtOQU1FXSxbdHJhbnNsaXQoWyQxXSxbYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXouLy1dLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVpfX19dKV0pCisgIHB1c2hkZWYoW1BBQ0tdLFttNF9pZmRlZihbYWNsX2Zyb21wYWNrYWdlX11OQU1FLCBbYWNsX2Zyb21wYWNrYWdlX11OQU1FLCBsaWJbJDFdKV0pCisgIHB1c2hkZWYoW1BBQ0tVUF0sW3RyYW5zbGl0KFBBQ0ssW2FiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6Li8tXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVpfX19dKV0pCisgIHB1c2hkZWYoW1BBQ0tMSUJTXSxbbTRfaWZkZWYoW2FjbF9mcm9tcGFja2FnZV9dTkFNRSwgW2FjbF9saWJzaW5wYWNrYWdlX11QQUNLVVAsIGxpYlskMV0pXSkKKyAgZG5sIEF1dG9jb25mID49IDIuNjEgc3VwcG9ydHMgZG90cyBpbiAtLXdpdGggb3B0aW9ucy4KKyAgcHVzaGRlZihbUF9BX0NfS10sW200X2lmKG00X3ZlcnNpb25fY29tcGFyZShtNF9kZWZuKFttNF9QQUNLQUdFX1ZFUlNJT05dKSxbMi42MV0pLFstMV0sW3RyYW5zbGl0KFBBQ0ssWy5dLFtfXSldLFBBQ0spXSkKKyAgZG5sIEJ5IGRlZmF1bHQsIGxvb2sgaW4gJGluY2x1ZGVkaXIgYW5kICRsaWJkaXIuCisgIHVzZV9hZGRpdGlvbmFsPXllcworICBBQ19MSUJfV0lUSF9GSU5BTF9QUkVGSVgoWworICAgIGV2YWwgYWRkaXRpb25hbF9pbmNsdWRlZGlyPVwiJGluY2x1ZGVkaXJcIgorICAgIGV2YWwgYWRkaXRpb25hbF9saWJkaXI9XCIkbGliZGlyXCIKKyAgXSkKKyAgQUNfQVJHX1dJVEgoUF9BX0NfS1stcHJlZml4XSwKK1tbICAtLXdpdGgtXV1QX0FfQ19LW1stcHJlZml4Wz1ESVJdICBzZWFyY2ggZm9yIF1QQUNLTElCU1sgaW4gRElSL2luY2x1ZGUgYW5kIERJUi9saWIKKyAgLS13aXRob3V0LV1dUF9BX0NfS1tbLXByZWZpeCAgICAgZG9uJ3Qgc2VhcmNoIGZvciBdUEFDS0xJQlNbIGluIGluY2x1ZGVkaXIgYW5kIGxpYmRpcl1dLAorWworICAgIGlmIHRlc3QgIlgkd2l0aHZhbCIgPSAiWG5vIjsgdGhlbgorICAgICAgdXNlX2FkZGl0aW9uYWw9bm8KKyAgICBlbHNlCisgICAgICBpZiB0ZXN0ICJYJHdpdGh2YWwiID0gIlgiOyB0aGVuCisgICAgICAgIEFDX0xJQl9XSVRIX0ZJTkFMX1BSRUZJWChbCisgICAgICAgICAgZXZhbCBhZGRpdGlvbmFsX2luY2x1ZGVkaXI9XCIkaW5jbHVkZWRpclwiCisgICAgICAgICAgZXZhbCBhZGRpdGlvbmFsX2xpYmRpcj1cIiRsaWJkaXJcIgorICAgICAgICBdKQorICAgICAgZWxzZQorICAgICAgICBhZGRpdGlvbmFsX2luY2x1ZGVkaXI9IiR3aXRodmFsL2luY2x1ZGUiCisgICAgICAgIGFkZGl0aW9uYWxfbGliZGlyPSIkd2l0aHZhbC8kYWNsX2xpYmRpcnN0ZW0iCisgICAgICAgIGlmIHRlc3QgIiRhY2xfbGliZGlyc3RlbTIiICE9ICIkYWNsX2xpYmRpcnN0ZW0iIFwKKyAgICAgICAgICAgJiYgISB0ZXN0IC1kICIkd2l0aHZhbC8kYWNsX2xpYmRpcnN0ZW0iOyB0aGVuCisgICAgICAgICAgYWRkaXRpb25hbF9saWJkaXI9IiR3aXRodmFsLyRhY2xfbGliZGlyc3RlbTIiCisgICAgICAgIGZpCisgICAgICBmaQorICAgIGZpCitdKQorICBkbmwgU2VhcmNoIHRoZSBsaWJyYXJ5IGFuZCBpdHMgZGVwZW5kZW5jaWVzIGluICRhZGRpdGlvbmFsX2xpYmRpciBhbmQKKyAgZG5sICRMREZMQUdTLiBVc2luZyBicmVhZHRoLWZpcnN0LXNlYWNoLgorICBMSUJbXU5BTUU9CisgIExUTElCW11OQU1FPQorICBJTkNbXU5BTUU9CisgIExJQltdTkFNRVtdX1BSRUZJWD0KKyAgZG5sIEhBVkVfTElCJHtOQU1FfSBpcyBhbiBpbmRpY2F0b3IgdGhhdCBMSUIke05BTUV9LCBMVExJQiR7TkFNRX0gaGF2ZSBiZWVuCisgIGRubCBjb21wdXRlZC4gU28gaXQgaGFzIHRvIGJlIHJlc2V0IGhlcmUuCisgIEhBVkVfTElCW11OQU1FPQorICBycGF0aGRpcnM9CisgIGx0cnBhdGhkaXJzPQorICBuYW1lc19hbHJlYWR5X2hhbmRsZWQ9CisgIG5hbWVzX25leHRfcm91bmQ9JyQxICQyJworICB3aGlsZSB0ZXN0IC1uICIkbmFtZXNfbmV4dF9yb3VuZCI7IGRvCisgICAgbmFtZXNfdGhpc19yb3VuZD0iJG5hbWVzX25leHRfcm91bmQiCisgICAgbmFtZXNfbmV4dF9yb3VuZD0KKyAgICBmb3IgbmFtZSBpbiAkbmFtZXNfdGhpc19yb3VuZDsgZG8KKyAgICAgIGFscmVhZHlfaGFuZGxlZD0KKyAgICAgIGZvciBuIGluICRuYW1lc19hbHJlYWR5X2hhbmRsZWQ7IGRvCisgICAgICAgIGlmIHRlc3QgIiRuIiA9ICIkbmFtZSI7IHRoZW4KKyAgICAgICAgICBhbHJlYWR5X2hhbmRsZWQ9eWVzCisgICAgICAgICAgYnJlYWsKKyAgICAgICAgZmkKKyAgICAgIGRvbmUKKyAgICAgIGlmIHRlc3QgLXogIiRhbHJlYWR5X2hhbmRsZWQiOyB0aGVuCisgICAgICAgIG5hbWVzX2FscmVhZHlfaGFuZGxlZD0iJG5hbWVzX2FscmVhZHlfaGFuZGxlZCAkbmFtZSIKKyAgICAgICAgZG5sIFNlZSBpZiBpdCB3YXMgYWxyZWFkeSBsb2NhdGVkIGJ5IGFuIGVhcmxpZXIgQUNfTElCX0xJTktGTEFHUworICAgICAgICBkbmwgb3IgQUNfTElCX0hBVkVfTElOS0ZMQUdTIGNhbGwuCisgICAgICAgIHVwcGVybmFtZT1gZWNobyAiJG5hbWUiIHwgc2VkIC1lICd5fGFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6Li8tfEFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaX19ffCdgCisgICAgICAgIGV2YWwgdmFsdWU9XCJcJEhBVkVfTElCJHVwcGVybmFtZVwiCisgICAgICAgIGlmIHRlc3QgLW4gIiR2YWx1ZSI7IHRoZW4KKyAgICAgICAgICBpZiB0ZXN0ICIkdmFsdWUiID0geWVzOyB0aGVuCisgICAgICAgICAgICBldmFsIHZhbHVlPVwiXCRMSUIkdXBwZXJuYW1lXCIKKyAgICAgICAgICAgIHRlc3QgLXogIiR2YWx1ZSIgfHwgTElCW11OQU1FPSIke0xJQltdTkFNRX0ke0xJQltdTkFNRTorIH0kdmFsdWUiCisgICAgICAgICAgICBldmFsIHZhbHVlPVwiXCRMVExJQiR1cHBlcm5hbWVcIgorICAgICAgICAgICAgdGVzdCAteiAiJHZhbHVlIiB8fCBMVExJQltdTkFNRT0iJHtMVExJQltdTkFNRX0ke0xUTElCW11OQU1FOisgfSR2YWx1ZSIKKyAgICAgICAgICBlbHNlCisgICAgICAgICAgICBkbmwgQW4gZWFybGllciBjYWxsIHRvIEFDX0xJQl9IQVZFX0xJTktGTEFHUyBoYXMgZGV0ZXJtaW5lZAorICAgICAgICAgICAgZG5sIHRoYXQgdGhpcyBsaWJyYXJ5IGRvZXNuJ3QgZXhpc3QuIFNvIGp1c3QgZHJvcCBpdC4KKyAgICAgICAgICAgIDoKKyAgICAgICAgICBmaQorICAgICAgICBlbHNlCisgICAgICAgICAgZG5sIFNlYXJjaCB0aGUgbGlicmFyeSBsaWIkbmFtZSBpbiAkYWRkaXRpb25hbF9saWJkaXIgYW5kICRMREZMQUdTCisgICAgICAgICAgZG5sIGFuZCB0aGUgYWxyZWFkeSBjb25zdHJ1Y3RlZCAkTElCTkFNRS8kTFRMSUJOQU1FLgorICAgICAgICAgIGZvdW5kX2Rpcj0KKyAgICAgICAgICBmb3VuZF9sYT0KKyAgICAgICAgICBmb3VuZF9zbz0KKyAgICAgICAgICBmb3VuZF9hPQorICAgICAgICAgIGV2YWwgbGlibmFtZT1cIiRhY2xfbGlibmFtZV9zcGVjXCIgICAgIyB0eXBpY2FsbHk6IGxpYm5hbWU9bGliJG5hbWUKKyAgICAgICAgICBpZiB0ZXN0IC1uICIkYWNsX3NobGliZXh0IjsgdGhlbgorICAgICAgICAgICAgc2hyZXh0PSIuJGFjbF9zaGxpYmV4dCIgICAgICAgICAgICAgIyB0eXBpY2FsbHk6IHNocmV4dD0uc28KKyAgICAgICAgICBlbHNlCisgICAgICAgICAgICBzaHJleHQ9CisgICAgICAgICAgZmkKKyAgICAgICAgICBpZiB0ZXN0ICR1c2VfYWRkaXRpb25hbCA9IHllczsgdGhlbgorICAgICAgICAgICAgZGlyPSIkYWRkaXRpb25hbF9saWJkaXIiCisgICAgICAgICAgICBkbmwgVGhlIHNhbWUgY29kZSBhcyBpbiB0aGUgbG9vcCBiZWxvdzoKKyAgICAgICAgICAgIGRubCBGaXJzdCBsb29rIGZvciBhIHNoYXJlZCBsaWJyYXJ5LgorICAgICAgICAgICAgaWYgdGVzdCAtbiAiJGFjbF9zaGxpYmV4dCI7IHRoZW4KKyAgICAgICAgICAgICAgaWYgdGVzdCAtZiAiJGRpci8kbGlibmFtZSRzaHJleHQiOyB0aGVuCisgICAgICAgICAgICAgICAgZm91bmRfZGlyPSIkZGlyIgorICAgICAgICAgICAgICAgIGZvdW5kX3NvPSIkZGlyLyRsaWJuYW1lJHNocmV4dCIKKyAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIGlmIHRlc3QgIiRhY2xfbGlicmFyeV9uYW1lc19zcGVjIiA9ICckbGlibmFtZSRzaHJleHQkdmVyc3VmZml4JzsgdGhlbgorICAgICAgICAgICAgICAgICAgdmVyPWAoY2QgIiRkaXIiICYmIFwKKyAgICAgICAgICAgICAgICAgICAgICAgIGZvciBmIGluICIkbGlibmFtZSRzaHJleHQiLio7IGRvIGVjaG8gIiRmIjsgZG9uZSBcCisgICAgICAgICAgICAgICAgICAgICAgICB8IHNlZCAtZSAicyxeJGxpYm5hbWUkc2hyZXh0XFxcXC4sLCIgXAorICAgICAgICAgICAgICAgICAgICAgICAgfCBzb3J0IC10ICcuJyAtbiAtciAtazEsMSAtazIsMiAtazMsMyAtazQsNCAtazUsNSBcCisgICAgICAgICAgICAgICAgICAgICAgICB8IHNlZCAxcSApIDI+L2Rldi9udWxsYAorICAgICAgICAgICAgICAgICAgaWYgdGVzdCAtbiAiJHZlciIgJiYgdGVzdCAtZiAiJGRpci8kbGlibmFtZSRzaHJleHQuJHZlciI7IHRoZW4KKyAgICAgICAgICAgICAgICAgICAgZm91bmRfZGlyPSIkZGlyIgorICAgICAgICAgICAgICAgICAgICBmb3VuZF9zbz0iJGRpci8kbGlibmFtZSRzaHJleHQuJHZlciIKKyAgICAgICAgICAgICAgICAgIGZpCisgICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgICAgZXZhbCBsaWJyYXJ5X25hbWVzPVwiJGFjbF9saWJyYXJ5X25hbWVzX3NwZWNcIgorICAgICAgICAgICAgICAgICAgZm9yIGYgaW4gJGxpYnJhcnlfbmFtZXM7IGRvCisgICAgICAgICAgICAgICAgICAgIGlmIHRlc3QgLWYgIiRkaXIvJGYiOyB0aGVuCisgICAgICAgICAgICAgICAgICAgICAgZm91bmRfZGlyPSIkZGlyIgorICAgICAgICAgICAgICAgICAgICAgIGZvdW5kX3NvPSIkZGlyLyRmIgorICAgICAgICAgICAgICAgICAgICAgIGJyZWFrCisgICAgICAgICAgICAgICAgICAgIGZpCisgICAgICAgICAgICAgICAgICBkb25lCisgICAgICAgICAgICAgICAgZmkKKyAgICAgICAgICAgICAgZmkKKyAgICAgICAgICAgIGZpCisgICAgICAgICAgICBkbmwgVGhlbiBsb29rIGZvciBhIHN0YXRpYyBsaWJyYXJ5LgorICAgICAgICAgICAgaWYgdGVzdCAiWCRmb3VuZF9kaXIiID0gIlgiOyB0aGVuCisgICAgICAgICAgICAgIGlmIHRlc3QgLWYgIiRkaXIvJGxpYm5hbWUuJGFjbF9saWJleHQiOyB0aGVuCisgICAgICAgICAgICAgICAgZm91bmRfZGlyPSIkZGlyIgorICAgICAgICAgICAgICAgIGZvdW5kX2E9IiRkaXIvJGxpYm5hbWUuJGFjbF9saWJleHQiCisgICAgICAgICAgICAgIGZpCisgICAgICAgICAgICBmaQorICAgICAgICAgICAgaWYgdGVzdCAiWCRmb3VuZF9kaXIiICE9ICJYIjsgdGhlbgorICAgICAgICAgICAgICBpZiB0ZXN0IC1mICIkZGlyLyRsaWJuYW1lLmxhIjsgdGhlbgorICAgICAgICAgICAgICAgIGZvdW5kX2xhPSIkZGlyLyRsaWJuYW1lLmxhIgorICAgICAgICAgICAgICBmaQorICAgICAgICAgICAgZmkKKyAgICAgICAgICBmaQorICAgICAgICAgIGlmIHRlc3QgIlgkZm91bmRfZGlyIiA9ICJYIjsgdGhlbgorICAgICAgICAgICAgZm9yIHggaW4gJExERkxBR1MgJExUTElCW11OQU1FOyBkbworICAgICAgICAgICAgICBBQ19MSUJfV0lUSF9GSU5BTF9QUkVGSVgoW2V2YWwgeD1cIiR4XCJdKQorICAgICAgICAgICAgICBjYXNlICIkeCIgaW4KKyAgICAgICAgICAgICAgICAtTCopCisgICAgICAgICAgICAgICAgICBkaXI9YGVjaG8gIlgkeCIgfCBzZWQgLWUgJ3MvXlgtTC8vJ2AKKyAgICAgICAgICAgICAgICAgIGRubCBGaXJzdCBsb29rIGZvciBhIHNoYXJlZCBsaWJyYXJ5LgorICAgICAgICAgICAgICAgICAgaWYgdGVzdCAtbiAiJGFjbF9zaGxpYmV4dCI7IHRoZW4KKyAgICAgICAgICAgICAgICAgICAgaWYgdGVzdCAtZiAiJGRpci8kbGlibmFtZSRzaHJleHQiOyB0aGVuCisgICAgICAgICAgICAgICAgICAgICAgZm91bmRfZGlyPSIkZGlyIgorICAgICAgICAgICAgICAgICAgICAgIGZvdW5kX3NvPSIkZGlyLyRsaWJuYW1lJHNocmV4dCIKKyAgICAgICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgICAgICAgIGlmIHRlc3QgIiRhY2xfbGlicmFyeV9uYW1lc19zcGVjIiA9ICckbGlibmFtZSRzaHJleHQkdmVyc3VmZml4JzsgdGhlbgorICAgICAgICAgICAgICAgICAgICAgICAgdmVyPWAoY2QgIiRkaXIiICYmIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvciBmIGluICIkbGlibmFtZSRzaHJleHQiLio7IGRvIGVjaG8gIiRmIjsgZG9uZSBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IHNlZCAtZSAicyxeJGxpYm5hbWUkc2hyZXh0XFxcXC4sLCIgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBzb3J0IC10ICcuJyAtbiAtciAtazEsMSAtazIsMiAtazMsMyAtazQsNCAtazUsNSBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IHNlZCAxcSApIDI+L2Rldi9udWxsYAorICAgICAgICAgICAgICAgICAgICAgICAgaWYgdGVzdCAtbiAiJHZlciIgJiYgdGVzdCAtZiAiJGRpci8kbGlibmFtZSRzaHJleHQuJHZlciI7IHRoZW4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgZm91bmRfZGlyPSIkZGlyIgorICAgICAgICAgICAgICAgICAgICAgICAgICBmb3VuZF9zbz0iJGRpci8kbGlibmFtZSRzaHJleHQuJHZlciIKKyAgICAgICAgICAgICAgICAgICAgICAgIGZpCisgICAgICAgICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgICAgICAgICAgZXZhbCBsaWJyYXJ5X25hbWVzPVwiJGFjbF9saWJyYXJ5X25hbWVzX3NwZWNcIgorICAgICAgICAgICAgICAgICAgICAgICAgZm9yIGYgaW4gJGxpYnJhcnlfbmFtZXM7IGRvCisgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIHRlc3QgLWYgIiRkaXIvJGYiOyB0aGVuCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm91bmRfZGlyPSIkZGlyIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvdW5kX3NvPSIkZGlyLyRmIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrCisgICAgICAgICAgICAgICAgICAgICAgICAgIGZpCisgICAgICAgICAgICAgICAgICAgICAgICBkb25lCisgICAgICAgICAgICAgICAgICAgICAgZmkKKyAgICAgICAgICAgICAgICAgICAgZmkKKyAgICAgICAgICAgICAgICAgIGZpCisgICAgICAgICAgICAgICAgICBkbmwgVGhlbiBsb29rIGZvciBhIHN0YXRpYyBsaWJyYXJ5LgorICAgICAgICAgICAgICAgICAgaWYgdGVzdCAiWCRmb3VuZF9kaXIiID0gIlgiOyB0aGVuCisgICAgICAgICAgICAgICAgICAgIGlmIHRlc3QgLWYgIiRkaXIvJGxpYm5hbWUuJGFjbF9saWJleHQiOyB0aGVuCisgICAgICAgICAgICAgICAgICAgICAgZm91bmRfZGlyPSIkZGlyIgorICAgICAgICAgICAgICAgICAgICAgIGZvdW5kX2E9IiRkaXIvJGxpYm5hbWUuJGFjbF9saWJleHQiCisgICAgICAgICAgICAgICAgICAgIGZpCisgICAgICAgICAgICAgICAgICBmaQorICAgICAgICAgICAgICAgICAgaWYgdGVzdCAiWCRmb3VuZF9kaXIiICE9ICJYIjsgdGhlbgorICAgICAgICAgICAgICAgICAgICBpZiB0ZXN0IC1mICIkZGlyLyRsaWJuYW1lLmxhIjsgdGhlbgorICAgICAgICAgICAgICAgICAgICAgIGZvdW5kX2xhPSIkZGlyLyRsaWJuYW1lLmxhIgorICAgICAgICAgICAgICAgICAgICBmaQorICAgICAgICAgICAgICAgICAgZmkKKyAgICAgICAgICAgICAgICAgIDs7CisgICAgICAgICAgICAgIGVzYWMKKyAgICAgICAgICAgICAgaWYgdGVzdCAiWCRmb3VuZF9kaXIiICE9ICJYIjsgdGhlbgorICAgICAgICAgICAgICAgIGJyZWFrCisgICAgICAgICAgICAgIGZpCisgICAgICAgICAgICBkb25lCisgICAgICAgICAgZmkKKyAgICAgICAgICBpZiB0ZXN0ICJYJGZvdW5kX2RpciIgIT0gIlgiOyB0aGVuCisgICAgICAgICAgICBkbmwgRm91bmQgdGhlIGxpYnJhcnkuCisgICAgICAgICAgICBMVExJQltdTkFNRT0iJHtMVExJQltdTkFNRX0ke0xUTElCW11OQU1FOisgfS1MJGZvdW5kX2RpciAtbCRuYW1lIgorICAgICAgICAgICAgaWYgdGVzdCAiWCRmb3VuZF9zbyIgIT0gIlgiOyB0aGVuCisgICAgICAgICAgICAgIGRubCBMaW5raW5nIHdpdGggYSBzaGFyZWQgbGlicmFyeS4gV2UgYXR0ZW1wdCB0byBoYXJkY29kZSBpdHMKKyAgICAgICAgICAgICAgZG5sIGRpcmVjdG9yeSBpbnRvIHRoZSBleGVjdXRhYmxlJ3MgcnVucGF0aCwgdW5sZXNzIGl0J3MgdGhlCisgICAgICAgICAgICAgIGRubCBzdGFuZGFyZCAvdXNyL2xpYi4KKyAgICAgICAgICAgICAgaWYgdGVzdCAiJGVuYWJsZV9ycGF0aCIgPSBubyBcCisgICAgICAgICAgICAgICAgIHx8IHRlc3QgIlgkZm91bmRfZGlyIiA9ICJYL3Vzci8kYWNsX2xpYmRpcnN0ZW0iIFwKKyAgICAgICAgICAgICAgICAgfHwgdGVzdCAiWCRmb3VuZF9kaXIiID0gIlgvdXNyLyRhY2xfbGliZGlyc3RlbTIiOyB0aGVuCisgICAgICAgICAgICAgICAgZG5sIE5vIGhhcmRjb2RpbmcgaXMgbmVlZGVkLgorICAgICAgICAgICAgICAgIExJQltdTkFNRT0iJHtMSUJbXU5BTUV9JHtMSUJbXU5BTUU6KyB9JGZvdW5kX3NvIgorICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgZG5sIFVzZSBhbiBleHBsaWNpdCBvcHRpb24gdG8gaGFyZGNvZGUgRElSIGludG8gdGhlIHJlc3VsdGluZworICAgICAgICAgICAgICAgIGRubCBiaW5hcnkuCisgICAgICAgICAgICAgICAgZG5sIFBvdGVudGlhbGx5IGFkZCBESVIgdG8gbHRycGF0aGRpcnMuCisgICAgICAgICAgICAgICAgZG5sIFRoZSBsdHJwYXRoZGlycyB3aWxsIGJlIGFwcGVuZGVkIHRvICRMVExJQk5BTUUgYXQgdGhlIGVuZC4KKyAgICAgICAgICAgICAgICBoYXZlaXQ9CisgICAgICAgICAgICAgICAgZm9yIHggaW4gJGx0cnBhdGhkaXJzOyBkbworICAgICAgICAgICAgICAgICAgaWYgdGVzdCAiWCR4IiA9ICJYJGZvdW5kX2RpciI7IHRoZW4KKyAgICAgICAgICAgICAgICAgICAgaGF2ZWl0PXllcworICAgICAgICAgICAgICAgICAgICBicmVhaworICAgICAgICAgICAgICAgICAgZmkKKyAgICAgICAgICAgICAgICBkb25lCisgICAgICAgICAgICAgICAgaWYgdGVzdCAteiAiJGhhdmVpdCI7IHRoZW4KKyAgICAgICAgICAgICAgICAgIGx0cnBhdGhkaXJzPSIkbHRycGF0aGRpcnMgJGZvdW5kX2RpciIKKyAgICAgICAgICAgICAgICBmaQorICAgICAgICAgICAgICAgIGRubCBUaGUgaGFyZGNvZGluZyBpbnRvICRMSUJOQU1FIGlzIHN5c3RlbSBkZXBlbmRlbnQuCisgICAgICAgICAgICAgICAgaWYgdGVzdCAiJGFjbF9oYXJkY29kZV9kaXJlY3QiID0geWVzOyB0aGVuCisgICAgICAgICAgICAgICAgICBkbmwgVXNpbmcgRElSL2xpYk5BTUUuc28gZHVyaW5nIGxpbmtpbmcgaGFyZGNvZGVzIERJUiBpbnRvIHRoZQorICAgICAgICAgICAgICAgICAgZG5sIHJlc3VsdGluZyBiaW5hcnkuCisgICAgICAgICAgICAgICAgICBMSUJbXU5BTUU9IiR7TElCW11OQU1FfSR7TElCW11OQU1FOisgfSRmb3VuZF9zbyIKKyAgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgICBpZiB0ZXN0IC1uICIkYWNsX2hhcmRjb2RlX2xpYmRpcl9mbGFnX3NwZWMiICYmIHRlc3QgIiRhY2xfaGFyZGNvZGVfbWludXNfTCIgPSBubzsgdGhlbgorICAgICAgICAgICAgICAgICAgICBkbmwgVXNlIGFuIGV4cGxpY2l0IG9wdGlvbiB0byBoYXJkY29kZSBESVIgaW50byB0aGUgcmVzdWx0aW5nCisgICAgICAgICAgICAgICAgICAgIGRubCBiaW5hcnkuCisgICAgICAgICAgICAgICAgICAgIExJQltdTkFNRT0iJHtMSUJbXU5BTUV9JHtMSUJbXU5BTUU6KyB9JGZvdW5kX3NvIgorICAgICAgICAgICAgICAgICAgICBkbmwgUG90ZW50aWFsbHkgYWRkIERJUiB0byBycGF0aGRpcnMuCisgICAgICAgICAgICAgICAgICAgIGRubCBUaGUgcnBhdGhkaXJzIHdpbGwgYmUgYXBwZW5kZWQgdG8gJExJQk5BTUUgYXQgdGhlIGVuZC4KKyAgICAgICAgICAgICAgICAgICAgaGF2ZWl0PQorICAgICAgICAgICAgICAgICAgICBmb3IgeCBpbiAkcnBhdGhkaXJzOyBkbworICAgICAgICAgICAgICAgICAgICAgIGlmIHRlc3QgIlgkeCIgPSAiWCRmb3VuZF9kaXIiOyB0aGVuCisgICAgICAgICAgICAgICAgICAgICAgICBoYXZlaXQ9eWVzCisgICAgICAgICAgICAgICAgICAgICAgICBicmVhaworICAgICAgICAgICAgICAgICAgICAgIGZpCisgICAgICAgICAgICAgICAgICAgIGRvbmUKKyAgICAgICAgICAgICAgICAgICAgaWYgdGVzdCAteiAiJGhhdmVpdCI7IHRoZW4KKyAgICAgICAgICAgICAgICAgICAgICBycGF0aGRpcnM9IiRycGF0aGRpcnMgJGZvdW5kX2RpciIKKyAgICAgICAgICAgICAgICAgICAgZmkKKyAgICAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAgICAgZG5sIFJlbHkgb24gIi1MJGZvdW5kX2RpciIuCisgICAgICAgICAgICAgICAgICAgIGRubCBCdXQgZG9uJ3QgYWRkIGl0IGlmIGl0J3MgYWxyZWFkeSBjb250YWluZWQgaW4gdGhlIExERkxBR1MKKyAgICAgICAgICAgICAgICAgICAgZG5sIG9yIHRoZSBhbHJlYWR5IGNvbnN0cnVjdGVkICRMSUJOQU1FCisgICAgICAgICAgICAgICAgICAgIGhhdmVpdD0KKyAgICAgICAgICAgICAgICAgICAgZm9yIHggaW4gJExERkxBR1MgJExJQltdTkFNRTsgZG8KKyAgICAgICAgICAgICAgICAgICAgICBBQ19MSUJfV0lUSF9GSU5BTF9QUkVGSVgoW2V2YWwgeD1cIiR4XCJdKQorICAgICAgICAgICAgICAgICAgICAgIGlmIHRlc3QgIlgkeCIgPSAiWC1MJGZvdW5kX2RpciI7IHRoZW4KKyAgICAgICAgICAgICAgICAgICAgICAgIGhhdmVpdD15ZXMKKyAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrCisgICAgICAgICAgICAgICAgICAgICAgZmkKKyAgICAgICAgICAgICAgICAgICAgZG9uZQorICAgICAgICAgICAgICAgICAgICBpZiB0ZXN0IC16ICIkaGF2ZWl0IjsgdGhlbgorICAgICAgICAgICAgICAgICAgICAgIExJQltdTkFNRT0iJHtMSUJbXU5BTUV9JHtMSUJbXU5BTUU6KyB9LUwkZm91bmRfZGlyIgorICAgICAgICAgICAgICAgICAgICBmaQorICAgICAgICAgICAgICAgICAgICBpZiB0ZXN0ICIkYWNsX2hhcmRjb2RlX21pbnVzX0wiICE9IG5vOyB0aGVuCisgICAgICAgICAgICAgICAgICAgICAgZG5sIEZJWE1FOiBOb3Qgc3VyZSB3aGV0aGVyIHdlIHNob3VsZCB1c2UKKyAgICAgICAgICAgICAgICAgICAgICBkbmwgIi1MJGZvdW5kX2RpciAtbCRuYW1lIiBvciAiLUwkZm91bmRfZGlyICRmb3VuZF9zbyIKKyAgICAgICAgICAgICAgICAgICAgICBkbmwgaGVyZS4KKyAgICAgICAgICAgICAgICAgICAgICBMSUJbXU5BTUU9IiR7TElCW11OQU1FfSR7TElCW11OQU1FOisgfSRmb3VuZF9zbyIKKyAgICAgICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgICAgICAgIGRubCBXZSBjYW5ub3QgdXNlICRhY2xfaGFyZGNvZGVfcnVucGF0aF92YXIgYW5kIExEX1JVTl9QQVRICisgICAgICAgICAgICAgICAgICAgICAgZG5sIGhlcmUsIGJlY2F1c2UgdGhpcyBkb2Vzbid0IGZpdCBpbiBmbGFncyBwYXNzZWQgdG8gdGhlCisgICAgICAgICAgICAgICAgICAgICAgZG5sIGNvbXBpbGVyLiBTbyBnaXZlIHVwLiBObyBoYXJkY29kaW5nLiBUaGlzIGFmZmVjdHMgb25seQorICAgICAgICAgICAgICAgICAgICAgIGRubCB2ZXJ5IG9sZCBzeXN0ZW1zLgorICAgICAgICAgICAgICAgICAgICAgIGRubCBGSVhNRTogTm90IHN1cmUgd2hldGhlciB3ZSBzaG91bGQgdXNlCisgICAgICAgICAgICAgICAgICAgICAgZG5sICItTCRmb3VuZF9kaXIgLWwkbmFtZSIgb3IgIi1MJGZvdW5kX2RpciAkZm91bmRfc28iCisgICAgICAgICAgICAgICAgICAgICAgZG5sIGhlcmUuCisgICAgICAgICAgICAgICAgICAgICAgTElCW11OQU1FPSIke0xJQltdTkFNRX0ke0xJQltdTkFNRTorIH0tbCRuYW1lIgorICAgICAgICAgICAgICAgICAgICBmaQorICAgICAgICAgICAgICAgICAgZmkKKyAgICAgICAgICAgICAgICBmaQorICAgICAgICAgICAgICBmaQorICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICBpZiB0ZXN0ICJYJGZvdW5kX2EiICE9ICJYIjsgdGhlbgorICAgICAgICAgICAgICAgIGRubCBMaW5raW5nIHdpdGggYSBzdGF0aWMgbGlicmFyeS4KKyAgICAgICAgICAgICAgICBMSUJbXU5BTUU9IiR7TElCW11OQU1FfSR7TElCW11OQU1FOisgfSRmb3VuZF9hIgorICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgZG5sIFdlIHNob3VsZG4ndCBjb21lIGhlcmUsIGJ1dCBhbnl3YXkgaXQncyBnb29kIHRvIGhhdmUgYQorICAgICAgICAgICAgICAgIGRubCBmYWxsYmFjay4KKyAgICAgICAgICAgICAgICBMSUJbXU5BTUU9IiR7TElCW11OQU1FfSR7TElCW11OQU1FOisgfS1MJGZvdW5kX2RpciAtbCRuYW1lIgorICAgICAgICAgICAgICBmaQorICAgICAgICAgICAgZmkKKyAgICAgICAgICAgIGRubCBBc3N1bWUgdGhlIGluY2x1ZGUgZmlsZXMgYXJlIG5lYXJieS4KKyAgICAgICAgICAgIGFkZGl0aW9uYWxfaW5jbHVkZWRpcj0KKyAgICAgICAgICAgIGNhc2UgIiRmb3VuZF9kaXIiIGluCisgICAgICAgICAgICAgICovJGFjbF9saWJkaXJzdGVtIHwgKi8kYWNsX2xpYmRpcnN0ZW0vKQorICAgICAgICAgICAgICAgIGJhc2VkaXI9YGVjaG8gIlgkZm91bmRfZGlyIiB8IHNlZCAtZSAncyxeWCwsJyAtZSAicywvJGFjbF9saWJkaXJzdGVtLyInKiQsLCdgCisgICAgICAgICAgICAgICAgaWYgdGVzdCAiJG5hbWUiID0gJyQxJzsgdGhlbgorICAgICAgICAgICAgICAgICAgTElCW11OQU1FW11fUFJFRklYPSIkYmFzZWRpciIKKyAgICAgICAgICAgICAgICBmaQorICAgICAgICAgICAgICAgIGFkZGl0aW9uYWxfaW5jbHVkZWRpcj0iJGJhc2VkaXIvaW5jbHVkZSIKKyAgICAgICAgICAgICAgICA7OworICAgICAgICAgICAgICAqLyRhY2xfbGliZGlyc3RlbTIgfCAqLyRhY2xfbGliZGlyc3RlbTIvKQorICAgICAgICAgICAgICAgIGJhc2VkaXI9YGVjaG8gIlgkZm91bmRfZGlyIiB8IHNlZCAtZSAncyxeWCwsJyAtZSAicywvJGFjbF9saWJkaXJzdGVtMi8iJyokLCwnYAorICAgICAgICAgICAgICAgIGlmIHRlc3QgIiRuYW1lIiA9ICckMSc7IHRoZW4KKyAgICAgICAgICAgICAgICAgIExJQltdTkFNRVtdX1BSRUZJWD0iJGJhc2VkaXIiCisgICAgICAgICAgICAgICAgZmkKKyAgICAgICAgICAgICAgICBhZGRpdGlvbmFsX2luY2x1ZGVkaXI9IiRiYXNlZGlyL2luY2x1ZGUiCisgICAgICAgICAgICAgICAgOzsKKyAgICAgICAgICAgIGVzYWMKKyAgICAgICAgICAgIGlmIHRlc3QgIlgkYWRkaXRpb25hbF9pbmNsdWRlZGlyIiAhPSAiWCI7IHRoZW4KKyAgICAgICAgICAgICAgZG5sIFBvdGVudGlhbGx5IGFkZCAkYWRkaXRpb25hbF9pbmNsdWRlZGlyIHRvICRJTkNOQU1FLgorICAgICAgICAgICAgICBkbmwgQnV0IGRvbid0IGFkZCBpdAorICAgICAgICAgICAgICBkbmwgICAxLiBpZiBpdCdzIHRoZSBzdGFuZGFyZCAvdXNyL2luY2x1ZGUsCisgICAgICAgICAgICAgIGRubCAgIDIuIGlmIGl0J3MgL3Vzci9sb2NhbC9pbmNsdWRlIGFuZCB3ZSBhcmUgdXNpbmcgR0NDIG9uIExpbnV4LAorICAgICAgICAgICAgICBkbmwgICAzLiBpZiBpdCdzIGFscmVhZHkgcHJlc2VudCBpbiAkQ1BQRkxBR1Mgb3IgdGhlIGFscmVhZHkKKyAgICAgICAgICAgICAgZG5sICAgICAgY29uc3RydWN0ZWQgJElOQ05BTUUsCisgICAgICAgICAgICAgIGRubCAgIDQuIGlmIGl0IGRvZXNuJ3QgZXhpc3QgYXMgYSBkaXJlY3RvcnkuCisgICAgICAgICAgICAgIGlmIHRlc3QgIlgkYWRkaXRpb25hbF9pbmNsdWRlZGlyIiAhPSAiWC91c3IvaW5jbHVkZSI7IHRoZW4KKyAgICAgICAgICAgICAgICBoYXZlaXQ9CisgICAgICAgICAgICAgICAgaWYgdGVzdCAiWCRhZGRpdGlvbmFsX2luY2x1ZGVkaXIiID0gIlgvdXNyL2xvY2FsL2luY2x1ZGUiOyB0aGVuCisgICAgICAgICAgICAgICAgICBpZiB0ZXN0IC1uICIkR0NDIjsgdGhlbgorICAgICAgICAgICAgICAgICAgICBjYXNlICRob3N0X29zIGluCisgICAgICAgICAgICAgICAgICAgICAgbGludXgqIHwgZ251KiB8IGsqYnNkKi1nbnUpIGhhdmVpdD15ZXM7OworICAgICAgICAgICAgICAgICAgICBlc2FjCisgICAgICAgICAgICAgICAgICBmaQorICAgICAgICAgICAgICAgIGZpCisgICAgICAgICAgICAgICAgaWYgdGVzdCAteiAiJGhhdmVpdCI7IHRoZW4KKyAgICAgICAgICAgICAgICAgIGZvciB4IGluICRDUFBGTEFHUyAkSU5DW11OQU1FOyBkbworICAgICAgICAgICAgICAgICAgICBBQ19MSUJfV0lUSF9GSU5BTF9QUkVGSVgoW2V2YWwgeD1cIiR4XCJdKQorICAgICAgICAgICAgICAgICAgICBpZiB0ZXN0ICJYJHgiID0gIlgtSSRhZGRpdGlvbmFsX2luY2x1ZGVkaXIiOyB0aGVuCisgICAgICAgICAgICAgICAgICAgICAgaGF2ZWl0PXllcworICAgICAgICAgICAgICAgICAgICAgIGJyZWFrCisgICAgICAgICAgICAgICAgICAgIGZpCisgICAgICAgICAgICAgICAgICBkb25lCisgICAgICAgICAgICAgICAgICBpZiB0ZXN0IC16ICIkaGF2ZWl0IjsgdGhlbgorICAgICAgICAgICAgICAgICAgICBpZiB0ZXN0IC1kICIkYWRkaXRpb25hbF9pbmNsdWRlZGlyIjsgdGhlbgorICAgICAgICAgICAgICAgICAgICAgIGRubCBSZWFsbHkgYWRkICRhZGRpdGlvbmFsX2luY2x1ZGVkaXIgdG8gJElOQ05BTUUuCisgICAgICAgICAgICAgICAgICAgICAgSU5DW11OQU1FPSIke0lOQ1tdTkFNRX0ke0lOQ1tdTkFNRTorIH0tSSRhZGRpdGlvbmFsX2luY2x1ZGVkaXIiCisgICAgICAgICAgICAgICAgICAgIGZpCisgICAgICAgICAgICAgICAgICBmaQorICAgICAgICAgICAgICAgIGZpCisgICAgICAgICAgICAgIGZpCisgICAgICAgICAgICBmaQorICAgICAgICAgICAgZG5sIExvb2sgZm9yIGRlcGVuZGVuY2llcy4KKyAgICAgICAgICAgIGlmIHRlc3QgLW4gIiRmb3VuZF9sYSI7IHRoZW4KKyAgICAgICAgICAgICAgZG5sIFJlYWQgdGhlIC5sYSBmaWxlLiBJdCBkZWZpbmVzIHRoZSB2YXJpYWJsZXMKKyAgICAgICAgICAgICAgZG5sIGRsbmFtZSwgbGlicmFyeV9uYW1lcywgb2xkX2xpYnJhcnksIGRlcGVuZGVuY3lfbGlicywgY3VycmVudCwKKyAgICAgICAgICAgICAgZG5sIGFnZSwgcmV2aXNpb24sIGluc3RhbGxlZCwgZGxvcGVuLCBkbHByZW9wZW4sIGxpYmRpci4KKyAgICAgICAgICAgICAgc2F2ZV9saWJkaXI9IiRsaWJkaXIiCisgICAgICAgICAgICAgIGNhc2UgIiRmb3VuZF9sYSIgaW4KKyAgICAgICAgICAgICAgICAqLyogfCAqXFwqKSAuICIkZm91bmRfbGEiIDs7CisgICAgICAgICAgICAgICAgKikgLiAiLi8kZm91bmRfbGEiIDs7CisgICAgICAgICAgICAgIGVzYWMKKyAgICAgICAgICAgICAgbGliZGlyPSIkc2F2ZV9saWJkaXIiCisgICAgICAgICAgICAgIGRubCBXZSB1c2Ugb25seSBkZXBlbmRlbmN5X2xpYnMuCisgICAgICAgICAgICAgIGZvciBkZXAgaW4gJGRlcGVuZGVuY3lfbGliczsgZG8KKyAgICAgICAgICAgICAgICBjYXNlICIkZGVwIiBpbgorICAgICAgICAgICAgICAgICAgLUwqKQorICAgICAgICAgICAgICAgICAgICBhZGRpdGlvbmFsX2xpYmRpcj1gZWNobyAiWCRkZXAiIHwgc2VkIC1lICdzL15YLUwvLydgCisgICAgICAgICAgICAgICAgICAgIGRubCBQb3RlbnRpYWxseSBhZGQgJGFkZGl0aW9uYWxfbGliZGlyIHRvICRMSUJOQU1FIGFuZCAkTFRMSUJOQU1FLgorICAgICAgICAgICAgICAgICAgICBkbmwgQnV0IGRvbid0IGFkZCBpdAorICAgICAgICAgICAgICAgICAgICBkbmwgICAxLiBpZiBpdCdzIHRoZSBzdGFuZGFyZCAvdXNyL2xpYiwKKyAgICAgICAgICAgICAgICAgICAgZG5sICAgMi4gaWYgaXQncyAvdXNyL2xvY2FsL2xpYiBhbmQgd2UgYXJlIHVzaW5nIEdDQyBvbiBMaW51eCwKKyAgICAgICAgICAgICAgICAgICAgZG5sICAgMy4gaWYgaXQncyBhbHJlYWR5IHByZXNlbnQgaW4gJExERkxBR1Mgb3IgdGhlIGFscmVhZHkKKyAgICAgICAgICAgICAgICAgICAgZG5sICAgICAgY29uc3RydWN0ZWQgJExJQk5BTUUsCisgICAgICAgICAgICAgICAgICAgIGRubCAgIDQuIGlmIGl0IGRvZXNuJ3QgZXhpc3QgYXMgYSBkaXJlY3RvcnkuCisgICAgICAgICAgICAgICAgICAgIGlmIHRlc3QgIlgkYWRkaXRpb25hbF9saWJkaXIiICE9ICJYL3Vzci8kYWNsX2xpYmRpcnN0ZW0iIFwKKyAgICAgICAgICAgICAgICAgICAgICAgJiYgdGVzdCAiWCRhZGRpdGlvbmFsX2xpYmRpciIgIT0gIlgvdXNyLyRhY2xfbGliZGlyc3RlbTIiOyB0aGVuCisgICAgICAgICAgICAgICAgICAgICAgaGF2ZWl0PQorICAgICAgICAgICAgICAgICAgICAgIGlmIHRlc3QgIlgkYWRkaXRpb25hbF9saWJkaXIiID0gIlgvdXNyL2xvY2FsLyRhY2xfbGliZGlyc3RlbSIgXAorICAgICAgICAgICAgICAgICAgICAgICAgIHx8IHRlc3QgIlgkYWRkaXRpb25hbF9saWJkaXIiID0gIlgvdXNyL2xvY2FsLyRhY2xfbGliZGlyc3RlbTIiOyB0aGVuCisgICAgICAgICAgICAgICAgICAgICAgICBpZiB0ZXN0IC1uICIkR0NDIjsgdGhlbgorICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlICRob3N0X29zIGluCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGludXgqIHwgZ251KiB8IGsqYnNkKi1nbnUpIGhhdmVpdD15ZXM7OworICAgICAgICAgICAgICAgICAgICAgICAgICBlc2FjCisgICAgICAgICAgICAgICAgICAgICAgICBmaQorICAgICAgICAgICAgICAgICAgICAgIGZpCisgICAgICAgICAgICAgICAgICAgICAgaWYgdGVzdCAteiAiJGhhdmVpdCI7IHRoZW4KKyAgICAgICAgICAgICAgICAgICAgICAgIGhhdmVpdD0KKyAgICAgICAgICAgICAgICAgICAgICAgIGZvciB4IGluICRMREZMQUdTICRMSUJbXU5BTUU7IGRvCisgICAgICAgICAgICAgICAgICAgICAgICAgIEFDX0xJQl9XSVRIX0ZJTkFMX1BSRUZJWChbZXZhbCB4PVwiJHhcIl0pCisgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIHRlc3QgIlgkeCIgPSAiWC1MJGFkZGl0aW9uYWxfbGliZGlyIjsgdGhlbgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhdmVpdD15ZXMKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhaworICAgICAgICAgICAgICAgICAgICAgICAgICBmaQorICAgICAgICAgICAgICAgICAgICAgICAgZG9uZQorICAgICAgICAgICAgICAgICAgICAgICAgaWYgdGVzdCAteiAiJGhhdmVpdCI7IHRoZW4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgdGVzdCAtZCAiJGFkZGl0aW9uYWxfbGliZGlyIjsgdGhlbgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRubCBSZWFsbHkgYWRkICRhZGRpdGlvbmFsX2xpYmRpciB0byAkTElCTkFNRS4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBMSUJbXU5BTUU9IiR7TElCW11OQU1FfSR7TElCW11OQU1FOisgfS1MJGFkZGl0aW9uYWxfbGliZGlyIgorICAgICAgICAgICAgICAgICAgICAgICAgICBmaQorICAgICAgICAgICAgICAgICAgICAgICAgZmkKKyAgICAgICAgICAgICAgICAgICAgICAgIGhhdmVpdD0KKyAgICAgICAgICAgICAgICAgICAgICAgIGZvciB4IGluICRMREZMQUdTICRMVExJQltdTkFNRTsgZG8KKyAgICAgICAgICAgICAgICAgICAgICAgICAgQUNfTElCX1dJVEhfRklOQUxfUFJFRklYKFtldmFsIHg9XCIkeFwiXSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgdGVzdCAiWCR4IiA9ICJYLUwkYWRkaXRpb25hbF9saWJkaXIiOyB0aGVuCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGF2ZWl0PXllcworICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrCisgICAgICAgICAgICAgICAgICAgICAgICAgIGZpCisgICAgICAgICAgICAgICAgICAgICAgICBkb25lCisgICAgICAgICAgICAgICAgICAgICAgICBpZiB0ZXN0IC16ICIkaGF2ZWl0IjsgdGhlbgorICAgICAgICAgICAgICAgICAgICAgICAgICBpZiB0ZXN0IC1kICIkYWRkaXRpb25hbF9saWJkaXIiOyB0aGVuCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgZG5sIFJlYWxseSBhZGQgJGFkZGl0aW9uYWxfbGliZGlyIHRvICRMVExJQk5BTUUuCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgTFRMSUJbXU5BTUU9IiR7TFRMSUJbXU5BTUV9JHtMVExJQltdTkFNRTorIH0tTCRhZGRpdGlvbmFsX2xpYmRpciIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgZmkKKyAgICAgICAgICAgICAgICAgICAgICAgIGZpCisgICAgICAgICAgICAgICAgICAgICAgZmkKKyAgICAgICAgICAgICAgICAgICAgZmkKKyAgICAgICAgICAgICAgICAgICAgOzsKKyAgICAgICAgICAgICAgICAgIC1SKikKKyAgICAgICAgICAgICAgICAgICAgZGlyPWBlY2hvICJYJGRlcCIgfCBzZWQgLWUgJ3MvXlgtUi8vJ2AKKyAgICAgICAgICAgICAgICAgICAgaWYgdGVzdCAiJGVuYWJsZV9ycGF0aCIgIT0gbm87IHRoZW4KKyAgICAgICAgICAgICAgICAgICAgICBkbmwgUG90ZW50aWFsbHkgYWRkIERJUiB0byBycGF0aGRpcnMuCisgICAgICAgICAgICAgICAgICAgICAgZG5sIFRoZSBycGF0aGRpcnMgd2lsbCBiZSBhcHBlbmRlZCB0byAkTElCTkFNRSBhdCB0aGUgZW5kLgorICAgICAgICAgICAgICAgICAgICAgIGhhdmVpdD0KKyAgICAgICAgICAgICAgICAgICAgICBmb3IgeCBpbiAkcnBhdGhkaXJzOyBkbworICAgICAgICAgICAgICAgICAgICAgICAgaWYgdGVzdCAiWCR4IiA9ICJYJGRpciI7IHRoZW4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgaGF2ZWl0PXllcworICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhaworICAgICAgICAgICAgICAgICAgICAgICAgZmkKKyAgICAgICAgICAgICAgICAgICAgICBkb25lCisgICAgICAgICAgICAgICAgICAgICAgaWYgdGVzdCAteiAiJGhhdmVpdCI7IHRoZW4KKyAgICAgICAgICAgICAgICAgICAgICAgIHJwYXRoZGlycz0iJHJwYXRoZGlycyAkZGlyIgorICAgICAgICAgICAgICAgICAgICAgIGZpCisgICAgICAgICAgICAgICAgICAgICAgZG5sIFBvdGVudGlhbGx5IGFkZCBESVIgdG8gbHRycGF0aGRpcnMuCisgICAgICAgICAgICAgICAgICAgICAgZG5sIFRoZSBsdHJwYXRoZGlycyB3aWxsIGJlIGFwcGVuZGVkIHRvICRMVExJQk5BTUUgYXQgdGhlIGVuZC4KKyAgICAgICAgICAgICAgICAgICAgICBoYXZlaXQ9CisgICAgICAgICAgICAgICAgICAgICAgZm9yIHggaW4gJGx0cnBhdGhkaXJzOyBkbworICAgICAgICAgICAgICAgICAgICAgICAgaWYgdGVzdCAiWCR4IiA9ICJYJGRpciI7IHRoZW4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgaGF2ZWl0PXllcworICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhaworICAgICAgICAgICAgICAgICAgICAgICAgZmkKKyAgICAgICAgICAgICAgICAgICAgICBkb25lCisgICAgICAgICAgICAgICAgICAgICAgaWYgdGVzdCAteiAiJGhhdmVpdCI7IHRoZW4KKyAgICAgICAgICAgICAgICAgICAgICAgIGx0cnBhdGhkaXJzPSIkbHRycGF0aGRpcnMgJGRpciIKKyAgICAgICAgICAgICAgICAgICAgICBmaQorICAgICAgICAgICAgICAgICAgICBmaQorICAgICAgICAgICAgICAgICAgICA7OworICAgICAgICAgICAgICAgICAgLWwqKQorICAgICAgICAgICAgICAgICAgICBkbmwgSGFuZGxlIHRoaXMgaW4gdGhlIG5leHQgcm91bmQuCisgICAgICAgICAgICAgICAgICAgIG5hbWVzX25leHRfcm91bmQ9IiRuYW1lc19uZXh0X3JvdW5kICJgZWNobyAiWCRkZXAiIHwgc2VkIC1lICdzL15YLWwvLydgCisgICAgICAgICAgICAgICAgICAgIDs7CisgICAgICAgICAgICAgICAgICAqLmxhKQorICAgICAgICAgICAgICAgICAgICBkbmwgSGFuZGxlIHRoaXMgaW4gdGhlIG5leHQgcm91bmQuIFRocm93IGF3YXkgdGhlIC5sYSdzCisgICAgICAgICAgICAgICAgICAgIGRubCBkaXJlY3Rvcnk7IGl0IGlzIGFscmVhZHkgY29udGFpbmVkIGluIGEgcHJlY2VkaW5nIC1MCisgICAgICAgICAgICAgICAgICAgIGRubCBvcHRpb24uCisgICAgICAgICAgICAgICAgICAgIG5hbWVzX25leHRfcm91bmQ9IiRuYW1lc19uZXh0X3JvdW5kICJgZWNobyAiWCRkZXAiIHwgc2VkIC1lICdzLF5YLiovLCwnIC1lICdzLF5saWIsLCcgLWUgJ3MsXC5sYSQsLCdgCisgICAgICAgICAgICAgICAgICAgIDs7CisgICAgICAgICAgICAgICAgICAqKQorICAgICAgICAgICAgICAgICAgICBkbmwgTW9zdCBsaWtlbHkgYW4gaW1tZWRpYXRlIGxpYnJhcnkgbmFtZS4KKyAgICAgICAgICAgICAgICAgICAgTElCW11OQU1FPSIke0xJQltdTkFNRX0ke0xJQltdTkFNRTorIH0kZGVwIgorICAgICAgICAgICAgICAgICAgICBMVExJQltdTkFNRT0iJHtMVExJQltdTkFNRX0ke0xUTElCW11OQU1FOisgfSRkZXAiCisgICAgICAgICAgICAgICAgICAgIDs7CisgICAgICAgICAgICAgICAgZXNhYworICAgICAgICAgICAgICBkb25lCisgICAgICAgICAgICBmaQorICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgIGRubCBEaWRuJ3QgZmluZCB0aGUgbGlicmFyeTsgYXNzdW1lIGl0IGlzIGluIHRoZSBzeXN0ZW0gZGlyZWN0b3JpZXMKKyAgICAgICAgICAgIGRubCBrbm93biB0byB0aGUgbGlua2VyIGFuZCBydW50aW1lIGxvYWRlci4gKEFsbCB0aGUgc3lzdGVtCisgICAgICAgICAgICBkbmwgZGlyZWN0b3JpZXMga25vd24gdG8gdGhlIGxpbmtlciBzaG91bGQgYWxzbyBiZSBrbm93biB0byB0aGUKKyAgICAgICAgICAgIGRubCBydW50aW1lIGxvYWRlciwgb3RoZXJ3aXNlIHRoZSBzeXN0ZW0gaXMgc2V2ZXJlbHkgbWlzY29uZmlndXJlZC4pCisgICAgICAgICAgICBMSUJbXU5BTUU9IiR7TElCW11OQU1FfSR7TElCW11OQU1FOisgfS1sJG5hbWUiCisgICAgICAgICAgICBMVExJQltdTkFNRT0iJHtMVExJQltdTkFNRX0ke0xUTElCW11OQU1FOisgfS1sJG5hbWUiCisgICAgICAgICAgZmkKKyAgICAgICAgZmkKKyAgICAgIGZpCisgICAgZG9uZQorICBkb25lCisgIGlmIHRlc3QgIlgkcnBhdGhkaXJzIiAhPSAiWCI7IHRoZW4KKyAgICBpZiB0ZXN0IC1uICIkYWNsX2hhcmRjb2RlX2xpYmRpcl9zZXBhcmF0b3IiOyB0aGVuCisgICAgICBkbmwgV2VpcmQgcGxhdGZvcm06IG9ubHkgdGhlIGxhc3QgLXJwYXRoIG9wdGlvbiBjb3VudHMsIHRoZSB1c2VyIG11c3QKKyAgICAgIGRubCBwYXNzIGFsbCBwYXRoIGVsZW1lbnRzIGluIG9uZSBvcHRpb24uIFdlIGNhbiBhcnJhbmdlIHRoYXQgZm9yIGEKKyAgICAgIGRubCBzaW5nbGUgbGlicmFyeSwgYnV0IG5vdCB3aGVuIG1vcmUgdGhhbiBvbmUgJExJQk5BTUVzIGFyZSB1c2VkLgorICAgICAgYWxsZGlycz0KKyAgICAgIGZvciBmb3VuZF9kaXIgaW4gJHJwYXRoZGlyczsgZG8KKyAgICAgICAgYWxsZGlycz0iJHthbGxkaXJzfSR7YWxsZGlyczorJGFjbF9oYXJkY29kZV9saWJkaXJfc2VwYXJhdG9yfSRmb3VuZF9kaXIiCisgICAgICBkb25lCisgICAgICBkbmwgTm90ZTogYWNsX2hhcmRjb2RlX2xpYmRpcl9mbGFnX3NwZWMgdXNlcyAkbGliZGlyIGFuZCAkd2wuCisgICAgICBhY2xfc2F2ZV9saWJkaXI9IiRsaWJkaXIiCisgICAgICBsaWJkaXI9IiRhbGxkaXJzIgorICAgICAgZXZhbCBmbGFnPVwiJGFjbF9oYXJkY29kZV9saWJkaXJfZmxhZ19zcGVjXCIKKyAgICAgIGxpYmRpcj0iJGFjbF9zYXZlX2xpYmRpciIKKyAgICAgIExJQltdTkFNRT0iJHtMSUJbXU5BTUV9JHtMSUJbXU5BTUU6KyB9JGZsYWciCisgICAgZWxzZQorICAgICAgZG5sIFRoZSAtcnBhdGggb3B0aW9ucyBhcmUgY3VtdWxhdGl2ZS4KKyAgICAgIGZvciBmb3VuZF9kaXIgaW4gJHJwYXRoZGlyczsgZG8KKyAgICAgICAgYWNsX3NhdmVfbGliZGlyPSIkbGliZGlyIgorICAgICAgICBsaWJkaXI9IiRmb3VuZF9kaXIiCisgICAgICAgIGV2YWwgZmxhZz1cIiRhY2xfaGFyZGNvZGVfbGliZGlyX2ZsYWdfc3BlY1wiCisgICAgICAgIGxpYmRpcj0iJGFjbF9zYXZlX2xpYmRpciIKKyAgICAgICAgTElCW11OQU1FPSIke0xJQltdTkFNRX0ke0xJQltdTkFNRTorIH0kZmxhZyIKKyAgICAgIGRvbmUKKyAgICBmaQorICBmaQorICBpZiB0ZXN0ICJYJGx0cnBhdGhkaXJzIiAhPSAiWCI7IHRoZW4KKyAgICBkbmwgV2hlbiB1c2luZyBsaWJ0b29sLCB0aGUgb3B0aW9uIHRoYXQgd29ya3MgZm9yIGJvdGggbGlicmFyaWVzIGFuZAorICAgIGRubCBleGVjdXRhYmxlcyBpcyAtUi4gVGhlIC1SIG9wdGlvbnMgYXJlIGN1bXVsYXRpdmUuCisgICAgZm9yIGZvdW5kX2RpciBpbiAkbHRycGF0aGRpcnM7IGRvCisgICAgICBMVExJQltdTkFNRT0iJHtMVExJQltdTkFNRX0ke0xUTElCW11OQU1FOisgfS1SJGZvdW5kX2RpciIKKyAgICBkb25lCisgIGZpCisgIHBvcGRlZihbUF9BX0NfS10pCisgIHBvcGRlZihbUEFDS0xJQlNdKQorICBwb3BkZWYoW1BBQ0tVUF0pCisgIHBvcGRlZihbUEFDS10pCisgIHBvcGRlZihbTkFNRV0pCitdKQorCitkbmwgQUNfTElCX0FQUEVORFRPVkFSKFZBUiwgQ09OVEVOVFMpIGFwcGVuZHMgdGhlIGVsZW1lbnRzIG9mIENPTlRFTlRTIHRvIFZBUiwKK2RubCB1bmxlc3MgYWxyZWFkeSBwcmVzZW50IGluIFZBUi4KK2RubCBXb3JrcyBvbmx5IGZvciBDUFBGTEFHUywgbm90IGZvciBMSUIqIHZhcmlhYmxlcyBiZWNhdXNlIHRoYXQgc29tZXRpbWVzCitkbmwgY29udGFpbnMgdHdvIG9yIHRocmVlIGNvbnNlY3V0aXZlIGVsZW1lbnRzIHRoYXQgYmVsb25nIHRvZ2V0aGVyLgorQUNfREVGVU4oW0FDX0xJQl9BUFBFTkRUT1ZBUl0sCitbCisgIGZvciBlbGVtZW50IGluIFskMl07IGRvCisgICAgaGF2ZWl0PQorICAgIGZvciB4IGluICRbJDFdOyBkbworICAgICAgQUNfTElCX1dJVEhfRklOQUxfUFJFRklYKFtldmFsIHg9XCIkeFwiXSkKKyAgICAgIGlmIHRlc3QgIlgkeCIgPSAiWCRlbGVtZW50IjsgdGhlbgorICAgICAgICBoYXZlaXQ9eWVzCisgICAgICAgIGJyZWFrCisgICAgICBmaQorICAgIGRvbmUKKyAgICBpZiB0ZXN0IC16ICIkaGF2ZWl0IjsgdGhlbgorICAgICAgWyQxXT0iJHtbJDFdfSR7WyQxXTorIH0kZWxlbWVudCIKKyAgICBmaQorICBkb25lCitdKQorCitkbmwgRm9yIHRob3NlIGNhc2VzIHdoZXJlIGEgdmFyaWFibGUgY29udGFpbnMgc2V2ZXJhbCAtTCBhbmQgLWwgb3B0aW9ucworZG5sIHJlZmVycmluZyB0byB1bmtub3duIGxpYnJhcmllcyBhbmQgZGlyZWN0b3JpZXMsIHRoaXMgbWFjcm8gZGV0ZXJtaW5lcyB0aGUKK2RubCBuZWNlc3NhcnkgYWRkaXRpb25hbCBsaW5rZXIgb3B0aW9ucyBmb3IgdGhlIHJ1bnRpbWUgcGF0aC4KK2RubCBBQ19MSUJfTElOS0ZMQUdTX0ZST01fTElCUyhbTERBRERWQVJdLCBbTElCU1ZBTFVFXSwgW1VTRS1MSUJUT09MXSkKK2RubCBzZXRzIExEQUREVkFSIHRvIGxpbmtlciBvcHRpb25zIG5lZWRlZCB0b2dldGhlciB3aXRoIExJQlNWQUxVRS4KK2RubCBJZiBVU0UtTElCVE9PTCBldmFsdWF0ZXMgdG8gbm9uLWVtcHR5LCBsaW5raW5nIHdpdGggbGlidG9vbCBpcyBhc3N1bWVkLAorZG5sIG90aGVyd2lzZSBsaW5raW5nIHdpdGhvdXQgbGlidG9vbCBpcyBhc3N1bWVkLgorQUNfREVGVU4oW0FDX0xJQl9MSU5LRkxBR1NfRlJPTV9MSUJTXSwKK1sKKyAgQUNfUkVRVUlSRShbQUNfTElCX1JQQVRIXSkKKyAgQUNfUkVRVUlSRShbQUNfTElCX1BSRVBBUkVfTVVMVElMSUJdKQorICAkMT0KKyAgaWYgdGVzdCAiJGVuYWJsZV9ycGF0aCIgIT0gbm87IHRoZW4KKyAgICBpZiB0ZXN0IC1uICIkYWNsX2hhcmRjb2RlX2xpYmRpcl9mbGFnX3NwZWMiICYmIHRlc3QgIiRhY2xfaGFyZGNvZGVfbWludXNfTCIgPSBubzsgdGhlbgorICAgICAgZG5sIFVzZSBhbiBleHBsaWNpdCBvcHRpb24gdG8gaGFyZGNvZGUgZGlyZWN0b3JpZXMgaW50byB0aGUgcmVzdWx0aW5nCisgICAgICBkbmwgYmluYXJ5LgorICAgICAgcnBhdGhkaXJzPQorICAgICAgbmV4dD0KKyAgICAgIGZvciBvcHQgaW4gJDI7IGRvCisgICAgICAgIGlmIHRlc3QgLW4gIiRuZXh0IjsgdGhlbgorICAgICAgICAgIGRpcj0iJG5leHQiCisgICAgICAgICAgZG5sIE5vIG5lZWQgdG8gaGFyZGNvZGUgdGhlIHN0YW5kYXJkIC91c3IvbGliLgorICAgICAgICAgIGlmIHRlc3QgIlgkZGlyIiAhPSAiWC91c3IvJGFjbF9saWJkaXJzdGVtIiBcCisgICAgICAgICAgICAgJiYgdGVzdCAiWCRkaXIiICE9ICJYL3Vzci8kYWNsX2xpYmRpcnN0ZW0yIjsgdGhlbgorICAgICAgICAgICAgcnBhdGhkaXJzPSIkcnBhdGhkaXJzICRkaXIiCisgICAgICAgICAgZmkKKyAgICAgICAgICBuZXh0PQorICAgICAgICBlbHNlCisgICAgICAgICAgY2FzZSAkb3B0IGluCisgICAgICAgICAgICAtTCkgbmV4dD15ZXMgOzsKKyAgICAgICAgICAgIC1MKikgZGlyPWBlY2hvICJYJG9wdCIgfCBzZWQgLWUgJ3MsXlgtTCwsJ2AKKyAgICAgICAgICAgICAgICAgZG5sIE5vIG5lZWQgdG8gaGFyZGNvZGUgdGhlIHN0YW5kYXJkIC91c3IvbGliLgorICAgICAgICAgICAgICAgICBpZiB0ZXN0ICJYJGRpciIgIT0gIlgvdXNyLyRhY2xfbGliZGlyc3RlbSIgXAorICAgICAgICAgICAgICAgICAgICAmJiB0ZXN0ICJYJGRpciIgIT0gIlgvdXNyLyRhY2xfbGliZGlyc3RlbTIiOyB0aGVuCisgICAgICAgICAgICAgICAgICAgcnBhdGhkaXJzPSIkcnBhdGhkaXJzICRkaXIiCisgICAgICAgICAgICAgICAgIGZpCisgICAgICAgICAgICAgICAgIG5leHQ9IDs7CisgICAgICAgICAgICAqKSBuZXh0PSA7OworICAgICAgICAgIGVzYWMKKyAgICAgICAgZmkKKyAgICAgIGRvbmUKKyAgICAgIGlmIHRlc3QgIlgkcnBhdGhkaXJzIiAhPSAiWCI7IHRoZW4KKyAgICAgICAgaWYgdGVzdCAtbiAiIiQzIiI7IHRoZW4KKyAgICAgICAgICBkbmwgbGlidG9vbCBpcyB1c2VkIGZvciBsaW5raW5nLiBVc2UgLVIgb3B0aW9ucy4KKyAgICAgICAgICBmb3IgZGlyIGluICRycGF0aGRpcnM7IGRvCisgICAgICAgICAgICAkMT0iJHskMX0keyQxOisgfS1SJGRpciIKKyAgICAgICAgICBkb25lCisgICAgICAgIGVsc2UKKyAgICAgICAgICBkbmwgVGhlIGxpbmtlciBpcyB1c2VkIGZvciBsaW5raW5nIGRpcmVjdGx5LgorICAgICAgICAgIGlmIHRlc3QgLW4gIiRhY2xfaGFyZGNvZGVfbGliZGlyX3NlcGFyYXRvciI7IHRoZW4KKyAgICAgICAgICAgIGRubCBXZWlyZCBwbGF0Zm9ybTogb25seSB0aGUgbGFzdCAtcnBhdGggb3B0aW9uIGNvdW50cywgdGhlIHVzZXIKKyAgICAgICAgICAgIGRubCBtdXN0IHBhc3MgYWxsIHBhdGggZWxlbWVudHMgaW4gb25lIG9wdGlvbi4KKyAgICAgICAgICAgIGFsbGRpcnM9CisgICAgICAgICAgICBmb3IgZGlyIGluICRycGF0aGRpcnM7IGRvCisgICAgICAgICAgICAgIGFsbGRpcnM9IiR7YWxsZGlyc30ke2FsbGRpcnM6KyRhY2xfaGFyZGNvZGVfbGliZGlyX3NlcGFyYXRvcn0kZGlyIgorICAgICAgICAgICAgZG9uZQorICAgICAgICAgICAgYWNsX3NhdmVfbGliZGlyPSIkbGliZGlyIgorICAgICAgICAgICAgbGliZGlyPSIkYWxsZGlycyIKKyAgICAgICAgICAgIGV2YWwgZmxhZz1cIiRhY2xfaGFyZGNvZGVfbGliZGlyX2ZsYWdfc3BlY1wiCisgICAgICAgICAgICBsaWJkaXI9IiRhY2xfc2F2ZV9saWJkaXIiCisgICAgICAgICAgICAkMT0iJGZsYWciCisgICAgICAgICAgZWxzZQorICAgICAgICAgICAgZG5sIFRoZSAtcnBhdGggb3B0aW9ucyBhcmUgY3VtdWxhdGl2ZS4KKyAgICAgICAgICAgIGZvciBkaXIgaW4gJHJwYXRoZGlyczsgZG8KKyAgICAgICAgICAgICAgYWNsX3NhdmVfbGliZGlyPSIkbGliZGlyIgorICAgICAgICAgICAgICBsaWJkaXI9IiRkaXIiCisgICAgICAgICAgICAgIGV2YWwgZmxhZz1cIiRhY2xfaGFyZGNvZGVfbGliZGlyX2ZsYWdfc3BlY1wiCisgICAgICAgICAgICAgIGxpYmRpcj0iJGFjbF9zYXZlX2xpYmRpciIKKyAgICAgICAgICAgICAgJDE9IiR7JDF9JHskMTorIH0kZmxhZyIKKyAgICAgICAgICAgIGRvbmUKKyAgICAgICAgICBmaQorICAgICAgICBmaQorICAgICAgZmkKKyAgICBmaQorICBmaQorICBBQ19TVUJTVChbJDFdKQorXSkKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbTQvbGliLXByZWZpeC5tNCBiL2Rwa2ctMS4xNi4xLjEvbTQvbGliLXByZWZpeC5tNApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xNjAxY2VhCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tNC9saWItcHJlZml4Lm00CkBAIC0wLDAgKzEsMjI0IEBACisjIGxpYi1wcmVmaXgubTQgc2VyaWFsIDcgKGdldHRleHQtMC4xOCkKK2RubCBDb3B5cmlnaHQgKEMpIDIwMDEtMjAwNSwgMjAwOC0yMDEwIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgorZG5sIFRoaXMgZmlsZSBpcyBmcmVlIHNvZnR3YXJlOyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uCitkbmwgZ2l2ZXMgdW5saW1pdGVkIHBlcm1pc3Npb24gdG8gY29weSBhbmQvb3IgZGlzdHJpYnV0ZSBpdCwKK2RubCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9ucywgYXMgbG9uZyBhcyB0aGlzIG5vdGljZSBpcyBwcmVzZXJ2ZWQuCisKK2RubCBGcm9tIEJydW5vIEhhaWJsZS4KKworZG5sIEFDX0xJQl9BUkdfV0lUSCBpcyBzeW5vbnltb3VzIHRvIEFDX0FSR19XSVRIIGluIGF1dG9jb25mLTIuMTMsIGFuZAorZG5sIHNpbWlsYXIgdG8gQUNfQVJHX1dJVEggaW4gYXV0b2NvbmYgMi41Mi4uLjIuNTcgZXhjZXB0IHRoYXQgaXMgZG9lc24ndAorZG5sIHJlcXVpcmUgZXhjZXNzaXZlIGJyYWNrZXRpbmcuCitpZmRlZihbQUNfSEVMUF9TVFJJTkddLAorW0FDX0RFRlVOKFtBQ19MSUJfQVJHX1dJVEhdLCBbQUNfQVJHX1dJVEgoWyQxXSxbWyQyXV0sWyQzXSxbJDRdKV0pXSwKK1tBQ19ERUZVTihbQUNfXVtMSUJfQVJHX1dJVEhdLCBbQUNfQVJHX1dJVEgoWyQxXSxbJDJdLFskM10sWyQ0XSldKV0pCisKK2RubCBBQ19MSUJfUFJFRklYIGFkZHMgdG8gdGhlIENQUEZMQUdTIGFuZCBMREZMQUdTIHRoZSBmbGFncyB0aGF0IGFyZSBuZWVkZWQKK2RubCB0byBhY2Nlc3MgcHJldmlvdXNseSBpbnN0YWxsZWQgbGlicmFyaWVzLiBUaGUgYmFzaWMgYXNzdW1wdGlvbiBpcyB0aGF0CitkbmwgYSB1c2VyIHdpbGwgd2FudCBwYWNrYWdlcyB0byB1c2Ugb3RoZXIgcGFja2FnZXMgaGUgcHJldmlvdXNseSBpbnN0YWxsZWQKK2RubCB3aXRoIHRoZSBzYW1lIC0tcHJlZml4IG9wdGlvbi4KK2RubCBUaGlzIG1hY3JvIGlzIG5vdCBuZWVkZWQgaWYgb25seSBBQ19MSUJfTElOS0ZMQUdTIGlzIHVzZWQgdG8gbG9jYXRlCitkbmwgbGlicmFyaWVzLCBidXQgaXMgb3RoZXJ3aXNlIHZlcnkgY29udmVuaWVudC4KK0FDX0RFRlVOKFtBQ19MSUJfUFJFRklYXSwKK1sKKyAgQUNfQkVGT1JFKFskMF0sIFtBQ19MSUJfTElOS0ZMQUdTXSkKKyAgQUNfUkVRVUlSRShbQUNfUFJPR19DQ10pCisgIEFDX1JFUVVJUkUoW0FDX0NBTk9OSUNBTF9IT1NUXSkKKyAgQUNfUkVRVUlSRShbQUNfTElCX1BSRVBBUkVfTVVMVElMSUJdKQorICBBQ19SRVFVSVJFKFtBQ19MSUJfUFJFUEFSRV9QUkVGSVhdKQorICBkbmwgQnkgZGVmYXVsdCwgbG9vayBpbiAkaW5jbHVkZWRpciBhbmQgJGxpYmRpci4KKyAgdXNlX2FkZGl0aW9uYWw9eWVzCisgIEFDX0xJQl9XSVRIX0ZJTkFMX1BSRUZJWChbCisgICAgZXZhbCBhZGRpdGlvbmFsX2luY2x1ZGVkaXI9XCIkaW5jbHVkZWRpclwiCisgICAgZXZhbCBhZGRpdGlvbmFsX2xpYmRpcj1cIiRsaWJkaXJcIgorICBdKQorICBBQ19MSUJfQVJHX1dJVEgoW2xpYi1wcmVmaXhdLAorWyAgLS13aXRoLWxpYi1wcmVmaXhbPURJUl0gc2VhcmNoIGZvciBsaWJyYXJpZXMgaW4gRElSL2luY2x1ZGUgYW5kIERJUi9saWIKKyAgLS13aXRob3V0LWxpYi1wcmVmaXggICAgZG9uJ3Qgc2VhcmNoIGZvciBsaWJyYXJpZXMgaW4gaW5jbHVkZWRpciBhbmQgbGliZGlyXSwKK1sKKyAgICBpZiB0ZXN0ICJYJHdpdGh2YWwiID0gIlhubyI7IHRoZW4KKyAgICAgIHVzZV9hZGRpdGlvbmFsPW5vCisgICAgZWxzZQorICAgICAgaWYgdGVzdCAiWCR3aXRodmFsIiA9ICJYIjsgdGhlbgorICAgICAgICBBQ19MSUJfV0lUSF9GSU5BTF9QUkVGSVgoWworICAgICAgICAgIGV2YWwgYWRkaXRpb25hbF9pbmNsdWRlZGlyPVwiJGluY2x1ZGVkaXJcIgorICAgICAgICAgIGV2YWwgYWRkaXRpb25hbF9saWJkaXI9XCIkbGliZGlyXCIKKyAgICAgICAgXSkKKyAgICAgIGVsc2UKKyAgICAgICAgYWRkaXRpb25hbF9pbmNsdWRlZGlyPSIkd2l0aHZhbC9pbmNsdWRlIgorICAgICAgICBhZGRpdGlvbmFsX2xpYmRpcj0iJHdpdGh2YWwvJGFjbF9saWJkaXJzdGVtIgorICAgICAgZmkKKyAgICBmaQorXSkKKyAgaWYgdGVzdCAkdXNlX2FkZGl0aW9uYWwgPSB5ZXM7IHRoZW4KKyAgICBkbmwgUG90ZW50aWFsbHkgYWRkICRhZGRpdGlvbmFsX2luY2x1ZGVkaXIgdG8gJENQUEZMQUdTLgorICAgIGRubCBCdXQgZG9uJ3QgYWRkIGl0CisgICAgZG5sICAgMS4gaWYgaXQncyB0aGUgc3RhbmRhcmQgL3Vzci9pbmNsdWRlLAorICAgIGRubCAgIDIuIGlmIGl0J3MgYWxyZWFkeSBwcmVzZW50IGluICRDUFBGTEFHUywKKyAgICBkbmwgICAzLiBpZiBpdCdzIC91c3IvbG9jYWwvaW5jbHVkZSBhbmQgd2UgYXJlIHVzaW5nIEdDQyBvbiBMaW51eCwKKyAgICBkbmwgICA0LiBpZiBpdCBkb2Vzbid0IGV4aXN0IGFzIGEgZGlyZWN0b3J5LgorICAgIGlmIHRlc3QgIlgkYWRkaXRpb25hbF9pbmNsdWRlZGlyIiAhPSAiWC91c3IvaW5jbHVkZSI7IHRoZW4KKyAgICAgIGhhdmVpdD0KKyAgICAgIGZvciB4IGluICRDUFBGTEFHUzsgZG8KKyAgICAgICAgQUNfTElCX1dJVEhfRklOQUxfUFJFRklYKFtldmFsIHg9XCIkeFwiXSkKKyAgICAgICAgaWYgdGVzdCAiWCR4IiA9ICJYLUkkYWRkaXRpb25hbF9pbmNsdWRlZGlyIjsgdGhlbgorICAgICAgICAgIGhhdmVpdD15ZXMKKyAgICAgICAgICBicmVhaworICAgICAgICBmaQorICAgICAgZG9uZQorICAgICAgaWYgdGVzdCAteiAiJGhhdmVpdCI7IHRoZW4KKyAgICAgICAgaWYgdGVzdCAiWCRhZGRpdGlvbmFsX2luY2x1ZGVkaXIiID0gIlgvdXNyL2xvY2FsL2luY2x1ZGUiOyB0aGVuCisgICAgICAgICAgaWYgdGVzdCAtbiAiJEdDQyI7IHRoZW4KKyAgICAgICAgICAgIGNhc2UgJGhvc3Rfb3MgaW4KKyAgICAgICAgICAgICAgbGludXgqIHwgZ251KiB8IGsqYnNkKi1nbnUpIGhhdmVpdD15ZXM7OworICAgICAgICAgICAgZXNhYworICAgICAgICAgIGZpCisgICAgICAgIGZpCisgICAgICAgIGlmIHRlc3QgLXogIiRoYXZlaXQiOyB0aGVuCisgICAgICAgICAgaWYgdGVzdCAtZCAiJGFkZGl0aW9uYWxfaW5jbHVkZWRpciI7IHRoZW4KKyAgICAgICAgICAgIGRubCBSZWFsbHkgYWRkICRhZGRpdGlvbmFsX2luY2x1ZGVkaXIgdG8gJENQUEZMQUdTLgorICAgICAgICAgICAgQ1BQRkxBR1M9IiR7Q1BQRkxBR1N9JHtDUFBGTEFHUzorIH0tSSRhZGRpdGlvbmFsX2luY2x1ZGVkaXIiCisgICAgICAgICAgZmkKKyAgICAgICAgZmkKKyAgICAgIGZpCisgICAgZmkKKyAgICBkbmwgUG90ZW50aWFsbHkgYWRkICRhZGRpdGlvbmFsX2xpYmRpciB0byAkTERGTEFHUy4KKyAgICBkbmwgQnV0IGRvbid0IGFkZCBpdAorICAgIGRubCAgIDEuIGlmIGl0J3MgdGhlIHN0YW5kYXJkIC91c3IvbGliLAorICAgIGRubCAgIDIuIGlmIGl0J3MgYWxyZWFkeSBwcmVzZW50IGluICRMREZMQUdTLAorICAgIGRubCAgIDMuIGlmIGl0J3MgL3Vzci9sb2NhbC9saWIgYW5kIHdlIGFyZSB1c2luZyBHQ0Mgb24gTGludXgsCisgICAgZG5sICAgNC4gaWYgaXQgZG9lc24ndCBleGlzdCBhcyBhIGRpcmVjdG9yeS4KKyAgICBpZiB0ZXN0ICJYJGFkZGl0aW9uYWxfbGliZGlyIiAhPSAiWC91c3IvJGFjbF9saWJkaXJzdGVtIjsgdGhlbgorICAgICAgaGF2ZWl0PQorICAgICAgZm9yIHggaW4gJExERkxBR1M7IGRvCisgICAgICAgIEFDX0xJQl9XSVRIX0ZJTkFMX1BSRUZJWChbZXZhbCB4PVwiJHhcIl0pCisgICAgICAgIGlmIHRlc3QgIlgkeCIgPSAiWC1MJGFkZGl0aW9uYWxfbGliZGlyIjsgdGhlbgorICAgICAgICAgIGhhdmVpdD15ZXMKKyAgICAgICAgICBicmVhaworICAgICAgICBmaQorICAgICAgZG9uZQorICAgICAgaWYgdGVzdCAteiAiJGhhdmVpdCI7IHRoZW4KKyAgICAgICAgaWYgdGVzdCAiWCRhZGRpdGlvbmFsX2xpYmRpciIgPSAiWC91c3IvbG9jYWwvJGFjbF9saWJkaXJzdGVtIjsgdGhlbgorICAgICAgICAgIGlmIHRlc3QgLW4gIiRHQ0MiOyB0aGVuCisgICAgICAgICAgICBjYXNlICRob3N0X29zIGluCisgICAgICAgICAgICAgIGxpbnV4KikgaGF2ZWl0PXllczs7CisgICAgICAgICAgICBlc2FjCisgICAgICAgICAgZmkKKyAgICAgICAgZmkKKyAgICAgICAgaWYgdGVzdCAteiAiJGhhdmVpdCI7IHRoZW4KKyAgICAgICAgICBpZiB0ZXN0IC1kICIkYWRkaXRpb25hbF9saWJkaXIiOyB0aGVuCisgICAgICAgICAgICBkbmwgUmVhbGx5IGFkZCAkYWRkaXRpb25hbF9saWJkaXIgdG8gJExERkxBR1MuCisgICAgICAgICAgICBMREZMQUdTPSIke0xERkxBR1N9JHtMREZMQUdTOisgfS1MJGFkZGl0aW9uYWxfbGliZGlyIgorICAgICAgICAgIGZpCisgICAgICAgIGZpCisgICAgICBmaQorICAgIGZpCisgIGZpCitdKQorCitkbmwgQUNfTElCX1BSRVBBUkVfUFJFRklYIGNyZWF0ZXMgdmFyaWFibGVzIGFjbF9maW5hbF9wcmVmaXgsCitkbmwgYWNsX2ZpbmFsX2V4ZWNfcHJlZml4LCBjb250YWluaW5nIHRoZSB2YWx1ZXMgdG8gd2hpY2ggJHByZWZpeCBhbmQKK2RubCAkZXhlY19wcmVmaXggd2lsbCBleHBhbmQgYXQgdGhlIGVuZCBvZiB0aGUgY29uZmlndXJlIHNjcmlwdC4KK0FDX0RFRlVOKFtBQ19MSUJfUFJFUEFSRV9QUkVGSVhdLAorWworICBkbmwgVW5mb3J0dW5hdGVseSwgcHJlZml4IGFuZCBleGVjX3ByZWZpeCBnZXQgb25seSBmaW5hbGx5IGRldGVybWluZWQKKyAgZG5sIGF0IHRoZSBlbmQgb2YgY29uZmlndXJlLgorICBpZiB0ZXN0ICJYJHByZWZpeCIgPSAiWE5PTkUiOyB0aGVuCisgICAgYWNsX2ZpbmFsX3ByZWZpeD0iJGFjX2RlZmF1bHRfcHJlZml4IgorICBlbHNlCisgICAgYWNsX2ZpbmFsX3ByZWZpeD0iJHByZWZpeCIKKyAgZmkKKyAgaWYgdGVzdCAiWCRleGVjX3ByZWZpeCIgPSAiWE5PTkUiOyB0aGVuCisgICAgYWNsX2ZpbmFsX2V4ZWNfcHJlZml4PScke3ByZWZpeH0nCisgIGVsc2UKKyAgICBhY2xfZmluYWxfZXhlY19wcmVmaXg9IiRleGVjX3ByZWZpeCIKKyAgZmkKKyAgYWNsX3NhdmVfcHJlZml4PSIkcHJlZml4IgorICBwcmVmaXg9IiRhY2xfZmluYWxfcHJlZml4IgorICBldmFsIGFjbF9maW5hbF9leGVjX3ByZWZpeD1cIiRhY2xfZmluYWxfZXhlY19wcmVmaXhcIgorICBwcmVmaXg9IiRhY2xfc2F2ZV9wcmVmaXgiCitdKQorCitkbmwgQUNfTElCX1dJVEhfRklOQUxfUFJFRklYKFtzdGF0ZW1lbnRdKSBldmFsdWF0ZXMgc3RhdGVtZW50LCB3aXRoIHRoZQorZG5sIHZhcmlhYmxlcyBwcmVmaXggYW5kIGV4ZWNfcHJlZml4IGJvdW5kIHRvIHRoZSB2YWx1ZXMgdGhleSB3aWxsIGhhdmUKK2RubCBhdCB0aGUgZW5kIG9mIHRoZSBjb25maWd1cmUgc2NyaXB0LgorQUNfREVGVU4oW0FDX0xJQl9XSVRIX0ZJTkFMX1BSRUZJWF0sCitbCisgIGFjbF9zYXZlX3ByZWZpeD0iJHByZWZpeCIKKyAgcHJlZml4PSIkYWNsX2ZpbmFsX3ByZWZpeCIKKyAgYWNsX3NhdmVfZXhlY19wcmVmaXg9IiRleGVjX3ByZWZpeCIKKyAgZXhlY19wcmVmaXg9IiRhY2xfZmluYWxfZXhlY19wcmVmaXgiCisgICQxCisgIGV4ZWNfcHJlZml4PSIkYWNsX3NhdmVfZXhlY19wcmVmaXgiCisgIHByZWZpeD0iJGFjbF9zYXZlX3ByZWZpeCIKK10pCisKK2RubCBBQ19MSUJfUFJFUEFSRV9NVUxUSUxJQiBjcmVhdGVzCitkbmwgLSBhIHZhcmlhYmxlIGFjbF9saWJkaXJzdGVtLCBjb250YWluaW5nIHRoZSBiYXNlbmFtZSBvZiB0aGUgbGliZGlyLCBlaXRoZXIKK2RubCAgICJsaWIiIG9yICJsaWI2NCIgb3IgImxpYi82NCIsCitkbmwgLSBhIHZhcmlhYmxlIGFjbF9saWJkaXJzdGVtMiwgYXMgYSBzZWNvbmRhcnkgcG9zc2libGUgdmFsdWUgZm9yCitkbmwgICBhY2xfbGliZGlyc3RlbSwgZWl0aGVyIHRoZSBzYW1lIGFzIGFjbF9saWJkaXJzdGVtIG9yICJsaWIvc3BhcmN2OSIgb3IKK2RubCAgICJsaWIvYW1kNjQiLgorQUNfREVGVU4oW0FDX0xJQl9QUkVQQVJFX01VTFRJTElCXSwKK1sKKyAgZG5sIFRoZXJlIGlzIG5vIGZvcm1hbCBzdGFuZGFyZCByZWdhcmRpbmcgbGliIGFuZCBsaWI2NC4KKyAgZG5sIE9uIGdsaWJjIHN5c3RlbXMsIHRoZSBjdXJyZW50IHByYWN0aWNlIGlzIHRoYXQgb24gYSBzeXN0ZW0gc3VwcG9ydGluZworICBkbmwgMzItYml0IGFuZCA2NC1iaXQgaW5zdHJ1Y3Rpb24gc2V0cyBvciBBQklzLCA2NC1iaXQgbGlicmFyaWVzIGdvIHVuZGVyCisgIGRubCAkcHJlZml4L2xpYjY0IGFuZCAzMi1iaXQgbGlicmFyaWVzIGdvIHVuZGVyICRwcmVmaXgvbGliLiBXZSBkZXRlcm1pbmUKKyAgZG5sIHRoZSBjb21waWxlcidzIGRlZmF1bHQgbW9kZSBieSBsb29raW5nIGF0IHRoZSBjb21waWxlcidzIGxpYnJhcnkgc2VhcmNoCisgIGRubCBwYXRoLiBJZiBhdCBsZWFzdCBvbmUgb2YgaXRzIGVsZW1lbnRzIGVuZHMgaW4gL2xpYjY0IG9yIHBvaW50cyB0byBhCisgIGRubCBkaXJlY3Rvcnkgd2hvc2UgYWJzb2x1dGUgcGF0aG5hbWUgZW5kcyBpbiAvbGliNjQsIHdlIGFzc3VtZSBhIDY0LWJpdCBBQkkuCisgIGRubCBPdGhlcndpc2Ugd2UgdXNlIHRoZSBkZWZhdWx0LCBuYW1lbHkgImxpYiIuCisgIGRubCBPbiBTb2xhcmlzIHN5c3RlbXMsIHRoZSBjdXJyZW50IHByYWN0aWNlIGlzIHRoYXQgb24gYSBzeXN0ZW0gc3VwcG9ydGluZworICBkbmwgMzItYml0IGFuZCA2NC1iaXQgaW5zdHJ1Y3Rpb24gc2V0cyBvciBBQklzLCA2NC1iaXQgbGlicmFyaWVzIGdvIHVuZGVyCisgIGRubCAkcHJlZml4L2xpYi82NCAod2hpY2ggaXMgYSBzeW1saW5rIHRvIGVpdGhlciAkcHJlZml4L2xpYi9zcGFyY3Y5IG9yCisgIGRubCAkcHJlZml4L2xpYi9hbWQ2NCkgYW5kIDMyLWJpdCBsaWJyYXJpZXMgZ28gdW5kZXIgJHByZWZpeC9saWIuCisgIEFDX1JFUVVJUkUoW0FDX0NBTk9OSUNBTF9IT1NUXSkKKyAgYWNsX2xpYmRpcnN0ZW09bGliCisgIGFjbF9saWJkaXJzdGVtMj0KKyAgY2FzZSAiJGhvc3Rfb3MiIGluCisgICAgc29sYXJpcyopCisgICAgICBkbmwgU2VlIFNvbGFyaXMgMTAgU29mdHdhcmUgRGV2ZWxvcGVyIENvbGxlY3Rpb24gPiBTb2xhcmlzIDY0LWJpdCBEZXZlbG9wZXIncyBHdWlkZSA+IFRoZSBEZXZlbG9wbWVudCBFbnZpcm9ubWVudAorICAgICAgZG5sIDxodHRwOi8vZG9jcy5zdW4uY29tL2FwcC9kb2NzL2RvYy84MTYtNTEzOC9kZXYtZW52P2w9ZW4mYT12aWV3Pi4KKyAgICAgIGRubCAiUG9ydGFibGUgTWFrZWZpbGVzIHNob3VsZCByZWZlciB0byBhbnkgbGlicmFyeSBkaXJlY3RvcmllcyB1c2luZyB0aGUgNjQgc3ltYm9saWMgbGluay4iCisgICAgICBkbmwgQnV0IHdlIHdhbnQgdG8gcmVjb2duaXplIHRoZSBzcGFyY3Y5IG9yIGFtZDY0IHN1YmRpcmVjdG9yeSBhbHNvIGlmIHRoZQorICAgICAgZG5sIHN5bWxpbmsgaXMgbWlzc2luZywgc28gd2Ugc2V0IGFjbF9saWJkaXJzdGVtMiB0b28uCisgICAgICBBQ19DQUNIRV9DSEVDSyhbZm9yIDY0LWJpdCBob3N0XSwgW2dsX2N2X3NvbGFyaXNfNjRiaXRdLAorICAgICAgICBbQUNfRUdSRVBfQ1BQKFtzaXh0eWZvdXIgYml0c10sIFsKKyNpZmRlZiBfTFA2NAorc2l4dHlmb3VyIGJpdHMKKyNlbmRpZgorICAgICAgICAgICBdLCBbZ2xfY3Zfc29sYXJpc182NGJpdD15ZXNdLCBbZ2xfY3Zfc29sYXJpc182NGJpdD1ub10pCisgICAgICAgIF0pCisgICAgICBpZiB0ZXN0ICRnbF9jdl9zb2xhcmlzXzY0Yml0ID0geWVzOyB0aGVuCisgICAgICAgIGFjbF9saWJkaXJzdGVtPWxpYi82NAorICAgICAgICBjYXNlICIkaG9zdF9jcHUiIGluCisgICAgICAgICAgc3BhcmMqKSAgICAgICAgYWNsX2xpYmRpcnN0ZW0yPWxpYi9zcGFyY3Y5IDs7CisgICAgICAgICAgaSo4NiB8IHg4Nl82NCkgYWNsX2xpYmRpcnN0ZW0yPWxpYi9hbWQ2NCA7OworICAgICAgICBlc2FjCisgICAgICBmaQorICAgICAgOzsKKyAgICAqKQorICAgICAgc2VhcmNocGF0aD1gKExDX0FMTD1DICRDQyAtcHJpbnQtc2VhcmNoLWRpcnMpIDI+L2Rldi9udWxsIHwgc2VkIC1uIC1lICdzLF5saWJyYXJpZXM6ICwscCcgfCBzZWQgLWUgJ3MsXj0sLCdgCisgICAgICBpZiB0ZXN0IC1uICIkc2VhcmNocGF0aCI7IHRoZW4KKyAgICAgICAgYWNsX3NhdmVfSUZTPSIke0lGUz0gCX0iOyBJRlM9IjoiCisgICAgICAgIGZvciBzZWFyY2hkaXIgaW4gJHNlYXJjaHBhdGg7IGRvCisgICAgICAgICAgaWYgdGVzdCAtZCAiJHNlYXJjaGRpciI7IHRoZW4KKyAgICAgICAgICAgIGNhc2UgIiRzZWFyY2hkaXIiIGluCisgICAgICAgICAgICAgICovbGliNjQvIHwgKi9saWI2NCApIGFjbF9saWJkaXJzdGVtPWxpYjY0IDs7CisgICAgICAgICAgICAgICovLi4vIHwgKi8uLiApCisgICAgICAgICAgICAgICAgIyBCZXR0ZXIgaWdub3JlIGRpcmVjdG9yaWVzIG9mIHRoaXMgZm9ybS4gVGhleSBhcmUgbWlzbGVhZGluZy4KKyAgICAgICAgICAgICAgICA7OworICAgICAgICAgICAgICAqKSBzZWFyY2hkaXI9YGNkICIkc2VhcmNoZGlyIiAmJiBwd2RgCisgICAgICAgICAgICAgICAgIGNhc2UgIiRzZWFyY2hkaXIiIGluCisgICAgICAgICAgICAgICAgICAgKi9saWI2NCApIGFjbF9saWJkaXJzdGVtPWxpYjY0IDs7CisgICAgICAgICAgICAgICAgIGVzYWMgOzsKKyAgICAgICAgICAgIGVzYWMKKyAgICAgICAgICBmaQorICAgICAgICBkb25lCisgICAgICAgIElGUz0iJGFjbF9zYXZlX0lGUyIKKyAgICAgIGZpCisgICAgICA7OworICBlc2FjCisgIHRlc3QgLW4gIiRhY2xfbGliZGlyc3RlbTIiIHx8IGFjbF9saWJkaXJzdGVtMj0iJGFjbF9saWJkaXJzdGVtIgorXSkKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbTQvbmxzLm00IGIvZHBrZy0xLjE2LjEuMS9tNC9ubHMubTQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDAzNzA0YwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbTQvbmxzLm00CkBAIC0wLDAgKzEsMzIgQEAKKyMgbmxzLm00IHNlcmlhbCA1IChnZXR0ZXh0LTAuMTgpCitkbmwgQ29weXJpZ2h0IChDKSAxOTk1LTIwMDMsIDIwMDUtMjAwNiwgMjAwOC0yMDEwIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwKK2RubCBJbmMuCitkbmwgVGhpcyBmaWxlIGlzIGZyZWUgc29mdHdhcmU7IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24KK2RubCBnaXZlcyB1bmxpbWl0ZWQgcGVybWlzc2lvbiB0byBjb3B5IGFuZC9vciBkaXN0cmlidXRlIGl0LAorZG5sIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb25zLCBhcyBsb25nIGFzIHRoaXMgbm90aWNlIGlzIHByZXNlcnZlZC4KK2RubAorZG5sIFRoaXMgZmlsZSBjYW4gY2FuIGJlIHVzZWQgaW4gcHJvamVjdHMgd2hpY2ggYXJlIG5vdCBhdmFpbGFibGUgdW5kZXIKK2RubCB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2Ugb3IgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljCitkbmwgTGljZW5zZSBidXQgd2hpY2ggc3RpbGwgd2FudCB0byBwcm92aWRlIHN1cHBvcnQgZm9yIHRoZSBHTlUgZ2V0dGV4dAorZG5sIGZ1bmN0aW9uYWxpdHkuCitkbmwgUGxlYXNlIG5vdGUgdGhhdCB0aGUgYWN0dWFsIGNvZGUgb2YgdGhlIEdOVSBnZXR0ZXh0IGxpYnJhcnkgaXMgY292ZXJlZAorZG5sIGJ5IHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlLCBhbmQgdGhlIHJlc3Qgb2YgdGhlIEdOVQorZG5sIGdldHRleHQgcGFja2FnZSBwYWNrYWdlIGlzIGNvdmVyZWQgYnkgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlLgorZG5sIFRoZXkgYXJlICpub3QqIGluIHRoZSBwdWJsaWMgZG9tYWluLgorCitkbmwgQXV0aG9yczoKK2RubCAgIFVscmljaCBEcmVwcGVyIDxkcmVwcGVyQGN5Z251cy5jb20+LCAxOTk1LTIwMDAuCitkbmwgICBCcnVubyBIYWlibGUgPGhhaWJsZUBjbGlzcC5jb25zLm9yZz4sIDIwMDAtMjAwMy4KKworQUNfUFJFUkVRKFsyLjUwXSkKKworQUNfREVGVU4oW0FNX05MU10sCitbCisgIEFDX01TR19DSEVDS0lORyhbd2hldGhlciBOTFMgaXMgcmVxdWVzdGVkXSkKKyAgZG5sIERlZmF1bHQgaXMgZW5hYmxlZCBOTFMKKyAgQUNfQVJHX0VOQUJMRShbbmxzXSwKKyAgICBbICAtLWRpc2FibGUtbmxzICAgICAgICAgICBkbyBub3QgdXNlIE5hdGl2ZSBMYW5ndWFnZSBTdXBwb3J0XSwKKyAgICBVU0VfTkxTPSRlbmFibGV2YWwsIFVTRV9OTFM9eWVzKQorICBBQ19NU0dfUkVTVUxUKFskVVNFX05MU10pCisgIEFDX1NVQlNUKFtVU0VfTkxTXSkKK10pCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL200L3BvLm00IGIvZHBrZy0xLjE2LjEuMS9tNC9wby5tNApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40N2YzNmE0Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tNC9wby5tNApAQCAtMCwwICsxLDQ0OSBAQAorIyBwby5tNCBzZXJpYWwgMTcgKGdldHRleHQtMC4xOCkKK2RubCBDb3B5cmlnaHQgKEMpIDE5OTUtMjAxMCBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KK2RubCBUaGlzIGZpbGUgaXMgZnJlZSBzb2Z0d2FyZTsgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbgorZG5sIGdpdmVzIHVubGltaXRlZCBwZXJtaXNzaW9uIHRvIGNvcHkgYW5kL29yIGRpc3RyaWJ1dGUgaXQsCitkbmwgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbnMsIGFzIGxvbmcgYXMgdGhpcyBub3RpY2UgaXMgcHJlc2VydmVkLgorZG5sCitkbmwgVGhpcyBmaWxlIGNhbiBjYW4gYmUgdXNlZCBpbiBwcm9qZWN0cyB3aGljaCBhcmUgbm90IGF2YWlsYWJsZSB1bmRlcgorZG5sIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBvciB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMKK2RubCBMaWNlbnNlIGJ1dCB3aGljaCBzdGlsbCB3YW50IHRvIHByb3ZpZGUgc3VwcG9ydCBmb3IgdGhlIEdOVSBnZXR0ZXh0CitkbmwgZnVuY3Rpb25hbGl0eS4KK2RubCBQbGVhc2Ugbm90ZSB0aGF0IHRoZSBhY3R1YWwgY29kZSBvZiB0aGUgR05VIGdldHRleHQgbGlicmFyeSBpcyBjb3ZlcmVkCitkbmwgYnkgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UsIGFuZCB0aGUgcmVzdCBvZiB0aGUgR05VCitkbmwgZ2V0dGV4dCBwYWNrYWdlIHBhY2thZ2UgaXMgY292ZXJlZCBieSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UuCitkbmwgVGhleSBhcmUgKm5vdCogaW4gdGhlIHB1YmxpYyBkb21haW4uCisKK2RubCBBdXRob3JzOgorZG5sICAgVWxyaWNoIERyZXBwZXIgPGRyZXBwZXJAY3lnbnVzLmNvbT4sIDE5OTUtMjAwMC4KK2RubCAgIEJydW5vIEhhaWJsZSA8aGFpYmxlQGNsaXNwLmNvbnMub3JnPiwgMjAwMC0yMDAzLgorCitBQ19QUkVSRVEoWzIuNTBdKQorCitkbmwgQ2hlY2tzIGZvciBhbGwgcHJlcmVxdWlzaXRlcyBvZiB0aGUgcG8gc3ViZGlyZWN0b3J5LgorQUNfREVGVU4oW0FNX1BPX1NVQkRJUlNdLAorWworICBBQ19SRVFVSVJFKFtBQ19QUk9HX01BS0VfU0VUXSlkbmwKKyAgQUNfUkVRVUlSRShbQUNfUFJPR19JTlNUQUxMXSlkbmwKKyAgQUNfUkVRVUlSRShbQU1fUFJPR19NS0RJUl9QXSlkbmwgZGVmaW5lZCBieSBhdXRvbWFrZQorICBBQ19SRVFVSVJFKFtBTV9OTFNdKWRubAorCisgIGRubCBSZWxlYXNlIHZlcnNpb24gb2YgdGhlIGdldHRleHQgbWFjcm9zLiBUaGlzIGlzIHVzZWQgdG8gZW5zdXJlIHRoYXQKKyAgZG5sIHRoZSBnZXR0ZXh0IG1hY3JvcyBhbmQgcG8vTWFrZWZpbGUuaW4uaW4gYXJlIGluIHN5bmMuCisgIEFDX1NVQlNUKFtHRVRURVhUX01BQ1JPX1ZFUlNJT05dLCBbMC4xOF0pCisKKyAgZG5sIFBlcmZvcm0gdGhlIGZvbGxvd2luZyB0ZXN0cyBhbHNvIGlmIC0tZGlzYWJsZS1ubHMgaGFzIGJlZW4gZ2l2ZW4sCisgIGRubCBiZWNhdXNlIHRoZXkgYXJlIG5lZWRlZCBmb3IgIm1ha2UgZGlzdCIgdG8gd29yay4KKworICBkbmwgU2VhcmNoIGZvciBHTlUgbXNnZm10IGluIHRoZSBQQVRILgorICBkbmwgVGhlIGZpcnN0IHRlc3QgZXhjbHVkZXMgU29sYXJpcyBtc2dmbXQgYW5kIGVhcmx5IEdOVSBtc2dmbXQgdmVyc2lvbnMuCisgIGRubCBUaGUgc2Vjb25kIHRlc3QgZXhjbHVkZXMgRnJlZUJTRCBtc2dmbXQuCisgIEFNX1BBVEhfUFJPR19XSVRIX1RFU1QoTVNHRk1ULCBtc2dmbXQsCisgICAgWyRhY19kaXIvJGFjX3dvcmQgLS1zdGF0aXN0aWNzIC9kZXYvbnVsbCA+Jl1BU19NRVNTQUdFX0xPR19GRFsgMj4mMSAmJgorICAgICAoaWYgJGFjX2Rpci8kYWNfd29yZCAtLXN0YXRpc3RpY3MgL2Rldi9udWxsIDI+JjEgPi9kZXYvbnVsbCB8IGdyZXAgdXNhZ2UgPi9kZXYvbnVsbDsgdGhlbiBleGl0IDE7IGVsc2UgZXhpdCAwOyBmaSldLAorICAgIDopCisgIEFDX1BBVEhfUFJPRyhbR01TR0ZNVF0sIFtnbXNnZm10XSwgWyRNU0dGTVRdKQorCisgIGRubCBUZXN0IHdoZXRoZXIgaXQgaXMgR05VIG1zZ2ZtdCA+PSAwLjE1LgorY2hhbmdlcXVvdGUoLClkbmwKKyAgY2FzZSBgJE1TR0ZNVCAtLXZlcnNpb24gfCBzZWQgMXEgfCBzZWQgLWUgJ3MsXlteMC05XSosLCdgIGluCisgICAgJycgfCAwLlswLTldIHwgMC5bMC05XS4qIHwgMC4xWzAtNF0gfCAwLjFbMC00XS4qKSBNU0dGTVRfMDE1PTogOzsKKyAgICAqKSBNU0dGTVRfMDE1PSRNU0dGTVQgOzsKKyAgZXNhYworY2hhbmdlcXVvdGUoWyxdKWRubAorICBBQ19TVUJTVChbTVNHRk1UXzAxNV0pCitjaGFuZ2VxdW90ZSgsKWRubAorICBjYXNlIGAkR01TR0ZNVCAtLXZlcnNpb24gfCBzZWQgMXEgfCBzZWQgLWUgJ3MsXlteMC05XSosLCdgIGluCisgICAgJycgfCAwLlswLTldIHwgMC5bMC05XS4qIHwgMC4xWzAtNF0gfCAwLjFbMC00XS4qKSBHTVNHRk1UXzAxNT06IDs7CisgICAgKikgR01TR0ZNVF8wMTU9JEdNU0dGTVQgOzsKKyAgZXNhYworY2hhbmdlcXVvdGUoWyxdKWRubAorICBBQ19TVUJTVChbR01TR0ZNVF8wMTVdKQorCisgIGRubCBTZWFyY2ggZm9yIEdOVSB4Z2V0dGV4dCAwLjEyIG9yIG5ld2VyIGluIHRoZSBQQVRILgorICBkbmwgVGhlIGZpcnN0IHRlc3QgZXhjbHVkZXMgU29sYXJpcyB4Z2V0dGV4dCBhbmQgZWFybHkgR05VIHhnZXR0ZXh0IHZlcnNpb25zLgorICBkbmwgVGhlIHNlY29uZCB0ZXN0IGV4Y2x1ZGVzIEZyZWVCU0QgeGdldHRleHQuCisgIEFNX1BBVEhfUFJPR19XSVRIX1RFU1QoWEdFVFRFWFQsIHhnZXR0ZXh0LAorICAgIFskYWNfZGlyLyRhY193b3JkIC0tb21pdC1oZWFkZXIgLS1jb3B5cmlnaHQtaG9sZGVyPSAtLW1zZ2lkLWJ1Z3MtYWRkcmVzcz0gL2Rldi9udWxsID4mXUFTX01FU1NBR0VfTE9HX0ZEWyAyPiYxICYmCisgICAgIChpZiAkYWNfZGlyLyRhY193b3JkIC0tb21pdC1oZWFkZXIgLS1jb3B5cmlnaHQtaG9sZGVyPSAtLW1zZ2lkLWJ1Z3MtYWRkcmVzcz0gL2Rldi9udWxsIDI+JjEgPi9kZXYvbnVsbCB8IGdyZXAgdXNhZ2UgPi9kZXYvbnVsbDsgdGhlbiBleGl0IDE7IGVsc2UgZXhpdCAwOyBmaSldLAorICAgIDopCisgIGRubCBSZW1vdmUgbGVmdG92ZXIgZnJvbSBGcmVlQlNEIHhnZXR0ZXh0IGNhbGwuCisgIHJtIC1mIG1lc3NhZ2VzLnBvCisKKyAgZG5sIFRlc3Qgd2hldGhlciBpdCBpcyBHTlUgeGdldHRleHQgPj0gMC4xNS4KK2NoYW5nZXF1b3RlKCwpZG5sCisgIGNhc2UgYCRYR0VUVEVYVCAtLXZlcnNpb24gfCBzZWQgMXEgfCBzZWQgLWUgJ3MsXlteMC05XSosLCdgIGluCisgICAgJycgfCAwLlswLTldIHwgMC5bMC05XS4qIHwgMC4xWzAtNF0gfCAwLjFbMC00XS4qKSBYR0VUVEVYVF8wMTU9OiA7OworICAgICopIFhHRVRURVhUXzAxNT0kWEdFVFRFWFQgOzsKKyAgZXNhYworY2hhbmdlcXVvdGUoWyxdKWRubAorICBBQ19TVUJTVChbWEdFVFRFWFRfMDE1XSkKKworICBkbmwgU2VhcmNoIGZvciBHTlUgbXNnbWVyZ2UgMC4xMSBvciBuZXdlciBpbiB0aGUgUEFUSC4KKyAgQU1fUEFUSF9QUk9HX1dJVEhfVEVTVChNU0dNRVJHRSwgbXNnbWVyZ2UsCisgICAgWyRhY19kaXIvJGFjX3dvcmQgLS11cGRhdGUgLXEgL2Rldi9udWxsIC9kZXYvbnVsbCA+Jl1BU19NRVNTQUdFX0xPR19GRFsgMj4mMV0sIDopCisKKyAgZG5sIEluc3RhbGxhdGlvbiBkaXJlY3Rvcmllcy4KKyAgZG5sIEF1dG9jb25mID49IDIuNjAgZGVmaW5lcyBsb2NhbGVkaXIuIEZvciBvbGRlciB2ZXJzaW9ucyBvZiBhdXRvY29uZiwgd2UKKyAgZG5sIGhhdmUgdG8gZGVmaW5lIGl0IGhlcmUsIHNvIHRoYXQgaXQgY2FuIGJlIHVzZWQgaW4gcG8vTWFrZWZpbGUuCisgIHRlc3QgLW4gIiRsb2NhbGVkaXIiIHx8IGxvY2FsZWRpcj0nJHtkYXRhZGlyfS9sb2NhbGUnCisgIEFDX1NVQlNUKFtsb2NhbGVkaXJdKQorCisgIGRubCBTdXBwb3J0IGZvciBBTV9YR0VUVEVYVF9PUFRJT04uCisgIHRlc3QgLW4gIiR7WEdFVFRFWFRfRVhUUkFfT1BUSU9OUytzZXR9IiB8fCBYR0VUVEVYVF9FWFRSQV9PUFRJT05TPQorICBBQ19TVUJTVChbWEdFVFRFWFRfRVhUUkFfT1BUSU9OU10pCisKKyAgQUNfQ09ORklHX0NPTU1BTkRTKFtwby1kaXJlY3Rvcmllc10sIFtbCisgICAgZm9yIGFjX2ZpbGUgaW4gJENPTkZJR19GSUxFUzsgZG8KKyAgICAgICMgU3VwcG9ydCAib3V0ZmlsZVs6aW5maWxlWzppbmZpbGUuLi5dXSIKKyAgICAgIGNhc2UgIiRhY19maWxlIiBpbgorICAgICAgICAqOiopIGFjX2ZpbGU9YGVjaG8gIiRhY19maWxlInxzZWQgJ3MlOi4qJSUnYCA7OworICAgICAgZXNhYworICAgICAgIyBQTyBkaXJlY3RvcmllcyBoYXZlIGEgTWFrZWZpbGUuaW4gZ2VuZXJhdGVkIGZyb20gTWFrZWZpbGUuaW4uaW4uCisgICAgICBjYXNlICIkYWNfZmlsZSIgaW4gKi9NYWtlZmlsZS5pbikKKyAgICAgICAgIyBBZGp1c3QgYSByZWxhdGl2ZSBzcmNkaXIuCisgICAgICAgIGFjX2Rpcj1gZWNobyAiJGFjX2ZpbGUifHNlZCAncyUvW14vXVteL10qJCUlJ2AKKyAgICAgICAgYWNfZGlyX3N1ZmZpeD0iL2BlY2hvICIkYWNfZGlyInxzZWQgJ3MlXlwuLyUlJ2AiCisgICAgICAgIGFjX2RvdHM9YGVjaG8gIiRhY19kaXJfc3VmZml4InxzZWQgJ3MlL1teL10qJS4uLyVnJ2AKKyAgICAgICAgIyBJbiBhdXRvY29uZi0yLjEzIGl0IGlzIGNhbGxlZCAkYWNfZ2l2ZW5fc3JjZGlyLgorICAgICAgICAjIEluIGF1dG9jb25mLTIuNTAgaXQgaXMgY2FsbGVkICRzcmNkaXIuCisgICAgICAgIHRlc3QgLW4gIiRhY19naXZlbl9zcmNkaXIiIHx8IGFjX2dpdmVuX3NyY2Rpcj0iJHNyY2RpciIKKyAgICAgICAgY2FzZSAiJGFjX2dpdmVuX3NyY2RpciIgaW4KKyAgICAgICAgICAuKSAgdG9wX3NyY2Rpcj1gZWNobyAkYWNfZG90c3xzZWQgJ3MlLyQlJSdgIDs7CisgICAgICAgICAgLyopIHRvcF9zcmNkaXI9IiRhY19naXZlbl9zcmNkaXIiIDs7CisgICAgICAgICAgKikgIHRvcF9zcmNkaXI9IiRhY19kb3RzJGFjX2dpdmVuX3NyY2RpciIgOzsKKyAgICAgICAgZXNhYworICAgICAgICAjIFRyZWF0IGEgZGlyZWN0b3J5IGFzIGEgUE8gZGlyZWN0b3J5IGlmIGFuZCBvbmx5IGlmIGl0IGhhcyBhCisgICAgICAgICMgUE9URklMRVMuaW4gZmlsZS4gVGhpcyBhbGxvd3MgcGFja2FnZXMgdG8gaGF2ZSBtdWx0aXBsZSBQTworICAgICAgICAjIGRpcmVjdG9yaWVzIHVuZGVyIGRpZmZlcmVudCBuYW1lcyBvciBpbiBkaWZmZXJlbnQgbG9jYXRpb25zLgorICAgICAgICBpZiB0ZXN0IC1mICIkYWNfZ2l2ZW5fc3JjZGlyLyRhY19kaXIvUE9URklMRVMuaW4iOyB0aGVuCisgICAgICAgICAgcm0gLWYgIiRhY19kaXIvUE9URklMRVMiCisgICAgICAgICAgdGVzdCAtbiAiJGFzX21lIiAmJiBlY2hvICIkYXNfbWU6IGNyZWF0aW5nICRhY19kaXIvUE9URklMRVMiIHx8IGVjaG8gImNyZWF0aW5nICRhY19kaXIvUE9URklMRVMiCisgICAgICAgICAgY2F0ICIkYWNfZ2l2ZW5fc3JjZGlyLyRhY19kaXIvUE9URklMRVMuaW4iIHwgc2VkIC1lICIvXiMvZCIgLWUgIi9eWyAJXSpcJC9kIiAtZSAicywuKiwgICAgICR0b3Bfc3JjZGlyLyYgXFxcXCwiIHwgc2VkIC1lICJcJHMvXCguKlwpIFxcXFwvXDEvIiA+ICIkYWNfZGlyL1BPVEZJTEVTIgorICAgICAgICAgIFBPTUFLRUZJTEVERVBTPSJQT1RGSUxFUy5pbiIKKyAgICAgICAgICAjIEFMTF9MSU5HVUFTLCBQT0ZJTEVTLCBVUERBVEVQT0ZJTEVTLCBEVU1NWVBPRklMRVMsIEdNT0ZJTEVTIGRlcGVuZAorICAgICAgICAgICMgb24gJGFjX2RpciBidXQgZG9uJ3QgZGVwZW5kIG9uIHVzZXItc3BlY2lmaWVkIGNvbmZpZ3VyYXRpb24KKyAgICAgICAgICAjIHBhcmFtZXRlcnMuCisgICAgICAgICAgaWYgdGVzdCAtZiAiJGFjX2dpdmVuX3NyY2Rpci8kYWNfZGlyL0xJTkdVQVMiOyB0aGVuCisgICAgICAgICAgICAjIFRoZSBMSU5HVUFTIGZpbGUgY29udGFpbnMgdGhlIHNldCBvZiBhdmFpbGFibGUgbGFuZ3VhZ2VzLgorICAgICAgICAgICAgaWYgdGVzdCAtbiAiJE9CU09MRVRFX0FMTF9MSU5HVUFTIjsgdGhlbgorICAgICAgICAgICAgICB0ZXN0IC1uICIkYXNfbWUiICYmIGVjaG8gIiRhc19tZTogc2V0dGluZyBBTExfTElOR1VBUyBpbiBjb25maWd1cmUuaW4gaXMgb2Jzb2xldGUiIHx8IGVjaG8gInNldHRpbmcgQUxMX0xJTkdVQVMgaW4gY29uZmlndXJlLmluIGlzIG9ic29sZXRlIgorICAgICAgICAgICAgZmkKKyAgICAgICAgICAgIEFMTF9MSU5HVUFTXz1gc2VkIC1lICIvXiMvZCIgLWUgInMvIy4qLy8iICIkYWNfZ2l2ZW5fc3JjZGlyLyRhY19kaXIvTElOR1VBUyJgCisgICAgICAgICAgICAjIEhpZGUgdGhlIEFMTF9MSU5HVUFTIGFzc2lnbWVudCBmcm9tIGF1dG9tYWtlIDwgMS41LgorICAgICAgICAgICAgZXZhbCAnQUxMX0xJTkdVQVMnJz0kQUxMX0xJTkdVQVNfJworICAgICAgICAgICAgUE9NQUtFRklMRURFUFM9IiRQT01BS0VGSUxFREVQUyBMSU5HVUFTIgorICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICMgVGhlIHNldCBvZiBhdmFpbGFibGUgbGFuZ3VhZ2VzIHdhcyBnaXZlbiBpbiBjb25maWd1cmUuaW4uCisgICAgICAgICAgICAjIEhpZGUgdGhlIEFMTF9MSU5HVUFTIGFzc2lnbWVudCBmcm9tIGF1dG9tYWtlIDwgMS41LgorICAgICAgICAgICAgZXZhbCAnQUxMX0xJTkdVQVMnJz0kT0JTT0xFVEVfQUxMX0xJTkdVQVMnCisgICAgICAgICAgZmkKKyAgICAgICAgICAjIENvbXB1dGUgUE9GSUxFUworICAgICAgICAgICMgYXMgICAgICAkKGZvcmVhY2ggbGFuZywgJChBTExfTElOR1VBUyksICQoc3JjZGlyKS8kKGxhbmcpLnBvKQorICAgICAgICAgICMgQ29tcHV0ZSBVUERBVEVQT0ZJTEVTCisgICAgICAgICAgIyBhcyAgICAgICQoZm9yZWFjaCBsYW5nLCAkKEFMTF9MSU5HVUFTKSwgJChsYW5nKS5wby11cGRhdGUpCisgICAgICAgICAgIyBDb21wdXRlIERVTU1ZUE9GSUxFUworICAgICAgICAgICMgYXMgICAgICAkKGZvcmVhY2ggbGFuZywgJChBTExfTElOR1VBUyksICQobGFuZykubm9wKQorICAgICAgICAgICMgQ29tcHV0ZSBHTU9GSUxFUworICAgICAgICAgICMgYXMgICAgICAkKGZvcmVhY2ggbGFuZywgJChBTExfTElOR1VBUyksICQoc3JjZGlyKS8kKGxhbmcpLmdtbykKKyAgICAgICAgICBjYXNlICIkYWNfZ2l2ZW5fc3JjZGlyIiBpbgorICAgICAgICAgICAgLikgc3JjZGlycHJlPSA7OworICAgICAgICAgICAgKikgc3JjZGlycHJlPSckKHNyY2RpcikvJyA7OworICAgICAgICAgIGVzYWMKKyAgICAgICAgICBQT0ZJTEVTPQorICAgICAgICAgIFVQREFURVBPRklMRVM9CisgICAgICAgICAgRFVNTVlQT0ZJTEVTPQorICAgICAgICAgIEdNT0ZJTEVTPQorICAgICAgICAgIGZvciBsYW5nIGluICRBTExfTElOR1VBUzsgZG8KKyAgICAgICAgICAgIFBPRklMRVM9IiRQT0ZJTEVTICRzcmNkaXJwcmUkbGFuZy5wbyIKKyAgICAgICAgICAgIFVQREFURVBPRklMRVM9IiRVUERBVEVQT0ZJTEVTICRsYW5nLnBvLXVwZGF0ZSIKKyAgICAgICAgICAgIERVTU1ZUE9GSUxFUz0iJERVTU1ZUE9GSUxFUyAkbGFuZy5ub3AiCisgICAgICAgICAgICBHTU9GSUxFUz0iJEdNT0ZJTEVTICRzcmNkaXJwcmUkbGFuZy5nbW8iCisgICAgICAgICAgZG9uZQorICAgICAgICAgICMgQ0FUQUxPR1MgZGVwZW5kcyBvbiBib3RoICRhY19kaXIgYW5kIHRoZSB1c2VyJ3MgTElOR1VBUworICAgICAgICAgICMgZW52aXJvbm1lbnQgdmFyaWFibGUuCisgICAgICAgICAgSU5TVF9MSU5HVUFTPQorICAgICAgICAgIGlmIHRlc3QgLW4gIiRBTExfTElOR1VBUyI7IHRoZW4KKyAgICAgICAgICAgIGZvciBwcmVzZW50bGFuZyBpbiAkQUxMX0xJTkdVQVM7IGRvCisgICAgICAgICAgICAgIHVzZWl0PW5vCisgICAgICAgICAgICAgIGlmIHRlc3QgIiVVTlNFVCUiICE9ICIkTElOR1VBUyI7IHRoZW4KKyAgICAgICAgICAgICAgICBkZXNpcmVkbGFuZ3VhZ2VzPSIkTElOR1VBUyIKKyAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIGRlc2lyZWRsYW5ndWFnZXM9IiRBTExfTElOR1VBUyIKKyAgICAgICAgICAgICAgZmkKKyAgICAgICAgICAgICAgZm9yIGRlc2lyZWRsYW5nIGluICRkZXNpcmVkbGFuZ3VhZ2VzOyBkbworICAgICAgICAgICAgICAgICMgVXNlIHRoZSBwcmVzZW50bGFuZyBjYXRhbG9nIGlmIGRlc2lyZWRsYW5nIGlzCisgICAgICAgICAgICAgICAgIyAgIGEuIGVxdWFsIHRvIHByZXNlbnRsYW5nLCBvcgorICAgICAgICAgICAgICAgICMgICBiLiBhIHZhcmlhbnQgb2YgcHJlc2VudGxhbmcgKGJlY2F1c2UgaW4gdGhpcyBjYXNlLAorICAgICAgICAgICAgICAgICMgICAgICBwcmVzZW50bGFuZyBjYW4gYmUgdXNlZCBhcyBhIGZhbGxiYWNrIGZvciBtZXNzYWdlcworICAgICAgICAgICAgICAgICMgICAgICB3aGljaCBhcmUgbm90IHRyYW5zbGF0ZWQgaW4gdGhlIGRlc2lyZWRsYW5nIGNhdGFsb2cpLgorICAgICAgICAgICAgICAgIGNhc2UgIiRkZXNpcmVkbGFuZyIgaW4KKyAgICAgICAgICAgICAgICAgICIkcHJlc2VudGxhbmciKikgdXNlaXQ9eWVzOzsKKyAgICAgICAgICAgICAgICBlc2FjCisgICAgICAgICAgICAgIGRvbmUKKyAgICAgICAgICAgICAgaWYgdGVzdCAkdXNlaXQgPSB5ZXM7IHRoZW4KKyAgICAgICAgICAgICAgICBJTlNUX0xJTkdVQVM9IiRJTlNUX0xJTkdVQVMgJHByZXNlbnRsYW5nIgorICAgICAgICAgICAgICBmaQorICAgICAgICAgICAgZG9uZQorICAgICAgICAgIGZpCisgICAgICAgICAgQ0FUQUxPR1M9CisgICAgICAgICAgaWYgdGVzdCAtbiAiJElOU1RfTElOR1VBUyI7IHRoZW4KKyAgICAgICAgICAgIGZvciBsYW5nIGluICRJTlNUX0xJTkdVQVM7IGRvCisgICAgICAgICAgICAgIENBVEFMT0dTPSIkQ0FUQUxPR1MgJGxhbmcuZ21vIgorICAgICAgICAgICAgZG9uZQorICAgICAgICAgIGZpCisgICAgICAgICAgdGVzdCAtbiAiJGFzX21lIiAmJiBlY2hvICIkYXNfbWU6IGNyZWF0aW5nICRhY19kaXIvTWFrZWZpbGUiIHx8IGVjaG8gImNyZWF0aW5nICRhY19kaXIvTWFrZWZpbGUiCisgICAgICAgICAgc2VkIC1lICIvXlBPVEZJTEVTID0vciAkYWNfZGlyL1BPVEZJTEVTIiAtZSAiL14jIE1ha2V2YXJzL3IgJGFjX2dpdmVuX3NyY2Rpci8kYWNfZGlyL01ha2V2YXJzIiAtZSAic3xAUE9GSUxFU0B8JFBPRklMRVN8ZyIgLWUgInN8QFVQREFURVBPRklMRVNAfCRVUERBVEVQT0ZJTEVTfGciIC1lICJzfEBEVU1NWVBPRklMRVNAfCREVU1NWVBPRklMRVN8ZyIgLWUgInN8QEdNT0ZJTEVTQHwkR01PRklMRVN8ZyIgLWUgInN8QENBVEFMT0dTQHwkQ0FUQUxPR1N8ZyIgLWUgInN8QFBPTUFLRUZJTEVERVBTQHwkUE9NQUtFRklMRURFUFN8ZyIgIiRhY19kaXIvTWFrZWZpbGUuaW4iID4gIiRhY19kaXIvTWFrZWZpbGUiCisgICAgICAgICAgZm9yIGYgaW4gIiRhY19naXZlbl9zcmNkaXIvJGFjX2RpciIvUnVsZXMtKjsgZG8KKyAgICAgICAgICAgIGlmIHRlc3QgLWYgIiRmIjsgdGhlbgorICAgICAgICAgICAgICBjYXNlICIkZiIgaW4KKyAgICAgICAgICAgICAgICAqLm9yaWcgfCAqLmJhayB8ICp+KSA7OworICAgICAgICAgICAgICAgICopIGNhdCAiJGYiID4+ICIkYWNfZGlyL01ha2VmaWxlIiA7OworICAgICAgICAgICAgICBlc2FjCisgICAgICAgICAgICBmaQorICAgICAgICAgIGRvbmUKKyAgICAgICAgZmkKKyAgICAgICAgOzsKKyAgICAgIGVzYWMKKyAgICBkb25lXV0sCisgICBbIyBDYXB0dXJlIHRoZSB2YWx1ZSBvZiBvYnNvbGV0ZSBBTExfTElOR1VBUyBiZWNhdXNlIHdlIG5lZWQgaXQgdG8gY29tcHV0ZQorICAgICMgUE9GSUxFUywgVVBEQVRFUE9GSUxFUywgRFVNTVlQT0ZJTEVTLCBHTU9GSUxFUywgQ0FUQUxPR1MuIEJ1dCBoaWRlIGl0CisgICAgIyBmcm9tIGF1dG9tYWtlIDwgMS41LgorICAgIGV2YWwgJ09CU09MRVRFX0FMTF9MSU5HVUFTJyc9IiRBTExfTElOR1VBUyInCisgICAgIyBDYXB0dXJlIHRoZSB2YWx1ZSBvZiBMSU5HVUFTIGJlY2F1c2Ugd2UgbmVlZCBpdCB0byBjb21wdXRlIENBVEFMT0dTLgorICAgIExJTkdVQVM9IiR7TElOR1VBUy0lVU5TRVQlfSIKKyAgIF0pCitdKQorCitkbmwgUG9zdHByb2Nlc3NlcyBhIE1ha2VmaWxlIGluIGEgZGlyZWN0b3J5IGNvbnRhaW5pbmcgUE8gZmlsZXMuCitBQ19ERUZVTihbQU1fUE9TVFBST0NFU1NfUE9fTUFLRUZJTEVdLAorWworICAjIFdoZW4gdGhpcyBjb2RlIGlzIHJ1biwgaW4gY29uZmlnLnN0YXR1cywgdHdvIHZhcmlhYmxlcyBoYXZlIGFscmVhZHkgYmVlbgorICAjIHNldDoKKyAgIyAtIE9CU09MRVRFX0FMTF9MSU5HVUFTIGlzIHRoZSB2YWx1ZSBvZiBMSU5HVUFTIHNldCBpbiBjb25maWd1cmUuaW4sCisgICMgLSBMSU5HVUFTIGlzIHRoZSB2YWx1ZSBvZiB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGUgTElOR1VBUyBhdCBjb25maWd1cmUKKyAgIyAgIHRpbWUuCisKK2NoYW5nZXF1b3RlKCwpZG5sCisgICMgQWRqdXN0IGEgcmVsYXRpdmUgc3JjZGlyLgorICBhY19kaXI9YGVjaG8gIiRhY19maWxlInxzZWQgJ3MlL1teL11bXi9dKiQlJSdgCisgIGFjX2Rpcl9zdWZmaXg9Ii9gZWNobyAiJGFjX2RpciJ8c2VkICdzJV5cLi8lJSdgIgorICBhY19kb3RzPWBlY2hvICIkYWNfZGlyX3N1ZmZpeCJ8c2VkICdzJS9bXi9dKiUuLi8lZydgCisgICMgSW4gYXV0b2NvbmYtMi4xMyBpdCBpcyBjYWxsZWQgJGFjX2dpdmVuX3NyY2Rpci4KKyAgIyBJbiBhdXRvY29uZi0yLjUwIGl0IGlzIGNhbGxlZCAkc3JjZGlyLgorICB0ZXN0IC1uICIkYWNfZ2l2ZW5fc3JjZGlyIiB8fCBhY19naXZlbl9zcmNkaXI9IiRzcmNkaXIiCisgIGNhc2UgIiRhY19naXZlbl9zcmNkaXIiIGluCisgICAgLikgIHRvcF9zcmNkaXI9YGVjaG8gJGFjX2RvdHN8c2VkICdzJS8kJSUnYCA7OworICAgIC8qKSB0b3Bfc3JjZGlyPSIkYWNfZ2l2ZW5fc3JjZGlyIiA7OworICAgICopICB0b3Bfc3JjZGlyPSIkYWNfZG90cyRhY19naXZlbl9zcmNkaXIiIDs7CisgIGVzYWMKKworICAjIEZpbmQgYSB3YXkgdG8gZWNobyBzdHJpbmdzIHdpdGhvdXQgaW50ZXJwcmV0aW5nIGJhY2tzbGFzaC4KKyAgaWYgdGVzdCAiWGAoZWNobyAnXHQnKSAyPi9kZXYvbnVsbGAiID0gJ1hcdCc7IHRoZW4KKyAgICBndF9lY2hvPSdlY2hvJworICBlbHNlCisgICAgaWYgdGVzdCAiWGAocHJpbnRmICclc1xuJyAnXHQnKSAyPi9kZXYvbnVsbGAiID0gJ1hcdCc7IHRoZW4KKyAgICAgIGd0X2VjaG89J3ByaW50ZiAlc1xuJworICAgIGVsc2UKKyAgICAgIGVjaG9fZnVuYyAoKSB7CisgICAgICAgIGNhdCA8PEVPVAorJCoKK0VPVAorICAgICAgfQorICAgICAgZ3RfZWNobz0nZWNob19mdW5jJworICAgIGZpCisgIGZpCisKKyAgIyBBIHNlZCBzY3JpcHQgdGhhdCBleHRyYWN0cyB0aGUgdmFsdWUgb2YgVkFSSUFCTEUgZnJvbSBhIE1ha2VmaWxlLgorICBzZWRfeF92YXJpYWJsZT0nCisjIFRlc3QgaWYgdGhlIGhvbGQgc3BhY2UgaXMgZW1wdHkuCit4CitzL1AvUC8KK3gKK3RhCisjIFllcyBpdCB3YXMgZW1wdHkuIExvb2sgaWYgd2UgaGF2ZSB0aGUgZXhwZWN0ZWQgdmFyaWFibGUgZGVmaW5pdGlvbi4KKy9eWwkgXSpWQVJJQUJMRVsJIF0qPS97CisgICMgU2VlbiB0aGUgZmlyc3QgbGluZSBvZiB0aGUgdmFyaWFibGUgZGVmaW5pdGlvbi4KKyAgcy9eWwkgXSpWQVJJQUJMRVsJIF0qPS8vCisgIGJhCit9CitiZAorOmEKKyMgSGVyZSB3ZSBhcmUgcHJvY2Vzc2luZyBhIGxpbmUgZnJvbSB0aGUgdmFyaWFibGUgZGVmaW5pdGlvbi4KKyMgUmVtb3ZlIGNvbW1lbnQsIG1vcmUgcHJlY2lzZWx5IHJlcGxhY2UgaXQgd2l0aCBhIHNwYWNlLgorcy8jLiokLyAvCisjIFNlZSBpZiB0aGUgbGluZSBlbmRzIGluIGEgYmFja3NsYXNoLgordGIKKzpiCitzL1xcJC8vCisjIFByaW50IHRoZSBsaW5lLCB3aXRob3V0IHRoZSB0cmFpbGluZyBiYWNrc2xhc2guCitwCit0YworIyBUaGVyZSB3YXMgbm8gdHJhaWxpbmcgYmFja3NsYXNoLiBUaGUgZW5kIG9mIHRoZSB2YXJpYWJsZSBkZWZpbml0aW9uIGlzCisjIHJlYWNoZWQuIENsZWFyIHRoZSBob2xkIHNwYWNlLgorcy9eLiokLy8KK3gKK2JkCis6YworIyBBIHRyYWlsaW5nIGJhY2tzbGFzaCBtZWFucyB0aGF0IHRoZSB2YXJpYWJsZSBkZWZpbml0aW9uIGNvbnRpbnVlcyBpbiB0aGUKKyMgbmV4dCBsaW5lLiBQdXQgYSBub25lbXB0eSBzdHJpbmcgaW50byB0aGUgaG9sZCBzcGFjZSB0byBpbmRpY2F0ZSB0aGlzLgorcy9eLiokL1AvCit4Cis6ZAorJworY2hhbmdlcXVvdGUoWyxdKWRubAorCisgICMgU2V0IFBPVEZJTEVTIHRvIHRoZSB2YWx1ZSBvZiB0aGUgTWFrZWZpbGUgdmFyaWFibGUgUE9URklMRVMuCisgIHNlZF94X1BPVEZJTEVTPWAkZ3RfZWNobyAiJHNlZF94X3ZhcmlhYmxlIiB8IHNlZCAtZSAnL14gKiMvZCcgLWUgJ3MvVkFSSUFCTEUvUE9URklMRVMvZydgCisgIFBPVEZJTEVTPWBzZWQgLW4gLWUgIiRzZWRfeF9QT1RGSUxFUyIgPCAiJGFjX2ZpbGUiYAorICAjIENvbXB1dGUgUE9URklMRVNfREVQUyBhcworICAjICAgJChmb3JlYWNoIGZpbGUsICQoUE9URklMRVMpLCAkKHRvcF9zcmNkaXIpLyQoZmlsZSkpCisgIFBPVEZJTEVTX0RFUFM9CisgIGZvciBmaWxlIGluICRQT1RGSUxFUzsgZG8KKyAgICBQT1RGSUxFU19ERVBTPSIkUE9URklMRVNfREVQUyAiJyQodG9wX3NyY2RpcikvJyIkZmlsZSIKKyAgZG9uZQorICBQT01BS0VGSUxFREVQUz0iIgorCisgIGlmIHRlc3QgLW4gIiRPQlNPTEVURV9BTExfTElOR1VBUyI7IHRoZW4KKyAgICB0ZXN0IC1uICIkYXNfbWUiICYmIGVjaG8gIiRhc19tZTogc2V0dGluZyBBTExfTElOR1VBUyBpbiBjb25maWd1cmUuaW4gaXMgb2Jzb2xldGUiIHx8IGVjaG8gInNldHRpbmcgQUxMX0xJTkdVQVMgaW4gY29uZmlndXJlLmluIGlzIG9ic29sZXRlIgorICBmaQorICBpZiB0ZXN0IC1mICIkYWNfZ2l2ZW5fc3JjZGlyLyRhY19kaXIvTElOR1VBUyI7IHRoZW4KKyAgICAjIFRoZSBMSU5HVUFTIGZpbGUgY29udGFpbnMgdGhlIHNldCBvZiBhdmFpbGFibGUgbGFuZ3VhZ2VzLgorICAgIEFMTF9MSU5HVUFTXz1gc2VkIC1lICIvXiMvZCIgLWUgInMvIy4qLy8iICIkYWNfZ2l2ZW5fc3JjZGlyLyRhY19kaXIvTElOR1VBUyJgCisgICAgUE9NQUtFRklMRURFUFM9IiRQT01BS0VGSUxFREVQUyBMSU5HVUFTIgorICBlbHNlCisgICAgIyBTZXQgQUxMX0xJTkdVQVMgdG8gdGhlIHZhbHVlIG9mIHRoZSBNYWtlZmlsZSB2YXJpYWJsZSBMSU5HVUFTLgorICAgIHNlZF94X0xJTkdVQVM9YCRndF9lY2hvICIkc2VkX3hfdmFyaWFibGUiIHwgc2VkIC1lICcvXiAqIy9kJyAtZSAncy9WQVJJQUJMRS9MSU5HVUFTL2cnYAorICAgIEFMTF9MSU5HVUFTXz1gc2VkIC1uIC1lICIkc2VkX3hfTElOR1VBUyIgPCAiJGFjX2ZpbGUiYAorICBmaQorICAjIEhpZGUgdGhlIEFMTF9MSU5HVUFTIGFzc2lnbWVudCBmcm9tIGF1dG9tYWtlIDwgMS41LgorICBldmFsICdBTExfTElOR1VBUycnPSRBTExfTElOR1VBU18nCisgICMgQ29tcHV0ZSBQT0ZJTEVTCisgICMgYXMgICAgICAkKGZvcmVhY2ggbGFuZywgJChBTExfTElOR1VBUyksICQoc3JjZGlyKS8kKGxhbmcpLnBvKQorICAjIENvbXB1dGUgVVBEQVRFUE9GSUxFUworICAjIGFzICAgICAgJChmb3JlYWNoIGxhbmcsICQoQUxMX0xJTkdVQVMpLCAkKGxhbmcpLnBvLXVwZGF0ZSkKKyAgIyBDb21wdXRlIERVTU1ZUE9GSUxFUworICAjIGFzICAgICAgJChmb3JlYWNoIGxhbmcsICQoQUxMX0xJTkdVQVMpLCAkKGxhbmcpLm5vcCkKKyAgIyBDb21wdXRlIEdNT0ZJTEVTCisgICMgYXMgICAgICAkKGZvcmVhY2ggbGFuZywgJChBTExfTElOR1VBUyksICQoc3JjZGlyKS8kKGxhbmcpLmdtbykKKyAgIyBDb21wdXRlIFBST1BFUlRJRVNGSUxFUworICAjIGFzICAgICAgJChmb3JlYWNoIGxhbmcsICQoQUxMX0xJTkdVQVMpLCAkKHRvcF9zcmNkaXIpLyQoRE9NQUlOKV8kKGxhbmcpLnByb3BlcnRpZXMpCisgICMgQ29tcHV0ZSBDTEFTU0ZJTEVTCisgICMgYXMgICAgICAkKGZvcmVhY2ggbGFuZywgJChBTExfTElOR1VBUyksICQodG9wX3NyY2RpcikvJChET01BSU4pXyQobGFuZykuY2xhc3MpCisgICMgQ29tcHV0ZSBRTUZJTEVTCisgICMgYXMgICAgICAkKGZvcmVhY2ggbGFuZywgJChBTExfTElOR1VBUyksICQoc3JjZGlyKS8kKGxhbmcpLnFtKQorICAjIENvbXB1dGUgTVNHRklMRVMKKyAgIyBhcyAgICAgICQoZm9yZWFjaCBsYW5nLCAkKEFMTF9MSU5HVUFTKSwgJChzcmNkaXIpLyQoZnJvYiAkKGxhbmcpKS5tc2cpCisgICMgQ29tcHV0ZSBSRVNPVVJDRVNETExGSUxFUworICAjIGFzICAgICAgJChmb3JlYWNoIGxhbmcsICQoQUxMX0xJTkdVQVMpLCAkKHNyY2RpcikvJChmcm9iICQobGFuZykpLyQoRE9NQUlOKS5yZXNvdXJjZXMuZGxsKQorICBjYXNlICIkYWNfZ2l2ZW5fc3JjZGlyIiBpbgorICAgIC4pIHNyY2RpcnByZT0gOzsKKyAgICAqKSBzcmNkaXJwcmU9JyQoc3JjZGlyKS8nIDs7CisgIGVzYWMKKyAgUE9GSUxFUz0KKyAgVVBEQVRFUE9GSUxFUz0KKyAgRFVNTVlQT0ZJTEVTPQorICBHTU9GSUxFUz0KKyAgUFJPUEVSVElFU0ZJTEVTPQorICBDTEFTU0ZJTEVTPQorICBRTUZJTEVTPQorICBNU0dGSUxFUz0KKyAgUkVTT1VSQ0VTRExMRklMRVM9CisgIGZvciBsYW5nIGluICRBTExfTElOR1VBUzsgZG8KKyAgICBQT0ZJTEVTPSIkUE9GSUxFUyAkc3JjZGlycHJlJGxhbmcucG8iCisgICAgVVBEQVRFUE9GSUxFUz0iJFVQREFURVBPRklMRVMgJGxhbmcucG8tdXBkYXRlIgorICAgIERVTU1ZUE9GSUxFUz0iJERVTU1ZUE9GSUxFUyAkbGFuZy5ub3AiCisgICAgR01PRklMRVM9IiRHTU9GSUxFUyAkc3JjZGlycHJlJGxhbmcuZ21vIgorICAgIFBST1BFUlRJRVNGSUxFUz0iJFBST1BFUlRJRVNGSUxFUyBcJCh0b3Bfc3JjZGlyKS9cJChET01BSU4pXyRsYW5nLnByb3BlcnRpZXMiCisgICAgQ0xBU1NGSUxFUz0iJENMQVNTRklMRVMgXCQodG9wX3NyY2RpcikvXCQoRE9NQUlOKV8kbGFuZy5jbGFzcyIKKyAgICBRTUZJTEVTPSIkUU1GSUxFUyAkc3JjZGlycHJlJGxhbmcucW0iCisgICAgZnJvYmJlZGxhbmc9YGVjaG8gJGxhbmcgfCBzZWQgLWUgJ3MvXC4uKiQvLycgLWUgJ3kvQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVovYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXovJ2AKKyAgICBNU0dGSUxFUz0iJE1TR0ZJTEVTICRzcmNkaXJwcmUkZnJvYmJlZGxhbmcubXNnIgorICAgIGZyb2JiZWRsYW5nPWBlY2hvICRsYW5nIHwgc2VkIC1lICdzL18vLS9nJyAtZSAncy9ec3ItQ1Mvc3ItU1AvJyAtZSAncy9AbGF0aW4kLy1MYXRuLycgLWUgJ3MvQGN5cmlsbGljJC8tQ3lybC8nIC1lICdzL15zci1TUCQvc3ItU1AtTGF0bi8nIC1lICdzL151ei1VWiQvdXotVVotTGF0bi8nYAorICAgIFJFU09VUkNFU0RMTEZJTEVTPSIkUkVTT1VSQ0VTRExMRklMRVMgJHNyY2RpcnByZSRmcm9iYmVkbGFuZy9cJChET01BSU4pLnJlc291cmNlcy5kbGwiCisgIGRvbmUKKyAgIyBDQVRBTE9HUyBkZXBlbmRzIG9uIGJvdGggJGFjX2RpciBhbmQgdGhlIHVzZXIncyBMSU5HVUFTCisgICMgZW52aXJvbm1lbnQgdmFyaWFibGUuCisgIElOU1RfTElOR1VBUz0KKyAgaWYgdGVzdCAtbiAiJEFMTF9MSU5HVUFTIjsgdGhlbgorICAgIGZvciBwcmVzZW50bGFuZyBpbiAkQUxMX0xJTkdVQVM7IGRvCisgICAgICB1c2VpdD1ubworICAgICAgaWYgdGVzdCAiJVVOU0VUJSIgIT0gIiRMSU5HVUFTIjsgdGhlbgorICAgICAgICBkZXNpcmVkbGFuZ3VhZ2VzPSIkTElOR1VBUyIKKyAgICAgIGVsc2UKKyAgICAgICAgZGVzaXJlZGxhbmd1YWdlcz0iJEFMTF9MSU5HVUFTIgorICAgICAgZmkKKyAgICAgIGZvciBkZXNpcmVkbGFuZyBpbiAkZGVzaXJlZGxhbmd1YWdlczsgZG8KKyAgICAgICAgIyBVc2UgdGhlIHByZXNlbnRsYW5nIGNhdGFsb2cgaWYgZGVzaXJlZGxhbmcgaXMKKyAgICAgICAgIyAgIGEuIGVxdWFsIHRvIHByZXNlbnRsYW5nLCBvcgorICAgICAgICAjICAgYi4gYSB2YXJpYW50IG9mIHByZXNlbnRsYW5nIChiZWNhdXNlIGluIHRoaXMgY2FzZSwKKyAgICAgICAgIyAgICAgIHByZXNlbnRsYW5nIGNhbiBiZSB1c2VkIGFzIGEgZmFsbGJhY2sgZm9yIG1lc3NhZ2VzCisgICAgICAgICMgICAgICB3aGljaCBhcmUgbm90IHRyYW5zbGF0ZWQgaW4gdGhlIGRlc2lyZWRsYW5nIGNhdGFsb2cpLgorICAgICAgICBjYXNlICIkZGVzaXJlZGxhbmciIGluCisgICAgICAgICAgIiRwcmVzZW50bGFuZyIqKSB1c2VpdD15ZXM7OworICAgICAgICBlc2FjCisgICAgICBkb25lCisgICAgICBpZiB0ZXN0ICR1c2VpdCA9IHllczsgdGhlbgorICAgICAgICBJTlNUX0xJTkdVQVM9IiRJTlNUX0xJTkdVQVMgJHByZXNlbnRsYW5nIgorICAgICAgZmkKKyAgICBkb25lCisgIGZpCisgIENBVEFMT0dTPQorICBKQVZBQ0FUQUxPR1M9CisgIFFUQ0FUQUxPR1M9CisgIFRDTENBVEFMT0dTPQorICBDU0hBUlBDQVRBTE9HUz0KKyAgaWYgdGVzdCAtbiAiJElOU1RfTElOR1VBUyI7IHRoZW4KKyAgICBmb3IgbGFuZyBpbiAkSU5TVF9MSU5HVUFTOyBkbworICAgICAgQ0FUQUxPR1M9IiRDQVRBTE9HUyAkbGFuZy5nbW8iCisgICAgICBKQVZBQ0FUQUxPR1M9IiRKQVZBQ0FUQUxPR1MgXCQoRE9NQUlOKV8kbGFuZy5wcm9wZXJ0aWVzIgorICAgICAgUVRDQVRBTE9HUz0iJFFUQ0FUQUxPR1MgJGxhbmcucW0iCisgICAgICBmcm9iYmVkbGFuZz1gZWNobyAkbGFuZyB8IHNlZCAtZSAncy9cLi4qJC8vJyAtZSAneS9BQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWi9hYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ei8nYAorICAgICAgVENMQ0FUQUxPR1M9IiRUQ0xDQVRBTE9HUyAkZnJvYmJlZGxhbmcubXNnIgorICAgICAgZnJvYmJlZGxhbmc9YGVjaG8gJGxhbmcgfCBzZWQgLWUgJ3MvXy8tL2cnIC1lICdzL15zci1DUy9zci1TUC8nIC1lICdzL0BsYXRpbiQvLUxhdG4vJyAtZSAncy9AY3lyaWxsaWMkLy1DeXJsLycgLWUgJ3MvXnNyLVNQJC9zci1TUC1MYXRuLycgLWUgJ3MvXnV6LVVaJC91ei1VWi1MYXRuLydgCisgICAgICBDU0hBUlBDQVRBTE9HUz0iJENTSEFSUENBVEFMT0dTICRmcm9iYmVkbGFuZy9cJChET01BSU4pLnJlc291cmNlcy5kbGwiCisgICAgZG9uZQorICBmaQorCisgIHNlZCAtZSAic3xAUE9URklMRVNfREVQU0B8JFBPVEZJTEVTX0RFUFN8ZyIgLWUgInN8QFBPRklMRVNAfCRQT0ZJTEVTfGciIC1lICJzfEBVUERBVEVQT0ZJTEVTQHwkVVBEQVRFUE9GSUxFU3xnIiAtZSAic3xARFVNTVlQT0ZJTEVTQHwkRFVNTVlQT0ZJTEVTfGciIC1lICJzfEBHTU9GSUxFU0B8JEdNT0ZJTEVTfGciIC1lICJzfEBQUk9QRVJUSUVTRklMRVNAfCRQUk9QRVJUSUVTRklMRVN8ZyIgLWUgInN8QENMQVNTRklMRVNAfCRDTEFTU0ZJTEVTfGciIC1lICJzfEBRTUZJTEVTQHwkUU1GSUxFU3xnIiAtZSAic3xATVNHRklMRVNAfCRNU0dGSUxFU3xnIiAtZSAic3xAUkVTT1VSQ0VTRExMRklMRVNAfCRSRVNPVVJDRVNETExGSUxFU3xnIiAtZSAic3xAQ0FUQUxPR1NAfCRDQVRBTE9HU3xnIiAtZSAic3xASkFWQUNBVEFMT0dTQHwkSkFWQUNBVEFMT0dTfGciIC1lICJzfEBRVENBVEFMT0dTQHwkUVRDQVRBTE9HU3xnIiAtZSAic3xAVENMQ0FUQUxPR1NAfCRUQ0xDQVRBTE9HU3xnIiAtZSAic3xAQ1NIQVJQQ0FUQUxPR1NAfCRDU0hBUlBDQVRBTE9HU3xnIiAtZSAncyxeI2Rpc3RkaXI6LGRpc3RkaXI6LCcgPCAiJGFjX2ZpbGUiID4gIiRhY19maWxlLnRtcCIKKyAgaWYgZ3JlcCAtbCAnQFRDTENBVEFMT0dTQCcgIiRhY19maWxlIiA+IC9kZXYvbnVsbDsgdGhlbgorICAgICMgQWRkIGRlcGVuZGVuY2llcyB0aGF0IGNhbm5vdCBiZSBmb3JtdWxhdGVkIGFzIGEgc2ltcGxlIHN1ZmZpeCBydWxlLgorICAgIGZvciBsYW5nIGluICRBTExfTElOR1VBUzsgZG8KKyAgICAgIGZyb2JiZWRsYW5nPWBlY2hvICRsYW5nIHwgc2VkIC1lICdzL1wuLiokLy8nIC1lICd5L0FCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaL2FiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6LydgCisgICAgICBjYXQgPj4gIiRhY19maWxlLnRtcCIgPDxFT0YKKyRmcm9iYmVkbGFuZy5tc2c6ICRsYW5nLnBvCisJQGVjaG8gIlwkKE1TR0ZNVCkgLWMgLS10Y2wgLWQgXCQoc3JjZGlyKSAtbCAkbGFuZyAkc3JjZGlycHJlJGxhbmcucG8iOyBcCisJXCQoTVNHRk1UKSAtYyAtLXRjbCAtZCAiXCQoc3JjZGlyKSIgLWwgJGxhbmcgJHNyY2RpcnByZSRsYW5nLnBvIHx8IHsgcm0gLWYgIlwkKHNyY2RpcikvJGZyb2JiZWRsYW5nLm1zZyI7IGV4aXQgMTsgfQorRU9GCisgICAgZG9uZQorICBmaQorICBpZiBncmVwIC1sICdAQ1NIQVJQQ0FUQUxPR1NAJyAiJGFjX2ZpbGUiID4gL2Rldi9udWxsOyB0aGVuCisgICAgIyBBZGQgZGVwZW5kZW5jaWVzIHRoYXQgY2Fubm90IGJlIGZvcm11bGF0ZWQgYXMgYSBzaW1wbGUgc3VmZml4IHJ1bGUuCisgICAgZm9yIGxhbmcgaW4gJEFMTF9MSU5HVUFTOyBkbworICAgICAgZnJvYmJlZGxhbmc9YGVjaG8gJGxhbmcgfCBzZWQgLWUgJ3MvXy8tL2cnIC1lICdzL15zci1DUy9zci1TUC8nIC1lICdzL0BsYXRpbiQvLUxhdG4vJyAtZSAncy9AY3lyaWxsaWMkLy1DeXJsLycgLWUgJ3MvXnNyLVNQJC9zci1TUC1MYXRuLycgLWUgJ3MvXnV6LVVaJC91ei1VWi1MYXRuLydgCisgICAgICBjYXQgPj4gIiRhY19maWxlLnRtcCIgPDxFT0YKKyRmcm9iYmVkbGFuZy9cJChET01BSU4pLnJlc291cmNlcy5kbGw6ICRsYW5nLnBvCisJQGVjaG8gIlwkKE1TR0ZNVCkgLWMgLS1jc2hhcnAgLWQgXCQoc3JjZGlyKSAtbCAkbGFuZyAkc3JjZGlycHJlJGxhbmcucG8gLXIgXCQoRE9NQUlOKSI7IFwKKwlcJChNU0dGTVQpIC1jIC0tY3NoYXJwIC1kICJcJChzcmNkaXIpIiAtbCAkbGFuZyAkc3JjZGlycHJlJGxhbmcucG8gLXIgIlwkKERPTUFJTikiIHx8IHsgcm0gLWYgIlwkKHNyY2RpcikvJGZyb2JiZWRsYW5nLm1zZyI7IGV4aXQgMTsgfQorRU9GCisgICAgZG9uZQorICBmaQorICBpZiB0ZXN0IC1uICIkUE9NQUtFRklMRURFUFMiOyB0aGVuCisgICAgY2F0ID4+ICIkYWNfZmlsZS50bXAiIDw8RU9GCitNYWtlZmlsZTogJFBPTUFLRUZJTEVERVBTCitFT0YKKyAgZmkKKyAgbXYgIiRhY19maWxlLnRtcCIgIiRhY19maWxlIgorXSkKKworZG5sIEluaXRpYWxpemVzIHRoZSBhY2N1bXVsYXRvciB1c2VkIGJ5IEFNX1hHRVRURVhUX09QVElPTi4KK0FDX0RFRlVOKFtBTV9YR0VUVEVYVF9PUFRJT05fSU5JVF0sCitbCisgIFhHRVRURVhUX0VYVFJBX09QVElPTlM9CitdKQorCitkbmwgUmVnaXN0ZXJzIGFuIG9wdGlvbiB0byBiZSBwYXNzZWQgdG8geGdldHRleHQgaW4gdGhlIHBvIHN1YmRpcmVjdG9yeS4KK0FDX0RFRlVOKFtBTV9YR0VUVEVYVF9PUFRJT05dLAorWworICBBQ19SRVFVSVJFKFtBTV9YR0VUVEVYVF9PUFRJT05fSU5JVF0pCisgIFhHRVRURVhUX0VYVFJBX09QVElPTlM9IiRYR0VUVEVYVF9FWFRSQV9PUFRJT05TICQxIgorXSkKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbTQvcHJvZ3Rlc3QubTQgYi9kcGtnLTEuMTYuMS4xL200L3Byb2d0ZXN0Lm00Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjJkODA0YWMKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL200L3Byb2d0ZXN0Lm00CkBAIC0wLDAgKzEsOTIgQEAKKyMgcHJvZ3Rlc3QubTQgc2VyaWFsIDYgKGdldHRleHQtMC4xOCkKK2RubCBDb3B5cmlnaHQgKEMpIDE5OTYtMjAwMywgMjAwNSwgMjAwOC0yMDEwIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgorZG5sIFRoaXMgZmlsZSBpcyBmcmVlIHNvZnR3YXJlOyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uCitkbmwgZ2l2ZXMgdW5saW1pdGVkIHBlcm1pc3Npb24gdG8gY29weSBhbmQvb3IgZGlzdHJpYnV0ZSBpdCwKK2RubCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9ucywgYXMgbG9uZyBhcyB0aGlzIG5vdGljZSBpcyBwcmVzZXJ2ZWQuCitkbmwKK2RubCBUaGlzIGZpbGUgY2FuIGNhbiBiZSB1c2VkIGluIHByb2plY3RzIHdoaWNoIGFyZSBub3QgYXZhaWxhYmxlIHVuZGVyCitkbmwgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIG9yIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYworZG5sIExpY2Vuc2UgYnV0IHdoaWNoIHN0aWxsIHdhbnQgdG8gcHJvdmlkZSBzdXBwb3J0IGZvciB0aGUgR05VIGdldHRleHQKK2RubCBmdW5jdGlvbmFsaXR5LgorZG5sIFBsZWFzZSBub3RlIHRoYXQgdGhlIGFjdHVhbCBjb2RlIG9mIHRoZSBHTlUgZ2V0dGV4dCBsaWJyYXJ5IGlzIGNvdmVyZWQKK2RubCBieSB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSwgYW5kIHRoZSByZXN0IG9mIHRoZSBHTlUKK2RubCBnZXR0ZXh0IHBhY2thZ2UgcGFja2FnZSBpcyBjb3ZlcmVkIGJ5IHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZS4KK2RubCBUaGV5IGFyZSAqbm90KiBpbiB0aGUgcHVibGljIGRvbWFpbi4KKworZG5sIEF1dGhvcnM6CitkbmwgICBVbHJpY2ggRHJlcHBlciA8ZHJlcHBlckBjeWdudXMuY29tPiwgMTk5Ni4KKworQUNfUFJFUkVRKFsyLjUwXSkKKworIyBTZWFyY2ggcGF0aCBmb3IgYSBwcm9ncmFtIHdoaWNoIHBhc3NlcyB0aGUgZ2l2ZW4gdGVzdC4KKworZG5sIEFNX1BBVEhfUFJPR19XSVRIX1RFU1QoVkFSSUFCTEUsIFBST0ctVE8tQ0hFQ0stRk9SLAorZG5sICAgVEVTVC1QRVJGT1JNRUQtT04tRk9VTkRfUFJPR1JBTSBbLCBWQUxVRS1JRi1OT1QtRk9VTkQgWywgUEFUSF1dKQorQUNfREVGVU4oW0FNX1BBVEhfUFJPR19XSVRIX1RFU1RdLAorWworIyBQcmVwYXJlIFBBVEhfU0VQQVJBVE9SLgorIyBUaGUgdXNlciBpcyBhbHdheXMgcmlnaHQuCitpZiB0ZXN0ICIke1BBVEhfU0VQQVJBVE9SK3NldH0iICE9IHNldDsgdGhlbgorICBlY2hvICIjISAvYmluL3NoIiA+Y29uZiQkLnNoCisgIGVjaG8gICJleGl0IDAiICAgPj5jb25mJCQuc2gKKyAgY2htb2QgK3ggY29uZiQkLnNoCisgIGlmIChQQVRIPSIvbm9uZXhpc3RlbnQ7LiI7IGNvbmYkJC5zaCkgPi9kZXYvbnVsbCAyPiYxOyB0aGVuCisgICAgUEFUSF9TRVBBUkFUT1I9JzsnCisgIGVsc2UKKyAgICBQQVRIX1NFUEFSQVRPUj06CisgIGZpCisgIHJtIC1mIGNvbmYkJC5zaAorZmkKKworIyBGaW5kIG91dCBob3cgdG8gdGVzdCBmb3IgZXhlY3V0YWJsZSBmaWxlcy4gRG9uJ3QgdXNlIGEgemVyby1ieXRlIGZpbGUsCisjIGFzIHN5c3RlbXMgbWF5IHVzZSBtZXRob2RzIG90aGVyIHRoYW4gbW9kZSBiaXRzIHRvIGRldGVybWluZSBleGVjdXRhYmlsaXR5LgorY2F0ID5jb25mJCQuZmlsZSA8PF9BU0VPRgorIyEgL2Jpbi9zaAorZXhpdCAwCitfQVNFT0YKK2NobW9kICt4IGNvbmYkJC5maWxlCitpZiB0ZXN0IC14IGNvbmYkJC5maWxlID4vZGV2L251bGwgMj4mMTsgdGhlbgorICBhY19leGVjdXRhYmxlX3A9InRlc3QgLXgiCitlbHNlCisgIGFjX2V4ZWN1dGFibGVfcD0idGVzdCAtZiIKK2ZpCitybSAtZiBjb25mJCQuZmlsZQorCisjIEV4dHJhY3QgdGhlIGZpcnN0IHdvcmQgb2YgIiQyIiwgc28gaXQgY2FuIGJlIGEgcHJvZ3JhbSBuYW1lIHdpdGggYXJncy4KK3NldCBkdW1teSAkMjsgYWNfd29yZD1bJF0yCitBQ19NU0dfQ0hFQ0tJTkcoW2ZvciAkYWNfd29yZF0pCitBQ19DQUNIRV9WQUwoW2FjX2N2X3BhdGhfJDFdLAorW2Nhc2UgIlskXSQxIiBpbgorICBbW1xcL11dKiB8ID86W1tcXC9dXSopCisgICAgYWNfY3ZfcGF0aF8kMT0iWyRdJDEiICMgTGV0IHRoZSB1c2VyIG92ZXJyaWRlIHRoZSB0ZXN0IHdpdGggYSBwYXRoLgorICAgIDs7CisgICopCisgICAgYWNfc2F2ZV9JRlM9IiRJRlMiOyBJRlM9JFBBVEhfU0VQQVJBVE9SCisgICAgZm9yIGFjX2RpciBpbiBpZmVsc2UoWyQ1XSwgLCAkUEFUSCwgWyQ1XSk7IGRvCisgICAgICBJRlM9IiRhY19zYXZlX0lGUyIKKyAgICAgIHRlc3QgLXogIiRhY19kaXIiICYmIGFjX2Rpcj0uCisgICAgICBmb3IgYWNfZXhlY19leHQgaW4gJycgJGFjX2V4ZWN1dGFibGVfZXh0ZW5zaW9uczsgZG8KKyAgICAgICAgaWYgJGFjX2V4ZWN1dGFibGVfcCAiJGFjX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCI7IHRoZW4KKyAgICAgICAgICBlY2hvICIkYXNfbWU6IHRyeWluZyAkYWNfZGlyLyRhY193b3JkLi4uIiA+JkFTX01FU1NBR0VfTE9HX0ZECisgICAgICAgICAgaWYgWyQzXTsgdGhlbgorICAgICAgICAgICAgYWNfY3ZfcGF0aF8kMT0iJGFjX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCIKKyAgICAgICAgICAgIGJyZWFrIDIKKyAgICAgICAgICBmaQorICAgICAgICBmaQorICAgICAgZG9uZQorICAgIGRvbmUKKyAgICBJRlM9IiRhY19zYXZlX0lGUyIKK2RubCBJZiBubyA0dGggYXJnIGlzIGdpdmVuLCBsZWF2ZSB0aGUgY2FjaGUgdmFyaWFibGUgdW5zZXQsCitkbmwgc28gQUNfUEFUSF9QUk9HUyB3aWxsIGtlZXAgbG9va2luZy4KK2lmZWxzZShbJDRdLCAsICwgWyAgdGVzdCAteiAiWyRdYWNfY3ZfcGF0aF8kMSIgJiYgYWNfY3ZfcGF0aF8kMT0iJDQiCitdKWRubAorICAgIDs7Citlc2FjXSlkbmwKKyQxPSIkYWNfY3ZfcGF0aF8kMSIKK2lmIHRlc3QgaWZlbHNlKFskNF0sICwgWy1uICJbJF0kMSJdLCBbIlskXSQxIiAhPSAiJDQiXSk7IHRoZW4KKyAgQUNfTVNHX1JFU1VMVChbJF1bJDFdKQorZWxzZQorICBBQ19NU0dfUkVTVUxUKFtub10pCitmaQorQUNfU1VCU1QoWyQxXSlkbmwKK10pCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9NYWtlZmlsZS5hbSBiL2Rwa2ctMS4xNi4xLjEvbWFuL01ha2VmaWxlLmFtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjEyYmY0NGIKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9NYWtlZmlsZS5hbQpAQCAtMCwwICsxLDE0NCBAQAorIyMgUHJvY2VzcyB0aGlzIGZpbGUgd2l0aCBhdXRvbWFrZSB0byBwcm9kdWNlIE1ha2VmaWxlLmluCisKK2Rpc3RfbWFuX01BTlMgPSBcCisJZGViLWNvbnRyb2wuNSBcCisJZGViLXNyYy1jb250cm9sLjUgXAorCWRlYi12ZXJzaW9uLjUgXAorCWRlYi1zaGxpYnMuNSBcCisJZGViLXNwbGl0LjUgXAorCWRlYi1zdWJzdHZhcnMuNSBcCisJZGViLXN5bWJvbHMuNSBcCisJZGViLXRyaWdnZXJzLjUgXAorCWRlYi1vbGQuNSBcCisJZGViLW92ZXJyaWRlLjUgXAorCWRlYi1leHRyYS1vdmVycmlkZS41IFwKKwlkZWIuNSBcCisJZHBrZy1hcmNoaXRlY3R1cmUuMSBcCisJZHBrZy1idWlsZGZsYWdzLjEgXAorCWRwa2ctYnVpbGRwYWNrYWdlLjEgXAorCWRwa2ctY2hlY2tidWlsZGRlcHMuMSBcCisJZHBrZy1kZWIuMSBcCisJZHBrZy1kaXN0YWRkZmlsZS4xIFwKKwlkcGtnLWRpdmVydC44IFwKKwlkcGtnLWdlbmNoYW5nZXMuMSBcCisJZHBrZy1nZW5jb250cm9sLjEgXAorCWRwa2ctZ2Vuc3ltYm9scy4xIFwKKwlkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xIFwKKwlkcGtnLW1lcmdlY2hhbmdlbG9ncy4xIFwKKwlkcGtnLW5hbWUuMSBcCisJZHBrZy1wYXJzZWNoYW5nZWxvZy4xIFwKKwlkcGtnLXF1ZXJ5LjEgXAorCWRwa2ctc2NhbnBhY2thZ2VzLjEgXAorCWRwa2ctc2NhbnNvdXJjZXMuMSBcCisJZHBrZy1zaGxpYmRlcHMuMSBcCisJZHBrZy1zb3VyY2UuMSBcCisJZHBrZy1zcGxpdC4xIFwKKwlkcGtnLXN0YXRvdmVycmlkZS44IFwKKwlkcGtnLXRyaWdnZXIuMSBcCisJZHBrZy12ZW5kb3IuMSBcCisJZHBrZy4xIFwKKwlkcGtnLmNmZy41CisKK2lmIFdJVEhfRFNFTEVDVAorZGlzdF9tYW5fTUFOUyArPSBcCisJZHNlbGVjdC4xIFwKKwlkc2VsZWN0LmNmZy41CitlbmRpZgorCitpZiBXSVRIX1NUQVJUX1NUT1BfREFFTU9OCitkaXN0X21hbl9NQU5TICs9IFwKKwlzdGFydC1zdG9wLWRhZW1vbi44CitlbmRpZgorCitpZiBXSVRIX1VQREFURV9BTFRFUk5BVElWRVMKK2Rpc3RfbWFuX01BTlMgKz0gXAorCXVwZGF0ZS1hbHRlcm5hdGl2ZXMuOAorZW5kaWYKKworRVhUUkFfRElTVCA9IFwKKwlwby9DaGFuZ2VMb2cub2xkIFwKKwlwby9wbzRhLmNmZyBcCisJcG8vZHBrZy1tYW4ucG90CisKKworIyBFeHRyYWN0IHRoZSBsaXN0IG9mIGxhbmd1YWdlcyBmcm9tIHRoZSBwbzRhIGNvbmZpZyBmaWxlLgorTElOR1VBU19ESVNUID0gYHNlZCAtbmUgJ3MvXi4qXFtwbzRhX2xhbmdzXF0gXCguKlwpJCQvXDEvcCcgJChzcmNkaXIpL3BvL3BvNGEuY2ZnYAorCisjIElmIHRoZSB1c2VyIGhhcyBub3QgZGVmaW5lZCBpdCBsZXQncyB1c2UgdGhlIGRlZmF1bHQuCitMSU5HVUFTID89ICQoTElOR1VBU19ESVNUKQorCisKK1BPNEFfViA9ICQoUE80QV9WXyQoVikpCitQTzRBX1ZfID0gJChQTzRBX1ZfJChBTV9ERUZBVUxUX1ZFUkJPU0lUWSkpCitQTzRBX1ZfMCA9IEBlY2hvICIgIFBPNEEgICAkQCI7CisKK1BPNEFfT1BUUyA9IC0tcHJldmlvdXMgLS1zcmNkaXIgJChzcmNkaXIpIC0tZGVzdGRpciAkKENVUkRJUikgLS1uby1iYWNrdXBzCisKK2FsbC1sb2NhbDogYWxsLWxvY2FsLUBVU0VfUE80QUAKKworYWxsLWxvY2FsLW5vOgorYWxsLWxvY2FsLXllczogbWFuLnN0YW1wCisKKyMgRklYTUU6IFVzZSBhIHN0YW1wIGZpbGUgdW50aWwgcG80YSBzdXBwb3J0cyB0aGVtIGludGVybmFsbHkuCittYW4uc3RhbXA6CisJJChQTzRBX1YpICQoUE80QSkgJChQTzRBX09QVFMpICQoc3JjZGlyKS9wby9wbzRhLmNmZworCSQoQU1fVl9hdCkgdG91Y2ggJEAKKworY2xlYW4tbG9jYWw6IGNsZWFuLWxvY2FsLUBVU0VfUE80QUAKKworY2xlYW4tbG9jYWwtbm86CitjbGVhbi1sb2NhbC15ZXM6CisJcm0gLXJmICQoTElOR1VBU19ESVNUKQorCSQoQU1fVl9hdCkgcm0gLWYgbWFuLnN0YW1wCisKKy5QSE9OWTogdXBkYXRlLXBvCisKK3VwZGF0ZS1wbzoKKwkkKFBPNEFfVikgJChQTzRBKSAkKFBPNEFfT1BUUykgLS1mb3JjZSAkKHNyY2RpcikvcG8vcG80YS5jZmcKKworaW5zdGFsbC1kYXRhLWxvY2FsOiBpbnN0YWxsLWRhdGEtbG9jYWwtQFVTRV9QTzRBQAorCitpbnN0YWxsLWRhdGEtbG9jYWwtbm86CitpbnN0YWxsLWRhdGEtbG9jYWwteWVzOgorCWZvciBsYW5nIGluICQoTElOR1VBUyk7IGRvIFwKKwkJZmlsZXM9IiI7IFwKKwkJZm9yIHRyYW5zIGluICQoZGlzdF9tYW5fTUFOUyk7IGRvIFwKKwkJCWlmIFsgLWYgJChDVVJESVIpLyQkbGFuZy8kJHRyYW5zIF07IHRoZW4gXAorCQkJCWZpbGVzPSIkJGZpbGVzICQoQ1VSRElSKS8kJGxhbmcvJCR0cmFucyI7IFwKKwkJCWVsaWYgWyAtZiAkKHNyY2RpcikvJCRsYW5nLyQkdHJhbnMgXTsgdGhlbiBcCisJCQkJZmlsZXM9IiQkZmlsZXMgJChzcmNkaXIpLyQkbGFuZy8kJHRyYW5zIjsgXAorCQkJZmk7IFwKKwkJZG9uZTsgXAorCQkkKE1BS0UpIGluc3RhbGwtbWFuIFwKKwkJCW1hbmRpcj0iJChtYW5kaXIpLyQkbGFuZyIgXAorCQkJbWFuX01BTlM9IiIgXAorCQkJZGlzdF9tYW5fTUFOUz0iJCRmaWxlcyI7IFwKKwlkb25lCisKK3VuaW5zdGFsbC1sb2NhbDogdW5pbnN0YWxsLWxvY2FsLUBVU0VfUE80QUAKKwordW5pbnN0YWxsLWxvY2FsLW5vOgordW5pbnN0YWxsLWxvY2FsLXllczoKKwlmb3IgbGFuZyBpbiAkKExJTkdVQVMpOyBkbyBcCisJCWZpbGVzPSIiOyBcCisJCWZvciB0cmFucyBpbiAkKGRpc3RfbWFuX01BTlMpOyBkbyBcCisJCQlpZiBbIC1mICQoQ1VSRElSKS8kJGxhbmcvJCR0cmFucyBdOyB0aGVuIFwKKwkJCQlmaWxlcz0iJCRmaWxlcyAkKENVUkRJUikvJCRsYW5nLyQkdHJhbnMiOyBcCisJCQllbGlmIFsgLWYgJChzcmNkaXIpLyQkbGFuZy8kJHRyYW5zIF07IHRoZW4gXAorCQkJCWZpbGVzPSIkJGZpbGVzICQoc3JjZGlyKS8kJGxhbmcvJCR0cmFucyI7IFwKKwkJCWZpOyBcCisJCWRvbmU7IFwKKwkJJChNQUtFKSB1bmluc3RhbGwtbWFuIFwKKwkJCW1hbmRpcj0iJChtYW5kaXIpLyQkbGFuZyIgXAorCQkJbWFuX01BTlM9IiIgXAorCQkJZGlzdF9tYW5fTUFOUz0iJCRmaWxlcyI7IFwKKwlkb25lCisKK2Rpc3QtaG9vazogbWFuLnN0YW1wCisJY3AgJChzcmNkaXIpL21hbi5zdGFtcCAkKGRpc3RkaXIpLworCWZvciBsYW5nIGluICQoTElOR1VBU19ESVNUKTsgZG8gXAorCQljcCAkKHNyY2RpcikvcG8vJCRsYW5nLnBvICQoZGlzdGRpcikvcG87IFwKKwkJY3AgJChzcmNkaXIpL3BvLyQkbGFuZy5hZGQgJChkaXN0ZGlyKS9wbzsgXAorCQkkKG1rZGlyX3ApICQoZGlzdGRpcikvJCRsYW5nOyBcCisJCWNwIC1yICQoc3JjZGlyKS8kJGxhbmcgJChkaXN0ZGlyKS87IFwKKwlkb25lCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9NYWtlZmlsZS5pbiBiL2Rwa2ctMS4xNi4xLjEvbWFuL01ha2VmaWxlLmluCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjIwY2FkNGIKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9NYWtlZmlsZS5pbgpAQCAtMCwwICsxLDY2MyBAQAorIyBNYWtlZmlsZS5pbiBnZW5lcmF0ZWQgYnkgYXV0b21ha2UgMS4xMS4xIGZyb20gTWFrZWZpbGUuYW0uCisjIEBjb25maWd1cmVfaW5wdXRACisKKyMgQ29weXJpZ2h0IChDKSAxOTk0LCAxOTk1LCAxOTk2LCAxOTk3LCAxOTk4LCAxOTk5LCAyMDAwLCAyMDAxLCAyMDAyLAorIyAyMDAzLCAyMDA0LCAyMDA1LCAyMDA2LCAyMDA3LCAyMDA4LCAyMDA5ICBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sCisjIEluYy4KKyMgVGhpcyBNYWtlZmlsZS5pbiBpcyBmcmVlIHNvZnR3YXJlOyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uCisjIGdpdmVzIHVubGltaXRlZCBwZXJtaXNzaW9uIHRvIGNvcHkgYW5kL29yIGRpc3RyaWJ1dGUgaXQsCisjIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb25zLCBhcyBsb25nIGFzIHRoaXMgbm90aWNlIGlzIHByZXNlcnZlZC4KKworIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZLCB0byB0aGUgZXh0ZW50IHBlcm1pdHRlZCBieSBsYXc7IHdpdGhvdXQKKyMgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQQorIyBQQVJUSUNVTEFSIFBVUlBPU0UuCisKK0BTRVRfTUFLRUAKK1ZQQVRIID0gQHNyY2RpckAKK3BrZ2RhdGFkaXIgPSAkKGRhdGFkaXIpL0BQQUNLQUdFQAorcGtnaW5jbHVkZWRpciA9ICQoaW5jbHVkZWRpcikvQFBBQ0tBR0VACitwa2dsaWJkaXIgPSAkKGxpYmRpcikvQFBBQ0tBR0VACitwa2dsaWJleGVjZGlyID0gJChsaWJleGVjZGlyKS9AUEFDS0FHRUAKK2FtX19jZCA9IENEUEFUSD0iJCR7WlNIX1ZFUlNJT04rLn0kKFBBVEhfU0VQQVJBVE9SKSIgJiYgY2QKK2luc3RhbGxfc2hfREFUQSA9ICQoaW5zdGFsbF9zaCkgLWMgLW0gNjQ0CitpbnN0YWxsX3NoX1BST0dSQU0gPSAkKGluc3RhbGxfc2gpIC1jCitpbnN0YWxsX3NoX1NDUklQVCA9ICQoaW5zdGFsbF9zaCkgLWMKK0lOU1RBTExfSEVBREVSID0gJChJTlNUQUxMX0RBVEEpCit0cmFuc2Zvcm0gPSAkKHByb2dyYW1fdHJhbnNmb3JtX25hbWUpCitOT1JNQUxfSU5TVEFMTCA9IDoKK1BSRV9JTlNUQUxMID0gOgorUE9TVF9JTlNUQUxMID0gOgorTk9STUFMX1VOSU5TVEFMTCA9IDoKK1BSRV9VTklOU1RBTEwgPSA6CitQT1NUX1VOSU5TVEFMTCA9IDoKK2J1aWxkX3RyaXBsZXQgPSBAYnVpbGRACitob3N0X3RyaXBsZXQgPSBAaG9zdEAKK0BXSVRIX0RTRUxFQ1RfVFJVRUBhbV9fYXBwZW5kXzEgPSBcCitAV0lUSF9EU0VMRUNUX1RSVUVACWRzZWxlY3QuMSBcCitAV0lUSF9EU0VMRUNUX1RSVUVACWRzZWxlY3QuY2ZnLjUKKworQFdJVEhfU1RBUlRfU1RPUF9EQUVNT05fVFJVRUBhbV9fYXBwZW5kXzIgPSBcCitAV0lUSF9TVEFSVF9TVE9QX0RBRU1PTl9UUlVFQAlzdGFydC1zdG9wLWRhZW1vbi44CisKK0BXSVRIX1VQREFURV9BTFRFUk5BVElWRVNfVFJVRUBhbV9fYXBwZW5kXzMgPSBcCitAV0lUSF9VUERBVEVfQUxURVJOQVRJVkVTX1RSVUVACXVwZGF0ZS1hbHRlcm5hdGl2ZXMuOAorCitzdWJkaXIgPSBtYW4KK0RJU1RfQ09NTU9OID0gJChkaXN0X21hbl9NQU5TKSAkKHNyY2RpcikvTWFrZWZpbGUuYW0gXAorCSQoc3JjZGlyKS9NYWtlZmlsZS5pbgorQUNMT0NBTF9NNCA9ICQodG9wX3NyY2RpcikvYWNsb2NhbC5tNAorYW1fX2FjbG9jYWxfbTRfZGVwcyA9ICQodG9wX3NyY2RpcikvbTQvZHBrZy1hcmNoLm00IFwKKwkkKHRvcF9zcmNkaXIpL200L2Rwa2ctYnVpbGQubTQgXAorCSQodG9wX3NyY2RpcikvbTQvZHBrZy1jb21waWxlci5tNCBcCisJJCh0b3Bfc3JjZGlyKS9tNC9kcGtnLWNvdmVyYWdlLm00IFwKKwkkKHRvcF9zcmNkaXIpL200L2Rwa2ctZnVuY3MubTQgJCh0b3Bfc3JjZGlyKS9tNC9kcGtnLWxpYnMubTQgXAorCSQodG9wX3NyY2RpcikvbTQvZHBrZy1saW5rZXIubTQgJCh0b3Bfc3JjZGlyKS9tNC9kcGtnLXByb2dzLm00IFwKKwkkKHRvcF9zcmNkaXIpL200L2Rwa2ctdHlwZXMubTQgXAorCSQodG9wX3NyY2RpcikvbTQvZHBrZy11bmljb2RlLm00ICQodG9wX3NyY2RpcikvbTQvZ2V0dGV4dC5tNCBcCisJJCh0b3Bfc3JjZGlyKS9tNC9pY29udi5tNCAkKHRvcF9zcmNkaXIpL200L2ludGxtYWNvc3gubTQgXAorCSQodG9wX3NyY2RpcikvbTQvbGliLWxkLm00ICQodG9wX3NyY2RpcikvbTQvbGliLWxpbmsubTQgXAorCSQodG9wX3NyY2RpcikvbTQvbGliLXByZWZpeC5tNCAkKHRvcF9zcmNkaXIpL200L25scy5tNCBcCisJJCh0b3Bfc3JjZGlyKS9tNC9wby5tNCAkKHRvcF9zcmNkaXIpL200L3Byb2d0ZXN0Lm00IFwKKwkkKHRvcF9zcmNkaXIpL2NvbmZpZ3VyZS5hYworYW1fX2NvbmZpZ3VyZV9kZXBzID0gJChhbV9fYWNsb2NhbF9tNF9kZXBzKSAkKENPTkZJR1VSRV9ERVBFTkRFTkNJRVMpIFwKKwkkKEFDTE9DQUxfTTQpCitta2luc3RhbGxkaXJzID0gJChpbnN0YWxsX3NoKSAtZAorQ09ORklHX0hFQURFUiA9ICQodG9wX2J1aWxkZGlyKS9jb25maWcuaAorQ09ORklHX0NMRUFOX0ZJTEVTID0KK0NPTkZJR19DTEVBTl9WUEFUSF9GSUxFUyA9CitBTV9WX0dFTiA9ICQoYW1fX3ZfR0VOXyQoVikpCithbV9fdl9HRU5fID0gJChhbV9fdl9HRU5fJChBTV9ERUZBVUxUX1ZFUkJPU0lUWSkpCithbV9fdl9HRU5fMCA9IEBlY2hvICIgIEdFTiAgICIgJEA7CitBTV9WX2F0ID0gJChhbV9fdl9hdF8kKFYpKQorYW1fX3ZfYXRfID0gJChhbV9fdl9hdF8kKEFNX0RFRkFVTFRfVkVSQk9TSVRZKSkKK2FtX192X2F0XzAgPSBACitTT1VSQ0VTID0KK0RJU1RfU09VUkNFUyA9CithbV9fdnBhdGhfYWRqX3NldHVwID0gc3JjZGlyc3RyaXA9YGVjaG8gIiQoc3JjZGlyKSIgfCBzZWQgJ3N8LnwufGcnYDsKK2FtX192cGF0aF9hZGogPSBjYXNlICQkcCBpbiBcCisgICAgJChzcmNkaXIpLyopIGY9YGVjaG8gIiQkcCIgfCBzZWQgInN8XiQkc3JjZGlyc3RyaXAvfHwiYDs7IFwKKyAgICAqKSBmPSQkcDs7IFwKKyAgZXNhYzsKK2FtX19zdHJpcF9kaXIgPSBmPWBlY2hvICQkcCB8IHNlZCAtZSAnc3xeLiovfHwnYDsKK2FtX19pbnN0YWxsX21heCA9IDQwCithbV9fbm9iYXNlX3N0cmlwX3NldHVwID0gXAorICBzcmNkaXJzdHJpcD1gZWNobyAiJChzcmNkaXIpIiB8IHNlZCAncy9bXS5bXiQkXFwqfF0vXFxcXCYvZydgCithbV9fbm9iYXNlX3N0cmlwID0gXAorICBmb3IgcCBpbiAkJGxpc3Q7IGRvIGVjaG8gIiQkcCI7IGRvbmUgfCBzZWQgLWUgInN8JCRzcmNkaXJzdHJpcC98fCIKK2FtX19ub2Jhc2VfbGlzdCA9ICQoYW1fX25vYmFzZV9zdHJpcF9zZXR1cCk7IFwKKyAgZm9yIHAgaW4gJCRsaXN0OyBkbyBlY2hvICIkJHAgJCRwIjsgZG9uZSB8IFwKKyAgc2VkICJzfCAkJHNyY2RpcnN0cmlwL3wgfDsiJyAvIC4qXC8vIXMvIC4qLyAuLzsgcyxcKCAuKlwpL1teL10qJCQsXDEsJyB8IFwKKyAgJChBV0spICdCRUdJTiB7IGZpbGVzWyIuIl0gPSAiIiB9IHsgZmlsZXNbJCQyXSA9IGZpbGVzWyQkMl0gIiAiICQkMTsgXAorICAgIGlmICgrK25bJCQyXSA9PSAkKGFtX19pbnN0YWxsX21heCkpIFwKKyAgICAgIHsgcHJpbnQgJCQyLCBmaWxlc1skJDJdOyBuWyQkMl0gPSAwOyBmaWxlc1skJDJdID0gIiIgfSB9IFwKKyAgICBFTkQgeyBmb3IgKGRpciBpbiBmaWxlcykgcHJpbnQgZGlyLCBmaWxlc1tkaXJdIH0nCithbV9fYmFzZV9saXN0ID0gXAorICBzZWQgJyQkIU47JCQhTjskJCFOOyQkIU47JCQhTjskJCFOOyQkIU47cy9cbi8gL2cnIHwgXAorICBzZWQgJyQkIU47JCQhTjskJCFOOyQkIU47cy9cbi8gL2cnCittYW4xZGlyID0gJChtYW5kaXIpL21hbjEKK2FtX19pbnN0YWxsZGlycyA9ICIkKERFU1RESVIpJChtYW4xZGlyKSIgIiQoREVTVERJUikkKG1hbjVkaXIpIiBcCisJIiQoREVTVERJUikkKG1hbjhkaXIpIgorbWFuNWRpciA9ICQobWFuZGlyKS9tYW41CittYW44ZGlyID0gJChtYW5kaXIpL21hbjgKK05ST0ZGID0gbnJvZmYKK01BTlMgPSAkKGRpc3RfbWFuX01BTlMpCitESVNURklMRVMgPSAkKERJU1RfQ09NTU9OKSAkKERJU1RfU09VUkNFUykgJChURVhJTkZPUykgJChFWFRSQV9ESVNUKQorQUNMT0NBTCA9IEBBQ0xPQ0FMQAorQU1UQVIgPSBAQU1UQVJACitBTV9ERUZBVUxUX1ZFUkJPU0lUWSA9IEBBTV9ERUZBVUxUX1ZFUkJPU0lUWUAKK0FVVE9DT05GID0gQEFVVE9DT05GQAorQVVUT0hFQURFUiA9IEBBVVRPSEVBREVSQAorQVVUT01BS0UgPSBAQVVUT01BS0VACitBV0sgPSBAQVdLQAorQloyX0xJQlMgPSBAQloyX0xJQlNACitDQyA9IEBDQ0AKK0NDREVQTU9ERSA9IEBDQ0RFUE1PREVACitDRkxBR1MgPSBAQ0ZMQUdTQAorQ1BQID0gQENQUEAKK0NQUEZMQUdTID0gQENQUEZMQUdTQAorQ1VSU0VTX0xJQlMgPSBAQ1VSU0VTX0xJQlNACitDWFggPSBAQ1hYQAorQ1hYREVQTU9ERSA9IEBDWFhERVBNT0RFQAorQ1hYRkxBR1MgPSBAQ1hYRkxBR1NACitDWUdQQVRIX1cgPSBAQ1lHUEFUSF9XQAorREVGUyA9IEBERUZTQAorREVQRElSID0gQERFUERJUkAKK0RPWFlHRU4gPSBARE9YWUdFTkAKK0VDSE9fQyA9IEBFQ0hPX0NACitFQ0hPX04gPSBARUNIT19OQAorRUNIT19UID0gQEVDSE9fVEAKK0VHUkVQID0gQEVHUkVQQAorRVhFRVhUID0gQEVYRUVYVEAKK0dDT1YgPSBAR0NPVkAKK0dFVFRFWFRfTUFDUk9fVkVSU0lPTiA9IEBHRVRURVhUX01BQ1JPX1ZFUlNJT05ACitHTVNHRk1UID0gQEdNU0dGTVRACitHTVNHRk1UXzAxNSA9IEBHTVNHRk1UXzAxNUAKK0dSRVAgPSBAR1JFUEAKK0hBVkVfRE9UID0gQEhBVkVfRE9UQAorSU5TVEFMTCA9IEBJTlNUQUxMQAorSU5TVEFMTF9EQVRBID0gQElOU1RBTExfREFUQUAKK0lOU1RBTExfUFJPR1JBTSA9IEBJTlNUQUxMX1BST0dSQU1ACitJTlNUQUxMX1NDUklQVCA9IEBJTlNUQUxMX1NDUklQVEAKK0lOU1RBTExfU1RSSVBfUFJPR1JBTSA9IEBJTlNUQUxMX1NUUklQX1BST0dSQU1ACitJTlRMTElCUyA9IEBJTlRMTElCU0AKK0lOVExfTUFDT1NYX0xJQlMgPSBASU5UTF9NQUNPU1hfTElCU0AKK0xDT1YgPSBATENPVkAKK0xDT1ZfR0VOSFRNTCA9IEBMQ09WX0dFTkhUTUxACitMREZMQUdTID0gQExERkxBR1NACitMRVggPSBATEVYQAorTEVYTElCID0gQExFWExJQkAKK0xFWF9PVVRQVVRfUk9PVCA9IEBMRVhfT1VUUFVUX1JPT1RACitMSUJJQ09OViA9IEBMSUJJQ09OVkAKK0xJQklOVEwgPSBATElCSU5UTEAKK0xJQk9CSlMgPSBATElCT0JKU0AKK0xJQlMgPSBATElCU0AKK0xUTElCSUNPTlYgPSBATFRMSUJJQ09OVkAKK0xUTElCSU5UTCA9IEBMVExJQklOVExACitMVExJQk9CSlMgPSBATFRMSUJPQkpTQAorTUFLRUlORk8gPSBATUFLRUlORk9ACitNS0RJUl9QID0gQE1LRElSX1BACitNU0dGTVQgPSBATVNHRk1UQAorTVNHRk1UXzAxNSA9IEBNU0dGTVRfMDE1QAorTVNHTUVSR0UgPSBATVNHTUVSR0VACitPQkpFWFQgPSBAT0JKRVhUQAorUEFDS0FHRSA9IEBQQUNLQUdFQAorUEFDS0FHRV9CVUdSRVBPUlQgPSBAUEFDS0FHRV9CVUdSRVBPUlRACitQQUNLQUdFX05BTUUgPSBAUEFDS0FHRV9OQU1FQAorUEFDS0FHRV9TVFJJTkcgPSBAUEFDS0FHRV9TVFJJTkdACitQQUNLQUdFX1RBUk5BTUUgPSBAUEFDS0FHRV9UQVJOQU1FQAorUEFDS0FHRV9VUkwgPSBAUEFDS0FHRV9VUkxACitQQUNLQUdFX1ZFUlNJT04gPSBAUEFDS0FHRV9WRVJTSU9OQAorUEFUSF9TRVBBUkFUT1IgPSBAUEFUSF9TRVBBUkFUT1JACitQRVJMID0gQFBFUkxACitQRVJMX0NPVkVSID0gQFBFUkxfQ09WRVJACitQRVJMX0NPVkVSQUdFID0gQFBFUkxfQ09WRVJBR0VACitQRVJMX0xJQkRJUiA9IEBQRVJMX0xJQkRJUkAKK1BLR19DT05GSUcgPSBAUEtHX0NPTkZJR0AKK1BLR19DT05GSUdfTElCRElSID0gQFBLR19DT05GSUdfTElCRElSQAorUEtHX0NPTkZJR19QQVRIID0gQFBLR19DT05GSUdfUEFUSEAKK1BPNEEgPSBAUE80QUAKK1BPRDJNQU4gPSBAUE9EMk1BTkAKK1BPU1VCID0gQFBPU1VCQAorUkFOTElCID0gQFJBTkxJQkAKK1NFTElOVVhfTElCUyA9IEBTRUxJTlVYX0xJQlNACitTRVRfTUFLRSA9IEBTRVRfTUFLRUAKK1NIRUxMID0gQFNIRUxMQAorU1NEX0xJQlMgPSBAU1NEX0xJQlNACitTVFJJUCA9IEBTVFJJUEAKK1VTRV9OTFMgPSBAVVNFX05MU0AKK1VTRV9QTzRBID0gQFVTRV9QTzRBQAorVVNFX1VOSUNPREUgPSBAVVNFX1VOSUNPREVACitWRVJTSU9OID0gQFZFUlNJT05ACitYR0VUVEVYVCA9IEBYR0VUVEVYVEAKK1hHRVRURVhUXzAxNSA9IEBYR0VUVEVYVF8wMTVACitYR0VUVEVYVF9FWFRSQV9PUFRJT05TID0gQFhHRVRURVhUX0VYVFJBX09QVElPTlNACitaTElCX0xJQlMgPSBAWkxJQl9MSUJTQAorYWJzX2J1aWxkZGlyID0gQGFic19idWlsZGRpckAKK2Fic19zcmNkaXIgPSBAYWJzX3NyY2RpckAKK2Fic190b3BfYnVpbGRkaXIgPSBAYWJzX3RvcF9idWlsZGRpckAKK2Fic190b3Bfc3JjZGlyID0gQGFic190b3Bfc3JjZGlyQAorYWNfY3RfQ0MgPSBAYWNfY3RfQ0NACithY19jdF9DWFggPSBAYWNfY3RfQ1hYQAorYWRtaW5kaXIgPSBAYWRtaW5kaXJACithbV9faW5jbHVkZSA9IEBhbV9faW5jbHVkZUAKK2FtX19sZWFkaW5nX2RvdCA9IEBhbV9fbGVhZGluZ19kb3RACithbV9fcXVvdGUgPSBAYW1fX3F1b3RlQAorYW1fX3RhciA9IEBhbV9fdGFyQAorYW1fX3VudGFyID0gQGFtX191bnRhckAKK2JpbmRpciA9IEBiaW5kaXJACitidWlsZCA9IEBidWlsZEAKK2J1aWxkX2FsaWFzID0gQGJ1aWxkX2FsaWFzQAorYnVpbGRfY3B1ID0gQGJ1aWxkX2NwdUAKK2J1aWxkX29zID0gQGJ1aWxkX29zQAorYnVpbGRfdmVuZG9yID0gQGJ1aWxkX3ZlbmRvckAKK2J1aWxkZGlyID0gQGJ1aWxkZGlyQAorZGF0YWRpciA9IEBkYXRhZGlyQAorZGF0YXJvb3RkaXIgPSBAZGF0YXJvb3RkaXJACitkb2NkaXIgPSBAZG9jZGlyQAorZHZpZGlyID0gQGR2aWRpckAKK2V4ZWNfcHJlZml4ID0gQGV4ZWNfcHJlZml4QAoraG9zdCA9IEBob3N0QAoraG9zdF9hbGlhcyA9IEBob3N0X2FsaWFzQAoraG9zdF9jcHUgPSBAaG9zdF9jcHVACitob3N0X29zID0gQGhvc3Rfb3NACitob3N0X3ZlbmRvciA9IEBob3N0X3ZlbmRvckAKK2h0bWxkaXIgPSBAaHRtbGRpckAKK2luY2x1ZGVkaXIgPSBAaW5jbHVkZWRpckAKK2luZm9kaXIgPSBAaW5mb2RpckAKK2luc3RhbGxfc2ggPSBAaW5zdGFsbF9zaEAKK2xpYmRpciA9IEBsaWJkaXJACitsaWJleGVjZGlyID0gQGxpYmV4ZWNkaXJACitsb2NhbGVkaXIgPSBAbG9jYWxlZGlyQAorbG9jYWxzdGF0ZWRpciA9IEBsb2NhbHN0YXRlZGlyQAorbG9nZGlyID0gQGxvZ2RpckAKK21hbmRpciA9IEBtYW5kaXJACitta2Rpcl9wID0gQG1rZGlyX3BACitvbGRpbmNsdWRlZGlyID0gQG9sZGluY2x1ZGVkaXJACitwZGZkaXIgPSBAcGRmZGlyQAorcHJlZml4ID0gQHByZWZpeEAKK3Byb2dyYW1fdHJhbnNmb3JtX25hbWUgPSBAcHJvZ3JhbV90cmFuc2Zvcm1fbmFtZUAKK3BzZGlyID0gQHBzZGlyQAorc2JpbmRpciA9IEBzYmluZGlyQAorc2hhcmVkc3RhdGVkaXIgPSBAc2hhcmVkc3RhdGVkaXJACitzcmNkaXIgPSBAc3JjZGlyQAorc3lzY29uZmRpciA9IEBzeXNjb25mZGlyQAordGFyZ2V0X2FsaWFzID0gQHRhcmdldF9hbGlhc0AKK3RvcF9idWlsZF9wcmVmaXggPSBAdG9wX2J1aWxkX3ByZWZpeEAKK3RvcF9idWlsZGRpciA9IEB0b3BfYnVpbGRkaXJACit0b3Bfc3JjZGlyID0gQHRvcF9zcmNkaXJACitkaXN0X21hbl9NQU5TID0gZGViLWNvbnRyb2wuNSBkZWItc3JjLWNvbnRyb2wuNSBkZWItdmVyc2lvbi41IFwKKwlkZWItc2hsaWJzLjUgZGViLXNwbGl0LjUgZGViLXN1YnN0dmFycy41IGRlYi1zeW1ib2xzLjUgXAorCWRlYi10cmlnZ2Vycy41IGRlYi1vbGQuNSBkZWItb3ZlcnJpZGUuNSBkZWItZXh0cmEtb3ZlcnJpZGUuNSBcCisJZGViLjUgZHBrZy1hcmNoaXRlY3R1cmUuMSBkcGtnLWJ1aWxkZmxhZ3MuMSBcCisJZHBrZy1idWlsZHBhY2thZ2UuMSBkcGtnLWNoZWNrYnVpbGRkZXBzLjEgZHBrZy1kZWIuMSBcCisJZHBrZy1kaXN0YWRkZmlsZS4xIGRwa2ctZGl2ZXJ0LjggZHBrZy1nZW5jaGFuZ2VzLjEgXAorCWRwa2ctZ2VuY29udHJvbC4xIGRwa2ctZ2Vuc3ltYm9scy4xIGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjEgXAorCWRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjEgZHBrZy1uYW1lLjEgZHBrZy1wYXJzZWNoYW5nZWxvZy4xIFwKKwlkcGtnLXF1ZXJ5LjEgZHBrZy1zY2FucGFja2FnZXMuMSBkcGtnLXNjYW5zb3VyY2VzLjEgXAorCWRwa2ctc2hsaWJkZXBzLjEgZHBrZy1zb3VyY2UuMSBkcGtnLXNwbGl0LjEgXAorCWRwa2ctc3RhdG92ZXJyaWRlLjggZHBrZy10cmlnZ2VyLjEgZHBrZy12ZW5kb3IuMSBkcGtnLjEgXAorCWRwa2cuY2ZnLjUgJChhbV9fYXBwZW5kXzEpICQoYW1fX2FwcGVuZF8yKSAkKGFtX19hcHBlbmRfMykKK0VYVFJBX0RJU1QgPSBcCisJcG8vQ2hhbmdlTG9nLm9sZCBcCisJcG8vcG80YS5jZmcgXAorCXBvL2Rwa2ctbWFuLnBvdAorCisKKyMgRXh0cmFjdCB0aGUgbGlzdCBvZiBsYW5ndWFnZXMgZnJvbSB0aGUgcG80YSBjb25maWcgZmlsZS4KK0xJTkdVQVNfRElTVCA9IGBzZWQgLW5lICdzL14uKlxbcG80YV9sYW5nc1xdIFwoLipcKSQkL1wxL3AnICQoc3JjZGlyKS9wby9wbzRhLmNmZ2AKK1BPNEFfViA9ICQoUE80QV9WXyQoVikpCitQTzRBX1ZfID0gJChQTzRBX1ZfJChBTV9ERUZBVUxUX1ZFUkJPU0lUWSkpCitQTzRBX1ZfMCA9IEBlY2hvICIgIFBPNEEgICAkQCI7CitQTzRBX09QVFMgPSAtLXByZXZpb3VzIC0tc3JjZGlyICQoc3JjZGlyKSAtLWRlc3RkaXIgJChDVVJESVIpIC0tbm8tYmFja3VwcworYWxsOiBhbGwtYW0KKworLlNVRkZJWEVTOgorJChzcmNkaXIpL01ha2VmaWxlLmluOiAgJChzcmNkaXIpL01ha2VmaWxlLmFtICAkKGFtX19jb25maWd1cmVfZGVwcykKKwlAZm9yIGRlcCBpbiAkPzsgZG8gXAorCSAgY2FzZSAnJChhbV9fY29uZmlndXJlX2RlcHMpJyBpbiBcCisJICAgICokJGRlcCopIFwKKwkgICAgICAoIGNkICQodG9wX2J1aWxkZGlyKSAmJiAkKE1BS0UpICQoQU1fTUFLRUZMQUdTKSBhbS0tcmVmcmVzaCApIFwKKwkgICAgICAgICYmIHsgaWYgdGVzdCAtZiAkQDsgdGhlbiBleGl0IDA7IGVsc2UgYnJlYWs7IGZpOyB9OyBcCisJICAgICAgZXhpdCAxOzsgXAorCSAgZXNhYzsgXAorCWRvbmU7IFwKKwllY2hvICcgY2QgJCh0b3Bfc3JjZGlyKSAmJiAkKEFVVE9NQUtFKSAtLWZvcmVpZ24gbWFuL01ha2VmaWxlJzsgXAorCSQoYW1fX2NkKSAkKHRvcF9zcmNkaXIpICYmIFwKKwkgICQoQVVUT01BS0UpIC0tZm9yZWlnbiBtYW4vTWFrZWZpbGUKKy5QUkVDSU9VUzogTWFrZWZpbGUKK01ha2VmaWxlOiAkKHNyY2RpcikvTWFrZWZpbGUuaW4gJCh0b3BfYnVpbGRkaXIpL2NvbmZpZy5zdGF0dXMKKwlAY2FzZSAnJD8nIGluIFwKKwkgICpjb25maWcuc3RhdHVzKikgXAorCSAgICBjZCAkKHRvcF9idWlsZGRpcikgJiYgJChNQUtFKSAkKEFNX01BS0VGTEFHUykgYW0tLXJlZnJlc2g7OyBcCisJICAqKSBcCisJICAgIGVjaG8gJyBjZCAkKHRvcF9idWlsZGRpcikgJiYgJChTSEVMTCkgLi9jb25maWcuc3RhdHVzICQoc3ViZGlyKS8kQCAkKGFtX19kZXBmaWxlc19tYXliZSknOyBcCisJICAgIGNkICQodG9wX2J1aWxkZGlyKSAmJiAkKFNIRUxMKSAuL2NvbmZpZy5zdGF0dXMgJChzdWJkaXIpLyRAICQoYW1fX2RlcGZpbGVzX21heWJlKTs7IFwKKwllc2FjOworCiskKHRvcF9idWlsZGRpcikvY29uZmlnLnN0YXR1czogJCh0b3Bfc3JjZGlyKS9jb25maWd1cmUgJChDT05GSUdfU1RBVFVTX0RFUEVOREVOQ0lFUykKKwljZCAkKHRvcF9idWlsZGRpcikgJiYgJChNQUtFKSAkKEFNX01BS0VGTEFHUykgYW0tLXJlZnJlc2gKKworJCh0b3Bfc3JjZGlyKS9jb25maWd1cmU6ICAkKGFtX19jb25maWd1cmVfZGVwcykKKwljZCAkKHRvcF9idWlsZGRpcikgJiYgJChNQUtFKSAkKEFNX01BS0VGTEFHUykgYW0tLXJlZnJlc2gKKyQoQUNMT0NBTF9NNCk6ICAkKGFtX19hY2xvY2FsX200X2RlcHMpCisJY2QgJCh0b3BfYnVpbGRkaXIpICYmICQoTUFLRSkgJChBTV9NQUtFRkxBR1MpIGFtLS1yZWZyZXNoCiskKGFtX19hY2xvY2FsX200X2RlcHMpOgoraW5zdGFsbC1tYW4xOiAkKGRpc3RfbWFuX01BTlMpCisJQCQoTk9STUFMX0lOU1RBTEwpCisJdGVzdCAteiAiJChtYW4xZGlyKSIgfHwgJChNS0RJUl9QKSAiJChERVNURElSKSQobWFuMWRpcikiCisJQGxpc3Q9Jyc7IHRlc3QgLW4gIiQobWFuMWRpcikiIHx8IGV4aXQgMDsgXAorCXsgZm9yIGkgaW4gJCRsaXN0OyBkbyBlY2hvICIkJGkiOyBkb25lOyBcCisJbDI9JyQoZGlzdF9tYW5fTUFOUyknOyBmb3IgaSBpbiAkJGwyOyBkbyBlY2hvICIkJGkiOyBkb25lIHwgXAorCSAgc2VkIC1uICcvXC4xW2Etel0qJCQvcCc7IFwKKwl9IHwgd2hpbGUgcmVhZCBwOyBkbyBcCisJICBpZiB0ZXN0IC1mICQkcDsgdGhlbiBkPTsgZWxzZSBkPSIkKHNyY2RpcikvIjsgZmk7IFwKKwkgIGVjaG8gIiQkZCQkcCI7IGVjaG8gIiQkcCI7IFwKKwlkb25lIHwgXAorCXNlZCAtZSAnbjtzLC4qLywsO3A7aDtzLC4qXC4sLDtzLF5bXjFdWzAtOWEtel0qJCQsMSw7eCcgXAorCSAgICAgIC1lICdzLFwuWzAtOWEtel0qJCQsLDskKHRyYW5zZm9ybSk7RztzLFxuLC4sJyB8IFwKKwlzZWQgJ047TjtzLFxuLCAsZycgfCB7IFwKKwlsaXN0PTsgd2hpbGUgcmVhZCBmaWxlIGJhc2UgaW5zdDsgZG8gXAorCSAgaWYgdGVzdCAiJCRiYXNlIiA9ICIkJGluc3QiOyB0aGVuIGxpc3Q9IiQkbGlzdCAkJGZpbGUiOyBlbHNlIFwKKwkgICAgZWNobyAiICQoSU5TVEFMTF9EQVRBKSAnJCRmaWxlJyAnJChERVNURElSKSQobWFuMWRpcikvJCRpbnN0JyI7IFwKKwkgICAgJChJTlNUQUxMX0RBVEEpICIkJGZpbGUiICIkKERFU1RESVIpJChtYW4xZGlyKS8kJGluc3QiIHx8IGV4aXQgJCQ/OyBcCisJICBmaTsgXAorCWRvbmU7IFwKKwlmb3IgaSBpbiAkJGxpc3Q7IGRvIGVjaG8gIiQkaSI7IGRvbmUgfCAkKGFtX19iYXNlX2xpc3QpIHwgXAorCXdoaWxlIHJlYWQgZmlsZXM7IGRvIFwKKwkgIHRlc3QgLXogIiQkZmlsZXMiIHx8IHsgXAorCSAgICBlY2hvICIgJChJTlNUQUxMX0RBVEEpICQkZmlsZXMgJyQoREVTVERJUikkKG1hbjFkaXIpJyI7IFwKKwkgICAgJChJTlNUQUxMX0RBVEEpICQkZmlsZXMgIiQoREVTVERJUikkKG1hbjFkaXIpIiB8fCBleGl0ICQkPzsgfTsgXAorCWRvbmU7IH0KKwordW5pbnN0YWxsLW1hbjE6CisJQCQoTk9STUFMX1VOSU5TVEFMTCkKKwlAbGlzdD0nJzsgdGVzdCAtbiAiJChtYW4xZGlyKSIgfHwgZXhpdCAwOyBcCisJZmlsZXM9YHsgZm9yIGkgaW4gJCRsaXN0OyBkbyBlY2hvICIkJGkiOyBkb25lOyBcCisJbDI9JyQoZGlzdF9tYW5fTUFOUyknOyBmb3IgaSBpbiAkJGwyOyBkbyBlY2hvICIkJGkiOyBkb25lIHwgXAorCSAgc2VkIC1uICcvXC4xW2Etel0qJCQvcCc7IFwKKwl9IHwgc2VkIC1lICdzLC4qLywsO2g7cywuKlwuLCw7cyxeW14xXVswLTlhLXpdKiQkLDEsO3gnIFwKKwkgICAgICAtZSAncyxcLlswLTlhLXpdKiQkLCw7JCh0cmFuc2Zvcm0pO0c7cyxcbiwuLCdgOyBcCisJdGVzdCAteiAiJCRmaWxlcyIgfHwgeyBcCisJICBlY2hvICIgKCBjZCAnJChERVNURElSKSQobWFuMWRpciknICYmIHJtIC1mIiAkJGZpbGVzICIpIjsgXAorCSAgY2QgIiQoREVTVERJUikkKG1hbjFkaXIpIiAmJiBybSAtZiAkJGZpbGVzOyB9CitpbnN0YWxsLW1hbjU6ICQoZGlzdF9tYW5fTUFOUykKKwlAJChOT1JNQUxfSU5TVEFMTCkKKwl0ZXN0IC16ICIkKG1hbjVkaXIpIiB8fCAkKE1LRElSX1ApICIkKERFU1RESVIpJChtYW41ZGlyKSIKKwlAbGlzdD0nJzsgdGVzdCAtbiAiJChtYW41ZGlyKSIgfHwgZXhpdCAwOyBcCisJeyBmb3IgaSBpbiAkJGxpc3Q7IGRvIGVjaG8gIiQkaSI7IGRvbmU7IFwKKwlsMj0nJChkaXN0X21hbl9NQU5TKSc7IGZvciBpIGluICQkbDI7IGRvIGVjaG8gIiQkaSI7IGRvbmUgfCBcCisJICBzZWQgLW4gJy9cLjVbYS16XSokJC9wJzsgXAorCX0gfCB3aGlsZSByZWFkIHA7IGRvIFwKKwkgIGlmIHRlc3QgLWYgJCRwOyB0aGVuIGQ9OyBlbHNlIGQ9IiQoc3JjZGlyKS8iOyBmaTsgXAorCSAgZWNobyAiJCRkJCRwIjsgZWNobyAiJCRwIjsgXAorCWRvbmUgfCBcCisJc2VkIC1lICduO3MsLiovLCw7cDtoO3MsLipcLiwsO3MsXlteNV1bMC05YS16XSokJCw1LDt4JyBcCisJICAgICAgLWUgJ3MsXC5bMC05YS16XSokJCwsOyQodHJhbnNmb3JtKTtHO3MsXG4sLiwnIHwgXAorCXNlZCAnTjtOO3MsXG4sICxnJyB8IHsgXAorCWxpc3Q9OyB3aGlsZSByZWFkIGZpbGUgYmFzZSBpbnN0OyBkbyBcCisJICBpZiB0ZXN0ICIkJGJhc2UiID0gIiQkaW5zdCI7IHRoZW4gbGlzdD0iJCRsaXN0ICQkZmlsZSI7IGVsc2UgXAorCSAgICBlY2hvICIgJChJTlNUQUxMX0RBVEEpICckJGZpbGUnICckKERFU1RESVIpJChtYW41ZGlyKS8kJGluc3QnIjsgXAorCSAgICAkKElOU1RBTExfREFUQSkgIiQkZmlsZSIgIiQoREVTVERJUikkKG1hbjVkaXIpLyQkaW5zdCIgfHwgZXhpdCAkJD87IFwKKwkgIGZpOyBcCisJZG9uZTsgXAorCWZvciBpIGluICQkbGlzdDsgZG8gZWNobyAiJCRpIjsgZG9uZSB8ICQoYW1fX2Jhc2VfbGlzdCkgfCBcCisJd2hpbGUgcmVhZCBmaWxlczsgZG8gXAorCSAgdGVzdCAteiAiJCRmaWxlcyIgfHwgeyBcCisJICAgIGVjaG8gIiAkKElOU1RBTExfREFUQSkgJCRmaWxlcyAnJChERVNURElSKSQobWFuNWRpciknIjsgXAorCSAgICAkKElOU1RBTExfREFUQSkgJCRmaWxlcyAiJChERVNURElSKSQobWFuNWRpcikiIHx8IGV4aXQgJCQ/OyB9OyBcCisJZG9uZTsgfQorCit1bmluc3RhbGwtbWFuNToKKwlAJChOT1JNQUxfVU5JTlNUQUxMKQorCUBsaXN0PScnOyB0ZXN0IC1uICIkKG1hbjVkaXIpIiB8fCBleGl0IDA7IFwKKwlmaWxlcz1geyBmb3IgaSBpbiAkJGxpc3Q7IGRvIGVjaG8gIiQkaSI7IGRvbmU7IFwKKwlsMj0nJChkaXN0X21hbl9NQU5TKSc7IGZvciBpIGluICQkbDI7IGRvIGVjaG8gIiQkaSI7IGRvbmUgfCBcCisJICBzZWQgLW4gJy9cLjVbYS16XSokJC9wJzsgXAorCX0gfCBzZWQgLWUgJ3MsLiovLCw7aDtzLC4qXC4sLDtzLF5bXjVdWzAtOWEtel0qJCQsNSw7eCcgXAorCSAgICAgIC1lICdzLFwuWzAtOWEtel0qJCQsLDskKHRyYW5zZm9ybSk7RztzLFxuLC4sJ2A7IFwKKwl0ZXN0IC16ICIkJGZpbGVzIiB8fCB7IFwKKwkgIGVjaG8gIiAoIGNkICckKERFU1RESVIpJChtYW41ZGlyKScgJiYgcm0gLWYiICQkZmlsZXMgIikiOyBcCisJICBjZCAiJChERVNURElSKSQobWFuNWRpcikiICYmIHJtIC1mICQkZmlsZXM7IH0KK2luc3RhbGwtbWFuODogJChkaXN0X21hbl9NQU5TKQorCUAkKE5PUk1BTF9JTlNUQUxMKQorCXRlc3QgLXogIiQobWFuOGRpcikiIHx8ICQoTUtESVJfUCkgIiQoREVTVERJUikkKG1hbjhkaXIpIgorCUBsaXN0PScnOyB0ZXN0IC1uICIkKG1hbjhkaXIpIiB8fCBleGl0IDA7IFwKKwl7IGZvciBpIGluICQkbGlzdDsgZG8gZWNobyAiJCRpIjsgZG9uZTsgXAorCWwyPSckKGRpc3RfbWFuX01BTlMpJzsgZm9yIGkgaW4gJCRsMjsgZG8gZWNobyAiJCRpIjsgZG9uZSB8IFwKKwkgIHNlZCAtbiAnL1wuOFthLXpdKiQkL3AnOyBcCisJfSB8IHdoaWxlIHJlYWQgcDsgZG8gXAorCSAgaWYgdGVzdCAtZiAkJHA7IHRoZW4gZD07IGVsc2UgZD0iJChzcmNkaXIpLyI7IGZpOyBcCisJICBlY2hvICIkJGQkJHAiOyBlY2hvICIkJHAiOyBcCisJZG9uZSB8IFwKKwlzZWQgLWUgJ247cywuKi8sLDtwO2g7cywuKlwuLCw7cyxeW144XVswLTlhLXpdKiQkLDgsO3gnIFwKKwkgICAgICAtZSAncyxcLlswLTlhLXpdKiQkLCw7JCh0cmFuc2Zvcm0pO0c7cyxcbiwuLCcgfCBcCisJc2VkICdOO047cyxcbiwgLGcnIHwgeyBcCisJbGlzdD07IHdoaWxlIHJlYWQgZmlsZSBiYXNlIGluc3Q7IGRvIFwKKwkgIGlmIHRlc3QgIiQkYmFzZSIgPSAiJCRpbnN0IjsgdGhlbiBsaXN0PSIkJGxpc3QgJCRmaWxlIjsgZWxzZSBcCisJICAgIGVjaG8gIiAkKElOU1RBTExfREFUQSkgJyQkZmlsZScgJyQoREVTVERJUikkKG1hbjhkaXIpLyQkaW5zdCciOyBcCisJICAgICQoSU5TVEFMTF9EQVRBKSAiJCRmaWxlIiAiJChERVNURElSKSQobWFuOGRpcikvJCRpbnN0IiB8fCBleGl0ICQkPzsgXAorCSAgZmk7IFwKKwlkb25lOyBcCisJZm9yIGkgaW4gJCRsaXN0OyBkbyBlY2hvICIkJGkiOyBkb25lIHwgJChhbV9fYmFzZV9saXN0KSB8IFwKKwl3aGlsZSByZWFkIGZpbGVzOyBkbyBcCisJICB0ZXN0IC16ICIkJGZpbGVzIiB8fCB7IFwKKwkgICAgZWNobyAiICQoSU5TVEFMTF9EQVRBKSAkJGZpbGVzICckKERFU1RESVIpJChtYW44ZGlyKSciOyBcCisJICAgICQoSU5TVEFMTF9EQVRBKSAkJGZpbGVzICIkKERFU1RESVIpJChtYW44ZGlyKSIgfHwgZXhpdCAkJD87IH07IFwKKwlkb25lOyB9CisKK3VuaW5zdGFsbC1tYW44OgorCUAkKE5PUk1BTF9VTklOU1RBTEwpCisJQGxpc3Q9Jyc7IHRlc3QgLW4gIiQobWFuOGRpcikiIHx8IGV4aXQgMDsgXAorCWZpbGVzPWB7IGZvciBpIGluICQkbGlzdDsgZG8gZWNobyAiJCRpIjsgZG9uZTsgXAorCWwyPSckKGRpc3RfbWFuX01BTlMpJzsgZm9yIGkgaW4gJCRsMjsgZG8gZWNobyAiJCRpIjsgZG9uZSB8IFwKKwkgIHNlZCAtbiAnL1wuOFthLXpdKiQkL3AnOyBcCisJfSB8IHNlZCAtZSAncywuKi8sLDtoO3MsLipcLiwsO3MsXlteOF1bMC05YS16XSokJCw4LDt4JyBcCisJICAgICAgLWUgJ3MsXC5bMC05YS16XSokJCwsOyQodHJhbnNmb3JtKTtHO3MsXG4sLiwnYDsgXAorCXRlc3QgLXogIiQkZmlsZXMiIHx8IHsgXAorCSAgZWNobyAiICggY2QgJyQoREVTVERJUikkKG1hbjhkaXIpJyAmJiBybSAtZiIgJCRmaWxlcyAiKSI7IFwKKwkgIGNkICIkKERFU1RESVIpJChtYW44ZGlyKSIgJiYgcm0gLWYgJCRmaWxlczsgfQordGFnczogVEFHUworVEFHUzoKKworY3RhZ3M6IENUQUdTCitDVEFHUzoKKworCitkaXN0ZGlyOiAkKERJU1RGSUxFUykKKwlAbGlzdD0nJChNQU5TKSc7IGlmIHRlc3QgLW4gIiQkbGlzdCI7IHRoZW4gXAorCSAgbGlzdD1gZm9yIHAgaW4gJCRsaXN0OyBkbyBcCisJICAgIGlmIHRlc3QgLWYgJCRwOyB0aGVuIGQ9OyBlbHNlIGQ9IiQoc3JjZGlyKS8iOyBmaTsgXAorCSAgICBpZiB0ZXN0IC1mICIkJGQkJHAiOyB0aGVuIGVjaG8gIiQkZCQkcCI7IGVsc2UgOjsgZmk7IGRvbmVgOyBcCisJICBpZiB0ZXN0IC1uICIkJGxpc3QiICYmIFwKKwkgICAgZ3JlcCAnYWIgaGVscDJtYW4gaXMgcmVxdWlyZWQgdG8gZ2VuZXJhdGUgdGhpcyBwYWdlJyAkJGxpc3QgPi9kZXYvbnVsbDsgdGhlbiBcCisJICAgIGVjaG8gImVycm9yOiBmb3VuZCBtYW4gcGFnZXMgY29udGFpbmluZyB0aGUgXGBtaXNzaW5nIGhlbHAybWFuJyByZXBsYWNlbWVudCB0ZXh0OiIgPiYyOyBcCisJICAgIGdyZXAgLWwgJ2FiIGhlbHAybWFuIGlzIHJlcXVpcmVkIHRvIGdlbmVyYXRlIHRoaXMgcGFnZScgJCRsaXN0IHwgc2VkICdzL14vICAgICAgICAgLycgPiYyOyBcCisJICAgIGVjaG8gIiAgICAgICB0byBmaXggdGhlbSwgaW5zdGFsbCBoZWxwMm1hbiwgcmVtb3ZlIGFuZCByZWdlbmVyYXRlIHRoZSBtYW4gcGFnZXM7IiA+JjI7IFwKKwkgICAgZWNobyAiICAgICAgIHR5cGljYWxseSBcYG1ha2UgbWFpbnRhaW5lci1jbGVhbicgd2lsbCByZW1vdmUgdGhlbSIgPiYyOyBcCisJICAgIGV4aXQgMTsgXAorCSAgZWxzZSA6OyBmaTsgXAorCWVsc2UgOjsgZmkKKwlAc3JjZGlyc3RyaXA9YGVjaG8gIiQoc3JjZGlyKSIgfCBzZWQgJ3MvW10uW14kJFxcKl0vXFxcXCYvZydgOyBcCisJdG9wc3JjZGlyc3RyaXA9YGVjaG8gIiQodG9wX3NyY2RpcikiIHwgc2VkICdzL1tdLlteJCRcXCpdL1xcXFwmL2cnYDsgXAorCWxpc3Q9JyQoRElTVEZJTEVTKSc7IFwKKwkgIGRpc3RfZmlsZXM9YGZvciBmaWxlIGluICQkbGlzdDsgZG8gZWNobyAkJGZpbGU7IGRvbmUgfCBcCisJICBzZWQgLWUgInN8XiQkc3JjZGlyc3RyaXAvfHw7dCIgXAorCSAgICAgIC1lICJzfF4kJHRvcHNyY2RpcnN0cmlwL3wkKHRvcF9idWlsZGRpcikvfDt0ImA7IFwKKwljYXNlICQkZGlzdF9maWxlcyBpbiBcCisJICAqLyopICQoTUtESVJfUCkgYGVjaG8gIiQkZGlzdF9maWxlcyIgfCBcCisJCQkgICBzZWQgJy9cLy8hZDtzfF58JChkaXN0ZGlyKS98O3MsL1teL10qJCQsLCcgfCBcCisJCQkgICBzb3J0IC11YCA7OyBcCisJZXNhYzsgXAorCWZvciBmaWxlIGluICQkZGlzdF9maWxlczsgZG8gXAorCSAgaWYgdGVzdCAtZiAkJGZpbGUgfHwgdGVzdCAtZCAkJGZpbGU7IHRoZW4gZD0uOyBlbHNlIGQ9JChzcmNkaXIpOyBmaTsgXAorCSAgaWYgdGVzdCAtZCAkJGQvJCRmaWxlOyB0aGVuIFwKKwkgICAgZGlyPWBlY2hvICIvJCRmaWxlIiB8IHNlZCAtZSAncywvW14vXSokJCwsJ2A7IFwKKwkgICAgaWYgdGVzdCAtZCAiJChkaXN0ZGlyKS8kJGZpbGUiOyB0aGVuIFwKKwkgICAgICBmaW5kICIkKGRpc3RkaXIpLyQkZmlsZSIgLXR5cGUgZCAhIC1wZXJtIC03MDAgLWV4ZWMgY2htb2QgdStyd3gge30gXDs7IFwKKwkgICAgZmk7IFwKKwkgICAgaWYgdGVzdCAtZCAkKHNyY2RpcikvJCRmaWxlICYmIHRlc3QgJCRkICE9ICQoc3JjZGlyKTsgdGhlbiBcCisJICAgICAgY3AgLWZwUiAkKHNyY2RpcikvJCRmaWxlICIkKGRpc3RkaXIpJCRkaXIiIHx8IGV4aXQgMTsgXAorCSAgICAgIGZpbmQgIiQoZGlzdGRpcikvJCRmaWxlIiAtdHlwZSBkICEgLXBlcm0gLTcwMCAtZXhlYyBjaG1vZCB1K3J3eCB7fSBcOzsgXAorCSAgICBmaTsgXAorCSAgICBjcCAtZnBSICQkZC8kJGZpbGUgIiQoZGlzdGRpcikkJGRpciIgfHwgZXhpdCAxOyBcCisJICBlbHNlIFwKKwkgICAgdGVzdCAtZiAiJChkaXN0ZGlyKS8kJGZpbGUiIFwKKwkgICAgfHwgY3AgLXAgJCRkLyQkZmlsZSAiJChkaXN0ZGlyKS8kJGZpbGUiIFwKKwkgICAgfHwgZXhpdCAxOyBcCisJICBmaTsgXAorCWRvbmUKKwkkKE1BS0UpICQoQU1fTUFLRUZMQUdTKSBcCisJICB0b3BfZGlzdGRpcj0iJCh0b3BfZGlzdGRpcikiIGRpc3RkaXI9IiQoZGlzdGRpcikiIFwKKwkgIGRpc3QtaG9vaworY2hlY2stYW06IGFsbC1hbQorY2hlY2s6IGNoZWNrLWFtCithbGwtYW06IE1ha2VmaWxlICQoTUFOUykgYWxsLWxvY2FsCitpbnN0YWxsZGlyczoKKwlmb3IgZGlyIGluICIkKERFU1RESVIpJChtYW4xZGlyKSIgIiQoREVTVERJUikkKG1hbjVkaXIpIiAiJChERVNURElSKSQobWFuOGRpcikiOyBkbyBcCisJICB0ZXN0IC16ICIkJGRpciIgfHwgJChNS0RJUl9QKSAiJCRkaXIiOyBcCisJZG9uZQoraW5zdGFsbDogaW5zdGFsbC1hbQoraW5zdGFsbC1leGVjOiBpbnN0YWxsLWV4ZWMtYW0KK2luc3RhbGwtZGF0YTogaW5zdGFsbC1kYXRhLWFtCit1bmluc3RhbGw6IHVuaW5zdGFsbC1hbQorCitpbnN0YWxsLWFtOiBhbGwtYW0KKwlAJChNQUtFKSAkKEFNX01BS0VGTEFHUykgaW5zdGFsbC1leGVjLWFtIGluc3RhbGwtZGF0YS1hbQorCitpbnN0YWxsY2hlY2s6IGluc3RhbGxjaGVjay1hbQoraW5zdGFsbC1zdHJpcDoKKwkkKE1BS0UpICQoQU1fTUFLRUZMQUdTKSBJTlNUQUxMX1BST0dSQU09IiQoSU5TVEFMTF9TVFJJUF9QUk9HUkFNKSIgXAorCSAgaW5zdGFsbF9zaF9QUk9HUkFNPSIkKElOU1RBTExfU1RSSVBfUFJPR1JBTSkiIElOU1RBTExfU1RSSVBfRkxBRz0tcyBcCisJICBgdGVzdCAteiAnJChTVFJJUCknIHx8IFwKKwkgICAgZWNobyAiSU5TVEFMTF9QUk9HUkFNX0VOVj1TVFJJUFBST0c9JyQoU1RSSVApJyJgIGluc3RhbGwKK21vc3RseWNsZWFuLWdlbmVyaWM6CisKK2NsZWFuLWdlbmVyaWM6CisKK2Rpc3RjbGVhbi1nZW5lcmljOgorCS10ZXN0IC16ICIkKENPTkZJR19DTEVBTl9GSUxFUykiIHx8IHJtIC1mICQoQ09ORklHX0NMRUFOX0ZJTEVTKQorCS10ZXN0IC4gPSAiJChzcmNkaXIpIiB8fCB0ZXN0IC16ICIkKENPTkZJR19DTEVBTl9WUEFUSF9GSUxFUykiIHx8IHJtIC1mICQoQ09ORklHX0NMRUFOX1ZQQVRIX0ZJTEVTKQorCittYWludGFpbmVyLWNsZWFuLWdlbmVyaWM6CisJQGVjaG8gIlRoaXMgY29tbWFuZCBpcyBpbnRlbmRlZCBmb3IgbWFpbnRhaW5lcnMgdG8gdXNlIgorCUBlY2hvICJpdCBkZWxldGVzIGZpbGVzIHRoYXQgbWF5IHJlcXVpcmUgc3BlY2lhbCB0b29scyB0byByZWJ1aWxkLiIKK2NsZWFuOiBjbGVhbi1hbQorCitjbGVhbi1hbTogY2xlYW4tZ2VuZXJpYyBjbGVhbi1sb2NhbCBtb3N0bHljbGVhbi1hbQorCitkaXN0Y2xlYW46IGRpc3RjbGVhbi1hbQorCS1ybSAtZiBNYWtlZmlsZQorZGlzdGNsZWFuLWFtOiBjbGVhbi1hbSBkaXN0Y2xlYW4tZ2VuZXJpYworCitkdmk6IGR2aS1hbQorCitkdmktYW06CisKK2h0bWw6IGh0bWwtYW0KKworaHRtbC1hbToKKworaW5mbzogaW5mby1hbQorCitpbmZvLWFtOgorCitpbnN0YWxsLWRhdGEtYW06IGluc3RhbGwtZGF0YS1sb2NhbCBpbnN0YWxsLW1hbgorCitpbnN0YWxsLWR2aTogaW5zdGFsbC1kdmktYW0KKworaW5zdGFsbC1kdmktYW06CisKK2luc3RhbGwtZXhlYy1hbToKKworaW5zdGFsbC1odG1sOiBpbnN0YWxsLWh0bWwtYW0KKworaW5zdGFsbC1odG1sLWFtOgorCitpbnN0YWxsLWluZm86IGluc3RhbGwtaW5mby1hbQorCitpbnN0YWxsLWluZm8tYW06CisKK2luc3RhbGwtbWFuOiBpbnN0YWxsLW1hbjEgaW5zdGFsbC1tYW41IGluc3RhbGwtbWFuOAorCitpbnN0YWxsLXBkZjogaW5zdGFsbC1wZGYtYW0KKworaW5zdGFsbC1wZGYtYW06CisKK2luc3RhbGwtcHM6IGluc3RhbGwtcHMtYW0KKworaW5zdGFsbC1wcy1hbToKKworaW5zdGFsbGNoZWNrLWFtOgorCittYWludGFpbmVyLWNsZWFuOiBtYWludGFpbmVyLWNsZWFuLWFtCisJLXJtIC1mIE1ha2VmaWxlCittYWludGFpbmVyLWNsZWFuLWFtOiBkaXN0Y2xlYW4tYW0gbWFpbnRhaW5lci1jbGVhbi1nZW5lcmljCisKK21vc3RseWNsZWFuOiBtb3N0bHljbGVhbi1hbQorCittb3N0bHljbGVhbi1hbTogbW9zdGx5Y2xlYW4tZ2VuZXJpYworCitwZGY6IHBkZi1hbQorCitwZGYtYW06CisKK3BzOiBwcy1hbQorCitwcy1hbToKKwordW5pbnN0YWxsLWFtOiB1bmluc3RhbGwtbG9jYWwgdW5pbnN0YWxsLW1hbgorCit1bmluc3RhbGwtbWFuOiB1bmluc3RhbGwtbWFuMSB1bmluc3RhbGwtbWFuNSB1bmluc3RhbGwtbWFuOAorCisuTUFLRTogaW5zdGFsbC1hbSBpbnN0YWxsLXN0cmlwCisKKy5QSE9OWTogYWxsIGFsbC1hbSBhbGwtbG9jYWwgY2hlY2sgY2hlY2stYW0gY2xlYW4gY2xlYW4tZ2VuZXJpYyBcCisJY2xlYW4tbG9jYWwgZGlzdC1ob29rIGRpc3RjbGVhbiBkaXN0Y2xlYW4tZ2VuZXJpYyBkaXN0ZGlyIGR2aSBcCisJZHZpLWFtIGh0bWwgaHRtbC1hbSBpbmZvIGluZm8tYW0gaW5zdGFsbCBpbnN0YWxsLWFtIFwKKwlpbnN0YWxsLWRhdGEgaW5zdGFsbC1kYXRhLWFtIGluc3RhbGwtZGF0YS1sb2NhbCBpbnN0YWxsLWR2aSBcCisJaW5zdGFsbC1kdmktYW0gaW5zdGFsbC1leGVjIGluc3RhbGwtZXhlYy1hbSBpbnN0YWxsLWh0bWwgXAorCWluc3RhbGwtaHRtbC1hbSBpbnN0YWxsLWluZm8gaW5zdGFsbC1pbmZvLWFtIGluc3RhbGwtbWFuIFwKKwlpbnN0YWxsLW1hbjEgaW5zdGFsbC1tYW41IGluc3RhbGwtbWFuOCBpbnN0YWxsLXBkZiBcCisJaW5zdGFsbC1wZGYtYW0gaW5zdGFsbC1wcyBpbnN0YWxsLXBzLWFtIGluc3RhbGwtc3RyaXAgXAorCWluc3RhbGxjaGVjayBpbnN0YWxsY2hlY2stYW0gaW5zdGFsbGRpcnMgbWFpbnRhaW5lci1jbGVhbiBcCisJbWFpbnRhaW5lci1jbGVhbi1nZW5lcmljIG1vc3RseWNsZWFuIG1vc3RseWNsZWFuLWdlbmVyaWMgcGRmIFwKKwlwZGYtYW0gcHMgcHMtYW0gdW5pbnN0YWxsIHVuaW5zdGFsbC1hbSB1bmluc3RhbGwtbG9jYWwgXAorCXVuaW5zdGFsbC1tYW4gdW5pbnN0YWxsLW1hbjEgdW5pbnN0YWxsLW1hbjUgdW5pbnN0YWxsLW1hbjgKKworCisjIElmIHRoZSB1c2VyIGhhcyBub3QgZGVmaW5lZCBpdCBsZXQncyB1c2UgdGhlIGRlZmF1bHQuCitMSU5HVUFTID89ICQoTElOR1VBU19ESVNUKQorCithbGwtbG9jYWw6IGFsbC1sb2NhbC1AVVNFX1BPNEFACisKK2FsbC1sb2NhbC1ubzoKK2FsbC1sb2NhbC15ZXM6IG1hbi5zdGFtcAorCisjIEZJWE1FOiBVc2UgYSBzdGFtcCBmaWxlIHVudGlsIHBvNGEgc3VwcG9ydHMgdGhlbSBpbnRlcm5hbGx5LgorbWFuLnN0YW1wOgorCSQoUE80QV9WKSAkKFBPNEEpICQoUE80QV9PUFRTKSAkKHNyY2RpcikvcG8vcG80YS5jZmcKKwkkKEFNX1ZfYXQpIHRvdWNoICRACisKK2NsZWFuLWxvY2FsOiBjbGVhbi1sb2NhbC1AVVNFX1BPNEFACisKK2NsZWFuLWxvY2FsLW5vOgorY2xlYW4tbG9jYWwteWVzOgorCXJtIC1yZiAkKExJTkdVQVNfRElTVCkKKwkkKEFNX1ZfYXQpIHJtIC1mIG1hbi5zdGFtcAorCisuUEhPTlk6IHVwZGF0ZS1wbworCit1cGRhdGUtcG86CisJJChQTzRBX1YpICQoUE80QSkgJChQTzRBX09QVFMpIC0tZm9yY2UgJChzcmNkaXIpL3BvL3BvNGEuY2ZnCisKK2luc3RhbGwtZGF0YS1sb2NhbDogaW5zdGFsbC1kYXRhLWxvY2FsLUBVU0VfUE80QUAKKworaW5zdGFsbC1kYXRhLWxvY2FsLW5vOgoraW5zdGFsbC1kYXRhLWxvY2FsLXllczoKKwlmb3IgbGFuZyBpbiAkKExJTkdVQVMpOyBkbyBcCisJCWZpbGVzPSIiOyBcCisJCWZvciB0cmFucyBpbiAkKGRpc3RfbWFuX01BTlMpOyBkbyBcCisJCQlpZiBbIC1mICQoQ1VSRElSKS8kJGxhbmcvJCR0cmFucyBdOyB0aGVuIFwKKwkJCQlmaWxlcz0iJCRmaWxlcyAkKENVUkRJUikvJCRsYW5nLyQkdHJhbnMiOyBcCisJCQllbGlmIFsgLWYgJChzcmNkaXIpLyQkbGFuZy8kJHRyYW5zIF07IHRoZW4gXAorCQkJCWZpbGVzPSIkJGZpbGVzICQoc3JjZGlyKS8kJGxhbmcvJCR0cmFucyI7IFwKKwkJCWZpOyBcCisJCWRvbmU7IFwKKwkJJChNQUtFKSBpbnN0YWxsLW1hbiBcCisJCQltYW5kaXI9IiQobWFuZGlyKS8kJGxhbmciIFwKKwkJCW1hbl9NQU5TPSIiIFwKKwkJCWRpc3RfbWFuX01BTlM9IiQkZmlsZXMiOyBcCisJZG9uZQorCit1bmluc3RhbGwtbG9jYWw6IHVuaW5zdGFsbC1sb2NhbC1AVVNFX1BPNEFACisKK3VuaW5zdGFsbC1sb2NhbC1ubzoKK3VuaW5zdGFsbC1sb2NhbC15ZXM6CisJZm9yIGxhbmcgaW4gJChMSU5HVUFTKTsgZG8gXAorCQlmaWxlcz0iIjsgXAorCQlmb3IgdHJhbnMgaW4gJChkaXN0X21hbl9NQU5TKTsgZG8gXAorCQkJaWYgWyAtZiAkKENVUkRJUikvJCRsYW5nLyQkdHJhbnMgXTsgdGhlbiBcCisJCQkJZmlsZXM9IiQkZmlsZXMgJChDVVJESVIpLyQkbGFuZy8kJHRyYW5zIjsgXAorCQkJZWxpZiBbIC1mICQoc3JjZGlyKS8kJGxhbmcvJCR0cmFucyBdOyB0aGVuIFwKKwkJCQlmaWxlcz0iJCRmaWxlcyAkKHNyY2RpcikvJCRsYW5nLyQkdHJhbnMiOyBcCisJCQlmaTsgXAorCQlkb25lOyBcCisJCSQoTUFLRSkgdW5pbnN0YWxsLW1hbiBcCisJCQltYW5kaXI9IiQobWFuZGlyKS8kJGxhbmciIFwKKwkJCW1hbl9NQU5TPSIiIFwKKwkJCWRpc3RfbWFuX01BTlM9IiQkZmlsZXMiOyBcCisJZG9uZQorCitkaXN0LWhvb2s6IG1hbi5zdGFtcAorCWNwICQoc3JjZGlyKS9tYW4uc3RhbXAgJChkaXN0ZGlyKS8KKwlmb3IgbGFuZyBpbiAkKExJTkdVQVNfRElTVCk7IGRvIFwKKwkJY3AgJChzcmNkaXIpL3BvLyQkbGFuZy5wbyAkKGRpc3RkaXIpL3BvOyBcCisJCWNwICQoc3JjZGlyKS9wby8kJGxhbmcuYWRkICQoZGlzdGRpcikvcG87IFwKKwkJJChta2Rpcl9wKSAkKGRpc3RkaXIpLyQkbGFuZzsgXAorCQljcCAtciAkKHNyY2RpcikvJCRsYW5nICQoZGlzdGRpcikvOyBcCisJZG9uZQorCisjIFRlbGwgdmVyc2lvbnMgWzMuNTksMy42Mykgb2YgR05VIG1ha2UgdG8gbm90IGV4cG9ydCBhbGwgdmFyaWFibGVzLgorIyBPdGhlcndpc2UgYSBzeXN0ZW0gbGltaXQgKGZvciBTeXNWIGF0IGxlYXN0KSBtYXkgYmUgZXhjZWVkZWQuCisuTk9FWFBPUlQ6CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9kZS9kZWItY29udHJvbC41IGIvZHBrZy0xLjE2LjEuMS9tYW4vZGUvZGViLWNvbnRyb2wuNQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xMmJlZGMxCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vZGUvZGViLWNvbnRyb2wuNQpAQCAtMCwwICsxLDI2MSBAQAorLlwiIEF1dGhvcjogUmF1bCBNaWxsZXIKKy5cIiBJbmNsdWRlcyB0ZXh0IGZyb20gdGhlIGRlYmlhbiBHdWlkZWxpbmVzIGJ5IElhbiBKYWNrc29uLCBJYW4gTXVyZG9jaworLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlwiCisuXCIgVGhpcyBmaWxlIHdhcyBnZW5lcmF0ZWQgd2l0aCBwbzRhLiBUcmFuc2xhdGUgdGhlIHNvdXJjZSBmaWxlLgorLlwiCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuVEggZGViXC1jb250cm9sIDUgMjAxMVwtMDhcLTE0IERlYmlhblwtUHJvamVrdCBEZWJpYW4KKy5TSCBOQU1FCitkZWJcLWNvbnRyb2wgXC0gRGF0ZWlmb3JtYXQgZGVyIEhhdXB0c3RldWVyZGF0ZWkgdm9uIERlYmlhblwtUGFrZXRlbgorLgorLlNIINxCRVJTSUNIVAorY29udHJvbAorLgorLlNIIEJFU0NIUkVJQlVORworSmVkZXMgRGViaWFuXC1QYWtldCBlbnRo5Gx0IGRpZSBIYXVwdHN0ZXVlcmRhdGVpILtjb250cm9sqywgZGllIGVpbmUgUmVpaGUKK3ZvbiBGZWxkZXJuIG9kZXIgS29tbWVudGFyZW4gKHdlbm4gZGllIFplaWxlIG1pdCBcZkK7I6tcZlAgYmVnaW5udCkKK2VudGjkbHQuIEplZGVzIEZlbGQgYmVnaW5udCBtaXQgZWluZXIgTWFya2llcnVuZywgd2llIFxmQlBhY2thZ2VcZlAgb2RlcgorXGZCVmVyc2lvblxmUCAoR3Jv31wtL0tsZWluc2NocmVpYnVuZyBlZ2FsKSwgZ2Vmb2xndCB2b24gZWluZW0gRG9wcGVscHVua3QgdW5kCitkZW0gS/ZycGVyIGRlcyBGZWxkZXMuIEZlbGRlciB3ZXJkZW4gbnVyIGR1cmNoIGRpZSBGZWxkbWFya2llcnVuZ2VuCithYmdlZ3Jlbnp0LiBNaXQgYW5kZXJlbiBXb3J0ZW4sIEZlbGR0ZXh0ZSBr9m5uZW4gbWVocmVyZSBaZWlsZW4g/GJlcnNwYW5uZW4sCithYmVyIGRpZSBJbnN0YWxsYXRpb25zd2Vya3pldWdlIHdlcmRlbiBpbSBBbGxnZW1laW5lbiBkaWUgWmVpbGVuIGJlaSBkZXIKK1ZlcmFyYmVpdHVuZyBkZXMgRmVsZGv2cnBlcnMgenVzYW1tZW5mYXNzZW4gKG1pdCBBdXNuYWhtZSBkZXMKK1xmQkRlc2NyaXB0aW9uXGZQXC1GZWxkZXMsIHNlaGVuIFNpZSBkYXp1IHVudGVuKS4KKy4KKy5TSCAiTk9UV0VORElHRSBGRUxERVIiCisuVFAgCitcZkJQYWNrYWdlOlxmUFxmSSBQYWtldG5hbWVcZlAKK0RlciBXZXJ0IGRpZXNlcyBGZWxkZXMgYmVzdGltbXQgZGVuIFBha2V0bmFtZW4gdW5kIHdpcmQgdm9uIGRlbiBtZWlzdGVuCitJbnN0YWxsYXRpb25zd2Vya3pldWdlbiB2ZXJ3ZW5kZXQsIHVtIERhdGVpbmFtZW4genUgZXJzdGVsbGVuLgorLlRQIAorXGZCVmVyc2lvbjpcZlBcZkkgVmVyc2lvbnNcLVplaWNoZW5rZXR0ZVxmUAorVHlwaXNjaGVyd2Vpc2UgaXN0IGRhcyBkaWUgT3JpZ2luYWxcLVBha2V0dmVyc2lvbnNudW1tZXIsIGluIGRlciBGb3JtLCBkaWUKK2RlciBQcm9ncmFtbWF1dG9yIHZlcndlbmRldC4gRXMga2FubiBhdWNoIGVpbmUgRGViaWFuXC1SZXZpc2lvbnNudW1tZXIKK2VudGhhbHRlbiAoZvxyIG5pY2h0IGF1cyBEZWJpYW4gc3RhbW1lbmRlIFBha2V0ZSkuIERhcyBnZW5hdWUgRm9ybWF0IHVuZCBkZXIKK1NvcnRpZXJhbGdvcml0aG11cyBzaW5kIGluIFxmQmRlYlwtdmVyc2lvblxmUCg1KSBiZXNjaHJpZWJlbi4KKy5UUCAKK1xmQk1haW50YWluZXI6XGZQXGZJIFZvbGxzdORuZGlnZXJcLU5hbWVcLXVuZFwtRVwtTWFpbFxmUAorU29sbHRlIGluIGRlbSBGb3JtYXQgu0pvZSBCbG9nZ3MgPGpibG9nZ3NAZm9vLmNvbT6rIHNlaW4gdW5kIGlzdAordHlwaXNjaGVyd2Vpc2UgZGllIFBlcnNvbiwgZGllIGRhcyBQYWtldCBlcnN0ZWxsdCBoYXQsIGltIEdlZ2Vuc2F0eiB6dW0KK0F1dG9yIGRlciBTb2Z0d2FyZSwgZGllIHBha2V0aWVydCB3dXJkZS4KKy5UUCAKK1xmQkRlc2NyaXB0aW9uOlxmUFxmSSBLdXJ6YmVzY2hyZWlidW5nXGZQCitcZkIgXGZQXGZJTGFuZ2Jlc2NocmVpYnVuZ1xmUAorLmJyCitEYXMgRm9ybWF0IGRlciBQYWtldGJlc2NocmVpYnVuZyBpc3QgZWluZSBrdXJ6ZSBrbmFwcGUgWnVzYW1tZW5mYXNzdW5nIGF1ZgorZGVyIGVyc3RlbiBaZWlsZSAobmFjaCBkZW0gu0Rlc2NyaXB0aW9uq1wtRmVsZCkuIERpZSBmb2xnZW5kZW4gWmVpbGVuIHNvbGx0ZW4KK2FscyBs5G5nZXJlLCBkZXRhaWxsaWVydGVyZSBCZXNjaHJlaWJ1bmcgdmVyd2VuZGV0IHdlcmRlbi4gSmVkZSBaZWlsZSBkZXIKK0xhbmdiZXNjaHJlaWJ1bmcgbXVzcyB2b24gZWluZW0gTGVlcnplaWNoZW4gYmVnb25uZW4gd2VyZGVuLCB1bmQgTGVlcnplaWxlbgoraW4gZGVyIExhbmdiZXNjaHJlaWJ1bmcgbfxzc2VuIGVpbmVuIGVpbnplbG5lbiC7LqsgaGludGVyIGRlbSBlaW5sZWl0ZW5kZW4KK0xlZXJ6ZWljaGVuIGVudGhhbHRlbi4KKy4KKy5TSCAiT1BUSU9OQUxFIEZFTERFUiIKKy5UUCAKK1xmQlNlY3Rpb246XGZQXGZJIEJlcmVpY2hcZlAKK0RpZXMgaXN0IGVpbiBhbGxnZW1laW5lcyBGZWxkLCBkYXMgZGVtIFBha2V0IGVpbmUgS2F0ZWdvcmllIGdpYnQsIGJhc2llcmVuZAorYXVmIGRlciBTb2Z0d2FyZSwgZGllIGVzIGluc3RhbGxpZXJ0LiBFaW5pZ2Ug/GJsaWNoZSBCZXJlaWNoZSBzaW5kILt1dGlsc6ssCiu7bmV0qywgu21haWyrLCC7dGV4dKssILt4MTGrIHVzdy4KKy5UUCAKK1xmQlByaW9yaXR5OlxmUFxmSSBQcmlvcml05HRcZlAKK1NldHp0IGRpZSBCZWRldXR1bmcgZGllc2VzIFBha2V0cyBpbiBCZXp1ZyB6dSBkZW0gR2VzYW10c3lzdGVtLiDcYmxpY2hlCitQcmlvcml05HRlbiBzaW5kILtyZXF1aXJlZKssILtzdGFuZGFyZKssILtvcHRpb25hbKssILtleHRyYasgdXN3LgorLkxQCitJbiBEZWJpYW4gaGFiZW4gZGllIFxmQlNlY3Rpb25cZlBcLSB1bmQgXGZCUHJpb3JpdHlcZlBcLUZlbGRlciBlaW5lbiBkZWZpbmllcnRlbgorU2F0eiBhbiBha3plcHRpZXJ0ZW4gV2VydGVuLCBiYXNpZXJlbmQgYXVmIGRlbSBSaWNodGxpbmllblwtSGFuZGJ1Y2guIEVpbmUKK0xpc3RlIGRpZXNlciBXZXJ0ZSBrYW5uIGF1cyBkZXIgbmV1c3RlbiBWZXJzaW9uIGRlcyBQYWtldHMgXGZCZGViaWFuXC1wb2xpY3lcZlAKK2VyaGFsdGVuIHdlcmRlbi4KKy5UUCAKK1xmQkVzc2VudGlhbDpcZlAgXGZCeWVzXGZQfFxmQm5vXGZQCitEaWVzZXMgRmVsZCB3aXJkIG5vcm1hbGVyd2Vpc2UgbnVyIGJlbvZ0aWd0LCB3ZW5uIGRpZSBBbnR3b3J0IFxmQnllc1xmUAorbGF1dGV0LiBFcyBiZXplaWNobmV0IGVpbiBQYWtldCwgZGFzIGb8ciBkZW4gb3JkbnVuZ3NnZW3k32VuIEJldHJpZWIgZGVzCitTeXN0ZW1zIGJlbvZ0aWd0IHdpcmQuIERwa2cgb2RlciBqZWRlcyBhbmRlcmUgSW5zdGFsbGF0aW9uc3dlcmt6ZXVnIHdpcmQgZXMKK25pY2h0IGVybGF1YmVuLCBlaW4gXGZCRXNzZW50aWFsXGZQXC1QYWtldCB6dSBlbnRmZXJuZW4gKHp1bWluZGVzdGVucyBuaWNodCBvaG5lCitkaWUgVmVyd2VuZHVuZyBlaW5lciBkZXIgu2ZvcmNlq1wtT3B0aW9uZW4pLgorLlRQIAorXGZCQXJjaGl0ZWN0dXJlOlxmUCBcZklhcmNoXGZQfFxmQmFsbFxmUAorRGllIEFyY2hpdGVrdHVyIHNwZXppZml6aWVydCBkZW4gSGFyZHdhcmV0eXAgZvxyIGRlbiBkaWVzZXMgUGFrZXQga29tcGlsaWVydAord3VyZGUuIEdlbOR1ZmlnZSBBcmNoaXRla3R1cmVuIHNpbmQgu2kzODarLCC7bTY4a6ssILtzcGFyY6ssILthbHBoYassCiu7cG93ZXJwY6sgdXN3LiBCZWFjaHRlbiBTaWUsIGRhc3MgZGllIE9wdGlvbiBcZkJhbGxcZlAgZvxyIFBha2V0ZSBnZWRhY2h0IGlzdCwKK2RpZSBBcmNoaXRla3R1clwtdW5hYmjkbmdpZyBzaW5kLiBFaW5pZ2UgQmVpc3BpZWxlIGhpZXJm/HIgc2luZCBTaGVsbFwtIHVuZAorUGVybFwtU2tyaXB0ZSB1bmQgRG9rdW1lbnRhdGlvbi4KKy5UUCAKK1xmQk9yaWdpbjpcZlBcZkkgTmFtZVxmUAorRGVyIE5hbWUgZGVyIERpc3RyaWJ1dGlvbiwgYXVzIGRlciBkaWVzZXMgUGFrZXQgdXJzcHL8bmdsaWNoIHN0YW1tdC4KKy5UUCAKK1xmQkJ1Z3M6XGZQXGZJIFVSTFxmUAorRGllIFxmSVVSTFxmUCBkZXIgRmVobGVyZGF0ZW5iYW5rIGb8ciBkaWVzZXMgUGFrZXQuIERhcyBkZXJ6ZWl0IHZlcndlbmRldGUKK0Zvcm1hdCBpc3QgXGZJQlRTXC1BcnRcZlBcZkI6Ly9cZlBcZklCVFNcLUFkcmVzc2VcZlAgd2llIGluCitcZkJkZWJidWdzOi8vYnVncy5kZWJpYW4ub3JnXGZQLgorLlRQIAorXGZCSG9tZXBhZ2U6XGZQXGZJIFVSTFxmUAorRGllIFxmSVVSTFxmUCBkZXMgT3JpZ2luYWxcLSAoVXBzdHJlYW1cLSlQcm9qZWt0cy4KKy5UUCAKK1xmQlRhZzpcZlAgXGZJIExpc3RlXC12b25cLU1hcmtpZXJ1bmdlblxmUAorTGlzdGUgZGVyIHVudGVyc3T8dHp0ZW4gTWFya2llcnVuZ2VuICi7VGFnc6spLCBkaWUgZGllIEVpZ2Vuc2NoYWZ0ZW4gZGVzCitQYWtldHMgYmVzY2hyZWliZW4uIERpZSBCZXNjaHJlaWJ1bmcgdW5kIGRpZSBMaXN0ZSBkZXIgdW50ZXJzdPx0enRlbgorTWFya2llcnVuZ2VuIGthbm4gaW4gZGVtIFBha2V0IFxmQmRlYnRhZ3NcZlAgZ2VmdW5kZW4gd2VyZGVuLgorLlRQIAorXGZCTXVsdGlcLUFyY2g6XGZQIFxmQnNhbWVcZlB8XGZCZm9yZWlnblxmUHxcZkJhbGxvd2VkXGZQCitEYXMgRmVsZCB3aXJkIGRhenUgdmVyd2FuZHQsIGFuenVnZWJlbiwgd2llIHNpY2ggZGllc2VzIFBha2V0IGluIGVpbmVyCitNdWx0aVwtQXJjaFwtSW5zdGFsbGF0aW9uIHZlcmhhbHRlbiBzb2xsLiBEZXIgV2VydCBcZkJzYW1lXGZQIGJlZGV1dGV0LCBkYXNzIGRhcworUGFrZXQgbWl0IHNpY2ggc2VsYnN0IGtvaW5zdGFsbGllcmJhciBpc3QsIGFiZXIgbmljaHQgZGF6dSB2ZXJ3YW5kdCB3ZXJkZW4KK2RhcmYsIGRpZSBBYmjkbmdpZ2tlaXQgZWluZXMgUGFrZXRzIHZvbiBlaW5lciBhbmRlcmVuIEFyY2hpdGVrdHVyIG1pdCBpaG0KK3NlbGJzdCB6dSBlcmb8bGxlbi4gRGVyIFdlcnQgXGZCZm9yZWlnblxmUCBiZWRldXRldCwgZGFzcyBkYXMgUGFrZXQgbmljaHQgbWl0CitzaWNoIHNlbGJzdCBrb2luc3RhbGxpZXJiYXIgaXN0LCBhYmVyIGVzIGVybGF1YnQgc2VpbiBzb2xsLCBkaWUgQWJo5G5naWdrZWl0CitlaW5lcyBQYWtldHMgdm9uIGVpbmVyIGFuZGVyZW4gQXJjaGl0ZWt0dXIgbWl0IGlobSBzZWxic3QgenUgZXJm/GxsZW4uIERlcgorV2VydCBcZkJhbGxvd2VkXGZQIGVybGF1YnQgZXMgaW52ZXJzIEFiaORuZ2lnZW4gaW4gaWhyZW0gRmVsZCC7RGVwZW5kc6sKK2FuenV6ZWlnZW4sIGRhc3Mgc2llIGVpbiBQYWtldCB2b24gZWluZXIgZnJlbWRlbiBBcmNoaXRla3R1ciBiZW72dGlnZW4sIGhhdAorYWJlciBhbnNvbnN0ZW4ga2VpbmVuIEVmZmVrdC4gRGllc2VzIEZlbGQgc29sbHRlIGluIFBha2V0ZW4gbWl0IGRlbSBGZWxkCitcZkJBcmNoaXRlY3R1cmU6IGFsbFxmUCBuaWNodCB2ZXJ3YW5kdCB3ZXJkZW4uCisuVFAgCitcZkJTb3VyY2U6XGZQIFxmSSBRdWVsbFwtTmFtZVxmUAorRGVyIE5hbWUgZGVzIFF1ZWxscGFrZXRzLCBhdXMgZGVtIGRpZXNlcyBCaW7kcnBha2V0IGFic3RhbW10LCBmYWxscyBlcyBzaWNoCit2b20gTmFtZW4gZGllc2VzIFBha2V0ZXMgdW50ZXJzY2hlaWRldC4KKworLlRQIAorLlBEIDAKK1xmQlN1YmFyY2hpdGVjdHVyZTpcZlAgXGZJIFdlcnRcZlAKKy5UUCAKKy5QRCAwCitcZkJLZXJuZWxcLVZlcnNpb246XGZQIFxmSSBXZXJ0XGZQCisuVFAgCisuUEQKK1xmQkluc3RhbGxlclwtTWVudVwtSXRlbTpcZlAgXGZJIFdlcnRcZlAKK0RpZXNlIEZlbGRlciB3ZXJkZW4gaW0gRGViaWFuXC1JbnN0YWxsZXIgdmVyd2FuZHQgdW5kIHdlcmRlbiBub3JtYWxlcndlaXNlCituaWNodCBiZW72dGlndC4gTGVzZW4gU2llIC91c3Ivc2hhcmUvZG9jL2RlYmlhblwtaW5zdGFsbGVyL2RldmVsL21vZHVsZXMudHh0CithdXMgZGVtIFBha2V0IFxmQmRlYmlhblwtaW5zdGFsbGVyXGZQIGb8ciB3ZWl0ZXJlIEluZm9ybWF0aW9uZW4g/GJlciBzaWUuCisKKy5UUCAKK1xmQkRlcGVuZHM6XGZQIFxmSSBQYWtldGxpc3RlXGZQCitMaXN0ZSB2b24gUGFrZXRlbiwgZGllIGJlbvZ0aWd0IHdlcmRlbiwgZGFtaXQgZGllc2VzIFBha2V0IGVpbmUKK25pY2h0XC10cml2aWFsZSBNZW5nZSBhbiBGdW5rdGlvbmVuIGFuYmlldGVuIGthbm4uIERpZQorUGFrZXR2ZXJ3YWx0dW5nc3NvZnR3YXJlIHdpcmQgZXMgbmljaHQgZXJsYXViZW4sIGRhc3MgZWluIFBha2V0IGluc3RhbGxpZXJ0Cit3aXJkLCBmYWxscyBkaWUgaW4gc2VpbmVtIFxmQkRlcGVuZHNcZlBcLUZlbGQgYXVmZ2Vm/GhydGVuIFBha2V0ZSBuaWNodAoraW5zdGFsbGllcnQgc2luZCAoenVtaW5kZXN0ZW5zIG5pY2h0IG9obmUgVmVyd2VuZHVuZyBkZXIKK7tGb3JjZatcLU9wdGlvbmVuKS4gQmVpIGVpbmVyIEluc3RhbGxhdGlvbiB3ZXJkZW4gUG9zdGluc3RcLVNrcmlwdGUgdm9uCitQYWtldGVuLCBkaWUgaW0gRmVsZCC7RGVwZW5kczqrIGF1ZmdlZvxocnQgc2luZCwgdm9yIGRlbiBQb3N0aW5zdFwtU2tyaXB0ZW4KK2RlciBlaWdlbnRsaWNoZW4gUGFrZXRlIGF1c2dlZvxocnQuIEJlaSBkZXIgZ2VnZW50ZWlsaWdlbiBPcGVyYXRpb24sIGRlcgorUGFrZXRcLUVudGZlcm51bmcsIHdpcmQgZGFzIFByZXJtXC1Ta3JpcHQgZWluZXMgUGFrZXRlcyB2b3IgZGVuIFByZXJtXC1Ta3JpcHRlbgorZGVyIFBha2V0ZSBhdXNnZWb8aHJ0LCBkaWUgaW0gRmVsZCC7RGVwZW5kczqrIGF1ZmdlZvxocnQgc2luZC4KKy5UUCAKK1xmQlByZVwtRGVwZW5kczpcZlAgXGZJIFBha2V0bGlzdGVcZlAKK0xpc3RlIGFuIFBha2V0ZW4gZGllIGluc3RhbGxpZXJ0IFxmQnVuZFxmUCBrb25maWd1cmllcnQgc2VpbiBt/HNzZW4sIGJldm9yCitkaWVzZXMgUGFrZXQgaW5zdGFsbGllcnQgd2VyZGVuIGthbm4uIERpZXMgd2lyZCBub3JtYWxlcndlaXNlIGluIGRlbSBGYWxsCit2ZXJ3ZW5kZXQsIHdvIGRpZXNlcyBQYWtldCBlaW4gYW5kZXJlcyBQYWtldCB6dW0gQXVzZvxocmVuIHNlaW5lcworcHJlaW5zdFwtU2tyaXB0ZXMgYmVu9nRpZ3QuCisuVFAgCitcZkJSZWNvbW1lbmRzOlxmUCBcZkkgUGFrZXRsaXN0ZVxmUAorTGlzdGUgYW4gUGFrZXRlbiwgZGllIGluIGFsbGVuLCBhYmdlc2VoZW4gdm9uIHVuZ2V39mhubGljaGVuLCBJbnN0YWxsYXRpb25lbgorenVzYW1tZW4gYW5nZWZ1bmRlbiB3/HJkZW4uIERpZSBQYWtldHZlcndhbHR1bmdzc29mdHdhcmUgd2lyZCBkZW4gQmVudXR6ZXIKK3dhcm5lbiwgZmFsbHMgZXIgZWluIFBha2V0IG9obmUgZGllIGltIFxmQlJlY29tbWVuZHNcZlBcLUZlbGQgYXVmZ2Vm/GhydGVuCitQYWtldGUgaW5zdGFsbGllcnQuCisuVFAgCitcZkJTdWdnZXN0czpcZlAgXGZJIFBha2V0bGlzdGVcZlAKK0xpc3RlIGFuIFBha2V0ZW4gZGllIGVpbmVuIEJlenVnIHp1IGRpZXNlbSBoYWJlbiB1bmQgdmllbGxlaWNodCBzZWluZQorTvx0emxpY2hrZWl0IGVyd2VpdGVybiBr9m5udGVuLCBhYmVyIG9obmUgZGllIGRhcyB6dSBpbnN0YWxsaWVyZW5kZSBQYWtldAorcGVyZmVrdCBzaW5udm9sbCBpc3QuCisuTFAKK0RpZSBTeW50YXggZGVyIFxmQkRlcGVuZHNcZlAsIFxmQlByZVwtRGVwZW5kc1xmUCwgXGZCUmVjb21tZW5kc1xmUCB1bmQKK1xmQlN1Z2dlc3RzXGZQXC1GZWxkZXIgaXN0IGVpbmUgTGlzdGUgdm9uIEdydXBwZW4gdm9uIGFsdGVybmF0aXZlbiBQYWtldGVuLiBKZWRlCitHcnVwcGUgaXN0IGVpbmUgTGlzdGUgdm9uIGR1cmNoIHZlcnRpa2FsZSBTdHJpY2hlIChvZGVyILtQaXBlq1wtU3ltYm9sZSkgu3yrCitnZXRyZW5udGUgUGFrZXRlLiBEaWUgR3J1cHBlbiB3ZXJkZW4gZHVyY2ggS29tbWF0YSBnZXRyZW5udC4gS29tbWF0YSBt/HNzZW4KK2FscyC7VU5EqywgdmVydGlrYWxlIFN0cmljaGUgYWxzILtPREVSqyBnZWxlc2VuIHdlcmRlbiwgd29iZWkgZGllIHZlcnRpa2FsZW4KK1N0cmljaGUgc3TkcmtlciBiaW5kZW4uIEplZGVyIFBha2V0bmFtZSB3aXJkIG9wdGlvbmFsIGdlZm9sZ3Qgdm9uIGVpbmVyCitWZXJzaW9uc251bW1lclwtU3BlemlmaWthdGlvbiBpbiBLbGFtbWVybi4KKy5MUAorRWluZSBWZXJzaW9uc251bW1lciBrYW5uIG1pdCC7Pj6rIGJlZ2lubmVuLCBpbiBkaWVzZW0gRmFsbGUgcGFzc2VuCithbGxlIG5ldWVyZW4gVmVyc2lvbmVuLCB1bmQga2FubiBkaWUgRGViaWFuXC1QYWtldHJldmlzaW9uIChnZXRyZW5udCBkdXJjaAorZWluZW4gQmluZGVzdHJpY2gpIGVudGhhbHRlbiBvZGVyIGF1Y2ggbmljaHQuIEFremVwdGllcnRlCitWZXJzaW9uc2JlemllaHVuZ2VuIHNpbmQguz4+qyBm/HIgZ3L232VyIGFscywguzw8qyBm/HIKK2tsZWluZXIgYWxzLCC7Pj2rIGb8ciBncvbfZXIgYWxzIG9kZXIgaWRlbnRpc2NoIHp1LCC7PD2rIGb8ciBrbGVpbmVyCithbHMgb2RlciBpZGVudGlzY2ggenUgdW5kILs9qyBm/HIgaWRlbnRpc2NoIHp1LgorLlRQIAorXGZCQnJlYWtzOlxmUCBcZkkgUGFrZXRsaXN0ZVxmUAorTGlzdGUgUGFrZXRlbiBhdWYsIGRpZSB2b24gZGllc2VtIFBha2V0IGJlc2No5GRpZ3Qgd2VyZGVuLCB6dW0gQmVpc3BpZWwgaW4KK2RlbSBzaWUgRmVobGVyIHp1Z+RuZ2xpY2ggbWFjaGVuLCB3ZW5uIHNpY2ggZGFzIGFuZGVyZSBQYWtldCBhdWYgZGllc2VzCitQYWtldCB2ZXJs5HNzdC4gRGllIFBha2V0dmVyd2FsdHVuZ3Nzb2Z0d2FyZSB3aXJkIGVzIGJlc2No5GRpZ3RlbiBQYWtldGVuCituaWNodCBlcmxhdWJlbiwgc2ljaCB6dSBrb25maWd1cmllcmVuOyBpbSBBbGxnZW1laW5lbiB3aXJkIGRhcyBQcm9ibGVtCitiZWhvYmVuLCBpbmRlbSBlaW4gVXBncmFkZSBkZXMgaW0gXGZCQnJlYWtzXGZQXC1GZWxkIGF1ZmdlZvxocnRlbiBQYWtldHMKK2R1cmNoZ2Vm/GhydCB3aXJkLgorLlRQIAorXGZCQ29uZmxpY3RzOlxmUCBcZkkgUGFrZXRsaXN0ZVxmUAorTGlzdGUgYW4gUGFrZXRlbiwgZGllIG1pdCBkaWVzZW0gaW4gS29uZmxpa3Qgc3RlaGVuLCBiZWlzcGllbHN3ZWlzZSBpbmRlbQorYmVpZGUgRGF0ZWllbiBkZW4gZ2xlaWNoZW4gTmFtZW4gZW50aGFsdGVuLiBEaWUgUGFrZXR2ZXJ3YWx0dW5nc3NvZnR3YXJlCit3aXJkIGVzIG5pY2h0IGVybGF1YmVuLCBQYWtldGUsIGRpZSBpbiBLb25mbGlrdCBzdGVoZW4sIGdsZWljaHplaXRpZyB6dQoraW5zdGFsbGllcmVuLiBad2VpIGluIEtvbmZsaWt0IHN0ZWhlbmRlIFBha2V0ZSBzb2xsdGVuIGpld2VpbHMgZWluZQorXGZCQ29uZmxpY3RzXGZQXC1aZWlsZSBlbnRoYWx0ZW4sIGRpZSBkYXMgYW5kZXJlIFBha2V0IGVyd+RobmVuLgorLlRQIAorXGZCUmVwbGFjZXM6XGZQIFxmSVBha2V0bGlzdGVcZlAKK0xpc3RlIGFuIFBha2V0ZW4sIHZvbiBkZW5lbiBkaWVzZXMgRGF0ZWllbiBlcnNldHp0LiBEaWVzIHdpcmQgZGF6dQordmVyd2VuZGV0LCB1bSBkaWVzZW0gUGFrZXQgenUgZXJsYXViZW4sIERhdGVpZW4gdm9uIGVpbmVtIGFuZGVyZW4gUGFrZXQgenUKK2Vyc2V0emVuIHVuZCB3aXJkIGdld/ZobmxpY2ggbWl0IGRlbSBcZkJDb25mbGljdHNcZlBcLUZlbGQgdmVyd2VuZGV0LCB1bSBkaWUKK0VudGZlcm51bmcgZGVzIGFuZGVyZW4gUGFrZXRlcyB6dSBlcmxhdWJlbiwgZmFsbHMgZGllc2VzIGF1Y2ggZGllIGdsZWljaGVuCitEYXRlaWVuIHdpZSBkYXMgaW0gS29uZmxpa3Qgc3RlaGVuZGUgUGFrZXQgaGF0LgorLlRQIAorXGZCUHJvdmlkZXM6XGZQIFxmSSBQYWtldGxpc3RlXGZQCitEaWVzIGlzdCBlaW5lIExpc3RlIHZvbiB2aXJ0dWVsbGVuIFBha2V0ZW4sIGRpZSBkaWVzZXMgUGFrZXQKK2JlcmVpdHN0ZWxsdC4gR2V39mhubGljaCB3aXJkIGRpZXMgdmVyd2VuZGV0LCB3ZW5uIG1laHJlcmUgUGFrZXRlIGFsbGUgZGVuCitnbGVpY2hlbiBEaWVuc3QgYmVyZWl0c3RlbGxlbi4gQmVpc3BpZWxzd2Vpc2Uga/ZubmVuIFNlbmRtYWlsIHVuZCBFeGltIGFscworTWFpbHNlcnZlciBkaWVuZW4sIGRhaGVyIHN0ZWxsZW4gc2llIGVpbiBnZW1laW5zYW1lcyBQYWtldAorKLttYWlsXC10cmFuc3BvcnRcLWFnZW50qykgYmVyZWl0LCB2b24gZGVtIGFuZGVyZSBQYWtldGUgYWJo5G5nZW4ga/ZubmVuLiBEaWVzCitlcmxhdWJ0IGVzIFNlbmRtYWlsIG9kZXIgRXhpbSBhbHMgZ/xsdGlnZSBPcHRpb25lbiB6dXIgRXJm/GxsdW5nIGRlcgorQWJo5G5naWdrZWl0IHp1IGRpZW5lbi4gRGllcyB2ZXJoaW5kZXJ0LCBkYXNzIFBha2V0ZSwgZGllIHZvbiBlaW5lbQorRVwtTWFpbFwtU2VydmVyIGFiaORuZ2VuLCBhbGxlIFBha2V0bmFtZW4gZvxyIGFsbGUgRVwtTWFpbFwtU2VydmVyIHdpc3NlbiB1bmQKK7t8qyB6dXIgVW50ZXJ0ZWlsdW5nIGRlciBMaXN0ZSB2ZXJ3ZW5kZW4gbfxzc2VuLgorLkxQCitEaWUgU3ludGF4IHZvbiBcZkJCcmVha3NcZlAsIFxmQkNvbmZsaWN0c1xmUCwgXGZCUmVwbGFjZXNcZlAgdW5kIFxmQlByb3ZpZGVzXGZQIGlzdCBlaW5lCitMaXN0ZSB2b24gUGFrZXRuYW1lbiwgZ2V0cmVubnQgZHVyY2ggS29tbWF0YSAodW5kIG9wdGlvbmFsZW4KK0xlZXJ6ZWljaGVuKS4gSW0gXGZCQnJlYWtzXGZQXC0gdW5kIFxmQkNvbmZsaWN0c1xmUFwtRmVsZCBzb2xsdGUgZGFzIEtvbW1hIGFscworu09ERVKrIGdlbGVzZW4gd2VyZGVuLiBFaW5lIG9wdGlvbmFsZSBWZXJzaW9uIGthbm4gYXVjaCBtaXQgZGVyIGdsZWljaGVuCitTeW50YXggd2llIG9iZW4gZvxyIGRpZSBcZkJCcmVha3NcZlBcLSwgXGZCQ29uZmxpY3RzXGZQXC0gdW5kIFxmQlJlcGxhY2VzXGZQXC1GZWxkZXIKK2FuZ2VnZWJlbiB3ZXJkZW4uCisuCisuVFAgCitcZkJCdWlsdFwtVXNpbmc6XGZQIFxmSSBQYWtldGxpc3RlXGZQCitEaWVzZXMgRmVsZCBm/GhydCB6dXPkdHpsaWNoZSBRdWVsbHBha2V0ZSBhdWYsIGRpZSB35GhyZW5kIGRlcyBCYXVzIGRlcworQmlu5HJwYWtldHMgdmVyd2FuZHQgd3VyZGVuLiBEaWVzIGRpZW50IGFscyBIaW53ZWlzIGb8ciBkaWUKK0FyY2hpdnZlcndhbHR1bmdzc29mdHdhcmUsIGRhc3MgenVz5HR6bGljaGUgUXVlbGxwYWtldGUgdm9yaGFuZGVuIGJsZWliZW4KK238c3Nlbiwgd+RocmVuZCBkaWVzZXMgQmlu5HJwYWtldCBiZXRyZXV0IHdpcmQuIERpZXNlcyBGZWxkIG11c3MgZWluZSBMaXN0ZQordm9uIFF1ZWxscGFrZXRuYW1lbiBlbnRoYWx0ZW4sIGJlaSBkZW5lbiBlaW5lIHN0cmVuZ2UgVmVyc2lvbnNiZXppZWh1bmcgKD0pCithbmdlZ2ViZW4gaXN0LiBCZWFjaHRlbiBTaWUsIGRhc3MgZGllIEFyY2hpdnZlcndhbHR1bmdzc29mdHdhcmUKK3dhaHJzY2hlaW5saWNoIGVpbmVuIFVwbG9hZCBhYmxlaG5lbiB3aXJkLCBiZWkgZGVtIGVpbmUKK1xmQkJ1aWx0XC1Vc2luZ1xmUFwtQmV6aWVodW5nIGFuZ2VnZWJlbiB3dXJkZSwgZGllIGlubmVyaGFsYiBkZXMgQXJjaGl2cyBuaWNodAorZXJm/GxsdCB3ZXJkZW4ga2Fubi4KKy4KKy5TSCBCRUlTUElFTAorLlwiIC5SUworLm5mCisjIENvbW1lbnQKK1BhY2thZ2U6IGdyZXAKK0Vzc2VudGlhbDogeWVzCitQcmlvcml0eTogcmVxdWlyZWQKK1NlY3Rpb246IGJhc2UKK01haW50YWluZXI6IFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CitBcmNoaXRlY3R1cmU6IHNwYXJjCitWZXJzaW9uOiAyLjRcLTEKK1ByZVwtRGVwZW5kczogbGliYzYgKD49IDIuMC4xMDUpCitQcm92aWRlczogcmdyZXAKK0NvbmZsaWN0czogcmdyZXAKK0Rlc2NyaXB0aW9uOiBHTlUgZ3JlcCwgZWdyZXAgdW5kIGZncmVwLgorIERpZSBHTlVcLUZhbWlsaWUgZGVyIEdyZXBcLVdlcmt6ZXVnZSBr9m5udGUgZGllILtzY2huZWxsc3RlIGltIFdlc3Rlbqsgc2Vpbi4KKyBHTlUgR3JlcCBiYXNpZXJ0IGF1ZiBlaW5lbSBzY2hlbGxlbiC7bGF6eVwtc3RhdGUgZGV0ZXJtaW5pc3RpYyBtYXRjaGVyqworIChydW5kIHp3ZWltYWwgc28gc2NobmVsbCB3aWUgZGVyIHN0YW5kYXJkbeTfaWdlIFVuaXhcLUVncmVwKSBoeWJyaWRpc2llcnQKKyBtaXQgZWluZXIgQm95ZXJcLU1vb3JlXC1Hb3NwZXJcLVN1Y2hlIGb8ciBlaW5lIGZlc3RlIFplaWNoZW5rZXR0ZSwgZGllCisgdW5t9mdsaWNoZW4gVGV4dCB2b24gZGVyIEJldHJhY2h0dW5nIGR1cmNoIGRlbiB2b2xsZW4gu01hdGNoZXKrIHZlcmhpbmRlcnQKKyBvaG5lIG5vdHdlbmRpZ2Vyd2Vpc2UgamVkZXMgWmVpY2hlbiBhbnp1c2NoYXVlbi4gRGFzIEVyZ2VibmlzIGlzdAorIHR5cGlzY2hlcndlaXNlIHVtIGVpbiBtZWhyZmFjaGVzIFNjaG5lbGxlciBhbHMgVW5peCBHcmVwIG9kZXIgRWdyZXAuCisgKFJlZ3Vs5HJlIEF1c2Ry/GNrZSwgZGllIFL8Y2tyZWZlcmVuemllcnVuZ2VuIGVudGhhbHRlbiwgd2VyZGVuIGFsbGVyZGluZ3MKKyBsYW5nc2FtZXIgbGF1ZmVuLikKKy5maQorLlwiIC5SRQorLgorLlNIINxCRVJTRVRaVU5HCitEaWUgZGV1dHNjaGUg3GJlcnNldHp1bmcgd3VyZGUgMjAwNCwgMjAwNi0yMDExIHZvbiBIZWxnZSBLcmV1dHptYW5uCis8ZGViaWFuQGhlbGdlZmplbGwuZGU+LCAyMDA3IHZvbiBGbG9yaWFuIFJlaG5pc2NoIDxlaXhtYW5AZ214LmRlPiB1bmQKKzIwMDggdm9uIFN2ZW4gSm9hY2hpbSA8c3ZlbmpvYWNAZ214LmRlPgorYW5nZWZlcnRpZ3QuIERpZXNlINxiZXJzZXR6dW5nIGlzdCBGcmVpZSBEb2t1bWVudGF0aW9uOyBsZXNlbiBTaWUgZGllCitHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBWZXJzaW9uIDIgb2RlciBuZXVlciBm/HIgZGllIEtvcGllcmJlZGluZ3VuZ2VuLgorRXMgZ2lidCBLRUlORSBIQUZUVU5HLgorLlNIICJTSUVIRSBBVUNIIgorXGZCZGViXGZQKDUpLCBcZkJkZWJcLXZlcnNpb25cZlAoNSksIFxmQmRlYnRhZ3NcZlAoMSksIFxmQmRwa2dcZlAoMSksIFxmQmRwa2dcLWRlYlxmUCgxKS4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL2RlL2RlYi1leHRyYS1vdmVycmlkZS41IGIvZHBrZy0xLjE2LjEuMS9tYW4vZGUvZGViLWV4dHJhLW92ZXJyaWRlLjUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uM2FhZWJmYQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL2RlL2RlYi1leHRyYS1vdmVycmlkZS41CkBAIC0wLDAgKzEsNDQgQEAKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlRIIGRlYlwtZXh0cmFcLW92ZXJyaWRlIDUgMjAwOVwtMDhcLTE2IERlYmlhblwtUHJvamVrdCBkcGtnXC1IaWxmc3Byb2dyYW1tZQorLlNIIE5BTUUKK2RlYlwtZXh0cmFcLW92ZXJyaWRlIFwtIERlYmlhblwtQXJjaGl2ZSBadXNhdHpcLW92ZXJyaWRlXC1EYXRlaQorLgorLlNIINxCRVJTSUNIVAorb3ZlcnJpZGUKKy4KKy5TSCBCRVNDSFJFSUJVTkcKK1fkaHJlbmQgZGVyIEdyb990ZWlsIGRlciBJbmZvcm1hdGlvbmVuIPxiZXIgZWluIGJpbuRyZXMgb2RlciBRdWVsbHBha2V0IGluCitkZXIgRGF0ZWkgY29udHJvbC8uZHNjIGdlZnVuZGVuIHdlcmRlbiBrYW5uLCBrYW5uIGFsbGVzIGRhdm9uIPxiZXJzY2hyaWViZW4KK3dlcmRlbiwgd2VubiBlcyBpbiBkaWUgRGF0ZWllbiBQYWNrYWdlcy9Tb3VyY2VzIGV4cG9ydGllcnQgd2lyZC4gRGllCitadXNhdHpcLW92ZXJyaWRlXC1EYXRlaSBlbnRo5Gx0IGRpZXNlILvcYmVyc2NocmVpYnVuZ2VuqyAoZW5nbC4gb3ZlcnJpZGVzKS4KKy5QUAorRGllIFp1c2F0elwtb3ZlcnJpZGVcLURhdGVpIGhhdCBlaW4gZWluZmFjaGVzLCBkdXJjaCBMZWVyemVpY2hlbiBnZXRyZW5udGVzCitGb3JtYXQuIEtvbW1lbnRhcmUgc2luZCBlcmxhdWJ0IChhbmdlemVpZ3QgZHVyY2ggZWluIFxmQiNcZlApLgorLlBQCisuaW4gKzUKK1xmSVBha2V0XGZQIFxmSUZlbGRuYW1lXGZQIFxmSVdlcnRcZlAKKy5pbiAtNQorLlBQCitcZklQYWtldFxmUCBpc3QgZGVyIE5hbWUgZGVzIEJpbuRyXC0vUXVlbGxwYWtldHMuCisuUFAKK1xmSUZlbGRuYW1lXGZQIGlzdCBkZXIgTmFtZSBkZXMgRmVsZGVzLCBkYXMg/GJlcnNjaHJpZWJlbiB3aXJkLiBcZklXZXJ0XGZQIGlzdCBkZXIKK2luIGRhcyBGZWxkIHp1IHNldHplbmRlIFdlcnQuIEVyIGthbm4gTGVlcnplaWNoZW4gZW50aGFsdGVuLCBkYSBkaWUgWmVpbGUgaW4KK25pY2h0IG1laHIgYWxzIGRyZWkgU3BhbHRlbiBhdWZnZXRlaWx0IHdpcmQsIHdlbm4gc2llIGF1c2dld2VydGV0IHdpcmQuCisuUFAKK0RpZSBadXNhdHpcLW92ZXJyaWRlXC1EYXRlaWVuLCBkaWUgZvxyIGRpZSBFcnN0ZWxsdW5nIGRlciBvZmZpemllbGxlbgorUGFrZXRsaXN0ZSB2ZXJ3ZW5kZXQgd2VyZGVuLCBr9m5uZW4gaW0gXGZJaW5kaWNlc1xmUFwtVmVyemVpY2huaXMgYXVmIGplZGVtCitEZWJpYW5cLVNwaWVnZWwgZ2VmdW5kZW4gd2VyZGVuLgorLgorLlNIINxCRVJTRVRaVU5HCitEaWUgZGV1dHNjaGUg3GJlcnNldHp1bmcgd3VyZGUgMjAwNCwgMjAwNi0yMDExIHZvbiBIZWxnZSBLcmV1dHptYW5uCis8ZGViaWFuQGhlbGdlZmplbGwuZGU+LCAyMDA3IHZvbiBGbG9yaWFuIFJlaG5pc2NoIDxlaXhtYW5AZ214LmRlPiB1bmQKKzIwMDggdm9uIFN2ZW4gSm9hY2hpbSA8c3ZlbmpvYWNAZ214LmRlPgorYW5nZWZlcnRpZ3QuIERpZXNlINxiZXJzZXR6dW5nIGlzdCBGcmVpZSBEb2t1bWVudGF0aW9uOyBsZXNlbiBTaWUgZGllCitHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBWZXJzaW9uIDIgb2RlciBuZXVlciBm/HIgZGllIEtvcGllcmJlZGluZ3VuZ2VuLgorRXMgZ2lidCBLRUlORSBIQUZUVU5HLgorLlNIICJTSUVIRSBBVUNIIgorXGZCZHBrZ1wtc2NhbnBhY2thZ2VzXGZQKDEpLCBcZkJkcGtnXC1zY2Fuc291cmNlc1xmUCgxKSwgXGZCYXB0XC1mdHBhcmNoaXZlXGZQKDEpLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vZGUvZGViLW9sZC41IGIvZHBrZy0xLjE2LjEuMS9tYW4vZGUvZGViLW9sZC41Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmUwNmU1MTAKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9kZS9kZWItb2xkLjUKQEAgLTAsMCArMSw1NCBAQAorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlwiCisuXCIgVGhpcyBmaWxlIHdhcyBnZW5lcmF0ZWQgd2l0aCBwbzRhLiBUcmFuc2xhdGUgdGhlIHNvdXJjZSBmaWxlLgorLlwiCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuVEggZGViXC1vbGQgNSAyMDExXC0wOFwtMTQgRGViaWFuXC1Qcm9qZWt0IERlYmlhbgorLlNIIE5BTUUKK2RlYlwtb2xkIFwtIERlYmlhbiBCaW7kcnBha2V0Zm9ybWF0IGluIGFsdGVyIEF1c2b8aHJ1bmcKKy4KKy5TSCDcQkVSU0lDSFQKK1xmSURhdGVpbmFtZVxmUFxmQi5kZWJcZlAKKy4KKy5TSCBCRVNDSFJFSUJVTkcKK0RhcyBcZkIuZGViXGZQXC1Gb3JtYXQgaXN0IGRhcyBEZWJpYW4gQmlu5HJwYWtldGRhdGVpZm9ybWF0LiBEaWVzZSBIYW5kYnVjaHNlaXRlCitiZXNjaHJlaWJ0IGRhcyBcZkJhbHRlXGZQIEZvcm1hdCwgZGFzIHZvciBEZWJpYW4gMC45MyB2ZXJ3ZW5kZXQgd3VyZGUuIEJpdHRlCitsZXNlbiBTaWUgXGZCZGViXGZQKDUpIGb8ciBEZXRhaWxzIPxiZXIgZGFzIG5ldWUgRm9ybWF0LgorLgorLlNIIEZPUk1BVAorRGllIERhdGVpIGJlc3RlaHQgYXVzIHp3ZWkgWmVpbGVuIGFuIEZvcm1hdGluZm9ybWF0aW9uZW4gYWxzIEFTQ0lJXC1UZXh0LAorZ2Vmb2xndCB2b24gendlaSBhbmVpbmFuZGVyZ2Vo5G5ndGVuIHVzdGFyXC1EYXRlaWVuLgorLlBQCitEaWUgZXJzdGUgWmVpbGUgaXN0IGRpZSBGb3JtYXR2ZXJzaW9uc251bW1lciwgYXVmZ2Vm/GxsdCBhdWYgOCBTdGVsbGVuLCB1bmQKK2lzdCBcZkIwLjkzOTAwMFxmUCBm/HIgYWxsZSBBcmNoaXZlIGltIGFsdGVuIEZvcm1hdC4KKy5QUAorRGllIHp3ZWl0ZSBaZWlsZSBpc3QgZWluZSBkZXppbWFsZSBaZWljaGVua2V0dGUgKG9obmUgZvxocmVuZGUgTnVsbGVuKSwgZGllCitkaWUgTORuZ2UgZGVyIGVyc3RlbiBnemlwcHRlbiBUYXJcLURhdGVpIGFuZ2lidC4KKy5QUAorSmVkZSBkaWVzZXIgWmVpbGVuIHdpcmQgZHVyY2ggZWluIGVpbnplbG5lcyBaZWlsZW52b3JzY2h1YnplaWNoZW4KK2FiZ2VzY2hsb3NzZW4uCisuUFAKK0RpZSBlcnN0ZSBUYXJcLURhdGVpIGVudGjkbHQgZGllIFN0ZXVlcmluZm9ybWF0aW9uZW4gYWxzIGVpbmUgU2VyaWUgdm9uCitub3JtYWxlbiBEYXRlaWVuLiBEaWUgRGF0ZWkgXGZCY29udHJvbFxmUCBtdXNzIHZvcmhhbmRlbiBzZWluLCBkYSBzaWUgZGllCitLZXJuXC1TdGV1ZXJpbmZvcm1hdGlvbmVuIGVudGjkbHQuCisuUFAKK0luIGVpbmlnZW4gc2VociBhbHRlbiBBcmNoaXZlbiBr9m5uZW4gZGllIERhdGVpZW4gaW4gZGVyIFN0ZXVlclwtVGFyXC1EYXRlaQorb3B0aW9uYWwgaW4gZWluZW0gXGZCREVCSUFOXGZQXC1VbnRlcnZlcnplaWNobmlzIHNlaW4uIEluIGRpZXNlbSBGYWxsIGlzdCBkYXMKK1xmQkRFQklBTlxmUFwtVW50ZXJ2ZXJ6ZWljaG5pcyBhdWNoIGluIGRlciBTdGV1ZXJcLVRhclwtRGF0ZWksIHVuZCBkaWUKK1N0ZXVlclwtVGFyXC1EYXRlaSBoYXQgbnVyIERhdGVpZW4gaW4gZGllc2VtIFZlcnplaWNobmlzLiBPcHRpb25hbCBrYW5uIGRpZQorU3RldWVyXC1UYXJcLURhdGVpIGVpbmVuIEVpbnRyYWcgZvxyILtcZkIuXGZQqyBlbnRoYWx0ZW4sIGQuaC4gZvxyIGRhcyBha3R1ZWxsZQorVmVyemVpY2huaXMuCisuUFAKK0RpZSB6d2VpdGUgZ3ppcHB0ZSBUYXJcLURhdGVpIGlzdCBkYXMgRGF0ZWlzeXN0ZW1hcmNoaXYsIGRhcyBQZmFkbmFtZW4KK3JlbGF0aXYgenVtIFd1cnplbHZlcnplaWNobmlzIGRlcyBTeXN0ZW0sIGF1ZiBkZW0gaW5zdGFsbGllcnQgd2VyZGVuIHNvbGwsCitlbnRo5Gx0LiBEaWUgUGZhZG5hbWVuIGhhYmVuIGtlaW5lIGb8aHJlbmRlbiBTY2hy5GdzdHJpY2hlLgorLgorLlNIINxCRVJTRVRaVU5HCitEaWUgZGV1dHNjaGUg3GJlcnNldHp1bmcgd3VyZGUgMjAwNCwgMjAwNi0yMDExIHZvbiBIZWxnZSBLcmV1dHptYW5uCis8ZGViaWFuQGhlbGdlZmplbGwuZGU+LCAyMDA3IHZvbiBGbG9yaWFuIFJlaG5pc2NoIDxlaXhtYW5AZ214LmRlPiB1bmQKKzIwMDggdm9uIFN2ZW4gSm9hY2hpbSA8c3ZlbmpvYWNAZ214LmRlPgorYW5nZWZlcnRpZ3QuIERpZXNlINxiZXJzZXR6dW5nIGlzdCBGcmVpZSBEb2t1bWVudGF0aW9uOyBsZXNlbiBTaWUgZGllCitHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBWZXJzaW9uIDIgb2RlciBuZXVlciBm/HIgZGllIEtvcGllcmJlZGluZ3VuZ2VuLgorRXMgZ2lidCBLRUlORSBIQUZUVU5HLgorLlNIICJTSUVIRSBBVUNIIgorXGZCZGViXGZQKDUpLCBcZkJkcGtnXC1kZWJcZlAoMSksIFxmQmRlYlwtY29udHJvbFxmUCg1KS4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL2RlL2RlYi1vdmVycmlkZS41IGIvZHBrZy0xLjE2LjEuMS9tYW4vZGUvZGViLW92ZXJyaWRlLjUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZWMyODE4YwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL2RlL2RlYi1vdmVycmlkZS41CkBAIC0wLDAgKzEsNjQgQEAKKy5cIiBUaGlzIG1hbnBhZ2UgaXMgY29weXJpZ2h0IChDKSAxOTk2IE1pY2hhZWwgU2hpZWxkcyA8c2hpZWxkc0Bjcm9zc2xpbmsubmV0Pi4KKy5cIiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBtYXkgcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKy5cIiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorLlwiIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisuXCIgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKy5cIgorLlwiIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKy5cIiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorLlwiIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKy5cIiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorLlwiCisuXCIgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKy5cIiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlRIIGRlYlwtb3ZlcnJpZGUgNSAyMDExXC0wOFwtMTQgRGViaWFuXC1Qcm9qZWt0IGRwa2dcLUhpbGZzcHJvZ3JhbW1lCisuU0ggTkFNRQorZGViXC1vdmVycmlkZSBcLSBEZWJpYW5cLUFyY2hpdmUgb3ZlcnJpZGVcLURhdGVpCisuCisuU0gg3EJFUlNJQ0hUCitvdmVycmlkZQorLgorLlNIIEJFU0NIUkVJQlVORworV+RocmVuZCBkZXIgR3Jv33RlaWwgZGVyIEluZm9ybWF0aW9uZW4g/GJlciBlaW4gUGFrZXQgaW4gZGVyIFN0ZXVlcmRhdGVpCitnZWZ1bmRlbiB3ZXJkZW4ga2Fubiwgd2lyZCBlaW4gVGVpbCB2b24gZGVuIERpc3RyaWJ1dGlvbnN6YXJlbiB6ZW50cmFsIHN0YXR0Cit2b24gZGVuIEJldHJldWVybiB2ZXJ3YWx0ZXQsIHVtIGVpbmUgZ2V3aXNzZSBnbG9iYWVsIEtvbnNpc3RlbnogenUKK2JpZXRlbi4gRGllc2UgSW5mb3JtYXRpb25lbiBmaW5kZW4gc2ljaCBpbiBkZXIgb3ZlcnJpZGVcLURhdGVpLgorLlBQCitEaWUgb3ZlcnJpZGVcLURhdGVpIGhhdCBlaW4gZWluZmFjaGVzLCBkdXJjaCBMZWVyemVpY2hlbiBnZXRyZW5udGVzCitGb3JtYXQuIEtvbW1lbnRhcmUgc2luZCBlcmxhdWJ0IChhbmdlemVpZ3QgZHVyY2ggZWluIFxmQiNcZlApLgorLlBQCisuaW4gKzUKK1xmSVBha2V0XGZQIFxmSVByaW9yaXTkdFxmUCBcZklCZXJlaWNoXGZQIFtcZklCZXRyZXVlcmluZm9ybWF0aW9uXGZQXQorLmluIC01CisuUFAKK1xmSVBha2V0XGZQIGlzdCBkZXIgTmFtZSBkZXMgUGFrZXRzLiBFaW50cuRnZSBpbiBkZXIgb3ZlcnJpZGVcLURhdGVpIGb8ciBQYWtldGUsCitkaWUgbmljaHQgaW0gQmF1bSB2b24gQmlu5HJwYWtldGVuIGdlZnVuZGVuIHdlcmRlbiBr9m5uZW4sIHdlcmRlbiBpZ25vcmllcnQuCisuUFAKK1xmSVByaW9yaXTkdFxmUCB1bmQgXGZJQmVyZWljaFxmUCBlbnRzcHJlY2hlbiBkZW4gRmVsZGVybiBcZklwcmlvcml0eVxmUCB1bmQKK1xmSXNlY3Rpb25cZlAgZGVyIFN0ZXVlcmRhdGVpIGluIGRlbSAuZGViLiBEaWUgZXJsYXVidGVuIFdlcnRlIHdlcmRlbiBpbiBkZW4KK0RlYmlhblwtUmljaHRsaW5pZW4gKFxmSURlYmlhbiBwb2xpY3lcZlApIGF1ZmdlZvxocnQuCisuUFAKK1xmSUJldHJldWVyaW5mb3JtYXRpb25cZlAga2FubiwgZmFsbHMgdm9yaGFuZGVuLCBlbnR3ZWRlciBkZXIgTmFtZSBkZXMKK0JldHJldWVycyBm/HIgZWluIGJlZGluZ3VuZ3Nsb3NlcyDcYmVyc2NocmVpYmVuLCBvZGVyIGFuc29uc3RlbgorXGZJQWx0ZXJCZXRyZXVlclxmUCBcZkI9PlxmUCBcZklOZXVlckJldHJldWVyXGZQIHVtIGVpbmUgRXJzZXR6dW5nIGR1cmNoenVm/GhyZW4sCitzZWluLgorLlBQCitEaWUgb3ZlcnJpZGVcLURhdGVpZW4sIGRpZSBm/HIgZGllIEVyc3RlbGx1bmcgZGVyIG9mZml6aWVsbGVuIFBha2V0bGlzdGUKK3ZlcndlbmRldCB3ZXJkZW4sIGv2bm5lbiBpbSBcZklpbmRpY2VzXGZQXC1WZXJ6ZWljaG5pcyBhdWYgamVkZW0gRGViaWFuXC1TcGllZ2VsCitnZWZ1bmRlbiB3ZXJkZW4uCisuCisuU0gg3EJFUlNFVFpVTkcKK0RpZSBkZXV0c2NoZSDcYmVyc2V0enVuZyB3dXJkZSAyMDA0LCAyMDA2LTIwMTEgdm9uIEhlbGdlIEtyZXV0em1hbm4KKzxkZWJpYW5AaGVsZ2VmamVsbC5kZT4sIDIwMDcgdm9uIEZsb3JpYW4gUmVobmlzY2ggPGVpeG1hbkBnbXguZGU+IHVuZAorMjAwOCB2b24gU3ZlbiBKb2FjaGltIDxzdmVuam9hY0BnbXguZGU+CithbmdlZmVydGlndC4gRGllc2Ug3GJlcnNldHp1bmcgaXN0IEZyZWllIERva3VtZW50YXRpb247IGxlc2VuIFNpZSBkaWUKK0dOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIFZlcnNpb24gMiBvZGVyIG5ldWVyIGb8ciBkaWUgS29waWVyYmVkaW5ndW5nZW4uCitFcyBnaWJ0IEtFSU5FIEhBRlRVTkcuCisuU0ggIlNJRUhFIEFVQ0giCitcZkJkcGtnXC1zY2FucGFja2FnZXNcZlAoMSksIFxmQmRwa2dcLXNjYW5zb3VyY2VzXGZQKDEpLCBcZkJhcHRcLWZ0cGFyY2hpdmVcZlAoMSksCitcZkIvdXNyL3NoYXJlL2RvYy9kZWJpYW5cLXBvbGljeS9wb2xpY3kuaHRtbC9pbmRleC5odG1sXGZQLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vZGUvZGViLXNobGlicy41IGIvZHBrZy0xLjE2LjEuMS9tYW4vZGUvZGViLXNobGlicy41Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjU5YWZmZjgKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9kZS9kZWItc2hsaWJzLjUKQEAgLTAsMCArMSw2MyBAQAorLlwiIENvcHlyaWdodCDCqSAxOTk2IE1pY2hhZWwgU2hpZWxkcyA8c2hpZWxkc0Bjcm9zc2xpbmsubmV0PgorLlwiIENvcHlyaWdodCDCqSAyMDA4IFphY2sgV2VpbmJlcmcgPHphY2t3QHBhbml4LmNvbT4KKy5cIiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBtYXkgcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKy5cIiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorLlwiIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisuXCIgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKy5cIgorLlwiIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKy5cIiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorLlwiIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKy5cIiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorLlwiCisuXCIgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKy5cIiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlRIIGRlYlwtc2hsaWJzIDUgMjAwOFwtMDJcLTE3IERlYmlhblwtUHJvamVrdCBkcGtnXC1IaWxmc3Byb2dyYW1tZQorLlNIIE5BTUUKK2RlYlwtc2hsaWJzIFwtIERlYmlhbnMgSW5mb3JtYXRpb25zZGF0ZWkgZvxyIExhdWZ6ZWl0YmlibGlvdGhla2VuCisuCisuU0ggQkVTQ0hSRUlCVU5HCisuUFAKK1xmQnNobGlic1xmUFwtRGF0ZWllbiBiaWxkZW4gTGF1ZnplaXRiaWJsaW90aGVrbmFtZW4gdW5kIFwtdmVyc2lvbmVuIChcZklzb25hbWVzXGZQKQorYXVmIEFiaORuZ2lna2VpdGVuIGFiLCBkaWUgZvxyIGVpbmUgUGFrZXRzdGV1ZXJkYXRlaSBnZWVpZ25ldCBzaW5kLiBFcyBnaWJ0CitlaW5lbiBFaW50cmFnIHBybyBaZWlsZS4gTGVlcnplaWxlbiBzaW5kIFxmQm5pY2h0XGZQIGVybGF1YnQuIFplaWxlbiwgZGllIG1pdAorXGZCI1xmUCBiZWdpbm5lbiwgd2VyZGVuIGFscyBLb21tZW50YXJ6ZWlsZW4gYmV0cmFjaHRldCB1bmQgaWdub3JpZXJ0LiBBbGxlCithbmRlcmVuIFplaWxlbiBt/HNzZW4gZGVtIG5hY2hmb2xnZW5kZW4gRm9ybWF0IGZvbGdlbjoKKy5JUAorW1xmSVR5cFxmUFxmQjpcZlBdIFxmSUJpYmxpb3RoZWtcZlAgXGZJVmVyc2lvblxmUCBcZklBYmjkbmdpZ2tlaXRlblxmUAorLlBQCitEaWUgRmVsZGVyIFxmSUJpYmxpb3RoZWtcZlAgdW5kIFxmSVZlcnNpb25cZlAgd2VyZGVuIGR1cmNoIExlZXJ6ZWljaGVuIGJlZ3Jlbnp0LAorZGFzIEZlbGQgXGZJQWJo5G5naWdrZWl0ZW5cZlAgZ2VodCBhYmVyIGJpcyB6dW0gRW5kZSBkZXIgWmVpbGUuIERhcyBGZWxkIFxmSVR5cFxmUAoraXN0IG9wdGlvbmFsIHVuZCB3aXJkIG5vcm1hbGVyd2Vpc2UgbmljaHQgYmVu9nRpZ3QuCisuUFAKK0xlc2VuIFNpZSBkYXMgRGViaWFuXC1SaWNodGxpbmllbmhhbmRidWNoIChEZWJpYW4gUG9saWN5IE1hbnVhbCkgZvxyIHdlaXRlcmUKK0RldGFpbHMuCisuCisuU0ggQkVJU1BJRUxFCisuUFAKK0RpZSBcZkJzaGxpYnNcZlBcLURhdGVpIGb8ciBlaW4gdHlwaXNjaGVzIEJpYmxpb3RoZWtzcGFrZXQgbmFtZW5zIFxmSWxpYmNydW5jaDFcZlAsCitkYXMgZWluZSBCaWJsaW90aGVrIG1pdCBkZW0gU29uYW1lbiBcZklsaWJjcnVuY2guc28uMVxmUCBiZXJlaXRzdGVsbHQsIGv2bm50ZQord2llIGZvbGd0IGxhdXRlbjoKKy5JUAorbGliY3J1bmNoIDEgbGliY3J1bmNoMSAoPj0gMS4yXC0xKQorLlBQCitcZklBYmjkbmdpZ2tlaXRlblxmUCBtdXNzIGRpZSBuZXVzdGUgVmVyc2lvbiBkZXMgUGFrZXRzIGVyd+RobmVuLCBkYXMgbmV1ZW4KK1N5bWJvbGUgenUgZGVyIEJpYmxpb3RoZWsgaGluenVnZWb8Z3QgaGF0OiBpbSBvYmlnZW4gQmVpc3BpZWwgd3VyZGVuIG5ldWUKK1N5bWJvbGUgenUgVmVyc2lvbiAxLjIgdm9uIFxmSWxpYmNydW5jaFxmUCBoaW56dWdlZvxndC4gRGllcyBpc3QgbmljaHQgZGVyCitlaW56aWdlIEdydW5kLCBkYXNzIEFiaORuZ2lna2VpdGVuIGVuZ2VyIGdlZmFzc3Qgd2VyZGVuIG38c3NlbjsgYXVjaCBoaWVyCitnaWx0OiBMZXNlbiBTaWUgZGFzIERlYmlhblwtUmljaHRsaW5pZW5oYW5kYnVjaCBm/HIgRGV0YWlscy4KKy4KKy5TSCDcQkVSU0VUWlVORworRGllIGRldXRzY2hlINxiZXJzZXR6dW5nIHd1cmRlIDIwMDQsIDIwMDYtMjAxMSB2b24gSGVsZ2UgS3JldXR6bWFubgorPGRlYmlhbkBoZWxnZWZqZWxsLmRlPiwgMjAwNyB2b24gRmxvcmlhbiBSZWhuaXNjaCA8ZWl4bWFuQGdteC5kZT4gdW5kCisyMDA4IHZvbiBTdmVuIEpvYWNoaW0gPHN2ZW5qb2FjQGdteC5kZT4KK2FuZ2VmZXJ0aWd0LiBEaWVzZSDcYmVyc2V0enVuZyBpc3QgRnJlaWUgRG9rdW1lbnRhdGlvbjsgbGVzZW4gU2llIGRpZQorR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgVmVyc2lvbiAyIG9kZXIgbmV1ZXIgZvxyIGRpZSBLb3BpZXJiZWRpbmd1bmdlbi4KK0VzIGdpYnQgS0VJTkUgSEFGVFVORy4KKy5TSCAiU0lFSEUgQVVDSCIKK1xmQmRwa2dcLXNobGliZGVwc1xmUCgxKSwgXGZCZGViXC1zeW1ib2xzXGZQKDUpLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vZGUvZGViLXNwbGl0LjUgYi9kcGtnLTEuMTYuMS4xL21hbi9kZS9kZWItc3BsaXQuNQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40Nzg0ZTE1Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vZGUvZGViLXNwbGl0LjUKQEAgLTAsMCArMSw2NiBAQAorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlwiCisuXCIgVGhpcyBmaWxlIHdhcyBnZW5lcmF0ZWQgd2l0aCBwbzRhLiBUcmFuc2xhdGUgdGhlIHNvdXJjZSBmaWxlLgorLlwiCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuVEggZGViXC1zcGxpdCA1IDIwMTFcLTA3XC0wNCBEZWJpYW5cLVByb2pla3QgRGViaWFuCisuU0ggTkFNRQorZGViXC1zcGxpdCBcLSBtZWhydGVpbGlnZXMgRGViaWFuXC1CaW7kcnBha2V0Zm9ybWF0CisuU0gg3EJFUlNJQ0hUCitcZklEYXRlaW5hbWVcZlBcZkIuZGViXGZQCisuU0ggQkVTQ0hSRUlCVU5HCitEYXMgbWVocnRlaWxpZ2UgXGZCLmRlYlxmUFwtRm9ybWF0IHdpcmQgenVtIEF1ZnRlaWxlbiB2b24gZ3Jv32VuIFBha2V0ZW4gaW4KK2tsZWluZXJlIFN0/GNrZSB6dXIgRXJsZWljaHRlcnVuZyBkZXMgVHJhbnNwb3J0cyBhdWYga2xlaW5lbiBNZWRpZW4KK3ZlcndhbmR0LgorLlNIIEZPUk1BVAorRGllIERhdGVpIGlzdCBlaW4gXGZCYXJcZlBcLUFyY2hpdiBtaXQgZWluZXIgbWFnaXNjaGVuIFphaGwgdm9uCitcZkIhPGFyY2g+XGZQLiBEZXIgRGF0ZWluYW1lIGthbm4gKHNlaXQgRHBrZyAxLjE1LjYpIG1pdCBlaW5lbQorU2NocuRnc3RyaWNoIGFic2NobGll32VuLgorLlBQCitEYXMgZXJzdGUgTWl0Z2xpZWQgaGVp33QgXGZCZGViaWFuXC1zcGxpdFxmUCB1bmQgZW50aORsdCBlaW5lIFJlaWhlIHZvbiBaZWlsZW4sCitnZXRyZW5udCBkdXJjaCBMZWVyemVpbGVuLiBEZXJ6ZWl0IHNpbmQgYWNodCBaZWlsZW4gdm9yaGFuZGVuOgorLklQIFwoYnUgNAorRGllIEZvcm1hdHZlcnNpb25zbnVtbWVyLCB6dW0gWmVpdHB1bmt0IGRlciBFcnN0ZWxsdW5nIGRpZXNlciBIYW5kYnVjaHNlaXRlCitsYXV0ZXQgc2llIFxmQjIuMVxmUC4KKy5JUCBcKGJ1CitEZXIgUGFrZXRuYW1lLgorLklQIFwoYnUKK0RpZSBQYWtldHZlcnNpb24uCisuSVAgXChidQorRGllIE1kNXN1bSBkZXMgUGFrZXRzLgorLklQIFwoYnUKK0RpZSBHZXNhbXRncvbfZSBkZXMgUGFrZXRzLgorLklQIFwoYnUKK0RpZSBtYXhpbWFsZSBUZWlsZWdy9t9lCisuSVAgXChidQorRGllIGFrdHVlbGxlIFRlaWxlbnVtbWVyLCBnZWZvbGd0IHZvbiBlaW5lbSBTY2hy5GdzdHJpY2ggdW5kIGRlcgorR2VzYW10YW56YWhsIGFuIFRlaWxlbiAod2llIGluIFwob3ExLzEwXChjcSkuCisuSVAgXChidQorRGllIFBha2V0YXJjaGl0ZWt0dXIgKHNlaXQgRHBrZyAxLjE2LjEpLgorLlBQCitQcm9ncmFtbWUsIGRpZSBtZWhydGVpbGlnZSBBcmNoaXZlIGxlc2VuLCBzb2xsdGVuIGRhcmF1ZiB2b3JiZXJlaXRldCBzZWluLAorZGFzcyB6dXPkdHpsaWNoZSBaZWlsZW4gdm9yaGFuZGVuIHNlaW4ga/ZubmVuLCB1bmQgc29sbHRlbiBkaWVzZSBpZ25vcmllcmVuLAorZmFsbHMgZGllcyBkZXIgRmFsbCBpc3QuCisuUFAKK0ZhbGxzIHNpY2ggZGllIFZlcnNpb25zbnVtbWVyIGdl5G5kZXJ0IGhhdCwgd3VyZGUgZWluZSBpbmtvbXBhdGlibGUgxG5kZXJ1bmcKK2R1cmNoZ2Vm/GhydCB1bmQgZGFzIFByb2dyYW1tIHNvbGx0ZSBzaWNoIGJlZW5kZW4uIEZhbGxzIGRpZXMgbmljaHQgZGVyIEZhbGwKK2lzdCwgZGFubiBzb2xsdGUgZGFzIFByb2dyYW1tIHNpY2hlciBmb3J0ZmFocmVuIGv2bm5lbiwgZXMgc2VpIGRlbm4sIGVpbgordW5lcndhcnRldGVzIE1pdGdsaWVkIGlzdCBpbSBBcmNoaXYgKGFiZ2VzZWhlbiB2b20gRW5kZSkgZ2VmdW5kZW4gd29yZGVuLAord2llIHVudGVuIGJlc2NocmllYmVuLgorLlBQCitEYXMgendlaXRlLCBsZXR6dGUgYmVu9nRpZ3RlIE1pdGdsaWVkIGhlad90IFxmQmRhdGEuXGZQXGZJTlxmUCwgd29iZWkgXGZJTlxmUCBkaWUKK1RlaWxudW1tZXIgYW5naWJ0LiBFcyBlbnRo5Gx0IGRpZSByb2hlbiBEYXRlbiBkZXMgVGVpbHMuCisuUFAKK0RpZXNlIE1pdGdsaWVkZXIgbfxzc2VuIGluIGdlbmF1IGRpZXNlciBSZWloZW5mb2xnZSBhdWZ0YXVjaGVuLiBBa3R1ZWxsZQorSW1wbGVtZW50YXRpb25lbiBzb2xsdGVuIHp1c+R0emxpY2hlIE1pdGdsaWVkZXIgbmFjaCBcZkJkYXRhLlxmUFxmSU5cZlAKK2lnbm9yaWVyZW4uIFdlaXRlcmUgTWl0Z2xpZWRlciBr9m5udGVuIGluIGRlciBadWt1bmZ0IGRlZmluaWVydCB3ZXJkZW4gdW5kCit3ZXJkZW4gKGZhbGxzIG32Z2xpY2gpIG5hY2ggZGllc2VuIGRyZWkgcGxhdHppZXJ0LgorLlNIINxCRVJTRVRaVU5HCitEaWUgZGV1dHNjaGUg3GJlcnNldHp1bmcgd3VyZGUgMjAwNCwgMjAwNi0yMDExIHZvbiBIZWxnZSBLcmV1dHptYW5uCis8ZGViaWFuQGhlbGdlZmplbGwuZGU+LCAyMDA3IHZvbiBGbG9yaWFuIFJlaG5pc2NoIDxlaXhtYW5AZ214LmRlPiB1bmQKKzIwMDggdm9uIFN2ZW4gSm9hY2hpbSA8c3ZlbmpvYWNAZ214LmRlPgorYW5nZWZlcnRpZ3QuIERpZXNlINxiZXJzZXR6dW5nIGlzdCBGcmVpZSBEb2t1bWVudGF0aW9uOyBsZXNlbiBTaWUgZGllCitHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBWZXJzaW9uIDIgb2RlciBuZXVlciBm/HIgZGllIEtvcGllcmJlZGluZ3VuZ2VuLgorRXMgZ2lidCBLRUlORSBIQUZUVU5HLgorLlNIICJTSUVIRSBBVUNIIgorXGZCZGViXGZQKDUpLCBcZkJkcGtnXC1zcGxpdFxmUCgxKS4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL2RlL2RlYi1zcmMtY29udHJvbC41IGIvZHBrZy0xLjE2LjEuMS9tYW4vZGUvZGViLXNyYy1jb250cm9sLjUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNmE5NTQyMgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL2RlL2RlYi1zcmMtY29udHJvbC41CkBAIC0wLDAgKzEsMzE4IEBACisuXCIgQXV0aG9yOiBPeGFuIHZhbiBMZWV1d2VuCisuXCIgSW5jbHVkZXMgdGV4dCBmcm9tIHRoZSBkZWItY29udHJvbCBtYW51YWwgcGFnZSBieSBSYXVsIE1pbGxlcgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlwiCisuXCIgVGhpcyBmaWxlIHdhcyBnZW5lcmF0ZWQgd2l0aCBwbzRhLiBUcmFuc2xhdGUgdGhlIHNvdXJjZSBmaWxlLgorLlwiCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuVEggZGViXC1zcmNcLWNvbnRyb2wgNSAyMDExXC0wOFwtMTQgRGViaWFuXC1Qcm9qZWt0IERlYmlhbgorLlNIIE5BTUUKK2RlYlwtc3JjXC1jb250cm9sIFwtIERhdGVpZm9ybWF0IGRlciBIYXVwdHN0ZXVlcmRhdGVpIHZvbiBEZWJpYW5cLVF1ZWxscGFrZXRlbgorLgorLlNIINxCRVJTSUNIVAorY29udHJvbAorLgorLlNIIEJFU0NIUkVJQlVORworSmVkZXMgRGViaWFuXC1RdWVsbHBha2V0IGVuaORsdCBkaWUgSGF1cHRzdGV1ZXJkYXRlaSC7Y29udHJvbKssIGRpZQorbWluZGVzdGVucyB6d2VpIEFic+R0emUgZW50aORsdCwgZGllIGR1cmNoIGVpbmUgTGVlcnplaWxlIGdldHJlbm50Cit3ZXJkZW4uIERlciBlcnN0ZSBBYnNhdHogZvxocnQgYWxsZSBhbGxnZW1laW5lbiBJbmZvcm1hdGlvbmVuIPxiZXIgZGFzCitRdWVsbHBha2V0IGF1Ziwgd+RocmVuZCBqZWRlciBmb2xnZW5kZSBBYnNhdHogZ2VuYXUgZWluIEJpbuRycGFrZXQKK2Jlc2NocmVpYnQuIEplZGVyIEFic2F0eiBiZXN0ZWh0IGF1cyBtaW5kZXN0ZW5zIGVpbmVtIEZlbGQuIEVpbiBGZWxkIGJlZ2lubnQKK21pdCBlaW5lbSBGZWxkbmFtZW4sIHdpZSBcZkJQYWNrYWdlXGZQIG9kZXIgXGZCU2VjdGlvblxmUCAoR3Jv31wtL0tsZWluc2NocmVpYnVuZworZWdhbCksIGdlZm9sZ3Qgdm9uIGVpbmVtIERvcHBlbHB1bmt0LCBkZW0gSW5oYWx0IGRlcyBGZWxkZXMgdW5kIGVpbmVtCitaZWlsZW51bWJydWNoLiBNZWhyemVpbGlnZSBGZWxkZXIgc2luZCBhdWNoIGVybGF1YnQsIGFiZXIgamVkZSBlcmfkbnplbmRlCitaZWlsZSBvaG5lIEZlbGRuYW1lbiBzb2xsdGUgbWl0IG1pbmRlc3RlbnMgZWluZW0gTGVlcnplaWNoZW4gYmVnaW5uZW4uIERlcgorSW5oYWx0IGRlcyBtZWhyemVpbGlnZW4gRmVsZGVzIHdpcmQgZHVyY2ggZGllIFdlcmt6ZXVnZSBpbSBBbGxnZW1laW5lbiB6dQorZWluZXIgWmVpbGUgenVzYW1tZW5nZWb8aHJ0IChkYXMgRmVsZCBcZkJEZXNjcmlwdGlvblxmUCBpc3QgZWluZSBBdXNuYWhtZSwKK3NpZWhlIHVudGVuKS4gVW0gTGVlcnplaWxlbiBpbiBlaW4gbWVocnplaWxpZ2VzIEZlbGQgZWluenVm/GdlbiwgdmVyd2VuZGVuCitTaWUgZWluZW4gU2F0enB1bmt0IG5hY2ggZGVtIExlZXJ6ZWljaGVuLiBaZWlsZW4sIGRpZSBtaXQgXGZCuyOrXGZQIGJlZ2lubmVuLAord2VyZGVuIGFscyBLb21tZW50YXJlIGJldHJhY2h0ZXQuCisuCisuU0ggUVVFTExQQUtFVFwtRkVMREVSCisuVFAgCitcZkJTb3VyY2U6XGZQIFxmSVF1ZWxscGFrZXRuYW1lXGZQICh2ZXJwZmxpY2h0ZW5kKQorRGVyIFdlcnQgZGllc2VzIEZlbGRlcyBpc3QgZGVyIE5hbWUgZGVzIFF1ZWxscGFrZXRzIHVuZCBzb2xsdGUgbWl0IGRlbSBOYW1lbgorZGVzIFF1ZWxscGFrZXRzIGluIGRlciBEYXRlaSBkZWJpYW4vY2hhbmdlbG9nIPxiZXJlaW5zdGltbWVuLiBFaW4gUGFrZXRuYW1lCitkYXJmIG51ciBhdXMgS2xlaW5idWNoc3RhYmVuIChhXC16KSwgWmlmZmVybiAoMFwtOSksIFBsdXNcLSAoKykgdW5kCitNaW51c3plaWNoZW4gKFwtKSB1bmQgU2F0enB1bmt0ZW4gKC4pIGJlc3RlaGVuLiBQYWtldG5hbWVuIG38c3NlbiBtaW5kZXN0ZW5zCit6d2VpIFplaWNoZW4gbGFuZyBzZWluIHVuZCBtaXQgZWluZW0gYWxwaGFudW1lcmlzY2hlbiBaZWljaGVuIGJlZ2lubmVuLgorCisuVFAgCitcZkJNYWludGFpbmVyOlxmUCBcZklWb2xsc3TkbmRpZ2VyXC1OYW1lXC11bmRcLUVcLU1haWxcZlAgKHZlcnBmbGljaHRlbmQpCitTb2xsdGUgaW4gZGVtIEZvcm1hdCC7Sm9lIEJsb2dncyA8amJsb2dnc0Bmb28uY29tPqsgc2VpbiB1bmQKK3ZlcndlaXN0IGF1ZiBkaWUgUGVyc29uLCBkaWUgZGVyemVpdCBkYXMgUGFrZXQgYmV0cmV1dCwgaW0gR2VnZW5zYXR6IHp1bQorQXV0b3IgZGVyIFNvZnR3YXJlLCBkaWUgcGFrZXRpZXJ0IHd1cmRlLCBvZGVyIGRlbSB1cnNwcvxuZ2xpY2hlbiBQYWtldGllcmVyLgorCisuVFAgCitcZkJVcGxvYWRlcnM6XGZQXGZJIFZvbGxzdORuZGlnZXJcLU5hbWVcLXVuZFwtRVwtTWFpbFxmUAorTGlzdGV0IGRpZSBOYW1lbiB1bmQgRVwtTWFpbFwtQWRyZXNzZW4gZGVyIEtvXC1CZXRyZXVlciBkZXMgUGFrZXRzIGF1ZiwgaW0KK2dsZWljaGVuIEZvcm1hdCB3aWUgZGFzIEZlbGQgu01haW50YWluZXKrLiBNZWhyZXJlIEtvXC1CZXRyZXVlciBzb2xsdGVuIGR1cmNoCitLb21tYXRhIGdldHJlbm50IHdlcmRlbi4KKworLlRQIAorXGZCU3RhbmRhcmRzXC1WZXJzaW9uOlxmUCBcZkkgVmVyc2lvbnN6ZWljaGVua2V0dGVcZlAKK0RpZXMgZG9rdW1lbnRpZXJ0IGRpZSBuZXVzdGUgVmVyc2lvbiBkZXIgU3RhbmRhcmRzIChkaWUgYXVzIGRlbQorRGViaWFuXC1SaWNodGxpbmllbmhhbmRidWNoIHVuZCBkZW4gYXVzIGRlbSBQYWtldCBcZkJkZWJpYW5cLXBvbGljeVxmUAorcmVmZXJlbnppZXJ0ZW4gVGV4dGVuIGJlc3RlaHQpLCBhbiBkZW4gc2ljaCBkYXMgUGFrZXQgaORsdC4KKworLlRQIAorXGZCRE1cLVVwbG9hZFwtQWxsb3dlZDpcZlAgXGZCeWVzXGZQfFxmQm5vXGZQCitEaWVzZXMgRmVsZCBnaWJ0IGFuLCBvYiBkYXMgUGFrZXQgdm9uIGVpbmVtIERlYmlhblwtQmV0cmV1ZXIsIGRlciBpbSBGZWxkCiu7TWFpbnRhaW5lcqsgb2RlciC7VXBsb2FkZXKrIGF1ZnRhdWNodCwgaG9jaGdlbGFkZW4gd2VyZGVuIGthbm4uIERlcgorU3RhbmRhcmR3ZXJ0IGlzdCC7bm+rIChuZWluKS4KKworLlRQIAorXGZCSG9tZXBhZ2U6XGZQXGZJIFVSTFxmUAorRGllIFVSTCBkZXMgT3JpZ2luYWxcLSAoVXBzdHJlYW1cLSlQcm9qZWt0cy4KKworLlRQIAorXGZCQnVnczpcZlBcZkkgVVJMXGZQCitEaWUgXGZJVVJMXGZQIGRlciBGZWhsZXJkYXRlbmJhbmsgZvxyIGRpZXNlcyBQYWtldC4gRGFzIGRlcnplaXQgdmVyd2VuZGV0ZQorRm9ybWF0IGlzdCBcZklCVFNcLUFydFxmUFxmQjovL1xmUFxmSUJUU1wtQWRyZXNzZVxmUCB3aWUgaW4KK1xmQmRlYmJ1Z3M6Ly9idWdzLmRlYmlhbi5vcmdcZlAuIERpZXNlcyBGZWxkIHdpcmQgbm9ybWFsZXJ3ZWlzZSBuaWNodCBiZW72dGlndC4KKworLlRQIAorXGZCVmNzXC0qOlxmUCBcZkkgVVJMXGZQCitEaWUgXGZJVVJMXGZQIGRlcyBWZXJzaW9uc2tvbnRyb2xsc3lzdGVtXC1EZXBvdHMsIGRhcyBm/HIgZGllIEJldHJldXVuZyBkZXMKK1Bha2V0cyB2ZXJ3YW5kdCB3aXJkLiBEZXJ6ZWl0IHdlcmRlbiBcZkJBcmNoXGZQLCBcZkJCenJcZlAgKEJhemFhciksIFxmQkN2c1xmUCwKK1xmQkRhcmNzXGZQLCBcZkJHaXRcZlAsIFxmQkhnXGZQIChNZXJjdXJpYWwpLCBcZkJNdG5cZlAgKE1vbm90b25lKSB1bmQgXGZCU3ZuXGZQCisoU3VidmVyc2lvbikgdW50ZXJzdPx0enQuIE5vcm1hbGVyd2Vpc2UgemVpZ3QgZGllc2VzIEZlbGQgYXVmIGRpZSBuZXVzdGUKK1ZlcnNpb24gZGVzIFBha2V0cywgd2llIGRlbiBIYXVwdHp3ZWlnIG9kZXIgZGVuIFRydW5rLgorCisuVFAgCitcZkJWY3NcLUJyb3dzZXI6XGZQIFxmSSBVUkxcZlAKK0RpZSBcZklVUkxcZlAgZGVyIFdlYnNjaG5pdHRzdGVsbGUsIHVtIGRhcyBWZXJzaW9uc2tvbnRyb2xsc3lzdGVtXC1EZXBvdAorYW56dXNjaGF1ZW4uCisKKy5UUCAKK1xmQk9yaWdpbjpcZlBcZkkgTmFtZVxmUAorRGVyIE5hbWUgZGVyIERpc3RyaWJ1dGlvbiwgYXVzIGRlciBkaWVzZXMgUGFrZXQgdXJzcHL8bmdsaWNoIHN0YW1tdC4gRGllc2VzCitGZWxkIHdpcmQgbm9ybWFsZXJ3ZWlzZSBuaWNodCBiZW72dGlndC4KKworLlRQIAorXGZCU2VjdGlvbjpcZlBcZkkgQmVyZWljaFxmUAorRGllcyBpc3QgZWluIGFsbGdlbWVpbmVzIEZlbGQsIGRhcyBkZW0gUGFrZXQgZWluZSBLYXRlZ29yaWUgZ2lidCwgYmFzaWVyZW5kCithdWYgZGVyIFNvZnR3YXJlLCBkaWUgZXMgaW5zdGFsbGllcnQuIEVpbmlnZSD8YmxpY2hlIEJlcmVpY2hlIHNpbmQgu3V0aWxzqywKK7tuZXSrLCC7bWFpbKssILt0ZXh0qywgu3gxMasgdXN3LgorCisuVFAgCitcZkJQcmlvcml0eTpcZlBcZkkgUHJpb3JpdOR0XGZQCitTZXR6dCBkaWUgQmVkZXV0dW5nIGRpZXNlcyBQYWtldHMgaW4gQmV6dWcgenUgZGVtIEdlc2FtdHN5c3RlbS4g3GJsaWNoZQorUHJpb3JpdOR0ZW4gc2luZCC7cmVxdWlyZWSrLCC7c3RhbmRhcmSrLCC7b3B0aW9uYWyrLCC7ZXh0cmGrIHVzdy4KKworSW4gRGViaWFuIGhhYmVuIGRpZSBcZkJTZWN0aW9uXGZQXC0gdW5kIFxmQlByaW9yaXR5XGZQXC1GZWxkZXIgZWluZW4gZGVmaW5pZXJ0ZW4KK1NhdHogYW4gYWt6ZXB0aWVydGVuIFdlcnRlbiwgYmFzaWVyZW5kIGF1ZiBkZW0gUmljaHRsaW5pZW5cLUhhbmRidWNoLiBFaW5lCitMaXN0ZSBkaWVzZXIgV2VydGUga2FubiBhdXMgZGVyIG5ldXN0ZW4gVmVyc2lvbiBkZXMgUGFrZXRzIFxmQmRlYmlhblwtcG9saWN5XGZQCitlcmhhbHRlbiB3ZXJkZW4uCisKKy5UUCAKK1xmQkJ1aWxkXC1EZXBlbmRzOlxmUCBcZkkgUGFrZXRsaXN0ZVxmUAorRWluZSBMaXN0ZSBkZXIgUGFrZXRlLCBkaWUgaW5zdGFsbGllcnQgdW5kIGtvbmZpZ3VyaWVydCBzZWluIG38c3NlbiwgdW0gZGFzCitRdWVsbHBha2V0IHp1IGJhdWVuLgorCisuVFAgCitcZkJCdWlsZFwtRGVwZW5kc1wtSW5kZXA6XGZQIFxmSSBQYWtldGxpc3RlXGZQCitJZGVudGlzY2ggenUgXGZCQnVpbGRcLURlcGVuZHNcZlAsIHdpcmQgYWJlciBudXIgenVtIEJhdSBkZXIKK2FyY2hpdGVrdHVydW5hYmjkbmdpZ2VuIFBha2V0ZSBiZW72dGlndC4gSW4gZGllc2VtIEZhbGwgc2luZCBkaWUKK1xmQkJ1aWxkXC1EZXBlbmRzXGZQIGF1Y2ggaW5zdGFsbGllcnQuCisKKy5UUCAKK1xmQkJ1aWxkXC1Db25mbGljdHM6XGZQIFxmSSBQYWtldGxpc3RlXGZQCitFaW5lIExpc3RlIHZvbiBQYWtldGVuLCBkaWUgYmVpbSBCYXUgZGVzIFBha2V0cyBuaWNodCBpbnN0YWxsaWVydCBzZWluCitzb2xsdGVuLCBiZWlzcGllbHN3ZWlzZSBkYSBzaWUgbWl0IGRlbSB2ZXJ3YW5kdGVuIEJhdXN5c3RlbSBpbiBLb25mbGlrdAorZ2VyYXRlbi4KKworLlRQIAorXGZCQnVpbGRcLUNvbmZsaWN0c1wtSW5kZXA6XGZQIFxmSSBQYWtldGxpc3RlXGZQCitJZGVudGlzY2ggenUgXGZCQnVpbGRcLUNvbmZsaWN0c1xmUCwgd2lyZCBhYmVyIG51ciB6dW0gQmF1IGRlcgorYXJjaGl0ZWt0dXJ1bmFiaORuZ2lnZW4gUGFrZXRlIGJlbvZ0aWd0LgorCitEaWUgU3ludGF4IGRlciBGZWxkZXIgXGZCQnVpbGRcLURlcGVuZHNcZlAgdW5kIFxmQkJ1aWxkXC1EZXBlbmRzXC1JbmRlcFxmUCBpc3QgZWluZQorTGlzdGUgdm9uIEdydXBwZW4gdm9uIGFsdGVybmF0aXZlbiBQYWtldGVuLiBKZWRlIEdydXBwZSBpc3QgZWluZSBMaXN0ZSB2b24KK2R1cmNoIHZlcnRpa2FsZSBTdHJpY2hlIChvZGVyILtQaXBlq1wtU3ltYm9sZSkgu3yrIGdldHJlbm50ZSBQYWtldGUuIERpZQorR3J1cHBlbiB3ZXJkZW4gZHVyY2ggS29tbWF0YSBnZXRyZW5udC4gS29tbWF0YSBt/HNzZW4gYWxzILtVTkSrLCB2ZXJ0aWthbGUKK1N0cmljaGUgYWxzILtPREVSqyBnZWxlc2VuIHdlcmRlbiwgd29iZWkgZGllIHZlcnRpa2FsZW4gU3RyaWNoZSBzdORya2VyCitiaW5kZW4uIEplZGVyIFBha2V0bmFtZSB3aXJkIG9wdGlvbmFsIGdlZm9sZ3Qgdm9uIGVpbmVyCitWZXJzaW9uc251bW1lclwtU3BlemlmaWthdGlvbiBpbiBLbGFtbWVybiB1bmQgZWluZXIgQXJjaGl0ZWt0dXJzcGV6aWZpa2F0aW9uCitpbiBlY2tpZ2VuIEtsYW1tZXJuLgorCitTeW50YXh0aXNjaCB3ZXJkZW4gZGllIEZlbGRlciBcZkJCdWlsZFwtQ29uZmxpY3RzXGZQIHVuZAorXGZCQnVpbGRcLUNvbmZsaWN0c1wtSW5kZXBcZlAgZHVyY2ggZWluZSBLb21tYVwtc2VwYXJpZXJ0ZSBMaXN0ZSB2b24gUGFrZXRuYW1lbgorZGFyZ2VzdGVsbHQsIHdvYmVpIGRhcyBLb21tYSBhbHMgu1VORKsgdmVyc3RhbmRlbiB3aXJkLiBEaWUgQW5nYWJlCithbHRlcm5hdGl2ZXIgUGFrZXRlIG1pdCBkZW0gu1BpcGWrXC1TeW1ib2wgd2lyZCBuaWNodCB1bnRlcnN0/HR6dC4gSmVkZW0KK1Bha2V0bmFtZW4gZm9sZ3Qgb3B0aW9uYWwgZWluZSBWZXJzaW9ubnVtbWVyYW5nYWJlIGluIEtsYW1tZXJuIHVuZCBlaW5lCitBcmNoaXRla3R1cnNwZXppZmlrYXRpb24gaW4gZWNraWdlbiBLbGFtbWVybi4KKworRWluZSBWZXJzaW9uc251bW1lciBrYW5uIG1pdCC7Pj6rIGJlZ2lubmVuLCBpbiBkaWVzZW0gRmFsbGUgcGFzc2VuCithbGxlIG5ldWVyZW4gVmVyc2lvbmVuLCB1bmQga2FubiBkaWUgRGViaWFuXC1QYWtldHJldmlzaW9uIChnZXRyZW5udCBkdXJjaAorZWluZW4gQmluZGVzdHJpY2gpIGVudGhhbHRlbiBvZGVyIGF1Y2ggbmljaHQuIEFremVwdGllcnRlCitWZXJzaW9uc2JlemllaHVuZ2VuIHNpbmQguz4+qyBm/HIgZ3L232VyIGFscywguzw8qyBm/HIKK2tsZWluZXIgYWxzLCC7Pj2rIGb8ciBncvbfZXIgYWxzIG9kZXIgaWRlbnRpc2NoIHp1LCC7PD2rIGb8ciBrbGVpbmVyCithbHMgb2RlciBpZGVudGlzY2ggenUgdW5kILs9qyBm/HIgaWRlbnRpc2NoIHp1LgorCitFaW5lIEFyY2hpdGVrdHVyc3BlemlmaWthdGlvbiBiZXN0ZWh0IGF1cyBlaW5lciBvZGVyIG1laHJlcmVuIGR1cmNoCitMZWVyemVpY2hlbiBnZXRyZW5udGVuIEFyY2hpdGVrdHVybmFtZW4uIEplZGVtIE5hbWVuIGRhcmYgZWluIEF1c3J1ZmV6ZWljaGVuCit2b3Jhbmdlc3RlbGx0IHdlcmRlbiwgZGFzILtOSUNIVKsgYmVkZXV0ZXQuCisKK0JlYWNodGVuIFNpZSwgZGFzcyBkaWUgQWJo5G5naWdrZWl0ZW4gdm9uIFBha2V0ZW4gYXVzIGRlciBNZW5nZSBkZXIKK1xmQmJ1aWxkXC1lc3NlbnRpYWxcZlAgZW50ZmFsbGVuIGthbm4gdW5kIGRpZSBBbmdhYmUgdm9uIEJhdWtvbmZsaWt0ZW4gZ2VnZW4gc2llCituaWNodCBt9mdsaWNoIGlzdC4gRWluZSBMaXN0ZSBkaWVzZXIgUGFrZXRlIGJlZmluZGV0IHNpY2ggaW0gUGFrZXQKK2J1aWxkXC1lc3NlbnRpYWwuCisKKworLlNIIEJJTsRSUEFLRVRcLUZFTERFUgorCisuTFAKK0JlYWNodGVuIFNpZSwgZGFzcyBkaWUgRmVsZGVyIFxmQlByaW9yaXR5XGZQLCBcZkJTZWN0aW9uXGZQIHVuZCBcZkJIb21lcGFnZVxmUCBzaWNoCithdWNoIGltIEJpbuRycHJvZ3JhbW1hYnNhdHogYmVmaW5kZW4ga/ZubmVuLCB1bSBkaWUgZ2xvYmFsZW4gV2VydGUgZGVzCitRdWVsbHBha2V0cyB6dSD8YmVyc2NocmVpYmVuLgorCisuVFAgCitcZkJQYWNrYWdlOlxmUCBcZklCaW7kcnBha2V0bmFtZVxmUCAodmVycGZsaWNodGVuZCkKK0RpZXNlcyBGZWxkIHdpcmQgenVyIEFuZ2FiZSBkZXMgQmlu5HJwYWtldG5hbWVucyB2ZXJ3YW5kdC4gRXMgZ2VsdGVuIGRpZQorZ2xlaWNoZW4gRWluc2NocuRua3VuZ2VuIHdpZSBiZWltIFF1ZWxscGFrZXRuYW1lbi4KKworLlRQIAorXGZCQXJjaGl0ZWN0dXJlOlxmUCBcZklhcmNoXGZQfFxmQmFsbFxmUHxcZkJhbnlcZlAgKHZlcnBmbGljaHRlbmQpCitEaWUgQXJjaGl0ZWt0dXIgZ2lidCBhbiwgYXVmIHdlbGNoZXIgQXJ0IHZvbiBIYXJkd2FyZSBkaWVzZXMgUGFrZXQKK2zkdWZ0LiBCZWkgUGFrZXRlbiwgZGllIGF1ZiBhbGxlbiBBcmNoaXRla3R1cmVuIGxhdWZlbiwgdmVyd2VuZGVuIFNpZSBkZW4KK1dlcnQgXGZCYW55XGZQLiBG/HIgUGFrZXRlLCBkaWUgYXJjaGl0ZWt0dXJ1bmFiaORuZ2lnIHNpbmQsIHdpZSBTaGVsbFwtIHVuZAorUGVybFwtU2tyaXB0ZSBvZGVyIERva3VtZW50YXRpb24sIHZlcndlbmRlbiBTaWUgZGVuIFdlcnQgXGZCYWxsXGZQLiBVbSBkYXMgUGFrZXQKK2b8ciBlaW5lbiBiZXN0aW1tdGVuIFNhdHogdm9uIEFyY2hpdGVrdHVyZW4genUgYmVncmVuemVuLCBnZWJlbiBTaWUgZGllCitkdXJjaCBMZWVyemVpY2hlbiBnZXRyZW5udGVuIE5hbWVuIGRlciBBcmNoaXRla3R1cmVuIGFuLiBFcyBpc3QgYXVjaAorbfZnbGljaCwgUGxhdHpoYWx0ZXIgZvxyIEFyY2hpdGVrdHVyZW4gaW4gZGllc2VyIExpc3RlIGFuenVnZWJlbiAobGVzZW4gU2llCitcZkJkcGtnXC1hcmNoaXRlY3R1cmVcZlAoMSkgZvxyIHdlaXRlcmUgSW5mb3JtYXRpb25lbiBkYXp1KS4KKworLlRQIAorXGZCUGFja2FnZVwtVHlwZTpcZlAgXGZCZGViXGZQfFxmQnVkZWJcZlAKK0RpZXNlcyBGZWxkIGRlZmluaWVydCBkaWUgQXJ0IGRlcyBQYWtldHMuILt1ZGViqyBpc3QgZvxyIGdy9t9lbmJlZ3Jlbnp0ZQorUGFrZXRlLCB3aWUgc2llIHZvbSBEZWJpYW5cLUluc3RhbGxlciB2ZXJ3YW5kdCB3ZXJkZW4uILtkZWKrIGlzdCBkZXIKK1N0YW5kYXJkd2VydCwgZXIgd2lyZCBhbmdlbm9tbWVuLCBmYWxscyBkYXMgRmVsZCBmZWhsdC4gV2VpdGVyZSBUeXBlbgora/ZubnRlbiBpbiBkZXIgWnVrdW5mdCBoaW56dWdlZvxndCB3ZXJkZW4uCisKKy5UUCAKKy5QRCAwCitcZkJTdWJhcmNoaXRlY3R1cmU6XGZQIFxmSSBXZXJ0XGZQCisuVFAgCisuUEQgMAorXGZCS2VybmVsXC1WZXJzaW9uOlxmUCBcZkkgV2VydFxmUAorLlRQIAorLlBEIDAKK1xmQkluc3RhbGxlclwtTWVudVwtSXRlbTpcZlAgXGZJIFdlcnRcZlAKK0RpZXNlIEZlbGRlciB3ZXJkZW4gaW0gRGViaWFuXC1JbnN0YWxsZXIgdmVyd2FuZHQgdW5kIHdlcmRlbiBub3JtYWxlcndlaXNlCituaWNodCBiZW72dGlndC4gTGVzZW4gU2llIC91c3Ivc2hhcmUvZG9jL2RlYmlhblwtaW5zdGFsbGVyL2RldmVsL21vZHVsZXMudHh0CithdXMgZGVtIFBha2V0IFxmQmRlYmlhblwtaW5zdGFsbGVyXGZQIGb8ciB3ZWl0ZXJlIEluZm9ybWF0aW9uZW4g/GJlciBzaWUuCisKKy5UUCAKKy5QRCAwCitcZkJFc3NlbnRpYWw6XGZQIFxmQnllc1xmUHxcZkJub1xmUAorLlRQIAorLlBEIDAKK1xmQk11bHRpXC1BcmNoOlxmUCBcZkJzYW1lXGZQfFxmQmZvcmVpZ25cZlB8XGZCYWxsb3dlZFxmUAorLlRQIAorLlBEIDAKK1xmQlRhZzpcZlAgXGZJIExpc3RlXC12b25cLU1hcmtpZXJ1bmdlblxmUAorLlRQIAorLlBEIDAKK1xmQkRlc2NyaXB0aW9uOlxmUCBcZklLdXJ6YmVzY2hyZWlidW5nXGZQICh2ZXJwZmxpY2h0ZW5kKQorRGllc2UgRmVsZGVyIHNpbmQgaW4gZGVyIEhhbmRidWNoc2VpdGUgXGZCZGViXC1jb250cm9sXGZQKDUpIGJlc2NocmllYmVuLCBkYSBzaWUKK3f2cnRsaWNoIGluIGRpZSBTdGV1ZXJkYXRlaSBkZXMgQmlu5HJwYWtldHMga29waWVydCB3ZXJkZW4uCisKKy5UUCAKKy5QRCAwCitcZkJEZXBlbmRzOlxmUCBcZkkgUGFrZXRsaXN0ZVxmUAorLlRQIAorLlBEIDAKK1xmQlByZVwtRGVwZW5kczpcZlAgXGZJIFBha2V0bGlzdGVcZlAKKy5UUCAKKy5QRCAwCitcZkJSZWNvbW1lbmRzOlxmUCBcZkkgUGFrZXRsaXN0ZVxmUAorLlRQIAorLlBEIDAKK1xmQlN1Z2dlc3RzOlxmUCBcZkkgUGFrZXRsaXN0ZVxmUAorLlRQIAorLlBEIDAKK1xmQkJyZWFrczpcZlAgXGZJIFBha2V0bGlzdGVcZlAKKy5UUCAKKy5QRCAwCitcZkJFbmhhbmNlczpcZlAgXGZJIFBha2V0bGlzdGVcZlAKKy5UUCAKKy5QRCAwCitcZkJSZXBsYWNlczpcZlAgXGZJUGFrZXRsaXN0ZVxmUAorLlRQIAorLlBEIDAKK1xmQkNvbmZsaWN0czpcZlAgXGZJIFBha2V0bGlzdGVcZlAKKy5UUCAKKy5QRCAwCitcZkJQcm92aWRlczpcZlAgXGZJIFBha2V0bGlzdGVcZlAKKy5UUCAKKy5QRCAwCitcZkJCdWlsdFwtVXNpbmc6XGZQIFxmSSBQYWtldGxpc3RlXGZQCisuYnIKK0RpZXNlIEZlbGRlciBkZWtsYXJpZXJlbiBkaWUgQmV6aWVodW5nZW4gendpc2NoZW4gUGFrZXRlbi4gU2llIHdlcmRlbiBpbiBkZXIKK0hhbmRidWNoc2VpdGUgXGZCZGViXC1jb250cm9sXGZQKDUpIHVuZCBpbSBQYWtldCBcZkJkZWJpYW5cLXBvbGljeVxmUCBiZXNjaHJpZWJlbi4KKworLlNIICJCRU5VVFpFUkRFRklOSUVSVEUgRkVMREVSIgorRXMgaXN0IGVybGF1YnQsIHp1c+R0emxpY2hlIGJlbnV0emVyZGVmaW5pZXJ0ZSBGZWxkZXIgenUgZGVyIFN0ZXVlcmRhdGVpCitoaW56dXp1ZvxnZW4uIERpZSBXZXJremV1Z2Ugd2VyZGVuIGRpZXNlIEZlbGRlciBpZ25vcmllcmVuLiBGYWxscyBTaWUKK232Y2h0ZW4sIGRhc3MgZGllIEZlbGRlciBpbiBkaWUgQXVzZ2FiZWRhdGVpZW4sIHdpZSB6LkIuIGRpZSBCaW7kcnBha2V0ZSwKK2tvcGllcnQgd2VyZGVuLCBt/HNzZW4gU2llIGVpbiBhbmdlcGFzc3RlcyBOYW1lbnNzY2hlbWEgdmVyd2VuZGVuOiBEaWUKK0ZlbGRlciBzb2xsdGVuIG1pdCBlaW5lbSBYLCBnZWZvbGd0IHZvbiBlaW5lbSBvZGVyIG1laHIgZGVyIEJ1Y2hzdGFiZW4gQkNTCit1bmQgZWluZW0gR2VkYW5rZW5zdHJpY2ggYmVnaW5uZW4uIEZhbGxzIGRlciBCdWNoc3RhYmUgQiBiZW51dHp0IHdpcmQsIHdpcmQKK2RhcyBGZWxkIGluIGRlciBTdGV1ZXJkYXRlaSBkZXMgQmlu5HJwYWtldHMgYXVmdGF1Y2hlbiwgc2llaGUKK1xmQmRlYlwtY29udHJvbFxmUCg1KSwgYmVpbSBCdWNoc3RhYmVuIFMgaW4gZGVyIFF1ZWxscGFrZXRzdGV1ZXJkYXRlaSB3aWUgc2llCit2b24gXGZCZHBrZ1wtc291cmNlXGZQKDEpIGVyc3RlbGx0IHdpcmQgdW5kIGJlaW0gQnVjaHN0YWJlbiBDIGluIGRlcgoraG9jaGdlbGFkZW5lbiBEYXRlaSBjb250cm9sICguY2hhbmdlcykuIEJlYWNodGVuIFNpZSwgZGFzcyBkaWUKK1hbQkNTXVwtVm9yc2lsYmVuIGJlaW0gS29waWVyZW4gaW4gZGllIEF1c2dhYmVkYXRlaWVuIGVudGZlcm50IHdlcmRlbi4gRWluCitGZWxkIFxmQlhDXC1BcHByb3ZlZFwtQnlcZlAgd2lyZCBhbHMgXGZCQXBwcm92ZWRcLUJ5XGZQIGluIGRlciBEYXRlaSBjaGFuZ2VzLCBhYmVyCituaWNodCBpbiBkZW4gU3RldWVyZGF0ZWllbiBkZXMgUXVlbGxcLSB1bmQgQmlu5HJwYWtldHMgYXVmdGF1Y2hlbi4KKworCisuU0ggQkVJU1BJRUwKKy5cIiAuUlMKKy5uZgorIyBLb21tZW50YXIKK1NvdXJjZTogZHBrZworU2VjdGlvbjogYWRtaW4KK1ByaW9yaXR5OiByZXF1aXJlZAorTWFpbnRhaW5lcjogRHBrZyBEZXZlbG9wZXJzIDxkZWJpYW5cLWRwa2dAbGlzdHMuZGViaWFuLm9yZz4KKyMgZGllc2VzIEZlbGQgd2lyZCBpbiBkYXMgQmlu5HJcLSB1bmQgUXVlbGxwYWtldCBrb3BpZXJ0CitYQlNcLVVwc3RyZWFtXC1SZWxlYXNlXC1TdGF0dXM6IHN0YWJsZQorSG9tZXBhZ2U6IGh0dHA6Ly93aWtpLmRlYmlhbi5vcmcvVGVhbXMvRHBrZworVmNzXC1Ccm93c2VyOiBodHRwOi8vZ2l0LmRlYmlhbi5vcmcvP3A9ZHBrZy9kcGtnLmdpdAorVmNzXC1HaXQ6IGdpdDovL2dpdC5kZWJpYW4ub3JnL2dpdC9kcGtnL2Rwa2cuZ2l0CitTdGFuZGFyZHNcLVZlcnNpb246IDMuNy4zCitCdWlsZFwtRGVwZW5kczogcGtnXC1jb25maWcsIGRlYmhlbHBlciAoPj0gNC4xLjgxKSwKKyBsaWJzZWxpbnV4MVwtZGV2ICg+PSAxLjI4XC00KSBbIWxpbnV4XC1hbnldCisKK1BhY2thZ2U6IGRwa2dcLWRldgorU2VjdGlvbjogdXRpbHMKK1ByaW9yaXR5OiBvcHRpb25hbAorQXJjaGl0ZWN0dXJlOiBhbGwKKyMgZGllcyBpc3QgZWluIHNwZXppZWxsZXMgRmVsZCBpbSBCaW7kcnBha2V0CitYQlwtTWVudG9yaW5nXC1Db250YWN0OiBSYXBoYWVsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RlcGVuZHM6IGRwa2cgKD49IDEuMTQuNiksIHBlcmw1LCBwZXJsXC1tb2R1bGVzLCBjcGlvICg+PSAyLjQuMlwtMiksCisgYnppcDIsIGx6bWEsIHBhdGNoICg+PSAyLjJcLTEpLCBtYWtlLCBiaW51dGlscywgbGlidGltZWRhdGVcLXBlcmwKK1JlY29tbWVuZHM6IGdjYyB8IGNcLWNvbXBpbGVyLCBidWlsZFwtZXNzZW50aWFsCitTdWdnZXN0czogZ251cGcsIGRlYmlhblwta2V5cmluZworQ29uZmxpY3RzOiBkcGtnXC1jcm9zcyAoPDwgMi4wLjApLCBkZXZzY3JpcHRzICg8PCAyLjEwLjI2KQorUmVwbGFjZXM6IG1hbnBhZ2VzXC1wbCAoPD0gMjAwNTExMTdcLTEpCitEZXNjcmlwdGlvbjogRGViaWFuIHBhY2thZ2UgZGV2ZWxvcG1lbnQgdG9vbHMKKyBUaGlzIHBhY2thZ2UgcHJvdmlkZXMgdGhlIGRldmVsb3BtZW50IHRvb2xzIChpbmNsdWRpbmcgZHBrZ1wtc291cmNlKQorIHJlcXVpcmVkIHRvIHVucGFjaywgYnVpbGQgYW5kIHVwbG9hZCBEZWJpYW4gc291cmNlIHBhY2thZ2VzLgorIC4KKyBNb3N0IERlYmlhbiBzb3VyY2UgcGFja2FnZXMgd2lsbCByZXF1aXJlIGFkZGl0aW9uYWwgdG9vbHMgdG8gYnVpbGQ7CisgZm9yIGV4YW1wbGUsIG1vc3QgcGFja2FnZXMgbmVlZCBtYWtlIGFuZCB0aGUgQyBjb21waWxlciBnY2MuCisuZmkKKworCisuXCIgLlJFCisuU0gg3EJFUlNFVFpVTkcKK0RpZSBkZXV0c2NoZSDcYmVyc2V0enVuZyB3dXJkZSAyMDA0LCAyMDA2LTIwMTEgdm9uIEhlbGdlIEtyZXV0em1hbm4KKzxkZWJpYW5AaGVsZ2VmamVsbC5kZT4sIDIwMDcgdm9uIEZsb3JpYW4gUmVobmlzY2ggPGVpeG1hbkBnbXguZGU+IHVuZAorMjAwOCB2b24gU3ZlbiBKb2FjaGltIDxzdmVuam9hY0BnbXguZGU+CithbmdlZmVydGlndC4gRGllc2Ug3GJlcnNldHp1bmcgaXN0IEZyZWllIERva3VtZW50YXRpb247IGxlc2VuIFNpZSBkaWUKK0dOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIFZlcnNpb24gMiBvZGVyIG5ldWVyIGb8ciBkaWUgS29waWVyYmVkaW5ndW5nZW4uCitFcyBnaWJ0IEtFSU5FIEhBRlRVTkcuCisuU0ggIlNJRUhFIEFVQ0giCitcZkJkZWJcLWNvbnRyb2xcZlAoNSksIFxmQmRlYlwtdmVyc2lvblxmUCg1KSwgXGZCZHBrZ1wtc291cmNlXGZQKDEpCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9kZS9kZWItc3Vic3R2YXJzLjUgYi9kcGtnLTEuMTYuMS4xL21hbi9kZS9kZWItc3Vic3R2YXJzLjUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMGNhYjg0NwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL2RlL2RlYi1zdWJzdHZhcnMuNQpAQCAtMCwwICsxLDE1MiBAQAorLlwiIEF1dGhvcnM6IElhbiBKYWNrc29uCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkZWJcLXN1YnN0dmFycyA1IDIwMDlcLTA3XC0xNSBEZWJpYW5cLVByb2pla3QgZHBrZ1wtSGlsZnNwcm9ncmFtbWUKKy5TSCBOQU1FCitkZWJcLXN1YnN0dmFycyBcLSBTdWJzdGl0dXRpb25zdmFyaWFibGVuIGluIERlYmlhblwtUXVlbGxlbgorLgorLlNIINxCRVJTSUNIVAorc3Vic3R2YXJzCisuCisuU0ggQkVTQ0hSRUlCVU5HCitCZXZvciBcZkJkcGtnXC1zb3VyY2VcZlAsIFxmQmRwa2dcLWdlbmNvbnRyb2xcZlAgdW5kIFxmQmRwa2dcLWdlbmNoYW5nZXNcZlAgaWhyZQorU3RldWVyaW5mb3JtYXRpb25lbiAoenUgZGVyIFF1ZWxsc3RldWVyXC1EYXRlaSBcZkIuZHNjXGZQIGb8ciBcZkJkcGtnXC1zb3VyY2VcZlAgdW5kCit6dSBkZXIgU3RhbmRhcmRhdXNnYWJlIGb8ciBcZkJkcGtnXC1nZW5jb250cm9sXGZQIHVuZCBcZkJkcGtnXC1nZW5jaGFuZ2VzXGZQKQorc2NocmVpYmVuLCBm/GhyZW4gc2llIGVpbmlnZSBWYXJpYWJsZW5zdWJzdGl0dXRpb25lbiBpbiBkZXIgQXVzZ2FiZWRhdGVpCitkdXJjaC4KKworRWluZSBWYXJpYWJsZW5zdWJzdGl0dXRpb24gaGF0IGRpZSBGb3JtCitcZkIke1xmUFxmSVZhcmlhYmxlbm5hbWVcZlBcZkJ9XGZQLiBWYXJpYWJsZW5uYW1lbiBiZXN0ZWhlbiBhdXMgYWxwaGFudW1lcmlzY2hlbgorWmVpY2hlbiAod29taXQgc2llIGF1Y2ggYmVnaW5uZW4pLCBHZWRhbmtlbnN0cmljaGVuIHVuZAorRG9wcGVscHVua3Rlbi4gVmFyaWFibGVuc3Vic3RpdHV0aW9uZW4gd2VyZGVuIHdpZWRlcmhvbHQgZHVyY2hnZWb8aHJ0LCBiaXMKK2tlaW5lIPxicmlnIGdlYmxpZWJlbiBzaW5kOyBkZXIga29tcGxldHRlIFRleHQgZGVzIEZlbGRlcyBuYWNoIGRlcgorU3Vic3RpdHV0aW9uIHdpcmQgZXJuZXV0IGF1ZiB3ZWl0ZXJlIFN1YnN0aXR1dGlvbmVuIGdlcHL8ZnQuCisKK05hY2hkZW0gYWxsZSBTdWJzdGl0dXRpb25lbiBlcmZvbGd0IHNpbmQsIHdpcmQgamVkZXMgQXVmdHJldGVuIGRlcgorWmVpY2hlbmtldHRlIFxmQiR7fVxmUCAoZGllIGtlaW5lIGVybGF1YnRlIFN1YnN0aXR1dGlvbiBpc3QpIGR1cmNoIGRhcworXGZCJFxmUFwtWmVpY2hlbiBlcnNldHp0LgorCitPYndvaGwgZGllIFZhcmlhYmxlbnN1YnN0aXR1dGlvbiBiZWkgYWxsZW4gRmVsZGVybiBkZXIgU3RldWVyZGF0ZWkKK3Zvcmdlbm9tbWVuIHdpcmQsIHdlcmRlbiBlaW5pZ2UgZGllc2VyIEZlbGRlciB35GhyZW5kIGRlcyBCYXVlbnMgYmVu9nRpZ3QKK3VuZCB2ZXJ3ZW5kZXQsIHdlbm4gZGllIFN1YnN0aXR1dGlvbiBub2NoIG5pY2h0IGVyZm9sZ3QgaXN0LiBEYWhlciBr9m5uZW4KK1NpZSBWYXJpYWJsZW4gbmljaHQgaW4gZGVuIEZlbGRlcm4gXGZCUGFja2FnZVxmUCwgXGZCU291cmNlXGZQIHVuZCBcZkJBcmNoaXRlY3R1cmVcZlAKK3ZlcndlbmRlbi4KKworVmFyaWFibGVuZXJzZXR6dW5nIGVyZm9sZ3QgYW0gSW5oYWx0IGRlciBGZWxkZXIsIG5hY2hkZW0gc2llIGdlcGFyc3QKKyhhdXNnZXdlcnRldCkgd3VyZGVuLiBGYWxscyBTaWUgZWluZSBWYXJpYWJsZSD8YmVyIG1laHJlcmUgWmVpbGVuCitleHBhbmRpZXJlbiBt9mNodGVuLCBt/HNzZW4gU2llIG5hY2ggZGVtIFplaWxlbnVtYnJ1Y2ggZGFoZXIga2VpbgorTGVlcnplaWNoZW4gZWluZvxnZW4uIERpZXMgcGFzc2llcnQgYmVpIGRlciBBdXNnYWJlIGRlcyBGZWxkZXMgaW1wbGl6aXQuIElzdAorYmVpc3BpZWxzd2Vpc2UgZGllIFZhcmlhYmxlIFxmQiR7RGVzY3JpcHRpb259XGZQIGF1ZiC7Zm9vIGlzdCBiYXIuJHtOZXdsaW5lfWZvbworaXN0IHN1cGVyLqsgZ2VzZXR6dCB1bmQgU2llIGhhYmVuIGRhcyBmb2xnZW5kZSBGZWxkOgorCisgRGVzY3JpcHRpb246IGZvbyBhcHBsaWNhdGlvbgorICAke0Rlc2NyaXB0aW9ufQorICAuCisgIFdlaXRlcmVyIFRleHQuCisKK0Rhbm4gd2lyZCBkaWVzIHp1IEZvbGdlbmRlbiBm/GhyZW46CisKKyBEZXNjcmlwdGlvbjogZm9vIGFwcGxpY2F0aW9uCisgIGZvbyBpc3QgYmFyLgorICBmb28gaXN0IHN1cGVyLgorICAuCisgIFdlaXRlcmVyIFRleHQuCisKK1ZhcmlhYmxlbiBr9m5uZW4g/GJlciBkaWUgYWxsZ2VtZWluZSBcZkJcLVZcZlBcLU9wdGlvbiBnZXNldHp0IHdlcmRlbi4gU2llIGv2bm5lbgorYXVjaCBpbiBkZXIgXGZCZGViaWFuL3N1YnN0dmFyc1xmUCAoYnp3LiBpbiBkZXIg/GJlciBkaWUgT3B0aW9uIFxmQlwtVFxmUCBnZXNldHp0ZW4KK0RhdGVpKSBhbmdlZ2ViZW4gd2VyZGVuLiBEaWVzZSBEYXRlaSBiZXN0ZWh0IGF1Y2ggWmVpbGVuIGRlciBGb3JtCitcZklOYW1lXGZQXGZCPVxmUFxmSVdlcnRcZlAuIExlZXJ6ZWljaGVuIGFtIFplaWxlbmVuZGUsIGxlZXJlIFplaWxlbiB1bmQgWmVpbGVuLCBkaWUKK21pdCBkZW0gXGZCI1xmUFwtU3ltYm9sIHN0YXJ0ZW4gKEtvbW1lbnRhcmUpIHdlcmRlbiBpZ25vcmllcnQuCisKK1p1c+R0emxpY2ggc2luZCBkaWUgZm9sZ2VuZGVuIFN0YW5kYXJkdmFyaWFibGVuIHZlcmb8Z2JhcjoKKy5UUCAKK1xmQkFyY2hcZlAKK0RpZSBha3R1ZWxsZSBCYXVcLUFyY2hpdGVrdHVyICh2b24gXGZCZHBrZyBcLVwtcHJpbnRcLWFyY2hpdGVjdHVyZVxmUCkuCisuVFAgCitcZkJzb3VyY2U6VmVyc2lvblxmUAorRGllIFF1ZWxscGFrZXRcLVZlcnNpb24uCisuVFAgCitcZkJzb3VyY2U6VXBzdHJlYW1cLVZlcnNpb25cZlAKK0RpZSBQYWtldHZlcnNpb24gZGVyIE9yaWdpbmFsYXV0b3JlbiwgZWluc2NobGll32xpY2ggZGVyIEVwb2NoZSBkZXIKK0RlYmlhblwtVmVyc2lvbiwgZmFsbHMgdm9yaGFuZGVuLgorLlRQIAorXGZCYmluYXJ5OlZlcnNpb25cZlAKK0RpZSBCaW7kcnBha2V0dmVyc2lvbiAoZGllIHouQi4gaW4gZWluZW0gYmluTk1VIHZvbiBzb3VyY2U6VmVyc2lvbiBhYndlaWNoZW4KK2thbm4pLgorLlRQIAorXGZCU291cmNlXC1WZXJzaW9uXGZQCitEaWUgUXVlbGxwYWtldHZlcnNpb24gKGF1cyBkZXIgY2hhbmdlbG9nXC1EYXRlaSkuIERpZXNlIFZhcmlhYmxlIGlzdCBqZXR6dAorXGZCdmVyYWx0ZXRcZlAsIGRhIGlocmUgQmVkZXV0dW5nIHZvbiBpaHJlciBGdW5rdGlvbiBhYndlaWNodCwgYml0dGUgdmVyd2VuZGVuCitTaWUgXGZCc291cmNlOlZlcnNpb25cZlAgb2RlciBcZkJiaW5hcnk6VmVyc2lvblxmUCB3byB6dXRyZWZmZW5kLgorLlRQIAorXGZCSW5zdGFsbGVkXC1TaXplXGZQCitEaWUgR2VzYW10Z3L232UgZGVyIHZvbSBQYWtldCBpbnN0YWxsaWVydGVuIERhdGVpZW4uIERpZXNlciBXZXJ0IHdpcmQgaW4gZGFzCitlbnRzcHJlY2hlbmRlIEZlbGQgZGVyILtjb250cm9sq1wtRGF0ZWkga29waWVydDsgd2lyZCBlcyBnZXNldHp0LCB2ZXLkbmRlcnQKK2VzIGRlbiBXZXJ0IGRpZXNlcyBGZWxkZXMuIEZhbGxzIGRpZXNlIFZhcmlhYmxlIG5pY2h0IGdlc2V0enQgaXN0LCB3aXJkCitcZkJkcGtnXC1nZW5jb250cm9sXGZQILtcZkJkdSBcLWsgZGViaWFuL3RtcFxmUKsgdmVyd2VuZGVuLCB1bSBkZW4gU3RhbmRhcmR3ZXJ0IHp1Citlcm1pdHRlbG4uCisuVFAgCitcZkJFeHRyYVwtU2l6ZVxmUAorWnVz5HR6bGljaGVyIFBsYXR0ZW5wbGF0eiwgZGVyIHZlcndlbmRldCB3aXJkLCB3ZW5uIGRhcyBQYWtldCBpbnN0YWxsaWVydAoraXN0LiBGYWxscyBkaWVzZSBWYXJpYWJsZSBnZXNldHp0IGlzdCwgd2lyZCBkaWVzZXIgV2VydCB6dSBkZXIKK1xmQkluc3RhbGxlZFwtU2l6ZVxmUFwtVmFyaWFibGVuIGhpbnp1YWRkaWVydCAoZWdhbCBvYiBzaWUgZXhwbGl6aXQgZ2VzZXR6dCBvZGVyCitkZXIgU3RhbmRhcmR3ZXJ0IHZlcndlbmRldCB3aXJkKSwgYmV2b3Igc2llIGluIGRhcyBGZWxkIFxmQkluc3RhbGxlZFwtU2l6ZVxmUAorZGVyILtjb250cm9sq1wtRGF0ZWkga29waWVydCB3aXJkLgorLlRQIAorXGZCRjpcZlBcZklGZWxkbmFtZVxmUAorRGVyIFdlcnQgZGVzIEF1c2dhYmVmZWxkZXMgXGZJRmVsZG5hbWVcZlAgKGRlciBpbiBkZXIga2Fub25pc2NoZW4KK0dyb99cLS9LbGVpbnNjaHJlaWJ1bmcgYW5nZWdlYmVuIHdlcmRlbiBtdXNzKS4gRGFzIFNldHplbiBkaWVzZXIgVmFyaWFibGVuCitoYXQgbnVyIGVpbmVuIEVmZmVrdCBhbiBkZW4gU3RlbGxlbiwgd28gZGllc2UgZXhwbGl6aXQgZXhwYW5kaWVydCB3ZXJkZW4uCisuVFAgCitcZkJGb3JtYXRcZlAKK0RpZSBGb3JtYXR2ZXJzaW9uIGRlciBcZkIuY2hhbmdlc1xmUFwtRGF0ZWksIGRpZSB2b24gZGllc2VyIFZlcnNpb24gZGVyCitRdWVsbHBha2V0aWVyc2tyaXB0ZSBlcnN0ZWxsdCB3aXJkLiBGYWxscyBTaWUgZGllc2UgVmFyaWFibGUgc2V0emVuLCB3ZXJkZW4KK2RpZSBJbmhhbHRlIGRlcyBcZkJGb3JtYXRcZlBcLUZlbGRlcyBpbiBkZXIgXGZCLmNoYW5nZXNcZlBcLURhdGVpIGF1Y2ggZ2XkbmRlcnQuCisuVFAgCitcZkJOZXdsaW5lXGZQLCBcZkJTcGFjZVxmUCwgXGZCVGFiXGZQCitEaWVzZSBWYXJpYWJsZW4gZW50aGFsdGVuIGRhcyBqZXdlaWxzIGtvcnJlc3BvbmRpZXJlbiBaZWljaGVuCisoXGZCWmVpbGVudW1icnVjaFxmUCwgXGZCTGVlcnplaWNoZW5cZlAgdW5kIFxmQlRhYnVsYXRvclxmUCBpbiBkaWVzZXIgUmVpaGVuZm9sZ2UpLgorLlRQIAorXGZCc2hsaWJzOlxmUFxmSWRlcGVuZGVuY3lmaWVsZFxmUAorVmFyaWFibGVuZWluc3RlbGx1bmdlbiBtaXQgTmFtZW4gZGllc2VyIEZvcm0gd2VyZGVuIHZvbiBcZkJkcGtnXC1zaGxpYmRlcHNcZlAKK2Vyc3RlbGx0LgorLlRQIAorXGZCZHBrZzpVcHN0cmVhbVwtVmVyc2lvblxmUAorRGllIE9yaWdpbmFsXC0gKFVwc3RyZWFtXC0pVmVyc2lvbiB2b24gRHBrZy4KKy5UUCAKK1xmQmRwa2c6VmVyc2lvblxmUAorRGllIGtvbXBsZXR0ZSBWZXJzaW9uIHZvbiBEcGtnLgorLkxQCitGYWxscyBhdWYgZWluZSBWYXJpYWJsZSBCZXp1ZyBnZW5vbW1lbiB3aXJkLCBkaWVzZSBhYmVyIG5pY2h0IGRlZmluaWVydCBpc3QsCit3aXJkIGVzIGVpbmUgV2FybnVuZyBlcnN0ZWxsZW4gdW5kIGVpbiBsZWVyZXIgV2VydCB3aXJkIGFuZ2Vub21tZW4uCisuCisuU0ggREFURUlFTgorLlRQIAorXGZCZGViaWFuL3N1YnN0dmFyc1xmUAorTGlzdGUgdm9uIFN1YnN0aXR1dGlvbnN2YXJpYWJsZW4gdW5kIFwtd2VydGVuLgorLgorLlNIIEZFSExFUgorRGllIFN0ZWxsZSwgYW4gZGVyIGRhcyDcYmVyc2NocmVpYmVuIHZvbiBGZWxkZXJuIHBhc3NpZXJ0LCB2ZXJnbGljaGVuIG1pdAorYmVzdGltbXRlbiBTdGFuZGFyZFwtQXVzZ2FiZVwtRmVsZGVpbnN0ZWxsdW5nZW4sIGlzdCBlaGVyIGtvbmZ1cy4KKworLlNIINxCRVJTRVRaVU5HCitEaWUgZGV1dHNjaGUg3GJlcnNldHp1bmcgd3VyZGUgMjAwNCwgMjAwNi0yMDExIHZvbiBIZWxnZSBLcmV1dHptYW5uCis8ZGViaWFuQGhlbGdlZmplbGwuZGU+LCAyMDA3IHZvbiBGbG9yaWFuIFJlaG5pc2NoIDxlaXhtYW5AZ214LmRlPiB1bmQKKzIwMDggdm9uIFN2ZW4gSm9hY2hpbSA8c3ZlbmpvYWNAZ214LmRlPgorYW5nZWZlcnRpZ3QuIERpZXNlINxiZXJzZXR6dW5nIGlzdCBGcmVpZSBEb2t1bWVudGF0aW9uOyBsZXNlbiBTaWUgZGllCitHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBWZXJzaW9uIDIgb2RlciBuZXVlciBm/HIgZGllIEtvcGllcmJlZGluZ3VuZ2VuLgorRXMgZ2lidCBLRUlORSBIQUZUVU5HLgorLlNIICJTSUVIRSBBVUNIIgorXGZCZHBrZ1xmUCgxKSwgXGZCZHBrZ1wtZ2VuY2hhbmdlc1xmUCgxKSwgXGZCZHBrZ1wtZ2VuY29udHJvbFxmUCgxKSwKK1xmQmRwa2dcLXNobGliZGVwc1xmUCgxKSwgXGZCZHBrZ1wtc291cmNlXGZQKDEpLgorLgorLlNIIEFVVE9SCitDb3B5cmlnaHQgXChjbyAxOTk1XC0xOTk2IElhbiBKYWNrc29uCisuYnIKK0NvcHlyaWdodCBcKGNvIDIwMDAgV2ljaGVydCBBa2tlcm1hbgorLnNwCitEaWVzIGlzdCBGcmVpZSBTb2Z0d2FyZTsgbGVzZW4gU2llIGRpZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBWZXJzaW9uIDIKK29kZXIgbmV1ZXIgZvxyIGRpZSBLb3BpZXJiZWRpbmd1bmdlbi4gRXMgZ2lidCBLRUlORSBIYWZ0dW5nLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vZGUvZGViLXN5bWJvbHMuNSBiL2Rwa2ctMS4xNi4xLjEvbWFuL2RlL2RlYi1zeW1ib2xzLjUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODQ3ZTE1NAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL2RlL2RlYi1zeW1ib2xzLjUKQEAgLTAsMCArMSw3OSBAQAorLlwiIEF1dGhvcjogUmFwaGHDq2wgSGVydHpvZworLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlwiCisuXCIgVGhpcyBmaWxlIHdhcyBnZW5lcmF0ZWQgd2l0aCBwbzRhLiBUcmFuc2xhdGUgdGhlIHNvdXJjZSBmaWxlLgorLlwiCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuVEggZGViXC1zeW1ib2xzIDUgMjAxMVwtMDhcLTE0IERlYmlhblwtUHJvamVrdCBkcGtnXC1IaWxmc3Byb2dyYW1tZQorLlNIIE5BTUUKK2RlYlwtc3ltYm9scyBcLSBEZWJpYW5zIGVyd2VpdGVydGUgSW5mb3JtYXRpb25zZGF0ZWkgdm9uIExhdWZ6ZWl0YmlibGlvdGhla2VuCisuCisuU0gg3EJFUlNJQ0hUCitzeW1ib2xzCisuCisuU0ggQkVTQ0hSRUlCVU5HCitEYXMgRm9ybWF0IGVpbmVzIEVpbnRyYWdzIGb8ciBlaW5lIGVyd2VpdGVydGUgQWJo5G5naWdrZWl0c2luZm9ybWF0aW9uIGVpbmVyCitMYXVmemVpdGJpYmxpb3RoZWsgKLtzaGFyZWQgbGlicmFyeaspIGxhdXRldDoKKy5QUAorXGZJQmlibGlvdGhla3NcLVNvbmFtZSBIYXVwdGFiaORuZ2lna2VpdHN2b3JsYWdlXGZQCisuYnIKK1sgfCBcZklhbHRlcm5hdGl2ZVwtQWJo5G5naWdrZWl0c3ZvcmxhZ2VcZlAgXQorLmJyCitbIC4uLiBdCisuYnIKK1sgKiBcZklGZWxkbmFtZVxmUDogXGZJRmVsZHdlcnRcZlAgXQorLmJyCitbIC4uLiBdCisgXGZJU3ltYm9sXGZQIFxmSU1pbmltYWx2ZXJzaW9uXGZQWyBcZklLZW5udW5nXC1kZXJcLUFiaORuZ2lna2VpdHN2b3JsYWdlXGZQIF0KKy5QCitEZXIgXGZJQmlibGlvdGhla3NcLVNvbmFtZVxmUCBpc3QgZ2VuYXUgZGVyIFdlcnQgZGVzIFNPTkFNRVwtRmVsZGVzLCB3aWUgZXIgdm9uCitcZkJvYmpkdW1wXGZQKDEpIGV4cG9ydGllcnQgd2lyZC4gRWluZSBcZklBYmjkbmdpZ2tlaXRzdm9ybGFnZVxmUCBpc3QgZWluZQorQWJo5G5naWdrZWl0LCBpbiBkZXIgXGZJI01JTlZFUiNcZlAgZHluYW1pc2NoIGVudHdlZGVyIHZvbiBlaW5lcgorVmVyc2lvbnNwcvxmdW5nIGRlciBBcnQguyg+PSBcZklNaW5pbWFsdmVyc2lvblxmUCmrIG9kZXIgZHVyY2ggbmljaHRzCitlcnNldHp0IHdpcmQsIGZhbGxzIGVpbmUgbmljaHRcLXZlcnNpb25pZXJ0ZSBBYmjkbmdpZ2tlaXQgYWxzIGF1c3JlaWNoZW5kCitlcmFjaHRldCB3aXJkLgorLlAKK0plZGVtIGV4cG9ydGllcnRlbiBcZklTeW1ib2xcZlAgKGF1ZmdlZvxocnQgYWxzIFxmSU5hbWVcZlBAXGZJVmVyc2lvblxmUCwgbWl0CitcZklWZXJzaW9uXGZQIGFscyC7QmFzZassIGZhbGxzIGRpZSBCaWJsaW90aGVrIG5pY2h0IHZlcnNpb25pZXJ0IGlzdCkgd2lyZCBlaW5lCitcZklNaW5pbWFsdmVyc2lvblxmUCBzZWluZXIgQWJo5G5naWdrZWl0c3ZvcmxhZ2UgenVnZW9yZG5ldCAoZGllCitIYXVwdGFiaORuZ2lna2VpdHN2b3JsYWdlIHdpcmQgdmVyd2FuZHQsIGZhbGxzIGRpZQorXGZJS2VubnVuZ1wtZGVyXC1BYmjkbmdpZ2tlaXRzdm9ybGFnZVxmUCBuaWNodCB2b3JoYW5kZW4gaXN0KS4gRGllIGVyc3RlCithbHRlcm5hdGl2ZSBBYmjkbmdpZ2tlaXRzdm9ybGFnZSB3aXJkIG1pdCAxIG51bW1lcmllcnQsIGRpZSB6d2VpdGUgbWl0IDIKK3Vzdy4KKy5QCitKZWRlciBFaW50cmFnIGb8ciBlaW5lIEJpYmxpb3RoZWsga2FubiBhdWNoIGVpbmlnZSBGZWxkZXIgbWl0CitNZXRhaW5mb3JtYXRpb25lbiBlbnRoYWx0ZW4uIERpZXNlIEZlbGRlciB3ZXJkZW4gaW4gWmVpbGVuIGdlc3BlaWNoZXJ0LCBkaWUKK21pdCBlaW5lbSBTdGVybiBiZWdpbm5lbi4gRGVyemVpdCBpc3QgXGZJQnVpbGRcLURlcGVuZHNcLVBhY2thZ2VcZlAgZGFzIGVpbnppZ2UKK2f8bHRpZ2UgRmVsZCwgZXMgZ2lidCBkZW4gTmFtZW4gZGVzILtcLWRldqtcLVBha2V0cyBhbiwgZGFzIGRlciBCaWJsaW90aGVrCit6dWdlb3JkbmV0IGlzdCwgdW5kIHdpcmQgdm9uIFxmQmRwa2dcLXNobGliZGVwc1xmUCB2ZXJ3YW5kdCwgdW0gc2ljaGVyenVzdGVsbGVuLAorZGFzcyBkaWUgZXJzdGVsbHRlIEFiaORuZ2lna2VpdCBtaW5kZXN0ZW5zIGdlbmF1c28gc3RyaWt0IGlzdCB3aWUgZGllCit6dWdlaPZyaWdlIEJhdVwtQWJo5G5naWdrZWl0LgorLlNIIEJFSVNQSUVMRQorLlNTICJFaW5mYWNoZSBTeW1ib2xkYXRlaSIKKy5QUAorbGliZnRwLnNvLjMgbGliZnRwMyAjTUlOVkVSIworIERlZmF1bHROZXRidWZAQmFzZSAzLjFcLTFcLTYKKyBGdHBBY2Nlc3NAQmFzZSAzLjFcLTFcLTYKKyBbLi4uXQorLlNTICJGb3J0Z2VzY2hyaXR0ZW5lIFN5bWJvbGRhdGVpIgorLlBQCitsaWJHTC5zby4xIGxpYmdsMQorLmJyCit8IGxpYmdsMVwtbWVzYVwtZ2x4ICNNSU5WRVIjCisuYnIKKyogQnVpbGRcLURlcGVuZHNcLVBhY2thZ2U6IGxpYmdsMVwtbWVzYVwtZGV2CisgcHVibGljR2xTeW1ib2xAQmFzZSA2LjNcLTEKKyBbLi4uXQorIGltcGxlbWVudGF0aW9uU3BlY2lmaWNTeW1ib2xAQmFzZSA2LjUuMlwtNyAxCisgWy4uLl0KKy5TSCDcQkVSU0VUWlVORworRGllIGRldXRzY2hlINxiZXJzZXR6dW5nIHd1cmRlIDIwMDQsIDIwMDYtMjAxMSB2b24gSGVsZ2UgS3JldXR6bWFubgorPGRlYmlhbkBoZWxnZWZqZWxsLmRlPiwgMjAwNyB2b24gRmxvcmlhbiBSZWhuaXNjaCA8ZWl4bWFuQGdteC5kZT4gdW5kCisyMDA4IHZvbiBTdmVuIEpvYWNoaW0gPHN2ZW5qb2FjQGdteC5kZT4KK2FuZ2VmZXJ0aWd0LiBEaWVzZSDcYmVyc2V0enVuZyBpc3QgRnJlaWUgRG9rdW1lbnRhdGlvbjsgbGVzZW4gU2llIGRpZQorR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgVmVyc2lvbiAyIG9kZXIgbmV1ZXIgZvxyIGRpZSBLb3BpZXJiZWRpbmd1bmdlbi4KK0VzIGdpYnQgS0VJTkUgSEFGVFVORy4KKy5TSCAiU0lFSEUgQVVDSCIKK1xmQmh0dHA6Ly93aWtpLmRlYmlhbi5vcmcvUHJvamVjdHMvSW1wcm92ZWREcGtnU2hsaWJkZXBzXGZQCisuYnIKK1xmQmRwa2dcLXNobGliZGVwc1xmUCgxKSwgXGZCZHBrZ1wtZ2Vuc3ltYm9sc1xmUCgxKS4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL2RlL2RlYi10cmlnZ2Vycy41IGIvZHBrZy0xLjE2LjEuMS9tYW4vZGUvZGViLXRyaWdnZXJzLjUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDZjZmQ2NAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL2RlL2RlYi10cmlnZ2Vycy41CkBAIC0wLDAgKzEsNzcgQEAKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlRIIGRlYlwtdHJpZ2dlcnMgNSAyMDExXC0wOFwtMTQgRGViaWFuXC1Qcm9qZWt0IGRwa2dcLUhpbGZzcHJvZ3JhbW1lCisuU0ggTkFNRQorZGViXC10cmlnZ2VycyBcLSBQYWtldFwtVHJpZ2dlcgorLgorLlNIINxCRVJTSUNIVAordHJpZ2dlcnMKKy4KKy5TSCBCRVNDSFJFSUJVTkcKK0VpbiBQYWtldCBlcmts5HJ0IHNlaW5lIEJlemllaHVuZyB6dSBlaW5pZ2VuIFRyaWdnZXIobikgKGRldXRzY2g6IEF1c2z2c2VybikKK2luZGVtIGVzIGVpbmUgRGF0ZWkgXGZJdHJpZ2dlcnNcZlAgaW4gc2VpbmVtIFN0ZXVlcmFyY2hpdgorKGQuaC4gXGZJREVCSUFOL3RyaWdnZXJzXGZQIHfkaHJlbmQgZGVyIFBha2V0ZXJzdGVsbHVuZykgaGluenVuaW1tdC4KKy5QUAorRGllc2UgRGF0ZWkgZW50aORsdCBEaXJla3RpdmVuLCBlaW5lIHBybyBaZWlsZS4gTGVlcnplaWNoZW4gYW0gQW5mYW5nIHVuZAorRW5kZSBzb3dpZSBhbGxlcyBuYWNoIGRlbSBlcnN0ZW4gXGZCI1xmUCB3ZXJkZW4gaW4gamVkZXIgWmVpbGUgZW50ZmVybnQgdW5kCitsZWVyZSBaZWlsZW4gd2VyZGVuIGlnbm9yaWVydC4KKy5QUAorRGllIGRlcnplaXQgdW50ZXJzdPx0enRlbiBTdGV1ZXJkaXJla3RpdmVuIGb8ciBUcmlnZ2VyIHNpbmQ6CisuUFAKKy5pbiArNQorXGZCaW50ZXJlc3RcZlAgXGZJVHJpZ2dlclwtTmFtZVxmUAorLlBQCisuaW4gKzUKK1xmQmludGVyZXN0XC1ub2F3YWl0XGZQIFxmSVRyaWdnZXJcLU5hbWVcZlAKKy5QUAorLmluICs1CitHaWJ0IGFuLCBkYXNzIGRhcyBQYWtldCBhbiBkZW0gYmVuYW5udGVuIFRyaWdnZXIgaW50ZXJlc3NpZXJ0IGlzdC4gQWxsZQorVHJpZ2dlciwgYW4gZGVuZW4gZWluIFBha2V0IGludGVyZXNzaWVydCBpc3QsIG38c3NlbiBtaXQgZGllc2VyIERpcmVrdGl2ZSBpbgorZGVyIFRyaWdnZXJcLVN0ZXVlcmRhdGVpIGF1ZmdlZvxocnQgd2VyZGVuLiBEaWUgVmFyaWFudGUgu25vYXdhaXSrIHNldHp0IGRpZQordHJpZ2dlcm5kZW4gUGFrZXRlIG5pY2h0IGluIGRlbiBadXN0YW5kILt0cmlnZ2Vyc1wtYXdhaXRlZKsuIERpZXMgc29sbHRlCit2ZXJ3YW5kdCB3ZXJkZW4sIHdlbm4gZGllIHZvbiBkZW4gVHJpZ2dlcm4gYmVyZWl0Z2VzdGVsbHRlIEZ1bmt0aW9uYWxpdOR0CituaWNodCDkdd9lcnN0IHdpY2h0aWcgaXN0LgorLlBQCisuaW4gKzUKK1xmQmFjdGl2YXRlXGZQIFxmSVRyaWdnZXJcLU5hbWVcZlAKKy5QUAorLmluICs1CitcZkJhY3RpdmF0ZVwtbm9hd2FpdFxmUCBcZklUcmlnZ2VyXC1OYW1lXGZQCisuUFAKKy5pbiArNQorU29yZ3QgZGFm/HIsIGRhc3MgxG5kZXJ1bmdlbiBhbiBkZW0gWnVzdGFuZCBkaWVzZXMgUGFrZXRzIGVpbmVuCitzcGV6aWZpemllcnRlbiBUcmlnZ2VyIGFrdGl2aWVydC4gRGVyIFRyaWdnZXIgd2lyZCBhbSBCZWdpbm4gZm9sZ2VuZGVyCitPcGVyYXRpb25lbiBha3RpdmllcnQ6IHVucGFjaywgY29uZmlndXJlLCByZW1vdmUgKGhpbnp1Z2Vm/Gd0IHp1bSBOdXR6ZW4gdm9uCitQYWtldGVuLCBkaWUgaW0gS29uZmxpa3QgenVlaW5hbmRlciBzdGVoZW4pLCBwdXJnZSB1bmQgZGVjb25maWd1cmUuIERpZQorVmFyaWFudGUgu25vYXdhaXSrIHNldHp0IGRpZSB0cmlnZ2VybmRlbiBQYWtldGUgbmljaHQgaW4gZGVuIFp1c3RhbmQKK7t0cmlnZ2Vyc1wtYXdhaXRlZKsuIERpZXMgc29sbHRlIHZlcndhbmR0IHdlcmRlbiwgd2VubiBkaWUgdm9uIGRlbiBUcmlnZ2VybgorYmVyZWl0Z2VzdGVsbHRlIEZ1bmt0aW9uYWxpdOR0IG5pY2h0IOR132Vyc3Qgd2ljaHRpZyBpc3QuCisuUFAKKy5pbiArNQorRmFsbHMgZGllc2VzIFBha2V0IHfkaHJlbmQgZGVzIEVudHBhY2tlbnMgZWluZXMgYW5kZXJlbiBQYWtldHMgdmVyc2Nod2luZGV0LAord2lyZCBkZXIgVHJpZ2dlciBha3RpdmllcnQsIHdlbm4gZGFzIFZlcnNjaHdpbmRlbiB35GhyZW5kIGRlcyBFbmRlcyBkZXIKK3VucGFja1wtT3BlcmF0aW9uIGJlbWVya3Qgd2lyZC4gVHJpZ2dlcnZlcmFyYmVpdHVuZyB1bmQg3GJlcmfkbmdlIHZvbgorVHJpZ2dlclwtZXJ3YXJ0ZW5kIGF1ZiBpbnN0YWxsaWVydCBm/GhyZW4gbmljaHQgenUgQWt0aXZpZXJ1bmdlbi4gSW0gRmFsbGUKK3ZvbiB1bnBhY2sgd2VyZGVuIHNvd29obCBkaWUgaW4gZGVyIGFsdGVuIGFscyBhdWNoIGRpZSBpbiBkZXIgbmV1ZW4gVmVyc2lvbgorZGVzIFBha2V0cyBhbmdlZ2ViZW5lbiBUcmlnZ2VyIGFrdGl2aWVydC4KKy5QUAorVW5iZWthbm50ZSBEaXJla3RpdmVuIHNpbmQgZWluIEZlaGxlciwgZGVyIGRpZSBJbnN0YWxsYXRpb24gZWluZXMgUGFrZXRzCit2ZXJoaW5kZXJ0LgorLlBQCitEaWUgVmFyaWFudGVuILtcLW5vYXdhaXSrIHdlcmRlbiBudXIgdm9uIERwa2cgMS4xNi4xIG9kZXIgbmV1ZXIgdW50ZXJzdPx0enQKK3VuZCB3ZXJkZW4gYmVpIORsdGVyZW4gRHBrZyB6dSBGZWhsZXJuIGb8aHJlbi4gRXMgd2lyZCBkYWhlciBlbXBmb2hsZW4sIGVpbgoru1ByZVwtRGVwZW5kczogZHBrZyAoPj0gMS4xNi4xKasgenUgamVkZW0gUGFrZXQgaGluenV6dWb8Z2VuLCBkYXNzIGRpZXNlCitEaXJla3RpdmVuIG51dHplbiBt9mNodGUuCisuCisuU0gg3EJFUlNFVFpVTkcKK0RpZSBkZXV0c2NoZSDcYmVyc2V0enVuZyB3dXJkZSAyMDA0LCAyMDA2LTIwMTEgdm9uIEhlbGdlIEtyZXV0em1hbm4KKzxkZWJpYW5AaGVsZ2VmamVsbC5kZT4sIDIwMDcgdm9uIEZsb3JpYW4gUmVobmlzY2ggPGVpeG1hbkBnbXguZGU+IHVuZAorMjAwOCB2b24gU3ZlbiBKb2FjaGltIDxzdmVuam9hY0BnbXguZGU+CithbmdlZmVydGlndC4gRGllc2Ug3GJlcnNldHp1bmcgaXN0IEZyZWllIERva3VtZW50YXRpb247IGxlc2VuIFNpZSBkaWUKK0dOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIFZlcnNpb24gMiBvZGVyIG5ldWVyIGb8ciBkaWUgS29waWVyYmVkaW5ndW5nZW4uCitFcyBnaWJ0IEtFSU5FIEhBRlRVTkcuCisuU0ggIlNJRUhFIEFVQ0giCitcZkJkcGtnXC10cmlnZ2VyXGZQKDEpLCBcZkJkcGtnXGZQKDEpLCBcZkIvdXNyL3NoYXJlL2RvYy9kcGtnXC1kZXYvdHJpZ2dlcnMudHh0Lmd6XGZQLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vZGUvZGViLXZlcnNpb24uNSBiL2Rwa2ctMS4xNi4xLjEvbWFuL2RlL2RlYi12ZXJzaW9uLjUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTI1NWI3NAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL2RlL2RlYi12ZXJzaW9uLjUKQEAgLTAsMCArMSwxMjAgQEAKKy5cIiBJbmNsdWRlcyB0ZXh0IGZyb20gdGhlIERlYmlhbiBQb2xpY3kgcHJvYmFibHkgYnkgSWFuIEphY2tzb24gYW5kIG90aGVycworLlwiIFRoZSBjb3B5cmlnaHQgZ2l2ZW4gYmVsb3cgaXMgdGhhdCBvZiB0aGUgd2hvbGUgcG9saWN5LCBidXQgcHJvYmFibHkKKy5cIiBpbmNvbXBsZXRlLgorLlwiIENvbnZlcnNpb24gdG8gcm9mZiBieSBGcmFuayBMaWNodGVuaGVsZAorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlwiCisuXCIgVGhpcyBmaWxlIHdhcyBnZW5lcmF0ZWQgd2l0aCBwbzRhLiBUcmFuc2xhdGUgdGhlIHNvdXJjZSBmaWxlLgorLlwiCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuVEggZGViXC12ZXJzaW9uIDUgMjAxMVwtMDhcLTE0IERlYmlhblwtUHJvamVrdCBEZWJpYW4KKy5TSCBOQU1FCitkZWJcLXZlcnNpb24gXC0gVmVyc2lvbnNudW1tZXJcLUZvcm1hdCB2b24gRGViaWFuXC1QYWtldGVuCisuCisuU0gg3EJFUlNJQ0hUCitbIFxmSUVwb2NoZVxmUFxmQjpcZlBdXGZJVXBzdHJlYW1cLVZlcnNpb25cZlBbXGZCXC1cZlBcZklEZWJpYW5cLVJldmlzaW9uXGZQXQorLlNIIEJFU0NIUkVJQlVORworRGllIGb8ciBEZWJpYW4gQmlu5HJcLSB1bmQgUXVlbGxwYWtldGUgdmVyd2VuZGV0ZSBWZXJzaW9uc251bW1lciBiZXN0ZWh0IGF1cworZHJlaSBLb21wb25lbnRlbi4gRGllc2Ugc2luZDoKKy5UUCAKK1xmSUVwb2NoZVxmUAorRGllcyBpc3QgZWluZSBlaW56ZWxuZSAodHlwaXNjaGVyd2Vpc2Uga2xlaW5lKSB2b3J6ZWljaGVubG9zZSBnYW56ZQorWmFobC4gU2llIGRhcmYgZW50ZmFsbGVuLCB3b2JlaSBkYW5uIE51bGwgYW5nZW5vbW1lbiB3aXJkLiBGYWxscyBzaWUKK2VudGbkbGx0LCBkYXJmIGRpZSBcZklVcHN0cmVhbVwtVmVyc2lvblxmUCBrZWluZSBEb3BwZWxwdW5rdGUgZW50aGFsdGVuLgorLklQCitTaWUgZXhpc3RpZXJ0LCB1bSBGZWhsZXIgaW4gZGVuIFZlcnNpb25zbnVtbWVybiDkbHRlcmVyIFZlcnNpb25lbiBkZXMgUGFrZXRzCit6dSBlcmxhdWJlbiB1bmQgYXVjaCwgdW0gZGFzIGJpc2hlcmlnZSBOdW1tZXJpZXJ1bmdzc2NoZW1hIGVpbmVzIFBha2V0ZXMKK2F1Znp1Z2ViZW4uCisuVFAgCitcZklVcHN0cmVhbVwtVmVyc2lvblxmUAorRGllcyBpc3QgZGVyIEhhdXB0dGVpbCBkZXIgVmVyc2lvbnNudW1tZXIuIE5vcm1hbGVyd2Vpc2UgaXN0IGRpZXMgZGllCitWZXJzaW9uc251bW1lciBkZXMgT3JpZ2luYWxwYWtldHMgKLtVcHN0cmVhbaspLCBhdXMgZGVtIGRpZSBcZkkuZGViXGZQXC1EYXRlaQorZXJzdGVsbHQgd3VyZGUsIGZhbGxzIGRpZXMgenV0cmlmZnQuIE5vcm1hbGVyd2Vpc2Ugd2lyZCBkaWVzZSBpbSBnbGVpY2hlbgorRm9ybWF0IHZvcmxpZWdlbiwgd2llIHNpZSB2b24gZGVuIE9yaWdpbmFsYXV0b3JlbiBhbmdlZ2ViZW4gd3VyZGU7CithbGxlcmRpbmdzIG1hZyBlcyBub3R3ZW5kaWcgc2Vpbiwgc2llIHVtenVmb3JtYXRpZXJlbiwgZGFtaXQgc2llIGluIGRhcworRm9ybWF0IGRlcyBQYWtldHZlcndhbHR1bmdzc3lzdGVtcyB1bmQgZGVzIFZlcmdsZWljaHNzY2hlbWFzIHBhc3N0LgorLklQCitEYXMgVmVyZ2xlaWNoc3ZlcmhhbHRlbiBkZXMgUGFrZXR2ZXJ3YWx0dW5nc3N5c3RlbXMgaW4gSGluYmxpY2sgYXVmIGRpZQorXGZJVXBzdHJlYW1cLVZlcnNpb25cZlAgd2lyZCB1bnRlbiBiZXNjaHJpZWJlbi4gRGVyIFxmSVVwc3RyZWFtXC1WZXJzaW9uXGZQXC1BbnRlaWwKK2RlciBWZXJzaW9ubnVtbWVyIG11c3MgYW5nZWdlYmVuIHdlcmRlbi4KKy5JUAorXGZJVXBzdHJlYW1cLVZlcnNpb25cZlAgZGFyZiBudXIgYWxwaGFudW1lcmlzY2hlIFplaWNoZW4gKLtBXC1aYVwtejBcLTmrKSB1bmQgXGZCLlxmUAorXGZCK1xmUCBcZkJcLVxmUCBcZkI6XGZQIFxmQn5cZlAgKFNhdHpwdW5rdCwgUGx1cywgQmluZGVzdHJpY2gsIERvcHBlbHB1bmt0LCBUaWxkZSkKK2VudGhhbHRlbiB1bmQgc29sbHRlIG1pdCBlaW5lciBaYWhsIGJlZ2lubmVuLiBGYWxscyBlcyBrZWluZQorXGZJRGViaWFuXC1SZXZpc2lvblxmUCBnaWJ0LCBzaW5kIEJpbmRlc3RyaWNoZSBuaWNodCBlcmxhdWJ0OyBmYWxscyBlcyBrZWluZQorXGZJRXBvY2hlXGZQIGdpYnQsIHNpbmQgRG9wcGVscHVua3RlIG5pY2h0IGVybGF1YnQuCisuVFAgCitcZklEZWJpYW5cLVJldmlzaW9uXGZQCitEaWVzZXIgVGVpbCBkZXIgVmVyc2lvbnNudW1tZXIgc3BlemlmaXppZXJ0IGRpZSBWZXJzaW9uIGRlcyBEZWJpYW5cLVBha2V0ZXMsCitiYXNpZXJlbmQgYXVmIGRlciBWZXJzaW9uIGRlciBPcmlnaW5hbGF1dG9yZW4uIEVyIGthbm4gbnVyIGFscGhhbnVtZXJpc2NoZQorWmVpY2hlbiB1bmQgXGZCK1xmUCBcZkIuXGZQIFxmQn5cZlAgKFBsdXMsIFNhdHpwdW5rdCwgVGlsZGUpIGVudGhhbHRlbiB1bmQgd2lyZAorZ2VuYXVzbyB3aWUgZGllIFxmSVVwc3RyZWFtXC1WZXJzaW9uXGZQIHZlcmdsaWNoZW4uCisuSVAKK0RpZXNlciBUZWlsIGlzdCBvcHRpb25hbDsgZmFsbHMgZXIgbmljaHQgdm9yaGFuZGVuIGlzdCwgZGFyZgorXGZJVXBzdHJlYW1cLVZlcnNpb25cZlAga2VpbmVuIEJpbmRlc3RyaWNoIGVudGhhbHRlbi4gRGllc2VzIEZvcm1hdCBpc3QgZvxyIGRlbgorRmFsbCwgZGFzcyBlaW4gU3T8Y2sgU29mdHdhcmUgc3BlemllbGwgZGFm/HIgZ2VzY2hyaWViZW4gd3VyZGUsIGVpbgorRGViaWFuXC1QYWtldCB6dSB3ZXJkZW4gdW5kIGVzIGRhaGVyIG51ciBlaW5lILtEZWJpYW5pc2llcnVuZ6sgZ2lidCB1bmQgc29taXQKK2tlaW5lIFJldmlzaW9uc2FuemVpZ2Ugbm90d2VuZGlnIGlzdC4KKy5JUAorRXMgaXN0IPxibGljaCwgZGllIFxmSURlYmlhblwtUmV2aXNpb25cZlAgamVkZXNtYWwgYmVpILsxqyBuZXUgenUgc3RhcnRlbiwgd2VubgorZGllIFxmSVVwc3RyZWFtXC1WZXJzaW9uXGZQIGVyaPZodCB3aXJkLgorLklQCitEcGtnIHdpcmQgZGllIFZlcnNpb25zbnVtbWVyIGJlaW0gbGV0enRlbiBCaW5kZXN0cmljaCBpbiBkZXIgWmVpY2hlbmtldHRlCithdWZ0cmVubmVuIChmYWxscyBkaWVzZXIgZXhpc3RpZXJ0KSB1bSBkaWUgXGZJVXBzdHJlYW1cLVZlcnNpb25cZlAgdW5kIGRpZQorXGZJRGViaWFuXC1SZXZpc2lvblxmUCB6dSBiZXN0aW1tZW4uIEltIFZlcmdsZWljaCBiZWZpbmRldCBzaWNoIGVpbmUgZmVobGVuZGUKK1xmSURlYmlhblwtUmV2aXNpb25cZlAgdm9yIGVpbmVyIHZvcmhhbmRlbmVuIChiZWFjaHRlbiBTaWUgYWJlciwgZGFzcyBlcyBzaWNoCitiZWkgZGVyIFxmSURlYmlhblwtUmV2aXNpb25cZlAgdW0gZGVuIFRlaWwgZGVyIFZlcnNpb25zbnVtbWVyIG1pdCBkZXIgZ2VyaW5nc3RlbgorU2lnbmlmaWthbnogaGFuZGVsdCkuCisuU1MgU29ydGllcmFsZ29yaXRobXVzCitEaWUgXGZJVXBzdHJlYW1cLVZlcnNpb25cZlBcLSB1bmQgXGZJRGViaWFuXC1SZXZpc2lvblxmUFwtVGVpbGUgd2VyZGVuIHZvbiBkZXIKK1Bha2V0dmVyd2FsdHVuZyBuYWNoIGRlbSBnbGVpY2hlbiBBbGdvcml0aG11cyB2ZXJnbGljaGVuOgorLlBQCitEaWUgWmVpY2hlbmtldHRlbiB3ZXJkZW4gdm9uIGxpbmtzIG5hY2ggcmVjaHRzIHZlcmdsaWNoZW4uCisuUFAKK1p1ZXJzdCB3aXJkIGRlciBBbmZhbmdzdGVpbCBqZWRlciBaZWljaGVua2V0dGUgYmVzdGltbXQsIGRlciBrb21wbGV0dCBhdXMKK25pY2h0XC1aaWZmZXJuXC1aZWljaGVuIGJlc3RlaHQuIERpZXNlIHp3ZWkgVGVpbGUgKHZvbiBkZW5lbiBlaW5lciBsZWVyIHNlaW4KK2thbm4pIHdlcmRlbiBsZXhpa2FsaXNjaCB2ZXJnbGljaGVuLiBXaXJkIGVpbiBVbnRlcnNjaGllZCBnZWZ1bmRlbiwgd2lyZAorZGllc2VyIHp1cvxja2dlbGllZmVydC4gRGVyIGxleGlrYWxpc2NoZSBWZXJnbGVpY2ggaXN0IGVpbiB2ZXLkbmRlcnRlcgorVmVyZ2xlaWNoIHZvbiBBU0NJSVwtV2VydGVuLCBiZWkgZGVuZW4gQnVjaHN0YWJlbiB2b3IgYWxsZW4gbmljaHRcLUJ1Y2hzdGFiZW4KK3NvcnRpZXJ0IHdlcmRlbiB1bmQgZGllIFRpbGRlIHZvciBhbGxlbSBzb3J0aWVydCB3aXJkLCBzb2dhciB2b3IgZGVtIEVuZGUKK2VpbmVzIFRlaWxlcy4gU28gc2luZCB6dW0gQmVpc3BpZWwgZGllIGZvbGdlbmRlbiBUZWlsZSBpbiBzb3J0aWVydGVyCitSZWloZW5mb2xnZTogu35+qywgu35+YassILt+qywgZGVyIGxlZXJlIFRlaWwsILthqy4KKy5QUAorRGFubiB3aXJkIGRlciBBbmZhbmdzdGVpbCBkZXMgUmVzdGVzIGplZGVyIFplaWNoZW5rZXR0ZSBiZXN0aW1tdCwgZGVyCitrb21wbGV0dCBhdXMgWmlmZmVybiBiZXN0ZWh0LiBEZXIgbnVtZXJpc2NoZSBXZXJ0IGRpZXNlciB6d2VpIFRlaWxlIHdpcmQKK3ZlcmdsaWNoZW4sIHVuZCBqZWRlciBnZWZ1bmRlbmUgVW50ZXJzY2hpZWQgd2lyZCBhbHMgRXJnZWJuaXMgZGVzIFZlcmdsZWljaHMKK3p1cvxja2dlbGllZmVydC4gRvxyIGRpZXNlbiBad2VjayB65GhsdCBkaWUgbGVlcmUgWmVpY2hlbmtldHRlIChkaWUgbnVyIGFtCitFbmRlIGVpbmVyIG9kZXIgYmVpZGVyIGRlciB6dSB2ZXJnbGVpY2hlbmRlbiBWZXJzaW9uc3plaWNoZW5rZXR0ZW4KK2F1ZnRhdWNoZW4ga2FubikgYWxzIE51bGwuCisuUFAKK0RpZXNlIHp3ZWkgU2Nocml0dGUgKFZlcmdsZWljaGVuIHVuZCBFbnRmZXJuZW4gdm9uCituaWNodFwtWmlmZmVyblwtWmVpY2hlbmtldHRlbiB1bmQgWmlmZmVyblwtWmVpY2hlbmtldHRlbiBhbSBBbmZhbmcpIHdlcmRlbgord2llZGVyaG9sdCwgYmlzIGVpbiBVbnRlcnNjaGllZCBnZWZ1bmRlbiB3aXJkIG9kZXIgYmVpZGUgWmVpY2hlbmtldHRlbgorZXJzY2j2cGZ0IHd1cmRlbi4KKy5QUAorQmVhY2h0ZW4gU2llLCBkYXNzIEVwb2NoZW4gdW5zIGVybGF1YmVuLCBGZWhsZXIgaW4gZGVyIFZlcnNpb25zbnVtbWVyaWVydW5nCit6dXL8Y2t6dWxhc3NlbiwgdW5kIG1pdCBTaXR1YXRpb25lbiB1bXp1Z2VoZW4sIGluIGRlbmVuIHNpY2ggZGFzIFNjaGVtYSBkZXIKK1ZlcnNpb25zbnVtbWVyaWVydW5nIORuZGVydC4gU2llIHNpbmQgXGZCbmljaHRcZlAgZGF6dSBnZWRhY2h0LCBtaXQKK1ZlcnNpb25zbnVtbWVybiB1bXp1Z2VoZW4sIGRpZSBaZWljaGVua2V0dGVuIGF1cyBCdWNoc3RhYmVuIGVudGhhbHRlbiwgZGllCitkYXMgUGFrZXR2ZXJ3YWx0dW5nc3N5c3RlbSBuaWNodCBpbnRlcnByZXRpZXJlbiBrYW5uICh3aWUgu0FMUEhBqyBvZGVyCiu7cHJlqykgb2RlciBtaXQgdW5rbHVnZW4gUmVpaGVuZm9sZ2VuLgorLlNIIFdBUk5VTkcKK0RhcyBUaWxkZVwtWmVpY2hlbiB1bnMgc2VpbmUgc3BlemllbGxlbiBTb3J0aWVyZWlnZW5zY2hhZnRlbiB3dXJkZW4gaW4KK1ZlcnNpb24gMS4xMCB2b24gZHBrZyBlaW5nZWb8aHJ0IHVuZCBlaW5pZ2UgVGVpbGUgdm9uIGRwa2dcLWRldiBoYWJlbiBlcnN0CitzcOR0ZXIgaW4gZGVyIDEuMTAueFwtU2VyaWUgVW50ZXJzdPx0enVuZyBkYWb8ciBlcmhhbHRlbi4KKy5TSCDcQkVSU0VUWlVORworRGllIGRldXRzY2hlINxiZXJzZXR6dW5nIHd1cmRlIDIwMDQsIDIwMDYtMjAxMSB2b24gSGVsZ2UgS3JldXR6bWFubgorPGRlYmlhbkBoZWxnZWZqZWxsLmRlPiwgMjAwNyB2b24gRmxvcmlhbiBSZWhuaXNjaCA8ZWl4bWFuQGdteC5kZT4gdW5kCisyMDA4IHZvbiBTdmVuIEpvYWNoaW0gPHN2ZW5qb2FjQGdteC5kZT4KK2FuZ2VmZXJ0aWd0LiBEaWVzZSDcYmVyc2V0enVuZyBpc3QgRnJlaWUgRG9rdW1lbnRhdGlvbjsgbGVzZW4gU2llIGRpZQorR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgVmVyc2lvbiAyIG9kZXIgbmV1ZXIgZvxyIGRpZSBLb3BpZXJiZWRpbmd1bmdlbi4KK0VzIGdpYnQgS0VJTkUgSEFGVFVORy4KKy5TSCAiU0lFSEUgQVVDSCIKK1xmQmRlYlwtY29udHJvbFxmUCg1KSwgXGZCZGViXGZQKDUpLCBcZkJkcGtnXGZQKDEpCisuU0ggQVVUT1JFTgorQ29weXJpZ2h0IFwoY28gMTk5NiwxOTk3LDE5OTggSWFuIEphY2tzb24gYW5kIENocmlzdGlhbiBTY2h3YXJ6CisuYnIKK0NvcHlyaWdodCBcKGNvIDIwMDcgRnJhbmsgTGljaHRlbmhlbGQKKy5zcAorRGllcyBpc3QgRnJlaWUgU29mdHdhcmU7IGxlc2VuIFNpZSBkaWUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgVmVyc2lvbiAyCitvZGVyIG5ldWVyIGb8ciBkaWUgS29waWVyYmVkaW5ndW5nZW4uIEVzIGdpYnQgS0VJTkUgSGFmdHVuZy4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL2RlL2RlYi41IGIvZHBrZy0xLjE2LjEuMS9tYW4vZGUvZGViLjUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjlmODhiZgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL2RlL2RlYi41CkBAIC0wLDAgKzEsNzcgQEAKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlRIIGRlYiA1IDIwMTFcLTA4XC0xNCBEZWJpYW5cLVByb2pla3QgRGViaWFuCisuU0ggTkFNRQorZGViIFwtIERlYmlhblwtQmlu5HJwYWtldGZvcm1hdAorLlNIINxCRVJTSUNIVAorXGZJRGF0ZWluYW1lXGZQXGZCLmRlYlxmUAorLlNIIEJFU0NIUkVJQlVORworRGFzIFxmQi5kZWJcZlBcLUZvcm1hdCBpc3QgZGFzIERlYmlhblwtQmlu5HJwYWtldGRhdGVpZm9ybWF0LiBFcyB3aXJkIHZvbiBkcGtnCiswLjkzLjc2IHVuZCBuZXVlciB2ZXJzdGFuZGVuLCB1bmQgd2lyZCBzdGFuZGFyZG3k32lnIHZvbiBhbGxlbgorZHBrZ1wtVmVyc2lvbmVuIHNlaXQgMS4yLjAgdW5kIGFsbGVuIGkzODYvRUxGXC1WZXJzaW9uZW4gc2VpdCAxLjEuMWVsZgorZXJ6ZXVndC4KKy5QUAorRGFzIGhpZXIgYmVzY2hyaWViZW5lIEZvcm1hdCB3aXJkIHNlaXQgRGViaWFuIDAuOTMgdmVyd2VuZGV0OyBEZXRhaWxzIPxiZXIKK2RhcyBhbHRlIEZvcm1hdCBzaW5kIGluIFxmQmRlYlwtb2xkXGZQKDUpIGJlc2NocmllYmVuLgorLlNIIEZPUk1BVAorRGllIERhdGVpIGlzdCBlaW4gXGZCYXJcZlBcLUFyY2hpdiBtaXQgZWluZXIgbWFnaXNjaGVuIFphaGwgdm9uCitcZkIhPGFyY2g+XGZQLiBEZXIgRGF0ZWluYW1lIGthbm4gbWl0IGVpbmVtIFNjaHLkZ3N0cmljaCBhYnNjaGxpZd9lbi4KKy5QUAorRGVyemVpdCB3ZXJkZW4gZGllIGZvbGdlbmRlbiBcZkJ0YXJcZlBcLUFyY2hpdmUgZXJsYXVidDogYWx0ZXIgU3RpbCAoVjdcLSlGb3JtYXQsCitwcmVcLVBPU0lYXC11c3RhclwtRm9ybWF0LCBlaW5lIFRlaWxtZW5nZSBkZXMgR05VXC1Gb3JtYXRzIChudXIgZGVyIG5ldWUgU3RpbAorbWl0IGxhbmdlbiBQZmFkbmFtZW4gdW5kIGxhbmdlbiBMaW5rbmFtZW4sIHVudGVyc3T8dHp0IHNlaXQgRHBrZyAxLjQuMS4xNykKK3VuZCBkYXMgUE9TSVhcLXVzdGFyXC1Gb3JtYXQgKGxhbmdlIE5hbWVuIHNlaXQgRHBrZyAxLjE1LjAKK3VudGVyc3T8dHp0KS4gVW5iZWthbm50ZSBUYXJcLVR5cGVpbnN0ZWxsdW5nZW4gd2VyZGVuIGFscyBGZWhsZXIgYmV0cmFjaHRldC4KKy5QUAorRGFzIGVyc3RlIE1pdGdsaWVkIGhlad90IFxmQmRlYmlhblwtYmluYXJ5XGZQIHVuZCBlbnRo5Gx0IGVpbmUgUmVpaGUgdm9uIFplaWxlbiwKK2RpZSBkdXJjaCBaZWlsZW51bWJy/GNoZSBnZXRyZW5udCBzaW5kLiBEZXJ6ZWl0IGlzdCBudXIgZWluZSBaZWlsZQordm9yaGFuZGVuLCBkaWUgVmVyc2lvbnNudW1tZXIsIFxmQjIuMFxmUCB6dW0gWmVpdHB1bmt0IHp1IGRlbSBkaWVzZQorSGFuZGJ1Y2hzZWl0ZSBnZXNjaHJpZWJlbiB3dXJkZS4gUHJvZ3JhbW1lLCBkaWUgQXJjaGl2ZSBpbSBuZXVlbiBGb3JtYXQKK2xlc2VuLCBzb2xsdGVuIGRhcmF1ZiB2b3JiZXJlaXRldCBzZWluLCBkYXNzIHNpY2ggZGllIE5hY2hrb21tYXphaGwgZXJo9mh0Cit1bmQgbmV1ZSBaZWlsZW4gdm9yaGFuZGVuIHNlaW4ga/ZubmVuLCB1bmQgc29sbHRlbiBkaWVzZSBpZ25vcmllcmVuLCBmYWxscworZGllcyBkZXIgRmFsbCBpc3QuCisuUFAKK0ZhbGxzIHNpY2ggZGllIFZvcmtvbW1hemFobCBnZeRuZGVydCBoYXQsIHd1cmRlIGVpbmUgaW5rb21wYXRpYmxlIMRuZGVydW5nCitkdXJjaGdlZvxocnQgdW5kIGRhcyBQcm9ncmFtbSBzb2xsdGUgc2ljaCBiZWVuZGVuLiBGYWxscyBkaWVzIG5pY2h0IGRlciBGYWxsCitpc3QsIGRhbm4gc29sbHRlIGRhcyBQcm9ncmFtbSBzaWNoZXIgZm9ydGZhaHJlbiBr9m5uZW4sIGVzIHNlaSBkZW5uLCBlaW4KK3VuZXJ3YXJ0ZXRlcyBNaXRnbGllZCBpc3QgaW0gQXJjaGl2IChhYmdlc2VoZW4gdm9tIEVuZGUpIGdlZnVuZGVuIHdvcmRlbiwKK3dpZSB1bnRlbiBiZXNjaHJpZWJlbi4KKy5QUAorRGFzIHp3ZWl0ZSBlcmZvcmRlcmxpY2hlIE1pdGdsaWVkIGhlad90IFxmQmNvbnRyb2wudGFyLmd6XGZQLiBFcyBpc3QgZWluCitnZXppcHB0ZXMgVGFyXC1BcmNoaXYsIGRhcyBkaWUgU3RldWVyaW5mb3JtYXRpb25lbiBhbHMgZWluZSBSZWloZSB2b24KK25vcm1hbGVuIERhdGVpZW4gZW50aORsdCwgdm9uIGRlbmVuIGRpZSBEYXRlaSBcZkJjb250cm9sXGZQIHp3aW5nZW5kCitlcmZvcmRlcmxpY2ggaXN0IHVuZCBkaWUgS2VyblwtU3RldWVyaW5mb3JtYXRpb25lbiBlbnRo5Gx0LiBEZXIKK1N0ZXVlclwtVGFyYmFsbCBrYW5uIG9wdGlvbmFsIGVpbmVuIEVpbnRyYWcgZvxyILtcZkIuXGZQqywgZGFzIGFrdHVlbGxlCitWZXJ6ZWljaG5pcywgZW50aGFsdGVuLgorLlBQCitEYXMgZHJpdHRlLCBsZXR6dGUgendpbmdlbmQgYmVu9nRpZ3RlIE1pdGdsaWVkIGhlad90IFxmQmRhdGEudGFyXGZQLiBFcyBlbnRo5Gx0CitkYXMgRGF0ZWlzeXN0ZW0gYWxzIFRhclwtQXJjaGl2LCBlbnR3ZWRlciB1bmtvbXByaW1pZXJ0IChzZWl0IERwa2cgMS4xMC4yNAordW50ZXJzdPx0enQpIG9kZXIgbWl0IGd6aXAgKERhdGVpZW5kdW5nIFxmQi5nelxmUCksIHh6IChEYXRlaWVuZHVuZyBcZkIueHpcZlAgc2VpdAorRHBrZyAxLjE1LjYgdW50ZXJzdPx0enQpLGJ6aXAyIChEYXRlaWVuZHVuZyBcZkIuYnoyXGZQLCBzZWl0IERwa2cgMS4xMC4yNAordW50ZXJzdPx0enQpIG9kZXIgbHptYSAoRGF0ZWllbmR1bmcgXGZCLmx6bWFcZlAsIHNlaXQgRHBrZyAxLjEzLjI1IHVudGVyc3T8dHp0KQora29tcHJpbWllcnQuCisuUFAKK0RpZXNlIE1pdGdsaWVkZXIgbfxzc2VuIGluIGdlbmF1IGRpZXNlciBSZWloZW5mb2xnZSBhdWZ0YXVjaGVuLiBBa3R1ZWxsZQorSW1wbGVtZW50YXRpb25lbiBzb2xsdGVuIHp1c+R0emxpY2hlIE1pdGdsaWVkZXIgbmFjaCBcZkJkYXRhLnRhclxmUAoraWdub3JpZXJlbi4gV2VpdGVyZSBNaXRnbGllZGVyIGv2bm50ZW4gaW4gZGVyIFp1a3VuZnQgZGVmaW5pZXJ0IHdlcmRlbiB1bmQKK3dlcmRlbiAoZmFsbHMgbfZnbGljaCkgbmFjaCBkaWVzZW4gZHJlaSBwbGF0emllcnQuIEFsbGUgenVz5HR6bGljaGVuCitNaXRnbGllZGVyLCBkaWUgdm9yIFxmQmRhdGEudGFyXGZQIGVpbmdlZvxndCB3ZXJkZW4ga/ZubnRlbiB1bmQgZGllIHByb2JsZW1sb3MKK3ZvbiDkbHRlcmVuIFByb2dyYW1tZW4gaWdub3JpZXJ0IHdlcmRlbiBzb2xsdGVuLCB3ZXJkZW4gTmFtZW4gaGFiZW4sIGRpZSBtaXQKK2VpbmVtIFVudGVyc3RyaWNoILtcZkJfXGZQqyBhbmZhbmdlbi4KKy5QUAorU29sY2hlIG5ldWVuIE1pdGdsaWVkZXIsIGRpZSBuaWNodCBwcm9ibGVtbG9zIGlnbm9yaWVydCB3ZXJkZW4ga/ZubmVuLAord2VyZGVuIHZvciBcZkJkYXRhLnRhclxmUCBtaXQgTmFtZW4sIGRpZSBuaWNodCBtaXQgZWluZW0gVW50ZXJzdHJpY2ggYW5mYW5nZW4sCitlaW5nZWb8Z3Qgb2RlciB3ZXJkZW4gKHdhaHJzY2hlaW5saWNoZXIpIGRhenUgZvxocmVuLCBkYXNzIGRpZQorSGF1cHR2ZXJzaW9uc251bW1lciBlcmj2aHQgd2lyZC4KKy5TSCDcQkVSU0VUWlVORworRGllIGRldXRzY2hlINxiZXJzZXR6dW5nIHd1cmRlIDIwMDQsIDIwMDYtMjAxMSB2b24gSGVsZ2UgS3JldXR6bWFubgorPGRlYmlhbkBoZWxnZWZqZWxsLmRlPiwgMjAwNyB2b24gRmxvcmlhbiBSZWhuaXNjaCA8ZWl4bWFuQGdteC5kZT4gdW5kCisyMDA4IHZvbiBTdmVuIEpvYWNoaW0gPHN2ZW5qb2FjQGdteC5kZT4KK2FuZ2VmZXJ0aWd0LiBEaWVzZSDcYmVyc2V0enVuZyBpc3QgRnJlaWUgRG9rdW1lbnRhdGlvbjsgbGVzZW4gU2llIGRpZQorR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgVmVyc2lvbiAyIG9kZXIgbmV1ZXIgZvxyIGRpZSBLb3BpZXJiZWRpbmd1bmdlbi4KK0VzIGdpYnQgS0VJTkUgSEFGVFVORy4KKy5TSCAiU0lFSEUgQVVDSCIKK1xmQmRlYlwtb2xkXGZQKDUpLCBcZkJkcGtnXC1kZWJcZlAoMSksIFxmQmRlYlwtY29udHJvbFxmUCg1KS4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL2RlL2Rwa2ctYXJjaGl0ZWN0dXJlLjEgYi9kcGtnLTEuMTYuMS4xL21hbi9kZS9kcGtnLWFyY2hpdGVjdHVyZS4xCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjEyYTAwYjkKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9kZS9kcGtnLWFyY2hpdGVjdHVyZS4xCkBAIC0wLDAgKzEsMzIzIEBACisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkcGtnXC1hcmNoaXRlY3R1cmUgMSAyMDExXC0wOFwtMTQgRGViaWFuXC1Qcm9qZWt0IGRwa2dcLUhpbGZzcHJvZ3JhbW1lCisuU0ggTkFNRQorZHBrZ1wtYXJjaGl0ZWN0dXJlIFwtIEFyY2hpdGVrdHVyIHp1bSBQYWtldGJhdSBzZXR6ZW4gdW5kIGJlc3RpbW1lbgorLgorLlNIINxCRVJTSUNIVAorXGZCZHBrZ1wtYXJjaGl0ZWN0dXJlXGZQIFtcZklPcHRpb25cZlAuLi5dIFtcZklCZWZlaGxcZlBdCisuUFAKKy4KKy5TSCBCRVNDSFJFSUJVTkcKK2Rwa2dcLWFyY2hpdGVjdHVyZSBzdGVsbHQgZWluZSBN9mdsaWNoa2VpdCBiZXJlaXQsIGRpZSBSZWNobmVyXC1BcmNoaXRla3R1cgorZvxyIGRlbiBQYWtldGJhdSB6dSBiZXN0aW1tZW4gdW5kIHp1IHNldHplbi4KKy5QUAorRGllIEJhdVwtQXJjaGl0ZWt0dXIgd2lyZCBpbW1lciD8YmVyIGVpbmVuIGV4dGVybmVuIEF1ZnJ1ZiBhbiBcZkJkcGtnXGZQKDEpCitiZXN0aW1tdCB1bmQga2FubiBuaWNodCBhdWYgZGVyIEtvbW1hbmRvemVpbGUgZ2VzZXR6dCB3ZXJkZW4uCisuUFAKK1NpZSBr9m5uZW4gZGllIEhvc3RcLUFyY2hpdGVrdHVyIChXaXJ0XC1BcmNoaXRla3R1cikgc3BlemlmaXppZXJlbiwgaW5kZW0gU2llCitlaW5lIG9kZXIgYmVpZGUgZGVyIE9wdGlvbmVuIFxmQlwtYVxmUCBvZGVyIFxmQlwtdFxmUCB2ZXJ3ZW5kZW4uIERlciBTdGFuZGFyZHdlcnQKK3dpcmQg/GJlciBlaW5lbiBleHRlcm5lbiBBdWZydWYgYW4gXGZCZ2NjXGZQKDEpIGVybWl0dGVsdCBvZGVyIGlzdCBpZGVudGlzY2gKK21pdCBkZXIgQmF1YXJjaGl0ZWt0dXIsIGZhbGxzIHNvd29obCBccy0xQ0NcczAgYWxzIGF1Y2ggR2NjIG5pY2h0IHZlcmb8Z2Jhcgorc2luZC4gRWluZXIgdm9uIFxmQlwtYVxmUCBvZGVyIFxmQlwtdFxmUCBpc3QgYXVzcmVpY2hlbmQsIGRlciBXZXJ0IGRlcyBhbmRlcmVuIHdpcmQKK2F1ZiBlaW5lbiBicmF1Y2hiYXJlbiBXZXJ0IGdlc2V0enQuIFRhdHPkY2hsaWNoIGlzdCBlcyBvZnQgYmVzc2VyLCBudXIgZWluZW4KK2RlciBiZWlkZW4gYW56dWdlYmVuLCBkYSBcZkJkcGtnXC1hcmNoaXRlY3R1cmVcZlAgU2llIHdhcm5lbiB3aXJkLCBmYWxscyBJaHJlCitXYWhsIG5pY2h0IG1pdCBkZW0gU3RhbmRhcmR3ZXJ0IPxiZXJlaW5zdGltbXQuCisuCisuU0ggQkVGRUhMRQorLlRQIAorXGZCXC1sXGZQCitaZWlnZSBkaWUgVW1nZWJ1bmdzdmFyaWFibGVuLCBlaW5lIHBybyBaZWlsZSwgaW4gZGVtIEZvcm1hdAorXGZJVkFSSUFCTEU9V2VydFxmUC4gRGllcyBpc3QgZGllIFN0YW5kYXJkYWt0aW9uLgorLlRQIAorXGZCXC1lXGZQXGZJRGViaWFuXC1BcmNoaXRla3R1clxmUAor3GJlcnBy/GZlIGF1ZiBHbGVpY2hoZWl0IGRlciBBcmNoaXRla3R1cmVuLiBTdGFuZGFyZG3k32lnIHdpcmQKK1xmSURlYmlhblwtQXJjaGl0ZWt0dXJcZlAgZ2VnZW4gZGllIGFrdHVlbGxlIERlYmlhblwtQXJjaGl0ZWt0dXIgYXVmIGRlbSBIb3N0CitnZXBy/GZ0LiBEaWVzZSBBa3Rpb24gZXhwYW5kaWVydCBuaWNodCBkaWUgQXJjaGl0ZWt0dXJcLVBsYXR6aGFsdGVyCisoV2lsZGNhcmRzKS4gRGVyIEJlZmVobCBiZWVuZGV0IHNpY2ggbWl0IGVpbmVtIEV4aXRcLVN0YXR1cyB2b24gMCwgZmFsbHMgZWluZQor3GJlcmVpbnN0aW1tdW5nIGJlc3RlaHQsIGFuZGVybmZhbGxzIG1pdCAxLgorLlRQIAorXGZCXC1pXGZQXGZJQXJjaGl0ZWt0dXJcLVBsYXR6aGFsdGVyXGZQCivcYmVycHL8ZmUgZGllIElkZW50aXTkdCBlaW5lciBBcmNoaXRla3R1ciwgaW5kZW0gXGZJQXJjaGl0ZWt0dXJcLVBsYXR6aGFsdGVyXGZQCithbHMgZWluIEFyY2hpdGVrdHVyXC1QbGF0emhhbHRlciBleHBhbmRpZXJ0IHVuZCBtaXQgZGVyIGFrdHVlbGxlbgorRGViaWFuXC1BcmNoaXRla3R1ciB2ZXJnbGljaGVuIHdpcmQuIERlciBCZWZlaGwgZW5kZXQgbWl0IGVpbmVtIEV4aXRcLVN0YXR1cwordm9uIDAsIGZhbGxzIGVpbmUg3GJlcmVpbnN0aW1tdW5nIGdlZnVuZGVuIHd1cmRlLCBhbnNvbnN0ZW4gbWl0IDEuCisuVFAgCitcZkJcLXFcZlBcZklWYXJpYWJsZW5uYW1lXGZQCitaZWlnZSBkZW4gV2VydCBlaW5lciBlaW56ZWxuZW4gVmFyaWFibGVuIGFuLgorLlRQIAorXGZCXC1zXGZQCitaZWlnZSBlaW5lbiBFeHBvcnRcLUJlZmVobC4gRGllcyBrYW5uIGRhenUgdmVyd2VuZGV0IHdlcmRlbiwgdW0KK1VtZ2VidW5nc3ZhcmlhYmxlbiBtaXR0ZWxzIGV2YWwgenUgc2V0emVuLgorLlRQIAorXGZCXC11XGZQCivEaG5saWNoIHdpZSBcZkJcLXNcZlAsIGdlYmUgZWluZW4gRXhwb3J0XC1CZWZlaGwgYXVzLCBkZXIgYWxsZSBWYXJpYWJsZW4gbPZzY2h0LgorLlRQIAorXGZCXC1jXGZQXGZJIEJlZmVobFxmUAorRvxocmUgZWluZW4gXGZJQmVmZWhsXGZQIGluIGVpbmVyIFVtZ2VidW5nIGF1cywgaW4gZGVyIGFsbGUgVmFyaWFibGVuIGF1ZiBkaWUKK2Zlc3RnZWxlZ3RlbiBXZXJ0ZSBnZXNldHp0IHNpbmQuCisuVFAgCitcZkJcLUxcZlAKK1plaWdlIGVpbmUgTGlzdGUgdm9uIGf8bHRpZ2VuIEFyY2hpdGVrdHVybmFtZW4uCisuVFAgCitcZkJcLVwtaGVscFxmUAorWmVpZ2UgZGVuIEJlZGllbnVuZ3NoaW53ZWlzIHVuZCBiZWVuZGUuCisuVFAgCitcZkJcLVwtdmVyc2lvblxmUAorR2ViZSBkaWUgVmVyc2lvbiBhdXMgdW5kIGJlZW5kZSBzaWNoLgorLgorLlNIIE9QVElPTkVOCisuVFAgCitcZkJcLWFcZlBcZklEZWJpYW5cLUFyY2hpdGVrdHVyXGZQCitTZXR6ZSBkaWUgRGViaWFuXC1BcmNoaXRla3R1ci4KKy5UUCAKK1xmQlwtdFxmUFxmSUdOVVwtU3lzdGVtdHlwXGZQCitTZXR6ZSBkZW4gR05VXC1TeXN0ZW10eXAuCisuVFAgCitcZkJcLWZcZlAKK0V4aXN0aWVyZW5kZSBVbWdlYnVuZ3N2YXJpYWJsZW4gbWl0IGRlbSBnbGVpY2hlbiBOYW1lbiB3aWUgdm9tIFNrcmlwdAordmVyd2VuZGV0IHdlcmRlbiBuaWNodCD8YmVyc2NocmllYmVuIChkLmguIHNpZSB3ZXJkZW4gdm9uCitcZkJkcGtnXC1hcmNoaXRlY3R1cmVcZlAgdmVyd2VuZGV0KSwgZXMgc2VpIGRlbm4sIGRpZSC7Zm9yY2WrXC1NYXJraWVydW5nIGlzdAorZ2VzZXR6dC4gRGllcyBlcmxhdWJ0IGVzIGRlbSBCZW51dHplciBlaW5lbiBXZXJ0IHp1IPxiZXJzY2hyZWliZW4sIHNlbGJzdAord2VubiBkZXIgQXVmcnVmIHZvbiBcZkJkcGtnXC1hcmNoaXRlY3R1cmVcZlAgdGllZiBpbiBlaW5lbSBhbmRlcmVuIFNrcmlwdAordmVyc3RlY2t0IGlzdCAoYmVpc3BpZWxzd2Vpc2UgXGZCZHBrZ1wtYnVpbGRwYWNrYWdlXGZQKDEpKS4KKy4KKy5TSCBBVVNEUtxDS0UKKy5JUCBCYXVtYXNjaGluZSA0CitEaWUgTWFzY2hpbmUsIGF1ZiBkZXIgZGFzIFBha2V0IGdlYmF1dCB3aXJkLgorLklQIEhvc3RcLU1hc2NoaW5lIDQKK0RpZSBNYXNjaGluZSwgZvxyIGRpZSBkYXMgUGFrZXQgZ2ViYXV0IGlzdC4KKy5JUCBEZWJpYW5cLUFyY2hpdGVrdHVyIDQKK0RpZSBEZWJpYW5cLUFyY2hpdGVrdHVyXC1aZWljaGVua2V0dGUsIGRpZSBkZW4gYmlu5HJlbiBCYXVtIGltCitccy0xRlRQXHMwXC1BcmNoaXYgc3BlemlmaXppZXJ0LiBCZWlzcGllbGU6IGkzODYsIHNwYXJjLCBodXJkXC1pMzg2LgorLklQIEFyY2hpdGVrdHVyXC1QbGF0emhhbHRlciA0CitFaW4gQXJjaGl0ZWt0dXJcLVBsYXR6aGFsdGVyIGlzdCBlaW5lIHNwZXppZWxsZSBBcmNoaXRla3R1clwtWmVpY2hlbmtldHRlLCBkaWUKK2F1ZiBqZWRlIHJlYWxlIEFyY2hpdGVrdHVyLCBkaWUgZWluIFRlaWwgZGF2b24gaXN0LCBwYXNzdC4gRGllIGFsbGdlbWVpbmUKK0Zvcm0gaXN0IDxLZXJuPlwtPENQVT4uIEJlaXNwaWVsZTogbGludXhcLWFueSwgYW55XC1pMzg2LAoraHVyZFwtYW55LgorLklQIFxzLTFHTlVcczBcLVN5c3RlbXR5cCA0CitFaW5lIEFyY2hpdGVrdHVyXC1TcGV6aWZpa2F0aW9uc1wtWmVpY2hlbmtldHRlIGJlc3RlaHQgYXVzIHp3ZWksIGR1cmNoIGVpbmVuCitCaW5kZXN0cmljaCBnZXRyZW5udGVuIFRlaWxlbjogQ1BVIHVuZCBTeXN0ZW0uIEJlaXNwaWVsZTogaTM4NlwtbGludXhcLWdudSwKK3NwYXJjXC1saW51eFwtZ251LCBpMzg2XC1nbnUsIHg4Nl82NFwtbmV0YnNkLgorLgorLlNIIFZBUklBQkxFTgorRGllIGZvbGdlbmRlbiBWYXJpYWJsZW4gd2VyZGVuIHZvbiBcZkJkcGtnXC1hcmNoaXRlY3R1cmVcZlAgZ2VzZXR6dDoKKy5JUCBccy0xREVCX0JVSUxEX0FSQ0hcczAgNAorRGllIERlYmlhblwtQXJjaGl0ZWt0dXIgZGVyIEJhdW1hc2NoaW5lLgorLklQIFxzLTFERUJfQlVJTERfQVJDSF9PU1xzMCA0CitEZXIgRGViaWFuXC1TeXN0ZW1uYW1lIGRlciBCYXVtYXNjaGluZS4KKy5JUCBccy0xREVCX0JVSUxEX0FSQ0hfQ1BVXHMwIDQKK0RlciBEZWJpYW5cLUNQVVwtTmFtZSBkZXIgQmF1bWFzY2hpbmUuCisuSVAgXHMtMURFQl9CVUlMRF9BUkNIX0JJVFNcczAgNAorRGllIFplaWdlcmdy9t9lIGRlciBCYXVtYXNjaGluZSBpbiBCaXRzLgorLklQIFxzLTFERUJfQlVJTERfQVJDSF9FTkRJQU5cczAgNAorRGllIEVuZGlhbm5lc3MgZGVyIEJhdW1hc2NoaW5lIChsaXR0bGUvYmlnKS4KKy5JUCBccy0xREVCX0JVSUxEX0dOVV9DUFVcczAgNAorRGVyIFxzLTFDUFVcczBcLVRlaWwgdm9uIFxzLTFERUJfQlVJTERfR05VX1RZUEVcczAuCisuSVAgXHMtMURFQl9CVUlMRF9HTlVfU1lTVEVNXHMwIDQKK0RlciBTeXN0ZW1cLVRlaWwgdm9uIFxzLTFERUJfQlVJTERfR05VX1RZUEVcczAuCisuSVAgXHMtMURFQl9CVUlMRF9HTlVfVFlQRVxzMCA0CitEZXIgXHMtMUdOVVxzMFwtU3lzdGVtdHlwIGRlciBCYXVtYXNjaGluZS4KKy5JUCBccy0xREVCX0JVSUxEX01VTFRJQVJDSFxzMCA0CitEZXIga2xhcmdlc3RlbGx0ZSBccy0xR05VXHMwXC1TeXN0ZW10eXAgZGVyIEJhdW1hc2NoaW5lLCB3aXJkIGb8cgorRGF0ZWlzeXN0ZW1wZmFkZSBiZW51dHp0LgorLklQIFxzLTFERUJfSE9TVF9BUkNIXHMwIDQKK0RpZSBEZWJpYW5cLUFyY2hpdGVrdHVyIGRlciBIb3N0XC1NYXNjaGluZS4KKy5JUCBccy0xREVCX0hPU1RfQVJDSF9PU1xzMCA0CitEZXIgRGViaWFuXC1TeXN0ZW1uYW1lIGRlciBIb3N0XC1NYXNjaGluZS4KKy5JUCBccy0xREVCX0hPU1RfQVJDSF9DUFVcczAgNAorRGVyIERlYmlhblwtQ1BVXC1OYW1lIGRlciBIb3N0XC1NYXNjaGluZS4KKy5JUCBccy0xREVCX0hPU1RfQVJDSF9CSVRTXHMwIDQKK0RpZSBaZWlnZXJncvbfZSBkZXIgSG9zdFwtTWFzY2hpbmUgaW4gQml0cy4KKy5JUCBccy0xREVCX0hPU1RfQVJDSF9FTkRJQU5cczAgNAorRGllIEVuZGlhbm5lc3MgZGVyIEhvc3RcLU1hc2NoaW5lIChsaXR0bGUvYmlnKS4KKy5JUCBccy0xREVCX0hPU1RfR05VX0NQVVxzMCA0CitEZXIgXHMtMUNQVVxzMFwtVGVpbCB2b24gXHMtMURFQl9IT1NUX0dOVV9UWVBFXHMwLgorLklQIFxzLTFERUJfSE9TVF9HTlVfU1lTVEVNXHMwIDQKK0RlciBTeXN0ZW1cLVRlaWwgdm9uIFxzLTFERUJfSE9TVF9HTlVfVFlQRVxzMC4KKy5JUCBccy0xREVCX0hPU1RfR05VX1RZUEVcczAgNAorRGVyIFxzLTFHTlVcczBcLVN5c3RlbXR5cCBkZXIgSG9zdFwtTWFzY2hpbmUuCisuSVAgXHMtMURFQl9IT1NUX01VTFRJQVJDSFxzMCA0CitEZXIga2xhcmdlc3RlbGx0ZSBccy0xR05VXHMwXC1TeXN0ZW10eXAgZGVyIEhvc3RcLU1hc2NoaW5lLCB3aXJkIGb8cgorRGF0ZWlzeXN0ZW1wZmFkZSBiZW51dHp0LgorLgorLlNIIERFQklBTi9SVUxFUworRGllIFVtZ2VidW5nc3ZhcmlhYmxlbiwgZGllIHZvbiBcZkJkcGtnXC1hcmNoaXRlY3R1cmVcZlAgZ2VzZXR6dCB3ZXJkZW4sIHdlcmRlbgorYW4gXGZJZGViaWFuL3J1bGVzXGZQIGFscyBNYWtlXC1WYXJpYWJsZW4gd2VpdGVyZ2VnZWJlbiAobGVzZW4gU2llIGhpZXJ6dSBkaWUKK01ha2VcLURva3VtZW50YXRpb24pLiBBbGxlcmRpbmdzIHNvbGx0ZW4gU2llIHNpY2ggbmljaHQgYXVmIGRpZXNlIHZlcmxhc3NlbiwKK2RhIGRhbWl0IGRlciBtYW51ZWxsZSBBdWZydWYgZGVzIFNrcmlwdHMgdmVyaGluZGVydCB3aXJkLiBTdGF0dGRlc3Nlbgorc29sbHRlbiBTaWUgc2llIGltbWVyIG1pdCBcZkJkcGtnXC1hcmNoaXRlY3R1cmVcZlAgbWl0IGRlciBcLXFcLU9wdGlvbgoraW5pdGlhbGlzaWVyZW4uIEhpZXIgc2luZCBlaW5pZ2UgQmVpc3BpZWxlLCBkaWUgYXVjaCB6ZWlnZW4sIHdpZSBzaWUgZGllCitDcm9zc1wtS29tcGlsaWVydW5nc1wtVW50ZXJzdPx0enVuZyBpbiBJaHJlbSBQYWtldCB2ZXJiZXNzZXJuIGv2bm5lbjoKKy5QUAorCitBbnN0YXR0IHZvbjoKKy5JUAorLm5mCitBUkNIPVxgZHBrZyBcLVwtcHJpbnRcLWFyY2hpdGVjdHVyZVxgCitjb25maWd1cmUgJChccy0xQVJDSFxzMClcLWxpbnV4CisuZmkKKy5QUAordmVyd2VuZGVuIFNpZSBiaXR0ZSBkYXMgZm9sZ2VuZGU6CisuSVAKKy5uZgorXCZccy0xREVCX0JVSUxEX0dOVV9UWVBFXHMwIDo9ICQoc2hlbGwgZHBrZ1wtYXJjaGl0ZWN0dXJlIFwtcURFQl9CVUlMRF9HTlVfVFlQRSkKK1wmXHMtMURFQl9IT1NUX0dOVV9UWVBFXHMwIDo9ICQoc2hlbGwgZHBrZ1wtYXJjaGl0ZWN0dXJlIFwtcURFQl9IT1NUX0dOVV9UWVBFKQorCitjb25maWd1cmUgXC1cLWJ1aWxkPSQoXHMtMURFQl9CVUlMRF9HTlVfVFlQRVxzMCkgXC1cLWhvc3Q9JChccy0xREVCX0hPU1RfR05VX1RZUEVcczApCisuZmkKKy5QUAorCitBbnN0YXR0IHZvbjoKKy5JUAorLm5mCitBUkNIPVxgZHBrZyBcLVwtcHJpbnRcLWFyY2hpdGVjdHVyZVxgCitpZmVxICgkKFxzLTFBUkNIXHMwKSxhbHBoYSkKKyAgLi4uCitlbmRpZgorLmZpCisuUFAKK2JpdHRlIHZlcndlbmRlbiBTaWU6CisuSVAKKy5uZgorXCZccy0xREVCX0hPU1RfQVJDSFxzMCA6PSAkKHNoZWxsIGRwa2dcLWFyY2hpdGVjdHVyZSBcLXFERUJfSE9TVF9BUkNIKQorCitpZmVxICgkKFxzLTFERUJfSE9TVF9BUkNIXHMwKSxhbHBoYSkKKyAgLi4uCitlbmRpZgorLmZpCisuUFAKK29kZXIsIGZhbGxzIFNpZSBudXIgZGVuIENQVVwtIG9kZXIgT1NcLVR5cCD8YmVycHL8ZmVuIG38c3NlbiwgdmVyd2VuZGVuIFNpZQorZGllIERFQl9IT1NUX0FSQ0hfQ1BVXC0gb2RlciBERUJfSE9TVF9BUkNIX09TXC1WYXJpYWJsZW4uCisuUFAKK0ltIEFsbGdlbWVpbmVuIHdpcmQgZGVyIEF1ZnJ1ZiB2b24gRHBrZyBpbiBkZXIgu3J1bGVzq1wtRGF0ZWksIHVtCitBcmNoaXRla3R1clwtSW5mb3JtYXRpb25lbiB6dSBlcmhhbHRlbiwgYWJnZWxlaG50IChmYWxscyBTaWUKK1L8Y2t35HJ0c2tvbXBhdGliaWxpdOR0IGJlcmVpdHN0ZWxsZW4gd29sbGVuLCBzaWVoZSB1bnRlbikuIEluc2Jlc29uZGVyZSBkaWUKK1wtXC1wcmludFwtYXJjaGl0ZWN0dXJlXC1PcHRpb24gaXN0IHVuenV2ZXJs5HNzaWcsIGRhIHdpciBEZWJpYW5cLUFyY2hpdGVrdHVyZW4KK2hhYmVuLCBkaWUgbmljaHQgbWl0IGVpbmVtIFByb3plc3Nvcm5hbWVuIPxiZXJlaW5zdGltbWVuLgorLgorLlNIIFLcQ0tXxFJUU0tPTVBBVElCSUxJVMRUCitEaWUgVmFyaWFibGVuIERFQl8qX0FSQ0hfQklUUyB1bmQgREVCXypfQVJDSF9FTkRJQU4gd3VyZGVuIGluIGRwa2dcLWRldgorMS4xNS40IGVpbmdlZvxocnQuIFdlcmRlbiBzaWUgaW4gXGZJZGViaWFuL3J1bGVzXGZQIHZlcndhbmR0LCBiZW72dGlnZW4gc2llCitkYWhlciBlaW5lIEJhdWFiaORuZ2lna2VpdCB2b24gZHBrZ1wtZGV2ICg+PSAxLjE1LjQpLgorLlBQCitEaWUgREVCX0hPU1RfQVJDSF9DUFVcLSB1bmQgREVCX0hPU1RfQVJDSF9PU1wtVmFyaWFibGVuIHd1cmRlbiBpbiBkcGtnXC1kZXYKKzEuMTMuMiBlaW5nZWb8aHJ0LiBWb3JoZXIgdGVuZGllcnRlbiBkaWUgXGZJZGViaWFuL3J1bGVzXGZQXC1EYXRlaWVuIGRhenUsIGRpZQorV2VydGUgZGVyIERFQl9IT1NUX0dOVV9DUFVcLSBvZGVyIERFQl9IT1NUX0dOVV9UWVBFXC1WYXJpYWJsZW4genUg/GJlcnBy/GZlbiwKK2RpZSBhYmVyIMRuZGVydW5nZW4gdW50ZXJsYWdlbi4KKy5QUAorV28gXGZJZGViaWFuL3J1bGVzXGZQXC1EYXRlaWVuIGRpZXNlIFZhcmlhYmxlbiD8YmVycHL8ZmVuIHVtIGZlc3R6dXN0ZWxsZW4sIHdpZQorb2RlciB3YXMgenUga29tcGlsaWVyZW4gaXN0LCBzb2xsdGVuIGRpZXNlIGFrdHVhbGlzaWVydCB3ZXJkZW4sIHVtIGRpZSBuZXVlbgorVmFyaWFibGVuIHVuZCBXZXJ0ZSB6dSB2ZXJ3ZW5kZW4uIFNpZSBt9mNodGVuIGV2ZW50dWVsbAorUvxja3fkcnRza29tcGF0aWJpbGl05HQgenUg5Gx0ZXJlbiBWZXJzaW9uZW4gdm9uIERwa2dcLWRldiBlcmhhbHRlbiwgaW5kZW0KK1NpZSBkZW4gZm9sZ2VuZGVuIENvZGUgdmVyd2VuZGVuOgorLklQCisubmYKK0RFQl9IT1NUX0FSQ0hfQ1BVIDo9ICQoc2hlbGwgZHBrZ1wtYXJjaGl0ZWN0dXJlIFwtcURFQl9IT1NUX0FSQ0hfQ1BVIDI+L2Rldi9udWxsKQorREVCX0hPU1RfQVJDSF9PUyA6PSAkKHNoZWxsIGRwa2dcLWFyY2hpdGVjdHVyZSBcLXFERUJfSE9TVF9BUkNIX09TIDI+L2Rldi9udWxsKQorCisjIEJlcvxja3NpY2h0aWdlIGRpZSBBdXNnYWJlIGRlcyBhbHRlbiBEcGtnXC1hcmNoaXRlY3R1cmUuCitpZmVxICgkKERFQl9IT1NUX0FSQ0hfQ1BVKSwpCisgIERFQl9IT1NUX0FSQ0hfQ1BVIDo9ICQoc2hlbGwgZHBrZ1wtYXJjaGl0ZWN0dXJlIFwtcURFQl9IT1NUX0dOVV9DUFUpCisgIGlmZXEgKCQoREVCX0hPU1RfQVJDSF9DUFUpLHg4Nl82NCkKKyAgICBERUJfSE9TVF9BUkNIX0NQVSA6PSBhbWQ2NAorICBlbmRpZgorZW5kaWYKK2lmZXEgKCQoREVCX0hPU1RfQVJDSF9PUyksKQorICBERUJfSE9TVF9BUkNIX09TIDo9ICQoc3Vic3QgXC1nbnUsLCQoc2hlbGwgZHBrZ1wtYXJjaGl0ZWN0dXJlIFwtcURFQl9IT1NUX0dOVV9TWVNURU0pKQorICBpZmVxICgkKERFQl9IT1NUX0FSQ0hfT1MpLGdudSkKKyAgICBERUJfSE9TVF9BUkNIX09TIDo9IGh1cmQKKyAgZW5kaWYKK2VuZGlmCisuZmkKKy5QUAorVW5kIORobmxpY2ggZvxyIERFQl9CVUlMRF9BUkNIX0NQVSB1bmQgREVCX0JVSUxEX0FSQ0hfT1MuCisuUFAKK0ZhbGxzIFNpZSBub2NoIFZlcnNpb25lbiB2b24gRHBrZ1wtZGV2LCBkaWUgXGZCZHBrZ1wtYXJjaGl0ZWN0dXJlXGZQIG5pY2h0CitlbnRoaWVsdGVuLCB1bnRlcnN0/HR6ZW4gd29sbGVuLCBlcmxlZGlndCBkaWVzIGZvbGdlbmRlczoKKy5JUAorLm5mCitcJlxzLTFERUJfQlVJTERfQVJDSFxzMCA6PSAkKHNoZWxsIGRwa2cgXC1cLXByaW50XC1hcmNoaXRlY3R1cmUpCitcJlxzLTFERUJfQlVJTERfR05VX0NQVVxzMCA6PSAkKHBhdHN1YnN0IGh1cmRcLSUsJSwkKFxzLTFERUJfQlVJTERfQVJDSFxzMCkpCitpZmVxICgkKGZpbHRlclwtb3V0IGh1cmRcLSUsJChccy0xREVCX0JVSUxEX0FSQ0hcczApKSwpCisgIFxzLTFERUJfQlVJTERfR05VX1NZU1RFTVxzMCA6PSBnbnUKK2Vsc2UKKyAgXHMtMURFQl9CVUlMRF9HTlVfU1lTVEVNXHMwIDo9IGxpbnV4XC1nbnUKK2VuZGlmCitERUJfQlVJTERfR05VX1RZUEU9JChccy0xREVCX0JVSUxEX0dOVV9DUFVcczApXC0kKFxzLTFERUJfQlVJTERfR05VX1NZU1RFTVxzMCkKKworXCZccy0xREVCX0hPU1RfQVJDSFxzMCA6PSAkKFxzLTFERUJfQlVJTERfQVJDSFxzMCkKK1wmXHMtMURFQl9IT1NUX0dOVV9DUFVcczAgOj0gJChccy0xREVCX0JVSUxEX0dOVV9DUFVcczApCitcJlxzLTFERUJfSE9TVF9HTlVfU1lTVEVNXHMwIDo9ICQoXHMtMURFQl9CVUlMRF9HTlVfU1lTVEVNXHMwKQorXCZccy0xREVCX0hPU1RfR05VX1RZUEVcczAgOj0gJChccy0xREVCX0JVSUxEX0dOVV9UWVBFXHMwKQorLmZpCisuUFAKK1NldHplbiBTaWUgZWluZSBVbnRlcm1lbmdlIGRpZXNlciBaZWlsZW4gb2JlbiBpbiBJaHJlIGRlYmlhbi9ydWxlc1wtRGF0ZWk7CitkaWVzZSBTdGFuZGFyZHdlcnRlIHdlcmRlbiD8YmVyc2NocmllYmVuLCBmYWxscyBEcGtnXC1hcmNoaXRlY3R1cmUgdmVyd2VuZGV0Cit3aXJkLgorLlBQCitTaWUgYmVu9nRpZ2VuIG5pY2h0IGRlbiBnYW56ZW4gU2F0ei4gV+RobGVuIFNpZSBlaW5lbiBrb25zaXN0ZW50ZW4gU2F0eiwgZGVyCitudXIgZGllIFdlcnRlIGVudGjkbHQsIGRpZSBTaWUgaW4gZGVyIHJ1bGVzXC1EYXRlaSB2ZXJ3ZW5kZW4uIEZhbGxzIFNpZQorYmVpc3BpZWxzd2Vpc2UgbnVyIGRpZSBIb3N0XC1EZWJpYW5cLUFyY2hpdGVrdHVyIGJlbvZ0aWdlbiwgaXN0Ciu7REVCX0hPU1RfQVJDSD1cYGRwa2cgXC1cLXByaW50XC1hcmNoaXRlY3R1cmVcIGF1c3JlaWNoZW5kIChkaWVzIGlzdCBpbiBkZXIgVGF0CitkaWUgRGViaWFuXC1BcmNoaXRla3R1ciBkZXIgQmF1bWFzY2hpbmUsIGFiZXIgZGVua2VuIFNpZSBkYXJhbiwgZGFzcyB3aXIgbnVyCit6dXIgu25hdPxybGljaGVuqyBLb21waWxpZXJ1bmcgcvxja3fkcnRza29tcGF0aWJlbCBzZWluIHdvbGxlbikuCisuUFAKK0RpZSBcZkJcLWVcZlBcLSB1bmQgXGZCXC1pXGZQXC1PcHRpb25lbiB3dXJkZW4gZXJzdCBpbiByZWxhdGl2IG5ldWVuIFZlcnNpb25lbiB2b24KK1xmQmRwa2dcLWFyY2hpdGVjdHVyZVxmUCBlaW5nZWb8aHJ0IChzZWl0IERwa2cgMS4xMy4xMykuCisuCisuU0ggQkVJU1BJRUxFCitcZkJkcGtnXC1idWlsZHBhY2thZ2VcZlAgYWt6ZXB0aWVydCBkaWUgXGZCXC1hXGZQXC1PcHRpb24gdW5kIGdpYnQgZGllcyBhbgorXGZCZHBrZ1wtYXJjaGl0ZWN0dXJlXGZQIHdlaXRlci4gV2VpdGVyZSBCZWlzcGllbGU6CisuSVAKK0NDPWkzODZcLWdudVwtZ2NjIGRwa2dcLWFyY2hpdGVjdHVyZSBcLWMgZGViaWFuL3J1bGVzIGJ1aWxkCisuSVAKK2V2YWwgXGBkcGtnXC1hcmNoaXRlY3R1cmUgXC11XGAKKy5QUAor3GJlcnBy/GZlLCBvYiBlaW5lIEFyY2hpdGVrdHVyIGlkZW50aXNjaCB6dSBkZXIgYWt0dWVsbGVuIEFyY2hpdGVrdHVyIG9kZXIKK2VpbmVyIPxiZXJnZWJlbmVuIGlzdDoKKy5JUAorZHBrZ1wtYXJjaGl0ZWN0dXJlIFwtZWxpbnV4XC1hbHBoYQorLklQCitkcGtnXC1hcmNoaXRlY3R1cmUgXC1hbWlwcyBcLWVsaW51eFwtbWlwcworLlBQCivcYmVycHL8ZmUsIG9iIGRpZSBha3R1ZWxsZSBvZGVyIGVpbmUgbWl0IFwtYSD8YmVyZ2ViZW5lIEFyY2hpdGVrdHVyCitMaW51eFwtU3lzdGVtZSBzaW5kOgorLklQCitkcGtnXC1hcmNoaXRlY3R1cmUgXC1pbGludXhcLWFueQorLklQCitkcGtnXC1hcmNoaXRlY3R1cmUgXC1haTM4NiBcLWlsaW51eFwtYW55CisuCisuU0ggREFURUlFTgorQWxsZSBkaWVzZSBEYXRlaWVuIG38c3NlbiB2b3JoYW5kZW4gc2VpbiwgZGFtaXQgXGZCZHBrZ1wtYXJjaGl0ZWN0dXJlXGZQCitmdW5rdGlvbmllcnQuIElociBPcnQga2FubiB6dXIgTGF1ZnplaXQgbWl0IGRlciBVbWdlYnVuZ3N2YXJpYWJsZQorXGZCRFBLR19EQVRBRElSXGZQIPxiZXJzY2hyaWViZW4gd2VyZGVuLgorLlRQIAorXGZJL3Vzci9zaGFyZS9kcGtnL2NwdXRhYmxlXGZQCitUYWJlbGxlIGRlciBiZWthbm50ZW4gQ1BVXC1OYW1lbiB1bmQgQWJiaWxkdW5nZW4gYXVmIGlocmUgR05VXC1OYW1lbi4KKy5UUCAKK1xmSS91c3Ivc2hhcmUvZHBrZy9vc3RhYmxlXGZQCitUYWJlbGxlIGRlciBiZWthbm50ZW4gQmV0cmllYnNzeXN0ZW1uYW1lbiB1bmQgQWJiaWxkdW5nZW4gYXVmIGlocmUKK0dOVVwtTmFtZW4uCisuVFAgCitcZkkvdXNyL3NoYXJlL2Rwa2cvdHJpcGxldHRhYmxlXGZQCitBYmJpbGR1bmcgendpc2NoZW4gZGVuIERlYmlhblwtQXJjaGl0ZWt0dXJcLVRyaXBsZXR0cyB1bmQgZGVuCitEZWJpYW5cLUFyY2hpdGVrdHVybmFtZW4uCisuCisuU0gg3EJFUlNFVFpVTkcKK0RpZSBkZXV0c2NoZSDcYmVyc2V0enVuZyB3dXJkZSAyMDA0LCAyMDA2LTIwMTEgdm9uIEhlbGdlIEtyZXV0em1hbm4KKzxkZWJpYW5AaGVsZ2VmamVsbC5kZT4sIDIwMDcgdm9uIEZsb3JpYW4gUmVobmlzY2ggPGVpeG1hbkBnbXguZGU+IHVuZAorMjAwOCB2b24gU3ZlbiBKb2FjaGltIDxzdmVuam9hY0BnbXguZGU+CithbmdlZmVydGlndC4gRGllc2Ug3GJlcnNldHp1bmcgaXN0IEZyZWllIERva3VtZW50YXRpb247IGxlc2VuIFNpZSBkaWUKK0dOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIFZlcnNpb24gMiBvZGVyIG5ldWVyIGb8ciBkaWUgS29waWVyYmVkaW5ndW5nZW4uCitFcyBnaWJ0IEtFSU5FIEhBRlRVTkcuCisuU0ggIlNJRUhFIEFVQ0giCitcZkJkcGtnXC1idWlsZHBhY2thZ2VcZlAoMSksIFxmQmRwa2dcLWNyb3NzXGZQKDEpLgorLgorLlNIIEFVVE9SCitcZkJkcGtnXC1hcmNoaXRlY3R1cmVcZlAgdW5kIGRpZXNlIEhhbmRidWNoc2VpdGUgd3VyZGVuIHVyc3By/G5nbGljaCB2b24gTWFyY3VzCitCcmlua21hbm4gPGJyaW5rbWRAZGViaWFuLm9yZz4gZ2VzY2hyaWViZW4uCisKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL2RlL2Rwa2ctYnVpbGRmbGFncy4xIGIvZHBrZy0xLjE2LjEuMS9tYW4vZGUvZHBrZy1idWlsZGZsYWdzLjEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZmVkY2UxMQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL2RlL2Rwa2ctYnVpbGRmbGFncy4xCkBAIC0wLDAgKzEsMjk0IEBACisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkcGtnXC1idWlsZGZsYWdzIDEgMjAxMVwtMDlcLTEzIERlYmlhblwtUHJvamVrdCBkcGtnXC1Qcm9ncmFtbXNhbW1sdW5nCisuU0ggTkFNRQorZHBrZ1wtYnVpbGRmbGFncyBcLSBsaWVmZXJ0IEJhdXNjaGFsdGVyIHp1bSBFaW5zYXR6IGJlaW0gUGFrZXRiYXUKKy4KKy5TSCDcQkVSU0lDSFQKK1xmQmRwa2dcLWJ1aWxkZmxhZ3NcZlAgW1xmSU9wdGlvblxmUC4uLl0gW1xmSUJlZmVobFxmUF0KKy4KKy5TSCBCRVNDSFJFSUJVTkcKK1xmQmRwa2dcLWJ1aWxkZmxhZ3NcZlAgaXN0IGVpbiBXZXJremV1ZywgZGFzIHp1bSBBYmZyYWdlbiBkZXIgenUgdmVyd2VuZGVuZGVuCitLb21waWxpZXJ1bmdzc2NoYWx0ZXIgZvxyIGRlbiBCYXUgdm9uIERlYmlhblwtUGFrZXRlbiBlaW5nZXNldHp0IHdpcmQuCisuCitEaWUgU3RhbmRhcmRzY2hhbHRlciB3ZXJkZW4gdm9tIExpZWZlcmFudGVuIGRlZmluaWVydCwgc2llIGv2bm5lbiBhdWYKK21laHJlcmUgQXJ0ZW4gZXJ3ZWl0ZXJ0L/xiZXJzY2hyaWViZW4gd2VyZGVuOgorLklQIDEuCitzeXN0ZW13ZWl0IG1pdCBcZkIvZXRjL2Rwa2cvYnVpbGRmbGFncy5jb25mXGZQCisuSVAgMi4KK2b8ciBkZW4gYWt0dWVsbGVuIEJlbnV0emVyIG1pdCBcZkIkWERHX0NPTkZJR19IT01FL2Rwa2cvYnVpbGRmbGFncy5jb25mXGZQLAord29iZWkgXGZCJFhER19DT05GSUdfSE9NRVxmUCBzdGFuZGFyZG3k32lnIGF1ZiBcZkIkSE9NRS8uY29uZmlnXGZQIGdlc2V0enQgaXN0CisuSVAgMy4KK3RlbXBvcuRyIGR1cmNoIGRlbiBCZW51dHplciBtaXR0ZWxzIFVtZ2VidW5nc3ZhcmlhYmxlbiAoc2llaGUgQWJzY2huaXR0CitcZkJVTUdFQlVOR1xmUCkKKy5JUCA0LgorZHluYW1pc2NoIGR1cmNoIGRlbiBQYWtldHZlcndhbHRlciBtaXR0ZWxzIFVtZ2VidW5nc3ZhcmlhYmxlbiwgZGllIPxiZXIKK1xmQmRlYmlhbi9ydWxlc1xmUCBnZXNldHp0IHd1cmRlbiAoc2llaGUgQWJzY2huaXR0IFxmQlVNR0VCVU5HXGZQKQorLlAKK0RpZSBLb25maWd1cmF0aW9uc2RhdGVpZW4ga/ZubmVuIHp3ZWkgQXJ0ZW4gdm9uIERpcmVrdGl2ZW4gZW50aGFsdGVuOgorLlRQIAorXGZCU0VUXGZQXGZJIFNjaGFsdGVyIFdlcnRcZlAKK9xiZXJzY2hyZWlidCBkZW4gU2NoYWx0ZXIgbmFtZW5zIFxmSVNjaGFsdGVyXGZQLCB1bSBkZW4gV2VydCBcZklXZXJ0XGZQIHp1CitlcmhhbHRlbi4KKy5UUCAKK1xmQlNUUklQXGZQXGZJIFNjaGFsdGVyIFdlcnRcZlAKK0F1cyBkZW0gU2NoYWx0ZXIgbmFtZW5zIFxmSVNjaGFsdGVyXGZQIGFsbGUgaW4gXGZJV2VydFxmUCBhdWZnZWb8aHJ0ZW4gQmF1c2NoYWx0ZXIKK2VudGZlcm5lbgorLlRQIAorXGZCQVBQRU5EXGZQXGZJIFNjaGFsdGVyIFdlcnRcZlAKK0Vyd2VpdGVydCBkZW4gU2NoYWx0ZXIgbmFtZW5zIFxmSVNjaGFsdGVyXGZQIGR1cmNoIEFuaORuZ2VuIGRlciBpbiBcZklXZXJ0XGZQCithbmdlZ2ViZW5lbiBPcHRpb25lbi4gRWluIExlZXJ6ZWljaGVuIHdpcmQgdm9yIGRlbiBhbmdlaORuZ3RlbiBXZXJ0Cit2b3Jhbmdlc3RlbGx0LCBmYWxscyBkZXIgZGVyemVpdGlnZSBXZXJ0IG5pY2h0IGxlZXIgaXN0LgorLlRQIAorXGZCUFJFUEVORFxmUFxmSSBTY2hhbHRlciBXZXJ0XGZQCitFcndlaXRlcnQgZGVuIFNjaGFsdGVyIG5hbWVucyBcZklTY2hhbHRlclxmUCBkdXJjaCBWb3JhbnN0ZWxsZW4gZGVyIGluIFxmSVdlcnRcZlAKK2FuZ2VnZWJlbmVuIE9wdGlvbmVuLiBFaW4gTGVlcnplaWNoZW4gd2lyZCBoaW50ZXIgZGVuIHZvcmFuZ2VzdGVsbHRlbiBXZXJ0CithbmdlaORuZ3QsIGZhbGxzIGRlciBkZXJ6ZWl0aWdlIFdlcnQgbmljaHQgbGVlciBpc3QuCisuUAorRGllIEtvbmZpZ3VyYXRpb25zZGF0ZWllbiBr9m5uZW4gS29tbWVudGFyZSBhdWYgWmVpbGVuIGVudGhhbHRlbiwgZGllIG1pdAorZWluZXIgUmF1dGUgKCMpIGJlZ2lubmVuLiBMZWVyZSBaZWlsZW4gd2VyZGVuIGF1Y2ggaWdub3JpZXJ0LgorLlNIIEJFRkVITEUKKy5UUCAKK1xmQlwtXC1kdW1wXGZQCitBdWYgZGVyIFN0YW5kYXJkYXVzZ2FiZSBhbGxlIEtvbXBpbGllcnNjaGFsdGVyIHVuZCBpaHJlIFdlcnRlIGF1c2dlYmVuLiBFcword2lyZCBlaW4gU2NoYWx0ZXIgcHJvIFplaWxlIGF1c2dlZ2ViZW4sIHdvYmVpIGRlciBXZXJ0ZSBkdXJjaCBlaW4KK0dsZWljaGhlaXRzemVpY2hlbiAou1xmSVNjaGFsdGVyXGZQPVxmSVdlcnRcZlCrKSBhYmdldHJlbm50IHdpcmQuIERpZXMgaXN0IGRpZQorU3RhbmRhcmRha3Rpb24uCisuVFAgCitcZkJcLVwtbGlzdFxmUAorR2lidCBkaWUgTGlzdGUgZGVyIHZvbSBha3R1ZWxsZW4gTGllZmVyYW50ZW4gdW50ZXJzdPx0emVuIFNjaGFsdGVyIChlaW5lIHBybworWmVpbGUpIGF1cy4gTGVzZW4gU2llIGRlbiBBYnNjaG5pdHQgXGZCVU5URVJTVNxUWlRFIFNDSEFMVEVSXGZQIGb8ciB3ZWl0ZXJlCitJbmZvcm1hdGlvbmVuIPxiZXIgc2llLgorLlRQIAorXGZCXC1cLWV4cG9ydD1cZlBcZklGb3JtYXRcZlAKK0F1ZiBkZXIgU3RhbmRhcmRhdXNnYWJlIFNoZWxsXC0gKGZhbGxzIFxmSUZvcm1hdFxmUCBcZkJzaFxmUCBpc3QpIG9kZXIgTWFrZVwtIChmYWxscworXGZJRm9ybWF0XGZQIFxmQm1ha2VcZlAgaXN0KSBCZWZlaGxlIGF1c2dlYmVuLCBkaWUgZGF6dSB2ZXJ3YW5kdCB3ZXJkZW4ga/ZubmVuLAorYWxsZSBLb21waWxpZXJzY2hhbHRlciBpbiBkaWUgVW1nZWJ1bmcgenUgZXhwb3J0aWVyZW4uIEZhbGxzIFxmSUZvcm1hdFxmUAorXGZCY29uZmlndXJlXGZQIGxhdXRldCwga2FubiBkaWUgQXVzZ2FiZSBm/HIgZWluZSBLb21tYW5kb3plaWxlIHZvbgorXCZcZkIuL2NvbmZpZ3VyZVxmUCB2ZXJ3YW5kdCB3ZXJkZW4uIEZhbGxzIGRlciBXZXJ0IHZvbiBcZklGb3JtYXRcZlAgbmljaHQgYW5nZWdlYmVuCit3aXJkLCB3aXJkIFxmQnNoXGZQIGFuZ2Vub21tZW4uIE51ciBLb21waWxpZXJzY2hhbHRlciwgZGllIG1pdCBlaW5lbQorR3Jv32J1Y2hzdGFiZW4gYmVnaW5uZW4sIHdlcmRlbiBhdWZnZW5vbW1lbi4gQmVpIGFsbGVuIGFuZGVyZW4gd2lyZAorYW5nZW5vbW1lbiwgZGFzcyBzaWUgZvxyIGRpZSBVbWdlYnVuZyBuaWNodCBnZWVpZ25ldCBzaW5kLgorLlRQIAorXGZCXC1cLWdldFxmUFxmSSBTY2hhbHRlclxmUAorR2lidCBkZW4gV2VydCBkZXMgU2NoYWx0ZXJzIGF1ZiBkZXIgU3RhbmRhcmRhdXNnYWJlIGF1cy4gQmVlbmRldCBzaWNoIG1pdCAwLAorZmFsbHMgZGVyIFNjaGFsdGVyIGJla2FubnQgaXN0LCBhbmRlcm5mYWxscyBtaXQgMS4KKy5UUCAKK1xmQlwtXC1vcmlnaW5cZlBcZkkgU2NoYWx0ZXJcZlAKK0dpYnQgZGVuIFVyc3BydW5nIGRlcyB2b24gXGZCXC1cLWdldFxmUCBnZWxpZWZlcnRlbiBXZXJ0cyBhdXMuIEJlZW5kZXQgc2ljaCBtaXQKKzAsIGZhbGxzIGRlciBTY2hhbHRlciBiZWthbm50IGlzdCwgYW5kZXJuZmFsbHMgbWl0IDEuIERlciBVcnNwcnVuZyBrYW5uCitlaW5lciBkZXIgZm9sZ2VuZGVuIFdlcnRlIHNlaW46CisuUlMKKy5UUCAKK1xmQnZlbmRvclxmUAorZGVyIHVyc3By/G5nbGljaCB2b20gTGllZmVyYW50ZW4gZ2VzZXR6dGUgU2NoYWx0ZXIgd2lyZCB6dXL8Y2tnZWxpZWZlcnQKKy5UUCAKK1xmQnN5c3RlbVxmUAorZGVyIFNjaGFsdGVyIHd1cmRlIGR1cmNoIGVpbmUgc3lzdGVtd2VpdGUgS29uZmlndXJhdGlvbiBnZXNldHp0L3ZlcuRuZGVydAorLlRQIAorXGZCdXNlclxmUAorZGVyIFNjaGFsdGVyIHd1cmRlIGR1cmNoIGVpbmUgYmVudXR6ZXJzcGV6aWZpc2NoZSBLb25maWd1cmF0aW9uCitnZXNldHp0L3ZlcuRuZGVydAorLlRQIAorXGZCZW52XGZQCitkZXIgU2NoYWx0ZXIgd3VyZGUgZHVyY2ggZWluZSB1bWdlYnVuZ3NzcGV6aWZpc2NoZSBLb25maWd1cmF0aW9uCitnZXNldHp0L3ZlcuRuZGVydAorLlJFCisuVFAgCitcZkJcLVwtaGVscFxmUAorWmVpZ2UgZGVuIEJlZGllbnVuZ3NoaW53ZWlzIHVuZCBiZWVuZGUuCisuVFAgCitcZkJcLVwtdmVyc2lvblxmUAorR2ViZSBkaWUgVmVyc2lvbiBhdXMgdW5kIGJlZW5kZSBzaWNoLgorLgorLlNIICJVTlRFUlNU3FRaVEUgU0NIQUxURVIiCisuVFAgCitcZkJDRkxBR1NcZlAKK09wdGlvbmVuIGb8ciBkZW4gQ1wtQ29tcGlsZXIuIERlciB2b20gTGllZmVyYW50ZW4gZ2VzZXR6dGUgU3RhbmRhcmR3ZXJ0CitlbnRo5Gx0IFxmSVwtZ1xmUCB1bmQgZGllIFN0YW5kYXJkIE9wdGltaWVydW5nc3N0dWZlIChub3JtYWxlcndlaXNlIFxmSVwtTzJcZlAgb2RlcgorXGZJXC1PMFxmUCwgZmFsbHMgZGllIFVtZ2VidW5nc3ZhcmlhYmxlIFxmQkRFQl9CVUlMRF9PUFRJT05TXGZQIFxmSW5vb3B0XGZQIGRlZmluaWVydC4KKy5UUCAKK1xmQkNQUEZMQUdTXGZQCitPcHRpb25lbiBm/HIgZGVuIENcLVBy5HByb3plc3Nvci4gU3RhbmRhcmR3ZXJ0OiBsZWVyCisuVFAgCitcZkJDWFhGTEFHU1xmUAorT3B0aW9uZW4gZvxyIGRlbiBDKytcLUNvbXBpbGVyLiBJZGVudGlzY2ggenUgXGZCQ0ZMQUdTXGZQLgorLlRQIAorXGZCRkZMQUdTXGZQCitPcHRpb25lbiBm/HIgZGVuIEZvcnRyYW5cLUNvbXBpbGVyLiBJZGVudGlzY2ggenUgXGZCQ0ZMQUdTXGZQLgorLlRQIAorXGZCTERGTEFHU1xmUAorT3B0aW9uZW4gZGllIGJlaW0gTGlua2VuIHZvbiBQcm9ncmFtbWVuIG9kZXIgTGF1ZnplaXRiaWJsaW90aGVrZW4gYW4gZGVuCitDb21waWxlciB3ZWl0ZXJnZWdlYmVuIHdlcmRlbiAoZmFsbHMgZGVyIExpbmtlciBkaXJla3QgYXVmZ2VydWZlbiB3aXJkLAorbfxzc2VuIFxmQlwtV2xcZlAgdW5kIFxmQixcZlAgYXVzIGRpZXNlbiBPcHRpb25lbiBlbnRmZXJudCB3ZXJkZW4pLiBTdGFuZGFyZG3k32lnCitsZWVyLgorLgorLlNIIERBVEVJRU4KKy5UUCAKK1xmQi9ldGMvZHBrZy9idWlsZGZsYWdzLmNvbmZcZlAKK1N5c3RlbXdlaXRlIEtvbmZpZ3VyYXRpb25zZGF0ZWkKKy5UUCAKK1xmQiRYREdfQ09ORklHX0hPTUUvZHBrZy9idWlsZGZsYWdzLmNvbmZcZlAgb2RlciBcZkIkSE9NRS8uY29uZmlnL2Rwa2cvYnVpbGRmbGFncy5jb25mXGZQCitCZW51dHplclwtS29uZmlndXJhdGlvbnNkYXRlaQorLlNIIFVNR0VCVU5HCitFcyBnaWJ0IGVpbmVuIFNhdHogdm9uIHp3ZWkgVW1nZWJ1bmdzdmFyaWFibGVuLCBkaWUgZGVuIGdsZWljaGVuIFZvcmdhbmcKK2R1cmNoZvxocmVuLiBEZXIgZXJzdGUgKERFQl9cZklTY2hhbHRlclxmUF9cZklWb3JnXGZQKSBzb2xsdGUgbmllbWFscyBpbm5lcmhhbGIKK3ZvbiBcZkJkZWJpYW4vcnVsZXNcZlAgdmVyd2FuZHQgd2VyZGVuLiBFciBpc3QgZvxyIEJlbnV0emVyIGdlZGFjaHQsIGRpZSBkYXMKK1F1ZWxscGFrZXQgbWl0IGFuZGVyZW4gQmF1c2NoYWx0ZXJuIGVybmV1dCBiYXVlbiBt9mNodGVuLiBEZXIgendlaXRlIFNhdHoKKyhERUJfXGZJU2NoYWx0ZXJcZlBfTUFJTlRfXGZJVm9yZ1xmUCkgc29sbHRlIG51ciBkdXJjaCBQYWtldGJldHJldWVyIGluCitcZkJkZWJpYW4vcnVsZXNcZlAgdmVyd2FuZHQgd2VyZGVuLCB1bSBkaWUgZW50c3RlaGVuZGVuIEJhdXNjaGFsdGVyIHp1IORuZGVybi4KKy5UUCAKK1xmQkRFQl9cZlBcZklTY2hhbHRlclxmUFxmQl9TRVRcZlAKKy5UUQorXGZCREVCX1xmUFxmSVNjaGFsdGVyXGZQXGZCX01BSU5UX1NFVFxmUAorRGllc2UgVmFyaWFibGUga2FubiB6dW0gRXJ6d2luZ2VuIGRlcyBm/HIgXGZJU2NoYWx0ZXJcZlAgenVy/GNrZ2VnZWJlbmVuIFdlcnRzCit2ZXJ3YW5kdCB3ZXJkZW4uCisuVFAgCitcZkJERUJfXGZQXGZJU2NoYWx0ZXJcZlBcZkJfU1RSSVBcZlAKKy5UUQorXGZCREVCX1xmUFxmSVNjaGFsdGVyXGZQXGZCX01BSU5UX1NUUklQXGZQCitEaWVzZSBWYXJpYWJsZSBrYW5uIHp1bSBCZXJlaXRzdGVsbGVuIGVpbmVyIGR1cmNoIExlZXJ6ZWljaGVuIGdldHJlbm50ZW4KK0xpc3RlIHZvbiBPcHRpb25lbiB2ZXJ3YW5kdCB3ZXJkZW4sIGRpZSBhdXMgZGVtIFNhdHogdm9uIFxmSVNjaGFsdGVyXGZQCit6dXL8Y2tnZWxpZWZlcnRlbiBTY2hhbHRlcm4gZW50ZmVybnQgd2VyZGVuLgorLlRQIAorXGZCREVCX1xmUFxmSVNjaGFsdGVyXGZQXGZCX0FQUEVORFxmUAorLlRRCitcZkJERUJfXGZQXGZJU2NoYWx0ZXJcZlBcZkJfTUFJTlRfQVBQRU5EXGZQCitEaWVzZSBWYXJpYWJsZSBrYW5uIHp1bSBBbmjkbmdlbiBlcmfkbnplbmRlciBPcHRpb25lbiB6dW0gV2VydCwgZGVyIHZvbgorXGZJU2NoYWx0ZXJcZlAgenVy/GNrZ2VnZWJlbiB3aXJkLCB2ZXJ3YW5kdCB3ZXJkZW4uCisuVFAgCitcZkJERUJfXGZQXGZJU2NoYWx0ZXJcZlBcZkJfUFJFUEVORFxmUAorLlRRCitcZkJERUJfXGZQXGZJU2NoYWx0ZXJcZlBcZkJfTUFJTlRfUFJFUEVORFxmUAorRGllc2UgVmFyaWFibGUga2FubiB6dW0gVm9yYW5zdGVsbGVuIGVyZ+RuemVuZGVyIE9wdGlvbmVuIHp1bSBXZXJ0LCBkZXIgdm9uCitcZklTY2hhbHRlclxmUCB6dXL8Y2tnZWdlYmVuIHdpcmQsIHZlcndhbmR0IHdlcmRlbi4KKy5UUCAKK1xmQkRFQl9CVUlMRF9NQUlOVF9PUFRJT05TXGZQCitEaWVzZSBWYXJpYWJsZSBrYW5uIHp1bSBEZWFrdGl2aWVyZW4gb2RlciBBa3RpdmllcmVuIHZlcnNjaGllZGVuZXIKK0jkcnR1bmdzYmF1c2NoYWx0ZXIgZHVyY2ggZGllIE9wdGlvbiBcZkJoYXJkZW5pbmdcZlAgdmVyd2FuZHQgd2VyZGVuLiBMZXNlbiBTaWUKK2RlbiBBYnNjaG5pdHQgXGZCSMRSVFVOR1xmUCBm/HIgd2VpdGVyZSBEZXRhaWxzLgorLgorLlNIIEjEUlRVTkcKK01laHJlcmUgS29tcGlsaWVyemVpdFwtT3B0aW9uZW4gKHdlaXRlciB1bnRlbiBiZXNjaHJpZWJlbikga/ZubmVuIGRhenUKK3ZlcndhbmR0IHdlcmRlbiwgZWluIGVyc3RlbGx0ZXMgUHJvZ3JhbW0gZ2VnZW4gU3BlaWNoZXJ2ZXJm5GxzY2h1bmdzYW5ncmlmZmUKK3p1IGjkcnRlbiwgb2RlciB6dXPkdHpsaWNoZSBXYXJudW5nc21lbGR1bmdlbiB35GhyZW5kIGRlciDcYmVyc2V0enVuZworYXVzenVnZWJlbi4gU2llIHdlcmRlbiBm/HIgQXJjaGl0ZWt0dXJlbiwgZGllIGRpZXNlIHVudGVyc3T8dHplbiwKK3N0YW5kYXJkbeTfaWcgYWt0aXZpZXJ0OyBkaWUgQXVzbmFobWVuIHNpbmQgdW50ZW4gYW5nZWdlYmVuLgorLlAKK0plZGUgSORydHVuZ3NmdW5rdGlvbmFsaXTkdCBrYW5uIGR1cmNoIGRlbiBlbnRzcHJlY2hlbmRlbiBcZkJI5HJ0dW5nc1wtXGZQXC1XZXJ0CitpbiBkZXIgVW1nZWJ1bmdzdmFyaWFibGVuIFxmQkRFQl9CVUlMRF9NQUlOVF9PUFRJT05TXGZQIG1pdCBkZW4guyurXC0gdW5kCiu7XC2rXC1TY2hhbHRlcm4gYWt0aXZpZXJ0IHVuZCBkZWFrdGl2aWVydCB3ZXJkZW4uIFNvbGwgYmVpc3BpZWxzd2Vpc2UgZGllCiu7cGllq1wtRnVua3Rpb25hbGl05HQgYWt0aXZpZXJ0IHVuZCBkaWUgu2ZvcnRpZnmrXC1GdW5rdGlvbmFsaXTkdCBkZWFrdGl2aWVydAord2VyZGVuLCBr9m5uZW4gU2llIEZvbGdlbmRlcyBpbiBcZkJkZWJpYW4vcnVsZXNcZlAgdmVyd2VuZGVuOgorLlAKKyAgZXhwb3J0IERFQl9CVUlMRF9NQUlOVF9PUFRJT05TPWhhcmRlbmluZz0rcGllLFwtZm9ydGlmeQorLlAKK0RpZSBzcGV6aWVsbGUgRnVua3Rpb25hbGl05HQgXGZCYWxsXGZQIGthbm4gZGF6dSB2ZXJ3YW5kdCB3ZXJkZW4sIGFsbGUKK0jkcnR1bmdzZnVua3Rpb25hbGl05HRlbiBhdWYgZWlubWFsIHp1IGFrdGl2aWVyZW4gb2RlciB6dSBkZWFrdGl2ZXJlbi4gVW0KK2RhaGVyIGFsbGVzIHp1IGRlYWt0aXZlcmVuIHVuZCBudXIgu2Zvcm1hdKsgdW5kILtmb3J0aWZ5qyB6dSBha3RpdmVyZW4sIGthbm4KK0ZvbGdlbmRlcyBlaW5nZXNldHp0IHdlcmRlbjoKKy5QCisgIGV4cG9ydCBERUJfQlVJTERfTUFJTlRfT1BUSU9OUz1oYXJkZW5pbmc9XC1hbGwsK2Zvcm1hdCwrZm9ydGlmeQorLgorLlRQIAorXGZCZm9ybWF0XGZQCitEaWVzZSBFaW5zdGVsbHVuZyAoc3RhbmRhcmRt5N9pZyBha3RpdmllcnQpIGb8Z3QgXGZCXC1XZm9ybWF0CitcLVdmb3JtYXRcLXNlY3VyaXR5IFwtV2Vycm9yPWZvcm1hdFwtc2VjdXJpdHlcZlAgenUgXGZCQ0ZMQUdTXGZQIHVuZCBcZkJDWFhGTEFHU1xmUAoraGluenUuIERhbWl0IHdpcmQg/GJlciBpbmtvcnJla3RlIEZvcm1hdHplaWNoZW5rZXR0ZW52ZXJ3ZW5kdW5nZW4gZ2V3YXJudAordW5kIHp1IGVpbmVtIEZlaGxlciBm/GhyZW4sIHdlbm4gRm9ybWF0ZnVua3Rpb25lbiBkZWFydCB2ZXJ3YW5kdCB3ZXJkZW4sCitkYXNzIGRhcmF1cyBlaW4gbfZnbGljaGVzIFNpY2hlcmhlaXRzcHJvYmxlbSB3ZXJkZW4ga/ZubnRlLiBEZXJ6ZWl0IHdhcm50CitkaWVzIPxiZXIgQXVmcnVmZSBhdWYgXGZCcHJpbnRmXGZQXC0gdW5kIFxmQnNjYW5mXGZQXC1GdW5rdGlvbmVuLCBiZWkgZGVuZW4gZGllCitGb3JtYXR6ZWljaGVua2V0dGUgbmljaHQgZWluZSByZWluZSBaZWljaGVua2V0dGUgaXN0IHVuZCBlcyBrZWluZQorRm9ybWF0YXJndW1lbnRlIGdpYnQsIHdpZSBpbiBcZkJwcmludGYoZm9vKTtcZlAgc3RhdHQgXGZCcHJpbnRmKCIlcyIsCitmb28pO1xmUC4gRGllcyBr9m5udGUgZWluIFNpY2hlcmhlaXRzcHJvYmxlbSBzZWluLCBmYWxscyBkaWUKK0Zvcm1hdHplaWNoZW5rZXR0ZSBhdXMgZWluZXIgdW52ZXJ0cmF1ZW5zd/xyZGlnZW4gRWluZ2FiZSBzdGFtbXQgdW5kILslbqsKK2VudGjkbHQuCisuCisuVFAgCitcZkJmb3J0aWZ5XGZQCitEaWVzZSBFaW5zdGVsbHVuZyAoc3RhbmRhcmRt5N9pZyBha3RpdmllcnQpIGb8Z3QgXGZCXC1EX0ZPUlRJRllfU09VUkNFPTJcZlAgenUKK1xmQkNGTEFHU1xmUCB1bmQgXGZCQ1hYRkxBR1NcZlAgaGluenUuIFfkaHJlbmQgZGVyIENvZGVcLUVyc3RlbGx1bmcgaGF0IGRlcgorQ29tcGlsZXIgdW1mYW5ncmVpY2hlIEluZm9ybWF0aW9uZW4g/GJlciBQdWZmZXJncvbfZW4gKHdvIG32Z2xpY2gpIHVuZAordmVyc3VjaHQsIHVuc2ljaGVyZSB1bmJlZ3Jlbnp0ZSBQdWZmZXJmdW5rdGlvbnNhdWZydWZlIGR1cmNoIGzkbmdlbmJlZ3Jlbnp0ZQorenUgZXJzZXR6ZW4uIERhcyBpc3QgYmVzb25kZXJzIGb8ciBhbHRlbiwgdmVya3JhbXRlbiBDb2RlCitu/HR6bGljaC4gWnVz5HR6bGljaCB3ZXJkZW4gRm9ybWF0emVpY2hlbmtldHRlbiBpbiBzY2hyZWliYmFyZW0gU3BlaWNoZXIsCitkaWUguyVuqyBlbnRoYWx0ZW4sIGJsb2NraWVydC4gRmFsbHMgZWluZSBBbndlbmR1bmcgdm9uIHNvbGNoZW4KK0Zvcm1hdHplaWNoZW5rZXR0ZW4gYWJo5G5ndCwgbfxzc2VuIGRhZvxyIGFuZGVyZSBM9nN1bmdzbfZnbGljaGtlaXRlbgorZ2VmdW5kZW4gd2VyZGVuLgorCitCZWFjaHRlbiBTaWUsIGRhc3MgZGllIFF1ZWxsZW4gYXVjaCBtaXQgXGZCXC1PMVxmUCBvZGVyIGj2aGVyIGtvbXBpbGllcnQgd2VyZGVuCitt/HNzZW4sIGRhbWl0IGRpZXNlIE9wdGlvbiBlaW5lbiBFZmZla3QgaGF0LgorLlRQIAorXGZCc3RhY2twcm90ZWN0b3JcZlAKK0RpZXNlIEVpbnN0ZWxsdW5nIChzdGFuZGFyZG3k32lnIGFrdGl2aWVydCkgZvxndCBcZkJcLWZzdGFja1wtcHJvdGVjdG9yCitcLVwtcGFyYW09c3NwXC1idWZmZXJcLXNpemU9NFxmUCB6dSBcZkJDRkxBR1NcZlAgdW5kIFxmQkNYWEZMQUdTXGZQIGhpbnp1LiBEaWVzIGb8Z3QKK1NpY2hlcmhlaXRzcHL8ZnVuZ2VuIGdlZ2VuIGRpZSDcYmVyc2NocmVpYnVuZyBkZXMgU3RhcGVsc3BlaWNoZXJzIChTdGFja3MpCitoaW56dS4gRGFtaXQgd2VyZGVuIHZpZWxlIG32Z2xpY2hlIENvZGVcLUVpbmb8Z2VhbmdyaWZmZSB6dQorQWJicnVjaHNpdHVhdGlvbmVuLiBJbSBiZXN0ZW4gRmFsbCB3ZXJkZW4gZGFtaXQgQ29kZVwtRWluZvxndW5nc2FuZ3JpZmZlIHp1CitEaWVuc3RldmVyd2VpZ2VydW5nc2FuZ3JpZmZlbiBvZGVyIHp1IGtlaW5lbiBQcm9ibGVtZW4gKGFiaORuZ2lnIHZvbiBkZXIKK0Fud2VuZHVuZykuCisKK0RpZXNlIEZ1bmt0aW9uYWxpdOR0IGJlbvZ0aWd0IGRhcyBMaW5rZW4gbWl0IEdsaWJjIChvZGVyIGVpbmVtIGFuZGVyZW4KK0FuYmlldGVyIHZvbiBcZkJfX3N0YWNrX2Noa19mYWlsXGZQKS4gU2llIG11c3MgZGFoZXIgZGVha3RpdmllcnQgd2VyZGVuLCB3ZW5uCittaXQgXGZCXC1ub3N0ZGxpYlxmUCBvZGVyIFxmQlwtZmZyZWVzdGFuZGluZ1xmUCBvZGVyIMRobmxpY2hlbSBnZWJhdXQgd2lyZC4KKy4KKy5UUCAKK1xmQnJlbHJvXGZQCitEaWVzZSBFaW5zdGVsbHVuZyAoc3RhbmRhcmRt5N9pZyBha3RpdmllcnQpIGb8Z3QgXGZCXC1XbCxcLXoscmVscm9cZlAgenUKK1xmQkxERkxBR1NcZlAgaGluenUuIFfkaHJlbmQgZGVzIExhZGVucyBkZXMgUHJvZ3JhbW1zIG38c3NlbiBtZWhyZXJlCitFTEZcLVNwZWljaGVyYWJzY2huaXR0ZSB2b20gQmluZGVyIChMaW5rZXIpIGdlc2NocmllYmVuIHdlcmRlbi4gRGllc2UKK0VpbnN0ZWxsdW5nIHNpZ25hbGlzaWVydCBkZW0gTGFkZXByb2dyYW1tLCBkaWVzZSBBYnNjaG5pdHRlIGluCitudXJcLUxlc2VcLVp1Z3JpZmYgenUg5G5kZXJuLCBiZXZvciBkaWUgU3RldWVydW5nIGFuIGRhcyBQcm9ncmFtbSD8YmVyZ2ViZW4KK3dpcmQuIEluc2Jlc29uZGVyZSB2ZXJoaW5kZXJ0IGRpZXMgR09UXC3cYmVyc2NocmVpYmVhbmdyaWZmZS4KKy4KKy5UUCAKK1xmQmJpbmRub3dcZlAKK1RoaXMgc2V0dGluZyAoZGlzYWJsZWQgYnkgZGVmYXVsdCkgYWRkcyBcZkJcLVdsLFwteixub3dcZlAgdG8gXGZCTERGTEFHU1xmUC4gRHVyaW5nCitwcm9ncmFtIGxvYWQsIGFsbCBkeW5hbWljIHN5bWJvbHMgYXJlIHJlc29sdmVkLCBhbGxvd2luZyBmb3IgdGhlIGVudGlyZSBQTFQKK3RvIGJlIG1hcmtlZCByZWFkXC1vbmx5IChkdWUgdG8gXGZCcmVscm9cZlAgYWJvdmUpLgorLgorLlRQIAorXGZCcGllXGZQCitEaWVzZSBFaW5zdGVsbHVuZyAoc3RhbmRhcmRt5N9pZyBkZWFrdGl2aWVydCkgZvxndCBcZkJcLWZQSUVcZlAgenUgXGZCQ0ZMQUdTXGZQIHVuZAorXGZCQ1hYRkxBR1NcZlAgc293aWUgXGZCXC1mUElFIFwtcGllXGZQIHp1IFxmQkxERkxBR1NcZlAgaGluenUuILtQb3NpdGlvbiBJbmRlcGVuZGVudAorRXhlY3V0YWJsZasgKHBvc2l0aW9uc3VuYWJo5G5naWdlIFByb2dyYW1tZSkgd2VyZGVuIGJlbvZ0aWd0LCB1bSC7QWRkcmVzcworU3BhY2UgTGF5b3V0IFJhbmRvbWl6YXRpb26rIChCZXJlaXRzdGVsbHVuZyBlaW5lcyB6dWbkbGxpZ2VuCitBZHJlc3NiZXJlaWNobGF5b3V0cykgYXVzenVudXR6ZW4sIGRlciB2b24gZWluaWdlbiBLZXJuZWx2ZXJzaW9uZW4KK2JlcmVpdGdlc3RlbGx0IHdpcmQuIFfkaHJlbmQgQVNMUiBiZXJlaXRzIGb8ciBEYXRlbmJlcmVpY2hlIGF1ZiBkZW0gU3RhcGVsCisoU3RhY2spIHVuZCBIZWFwIGVyend1bmdlbiB3ZXJkZW4ga2FubiAoYnJrIHVuZCBtbWFwKSwgbfxzc2VuIGRpZQorQ29kZWJlcmVpY2hlIHBvc2l0aW9uc3VuYWJo5G5naWcg/GJlcnNldHp0IHdlcmRlbi4gTGF1ZnplaXRiaWJsaW90aGVrZW4KK21hY2hlbiBkaWVzIGJlcmVpdHMgKFwtZlBJQyksIHNvIGRhc3Mgc2llIEFTTFIgYXV0b21hdGlzY2ggZXJoYWx0ZW4sIGFiZXIKK1Byb2dyYW1tXC0udGV4dFwtUmVnaW9uZW4gbfxzc2VuIG1pdCBQSUUgZ2ViYXV0IHdlcmRlbiwgdW0gQVNMUiB6dQorZXJoYWx0ZW4uIFdlbm4gZGllcyBwYXNzaWVydCwgc2luZCBST1BcLSAoUmV0dXJuIE9yaWVudGVkIFByb2dyYW1taW5nKQorQW5ncmlmZmUgc2VociB2aWVsIHNjaHdlcmVyIGR1cmNoenVm/GhyZW4sIGRhIGVzIGtlaW5lIHN0YXRpc2NoZW4gT3J0ZSBtZWhyCitnaWJ0LCB6dSBkZW5lbiB35GhyZW5kIGVpbmVzIFNwZWljaGVydmVyZuRsc2NodW5nc2FuZ3JpZmZzIGhpbmdlc3BydW5nZW4KK3dlcmRlbiBr9m5udGUuCisKK0RpZXMgaXN0IG5pY2h0IG1pdCBcZkJcLWZQSUNcZlAga29tcGF0aWJlbCwgZGFoZXIgbXVzcyBiZWltIEVyc3RlbGxlbiB2b24KK0xhdWZ6ZWl0YmlibGlvdGhla2VuIFZvcnNpY2h0IGFuZ2V3YW5kdCB3ZXJkZW4uCisKK1p1c+R0emxpY2gga/ZubmVuIGF1ZiBlaW5pZ2VuIEFyY2hpdGVrdHVyZW4gKGFtIGRldXRsaWNoc3RlbiBhdWYgaTM2OCkKK0xlaXN0dW5nc3Zlcmx1c3RlIHZvbiBiaXMgenUgMTUlIGluIHNlaHIgdGV4dFwtU2VnbWVudFwtbGFzdGlnZW4KK0Fud2VuZHVuZ3Nm5GxsZW4gYXVmdHJldGVuLCBkYSBQSUUg/GJlciBhbGxnZW1laW5lIFJlZ2lzdGVyIGltcGxlbWVudGllcnQKK2lzdDsgaW4gZGVuIG1laXN0ZW4gQW53ZW5kdW5nc2bkbGxlbiBzaW5kIGRpZXMgd2VuaWdlciBhbHMgMSUuIEFyY2hpdGVrdHVyZW4KK21pdCBtZWhyIGFsbGdlbWVpbmVuIFJlZ2lzdGVybiAoei5CLiBBbWQ2NCkgZXJmYWhyZW4gbmljaHQgZGllc2UKK1NjaGxpbW1zdGZhbGxcLVN0cmFmZS4KKy4KKy5TSCBBVVRPUgorQ29weXJpZ2h0IFwoY28gMjAwN1wtMjAxMSBSYXBoYVxbOmVdbCBIZXJ0em9nCisuc3AKK0NvcHlyaWdodCBcKGNvIDIwMTEgS2VlcyBDb29rCisuc3AKK0RpZXMgaXN0IEZyZWllIFNvZnR3YXJlOyBsZXNlbiBTaWUgZGllIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIFZlcnNpb24gMgorb2RlciBuZXVlciBm/HIgZGllIEtvcGllcmJlZGluZ3VuZ2VuLiBFcyBnaWJ0IEtFSU5FIEhhZnR1bmcuCisKKy5TSCDcQkVSU0VUWlVORworRGllIGRldXRzY2hlINxiZXJzZXR6dW5nIHd1cmRlIDIwMDQsIDIwMDYtMjAxMSB2b24gSGVsZ2UgS3JldXR6bWFubgorPGRlYmlhbkBoZWxnZWZqZWxsLmRlPiwgMjAwNyB2b24gRmxvcmlhbiBSZWhuaXNjaCA8ZWl4bWFuQGdteC5kZT4gdW5kCisyMDA4IHZvbiBTdmVuIEpvYWNoaW0gPHN2ZW5qb2FjQGdteC5kZT4KK2FuZ2VmZXJ0aWd0LiBEaWVzZSDcYmVyc2V0enVuZyBpc3QgRnJlaWUgRG9rdW1lbnRhdGlvbjsgbGVzZW4gU2llIGRpZQorR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgVmVyc2lvbiAyIG9kZXIgbmV1ZXIgZvxyIGRpZSBLb3BpZXJiZWRpbmd1bmdlbi4KK0VzIGdpYnQgS0VJTkUgSEFGVFVORy4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL2RlL2Rwa2ctYnVpbGRwYWNrYWdlLjEgYi9kcGtnLTEuMTYuMS4xL21hbi9kZS9kcGtnLWJ1aWxkcGFja2FnZS4xCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjZmZDNhYWQKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9kZS9kcGtnLWJ1aWxkcGFja2FnZS4xCkBAIC0wLDAgKzEsMjYwIEBACisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkcGtnXC1idWlsZHBhY2thZ2UgMSAyMDExXC0wOFwtMTQgRGViaWFuXC1Qcm9qZWt0IGRwa2dcLUhpbGZzcHJvZ3JhbW1lCisuU0ggTkFNRQorZHBrZ1wtYnVpbGRwYWNrYWdlIFwtIGJhdWUgQmlu5HJcLSBvZGVyIFF1ZWxscGFrZXRlIGF1cyBRdWVsbGVuCisuCisuU0gg3EJFUlNJQ0hUCitcZkJkcGtnXC1idWlsZHBhY2thZ2VcZlAgW1xmSU9wdGlvblxmUC4uLl0KKy4KKy5TSCBCRVNDSFJFSUJVTkcKK1xmQmRwa2dcLWJ1aWxkcGFja2FnZVxmUCBpc3QgZWluIFByb2dyYW1tLCBkYXMgZGVuIFByb3plc3MgZGVzIEJhdWVucyBlaW5lcworRGViaWFuXC1QYWtldGVzIGF1dG9tYXRpc2llcnQuIEVzIGJlc3RlaHQgYXVzIGRlbiBmb2xnZW5kZW4gU2Nocml0dGVuOgorLklQIFxmQjEuXGZQIDMKK0VzIGJlcmVpdGV0IGRpZSBCYXV1bWdlYnVuZyB2b3IsIGluZGVtIHZlcnNjaGllZGVuZSBVbWdlYnVuZ3N2YXJpYWJsZW4KK2dlc2V0enQgd2VyZGVuIChzaWVoZSBcZkJVTUdFQlVOR1xmUCkgdW5kIHJ1ZnQgXGZCZHBrZ1wtc291cmNlIFwtXC1iZWZvcmVcLWJ1aWxkXGZQCithdWYgKGVzIHNlaSBkZW5uLCBcZkJcLVRcZlAgb2RlciBcZkJcLVwtdGFyZ2V0XGZQIHd1cmRlIHZlcndhbmR0KS4KKy5JUCBcZkIyLlxmUCAzCitFcyBwcvxmdCwgZGFzcyBCYXVhYmjkbmdpZ2tlaXRlbiB1bmQgXC1rb25mbGlrdGUgZXJm/GxsdCBzaW5kIChmYWxscyBcZkJcLWRcZlAKK25pY2h0IGFuZ2VnZWJlbiBpc3QpLgorLklQIFxmQjMuXGZQIDMKK0ZhbGxzIGVpbiBzcGV6aWVsbGVzIFppZWwgbWl0IGRlciBPcHRpb24gXGZCXC1UXGZQIG9kZXIgXGZCXC1cLXRhcmdldFxmUCBhdXNnZXfkaGx0Cit3dXJkZSwgcnVmdCBlcyBkaWVzZSBaaWVsIGF1ZiB1bmQgZW5kZXQgaGllci4gQW5kZXJuZmFsbHMgcnVmdCBlcyBcZkJmYWtlcm9vdAorZGViaWFuLyBydWxlcyBjbGVhblxmUCBhdWYsIHVtIGRlbiBCYXVcLUJhdW0genUgYmVyZWluaWdlbiAoZmFsbHMgXGZCXC1uY1xmUCBuaWNodAorYW5nZWdlYmVuIGlzdCkuCisuSVAgXGZCNC5cZlAgMworRXMgcnVmdCBcZkJkcGtnXC1zb3VyY2UgXC1iXGZQIGF1ZiwgdW0gZGFzIFF1ZWxscGFrZXQgenUgZXJzdGVsbGVuIChmYWxscyBuaWNodAorbWl0IFxmQlwtYlxmUCwgXGZCXC1CXGZQIG9kZXIgXGZCXC1BXGZQIGVpbiByZWluXC1iaW7kcmVyIEJhdSBlcmJldGVuIHd1cmRlKS4KKy5JUCBcZkI1LlxmUCAzCitFcyBydWZ0IFxmQmRlYmlhbi9ydWxlc1xmUCBcZkJidWlsZFxmUCwgZ2Vmb2xndCB2b24gXGZCZmFrZXJvb3QgZGViaWFuL3J1bGVzXGZQCitcZklCaW7kcnppZWxcZlAgYXVmIChmYWxscyBuaWNodCBlaW4gcmVpbmVyIFF1ZWxsYmF1IG1pdCBcZkJcLVNcZlAgZXJiZXRlbgord3VyZGUpLiBCZWFjaHRlbiBTaWUsIGRhc3MgXGZJQmlu5HJ6aWVsXGZQIGVudHdlZGVyIFxmQmJpbmFyeVxmUCAoU3RhbmRhcmRmYWxsLAorb2RlciBmYWxscyBcZkJcLWJcZlAgYW5nZWdlYmVuIGlzdCkgb2RlciBcZkJiaW5hcnlcLWFyY2hcZlAgKGZhbGxzIFxmQlwtQlxmUCBhbmdlZ2ViZW4KK2lzdCkgb2RlciBcZkJiaW5hcnlcLWluZGVwXGZQIChmYWxscyBcZkJcLUFcZlAgYW5nZWdlYmVuIGlzdCkgbGF1dGV0LgorLklQIFxmQjYuXGZQIDMKK0VzIHJ1ZnQgXGZCZ3BnXGZQIGF1ZiwgdW0gZGllIFxmQi5kc2NcZlBcLURhdGVpIHp1IHNpZ25pZXJlbiAoZmFsbHMgdm9yaGFuZGVuIHVuZAorXGZCXC11c1xmUCBuaWNodCBhbmdlZ2ViZW4gd3VyZGUpLgorLklQIFxmQjcuXGZQIDMKK0VzIHJ1ZnQgXGZCZHBrZ1wtZ2VuY2hhbmdlc1xmUCBhdWYsIHVtIGVpbmUgXGZCLmNoYW5nZXNcZlBcLURhdGVpIHp1CitlcnN0ZWxsZW4uIFZpZWxlIE9wdGlvbmVuIHZvbiBcZkJkcGtnXC1idWlsZHBhY2thZ2VcZlAgd2VyZGVuIGFuCitcZkJkcGtnXC1nZW5jaGFuZ2VzXGZQIHdlaXRlcmdlbGVpdGV0LgorLklQIFxmQjguXGZQIDMKK0VzIHJ1ZnQgXGZCZ3BnXGZQIGF1ZiwgdW0gZGllIFxmQi5jaGFuZ2VzXGZQXC1EYXRlaSB6dSBzaWduaWVyZW4gKGZhbGxzIFxmQlwtdWNcZlAKK25pY2h0IGFuZ2VnZWJlbiB3dXJkZSkuCisuSVAgXGZCOS5cZlAgMworRmFsbHMgXGZCXC10Y1xmUCBhbmdlZ2ViZW4gaXN0LCB3aXJkIFxmQmZha2Vyb290IGRlYmlhbi9ydWxlcyBjbGVhblxmUCBlcm5ldXQKK2F1ZmdlcnVmZW4uIFNjaGxpZd9saWNoIHJ1ZnQgZXMgXGZCZHBrZ1wtc291cmNlIFwtXC1hZnRlclwtYnVpbGRcZlAgYXVmLgorLgorLlNIIE9QVElPTkVOCisuVFAgCitcZkJcLWJcZlAKK1NwZXppZml6aWVydCBlaW5lbiByZWluIGJpbuRyZW4gQmF1LCBrZWluZSBRdWVsbGRhdGVpZW4gc29sbGVuIGdlYmF1dAordW5kL29kZXIgdmVydHJpZWJlbiAoaW0gU2lubmUgdm9uIHZlcnRlaWxlbikgd2VyZGVuLiBXaXJkIGFuCitcZkJkcGtnXC1nZW5jaGFuZ2VzXGZQIHdlaXRlcmdlZ2ViZW4uCisuVFAgCitcZkJcLUJcZlAKK1NwZXppZml6aWVydCBlaW5lbiByZWluIGJpbuRyZW4gQmF1LCBiZXNjaHLkbmt0IGF1ZiBhcmNoaXRla3R1cmFiaORuZ2lnZQorUGFrZXRlLiBXaXJkIGFuIFxmQmRwa2dcLWdlbmNoYW5nZXNcZlAgd2VpdGVyZ2VnZWJlbi4KKy5UUCAKK1xmQlwtQVxmUAorU3BlemlmaXppZXJ0IGVpbmVuIHJlaW4gYmlu5HJlbiBCYXUsIGJlc2NocuRua3QgYXVmIGFyY2hpdGVrdHVydW5hYmjkbmdpZ2UKK1Bha2V0ZS4gV2lyZCBhbiBcZkJkcGtnXC1nZW5jaGFuZ2VzXGZQIHdlaXRlcmdlZ2ViZW4uCisuVFAgCitcZkJcLVNcZlAKK1NwZXppZml6aWVydCBlaW5lbiByZWluZW4gQmF1IGRlciBRdWVsbGVuLCBrZWluZSBCaW7kcnBha2V0ZSBt/HNzZW4gZXJzdGVsbHQKK3dlcmRlbi4gV2lyZCBhbiBcZkJkcGtnXC1nZW5jaGFuZ2VzXGZQIHdlaXRlcmdlZ2ViZW4uCisuVFAgCitcZkJcLUZcZlAKK1NwZXppZml6aWVydCBlaW5lbiBub3JtYWxlbiBrb21wbGV0dGVuIEJhdSwgQmlu5HJcLSB1bmQgUXVlbGxwYWtldGUgd2VyZGVuCitnZWJhdXQuIERpZXMgaXN0IGlkZW50aXNjaCB6dW0gU3RhbmRhcmRmYWxsLCB3ZW5uIGtlaW5lIEJhdW9wdGlvbgorc3BlemlmaXppZXJ0IHdpcmQuCisuUAorXGZCXC1cLXRhcmdldD1cZlBcZklaaWVsXGZQCisuYnIKK1xmQlwtXC10YXJnZXQgXGZQXGZJWmllbFxmUAorLmJyCitcZkJcLVRcZlBcZklaaWVsXGZQCisuUlMKK1J1ZnQgXGZCZGViaWFuL3J1bGVzXGZQIFxmSVppZWxcZlAgYXVmLCBuYWNoZGVtIGRpZSBCYXV1bWdlYnVuZyBlaW5nZXJpY2h0ZXQgd3VyZGUKK3VuZCBiZWVuZGV0IGRlbiBQYWtldGJhdXByb3plc3MgaGllci4gRmFsbHMgYXVjaCBcZkJcLVwtYXNcLXJvb3RcZlAgYW5nZWdlYmVuCit3dXJkZSwgd2lyZCBkZXIgQmVmZWhsIG1pdCByb290XC1SZWNodGVuIGF1c2dlZvxocnQgKHNpZWhlIFxmQlwtclxmUCkuIEJlYWNodGVuCitTaWUsIGRhc3Mgb2ZmaXppZWxsZSBaaWVsZSwgYmVpIGRlbmVuIGRpZSBEZWJpYW5cLVJpY2h0bGluaWVuIHZlcmxhbmdlbiwgZGFzcworU2llIG1pdCByb290XC1SZWNodGVuIGF1c2dlZvxocnQgd2VyZGVuLCBkaWVzZSBPcHRpb24gbmljaHQgYmVu9nRpZ2VuLgorLlJFCisuVFAgCitcZkJcLVwtYXNcLXJvb3RcZlAKK0VyZ2lidCBudXIgbWl0IFxmQlwtXC10YXJnZXRcZlAgZWluZW4gU2lubi4gRXJmb3JkZXJ0LCBkYXNzIGRhcyBaaWVsIG1pdAorUm9vdFwtUmVjaHRlbiBhdXNnZWb8aHJ0IHdpcmQuCisuUAorXGZCXC1zaVxmUAorLmJyCitcZkJcLXNhXGZQCisuYnIKK1xmQlwtc2RcZlAKKy5icgorXGZCXC12XGZQXGZJVmVyc2lvblxmUAorLmJyCitcZkJcLUNcZlBcZknEbmRlcnVuZ3NiZXNjaHJlaWJ1bmdcZlAKKy5icgorXGZCXC1tXGZQXGZJQmV0cmV1ZXJhZHJlc3NlXGZQCisuYnIKK1xmQlwtZVxmUFxmSUJldHJldWVyYWRyZXNzZVxmUAorLlJTCitXaXJkIHVudmVy5G5kZXJ0IGFuIFxmQmRwa2dcLWdlbmNoYW5nZXNcZlAgd2VpdGVyZ2VnZWJlbi4gTGVzZW4gU2llIGRlc3NlbgorSGFuZGJ1Y2hzZWl0ZS4KKy5SRQorLlRQIAorXGZCXC1hXGZQXGZJQXJjaGl0ZWt0dXJcZlAKK1NwZXppZml6aWVydCBkaWUgRGViaWFuXC1BcmNoaXRla3R1ciwgZvxyIGRpZSBnZWJhdXQgd2lyZC4gRGllIEFyY2hpdGVrdHVyCitkZXIgTWFzY2hpbmUsIGF1ZiBkZXIgZ2ViYXV0IHdpcmQsIHdpcmQgYXV0b21hdGlzY2ggYmVzdGltbXQsIHVuZCBpc3QgYXVjaAorZGllIFZvcmVpbnN0ZWxsdW5nIGb8ciBkaWUgR2FzdGdlYmVybWFzY2hpbmUgKLtob3N0IG1hY2hpbmWrKS4KKy5UUCAKK1xmQlwtdFxmUFxmSUdOVVwtU3lzdGVtdHlwXGZQCitTcGV6aWZpemllcmUgZGVuIEdOVVwtU3lzdGVtdHlwLCBm/HIgZGVuIHdpciBiYXVlbi4gRXIga2FubiBhbnN0ZWxsZSB2b24gXC1hCitvZGVyIGFscyBFcmfkbnp1bmcgdmVyd2FuZHQgd2VyZGVuLCB1bSBkZW4gU3RhbmRhcmQgR05VXC1TeXN0ZW10eXAgZGVyCitaaWVsXC1EZWJpYW5cLUFyY2hpdGVrdHVyIHp1IPxiZXJzY2hyZWliZW4uCisuVFAgCitcZkJcLWpcZlBcZklBdWZ0cuRnZVxmUAorQW56YWhsIGFuIEF1ZnRy5GdlbiwgZGllIHNpbXVsdGFuIGxhdWZlbiBk/HJmZW4sIORxdWl2YWxlbnQgenUgZGVyIE9wdGlvbgordm9uIFxmQm1ha2VcZlAoMSkgbWl0IGRlbSBnbGVpY2hlbiBOYW1lbi4gRvxndCBzaWNoIHNlbGJzdCB6dSBkZXIKK1VtZ2VidW5nc3ZhcmlhYmxlbiBNQUtFRkxBR1MgaGluenUsIHdhcyBkYXp1IGb8aHJlbiBzb2xsdGUsIGRhc3MgYWxsZQorZm9sZ2VuZGVuIEF1ZnJ1ZmUgdm9uIG1ha2UgZGllc2UgT3B0aW9uIGVyYmVuIHdlcmRlbi4gRvxndCBhdWNoCitcZkJwYXJhbGxlbD1cZlBcZklBdWZ0cuRnZVxmUCB6dSBkZXIgVW1nZWJ1bmdzdmFyaWFibGVuIERFQl9CVUlMRF9PUFRJT05TIGhpbnp1LAord2FzIGVzIGRlYmlhbi9ydWxlc1wtRGF0ZWllbiBlcmxhdWJ0LCBkaWVzZSBJbmZvcm1hdGlvbiBm/HIgZWlnZW5lIFp3ZWNrZSB6dQordmVyd2VuZGVuLiBEZXIgRWludHJhZyBcZkJwYXJhbGxlbD1cZlBcZklBdWZ0cuRnZVxmUCBpbiBkZXIgVW1nZWJ1bmdzdmFyaWFibGVuCitERUJfQlVJTERfT1BUSU9OUyD8YmVyc2NocmVpYnQgZGVuIFdlcnQgdm9uIFxmQlwtalxmUCwgZmFsbHMgZGllc2UgT3B0aW9uCithbmdlZ2ViZW4gaXN0LgorLlRQIAorXGZCXC1EXGZQCitQcvxmZSBCYXVhYmjkbmdpZ2tlaXRlbiB1bmQgXC1rb25mbGlrdGU7IEFiYnJ1Y2ggZmFsbHMgZGllc2UgbmljaHQgZXJm/GxsdAorc2luZC4gRGllcyBpc3QgZGFzIFN0YW5kYXJkdmVyaGFsdGVuLgorLlRQIAorXGZCXC1kXGZQCivcYmVycHL8ZmUgQmF1YWJo5G5naWdrZWl0ZW4gdW5kIFwta29uZmxpa3RlIG5pY2h0LgorLlRQIAorXGZCXC1uY1xmUAorQmVyZWluaWdlIGRlbiBRdWVsbGJhdW0gbmljaHQgKGltcGxpemllcnQgXGZCXC1iXGZQLCBmYWxscyBhbnNvbnN0ZW4gbmljaHRzIGF1cworXGZCXC1CXGZQLCBcZkJcLUFcZlAgb2RlciBcZkJcLVNcZlAgZ2V35GhsdCB3dXJkZSkuCisuVFAgCitcZkJcLXRjXGZQCitEZW4gUXVlbGxiYXVtIHPkdWJlcm4gKHZlcndlbmRldCBcZklyb290XC13ZXJkZVwtQmVmZWhsXGZQIFxmQmRlYmlhbi9ydWxlcyBjbGVhblxmUCkKK25hY2hkZW0gZGFzIFBha2V0IGdlYmF1dCB3dXJkZS4KKy5UUCAKK1xmQlwtclxmUFxmSXJvb3RcLXdlcmRlXC1CZWZlaGxcZlAKK1dlbm4gXGZCZHBrZ1wtYnVpbGRwYWNrYWdlXGZQIGVpbmVuIFRlaWwgZGVzIEJhdXByb3plc3NlcyBhbHMgUm9vdCBhdXNm/GhyZW4KK211c3MsIHN0ZWxsdCBlcyBkZW0gYXVzemb8aHJlbmRlbiBCZWZlaGwgZGVuIFxmSXJvb3RcLXdlcmRlXC1CZWZlaGxcZlAgdm9yYW4sCitmYWxscyBkaWVzZXIgYW5nZWdlYmVuIHd1cmRlLiBBbmRlcm5mYWxscyB3aXJkIHN0YW5kYXJkbeTfaWcgXGZCZmFrZXJvb3RcZlAKK3ZlcndlbmRldCwgZmFsbHMgZXMgdm9yaGFuZGVuIGlzdC4gRGVyIFxmSXJvb3RcLXdlcmRlXC1CZWZlaGxcZlAgc29sbHRlIGRlciBOYW1lCitkZXMgUHJvZ3JhbW1lcyBpbSBcZkJQQVRIXGZQIHNlaW4gdW5kIHdpcmQgYWxzIEFyZ3VtZW50ZSBkZW4gTmFtZW4gZGVzIHdpcmtsaWNoCithdXN6dWb8aHJlbmRlbiBCZWZlaGxlcyB1bmQgZGVzc2VuIEFyZ3VtZW50ZSBlcmhhbHRlbi4gXGZJcm9vdFwtd2VyZGVcLUJlZmVobFxmUAora2FubiBQYXJhbWV0ZXIgZW50aGFsdGVuIChkaWUgZHVyY2ggTGVlcnplaWNoZW4gdm9uZWluYW5kZXIgZ2V0cmVubnQgc2Vpbgorbfxzc2VuKSwgYWJlciBrZWluZSBTaGVsbFwtTWV0YXplaWNoZW4uIFR5cGlzY2hlcndlaXNlIGlzdCBkZXIKK1xmSXJvb3RcLXdlcmRlXC1CZWZlaGxcZlAgXGZCZmFrZXJvb3RcZlAsIFxmQnN1ZG9cZlAsIFxmQnN1cGVyXGZQIG9kZXIgXGZCcmVhbGx5XGZQLiBcZkJzdVxmUAoraXN0IG5pY2h0IGdlZWlnbmV0LCBkYSBlcyBudXIgZGllIFNoZWxsIGRlcyBCZW51dHplcnMgbWl0IFxmQlwtY1xmUCBhdWZydWZlbgora2FubiwgYW5zdGF0dCBBcmd1bWVudGUgaW5kaXZpZHVlbGwgenVyIEF1c2b8aHJ1bmcgZGVzIFByb2dyYW1tcyB6dQor/GJlcmdlYmVuLgorLlRQIAorXGZCXC1SXGZQXGZJcnVsZXNcLURhdGVpXGZQCitEZXIgQmF1IGVpbmVzIERlYmlhblwtUGFrZXRzIGVyZm9sZ3QgZ2V39mhubGljaCBkdXJjaCBBdWZydWYgdm9uCitcZkJkZWJpYW4vcnVsZXNcZlAgYWxzIGVpbiBCZWZlaGwgbWl0IG1laHJlcmVuIFN0YW5kYXJkcGFyYW1ldGVybi4gTWl0IGRpZXNlcgorT3B0aW9uIGlzdCBlcyBt9mdsaWNoLCBlaW5lbiBhbmRlcmVuIFByb2dyYW1tYXVmcnVmIHp1bSBCYXUgZGVzIFBha2V0ZXMgenUKK3ZlcndlbmRlbiAoZXMga/ZubmVuIGR1cmNoIExlZXJ6ZWljaGVuIGdldHJlbm50ZSBQYXJhbWV0ZXIgYW5nZWdlYmVuCit3ZXJkZW4pLiBBbHRlcm5hdGl2IGthbm4gZGllIFN0YW5kYXJkXC1kZWJpYW4vcnVsZXNcLURhdGVpIG1pdCBlaW5lbSBhbmRlcmVuCitNYWtlXC1Qcm9ncmFtbSBhdXNnZWb8aHJ0IHdlcmRlbiAoenVtIEJlaXNwaWVsIGR1cmNoIGRpZSBWZXJ3ZW5kdW5nIHZvbgorXGZCL3Vzci9sb2NhbC9iaW4vbWFrZSBcLWYgZGViaWFuL3J1bGVzXGZQIGFscyBcZklydWxlc1wtRGF0ZWlcZlApLgorLlRQIAorXGZCXC1wXGZQXGZJc2lnbmllclwtQmVmZWhsXGZQCitXZW5uIFxmQmRwa2dcLWJ1aWxkcGFja2FnZVxmUCBHUEcgb2RlciBQR1AgenVtIFNpZ25pZXJlbiBlaW5lciBRdWVsbHN0ZXVlcmRhdGVpCisoKFxmQi5kc2NcZlApKSBvZGVyIGVpbmVyIFxmQi5jaGFuZ2VzXGZQXC1EYXRlaSBiZW72dGlndCwgd2lyZCBlcyBzdGF0dCBcZkJncGdcZlAgZGVuCitcZklzaWduaWVyXC1CZWZlaGxcZlAgYXVzZvxocmVuICh1bmQgZGFiZWkgZmFsbHMgbm90d2VuZGlnIGRlbiBcZkJQQVRIXGZQCitkdXJjaHN1Y2hlbikuIEZhbGxzIFxmSXNpZ25pZXJcLUJlZmVobFxmUCBzZWluZSBBcmd1bWVudGUgaW0gR1BHXC0gc3RhdHQgaW0KK1BHUFwtU3RpbCB2ZXJsYW5ndCwgc29sbHRlbiBTaWUgZGllIFxmQlwtc2dwZ1xmUFwtT3B0aW9uCit2ZXJ3ZW5kZW4uIFxmSXNpZ25pZXJcLUJlZmVobFxmUCBzb2xsdGUga2VpbmUgTGVlcnplaWNoZW4gb2RlciBhbmRlcmUKK01ldGF6ZWljaGVuIGRlciBTaGVsbCBlbnRoYWx0ZW4uCisuVFAgCitcZkJcLWtcZlBcZklTY2hs/HNzZWxcLWlkXGZQCitHZWJlbiBTaWUgZGllIFNjaGz8c3NlbFwtSUQgenVyIFNpZ25hdHVyIHZvbiBQYWtldGVuIGFuLgorLlRQIAorXGZCXC11c1xmUAorRGFzIFF1ZWxscGFrZXQgbmljaHQgc2lnbmllcmVuLgorLlRQIAorXGZCXC11Y1xmUAorRGllIFxmQi5jaGFuZ2VzXGZQXC1EYXRlaSBuaWNodCBzaWduaWVyZW4uCisuUAorXGZCXC1pXGZQW1xmSVJlZ2V4cFxmUF0KKy5icgorXGZCXC1JXGZQXGZJW011c3Rlcl1cZlAKKy5icgorXGZCXC1zXGZQW1xmQm5zQWt1cktVUlxmUF0KKy5icgorXGZCXC16XGZQLCBcZkJcLVpcZlAKKy5icgorLlJTCitXaXJkIHVudmVy5G5kZXJ0IGFuIFxmQmRwa2dcLXNvdXJjZVxmUCB3ZWl0ZXJnZWdlYmVuLiBMZXNlbiBTaWUgZGVzc2VuCitIYW5kYnVjaHNlaXRlLgorLlJFCisuVFAgCitcZkJcLVwtc291cmNlXC1vcHRpb249XGZQXGZJT3B0XGZQCitPcHRpb24gXGZJT3B0XGZQIGFuIFxmQmRwa2dcLXNvdXJjZVxmUCB3ZWl0ZXJnZWJlbi4KKy5UUCAKK1xmQlwtXC1jaGFuZ2VzXC1vcHRpb249XGZQXGZJT3B0XGZQCitPcHRpb24gXGZJT3B0XGZQIGFuIFxmQmRwa2dcLWdlbmNoYW5nZXNcZlAgd2VpdGVyZ2ViZW4uCisuUAorXGZCXC1cLWFkbWluZGlyPVxmUFxmSVZlcnpcZlAKKy5icgorXGZCXC1cLWFkbWluZGlyIFxmUFxmSVZlcnpcZlAKKy5SUworxG5kZXJ0IGRlbiBBYmxhZ2VvcnQgZGVyIFxmQmRwa2dcZlBcLURhdGVuYmFuay4gRGVyIFN0YW5kYXJkb3J0IGlzdAorXGZJL3Zhci9saWIvZHBrZ1xmUC4KKy5SRQorLlRQIAorXGZCXC1oXGZQLCBcZkJcLVwtaGVscFxmUAorWmVpZ2UgZGVuIEJlZGllbnVuZ3NoaW53ZWlzIHVuZCBiZWVuZGUuCisuVFAgCitcZkJcLVwtdmVyc2lvblxmUAorR2ViZSBkaWUgVmVyc2lvbiBhdXMgdW5kIGJlZW5kZSBzaWNoLgorLgorLlNIIFVNR0VCVU5HCitTZWxic3QgZmFsbHMgXGZCZHBrZ1wtYnVpbGRwYWNrYWdlXGZQIGVpbmlnZSBWYXJpYWJsZW4gZXhwb3J0aWVydCwgc29sbHRlCitcZkJkZWJpYW4vcnVsZXNcZlAgc2ljaCBuaWNodCBhdWYgaWhyZSBHZWdlbndhcnQgdmVybGFzc2VuLCBzb25kZXJuIHN0YXR0ZGVzc2VuCitkaWUgZW50c3ByZWNoZW5kZSBTY2huaXR0c3RlbGxlIHZlcndlbmRlbiwgdW0gZGllIGJlbvZ0aWd0ZW4gV2VydGUgenUKK2FienVmcmFnZW4uCisuU1MgIlZvbiBkcGtnXC1hcmNoaXRlY3R1cmUgZ2VzZXR6dGUgVmFyaWFibGVuIgorQmVpbSBBdWZydWYgdm9uIFxmQmRwa2dcLWFyY2hpdGVjdHVyZVxmUCB3ZXJkZW4gZGllIFBhcmFtZXRlciB2b24gXGZCXC1hXGZQIHVuZAorXGZCXC10XGZQIGR1cmNoZ2VyZWljaHQuIEplZGUgVmFyaWFibGUsIGRpZSB2b24gc2VpbmVyIE9wdGlvbiBcZkJcLXNcZlAgYXVzZ2VnZWJlbgord2lyZCwgd2lyZCBpbiBkaWUgQmF1dW1nZWJ1bmcgaW50ZWdyaWVydC4KKy5TUyAiS29tcGlsaWVyc2NoYWx0ZXIgd2VyZGVuIG5pY2h0IG1laHIgZXhwb3J0aWVydCIKK1p3aXNjaGVuIGRlbiBWZXJzaW9uZW4gMS4xNC4xNyBhbmQgMS4xNi4xIGV4cG9ydGllcnRlIFxmQmRwa2dcLWJ1aWxkcGFja2FnZVxmUAorS29tcGlsaWVyc2NoYWx0ZXIgKFxmQkNGTEFHU1xmUCwgXGZCQ1hYRkxBR1NcZlAsIFxmQkZGTEFHU1xmUCwgXGZCQ1BQRkxBR1NcZlAgdW5kCitcZkJMREZMQUdTXGZQKSBtaXQgV2VydGVuLCBkaWUgdm9uIFxmQmRwa2dcLWJ1aWxkZmxhZ3NcZlAgZ2VsaWVmZXJ0IHd1cmRlbi4gRGllcworaXN0IG5pY2h0IG1laHIgZGVyIEZhbGwuCisuCisuU0ggRkVITEVSCitFcyBzb2xsdGUgbfZnbGljaCBzZWluLCBMZWVyemVpY2hlbiB1bmQgTWV0YXplaWNoZW4gZGVyIFNoZWxsIGluIHVuZAorQW5mYW5nc2FyZ3VtZW50ZSBm/HIgXGZJcm9vdFwtd2VyZGVcLUJlZmVobFxmUCB1bmQgXGZJc2lnbmllclwtQmVmZWhsXGZQIGFuenVnZWJlbi4KKy4KKy5TSCDcQkVSU0VUWlVORworRGllIGRldXRzY2hlINxiZXJzZXR6dW5nIHd1cmRlIDIwMDQsIDIwMDYtMjAxMSB2b24gSGVsZ2UgS3JldXR6bWFubgorPGRlYmlhbkBoZWxnZWZqZWxsLmRlPiwgMjAwNyB2b24gRmxvcmlhbiBSZWhuaXNjaCA8ZWl4bWFuQGdteC5kZT4gdW5kCisyMDA4IHZvbiBTdmVuIEpvYWNoaW0gPHN2ZW5qb2FjQGdteC5kZT4KK2FuZ2VmZXJ0aWd0LiBEaWVzZSDcYmVyc2V0enVuZyBpc3QgRnJlaWUgRG9rdW1lbnRhdGlvbjsgbGVzZW4gU2llIGRpZQorR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgVmVyc2lvbiAyIG9kZXIgbmV1ZXIgZvxyIGRpZSBLb3BpZXJiZWRpbmd1bmdlbi4KK0VzIGdpYnQgS0VJTkUgSEFGVFVORy4KKy5TSCAiU0lFSEUgQVVDSCIKK1xmQmRwa2dcLXNvdXJjZVxmUCgxKSwgXGZCZHBrZ1wtYXJjaGl0ZWN0dXJlXGZQKDEpLCBcZkJkcGtnXC1idWlsZGZsYWdzXGZQKDEpLAorXGZCZHBrZ1wtZ2VuY2hhbmdlc1xmUCgxKSwgXGZCZmFrZXJvb3RcZlAoMSksIFxmQmdwZ1xmUCgxKS4KKy4KKy5TSCBBVVRPUkVOCitDb3B5cmlnaHQgXChjbyAxOTk1XC0xOTk2IElhbiBKYWNrc29uCisuYnIKK0NvcHlyaWdodCBcKGNvIDIwMDAgV2ljaGVydCBBa2tlcm1hbgorLmJyCitDb3B5cmlnaHQgXChjbyAyMDA3IEZyYW5rIExpY2h0ZW5oZWxkCisuYnIKK0NvcHlyaWdodCBcKGNvIDIwMDdcLTIwMTAgUmFwaGFcWzplXWwgSGVydHpvZworLnNwCitEaWVzIGlzdCBGcmVpZSBTb2Z0d2FyZTsgbGVzZW4gU2llIGRpZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBWZXJzaW9uIDIKK29kZXIgbmV1ZXIgZvxyIGRpZSBLb3BpZXJiZWRpbmd1bmdlbi4gRXMgZ2lidCBLRUlORSBIYWZ0dW5nLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vZGUvZHBrZy1jaGVja2J1aWxkZGVwcy4xIGIvZHBrZy0xLjE2LjEuMS9tYW4vZGUvZHBrZy1jaGVja2J1aWxkZGVwcy4xCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjVlMDQxNTYKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9kZS9kcGtnLWNoZWNrYnVpbGRkZXBzLjEKQEAgLTAsMCArMSw1NSBAQAorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlwiCisuXCIgVGhpcyBmaWxlIHdhcyBnZW5lcmF0ZWQgd2l0aCBwbzRhLiBUcmFuc2xhdGUgdGhlIHNvdXJjZSBmaWxlLgorLlwiCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuVEggZHBrZ1wtY2hlY2tidWlsZGRlcHMgMSAyMDExXC0wN1wtMDQgRGViaWFuXC1Qcm9qZWt0IGRwa2dcLUhpbGZzcHJvZ3JhbW1lCisuU0ggTkFNRQorZHBrZ1wtY2hlY2tidWlsZGRlcHMgXC0g/GJlcnBy/GZlIEJhdWFiaORuZ2lna2VpdGVuIHVuZCBcLWtvbmZsaWt0ZQorLgorLlNIINxCRVJTSUNIVAorXGZCZHBrZ1wtY2hlY2tidWlsZGRlcHNcZlAgW1xmSU9wdGlvblxmUC4uLl0gW1xmSUJlZmVobHNkYXRlaVxmUF0KKy4KKy5TSCBCRVNDSFJFSUJVTkcKK0RpZXNlcyBQcm9ncmFtbSD8YmVycHL8ZnQgZGllIGltIFN5c3RlbSBpbnN0YWxsaWVydGVuIFBha2V0ZSBnZWdlbiBkaWUKK0JhdWFiaORuZ2lna2VpdGVuIHVuZCBCYXVrb25mbGlrdGUsIGRpZSBpbiBkZXIgU3RldWVyZGF0ZWkgYXVmZ2Vm/GhydAorc2luZC4gRmFsbHMgd2VsY2hlIGRhdm9uIG5pY2h0IGVyZvxsbHQgc2luZCwgemVpZ3QgZXMgZGllc2UgYW4gdW5kIGJlZW5kZXQKK3NpY2ggbWl0IGVpbmVtIHZvbiBOdWxsIHZlcnNjaGllZGVuZW4gUvxja2dhYmV3ZXJ0LgorLlAKK1N0YW5kYXJkbeTfaWcgd2lyZCBcZkJkZWJpYW4vY29udHJvbFxmUCBnZWxlc2VuLCBhYmVyIGVpbiBhbHRlcm5hdGl2ZXIKK1N0ZXVlcmRhdGVpbmFtZSBrYW5uIGF1ZiBkZXIgS29tbWFuZG96ZWlsZSBhbmdlZ2ViZW4gd2VyZGVuLgorLgorLlNIIE9QVElPTkVOCisuVFAgCitcZkJcLVwtYWRtaW5kaXI9XGZQXGZJVmVyelxmUAorxG5kZXJ0IGRlbiBBYmxhZ2VvcnQgZGVyIFxmQmRwa2dcZlBcLURhdGVuYmFuay4gRGVyIFN0YW5kYXJkb3J0IGlzdAorXGZJL3Zhci9saWIvZHBrZ1xmUC4KKy5UUCAKK1xmQlwtQlxmUAorSWdub3JpZXJlIFxmSUJ1aWxkXC1EZXBlbmRzXC1JbmRlcFxmUFwtWmVpbGVuLiBWZXJ3ZW5kZW4gU2llIGRpZXMsIHdlbm4ga2VpbmUKK2FyY2hcLWluZGVwXC1QYWtldGUgZ2ViYXV0IHdlcmRlbi4KKy5UUCAKK1xmQlwtZCBcZlBcZklaZWljaGVua2V0dGVcLWb8clwtQmF1YWJo5G5naWdrZWl0ZW5cZlAKKy5UUCAKK1xmQlwtYyBcZlBcZklaZWljaGVua2V0dGVcLWb8clwtQmF1a29uZmxpa3RlXGZQCitWZXJ3ZW5kZSBkaWUgYW5nZWdlYmVuZW4gQmF1YWJo5G5naWdrZWl0ZW4vXC1rb25mbGlrdGUgc3RhdHQgZGVuZW4gZGVyIERhdGVpCitcZklkZWJpYW4vY29udHJvbFxmUC4KKy5UUCAKK1xmQlwtaFxmUCwgXGZCXC1cLWhlbHBcZlAKK1plaWdlIGRlbiBCZWRpZW51bmdzaGlud2VpcyB1bmQgYmVlbmRlLgorLlRQIAorXGZCXC1cLXZlcnNpb25cZlAKK0dlYmUgZGllIFZlcnNpb24gYXVzIHVuZCBiZWVuZGUgc2ljaC4KKy4KKy5TSCBBVVRPUgorQ29weXJpZ2h0IFwoY28gMjAwMSBKb2V5IEhlc3MKKy5zcAorRGllcyBpc3QgRnJlaWUgU29mdHdhcmU7IGxlc2VuIFNpZSBkaWUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgVmVyc2lvbiAyCitvZGVyIG5ldWVyIGb8ciBkaWUgS29waWVyYmVkaW5ndW5nZW4uIEVzIGdpYnQgS0VJTkUgSGFmdHVuZy4KKy5TSCDcQkVSU0VUWlVORworRGllIGRldXRzY2hlINxiZXJzZXR6dW5nIHd1cmRlIDIwMDQsIDIwMDYtMjAxMSB2b24gSGVsZ2UgS3JldXR6bWFubgorPGRlYmlhbkBoZWxnZWZqZWxsLmRlPiwgMjAwNyB2b24gRmxvcmlhbiBSZWhuaXNjaCA8ZWl4bWFuQGdteC5kZT4gdW5kCisyMDA4IHZvbiBTdmVuIEpvYWNoaW0gPHN2ZW5qb2FjQGdteC5kZT4KK2FuZ2VmZXJ0aWd0LiBEaWVzZSDcYmVyc2V0enVuZyBpc3QgRnJlaWUgRG9rdW1lbnRhdGlvbjsgbGVzZW4gU2llIGRpZQorR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgVmVyc2lvbiAyIG9kZXIgbmV1ZXIgZvxyIGRpZSBLb3BpZXJiZWRpbmd1bmdlbi4KK0VzIGdpYnQgS0VJTkUgSEFGVFVORy4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL2RlL2Rwa2ctZGViLjEgYi9kcGtnLTEuMTYuMS4xL21hbi9kZS9kcGtnLWRlYi4xCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjc4NjRlNmUKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9kZS9kcGtnLWRlYi4xCkBAIC0wLDAgKzEsMjE5IEBACisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkcGtnXC1kZWIgMSAyMDExXC0wOFwtMTQgRGViaWFuXC1Qcm9qZWt0IGRwa2dcLVByb2dyYW1tc2FtbWx1bmcKKy5TSCBOQU1FCitkcGtnXC1kZWIgXC0gRGViaWFuXC1QYWtldGFyY2hpdiAoLmRlYikgTWFuaXB1bGF0aW9uc3dlcmt6ZXVnCisuCisuU0gg3EJFUlNJQ0hUCitcZkJkcGtnXC1kZWJcZlAgW1xmSU9wdGlvblxmUC4uLl0gXGZJQmVmZWhsXGZQCisuCisuU0ggQkVTQ0hSRUlCVU5HCitcZkJkcGtnXC1kZWJcZlAgcGFja3QgdW5kIGVudHBhY2t0IERlYmlhblwtQXJjaGl2ZSB1bmQgc3RlbGx0IEluZm9ybWF0aW9uZW4g/GJlcgorc2llIGJyZWl0LgorLlBQCitWZXJ3ZW5kZW4gU2llIFxmQmRwa2dcZlAsIHVtIFBha2V0ZSBhdWYgSWhyZW0gU3lzdGVtIGhpbnp1enVm/GdlbiBvZGVyIHp1CitlbnRmZXJuZW4KKy5QUAorU2llIGv2bm5lbiBcZkJkcGtnXC1kZWJcZlAgZHVyY2ggQXVmcnVmIHZvbiBcZkJkcGtnXGZQIG1pdCBiZWxpZWJpZ2VuIE9wdGlvbmVuLCBkaWUKK1NpZSBhbiBcZkJkcGtnXC1kZWJcZlAg/GJlcmdlYmVuIHdvbGxlbiwgYXVmcnVmZW4uIFxmQmRwa2dcZlAgZXJrZW5udCwgZGFzcyBTaWUKK1xmQmRwa2dcLWRlYlxmUCB3b2xsdGVuIHVuZCB3aXJkIGVzIGb8ciBTaWUgYXVzZvxocmVuLgorLgorLlNIIEJFRkVITEUKKy5UUCAKK1xmQlwtYlxmUCwgXGZCXC1cLWJ1aWxkXGZQIFxmSVZlcnplaWNobmlzXGZQIFtcZklBcmNoaXZcZlB8XGZJVmVyemVpY2huaXNcZlBdCitMZWd0IGVpbiBEZWJpYW5cLUFyY2hpdiBhdXMgZGVtIERhdGVpc3lzdGVtYmF1bSwgZGVyIGluIFxmSVZlcnplaWNobmlzXGZQCitnZXNwZWljaGVydCBpc3QsIGFuLiBcZklWZXJ6ZWljaG5pc1xmUCBtdXNzIGVpbiBcZkJERUJJQU5cZlBcLVVudGVydmVyemVpY2huaXMKK2F1ZndlaXNlbiwgZGFzIGRpZSBEYXRlaWVuIG1pdCBTdGV1ZXJpbmZvcm1hdGlvbiB3aWUgZGllIGNvbnRyb2xcLURhdGVpCitzZWxic3QgZW50aORsdC4gRGllc2VzIFZlcnplaWNobmlzIHdpcmQgXGZJbmljaHRcZlAgaW4gZGVtIERhdGVpc3lzdGVtYXJjaGl2CitkZXMgQmlu5HJwYWtldHMgYXVmdGF1Y2hlbiwgc29uZGVybiBkaWUgRGF0ZWllbiBzZWxic3Qgd2VyZGVuIGluIGRlbgorU3RldWVyXC1JbmZvcm1hdGlvbnNiZXJlaWNoIGRlcyBCaW7kcnBha2V0cyBnZXBhY2t0LgorCitGYWxscyBTaWUgbmljaHQgXGZCXC1cLW5vY2hlY2tcZlAgYW5nZWJlbiwgd2lyZCBcZkJkcGtnXC1kZWJcZlAgXGZCREVCSUFOL2NvbnRyb2xcZlAKK2xlc2VuIHVuZCBlcyBwYXJzZW4uIEVzIHBy/GZ0IHNpZSBhdWYgU3ludGF4XC1GZWhsZXIgdW5kIGFuZGVyZSBQcm9ibGVtZSB1bmQKK3plaWd0IGRlbiBOYW1lbiBkZXMgenUgYmF1ZW5kZW4gQmlu5HJwYWtldHMgYW4uIFxmQmRwa2dcLWRlYlxmUCB3aXJkIGF1Y2ggZGllCitSZWNodGUgZGVyIEJldHJldWVyXC1Ta3JpcHRlIHVuZCBhbmRlcmVyIERhdGVpZW4gaW0KK1xmQkRFQklBTlxmUFwtU3RldWVyXC1JbmZvcm1hdGlvbnN2ZXJ6ZWljaG5pcyBwcvxmZW4uCisKK0ZhbGxzIGtlaW4gXGZJQXJjaGl2XGZQIGFuZ2VnZWJlbiBpc3QsIHdpcmQgXGZCZHBrZ1wtZGViXGZQIGRhcyBQYWtldCBpbiBkaWUgRGF0ZWkKK1xmSVZlcnplaWNobmlzXGZQXGZCLmRlYlxmUCBzY2hyZWliZW4uCisKK0ZhbGxzIGRhcyBhbnp1bGVnZW5kZSBBcmNoaXYgYmVyZWl0cyBleGlzdGllcnQsIHdpcmQgZXMg/GJlcnNjaHJpZWJlbi4KKworRmFsbHMgZGFzIHp3ZWl0ZSBBcmd1bWVudCBlaW4gVmVyemVpY2huaXMgaXN0LCB3aXJkIFxmQmRwa2dcLWRlYlxmUCBpbiBkaWUgRGF0ZWkKK1xmSVBha2V0XGZQXGZCX1xmUFxmSVZlcnNpb25cZlBcZkJfXGZQXGZJYXJjaFxmUFxmQi5kZWJcZlAgb2RlciBcZklQYWtldFxmUFxmQl9cZlBcZklWZXJzaW9uXGZQXGZCLmRlYlxmUCwKK2ZhbGxzIGtlaW4gXGZCQXJjaGl0ZWN0dXJlXGZQXC1GZWxkIGluIGRlciBQYWtldFwtU3RldWVyZGF0ZWkgdm9yaGFuZGVuIGlzdCwKK3NjaHJlaWJlbi4gV2VubiBlaW4gWmllbHZlcnplaWNobmlzIHN0YXR0IGVpbmVyIERhdGVpIGFuZ2VnZWJlbiBpc3QsIGRhcmYKK2RpZSBPcHRpb24gXGZCXC1cLW5vY2hlY2tcZlAgbmljaHQgdmVyd2VuZGV0IHdlcmRlbiAoZGEgXGZCZHBrZ1wtZGViXGZQIGRpZQorUGFrZXRzdGV1ZXJkYXRlaSBsZXNlbiB1bmQgcGFyc2VuIG11c3MsIHVtIGRlbiB6dSB2ZXJ3ZW5kZW5kZW4gRGF0ZWluYW1lbiB6dQorYmVzdGltbWVuKS4KKy5UUCAKK1xmQlwtSVxmUCwgXGZCXC1cLWluZm9cZlAgXGZJQXJjaGl2XGZQIFtcZklTdGV1ZXJcLURhdGVpbmFtZVxmUCAuLi5dCitTdGVsbHQgSW5mb3JtYXRpb25lbiD8YmVyIGVpbiBCaW7kcnBha2V0YXJjaGl2IGJlcmVpdC4KKworRmFsbHMga2VpbmUgXGZJU3RldWVyXC1EYXRlaW5hbWVcZlBuIGFuZ2VnZWJlbiBzaW5kLCB3aXJkIGVzIGVpbmUKK1p1c2FtbWVuZmFzc3VuZyBkZXMgSW5oYWx0cyBkZXMgUGFrZXRzIHNvd2llIGRlc3NlbiBTdGV1ZXJkYXRlaSBhdXNnZWJlbi4KKworRmFsbHMgXGZJU3RldWVyXC1EYXRlaW5hbWVcZlBuIGFuZ2VnZWJlbiBzaW5kLCB3aXJkIFxmQmRwa2dcLWRlYlxmUCBkaWVzZSBpbiBkZXIKK2FuZ2VnZWJlbmVuIFJlaWhlbmZvbGdlIGF1c2dlYmVuOyBmYWxscyBlaW5pZ2UgZGVyIEtvbXBvbmVudGVuIG5pY2h0Cit2b3JoYW5kZW4gc2luZCwgd2lyZCBlcyBlaW5lIEZlaGxlcm5hY2hyaWNodCBuYWNoIFN0ZGVyciD8YmVyIGplZGUgYXVzZ2ViZW4KK3VuZCBzaWNoIG1pdCBkZW0gU3RhdHVzIDIgYmVlbmRlbi4KKy5UUCAKK1xmQlwtV1xmUCwgXGZCXC1cLXNob3dcZlAgXGZJQXJjaGl2XGZQCitTdGVsbHQgSW5mb3JtYXRpb25lbiD8YmVyIEJpbuRycGFrZXRhcmNoaXZlIGltIEZvcm1hdCBkYXIsIGRhcyBtaXQgZGVtCitBcmd1bWVudCBcZkJcLVwtc2hvd2Zvcm1hdFxmUCBhbmdlZ2ViZW4gd3VyZGUuIERhcyBTdGFuZGFyZGZvcm1hdCB6ZWlndCBkZW4KK1Bha2V0bmFtZW4gdW5kIGRpZSBQYWtldHZlcnNpb24gaW4gZWluZXIgWmVpbGUsIGdldHJlbm50IGR1cmNoIGVpbmVuCitUYWJ1bGF0b3IuCisuVFAgCitcZkJcLWZcZlAsIFxmQlwtXC1maWVsZFxmUCBcZklBcmNoaXZcZlAgW1xmSVN0ZXVlclwtRmVsZG5hbWVcZlAgLi4uXQorRXh0cmFoaWVydCBkaWUgSW5mb3JtYXRpb25lbiBkZXIgY29udHJvbFwtRGF0ZWkgYXVzIGVpbmVtIEJpbuRycGFrZXRhcmNoaXYuCisKK0ZhbGxzIGtlaW5lIFxmQlN0ZXVlcmRhdGVpXC1GZWxkXGZQZXIgYW5nZWdlYmVuIHNpbmQsIGdpYnQgZXMgZGllIGdlc2FtdGUKK2NvbnRyb2xcLURhdGVpIGF1cy4KKworRmFsbHMgd2VsY2hlIGFuZ2VnZWJlbiBzaW5kLCBnaWJ0IFxmQmRwa2dcLWRlYlxmUCBpaHJlbiBJbmhhbHQgaW4gZGVyCitSZWloZW5mb2xnZSBhdXMsIGluIGRlciBzaWUgaW4gZGVyIGNvbnRyb2xcLURhdGVpIGFuZ2VnZWJlbiBzaW5kLiBGYWxscyBtZWhyCithbHMgZWluIFxmQlN0ZXVlcmRhdGVpXC1GZWxkXGZQIGFuZ2VnZWJlbiBpc3QsIHN0ZWxsdCBcZkJkcGtnXC1kZWJcZlAgamVkZW0gSW5oYWx0CitzZWluZW4gRmVsZG5hbWVuICh1bmQgZWluZW4gRG9wcGVscHVua3QgbWl0IExlZXJ6ZWljaGVuKSB2b3Jhbi4KKworRmFsbHMgYW5nZWZvcmRlcnRlIEZlbGRlciBuaWNodCBnZWZ1bmRlbiB3ZXJkZW4gd2lyZCBrZWluIEZlaGxlciBnZW1lbGRldC4KKy5UUCAKK1xmQlwtY1xmUCwgXGZCXC1cLWNvbnRlbnRzXGZQIFxmSUFyY2hpdlxmUAorTGlzdGV0IGRlbiBJbmhhbHQgZGVzIERhdGVpc3lzdGVtXC1BcmNoaXZhbnRlaWxzIGRlcyBQYWtldGFyY2hpdnMgYXVmLiBEaWUKK0F1c2dhYmUgZXJmb2xndCBkZXJ6ZWl0IGluIGRlbSBGb3JtYXQsIGRhcyB2b24gXGZCdGFyXGZQIGluIGRlciBhdXNm/GhybGljaGVuCitBdWZsaXN0dW5nIGVyc3RlbGx0IHdpcmQuCisuVFAgCitcZkJcLXhcZlAsIFxmQlwtXC1leHRyYWN0XGZQIFxmSUFyY2hpdlwtVmVyemVpY2huaXNcZlAKK0V4dHJhaGllcnQgZGVuIERhdGVpc3lzdGVtYmF1bSBhdXMgZWluZW0gUGFrZXRhcmNoaXYgaW4gZGFzIGFuZ2VnZWJlbmUKK1ZlcnplaWNobmlzLgorCitCZWFjaHRlbiBTaWUsIGRhc3MgZGFzIEV4dHJhaGllcmVuIGVpbmVzIFBha2V0cyBpbiBkYXMgV3VyemVsdmVyemVpY2huaXMKK1xmSW5pY2h0XGZQIHp1IGVpbmVyIGtvcnJla3RlbiBJbnN0YWxsYXRpb24gZvxocnQhIFZlcndlbmRlbiBTaWUgXGZCZHBrZ1xmUCB6dXIKK1Bha2V0aW5zdGFsbGF0aW9uLgorCitcZklWZXJ6ZWljaG5pc1xmUCAoYWJlciBuaWNodCBkaWUg/GJlcmdlb3JkbmV0ZW4pIHdpcmQgZmFsbHMgbm90d2VuZGlnCithbmdlbGVndC4gU2VpbmUgUmVjaHRlIHdlcmRlbiBhbmdlcGFzc3QsIHVtIG1pdCBkZW0gSW5oYWx0IGRlcyBQYWtldHMKK/xiZXJlaW56dXN0aW1tZW4uCisuVFAgCitcZkJcLVhcZlAsIFxmQlwtXC12ZXh0cmFjdFxmUCBcZklBcmNoaXZcLVZlcnplaWNobmlzXGZQCitJc3Qgd2llIFxmQlwtXC1leHRyYWN0XGZQIChcZkJcLXhcZlApIG1pdCBcZkJcLVwtdmVyYm9zZVxmUCAoXGZCXC12XGZQKSwgZGFzIGJlaW0gQXJiZWl0ZW4KK2VpbmUgTGlzdGUgdm9uIGV4dHJhaGllcnRlbiBEYXRlaWVuIGF1c2dpYnQuCisuVFAgCitcZkJcLVJcZlAsIFxmQlwtXC1yYXdcLWV4dHJhY3RcZlAgXGZJQXJjaGl2XC1WZXJ6ZWljaG5pc1xmUAorRXh0cmFoaWVydCBkZW4gRGF0ZWlzeXN0ZW1iYXVtIGF1cyBlaW5lbSBQYWtldGFyY2hpdiBpbiBlaW4gYW5nZWdlYmVuZXMKK1ZlcnplaWNobmlzIHVuZCBkaWUgU3RldWVyaW5mb3JtYXRpb25lbnNkYXRlaWVuIGluIGRhcworREVCSUFOXC1VbnRlcnZlcnplaWNobmlzIGRlcyBhbmdlZ2ViZW5lbiBWZXJ6ZWljaG5pc3Nlcy4KKworRGFzIFppZWx2ZXJ6ZWljaG5pcyAoYWJlciBuaWNodCD8YmVyZ2VvcmRuZXRlKSB3aXJkLCBmYWxscyBub3R3ZW5kaWcsCithbmdlbGVndC4KKy5UUCAKK1xmQlwtXC1mc3lzXC10YXJmaWxlXGZQIFxmSUFyY2hpdlxmUAorRXh0cmFoaWVydCBkaWUgRGF0ZWlzeXN0ZW1iYXVtXC1EYXRlbiBhdXMgZWluZW0gQmlu5HJwYWtldCB1bmQgc2NoaWNrdCBzaWUKK3p1ciBTdGFuZGFyZGF1c2dhYmUgaW0gXGZCdGFyXGZQXC1Gb3JtYXQuIERpZXMga2FubiB6dXNhbW1lbiBtaXQgXGZCdGFyXGZQKDEpCit2ZXJ3ZW5kZXQgd2VyZGVuLCB1bSBlaW5lIGJlc3RpbW10ZSBEYXRlaSBhdXMgZWluZW0gUGFrZXRhcmNoaXYgenUKK2V4dHJhaGllcmVuLiBEYXMgRWluZ2FiZWFyY2hpdiB3aXJkIGltbWVyIHNlcXVlbnppZWxsIHZlcmFyYmVpdGV0LgorLlRQIAorXGZCXC1lXGZQLCBcZkJcLVwtY29udHJvbFxmUCBcZklBcmNoaXZcZlAgW1xmSVZlcnplaWNobmlzXGZQXQorRXh0cmFoaWVydCBkaWUgU3RldWVyXC1JbmZvcm1hdGlvbnNkYXRlaWVuIGF1cyBlaW5lbSBQYWtldGFyY2hpdiBpbiBkYXMKK2FuZ2VnZWJlbmUgVmVyemVpY2huaXMuCisKK0ZhbGxzIGtlaW4gVmVyemVpY2huaXMgYW5nZWdlYmVuIGlzdCwgd2lyZCBkYXMgVW50ZXJ2ZXJ6ZWljaG5pcyBcZkJERUJJQU5cZlAgaW0KK2FrdHVlbGxlbiBWZXJ6ZWljaG5pcyB2ZXJ3ZW5kZXQuCisKK0RhcyBaaWVsdmVyemVpY2huaXMgKGFiZXIgbmljaHQg/GJlcmdlb3JkbmV0ZSkgd2lyZCwgZmFsbHMgbm90d2VuZGlnLAorYW5nZWxlZ3QuCisuVFAgCitcZkJcLWhcZlAsIFxmQlwtXC1oZWxwXGZQCitaZWlnZSBkZW4gQmVkaWVudW5nc2hpbndlaXMgdW5kIGJlZW5kZS4KKy5UUCAKK1xmQlwtXC12ZXJzaW9uXGZQCitHZWJlIGRpZSBWZXJzaW9uIGF1cyB1bmQgYmVlbmRlIHNpY2guCisuCisuU0ggT1BUSU9ORU4KKy5UUCAKK1xmQlwtXC1zaG93Zm9ybWF0PVxmUFxmSUZvcm1hdFxmUAorRGllc2UgT3B0aW9uIHdpcmQgZGF6dSB2ZXJ3ZW5kZXQsIGRhcyBGb3JtYXQgZGVyIEF1c2dhYmUgYW56dWdlYmVuLCBkYXMKK1xmQlwtXC1zaG93XGZQIHZlcndlbmRlbiB3aXJkLiBEYXMgRm9ybWF0IGlzdCBlaW5lIFplaWNoZW5rZXR0ZSwgZGllIGb8ciBqZWRlcworYXVmZ2Vm/GhydGUgUGFrZXQgYXVzZ2VnZWJlbiB3aXJkLgorCitEaWUgWmVpY2hlbmtldHRlIGRhcmYgamVkZXMgU3RhdHVzZmVsZCBpbiBkZXIgRm9ybSC7JHtcZklGZWxkbmFtZVxmUH2rCityZWZlcmVuemllcmVuLCBlaW5lIExpc3RlIGRlciBt9mdsaWNoZW4gRmVsZGVyIGthbm4gbGVpY2h0IG1pdHRlbHMgXGZCXC1JXGZQIGb8cgorZGFzIGdsZWljaGUgUGFrZXQgZXJtaXR0ZWx0IHdlcmRlbi4gRWluZSBrb21wbGV0dGUgRXJs5HV0ZXJ1bmcgZGVyCitGb3JtYXRpZXJvcHRpb25lbiAoZGFydW50ZXIgZGllIEVzY2FwZVwtU2VxdWVuemVuIHVuZCBGZWxkXC1UYWJ1bGF0b3Jlbikga2FubgoraW4gZGVyIEVya2zkcnVuZyBkZXIgT3B0aW9uIFxmQlwtXC1zaG93Zm9ybWF0XGZQIHZvbiBcZkJkcGtnXC1xdWVyeVxmUCgxKSBnZWZ1bmRlbgord2VyZGVuLgorCitEaWUgVm9yZWluc3RlbGx1bmcgZvxyIGRpZXNlcyBGZWxkIGlzdCAiJHtQYWNrYWdlfVxldCR7VmVyc2lvbn1cZW4iLgorLlRQIAorXGZCXC16XGZQXGZJS29tcHJpbWllcnN0dWZlXGZQCitHaWJ0IGRpZSBLb21wcmltaWVyc3R1ZmUgYW4sIGRpZSBpbSBLb21wcmltaWVyXC1CYWNrZW5kcHJvZ3JhbW0gYmVpbSBCYXUKK2VpbmVzIFBha2V0cyB2ZXJ3ZW5kZXQgd2VyZGVuIHNvbGwuIFN0YW5kYXJkbeTfaWcgaXN0IGRpZXMgOSBm/HIgR3ppcCB1bmQKK0J6aXAyLCA2IGb8ciBYeiB1bmQgTHptYS4KKy5UUCAKK1xmQlwtWlxmUFxmSUtvbXByaW1pZXJhcnRcZlAKK0dpYnQgZGllIEFydCBkZXIgS29tcHJpbWllcnVuZyBiZWltIEJhdSBlaW5lcyBQYWtldHMgYW4uIEVybGF1YnRlIFdlcnRlIHNpbmQKK1xmSWd6aXBcZlAsIFxmSXh6XGZQLCBcZkliemlwMlxmUCwgXGZJbHptYVxmUCB1bmQgXGZJbm9uZVxmUCAodm9yZWluZ2VzdGVsbHQgaXN0IFxmSWd6aXBcZlApLgorLlRQIAorXGZCXC1cLW5ld1xmUAorU3RlbGx0IHNpY2hlciwgZGFzcyBcZkJkcGtnXC1kZWJcZlAgZWluIEFyY2hpdiBpbSC7bmV1ZW6rIEZvcm1hdCBiYXV0LiBEaWVzIGlzdAorZGllIFZvcmVpbnN0ZWxsdW5nLgorLlRQIAorXGZCXC1cLW9sZFxmUAorWndpbmd0IFxmQmRwa2dcLWRlYlxmUCBkYXp1LCBlaW4gQXJjaGl2IGltILthbHRlbqsgRm9ybWF0IHp1IGJhdWVuLiBEaWVzZXMgYWx0ZQorRm9ybWF0IHdpcmQgbmljaHQgc28gbGVpY2h0IHZvbiBuaWNodFwtRGViaWFuXC1XZXJremV1Z2VuIGVpbmdlbGVzZW4gdW5kIGlzdAoramV0enQgdmVyYWx0ZXQ7IGRlciBlaW56aWdlIFp3ZWNrIGlzdCB6dW0gQmF1IHZvbiBQYWtldGVuLCBkaWUgdm9uCitEcGtnXC1WZXJzaW9uZW4ga2xlaW5lciAwLjkzLjc2IChTZXB0ZW1iZXIgMTk5NSkgZWluZ2VsZXNlbiB3ZXJkZW4KK3NvbGxlbi4gRGllc2UgRHBrZ1wtVmVyc2lvbiB3dXJkZSBudXIgYWxzIGkzODYgYS5vdXRcLVByb2dyYW1tIHZlcvZmZmVudGxpY2h0LgorLlRQIAorXGZCXC1cLW5vY2hlY2tcZlAKK1VudGVyZHL8Y2t0IGRpZSBub3JtYWxlbiDcYmVycHL8ZnVuZ2VuIHZvbiBcZkJkcGtnXC1kZWIgXC1cLWJ1aWxkXGZQIPxiZXIgZGllCit2b3JnZXNjaGxhZ2VuZW4gSW5oYWx0ZSBlaW5lcyBBcmNoaXZzLiBEYW1pdCBr9m5uZW4gU2llIGplZGVzIEFyY2hpdiBiYXVlbiwKK2RhcyBTaWUgbfZjaHRlbiwgZWdhbCB3aWUgZGVmZWt0IGVzIGlzdC4KKy5UUCAKK1xmQlwtdlxmUCwgXGZCXC1cLXZlcmJvc2VcZlAKK0FrdGl2aWVydCBhdXNm/GhybGljaGUgQXVzZ2FiZS4gRGllcyBiZXRyaWZmdCBkZXJ6ZWl0IG51ciBcZkJcLVwtZXh0cmFjdFxmUCwKK3dvZHVyY2ggZGllc2VzIHNpY2ggd2llIFxmQlwtXC12ZXh0cmFjdFxmUCB2ZXJo5Gx0LgorLlRQIAorXGZCXC1EXGZQLCBcZkJcLVwtZGVidWdcZlAKK0FrdGl2aWVydCBGZWhsZXJzdWNoXC1BdXNnYWJlbiAou2RlYnVnZ2luZ6spLiBEaWVzIGlzdCBuaWNodCBzZWhyCitpbnRlcmVzc2FudC4KKy4KKy5TSCBVTUdFQlVORworLlRQIAorXGZCVE1QRElSXGZQCitGYWxscyBnZXNldHp0IHdpcmQgXGZCZHBrZ1wtZGViXGZQIGVzIGFscyBkYXMgVmVyemVpY2huaXMgdmVyd2VuZGVuLCBpbiBkZW0KK3RlbXBvcuRyZSBEYXRlaWVuIHVuZCBWZXJ6ZWljaG5pc3NlIGVyc3RlbGx0IHdlcmRlbi4KKy4KKy5TSCBGRUhMRVIKK1xmQmRwa2dcLWRlYiBcLUlcZlAgXGZJUGFrZXQxXGZQXGZCLmRlYlxmUCBcZklQYWtldDJcZlBcZkIuZGViXGZQIG1hY2h0IGRhcyBGYWxzY2hlLgorCitcJlxmQi5kZWJcZlBcLURhdGVpZW4gd2VyZGVuIG5pY2h0IGF1dGhlbnRpZml6aWVydDsgaW4gZGVyIFRhdCBnaWJ0IGVzIG5vY2ggbmljaHQKK21hbCBlaW5lIGtsYXJlIFBy/GZzdW1tZS4gKEFic3RyYWt0ZXJlIFdlcmt6ZXVnZSB3aWUgQVBUIHVudGVyc3T8dHp0ZW4gZGllCitBdXRoZW50aWZpemllcnVuZyB2b24gXGZCLmRlYlxmUFwtUGFrZXRlbiwgZGllIHZvbiBlaW5lbSB2b3JnZWdlYmVuZW4gRGVwb3QKK2dlaG9sdCB3dXJkZW4gdW5kIGRpZSBtZWlzdGVuIFBha2V0ZSBzdGVsbGVuIGhldXR6dXRhZ2UgZWluZQorbWQ1c3VtXC1TdGV1ZXJkYXRlaSBiZXJlaXQsIGRpZSBtaXR0ZWxzIGRlYmlhbi9ydWxlcyBlcnN0ZWxsdAord3VyZGUuIEFsbGVyZGluZ3Mgd2lyZCBkaWVzIHZvbiBkZW4gV2Vya3pldWdlbiBhdWYgbmllZHJpZ2VyZXIgRWJlbmUgbmljaHQKK2RpcmVrdCB1bnRlcnN0/HR6dC4pCisKK1ZlcnN1Y2hlbiBTaWUgbmljaHQsIG51ciBtaXQgXGZCZHBrZ1wtZGViXGZQIFNvZnR3YXJlIHp1IGluc3RhbGxpZXJlbiEgU2llCitt/HNzZW4gXGZCZHBrZ1xmUCBzZWxiZXIgdmVyd2VuZGVuLCB1bSBzaWNoZXJ6dXN0ZWxsZW4sIGRhc3MgYWxsZSBEYXRlaWVuIGFuCitkZW4gcmljaHRpZ2VuIE9ydCBwbGF0emllcnQgd2VyZGVuLCBkaWUgUGFrZXRza3JpcHRlIGF1c2dlZvxocnQgd2VyZGVuIHVuZAorc2VpbiBTdGF0dXMgdW5kIEluaGFsdCBhdWZnZXplaWNobmV0IHdpcmQuCisuCisuU0gg3EJFUlNFVFpVTkcKK0RpZSBkZXV0c2NoZSDcYmVyc2V0enVuZyB3dXJkZSAyMDA0LCAyMDA2LTIwMTEgdm9uIEhlbGdlIEtyZXV0em1hbm4KKzxkZWJpYW5AaGVsZ2VmamVsbC5kZT4sIDIwMDcgdm9uIEZsb3JpYW4gUmVobmlzY2ggPGVpeG1hbkBnbXguZGU+IHVuZAorMjAwOCB2b24gU3ZlbiBKb2FjaGltIDxzdmVuam9hY0BnbXguZGU+CithbmdlZmVydGlndC4gRGllc2Ug3GJlcnNldHp1bmcgaXN0IEZyZWllIERva3VtZW50YXRpb247IGxlc2VuIFNpZSBkaWUKK0dOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIFZlcnNpb24gMiBvZGVyIG5ldWVyIGb8ciBkaWUgS29waWVyYmVkaW5ndW5nZW4uCitFcyBnaWJ0IEtFSU5FIEhBRlRVTkcuCisuU0ggIlNJRUhFIEFVQ0giCitcZkJkZWJcZlAoNSksIFxmQmRlYlwtY29udHJvbFxmUCg1KSwgXGZCZHBrZ1xmUCgxKSwgXGZCZHNlbGVjdFxmUCgxKS4KKy4KKy5TSCBBVVRPUgorQ29weXJpZ2h0IFwoY28gMTk5NVwtMTk5NiBJYW4gSmFja3NvbgorLnNwCitEaWVzIGlzdCBGcmVpZSBTb2Z0d2FyZTsgbGVzZW4gU2llIGRpZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBWZXJzaW9uIDIKK29kZXIgbmV1ZXIgZvxyIGRpZSBLb3BpZXJiZWRpbmd1bmdlbi4gRXMgZ2lidCBLRUlORSBIYWZ0dW5nLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vZGUvZHBrZy1kaXN0YWRkZmlsZS4xIGIvZHBrZy0xLjE2LjEuMS9tYW4vZGUvZHBrZy1kaXN0YWRkZmlsZS4xCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmFlNzgzODAKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9kZS9kcGtnLWRpc3RhZGRmaWxlLjEKQEAgLTAsMCArMSw1NyBAQAorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlwiCisuXCIgVGhpcyBmaWxlIHdhcyBnZW5lcmF0ZWQgd2l0aCBwbzRhLiBUcmFuc2xhdGUgdGhlIHNvdXJjZSBmaWxlLgorLlwiCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuVEggZHBrZ1wtZGlzdGFkZGZpbGUgMSAyMDExXC0wN1wtMDQgRGViaWFuXC1Qcm9qZWt0IGRwa2dcLUhpbGZzcHJvZ3JhbW1lCisuU0ggTkFNRQorZHBrZ1wtZGlzdGFkZGZpbGUgXC0gRWludHLkZ2UgenUgZGViaWFuL2ZpbGVzIGhpbnp1ZvxnZW4KKy4KKy5TSCDcQkVSU0lDSFQKK1xmQmRwa2dcLWRpc3RhZGRmaWxlXGZQIFtcZklPcHRpb25cZlAuLi5dXGZJIERhdGVpbmFtZSBCZXJlaWNoIFByaW9yaXTkdFxmUAorLgorLlNIIEJFU0NIUkVJQlVORworXGZCZHBrZ1wtZGlzdGFkZGZpbGVcZlAgZvxndCBlaW5lbiBFaW50cmFnIGb8ciBlaW5lIGJlbmFubnRlIERhdGVpIGluCitcZkJkZWJpYW4vZmlsZXNcZlAgaGluenUuCisKK0VzIGVyd2FydGV0IGRyZWkgbmljaHRcLU9wdGlvbnNcLUFyZ3VtZW50ZSwgZGVuIERhdGVpbmFtZW4sIGRlbiBCZXJlaWNoIHVuZAorZGllIFByaW9yaXTkdCBm/HIgZGllIFxmQi5jaGFuZ2VzXGZQXC1EYXRlaS4KKworRGVyIERhdGVpbmFtZSBzb2xsdGUgcmVsYXRpdiB6dW0gVmVyemVpY2huaXMgYW5nZWdlYmVuIHdlcmRlbiwgaW4gZGVtCitcZkJkcGtnXC1nZW5jaGFuZ2VzXGZQIGRpZSBEYXRlaWVuIGVyd2FydGV0LCBub3JtYWxlcndlaXNlIFxmQi4uXGZQLCBzdGF0dCBlaW4KK3JlbGF0aXZlciBQZmFkbmFtZSB6dSBkZW0gYWt0dWVsbGVuIFZlcnplaWNobmlzIHp1IHNlaW4sIHdlbm4KK1xmQmRwa2dcLWRpc3RhZGRmaWxlXGZQIGF1c2dlZvxocnQgd2lyZC4KKy4KKy5TSCBPUFRJT05FTgorLlRQIAorXGZCXC1mXGZQXGZJRGF0ZWllbmxpc3REYXRlaVxmUAorTGVzZSBvZGVyIHNjaHJlaWJlIGRpZSBMaXN0ZSBkZXIgaG9jaHp1bGFkZW5lbiBEYXRlaWVuIGhpZXJoZXIsIHN0YXR0CitcZkJkZWJpYW4vZmlsZXNcZlAgenUgdmVyd2VuZGVuLgorLlRQIAorXGZCXC1oXGZQLCBcZkJcLVwtaGVscFxmUAorWmVpZ2UgZGVuIEJlZGllbnVuZ3NoaW53ZWlzIHVuZCBiZWVuZGUuCisuVFAgCitcZkJcLVwtdmVyc2lvblxmUAorR2ViZSBkaWUgVmVyc2lvbiBhdXMgdW5kIGJlZW5kZSBzaWNoLgorLgorLlNIIERBVEVJRU4KKy5UUCAKK1xmQmRlYmlhbi9maWxlc1xmUAorRGllIExpc3RlIGRlciBlcnpldWd0ZW4gRGF0ZWllbiwgZGllIFRlaWwgZGVzIHZvcmJlcmVpdGV0ZW4gVXBsb2Fkcworc2luZC4gXGZCZHBrZ1wtZGlzdGFkZGZpbGVcZlAga2FubiBkYXp1IHZlcndlbmRldCB3ZXJkZW4sIHp1c+R0emxpY2hlIERhdGVpZW4KK2hpbnp1enVm/Gdlbi4KKy4KKy5TSCBBVVRPUkVOCitDb3B5cmlnaHQgXChjbyAxOTk1XC0xOTk2IElhbiBKYWNrc29uCisuYnIKK0NvcHlyaWdodCBcKGNvIDIwMDAgV2ljaGVydCBBa2tlcm1hbgorLnNwCitEaWVzIGlzdCBGcmVpZSBTb2Z0d2FyZTsgbGVzZW4gU2llIGRpZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBWZXJzaW9uIDIKK29kZXIgbmV1ZXIgZvxyIGRpZSBLb3BpZXJiZWRpbmd1bmdlbi4gRXMgZ2lidCBLRUlORSBIYWZ0dW5nLgorLlNIINxCRVJTRVRaVU5HCitEaWUgZGV1dHNjaGUg3GJlcnNldHp1bmcgd3VyZGUgMjAwNCwgMjAwNi0yMDExIHZvbiBIZWxnZSBLcmV1dHptYW5uCis8ZGViaWFuQGhlbGdlZmplbGwuZGU+LCAyMDA3IHZvbiBGbG9yaWFuIFJlaG5pc2NoIDxlaXhtYW5AZ214LmRlPiB1bmQKKzIwMDggdm9uIFN2ZW4gSm9hY2hpbSA8c3ZlbmpvYWNAZ214LmRlPgorYW5nZWZlcnRpZ3QuIERpZXNlINxiZXJzZXR6dW5nIGlzdCBGcmVpZSBEb2t1bWVudGF0aW9uOyBsZXNlbiBTaWUgZGllCitHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBWZXJzaW9uIDIgb2RlciBuZXVlciBm/HIgZGllIEtvcGllcmJlZGluZ3VuZ2VuLgorRXMgZ2lidCBLRUlORSBIQUZUVU5HLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vZGUvZHBrZy1kaXZlcnQuOCBiL2Rwa2ctMS4xNi4xLjEvbWFuL2RlL2Rwa2ctZGl2ZXJ0LjgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMWYxMzU0NgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL2RlL2Rwa2ctZGl2ZXJ0LjgKQEAgLTAsMCArMSwxNTQgQEAKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlRIIGRwa2dcLWRpdmVydCA4IDIwMTFcLTA4XC0xNCBEZWJpYW5cLVByb2pla3QgZHBrZ1wtSGlsZnNwcm9ncmFtbWUKKy5TSCBOQU1FCitkcGtnXC1kaXZlcnQgXC0gSGlud2Vnc2V0emVuIPxiZXIgZGllIFBha2V0dmVyc2lvbiBlaW5lciBEYXRlaQorLgorLlNIINxCRVJTSUNIVAorXGZCZHBrZ1wtZGl2ZXJ0XGZQIFtcZklPcHRpb25cZlAuLi5dIFxmSUJlZmVobFxmUAorLgorLlNIIEJFU0NIUkVJQlVORworXGZCZHBrZ1wtZGl2ZXJ0XGZQIGlzdCBlaW4gSGlsZnN3ZXJremV1ZywgdW0gZGllIExpc3RlIGRlciBVbWxlaXR1bmdlbgorZWluenVyaWNodGVuIHVuZCB6dSBha3R1YWxpc2llcmVuLgorLlBQCitEYXRlaVwtXGZJRGl2ZXJzaW9uZW5cZlAgKFVtbGVpdHVuZ2VuKSBzaW5kIGVpbmUgTfZnbGljaGtlaXQsIFxmQmRwa2dcZlAoMSkgZGF6dSB6dQorendpbmdlbiwgZWluZSBEYXRlaSBuaWNodCBhbiBpaHJlbiBTdGFuZGFyZHBsYXR6LCBzb25kZXJuIGFuIGVpbmVtCitcZkl1bWdlbGVpdGV0ZW5cZlAgT3J0IHp1IGluc3RhbGxpZXJlbi4gVW1sZWl0dW5nZW4ga/ZubmVuIGlubmVyaGFsYiBkZXIKK0RlYmlhblwtUGFrZXRza3JpcHRlIHZlcndlbmRldCB3ZXJkZW4sIHVtIGVpbmUgRGF0ZWkgYmVpc2VpdGV6dXNjaGllYmVuLCB3ZW5uCitzaWUgZWluZW4gS29uZmxpa3QgYXVzbPZzdC4gU3lzdGVtYWRtaW5pc3RyYXRvcmVuIGv2bm5lbiBzaWUgYXVjaCB2ZXJ3ZW5kZW4sCit1bSBzaWNoIPxiZXIgZGllIEtvbmZpZ3VyYXRpb25zZGF0ZWllbiBlaW5pZ2VyIFBha2V0ZSBoaW53ZWd6dXNldHplbiwgb2Rlcgord2FubiBpbW1lciBlaW5pZ2UgRGF0ZWllbiAoZGllIG5pY2h0IGFscyC7Q29uZmZpbGVzqyBtYXJraWVydCBzaW5kKSB2b24gRHBrZworZXJoYWx0ZW4gd2VyZGVuIG38c3Nlbiwgd2VubiBlaW5lIG5ldWVyZSBWZXJzaW9uIGVpbmVzIFBha2V0ZXMsIGRpZSBkaWVzZQorRGF0ZWllbiBlbnRo5Gx0LCBpbnN0YWxsaWVydCB3aXJkLgorLnNwCisuU0ggQkVGRUhMRQorLlRQIAorW1xmQlwtXC1hZGRcZlBdIFxmSURhdGVpXGZQCitG/Gd0IGVpbmUgVW1sZWl0dW5nIGb8ciBcZklEYXRlaVxmUCBoaW56dS4KKy5UUCAKK1xmQlwtXC1yZW1vdmVcZlBcZkkgRGF0ZWlcZlAKK0VudGZlcm5lIGVpbmUgVW1sZWl0dW5nIGb8ciBcZklEYXRlaVxmUC4KKy5UUCAKK1xmQlwtXC1saXN0XGZQXGZJIEdsb2JcLU11c3RlclxmUAorTGlzdGUgVW1sZWl0dW5nZW4gYXVmLCBkaWUgYXVmIFxmSUdsb2JcLU11c3RlclxmUCBwYXNzZW4uCisuVFAgCitcZkJcLVwtbGlzdHBhY2thZ2VcZlBcZkkgRGF0ZWlcZlAKK0dpYnQgZGVuIE5hbWVuIGRlcyBQYWtldHMgYXVzLCBkaWUgXGZJRGF0ZWlcZlAgdW1sZWl0ZXQuIEdpYnQgTE9DQUwgYXVzLCBmYWxscworZGllIERhdGVpIGxva2FsIHVtZ2VsZWl0ZXQgd3VyZGUgdW5kIG5pY2h0cywgZmFsbHMgXGZJRGF0ZWlcZlAgbmljaHQgdW1nZWxlaXRldAord3VyZGUuCisuVFAgCitcZkJcLVwtdHJ1ZW5hbWVcZlBcZkkgRGF0ZWlcZlAKK1plaWdlIGRlbiBlY2h0ZW4gTmFtZW4gZvxyIGVpbmUgdW1nZWxlaXRldGUgRGF0ZWkgYW4uCisuCisuU0ggT1BUSU9ORU4KKy5UUCAKK1xmQlwtXC1hZG1pbmRpclxmUFxmSSBWZXJ6ZWljaG5pc1xmUAorU2V0emUgZGFzIERwa2dcLURhdGVudmVyemVpY2huaXMgYXVmIFxmSVZlcnplaWNobmlzXGZQIChTdGFuZGFyZDoKK1xmSS92YXIvbGliL2Rwa2dcZlApLgorLlRQIAorXGZCXC1cLWRpdmVydFxmUFxmSSBVbWxlaXR6aWVsXGZQCitcZklVbWxlaXR6aWVsXGZQIGlzdCBkZXIgWmllbG9ydCwgd28gZGllIFZlcnNpb25lbiBkZXIgXGZJRGF0ZWlcZlAsIHdpZSBzaWUgdm9uCithbmRlcmVuIFBha2V0ZW4gYmVyZWl0Z2VzdGVsbHQgd2lyZCwgaGluIHVtZ2VsZWl0ZXQgd2VyZGVuLgorLlRQIAorXGZCXC1cLWxvY2FsXGZQCitHaWJ0IGFuLCBkYXNzIGFsbGUgVmVyc2lvbmVuIGRpZXNlciBEYXRlaSB1bWdlbGVpdGV0IHNpbmQuIERpZXMgYmVkZXV0ZXQsCitkYXNzIGVzIGtlaW5lIEF1c25haG1lbiBnaWJ0LCB1bmQgZWdhbCB3YXMgZvxyIGVpbiBQYWtldCBhdWNoIGluc3RhbGxpZXJ0Citpc3QsIGRpZSBEYXRlaSBpc3QgdW1nZWxlaXRldC4gRGllcyBrYW5uIHZvbSBBZG1pbmlzdHJhdG9yIHZlcndlbmRldCB3ZXJkZW4sCit1bSBlaW5lIGxva2FsIGdl5G5kZXJ0ZSBWZXJzaW9uIHp1IGluc3RhbGxpZXJlbi4KKy5UUCAKK1xmQlwtXC1wYWNrYWdlXGZQXGZJIFBha2V0XGZQCitcZklQYWtldFxmUCBpc3QgZGVyIE5hbWUgZGVzIFBha2V0cywgZGVzc2VuIEtvcGllIHZvbiBcZklEYXRlaVxmUCBuaWNodCB1bWdlbGVpdGV0Cit3aXJkLCBkLmguIFxmSURhdGVpXGZQIHdpcmQgZvxyIGFsbGUgUGFrZXRlIGF132VyIFxmSVBha2V0XGZQIHVtZ2VsZWl0ZXQuCisuVFAgCitcZkJcLVwtcXVpZXRcZlAKK1J1aGlnZXIgTW9kdXMsIGQuaC4ga2VpbmUgbGFuZ2F0bWlnZSBBdXNnYWJlLgorLlRQIAorXGZCXC1cLXJlbmFtZVxmUAorU2NoaWViZSBkaWUgRGF0ZWllbiB0YXRz5GNobGljaCBiZWlzZWl0ZSAob2RlciB6dXL8Y2spLiBcZkJkcGtnXC1kaXZlcnRcZlAgd2lyZAorZGVuIEFyYmVpdHN2b3JnYW5nIGFiYnJlY2hlbiwgZmFsbHMgZGllIFppZWxkYXRlaSBiZXJlaXRzIGV4aXN0aWVydC4KKy5UUCAKK1xmQlwtXC10ZXN0XGZQCitUZXN0bW9kdXMsIGQuaC4gZvxocmUga2VpbmUgxG5kZXJ1bmdlbiBkdXJjaCwgc29uZGVybiB6ZWlnZSBzaWUgbGVkaWdsaWNoLgorLlRQIAorXGZCXC1cLWhlbHBcZlAKK1plaWdlIGRlbiBCZWRpZW51bmdzaGlud2VpcyB1bmQgYmVlbmRlLgorLlRQIAorXGZCXC1cLXZlcnNpb25cZlAKK0dlYmUgZGllIFZlcnNpb24gYXVzIHVuZCBiZWVuZGUgc2ljaC4KKy4KKy5TSCBCRU1FUktVTkdFTgorQmVpbSBIaW56dWb8Z2VuIGlzdCBkaWUgU3RhbmRhcmRlaW5zdGVsbHVuZyBcZkJcLVwtbG9jYWxcZlAgdW5kIFxmQlwtXC1kaXZlcnRcZlAKK1xmSU9yaWdpbmFsbmFtZVxmUC5cZkJkaXN0cmliXGZQLiBCZWltIEVudGZlcm5lbiBt/HNzZW4sIGZhbGxzIGFuZ2VnZWJlbiwKK1xmQlwtXC1wYWNrYWdlXGZQIG9kZXIgXGZCXC1cLWxvY2FsXGZQIHVuZCBcZkJcLVwtZGl2ZXJ0XGZQIPxiZXJlaW5zdGltbWVuLgorCitWZXJ6ZWljaG5pc3NlIGv2bm5lbiBtaXQgXGZCZHBrZ1wtZGl2ZXJ0XGZQIG5pY2h0IHVtZ2VsZWl0ZXQgd2VyZGVuLgorCitWb3JzaWNodCBzb2xsdGUgYmVpbSBVbWxlaXRlbiB2b24gTGF1ZnplaXRcLUJpYmxpb3RoZWtlbiB3YWx0ZW4gZ2VsYXNzZW4KK3dlcmRlbiwgZGEgXGZCbGRjb25maWdcZlAoOCkgZWluZW4gc3ltYm9saXNjaGVuIExpbmssIGJhc2llcmVuZCBhdWYgZGVtIGluIGRlcgorQmlibGlvdGhlayBlaW5nZWJldHRldGVuIERUX1NPTkFNRVwtRmVsZCwgYW5sZWd0LiBEYSBsZGNvbmZpZyBrZWluZQorVW1sZWl0dW5nZW4gYW5lcmtlbm50IChudXIgRHBrZyB0dXQgZGllcyksIGthbm4gZGVyIFN5bWxpbmsgYW0gRW5kZSBhdWYgZGllCit1bWdlbGVpdGV0ZSBCaWJsaW90aGVrIHplaWdlbiwgZmFsbHMgZGllIHVtZ2VsZWl0ZXRlIEJpYmxpb3RoZWsgZGVuIGdsZWljaGVuCitTT05BTUUgd2llIGRpZSBuaWNodCB1bWdlbGVpdGV0ZSBoYXQuCisuCisuU0ggQkVJU1BJRUxFCitVbSBhbGxlIEtvcGllbiB2b24gXGZJL3Vzci9iaW4vZXhhbXBsZVxmUCBhdWYgXGZJL3Vzci9iaW4vZXhhbXBsZS5mb29cZlAKK3VtenVsZWl0ZW4sIGQuaC4gYWxsZSBQYWtldGUsIGRpZSBcZkkvdXNyL2Jpbi9leGFtcGxlXGZQIHp1ciBWZXJm/Gd1bmcgc3RlbGxlbiwKK2RhenUgYW56dWxlaXRlbiwgZGllc2UgRGF0ZWkgc3RhdHRkZXNzZW4gYWxzIFxmSS91c3IvYmluL2V4YW1wbGUuZm9vXGZQIHp1CitpbnN0YWxsaWVyZW4gdW5kIGRpZSBVbWJlbmVubnVuZywgZmFsbHMgbm90d2VuZGlnLCBkdXJjaHp1ZvxocmVuOgorLkhQCitkcGtnXC1kaXZlcnQgXC1cLWRpdmVydCAvdXNyL2Jpbi9leGFtcGxlLmZvbyBcLVwtcmVuYW1lIC91c3IvYmluL2V4YW1wbGUKKy5QUAorVW0gZGllc2UgVW1sZWl0dW5nIHp1IGVudGZlcm5lbjoKKy5IUAorZHBrZ1wtZGl2ZXJ0IFwtXC1yZW5hbWUgXC1cLXJlbW92ZSAvdXNyL2Jpbi9leGFtcGxlCisKKy5QUAorVW0gZvxyIGplZGVzIFBha2V0IFwtIGF132VyIElocmVtIGVpZ2VuZW4gXGZJd2liYmxlXGZQXC1QYWtldCBcLSwgZGFzIHZlcnN1Y2h0LAorXGZJL3Vzci9iaW4vZXhhbXBsZVxmUCB6dSBpbnN0YWxsaWVyZW4sIGRpZXNlcyBhdWYgXGZJL3Vzci9iaW4vZXhhbXBsZS5mb29cZlAKK3VtenVsZWl0ZW46CisuSFAKK2Rwa2dcLWRpdmVydCBcLVwtcGFja2FnZSB3aWJibGUgXC1cLWRpdmVydCAvdXNyL2Jpbi9leGFtcGxlLmZvbyBcLVwtcmVuYW1lCisvdXNyL2Jpbi9leGFtcGxlCisuUFAKK1VtIGRpZXNlIFVtbGVpdHVuZyB6dSBlbnRmZXJuZW46CisuSFAKK2Rwa2dcLWRpdmVydCBcLVwtcGFja2FnZSB3aWJibGUgXC1cLXJlbmFtZSBcLVwtcmVtb3ZlIC91c3IvYmluL2V4YW1wbGUKKy4KKy5TSCBVTUdFQlVORworLlRQIAorXGZCRFBLR19BRE1JTkRJUlxmUAorRmFsbHMgZ2VzZXR6dCB1bmQgZGllIE9wdGlvbiBcZkJcLVwtYWRtaW5kaXJcZlAgbmljaHQgdmVyd2FuZHQgd3VyZGUsIHdpcmQgZGllcworYWxzIERhdGVudmVyemVpY2huaXMgdm9uIERwa2cgdmVyd2FuZHQuCisuVFAgCitcZkJEUEtHX01BSU5UU0NSSVBUX1BBQ0tBR0VcZlAKK0ZhbGxzIGdlc2V0enQgdW5kIGRpZSBPcHRpb25lbiBcZkJcLVwtbG9jYWxcZlAgdW5kIFxmQlwtXC1wYWNrYWdlXGZQIG5pY2h0IHZlcndhbmR0Cit3dXJkZW4sIHdpcmQgXGZCZHBrZ1wtZGl2ZXJ0XGZQIGRpZXMgYWxzIFBha2V0bmFtZW4gdmVyd2VuZGVuLgorLgorLlNIIERBVEVJRU4KKy5UUCAKK1xmSS92YXIvbGliL2Rwa2cvZGl2ZXJzaW9uc1xmUAorRGF0ZWksIGRpZSBkaWUgYWt0dWVsbGUgTGlzdGUgdm9uIFVtbGVpdHVuZ2VuIGRlcyBTeXN0ZW1zIGVudGjkbHQuIFNpZQorYmVmaW5kZXQgc2ljaCBpbSBEcGtnXC1BZG1pbmlzdHJhdGlvbnN2ZXJ6ZWljaG5pcywgenVzYW1tZW4gbWl0IGFuZGVyZW4gZvxyCitEcGtnIHdpY2h0aWdlbiBEYXRlaWVuLCB3aWUgXGZJc3RhdHVzXGZQIG9kZXIgXGZJYXZhaWxhYmxlXGZQLgorLmJyCitIaW53ZWlzOiBcZkJkcGtnXC1kaXZlcnRcZlAgZXJo5Gx0IGRpZSBhbHRlIEtvcGllIGRpZXNlciBEYXRlaSwgbWl0IGRlciBFbmR1bmcKK1xmSVwtb2xkXGZQLCBiZXZvciBlcyBzaWUgbWl0IGRlciBuZXVlbiBlcnNldHp0LgorLgorLlNIINxCRVJTRVRaVU5HCitEaWUgZGV1dHNjaGUg3GJlcnNldHp1bmcgd3VyZGUgMjAwNCwgMjAwNi0yMDExIHZvbiBIZWxnZSBLcmV1dHptYW5uCis8ZGViaWFuQGhlbGdlZmplbGwuZGU+LCAyMDA3IHZvbiBGbG9yaWFuIFJlaG5pc2NoIDxlaXhtYW5AZ214LmRlPiB1bmQKKzIwMDggdm9uIFN2ZW4gSm9hY2hpbSA8c3ZlbmpvYWNAZ214LmRlPgorYW5nZWZlcnRpZ3QuIERpZXNlINxiZXJzZXR6dW5nIGlzdCBGcmVpZSBEb2t1bWVudGF0aW9uOyBsZXNlbiBTaWUgZGllCitHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBWZXJzaW9uIDIgb2RlciBuZXVlciBm/HIgZGllIEtvcGllcmJlZGluZ3VuZ2VuLgorRXMgZ2lidCBLRUlORSBIQUZUVU5HLgorLlNIICJTSUVIRSBBVUNIIgorXGZCZHBrZ1xmUCgxKS4KKy4KKy5TSCBBVVRPUgorQ29weXJpZ2h0IFwoY28gMTk5NSBJYW4gSmFja3NvbgorLnNwCitEaWVzIGlzdCBGcmVpZSBTb2Z0d2FyZTsgbGVzZW4gU2llIGRpZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBWZXJzaW9uIDIKK29kZXIgbmV1ZXIgZvxyIGRpZSBLb3BpZXJiZWRpbmd1bmdlbi4gRXMgZ2lidCBLRUlORSBIYWZ0dW5nLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vZGUvZHBrZy1nZW5jaGFuZ2VzLjEgYi9kcGtnLTEuMTYuMS4xL21hbi9kZS9kcGtnLWdlbmNoYW5nZXMuMQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44NDdmN2JiCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vZGUvZHBrZy1nZW5jaGFuZ2VzLjEKQEAgLTAsMCArMSwxNDAgQEAKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlRIIGRwa2dcLWdlbmNoYW5nZXMgMSAyMDExXC0wOFwtMTQgRGViaWFuXC1Qcm9qZWt0IGRwa2dcLUhpbGZzcHJvZ3JhbW1lCisuU0ggTkFNRQorZHBrZ1wtZHBrZ1wtZ2VuY2hhbmdlcyBcLSBlcnN0ZWxsZSBEZWJpYW4gLmNoYW5nZXNcLURhdGVpZW4KKy4KKy5TSCDcQkVSU0lDSFQKK1xmQmRwa2dcLWdlbmNoYW5nZXNcZlAgW1xmSU9wdGlvblxmUC4uLl0KKy5icgorLgorLlNIIEJFU0NIUkVJQlVORworXGZCZHBrZ1wtZ2VuY2hhbmdlc1xmUCBsaWVzdCBJbmZvcm1hdGlvbmVuIGF1cyBlaW5lbSBlbnRwYWNrdGVuIHVuZCBnZWJhdXRlbgorRGViaWFuXC1RdWVsbGNvZGViYXVtIHVuZCBhdXMgZGVuIGRhcmluIGVyemV1Z3RlbiBEYXRlaWVuIHVuZCBlcnpldWd0IGVpbmUKK0RlYmlhblwtU3RldWVyZGF0ZWkgZvxyIGRhcyBIb2NobGFkZW4gKGRpZSBcZkIuY2hhbmdlc1xmUFwtRGF0ZWkpLgorLgorLlNIIE9QVElPTkVOCisuVFAgCitcZkJcLWJcZlAsIFxmQlwtQlxmUCwgXGZCXC1BXGZQCitHaWJ0IGFuLCBkYXMgZWluIHJlaW5cLWJpbuRyZXIgQmF1IHN0YXR0ZmluZGV0IChrZWluZSBRdWVsbGRhdGVpZW4gc29sbGVuCitlaW5nZXNjaGxvc3NlbiB3ZXJkZW4pLiBFcyBnaWJ0IHp3aXNjaGVuIFxmQlwtYlxmUCwgXGZCXC1CXGZQIHVuZCBcZkJcLUFcZlAga2VpbmVuCitVbnRlcnNjaGllZCwgZGllIGVyc3RlbGx0ZSBEYXRlaSBcZkIuY2hhbmdlc1xmUCBiZWluaGFsdGV0IGFsbGUgRGF0ZWllbiwgZGllCit2b24gZGVuIFxmQmJpbmFyeVwtKlxmUFwtWmllbGVuIGRlciB6dSBiYXVlbmRlbiBQYWtldGUgZXJzdGVsbHQgd2VyZGVuLgorLlRQIAorXGZCXC1TXGZQCitHaWJ0IGFuLCBkYXNzIG51ciBkaWUgUXVlbGxlbiBob2NoZ2VsYWRlbiB3ZXJkZW4gc29sbGVuIChrZWluZSBCaW7kcnBha2V0ZQord2VyZGVuIGVudGhhbHRlbiBzZWluKS4KKy5QUAorRGllIFxmQlwtc1xmUFxmSXhcZlAgT3B0aW9uZW4gc3RldWVybiwgb2IgZGFzIE9yaWdpbmFsXC1RdWVsbGFyY2hpdiBkZW0gVXBsb2FkCitoaW56dWdlZvxndCB3aXJkLCBmYWxscyBkaWUgUXVlbGxlbiBlcnpldWd0IHdlcmRlbiAoZC5oLiBcZkJcLWJcZlAgb2RlciBcZkJcLUJcZlAKK25pY2h0IHZlcndlbmRldCB3dXJkZW4pLgorLlRQIAorXGZCXC1zaVxmUAorU3RhbmRhcmRt5N9pZywgb2RlciBmYWxscyBhbmdlZ2ViZW4sIHdlcmRlbiBkaWUgT3JpZ2luYWxxdWVsbGVuIG51cgoraGluenVnZWb8Z3QsIGZhbGxzIHNpY2ggZGllIFZlcnNpb25zbnVtbWVyIGRlciBPcmlnaW5hbGF1dG9yZW4gKGRpZSBWZXJzaW9uCitvaG5lIEVwb2NoZSB1bmQgb2huZSBkaWUgRGViaWFuXC1SZXZpc2lvbikgdm9uIGRlciBWZXJzaW9uc251bW1lciBkZXIKK09yaWdpbmFsYXV0b3JlbiBpbiBkZW0gbGV0enRlbiBDaGFuZ2xvZ1wtRWludHJhZyB1bnRlcnNjaGVpZGV0LgorLlRQIAorXGZCXC1zYVxmUAorRXJ6d2luZ3QgZGllIEhpbnp1bmFobWUgZGVyIE9yaWdpbmFscXVlbGxlbi4KKy5UUCAKK1xmQlwtc2RcZlAKK0Vyendpbmd0IGRlbiBBdXNzY2hsdXNzIGRlciBPcmlnaW5hbHF1ZWxsZW4gdW5kIGb8Z3QgbnVyIGRlbiBEaWZmIGhpbnp1LgorLmZpCisuVFAgCitcZkJcLXZcZlBcZklWZXJzaW9uXGZQCitEaWVzIGb8aHJ0IGRhenUsIGRhc3Mgu2NoYW5nZWxvZ6tcLUluZm9ybWF0aW9uZW4gdm9uIGFsbGVuIFZlcnNpb25lbiwgZGllCitzdHJpa3QgbmV1ZXIgYWxzIFxmSVZlcnNpb25cZlAgc2luZCwgdmVyd2VuZGV0IHdlcmRlbi4KKy5UUCAKK1xmQlwtQ1xmUFxmScRuZGVydW5nc2Jlc2NocmVpYnVuZ1xmUAorTGVzZSBkaWUgQmVzY2hyZWlidW5nIGRlciDEbmRlcnVuZ2VuIGF1cyBkZXIgRGF0ZWkgXGZJxG5kZXJ1bmdzYmVzY2hyZWlidW5nXGZQCithbnN0YXR0IGRpZSBJbmZvcm1hdGlvbmVuIGF1cyBkZW0gY2hhbmdlbG9nXC1EYXRlaSBkZXMgUXVlbGxiYXVtcyB6dQordmVyd2VuZGVuLgorLlRQIAorXGZCXC1tXGZQXGZJQmV0cmV1ZXJhZHJlc3NlXGZQCitWZXJ3ZW5kZSBcZklCZXRyZXVlcmFkcmVzc2VcZlAgYWxzIE5hbWVuIHVuZCBFXC1NYWlsXC1BZHJlc3NlIGRlcyBCZXRyZXVlcnMKK2RpZXNlcyBQYWtldGVzLCBhbnN0YXR0IGRpZSBJbmZvcm1hdGlvbmVuIGF1cyBkZXIgu2NvbnRyb2yrXC1EYXRlaSBkZXMKK1F1ZWxsYmF1bXMgenUgdmVyd2VuZGVuLgorLlRQIAorXGZCXC1lXGZQXGZJQmV0cmV1ZXJhZHJlc3NlXGZQCitWZXJ3ZW5kZSBcZklCZXRyZXVlcmFkcmVzc2VcZlAgYWxzIE5hbWVuIHVuZCBFXC1NYWlsXC1BZHJlc3NlIGRlcyBCZXRyZXVlcnMgZvxyCitkaWVzZW4gVXBsb2FkLCBhbnN0YXR0IGRpZSBJbmZvcm1hdGlvbmVuIGF1cyBkZW0gu2NoYW5nZWxvZ6sgZGVzIFF1ZWxsYmF1bXMKK3p1IHZlcndlbmRlbi4KKy5UUCAKK1xmQlwtVlxmUFxmSU5hbWVcZlBcZkI9XGZQXGZJV2VydFxmUAorU2V0enQgZWluZSBBdXNnYWJlc3Vic3RpdHV0aW9uc3ZhcmlhYmxlLiBMZXNlbiBTaWUgXGZCZGViXC1zdWJzdHZhcnNcZlAoNSkgZvxyCitlaW5lIEJlc3ByZWNodW5nIGRlcyBBdXNnYWJlc3Vic3RpdHV0aW9uLgorLlRQIAorXGZCXC1UXGZQXGZJc3Vic3R2YXJkYXRlaVxmUAorTGVzZSBkaWUgU3Vic3RpdHV0aW9uc3ZhcmlhYmxlbiBhdXMgXGZJc3Vic3R2YXJkYXRlaVxmUDsgc3RhbmRhcmRt5N9pZworXGZCZGViaWFuL3N1YnN0dmFyc1xmUC4gQmVpIGRlbiBhdXNnZWdlYmVuIEZlbGRlcm4gZXJmb2xndCBrZWluZQorVmFyaWFibGVuc3Vic3RpdHV0aW9uLCBkaWUgYmVzb25kZXJlIFZhcmlhYmxlIFxmSUZvcm1hdFxmUCB3aXJkIGFsbGVyZGluZ3MgZGFzCitGZWxkIG1pdCBkZW0gZ2xlaWNoZW4gTmFtZW4g/GJlcnNjaHJlaWJlbi4gRGllc2UgT3B0aW9uIGthbm4gbWVocmZhY2gKK3ZlcndhbmR0IHdlcmRlbiwgdW0gU3Vic3RpdHV0aW9uc3ZhcmlhYmxlbiBhdXMgbWVocmVyZW4gRGF0ZWllbiBlaW56dWxlc2VuLgorCisuVFAgCitcZkJcLURcZlBcZklGZWxkXGZQXGZCPVxmUFxmSVdlcnRcZlAKK9xiZXJzY2hyZWliZSBvZGVyIGVyZ+RuemUgZWluIEF1c2dhYmVcLVN0ZXVlcmRhdGVpXC1GZWxkLgorLlRQIAorXGZCXC1VXGZQXGZJZmllbGRcZlAKK0VudGZlcm5lIGVpbiBBdXNnYWJlXC1TdGV1ZXJkYXRlaVwtRmVsZC4KKy5UUCAKK1xmQlwtY1xmUFxmSVN0ZXVlcmRhdGVpXGZQCitHaWJ0IGRpZSBIYXVwdFwtU3RldWVyZGF0ZWkgYW4sIGF1cyBkZXIgSW5mb3JtYXRpb25lbiBnZWxlc2VuIHdlcmRlbgorc29sbGVuLiBTdGFuZGFyZG3k32lnIFxmQmRlYmlhbi9jb250cm9sXGZQLgorLlRQIAorXGZCXC1sXGZQXGZJQ2hhbmdlbG9nXC1EYXRlaVxmUAorR2lidCBkaWUgxG5kZXJ1bmdzcHJvdG9rb2xsZGF0ZWkgYW4sIGF1cyBkZXIgSW5mb3JtYXRpb25lbiBnZWxlc2VuIHdlcmRlbgorc29sbGVuLiBTdGFuZGFyZG3k32lnIFxmQmRlYmlhbi9jaGFuZ2Vsb2dcZlAuCisuVFAgCitcZkJcLWZcZlBcZklEYXRlaWVubGlzdERhdGVpXGZQCitMZXNlIGRpZSBMaXN0ZSBkZXIgaG9jaHp1bGFkZW5lbiBEYXRlaWVuIHZvbiBoaWVyLCBzdGF0dCBcZkJkZWJpYW4vZmlsZXNcZlAgenUKK3ZlcndlbmRlbi4KKy5UUCAKK1xmQlwtRlxmUFxmSUNoYW5nZWxvZ1wtRm9ybWF0XGZQCitHaWJ0IGRhcyBGb3JtYXQgZGVyIMRuZGVydW5nc3Byb3Rva29sbGRhdGVpIGFuLiBTdGFuZGFyZG3k32lnIHdpcmQgZGFzCitGb3JtYXQgYXVzIGVpbmVyIHNwZXppZWxsZW4gWmVpbGUgaW4gZGVyIE7kaGUgZGVzIEVuZGVzIGRlcgorxG5kZXJ1bmdzcHJvdG9rb2xsZGF0ZWkgZ2VsZXNlbiBvZGVyLCBmYWxscyBkaWVzIGZlaGxzY2hs5Gd0LCB3aXJkIGRhcworRGViaWFuXC1TdGFuZGFyZGZvcm1hdCBhbmdlbm9tbWVuLgorLlRQIAorXGZCXC11XGZQXGZJSG9jaGxhZGVkYXRlaXZlcnplaWNobmlzXGZQCitTdWNoZSBuYWNoIERhdGVpZW4sIGRpZSBob2NoZ2VsYWRlbiB3ZXJkZW4gc29sbGVuLCBpbgorXGZJSG9jaGxhZGVkYXRlaXZlcnplaWNobmlzXGZQIHN0YXR0IGluIFxmQi4uXGZQIChcZkJkcGtnXC1nZW5jaGFuZ2VzXGZQIG11c3MgZGllc2UKK0RhdGVpZW4gZmluZGVuLCBzbyBkYXNzIGVzIGlocmUgR3L232VuIHVuZCBQcvxmc3VtbWVuIGluIGRpZQorXCZcZkIuY2hhbmdlc1xmUFwtRGF0ZWkgYXVmbmVobWVuIGthbm4uCisuVFAgCitcZkJcLXFcZlAKK05vcm1hbGVyd2Vpc2Ugc2NocmVpYnQgXGZCZHBrZ1wtZ2VuY2hhbmdlc1xmUCBpbmZvcm1hdGl2ZSBNZWxkdW5nZW4gYXVmIGRpZQorU3RhbmRhcmRcLUZlaGxlcmF1c2dhYmUsIGJlaXNwaWVsc3dlaXNlIHdpZSB2aWVsZSBRdWVsbGRhdGVpZW4gZGVzIFBha2V0cworaG9jaGdlbGFkZW4gd2VyZGVuLiBcZkJcLXFcZlAgdW50ZXJkcvxja3QgZGllc2UgTWVsZHVuZ2VuLgorLlRQIAorXGZCXC1oXGZQLCBcZkJcLVwtaGVscFxmUAorWmVpZ2UgZGVuIEJlZGllbnVuZ3NoaW53ZWlzIHVuZCBiZWVuZGUuCisuVFAgCitcZkJcLVwtdmVyc2lvblxmUAorR2ViZSBkaWUgVmVyc2lvbiBhdXMgdW5kIGJlZW5kZSBzaWNoLgorLgorLlNIIERBVEVJRU4KKy5UUCAKK1xmQmRlYmlhbi9maWxlc1xmUAorRGllIExpc3RlIGRlciBlcnN0ZWxsdGVuIERhdGVpZW4sIGRpZSBUZWlsIGRlciB6dW0gSG9jaGxhZGVuIHZvcmJlcmVpdGV0ZW4KK0RhdGVpZW4gc2luZC4gXGZCZHBrZ1wtZ2VuY2hhbmdlc1xmUCBsaWVzdCBoaWVyIGRpZSBEYXRlbiwgd2VubiBlcyBkaWUgRGF0ZWkKK1wmXGZCLmNoYW5nZXNcZlAgZXJzdGVsbHQuCisuCisuU0ggQVVUT1JFTgorQ29weXJpZ2h0IFwoY28gMTk5NVwtMTk5NiBJYW4gSmFja3NvbgorLmJyCitDb3B5cmlnaHQgXChjbyAyMDAwIFdpY2hlcnQgQWtrZXJtYW4KKy5zcAorRGllcyBpc3QgRnJlaWUgU29mdHdhcmU7IGxlc2VuIFNpZSBkaWUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgVmVyc2lvbiAyCitvZGVyIG5ldWVyIGb8ciBkaWUgS29waWVyYmVkaW5ndW5nZW4uIEVzIGdpYnQgS0VJTkUgSGFmdHVuZy4KKy5TSCDcQkVSU0VUWlVORworRGllIGRldXRzY2hlINxiZXJzZXR6dW5nIHd1cmRlIDIwMDQsIDIwMDYtMjAxMSB2b24gSGVsZ2UgS3JldXR6bWFubgorPGRlYmlhbkBoZWxnZWZqZWxsLmRlPiwgMjAwNyB2b24gRmxvcmlhbiBSZWhuaXNjaCA8ZWl4bWFuQGdteC5kZT4gdW5kCisyMDA4IHZvbiBTdmVuIEpvYWNoaW0gPHN2ZW5qb2FjQGdteC5kZT4KK2FuZ2VmZXJ0aWd0LiBEaWVzZSDcYmVyc2V0enVuZyBpc3QgRnJlaWUgRG9rdW1lbnRhdGlvbjsgbGVzZW4gU2llIGRpZQorR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgVmVyc2lvbiAyIG9kZXIgbmV1ZXIgZvxyIGRpZSBLb3BpZXJiZWRpbmd1bmdlbi4KK0VzIGdpYnQgS0VJTkUgSEFGVFVORy4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL2RlL2Rwa2ctZ2VuY29udHJvbC4xIGIvZHBrZy0xLjE2LjEuMS9tYW4vZGUvZHBrZy1nZW5jb250cm9sLjEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTRmNDUzMQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL2RlL2Rwa2ctZ2VuY29udHJvbC4xCkBAIC0wLDAgKzEsMTQwIEBACisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkcGtnXC1nZW5jb250cm9sIDEgMjAxMVwtMDhcLTE0IERlYmlhblwtUHJvamVrdCBkcGtnXC1IaWxmc3Byb2dyYW1tZQorLlNIIE5BTUUKK2Rwa2dcLWdlbmNvbnRyb2wgXC0gZXJzdGVsbGUgRGViaWFuIGNvbnRyb2xcLURhdGVpZW4KKy4KKy5TSCDcQkVSU0lDSFQKK1xmQmRwa2dcLWdlbmNvbnRyb2xcZlAgW1xmSU9wdGlvblxmUC4uLl0KKy4KKy5TSCBCRVNDSFJFSUJVTkcKK1xmQmRwa2dcLWdlbmNvbnRyb2xcZlAgbGllc3QgSW5mb3JtYXRpb25lbiBhdXMgZWluZW0gZW50cGFja3RlbgorRGViaWFuXC1RdWVsbGNvZGViYXVtIHVuZCBlcnpldWd0IGVpbmUgYmlu5HJlIFBha2V0c3RldWVyZGF0ZWkgKHN0YW5kYXJkbeTfaWcKK2RlYmlhbi90bXAvREVCSUFOL2NvbnRyb2wpOyBkYWJlaSB2ZXJlaW5mYWNodCBlcyBkaWUgRmVsZGVyIG1pdAorUGFrZXRiZXppZWh1bmdlbi4KKy5zcAorRGFoZXIgd2VyZGVuIFxmSVByZVwtRGVwZW5kc1xmUCwgXGZJRGVwZW5kc1xmUCwgXGZJUmVjb21tZW5kc1xmUCB1bmQgXGZJU3VnZ2VzdHNcZlAgaW4KK2RpZXNlciBSZWloZW5mb2xnZSB2ZXJlaW5mYWNodCwgaW5kZW0gQWJo5G5naWdrZWl0ZW4sIGRpZSBhdWZncnVuZCBkZXIKK2pld2VpbHMgZXJtaXR0ZWx0ZW4gc3TkcmtlcmVuIEFiaORuZ2lna2VpdCBiZXJlaXRzIGVyZvxsbHQgc2luZCwgZW50ZmVybnQKK3dlcmRlbi4gRXMgd2lyZCBhdWNoIGFsbGUgU2VsYnN0YWJo5G5naWdrZWl0ZW4gZW50ZmVybmVuICh0YXRz5GNobGljaCB3ZXJkZW4KK2FsbGUgQWJo5G5naWdrZWl0ZW4gZW50ZmVybnQsIGRpZSBhdWZncnVuZCBkZXIgaW5zdGFsbGllcnRlbiBWZXJzaW9uIGRlcworYWt0dWVsbGVuIFBha2V0cyBhdXRvbWF0aXNjaCBlcmb8bGx0IHdlcmRlbikuIExvZ2lzY2ggYmV0cmFjaHRldCBiZWjkbHQgZXMKK2RlbiBEdXJjaHNjaG5pdHQgdm9uIG1laHJmYWNoZW4gQWJo5G5naWdrZWl0ZW4gYXVmIGRhcyBnbGVpY2hlIFBha2V0LiBEaWUKK1JlaWhlbmZvbGdlIGRlciBBYmjkbmdpZ2tlaXRlbiB3aXJkIHNvIGd1dCB3aWUgbfZnbGljaCBiZWliZWhhbHRlbjogZmFsbHMKK2VpbmUgQWJo5G5naWdrZWl0IGF1ZmdydW5kIGVpbmVyIHdlaXRlciBoaW50ZW4gaW0gRmVsZCBhdWZ0YXVjaGVuZGVuCit3ZWl0ZXJlbiBBYmjkbmdpZ2tlaXQgZ2VzdHJpY2hlbiB3ZXJkZW4gbXVzcywgc28g/GJlcm5pbW10IGRpZSBsZXR6dGVyZQorQWJo5G5naWdrZWl0IGRlbiBQbGF0eiBkZXIgZ2VzdHJpY2hlbmVuLgorLnNwCitEaWUgYW5kZXJlbiBQYWtldGJlemllaHVuZ3NmZWxkZXIgKFxmSUVuaGFuY2VzXGZQLCBcZklDb25mbGljdHNcZlAsIFxmSUJyZWFrc1xmUCwKK1xmSVJlcGxhY2VzXGZQIHVuZCBcZklQcm92aWRlc1xmUCkgd2VyZGVuIGF1Y2ggaW5kaXZpZHVlbGwgdmVyZWluZmFjaHQsIGluZGVtIGRpZQorVmVyZWluaWd1bmcgZGVyIHZlcnNjaGllZGVuZW4gQWJo5G5naWdrZWl0ZW4gYmVyZWNobmV0IHdpcmQsIHdlbm4gZWluIFBha2V0CittZWhyZmFjaCBpbiBkZW0gRmVsZCBhdWZnZWb8aHJ0IGlzdC4KKy5zcAorXGZCZHBrZ1wtZ2VuY29udHJvbFxmUCBm/Gd0IGF1Y2ggZWluZW4gRWludHJhZyBm/HIgZGFzIEJpbuRycGFrZXQgaW4KK1xmQmRlYmlhbi9maWxlc1xmUCBoaW56dS4KKy4KKy5TSCBPUFRJT05FTgorLlRQIAorXGZCXC12XGZQXGZJVmVyc2lvblxmUAorU2V0enQgZGllIFZlcnNpb25zbnVtbWVyIGRlcyB6dSBlcnN0ZWxsZW5kZW4gQmlu5HJwYWtldGVzLgorLlRQIAorXGZCXC1WXGZQXGZJTmFtZVxmUFxmQj1cZlBcZklXZXJ0XGZQCitTZXR6dCBlaW5lIEF1c2dhYmVzdWJzdGl0dXRpb25zdmFyaWFibGUuIExlc2VuIFNpZSBcZkJkZWJcLXN1YnN0dmFyc1xmUCg1KSBm/HIKK2VpbmUgQmVzcHJlY2h1bmcgZGVyIEF1c2dhYmVzdWJzdGl0dXRpb24uCisuVFAgCitcZkJcLVRcZlBcZklzdWJzdHZhcmRhdGVpXGZQCitMZXNlIGRpZSBTdWJzdGl0dXRpb25zdmFyaWFibGVuIGF1cyBcZklzdWJzdHZhcmRhdGVpXGZQOyBzdGFuZGFyZG3k32lnCitcZkJkZWJpYW4vc3Vic3R2YXJzXGZQLiBEaWVzZSBPcHRpb24ga2FubiBtZWhyZmFjaCB2ZXJ3YW5kdCB3ZXJkZW4sIHVtCitTdWJzdGl0dXRpb25zdmFyaWFibGVuIGF1cyBtZWhyZXJlbiBEYXRlaWVuIGVpbnp1bGVzZW4uCisuVFAgCitcZkJcLURcZlBcZklGZWxkXGZQXGZCPVxmUFxmSVdlcnRcZlAKK9xiZXJzY2hyZWliZSBvZGVyIGVyZ+RuemUgZWluIEF1c2dhYmVcLVN0ZXVlcmRhdGVpXC1GZWxkLgorLlRQIAorXGZCXC1VXGZQXGZJZmllbGRcZlAKK0VudGZlcm5lIGVpbiBBdXNnYWJlXC1TdGV1ZXJkYXRlaVwtRmVsZC4KKy5UUCAKK1xmQlwtY1xmUFxmSVN0ZXVlcmRhdGVpXGZQCitHaWJ0IGRpZSBIYXVwdFwtU3RldWVyZGF0ZWkgYW4sIGF1cyBkZXIgSW5mb3JtYXRpb25lbiBnZWxlc2VuIHdlcmRlbgorc29sbGVuLiBTdGFuZGFyZG3k32lnIFxmQmRlYmlhbi9jb250cm9sXGZQLgorLlRQIAorXGZCXC1sXGZQXGZJQ2hhbmdlbG9nXC1EYXRlaVxmUAorR2lidCBkaWUgxG5kZXJ1bmdzcHJvdG9rb2xsZGF0ZWkgYW4sIGF1cyBkZXIgSW5mb3JtYXRpb25lbiBnZWxlc2VuIHdlcmRlbgorc29sbGVuLiBTdGFuZGFyZG3k32lnIFxmQmRlYmlhbi9jaGFuZ2Vsb2dcZlAuCisuVFAgCitcZkJcLWZcZlBcZklEYXRlaWVubGlzdERhdGVpXGZQCitMZXNlIG9kZXIgc2NocmVpYmUgZGllIExpc3RlIGRlciBob2NoenVsYWRlbmVuIERhdGVpZW4gaGllcmhlciwgc3RhdHQKK1xmQmRlYmlhbi9maWxlc1xmUCB6dSB2ZXJ3ZW5kZW4uCisuVFAgCitcZkJcLUZcZlBcZklDaGFuZ2Vsb2dcLUZvcm1hdFxmUAorR2lidCBkYXMgRm9ybWF0IGRlciDEbmRlcnVuZ3Nwcm90b2tvbGxkYXRlaSBhbi4gU3RhbmRhcmRt5N9pZyB3aXJkIGRhcworRm9ybWF0IGF1cyBlaW5lciBzcGV6aWVsbGVuIFplaWxlIGluIGRlciBO5GhlIGRlcyBFbmRlcyBkZXIKK8RuZGVydW5nc3Byb3Rva29sbGRhdGVpIGdlbGVzZW4gb2RlciwgZmFsbHMgZGllcyBmZWhsc2NobORndCwgd2lyZCBkYXMKK0RlYmlhblwtU3RhbmRhcmRmb3JtYXQgYW5nZW5vbW1lbi4KKy5UUCAKK1xmQlwtcFxmUFxmSVBha2V0XGZQCitFcnN0ZWxsdCBJbmZvcm1hdGlvbmVuIGb8ciBkYXMgQmlu5HJwYWtldCBcZklQYWtldFxmUC4gRmFsbHMgZGllIFN0ZXVlcmRhdGVpCitkZXIgUXVlbGxlbiBudXIgZWluIEJpbuRycGFrZXRlIGF1Zmb8aHJ0LCBrYW5uIGRpZXNlIE9wdGlvbiB3ZWdnZWxhc3Nlbgord2VyZGVuOyBhbmRlcm5mYWxscyBpc3Qgc2llIG5vdHdlbmRpZywgdW0gZmVzdHp1bGVnZW4sIHZvbiB3ZWxjaGVuCitCaW7kcnBha2V0ZW4gZGllIEluZm9ybWF0aW9uZW4gZXJzdGVsbHQgd2VyZGVuIHNvbGxlbi4KKy5UUCAKK1xmQlwtblxmUFxmSURhdGVpbmFtZVxmUAorR2VoZSBkYXZvbiBhdXMsIGRhcyBkZXIgRGF0ZWluYW1lIGRlcyBQYWtldHMgXGZJRGF0ZWluYW1lXGZQIHNlaW4gd2lyZCwgc3RhdHQKK2RlcyBub3JtYWxlbiBEYXRlaW5hbWVucyBQYWtldF9WZXJzaW9uX0FyY2hpdGVrdHVyLmRlYi4KKy5UUCAKK1xmQlwtaXNcZlAsIFxmQlwtaXBcZlAsIFxmQlwtaXNwXGZQCitEaWVzZSBPcHRpb25lbiB3ZXJkZW4gYXVmZ3J1bmQgZGVyIEtvbXBhdGliaWxpdOR0IG1pdCDkbHRlcmVuIFZlcnNpb25lbiB2b24KK2Rwa2dcLWRldiBpZ25vcmllcnQsIHNpbmQgYWJlciBqZXR6dCB2ZXJhbHRldC4gQmlzaGVyIHd1cmRlbiBzaWUgdmVyd2VuZGV0LAordW0gZHBrZ1wtZ2VuY29udHJvbCBtaXR6dXRlaWxlbiwgZGllIEZlbGRlciC7U2VjdGlvbqsgdW5kILtQcmlvcml0easgaW4gZGllCitTdGV1ZXJkYXRlaSBtaXQgYXVmenVuZWhtZW4uIERpZXMgcGFzc2llcnQgamV0enQgc3RhbmRhcmRt5N9pZy4gRmFsbHMgU2llCitkYXMgYWx0ZSBWZXJoYWx0ZW4gZXJyZWljaGVuIG32Y2h0ZW4sIGv2bm5lbiBTaWUgZGllIE9wdGlvbiBcZkJcLVVcZlAgdmVyd2VuZGVuLAordW0gRmVsZGVyIGF1cyBkZXIgU3RldWVyZGF0ZWkgenUgZW50ZmVybmVuLgorLlRQIAorXGZCXC1QXGZQXGZJUGFrZXRiYXV2ZXJ6ZWljaG5pc1xmUAorVGVpbHQgXGZCZHBrZ1wtc291cmNlXGZQIG1pdCwgZGFzcyBkYXMgUGFrZXQgaW4gXGZJUGFrZXRiYXV2ZXJ6ZWljaG5pc1xmUCBzdGF0dCBpbgorXGZCZGViaWFuL3RtcFxmUCBnZWJhdXQgd2lyZC4gRGllc2VyIFdlcnQgd2lyZCBkYXp1IHZlcndlbmRldCwgZGVuIFN0YW5kYXJkd2VydAorZGVyIFN1YnN0aXR1dGlvbnN2YXJpYWJsZW4gXGZCSW5zdGFsbGVkXC1TaXplXGZQIHVuZCBkZXMgRmVsZGVzIGRlciBTdGV1ZXJkYXRlaQorKG1pdHRlbHMgXGZCZHVcZlApIHp1IGZpbmRlbiwgdW5kIGb8ciBkZW4gU3RhbmRhcmRcLUFibGFnZXBsYXR6IGRlcgorQXVzZ2FiZWRhdGVpLgorLlRQIAorXGZCXC1PXGZQCitHZWJlIGRpZSBTdGV1ZXJkYXRlaSBpbiBkaWUgU3RhbmRhcmRhdXNnYWJlIHN0YXR0IG5hY2gKK1xmQmRlYmlhbi90bXAvREVCSUFOL2NvbnRyb2xcZlAgKG9kZXIgXGZJUGFrZXRiYXV2ZXJ6ZWljaG5pc1xmUFxmQi9ERUJJQU4vY29udHJvbFxmUAorZmFsbHMgXGZCXC1QXGZQIHZlcndlbmRldCB3b3JkZW4gaXN0KSBhdXMuCisuVFAgCitcZkJcLWhcZlAsIFxmQlwtXC1oZWxwXGZQCitaZWlnZSBkZW4gQmVkaWVudW5nc2hpbndlaXMgdW5kIGJlZW5kZS4KKy5UUCAKK1xmQlwtXC12ZXJzaW9uXGZQCitHZWJlIGRpZSBWZXJzaW9uIGF1cyB1bmQgYmVlbmRlIHNpY2guCisuCisuU0ggREFURUlFTgorLlRQIAorXGZCZGViaWFuL2NvbnRyb2xcZlAKK0RpZSBIYXVwdFwtU3RldWVyXC1JbmZvcm1hdGlvbnNkYXRlaSBm/HIgZGllIFF1ZWxsZW4uIFNpZSBnaWJ0Cit2ZXJzaW9uc3VuYWJo5G5naWdlIEluZm9ybWF0aW9uZW4g/GJlciBkYXMgUXVlbGxwYWtldCB1bmQgZGllIEJpbuRycGFrZXRlLAorZGllIHNpZSBlcnN0ZWxsZW4ga2FubiwgYW4uCisuVFAgCitcZkJkZWJpYW4vZmlsZXNcZlAKK0RpZSBMaXN0ZSBkZXIgZXJzdGVsbHRlbiBEYXRlaWVuLCBkaWUgVGVpbCBkZXMgVXBsb2FkcyBzaW5kLCBkZXIgdm9yYmVyZWl0ZXQKK3dpcmQuIFxmQmRwa2dcLWdlbmNvbnRyb2xcZlAgZvxndCBkaWUgdmVybXV0ZXRlbiBEYXRlaW5hbWVuIHZvbiBCaW7kcnBha2V0ZW4KK2hpbnp1LCBkZXJlbiBTdGV1ZXJkYXRlaWVuIGVzIGhpZXIgZ2VuZXJpZXJ0LgorLgorLlNIIEFVVE9SRU4KK0NvcHlyaWdodCBcKGNvIDE5OTVcLTE5OTYgSWFuIEphY2tzb24KKy5icgorQ29weXJpZ2h0IFwoY28gMjAwMCBXaWNoZXJ0IEFra2VybWFuCisuYnIKK0NvcHlyaWdodCBcKGNvIDIwMDdcLTIwMDggUmFwaGFcWzplXWwgSGVydHpvZworLnNwCitEaWVzIGlzdCBGcmVpZSBTb2Z0d2FyZTsgbGVzZW4gU2llIGRpZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBWZXJzaW9uIDIKK29kZXIgbmV1ZXIgZvxyIGRpZSBLb3BpZXJiZWRpbmd1bmdlbi4gRXMgZ2lidCBLRUlORSBIYWZ0dW5nLgorLlNIINxCRVJTRVRaVU5HCitEaWUgZGV1dHNjaGUg3GJlcnNldHp1bmcgd3VyZGUgMjAwNCwgMjAwNi0yMDExIHZvbiBIZWxnZSBLcmV1dHptYW5uCis8ZGViaWFuQGhlbGdlZmplbGwuZGU+LCAyMDA3IHZvbiBGbG9yaWFuIFJlaG5pc2NoIDxlaXhtYW5AZ214LmRlPiB1bmQKKzIwMDggdm9uIFN2ZW4gSm9hY2hpbSA8c3ZlbmpvYWNAZ214LmRlPgorYW5nZWZlcnRpZ3QuIERpZXNlINxiZXJzZXR6dW5nIGlzdCBGcmVpZSBEb2t1bWVudGF0aW9uOyBsZXNlbiBTaWUgZGllCitHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBWZXJzaW9uIDIgb2RlciBuZXVlciBm/HIgZGllIEtvcGllcmJlZGluZ3VuZ2VuLgorRXMgZ2lidCBLRUlORSBIQUZUVU5HLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vZGUvZHBrZy1nZW5zeW1ib2xzLjEgYi9kcGtnLTEuMTYuMS4xL21hbi9kZS9kcGtnLWdlbnN5bWJvbHMuMQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40OTBmNjMzCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vZGUvZHBrZy1nZW5zeW1ib2xzLjEKQEAgLTAsMCArMSw1MjAgQEAKKy5cIiBBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlRIIGRwa2dcLWdlbnN5bWJvbHMgMSAyMDExXC0wOFwtMTQgRGViaWFuXC1Qcm9qZWt0IGRwa2dcLUhpbGZzcHJvZ3JhbW1lCisuU0ggTkFNRQorZHBrZ1wtZ2Vuc3ltYm9scyBcLSBlcnN0ZWxsZSBTeW1ib2xkYXRlaWVuIChBYmjkbmdpZ2tlaXRzaW5mb3JtYXRpb25lbiBm/HIKK0xhdWZ6ZWl0YmlibGlvdGhla2VuKQorLgorLlNIINxCRVJTSUNIVAorXGZCZHBrZ1wtZ2Vuc3ltYm9sc1xmUCBbXGZJT3B0aW9uXGZQLi4uXQorLgorLlNIIEJFU0NIUkVJQlVORworXGZCZHBrZ1wtZ2Vuc3ltYm9sc1xmUCBkdXJjaHN1Y2h0IGVpbmVuIHRlbXBvcuRyZW4gQmF1YmF1bSAoc3RhbmRhcmRt5N9pZworZGViaWFuL3RtcCksIHN1Y2h0IG5hY2ggQmlibGlvdGhla2VuIHVuZCBlcnN0ZWxsdCBlaW5lIERhdGVpIFxmSXN5bWJvbHNcZlAsIGRpZQorZGllc2UgYmVzY2hyZWlidC4gRGllc2UgRGF0ZWkgd2lyZCwgZmFsbHMgc2llIG5pY2h0IGxlZXIgaXN0LCBpbiBkYXMKK1VudGVydmVyemVpY2huaXMgREVCSUFOIGRlcyBCYXViYXVtcyBpbnN0YWxsaWVydCwgc28gZGFzcyBzaWUgc2NobHVzc2VuZGxpY2gKK2luIGRlciBTdGV1ZXJpbmZvcm1hdGlvbiBkZXMgUGFrZXRzIGF1ZnRhdWNodC4KKy5QCitCZWltIEVyc3RlbGxlbiBkaWVzZXIgRGF0ZWllbiB2ZXJ3ZW5kZXQgZXMgYWxzIEVpbmdhYmUgZWluaWdlIHZvbSBCZXRyZXVlcgorYmVyZWl0Z2VzdGVsbHRlIFN5bWJvbGRhdGVpZW4uIEVzIHN1Y2h0IG5hY2ggZGVuIGZvbGdlbmRlbiBEYXRlaWVuICh1bmQKK3ZlcndlbmRldCBkaWUgZXJzdGUsIGRpZSBnZWZ1bmRlbiB3aXJkKToKKy5JUCBcKGJ1IDQKK2RlYmlhbi9cZklQYWtldFxmUC5zeW1ib2xzLlxmSUFyY2hpdGVrdHVyXGZQCisuSVAgXChidSA0CitkZWJpYW4vc3ltYm9scy5cZklBcmNoaXRla3R1clxmUAorLklQIFwoYnUgNAorZGViaWFuL1xmSVBha2V0XGZQLnN5bWJvbHMKKy5JUCBcKGJ1IDQKK2RlYmlhbi9zeW1ib2xzCisuUAorRGVyIEhhdXB0endlY2sgZGllc2VyIERhdGVpZW4gYmVzdGVodCBkYXJpbiwgZGllIG1pbmltYWxlIFZlcnNpb24KK2JlcmVpdHp1c3RlbGxlbiwgZGllIG1pdCBqZWRlbSB2b24gZGVyIEJpYmxpb3RoZWsgYmVyZWl0Z2VzdGVsbHRlbiBTeW1ib2wKK3Zlcmtu/HBmdCBpc3QuIE5vcm1hbGVyd2Vpc2UgZW50c3ByaWNodCBkaWVzIGRlciBlcnN0ZW4gVmVyc2lvbiBkZXMgUGFrZXRzLAorZGllIGRpZXNlcyBTeW1ib2wgYmVyZWl0Z2VzdGVsbHQgaGF0LCBrYW5uIGFiZXIgdm9tIEJldHJldWVyIGVyaPZodCB3ZXJkZW4sCitmYWxscyBkaWUgQUJJIGRlcyBTeW1ib2xzIG9obmUgQnJlY2hlbiBkZXIgUvxja3fkcnRza29tcGF0aWJpbGl05HQgZXJ3ZWl0ZXJ0Cit3dXJkZS4gRXMgbGllZ3QgaW4gZGVyIFZlcndhbnR3b3J0dW5nIGRlcyBCZXRyZXVlcnMsIGRpZXNlIERhdGVpZW4gYWt0dWVsbAorenUgaGFsdGVuLCBhYmVyIFxmQmRwa2dcLWdlbnN5bWJvbHNcZlAgaGlsZnQgaWhtLgorLlAKK1dlbm4gZGllIGVyc3RlbGx0ZW4gU3ltYm9sZGF0ZWllbiBzaWNoIHZvbiBkZW5lbiwgZGllIGRlciBCZXRyZXVlcgorYmVyZWl0Z2VzdGVsbHQgaGF0LCB1bnRlcnNjaGVpZGVuLCB3aXJkIFxmQmRwa2dcLWdlbnN5bWJvbHNcZlAgZWluIERpZmYgendpc2NoZW4KK2RlbiB6d2VpIFZlcnNpb25lbiBhbnplaWdlbi4gRmFsbHMgZGllIFVudGVyc2NoaWVkZSBkZXN3ZWl0ZXJlbiB6dQorZ3JhdmllcmVuZCBzaW5kLCB3aXJkIGVzIHNvZ2FyIGZlaGxzY2hsYWdlbiAoU2llIGv2bm5lbiBlaW5zdGVsbGVuLCB3aWUKK2dyb99lIFVudGVyc2NoaWVkZSBTaWUgdG9sZXJpZXJlbiBr9m5uZW4sIHNlaGVuIFNpZSBoaWVyenUgZGllIE9wdGlvbgorXGZCXC1jXGZQKS4KKy5TSCAiU1lNQk9MREFURUlFTiBQRkxFR0VOIgorRGllIFN5bWJvbGRhdGVpZW4gc2luZCBudXIgd2lya2xpY2ggbvx0emxpY2gsIGZhbGxzIHNpZSBkaWUgRW50d2lja2x1bmcKK2VpbmVzIFBha2V0ZXMg/GJlciBtZWhyZXJlIFZlcvZmZmVudGxpY2h1bmdlbiBoaW53ZWcgd2llZGVyZ2ViZW4uIERhaGVyIG11c3MKK2RlciBCZXRyZXVlciBzaWUgaW1tZXIgYWt0dWFsaXNpZXJlbiwgd2VubiBlaW5lIG5ldWVzIFN5bWJvbCBoaW56dWdlZvxndAord2lyZCwgc28gZGFzcyBkaWUgenVnZW9yZG5ldGUgbWluaW1hbGUgVmVyc2lvbiBkZXIgUmVhbGl05HQgZW50c3ByaWNodC4gVW0KK2RpZXMgdmVybvxuZnRpZyBkdXJjaHp1ZvxocmVuLCBrYW5uIGVyIERpZmZzIGF1cyBkZW4gQmF1cHJvdG9rb2xsZQordmVyd2VuZGVuLiBNZWlzdGVucyBrYW5uIGRlciBEaWZmIGRpcmVrdCBhdWYgZGllIERhdGVpCitkZWJpYW4vXGZJUGFrZXRcZlAuc3ltYm9scyBhbmdld2FuZHQgd2VyZGVuLiBBbGxlcmRpbmdzIHdlcmRlbiBub3JtYWxlcndlaXNlCit3ZWl0ZXJlIEFucGFzc3VuZ2VuIG5vdHdlbmRpZzogZXMgd2lyZCBiZWlzcGllbHN3ZWlzZSBlbXBmb2hsZW4sIGRpZQorRGViaWFuXC1SZXZpc2lvbiB2b24gZGVyIG1pbmltYWxlbiBWZXJzaW9uIHp1IGVudGZlcm5lbiwgc28gZGFzcyBCYWNrcG9ydHMKK21pdCBlaW5lciBuaWVkcmlnZXJlbiBWZXJzaW9uc251bW1lciBhYmVyIGRlciBnbGVpY2hlbiBWZXJzaW9uIGRlcgorT3JpZ2luYWxhdXRvcmVuIGltbWVyIG5vY2ggZGllIGVyc3RlbGx0ZW4gQWJo5G5naWdrZWl0ZW4gZXJm/GxsZW4uIEZhbGxzIGRpZQorRGViaWFuXC1SZXZpc2lvbiBuaWNodCBlbnRmZXJudCB3ZXJkZW4ga2FubiwgZGEgZGFzIFN5bWJvbCB3aXJrbGljaCB2b24gZGVyCitEZWJpYW5cLXNwZXppZmlzY2hlbiDEbmRlcnVuZyBoaW56dWdlZvxndCB3dXJkZSwgZGFubiBzb2xsdGUgZGVyIFZlcnNpb24gu36rCithbmdlaORuZ3Qgd2VyZGVuLgorLlAKK0Jldm9yIGlyZ2VuZGVpbiBQYXRjaCBhdWYgZGllIFN5bWJvbGRhdGVpIGFuZ2V3ZW5kZXQgd2lyZCwgc29sbHRlIGRlcgorQmV0cmV1ZXIgendlaW1hbCBwcvxmZW4sIGRhc3MgZGVyIFBhdGNoIHZlcm78bmZ0aWcgaXN0LiDWZmZlbnRsaWNoZSBTeW1ib2xlCitzb2xsdGVuIG5pY2h0IHZlcnNjaHdpbmRlbiwgZGFoZXIgc29sbHRlIGRlciBQYXRjaCBpZGVhbGVyd2Vpc2UgbnVyIG5ldWUKK1plaWxlbiBoaW56dWb8Z2VuLgorLlAKK0JlYWNodGVuIFNpZSwgZGFzcyBTaWUgaW4gU3ltYm9sZGF0ZWllbiBLb21tZW50YXJlIGVpbmb8Z2VuIGv2bm5lbjogamVkZQorWmVpbGUsIGRpZSBtaXQguyOrIGFscyBlcnN0ZW4gWmVpY2hlbiBiZWdpbm50LCBpc3QgZWluIEtvbW1lbnRhcmUsIGZhbGxzIHNpZQorbmljaHQgbWl0ILsjaW5jbHVkZasgYmVnaW5udCAoc2llaGUgQWJzY2huaXR0IFxmQkluY2x1ZGVzCit2ZXJ3ZW5kZW5cZlApLiBaZWlsZW4sIGRpZSBtaXQguyNNSVNTSU5HOqsgYW5mYW5nZW4sIHNpbmQgYmVzb25kZXJlCitLb21tZW50YXJlLCBkaWUgdmVyc2Nod3VuZGVuZSBTeW1ib2xlIGRva3VtZW50aWVyZW4uCisuU1MgIlZlcndlbmR1bmcgZGVyICNQQUNLQUdFI1wtRXJzZXR6dW5nIgorLlAKK0luIGVpbmlnZW4gc2VsdGVuZW4gRuRsbGVuIHVudGVyc2NoZWlkZXQgc2ljaCBkZXIgTmFtZSBkZXIgQmlibGlvdGhlayBhdWYKK3ZlcnNjaGllZGVuZW4gQXJjaGl0ZWt0dXJlbi4gVW0genUgdmVybWVpZGVuLCBkYXNzIGRlciBQYWtldG5hbWUgaW4gZGVyCitTeW1ib2xkYXRlaSBmZXN0IGtvZGllcnQgd2lyZCwga/ZubmVuIFNpZSBkaWUgTWFya2llcnVuZyBcZkkjUEFDS0FHRSNcZlAKK3ZlcndlbmRlbi4gV+RocmVuZCBkZXIgSW5zdGFsbGF0aW9uIGRlciBTeW1ib2xkYXRlaSB3aXJkIHNpZSBkdXJjaCBkZW4KK2VjaHRlbiBQYWtldG5hbWVuIGVyc2V0enQuIEFuZGVycyBhbHMgZGllIE1hcmtpZXJ1bmcgXGZJI01JTlZFUiNcZlAgd2lyZAorXGZJI1BBQ0tBR0UjXGZQIG5pZSBpbiBkZXIgU3ltYm9sZGF0ZWkgaW5uZXJoYWxiIGVpbmVzIEJpbuRycGFrZXRzIGF1ZnRhdWNoZW4uCisuU1MgIlZlcndlbmR1bmcgdm9uIFN5bWJvbGtlbm56ZWljaG51bmdlbiIKKy5QCitTeW1ib2xrZW5uemVpY2hudW5nZW4gc2luZCBu/HR6bGljaCwgdW0gU3ltYm9sZSB6dSBtYXJraWVyZW4sIGRpZSBpbgoraXJnZW5kZWluZXIgV2Vpc2UgYmVzb25kZXJzIHNpbmQuIEplZGVzIFN5bWJvbCBrYW5uIGVpbmUgYmVsaWViaWdlIEFuemFobAorenVnZW9yZG5ldGVyIEtlbm56ZWljaG51bmdlbiBiZXNpdHplbi4gV+RocmVuZCBhbGxlIEtlbm56ZWljaG51bmdlbgorYXVzZ2V3ZXJ0ZXQgdW5kIGdlc3BlaWNoZXJ0IHdlcmRlbiwgd2VyZGVuIG51ciBlaW5pZ2Ugdm9uIFxmQmRwa2dcLWdlbnN5bWJvbHNcZlAKK3ZlcnN0YW5kZW4gdW5kIGz2c2VuIGVpbmUgU3BlemlhbGJlaGFuZGx1bmcgZGVyIFN5bWJvbGUgYXVzLiBMZXNlbiBTaWUgZGVuCitVbnRlcmFic2Nobml0IFxmQlN0YW5kYXJkc3ltYm9sa2VubnplaWNobnVuZ2VuXGZQIGb8ciBlaW5lIFJlZmVyZW56IGRpZXNlcgorS2VubnplaWNobnVuZ2VuLgorLlAKK0tlbm56ZWljaG51bmdzc3BlemlmaWthdGlvbmVuIGtvbW1lbiBkaXJla3Qgdm9yIGRlbSBTeW1ib2xuYW1lbiAoZGF6d2lzY2hlbgorc2luZCBrZWluZSBMZWVyemVpY2hlbiBlcmxhdWJ0KS4gU2llIGJlZ2lubmVuIGltbWVyIG1pdCBlaW5lciD2ZmZuZW5kZW4KK0tsYW1tZXIgXGZCKFxmUCwgZW5kZW4gbWl0IGVpbmVyIHNjaGxpZd9lbmRlbiBLbGFtbWVyIFxmQilcZlAgdW5kIG38c3NlbgorbWluZGVzdGVucyBlaW5lIEtlbm56ZWljaG51bmcgZW50aGFsdGVuLiBNZWhyZXJlIEtlbm56ZWljaG51bmdlbiB3ZXJkZW4KK2R1cmNoIGRhcyBaZWljaGVuIFxmQnxcZlAgZ2V0cmVubnQuIEplZGUgS2VubnplaWNobnVuZ2VuIGthbm4gb3B0aW9uYWwgZWluZW4KK1dlcnQgZW50aGFsdGVuLCBkZXIgdm9uIGRlciBLZW5uemVpY2hudW5nIGR1cmNoIGRhcyBaZWljaGVuIFxmQj1cZlAgZ2V0cmVubnQKK3dpcmQuIEtlbm56ZWljaGVubmFtZW4gdW5kIFwtd2VydGUga/ZubmVuIGJlbGllYmlnZSBaZWljaGVua2V0dGVuIHNlaW4sIHNpZQorZPxyZmVuIGFsbGVyZGluZ3Mga2VpbmUgZGVyIGRlciBiZXNvbmRlcmVuIFplaWNoZW4gXGZCKVxmUCBcZkJ8XGZQIFxmQj1cZlAKK2VudGhhbHRlbi4gU3ltYm9sbmFtZW4sIGRpZSBlaW5lciBLZW5uemVpY2hudW5nc3NwZXppZmlrYXRpb24gZm9sZ2VuLCBr9m5uZW4KK29wdGlvbmFsIG1pdCBkZW4gWmVpY2hlbiBcZkInXGZQIG9kZXIgXGZCIlxmUCB6aXRpZXJ0IHdlcmRlbiwgdW0gTGVlcnplaWNoZW4gZGFyaW4KK3p1IGVybGF1YmVuLiBGYWxscyBrZWluZSBLZW5uemVpY2hudW5nZW4gZvxyIGRhcyBTeW1ib2wgc3BlemlmaXppZXJ0IHNpbmQsCit3ZXJkZW4gWml0YXR6ZWljaGVuIGFscyBUZWlsIGRlcyBTeW1ib2xuYW1lbnMgYmVoYW5kZWx0LCBkZXIgYmlzIHp1bSBlcnN0ZW4KK0xlZXJ6ZWljaGVuIGdlaHQuCisuUAorIChLZW5uejE9YmluIG1hcmtpZXJ0fE5hbWUgbWl0IExlZXJyYXVtKSJ6aXRpZXJ0ZXMgZ2VrZW5ueiBTeW1ib2wiQEJhc2UgMS4wCisgKG9wdGlvbmFsKWdla2VubnplaWNobmV0X3Vueml0aWVydGVzX1N5bWJvbEBCYXNlIDEuMCAxCisgdW5nZWtlbm56ZWljaG5ldGVzX1N5bWJvbEBCYXNlIDEuMAorLlAKK0RhcyBlcnN0ZSBTeW1ib2wgaW0gQmVpc3BpZWwgaGVp33QgXGZJeml0aWVydGVzIGdla2VubnogU3ltYm9sXGZQIHVuZCBoYXQgendlaQorS2VubnplaWNobnVuZ2VuOiBcZklLZW5uejFcZlAgbWl0IGRlbSBXZXJ0IFxmSWJpbiBtYXJraWVydFxmUCB1bmQgXGZJTmFtZSBtaXQKK0xlZXJyYXVtXGZQIG9obmUgV2VydC4gRGFzIHp3ZWl0ZSBTeW1ib2wgaGVp33QKK1xmSWdla2VubnplaWNobmV0X3Vueml0aWVydGVzX1N5bWJvbFxmUCB1bmQgaXN0IG51ciBtaXQgZGVtIEtlbm56ZWljaGVuIG5hbWVucworXGZJb3B0aW9uYWxcZlAgZ2VrZW5uemVpY2huZXQuIERhcyBsZXR6dGUgU3ltYm9sIGlzdCBlaW4gQmVpc3BpZWwgZWluZXMKK25vcm1hbGVuLCBuaWNodCBnZWtlbm56ZWljaG5ldGVuIFN5bWJvbHMuCisuUAorRGEgU3ltYm9sa2VubnplaWNobnVuZ2VuIGVpbmUgRXJ3ZWl0ZXJ1bmcgZGVzIEZvcm1hdHMgXGZJZGViXC1zeW1ib2xzKDUpXGZQCitzaW5kLCBr9m5uZW4gc2llIG51ciBUZWlsIGRlciBpbiBRdWVsbHBha2V0ZW4gdmVyd2FuZHRlbiBTeW1ib2xkYXRlaWVuIHNlaW4KKyhkaWVzZSBEYXRlaWVuIHNvbGx0ZW4gZGFubiBhbHMgVm9ybGFnZW4genVtIEJhdSBkZXIgU3ltYm9sZGF0ZWllbiwgZGllIGluCitCaW7kcnBha2V0ZSBlaW5nZWJldHRldCB3ZXJkZW4sIGdlc2VoZW4gd2VyZGVuKS4gV2VubiBcZkJkcGtnXC1nZW5zeW1ib2xzXGZQCitvaG5lIGRpZSBPcHRpb24gXGZJXC10XGZQIGF1ZmdlcnVmZW4gd2lyZCwgd2lyZCBlcyBhbGxlIFN5bWJvbGUgYXVzZ2ViZW4sIGRpZQorenVtIEZvcm1hdCBcZklkZWJcLXN5bWJvbHMoNSlcZlAga29tcGF0aWJlbCBzaW5kOiBFcyB2ZXJhcmJlaXRldCBkaWUgU3ltYm9sZQorZW50c3ByZWNoZW5kIGRlciBBbmZvcmRlcnVuZ2VuIGlocmVyIFN0YW5kYXJka2VubnplaWNobnVuZ2VuIHVuZCBlbnRmZXJudAorYWxsZSBLZW5uemVpY2hudW5nZW4gYXVzIGRlciBBdXNnYWJlLiBJbSBHZWdlbnNhdHogZGF6dSB3ZXJkZW4gYWxsZSBTeW1ib2xlCit1bmQgaWhyZSBLZW5uemVpY2hudW5nZW4gKHNvd29obCBkaWUgU3RhbmRhcmRrZW5uemVpY2hudW5nZW4gYWxzIGF1Y2ggZGllCit1bmJla2FubnRlbikgaW0gVm9ybGFnZW5tb2R1cyAoXGZJXC10XGZQKSBpbiBkZXIgQXVzZ2FiZSBiZWliZWhhbHRlbiB1bmQgaW4KK2locmVyIE9yaWdpbmFsZm9ybSB3aWUgc2llIGdlbGFkZW4gd3VyZGVuIGF1Y2ggZ2VzY2hyaWViZW4uCisuU1MgU3RhbmRhcmRcLVN5bWJvbGtlbm56ZWljaG51bmdlbgorLlRQIAorXGZCb3B0aW9uYWxcZlAKK0VpbiBhbHMgu29wdGlvbmFsqyBnZWtlbm56ZWljaG5ldGVzIFN5bWJvbCBrYW5uIGplZGVyemVpdCB2b24gZGVyIEJpYmxpb3RoZWsKK3ZlcnNjaHdpbmRlbiB1bmQgd2lyZCBuaWUgenVtIEZlaGxzY2hsYWcgdm9uIFxmQmRwa2dcLWdlbnN5bWJvbHNcZlAKK2b8aHJlbi4gVmVyc2Nod3VuZGVuZSBvcHRpb25hbGUgU3ltYm9sZSB3ZXJkZW4ga29udGludWllcmxpY2ggYWxzIE1JU1NJTkcKKyhGZWhsZW5kKSBpbiBkZW0gRGlmZiBpbiBqZWRlciBuZXVlbiBQYWtldHZlcnNpb24gYXVmdGF1Y2hlbi4gRGllc2VzCitWZXJoYWx0ZW4gZGllbnQgYWxzIEVyaW5uZXJ1bmcgZvxyIGRlbiBCZXRyZXVlciwgZGFzcyBzbyBlaW4gU3ltYm9sIGF1cyBkZXIKK1N5bWJvbGRhdGVpIGVudGZlcm50IG9kZXIgd2llZGVyIGRlciBCaWJsaW90aGVrIGhpbnp1Z2Vm/Gd0IHdlcmRlbgorbXVzcy4gV2VubiBkYXMgb3B0aW9uYWxlIFN5bWJvbCwgZGFzcyBiaXNoZXIgYWxzIE1JU1NJTkcgYmV6ZWljaG5ldCBnZXdlc2VuCit3YXIsIHBs9nR6bGljaCBpbiBkZXIgbuRjaHN0ZW4gVmVyc2lvbiB3aWVkZXIgYXVmdGF1Y2h0LCB3aXJkIGVzIHdpZWRlciBhdWYKK2RlbiBTdGF0dXMgu2V4aXN0aW5nqyAoZXhpc3RpZXJlbmQpIGdlYnJhY2h0LCB3b2JlaSBkaWUgbWluaW1hbGUgVmVyc2lvbgordW52ZXLkbmRlcnQgYmxlaWJ0LgorCitEaWVzZSBNYXJraWVydW5nIGlzdCBm/HIgcHJpdmF0ZSBTeW1ib2xlIG78dHpsaWNoLCBkZXJlbiBWZXJzY2h3aW5kZW4ga2VpbmVuCitBQklcLUJydWNoIGF1c2z2c3QuIEJlaXNwaWVsc3dlaXNlIGZhbGxlbiBkaWUgbWVpc3RlbgorQysrXC1UZW1wbGF0ZVwtSW5zdGFuemlpZXJ1bmdlbiBpbiBkaWVzZSBLYXRlZ29yaWUuIFdpZSBqZWRlIGFuZGVyZSBNYXJraWVydW5nCitrYW5uIGF1Y2ggZGllc2UgZWluZW4gYmVsaWViaWdlbiBXZXJ0IGhhYmVuOiBzaWUga/ZubnRlIGFuZ2ViZW4sIHdhcnVtCitkaWVzZXMgU3ltYm9sIGFscyBvcHRpb25hbCBiZXRyYWNodGV0IHdpcmQuCisuVFAgCitcZkJhcmNoPVxmUFxmSUFyY2hpdGVrdHVybGlzdGVcZlAKK0RpZSBNYXJraWVydW5nIGVybGF1YnQgZXMsIGRlbiBTYXR6IGFuIEFyY2hpdGVrdHVyZW4gZWluenVncmVuemVuLCBhdWYgZGVuZW4KK2RhcyBTeW1ib2wgZXhpc3RpZXJlbiBzb2xsdGUuIFdlbm4gZGllIFN5bWJvbGxpc3RlIG1pdCBkZW4gaW4gZGVyIEJpYmxpb3RoZWsKK2VudGRlY2t0ZW4gU3ltYm9sZW4gYWt0dWFsaXNpZXJ0IHdpcmQsIHdlcmRlbiBhbGxlIGFyY2hpdGVrdHVyc3BlemlmaXNjaGVuCitTeW1ib2xlLCBkaWUgbmljaHQgYXVmIGRpZSBha3R1ZWxsZSBIb3N0XC1BcmNoaXRla3R1ciBwYXNzZW4sIHNvIGJlaGFuZGVsdCwKK2FscyBvYiBzaWUgbmljaHQgZXhpc3RpZXJ0ZW4uIEZhbGxzIGVpbiBhcmNoaXRla3R1cnNwZXppZmlzY2hlcyBTeW1ib2wsIGRhcworYXVmIGRpZSBha3R1ZWxsZSBIb3N0XC1BcmNoaXRla3R1ciBwYXNzdCwgaW4gZGVyIEJpYmxpb3RoZWsgbmljaHQgZXhpc3RpZXJ0LAord2VyZGVuIGRpZSBub3JtYWxlbiBSZWdlbG4gZvxyIGZlaGxlbmRlIFN5bWJvbGUgYW5nZXdhbmR0IHVuZAorXGZCZHBrZ1wtZ2Vuc3ltYm9sc1xmUCBr9m5udGUgZGFkdXJjaCBmZWhsc2NobGFnZW4uIEF1ZiBkZXIgYW5kZXJlbiBTZWl0ZSwgZmFsbHMKK2RhcyBhcmNoaXRla3R1cnNwZXppZmlzY2hlIFN5bWJvbCBnZWZ1bmRlbiB3dXJkZSwgd2VubiBlcyBuaWNodCBleGlzdGllcmVuCitzb2xsdGUgKGRhIGRpZSBha3R1ZWxsZSBIb3N0XC1BcmNoaXRla3R1ciBuaWNodCBpbiBkZXIgTWFya2llcnVuZyBhdWZnZWb8aHJ0Citpc3QpLCB3aXJkIHNpZSBhcmNoaXRla3R1cm5ldXRyYWwgZ2VtYWNodCAoZC5oLiBkaWUgQXJjaGl0ZWt0dXJtYXJraWVydW5nCit3aXJkIGVudGZlcm50IHVuZCBkYXMgU3ltYm9sIHdpcmQgaW0gRGlmZiBhdWZncnVuZCBkaWVzZXIgxG5kZXJ1bmcKK2F1ZnRhdWNoZW4pLCBhYmVyIGVzIHdpcmQgbmljaHQgYWxzIG5ldSBiZXRyYWNodGV0LgorCitCZWltIEJldHJpZWIgaW0gc3RhbmRhcmRt5N9pZ2VuIG5pY2h0XC1Wb3JsYWdlblwtTW9kdXMgd2VyZGVuIHVudGVyIGRlbgorYXJjaGl0ZWt0dXJzcGV6aWZpc2NoZW4gU3ltYm9sZW4gbnVyIGRpZSBpbiBkaWUgU3ltYm9sZGF0ZWkgZ2VzY2hyaWViZW4sIGRpZQorYXVmIGRpZSBha3R1ZWxsZSBIb3N0XC1BcmNoaXRla3R1ciBwYXNzZW4uIEF1ZiBkZXIgYW5kZXJlbiBTZWl0ZSB3ZXJkZW4gYmVpbQorQmV0cmllYiBpbSBWb3JsYWdlbm1vZHVzIGFsbGUgYXJjaGl0ZWt0dXJzcGV6aWZpc2NoZW4gU3ltYm9sZSAoZGFydW50ZXIgYXVjaAorZGllIHZvbiBmcmVtZGVuIEFyY2hpdGVrdHVyZW4pIGltbWVyIGluIGRpZSBTeW1ib2xkYXRlaSBnZXNjaHJpZWJlbi4KKworRGFzIEZvcm1hdCBkZXIgXGZJQXJjaGl0ZWt0dXJsaXN0ZVxmUCBpc3QgZGFzIGdsZWljaGUgd2llIGRhcyBkZXMgRmVsZGVzCitcZklCdWlsZFwtRGVwZW5kc1xmUCBpbiBcZklkZWJpYW4vY29udHJvbFxmUCAoYXXfZXIgZGVuIGVpbnNjaGxpZd9lbmRlbiBlY2tpZ2VuCitLbGFtbWVybiBbXSkuIEJlaXNwaWVsc3dlaXNlIHdpcmQgZGFzIGVyc3RlIFN5bWJvbCBhdXMgZGVyIGZvbGdlbmRlbiBMaXN0ZQorbnVyIGF1ZiBkZW4gQXJjaGl0ZWt0dXJlbiBBbHBoYSwgQW1kNjQsIGtGcmVlYnNkXC1hbWQ2NCB1bmQgSWE2NCBiZXRyYWNodGV0LAord+RocmVuZCBkYXMgendlaXRlIPxiZXJhbGwgYXXfZXIgYXVmIEFybWVsIGJldHJhY2h0ZXQgd2lyZC4KKworIChhcmNoPWFscGhhIGFtZDY0IGtmcmVlYnNkXC1hbWQ2NCBpYTY0KWVpbl82NGJpdF9zcGV6aWZpc2NoZXNfU3ltYm9sQEJhc2UgMS4wCisgKGFyY2g9IWFybWVsKVN5bWJvbF9oYXRfQXJtZWxfbmljaHRAQmFzZSAxLjAKKy5UUCAKK1xmQmlnbm9yZVwtYmxhY2tsaXN0XGZQCitkcGtnXC1nZW5zeW1ib2xzIHZlcmb8Z3Qg/GJlciBlaW5lIGludGVybmUgQXVzc2Nodd9saXN0ZSAou2JsYWNrbGlzdKspIHZvbgorU3ltYm9sZW4sIGRpZSBuaWNodCBpbiBTeW1ib2xkYXRlaWVuIGF1ZnRhdWNoZW4gc29sbHRlbiwgZGEgc2llCitub3JtYWxlcndlaXNlIG51ciBTZWl0ZW5lZmZla3RlIHZvbiBJbXBsZW1lbnRpZXJ1bmdzZGV0YWlscyBpbiBkZXIKK1dlcmt6ZXVna2V0dGUgZGFyc3RlbGxlbi4gRmFsbHMgU2llIGF1cyBpcmdlbmRlaW5lbSBHcnVuZCB3b2xsZW4sIGRhc3MgZGllc2UKK1N5bWJvbGUgaW4gZGVyIFN5bWJvbGRhdGVpIGF1Zmdlbm9tbWVuIHdlcmRlbiwgc29sbHRlbiBTaWUgZGFzIFN5bWJvbCBtaXQKK1xmQmlnbm9yZVwtYmxhY2tsaXN0XGZQIGtlbm56ZWljaG5lbi4gRGllcyBrYW5uIGb8ciBlaW5pZ2UgZ3J1bmRsZWdlbmRlCitCaWJsaW90aGVrZW4gZGVyIFdlcmt6ZXVna2V0dGUgd2llIGxpYmdjYyBub3R3ZW5kaWcgc2Vpbi4KKy5UUCAKK1xmQmMrK1xmUAorR2lidCBcZkljKytcZlBcLVN5bWJvbG11c3RlciBhbi4gTGVzZW4gU2llIGRlbiBVbnRlcmFic2Nobml0dCBcZkJWZXJ3ZW5kdW5nIHZvbgorU3ltYm9sbXVzdGVyXGZQIHVudGVuLgorLlRQIAorXGZCc3ltdmVyXGZQCitHaWJ0IFxmSXN5bXZlclxmUCAoU3ltYm9sdmVyc2lvbilcLVN5bWJvbG11c3RlciBhbi4gTGVzZW4gU2llIGRlbiBVbnRlcmFic2Nobml0dAorXGZCVmVyd2VuZHVuZyB2b24gU3ltYm9sbXVzdGVyXGZQIHVudGVuLgorLlRQIAorXGZCcmVnZXhcZlAKK0dpYnQgXGZJcmVnZXhcZlBcLVN5bWJvbG11c3RlciBhbi4gTGVzZW4gU2llIGRlbiBVbnRlcmFic2Nobml0dCBcZkJWZXJ3ZW5kdW5nIHZvbgorU3ltYm9sbXVzdGVyXGZQIHVudGVuLgorLlNTICJWZXJ3ZW5kdW5nIHZvbiBTeW1ib2xtdXN0ZXJuIgorLlAKK0FuZGVycyBhbHMgZGllIFN0YW5kYXJkc3ltYm9sc3BlemlmaWthdGlvbiBrYW5uIGVpbiBNdXN0ZXIgbWVocmVyZSByZWFsZQorU3ltYm9sZSBhdXMgZGVyIEJpYmxpb3RoZWsgYWJkZWNrZW4uIFxmQmRwa2dcLWdlbnN5bWJvbHNcZlAgd2lyZCB2ZXJzdWNoZW4sCitqZWRlcyBNdXN0ZXIgYXVmIGplZGVzIHJlYWxlIFN5bWJvbCwgZvxyIGRhcyBcZklrZWluXGZQIHNwZXppZmlzY2hlcworU3ltYm9sZ2VnZW5zdPxjayBpbiBkZXIgU3ltYm9sZGF0ZWkgZGVmaW5pZXJ0IGlzdCwgenUgcGFzc2VuLiBXYW5uIGltbWVyIGRhcworZXJzdGUgcGFzc2VuZGUgTXVzdGVyIGdlZnVuZGVuIHd1cmRlLCB3ZXJkZW4gYWxsZSBLZW5uemVpY2hudW5nZW4gdW5kCitFaWdlbnNjaGFmdGVuIGFscyBCYXNpc3NwZXppZmlrYXRpb24gZGVzIFN5bWJvbHMgdmVyd2FuZHQuIEZhbGxzIGtlaW5lcyBkZXIKK011c3RlciBwYXNzdCwgd2lyZCBkYXMgU3ltYm9sIGFscyBuZXUgYmV0cmFjaHRldC4KKworRWluIE11c3RlciB3aXJkIGFscyB2ZXJsb3JlbiBiZXRyYWNodGV0LCBmYWxscyBlcyBhdWYga2VpbiBTeW1ib2wgaW4gZGVyCitCaWJsaW90aGVrIHBhc3N0LiBTdGFuZGFyZG3k32lnIHdpcmQgZGllcyBlaW4gVmVyc2FnZW4gdm9uCitcZkJkcGtnXC1nZW5zeW1ib2xzXGZQIGluIGRlciBTdHVmZSBcZklcLWMxXGZQIG9kZXIgaPZoZXIgYXVzbPZzZW4uIEZhbGxzIGRlcgorRmVobHNjaGxhZyBhbGxlcmRpbmdzIHVuZXJ3/G5zY2h0IGlzdCwga2FubiBkYXMgTXVzdGVyIG1pdCBkZXIgS2VubnplaWNobnVuZworXGZJb3B0aW9uYWxcZlAgbWFya2llcnQgd2VyZGVuLiBGYWxscyBkYXMgTXVzdGVyIGRhbm4gYXVmIG5pY2h0cyBwYXNzdCB3aXJkIGVzCitpbSBEaWZmIG51ciBhbHMgTUlTU0lORyAoZmVobGVuZCkgYXVmdGF1Y2hlbi4gRGVzd2VpdGVyZW4ga2FubiBkYXMgTXVzdGVyCit3aWUgamVkZXMgU3ltYm9sIGF1ZiBkaWUgc3BlemllbGxlIEFyY2hpdGVrdHVyIG1pdCBkZXIgS2VubnplaWNobnVuZyBcZklhcmNoXGZQCitiZXNjaHLkbmt0IHdlcmRlbi4gQml0dGUgbGVzZW4gU2llIGRlbiBVbnRlcmFic2Nobml0dCBcZkJTdGFuZGFyZAorU3ltYm9sa2VubnplaWNobnVuZ2VuXGZQIG9iZW4gZvxyIHdlaXRlcmUgSW5mb3JtYXRpb25lbi4KKworTXVzdGVyIHNpbmQgZWluZSBFcndlaXRlcnVuZyBkZXMgRm9ybWF0cyBcZklkZWJcLXN5bWJvbHMoNSlcZlA7IHNpZSBzaW5kIGRhaGVyCitudXIgaW4gU3ltYm9sZGF0ZWlcLVZvcmxhZ2VuIGf8bHRpZy4gRGllIE11c3RlcnNwZXppZmlrYXRpb25zc3ludGF4Cit1bnRlcnNjaGVpZGV0IHNpY2ggbmljaHQgdm9uIGRlciBlaW5lcyBzcGV6aWZpc2NoZW4gU3ltYm9scy4gQWxsZXJkaW5ncworZGllbnQgZGVyIFN5bWJvbG5hbWVudGVpbCBkZXIgU3BlemlmaWthdGlvbiBhbHMgQXVzZHJ1Y2ssIGRlciBnZWdlbgorXGZJTmFtZUBWZXJzaW9uXGZQIGVpbmVzIHJlYWxlbiBTeW1ib2xzIGdlcGFzc3Qgd2lyZC4gVW0gendpc2NoZW4gZGVuCit2ZXJzY2hpZWRlbmVuIE11c3RlcnR5cGVuIHp1IHVudGVyc2NoZWlkZW4sIHdpcmQgZXMgdHlwaXNjaGVyd2Vpc2UgbWl0IGVpbmVyCitzcGV6aWVsbGVuIEtlbm56ZWljaG51bmcgZ2VrZW5uemVpY2huZXQuCisKK0RlcnplaXQgdW50ZXJzdPx0enQgXGZCZHBrZ1wtZ2Vuc3ltYm9sc1xmUCBkcmVpIGdydW5kbGVnZW5lIE11c3RlcnR5cGVuOgorLlRQICAzCitcZkJjKytcZlAKK0RpZXNlcyBNdXN0ZXIgd2lyZCBkdXJjaCBkaWUgS2VubnplaWNobnVuZyBcZkljKytcZlAgdmVyemVpY2huZXQuIEVzIHBhc3N0IG51cgorYXVmIGRpZSBlbnR3b3JyZW5lbiAou2RlbWFuZ2xlZKspIFN5bWJvbG5hbWVuICh3aWUgc2llIHZvbSBIaWxmc3dlcmt6ZXVnCitcZkJjKytmaWx0XGZQKDEpIGF1c2dlZ2ViZW4gd2VyZGVuKS4gRGllc2VzIE11c3RlciBpc3Qgc2VociBoaWxmcmVpY2ggdW0gYXVmCitTeW1ib2xlIHp1IHBhc3NlbiwgYmVpIGRlbSBkaWUgdmVyd29ycmVuZW4gKLttYW5nbGVkqykgTmFtZW4gc2ljaCBhdWYKK3ZlcnNjaGllZGVuZW4gQXJjaGl0ZWt0dXJlbiB1bnRlcnNjaGVpZGVuIHfkaHJlbmQgZGllIGVudHdvcnJlbmVuIGRpZQorZ2xlaWNoZW4gYmxlaWJlbi4gRWluZSBHcnVwcGUgc29sY2hlciBTeW1ib2xlIGlzdCBcZklub25cLXZpcnR1YWwgdGh1bmtzXGZQLCBkaWUKK2VpbmVuIGFyY2hpdGVrdHVyc3BlemlmaXNjaGVuIFZlcnNhdHogaW4gaWhyZW4gdmVyd29ycmVuZW4gTmFtZW4gZWluZ2ViZXR0ZXQKK2hhYmVuLiBFaW5lIGjkdWZpZ2UgSW5zdGFueiBkaWVzZXMgRmFsbGVzIGlzdCBlaW4gdmlydHVlbGxlciBEZXN0cnVrdHVyLCBkZXIKK3VudGVyIHJhdXRlbmb2cm1pZ2VyIFZlcmVyYnVuZyBlaW4gbmljaHRcLXZpcnR1ZWxsZXMgVGh1bmtcLVN5bWJvbAorYmVu9nRpZ3QuIFNlbGJzdCB3ZW5uIGJlaXNwaWVsc3dlaXNlIF9aVGhuOF9OM05TQjZDbGFzc0REMUV2QEJhc2UgYXVmIDMyCitCaXRcLUFyY2hpdGVrdHVyZW4gX1pUaG4xNl9OM05TQjZDbGFzc0REMUV2QEJhc2UgYXVmIDY0IEJpdFwtQXJjaGl0ZWt0dXJlbgoraXN0LCBrYW5uIGVzIG1pdCBlaW5lbSBlaW56aWdlbiBcZkljKytcZlBcLU11c3RlciBnZXBhc3N0IHdlcmRlbjoKKy5SUworLlBQCitsaWJkdW1teS5zby4xIGxpYmR1bW15MSAjTUlOVkVSIworIFsuLi5dCisgKGMrKykibm9uXC12aXJ0dWFsIHRodW5rIHRvIE5TQjo6Q2xhc3NEOjp+Q2xhc3NEKClAQmFzZSIgMS4wCisgWy4uLl0KKy5QCitEZXIgZW50d29ycmVuZSBOYW1lIG9iZW4ga2FubiBkdXJjaCBBdXNm/GhydW5nIGZvbGdlbmRlbiBCZWZlaGxzIGVyaGFsdGVuCit3ZXJkZW46CisuUFAKKyAkIGVjaG8gJ19aVGhuOF9OM05TQjZDbGFzc0REMUV2QEJhc2UnIHwgYysrZmlsdAorLlAKK0JpdHRlIGJlYWNodGVuIFNpZSwgZGFzcyBwZXIgRGVmaW5pdGlvbiB6d2FyIGRlciB2ZXJ3b3JyZW5lIE5hbWUgaW4gZGVyCitCaWJsaW90aGVrIGVpbmRldXRpZyBpc3QsIGRpZSBhYmVyIG5pY2h0IG5vdHdlbmRpZ2Vyd2Vpc2UgZvxyIGRpZQorZW50d29ycmVuZW4gTmFtZW4genV0cmlmZnQuIEVpbiBTYXR6IHZvbiB1bnRlcnNjaGllZGxpY2hlbiByZWFsZW4gU3ltYm9sZW4KK2v2bm5lbiBkZW4gZ2xlaWNoZW4gZW50d29ycmVuZW4gTmFtZW4gaGFiZW4uIEJlaXNwaWVsc3dlaXNlIGlzdCBkYXMgZGVyIEZhbGwKK2JlaSBuaWNodFwtdmlydHVlbGxlbiBUaHVua1wtU3ltYm9sZW4gaW4ga29tcGxleGVuIFZlcmVyYnVuZ3Nrb25maWd1cmF0aW9uZW4KK29kZXIgYmVpIGRlbiBtZWlzdGVuIEtvbnN0cnVrdG9yZW4gdW5kIERlc3RydWt0b3JlbiAoZGEgZysrIHR5cGlzY2hlcndlaXNlCit6d2VpIHJlYWxlIFN5bWJvbGUgZvxyIHNpZSBnZW5lcmllcnQpLiBEYSBkaWVzZSBLb2xsaXNpb25lbiBhYmVyIGF1ZiBkZW0KK0FCSVwtTml2ZWF1IHBhc3NpZXJlbiwgc29sbHRlbiBzaWUgbmljaHQgZGllIFF1YWxpdOR0IGRlciBTeW1ib2xkYXRlaQorcmVkdXppZXJlbi4KKy5SRQorLlRQIAorXGZCc3ltdmVyXGZQCitEaWVzZXMgTXVzdGVyIHdpcmQgZHVyY2ggZGllIEtlbm56ZWljaG51bmcgXGZJc3ltdmVyXGZQIHZlcnplaWNobmV0LiBHdXQKK2JldHJldXRlIEJpYmxpb3RoZWtlbiB2ZXJm/GdlbiD8YmVyIHZlcnNpb25pZXJ0ZSBTeW1ib2xlLCB3b2JlaSBqZWRlIFZlcnNpb24KK3p1IGRlciBWZXJzaW9uIGRlciBPcmlnaW5hbGF1dG9yZW4gcGFzc3QsIGluIGRlciBkaWVzZXMgU3ltYm9sIGhpbnp1Z2Vm/Gd0Cit3dXJkZS4gRmFsbHMgZGFzIGRlciBGYWxsIGlzdCwga/ZubmVuIFNJZSBlaW4gXGZJc3ltdmVyXGZQXC1NdXN0ZXIgdmVyd2VuZGVuLCB1bQorYXVmIGplZGVzIHp1IGVpbmVyIHNwZXppZml6aWVydGVuIFZlcnNpb24genVnZW9yZG5ldGUgU3ltYm9sIHp1CitwYXNzZW4uIEJlaXNwaWVsOgorLlJTCisuUFAKK2xpYmMuc28uNiBsaWJjNiAjTUlOVkVSIworIChzeW12ZXIpR0xJQkNfMi4wIDIuMAorIFsuLi5dCisgKHN5bXZlcilHTElCQ18yLjcgMi43CisgYWNjZXNzQEdMSUJDXzIuMCAyLjIKKy5QUAorQWxsZSBWZXJzaW9uIEdMSUJDXzIuMCB1bmQgR0xJQkNfMi43IHp1Z2VvcmRuZXRlbiBTeW1ib2xlIHdlcmRlbiB6dSBlaW5lcgorbWluaW1hbGVuIFZlcnNpb24gMi4wIGJ6dy4gMi43IGb8aHJlbiwgd29iZWkgZGFzIFN5bWJvbCBhY2Nlc3NAR0xJQkNfMi4wIGRpZQorQXVzbmFobWUgZGFyc3RlbGx0LiBFcyB3aXJkIHp1IGVpbmVyIG1pbmltYWxlbiBBYmjkbmdpZ2tlaXQgYXVmIGxpYmM2CitWZXJzaW9uIDIuMiBm/GhyZW4sIG9id29obCBlcyBpbSBHZWx0dW5nc2JlcmVpY2ggZGVzIE11c3RlcnMKK7soc3ltdmVyKUdMSUJDXzIuMKsgcGFzc3QsIGRhIHNwZXppZWxsZSBTeW1ib2xlIHZvciBNdXN0ZXJuIFZvcnJhbmcgaGFiZW4uCisuUAorQml0dGUgYmVhY2h0ZW4gU2llLCBkYXNzIFBsYXR6aGFsdGVybXVzdGVyIGltIGFsdGVuIEZvcm1hdCAoYW5nZXplaWd0IGR1cmNoCiu7KkB2ZXJzaW9uqyBpbSBTeW1ib2xuYW1lbmZlbGQpIHp3YXIgbm9jaCB1bnRlcnN0/HR6dCB3ZXJkZW4sIHNpZSBhYmVyIGR1cmNoCitkaWUgU3ludGF4IGltIG5ldWVuIEZvcm1hdCC7KHN5bXZlcnxvcHRpb25hbCl2ZXJzaW9uqyBhYmdlbPZzdAord3VyZGVuLiBCZWlzcGllbHN3ZWlzZSBzb2xsdGUguypAR0xJQkNfMi4wIDIuMKsgYWxzCiu7KHN5bXZlcnxvcHRpb25hbClHTElCQ18yLjAgMi4wqyBnZXNjaHJpZWJlbiB3ZXJkZW4sIGZhbGxzIGRhcyBnbGVpY2hlCitWZXJoYWx0ZW4gYmVu9nRpZ3Qgd2lyZC4KKy5SRQorLlRQIAorXGZCcmVnZXhcZlAKK011c3RlciBtaXQgcmVndWzkcmVuIEF1c2Ry/GNrZW4gd2VyZGVuIGR1cmNoIGRpZSBLZW5uemVpY2hudW5nIFxmSXJlZ2V4XGZQCit2ZXJ6ZWljaG5ldC4gU2llIHBhc3NlbiBhdWYgZGVuIHJlZ3Vs5HJlbiBBdXNkcnVjayB2b24gUGVybCwgZGVyIGltCitTeW1ib2xuYW1lbmZlbGQgYW5nZWdlYmVuIGlzdC4gRWluIHJlZ3Vs5HJlciBBdXNkcnVjayB3aXJkIHdpZSBlciBpc3QKK2dlcGFzc3QuIERlbmtlbiBTaWUgZGFoZXIgZGFyYW4sIGlobiBtaXQgZGVtIFplaWNoZW4gXGZJXlxmUCB6dSBiZWdpbm5lbiwgZGEgZXIKK2Fuc29uc3RlbiBhdWYgamVkZW4gVGVpbCBkZXIgWmVpY2hlbmtldHRlIGRlcyByZWFsZW4gU3ltYm9scyBcZkluYW1lQHZlcnNpb25cZlAKK3Bhc3N0LiBCZWlzcGllbDoKKy5SUworLlBQCitsaWJkdW1teS5zby4xIGxpYmR1bW15MSAjTUlOVkVSIworIChyZWdleCkiXm15c3RhY2tfLipAQmFzZSQiIDEuMAorIChyZWdleHxvcHRpb25hbCkicHJpdmF0ZSIgMS4wCisuUAorU3ltYm9sZSB3aWUgu215c3RhY2tfbmV3QEJhc2WrLCC7bXlzdGFja19wdXNoQEJhc2WrLCC7bXlzdGFja19wb3BAQmFzZasKK3Vzdy4gd2VyZGVuIHZvbSBlcnN0ZW4gTXVzdGVyIGdlcGFzc3QsIHfkaHJlbmQgZGllcyB6LkIuIGb8cgoru25nX215c3RhY2tfbmV3QEJhc2WrIG5pY2h0IGRlciBGYWxsIGlzdC4gRGFzIHp3ZWl0ZSBNdXN0ZXIgd2lyZCBhdWYgYWxsZQorU3ltYm9sZSwgZGllIGRpZSBaZWljaGVua2V0dGUgu3ByaXZhdGWrIGluIGlocmVuIE5hbWVuIGVudGhhbHRlbiwgcGFzc2VuIHVuZAorZGllIGdlcGFzc3RlbiBTeW1ib2xlIGVyYmVuIGRpZSBLZW5uemVpY2hudW5nIFxmSW9wdGlvbmFsXGZQIHZvbSBNdXN0ZXIuCisuUkUKKy5QCitEaWUgb2JlbiBhdWZnZWb8aHJ0ZW4gZ3J1bmRsZWdlbmRlbiBNdXN0ZXIga/ZubmVuIFwtIHdvIGVzIFNpbm4gZXJnaWJ0IFwtCitrb21iaW5pZXJ0IHdlcmRlbi4gSW4gZGllc2VtIEZhbGwgd2VyZGVuIHNpZSBpbiBkZXIgUmVpaGVuZm9sZ2UgdmVyYXJiZWl0ZXQsCitpbiBkZXIgZGllIEtlbm56ZWljaG51bmdlbiBhbmdlZ2ViZW4gc2luZC4gSW0gQmVpc3BpZWwKKy5QUAorIChjKyt8cmVnZXgpIl5OU0E6OkNsYXNzQTo6UHJpdmF0ZTo6cHJpdm1ldGhvZFxlZFxlKGludFxlKUBCYXNlIiAxLjAKKyAocmVnZXh8YysrKU4zTlNBNkNsYXNzQTdQcml2YXRlMTFwcml2bWV0aG9kXGVkRWlAQmFzZSAxLjAKKy5QCit3ZXJkZW4gZGllIFN5bWJvbGUgu19aTjNOU0E2Q2xhc3NBN1ByaXZhdGUxMXByaXZtZXRob2QxRWlAQmFzZasgdW5kCiu7X1pOM05TQTZDbGFzc0E3UHJpdmF0ZTExcHJpdm1ldGhvZDJFaUBCYXNlqyBnZXBhc3N0LiBCZWltIFBhc3NlbiBkZXIgZXJzdGVuCitNdXN0ZXJzIHdpcmQgZGFzIHJvaGUgU3ltYm9sIGVyc3QgYWxzIEMrK1wtU3ltYm9sIGVudHdvcnJlbiwgZGFubiB3aXJkIGRlcgorZW50d29ycmVuZGUgTmFtZSBnZWdlbiBkZW4gcmVndWzkcmVuIEF1c2RydWNrIGdlcGFzc3QuIEF1ZiBkZXIgYW5kZXJlbiBTZWl0ZQord2lyZCBiZWltIFBhc3NlbiBkZXMgendlaXRlbiBNdXN0ZXJzIGRlciByZWd1bORyZSBBdXNkcnVjayBnZWdlbiBkZW4gcm9oZW4KK1N5bWJvbG5hbWVuIGdlcGFzc3QsIGRhbm4gd2lyZCBkYXMgU3ltYm9sIPxiZXJwcvxmdCwgb2IgZXMgZWluIEMrK1wtU3ltYm9sCitpc3QsIGluZGVtIGRhcyBFbnR3aXJyZW4gdmVyc3VjaHQgd2lyZC4gRWluIEZlaGxzY2hsYWcgZWluZXMgZWluZmFjaGVuCitNdXN0ZXJzIHdpcmQgenVtIEZlaGxzY2hsYWcgZGVzIGdlc2FtdGVuIE11c3RlcnMgZvxocmVuLiBEYWhlciB3aXJkCitiZWlzcGllbHN3ZWlzZSC7X19OM05TQTZDbGFzc0E3UHJpdmF0ZTExcHJpdm1ldGhvZFxlZEVpQEJhc2WrIGtlaW5lcyBkZXIKK011c3RlciBwYXNzZW4sIGRhIGVzIGtlaW4gZ/xsdGlnZXMgQysrXC1TeW1ib2wgaXN0LgorLlAKK0ltIEFsbGdlbWVpbmVuIHdlcmRlbiBkaWUgTXVzdGVyIGluIHp3ZWkgS2F0ZWdvcmllbiBlaW5nZXRlaWx0OiBBbGlhc2UKKyhncnVuZGxlZ2VuZGUgXGZJYysrXGZQXC0gdW5kIFxmSXN5bXZlclxmUFwtTXVzdGVyKSB1bmQgZ2VuZXJpc2NoZSBNdXN0ZXIgKFxmSXJlZ2V4XGZQCit1bmQgYWxsZSBLb21iaW5hdGlvbmVuIGdydW5kbGVnZW5kZXIgTXVzdGVyKS4gUGFzc2VuIHZvbiBncnVuZGxlZ2VuZGVuCithbGlhc1wtYmFzaWVyZW5kZW4gTXVzdGVybiBpc3Qgc2NobmVsbCAoTygxKSksIHfkaHJlbmQgZ2VuZXJpc2NoZSBNdXN0ZXIgTyhOKQorKHdvYmVpIE4gZGllIEFuemFobCBkZXIgZ2VuZXJpc2NoZW4gTXVzdGVyIGlzdCkgZvxyIGplZGVzIFN5bWJvbCBpc3QuIERhaGVyCit3aXJkIGVtcGZvaGxlbiwgZ2VuZXJpc2NoZSBNdXN0ZXIgbmljaHQgenUgdmllbCB6dSB2ZXJ3ZW5kZW4uCisuUAorV2VubiBtZWhyZXJlIE11c3RlciBhdWYgZGFzIGdsZWljaGUgU3ltYm9sIHBhc3Nlbiwgd2VyZGVuIEFsaWFzZSAoenVlcnN0CitcZkljKytcZlAsIGRhbm4gXGZJc3ltdmVyXGZQKSBnZWdlbvxiZXIgZGVuIGdlbmVyaXNjaGVuIE11c3Rlcm4KK2Jldm9yenVndC4gR2VuZXJpc2NoZSBNdXN0ZXIgd2VyZGVuIGluIGRlciBSZWloZW5mb2xnZSwgaW4gZGVyIHNpZSBpbiBkZXIKK1N5bWJvbGRhdGVpdm9ybGFnZSBnZWZ1bmRlbiB3ZXJkZW4sIGdlcGFzc3QsIGJpcyB6dW0gZXJzdGVuIEVyZm9sZy4gQmVhY2h0ZW4KK1NpZSBhYmVyLCBkYXNzIGRhcyBtYW51ZWxsZSBBbm9yZG5lbiBkZXIgVm9ybGFnZW5kYXRlaWVpbnRy5GdlIG5pY2h0CitlbXBmb2hsZW4gd2lyZCwgZGEgXGZCZHBrZ1wtZ2Vuc3ltYm9sc1xmUCBEaWZmcyBiYXNpZXJlbmQgYXVmIGRlcgorYWxwaGFudW1lcmlzY2hlbiBSZWloZW5mb2xnZSBpaHJlciBOYW1lbiBlcnN0ZWxsdC4KKy5TUyAiSW5jbHVkZXMgdmVyd2VuZGVuIgorLlAKK1dlbm4gZGVyIFNhdHogZGVyIGV4cG9ydGllcnRlbiBTeW1ib2xlbiBzaWNoIHp3aXNjaGVuIEFyY2hpdGVrdHVyZW4KK3VudGVyc2NoZWlkZXQsIGthbm4gZXMgaW5lZmZpemllbnQgd2VyZGVuLCBlaW5lIGVpbnppZ2UgU3ltYm9sZGF0ZWkgenUKK3ZlcndlbmRlbi4gSW4gZGllc2VuIEbkbGxlbiBrYW5uIHNpY2ggZWluZSBJbmNsdWRlXC1EaXJla3RpdmUgaW4gZWluZXIgUmVpaGUKK3ZvbiBBcnRlbiBhbHMgbvx0emxpY2ggZXJ3ZWlzZW46CisuSVAgXChidSA0CitTaWUga/ZubmVuIGRlbiBnZW1laW5zYW1lbiBUZWlsIGluIGVpbmUgZXh0ZXJuZSBEYXRlaSBhdXNsYWdlcm4gdW5kIGRpZXNlCitEYXRlaSBkYW5uIGluIElocmUgXGZJUGFrZXRcZlAuc3ltYm9scy5cZklBcmNoXGZQXC1EYXRlaSBtaXQgZWluZXIKK2luY2x1ZGVcLURpcmVrdGl2ZSB3aWUgZm9sZ3QgZWluYmluZGVuOgorCisjaW5jbHVkZSAiXGZJUGFrZXRlXGZQLnN5bWJvbHMuY29tbW9uIgorLklQIFwoYnUKK0RpZSBJbmNsdWRlXC1EaXJla3RpdmUga2FubiBhdWNoIHdpZSBqZWRlcyBTeW1ib2wgZ2VrZW5uemVpY2huZXQgd2VyZGVuOgorCisoS2VubnplaWNoZW58Li4ufEtlbm56ZWljaGVuTikjaW5jbHVkZSAiZWluenViaW5kZW5kZVwtRGF0ZWkiCisKK0FscyBFcmdlYm5pcyB3ZXJkZW4gYWxsZSBTeW1ib2xlIGF1cyBcZkllaW56dWJpbmRlbmRlXC1EYXRlaVxmUCBzdGFuZGFyZG3k32lnCithbHMgbWl0IFxmSUtlbm56ZWljaGVuXGZQIC4uLiBcZklLZW5uemVpY2hlbk5cZlAgZ2VrZW5uemVpY2huZXQgYmV0cmFjaHRldC4gU2llCitr9m5uZW4gZGllc2UgRnVua3Rpb25hbGl05HQgYmVudXR6ZW4sIHVtIGVpbmUgZ2VtZWluc2FtZSBEYXRlaQorXGZJUGFrZXRcZlAuc3ltYm9scyB6dSBlcnN0ZWxsZW4sIGRpZSBhcmNoaXRla3R1cnNwZXppZmlzY2hlIFN5bWJvbGRhdGVpZW4KK2VpbmJpbmRldDoKKworICBjb21tb25fc3ltYm9sMUBCYXNlIDEuMAorIChhcmNoPWFtZDY0IGlhNjQgYWxwaGEpI2luY2x1ZGUgIlBha2V0LnN5bWJvbHMuNjRiaXQiCisgKGFyY2g9IWFtZDY0ICFpYTY0ICFhbHBoYSkjaW5jbHVkZSAiUGFrZXQuc3ltYm9scy4zMmJpdCIKKyAgY29tbW9uX3N5bWJvbDJAQmFzZSAxLjAKKy5QCitEaWUgU3ltYm9sZGF0ZWllbiB3ZXJkZW4gWmVpbGUgZvxyIFplaWxlIGdlbGVzZW4gdW5kIGluY2x1ZGVcLURpcmVrdGl2ZW4KK3dlcmRlbiBiZWFyYmVpdGV0LCBzb2JhbGQgc2llIGVya2FubnQgd2VyZGVuLiBEYXMgYmVkZXV0ZXQsIGRhc3MgZGVyIEluaGFsdAorZGVyIEluY2x1ZGVcLURhdGVpIGplZGVuIEluaGFsdCD8YmVyc2NocmVpYmVuIGthbm4sIGRlciB2b3IgZGVyCitJbmNsdWRlXC1EaXJla3RpdmUgYXVmZ2V0YXVjaHQgaXN0IHVuZCBJbmhhbHQgbmFjaCBkZXIgRGlyZWt0aXZlIGFsbGVzIGF1cworZGVyIEluY2x1ZGVcLURhdGVpIPxiZXJzY2hyZWliZW4ga2Fubi4gSmVkZXMgU3ltYm9sIChvZGVyIHNvZ2FyIHdlaXRlcmUKKyNpbmNsdWRlXC1EaXJla3RpdmVuKSBpbiBkZXIgSW5jbHVkZVwtRGF0ZWkga2FubiB6dXPkdHpsaWNoZSBLZW5uemVpY2hudW5nZW4KK3NwZXppZml6aWVyZW4gb2RlciBXZXJ0ZSBkZXIgdmVyZXJidGdlbiBLZW5uemVpY2hudW5nZW4gaW4gaWhyZXIKK0tlbm56ZWljaG51bmdzc3BlemlmaWthdGlvbiD8YmVyc2NocmVpYmVuLiBBbGxlcmRpbmdzIGdpYnQgZXMga2VpbmUKK032Z2xpY2hrZWl0IGb8ciBlaW4gU3ltYm9sLCBkaWUgZXJlcmJ0ZW4gS2VubnplaWNobnVuZ2VuIHp1IPxiZXJzY2hyZWliZW4uCisuUAorRWluZSBlaW5nZWJ1bmRlbmUgRGF0ZWkga2FubiBkaWUgS29wZnplaWxlIHdpZWRlcmhvbGVuLCBkaWUgZGVuIFNPTkFNRSBkZXIKK0JpYmxpb3RoZWsgZW50aORsdC4gSW4gZGllc2VtIEZhbGwg/GJlcnNjaHJlaWJ0IHNpZSBqZWRlIHZvcmhlciBnZWxlc2VuZQorS29wZnplaWxlLiBBbGxlcmRpbmdzIGlzdCBlcyBpbSBBbGxnZW1laW5lbiBhbSBCZXN0ZW4sIGRpZSBXaWVkZXJob2x1bmcgdm9uCitLb3BmemVpbGVuIHp1IHZlcm1laWRlbi4gRWluIFdlZyBkaWVzIHp1IGVycmVpY2hlbiwgaXN0IHdpZSBmb2xndDoKKy5QUAorI2luY2x1ZGUgImxpYmlyZ2VuZHdhczEuc3ltYm9scy5jb21tb24iCisgYXJjaF9zcGV6aWZpc2NoZXNfU3ltYm9sQEJhc2UgMS4wCisuU1MgIkd1dGUgQmlibGlvdGhla3N2ZXJ3YWx0dW5nIgorLlAKK0VpbmUgZ3V0IHZlcndhbHRldGUgQmlibGlvdGhlayBoYXQgZGllIGZvbGdlbmRlbiBFaWdlbnNjaGFmdGVuOgorLklQIFwoYnUgNAorc2VpbmUgQVBJIGlzdCBzdGFiaWwgKPZmZmVudGxpY2hlIFN5bWJvbGUgZW50ZmFsbGVuIG5pZSwgbnVyIG5ldWUKK/ZmZmVudGxpY2hlIFN5bWJvbGUgd2VyZGVuIGhpbnp1Z2Vm/Gd0KSB1bmQgaW5rb21wYXRpYmxlIMRuZGVydW5nZW4gZXJmb2xnZW4KK251ciwgd2VubiBzaWNoIGRlciBTT05BTUUg5G5kZXJ0LAorLklQIFwoYnUgNAoraWRlYWxlcndlaXNlIHZlcndlbmRldCBzaWUgU3ltYm9sdmVyc2lvbmllcnVuZywgdW0gQUJJXC1TdGFiaWxpdOR0IHRyb3R6CitpbnRlcm5lciDEbmRlcnVuZ2VuIHVuZCBBUElcLUVyd2VpdGVydW5nZW4genUgZXJyZWljaGVuLAorLklQIFwoYnUgNAorc2llIGV4cG9ydGllcnQgbmllIHByaXZhdGUgU3ltYm9sZSAoYWxzIEhpbGZzbPZzdW5nIGv2bm5lbiBkaWVzZSBhbHMKK29wdGlvbmFsIGdla2VubnplaWNobmV0IHdlcmRlbikuCisuUAorQmVpIGRlciBWZXJ3YWx0dW5nIGRlciBTeW1ib2xkYXRlaSBrYW5uIGRhcyBBdWZ0YXVjaGVuIHVuZCBWZXJzY2h3aW5kZW4gdm9uCitTeW1ib2xlbiBsZWljaHQgYmVtZXJrdCB3ZXJkZW4uIEVzIGlzdCBhYmVyIHNjaHdpZXJpZ2VyLCBpbmtvbXBhdGJpbGUgQVBJXC0KK3VuZCBBQklcLcRuZGVydW5nZW4genUgYmVtZXJrZW4uIERhaGVyIHNvbGx0ZSBkZXIgQmV0cmV1ZXIgaW50ZW5zaXYgZGllCitDaGFuZ2Vsb2dcLUVpbnRy5GdlIGR1cmNoc2NoYXVlbiB1bmQgbmFjaCBG5GxsZW4gc3VjaGVuLCBpbiBkZW5lbiBkaWUgUmVnZWxuCitkZXIgZ3V0ZW4gQmlibGlvdGhla3N2ZXJ3YWx0dW5nIGdlYnJvY2hlbiB3dXJkZW4uIEZhbGxzIG32Z2xpY2hlIFByb2JsZW1lCitlbnRkZWNrdCB3dXJkZW4sIHNvbGx0ZW4gZGVyIE9yaWdpbmFsYXV0b3IgaW5mb3JtaWVydCB3ZXJkZW4sIGRhIGVpbmUKK0tvcnJla3R1ciB2b20gT3JpZ2luYWxhdXRvciBpbW1lciBiZXNzZXIgYWxzIGVpbmUgRGViaWFuXC1zcGV6aWZpc2NoZQorSGlsZnNs9nN1bmcgaXN0LgorLlNIIE9QVElPTkVOCisuVFAgCitcZkJcLVBcZlBcZklQYWtldGJhdXZlcnplaWNobmlzXGZQCitTdWNoZSBuYWNoIFxmSVBha2V0YmF1dmVyemVpY2huaXNcZlAgc3RhdHQgbmFjaCBkZWJpYW4vdG1wLgorLlRQIAorXGZCXC1wXGZQXGZJUGFrZXRcZlAKK0RlZmluaWVydCBkZW4gUGFrZXRuYW1lbi4gQmVu9nRpZ3QsIGZhbGxzIG1laHIgYWxzIGVpbiBiaW7kcmVzIFBha2V0IGluCitkZWJpYW4vY29udHJvbCBhdWZnZWb8aHJ0IGlzdCAob2RlciBmYWxscyBlcyBrZWluZSBEYXRlaSBkZWJpYW4vY29udHJvbAorZ2lidCkuCisuVFAgCitcZkJcLXZcZlBcZklWZXJzaW9uXGZQCitEZWZpbmllcnQgZGllIFBha2V0dmVyc2lvbi4gU3RhbmRhcmRt5N9pZyB3aXJkIGVpZSBWZXJzaW9uIGF1cworZGViaWFuL2NoYW5nZWxvZyBhdXNnZWxlc2VuLiBCZW72dGlndCwgZmFsbHMgZGVyIEF1ZnJ1ZiBhdd9lcmhhbGIgZGVzCitRdWVsbHBha2V0YmF1bXMgZXJmb2xndC4KKy5UUCAKK1xmQlwtZVxmUFxmSUJpYmxpb3RoZWtzZGF0ZWlcZlAKK051ciBkaWUgZXhwbGl6aXQgYXVmZ2Vm/GhydGVuIEJpYmxpb3RoZWtlbiB1bnRlcnN1Y2hlbiBzdGF0dCBhbGxlCiv2ZmZlbnRsaWNoZW4gQmlibGlvdGhla2VuIHp1IGZpbmRlbi4gU2llIGv2bm5lbiBlaW5lbiByZWd1bORyZW4gQXVzZHJ1Y2sgaW4KK1xmSUJpYmxpb3RoZWtzZGF0ZWlcZlAgdmVyd2VuZGVuLCB1bSBtZWhyZXJlIEJpYmxpb3RoZWtlbiBtaXQgZWluZW0gZWluemVsbmVuCitBcmd1bWVudCB6dSBwYXNzZW4gKGFuZGVybmZhbGxzIGJlbvZ0aWdlbiBTaWUgbWVocmVyZSBcZkJcLWVcZlApLgorLlRQIAorXGZCXC1JXGZQXGZJRGF0ZWluYW1lXGZQCitWZXJ3ZW5kZSBcZklEYXRlaW5hbWVcZlAgYWxzIFJlZmVyZW56ZGF0ZWksIHVtIGRpZSBTeW1ib2xkYXRlaSB6dSBlcnN0ZWxsZW4sCitkaWUgZGFubiBpbSBQYWtldCBzZWxic3QgaW50ZWdyaWVydCB3aXJkLgorLlRQIAorXGZCXC1PXGZQCitHZWJlIGRpZSBlcnN0ZWxsdGUgU3ltYm9sZGF0ZWkgaW4gZGllIFN0YW5kYXJkYXVzZ2FiZSBhdXMgc3RhdHQgc2llIGltCitQYWtldGJhdWJhdW0genUgc3BlaWNoZXJuLgorLlRQICAKK1xmQlwtT1xmUFxmSURhdGVpbmFtZVxmUAorU3BlaWNoZXJlIGRpZSBlcnN0ZWxsdGUgU3ltYm9sZGF0ZWkgdW50ZXIgXGZJRGF0ZWluYW1lXGZQLiBGYWxscyBcZklEYXRlaW5hbWVcZlAKK2JlcmVpdHMgZXhpc3RpZXJ0LCB3aXJkIGRlcmVuIEluaGFsdCBhbHMgR3J1bmRsYWdlIGb8ciBkaWUgZXJzdGVsbHRlCitTeW1ib2xkYXRlaSB2ZXJ3YW5kdC4gU2llIGv2bm5lbiBkaWVzZSBGdW5rdGlvbmFsaXTkdCBiZW51dHplbiwgdW0gZWluZQorU3ltYm9sZGF0ZWkgenUgYWt0dWFsaXNpZXJlbiwgc28gZGFzcyBzaWUgenUgZWluZXIgbmV1ZXJlbiBWZXJzaW9uIGRlcgorT3JpZ2luYWxhdXRvcmVuIElocmVyIEJpYmxpb3RoZWsgcGFzc3QuCisuVFAgCitcZkJcLXRcZlAKK1NjaHJlaWJlIGRpZSBTeW1ib2xkYXRlaSBpbSBWb3JsYWdlbm1vZHVzIHN0YXR0IGltIHp1IFxmSWRlYlwtc3ltYm9scyg1KVxmUAora29tcGF0aWJsZW4gRm9ybWF0LiBEZXIgSGF1cHR1bnRlcnNjaGllZCBiZXN0ZWh0IGRhcmluLCBkYXNzIGltCitWb3JsYWdlbm1vZHVzIGRpZSBTeW1ib2xuYW1lbiB1bmQgS2VubnplaWNobnVuZ2VuIGluIGlocmVyIE9yaWdpbmFsZm9ybQorZ2VzY2hyaWViZW4gd2VyZGVuLCBpbSBHZWdlbnNhdHogenUgZGVuIHZlcmFyYmVpdGV0ZW4gU3ltYm9sbmFtZW4gbWl0CitlbnRmZXJuZW4gS2VubnplaWNobnVuZ2VuIGltIEtvbXBhdGliaWxpdOR0c21vZHVzLiBEZXN3ZWl0ZXJlbiBr9m5udGVuCitlaW5pZ2UgU3ltYm9sZSBiZWltIFNjaHJlaWJlbiBlaW5lciBTdGFuZGFyZCBcZklkZWJcLXN5bWJvbHMoNSlcZlBcLURhdGVpCitlbnRmZXJudCB3ZXJkZW4gKGdlbeTfIGRlciBWZXJhcmJlaXR1bmdzcmVnZWxuIGb8ciBLZW5uemVpY2hlbiksIHfkaHJlbmQgaW4KK2RlciBTeW1ib2xkYXRlaXZvcmxhZ2UgaW1tZXIgYWxsZSBTeW1ib2xlIGdlc2NocmllYmVuIHdlcmRlbi4KKy5UUCAKK1xmQlwtY1xmUFxmSVswXC00XVxmUAorRGVmaW5pZXJ0IGRpZSBQcvxmdW5nZW4sIGRpZSBiZWltIFZlcmdsZWljaCBkZXIgZXJzdGVsbHRlbiBTeW1ib2xkYXRlaSBtaXQKK2RlciBWb3JsYWdlbmRhdGVpIGFscyBTdGFydHB1bmt0IGVyZm9sZ2VuIHNvbGxlbi4gU3RhbmRhcmRhcmRzdHVmZSBpc3QKKzEuIFp1bmVobWVuZGUgU3R1ZmVuIGb8aHJlbiBtZWhyIFBy/GZ1bmdlbiBkdXJjaCB1bmQgZW50aGFsdGVuIGFsbGUKK1By/GZ1bmdlbiBkZXIgbmllZHJpZ2VyZW4gU3R1ZmVuLiBTdHVmZSAwIHNjaGzkZ3QgbmllIGZlaGwuIFN0dWZlIDEgc2NobORndAorZmVobCwgd2VubiBlaW5pZ2UgU3ltYm9sZSB2ZXJzY2h3dW5kZW4gc2luZC4gU3R1ZmUgMiBzY2hs5Gd0IGZlaGx0LCBmYWxscworZWluaWdlIG5ldWUgU3ltYm9sZSBlaW5nZWb8aHJ0IHd1cmRlbi4gU3R1ZmUgMyBzY2hs5Gd0IGZlaGwsIGZhbGxzIGVpbmlnZQorQmlibGlvdGhla2VuIHZlcnNjaHd1bmRlbiBzaW5kLiBTdHVmZSA0IHNjaGzkZ3QgZmVobCwgZmFsbHMgZWluaWdlCitCaWJsaW90aGVrZW4gaGluenVnZWtvbW1lbiBzaW5kLgorCitEaWVzZXIgV2VydCBrYW5uIHZvbiBkZXIgVW1nZWJ1bmdzdmFyaWFibGVuIERQS0dfR0VOU1lNQk9MU19DSEVDS19MRVZFTAor/GJlcnNjaHJpZWJlbiB3ZXJkZW4uCisuVFAgCitcZkJcLXFcZlAKK1J1aGlnIHZlcmhhbHRlbiB1bmQgbmllIGVpbmVuIERpZmYgendpc2NoZW4gZGVyIGVyc3RlbGx0ZW4gU3ltYm9sZGF0ZWkgdW5kCitkZXIgYWxzIFN0YXJ0cHVua3QgdmVyd2FuZHRlbiBWb3JsYWdlbmRhdGVpIGVyc3RlbGxlbiBvZGVyIGtlaW5lIFdhcm51bmdlbgorYmV6/GdsaWNoIG5ldWVyL3ZlcmxvcmVuZGVyIEJpYmxpb3RoZWtlbiBvZGVyIG5ldWVyL3ZlcmxvcmVuZGVyIFN5bWJvbGUKK2F1c2dlYmVuLiBEaWVzZSBPcHRpb24gZGVha3RpdmllcnQgbnVyIGRpZSBpbmZvcm1hdGl2ZSBBdXNnYWJlIGFiZXIgbmljaHQKK2RpZSBQcvxmdW5nZW4gc2VsYnN0IChzZWhlbiBTaWUgaGllcnp1IGRpZSBPcHRpb24gXGZJXC1jXGZQKS4KKy5UUCAKK1xmQlwtYVxmUFxmSUFyY2hpdGVrdHVyXGZQCitOZWhtZSBcZklBcmNoXGZQIGFscyBIb3N0XC1BcmNoaXRla3R1ciBiZWltIFZlcmFyYmVpdGVuIGRlciBTeW1ib2xkYXRlaWVuCithbi4gVmVyd2VuZGVuIFNpZSBkaWVzZSBPcHRpb24sIHVtIFN5bWJvbGRhdGVpZW4gb2RlciBEaWZmcyBm/HIgYmVsaWViaWdlCitBcmNoaXRla3R1cmVuIHp1IGVyc3RlbGxlbiwgdm9yYXVzZ2VzZXR6dCwgZGllIEJpbuRycHJvZ3JhbW1lIHNpbmQgYmVyZWl0cwordmVyZvxnYmFyLgorLlRQIAorXGZCXC1kXGZQCitEZWJ1Z1wtTW9kdXMgYWt0aXZpZXJlbi4gRWluZSBWaWVsemFobCB2b24gTmFjaHJpY2h0ZW4gd2lyZCBhbmdlemVpZ3QsIHVtIHp1Citlcmts5HJlbiwgd2FzIFxmQmRwa2dcLWdlbnN5bWJvbHNcZlAgZHVyY2hm/GhydC4KKy5UUCAKK1xmQlwtVlxmUAorQXVzZvxocmxpY2hlbiBNb2R1cyBha3RpdmllcmVuLiBEaWUgZXJzdGVsbHRlIFN5bWJvbGRhdGVpIGVudGjkbHQgdmVyYWx0ZXRlCitTeW1ib2xlIGFscyBLb21tZW50YXJlLiBJbSBWb3JsYWdlbm1vZHVzIHdlcmRlbiBNdXN0ZXJzeW1ib2xlIGRlc3dlaXRlcmVuCit2b24gS29tbWVudGFyZW4gZ2Vmb2xndCwgZGllIGRpZSBlY2h0ZW4gU3ltYm9sZSBhdWZm/GhyZW4sIGRpZSBhdWYgZGllc2VzCitNdXN0ZXIgcGFzc2VuLgorLlRQIAorXGZCXC1oXGZQLCBcZkJcLVwtaGVscFxmUAorWmVpZ2UgZGVuIEJlZGllbnVuZ3NoaW53ZWlzIHVuZCBiZWVuZGUuCisuVFAgCitcZkJcLVwtdmVyc2lvblxmUAorR2ViZSBkaWUgVmVyc2lvbiBhdXMgdW5kIGJlZW5kZSBzaWNoLgorLgorLlNIINxCRVJTRVRaVU5HCitEaWUgZGV1dHNjaGUg3GJlcnNldHp1bmcgd3VyZGUgMjAwNCwgMjAwNi0yMDExIHZvbiBIZWxnZSBLcmV1dHptYW5uCis8ZGViaWFuQGhlbGdlZmplbGwuZGU+LCAyMDA3IHZvbiBGbG9yaWFuIFJlaG5pc2NoIDxlaXhtYW5AZ214LmRlPiB1bmQKKzIwMDggdm9uIFN2ZW4gSm9hY2hpbSA8c3ZlbmpvYWNAZ214LmRlPgorYW5nZWZlcnRpZ3QuIERpZXNlINxiZXJzZXR6dW5nIGlzdCBGcmVpZSBEb2t1bWVudGF0aW9uOyBsZXNlbiBTaWUgZGllCitHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBWZXJzaW9uIDIgb2RlciBuZXVlciBm/HIgZGllIEtvcGllcmJlZGluZ3VuZ2VuLgorRXMgZ2lidCBLRUlORSBIQUZUVU5HLgorLlNIICJTSUVIRSBBVUNIIgorXGZCaHR0cDovL3Blb3BsZS5yZWRoYXQuY29tL2RyZXBwZXIvc3ltYm9sXC12ZXJzaW9uaW5nXGZQCisuYnIKK1xmQmh0dHA6Ly9wZW9wbGUucmVkaGF0LmNvbS9kcmVwcGVyL2dvb2RwcmFjdGljZS5wZGZcZlAKKy5icgorXGZCaHR0cDovL3Blb3BsZS5yZWRoYXQuY29tL2RyZXBwZXIvZHNvaG93dG8ucGRmXGZQCisuYnIKK1xmQmRlYlwtc3ltYm9sc1xmUCg1KSwgXGZCZHBrZ1wtc2hsaWJkZXBzXGZQKDEpLgorLgorLlNIIEFVVE9SRU4KK0NvcHlyaWdodCBcKGNvIDIwMDdcLTIwMDkgUmFwaGFcWzplXWwgSGVydHpvZworLnNwCitEaWVzIGlzdCBGcmVpZSBTb2Z0d2FyZTsgbGVzZW4gU2llIGRpZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBWZXJzaW9uIDIKK29kZXIgbmV1ZXIgZvxyIGRpZSBLb3BpZXJiZWRpbmd1bmdlbi4gRXMgZ2lidCBLRUlORSBIYWZ0dW5nLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vZGUvZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMSBiL2Rwa2ctMS4xNi4xLjEvbWFuL2RlL2Rwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTdiYWYwNwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL2RlL2Rwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjEKQEAgLTAsMCArMSwxNTggQEAKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlRIIGRwa2dcLW1haW50c2NyaXB0XC1oZWxwZXIgMSAyMDExXC0wOFwtMTQgRGViaWFuXC1Qcm9qZWt0IGRwa2dcLVByb2dyYW1tc2FtbWx1bmcKKy5TSCBOQU1FCitkcGtnXC1tYWludHNjcmlwdFwtaGVscGVyIFwtIEJla2FubnRlIEVpbnNjaHLkbmt1bmdlbiBpbiBEcGtnIGluCitCZXRyZXVlcnNrcmlwdGVuIHVtZ2VoZW4KKy4KKy5TSCDcQkVSU0lDSFQKK1xmQmRwa2dcLW1haW50c2NyaXB0XC1oZWxwZXJcZlAgXGZJQmVmZWhsXGZQIFtcZklQYXJhbWV0ZXJcZlAuLi5dIFxmQlwtXC1cZlAKK1xmSUJldHJcLVNrcmlwdFwtUGFyYW1ldGVyXGZQLi4uCisuCisuU0ggIkJFRkVITEUgVU5EIFBBUkFNRVRFUiIKKy5QCitcZkJybV9jb25mZmlsZVxmUCBcZklDb25mZmlsZVxmUCBbXGZJbGV0enRlVmVyc2lvblxmUCBbXGZJUGFrZXRcZlBdXQorLlAKK1xmQm12X2NvbmZmaWxlXGZQIFxmSUFsdGVDb25mZmlsZVxmUCBcZklOZXVlQ29uZmZpbGVcZlAgW1xmSWxldHp0ZVZlcnNpb25cZlAgW1xmSVBha2V0XGZQXV0KKy4KKy5TSCBCRVNDSFJFSUJVTkcKKy5QCitEaWVzZXMgUHJvZ3JhbW0gd3VyZGUgc28gZW50d29yZmVuLCBkYXNzIGVzIGluIEJldHJldWVyc2tyaXB0ZW4gYXVzZ2Vm/GhydAord2VyZGVuIGthbm4sIHVtIGVpbmlnZSBBdWZnYWJlbiB6dSBlcmxlZGlnZW4sIGRpZSBEcGtnIChub2NoKSBuaWNodCBzZWxic3QKK2VybGVkaWdlbiBrYW5uLCBlbnR3ZWRlciBhdWZncnVuZCB2b24gRGVzaWduXC1FbnRzY2hlaWR1bmdlbiBvZGVyIGF1ZmdydW5kCitha3R1ZWxsZXIgRWluc2NocuRua3VuZ2VuLgorLlAKK1ZpZWxlIGRpZXNlciBBdWZnYWJlbiBiZW72dGlnZW4ga29vcmRpbmllcnRlIEFrdGlvbmVuIGF1cyBtZWhyZXJlbgorQmV0cmV1ZXJza3JpcHRlbiAoXGZCcHJlaW5zdFxmUCwgXGZCcG9zdGluc3RcZlAsIFxmQnByZXJtXGZQLCBcZkJwb3N0cm1cZlApLiBVbSBGZWhsZXIKK3p1IHZlcm1laWRlbiwgd2lyZCBkZXIgZ2xlaWNoZSBBdWZydWYgZWluZmFjaCBpbiBhbGxlIFNrcmlwdGUgZWluZ2Vm/Gd0IHVuZAorZGFzIFByb2dyYW1tIHdpcmQgc2VpbiBWZXJoYWx0ZW4gYXV0b21hdGlzY2ggYWJo5G5naWcgdm9uIGRlciBWYXJpYWJsZQorXGZCRFBLR19NQUlOVFNDUklQVF9OQU1FXGZQIHVuZCBkZW4gQXJndW1lbnRlbiBpbSBCZXRyZXVlcnNrcmlwdCwgZGllIFNpZSBuYWNoCitlaW5lbSBkb3BwZWx0ZW4gU2NocuRnc3RyaWNoIPxiZXJnZWJlbiBt/HNzZW4sIGFucGFzc2VuLgorLgorLlNIICJDT05GRklMRVwtQkVaT0dFTkUgQVVGR0FCRU4iCisuUAorQmVpbSBVcGdyYWRlIGVpbmVzIFBha2V0cyB3aXJkIERwa2cgZWluIENvbmZmaWxlIChlaW5lIEtvbmZpZ3VyYXRpb25zZGF0ZWksCitiZWkgZGVyIERwa2cgZGllIMRuZGVydW5nZW4gZGVzIEJlbnV0emVycyBlcmhhbHRlbiBzb2xsKSBuaWNodCBhdXRvbWF0aXNjaGVuCitlbnRmZXJuZW4sIGZhbGxzIHNpZSBuaWNodCBpbiBkZXIgbmV1ZXJlbiBWZXJzaW9uIGVudGhhbHRlbiBpc3QuIEVzIGdpYnQKK3p3ZWkgSGF1cHRncvxuZGUgZGFm/HI7IGRlciBlcnN0ZSBpc3QsIGRhc3MgZGllIENvbmZmaWxlIHZlcnNlaGVudGxpY2gKK2VudGZhbGxlbiBzZWluIHVuZCBkaWUgbuRjaHN0ZSBWZXJzaW9uIHNpZSB3aWVkZXIgaGVyc3RlbGxlbiBr9m5udGUgdW5kIGRpZQorQmVudXR6ZXIgZGllIMRuZGVydW5nIG5pY2h0IHdlZ2dld29yZmVuIHNlaGVuIHdvbGxlbi4gRGVyIHp3ZWl0ZSBiZXN0ZWh0CitkYXJpbiwgZGFzcyBQYWtldGVuIGVybGF1YnQgd2VyZGVuIHNvbGwsIHZvbiBlaW5lciBEcGtnXC1iZXRyZXV0ZW4gQ29uZmZpbGUKK2F1ZiBlaW5lIERhdGVpLCBkaWUgdm9uIGRlbiBCZXRyZXVlcnNrcmlwdGVuIGRlcyBQYWtldHMsIG5vcm1hbGVyd2Vpc2UgbWl0CitlaW5lbSBXZXJremV1ZyB3aWUgRGViY29uZiBvZGVyIFVjZiwgdmVyd2FsdGV0IHdpcmQsIHVtenVzdGVsbGVuLgorLlAKK0RhcyBiZWRldXRldCwgZmFsbHMgZWluIFBha2V0IGVpbmUgQ29uZmZpbGUgdW1iZW5lbm5lbiBvZGVyIGVudGZlcm5lbiBzb2xsLAorbXVzcyBlcyBkaWVzIGV4cGxpeml0IGR1cmNoZvxocmVuIHVuZCBcZkJkcGtnXC1tYWludHNjcmlwdFwtaGVscGVyXGZQIGthbm4gZGF6dQordmVyd2FuZHQgd2VyZGVuLCBlaW5lIHNhbmZ0ZSBM9nNjaHVuZyB1bmQgVmVyc2NoaWVidW5nIHZvbiBDb25mZmlsZXMKK2lubmVyaGFsYiB2b24gQmV0cmV1ZXJza3JpcHRlbiBkdXJjaHp1ZvxocmVuLgorLgorLlNTICJFSU5FIENPTkZGSUxFIEVOVEZFUk5FTiIKKy5QCitGYWxscyBlaW5lIENvbmZmaWxlIGtvbXBsZXR0IGVudGZlcm50IHdpcmQsIHNvbGx0ZSBzaWUgdm9uIGRlciBQbGF0dGUKK2VudGZlcm50IHdlcmRlbiwgZmFsbHMgZGVyIEJlbnV0emVyIHNpZSBuaWNodCB2ZXLkbmRlcnQgaGF0LiBGYWxscyBlcyBsb2thbGUKK0FucGFzc3VuZ2VuIGdpYnQsIHNvbGx0ZW4gZGllc2UgZXJoYWx0ZW4gd2VyZGVuLiBGYWxscyBkYXMgVXBncmFkZSBkZXMKK1Bha2V0cyBhYmdlYnJvY2hlbiB3aXJkLCBzb2xsdGUgZGllIG5ldWVyZGluZ3MgdmVyYWx0ZXRlIENvbmZmaWxlIG5pY2h0Cit2ZXJzY2h3aW5kZW4uCisuUAorQWxsIGRpZXMgd2lyZCBkdXJjaCBFaW5zZXR6ZW4gZGVyIGZvbGdlbmRlbiBTaGVsbFwtU2Nobmlwc2VsIGluIGRpZQorQmV0cmV1ZXJza3JpcHRlIFxmQnByZWluc3RcZlAsIFxmQnBvc3RpbnN0XGZQIHVuZCBcZkJwb3N0cm1cZlAgaW1wbGVtZW50aWVydDoKKy5QCisgICAgZHBrZ1wtbWFpbnRzY3JpcHRcLWhlbHBlciBybV9jb25mZmlsZSBcZQorICAgICAgICBcZklDb25mZmlsZVxmUCBcZklsZXR6dGVWZXJzaW9uXGZQIFxmSVBha2V0XGZQIFwtXC0gIiRAIgorLlAKK1xmSUNvbmZmaWxlXGZQIGlzdCBkZXIgRGF0ZWluYW1lIGRlciB6dSBlbnRmZXJuZW5kZW4gQ29uZmZpbGUuIFxmSWxldHp0ZVZlcnNpb25cZlAKK2lzdCBkaWUgbGV0enRlIFZlcnNpb24gZGVzIFBha2V0cywgZGFzIGRpZSBDb25mZmlsZSBlbnRoaWVsdCAob2RlciBkaWUKK2xldHp0ZSBWZXJzaW9uIGRlcyBQYWtldHMsIGRhcyBzaWNoIG5pY2h0IGRhcnVtIGv8bW1lcnRlLCBkaWUgdmVyYWx0ZXRlCitDb25mZmlsZSB6dSBs9nNjaGVuLCBmYWxscyBkaWVzIG5pY2h0IHNvZm9ydCBpbXBsZW1lbnRpZXJ0IHd1cmRlKS4gRmFsbHMKK1xmSWxldHp0ZVZlcnNpb25cZlAgbGVlciBvZGVyIGVudGZhbGxlbiBpc3Qgd2lyZCBkaWUgRHVyY2hm/GhydW5nIGJlaSBqZWRlbQorVXBncmFkZSB2ZXJzdWNodC4gXGZJUGFrZXRcZlAgaXN0IGRlciBQYWtldG5hbWUuIEVyIGlzdCBvcHRpb25hbCwgZGEgZXIKK3N0YW5kYXJkbeTfaWcgbWl0ICREUEtHX01BSU5UU0NSSVBUX1BBQ0tBR0UgYmVsZWd0IGlzdCAoZGllc2UgVmFyaWFibGUgd2lyZAordm9uIERwa2cgYXVmIGRlbiBOYW1lbiBkZXMgbW9tZW50YW4gaW4gQmVhcmJlaXR1bmcgYmVmaW5kbGljaGVuIFBha2V0cworZ2VzZXR6dCkuIEFsbGUgUGFyYW1ldGVyIGRlcyBCZXRyZXVlcnNrcmlwdHMgbfxzc2VuIG5hY2ggu1wtXC2rIGFuIGRhcworUHJvZ3JhbW0gd2VpdGVyZ2VsZWl0ZXQgd2VyZGVuLgorLlAKK0FrdHVlbGxlIEltcGxlbWVudGllcnVuZzogaW0gXGZCcHJlaW5zdFxmUCB3aXJkIGdlcHL8ZnQsIG9iIGRpZSBDb25mZmlsZQorZ2XkbmRlcnQgd3VyZGUuIERhbm4gd2lyZCBzaWUgZW50d2VkZXIgaW4gXGZJQ29uZmZpbGVcZlBcZkIuZHBrZ1wtcmVtb3ZlXGZQIChmYWxscworc2llIG5pY2h0IGdl5G5kZXJ0IHd1cmRlKSBvZGVyIGluIFxmSUNvbmZmaWxlXGZQXGZCLmRwa2dcLWJhY2t1cFxmUCAoZmFsbHMgc2llCitnZeRuZGVydCB3dXJkZSkgdW1iZW5hbm50LiBJbSBcZkJwb3N0aW5zdFxmUCB3aXJkIGxldHp0ZXJlIGluCitcZklDb25mZmlsZVxmUFxmQi5kcGtnXC1iYWtcZlAgdW1iZW5hbm50IHVuZCBhbHMgUmVmZXJlbnogYmVoYWx0ZW4sIGRhIHNpZQorQmVudXR6ZXLkbmRlcnVuZ2VuIGVudGjkbHQsIHfkaHJlbmQgZXJzdGVyZSBlbnRmZXJudCB3aXJkLiBGYWxscyBkYXMgVXBncmFkZQorZGVzIFBha2V0cyBhYmdlYnJvY2hlbiB3aXJkLCByZWluc3RhbGxpZXJ0IFxmQnBvc3RybVxmUCBkaWUgdXJzcHL8bmdsaWNoZQorQ29uZmZpbGUuIFfkaHJlbmQgZGVzIHZvbGxzdORuZGlnZW4gTPZzY2hlbnMgd2lyZCBcZkJwb3N0cm1cZlAgYXVjaCBkaWUgYmlzaGVyCitiZWhhbHRlbmUgRGF0ZWkgXGZCLmRwa2dcLWJha1xmUCBlbnRmZXJuZW4uCisuCisuU1MgIkVJTkUgQ09ORkZJTEUgVU1CRU5FTk5FTiIKKy5QCitGYWxscyBlaW5lIENvbmZmaWxlIHZvbiBlaW5lbSBPcnQgenUgZWluZW0gYW5kZXJlbiB2ZXJzY2hvYmVuIHdpcmQsIG38c3NlbgorU2llIHNpY2hlcnN0ZWxsZW4sIGRhc3MgU2llIGF1Y2ggYWxsZSDEbmRlcnVuZ2VuIGRlcyBCZW51dHplcnMgbWl0Civ8YmVybmVobWVuLiBBbmbkbmdsaWNoIGVyc2NoZWludCBkaWVzIGFscyBlaW5mYWNoZSDEbmRlcnVuZyBhbSBTa3JpcHQKK1xmQnByZWluc3RcZlAsIGFsbGVyZGluZ3Mgd2lyZCBkaWVzIGRhenUgZvxocmVuLCBkYXNzIGRlciBCZW51dHplciB2b24gRHBrZworYXVmZ2Vmb3JkZXJ0IHdpcmQsIGRpZSBCZWFyYmVpdHVuZyBkZXIgQ29uZmZpbGUgenUgYmVzdOR0aWdlbiwgb2J3b2hsIHNpZQorZvxyIGRpZXNlIGdhciBuaWNodCB2ZXJhbnR3b3J0bGljaCBzaW5kLgorLlAKK1NhbmZ0ZSBVbWJlbmVubnVuZyBrYW5uIGR1cmNoIEVpbnNldHplbiBkZXIgZm9sZ2VuZGVuIFNoZWxsXC1TY2huaXBzZWwgaW4gZGllCitCZXRyZXVlcnNrcmlwdGUgXGZCcHJlaW5zdFxmUCwgXGZCcG9zdGluc3RcZlAgdW5kIFxmQnBvc3RybVxmUCBpbXBsZW1lbnRpZXJ0IHdlcmRlbjoKKy5QCisgICAgZHBrZ1wtbWFpbnRzY3JpcHRcLWhlbHBlciBtdl9jb25mZmlsZSBcZQorICAgICAgICBcZklhbHRlQ29uZmZpbGVcZlAgXGZJbmV1ZUNvbmZmaWxlXGZQIFxmSWxldHp0ZVZlcnNpb25cZlAgXGZJUGFrZXRcZlAgXC1cLSAiJEAiCisuUAorXGZJYWx0ZUNvbmZmaWxlXGZQIHVuZCBcZkluZXVlQ29uZmZpbGVcZlAgc2luZCBkZXIgYWx0ZSB1bmQgZGVyIG5ldWUgTmFtZSBkZXIKK3VtenViZW5lbm5lbmRlbiBDb25mZmlsZS4gXGZJbGV0enRlVmVyc2lvblxmUCBpc3QgZGllIGxldHp0ZSBWZXJzaW9uIGRlcworUGFrZXRzLCBkaWUgZGllIENvbmZmaWxlIG1pdCBkZW0gYWx0ZW4gTmFtZW4gZW50aGllbHQuIEZhbGxzCitcZklsZXR6dGVWZXJzaW9uXGZQIGxlZXIgb2RlciBlbnRmYWxsZW4gaXN0LCB3aXJkIGRpZSBEdXJjaGb8aHJ1bmcgYmVpIGplZGVtCitVcGdyYWRlIHZlcnN1Y2h0IChIaW53ZWlzOiBFcyBpc3Qgc2ljaGVyZXIsIGRpZSBWZXJzaW9uIGFuenVnZWJlbiB1bmQgZGllCitEdXJjaGb8aHJ1bmcgbnVyIGVpbm1hbCB2ZXJzdWNoZW4genUgbGFzc2VuKS4gXGZJUGFrZXRcZlAgaXN0IGRlciBQYWtldG5hbWUuIEVyCitpc3Qgb3B0aW9uYWwsIGRhIGVyIHN0YW5kYXJkbeTfaWcgbWl0ICREUEtHX01BSU5UU0NSSVBUX1BBQ0tBR0UgYmVsZWd0IGlzdAorKGRpZXNlIFZhcmlhYmxlIHdpcmQgdm9uIERwa2cgYXVmIGRlbiBOYW1lbiBkZXMgbW9tZW50YW4gaW4gQmVhcmJlaXR1bmcKK2JlZmluZGxpY2hlbiBQYWtldHMgZ2VzZXR6dCkuIEFsbGUgUGFyYW1ldGVyIGRlcyBCZXRyZXVlcnNrcmlwdHMgbfxzc2VuIG5hY2gKK7tcLVwtqyBhbiBkYXMgUHJvZ3JhbW0gd2VpdGVyZ2VsZWl0ZXQgd2VyZGVuLgorLlAKK0FrdHVlbGxlIEltcGxlbWVudGllcnVuZzogZGFzIFxmQnByZWluc3RcZlAg/GJlcnBy/GZ0LCBvYiBkaWUgQ29uZmZpbGUKK3ZlcuRuZGVydCB3dXJkZSwgZmFsbHMgamEsIHZlcmJsZWlidCBzaWUgYW0gUGxhdHosIGFuZGVybmZhbGxzIHdpcmQgc2llIGluCitcZklhbHRlQ29uZmZpbGVcZlBcZkIuZHBrZ1wtcmVtb3ZlXGZQIHVtYmVuYW5udC4gQmVpIGRlciBLb25maWd1cmF0aW9uIGVudGZlcm50IGRhcworXGZCcG9zdGluc3RcZlAgXGZJYWx0ZUNvbmZmaWxlXGZQXGZCLmRwa2dcLXJlbW92ZVxmUCB1bmQgYmVubmVudCBcZklhbHRlQ29uZmZpbGVcZlAgaW4KK1xmSW5ldWVDb25mZmlsZVxmUCB1bSwgZmFsbHMgXGZJYWx0ZUNvbmZmaWxlXGZQIG5vY2ggZXhpc3RpZXJ0LiBGYWxscworYWJvcnRcLXVwZ3JhZGUvYWJvcnRcLWluc3RhbGwgZWludHJpdHQsIGJlbmVubnQgZGFzIFxmQnBvc3RybVxmUCB3aWVkZXIKK1xmSWFsdGVDb25mZmlsZVxmUFxmQi5kcGtnXC1yZW1vdmVcZlAgaW4gXGZJYWx0ZUNvbmZmaWxlXGZQIHp1cvxjaywgZmFsbHMgbm90d2VuZGlnLgorLgorLlNIICJJTlRFR1JBVElPTiBJTiBQQUtFVEUiCisuUAorRGEgXGZCZHBrZ1wtbWFpbnRzY3JpcHRcLWhlbHBlclxmUCBpbSBcZkJwcmVpbnN0XGZQIHZlcndhbmR0IHdpcmQsIGJlbvZ0aWd0IGRlcgorYmVkaW5ndW5nc2xvc2UgRWluc2F0eiBlaW5lIHByZVwtQWJo5G5naWdrZWl0IChcZklwcmVcLWRlcGVuZGVuY3lcZlApLCB1bQorc2ljaGVyenVzdGVsbGVuLCBkYXNzIGRpZSBNaW5kZXN0dmVyc2lvbiB2b24gRHBrZyBicmVpdHMgZW50cGFja3Qgd3VyZGUuIERpZQorYmVu9nRpZ3RlIFZlcnNpb24gaORuZ3Qgdm9tIHZlcndhbmR0ZW4gQmVmZWhsIGFiLCBm/HIgXGZCcm1fY29uZmZpbGVcZlAgdW5kCitcZkJtdl9jb25mZmlsZVxmUCBsYXV0ZXQgc2llIDEuMTUuNy4yOgorLlAKKyAgICBcZkJQcmVcLURlcGVuZHM6XGZQIGRwa2cgKD49IDEuMTUuNy4yKQorLlAKK0luIHZpZWxlbiBG5GxsZW4gc2luZCBhYmVyIGRpZSBBdXNm/GhydW5nZW4gZGVzIFByb2dyYW1tcyBm/HIgZGFzIFBha2V0CituaWNodCBrcml0aXNjaCB1bmQgc3RhdHQgZWluZXIgcHJlXC1BYmjkbmdpZ2tlaXQgc29sbCBkYXMgUHJvZ3JhbW0gbnVyCithdWZnZXJ1ZmVuIHdlcmRlbiwgZmFsbHMgYmVrYW5udCBpc3QsIGRhc3MgZGVyIGJlbvZ0aWd0ZSBCZWZlaGwgdm9tIGRlcnplaXQKK2luc3RhbGxpZXJ0ZW4gRHBrZyB1bnRlcnN0/HR6dCB3aXJkOgorLlAKKyAgICBpZiBkcGtnXC1tYWludHNjcmlwdFwtaGVscGVyIHN1cHBvcnRzIFxmSWNvbW1hbmRcZlA7IHRoZW4KKyAgICAgICAgZHBrZ1wtbWFpbnRzY3JpcHRcLWhlbHBlciBcZkljb21tYW5kXGZQIC4uLgorICAgIGZpCisuCisuU0ggQVVUT1JFTgorQ29weXJpZ2h0IFwoY28gMjAxMCBSYXBoYVxbOmVdbCBIZXJ0em9nCisuYnIKK0NvcHlyaWdodCBcKGNvIDIwMDggSm9leSBIZXNzCisuYnIKK0NvcHlyaWdodCBcKGNvIDIwMDcgR3VpbGxlbSBKb3ZlcgorLmJyCitDb3B5cmlnaHQgXChjbyAyMDA1IFNjb3R0IEphbWVzIFJlbW5hbnQKKy5zcAorRGllcyBpc3QgRnJlaWUgU29mdHdhcmU7IGxlc2VuIFNpZSBkaWUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgVmVyc2lvbiAyCitvZGVyIG5ldWVyIGb8ciBkaWUgS29waWVyYmVkaW5ndW5nZW4uIEVzIGdpYnQgS0VJTkUgSGFmdHVuZy4KKworLlNIINxCRVJTRVRaVU5HCitEaWUgZGV1dHNjaGUg3GJlcnNldHp1bmcgd3VyZGUgMjAwNCwgMjAwNi0yMDExIHZvbiBIZWxnZSBLcmV1dHptYW5uCis8ZGViaWFuQGhlbGdlZmplbGwuZGU+LCAyMDA3IHZvbiBGbG9yaWFuIFJlaG5pc2NoIDxlaXhtYW5AZ214LmRlPiB1bmQKKzIwMDggdm9uIFN2ZW4gSm9hY2hpbSA8c3ZlbmpvYWNAZ214LmRlPgorYW5nZWZlcnRpZ3QuIERpZXNlINxiZXJzZXR6dW5nIGlzdCBGcmVpZSBEb2t1bWVudGF0aW9uOyBsZXNlbiBTaWUgZGllCitHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBWZXJzaW9uIDIgb2RlciBuZXVlciBm/HIgZGllIEtvcGllcmJlZGluZ3VuZ2VuLgorRXMgZ2lidCBLRUlORSBIQUZUVU5HLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vZGUvZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMSBiL2Rwa2ctMS4xNi4xLjEvbWFuL2RlL2Rwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZjIwMjA2MAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL2RlL2Rwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjEKQEAgLTAsMCArMSw4NSBAQAorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlwiCisuXCIgVGhpcyBmaWxlIHdhcyBnZW5lcmF0ZWQgd2l0aCBwbzRhLiBUcmFuc2xhdGUgdGhlIHNvdXJjZSBmaWxlLgorLlwiCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuVEggZHBrZ1wtbWVyZ2VjaGFuZ2Vsb2dzIDEgMjAxMVwtMDhcLTE0IERlYmlhblwtUHJvamVrdCBkcGtnXC1Qcm9ncmFtbXNhbW1sdW5nCisuU0ggTkFNRQorZHBrZ1wtbWVyZ2VjaGFuZ2Vsb2dzIFwtIDNcLVdlZ2VcLVp1c2FtbWVuZvxocnVuZyB2b24gZGViaWFuL2NoYW5nZWxvZ1wtRGF0ZWllbgorLgorLlNIINxCRVJTSUNIVAorXGZCZHBrZ1wtbWVyZ2VjaGFuZ2Vsb2dzXGZQIFtcZklPcHRpb25cZlAuLi5dIFxmSWFsdFxmUCBcZkluZXVcLWFcZlAgXGZJbmV1XC1iXGZQIFtcZklBdXNnYWJlXGZQXQorLgorLlNIIEJFU0NIUkVJQlVORworLlAKK0RpZXNlcyBQcm9ncmFtbSB3aXJkIGRpZSBkcmVpIGJlcmVpdGdlc3RlbGx0ZW4gVmVyc2lvbmVuIGRlcworRGViaWFuXC1DaGFuZ2Vsb2dzIHZlcndlbmRlbiwgdW0gZWluZSB6dXNhbW1lbmdlZvxocnRlIENoYW5nZWxvZ1wtRGF0ZWkgenUKK2Vyc3RlbGxlbi4gRGFzIHJlc3VsdGllcmVuZGUgQ2hhbmdlbG9nIHdpcmQgaW4gZGVyIERhdGVpIFxmSUF1c2dhYmVcZlAKK2dlc3BlaWNoZXJ0IG9kZXIgYW4gZGllIFN0YW5kYXJkYXVzZ2FiZSBhdXNnZWdlYmVuLCBmYWxscyBkaWVzZXIgUGFyYW1ldGVyCitmZWhsdC4KKy5QCitKZWRlciBFaW50cmFnIHdpcmQgZHVyY2ggc2VpbmUgVmVyc2lvbnNudW1tZXIgaWRlbnRpZml6aWVydCB1bmQgZXMgd2lyZAorYW5nZW5vbW1lbiwgZGFzcyBzaWUgbmljaHQgaW0gS29uZmxpa3Qgc3RlaGVuLCBzaWUgd2VyZGVuIGVpbmZhY2ggaW4gZGVyCityaWNodGlnZW4gUmVpaGVuZm9sZ2UgZWluZ2VtaXNjaHQgKGluIGFic3RlaWdlbmRlciBSZWloZW5mb2xnZSkuIFdlbm4KK1xmQlwtXC1tZXJnZVwtcHJlcmVsZWFzZXNcZlAgdmVyd2FuZHQgd2lyZCwgd2lyZCBkZXIgQW50ZWlsIGRlciBWZXJzaW9uc251bW1lcgorbmFjaCBkZXIgbGV0enRlbiBUaWxkZSBlbnRmZXJudCwgc28gZGFzcyAxLjBcLTF+ZXhwMSB1bmQgMS4wXC0xfmV4cDUgYWxzCitnbGVpY2hlciBFaW50cmFnIGFuZ2Vub21tZW4gd2VyZGVuLiBXZW5uIGRpZSBnbGVpY2hlIFZlcnNpb24gc293b2hsIGluCitcZkluZXVcLWFcZlAgYWxzIGF1Y2ggaW4gXGZJbmV1XC1iXGZQIHZlcmb8Z2JhciBpc3QsIHdpcmQgZWluZSBub3JtYWxlLAoremVpbGVuYmFzaWVydGUgM1wtV2VnZVwtWnVzYW1tZW5m/GhydW5nIHZlcnN1Y2h0ICh2b3JhdXNnZXNldHp0LCBkYXNzIGRhcworTW9kdWwgQWxnb3JpdGhtOjpNZXJnZSB2ZXJm/GdiYXIgaXN0IFxbZW1dIGVzIGlzdCBUZWlsIGRlcyBQYWtldHMKK2xpYmFsZ29yaXRobVwtbWVyZ2VcLXBlcmwgXFtlbV0gYW5kZXJuZmFsbHMgZXJoYWx0ZW4gU2llIGVpbmVuIGdsb2JhbGVuCitLb25mbGlrdCBpbSBJbmhhbHQgZGVzIEVpbnRyYWdzKS4KKy4KKy5TSCBPUFRJT05FTgorLlRQIAorXGZCXC1cLW1lcmdlXC1wcmVyZWxlYXNlc1xmUCwgXGZCXC1tXGZQCitFbnRmZXJudCBkZW4gVGVpbCBuYWNoIGRlciBsZXR6dGVuIFRpbGRlIGluIGRlciBWZXJzaW9uc251bW1lciBiZWltCitWZXJzaW9uc3ZlcmdsZWljaCwgdW0gZmVzdHp1c3RlbGxlbiwgb2IgendlaSBFaW50cuRnZSBpZGVudGlzY2ggc2VpbiBzb2xsZW4KK29kZXIgbmljaHQuCisuc3AKK0RpZXMgaXN0IG78dHpsaWNoLCB3ZW5uIFNpZSBkZW4gZ2xlaWNoZW4gQ2hhbmdlbG9nXC1FaW50cmFnIGJlaWJlaGFsdGVuLCBhYmVyCityZWdlbG3k32lnIGRpZSBWZXJzaW9uc251bW1lciBlcmj2aGVuLiBCZWlzcGllbHN3ZWlzZSBr9m5udGVuIFNpZQorMi4zXC0xfmV4cDEsIDIuM1wtMX5leHAyLCAuLi4gYmlzIHp1ciBvZmZpemllbGxlbiBWZXL2ZmZlbnRsaWNodW5nIDIuM1wtMQordmVyd2VuZGVuIHVuZCBhbGxlIGVudGhhbHRlbiBkZW4gZ2xlaWNoZW4gQ2hhbmdlbG9nXC1FaW50cmFnLCBkZXIgc2ljaCBpbQorTGF1ZmUgZGVyIFplaXQgZW50d2lja2VsdCBoYXQuCisuVFAgCitcZkJcLVwtaGVscFxmUAorWmVpZ2UgZGVuIEJlZGllbnVuZ3NoaW53ZWlzIHVuZCBiZWVuZGUuCisuVFAgCitcZkJcLVwtdmVyc2lvblxmUAorR2ViZSBkaWUgVmVyc2lvbiBhdXMgdW5kIGJlZW5kZSBzaWNoLgorLgorLlNIIEVJTlNDSFLETktVTkdFTgorLlAKK0FsbGVzLCB3YXMgbmljaHQgdm9uIERwa2c6OkNoYW5nZWxvZyBhdXNnZXdlcnRldCB3ZXJkZW4ga2FubiwgZ2VodCBiZWltCitadXNhbW1lbmb8aHJlbiB2ZXJsb3Jlbi4gRGllcyBiZXRyaWZmdCBaZXVnIHdpZSBNb2RlbGluZXMgdm9uIFZpbSwKK0tvbW1lbnRhcmUsIGRpZSBlaWdlbnRsaWNoIG5pY2h0IGRhIHNlaW4gc29sbHRlbiwgdXN3LgorLgorLlNIICJJTlRFR1JBVElPTiBNSVQgR0lUIgorLlAKK0ZhbGxzIFNpZSBkaWVzZXMgUHJvZ3JhbW0gZGF6dSB2ZXJ3ZW5kZW4gbfZjaHRlbiwgRGViaWFuXC1DaGFuZ2Vsb2dcLURhdGVpZW4KK2luIGVpbmVtIEdpdFwtRGVwb3QgenVzYW1tZW56dWb8aHJlbiwgbfxzc2VuIFNpZSB6dWVyc3QgZWluZW4gbmV1ZW4KK01lcmdlXC1Ecml2ZXIgaW4gXGZCLmdpdC9jb25maWdcZlAgb2RlciBpbiBcZkJ+Ly5naXRjb25maWdcZlAgcmVnaXN0cmllcmVuOgorLlAKKyBbbWVyZ2UgImRwa2dcLW1lcmdlY2hhbmdlbG9ncyJdCisgICAgIG5hbWUgPSBkZWJpYW4vY2hhbmdlbG9nIG1lcmdlIGRyaXZlcgorICAgICBkcml2ZXIgPSBkcGtnXC1tZXJnZWNoYW5nZWxvZ3MgXC1tICVPICVBICVCICVBCisuUAorRGFubiBt/HNzZW4gU2llIGVudHdlZGVyIGluIFxmQi5naXRhdHRyaWJ1dGVzXGZQIGltIERlcG90IHNlbGJzdCBvZGVyIGluCitcJlxmQi5naXQvaW5mby9hdHRyaWJ1dGVzXGZQIGRhcyBNZXJnZVwtQXR0cmlidXQgZvxyIGRpZSBEYXRlaSBkZWJpYW4vY2hhbmdlbG9nCitlaW5yaWNodGVuOgorLlAKKyBkZWJpYW4vY2hhbmdlbG9nIG1lcmdlPWRwa2dcLW1lcmdlY2hhbmdlbG9ncworLlNIIEFVVE9SCitDb3B5cmlnaHQgXChjbyAyMDA5XC0yMDEwIFJhcGhhXFs6ZV1sIEhlcnR6b2cKKy5zcAorRGllcyBpc3QgRnJlaWUgU29mdHdhcmU7IGxlc2VuIFNpZSBkaWUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgVmVyc2lvbiAyCitvZGVyIG5ldWVyIGb8ciBkaWUgS29waWVyYmVkaW5ndW5nZW4uIEVzIGdpYnQgS0VJTkUgSGFmdHVuZy4KKworLlNIINxCRVJTRVRaVU5HCitEaWUgZGV1dHNjaGUg3GJlcnNldHp1bmcgd3VyZGUgMjAwNCwgMjAwNi0yMDExIHZvbiBIZWxnZSBLcmV1dHptYW5uCis8ZGViaWFuQGhlbGdlZmplbGwuZGU+LCAyMDA3IHZvbiBGbG9yaWFuIFJlaG5pc2NoIDxlaXhtYW5AZ214LmRlPiB1bmQKKzIwMDggdm9uIFN2ZW4gSm9hY2hpbSA8c3ZlbmpvYWNAZ214LmRlPgorYW5nZWZlcnRpZ3QuIERpZXNlINxiZXJzZXR6dW5nIGlzdCBGcmVpZSBEb2t1bWVudGF0aW9uOyBsZXNlbiBTaWUgZGllCitHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBWZXJzaW9uIDIgb2RlciBuZXVlciBm/HIgZGllIEtvcGllcmJlZGluZ3VuZ2VuLgorRXMgZ2lidCBLRUlORSBIQUZUVU5HLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vZGUvZHBrZy1uYW1lLjEgYi9kcGtnLTEuMTYuMS4xL21hbi9kZS9kcGtnLW5hbWUuMQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zMTU1NjgxCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vZGUvZHBrZy1uYW1lLjEKQEAgLTAsMCArMSwxMDkgQEAKKy5cIiBUaGlzIGlzIGFuIC0qLSBucm9mZiAtKi0gc291cmNlIGZpbGUuCisuXCIgZHBrZy1uYW1lIGFuZCB0aGlzIG1hbnBhZ2UgYXJlIENvcHlyaWdodCDCqSAxOTk1LDE5OTYgYnkgRXJpY2sgQnJhbmRlcmhvcnN0LgorLlwiCisuXCIgVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbmNlIHZlcnNpb24gMgorLlwiIG9yIGxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuICBUaGVyZSBpcyBOTyB3YXJyYW50eS4KKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlRIIGRwa2dcLW5hbWUgMSAyMDExXC0wOFwtMTQgRGViaWFuXC1Qcm9qZWt0IGRwa2dcLUhpbGZzcHJvZ3JhbW1lCisuU0ggTkFNRQorZHBrZ1wtbmFtZSBcLSBEZWJpYW5cLVBha2V0ZSB6dSB2b2xsZW4gUGFrZXRuYW1lbiB1bWJlbmVubmVuCisuCisuU0gg3EJFUlNJQ0hUCitcZkJkcGtnXC1uYW1lXGZQIFtcZklPcHRpb25cZlAuLi5dIFtcZkJcLVwtXGZQXSBcZklEYXRlaVxmUC4uLgorLgorLlNIIEJFU0NIUkVJQlVORworLlBQCitEaWVzZSBIYW5kYnVjaHNlaXRlIGRva3VtZW50aWVydCBkYXMgXGZCZHBrZ1wtbmFtZVxmUFwtUHJvZ3JhbW0sIGRhcyBlaW5lCitlaW5mYWNoZSBN9mdsaWNoa2VpdCBiZXJlaXRzdGVsbHQsIFxmQkRlYmlhblxmUFwtUGFrZXRlIGluIGlocmVuIHZvbGxlbgorUGFrZXRuYW1lbiB1bXp1YmVuZW5uZW4uIEVpbiB2b2xsZXIgUGFrZXRuYW1lIGJlc3RlaHQgYXVzCitcZklQYWtldFxmUFxmQl9cZlBcZklWZXJzaW9uXGZQXGZCX1xmUFxmSUFyY2hpdGVrdHVyXGZQXGZCLlxmUFxmSVBha2V0dHlwXGZQIHdpZSBpbiBkZXIKK1N0ZXVlcmRhdGVpIGRlcyBQYWtldHMgc3BlemlmaXppZXJ0LiBEZXIgXGZJVmVyc2lvblxmUFwtVGVpbCBkZXMgRGF0ZWluYW1lbnMKK2Jlc3RlaHQgYXVzIGRlciBWZXJzaW9uc2luZm9ybWF0aW9uIGRlciBPcmlnaW5hbGF1dG9yZW4gb3B0aW9uYWwgZ2Vmb2xndCB2b24KK2VpbmVtIEdlZGFua2Vuc3RyaWNoIHVuZCBkZXIgUmV2aXNpb25zaW5mb3JtYXRpb24uIERlciBcZklQYWtldHR5cFxmUFwtVGVpbAorZW50c3RhbW10IGRlbSBGZWxkIFxmSXBhY2thZ2VfdHlwZVxmUCAoZmFsbHMgdm9yaGFuZGVuKSBvZGVyIHdpcmQgYXVmIFxmQmRlYlxmUAorZ2VzZXR6dC4KKy4KKy5TSCBPUFRJT05FTgorLlRQIAorXGZCXC1hXGZQLCBcZkJcLVwtbm9cLWFyY2hpdGVjdHVyZVxmUAorRGVyIFppZWxkYXRlaW5hbWUgd2lyZCBrZWluZSBBcmNoaXRla3R1cmluZm9ybWF0aW9uIGVudGhhbHRlbi4KKy5UUCAKK1xmQlwta1xmUCwgXGZCXC1cLXN5bWxpbmtcZlAKK0xlZ2UgZWluZW4gU3ltbGluayBhbiwgYW5zdGF0dCB6dSB2ZXJzY2hpZWJlbi4KKy5UUCAKK1xmQlwtb1xmUCwgXGZCXC1cLW92ZXJ3cml0ZVxmUAorRXhpc3RpZXJlbmRlIERhdGVpZW4gd2VyZGVuIPxiZXJzY2hyaWViZW4sIGZhbGxzIHNpZSBkZW4gZ2xlaWNoZW4gTmFtZW4gd2llCitkZXIgWmllbGRhdGVpbmFtZSBoYWJlbi4KKy5UUCAKK1xmQlwtc1xmUCwgXGZCXC1cLXN1YmRpclxmUCBbXGZJVmVyemVpY2huaXNcZlBdCitEYXRlaWVuIHdlcmRlbiBpbiBlaW4gVW50ZXJ2ZXJ6ZWljaG5pcyB2ZXJzY2hvYmVuLiBGYWxscyBkYXMgYWxzIEFyZ3VtZW50CitleGlzdGllcmVuZGUgVmVyemVpY2huaXMgZXhpc3RpZXJ0LCBkYW5uIHdlcmRlbiBkaWUgRGF0ZWllbiBpbiBkYXMKK1ZlcnplaWNobmlzIHZlcnNjaG9iZW4sIGFuZGVybmZhbGxzIHdpcmQgZGFzIFppZWx2ZXJ6ZWljaG5pcyBhdXMgZGVtCiu7c2VjdGlvbqtcLUZlbGQgZGVzIFN0ZXVlcnRlaWxzIGRlcyBQYWtldHMgZXh0cmFoaWVydC4gRGFzIFppZWx2ZXJ6ZWljaG5pcword2lyZCC7dW5zdGFibGUvYmluYXJ5XC1cZklBcmNoaXRla3R1clxmUC9cZklCZXJlaWNoXGZQqyBzZWluLiBGYWxscyBkZXIgQmVyZWljaAorbmljaHQgaW4gZGVyIFN0ZXVlcmRhdGVpIGdlZnVuZGVuIHdlcmRlbiBrYW5uLCBkYW5uIHdpcmQgu25vXC1zZWN0aW9uqworYW5nZW5vbW1lbiwgdW5kIGluIGRpZXNlbSBGYWxsLCB3aWUgYXVjaCBm/HIgZGllIEJlcmVpY2hlILtub25cLWZyZWWrIHVuZAoru2NvbnRyaWKrIGlzdCBkYXMgWmllbHZlcnplaWNobmlzILtcZklCZXJlaWNoXGZQL2JpbmFyeVwtXGZJQXJjaGl0ZWt0dXJcZlCrLiBEYXMKK0JlcmVpY2hzZmVsZCBtdXNzIG5pY2h0IGFuZ2VnZWJlbiB3ZXJkZW4sIGRhaGVyIHdlcmRlbiB2aWVsZSBQYWtldGUgaWhyZW4KK1dlZyBpbiBkYXMgu25vXC1zZWN0aW9uq1wtR2ViaWV0IGZpbmRlbi4gVmVyd2VuZGVuIFNpZSBkaWVzZSBPcHRpb24gbWl0CitWb3JzaWNodCwgc2llIGlzdCB1bm9yZGVudGxpY2guCisuVFAgCitcZkJcLWNcZlAsIFxmQlwtXC1jcmVhdGVcLWRpclxmUAorRGllc2UgT3B0aW9uIGthbm4genVzYW1tZW4gbWl0IGRlciBPcHRpb24gXC1zIHZlcndlbmRldCB3ZXJkZW4uIEZhbGxzIGRhcworWmllbHZlcnplaWNobmlzIG5pY2h0IGdlZnVuZGVuIHdlcmRlbiBrYW5uLCB3aXJkIGVzIGF1dG9tYXRpc2NoCithbmdlbGVndC4gXGZCVmVyd2VuZGVuIFNpZSBkaWVzZSBPcHRpb24gbWl0IFZvcnNpY2h0LlxmUAorLlRQIAorXGZCXC1oXGZQLCBcZkJcLVwtaGVscFxmUAorWmVpZ2UgZGVuIEJlZGllbnVuZ3NoaW53ZWlzIHVuZCBiZWVuZGUuCisuVFAgCitcZkJcLXZcZlAsIFxmQlwtXC12ZXJzaW9uXGZQCitHZWJlIGRpZSBWZXJzaW9uIGF1cyB1bmQgYmVlbmRlIHNpY2guCisuCisuU0ggQkVJU1BJRUxFCisuVFAgCitcZkJkcGtnXC1uYW1lIGJhclwtZm9vLmRlYlxmUAorRGllIERhdGVpILtiYXJcLWZvby5kZWKrIHdpcmQgaW4gYmFyXC1mb29fMS4wXC0yX2kzODYuZGViIG9kZXIgZXR3YXMg5GhubGljaGVzCisoYWJo5G5naWcgdm9uIGRlciBJbmZvcm1hdGlvbiwgZGllIGluIGRlbSBTdGV1ZXJ0ZWlsIHZvbiC7YmFyXC1mb28uZGViqyBpc3QpCit1bWJlbmFubnQuCisuVFAgCitcZkJmaW5kIC9yb290L2RlYmlhbi8gXC1uYW1lIFwoYXEqLmRlYlwoYXEgfCB4YXJncyBcLW4gMSBkcGtnXC1uYW1lIFwtYVxmUAorQWxsZSBEYXRlaWVuIG1pdCBkZXIgRW5kdW5nILtkZWKrIGltIFZlcnplaWNobmlzIC9yb290L2RlYmlhbiB1bmQgc2VpbmVyCitVbnRlcnZlcnplaWNobmlzc2Ugd2VyZGVuIHZvbiBkcGtnXC1uYW1lIFwtIGZhbGxzIG5vdHdlbmRpZyBcLSBvaG5lCitBcmNoaXRla3R1cmluZm9ybWF0aW9uIHVtYmVuYW5udC4KKy5UUCAKK1xmQmZpbmQgXC1uYW1lIFwoYXEqLmRlYlwoYXEgfCB4YXJncyBcLW4gMSBkcGtnXC1uYW1lIFwtYSBcLW8gXC1zIFwtY1xmUAorXGZCTWFjaGVuIFNpZSBkaWVzIG5pY2h0LlxmUCBJaHIgQXJjaGl2IHdpcmQgZWluZSBrb21wbGV0dGUgU2Nod2VpbmVyZWkgd2VyZGVuLAorZGEgdmllbGUgUGFrZXRlIG5pY2h0IG1pdCBCZXJlaWNoc2luZm9ybWF0aW9uZW4ga29tbWVuLiBcZkJNYWNoZW4gU2llIGRpZXMKK25pY2h0LlxmUAorLlRQIAorXGZCZHBrZyBcLVwtYnVpbGQgZGViaWFuXC10bXAgJiYgZHBrZ1wtbmFtZSBcLW8gXC1zIC4uIGRlYmlhblwtdG1wLmRlYlxmUAorRGllcyBrYW5uIGJlaW0gQmF1IG5ldWVyIFBha2V0ZSB2ZXJ3ZW5kZXQgd2VyZGVuLgorLgorLlNIIEZFSExFUgorRWluaWdlIFBha2V0ZSBmb2xnZW4gbmljaHQgZGVyIE5hbWVuc3N0cnVrdHVyCitcZklQYWtldFxmUFxmQl9cZlBcZklWZXJzaW9uXGZQXGZCX1xmUFxmSUFyY2hpdGVrdHVyXGZQXGZCLmRlYlxmUC4gUGFrZXRlLCBkaWUgdm9uIGRwa2dcLW5hbWUKK3VtYmVuYW5udCB3dXJkZW4sIGZvbGdlbiBkaWVzZXIgU3RydWt0dXIuIEltIEFsbGdlbWVpbmVuIGhhdCBkaWVzZSBrZWluZW4KK0VpbmZsdXNzIGRhcmF1Ziwgd2llIFBha2V0ZSB2b24gXGZCZHNlbGVjdFxmUCgxKS9cZkJkcGtnXGZQKDEpIGluc3RhbGxpZXJ0IHdlcmRlbiwKK2FiZXIgYW5kZXJlIEluc3RhbGxhdGlvbnN3ZXJremV1Z2Uga/ZubmVuIHZvbiBkaWVzZXIgQmVuZW5udW5nc3N0cnVrdHVyCithYmjkbmdlbi4KKy4KKy5TSCDcQkVSU0VUWlVORworRGllIGRldXRzY2hlINxiZXJzZXR6dW5nIHd1cmRlIDIwMDQsIDIwMDYtMjAxMSB2b24gSGVsZ2UgS3JldXR6bWFubgorPGRlYmlhbkBoZWxnZWZqZWxsLmRlPiwgMjAwNyB2b24gRmxvcmlhbiBSZWhuaXNjaCA8ZWl4bWFuQGdteC5kZT4gdW5kCisyMDA4IHZvbiBTdmVuIEpvYWNoaW0gPHN2ZW5qb2FjQGdteC5kZT4KK2FuZ2VmZXJ0aWd0LiBEaWVzZSDcYmVyc2V0enVuZyBpc3QgRnJlaWUgRG9rdW1lbnRhdGlvbjsgbGVzZW4gU2llIGRpZQorR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgVmVyc2lvbiAyIG9kZXIgbmV1ZXIgZvxyIGRpZSBLb3BpZXJiZWRpbmd1bmdlbi4KK0VzIGdpYnQgS0VJTkUgSEFGVFVORy4KKy5TSCAiU0lFSEUgQVVDSCIKK1xmQmRlYlxmUCg1KSwgXGZCZGViXC1jb250cm9sXGZQKDUpLCBcZkJkcGtnXGZQKDEpLCBcZkJkcGtnXC1kZWJcZlAoMSksIFxmQmZpbmRcZlAoMSksCitcZkJ4YXJnc1xmUCgxKS4KKy4KKy5TSCBBVVRPUgorQ29weXJpZ2h0IFwoY28gMTk5NSwxOTk2IEVyaWNrIEJyYW5kZXJob3JzdAorLnNwCitEaWVzIGlzdCBGcmVpZSBTb2Z0d2FyZTsgbGVzZW4gU2llIGRpZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBWZXJzaW9uIDIKK29kZXIgbmV1ZXIgZvxyIGRpZSBLb3BpZXJiZWRpbmd1bmdlbi4gRXMgZ2lidCBLRUlORSBIYWZ0dW5nLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vZGUvZHBrZy1wYXJzZWNoYW5nZWxvZy4xIGIvZHBrZy0xLjE2LjEuMS9tYW4vZGUvZHBrZy1wYXJzZWNoYW5nZWxvZy4xCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjAzZDhjNGMKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9kZS9kcGtnLXBhcnNlY2hhbmdlbG9nLjEKQEAgLTAsMCArMSwxMzcgQEAKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlRIIGRwa2dcLXBhcnNlY2hhbmdlbG9nIDEgMjAxMVwtMDhcLTE0IERlYmlhblwtUHJvamVrdCBkcGtnXC1IaWxmc3Byb2dyYW1tZQorLlNIIE5BTUUKK2Rwa2dcLXBhcnNlY2hhbmdlbG9nIFwtIGF1c3dlcnRlbiB2b24gRGViaWFuIGNoYW5nZWxvZ1wtRGF0ZWllbgorLgorLlNIINxCRVJTSUNIVAorXGZCZHBrZ1wtcGFyc2VjaGFuZ2Vsb2dcZlAgW1xmSU9wdGlvblxmUC4uLl0KKy4KKy5TSCBCRVNDSFJFSUJVTkcKK1xmQmRwa2dcLXBhcnNlY2hhbmdlbG9nXGZQIGxpZXN0IGRhcyDEbmRlcnVuZ3Nwcm90b2tvbGwgKLtjaGFuZ2Vsb2erKSBlaW5lcworZW50cGFja3RlbiBEZWJpYW5cLVF1ZWxsY29kZWJhdW1zIGVpbiwgd2VydGV0IGRpZXNlIGF1cyB1bmQgZ2lidCBkaWUKK0luZm9ybWF0aW9uZW4gaW4gZGVyIFN0YW5kYXJkXC1BdXNnYWJlIGluIG1hc2NoaW5lbmxlc2JhcmVyIEZvcm0gYXVzLgorLgorLlNIIE9QVElPTkVOCisuVFAgCitcZkJcLWxcZlBcZklDaGFuZ2Vsb2dcLURhdGVpXGZQCitHaWJ0IGRpZSDEbmRlcnVuZ3Nwcm90b2tvbGxkYXRlaSBhbiwgYXVzIGRlciBJbmZvcm1hdGlvbmVuIGdlbGVzZW4gd2VyZGVuCitzb2xsZW4uIFN0YW5kYXJkbeTfaWcgXGZCZGViaWFuL2NoYW5nZWxvZ1xmUC4KKy5UUCAKK1xmQlwtRlxmUFxmSUNoYW5nZWxvZ1wtRm9ybWF0XGZQCitHaWJ0IGRhcyBGb3JtYXQgZGVyIMRuZGVydW5nc3Byb3Rva29sbGRhdGVpIGFuLiBTdGFuZGFyZG3k32lnIHdpcmQgZGFzCitGb3JtYXQgYXVzIGVpbmVyIHNwZXppZWxsZW4gWmVpbGUgaW4gZGVyIE7kaGUgZGVzIEVuZGVzIGRlcgorxG5kZXJ1bmdzcHJvdG9rb2xsZGF0ZWkgZ2VsZXNlbiBvZGVyLCBmYWxscyBkaWVzIGZlaGxzY2hs5Gd0LCB3aXJkIGRhcworRGViaWFuXC1TdGFuZGFyZGZvcm1hdCBhbmdlbm9tbWVuLgorLlRQIAorXGZCXC1MXGZQXGZJbGlidmVyemVpY2huaXNcZlAKK1NwZXppZml6aWVyZSBlaW4genVz5HR6bGljaGVzIFZlcnplaWNobmlzLCBkYXNzIG5hY2ggUGFyc2VyXC1Ta3JpcHRlbgorZHVyY2hzdWNodCB3ZXJkZW4gc29sbC4gRGllc2UgVmVyemVpY2huaXMgd2lyZCB2b3IgZGVuCitTdGFuZGFyZHZlcnplaWNobmlzc2VuIChkZXJ6ZWl0IFxmQi91c3IvbG9jYWwvbGliL2Rwa2cvcGFyc2VjaGFuZ2Vsb2dcZlAgdW5kCitcZkIvdXNyL2xpYi9kcGtnL3BhcnNlY2hhbmdlbG9nXGZQKSBkdXJjaHN1Y2h0LgorLlRQIAorXGZCXC1oXGZQLCBcZkJcLVwtaGVscFxmUAorWmVpZ2UgZGVuIEJlZGllbnVuZ3NoaW53ZWlzIHVuZCBiZWVuZGUuCisuVFAgCitcZkJcLVwtdmVyc2lvblxmUAorR2ViZSBkaWUgVmVyc2lvbiBhdXMgdW5kIGJlZW5kZSBzaWNoLgorLlNTIFBhcnNlclwtT3B0aW9uZW46CitEaWUgZm9sZ2VuZGVuIE9wdGlvbmVuIGv2bm5lbiB2ZXJ3ZW5kZXQgd2VyZGVuLCB1bSBkaWUgQXVzZ2FiZSBkZXMKK0NoYW5nZWxvZ1wtUGFyc2VycyB6dSBiZWluZmx1c3Nlbiwgei5CLiBkZW4gQmVyZWljaCBkZXIgRWludHLkZ2Ugb2RlciBkYXMKK0Zvcm1hdCBkZXIgQXVzZ2FiZS4gU2llIG38c3NlbiB2b20gaW4gRnJhZ2Uga29tbWVuZGVuIFBhcnNlclwtU2tyaXB0Cit1bnRlcnN0/HR6dCB3ZXJkZW4uIExlc2VuIFNpZSBhdWNoIFxmQldBUk5VTkdFTlxmUC4KKy5UUCAKK1xmQlwtXC1mb3JtYXRcZlBcZkkgQXVzZ2FiZWZvcm1hdFxmUAorU2V0emUgZGFzIEF1c2dhYmVmb3JtYXQuIERlcnplaXQgd2VyZGVuIGRpZSBXZXJ0ZSBcZklkcGtnXGZQIHVuZCBcZklyZmM4MjJcZlAKK3VudGVyc3T8dHp0LiBcZklkcGtnXGZQIGlzdCBkYXMga2xhc3Npc2NoZSBBdXNnYWJlZm9ybWF0IChlcyBleGlzdGllcnQgbORuZ2VyCithbHMgZGllc2UgT3B0aW9uKSwgZGFzIHZvcmVpbmdlc3RlbGx0IGlzdC4gRXMgYmVzdGVodCBhdXMgZWluZW0gQWJzYXR6IGltCitEZWJpYW5cLVN0ZXVlcmZvcm1hdCAobGVzZW4gU2llIFxmQmRlYlwtY29udHJvbFxmUCg1KSkuIEZhbGxzIG1laHIgYWxzIGVpbgorRWludHJhZyBhbmdlZm9yZGVydCB3aXJkLCBkYW5uIHdlcmRlbiBkaWUgbWVpc3RlbiBGZWxkZXIgYXVzIGRlbSBsZXR6dGVuCitFaW50cmFnIHZlcndlbmRldCwgZmFsbHMgZGllcyBuaWNodCBhbmRlcnMgYW5nZWdlYmVuIHdpcmQ6CisuUlMKKy5UUCAKK1xmQlNvdXJjZTpcZlBcZkkgUGFrZXRuYW1lXGZQCisuVFAgCitcZkJWZXJzaW9uOlxmUFxmSSBWZXJzaW9uXGZQCisuVFAgCitcZkJEaXN0cmlidXRpb246XGZQXGZJIFppZWxcLURpc3RyaWJ1dGlvblxmUAorLlRQIAorXGZCVXJnZW5jeTpcZlBcZkkgRHJpbmdsaWNoa2VpdFxmUAorRGllIGj2Y2hzdGUgRHJpbmdsaWNoa2VpdCBhbGxlciBlbnRoYWx0ZW5lbiBFaW50cuRnZSB3aXJkIHZlcndlbmRldC4KKy5UUCAKK1xmQk1haW50YWluZXI6XGZQXGZJIEF1dG9yXGZQCisuVFAgCitcZkJEYXRlOlxmUFxmSSBEYXR1bVxmUAorLlRQIAorXGZCQ2xvc2VzOlxmUFxmSSBGZWhsZXJudW1tZXJcZlAKK0RpZSBGZWxkZXIgu0Nsb3Nlc6sgYWxsZXIgZW50aGFsdGVuZW4gRWludHLkZ2Ugd2VyZGVuIHp1c2FtbWVuZ2VmYXNzdC4KKy5UUCAKK1xmQkNoYW5nZXM6XGZQXGZJIENoYW5nZWxvZ1wtRWludHLkZ2VcZlAKK0RlciBUZXh0IGFsbGVyIENoYW5nZWxvZ1wtRWludHLkZ2Ugd2lyZCBhbmVpbmFuZGVyZ2Vo5G5ndC4gVW0gYXVzIGRpZXNlbSBGZWxkCitlaW4gZ/xsdGlnZXMgbWVocnplaWxpZ2VzIEZlbGQgaW0gRGViaWFuIFN0ZXVlclwtRm9ybWF0IHp1IGJla29tZW4sIHdlcmRlbgorbGVlcmUgWmVpbGVuIG1pdCBlaW5lbSBlaW56ZWxuZW4gU2F0enB1bmt0IGVyc2V0enQgdW5kIGFsbGUgWmVpbGVuIGR1cmNoIGVpbgorTGVlcnplaWNoZW4gZWluZ2Vy/GNrdC4gRGVyIGdlbmF1ZSBJbmhhbHQgaORuZ3Qgdm9tIENoYW5nZWxvZ1wtRm9ybWF0IGFiLgorLlJFCisuSVAKK0VzIGv2bm5lbiB6dXPkdHpsaWNoZSBiZW51dHplcmRlZmluaWVydGUgRmVsZGVyIHZvcmhhbmRlbiBzZWluLgorLklQCitEYXMgXGZCcmZjODIyXGZQXC1Gb3JtYXQgdmVyd2VuZGV0IGRpZSBnbGVpY2hlbiBGZWxkZXIsIGdpYnQgYWJlciBlaW56ZWxuZQorQWJz5HR6ZSBm/HIgamVkZW4gQ2hhbmdlbG9nXC1FaW50cmFnIGF1cywgc28gZGFzcyBhbGxlIE1ldGFkYXRlbiBm/HIgamVkZW4KK0VpbnRyYWcgZXJoYWx0ZW4gYmxlaWJlbi4KKy5UUCAKK1xmQlwtXC1zaW5jZVxmUCBcZklWZXJzaW9uXGZQLCBcZkJcLXNcZlBcZklWZXJzaW9uXGZQLFxmQiBcLXZcZlBcZklWZXJzaW9uXGZQCitm/GdlIGFsbGUgxG5kZXJ1bmdlbiBuZXVlciBhbHMgYXVzIFxmSVZlcnNpb25cZlAgaGluenUuCisuVFAgCitcZkJcLVwtdW50aWxcZlAgXGZJVmVyc2lvblxmUCwgXGZCXC11XGZQXGZJVmVyc2lvblxmUAorZvxnZSBhbGxlIMRuZGVydW5nZW4g5Gx0ZXIgYWxzIGF1cyBcZklWZXJzaW9uXGZQIGhpbnp1LgorLlRQIAorXGZCXC1cLWZyb21cZlAgXGZJVmVyc2lvblxmUCwgXGZCXC1mXGZQXGZJVmVyc2lvblxmUAorZvxnZSBhbGxlIMRuZGVydW5nZW4gYXVzIG9kZXIgbmV1ZXIgYWxzIGF1cyBcZklWZXJzaW9uXGZQIGhpbnp1LgorLlRQIAorXGZCXC1cLXRvXGZQIFxmSVZlcnNpb25cZlAsIFxmQlwtdFxmUFxmSVZlcnNpb25cZlAKK2b8Z2UgYWxsZSDEbmRlcnVuZ2VuIGF1cyBvZGVyIORsdGVyIGFscyBhdXMgXGZJVmVyc2lvblxmUCBoaW56dS4KKy5UUCAKK1xmQlwtXC1jb3VudFxmUCBcZklBbnphaGxcZlAsIFxmQlwtY1xmUFxmSUFuemFobFxmUCwgXGZCXC1uXGZQXGZJQW56YWhsXGZQCitm/GdlIFxmSUFuemFobFxmUCBFaW50cuRnZSB2b20gS29wZiAob2RlciB2b20gRnXfLCBmYWxscyBcZklBbnphaGxcZlAgbmVnYXRpdiBpc3QpCitoaW56dS4KKy5UUCAKK1xmQlwtXC1vZmZzZXRcZlAgXGZJWmFobFxmUCwgXGZCXC1vXGZQXGZJWmFobFxmUAor5G5kZXJlIGRlbiBTdGFydHB1bmt0IGb8ciBcLVwtY291bnQsIGdleuRobHQgdm9tIEtvcGYgKG9kZXIgRnXfIGZhbGxzLCBmYWxscworXGZJWmFobFxmUCBuZWdhdGl2IGlzdCkuCisuVFAgCitcZkJcLVwtYWxsXGZQCithbGxlIMRuZGVydW5nZW4gYXVmbmVobWVuLiBIaW53ZWlzOiBBbmRlcmUgT3B0aW9uZW4gaGFiZW4ga2VpbmUgV2lya3VuZywKK3dlbm4gZGllc2UgdmVyd2FuZHQgd2lyZC4KKy4KKy5TSCBXQVJOVU5HCitBbGxlIFxmQlBhcnNlclwtT3B0aW9uZW5cZlAgYXXfZXIgXC12IHdlcmRlbiBudXIgdm9uIFxmQmRwa2dcZlAgVmVyc2lvbiAxLjE0LjE2IG9kZXIKK25ldWVyIHVudGVyc3T8dHp0LiBQYXJzZXIgdm9uIERyaXR0ZW4gZvxyIENoYW5nZWxvZ1wtRm9ybWF0ZSBhdd9lciBcZklkZWJpYW5cZlAKK2v2bm50ZW4gbmljaHQgYWxsZSBPcHRpb25lbiB1bnRlcnN0/HR6ZW4uCisuCisuU0ggREFURUlFTgorLlRQIAorXGZCZGViaWFuL2NoYW5nZWxvZ1xmUAorRGllIGNoYW5nZWxvZ1wtRGF0ZWkgd2lyZCB2ZXJ3ZW5kZXQsIHVtIHZlcnNpb25zYWJo5G5naWdlIEluZm9ybWF0aW9uZW4g/GJlcgorZGFzIFF1ZWxscGFrZXQsIHdpZSBiZWlzcGllbHN3ZWlzZSBkaWUgRHJpbmdsaWNoa2VpdCAou3VyZ2VuY3mrKSB1bmQgZGllCitEaXN0cmlidXRpb24gZGVzIFVwbG9hZHMsIGRpZSDEbmRlcnVuZ2VuIHNlaXQgZWluZXIgYmVzdGltbXRlbgorVmVy9mZmZW50bGljaHVuZyB1bmQgZGllIFF1ZWxsdmVyc2lvbnNudW1tZXIgc2VsYnN0IHp1IGVyaGFsdGVuLgorLgorLlNIIEFVVE9SRU4KK0NvcHlyaWdodCBcKGNvIDE5OTVcLTE5OTYgSWFuIEphY2tzb24KKy5icgorQ29weXJpZ2h0IFwoY28gMjAwMCBXaWNoZXJ0IEFra2VybWFuCisuYnIKK0NvcHlyaWdodCBcKGNvIDIwMDcsIDIwMDggRnJhbmsgTGljaHRlbmhlbGQKKy5zcAorRGllcyBpc3QgRnJlaWUgU29mdHdhcmU7IGxlc2VuIFNpZSBkaWUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgVmVyc2lvbiAyCitvZGVyIG5ldWVyIGb8ciBkaWUgS29waWVyYmVkaW5ndW5nZW4uIEVzIGdpYnQgS0VJTkUgSGFmdHVuZy4KKy5TSCDcQkVSU0VUWlVORworRGllIGRldXRzY2hlINxiZXJzZXR6dW5nIHd1cmRlIDIwMDQsIDIwMDYtMjAxMSB2b24gSGVsZ2UgS3JldXR6bWFubgorPGRlYmlhbkBoZWxnZWZqZWxsLmRlPiwgMjAwNyB2b24gRmxvcmlhbiBSZWhuaXNjaCA8ZWl4bWFuQGdteC5kZT4gdW5kCisyMDA4IHZvbiBTdmVuIEpvYWNoaW0gPHN2ZW5qb2FjQGdteC5kZT4KK2FuZ2VmZXJ0aWd0LiBEaWVzZSDcYmVyc2V0enVuZyBpc3QgRnJlaWUgRG9rdW1lbnRhdGlvbjsgbGVzZW4gU2llIGRpZQorR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgVmVyc2lvbiAyIG9kZXIgbmV1ZXIgZvxyIGRpZSBLb3BpZXJiZWRpbmd1bmdlbi4KK0VzIGdpYnQgS0VJTkUgSEFGVFVORy4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL2RlL2Rwa2ctcXVlcnkuMSBiL2Rwa2ctMS4xNi4xLjEvbWFuL2RlL2Rwa2ctcXVlcnkuMQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44YWI2ZDViCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vZGUvZHBrZy1xdWVyeS4xCkBAIC0wLDAgKzEsMjM4IEBACisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkcGtnXC1xdWVyeSAxIDIwMTFcLTA4XC0xNCBEZWJpYW5cLVByb2pla3QgZHBrZ1wtUHJvZ3JhbW1zYW1tbHVuZworLlNIIE5BTUUKK2Rwa2dcLXF1ZXJ5IFwtIGVpbiBXZXJremV1ZywgdW0gZGllIGRwa2dcLURhdGVuYmFuayBhYnp1ZnJhZ2VuCisuCisuU0gg3EJFUlNJQ0hUCitcZkJkcGtnXC1xdWVyeVxmUCBbXGZJT3B0aW9uXGZQLi4uXSBcZklCZWZlaGxcZlAKKy4KKy5TSCBCRVNDSFJFSUJVTkcKK1xmQmRwa2dcLXF1ZXJ5XGZQIGlzdCBlaW4gV2Vya3pldWcsIHVtIEluZm9ybWF0aW9uZW4g/GJlciBQYWtldGUgenUgemVpZ2VuLCBkaWUKK2luIGRlciBcZkJkcGtnXGZQXC1EYXRlbmJhbmsgYXVmZ2Vm/GhydCBzaW5kLgorLgorLlNIIEJFRkVITEUKKy5UUCAKK1xmQlwtbFxmUCwgXGZCXC1cLWxpc3RcZlAgW1xmSVBha2V0bmFtZVwtTXVzdGVyXGZQIC4uLl0KK0xpc3RlIFBha2V0ZSBhdWYsIGRlcmVuIE5hbWVuIGF1ZiBlaW4gYmVzdGltbXRlcyBNdXN0ZXIgcGFzc3QuIEZhbGxzIGtlaW4KK1xmSVBha2V0bmFtZVwtTXVzdGVyXGZQIGFuZ2VnZWJlbiBpc3QsIGxpc3RlIGFsbGUgUGFrZXRlIGluCitcZkkvdmFyL2xpYi9kcGtnL3N0YXR1c1xmUCBhdWYuIERhYmVpIHdlcmRlbiBhbGxlIFBha2V0ZSBhdXNnZXNjaGxvc3NlbiwgZGllCithbHMgu25pY2h0XC1pbnN0YWxsaWVydCBtYXJraWVydCBzaW5kIChkLmguIGZy/GhlciBlbmRn/Gx0aWcgZW50ZmVybnQKK3d1cmRlbikuIEJlYWNodGVuIFNpZSwgZGFzcyBTaWUgd2FocnNjaGVpbmxpY2ggXGZJUGFrZXRuYW1lXC1NdXN0ZXJcZlAgZHVyY2gKK0FuZvxocnVuZ3N6ZWljaGVuIHNjaPx0emVuIG38c3NlbiwgdW0gZGllIFNoZWxsIGFuIGRlciBEYXRlaW5hbWVuXC1FeHBhbnNpb24KK3p1IGhpbmRlcm4uIEZvbGdlbmRlciBCZWZlaGwgbGlzdGV0IGJlaXNwaWVsc3dlaXNlIGFsbGUgUGFrZXRuYW1lbiwgZGllIG1pdAoru2xpYmM2qyBiZWdpbm5lbiwgYXVmOgorCisubmYKKyAgXGZCZHBrZ1wtcXVlcnkgXC1sIFwoYXFsaWJjNipcKGFxXGZQCisuZmkKKworRGllIGVyc3RlbiBkcmVpIFNwYWx0ZW4gZGVyIEF1c2dhYmUgemVpZ2VuIGRpZSBnZXf8bnNjaHRlIEFrdGlvbiwgZGVuCitQYWtldHN0YXR1cyB1bmQgRmVobGVyLCBpbiBkaWVzZXIgUmVpaGVuZm9sZ2UuCisKK0dld/xuc2NodGUgQWt0aW9uOgorLm5mCisgIHUgPSBVbmJla2FubnQKKyAgaSA9IEluc3RhbGxpZXJlbgorICBoID0gSGFsdGVuCisgIHIgPSBFbnRmZXJuZW4KKyAgcCA9IFZvbGxzdORuZGlnIEz2c2NoZW4KKy5maQorCitQYWtldHN0YXR1czoKKy5uZgorICBuID0gTmljaHQgaW5zdGFsbGllcnQKKyAgYyA9IENvbmZpZ1wtRGF0ZWkKKyAgSCA9IEhhbGIgaW5zdGFsbGllcnQKKyAgVSA9IEVudHBhY2t0CisgIEYgPSBGZWhsZ2VzY2hsLiBLb25maWd1cmF0aW9uCisgIFcgPSBUcmlnZ2VyIGVyV2FydGV0CisgIHQgPSBUcmlnZ2VyIGFuaORuZ2lnCisgIGkgPSBJbnN0YWxsaWVydAorLmZpCisKK0ZlaGxlclwtU2NoYWx0ZXI6CisubmYKKyAgPGxlZXI+ID0gKGtlaW4pCisgIFIgPSBOZXVpbnN0YWxsYXRpb24gbm90d2VuZGlnCisuZmkKKworRWluIEdyb99idWNoc3RhYmUgYWxzIFN0YXR1cyBvZGVyIEZlaGxlciB6ZWlndCBhbiwgZGFzcyBkYXMgUGFrZXQKK3dhaHJzY2hlaW5saWNoIHNjaHdlcmUgRmVobGVyIHZlcnVyc2FjaGVuIHdpcmQuIEJpdHRlIGxlc2VuIFNpZSBcZkJkcGtnXGZQKDEpCiv8YmVyIGRpZSBvYmVuIGdlbmFubnRlbiBadXN05G5kZSB1bmQgU2NoYWx0ZXIuCisKK0RhcyBBdXNnYWJlZm9ybWF0IGRpZXNlciBPcHRpb24ga2FubiBuaWNodCBrb25maWd1cmllcnQgd2VyZGVuLCB2YXJpaWVydAorYWJlciBhdXRvbWF0aXNjaCBtaXQgZGVyIFRlcm1pbmFsYnJlaXRlLiBEaWUgQXVzZ2FiZSBpc3QgZvxyIG1lbnNjaGxpY2hlCitMZXNlciBnZWRhY2h0IHVuZCBuaWNodCBsZWljaHQgbWFzY2hpbmVubGVzYmFyLiBMZXNlbiBTaWUg/GJlciBkaWUgT3B0aW9uZW4KK1xmQlwtV1xmUCAoXGZCXC1cLXNob3dcZlApIHVuZCBcZkJcLVwtc2hvd2Zvcm1hdFxmUCwgdW0gZGFzIEF1c2dhYmVmb3JtYXQgenUKK2tvbmZpZ3VyaWVyZW4uCisuVFAgCitcZkJcLVdcZlAsIFxmQlwtXC1zaG93XGZQIFtcZklQYWtldG5hbWVcLU11c3RlclxmUCAuLi5dCitHZW5hdSB3aWUgZGllIFxmQlwtXC1saXN0XGZQXC1PcHRpb24gd2lyZCBkaWVzIGFsbGUgUGFrZXRlLCBkaWUgYXVmIGRhcyBhbmdlZ2ViZW5lCitNdXN0ZXIgcGFzc2VuLCBhdWZm/GhyZW4uIEFsbGVyZGluZ3Mga2FubiBkaWUgQXVzZ2FiZSBtaXQgZGVyCitcZkJcLVwtc2hvd2Zvcm1hdFxmUFwtT3B0aW9uIGFuZ2VwYXNzdCB3ZXJkZW4uIEltIFN0YW5kYXJkYXVzZ2FiZWZvcm1hdCB3aXJkIGVpbmUKK1plaWxlIHBybyBwYXNzZW5kZW0gUGFrZXQgYXVzZ2VnZWJlbiwgd29iZWkgaW4gamVkZXIgWmVpbGUgTmFtZSB1bmQKK2luc3RhbGxpZXJ0ZSBWZXJzaW9uIGRlcyBQYWtldHMgZ2V0cmVubnQgZHVyY2ggZWluZW4gVGFidWxhdG9yIGVudGhhbHRlbgorc2luZC4KKy5UUCAKK1xmQlwtc1xmUCwgXGZCXC1cLXN0YXR1c1xmUCBcZklQYWtldG5hbWVcZlAgLi4uCitCZXJpY2h0ZSBadXN0YW5kIGRlcyBhbmdlZ2ViZW5lbiBQYWtldGVzLiBEaWVzIHplaWd0IG51ciBkZW4gRWludHJhZyBpbiBkZXIKK0RhdGVuYmFuayBkZXIgWnVzdORuZGUgZGVyIGluc3RhbGxpZXJ0ZW4gUGFrZXRlLiBXZW5uIG1laHJlcmUgXGZJUGFrZXRuYW1lXGZQCithdWZnZWb8aHJ0IHNpbmQsIHdlcmRlbiBkaWUgYW5nZWZvcmRlcnRlbiBTdGF0dXNlaW50cuRnZSBkdXJjaCBMZWVyemVpbGVuCitnZXRyZW5udC4KKy5UUCAKK1xmQlwtTFxmUCwgXGZCXC1cLWxpc3RmaWxlc1xmUCBcZklQYWtldG5hbWVcZlAgLi4uCitBdWZm/GhyZW4gdm9uIERhdGVpZW4sIGRpZSBkdXJjaCBcZklQYWtldG5hbWVcZlAgaW5zdGFsbGllcnQgd3VyZGVuLiBXZW5uCittZWhyZXJlIFxmSVBha2V0bmFtZVxmUCBhdWZnZWb8aHJ0IHNpbmQsIHdlcmRlbiBkaWUgYW5nZWZvcmRlcnRlbiBEYXRlaWxpc3RlbgorZHVyY2ggTGVlcnplaWxlbiBnZXRyZW5udC4gQmVhY2h0ZW4gU2llIGFiZXIsIGRhc3MgRGF0ZWllbiwgZGllIGR1cmNoCitQYWtldFwtc3BlemlmaXNjaGUgSW5zdGFsbGF0aW9uc3NrcmlwdGUgYW5nZWxlZ3Qgd3VyZGVuLCBuaWNodCBhdWZnZWb8aHJ0Cit3ZXJkZW4uCisuVFAgCitcZkJcLWNcZlAsIFxmQlwtXC1jb250cm9sXC1wYXRoXGZQIFxmSVBha2V0bmFtZVxmUCBbXGZJU3RldWVyZGF0ZWlcZlBdCitMaXN0ZXQgZGllIFBmYWRlIGb8ciBTdGV1ZXJkYXRlaWVuIGF1ZiwgZGllIHZvbiBcZklQYWtldG5hbWVcZlAgYXVmIElocmVtCitTeXN0ZW0gaW5zdGFsbGllcnQgd3VyZGVuLiBGYWxscyBcZklTdGV1ZXJkYXRlaVxmUCBhbmdlZ2ViZW4gd3VyZGUsIGxpc3RlIG51cgorZGVuIFBmYWQgZvxyIGRpZXNlIFN0ZXVlcmRhdGVpIGF1ZiwgZmFsbHMgc2llIGV4aXN0aWVydC4gXGZCV2FybnVuZzpcZlA6IERpZXNlcgorQmVmZWhsIGlzdCBoYWxiXC32ZmZlbnRsaWNoLCBlciBzb2xsdGUgbnVyIGFscyBsZXR6dGVyIFJldHR1bmdzYW5rZXIgdmVyd2FuZHQKK3dlcmRlbiwgZmFsbHMga2VpbmUgd2VpdGVyZSBTY2huaXR0c3RlbGxlIHZlcmb8Z2JhciBpc3QuIEVyIGv2bm50ZSBzcOR0ZXIKK3ZlcmFsdGV0IHdlcmRlbiwgZmFsbHMgYmVzc2VyZSBTY2huaXR0c3RlbGxlbiBvZGVyIGRpZSBha3R1ZWxsZW4sCitBcmNoaXRla3R1clwtYmVkaW5ndGVuIERlZml6aXRlIGdlbPZzdCB3dXJkZW4uCisuVFAgCitcZkJcLVNcZlAsIFxmQlwtXC1zZWFyY2hcZlAgXGZJRGF0ZWluYW1lXC1TdWNobXVzdGVyXGZQIC4uLgorU3VjaGUgbmFjaCBQYWtldGVuLCBkZW5lbiBQYWtldGVuLCBkaWUgYXVmIGVpbiBiZXN0aW1tdGVzIE11c3RlciBwYXNzZW4sCitnZWj2cmVuLiBEaWUgbm9ybWFsZW4gSm9rZXJ6ZWljaGVuICi7d2lsZGNhcmRzqykgZGVyIFNoZWxsIGv2bm5lbiBpbiBkaWVzZW0KK011c3RlciB2ZXJ3YW5kdCB3ZXJkZW4uIERpZXNlciBCZWZlaGwgd2lyZCB3ZWRlciBkaWUgenVz5HR6bGljaGVuIERhdGVpZW4sCitkaWUgZHVyY2ggQmV0cmV1ZXJcLVNrcmlwdGUgYW5nZWxlZ3Qgd3VyZGVuLCBub2NoIEFsdGVybmF0aXZlbiBhdWZm/GhyZW4uCisuVFAgCitcZkJcLXBcZlAsIFxmQlwtXC1wcmludFwtYXZhaWxcZlAgXGZJUGFrZXRuYW1lXGZQCitaZWlnZSBEZXRhaWxzIPxiZXIgXGZJUGFrZXRuYW1lXGZQIGFuLCB3aWUgZGllc2UgaW4gXGZJL3Zhci9saWIvZHBrZy9hdmFpbGFibGVcZlAKK3ZvcmxpZWdlbi4gV2VubiBtZWhyZXJlIFxmSVBha2V0bmFtZVxmUCBhdWZnZWb8aHJ0IHNpbmQsIHdlcmRlbiBkaWUKK2FuZ2Vmb3JkZXJ0ZW4gXGZJYXZhaWxhYmxlXGZQXC1FaW50cuRnZSBkdXJjaCBMZWVyemVpbGVuIGdldHJlbm50LgorCitCZW51dHplciBBUFRcLWJhc2llcnRlciBPYmVyZmzkY2hlbiBzb2xsdGVuIFxmQmFwdFwtY2FjaGUgc2hvd1xmUCBcZklQYWtldG5hbWVcZlAKK3ZlcndlbmRlbiwgZGEgZGllIERhdGVpIFxmSWF2YWlsYWJsZVxmUCBudXIgYmVpIGRlciBCZW51dHp1bmcgdm9uIFxmQmRzZWxlY3RcZlAKK2FrdHVlbGwgYmxlaWJ0LgorLlRQIAorXGZCXC1oXGZQLCBcZkJcLVwtaGVscFxmUAorWmVpZ2UgZGVuIEJlZGllbnVuZ3NoaW53ZWlzIHVuZCBiZWVuZGUuCisuVFAgCitcZkJcLVwtdmVyc2lvblxmUAorR2ViZSBkaWUgVmVyc2lvbiBhdXMgdW5kIGJlZW5kZSBzaWNoLgorLgorLlNIIE9QVElPTkVOCisuVFAgCitcZkJcLVwtYWRtaW5kaXI9XGZQXGZJVmVyelxmUAorxG5kZXJ0IGRlbiBBYmxhZ2VvcnQgZGVyIFxmQmRwa2dcZlBcLURhdGVuYmFuay4gRGVyIFN0YW5kYXJkb3J0IGlzdAorXGZJL3Zhci9saWIvZHBrZ1xmUC4KKy5UUCAKK1xmQlwtZlxmUCwgXGZCXC1cLXNob3dmb3JtYXQ9XGZQXGZJRm9ybWF0XGZQCitEaWVzZSBPcHRpb24gd2lyZCBkYXp1IHZlcndlbmRldCwgZGFzIEZvcm1hdCBkZXIgQXVzZ2FiZSBhbnp1Z2ViZW4sIGRhcworXGZCXC1cLXNob3dcZlAgdmVyd2VuZGVuIHdpcmQuIERhcyBGb3JtYXQgaXN0IGVpbmUgWmVpY2hlbmtldHRlLCBkaWUgZvxyIGplZGVzCithdWZnZWb8aHJ0ZSBQYWtldCBhdXNnZWdlYmVuIHdpcmQuCisKK0luIGRlciBGb3JtYXR6ZWljaGVua2V0dGUgbGVpdGV0IFwobHFcZkJcZVxmUFwocnEgRXNjYXBlXC1TZXF1ZW56ZW4gZWluOgorCisubmYKKyAgICBcZkJcZW5cZlAgIFplaWxlbnVtYnJ1Y2gKKyAgICBcZkJcZXJcZlAgIFdhZ2Vucvxja2xhdWYKKyAgICBcZkJcZXRcZlAgIFRhYnVsYXRvcgorLmZpCisKK1wobHFcZkJcZVxmUFwocnEgdm9yIGVpbmVtIGFuZGVyZW4gWmVpY2hlbiB1bnRlcmRy/GNrdCBqZWRlIHNwZXppZWxsZSBCZWRldXR1bmcKK2RlcyBmb2xnZW5kZW4gWmVpY2hlbnMuIERpZXMgaXN0IGb8ciBcKGxxXGZCXGVcZlBcKHJxIHVuZCBcKGxxXGZCJFxmUFwocnEKK278dHpsaWNoLgorCitQYWtldGluZm9ybWF0aW9uZW4ga/ZubmVuIGVpbmJlem9nZW4gd2VyZGVuLCBpbmRlbSBWYXJpYWJsZW5yZWZlcmVuemVuIGF1ZgorUGFrZXRmZWxkZXIgZWluZ2Vm/Gd0IHdlcmRlbi4gSGllcmJlaSB3aXJkIGZvbGdlbmRlIFN5bnRheCB2ZXJ3ZW5kZXQ6CitcKGxxXGZCJHtcZlBcZklGZWxkXGZQW1xmQjtcZlBcZklCcmVpdGVcZlBdXGZCfVxmUFwocnEuIEZlbGRlciB3ZXJkZW4gcmVjaHRzYvxuZGlnCithdXNnZWdlYmVuLCBmYWxscyBkaWUgQnJlaXRlIG5pY2h0IG5lZ2F0aXYgaXN0IHVuZCBzb21pdCBsaW5rc2L8bmRpZ2UKK0F1c2dhYmUgZXJmb2xndC4gRGllIGZvbGdlbmRlbiBcZklGZWxkXGZQZXIgd2VyZGVuIHZlcnN0YW5kZW4sIHNpbmQgYWJlciBuaWNodAorbm90d2VuZGlnZXJ3ZWlzZSBpbiBkZXIgU3RhdHVzXC1EYXRlaSB2ZXJm/GdiYXIgKG51ciBpbnRlcm5lIEZlbGRlciBvZGVyCitGZWxkZXIsIGRpZSBpbSBCaW7kcnBha2V0IGFiZ2VzcGVpY2hlcnQgc2luZCwgbGFuZGVuIGRvcnQpOgorCisubmYKKyAgICBcZkJBcmNoaXRlY3R1cmVcZlAKKyAgICBcZkJCdWdzXGZQCisgICAgXGZCQ29uZmZpbGVzXGZQIChpbnRlcm4pCisgICAgXGZCQ29uZmlnXC1WZXJzaW9uXGZQIChpbnRlcm4pCisgICAgXGZCQ29uZmxpY3RzXGZQCisgICAgXGZCQnJlYWtzXGZQCisgICAgXGZCRGVwZW5kc1xmUAorICAgIFxmQkRlc2NyaXB0aW9uXGZQCisgICAgXGZCRW5oYW5jZXNcZlAKKyAgICBcZkJFc3NlbnRpYWxcZlAKKyAgICBcZkJGaWxlbmFtZVxmUCAoaW50ZXJuLCBPYmVyZmzkY2hlblwtYmV6b2dlbikKKyAgICBcZkJIb21lcGFnZVxmUAorICAgIFxmQkluc3RhbGxlZFwtU2l6ZVxmUAorICAgIFxmQk1ENXN1bVxmUCAoaW50ZXJuLCBPYmVyZmzkY2hlblwtYmV6b2dlbikKKyAgICBcZkJNU0RPU1wtRmlsZW5hbWVcZlAgKGludGVybiwgT2JlcmZs5GNoZW5cLWJlem9nZW4pCisgICAgXGZCTWFpbnRhaW5lclxmUAorICAgIFxmQk9yaWdpblxmUAorICAgIFxmQlBhY2thZ2VcZlAKKyAgICBcZkJQcmVcLURlcGVuZHNcZlAKKyAgICBcZkJQcmlvcml0eVxmUAorICAgIFxmQlByb3ZpZGVzXGZQCisgICAgXGZCUmVjb21tZW5kc1xmUAorICAgIFxmQlJlcGxhY2VzXGZQCisgICAgXGZCUmV2aXNpb25cZlAgKHZlcmFsdGV0KQorICAgIFxmQlNlY3Rpb25cZlAKKyAgICBcZkJTaXplXGZQIChpbnRlcm4sIE9iZXJmbORjaGVuXC1iZXpvZ2VuKQorICAgIFxmQlNvdXJjZVxmUAorICAgIFxmQlN0YXR1c1xmUCAoaW50ZXJuKQorICAgIFxmQlN1Z2dlc3RzXGZQCisgICAgXGZCVGFnXGZQIChub3JtYWxlcndlaXNlIG5pY2h0IGluIGRlbSAuZGViIHNvbmRlcm4gaW4gZGVuIFBhY2thZ2VzXC1EYXRlaWVuIGRlcyBEZXBvdHMKKyAgICBcZkJUcmlnZ2Vyc1wtQXdhaXRlZFxmUCAoaW50ZXJuKQorICAgIFxmQlRyaWdnZXJzXC1QZW5kaW5nXGZQIChpbnRlcm4pCisgICAgXGZCVmVyc2lvblxmUAorLmZpCisKK0RpZSBTdGFuZGFyZFwtRm9ybWF0emVpY2hlbmtldHRlIGlzdAorXChscVxmQiR7UGFja2FnZX1cZXQke1ZlcnNpb259XGVuXGZQXChycS4gVGF0c+RjaGxpY2gga/ZubmVuIGF1Y2ggYWxsZSBhbmRlcmVuCitGZWxkZXIsIGRpZSBpbiBkZXIgU3RhdHVzZGF0ZWkgZ2VmdW5kZW4gd2VyZGVuIGv2bm5lbgorKGQuaC4gYmVudXR6ZXJkZWZpbmllcnRlIEZlbGRlciksIGFiZ2VmcmFndCB3ZXJkZW4uIFNpZSB3ZXJkZW4gc28KK2Rhcmdlc3RlbGx0LCB3aWUgc2llIGdlZnVuZGVuIHdlcmRlbiwgZXMgZXJmb2xndCBrZWluZSBVbXdhbmRsdW5nIG9kZXIKK0ZlaGxlcvxiZXJwcvxmdW5nLiBVbSBkZW4gTmFtZW4gZGVzIERwa2dcLUJldHJldWVycyB1bmQgZGllIGluc3RhbGxpZXJ0ZQorVmVyc2lvbiB6dSBlcmhhbHRlbiwga/ZubnRlbiBTaWUgZm9sZ2VuZGVzIGF1c2b8aHJlbjoKKworLm5mCisgIFxmQmRwa2dcLXF1ZXJ5IFwtVyBcLWY9XChhcSR7UGFja2FnZX0gJHtWZXJzaW9ufVxldCR7TWFpbnRhaW5lcn1cZW5cKGFxIGRwa2dcZlAKKy5maQorLgorLlNIIFLcQ0tHQUJFV0VSVAorLlRQIAorXGZCMFxmUAorRGllIGFuZ2Vmb3JkZXJ0ZSBBYmZyYWdlIHd1cmRlIGVyZm9sZ3JlaWNoIGF1c2dlZvxocnQuCisuVFAgCitcZkIxXGZQCitCZWltIExlc2VuIGRlciBLb21tYW5kb3plaWxlIG9kZXIgYmVpbSBBdXNm/GhyZW4gZGVyIEFiZnJhZ2UgdHJhdGVuIFByb2JsZW1lCithdWYuIERhenUgZ2Vo9nJlbiBhdWNoIGtlaW5lIERhdGVpIG9kZXIgUGFrZXQgZ2VmdW5kZW4gKGF132VyIGb8cgorXC1cLWNvbnRyb2xcLXBhdGgpLgorLgorLlNIIFVNR0VCVU5HCisuVFAgCitcZkJEUEtHX0FETUlORElSXGZQCitGYWxscyBnZXNldHp0IHVuZCBkaWUgT3B0aW9uIFxmQlwtXC1hZG1pbmRpclxmUCBuaWNodCB2ZXJ3YW5kdCB3dXJkZSwgd2lyZCBkaWVzCithbHMgRGF0ZW52ZXJ6ZWljaG5pcyB2b24gRHBrZyB2ZXJ3YW5kdC4KKy5UUCAKK1xmQkNPTFVNTlNcZlAKK0RpZXNlIEVpbnN0ZWxsdW5nIGJlZWluZmx1c3N0IGRpZSBBdXNnYWJlIGRlciBcZkJcLVwtbGlzdFxmUFwtT3B0aW9uIGR1cmNoCitWZXLkbmRlcm4gZGVyIEJyZWl0ZSBpaHJlciBBdXNnYWJlLgorLgorLlNIIEFVVE9SCitDb3B5cmlnaHQgXChjbyAyMDAxIFdpY2hlcnQgQWtrZXJtYW4KKy5zcAorRGllcyBpc3QgRnJlaWUgU29mdHdhcmU7IGxlc2VuIFNpZSBkaWUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgVmVyc2lvbiAyCitvZGVyIG5ldWVyIGb8ciBkaWUgS29waWVyYmVkaW5ndW5nZW4uIEVzIGdpYnQgS0VJTkUgSGFmdHVuZy4KKy4KKy5TSCDcQkVSU0VUWlVORworRGllIGRldXRzY2hlINxiZXJzZXR6dW5nIHd1cmRlIDIwMDQsIDIwMDYtMjAxMSB2b24gSGVsZ2UgS3JldXR6bWFubgorPGRlYmlhbkBoZWxnZWZqZWxsLmRlPiwgMjAwNyB2b24gRmxvcmlhbiBSZWhuaXNjaCA8ZWl4bWFuQGdteC5kZT4gdW5kCisyMDA4IHZvbiBTdmVuIEpvYWNoaW0gPHN2ZW5qb2FjQGdteC5kZT4KK2FuZ2VmZXJ0aWd0LiBEaWVzZSDcYmVyc2V0enVuZyBpc3QgRnJlaWUgRG9rdW1lbnRhdGlvbjsgbGVzZW4gU2llIGRpZQorR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgVmVyc2lvbiAyIG9kZXIgbmV1ZXIgZvxyIGRpZSBLb3BpZXJiZWRpbmd1bmdlbi4KK0VzIGdpYnQgS0VJTkUgSEFGVFVORy4KKy5TSCAiU0lFSEUgQVVDSCIKK1xmQmRwa2dcZlAoMSkuCisKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL2RlL2Rwa2ctc2NhbnBhY2thZ2VzLjEgYi9kcGtnLTEuMTYuMS4xL21hbi9kZS9kcGtnLXNjYW5wYWNrYWdlcy4xCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjBmN2QzODEKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9kZS9kcGtnLXNjYW5wYWNrYWdlcy4xCkBAIC0wLDAgKzEsMTA1IEBACisuXCIgQ29weXJpZ2h0IMKpIDE5OTYgTWljaGFlbCBTaGllbGRzIDxzaGllbGRzQGNyb3NzbGluay5uZXQ+CisuXCIgVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgbWF5IHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisuXCIgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKy5cIiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorLlwiIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisuXCIKKy5cIiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisuXCIgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKy5cIiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisuXCIgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKy5cIgorLlwiIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisuXCIgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkcGtnXC1zY2FucGFja2FnZXMgMSAyMDExXC0wOFwtMTQgRGViaWFuXC1Qcm9qZWt0IGRwa2dcLUhpbGZzcHJvZ3JhbW1lCisuU0ggTkFNRQorZHBrZ1wtc2NhbnBhY2thZ2VzIFwtIGVyc3RlbGxlIFBhY2thZ2VzXC1JbmRleFwtRGF0ZWllbgorLgorLlNIINxCRVJTSUNIVAorXGZCZHBrZ1wtc2NhbnBhY2thZ2VzXGZQIFtcZklPcHRpb25cZlAuLi5dIFxmSUJpbuRyXC1WZXJ6XGZQIFtcZklvdmVycmlkZVwtRGF0ZWlcZlAKK1tcZklQZmFkXC1QcuRmaXhcZlBdXSBcZkI+XGZQIFxmSVBha2V0ZVxmUAorLgorLlNIIEJFU0NIUkVJQlVORworXGZCZHBrZ1wtc2NhbnBhY2thZ2VzXGZQIHNjaGF1dCBkdXJjaCBlaW5lbiBCYXVtIHZvbiBEZWJpYW5cLUJpbuRycGFrZXRlbiB1bmQKK2Vyc3RlbGx0IGVpbmUgUGFja2FnZXNcLURhdGVpLCBkaWUgdm9uIFxmQmFwdFxmUCg4KSwgXGZCZHNlbGVjdFxmUCgxKQordXN3LiB2ZXJ3ZW5kZXQgd2lyZCwgdW0gZGVtIEJlbnV0emVyIHp1IGVyeuRobGVuLCB3ZWxjaGUgUGFrZXRlIHp1cgorSW5zdGFsbGF0aW9uIHZlcmb8Z2JhciBzaW5kLiBEaWVzZSBQYWNrYWdlc1wtRGF0ZWllbiBzaW5kIGRpZSBnbGVpY2hlbiwgZGllCithdWNoIGF1ZiBkZW4gRGViaWFuXC1BcmNoaXZcLVNpdGVzIHVuZCBDRFwtUk9NcyB2b3JsaWVnZW4uIFNpZSBr9m5uZW4gc2VsYnN0CitcZkJkcGtnXC1zY2FucGFja2FnZXNcZlAgdmVyd2VuZGVuLCBmYWxscyBTaWUgZWluIFZlcnplaWNobmlzIHZvbiBsb2thbGVuCitQYWtldGVuIHp1ciBJbnN0YWxsYXRpb24gYXVmIGVpbmVtIENsdXN0ZXIgdm9uIE1hc2NoaW5lbiBhbmxlZ2VuLgorLlBQCitcZkJIaW53ZWlzOlxmUCBGYWxscyBTaWUgYXVmIGRpZSBlcnpldWd0ZSBQYWNrYWdlc1wtRGF0ZWkgbWl0IFxmQmFwdFxmUCB6dWdyZWlmZW4KK3dvbGxlbiwgd2VyZGVuIFNpZSB3YWhyc2NoZWlubGljaCBkaWUgRGF0ZWkgbWl0IFxmQmJ6aXAyXGZQKDEpIGtvbXByaW1pZXJlbgorbfxzc2VuICh1bmQgZGFtaXQgZWluIFBhY2thZ2VzLmJ6MlwtRGF0ZWkgZXJzdGVsbGVuKS4gQXB0IGlnbm9yaWVydCBcLQorYWJnZXNlaGVuIHZvbiBsb2thbGVtIFp1Z3JpZmYgKGQuaC4g/GJlciBcZkJmaWxlOi8vXGZQXC1RdWVsbGVuKSBcLQordW5rb21wcmltaWVydGUgUGFja2FnZXNcLURhdGVpZW4uCisuUFAKK1xmSUJpbuRyXC1WZXJ6XGZQIGlzdCBkZXIgTmFtZSBkZXMgenUgdmVyYXJiZWl0ZW5kZW4gQmF1bXMgdm9uIEJpbuRycGFrZXRlbgorKGJlaXNwaWVsc3dlaXNlIFxmQmNvbnRyaWIvYmluYXJ5XC1pMzg2XGZQKS4gQW0gYmVzdGVuIHdpcmQgZGllcyByZWxhdGl2IHp1cgorV3VyemVsIGRlcyBEZWJpYW5cLUFyY2hpdnMgZXJzdGVsbHQsIGRhIGplZGVzIEZpbGVuYW1lXC1GZWxkIGluIGRlciBuZXVlbgorUGFja2FnZXNcLURhdGVpIG1pdCBkaWVzZXIgWmVpY2hlbmtldHRlIGJlZ2lubmVuIHdpcmQuCisuUFAKK1xmSW92ZXJyaWRlXC1EYXRlaVxmUCBpc3QgZGVyIE5hbWUgZWluZXIgZWluenVsZXNlbmRlbiBEYXRlaSwgZGllIEluZm9ybWF0aW9uZW4KK2RhcvxiZXIgZW50aORsdCwgd2llIGRhcyBQYWtldCBpbiBkaWUgRGlzdHJpYnV0aW9uIHBhc3N0IChzaWUga2FubiBlaW5lCitrb21wcmltaWVydGUgRGF0ZWkgc2Vpbik7IHNpZWhlIFxmQmRlYlwtb3ZlcnJpZGVcZlAoNSkuCisuUFAKK1xmSVBmYWRcLVBy5GZpeFxmUCBpc3QgZWluZSBvcHRpb25hbGUgWmVpY2hlbmtldHRlLCBkaWUgdm9yIGRhcyBEYXRlaW5hbWVuZmVsZAorZ2Vo5G5ndCB3ZXJkZW4gc29sbC4KKy5QUAorRmFsbHMgbWVociBhbHMgZWluZSBWZXJzaW9uIGVpbmVzIFBha2V0ZXMgZ2VmdW5kZW4gd2lyZCwgd2lyZCBudXIgZGFzIG5ldXN0ZQoraW4gZGllIEF1c2dhYmUgYXVmZ2Vub21tZW4uIEZhbGxzIHNpZSBkaWUgZ2xlaWNoZSBWZXJzaW9uIGhhYmVuIHVuZCBzaWNoIG51cgoraW4gZGVyIEFyY2hpdGVrdHVyIHVudGVyc2NoZWlkZW4sIHdpcmQgZGFzIHp1ZXJzdCBnZWZ1bmRlbmUgdmVyd2VuZGV0LgorLgorLlNIIE9QVElPTkVOCisuVFAgCitcZkJcLXRcZlAsIFxmQlwtXC10eXBlXGZQIFxmSVR5cFxmUAorU3VjaGUgbmFjaCAqLlxmSVR5cFxmUCBzdGF0dCAqLmRlYlwtUGFrZXRlbi4KKy5UUCAKK1xmQlwtdVxmUCwgXGZCXC1cLXVkZWJcZlAKK1xmQlZlcmFsdGV0ZXJcZlAgQWxpYXMgZvxyIFxmQlwtdHVkZWJcZlAuCisuVFAgCitcZkJcLWVcZlAsIFxmQlwtXC1leHRyYVwtb3ZlcnJpZGVcZlAgXGZJRGF0ZWlcZlAKK0R1cmNoc3VjaGUgXGZJRGF0ZWlcZlAsIHVtIHp1c+R0emxpY2hlIE92ZXJyaWRlcyB6dSBmaW5kZW4gKGRpZSBEYXRlaSBrYW5uCitrb21wcmltaWVydCBzZWluKS4gTGVzZW4gU2llIFxmQmRlYlwtZXh0cmFcLW92ZXJyaWRlXGZQKDUpIGb8ciB3ZWl0ZXJlCitJbmZvcm1hdGlvbmVuIPxiZXIgZGVyZW4gRm9ybWF0LgorLlRQIAorXGZCXC1hXGZQLCBcZkJcLVwtYXJjaFxmUCBcZklhcmNoXGZQCitWZXJ3ZW5kZSBlaW4gTXVzdGVyLCBkYXMgYXVzIFxmSSpfYWxsLmRlYlxmUCB1bmQgXGZJKl9hcmNoLmRlYlxmUCBiZXN0ZWh0LCBzdGF0dAorbmFjaCBhbGxlbiBEZWJzIHp1IHN1Y2hlbi4KKy5UUCAKK1xmQlwtbVxmUCwgXGZCXC1cLW11bHRpdmVyc2lvblxmUAorTmltbSBhbGxlIGdlZnVuZGVuZW4gUGFrZXRlIGluIGRlciBBdXNnYWJlIGF1Zi4KKy5UUCAKK1xmQlwtTVxmUCwgXGZCXC1cLW1lZGl1bVxmUCBcZklJRFwtWmVpY2hlbmtldHRlXGZQCitG/GdlIGVpbiBGZWxkIFhcLU1lZGl1bSBoaW56dSwgZGFzIGRlbiBXZXJ0IHZvbiBcZklJRFwtWmVpY2hlbmtldHRlXGZQCitlbnRo5Gx0LiBEaWVzZXMgRmVsZCB3aXJkIGJlbvZ0aWd0LCBmYWxscyBTaWUgZGllIERhdGVpZW4gXGZCUGFja2FnZXMuY2RcZlAgZvxyCitkZW4gRWluc2F0eiBtaXQgZGVyIE11bHRpY2RcLVp1Z3JpZmZzbWV0aG9kZSB2b24gRHNlbGVjdCBlcnN0ZWxsZW4gd29sbGVuLgorLlRQIAorXGZCXC1oXGZQLCBcZkJcLVwtaGVscFxmUAorWmVpZ2UgZGVuIEJlZGllbnVuZ3NoaW53ZWlzIHVuZCBiZWVuZGUuCisuVFAgCitcZkJcLVwtdmVyc2lvblxmUAorR2ViZSBkaWUgVmVyc2lvbiBhdXMgdW5kIGJlZW5kZSBzaWNoLgorLgorLlNIIERJQUdOT1NFCitcZkJkcGtnXC1zY2FucGFja2FnZXNcZlAgZ2lidCBkaWUgZ2V39mhubGljaGVuIHNlbGJzdGVya2zkcmVuZGVuIEZlaGxlciBhdXMuIEVzCit3YXJudCBhdWNoIPxiZXIgUGFrZXRlLCBkaWUgaW0gZmFsc2NoZW4gVW50ZXJ2ZXJ6ZWljaG5pcyBzaW5kLCBkb3BwZWx0Cit2b3Jrb21tZW4sIGVpbiBGaWxlbmFtZVwtRmVsZCBpbiBpaHJlciBTdGV1ZXJkYXRlaSBoYWJlbiwgaW4gZGVyCitPdmVycmlkZVwtRGF0ZWkgZmVobGVuIG9kZXIgZvxyIGRpZSBCZXRyZXVlclwtU3Vic3RpdHV0aW9uZW4gdm9ybGllZ2VuLCBkaWUKK2tlaW5lbiBFZmZla3QgaGFiZW4uCisuCisuU0gg3EJFUlNFVFpVTkcKK0RpZSBkZXV0c2NoZSDcYmVyc2V0enVuZyB3dXJkZSAyMDA0LCAyMDA2LTIwMTEgdm9uIEhlbGdlIEtyZXV0em1hbm4KKzxkZWJpYW5AaGVsZ2VmamVsbC5kZT4sIDIwMDcgdm9uIEZsb3JpYW4gUmVobmlzY2ggPGVpeG1hbkBnbXguZGU+IHVuZAorMjAwOCB2b24gU3ZlbiBKb2FjaGltIDxzdmVuam9hY0BnbXguZGU+CithbmdlZmVydGlndC4gRGllc2Ug3GJlcnNldHp1bmcgaXN0IEZyZWllIERva3VtZW50YXRpb247IGxlc2VuIFNpZSBkaWUKK0dOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIFZlcnNpb24gMiBvZGVyIG5ldWVyIGb8ciBkaWUgS29waWVyYmVkaW5ndW5nZW4uCitFcyBnaWJ0IEtFSU5FIEhBRlRVTkcuCisuU0ggIlNJRUhFIEFVQ0giCitcZkJkcGtnXGZQKDEpLCBcZkJkc2VsZWN0XGZQKDEpLCBcZkJkZWJcLW92ZXJyaWRlXGZQKDUpLCBcZkJkZWJcLWV4dHJhXC1vdmVycmlkZVxmUCg1KSwKK1xmQmRwa2dcLXNjYW5zb3VyY2VzXGZQKDEpLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vZGUvZHBrZy1zY2Fuc291cmNlcy4xIGIvZHBrZy0xLjE2LjEuMS9tYW4vZGUvZHBrZy1zY2Fuc291cmNlcy4xCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjUyY2I0OTEKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9kZS9kcGtnLXNjYW5zb3VyY2VzLjEKQEAgLTAsMCArMSw4MSBAQAorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlwiCisuXCIgVGhpcyBmaWxlIHdhcyBnZW5lcmF0ZWQgd2l0aCBwbzRhLiBUcmFuc2xhdGUgdGhlIHNvdXJjZSBmaWxlLgorLlwiCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuVEggZHBrZ1wtc2NhbnNvdXJjZXMgMSAyMDExXC0wOFwtMTQgRGViaWFuXC1Qcm9qZWt0IGRwa2dcLUhpbGZzcHJvZ3JhbW1lCisuU0ggTkFNRQorZHBrZ1wtc2NhbnBhY2thZ2VzIFwtIGVyc3RlbGxlIFF1ZWxsXC1JbmRleFwtRGF0ZWllbgorLgorLlNIINxCRVJTSUNIVAorXGZCZHBrZ1wtc2NhbnNvdXJjZXNcZlAgW1xmSU9wdGlvblxmUC4uLl0gXGZJQmlu5HJcLVZlcnpcZlAgW1xmSW92ZXJyaWRlXC1EYXRlaVxmUAorW1xmSVBmYWRcLVByZWZpeFxmUF1dIFxmQj5cZlAgXGZJU291cmNlc1xmUAorLgorLlNIIEJFU0NIUkVJQlVORworXGZCZHBrZ1wtc2NhbnNvdXJjZXNcZlAgZHVyY2hzdWNodCBkYXMg/GJlcmdlYmVuZSBcZklCaW7kclwtVmVyelxmUCBuYWNoCitcJlxmSS5kc2NcZlBcLURhdGVpZW4uIERpZXNlIHdlcmRlbiB2ZXJ3ZW5kZXQsIHVtIGVpbmVuIERlYmlhblwtUXVlbGxcLUluZGV4IHp1CitlcnN0ZWxsZW4sIGRlciBhdWYgZGVyIFN0YW5kYXJkYXVzZ2FiZSBhdXNnZWdlYmVuIHdpcmQuCisuUFAKK0RpZSBcZklvdmVycmlkZVwtRGF0ZWlcZlAgd2lyZCwgZmFsbHMgYW5nZWdlYmVuLCB2ZXJ3ZW5kZXQsIHVtIGRpZSBQcmlvcml05HRlbgoraW4gZGVuIGVyZ2ViZW5lbiBJbmRleFwtRGF0ZW5z5HR6ZW4genUgc2V0emVuIHVuZCBzaWNoIPxiZXIgZGFzIEJldHJldWVyXC1GZWxkCitpbiBkZW4gXGZJLmRzY1xmUFwtRGF0ZWllbiBoaW53ZWd6dXNldHplbi4gRGllc2UgRGF0ZWkga2FubiBrb21wcmltaWVydAorc2Vpbi4gTGVzZW4gU2llIFxmQmRwa2dcLXNjYW5wYWNrYWdlc1xmUCgxKSBm/HIgZGFzIEZvcm1hdCBkaWVzZXIKK0RhdGVpLiBccy0xQmVhY2h0ZW4gU2llXHMwOiBEYSBkaWUgb3ZlcnJpZGVcLURhdGVpIG5hY2ggQmlu5HJcLSB1bmQgbmljaHQKK1F1ZWxscGFrZXRlbiBpbmRpemllcnQgd2lyZCwgZ2lidCBlcyBoaWVyIGVpbiBrbGVpbmVzIFByb2JsZW0uIERpZSBha3R1ZWxsZQorSW1wbGVtZW50aWVydW5nIHZlcndlbmRldCBkaWUgaPZjaHN0ZSBQcmlvcml05HQgYWxsZXIgdm9uIGVpbmVyCitcJlxmSS5kc2NcZlBcLURhdGVpIGVyemV1Z3RlbiBCaW7kcnBha2V0ZSBm/HIgZGllIFByaW9yaXTkdCBkZXMgUXVlbGxwYWtldHMsIHVuZAorZGVuIEluaGFsdCBm/HIgZGFzIEhpbndlZ3NldHplbiD8YmVyIGRpZSBCZXRyZXVlclwtSW5mb3JtYXRpb24gYXVzIGRlbQorRWludHJhZyBm/HIgZGFzIGVyc3RlIGluIGRlciBcZkkuZHNjXGZQXC1EYXRlaSBhdWZnZWb8aHJ0ZSBCaW7kcnBha2V0LiBEaWVzCitr9m5udGUgc2ljaCDkbmRlcm4uCisuUFAKK0RlciBcZklQZmFkXC1QcuRmaXhcZlAgd2lyZCwgZmFsbHMgYW5nZWdlYmVuLCB2b3IgZGFzIERpcmVjdG9yeVwtRmVsZCBpbiBkZW0KK2VyemV1Z3RlbiBRdWVsbFwtSW5kZXggdm9yYW5nZXN0ZWxsdC4gU2llIHZlcndlbmRlbiBkaWVzIGltIEFsbGdlbWVpbmVuLAorZGFtaXQgZGFzIERpcmVjdG9yeVwtRmVsZCBkZW4gUGZhZCB2b24gZGVyIFNwaXR6ZSBkZXIgRGViaWFuXC1IaWVyYXJjaGllCitlbnRo5Gx0LgorLgorLlBQCitcZkJIaW53ZWlzOlxmUCBGYWxscyBTaWUgYXVmIGRpZSBlcnpldWd0ZSBTb3VyY2VzXC1EYXRlaSBtaXQgXGZCYXB0XGZQKDgpIHp1Z3JlaWZlbgord29sbGVuLCB3ZXJkZW4gU2llIHdhaHJzY2hlaW5saWNoIGRpZSBEYXRlaSBtaXQgXGZCZ3ppcFxmUCgxKSBrb21wcmltaWVyZW4KK238c3NlbiAodW5kIGRhbWl0IGVpbiBTb3VyY2VzLmd6XC1EYXRlaSBlcnN0ZWxsZW4pLiBBcHQgaWdub3JpZXJ0IFwtIGFiZ2VzZWhlbgordm9uIGxva2FsZW0gWnVncmlmZiAoZC5oLiD8YmVyIFxmQmZpbGU6Ly9cZlBcLVF1ZWxsZW4pIFwtIHVua29tcHJpbWllcnRlCitTb3VyY2VzXC1EYXRlaWVuLgorLgorLlNIIE9QVElPTkVOCisuSVAgIlxmQlwtblxmUCwgXGZCXC1cLW5vXC1zb3J0XGZQIiA0CitTb3J0aWVyZSBkaWUgSW5kZXhcLURhdGVuc+R0emUgbmljaHQuIE5vcm1hbGVyd2Vpc2Ugd2VyZGVuIHNpZSBuYWNoCitRdWVsbHBha2V0bmFtZW4gc29ydGllcnQuCisuVFAgCisuSVAgIlxmQlwtZVxmUCwgXGZCXC1cLWV4dHJhXC1vdmVycmlkZVxmUCBcZklEYXRlaVxmUCIgNAorRHVyY2hzdWNoZSBcZklEYXRlaVxmUCwgdW0genVz5HR6bGljaGUgT3ZlcnJpZGVzIHp1IGZpbmRlbiAoZGllIERhdGVpIGthbm4KK2tvbXByaW1pZXJ0IHNlaW4pLiBMZXNlbiBTaWUgXGZCZGViXC1leHRyYVwtb3ZlcnJpZGVcZlAoNSkgZvxyIHdlaXRlcmUKK0luZm9ybWF0aW9uZW4g/GJlciBkZXJlbiBGb3JtYXQuCisuSVAgIlxmQlwtc1xmUCwgXGZCXC1cLXNvdXJjZVwtb3ZlcnJpZGVcZlAgXGZJRGF0ZWlcZlAiIDQKK1ZlcndlbmRlbiBTaWUgXGZJRGF0ZWlcZlAgYWxzIFF1ZWxsXC1vdmVycmlkZVwtRGF0ZWkgKGRpZSBEYXRlaSBrYW5uIGtvbXByaW1pZXJ0CitzZWluKS4gRGllIFN0YW5kYXJkZWluc3RlbGx1bmcgaXN0IGRlciBOYW1lIGRlciBvdmVycmlkZVwtRGF0ZWksIGRpZSBTaWUKK2FuZ2VnZWJlbiBoYWJlbiwgdW0gXGZJLnNyY1xmUCBlcmfkbnp0LgorLnNwCitEaWUgUXVlbGxcLW92ZXJyaWRlXC1EYXRlaSBoYXQgZWluIGFuZGVyZXMgRm9ybWF0IGFscyBkaWUKK0JpbuRyXC1vdmVycmlkZVwtRGF0ZWkuU2llIGVudGjkbHQgbnVyIHp3ZWksIGR1cmNoIExlZXJ6ZWljaGVuIHNlcGFyaWVydGUKK0ZlbGRlciwgZGVyIGVyc3RlIGlzdCBkZXIgUXVlbGxwYWtldG5hbWUgdW5kIGRlciB6d2VpdGUgZGVyCitCZXJlaWNoLiBMZWVyemVpbGVuIHVuZCBLb21tZW50YXJ6ZWlsZW4gd2VyZGVuIGluIG5vcm1hbGVyIEFydCB1bmQgV2Vpc2UKK2lnbm9yaWVydC4gRmFsbHMgZWluIFBha2V0IGluIGJlaWRlbiBEYXRlaWVuIGF1ZnRhdWNodCwgZGFubiBuaW1tdCBkaWUKK1F1ZWxsXC1vdmVycmlkZSBWb3JyYW5nIGb8ciBkaWUgRWluc3RlbGx1bmcgZGVzIEJlcmVpY2hzLgorLklQIFxmQlwtXC1kZWJ1Z1xmUCA0CitTY2hhbHRlIERlYnVnZ2luZyBlaW4uCisuSVAgXGZCXC1cLWhlbHBcZlAgNAorWmVpZ2UgZGVuIEJlZGllbnVuZ3NoaW53ZWlzIHVuZCBiZWVuZGUuCisuSVAgXGZCXC1cLXZlcnNpb25cZlAgNAorR2ViZSBkaWUgVmVyc2lvbiBhdXMgdW5kIGJlZW5kZSBzaWNoLgorLgorLlNIINxCRVJTRVRaVU5HCitEaWUgZGV1dHNjaGUg3GJlcnNldHp1bmcgd3VyZGUgMjAwNCwgMjAwNi0yMDExIHZvbiBIZWxnZSBLcmV1dHptYW5uCis8ZGViaWFuQGhlbGdlZmplbGwuZGU+LCAyMDA3IHZvbiBGbG9yaWFuIFJlaG5pc2NoIDxlaXhtYW5AZ214LmRlPiB1bmQKKzIwMDggdm9uIFN2ZW4gSm9hY2hpbSA8c3ZlbmpvYWNAZ214LmRlPgorYW5nZWZlcnRpZ3QuIERpZXNlINxiZXJzZXR6dW5nIGlzdCBGcmVpZSBEb2t1bWVudGF0aW9uOyBsZXNlbiBTaWUgZGllCitHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBWZXJzaW9uIDIgb2RlciBuZXVlciBm/HIgZGllIEtvcGllcmJlZGluZ3VuZ2VuLgorRXMgZ2lidCBLRUlORSBIQUZUVU5HLgorLlNIICJTSUVIRSBBVUNIIgorXGZCZGViXC1vdmVycmlkZVxmUCg1KSwgXGZCZGViXC1leHRyYVwtb3ZlcnJpZGVcZlAoNSksIFxmQmRwa2dcLXNjYW5wYWNrYWdlc1xmUCgxKS4KKy4KKy5TSCBBVVRPUgorUm9kZXJpY2sgU2NoZXJ0bGVyIDxyb2Rlcmlja0Bhcmdvbi5vcmc+CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9kZS9kcGtnLXNobGliZGVwcy4xIGIvZHBrZy0xLjE2LjEuMS9tYW4vZGUvZHBrZy1zaGxpYmRlcHMuMQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iOGJlNzcxCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vZGUvZHBrZy1zaGxpYmRlcHMuMQpAQCAtMCwwICsxLDMxOCBAQAorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlwiCisuXCIgVGhpcyBmaWxlIHdhcyBnZW5lcmF0ZWQgd2l0aCBwbzRhLiBUcmFuc2xhdGUgdGhlIHNvdXJjZSBmaWxlLgorLlwiCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuVEggZHBrZ1wtc2hsaWJkZXBzIDEgMjAxMVwtMDhcLTE0IERlYmlhblwtUHJvamVrdCBkcGtnXC1IaWxmc3Byb2dyYW1tZQorLlNIIE5BTUUKK2Rwa2dcLXNobGliZGVwcyBcLSBlcnN0ZWxsZSBTdWJzdHZhclwtQWJo5G5naWdrZWl0ZW4gZvxyIExhdWZ6ZWl0YmlibGlvdGhla2VuCisuCisuU0gg3EJFUlNJQ0hUCitcZkJkcGtnXC1zaGxpYmRlcHNcZlAgW1xmSU9wdGlvblxmUC4uLl0gW1xmQlwtZVxmUF1cZklQcm9ncmFtbVxmUCBbXGZJT3B0aW9uXGZQLi4uXQorLgorLlNIIEJFU0NIUkVJQlVORworXGZCZHBrZ1wtc2hsaWJkZXBzXGZQIGJlcmVjaG5ldCBBYmjkbmdpZ2tlaXRlbiB2b24gTGF1ZnplaXRiaWJsaW90aGVrZW4gZvxyCitQcm9ncmFtbWUsIGRlcmVuIE5hbWUgYWxzIEFyZ3VtZW50IPxiZXJnZWJlbiB3ZXJkZW4uIERpZSBBYmjkbmdpZ2tlaXRlbgord2VyZGVuIHp1IGRlciBEYXRlaSBkZXIgU3Vic3RpdHV0aW9uc3ZhcmlhYmxlbiBcZkJkZWJpYW4vc3Vic3R2YXJzXGZQIGFscworVmFyaWFibGVubmFtZW4gXGZCc2hsaWJzOlxmUFxmSUFiaORuZ2lna2VpdHNmZWxkXGZQIGhpbnp1Z2Vm/Gd0LCB3b2JlaQorXGZJQWJo5G5naWdrZWl0c2ZlbGRcZlAgZGVyIEZlbGRuYW1lIGVpbmVyIEFiaORuZ2lna2VpdCBpc3QuIEFsbGUgYW5kZXJlbgorVmFyaWFibGVuLCBkaWUgbWl0IFxmQnNobGliczpcZlAgYmVnaW5uZW4sIHdlcmRlbiBhdXMgZGVyIERhdGVpIGVudGZlcm50LgorLlAKK1xmQmRwa2dcLXNobGliZGVwc1xmUCBoYXQgendlaSBt9mdsaWNoZSBJbmZvcm1hdGlvbnNxdWVsbGVuIHp1ciBFcnN0ZWxsdW5nIGRlcgorQWJo5G5naWdrZWl0c2luZm9ybWF0aW9uZW4uIEVudHdlZGVyIFxmSVN5bWJvbFxmUFwtIG9kZXIKK1xmSVNobGlic1xmUFwtRGF0ZWllbi4gXGZCZHBrZ1wtc2hsaWJkZXBzXGZQIGZpbmRldCBm/HIgamVkZXMgUHJvZ3JhbW0sIGRhcyBlcworYW5hbHlzaWVydCwgZGllIEJpYmxpb3RoZWtlbiBoZXJhdXMsIGdlZ2VuIGRpZSBlcyBnZWxpbmt0IGlzdC4gQmVpIGplZGVyCitCaWJsaW90aGVrIHNjaGF1dCBlcyBlbnR3ZWRlciBpbiBkaWUgXGZJU3ltYm9sXGZQXC0gb2RlciBpbiBpbiBcZklTaGxpYnNcZlBcLURhdGVpCisoZmFsbHMgZXJzdGVyZSBuaWNodCBleGlzdGllcnQgb2RyIGZhbGxzIGRlYmlhbi9zaGxpYnMubG9jYWwgZGllIHJlbGV2YW50ZW4KK0FiaORuZ2lna2VpdGVuIGVudGjkbHQpLiBCZWlkZSBEYXRlaWVuIHNvbGx0ZW4gdm9uIGRlbSBCaWJsaW90aGVrc3Bha2V0CitiZXJlaXRnZXN0ZWxsdCB3ZXJkZW4gdW5kIHNvbGx0ZW4gZGFoZXIgYWxzCisvdmFyL2xpYi9kcGtnL2luZm8vXGZJUGFrZXRcZlAuXGZJU3ltYm9sXGZQIG9kZXIKKy92YXIvbGliL2Rwa2cvaW5mby9cZklQYWtldFxmUC5cZklTaGxpYnNcZlAgdmVyZvxnYmFyIHNlaW4uIERlciBQYWtldG5hbWUgd2lyZCBpbgorendlaSBTY2hyaXR0ZW4gaWRlbnRpZml6aWVydDogenVlcnN0IHdpcmQgZGllIEJpYmxpb3RoZWtzZGF0ZWkgYXVmIGRlbQorU3lzdGVtIGdlZnVuZGVuIChkdXJjaCBQcvxmdW5nIGRlciBnbGVpY2hlbiBWZXJ6ZWljaG5pc3NlIHdpZSBiZWkgXGZCbGQuc29cZlApLAorZGFubiB3aXJkIFxmQmRwa2cgXC1TIFxmUFxmSUJpYmxpb3RoZWtzZGF0ZWlcZlAgdmVyd2VuZGV0LCB1bSBkYXMgUGFrZXQsIGRhcyBkaWUKK0JpYmxpb3RoZWsgYmVyZWl0c3RlbGx0LCB6dSBlcm1pdHRlbG4uCisuU1MgU3ltYm9sZGF0ZWllbgorU3ltYm9sZGF0ZWllbiBlbnRoYWx0ZW4gZmVpbmVyXC1ncmFudWxhcmUgQWJo5G5naWdrZWl0c2luZm9ybWF0aW9uZW4sIGluZGVtCitzaWUgZGllIE1pbmltYWxhYmjkbmdpZ2tlaXQgZvxyIGplZGVzIHZvbiBkZXIgQmlibGlvdGhlayBleHBvcnRpZXJ0ZSBTeW1ib2wKK2Jlc2NocmVpYmVuLiBEYXMgU2tyaXB0IHZlcnN1Y2h0LCBlaW5lIFN5bWJvbGRhdGVpIGRpZSB6dSBkZW0KK0JpYmxpb3RoZWtzcGFrZXQgZ2Vo9nJ0LCBhbiBkZW4gZm9sZ2VuZGVuIE9ydGVuIHp1enVvcmRuZW4gKGRlciBlcnN0ZQorVHJlZmZlciB3aXJkIHZlcndlbmRldCk6CisuSVAgZGViaWFuLyovREVCSUFOL3N5bWJvbHMKK0luZm9ybWF0aW9uZW4g/GJlciBMYXVmemVpdGJpYmxpb3RoZWtlbiwgZGllIHZvbSBha3R1ZWxsZW4gQmF1cHJvemVzcworZXJzdGVsbHQgd2VyZGVuLCBkZXIgYXVjaCBcZkJkcGtnXC1zaGxpYmRlcHNcZlAgYXVmcnVmdC4gU2llIHdlcmRlbiB2b24KK1xmQmRwa2dcLWdlbnN5bWJvbHNcZlAoMSkgZXJzdGVsbHQuIFNpZSB3ZXJkZW4gbnVyIHZlcndlbmRldCwgZmFsbHMgZGllCitCaWJsaW90aGVrIGltIEJhdVwtQmF1bSBkZXMgUGFrZXRzIGdlZnVuZGVuIHdpcmQuIERpZSBTeW1ib2xkYXRlaSBpbSBCYXVcLUJhdW0KK2hhdCBWb3JyYW5nIGdlZ2Vu/GJlciBTeW1ib2xkYXRlaWVuIGF1cyBhbmRlcmVuIEJpbuRycGFrZXRlbi4KKy5JUCAvZXRjL2Rwa2cvc3ltYm9scy9cZklQYWtldFxmUC5zeW1ib2xzLlxmSUFyY2hpdGVrdHVyXGZQCisuSVAgL2V0Yy9kcGtnL3N5bWJvbHMvXGZJUGFrZXRcZlAuc3ltYm9scworU3lzdGVtYWJo5G5naWdlINxiZXJzY2hyZWlidW5nIGRlciBBYmjkbmdpZ2tlaXRzaW5mb3JtYXRpb25lbiB2b24KK0xhdWZ6ZWl0YmlibGlvdGhla2VuLiBcZklBcmNoaXRla3R1clxmUCBpc3QgZGllIEFyY2hpdGVrdHVyIGRlcyBha3R1ZWxsZW4KK1N5c3RlbXMgKGVybWl0dGVsdCBkdXJjaCBcZkJkcGtnXC1hcmNoaXRlY3R1cmUgXC1xREVCX0hPU1RfQVJDSFxmUCkuCisuSVAgIkF1c2dhYmUgdm9uIFwobHFcZkJkcGtnXC1xdWVyeSBcLVwtY29udHJvbFwtcGF0aFxmUCBcZklQYWtldFxmUCBzeW1ib2xzXChycSIKK1ZvbSBQYWtldCBiZXJlaXRnZXN0ZWxsdGUgQWJo5G5naWdrZWl0c2luZm9ybWF0aW9uZW4gZvxyCitMYXVmemVpdGJpYmxpb3RoZWtlbi4gRmFsbHMgbmljaHQgZHVyY2ggXC1cLWFkbWluZGlyIPxiZXJzY2hyaWViZW4sIGJlZmluZGVuCitzaWNoIHNvbGNoZSBEYXRlaWVuIHVudGVyIC92YXIvbGliL2Rwa2cuCisuUAorV+RocmVuZCBkZXMgRHVyY2hzdWNoZW5zIGFsbGVyIHZvbSBQcm9ncmFtbSB2ZXJ3ZW5kZXRlbiBTeW1ib2xlIGVyaW5uZXJ0CitzaWNoIFxmQmRwa2dcLXNobGliZGVwc1xmUCBhbiBkaWUgZ3L233RlIE1pbmltYWx2ZXJzaW9uLCBkaWUgdm9uIGplZGVyCitCaWJsaW90aGVrIGJlbvZ0aWd0IHdpcmQuIEFtIEVuZGUgZGVzIFByb3plc3NlcyBpc3QgZXMgaW4gZGVyIExhZ2UsIGRpZQorbWluaW1hbGUgQWJo5G5naWdrZWl0IGb8ciBqZWRlIGVpbmdlc2V0enRlIEJpYmxpb3RoZWsgenUgc2NocmVpYmVuCisodm9yYXVzZ2VzZXR6dCwgZGllIEluZm9ybWF0aW9uZW4gaW4gZGVuIFxmSVN5bWJvbFxmUFwtRGF0ZWllbiBzaW5kIGtvcnJla3QpLgorLlAKK0FscyBTaWNoZXJoZWl0c21h325haG1lIGthbm4gZWluZSBTeW1ib2xzXC1EYXRlaSBlaW4gTWV0YVwtSW5mb3JtYXRpb25zZmVsZAorXGZJQnVpbGRcLURlcGVuZHNcLVBhY2thZ2VcZlAgZW50aGFsdGVuLiBcZkJkcGtnXC1zaGxpYmRlcHNcZlAgZXh0cmFoaWVydCBkYW5uIGRpZQorbWluaW1hbGUgVmVyc2lvbiwgZGllIHZvbiBkZW0ga29ycmVzcG9uZGllcmVuZGVuIFBha2V0IGltIEZlbGQgQnVpbGRcLURlcGVuZHMKK2JlbvZ0aWd0IHdpcmQsIHVuZCB2ZXJ3ZW5kZXQgZGllc2UgVmVyc2lvbiwgZmFsbHMgc2llIGj2aGVyIGlzdCBhbHMgZGllCittaW5pbWFsZSBWZXJzaW9uLCBkaWUgYmVpbSBEdXJjaHN1Y2hlbiBkZXIgU3ltYm9sZSBlcm1pdHRlbHQgd3VyZGUuCisuU1MgU2hsaWJzXC1EYXRlaWVuCitTaGxpYnNcLURhdGVpZW4gb3JkbmVuIEJpYmxpb3RoZWtlbiBkaXJla3QgQWJo5G5naWdrZWl0ZW4genUgKG9obmUgYXVmIGRpZQorU3ltYm9sZSB6dSBzY2hhdWVuKS4gRGFoZXIgaXN0IGRpZXMgb2Z0IHN05HJrZXIgYWxzIGJlbvZ0aWd0LCBhYmVyIGRhZvxyCitzaWNoZXIgdW5kIGxlaWNodCB6dSBoYW5kaGFiZW4uCisuUAorRGllIEFiaORuZ2lna2VpdGVuIGb8ciBlaW5lIEJpYmxpb3RoZWsgd2lyZCBhbiB2ZXJzY2hpZWRlbmVuIFN0ZWxsZW4KK25hY2hnZXNjaGxhZ2VuLiBEaWUgZXJzdGUgRGF0ZWksIGRpZSBJbmZvcm1hdGlvbmVuIGb8ciBkaWUgYmV0cmFjaHRldGUKK0JpYmxpb3RoZWsgYmVyZWl0c3RlbGx0LCB3aXJkIHZlcndlbmRldDoKKy5JUCBkZWJpYW4vc2hsaWJzLmxvY2FsCitQYWtldFwtYmVzY2hy5G5rdGUg3GJlcnNjaHJlaWJ1bmcgZGVyIEFiaORuZ2lna2VpdHNpbmZvcm1hdGlvbmVuIHZvbgorTGF1ZnplaXRiaWJsaW90aGVrZW4uCisuSVAgL2V0Yy9kcGtnL3NobGlicy5vdmVycmlkZQorU3lzdGVtYWJo5G5naWdlINxiZXJzY2hyZWlidW5nIGRlciBBYmjkbmdpZ2tlaXRzaW5mb3JtYXRpb25lbiB2b24KK0xhdWZ6ZWl0YmlibGlvdGhla2VuLgorLklQIGRlYmlhbi8qL0RFQklBTi9zaGxpYnMKK0luZm9ybWF0aW9uZW4g/GJlciBMYXVmemVpdGJpYmxpb3RoZWtlbiwgZGllIHZvbSBha3R1ZWxsZW4gQmF1cHJvemVzcworZXJzdGVsbHQgd2VyZGVuLCBkZXIgYXVjaCBcZkJkcGtnXC1zaGxpYmRlcHNcZlAgYXVmcnVmdC4gU2llIHdlcmRlbiBudXIKK3ZlcndlbmRldCwgZmFsbHMgZGllIEJpYmxpb3RoZWsgaW0gQmF1XC1WZXJ6ZWljaG5pcyBlaW5lcyBQYWtldHMgZ2VmdW5kZW4KK3dpcmQuIERpZSBTaGxpYnNcLURhdGVpIGluIGRpZXNlbSBCYXVcLVZlcnplaWNobmlzIGhhdCBnZWdlbvxiZXIKK1NobGlic1wtRGF0ZWllbiB2b24gYW5kZXJlbiBCaW7kcnBha2V0ZW4gVm9ycmFuZy4KKy5JUCAiQXVzZ2FiZSB2b24gXChscVxmQmRwa2dcLXF1ZXJ5IFwtXC1jb250cm9sXC1wYXRoXGZQIFxmSVBha2V0XGZQIHNobGlic1wocnEiCitWb20gUGFrZXQgYmVyZWl0Z2VzdGVsbHRlIEFiaORuZ2lna2VpdHNpbmZvcm1hdGlvbmVuIGb8cgorTGF1ZnplaXRiaWJsaW90aGVrZW4uIEZhbGxzIG5pY2h0IGR1cmNoIFwtXC1hZG1pbmRpciD8YmVyc2NocmllYmVuLCBiZWZpbmRlbgorc2ljaCBzb2xjaGUgRGF0ZWllbiB1bnRlciAvdmFyL2xpYi9kcGtnLgorLklQIC9ldGMvZHBrZy9zaGxpYnMuZGVmYXVsdAorU3lzdGVtYWJo5G5naWdlIFZvcmdhYmVuIGb8ciBBYmjkbmdpZ2tlaXRzaW5mb3JtYXRpb25lbiB2b24KK0xhdWZ6ZWl0YmlibGlvdGhla2VuLgorLlAKK0RpZSBleHRyYWhpZXJ0ZW4gQWJo5G5naWdrZWl0ZW4gd2VyZGVuIGRpcmVrdCB2ZXJ3ZW5kZXQgKGVzIHNlaSBkZW4sIHNpZQord2VyZGVuIGFscyBEdWJsZXR0ZW4gaGVyYXVzZ2VmaWx0ZXJ0IG9kZXIgc2llIHNpbmQgc2Nod+RjaGVyIGFscyBlaW5lIGFuZGVyZQorQWJo5G5naWdrZWl0KS4KKy5TSCBPUFRJT05FTgorXGZCZHBrZ1wtc2hsaWJkZXBzXGZQIGludGVycHJldGllcnQgbmljaHRcLU9wdGlvbnNcLUFyZ3VtZW50ZSBhbHMgTmFtZW4gdm9uCithdXNm/GhyYmFyZW4gUHJvZ3JhbW1lbiwgYWxzIG9iIGRpZXNlIG1pdCBcZkJcLWVcZlBcZklQcm9ncmFtbVxmUCD8YmVyZ2ViZW4gd29yZGVuCit35HJlbi4KKy5UUCAKK1xmQlwtZVxmUFxmSVByb2dyYW1tXGZQCitBYmjkbmdpZ2tlaXRlbiBhdWZuZWhtZW4sIGRpZSBm/HIgdm9uIFxmSVByb2dyYW1tXGZQIGJlbvZ0aWd0ZQorTGF1ZnplaXRiaWJsaW90aGVrZW4gYW5nZW1lc3NlbiBzaW5kLgorLlRQIAorXGZCXC1kXGZQXGZJQWJo5G5naWdrZWl0c2ZlbGRcZlAKK0b8Z2UgQWJo5G5naWdrZWl0ZW4gaGluenUsIGRpZSB6dW0gQWJo5G5naWdrZWl0c2ZlbGQgXGZJQWJo5G5naWdrZWl0c2ZlbGRcZlAKK2RlciBTdGV1ZXJkYXRlaSBoaW56dWdlZvxndCB3ZXJkZW4gc29sbGVuLiAoRGllIEFiaORuZ2lna2VpdGVuIGb8ciBkaWVzZXMKK0ZlbGQgd2VyZGVuIGluIGRpZSBWYXJpYWJsZSBcZkJzaGxpYnM6XGZQXGZJQWJo5G5naWdrZWl0c2ZlbGRcZlAgZ2VzY2hyaWViZW4uKQorCitEaWUgT3B0aW9uIFxmQlwtZFxmUFxmSUFiaORuZ2lna2VpdHNmZWxkXGZQIGJldHJpZmZ0IGFsbGUgUHJvZ3JhbW1lLCBkaWUgZGFuYWNoCithbmdlZ2ViZW4gd2VyZGVuLCBiaXMgenVtIG7kY2hzdGVuIFxmQlwtZFxmUFxmSUFiaORuZ2lna2VpdHNmZWxkXGZQLiBEZXIKK1N0YW5kYXJkd2VydCBm/HIgXGZJQWJo5G5naWdrZWl0c2ZlbGRcZlAgaXN0IFxmQkRlcGVuZHNcZlAuCisKK0ZhbGxzIGRlciBnbGVpY2hlIEFiaORuZ2lna2VpdHNlaW50cmFnIChvZGVyIGVpbiBTYXR6IHZvbiBBbHRlcm5hdGl2ZW4pIG1laHIKK2FscyBlaW5tYWwgaW4gZGVuIGVya2FubnRlbiBBYmjkbmdpZ2tlaXRzZmVsZG5hbWVuIFxmQlByZVwtRGVwZW5kc1xmUCwKK1xmQkRlcGVuZHNcZlAsIFxmQlJlY29tbWVuZHNcZlAsIFxmQkVuaGFuY2VzXGZQIG9kZXIgXGZCU3VnZ2VzdHNcZlAgYXVmdGF1Y2h0LCB3aXJkCitcZkJkcGtnXC1zaGxpYmRlcHNcZlAgZGllIEFiaORuZ2lna2VpdCB2b24gYWxsZW4gRmVsZGVybiBhdd9lciBkZW0sIGRhcyBkaWUKK3dpY2h0aWdzdGVuIEFiaORuZ2lna2VpdGVuIHJlcHLkc2VudGllcnQsIGVudGZlcm5lbi4KKy5UUCAKK1xmQlwtcFxmUFxmSVZhcmlhYmxlbm5hbWVwcuRmaXhcZlAKK0JlZ2lubiBkaWUgU3Vic3RpdHV0aW9uc3ZhcmlhYmxlbiBtaXQgXGZJVmFyaWFibGVubmFtZXBy5GZpeFxmUFxmQjpcZlAgc3RhdHQgbWl0CitcZkJzaGxpYnM6XGZQLiBFbnRzcHJlY2hlbmQgd2VyZGVuIGFsbGUgU3Vic3RpdHV0aW9uc3ZhcmlhYmxlbiwgZGllIG1pdAorXGZJVmFyaWFibGVubmFtZXBy5GZpeFxmUFxmQjpcZlAgKHN0YXR0IG1pdCBcZkJzaGxpYnM6XGZQKSBiZWdpbm5lbiwgYXVzIGRlbgorU3Vic3RpdHV0aW9uc3ZhcmlhYmxlbiBlbnRmZXJudC4KKy5UUCAKK1xmQlwtT1xmUAorR2ViZSBkaWUgVmFyaWFibGVuZWluc3RlbGx1bmcgaW4gZGllIFN0YW5kYXJkYXVzZ2FiZSBhdXMsIHN0YXR0IHNpZSB6dSBkZXIKK1N1YnN0aXR1dGlvbnN2YXJpYWJsZW5kYXRlaSAoc3RhbmRhcmRt5N9pZyAoXGZCZGViaWFuL3N1YnN0dmFyc1xmUCkKK2hpbnp1enVm/Gdlbi4KKy5UUCAKK1xmQlwtdFxmUFxmSVR5cFxmUAorQmV2b3J6dWdlIEFiaORuZ2lna2VpdHNpbmZvcm1hdGlvbmVuIGb8ciBMYXVmemVpdGJpYmxpb3RoZWtlbiwgZGllIGb8ciBlaW4KK3ZvcmdlZ2ViZW5lcyBQYWtldCBtYXJraWVydCBzaW5kLiBGYWxscyBrZWluZSBNYXJraWVydW5nc2luZm9ybWF0aW9uCit2ZXJm/GdiYXIgaXN0LCBm5GxsdCBkaWVzIGF1ZiB1bm1hcmtpZXJ0ZSBJbmZvcm1hdGlvbmVuIHp1cvxjay4gRGVyCitTdGFuZGFyZFwtUGFrZXR0eXAgaXN0ILtkZWKrLiBBYmjkbmdpZ2tlaXRzaW5mb3JtYXRpb25lbiBm/HIKK0xhdWZ6ZWl0YmlibGlvdGhla2VuIHdlcmRlbiBm/HIgZWluZW4gdm9yZ2VnZWJlbmVuIFR5cCBtYXJraWVydCwgaW5kZW0gdm9yCitzaWUgZGVyIE5hbWVuIGRlcyBUeXBzLCBlaW4gRG9wcGVscHVua3QgdW5kIGVpbiBMZWVyemVpY2hlbiBnZXNldHp0IHdpcmQuCisuVFAgCitcZkJcLUxcZlBcZklsb2thbHNobGlic2RhdGVpXGZQCitMZXNlIGRpZSBIaW53ZWdzZXR6XC1BYmjkbmdpZ2tlaXRlbiB2b24gTGF1ZnplaXRiaWJsaW90aGVrZW4gYXVzCitcZklsb2thbHNobGlic2RhdGVpXGZQIHN0YXR0IGF1cyBcZkJkZWJpYW4vc2hsaWJzLmxvY2FsXGZQLgorLlRQIAorXGZCXC1UXGZQXGZJc3Vic3R2YXJkYXRlaVxmUAorU2NocmVpYmUgU3Vic3RpdHV0aW9uc3ZhcmlhYmxlbiBpbiBcZklTdWJzdHZhcmRhdGVpXGZQOyBzdGFuZGFyZG3k32lnCitcZkJkZWJpYW4vc3Vic3R2YXJzXGZQLgorLlRQIAorXGZCXC12XGZQCitBa3RpdmllcmUgYXVzZvxocmxpY2hlbiBNb2R1cy4gRWluZSBWaWVsemFobCB2b24gTmFjaHJpY2h0ZW4gd2lyZCBhbmdlemVpZ3QsCit1bSB6dSBlcmts5HJlbiwgd2FzIFxmQmRwa2dcLXNobGliZGVwc1xmUCBkdXJjaGb8aHJ0LgorLlRQIAorXGZCXC14XGZQXGZJUGFrZXRcZlAKK1NjaGxpZd9lIGRhcyBQYWtldCB2b24gZGVuIGdlbmVyaWVydGVuIEFiaORuZ2lna2VpdGVuIGF1cy4gRGllcyBpc3QgZvxyCitQYWtldGUgbvx0emxpY2gsIGRpZSBFTEZcLVByb2dyYW1tZGF0ZWllbiAoUHJvZ3JhbW1lIG9kZXIKK0JpYmxpb3RoZWtzZXJ3ZWl0ZXJ1bmdlbikgYmVyZWl0c3RlbGxlbiwgZGllIGVpbmUgQmlibGlvdGhlayBpbSBnbGVpY2hlbgorUGFrZXQgdmVyd2VuZGVuLCB1bSBzZWxic3RcLUFiaORuZ2lna2VpdGVuIHp1IHZlcm1laWRlbi4gRGllc2UgT3B0aW9uIGthbm4KK21laHJmYWNoIHZlcndlbmRldCB3ZXJkZW4sIHVtIG1laHJlcmUgUGFrZXRlIGF1c3p1c2NobGll32VuLgorLlRQIAorXGZCXC1TXGZQXGZJUGFrZXRiYXV2ZXJ6ZWljaG5pc1xmUAorU2NoYXVlIGJlaW0gVmVyc3VjaCwgZWluZSBCaWJsaW90aGVrIHp1IGZpbmRlbiwgenVlcnN0IGluCitcZklQYWtldGJhdXZlcnplaWNobmlzXGZQLiBEaWVzIGlzdCBu/HR6bGljaCwgd2VubiBkYXMgUXVlbGxwYWtldCBtZWhyZXJlCitTcGllbGFydGVuIGRlciBnbGVpY2hlbiBCaWJsaW90aGVrIGJhdXQgdW5kIFNpZSBzaWNoZXJzdGVsbGVuIHdvbGxlbiwgZGFzcworU2llIGRpZSBBYmjkbmdpZ2tlaXQgYXVzIGVpbmVtIGJlc3RpbW10ZW4gQmlu5HJwYWtldCBlcmhhbHRlbi4gU2llIGv2bm5lbgorZGllc2UgT3B0aW9uIG1laHJmYWNoIHZlcndlbmRlbjogVmVyemVpY2huaXNzZSB3ZXJkZW4gaW4gZGVyIGdsZWljaGVuCitSZWloZW5mb2xnZSB2b3IgVmVyemVpY2huaXNzZW4gYW5kZXJlciBCaW7kcnBha2V0ZSBwcm9iaWVydC4KKy5UUCAKK1xmQlwtXC1pZ25vcmVcLW1pc3NpbmdcLWluZm9cZlAKK0ZhbGxzIGtlaW5lIEFiaORuZ2lna2VpdHNpbmZvcm1hdGlvbmVuIGb8ciBkaWUgTGF1ZnplaXRiaWJsaW90aGVrIGdlZnVuZGVuCit3ZXJkZW4ga2FubiwgZXJmb2xndCBrZWluIEZlaGxzY2hsYWcuIFZvbiBkZXIgVmVyd2VuZHVuZyBkaWVzZXIgT3B0aW9uIHdpcmQKK2FiZ2VhcnRlbiwgZGEgYWxsZSBCaWJsaW90aGVrZW4gQWJo5G5naWdrZWl0c2luZm9ybWF0aW9uZW4gYmVyZWl0c3RlbGxlbgorc29sbHRlbiAoZW50d2VkZXIg/GJlciBzaGxpYnNcLURhdGVpZW4gb2RlciD8YmVyIHN5bWJvbHNcLURhdGVpZW4pLCBzZWxic3QKK2ZhbGxzIGRpZXNlIG5vY2ggbmljaHQgdm9uIGFuZGVyZW4gUGFrZXRlbiB2ZXJ3ZW5kZXQgd2VyZGVuLgorLlRQIAorXGZCXC1cLXdhcm5pbmdzPVxmUFxmSVdlcnRcZlAKK1xmSVdlcnRcZlAgaXN0IGVpbiBCaXRmZWxkLCBkYXMgZGVuIFNhdHogYW4gV2FybnVuZ2VuIGRlZmluaWVydCwgZGllIHZvbgorXGZCZHBrZ1wtc2hsaWJkZXBzXGZQIGF1c2dlZ2ViZW4gd2VyZGVuIGv2bm5lbi4gQml0IDAgKFdlcnQ9MSkgYWt0aXZpZXJ0IGRpZQorV2FybnVuZyC7U3ltYm9sIFxmSVN5bVxmUCwgdmVyd2VuZGV0IHZvbiBcZklQcm9ncmFtbVxmUCwgaW4ga2VpbmVyIGRlcgorQmlibGlvdGhla2VuIGdlZnVuZGVuLqssIEJpdCAxIChXZXJ0PTIpIGFrdGl2aWVydCBkaWUgV2FybnVuZyC7QWJo5G5naWdrZWl0Cit2b24gXGZJQmlibGlvdGhla1xmUCBr9m5udGUgdmVybWllZGVuIHdlcmRlbqsgdW5kIEJpdCAyIChXZXJ0PTQpIGFrdGl2aWVydCBkaWUKK1dhcm51bmcgu1xmSVByb2dyYW1tXGZQIHNvbGx0ZSBuaWNodCBnZWdlbiBcZklCaWJsaW90aGVrXGZQIGdlbGlua3QKK3dlcmRlbqsuIFN0YW5kYXJkbeTfaWcgaXN0IFxmSVdlcnRcZlAgMzogZGllIGVyc3RlbiB6d2VpIFdhcm51bmdlbiBzaW5kCitzdGFuZGFyZG3k32lnIGFrdGl2LCBkaWUgbGV0enRlIG5pY2h0LiBTZXR6dGVuIFNpZSBcZklXZXJ0XGZQIGF1ZiA3LCBmYWxscyBTaWUKK232Y2h0ZW4sIGRhc3MgYWxsZSBXYXJudW5nZW4gYWt0aXYgc2VpbiBzb2xsZW4uCisuVFAgCitcZkJcLVwtYWRtaW5kaXI9XGZQXGZJVmVyelxmUAorxG5kZXJ0IGRlbiBBYmxhZ2VvcnQgZGVyIFxmQmRwa2dcZlBcLURhdGVuYmFuay4gRGVyIFN0YW5kYXJkb3J0IGlzdAorXGZJL3Zhci9saWIvZHBrZ1xmUC4KKy5UUCAKK1xmQlwtaFxmUCwgXGZCXC1cLWhlbHBcZlAKK1plaWdlIGRlbiBCZWRpZW51bmdzaGlud2VpcyB1bmQgYmVlbmRlLgorLlRQIAorXGZCXC1cLXZlcnNpb25cZlAKK0dlYmUgZGllIFZlcnNpb24gYXVzIHVuZCBiZWVuZGUgc2ljaC4KKy4KKy5TSCBXQVJOVU5HRU4KK0RhIFxmQmRwa2dcLXNobGliZGVwc1xmUCBkZW4gU3ltYm9sc2F0eiwgZGVyIHZvbiBqZWRlbSBQcm9ncmFtbSBkZXMgZXJzdGVsbHRlbgorUGFrZXRzIHZlcndlbmRldCB3aXJkLCBhbmFseXNpZXJ0LCBpc3QgZXMgaW4gbWVocmVyZW4gRuRsbGVuIGluIGRlciBMYWdlLAorV2FybnVuZ2VuIGF1c3p1Z2ViZW4uIFNpZSBpbmZvcm1pZXJlbiBTaWUg/GJlciBEaW5nZSwgZGllIGltIFBha2V0Cit2ZXJiZXNzZXJ0IHdlcmRlbiBr9m5uZW4uIE1laXN0ZW5zIGJldHJlZmZlbiBkaWVzZSBWZXJiZXNzZXJ1bmdlbiBkaXJla3QgZGllCitRdWVsbGVuIGRlciBPcmlnaW5hbGF1dG9yZW4uIEluIGRlciBSZWloZW5mb2xnZSBhYm5laG1lbmRlciBXaWNodGlna2VpdAorZm9sZ2VuIGhpZXIgZGllIHJlbGV2YW50ZW4gV2FybnVuZ2VuLCBkaWUgYXVmdGF1Y2hlbiBr9m5udGVuOgorLlRQIAorXGZCU3ltYm9sXGZQIFxmSSBTeW1ib2xcZlBcZkIsIHZlcndlbmRldCB2b24gXGZQXGZJUHJvZ3JhbW1cZlBcZkIsIGluIGtlaW5lciBkZXIgQmlibGlvdGhla2VuIGdlZnVuZGVuLlxmUAorRGFzIGFuZ2VnZWJlbmUgU3ltYm9sIHd1cmRlIG5pY2h0IGluIGRlbiBCaWJsaW90aGVrZW4gZ2VmdW5kZW4sIGdlZ2VuIGRpZQorZGFzIFByb2dyYW1tIGdlbGlua3Qgd3VyZGUuIFxmSVByb2dyYW1tXGZQIGlzdCBo9mNoc3R3YWhyc2NoZWlubGljaCBlaW5lCitCaWJsaW90aGVrIHVuZCBtdXNzIG1pdCB6dXPkdHpsaWNoZW4gQmlibGlvdGhla2VuIHfkaHJlbmQgZGVzIEJhdVwtUHJvemVzc2VzCitnZWxpbmt0IHdlcmRlbiAoT3B0aW9uIFxmQlwtbFxmUFxmSUJpYmxpb3RoZWtcZlAgZGVzIExpbmtlcnMpLgorLlRQIAorXGZJUHJvZ3JhbW1cZlBcZkIgZW50aORsdCBlaW5lIG5pY2h0XC1hdWZs9nNiYXJlIFJlZmVyZW56IGF1ZiBTeW1ib2wgXGZQXGZJU3ltXGZQXGZCOiB3YWhyc2NoZWlubGljaCBlaW5lIEVyd2VpdGVydW5nXGZQLgorRGFzIGFuZ2VnZWJlbmUgU3ltYm9sIHd1cmRlIG5pY2h0IGluIGRlbiBCaWJsaW90aGVrZW4gZ2VmdW5kZW4sIGRpZSBtaXQKK2RpZXNlbSBQcm9ncmFtbSB2ZXJsaW5rdCBzaW5kLiBEYXMgXGZJUHJvZ2FtbVxmUCBpc3QgaPZjaHN0d2FocnNjaGVpbmxpY2ggZWluZQorRXJ3ZWl0ZXJ1bmcgdW5kIGRhcyBTeW1ib2wgd2lyZCB2b24gZGVtIFByb2dyYW1tIGJlcmVpdGdlc3RlbGx0LCBkYXMgZGllc2UKK0Vyd2VpdGVydW5nIGzkZHQuIFRoZW9yZXRpc2NoIHZlcmb8Z3QgZWluZSBFcndlaXRlcnVuZyBuaWNodCD8YmVyIGVpbmVuCitTT05BTUVuLCBhbGxlcmRpbmdzIGlzdCBkaWVzIGJlaSBkaWVzZW0gUHJvZ3JhbW0gZGVyIEZhbGwgdW5kIGRhaGVyIGtvbm50ZQorZXMgbmljaHQgZWluZGV1dGlnIGFscyBFcndlaXRlcnVuZyBlcmthbm50IHdlcmRlbi4gRGllIFRhdHNhY2hlLCBkYXNzIGRpZXNlcworUHJvZ3JhbW0gaW4gZWluZW0gbmljaHRcLfZmZmVudGxpY2hlbiBWZXJ6ZWljaG5pcyBnZXNwZWljaGVydCB3aXJkIGlzdAorYWxsZXJkaW5ncyBlaW4gc3RhcmtlcyBBbnplaWNoZW4gZGFm/HIsIGRhc3MgZXMga2VpbmUgbm9ybWFsZSBnZW1laW5zYW0KK2JlbnV0enRlIEJpYmxpb3RoZWsgaXN0LiBGYWxscyBkaWVzZXMgUHJvZ3JhbW0gdGF0c+RjaGxpY2ggZWluZSBFcndlaXRlcnVuZworaXN0LCBpZ25vcmllcmVuIFNpZSBkaWUgV2FybnVuZy4gQWxsZXJkaW5ncyBiZXN0ZWh0IGltbWVyIGRpZSBN9mdsaWNoa2VpdCwKK2Rhc3MgZXMgZWluZSBlY2h0ZSBCaWJsaW90aGVrIGlzdCB1bmQgZGFzcyBQcm9ncmFtbWUsIGRpZSBkYW1pdCB2ZXJsaW5rZW4sCitlaW5lbiBSUEFUSCB2ZXJ3ZW5kZW4sIHNvIGRhc3MgZGVyIGR5bmFtaXNjaGUgTGFkZXIgc2llIGZpbmRldC4gSW4gZGllc2VtCitGYWxsIGlzdCBkaWUgQmlibGlvdGhlayBiZXNjaORkaWd0IHVuZCBtdXNzIHJlcGFyaWVydCB3ZXJkZW4uCisuVFAgCitcZkJBYmjkbmdpZ2tlaXQgdm9uIFxmUFxmSUJpYmxpb3RoZWtcZlBcZkIga/ZubnRlIHZlcm1pZWRlbiB3ZXJkZW4sIGZhbGxzIFxmUFxmSVByb2dyYW1tXGZQXGZCIG5pY2h0IHVubvZ0aWdlcndlaXNlIGRhZ2VnZW4gZ2VsaW5rdCB35HJlIChlcyB2ZXJ3ZW5kZXQga2VpbmVzIHNlaW5lciBTeW1ib2xlLlxmUAorS2VpbmVzIGRlciBcZklQcm9ncmFtbWVcZlAgZGllIGdlZ2VuIFxmSUJpYmxpb3RoZWtcZlAgZ2VsaW5rdCBzaW5kIHZlcndlbmRldCBlaW5lcworZGVyIHZvbiBkZXIgQmlibGlvdGhlayBiZXJlaXRnZXN0ZWxsdGVuIFN5bWJvbGUuIEluZGVtIFNpZSBkaWUgUHJvZ3JhbW1lCitrb3JyaWdpZXJ0ZW4sIHZlcm1pZWRlbiBTaWUgZGllIEFiaORuZ2lna2VpdCwgZGllIG1pdCBkaWVzZXIgQmlibGlvdGhlawordmVyYnVuZGVuIGlzdCAoZXMgc2VpIGRlbm4sIGRpZSBBYmjkbmdpZ2tlaXQgd2lyZCBhdWNoIGR1cmNoIGVpbmUgYW5kZXJlCitCaWJsaW90aGVrIGdlbmVyaWVydCwgZGllIGRpZXNlIEJpYmxpb3RoZWsgd2lya2xpY2ggdmVyd2VuZGV0KS4KKy5UUCAKK1xmSVByb2dyYW1tXGZQXGZCIHNvbGx0ZSBuaWNodCBnZWdlbiBcZlBcZklCaWJsaW90aGVrXGZQXGZCIGdlbGlua3Qgd2VyZGVuIChlcyB2ZXJ3ZW5kZXQga2VpbmVzIGlocmVyIFN5bWJvbGUpLlxmUAorRGFzIFxmSVByb2dyYW1tXGZQIGlzdCBnZWdlbiBlaW5lIEJpYmxpb3RoZWsgZ2VsaW5rdCwgZGllIGVzIG5pY2h0CitiZW72dGlndC4gRGFzIGlzdCBrZWluIFByb2JsZW0sIGFiZXIgYmVpIGRlciBMYWRlemVpdCBr9m5uZW4ga2xlaW5lCitMZWlzdHVuZ3N2ZXJiZXNzZXJ1bmdlbiBlcnJlaWNodCB3ZXJkZW4sIGluZGVtIGRpZXNlIEJpYmxpb3RoZWsgbmljaHQgaW4gZGFzCitQcm9ncmFtbSBnZWxpbmt0IHdpcmQuIERpZXNlIFdhcm51bmcg/GJlcnBy/GZ0IGRpZSBnbGVpY2hlbiBJbmZvcm1hdGlvbmVuCit3aWUgZGllIHZvcmhlcmdlaGVuZGUsIGFsbGVyZGluZ3MgZvxyIGplZGVzIFByb2dyYW1tIHN0YXR0IGdsb2JhbCBm/HIgYWxsZQor/GJlcnBy/GZ0ZW4gUHJvZ3JhbW1lLgorLlNIIEZFSExFUgorXGZCZHBrZ1wtc2hsaWJkZXBzXGZQIHdpcmQgZmVobHNjaGxhZ2VuLCBmYWxscyBlcyBlaW5lIHZvbSBQcm9ncmFtbSB2ZXJ3ZW5kZXRlCiv2ZmZlbnRsaWNoZSBCaWJsaW90aGVrIG5pY2h0IGZpbmRlbiBrYW5uIG9kZXIgZmFsbHMgZGllc2UgQmlibGlvdGhlayBrZWluZQorenVnZW9yZG5ldGVuIEFiaORuZ2lna2VpdHNpbmZvcm1hdGlvbmVuIGhhdCAoZW50d2VkZXIgZWluZSBTaGxpYnNcLSBvZGVyCitTeW1ib2xzXC1EYXRlaSkuIEVpbmUg9mZmZW50bGljaGUgQmlibGlvdGhlayBoYXQgZWluZW4gU09OQU1FIHVuZCBpc3QKK3ZlcnNpb25pZXJ0IChsaWJpcmdlbmR3YXMuc28uXGZJWFxmUCkuIEVpbmUgcHJpdmF0ZSBCaWJsaW90aGVrICh3aWUgei5CLiBlaW4KK0Vyd2VpdGVydW5nKSBzb2xsdGUga2VpbmVuIFNPTkFNRSBoYWJlbiB1bmQgYnJhdWNodCBuaWNodCB2ZXJzaW9uaWVydCB6dQorc2Vpbi4KKy5UUCAKK1xmQmtvbm50ZSBCaWJsaW90aGVrIFxmUFxmSVNPTkFNRVwtZGVyXC1CaWJsaW90aGVrXGZQXGZCIGJlbvZ0aWd0IHZvbiBcZlBcZklQcm9ncmFtbVxmUFxmQiBuaWNodCBmaW5kZW4gKGlociBSUEFUSCBpc3Qgu1xmUFxmSXJwYXRoXGZQXGZCqykuXGZQCitEYXMgXGZJUHJvZ3JhbW1cZlAgdmVyd2VuZGV0IGVpbmUgQmlibGlvdGhlayBtaXQgTmFtZW4KK1xmSVNPTkFNRVwtZGVyXC1CaWJsaW90aGVrXGZQLCBhYmVyIFxmQmRwa2dcLXNobGliZGVwc1xmUCBrb25udGUgZGllc2UgQmlibGlvdGhlaworbmljaHQgZmluZGVuLiBcZkJkcGtnXC1zaGxpYmRlcHNcZlAgZXJzdGVsbHQgZm9sZ2VuZGVybWHfZW4gZWluZSBMaXN0ZSBkZXIgenUKK3By/GZlbmRlbiBWZXJ6ZWljaG5pc3NlOiBpbSBSUEFUSCBkZXMgUHJvZ3JhbW1zIGF1ZmdlZvxocnRlIFZlcnplaWNobmlzc2UsCitpbiAvZXRjL2xkLnNvLmNvbmYgYXVmZ2Vm/GhydGUgVmVyemVpY2huaXNzZSwgaW4gZGVyIFVtZ2VidW5nc3ZhcmlhYmxlCitMRF9MSUJSQVJZX1BBVEggYXVmZ2Vm/GhydGUgVmVyemVpY2huaXNzZSB1bmQgc3RhbmRhcmRt5N9pZ2Ug9mZmZW50bGljaGUKK1ZlcnplaWNobmlzc2UgKC9saWIsIC91c3IvbGliLCAvbGliMzIsIC91c3IvbGliMzIsIC9saWI2NCwgL3Vzci9saWI2NCkuIERhbm4KK3By/GZ0IGVzIGRpZXNlIFZlcnplaWNobmlzc2UgaW0gQmF1XC1CYXVtIGRlcyBhbmFseXNpZXJ0ZW4gUGFrZXRzLCBpbiBkZW4gbWl0CitkZXIgS29tbWFuZG96ZWlsZW5vcHRpb24gXC1TIGFuZ2VnZWJlbmVuIFBha2V0YmF1dmVyemVpY2huaXNzZSwgaW4gYW5kZXJlbgorUGFrZXRiYXVcLULkdW1lbiwgZGllIGVpbmUgREVCSUFOL3NobGlic1wtIG9kZXIgREVCSUFOL3N5bWJvbHNcLURhdGVpIGVudGhhbHRlbgordW5kIHNjaGxpZd9saWNoIGltIFd1cnplbHZlcnplaWNobmlzLiBGYWxscyBkaWUgQmlibGlvdGhlayBuaWNodCBpbiBlaW5lbQorZGllc2VyIFZlcnplaWNobmlzc2UgZ2VmdW5kZW4gd2lyZCwgZXJoYWx0ZW4gU2llIGRpZXNlbiBGZWhsZXIuCisKK0ZhbGxzIHNpY2ggZGllIG5pY2h0IGdlZnVuZGVuZSBCaWJsaW90aGVrIGluIGVpbmVtIHByaXZhdGVuIFZlcnplaWNobmlzIGRlcworZ2xlaWNoZW4gUGFrZXRzIGJlZmluZGV0LCBt/HNzZW4gU2llIGRhcyBWZXJ6ZWljaG5pcyB6dSBMRF9MSUJSQVJZX1BBVEgKK2hpbnp1ZvxnZW4uIEZhbGxzIHNpZSBzaWNoIGluIGVpbmVtIGFuZGVyZW4gZ2VyYWRlIHp1IGJhdWVuZGVuIFBha2V0CitiZWZpbmRldCwgbfxzc2VuIFNpZSBzaWNoZXJzdGVsbGVuLCBkYXNzIGRpZSC7c2hsaWJzL3N5bWJvbHOrXC1EYXRlaSBkaWVzZXMKK1Bha2V0cyBiZXJlaXRzIGFuZ2VsZWd0IGlzdCB1bmQgZGFzcyBMRF9MSUJSQVJZX1BBVEggZGFzIGdlZWlnbmV0ZQorVmVyemVpY2huaXMgZW50aORsdCwgZmFsbHMgZGllIEJpYmxpb3RoZWsgenVkZW0gaW4gZWluZW0gcHJpdmF0ZW4KK1ZlcnplaWNobmlzIGxpZWd0LgorLlRQIAorXGZCS2VpbmUgQWJo5G5naWdrZWl0c2luZm9ybWF0aW9uZW4gZvxyIFxmUFxmSUJpYmxpb3RoZWtzZGF0ZWlcZlBcZkIgKHZlcndlbmRldCB2b24gXGZQXGZJUHJvZ3JhbW1cZlBcZkIpIGdlZnVuZGVuLlxmUAorRGllIHZvbiBcZklQcm9ncmFtbVxmUCBiZW72dGlndGUgQmlibGlvdGhlayB3dXJkZSB2b24gXGZCZHBrZ1wtc2hsaWJkZXBzXGZQIGluCitcZklCaWJsaW90aGVrc2RhdGVpXGZQIGdlZnVuZGVuLCBhbGxlcmRpbmdzIGtvbm50ZSBcZkJkcGtnXC1zaGxpYmRlcHNcZlAga2VpbmUKK0FiaORuZ2lna2VpdHNpbmZvcm1hdGlvbmVuIGb8ciBkaWVzZSBCaWJsaW90aGVrIGVybWl0dGVsbi4gVW0gZGllCitBYmjkbmdpZ2tlaXQgaGVyYXVzenVmaW5kZW4sIGhhdCBlcyB2ZXJzdWNodCwgZGllIEJpYmxpb3RoZWsgbWl0dGVscyBcZkJkcGtnCitcLVMgXGZQXGZJQmlibGlvdGhla3NkYXRlaVxmUCBhdWYgZWluIERlYmlhblwtUGFrZXQgYWJ6dWJpbGRlbi4gRGFubiD8YmVycHL8ZnRlIGVzCitkaWUgenVnZWj2cmlnZW4gU2hsaWJzXC0gdW5kIFN5bWJvbGRhdGVpZW4gaW4gL3Zhci9saWIvZHBrZy9pbmZvLyB1bmQgZGllCit2ZXJzY2hpZWRlbmVuIFBha2V0YmF1YuR1bWUgKChkZWJpYW4vKi9ERUJJQU4vKS4KKworRGllc2VyIEZlaGxzY2hsYWcga2FubiBkdXJjaCBkZWZla3RlIG9kZXIgZmVobGVuZGUgU2hsaWJzXC0gb2RlcgorU3ltYm9sZGF0ZWllbiBpbSBQYWtldCBkZXIgQmlibGlvdGhlayBhdXNnZWz2c3Qgd2VyZGVuLiBFciBr9m5udGUgYXVjaAorYXVmdHJldGVuLCBmYWxscyBkaWUgQmlibGlvdGhlayBpbSBnbGVpY2hlbiBRdWVsbHBha2V0IGdlYmF1dCB3aXJkIHVuZCBkaWUKK1NobGlic1wtRGF0ZWkgbm9jaCBuaWNodCBhbmdlbGVndCB3dXJkZSAod29iZWkgU2llIGluIGRpZXNlbSBGYWxsCitkZWJpYW4vcnVsZXMga29ycmlnaWVyZW4gbfxzc2VuLCBkYW1pdCBkaWUgU2hsaWJzXC1EYXRlaSBlcnN0ZWxsdCB3aXJkIGJldm9yCitcZkJkcGtnXC1zaGxpYmRlcHNcZlAgYXVmZ2VydWZlbiB3aXJkKS4gRGVmZWt0ZSBSUEFUSCBr9m5uZW4gYXVjaCBkYXp1IGb8aHJlbiwKK2Rhc3MgZGllIEJpYmxpb3RoZWsgdW50ZXIgbmljaHRcLWthbm9uaXNjaGVuIE5hbWVuIGdlZnVuZGVuIHdpcmQKKyhiZWlzcGllbHN3ZWlzZSAvdXNyL2xpYi9vcGVub2ZmaWNlLm9yZy8uLi9saWIvbGlic3NsLnNvLjAuOS44IHN0YXR0CisvdXNyL2xpYi9saWJzc2wuc28uMC45LjgpLCBzbyBkYXNzIGRhbm4gZGllc2Uga2VpbmVtIFBha2V0IHp1Z2VvcmRuZXQgaXN0OworXGZCZHBrZ1wtc2hsaWJkZXBzXGZQIHZlcnN1Y2h0IGRpZXMgenUgdW1nZWhlbiwgaW5kZW0gZXMgYXVmIGVpbmVuIGthbm9uaXNjaGVuCitOYW1lbiAobWl0dGVscyBcZkJyZWFscGF0aFxmUCgzKSkgenVy/GNrZuRsbHQsIGFsbGVyZGluZ3Mga/ZubnRlIGRpZXMgbWFuY2htYWwKK25pY2h0IGZ1bmt0aW9uaWVyZW4uIEVzIGlzdCBpbW1lciBhbSBiZXN0ZW4sIGRlbiBSUEFUSCB6dSBiZXJlaW5pZ2VuLCB1bQorUHJvYmxlbWUgenUgdmVybWVpZGVuLgorCitWaWVsZSB3ZWl0ZXJlIEluZm9ybWF0aW9uZW4gZGFy/GJlciwgd28gbmFjaCBBYmjkbmdpZ2tlaXRzaW5mb3JtYXRpb25lbgorZ2VzdWNodCB3aXJkLCBr9m5uZW4gZHVyY2ggZWluZW4gQXVmcnVmIHZvbiBcZkJkcGtnXC1zaGxpYmRlcHNcZlAgaW0KK2dlc2Nod+R0emlnZW4gTW9kdXMgKFwtdikgZXJoYWx0ZW4gd2VyZGVuLiBEaWVzIGthbm4gbvx0emxpY2ggc2VpbiwgZmFsbHMgU2llCituaWNodCB2ZXJzdGVoZW4sIHdhcnVtIGVzIElobmVuIGRpZXNlbiBGZWhsZXIgbWVsZGV0LgorLlNIINxCRVJTRVRaVU5HCitEaWUgZGV1dHNjaGUg3GJlcnNldHp1bmcgd3VyZGUgMjAwNCwgMjAwNi0yMDExIHZvbiBIZWxnZSBLcmV1dHptYW5uCis8ZGViaWFuQGhlbGdlZmplbGwuZGU+LCAyMDA3IHZvbiBGbG9yaWFuIFJlaG5pc2NoIDxlaXhtYW5AZ214LmRlPiB1bmQKKzIwMDggdm9uIFN2ZW4gSm9hY2hpbSA8c3ZlbmpvYWNAZ214LmRlPgorYW5nZWZlcnRpZ3QuIERpZXNlINxiZXJzZXR6dW5nIGlzdCBGcmVpZSBEb2t1bWVudGF0aW9uOyBsZXNlbiBTaWUgZGllCitHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBWZXJzaW9uIDIgb2RlciBuZXVlciBm/HIgZGllIEtvcGllcmJlZGluZ3VuZ2VuLgorRXMgZ2lidCBLRUlORSBIQUZUVU5HLgorLlNIICJTSUVIRSBBVUNIIgorXGZCZGViXC1zaGxpYnNcZlAoNSksIFxmQmRlYlwtc3ltYm9sc1xmUCg1KSwgXGZCZHBrZ1wtZ2Vuc3ltYm9sc1xmUCgxKS4KKy4KKy5TSCBBVVRPUkVOCitDb3B5cmlnaHQgXChjbyAxOTk1XC0xOTk2IElhbiBKYWNrc29uCisuYnIKK0NvcHlyaWdodCBcKGNvIDIwMDAgV2ljaGVydCBBa2tlcm1hbgorLmJyCitDb3B5cmlnaHQgXChjbyAyMDA2IEZyYW5rIExpY2h0ZW5oZWxkCisuYnIKK0NvcHlyaWdodCBcKGNvIDIwMDdcLTIwMDggUmFwaGFcWzplXWwgSGVydHpvZworLnNwCitEaWVzIGlzdCBGcmVpZSBTb2Z0d2FyZTsgbGVzZW4gU2llIGRpZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBWZXJzaW9uIDIKK29kZXIgbmV1ZXIgZvxyIGRpZSBLb3BpZXJiZWRpbmd1bmdlbi4gRXMgZ2lidCBLRUlORSBIYWZ0dW5nLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vZGUvZHBrZy1zb3VyY2UuMSBiL2Rwa2ctMS4xNi4xLjEvbWFuL2RlL2Rwa2ctc291cmNlLjEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTJhZWJlOAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL2RlL2Rwa2ctc291cmNlLjEKQEAgLTAsMCArMSw3MzkgQEAKKy5cIiBBdXRob3JzOiBJYW4gSmFja3NvbiwgUmFwaGHDq2wgSGVydHpvZworLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlwiCisuXCIgVGhpcyBmaWxlIHdhcyBnZW5lcmF0ZWQgd2l0aCBwbzRhLiBUcmFuc2xhdGUgdGhlIHNvdXJjZSBmaWxlLgorLlwiCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuVEggZHBrZ1wtc291cmNlIDEgMjAxMVwtMDhcLTE0IERlYmlhblwtUHJvamVrdCBkcGtnXC1IaWxmc3Byb2dyYW1tZQorLlNIIE5BTUUKK2Rwa2dcLXNvdXJjZSBcLSBEZWJpYW4gUXVlbGxwYWtldFwtICguZHNjKSBNYW5pcHVsYXRpb25zXC1XZXJremV1Z2UKKy4KKy5TSCDcQkVSU0lDSFQKK1xmQmRwa2dcLXNvdXJjZVxmUCBbXGZJT3B0aW9uXGZQLi4uXSBcZklCZWZlaGxcZlAKKy4KKy5TSCBCRVNDSFJFSUJVTkcKK1xmQmRwa2dcLXNvdXJjZVxmUCBwYWNrdCB1bmQgZW50cGFja3QgRGViaWFuIFF1ZWxsYXJjaGl2ZS4KKworS2VpbmVyIGRpZXNlciBCZWZlaGxlIGVybGF1YnQgZXMsIG1laHJlcmUgT3B0aW9uZW4genUgZWluZXIgenUga29tYmluaWVyZW4sCit1bmQgc2llIGVybGF1YmVuIGVzIG5pY2h0LCBkZW4gV2VydCBlaW5lciBPcHRpb24gaW4gZWluZW0gc2VwYXJhdGVuIEFyZ3VtZW50Cit6dSBzcGVpY2hlcm4uCisuCisuU0ggQkVGRUhMRQorLlRQIAorXGZCXC14IFxmUFxmSURhdGVpbmFtZVxmUFxmQi5kc2NcZlAgW1xmSUF1c2dhYmVcLVZlcnplaWNobmlzXGZQXQorRXh0cmFoaWVyZSBlaW4gUXVlbGxwYWtldC4gRWluIG5pY2h0XC1PcHRpb25zXC1Bcmd1bWVudCBtdXNzIGFuZ2VnZWJlbiB3ZXJkZW4sCitkZXIgTmFtZSBkZXIgRGViaWFuIFF1ZWxsXC1TdGV1ZXJcLURhdGVpIChcZkIuZHNjXGZQKS4gT3B0aW9uYWwga2FubiBlaW4gendlaXRlcworbmljaHRcLU9wdGlvbnNcLUFyZ3VtZW50IGFuZ2VnZWJlbiB3ZXJkZW4sIHVtIGRhcyBWZXJ6ZWljaG5pcyBhbnp1Z2ViZW4sIGluCitkYXMgZGFzIFF1ZWxscGFrZXQgZXh0cmFoaWVydCB3ZXJkZW4gc29sbC4gRGllc2VzIFZlcnplaWNoaXMgZGFyZiBkYW5uIG5pY2h0CitleGlzdGllcmVuLiBGYWxscyBrZWluIEF1c2dhYmV2ZXJ6ZWljaG5pcyBhbmdlZ2ViZW4gaXN0LCB3aXJkIGRhcyBRdWVsbHBha2V0CitpbiBkYXMgVmVyemVpY2huaXMgbmFtZW5zIFxmSVF1ZWxsZVxmUFwtXGZJVmVyc2lvblxmUCB1bnRlcmhhbGIgZGVzIGFrdHVlbGxlbgorQXJiZWl0c3ZlcnplaWNobmlzc2VzIGV4dHJhaGllcnQuCisKK1xmQmRwa2dcLXNvdXJjZVxmUCB3aXJkIGRpZSBOYW1lbiBkZXIgYW5kZXJlbiBEYXRlaShlbikgYXVzIGRlciBTdGV1ZXJkYXRlaQorZWlubGVzZW4sIGRpZSBkYXMgUXVlbGxwYWtldCBlcmdlYmVuOyBlcyB3aXJkIGFuZ2Vub21tZW4sIGRhc3MgZGllc2UgaW0KK2dsZWljaGVuIFZlcnplaWNobmlzIHdpZSBkaWUgXGZCLmRzY1xmUCBsaWVnZW4uCisKK0RpZSBEYXRlaWVuIGluIGRlbSBleHRyYWhpZXJ0ZW4gUGFrZXQgd2VyZGVuIGRpZSBSZWNodGUgdW5kIEVpZ2VudPxtZXIKK2hhYmVuLCBkaWUgZXJ3YXJ0ZXQgd/xyZGVuLCBmYWxscyBkaWUgRGF0ZWllbiB1bmQgVmVyemVpY2huaXNzZSBlaW5mYWNoCithbmdlbGVndCB3b3JkZW4gd+RyZW4gXC0gVmVyemVpY2huaXNzZSB1bmQgUHJvZ3JhbW1kYXRlaWVuIHdlcmRlbiAwNzc3IHVuZAorZWluZmFjaGUgRGF0ZWllbiAwNjY2LCBiZWlkZSBkdXJjaCBkaWUgdW1hc2sgZGVyIFBlcnNvbiwgZGllIGV4dHJhaGllcnQsCitlbnRzcHJlY2hlbmQgYW5nZXBhc3N0OyBmYWxscyBkYXMg/GJlcmdlb3JkbmV0ZSBWZXJ6ZWljaG5pcyBzZXRnaWQgaXN0LAord2VyZGVuIGRpZXMgZGllIGV4dHJhaGllcnRlbiBWZXJ6ZWljaG5pc3NlIGF1Y2ggc2VpbiwgdW5kIGFsbGUgRGF0ZWllbiB1bmQKK1ZlcnplaWNobmlzc2Ugd2VyZGVuIGRpZSBHcnVwcGVuZWlnZW50/G1lcnNjaGFmdCBlcmJlbi4KKworRmFsbHMgZGFzIFF1ZWxscGFrZXQgZWluIG5pY2h0XC1TdGFuZGFyZFwtRm9ybWF0IHZlcndlbmRldCAoZGVyemVpdCBiZWRldXRldAorc2luZCBkaWVzIGFsbGUgRm9ybWF0ZSBhdd9lciC7MS4wqykgd2lyZCBzZWluIE5hbWUgaW4KK1xmQmRlYmlhbi9zb3VyY2UvZm9ybWF0XGZQIGdlc3BlaWNoZXJ0LCBzbyBkYXNzIGFsbGUgZm9sZ2VuZGVuIEJhdXZlcnN1Y2hlbiBkZXMKK1F1ZWxscGFrZXRzIHN0YW5kYXJkbeTfaWcgZGFzIGdsZWljaGUgRm9ybWF0IHZlcndlbmRlbi4KKworLlRQIAorXGZCXC1iXGZQIFxmSVZlcnplaWNobmlzXGZQIFtcZklGb3JtYXRcLWFiaORuZ2lnZVwtUGFyYW1ldGVyXGZQXQorQmF1ZSBlaW4gUXVlbGxwYWtldC4gRGFzIGVyc3RlIG5pY2h0XC1PcHRpb25zXC1Bcmd1bWVudCB3aXJkIGFscyBOYW1lIGRlcworVmVyemVpY2huaXNzZXMgdmVyd2FuZHQsIGRhcyBkZW4gZGViaWFuaXNpZXJ0ZW4gKGQuaC4gbWl0IGVpbmVtCitVbnRlcnZlcnplaWNobmlzIGRlYmlhbiB1bmQgZ2dmLiDEbmRlcnVuZ2VuIGFuIGRlbiBPcmlnaW5hbGRhdGVpZW4KK3ZlcnNlaGVuZW4pIFF1ZWxsYmF1bSBlbnRo5Gx0LiBBYmjkbmdpZyB2b20gZGVtIHp1bSBCYXUgdmVyd2FuZHRlbgorUXVlbGxwYWtldGZvcm1hdCBr9m5udGVuIHp1c+R0emxpY2hlIFBhcmFtZXRlciBha3plcHRpZXJ0IHdlcmRlbi4KKworXGZCZHBrZ1wtc291cmNlXGZQIHdpcmQgZGFzIFF1ZWxscGFrZXQgbWl0IGRlbSBlcnN0ZW4gZ2VmdW5kZW5lbiBGb3JtYXQgYXVzIGRlcgorZm9sZ2VuZGVuIGdlb3JkbmV0ZW4gTGlzdGUgYmF1ZW46IGRlbSBtaXQgZGVyIEtvbW1hbmRvemVpbGVub3B0aW9uKGVuKQorXGZJXC1cLWZvcm1hdFxmUCBhbmdlZ2ViZW4gRm9ybWF0LCBkZW0gaW4gXGZCZGViaWFuL3NvdXJjZS9mb3JtYXRcZlAgYW5nZWdlYmVuZW4KK0Zvcm1hdCwguzEuMKsuIERpZSBS/GNrZmFsbG9wdGlvbiC7MS4wqyBpc3QgdmVyYWx0ZXQgdW5kIHdpcmQgaXJnZW5kd2FubiBpbgorZGVyIFp1a3VuZnQgZW50ZmVybnQgd2VyZGVuLCBTaWUgc29sbHRlbiBkYXMgZ2V3/G5zY2h0ZSBRdWVsbGZvcm1hdCBpbW1tZXIKK2luIFxmQmRlYmlhbi9zb3VyY2UvZm9ybWF0XGZQIGRva3VtZW50aWVyZW4uIERpZSB2ZXJzY2hpZWRlbmVuCitRdWVsbHBha2V0Zm9ybWF0ZSB3ZXJkZW4gaW0gQWJzY2huaXR0IFxmQlFVRUxMUEFLRVRcLUZPUk1BVEVcZlAgYXVzZvxocmxpY2gKK2Jlc2NocmllYmVuLgorCisuVFAgCitcZkJcLVwtcHJpbnRcLWZvcm1hdFxmUCBcZklWZXJ6ZWljaG5pc1xmUAorR2lidCBkYXMgUXVlbGxmb3JtYXQgYXVzLCBkYXNzIHp1bSBCYXUgZGVzIFF1ZWxscGFrZXRzIHZlcndhbmR0IHf8cmRlLCBmYWxscworXGZCZHBrZ1wtc291cmNlIFwtYiBcZlBcZklWZXJ6ZWljaG5pc1xmUCBhdWZnZXJ1ZmVuIHf8cmRlICh1bnRlciBkZW4gZ2xlaWNoZW4KK0JlZGluZ3VuZ2VuIHVuZCBtaXQgZGVuIGdsZWljaGVuIFBhcmFtZXRlcm4pLgorCisuVFAgCitcZkJcLVwtYmVmb3JlXC1idWlsZFxmUCBcZklWZXJ6ZWljaG5pc1xmUAorRGVyIGVudHNwcmVjaGVuZGUgSG9vayBkZXNzIFF1ZWxscGFrZXRmb3JtYXRzIHNvbGwgYXVzZ2Vm/GhydCB3ZXJkZW4uIERpZXNlcgorSG9vayB3aXJkIHZvciBqZWRlbSBCYXUgZGVzIFBha2V0cyBhdWZnZXJ1ZmVuIChcZkJkcGtnXC1idWlsZHBhY2thZ2VcZlAgcnVmdCBpaG4KK3NlaHIgZnL8aCwgc29nYXIgdm9yIFxmQmRlYmlhbi9ydWxlcyBjbGVhblxmUCBhdWYpLiBEaWVzZXIgQmVmZWhsIGlzdAoraWRlbXBvdGVudCB1bmQga2FubiBtZWhyZmFjaCBhdWZnZXJ1ZmVuIHdlcmRlbi4gTmljaHQgYWxsZSBRdWVsbGZvcm1hdGUKK2ltcGxlbWVudGllcmVuIGluIGRpZXNlbSBIb29rIGV0d2FzIHVuZCB3ZW5uIGRpZXMgZXJmb2xndCwgZGFubiBnZXf2aG5saWNoCit6dXIgVm9yYmVyZWl0dW5nIGRlcyBRdWVsbGJhdW1zIGb8ciBkZW4gQmF1LCBpbiBkZW0gYmVpc3BpZWxzd2Vpc2UKK3NpY2hlcmdlc3RlbGx0IHdpcmQsIGRhc3MgYWxsZSBEZWJpYW5cLVBhdGNoZXMgYW5nZXdhbmR0IHNpbmQuCisKKy5UUCAKK1xmQlwtXC1hZnRlclwtYnVpbGRcZlAgXGZJVmVyemVpY2huaXNcZlAKK0RlciBlbnRzcHJlY2hlbmRlIEhvb2sgZGVzcyBRdWVsbHBha2V0Zm9ybWF0cyBzb2xsIGF1c2dlZvxocnQgd2VyZGVuLiBEaWVzZXIKK0hvb2sgd2lyZCBuYWNoIGplZGVtIEJhdSBkZXMgUGFrZXRzIGF1ZmdlcnVmZW4gKFxmQmRwa2dcLWJ1aWxkcGFja2FnZVxmUCBydWZ0CithbHMgbGV0enRlcyBhdWYpLiBEaWVzZXIgQmVmZWhsIGlzdCBpZGVtcG90ZW50IHVuZCBrYW5uIG1laHJmYWNoIGF1ZmdlcnVmZW4KK3dlcmRlbi4gTmljaHQgYWxsZSBRdWVsbGZvcm1hdGUgaW1wbGVtZW50aWVyZW4gaW4gZGllc2VtIEhvb2sgZXR3YXMgdW5kIHdlbm4KK2RpZXMgZXJmb2xndCwgZGFubiBnZXf2aG5saWNoIHVtIHL8Y2tn5G5naWcgenUgbWFjaGVuLCB3YXMgXGZCXC1cLWJlZm9yZVwtYnVpbGRcZlAKK2R1cmNoZ2Vm/GhydCBoYXQuCisKKy5UUCAKK1xmQlwtXC1jb21taXRcZlAgW1xmSVZlcnplaWNobmlzXGZQXSAuLi4KK1plaWNobmV0IMRuZGVydW5nZW4gYW0gaW4gXGZJVmVyemVpY2huaXNcZlAgZW50cGFja3RlbiBRdWVsbGJhdW0gYXVmLiBEaWVzZXIKK0JlZmVobCBrYW5uIHp1c+R0emxpY2hlIFBhcmFtZXRlciBha3plcHRpZXJlbiwgYWJo5G5naWcgdm9tIFF1ZWxsZm9ybWF0LiBFcgord2lyZCB6dSBlaW5lciBGZWhsZXJtZWxkdW5nIGJlaSBGb3JtYXRlbiwgZvxyIGRlbmVuIGRpZXNlciBWb3JnYW5nIGtlaW5lCitCZWRldXR1bmcgaGF0LCBm/GhyZW4uCisKKy5UUCAKK1xmQlwtaFxmUCwgXGZCXC1cLWhlbHBcZlAKK1plaWdlIGRlbiBCZWRpZW51bmdzaGlud2VpcyB1bmQgYmVlbmRlLgorLlRQIAorXGZCXC1cLXZlcnNpb25cZlAKK0dlYmUgZGllIFZlcnNpb24gYXVzIHVuZCBiZWVuZGUgc2ljaC4KKy4KKy5TSCAiR0VORVJJU0NIRSBCQVVPUFRJT05FTiIKKy5UUCAKK1xmQlwtY1xmUFxmSVN0ZXVlcmRhdGVpXGZQCitCZXN0aW1tdCBkaWUgSGF1cHRxdWVsbFwtu2NvbnRyb2yrXC1EYXRlaSwgYXVzIGRlciBJbmZvcm1hdGlvbmVuIGF1c2dlbGVzZW4KK3dlcmRlbiBzb2xsZW4uIERlciBTdGFuZGFyZHdlcnQgaXN0IFxmQmRlYmlhbi9jb250cm9sXGZQLiBGYWxscyBkZXIgUGZhZG5hbWUKK3JlbGF0aXYgaXN0LCB3aXJkIGRpZXNlciByZWxhdGl2IHp1bSBvYmVyc3RlbiBWZXJ6ZWljaG5pcyBkZXMgUXVlbGxiYXVtcworaW50ZXJwcmV0aWVydC4KKy5UUCAKK1xmQlwtbFxmUFxmSUNoYW5nZWxvZ1wtRGF0ZWlcZlAKK0Jlc3RpbW10IGRpZSC7Y2hhbmdlIGxvZ6tcLURhdGVpLCBhdXMgZGVyIEluZm9ybWF0aW9uZW4gYXVzZ2VsZXNlbiB3ZXJkZW4KK3NvbGxlbi4gRGVyIFN0YW5kYXJkd2VydCBpc3QgXGZCZGViaWFuL2NoYW5nZWxvZ1xmUC4gRmFsbHMgZGVyIFBmYWRuYW1lIHJlbGF0aXYKK2lzdCwgd2lyZCBkaWVzZXIgcmVsYXRpdiB6dW0gb2JlcnN0ZW4gVmVyemVpY2huaXMgZGVzIFF1ZWxsYmF1bXMKK2ludGVycHJldGllcnQuCisuVFAgCitcZkJcLUZcZlBcZklDaGFuZ2Vsb2dcLUZvcm1hdFxmUAorR2lidCBkYXMgRm9ybWF0IGRlciDEbmRlcnVuZ3Nwcm90b2tvbGxkYXRlaSBhbi4gU3RhbmRhcmRt5N9pZyB3aXJkIGRhcworRm9ybWF0IGF1cyBlaW5lciBzcGV6aWVsbGVuIFplaWxlIGluIGRlciBO5GhlIGRlcyBFbmRlcyBkZXIKK8RuZGVydW5nc3Byb3Rva29sbGRhdGVpIGdlbGVzZW4gb2RlciwgZmFsbHMgZGllcyBmZWhsc2NobORndCwgd2lyZCBkYXMKK0RlYmlhblwtU3RhbmRhcmRmb3JtYXQgYW5nZW5vbW1lbi4KKy5UUCAKK1xmQlwtXC1mb3JtYXQ9XGZQXGZJV2VydFxmUAorVmVyd2VuZGUgZGFzIGFuZ2VnZWJlbmUgRm9ybWF0IHp1bSBCYXUgZGVzIFF1ZWxscGFrZXRzLiBFcyD8YmVyc2NocmVpYnQKK2plZGVzIGluIFxmQmRlYmlhbi9zb3VyY2UvZm9ybWF0XGZQIGFuZ2VnZWJlbmUgRm9ybWF0LgorLlRQIAorXGZCXC1WXGZQXGZJTmFtZVxmUFxmQj1cZlBcZklXZXJ0XGZQCitTZXR6dCBlaW5lIEF1c2dhYmVzdWJzdGl0dXRpb25zdmFyaWFibGUuIExlc2VuIFNpZSBcZkJkZWJcLXN1YnN0dmFyc1xmUCg1KSBm/HIKK2VpbmUgQmVzcHJlY2h1bmcgZGVzIEF1c2dhYmVzdWJzdGl0dXRpb24uCisuVFAgCitcZkJcLVRcZlBcZklzdWJzdHZhcmRhdGVpXGZQCitMZXNlIFN1YnN0aXR1dGlvbnN2YXJpYWJsZW4gYXVzIFxmSXN1YnN0dmFyZGF0ZWlcZlA7IHN0YW5kYXJkbeTfaWcgd2lyZCBrZWluZQorRGF0ZWkgZ2VsZXNlbi4gRGllc2UgT3B0aW9uIGthbm4gbWVocmZhY2ggdmVyd2FuZHQgd2VyZGVuLCB1bQorU3Vic3RpdHV0aW9uc3ZhcmlhYmxlbiBhdXMgbWVocmVyZW4gRGF0ZWllbiBlaW56dWxlc2VuLgorLlRQIAorXGZCXC1EXGZQXGZJRmVsZFxmUFxmQj1cZlBcZklXZXJ0XGZQCivcYmVyc2NocmVpYmUgb2RlciBlcmfkbnplIGVpbiBBdXNnYWJlXC1TdGV1ZXJkYXRlaVwtRmVsZC4KKy5UUCAKK1xmQlwtVVxmUFxmSWZpZWxkXGZQCitFbnRmZXJuZSBlaW4gQXVzZ2FiZVwtU3RldWVyZGF0ZWlcLUZlbGQuCisuVFAgCitcZkJcLVpcZlBcZklLb21wcmltaWVydW5nXGZQLCBcZkJcLVwtY29tcHJlc3Npb25cZlA9XGZJS29tcHJpbWllcnVuZ1xmUAorR2lidCBkaWUgS29tcHJpbWllcnVuZyBhbiwgZGllIGb8ciBkaWUgYW5nZWxlZ3RlIERhdGVpZW4gKFRhcmLkbGxlIHVuZAorRGlmZnMpIHZlcndlbmRldCB3aXJkLiBCZWFjaHRlbiBTaWUsIGRhc3MgZGllc2UgT3B0aW9uIG5pY2h0IGRhenUgZvxocnQsCitkYXNzIGV4aXN0aWVyZW5kZSBUYXJi5GxsZSByZWtvbXByaW1pZXJ0IHdlcmRlbiwgc2llIGJldHJpZmZ0IG51ciBuZXVlCitEYXRlaWVuLiBVbnRlcnN0/HR6dGUgV2VydGUgc2luZCBcZklnemlwXGZQLCBcZkliemlwMlxmUCwgXGZJbHptYVxmUCB1bmQKK1xmSXh6XGZQLiBcZklnemlwXGZQIGlzdCB2b3JlaW5nZXN0ZWxsdC4gXGZJeHpcZlAgd2lyZCBlcnN0IHNlaXQgRHBrZ1wtZGV2IDEuMTUuNQordW50ZXJzdPx0enQuCisuVFAgCitcZkJcLXpcZlBcZklTdHVmZVxmUCwgXGZCXC1cLWNvbXByZXNzaW9uXC1sZXZlbFxmUD1cZklTdHVmZVxmUAorWnUgdmVyd2VuZGVuZGUgS29tcHJpbWllcnN0dWZlLiBXaWUgYmVpIFxmQlwtWlxmUCBiZXRyaWZmdCBkaWVzIG51ciBuZXUKK2FuZ2VsZWd0ZSBEYXRlaWVuLiBVbnRlcnN0/HR6dGUgV2VydGUgc2luZCBcZkkxXGZQIGJpcyBcZkk5XGZQLCBcZkliZXN0XGZQIChhbQorYmVzdGVuKSB1bmQgXGZJZmFzdFxmUCAoc2NobmVsbCkuIERlciBTdGFuZGFyZHdlcnQgaXN0IFxmSTlcZlAgZvxyIEd6aXAgdW5kIEJ6aXAyLAorXGZJNlxmUCBm/HIgWHogdW5kIEx6bWEuCisuVFAgCitcZkJcLWlcZlBbXGZJcmVnZXhwXGZQXSwgXGZCXC1cLWRpZmZcLWlnbm9yZVxmUFs9XGZJcmVnZXhwXGZQXQorU2llIGv2bm5lbiBlaW5lbiByZWd1bORyZW4gUGVybFwtQXVzZHJ1Y2sgYW5nZWJlbiwgZGVyIGF1ZiBEYXRlaWVuIHBhc3N0LCBkaWUKK1NpZSBhdXMgZGVyIExpc3RlIGRlciBEYXRlaWVuIGb8ciBkZW4gRGlmZiBlbnRmZXJuZW4gbfZjaHRlbjsgZGllc2UgTGlzdGUKK3dpcmQgdm9uIGVpbmVtIEZpbmRcLUJlZmVobCBnZW5lcmllcnQuIEZhbGxzIGRhcyBRdWVsbHBha2V0IGFscyBWZXJzaW9uCiszXC1RdWVsbHBha2V0IG1pdHRlbHMgZWluZXMgVkNTIGdlYmF1dCB3aXJkLCBpZ25vcmllcnQgZGllcyBzdGF0dGRlc3NlbgorxG5kZXJ1bmdlbiBhbiBiZXN0aW1tdGVuIERhdGVpZW4sIGRpZSBub2NoIG5pY2h0IPxiZXJ0cmFnZW4gKLtjb21taXR0ZWSrKQord3VyZGVuIChtaXQgXC1pLiogd2VyZGVuIGFsbGUgZGF2b24gaWdub3JpZXJ0KS4gXGZCXC1pXGZQIGFrdGl2aWVydCBkaWVzZSBPcHRpb24KK21pdCBlaW5lbSB2b3JlaW5nZXN0ZWxsdGVuIHJlZ3Vs5HJlbiBBdXNkcnVjaywgZGVyIFN0ZXVlcmRhdGVpZW4gdW5kCitcLVZlcnplaWNobmlzc2UgZGVyIGjkdWZpZ3N0ZW4gUmV2aXNpb25za29udHJvbGxzeXN0ZW1lLCBCYWNrdXBzLAorU3dhcFwtRGF0ZWllbiB1bmQgQmF1XC1BdXNnYWJldmVyemVpY2huaXNzZSB2b24gTGlidG9vbCBoZXJhdXNnZWZpbHRlcnQuIEVzCitrYW5uIG51ciBlaW5lbiBha3RpdmVuIHJlZ3Vs5HJlbiBBdXNkcnVjayBnZWJlbiwgdm9uIG1laHJmYWNoIGFuZ2VnZWJlbmVuCitcZkJcLWlcZlBcLU9wdGlvbmVuIHdpcmQgbnVyIGRpZSBsZXR6dGUgYmVy/GNrc2ljaHRpZ3QuCisKK0RpZXMgaXN0IHNlaHIgaGlsZnJlaWNoLCB1bSBpcnJlbGV2YW50ZSBEYXRlaWVuLCBkaWUgaW0gRGlmZiBhdWZnZW5vbW1lbgord2VyZGVuLCB6dSBlbnRmZXJuZW4uIEZhbGxzIFNpZSB6dW0gQmVpc3BpZWwgSWhyZSBRdWVsbGVuIGluIGVpbmVtCitSZXZpc2lvbnNrb250cm9sbHN5c3RlbSBzcGVpY2hlcm4gdW5kILtDaGVja291dKsgdmVyd2VuZGVuIG32Y2h0ZW4sIHVtIElocgorUXVlbGxwYWtldCB6dSBiYXVlbiwgb2huZSBkaWUgenVz5HR6bGljaGVuIERhdGVpZW4gdW5kIFZlcnplaWNobmlzc2UsIGRpZQorZGFyaW4gdHlwaXNjaGVyd2Vpc2UgZW50aGFsdGVuIHNpbmQgKHouQi4gQ1ZTLywgLmN2c2lnbm9yZSwgLnN2bi8pLCBtaXQKK2F1Znp1bmVobWVuLiBEZXIgdm9yZWluZ2VzdGVsbHRlIHJlZ3Vs5HJlIEF1c2RydWNrIGlzdCBiZXJlaXRzIHNlaHIKK2Vyc2No9nBmZW5kLCBhYmVyIGZhbGxzIFNpZSBpaG4gZXJzZXR6ZW4gbfxzc2VuLCBiZWFjaHRlbiBTaWUsIGRhc3MgZXIKK3N0YW5kYXJkbeTfaWcgYXVmIGFsbGUgVGVpbGUgZGVzIFBmYWRlcyBwYXNzZW4ga2Fubi4gRmFsbHMgU2llIGRhaGVyIG51ciBkZW4KK0FuZmFuZyBlaW5lcyBQZmFkZXMgb2RlciBrb21wbGV0dGUgRGF0ZWluYW1lbiB2ZXJnbGVpY2hlbiB3b2xsZW4sIG38c3NlbiBTaWUKK2RpZSBub3R3ZW5kaWdlbiBBbmtlciAoei5CLiC7KF58LymrLCC7KCR8LymrKSBzZWxic3QgYmVyZWl0c3RlbGxlbi4KKy5UUCAKK1xmQlwtXC1leHRlbmRcLWRpZmZcLWlnbm9yZVxmUD1cZklyZWdleHBcZlAKK0RlciBhbmdlZ2ViZW5lIHJlZ3Vs5HJlIEF1c2RydWNrIChQZXJsXC1Gb3JtYXQpIHdpcmQgZGVuIHN0YW5kYXJkbeTfaWdlbiBXZXJ0Cit2b24gXGZCXC1cLWRpZmZcLWlnbm9yZVxmUCBhbmQgZGVzc2VuIGFrdHVlbGxlbiBXZXJ0IChmYWxscyBnZXNldHp0KQorZXJ3ZWl0ZXJlbi4gRGllcyBlcmZvbGd0LCBpbmRlbSC7XGZCfFxmUFxmSXJlZ2V4cFxmUKsgYW4gZGVuIGV4aXN0aWVyZW5kZW4gV2VydAorYW5nZWjkbmd0IHdpcmQuIERpZXNlIE9wdGlvbiBpc3QgYmVxdWVtIGluIFxmQmRlYmlhbi9zb3VyY2Uvb3B0aW9uc1xmUCB6dQorbnV0emVuLCB1bSBlaW5pZ2UgYXV0b21hdGlzY2ggZXJzdGVsbHRlbiBEYXRlaWVuIHZvbiBkZXIgYXV0b21hdGlzY2hlbgorUGF0Y2hcLUVyemV1Z3VuZyBhdXN6dXNjaGxpZd9lbi4KKy5UUCAKK1xmQlwtSVxmUFtcZklEYXRlaW11c3RlclxmUF0sIFxmQlwtXC10YXJcLWlnbm9yZVxmUFs9XGZJRGF0ZWltdXN0ZXJcZlBdCitGYWxscyBkaWVzZSBPcHRpb24gYW5nZWdlYmVuIHdpcmQsIHdpcmQgZGVyIERhdGVpbmFtZSBhbiBkaWUKK1wtXC1leGNsdWRlXC1PcHRpb24gdm9uIFxmQnRhclxmUCgxKSB3ZWl0ZXJnZWdlYmVuLCB3ZW5uIGVzIHp1ciBFcnN0ZWxsdW5nIGRlcgorRGF0ZWkgLm9yaWcudGFyIG9kZXIgLnRhciBhdWZnZXJ1ZmVuIHdpcmQuIFp1bSBCZWlzcGllbCBm/GhydCBcLUlDVlMgZGF6dSwKK2Rhc3MgdGFyIPxiZXIgQ1ZTXC1WZXJ6ZWljaG5pc3NlIGhpbndlZ2dlaHQsIHdlbm4gZXMgZWluZSAudGFyXC1EYXRlaQorZXJzdGVsbHQuIERpZXNlIE9wdGlvbiBrYW5uIG1laHJmYWNoIHdpZWRlcmhvbHQgd2VyZGVuLCB1bSBtZWhyZXJlIE11c3RlcgorYXVmenVm/GhyZW4sIGRpZSBhdXNnZXNjaGxvc3NlbiB3ZXJkZW4gc29sbGVuLgorCitcZkJcLUlcZlAgZvxndCBzdGFuZGFyZG3k32lnIHZvbiBzZWxic3QgXC1cLWV4Y2x1ZGVcLU9wdGlvbmVuIGhpbnp1LCBkaWUgZGllCitTdGV1ZXJkYXRlaWVuIHVuZCBcLVZlcnplaWNobmlzc2UgZGVyIGjkdWZpZ3N0ZW4gUmV2aXNpb25za29udHJvbGxzeXN0ZW1lLAorQmFja3VwcywgU3dhcFwtRGF0ZWllbiB1bmQgQmF1XC1BdXNnYWJldmVyemVpY2huaXNzZSB2b24gTGlidG9vbAoraGVyYXVzZmlsdGVybi4KKy5QUAorXGZCSGlud2VpczpcZlAgT2J3b2hsIHNpZSDkaG5saWNoZSBad2Vja2UgdmVyZm9sZ2VuLCBoYWJlbiBcZkJcLWlcZlAgdW5kIFxmQlwtSVxmUCBlaW5lCitzZWhyIHZlcnNjaGllZGVuZSBTeW50YXggdW5kIFNlbWFudGlrLiBcZkJcLWlcZlAga2FubiBudXIgZWlubWFsIGFuZ2VnZWJlbgord2VyZGVuIHVuZCBuaW1tdCBlaW5lbiByZWd1bORyZW4gUGVybGF1c2RydWNrIGFuLCBkZXIgZ2VnZW4gZGVuIHZvbGxlbgorcmVsYXRpdmVuIFBmYWQgamVkZXIgRGF0ZWkgZ2VwcvxmdCB3aXJkLiBcZkJcLUlcZlAga2FubiBtZWhyZmFjaCBhbmdlZ2ViZW4KK3dlcmRlbiB1bmQgbmltbXQgZWluIERhdGVpbmFtZW5cLU11c3RlciBtaXQgU2hlbGxcLUpva2VyemVpY2hlbiBhbi4gRGFzIE11c3Rlcgord2lyZCBnZWdlbiBkZW4gdm9sbGVuIHJlbGF0aXZlbiBQZmFkIGFiZXIgYXVjaCBpbmRpdmlkdWVsbCBnZWdlbiBqZWRlbiBUZWlsCitkZXMgUGZhZGVzIGFuZ2V3ZW5kZXQuIERpZSBleGFrdGUgU3ltYW50aWsgZGVyIE9wdGlvbiBcLVwtZXhjbHVkZSBpc3QgZXR3YXMKK2tvbXBsaXppZXJ0LCBsZXNlbiBTaWUKK2h0dHA6Ly93d3cuZ251Lm9yZy9zb2Z0d2FyZS90YXIvbWFudWFsL3Rhci5odG1sI3dpbGRjYXJkcyBm/HIgZWluZSBrb21wbGV0dGUKK0Rva3VtZW50YXRpb24uCisKK0RlciB2b3JlaW5nZXN0ZWxsdGUgcmVndWzkcmUgQXVzZHJ1Y2sgdW5kIE11c3RlciBm/HIgYmVpZGUgT3B0aW9uZW4ga/ZubmVuCitpbiBkZXIgQXVzZ2FiZSBkZXMgQmVmZWhscyBcZkJcLVwtaGVscFxmUCBnZXNlaGVuIHdlcmRlbi4KKy5TSCAiR0VORVJJU0NIRSBFWFRSQUhJRVJVTkdTT1BUSU9ORU4iCisuVFAgCitcZkJcLVwtbm9cLWNvcHlcZlAKK0tvcGllcmUgZGllIE9yaWdpbmFsXC1UYXJi5GxsZSBpbiBkaWUgTuRoZSBkZXMgZXh0cmFoaWVydGVuIFF1ZWxscGFrZXRzLgorLlRQIAorXGZCXC1cLW5vXC1jaGVja1xmUAorUHL8ZmUgU2lnbmF0dXJlbiB1bmQgUHL8ZnN1bW1lbiB2b3IgZGVtIEVudHBhY2tlbiBuaWNodC4KKy5UUCAKK1xmQlwtXC1yZXF1aXJlXC12YWxpZFwtc2lnbmF0dXJlXGZQCitFbnRwYWNrZW4gZGVzIFF1ZWxscGFrZXRzIGFibGVobmVuLCBmYWxscyBlcyBrZWluZSBPcGVuUEdQXC1TaWduYXR1ciBlbnRo5Gx0LAorZGllIGVudHdlZGVyIG1pdCBkZW0gXGZJdHJ1c3RlZGtleXMuZ3BnXGZQXC1TY2hs/HNzZWxyaW5nIGRlcyBCZW51dHplcnMsIG1pdAorZWluZW0gZGVyIFNjaGz8c3NlbHJpbmdlbiBkZXMgTGllZmVyYW50ZW4gb2RlciBtaXQgZWluZW0gZGVyIG9mZml6aWVsbGVuCitEZWJpYW5cLVNjaPxzc2VscmluZ2UgKFxmSS91c3Ivc2hhcmUva2V5cmluZ3MvZGViaWFuXC1rZXlyaW5nLmdwZ1xmUCB1bmQKK1xmSS91c3Ivc2hhcmUva2V5cmluZ3MvZGViaWFuXC1tYWludGFpbmVycy5ncGdcZlApIPxiZXJwcvxmdCB3ZXJkZW4ga2Fubi4KKworLlNIIFFVRUxMUEFLRVRcLUZPUk1BVEUKK0ZhbGxzIFNpZSBuaWNodCB3aXNzZW4sIHdlbGNoZXMgUXVlbGxmb3JtYXQgU2llIHZlcndlbmRlbiBzb2xsZW4sIHZlcndlbmRlbgorU2llIHdhaHJzY2hlaW5saWNoIGFtIGJlc3RlbiBlbnR3ZWRlciC7My4wIChxdWlsdCmrIG9kZXIguzMuMAorKG5hdGl2ZSmrLiBMZXNlbiBTaWUgaHR0cDovL3dpa2kuZGViaWFuLm9yZy9Qcm9qZWN0cy9EZWJTcmMzLjAgZvxyCitJbmZvcm1hdGlvbmVuIPxiZXIgZGVuIEVpbnNhdHogZGllc2VyIEZvcm1hdGUgaW5uZXJoYWxiIHZvbiBEZWJpYW4uCisKKy5TUyAiRm9ybWF0OiAxLjAiCitFaW4gUXVlbGxwYWtldCBpbiBkaWVzZW0gRm9ybWF0IGJlc3RlaHQgZW50d2VkZXIgYXVzIGVpbmVtIFxmQi5vcmlnLnRhci5nelxmUAorbWl0IHp1Z2Vo9nJpZ2VtIFxmQi5kaWZmLmd6XGZQIG9kZXIgZWluZW0gZWluemVsbmVuIFxmQi50YXIuZ3pcZlAgKGluIGRpZXNlbSBGYWxsCit3aXJkIGRhcyBQYWtldCBhbHMgXGZJbmF0aXZcZlAgYmV6ZWljaG5ldCkuCisKK1xmQkV4dHJhaGllcmVuXGZQCisKK0V4dHJhaGllcmVuIGVpbmVzIG5hdGl2ZW4gUGFrZXRzIGlzdCBlaW4gZWluZmFjaGVzIEV4dHJhaGllcmVuIGVpbmVzCitlaW56ZWxuZW4gVGFyYmFsbHMgaW4gZGFzIFppZWx2ZXJ6ZWljaG5pcy4gRXh0cmFoaWVyZW4gZWluZXMgbmljaHRcLW5hdGl2ZW4KK1Bha2V0cyBlcmZvbGd0IHp1ZXJzdCBkdXJjaCBFbnRwYWNrZW4gZGVzIFxmQi5vcmlnLnRhci5nelxmUCB1bmQgZGFubiBkdXJjaAorQW53ZW5kdW5nIGRlcyBQYXRjaGVzIGF1cyBkZXIgXGZCLmRpZmYuZ3pcZlBcLURhdGVpLiBEZXIgWmVpdHN0ZW1wZWwgYWxsZXIKK2dlcGF0Y2h0ZW4gRGF0ZWllbiB3aXJkIGF1ZiBkZW4gWmVpdHB1bmt0IGRlciBFeHRyYWhpZXJ1bmcgZGVzIFF1ZWxscGFrZXRzCit6dXL8Y2tnZXNldHp0IChkYXMgdmVybWVpZGV0IFplaXRzdGVtcGVsdmVyc+R0emUsIGRpZSB6dSBQcm9ibGVtZW4gZvxocmVuLAord2VubiBhdXRvZ2VuZXJpZXJ0ZSBEYXRlaWVuIGdlcGF0Y2h0IHdlcmRlbikuIERlciBEaWZmIGthbm4gbmV1ZSBEYXRlaWVuCithbmxlZ2VuIChkYXMgZ2VzYW10ZSBEZWJpYW5cLVZlcnplaWNobmlzIHdpcmQgYXVmIGRpZXNlIFdlaXNlIGVyc3RlbGx0KSwga2FubgorYWJlciBrZWluZSBEYXRlaWVuIGVudGZlcm5lbiAobGVlcmUgRGF0ZWllbiBibGVpYmVuIHp1cvxjaykuCisKK1xmQkJhdWVuXGZQCisKK0JhdWVuIGVpbmVzIG5hdGl2ZW4gUGFrZXQgYmVzdGVodCBudXIgYXVzIGRlbSBFcnN0ZWxsZW4gZWluZXMgZWluemlnZW4KK1RhcmJhbGxzIG1pdCBkZW0gUXVlbGx2ZXJ6ZWljaG5pcy4gQmF1ZW4gZWluZXMgbmljaHRcLW5hdGl2ZW4gUGFrZXRzIHNjaGxpZd90CitkYXMgRXh0cmFoaWVyZW4gZGVzIE9yaWdpbmFsXC1UYXJiYWxscyBpbiBlaW4gc2VwYXJhdGVzIFZlcnplaWNobmlzILsub3JpZ6sKK3VuZCBkaWUgTmV1ZXJzdGVsbHVuZyBkZXMgXGZCLmRpZmYuZ3pcZlAgZHVyY2ggVmVyZ2xlaWNoIGRlcworUXVlbGxwYWtldFwtXGZJVmVyemVpY2huaXNzZXNcZlAgbWl0IGRlbSBWZXJ6ZWljaG5pcyAub3JpZyBlaW4uCisKKy5UUCAKK1xmQkJhdVwtT3B0aW9uZW4gKG1pdCBcLWIpOlxmUAorLlBQCitGYWxscyBlaW4gendlaXRlcyBuaWNodFwtT3B0aW9uc1wtQXJndW1lbnQgYW5nZWdlYmVuIGlzdCwgc29sbHRlIGVzIGRlciBOYW1lbgorZGVzIE9yaWdpbmFscXVlbGx2ZXJ6ZWljaG5pc3NlcyBvZGVyIGRlciBUYXJkYXRlaSBzZWluLiBGYWxscyBkYXMgUGFrZXQKK0RlYmlhblwtc3BlemlmaXNjaCBpc3QsIGRhbm4gc29sbHRlIGRpZXNlcyBBcmd1bWVudCBkaWUgbGVlcmUgWmVpY2hlbmtldHRlCitzZWluLCBkYSBlcyBrZWluIERlYmlhbmlzaWVydW5nc1wtRGlmZiBnaWJ0LiBGYWxscyBrZWluIHp3ZWl0ZXMgQXJndW1lbnQKK/xiZXJnZWJlbiB3aXJkLCBkYW5uIHNjaGF1dCBcZkJkcGtnXC1zb3VyY2VcZlAgbmFjaCBkZXIgdXJzcHL8bmdsaWNoZW4gVGFyZGF0ZWkKK1xmSVBha2V0XGZQXGZCX1xmUFxmSVVwc3RyZWFtXC1WZXJzaW9uXGZQXGZCLm9yaWcudGFyLlxmUFxmSUVyd2VpdGVydW5nXGZQIG9kZXIgZGVtCit1cnNwcvxuZ2xpY2hlbiBRdWVsbHZlcnplaWNobmlzIFxmSVZlcnplaWNobmlzXGZQXGZCLm9yaWdcZlAsIGFiaORuZ2lnIHZvbiBkZW4KK1xmQlwtc1hcZlBcLUFyZ3VtZW50ZW4uCisKK1xmQlwtc2FcZlAsIFxmQlwtc3BcZlAsIFxmQlwtc2tcZlAsIFxmQlwtc3VcZlAgdW5kIFxmQlwtc3JcZlAgd2VyZGVuIGtlaW5lIGV4aXN0aWVyZW5kZW4KK1RhcmRhdGVpZW4gb2RlciBWZXJ6ZWljaG5pc3NlIPxiZXJzY2hyZWliZW4uIEZhbGxzIGRpZXMgZ2V3/G5zY2h0IGlzdCwKK3NvbGx0ZW4gc3RhdHRkZXNzZW4gXGZCXC1zQVxmUCwgXGZCXC1zUFxmUCwgXGZCXC1zS1xmUCwgXGZCXC1zVVxmUCB1bmQgXGZCXC1zUlxmUCB2ZXJ3ZW5kZXQKK3dlcmRlbi4KKy5UUCAKK1xmQlwtc2tcZlAKK0dpYnQgYW4sIGRhc3MgZGllIE9yaWdpbmFscXVlbGxlbiBhbHMgVGFyZGF0ZWkgZXJ3YXJ0ZXQgd2VyZGVuIHNvbGxlbiwKK3N0YW5kYXJkbeTfaWcgXGZJUGFrZXRcZlBcZkJfXGZQXGZJVXJzcHJ1bmdzdmVyc2lvblxmUFxmQi5vcmlnLnRhclxmUFxmSUVyd2VpdGVydW5nXGZQLiBFcword2lyZCBkaWVzZSBPcmlnaW5hbHF1ZWxsZW4gYWxzIFRhcmRhdGVpIGFtIFBsYXR6IGJlbGFzc2VuLCBvZGVyIHNpZSBpbiBkYXMKK2FrdHVlbGxlIFZlcnplaWNobmlzIGtvcGllcmVuLCBmYWxscyBzaWUgZG9ydCBub2NoIG5pY2h0IHNpbmQuIERlciBUYXJiYWxsCit3aXJkIG5hY2ggXGZJVmVyemVpY2huaXNcZlBcZkIub3JpZ1xmUCBm/HIgZGllIEVyc3RlbGx1bmcgZGVzIERpZmZzIGVudHBhY2t0LgorLlRQIAorXGZCXC1zcFxmUAorV2llIFxmQlwtc2tcZlAsIGFiZXIgZGFzIFZlcnplaWNobmlzIHdpcmQgZGFuYWNoIGVudGZlcm50LgorLlRQIAorXGZCXC1zdVxmUAorR2lidCBhbiwgZGFzcyBkaWUgT3JpZ2luYWxxdWVsbGVuIGFscyBWZXJ6ZWljaG5pcyBlcndhcnRldCB3ZXJkZW4sCitzdGFuZGFyZG3k32lnIFxmSVBha2V0XGZQXGZCXC1cZlBcZklVcnNwcnVuZ3N2ZXJzaW9uXGZQXGZCLm9yaWdcZlAuIFxmQmRwa2dcLXNvdXJjZVxmUCB3aXJkCitkYXJhdXMgZWluIG5ldWVzIE9yaWdpbmFsXC1RdWVsbGFyY2hpdiBlcnN0ZWxsZW4uCisuVFAgCitcZkJcLXNyXGZQCitXaWUgXGZCXC1zdVxmUCwgYWJlciBkYXMgVmVyemVpY2huaXMgd2lyZCBuYWNoIGRlciBWZXJ3ZW5kdW5nIGVudGZlcm50LgorLlRQIAorXGZCXC1zc1xmUAorR2lidCBhbiwgZGFzcyBkaWUgT3JpZ2luYWxxdWVsbGVuIHNvd29obCBhbHMgVmVyemVpY2huaXMgYWxzIGF1Y2ggYWxzCitUYXJkYXRlaSB2ZXJm/GdiYXIgc2luZC4gZHBrZ1wtc291cmNlIHdpcmQgZGFzIFZlcnplaWNobmlzIHp1ciBFcnN0ZWxsdW5nIGRlcworRGlmZnMgdmVyd2VuZGVuLCBhYmVyIGRpZSBUYXJkYXRlaSBm/HIgZGllIFxmQi5kc2NcZlAuIERpZXNlIE9wdGlvbiBtdXNzIG1pdAorVm9yc2ljaHQgdmVyd2VuZGV0IHdlcmRlbiBcLSBmYWxscyBkYXMgVmVyemVpY2huaXMgdW5kIGRpZSBUYXJkYXRlaSBuaWNodAorenVzYW1tZW4gcGFzc2VuLCB3aXJkIGVpbiBmZWhsZXJoYWZ0ZXMgUXVlbGxhcmNoaXYgZXJzdGVsbHQuCisuVFAgCitcZkJcLXNuXGZQCitHaWJ0IGFuLCBkYXNzIG5pY2h0IG5hY2ggT3JpZ2luYWxxdWVsbGVuIGdlc2NoYXV0IHVuZCBrZWluIERpZmYgZXJzdGVsbHQKK3dlcmRlbiBzb2xsLiBEYXMgendlaXRlIEFyZ3VtZW50LCBmYWxscyBhbmdlZ2ViZW4sIG11c3MgZGllIGxlZXJlCitaZWljaGVua2V0dGUgc2Vpbi4gRGllcyB3aXJkIGb8ciBEZWJpYW5cLXNwZXppZmlzY2hlIFBha2V0ZSB2ZXJ3ZW5kZXQsIGRpZQora2VpbmUgUXVlbGxlbiB2b24gT3JpZ2luYWxhdXRvcmVuIHVuZCBzb21pdCBrZWluIERlYmlhbmlzaWVydW5nc1wtRGlmZiBoYWJlbi4KKy5UUCAKK1xmQlwtc2FcZlAgb2RlciBcZkJcLXNBXGZQCitHaWJ0IGFuLCBkYXNzIG5hY2ggZGVtIE9yaWdpbmFsXC1RdWVsbGFyY2hpdiBhbHMgVGFyZGF0ZWkgb2RlciBhbHMKK1ZlcnplaWNobmlzIGdlc3VjaHQgd2VyZGVuIHNvbGwgXC0gZGFzIHp3ZWl0ZSBBcmd1bWVudCwgZmFsbHMgdm9yaGFuZGVuLCBrYW5uCitlaW5lcyB2b24gYmVpZGVuIHNlaW4sIG9kZXIgZGllIGxlZXJlIFplaWNoZW5rZXR0ZSAoZGllcyBpc3Qg5HF1aXZhbGVudCB6dXIKK1ZlcndlbmR1bmcgdm9uIFxmQlwtc25cZlApLiBGYWxscyBlaW5lIFRhcmRhdGVpIGdlZnVuZGVuIHdpcmQsIHdpcmQgZGllc2UgenVyCitFcnN0ZWxsdW5nIGVpbmVzIERpZmZzIGVudHBhY2t0IHVuZCBkYW5hY2ggZW50ZmVybnQgKGRpZXMgaXN0IORxdWl2YWxlbnQgenUKK1xmQlwtc3BcZlApOyBmYWxscyBlaW4gVmVyemVpY2huaXMgZ2VmdW5kZW4gd2lyZCwgd2lyZCBkaWVzZXMgZ2VwYWNrdCwgdW0gZGllCitPcmlnaW5hbHF1ZWxsZW4genUgZXJzdGVsbGVuIHVuZCBkYW5hY2ggZW50ZmVybnQgKGRpZXMgaXN0IORxdWl2YWxlbnQgenUKK1xmQlwtc3JcZlApOyBmYWxscyBrZWluZXMgdm9uIGJlaWRlbiBnZWZ1bmRlbiB3aXJkLCB3aXJkIGFuZ2Vub21tZW4sIGRhc3MgZGFzCitQYWtldCBrZWluIERlYmlhbmlzaWVydW5nc1wtRGlmZiBzb25kZXJuIG51ciBlaW4gZGlyZWt0ZXMgUXVlbGxhcmNoaXYgKGRpZXMKK2lzdCDkcXVpdmFsZW50IHp1IFxmQlwtc25cZlApLiBGYWxscyBzb3dvaGwgZWluIFZlcnplaWNobmlzIGFscyBhdWNoIGVpbmUKK1RhclwtRGF0ZWkgZ2VmdW5kZW4gd2VyZGVuLCBkYW5uIGlnbm9yaWVydCBcZkJkcGtnXC1zb3VyY2VcZlAgZGFzIFZlcnplaWNobmlzLAordW5kIPxiZXJzY2hyZWlidCBlcywgZmFsbHMgXGZCXC1zQVxmUCBhbmdlZ2ViZW4gd3VyZGUgKGRpZXMgaXN0IORxdWl2YWxlbnQgenUKK1xmQlwtc1BcZlApIG9kZXIgbPZzdCBlaW5lbiBGZWhsZXIgYXVzLCBmYWxscyBcZkJcLXNhXGZQIGFuZ2VnZWJlbiB3dXJkZS4gXGZCXC1zQVxmUCBpc3QKK2RpZSBWb3JlaW5zdGVsbHVuZy4KKy5UUCAKK1xmQlwtXC1hYm9ydFwtb25cLXVwc3RyZWFtXC1jaGFuZ2VzXGZQCitEZXIgUHJvemVzcyBzY2hs5Gd0IGZlaGwsIGZhbGxzIGRhcyBlcnN0ZWxsdGUgRGlmZiDEbmRlcnVuZ2VuIGFuIERhdGVpZW4KK2F132VyaGFsYiBkZXMgVW50ZXJ2ZXJ6ZWljaG5pc3NlcyC7ZGViaWFuqyBlbnRo5Gx0LiBEaWVzZSBPcHRpb24gaXN0IGluCitcZkJkZWJpYW4vc291cmNlL29wdGlvbnNcZlAgbmljaHQgZXJsYXVidCwga2FubiBhYmVyIGluCitcZkJkZWJpYW4vc291cmNlL2xvY2FsXC1vcHRpb25zXGZQIHZlcndhbmR0IHdlcmRlbi4KKworLlRQIAorXGZCRXh0cmFoaWVydW5nc1wtT3B0aW9uZW4gKG1pdCBcLXgpOlxmUAorLlBQCitJbiBhbGxlbiBG5GxsZW4gd2VyZGVuIGRpZSBPcmlnaW5hbHF1ZWxsYuR1bWUgZW50ZmVybnQuCisuVFAgCitcZkJcLXNwXGZQCitWZXJ3ZW5kZXQgYmVpbSBFeHRyYWhpZXJlbi4gRGllIE9yaWdpbmFscXVlbGxlbiAoZmFsbHMgdm9yaGFuZGVuKSB3ZXJkZW4gYWxzCitUYXJcLURhdGVpIGJlbGFzc2VuLiBGYWxscyBkaWVzZSBzaWNoIG5pY2h0IGltIGFrdHVlbGxlbiBWZXJ6ZWljaG5pcyBiZWZpbmRlbgorb2RlciBmYWxscyBlaW5lIGV4aXN0aWVyZW5kZSwgYWJlciBkYXZvbiB2ZXJzY2hpZWRlbmUgRGF0ZWkgYmVyZWl0cwordm9yaGFuZGVuIGlzdCwgd2lyZCBzaWUgZG9ydCBoaW4ga29waWVydC4gKFxmQkRpZXMgaXN0IGRpZSBWb3JlaW5zdGVsbHVuZy5cZlApCisuVFAgCitcZkJcLXN1XGZQCitFbnRwYWNrdCBkZW4gT3JpZ2luYWxxdWVsbGJhdW0uCisuVFAgCitcZkJcLXNuXGZQCitTdGVsbHQgc2ljaGVyLCBkYXNzIGRpZSBPcmlnaW5hbHF1ZWxsZW4gd2VkZXIgaW4gZGFzIGFrdHVlbGxlIFZlcnplaWNobmlzCitrb3BpZXJ0IG5vY2ggZW50cGFja3Qgd2VyZGVuLiBKZWRlciBPcmlnaW5hbHF1ZWxsYmF1bSwgZGVyIGltIGFrdHVlbGxlbgorVmVyemVpY2huaXMgd2FyLCB3aXJkIGRlbm5vY2ggZW50ZmVybnQuCisuUFAKK0FsbGUgXGZCXC1zXGZQXGZJWFxmUFwtT3B0aW9uZW4gc2NobGll32VuIHNpY2ggcGFhcndlaXNlIGF1cy4gRmFsbHMgU2llIG1laHIgYWxzCitlaW5lIGFuZ2ViZW4sIHdpcmQgbnVyIGRpZSBsZXR6dGUgdmVyd2VuZGV0LgorLlRQIAorXGZCXC1cLXNraXBcLWRlYmlhbml6YXRpb25cZlAKK9xiZXJzcHJpbmd0IGRpZSBBbndlbmR1bmcgZGVzIERlYmlhblwtRGlmZnMgYXVmIGRpZSBRdWVsbGVuIGRlcgorT3JpZ2luYWxhdXRvcmVuLgorLgorLlNTICJGb3JtYXQ6IDIuMCIKK0F1Y2ggYWxzILt3aWcmcGVuqyBiZWthbm50LiBEaWVzZXMgRm9ybWF0IHdpcmQgbmljaHQgZvxyIGRlbiBicmVpdGVuIEVpbnNhdHoKK2VtcGZvaGxlbiwgZXMgd2lyZCBkdXJjaCBkYXMgRm9ybWF0ILszLjAgKHF1aWx0KasgZXJzZXR6dC4gV2lnJnBlbiB3YXIgZGllCitlcnN0ZSBTcGV6aWZpa2F0aW9uIGVpbmVzIFBha2V0Zm9ybWF0cyBkZXIgbuRjaHN0ZW4gR2VuZXJhdGlvbi4KKworRGFzIFZlcmhhbHRlbiBkaWVzZXMgRm9ybWF0cyBpc3QgaWRlbnRpc2NoIHp1bSBGb3JtYXQguzMuMCAocXVpbHQpqywKK2FiZ2VzZWhlbiBkYXZvbiwgZGFzcyBlcyBrZWluZSBleHBsaXppdGUgTGlzdGUgdm9uIFBhdGNoZXMgdmVyd2VuZGV0LiBBbGxlCitEYXRlaWVuIGluIFxmQmRlYmlhbi9wYXRjaGVzL1xmUCwgZGllIGF1ZiBkZW4gcmVndWzkcmVuIFBlcmxhdXNkcnVjayBcZkJbXGV3XC1dK1xmUAorcGFzc2VuLCBt/HNzZW4gZ/xsdGlnZSBQYXRjaGVzIHNlaW46IHNpZSB3ZXJkZW4genVtIFplaXRwdW5rdCBkZXIKK0V4dHJhaGllcnVuZyBhbmdld2FuZHQuCisKK1dlbm4gZWluIG5ldWVzIFF1ZWxscGFrZXQgZ2ViYXV0IHdpcmQsIHdlcmRlbiBhbGxlIMRuZGVydW5nZW4gYW4gZGVuIFF1ZWxsZW4KK2RlciBPcmlnaW5hbGF1dG9yZW4gaW4gZWluZW0gUGF0Y2ggbWl0IE5hbWVuIFxmQnp6X2RlYmlhblwtZGlmZlwtYXV0b1xmUAorZ2VzcGVpY2hlcnQuCisuCisuU1MgIkZvcm1hdDogMy4wIChuYXRpdmUpIgorRGllc2VzIEZvcm1hdCBpc3QgZWluZSBFcndlaXRlcnVuZyBkZXMgbmF0aXZlbiBQYWtldGZvcm1hdHMgd2llIGVzIGltCisxLjBcLUZvcm1hdCBkZWZpbmllcnQgaXN0LiBFcyB1bnRlcnN0/HR6dCBhbGxlIEtvbXByZXNzaW9uc21ldGhvZGVuIHVuZAoraWdub3JpZXJ0IHN0YW5kYXJkbeTfaWcgYWxsZSBWQ1NcLXNwZXppZmlzY2hlbiBEYXRlaWVuIHVuZCBWZXJ6ZWljaG5pc3NlCitzb3dpZSB2aWVsZSB0ZW1wb3LkcmUgRGF0ZWllbiAobGVzZW4gU2llIGRlbiBTdGFuZGFyZHdlcnQgZGVyIE9wdGlvbiBcZkJcLUlcZlAKK2JlaSBkZXIgQXVzZ2FiZSB2b24gXGZCXC1cLWhlbHBcZlApLgorLgorLlNTICJGb3JtYXQ6IDMuMCAocXVpbHQpIgorRWluIFF1ZWxscGFrZXQgaW4gZGllc2VtIEZvcm1hdCBlbnRo5Gx0IG1pbmRlc3RlbnMgZWluZW4gT3JpZ2luYWxcLVRhcmJhbGwKKyhcZkIub3JpZy50YXIuXGZQXGZJZXJ3XGZQLCB3b2JlaSBcZkllcndcZlAgXGZCZ3pcZlAsIFxmQmJ6MlxmUCwgXGZCbHptYVxmUCB1bmQgXGZCeHpcZlAgc2Vpbgora2FubikgdW5kIGVpbmVuIERlYmlhblwtVGFyYmFsbCAoXGZCLmRlYmlhbi50YXIuXGZQXGZJZXJ3XGZQKS4gRXMga2FubiBhdWNoCit6dXPkdHpsaWNoZSBPcmlnaW5hbFwtVGFyYuRsbGUgKFxmQi5vcmlnXC1cZlBcZklLb21wb25lbnRlXGZQXGZCLnRhci5cZlBcZkllcndcZlApKQorZW50aGFsdGVuLiBcZklLb21wb25lbnRlXGZQIGthbm4gbnVyIGFscGhhbnVtZXJpc2NoZSBaZWljaGVuIHVuZAorR2VkYW5rZW5zdHJpY2hlICi7XC2rKSBlbnRoYWx0ZW4uCisuUFAKK1xmQkV4dHJhaGllcmVuXGZQCisuUFAKK0RlciBIYXVwdFwtT3JpZ2luYWx0YXJiYWxsIHdpcmQgenVlcnN0IGV4dHJhaGllcnQsIGRhbm4gd2VyZGVuIGFsbGUKK3p1c+R0emxpY2hlbiBPcmlnaW5hbHRhcmLkbGxlIGluIFVudGVydmVyemVpY2huaXNzZSBleHRyYWhpZXJ0LCBkaWUgbmFjaCBkZW0KK1xmSUtvbXBvbmVudGVcZlBuXC1UZWlsIGlocmVzIERhdGVpbmFtZW5zIGJlbmFubnQgd2VyZGVuIChqZWRlcyBiZXJlaXRzCitleGlzdGllcmVuZGUgVmVyemVpY2huaXMgd2lyZCBlcnNldHp0KS4gRGVyIERlYmlhblwtVGFyYmFsbCB3aXJkIGF1ZiBkYXMKK1F1ZWxsdmVyemVpY2huaXMgZXh0cmFoaWVydCwgbmFjaGRlbSBqZWRlcyBiZXJlaXRzIGV4aXN0aWVyZW5kZQorXGZCZGViaWFuXGZQXC1WZXJ6ZWljaG5pcyBlbnRmZXJudCB3dXJkZS4gQmVhY2h0ZW4gU2llLCBkYXNzIGRlciBEZWJpYW5cLVRhcmJhbGwKK2VpbiBcZkJkZWJpYW5cZlBcLVVudGVydmVyemVpY2huaXMgZW50aGFsdGVuIG11c3MsIGVyIGFiZXIgYXVjaCBCaW7kcmRhdGVpZW4KK2F132VyaGFsYiBkaWVzZXMgVmVyemVpY2huaXNzZXMgZW50aGFsdGVuIGRhcmYgKHNlaGVuIFNpZSBoaWVyenUgZGllIE9wdGlvbgorXGZCXC1cLWluY2x1ZGVcLWJpbmFyaWVzXGZQKS4KKy5QUAorRGFubiB3ZXJkZW4gYWxsZSBpbiBcZkJkZWJpYW4vcGF0Y2hlcy9kZWJpYW4uc2VyaWVzXGZQIG9kZXIKK1xmQmRlYmlhbi9wYXRjaGVzL3Nlcmllc1xmUCBhdWZnZWb8aHJ0ZW4gUGF0Y2hlcyBhbmdld2FuZHQuIEZhbGxzIGRpZSBlcnN0ZXJlCitEYXRlaSB2ZXJ3YW5kdCB3aXJkIHVuZCBkaWUgbGV0enRlcmUgbmljaHQgZXhpc3RpZXJ0IChvZGVyIGVpbiBTeW1saW5rIGlzdCksCitkYW5uIHdpcmQgZGllIGxldHp0ZXJlIG1pdCBlaW5lbSBTeW1saW5rIHp1IGVyc3RlcmVyIGVyc2V0enQuIERpZXMgaXN0IHp1cgorVmVyZWluZmFjaHVuZyBkZXIgVmVyd2VuZHVuZyB2b24gUXVpbHQgZ2VkYWNodCwgdW0gZGVuIFNhdHogYW4gUGF0Y2hlcyB6dQordmVyd2FsdGVuLiBCZWFjaHRlbiBTaWUgYWxsZXJkaW5ncywgZGFzcyBcZkJkcGtnXC1zb3VyY2VcZlAgendhciBTZXJpZW5kYXRlaWVuCithdXN3ZXJ0ZXQsIGluIGRlbmVuIGV4cGxpeml0ZSBPcHRpb25lbiBm/HIgZGllIEFud2VuZHVuZyBkZXIgUGF0Y2hlcwordmVyd2FuZHQgd2VyZGVuIChkaWVzZSB3ZXJkZW4gYXVmIGplZGUgWmVpbGUgbmFjaCBkZW0gUGF0Y2hcLURhdGVpbmFtZW4gdW5kCitlaW5lbSBvZGVyIG1laHJlcmVuIExlZXJ6ZWljaGVuIGdlc3BlaWNoZXJ0KSwgZGllc2UgT3B0aW9uZW4gZGFubiBhYmVyCitpZ25vcmllcnQgdW5kIGltbWVyIGVyd2FydGV0LCBkYXNzIGRpZSBQYXRjaGVzIG1pdCBkZXIgT3B0aW9uIFxmQlwtcDFcZlAgdm9uCitcZkJwYXRjaFxmUCBhbmdld2FuZHQgd2VyZGVuIGv2bm5lbi4gRXMgd2lyZCBkYWhlciBlaW5lIFdhcm51bmcgYXVzZ2ViZW4sIHdlbm4KK2VzIGF1ZiBzb2xjaGUgT3B0aW9uZW4gdHJpZmZ0LCB1bmQgZGVyIEJhdSB3aXJkIHdhaHJzY2hlaW5saWNoIGZlaGxzY2hsYWdlbi4KKy5QUAorxGhubGljaCB3aWUgYmVpIFF1aWx0IGv2bm5lbiBQYXRjaGVzIGF1Y2ggRGF0ZWllbiBlbnRmZXJuZW4uCisuUFAKK0RpZSBEYXRlaSBcZkIucGMvYXBwbGllZFwtcGF0Y2hlc1xmUCB3aXJkIGFuZ2VsZWd0LCBmYWxscyBlaW5pZ2UgUGF0Y2hlcyB35GhyZW5kCitkZXIgRXh0cmFoaWVydW5nIGFuZ2V3YW5kdCB3dXJkZW4uCisuUFAKK1xmQkJhdWVuXGZQCisuUFAKK0FsbGUgaW0gYWt0dWVsbGVuIFZlcnplaWNobmlzIGdlZnVuZGVuZW4gT3JpZ2luYWxcLVRhcmLkbGxlIHdlcmRlbiBpbiBlaW4KK3RlbXBvcuRyZXMgVmVyemVpY2huaXMgZW50cGFja3QuIEhpZXJiZWkgd2lyZCBkaWUgZ2xlaWNoZSBMb2dpayB3aWUgZvxyIGRhcworRW50cGFja2VuIHZlcndhbmR0LCBkYXMgZGViaWFuXC1WZXJ6ZWljaG5pcyB3aXJkIGluIGRhcyB0ZW1wb3LkcmUgVmVyemVpY2huaXMKK2tvcGllcnQgdW5kIGFsbGUgUGF0Y2hlcyBhdd9lciBkZW0gYXV0b21hdGlzY2hlbiBQYXRjaAorKFxmQmRlYmlhblwtY2hhbmdlc1wtXGZQXGZJVmVyc2lvblxmUCBvZGVyIFxmQmRlYmlhblwtY2hhbmdlc1xmUCwgYWJo5G5naWcgdm9uCitcZkJcLVwtc2luZ2xlXC1kZWJpYW5cLXBhdGNoXGZQKSB3ZXJkZW4gYW5nZXdhbmR0LiBEYXMgdGVtcG9y5HJlIFZlcnplaWNobmlzIHdpcmQKK21pdCBkZW0gUXVlbGxwYWtldHZlcnplaWNobmlzIHZlcmdsaWNoZW4uIFdlbm4gZGVyIERpZmYgbmljaHQgbGVlciBpc3QsCitzY2hs5Gd0IGRlciBCYXUgZmVobCwgZmFsbHMgbmljaHQgXGZCXC1cLXNpbmdsZVwtZGViaWFuXC1wYXRjaFxmUCBvZGVyCitcZkJcLVwtYXV0b1wtY29tbWl0XGZQIHZlcndhbmR0IHd1cmRlOyBpbiBkaWVzZW0gRmFsbCB3aXJkIGRlciBEaWZmIGltCithdXRvbWF0aXNjaGVuIFBhdGNoIGdlc3BlaWNoZXJ0LiBGYWxscyBkZXIgYXV0b21hdGlzY2hlIFBhdGNoCitlcnpldWd0L2dlbPZzY2h0IHdpcmQsIHdpcmQgZXIgenUgZGVyIERhdGVpIHNlcmllcyB1bmQgZGVuIFF1aWx0XC1NZXRhZGF0ZW4KK2hpbnp1Z2Vm/Gd0IGJ6dy4gYXVzIGRpZXNlbiBnZWz2c2NodC4KKworxG5kZXJ1bmdlbiBhbiBCaW7kcmRhdGVpZW4ga/ZubmVuIGluIGVpbmVtIERpZmYgbmljaHQgZGFyZ2VzdGVsbHQgd2VyZGVuIHVuZAorZvxocmVuIGRhaGVyIHp1IGVpbmVtIEZlaGxzY2hsYWcsIGVzIHNlaSBkZW5uLCBkZXIgQmV0cmV1ZXIgaGF0IHNpY2gKK2Fic2ljaHRsaWNoIGRhenUgZW50c2NobG9zc2VuLCBkaWUgdmVy5G5kZXJ0ZSBCaW7kcmRhdGVpIGRlbSBEZWJpYW5cLVRhcmJhbGwKK2hpbnp1enVm/GdlbiAoaW5kZW0gZXIgc2llIGluIFxmQmRlYmlhbi9zb3VyY2UvaW5jbHVkZVwtYmluYXJpZXNcZlAgYXVmZ2Vm/GhydAoraGF0KS4gRGVyIEJhdSB3aXJkIGF1Y2ggZmVobHNjaGxhZ2VuLCBmYWxscyBlciBCaW7kcmRhdGVpZW4gaW0KK2RlYmlhblwtVW50ZXJ2ZXJ6ZWljaG5pcyBmaW5kZXQsIGRpZSBuaWNodCD8YmVyCitcZkJkZWJpYW4vc291cmNlL2luY2x1ZGVcLWJpbmFyaWVzXGZQIGZyZWlnZWdlYmVuIHd1cmRlbi4KKworRGFzIGFrdHVhbGlzaWVydGUgZGViaWFuXC1WZXJ6ZWljaG5pcyB1bmQgZGllIExpc3RlIGRlciB2ZXLkbmRlcnRlbiBQcm9ncmFtbWUKK3dpcmQgZGFubiB6dXIgRXJzdGVsbHVuZyBkZXMgRGViaWFuXC1UYXJiYWxscyB2ZXJ3YW5kdC4KKworRGVyIGF1dG9tYXRpc2NoIGVyc3RlbGx0ZSBEaWZmIGVudGjkbHQga2VpbmUgxG5kZXJ1bmdlbiBhbiBWQ1NcLXNwZXppZmlzY2hlbgorc293aWUgdmllbGVuIHRlbXBvcuRyZW4gRGF0ZWllbiAobGVzZW4gU2llIGhpZXJ6dSBkZW4genVyIE9wdGlvbiBcZkJcLWlcZlAKK3p1Z2VvcmRuZXRlbiBTdGFuZGFyZHdlcnQgaW4gZGVyIEF1c2dhYmUgdm9uIFxmQlwtXC1oZWxwXGZQKS4gSW5zYmVzb25kZXJlIHdpcmQKK2RhcyB2b24gUXVpbHQgdmVyd2FuZHRlIFxmQi5wY1xmUFwtVmVyemVpY2huaXMgd+RocmVuZCBkZXIgRXJzdGVsbHVuZyBkZXMKK2F1dG9tYXRpc2NoZW4gUGF0Y2hlcyBpZ25vcmllcnQuCisKK0hpbndlaXM6IFxmQmRwa2dcLXNvdXJjZVxmUCBcZkJcLVwtYmVmb3JlXC1idWlsZFxmUCAodW5kIFxmQlwtYlxmUCkgc3RlbGxlbiBzaWNoZXIsIGRhc3MKK2FsbGUgaW4gZGVyIFNlcmllc1wtRGF0ZWkgYXVmZ2Vm/GhydGVuIFBhdGNoZXMgYW5nZXdlbmRldCBzaW5kLCBzbyBkc3MgZWluCitQYWtldGJhdSBpbW1lciBtaXQgYWxsZW4gYW5nZXdhbmR0ZW4gUGF0Y2hlcyBkdXJjaGdlZvxocnQgd2lyZC4gRGllcworZXJmb2xndCwgaW5kZW0gbmljaHQgYW5nZXdhbmR0ZSBQYXRjaGVzIGVybWl0dGVsdCB3ZXJkZW4gKHNpZSBzaW5kIGluIGRlcgorRGF0ZWkgXGZCc2VyaWVzXGZQLCBhYmVyIG5pY2h0IGluIGRlciBEYXRlaSBcZkIucGMvYXBwbGllZFwtcGF0Y2hlc1xmUCBhdWZnZWb8aHJ0KQordW5kIHdlbm4gZGVyIGVyc3RlIFBhdGNoIGluIGRlbSBTYXR6IG9obmUgRmVobGVyIGFuZ2V3YW5kdCB3ZXJkZW4ga2FubiwKK3dlcmRlbiBzaWUgYWxsZSBhbmdld2FuZHQuIERpZSBPcHRpb24gXGZCXC1cLW5vXC1wcmVwYXJhdGlvblxmUCBrYW5uIHp1bQorQWJzY2hhbHRlbiBkaWVzZXMgVmVyaGFsdGVucyB2ZXJ3YW5kdCB3ZXJkZW4uCisKKy5QUAorXGZCxG5kZXJ1bmdlbiBhdWZ6ZWljaG5lblxmUAorLlRQIAorXGZCXC1cLWNvbW1pdFxmUCBbXGZJVmVyemVpY2huaXNcZlBdIFtcZklQYXRjaFwtTmFtZVxmUF0gW1xmSVBhdGNoXC1EYXRlaVxmUF0KK0Vyc3RlbGx0IGVpbmVuIFBhdGNoLCBkZXIgZGVuIGxva2FsZW4gxG5kZXJ1bmdlbiBlbnRzcHJpY2h0LCBkaWUgbmljaHQgdm9tCitRdWlsdFwtUGF0Y2hcLVN5c3RlbSB2ZXJ3YWx0ZXQgd2VyZGVuIHVuZCBpbnRlZ3JpZXJ0IGVzIHVudGVyIGRlbSBOYW1lbgorXGZJUGF0Y2hcLU5hbWVcZlAgaW4gZGFzIFBhdGNoXC1TeXN0ZW0uIEZhbGxzIGRlciBOYW1lIGZlaGx0LCB3aXJkIGVyIGludGVyYWt0aXYKK2VyZnJhZ3QuIEZhbGxzIFxmSVBhdGNoXC1EYXRlaVxmUCBhbmdlZ2ViZW4gaXN0LCB3aXJkIGVyIGFscyBQYXRjaCwgZGVyIHp1IGRlbgorbG9rYWxlbiDEbmRlcnVuZ2VuLCBkaWUgaW50ZWdyaWVydCB3ZXJkZW4gc29sbGVuLCBnZWj2cnQsIHZlcndhbmR0LiBEaWVzIGlzdAorcHJpbeRyIG5hY2ggZWluZW0gQmF1ZmVobGVyIG78dHpsaWNoLCBkZXIgZGllc2UgRGF0ZWkgdm9yZ2VuZXJpZXJ0ZS4gU29iYWxkCitkaWUgUGF0Y2ggaW50ZWdyaWVydCB3dXJkZSwgd2lyZCBlaW4gRWRpdG9yIGdlc3RhcnRldCwgc28gZGFzcyBTaWUgZGllCitNZXRhaW5mb3JtYXRpb25lbiBpbiBkZW4gS29wZnplaWxlbiBkZXMgUGF0Y2hlcyBlaW5m/GdlbiBr9m5uZW4uCisKKy5QUAorXGZCQmF1XC1PcHRpb25lblxmUAorLlRQIAorXGZCXC1cLWFsbG93XC12ZXJzaW9uXC1vZlwtcXVpbHRcLWRiPVxmUFxmSVZlcnNpb25cZlAKK0VybGF1YnQgZXMgXGZCZHBrZ1wtc291cmNlXGZQLCBlaW4gUXVlbGxwYWtldCB6dSBiYXVlbiwgZmFsbHMgZGllIFZlcnNpb24gZGVyCitRdWlsdFwtTWV0YWRhdGVuIGRpZSBhbmdlZ2ViZW5lIGlzdCwgc2VsYnN0IGZhbGxzIFxmQmRwa2dcLXNvdXJjZVxmUCBuaWNodHMgZGF2b24KK3dlad8uIEVmZmVrdGl2IHRlaWx0IGRpZXMgbWl0LCBkYXNzIGRpZSBhbmdlZ2ViZW5lIFZlcnNpb24gZGVyCitRdWlsdFwtTWV0YWRhdGVuIHp1IFZlcnNpb24gMiwgZGllIFxmQmRwa2dcLXNvdXJjZVxmUCBkZXJ6ZWl0IHVudGVyc3T8dHp0LAora29tcGF0aWJlbCBpc3QuIERpZSBWZXJzaW9uIGRlciBRdWlsdFwtTWV0YWRhdGVuIHdpcmQgaW4gXGZCLnBjLy52ZXJzaW9uXGZQCitnZXNwZWljaGVydC4KKy5UUCAKK1xmQlwtXC1pbmNsdWRlXC1yZW1vdmFsXGZQCitJZ25vcmllcmUgZW50ZmVybnRlIERhdGVpZW4gbmljaHQgdW5kIGb8Z2Ugc2llIHp1IGRlbSBhdXRvbWF0aXNjaAorZ2VuZXJpZXJ0ZW4gUGF0Y2ggaGluenUuCisuVFAgCitcZkJcLVwtaW5jbHVkZVwtdGltZXN0YW1wXGZQCitG/GdlIFplaXRzdGVtcGVsIHp1IGRlbSBhdXRvbWF0aXNjaCBnZW5lcmllcnRlbiBQYXRjaCBoaW56dS4KKy5UUCAKK1xmQlwtXC1pbmNsdWRlXC1iaW5hcmllc1xmUAorRvxnZSBhbGxlIHZlcuRuZGVydGVuIFByb2dyYW1tZSB6dSBkZW0gZGViaWFuXC1UYXJiYWxsIGhpbnp1LiBG/GdlIHNpZSBhdWNoCitpbiBcZkJkZWJpYW4vc291cmNlL2luY2x1ZGVcLWJpbmFyaWVzXGZQOiBzaWUgd2VyZGVuIGluIGZvbGdlbmRlbiBCYXV0ZW4KK3N0YW5kYXJkbeTfaWcgaGluenVnZWb8Z3QgdW5kIGRpZXNlIE9wdGlvbiB3aXJkIGRhaGVyIGRhbm4gbmljaHQgbWVocgorYmVu9nRpZ3QuCisuVFAgCitcZkJcLVwtbm9cLXByZXBhcmF0aW9uXGZQCitWZXJzdWNoZSBuaWNodCBkZW4gQmF1XC1CYXVtIGR1cmNoIEFud2VuZGVuIGFsbGVyIGRlcnplaXQgbmljaHQgYW5nZXdhbmR0ZW4KK1BhdGNoZXMgdm9yenVicmVpdGVuLgorLlRQIAorXGZCXC1cLXNpbmdsZVwtZGViaWFuXC1wYXRjaFxmUAorVmVyd2VuZGUgXGZCZGViaWFuL3BhdGNoZXMvZGViaWFuXC1jaGFuZ2VzXGZQIHN0YXR0CitcZkJkZWJpYW4vcGF0Y2hlcy9kZWJpYW5cLWNoYW5nZXNcLVxmUFxmSVZlcnNpb25cZlAgYWxzIE5hbWVuIGb8ciBkZW4gd+RocmVuZCBkZXMKK0JhdXMgYXV0b21hdGlzY2ggZ2VuZXJpZXJ0ZW4gUGF0Y2guIERpZXNlIE9wdGlvbiBpc3QgaW5zYmVzb25kZXJlIG78dHpsaWNoLAord2VubiBkYXMgUGFrZXQgaW4gZWluZW0gVkNTIGJldHJldXQgd2lyZCB1bmQgZWluIFBhdGNoXC1TYXR6IG5pY2h0Cit6dXZlcmzkc3NpZyBlcnN0ZWxsdCB3ZXJkZW4ga2Fubi4gU3RhdHRkZXNzZW4gc29sbHRlIGRlciBha3R1ZWxsZSBEaWZmIHp1CitkZW4gUXVlbGxlbiBkZXIgT3JpZ2luYWxhdXRvcmVuIGluIGVpbmVtIGVpbnplbG5lbiBQYXRjaCBnZXNwZWljaGVydAord2VyZGVuLiBEaWVzZSBPcHRpb24gc29sbHRlIGluIFxmQmRlYmlhbi9zb3VyY2UvbG9jYWxcLW9wdGlvbnNcZlAgZWluZ2VzdGVsbHQKK3dlcmRlbiB1bmQgd/xyZGUgZGFubiB2b24gZWluZXIgRGF0ZWkgXGZCZGViaWFuL3NvdXJjZS9sb2NhbFwtcGF0Y2hcLWhlYWRlclxmUAorYmVnbGVpdGV0LCBpbiBkZXIgZXJrbORydCB3aXJkLCB3aWUgZGllIERlYmlhblwtxG5kZXJ1bmdlbiBhbSBiZXN0ZW4KK2JlZ3V0YWNodGV0IHdlcmRlbiBr9m5uZW4sIGJlaXNwaWVsc3dlaXNlIGltIGVpbmdlc2V0enRlbiBWQ1MuCisuVFAgCitcZkJcLVwtY3JlYXRlXC1lbXB0eVwtb3JpZ1xmUAorRXJzdGVsbGUgZGVuIEhhdXB0b3JpZ2luYWxcLVRhcmJhbGwgYXV0b21hdGlzY2ggYWxzIGxlZXIgZmFsbHMgZXIgZmVobHQgdW5kCitmYWxscyBlcyBlcmfkbnplbmRlIE9yaWdpbmFsXC1UYXJi5GxsZSBnaWJ0LiBEaWVzZSBPcHRpb24gaXN0IGRhZvxyIGdlZGFjaHQsCit3ZW5uIGRhcyBRdWVsbHBha2V0IG51ciBlaW5lIFNhbW1sdW5nIHZvbiBtZWhyZXJlbiBTb2Z0d2FyZW4gZGVyCitPcmlnaW5hbGF1dG9yZW4gaXN0IHVuZCBlcyBrZWluZSC7SGF1cHSrXC1Tb2Z0d2FyZSBnaWJ0LgorLlRQIAorXGZCXC1cLXVuYXBwbHlcLXBhdGNoZXNcZlAKK0VudGZlcm50IGRpZSBQYXRjaGVzIGltIEhvb2sgXGZCXC1cLWFmdGVyXC1idWlsZFxmUC4gTm9ybWFsZXJ3ZWlzZSBiZW72dGlnZW4gU2llCitkaWVzZSBPcHRpb24gbmljaHQsIGRhIERwa2dcLXNvdXJjZSBhbGxlIFBhdGNoZXMgYXV0b21hdGlzY2ggZW50ZmVybmVuIHdpcmQsCit3ZW5uIGVzIHNpZSB35GhyZW5kIFxmQlwtXC1iZWZvcmVcLWJ1aWxkXGZQIGFuZ2V3YW5kdCBoYXR0ZS4gRGllc2UgT3B0aW9uIGlzdCBudXIKK2luIFxmQmRlYmlhbi9zb3VyY2UvbG9jYWxcLW9wdGlvbnNcZlAgZXJsYXVidCwgc28gZGFzcyBhbGxlIGVyc3RlbGx0ZW4KK1F1ZWxscGFrZXRlIHN0YW5kYXJkbeTfaWcgZGFzIGdsZWljaGUgVmVyaGFsdGVuIHplaWdlbi4KKy5UUCAKK1xmQlwtXC1hYm9ydFwtb25cLXVwc3RyZWFtXC1jaGFuZ2VzXGZQCitEaWVzZXIgUHJvemVzcyBzY2hs5Gd0IGZlaGwsIGZhbGxzIGVpbiBhdXRvbWF0aXNjaGVyIFBhdGNoIGVyc3RlbGx0Cit3dXJkZS4gRGllc2UgT3B0aW9uIGthbm4gZGF6dSB2ZXJ3YW5kdCB3ZXJkZW4sIHNpY2hlcnp1c3RlbGxlbiwgZGFzcyBhbGxlCivEbmRlcnVuZ2VuIGtvcnJla3QgaW4gc2VwYXJhdGVuIFF1aWx0XC1QYXRjaGVzIGF1ZmdlemVpY2huZXQgd3VyZGVuLCBiZXZvcgorZGFzIFBha2V0IGdlYmF1dCB3dXJkZS4gRGllc2UgT3B0aW9uIGlzdCBpbiBcZkJkZWJpYW4vc291cmNlL29wdGlvbnNcZlAgbmljaHQKK2VybGF1YnQsIGthbm4gYWJlciBpbiBcZkJkZWJpYW4vc291cmNlL2xvY2FsXC1vcHRpb25zXGZQIHZlcndhbmR0IHdlcmRlbi4KKy5UUCAKK1xmQlwtXC1hdXRvXC1jb21taXRcZlAKK0RlciBWb3JnYW5nIHNjaGzkZ3QgbmljaHQgZmVobCwgZmFsbHMgZWluIGF1dG9tYXRpc2NoZXIgUGF0Y2ggZXJzdGVsbHQKK3d1cmRlLCBzdGF0dGRlc3NlbiB3aXJkIGRpZXNlciBzb2ZvcnQgaW4gZGllIFF1aWx0XC1TZXJpZSBhdWZnZW5vbW1lbi4KKworLlBQCitcZkJFeHRyYWhpZXJ1bmdzXC1PcHRpb25lblxmUAorLlRQIAorXGZCXC1cLXNraXBcLWRlYmlhbml6YXRpb25cZlAKK9xiZXJzcHJpbmd0IGRhcyBFbnRwYWNrZW4gZGVzIERlYmlhblwtVGFyYmFsbHMgYXVmIGRpZSBRdWVsbGVuIGRlcgorT3JpZ2luYWxhdXRvcmVuLgorLlRQIAorXGZCXC1cLXNraXBcLXBhdGNoZXNcZlAKK1dlbmRlIGFtIEVuZGUgZGVyIEV4dHJhaGllcnVuZyBrZWluZSBQYXRjaGVzIGFuLgorLgorLlNTICJGb3JtYXQ6IDMuMCAoY3VzdG9tKSIKK0RpZXNlcyBGb3JtYXQgaXN0IGJlc29uZGVycy4gRXMgc3RlbGx0IGtlaW4gZWNodGVzIFF1ZWxscGFrZXQgZGFyLCBrYW5uIGFiZXIKK3p1ciBFcnN0ZWxsdW5nIGVpbmVzIFF1ZWxscGFrZXRzIG1pdCBiZWxpZWJpZ2VuIERhdGVpZW4gdmVyd2FuZHQgd2VyZGVuLgorLlBQCitcZkJCYXVcLU9wdGlvbmVuXGZQCisuUFAKK0FsbGUgQXJndW1lbnRlLCBkaWUga2VpbmUgT3B0aW9uZW4gc2luZCwgd2VyZGVuIGFscyBEYXRlaWVuIHZlcnN0YW5kZW4sIGRpZQoraW4gZGFzIGdlbmVyaWVydGUgUXVlbGxwYWtldCBpbnRlZ3JpZXJ0IHdlcmRlbiBzb2xsZW4uIFNpZSBt/HNzZW4gZXhpc3RpZXJlbgordW5kIHNpY2ggYmV2b3J6dWd0IGltIGFrdHVlbGxlbiBWZXJ6ZWljaG5pcyBiZWZpbmRlbi4gTWluZGVzdGVucyBlaW5lIERhdGVpCittdXNzIGFuZ2VnZWJlbiB3ZXJkZW4uCisuVFAgCitcZkJcLVwtdGFyZ2V0XC1mb3JtYXQ9XGZQXGZJV2VydFxmUAorXGZCTm90d2VuZGlnXGZQLiBEZWZpbmllcnQgZGFzIGVjaHRlIEZvcm1hdCBkZXMgZ2VuZXJpZXJ0ZW4gUXVlbGxwYWtldHMuIERpZQorZ2VuZXJpZXJ0ZSAuZHNjXC1EYXRlaSB3aXJkIGRpZXNlbiBXZXJ0IHVuZCBuaWNodCC7My4wIChjdXN0b20pqyBpbiBpaHJlbQorXGZJRm9ybWF0XGZQXC1GZWxkIGVudGhhbHRlbi4KKy4KKy5TUyAiRm9ybWF0OiAzLjAgKGdpdCkiCitEaWVzZXMgRm9ybWF0IGlzdCBleHBlcmltZW50ZWxsLgorLlBQCitFaW4gUXVlbGxwYWtldCBpbiBkaWVzZW0gRm9ybWF0IGJlc3RlaHQgYXVzIGVpbmVtIGVpbnplbG5lbiBC/G5kZWwgZWluZXMKK0dpdFwtRGVwb3RzIFxmQi5naXRcZlAsIHVtIGRpZSBRdWVsbGVuIGRlcyBQYWtldHMgenUgdmVyd2FocmVuLiBFcyBrYW5uIGF1Y2gKK2VpbmUgRGF0ZWkgXGZCLmdpdHNoYWxsb3dcZlAgZ2ViZW4sIGRpZSBkaWUgUmV2aXNpb25lbiBm/HIgZWluZW4gZmxhY2hlbgorR2l0XC1DbG9uZSBhdWZm/GhydC4KKy5QUAorXGZCRXh0cmFoaWVyZW5cZlAKKy5QUAorRGFzIEL8bmRlbCB3aXJkIGFscyBHaXRcLURlcG90IGluIGRhcyBaaWVsdmVyemVpY2huaXMgZ2VrbG9udC4gRmFsbHMgZXMgZWluZQorRGF0ZWkgZ2l0c2hhbGxvdyBnaWJ0LCB3aXJkIGRpZXNlIGFscyC7LmdpdC9zaGFsbG93qyBpbm5lcmhhbGIgZGVzIGdla2xvbnRlbgorR2l0XC1EZXBvdHMgaW5zdGFsbGllcnQuCisuUFAKK0JlYWNodGVuIFNpZSwgZGFzcyBzdGFuZGFyZG3k32lnIGltIG5ldWVuIERlcG90IGRlciBnbGVpY2hlIFp3ZWlnCithdXNnZWNoZWNrdCBpc3QsIGRlciBhdWNoIGluIGRlciB1cnNwcvxuZ2xpY2hlbiBRdWVsbGUgYXVzZ2VjaGVja3Qgd2FyCisodHlwaXNjaGVyd2Vpc2Ugu21hc3RlcqssIGVzIGv2bm50ZSBhYmVyIGF1Y2ggd2FzIGJlbGllYmlnIGFuZGVyZXMKK3NlaW4pLiBBbGxlIGFuZGVyZW4gWndlaWdlIHNpbmQgdW50ZXIgu3JlbW90ZXMvb3JpZ2luL6sgdmVyZvxnYmFyLgorLlBQCitcZkJCYXVlblxmUAorLlBQCitCZXZvciBmb3J0Z2VmYWhyZW4gd2lyZCwgd2VyZGVuIGVpbmlnZSDcYmVycHL8ZnVuZ2VuIGF1c2dlZvxocnQsIHVtCitzaWNoZXJ6dXN0ZWxsZW4sIGRhc3Mga2VpbmUgbmljaHRcLWlnbm9yaWVydGVuLCBuaWNodFwt/GJlcnRyYWdlbmUKKyi7dW5jb21taXR0ZWSrKSDEbmRlcnVuZ2VuIHZvcmxpZWdlbi4KKy5QUAorXGZCZ2l0XC1idW5kbGVcZlAoMSkgd2lyZCB6dXIgRXJzdGVsbHVuZyBkZXMgQvxuZGVscyBkZXMgR2l0XC1EZXBvdHMKK3ZlcndhbmR0LiBTdGFuZGFyZG3k32lnIHdlcmRlbiBhbGxlIFp3ZWlnZSB1bmQgTWFya2llcnVuZ2VuIGltIERlcG90IGltCitC/G5kZWwgZWluYmV6b2dlbi4KKy5QUAorXGZCQmF1XC1PcHRpb25lblxmUAorLlRQIAorXGZCXC1cLWdpdFwtcmVmPVxmUFxmSVJlZmVyZW56XGZQCitFcmxhdWJ0IGRpZSBBbmdhYmUgZWluZXIgR2l0XC1SZWZlcmVueiB6dXIgQXVmbmFobWUgaW4gZGVtIEdpdFwtQvxuZGVsLiBEaWUKK1ZlcndlbmR1bmcgZGVha3RpdmllcnQgZGFzIHN0YW5kYXJkbeTfaWdlIFZlcmhhbHRlbiwgYWxsZSBad2VpZ2UgdW5kCitNYXJraWVydW5nZW4gYXVmenVuZWhtZW4uIEthbm4gbWVocmZhY2ggYW5nZWdlYmVuIHdlcmRlbi4gXGZJUmVmZXJlbnpcZlAga2FubgorZGVyIE5hbWUgZWluZXMgWndlaWdlcyBvZGVyIGVpbmVyIE1hcmtpZXJ1bmcsIGRlci9kaWUgYXVmZ2Vub21tZW4gd2VyZGVuCitzb2xsLCBzZWluLiBFcyBrYW5uIGF1Y2ggZWluIFBhcmFtZXRlciBzZWluLCBkZXIgYW4gXGZCZ2l0XC1yZXZcLWxpc3RcZlAoMSkKK/xiZXJnZWJlbiB3ZXJkZW4ga2Fubi4gVmVyd2VuZGVuIFNpZSBiZWlzcGllbHN3ZWlzZSC7XC1cLWdpdFwtcmVmPW1hc3RlcqssIHVtCitudXIgZGVuIE1hc3RlclwtWndlaWcgYXVmenVuZWhtZW4uIFVtIGFsbGUgTWFya2llcnVuZ2VuIHVuZCBad2VpZ2UgYXXfZXIgZGVtCitad2VpZyC7cHJpdmF0ZasgYXVmenVuZWhtZW4sIHZlcndlbmRlbiBTaWUgu1wtXC1naXRcLXJlZj1cLVwtYWxsCitcLVwtZ2l0XC1yZWY9XnByaXZhdGUuCisuVFAgCitcZkJcLVwtZ2l0XC1kZXB0aD1cZlBcZklaYWhsXGZQCitFcnN0ZWxsdCBlaW5lbiBzZWljaHRlbiBLbG9uIG1pdCBlaW5lbSBWZXJsYXVmLCBkZXIgYmVpIGRlciBhbmdlZ2ViZW5lbgorQW56YWhsIGFuIFJldmlzaW9uZW4gYWJnZXNjaG5pdHRlbiB3aXJkLgorLlNTICJGb3JtYXQ6IDMuMCAoYnpyKSIKK0RpZXNlcyBGb3JtYXRlIGlzdCBleHBlcmltZW50ZWxsLiBFcyBlcnN0ZWxsdCBlaW5lbiBlaW56aWdlbiBUYXJiYWxsLCBkZXIKK2RhcyBCenJcLURlcG90IGVudGjkbHQuCisuUFAKK1xmQkV4dHJhaGllcmVuXGZQCisuUFAKK0RlciBUYXJiYWxsIHdpcmQgZW50cGFja3QgdW5kIGRhbm4gd2lyZCBCenIgdmVyd2FuZHQsIHVtIGRlbiBha3R1ZWxsZW4gWndlaWcKK2F1c3p1Y2hlY2tlbi4KKy5QUAorXGZCQmF1ZW5cZlAKKy5QUAorQmV2b3IgZm9ydGdlZmFocmVuIHdpcmQsIHdlcmRlbiBlaW5pZ2Ug3GJlcnBy/GZ1bmdlbiBhdXNnZWb8aHJ0LCB1bQorc2ljaGVyenVzdGVsbGVuLCBkYXNzIGtlaW5lIG5pY2h0XC1pZ25vcmllcnRlbiwgbmljaHRcLfxiZXJ0cmFnZW5lCisou3VuY29tbWl0dGVkqykgxG5kZXJ1bmdlbiB2b3JsaWVnZW4uCisuUFAKK0Rhbm4gd2lyZCBkZXIgVkNTXC1zcGV6aWZpc2NoZSBUZWlsIGRlcyBRdWVsbHBha2V0cyBpbiBlaW4gdGVtcG9y5HJlcworVmVyemVpY2huaXMga29waWVydC4gQmV2b3IgZGllc2VzIHRlbXBvcuRyZSBWZXJ6ZWljaG5pcyBpbiBlaW5lbiBUYXJiYWxsCitnZXBhY2t0IHdpcmQsIHdlcmRlbiB2ZXJzY2hpZWRlbmUgQmVyZWluaWd1bmdlbiBkdXJjaGdlZvxocnQsIHVtIFBsYXR6IHp1CitzcGFyZW4uCisuU0ggIldBUk5VTkdFTiBVTkQgRkVITEVSIgorLlNTICJrZWluIFF1ZWxsZm9ybWF0IGluIGRlYmlhbi9zb3VyY2UvZm9ybWF0IGFuZ2VnZWJlbiIKK0RpZSBEYXRlaSBcZkJkZWJpYW4vc291cmNlL2Zvcm1hdFxmUCBzb2xsdGUgaW1tZXIgZXhpc3RpZXJlbiB1bmQgZGFzIGdld/xuc2NodGUKK1F1ZWxsZm9ybWF0IGFuZ2ViZW4uIEb8ciBS/GNrd+RydHNrb21wYXRpYmlsaXTkdCB3aXJkIGRhcyBGb3JtYXQguzEuMKsKK2FuZ2Vub21tZW4sIHdlbm4gZGllIERhdGVpIG5pY2h0IGV4aXN0aWVydCwgYWJlciBTaWUgc29sbHRlbiBzaWNoIG5pY2h0CitkYXJhdWYgdmVybGFzc2VuOiBJcmdlbmR3YW5uIGluIGRlciBadWt1bmZ0IHdpcmQgZHBrZ1wtc291cmNlIHZlcuRuZGVydCB1bmQKK2Rhbm4gZmVobHNjaGxhZ2VuLCB3ZW5uIGRpZXNlIERhdGVpIG5pY2h0IGV4aXN0aWVydC4KKworRGllIEJlZ3L8bmR1bmcgbGllZ3QgZGFyaW4sIGRhc3MguzEuMKsgbmljaHQgbWVociBkYXMgZW1wZm9obGVuZSBGb3JtYXQgaXN0LAorU2llIHNvbGx0ZW4gbm9ybWFsZXJ3ZWlzZSBlaW5lcyBkZXIgbmV1ZXJlbiBGb3JtYXRlICi7My4wIChxdWlsdCmrLCC7My4wCisobmF0aXZlKaspIGF1c3fkaGxlbiwgYWJlciBcZkJkcGtnXC1zb3VyY2VcZlAgd2lyZCBkaWVzIG5pY2h0IGb8ciBTaWUKK2F1dG9tYXRpc2NoIHZvcm5laG1lbi4gRmFsbHMgU2llIHdlaXRlcmhpbiBkYXMgYWx0ZSBGb3JtYXQgdmVyd2VuZGVuCitt9mNodGVuLCBzb2xsdGVuIFNpZSBkaWVzIGV4cGxpeml0IGFuZ2ViZW4gdW5kILsxLjCrIGluCitcZkJkZWJpYW4vc291cmNlL2Zvcm1hdFxmUCBlaW50cmFnZW4uCisuU1MgImRlciBEaWZmIHZlcuRuZGVydCBkaWUgZm9sZ2VuZGVuIERhdGVpZW4gZGVyIE9yaWdpbmFsYXV0b3JlbiIKK0JlaW0gRWluc2F0eiBkZXMgUXVlbGxmb3JtYXRzILsxLjCrIGlzdCBlcyBub3JtYWxlcndlaXNlIGtlaW5lIGd1dGUgSWRlZSwKK2RpZSBEYXRlaWVuIGRlciBPcmlnaW5hbGF1dG9yZW4gZGlyZWt0IHp1IHZlcuRuZGVybiwgZGEgZGllIMRuZGVydW5nZW4KK2dy9t90ZW50ZWlscyB2ZXJzdGVja3QgdW5kIHVuZG9rdW1lbnRpZXJ0IGluIGRlciBkaWZmLmd6XC1EYXRlaQordmVyc2Nod2luZGVuLiBTdGF0dGRlc3NlbiBzb2xsdGVuIFNpZSBJaHJlIMRuZGVydW5nZW4gYWxzIFBhdGNoZXMgaW0KK2RlYmlhblwtVmVyemVpY2huaXMgc3BlaWNoZXJuIHVuZCB35GhyZW5kIGRlcyBCYXVzIGFud2VuZGVuLiBVbSBkaWVzZQorS29tcGxleGl05HQgenUgdmVybWVpZGVuLCBr9m5uZW4gU2llIGF1Y2ggZGFzIEZvcm1hdCC7My4wIChxdWlsdCmrCit2ZXJ3ZW5kZW4sIGRhcyBkaWVzIHZvbiBzaWNoIGF1cyBhbmJpZXRldC4KKy5TUyAia2FubiDEbmRlcnVuZ2VuIGFuIFxmSURhdGVpXGZQIG5pY2h0IGRhcnN0ZWxsZW4iCivEbmRlcnVuZ2VuIGFuIGRlbiBRdWVsbGVuIGRlciBPcmlnaW5hbGF1dG9yZW4gd2VyZGVuIG5vcm1hbGVyd2Vpc2UgYWxzCitQYXRjaFwtRGF0ZWllbiBnZXNwZWljaGVydCwgYWJlciBuaWNodCBhbGxlIMRuZGVydW5nZW4ga/ZubmVuIGFscyBQYXRjaGVzCitkYXJnZXN0ZWxsdCB3ZXJkZW46IFNpZSBr9m5uZW4gbnVyIMRuZGVydW5nZW4gYW0gSW5oYWx0IGVpbmZhY2hlcgorVGV4dGRhdGVpZW4gdm9ybmVobWVuLiBGYWxscyBTaWUgdmVyc3VjaGVuLCBlaW5lIERhdGVpIG1pdCBldHdhcyBlaW5lcworYW5kZXJlbiBUeXBzIHp1IGVyc2V0emVuIChiZWlzcGllbHN3ZWlzZSBlaW5lIGVpbmZhY2hlIERhdGVpIG1pdCBlaW5lbQorU3ltbGluayBvZGVyIGVpbmVtIFZlcnplaWNobmlzKSwgd2VyZGVuIFNpZSBkaWVzZSBGZWhsZXJtZWxkdW5nIGVyaGFsdGVuLgorLlNTICJuZXUgYW5nZWxlZ3RlIGxlZXJlIERhdGVpIFxmSURhdGVpXGZQIHdpcmQgaW0gRGlmZiBuaWNodCBkYXJnZXN0ZWxsdCB3ZXJkZW4iCitMZWVyZSBEYXRlaWVuIGv2bm5lbiBuaWNodCBtaXQgUGF0Y2hkYXRlaWVuIGVyc3RlbGx0IHdlcmRlbi4gRGFoZXIgd2lyZAorZGllc2UgxG5kZXJ1bmcgbmljaHQgaW0gUXVlbGxwYWtldCBhdWZnZXplaWNobmV0IHVuZCBTaWUgZXJoYWx0ZW4gZGF6dSBkaWVzZQorV2FybnVuZy4KKy5TUyAiYXVzZvxocmJhcmVyIE1vZHVzIFxmSVJlY2h0ZVxmUCB2b24gXGZJRGF0ZWlcZlAgd2lyZCBuaWNodCBpbSBEaWZmIGRhcmdlc3RlbGx0IHdlcmRlbiIKKy5TUyAiYmVzb25kZXJlciBNb2R1cyBcZklSZWNodGVcZlAgdm9uIFxmSURhdGVpXGZQIHdpcmQgbmljaHQgaW0gRGlmZiBkYXJnZXN0ZWxsdCB3ZXJkZW4iCitQYXRjaFwtRGF0ZWllbiBzcGVpY2hlcm4gbmljaHQgZGllIFJlY2h0ZSB2b24gRGF0ZWllbiB1bmQgZGFoZXIgd2VyZGVuCitnZeRuZGVydGUgUmVjaHRlIG5pY2h0IGltIFF1ZWxscGFrZXQgZ2VzcGVpY2hlcnQuIERpZXNlIFdhcm51bmcgZXJpbm5lcnQgU2llCithbiBkaWVzZSBUYXRzYWNoZS4KKy5TSCBEQVRFSUZPUk1BVEUKKy5TUyBkZWJpYW4vc291cmNlL2Zvcm1hdAorRGllc2UgRGF0ZWkgZW50aORsdCBhdWYgZWluZXIgZWluemVsbmVuIFplaWxlIGRhcyBGb3JtYXQsIGRhcyB6dW0gQmF1IGRlcworUXVlbGxwYWtldHMgdmVyd2FuZHQgd2VyZGVuIHNvbGwgKG32Z2xpY2hlIEZvcm1hdGUgc2luZCBvYmVuCitiZXNjaHJpZWJlbikuIExlZXJ6ZWljaGVuIGFtIFplaWxlbmFuZmFuZyBvZGVyIFwtZW5kZSBzaW5kIG5pY2h0IGVybGF1YnQuCisuU1MgZGViaWFuL3NvdXJjZS9pbmNsdWRlXC1iaW5hcmllcworRGllc2UgRGF0ZWkgZW50aORsdCBlaW5lIExpc3RlIHZvbiBCaW7kcmRhdGVpZW4gKGVpbmUgcHJvIFplaWxlKSwgZGllIGluIGRlbgorRGViaWFuXC1UYXJiYWxsIGF1Zmdlbm9tbWVuIHdlcmRlbiBzb2xsZW4uIExlZXJ6ZWljaGVuIGFtIEFuZmFuZyB1bmQgRW5kZSBkZXIKK1plaWxlIHdlcmRlbiBlbnRmZXJudC4gWmVpbGVuLCBkaWUgbWl0ILsjqyBhbmZhbmdlbiwgc2luZCBLb21tZW50YXJlIHVuZAord2VyZGVuIPxiZXJzcHJ1bmdlbi4gTGVlcmUgWmVpbGVuIHdlcmRlbiBpZ25vcmllcnQuCisuU1MgZGViaWFuL3NvdXJjZS9vcHRpb25zCitEaWVzZSBEYXRlaSBlbmjkbHQgZWluZSBMaXN0ZSBhbiBPcHRpb25lbiwgZGllIGF1dG9tYXRpc2NoIHZvciBkZW4gU2F0eiBhbgorQmVmZWhsc3plaWxlbm9wdGlvbmVuIGJlaSBlaW5lbSBBdWZydWYgXGZCZHBrZ1wtc291cmNlIFwtYlxmUCBvZGVyIFxmQmRwa2dcLXNvdXJjZQorXC1cLXByaW50XC1mb3JtYXRcZlAgZ2VzZXR6dCB3ZXJkZW4gc29sbGVuLiBPcHRpb25lbiB3aWUgXGZCXC1jb21wcmVzc2lvblxmUCB1bmQKK1xmQlwtXC1jb21wcmVzc2lvblwtbGV2ZWxcZlAgc2luZCBm/HIgZGllc2UgRGF0ZWkgZ3V0IGdlZWlnbmV0LgorLlAKK0plZGUgT3B0aW9uIHNvbGx0ZSBhdWYgZWluZXIgc2VwYXJhdGVuIFplaWxlIHN0ZWhlbi4gTGVlcnplaWxlbiB1bmQgWmVpbGVuLAorZGllIG1pdCC7I6sgYmVnaW5uZW4sIHdlcmRlbiBpZ25vcmllcnQuIERhcyBlaW5sZWl0ZW5kZSC7XC1cLasgc29sbHRlIGVudGZlcm50Cit3ZXJkZW4gdW5kIGt1cnplIE9wdGlvbmVuIHNpbmQgbmljaHQgZXJsYXVidC4gT3B0aW9uYWxlIExlZXJ6ZWljaGVuIHVtIGRhcworuz2rXC1TeW1ib2wgc293aWUgb3B0aW9uYWxlIEFuZvxocnVuZ3N6ZWljaGVuIHVtIGRlbiBXZXJ0IHNpbmQgZXJsYXVidC4gSGllcgoraXN0IGVpbiBCZWlzcGllbCBm/HIgc28gZWluZSBEYXRlaToKKy5QCisgICMgbGFzcyBkcGtnXC1zb3VyY2UgZWluIGRlYmlhbi50YXIuYnoyIG1pdCBtYXhpbWFsZXIgS29tcHJpbWllcnVuZworICAjIGVyc3RlbGxlbgorICBjb21wcmVzc2lvbiA9ICJiemlwMiIKKyAgY29tcHJlc3Npb25cLWxldmVsID0gOQorICAjIHZlcndlbmRlIGRlYmlhbi9wYXRjaGVzL2RlYmlhblwtY2hhbmdlcyBhbHMgYXV0b21hdGlzY2hlbiBQYXRjaAorICBzaW5nbGVcLWRlYmlhblwtcGF0Y2gKKyAgIyBpZ25vcmllcmUgxG5kZXJ1bmdlbiB2b24gY29uZmlnLntzdWIsZ3Vlc3N9CisgIGV4dGVuZFwtZGlmZlwtaWdub3JlID0gIihefC8pKGNvbmZpZy5zdWJ8Y29uZmlnLmd1ZXNzKSQiCisuUAorSGlud2VpczogXGZCXC1cLWZvcm1hdFxmUFwtT3B0aW9uZW4gd2VyZGVuIGluIGRpZXNlciBEYXRlaSBuaWNodCBha3plcHRpZXJ0LCBTaWUKK3NvbGx0ZW4gc3RhdHRkZXNzZW4gXGZCZGViaWFuL3NvdXJjZS9mb3JtYXRcZlAgdmVyd2VuZGVuLgorLlNTIGRlYmlhbi9zb3VyY2UvbG9jYWxcLW9wdGlvbnMKK0dlbmF1IHdpZSBcZkJkZWJpYW4vc291cmNlL29wdGlvbnNcZlAsIGF132VyIGRhcyBkaWUgRGF0ZWkgbmljaHQgaW4gZGFzCitlcnN0ZWxsdGUgUXVlbGxwYWtldCBhdWZnZW5vbW1lbiB3aXJkLiBEaWVzIGthbm4gbvx0emxpY2ggc2VpbiwgdW0KK1ZvcmVpbnN0ZWxsdW5nZW4genUgc3BlaWNoZXJuLCBkaWUgYW4gZWluZW4gYmVzdGltbXRlbiBCZXRyZXVlciBvZGVyIGFuIGVpbgorYmVzdGltbXRlcyBWQ1MsIGluIGRlbSBkYXMgUGFrZXQgZ2V3YXJ0ZXQgd2lyZCwgZ2VidW5kZW4gc2luZC4KKy5TUyBkZWJpYW4vc291cmNlL2xvY2FsXC1wYXRjaFwtaGVhZGVyCisuU1MgZGViaWFuL3NvdXJjZS9wYXRjaFwtaGVhZGVyCitGb3JtbG9zZXIgVGV4dCwgZGVyIGFuIGRlbiBBbmZhbmcgZGVzIGluIGRlbiBGb3JtYXRlbiC7Mi4wqyB1bmQguzMuMAorKHF1aWx0KasgZ2VuZXJpZXJ0ZW4gYXV0b21hdGlzY2hlbiBQYXRjaGVzIGdlc3RlbGx0Cit3aXJkLiBcZkJsb2NhbFwtcGF0Y2hcLWhlYWRlclxmUCB3aXJkIGRlbSBlcnN0ZWxsZW4gUXVlbGxwYWtldCBuaWNodCBoaW56dWdlZvxndCwKK1xmQnBhdGNoXC1oZWFkZXJcZlAgZGFnZWdlbiBzY2hvbi4KKy5TUyBkZWJpYW4vcGF0Y2hlcy9zZXJpZXMKK0RpZXNlIERhdGVpIGb8aHJ0IGFsbGUgUGF0Y2hlcyBhdWYsIGRpZSAoaW4gZGVyIGFuZ2VnZWJlbmVuIFJlaWhlbmZvbGdlKSBhdWYKK2RhcyBRdWVsbHBha2V0IGRlciBPcmlnaW5hbGF1dG9yZW4gYW5nZXdhbmR0IHdlcmRlbiBt/HNzZW4uIExlZXJ6ZWljaGVuIGFtCitBbmZhbmcgdW5kIEVuZGUgd2VyZGVuIGVudGZlcm50LiBaZWlsZW4sIGRpZSBtaXQguyOrIGFuZmFuZ2VuLCBzaW5kCitLb21tZW50YXJlIHVuZCB3ZXJkZW4g/GJlcnNwcnVuZ2VuLiBMZWVyZSBaZWlsZW4gd2VyZGVuIGlnbm9yaWVydC4gRGllCit2ZXJibGVpYmVuZW4gWmVpbGVuIGJlZ2lubmVuIG1pdCBkZW0gRGF0ZWluYW1lbiBlaW5lcyBQYXRjaGVzIChyZWxhdGl2IHp1bQorVmVyemVpY2huaXMgXGZCZGViaWFuL3BhdGNoZXMvXGZQKSBiaXMgenVtIGVyc3RlbiBMZWVyemVpY2hlbiBvZGVyIGJpcyB6dW0KK1plaWxlbmVuZGUuIEJpcyB6dW0gRW5kZSBkZXIgWmVpbGUgb2RlciBiaXMgenVtIGVyc3RlbiC7I6sgZ2Vmb2xndCB2b24gZWluZW0KK29kZXIgbWVocmVyZW4gTGVlcnplaWNoZW4gKGRpZXMgbWFya2llcnQgZGVuIEJlZ2lubiBlaW5lcyBLb21tZW50YXJzLCBkZXIKK2JpcyB6dW0gWmVpbGVuZW5kZSBnZWh0KSBr9m5uZW4gb3B0aW9uYWxlIFF1aWx0XC1CZWZlaGxlIGZvbGdlbi4KKy5TSCBGRUhMRVIKK0RpZSBTdGVsbGUsIGFuIGRlciBkYXMg3GJlcnNjaHJlaWJlbiB2b24gRmVsZGVybiBwYXNzaWVydCwgdmVyZ2xpY2hlbiBtaXQKK2Jlc3RpbW10ZW4gU3RhbmRhcmRcLUF1c2dhYmVcLUZlbGRlaW5zdGVsbHVuZ2VuLCBpc3QgZWhlciBrb25mdXMuCisuU0gg3EJFUlNFVFpVTkcKK0RpZSBkZXV0c2NoZSDcYmVyc2V0enVuZyB3dXJkZSAyMDA0LCAyMDA2LTIwMTEgdm9uIEhlbGdlIEtyZXV0em1hbm4KKzxkZWJpYW5AaGVsZ2VmamVsbC5kZT4sIDIwMDcgdm9uIEZsb3JpYW4gUmVobmlzY2ggPGVpeG1hbkBnbXguZGU+IHVuZAorMjAwOCB2b24gU3ZlbiBKb2FjaGltIDxzdmVuam9hY0BnbXguZGU+CithbmdlZmVydGlndC4gRGllc2Ug3GJlcnNldHp1bmcgaXN0IEZyZWllIERva3VtZW50YXRpb247IGxlc2VuIFNpZSBkaWUKK0dOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIFZlcnNpb24gMiBvZGVyIG5ldWVyIGb8ciBkaWUgS29waWVyYmVkaW5ndW5nZW4uCitFcyBnaWJ0IEtFSU5FIEhBRlRVTkcuCisuU0ggIlNJRUhFIEFVQ0giCitcZkJkcGtnXC1kZWJcZlAoMSksIFxmQmRwa2dcZlAoMSksIFxmQmRzZWxlY3RcZlAoMSkuCisuCisuU0ggQVVUT1JFTgorQ29weXJpZ2h0IFwoY28gMTk5NVwtMTk5NiBJYW4gSmFja3NvbgorLmJyCitDb3B5cmlnaHQgXChjbyAyMDAwIFdpY2hlcnQgQWtrZXJtYW4KKy5icgorQ29weXJpZ2h0IFwoY28gMjAwOFwtMjAxMSBSYXBoYVxbOmVdbCBIZXJ0em9nCisuc3AKK0RpZXMgaXN0IEZyZWllIFNvZnR3YXJlOyBsZXNlbiBTaWUgZGllIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIFZlcnNpb24gMgorb2RlciBuZXVlciBm/HIgZGllIEtvcGllcmJlZGluZ3VuZ2VuLiBFcyBnaWJ0IEtFSU5FIEhhZnR1bmcuCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9kZS9kcGtnLXNwbGl0LjEgYi9kcGtnLTEuMTYuMS4xL21hbi9kZS9kcGtnLXNwbGl0LjEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzllNDAwMwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL2RlL2Rwa2ctc3BsaXQuMQpAQCAtMCwwICsxLDIwMiBAQAorLlwiIEF1dGhvcnM6IElhbiBKYWNrc29uCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkcGtnXC1zcGxpdCAxIDIwMTFcLTA3XC0wNCBEZWJpYW5cLVByb2pla3QgZHBrZ1wtSGlsZnNwcm9ncmFtbWUKKy5TSCBOQU1FCitkcGtnXC1zcGxpdCBcLSBEZWJpYW5cLVBha2V0YXJjaGl2IFRlaWx1bmdzXC0gdW5kIFp1c2FtbWVuc2V0endlcmt6ZXVnCisuCisuU0gg3EJFUlNJQ0hUCitcZkJkcGtnXC1zcGxpdFxmUCBbXGZJT3B0aW9uXGZQLi4uXSBcZklCZWZlaGxcZlAKKy4KKy5TSCBCRVNDSFJFSUJVTkcKK1xmQmRwa2dcLXNwbGl0XGZQIHplcnRlaWx0IERlYmlhblwtQmlu5HJwYWtldGRhdGVpZW4gaW4ga2xlaW5lcmUgVGVpbGUgdW5kIHNldHp0CitkaWVzZSB3aWVkZXIgenVzYW1tZW4sIHVtIGRpZSBMYWdlcnVuZyB2b24gZ3Jv32VuIFBha2V0ZGF0ZWllbiBhdWYga2xlaW5lbgorTWVkaWVuIHdpZSBEaXNrZXR0ZW4genUgZXJt9mdsaWNoZW4uCisKK0VzIGthbm4gbWFudWVsbCBtaXQgZGVuIE9wdGlvbmVuIFxmQlwtXC1zcGxpdFxmUCwgXGZCXC1cLWpvaW5cZlAgdW5kIFxmQlwtXC1pbmZvXGZQCit2ZXJ3ZW5kZXQgd2VyZGVuLgorCitFcyBoYXQgYXVjaCBlaW5lbiBhdXRvbWF0aXNjaGVuIE1vZHVzLCBkZXIg/GJlciBkaWUgXGZCXC1cLWF1dG9cZlBcLU9wdGlvbgorYXVmZ2VydWZlbiB3aXJkLCB3byBlcyBlaW5lIExpc3RlIHZvbiBUZWlsZW4sIGRpZSBiZXJlaXRzIGdlc2VoZW4sIGFiZXIgbm9jaAorbmljaHQgd2llZGVyIHp1c2FtbWVuZ2VzZXR6dCB3dXJkZW4sIHZlcndhbHRldC4gU29iYWxkIGFsbGUgVGVpbGUgZ2VzZWhlbgord3VyZGVuLCB3aXJkIGRhbm4gZGllIERhdGVpIHdpZWRlciB6dXNhbW1lbmdlc2V0enQuIERpZSBPcHRpb25lbiBcZkJcLVwtbGlzdHFcZlAKK3VuZCBcZkJcLVwtZGlzY2FyZFxmUCBlcmxhdWJlbiBkaWUgVmVyd2FsdHVuZyBkaWVzZXIgTGlzdGUuCisKK0FsbGUgVGVpbHVuZ3NcLSwgVmVyZWluaWd1bmdzXC0gdW5kIFdhcnRlb3BlcmF0aW9uZW4gZXJ6ZXVnZW4gaW5mb3JtYXRpdmUKK05hY2hyaWNodGVuIGF1ZiBkZXIgU3RhbmRhcmRhdXNnYWJlOyBkaWVzZSBr9m5uZW4gb2huZSBSaXNpa28gaWdub3JpZXJ0Cit3ZXJkZW4uCisuCisuU0ggQkVGRUhMRQorLlRQIAorXGZCXC1zXGZQLCBcZkJcLVwtc3BsaXRcZlAgXGZJS29tcGxldHRhcmNoaXZcZlAgW1xmSVBy5GZpeFxmUF0KK1RlaWx0IGVpbiBlaW56ZWxuZXMgRGViaWFuXC1CaW7kcnBha2V0IGluIG1laHJlcmUgVGVpbGUuCisKK0RpZSBUZWlsZSB3ZXJkZW4gXGZJUHLkZml4XGZQXGZCLlxmUFxmSU5cZlBcZkJvZlxmUFxmSU1cZlBcZkIuZGViXGZQIGJlbmFubnQsIHdvYmVpIFxmSU5cZlAgZGllCitiZWkgMSBiZWdpbm5lbmRlIFRlaWxudW1tZXIgdW5kIFxmSU1cZlAgZGllIEdlc2FtdHphaGwgZGVyIFRlaWxlIGlzdCAoYmVpZGUKK0FuZ2FiZW4gZGV6aW1hbCkuCisKK0ZhbGxzIGtlaW4gXGZJUHLkZml4XGZQIGJlcmVpdGdlc3RlbGx0IHdpcmQsIHdpcmQgZGVyIERhdGVpbmFtZSB2b24KK1xmSUtvbXBsZXR0YXJjaGl2XGZQIGdlbm9tbWVuLCBlaW5zY2hsaWXfbGljaCBWZXJ6ZWljaG5pcywgd29iZWkgZGFzCithYnNjaGxpZd9lbmRlIFxmQi5kZWJcZlAgZW50ZmVybnQgd2lyZC4KKy5UUCAKK1xmQlwtalxmUCwgXGZCXC1cLWpvaW5cZlAgXGZJVGVpbFxmUC4uLgorVmVyZWludCBkaWUgVGVpbGUgZWluZXIgUGFrZXRkYXRlaSwgdW5kIGJhdXQgZGFtaXQgZGllIE9yaWdpbmFsZGF0ZWkgd2llZGVyCit6dXNhbW1lbiwgd2llIHNpZSB2b3IgZGVtIEF1ZnRlaWxlbiB3YXIuCisKK0RpZSBUZWlsZGF0ZWllbiwgZGllIGFscyBBcmd1bWVudCD8YmVyZ2ViZW4gd2VyZGVuLCBt/HNzZW4gYWxsZSBUZWlsZSBkZXIKK2dsZWljaGVuIE9yaWdpbmFsZGF0ZWkgc2Vpbi4gSmVkZXIgVGVpbCBtdXNzIGdlbmF1IGVpbm1hbCBpbiBkZXIKK0FyZ3VtZW50bGlzdGUgYXVmdGF1Y2hlbiwgYWxsZXJkaW5ncyBt/HNzZW4gZGllIFRlaWxlIG5pY2h0IGluIGlocmVyCitSZWloZW5mb2xnZSBhdWZnZWb8aHJ0IHdlcmRlbi4KKworRGllIFRlaWxlIG38c3NlbiBuYXT8cmxpY2ggYWxsZSBtaXQgZGVyIGdsZWljaGVuIHp1ciBaZWl0IGRlcyBBdWZ0ZWlsZW5zCithbmdlZ2ViZW4gVGVpbFwtR3L232UgZ2VuZXJpZXJ0IHdvcmRlbiBzZWluLiBEaWVzIGJlZGV1dGV0LCBkYXNzIHNpZSBm/HIKK2dld/ZobmxpY2ggdm9uIGRlbSBnbGVpY2hlbiBBdWZydWYgdm9uIFxmQmRwa2dcLXNwbGl0IFwtXC1zcGxpdFxmUCBlcnpldWd0IHdvcmRlbgorc2VpbiBt/HNzZW4uCisKK0RpZSBEYXRlaW5hbWVuIGRlciBUZWlsZSBzaW5kIGb8ciBkZW4gUHJvemVzcyBkZXMgV2llZGVyenVzYW1tZW5iYXVlbnMgbmljaHQKK3JlbGV2YW50LgorCitTdGFuZGFyZG3k32lnIHdpcmQgZGllIEF1c2dhYmVkYXRlaSBcZklQYWtldFxmUFxmQlwtXGZQXGZJVmVyc2lvblxmUFxmQl9cZlBcZklBcmNoXGZQXGZCLmRlYlxmUAorZ2VuYW5udC4KKworLlRQIAorXGZCXC1JXGZQLCBcZkJcLVwtaW5mb1xmUCBcZklUZWlsXGZQLi4uCitHaWJ0IEluZm9ybWF0aW9uZW4g/GJlciBkaWUgYW5nZWdlYmVuZW4gVGVpbGRhdGVpKGVuKSBpbiBtZW5zY2hlbmxlc2JhcmVtCitGb3JtYXQgYXVzLiBBcmd1bWVudGUsIGRpZSBrZWluZSBCaW7kcnBha2V0ZGF0ZWllbiBzaW5kLCBm/GhyZW4genUgZWluZXIKK2VudHNwcmVjaGVuZGVuIE5hY2hyaWNodCAoYWxsZXJkaW5ncyBhdWNoIGluIGRlciBTdGFuZGFyZGF1c2dhYmUpLgorLlRQIAorXGZCXC1hXGZQLCBcZkJcLVwtYXV0byBcLW9cZlAgXGZJIEtvbXBsZXR0YXVzZ2FiZSBUZWlsXGZQCitSZWlodCBUZWlsZSBhdXRvbWF0aXNjaCBpbiBkaWUgV2FydGVzY2hsYW5nZSB1bmQgc2V0enQsIGZhbGxzIG32Z2xpY2gsIGVpbgorUGFrZXQgd2llZGVyIHp1c2FtbWVuLgorCitEZXIgYW5nZWdlYmVuZSBcZklUZWlsXGZQIHdpcmQgdW50ZXJzdWNodCB1bmQgbWl0IGFuZGVyZW4gVGVpbGVuIGRlc3NlbGJlbgorUGFrZXRlcyAoZmFsbHMgdm9yaGFuZGVuKSBpbiBkZXIgV2FydGVzY2hsYW5nZSBkZXIgUGFrZXRkYXRlaVwtVGVpbGUKK3ZlcmdsaWNoZW4uCisKK0ZhbGxzIGFsbGUgVGVpbGUgZGVyIFBha2V0ZGF0ZWksIHZvbiBkZXIgXGZJVGVpbFxmUCBlaW4gVGVpbCBpc3QsIHZlcmb8Z2Jhcgorc2luZCwgZGFubiB3aXJkIGRhcyBQYWtldCB3aWVkZXIgenVzYW1tZW5nZXNldHp0IHVuZCBuYWNoIFxmSUtvbXBsZXR0YXVzZ2FiZVxmUAorZ2VzY2hyaWViZW4gKHdlbGNoZSBm/HIgZ2V39mhubGljaCBub2NoIG5pY2h0IGV4aXN0aWVyZW4gc29sbHRlLCBvYmdsZWljaAorZGllcyBrZWluIEZlaGxlciBpc3QpLgorCitGYWxscyBuaWNodCwgd2lyZCBcZklUZWlsXGZQIGluIGRpZSBXYXJ0ZXNjaGxhbmdlIGtvcGllcnQgdW5kCitcZklLb21wbGV0dGF1c2dhYmVcZlAgd2lyZCBuaWNodCBlcnpldWd0LgorCitGYWxscyBcZklUZWlsXGZQIGtlaW4gVGVpbCBlaW5lcyBhdWZnZXRlaWx0ZW4gQmlu5HJwYWtldGVzIGlzdCwgZGFubiBiZWVuZGV0CitzaWNoIFxmSWRwa2dcLXNwbGl0XGZQIG1pdCBS/GNrZ2FiZWNvZGUgXGZCMVxmUDsgZmFsbHMgaXJnZW5kd2VsY2hlIGFuZGVyZW4KK1Byb2JsZW1lIGF1ZnRyZXRlbiBsYXV0ZXQgZGVyIFL8Y2tnYWJlY29kZSBcZkIyXGZQLgorCitEaWUgT3B0aW9uIFxmQlwtXC1vdXRwdXRcZlAgb2RlciBcZkJcLW9cZlAgbXVzcyBiZWkgVmVyd2VuZGVuIHZvbiBcZkJcLVwtYXV0b1xmUCBhbmdlZ2ViZW4KK3dlcmRlbi4gKEZhbGxzIGRpZXMgbmljaHQgb2JsaWdhdG9yaXNjaCB35HJlLCB3/HNzdGUgZGFzIFByb2dyYW1tIG5pY2h0LAord2VsY2hlIEF1c2dhYmVkYXRlaSBlcyB6dSBlcndhcnRlbiBo5HR0ZS4pCisuVFAgCitcZkJcLWxcZlAsIFxmQlwtXC1saXN0cVxmUAorTGlzdGV0IGRlbiBJbmhhbHQgZGVyIFdhcnRlc2NobGFuZ2UgZGVyIHdpZWRlciB6dXNhbW1lbnp1YmF1ZW5kZW4gUGFrZXRlCithdWYuCisKK0b8ciBqZWRlIFBha2V0ZGF0ZWksIHZvbiBkZXIgVGVpbGUgaW4gZGVyIFdhcnRlc2NobGFuZ2Ugc2luZCwgZW50aORsdCBkaWUKK0F1c2dhYmUgZGVuIE5hbWVuIGRlcyBQYWtldGVzLCBkaWUgVGVpbGUgaW4gZGVyIFdhcnRlc2NobGFuZ2Ugc293aWUgZGllCitHZXNhbXRhbnphaGwgZ2VzcGVpY2hlcnRlciBCeXRlcyBpbiBkZXIgV2FydGVzY2hsYW5nZS4KKy5UUCAKK1xmQlwtZFxmUCwgXGZCXC1cLWRpc2NhcmRcZlAgW1xmSVBha2V0XGZQLi4uXQorRGllcyBs9nNjaHQgVGVpbGUgYXVzIGRlciBXYXJ0ZXNjaGxhbmdlIGRlcmVyLCBkaWUgYXVmIGRpZSB2ZXJibGVpYmVuZGVuCitUZWlsZSBpaHJlciBQYWtldGUgd2FydGVuLgorCitGYWxscyBrZWluIFxmSVBha2V0XGZQIGFnZWdlYmVuIHdpcmQsIHdpcmQgZGllIFdhcnRlc2NobGFuZ2Uga29tcGxldHQgZ2VsZWVydDsKK2ZhbGxzIGlyZ2VuZHdlbGNoZSBhbmdlZ2ViZW4gc2luZCwgd2VyZGVuIG51ciBkaWUgVGVpbGUgZGVzL2RlciBwYXNzZW5kZW4KK1Bha2V0ZShzKSBnZWz2c2NodC4KKy5UUCAKK1xmQlwtaFxmUCwgXGZCXC1cLWhlbHBcZlAKK1plaWdlIGRlbiBCZWRpZW51bmdzaGlud2VpcyB1bmQgYmVlbmRlLgorLlRQIAorXGZCXC1cLXZlcnNpb25cZlAKK0dlYmUgZGllIFZlcnNpb24gYXVzIHVuZCBiZWVuZGUgc2ljaC4KKy4KKy5TSCBPUFRJT05FTgorLlRQIAorXGZCXC1cLWRlcG90ZGlyXGZQXGZJIFZlcnplaWNobmlzXGZQCitHaWJ0IGVpbiBhbHRlcm5hdGl2ZXMgVmVyemVpY2huaXMgZvxyIGRpZSBXYXJ0ZXNjaGxhbmdlIHZvbiBUZWlsZW4sIGRpZSBhdWYKK2F1dG9tYXRpc2NoZXMgV2llZGVyenVzYW1tZW5m/GhyZW4gd2FydGVuLCBhbi4gU3RhbmRhcmRt5N9pZyBpc3QgZGllcworXGZCL3Zhci9saWIvZHBrZ1xmUC4KKy5UUCAKK1xmQlwtU1xmUCwgXGZCXC1cLXBhcnRzaXplXGZQIFxmSWtpYmlieXRlc1xmUAorR2lidCBkaWUgbWF4aW1hbGUgVGVpbGdy9t9lIGluIGtpYmlieXRlcyAoMTAyNCBieXRlcykgYmVpbSBBdWZ0ZWlsZW4KK2FuLiBTdGFuZGFyZG3k32lnIGlzdCBkaWVzIDQ1MCBraUIuCisuVFAgCitcZkJcLW9cZlAsIFxmQlwtXC1vdXRwdXRcZlAgXGZJS29tcGxldHRhdXNnYWJlXGZQCitHaWJ0IGRlbiBBdXNnYWJlXC1EYXRlaW5hbWVuIGb8ciBlaW4gV2llZGVyenVzYW1tZW5iYXVlbiBhbi4KKworRGllcyBoZWJ0IGRpZSBWb3JlaW5zdGVsbHVuZyBm/HIgZWluIG1hbnVlbGxlcyBXaWVkZXJ6dXNhbW1lbmJhdWVuIGF1ZgorKFxmQlwtXC1qb2luXGZQKSB1bmQgaXN0IHp3aW5nZW5kIGb8ciBlaW4gYXV0b21hdGlzY2hlcworRWlucmVpaGVuXC1vZGVyXC1adXNhbW1lbmJhdWVuIChcZkJcLVwtYXV0b1xmUCkgbm90d2VuZGlnLgorLlRQIAorXGZCXC1RXGZQLCBcZkJcLVwtbnBxdWlldFxmUAorRmFsbHMgU2llIGVpbiBhdXRvbWF0aXNjaGVzIEVpbnJlaWhlbiBvZGVyIFdpZWRlcnp1c2FtbWVuc2V0emVuIGR1cmNoZvxocmVuLAorZ2lidCBcZkJkcGtnXC1zcGxpdFxmUCBub3JtYWxlcndlaXNlIGVpbmUgTWVsZHVuZyBhdXMsIGZhbGxzIGVpbiD8YmVyZ2ViZW5lcgorXGZJVGVpbFxmUCBrZWluIEJpbuRycGFrZXR0ZWlsIGlzdC4gRGllc2UgT3B0aW9uIHVudGVyZHL8Y2t0IGRpZXNlIE1lbGR1bmcgdW0KK1Byb2dyYW1tZW4gd2llIFxmQmRwa2dcZlAgenUgZXJsYXViZW4sIHNvd29obCBtaXQgZ2V0ZWlsdGVuIGFscyBhdWNoCit1bmdldGVpbHRlbiBQYWtldGVuIHVtenVnZWhlbiwgb2huZSBzdPZyZW5kZSBNZWxkdW5nZW4genUgZXJ6ZXVnZW4uCisuVFAgCitcZkJcLVwtbXNkb3NcZlAKK0Vyendpbmd0LCBkYXNzIGRpZSB2b24gXGZCXC1cLXNwbGl0XGZQIGVyemV1Z3RlbiBBdXNnYWJlXC1EYXRlaW5hbWVuCitNU0RPU1wta29tcGF0aWJlbCBzaW5kLgorCitEaWVzIHZlcnN0/G1tZWx0IGRlbiBQcuRmaXggXC0gZW50d2VkZXIgZGVuIHZvcmVpbmdlc3RlbGx0ZW4gYXVzIGRlbQorRWluZ2FiZVwtRGF0ZWluYW1lbiBhYmdlbGVpdGV0ZW4gb2RlciBkZW4gYWxzIEFyZ3VtZW50IPxiZXJnZWJlbmVuOgorYWxwaGFudW1tZXJpc2NoZSBaZWljaGVuIHdlcmRlbiBrbGVpbiBnZXNjaHJpZWJlbiwgUGx1c3plaWNoZW4gd2VyZGVuIGR1cmNoCitcZkJ4XGZQIGVyc2V0enQgdW5kIGFsbGUgYW5kZXJlbiBaZWljaGVuIHdlcmRlbiBlbnRmZXJudC4KKworRGFzIEVyZ2VibmlzIHdpcmQgZGFubiBzb3dlaXQgd2llIG72dGlnIGFiZ2VzY2huaXR0ZW4sIHVuZCBEYXRlaW5hbWVuIGRlcgorRm9ybSBcZklQcuRmaXhOXGZQXGZCb2ZcZlBcZklNXGZQXGZCLmRlYlxmUCB3ZXJkZW4gZ2VuZXJpZXJ0LgorLgorLlNIIFLcQ0tHQUJFV0VSVAorLlRQIAorXGZCMFxmUAorRGFzIGFuZ2Vmb3JkZXJ0ZSBBdWZ0ZWlsZW4sIFp1c2FtbWVuZvxnZW4gb2RlciBlaW4gYW5kZXJlciBCZWZlaGwgd2FyCitlcmZvbGdyZWljaC4gXGZCXC1cLWluZm9cZlBcLUJlZmVobGUgd2VyZGVuIGFscyBlcmZvbGdyZWljaCBnZXdlcnRldCwgc29nYXIgZmFsbHMKK2RpZSBEYXRlaWVuIGtlaW5lIFRlaWxlIGVpbmVzIEJpbuRycGFrZXRlcyB3YXJlbi4KKy5UUCAKK1xmQjFcZlAKK1RyaXR0IG51ciBiZWkgXGZCXC1cLWF1dG9cZlAgYXVmIHVuZCB6ZWlndCBhbiwgZGFzcyBkaWUgRGF0ZWkgXGZJVGVpbFxmUCBrZWluIFRlaWwKK2VpbmVzIEJpbuRycHJvZ3JhbW1zIHdhci4KKy5UUCAKK1xmQjJcZlAKK0VpbmUgYmVzdGltbXRlIEdhdHR1bmcgdm9uIFByb2JsZW1lbiB0cmF0IGF1Ziwgd2llIHp1bSBCZWlzcGllbCBlaW4KK0ZlaGxzY2hsYWcgZWluZXMgU3lzdGVtYXVmcnVmcywgZWluZSBEYXRlaSwgZGllIHdpZSBlaW4gUGFrZXR0ZWlsIGF1c3NhaAorYWJlciBiZXNjaORkaWd0IHdhciwgZWluIEJlbnV0enVuZ3NmZWhsZXIgb2RlciBlaW5pZ2UgYW5kZXJlIFByb2JsZW1lLgorLgorLlNIIEZFSExFUgorVm9sbGUgRGV0YWlscyD8YmVyIGRpZSBQYWtldGUgaW4gZGVyIFdhcnRlc2NobGFuZ2Ugc2luZCBuaWNodCB6dSBlcmhhbHRlbiwKK29obmUgc2VsYnN0IGltIFdhcnRlc2NobGFuZ2VudmVyemVpY2huaXMgenUgd/xobGVuLgorCitFcyBnaWJ0IGtlaW5lIGVpbmZhY2hlIEFydCB6dSB0ZXN0ZW4sIG9iIGVpbmUgRGF0ZWksIGRpZSBlaW4gVGVpbCBlaW5lcworQmlu5HJwYWtldGVzIHNlaW4ga/ZubnRlLCBlaW5lcyBpc3QuCisuCisuU0ggREFURUlFTgorLlRQIAorXGZJL3Zhci9saWIvZHBrZy9wYXJ0c1xmUAorRGFzIHZvcmVpbmdlc3RlbGx0ZSBWZXJ6ZWljaG5pcyBm/HIgZGllIFdhcnRlc2NobGFuZ2UgZGVyIFRlaWxcLURhdGVpZW4sIGRpZQorYXVmIGF1dG9tYXRpc2NoZXMgWnVzYW1tZW5m/GdlbiB3YXJ0ZW4uCisKK0RpZSBpbiBkaWVzZW0gVmVyemVpY2huaXMgYmVudXR6dGVuIERhdGVpbmFtZW4gbGllZ2VuIGluIGVpbmVtIGludGVybgorXGZCZHBrZ1wtc3BsaXRcZlBcLUZvcm1hdCB2b3IgdW5kIHNpbmQgc2VociB3YWhyc2NoZWlubGljaCBm/HIgYW5kZXJlIFByb2dyYW1tZQorbmljaHQgbvx0emxpY2gsIHVuZCBpbiBrZWluZW0gRmFsbCBzb2xsdGUgc2ljaCBhdWYgZGFzIEZvcm1hdCBkZXIgRGF0ZWluYW1lbgordmVybGFzc2VuIHdlcmRlbi4KKy4KKy5TSCDcQkVSU0VUWlVORworRGllIGRldXRzY2hlINxiZXJzZXR6dW5nIHd1cmRlIDIwMDQsIDIwMDYtMjAxMSB2b24gSGVsZ2UgS3JldXR6bWFubgorPGRlYmlhbkBoZWxnZWZqZWxsLmRlPiwgMjAwNyB2b24gRmxvcmlhbiBSZWhuaXNjaCA8ZWl4bWFuQGdteC5kZT4gdW5kCisyMDA4IHZvbiBTdmVuIEpvYWNoaW0gPHN2ZW5qb2FjQGdteC5kZT4KK2FuZ2VmZXJ0aWd0LiBEaWVzZSDcYmVyc2V0enVuZyBpc3QgRnJlaWUgRG9rdW1lbnRhdGlvbjsgbGVzZW4gU2llIGRpZQorR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgVmVyc2lvbiAyIG9kZXIgbmV1ZXIgZvxyIGRpZSBLb3BpZXJiZWRpbmd1bmdlbi4KK0VzIGdpYnQgS0VJTkUgSEFGVFVORy4KKy5TSCAiU0lFSEUgQVVDSCIKK1xmQmRlYlxmUCg1KSwgXGZCZGViXC1jb250cm9sXGZQKDUpLCBcZkJkcGtnXC1kZWJcZlAoMSksIFxmQmRwa2dcZlAoMSkuCisuCisuU0ggQVVUT1IKK0NvcHlyaWdodCBcKGNvIDE5OTVcLTE5OTYgSWFuIEphY2tzb24KKy5zcAorRGllcyBpc3QgRnJlaWUgU29mdHdhcmU7IGxlc2VuIFNpZSBkaWUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgVmVyc2lvbiAyCitvZGVyIG5ldWVyIGb8ciBkaWUgS29waWVyYmVkaW5ndW5nZW4uIEVzIGdpYnQgS0VJTkUgSGFmdHVuZy4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL2RlL2Rwa2ctc3RhdG92ZXJyaWRlLjggYi9kcGtnLTEuMTYuMS4xL21hbi9kZS9kcGtnLXN0YXRvdmVycmlkZS44Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjBmMGQyMGUKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9kZS9kcGtnLXN0YXRvdmVycmlkZS44CkBAIC0wLDAgKzEsMTA0IEBACisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkcGtnXC1zdGF0b3ZlcnJpZGUgOCAyMDExXC0wN1wtMDQgRGViaWFuXC1Qcm9qZWt0IGRwa2dcLUhpbGZzcHJvZ3JhbW1lCisuU0ggTkFNRQorZHBrZ1wtc3RhdG92ZXJyaWRlIFwtIPxiZXIgRWlnZW50/G1lcnNjaGFmdCB1bmQgTW9kdXMgdm9uIERhdGVpZW4gaGlud2Vnc2V0emVuCisuCisuU0gg3EJFUlNJQ0hUCitcZkJkcGtnXC1zdGF0b3ZlcnJpZGVcZlAgW1xmSU9wdGlvblxmUC4uLl0gXGZJQmVmZWhsXGZQCisuCisuU0ggQkVTQ0hSRUlCVU5HCiu7XGZCU3RhdFwtSGlud2Vnc2V0enVuZ2VuXGZQqyBzaW5kIGVpbmUgTfZnbGljaGtlaXQgXGZCZHBrZ1xmUCgxKSB6dSBiZXJpY2h0ZW4sCitlaW5lbiBhbmRlcmVuIEVpZ2VudPxtZXIgb2RlciBNb2R1cyBm/HIgZWluZSBEYXRlaSB6dSB2ZXJ3ZW5kZW4sIHdlbm4gZWluCitQYWtldCBpbnN0YWxsaWVydCB3aXJkLiAoSGlud2VpczogSWNoIHZlcndlbmRlIGRhcyBXb3J0ILtEYXRlaasgaGllciwgYWJlcgordGF0c+RjaGxpY2gga2FubiBkaWVzIGplZGVzIERhdGVpc3lzdGVtb2JqZWt0IHNlaW4sIGRhcyBEcGtnIGhhbmRoYWJ0LAorZGFydW50ZXIgVmVyemVpY2huaXNzZSwgR2Vy5HRlLCB1c3cuKS4gRGllcyBrYW5uIGRhenUgdmVyd2VuZGV0IHdlcmRlbiwKK1Byb2dyYW1tZSwgZGllIG5vcm1hbGVyd2Vpc2Ugc2V0dWlkIHNpbmQsIGRhenUgenUgendpbmdlbiwgb2huZQorc2V0dWlkXC1NYXJraWVydW5nIHp1IGluc3RhbGxpZXJlbiwgb2RlciBudXIgdm9uIGVpbmVyIGJlc3RpbW10ZW4gR3J1cHBlCithdXNm/GhyYmFyIHp1IHNlaW4uCisuUAorXGZCZHBrZ1wtc3RhdG92ZXJyaWRlXGZQIGlzdCBlaW4gSGlsZnN3ZXJremV1ZyB1bSBkaWUgTGlzdGUgZGVyCitTdGF0dXNcLUhpbndlZ3NldHp1bmdlbiB6dSB2ZXJ3YWx0ZW4uIEVzIGhhdCBkcmVpIGdydW5kbGVnZW5kZSBGdW5rdGlvbmVuOgorSGluenVm/GdlbiwgRW50ZmVybmVuIHVuZCBBdWZsaXN0ZW4gdm9uIEhpbndlZ3NldHp1bmdlbi4KKy4KKy5TSCBCRUZFSExFCisuVFAgCitcZkJcLVwtYWRkXGZQXGZJIEJlbnV0emVyIEdydXBwZSBNb2R1cyBEYXRlaVxmUAorRvxnZSBlaW5lIEhpbndlZ3NldHp1bmcgZvxyIFxmSURhdGVpXGZQIGhpbnp1LiBcZklEYXRlaVxmUCBtdXNzIG5vY2ggbmljaHQKK2V4aXN0aWVyZW4gd2VubiBkaWVzZXIgQmVmZWhsIHZlcndlbmRldCB3aXJkOyBkaWUgSGlud2Vnc2V0enVuZyB3aXJkCithdWZiZXdhaHJ0IHVuZCBzcOR0ZXIgdmVyd2VuZGV0LiBCZW51dHplciB1bmQgR3J1cHBlbiBr9m5uZW4g/GJlciBpaHJlbgorTmFtZW4gKGJlaXNwaWVsc3dlaXNlIFxmQnJvb3RcZlAgb2RlciBcZkJub2JvZHlcZlApIHNwZXppZml6aWVydCB3ZXJkZW4sIG9kZXIg/GJlcgoraWhyZSBOdW1tZXIgbWl0IHZvcmFuZ2VzdGVsbHRlbSC7XGZCI1xmUKsgKGJlaXNwaWVsc3dlaXNlIFxmQiMwXGZQIG9kZXIKK1xmQiM2NTUzNFxmUCkuIERlciBcZklNb2R1c1xmUCBtdXNzIG9rdGFsIGFuZ2VnZWJlbiB3ZXJkZW4uCisKK0ZhbGxzIFwtXC11cGRhdGUgYW5nZWdlYmVuIGlzdCB1bmQgZGllIFxmSURhdGVpXGZQIGV4aXN0aWVydCwgZGFubiB3aXJkIGRpZXNlCitzb2ZvcnQgYXVmIGRlbiBuZXVlbiBFaWdlbnT8bWVyIHVuZCBNb2R1cyBlaW5nZXN0ZWxsdC4KKy5UUCAKK1xmQlwtXC1yZW1vdmVcZlBcZkkgRGF0ZWlcZlAKK0VudGZlcm50IGVpbmUgSGlud2Vnc2V0enVuZyBm/HIgXGZJRGF0ZWlcZlAsIGRlciBTdGF0dXMgdm9uIFxmSURhdGVpXGZQIGJsZWlidAorZHVyY2ggZGllc2VuIEJlZmVobCB1bnZlcuRuZGVydC4KKy5UUCAKK1xmQlwtXC1saXN0XGZQIFtcZklHbG9iXC1NdXN0ZXJcZlBdCitMaXN0ZSBhbGxlIEhpbndlZ3NldHp1bmdlbiBhdWYuIEZhbGxzIGVpbiBHbG9iXC1NdXN0ZXIgc3BlemlmaXppZXJ0IHd1cmRlLAorYmVncmVuemUgZGllIEF1c2dhYmUgYXVmIEhpbndlZ3NldHp1bmdlbiwgZGllIGF1ZiBkZW4gR2xvYiBwYXNzZW4uIEZhbGxlcyBlcwora2VpbmUgSGlud2Vnc2V0enVuZ2VuIGdpYnQgb2RlciBrZWluZSBhdWYgZGVuIEdsb2IgcGFzc3QsIHdpcmQgc2ljaAorXGZCZHBrZ1wtc3RhdG92ZXJyaWRlXGZQIG1pdCBlaW5lbSBFeGl0XC1XZXJ0IHZvbiAxIGJlZW5kZW4uCisuVFAgCitcZkJcLVwtaGVscFxmUAorWmVpZ2UgZGVuIEJlZGllbnVuZ3NoaW53ZWlzIHVuZCBiZWVuZGUuCisuVFAgCitcZkJcLVwtdmVyc2lvblxmUAorR2ViZSBkaWUgVmVyc2lvbiBhdXMgdW5kIGJlZW5kZSBzaWNoLgorLgorLlNIIE9QVElPTkVOCisuVFAgCitcZkJcLVwtYWRtaW5kaXJcZlBcZkkgVmVyemVpY2huaXNcZlAKK1dlY2hzbGUgZGFzIFxmSVZlcnplaWNobmlzXGZQIGRlciBEcGtnXC1EYXRlbmJhbmssIHdvIGF1Y2ggZGllCitzdGF0b3ZlcnJpZGVcLURhdGVpIGdlbGFnZXJ0IGlzdC4gRGVyIFN0YW5kYXJkIGlzdCBcZkkvdmFyL2xpYi9kcGtnXGZQLgorLlRQIAorXGZCXC1cLWZvcmNlXGZQCitFcnp3aW5nZSBlaW5lIEFrdGlvbiwgc2VsYnN0IHdlbm4gZWluZSBTaW5uXC3cYmVycHL8ZnVuZyBkaWVzZSBub3JtYWxlcndlaXNlCit2ZXJi9nRlLiBEaWVzIGlzdCBub3R3ZW5kaWcsIHVtIHNpY2gg/GJlciBlaW5lIGV4aXN0aWVyZW5kZSBIaW53ZWdzZXR6dW5nCitoaW53ZWd6dXNldHplbi4KKy5UUCAKK1xmQlwtXC11cGRhdGVcZlAKK1ZlcnN1Y2hlIGRpZSBEYXRlaSBzb2ZvcnQgYXVmIGRlbiBuZXVlbiBFaWdlbnT8bWVyIHVuZCBuZXVlbiBNb2R1cyB6dQor5G5kZXJuLCBmYWxscyBzaWUgZXhpc3RpZXJ0LgorLlRQIAorXGZCXC1cLXF1aWV0XGZQCitTZWkgbmljaHQgc28gYXVzZvxocmxpY2ggZGFy/GJlciwgd2FzIHdpciBtYWNoZW4uCisuCisuU0ggVU1HRUJVTkcKKy5UUCAKK1xmQkRQS0dfQURNSU5ESVJcZlAKK0ZhbGxzIGdlc2V0enQgdW5kIGRpZSBPcHRpb24gXGZCXC1cLWFkbWluZGlyXGZQIG5pY2h0IHZlcndhbmR0IHd1cmRlLCB3aXJkIGRpZXMKK2FscyBEYXRlbnZlcnplaWNobmlzIHZvbiBEcGtnIHZlcndhbmR0LgorLgorLlNIIERBVEVJRU4KKy5UUCAKK1xmSS92YXIvbGliL2Rwa2cvc3RhdG92ZXJyaWRlXGZQCitEYXRlaSwgZGllIGRpZSBha3R1ZWxsZSBMaXN0ZSBkZXIgSGlud2Vnc2V0enVuZ2VuIGF1ZiBkZW0gU3lzdGVtCitlbnRo5Gx0LiBTaWUgYmVmaW5kZXQgc2ljaCBpbSBEcGtnXC1BZG1pbmlzdHJhdGlvbnN2ZXJ6ZWljaG5pcywgenVzYW1tZW4gbWl0CithbmRlcmVuIGb8ciBEcGtnIHdpY2h0aWdlbiBEYXRlaWVuLCB3aWUgu3N0YXR1c6sgb2RlciC7YXZhaWxhYmxlqy4KKy5icgorSGlud2VpczogXGZCZHBrZ1wtc3RhdG92ZXJyaWRlXGZQIGVyaORsdCBkaWUgYWx0ZSBLb3BpZSBkaWVzZXIgRGF0ZWkgbWl0IGRlcgorRW5kdW5nILtcLW9sZKsgYmV2b3IgZXMgc2llIG1pdCBlaW5lciBuZXVlbiBlcnNldHp0LgorLgorLlNIINxCRVJTRVRaVU5HCitEaWUgZGV1dHNjaGUg3GJlcnNldHp1bmcgd3VyZGUgMjAwNCwgMjAwNi0yMDExIHZvbiBIZWxnZSBLcmV1dHptYW5uCis8ZGViaWFuQGhlbGdlZmplbGwuZGU+LCAyMDA3IHZvbiBGbG9yaWFuIFJlaG5pc2NoIDxlaXhtYW5AZ214LmRlPiB1bmQKKzIwMDggdm9uIFN2ZW4gSm9hY2hpbSA8c3ZlbmpvYWNAZ214LmRlPgorYW5nZWZlcnRpZ3QuIERpZXNlINxiZXJzZXR6dW5nIGlzdCBGcmVpZSBEb2t1bWVudGF0aW9uOyBsZXNlbiBTaWUgZGllCitHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBWZXJzaW9uIDIgb2RlciBuZXVlciBm/HIgZGllIEtvcGllcmJlZGluZ3VuZ2VuLgorRXMgZ2lidCBLRUlORSBIQUZUVU5HLgorLlNIICJTSUVIRSBBVUNIIgorXGZCZHBrZ1xmUCgxKS4KKy4KKy5TSCBBVVRPUgorQ29weXJpZ2h0IFwoY28gMjAwMCBXaWNoZXJ0IEFra2VybWFuCisuc3AKK0RpZXMgaXN0IEZyZWllIFNvZnR3YXJlOyBsZXNlbiBTaWUgZGllIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIFZlcnNpb24gMgorb2RlciBuZXVlciBm/HIgZGllIEtvcGllcmJlZGluZ3VuZ2VuLiBFcyBnaWJ0IEtFSU5FIEhhZnR1bmcuCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9kZS9kcGtnLXRyaWdnZXIuMSBiL2Rwa2ctMS4xNi4xLjEvbWFuL2RlL2Rwa2ctdHJpZ2dlci4xCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjBjZDdhYTMKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9kZS9kcGtnLXRyaWdnZXIuMQpAQCAtMCwwICsxLDgwIEBACisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkcGtnXC10cmlnZ2VyIDEgMjAxMVwtMDhcLTE0IERlYmlhblwtUHJvamVrdCBkcGtnXC1Qcm9ncmFtbXNhbW1sdW5nCisuU0ggTkFNRQorZHBrZ1wtdHJpZ2dlciBcLSBlaW4gUGFrZXRcLVRyaWdnZXJcLUhpbGZzd2Vya3pldWcKKy4KKy5TSCDcQkVSU0lDSFQKK1xmQmRwa2dcLXRyaWdnZXJcZlAgW1xmSU9wdGlvblxmUC4uLl0gXGZJVHJpZ2dlclwtTmFtZVxmUAorLmJyCitcZkJkcGtnXC10cmlnZ2VyXGZQIFtcZklPcHRpb25cZlAuLi5dIFxmSUJlZmVobFxmUAorLgorLlNIIEJFU0NIUkVJQlVORworXGZCZHBrZ1wtdHJpZ2dlclxmUCBpc3QgZWluIFdlcmt6ZXVnLCB1bSBUcmlnZ2VyIChkZXV0c2NoOiBBdXNs9nNlcikgZXhwbGl6aXQgenUKK2FrdGl2aWVyZW4gdW5kIGRlbiBsYXVmZW5kZW4gXGZCZHBrZ1xmUCBhdWYgZGVyZW4gVW50ZXJzdPx0enVuZyBoaW4genUKK/xiZXJwcvxmZW4uCisuUFAKK0RpZXMga2FubiB2b24gQmV0cmV1ZXJza3JpcHRlbiBpbiBrb21wbGV4ZW4gdW5kIGlmXC10aGVuXC1lbHNlXC1TaXR1YXRpb25lbgordmVyd2FuZHQgd2VyZGVuLCB3byBkaWUgRGF0ZWlcLVRyaWdnZXIgb2RlciBkaWUgU3RldWVydW5nIHZvbiBEYXRlaWRpcmVrdGl2ZW4KK2R1cmNoIGV4cGxpeml0ZSBcZkJhY3RpdmF0ZVxmUFwtVHJpZ2dlciBuaWNodCBhdXNyZWljaGVuLiBFcyBrYW5uIGF1Y2ggenVtCitUZXN0ZW4gdW5kIHZvbiBTeXN0ZW1hZG1pbmlzdHJhdG9yZW4gdmVyd2FuZHQgd2VyZGVuIChiZWFjaHRlbiBTaWUgYWJlciwKK2Rhc3MgVHJpZ2dlciBuaWNodCB0YXRz5GNobGljaCBkdXJjaCBcZkJkcGtnXC10cmlnZ2VyXGZQIGF1c2dlZvxocnQgd2VyZGVuKS4KKy5QUAorTmljaHQgZXJrYW5udGUgVHJpZ2dlcm5hbWVuXC1TeW50YXhlbiBzaW5kIGb8ciBcZkJkcGtnXC10cmlnZ2VyXGZQIGVpbiBGZWhsZXIuCisuCisuU0ggQkVGRUhMRQorLlRQIAorXGZCXC1cLWNoZWNrXC1zdXBwb3J0ZWRcZlAKK9xiZXJwcvxmZSwgb2IgZGVyIGxhdWZlbmRlIFxmQmRwa2dcZlAgVHJpZ2dlciB1bnRlcnN0/HR6dCAobm9ybWFsZXJ3ZWlzZSB2b20KK1Bvc3RpbnN0IGF1ZmdlcnVmZW4pLiBFbmRldCBtaXQgXGZCMFxmUCwgZmFsbHMgZWluIFRyaWdnZXJcLWbkaGlnZXIgXGZCZHBrZ1xmUAorYXVzZ2Vm/GhydCB3dXJkZSwgb2RlciBtaXQgXGZCMVxmUCB1bmQgZWluZXIgRmVobGVybWVsZHVuZyBuYWNoIFN0ZGVyciwgZmFsbHMKK25pY2h0LiBOb3JtYWxlcndlaXNlIGlzdCBlcyBhbGxlcmRpbmdzIGJlc3NlciwgZWluZmFjaCBkZW4gZ2V3/G5zY2h0ZW4KK1RyaWdnZXIgbWl0IFxmQmRwa2dcLXRyaWdnZXJcZlAgenUgYWt0aXZpZXJlbi4KKy5UUCAKK1xmQlwtaFxmUCwgXGZCXC1cLWhlbHBcZlAKK1plaWdlIGRlbiBCZWRpZW51bmdzaGlud2VpcyB1bmQgYmVlbmRlLgorLlRQIAorXGZCXC1cLXZlcnNpb25cZlAKK0dlYmUgZGllIFZlcnNpb24gYXVzIHVuZCBiZWVuZGUgc2ljaC4KKy4KKy5TSCBPUFRJT05FTgorLlRQIAorXGZCXC1cLWFkbWluZGlyPVxmUFxmSVZlcnpcZlAKK8RuZGVydCBkZW4gQWJsYWdlb3J0IGRlciBcZkJkcGtnXGZQXC1EYXRlbmJhbmsuIERlciBTdGFuZGFyZG9ydCBpc3QKK1xmSS92YXIvbGliL2Rwa2dcZlAuCisuVFAgCitcZkJcLVwtYnlcLXBhY2thZ2U9XGZQXGZJUGFrZXRcZlAKK9xiZXJzY2hyZWliZSBkZW4gVHJpZ2dlclwtRXJ3YXJ0ZW5kZW4gKG5vcm1hbGVyd2Vpc2Ugd2lyZCBkaWVzIHZvbiBcZkJkcGtnXGZQCitkdXJjaCBkaWUgVW1nZWJ1bmdzdmFyaWFibGUgXGZCRFBLR19NQUlOVFNDUklQVF9QQUNLQUdFXGZQIGRlciBCZXRyZXVlcnNrcmlwdGUKK2dlc2V0enQsIHdvYmVpIGRhcyBQYWtldCBiZW5hbm50IHdpcmQsIHp1IGRlbSBkYXMgU2tyaXB0IGdlaPZydCB1bmQgZGllcword2lyZCBzdGFuZGFyZG3k32lnIHZlcndhbmR0KS4KKy5UUCAKK1xmQlwtXC1ub1wtYXdhaXRcZlAKK0RpZXNlIE9wdGlvbiBhcnJhbmdpZXJ0LCBkYXNzIGRhcyBhdWZydWZlbmRlIFBha2V0IFQgKGZhbGxzIHp1dHJlZmZlbmQpCituaWNodCBhdWYgZGllIEFiYXJiZWl0dW5nIGRlcyBUcmlnZ2VycyB3YXJ0ZW4gbXVzcywgZGFzIGJ6dy4gZGllCitpbnRlcmVzc2llcnRlKG4pIFBha2V0KGUpIEkgd2VyZGVuIG5pY2h0IHp1IGRlciBMaXN0ZSBkZXIgYXVmIEJlYXJiZWl0dW5nCit3YXJ0ZW5kZW4gVHJpZ2dlciB2b24gVCBoaW56dWdlZvxndCB1bmQgZGVyIFN0YXR1cyB2b24gVCBibGVpYnQKK3VudmVy5G5kZXJ0LiBUIGthbm4gYWxzIGluc3RhbGxpZXJ0IGJldHJhY2h0ZXQgd2VyZGVuLCBvYndvaGwgSSBkZW4gVHJpZ2dlcgorbm9jaCBuaWNodCB2ZXJhcmJlaXRldCBoYWJlbiBr9m5udGUuCisuVFAgCitcZkJcLVwtbm9cLWFjdFxmUAorTnVyIHRlc3RlbiwgbmljaHRzIHRhdHPkY2hsaWNoIORuZGVybi4KKy4KKy5TSCBVTUdFQlVORworLlRQIAorXGZCRFBLR19BRE1JTkRJUlxmUAorRmFsbHMgZ2VzZXR6dCB1bmQgZGllIE9wdGlvbiBcZkJcLVwtYWRtaW5kaXJcZlAgbmljaHQgdmVyd2FuZHQgd3VyZGUsIHdpcmQgZGllcworYWxzIERhdGVudmVyemVpY2huaXMgdm9uIERwa2cgdmVyd2FuZHQuCisuCisuU0gg3EJFUlNFVFpVTkcKK0RpZSBkZXV0c2NoZSDcYmVyc2V0enVuZyB3dXJkZSAyMDA0LCAyMDA2LTIwMTEgdm9uIEhlbGdlIEtyZXV0em1hbm4KKzxkZWJpYW5AaGVsZ2VmamVsbC5kZT4sIDIwMDcgdm9uIEZsb3JpYW4gUmVobmlzY2ggPGVpeG1hbkBnbXguZGU+IHVuZAorMjAwOCB2b24gU3ZlbiBKb2FjaGltIDxzdmVuam9hY0BnbXguZGU+CithbmdlZmVydGlndC4gRGllc2Ug3GJlcnNldHp1bmcgaXN0IEZyZWllIERva3VtZW50YXRpb247IGxlc2VuIFNpZSBkaWUKK0dOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIFZlcnNpb24gMiBvZGVyIG5ldWVyIGb8ciBkaWUgS29waWVyYmVkaW5ndW5nZW4uCitFcyBnaWJ0IEtFSU5FIEhBRlRVTkcuCisuU0ggIlNJRUhFIEFVQ0giCitcZkJkcGtnXGZQKDEpLCBcZkJkZWJcLXRyaWdnZXJzXGZQKDUpLCBcZkIvdXNyL3NoYXJlL2RvYy9kcGtnXC1kZXYvdHJpZ2dlcnMudHh0Lmd6XGZQLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vZGUvZHBrZy12ZW5kb3IuMSBiL2Rwa2ctMS4xNi4xLjEvbWFuL2RlL2Rwa2ctdmVuZG9yLjEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZjA5YTlhZQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL2RlL2Rwa2ctdmVuZG9yLjEKQEAgLTAsMCArMSw2NiBAQAorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlwiCisuXCIgVGhpcyBmaWxlIHdhcyBnZW5lcmF0ZWQgd2l0aCBwbzRhLiBUcmFuc2xhdGUgdGhlIHNvdXJjZSBmaWxlLgorLlwiCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuVEggZHBrZ1wtdmVuZG9yIDEgMjAxMVwtMDdcLTA0IERlYmlhblwtUHJvamVrdCBkcGtnXC1Qcm9ncmFtbXNhbW1sdW5nCisuU0ggTkFNRQorZHBrZ1wtdmVuZG9yIFwtIGZyYWd0IEluZm9ybWF0aW9uZW4g/GJlciBkZW4gRGlzdHJpYnV0aW9uc2xpZWZlcmFudGVuIGFiCisuCisuU0gg3EJFUlNJQ0hUCitcZkJkcGtnXC12ZW5kb3JcZlAgW1xmSU9wdGlvblxmUC4uLl0gXGZJQmVmZWhsXGZQCisuCisuU0ggQkVTQ0hSRUlCVU5HCitcZkJkcGtnXC12ZW5kb3JcZlAgaXN0IGVpbiBXZXJremV1ZywgdW0gSW5mb3JtYXRpb25lbiD8YmVyIGluCitcZkIvZXRjL2Rwa2cvb3JpZ2luc1xmUCBhdWZnZWb8aHJ0ZSBMaWVmZXJhbnRlbiAoZW5nbC4gu3ZlbmRvcqspCithYnp1ZnJhZ2VuLiBcZkIvZXRjL2Rwa2cvb3JpZ2lucy9kZWZhdWx0XGZQIGVudGjkbHQgSW5mb3JtYXRpb25lbiD8YmVyIGRlbgorYWt0dWVsbGVuIExpZWZlcmFudGVuLgorLgorLlNIIEJFRkVITEUKKy5UUCAKK1xmQlwtXC1pc1xmUFxmSSBMaWVmZXJhbnRcZlAKK0JlZW5kZXQgc2ljaCBtaXQgXGZCMFxmUCwgZmFsbHMgZGVyIGFrdHVlbGxlIExpZWZlcmFudCBcZklMaWVmZXJhbnRcZlAgaXN0LAorYW5zb25zdGVuIG1pdCBlaW5lbSB2b24gTnVsbCB2ZXJzY2hpZWRlbmVuIFdlcnQuCisuVFAgCitcZkJcLVwtZGVyaXZlc1wtZnJvbVxmUFxmSSBMaWVmZXJhbnRcZlAKK0JlZW5kZXQgc2ljaCBtaXQgXGZCMFxmUCwgZmFsbHMgZGllIGFrdHVlbGxlIExpZWZlcmFudFwtRGlzdHJpYnV0aW9uIHZvbgorXGZJTGllZmVyYW50XGZQIGFiZ2VsZWl0ZXQgaXN0LCBhbnNvbnN0ZW4gbWl0IGVpbmVtIHZvbiBOdWxsIHZlcnNjaGllZGVuZW4KK1dlcnQuIEVzIHZlcndlbmRldCBkYXMgRmVsZCC7UGFyZW50qywgdW0gYWxsZSBWb3JmYWhyZW4gZGVzIGFrdHVlbGxlbgorTGllZmVyYW50ZW4genUgZXJtaXR0ZWxuLgorLlRQIAorXGZCXC1cLXF1ZXJ5XGZQXGZJIEZlbGRcZlAKK0dpYnQgYXVmIGRlciBTdGFuZGFyZGF1c2dhYmUgZGVuIFdlcnQgZGVzIExpZWZlcmFudGVuXC1zcGV6aWZpc2NoZW4gXGZJRmVsZFxmUGVzCitm/HIgZGVuIGFrdHVlbGxlbiBMaWVmZXJhbnRlbiBhdXMuCisuVFAgCitcZkJcLVwtaGVscFxmUAorWmVpZ2UgZGVuIEJlZGllbnVuZ3NoaW53ZWlzIHVuZCBiZWVuZGUuCisuVFAgCitcZkJcLVwtdmVyc2lvblxmUAorR2ViZSBkaWUgVmVyc2lvbiBhdXMgdW5kIGJlZW5kZSBzaWNoLgorLgorLlNIIE9QVElPTkVOCisuVFAgCitcZkJcLVwtdmVuZG9yXGZQXGZJIExpZWZlcmFudFxmUAorTmltbXQgYW4sIGRhc3MgZGVyIGFrdHVlbGxlIExpZWZlcmFudCBcZklMaWVmZXJhbnRcZlAgaXN0LCBzdGF0dCBpaG4g/GJlciBkaWUKK1VtZ2VidW5nc3ZhcmlhYmxlIFxmQkRFQl9WRU5ET1JcZlAgb2RlciBhdXMgXGZCL2V0Yy9kcGtnL29yaWdpbnMvZGVmYXVsdFxmUCB6dQorZXJtaXR0ZWxuLgorLgorLlNIIFVNR0VCVU5HCisuVFAgCitcZkJERUJfVkVORE9SXGZQCitEaWVzZSBFaW5zdGVsbHVuZyBkZWZpbmllcnQgZGVuIGFrdHVlbGxlbiBMaWVmZXJhbnRlbi4gRmFsbHMgbmljaHQgZ2VzZXR6dCwKK3dpcmQgZXIgYXVzIFxmQi9ldGMvZHBrZy9vcmlnaW5zL2RlZmF1bHRcZlAgZXJtaXR0ZWx0LgorLgorLlNIIEFVVE9SCitDb3B5cmlnaHQgXChjbyAyMDA5IFJhcGhhXFs6ZV1sIEhlcnR6b2cKKy5zcAorRGllcyBpc3QgRnJlaWUgU29mdHdhcmU7IGxlc2VuIFNpZSBkaWUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgVmVyc2lvbiAyCitvZGVyIG5ldWVyIGb8ciBkaWUgS29waWVyYmVkaW5ndW5nZW4uIEVzIGdpYnQgS0VJTkUgSGFmdHVuZy4KKworLlNIINxCRVJTRVRaVU5HCitEaWUgZGV1dHNjaGUg3GJlcnNldHp1bmcgd3VyZGUgMjAwNCwgMjAwNi0yMDExIHZvbiBIZWxnZSBLcmV1dHptYW5uCis8ZGViaWFuQGhlbGdlZmplbGwuZGU+LCAyMDA3IHZvbiBGbG9yaWFuIFJlaG5pc2NoIDxlaXhtYW5AZ214LmRlPiB1bmQKKzIwMDggdm9uIFN2ZW4gSm9hY2hpbSA8c3ZlbmpvYWNAZ214LmRlPgorYW5nZWZlcnRpZ3QuIERpZXNlINxiZXJzZXR6dW5nIGlzdCBGcmVpZSBEb2t1bWVudGF0aW9uOyBsZXNlbiBTaWUgZGllCitHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBWZXJzaW9uIDIgb2RlciBuZXVlciBm/HIgZGllIEtvcGllcmJlZGluZ3VuZ2VuLgorRXMgZ2lidCBLRUlORSBIQUZUVU5HLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vZGUvZHBrZy4xIGIvZHBrZy0xLjE2LjEuMS9tYW4vZGUvZHBrZy4xCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmZmNDU0ZDkKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9kZS9kcGtnLjEKQEAgLTAsMCArMSw4MDYgQEAKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlRIIGRwa2cgMSAyMDExXC0wOFwtMTQgRGViaWFuXC1Qcm9qZWt0IGRwa2dcLVByb2dyYW1tc2FtbWx1bmcKKy5TSCBOQU1FCitkcGtnIFwtIFBha2V0dmVyd2FsdGVyIGb8ciBEZWJpYW4KKy4KKy5TSCDcQkVSU0lDSFQKK1xmQmRwa2dcZlAgW1xmSU9wdGlvblxmUC4uLl0gXGZJQWt0aW9uZW5cZlAKKy4KKy5TSCBXQVJOVU5HCitEaWVzZXMgSGFuZGJ1Y2ggaXN0IGb8ciBCZW51dHplciBnZWRhY2h0LCBkaWUgZGllIEtvbW1hbmRvemVpbGVub3B0aW9uZW4gdW5kCitQYWtldHp1c3TkbmRlIHZvbiBcZkJkcGtnXGZQIGRldGFpbGxpZXJ0ZXIgdmVyc3RlaGVuIHdvbGxlbiwgYWxzIGR1cmNoIFxmQmRwa2cKK1wtXC1oZWxwXGZQIGJlc2NocmllYmVuIGlzdC4KKworRXMgc29sbHRlIFxmSW5pY2h0XGZQIHZvbiBQYWtldGJldHJldWVybiB2ZXJ3ZW5kZXQgd2VyZGVuLCBkaWUgdmVyc3RlaGVuCit3b2xsZW4sIHdpZSBcZkJkcGtnXGZQIGlociBQYWtldCBpbnN0YWxsaWVyZW4gd2lyZC4gRGllIEJlc2NocmVpYnVuZyB2b24gZGVuCitU5HRpZ2tlaXRlbiB2b24gXGZCZHBrZ1xmUCBiZWltIEluc3RhbGxpZXJlbiB1bmQgRW50ZmVybmVuIHZvbiBQYWtldGVuIGlzdAorYmVzb25kZXJzIHVuenVs5G5nbGljaC4KKy4KKy5TSCBCRVNDSFJFSUJVTkcKK1xmQmRwa2dcZlAgaXN0IGVpbiBXZXJremV1ZywgdW0gRGViaWFuXC1QYWtldGUgenUgaW5zdGFsbGllcmVuLCB6dSBiYXVlbiB1bmQgenUKK3ZlcndhbHRlbi4gRGllIHByaW3kcmUgdW5kIGJlbnV0emVyZnJldW5kbGljaGVyZSBPYmVyZmzkY2hlIGb8ciBcZkJkcGtnXGZQIGlzdAorXGZCYXB0aXR1ZGVcZlAoMSkuIFxmQmRwa2dcZlAgc2VsYnN0IHdpcmQga29tcGxldHQg/GJlciBLb21tYW5kb3plaWxlbm9wdGlvbmVuCitnZXN0ZXVlcnQsIGRpZSBhdXMgZ2VuYXUgZWluZXIgQWt0aW9uIHVuZCBOdWxsIG9kZXIgbWVocmVyZW4gT3B0aW9uZW4KK2Jlc3RlaGVuLiBEZXIgQWt0aW9uc3BhcmFtZXRlciB0ZWlsdCBcZkJkcGtnXGZQIG1pdCwgd2FzIHp1IHR1biBpc3QsIHVuZCBkaWUKK09wdGlvbmVuIHN0ZXVlcm4gZGllIEFrdGlvbmVuIGluIGlyZ2VuZGVpbmVyIFdlaXNlLgorCitcZkJkcGtnXGZQIGthbm4gYXVjaCBhbHMgT2JlcmZs5GNoZSBm/HIgXGZCZHBrZ1wtZGViXGZQKDEpIHVuZCBcZkJkcGtnXC1xdWVyeVxmUCgxKQordmVyd2VuZGV0IHdlcmRlbi4gRGllIExpc3RlIGRlciB1bnRlcnN0/HR6ZW4gQWt0aW9uZW4ga2FubiBpbSBBYnNjaG5pdHQKK1xmQkFLVElPTkVOXGZQIGdlZnVuZGVuIHdlcmRlbi4gRmFsbHMgc28gZWluZSBBa3Rpb24gYW5nZXRyb2ZmZW4gd2lyZCwgZvxocnQKK1xmQmRwa2dcZlAgZWluZmFjaCBcZkJkcGtnXC1kZWJcZlAgb2RlciBcZkJkcGtnXC1xdWVyeVxmUCBtaXQgZGVuIPxiZXJnZWJlbmVuCitQYXJhbWV0ZXJuIGF1cywgYWxsZXJkaW5ncyB3ZXJkZW4gZGVyemVpdCBrZWluZSBzcGV6aWZpc2NoZW4gT3B0aW9uZW4gYW4KK2RpZXNlIPxiZXJnZWJlbi4gVW0gc29sY2hlIE9wdGlvbmVuIHp1IHZlcndlbmRlbiwgbfxzc2VuIGRpZSBCYWNrZW5kcyBkaXJla3QKK2F1ZmdlcnVmZW4gd2VyZGVuLgorLgorLlNIICJJTkZPUk1BVElPTkVOINxCRVIgUEFLRVRFIgorXGZCZHBrZ1xmUCB2ZXJ3YWx0ZXQgZWluaWdlIG78dHpsaWNoZSBJbmZvcm1hdGlvbmVuIPxiZXIgdmVyZvxnYmFyZSBQYWtldGUuIERpZQorSW5mb3JtYXRpb25lbiBzaW5kIGluIGRyZWkgS2xhc3NlbiB1bnRlcnRlaWx0OiBcZkJTdGF0dXNcZlAsIFxmQkF1c3dhaGxzdGF0dXNcZlAKK3VuZCBcZkJTY2hhbHRlclxmUC4gRGllc2UgV2VydGUgc2luZCBoYXVwdHPkY2hsaWNoIHp1ciDEbmRlcnVuZyBkdXJjaAorXGZCZHNlbGVjdFxmUCBnZWRhY2h0LgorLlNTIFBBS0VUWlVTVMROREUKKy5UUCAKK1xmQm5pY2h0XC1pbnN0YWxsaWVydFxmUAorRGFzIFBha2V0IGlzdCBuaWNodCBhdWYgSWhyZW0gU3lzdGVtIGluc3RhbGxpZXJ0LgorLlRQIAorXGZCQ29uZmlnXC1EYXRlaWVuXGZQCitOdXIgZGllIEtvbmZpZ3VyYXRpb25zZGF0ZWllbiBkZXMgUGFrZXRzIGV4aXN0aWVyZW4gYXVmIGRlbSBTeXN0ZW0uCisuVFAgCitcZkJoYWxiXC1pbnN0YWxsaWVydFxmUAorRGllIEluc3RhbGxhdGlvbiBkZXMgUGFrZXRlcyB3dXJkZSBiZWdvbm5lbiwgYWJlciBhdXMgaXJnZW5kZWluZW0gR3J1bmQKK25pY2h0IGFiZ2VzY2hsb3NzZW4uCisuVFAgCitcZkJlbnRwYWNrdFxmUAorRGFzIFBha2V0IGlzdCBlbnRwYWNrdCwgYWJlciBuaWNodCBrb25maWd1cmllcnQuCisuVFAgCitcZkJoYWxiXC1rb25maWd1cmllcnRcZlAKK0RhcyBQYWtldCBpc3QgZW50cGFja3QgdW5kIGRpZSBLb25maWd1cmF0aW9uIHd1cmRlIGJlZ29ubmVuLCBhYmVyIGF1cworaXJnZW5kZWluZW0gR3J1bmQgbmljaHQgYWJnZXNjaGxvc3Nlbi4KKy5UUCAKK1xmQnRyaWdnZXJzXC1hd2FpdGVkXGZQCitEYXMgUGFrZXQgZXJ3YXJ0ZXQgVHJpZ2dlclwtVmVyYXJiZWl0dW5nIGR1cmNoIGVpbiBhbmRlcmVzIFBha2V0LgorLlRQIAorXGZCdHJpZ2dlcnNcLXBlbmRpbmdcZlAKK0RhcyBQYWtldCB3dXJkZSBnZXRyaWdnZXJ0LgorLlRQIAorXGZCaW5zdGFsbGllcnRcZlAKK0RhcyBQYWtldCBpc3QgZW50cGFja3QgdW5kIGtvbmZpZ3VyaWVydGUga29ycmVrdC4KKy5TUyBQQUtFVEFVU1dBSExcLVNUQVRVUworLlRQIAorXGZCaW5zdGFsbGllcmVcZlAKK0RhcyBQYWtldCBpc3QgenVyIEluc3RhbGxhdGlvbiBhdXNnZXfkaGx0LgorLlRQIAorXGZCaGFsdGVuXGZQCitFaW4gUGFrZXQsIGRhcyBtaXQgXGZCaGFsdGVuXGZQIG1hcmtpZXJ0IGlzdCwgd2lyZCB2b24gXGZCZHBrZ1xmUCBuaWNodCBiZWhhbmRlbHQsCitlcyBzZWkgZGVubiBTaWUgZXJ6d2luZ2VuIGRpZXMgbWl0IGRlciBPcHRpb24gXGZCXC1cLWZvcmNlXC1ob2xkXGZQLgorLlRQIAorXGZCZGVpbnN0YWxsaWVyZVxmUAorRGFzIFBha2V0IGlzdCB6dXIgRGVpbnN0YWxsYXRpb24gYXVzZ2V35GhsdCAoZC5oLiB3aXIgd29sbGVuIGFsbGUgRGF0ZWllbgorYXXfZXIgZGVuIEtvbmZpZ3VyYXRpb25zZGF0ZWllbiBlbnRmZXJuZW4pLgorLlRQIAorXGZCdm9sbHN05G5kaWcgbPZzY2hlblxmUAorRGFzIFBha2V0IGlzdCB6dW0gdm9sbHN05G5kaWdlbiBM9nNjaGVuICi7cHVyZ2WrKSBhdXNnZXfkaGx0IChkLmguIHdpcgord29sbGVuIGFsbGUgRGF0ZWllbiBhdXMgZGVuIFN5c3RlbXZlcnplaWNobmlzc2VuIGlua2x1c2l2ZSBkZXIKK0tvbmZpZ3VyYXRpb25zZGF0ZWllbiBlbnRmZXJuZW4pLgorLlNTIFBBS0VUXC1TQ0hBTFRFUgorLlRQIAorXGZCTmV1aW5zdC4gbm90d1xmUAorRWluIG1pdCBcZkJOZXVpbnN0LiBub3R3XGZQIG1hcmtpZXJ0ZXMgUGFrZXQgaXN0IGRlZmVrdCB1bmQgbXVzcyBlcm5ldXQKK2luc3RhbGxpZXJ0IHdlcmRlbi4gRGllc2UgUGFrZXRlIGv2bm5lbiBuaWNodCBlbnRmZXJudCB3ZXJkZW4sIGVzIHNlaSBkZW5uLAorU2llIGVyendpbmdlbiBkaWVzIG1pdCBkZXIgT3B0aW9uIFxmQlwtXC1mb3JjZVwtcmVtb3ZlXC1yZWluc3RyZXFcZlAuCisuCisuU0ggQUtUSU9ORU4KKy5UUCAKK1xmQlwtaVxmUCwgXGZCXC1cLWluc3RhbGxcZlAgXGZJUGFrZXRkYXRlaVxmUC4uLgorSW5zdGFsbGllcmUgZGFzIFBha2V0LiBGYWxscyBkaWUgXGZCXC1cLXJlY3Vyc2l2ZVxmUCBvZGVyIFxmQlwtUlxmUFwtT3B0aW9uIGFuZ2VnZWJlbgoraXN0LCBtdXNzIHNpY2ggXGZJUGFrZXRkYXRlaVxmUCBzdGF0dGRlc3NlbiBhdWYgZWluIFZlcnplaWNobmlzIGJlemllaGVuLgorCitEaWUgSW5zdGFsbGF0aW9uIGJlc3RlaHQgYXVzIGZvbGdlbmRlbiBTY2hyaXR0ZW46CisuYnIKKworXGZCMS5cZlAgRXh0cmFoaWVyZSBkaWUgU3RldWVyZGF0ZWllbiBhdXMgZGVtIG5ldWVuIFBha2V0LgorLmJyCisKK1xmQjIuXGZQIEZhbGxzIGVpbmUgYW5kZXJlIFZlcnNpb24gZGVzIGdsZWljaGVuIFBha2V0cyB2b3IgZGVyIGRlciBuZXVlbgorSW5zdGFsbGF0aW9uIGluc3RhbGxpZXJ0IHdhciwgZGFubiBm/GhyZSBkYXMgXGZJcHJlcm1cZlBcLVNrcmlwdCBkZXMgYWx0ZW4KK1Bha2V0ZXMgYXVzLgorLmJyCisKK1xmQjMuXGZQIEb8aHJlIGRhcyBcZklwcmVpbnN0XGZQXC1Ta3JpcHQgYXVzLCBmYWxscyBkaWVzIHZvbSBQYWtldCBiZXJlaXRnZXN0ZWxsdAord2lyZC4KKy5icgorCitcZkI0LlxmUCBFbnRwYWNrZSBkaWUgbmV1ZW4gRGF0ZWllbiB1bmQgc2ljaGVyZSBnbGVpY2h6ZWl0aWcgZGllIGFsdGVuIERhdGVpZW4sCitzbyBkYXNzIGRpZXNlLCBmYWxscyBldHdhcyBzY2hpZWYgZ2VodCwgd2llZGVyaGVyZ2VzdGVsbHQgd2VyZGVuIGv2bm5lbi4KKy5icgorCitcZkI1LlxmUCBGYWxscyBlaW5lIGFuZGVyZSBWZXJzaW9uIGRlcyBnbGVpY2hlbiBQYWtldHMgdm9yIGRlciBkZXIgbmV1ZW4KK0luc3RhbGxhdGlvbiBpbnN0YWxsaWVydCB3YXIsIGRhbm4gZvxocmUgZGFzIFxmSXBvc3RybVxmUFwtU2tyaXB0IGRlcyBhbHRlbgorUGFrZXRlcyBhdXMuIEJlYWNodGVuIFNpZSwgZGFzcyBkaWVzZXMgU2tyaXB0IG5hY2ggZGVtIFxmSXByZWluc3RcZlBcLVNrcmlwdCBkZXMKK25ldWVuIFBha2V0cyBhdXNnZWb8aHJ0IHdpcmQsIGRhIG5ldWUgRGF0ZWllbiB6ZWl0Z2xlaWNoIHp1IGRlciBFbnRmZXJudW5nCithbHRlciBEYXRlaWVuIGdlc2NocmllYmVuIHdlcmRlbi4KKy5icgorCitcZkI2LlxmUCBLb25maWd1cmllcmUgZGFzIFBha2V0LiBMZXNlbiBTaWUgXGZCXC1cLWNvbmZpZ3VyZVxmUCBm/HIgZGV0YWlsbGllcnRlCitJbmZvcm1hdGlvbmVuIHdpZSBkaWVzIGdlc2NoaWVodC4KKy5UUCAKK1xmQlwtXC11bnBhY2sgXGZQXGZJUGFrZXRkYXRlaVxmUCAuLi4KK0VudHBhY2tlIGRhcyBQYWtldCwgYWJlciBrb25maWd1cmllcmUgZXMgbmljaHQuIEZhbGxzIGRpZSBcZkJcLVwtcmVjdXJzaXZlXGZQCitvZGVyIFxmQlwtUlxmUFwtT3B0aW9uIGFuZ2VnZWJlbiBpc3QsIG11c3Mgc2ljaCBcZklQYWtldGRhdGVpXGZQIHN0YXR0ZGVzc2VuIGF1ZiBlaW4KK1ZlcnplaWNobmlzIGJlemllaGVuLgorLlRQIAorXGZCXC1cLWNvbmZpZ3VyZSBcZlBcZklQYWtldFxmUCAuLi58XGZCXC1hXGZQfFxmQlwtXC1wZW5kaW5nXGZQCitLb25maWd1cmllcnQgZWluIGVudHBhY2t0ZXMgYWJlciBub2NoIG5pY2h0IGtvbmZpZ3VyaWVydGVzIFBha2V0LiBGYWxscworXGZCXC1hXGZQIG9kZXIgXGZCXC1cLXBlbmRpbmdcZlAgYW5zdGVsbGUgdm9uIFxmSVBha2V0XGZQIGFuZ2VnZWJlbiBpc3QsIHdlcmRlbiBhbGxlCitlbnRwYWNrdGVuIGFiZXIgbmljaHQga29uZmlndXJpZXJ0ZW4gUGFrZXRlIGtvbmZpZ3VyaWVydC4KKworVW0gZWluIFBha2V0IHp1IHJla29uZmlndXJpZXJlbiwgZGFzcyBiZXJlaXRzIGtvbmZpZ3VyaWVydCB3dXJkZSwgdmVyd2VuZGVuCitTaWUgc3RhdHRkZXNzZW4gZGVuIEJlZmVobCBcZkJkcGtnXC1yZWNvbmZpZ3VyZVxmUCg4KS4KKworRGllIEtvbmZpZ3VyYXRpb24gYmVzdGVodCBhdXMgZm9sZ2VuZGVuIFNjaHJpdHRlbjoKKy5icgorCitcZkIxLlxmUCBFbnRwYWNrZSBkaWUgQ29uZmZpbGVzIHVuZCBzaWNoZXJlIGdsZWljaHplaXRpZyBkaWUgYWx0ZW4gQ29uZmZpbGVzLAorc28gZGFzcyBkaWVzZSwgZmFsbHMgZXR3YXMgc2NoaWVmIGdlaHQsIHdpZWRlcmhlcmdlc3RlbGx0IHdlcmRlbiBr9m5uZW4uCisuYnIKKworXGZCMi5cZlAgRvxocmUgZGFzIFxmSXBvc3RpbnN0XGZQXC1Ta3JpcHQgYXVzLCBmYWxscyBkaWVzIHZvbSBQYWtldCBiZXJlaXRnZXN0ZWxsdAord2lyZC4KKy5UUCAKK1xmQlwtXC10cmlnZ2Vyc1wtb25seVxmUCBcZklQYWtldFxmUC4uLnxcZkJcLWFcZlB8XGZCXC1cLXBlbmRpbmdcZlAKK1ZlcmFyYmVpdGUgbnVyIFRyaWdnZXIuIEFsbGUgYXVzc3RlaGVuZGVuIFRyaWdnZXIgd2VyZGVuIHZlcmFyYmVpdGV0LiBGYWxscworUGFrZXRuYW1lbiD8YmVyZ2ViZW4gd2VyZGVuLCB3ZXJkZW4gbnVyIGRpZSBUcmlnZ2VyIGRpZXNlciBQYWtldGUKK3ZlcmFyYmVpdGV0LCBqZWRlcyBnZW5hdSBlaW5tYWwgd28gbm90d2VuZGlnLiBEaWUgVmVyd2VuZHVuZyBkaWVzZXIgT3B0aW9uCitrYW5uIFBha2V0ZSBpbiBkaWUgdW56dWzkc3NpZ2VuIFN0YXRpIFxmQnRyaWdnZXJzXC1hd2FpdGVkXGZQIHVuZAorXGZCdHJpZ2dlcnNcLXBlbmRpbmdcZlAgYnJpbmdlbi4gRHVyY2ggZGllIEF1c2b8aHJ1bmcgdm9uILtcZkJkcGtnIFwtXC1jb25maWd1cmUKK1wtXC1wZW5kaW5nXGZQqyBrYW5uIGRpZXMgc3DkdGVyIGJlaG9iZW4gd2VyZGVuLgorLlRQIAorXGZCXC1yXGZQLCBcZkJcLVwtcmVtb3ZlXGZQLCBcZkJcLVBcZlAsIFxmQlwtXC1wdXJnZSBcZlBcZklQYWtldFxmUCAuLi58XGZCXC1hXGZQfFxmQlwtXC1wZW5kaW5nXGZQCitFbnRmZXJuZSBlaW4gaW5zdGFsbGllcnRlcyBQYWtldC4gXGZCXC1yXGZQIG9kZXIgXGZCXC1cLXJlbW92ZVxmUCBlbnRmZXJuZW4gYWxsZXMKK2F132VyIENvbmZmaWxlcy4gRGllcyBr9m5udGUgZGllIFJla29uZmlndXJhdGlvbiB2ZXJtZWlkZW4sIGZhbGxzIGRhcyBQYWtldAorc3DkdGVyIHdpZWRlciByZWluc3RhbGxpZXJ0IHdpcmQuIChDb25mZmlsZXMgc2luZCBkaWUgS29uZmlndXJhdGlvbnNkYXRlaWVuLAorZGllIGluIGRlciBcZklkZWJpYW4vY29uZmZpbGVzXGZQXC1TdGV1ZXJkYXRlaSBhdWZnZWb8aHJ0IHNpbmQpLiBcZkJcLVBcZlAgb2RlcgorXGZCXC1cLXB1cmdlXGZQIGVudGZlcm50IGFsbGVzLCBhdWNoIENvbmZmaWxlcy4gRmFsbHMgXGZCXC1hXGZQIG9kZXIgXGZCXC1cLXBlbmRpbmdcZlAKK2Fuc3RhdHQgZWluZXMgUGFrZXRuYW1lbnMgYW5nZWdlYmVuIHdlcmRlbiwgZGFubiB3ZXJkZW4gYWxsZSBQYWtldGUsIGRpZQorZW50cGFja3QgYWJlciB6dXIgRW50ZmVybnVuZyBvZGVyIHZvbGxzdORuZGlnZW4gTPZzY2h1bmcgaW4gZGVyIERhdGVpCitcZkkvdmFyL2xpYi9kcGtnL3N0YXR1c1xmUCBtYXJraWVydCBzaW5kLCBlbnRmZXJudCBiZXppZWh1bmdzd2Vpc2Ugdm9sbHN05G5kaWcKK2dlbPZzY2h0LiBIaW53ZWlzOiBFaW5pZ2UgS29uZmlndXJhdGlvbnNkYXRlaWVuIGv2bm5lbiBcZkJkcGtnXGZQIG5pY2h0IGJla2FubnQKK3NlaW4sIGRhIHNpZSBzZXBhcmF0IGR1cmNoIGRpZSBLb25maWd1cmF0aW9uc3NrcmlwdGUgYW5nZWxlZ3QgdW5kIHZlcndhbHRldAord2VyZGVuLiBJbiBkaWVzZW0gRmFsbCB3aXJkIFxmQmRwa2dcZlAgc2llIG5pY2h0IHNlbGJzdCBlbnRmZXJuZW4gc29uZGVybiBkYXMKK1NrcmlwdCBcZklwb3N0cm1cZlAgKGRhcyB2b24gXGZCZHBrZ1xmUCBhdWZnZXJ1ZmVuIHdpcmQpIGRlcyBQYWtldHMgbXVzcyBzaWNoCit35GhyZW5kIGRlcyB2b2xsc3TkbmRpZ2VuIEz2c2NoZW5zIHVtIGRhcyBFbnRmZXJuZW4ga/xtbWVybi4gTmF0/HJsaWNoCitiZXRyaWZmdCBkaWVzIG51ciBEYXRlaWVuIGluIGRlbiBTeXN0ZW12ZXJ6ZWljaG5pc3NlbiwgbmljaHQKK0tvbmZpZ3VyYXRpb25zZGF0ZWllbiwgZGllIGluIGRpZSBIb21lXC1WZXJ6ZWljaG5pc3NlIGRlciBpbmRpdmlkdWVsbGVuCitCZW51dHplciBnZXNjaHJpZWJlbiB3ZXJkZW4uCisKK0VudGZlcm51bmcgZWluZXMgUGFrZXRlcyBiZXN0ZWh0IGF1cyBkZW4gZm9sZ2VuZGVuIFNjaHJpdHRlOgorLmJyCisKK1xmQjEuXGZQIEb8aHJlIGRhcyBcZklwcmVybVxmUFwtU2tyaXB0IGF1cworLmJyCisKK1xmQjIuXGZQIEVudGZlcm5lIGRpZSBpbnN0YWxsaWVydGVuIERhdGVpZW4KKy5icgorCitcZkIzLlxmUCBG/GhyZSBkYXMgXGZJcG9zdHJtXGZQXC1Ta3JpcHQgYXVzCisuYnIKKy5UUCAKK1xmQlwtXC11cGRhdGVcLWF2YWlsXGZQLCBcZkJcLVwtbWVyZ2VcLWF2YWlsXGZQIFxmSVBhY2thZ2VzXC1EYXRlaVxmUAorQWt0dWFsaXNpZXJlIFxmQmRwa2dcZlBzIHVuZCBcZkJkc2VsZWN0XGZQcyBWZXJzdORuZG5pcyBkYXL8YmVyLCB3ZWxjaGUgUGFrZXRlCit2ZXJm/GdiYXIgc2luZC4gTWl0IGRlciBBa3Rpb24gXGZCXC1cLW1lcmdlXC1hdmFpbFxmUCB3aXJkIGFsdGUgSW5mb3JtYXRpb24gbWl0CitkZXIgSW5mb3JtYXRpb24gYXVzIGRlciBcZklQYWNrYWdlc1wtRGF0ZWlcZlAgenVzYW1tZW5nZWb8aHJ0LiBNaXQgZGVyIEFrdGlvbgorXGZCXC1cLXVwZGF0ZVwtYXZhaWxcZlAgd2lyZCBkaWUgYWx0ZSBJbmZvcm1hdGlvbiBkdXJjaCBkaWUgSW5mb3JtYXRpb24gYXVzIGRlcgorXGZJUGFja2FnZXNcLURhdGVpXGZQIGVyc2V0enQuIERpZSBtaXQgRGViaWFuIHZlcnRyaWViZW5lIFxmSVBhY2thZ2VzXC1EYXRlaVxmUAoraGVp33QgZWluZmFjaCBcZklQYWNrYWdlc1xmUC4gXGZCZHBrZ1xmUCBo5Gx0IHNlaW5lIEF1ZnplaWNobnVuZ2VuIPxiZXIgZGllCit2ZXJm/GdiYXJlbiBQYWtldGUgaW4gXGZJL3Zhci9saWIvZHBrZy9hdmFpbGFibGVcZlAuCisKK0VpbiBlaW5mYWNoZXIgQmVmZWhsLCB1bSBkaWUgRGF0ZWkgXGZJYXZhaWxhYmxlXGZQIGluIGVpbmVtIFJ1dHNjaCB6dSBob2xlbiB1bmQKK3p1IGFrdHVhbGlzaWVyZW4gaXN0IFxmQmRzZWxlY3QgdXBkYXRlXGZQLiBCZWFjaHRlbiBTaWUsIGRhc3MgZGllc2UgRGF0ZWkKK25haGV6dSBudXR6bG9zIGlzdCwgZmFsbHMgU2llIG5pY2h0IFxmQmRzZWxlY3RcZlAgc29uZGVybiBlaW5lIEFQVFwtYmFzaWVydGUKK09iZXJmbORjaGUgdmVyd2VuZGVuOiBBUFQgdmVyZvxndCD8YmVyIHNlaW4gZWlnZW5lcyBTeXN0ZW0sIGRpZSB2ZXJm/GdiYXJlbgorUGFrZXRlIHp1IPxiZXJ3YWNoZW4uCisuVFAgCitcZkJcLUFcZlAsIFxmQlwtXC1yZWNvcmRcLWF2YWlsXGZQIFxmSVBha2V0ZGF0ZWlcZlAgLi4uCitBa3R1YWxpc2llcmUgbWl0IGRlbiBJbmZvcm1hdGlvbmVuIGF1cyBkZW0gUGFrZXQgXGZJUGFrZXRkYXRlaVxmUCBcZkJkcGtnXGZQcyB1bmQKK1xmQmRzZWxlY3RcZlBzIFZlcnN05G5kbmlzIGRhcvxiZXIsIHdlbGNoZSBQYWtldGUgdmVyZvxnYmFyIHNpbmQuIEZhbGxzIGRpZQorXGZCXC1cLXJlY3Vyc2l2ZVxmUCBvZGVyIFxmQlwtUlxmUFwtT3B0aW9uIGFuZ2VnZWJlbiBpc3QsIG11c3Mgc2ljaCBcZklQYWtldGRhdGVpXGZQCitzdGF0dGRlc3NlbiBhdWYgZWluIFZlcnplaWNobmlzIGJlemllaGVuLgorLlRQIAorXGZCXC1cLWZvcmdldFwtb2xkXC11bmF2YWlsXGZQCitKZXR6dCBcZkJ2ZXJhbHRldFxmUCB1bmQgb2huZSBGdW5rdGlvbiwgZGEgXGZCZHBrZ1xmUCBhdXRvbWF0aXNjaCBuaWNodAoraW5zdGFsbGllcnRlIG5pY2h0IHZlcmb8Z2JhcmUgUGFrZXRlIHZlcmdpc3N0LgorLlRQIAorXGZCXC1cLWNsZWFyXC1hdmFpbFxmUAorTPZzY2hlIGRpZSBleGlzdGllcmVuZGVuIEluZm9ybWF0aW9uZW4gZGFy/GJlciwgd2VsY2hlIFBha2V0ZSB2ZXJm/GdiYXIKK3NpbmQuCisuVFAgCitcZkJcLUNcZlAsIFxmQlwtXC1hdWRpdFxmUAorU3VjaGUgbmFjaCBQYWtldGUsIGRpZSBpbiBJaHJlbSBTeXN0ZW0gbnVyIHRlaWx3ZWlzZSBpbnN0YWxsaWVydAord3VyZGVuLiBcZkJkcGtnXGZQIHdpcmQgVm9yc2NobORnZSBtYWNoZW4sIHdhcyBtaXQgaWhuZW4gZ2VzY2hlaGVuIHNvbGwsIHVtIHNpZQoraW4gRnVua3Rpb24genUgYnJpbmdlbi4KKy5UUCAKK1xmQlwtXC1nZXRcLXNlbGVjdGlvbnNcZlAgW1xmSVBha2V0XC1OYW1lXC1NdXN0ZXJcZlAuLi5dCitIb2xlIExpc3RlIHZvbiBQYWtldGF1c3dhaGxlbiB1bmQgc2NocmVpYmUgc2llIGF1ZiBkaWUgU3RhbmRhcmRhdXNnYWJlLiBPaG5lCitNdXN0ZXIgd2VyZGVuIG5pY2h0XC1pbnN0YWxsaWVydGUgUGFrZXRlIChkLmguIHNvbGNoZSwgZGllIHZvcmhlcgoru3ZvbGxzdORuZGlnIGdlbPZzY2h0qyB3dXJkZW4pIG5pY2h0IGFuZ2V6ZWlndC4KKy5UUCAKK1xmQlwtXC1zZXRcLXNlbGVjdGlvbnNcZlAKK1NldHplIGRpZSBQYWtldGF1c3dhaGwgZHVyY2ggRWlubGVzZW4gZWluZXIgRGF0ZWkgdm9uIGRlcgorU3RhbmRhcmRlaW5nYWJlLiBEaWVzZSBEYXRlaSBzb2xsdGUgaW0gRm9ybWF0ILtcZklQYWtldFxmUCBcZkladXN0YW5kXGZQqyBzZWluLAord29iZWkgWnVzdGFuZCBlaW5lciBhdXMgXGZCaW5zdGFsbFxmUCwgXGZCaG9sZFxmUCwgXGZCZGVpbnN0YWxsXGZQIG9kZXIgXGZCcHVyZ2VcZlAKK2lzdC4gTGVlcnplaWxlbiB1bmQgS29tbWVudGFyemVpbGVuIChiZWdpbm5lbmQgbWl0ILsjqykgc2luZCBhdWNoIGVybGF1YnQuCisuVFAgCitcZkJcLVwtY2xlYXJcLXNlbGVjdGlvbnNcZlAKK1NldHplIGRlbiBlcmJldGVuZW4gWnVzdGFuZCB2b24gamVkZW0gbmljaHRcLWVzc2VuemllbGxlbiBQYWtldCBhdWYKK7tEZWluc3RhbGxhdGlvbqsuIERpZXMgaXN0IGRhenUgZ2VkYWNodCwgZGlyZWt0IHZvciBcLVwtc2V0XC1zZWxlY3Rpb25zCit2ZXJ3ZW5kZXQgenUgd2VyZGVuLCB1bSBqZWRlcyBQYWtldCwgZGFzcyBuaWNodCBpbiBkZXIgTGlzdGUgdm9uCitcLVwtc2V0XC1zZWxlY3Rpb25zIHZvcmtvbW10LCB6dSBkZWluc3RhbGxpZXJlbi4KKy5UUCAKK1xmQlwtXC15ZXRcLXRvXC11bnBhY2tcZlAKK1N1Y2h0IG5hY2ggUGFrZXRlbiBkaXIgenVyIEluc3RhbGxhdGlvbiBhdXNnZXfkaGx0IHd1cmRlbiwgZGllIGFiZXIgYXVzCitpcmdlbmRlaW5lbSBHcnVuZCBub2NoIG5pY2h0IGluc3RhbGxpZXJ0IHd1cmRlbi4KKy5UUCAKKy5UUCAKK1xmQlwtXC1wcmludFwtYXJjaGl0ZWN0dXJlXGZQCitHZWJlIGRpZSBBcmNoaXRla3R1ciBkZXIgUGFrZXRlIGF1cywgZGllIFxmQmRwa2dcZlAgaW5zdGFsbGllcnQgKGJlaXNwaWVsc3dlaXNlCiu7aTM4NqspLgorLlRQIAorXGZCXC1cLWNvbXBhcmVcLXZlcnNpb25zIFxmUFxmSVZlcjEgT3AgVmVyMlxmUAorVmVyZ2xlaWNoZSBWZXJzaW9uc251bW1lcm4sIHdvYmVpIFxmSU9wXGZQIGVpbiBiaW7kcmVyIE9wZXJhdG9yIGlzdC4gXGZCZHBrZ1xmUAorbGllZmVydCBFcmZvbGcgKE51bGxlcmdlYm5pcykgZmFsbHMgZGllIGFuZ2VnZWJlbmUgQmVkaW5ndW5nIGVyZvxsbHQgaXN0IHVuZAorZWluZW4gRmVobGVyIChuaWNodFwtTnVsbFwtRXJnZWJuaXMpIGFuZGVybmZhbGxzLiBFcyBnaWJ0IHp3ZWkgR3J1cHBlbiB2b24KK09wZXJhdG9yZW4sIGRpZSBzaWNoIGluIGRlciBCZWhhbmRsdW5nIHZvbiBsZWVyZW4gXGZJVmVyMVxmUCBvZGVyIFxmSVZlcjJcZlAKK3VudGVyc2NoZWlkZW4uIERpZSBmb2xnZW5kZW4gYmVoYW5kZWxuIGxlZXJlIFZlcnNpb25lbiBhbHMgavxuZ2VyIGFscyBqZWRlCithbmRlcmUgVmVyc2lvbjogXGZCbHQgbGUgZXEgbmUgZ2UgZ3RcZlAuIERpZSBmb2xnZW5kZW4gYmVoYW5kZWxuIGVpbmUgbGVlcmUKK1ZlcnNpb24gYWxzIORsdGVyIGFscyBqZWRlIFZlcnNpb246IFxmQmx0XC1ubCBsZVwtbmwgZ2VcLW5sIGd0XC1ubFxmUC4gRGllCitmb2xnZW5kZW4gc2luZCBudXIgYXVzIEtvbXBhdGliaWxpdOR0IG1pdCBkZXIgU3RldWVyZGF0ZWlzeW50YXgKK2JlcmVpdGdlc3RlbGx0OiBcZkI8IDw8IDw9ID0gPj0gPj4gPlxmUC4KKy5UUCAKK1xmQlwtXC1jb21tYW5kXC1mZCBcZlBcZkluXGZQCitBa3plcHRpZXJ0IGVpbmUgUmVpaGUgdm9uIEJlZmVobGVuIGFuIEVpbmdhYmVcLURhdGVpZGVza3JpcHRvciBcZkluXGZQLiBIaW53ZWlzOgorWnVz5HR6bGljaGUgYXVmIGRlciBLb21tYW5kb3plaWxlIHVuZCBkdXJjaCBkaWVzZW4gRGF0ZWlkZXNrcmlwdG9yIGdlc2V0enRlCitPcHRpb25lbiB3ZXJkZW4gbmljaHQgZvxyIG5hY2hmb2xnZW5kZSBCZWZlaGxlLCBkaWUgaW0gZ2xlaWNoZW4gTGF1ZgorYXVzZ2Vm/GhydCB3ZXJkZW4sIHp1cvxja2dlc2V0enQuCisuVFAgCitcZkJcLVwtaGVscFxmUAorWmVpZ2UgZWluZSBrdXJ6ZSBIaWxmZW5hY2hyaWNodCBhbi4KKy5UUCAKK1xmQlwtXC1mb3JjZVwtaGVscFxmUAorR2ViZSBIaWxmZSD8YmVyIGRpZSBcZkJcLVwtZm9yY2VcLVxmUFxmSVNhY2hlXGZQXC1PcHRpb25lbi4KKy5UUCAKK1xmQlwtRGhcZlAsIFxmQlwtXC1kZWJ1Zz1oZWxwXGZQCitHaWIgSGlsZmUg/GJlciBEZWJ1Z2dpbmdcLU9wdGlvbmVuLgorLlRQIAorXGZCXC1cLXZlcnNpb25cZlAKK1plaWdlIFxmQmRwa2dcZlAgVmVyc2lvbnNpbmZvcm1hdGlvbmVuIGFuLgorLlRQIAorXGZCZHBrZ1wtZGViXC1Ba3Rpb25lblxmUAorTGVzZW4gU2llIFxmQmRwa2dcLWRlYlxmUCgxKSBm/HIgd2VpdGVyZSBJbmZvcm1hdGlvbmVuIPxiZXIgZGllIGZvbGdlbmRlbgorQWt0aW9uZW4uCisKKy5uZgorXGZCXC1iXGZQLCBcZkJcLVwtYnVpbGRcZlAgXGZJVmVyemVpY2huaXNcZlAgW1xmSUFyY2hpdlxmUHxcZklWZXJ6ZWljaG5pc1xmUF0KKyAgICBCYXVlIGVpbiBkZWJcLVBha2V0LgorXGZCXC1jXGZQLCBcZkJcLVwtY29udGVudHNcZlAgXGZJQXJjaGl2XGZQCisgICAgTGlzdGUgZGVuIEluaGFsdCBlaW5lcyBkZWJcLVBha2V0ZXMgYXVmLgorXGZCXC1lXGZQLCBcZkJcLVwtY29udHJvbFxmUCBcZklEYXRlaW5hbWVcZlAgW1xmSVZlcnplaWNobmlzXGZQXQorICAgIEV4dHJhaGllcmUgU3RldWVyaW5mb3JtYXRpb25lbiB2b24gZWluZW0gUGFrZXQuCitcZkJcLXhcZlAsIFxmQlwtXC1leHRyYWN0XGZQIFxmSUFyY2hpdiBWZXJ6ZWljaG5pc1xmUAorICAgIEV4dHJhaGllcmUgZGllIHZvbSBQYWtldCBlbnRoYWx0ZW5lbiBEYXRlaWVuLgorXGZCXC1mXGZQLCBcZkJcLVwtZmllbGRcZlAgXGZJQXJjaGl2XGZQIFtcZklTdGV1ZXJmZWxkXGZQXSAuLi4KKyAgICBaZWlnZSBkYXMvZGllIFN0ZXVlcmZlbGQoZXIpIGVpbmVzIFBha2V0ZXMgYW4uCitcZkJcLVwtZnN5c1wtdGFyZmlsZVxmUCBcZklBcmNoaXZcZlAKKyAgICBaZWlnZSBkaWUgdm9uIGVpbmVtIERlYmlhblwtUGFrZXQgZW50aGFsdGVuZSBEYXRlaXN5c3RlbVwtVGFyZGF0ZWkgYW4uCitcZkJcLUlcZlAsIFxmQlwtXC1pbmZvXGZQIFxmSUFyY2hpdlxmUCBbXGZJU3RldWVyZGF0ZWlcZlBdCisgICAgWmVpZ2UgSW5mb3JtYXRpb25lbiD8YmVyIGVpbiBQYWtldC4KKy5maQorCisuVFAgCitcZkJkcGtnXC1xdWVyeVwtQWt0aW9uZW5cZlAKK0xlc2VuIFNpZSBcZkJkcGtnXC1xdWVyeVxmUCgxKSBm/HIgd2VpdGVyZSBJbmZvcm1hdGlvbmVuIPxiZXIgZGllIGZvbGdlbmRlbgorQWt0aW9uZW4uCisKKy5uZgorCitcZkJcLWxcZlAsIFxmQlwtXC1saXN0XGZQIFxmSVBha2V0bmFtZW5cLU11c3RlclxmUCAuLi4KKyAgICBMaXN0ZSBhdWYgZGFzIPxiZXJnZWJlbmUgU3VjaG11c3RlciBwYXNzZW5kZSBQYWtldGUgYXVmLgorXGZCXC1zXGZQLCBcZkJcLVwtc3RhdHVzXGZQIFxmSVBha2V0bmFtZVxmUCAuLi4KKyAgICBCZXJpY2h0ZSBkZW4gU3RhdHVzIGRlcyBzcGV6aWZpemllcnRlbiBQYWtldHMuCitcZkJcLUxcZlAsIFxmQlwtXC1saXN0ZmlsZXNcZlAgXGZJUGFrZXRuYW1lXGZQIC4uLgorICAgIExpc3RlIGRpZSBhdXMgXGZCUGFrZXRuYW1lXGZQIGF1ZiBJaHJlbSBTeXN0ZW0gaW5zdGFsbGllcnRlbiBEYXRlaWVuIGF1Zi4KK1xmQlwtU1xmUCwgXGZCXC1cLXNlYXJjaFxmUCBcZklEYXRlaW5hbWVuXC1TdWNobXVzdGVyXGZQIC4uLgorICAgIFN1Y2hlIG5hY2ggZWluZW0gRGF0ZWluYW1lbiBpbiBpbnN0YWxsaWVydGVuIFBha2V0ZW4uCitcZkJcLXBcZlAsIFxmQlwtXC1wcmludFwtYXZhaWxcZlAgXGZJUGFrZXRuYW1lXGZQCisgICAgWmVpZ2UgRGV0YWlscyD8YmVyIFxmSVBha2V0bmFtZVxmUCwgd2llIGluIFxmSS92YXIvbGliL2Rwa2cvYXZhaWxhYmxlXGZQCisgICAgZ2VmdW5kZW4uIEJlbnV0emVyIHZvbiBBUFRcLWJhc2llcnRlbiBPYmVyZmzkY2hlbiBzb2xsdGVuIHN0YXR0ZGVzc2VuCisgICAgXGZCYXB0XC1jYWNoZSBzaG93XGZQIFxmSVBha2V0bmFtZVxmUCB2ZXJ3ZW5kZW4uCisuZmkKKy4KKy5TSCBPUFRJT05FTgorQWxsZSBPcHRpb25lbiBr9m5uZW4gYXVmIGRlciBLb21tYW5kb3plaWxlLCBpbiBkZXIKK1xmQmRwa2dcZlBcLUtvbmZpZ3VyYXRpb25zZGF0ZWkgXGZJL2V0Yy9kcGtnL2Rwa2cuY2ZnXGZQIG9kZXIgaW4gZGVuIERhdGVpZW4gaW0KK0tvbmZpZ3VyYXRpb25zdmVyemVpY2huaXMgXGZJL2V0Yy9kcGtnL2Rwa2cuY2ZnLmQvXGZQIGFuZ2VnZWJlbiB3ZXJkZW4uIEplZGUKK1plaWxlIGluIGRlciBLb25maWd1cmF0aW9uc2RhdGVpIGlzdCBlbnR3ZWRlciBlaW5lIE9wdGlvbiAoZXhha3QgZGllIGdsZWljaGUKK3dpZSBkaWUgQmVmZWhsc3plaWxlbm9wdGlvbiBudXIgb2huZSBm/GhyZW5kZSBHZWRhbmtlbnN0cmljaGUpIG9kZXIgZWluCitLb21tZW50YXIgKGZhbGxzIHNpZSBtaXQgXGZCI1xmUCBiZWdpbm50KS4KKy5icgorLlRQIAorXGZCXC1cLWFib3J0XC1hZnRlcj1cZlBcZklaYWhsXGZQCivEbmRlcmUgbmFjaCB3aWUgdmllbGVuIEZlaGxlcm4gXGZCZHBrZ1xmUCBhYmJyZWNoZW4gd2lyZC4gRGVyIFN0YW5kYXJkd2VydCBpc3QKKzUwLgorLlRQIAorXGZCXC1CXGZQLCBcZkJcLVwtYXV0b1wtZGVjb25maWd1cmVcZlAKK1dlbm4gZWluIFBha2V0IGVudGZlcm50IHdpcmQgYmVzdGVodCBkaWUgTfZnbGljaGtlaXQsIGRhc3MgZWluIGFuZGVyZXMKK2luc3RhbGxpZXJ0ZXMgUGFrZXQgdm9uIGRlbSBlbnRmZXJudGVuIFBha2V0IGFiaORuZ3QuIERpZSBBbmdhYmUgZGllc2VyCitPcHRpb24gZvxocnQgenVyIGF1dG9tYXRpc2NoZW4gRGVrb25maWd1cmF0aW9uIGRlcyBQYWtldGVzLCBkYXMgdm9uIGRlbQorZW50ZmVybnRlbiBQYWtldCBhYmjkbmd0LgorLlRQIAorXGZCXC1EXGZQXGZJT2t0YWxcZlBcZkIsIFwtXC1kZWJ1Zz1cZlBcZklPa3RhbFxmUAorU2NoYWx0ZSBEZWJ1Z2dpbmcgZWluLiBcZklPa3RhbFxmUCB3aXJkIGR1cmNoIGJpdHdlaXNlIE9kZXJcLVZlcmtu/HBmdW5nIGRlcgorZ2V3/G5zY2h0ZW4gV2VydGUgdm9uIGRlciBuYWNoZm9sZ2VuZGVuIExpc3RlIGdlYmlsZGV0IChiZWFjaHRlbiBTaWUsIGRhc3MKK3NpY2ggZGllc2UgV2VydGUgaW4genVr/G5mdGlnZW4gVmVy9mZmZW50bGljaHVuZ2VuIHZlcuRuZGVybiBr9m5uZW4pLiBcZkJcLURoXGZQCitvZGVyIFxmQlwtXC1kZWJ1Zz1oZWxwXGZQIHplaWdlbiBkaWVzZSBEZWJ1Z2dpbmdcLVdlcnRlIGFuLgorCisgIE51bW1lciAgQmVzY2hyZWlidW5nCisgICAgICAxICAgQWxsZ2VtZWluIGhpbGZyZWljaGUgRm9ydHNjaHJpdHRzaW5mb3JtYXRpb25lbgorICAgICAgMiAgIEF1ZnJ1ZiB1bmQgU3RhdHVzIGRlciBCZXRyZXVlcnNrcmlwdGUKKyAgICAgMTAgICBBdXNnYWJlIGb8ciBqZWRlIHZlcmFyYmVpdGV0ZSBEYXRlaQorICAgIDEwMCAgIFVtZmFuZ3JlaWNoZSBBdXNnYWJlIGb8ciBqZWRlIHZlcmFyYmVpdGV0ZSBEYXRlaQorICAgICAyMCAgIEF1c2dhYmUgZvxyIGplZGUgS29uZmlndXJhdGlvbnNkYXRlaQorICAgIDIwMCAgIFVtZmFuZ3JlaWNoZSBBdXNnYWJlIGb8ciBqZWRlIEtvbmZpZ3VyYXRpb25zZGF0ZWkKKyAgICAgNDAgICBBYmjkbmdpZ2tlaXRlbiB1bmQgS29uZmxpa3RlCisgICAgNDAwICAgVW1mYW5ncmVpY2hlIEFiaORuZ2lna2VpdGVuL0tvbmZsaWt0ZVwtQXVzZ2FiZQorICAxMDAwMCAgIFRyaWdnZXJcLUFrdGl2aWVydW5nIHVuZCBcLVZlcmFyYmVpdHVuZworICAyMDAwMCAgIFVtZmFuZ3JlaWNoZSBBdXNnYWJlIGJlevxnbGljaCBUcmlnZ2VyCisgIDQwMDAwICAgQWxiZXJuZSBNZW5nZSBhbiBBdXNnYWJlIGJlevxnbGljaCBUcmlnZ2VyCisgICAxMDAwICAgVW1mYW5ncmVpY2hlcyBHZWxhYmVyIGJlaXNwaWVsc3dlaXNlIPxiZXIgZGFzIGRwa2cvaW5mb1wtVmVyemVpY2huaXMKKyAgIDIwMDAgICBWZXJy/GNrdGUgTWVuZ2VuIGFuIEdlbGFiZXIKKy5UUCAKK1xmQlwtXC1mb3JjZVwtXGZQXGZJU2FjaGVuXGZQLCBcZkJcLVwtbm9cLWZvcmNlXC1cZlBcZklTYWNoZW5cZlAsIFxmQlwtXC1yZWZ1c2VcLVxmUFxmSVNhY2hlblxmUAorCitFcnp3aW5nZSBvZGVyIHZlcndlaWdlcmUgKFxmQm5vXC1mb3JjZVxmUCB1bmQgXGZCcmVmdXNlXGZQIGJlZGV1dGVuIGRhcyBnbGVpY2hlKQorYmVzdGltbXRlIFNhY2hlbi4gXGZJU2FjaGVuXGZQIGlzdCBlaW5lIEtvbW1hXC1zZXBhcmllcnRlIExpc3RlIHZvbiBEaW5nZW4sIGRpZQoraW0gZm9sZ2VuZGVuIGJlc2NocmllYmVuIHNpbmQuIFxmQlwtXC1mb3JjZVwtaGVscFxmUCB6ZWlndCBlaW5lIE5hY2hyaWNodCBhbiwgZGllCitkaWVzZSBiZXNjaHJlaWJ0LiBNaXQgKCopIG1hcmtpZXJ0ZSBEaW5nZSB3ZXJkZW4gc3RhbmRhcmRt5N9pZyBlcnp3dW5nZW4uCisKK1xmSVdhcm51bmcuIERpZXNlIE9wdGlvbmVuIHNpbmQgaGF1cHRz5GNobGljaCBm/HIgZGVuIEVpbnNhdHogZHVyY2ggRXhwZXJ0ZW4KK2dlZGFjaHQuIERlciBFaW5zYXR6IG9obmUga29tcGxldHRlcyBWZXJzdORuZG5pcyBkZXIgRWZmZWt0ZSBrYW5uIElocgorZ2VzYW10ZXMgU3lzdGVtIHplcnN09nJlbi5cZlAKKworXGZCYWxsXGZQOiBTY2hhbHRldCBhbGxlILtmb3JjZatcLU9wdGlvbmVuIGVpbiAob2RlciBhdXMpLgorCitcZkJkb3duZ3JhZGVcZlAoKik6IEluc3RhbGxpZXJlIGVpbiBQYWtldCwgc2VsYnN0IHdlbm4gZWluZSBuZXVlcmUgVmVyc2lvbgorZGF2b24gYmVyZWl0cyBpbnN0YWxsaWVydCBpc3QuCisKK1xmSVdhcm51bmc6IERlcnplaXQgZvxocnQgRHBrZyBrZWluZSBBYmjkbmdpZ2tlaXRz/GJlcnBy/GZ1bmcgYmVpIGRlcgorSW5zdGFsbGF0aW9uIORsdGVyZXIgVmVyc2lvbmVuIChhbHMgYmVyZWl0cyBpbnN0YWxsaWVydCkgZHVyY2gKKyhzb2cuIERvd25ncmFkZSkgdW5kIHdpcmQgU2llIGRhaGVyIG5pY2h0IHdhcm5lbiwgZmFsbHMgZGFkdXJjaCBkaWUKK0FiaORuZ2lna2VpdCBlaW5lcyBhbmRlcmVuIFBha2V0cyBuaWNodCBtZWhyIGVyZvxsbHQgaXN0LiBEaWVzIGthbm4KK2VybnN0aGFmdGUgU2VpdGVuZWZmZWt0ZSBoYWJlbiwgZWluIERvd25ncmFkZSBlaW5lciBlc3NlbnppZWxsZW4KK1N5c3RlbWtvbXBvbmVudGUga2FubiBJaHIgZ2VzYW10ZXMgU3lzdGVtIHVuYnJhdWNoYmFyIG1hY2hlbi4gVmVyd2VuZGVuIFNpZQorZGllc2UgT3B0aW9uIG1pdCBWb3JzaWNodC5cZlAKKworXGZCY29uZmlndXJlXC1hbnlcZlA6IEtvbmZpZ3VyaWVyZSBhdWNoIGplZGVzIGVudHBhY2t0ZSwgYWJlciB1bmtvbmZpZ3VyaWVydGUKK1Bha2V0IHZvbiBkZW0gZGFzIGFrdHVlbGxlIFBha2V0IGFiaORuZ3QuCisKK1xmQmhvbGRcZlA6IFZlcmFyYmVpdGUgYXVjaCBQYWtldGUsIGRpZSBtaXQgu2hhbHRlbqsgbWFya2llcnQgc2luZC4KKworXGZCcmVtb3ZlXC1yZWluc3RyZXFcZlA6IEVudGZlcm5lIGVpbiBQYWtldCwgc2VsYnN0IGZhbGxzIGVzIGRlZmVrdCBpc3QgdW5kIHp1cgorTmV1aW5zdGFsbGF0aW9uIG1hcmtpZXJ0IGlzdC4gRGllcyBrYW5uIGJlaXNwaWVsc3dlaXNlIGRhenUgZvxocmVuLCBkYXNzCitUZWlsZSBkZXMgUGFrZXRzIGF1ZiBkZW0gU3lzdGVtIGJsZWliZW4gdW5kIHZvbiBcZkJkcGtnXGZQIHZlcmdlc3NlbiB3ZXJkZW4uCisKK1xmQnJlbW92ZVwtZXNzZW50aWFsXGZQOiBFbnRmZXJuZSwgc2VsYnN0IGZhbGxzIGRhcyBQYWtldCBhbHMgZXNzZW56aWVsbAorYmV0cmFjaHRldCB3aXJkLiBFc3NlbnppZWxsZSBQYWtldGUgZW50aGFsdGVuIGhhdXB0c+RjaGxpY2ggc2VocgorZ3J1bmRsZWdlbmRlIFVuaXhcLUJlZmVobGUuIERpZXNlIHp1IGVudGZlcm5lbiBrYW5uIGRhenUgZvxocmVuLCBkYXNzIGRhcworZ2VzYW10ZSBTeXN0ZW0gbmljaHQgbWVociBhcmJlaXRldCBcLSB2ZXJ3ZW5kZW4gU2llIGRpZXNlIE9wdGlvbiBkYWhlciBtaXQKK1ZvcnNpY2h0LgorCitcZkJkZXBlbmRzXGZQOiBWZXJ3YW5kbGUgYWxsZSBBYmjkbmdpZ2tlaXRzcHJvYmxlbWUgaW4gV2FybnVuZ2VuLgorCitcZkJkZXBlbmRzXC12ZXJzaW9uXGZQOiBJZ25vcmllcmUgVmVyc2lvbmVuIGJlaSBkZXIgUHL8ZnVuZyB2b24gQWJo5G5naWdrZWl0ZW4uCisKK1xmQmJyZWFrc1xmUDogSW5zdGFsbGllcmUsIHNlbGJzdCBmYWxscyBkaWVzIGVpbiBhbmRlcmVzIFBha2V0IGJlc2No5GRpZ3QuCisKK1xmQmNvbmZsaWN0c1xmUDogSW5zdGFsbGllcmUsIHNlbGJzdCB3ZW5uIGVzIG1pdCBlaW5lbSBhbmRlcmVuIFBha2V0IGluCitLb25mbGlrdCBzdGVodC4gRGllcyBpc3QgZ2Vm5GhybGljaCwgZGEgZGllcyBnZXf2aG5saWNoIGRhenUgZvxocnQsIGRhc3MKK2VpbmlnZSBEYXRlaWVuIPxiZXJzY2hyaWViZW4gd2VyZGVuLgorCitcZkJjb25mbWlzc1xmUDogSW5zdGFsbGllcmUgaW1tZXIgZWluIGZlaGxlbmRlcyBDb25mZmlsZS4gRGllcyBpc3QgZ2Vm5GhybGljaCwKK2RhIGVzIGJlZGV1dGV0LCBkYXNzIGVpbmUgxG5kZXJ1bmcgKGRpZSBFbnRmZXJudW5nKSBhbiBkZXIgRGF0ZWkgbmljaHQKK2VyaGFsdGVuIHdpcmQuCisKK1xmQmNvbmZuZXdcZlA6IEZhbGxzIGVpbmUgQ29uZmZpbGUgbW9kaWZpemllcnQgd3VyZGUsIGluc3RhbGxpZXJlIGltbWVyIGRpZQorbmV1ZSBWZXJzaW9uIG9obmUgUvxja2ZyYWdlLCBlcyBzZWkgZGVubiwgXGZCXC1cLWZvcmNlXC1jb25mZGVmXGZQIGlzdCBlYmVuZmFsbHMKK2FuZ2VnZWJlbiwgaW4gd2VsY2hlbSBGYWxsZSBkaWUgU3RhbmRhcmRha3Rpb24gYmV2b3J6dWd0IHdpcmQuCisKK1xmQmNvbmZvbGRcZlA6IEZhbGxzIGVpbmUgQ29uZmZpbGUgbW9kaWZpemllcnQgd3VyZGUsIGJlaGFsdGUgaW1tZXIgZGllIGFsdGUKK1ZlcnNpb24gb2huZSBS/GNrZnJhZ2UsIGVzIHNlaSBkZW5uLCBcZkJcLVwtZm9yY2VcLWNvbmZkZWZcZlAgaXN0IGViZW5mYWxscworYW5nZWdlYmVuLCBpbiB3ZWxjaGVtIEZhbGxlIGRpZSBTdGFuZGFyZGFrdGlvbiBiZXZvcnp1Z3Qgd2lyZC4KKworXGZCY29uZmRlZlxmUDogRmFsbHMgZWluZSBDb25mZmlsZSB2ZXLkbmRlcnQgd3VyZGUsIHfkaGxlIGltbWVyIGRpZQorU3RhbmRhcmRha3Rpb24uIEZhbGxzIGVzIGtlaW5lIFN0YW5kYXJkYWt0aW9uIGdpYnQsIGhhbHRlIGFuIHVtIGRlbiBCZW51dHplcgorenUgZnJhZ2VuLCBlcyBzZWkgZGVubiwgXGZCXC1cLWZvcmNlXC1jb25mbmV3XGZQIG9kZXIgXGZCXC1cLWZvcmNlXC1jb25mb2xkXGZQIHNpbmQKK2ViZW5mYWxscyBhbmdlZ2ViZW4sIGluIHdlbGNoZW0gRmFsbGUgZGllcyB2ZXJ3ZW5kZXQgd2lyZCwgdW0gZGllCitsZXR6dGVuZGxpY2hlIEFrdGlvbiB6dSBiZXN0aW1tZW4uCisKK1xmQmNvbmZhc2tcZlA6IEZhbGxzIGVpbmUgQ29uZmZpbGUgdmVy5G5kZXJ0IHd1cmRlLCBiaWV0ZSBpbW1lciBhbiwgc2llIGR1cmNoCitkaWUgVmVyc2lvbiBhdXMgZGVtIFBha2V0IHp1IGVyc2V0emVuLCBzZWxic3QgZmFsbHMgc2ljaCBkaWUgVmVyc2lvbiBpbiBkZW0KK1Bha2V0IG5pY2h0IGdl5G5kZXJ0IGhhdC4gRmFsbHMgYXVjaCBlaW5lciB2b24gXGZCXC1cLWZvcmNlXC1jb25mbWlzc1xmUCwKK1xmQlwtXC1mb3JjZVwtY29uZm5ld1xmUCwgXGZCXC1cLWZvcmNlXC1jb25mb2xkXGZQIG9kZXIgXGZCXC1cLWZvcmNlXC1jb25mZGVmXGZQIGFuZ2VnZWJlbgord2lyZCwgd2lyZCBzaWUgZGF6dSB2ZXJ3YW5kdCwgZGllIGxldHp0ZW5kbGljaGUgQWt0aW9uIHp1IGVybWl0dGVsbi4KKworXGZCb3ZlcndyaXRlXGZQOiDcYmVyc2NocmVpYmUgZGllIERhdGVpIGF1cyBlaW5lbSBQYWtldCBtaXQgZWluZXIgRGF0ZWkgYXVzCitlaW5lbSBhbmRlcmVuIFBha2V0LgorCitcZkJvdmVyd3JpdGVcLWRpclxmUCDcYmVyc2NocmVpYmUgZGFzIFZlcnplaWNobmlzIGF1cyBlaW5lbSBQYWtldCBtaXQgZWluZXIKK0RhdGVpIGF1cyBlaW5lbSBhbmRlcmVuIFBha2V0LgorCitcZkJvdmVyd3JpdGVcLWRpdmVydGVkXGZQOiDcYmVyc2NocmVpYmUgZWluZSB1bWdlbGVpdGV0ZSAou2RpdmVydGVkqykgRGF0ZWkgbWl0CitlaW5lciBuaWNodCB1bWdlbGVpdGV0ZW4uCisKK1xmQnVuc2FmZVwtaW9cZlA6IEJlaW0gRW50cGFja2VuIGtlaW5lIHNpY2hlcmVuIEUvQVwtT3BlcmF0aW9uZW4KK2R1cmNoZvxocmVuLiBEZXJ6ZWl0IGltcGxpemllcnQgZGllcywgZGFzcyB2b3IgRGF0ZWl1bWJlbmVubnVuZ2VuIGtlaW4KK1N5c3RlbXN5bmMgZHVyY2hnZWb8aHJ0IHdpcmQuIERpZXNlciBTeW5jIGb8aHJ0IGJlaSBlaW5pZ2VuIERhdGVpc3lzdGVtZW4genUKK2VyaGVibGljaGVuIExlaXN0dW5nc2VpbmJ132VuLCB1bmds/GNrbGljaGVyd2Vpc2UgYmVpIHNvbGNoZW4sIGRpZSD8YmVyaGF1cHQKK3NpY2hlcmUgRS9BIGF1ZmdydW5kIGlocmVzIHVuenV2ZXJs5HNzaWdlbiBWZXJoYWx0ZW5zIGJlbvZ0aWdlbiwgYXVmIGRlbmVuCitiZWkgYWJydXB0ZW4gU3lzdGVtYWJzdPxyemVuIERhdGVpZW4gZGVyIEzkbmdlIE51bGwgZW50c3RlaGVuIGv2bm5lbi4KKworXGZJSGlud2VpczpcZlAgRvxyIGRlbiBIYXVwdG1pc3N05HRlciBFeHQ0IHNvbGx0ZW4gU2llIHN0YXR0ZGVzc2VuIGRpZQorRWluaORuZ2VvcHRpb24gXGZCbm9kZWxhbGxvY1xmUCB2ZXJ3ZW5kZW4sIGRpZSBzb3dvaGwgZGllIExlaXN0dW5nc2VpbmJ132UKK3ZlcmhpbmRlcnQgYWxzIGF1Y2ggRGF0ZW5zaWNoZXJoZWl0c3Byb2JsZW1lIHZlcm1laWRldC4gTGV0enRlcmVzIGJlZGV1dGV0LAorZGFzcyBiZWkgYWJydXB0ZW4gU3lzdGVtYWJzdPxyemVuIGJlaSBqZWRlciBTb2Z0d2FyZSwgZGllIGtlaW5lIFN5bmNzIHZvcgorYXRvbWFyZW4gVW1iZW5lbm51bmdlbiBkdXJjaGb8aHJ0LCBrZWluZSBEYXRlaWVuIGRlciBM5G5nZSBOdWxsIGdlbmVyaWVydAord2VyZGVuLgorCitcZklXYXJudW5nOiBEaWUgVmVyd2VuZHVuZyBkaWVzZXIgT3B0aW9uIGthbm4gZGllIExlaXN0dW5nIGVyaPZoZW4sCithbGxlcmRpbmdzIGv2bm5lbiBkYWJlaSBEYXRlbiB2ZXJsb3JlbiBnZWhlbi4gVmVyd2VuZGVuIFNpZSBkaWUgT3B0aW9uCit2b3JzaWNodGlnLlxmUAorCitcZkJhcmNoaXRlY3R1cmVcZlA6IFZlcmFyYmVpdGUgc29nYXIgUGFrZXRlIG1pdCBkZXIgZmFsc2NoZW4gb2RlciBrZWluZXIKK0FyY2hpdGVrdHVyLgorCitcZkJiYWRcLXZlcnNpb25cZlA6IFZlcmFyYmVpdGUgc29nYXIgUGFrZXRlIG1pdCBmYWxzY2hlbiBWZXJzaW9uZW4uCisKK1xmQmJhZFwtcGF0aFxmUDogSW0gXGZCUEFUSFxmUCBmZWhsZW4gd2ljaHRpZ2UgUHJvZ3JhbW1lLCBkYWhlciBzaW5kIFByb2JsZW1lCit3YWhyc2NoZWlubGljaC4KKworXGZCbm90XC1yb290XGZQOiBWZXJzdWNoZSBTYWNoZW4genUgKGRlKWluc3RhbGxpZXJlbiwgc2VsYnN0IGZhbGxzIG5pY2h0IHJvb3QuCisKK1xmQmJhZFwtdmVyaWZ5XGZQOiBJbnN0YWxsaWVyZSBlaW4gUGFrZXQgc2VsYnN0IHdlbm4gZGllIEF1dGhlbnRpeml05HRzcHL8ZnVuZworZmVobHNjaGzkZ3QuCisKKy5UUCAKK1xmQlwtXC1pZ25vcmVcLWRlcGVuZHNcZlA9XGZJUGFrZXRcZlAsLi4uCitJZ25vcmllcmUgQWJo5G5naWdrZWl0c/xiZXJwcvxmdW5nZW4gZvxyIGVpbiBiZXN0aW1tdGVzIFBha2V0ICh0YXRz5GNobGljaAord2lyZCBkaWUg3GJlcnBy/GZ1bmcgZHVyY2hnZWb8aHJ0LCBhYmVyIG51ciBXYXJudW5nZW4g/GJlciBLb25mbGlrdGUgd2VyZGVuCithbmdlemVpZ3QsIHNvbnN0IG5pY2h0cykuCisuVFAgCitcZkJcLVwtbm9cLWFjdFxmUCwgXGZCXC1cLWRyeVwtcnVuXGZQLCBcZkJcLVwtc2ltdWxhdGVcZlAKK0VybGVkaWdlIGFsbGVzLCB3YXMgZ2VtYWNodCB3ZXJkZW4gc29sbCwgYWJlciBzY2hyZWliZSBrZWluZQorxG5kZXJ1bmdlbi4gRGllcyB3aXJkIHZlcndlbmRldCB1bSB6dSBzZWhlbiwgd2FzIG1pdCBkZXIgc3BlemlmaXppZXJ0ZW4KK8RuZGVydW5nIHBhc3NpZXJlbiB3/HJkZSBvaG5lIHRhdHPkY2hsaWNoIGV0d2FzIHp1IG1vZGlmaXppZXJlbi4KKworU3RlbGxlbiBTaWUgc2ljaGVyLCBkYXNzIFxmQlwtXC1ub1wtYWN0XGZQIHZvciBkZW0gQWt0aW9uc1wtUGFyYW1ldGVyIHN0ZWh0LCBvZGVyCitTaWUga/ZubnRlbiBtaXQgdW5lcnf8bnNjaHRlbiBFcmdlYm5pc3NlbiBlbmRlbi4gKEJlaXNwaWVsc3dlaXNlIHdpcmQgXGZCZHBrZworXC1cLXB1cmdlIGZvbyBcLVwtbm9cLWFjdFxmUCB6dWVyc3QgZGFzIFBha2V0IGZvbyBiZXJlaW5pZ2VuIHVuZCBkYW5uIHZlcnN1Y2hlbiwKK2RhcyBQYWtldCBcLVwtbm9cLWFjdCB6dSBiZXJlaW5pZ2VuLCBvYndvaGwgU2llIHdhaHJzY2hlaW5saWNoIGRhdm9uIGF1c2dpbmdlbiwKK2Rhc3MgdGF0c+RjaGxpY2ggZ2FyIG5pY2h0cyBwYXNzaWVyZW4gc29sbHRlKQorLlRQIAorXGZCXC1SXGZQLCBcZkJcLVwtcmVjdXJzaXZlXGZQCitCZWhhbmRsZSByZWt1cnNpdiBhbGxlIHJlZ3Vs5HJlbiBEYXRlaWVuLCBkaWUgYXVmIGRhcyBNdXN0ZXIgXGZCKi5kZWJcZlAgcGFzc2VuCit1bmQgaW0gYW5nZWdlYmVuIFZlcnplaWNobmlzIHNvd2llIGFsbGVuIFVudGVydmVyemVpY2huaXMgbGllZ2VuLiBEaWVzIGthbm4KK21pdCBkZW4gQWt0aW9uZW4gXGZCXC1pXGZQLCBcZkJcLUFcZlAsIFxmQlwtXC1pbnN0YWxsXGZQLCBcZkJcLVwtdW5wYWNrXGZQIHVuZCBcZkJcLVwtYXZhaWxcZlAKK3ZlcndlbmRldCB3ZXJkZW4uCisuVFAgCitcZkJcLUdcZlAKK0luc3RhbGxpZXJlIGVpbiBQYWtldCBuaWNodCwgZmFsbHMgYmVyZWl0cyBlaW5lIG5ldWVyZSBWZXJzaW9uIGRlcyBnbGVpY2hlbgorUGFrZXRlcyBpbnN0YWxsaWVydCBpc3QuIERpZXMgaXN0IGVpbiBBbGlhcyBm/HIgXGZCXC1cLXJlZnVzZVwtZG93bmdyYWRlXGZQLgorLlRQIAorXGZCXC1cLWFkbWluZGlyPVxmUFxmSVZlcnpcZlAKK8RuZGVyZSBkYXMgdm9yZWluZ2VzdGVsbHRlIGFkbWluaXN0cmF0aXZlIFZlcnplaWNobmlzIChzdGFuZGFyZG3k32lnCitcZkkvdmFyL2xpYi9kcGtnXGZQKSwgaW4gZGVtIHZpZWxlIERhdGVpZW4gbGllZ2VuLCBkaWUgSW5mb3JtYXRpb25lbiD8YmVyIGRlbgorU3RhdHVzIHZvbiBpbnN0YWxsaWVydGVuIHVuZCBkZWluc3RhbGxpZXJ0ZW4gUGFrZXRlIHVzdy4gbGllZ2VuLgorLlRQIAorXGZCXC1cLWluc3RkaXI9XGZQXGZJVmVyelxmUAorxG5kZXJlIGRhcyB2b3JlaW5nZXN0ZWxsdGUgSW5zdGFsbGF0aW9uc3ZlcnplaWNobmlzLiBEaWVzZXMgVmVyemVpY2huaXMgZ2lidAorYW4sIHdvIFBha2V0ZSBpbnN0YWxsaWVydCB3ZXJkZW4uIFxmQmluc3RkaXJcZlAgKHN0YW5kYXJkbeTfaWcgXGZJL1xmUCkgaXN0IGF1Y2gKK2RhcyBWZXJ6ZWljaG5pcywgZGFzIGFuIFxmQmNocm9vdFxmUCgyKSB2b3IgZGVtIEF1ZnJ1ZiBkZXIgSW5zdGFsbGF0aW9uc3NrcmlwdGUKK2RlcyBQYWtldGVzIPxiZXJnZWJlbiB3aXJkLCB3YXMgYmVkZXV0ZXQsIGRhc3MgZGllIFNrcmlwdGUgXGZCaW5zdGRpclxmUCBhbHMKK2VpbiBXdXJ6ZWx2ZXJ6ZWljaG5pcyBzZWhlbi4KKy5UUCAKK1xmQlwtcm9vdD1cZlBcZklWZXJ6XGZQCitEdXJjaCDEbmRlcm4gdm9uIFxmQnJvb3RcZlAgd2lyZCBcZkJpbnN0ZGlyXGZQIGF1ZiBcZklWZXJ6XGZQIHVuZCBcZkJhZG1pbmRpclxmUCBhdWYKK1xmSVZlcnpcZlBcZkIvdmFyL2xpYi9kcGtnXGZQIGdl5G5kZXJ0LgorLlRQIAorXGZCXC1PXGZQLCBcZkJcLVwtc2VsZWN0ZWRcLW9ubHlcZlAKK0JlYXJiZWl0ZSBudXIgZGllIFBha2V0ZSwgZGllIHp1ciBJbnN0YWxsYXRpb24gYXVzZ2V35GhsdCBzaW5kLiBEaWUKK2VpZ2VudGxpY2hlIE1hcmtpZXJ1bmcgZXJmb2xndCBtaXQgXGZCZHNlbGVjdFxmUCBvZGVyIGR1cmNoIFxmQmRwa2dcZlAsIHdlbm4gZXMKK1Bha2V0ZSBiZWFyYmVpdGV0LiBCZWlzcGllbHN3ZWlzZSB3aXJkIGVpbiBQYWtldCBiZWkgZGVyIEVudGZlcm51bmcgYWxzILt6dXIKK0RlaW5zdGFsbGF0aW9uIGF1c2dld+RobHSrIG1hcmtpZXJ0LgorLlRQIAorXGZCXC1FXGZQLCBcZkJcLVwtc2tpcFwtc2FtZVwtdmVyc2lvblxmUAorSW5zdGFsbGllcmUgZGFzIFBha2V0IG5pY2h0LCBmYWxscyBkaWUgZ2xlaWNoZSBWZXJzaW9uIGRlcyBQYWtldHMgYmVyZWl0cworaW5zdGFsbGllcnQgaXN0LgorLlAKK1xmQlwtXC1wcmVcLWludm9rZT1cZlBcZklCZWZlaGxcZlAKKy5icgorXGZCXC1cLXBvc3RcLWludm9rZT1cZlBcZklCZWZlaGxcZlAKKy5SUworU2V0enQgZWluZW4gQXVmcnVmXC1Ib29rIFxmSUJlZmVobFxmUCwgZGVyIHZpYSC7c2ggXC1jqyB2b3Igb2RlciBuYWNoIGRlbQorRHBrZ1wtQXVmcnVmIGRlciBEcGtnXC1Ba3Rpb25lbiBcZkl1bnBhY2tcZlAsIFxmSWNvbmZpZ3VyZVxmUCwgXGZJaW5zdGFsbFxmUCwKK1xmSXRyaWdnZXJzXC1vbmx5XGZQLCBcZklyZW1vdmVcZlAgdW5kIFxmSXB1cmdlXGZQIGF1c2dlZvxocnQgd2lyZC4gRGllc2UgT3B0aW9uIGthbm4KK21laHJmYWNoIGFuZ2VnZWJlbiB3ZXJkZW4uIERpZSBSZWloZW5mb2xnZSBkZXIgT3B0aW9uZW4gd2lyZCBlcmhhbHRlbiwgd29iZWkKK0VpbnRy5GdlIGF1cyBkZW4gS29uZmlndXJhdGlvbnNkYXRlaWVuIFZvcnJhbmcgZWlubmVobWVuLiBEaWUKK1VtZ2VidW5nc3ZhcmlhYmxlIFxmQkRQS0dfSE9PS19BQ1RJT05cZlAgd2lyZCBm/HIgZGllIEhvb2tzIGF1ZiBkaWUgYWt0dWVsbGUKK0Rwa2dcLUFrdGlvbiBnZXNldHp0LiBIaW53ZWlzOiBPYmVyZmzkY2hlbiBr9m5udGVuIERwa2cgbWVocmVyZSBNYWxlIHBybworQXVzZvxocnVuZyBhdWZydWZlbiwgd29kdXJjaCBkaWUgSG9va3Mg9mZ0ZXIgYWxzIGVyd2FydGV0IGF1c2dlZvxocnQgd2VyZGVuCitr9m5udGVuLgorLlJFCisuUAorXGZCXC1cLXBhdGhcLWV4Y2x1ZGU9XGZQXGZJR2xvYlwtTXVzdGVyXGZQCisuYnIKK1xmQlwtXC1wYXRoXC1pbmNsdWRlPVxmUFxmSUdsb2JcLU11c3RlclxmUAorLlJTCitTZXR6dCBcZklHbG9iXC1NdXN0ZXJcZlAgYWxzIFBmYWRmaWx0ZXIsIGVudHdlZGVyIGR1cmNoIEF1c3NjaGx1c3Mgb2RlciBkdXJjaAorV2llZGVyZWluc2NobHVzcyB2b3JoZXIgYXVzZ2VzY2hsb3NzZW5lciBQZmFkZSwgZGllIHfkaHJlbmQgZGVyIEluc3RhbGxhdGlvbgorYXVmIGJlc3RpbW10ZSBNdXN0ZXIgcGFzc2VuLgorCitcZklXYXJudW5nOiBCZWFjaHRlbiBTaWUsIGRhc3MgYWJo5G5naWcgdm9uIGRlbiBhdXNnZXNjaGxvc3NlbmVuIFBmYWRlbiBTaWUKK0lociBTeXN0ZW0ga29tcGxldHQgYmVzY2jkZGlnZW4ga/ZubnRlbi4gVmVyd2VuZGVuIFNpZSBkaWVzIGRhaGVyCit2b3JzaWNodGlnLlxmUAorCitEYXMgR2xvYlwtTXVzdGVyIGthbm4gZGllIGdsZWljaGVuIFBsYXR6aGFsdGVyIHdpZSBpbiBkZXIgU2hlbGwgdmVyd2VuZGVuLAord29iZWkguyqrIGF1ZiBlaW5lIGJlbGllYmlnZSBGb2xnZSB2b24gWmVpY2hlbiwgYXVjaCBkZW0gTGVlcnplaWNoZW4gdW5kCiu7L6ssIHBhc3N0LiBCZWlzcGllbHN3ZWlzZSBwYXNzdCBcZkm7L3Vzci8qL1JFQUQqq1xmUCBhdWYKK1xmSbsvdXNyL3NoYXJlL2RvYy9wYWNrYWdlL1JFQURNRatcZlAuIFdpZSBnZXf2aG5saWNoIHBhc3N0ILs/qyBhdWYgZWluCitlaW56ZWxuZXMgWmVpY2hlbiAod2llZGVyIGF1Y2ggYXVmILsvqykuIFVuZCC7W6sgYmVnaW5udCBlaW5lIFplaWNoZW5rbGFzc2UsCitkaWUgZWluZSBMaXN0ZSB2b24gWmVpY2hlbiwgQmVyZWljaGUgdW5kIEtvbXBsZW1lbnRlIGVudGhhbHRlbiBrYW5uLiBMZXNlbgorU2llIFxmQmdsb2JcZlAoNykgZvxyIGRldGFpbGxpZXJ0ZSBJbmZvcm1hdGlvbmVuIPxiZXIgZGFzIEdsb2JiZW4uIEhpbndlaXM6CitBa3R1ZWxsZSBJbXBsZW1lbnRpZXJ1bmdlbiBr9m5udGVuIG1laHIgVmVyemVpY2huaXNzZSB1bmQgc3ltYm9saXNjaGUgTGlua3MKK2FscyBiZW72dGlndCB3aWVkZXIgZWluc2NobGll32VuLiBVbSBhdWYgZGVyIHNpY2hlcmVuIFNlaXRlIHp1IHNlaW4gdW5kIGluCitkZXIgWnVrdW5mdCBt9mdsaWNoZSBFbnRwYWNrZmVobGVyIHp1IHZlcm1laWRlbiwga/ZubnRlIGRpZXMgZHVyY2gKK3p1a/xuZnRpZ2UgQXJiZWl0ZW4gYmVob2JlbiB3ZXJkZW4uCisKK0RpZXMga2FubiBkYXp1IHZlcndhbmR0IHdlcmRlbiwgYWxsZSBQZmFkZSBhdd9lciBiZXN0aW1tdGVuIHp1IGVudGZlcmVuLCBlaW4KK3R5cGlzY2hlciBGYWxsIGxhdXRldDoKKworLm5mCitcZkJcLVwtcGF0aFwtZXhjbHVkZT0vdXNyL3NoYXJlL2RvYy8qXGZQCitcZkJcLVwtcGF0aFwtaW5jbHVkZT0vdXNyL3NoYXJlL2RvYy8qL2NvcHlyaWdodFxmUAorLmZpCisKK0hpZXJtaXQgd2VyZGVuIGFsbGUgRG9rdW1lbnRhdGlvbnNkYXRlaWVuIChhdd9lciBkZW4gQ29weXJpZ2h0XC1EYXRlaWVuKQorZW50ZmVybnQuCisKK0RpZXNlIHp3ZWkgT3B0aW9uZW4ga/ZubmVuIG1laHJmYWNoIGFuZ2VnZWJlbiB1bmQgbWl0ZWluYW5kZXIgdmVyc2NoYWNodGVsdAord2VyZGVuLiBCZWlkZSB3ZXJkZW4gaW4gZGVyIGFuZ2VnZWJlbmVuIFJlaWhlbmZvbGdlIGF1c2dld2VydGV0LCB3b2JlaSBkaWUKK2xldHp0ZSBSZWdlbCwgZGllIGF1ZiBlaW5lIERhdGVpIHBhc3N0LCBkaWUgRW50c2NoZWlkdW5nIGbkbGx0LgorLlJFCisuVFAgCitcZkJcLVwtc3RhdHVzXC1mZCBcZlBcZkluXGZQCitTY2hpY2tlIG1hc2NoaW5lbmxlc2JhcmUgUGFrZXRzdGF0dXNcLSB1bmQgRm9ydHNjaHJpdHRzaW5mb3JtYXRpb25lbiBhbiBkZW4KK0RhdGVpZGVza3JpcHRvciBcZkluXGZQLiBEaWVzZSBPcHRpb24ga2FubiBtZWhyZmFjaCBhbmdlZ2ViZW4gd2VyZGVuLiBEaWUKK0luZm9ybWF0aW9uIGJlc3RlaHQgdHlwaXNjaGVyd2Vpc2UgYXVzIGVpbmVtIERhdGVuc2F0eiBwcm8gWmVpbGUgaW4KK2ZvbGdlbmRlbSBGb3JtYXQ6CisuUlMKKy5UUCAKK1xmQnN0YXR1czogXGZQXGZJUGFrZXRcZlBcZkI6IFxmUFxmSVN0YXR1c1xmUAorUGFrZXRzdGF0dXMgZ2XkbmRlcnQ7IFxmSVN0YXR1c1xmUCBlbnRzcHJlY2hlbmQgZGVyIFN0YXR1c2RhdGVpLgorLlRQIAorXGZCc3RhdHVzOiBcZlBcZklQYWtldFxmUFxmQiA6IGVycm9yIDogXGZQXGZJYXVzZvxocmxpY2hlXC1GZWhsZXJtZWxkdW5nXGZQCitFaW4gRmVobGVyIGlzdCBhdWZnZXRyZXRlbi4gQWxsZSBt9mdsaWNoZW4gWmVpbGVudW1icvxjaGUgaW4KK1xmSWF1c2b8aHJsaWNoZVwtRmVobGVybWVsZHVuZ1xmUCB3ZXJkZW4gdm9yIGRlciBBdXNnYWJlIGluIExlZXJ6ZWljaGVuCitnZXdhbmRlbHQuCisuVFAgCitcZkJzdGF0dXM6IFxmUFxmSURhdGVpXGZQXGZCIDogY29uZmZpbGVcLXByb21wdCA6ILtcZlBcZkllY2h0XC1hbHRcZlBcZkKrILtcZlBcZkllY2h0XC1uZXVcZlBcZkKrIFxmUFxmSWJlbnV0emVyXC1lZGl0XGZQXGZCIFxmUFxmSWRpc3RcLWVkaXRcZlAKK0RlbSBCZW51dHplciB3aXJkIGVpbmUgQ29uZmZpbGVcLUZyYWdlIGdlc3RlbGx0LgorLlRQIAorXGZCcHJvY2Vzc2luZzogXGZQXGZJU3R1ZmVcZlBcZkI6IFxmUFxmSVBha2V0XGZQCitWZXJzYW5kdCBnZW5hdSBiZXZvciBlaW5lIFZlcmFyYmVpdHVuZ3NzdHVmZSBiZWdpbm50LiBcZklTdHVmZVxmUCBpc3QgZWluZSBkZXIKK2ZvbGdlbmRlbjogXGZCdXBncmFkZVxmUCwgXGZCaW5zdGFsbFxmUCAoYmVpZGUgd2VyZGVuIHZvciBkZW0gRW50cGFja2VuIHZlcnNhbmR0KSwKK1xmQmNvbmZpZ3VyZVxmUCwgXGZCdHJpZ3Byb2NcZlAsIFxmQmRpc2FwcGVhclxmUCwgXGZCcmVtb3ZlXGZQLCBcZkJwdXJnZVxmUC4KKy5SRQorLlRQIAorXGZCXC1cLXN0YXR1c1wtbG9nZ2VyXGZQPVxmSUJlZmVobFxmUAorU2NoaWNrZSBtYXNjaGluZW5sZXNiYXJlIFBha2V0c3RhdHVzXC0gdW5kIEZvcnRzY2hyaXR0c2luZm9ybWF0aW9uZW4gYW4gZGllCitTdGFuZGFyZGVpbmdhYmUgZGVzIFxmSUJlZmVobFxmUHMgZGVyIFNoZWxsLiBEaWVzZSBPcHRpb24ga2FubiBtZWhyZmFjaAorYW5nZWdlYmVuIHdlcmRlbi4gRGFzIHZlcndhbmR0ZSBBdXNnYWJlZm9ybWF0IGlzdCBpZGVudGlzY2ggenUgZGVtIGluCitcZkJcLVwtc3RhdHVzXC1mZC5cZlAKKy5SRQorLlRQIAorXGZCXC1cLWxvZz1cZlBcZklEYXRlaW5hbWVcZlAKK1Byb3Rva29sbGllcmUgU3RhdHVz5G5kZXJ1bmdzYWt0dWFsaXNpZXJ1bmdlbiB1bmQgXC1Ba3Rpb25lbiBpbiBcZklEYXRlaW5hbWVcZlAKK2Fuc3RhdHQgaW4gZGllIFN0YW5kYXJkXC1EYXRlaSBcZkkvdmFyL2xvZy9kcGtnLmxvZ1xmUC4gRmFsbHMgZGllc2UgT3B0aW9uCittZWhyZmFjaCD8YmVyZ2ViZW4gd2lyZCwgd2lyZCBkZXIgbGV0enRlIERhdGVpbmFtZQordmVyd2VuZGV0LiBQcm90b2tvbGxuYWNocmljaHRlbiBzaW5kIHZvbiBkZXIgRm9ybSC7SkpKSlwtTU1cLVRUIEhIOk1NOlNTCitzdGF0dXMgXGZJWnVzdGFuZFxmUCBcZklQa3RcZlAgXGZJaW5zdGFsbGllcnRlXC1WZXJzaW9uXGZQqyBm/HIKK1N0YXR1c+RuZGVydW5nc2FrdHVhbGlzaWVydW5nZW47ILtKSkpKXC1NTVwtVFQgSEg6TU06U1MgXGZJQWt0aW9uXGZQIFxmSVBrdFxmUAorXGZJaW5zdGFsbGllcnRlXC1WZXJzaW9uXGZQIFxmSXZlcmb8Z2JhcmVcLVZlcnNpb25cZlCrIGb8ciBBa3Rpb25lbiwgd29iZWkgXGZJQWt0aW9uXGZQCitlbnR3ZWRlciBcZkJpbnN0YWxsXGZQLCBcZkJ1cGdyYWRlXGZQLCBcZkJyZW1vdmVcZlAgb2RlciBcZkJwdXJnZVxmUCBpc3Q7IHVuZAoru1lZWVlcLU1NXC1ERCBISDpNTTpTUyBjb25mZmlsZSBcZklEYXRlaW5hbWVcZlAgXGZJRW50c2NoZWlkdW5nXGZQqyBm/HIKK0NvbmZmaWxlXC3EbmRlcnVuZ2VuIGlzdCwgd29iZWkgXGZJRW50c2NoZWlkdW5nXGZQIGVudHdlZGVyIFxmQmluc3RhbGxcZlAgb2RlcgorXGZCa2VlcFxmUCBpc3QuCisuVFAgCitcZkJcLVwtbm9cLWRlYnNpZ1xmUAorVmVyc3VjaGUgbmljaHQsIFBha2V0c2lnbmF0dXJlbiB6dSD8YmVycHL8ZmVuLgorLlRQIAorXGZCXC1cLW5vXC10cmlnZ2Vyc1xmUAorRvxocmUga2VpbmUgVHJpZ2dlciBpbiBkaWVzZW0gRHVyY2hsYXVmIGF1cyAoQWt0aXZpZXJ1bmdlbiB3ZXJkZW4gZGVubm9jaAorYXVmZ2V6ZWljaG5ldCkuIEZhbGxzIGRpZXMgbWl0IFxmQlwtXC1jb25maWd1cmVcZlAgXGZJUGFrZXRcZlAgb2RlcgorXGZCXC1cLXRyaWdnZXJzXC1vbmx5XGZQIFxmSVBha2V0XGZQIHZlcndhbmR0IHdpcmQsIHdpcmQgZGFzIFBvc3RpbnN0IGRlcyBiZW5hbm50ZW4KK1Bha2V0cyBkZW5ub2NoIGF1c2dlZvxocnQsIHNlbGJzdCBmYWxscyBudXIgZWluIFRyaWdnZXJcLUxhdWYgbm90d2VuZGlnCitpc3QuIERpZSBWZXJ3ZW5kdW5nIGRpZXNlciBPcHRpb24ga2FubiBQYWtldGUgaW4gZGllIHVuenVs5HNzaWdlbiBTdGF0aQorXGZCdHJpZ2dlcnNcLWF3YWl0ZWRcZlAgdW5kIFxmQnRyaWdnZXJzXC1wZW5kaW5nXGZQIGJyaW5nZW4uIER1cmNoIGRpZSBBdXNm/GhydW5nCit2b24gu1xmQmRwa2cgXC1cLWNvbmZpZ3VyZSBcLVwtcGVuZGluZ1xmUKsga2FubiBkaWVzIHNw5HRlciBiZWhvYmVuIHdlcmRlbi4KKy5UUCAKK1xmQlwtXC10cmlnZ2Vyc1xmUAorQW5udWxsaWVydCBlaW4gdm9yaGVyaWdlcyBcZkJcLVwtbm9cLXRyaWdnZXJzXGZQLgorLgorLlNIIERBVEVJRU4KKy5UUCAKK1xmSS9ldGMvZHBrZy9kcGtnLmNmZ1xmUAorS29uZmlndXJhdGlvbnNkYXRlaSBtaXQgU3RhbmRhcmRlaW5zdGVsbHVuZ2VuIGRlciBPcHRpb25lbi4KKy5UUCAKK1xmSS92YXIvbG9nL2Rwa2cubG9nXGZQCitTdGFuZGFyZFwtUHJvdG9rb2xsZGF0ZWkgKGxlc2VuIFNpZSBcZkkvZXRjL2Rwa2cvZHBrZy5jZmdcZlAoNSkgdW5kIGRpZSBPcHRpb24KK1xmQlwtXC1sb2dcZlApLgorLlAKK0RpZSBhbmRlcmVuIHVudGVuIGF1ZmdlZvxocnRlbiBEYXRlaWVuIHNpbmQgaW4gaWhyZW0gU3RhbmRhcmR2ZXJ6ZWljaG5pcywKK2xlc2VuIFNpZSBkZW4gVGV4dCB6dXIgT3B0aW9uIFxmQlwtXC1hZG1pbmRpclxmUCB1bSB6dSBzZWhlbiwgd2llIHNpZSBkZW4gT3J0CitkaWVzZXIgRGF0ZWllbiDkbmRlcm4ga/ZubmVuLgorLlRQIAorXGZJL3Zhci9saWIvZHBrZy9hdmFpbGFibGVcZlAKK0xpc3RlIGRlciB2ZXJm/GdiYXJlbiBQYWtldGUuCisuVFAgCitcZkkvdmFyL2xpYi9kcGtnL3N0YXR1c1xmUAorU3RhdHVzc2UgZGVyIHZlcmb8Z2JhcmVuIFBha2V0ZS4gRGllc2UgRGF0ZWkgZW50aORsdCBJbmZvcm1hdGlvbmVuIGRhcvxiZXIsCitvYiBlaW4gUGFrZXQgenVyIEVudGZlcm51bmcgbWFya2llcnQgaXN0IG9kZXIgbmljaHQsIG9iIGVzIGluc3RhbGxpZXJ0IGlzdAorb2RlciBuaWNodCB1c3cuIExlc2VuIFNpZSBkZW4gQWJzY2huaXR0IFxmQklORk9STUFUSU9ORU4g3EJFUiBQQUtFVEVcZlAgZvxyCit3ZWl0ZXJlIEluZm9ybWF0aW9uZW4uCisKK0RpZSBTdGF0dXNkYXRlaSB3aXJkIHTkZ2xpY2ggbmFjaCBcZkkvdmFyL2JhY2t1cHNcZlAgZ2VzaWNoZXJ0LiBEaWVzIGthbm4KK2hpbGZyZWljaCBzZWluLCBmYWxscyBzaWUgYXVmZ3J1bmQgdm9uIFByb2JsZW1lbiBtaXQgZGVtIERhdGVpc3lzdGVtCit2ZXJsb3JlbiBnZWdhbmdlbiBvZGVyIGJlc2No5GRpZ3Qgd29yZGVuIGlzdC4KKy5QCitEaWUgZm9sZ2VuZGVuIERhdGVpZW4gc2luZCBLb21wb25lbnRlbiB2b24gQmlu5HJwYWtldGVuLiBMZXNlbiBTaWUgXGZCZGViXGZQKDUpCitm/HIgd2VpdGVyZSBJbmZvcm1hdGlvbmVuIPxiZXIgc2llOgorLlRQIAorXGZJY29udHJvbFxmUAorLlRQIAorXGZJY29uZmZpbGVzXGZQCisuVFAgCitcZklwcmVpbnN0XGZQCisuVFAgCitcZklwb3N0aW5zdFxmUAorLlRQIAorXGZJcHJlcm1cZlAKKy5UUCAKK1xmSXBvc3RybVxmUAorLgorLlNIIFVNR0VCVU5HCisuVFAgCitcZkJIT01FXGZQCitGYWxscyBnZXNldHp0IHdpcmQgXGZCZHBrZ1xmUCBlcyBhbHMgZGFzIFZlcnplaWNobmlzIHZlcndlbmRlbiwgYXVzIGRlbSBkaWUKK2JlbnV0emVyc3BlemlmaXNjaGUgS29uZmlndXJhdGlvbnNkYXRlaSBnZWxlc2VuIHdpcmQuCisuVFAgCitcZkJUTVBESVJcZlAKK0ZhbGxzIGdlc2V0enQgd2lyZCBcZkJkcGtnXGZQIGVzIGFscyBkYXMgVmVyemVpY2huaXMgdmVyd2VuZGVuLCBpbiBkZW0KK3RlbXBvcuRyZSBEYXRlaWVuIHVuZCBWZXJ6ZWljaG5pc3NlIGVyc3RlbGx0IHdlcmRlbi4KKy5UUCAKK1xmQlBBR0VSXGZQCitEYXMgUHJvZ3JhbW0sIGRhcyBcZkJkcGtnXGZQIGF1c2b8aHJlbiB3aXJkLCB3ZW5uIGVzIGRpZSBDb25mZmlsZXMgYW56ZWlndC4KKy5UUCAKK1xmQlNIRUxMXGZQCitEYXMgUHJvZ3JhbW0sIGRhcyBcZkJkcGtnXGZQIGF1c2b8aHJlbiB3aXJkLCB3ZW5uIGVzIGVpbmUgbmV1ZSBTaGVsbCBzdGFydGV0LgorLlRQIAorXGZCQ09MVU1OU1xmUAorU2V0enQgZGllIEFuemFobCB2b24gU3BhbHRlbiBkaWUgXGZCZHBrZ1xmUCB2ZXJ3ZW5kZW4gc29sbCwgd2VubiBlcworZm9ybWF0aWVydGVuIFRleHQgYW56ZWlndC4gRGVyemVpdCBudXIgdm9uIFwtbCB2ZXJ3ZW5kZXQuCisuVFAgCitcZkJEUEtHX1NIRUxMX1JFQVNPTlxmUAorV2lyZCB2b24gXGZCZHBrZ1xmUCBhdWYgZGVyIFNoZWxsLCBkaWUgdm9uIGRlciBDb25mZmlsZVwtRWluZ2FiZWF1ZmZvcmRlcnVuZworZ2VzdGFydGV0IHdpcmQsIHVtIGRpZSBTaXR1YXRpb24genUgYW5hbHlzaWVyZW4sIGdlc2V0enQuIERlcnplaXQgZ/xsdGlnZXIKK1dlcnQ6IFxmQmNvbmZmaWxlXC1wcm9tcHRcZlAuCisuVFAgCitcZkJEUEtHX0NPTkZGSUxFX09MRFxmUAorV2lyZCB2b24gXGZCZHBrZ1xmUCBhdWYgZGVyIFNoZWxsLCBkaWUgdm9uIGRlciBDb25mZmlsZVwtRWluZ2FiZWF1ZmZvcmRlcnVuZworZ2VzdGFydGV0IHdpcmQsIHVtIGRpZSBTaXR1YXRpb24genUgYW5hbHlzaWVyZW4sIGdlc2V0enQuIEVudGjkbHQgZGVuIFBmYWQKK3p1IGRlciBhbHRlbiBDb25mZmlsZS4KKy5UUCAKK1xmQkRQS0dfQ09ORkZJTEVfTkVXXGZQCitXaXJkIHZvbiBcZkJkcGtnXGZQIGF1ZiBkZXIgU2hlbGwsIGRpZSB2b24gZGVyIENvbmZmaWxlXC1FaW5nYWJlYXVmZm9yZGVydW5nCitnZXN0YXJ0ZXQgd2lyZCwgdW0gZGllIFNpdHVhdGlvbiB6dSBhbmFseXNpZXJlbiwgZ2VzZXR6dC4gRW50aORsdCBkZW4gUGZhZAorenUgZGVyIG5ldWVuIENvbmZmaWxlLgorLlRQIAorXGZCRFBLR19SVU5OSU5HX1ZFUlNJT05cZlAKK1dpcmQgdm9uIFxmQmRwa2dcZlAgZvxyIGRpZSBCZXRyZXVlclwtU2tyaXB0XC1VbWdlYnVuZyBhdWYgZGllIFZlcnNpb24gZGVyCitha3R1ZWxsIGxhdWZlbmRlbiBJbnN0YW56IHZvbiBcZkJkcGtnXGZQIGdlc2V0enQuCisuVFAgCitcZkJEUEtHX01BSU5UU0NSSVBUX1BBQ0tBR0VcZlAKK1dpcmQgdm9uIFxmQmRwa2dcZlAgZvxyIGRpZSBCZXRyZXVlclwtU2tyaXB0XC1VbWdlYnVuZyBhdWYgZGVuIGluIEFyYmVpdAorYmVmaW5kbGljaGVuIFBha2V0bmFtZW4gZ2VzZXR6dC4KKy5UUCAKK1xmQkRQS0dfTUFJTlRTQ1JJUFRfQVJDSFxmUAorV2lyZCB2b24gXGZCZHBrZ1xmUCBm/HIgZGllIEJldHJldWVyXC1Ta3JpcHRcLVVtZ2VidW5nIGF1ZiBkaWUgQXJjaGl0ZWt0dXIKK2dlc2V0enQsIGb8ciBkaWUgZGFzIFBha2V0IGdlYmF1dCB3dXJkZS4KKy5UUCAKK1xmQkRQS0dfTUFJTlRTQ1JJUFRfTkFNRVxmUAorV2lyZCB2b24gXGZCZHBrZ1xmUCBm/HIgZGllIEJldHJldWVyXC1Ta3JpcHRcLVVtZ2VidW5nIGF1ZiBkZW4gTmFtZW4gZGVzCitsYXVmZW5kZW4gU2tyaXB0cyAocHJlaW5zdCwgcG9zdGluc3QsIHByZXJtLCBwb3N0cm0pIGdlc2V0enQuCisuCisuU0ggQkVJU1BJRUxFCitVbSBQYWtldGUgbWl0IEJlenVnIHp1bSBcZkJ2aVxmUCgxKVwtRWRpdG9yIGF1Znp1bGlzdGVuOgorLmJyCisgICAgIFxmQmRwa2cgXC1sIFwoYXEqdmkqXChhcVxmUAorLmJyCisKK1VtIGRpZSBFaW50cuRnZSB2b24gendlaSBQYWtldGVuIGluIFxmSS92YXIvbGliL2Rwa2cvYXZhaWxhYmxlXGZQIHp1IHNlaGVuOgorLmJyCisgICAgIFxmQmRwa2cgXC1cLXByaW50XC1hdmFpbCBlbHZpcyB2aW0gfCBsZXNzXGZQCisuYnIKKworV2VubiBTaWUgZGllIExpc3RlIGRlciBQYWtldGUgc2VsYnN0IGR1cmNoc3VjaGVuIHdvbGxlbjoKKy5icgorICAgICBcZkJsZXNzIC92YXIvbGliL2Rwa2cvYXZhaWxhYmxlXGZQCisuYnIKKworVW0gZWluIGluc3RhbGxpZXJ0ZXMgRWx2aXNcLVBha2V0IHp1IGVudGZlcm5lbjoKKy5icgorICAgICBcZkJkcGtnIFwtciBlbHZpc1xmUAorLmJyCisKK1VtIGVpbiBQYWtldCB6dSBpbnN0YWxsaWVyZW4sIG38c3NlbiBTaWUgZXMgZXJzdCBpbiBlaW5lbSBBcmNoaXYgb2RlciBhdWYKK2VpbmVyIENEXC1ST00gZmluZGVuLiBEaWUgu2F2YWlsYWJsZatcLURhdGVpIHplaWd0LCBkYXNzIGRhcyB2aW1cLVBha2V0IGltCitCZXJlaWNoILtlZGl0b3JzqyBpc3Q6CisuYnIKKyAgICAgXGZCY2QgL21lZGlhL2Nkcm9tL3Bvb2wvbWFpbi92L3ZpbVxmUAorICAgICBcZkJkcGtnIFwtaSB2aW1fNC41XC0zLmRlYlxmUAorLmJyCisKK1VtIGVpbmUgbG9rYWxlIEtvcGllIGRlciBQYWtldGF1c3dhaGxcLVp1c3TkbmRlIHp1IGVyc3RlbGxlbjoKKy5icgorICAgICBcZkJkcGtnIFwtXC1nZXRcLXNlbGVjdGlvbnMgPm1laW5lX2F1c3dhaGxcZlAKKy5icgorCitTaWUga/ZubmVuIGRpZXNlIERhdGVpIHp1IGVpbmVtIGFuZGVyZW4gQ29tcHV0ZXIgYnJpbmdlbiB1bmQgc2llIGRvcnQgbWl0Citmb2xnZW5kZW4gQmVmZWhsZW4gaW5zdGFsbGllcmVuOgorLmJyCisgICAgIFxmQmRwa2cgXC1cLWNsZWFyXC1zZWxlY3Rpb25zXGZQCisgICAgIFxmQmRwa2cgXC1cLXNldFwtc2VsZWN0aW9ucyA8bWVpbmVfYXVzd2FobFxmUAorLmJyCisKK0JlYWNodGVuIFNpZSwgZGFzcyBkaWVzIG5pY2h0cyB3aXJrbGljaCBpbnN0YWxsaWVydCBvZGVyIGVudGZlcm50LCBzb25kZXJuCitsZWRpZ2xpY2ggZGVuIEF1c3dhaGx6dXN0YW5kIGRlciBhbmdlZm9yZGVydGVuIFBha2V0ZSBzZXR6dC4gU2llIHdlcmRlbiBlaW5lCithbmRlcmUgQW53ZW5kdW5nIGJlbvZ0aWdlbiwgdW0gZGllIGFuZ2Vmb3JkZXJ0ZW4gUGFrZXRlIHRhdHPkY2hsaWNoCitoZXJ1bnRlcnp1bGFkZW4gdW5kIHp1IGluc3RhbGxpZXJlbi4gRvxocmVuIFNpZSBiZWlzcGllbHN3ZWlzZSBcZkJhcHRcLWdldAorZHNlbGVjdFwtdXBncmFkZVxmUCBhdXMuCisKK0dld/ZobmxpY2ggd2VyZGVuIFNpZSBmZXN0c3RlbGxlbiwgZGFzcyBcZkJkc2VsZWN0XGZQKDEpIGVpbmUgYmVxdWVtZXJlIEFydAoraXN0LCBkZW4gUGFrZXRhdXN3YWhsenVzdGFuZCB6dSDkbmRlcm4uCisuYnIKKy4KKy5TSCAiWlVTxFRaTElDSEUgRlVOS1RJT05BTElUxFQiCitadXPkdHpsaWNoZSBGdW5rdGlvbmFsaXTkdCBrYW5uIGR1cmNoIGRpZSBJbnN0YWxsYXRpb24gamVkZXMgZGVyIGZvbGdlbmRlbgorUGFrZXRlIGVyaGFsdGVuIHdlcmRlbjogXGZCYXB0XGZQLCBcZkJhcHRpdHVkZVxmUCB1bmQgXGZCZGVic3Vtc1xmUC4KKy4KKy5TSCDcQkVSU0VUWlVORworRGllIGRldXRzY2hlINxiZXJzZXR6dW5nIHd1cmRlIDIwMDQsIDIwMDYtMjAxMSB2b24gSGVsZ2UgS3JldXR6bWFubgorPGRlYmlhbkBoZWxnZWZqZWxsLmRlPiwgMjAwNyB2b24gRmxvcmlhbiBSZWhuaXNjaCA8ZWl4bWFuQGdteC5kZT4gdW5kCisyMDA4IHZvbiBTdmVuIEpvYWNoaW0gPHN2ZW5qb2FjQGdteC5kZT4KK2FuZ2VmZXJ0aWd0LiBEaWVzZSDcYmVyc2V0enVuZyBpc3QgRnJlaWUgRG9rdW1lbnRhdGlvbjsgbGVzZW4gU2llIGRpZQorR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgVmVyc2lvbiAyIG9kZXIgbmV1ZXIgZvxyIGRpZSBLb3BpZXJiZWRpbmd1bmdlbi4KK0VzIGdpYnQgS0VJTkUgSEFGVFVORy4KKy5TSCAiU0lFSEUgQVVDSCIKK1xmQmFwdGl0dWRlXGZQKDEpLCBcZkJhcHRcZlAoMSksIFxmQmRzZWxlY3RcZlAoMSksIFxmQmRwa2dcLWRlYlxmUCgxKSwgXGZCZHBrZ1wtcXVlcnlcZlAoMSksCitcZkJkZWJcZlAoNSksIFxmQmRlYlwtY29udHJvbFxmUCg1KSwgXGZCZHBrZy5jZmdcZlAoNSkgdW5kIFxmQmRwa2dcLXJlY29uZmlndXJlXGZQKDgpLgorLgorLlNIIEZFSExFUgorXGZCXC1cLW5vXC1hY3RcZlAgZ2lidCBnZXf2aG5saWNoIHdlbmlnZXIgSW5mb3JtYXRpb25lbiBhbHMgaGlsZnJlaWNoIHNlaW4KK2v2bm50ZW4uCisuCisuU0ggQVVUT1JFTgorTGVzZW4gU2llIFxmSS91c3Ivc2hhcmUvZG9jL2Rwa2cvVEhBTktTXGZQIGb8ciBkaWUgTGlzdGUgZGVyIExldXRlLCBkaWUgenUKK1xmQmRwa2dcZlAgYmVpZ2V0cmFnZW4gaGFiZW4uCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9kZS9kcGtnLmNmZy41IGIvZHBrZy0xLjE2LjEuMS9tYW4vZGUvZHBrZy5jZmcuNQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jZTZmZTRhCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vZGUvZHBrZy5jZmcuNQpAQCAtMCwwICsxLDM3IEBACisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkcGtnLmNmZyA1IDIwMDlcLTA5XC0wNSBEZWJpYW5cLVByb2pla3QgZHBrZ1wtUHJvZ3JhbW1zYW1tbHVuZworLlNIIE5BTUUKK2Rwa2cuY2ZnIFwtIGRwa2cgS29uZmlndXJhdGlvbnNkYXRlaQorLgorLlNIIEJFU0NIUkVJQlVORworRGllc2UgRGF0ZWkgZW50aORsdCBTdGFuZGFyZG9wdGlvbmVuIGb8ciBkcGtnLiBKZWRlIFplaWxlIGVudGjkbHQgZWluZQorZWluemVsbmUgT3B0aW9uLCBkaWUgZXhha3QgZGllIGdsZWljaGUgd2llIGb8ciBkaWUgbm9ybWFsZW4KK0tvbW1hbmRvemVpbGVuXC1PcHRpb24gdm9uIGRwa2cgc2luZCwgYWJnZXNlaGVuIHZvbiBkZW4gZWlubGVpdGVuZGVuCitHZWRhbmtlbnN0cmljaGVuLCBkaWUgaGllciBuaWNodCB2ZXJ3ZW5kZXQgd2VyZGVuLiBBbmb8aHJ1bmdzemVpY2hlbgorKLtRdW90ZXOrKSB1bSBPcHRpb25zd2VydGUgd2VyZGVuIGVudGZlcm50LiBLb21tZW50YXJlIHNpbmQgZHVyY2ggRWlubGVpdGVuCitlaW5lciBaZWlsZSBtaXQgZWluZW0gUmF1dGVuemVpY2hlbiAoIlxmQiNcZlAiKSBlcmxhdWJ0LgorLgorLlNIIERBVEVJRU4KK1xmSS9ldGMvZHBrZy9kcGtnLmNmZy5kL1swXC05YVwtekFcLVpfXC1dKlxmUAorLmJyCitcZkkvZXRjL2Rwa2cvZHBrZy5jZmdcZlAKKy5icgorXGZJfi8uZHBrZy5jZmdcZlAKKy4KKy5TSCBBVVRPUgorTGVzZW4gU2llIFxmSS91c3Ivc2hhcmUvZG9jL2Rwa2cvVEhBTktTXGZQIGb8ciBkaWUgTGlzdGUgZGVyIExldXRlLCBkaWUgenUKK1xmQmRwa2dcZlAgYmVpZ2V0cmFnZW4gaGFiZW4uCisuCisuU0gg3EJFUlNFVFpVTkcKK0RpZSBkZXV0c2NoZSDcYmVyc2V0enVuZyB3dXJkZSAyMDA0LCAyMDA2LTIwMTEgdm9uIEhlbGdlIEtyZXV0em1hbm4KKzxkZWJpYW5AaGVsZ2VmamVsbC5kZT4sIDIwMDcgdm9uIEZsb3JpYW4gUmVobmlzY2ggPGVpeG1hbkBnbXguZGU+IHVuZAorMjAwOCB2b24gU3ZlbiBKb2FjaGltIDxzdmVuam9hY0BnbXguZGU+CithbmdlZmVydGlndC4gRGllc2Ug3GJlcnNldHp1bmcgaXN0IEZyZWllIERva3VtZW50YXRpb247IGxlc2VuIFNpZSBkaWUKK0dOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIFZlcnNpb24gMiBvZGVyIG5ldWVyIGb8ciBkaWUgS29waWVyYmVkaW5ndW5nZW4uCitFcyBnaWJ0IEtFSU5FIEhBRlRVTkcuCisuU0ggIlNJRUhFIEFVQ0giCitcZkJkcGtnXGZQKDEpLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vZGUvZHNlbGVjdC4xIGIvZHBrZy0xLjE2LjEuMS9tYW4vZGUvZHNlbGVjdC4xCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjc2ZGMzZTQKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9kZS9kc2VsZWN0LjEKQEAgLTAsMCArMSw0NzkgQEAKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlRIIGRzZWxlY3QgMSAyMDExXC0wOFwtMTQgRGViaWFuXC1Qcm9qZWt0IERlYmlhbgorLlNIIE5BTUUKK2RzZWxlY3QgXC0gRGViaWFuXC1QYWtldHZlcndhbHR1bmdzb2JlcmZs5GNoZQorLgorLlNIINxCRVJTSUNIVAorXGZCZHNlbGVjdFxmUCBbXGZJT3B0aW9uXGZQLi4uXSBcZklBa3Rpb25cZlAKKy4KKy5TSCBCRVNDSFJFSUJVTkcKK1xmQmRzZWxlY3RcZlAKK2lzdCBlaW5lIGRlciBwcmlt5HJlbiBCZW51dHplcnNjaG5pdHRzdGVsbGVuIHp1ciBWZXJ3YWx0dW5nIHZvbiBQYWtldGVuIGF1ZgorZWluZW0gRGViaWFuXC1TeXN0ZW0uIEltIEJhc2lzXC1NZW78IHZvbiBcZkJkc2VsZWN0XGZQIGthbm4gZGVyIFN5c3RlbWFkbWluaXN0cmF0b3I6CisgXC0gRGllIExpc3RlIGRlciB2ZXJm/GdiYXJlbiBQYWtldHZlcnNpb25lbiBha3R1YWxpc2llcmVuLAorIFwtIERlbiBTdGF0dXMgZGVyIGluc3RhbGxpZXJ0ZW4gdW5kIHZlcmb8Z2JhcmVuIFBha2V0ZSBiZXRyYWNodGVuLAorIFwtIERpZSBQYWtldGF1c3dhaGwg5G5kZXJuIHVuZCBBYmjkbmdpZ2tlaXRlbiB2ZXJ3YWx0ZW4sCisgXC0gTmV1ZSBQYWtldGUgaW5zdGFsbGllcmVuIG9kZXIgZWluIFVwZ3JhZGUgYXVmIG5ldWVyZSBWZXJzaW9uZW4gZHVyY2hm/GhyZW4uCisuUFAKK1xmQmRzZWxlY3RcZlAgYXJiZWl0ZXQgYWxzIE9iZXJmbORjaGUgdm9uIFxmQmRwa2dcZlAoMSksIGRlbSBzeXN0ZW1uYWhlbgorRGViaWFuXC1QYWtldFwtSGFuZGhhYnVuZ3N3ZXJremV1Zy4gRXMgYmlldGV0IGVpbmVuCitWb2xsYmlsZHNjaGlybVwtUGFrZXRhdXN3YWhsXC1WZXJ3YWx0ZXIgbWl0IGVpbmVtIFBha2V0ZWFiaORuZ2lna2VpdHNcLSB1bmQKK1wta29uZmxpa3Rs9nNlci4gQmVpIEF1ZnJ1ZiBtaXQgQWRtaW5pc3RyYXRvcnByaXZpbGVnaWVuIGv2bm5lbiBQYWtldGUKK2luc3RhbGxpZXJ0IHVuZCBlbnRmZXJudCBzb3dpZSBVcGdyYWRlcyBkdXJjaGdlZvxocnQgd2VyZGVuLiBWZXJzY2hpZWRlbmUKK1p1Z3JpZmZzbWV0aG9kZW4ga/ZubmVuIGtvbmZpZ3VyaWVydCB3ZXJkZW4gdW0gdmVyZvxnYmFyZSBQYWtldGluZm9ybWF0aW9uZW4KK3VuZCBpbnN0YWxsaWVyYmFyZSBQYWtldGUgYXVzIFBha2V0ZGVwb3RzIHp1IGhvbGVuLiBBYmjkbmdpZyB2b24gZGVyCit2ZXJ3ZW5kZXRlbiBadWdyaWZmc21ldGhvZGUga/ZubmVuIGRpZXNlIERlcG90cyD2ZmZlbnRsaWNoZSBBcmNoaXZcLVNlcnZlciBpbQorSW50ZXJuZXQsIGxva2FsZSBBcmNoaXZcLVNlcnZlciBvZGVyIENEXC1ST01zIHNlaW4uIERpZSBlbXBmb2hsZW5lCitadWdyaWZmc21ldGhvZGUgaXN0IFxmSWFwdFxmUCwgZGllIHZvbSBQYWtldCBcZkJhcHRcZlAgYmVyZWl0Z2VzdGVsbHQgd2lyZC4KKy5QUAorTm9ybWFsZXJ3ZWlzZSB3aXJkIFxmQmRzZWxlY3RcZlAgb2huZSBQYXJhbWV0ZXIgYXVmZ2VydWZlbi4gRXMgd2lyZCBlaW4KK2ludGVyYWt0aXZlcyBNZW78IHBy5HNlbnRpZXJ0LCBkYXMgZGVtIEJlbnV0emVyIGVpbmUgTGlzdGUgdm9uIEFrdGlvbmVuCithbmJpZXRldC4gRmFsbHMgZWluZSBBa3Rpb24gYWxzIEFyZ3VtZW50IPxiZXJnZWJlbiB3aXJkLCB3aXJkIGRpZXNlIEFrdGlvbgorc29mb3J0IGJlZ29ubmVuLiBFcyBzaW5kIG5vY2ggbWVocmVyZSBLb21tYW5kb3plaWxlbnBhcmFtZXRlciB2b3JoYW5kZW4sIHVtCitkYXMgTGF1ZnplaXR2ZXJoYWx0ZW4gdm9uIFxmQmRzZWxlY3RcZlAgenUgdmVy5G5kZXJuIG9kZXIgenVz5HR6bGljaGUKK0luZm9ybWF0aW9uZW4g/GJlciBkYXMgUHJvZ3JhbW0gYW56dXplaWdlbi4KKy4KKy5TSCBPUFRJT05FTgorQWxsZSBPcHRpb25lbiBr9m5uZW4gc293b2hsIGF1ZiBkZXIgS29tbWFuZG96ZWlsZSBhbHMgYXVjaCBpbiBkZXIKK0tvbmZpZ3VyYXRpb25zZGF0ZWkgXGZJL2V0Yy9kcGtnL2RzZWxlY3QuY2ZnXGZQIG9kZXIgaW4gZGVuIERhdGVpZW4gaW0KK0tvbmZpZ3VyYXRpb25zdmVyemVpY2huaXMgXGZJL2V0Yy9kcGtnL2RzZWxlY3QuY2ZnLmQvXGZQIHZvbiBcZkJkc2VsZWN0XGZQCithbmdlZ2ViZW4gd2VyZGVuLiBKZWRlIFplaWxlIGluIGRlciBLb25maWd1cmF0aW9uc2RhdGVpIGlzdCBlbnR3ZWRlciBlaW5lCitPcHRpb24gKGV4YWt0IGlkZW50aXNjaCBtaXQgZGVyIEtvbW1hbmRvemVpbGVub3B0aW9uLCBudXIgb2huZSBlaW5sZWl0ZW5kZQorR2VkYW5rZW5zdHJpY2hlKSBvZGVyIGVpbiBLb21tZW50YXIgKGZhbGxzIHNpZSBtaXQgXGZCI1xmUCBiZWdpbm50KS4KKy5icgorLlRQIAorXGZCXC1cLWFkbWluZGlyXGZQXGZJIFZlcnplaWNobmlzXGZQCivEbmRlcnQgZGFzIFZlcnplaWNobmlzLCBpbiBkZW0gZGllIERhdGVpZW4gu1xmSXN0YXR1c1xmUKssILtcZklhdmFpbGFibGVcZlCrIHVuZAor5GhubGljaGUgRGF0ZWllbiB2b24gRHBrZyBsaWVnZW4uIFN0YW5kYXJkbeTfaWcgaXN0IGRpZXMgXGZJL3Zhci9saWIvZHBrZ1xmUAordW5kIG5vcm1hbGVyd2Vpc2Ugc29sbHRlIGVzIGtlaW5lbiBHcnVuZCBnZWJlbiwgZGllc2VzIHp1IORuZGVybi4KKy5UUCAKK1xmQlwtXC1kZWJ1Z1xmUFxmSSBEYXRlaVxmUHxcZkkgXGZQXGZCXC1EXGZQXGZJRGF0ZWlcZlAKK0FrdGl2aWVyZSBEZWJ1Z2dpbmcuIERlYnVnXC1JbmZvcm1hdGlvbmVuIHdlcmRlbiBuYWNoIFxmSURhdGVpXGZQIGdlc2VuZGV0LgorLlRQIAorXGZCXC1cLWV4cGVydFxmUAorQWt0aXZpZXJ0IGRlbiBFeHBlcnRlbm1vZHVzLCBkLmguIHplaWd0IGtlaW5lIG32Z2xpY2hlcndlaXNlIG5lcnZlbmRlbgorSGlsZmVpbmZvcm1hdGlvbmVuIGFuLgorLlRQIAorW1xmQlwtXC1jb2xvdXJcZlB8XGZCXC1cLWNvbG9yXGZQIFxmSUJpbGRzY2hpcm10ZWlsOlxmUFtcZklWb3JkZXJncnVuZFxmUF0sW1xmSUhpbnRlcmdydW5kXGZQXVtcZkk6QXR0clxmUFtcZkkrQXR0cisuLlxmUF1dXQorS29uZmlndXJpZXJ0IGRpZSBCaWxkc2NoaXJtZmFyYmVuLiBEaWVzIGZ1bmt0aW9uaWVydCBudXIsIGZhbGxzIElocgorQmlsZHNjaGlybSBGYXJiZW4gdW50ZXJzdPx0enQuIERpZXNlIE9wdGlvbiBrYW5uIG1laHJmYWNoIHZlcndlbmRldCB3ZXJkZW4KKyh1bmQgd2lyZCBhbSBiZXN0ZW4gaW4gXGZJZHNlbGVjdC5jZmdcZlAgdmVyd2VuZGV0KS4gSmVkZSBWZXJ3ZW5kdW5nIORuZGVydCBkaWUKK0ZhcmJlbiAodW5kIG9wdGlvbmFsIGFuZGVyZSBBdHRyaWJ1dGUpIGVpbmVzIFRlaWxzIGRlcyBCaWxkc2NoaXJtcy4gRGllCitUZWlsZSBkZXMgQmlsZHNjaGlybXMgKHZvbiBvYmVuIG5hY2ggdW50ZW4pIHNpbmQ6CisuUlMKKy5UUCAKK1xmQnRpdGxlXGZQCitEZXIgQmlsZHNjaGlybVwtVGl0ZWwuCisuVFAgCitcZkJsaXN0aGVhZFxmUAorRGllIEtvcGZ6ZWlsZSD8YmVyIGRlciBQYWtldGxpc3RlLgorLlRQIAorXGZCbGlzdFxmUAorRGllIHNjcm9sbGVuZGUgTGlzdGUgdm9uIFBha2V0ZW4gKHVuZCBhdWNoIGV0d2FzIEhpbGZldGV4dCkuCisuVFAgCitcZkJsaXN0c2VsXGZQCitEZXIgYXVzZ2V35GhsdGUgRWludHJhZyBpbiBkZXIgTGlzdGUuCisuVFAgCitcZkJwa2dzdGF0ZVxmUAorSW4gZGVyIExpc3RlIGRlciBQYWtldGUsIGRlciBUZXh0LCBkZXIgZGVuIGFrdHVlbGxlbiBadXN0YW5kIGplZGVzIFBha2V0cworYW56ZWlndC4KKy5UUCAKK1xmQnBrZ3N0YXRlc2VsXGZQCitJbiBkZXIgTGlzdGUgZGVyIFBha2V0ZSwgZGVyIFRleHQsIGRlciBkZW4gYWt0dWVsbGVuIFp1c3RhbmQgZGVzIGFrdHVlbGwKK2F1c2dld+RobHRlbiBQYWtldGVzIGFuemVpZ3QuCisuVFAgCitcZkJpbmZvaGVhZFxmUAorRGllIEtvcGZ6ZWlsZSwgZGllIGRlbiBadXN0YW5kIGRlcyBha3R1ZWxsIGF1c2dld+RobHRlbiBQYWtldGVzIGFuemVpZ3QuCisuVFAgCitcZkJpbmZvZGVzY1xmUAorRGllIEt1cnpiZXNjaHJlaWJ1bmcgZGVzIFBha2V0cy4KKy5UUCAKK1xmQmluZm9cZlAKK1ZlcndlbmRldCB1bSBQYWtldGluZm9ybWF0aW9uZW4gd2llIGRpZSBQYWtldGJlc2NocmVpYnVuZyBhbnp1emVpZ2VuLgorLlRQIAorXGZCaW5mb2Zvb3RcZlAKK0RpZSB1bnRlcnN0ZSBaZWlsZSBkZXMgQmlsZHNjaGlybXMgYmVpIGRlciBQYWtldGF1c3dhaGwuCisuVFAgCitcZkJxdWVyeVxmUAorVmVyd2VuZGV0IHp1bSBBbnplaWdlbiB2b24gQWJmcmFnZXplaWxlbgorLlRQIAorXGZCaGVscHNjcmVlblxmUAorRmFyYmUgZGVyIEhpbGZlYmlsZHNjaGlybWUuCisuUkUKKy5QCitOYWNoIGRlbSBUZWlsIGRlcyBCaWxkc2NoaXJtcyBrb21tdCBlaW4gRG9wcGVscHVua3QgdW5kIGRpZSBGYXJiYW5nYWJlLiBTaWUKK2v2bm5lbiBlbnR3ZWRlciBkaWUgVm9yZGVyZ3J1bmRmYXJiZSwgZGllIEhpbnRlcmdydW5kZmFyYmUgb2RlciBiZWlkZQorYW5nZWJlbiB1bmQgZGFtaXQgZGllIGVpbmdlYmF1dGVuIFdlcnRlIPxiZXJzY2hyZWliZW4uIFZlcndlbmRlbiBTaWUgZGllCitTdGFuZGFyZFwtRmFyYm5hbWVuIHZvbiBDdXJzZXMuCisuUAorT3B0aW9uYWwga2FubiBuYWNoIGRlciBGYXJiYW5nYWJlIGVpbiB3ZWl0ZXJlciBEb3BwZWxwdW5rdCB1bmQgZWluZQorQXR0cmlidXRcLUFuZ2FiZSBmb2xnZW4uIERpZXMgaXN0IGVpbmUgTGlzdGUgdm9uIGVpbmVtIG9kZXIgbWVocmVyZW4KK0F0dHJpYnV0KGVuKSwgZ2V0cmVubnQgZHVyY2ggUGx1c1wtWmVpY2hlbiAouyurKS4gRm9sZ2VuZGUgQXR0cmlidXRlIHNpbmQKK3Zlcmb8Z2JhciAoYWJlciBuaWNodCBhbGxlIGZ1bmt0aW9uaWVyZW4gaW4gYWxsZW4gVGVybWluYWxzKTogbm9ybWFsLAorc3RhbmRvdXQsIHVuZGVybGluZSwgcmV2ZXJzZSwgYmxpbmssIGJyaWdodCwgZGltLCBib2xkCisuVFAgCitcZkJcLVwtaGVscFxmUAorR2liIGVpbmVuIGt1cnplbiBIaWxmZXRleHQgYXVzIHVuZCBiZWVuZGUgc2ljaCBlcmZvbGdyZWljaC4KKy5UUCAKK1xmQlwtXC12ZXJzaW9uXGZQCitHZWJlIFZlcnNpb25zaW5mb3JtYXRpb25lbiBhdXMgdW5kIGJlZW5kZSBzaWNoIGVyZm9sZ3JlaWNoLgorLgorLlNIIEFLVElPTkVOCitXZW5uIFxmQkRzZWxlY3RcZlAgZ2VzdGFydGV0IHdpcmQsIGthbm4gZXMgZGllIGZvbGdlbmRlbiBBa3Rpb25lbiBkdXJjaGb8aHJlbiwKK2VudHdlZGVyIGRpcmVrdCwgZmFsbHMgc2llIGF1ZiBkZXIgS29tbWFuZG96ZWlsZSBhbmdlZ2ViZW4gd3VyZGUgb2RlciBpbmRlbQorZGVtIEJlbnV0emVyIGVpbiBNZW78IGRlciB2ZXJm/GdiYXJlbiBBa3Rpb25lbiBiZWkgaW50ZXJrYXRpdmVuIEJldHJpZWIKK2FuZ2V6ZWlndCB3aXJkOgorLlNTIFp1Z3JpZmYKK1fkaGxlIHVuZCBrb25maWd1cmllcmUgZWluZSBadWdyaWZmc21ldGhvZGUgZvxyIFBha2V0ZGVwb3RzLgorLnNwCitTdGFuZGFyZG3k32lnIHN0ZWxsdCBcZkJkc2VsZWN0XGZQIG1laHJlcmUgTWV0aG9kZW4gd2llIFxmSWNkcm9tXGZQLCBcZkltdWx0aV9jZFxmUCwKK1xmSW5mc1xmUCwgXGZJbXVsdGlfbmZzXGZQLCBcZkloYXJkZGlza1xmUCwgXGZJbW91bnRlZFxmUCwgXGZJbXVsdGlfbW91bnRcZlAsIFxmSWZsb3BweVxmUAorb2RlciBcZklmdHBcZlAgenVyIFZlcmb8Z3VuZywgYWJlciBhbmRlcmUgUGFrZXRlIGv2bm5lbiB6dXPkdHpsaWNoZSBNZXRob2RlbgorYmVyZWl0c3RlbGxlbiwgei5CLiBzdGVsbHQgZGFzIFxmQmFwdFxmUFwtUGFrZXQgZGllIFxmSWFwdFxmUFwtWnVncmlmZnNtZXRob2RlCitiZXJlaXQuCisuc3AKK0RpZSBWZXJ3ZW5kdW5nIGRlciBcZklhcHRcZlBcLVp1Z3JpZmZzbWV0aG9kZSB3aXJkIG5hY2hkcvxja2xpY2ggZW1wZm9obGVuLgorLnNwCisuU1MgRXJuZXVlcm4KK0RpZSB2ZXJm/GdiYXJlIFBha2V0ZGF0ZW5iYW5rIGF1ZmZyaXNjaGVuLgorLnNwCitIb2x0IGRpZSBMaXN0ZSBkZXIgdmVyZvxnYmFyZW4gUGFrZXR2ZXJzaW9uZW4gYXVzIGRlbSBQYWtldFwtRGVwb3QsIGRhcyBm/HIKK2RpZSBha3R1ZWxsZSBadWdyaWZmc21ldGhvZGUga29uZmlndXJpZXJ0IGlzdCwgdW5kIGFrdHVhbGlzaWVydCBkaWUKK0RhdGVuYmFuayB2b24gZHBrZy4gRGllIFBha2V0bGlzdGUgd2lyZCBpbSBEZXBvdCB0eXBpc2NoZXJ3ZWlzZSBpbiBEYXRlaWVuCittaXQgZGVuIE5hbWVuIFxmSVBhY2thZ2VzXGZQIG9kZXIgXGZJUGFja2FnZXMuZ3pcZlAgYmVyZWl0Z2VzdGVsbHQuIERpZXNlIERhdGVpZW4KK2v2bm5lbiB2b24gZGVuIEJldHJldWVybiBkZXMgRGVwb3RzIG1pdCBkZW0gUHJvZ3JhbW0gXGZCZHBrZ1wtc2NhbnBhY2thZ2VzXGZQKDEpCitlcnN0ZWxsdCB3ZXJkZW4uCisuc3AKK0RpZSBEZXRhaWxzIGRlciBBa3Rpb24gu0VybmV1ZXJuqyBo5G5nZW4gdm9uIGRlciBJbXBsZW1lbnRpZXJ1bmcgZGVyCitadWdyaWZmc21ldGhvZGUgYWIuIE5vcm1hbGVyd2Vpc2UgaXN0IGRlciBQcm96ZXNzIHVua29tcGxpemllcnQgdW5kIHZlcmxhbmd0CitrZWluZSBCZW51dHplcmludGVyYWt0aW9uZW4uCisuc3AKKy5TUyBBdXN35GhsZW4KK1Bha2V0YXVzd2FobGVuIG9kZXIgXC1hYmjkbmdpZ2tlaXRlbiBiZXRyYWNodGVuIG9kZXIgdmVyd2FsdGVuLgorLnNwCitEaWVzIGlzdCBkaWUgSGF1cHRmdW5rdGlvbmFsaXTkdCB2b24gXGZCZHNlbGVjdFxmUC4gSW0gQXVzd2FobGJpbGRzY2hpcm0ga2FubgorZGVyIEJlbnV0emVyIGRpZSBMaXN0ZSBkZXIgdmVyZvxnYmFyZW4gdW5kIGluc3RhbGxpZXJ0ZW4gUGFrZXRlCitiZWd1dGFjaHRlbi4gV2VubiBcZkJkc2VsZWN0XGZQIG1pdCBhZG1pbmlzdHJhdGl2ZW4gUmVjaHRlbiBhdXNnZWb8aHJ0IHdpcmQgaXN0CitlcyBhdWNoIG32Z2xpY2gsIGRlbiBQYWtldGF1c3dhaGx6dXN0YW5kIGludGVyYWt0aXYgenUgdmVy5G5kZXJuLiBcZkJkc2VsZWN0XGZQCit2ZXJmb2xndCBkaWUgQXVzd2lya3VuZ2VuIGRpZXNlciDEbmRlcnVuZ2VuIGF1ZiBhbmRlcmUgYWJo5G5naWdlIG9kZXIgaW0KK0tvbmZsaWt0IHN0ZWhlbmRlIFBha2V0ZS4KKy5zcAorV2VubiBlaW4gS29uZmxpa3Qgb2RlciBlaW5lIGZlaGxnZXNjaGxhZ2VuZSBBYmjkbmdpZ2tlaXQgZXJrYW5udCB3aXJkLCB3aXJkCitkZW0gQmVudXR6ZXIgZWluIFVudGVyYmlsZHNjaGlybSBtaXQgZWluZXIgTPZzdW5nIGRlcgorQWJo5G5naWdrZWl0c3Byb2JsZW1hdGlrIGFuZ2Vib3Rlbi4gQXVmIGRpZXNlbSBCaWxkc2NoaXJtIHdpcmQgZWluZSBMaXN0ZQorZGVyIGltIEtvbmZsaWt0IHN0ZWhlbmRlbiBvZGVyIGFiaORuZ2lnZW4gUGFrZXRlIGdlemVpZ3QsIHdvYmVpIGb8ciBqZWRlcworYXVmZ2Vm/GhydGUgUGFrZXQgZGVyIEdydW5kIGViZW5mYWxscyBhbmdlZ2ViZW4gaXN0LiBEZXIgQmVudXR6ZXIga2FubiBkaWUKK1ZvcnNjaGzkZ2Ugdm9uIFxmQmRzZWxlY3RcZlAgYW5uZWhtZW4sIHNpY2gg/GJlciBzaWUgaGlud2Vnc2V0emVuIG9kZXIgYWxsZQorxG5kZXJ1bmdlbiB6dXL8Y2tuZWhtZW4sIGRhcnVudGVyIGRpZWplbmlnZW4sIGRpZSB6dSBkZW4gdW5lcmb8bGx0ZW4KK0FiaORuZ2lna2VpdGVuIG9kZXIgS29uZmxpa3RlbiBm/GhydGVuLgorLnNwCitEaWUgVmVyd2VuZHVuZyBkZXMgaW50ZXJha3RpdmVuIFBha2V0YXVzd2FobGJpbGRzY2hpcm1zIHdpcmQgdW50ZW4KK2RldGFpbGxpZXJ0ZXIgYmVzY2hyaWViZW4uCisuc3AKKy5TUyBJbnN0YWxsaWVyZW4KK0luc3RhbGxpZXJ0IGF1c2dld+RobHRlIFBha2V0ZS4KKy5zcAorRGllIGtvbmZpZ3VyaWVydGUgWnVncmlmZnNtZXRob2RlIHdpcmQgaW5zdGFsbGllcmJhcmUgb2RlciBm/HIgZWluIFVwZ3JhZGUKK3Zlcmb8Z2JhcmUgUGFrZXRlIGF1cyBkZW4gcmVsZXZhbnRlbiBEZXBvdHMgaG9sZW4gdW5kIGRhbm4gbWl0dGVscyBcZkJkcGtnXGZQCitpbnN0YWxsaWVyZW4uIEFiaORuZ2lnIHZvbiBkZXIgSW1wbGVtZW50YXRpb24gZGVyIFp1Z3JpZmZzbWV0aG9kZSBr9m5uZW4KK2FsbGUgUGFrZXRlIHZvciBkZXIgSW5zdGFsbGF0aW9uIGJlcmVpdHMgZ2Vob2x0IHdlcmRlbiwgb2RlciBiZWkgQmVkYXJmCitnZWhvbHQgd2VyZGVuLiBCZWkgZWluaWdlbiBadWdyaWZmc21ldGhvZGVuIHdlcmRlbiBhdWNoIFBha2V0ZSBlbnRmZXJudCwgZGllCit6dXIgRW50ZmVybnVuZyBtYXJraWVydCB3dXJkZW4uCisuc3AKK0ZhbGxzIHfkaHJlbmQgZGVyIEluc3RhbGxhdGlvbiBlaW4gRmVobGVyIGF1ZnRyYXQgaXN0IGVzIG5vcm1hbGVyd2Vpc2UKK2VtcGZlaGxlbnN3ZXJ0LCBkaWUgSW5zdGFsbGF0aW9uIGVybmV1dCBkdXJjaHp1ZvxocmVuLiBJbiBkZW4gbWVpc3RlbiBG5GxsZW4KK3dpcmQgZGFzIFByb2JsZW0gdmVyc2Nod2luZGVuIG9kZXIgZ2Vs9nN0IHdlcmRlbi4gRmFsbHMgUHJvYmxlbWUgYmxlaWJlbgorb2RlciBkaWUgZHVyY2hnZWb8aHJ0ZSBJbnN0YWxsYXRpb24gbmljaHQga29ycmVrdCB3YXIsIHVudGVyc3VjaGVuIFNpZSBiaXR0ZQorZGVuIEdydW5kIHVuZCBkaWUgVW1zdORuZGUgdW5kIHJlaWNoZW4gU2llIGVpbmVuIEZlaGxlciBpbiBkZXIKK0ZlaGxlcmRhdGVuYmFuayB2b24gRGViaWFuIGVpbi4gQW5sZWl0dW5nZW4gd2llIGRpZXMgZXJmb2xnZW4ga2Fubiwgc2luZCBhdWYKK2h0dHA6Ly9idWdzLmRlYmlhbi5vcmcvIHZlcmb8Z2JhciBvZGVyIGv2bm5lbiBkdXJjaCBMZXNlbiBkZXIgRG9rdW1lbnRhdGlvbgorZvxyIFxmQmJ1Z1xmUCgxKSBvZGVyIFxmQnJlcG9ydGJ1Z1xmUCgxKSAoZmFsbHMgZGllc2UgaW5zdGFsbGllcnQgc2luZCkgZXJoYWx0ZW4KK3dlcmRlbi4KKy5zcAorRGV0YWlscyBkZXIgSW5zdGFsbGF0aW9uc2FrdGlvbiBo5G5nZW4gdm9uIGRlciBJbXBsZW1lbnRpZXJ1bmcgZGVyCitadWdyaWZmc21ldGhvZGUgYWIuIERpZSBBdWZtZXJrc2Fta2VpdCB1bmQgRWluZ2FiZSBkZXMgQmVudXR6ZXJzIGv2bm50ZW4KK3fkaHJlbmQgZGVyIEluc3RhbGxhdGlvbiwgS29uZmlndXJhdGlvbiBvZGVyIGRlbSBFbnRmZXJuZW4gdm9uIFBha2V0ZW4KK25vdHdlbmRpZyBzZWluLiBEaWVzIGjkbmd0IHZvbiBkZW4gQmV0cmV1ZXJza3JpcHRlbiBpbSBQYWtldCBhYi4gRWluaWdlCitQYWtldGUgdmVyd2VuZGVuIGRpZSBCaWJsaW90aGVrIFxmQmRlYmNvbmZcZlAoMSksIGRpZSBmbGV4aWJsZXJlIG9kZXIgc29nYXIKK2F1dG9tYXRpc2llcnRlIEluc3RhbGxhdGlvbnNlaW5yaWNodHVuZ2VuIGVybGF1YnQuCisuc3AKKy5TUyBLb25maWcKK0tvbmZpZ3VyaWVydCBhbGxlIGJpc2hlciBpbnN0YWxsaWVydGVuLCBhYmVyIG5vY2ggbmljaHQgdm9sbCBrb25maWd1cmllcnRlbgorUGFrZXRlLgorLnNwCisuU1MgTPZzY2hlbgorTPZzY2h0IG9kZXIgZW50ZmVybnQgaW5zdGFsbGllcnRlIFBha2V0ZSB2b2xsc3TkbmRpZywgZGllIHp1bSBM9nNjaGVuCittYXJraWVydCBzaW5kLgorLnNwCisuU1MgQmVlbmRlbgorXGZCRHNlbGVjdFxmUCBiZWVuZGVuCisuc3AKK0JlZW5kZXQgZGFzIFByb2dyYW1tIG1pdCBkZW0gRmVobGVyY29kZSBOdWxsIChlcmZvbGdyZWljaCkuCisuc3AKKy4KKy5TSCBQYWtldGF1c3dhaGx2ZXJ3YWx0dW5nCisuc3AKKy5TUyBFaW5m/GhydW5nCisuc3AKK1xmQmRzZWxlY3RcZlAgc2V0enQgZGVuIEFkbWluaXN0cmF0b3IgZGlyZWt0IGVpbmlnZW4gS29tcGxleGl05HRlbiBhdXMsIGRpZQorYmVpbSBWZXJ3YWx0ZW4gZ3Jv32VyIFBha2V0bWVuZ2VuIG1pdCB2aWVsZW4gQWJo5G5naWdrZWl0ZW4gdW50ZXJlaW5hbmRlcgorYXVmdHJldGVuLiBG/HIgZWluZW4gQmVudXR6ZXIsIGRlciBzaWNoIG1pdCBkZW4gS29uemVwdGVuIHVuZCBkZW4gQXJ0ZW4gZGVzCitEZWJpYW5cLVBha3R2ZXJ3YWx0dW5nc3N5c3RlbXMgbmljaHQgYXVza2VubnQga2FubiBkaWVzIHJlY2h0IPxiZXJ35Gx0aWdlbmQKK3NlaW4uIE9id29obCBcZkJkc2VsZWN0XGZQIGRhcmF1ZiBhYnppZWx0LCBkaWUgUGFrZXR2ZXJ3YWx0dW5nIHVuZAorXC1hZG1pbmlzdHJhdGlvbiB6dSB2ZXJlaW5mYWNoZW4sIGthbm4gZXMgZGF6dSBudXIgZWluIFdlcmt6ZXVnIHNlaW4gdW5kCitzb21pdCBuaWNodCBhdXNyZWljaGVuZGUgQWRtaW5pc3RyYXRvcmbkaGlna2VpdGVuIHVuZAorQWRtaW5pc3RyYXRvcnZlcnN05G5kbmlzIGVyc2V0emVuLiBFcyB3aXJkIHZvbSBCZW51dHplciBlcndhcnRldCwgZGFzcyBlcgorbWl0IGRlbiBLb256ZXB0ZW4gZGVzIHVudGVybGllZ2VuZGVuIERlYmlhblwtUGFrZXRzeXN0ZW1zIHZlcnRyYXV0IGlzdC4gSW0KK1p3ZWlmZWxzZmFsbCB6aWVoZW4gU2llIGRpZSBIYW5kYnVjaHNlaXRlIFxmQmRwa2dcZlAoMSkgdW5kIGRhcworRGViaWFuXC1SaWNodGxpbmllblwtSGFuZGJ1Y2ggenUgUmF0ZS4gTGV0enRlcmVzIGlzdCBhdWYgRW5nbGlzY2ggaW0gUGFrZXQKK1xmQmRlYmlhblwtcG9saWN5XGZQIGVudGhhbHRlbi4KKy5zcAorRmFsbHMgXGZCZHNlbGVjdFxmUCBuaWNodCBpbSBFeHBlcnRlblwtIG9kZXIgZGlyZWt0ZW4gTW9kdXMgbOR1ZnQgd2lyZCB6dWVyc3QKK2VpbiBIaWxmZWJpbGRzY2hpcm0gYW5nZXplaWd0LCB3ZW5uIGRpZXNlIEFrdGlvbiB2b20gTWVu/CBhdXNnZXfkaGx0Cit3aXJkLiBEZW0gQmVudXR6ZXIgd2lyZCBcZkluYWNoZHL8Y2tsaWNoXGZQIGVtcGZvaGxlbiwgZGllIGdlc2FtdGVuIGluIGRlcgorT25saW5lXC1IaWxmZSBhbmdlemVpZ3RlbiBJbmZvcm1hdGlvbmVuIHp1IHBy/GZlbiwgd2VubiBkaWVzZSBhbmdlemVpZ3QKK3dlcmRlbi4gRGllIE9ubGluZVwtSGlsZmViaWxkc2NoaXJtZSBr9m5uZW4gamVkZXJ6ZWl0IG1pdCBkZXIgVGFzdGUgXGZCuz+rXGZQCithdWZnZXJ1ZmVuIHdlcmRlbi4KKy5zcAorLlNTIEJpbGRzY2hpcm1sYXlvdXQKKy5zcAorRGVyIEF1c3dhaGxiaWxkc2NoaXJtIGlzdCBzdGFuZGFyZG3k32lnIGluIGVpbmUgb2JlcmUgdW5kIGVpbmUgdW50ZXJlIEjkbGZ0ZQorZ2V0ZWlsdC4gRGllIG9iZXJlIEjkbGZ0IHplaWd0IGVpbmUgTGlzdGUgdm9uIFBha2V0ZW4uIEVpbiBDdXJzb3JiYWxrZW4KK3fkaGx0IGluZGl2aWR1ZWxsZSBQYWtldGUgb2RlciwgZmFsbHMgenV0cmVmZmVuZCwgZWluZSBHcnVwcGUgdm9uIFBha2V0ZW4KK2R1cmNoIEF1c3dhaGwgZGVyIEdydXBwZW5rb3BmemVpbGUgYXVzLiBEaWUgdW50ZXJlIEjkbGZ0ZSBkZXMgQmlsZHNjaGlybXMKK3plaWd0IGVpbmlnZSBEZXRhaWxzIPxiZXIgZGFzIGRlcnplaXQgaW4gZGVyIG9iZXJlbiBI5GxmdGUgZGVzIEJpbGRzY2hpcm1zCithdXNnZXfkaGx0ZSBQYWtldCBhbi4gRGllIEFydCBkZXIgYW5nZXplaWd0ZW4gRGV0YWlscyBrYW5uIHZhcmlpZXJ0IHdlcmRlbi4KKy5zcAorRHL8Y2tlbiBkZXIgVGFzdGUgXGZCu0mrXGZQIHNjaGFsdGV0IHp3aXNjaGVuIGRlciBWb2xsYmlsZGRhcnN0ZWxsdW5nIGRlcgorUGFrZXRsaXN0ZSwgZWluZXIgdmVyZ3L232VydGVuIERhcnN0ZWxsdW5nIGRlciBQYWtldGRldGFpbHMgdW5kIGRlbQorZ2xlaWNobeTfaWcgZ2V0ZWlsdGVuIEJpbGRzY2hpcm0gdW0uCisuc3AKKy5TUyBQYWtldFwtRGV0YWlsYmV0cmFjaHR1bmcKKy5zcAorU3RhbmRhcmRt5N9pZyB6ZWlndCBkaWUgUGFrZXRcLURldGFpbGJldHJhY2h0dW5nIGRpZSBhdXNm/GhybGljaGUKK1Bha2V0YmVzY2hyZWlidW5nIGRlcyBkZXJ6ZWl0IGluIGRlciBQYWtldHN0YXR1c2xpc3RlIGF1c2dld+RobHRlbiBQYWtldHMuCitEaWUgQXJ0IGRlciBEZXRhaWxzIGthbm4gZHVyY2ggRHL8Y2tlbiBkZXIgVGFzdGUgXGZCu2mrXGZQIHVtZ2VzY2hhbHRldCB3ZXJkZW4uCitEaWVzZSB3ZWNoc2VsbiB6d2lzY2hlbjoKKyBcLSBkZXIgYXVzZvxocmxpY2hlbiBCZXNjaHJlaWJ1bmcKKyBcLSBkZXIgU3RldWVyaW5mb3JtYXRpb24gZvxyIGRpZSBpbnN0YWxsaWVydGUgVmVyc2lvbgorIFwtIGRlciBTdGV1ZXJpbmZvcm1hdGlvbiBm/HIgZGllIHZlcmb8Z2JhcmUgVmVyc2lvbgorLnNwCitJbSBCaWxkc2NoaXJtIGRlciBBYmjkbmdpZ2tlaXRzYXVmbPZzdW5nIGdpYnQgZXMgYXVjaCBkaWUgTfZnbGljaGtlaXQsIGRpZQorc3BlemlmaXppZXJ0ZW4gbmljaHQgYXVmZ2Vs9nN0ZW4gQWJo5G5naWdrZWl0ZW4gb2RlciBLb25mbGlrdGUgbWl0IEJlenVnIHp1CitkZW0gUGFrZXQgYW56dXNjaGF1ZW4gdW5kIGRlcmVuIEF1Zmxpc3R1bmcgenUgZXJyZWljaGVuLgorLnNwCisuU1MgUGFrZXRzdGF0dXNsaXN0ZQorLnNwCitEZXIgSGF1cHRhdXN3YWhsYmlsZHNjaGlybSB6ZWlndCBlaW5lIExpc3RlIGFsbGVyIFBha2V0ZSwgZGllIGRlbQorRGViaWFuXC1QYWtldHZlcndhbHR1bmdzc3lzdGVtIGJla2FubnQgc2luZC4gRGllcyBiZWluaGFsdGV0IGFsbGUgYXVmIGRlbQorU3lzdGVtIGluc3RhbGxpZXJ0ZW4gUGFrZXRlIHVuZCBQYWtldGUsIGRpZSBhdXMgZGVuIHZlcmb8Z2JhcmVuCitQYWtldGRhdGVuYmFua2VuIGJla2FubnQgc2luZC4KKy5zcAorRvxyIGplZGVzIFBha2V0IHplaWd0IGRpZSBMaXN0ZSBkZW4gUGFrZXRzdGF0dXMsIGRpZSBQcmlvcml05HQsIGRlbiBCZXJlaWNoLAoraW5zdGFsbGllcnRlIHVuZCB2ZXJm/GdiYXJlIFZlcnNpb25lbiwgZGVuIE5hbWVuIHVuZCBkaWUgS3VyemJlc2NocmVpYnVuZworZGVzIFBha2V0ZXMsIGFsbGVzIGluIGVpbmVyIFplaWxlLiBEdXJjaCBEcvxja2VuIGRlciBUYXN0ZSBcZkK7VqtcZlAga2FubiBkaWUKK0FuemVpZ2UgZGVyIGluc3RhbGxpZXJ0ZW4gdW5kIHZlcmb8Z2JhcmVuIFZlcnNpb24gendpc2NoZW4gZWluIHVuZCBhdXMKK3VtZ2VzY2hhbHRldCB3ZXJkZW4uIER1cmNoIERy/GNrZW4gZGVyIFRhc3RlIFxmQrt2q1xmUCB3aXJkIGRpZSBBbnplaWdlIGRlcworUGFrZXRzdGF0dXMgendpc2NoZW4gYXVzZvxocmxpY2ggdW5kIHZlcmv8cnp0IHVtZ2VzY2hhbHRldC4gRGllIHZlcmv8cnp0ZQorQW56ZWlnZSBpc3Qgdm9yZWluZ2VzdGVsbHQuCisuc3AKK0RpZSBLdXJ6c3RhdHVzYW5nYWJlIGJlc3RlaHQgYXVzIHZpZXIgVGVpbGVuOiBlaW5lciBGZWhsZXJtYXJraWVydW5nLCBkaWUKK25vcm1hbGVyd2Vpc2UgbGVlciBzZWluIHNvbGx0ZSwgZGVtIGFrdHVlbGxlbiBTdGF0dXMsIGRlbSBsZXR6dGVuCitBdXN3YWhsc3RhdHVzIHVuZCBkZW0gYWt0dWVsbGVuIEF1c3dhaGxzdGF0dXMuIERpZSBlcnN0ZW4gendlaSBiZXppZWhlbiBzaWNoCithdWYgZGVuIGRlcnplaXRpZ2VuIFN0YXR1cyBkZXMgUGFrZXRzLCBkYXMgendlaXRlIFBhYXIgYmVoYW5kZWxuIGRpZSB2b20KK0JlbnV0emVyIGdlc2V0enRlIEF1c3dhaGwuCisuc3AKK0RpZXMgc2luZCBkaWUgQmVkZXV0dW5nZW4gZGVyIGt1cnplbiBQYWtldHN0YXR1c1wtQW56ZWlnZVwtQ29kZXM6CisgRmVobGVybWFya2llcnVuZzoKKyAgXGZJbGVlclxmUCAgICBrZWluIEZlaGxlcgorICBcZkJSXGZQICAgICAgIHNjaHdlcndpZWdlbmRlciBGZWhsZXIsIE5ldWluc3RhbGxhdGlvbiBub3R3ZW5kaWc7CisgSW5zdGFsbGllcnRlciBTdGF0dXM6CisgIFxmSWxlZXJcZlAgICAgbmljaHQgaW5zdGFsbGllcnQ7CisgIFxmQipcZlAgICAgICAgdm9sbHN05G5kaWcgaW5zdGFsbGllcnQgdW5kIGtvbmZpZ3VyaWVydDsKKyAgXGZCXC1cZlAgICAgICAgbmljaHQgaW5zdGFsbGllcnQsIGFiZXIgZWluaWdlIEtvbmZpZ3VyYXRpb25zZGF0ZWllbiBr9m5udGVuIGJsZWliZW47CisgIFxmQlVcZlAgICAgICAgZW50cGFja3QsIGFiZXIgbm9jaCBuaWNodCBrb25maWd1cmllcnQ7CisgIFxmQkNcZlAgICAgICAgaGFsYiBrb25maWd1cmllcnQgKGVpbiBGZWhsZXIgaXN0IGF1ZmdldHJldGVuKTsKKyAgXGZCSVxmUCAgICAgICBoYWxiIGluc3RhbGxpZXJ0IChlaW4gRmVobGVyIGlzdCBhdWZnZXRyZXRlbikuCisgQWt0dWVsbGUgdW5kIGFuZ2Vmb3JkZXJ0ZSBBdXN3YWhsZW46CisgIFxmQipcZlAgICAgICAgbWFya2llcnQgenVyIEluc3RhbGxhdGlvbiBvZGVyIFVwZ3JhZGU7CisgIFxmQlwtXGZQICAgICAgIG1hcmtpZXJ0IHp1ciBFbnRmZXJudW5nLCBLb25maWd1cmF0aW9uc2RhdGVpZW4gYmxlaWJlbjsKKyAgXGZCPVxmUCAgICAgICBhdWYgu2hhbHRlbqs6IFBha2V0IHdpcmQg/GJlcmhhdXB0IG5pY2h0IHZlcmFyYmVpdGV0IHdlcmRlbjsKKyAgXGZCX1xmUCAgICAgICBtYXJraWVydCB6dW0gdm9sbHN05G5kaWdlbiBM9nNjaGVuLCBhdWNoIGRlciBLb25maWd1cmF0aW9uOworICBcZkJuXGZQICAgICAgIFBha2V0IGlzdCBuZXUgdW5kIG11c3MgZXJzdCBub2NoIG1hcmtpZXJ0IHdlcmRlbi4KKy5zcAorLlNTICJDdXJzb3JcLSB1bmQgQmlsZHNjaGlybVwtQmV3ZWd1bmciCisuc3AKK0RpZSBQYWtldGF1c3dhaGxsaXN0ZW4gdW5kIGRpZSBBYmjkbmdpZ2tlaXRza29uZmxpa3RlXC1M9nN1bmdzYmlsZHNjaGlybWUKK2v2bm5lbiBtaXQgZGVuIEJld2VndW5nc2JlZmVobGVuIG5hdmlnaWVydCB3ZXJkZW4sIGRpZSBhdWYgZGllIGZvbGdlbmRlbgorVGFzdGVuIGFiZ2ViaWxkZXQgc2luZDoKKy5icgorICBcZkJwLCBIb2NoLCBrXGZQICAgICAgICAgICAgICAgIGJld2VnZSBDdXJzb3JcLUJhbGtlbiBob2NoCisgIFxmQm4sIFJ1bnRlciwgalxmUCAgICAgICAgICAgICAgYmV3ZWdlIEN1cnNvclwtQmFsa2VuIHJ1bnRlcgorICBcZkJQLCBCaWxkIGhvY2gsIFL8Y2tzY2hyaXR0XGZQIHNjcm9sbGUgTGlzdGUgZWluZSBTZWl0ZSBob2NoCisgIFxmQk4sIEJpbGQgcnVudGVyLCBMZWVydGFzdGVcZlAgc2Nyb2xsZSBMaXN0ZSBlaW5lIFNlaXRlIHJ1bnRlcgorICBcZkJecFxmUCAgICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbGUgTGlzdGUgZWluZSBaZWlsZSBob2NoCisgIFxmQl5uXGZQICAgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsZSBMaXN0ZSBlaW5lIFplaWxlIHJ1bnRlcgorICBcZkJ0LCBQb3MgMVxmUCAgICAgICAgICAgICAgICAgIHNwcmluZ2UgenVtIExpc3RlblwtQW5mYW5nCisgIFxmQmUsIEVuZGVcZlAgICAgICAgICAgICAgICAgICAgc3ByaW5nZSB6dW0gTGlzdGVuXC1FbmRlCisgIFxmQnVcZlAgICAgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsZSBJbmZvIGVpbmUgU2VpdGUgaG9jaAorICBcZkJkXGZQICAgICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbGUgSW5mbyBlaW5lIFNlaXRlIHJ1bnRlcgorICBcZkJedVxmUCAgICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbGUgSW5mbyBlaW5lIFplaWxlIGhvY2gKKyAgXGZCXmRcZlAgICAgICAgICAgICAgICAgICAgICAgICBzY3JvbGxlIEluZm8gZWluZSBaZWlsZSBydW50ZXIKKyAgXGZCQiwgTGlua2VyIFBmZWlsXGZQICAgICAgICAgICBiZXdlZ2UgQmlsZHNjaGlybSAxLzNcLUJpbGRzY2hpcm1icmVpdGUgbGlua3MKKyAgXGZCRiwgUmVjaHRlciBQZmVpbFxmUCAgICAgICAgICBiZXdlZ2UgQmlsZHNjaGlybSAxLzNcLUJpbGRzY2hpcm1icmVpdGUgcmVjaHRzCisgIFxmQl5iXGZQICAgICAgICAgICAgICAgICAgICAgICAgYmV3ZWdlIEJpbGRzY2hpcm0gZWluIFplaWNoZW4gbmFjaCBsaW5rcworICBcZkJeZlxmUCAgICAgICAgICAgICAgICAgICAgICAgIGJld2VnZSBCaWxkc2NoaXJtIGVpbiBaZWljaGVuIG5hY2ggcmVjaHRzCisuc3AKKy5TUyAiU3VjaGVuIHVuZCBTb3J0aWVyZW4iCisuc3AKK0RpZSBMaXN0ZSBkZXIgUGFrZXRlIGthbm4gbmFjaCBQYWtldG5hbWVuIGR1cmNoc3VjaHQgd2VyZGVuLiBEaWVzIGVyZm9sZ3QKK2R1cmNoIERy/GNrZW4gdm9uIFxmQrsvq1xmUCB1bmQgZGVyIEVpbmdhYmUgZWluZXIgZWluZmFjaGVuCitTdWNoemVpY2hlbmtldHRlLiBEaWUgWmVpY2hlbmtldHRlIHdpcmQgYWxzIHJlZ3Vs5HJlciBBdXNkcnVjayBnZW3k3worXGZCcmVnZXhcZlAoNykgaW50ZXJwcmV0aWVydC4gRmFsbHMgU2llIHp1IGRlbSBTdWNoYXVzZHJ1Y2sgXGZCuy9kq1xmUCBoaW56dWb8Z2VuCit3aXJkIERzZWxlY3QgYXVjaCBpbiBCZXNjaHJlaWJ1bmdlbiBzdWNoZW4uIEZhbGxzIFNpZSBcZkK7L2mrXGZQIGhpbnp1ZvxnZW4sCit3aXJkIEdyb99cLS9LbGVpbnNjaHJlaWJ1bmcgaWdub3JpZXJ0LiBTaWUga/ZubmVuIGRpZSBTdWZmaXhlIHdpZSBmb2xndAora29tYmluaWVyZW46IFxmQrsvaWSrXGZQLiBXaWVkZXJob2x0ZXMgU3VjaGVuIHdpcmQgZHVyY2ggRHL8Y2tlbiB2b24gXGZCu26rXGZQCitvZGVyIFxmQrtcZatcZlAgZXJyZWljaHQsIGJpcyBkYXMgZ2V3/G5zY2h0ZSBQYWtldCBnZWZ1bmRlbiB3dXJkZS4gRmFsbHMgZGllCitTdWNoZSBkYXMgRW5kZSBkZXIgTGlzdGUgZXJyZWljaHQsIHNwcmluZ3Qgc2llIHp1bSBBbmZhbmcgdW5kIGbkaHJ0IHZvbiBkb3J0Citmb3J0LgorLnNwCitEaWUgTGlzdFwtU29ydGllcnJlaWhlbmZvbGdlIGthbm4gZHVyY2ggd2llZGVyaG9sdGVzCitEcvxja2VuIGRlciBUYXN0ZW4gXGZCu2+rXGZQIGFuZCBcZkK7T6tcZlAgdmVy5G5kZXJ0IHdlcmRlbi4KK0RpZSBmb2xnZW5kZW4gU29ydGllcnJlaWhlbmZvbGdlbiBr9m5uZW4gYXVzZ2V35GhsdCB3ZXJkZW46CisgYWxwaGFiZXRpc2NoICAgICAgdmVyZvxnYmFyICAgICAgICAgICBTdGF0dXMKKyBQcmlvcml05HQrQmVyZWljaCB2ZXJm/GdiYXIrUHJpb3JpdOR0IFN0YXR1cytQcmlvcml05HQKKyBCZXJlaWNoK1ByaW9yaXTkdCB2ZXJm/GdiYXIrQmVyZWljaCAgIFN0YXR1cytCZXJlaWNoCisuYnIKK1dvIGRpZXMgb2JlbiBuaWNodCBleHBsaXppdCBhdWZnZWb8aHJ0IGlzdCwgd2lyZCBhbHBoYWJldGlzY2hlIFJlaWhlbmZvbGdlCithbHMgYWJzY2hsaWXfZW5kZXIgVW50ZXJvcmRudW5nc1wtU29ydGllcnNjaGz8c3NlbCB2ZXJ3ZW5kZXQuCisuc3AKKy5TUyAiQXVzd2FobGVuIORuZGVybiIKKy5zcAorRGVyIGFuZ2Vmb3JkZXJ0ZSBBdXN3YWhsc3RhdHVzIGluZGl2aWR1ZWxsZXIgUGFrZXRlIGthbm4gbWl0CitkZW4gZm9sZ2VuZGVuIEJlZmVobGVuIGdl5G5kZXJ0IHdlcmRlbjoKKyAgXGZCKywgRWluZmdcZlAgICAgIEluc3RhbGxpZXJlbiBvZGVyIFVwZ3JhZGUgZHVyY2hm/GhyZW4KKyAgXGZCPSwgSFxmUCAgICAgICAgIGdlZ2Vud+RydGlnZW4gU3RhdHVzIHVuZCBWZXJzaW9uIGJlaWJlaGFsdGVuCisgIFxmQjosIEdcZlAgICAgICAgICBMb3NsYXNzZW46IFVwZ3JhZCBkdXJjaGb8aHJlbiBvZGVyIHVuaW5zdGFsbGllcnQgbGFzc2VuCisgIFxmQlwtLCBFbnRmXGZQICAgICAgRW50ZmVybmVuLCBhYmVyIEtvbmZpZ3VyYXRpb24gYmVoYWx0ZW4KKyAgXGZCX1xmUCAgICAgICAgICAgIEVudGZlcm5lbiB1bmQgS29uZmlndXJhdGlvbiBs9nNjaGVuCisuc3AKK1dlbm4gc2ljaCBhdXMgZGVyIMRuZGVydW5nc2FuZm9yZGVydW5nIGVpbmUgb2RlciBtZWhyZXJlIHVuZXJm/GxsdGUKK0FiaORuZ2lna2VpdGVuIG9kZXIgS29uZmxpa3RlIGVyZ2ViZW4sIGJpZXRldCBcZkJkc2VsZWN0XGZQIGRlbSBCZW51dHplciBlaW5lbgorQmlsZHNjaGlybSB6dSBBYmjkbmdpZ2tlaXRzYXVmbPZzdW5nIGFuLiBEaWVzZXIgd2lyZCB3ZWl0ZXIgdW50ZW4KK2RldGFpbGxpZXJ0ZXIgYmVzY2hyaWViZW4uCisuc3AKK0VzIGlzdCBhdWNoIG32Z2xpY2gsIGRpZSBCZWZlaGxlIGF1ZiBHcnVwcGVuIHZvbiBQYWtldGF1c3dhaGxlbiBhbnp1d2VuZGVuLAoraW5kZW0gbWl0IGRlbSBDdXJzb3JcLUJhbGtlbiBkaWUgR3J1cHBlblwt3GJlcnNjaHJpZnQgYXVzZ2V35GhsdCB3aXJkLiBEaWUKK2dlbmF1ZSBHcnVwcGllcnVuZyBkZXIgUGFrZXRlIGjkbmd0IHZvbiBkZW4gRWluc3RlbGx1bmdlbiBkZXIgYWt0dWVsbGVuCitMaXN0ZW5zb3J0aWVydW5nIGFiLgorLnNwCitWZXLkbmRlcnVuZ2VuIHZvbiBncm/fZW4gR3J1cHBlbiB2b24gQXVzd2FobGVuIHNvbGx0ZW4gdm9yc2ljaHRpZworZHVyY2hnZWb8aHJ0IHdlcmRlbiwgZGEgZGllcyBzb2ZvcnQgenUgZWluZXIgZ3Jv32VuIEFuemFobCBhbgorbmljaHRcLWF1ZmdlbPZzdGVuIEFiaORuZ2lna2VpdGVuIG9kZXIgS29uZmxpa3RlbiBm/GhyZW4ga2FubiwgZGllIGRhbm4gYWxsZQoraW0gQmlsZHNjaGlybSBkZXIgQWJo5G5naWdrZWl0c2F1Zmz2c3VuZyBkYXJnZXN0ZWxsdCB3ZXJkZW4uIERpZXMga2FubiBkYW5uCitzY2h3ZXIgenUgaGFuZGhhYmVuIHNlaW4uIEluIGRlciBQcmF4aXMgc2luZCBudXIgZGllIE9wZXJhdGlvbmVuIEhhbHRlbiB1bmQKK0xvc2xhc3NlbiBu/HR6bGljaCwgd2VubiBzaWUgYXVmIEdydXBwZW4gYW5nZXdhbmR0IHdlcmRlbi4KKy5zcAorLlNTICJBYmjkbmdpZ2tlaXRlbiB1bmQgS29uZmxpa3RlIGF1Zmz2c2VuIgorLnNwCitXZW5uIHNpY2ggYXVzIGRlciDEbmRlcnVuZ3NhbmZvcmRlcnVuZyBlaW5lIG9kZXIgbWVocmVyZSB1bmVyZvxsbHRlCitBYmjkbmdpZ2tlaXRlbiBvZGVyIEtvbmZsaWt0ZSBlcmdlYmVuLCBiaWV0ZXQgXGZCZHNlbGVjdFxmUCBkZW0gQmVudXR6ZXIgZWluZW4KK0JpbGRzY2hpcm0genUgQWJo5G5naWdrZWl0c2F1Zmz2c3VuZyBhbi4gWnVlcnN0IHdpcmQgYWxsZXJkaW5ncyBlaW4KK0hpbGZlYmlsZHNjaGlybSBhbmdlemVpZ3QuCisuc3AKK0RpZSBvYmVyZSBI5GxmdGUgZGllc2VzIEJpbGRzY2hpcm1zIGb8aHJ0IGFsbGUgUGFrZXRlIGF1ZiwgZGllIGF1ZiBHcnVuZCBkZXIKK2FuZ2Vmb3JkZXJ0ZW4gxG5kZXJ1bmcgdW5lcmb8bGx0ZSBBYmjkbmdpZ2tlaXRlbiBvZGVyIEtvbmZsaWt0ZSBoYWJlbiB1bmQKK2FsbGUgUGFrZXRlLCBkZXJlbiBJbnN0YWxsYXRpb24gKGVpbmlnZSkgZGllc2VyIEFiaORuZ2lna2VpdGVuIGVyZvxsbGVuIG9kZXIKK2RlcmVuIEVudGZlcm51bmcgKGVpbmlnZSkgZGVyIEtvbmZsaWt0ZSBiZXNlaXRpZ2VuIGthbm4uIERpZSB1bnRlcmUgSORsZnRlCit6ZWlndCBzdGFuZGFyZG3k32lnIGRpZSBBYmjkbmdpZ2tlaXRlbiBvZGVyIEtvbmZsaWt0ZSwgZGllIHp1IGRlciBBdWZsaXN0dW5nCitkZXMgZGVyemVpdCBhdXNnZXfkaGx0ZSBQYWtldGVzIGdlZvxocnQgaGFiZW4uCisuc3AKK1dlbm4gYW5m5G5nbGljaCBlaW5lIFRlaWxsaXN0ZSB2b24gUGFrZXRlbiBkYXJnZXN0ZWxsdCB3aXJkLCBr9m5udGUKK1xmQmRzZWxlY3RcZlAgYmVyZWl0cyBkZW4gZXJiZXRlbmVuIEF1c3dhaGxzdGF0dXMgdm9uIGVpbmlnZW4gZGVyIGF1ZmdlZvxocnRlbgorUGFrZXRlIGdlc2V0enQgaGFiZW4sIHVtIGRpZSBBYmjkbmdpZ2tlaXRlbiBvZGVyIEtvbmZsaWt0ZSBhdWZ6dWz2c2VuLCBkaWUKK2RhenUgZ2Vm/GhydCBoYXR0ZW4sIGRhc3MgZGVyIEJpbGRzY2hpcm0genUgQWJo5G5naWdrZWl0c2F1Zmz2c3VuZyBhbmdlemVpZ3QKK3d1cmRlLiBOb3JtYWxlcndlaXNlIGlzdCBlcyBhbSBiZXN0ZW4sIGRlbiBWb3JzY2hs5GdlbiB2b24gXGZCZHNlbGVjdFxmUCB6dQorZm9sZ2VuLgorLnNwCitEdXJjaCBEcvxja2VuIGRlciBUYXN0ZSBcZkK7UqtcZlAga2FubiBkZXIgQXVzd2FobHp1c3RhbmQgZGVyIGF1ZmdlZvxocnRlbgorUGFrZXRlIHp1IGRlbiBPcmlnaW5hbGVpbnN0ZWxsdW5nZW4genVy/GNrZ2VzZXR6dCB3ZXJkZW4sIHdpZSBlciB2b3IgZGVuCit1bmF1ZmdlbPZzdGVuIEFiaORuZ2lna2VpdGVuIG9kZXIgS29uZmxpa3RlbiB3YXIuIER1cmNoIERy/GNrZW4gZGVyIFRhc3RlCitcZkK7RKtcZlAgd2VyZGVuIGRpZSBhdXRvbWF0aXNjaGVuIFZvcnNjaGzkZ2UgenVy/GNrZ2VzZXR6dCwgYWJlciBkaWUKK8RuZGVydW5nZW4sIGRpZSB6dSBkZXIgQW56ZWlnZSBkZXMgQWJo5G5naWdrZWl0c2F1Zmz2c3VuZ3NiaWxkc2NoaXJtcworZ2Vm/GhydCBoYXR0ZW4sIHdlcmRlbiB3aWUgZ2ViZXRlbiBiZWliZWhhbHRlbi4gU2NobGll32xpY2ggd2VyZGVuIGR1cmNoCitEcvxja2VuIGRlciBUYXN0ZSBcZkK7VatcZlAgZGllIEF1c3dhaGxlbiB3aWVkZXIgYXVmIGRpZSBhdXRvbWF0aXNjaGVuCitBdXN3YWhsd2VydGUgZ2VzZXR6dC4KKy5zcAorLlNTICJEaWUgYW5nZWZvcmRlcnRlbiBBdXN3YWhsZW4gZWlucmljaHRlbiIKKy5zcAorRHVyY2ggRHL8Y2tlbiB2b24gXGZCRW50ZXJcZlAgd2lyZCBkaWUgZGVyemVpdCBhbmdlemVpZ3RlIEF1c3dhaGxncnVwcGUKK2FremVwdGllcnQuIEZhbGxzIFxmQmRzZWxlY3RcZlAga2VpbmUgdW5hdWZnZWz2c3RlbiBBYmjkbmdpZ2tlaXQgYWxzIEVyZ2VibmlzCitkZXIgYW5nZWZvcmRlcnRlbiBBdXN3YWhsIGVudGRlY2t0LCB3aXJkIGRpZSBuZXVlIEF1c3dhaGwgZ2VzZXR6dC4gRmFsbHMgZXMKK2FsbGVyZGluZ3MgdW5hdWZnZWz2c3RlIEFiaORuZ2lna2VpdGVuIGdpYnQsIHdpcmQgXGZCZHNlbGVjdFxmUCBkZW0gQmVudXR6ZXIKK2VybmV1dCBkZW4gQmlsZHNjaGlybSBtaXQgZGVyIEFiaORuZ2lna2VpdHNhdWZs9nN1bmcgYW56ZWlnZW4uCisuc3AKK1VtIGRpZSBNZW5nZSBkZXIgQXVzd2FobGVuIHp1IORuZGVybiwgZGllIHVuYXVmZ2Vs9nN0ZSBBYmjkbmdpZ2tlaXRlbiBvZGVyCitLb25mbGlrdGUgZXJ6ZXVndCB1bmQgXGZCZHNlbGVjdFxmUCB6dSB6d2luZ2VuLCBkaWVzZSB6dSBha3plcHRpZXJlbiwgZHL8Y2tlbgorU2llIGRpZSBUYXN0ZSBcZkK7UatcZlAuIERpZXMgc2V0enQgZGllIEF1c3dhaGwgd2llIHZvbSBCZW51dHplciBhbmdlZ2ViZW4sCitvaG5lIEJlZGluZ3VuZ2VuLiBNYWNoZW4gU2llIGRpZXMgbnVyLCB3ZW5uIFNpZSBzaWNoIPxiZXIgZGllIEtvbnNlcXVlbnplbgoraW0gS2xhcmVuIHNpbmQuCisuc3AKK0RlciBnZWdlbnRlaWxpZ2UgRWZmZWt0LCB1bSBhbGxlIEF1c3dhaGzkbmRlcnVuZ2VuIHp1cvxja3p1c2V0emVuIHVuZCB6dXL8Y2sKK2F1ZiBkaWUgdm9yaGVyaWdlIEF1c3dhaGxsaXN0ZSB6dSBnZWhlbiwgd2lyZCBkdXJjaCBEcvxja2VuIGRlciBUYXN0ZW4KK1xmQrtYq1xmUCBvZGVyIFxmQrtFc2OrXGZQIGVycmVpY2h0LiBEdXJjaCB3aWVkZXJob2x0ZXMgRHL8Y2tlbiBkaWVzZXIgVGFzdGVuCitr9m5uZW4gbfZnbGljaGVyd2Vpc2Ugc2No5GRsaWNoZSDEbmRlcnVuZ2VuIGFuIGRlciBhbmdlZm9yZGVydGVuCitQYWtldGF1c3dhaGwga29tcGxldHQgYXVmIGRpZSBsZXR6dGVuIGJlc3RlaGVuZGVuIEVpbnN0ZWxsdW5nZW4KK3p1cvxja2dlc2V0enQgd2VyZGVuLgorLnNwCitGYWxscyBTaWUgYmVzdGltbXRlIEVpbnN0ZWxsdW5nZW4gYXVzIFZlcnNlaGVuIHZvcm5laG1lbiB1bmQgYWxsZSBBdXN3YWhsZW4KK3NvIHp1cvxja3NldHplbiB3b2xsZW4sIGRhc3MgZGllc2UgZGVuIGJlcmVpdHMgYXVmIGRlbSBTeXN0ZW0gaW5zdGFsbGllcnRlbgorUGFrZXRlbiBlbnRzcHJlY2hlbiwgZGFubiBkcvxja2VuIFNpZSBkaWUgVGFzdGUgXGZCu0OrXGZQLiBEaWVzIORobmVsdCBldHdhcworZGVyIFZlcndlbmR1bmcgZGVzIEJlZmVobHMgTG9zbGFzc2VuLCBhbmdld2VuZGV0IGF1ZiBhbGxlIFBha2V0ZSwgYmlldGV0CithYmVyIGVpbmVuIGV0d2FzIGRldXRsaWNoZXJlbiBQYW5pa2tub3BmLCBmYWxscyBkZXIgQmVudXR6ZXIgYXVzIFZlcnNlaGVuCitkaWUgXGZCRWluZ2FiZXRhc3RlXGZQIGdlZHL8Y2t0IGhhdC4KKy5zcAorLgorLlNIIFVNR0VCVU5HCisuVFAgCitcZkJIT01FXGZQCitGYWxscyBnZXNldHp0IHdpcmQgXGZCZHNlbGVjdFxmUCBlcyBhbHMgZGFzIFZlcnplaWNobmlzIHZlcndlbmRlbiwgYXVzIGRlbSBkaWUKK2JlbnV0emVyc3BlemlmaXNjaGUgS29uZmlndXJhdGlvbnNkYXRlaSBnZWxlc2VuIHdpcmQuCisuCisuU0ggRkVITEVSCitEaWUgUGFrZXRhdXN3YWhsXC1TY2huaXR0c3RlbGxlIHZvbiBcZkJEc2VsZWN0XGZQIGJyaW5ndCBlaW5pZ2UgbmV1ZSBCZW51dHplcgorZHVyY2hlaW5hbmRlci4gR2Vy/GNodGV3ZWlzZSBicmluZ3Qgc2llIHNvZ2FyIGVyZmFocmVuZSBLZXJuZWxlbnR3aWNrbGVyIHp1bQorSGV1bGVuLgorLnNwCitEaWUgRG9rdW1lbnRhdGlvbiBpc3QgdmVyYmVzc2VydW5nc3f8cmRpZy4KKy5zcAorRXMgZ2lidCBrZWluZSBIaWxmZVwtT3B0aW9uIGltIEhhdXB0bWVu/C4KKy5zcAorRGllIHNpY2h0YmFyZSBMaXN0ZSB2b24gdmVyZvxnYmFyZW4gUGFrZXRlbiBrYW5uIG5pY2h0IHZlcmtsZWluZXJ0IHdlcmRlbi4KKy5zcAorRGllIGVpbmdlYmF1dGVuIFp1Z3JpZmZzbWV0aG9kZW4ga/ZubmVuIHNpY2ggbmljaHQgbWVociBtaXQgYWt0dWVsbGVuCitRdWFsaXTkdHNzdGFuZGFyZHMgbWVzc2VuLiBWZXJ3ZW5kZW4gU2llIGRpZSB2b24gYXB0IGJlcmVpdGdlc3RlbGx0ZQorWnVncmlmZnNtZXRob2RlLCBzaWUgZnVua3Rpb25pZXJ0IG5pY2h0IG51ciwgc29uZGVybiBpc3Qgc29nYXIgZmxleGlibGVyIGFscworZGllIGVpbmdlYmF1dGVuIFp1Z3JpZmZzbWV0aG9kZW4uCisuCisuU0gg3EJFUlNFVFpVTkcKK0RpZSBkZXV0c2NoZSDcYmVyc2V0enVuZyB3dXJkZSAyMDA0LCAyMDA2LTIwMTEgdm9uIEhlbGdlIEtyZXV0em1hbm4KKzxkZWJpYW5AaGVsZ2VmamVsbC5kZT4sIDIwMDcgdm9uIEZsb3JpYW4gUmVobmlzY2ggPGVpeG1hbkBnbXguZGU+IHVuZAorMjAwOCB2b24gU3ZlbiBKb2FjaGltIDxzdmVuam9hY0BnbXguZGU+CithbmdlZmVydGlndC4gRGllc2Ug3GJlcnNldHp1bmcgaXN0IEZyZWllIERva3VtZW50YXRpb247IGxlc2VuIFNpZSBkaWUKK0dOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIFZlcnNpb24gMiBvZGVyIG5ldWVyIGb8ciBkaWUgS29waWVyYmVkaW5ndW5nZW4uCitFcyBnaWJ0IEtFSU5FIEhBRlRVTkcuCisuU0ggIlNJRUhFIEFVQ0giCitcZkJkcGtnXGZQKDEpLCBcZkJhcHRcLWdldFxmUCg4KSwgXGZCc291cmNlcy5saXN0XGZQKDUpLCBcZkJkZWJcZlAoNSkuCisuCisuU0ggQVVUT1JFTgorXGZCRHNlbGVjdFxmUCB3dXJkZSB2b24gSWFuIEphY2tzb24gKGlqYWNrc29uQGdudS5haS5taXQuZWR1KSBnZXNjaHJpZWJlbi4gRGllCitrb21wbGV0dGUgTGlzdGUgZGVyIEJlaXRyYWdlbmRlbiBrYW5uIG1pdHRlbHMgu2RzZWxlY3QgXC1cLXZlcnNpb26rCitoZXJhdXNnZWZ1bmRlbiB3ZXJkZW4uCisuYnIKK0RpZXNlIEhhbmRidWNoc2VpdGUgd3VyZGUgdm9uIEp1aG8gVnVvcmkgPGphdnVvcmlAY2MuaGVsc2lua2kuZmk+LAorSm9zaXAgUm9kaW4gdW5kIEpvb3N0IGtvb2lqIGdlc2NocmllYmVuLgorCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9kZS9kc2VsZWN0LmNmZy41IGIvZHBrZy0xLjE2LjEuMS9tYW4vZGUvZHNlbGVjdC5jZmcuNQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44ODdkMjFkCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vZGUvZHNlbGVjdC5jZmcuNQpAQCAtMCwwICsxLDM3IEBACisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkc2VsZWN0LmNmZyA1IDIwMTFcLTA3XC0wMyBEZWJpYW5cLVByb2pla3QgZHBrZ1wtUHJvZ3JhbW1zYW1tbHVuZworLlNIIE5BTUUKK2RzZWxlY3QuY2ZnIFwtIGRzZWxlY3QgS29uZmlndXJhdGlvbnNkYXRlaQorLgorLlNIIEJFU0NIUkVJQlVORworRGllc2UgRGF0ZWkgZW50aORsdCBTdGFuZGFyZG9wdGlvbmVuIGb8ciBkc2VsZWN0LiBKZWRlIFplaWxlIGVudGjkbHQgZWluZQorZWluemVsbmUgT3B0aW9uLCBkaWUgZXhha3QgZGllIGdsZWljaGUgd2llIGb8ciBkaWUgbm9ybWFsZW4KK0tvbW1hbmRvemVpbGVuXC1PcHRpb24gdm9uIGRzZWxlY3Qgc2luZCwgYWJnZXNlaGVuIHZvbiBkZW4gZWlubGVpdGVuZGVuCitHZWRhbmtlbnN0cmljaGVuLCBkaWUgaGllciBuaWNodCB2ZXJ3ZW5kZXQgd2VyZGVuLiBBbmb8aHJ1bmdzemVpY2hlbgorKLtRdW90ZXOrKSB1bSBPcHRpb25zd2VydGUgd2VyZGVuIGVudGZlcm50LiBLb21tZW50YXJlIHNpbmQgZHVyY2ggRWlubGVpdGVuCitlaW5lciBaZWlsZSBtaXQgZWluZW0gUmF1dGVuemVpY2hlbiAou1xmQiNcZlCrKSBlcmxhdWJ0LgorLgorLlNIIERBVEVJRU4KK1xmSS9ldGMvZHBrZy9kc2VsZWN0LmNmZy5kL1swXC05YVwtekFcLVpfXC1dKlxmUAorLmJyCitcZkkvZXRjL2Rwa2cvZHNlbGVjdC5jZmdcZlAKKy5icgorXGZJfi8uZHNlbGVjdC5jZmdcZlAKKy4KKy5TSCBBVVRPUgorTGVzZW4gU2llIFxmSS91c3Ivc2hhcmUvZG9jL2Rwa2cvVEhBTktTXGZQIGb8ciBkaWUgTGlzdGUgZGVyIExldXRlLCBkaWUgenUKK1xmQmRzZWxlY3RcZlAgYmVpZ2V0cmFnZW4gaGFiZW4uCisuCisuU0gg3EJFUlNFVFpVTkcKK0RpZSBkZXV0c2NoZSDcYmVyc2V0enVuZyB3dXJkZSAyMDA0LCAyMDA2LTIwMTEgdm9uIEhlbGdlIEtyZXV0em1hbm4KKzxkZWJpYW5AaGVsZ2VmamVsbC5kZT4sIDIwMDcgdm9uIEZsb3JpYW4gUmVobmlzY2ggPGVpeG1hbkBnbXguZGU+IHVuZAorMjAwOCB2b24gU3ZlbiBKb2FjaGltIDxzdmVuam9hY0BnbXguZGU+CithbmdlZmVydGlndC4gRGllc2Ug3GJlcnNldHp1bmcgaXN0IEZyZWllIERva3VtZW50YXRpb247IGxlc2VuIFNpZSBkaWUKK0dOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIFZlcnNpb24gMiBvZGVyIG5ldWVyIGb8ciBkaWUgS29waWVyYmVkaW5ndW5nZW4uCitFcyBnaWJ0IEtFSU5FIEhBRlRVTkcuCisuU0ggIlNJRUhFIEFVQ0giCitcZkJkc2VsZWN0XGZQKDEpLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vZGUvc3RhcnQtc3RvcC1kYWVtb24uOCBiL2Rwa2ctMS4xNi4xLjEvbWFuL2RlL3N0YXJ0LXN0b3AtZGFlbW9uLjgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMWJhMjAwZgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL2RlL3N0YXJ0LXN0b3AtZGFlbW9uLjgKQEAgLTAsMCArMSwyNjAgQEAKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlRIIHN0YXJ0XC1zdG9wXC1kYWVtb24gOCAyMDExXC0wN1wtMDQgRGViaWFuXC1Qcm9qZWt0IGRwa2dcLUhpbGZzcHJvZ3JhbW1lCisuU0ggTkFNRQorc3RhcnRcLXN0b3BcLWRhZW1vbiBcLSBzdGFydGV0IHVuZCBzdG9wcHQgU3lzdGVtXC1EYWVtb25cLVByb2dyYW1tZQorLgorLlNIINxCRVJTSUNIVAorXGZCc3RhcnRcLXN0b3BcLWRhZW1vblxmUCBbXGZJT3B0aW9uXGZQLi4uXSBcZklCZWZlaGxcZlAKKy4KKy5TSCBCRVNDSFJFSUJVTkcKK1xmQnN0YXJ0XC1zdG9wXC1kYWVtb25cZlAgd2lyZCB6dXIgU3RldWVydW5nIGRlciBFcnpldWd1bmcgdW5kIEJlZW5kaWd1bmcgdm9uCitQcm96ZXNzZW4gYXVmIFN5c3RlbWViZW5lIHZlcndlbmRldC4gRHVyY2ggZGllIFZlcndlbmR1bmcgZWluZXIgZGVyCitBYmdsZWljaFwtT3B0aW9uZW4ga2FubiBcZkJzdGFydFwtc3RvcFwtZGFlbW9uXGZQIHNvIGtvbmZpZ3VyaWVydCB3ZXJkZW4sIGRhc3MgZXIKK2V4aXN0aWVyZW5kZSBJbnN0YW56ZW4gdm9uIGVpbmVtIGxhdWZlbmRlbiBQcm96ZXNzIGZpbmRlbiBrYW5uLgorLlBQCitIaW53ZWlzOiBGYWxscyBcZkJcLVwtcGlkZmlsZVxmUCBuaWNodCBhbmdlZ2ViZW4gaXN0LCB2ZXJo5Gx0IHNpY2gKK1xmQnN0YXJ0XC1zdG9wXC1kYWVtb25cZlAg5GhubGljaCB6dSBcZkJraWxsYWxsXGZQKDEpLiBcZkJzdGFydFwtc3RvcFwtZGFlbW9uXGZQIHdpcmQgZGllCitQcm96ZXNzdGFiZWxsZSBuYWNoIFByb3plc3NlbiBkdXJjaHN1Y2hlbiwgZGllIGF1ZiBkZW4gUHJvemVzc25hbWVuLCB1aWQKK3VuZC9vZGVyIGdpZCAoZmFsbHMgYW5nZWdlYmVuKSBwYXNzZW4uIEplZGVyIHBhc3NlbmRlIFByb3plc3Mgd2lyZAorXGZCXC1cLXN0YXJ0XGZQIGRhcmFuIGhpbmRlcm4sIGRlbiBEYWVtb24genUgc3RhcnRlbi4gQWxsZW4gcGFzc2VuZGVuIFByb3plc3Nlbgord2lyZCBkYXMgVEVSTVwtU2lnbmFsIChvZGVyIGRhcyBtaXQgXGZCXC1cLXNpZ25hbFxmUCBvZGVyIFxmQlwtXC1yZXRyeVxmUCBhbmdlZ2ViZW5lKQorZ2VzY2hpY2t0LCBmYWxscyBcZkJcLVwtc3RvcFxmUCBhbmdlZ2ViZW4gaXN0LiBG/HIgRGFlbW9ucyBkaWUgbGFuZ2xlYmlnZSBLaW5kZXIKK2hhYmVuLCBkaWUgZWluIFxmQlwtXC1zdG9wXGZQIPxiZXJsZWJlbiBt/HNzZW4sIG38c3NlbiBTaWUgZWluZSBQSURcLURhdGVpCithbmdlYmVuLgorLgorLlNIIEJFRkVITEUKKy5UUCAKK1xmQlwtU1xmUCwgXGZCXC1cLXN0YXJ0XGZQIFtcZkJcLVwtXGZQXSBcZklBcmd1bWVudGVcZlAKK1By/GZlIGF1ZiBFeGlzdGVueiBlaW5lcyBhbmdlZ2ViZW5lbiBQcm96ZXNzZXMuIEZhbGxzIGVpbiBzb2xjaGVyIFByb3plc3MKK2V4aXN0aWVydCBm/GhydCBcZkJzdGFydFwtc3RvcFwtZGFlbW9uXGZQIG5pY2h0cyBhdXMgdW5kIGJlZW5kZXQgc2ljaCBtaXQKK0ZlaGxlcnN0YXR1cyAxICgwLCBmYWxscyBcZkJcLVwtb2tub2RvXGZQIGFuZ2VnZWJlbiB3dXJkZSkuIEZhbGxzIGVpbiBzb2xjaGVyCitQcm96ZXNzIG5pY2h0IGV4aXN0aWVydCwgZGFubiBzdGFydGV0IGVzIGVpbmUgSW5zdGFueiwgZW50d2VkZXIgdW50ZXIKK1ZlcndlbmR1bmcgZGVzIGF1c2b8aHJiYXJlbiBQcm9ncmFtbXMsIGRhcyBtaXR0ZWxzIFxmQlwtXC1leGVjXGZQIChvZGVyLCBmYWxscworYW5nZWdlYmVuLCBtaXR0ZWxzIFxmQlwtXC1zdGFydGFzXGZQKSBzcGV6aWZpemllcnQgd3VyZGUuIEplZGVzIHdlaXRlcmUgYXVmIGRlcgorS29tbWFuZG96ZWlsZSBuYWNoIFxmQlwtXC1cZlAgYW5nZWdlYmVuZSBBcmd1bWVudCB3aXJkIHVudmVy5G5kZXJ0IGFuIGRhcyB6dQorc3RhcnRlbmRlIFByb2dyYW1tIHdlaXRlcmdlZ2ViZW4uCisuVFAgCitcZkJcLUtcZlAsIFxmQlwtXC1zdG9wXGZQCivcYmVycHL8ZnQgYXVmIGRpZSBFeGlzdGVueiBlaW5lcyBzcGV6aWVsbGVuIFByb3plc3Nlcy4gRmFsbHMgZWluIHNvbGNoZXIKK1Byb3plc3MgZXhpc3RpZXJ0LCBkYW5uIHNlbmRldCBcZkJzdGFydFwtc3RvcFwtZGFlbW9uXGZQIGRhcyBkdXJjaCBcZkJcLVwtc2lnbmFsXGZQCithbmdlZ2ViZW5lIFNpZ25hbCB1bmQgYmVlbmRldCBzaWNoIG1pdCBGZWhsZXJzdGF0dXMgMC4gRmFsbHMga2VpbiBzb2xjaGVyCitQcm96ZXNzIGV4aXN0aWVydCwgZGFubiBiZWVuZGV0IHNpY2ggXGZCc3RhcnRcLXN0b3BcLWRhZW1vblxmUCBtaXQgRmVobGVyc3RhdHVzIDEKKygwIGZhbGxzIFxmQlwtXC1va25vZG9cZlAgYW5nZWdlYmVuIGlzdCkuIEZhbGxzIFxmQlwtXC1yZXRyeVxmUCBhbmdlZ2ViZW4gd3VyZGUsIHdpcmQKK1xmQnN0YXJ0XC1zdG9wXC1kYWVtb25cZlAg/GJlcnBy/GZlbiwgb2IgZGVyL2RpZSBQcm96ZXNzKGUpIGJlZW5kZXQgd3VyZGVuLgorLlRQIAorXGZCXC1UXGZQLCBcZkJcLVwtc3RhdHVzXGZQCivcYmVycHL8ZnQgYXVmIGRpZSBFeGlzdGVueiBlaW5lcyBiZXN0aW1tdGVuIFByb3plc3NlcyB1bmQgbGllZmVydCBkZW4KK0V4aXRcLVN0YXR1c1wtQ29kZSBlbnRzcHJlY2hlbmQgZGVyILtMU0IgSW5pdCBTY3JpcHQgQWN0aW9uc6sgenVy/GNrLgorLlRQIAorXGZCXC1IXGZQLCBcZkJcLVwtaGVscFxmUAorWmVpZ2UgQmVkaWVudW5nc2luZm9ybWF0aW9uZW4gdW5kIGJlZW5kZXQgc2ljaC4KKy5UUCAKK1xmQlwtVlxmUCwgXGZCXC1cLXZlcnNpb25cZlAKK1plaWdlIGRpZSBQcm9ncmFtbXZlcnNpb24gdW5kIGJlZW5kZXQgc2ljaC4KKy4KKy5TSCBBQkdMRUlDSFwtT1BUSU9ORU4KKy5UUCAKK1xmQlwtcFxmUCwgXGZCXC1cLXBpZGZpbGVcZlAgXGZJcGlkXC1EYXRlaVxmUAor3GJlcnBy/GZlLCBvYiBlaW4gUHJvemVzcyBkaWUgRGF0ZWkgXGZJcGlkXC1EYXRlaVxmUCBhbmdlbGVndCBoYXQuCisuVFAgCitcZkJcLXhcZlAsIFxmQlwtXC1leGVjXGZQIFxmSVByb2dyYW1tXGZQCivcYmVycHL8ZmUgYXVmIFByb3plc3NlIGRpZSAobGF1dCBcZkIvcHJvYy9cZlBcZklwaWRcZlBcZkIvZXhlXGZQKSBJbnN0YW56ZW4gdm9uCitkaWVzZW0gUHJvZ3JhbW0gc2luZC4KKy5UUCAKK1xmQlwtblxmUCwgXGZCXC1cLW5hbWVcZlAgXGZJUHJvemVzc25hbWVcZlAKK9xiZXJwcvxmZSAobGF1dCBcZkIvcHJvYy9cZlBcZklwaWRcZlBcZkIvc3RhdFxmUCkgYXVmIFByb3plc3NlIG1pdCBkZW0gTmFtZW4KK1xmSVByb3plc3NuYW1lXGZQLgorLlRQIAorXGZCXC11XGZQLCBcZkJcLVwtdXNlclxmUCBcZklCZW51dHplcm5hbWVcZlB8XGZJdWlkXGZQCivcYmVycHL8ZmUgYXVmIFByb3plc3NlIGRpZSBkZW0gbWl0IFxmSUJlbnV0emVybmFtZVxmUCBvZGVyIFxmSXVpZFxmUAorc3BlemlmaXppZXJ0ZW4gQmVudXR6ZXIgZ2Vo9nJlbi4KKy4KKy5TSCBPUFRJT05FTgorLlRQIAorXGZCXC1nXGZQLCBcZkJcLVwtZ3JvdXBcZlAgXGZJR3J1cHBlXGZQfFxmSWdpZFxmUAorV2VjaHNsZSB6dW0gU3RhcnRlbiBkZXMgUHJvemVzc2VzIHp1ciBcZklHcnVwcGVcZlAgb2RlciBcZklnaWRcZlAuCisuVFAgCitcZkJcLXNcZlAsIFxmQlwtXC1zaWduYWxcZlAgXGZJU2lnbmFsXGZQCitNaXQgXGZCXC1cLXN0b3BcZlAgd2lyZCBkYXMgYW4gZGVuIHp1IGJlZW5kZW5kZW4gUHJvemVzcyB6dSBzZW5kZW5kZSBTaWduYWwKK3NwZXppZml6aWVydCAoc3RhbmRhcmRt5N9pZyBURVJNKS4KKy5UUCAKK1xmQlwtUlxmUCwgXGZCXC1cLXJldHJ5XGZQIFxmSVplaXT8YmVyc2NocmVpdHVuZ1xmUHxcZklQbGFuXGZQCitNaXQgXGZCXC1cLXN0b3BcZlAgc3BlemlmaXppZXJ0LCBkYXNzIFxmQnN0YXJ0XC1zdG9wXC1kYWVtb25cZlAg/GJlcnBy/GZlbiBzb2xsLCBvYgorZGVyIFByb3plc3MgKGRpZSBQcm96ZXNzZSkgc2ljaCBiZWVuZGVuLiBFcyD8YmVycHL8ZnQgd2llZGVyaG9sdCwgb2IKK3Bhc3NlbmRlIFByb3plc3NlIGxhdWZlbiwgYmlzIGRpZXMgbmljaHQgbWVociBkZXIgRmFsbCBpc3QuIEZhbGxzIHNpY2ggZGllCitQcm96ZXNzZSBuaWNodCBiZWVuZGVuLCB3ZXJkZW4gd2VpdGVyZSBpbSC7UGxhbqsgYW5nZWdlYmVuZSBBa3Rpb25lbgorZHVyY2hnZWb8aHJ0LgorCitGYWxscyBcZklaZWl0/GJlcnNjaHJlaXR1bmdcZlAgYW5zdGVsbGUgdm9uIFxmSVBsYW5cZlAgc3BlemlmaXppZXJ0IHdpcmQsIGRhbm4KK3dpcmQgZGVyIFBsYW4KK1xmSVNpZ25hbFxmUFxmQi9cZlBcZklaZWl0/GJlcnNjaHJlaXR1bmdcZlBcZkIvS0lMTC9cZlBcZklaZWl0/GJlcnNjaHJlaXR1bmdcZlAgdmVyd2VuZGV0LAord29iZWkgXGZJU2lnbmFsXGZQIGRhcyBtaXQgXGZCXC1cLXNpZ25hbFxmUCBzcGV6aWZpemllcnRlIFNpZ25hbCBpc3QuCisKK1xmSVBsYW5cZlAgaXN0IGVpbmUgTGlzdGUgdm9uIG1pbmRlc3RlbnMgendlaSBkdXJjaCBTY2hy5GdzdHJpY2hlIChcZkIvXGZQKQorZ2V0cmVubnRlbiBQdW5rdGVuOyBqZWRlciBQdW5rdCBrYW5uIGF1cyBcZkJcLVxmUFxmSVNpZ25hbG51bW1lclxmUCBvZGVyCitbXGZCXC1cZlBdXGZJU2lnbmFsbmFtZVxmUCBiZXN0ZWhlbiwgd2FzIGJlZGV1dGV0LCBkYXNzIGRpZXNlcyBTaWduYWwgZ2VzZW5kZXQKK3dlcmRlbiBzb2xsLCBvZGVyIGF1cyBcZklaZWl0/GJlcnNjaHJlaXR1bmdcZlAsIHdhcyBiZWRldXRldCwgZGFzcyBzb3ZpZWxlCitTZWt1bmRlbiBhdWYgZGFzIEJlZW5kZW4gdm9uIFByb3plc3NlbiBnZXdhcnRldCB3ZXJkZW4gc29sbCwgb2RlciBhdXMKK1xmQmZvcmV2ZXJcZlAgd2FzIGJlZGV1dGV0LCBkZW4gUmVzdCBkZXMgUGxhbnMgZmFsbHMgbm90d2VuZGlnIGb8ciBpbW1lciB6dQord2llZGVyaG9sZW4uCisKK0ZhbGxzIGRhcyBFbmRlIGRlcyBQbGFucyBlcnJlaWNodCB3aXJkIHVuZCBcZkJmb3JldmVyXGZQIG5pY2h0IHNwZXppZml6aWVydAord3VyZGUsIGRhbm4gYmVlbmRldCBzaWNoIGRlciBcZkJzdGFydFwtc3RvcFwtZGFlbW9uXGZQIG1pdCBkZW0gRmVobGVyc3RhdHVzCisyLiBGYWxscyBlaW4gUGxhbiBzcGV6aWZpemllcnQgd3VyZGUsIGRhbm4gd2lyZCBqZWRlcyBtaXQgXGZCXC1cLXNpZ25hbFxmUAorc3BlemlmaXppZXJ0ZSBTaWduYWwgaWdub3JpZXJ0LgorLlRQIAorXGZCXC1hXGZQLCBcZkJcLVwtc3RhcnRhc1xmUCBcZklQZmFkbmFtZVxmUAorTWl0IFxmQlwtXC1zdGFydFxmUCB3aXJkIGRlciD8YmVyIFxmSVBmYWRuYW1lXGZQIHNwZXppZml6aWVydGUgUHJvemVzcworZ2VzdGFydGV0LiBGYWxscyBuaWNodCBhbmdlZ2ViZW4sIHdlcmRlbiBzdGFuZGFyZG3k32lnIGRpZSBhbiBcZkJcLVwtZXhlY1xmUAor/GJlcmdlYmVuZW4gQXJndW1lbnRlIHZlcndlbmRldC4KKy5UUCAKK1xmQlwtdFxmUCwgXGZCXC1cLXRlc3RcZlAKK0dlYmUgZGllIEFrdGlvbmVuIGF1cywgZGllIGVybGVkaWd0IHf8cmRlbiB1bmQgc2V0emUgZGllIGVudHNwcmVjaGVuZGVuCitS/GNrZ2FiZXdlcnRlLCBm/GhyZSBhYmVyIGtlaW5lIEFrdGlvbmVuIGR1cmNoLgorLlRQIAorXGZCXC1vXGZQLCBcZkJcLVwtb2tub2RvXGZQCitMaWVmZXJ0IGRlbiBS/GNrZ2FiZXdlcnQgMCBhbnN0YXR0IDEgZmFsbHMga2VpbmUgQWt0aW9uZW4gYXVzZ2Vm/GhydCB3dXJkZW4KKyh3/HJkZW4pLgorLlRQIAorXGZCXC1xXGZQLCBcZkJcLVwtcXVpZXRcZlAKK0dlYmUga2VpbmUgaW5mb3JtYXRpdmVuIE1lbGR1bmdlbiBhdXMsIHplaWdlIG51ciBGZWhsZXJtZWxkdW5nZW4gYW4uCisuVFAgCitcZkJcLWMgXGZQLCBcZkIgXC1cLWNodWlkIFxmUFxmSUJlbnV0emVybmFtZVxmUHxcZkl1aWRcZlBbXGZCOlxmUFxmSUdydXBwZVxmUHxcZklnaWRcZlBdCitXZWNoc2VsZSB2b3IgZGVtIFN0YXJ0IGRlcyBQcm96ZXNzZXMgenUgZGllc2VtIEJlbnV0emVybmFtZS91aWQuIFNpZSBr9m5uZW4KK2R1cmNoIEFuaORuZ2VuIHZvbiBcZkI6XGZQIGF1Y2ggZGllIEdydXBwZSBzcGV6aWZpemllcmVuLCBpbiBkaWVzZW0gRmFsbCB3aXJkCitkaWUgR3J1cHBlIG9kZXIgZ2lkIHdpZSBiZWkgZGVtILtjaG93bqtcLUJlZmVobCAoXGZJQmVudXR6ZXJcZlBcZkI6XGZQXGZJR3J1cHBlXGZQKQorYW5nZWdlYmVuLiBGYWxscyBlaW4gQmVudXR6ZXIgb2huZSBHcnVwcGUgYW5nZWdlYmVuIGlzdCwgd2lyZCBkaWUgcHJpbeRyZQorR0lEIGb8ciBkaWVzZW4gQmVudXR6ZXIgdmVyd2FuZHQuIFdlbm4gU2llIGRpZXNlIE9wdGlvbiB2ZXJ3ZW5kZW4sIG38c3NlbgorU2llIGRhcmFuIGRlbmtlbiwgZGFzcyBkaWUgcHJpbeRyZSB1bmQgenVz5HR6bGljaGUgR3J1cHBlbiBhdWNoIGdlc2V0enQKK3dlcmRlbiwgc2VsYnN0IHdlbm4gZGllIE9wdGlvbiBcZkJcLVwtZ3JvdXBcZlAgbmljaHQgYW5nZWdlYmVuIHdpcmQuIERpZSBPcHRpb24KK1xmQlwtXC1ncm91cFxmUCBpc3QgbnVyIGb8ciBHcnVwcGVuLCBpbiBkZW5lbiBkZXIgQmVudXR6ZXIgbm9ybWFsZXJ3ZWlzZSBrZWluCitNaXRnbGllZCBpc3QgKHdpZSBkYXMgSGluenVm/GdlbiB2b24gcHJvXC1Qcm96ZXNzIEdydXBwZW5taXRnbGllZHNjaGFmdGVuIGb8cgorZ2VuZXJpc2NoZSBCZW51dHplciB3aWUgXGZCbm9ib2R5XGZQKS4KKy5UUCAKK1xmQlwtclxmUCwgXGZCXC1cLWNocm9vdFxmUCBcZklXdXJ6ZWxcZlAKK0NoZGlyIHVuZCBjaHJvb3Qgdm9yIGRlbSBTdGFydCBkZXMgUHJvemVzc2UgenUgXGZJV3VyemVsXGZQLiBCaXR0ZSBiZWFjaHRlbgorU2llLCBkYXNzIGRpZSBQSURcLURhdGVpIGF1Y2ggbmFjaCBkZW0gY2hyb290IGdlc2NocmllYmVuIHdpcmQuCisuVFAgCitcZkJcLWRcZlAsIFxmQlwtXC1jaGRpclxmUCBcZklQZmFkXGZQCitDaGRpciB2b3IgZGVtIFN0YXJ0ZW4gZGVzIFByb3plc3NlcyB6dSBcZklQZmFkXGZQLiBEaWVzIHdpcmQsIGZhbGxzIGRpZQorXGZCXC1yXGZQfFxmQlwtXC1jaHJvb3RcZlAgT3B0aW9uIGdlc2V0enQgaXN0LCBuYWNoIGRlbSBjaHJvb3QgZHVyY2hnZWb8aHJ0LiBGYWxscworbmljaHQgYW5nZWdlYmVuLCB3aXJkIHN0YXJ0XC1zdG9wXC1kYWVtb24gdm9yIGRlbSBQcm96ZXNzXC1TdGFydCBpbiBkYXMKK1d1cnplbHZlcnplaWNobmlzIHdlY2hzZWxuLgorLlRQIAorXGZCXC1iXGZQLCBcZkJcLVwtYmFja2dyb3VuZFxmUAorVHlwaXNjaGVyd2Vpc2UgdmVyd2VuZGV0IGb8ciBQcm9ncmFtbWUsIGRpZSBzaWNoIG5pY2h0IHNlbGJzdORuZGlnCithYmz2c2VuLiBEaWVzZSBPcHRpb24gendpbmd0IFxmQnN0YXJ0XC1zdG9wXC1kYWVtb25cZlAgdm9yIGRlbSBTdGFydCBkZXMKK1Byb3plc3NlcyBlaW5lbiBGb3JrIGR1cmNoenVm/GhyZW4sIHVuZCB6d2luZ3QgZGllc2VuIGRhbm4gaW4gZGVuCitIaW50ZXJncnVuZC4gXGZCV0FSTlVORzogc3RhcnRcLXN0b3BcLWRhZW1vblxmUCBrYW5uIG5pY2h0IGRlbiBS/GNrZ2FiZXdlcnQKK/xiZXJwcvxmZW4sIGZhbGxzIGRlciBQcm96ZXNzIGF1cyBcZkJpcmdlbmRlaW5lbVxmUCBHcnVuZCBuaWNodCBzdGFydGV0LiBEaWVzCitpc3QgZWluIGxldHp0ZXMgTWl0dGVsIHVuZCBpc3QgbnVyIGb8ciBQcm9ncmFtbWUgZ2VkYWNodCwgYmVpIGRlbmVuIGRhcworc2VsYnN0c3TkbmRpZ2UgRm9ya2VuIGtlaW5lbiBTaW5uIGVyZ2lidCBvZGVyIHdvIGVzIG5pY2h0IHNpbm52b2xsIGlzdCwgZGVuCitDb2RlIGhpZXJm/HIgaGluenV6dWb8Z2VuLgorLlRQIAorXGZCXC1OXGZQLCBcZkJcLVwtbmljZWxldmVsXGZQIFxmSUdhbnp6YWhsXGZQCitEaWVzIORuZGVydCBkaWUgUHJpb3JpdOR0IGRlcyBQcm96ZXNzZXMgYmV2b3IgZXIgZ2VzdGFydGV0IHdpcmQuCisuVFAgCitcZkJcLVBcZlAsIFxmQlwtXC1wcm9jc2NoZWRcZlAgXGZJU3RyYXRlZ2llXGZQXGZCOlxmUFxmSVByaW9yaXTkdFxmUAorRGllcyDkbmRlcnQgZGllIFByb3plc3NzdGV1ZXJzdHJhdGVnaWUgKLtwcm9jZXNzIHNjaGVkdWxlciBwb2xpY3mrKSB1bmQgZGllCitQcmlvcml05HQgZGVzIFByb3plc3NlcywgYmV2b3IgZGllc2VyIGdlc3RhcnRldCB3aXJkLiBEaWUgUHJpb3JpdOR0IGthbm4KK29wdGlvbmFsIGZlc3RnZWxlZ3Qgd2VyZGVuLCBpbmRlbSBlaW4gXGZCOlxmUCBnZWZvbGd0IHZvbiBlaW5lbSBXZXJ0IGFuZ2VnZWJlbgord2lyZC4gRGllIFN0YW5kYXJkXC1cZklQcmlvcml05HRcZlAgYmV0cuRndCAwLiBEaWUgZGVyemVpdCB1bnRlcnN0/HR6dGVuIFdlcnRlCitm/HIgZGllIFN0cmF0ZWdpZSBsYXV0ZW4gXGZCb3RoZXJcZlAsIFxmQmZpZm9cZlAgdW5kIFxmQnJyXGZQLgorLlRQIAorXGZCXC1JXGZQLCBcZkJcLVwtaW9zY2hlZFxmUCBcZklLbGFzc2VcZlBcZkI6XGZQXGZJUHJpb3JpdOR0XGZQCitEaWVzIORuZGVydCBkaWUgSU9cLVN0ZXVlcmtsYXNzZSAou0lPIHNjaGVkdWxlciBjbGFzc6spIHVuZCBkaWUgUHJpb3JpdOR0IGRlcworUHJvemVzc2VzLCBiZXZvciBkaWVzZXIgZ2VzdGFydGV0IHdpcmQuIERpZSBQcmlvcml05HQga2FubiBvcHRpb25hbAorZmVzdGdlbGVndCB3ZXJkZW4sIGluZGVtIGVpbiBcZkI6XGZQIGdlZm9sZ3Qgdm9uIGVpbmVtIFdlcnQgYW5nZWdlYmVuIHdpcmQuIERpZQorU3RhbmRhcmRcLVxmSVByaW9yaXTkdFxmUCBiZXRy5Gd0IDQsIGF132VyIFxmSUtsYXNzZVxmUCBsYXV0ZXQgXGZCaWRsZVxmUCwgZGFubgorYmV0cuRndCBzaWUgaW1tZXIgNy4gRGllIGRlcnplaXQgdW50ZXJzdPx0enRlbiBXZXJ0ZSBm/HIgZGllIFxmSUtsYXNzZVxmUAorbGF1dGVuIFxmQmlkbGVcZlAsIFxmQmJlc3RcLWVmZm9ydFxmUCB1bmQgXGZCcmVhbFwtdGltZVxmUC4KKy5UUCAKK1xmQlwta1xmUCwgXGZCXC1cLXVtYXNrXGZQIFxmSU1hc2tlXGZQCitEaWVzIHNldHp0IGRpZSB1bWFzayBkZXMgUHJvemVzc2VzIGJldm9yIGVyIGdlc3RhcnRldCB3aXJkLgorLlRQIAorXGZCXC1tXGZQLCBcZkJcLVwtbWFrZVwtcGlkZmlsZVxmUAorVmVyd2VuZGV0LCB3ZW5uIGVpbiBQcm9ncmFtbSBnZXN0YXJ0ZXQgd2lyZCwgZGFzIGtlaW5lIGVpZ2VuZSBQSURcLURhdGVpCithbmxlZ3QuIERpZXNlIE9wdGlvbiBzb3JndCBkYWb8ciwgZGFzcyBcZkJzdGFydFwtc3RvcFwtZGFlbW9uXGZQIGRpZSBtaXQKK1xmQlwtXC1waWRmaWxlXGZQIHJlZmVyZW56aWVydGUgRGF0ZWkgYW5sZWd0IHVuZCBkaWUgUElEIGt1cnogdm9yIGRlciBBdXNm/GhydW5nCitkZXMgUHJvemVzc2UgaGluZWlubGVndC4gQmVhY2h0ZW4gU2llLCBkYXNzIGRpZSBEYXRlaSBuaWNodCBlbnRmZXJudCB3aXJkLAord2VubiBkYXMgUHJvZ3JhbW0gYmVlbmRldCB3aXJkLiBcZkJISU5XRUlTOlxmUCBEaWVzZSBGdW5rdGlvbiBr9m5udGUgaW4gbmljaHQKK2FsbGVuIEbkbGxlbiBmdW5rdGlvbmllcmVuLiBJbnNiZXNvbmRlcmUgd2VubiBkYXMgYXVzenVm/GhyZW5kZSBQcm9ncmFtbQorc2ljaCB2b20gSGF1cHRwcm96ZXNzIGZvcmt0LiBEZXNoYWxiIGlzdCBkaWVzZSBPcHRpb24gbm9ybWFsZXJ3ZWlzZSBudXIgaW4KK0tvbWJpbmF0aW9uIG1pdCBkZXIgT3B0aW9uIFxmQlwtXC1iYWNrZ3JvdW5kXGZQIHNpbm52b2xsLgorLlRQIAorXGZCXC12XGZQLCBcZkJcLVwtdmVyYm9zZVxmUAorR2lidCBhdXNm/GhybGljaGUgaW5mb3JtYXRpdmUgTWVsZHVuZ2VuIGF1cy4KKy4KKy5TSCBS3ENLR0FCRVdFUlQKKy5UUCAKK1xmQjBcZlAKK0RpZSBhbmdlZm9yZGVydGUgQWt0aW9uIHd1cmRlIGR1cmNoZ2Vm/GhydC4gRmFsbHMgXGZCXC1cLW9rbm9kb1xmUCBhbmdlZ2ViZW4KK3d1cmRlLCBrYW5uIGVzIGF1Y2ggc2VpbiwgZGFzcyBuaWNodCBkdXJjaGdlZvxocnQgd3VyZGUuIERhcyBrYW5uIHBhc3NpZXJlbiwKK3dlbm4gXGZCXC1cLXN0YXJ0XGZQIGFuZ2VnZWJlbiB3dXJkZSB1bmQgZGVyIHBhc3NlbmRlIFByb3plc3MgYmVyZWl0cyBsaWVmIG9kZXIKK3dlbm4gXGZCXC1cLXN0b3BcZlAgYW5nZWdlYmVuIHd1cmRlIHVuZCBlcyBrZWluZW4gcGFzc2VuZGVuIFByb3plc3MgZ2FiLgorLlRQIAorXGZCMVxmUAorRmFsbHMgXGZCXC1cLW9rbm9kb1xmUCBuaWNodCBhbmdlZ2ViZW4gd2FyIHVuZCBuaWNodHMgZHVyY2hnZWb8aHJ0IHd1cmRlLgorLlRQIAorXGZCMlxmUAorRmFsbHMgXGZCXC1cLXN0b3BcZlAgdW5kIFxmQlwtXC1yZXRyeVxmUCBhbmdlZ2ViZW4gd2FyZW4sIGFiZXIgZGFzIEVuZGUgZGVzIFBsYW5zCitlcnJlaWNodCB3dXJkZSB1bmQgZGllIFByb3plc3NlIG5vY2ggbGllZmVuLgorLlRQIAorXGZCM1xmUAorSmVkZXIgYW5kZXJlIEZlaGxlci4KKy5QUAorQmVpIGRlciBWZXJ3ZW5kdW5nIGRlcyBCZWZlaGxzIFxmQlwtXC1zdGF0dXNcZlAgd2VyZGVuIGRpZSBmb2xnZW5kZW4gU3RhdHVzY29kZXMKK3p1cvxja2dlbGllZmVydDoKKy5UUCAKK1xmQjBcZlAKK1Byb2dyYW1tIGzkdWZ0LgorLlRQIAorXGZCMVxmUAorUHJvZ3JhbW0gbOR1ZnQgbmljaHQgdW5kIGRpZSBQSURcLURhdGVpIGV4aXN0aWVydC4KKy5UUCAKK1xmQjNcZlAKK1Byb2dyYW1tIGzkdWZ0IG5pY2h0LgorLlRQIAorXGZCNFxmUAorUHJvZ3JhbW1zdGF0dXMga2FubiBuaWNodCBiZXN0aW1tdCB3ZXJkZW4uCisuCisuU0ggQkVJU1BJRUwKK1N0YXJ0ZSBkZW4gRGFlbW9uIFxmQmZvb2RcZlAgZmFsbHMgbm9jaCBrZWluZXIgbOR1ZnQgKGVpbiBQcm96ZXNzIG1pdCBOYW1lbgorZm9vZCwgZGVyIGFscyBCZW51dHplciBmb29kIG1pdCBQSUQgaW4gZm9vZC5waWQgbOR1ZnQpOgorLklQCisubmYKK3N0YXJ0XC1zdG9wXC1kYWVtb24gXC1cLXN0YXJ0IFwtXC1va25vZG8gXC1cLXVzZXIgZm9vZCBcLVwtbmFtZSBmb29kIFwtXC1waWRmaWxlIC92YXIvcnVuL2Zvb2QucGlkIFwtXC1zdGFydGFzIC91c3Ivc2Jpbi9mb29kIFwtXC1jaHVpZCBmb29kIFwtXC0gXC1cLWRhZW1vbgorLmZpCisuUFAKK1NjaGlja2UgXGZCU0lHVEVSTVxmUCBhbiBcZkJmb29kXGZQIHVuZCB3YXJ0ZSBiaXMgenUgZvxuZiBTZWt1bmRlbiBhdWYgc2VpbgorQmVlbmRlbjoKKy5JUAorLm5mCitzdGFydFwtc3RvcFwtZGFlbW9uIFwtXC1zdG9wIFwtXC1va25vZG8gXC1cLXVzZXIgZm9vZCBcLVwtbmFtZSBmb29kIFwtXC1waWRmaWxlIC92YXIvcnVuL2Zvb2QucGlkIFwtXC1yZXRyeSA1CisuZmkKKy5QUAorVm9yZvxocnVuZyBlaW5lcyBhbmdlcGFzc3RlbiBQbGFucyB6dW0gQmVlbmRlbiB2b24gXGZCZm9vZFxmUDoKKy5JUAorLm5mCitzdGFydFwtc3RvcFwtZGFlbW9uIFwtXC1zdG9wIFwtXC1va25vZG8gXC1cLXVzZXIgZm9vZCBcLVwtbmFtZSBmb29kIFwtXC1waWRmaWxlIC92YXIvcnVuL2Zvb2QucGlkIFwtXC1yZXRyeT1URVJNLzMwL0tJTEwvNQorLmZpCisuUFAKKy4KKy5TSCBBVVRPUkVOCitNYXJlayBNaWNoYWxraWV3aWN6IDxtYXJla21AaTE3bGludXhiLmlzdHMucHdyLndyb2MucGw+IGJhc2llcmVuZAorYXVmIGVpbmVyIHZvcmhlcmlnZW4gVmVyc2lvbiB2b24gSWFuIEphY2tzb24KKzxpYW5AY2hpYXJrLmdyZWVuZW5kLm9yZy51az4uCisKK0hhbmRidWNoc2VpdGUgdm9uIEtsZWUgRGllbmVzIDxrbGVlQG1pdC5lZHU+LCB0ZWlsd2Vpc2Ugdm9uIElhbgorSmFja3NvbiB1bWZvcm1hdGllcnQuCisuU0gg3EJFUlNFVFpVTkcKK0RpZSBkZXV0c2NoZSDcYmVyc2V0enVuZyB3dXJkZSAyMDA0LCAyMDA2LTIwMTEgdm9uIEhlbGdlIEtyZXV0em1hbm4KKzxkZWJpYW5AaGVsZ2VmamVsbC5kZT4sIDIwMDcgdm9uIEZsb3JpYW4gUmVobmlzY2ggPGVpeG1hbkBnbXguZGU+IHVuZAorMjAwOCB2b24gU3ZlbiBKb2FjaGltIDxzdmVuam9hY0BnbXguZGU+CithbmdlZmVydGlndC4gRGllc2Ug3GJlcnNldHp1bmcgaXN0IEZyZWllIERva3VtZW50YXRpb247IGxlc2VuIFNpZSBkaWUKK0dOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIFZlcnNpb24gMiBvZGVyIG5ldWVyIGb8ciBkaWUgS29waWVyYmVkaW5ndW5nZW4uCitFcyBnaWJ0IEtFSU5FIEhBRlRVTkcuCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9kZS91cGRhdGUtYWx0ZXJuYXRpdmVzLjggYi9kcGtnLTEuMTYuMS4xL21hbi9kZS91cGRhdGUtYWx0ZXJuYXRpdmVzLjgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDQ5NWE3ZAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL2RlL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuOApAQCAtMCwwICsxLDQzOSBAQAorLlwiIHVwZGF0ZVwtYWx0ZXJuYXRpdmVzLjgKKy5cIiBUaGlzIG1hbiBwYWdlIGlzIGNvcHlyaWdodCAxOTk3IENoYXJsZXMgQnJpc2NvZS1TbWl0aAorLlwiIFRoaXMgaXMgZnJlZSBkb2N1bWVudGF0aW9uOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisuXCIgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQKKy5cIiBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorLlwiIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uICBUaGVyZSBpcyBOTyBXQVJSQU5UWS4gIFlvdSBjYW4KKy5cIiBmaW5kIHRoZSBHTlUgR1BMIGluIC91c3Ivc2hhcmUvY29tbW9uLWxpY2Vuc2VzL0dQTCBvbiBhbnkgRGViaWFuIHN5c3RlbS4KKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlRIIHVwZGF0ZVwtYWx0ZXJuYXRpdmVzIDggMjAxMVwtMDhcLTE0IERlYmlhblwtUHJvamVrdCBkcGtnXC1IaWxmc3Byb2dyYW1tZQorLlNIIE5BTUUKK3VwZGF0ZVwtYWx0ZXJuYXRpdmVzIFwtIFZlcndhbHR1bmcgc3ltYm9saXNjaGVyIExpbmtzIHp1ciBCZXN0aW1tdW5nIHZvbgorU3RhbmRhcmR3ZXJ0ZW4gZvxyIEJlZmVobGUKKy4KKy5TSCDcQkVSU0lDSFQKK1xmQnVwZGF0ZVwtYWx0ZXJuYXRpdmVzXGZQIFtcZklPcHRpb25cZlAuLi5dIFxmSUJlZmVobFxmUAorLgorLlNIIEJFU0NIUkVJQlVORworXGZCdXBkYXRlXC1hbHRlcm5hdGl2ZXNcZlAgZXJ6ZXVndCwgZW50ZmVybnQsIHZlcndhbHRldCB1bmQgemVpZ3QgZGllCitJbmZvcm1hdGlvbmVuIPxiZXIgZGllIHN5bWJvbGlzY2hlbiBMaW5rcywgZGllIGRhcyC7RGViaWFuCitBbHRlcm5hdGl2XC1TeXN0ZW2rIGJpbGRlbiwgYW4uCisuUFAKK0VzIGlzdCBt9mdsaWNoLCBtZWhyZXJlIFByb2dyYW1tZSwgZGllIGRpZSBnbGVpY2hlIG9kZXIg5GhubGljaGUKK0Z1bmt0aW9uYWxpdOR0IGJlcmVpdHN0ZWxsZW4sIGdsZWljaHplaXRpZyBhdWYgZWluZW0gU3lzdGVtIHp1CitpbnN0YWxsaWVyZW4uIEJlaXNwaWVsc3dlaXNlIHNpbmQgYXVmIHZpZWxlbiBTeXN0ZW1lbiBtZWhyZXJlIFRleHRlZGl0b3JlbgorZ2xlaWNoemVpdGlnIGluc3RhbGxpZXJ0LiBEaWVzIGdpYnQgZGVuIEJlbnV0emVybiBlaW5lcyBTeXN0ZW1zIGRpZQorTfZnbGljaGtlaXQsIGZhbGxzIGdld/xuc2NodCwgamV3ZWlscyBlaW5lbiBhbmRlcmVuIEVkaXRvciB6dSB2ZXJ3ZW5kZW4sCithbGxlcmRpbmdzIHdpcmQgZXMgZGFtaXQgZvxyIGVpbiBQcm9ncmFtbSBzY2h3aWVyaWcsIGVpbmVuIGd1dGVuIFdhaGwgZvxyCitlaW5lbiBFZGl0b3IgenVtIFN0YXJ0ZW4genUgdHJlZmZlbiwgZmFsbHMgZGVyIEJlbnV0emVyIGtlaW5lIHNwZXppZWxsZSBXYWhsCitnZXRyb2ZmZW4gaGF0LgorLlBQCitEZWJpYW5zIEFsdGVybmF0aXZcLVN5c3RlbSBoYXQgZGFzIFppZWwsIGRpZXNlcyBQcm9ibGVtIHp1IGz2c2VuLiBFaW4KK2dlbmVyaXNjaGVyIE5hbWUgaW0gRGF0ZWlzeXN0ZW0gd2lyZCB2b24gYWxsZW4gRGF0ZWllbiwgZGllIGF1c3RhdXNjaGJhcmUKK0Z1bmt0aW9uYWxpdOR0IGJlcmVpdHN0ZWxsZW4sIHZlcndlbmRldC4gRGFzIEFsdGVybmF0aXZcLVN5c3RlbSBiZXN0aW1tdAorenVzYW1tZW4gbWl0IGRlbSBTeXN0ZW1hZG1pbmlzdHJhdG9yIHdlbGNoZSBEYXRlaSB0YXRz5GNobGljaCBkdXJjaCBkaWVzZW4KK2dlbmVyaXNjaGVuIE5hbWVuIHJlZmVyZW56aWVydCB3aXJkLiBGYWxscyBiZWlzcGllbHN3ZWlzZSBzb3dvaGwgZGVyCitUZXh0ZWRpdG9yIFxmQmVkXGZQKDEpIGFscyBhdWNoIFxmQm52aVxmUCgxKSBpbSBTeXN0ZW0gaW5zdGFsbGllcnQgc2luZCwgd2lyZCBkYXMKK0FsdGVybmF0aXZcLVN5c3RlbSBkYWb8ciBzb3JnZW4sIGRhc3MgZGVyIGdlbmVyaXNjaGUgTmFtZSBcZkkvdXNyL2Jpbi9lZGl0b3JcZlAKK3N0YW5kYXJkbeTfaWcgYXVmIFxmSS91c3IvYmluL252aVxmUCB6ZWlndC4gRGVyIFN5c3RlbWFkbWluaXN0cmF0b3Iga2FubiBkaWVzCivEbmRlcm4gdW5kIGRhZvxyIHNvcmdlbiwgZGFzcyBlciBzdGF0dGRlc3NlbiBhdWYgXGZJL3Vzci9iaW4vZWRcZlAgemVpZ3QsIHVuZAorZGFzIEFsdGVybmF0aXZcLVN5c3RlbSB3aXJkIGRpZXNlIEVpbnN0ZWxsdW5nIG5pY2h0IHZlcuRuZGVybiwgYmlzIGVzCitleHBsaXppdCBkYXp1IGF1ZmdlZm9yZGVydCB3aXJkLgorLlBQCitEZXIgZ2VuZXJpc2NoZSBOYW1lIGlzdCBuaWNodCBlaW4gZGlyZWt0ZXIgc3ltYm9saXNjaGVyIExpbmsgYXVmIGRpZQorYXVzZ2V35GhsdGUgQWx0ZXJuYXRpdmUuIFN0YXR0ZGVzc2VuIGlzdCBlcyBlaW4gc3ltYm9saXNjaGVyIExpbmsgYXVmIGVpbmVuCitOYW1lbiBpbSBcZklBbHRlcm5hdGl2XC1WZXJ6ZWljaG5pc1xmUCwgd2VsY2hlcyB3aWVkZXJ1bSBlaW4gc3ltYm9saXNjaGVyIExpbmsKK2F1ZiBkaWUgdGF0c+RjaGxpY2ggcmVmZXJlbnppZXJ0ZSBEYXRlaSBpc3QuIERpZXMgaXN0IHNvIHJlYWxpc2llcnQsIGRhbWl0CitkaWUgxG5kZXJ1bmdlbiBkZXMgU3lzdGVtYWRtaW5pc3RyYXRvcnMgYXVmIGRhcyBcZkkvZXRjXGZQIFZlcnplaWNobmlzCitiZXNjaHLkbmt0IGJsZWliZW46IGRlciBGSFMgKHNpZWhlIGRvcnQpIGVya2zkcnQgd2FydW0gZGllcyBlaW5lIEd1dGUgSWRlZQoraXN0LgorLlBQCitG/HIgamVkZXMgUGFrZXQsIGRhcyBlaW5lIERhdGVpIG1pdCBlaW5lciBiZXN0aW1tdGVuIEZ1bmt0aW9uYWxpdOR0CitiZXJlaXRzdGVsbHQsIHdpcmQgYmVpIGRlciBJbnN0YWxsYXRpb24sIGRlciDEbmRlcnVuZyBvZGVyIGRlciBFbnRmZXJudW5nCitcZkJ1cGRhdGVcLWFsdGVybmF0aXZlc1xmUCBhdWZnZXJ1ZmVuLCB1bSBkaWUgSW5mb3JtYXRpb25lbiD8YmVyIGRpZXNlIERhdGVpIGltCitBbHRlcm5hdGl2XC1TeXN0ZW0genUgYWt0dWFsaXNpZXJlbi4gXGZCdXBkYXRlXC1hbHRlcm5hdGl2ZXNcZlAgd2lyZCBnZXf2aG5saWNoCit2b20gU2tyaXB0IFxmQnBvc3RpbnN0XGZQIChjb25maWd1cmUpIG9kZXIgXGZCcHJlcm1cZlAgKGluc3RhbGwpIGVpbmVzCitEZWJpYW5cLVBha2V0ZXMgYXVmZ2VydWZlbi4KKy5QUAorRXMgaXN0IG9mdCBzaW5udm9sbCwgZGFzcyBlaW5lIFJlaWhlIHZvbiBBbHRlcm5hdGl2ZW4gc3luY2hyb25pc2llcnQgd2VyZGVuLAorc28gZGFzcyBzaWUgYWxzIEdydXBwZSBnZeRuZGVydCB3ZXJkZW47IHdlbm4gYmVpc3BpZWxzd2Vpc2UgbWVocmVyZQorVmVyc2lvbmVuIGRlcyBcZkJ2aVxmUCgxKSBFZGl0b3JzIGluc3RhbGxpZXJ0IHNpbmQsIHNvbGx0ZSBkaWUgSGFuZGJ1Y2hzZWl0ZSwKK2RpZSBkdXJjaCBcZkkvdXNyL3NoYXJlL21hbi9tYW4xL3ZpLjFcZlAgcmVmZXJlbnppZXJ0IHdpcmQsIHp1IGRlbSBhdXNm/GhyYmFyZW4KK1Byb2dyYW1tLCBkYXNzIGR1cmNoIFxmSS91c3IvYmluL3ZpXGZQIHJlZmVyZW56aWVydCB3aXJkLAorZ2Vo9nJlbi4gXGZCdXBkYXRlXC1hbHRlcm5hdGl2ZXNcZlAgZXJsZWRpZ3QgZGllcyBtaXQgSGlsZmUgdm9uIFxmSU1hc3RlclwtXGZQIHVuZAorXGZJU2xhdmVcLUxpbmtzXGZQOyB3aXJkIGRlciBNYXN0ZXJcLUxpbmsgZ2XkbmRlcnQsIHdpcmQgYXVjaCBqZWRlciB6dWdlaPZyaWdlCitTbGF2ZVwtTGluayBnZeRuZGVydC4gRWluIE1hc3RlclwtTGluayB1bmQgc2VpbmUgenVnZWj2cmlnZW4gU2xhdmVcLUxpbmtzCitiaWxkZW4genVzYW1tZW4gZWluZSBcZklMaW5rXC1HcnVwcGVcZlAuCisuUFAKK0VpbmUgTGlua2dydXBwZSBpc3QgenUgamVkZXIgWmVpdCBpbiBlaW5lbSBkZXIgYmVpZGVuIE1vZGk6IGF1dG9tYXRpc2NoIG9kZXIKK21hbnVlbGwuIElzdCBlaW5lIEdydXBwZSBpbSBhdXRvbWF0aXNjaGVuIE1vZHVzLCBkYW5uIHdpcmQgZGFzCitBbHRlcm5hdGl2XC1TeXN0ZW0gYmVpIGRlciBQYWtldGluc3RhbGxhdGlvbiB1bmQgXC1lbnRmZXJudW5nIGF1dG9tYXRpc2NoCitlbnRzY2hlaWRlbiwgb2IgdW5kIHdpZSBkaWUgTGlua3MgYWt0dWFsaXNpZXJ0IHdlcmRlbi4gSW0gbWFudWVsbGVuIE1vZHVzCit3aXJkIGRhcyBBbHRlcm5hdGl2XC1TeXN0ZW0gZGllIFdhaGwgZGVzIEFkbWluaXN0cmF0b3JzIGJlaWJlaGFsdGVuIHVuZAorxG5kZXJ1bmdlbiBkZXIgTGlua3MgdmVybWVpZGVuIChhdd9lciBpcmdlbmRldHdhcyBpc3QgZGVmZWt0KS4KKy5QUAorQmVpbSBlcnN0bWFsaWdlbiBFaW5m/GhyZW4gaW4gZGFzIFN5c3RlbSBiZWZpbmRldCBzaWNoIGVpbmUgTGlua2dydXBwZSBpbQorYXV0b21hdGlzY2hlbiBNb2R1cy4gRvxocnQgZGVyIFN5c3RlbWFkbWluaXN0cmF0b3IgxG5kZXJ1bmdlbiBhbiBkZW4KK2F1dG9tYXRpc2NoZW4gRWluc3RlbGx1bmdlbiBkZXMgU3lzdGVtcyBkdXJjaCwgd2lyZCBkaWVzIGJlaW0gbuRjaHN0ZW4KK0F1ZnJ1ZiB2b24gXGZCdXBkYXRlXC1hbHRlcm5hdGl2ZXNcZlAgYXVmIGRpZSBMaW5rZ3J1cHBlIGJlbWVya3QgdW5kIGRpZSBHcnVwcGUKK3dpcmQgYXV0b21hdGlzY2ggaW4gZGVuIG1hbnVlbGxlbiBNb2R1cyB1bWdlc2NoYWx0ZXQuCisuUFAKK0plZGUgQWx0ZXJuYXRpdmUgaGF0IGVpbmUgaWhyIHp1Z2VvcmRuZXRlIFxmSVByaW9yaXTkdFxmUC4gQmVmaW5kZXQgc2ljaCBlaW5lCitMaW5rZ3J1cHBlIGltIGF1dG9tYXRpc2NoZW4gTW9kdXMsIHplaWdlbiBkaWUgTWl0Z2xpZWRlciBlaW5lciBHcnVwcGUgYXVmCitkaWUgQWx0ZXJuYXRpdmUgbWl0IGRlciBo9mNoc3RlbiBQcmlvcml05HQuCisuUFAKK1dpcmQgZGllIFxmQlwtXC1jb25maWdcZlBcLU9wdGlvbiB2ZXJ3ZW5kZXQsIGRhbm4gemVpZ3QgXGZCdXBkYXRlXC1hbHRlcm5hdGl2ZXNcZlAKK2FsbGUgQXVzd2FobG32Z2xpY2hrZWl0ZW4gZvxyIGRpZSBMaW5rXC1HcnVwcGUgYW4sIGb8ciBkaWUgZGVyIGdlZ2ViZW5lCitcZklOYW1lXGZQIGRlciBNYXN0ZXJcLUFsdGVybmF0aXZlXC1OYW1lIGlzdC4gRGllIGFrdHVlbGxlIEF1c3dhaGwgaXN0IG1pdCC7KqsKK21hcmtpZXJ0LiBTaWUgd2VyZGVuIGRhbm4gYXVmZ2Vmb3JkZXJ0LCBJaHJlIEF1c3dhaGwgYmV6/GdsaWNoIGRlcgorTGlua2dydXBwZSBhbnp1Z2ViZW4uIEFiaORuZ2lnIHZvbiBkZXIgZ2V0cm9mZmVuZW4gQXVzd2FobCBr9m5udGUgc2ljaCBkaWUKK0xpbmtcLUdydXBwZSBuaWNodCBtZWhyIGltIFxmSWF1dG9tYXRpc2NoZW5cZlAgTW9kdXMgYmVmaW5kZW4uIFNpZSBt/HNzZW4gZGFubgorZGllIE9wdGlvbiBcZkJcLVwtYXV0b1xmUCB2ZXJ3ZW5kZW4sIHVtIHdpZWRlciBpbiBkZW4gYXV0b21hdGlzY2hlbiBadXN0YW5kCit6dXL8Y2t6dWtlaHJlbiAob2RlciBTaWUga/ZubmVuIFxmQlwtXC1jb25maWdcZlAgZXJuZXV0IGF1c2b8aHJlbiB1bmQgZGVuIGFscworYXV0b21hdGlzY2ggbWFya2llcnRlbiBFaW50cmFnIGF1c3fkaGxlbikuCisuUFAKK0ZhbGxzIFNpZSBuaWNodFwtaW50ZXJha3RpdiBrb25maWd1cmllcmVuIG32Y2h0ZW4sIGv2bm5lbiBTaWUgc3RhdHRkZXNzZW4gZGllCitcZkJcLVwtc2V0XGZQIE9wdGlvbiB2ZXJ3ZW5kZW4gKHNpZWhlIHVudGVuKS4KKy5QUAorVmVyc2NoaWVkZW5lIFBha2V0ZSwgZGllIGRpZSBnbGVpY2hlIERhdGVpIGJlcmVpdHN0ZWxsZW4sIG38c3NlbiBkaWVzCitcZkJrb29wZXJhdGl2XGZQIGR1cmNoZvxocmVuLiBBbmRlcnMgZ2VzYWd0IGlzdCBpbiBkaWVzZW0gRmFsbCBkaWUgVmVyd2VuZHVuZwordm9uIFxmQnVwZGF0ZVwtYWx0ZXJuYXRpdmVzXGZQIGb8ciBhbGxlIGJldGVpbGlndGVuIFBha2V0ZSBcZkJ6d2luZ2VuZFxmUC4gRXMgaXN0CituaWNodCBt9mdsaWNoLCBzaWNoIPxiZXIgZWluZSBEYXRlaSBpbiBlaW5lbSBQYWtldCBoaW53ZWd6dXNldHplbiwgd2VsY2hlcworZGVuIFxmQnVwZGF0ZVwtYWx0ZXJuYXRpdmVzXGZQXC1NZWNoYW5pc211cyBuaWNodCB2ZXJ3ZW5kZXQuCisuCisuU0ggQkVHUklGRkUKK0RhIGRpZSBU5HRpZ2tlaXRlbiB2b24gXGZCdXBkYXRlXC1hbHRlcm5hdGl2ZXNcZlAgcmVjaHQga29tcGxleCBzaW5kLCBzb2xsZW4KK2VpbmlnZSBzcGV6aWVsbGUgQmVncmlmZmUgaGVsZmVuLCBzZWluZSBWb3JnZWhlbnN3ZWlzZSB6dSBlcmzkdXRlcm4uCisuVFAgCitnZW5lcmlzY2hlciBOYW1lIChvZGVyIEFsdGVybmF0aXZcLUxpbmspCitFaW4gTmFtZSB3aWUgXGZJL3Vzci9iaW4vZWRpdG9yXGZQLCBkZXIgc2ljaCD8YmVyIGRhcyBBbHRlcm5hdGl2XC1TeXN0ZW0gYXVmCitlaW5lIFJlaWhlIHZvbiBEYXRlaWVuIG1pdCDkaG5saWNoZXIgRnVua3Rpb25hbGl05HQgYmV6aWVodC4KKy5UUCAKK0FsdGVybmF0aXZcLU5hbWUKK0RlciBOYW1lIGVpbmVzIHN5bWJvbGlzY2hlbiBMaW5rcyBpbSBBbHRlcm5hdGl2XC1WZXJ6ZWljaG5pcy4KKy5UUCAKK0FsdGVybmF0aXZlIChvZGVyIEFsdGVybmF0aXZcLVBmYWQpCitEZXIgTmFtZSBlaW5lciBzcGV6aWVsbGVuIERhdGVpIGltIERhdGVpc3lzdGVtLCBkaWUgbWl0dGVscyBlaW5lcworZ2VuZXJpc2NoZW4gTmFtZW5zIPxiZXIgZGFzIEFsdGVybmF0aXZcLVN5c3RlbSB6dWdyZWlmYmFyIGdlbWFjaHQgd2VyZGVuCitrYW5uLgorLlRQIAorQWx0ZXJuYXRpdlwtVmVyemVpY2huaXMKK0VpbiBWZXJ6ZWljaG5pcywgc3RhbmRhcmRt5N9pZyBcZkkvZXRjL2FsdGVybmF0aXZlc1xmUCwgZGFzIGRpZSBTeW1saW5rcworZW50aORsdC4KKy5UUCAKK2FkbWluaXN0cmF0aXZlcyBWZXJ6ZWljaG5pcworRWluIFZlcnplaWNobmlzLCBzdGFuZGFyZG3k32lnIFxmSS92YXIvbGliL2Rwa2cvYWx0ZXJuYXRpdmVzXGZQLCBkYXMgZGllCitcZkJ1cGRhdGVcLWFsdGVybmF0aXZlc1xmUCBadXN0YW5kc2luZm9ybWF0aW9uZW4gZW50aORsdC4KKy5UUCAKK0xpbmtncnVwcGUKK0VpbiBTYXR6IHp1c2FtbWVuZ2Vo9nJlbmRlciBTeW1saW5rcywgZGllIGFscyBHcnVwcGUgYWt0dWFsaXNpZXJ0IHdlcmRlbgorc29sbGVuLgorLlRQIAorTWFzdGVyXC1MaW5rCitEZXIgQWx0ZXJuYXRpdlwtTGluayBpbiBlaW5lciBMaW5rZ3J1cHBlIGRlciBiZXN0aW1tdCwgd2llIGRpZSBhbmRlcmVuIExpbmtzCitpbiBkZXIgR3J1cHBlIGtvbmZpZ3VyaWVydCB3ZXJkZW4uCisuVFAgCitTbGF2ZVwtTGluaworRWluIEFsdGVybmF0aXZcLUxpbmsgaW4gZWluZXIgTGlua2dydXBwZSwgZGVyIGR1cmNoIGRpZSBFaW5zdGVsbHVuZyBkZXMKK01hc3RlclwtTGlua3MgZ2VzdGV1ZXJ0IHdpcmQuCisuVFAgCithdXRvbWF0aXNjaGVyIE1vZHVzCitJc3QgZWluZSBMaW5rZ3J1cHBlIGltIGF1dG9tYXRpc2NoZW4gTW9kdXMsIGRhbm4gc29yZ3QgZGFzIEFsdGVybmF0aXZcLVN5c3RlbQorZGFm/HIsIGRhc3MgZGllIExpbmtzIGluIGRlciBHcnVwcGUgYXVmIGRpZSBm/HIgZGllIEdydXBwZSBwYXNzZW5kZQorQWx0ZXJuYXRpdmUgbWl0IGRlciBo9mNoc3RlbiBQcmlvcml05HQgemVpZ2VuLgorLlRQIAorbWFudWVsbGVyIE1vZHVzCitJc3QgZWluZSBMaW5rZ3J1cHBlIGltIG1hbnVlbGxlbiBNb2R1cywgZGFubiBm/GhydCBkYXMgQWx0ZXJuYXRpdlwtU3lzdGVtCitrZWluZSDEbmRlcnVuZ2VuIGFuIGRlbiBFaW5zdGVsbHVuZ2VuIGRlcyBTeXN0ZW1hZG1pbmlzdHJhdG9ycyBkdXJjaC4KKy4KKy5TSCBCRUZFSExFCisuVFAgCitcZkJcLVwtaW5zdGFsbFxmUCBcZklMaW5rIE5hbWUgUGZhZCBQcmlvcml05HRcZlAgW1xmQlwtXC1zbGF2ZVxmUCBcZklMaW5rIE5hbWUgUGZhZFxmUF0gLi4uCitG/GdlIGVpbmUgR3J1cHBlIHZvbiBBbHRlcm5hdGl2ZW4genVtIFN5c3RlbSBoaW56dS4gXGZJTGlua1xmUCBpc3QgZGVyCitnZW5lcmlzY2hlIE5hbWUgZGVzIE1hc3RlclwtTGlua3MsIFxmSU5hbWVcZlAgaXN0IGRlciBOYW1lIHNlaW5lcyBTeW1saW5rcyBpbQorQWx0ZXJuYXRpdlwtVmVyemVpY2huaXMgdW5kIFxmSVBmYWRcZlAgaXN0IGRpZSBBbHRlcm5hdGl2ZSwgZGllIGb8ciBkZW4KK01hc3RlclwtTGluayBlaW5nZWb8aHJ0IHdpcmQuIERpZSBBcmd1bWVudGUgbmFjaCBcZkJcLVwtc2xhdmVcZlAgc2luZCBkZXIKK2dlbmVyaXNjaGUgTmFtZSwgU3ltbGlua1wtTmFtZSBpbiBkZW0gQWx0ZXJuYXRpdlwtVmVyemVpY2huaXMgdW5kIGRlcgorQWx0ZXJuYXRpdlwtUGZhZCBm/HIgZGVuIFNsYXZlXC1MaW5rLiBOdWxsIG9kZXIgbWVocmVyZSBcZkJcLVwtc2xhdmVcZlBcLU9wdGlvbmVuLAoramVkZSB2b24gZHJlaSBBcmd1bWVudGVuIGdlZm9sZ3QsIGv2bm5lbiBzcGV6aWZpemllcnQgd2VyZGVuLiBCZWFjaHRlbiBTaWUsCitkYXNzIGRpZSBNYXN0ZXJcLUFsdGVybmF0aXZlIGV4aXN0aWVyZW4gbXVzcywgYW5zb25zdGVuIHNjaGzkZ3QgZGVyIEF1ZnJ1ZgorZmVobC4gRmFsbHMgYWxsZXJkaW5ncyBlaW5lIFNsYXZlXC1BbHRlcm5hdGl2ZSBuaWNodCBleGlzdGllcnQgd2lyZCBkZXIKK3p1Z2Vo9nJpZ2UgU2xhdmVcLUFsdGVybmF0aXZlXC1MaW5rIGVpbmZhY2ggbmljaHQgaW5zdGFsbGllcnQgKGVzIHdpcmQgbm9jaAorZWluZSBXYXJudW5nIGF1c2dlZ2ViZW4pLiBGYWxscyBlaW5lIGVjaHRlIERhdGVpIGFuIGVpbmVyIFN0ZWxsZSBpbnN0YWxsaWVydAord2lyZCwgYW4gZGVyIGVpbiBBbHRlcm5hdGl2XC1MaW5rIGluc3RhbGxpZXJ0IHdlcmRlbiBtdXNzLCB3aXJkIGRpZXNlCitiZWliZWhhbHRlbiwgc29sYW5nZSBcZkJcLVwtZm9yY2VcZlAgbmljaHQgdmVyd2FuZHQgd2lyZC4KKy5JUAorRmFsbHMgZGVyIGFuZ2VnZWJlbmUgQWx0ZXJuYXRpdlwtTmFtZSBiZXJlaXRzIGluIGRlbiBBdWZ6ZWljaG51bmdlbiBkZXMKK0FsdGVybmF0aXZcLVN5c3RlbXMgZXhpc3RpZXJ0LCB3ZXJkZW4gZGllIGFuZ2VnZWJlbmVuIEluZm9ybWF0aW9uZW4gYWxzIG5ldWVyCitTYXR6IHZvbiBBbHRlcm5hdGl2ZW4gZvxyIGRpZSBHcnVwcGUgaGluenVnZWb8Z3QuIEFuZGVybmZhbGxzIHdpcmQgZWluZSBuZXVlCitHcnVwcGUsIGVpbmdlc3RlbGx0IGltIGF1dG9tYXRpc2NoZW4gTW9kdXMsIG1pdCBkaWVzZXIgSW5mb3JtYXRpb24KK2hpbnp1Z2Vm/Gd0LiBGYWxscyBkaWUgR3J1cHBlIHNpY2ggaW0gYXV0b21hdGlzY2hlbiBNb2R1cyBiZWZpbmRldCB1bmQgZGllCitQcmlvcml05HQgZGVyIG5ldSBoaW56dWdlZvxndGVuIEFsdGVybmF0aXZlIGj2aGVyIGlzdCBhbHMgZGllIGplZGVyIGFuZGVyZW4KK2luc3RhbGxpZXJ0ZW4gQWx0ZXJuYXRpdmUgZvxyIGRpZXNlIEdydXBwZSB3ZXJkZW4gZGllIFN5bWxpbmtzIGFrdHVhbGlzaWVydCwKK3NvIGRhc3Mgc2llIGF1ZiBkaWUgbmV1IGhpbnp1Z2Vm/Gd0ZSBBbHRlcm5hdGl2ZSB6ZWlnZW4uCisuVFAgCitcZkJcLVwtc2V0XGZQIFxmSU5hbWUgUGZhZFxmUAorU2V0enQgZGFzIFByb2dyYW1tIFxmSVBmYWRcZlAgYWxzIEFsdGVybmF0aXZlIGb8ciBcZklOYW1lXGZQLiBEaWVzIGlzdCDkcXVpdmFsZW50Cit6dSBcZkJcLVwtY29uZmlnXGZQLCBpc3QgYWJlciBuaWNodCBpbnRlcmFrdGl2IHVuZCBrYW5uIHNvbWl0IGdlc2tyaXB0ZXQgd2VyZGVuLgorLlRQIAorXGZCXC1cLXJlbW92ZVxmUCBcZklOYW1lIFBmYWRcZlAKK0VudGZlcm5lIGVpbmUgQWx0ZXJuYXRpdmUgdW5kIGFsbGUgenVnZWj2cmlnZW4gU2xhdmVcLUxpbmtzLiBcZklOYW1lXGZQIGlzdCBlaW4KK05hbWUgaW0gQWx0ZXJuYXRpdlwtVmVyemVpY2huaXMsIHVuZCBcZklQZmFkXGZQIGlzdCBlaW4gYWJzb2x1dGVyIERhdGVpbmFtZSB6dQorZGVtIFxmSU5hbWVcZlAgZ2VsaW5rdCB3ZXJkZW4ga/ZubnRlLiBGYWxscyBcZklOYW1lXGZQIHRhdHPkY2hsaWNoIG5hY2ggXGZJUGZhZFxmUAorZ2VsaW5rdCBpc3QsIGRhbm4gd2lyZCBcZklOYW1lXGZQIGFrdHVhbGlzaWVydCwgdW0gYXVmIGVpbmUgYW5kZXJlIGdlZWlnbmV0ZQorQWx0ZXJuYXRpdmUgenUgemVpZ2VuICh1bmQgZGllIEdydXBwZSB3aXJkIHdpZWRlciBpbiBkZW4gYXV0b21hdGlzY2hlbiBNb2R1cwordmVyc2V0enQpIG9kZXIgZW50ZmVybnQsIGZhbGxzIGtlaW5lIHNvbGNoZSBBbHRlcm5hdGl2ZSD8YnJpZworYmxlaWJ0LiBadWdlaPZyaWdlIFNsYXZlXC1MaW5rcyB3ZXJkZW4gZW50c3ByZWNoZW5kIGFrdHVhbGlzaWVydCBvZGVyCitlbnRmZXJudC4gRmFsbHMgZGVyIExpbmsgZGVyemVpdCBuaWNodCBhdWYgXGZJUGZhZFxmUCB6ZWlndCwgd2VyZGVuIGtlaW5lIExpbmtzCitnZeRuZGVydDsgbnVyIGRpZSBJbmZvcm1hdGlvbiD8YmVyIGRpZSBBbHRlcm5hdGl2ZSB3aXJkIGVudGZlcm50LgorLlRQIAorXGZCXC1cLXJlbW92ZVwtYWxsXGZQIFxmSU5hbWVcZlAKK0VudGZlcm5lIGFsbGUgQWx0ZXJuYXRpdmVuIHVuZCBkZXJlbiB6dWdlaPZyaWdlIFNsYXZlXC1MaW5rcy4gXGZJTmFtZVxmUCBpc3QgZWluCitOYW1lIGltIEFsdGVybmF0aXZcLVZlcnplaWNobmlzLgorLlRQIAorXGZCXC1cLWFsbFxmUAorUnVmdCBcZkJcLVwtY29uZmlnXGZQIGb8ciBhbGxlIEFsdGVybmF0aXZlbiBhdWYuIEluIGRlciBLb21iaW5hdGlvbiBtaXQKK1xmQlwtXC1za2lwXC1hdXRvXGZQIGthbm4gZGllcyBu/HR6bGljaCBzZWluLCB1bSBhbGxlIEFsdGVybmF0aXZlbiB6dSBwcvxmZW4gdW5kCit6dSBrb25maWd1cmllcmVuLCBkaWUgc2ljaCBuaWNodCBpbSBhdXRvbWF0aXNjaGVuIE1vZHVzIGJlZmluZGVuLiBEZWZla3RlCitBbHRlcm5hdGl2ZW4gd2VyZGVuIGF1Y2ggYW5nZXplaWd0LiBVbSBhbGxlIGRlZmVrdGVuIEFsdGVybmF0aXZlbiB6dQorcmVwYXJpZXJlbiBkaWVudCBkYWhlciBlaW4gZWluZmFjaGVyIEF1ZnJ1ZiB2b24gXGZCeWVzIFxbYXFdXFthcV0gfAordXBkYXRlXC1hbHRlcm5hdGl2ZXMgXC1cLWZvcmNlIFwtXC1hbGxcZlAuCisuVFAgCitcZkJcLVwtYXV0b1xmUCBcZklOYW1lXGZQCivcYmVyZvxocnQgZGllIExpbmtncnVwcGUgaGludGVyIGRlciBBbHRlcm5hdGl2ZSBtaXQgTmFtZSBcZklOYW1lXGZQIGluIGRlbgorYXV0b21hdGlzY2hlbiBNb2R1cy4gQmVpIGRpZXNlbSBQcm96ZXNzIHdlcmRlbiBkZXIgTWFzdGVyXC1TeW1saW5rIHVuZCBzZWluZQorU2xhdmVcLUxpbmtzIGFrdHVhbGlzaWVydCwgdW0gYXVmIGRpZSBpbnN0YWxsaWVydGUgQWx0ZXJuYXRpdmUgbWl0IGj2Y2hzdGVyCitQcmlvcml05HQgenUgemVpZ2VuLgorLlRQIAorXGZCXC1cLWRpc3BsYXlcZlAgXGZJTmFtZVxmUAorWmVpZ2UgSW5mb3JtYXRpb25lbiD8YmVyIGRpZSBMaW5rZ3J1cHBlIGFuLiBEaWUgYW5nZXplaWd0ZW4gSW5mb3JtYXRpb25lbgorZW50aGFsdGVuIGRlbiBNb2R1cyBkZXIgR3J1cHBlIChhdXRvbWF0aXNjaCBvZGVyIG1hbnVlbGwpLCBhdWYgd2VsY2hlCitBbHRlcm5hdGl2ZSBkZXIgTWFzdGVyXC1MaW5rIGRlcnplaXQgemVpZ3QsIHdlbGNoZSB3ZWl0ZXJlbiBBbHRlcm5hdGl2ZW4genVyCitWZXJm/Gd1bmcgc3RlaGVuICh1bmQgaWhyZSB6dWdlaPZyaWdlbiBTbGF2ZVwtQWx0ZXJuYXRpdmVuKSwgdW5kIGRpZQoraW5zdGFsbGllcnRlIEFsdGVybmF0aXZlIG1pdCBkZXIgaPZjaHN0ZW4gUHJpb3JpdOR0LgorLlRQIAorXGZCXC1cLWdldFwtc2VsZWN0aW9uc1xmUAorRvxocmUgYWxsZSBNYXN0ZXJcLUFsdGVybmF0aXZcLU5hbWVuIChkaWUgZWluZSBMaW5rZ3J1cHBlIHN0ZXVlcm4pIG1pdCBpaHJlbQorU3RhdHVzIGF1Zi4gSmVkZSBaZWlsZSBlbnRo5Gx0IGJpcyB6dSAzIEZlbGRlciAoZ2V0cmVubnQgZHVyY2ggbWluZGVzdGVucworZWluIExlZXJ6ZWljaGVuKS4gSW0gZXJzdGVuIEZlbGQgc3RlaHQgZGVyIEFsdGVybmF0aXZcLU5hbWUsIGltIHp3ZWl0ZW4gZGVyCitTdGF0dXMgKGVudHdlZGVyILthdXRvqyBvZGVyILttYW51YWyrKSB1bmQgaW0gbGV0enRlbiBkaWUgZGVyemVpdGlnZSBXYWhsCitkZXIgQWx0ZXJuYXRpdmUgKEFjaHR1bmc6IERpZXMgaXN0IGVpbiBEYXRlaW5hbWUsIGRlciBMZWVyemVpY2hlbiBlbnRoYWx0ZW4KK2thbm4pLgorLlRQIAorXGZCXC1cLXNldFwtc2VsZWN0aW9uc1xmUAorTGVzZSBlaW5lIEtvbmZpZ3VyYXRpb24gdm9uIEFsdGVybmF0aXZlbiD8YmVyIGRpZSBTdGFuZGFyZGVpbmdhYmUgaW0gdm9uCitcZkJ1cGRhdGVcLWFsdGVybmF0aXZlcyBcLVwtZ2V0XC1zZWxlY3Rpb25zXGZQIGdlbmVyaWVydGVuIEZvcm1hdCB1bmQga29uZmlndXJpZXJlCitkaWUgQWx0ZXJuYXRpdmVuIGVudHNwcmVjaGVuZCBuZXUuCisuVFAgCitcZkJcLVwtcXVlcnlcZlAgXGZJTmFtZVxmUAorWmVpZ2UgYWxsZSBJbmZvcm1hdGlvbmVuIPxiZXIgZGllIExpbmtncnVwcGUgYW4sIHdpZSBkaWVzIGF1Y2ggdm9uIFwtXC1kaXNwbGF5CitlcmZvbGd0LCBhbGxlcmRpbmdzIGluIGVpbmVtIG1hc2NoaW5lbmxlc2JhcmVuIEZvcm1hdCAoc2llaGUgQWJzY2huaXR0CitcZkJBQkZSQUdFXC1GT1JNQVRcZlAgdW50ZW4pLgorLlRQIAorXGZCXC1cLWxpc3RcZlAgXGZJTmFtZVxmUAorWmVpZ2UgYWxsZSBaaWVsZSBkZXIgTGlua2dydXBwZSBhbi4KKy5UUCAKK1xmQlwtXC1jb25maWdcZlAgXGZJTmFtZVxmUAorWmVpZ2UgZGllIHZlcmb8Z2JhcmVuIEFsdGVybmF0aXZlbiBm/HIgZWluZSBMaW5rZ3J1cHBlIGFuIHVuZCBlcmxhdWJlIGVzIGRlbQorQmVudXR6ZXIgaW50ZXJha3RpdiBhdXN6dXfkaGxlbiwgd2VsY2hlIHp1IGJlbnV0emVuIGlzdC4gRGllIExpbmtncnVwcGUgd2lyZAorYWt0dWFsaXNpZXJ0LgorLlRQIAorXGZCXC1cLWhlbHBcZlAKK1plaWdlIGRlbiBCZWRpZW51bmdzaGlud2VpcyB1bmQgYmVlbmRlLgorLlRQIAorXGZCXC1cLXZlcnNpb25cZlAKK0dlYmUgZGllIFZlcnNpb24gYXVzIHVuZCBiZWVuZGUgc2ljaC4KKy4KKy5TSCBPUFRJT05FTgorLlRQIAorXGZCXC1cLWFsdGRpclxmUFxmSSBWZXJ6ZWljaG5pc1xmUAorU3BlemlmaXppZXJ0IGRhcyBBbHRlcm5hdGl2XC1WZXJ6ZWljaG5pcywgd2VubiBzaWNoIGRpZXNlcyB2b24gZGVyCitTdGFuZGFyZGVpbnN0ZWxsdW5nIHVudGVyc2NoZWlkZW4gc29sbC4KKy5UUCAKK1xmQlwtXC1hZG1pbmRpclxmUFxmSSBWZXJ6ZWljaG5pc1xmUAorU3BlemlmaXppZXJ0IGRhcyBhZG1pbmlzdHJhdGl2ZSBWZXJ6ZWljaG5pcywgd2VubiBzaWNoIGRpZXNlcyB2b24gZGVyCitTdGFuZGFyZGVpbnN0ZWxsdW5nIHVudGVyc2NoZWlkZW4gc29sbC4KKy5UUCAKK1xmQlwtXC1sb2dcZlBcZkkgRGF0ZWlcZlAKK0dpYnQgZGllIFByb3Rva29sbGRhdGVpIGFuLCB3ZW5uIGRpZXNlIHNpY2ggdm9uIGRlciBWb3JnYWJlCisoL3Zhci9sb2cvYWx0ZXJuYXRpdmVzLmxvZykgdW50ZXJzY2hlaWRlbiBzb2xsLgorLlRQIAorXGZCXC1cLWZvcmNlXGZQCitM5HNzdCBcZkJ1cGRhdGVcLWFsdGVybmF0aXZlc1xmUCBhbGxlIGVjaHRlbiBEYXRlaWVuIGVyc2V0emVuIG9kZXIgZW50ZmVybmVuLAorZGllIHNpY2ggYW4gU3RlbGxlbiBiZWZpbmRlbiwgYW4gZGVuZW4gZWluIEFsdGVybmF0aXZcLUxpbmsgaW5zdGFsbGllcnQKK3dlcmRlbiBtdXNzLgorLlRQIAorXGZCXC1cLXNraXBcLWF1dG9cZlAKK9xiZXJzcHJpbmd0IGRpZSBLb25maWd1cmF0aW9uc2FiZnJhZ2UgZvxyIEFsdGVybmF0aXZlbiwgZGllIGtvcnJla3QgaW0KK2F1dG9tYXRpc2NoZSBNb2R1cyBrb25maWd1cmllcnQgc2luZC4gRGllc2UgT3B0aW9uIGlzdCBudXIgbWl0IFxmQlwtXC1jb25maWdcZlAKK29kZXIgXGZCXC1cLWFsbFxmUCByZWxldmFudC4KKy5UUCAKK1xmQlwtXC12ZXJib3NlXGZQCitFcnpldWd0IG1laHIgS29tbWVudGFyZSD8YmVyIGRpZSBU5HRpZ2tlaXQgdm9uIFxmQnVwZGF0ZVwtYWx0ZXJuYXRpdmVzXGZQLgorLlRQIAorXGZCXC1cLXF1aWV0XGZQCitFcnpldWdlIGtlaW5lIEtvbW1lbnRhcmUsIGVzIHNlaSBkZW5uLCBlaW4gRmVobGVyIHRyaXR0IGF1Zi4KKy4KKy5TSCBVTUdFQlVORworLlRQIAorXGZCRFBLR19BRE1JTkRJUlxmUAorRmFsbHMgZ2VzZXR6dCB1bmQgZGllIE9wdGlvbiBcZkJcLVwtYWRtaW5kaXJcZlAgbmljaHQgYW5nZWdlYmVuIHd1cmRlLCB3aXJkIGRpZXMKK2FscyBCYXNpc1wtQWRtaW5pc3RyYXRpb25zdmVyemVpY2huaXMgdmVyd2FuZHQuCisuCisuU0ggREFURUlFTgorLlRQIAorXGZJL2V0Yy9hbHRlcm5hdGl2ZXMvXGZQCitEYXMgc3RhbmRhcmRt5N9pZ2UgQWx0ZXJuYXRpdlwtVmVyemVpY2huaXMuIEthbm4gbWl0dGVscyBkZXIgT3B0aW9uCitcZkJcLVwtYWx0ZGlyXGZQIGdl5G5kZXJ0IHdlcmRlbi4KKy5UUCAKK1xmSS92YXIvbGliL2Rwa2cvYWx0ZXJuYXRpdmVzL1xmUAorRGFzIHN0YW5kYXJkbeTfaWdlIGFkbWluaXN0cmF0aXZlIFZlcnplaWNobmlzLiBLYW5uIG1pdHRlbHMgZGVyCitcZkJcLVwtYWRtaW5kaXJcZlAgT3B0aW9uIGdl5G5kZXJ0IHdlcmRlbi4KKy4KKy5TSCBS3ENLR0FCRVdFUlQKKy5UUCAKK1xmQjBcZlAKK0RpZSBhbmdlZm9yZGVydGUgQWt0aW9uIHd1cmRlIGVyZm9sZ3JlaWNoIGF1c2dlZvxocnQuCisuVFAgCitcZkIyXGZQCitCZWltIExlc2VuIGRlciBLb21tYW5kb3plaWxlIG9kZXIgYmVpbSBBdXNm/GhyZW4gZGVyIEFrdGlvbiB0cmF0ZW4gUHJvYmxlbWUKK2F1Zi4KKy4KKy5TSCBBQkZSQUdFXC1GT1JNQVQKK0RhcyBGb3JtYXQgdm9uIFxmQnVwZGF0ZVwtYWx0ZXJuYXRpdmVzIFwtXC1xdWVyeVxmUCBpc3QgZWluIFJGQzgyMlwtYXJ0aWdlcywKK2ZsYWNoZXMgRm9ybWF0LiBFcyBiZXN0ZWh0IGF1cyBcZkluXGZQKzEgQmz2Y2tlbiwgd29iZWkgXGZJblxmUCBkaWUgQW56YWhsIGRlciBpbgorZWluZXIgYWJnZWZyYWd0ZW4gTGlua2dydXBwZSB2ZXJm/GdiYXJlbiBBbHRlcm5hdGl2ZW4gaXN0LiBEZXIgZXJzdGUgQmxvY2sKK2VudGjkbHQgZGllIGZvbGdlbmRlbiBGZWxkZXI6CisuVFAgCitcZkJMaW5rOlxmUFxmSSBMaW5rXGZQCitEZXIgZ2VuZXJpc2NoZSBOYW1lIGRlciBBbHRlcm5hdGl2ZS4KKy5UUCAKK1xmQlN0YXR1czpcZlBcZkkgU3RhdHVzXGZQCitEZXIgU3RhdHVzIGRlciBBbHRlcm5hdGl2ZSAoXGZCYXV0b1xmUCBvZGVyIFxmQm1hbnVhbFxmUCkuCisuVFAgCitcZkJCZXN0OlxmUFxmSSBiZXN0ZVwtV2FobFxmUAorRGVyIFBmYWQgZGVyIGJlc3RlbiBBbHRlcm5hdGl2ZSBm/HIgZGllc2UgTGlua2dydXBwZS4gTmljaHQgdm9yaGFuZGVuLCBmYWxscwora2VpbmUgQWx0ZXJuYXRpdmUgdmVyZvxnYmFyIGlzdC4KKy5UUCAKK1xmQlZhbHVlOlxmUFxmSSBkZXJ6ZWl0XC1hdXNnZXfkaGx0ZVwtQWx0ZXJuYXRpdmVcZlAKK0RlciBQZmFkIGRlciBkZXJ6ZWl0IGF1c2dld+RobHRlbiBBbHRlcm5hdGl2ZS4gRXMgYWt6ZXB0aWVydCBhdWNoIGRlbgorbWFnaXNjaGVuIFdlcnQgXGZCbm9uZVxmUCwgZGVyIHZlcndhbmR0IHdpcmQsIGZhbGxzIGRlciBMaW5rIG5pY2h0IGV4aXN0aWVydC4KKy5UUCAKKy5UUCAKK0RpZSBhbmRlcmVuIEJs9mNrZSBiZXNjaHJlaWJlbiBkaWUgdmVyZvxnYmFyZW4gQWx0ZXJuYXRpdmVuIGluIGRlciBhYmdlZnJhZ3RlbiBMaW5rZ3J1cHBlOgorLlRQIAorXGZCQWx0ZXJuYXRpdmU6XGZQXGZJIFBmYWRcLWRpZXNlclwtQWx0ZXJuYXRpdmVuXGZQCitQZmFkIHp1bSBCbG9jayBkaWVzZXIgQWx0ZXJuYXRpdmVuLgorLlRQIAorXGZCUHJpb3JpdHk6XGZQXGZJIFByaW9yaXTkdHN3ZXJ0XGZQCitXZXJ0IGRlciBQcmlvcml05HQgZGllc2VyIEFsdGVybmF0aXZlbi4KKy5UUCAKK1xmQlNsYXZlczpcZlBcZkkgTGlzdGVcLXZvblwtU2xhdmVzXGZQCitXZW5uIGRpZXNlIEtvcGZ6ZWlsZSB2b3JoYW5kZW4gaXN0IGVudGjkbHQgZGllIFxmQm7kY2hzdGVcZlAgWmVpbGUgYWxsZQorU2xhdmVcLUFsdGVybmF0aXZlbiwgZGllIGRlbSBNYXN0ZXJsaW5rIGRpZXNlciBBbHRlcm5hdGl2ZW4genVnZW9yZG5ldAorc2luZC4gUHJvIFplaWxlIHdpcmQgZWluIFNsYXZlIGF1ZmdlZvxocnQuIEplZGUgWmVpbGUgZW50aORsdCBlaW4KK0xlZXJ6ZWljaGVuLCBkZW4gZ2VuZXJpc2NoZW4gTmFtZW4gZGVzIFNsYXZlcywgZWluIHdlaXRlcmVzIExlZXJ6ZWljaGVuIHVuZAorZGVuIFBmYWQgenUgZGVyIFNsYXZlXC1BbHRlcm5hdGl2ZS4KKy4KKy5UUCAKK1xmQkJlaXNwaWVsXGZQCisubmYKKyQgdXBkYXRlXC1hbHRlcm5hdGl2ZXMgXC1cLXF1ZXJ5IGVkaXRvcgorTGluazogZWRpdG9yCitTdGF0dXM6IGF1dG8KK0Jlc3Q6IC91c3IvYmluL3ZpbS5ndGsKK1ZhbHVlOiAvdXNyL2Jpbi92aW0uZ3RrCisKK0FsdGVybmF0aXZlOiAvYmluL2VkCitQcmlvcml0eTogXC0xMDAKK1NsYXZlczoKKyBlZGl0b3IuMS5neiAvdXNyL3NoYXJlL21hbi9tYW4xL2VkLjEuZ3oKKworQWx0ZXJuYXRpdmU6IC91c3IvYmluL3ZpbS5ndGsKK1ByaW9yaXR5OiA1MAorU2xhdmVzOgorIGVkaXRvci4xLmd6IC91c3Ivc2hhcmUvbWFuL21hbjEvdmltLjEuZ3oKKyBlZGl0b3IucnUuMS5neiAvdXNyL3NoYXJlL21hbi9ydS9tYW4xL3ZpbS4xLmd6CisgZWRpdG9yLnBsLklTTzg4NTlcLTIuMS5neiAvdXNyL3NoYXJlL21hbi9wbC5JU084ODU5XC0yL21hbjEvdmltLjEuZ3oKKyBlZGl0b3IuaXQuSVNPODg1OVwtMS4xLmd6IC91c3Ivc2hhcmUvbWFuL2l0LklTTzg4NTlcLTEvbWFuMS92aW0uMS5negorIGVkaXRvci5wbC5VVEZcLTguMS5neiAvdXNyL3NoYXJlL21hbi9wbC5VVEZcLTgvbWFuMS92aW0uMS5negorIGVkaXRvci5pdC4xLmd6IC91c3Ivc2hhcmUvbWFuL2l0L21hbjEvdmltLjEuZ3oKKyBlZGl0b3IuZnIuVVRGXC04LjEuZ3ogL3Vzci9zaGFyZS9tYW4vZnIuVVRGXC04L21hbjEvdmltLjEuZ3oKKyBlZGl0b3IuZnIuMS5neiAvdXNyL3NoYXJlL21hbi9mci9tYW4xL3ZpbS4xLmd6CisgZWRpdG9yLml0LlVURlwtOC4xLmd6IC91c3Ivc2hhcmUvbWFuL2l0LlVURlwtOC9tYW4xL3ZpbS4xLmd6CisgZWRpdG9yLnBsLjEuZ3ogL3Vzci9zaGFyZS9tYW4vcGwvbWFuMS92aW0uMS5negorIGVkaXRvci5mci5JU084ODU5XC0xLjEuZ3ogL3Vzci9zaGFyZS9tYW4vZnIuSVNPODg1OVwtMS9tYW4xL3ZpbS4xLmd6CisuZmkKKy4KKy5TSCBESUFHTk9TRQorTWl0IFxmQlwtXC12ZXJib3NlXGZQIHF1YXRzY2h0IFxmQnVwZGF0ZVwtYWx0ZXJuYXRpdmVzXGZQIG9obmUgVW50ZXJsYXNzIPxiZXIgc2VpbmUKK0FrdGl2aXTkdGVuIGF1ZiBzZWluZW0gU3RhbmRhcmRhdXNnYWJla2FuYWwuIEZhbGxzIFByb2JsZW1lIGF1ZnRyZXRlbiwgZ2lidAorXGZCdXBkYXRlXC1hbHRlcm5hdGl2ZXNcZlAgZWluZSBGZWhsZXJtZWxkdW5nIGF1ZiBzZWluZW0gU3RhbmRhcmRmZWhsZXJrYW5hbCBhdXMKK3VuZCBiZWVuZGV0IHNpY2ggbWl0IGRlbSBFeGl0XC1TdGF0dXMgMi4gRGllIERpYWdub3N0aWtlbiBzb2xsdGVuCitzZWxic3Rlcmts5HJlbmQgc2VpbjsgZmFsbHMgU2llIGRpZXMgbmljaHQgc28gZW1wZmluZGVuLCBtZWxkZW4gU2llIGRpZXMKK2JpdHRlIGFscyBGZWhsZXIuCisuCisuU0ggQkVJU1BJRUxFCitFcyBnaWJ0IG1laHJlcmUgUGFrZXRlLCBkaWUgZWluZW4genVtIFxmQnZpXGZQXC1rb21wYXRpYmxlbiBUZXh0ZWRpdG9yCitiZXJlaXRzdGVsbGVuLCBiZWlzcGllbHN3ZWlzZSBcZkJudmlcZlAgdW5kIFxmQnZpbVxmUC4gV2VsY2hlciBiZW51dHp0IHdpcmQsIHdpcmQKK2R1cmNoIGRpZSBMaW5rZ3J1cHBlIFxmQnZpXGZQIGVpbmdlc3RlbGx0LCB3ZWxjaGUgTGlua3MgZvxyIGRhcyBQcm9ncmFtbSBzZWxiZXIKK3VuZCBkaWUgenVnZWj2cmlnZSBIYW5kYnVjaHNlaXRlIGJlaW5oYWx0ZXQuCisuUFAKK1VtIGFsbGUgdmVyZvxnYmFyZW4gUHJvZ3JhbW1lIGFuenV6ZWlnZW4sIGRpZSBcZkJ2aVxmUCBiZXJlaXRzdGVsbGVuLCB1bmQgZGllCitkYXp1IGdlaPZyaWdlbiBFaW5zdGVsbHVuZ2VuLCBiZW51dHplbiBTaWUgZGllIEFrdGlvbiBcZkJcLVwtZGlzcGxheVxmUDoKKy5SUworLlBQCitcZkJ1cGRhdGVcLWFsdGVybmF0aXZlcyBcLVwtZGlzcGxheSB2aVxmUAorLlJFCisuUFAKK1VtIGVpbmUgYmVzdGltbXRlIFxmQnZpXGZQXC1JbXBsZW1lbnRhdGlvbiBhdXN6dXfkaGxlbiwgYmVudXR6ZW4gU2llIGFscyBSb290CitkZW4gZm9sZ2VuZGVuIEJlZmVobCB1bmQgd+RobGVuIGRhbm4gZWluZSBaYWhsIGF1cyBkZXIgTGlzdGUgYXVzOgorLlJTCisuUFAKK1xmQnVwZGF0ZVwtYWx0ZXJuYXRpdmVzIFwtXC1jb25maWcgdmlcZlAKKy5SRQorLlBQCitVbSB6dXIgYXV0b21hdGlzY2hlbiBBdXN3YWhsIGRlciBcZkJ2aVxmUFwtSW1wbGVtZW50YXRpb24genVy/GNrenVrZWhyZW4sIGb8aHJlbgorU2llIGZvbGdlbmRlcyBhbHMgUm9vdCBhdXM6CisuUlMKKy5QUAorXGZCdXBkYXRlXC1hbHRlcm5hdGl2ZXMgXC1cLWF1dG8gdmlcZlAKKy5SRQorLgorLlNIIEZFSExFUgorRmFsbHMgU2llIGVpbmVuIEZlaGxlciBmaW5kZW4sIG1lbGRlbiBTaWUgaWhuIGJpdHRlIPxiZXIgZGllIEZlaGxlcmRhdGVuYmFuawordm9uIERlYmlhbi4KKy5QUAorRmFsbHMgU2llIGVpbmVuIFVudGVyc2NoaWVkIHp3aXNjaGVuIGRlciBJbXBsZW1lbnRhdGlvbiB2b24KK1xmQnVwZGF0ZVwtYWx0ZXJuYXRpdmVzXGZQIHVuZCBkaWVzZXIgSGFuZGJ1Y2hzZWl0ZSBmaW5kZW4sIGlzdCBkaWVzIGVpbiBGZWhsZXIsCitlbnR3ZWRlciBpbiBkZXIgSW1wbGVtZW50YXRpb24gb2RlciBpbiBkZXIgRG9rdW1lbnRhdGlvbjsgYml0dGUgbWVsZGVuIFNpZQorZGllcy4KKy4KKy5TSCBBVVRPUkVOCitDb3B5cmlnaHQgXChjbyAxOTk1IElhbiBKYWNrc29uCisuYnIKK0NvcHlyaWdodCBcKGNvIDIwMDkgUmFwaGFcWzplXWwgSGVydHpvZworLnNwCitEaWVzIGlzdCBGcmVpZSBTb2Z0d2FyZTsgbGVzZW4gU2llIGRpZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBWZXJzaW9uIDIKK29kZXIgbmV1ZXIgZvxyIGRpZSBLb3BpZXJiZWRpbmd1bmdlbi4gRXMgZ2lidCBLRUlORSBIYWZ0dW5nLgorLlBQCitEaWVzZSBIYW5kYnVjaHNlaXRlIGlzdCBDb3B5cmlnaHQgMTk5NywxOTk4IGR1cmNoIENoYXJsZXMgQnJpc2NvZVwtU21pdGggdW5kCithbmRlcmVuLgorLnNwCitEaWVzIGlzdCBGcmVpZSBEb2t1bWVudGF0aW9uOyBsZXNlbiBTaWUgZGllIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCitWZXJzaW9uIDIgb2RlciBuZXVlciBm/HIgZGllIEtvcGllcmJlZGluZ3VuZ2VuLiBFcyBnaWJ0IEtFSU5FIEhhZnR1bmcuCisuCisuU0gg3EJFUlNFVFpVTkcKK0RpZSBkZXV0c2NoZSDcYmVyc2V0enVuZyB3dXJkZSAyMDA0LCAyMDA2LTIwMTEgdm9uIEhlbGdlIEtyZXV0em1hbm4KKzxkZWJpYW5AaGVsZ2VmamVsbC5kZT4sIDIwMDcgdm9uIEZsb3JpYW4gUmVobmlzY2ggPGVpeG1hbkBnbXguZGU+IHVuZAorMjAwOCB2b24gU3ZlbiBKb2FjaGltIDxzdmVuam9hY0BnbXguZGU+CithbmdlZmVydGlndC4gRGllc2Ug3GJlcnNldHp1bmcgaXN0IEZyZWllIERva3VtZW50YXRpb247IGxlc2VuIFNpZSBkaWUKK0dOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIFZlcnNpb24gMiBvZGVyIG5ldWVyIGb8ciBkaWUgS29waWVyYmVkaW5ndW5nZW4uCitFcyBnaWJ0IEtFSU5FIEhBRlRVTkcuCisuU0ggIlNJRUhFIEFVQ0giCitcZkJsblxmUCgxKSwgRkhTLCBkZXIgRGF0ZWlzeXN0ZW0gSGllcmFyY2hpZVwtU3RhbmRhcmQgKEZpbGVzeXN0ZW0gSGllcmFyY2h5CitTdGFuZGFyZCkuCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9kZWItY29udHJvbC41IGIvZHBrZy0xLjE2LjEuMS9tYW4vZGViLWNvbnRyb2wuNQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41MWE3YzlhCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vZGViLWNvbnRyb2wuNQpAQCAtMCwwICsxLDI3NiBAQAorLlwiIEF1dGhvcjogUmF1bCBNaWxsZXIKKy5cIiBJbmNsdWRlcyB0ZXh0IGZyb20gdGhlIGRlYmlhbiBHdWlkZWxpbmVzIGJ5IElhbiBKYWNrc29uLCBJYW4gTXVyZG9jaworLlRIIGRlYlwtY29udHJvbCA1ICIyMDExLTA4LTE0IiAiRGViaWFuIFByb2plY3QiICJEZWJpYW4iCisuU0ggTkFNRQorZGViXC1jb250cm9sIFwtIERlYmlhbiBwYWNrYWdlcycgbWFzdGVyIGNvbnRyb2wgZmlsZSBmb3JtYXQKKy4KKy5TSCBTWU5PUFNJUworY29udHJvbAorLgorLlNIIERFU0NSSVBUSU9OCitFYWNoIERlYmlhbiBwYWNrYWdlIGNvbnRhaW5zIHRoZSBtYXN0ZXIgYGNvbnRyb2wnIGZpbGUsIHdoaWNoIGNvbnRhaW5zCithIG51bWJlciBvZiBmaWVsZHMsIG9yIGNvbW1lbnRzIHdoZW4gdGhlIGxpbmUgc3RhcnRzIHdpdGggXGZCJyMnXGZQLiBFYWNoCitmaWVsZCBiZWdpbnMgd2l0aCBhIHRhZywgc3VjaCBhcworLkIgUGFja2FnZQorb3IKKy5CIFZlcnNpb24KKyhjYXNlIGluc2Vuc2l0aXZlKSwgZm9sbG93ZWQgYnkgYSBjb2xvbiwgYW5kIHRoZSBib2R5IG9mIHRoZSBmaWVsZC4KK0ZpZWxkcyBhcmUgZGVsaW1pdGVkIG9ubHkgYnkgZmllbGQgdGFncy4gSW4gb3RoZXIgd29yZHMsIGZpZWxkIHRleHQKK21heSBiZSBtdWx0aXBsZSBsaW5lcyBpbiBsZW5ndGgsIGJ1dCB0aGUgaW5zdGFsbGF0aW9uIHRvb2xzIHdpbGwKK2dlbmVyYWxseSBqb2luIGxpbmVzIHdoZW4gcHJvY2Vzc2luZyB0aGUgYm9keSBvZiB0aGUgZmllbGQgKGV4Y2VwdAoraW4gdGhlIGNhc2Ugb2YgdGhlCisuQiBEZXNjcmlwdGlvbgorZmllbGQsIHNlZSBiZWxvdykuCisuCisuU0ggUkVRVUlSRUQgRklFTERTCisuVFAKKy5CSSBQYWNrYWdlOiAiIHBhY2thZ2UtbmFtZSIKK1RoZSB2YWx1ZSBvZiB0aGlzIGZpZWxkIGRldGVybWluZXMgdGhlIHBhY2thZ2UgbmFtZSwgYW5kIGlzIHVzZWQgdG8KK2dlbmVyYXRlIGZpbGUgbmFtZXMgYnkgbW9zdCBpbnN0YWxsYXRpb24gdG9vbHMuCisuVFAKKy5CSSBWZXJzaW9uOiAiIHZlcnNpb24tc3RyaW5nIgorVHlwaWNhbGx5LCB0aGlzIGlzIHRoZSBvcmlnaW5hbCBwYWNrYWdlJ3MgdmVyc2lvbiBudW1iZXIgaW4gd2hhdGV2ZXIgZm9ybQordGhlIHByb2dyYW0ncyBhdXRob3IgdXNlcy4gSXQgbWF5IGFsc28gaW5jbHVkZSBhIERlYmlhbiByZXZpc2lvbiBudW1iZXIKKyhmb3Igbm9uLW5hdGl2ZSBwYWNrYWdlcykuIFRoZSBleGFjdCBmb3JtYXQgYW5kIHNvcnRpbmcgYWxnb3JpdGhtCithcmUgZGVzY3JpYmVkIGluCisuQlIgZGViXC12ZXJzaW9uICg1KS4KKy5UUAorLkJJIE1haW50YWluZXI6ICIgZnVsbG5hbWUtZW1haWwiCitTaG91bGQgYmUgaW4gdGhlIGZvcm1hdCBgSm9lIEJsb2dncyA8amJsb2dnc0Bmb28uY29tPicsIGFuZCBpcyB0eXBpY2FsbHkKK3RoZSBwZXJzb24gd2hvIGNyZWF0ZWQgdGhlIHBhY2thZ2UsIGFzIG9wcG9zZWQgdG8gdGhlIGF1dGhvciBvZiB0aGUKK3NvZnR3YXJlIHRoYXQgd2FzIHBhY2thZ2VkLgorLlRQCisuQkkgRGVzY3JpcHRpb246ICIgc2hvcnQtZGVzY3JpcHRpb24iCisuQkkgIiAiICJsb25nLWRlc2NyaXB0aW9uIgorLmJyCitUaGUgZm9ybWF0IGZvciB0aGUgcGFja2FnZSBkZXNjcmlwdGlvbiBpcyBhIHNob3J0IGJyaWVmIHN1bW1hcnkgb24gdGhlCitmaXJzdCBsaW5lIChhZnRlciB0aGUgIkRlc2NyaXB0aW9uIiBmaWVsZCkuIFRoZSBmb2xsb3dpbmcgbGluZXMgc2hvdWxkIGJlCit1c2VkIGFzIGEgbG9uZ2VyLCBtb3JlIGRldGFpbGVkIGRlc2NyaXB0aW9uLiBFYWNoIGxpbmUgb2YgdGhlIGxvbmcgZGVzY3JpcHRpb24KK211c3QgYmUgcHJlY2VkZWQgYnkgYSBzcGFjZSwgYW5kIGJsYW5rIGxpbmVzIGluIHRoZSBsb25nIGRlc2NyaXB0aW9uIG11c3QKK2NvbnRhaW4gYSBzaW5nbGUgJy4nIGZvbGxvd2luZyB0aGUgcHJlY2VkaW5nIHNwYWNlLgorLgorLlNIIE9QVElPTkFMIEZJRUxEUworLlRQCisuQkkgU2VjdGlvbjogIiBzZWN0aW9uIgorVGhpcyBpcyBhIGdlbmVyYWwgZmllbGQgdGhhdCBnaXZlcyB0aGUgcGFja2FnZSBhIGNhdGVnb3J5IGJhc2VkIG9uIHRoZQorc29mdHdhcmUgdGhhdCBpdCBpbnN0YWxscy4gU29tZSBjb21tb24gc2VjdGlvbnMgYXJlIGB1dGlscycsIGBuZXQnLAorYG1haWwnLCBgdGV4dCcsIGB4MTEnIGV0Yy4KKy5UUAorLkJJIFByaW9yaXR5OiAiIHByaW9yaXR5IgorU2V0cyB0aGUgaW1wb3J0YW5jZSBvZiB0aGlzIHBhY2thZ2UgaW4gcmVsYXRpb24gdG8gdGhlIHN5c3RlbSBhcyBhIHdob2xlLgorQ29tbW9uIHByaW9yaXRpZXMgYXJlIGByZXF1aXJlZCcsIGBzdGFuZGFyZCcsIGBvcHRpb25hbCcsIGBleHRyYScgZXRjLgorLkxQCitJbiBEZWJpYW4sIHRoZQorLkIgU2VjdGlvbgorYW5kCisuQiBQcmlvcml0eQorZmllbGRzIGhhdmUgYSBkZWZpbmVkIHNldCBvZiBhY2NlcHRlZCB2YWx1ZXMgYmFzZWQgb24gdGhlIFBvbGljeSBNYW51YWwuCitBIGxpc3Qgb2YgdGhlc2UgdmFsdWVzIGNhbiBiZSBvYnRhaW5lZCBmcm9tIHRoZSBsYXRlc3QgdmVyc2lvbiBvZiB0aGUKKy5CIGRlYmlhblwtcG9saWN5CitwYWNrYWdlLgorLlRQCisuQlIgRXNzZW50aWFsOiAiIFxmQnllc1xmUHxcZkJub1xmUCIKK1RoaXMgZmllbGQgaXMgdXN1YWxseSBvbmx5IG5lZWRlZCB3aGVuIHRoZSBhbnN3ZXIgaXMgXGZCeWVzXGZQLiBJdCBkZW5vdGVzCithIHBhY2thZ2UgdGhhdCBpcyByZXF1aXJlZCBmb3IgcHJvcGVyIG9wZXJhdGlvbiBvZiB0aGUgc3lzdGVtLiBEcGtnCitvciBhbnkgb3RoZXIgaW5zdGFsbGF0aW9uIHRvb2wgd2lsbCBub3QgYWxsb3cgYW4KKy5CIEVzc2VudGlhbAorcGFja2FnZSB0byBiZSByZW1vdmVkIChhdCBsZWFzdCBub3Qgd2l0aG91dCB1c2luZyBvbmUgb2YgdGhlIGZvcmNlIG9wdGlvbnMpLgorLlRQCisuQlIgQXJjaGl0ZWN0dXJlOiAiIFxmSWFyY2hcZlB8XGZCYWxsXGZQIgorVGhlIGFyY2hpdGVjdHVyZSBzcGVjaWZpZXMgd2hpY2ggdHlwZSBvZiBoYXJkd2FyZSB0aGlzIHBhY2thZ2Ugd2FzIGNvbXBpbGVkCitmb3IuIENvbW1vbiBhcmNoaXRlY3R1cmVzIGFyZSBgaTM4NicsIGBtNjhrJywgYHNwYXJjJywgYGFscGhhJywgYHBvd2VycGMnCitldGMuIE5vdGUgdGhhdCB0aGUKKy5CIGFsbAorb3B0aW9uIGlzIG1lYW50IGZvciBwYWNrYWdlcyB0aGF0IGFyZSBhcmNoaXRlY3R1cmUgaW5kZXBlbmRlbnQuIFNvbWUgZXhhbXBsZXMKK29mIHRoaXMgYXJlIHNoZWxsIGFuZCBQZXJsIHNjcmlwdHMsIGFuZCBkb2N1bWVudGF0aW9uLgorLlRQCisuQkkgT3JpZ2luOiAiIG5hbWUiCitUaGUgbmFtZSBvZiB0aGUgZGlzdHJpYnV0aW9uIHRoaXMgcGFja2FnZSBpcyBvcmlnaW5hdGluZyBmcm9tLgorLlRQCisuQkkgQnVnczogIiB1cmwiCitUaGUgXGZJdXJsXGZQIG9mIHRoZSBidWcgdHJhY2tpbmcgc3lzdGVtIGZvciB0aGlzIHBhY2thZ2UuIFRoZSBjdXJyZW50Cit1c2VkIGZvcm1hdCBpcyBcZklidHMtdHlwZVxmUFxmQjovL1xmUFxmSWJ0cy1hZGRyZXNzXGZQLCBsaWtlCitcZkJkZWJidWdzOi8vYnVncy5kZWJpYW4ub3JnXGZQLgorLlRQCisuQkkgSG9tZXBhZ2U6ICIgdXJsIgorVGhlIHVwc3RyZWFtIHByb2plY3QgaG9tZSBwYWdlIFxmSXVybFxmUC4KKy5UUAorLkJJIFRhZzogIiB0YWctbGlzdCIKK0xpc3Qgb2YgdGFncyBkZXNjcmliaW5nIHRoZSBxdWFsaXRpZXMgb2YgdGhlIHBhY2thZ2UuIFRoZSBkZXNjcmlwdGlvbiBhbmQKK2xpc3Qgb2Ygc3VwcG9ydGVkIHRhZ3MgY2FuIGJlIGZvdW5kIGluIHRoZSBcZkJkZWJ0YWdzXGZQIHBhY2thZ2UuCisuVFAKKy5CUiBNdWx0aVwtQXJjaDogIiBcZkJzYW1lXGZQfFxmQmZvcmVpZ25cZlB8XGZCYWxsb3dlZFxmUCIKK1RoaXMgZmllbGQgaXMgdXNlZCB0byBpbmRpY2F0ZSBob3cgdGhpcyBwYWNrYWdlIHNob3VsZCBiZWhhdmUgb24gYSBtdWx0aS1hcmNoCitpbnN0YWxsYXRpb25zLiBUaGUgdmFsdWUgXGZCc2FtZVxmUCBtZWFucyB0aGF0IHRoZSBwYWNrYWdlIGlzIGNvLWluc3RhbGxhYmxlCit3aXRoIGl0c2VsZiwgYnV0IGl0IG11c3Qgbm90IGJlIHVzZWQgdG8gc2F0aXNmeSB0aGUgZGVwZW5kZW5jeSBvZiBhbnkgcGFja2FnZQorb2YgYSBkaWZmZXJlbnQgYXJjaGl0ZWN0dXJlIGZyb20gaXRzZWxmLiBUaGUgdmFsdWUgXGZCZm9yZWlnblxmUCBtZWFucyB0aGF0Cit0aGUgcGFja2FnZSBpcyBub3QgY28taW5zdGFsbGFibGUgd2l0aCBpdHNlbGYsIGJ1dCBzaG91bGQgYmUgYWxsb3dlZCB0bworc2F0aXNmeSB0aGUgZGVwZW5kZW5jeSBvZiBhIHBhY2thZ2Ugb2YgYSBkaWZmZXJlbnQgYXJjaCBmcm9tIGl0c2VsZi4gVGhlCit2YWx1ZSBcZkJhbGxvd2VkXGZQIGFsbG93cyByZXZlcnNlLWRlcGVuZGVuY2llcyB0byBpbmRpY2F0ZSBpbiB0aGVpcgorRGVwZW5kcyBmaWVsZCB0aGF0IHRoZXkgbmVlZCBhIHBhY2thZ2UgZnJvbSBhIGZvcmVpZ24gYXJjaGl0ZWN0dXJlLCBidXQKK2hhcyBubyBlZmZlY3Qgb3RoZXJ3aXNlLiBUaGlzIGZpZWxkIHNob3VsZCBub3QgYmUgcHJlc2VudCBpbiBwYWNrYWdlcword2l0aCB0aGUgXGZCQXJjaGl0ZWN0dXJlOiBhbGxcZlAgZmllbGQuCisuVFAKKy5CSSBTb3VyY2U6ICIgc291cmNlLW5hbWUiCitUaGUgbmFtZSBvZiB0aGUgc291cmNlIHBhY2thZ2UgdGhhdCB0aGlzIGJpbmFyeSBwYWNrYWdlIGNhbWUgZnJvbSwgaWYKK2RpZmZlcmVudCB0aGFuIHRoZSBuYW1lIG9mIHRoZSBwYWNrYWdlIGl0c2VsZi4KKworLlRQCisuUEQgMAorLkJJIFN1YmFyY2hpdGVjdHVyZTogIiB2YWx1ZSIKKy5UUAorLlBEIDAKKy5CSSBLZXJuZWxcLVZlcnNpb246ICIgdmFsdWUiCisuVFAKKy5QRAorLkJJIEluc3RhbGxlclwtTWVudVwtSXRlbTogIiB2YWx1ZSIKK1RoZXNlIGZpZWxkcyBhcmUgdXNlZCBieSB0aGUgZGViaWFuXC1pbnN0YWxsZXIgYW5kIGFyZSB1c3VhbGx5IG5vdCBuZWVkZWQuCitTZWUgL3Vzci9zaGFyZS9kb2MvZGViaWFuXC1pbnN0YWxsZXIvZGV2ZWwvbW9kdWxlcy50eHQgZnJvbSB0aGUKKy5CIGRlYmlhblwtaW5zdGFsbGVyCitwYWNrYWdlIGZvciBtb3JlIGRldGFpbHMgYWJvdXQgdGhlbS4KKworLlRQCisuQkkgRGVwZW5kczogIiBwYWNrYWdlLWxpc3QiCitMaXN0IG9mIHBhY2thZ2VzIHRoYXQgYXJlIHJlcXVpcmVkIGZvciB0aGlzIHBhY2thZ2UgdG8gcHJvdmlkZSBhCitub24tdHJpdmlhbCBhbW91bnQgb2YgZnVuY3Rpb25hbGl0eS4gVGhlIHBhY2thZ2UgbWFpbnRlbmFuY2Ugc29mdHdhcmUKK3dpbGwgbm90IGFsbG93IGEgcGFja2FnZSB0byBiZSBpbnN0YWxsZWQgaWYgdGhlIHBhY2thZ2VzIGxpc3RlZCBpbiBpdHMKKy5CIERlcGVuZHMKK2ZpZWxkIGFyZW4ndCBpbnN0YWxsZWQgKGF0IGxlYXN0IG5vdCB3aXRob3V0IHVzaW5nIHRoZSBmb3JjZSBvcHRpb25zKS4KK0luIGFuIGluc3RhbGxhdGlvbiwgdGhlIHBvc3RpbnN0IHNjcmlwdHMgb2YgcGFja2FnZXMgbGlzdGVkIGluIERlcGVuZHM6CitmaWVsZHMgYXJlIHJ1biBiZWZvcmUgdGhvc2Ugb2YgdGhlIHBhY2thZ2VzIHdoaWNoIGRlcGVuZCBvbiB0aGVtLiBPbiB0aGUKK29wcG9zaXRlLCBpbiBhIHJlbW92YWwsIHRoZSBwcmVybSBzY3JpcHQgb2YgYSBwYWNrYWdlIGlzIHJ1biBiZWZvcmUKK3Rob3NlIG9mIHRoZSBwYWNrYWdlcyBsaXN0ZWQgaW4gaXRzIERlcGVuZHM6IGZpZWxkLgorLlRQCisuQkkgUHJlXC1EZXBlbmRzOiAiIHBhY2thZ2UtbGlzdCIKK0xpc3Qgb2YgcGFja2FnZXMgdGhhdCBtdXN0IGJlIGluc3RhbGxlZAorLkIgYW5kCitjb25maWd1cmVkIGJlZm9yZSB0aGlzIG9uZSBjYW4gYmUgaW5zdGFsbGVkLiBUaGlzIGlzIHVzdWFsbHkgdXNlZCBpbiB0aGUKK2Nhc2Ugd2hlcmUgdGhpcyBwYWNrYWdlIHJlcXVpcmVzIGFub3RoZXIgcGFja2FnZSBmb3IgcnVubmluZyBpdHMgcHJlaW5zdAorc2NyaXB0LgorLlRQCisuQkkgUmVjb21tZW5kczogIiBwYWNrYWdlLWxpc3QiCitMaXN0cyBwYWNrYWdlcyB0aGF0IHdvdWxkIGJlIGZvdW5kIHRvZ2V0aGVyIHdpdGggdGhpcyBvbmUgaW4gYWxsIGJ1dAordW51c3VhbCBpbnN0YWxsYXRpb25zLiBUaGUgcGFja2FnZSBtYWludGVuYW5jZSBzb2Z0d2FyZSB3aWxsIHdhcm4gdGhlCit1c2VyIGlmIHRoZXkgaW5zdGFsbCBhIHBhY2thZ2Ugd2l0aG91dCB0aG9zZSBsaXN0ZWQgaW4gaXRzCisuQiBSZWNvbW1lbmRzCitmaWVsZC4KKy5UUAorLkJJIFN1Z2dlc3RzOiAiIHBhY2thZ2UtbGlzdCIKK0xpc3RzIHBhY2thZ2VzIHRoYXQgYXJlIHJlbGF0ZWQgdG8gdGhpcyBvbmUgYW5kIGNhbiBwZXJoYXBzIGVuaGFuY2UKK2l0cyB1c2VmdWxuZXNzLCBidXQgd2l0aG91dCB3aGljaCBpbnN0YWxsaW5nIHRoaXMgcGFja2FnZSBpcyBwZXJmZWN0bHkKK3JlYXNvbmFibGUuCisuTFAKK1RoZSBzeW50YXggb2YKKy5CUiBEZXBlbmRzICwKKy5CUiBQcmVcLURlcGVuZHMgLAorLkIgUmVjb21tZW5kcworYW5kCisuQiBTdWdnZXN0cworZmllbGRzIGlzIGEgbGlzdCBvZiBncm91cHMgb2YgYWx0ZXJuYXRpdmUgcGFja2FnZXMuIEVhY2ggZ3JvdXAgaXMgYSBsaXN0CitvZiBwYWNrYWdlcyBzZXBhcmF0ZWQgYnkgdmVydGljYWwgYmFyIChvciBgcGlwZScpIHN5bWJvbHMsIGB8Jy4gVGhlCitncm91cHMgYXJlIHNlcGFyYXRlZCBieSBjb21tYXMuIENvbW1hcyBhcmUgdG8gYmUgcmVhZCBhcyBgQU5EJywgYW5kIHBpcGVzCithcyBgT1InLCB3aXRoIHBpcGVzIGJpbmRpbmcgbW9yZSB0aWdodGx5LiBFYWNoIHBhY2thZ2UgbmFtZSBpcworb3B0aW9uYWxseSBmb2xsb3dlZCBieSBhIHZlcnNpb24gbnVtYmVyIHNwZWNpZmljYXRpb24gaW4gcGFyZW50aGVzZXMuCisuTFAKK0EgdmVyc2lvbiBudW1iZXIgbWF5IHN0YXJ0IHdpdGggYSBgPj4nLCBpbiB3aGljaCBjYXNlIGFueSBsYXRlciB2ZXJzaW9uCit3aWxsIG1hdGNoLCBhbmQgbWF5IHNwZWNpZnkgb3Igb21pdCB0aGUgRGViaWFuIHBhY2thZ2luZyByZXZpc2lvbiAoc2VwYXJhdGVkCitieSBhIGh5cGhlbikuIEFjY2VwdGVkIHZlcnNpb24gcmVsYXRpb25zaGlwcyBhcmUgIj4+IiBmb3IgZ3JlYXRlciB0aGFuLAorIjw8IiBmb3IgbGVzcyB0aGFuLCAiPj0iIGZvciBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8sICI8PSIgZm9yIGxlc3MgdGhhbgorb3IgZXF1YWwgdG8sIGFuZCAiPSIgZm9yIGVxdWFsIHRvLgorLlRQCisuQkkgQnJlYWtzOiAiIHBhY2thZ2UtbGlzdCIKK0xpc3RzIHBhY2thZ2VzIHRoYXQgdGhpcyBvbmUgYnJlYWtzLCBmb3IgZXhhbXBsZSBieSBleHBvc2luZyBidWdzCit3aGVuIHRoZSBuYW1lZCBwYWNrYWdlcyByZWx5IG9uIHRoaXMgb25lLiBUaGUgcGFja2FnZSBtYWludGVuYW5jZQorc29mdHdhcmUgd2lsbCBub3QgYWxsb3cgYnJva2VuIHBhY2thZ2VzIHRvIGJlIGNvbmZpZ3VyZWQ7IGdlbmVyYWxseQordGhlIHJlc29sdXRpb24gaXMgdG8gdXBncmFkZSB0aGUgcGFja2FnZXMgbmFtZWQgaW4gYQorLkIgQnJlYWtzCitmaWVsZC4KKy5UUAorLkJJIENvbmZsaWN0czogIiBwYWNrYWdlLWxpc3QiCitMaXN0cyBwYWNrYWdlcyB0aGF0IGNvbmZsaWN0IHdpdGggdGhpcyBvbmUsIGZvciBleGFtcGxlIGJ5IGNvbnRhaW5pbmcKK2ZpbGVzIHdpdGggdGhlIHNhbWUgbmFtZXMuIFRoZSBwYWNrYWdlIG1haW50ZW5hbmNlIHNvZnR3YXJlIHdpbGwgbm90CithbGxvdyBjb25mbGljdGluZyBwYWNrYWdlcyB0byBiZSBpbnN0YWxsZWQgYXQgdGhlIHNhbWUgdGltZS4gVHdvCitjb25mbGljdGluZyBwYWNrYWdlcyBzaG91bGQgZWFjaCBpbmNsdWRlIGEKKy5CIENvbmZsaWN0cworbGluZSBtZW50aW9uaW5nIHRoZSBvdGhlci4KKy5UUAorLkJJIFJlcGxhY2VzOiAiIHBhY2thZ2UtbGlzdCIKK0xpc3Qgb2YgcGFja2FnZXMgZmlsZXMgZnJvbSB3aGljaCB0aGlzIG9uZSByZXBsYWNlcy4gVGhpcyBpcyB1c2VkIGZvcgorYWxsb3dpbmcgdGhpcyBwYWNrYWdlIHRvIG92ZXJ3cml0ZSB0aGUgZmlsZXMgb2YgYW5vdGhlciBwYWNrYWdlIGFuZAoraXMgdXN1YWxseSB1c2VkIHdpdGggdGhlCisuQiBDb25mbGljdHMKK2ZpZWxkIHRvIGZvcmNlIHJlbW92YWwgb2YgdGhlIG90aGVyIHBhY2thZ2UsIGlmIHRoaXMgb25lIGFsc28gaGFzIHRoZQorc2FtZSBmaWxlcyBhcyB0aGUgY29uZmxpY3RlZCBwYWNrYWdlLgorLlRQCisuQkkgUHJvdmlkZXM6ICIgcGFja2FnZS1saXN0IgorVGhpcyBpcyBhIGxpc3Qgb2YgdmlydHVhbCBwYWNrYWdlcyB0aGF0IHRoaXMgb25lIHByb3ZpZGVzLiBVc3VhbGx5IHRoaXMgaXMKK3VzZWQgaW4gdGhlIGNhc2Ugb2Ygc2V2ZXJhbCBwYWNrYWdlcyBhbGwgcHJvdmlkaW5nIHRoZSBzYW1lIHNlcnZpY2UuCitGb3IgZXhhbXBsZSwgc2VuZG1haWwgYW5kIGV4aW0gY2FuIHNlcnZlIGFzIGEgbWFpbCBzZXJ2ZXIsIHNvIHRoZXkKK3Byb3ZpZGUgYSBjb21tb24gcGFja2FnZSAoYG1haWxcLXRyYW5zcG9ydFwtYWdlbnQnKSBvbiB3aGljaCBvdGhlciBwYWNrYWdlcworY2FuIGRlcGVuZC4gVGhpcyB3aWxsIGFsbG93IHNlbmRtYWlsIG9yIGV4aW0gdG8gc2VydmUgYXMgYSB2YWxpZCBvcHRpb24KK3RvIHNhdGlzZnkgdGhlIGRlcGVuZGVuY3kuIFRoaXMgcHJldmVudHMgdGhlIHBhY2thZ2VzIHRoYXQgZGVwZW5kIG9uIGEgbWFpbAorc2VydmVyIGZyb20gaGF2aW5nIHRvIGtub3cgdGhlIHBhY2thZ2UgbmFtZXMgZm9yIGFsbCBvZiB0aGVtLCBhbmQgdXNpbmcKK2B8JyB0byBzZXBhcmF0ZSB0aGUgbGlzdC4KKy5MUAorVGhlIHN5bnRheCBvZgorLkJSIEJyZWFrcyAsCisuQlIgQ29uZmxpY3RzICwKKy5CIFJlcGxhY2VzCithbmQKKy5CIFByb3ZpZGVzCitpcyBhIGxpc3Qgb2YgcGFja2FnZSBuYW1lcywgc2VwYXJhdGVkIGJ5IGNvbW1hcyAoYW5kIG9wdGlvbmFsIHdoaXRlc3BhY2UpLgorSW4gdGhlCisuQiBCcmVha3MKK2FuZAorLkIgQ29uZmxpY3RzCitmaWVsZHMsIHRoZSBjb21tYSBzaG91bGQgYmUgcmVhZCBhcyBgT1InLiBBbiBvcHRpb25hbCB2ZXJzaW9uIGNhbiBhbHNvIGJlCitnaXZlbiB3aXRoIHRoZSBzYW1lIHN5bnRheCBhcyBhYm92ZSBmb3IgdGhlCisuQlIgQnJlYWtzICwKKy5CIENvbmZsaWN0cworYW5kCisuQiBSZXBsYWNlcworZmllbGRzLgorLgorLlRQCisuQkkgQnVpbHRcLVVzaW5nOiAiIHBhY2thZ2UtbGlzdCIKK1RoaXMgZmllbGQgbGlzdHMgZXh0cmEgc291cmNlIHBhY2thZ2VzIHRoYXQgd2VyZSB1c2VkIGR1cmluZyB0aGUgYnVpbGQgb2YgdGhpcworYmluYXJ5IHBhY2thZ2UuICBUaGlzIGlzIGFuIGluZGljYXRpb24gdG8gdGhlIGFyY2hpdmUgbWFpbnRlbmFuY2Ugc29mdHdhcmUgdGhhdAordGhlc2UgZXh0cmEgc291cmNlIHBhY2thZ2VzIG11c3QgYmUga2VwdCB3aGlsc3QgdGhpcyBiaW5hcnkgcGFja2FnZSBpcworbWFpbnRhaW5lZC4gIFRoaXMgZmllbGQgbXVzdCBiZSBhIGxpc3Qgb2Ygc291cmNlIHBhY2thZ2UgbmFtZXMgd2l0aCBzdHJpY3QgKD0pCit2ZXJzaW9uIHJlbGF0aW9uc2hpcHMuICBOb3RlIHRoYXQgdGhlIGFyY2hpdmUgbWFpbnRlbmFuY2Ugc29mdHdhcmUgaXMgbGlrZWx5IHRvCityZWZ1c2UgdG8gYWNjZXB0IGFuIHVwbG9hZCB3aGljaCBkZWNsYXJlcyBhCisuQiBCdWlsdFwtVXNpbmcKK3JlbGF0aW9uc2hpcCB3aGljaCBjYW5ub3QgYmUgc2F0aXNmaWVkIHdpdGhpbiB0aGUgYXJjaGl2ZS4KKy4KKy5TSCBFWEFNUExFCisuXCIgLlJTCisubmYKKyMgQ29tbWVudAorUGFja2FnZTogZ3JlcAorRXNzZW50aWFsOiB5ZXMKK1ByaW9yaXR5OiByZXF1aXJlZAorU2VjdGlvbjogYmFzZQorTWFpbnRhaW5lcjogV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KK0FyY2hpdGVjdHVyZTogc3BhcmMKK1ZlcnNpb246IDIuNFwtMQorUHJlXC1EZXBlbmRzOiBsaWJjNiAoPj0gMi4wLjEwNSkKK1Byb3ZpZGVzOiByZ3JlcAorQ29uZmxpY3RzOiByZ3JlcAorRGVzY3JpcHRpb246IEdOVSBncmVwLCBlZ3JlcCBhbmQgZmdyZXAuCisgVGhlIEdOVSBmYW1pbHkgb2YgZ3JlcCB1dGlsaXRpZXMgbWF5IGJlIHRoZSAiZmFzdGVzdCBncmVwIGluIHRoZSB3ZXN0Ii4KKyBHTlUgZ3JlcCBpcyBiYXNlZCBvbiBhIGZhc3QgbGF6eS1zdGF0ZSBkZXRlcm1pbmlzdGljIG1hdGNoZXIgKGFib3V0CisgdHdpY2UgYXMgZmFzdCBhcyBzdG9jayBVbml4IGVncmVwKSBoeWJyaWRpemVkIHdpdGggYSBCb3llci1Nb29yZS1Hb3NwZXIKKyBzZWFyY2ggZm9yIGEgZml4ZWQgc3RyaW5nIHRoYXQgZWxpbWluYXRlcyBpbXBvc3NpYmxlIHRleHQgZnJvbSBiZWluZworIGNvbnNpZGVyZWQgYnkgdGhlIGZ1bGwgcmVnZXhwIG1hdGNoZXIgd2l0aG91dCBuZWNlc3NhcmlseSBoYXZpbmcgdG8KKyBsb29rIGF0IGV2ZXJ5IGNoYXJhY3Rlci4gVGhlIHJlc3VsdCBpcyB0eXBpY2FsbHkgbWFueSB0aW1lcyBmYXN0ZXIKKyB0aGFuIFVuaXggZ3JlcCBvciBlZ3JlcC4gKFJlZ3VsYXIgZXhwcmVzc2lvbnMgY29udGFpbmluZyBiYWNrcmVmZXJlbmNpbmcKKyB3aWxsIHJ1biBtb3JlIHNsb3dseSwgaG93ZXZlcikuCisuZmkKKy5cIiAuUkUKKy4KKy5TSCBTRUUgQUxTTworLkJSIGRlYiAoNSksCisuQlIgZGViXC12ZXJzaW9uICg1KSwKKy5CUiBkZWJ0YWdzICgxKSwKKy5CUiBkcGtnICgxKSwKKy5CUiBkcGtnXC1kZWIgKDEpLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vZGViLWV4dHJhLW92ZXJyaWRlLjUgYi9kcGtnLTEuMTYuMS4xL21hbi9kZWItZXh0cmEtb3ZlcnJpZGUuNQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lMzAxYWYwCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vZGViLWV4dHJhLW92ZXJyaWRlLjUKQEAgLTAsMCArMSw0MCBAQAorLlRIIGRlYlwtZXh0cmFcLW92ZXJyaWRlIDUgIjIwMDktMDgtMTYiICJEZWJpYW4gUHJvamVjdCIgImRwa2cgdXRpbGl0aWVzIgorLlNIIE5BTUUKK2RlYlwtZXh0cmFcLW92ZXJyaWRlIFwtIERlYmlhbiBhcmNoaXZlIGV4dHJhIG92ZXJyaWRlIGZpbGUKKy4KKy5TSCBTWU5PUFNJUworb3ZlcnJpZGUKKy4KKy5TSCBERVNDUklQVElPTgorV2hpbGUgbW9zdCBpbmZvcm1hdGlvbiBhYm91dCBhIGJpbmFyeS9zb3VyY2UgcGFja2FnZSBjYW4gYmUgZm91bmQgaW4gdGhlCitjb250cm9sLy5kc2MgZmlsZSwgYWxsIG9mIGl0IGNhbiBiZSBvdmVycmlkZGVuIHdoZW4gaXQncyBleHBvcnRlZCB0bworUGFja2FnZXMvU291cmNlcyBmaWxlcy4gVGhlIGV4dHJhIG92ZXJyaWRlIGZpbGUgY29udGFpbnMgdGhvc2Ugb3ZlcnJpZGVzLgorLlBQCitUaGUgZXh0cmEgb3ZlcnJpZGUgZmlsZSBoYXMgYSBzaW1wbGUgd2hpdGVzcGFjZS1kZWxpbWl0ZWQgZm9ybWF0LiBDb21tZW50cyBhcmUKK2FsbG93ZWQgKGRlbm90ZWQgd2l0aCBhCisuQlIgIyApLgorLlBQCisuaW4gKzUKKy5JIHBhY2thZ2UKKy5JIGZpZWxkXC1uYW1lCisuSSB2YWx1ZQorLmluIC01CisuUFAKKy5JIHBhY2thZ2UKK2lzIHRoZSBuYW1lIG9mIHRoZSBiaW5hcnkvc291cmNlIHBhY2thZ2UuCisuUFAKKy5JIGZpZWxkXC1uYW1lCitpcyB0aGUgbmFtZSBvZiB0aGUgZmllbGQgdGhhdCBpcyBvdmVycmlkZGVuLgorLkkgdmFsdWUKK2lzIHRoZSB2YWx1ZSB0byBwdXQgaW4gdGhlIGZpZWxkLiBJdCBjYW4gY29udGFpbiBzcGFjZXMgYXMgdGhlIGxpbmUgaXMgc3BsaXQKK2luIG5vIG1vcmUgdGhhbiAzIGNvbHVtbnMgd2hlbiBpdCdzIHBhcnNlZC4KKy5QUAorVGhlIGV4dHJhIG92ZXJyaWRlIGZpbGVzIHVzZWQgdG8gbWFrZSB0aGUgb2ZmaWNpYWwgUGFja2FnZXMgbGlzdHMgbWF5IGJlIGZvdW5kCitpbiB0aGUKKy5JIGluZGljZXMKK2RpcmVjdG9yeSBvbiBhbnkgRGViaWFuIG1pcnJvci4KKy4KKy5TSCBTRUUgQUxTTworLkJSIGRwa2dcLXNjYW5wYWNrYWdlcyAoMSksCisuQlIgZHBrZ1wtc2NhbnNvdXJjZXMgKDEpLAorLkJSIGFwdFwtZnRwYXJjaGl2ZSAoMSkuCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9kZWItb2xkLjUgYi9kcGtnLTEuMTYuMS4xL21hbi9kZWItb2xkLjUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTFlZmJiNwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL2RlYi1vbGQuNQpAQCAtMCwwICsxLDU0IEBACisuVEggZGViXC1vbGQgNSAiMjAxMS0wOC0xNCIgIkRlYmlhbiBQcm9qZWN0IiAiRGViaWFuIgorLlNIIE5BTUUKK2RlYlwtb2xkIFwtIG9sZCBzdHlsZSBEZWJpYW4gYmluYXJ5IHBhY2thZ2UgZm9ybWF0CisuCisuU0ggU1lOT1BTSVMKKy5JQiBmaWxlbmFtZSAuZGViCisuCisuU0ggREVTQ1JJUFRJT04KK1RoZQorLkIgLmRlYgorZm9ybWF0IGlzIHRoZSBEZWJpYW4gYmluYXJ5IHBhY2thZ2UgZmlsZSBmb3JtYXQuIFRoaXMgbWFudWFsIHBhZ2UKK2Rlc2NyaWJlcyB0aGUKKy5CIG9sZAorZm9ybWF0LCB1c2VkIGJlZm9yZSBEZWJpYW4gMC45My4gUGxlYXNlIHNlZQorLkJSIGRlYiAoNSkKK2ZvciBkZXRhaWxzIG9mIHRoZSBuZXcgZm9ybWF0LgorLgorLlNIIEZPUk1BVAorVGhlIGZpbGUgaXMgdHdvIGxpbmVzIG9mIGZvcm1hdCBpbmZvcm1hdGlvbiBhcyBBU0NJSSB0ZXh0LCBmb2xsb3dlZCBieQordHdvIGNvbmNhdGVuYXRlZCBnemlwcGVkIHVzdGFyIGZpbGVzLgorLlBQCitUaGUgZmlyc3QgbGluZSBpcyB0aGUgZm9ybWF0IHZlcnNpb24gbnVtYmVyIHBhZGRlZCB0byA4IGRpZ2l0cywgYW5kIGlzCisuQiAwLjkzOTAwMAorZm9yIGFsbCBvbGQtZm9ybWF0IGFyY2hpdmVzLgorLlBQCitUaGUgc2Vjb25kIGxpbmUgaXMgYSBkZWNpbWFsIHN0cmluZyAod2l0aG91dCBsZWFkaW5nIHplcm9lcykgZ2l2aW5nCit0aGUgbGVuZ3RoIG9mIHRoZSBmaXJzdCBnemlwcGVkIHRhcmZpbGUuCisuUFAKK0VhY2ggb2YgdGhlc2UgbGluZXMgaXMgdGVybWluYXRlZCB3aXRoIGEgc2luZ2xlIG5ld2xpbmUgY2hhcmFjdGVyLgorLlBQCitUaGUgZmlyc3QgdGFyZmlsZSBjb250YWlucyB0aGUgY29udHJvbCBpbmZvcm1hdGlvbiwgYXMgYSBzZXJpZXMgb2YKK29yZGluYXJ5IGZpbGVzLiBUaGUgZmlsZQorLkIgY29udHJvbAorbXVzdCBiZSBwcmVzZW50LCBhcyBpdCBjb250YWlucyB0aGUgY29yZSBjb250cm9sIGluZm9ybWF0aW9uLgorLlBQCitJbiBzb21lIHZlcnkgb2xkIGFyY2hpdmVzLCB0aGUgZmlsZXMgaW4gdGhlIGNvbnRyb2wgdGFyZmlsZSBtYXkKK29wdGlvbmFsbHkgYmUgaW4gYQorLkIgREVCSUFOCitzdWJkaXJlY3RvcnkuIEluIHRoYXQgY2FzZSwgdGhlCisuQiBERUJJQU4KK3N1YmRpcmVjdG9yeSB3aWxsIGJlIGluIHRoZSBjb250cm9sIHRhcmZpbGUgdG9vLCBhbmQgdGhlIGNvbnRyb2wKK3RhcmZpbGUgd2lsbCBoYXZlIG9ubHkgZmlsZXMgaW4gdGhhdCBkaXJlY3RvcnkuIE9wdGlvbmFsbHkgdGhlCitjb250cm9sIHRhcmZpbGUgbWF5IGNvbnRhaW4gYW4gZW50cnkgZm9yCisuUkIgYCAuICcsCit0aGF0IGlzLCB0aGUgY3VycmVudCBkaXJlY3RvcnkuCisuUFAKK1RoZSBzZWNvbmQgZ3ppcHBlZCB0YXJmaWxlIGlzIHRoZSBmaWxlc3lzdGVtIGFyY2hpdmUsIGNvbnRhaW5pbmcKK3BhdGhuYW1lcyByZWxhdGl2ZSB0byB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhlIHN5c3RlbSB0byBiZSBpbnN0YWxsZWQKK29uLiBUaGUgcGF0aG5hbWVzIGRvIG5vdCBoYXZlIGxlYWRpbmcgc2xhc2hlcy4KKy4KKy5TSCBTRUUgQUxTTworLkJSIGRlYiAoNSksCisuQlIgZHBrZ1wtZGViICgxKSwKKy5CUiBkZWJcLWNvbnRyb2wgKDUpLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vZGViLW92ZXJyaWRlLjUgYi9kcGtnLTEuMTYuMS4xL21hbi9kZWItb3ZlcnJpZGUuNQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45ZDkzMGYyCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vZGViLW92ZXJyaWRlLjUKQEAgLTAsMCArMSw2NiBAQAorLlwiIFRoaXMgbWFucGFnZSBpcyBjb3B5cmlnaHQgKEMpIDE5OTYgTWljaGFlbCBTaGllbGRzIDxzaGllbGRzQGNyb3NzbGluay5uZXQ+LgorLlwiIAorLlwiIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IG1heSByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorLlwiIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisuXCIgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKy5cIiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorLlwiCisuXCIgVGhpcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorLlwiIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisuXCIgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorLlwiIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisuXCIKKy5cIiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorLlwiIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorLlRIIGRlYlwtb3ZlcnJpZGUgNSAiMjAxMS0wOC0xNCIgIkRlYmlhbiBQcm9qZWN0IiAiZHBrZyB1dGlsaXRpZXMiCisuU0ggTkFNRQorZGViXC1vdmVycmlkZSBcLSBEZWJpYW4gYXJjaGl2ZSBvdmVycmlkZSBmaWxlCisuCisuU0ggU1lOT1BTSVMKK292ZXJyaWRlCisuCisuU0ggREVTQ1JJUFRJT04KK1doaWxlIG1vc3QgaW5mb3JtYXRpb24gYWJvdXQgYSBwYWNrYWdlIGNhbiBiZSBmb3VuZCBpbiB0aGUgY29udHJvbCBmaWxlLAorc29tZSBpcyBtYW5hZ2VkIGNlbnRyYWxseSBieSB0aGUgZGlzdHJpYnV0aW9uIGN6YXJzIHJhdGhlciB0aGFuIGJ5IHRoZQorbWFpbnRhaW5lciBpbiBvcmRlciB0byBvZmZlciBzb21lIGdsb2JhbCBjb25zaXN0ZW5jeS4KK1RoaXMgaW5mb3JtYXRpb24gaXMgZm91bmQgaW4gdGhlIG92ZXJyaWRlIGZpbGUuCisuUFAKK1RoZSBvdmVycmlkZSBmaWxlIGhhcyBhIHNpbXBsZSB3aGl0ZXNwYWNlLWRlbGltaXRlZCBmb3JtYXQuIENvbW1lbnRzIGFyZQorYWxsb3dlZCAoZGVub3RlZCB3aXRoIGEKKy5CUiAjICkuCisuUFAKKy5pbiArNQorLkkgcGFja2FnZQorLkkgcHJpb3JpdHkKKy5JIHNlY3Rpb24KKy5SSSBbIG1haW50YWluZXJpbmZvIF0KKy5pbiAtNQorLlBQCisuSSBwYWNrYWdlCitpcyB0aGUgbmFtZSBvZiB0aGUgcGFja2FnZS4gRW50cmllcyBpbiB0aGUgb3ZlcnJpZGUgZmlsZSBmb3IgcGFja2FnZXMKK25vdCBmb3VuZCBpbiB0aGUgdHJlZSBvZiBiaW5hcnkgcGFja2FnZXMgYXJlIGlnbm9yZWQuCisuUFAKKy5JIHByaW9yaXR5CithbmQKKy5JIHNlY3Rpb24KK2NvcnJlc3BvbmQgdG8gdGhlIHJlc3BlY3RpdmUgY29udHJvbCBmaWVsZHMgYXZhaWxhYmxlIGluIHRoZSAuZGViLiBUaGUKK2FsbG93ZWQgdmFsdWVzIGFyZSBsaXN0ZWQgaW4gdGhlIERlYmlhbiBwb2xpY3kuCisuUFAKKy5JUiBtYWludGFpbmVyaW5mbyAsCitpZiBwcmVzZW50LCBjYW4gYmUgZWl0aGVyIHRoZSBuYW1lIG9mIGEgbWFpbnRhaW5lciBmb3IgYW4gdW5jb25kaXRpb25hbAorb3ZlcnJpZGUsIG9yIGVsc2UKKy5JIG9sZG1haW50YWluZXIKKy5CID0+CisuSSBuZXdtYWludGFpbmVyCit0byBwZXJmb3JtIGEgc3Vic3RpdHV0aW9uLgorLlBQCitUaGUgb3ZlcnJpZGUgZmlsZXMgdXNlZCB0byBtYWtlIHRoZSBvZmZpY2lhbCBQYWNrYWdlcyBsaXN0cyBtYXkgYmUgZm91bmQKK2luIHRoZQorLkkgaW5kaWNlcworZGlyZWN0b3J5IG9uIGFueSBEZWJpYW4gbWlycm9yLgorLgorLlNIIFNFRSBBTFNPCisuQlIgZHBrZ1wtc2NhbnBhY2thZ2VzICgxKSwKKy5CUiBkcGtnXC1zY2Fuc291cmNlcyAoMSksCisuQlIgYXB0XC1mdHBhcmNoaXZlICgxKSwKKy5CUiAvdXNyL3NoYXJlL2RvYy9kZWJpYW5cLXBvbGljeS9wb2xpY3kuaHRtbC9pbmRleC5odG1sIC4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL2RlYi1zaGxpYnMuNSBiL2Rwa2ctMS4xNi4xLjEvbWFuL2RlYi1zaGxpYnMuNQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42YWVhYzY4Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vZGViLXNobGlicy41CkBAIC0wLDAgKzEsNjMgQEAKKy5cIiBDb3B5cmlnaHQgwqkgMTk5NiBNaWNoYWVsIFNoaWVsZHMgPHNoaWVsZHNAY3Jvc3NsaW5rLm5ldD4KKy5cIiBDb3B5cmlnaHQgwqkgMjAwOCBaYWNrIFdlaW5iZXJnIDx6YWNrd0BwYW5peC5jb20+CisuXCIgCisuXCIgVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgbWF5IHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisuXCIgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKy5cIiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorLlwiIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisuXCIKKy5cIiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisuXCIgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKy5cIiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisuXCIgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKy5cIgorLlwiIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisuXCIgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisuVEggZGViXC1zaGxpYnMgNSAiMjAwOC0wMi0xNyIgIkRlYmlhbiBQcm9qZWN0IiAiZHBrZyB1dGlsaXRpZXMiCisuU0ggTkFNRQorZGViXC1zaGxpYnMgXC0gRGViaWFuIHNoYXJlZCBsaWJyYXJ5IGluZm9ybWF0aW9uIGZpbGUKKy4KKy5TSCBERVNDUklQVElPTgorLlBQCisuQiBzaGxpYnMKK2ZpbGVzIG1hcCBzaGFyZWQgbGlicmFyeSBuYW1lcyBhbmQgdmVyc2lvbnMKKy5SSSAoIHNvbmFtZXMgKQordG8gZGVwZW5kZW5jaWVzIHN1aXRhYmxlIGZvciBhIHBhY2thZ2UgY29udHJvbCBmaWxlLiAgVGhlcmUgaXMgb25lCitlbnRyeSBwZXIgbGluZS4gQmxhbmsgbGluZXMgYXJlIFxmQm5vdFxmUCBhbGxvd2VkLiAgTGluZXMgYmVnaW5uaW5nCit3aXRoIGFuIFxmQiNcZlAgY2hhcmFjdGVyIGFyZSBjb25zaWRlcmVkIGNvbW1lbnRhcnksIGFuZCBhcmUgaWdub3JlZC4KK0FsbCBvdGhlciBsaW5lcyBtdXN0IGhhdmUgdGhlIGZvcm1hdAorLklQCisuUkkgWyB0eXBlXGZCOlxmUCBdCisuSSBsaWJyYXJ5CisuSSB2ZXJzaW9uCisuSSBkZXBlbmRlbmNpZXMKKy5QUAorVGhlIFxmSWxpYnJhcnlcZlAgYW5kIFxmSXZlcnNpb25cZlAgZmllbGRzIGFyZSB3aGl0ZXNwYWNlLWRlbGltaXRlZCwKK2J1dCB0aGUgXGZJZGVwZW5kZW5jaWVzXGZQIGZpZWxkIGV4dGVuZHMgdG8gdGhlIGVuZCBvZiB0aGUgbGluZS4gIFRoZQorXGZJdHlwZVxmUCBmaWVsZCBpcyBvcHRpb25hbCBhbmQgbm9ybWFsbHkgbm90IG5lZWRlZC4KKy5QUAorU2VlIHRoZSBEZWJpYW4gUG9saWN5IE1hbnVhbCBmb3IgZnVydGhlciBkZXRhaWxzLgorLgorLlNIIEVYQU1QTEVTCisuUFAKK1RoZQorLkIgc2hsaWJzCitmaWxlIGZvciBhIHR5cGljYWwgbGlicmFyeSBwYWNrYWdlLCBuYW1lZCAKKy5JUiBsaWJjcnVuY2gxICwKK3RoYXQgcHJvdmlkZXMgb25lIGxpYnJhcnkgd2hvc2Ugc29uYW1lIGlzCisuSVIgbGliY3J1bmNoLnNvLjEgLAorbWlnaHQgcmVhZAorLklQCitsaWJjcnVuY2ggMSBsaWJjcnVuY2gxICg+PSAxLjItMSkKKy5QUAorVGhlIFxmSWRlcGVuZGVuY2llc1xmUAorbXVzdCBtZW50aW9uIHRoZSBtb3N0IHJlY2VudCB2ZXJzaW9uIG9mIHRoZSBwYWNrYWdlIHRoYXQgYWRkZWQgbmV3CitzeW1ib2xzIHRvIHRoZSBsaWJyYXJ5OiBpbiB0aGUgYWJvdmUgZXhhbXBsZSwgbmV3IHN5bWJvbHMgd2VyZSBhZGRlZCB0bwordmVyc2lvbiAxLjIgb2YKKy5JUiBsaWJjcnVuY2ggLgorVGhpcyBpcyBub3QgdGhlIG9ubHkgcmVhc29uIHRoZSBkZXBlbmRlbmNpZXMgbWlnaHQgbmVlZCB0byBiZQordGlnaHRlbmVkOyBhZ2Fpbiwgc2VlIHRoZSBEZWJpYW4gUG9saWN5IE1hbnVhbCBmb3IgZGV0YWlscy4KKy4KKy5TSCBTRUUgQUxTTworLkJSIGRwa2dcLXNobGliZGVwcyAoMSksCisuQlIgZGViXC1zeW1ib2xzICg1KS4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL2RlYi1zcGxpdC41IGIvZHBrZy0xLjE2LjEuMS9tYW4vZGViLXNwbGl0LjUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTM0NmQxYgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL2RlYi1zcGxpdC41CkBAIC0wLDAgKzEsNTEgQEAKKy5USCBkZWJcLXNwbGl0IDUgIjIwMTEtMDctMDQiICJEZWJpYW4gUHJvamVjdCIgIkRlYmlhbiIKKy5TSCBOQU1FCitkZWJcLXNwbGl0IFwtIERlYmlhbiBtdWx0aS1wYXJ0IGJpbmFyeSBwYWNrYWdlIGZvcm1hdAorLlNIIFNZTk9QU0lTCisuSUIgZmlsZW5hbWUgLmRlYgorLlNIIERFU0NSSVBUSU9OCitUaGUgbXVsdGktcGFydCBcZkIuZGViXGZQIGZvcm1hdCBpcyB1c2VkIHRvIHNwbGl0IGJpZyBwYWNrYWdlcyBpbnRvIHNtYWxsZXIKK3BpZWNlcyB0byBlYXNlIHRyYW5zcG9ydCBpbiBzbWFsbCBtZWRpYS4KKy5TSCBGT1JNQVQKK1RoZSBmaWxlIGlzIGFuIFxmQmFyXGZQIGFyY2hpdmUgd2l0aCBhIG1hZ2ljIHZhbHVlIG9mIFxmQiE8YXJjaD5cZlAuCitUaGUgZmlsZSBuYW1lcyBtaWdodCBjb250YWluIGEgdHJhaWxpbmcgc2xhc2ggKHNpbmNlIGRwa2cgMS4xNS42KS4KKy5QUAorVGhlIGZpcnN0IG1lbWJlciBpcyBuYW1lZCBcZkJkZWJpYW5cLXNwbGl0XGZQIGFuZCBjb250YWlucyBhIHNlcmllcworb2YgbGluZXMsIHNlcGFyYXRlZCBieSBuZXdsaW5lcy4gQ3VycmVudGx5IGVpZ2h0IGxpbmVzIGFyZSBwcmVzZW50OgorLklQIFwoYnUgNAorVGhlIGZvcm1hdCB2ZXJzaW9uIG51bWJlciwgXGZCMi4xXGZQIGF0IHRoZSB0aW1lIHRoaXMgbWFudWFsIHBhZ2Ugd2FzCit3cml0dGVuLgorLklQIFwoYnUKK1RoZSBwYWNrYWdlIG5hbWUuCisuSVAgXChidQorVGhlIHBhY2thZ2UgdmVyc2lvbi4KKy5JUCBcKGJ1CitUaGUgbWQ1c3VtIG9mIHRoZSBwYWNrYWdlLgorLklQIFwoYnUKK1RoZSB0b3RhbCBzaXplIG9mIHRoZSBwYWNrYWdlLgorLklQIFwoYnUKK1RoZSBtYXhpbXVtIHBhcnQgc2l6ZS4KKy5JUCBcKGJ1CitUaGUgY3VycmVudCBwYXJ0IG51bWJlciwgZm9sbG93ZWQgYnkgYSBzbGFzaCBhbmQgdGhlIHRvdGFsIGFtb3VudCBvZgorcGFydHMgKGFzIGluIFwob3ExLzEwXChjcSkuCisuSVAgXChidQorVGhlIHBhY2thZ2UgYXJjaGl0ZWN0dXJlIChzaW5jZSBkcGtnIDEuMTYuMSkuCisuUFAKK1Byb2dyYW1zIHdoaWNoIHJlYWQgbXVsdGktcGFydCBhcmNoaXZlcyBzaG91bGQgYmUgcHJlcGFyZWQgZm9yIGFkZGl0aW9uYWwKK2xpbmVzIHRvIGJlIHByZXNlbnQsIGFuZCBzaG91bGQgaWdub3JlIHRoZXNlIGlmIHRoaXMgaXMgdGhlIGNhc2UuCisuUFAKK0lmIHRoZSB2ZXJzaW9uIG51bWJlciBoYXMgY2hhbmdlZCwgYW4gaW5jb21wYXRpYmxlIGNoYW5nZSBoYXMgYmVlbiBtYWRlCithbmQgdGhlIHByb2dyYW0gc2hvdWxkIHN0b3AuIElmIGl0IGhhcyBub3QsIHRoZW4gdGhlIHByb2dyYW0gc2hvdWxkCitiZSBhYmxlIHRvIHNhZmVseSBjb250aW51ZSwgdW5sZXNzIGl0IGVuY291bnRlcnMgYW4gdW5leHBlY3RlZCBtZW1iZXIKK2luIHRoZSBhcmNoaXZlIChleGNlcHQgYXQgdGhlIGVuZCksIGFzIGRlc2NyaWJlZCBiZWxvdy4KKy5QUAorVGhlIHNlY29uZCwgbGFzdCByZXF1aXJlZCBtZW1iZXIgaXMgbmFtZWQgXGZCZGF0YS5cZlBcZklOXGZQLCB3aGVyZSBcZklOXGZQCitkZW5vdGVzIHRoZSBwYXJ0IG51bWJlci4gSXQgY29udGFpbnMgdGhlIHJhdyBwYXJ0IGRhdGEuCisuUFAKK1RoZXNlIG1lbWJlcnMgbXVzdCBvY2N1ciBpbiB0aGlzIGV4YWN0IG9yZGVyLiBDdXJyZW50IGltcGxlbWVudGF0aW9ucworc2hvdWxkIGlnbm9yZSBhbnkgYWRkaXRpb25hbCBtZW1iZXJzIGFmdGVyIFxmQmRhdGEuXGZQXGZJTlxmUC4KK0Z1cnRoZXIgbWVtYmVycyBtYXkgYmUgZGVmaW5lZCBpbiB0aGUgZnV0dXJlLCBhbmQgKGlmIHBvc3NpYmxlKSB3aWxsIGJlCitwbGFjZWQgYWZ0ZXIgdGhlc2UgdHdvLgorLlNIIFNFRSBBTFNPCisuQlIgZGViICg1KSwKKy5CUiBkcGtnXC1zcGxpdCAoMSkuCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9kZWItc3JjLWNvbnRyb2wuNSBiL2Rwa2ctMS4xNi4xLjEvbWFuL2RlYi1zcmMtY29udHJvbC41Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjc2ZTJmOWUKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9kZWItc3JjLWNvbnRyb2wuNQpAQCAtMCwwICsxLDMzMCBAQAorLlwiIEF1dGhvcjogT3hhbiB2YW4gTGVldXdlbgorLlwiIEluY2x1ZGVzIHRleHQgZnJvbSB0aGUgZGViLWNvbnRyb2wgbWFudWFsIHBhZ2UgYnkgUmF1bCBNaWxsZXIKKy5USCBkZWJcLXNyY1wtY29udHJvbCA1ICIyMDExLTA4LTE0IiAiRGViaWFuIFByb2plY3QiICJEZWJpYW4iCisuU0ggTkFNRQorZGViXC1zcmNcLWNvbnRyb2wgXC0gRGViaWFuIHNvdXJjZSBwYWNrYWdlcycgbWFzdGVyIGNvbnRyb2wgZmlsZSBmb3JtYXQKKy4KKy5TSCBTWU5PUFNJUworY29udHJvbAorLgorLlNIIERFU0NSSVBUSU9OCitFYWNoIERlYmlhbiBzb3VyY2UgcGFja2FnZSBjb250YWlucyB0aGUgbWFzdGVyICJjb250cm9sIiBmaWxlLCB3aGljaCBjb250YWlucworYXQgbGVhc3QgMiBwYXJhZ3JhcGhzLCBzZXBhcmF0ZWQgYnkgYSBibGFuayBsaW5lLiBUaGUgZmlyc3QgcGFyYWdyYXBoIGxpc3RzCithbGwgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHNvdXJjZSBwYWNrYWdlIGluIGdlbmVyYWwsIHdoaWxlIGVhY2ggZm9sbG93aW5nCitwYXJhZ3JhcGggZGVzY3JpYmVzIGV4YWN0bHkgb25lIGJpbmFyeSBwYWNrYWdlLiBFYWNoIHBhcmFncmFwaCBjb25zaXN0cyBvZiBhdAorbGVhc3Qgb25lIGZpZWxkLiBBIGZpZWxkIHN0YXJ0cyB3aXRoIGEgZmllbGRuYW1lLCBzdWNoIGFzCisuQiBQYWNrYWdlCitvcgorLkIgU2VjdGlvbgorKGNhc2UgaW5zZW5zaXRpdmUpLCBmb2xsb3dlZCBieSBhIGNvbG9uLCB0aGUgYm9keSBvZiB0aGUgZmllbGQgYW5kIGEgbmV3bGluZS4KK011bHRpLWxpbmUgZmllbGRzIGFyZSBhbHNvIGFsbG93ZWQsIGJ1dCBlYWNoIHN1cHBsZW1lbnRhcnkgbGluZSwgd2l0aG91dCBhCitmaWVsZG5hbWUsIHNob3VsZCBzdGFydCB3aXRoIGF0IGxlYXN0IG9uZSBzcGFjZS4gVGhlIGNvbnRlbnQgb2YgdGhlIG11bHRpLWxpbmUKK2ZpZWxkcyBpcyBnZW5lcmFsbHkgam9pbmVkIHRvIGEgc2luZ2xlIGxpbmUgYnkgdGhlIHRvb2xzIChleGNlcHQgaW4gdGhlIGNhc2Ugb2YKK3RoZQorLkIgRGVzY3JpcHRpb24KK2ZpZWxkLCBzZWUgYmVsb3cpLiBUbyBpbnNlcnQgZW1wdHkgbGluZXMgaW50byBhIG11bHRpLWxpbmUKK2ZpZWxkLCBpbnNlcnQgYSBkb3QgYWZ0ZXIgdGhlIHNwYWNlLiBMaW5lcyBzdGFydGluZyB3aXRoIGEgXGZCJyMnXGZQIGFyZQordHJlYXRlZCBhcyBjb21tZW50cy4KKy4KKy5TSCBTT1VSQ0UgRklFTERTCisuVFAKKy5CUiBTb3VyY2U6ICIgXGZJc291cmNlLXBhY2thZ2UtbmFtZVxmUCAocmVxdWlyZWQpIgorVGhlIHZhbHVlIG9mIHRoaXMgZmllbGQgaXMgdGhlIG5hbWUgb2YgdGhlIHNvdXJjZSBwYWNrYWdlLCBhbmQgc2hvdWxkCittYXRjaCB0aGUgbmFtZSBvZiB0aGUgc291cmNlIHBhY2thZ2UgaW4gdGhlIGRlYmlhbi9jaGFuZ2Vsb2cgZmlsZS4gQSBwYWNrYWdlCituYW1lIG11c3QgY29uc2lzdCBvbmx5IG9mIGxvd2VyIGNhc2UgbGV0dGVycyAoYS16KSwgZGlnaXRzICgwLTkpLCBwbHVzICgrKSBhbmQKK21pbnVzICgtKSBzaWducywgYW5kIHBlcmlvZHMgKC4pLiBQYWNrYWdlIG5hbWVzIG11c3QgYmUgYXQgbGVhc3QgdHdvIGNoYXJhY3RlcnMKK2xvbmcgYW5kIG11c3Qgc3RhcnQgd2l0aCBhbiBhbHBoYW51bWVyaWMgY2hhcmFjdGVyLgorCisuVFAKKy5CUiBNYWludGFpbmVyOiAiIFxmSWZ1bGxuYW1lLWVtYWlsXGZQIChyZXF1aXJlZCkiCitTaG91bGQgYmUgaW4gdGhlIGZvcm1hdCAiSm9lIEJsb2dncyA8amJsb2dnc0Bmb28uY29tPiIsIGFuZCByZWZlcmVuY2VzIHRoZQorcGVyc29uIHdobyBjdXJyZW50bHkgbWFpbnRhaW5zIHRoZSBwYWNrYWdlLCBhcyBvcHBvc2VkIHRvIHRoZSBhdXRob3Igb2YgdGhlCitzb2Z0d2FyZSBvciB0aGUgb3JpZ2luYWwgcGFja2FnZXIuCisKKy5UUAorLkJJIFVwbG9hZGVyczogIiBmdWxsbmFtZS1lbWFpbCIKK0xpc3RzIGFsbCB0aGUgbmFtZXMgYW5kIGVtYWlsIGFkZHJlc3NlcyBvZiBjby1tYWludGFpbmVycyBvZiB0aGUgcGFja2FnZSwgaW4KK3RoZSBzYW1lIGZvcm1hdCBhcyB0aGUgTWFpbnRhaW5lciBmaWVsZC4gTXVsdGlwbGUgY28tbWFpbnRhaW5lcnMgc2hvdWxkIGJlCitzZXBhcmF0ZWQgYnkgYSBjb21tYS4KKworLlRQCisuQkkgU3RhbmRhcmRzXC1WZXJzaW9uOiAiIHZlcnNpb24tc3RyaW5nIgorVGhpcyBkb2N1bWVudHMgdGhlIG1vc3QgcmVjZW50IHZlcnNpb24gb2YgdGhlIHN0YW5kYXJkcyAod2hpY2ggY29uc2lzdHMgb2YgdGhlCitEZWJpYW4gUG9saWN5IE1hbnVhbCBhbmQgcmVmZXJlbmNlZCB0ZXh0cyBmcm9tIHRoZQorLkIgZGViaWFuXC1wb2xpY3kKK3BhY2thZ2UpIHRoaXMgcGFja2FnZSBjb21wbGllcyB0by4KKworLlRQCisuQlIgRE1cLVVwbG9hZFwtQWxsb3dlZDogIiBcZkJ5ZXNcZlB8XGZCbm9cZlAiCitUaGlzIGZpZWxkIGluZGljYXRlcyB3aGV0aGVyIHRoZSBwYWNrYWdlIGNhbiBiZSB1cGxvYWRlZCBieSBEZWJpYW4gTWFpbnRhaW5lcnMKK2FwcGVhcmluZyBpbiB0aGUgTWFpbnRhaW5lciBvciBVcGxvYWRlcnMgZmllbGQuIFRoZSBkZWZhdWx0IHZhbHVlIGlzICJubyIuCisKKy5UUAorLkJJIEhvbWVwYWdlOiAiIHVybCIKK1RoZSB1cHN0cmVhbSBwcm9qZWN0IGhvbWUgcGFnZSBVUkwuCisKKy5UUAorLkJJIEJ1Z3M6ICIgdXJsIgorVGhlIFxmSXVybFxmUCBvZiB0aGUgYnVnIHRyYWNraW5nIHN5c3RlbSBmb3IgdGhpcyBwYWNrYWdlLiBUaGUgY3VycmVudAordXNlZCBmb3JtYXQgaXMgXGZJYnRzLXR5cGVcZlBcZkI6Ly9cZlBcZklidHMtYWRkcmVzc1xmUCwgbGlrZQorXGZCZGViYnVnczovL2J1Z3MuZGViaWFuLm9yZ1xmUC4gVGhpcyBmaWVsZCBpcyB1c3VhbGx5IG5vdCBuZWVkZWQuCisKKy5UUAorLkJJIFZjc1wtKjogIiB1cmwiCitUaGUgXGZJdXJsXGZQIG9mIHRoZSBWZXJzaW9uIENvbnRyb2wgU3lzdGVtIHJlcG9zaXRvcnkgdXNlZCB0byBtYWludGFpbiB0aGlzCitwYWNrYWdlLiBDdXJyZW50bHkgc3VwcG9ydGVkIGFyZSBcZkJBcmNoXGZQLCBcZkJCenJcZlAgKEJhemFhciksIFxmQkN2c1xmUCwKK1xmQkRhcmNzXGZQLCBcZkJHaXRcZlAsIFxmQkhnXGZQIChNZXJjdXJpYWwpLCBcZkJNdG5cZlAgKE1vbm90b25lKSBhbmQKK1xmQlN2blxmUCAoU3VidmVyc2lvbikuIFVzdWFsbHkgdGhpcyBmaWVsZCBwb2ludHMgdG8gdGhlIGxhdGVzdCB2ZXJzaW9uCitvZiB0aGUgcGFja2FnZSwgc3VjaCBhcyB0aGUgbWFpbiBicmFuY2ggb3IgdGhlIHRydW5rLgorCisuVFAKKy5CSSBWY3NcLUJyb3dzZXI6ICIgdXJsIgorVGhlIFxmSXVybFxmUCBvZiBhIHdlYmludGVyZmFjZSB0byBicm93c2UgdGhlIFZlcnNpb24gQ29udHJvbCBTeXN0ZW0KK3JlcG9zaXRvcnkuCisKKy5UUAorLkJJIE9yaWdpbjogIiBuYW1lIgorVGhlIG5hbWUgb2YgdGhlIGRpc3RyaWJ1dGlvbiB0aGlzIHBhY2thZ2UgaXMgb3JpZ2luYXRpbmcgZnJvbS4gVGhpcyBmaWVsZCBpcwordXN1YWxseSBub3QgbmVlZGVkLgorCisuVFAKKy5CSSBTZWN0aW9uOiAiIHNlY3Rpb24iCitUaGlzIGlzIGEgZ2VuZXJhbCBmaWVsZCB0aGF0IGdpdmVzIHRoZSBwYWNrYWdlIGEgY2F0ZWdvcnkgYmFzZWQgb24gdGhlCitzb2Z0d2FyZSB0aGF0IGl0IGluc3RhbGxzLiBTb21lIGNvbW1vbiBzZWN0aW9ucyBhcmUgInV0aWxzIiwgIm5ldCIsCisibWFpbCIsICJ0ZXh0IiwgIngxMSIsIGV0Yy4KKworLlRQCisuQkkgUHJpb3JpdHk6ICIgcHJpb3JpdHkiCitTZXRzIHRoZSBpbXBvcnRhbmNlIG9mIHRoaXMgcGFja2FnZSBpbiByZWxhdGlvbiB0byB0aGUgc3lzdGVtIGFzIGEgd2hvbGUuCitDb21tb24gcHJpb3JpdGllcyBhcmUgInJlcXVpcmVkIiwgInN0YW5kYXJkIiwgIm9wdGlvbmFsIiwgImV4dHJhIiwgZXRjLgorCitJbiBEZWJpYW4sIHRoZQorLkIgU2VjdGlvbgorYW5kCisuQiBQcmlvcml0eQorZmllbGRzIGhhdmUgYSBkZWZpbmVkIHNldCBvZiBhY2NlcHRlZCB2YWx1ZXMgYmFzZWQgb24gdGhlIFBvbGljeSBNYW51YWwuCitBIGxpc3Qgb2YgdGhlc2UgdmFsdWVzIGNhbiBiZSBvYnRhaW5lZCBmcm9tIHRoZSBsYXRlc3QgdmVyc2lvbiBvZiB0aGUKKy5CIGRlYmlhblwtcG9saWN5CitwYWNrYWdlLgorCisuVFAKKy5CSSBCdWlsZFwtRGVwZW5kczogIiBwYWNrYWdlLWxpc3QiCitBIGxpc3Qgb2YgcGFja2FnZXMgdGhhdCBuZWVkIHRvIGJlIGluc3RhbGxlZCBhbmQgY29uZmlndXJlZCB0byBiZSBhYmxlIHRvIGJ1aWxkCit0aGUgc291cmNlIHBhY2thZ2UuCisKKy5UUAorLkJJIEJ1aWxkXC1EZXBlbmRzXC1JbmRlcDogIiBwYWNrYWdlLWxpc3QiCitTYW1lIGFzIFxmQkJ1aWxkXC1EZXBlbmRzXGZQLCBidXQgdGhleSBhcmUgb25seSBuZWVkZWQgd2hlbiBidWlsZGluZyB0aGUKK2FyY2hpdGVjdHVyZSBpbmRlcGVuZGVudCBwYWNrYWdlcy4gVGhlIFxmQkJ1aWxkXC1EZXBlbmRzXGZQIGFyZSBhbHNvIGluc3RhbGxlZAoraW4gdGhpcyBjYXNlLgorCisuVFAKKy5CSSBCdWlsZFwtQ29uZmxpY3RzOiAiIHBhY2thZ2UtbGlzdCIKK0EgbGlzdCBvZiBwYWNrYWdlcyB0aGF0IHNob3VsZCBub3QgYmUgaW5zdGFsbGVkIHdoZW4gdGhlIHBhY2thZ2UgaXMgYnVpbGQsIGZvcgorZXhhbXBsZSBiZWNhdXNlIHRoZXkgaW50ZXJmZXJlIHdpdGggdGhlIHVzZWQgYnVpbGQgc3lzdGVtLgorCisuVFAKKy5CSSBCdWlsZFwtQ29uZmxpY3RzXC1JbmRlcDogIiBwYWNrYWdlLWxpc3QiCitTYW1lIGFzIFxmQkJ1aWxkXC1Db25mbGljdHNcZlAsIGJ1dCBvbmx5IHdoZW4gYnVpbGRpbmcgdGhlIGFyY2hpdGVjdHVyZQoraW5kZXBlbmRlbnQgcGFja2FnZXMuCisKK1RoZSBzeW50YXggb2YgdGhlCisuQiBCdWlsZFwtRGVwZW5kcworYW5kCisuQiBCdWlsZFwtRGVwZW5kc1wtSW5kZXAKK2ZpZWxkcyBpcyBhIGxpc3Qgb2YgZ3JvdXBzIG9mIGFsdGVybmF0aXZlIHBhY2thZ2VzLiBFYWNoIGdyb3VwIGlzIGEgbGlzdAorb2YgcGFja2FnZXMgc2VwYXJhdGVkIGJ5IHZlcnRpY2FsIGJhciAob3IgInBpcGUiKSBzeW1ib2xzLCAifCIuIFRoZQorZ3JvdXBzIGFyZSBzZXBhcmF0ZWQgYnkgY29tbWFzLiBDb21tYXMgYXJlIHRvIGJlIHJlYWQgYXMgIkFORCIsIGFuZCBwaXBlcworYXMgIk9SIiwgd2l0aCBwaXBlcyBiaW5kaW5nIG1vcmUgdGlnaHRseS4gRWFjaCBwYWNrYWdlIG5hbWUgaXMKK29wdGlvbmFsbHkgZm9sbG93ZWQgYnkgYSB2ZXJzaW9uIG51bWJlciBzcGVjaWZpY2F0aW9uIGluIHBhcmVudGhlc2VzIGFuZCBhbgorYXJjaGl0ZWN0dXJlIHNwZWNpZmljYXRpb24gaW4gc3F1YXJlIGJyYWNrZXRzLgorCitUaGUgc3ludGF4IG9mIHRoZQorLkIgQnVpbGRcLUNvbmZsaWN0cworYW5kCisuQiBCdWlsZFwtQ29uZmxpY3RzXC1JbmRlcAorZmllbGRzIGlzIGEgbGlzdCBvZiBjb21tYS1zZXBhcmF0ZWQgcGFja2FnZSBuYW1lcywgd2hlcmUgdGhlIGNvbW1hIGlzIHJlYWQKK2FzIGFuICJBTkQiLiBTcGVjaWZ5aW5nIGFsdGVybmF0aXZlIHBhY2thZ2VzIHVzaW5nIGEgInBpcGUiIGlzIG5vdCBzdXBwb3J0ZWQuCitFYWNoIHBhY2thZ2UgbmFtZSBpcyBvcHRpb25hbGx5IGZvbGxvd2VkIGJ5IGEgdmVyc2lvbiBudW1iZXIgc3BlY2lmaWNhdGlvbiBpbgorcGFyZW50aGVzZXMgYW5kIGFuIGFyY2hpdGVjdHVyZSBzcGVjaWZpY2F0aW9uIGluIHNxdWFyZSBicmFja2V0cy4KKworQSB2ZXJzaW9uIG51bWJlciBtYXkgc3RhcnQgd2l0aCBhICI+PiIsIGluIHdoaWNoIGNhc2UgYW55IGxhdGVyIHZlcnNpb24KK3dpbGwgbWF0Y2gsIGFuZCBtYXkgc3BlY2lmeSBvciBvbWl0IHRoZSBEZWJpYW4gcGFja2FnaW5nIHJldmlzaW9uIChzZXBhcmF0ZWQKK2J5IGEgaHlwaGVuKS4gQWNjZXB0ZWQgdmVyc2lvbiByZWxhdGlvbnNoaXBzIGFyZSAiPj4iIGZvciBncmVhdGVyIHRoYW4sCisiPDwiIGZvciBsZXNzIHRoYW4sICI+PSIgZm9yIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0bywgIjw9IiBmb3IgbGVzcyB0aGFuCitvciBlcXVhbCB0bywgYW5kICI9IiBmb3IgZXF1YWwgdG8uCisKK0EgYXJjaGl0ZWN0dXJlIHNwZWNpZmljYXRpb24gY29uc2lzdHMgb2Ygb25lIG9yIG1vcmUgYXJjaGl0ZWN0dXJlIG5hbWVzLAorc2VwYXJhdGVkIGJ5IHdoaXRlc3BhY2UuIEV4Y2xhbWF0aW9uIG1hcmtzIG1heSBiZSBwcmVwZW5kZWQgdG8gZWFjaCBvZiB0aGUKK25hbWVzLCBtZWFuaW5nICJOT1QiLgorCitOb3RlIHRoYXQgZGVwZW5kZW5jaWVzIG9uIHBhY2thZ2VzIGluIHRoZQorLkIgYnVpbGRcLWVzc2VudGlhbAorc2V0IGNhbiBiZSBvbWl0dGVkIGFuZCB0aGF0IGRlY2xhcmluZyBidWlsZCBjb25mbGljdHMgYWdhaW5zdCB0aGVtIGlzCitpbXBvc3NpYmxlLiBBIGxpc3Qgb2YgdGhlc2UgcGFja2FnZXMgaXMgaW4gdGhlIGJ1aWxkXC1lc3NlbnRpYWwgcGFja2FnZS4KKworCisuU0ggQklOQVJZIEZJRUxEUworCisuTFAKK05vdGUgdGhhdCB0aGUKKy5CUiBQcmlvcml0eSAiLCAiIFNlY3Rpb24KK2FuZAorLkIgSG9tZXBhZ2UKK2ZpZWxkcyBjYW4gYWxzbyBiZSBpbiBhIGJpbmFyeSBwYXJhZ3JhcGggdG8gb3ZlcnJpZGUgdGhlIGdsb2JhbCB2YWx1ZSBmcm9tIHRoZQorc291cmNlIHBhY2thZ2UuCisKKy5UUAorLkJSIFBhY2thZ2U6ICIgXGZJYmluYXJ5LXBhY2thZ2UtbmFtZVxmUCAocmVxdWlyZWQpIgorVGhpcyBmaWVsZCBpcyB1c2VkIHRvIG5hbWUgdGhlIGJpbmFyeSBwYWNrYWdlIG5hbWUuIFRoZSBzYW1lIHJlc3RyaWN0aW9ucyBhcwordG8gYSBzb3VyY2UgcGFja2FnZSBuYW1lIGFwcGx5LgorCisuVFAKKy5CUiBBcmNoaXRlY3R1cmU6ICIgXGZJYXJjaFxmUHxcZkJhbGxcZlB8XGZCYW55XGZQIChyZXF1aXJlZCkiCitUaGUgYXJjaGl0ZWN0dXJlIHNwZWNpZmllcyBvbiB3aGljaCB0eXBlIG9mIGhhcmR3YXJlIHRoaXMgcGFja2FnZSBydW5zLiBGb3IKK3BhY2thZ2VzIHRoYXQgcnVuIG9uIGFsbCBhcmNoaXRlY3R1cmVzLCB1c2UgdGhlCisuQiBhbnkKK3ZhbHVlLiBGb3IgcGFja2FnZXMgdGhhdCBhcmUgYXJjaGl0ZWN0dXJlIGluZGVwZW5kZW50LCBzdWNoIGFzIHNoZWxsIGFuZCBQZXJsCitzY3JpcHRzIG9yIGRvY3VtZW50YXRpb24sIHVzZSB0aGUKKy5CIGFsbAordmFsdWUuIFRvIHJlc3RyaWN0IHRoZSBwYWNrYWdlcyB0byBhIGNlcnRhaW4gc2V0IG9mIGFyY2hpdGVjdHVyZXMsIHNwZWNpZnkgdGhlCithcmNoaXRlY3R1cmUgbmFtZXMsIHNlcGFyYXRlZCBieSBhIHNwYWNlLiBJdCdzIGFsc28gcG9zc2libGUgdG8gcHV0CithcmNoaXRlY3R1cmUgd2lsZGNhcmRzIGluIHRoYXQgbGlzdCAoc2VlCisuQlIgZHBrZ1wtYXJjaGl0ZWN0dXJlICgxKQorZm9yIG1vcmUgaW5mb3JtYXRpb24gYWJvdXQgdGhlbSkuCisKKy5UUAorLkJSIFBhY2thZ2VcLVR5cGU6ICIgXGZCZGViXGZQfFxmQnVkZWJcZlAiCitUaGlzIGZpZWxkIGRlZmluZXMgdGhlIHR5cGUgb2YgdGhlIHBhY2thZ2UuICJ1ZGViIiBpcyBmb3Igc2l6ZS1jb25zdHJhaW5lZAorcGFja2FnZXMgdXNlZCBieSB0aGUgZGViaWFuIGluc3RhbGxlci4gImRlYiIgaXMgdGhlIGRlZmF1bHQgdmFsdWUsIGl0J3MKK2Fzc3VtZWQgaWYgdGhlIGZpZWxkIGlzIGFic2VudC4gTW9yZSB0eXBlcyBtaWdodCBiZSBhZGRlZCBpbiB0aGUgZnV0dXJlLgorCisuVFAKKy5QRCAwCisuQkkgU3ViYXJjaGl0ZWN0dXJlOiAiIHZhbHVlIgorLlRQCisuUEQgMAorLkJJIEtlcm5lbFwtVmVyc2lvbjogIiB2YWx1ZSIKKy5UUAorLlBEIDAKKy5CSSBJbnN0YWxsZXJcLU1lbnVcLUl0ZW06ICIgdmFsdWUiCitUaGVzZSBmaWVsZHMgYXJlIHVzZWQgYnkgdGhlIGRlYmlhblwtaW5zdGFsbGVyIGFuZCBhcmUgdXN1YWxseSBub3QgbmVlZGVkLgorU2VlIC91c3Ivc2hhcmUvZG9jL2RlYmlhblwtaW5zdGFsbGVyL2RldmVsL21vZHVsZXMudHh0IGZyb20gdGhlCisuQiBkZWJpYW5cLWluc3RhbGxlcgorcGFja2FnZSBmb3IgbW9yZSBkZXRhaWxzIGFib3V0IHRoZW0uCisKKy5UUAorLlBEIDAKKy5CUiBFc3NlbnRpYWw6ICIgXGZCeWVzXGZQfFxmQm5vXGZQIgorLlRQCisuUEQgMAorLkJSIE11bHRpXC1BcmNoOiAiIFxmQnNhbWVcZlB8XGZCZm9yZWlnblxmUHxcZkJhbGxvd2VkXGZQIgorLlRQCisuUEQgMAorLkJJIFRhZzogIiB0YWctbGlzdCIKKy5UUAorLlBEIDAKKy5CUiBEZXNjcmlwdGlvbjogIiBcZklzaG9ydC1kZXNjcmlwdGlvblxmUCAocmVxdWlyZWQpIgorVGhlc2UgZmllbGRzIGFyZSBkZXNjcmliZWQgaW4gdGhlCisuQlIgZGViXC1jb250cm9sICg1KQorbWFudWFsIHBhZ2UsIGFzIHRoZXkgYXJlIGNvcGllZCBsaXRlcmFsbHkgdG8gdGhlIGNvbnRyb2wgZmlsZSBvZiB0aGUgYmluYXJ5CitwYWNrYWdlLgorCisuVFAKKy5QRCAwCisuQkkgRGVwZW5kczogIiBwYWNrYWdlLWxpc3QiCisuVFAKKy5QRCAwCisuQkkgUHJlXC1EZXBlbmRzOiAiIHBhY2thZ2UtbGlzdCIKKy5UUAorLlBEIDAKKy5CSSBSZWNvbW1lbmRzOiAiIHBhY2thZ2UtbGlzdCIKKy5UUAorLlBEIDAKKy5CSSBTdWdnZXN0czogIiBwYWNrYWdlLWxpc3QiCisuVFAKKy5QRCAwCisuQkkgQnJlYWtzOiAiIHBhY2thZ2UtbGlzdCIKKy5UUAorLlBEIDAKKy5CSSBFbmhhbmNlczogIiBwYWNrYWdlLWxpc3QiCisuVFAKKy5QRCAwCisuQkkgUmVwbGFjZXM6ICIgcGFja2FnZS1saXN0IgorLlRQCisuUEQgMAorLkJJIENvbmZsaWN0czogIiBwYWNrYWdlLWxpc3QiCisuVFAKKy5QRCAwCisuQkkgUHJvdmlkZXM6ICIgcGFja2FnZS1saXN0IgorLlRQCisuUEQgMAorLkJJIEJ1aWx0XC1Vc2luZzogIiBwYWNrYWdlLWxpc3QiCisuYnIKK1RoZXNlIGZpZWxkcyBkZWNsYXJlIHJlbGF0aW9uc2hpcHMgYmV0d2VlbiBwYWNrYWdlcy4gVGhleSBhcmUgZGlzY3Vzc2VkIGluCit0aGUKKy5CUiBkZWJcLWNvbnRyb2wgKDUpCittYW5wYWdlIGFuZCBpbiB0aGUKKy5CIGRlYmlhblwtcG9saWN5CitwYWNrYWdlLgorCisuU0ggVVNFUi1ERUZJTkVEIEZJRUxEUworSXQgaXMgYWxsb3dlZCB0byBhZGQgYWRkaXRpb25hbCB1c2VyLWRlZmluZWQgZmllbGRzIHRvIHRoZSBjb250cm9sIGZpbGUuIFRoZQordG9vbHMgd2lsbCBpZ25vcmUgdGhlc2UgZmllbGRzLiBJZiB5b3Ugd2FudCB0aGUgZmllbGRzIHRvIGJlIGNvcGllZCBvdmVyIHRvCit0aGUgb3V0cHV0IGZpbGVzLCBzdWNoIGFzIHRoZSBiaW5hcnkgcGFja2FnZXMsIHlvdSBuZWVkIHRvIHVzZSBhIGN1c3RvbSBuYW1pbmcKK3NjaGVtZTogdGhlIGZpZWxkcyBzaG91bGQgc3RhcnQgd2l0aCBhIFgsIGZvbGxvd2VkIGJ5IG9uZSBvciBtb3JlIG9mIHRoZQorbGV0dGVycyBCQ1MgYW5kIGEgaHlwZW4uIElmIHRoZSBsZXR0ZXIgQiBpcyB1c2VkLCB0aGUgZmllbGQgd2lsbCBhcHBlYXIgaW4gdGhlCitjb250cm9sIGZpbGUgaW4gdGhlIGJpbmFyeSBwYWNrYWdlLCBzZWUKKy5CUiBkZWJcLWNvbnRyb2wgKDUpLAorZm9yIHRoZSBsZXR0ZXIgUyBpbiB0aGUgc291cmNlIHBhY2thZ2UgY29udHJvbCBmaWxlIGFzIGNvbnN0cnVjdGVkIGJ5CisuQlIgZHBrZ1wtc291cmNlICgxKQorYW5kIGZvciB0aGUgbGV0dGVyIEMgaW4gdGhlIHVwbG9hZCBjb250cm9sICguY2hhbmdlcykgZmlsZS4gTm90ZSB0aGF0IHRoZQorWFtCQ1NdXC0gcHJlZml4ZXMgYXJlIHN0cmlwcGVkIHdoZW4gdGhlIGZpZWxkcyBhcmUgY29waWVkIG92ZXIgdG8gdGhlCitvdXRwdXQgZmlsZXMuIEEgZmllbGQgXGZCWENcLUFwcHJvdmVkXC1CeVxmUCB3aWxsIGFwcGVhciBhcworXGZCQXBwcm92ZWRcLUJ5XGZQIGluIHRoZSBjaGFuZ2VzIGZpbGUgYW5kIHdpbGwgbm90IGFwcGVhciBpbiB0aGUgYmluYXJ5IG9yCitzb3VyY2UgcGFja2FnZSBjb250cm9sIGZpbGVzLgorCisKKy5TSCBFWEFNUExFCisuXCIgLlJTCisubmYKKyMgQ29tbWVudAorU291cmNlOiBkcGtnCitTZWN0aW9uOiBhZG1pbgorUHJpb3JpdHk6IHJlcXVpcmVkCitNYWludGFpbmVyOiBEcGtnIERldmVsb3BlcnMgPGRlYmlhblwtZHBrZ0BsaXN0cy5kZWJpYW4ub3JnPgorIyB0aGlzIGZpZWxkIGlzIGNvcGllZCB0byB0aGUgYmluYXJ5IGFuZCBzb3VyY2UgcGFja2FnZXMKK1hCU1wtVXBzdHJlYW1cLVJlbGVhc2VcLVN0YXR1czogc3RhYmxlCitIb21lcGFnZTogaHR0cDovL3dpa2kuZGViaWFuLm9yZy9UZWFtcy9EcGtnCitWY3NcLUJyb3dzZXI6IGh0dHA6Ly9naXQuZGViaWFuLm9yZy8/cD1kcGtnL2Rwa2cuZ2l0CitWY3NcLUdpdDogZ2l0Oi8vZ2l0LmRlYmlhbi5vcmcvZ2l0L2Rwa2cvZHBrZy5naXQKK1N0YW5kYXJkc1wtVmVyc2lvbjogMy43LjMKK0J1aWxkXC1EZXBlbmRzOiBwa2dcLWNvbmZpZywgZGViaGVscGVyICg+PSA0LjEuODEpLAorIGxpYnNlbGludXgxXC1kZXYgKD49IDEuMjhcLTQpIFshbGludXhcLWFueV0KKworUGFja2FnZTogZHBrZ1wtZGV2CitTZWN0aW9uOiB1dGlscworUHJpb3JpdHk6IG9wdGlvbmFsCitBcmNoaXRlY3R1cmU6IGFsbAorIyB0aGlzIGlzIGEgY3VzdG9tIGZpZWxkIGluIHRoZSBiaW5hcnkgcGFja2FnZQorWEJcLU1lbnRvcmluZ1wtQ29udGFjdDogUmFwaGFlbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CitEZXBlbmRzOiBkcGtnICg+PSAxLjE0LjYpLCBwZXJsNSwgcGVybFwtbW9kdWxlcywgY3BpbyAoPj0gMi40LjJcLTIpLAorIGJ6aXAyLCBsem1hLCBwYXRjaCAoPj0gMi4yXC0xKSwgbWFrZSwgYmludXRpbHMsIGxpYnRpbWVkYXRlXC1wZXJsCitSZWNvbW1lbmRzOiBnY2MgfCBjXC1jb21waWxlciwgYnVpbGRcLWVzc2VudGlhbAorU3VnZ2VzdHM6IGdudXBnLCBkZWJpYW5cLWtleXJpbmcKK0NvbmZsaWN0czogZHBrZ1wtY3Jvc3MgKDw8IDIuMC4wKSwgZGV2c2NyaXB0cyAoPDwgMi4xMC4yNikKK1JlcGxhY2VzOiBtYW5wYWdlc1wtcGwgKDw9IDIwMDUxMTE3XC0xKQorRGVzY3JpcHRpb246IERlYmlhbiBwYWNrYWdlIGRldmVsb3BtZW50IHRvb2xzCisgVGhpcyBwYWNrYWdlIHByb3ZpZGVzIHRoZSBkZXZlbG9wbWVudCB0b29scyAoaW5jbHVkaW5nIGRwa2dcLXNvdXJjZSkKKyByZXF1aXJlZCB0byB1bnBhY2ssIGJ1aWxkIGFuZCB1cGxvYWQgRGViaWFuIHNvdXJjZSBwYWNrYWdlcy4KKyAuCisgTW9zdCBEZWJpYW4gc291cmNlIHBhY2thZ2VzIHdpbGwgcmVxdWlyZSBhZGRpdGlvbmFsIHRvb2xzIHRvIGJ1aWxkOworIGZvciBleGFtcGxlLCBtb3N0IHBhY2thZ2VzIG5lZWQgbWFrZSBhbmQgdGhlIEMgY29tcGlsZXIgZ2NjLgorLmZpCisuXCIgLlJFCisKKworLlNIIFNFRSBBTFNPCisuQlIgZGViXC1jb250cm9sICg1KSwKKy5CUiBkZWJcLXZlcnNpb24gKDUpLAorLkJSIGRwa2dcLXNvdXJjZSAoMSkKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL2RlYi1zdWJzdHZhcnMuNSBiL2Rwa2ctMS4xNi4xLjEvbWFuL2RlYi1zdWJzdHZhcnMuNQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iY2RkYjJjCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vZGViLXN1YnN0dmFycy41CkBAIC0wLDAgKzEsMTY3IEBACisuXCIgQXV0aG9yczogSWFuIEphY2tzb24KKy5USCBkZWJcLXN1YnN0dmFycyA1ICIyMDA5LTA3LTE1IiAiRGViaWFuIFByb2plY3QiICJkcGtnIHV0aWxpdGllcyIKKy5TSCBOQU1FCitkZWJcLXN1YnN0dmFycyBcLSBEZWJpYW4gc291cmNlIHN1YnN0aXR1dGlvbiB2YXJpYWJsZXMKKy4KKy5TSCBTWU5PUFNJUworc3Vic3R2YXJzCisuCisuU0ggREVTQ1JJUFRJT04KK0JlZm9yZQorLkJSIGRwa2dcLXNvdXJjZSAiLCAiIGRwa2dcLWdlbmNvbnRyb2wgIiBhbmQgIiBkcGtnXC1nZW5jaGFuZ2VzCit3cml0ZSB0aGVpciBjb250cm9sIGluZm9ybWF0aW9uICh0byB0aGUgc291cmNlIGNvbnRyb2wgZmlsZQorLkIgLmRzYworZm9yCisuQiBkcGtnXC1zb3VyY2UKK2FuZCB0byBzdGFuZGFyZCBvdXRwdXQgZm9yCisuQlIgZHBrZ1wtZ2VuY29udHJvbCAiIGFuZCAiIGRwa2dcLWdlbmNoYW5nZXMgKQordGhleSBwZXJmb3JtIHNvbWUgdmFyaWFibGUgc3Vic3RpdHV0aW9ucyBvbiB0aGUgb3V0cHV0IGZpbGUuCisKK0EgdmFyaWFibGUgc3Vic3RpdHV0aW9uIGhhcyB0aGUgZm9ybQorLkJJICR7IHZhcmlhYmxlLW5hbWUgfVxmUi4KK1ZhcmlhYmxlIG5hbWVzIGNvbnNpc3Qgb2YgYWxwaGFudW1lcmljcywgaHlwaGVucyBhbmQgY29sb25zIGFuZCBzdGFydAord2l0aCBhbiBhbHBoYW51bWVyaWMuIFZhcmlhYmxlIHN1YnN0aXR1dGlvbnMgYXJlIHBlcmZvcm1lZCByZXBlYXRlZGx5Cit1bnRpbCBub25lIGFyZSBsZWZ0OyB0aGUgZnVsbCB0ZXh0IG9mIHRoZSBmaWVsZCBhZnRlciB0aGUgc3Vic3RpdHV0aW9uCitpcyByZXNjYW5uZWQgdG8gbG9vayBmb3IgbW9yZSBzdWJzdGl0dXRpb25zLgorCitBZnRlciBhbGwgdGhlIHN1YnN0aXR1dGlvbnMgaGF2ZSBiZWVuIGRvbmUgZWFjaCBvY2N1cnJlbmNlIG9mIHRoZQorc3RyaW5nCisuQiAke30KKyh3aGljaCBpcyBub3QgYSBsZWdhbCBzdWJzdGl0dXRpb24pIGlzIHJlcGxhY2VkIHdpdGggYQorLkIgJAorc2lnbi4KKworV2hpbGUgdmFyaWFibGUgc3Vic3RpdHV0aW9uIGlzIGRvbmUgb24gYWxsIGNvbnRyb2wgZmllbGRzLCBzb21lIG9mIHRob3NlCitmaWVsZHMgYXJlIHVzZWQgYW5kIG5lZWRlZCBkdXJpbmcgdGhlIGJ1aWxkIHdoZW4gdGhlIHN1YnN0aXR1dGlvbiBkaWQgbm90Cit5ZXQgb2NjdXIuIFRoYXQncyB3aHkgeW91IGNhbid0IHVzZSB2YXJpYWJsZXMgaW4gdGhlIFxmQlBhY2thZ2VcZlAsCitcZkJTb3VyY2VcZlAgYW5kIFxmQkFyY2hpdGVjdHVyZVxmUCBmaWVsZHMuCisKK1ZhcmlhYmxlIHN1YnN0aXR1dGlvbiBoYXBwZW5zIG9uIHRoZSBjb250ZW50IG9mIHRoZSBmaWVsZHMgYWZ0ZXIgdGhleSBoYXZlCitiZWVuIHBhcnNlZCwgdGh1cyBpZiB5b3Ugd2FudCBhIHZhcmlhYmxlIHRvIGV4cGFuZCBvdmVyIG11bHRpcGxlIGxpbmVzIHlvdQorZG8gbm90IGhhdmUgdG8gaW5jbHVkZSBhIHNwYWNlIGFmdGVyIHRoZSBuZXdsaW5lLiBUaGlzIGlzIGRvbmUgaW1wbGljaXRseQord2hlbiB0aGUgZmllbGQgaXMgb3V0cHV0LiBGb3IgZXhhbXBsZSwgaWYgdGhlIHZhcmlhYmxlCitcZkIke0Rlc2NyaXB0aW9ufVxmUCBpcyBzZXQgdG8gImZvbyBpcyBiYXIuJHtOZXdsaW5lfWZvbyBpcworZ3JlYXQuIiBhbmQgaWYgeW91IGhhdmUgdGhlIGZvbGxvd2luZyBmaWVsZDoKKworIERlc2NyaXB0aW9uOiBmb28gYXBwbGljYXRpb24KKyAgJHtEZXNjcmlwdGlvbn0KKyAgLgorICBNb3JlIHRleHQuCisKK0l0IHdpbGwgcmVzdWx0IGluOgorCisgRGVzY3JpcHRpb246IGZvbyBhcHBsaWNhdGlvbgorICBmb28gaXMgYmFyLgorICBmb28gaXMgZ3JlYXQuCisgIC4KKyAgTW9yZSB0ZXh0LgorCitWYXJpYWJsZXMgY2FuIGJlIHNldCB1c2luZyB0aGUKKy5CIFwtVgorY29tbW9uIG9wdGlvbi4gVGhleSBjYW4gYmUgYWxzbyBzcGVjaWZpZWQgaW4gdGhlIGZpbGUKKy5CIGRlYmlhbi9zdWJzdHZhcnMKKyhvciB3aGF0ZXZlciBvdGhlciBmaWxlIGlzIHNwZWNpZmllZCB1c2luZyB0aGUKKy5CIFwtVAorb3B0aW9uKS4gVGhpcyBmaWxlIGNvbnNpc3RzIG9mIGxpbmVzIG9mIHRoZSBmb3JtCisuSUIgbmFtZSA9IHZhbHVlXGZSLgorVHJhaWxpbmcgd2hpdGVzcGFjZSBvbiBlYWNoIGxpbmUsIGJsYW5rIGxpbmVzLCBhbmQKK2xpbmVzIHN0YXJ0aW5nIHdpdGggYQorLkIgIworc3ltYm9sIChjb21tZW50cykgYXJlIGlnbm9yZWQuCisKK0FkZGl0aW9uYWxseSwgdGhlIGZvbGxvd2luZyBzdGFuZGFyZCB2YXJpYWJsZXMgYXJlIGF2YWlsYWJsZToKKy5UUAorLkJJIEFyY2gKK1RoZSBjdXJyZW50IGJ1aWxkIGFyY2hpdGVjdHVyZSAoZnJvbQorLkJSICJkcGtnIFwtXC1wcmludFwtYXJjaGl0ZWN0dXJlIiApLgorLlRQCisuQiBzb3VyY2U6VmVyc2lvbgorVGhlIHNvdXJjZSBwYWNrYWdlIHZlcnNpb24uCisuVFAKKy5CIHNvdXJjZTpVcHN0cmVhbVwtVmVyc2lvbgorVGhlIHVwc3RyZWFtIHNvdXJjZSBwYWNrYWdlIHZlcnNpb24sIGluY2x1ZGluZyB0aGUgRGViaWFuIHZlcnNpb24gZXBvY2ggaWYKK2FueS4KKy5UUAorLkIgYmluYXJ5OlZlcnNpb24KK1RoZSBiaW5hcnkgcGFja2FnZSB2ZXJzaW9uICh3aGljaCBtYXkgZGlmZmVyIGZyb20gc291cmNlOlZlcnNpb24gaW4gYSBiaW5OTVUKK2ZvciBleGFtcGxlKS4KKy5UUAorLkIgU291cmNlXC1WZXJzaW9uCitUaGUgc291cmNlIHBhY2thZ2UgdmVyc2lvbiAoZnJvbSB0aGUgY2hhbmdlbG9nIGZpbGUpLiBUaGlzIHZhcmlhYmxlIGlzIG5vdworXGZCZGVwcmVjYXRlZFxmUCBhcyBpdHMgbWVhbmluZyBpcyBkaWZmZXJlbnQgZnJvbSBpdHMgZnVuY3Rpb24sIHBsZWFzZSB1c2UKK3RoZSBcZkJzb3VyY2U6VmVyc2lvblxmUCBvciBcZkJiaW5hcnk6VmVyc2lvblxmUCBhcyBhcHByb3ByaWF0ZS4KKy5UUAorLkIgSW5zdGFsbGVkXC1TaXplCitUaGUgdG90YWwgc2l6ZSBvZiB0aGUgcGFja2FnZSdzIGluc3RhbGxlZCBmaWxlcy4gVGhpcyB2YWx1ZSBpcyBjb3BpZWQKK2ludG8gdGhlIGNvcnJlc3BvbmRpbmcgY29udHJvbCBmaWxlIGZpZWxkOyBzZXR0aW5nIGl0IHdpbGwgbW9kaWZ5IHRoZQordmFsdWUgb2YgdGhhdCBmaWVsZC4gSWYgdGhpcyB2YXJpYWJsZSBpc24ndCBzZXQKKy5CIGRwa2dcLWdlbmNvbnRyb2wKK3dpbGwgdXNlCisuQiBkdSBcLWsgZGViaWFuL3RtcAordG8gZmluZCB0aGUgZGVmYXVsdCB2YWx1ZS4KKy5UUAorLkIgRXh0cmFcLVNpemUKK0FkZGl0aW9uYWwgZGlzayBzcGFjZSB1c2VkIHdoZW4gdGhlIHBhY2thZ2UgaXMgaW5zdGFsbGVkLiBJZiB0aGlzCit2YXJpYWJsZSBpcyBzZXQgaXRzIHZhbHVlIGlzIGFkZGVkIHRvIHRoYXQgb2YgdGhlCisuQiBJbnN0YWxsZWRcLVNpemUKK3ZhcmlhYmxlICh3aGV0aGVyIHNldCBleHBsaWNpdGx5IG9yIHVzaW5nIHRoZSBkZWZhdWx0IHZhbHVlKSBiZWZvcmUgaXQKK2lzIGNvcGllZCBpbnRvIHRoZQorLkIgSW5zdGFsbGVkXC1TaXplCitjb250cm9sIGZpbGUgZmllbGQuCisuVFAKKy5CSSBGOiBmaWVsZG5hbWUKK1RoZSB2YWx1ZSBvZiB0aGUgb3V0cHV0IGZpZWxkCisuSVIgZmllbGRuYW1lCisod2hpY2ggbXVzdCBiZSBnaXZlbiBpbiB0aGUgY2Fub25pY2FsIGNhcGl0YWxpc2F0aW9uKS4gU2V0dGluZyB0aGVzZQordmFyaWFibGVzIGhhcyBubyBlZmZlY3Qgb3RoZXIgdGhhbiBvbiBwbGFjZXMgd2hlcmUgdGhleSBhcmUgZXhwYW5kZWQKK2V4cGxpY2l0bHkuCisuVFAKKy5CIEZvcm1hdAorVGhlCisuQiAuY2hhbmdlcworZmlsZSBmb3JtYXQgdmVyc2lvbiBnZW5lcmF0ZWQgYnkgdGhpcyB2ZXJzaW9uIG9mIHRoZSBzb3VyY2UgcGFja2FnaW5nCitzY3JpcHRzLiBJZiB5b3Ugc2V0IHRoaXMgdmFyaWFibGUgdGhlIGNvbnRlbnRzIG9mIHRoZQorLkIgRm9ybWF0CitmaWVsZCBpbiB0aGUKKy5CIC5jaGFuZ2VzCitmaWxlIHdpbGwgY2hhbmdlIHRvby4KKy5UUAorLkJSIE5ld2xpbmUgIiwgIiBTcGFjZSAiLCAiIFRhYgorVGhlc2UgdmFyaWFibGVzIGVhY2ggaG9sZCB0aGUgY29ycmVzcG9uZGluZyBjaGFyYWN0ZXIuCisuVFAKKy5CSSBzaGxpYnM6IGRlcGVuZGVuY3lmaWVsZAorVmFyaWFibGUgc2V0dGluZ3Mgd2l0aCBuYW1lcyBvZiB0aGlzIGZvcm0gYXJlIGdlbmVyYXRlZCBieQorLkJSIGRwa2dcLXNobGliZGVwcyAuCisuVFAKKy5CIGRwa2c6VXBzdHJlYW1cLVZlcnNpb24KK1RoZSB1cHN0cmVhbSB2ZXJzaW9uIG9mIGRwa2cuCisuVFAKKy5CIGRwa2c6VmVyc2lvbgorVGhlIGZ1bGwgdmVyc2lvbiBvZiBkcGtnLgorLkxQCitJZiBhIHZhcmlhYmxlIGlzIHJlZmVycmVkIHRvIGJ1dCBub3QgZGVmaW5lZCBpdCBnZW5lcmF0ZXMgYSB3YXJuaW5nCithbmQgYW4gZW1wdHkgdmFsdWUgaXMgYXNzdW1lZC4KKy4KKy5TSCBGSUxFUworLlRQCisuQiBkZWJpYW4vc3Vic3R2YXJzCitMaXN0IG9mIHN1YnN0aXR1dGlvbiB2YXJpYWJsZXMgYW5kIHZhbHVlcy4KKy4KKy5TSCBCVUdTCitUaGUgcG9pbnQgYXQgd2hpY2ggZmllbGQgb3ZlcnJpZGluZyBvY2N1cnMgY29tcGFyZWQgdG8gY2VydGFpbgorc3RhbmRhcmQgb3V0cHV0IGZpZWxkIHNldHRpbmdzIGlzIHJhdGhlciBjb25mdXNlZC4KKworLlNIIFNFRSBBTFNPCisuQlIgZHBrZyAoMSksCisuQlIgZHBrZ1wtZ2VuY2hhbmdlcyAoMSksCisuQlIgZHBrZ1wtZ2VuY29udHJvbCAoMSksCisuQlIgZHBrZ1wtc2hsaWJkZXBzICgxKSwKKy5CUiBkcGtnXC1zb3VyY2UgKDEpLgorLgorLlNIIEFVVEhPUgorQ29weXJpZ2h0IFwoY28gMTk5NS0xOTk2IElhbiBKYWNrc29uCisuYnIKK0NvcHlyaWdodCBcKGNvIDIwMDAgV2ljaGVydCBBa2tlcm1hbgorLnNwCitUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgdmVyc2lvbiAyIG9yCitsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyBXQVJSQU5UWS4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL2RlYi1zeW1ib2xzLjUgYi9kcGtnLTEuMTYuMS4xL21hbi9kZWItc3ltYm9scy41Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmY2OTcyOTEKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9kZWItc3ltYm9scy41CkBAIC0wLDAgKzEsNjUgQEAKKy5cIiBBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cKKy5USCBkZWJcLXN5bWJvbHMgNSAiMjAxMS0wOC0xNCIgIkRlYmlhbiBQcm9qZWN0IiAiZHBrZyB1dGlsaXRpZXMiCisuU0ggTkFNRQorZGViXC1zeW1ib2xzIFwtIERlYmlhbidzIGV4dGVuZGVkIHNoYXJlZCBsaWJyYXJ5IGluZm9ybWF0aW9uIGZpbGUKKy4KKy5TSCBTWU5PUFNJUworc3ltYm9scworLgorLlNIIERFU0NSSVBUSU9OCitUaGUgZm9ybWF0IGZvciBhbiBleHRlbmRlZCBzaGFyZWQgbGlicmFyeSBkZXBlbmRlbmN5IGluZm9ybWF0aW9uIGVudHJ5CitpbiB0aGVzZSBmaWxlcyBpczoKKy5QUAorLkkgbGlicmFyeS1zb25hbWUgbWFpbi1kZXBlbmRlbmN5LXRlbXBsYXRlCisuYnIKK1sgfCBcZklhbHRlcm5hdGl2ZS1kZXBlbmRlbmN5LXRlbXBsYXRlXGZQIF0KKy5icgorWyAuLi4gXQorLmJyCitbICogXGZJZmllbGQtbmFtZVxmUDogXGZJZmllbGQtdmFsdWVcZlAgXQorLmJyCitbIC4uLiBdCisgXGZJc3ltYm9sXGZQIFxmSW1pbmltYWwtdmVyc2lvblxmUFsgXGZJaWQtb2YtZGVwZW5kZW5jeS10ZW1wbGF0ZVxmUCBdCisuUAorVGhlIFxmSWxpYnJhcnktc29uYW1lXGZSIGlzIGV4YWN0bHkgdGhlIHZhbHVlIG9mIHRoZSBTT05BTUUgZmllbGQKK2FzIGV4cG9ydGVkIGJ5IFxmQm9iamR1bXBcZlIoMSkuIEEgXGZJZGVwZW5kZW5jeS10ZW1wbGF0ZVxmUiBpcyBhCitkZXBlbmRlbmN5IHdoZXJlIFxmSSNNSU5WRVIjXGZSIGlzIGR5bmFtaWNhbGx5IHJlcGxhY2VkIGVpdGhlciBieQorYSB2ZXJzaW9uIGNoZWNrIGxpa2UgIig+PSBcZkltaW5pbWFsLXZlcnNpb25cZlIpIiBvciBieSBub3RoaW5nIChpZgorYW4gdW52ZXJzaW9uZWQgZGVwZW5kZW5jeSBpcyBkZWVtZWQgc3VmZmljaWVudCkuIAorLlAKK0VhY2ggZXhwb3J0ZWQgXGZJc3ltYm9sXGZSIChsaXN0ZWQgYXMgXGZJbmFtZVxmUkBcZkl2ZXJzaW9uXGZSLCB3aXRoCitcZkl2ZXJzaW9uXGZSIGJlaW5nICJCYXNlIiBpZiB0aGUgbGlicmFyeSBpcyBub3QgdmVyc2lvbmVkKSBpcyBhc3NvY2lhdGVkCit0byBhIFxmSW1pbmltYWwtdmVyc2lvblxmUiBvZiBpdHMgZGVwZW5kZW5jeSB0ZW1wbGF0ZSAodGhlIG1haW4gZGVwZW5kZW5jeQordGVtcGxhdGUgaXMgdXNlZCBpZiBcZklpZC1vZi1kZXBlbmRlbmN5LXRlbXBsYXRlXGZSIGlzIG5vdCBwcmVzZW50KS4gVGhlCitmaXJzdCBhbHRlcm5hdGl2ZSBkZXBlbmRlbmN5IHRlbXBsYXRlIGlzIG51bWJlcmVkIDEsIHRoZSBzZWNvbmQgb25lIDIsCitldGMuCisuUAorRWFjaCBlbnRyeSBmb3IgYSBsaWJyYXJ5IGNhbiBhbHNvIGhhdmUgc29tZSBmaWVsZHMgb2YgbWV0YS1pbmZvcm1hdGlvbi4KK1Rob3NlIGZpZWxkcyBhcmUgc3RvcmVkIG9uIGxpbmVzIHN0YXJ0aW5nIHdpdGggYW4gYXN0ZXJpc2suIEN1cnJlbnRseSwKK3RoZSBvbmx5IHZhbGlkIGZpZWxkIGlzIFxmSUJ1aWxkXC1EZXBlbmRzXC1QYWNrYWdlXGZSLCBpdCBpbmRpY2F0ZXMgdGhlIG5hbWUKK29mIHRoZSAiXC1kZXYiIHBhY2thZ2UgYXNzb2NpYXRlZCB0byB0aGUgbGlicmFyeSBhbmQgaXMgdXNlZCBieQorXGZCZHBrZ1wtc2hsaWJkZXBzXGZQIHRvIG1ha2Ugc3VyZSB0aGF0IHRoZSBkZXBlbmRlbmN5IGdlbmVyYXRlZCBpcyBhdCBsZWFzdCBhcworc3RyaWN0IGFzIHRoZSBjb3JyZXNwb25kaW5nIGJ1aWxkIGRlcGVuZGVuY3kuCisuU0ggRVhBTVBMRVMKKy5TUyBTaW1wbGUgc3ltYm9scyBmaWxlCisuUFAgCitsaWJmdHAuc28uMyBsaWJmdHAzICNNSU5WRVIjCisgRGVmYXVsdE5ldGJ1ZkBCYXNlIDMuMS0xLTYKKyBGdHBBY2Nlc3NAQmFzZSAzLjEtMS02CisgWy4uLl0KKy5TUyBBZHZhbmNlZCBzeW1ib2xzIGZpbGUKKy5QUCAKK2xpYkdMLnNvLjEgbGliZ2wxCisuYnIKK3wgbGliZ2wxXC1tZXNhXC1nbHggI01JTlZFUiMKKy5icgorKiBCdWlsZFwtRGVwZW5kc1wtUGFja2FnZTogbGliZ2wxXC1tZXNhXC1kZXYKKyBwdWJsaWNHbFN5bWJvbEBCYXNlIDYuMy0xCisgWy4uLl0KKyBpbXBsZW1lbnRhdGlvblNwZWNpZmljU3ltYm9sQEJhc2UgNi41LjItNyAxCisgWy4uLl0KKy5TSCBTRUUgQUxTTworLkJSIGh0dHA6Ly93aWtpLmRlYmlhbi5vcmcvUHJvamVjdHMvSW1wcm92ZWREcGtnU2hsaWJkZXBzCisuYnIKKy5CUiBkcGtnXC1zaGxpYmRlcHMgKDEpLAorLkJSIGRwa2dcLWdlbnN5bWJvbHMgKDEpLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vZGViLXRyaWdnZXJzLjUgYi9kcGtnLTEuMTYuMS4xL21hbi9kZWItdHJpZ2dlcnMuNQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45ZmVhZTRiCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vZGViLXRyaWdnZXJzLjUKQEAgLTAsMCArMSw3MCBAQAorLlRIIGRlYlwtdHJpZ2dlcnMgNSAiMjAxMS0wOC0xNCIgIkRlYmlhbiBQcm9qZWN0IiAiZHBrZyB1dGlsaXRpZXMiCisuU0ggTkFNRQorZGViXC10cmlnZ2VycyBcLSBwYWNrYWdlIHRyaWdnZXJzCisuCisuU0ggU1lOT1BTSVMKK3RyaWdnZXJzCisuCisuU0ggREVTQ1JJUFRJT04KK0EgcGFja2FnZSBkZWNsYXJlcyBpdHMgcmVsYXRpb25zaGlwIHRvIHNvbWUgdHJpZ2dlcihzKSBieSBpbmNsdWRpbmcKK2EgXGZJdHJpZ2dlcnNcZlAgZmlsZSBpbiBpdHMgY29udHJvbCBhcmNoaXZlIChpLmUuIFxmSURFQklBTi90cmlnZ2Vyc1xmUAorZHVyaW5nIHBhY2thZ2UgY3JlYXRpb24pLgorLlBQCitUaGlzIGZpbGUgY29udGFpbnMgZGlyZWN0aXZlcywgb25lIHBlciBsaW5lLiBMZWFkaW5nIGFuZCB0cmFpbGluZyB3aGl0ZXNwYWNlCithbmQgZXZlcnl0aGluZyBhZnRlciB0aGUgZmlyc3QgXGZCI1xmUCBvbiBhbnkgbGluZSB3aWxsIGJlIHRyaW1tZWQsIGFuZAorZW1wdHkgbGluZXMgd2lsbCBiZSBpZ25vcmVkLgorLlBQCitUaGUgdHJpZ2dlciBjb250cm9sIGRpcmVjdGl2ZXMgY3VycmVudGx5IHN1cHBvcnRlZCBhcmU6CisuUFAKKy5pbiArNQorLkIgaW50ZXJlc3QKKy5JIHRyaWdnZXItbmFtZQorLlBQCisuaW4gKzUKKy5CIGludGVyZXN0XC1ub2F3YWl0CisuSSB0cmlnZ2VyLW5hbWUKKy5QUAorLmluICs1CitTcGVjaWZpZXMgdGhhdCB0aGUgcGFja2FnZSBpcyBpbnRlcmVzdGVkIGluIHRoZSBuYW1lZCB0cmlnZ2VyLiBBbGwKK3RyaWdnZXJzIGluIHdoaWNoIGEgcGFja2FnZSBpcyBpbnRlcmVzdGVkIG11c3QgYmUgbGlzdGVkIHVzaW5nIHRoaXMKK2RpcmVjdGl2ZSBpbiB0aGUgdHJpZ2dlcnMgY29udHJvbCBmaWxlLiBUaGUgIm5vYXdhaXQiIHZhcmlhbnQgZG9lcworbm90IHB1dCB0aGUgdHJpZ2dlcmluZyBwYWNrYWdlcyBpbiB0cmlnZ2Vyc1wtYXdhaXRlZCBzdGF0ZS4gVGhpcyBzaG91bGQKK2JlIHVzZWQgd2hlbiB0aGUgZnVuY3Rpb25hbGl0eSBwcm92aWRlZCBieSB0aGUgdHJpZ2dlciBpcyBub3QgY3J1Y2lhbC4KKy5QUAorLmluICs1CisuQiBhY3RpdmF0ZQorLkkgdHJpZ2dlci1uYW1lCisuUFAKKy5pbiArNQorLkIgYWN0aXZhdGVcLW5vYXdhaXQKKy5JIHRyaWdnZXItbmFtZQorLlBQCisuaW4gKzUKK0FycmFuZ2VzIHRoYXQgY2hhbmdlcyB0byB0aGlzIHBhY2thZ2UncyBzdGF0ZSB3aWxsIGFjdGl2YXRlIHRoZQorc3BlY2lmaWVkIHRyaWdnZXIuIFRoZSB0cmlnZ2VyIHdpbGwgYmUgYWN0aXZhdGVkIGF0IHRoZSBzdGFydCBvZgordGhlIGZvbGxvd2luZyBvcGVyYXRpb25zOiB1bnBhY2ssIGNvbmZpZ3VyZSwgcmVtb3ZlIChpbmNsdWRpbmcgZm9yCit0aGUgYmVuZWZpdCBvZiBhIGNvbmZsaWN0aW5nIHBhY2thZ2UpLCBwdXJnZSBhbmQgZGVjb25maWd1cmUuCitUaGUgIm5vYXdhaXQiIHZhcmlhbnQgZG9lcyBub3QgcHV0IHRoZSB0cmlnZ2VyaW5nIHBhY2thZ2VzIGluCit0cmlnZ2Vyc1wtYXdhaXRlZCBzdGF0ZS4gVGhpcyBzaG91bGQgYmUgdXNlZCB3aGVuIHRoZSBmdW5jdGlvbmFsaXR5Citwcm92aWRlZCBieSB0aGUgdHJpZ2dlciBpcyBub3QgY3J1Y2lhbC4KKy5QUAorLmluICs1CitJZiB0aGlzIHBhY2thZ2UgZGlzYXBwZWFycyBkdXJpbmcgdGhlIHVucGFja2luZyBvZiBhbm90aGVyIHBhY2thZ2UKK3RoZSB0cmlnZ2VyIHdpbGwgYmUgYWN0aXZhdGVkIHdoZW4gdGhlIGRpc2FwcGVhcmFuY2UgaXMgbm90ZWQKK3Rvd2FyZHMgdGhlIGVuZCBvZiB0aGUgdW5wYWNrLiBUcmlnZ2VyIHByb2Nlc3NpbmcsIGFuZCB0cmFuc2l0aW9uCitmcm9tIHRyaWdnZXJzXC1hd2FpdGVkIHRvIGluc3RhbGxlZCwgZG9lcyBub3QgY2F1c2UgYWN0aXZhdGlvbnMuCitJbiB0aGUgY2FzZSBvZiB1bnBhY2ssIHRyaWdnZXJzIG1lbnRpb25lZCBpbiBib3RoIHRoZSBvbGQgYW5kIG5ldwordmVyc2lvbnMgb2YgdGhlIHBhY2thZ2Ugd2lsbCBiZSBhY3RpdmF0ZWQuCisuUFAKK1Vua25vd24gZGlyZWN0aXZlcyBhcmUgYW4gZXJyb3Igd2hpY2ggd2lsbCBwcmV2ZW50IGluc3RhbGxhdGlvbiBvZiB0aGUKK3BhY2thZ2UuCisuUFAKK1RoZSAiXC1ub2F3YWl0IiB2YXJpYW50cyBhcmUgb25seSBzdXBwb3J0ZWQgYnkgZHBrZyAxLjE2LjEgb3IgbmV3ZXIsIGFuZAord2lsbCBsZWFkIHRvIGVycm9ycyBpZiB1c2VkIHdpdGggYW4gb2xkZXIgZHBrZy4gSXQgaXMgdGh1cyByZWNvbW1lbmRlZAordG8gYWRkIGEgIlByZVwtRGVwZW5kczogZHBrZyAoPj0gMS4xNi4xKSIgdG8gYW55IHBhY2thZ2UgdGhhdCB3aXNoIHRvIHVzZQordGhvc2UgZGlyZWN0aXZlcy4KKy4KKy5TSCBTRUUgQUxTTworLkJSIGRwa2dcLXRyaWdnZXIgKDEpLAorLkJSIGRwa2cgKDEpLAorLkJSIC91c3Ivc2hhcmUvZG9jL2Rwa2dcLWRldi90cmlnZ2Vycy50eHQuZ3ogLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vZGViLXZlcnNpb24uNSBiL2Rwa2ctMS4xNi4xLjEvbWFuL2RlYi12ZXJzaW9uLjUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjIwMGQyZAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL2RlYi12ZXJzaW9uLjUKQEAgLTAsMCArMSwxMjYgQEAKKy5cIiBJbmNsdWRlcyB0ZXh0IGZyb20gdGhlIERlYmlhbiBQb2xpY3kgcHJvYmFibHkgYnkgSWFuIEphY2tzb24gYW5kIG90aGVycworLlwiIFRoZSBjb3B5cmlnaHQgZ2l2ZW4gYmVsb3cgaXMgdGhhdCBvZiB0aGUgd2hvbGUgcG9saWN5LCBidXQgcHJvYmFibHkKKy5cIiBpbmNvbXBsZXRlLgorLlwiIENvbnZlcnNpb24gdG8gcm9mZiBieSBGcmFuayBMaWNodGVuaGVsZAorLlRIIGRlYlwtdmVyc2lvbiA1ICIyMDExLTA4LTE0IiAiRGViaWFuIFByb2plY3QiICJEZWJpYW4iCisuU0ggTkFNRQorZGViXC12ZXJzaW9uIFwtIERlYmlhbiBwYWNrYWdlIHZlcnNpb24gbnVtYmVyIGZvcm1hdAorLgorLlNIIFNZTk9QU0lTCisuUkkgIlsiIGVwb2NoICJcZkI6XGZQXSIgdXBzdHJlYW0tdmVyc2lvbiAiW1xmQlwtXGZQIiBkZWJpYW4tcmV2aXNpb24gIl0iCisuU0ggREVTQ1JJUFRJT04KK1ZlcnNpb24gbnVtYmVycyBhcyB1c2VkIGZvciBEZWJpYW4gYmluYXJ5IGFuZCBzb3VyY2UgcGFja2FnZXMKK2NvbnNpc3Qgb2YgdGhyZWUgY29tcG9uZW50cy4gVGhlc2UgYXJlOgorLlRQCisuSSBlcG9jaAorVGhpcyBpcyBhIHNpbmdsZSAoZ2VuZXJhbGx5IHNtYWxsKSB1bnNpZ25lZCBpbnRlZ2VyLiAgSXQKK21heSBiZSBvbWl0dGVkLCBpbiB3aGljaCBjYXNlIHplcm8gaXMgYXNzdW1lZC4gIElmIGl0IGlzCitvbWl0dGVkIHRoZW4gdGhlIFxmSXVwc3RyZWFtLXZlcnNpb25cZlAgbWF5IG5vdAorY29udGFpbiBhbnkgY29sb25zLgorLklQCitJdCBpcyBwcm92aWRlZCB0byBhbGxvdyBtaXN0YWtlcyBpbiB0aGUgdmVyc2lvbiBudW1iZXJzCitvZiBvbGRlciB2ZXJzaW9ucyBvZiBhIHBhY2thZ2UsIGFuZCBhbHNvIGEgcGFja2FnZSdzCitwcmV2aW91cyB2ZXJzaW9uIG51bWJlcmluZyBzY2hlbWVzLCB0byBiZSBsZWZ0IGJlaGluZC4KKy5UUAorLkkgdXBzdHJlYW0tdmVyc2lvbgorVGhpcyBpcyB0aGUgbWFpbiBwYXJ0IG9mIHRoZSB2ZXJzaW9uIG51bWJlci4gIEl0IGlzCit1c3VhbGx5IHRoZSB2ZXJzaW9uIG51bWJlciBvZiB0aGUgb3JpZ2luYWwgKCJ1cHN0cmVhbSIpCitwYWNrYWdlIGZyb20gd2hpY2ggdGhlIFxmSS5kZWJcZlAgZmlsZSBoYXMgYmVlbiBtYWRlLAoraWYgdGhpcyBpcyBhcHBsaWNhYmxlLiAgVXN1YWxseSB0aGlzIHdpbGwgYmUgaW4gdGhlIHNhbWUKK2Zvcm1hdCBhcyB0aGF0IHNwZWNpZmllZCBieSB0aGUgdXBzdHJlYW0gYXV0aG9yKHMpOworaG93ZXZlciwgaXQgbWF5IG5lZWQgdG8gYmUgcmVmb3JtYXR0ZWQgdG8gZml0IGludG8gdGhlCitwYWNrYWdlIG1hbmFnZW1lbnQgc3lzdGVtJ3MgZm9ybWF0IGFuZCBjb21wYXJpc29uCitzY2hlbWUuCisuSVAKK1RoZSBjb21wYXJpc29uIGJlaGF2aW9yIG9mIHRoZSBwYWNrYWdlIG1hbmFnZW1lbnQgc3lzdGVtCit3aXRoIHJlc3BlY3QgdG8gdGhlIFxmSXVwc3RyZWFtLXZlcnNpb25cZlAgaXMKK2Rlc2NyaWJlZCBiZWxvdy4gVGhlIFxmSXVwc3RyZWFtLXZlcnNpb25cZlAKK3BvcnRpb24gb2YgdGhlIHZlcnNpb24gbnVtYmVyIGlzIG1hbmRhdG9yeS4KKy5JUAorVGhlIFxmSXVwc3RyZWFtLXZlcnNpb25cZlAgbWF5IGNvbnRhaW4gb25seQorYWxwaGFudW1lcmljcyAoIkEtWmEtejAtOSIpIGFuZCB0aGUgY2hhcmFjdGVycworLkJSIC4gIiAiICsgIiAiIFwtICIgIiA6ICIgIiB+CisoZnVsbCBzdG9wLCBwbHVzLCBoeXBoZW4sIGNvbG9uLCB0aWxkZSkgYW5kIHNob3VsZAorc3RhcnQgd2l0aCBhIGRpZ2l0LiAgSWYgdGhlcmUgaXMgbm8KK1xmSWRlYmlhbi1yZXZpc2lvblxmUCB0aGVuIGh5cGhlbnMgYXJlIG5vdCBhbGxvd2VkOworaWYgdGhlcmUgaXMgbm8gXGZJZXBvY2hcZlAgdGhlbiBjb2xvbnMgYXJlIG5vdAorYWxsb3dlZC4KKy5UUAorLkkgZGViaWFuLXJldmlzaW9uCitUaGlzIHBhcnQgb2YgdGhlIHZlcnNpb24gbnVtYmVyIHNwZWNpZmllcyB0aGUgdmVyc2lvbiBvZgordGhlIERlYmlhbiBwYWNrYWdlIGJhc2VkIG9uIHRoZSB1cHN0cmVhbSB2ZXJzaW9uLiAgSXQKK21heSBjb250YWluIG9ubHkgYWxwaGFudW1lcmljcyBhbmQgdGhlIGNoYXJhY3RlcnMKKy5CUiArICIgIiAuICIgIiB+CisocGx1cywgZnVsbCBzdG9wLCB0aWxkZSkgYW5kIGlzCitjb21wYXJlZCBpbiB0aGUgc2FtZSB3YXkgYXMgdGhlCitcZkl1cHN0cmVhbS12ZXJzaW9uXGZQIGlzLgorLklQCitJdCBpcyBvcHRpb25hbDsgaWYgaXQgaXNuJ3QgcHJlc2VudCB0aGVuIHRoZQorXGZJdXBzdHJlYW0tdmVyc2lvblxmUCBtYXkgbm90IGNvbnRhaW4gYSBoeXBoZW4uCitUaGlzIGZvcm1hdCByZXByZXNlbnRzIHRoZSBjYXNlIHdoZXJlIGEgcGllY2Ugb2YKK3NvZnR3YXJlIHdhcyB3cml0dGVuIHNwZWNpZmljYWxseSB0byBiZSB0dXJuZWQgaW50byBhCitEZWJpYW4gcGFja2FnZSwgYW5kIHNvIHRoZXJlIGlzIG9ubHkgb25lICJkZWJpYW5pc2F0aW9uIgorb2YgaXQgYW5kIHRoZXJlZm9yZSBubyByZXZpc2lvbiBpbmRpY2F0aW9uIGlzIHJlcXVpcmVkLgorLklQCitJdCBpcyBjb252ZW50aW9uYWwgdG8gcmVzdGFydCB0aGUKK1xmSWRlYmlhbi1yZXZpc2lvblxmUCBhdCAnMScgZWFjaCB0aW1lIHRpbWUgdGhlCitcZkl1cHN0cmVhbS12ZXJzaW9uXGZQIGlzIGluY3JlYXNlZC4KKy5JUAorRHBrZyB3aWxsIGJyZWFrIHRoZSB2ZXJzaW9uCitudW1iZXIgYXBhcnQgYXQgdGhlIGxhc3QgaHlwaGVuIGluIHRoZSBzdHJpbmcgKGlmIHRoZXJlCitpcyBvbmUpIHRvIGRldGVybWluZSB0aGUgXGZJdXBzdHJlYW0tdmVyc2lvblxmUCBhbmQKK1xmSWRlYmlhbi1yZXZpc2lvblxmUC4gVGhlIGFic2VuY2Ugb2YgYQorXGZJZGViaWFuLXJldmlzaW9uXGZQIGNvbXBhcmVzIGVhcmxpZXIgdGhhbiB0aGUKK3ByZXNlbmNlIG9mIG9uZSAoYnV0IG5vdGUgdGhhdCB0aGUgXGZJZGViaWFuLXJldmlzaW9uXGZQCitpcyB0aGUgbGVhc3Qgc2lnbmlmaWNhbnQgcGFydCBvZiB0aGUgdmVyc2lvbiBudW1iZXIpLgorLlNTIFNvcnRpbmcgQWxnb3JpdGhtCitUaGUgXGZJdXBzdHJlYW0tdmVyc2lvblxmUCBhbmQgXGZJZGViaWFuLXJldmlzaW9uXGZQCitwYXJ0cyBhcmUgY29tcGFyZWQgYnkgdGhlIHBhY2thZ2UgbWFuYWdlbWVudCBzeXN0ZW0gdXNpbmcgdGhlCitzYW1lIGFsZ29yaXRobToKKy5QUAorVGhlIHN0cmluZ3MgYXJlIGNvbXBhcmVkIGZyb20gbGVmdCB0byByaWdodC4KKy5QUAorRmlyc3QgdGhlIGluaXRpYWwgcGFydCBvZiBlYWNoIHN0cmluZyBjb25zaXN0aW5nIGVudGlyZWx5IG9mCitub24tZGlnaXQgY2hhcmFjdGVycyBpcyBkZXRlcm1pbmVkLiAgVGhlc2UgdHdvIHBhcnRzIChvbmUgb2YKK3doaWNoIG1heSBiZSBlbXB0eSkgYXJlIGNvbXBhcmVkIGxleGljYWxseS4gIElmIGEgZGlmZmVyZW5jZQoraXMgZm91bmQgaXQgaXMgcmV0dXJuZWQuICBUaGUgbGV4aWNhbCBjb21wYXJpc29uIGlzIGEKK2NvbXBhcmlzb24gb2YgQVNDSUkgdmFsdWVzIG1vZGlmaWVkIHNvIHRoYXQgYWxsIHRoZSBsZXR0ZXJzCitzb3J0IGVhcmxpZXIgdGhhbiBhbGwgdGhlIG5vbi1sZXR0ZXJzIGFuZCBzbyB0aGF0IGEgdGlsZGUKK3NvcnRzIGJlZm9yZSBhbnl0aGluZywgZXZlbiB0aGUgZW5kIG9mIGEgcGFydC4gIEZvciBleGFtcGxlLAordGhlIGZvbGxvd2luZyBwYXJ0cyBhcmUgaW4gc29ydGVkIG9yZGVyOiAnfn4nLCAnfn5hJywgJ34nLAordGhlIGVtcHR5IHBhcnQsICdhJy4KKy5QUAorVGhlbiB0aGUgaW5pdGlhbCBwYXJ0IG9mIHRoZSByZW1haW5kZXIgb2YgZWFjaCBzdHJpbmcgd2hpY2gKK2NvbnNpc3RzIGVudGlyZWx5IG9mIGRpZ2l0IGNoYXJhY3RlcnMgaXMgZGV0ZXJtaW5lZC4gIFRoZQorbnVtZXJpY2FsIHZhbHVlcyBvZiB0aGVzZSB0d28gcGFydHMgYXJlIGNvbXBhcmVkLCBhbmQgYW55CitkaWZmZXJlbmNlIGZvdW5kIGlzIHJldHVybmVkIGFzIHRoZSByZXN1bHQgb2YgdGhlIGNvbXBhcmlzb24uCitGb3IgdGhlc2UgcHVycG9zZXMgYW4gZW1wdHkgc3RyaW5nICh3aGljaCBjYW4gb25seSBvY2N1ciBhdAordGhlIGVuZCBvZiBvbmUgb3IgYm90aCB2ZXJzaW9uIHN0cmluZ3MgYmVpbmcgY29tcGFyZWQpIGNvdW50cworYXMgemVyby4KKy5QUAorVGhlc2UgdHdvIHN0ZXBzIChjb21wYXJpbmcgYW5kIHJlbW92aW5nIGluaXRpYWwgbm9uLWRpZ2l0CitzdHJpbmdzIGFuZCBpbml0aWFsIGRpZ2l0IHN0cmluZ3MpIGFyZSByZXBlYXRlZCB1bnRpbCBhCitkaWZmZXJlbmNlIGlzIGZvdW5kIG9yIGJvdGggc3RyaW5ncyBhcmUgZXhoYXVzdGVkLgorLlBQCitOb3RlIHRoYXQgdGhlIHB1cnBvc2Ugb2YgZXBvY2hzIGlzIHRvIGFsbG93IHVzIHRvIGxlYXZlIGJlaGluZAorbWlzdGFrZXMgaW4gdmVyc2lvbiBudW1iZXJpbmcsIGFuZCB0byBjb3BlIHdpdGggc2l0dWF0aW9ucword2hlcmUgdGhlIHZlcnNpb24gbnVtYmVyaW5nIHNjaGVtZSBjaGFuZ2VzLiAgSXQgaXMKK1xmQm5vdFxmUCBpbnRlbmRlZCB0byBjb3BlIHdpdGggdmVyc2lvbiBudW1iZXJzIGNvbnRhaW5pbmcKK3N0cmluZ3Mgb2YgbGV0dGVycyB3aGljaCB0aGUgcGFja2FnZSBtYW5hZ2VtZW50IHN5c3RlbSBjYW5ub3QKK2ludGVycHJldCAoc3VjaCBhcyAnQUxQSEEnIG9yICdwcmVcLScpLCBvciB3aXRoCitzaWxseSBvcmRlcmluZ3MuCisuU0ggQ0FWRUFUUworVGhlIHRpbGRlIGNoYXJhY3RlciBhbmQgaXRzIHNwZWNpYWwgc29ydGluZyBwcm9wZXJ0aWVzIHdlcmUgaW50cm9kdWNlZAoraW4gZHBrZywgdmVyc2lvbiAxLjEwIGFuZCBzb21lIHBhcnRzIG9mIGRwa2dcLWRldiBvbmx5IGdhaW5lZAorc3VwcG9ydCBmb3IgaXQgbGF0ZXIgaW4gdGhlIDEuMTAueCBzZXJpZXMuCisuU0ggU0VFIEFMU08KKy5CUiBkZWJcLWNvbnRyb2wgKDUpLAorLkJSIGRlYiAoNSksCisuQlIgZHBrZyAoMSkKKy5TSCBBVVRIT1JTCitDb3B5cmlnaHQgXChjbyAxOTk2LDE5OTcsMTk5OCBJYW4gSmFja3NvbiBhbmQgQ2hyaXN0aWFuIFNjaHdhcnoKKy5icgorQ29weXJpZ2h0IFwoY28gMjAwNyBGcmFuayBMaWNodGVuaGVsZAorLnNwCitUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgdmVyc2lvbiAyIG9yIGxhdGVyCitmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyBXQVJSQU5UWS4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL2RlYi41IGIvZHBrZy0xLjE2LjEuMS9tYW4vZGViLjUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMWE1ODg2OAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL2RlYi41CkBAIC0wLDAgKzEsODIgQEAKKy5USCBkZWIgNSAiMjAxMS0wOC0xNCIgIkRlYmlhbiBQcm9qZWN0IiAiRGViaWFuIgorLlNIIE5BTUUKK2RlYiBcLSBEZWJpYW4gYmluYXJ5IHBhY2thZ2UgZm9ybWF0CisuU0ggU1lOT1BTSVMKKy5JQiBmaWxlbmFtZSAuZGViCisuU0ggREVTQ1JJUFRJT04KK1RoZQorLkIgLmRlYgorZm9ybWF0IGlzIHRoZSBEZWJpYW4gYmluYXJ5IHBhY2thZ2UgZmlsZSBmb3JtYXQuIEl0IGlzIHVuZGVyc3Rvb2QgYnkKK2Rwa2cgMC45My43NiBhbmQgbGF0ZXIsIGFuZCBpcyBnZW5lcmF0ZWQgYnkgZGVmYXVsdCBieSBhbGwgdmVyc2lvbnMKK29mIGRwa2cgc2luY2UgMS4yLjAgYW5kIGFsbCBpMzg2L0VMRiB2ZXJzaW9ucyBzaW5jZSAxLjEuMWVsZi4KKy5QUAorVGhlIGZvcm1hdCBkZXNjcmliZWQgaGVyZSBpcyB1c2VkIHNpbmNlIERlYmlhbiAwLjkzOyBkZXRhaWxzIG9mIHRoZQorb2xkIGZvcm1hdCBhcmUgZGVzY3JpYmVkIGluCisuQlIgZGViXC1vbGQgKDUpLgorLlNIIEZPUk1BVAorVGhlIGZpbGUgaXMgYW4KKy5CIGFyCithcmNoaXZlIHdpdGggYSBtYWdpYyB2YWx1ZSBvZgorLkJSICE8YXJjaD4gLgorVGhlIGZpbGUgbmFtZXMgbWlnaHQgY29udGFpbiBhIHRyYWlsaW5nIHNsYXNoLgorLlBQCitUaGUgXGZCdGFyXGZQIGFyY2hpdmVzIGN1cnJlbnRseSBhbGxvd2VkIGFyZSwgdGhlIG9sZC1zdHlsZSAodjcpIGZvcm1hdCwKK3RoZSBwcmUtUE9TSVggdXN0YXIgZm9ybWF0LCBhIHN1YnNldCBvZiB0aGUgR05VIGZvcm1hdCAob25seSB0aGUgbmV3CitzdHlsZSBsb25nIHBhdGhuYW1lcyBhbmQgbG9uZyBsaW5rbmFtZXMsIHN1cHBvcnRlZCBzaW5jZSBkcGtnIDEuNC4xLjE3KSwKK2FuZCB0aGUgUE9TSVggdXN0YXIgZm9ybWF0IChsb25nIG5hbWVzIHN1cHBvcnRlZCBzaW5jZSBkcGtnIDEuMTUuMCkuCitVbnJlY29nbml6ZWQgdGFyIHR5cGVmbGFncyBhcmUgY29uc2lkZXJlZCBhbiBlcnJvci4KKy5QUAorVGhlIGZpcnN0IG1lbWJlciBpcyBuYW1lZAorLkIgZGViaWFuXC1iaW5hcnkKK2FuZCBjb250YWlucyBhIHNlcmllcyBvZiBsaW5lcywgc2VwYXJhdGVkIGJ5IG5ld2xpbmVzLiBDdXJyZW50bHkgb25seQorb25lIGxpbmUgaXMgcHJlc2VudCwgdGhlIGZvcm1hdCB2ZXJzaW9uIG51bWJlciwKKy5CUiAyLjAKK2F0IHRoZSB0aW1lIHRoaXMgbWFudWFsIHBhZ2Ugd2FzIHdyaXR0ZW4uCitQcm9ncmFtcyB3aGljaCByZWFkIG5ldy1mb3JtYXQgYXJjaGl2ZXMgc2hvdWxkIGJlIHByZXBhcmVkIGZvciB0aGUKK21pbm9yIG51bWJlciB0byBiZSBpbmNyZWFzZWQgYW5kIG5ldyBsaW5lcyB0byBiZSBwcmVzZW50LCBhbmQgc2hvdWxkCitpZ25vcmUgdGhlc2UgaWYgdGhpcyBpcyB0aGUgY2FzZS4KKy5QUAorSWYgdGhlIG1ham9yIG51bWJlciBoYXMgY2hhbmdlZCwgYW4gaW5jb21wYXRpYmxlIGNoYW5nZSBoYXMgYmVlbiBtYWRlCithbmQgdGhlIHByb2dyYW0gc2hvdWxkIHN0b3AuIElmIGl0IGhhcyBub3QsIHRoZW4gdGhlIHByb2dyYW0gc2hvdWxkCitiZSBhYmxlIHRvIHNhZmVseSBjb250aW51ZSwgdW5sZXNzIGl0IGVuY291bnRlcnMgYW4gdW5leHBlY3RlZCBtZW1iZXIKK2luIHRoZSBhcmNoaXZlIChleGNlcHQgYXQgdGhlIGVuZCksIGFzIGRlc2NyaWJlZCBiZWxvdy4KKy5QUAorVGhlIHNlY29uZCByZXF1aXJlZCBtZW1iZXIgaXMgbmFtZWQKKy5CUiBjb250cm9sLnRhci5neiAuCitJdCBpcyBhIGd6aXBwZWQgdGFyIGFyY2hpdmUgY29udGFpbmluZyB0aGUgcGFja2FnZSBjb250cm9sIGluZm9ybWF0aW9uLAorYXMgYSBzZXJpZXMgb2YgcGxhaW4gZmlsZXMsIG9mIHdoaWNoIHRoZSBmaWxlCisuQiBjb250cm9sCitpcyBtYW5kYXRvcnkgYW5kIGNvbnRhaW5zIHRoZSBjb3JlIGNvbnRyb2wgaW5mb3JtYXRpb24uIFRoZSBjb250cm9sCit0YXJiYWxsIG1heSBvcHRpb25hbGx5IGNvbnRhaW4gYW4gZW50cnkgZm9yCisuUkIgYCAuICcsCit0aGUgY3VycmVudCBkaXJlY3RvcnkuCisuUFAKK1RoZSB0aGlyZCwgbGFzdCByZXF1aXJlZCBtZW1iZXIgaXMgbmFtZWQKKy5CUiBkYXRhLnRhciAuCitJdCBjb250YWlucyB0aGUgZmlsZXN5c3RlbSBhcyBhIHRhciBhcmNoaXZlLCBlaXRoZXIKK25vdCBjb21wcmVzc2VkIChzdXBwb3J0ZWQgc2luY2UgZHBrZyAxLjEwLjI0KSwgb3IgY29tcHJlc3NlZCB3aXRoCitnemlwICh3aXRoIFxmQi5nelxmUCBleHRlbnNpb24pLAoreHogKHdpdGggXGZCLnh6XGZQIGV4dGVuc2lvbiwgc3VwcG9ydGVkIHNpbmNlIGRwa2cgMS4xNS42KSwKK2J6aXAyICh3aXRoIFxmQi5iejJcZlAgZXh0ZW5zaW9uLCBzdXBwb3J0ZWQgc2luY2UgZHBrZyAxLjEwLjI0KSBvcgorbHptYSAod2l0aCBcZkIubHptYVxmUCBleHRlbnNpb24sIHN1cHBvcnRlZCBzaW5jZSBkcGtnIDEuMTMuMjUpLgorLlBQCitUaGVzZSBtZW1iZXJzIG11c3Qgb2NjdXIgaW4gdGhpcyBleGFjdCBvcmRlci4gQ3VycmVudCBpbXBsZW1lbnRhdGlvbnMKK3Nob3VsZCBpZ25vcmUgYW55IGFkZGl0aW9uYWwgbWVtYmVycyBhZnRlcgorLkJSIGRhdGEudGFyIC4KK0Z1cnRoZXIgbWVtYmVycyBtYXkgYmUgZGVmaW5lZCBpbiB0aGUgZnV0dXJlLCBhbmQgKGlmIHBvc3NpYmxlKSB3aWxsIGJlCitwbGFjZWQgYWZ0ZXIgdGhlc2UgdGhyZWUuIEFueSBhZGRpdGlvbmFsIG1lbWJlcnMgdGhhdCBtYXkgbmVlZCB0byBiZQoraW5zZXJ0ZWQgYmVmb3JlCisuQiBkYXRhLnRhcgorYW5kIHdoaWNoIHNob3VsZCBiZSBzYWZlbHkgaWdub3JlZCBieSBvbGRlciBwcm9ncmFtcywgd2lsbCBoYXZlIG5hbWVzCitzdGFydGluZyB3aXRoIGFuIHVuZGVyc2NvcmUsCisuUkIgYCBfICcuCisuUFAKK1Rob3NlIG5ldyBtZW1iZXJzIHdoaWNoIHdvbid0IGJlIGFibGUgdG8gYmUgc2FmZWx5IGlnbm9yZWQgd2lsbCBiZQoraW5zZXJ0ZWQgYmVmb3JlCisuQiBkYXRhLnRhcgord2l0aCBuYW1lcyBzdGFydGluZyB3aXRoIHNvbWV0aGluZyBvdGhlciB0aGFuIHVuZGVyc2NvcmVzLCBvciB3aWxsCisobW9yZSBsaWtlbHkpIGNhdXNlIHRoZSBtYWpvciB2ZXJzaW9uIG51bWJlciB0byBiZSBpbmNyZWFzZWQuCisuU0ggU0VFIEFMU08KKy5CUiBkZWJcLW9sZCAoNSksCisuQlIgZHBrZ1wtZGViICgxKSwKKy5CUiBkZWJcLWNvbnRyb2wgKDUpLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vZHBrZy1hcmNoaXRlY3R1cmUuMSBiL2Rwa2ctMS4xNi4xLjEvbWFuL2Rwa2ctYXJjaGl0ZWN0dXJlLjEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYmYyNzA3OQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL2Rwa2ctYXJjaGl0ZWN0dXJlLjEKQEAgLTAsMCArMSwzMDcgQEAKKy5USCBkcGtnXC1hcmNoaXRlY3R1cmUgMSAiMjAxMS0wOC0xNCIgIkRlYmlhbiBQcm9qZWN0IiAiZHBrZyB1dGlsaXRpZXMiCisuU0ggIk5BTUUiCitkcGtnXC1hcmNoaXRlY3R1cmUgXC0gc2V0IGFuZCBkZXRlcm1pbmUgdGhlIGFyY2hpdGVjdHVyZSBmb3IgcGFja2FnZSBidWlsZGluZworLgorLlNIIFNZTk9QU0lTCisuQiBkcGtnXC1hcmNoaXRlY3R1cmUKKy5SSSBbIG9wdGlvbiAiLi4uXSBbIiBjb21tYW5kIF0KKy5QUAorLgorLlNIIERFU0NSSVBUSU9OCitkcGtnXC1hcmNoaXRlY3R1cmUgZG9lcyBwcm92aWRlIGEgZmFjaWxpdHkgdG8gZGV0ZXJtaW5lIGFuZCBzZXQgdGhlIGJ1aWxkIGFuZAoraG9zdCBhcmNoaXRlY3R1cmUgZm9yIHBhY2thZ2UgYnVpbGRpbmcuCisuUFAKK1RoZSBidWlsZCBhcmNoaXRlY3R1cmUgaXMgYWx3YXlzIGRldGVybWluZWQgYnkgYW4gZXh0ZXJuYWwgY2FsbCB0bworXGZCZHBrZ1xmUCgxKSwgYW5kIGNhbiBub3QgYmUgc2V0IGF0IHRoZSBjb21tYW5kIGxpbmUuCisuUFAKK1lvdSBjYW4gc3BlY2lmeSB0aGUgaG9zdCBhcmNoaXRlY3R1cmUgYnkgcHJvdmlkaW5nIG9uZSBvciBib3RoIG9mIHRoZSBvcHRpb25zCitcZkJcLWFcZlIgYW5kIFxmQlwtdFxmUi4gVGhlIGRlZmF1bHQgaXMgZGV0ZXJtaW5lZCBieSBhbiBleHRlcm5hbCBjYWxsIHRvCisuQlIgZ2NjICgxKSwKK29yIHRoZSBzYW1lIGFzIHRoZSBidWlsZCBhcmNoaXRlY3R1cmUgaWYgXHMtMUNDXHMwIG9yIGdjYyBhcmUgYm90aCBub3QKK2F2YWlsYWJsZS4gT25lIG91dCBvZiBcZkJcLWFcZlIgYW5kIFxmQlwtdFxmUiBpcyBzdWZmaWNpZW50LCB0aGUgdmFsdWUgb2YgdGhlCitvdGhlciB3aWxsIGJlIHNldCB0byBhIHVzYWJsZSBkZWZhdWx0LiBJbmRlZWQsIGl0IGlzIG9mdGVuIGJldHRlciB0byBvbmx5CitzcGVjaWZ5IG9uZSwgYmVjYXVzZSBcZkJkcGtnXC1hcmNoaXRlY3R1cmVcZlAgd2lsbCB3YXJuIHlvdSBpZiB5b3VyIGNob2ljZQorZG9lcyBub3QgbWF0Y2ggdGhlIGRlZmF1bHQuCisuCisuU0ggQ09NTUFORFMKKy5UUAorLkIgXC1sCitQcmludCB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGVzLCBvbmUgZWFjaCBsaW5lLCBpbiB0aGUgZm9ybWF0CitcZklWQVJJQUJMRT12YWx1ZVxmUC4gVGhpcyBpcyB0aGUgZGVmYXVsdCBhY3Rpb24uCisuVFAKKy5CSSBcLWUgZGViaWFuLWFyY2hpdGVjdHVyZQorQ2hlY2sgZm9yIGVxdWFsaXR5IG9mIGFyY2hpdGVjdHVyZS4gQnkgZGVmYXVsdCBcZklkZWJpYW4tYXJjaGl0ZWN0dXJlXGZQCitpcyBjb21wYXJlZCBhZ2FpbnN0IHRoZSBjdXJyZW50IERlYmlhbiBhcmNoaXRlY3R1cmUsIGJlaW5nIHRoZSBob3N0LgorVGhpcyBhY3Rpb24gd2lsbCBub3QgZXhwYW5kIHRoZSBhcmNoaXRlY3R1cmUgd2lsZGNhcmRzLiBDb21tYW5kIGZpbmlzaGVzCit3aXRoIGFuIGV4aXQgc3RhdHVzIG9mIDAgaWYgbWF0Y2hlZCwgMSBpZiBub3QgbWF0Y2hlZC4KKy5UUAorLkJJIFwtaSBhcmNoaXRlY3R1cmUtd2lsZGNhcmQKK0NoZWNrIGZvciBpZGVudGl0eSBvZiBhcmNoaXRlY3R1cmUgYnkgZXhwYW5kaW5nIFxmSWFyY2hpdGVjdHVyZS13aWxkY2FyZFxmUAorYXMgYW4gYXJjaGl0ZWN0dXJlIHdpbGRjYXJkIGFuZCBjb21wYXJpbmcgYWdhaW5zdCB0aGUgY3VycmVudCBEZWJpYW4KK2FyY2hpdGVjdHVyZS4gQ29tbWFuZCBmaW5pc2hlcyB3aXRoIGFuIGV4aXQgc3RhdHVzIG9mIDAgaWYgbWF0Y2hlZCwgMSBpZgorbm90IG1hdGNoZWQuCisuVFAKKy5CSSBcLXEgdmFyaWFibGUtbmFtZQorUHJpbnQgdGhlIHZhbHVlIG9mIGEgc2luZ2xlIHZhcmlhYmxlLgorLlRQCisuQiBcLXMKK1ByaW50IGFuIGV4cG9ydCBjb21tYW5kLiBUaGlzIGNhbiBiZSB1c2VkIHRvIHNldCB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGVzCit1c2luZyBldmFsLgorLlRQCisuQiBcLXUKK1ByaW50IGEgc2ltaWxhciBjb21tYW5kIHRvIFxmQlwtc1xmUCBidXQgdG8gdW5zZXQgYWxsIHZhcmlhYmxlcy4KKy5UUAorLkJJIFwtYyAiIGNvbW1hbmQiCitFeGVjdXRlIGEgXGZJY29tbWFuZFxmUCBpbiBhbiBlbnZpcm9ubWVudCB3aGljaCBoYXMgYWxsIHZhcmlhYmxlcyBzZXQgdG8KK3RoZSBkZXRlcm1pbmVkIHZhbHVlLgorLlRQCisuQiBcLUwKK1ByaW50IGEgbGlzdCBvZiB2YWxpZCBhcmNoaXRlY3R1cmUgbmFtZXMuCisuVFAKKy5CIFwtXC1oZWxwCitTaG93IHRoZSB1c2FnZSBtZXNzYWdlIGFuZCBleGl0LgorLlRQCisuQiBcLVwtdmVyc2lvbgorU2hvdyB0aGUgdmVyc2lvbiBhbmQgZXhpdC4KKy4KKy5TSCBPUFRJT05TCisuVFAKKy5CSSBcLWEgZGViaWFuLWFyY2hpdGVjdHVyZQorU2V0IHRoZSBEZWJpYW4gYXJjaGl0ZWN0dXJlLgorLlRQCisuQkkgXC10IGdudS1zeXN0ZW0tdHlwZQorU2V0IHRoZSBHTlUgc3lzdGVtIHR5cGUuCisuVFAKKy5CIFwtZgorVmFsdWVzIHNldCBieSBleGlzdGluZyBlbnZpcm9ubWVudCB2YXJpYWJsZXMgd2l0aCB0aGUgc2FtZSBuYW1lIGFzIHVzZWQgYnkKK3RoZSBzY3JpcHRzIGFyZSBob25vcmVkIChpLmUuIHVzZWQgYnkgXGZCZHBrZ1wtYXJjaGl0ZWN0dXJlXGZQKSwgZXhjZXB0IGlmCit0aGlzIGZvcmNlIGZsYWcgaXMgcHJlc2VudC4gVGhpcyBhbGxvd3MgdGhlIHVzZXIKK3RvIG92ZXJyaWRlIGEgdmFsdWUgZXZlbiB3aGVuIHRoZSBjYWxsIHRvIFxmQmRwa2dcLWFyY2hpdGVjdHVyZVxmUCBpcyBidXJpZWQKK2luIHNvbWUgb3RoZXIgc2NyaXB0IChmb3IgZXhhbXBsZSBcZkJkcGtnXC1idWlsZHBhY2thZ2VcZlAoMSkpLgorLgorLlNIIFRFUk1TCisuSVAgImJ1aWxkIG1hY2hpbmUiIDQKK1RoZSBtYWNoaW5lIHRoZSBwYWNrYWdlIGlzIGJ1aWx0IG9uLgorLklQICJob3N0IG1hY2hpbmUiIDQKK1RoZSBtYWNoaW5lIHRoZSBwYWNrYWdlIGlzIGJ1aWx0IGZvci4KKy5JUCAiRGViaWFuIGFyY2hpdGVjdHVyZSIgNAorVGhlIERlYmlhbiBhcmNoaXRlY3R1cmUgc3RyaW5nLCB3aGljaCBzcGVjaWZpZXMgdGhlIGJpbmFyeSB0cmVlIGluIHRoZQorXHMtMUZUUFxzMCBhcmNoaXZlLiBFeGFtcGxlczogaTM4Niwgc3BhcmMsIGh1cmRcLWkzODYuCisuSVAgImFyY2hpdGVjdHVyZSB3aWxkY2FyZCIgNAorQW4gYXJjaGl0ZWN0dXJlIHdpbGRjYXJkIGlzIGEgc3BlY2lhbCBhcmNoaXRlY3R1cmUgc3RyaW5nIHRoYXQgd2lsbCBtYXRjaAorYW55IHJlYWwgYXJjaGl0ZWN0dXJlIGJlaW5nIHBhcnQgb2YgaXQuIFRoZSBnZW5lcmFsIGZvcm0gaXMgPGtlcm5lbD5cLTxjcHU+LgorRXhhbXBsZXM6IGxpbnV4XC1hbnksIGFueVwtaTM4NiwgaHVyZFwtYW55LgorLklQICJccy0xR05VXHMwIHN5c3RlbSB0eXBlIiA0CitBbiBhcmNoaXRlY3R1cmUgc3BlY2lmaWNhdGlvbiBzdHJpbmcgY29uc2lzdGluZyBvZiB0d28gcGFydHMgc2VwYXJhdGVkIGJ5CithIGRhc2g6IGNwdSBhbmQgc3lzdGVtLiBFeGFtcGxlczogaTM4NlwtbGludXhcLWdudSwgc3BhcmNcLWxpbnV4XC1nbnUsCitpMzg2XC1nbnUsIHg4Nl82NFwtbmV0YnNkLgorLgorLlNIIFZBUklBQkxFUworVGhlIGZvbGxvd2luZyB2YXJpYWJsZXMgYXJlIHNldCBieSBcZkJkcGtnXC1hcmNoaXRlY3R1cmVcZlA6CisuSVAgIlxzLTFERUJfQlVJTERfQVJDSFxzMCIgNAorVGhlIERlYmlhbiBhcmNoaXRlY3R1cmUgb2YgdGhlIGJ1aWxkIG1hY2hpbmUuCisuSVAgIlxzLTFERUJfQlVJTERfQVJDSF9PU1xzMCIgNAorVGhlIERlYmlhbiBzeXN0ZW0gbmFtZSBvZiB0aGUgYnVpbGQgbWFjaGluZS4KKy5JUCAiXHMtMURFQl9CVUlMRF9BUkNIX0NQVVxzMCIgNAorVGhlIERlYmlhbiBjcHUgbmFtZSBvZiB0aGUgYnVpbGQgbWFjaGluZS4KKy5JUCAiXHMtMURFQl9CVUlMRF9BUkNIX0JJVFNcczAiIDQKK1RoZSBwb2ludGVyIHNpemUgb2YgdGhlIGJ1aWxkIG1hY2hpbmUgKGluIGJpdHMpLgorLklQICJccy0xREVCX0JVSUxEX0FSQ0hfRU5ESUFOXHMwIiA0CitUaGUgZW5kaWFubmVzcyBvZiB0aGUgYnVpbGQgbWFjaGluZSAobGl0dGxlIC8gYmlnKS4KKy5JUCAiXHMtMURFQl9CVUlMRF9HTlVfQ1BVXHMwIiA0CitUaGUgXHMtMUNQVVxzMCBwYXJ0IG9mIFxzLTFERUJfQlVJTERfR05VX1RZUEVcczAuCisuSVAgIlxzLTFERUJfQlVJTERfR05VX1NZU1RFTVxzMCIgNAorVGhlIFN5c3RlbSBwYXJ0IG9mIFxzLTFERUJfQlVJTERfR05VX1RZUEVcczAuCisuSVAgIlxzLTFERUJfQlVJTERfR05VX1RZUEVcczAiIDQKK1RoZSBccy0xR05VXHMwIHN5c3RlbSB0eXBlIG9mIHRoZSBidWlsZCBtYWNoaW5lLgorLklQICJccy0xREVCX0JVSUxEX01VTFRJQVJDSFxzMCIgNAorVGhlIGNsYXJpZmllZCBccy0xR05VXHMwIHN5c3RlbSB0eXBlIG9mIHRoZSBidWlsZCBtYWNoaW5lLCB1c2VkIGZvciBmaWxlc3lzdGVtCitwYXRocy4KKy5JUCAiXHMtMURFQl9IT1NUX0FSQ0hcczAiIDQKK1RoZSBEZWJpYW4gYXJjaGl0ZWN0dXJlIG9mIHRoZSBob3N0IG1hY2hpbmUuCisuSVAgIlxzLTFERUJfSE9TVF9BUkNIX09TXHMwIiA0CitUaGUgRGViaWFuIHN5c3RlbSBuYW1lIG9mIHRoZSBob3N0IG1hY2hpbmUuCisuSVAgIlxzLTFERUJfSE9TVF9BUkNIX0NQVVxzMCIgNAorVGhlIERlYmlhbiBjcHUgbmFtZSBvZiB0aGUgaG9zdCBtYWNoaW5lLgorLklQICJccy0xREVCX0hPU1RfQVJDSF9CSVRTXHMwIiA0CitUaGUgcG9pbnRlciBzaXplIG9mIHRoZSBob3N0IG1hY2hpbmUgKGluIGJpdHMpLgorLklQICJccy0xREVCX0hPU1RfQVJDSF9FTkRJQU5cczAiIDQKK1RoZSBlbmRpYW5uZXNzIG9mIHRoZSBob3N0IG1hY2hpbmUgKGxpdHRsZSAvIGJpZykuCisuSVAgIlxzLTFERUJfSE9TVF9HTlVfQ1BVXHMwIiA0CitUaGUgXHMtMUNQVVxzMCBwYXJ0IG9mIFxzLTFERUJfSE9TVF9HTlVfVFlQRVxzMC4KKy5JUCAiXHMtMURFQl9IT1NUX0dOVV9TWVNURU1cczAiIDQKK1RoZSBTeXN0ZW0gcGFydCBvZiBccy0xREVCX0hPU1RfR05VX1RZUEVcczAuCisuSVAgIlxzLTFERUJfSE9TVF9HTlVfVFlQRVxzMCIgNAorVGhlIFxzLTFHTlVcczAgc3lzdGVtIHR5cGUgb2YgdGhlIGhvc3QgbWFjaGluZS4KKy5JUCAiXHMtMURFQl9IT1NUX01VTFRJQVJDSFxzMCIgNAorVGhlIGNsYXJpZmllZCBccy0xR05VXHMwIHN5c3RlbSB0eXBlIG9mIHRoZSBob3N0IG1hY2hpbmUsIHVzZWQgZm9yIGZpbGVzeXN0ZW0KK3BhdGhzLgorLgorLlNIICJERUJJQU4vUlVMRVMiCitUaGUgZW52aXJvbm1lbnQgdmFyaWFibGVzIHNldCBieSBcZkJkcGtnXC1hcmNoaXRlY3R1cmVcZlAgYXJlIHBhc3NlZCB0bworXGZJZGViaWFuL3J1bGVzXGZQIGFzIG1ha2UgdmFyaWFibGVzIChzZWUgbWFrZSBkb2N1bWVudGF0aW9uKS4gSG93ZXZlciwKK3lvdSBzaG91bGQgbm90IHJlbHkgb24gdGhlbSwgYXMgdGhpcyBicmVha3MgbWFudWFsIGludm9jYXRpb24gb2YgdGhlCitzY3JpcHQuIEluc3RlYWQsIHlvdSBzaG91bGQgYWx3YXlzIGluaXRpYWxpemUgdGhlbSB1c2luZworXGZCZHBrZ1wtYXJjaGl0ZWN0dXJlXGZQIHdpdGggdGhlIFwtcSBvcHRpb24uIEhlcmUgYXJlIHNvbWUgZXhhbXBsZXMsCit3aGljaCBhbHNvIHNob3cgaG93IHlvdSBjYW4gaW1wcm92ZSB0aGUgY3Jvc3MgY29tcGlsYXRpb24gc3VwcG9ydCBpbiB5b3VyCitwYWNrYWdlOgorLlBQCisKK0luc3RlYWQgb2Y6CisuSVAKKy5uZgorQVJDSD1cYGRwa2cgXC1cLXByaW50XC1hcmNoaXRlY3R1cmVcYAorY29uZmlndXJlICQoXHMtMUFSQ0hcczApXC1saW51eAorLmZpCisuUFAKK3BsZWFzZSB1c2UgdGhlIGZvbGxvd2luZzoKKy5JUAorLm5mCitcJlxzLTFERUJfQlVJTERfR05VX1RZUEVcczAgOj0gJChzaGVsbCBkcGtnXC1hcmNoaXRlY3R1cmUgXC1xREVCX0JVSUxEX0dOVV9UWVBFKQorXCZccy0xREVCX0hPU1RfR05VX1RZUEVcczAgOj0gJChzaGVsbCBkcGtnXC1hcmNoaXRlY3R1cmUgXC1xREVCX0hPU1RfR05VX1RZUEUpCisKK2NvbmZpZ3VyZSBcLVwtYnVpbGQ9JChccy0xREVCX0JVSUxEX0dOVV9UWVBFXHMwKSBcLVwtaG9zdD0kKFxzLTFERUJfSE9TVF9HTlVfVFlQRVxzMCkKKy5maQorLlBQCisKK0luc3RlYWQgb2Y6CisuSVAKKy5uZgorQVJDSD1cYGRwa2cgXC1cLXByaW50XC1hcmNoaXRlY3R1cmVcYAoraWZlcSAoJChccy0xQVJDSFxzMCksYWxwaGEpCisgIC4uLgorZW5kaWYKKy5maQorLlBQCitwbGVhc2UgdXNlOgorLklQCisubmYKK1wmXHMtMURFQl9IT1NUX0FSQ0hcczAgOj0gJChzaGVsbCBkcGtnXC1hcmNoaXRlY3R1cmUgXC1xREVCX0hPU1RfQVJDSCkKKworaWZlcSAoJChccy0xREVCX0hPU1RfQVJDSFxzMCksYWxwaGEpCisgIC4uLgorZW5kaWYKKy5maQorLlBQCitvciBpZiB5b3Ugb25seSBuZWVkIHRvIGNoZWNrIHRoZSBDUFUgb3IgT1MgdHlwZSwgdXNlIHRoZSBERUJfSE9TVF9BUkNIX0NQVQorb3IgREVCX0hPU1RfQVJDSF9PUyB2YXJpYWJsZXMuCisuUFAKK0luIGdlbmVyYWwsIGNhbGxpbmcgZHBrZyBpbiB0aGUgcnVsZXMgZmlsZSB0byBnZXQgYXJjaGl0ZWN0dXJlIGluZm9ybWF0aW9uCitpcyBkZXByZWNhdGVkICh1bmxlc3MgeW91IHdhbnQgdG8gcHJvdmlkZSBiYWNrd2FyZCBjb21wYXRpYmlsaXR5LCBzZWUgYmVsb3cpLgorRXNwZWNpYWxseSB0aGUgXC1cLXByaW50XC1hcmNoaXRlY3R1cmUgb3B0aW9uIGlzIHVucmVsaWFibGUgc2luY2Ugd2UgaGF2ZQorRGViaWFuIGFyY2hpdGVjdHVyZXMgd2hpY2ggZG9uJ3QgZXF1YWwgYSBwcm9jZXNzb3IgbmFtZS4KKy4KKy5TSCAiQkFDS1dBUkQgQ09NUEFUSUJJTElUWSIKK1RoZSBERUJfKl9BUkNIX0JJVFMgYW5kIERFQl8qX0FSQ0hfRU5ESUFOIHZhcmlhYmxlcyB3ZXJlIGludHJvZHVjZWQKK2luIGRwa2dcLWRldiAxLjE1LjQuIFVzaW5nIHRoZW0gaW4gXGZJZGViaWFuL3J1bGVzXGZSIHRodXMgcmVxdWlyZXMgYQorYnVpbGQtZGVwZW5kZW5jeSBvbiBkcGtnXC1kZXYgKD49IDEuMTUuNCkuCisuUFAKK1RoZSBERUJfSE9TVF9BUkNIX0NQVSBhbmQgREVCX0hPU1RfQVJDSF9PUyB2YXJpYWJsZXMgd2VyZSBpbnRyb2R1Y2VkCitpbiBkcGtnXC1kZXYgMS4xMy4yLiBCZWZvcmUgdGhpcyBcZklkZWJpYW4vcnVsZXNcZlIgZmlsZXMgdGVuZGVkIHRvIGNoZWNrCit0aGUgdmFsdWVzIG9mIHRoZSBERUJfSE9TVF9HTlVfQ1BVIG9yIERFQl9IT1NUX0dOVV9UWVBFIHZhcmlhYmxlcyB3aGljaAoraGF2ZSBiZWVuIHN1YmplY3QgdG8gY2hhbmdlLgorLlBQCitXaGVyZSBcZklkZWJpYW4vcnVsZXNcZlIgZmlsZXMgY2hlY2sgdGhlc2UgdmFyaWFibGVzIHRvIGRlY2lkZSBob3cgb3Igd2hhdAordG8gY29tcGlsZSwgdGhpcyBzaG91bGQgYmUgdXBkYXRlZCB0byB1c2UgdGhlIG5ldyB2YXJpYWJsZXMgYW5kIHZhbHVlcy4KK1lvdSBtYXkgd2lzaCB0byByZXRhaW4gYmFja3dhcmRzIGNvbXBhdGliaWxpdHkgd2l0aCBvbGRlciB2ZXJzaW9uIG9mCitkcGtnXC1kZXYgYnkgdXNpbmcgdGhlIGZvbGxvd2luZyBjb2RlOgorLklQCisubmYKK0RFQl9IT1NUX0FSQ0hfQ1BVIDo9ICQoc2hlbGwgZHBrZ1wtYXJjaGl0ZWN0dXJlIFwtcURFQl9IT1NUX0FSQ0hfQ1BVIDI+L2Rldi9udWxsKQorREVCX0hPU1RfQVJDSF9PUyA6PSAkKHNoZWxsIGRwa2dcLWFyY2hpdGVjdHVyZSBcLXFERUJfSE9TVF9BUkNIX09TIDI+L2Rldi9udWxsKQorCisjIFRha2UgYWNjb3VudCBvZiBvbGQgZHBrZ1wtYXJjaGl0ZWN0dXJlIG91dHB1dC4KK2lmZXEgKCQoREVCX0hPU1RfQVJDSF9DUFUpLCkKKyAgREVCX0hPU1RfQVJDSF9DUFUgOj0gJChzaGVsbCBkcGtnXC1hcmNoaXRlY3R1cmUgXC1xREVCX0hPU1RfR05VX0NQVSkKKyAgaWZlcSAoJChERUJfSE9TVF9BUkNIX0NQVSkseDg2XzY0KQorICAgIERFQl9IT1NUX0FSQ0hfQ1BVIDo9IGFtZDY0CisgIGVuZGlmCitlbmRpZgoraWZlcSAoJChERUJfSE9TVF9BUkNIX09TKSwpCisgIERFQl9IT1NUX0FSQ0hfT1MgOj0gJChzdWJzdCBcLWdudSwsJChzaGVsbCBkcGtnXC1hcmNoaXRlY3R1cmUgXC1xREVCX0hPU1RfR05VX1NZU1RFTSkpCisgIGlmZXEgKCQoREVCX0hPU1RfQVJDSF9PUyksZ251KQorICAgIERFQl9IT1NUX0FSQ0hfT1MgOj0gaHVyZAorICBlbmRpZgorZW5kaWYKKy5maQorLlBQCitBbmQgc2ltaWxhcmx5IGZvciBERUJfQlVJTERfQVJDSF9DUFUgYW5kIERFQl9CVUlMRF9BUkNIX09TLgorLlBQCitJZiB5b3Ugc3RpbGwgd2lzaCB0byBzdXBwb3J0IHZlcnNpb25zIG9mIGRwa2dcLWRldiB0aGF0IGRpZCBub3QgaW5jbHVkZQorXGZCZHBrZ1wtYXJjaGl0ZWN0dXJlXGZSLCB0aGUgZm9sbG93aW5nIGRvZXMgdGhlIGpvYjoKKy5JUAorLm5mCitcJlxzLTFERUJfQlVJTERfQVJDSFxzMCA6PSAkKHNoZWxsIGRwa2cgXC1cLXByaW50XC1hcmNoaXRlY3R1cmUpCitcJlxzLTFERUJfQlVJTERfR05VX0NQVVxzMCA6PSAkKHBhdHN1YnN0IGh1cmRcLSUsJSwkKFxzLTFERUJfQlVJTERfQVJDSFxzMCkpCitpZmVxICgkKGZpbHRlclwtb3V0IGh1cmRcLSUsJChccy0xREVCX0JVSUxEX0FSQ0hcczApKSwpCisgIFxzLTFERUJfQlVJTERfR05VX1NZU1RFTVxzMCA6PSBnbnUKK2Vsc2UKKyAgXHMtMURFQl9CVUlMRF9HTlVfU1lTVEVNXHMwIDo9IGxpbnV4XC1nbnUKK2VuZGlmCitERUJfQlVJTERfR05VX1RZUEU9JChccy0xREVCX0JVSUxEX0dOVV9DUFVcczApXC0kKFxzLTFERUJfQlVJTERfR05VX1NZU1RFTVxzMCkKKworXCZccy0xREVCX0hPU1RfQVJDSFxzMCA6PSAkKFxzLTFERUJfQlVJTERfQVJDSFxzMCkKK1wmXHMtMURFQl9IT1NUX0dOVV9DUFVcczAgOj0gJChccy0xREVCX0JVSUxEX0dOVV9DUFVcczApCitcJlxzLTFERUJfSE9TVF9HTlVfU1lTVEVNXHMwIDo9ICQoXHMtMURFQl9CVUlMRF9HTlVfU1lTVEVNXHMwKQorXCZccy0xREVCX0hPU1RfR05VX1RZUEVcczAgOj0gJChccy0xREVCX0JVSUxEX0dOVV9UWVBFXHMwKQorLmZpCisuUFAKK1B1dCBhIHN1YnNldCBvZiB0aGVzZSBsaW5lcyBhdCB0aGUgdG9wIG9mIHlvdXIgZGViaWFuL3J1bGVzIGZpbGU7IHRoZXNlCitkZWZhdWx0IHZhbHVlcyB3aWxsIGJlIG92ZXJ3cml0dGVuIGlmIGRwa2dcLWFyY2hpdGVjdHVyZSBpcyB1c2VkLgorLlBQCitZb3UgZG9uJ3QgbmVlZCB0aGUgZnVsbCBzZXQuIENob29zZSBhIGNvbnNpc3RlbnQgc2V0IHdoaWNoIGNvbnRhaW5zIHRoZQordmFsdWVzIHlvdSB1c2UgaW4gdGhlIHJ1bGVzIGZpbGUuIEZvciBleGFtcGxlLCBpZiB5b3Ugb25seSBuZWVkIHRoZSBob3N0CitEZWJpYW4gYXJjaGl0ZWN0dXJlLCBgREVCX0hPU1RfQVJDSD1cYGRwa2cgXC1cLXByaW50XC1hcmNoaXRlY3R1cmVcYCcKK2lzIHN1ZmZpY2llbnQgKHRoaXMgaXMgaW5kZWVkIHRoZSBEZWJpYW4gYXJjaGl0ZWN0dXJlIG9mIHRoZSBidWlsZCBtYWNoaW5lLAorYnV0IHJlbWVtYmVyIHRoYXQgd2UgYXJlIG9ubHkgdHJ5aW5nIHRvIGJlIGJhY2t3YXJkIGNvbXBhdGlibGUgd2l0aCBuYXRpdmUKK2NvbXBpbGF0aW9uKS4KKy5QUAorVGhlIFxmQlwtZVxmUCBhbmQgXGZCXC1pXGZQIG9wdGlvbnMgd2VyZSBvbmx5IGludHJvZHVjZWQgaW4gcmVsYXRpdmVseSByZWNlbnQKK3ZlcnNpb25zIG9mIFxmQmRwa2dcLWFyY2hpdGVjdHVyZVxmUiAoc2luY2UgZHBrZyAxLjEzLjEzKS4KKy4KKy5TSCBFWEFNUExFUworXGZCZHBrZ1wtYnVpbGRwYWNrYWdlXGZQIGFjY2VwdHMgdGhlIFxmQlwtYVxmUiBvcHRpb24gYW5kIHBhc3NlcyBpdCB0bworXGZCZHBrZ1wtYXJjaGl0ZWN0dXJlXGZQLiBPdGhlciBleGFtcGxlczoKKy5JUAorQ0M9aTM4NlwtZ251XC1nY2MgZHBrZ1wtYXJjaGl0ZWN0dXJlIFwtYyBkZWJpYW4vcnVsZXMgYnVpbGQKKy5JUAorZXZhbCBcYGRwa2dcLWFyY2hpdGVjdHVyZSBcLXVcYAorLlBQCitDaGVjayBpZiBhbiBhcmNoaXRlY3R1cmUgaXMgZXF1YWwgdG8gdGhlIGN1cnJlbnQgYXJjaGl0ZWN0dXJlIG9yIGEgZ2l2ZW4KK29uZToKKy5JUAorZHBrZ1wtYXJjaGl0ZWN0dXJlIFwtZWxpbnV4XC1hbHBoYQorLklQCitkcGtnXC1hcmNoaXRlY3R1cmUgXC1hbWlwcyBcLWVsaW51eFwtbWlwcworLlBQCitDaGVjayBpZiB0aGUgY3VycmVudCBhcmNoaXRlY3R1cmUgb3IgYW4gYXJjaGl0ZWN0dXJlIHByb3ZpZGVkIHdpdGggXC1hIGFyZQorTGludXggc3lzdGVtczoKKy5JUAorZHBrZ1wtYXJjaGl0ZWN0dXJlIFwtaWxpbnV4XC1hbnkKKy5JUAorZHBrZ1wtYXJjaGl0ZWN0dXJlIFwtYWkzODYgXC1pbGludXhcLWFueQorLgorLlNIIEZJTEVTCitBbGwgdGhlc2UgZmlsZXMgaGF2ZSB0byBiZSBwcmVzZW50IGZvciBcZkJkcGtnXC1hcmNoaXRlY3R1cmVcZlAgdG8KK3dvcmsuIFRoZWlyIGxvY2F0aW9uIGNhbiBiZSBvdmVycmlkZGVuIGF0IHJ1bnRpbWUgd2l0aCB0aGUgZW52aXJvbm1lbnQKK3ZhcmlhYmxlIFxmQkRQS0dfREFUQURJUlxmUC4KKy5UUAorLkkgL3Vzci9zaGFyZS9kcGtnL2NwdXRhYmxlCitUYWJsZSBvZiBrbm93biBDUFUgbmFtZXMgYW5kIG1hcHBpbmcgdG8gdGhlaXIgR05VIG5hbWUuCisuVFAKKy5JIC91c3Ivc2hhcmUvZHBrZy9vc3RhYmxlCitUYWJsZSBvZiBrbm93biBvcGVyYXRpbmcgc3lzdGVtIG5hbWVzIGFuZCBtYXBwaW5nIHRvIHRoZWlyIEdOVSBuYW1lLgorLlRQCisuSSAvdXNyL3NoYXJlL2Rwa2cvdHJpcGxldHRhYmxlCitNYXBwaW5nIGJldHdlZW4gRGViaWFuIGFyY2hpdGVjdHVyZSB0cmlwbGV0cyBhbmQgRGViaWFuIGFyY2hpdGVjdHVyZQorbmFtZXMuCisuCisuU0ggIlNFRSBBTFNPIgorLkJSIGRwa2dcLWJ1aWxkcGFja2FnZSAoMSksCisuQlIgZHBrZ1wtY3Jvc3MgKDEpLgorLgorLlNIIEFVVEhPUgorLkIgZHBrZ1wtYXJjaGl0ZWN0dXJlCithbmQgdGhpcyBtYW4gcGFnZSB3ZXJlIGluaXRpYWxseSB3cml0dGVuIGJ5CitNYXJjdXMgQnJpbmttYW5uIDxicmlua21kQGRlYmlhbi5vcmc+LgorCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9kcGtnLWJ1aWxkZmxhZ3MuMSBiL2Rwa2ctMS4xNi4xLjEvbWFuL2Rwa2ctYnVpbGRmbGFncy4xCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmJhMjk2YWYKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9kcGtnLWJ1aWxkZmxhZ3MuMQpAQCAtMCwwICsxLDI3MyBAQAorLlRIIGRwa2dcLWJ1aWxkZmxhZ3MgMSAiMjAxMS0wOS0xMyIgIkRlYmlhbiBQcm9qZWN0IiAiZHBrZyBzdWl0ZSIKKy5TSCBOQU1FCitkcGtnXC1idWlsZGZsYWdzIFwtIHJldHVybnMgYnVpbGQgZmxhZ3MgdG8gdXNlIGR1cmluZyBwYWNrYWdlIGJ1aWxkCisuCisuU0ggU1lOT1BTSVMKKy5CIGRwa2dcLWJ1aWxkZmxhZ3MKKy5SSSBbIG9wdGlvbiAiLi4uXSBbIiBjb21tYW5kIF0KKy4KKy5TSCBERVNDUklQVElPTgorXGZCZHBrZ1wtYnVpbGRmbGFnc1xmUCBpcyBhIHRvb2wgdG8gcmV0cmlldmUgY29tcGlsYXRpb24gZmxhZ3MgdG8gdXNlIGR1cmluZworYnVpbGQgb2YgRGViaWFuIHBhY2thZ2VzLgorLgorVGhlIGRlZmF1bHQgZmxhZ3MgYXJlIGRlZmluZWQgYnkgdGhlIHZlbmRvciBidXQgdGhleSBjYW4gYmUKK2V4dGVuZGVkL292ZXJyaWRlbiBpbiBzZXZlcmFsIHdheXM6CisuSVAgMS4KK3N5c3RlbS13aWRlIHdpdGggXGZCL2V0Yy9kcGtnL2J1aWxkZmxhZ3MuY29uZlxmUDsKKy5JUCAyLgorZm9yIHRoZSBjdXJyZW50IHVzZXIgd2l0aCBcZkIkWERHX0NPTkZJR19IT01FL2Rwa2cvYnVpbGRmbGFncy5jb25mXGZQCit3aGVyZSBcZkIkWERHX0NPTkZJR19IT01FXGZQIGRlZmF1bHRzIHRvIFxmQiRIT01FLy5jb25maWdcZlA7CisuSVAgMy4KK3RlbXBvcmFyaWx5IGJ5IHRoZSB1c2VyIHdpdGggZW52aXJvbm1lbnQgdmFyaWFibGVzIChzZWUgc2VjdGlvbgorXGZCRU5WSVJPTk1FTlRcZlApOworLklQIDQuCitkeW5hbWljYWxseSBieSB0aGUgcGFja2FnZSBtYWludGFpbmVyIHdpdGggZW52aXJvbm1lbnQgdmFyaWFibGVzIHNldCB2aWEKK1xmQmRlYmlhbi9ydWxlc1xmUCAoc2VlIHNlY3Rpb24gXGZCRU5WSVJPTk1FTlRcZlApLgorLlAKK1RoZSBjb25maWd1cmF0aW9uIGZpbGVzIGNhbiBjb250YWluIHR3byB0eXBlcyBvZiBkaXJlY3RpdmVzOgorLlRQCisuQkkgU0VUICIgZmxhZyB2YWx1ZSIKK092ZXJyaWRlIHRoZSBmbGFnIG5hbWVkIFxmSWZsYWdcZlAgdG8gaGF2ZSB0aGUgdmFsdWUgXGZJdmFsdWVcZlAuCisuVFAKKy5CSSBTVFJJUCAiIGZsYWcgdmFsdWUiCitTdHJpcCBmcm9tIHRoZSBmbGFnIG5hbWVkIFxmSWZsYWdcZlAgYWxsIHRoZSBidWlsZCBmbGFncyBsaXN0ZWQgaW4gXGZJdmFsdWVcZlAuCisuVFAKKy5CSSBBUFBFTkQgIiBmbGFnIHZhbHVlIgorRXh0ZW5kIHRoZSBmbGFnIG5hbWVkIFxmSWZsYWdcZlAgYnkgYXBwZW5kaW5nIHRoZSBvcHRpb25zIGdpdmVuIGluIFxmSXZhbHVlXGZQLgorQSBzcGFjZSBpcyBwcmVwZW5kZWQgdG8gdGhlIGFwcGVuZGVkIHZhbHVlIGlmIHRoZSBmbGFnJ3MgY3VycmVudCB2YWx1ZSBpcyBub24tZW1wdHkuCisuVFAKKy5CSSBQUkVQRU5EICIgZmxhZyB2YWx1ZSIKK0V4dGVuZCB0aGUgZmxhZyBuYW1lZCBcZklmbGFnXGZQIGJ5IHByZXBlbmRpbmcgdGhlIG9wdGlvbnMgZ2l2ZW4gaW4gXGZJdmFsdWVcZlAuCitBIHNwYWNlIGlzIGFwcGVuZGVkIHRvIHRoZSBwcmVwZW5kZWQgdmFsdWUgaWYgdGhlIGZsYWcncyBjdXJyZW50IHZhbHVlIGlzIG5vbi1lbXB0eS4KKy5QCitUaGUgY29uZmlndXJhdGlvbiBmaWxlcyBjYW4gY29udGFpbiBjb21tZW50cyBvbiBsaW5lcyBzdGFydGluZyB3aXRoIGEgaGFzaAorKCMpLiBFbXB0eSBsaW5lcyBhcmUgYWxzbyBpZ25vcmVkLgorLlNIIENPTU1BTkRTCisuVFAKKy5CSSBcLVwtZHVtcAorUHJpbnQgdG8gc3RhbmRhcmQgb3V0cHV0IGFsbCBjb21waWxhdGlvbiBmbGFncyBhbmQgdGhlaXIgdmFsdWVzLiBJdCBwcmludHMKK29uZSBmbGFnIHBlciBsaW5lIHNlcGFyYXRlZCBmcm9tIGl0cyB2YWx1ZSBieSBhbiBlcXVhbCBzaWduCisoIlxmSWZsYWdcZlA9XGZJdmFsdWVcZlAiKS4gVGhpcyBpcyB0aGUgZGVmYXVsdCBhY3Rpb24uCisuVFAKKy5CSSBcLVwtbGlzdAorUHJpbnQgdGhlIGxpc3Qgb2YgZmxhZ3Mgc3VwcG9ydGVkIGJ5IHRoZSBjdXJyZW50IHZlbmRvcgorKG9uZSBwZXIgbGluZSkuIFNlZSB0aGUgXGZCU1VQUE9SVEVEIEZMQUdTXGZQIHNlY3Rpb24gZm9yIG1vcmUKK2luZm9ybWF0aW9uIGFib3V0IHRoZW0uCisuVFAKKy5CSSBcLVwtZXhwb3J0PSBmb3JtYXQKK1ByaW50IHRvIHN0YW5kYXJkIG91dHB1dCBzaGVsbCAoaWYgXGZJZm9ybWF0XGZQIGlzIFxmQnNoXGZQKSBvciBtYWtlCisoaWYgXGZJZm9ybWF0XGZQIGlzIFxmQm1ha2VcZlApIGNvbW1hbmRzIHRoYXQgY2FuIGJlIHVzZWQgdG8gZXhwb3J0CithbGwgdGhlIGNvbXBpbGF0aW9uIGZsYWdzIGluIHRoZSBlbnZpcm9ubWVudC4gSWYgXGZJZm9ybWF0XGZQIGlzCitcZkJjb25maWd1cmVcZlAgdGhlbiB0aGUgb3V0cHV0IGNhbiBiZSB1c2VkIG9uIGEgXGZCLi9jb25maWd1cmVcZlAKK2NvbW1hbmQtbGluZS4gSWYgdGhlIFxmSWZvcm1hdFxmUCB2YWx1ZSBpcyBub3QKK2dpdmVuLCBcZkJzaFxmUCBpcyBhc3N1bWVkLiBPbmx5IGNvbXBpbGF0aW9uIGZsYWdzIHN0YXJ0aW5nIHdpdGggYW4KK3VwcGVyIGNhc2UgY2hhcmFjdGVyIGFyZSBpbmNsdWRlZCwgb3RoZXJzIGFyZSBhc3N1bWVkIHRvIG5vdCBiZSBzdWl0YWJsZQorZm9yIHRoZSBlbnZpcm9ubWVudC4KKy5UUAorLkJJIFwtXC1nZXQgIiBmbGFnIgorUHJpbnQgdGhlIHZhbHVlIG9mIHRoZSBmbGFnIG9uIHN0YW5kYXJkIG91dHB1dC4gRXhpdHMgd2l0aCAwCitpZiB0aGUgZmxhZyBpcyBrbm93biBvdGhlcndpc2UgZXhpdHMgd2l0aCAxLgorLlRQCisuQkkgXC1cLW9yaWdpbiAiIGZsYWciCitQcmludCB0aGUgb3JpZ2luIG9mIHRoZSB2YWx1ZSB0aGF0IGlzIHJldHVybmVkIGJ5IFxmQlwtXC1nZXRcZlAuIEV4aXRzCit3aXRoIDAgaWYgdGhlIGZsYWcgaXMga25vd24gb3RoZXJ3aXNlIGV4aXRzIHdpdGggMS4gVGhlIG9yaWdpbiBjYW4gYmUgb25lCitvZiB0aGUgZm9sbG93aW5nIHZhbHVlczoKKy5SUworLlRQCisuQiB2ZW5kb3IKK3RoZSBvcmlnaW5hbCBmbGFnIHNldCBieSB0aGUgdmVuZG9yIGlzIHJldHVybmVkOworLlRQCisuQiBzeXN0ZW0KK3RoZSBmbGFnIGlzIHNldC9tb2RpZmllZCBieSBhIHN5c3RlbS13aWRlIGNvbmZpZ3VyYXRpb247CisuVFAKKy5CIHVzZXIKK3RoZSBmbGFnIGlzIHNldC9tb2RpZmllZCBieSBhIHVzZXItc3BlY2lmaWMgY29uZmlndXJhdGlvbjsKKy5UUAorLkIgZW52Cit0aGUgZmxhZyBpcyBzZXQvbW9kaWZpZWQgYnkgYW4gZW52aXJvbm1lbnQtc3BlY2lmaWMgY29uZmlndXJhdGlvbi4KKy5SRQorLlRQCisuQiBcLVwtaGVscAorU2hvdyB0aGUgdXNhZ2UgbWVzc2FnZSBhbmQgZXhpdC4KKy5UUAorLkIgXC1cLXZlcnNpb24KK1Nob3cgdGhlIHZlcnNpb24gYW5kIGV4aXQuCisuCisuU0ggU1VQUE9SVEVEIEZMQUdTCisuVFAKKy5CIENGTEFHUworT3B0aW9ucyBmb3IgdGhlIEMgY29tcGlsZXIuIFRoZSBkZWZhdWx0IHZhbHVlIHNldCBieSB0aGUgdmVuZG9yCitpbmNsdWRlcyBcZklcLWdcZlAgYW5kIHRoZSBkZWZhdWx0IG9wdGltaXphdGlvbiBsZXZlbCAoXGZJXC1PMlxmUCB1c3VhbGx5LAorb3IgXGZJXC1PMFxmUCBpZiB0aGUgXGZCREVCX0JVSUxEX09QVElPTlNcZlAgZW52aXJvbm1lbnQgdmFyaWFibGUgZGVmaW5lcworXGZJbm9vcHRcZlApLgorLlRQCisuQiBDUFBGTEFHUworT3B0aW9ucyBmb3IgdGhlIEMgcHJlcHJvY2Vzc29yLiBEZWZhdWx0IHZhbHVlOiBlbXB0eS4KKy5UUAorLkIgQ1hYRkxBR1MKK09wdGlvbnMgZm9yIHRoZSBDKysgY29tcGlsZXIuIFNhbWUgYXMgXGZCQ0ZMQUdTXGZQLgorLlRQCisuQiBGRkxBR1MKK09wdGlvbnMgZm9yIHRoZSBGb3J0cmFuIGNvbXBpbGVyLiBTYW1lIGFzIFxmQkNGTEFHU1xmUC4KKy5UUAorLkIgTERGTEFHUworT3B0aW9ucyBwYXNzZWQgdG8gdGhlIGNvbXBpbGVyIHdoZW4gbGlua2luZyBleGVjdXRhYmxlcyBvciBzaGFyZWQKK29iamVjdHMgKGlmIHRoZSBsaW5rZXIgaXMgY2FsbGVkIGRpcmVjdGx5LCB0aGVuCisuQiBcLVdsCithbmQKKy5CICwKK2hhdmUgdG8gYmUgc3RyaXBwZWQgZnJvbSB0aGVzZSBvcHRpb25zKS4gRGVmYXVsdCB2YWx1ZTogZW1wdHkuCisuCisuU0ggRklMRVMKKy5UUAorLkIgL2V0Yy9kcGtnL2J1aWxkZmxhZ3MuY29uZgorU3lzdGVtIHdpZGUgY29uZmlndXJhdGlvbiBmaWxlLgorLlRQCisuQlIgJFhER19DT05GSUdfSE9NRS9kcGtnL2J1aWxkZmxhZ3MuY29uZiAiIG9yICIgJEhPTUUvLmNvbmZpZy9kcGtnL2J1aWxkZmxhZ3MuY29uZgorVXNlciBjb25maWd1cmF0aW9uIGZpbGUuCisuU0ggRU5WSVJPTk1FTlQKK1RoZXJlIGFyZSAyIHNldHMgb2YgZW52aXJvbm1lbnQgdmFyaWFibGVzIGRvaW5nIHRoZSBzYW1lIG9wZXJhdGlvbnMsIHRoZQorZmlyc3Qgb25lIChERUJfXGZJZmxhZ1xmUF9cZklvcFxmUCkgc2hvdWxkIG5ldmVyIGJlIHVzZWQgd2l0aGluCitcZkJkZWJpYW4vcnVsZXNcZlAuIEl0J3MgbWVhbnQgZm9yIGFueSB1c2VyIHRoYXQgd2FudHMgdG8gcmVidWlsZCB0aGUKK3NvdXJjZSBwYWNrYWdlIHdpdGggZGlmZmVyZW50IGJ1aWxkIGZsYWdzLiBUaGUgc2Vjb25kIHNldAorKERFQl9cZklmbGFnXGZQX01BSU5UX1xmSW9wXGZQKSBzaG91bGQgb25seSBiZSB1c2VkIGluIFxmQmRlYmlhbi9ydWxlc1xmUAorYnkgcGFja2FnZSBtYWludGFpbmVycyB0byBjaGFuZ2UgdGhlIHJlc3VsdGluZyBidWlsZCBmbGFncy4KKy5UUAorLkJJIERFQl8gZmxhZyBfU0VUCisuVFEKKy5CSSBERUJfIGZsYWcgX01BSU5UX1NFVAorVGhpcyB2YXJpYWJsZSBjYW4gYmUgdXNlZCB0byBmb3JjZSB0aGUgdmFsdWUgcmV0dXJuZWQgZm9yIHRoZSBnaXZlbgorXGZJZmxhZ1xmUC4KKy5UUAorLkJJIERFQl8gZmxhZyBfU1RSSVAKKy5UUQorLkJJIERFQl8gZmxhZyBfTUFJTlRfU1RSSVAKK1RoaXMgdmFyaWFibGUgY2FuIGJlIHVzZWQgdG8gcHJvdmlkZSBhIHNwYWNlIHNlcGFyYXRlZCBsaXN0IG9mIG9wdGlvbnMKK3RoYXQgd2lsbCBiZSBzdHJpcHBlZCBmcm9tIHRoZSBzZXQgb2YgZmxhZ3MgcmV0dXJuZWQgZm9yIHRoZSBnaXZlbgorXGZJZmxhZ1xmUC4KKy5UUAorLkJJIERFQl8gZmxhZyBfQVBQRU5ECisuVFEKKy5CSSBERUJfIGZsYWcgX01BSU5UX0FQUEVORAorVGhpcyB2YXJpYWJsZSBjYW4gYmUgdXNlZCB0byBhcHBlbmQgc3VwcGxlbWVudGFyeSBvcHRpb25zIHRvIHRoZSB2YWx1ZQorcmV0dXJuZWQgZm9yIHRoZSBnaXZlbiBcZklmbGFnXGZQLgorLlRQCisuQkkgREVCXyBmbGFnIF9QUkVQRU5ECisuVFEKKy5CSSBERUJfIGZsYWcgX01BSU5UX1BSRVBFTkQKK1RoaXMgdmFyaWFibGUgY2FuIGJlIHVzZWQgdG8gcHJlcGVuZCBzdXBwbGVtZW50YXJ5IG9wdGlvbnMgdG8gdGhlIHZhbHVlCityZXR1cm5lZCBmb3IgdGhlIGdpdmVuIFxmSWZsYWdcZlAuCisuVFAKKy5CIERFQl9CVUlMRF9NQUlOVF9PUFRJT05TCitUaGlzIHZhcmlhYmxlIGNhbiBiZSB1c2VkIHRvIGRpc2FibGUvZW5hYmxlIHZhcmlvdXMgaGFyZGVuaW5nIGJ1aWxkCitmbGFncyB0aHJvdWdoIHRoZSBcZkJoYXJkZW5pbmdcZlAgb3B0aW9uLiBTZWUgdGhlIFxmQkhBUkRFTklOR1xmUCBzZWN0aW9uCitmb3IgZGV0YWlscy4KKy4KKy5TSCBIQVJERU5JTkcKK1NldmVyYWwgY29tcGlsZS10aW1lIG9wdGlvbnMgKGRldGFpbGVkIGJlbG93KSBjYW4gYmUgdXNlZCB0byBoZWxwIGhhcmRlbgorYSByZXN1bHRpbmcgYmluYXJ5IGFnYWluc3QgbWVtb3J5IGNvcnJ1cHRpb24gYXR0YWNrcywgb3IgcHJvdmlkZQorYWRkaXRpb25hbCB3YXJuaW5nIG1lc3NhZ2VzIGR1cmluZyBjb21waWxhdGlvbi4gRXhjZXB0IGFzIG5vdGVkIGJlbG93LAordGhlc2UgYXJlIGVuYWJsZWQgYnkgZGVmYXVsdCBmb3IgYXJjaGl0ZWN0dXJlcyB0aGF0IHN1cHBvcnQgdGhlbS4KKy5QCitFYWNoIGhhcmRlbmluZyBmZWF0dXJlIGNhbiBiZSBlbmFibGVkIGFuZCBkaXNhYmxlZCBpbiB0aGUKK1xmQkRFQl9CVUlMRF9NQUlOVF9PUFRJT05TXGZQIGVudmlyb25tZW50IHZhcmlhYmxlJ3MgXGZCaGFyZGVuaW5nXGZQCit2YWx1ZSB3aXRoIHRoZSAiKyIgYW5kICJcLSIgbW9kaWZpZXIuIEZvciBleGFtcGxlLCB0byBlbmFibGUgdGhlCisicGllIiBmZWF0dXJlIGFuZCBkaXNhYmxlIHRoZSAiZm9ydGlmeSIgZmVhdHVyZSB5b3UgY2FuIGRvIHRoaXMKK2luIFxmQmRlYmlhbi9ydWxlc1xmUDoKKy5QCisgIGV4cG9ydCBERUJfQlVJTERfTUFJTlRfT1BUSU9OUz1oYXJkZW5pbmc9K3BpZSxcLWZvcnRpZnkKKy5QCitUaGUgc3BlY2lhbCBmZWF0dXJlIFxmQmFsbFxmUCBjYW4gYmUgdXNlZCB0byBlbmFibGUgb3IgZGlzYWJsZSBhbGwKK2hhcmRlbmluZyBmZWF0dXJlcyBhdCB0aGUgc2FtZSB0aW1lLiBUaHVzIGRpc2FibGluZyBldmVyeXRoaW5nIGFuZAorZW5hYmxpbmcgb25seSAiZm9ybWF0IiBhbmQgImZvcnRpZnkiIGNhbiBiZSBhY2hpZXZlZCB3aXRoOgorLlAKKyAgZXhwb3J0IERFQl9CVUlMRF9NQUlOVF9PUFRJT05TPWhhcmRlbmluZz1cLWFsbCwrZm9ybWF0LCtmb3J0aWZ5CisuCisuVFAKKy5CIGZvcm1hdAorVGhpcyBzZXR0aW5nIChlbmFibGVkIGJ5IGRlZmF1bHQpIGFkZHMKKy5CIFwtV2Zvcm1hdCBcLVdmb3JtYXRcLXNlY3VyaXR5IFwtV2Vycm9yPWZvcm1hdFwtc2VjdXJpdHkKK3RvIFxmQkNGTEFHU1xmUCBhbmQgXGZCQ1hYRkxBR1NcZlAuIFRoaXMgd2lsbCB3YXJuIGFib3V0IGltcHJvcGVyIGZvcm1hdAorc3RyaW5nIHVzZXMsIGFuZCB3aWxsIGZhaWwgd2hlbiBmb3JtYXQgZnVuY3Rpb25zIGFyZSB1c2VkIGluIGEgd2F5IHRoYXQKK3RoYXQgcmVwcmVzZW50IHBvc3NpYmxlIHNlY3VyaXR5IHByb2JsZW1zLiBBdCBwcmVzZW50LCB0aGlzIHdhcm5zIGFib3V0CitjYWxscyB0byBcZkJwcmludGZcZlAgYW5kIFxmQnNjYW5mXGZQIGZ1bmN0aW9ucyB3aGVyZSB0aGUgZm9ybWF0IHN0cmluZyBpcworbm90IGEgc3RyaW5nIGxpdGVyYWwgYW5kIHRoZXJlIGFyZSBubyBmb3JtYXQgYXJndW1lbnRzLCBhcyBpbgorXGZCcHJpbnRmKGZvbyk7XGZQIGluc3RlYWQgb2YgXGZQcHJpbnRmKCIlcyIsIGZvbyk7XGZQCitUaGlzIG1heSBiZSBhIHNlY3VyaXR5IGhvbGUgaWYgdGhlIGZvcm1hdCBzdHJpbmcgY2FtZSBmcm9tIHVudHJ1c3RlZAoraW5wdXQgYW5kIGNvbnRhaW5zICIlbiIuCisuCisuVFAKKy5CIGZvcnRpZnkKK1RoaXMgc2V0dGluZyAoZW5hYmxlZCBieSBkZWZhdWx0KSBhZGRzCisuQiBcLURfRk9SVElGWV9TT1VSQ0U9MgordG8gXGZCQ0ZMQUdTXGZQIGFuZCBcZkJDWFhGTEFHU1xmUC4gRHVyaW5nIGNvZGUgZ2VuZXJhdGlvbiB0aGUgY29tcGlsZXIKK2tub3dzIGEgZ3JlYXQgZGVhbCBvZiBpbmZvcm1hdGlvbiBhYm91dCBidWZmZXIgc2l6ZXMgKHdoZXJlIHBvc3NpYmxlKSwgYW5kCithdHRlbXB0cyB0byByZXBsYWNlIGluc2VjdXJlIHVubGltaXRlZCBsZW5ndGggYnVmZmVyIGZ1bmN0aW9uIGNhbGxzIHdpdGgKK2xlbmd0aC1saW1pdGVkIG9uZXMuIFRoaXMgaXMgZXNwZWNpYWxseSB1c2VmdWwgZm9yIG9sZCwgY3J1ZnR5IGNvZGUuCitBZGRpdGlvbmFsbHksIGZvcm1hdCBzdHJpbmdzIGluIHdyaXRhYmxlIG1lbW9yeSB0aGF0IGNvbnRhaW4gJyVuJyBhcmUKK2Jsb2NrZWQuIElmIGFuIGFwcGxpY2F0aW9uIGRlcGVuZHMgb24gc3VjaCBhIGZvcm1hdCBzdHJpbmcsIGl0IHdpbGwgbmVlZAordG8gYmUgd29ya2VkIGFyb3VuZC4KKworTm90ZSB0aGF0IGZvciB0aGlzIG9wdGlvbiB0byBoYXZlIGFueSBlZmZlY3QsIHRoZSBzb3VyY2UgbXVzdCBhbHNvCitiZSBjb21waWxlZCB3aXRoIFxmQlwtTzFcZlAgb3IgaGlnaGVyLgorLlRQCisuQiBzdGFja3Byb3RlY3RvcgorVGhpcyBzZXR0aW5nIChlbmFibGVkIGJ5IGRlZmF1bHQpIGFkZHMKKy5CIFwtZnN0YWNrLXByb3RlY3RvciBcLVwtcGFyYW09c3NwXC1idWZmZXJcLXNpemU9NAordG8gXGZCQ0ZMQUdTXGZQIGFuZCBcZkJDWFhGTEFHU1xmUC4gVGhpcyBhZGRzIHNhZmV0eSBjaGVja3MgYWdhaW5zdCBzdGFjaworb3ZlcndyaXRlcy4gVGhpcyByZW5kZXJzIG1hbnkgcG90ZW50aWFsIGNvZGUgaW5qZWN0aW9uIGF0dGFja3MgaW50bworYWJvcnRpbmcgc2l0dWF0aW9ucy4gSW4gdGhlIGJlc3QgY2FzZSB0aGlzIHR1cm5zIGNvZGUgaW5qZWN0aW9uCit2dWxuZXJhYmlsaXRpZXMgaW50byBkZW5pYWwgb2Ygc2VydmljZSBvciBpbnRvIG5vbi1pc3N1ZXMgKGRlcGVuZGluZyBvbgordGhlIGFwcGxpY2F0aW9uKS4KKworVGhpcyBmZWF0dXJlIHJlcXVpcmVzIGxpbmtpbmcgYWdhaW5zdCBnbGliYyAob3IgYW5vdGhlciBwcm92aWRlciBvZgorXGZCX19zdGFja19jaGtfZmFpbFxmUCksIHNvIG5lZWRzIHRvIGJlIGRpc2FibGVkIHdoZW4gYnVpbGRpbmcgd2l0aAorXGZCXC1ub3N0ZGxpYlxmUCBvciBcZkJcLWZmcmVlc3RhbmRpbmdcZlAgb3Igc2ltaWxhci4KKy4KKy5UUAorLkIgcmVscm8KK1RoaXMgc2V0dGluZyAoZW5hYmxlZCBieSBkZWZhdWx0KSBhZGRzCisuQiBcLVdsLFwteixyZWxybwordG8gXGZCTERGTEFHU1xmUC4gIER1cmluZyBwcm9ncmFtIGxvYWQsIHNldmVyYWwgRUxGIG1lbW9yeSBzZWN0aW9ucyBuZWVkCit0byBiZSB3cml0dGVuIHRvIGJ5IHRoZSBsaW5rZXIuIFRoaXMgZmxhZ3MgdGhlIGxvYWRlciB0byB0dXJuIHRoZXNlCitzZWN0aW9ucyByZWFkLW9ubHkgYmVmb3JlIHR1cm5pbmcgb3ZlciBjb250cm9sIHRvIHRoZSBwcm9ncmFtLiBNb3N0Citub3RhYmx5IHRoaXMgcHJldmVudHMgR09UIG92ZXJ3cml0ZSBhdHRhY2tzLgorLgorLlRQCisuQiBiaW5kbm93CitUaGlzIHNldHRpbmcgKGRpc2FibGVkIGJ5IGRlZmF1bHQpIGFkZHMKKy5CIFwtV2wsXC16LG5vdwordG8gXGZCTERGTEFHU1xmUC4gRHVyaW5nIHByb2dyYW0gbG9hZCwgYWxsIGR5bmFtaWMgc3ltYm9scyBhcmUgcmVzb2x2ZWQsCithbGxvd2luZyBmb3IgdGhlIGVudGlyZSBQTFQgdG8gYmUgbWFya2VkIHJlYWQtb25seSAoZHVlIHRvIFxmQnJlbHJvXGZQCithYm92ZSkuCisuCisuVFAKKy5CIHBpZQorVGhpcyBzZXR0aW5nIChkaXNhYmxlZCBieSBkZWZhdWx0KSBhZGRzIFxmQlwtZlBJRVxmUCB0byBcZkJDRkxBR1NcZlAgYW5kCitcZkJDWFhGTEFHU1xmUCwgYW5kIFxmQlwtZlBJRSBcLXBpZVxmUCB0byBcZkJMREZMQUdTXGZQLiBQb3NpdGlvbiBJbmRlcGVuZGVudAorRXhlY3V0YWJsZSBhcmUgbmVlZGVkIHRvIHRha2UgYWR2YW50YWdlIG9mIEFkZHJlc3MgU3BhY2UgTGF5b3V0CitSYW5kb21pemF0aW9uLCBzdXBwb3J0ZWQgYnkgc29tZSBrZXJuZWwgdmVyc2lvbnMuIFdoaWxlIEFTTFIgY2FuIGFscmVhZHkKK2JlIGVuZm9yY2VkIGZvciBkYXRhIGFyZWFzIGluIHRoZSBzdGFjayBhbmQgaGVhcCAoYnJrIGFuZCBtbWFwKSwgdGhlIGNvZGUKK2FyZWFzIG11c3QgYmUgY29tcGlsZWQgYXMgcG9zaXRpb24taW5kZXBlbmRlbnQuIFNoYXJlZCBsaWJyYXJpZXMgYWxyZWFkeQorZG8gdGhpcyAoXC1mUElDKSwgc28gdGhleSBnYWluIEFTTFIgYXV0b21hdGljYWxseSwgYnV0IGJpbmFyeSAudGV4dAorcmVnaW9ucyBuZWVkIHRvIGJlIGJ1aWxkIFBJRSB0byBnYWluIEFTTFIuIFdoZW4gdGhpcyBoYXBwZW5zLCBST1AgKFJldHVybgorT3JpZW50ZWQgUHJvZ3JhbW1pbmcpIGF0dGFja3MgYXJlIG11Y2ggaGFyZGVyIHNpbmNlIHRoZXJlIGFyZSBubyBzdGF0aWMKK2xvY2F0aW9ucyB0byBib3VuY2Ugb2ZmIG9mIGR1cmluZyBhIG1lbW9yeSBjb3JydXB0aW9uIGF0dGFjay4KKworVGhpcyBpcyBub3QgY29tcGF0aWJsZSB3aXRoIFxmQlwtZlBJQ1xmUCBzbyBjYXJlIG11c3QgYmUgdGFrZW4gd2hlbgorYnVpbGRpbmcgc2hhcmVkIG9iamVjdHMuCisKK0FkZGl0aW9uYWxseSwgc2luY2UgUElFIGlzIGltcGxlbWVudGVkIHZpYSBhIGdlbmVyYWwgcmVnaXN0ZXIsIHNvbWUKK2FyY2hpdGVjdHVyZXMgKG1vc3Qgbm90YWJseSBpMzg2KSBjYW4gc2VlIHBlcmZvcm1hbmNlIGxvc3NlcyBvZiB1cCB0bworMTUlIGluIHZlcnkgdGV4dC1zZWdtZW50LWhlYXZ5IGFwcGxpY2F0aW9uIHdvcmtsb2FkczsgbW9zdCB3b3JrbG9hZHMKK3NlZSBsZXNzIHRoYW4gMSUuIEFyY2hpdGVjdHVyZXMgd2l0aCBtb3JlIGdlbmVyYWwgcmVnaXN0ZXJzIChlLmcuIGFtZDY0KQorZG8gbm90IHNlZSBhcyBoaWdoIGEgd29yc3QtY2FzZSBwZW5hbHR5LgorLgorLlNIIEFVVEhPUgorQ29weXJpZ2h0IFwoY28gMjAxMC0yMDExIFJhcGhhXFs6ZV1sIEhlcnR6b2cKKy5zcAorQ29weXJpZ2h0IFwoY28gMjAxMSBLZWVzIENvb2sKKy5zcAorVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbmNlIHZlcnNpb24gMiBvcgorbGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gV0FSUkFOVFkuCisKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL2Rwa2ctYnVpbGRwYWNrYWdlLjEgYi9kcGtnLTEuMTYuMS4xL21hbi9kcGtnLWJ1aWxkcGFja2FnZS4xCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjU0MTBhMjAKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9kcGtnLWJ1aWxkcGFja2FnZS4xCkBAIC0wLDAgKzEsMjY3IEBACisuVEggZHBrZ1wtYnVpbGRwYWNrYWdlIDEgIjIwMTEtMDgtMTQiICJEZWJpYW4gUHJvamVjdCIgImRwa2cgdXRpbGl0aWVzIgorLlNIIE5BTUUKK2Rwa2dcLWJ1aWxkcGFja2FnZSBcLSBidWlsZCBiaW5hcnkgb3Igc291cmNlIHBhY2thZ2VzIGZyb20gc291cmNlcworLgorLlNIIFNZTk9QU0lTCisuQiBkcGtnXC1idWlsZHBhY2thZ2UKKy5SSSBbIG9wdGlvbiAuLi5dCisuCisuU0ggREVTQ1JJUFRJT04KKy5CIGRwa2dcLWJ1aWxkcGFja2FnZQoraXMgYSBwcm9ncmFtIHRoYXQgYXV0b21hdGVzIHRoZSBwcm9jZXNzIG9mIGJ1aWxkaW5nIGEgRGViaWFuIHBhY2thZ2UuIEl0Citjb25zaXN0cyBvZiB0aGUgZm9sbG93aW5nIHN0ZXBzOgorLklQIFxmQjEuXGZQIDMKK0l0IHByZXBhcmVzIHRoZSBidWlsZCBlbnZpcm9ubWVudCBieSBzZXR0aW5nIHZhcmlvdXMgZW52aXJvbm1lbnQKK3ZhcmlhYmxlcyAoc2VlIFxmQkVOVklST05NRU5UXGZQKSBhbmQgY2FsbHMgXGZCZHBrZ1wtc291cmNlCitcLVwtYmVmb3JlXC1idWlsZFxmUCAodW5sZXNzIFxmQlwtVFxmUCBvciBcZkJcLVwtdGFyZ2V0XGZQIGhhcyBiZWVuIHVzZWQpLgorLklQIFxmQjIuXGZQIDMKK0l0IGNoZWNrcyB0aGF0IHRoZSBidWlsZC1kZXBlbmRlbmNpZXMgYW5kIGJ1aWxkLWNvbmZsaWN0cworYXJlIHNhdGlzZmllZCAodW5sZXNzIFxmQlwtZFxmUCBpcyBzcGVjaWZpZWQpLgorLklQIFxmQjMuXGZQIDMKK0lmIGEgc3BlY2lmaWMgdGFyZ2V0IGhhcyBiZWVuIHNlbGVjdGVkIHdpdGggdGhlIFxmQlwtVFxmUCBvciBcZkJcLVwtdGFyZ2V0XGZQCitvcHRpb24sIGl0IGNhbGxzIHRoYXQgdGFyZ2V0IGFuZCBzdG9wcyBoZXJlLiBPdGhlcndpc2UgaXQgY2FsbHMKK1xmQmZha2Vyb290IGRlYmlhbi9ydWxlcyBjbGVhblxmUCB0byBjbGVhbiB0aGUgYnVpbGQtdHJlZSAodW5sZXNzCitcZkJcLW5jXGZQIGlzIHNwZWNpZmllZCkuCisuSVAgXGZCNC5cZlAgMworSXQgY2FsbHMgXGZCZHBrZ1wtc291cmNlIFwtYlxmUCB0byBnZW5lcmF0ZSB0aGUgc291cmNlIHBhY2thZ2UgKHVubGVzcworYSBiaW5hcnlcLW9ubHkgYnVpbGQgaGFzIGJlZW4gcmVxdWVzdGVkIHdpdGggXGZCXC1iXGZQLCBcZkJcLUJcZlAgb3IKK1xmQlwtQVxmUCkuCisuSVAgXGZCNS5cZlAgMworSXQgY2FsbHMgXGZCZGViaWFuL3J1bGVzXGZQIFxmQmJ1aWxkXGZQIGZvbGxvd2VkIGJ5CitcZkJmYWtlcm9vdCBkZWJpYW4vcnVsZXNcZlAgXGZJYmluYXJ5LXRhcmdldFxmUCAodW5sZXNzIGEgc291cmNlLW9ubHkKK2J1aWxkIGhhcyBiZWVuIHJlcXVlc3RlZCB3aXRoIFxmQlwtU1xmUCkuIE5vdGUgdGhhdCBcZkliaW5hcnktdGFyZ2V0XGZSIGlzCitlaXRoZXIgXGZCYmluYXJ5XGZQIChkZWZhdWx0IGNhc2UsIG9yIGlmIFxmQlwtYlxmUCBpcyBzcGVjaWZpZWQpCitvciBcZkJiaW5hcnlcLWFyY2hcZlAgKGlmIFxmQlwtQlxmUCBpcyBzcGVjaWZpZWQpIG9yIFxmQmJpbmFyeVwtaW5kZXBcZlAKKyhpZiBcZkJcLUFcZlAgaXMgc3BlY2lmaWVkKS4KKy5JUCBcZkI2LlxmUCAzCitJdCBjYWxscyBcZkJncGdcZlAgdG8gc2lnbiB0aGUgXGZCLmRzY1xmUCBmaWxlIChpZiBhbnksIHVubGVzcworXGZCXC11c1xmUCBpcyBzcGVjaWZpZWQpLgorLklQIFxmQjcuXGZQIDMKK0l0IGNhbGxzIFxmQmRwa2dcLWdlbmNoYW5nZXNcZlAgdG8gZ2VuZXJhdGUgYSBcZkIuY2hhbmdlc1xmUCBmaWxlLgorTWFueSBcZkJkcGtnXC1idWlsZHBhY2thZ2VcZlAgb3B0aW9ucyBhcmUgZm9yd2FyZGVkIHRvCitcZkJkcGtnXC1nZW5jaGFuZ2VzXGZQLgorLklQIFxmQjguXGZQIDMKK0l0IGNhbGxzIFxmQmdwZ1xmUCB0byBzaWduIHRoZSBcZkIuY2hhbmdlc1xmUCBmaWxlICh1bmxlc3MgXGZCXC11Y1xmUAoraXMgc3BlY2lmaWVkKS4KKy5JUCBcZkI5LlxmUCAzCitJZiBcZkJcLXRjXGZQIGlzIHNwZWNpZmllZCwgaXQgd2lsbCBjYWxsIFxmQmZha2Vyb290IGRlYmlhbi9ydWxlcyBjbGVhblxmUAorYWdhaW4uIEZpbmFsbHkgaXQgY2FsbHMgXGZCZHBrZ1wtc291cmNlIFwtXC1hZnRlclwtYnVpbGRcZlAuCisuCisuU0ggT1BUSU9OUworLlRQCisuQiBcLWIKK1NwZWNpZmllcyBhIGJpbmFyeS1vbmx5IGJ1aWxkLCBubyBzb3VyY2UgZmlsZXMgYXJlIHRvIGJlIGJ1aWx0IGFuZC9vcgorZGlzdHJpYnV0ZWQuIFBhc3NlZCB0byBcZkJkcGtnXC1nZW5jaGFuZ2VzXGZQLgorLlRQCisuQiBcLUIKK1NwZWNpZmllcyBhIGJpbmFyeS1vbmx5IGJ1aWxkLCBsaW1pdGVkIHRvIGFyY2hpdGVjdHVyZSBkZXBlbmRlbnQgcGFja2FnZXMuCitQYXNzZWQgdG8gXGZCZHBrZ1wtZ2VuY2hhbmdlc1xmUC4KKy5UUAorLkIgXC1BCitTcGVjaWZpZXMgYSBiaW5hcnktb25seSBidWlsZCwgbGltaXRlZCB0byBhcmNoaXRlY3R1cmUgaW5kZXBlbmRlbnQKK3BhY2thZ2VzLiBQYXNzZWQgdG8gXGZCZHBrZ1wtZ2VuY2hhbmdlc1xmUC4KKy5UUAorLkIgXC1TCitTcGVjaWZpZXMgYSBzb3VyY2Utb25seSBidWlsZCwgbm8gYmluYXJ5IHBhY2thZ2VzIG5lZWQgdG8gYmUgbWFkZS4KK1Bhc3NlZCB0byBcZkJkcGtnXC1nZW5jaGFuZ2VzXGZQLgorLlRQCisuQiBcLUYKK1NwZWNpZmllcyBhIG5vcm1hbCBmdWxsIGJ1aWxkLCBiaW5hcnkgYW5kIHNvdXJjZSBwYWNrYWdlcyB3aWxsIGJlIGJ1aWx0LgorVGhpcyBpcyB0aGUgc2FtZSBhcyB0aGUgZGVmYXVsdCBjYXNlIHdoZW4gbm8gYnVpbGQgb3B0aW9uIGlzIHNwZWNpZmllZC4KKy5QCisuQkkgXC1cLXRhcmdldD0gdGFyZ2V0CisuYnIKKy5CSSAiXC1cLXRhcmdldCAiIHRhcmdldAorLmJyCisuQkkgXC1UIHRhcmdldAorLlJTCitDYWxscyBcZkJkZWJpYW4vcnVsZXNcZlAgXGZJdGFyZ2V0XGZQIGFmdGVyIGhhdmluZyBzZXR1cCB0aGUgYnVpbGQKK2Vudmlyb25tZW50IGFuZCBzdG9wcyB0aGUgcGFja2FnZSBidWlsZCBwcm9jZXNzIGhlcmUuIElmCitcZkJcLVwtYXNcLXJvb3RcZlAgaXMgYWxzbyBnaXZlbiwgdGhlbiB0aGUgY29tbWFuZCBpcyBleGVjdXRlZAorYXMgcm9vdCAoc2VlIFxmQlwtclxmUCkuIE5vdGUgdGhhdCBvZmZpY2lhbCB0YXJnZXRzIHRoYXQgYXJlIHJlcXVpcmVkIHRvCitiZSBydW4gYXMgcm9vdCBieSB0aGUgRGViaWFuIHBvbGljeSBkbyBub3QgbmVlZCB0aGlzIG9wdGlvbi4KKy5SRQorLlRQCisuQiBcLVwtYXNcLXJvb3QKK09ubHkgbWVhbmluZ2Z1bCB0b2dldGhlciB3aXRoIFxmQlwtXC10YXJnZXRcZlAuIFJlcXVpcmVzIHRoYXQgdGhlIHRhcmdldCBiZQorcnVuIHdpdGggcm9vdCByaWdodHMuCisuUAorLkIgXC1zaQorLmJyCisuQiBcLXNhCisuYnIKKy5CIFwtc2QKKy5icgorLkJJIFwtdiB2ZXJzaW9uCisuYnIKKy5CSSBcLUMgY2hhbmdlc2Rlc2NyaXB0aW9uCisuYnIKKy5CSSBcLW0gbWFpbnRhaW5lcmFkZHJlc3MKKy5icgorLkJJIFwtZSBtYWludGFpbmVyYWRkcmVzcworLlJTCitQYXNzZWQgdW5jaGFuZ2VkIHRvIFxmQmRwa2dcLWdlbmNoYW5nZXNcZlAuIFNlZSBpdHMgbWFudWFsIHBhZ2UuCisuUkUKKy5UUAorLkJJIFwtYSBhcmNoaXRlY3R1cmUKK1NwZWNpZnkgdGhlIERlYmlhbiBhcmNoaXRlY3R1cmUgd2UgYnVpbGQgZm9yLiBUaGUgYXJjaGl0ZWN0dXJlIG9mIHRoZQorbWFjaGluZSB3ZSBidWlsZCBvbiBpcyBkZXRlcm1pbmVkIGF1dG9tYXRpY2FsbHksIGFuZCBpcyBhbHNvIHRoZSBkZWZhdWx0Citmb3IgdGhlIGhvc3QgbWFjaGluZS4KKy5UUAorLkJJIFwtdCBnbnUtc3lzdGVtLXR5cGUKK1NwZWNpZnkgdGhlIEdOVSBzeXN0ZW0gdHlwZSB3ZSBidWlsZCBmb3IuIEl0IGNhbiBiZSB1c2VkIGluIHBsYWNlCitvZiBcLWEgb3IgYXMgYSBjb21wbGVtZW50IHRvIG92ZXJyaWRlIHRoZSBkZWZhdWx0IEdOVSBzeXN0ZW0gdHlwZQorb2YgdGhlIHRhcmdldCBEZWJpYW4gYXJjaGl0ZWN0dXJlLgorLlRQCisuQkkgXC1qIGpvYnMKK051bWJlciBvZiBqb2JzIGFsbG93ZWQgdG8gYmUgcnVuIHNpbXVsdGFuZW91c2x5LCBlcXVpdmFsZW50IHRvIHRoZQorLkJSIG1ha2UgKDEpCitvcHRpb24gb2YgdGhlIHNhbWUgbmFtZS4gV2lsbCBhZGQgaXRzZWxmIHRvIHRoZSBNQUtFRkxBR1MKK2Vudmlyb25tZW50IHZhcmlhYmxlLCB3aGljaCBzaG91bGQgY2F1c2UgYWxsIHN1YnNlcXVlbnQgbWFrZQoraW52b2NhdGlvbnMgdG8gaW5oZXJpdCB0aGUgb3B0aW9uLiBBbHNvIGFkZHMgXGZCcGFyYWxsZWw9XGZQXGZJam9ic1xmUAordG8gdGhlIERFQl9CVUlMRF9PUFRJT05TIGVudmlyb25tZW50IHZhcmlhYmxlIHdoaWNoIGFsbG93cworZGViaWFuL3J1bGVzIGZpbGVzIHRvIHVzZSB0aGlzIGluZm9ybWF0aW9uIGZvciB0aGVpciBvd24gcHVycG9zZXMuCitUaGUgXGZCcGFyYWxsZWw9XGZQXGZJam9ic1xmUCBpbiBERUJfQlVJTERfT1BUSU9OUyBlbnZpcm9ubWVudCB2YXJpYWJsZQord2lsbCBvdmVycmlkZSB0aGUgXGZCXC1qXGZQIHZhbHVlIGlmIHRoaXMgb3B0aW9uIGlzIGdpdmVuLgorLlRQCisuQiBcLUQKK0NoZWNrIGJ1aWxkIGRlcGVuZGVuY2llcyBhbmQgY29uZmxpY3RzOyBhYm9ydCBpZiB1bnNhdGlzZmllZC4gVGhpcyBpcyB0aGUKK2RlZmF1bHQgYmVoYXZpb3IuCisuVFAKKy5CIFwtZAorRG8gbm90IGNoZWNrIGJ1aWxkIGRlcGVuZGVuY2llcyBhbmQgY29uZmxpY3RzLgorLlRQCisuQiBcLW5jCitEbyBub3QgY2xlYW4gdGhlIHNvdXJjZSB0cmVlIChpbXBsaWVzIFxmQlwtYlxmUCBpZiBub3RoaW5nIGVsc2UgaGFzIGJlZW4KK3NlbGVjdGVkIGFtb25nIFxmQlwtQlxmUCwgXGZCXC1BXGZQIG9yIFxmQlwtU1xmUCkuCisuVFAKKy5CIFwtdGMKK0NsZWFuIHRoZSBzb3VyY2UgdHJlZSAodXNpbmcKKy5JIGdhaW4tcm9vdC1jb21tYW5kCisuQlIgImRlYmlhbi9ydWxlcyBjbGVhbiIgKQorYWZ0ZXIgdGhlIHBhY2thZ2UgaGFzIGJlZW4gYnVpbHQuCisuVFAKKy5CSSBcLXIgZ2Fpbi1yb290LWNvbW1hbmQKK1doZW4KKy5CIGRwa2dcLWJ1aWxkcGFja2FnZQorbmVlZHMgdG8gZXhlY3V0ZSBwYXJ0IG9mIHRoZSBidWlsZCBwcm9jZXNzIGFzIHJvb3QsIGl0IHByZWZpeGVzIHRoZQorY29tbWFuZCBpdCBleGVjdXRlcyB3aXRoCisuSSBnYWluLXJvb3QtY29tbWFuZAoraWYgb25lIGhhcyBiZWVuIHNwZWNpZmllZC4gT3RoZXJ3aXNlLCBpZiBub25lIGhhcyBiZWVuIHNwZWNpZmllZCwKK1xmQmZha2Vyb290XGZQIHdpbGwgYmUgdXNlZCBieSBkZWZhdWx0LCBpZiB0aGUgY29tbWFuZCBpcyBwcmVzZW50LgorLkkgZ2Fpbi1yb290LWNvbW1hbmQKK3Nob3VsZCBzdGFydCB3aXRoIHRoZSBuYW1lIG9mIGEgcHJvZ3JhbSBvbiB0aGUKKy5CIFBBVEgKK2FuZCB3aWxsIGdldCBhcyBhcmd1bWVudHMgdGhlIG5hbWUgb2YgdGhlIHJlYWwgY29tbWFuZCB0byBydW4gYW5kIHRoZQorYXJndW1lbnRzIGl0IHNob3VsZCB0YWtlLgorLkkgZ2Fpbi1yb290LWNvbW1hbmQKK2NhbiBpbmNsdWRlIHBhcmFtZXRlcnMgKHRoZXkgbXVzdCBiZSBzcGFjZS1zZXBhcmF0ZWQpIGJ1dCBubyBzaGVsbAorbWV0YWNoYXJhY3RlcnMuCisuSSBnYWluLXJvb3QtY29tbWFuZAorbWlnaHQgdHlwaWNhbGx5IGJlCisuQlIgZmFrZXJvb3QgIiwgIiBzdWRvICIsICIgc3VwZXIgIiBvciAiIHJlYWxseSAuCisuQiBzdQoraXMgbm90IHN1aXRhYmxlLCBzaW5jZSBpdCBjYW4gb25seSBpbnZva2UgdGhlIHVzZXIncyBzaGVsbCB3aXRoCisuQiBcLWMKK2luc3RlYWQgb2YgcGFzc2luZyBhcmd1bWVudHMgaW5kaXZpZHVhbGx5IHRvIHRoZSBjb21tYW5kIHRvIGJlIHJ1bi4KKy5UUAorLkJJIFwtUiBydWxlcy1maWxlCitCdWlsZGluZyBhIERlYmlhbiBwYWNrYWdlIHVzdWFsbHkgaW52b2x2ZXMgaW52b2tpbmcKKy5CIGRlYmlhbi9ydWxlcworYXMgYSBjb21tYW5kIHdpdGggc2V2ZXJhbCBzdGFuZGFyZCBwYXJhbWV0ZXJzLiBXaXRoIHRoaXMgb3B0aW9uIGl0J3MKK3Bvc3NpYmxlIHRvIHVzZSBhbm90aGVyIHByb2dyYW0gaW52b2NhdGlvbiB0byBidWlsZCB0aGUgcGFja2FnZSAoaXQgY2FuCitpbmNsdWRlIHNwYWNlIHNlcGFyYXRlZCBwYXJhbWV0ZXJzKS4KK0FsdGVybmF0aXZlbHkgaXQgY2FuIGJlIHVzZWQgdG8gZXhlY3V0ZSB0aGUgc3RhbmRhcmQgcnVsZXMgZmlsZSB3aXRoCithbm90aGVyIG1ha2UgcHJvZ3JhbSAoZm9yIGV4YW1wbGUgYnkgdXNpbmcKKy5CIC91c3IvbG9jYWwvYmluL21ha2UgXC1mIGRlYmlhbi9ydWxlcworYXMgXGZJcnVsZXMtZmlsZVxmUikuCisuVFAKKy5CSSBcLXAgc2lnbi1jb21tYW5kCitXaGVuIFxmQmRwa2dcLWJ1aWxkcGFja2FnZVxmUCBuZWVkcyB0byBleGVjdXRlIEdQRyBvciBQR1AgdG8gc2lnbiBhIHNvdXJjZQorY29udHJvbCAoXGZCLmRzY1xmUCkgZmlsZSBvciBhIFxmQi5jaGFuZ2VzXGZQIGZpbGUgaXQgd2lsbCBydW4KK1xmSXNpZ24tY29tbWFuZFxmUCAoc2VhcmNoaW5nIHRoZSBcZkJQQVRIXGZQIGlmIG5lY2Vzc2FyeSkgaW5zdGVhZCBvZgorXGZCZ3BnXGZQLiBcZklzaWduLWNvbW1hbmRcZlAgd2lsbCBnZXQgYWxsIHRoZSBhcmd1bWVudHMgdGhhdAorXGZCcGdwXGZQIHdvdWxkIGhhdmUgZ290dGVuLiBJZiBcZklzaWduLWNvbW1hbmRcZlAKK3Rha2VzIGl0cyBhcmd1bWVudHMgaW4gR1BHIHJhdGhlciB0aGFuIFBHUCBzdHlsZSwgeW91IHNob3VsZCBnaXZlCit0aGUgXGZCXC1zZ3BnXGZQIG9wdGlvbi4gXGZJc2lnbi1jb21tYW5kXGZQCitzaG91bGQgbm90IGNvbnRhaW4gc3BhY2VzIG9yIGFueSBvdGhlciBzaGVsbCBtZXRhY2hhcmFjdGVycy4KKy5UUAorLkJJIFwtayBrZXktaWQKK1NwZWNpZnkgYSBrZXktSUQgdG8gdXNlIHdoZW4gc2lnbmluZyBwYWNrYWdlcy4KKy5UUAorLkJSIFwtdXMKK0RvIG5vdCBzaWduIHRoZSBzb3VyY2UgcGFja2FnZS4KKy5UUAorLkJSIFwtdWMKK0RvIG5vdCBzaWduIHRoZSBcZkIuY2hhbmdlc1xmUCBmaWxlLgorLlAKKy5CUiBcLWkgW1xmSXJlZ2V4cFxmUF0KKy5icgorLkJJIFwtSSBbXGZJcGF0dGVyblxmUF0KKy5icgorLkJSIFwtcyBbIG5zQWt1cktVUiBdCisuYnIKKy5CUiBcLXogIiwgIiBcLVoKKy5icgorLlJTCitQYXNzZWQgdW5jaGFuZ2VkIHRvIFxmQmRwa2dcLXNvdXJjZVxmUC4gU2VlIGl0cyBtYW51YWwgcGFnZS4KKy5SRQorLlRQCisuQkkgXC1cLXNvdXJjZVwtb3B0aW9uPSBvcHQKK1Bhc3Mgb3B0aW9uIFxmSW9wdFxmUCB0byBcZkJkcGtnXC1zb3VyY2VcZlAuCisuVFAKKy5CSSBcLVwtY2hhbmdlc1wtb3B0aW9uPSBvcHQKK1Bhc3Mgb3B0aW9uIFxmSW9wdFxmUCB0byBcZkJkcGtnXC1nZW5jaGFuZ2VzXGZQLgorLlAKKy5CSSBcLVwtYWRtaW5kaXI9IGRpcgorLmJyCisuQkkgIlwtXC1hZG1pbmRpciAiIGRpcgorLlJTCitDaGFuZ2UgdGhlIGxvY2F0aW9uIG9mIHRoZSBcZkJkcGtnXGZSIGRhdGFiYXNlLiBUaGUgZGVmYXVsdCBsb2NhdGlvbiBpcworXGZJL3Zhci9saWIvZHBrZ1xmUC4KKy5SRQorLlRQCisuQlIgXC1oICIsICIgXC1cLWhlbHAKK1Nob3cgdGhlIHVzYWdlIG1lc3NhZ2UgYW5kIGV4aXQuCisuVFAKKy5CUiBcLVwtdmVyc2lvbgorU2hvdyB0aGUgdmVyc2lvbiBhbmQgZXhpdC4KKy4KKy5TSCBFTlZJUk9OTUVOVAorRXZlbiBpZiBcZkJkcGtnXC1idWlsZHBhY2thZ2VcZlAgZXhwb3J0cyBzb21lIHZhcmlhYmxlcywgXGZCZGViaWFuL3J1bGVzXGZQCitzaG91bGQgbm90IHJlbHkgb24gdGhlaXIgcHJlc2VuY2UgYW5kIHNob3VsZCBpbnN0ZWFkIHVzZSB0aGUKK3Jlc3BlY3RpdmUgaW50ZXJmYWNlIHRvIHJldHJpZXZlIHRoZSBuZWVkZWQgdmFsdWVzLgorLlNTIFZhcmlhYmxlcyBzZXQgYnkgZHBrZ1wtYXJjaGl0ZWN0dXJlCitcZkJkcGtnXC1hcmNoaXRlY3R1cmVcZlAgaXMgY2FsbGVkIHdpdGggdGhlIFxmQlwtYVxmUCBhbmQgXGZCXC10XGZQCitwYXJhbWV0ZXJzIGZvcndhcmRlZC4gQW55IHZhcmlhYmxlIHRoYXQgaXMgb3V0cHV0IGJ5IGl0cyBcZkJcLXNcZlAKK29wdGlvbiBpcyBpbnRlZ3JhdGVkIGluIHRoZSBidWlsZCBlbnZpcm9ubWVudC4KKy5TUyBDb21waWxlciBmbGFncyBhcmUgbm8gbG9uZ2VyIGV4cG9ydGVkCitCZXR3ZWVuIHZlcnNpb25zIDEuMTQuMTcgYW5kIDEuMTYuMSwgXGZCZHBrZ1wtYnVpbGRwYWNrYWdlXGZQCitleHBvcnRlZCBjb21waWxlciBmbGFncyAoXGZCQ0ZMQUdTXGZQLCBcZkJDWFhGTEFHU1xmUCwgXGZCRkZMQUdTXGZQLAorXGZCQ1BQRkxBR1NcZlAgYW5kIFxmQkxERkxBR1NcZlApIHdpdGggdmFsdWVzIGFzIHJldHVybmVkCitieSBcZkJkcGtnXC1idWlsZGZsYWdzXGZQLiBUaGlzIGlzIG5vIGxvbmdlciB0aGUgY2FzZS4KKy4KKy5TSCBCVUdTCitJdCBzaG91bGQgYmUgcG9zc2libGUgdG8gc3BlY2lmeSBzcGFjZXMgYW5kIHNoZWxsIG1ldGFjaGFyYWN0ZXJzIGluCithbmQgaW5pdGlhbCBhcmd1bWVudHMgZm9yCisuSVIgZ2Fpbi1yb290LWNvbW1hbmQgIiBhbmQgIiBzaWduLWNvbW1hbmQgLgorLgorLlNIICJTRUUgQUxTTyIKKy5CUiBkcGtnXC1zb3VyY2UgKDEpLAorLkJSIGRwa2dcLWFyY2hpdGVjdHVyZSAoMSksCisuQlIgZHBrZ1wtYnVpbGRmbGFncyAoMSksCisuQlIgZHBrZ1wtZ2VuY2hhbmdlcyAoMSksCisuQlIgZmFrZXJvb3QgKDEpLAorLkJSIGdwZyAoMSkuCisuCisuU0ggQVVUSE9SUworQ29weXJpZ2h0IFwoY28gMTk5NS0xOTk2IElhbiBKYWNrc29uCisuYnIKK0NvcHlyaWdodCBcKGNvIDIwMDAgV2ljaGVydCBBa2tlcm1hbgorLmJyCitDb3B5cmlnaHQgXChjbyAyMDA3IEZyYW5rIExpY2h0ZW5oZWxkCisuYnIKK0NvcHlyaWdodCBcKGNvIDIwMDgtMjAxMCBSYXBoYVxbOmVdbCBIZXJ0em9nCisuc3AKK1RoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSB2ZXJzaW9uIDIgb3IgbGF0ZXIKK2ZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIFdBUlJBTlRZLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vZHBrZy1jaGVja2J1aWxkZGVwcy4xIGIvZHBrZy0xLjE2LjEuMS9tYW4vZHBrZy1jaGVja2J1aWxkZGVwcy4xCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjgwN2JmNDAKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9kcGtnLWNoZWNrYnVpbGRkZXBzLjEKQEAgLTAsMCArMSw0NCBAQAorLlRIIGRwa2dcLWNoZWNrYnVpbGRkZXBzIDEgIjIwMTEtMDctMDQiICJEZWJpYW4gUHJvamVjdCIgImRwa2cgdXRpbGl0aWVzIgorLlNIIE5BTUUKK2Rwa2dcLWNoZWNrYnVpbGRkZXBzIFwtIGNoZWNrIGJ1aWxkIGRlcGVuZGVuY2llcyBhbmQgY29uZmxpY3RzCisuCisuU0ggU1lOT1BTSVMKKy5CIGRwa2dcLWNoZWNrYnVpbGRkZXBzCisuUkkgWyBvcHRpb24gLi4uXQorLlJJIFsgY29udHJvbC1maWxlIF0KKy4KKy5TSCBERVNDUklQVElPTgorVGhpcyBwcm9ncmFtIGNoZWNrcyB0aGUgaW5zdGFsbGVkIHBhY2thZ2VzIGluIHRoZSBzeXN0ZW0gYWdhaW5zdCB0aGUgYnVpbGQKK2RlcGVuZGVuY2llcyBhbmQgYnVpbGQgY29uZmxpY3RzIGxpc3RlZCBpbiB0aGUgY29udHJvbCBmaWxlLiBJZiBhbnkgYXJlCitub3QgbWV0LCBpdCBkaXNwbGF5cyB0aGVtIGFuZCBleGl0cyB3aXRoIGEgbm9uemVybyByZXR1cm4gY29kZS4KKy5QCitCeSBkZWZhdWx0LCBcZkJkZWJpYW4vY29udHJvbFxmUiBpcyByZWFkLCBidXQgYW4gYWx0ZXJuYXRlIGNvbnRyb2wgZmlsZW5hbWUKK21heSBiZSBzcGVjaWZpZWQgb24gdGhlIGNvbW1hbmQgbGluZS4KKy4KKy5TSCBPUFRJT05TCisuVFAKKy5CSSBcLVwtYWRtaW5kaXI9IGRpcgorQ2hhbmdlIHRoZSBsb2NhdGlvbiBvZiB0aGUgXGZCZHBrZ1xmUiBkYXRhYmFzZS4gVGhlIGRlZmF1bHQgbG9jYXRpb24gaXMKK1xmSS92YXIvbGliL2Rwa2dcZlAuCisuVFAKKy5CIFwtQgorSWdub3JlIFxmSUJ1aWxkXC1EZXBlbmRzXC1JbmRlcFxmUiBsaW5lcy4gVXNlIHdoZW4gbm8gYXJjaC1pbmRlcCBwYWNrYWdlcyB3aWxsCitiZSBidWlsdC4KKy5UUAorLkJJICJcLWQgIiBidWlsZC1kZXBlbmRzLXN0cmluZworLlRQCisuQkkgIlwtYyAiIGJ1aWxkLWNvbmZsaWN0cy1zdHJpbmcKK1VzZSB0aGUgZ2l2ZW4gYnVpbGQgZGVwZW5kZW5jaWVzL2NvbmZsaWN0cyBpbnN0ZWFkIG9mIHRob3NlIGNvbnRhaW5lZCBpbiB0aGUKK1xmSWRlYmlhbi9jb250cm9sXGZQIGZpbGUuCisuVFAKKy5CUiBcLWggIiwgIiBcLVwtaGVscAorU2hvdyB0aGUgdXNhZ2UgbWVzc2FnZSBhbmQgZXhpdC4KKy5UUAorLkJSIFwtXC12ZXJzaW9uCitTaG93IHRoZSB2ZXJzaW9uIGFuZCBleGl0LgorLgorLlNIIEFVVEhPUgorQ29weXJpZ2h0IFwoY28gMjAwMSBKb2V5IEhlc3MKKy5zcAorVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbmNlIHZlcnNpb24gMiBvcgorbGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gV0FSUkFOVFkuCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9kcGtnLWRlYi4xIGIvZHBrZy0xLjE2LjEuMS9tYW4vZHBrZy1kZWIuMQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yNmI2ODRjCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vZHBrZy1kZWIuMQpAQCAtMCwwICsxLDI2OSBAQAorLlRIIGRwa2dcLWRlYiAxICIyMDExLTA4LTE0IiAiRGViaWFuIFByb2plY3QiICJkcGtnIHN1aXRlIgorLlNIIE5BTUUKK2Rwa2dcLWRlYiBcLSBEZWJpYW4gcGFja2FnZSBhcmNoaXZlICguZGViKSBtYW5pcHVsYXRpb24gdG9vbAorLgorLlNIIFNZTk9QU0lTCisuQiBkcGtnXC1kZWIKKy5SSSBbIG9wdGlvbiAiLi4uXSAiIGNvbW1hbmQKKy4KKy5TSCBERVNDUklQVElPTgorLkIgZHBrZ1wtZGViCitwYWNrcywgdW5wYWNrcyBhbmQgcHJvdmlkZXMgaW5mb3JtYXRpb24gYWJvdXQgRGViaWFuIGFyY2hpdmVzLgorLlBQCitVc2UKKy5CIGRwa2cKK3RvIGluc3RhbGwgYW5kIHJlbW92ZSBwYWNrYWdlcyBmcm9tIHlvdXIgc3lzdGVtLgorLlBQCitZb3UgY2FuIGFsc28gaW52b2tlCisuQiBkcGtnXC1kZWIKK2J5IGNhbGxpbmcKKy5CIGRwa2cKK3dpdGggd2hhdGV2ZXIgb3B0aW9ucyB5b3Ugd2FudCB0byBwYXNzIHRvCisuQlIgZHBrZ1wtZGViICIuICIgZHBrZword2lsbCBzcG90IHRoYXQgeW91IHdhbnRlZAorLkIgZHBrZ1wtZGViCithbmQgcnVuIGl0IGZvciB5b3UuCisuCisuU0ggQ09NTUFORFMKKy5UUAorLkJSIFwtYiAiLCAiIFwtXC1idWlsZCAiIFxmSWRpcmVjdG9yeVxmUCBbXGZJYXJjaGl2ZVxmUHxcZklkaXJlY3RvcnlcZlBdIgorQ3JlYXRlcyBhIGRlYmlhbiBhcmNoaXZlIGZyb20gdGhlIGZpbGVzeXN0ZW0gdHJlZSBzdG9yZWQgaW4KKy5JUiBkaXJlY3RvcnkgIi4gIiBkaXJlY3RvcnkKK211c3QgaGF2ZSBhCisuQiBERUJJQU4KK3N1YmRpcmVjdG9yeSwgd2hpY2ggY29udGFpbnMgdGhlIGNvbnRyb2wgaW5mb3JtYXRpb24gZmlsZXMgc3VjaAorYXMgdGhlIGNvbnRyb2wgZmlsZSBpdHNlbGYuIFRoaXMgZGlyZWN0b3J5IHdpbGwKKy5JIG5vdAorYXBwZWFyIGluIHRoZSBiaW5hcnkgcGFja2FnZSdzIGZpbGVzeXN0ZW0gYXJjaGl2ZSwgYnV0IGluc3RlYWQKK3RoZSBmaWxlcyBpbiBpdCB3aWxsIGJlIHB1dCBpbiB0aGUgYmluYXJ5IHBhY2thZ2UncyBjb250cm9sCitpbmZvcm1hdGlvbiBhcmVhLgorCitVbmxlc3MgeW91IHNwZWNpZnkKKy5CUiBcLVwtbm9jaGVjayAiLCAiIGRwa2dcLWRlYiAiCit3aWxsIHJlYWQKKy5CIERFQklBTi9jb250cm9sCithbmQgcGFyc2UgaXQuIEl0IHdpbGwgY2hlY2sgaXQgZm9yIHN5bnRheCBlcnJvcnMgYW5kIG90aGVyIHByb2JsZW1zLAorYW5kIGRpc3BsYXkgdGhlIG5hbWUgb2YgdGhlIGJpbmFyeSBwYWNrYWdlIGJlaW5nIGJ1aWx0LgorLkIgZHBrZ1wtZGViCit3aWxsIGFsc28gY2hlY2sgdGhlIHBlcm1pc3Npb25zIG9mIHRoZSBtYWludGFpbmVyIHNjcmlwdHMgYW5kIG90aGVyCitmaWxlcyBmb3VuZCBpbiB0aGUKKy5CIERFQklBTgorY29udHJvbCBpbmZvcm1hdGlvbiBkaXJlY3RvcnkuCisKK0lmIG5vCisuSSBhcmNoaXZlCitpcyBzcGVjaWZpZWQgdGhlbgorLkIgZHBrZ1wtZGViCit3aWxsIHdyaXRlIHRoZSBwYWNrYWdlIGludG8gdGhlIGZpbGUKKy5JUiBkaXJlY3RvcnkgXGZCLmRlYlxmUi4KKworSWYgdGhlIGFyY2hpdmUgdG8gYmUgY3JlYXRlZCBhbHJlYWR5IGV4aXN0cyBpdCB3aWxsIGJlIG92ZXJ3cml0dGVuLgorCitJZiB0aGUgc2Vjb25kIGFyZ3VtZW50IGlzIGEgZGlyZWN0b3J5IHRoZW4KKy5CIGRwa2dcLWRlYgord2lsbCB3cml0ZSB0byB0aGUgZmlsZQorLklCIHBhY2thZ2UgXyB2ZXJzaW9uIF8gYXJjaCAuZGViXGZSLAorb3IKKy5JQiBwYWNrYWdlIF8gdmVyc2lvbiAuZGViCitpZiBubworLkIgQXJjaGl0ZWN0dXJlCitmaWVsZCBpcyBwcmVzZW50IGluIHRoZSBwYWNrYWdlIGNvbnRyb2wgZmlsZS4gV2hlbiBhIHRhcmdldCBkaXJlY3RvcnkKK2lzIHNwZWNpZmllZCwgcmF0aGVyIHRoYW4gYSBmaWxlLCB0aGUKKy5CIFwtXC1ub2NoZWNrCitvcHRpb24gbWF5IG5vdCBiZSB1c2VkIChzaW5jZQorLkIgZHBrZ1wtZGViCituZWVkcyB0byByZWFkIGFuZCBwYXJzZSB0aGUgcGFja2FnZSBjb250cm9sIGZpbGUgdG8gZGV0ZXJtaW5lIHdoaWNoCitmaWxlbmFtZSB0byB1c2UpLgorLlRQCisuQlIgXC1JICIsICIgXC1cLWluZm8gIiBcZklhcmNoaXZlXGZQIFtcZkljb250cm9sLWZpbGUtbmFtZVxmUC4uLl0iCitQcm92aWRlcyBpbmZvcm1hdGlvbiBhYm91dCBhIGJpbmFyeSBwYWNrYWdlIGFyY2hpdmUuCisKK0lmIG5vCisuSVIgY29udHJvbC1maWxlLW5hbWUgcworYXJlIHNwZWNpZmllZCB0aGVuIGl0IHdpbGwgcHJpbnQgYSBzdW1tYXJ5IG9mIHRoZSBjb250ZW50cyBvZiB0aGUKK3BhY2thZ2UgYXMgd2VsbCBhcyBpdHMgY29udHJvbCBmaWxlLgorCitJZiBhbnkKKy5JUiBjb250cm9sLWZpbGUtbmFtZSBzCithcmUgc3BlY2lmaWVkIHRoZW4KKy5CIGRwa2dcLWRlYgord2lsbCBwcmludCB0aGVtIGluIHRoZSBvcmRlciB0aGV5IHdlcmUgc3BlY2lmaWVkOyBpZiBhbnkgb2YgdGhlCitjb21wb25lbnRzIHdlcmVuJ3QgcHJlc2VudCBpdCB3aWxsIHByaW50IGFuIGVycm9yIG1lc3NhZ2UgdG8gc3RkZXJyCithYm91dCBlYWNoIG9uZSBhbmQgZXhpdCB3aXRoIHN0YXR1cyAyLgorLlRQCisuQlIgXC1XICIsICIgXC1cLXNob3cgIiBcZklhcmNoaXZlXGZQIgorUHJvdmlkZXMgaW5mb3JtYXRpb24gYWJvdXQgYSBiaW5hcnkgcGFja2FnZSBhcmNoaXZlIGluIHRoZSBmb3JtYXQKK3NwZWNpZmllZCBieSB0aGUKKy5CIFwtXC1zaG93Zm9ybWF0Cithcmd1bWVudC4gVGhlIGRlZmF1bHQgZm9ybWF0IGRpc3BsYXlzIHRoZSBwYWNrYWdlJ3MgbmFtZSBhbmQgdmVyc2lvbgorb24gb25lIGxpbmUsIHNlcGFyYXRlZCBieSBhIHRhYnVsYXRvci4KKy5UUAorLkJSIFwtZiAiLCAiIFwtXC1maWVsZCAiIFxmSWFyY2hpdmVcZlAgW1xmSWNvbnRyb2wtZmllbGQtbmFtZVxmUC4uLl0iCitFeHRyYWN0cyBjb250cm9sIGZpbGUgaW5mb3JtYXRpb24gZnJvbSBhIGJpbmFyeSBwYWNrYWdlIGFyY2hpdmUuCisKK0lmIG5vCisuQlIgY29udHJvbFwtZmlsZVwtZmllbGQgcworYXJlIHNwZWNpZmllZCB0aGVuIGl0IHdpbGwgcHJpbnQgdGhlIHdob2xlIGNvbnRyb2wgZmlsZS4KKworSWYgYW55IGFyZSBzcGVjaWZpZWQgdGhlbgorLkIgZHBrZ1wtZGViCit3aWxsIHByaW50IHRoZWlyIGNvbnRlbnRzLCBpbiB0aGUgb3JkZXIgaW4gd2hpY2ggdGhleSBhcHBlYXIgaW4gdGhlCitjb250cm9sIGZpbGUuIElmIG1vcmUgdGhhbiBvbmUKKy5CUiBjb250cm9sXC1maWxlXC1maWVsZAoraXMgc3BlY2lmaWVkIHRoZW4KKy5CIGRwa2dcLWRlYgord2lsbCBwcmVjZWRlIGVhY2ggd2l0aCBpdHMgZmllbGQgbmFtZSAoYW5kIGEgY29sb24gYW5kIHNwYWNlKS4KKworTm8gZXJyb3JzIGFyZSByZXBvcnRlZCBmb3IgZmllbGRzIHJlcXVlc3RlZCBidXQgbm90IGZvdW5kLgorLlRQCisuQlIgXC1jICIsICIgXC1cLWNvbnRlbnRzICIgXGZJYXJjaGl2ZVxmUCIKK0xpc3RzIHRoZSBjb250ZW50cyBvZiB0aGUgZmlsZXN5c3RlbSB0cmVlIGFyY2hpdmUgcG9ydGlvbiBvZiB0aGUKK3BhY2thZ2UgYXJjaGl2ZS4gSXQgaXMgY3VycmVudGx5IHByb2R1Y2VkIGluIHRoZSBmb3JtYXQgZ2VuZXJhdGVkIGJ5CisuQlIgdGFyICdzCit2ZXJib3NlIGxpc3RpbmcuCisuVFAKKy5CUiBcLXggIiwgIiBcLVwtZXh0cmFjdCAiIFxmSWFyY2hpdmUgZGlyZWN0b3J5XGZQIgorRXh0cmFjdHMgdGhlIGZpbGVzeXN0ZW0gdHJlZSBmcm9tIGEgcGFja2FnZSBhcmNoaXZlIGludG8gdGhlIHNwZWNpZmllZAorZGlyZWN0b3J5LgorCitOb3RlIHRoYXQgZXh0cmFjdGluZyBhIHBhY2thZ2UgdG8gdGhlIHJvb3QgZGlyZWN0b3J5IHdpbGwKKy5JIG5vdAorcmVzdWx0IGluIGEgY29ycmVjdCBpbnN0YWxsYXRpb24hIFVzZQorLkIgZHBrZwordG8gaW5zdGFsbCBwYWNrYWdlcy4KKworLkkgZGlyZWN0b3J5CisoYnV0IG5vdCBpdHMgcGFyZW50cykgd2lsbCBiZSBjcmVhdGVkIGlmIG5lY2Vzc2FyeSwgYW5kIGl0cyBwZXJtaXNzaW9ucworbW9kaWZpZWQgdG8gbWF0Y2ggdGhlIGNvbnRlbnRzIG9mIHRoZSBwYWNrYWdlLgorLlRQCisuQlIgXC1YICIsICIgXC1cLXZleHRyYWN0ICIgXGZJYXJjaGl2ZSBkaXJlY3RvcnlcZlAiCitJcyBsaWtlCisuQlIgXC1cLWV4dHJhY3QgIiAoIiBcLXggIikiCit3aXRoCisuQlIgXC1cLXZlcmJvc2UgIiAoIiBcLXYgIikiCit3aGljaCBwcmludHMgYSBsaXN0aW5nIG9mIHRoZSBmaWxlcyBleHRyYWN0ZWQgYXMgaXQgZ29lcy4KKy5UUAorLkJSIFwtUiAiLCAiIFwtXC1yYXdcLWV4dHJhY3QgIiBcZklhcmNoaXZlIGRpcmVjdG9yeVxmUCIKK0V4dHJhY3RzIHRoZSBmaWxlc3lzdGVtIHRyZWUgZnJvbSBhIHBhY2thZ2UgYXJjaGl2ZSBpbnRvIGEgc3BlY2lmaWVkCitkaXJlY3RvcnksIGFuZCB0aGUgY29udHJvbCBpbmZvcm1hdGlvbiBmaWxlcyBpbnRvIGEgREVCSUFOIHN1YmRpcmVjdG9yeQorb2YgdGhlIHNwZWNpZmllZCBkaXJlY3RvcnkuCisKK1RoZSB0YXJnZXQgZGlyZWN0b3J5IChidXQgbm90IGl0cyBwYXJlbnRzKSB3aWxsIGJlIGNyZWF0ZWQgaWYgbmVjZXNzYXJ5LgorLlRQCisuQlIgXC1cLWZzeXNcLXRhcmZpbGUgIiBcZklhcmNoaXZlXGZQIgorRXh0cmFjdHMgdGhlIGZpbGVzeXN0ZW0gdHJlZSBkYXRhIGZyb20gYSBiaW5hcnkgcGFja2FnZSBhbmQgc2VuZHMgaXQKK3RvIHN0YW5kYXJkIG91dHB1dCBpbgorLkIgdGFyCitmb3JtYXQuIFRvZ2V0aGVyIHdpdGgKKy5CUiB0YXIgKDEpCit0aGlzIGNhbiBiZSB1c2VkIHRvIGV4dHJhY3QgYSBwYXJ0aWN1bGFyIGZpbGUgZnJvbSBhIHBhY2thZ2UgYXJjaGl2ZS4KK1RoZSBpbnB1dCBhcmNoaXZlIHdpbGwgYWx3YXlzIGJlIHByb2Nlc3NlZCBzZXF1ZW50aWFsbHkuCisuVFAKKy5CUiBcLWUgIiwgIiBcLVwtY29udHJvbCAiIFxmSWFyY2hpdmVcZlAgW1xmSWRpcmVjdG9yeVxmUF0iCitFeHRyYWN0cyB0aGUgY29udHJvbCBpbmZvcm1hdGlvbiBmaWxlcyBmcm9tIGEgcGFja2FnZSBhcmNoaXZlIGludG8gdGhlCitzcGVjaWZpZWQgZGlyZWN0b3J5LgorCitJZiBubyBkaXJlY3RvcnkgaXMgc3BlY2lmaWVkIHRoZW4gYSBzdWJkaXJlY3RvcnkKKy5CIERFQklBTgoraW4gdGhlIGN1cnJlbnQgZGlyZWN0b3J5IGlzIHVzZWQuCisKK1RoZSB0YXJnZXQgZGlyZWN0b3J5IChidXQgbm90IGl0cyBwYXJlbnRzKSB3aWxsIGJlIGNyZWF0ZWQgaWYKK25lY2Vzc2FyeS4KKy5UUAorLkJSIFwtaCAiLCAiIFwtXC1oZWxwCitTaG93IHRoZSB1c2FnZSBtZXNzYWdlIGFuZCBleGl0LgorLlRQCisuQlIgXC1cLXZlcnNpb24KK1Nob3cgdGhlIHZlcnNpb24gYW5kIGV4aXQuCisuCisuU0ggT1BUSU9OUworLlRQCitcZkJcLVwtc2hvd2Zvcm1hdD1cZlBcZklmb3JtYXRcZlIKK1RoaXMgb3B0aW9uIGlzIHVzZWQgdG8gc3BlY2lmeSB0aGUgZm9ybWF0IG9mIHRoZSBvdXRwdXQgXGZCXC1cLXNob3dcZlAKK3dpbGwgcHJvZHVjZS4gVGhlIGZvcm1hdCBpcyBhIHN0cmluZyB0aGF0IHdpbGwgYmUgb3V0cHV0IGZvciBlYWNoIHBhY2thZ2UKK2xpc3RlZC4KKworVGhlIHN0cmluZyBtYXkgcmVmZXJlbmNlIGFueSBzdGF0dXMgZmllbGQgdXNpbmcgdGhlCisiJHtcZklmaWVsZC1uYW1lXGZSfSIgZm9ybSwgYSBsaXN0IG9mIHRoZSB2YWxpZCBmaWVsZHMgY2FuIGJlIGVhc2lseQorcHJvZHVjZWQgdXNpbmcKKy5CIFwtSQorb24gdGhlIHNhbWUgcGFja2FnZS4gQSBjb21wbGV0ZSBleHBsYW5hdGlvbiBvZiB0aGUgZm9ybWF0dGluZyBvcHRpb25zCisoaW5jbHVkaW5nIGVzY2FwZSBzZXF1ZW5jZXMgYW5kIGZpZWxkIHRhYmJpbmcpIGNhbiBiZSBmb3VuZCBpbiB0aGUKK2V4cGxhbmF0aW9uIG9mIHRoZSBcZkJcLVwtc2hvd2Zvcm1hdFxmUCBvcHRpb24gaW4KKy5CUiBkcGtnXC1xdWVyeSAoMSkuCisKK1RoZSBkZWZhdWx0IGZvciB0aGlzIGZpZWxkIGlzICIke1BhY2thZ2V9XFx0JHtWZXJzaW9ufVxcbiIuCisuVFAKKy5CSSBcLXogY29tcHJlc3MtbGV2ZWwKK1NwZWNpZnkgd2hpY2ggY29tcHJlc3Npb24gbGV2ZWwgdG8gdXNlIG9uIHRoZSBjb21wcmVzc29yIGJhY2tlbmQsIHdoZW4KK2J1aWxkaW5nIGEgcGFja2FnZSAoZGVmYXVsdCBpcyA5IGZvciBnemlwIGFuZCBiemlwMiwgNiBmb3IgeHogYW5kIGx6bWEpLgorLlRQCisuQkkgXC1aIGNvbXByZXNzLXR5cGUKK1NwZWNpZnkgd2hpY2ggY29tcHJlc3Npb24gdHlwZSB0byB1c2Ugd2hlbiBidWlsZGluZyBhIHBhY2thZ2UuIEFsbG93ZWQKK3ZhbHVlcyBhcmUgXGZJZ3ppcFxmUCwgXGZJeHpcZlAsIFxmSWJ6aXAyXGZQLCBcZklsem1hXGZQLCBhbmQgXGZJbm9uZVxmUAorKGRlZmF1bHQgaXMgXGZJZ3ppcFxmUCkuCisuVFAKKy5CUiBcLVwtbmV3CitFbnN1cmVzIHRoYXQKKy5CIGRwa2dcLWRlYgorYnVpbGRzIGEgYG5ldycgZm9ybWF0IGFyY2hpdmUuIFRoaXMgaXMgdGhlIGRlZmF1bHQuCisuVFAKKy5CUiBcLVwtb2xkCitGb3JjZXMKKy5CIGRwa2dcLWRlYgordG8gYnVpbGQgYW4gYG9sZCcgZm9ybWF0IGFyY2hpdmUuIFRoaXMgb2xkIGFyY2hpdmUgZm9ybWF0IGlzIGxlc3MKK2Vhc2lseSBwYXJzZWQgYnkgbm9uLURlYmlhbiB0b29scyBhbmQgaXMgbm93IG9ic29sZXRlOyBpdHMgb25seSB1c2UgaXMKK3doZW4gYnVpbGRpbmcgcGFja2FnZXMgdG8gYmUgcGFyc2VkIGJ5IHZlcnNpb25zIG9mIGRwa2cgb2xkZXIgdGhhbgorMC45My43NiAoU2VwdGVtYmVyIDE5OTUpLCB3aGljaCB3YXMgcmVsZWFzZWQgYXMgaTM4NiBhLm91dCBvbmx5LgorLlRQCisuQlIgXC1cLW5vY2hlY2sKK0luaGliaXRzCisuQlIgImRwa2dcLWRlYiBcLVwtYnVpbGQiICdzCit1c3VhbCBjaGVja3Mgb24gdGhlIHByb3Bvc2VkIGNvbnRlbnRzIG9mIGFuIGFyY2hpdmUuIFlvdSBjYW4gYnVpbGQKK2FueSBhcmNoaXZlIHlvdSB3YW50LCBubyBtYXR0ZXIgaG93IGJyb2tlbiwgdGhpcyB3YXkuCisuVFAKKy5CUiBcLXYgIiwgIiBcLVwtdmVyYm9zZQorRW5hYmxlcyB2ZXJib3NlIG91dHB1dC4gVGhpcyBjdXJyZW50bHkgb25seSBhZmZlY3RzIFxmQlwtXC1leHRyYWN0XGZQIG1ha2luZworaXQgYmVoYXZlIGxpa2UgXGZCXC1cLXZleHRyYWN0XGZQLgorLlRQCisuQlIgXC1EICIsICIgXC1cLWRlYnVnCitFbmFibGVzIGRlYnVnZ2luZyBvdXRwdXQuIFRoaXMgaXMgbm90IHZlcnkgaW50ZXJlc3RpbmcuCisuCisuU0ggRU5WSVJPTk1FTlQKKy5UUAorLkIgVE1QRElSCitJZiBzZXQsIFxmQmRwa2dcLWRlYlxmUCB3aWxsIHVzZSBpdCBhcyB0aGUgZGlyZWN0b3J5IGluIHdoaWNoIHRvIGNyZWF0ZQordGVtcG9yYXJ5IGZpbGVzIGFuZCBkaXJlY3Rvcmllcy4KKy4KKy5TSCBCVUdTCisuQiBkcGtnXC1kZWIgXC1JCisuSUIgcGFja2FnZTEgLmRlYgorLklCIHBhY2thZ2UyIC5kZWIKK2RvZXMgdGhlIHdyb25nIHRoaW5nLgorCitUaGVyZSBpcyBubyBhdXRoZW50aWNhdGlvbiBvbgorLkIgLmRlYgorZmlsZXM7IGluIGZhY3QsIHRoZXJlIGlzbid0IGV2ZW4gYSBzdHJhaWdodGZvcndhcmQgY2hlY2tzdW0uCisoSGlnaGVyIGxldmVsIHRvb2xzIGxpa2UgQVBUIHN1cHBvcnQgYXV0aGVudGljYXRpbmcgXGZCLmRlYlxmUCBwYWNrYWdlcworcmV0cmlldmVkIGZyb20gYSBnaXZlbiByZXBvc2l0b3J5LCBhbmQgbW9zdCBwYWNrYWdlcyBub3dhZGF5cyBwcm92aWRlIGFuCittZDVzdW0gY29udHJvbCBmaWxlIGdlbmVyYXRlZCBieSBkZWJpYW4vcnVsZXMuIFRob3VnaCB0aGlzIGlzIG5vdCBkaXJlY3RseQorc3VwcG9ydGVkIGJ5IHRoZSBsb3dlciBsZXZlbCB0b29scy4pCisKK0RvIG5vdCBhdHRlbXB0IHRvIHVzZSBqdXN0CisuQiBkcGtnXC1kZWIKK3RvIGluc3RhbGwgc29mdHdhcmUhIFlvdSBtdXN0IHVzZQorLkIgZHBrZworcHJvcGVyIHRvIGVuc3VyZSB0aGF0IGFsbCB0aGUgZmlsZXMgYXJlIGNvcnJlY3RseSBwbGFjZWQgYW5kIHRoZQorcGFja2FnZSdzIHNjcmlwdHMgcnVuIGFuZCBpdHMgc3RhdHVzIGFuZCBjb250ZW50cyByZWNvcmRlZC4KKy4KKy5TSCBTRUUgQUxTTworLkJSIGRlYiAoNSksCisuQlIgZGViXC1jb250cm9sICg1KSwKKy5CUiBkcGtnICgxKSwKKy5CUiBkc2VsZWN0ICgxKS4KKy4KKy5TSCBBVVRIT1IKK0NvcHlyaWdodCBcKGNvIDE5OTUtMTk5NiBJYW4gSmFja3NvbgorLnNwCitUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgdmVyc2lvbiAyIG9yCitsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyBXQVJSQU5UWS4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL2Rwa2ctZGlzdGFkZGZpbGUuMSBiL2Rwa2ctMS4xNi4xLjEvbWFuL2Rwa2ctZGlzdGFkZGZpbGUuMQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41MGU2MTZkCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vZHBrZy1kaXN0YWRkZmlsZS4xCkBAIC0wLDAgKzEsNTMgQEAKKy5USCBkcGtnXC1kaXN0YWRkZmlsZSAxICIyMDExLTA3LTA0IiAiRGViaWFuIFByb2plY3QiICJkcGtnIHV0aWxpdGllcyIKKy5TSCBOQU1FCitkcGtnXC1kaXN0YWRkZmlsZSBcLSBhZGQgZW50cmllcyB0byBkZWJpYW4vZmlsZXMKKy4KKy5TSCBTWU5PUFNJUworLkIgZHBrZ1wtZGlzdGFkZGZpbGUKKy5SSSBbIG9wdGlvbiAuLi5dICIgZmlsZW5hbWUgc2VjdGlvbiBwcmlvcml0eSIKKy4KKy5TSCBERVNDUklQVElPTgorLkIgZHBrZ1wtZGlzdGFkZGZpbGUKK2FkZHMgYW4gZW50cnkgZm9yIGEgbmFtZWQgZmlsZSB0bworLkJSIGRlYmlhbi9maWxlcyAuCisKK0l0IHRha2VzIHRocmVlIG5vbi1vcHRpb24gYXJndW1lbnRzLCB0aGUgZmlsZW5hbWUgYW5kIHRoZSBzZWN0aW9uIGFuZAorcHJpb3JpdHkgZm9yIHRoZQorLkIgLmNoYW5nZXMKK2ZpbGUuCisKK1RoZSBmaWxlbmFtZSBzaG91bGQgYmUgc3BlY2lmaWVkIHJlbGF0aXZlIHRvIHRoZSBkaXJlY3Rvcnkgd2hlcmUKKy5CIGRwa2dcLWdlbmNoYW5nZXMKK3dpbGwgZXhwZWN0IHRvIGZpbmQgdGhlIGZpbGVzLCB1c3VhbGx5CisuQlIgLi4gLAorcmF0aGVyIHRoYW4gYmVpbmcgYSBwYXRobmFtZSByZWxhdGl2ZSB0byB0aGUgY3VycmVudCBkaXJlY3Rvcnkgd2hlbgorLkIgZHBrZ1wtZGlzdGFkZGZpbGUKK2lzIHJ1bi4KKy4KKy5TSCBPUFRJT05TCisuVFAKKy5CSSBcLWYgZmlsZXNsaXN0ZmlsZQorUmVhZCBvciB3cml0ZSB0aGUgbGlzdCBvZiBmaWxlcyB0byBiZSB1cGxvYWRlZCBoZXJlLCByYXRoZXIgdGhhbiB1c2luZworLkJSIGRlYmlhbi9maWxlcyAuCisuVFAKKy5CUiBcLWggIiwgIiBcLVwtaGVscAorU2hvdyB0aGUgdXNhZ2UgbWVzc2FnZSBhbmQgZXhpdC4KKy5UUAorLkJSIFwtXC12ZXJzaW9uCitTaG93IHRoZSB2ZXJzaW9uIGFuZCBleGl0LgorLgorLlNIIEZJTEVTCisuVFAKKy5CIGRlYmlhbi9maWxlcworVGhlIGxpc3Qgb2YgZ2VuZXJhdGVkIGZpbGVzIHdoaWNoIGFyZSBwYXJ0IG9mIHRoZSB1cGxvYWQgYmVpbmcKK3ByZXBhcmVkLgorLkIgZHBrZ1wtZGlzdGFkZGZpbGUKK2NhbiBiZSB1c2VkIHRvIGFkZCBhZGRpdGlvbmFsIGZpbGVzLgorLgorLlNIIEFVVEhPUlMKK0NvcHlyaWdodCBcKGNvIDE5OTUtMTk5NiBJYW4gSmFja3NvbgorLmJyCitDb3B5cmlnaHQgXChjbyAyMDAwIFdpY2hlcnQgQWtrZXJtYW4KKy5zcAorVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbmNlIHZlcnNpb24gMiBvciBsYXRlcgorZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gV0FSUkFOVFkuCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9kcGtnLWRpdmVydC44IGIvZHBrZy0xLjE2LjEuMS9tYW4vZHBrZy1kaXZlcnQuOApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yZjYzYzM4Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vZHBrZy1kaXZlcnQuOApAQCAtMCwwICsxLDEzOSBAQAorLlRIIGRwa2dcLWRpdmVydCA4ICIyMDExLTA4LTE0IiAiRGViaWFuIFByb2plY3QiICJkcGtnIHV0aWxpdGllcyIKKy5TSCBOQU1FCitkcGtnXC1kaXZlcnQgXC0gb3ZlcnJpZGUgYSBwYWNrYWdlJ3MgdmVyc2lvbiBvZiBhIGZpbGUKKy4KKy5TSCBTWU5PUFNJUworLkIgZHBrZ1wtZGl2ZXJ0CisuUkkgWyBvcHRpb24gLi4uXQorLkkgY29tbWFuZAorLgorLlNIIERFU0NSSVBUSU9OCisuQiBkcGtnXC1kaXZlcnQKK2lzIHRoZSB1dGlsaXR5IHVzZWQgdG8gc2V0IHVwIGFuZCB1cGRhdGUgdGhlIGxpc3Qgb2YgZGl2ZXJzaW9ucy4KKy5QUAorRmlsZSBcZklkaXZlcnNpb25zXGZQIGFyZSBhIHdheSBvZiBmb3JjaW5nCisuQlIgZHBrZyAoMSkKK25vdCB0byBpbnN0YWxsIGEgZmlsZSBpbnRvIGl0cworbG9jYXRpb24sIGJ1dCB0byBhIFxmSWRpdmVydGVkXGZQIGxvY2F0aW9uLiBEaXZlcnNpb25zIGNhbiBiZSB1c2VkIHRocm91Z2ggdGhlCitEZWJpYW4gcGFja2FnZSBzY3JpcHRzIHRvIG1vdmUgYSBmaWxlIGF3YXkgd2hlbiBpdCBjYXVzZXMgYSBjb25mbGljdC4gU3lzdGVtCithZG1pbmlzdHJhdG9ycyBjYW4gYWxzbyB1c2UgaXQgdG8gb3ZlcnJpZGUgc29tZSBwYWNrYWdlJ3MgY29uZmlndXJhdGlvbgorZmlsZSwgb3Igd2hlbmV2ZXIgc29tZSBmaWxlcyAod2hpY2ggYXJlbid0IG1hcmtlZCBhcyAnY29uZmZpbGVzJykgbmVlZCB0byBiZQorcHJlc2VydmVkIGJ5IGRwa2csIHdoZW4gaW5zdGFsbGluZyBhIG5ld2VyIHZlcnNpb24gb2YgYSBwYWNrYWdlIHdoaWNoCitjb250YWlucyB0aG9zZSBmaWxlcy4KKy5zcAorLlNIIENPTU1BTkRTCisuVFAKKy5SQiBbIFwtXC1hZGQgIl0gXGZJZmlsZVxmUCIKK0FkZCBhIGRpdmVyc2lvbiBmb3IgXGZJZmlsZVxmUC4KKy5UUAorLkJJIFwtXC1yZW1vdmUgIiBmaWxlIgorUmVtb3ZlIGEgZGl2ZXJzaW9uIGZvciBcZklmaWxlXGZQLgorLlRQCisuQkkgXC1cLWxpc3QgIiBnbG9iLXBhdHRlcm4iCitMaXN0IGRpdmVyc2lvbnMgbWF0Y2hpbmcgXGZJZ2xvYi1wYXR0ZXJuXGZQLgorLlRQCisuQkkgXC1cLWxpc3RwYWNrYWdlICIgZmlsZSIKK1ByaW50IHRoZSBuYW1lIG9mIHRoZSBwYWNrYWdlIHRoYXQgZGl2ZXJ0cyBcZklmaWxlXGZQLiAgUHJpbnRzIExPQ0FMIGlmCitcZklmaWxlXGZQIGlzIGxvY2FsbHkgZGl2ZXJ0ZWQgYW5kIG5vdGhpbmcgaWYgXGZJZmlsZVxmUCBpcyBub3QgZGl2ZXJ0ZWQuCisuVFAKKy5CSSBcLVwtdHJ1ZW5hbWUgIiBmaWxlIgorUHJpbnQgdGhlIHJlYWwgbmFtZSBmb3IgYSBkaXZlcnRlZCBmaWxlLgorLgorLlNIIE9QVElPTlMKKy5UUAorLkJJIFwtXC1hZG1pbmRpciAiIGRpcmVjdG9yeSIKK1NldCB0aGUgZHBrZyBkYXRhIGRpcmVjdG9yeSB0byBcZklkaXJlY3RvcnlcZlAgKGRlZmF1bHQ6IFxmSS92YXIvbGliL2Rwa2dcZlApLgorLlRQCisuQkkgXC1cLWRpdmVydCAiIGRpdmVydC10byIKK1xmSWRpdmVydC10b1xmUCBpcyB0aGUgbG9jYXRpb24gd2hlcmUgdGhlIHZlcnNpb25zIG9mIFxmSWZpbGVcZlAsIGFzCitwcm92aWRlZCBieSBvdGhlciBwYWNrYWdlcywgd2lsbCBiZSBkaXZlcnRlZC4KKy5UUAorLkIgXC1cLWxvY2FsCitTcGVjaWZpZXMgdGhhdCBhbGwgcGFja2FnZXMnIHZlcnNpb25zIG9mIHRoaXMgZmlsZSBhcmUgZGl2ZXJ0ZWQuCitUaGlzIG1lYW5zLCB0aGF0IHRoZXJlIGFyZSBubyBleGNlcHRpb25zLCBhbmQgd2hhdGV2ZXIgcGFja2FnZSBpcyBpbnN0YWxsZWQsCit0aGUgZmlsZSBpcyBkaXZlcnRlZC4gVGhpcyBjYW4gYmUgdXNlZCBieSBhbiBhZG1pbiB0byBpbnN0YWxsIGEgbG9jYWxseQorbW9kaWZpZWQgdmVyc2lvbi4KKy5UUAorLkJJIFwtXC1wYWNrYWdlICIgcGFja2FnZSIKK1xmSXBhY2thZ2VcZlAgaXMgdGhlIG5hbWUgb2YgYSBwYWNrYWdlIHdob3NlIGNvcHkgb2YgXGZJZmlsZVxmUCB3aWxsIG5vdAorYmUgZGl2ZXJ0ZWQuIGkuZS4gXGZJZmlsZVxmUCB3aWxsIGJlIGRpdmVydGVkIGZvciBhbGwgcGFja2FnZXMgZXhjZXB0CitcZklwYWNrYWdlXGZQLgorLlRQCisuQiBcLVwtcXVpZXQKK1F1aWV0IG1vZGUsIGkuZS4gbm8gdmVyYm9zZSBvdXRwdXQuCisuVFAKKy5CIFwtXC1yZW5hbWUKK0FjdHVhbGx5IG1vdmUgdGhlIGZpbGUgYXNpZGUgKG9yIGJhY2spLiBcZkJkcGtnXC1kaXZlcnRcZlAgd2lsbCBhYm9ydCBvcGVyYXRpb24KK2luIGNhc2UgdGhlIGRlc3RpbmF0aW9uIGZpbGUgYWxyZWFkeSBleGlzdHMuCisuVFAKKy5CIFwtXC10ZXN0CitUZXN0IG1vZGUsIGkuZS4gZG9uJ3QgYWN0dWFsbHkgcGVyZm9ybSBhbnkgY2hhbmdlcywganVzdCBkZW1vbnN0cmF0ZS4KKy5UUAorLkIgXC1cLWhlbHAKK1Nob3cgdGhlIHVzYWdlIG1lc3NhZ2UgYW5kIGV4aXQuCisuVFAKKy5CIFwtXC12ZXJzaW9uCitTaG93IHRoZSB2ZXJzaW9uIGFuZCBleGl0LgorLgorLlNIIE5PVEVTCitXaGVuIGFkZGluZywgZGVmYXVsdCBpcyBcZkJcLVwtbG9jYWxcZlAgYW5kIFxmQlwtXC1kaXZlcnRcZlAKK1xmSW9yaWdpbmFsXGZQXGZCLmRpc3RyaWJcZlAuIFdoZW4gcmVtb3ZpbmcsIFxmQlwtXC1wYWNrYWdlXGZQIG9yCitcZkJcLVwtbG9jYWxcZlAgYW5kIFxmQlwtXC1kaXZlcnRcZlAgbXVzdCBtYXRjaCBpZiBzcGVjaWZpZWQuCisKK0RpcmVjdG9yaWVzIGNhbid0IGJlIGRpdmVydGVkIHdpdGggXGZCZHBrZ1wtZGl2ZXJ0XGZQLgorCitDYXJlIHNob3VsZCBiZSB0YWtlbiB3aGVuIGRpdmVydGluZyBzaGFyZWQgbGlicmFyaWVzLCBcZkJsZGNvbmZpZ1xmUCg4KQorY3JlYXRlcyBhIHN5bWJvbGljIGxpbmsgYmFzZWQgb24gdGhlIERUX1NPTkFNRSBmaWVsZCBlbWJlZGRlZCBpbiB0aGUgbGlicmFyeS4KK0JlY2F1c2UgbGRjb25maWcgZG9lc24ndCBob25vdXIgZGl2ZXJ0cyAob25seSBkcGtnIGRvZXMpLCB0aGUgc3ltbGluayBtYXkKK2VuZCB1cCBwb2ludGluZyBhdCB0aGUgZGl2ZXJ0ZWQgbGlicmFyeSwgaWYgYSBkaXZlcnRlZCBsaWJyYXJ5IGhhcyB0aGUKK3NhbWUgU09OQU1FIGFzIHRoZSB1bmRpdmVydGVkIG9uZS4KKy4KKy5TSCBFWEFNUExFUworVG8gZGl2ZXJ0IGFsbCBjb3BpZXMgb2YgYSBcZkkvdXNyL2Jpbi9leGFtcGxlXGZSIHRvIFxmSS91c3IvYmluL2V4YW1wbGUuZm9vXGZSLAoraS5lLiBkaXJlY3RzIGFsbCBwYWNrYWdlcyBwcm92aWRpbmcgXGZJL3Vzci9iaW4vZXhhbXBsZVxmUiB0byBpbnN0YWxsIGl0IGFzCitcZkkvdXNyL2Jpbi9leGFtcGxlLmZvb1xmUiwgcGVyZm9ybWluZyB0aGUgcmVuYW1lIGlmIHJlcXVpcmVkOgorLkhQCitkcGtnXC1kaXZlcnQgXC1cLWRpdmVydCAvdXNyL2Jpbi9leGFtcGxlLmZvbyBcLVwtcmVuYW1lIC91c3IvYmluL2V4YW1wbGUKKy5QUAorVG8gcmVtb3ZlIHRoYXQgZGl2ZXJzaW9uOgorLkhQCitkcGtnXC1kaXZlcnQgXC1cLXJlbmFtZSBcLVwtcmVtb3ZlIC91c3IvYmluL2V4YW1wbGUKKworLlBQCitUbyBkaXZlcnQgYW55IHBhY2thZ2UgdHJ5aW5nIHRvIGluc3RhbGwgXGZJL3Vzci9iaW4vZXhhbXBsZVxmUiB0bworXGZJL3Vzci9iaW4vZXhhbXBsZS5mb29cZlIsIGV4Y2VwdCB5b3VyIG93biBcZkl3aWJibGVcZlIgcGFja2FnZToKKy5IUAorZHBrZ1wtZGl2ZXJ0IFwtXC1wYWNrYWdlIHdpYmJsZSBcLVwtZGl2ZXJ0IC91c3IvYmluL2V4YW1wbGUuZm9vIFwtXC1yZW5hbWUgL3Vzci9iaW4vZXhhbXBsZQorLlBQCitUbyByZW1vdmUgdGhhdCBkaXZlcnNpb246CisuSFAKK2Rwa2dcLWRpdmVydCBcLVwtcGFja2FnZSB3aWJibGUgXC1cLXJlbmFtZSBcLVwtcmVtb3ZlIC91c3IvYmluL2V4YW1wbGUKKy4KKy5TSCBFTlZJUk9OTUVOVAorLlRQCisuQiBEUEtHX0FETUlORElSCitJZiBzZXQgYW5kIHRoZSBcZkJcLVwtYWRtaW5kaXJcZlAgb3B0aW9uIGhhcyBub3QgYmVlbiBzcGVjaWZpZWQsIGl0IHdpbGwKK2JlIHVzZWQgYXMgdGhlIGRwa2cgZGF0YSBkaXJlY3RvcnkuCisuVFAKKy5CIERQS0dfTUFJTlRTQ1JJUFRfUEFDS0FHRQorSWYgc2V0IGFuZCB0aGUgXGZCXC1cLWxvY2FsXGZQIGFuZCBcZkJcLVwtcGFja2FnZVxmUCBvcHRpb25zIGhhdmUgbm90IGJlZW4KK3NwZWNpZmllZCwgXGZCZHBrZ1wtZGl2ZXJ0XGZQIHdpbGwgdXNlIGl0IGFzIHRoZSBwYWNrYWdlIG5hbWUuCisuCisuU0ggRklMRVMKKy5UUAorLkkgL3Zhci9saWIvZHBrZy9kaXZlcnNpb25zCitGaWxlIHdoaWNoIGNvbnRhaW5zIHRoZSBjdXJyZW50IGxpc3Qgb2YgZGl2ZXJzaW9ucyBvZiB0aGUgc3lzdGVtLiBJdCBpcworbG9jYXRlZCBpbiB0aGUgZHBrZyBhZG1pbmlzdHJhdGlvbiBkaXJlY3RvcnksIGFsb25nIHdpdGggb3RoZXIgZmlsZXMKK2ltcG9ydGFudCB0byBkcGtnLCBzdWNoIGFzIFxmSXN0YXR1c1xmUCBvciBcZklhdmFpbGFibGVcZlAuCisuYnIKK05vdGU6IFxmQmRwa2dcLWRpdmVydFxmUCBwcmVzZXJ2ZXMgdGhlIG9sZCBjb3B5IG9mIHRoaXMgZmlsZSwgd2l0aCBleHRlbnNpb24KK1xmSVwtb2xkXGZQLCBiZWZvcmUgcmVwbGFjaW5nIGl0IHdpdGggdGhlIG5ldyBvbmUuCisuCisuU0ggU0VFIEFMU08KKy5CUiBkcGtnICgxKS4KKy4KKy5TSCBBVVRIT1IKK0NvcHlyaWdodCBcKGNvIDE5OTUgSWFuIEphY2tzb24KKy5zcAorVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbmNlIHZlcnNpb24gMiBvcgorbGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gV0FSUkFOVFkuCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9kcGtnLWdlbmNoYW5nZXMuMSBiL2Rwa2ctMS4xNi4xLjEvbWFuL2Rwa2ctZ2VuY2hhbmdlcy4xCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjhjYTc1MDgKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9kcGtnLWdlbmNoYW5nZXMuMQpAQCAtMCwwICsxLDE1NCBAQAorLlRIIGRwa2dcLWdlbmNoYW5nZXMgMSAiMjAxMS0wOC0xNCIgIkRlYmlhbiBQcm9qZWN0IiAiZHBrZyB1dGlsaXRpZXMiCisuU0ggTkFNRQorZHBrZ1wtZ2VuY2hhbmdlcyBcLSBnZW5lcmF0ZSBEZWJpYW4gLmNoYW5nZXMgZmlsZXMKKy4KKy5TSCBTWU5PUFNJUworLkIgZHBrZ1wtZ2VuY2hhbmdlcworLlJJIFsgb3B0aW9uIC4uLl0KKy5icgorLgorLlNIIERFU0NSSVBUSU9OCisuQiBkcGtnXC1nZW5jaGFuZ2VzCityZWFkcyBpbmZvcm1hdGlvbiBmcm9tIGFuIHVucGFja2VkIGFuZCBidWlsdCBEZWJpYW4gc291cmNlIHRyZWUgYW5kCitmcm9tIHRoZSBmaWxlcyBpdCBoYXMgZ2VuZXJhdGVkIGFuZCBnZW5lcmF0ZXMgYSBEZWJpYW4gdXBsb2FkIGNvbnRyb2wKK2ZpbGUKKy5SQiAoIC5jaGFuZ2VzICIgZmlsZSkuIgorLgorLlNIIE9QVElPTlMKKy5UUAorLkJSIFwtYiAiLCAiIFwtQiAiLCAiIFwtQQorU3BlY2lmaWVzIHRoYXQgYSBiaW5hcnktb25seSBidWlsZCBpcyB0YWtpbmcgcGxhY2UgKG5vIHNvdXJjZSBmaWxlcyBhcmUKK3RvIGJlIGluY2x1ZGVkKS4gVGhlcmUncyBubyBkaXN0aW5jdGlvbiBiZXR3ZWVuIFxmQlwtYlxmUCwgXGZCXC1CXGZQIGFuZAorXGZCXC1BXGZQLCB0aGUgcHJvZHVjZWQKKy5CIC5jaGFuZ2VzCitmaWxlIHdpbGwgaW5jbHVkZSB3aGF0ZXZlciBmaWxlcyB3ZXJlIGNyZWF0ZWQgYnkgdGhlCisuQiBiaW5hcnlcLSoKK3RhcmdldChzKSBvZiB0aGUgcGFja2FnZSBiZWluZyBidWlsdC4KKy5UUAorLkIgXC1TCitTcGVjaWZpZXMgdGhhdCBvbmx5IHRoZSBzb3VyY2Ugc2hvdWxkIGJlIHVwbG9hZGVkIChubyBiaW5hcnkgcGFja2FnZXMKK3dpbGwgYmUgaW5jbHVkZWQpLgorLlBQCitUaGUgXGZCXC1zXGZQXGZJeFxmUCBvcHRpb25zIGNvbnRyb2wgd2hldGhlciB0aGUgb3JpZ2luYWwgc291cmNlIGFyY2hpdmUgaXMKK2luY2x1ZGVkIGluIHRoZSB1cGxvYWQgaWYgYW55IHNvdXJjZSBpcyBiZWluZyBnZW5lcmF0ZWQgKGkuZS4KKy5CUiBcLWIgIiBvciAiIFwtQgoraGF2ZW4ndCBiZWVuIHVzZWQpLgorLlRQCisuQiBcLXNpCitCeSBkZWZhdWx0LCBvciBpZiBzcGVjaWZpZWQsIHRoZSBvcmlnaW5hbCBzb3VyY2Ugd2lsbCBiZSBpbmNsdWRlZCBvbmx5IGlmCit0aGUgdXBzdHJlYW0gdmVyc2lvbiBudW1iZXIgKHRoZSB2ZXJzaW9uIHdpdGhvdXQgZXBvY2ggYW5kIHdpdGhvdXQgRGViaWFuCityZXZpc2lvbikgZGlmZmVycyBmcm9tIHRoZSB1cHN0cmVhbSB2ZXJzaW9uIG51bWJlciBvZiB0aGUgcHJldmlvdXMKK2NoYW5nZWxvZyBlbnRyeS4KKy5UUAorLkIgXC1zYQorRm9yY2VzIHRoZSBpbmNsdXNpb24gb2YgdGhlIG9yaWdpbmFsIHNvdXJjZS4KKy5UUAorLkIgXC1zZAorRm9yY2VzIHRoZSBleGNsdXNpb24gb2YgdGhlIG9yaWdpbmFsIHNvdXJjZSBhbmQgaW5jbHVkZXMgb25seSB0aGUgZGlmZi4KKy5maQorLlRQCisuQkkgXC12IHZlcnNpb24KK0NhdXNlcyBjaGFuZ2Vsb2cgaW5mb3JtYXRpb24gZnJvbSBhbGwgdmVyc2lvbnMgc3RyaWN0bHkgbGF0ZXIgdGhhbgorLkkgdmVyc2lvbgordG8gYmUgdXNlZC4KKy5UUAorLkJJIFwtQyBjaGFuZ2VzZGVzY3JpcHRpb24KK1JlYWQgdGhlIGRlc2NyaXB0aW9uIG9mIHRoZSBjaGFuZ2VzIGZyb20gdGhlIGZpbGUKKy5JIGNoYW5nZXNkZXNjcmlwdGlvbgorcmF0aGVyIHRoYW4gdXNpbmcgdGhlIGluZm9ybWF0aW9uIGZyb20gdGhlIHNvdXJjZSB0cmVlJ3MgY2hhbmdlbG9nCitmaWxlLgorLlRQCisuQkkgXC1tIG1haW50YWluZXJhZGRyZXNzCitVc2UKKy5JIG1haW50YWluZXJhZGRyZXNzCithcyB0aGUgbmFtZSBhbmQgZW1haWwgYWRkcmVzcyBvZiB0aGUgbWFpbnRhaW5lciBmb3IgdGhpcyBwYWNrYWdlLAorcmF0aGVyIHRoYW4gdXNpbmcgdGhlIGluZm9ybWF0aW9uIGZyb20gdGhlIHNvdXJjZSB0cmVlJ3MgY29udHJvbCBmaWxlLgorLlRQCisuQkkgXC1lIG1haW50YWluZXJhZGRyZXNzCitVc2UKKy5JIG1haW50YWluZXJhZGRyZXNzCithcyB0aGUgbmFtZSBhbmQgZW1haWwgYWRkcmVzcyBvZiB0aGUgbWFpbnRhaW5lciBmb3IgdGhpcyB1cGxvYWQsCityYXRoZXIgdGhhbiB1c2luZyB0aGUgaW5mb3JtYXRpb24gZnJvbSB0aGUgc291cmNlIHRyZWUncyBjaGFuZ2Vsb2cuCisuVFAKKy5CSSBcLVYgbmFtZSA9IHZhbHVlCitTZXQgYW4gb3V0cHV0IHN1YnN0aXR1dGlvbiB2YXJpYWJsZS4KK1NlZSBcZkJkZWJcLXN1YnN0dmFyc1xmUCg1KSBmb3IgYSBkaXNjdXNzaW9uIG9mIG91dHB1dCBzdWJzdGl0dXRpb24uCisuVFAKKy5CSSBcLVQgc3Vic3R2YXJzZmlsZQorUmVhZCBzdWJzdGl0dXRpb24gdmFyaWFibGVzIGluCisuSVIgc3Vic3R2YXJzZmlsZSA7Cit0aGUgZGVmYXVsdCBpcworLkJSIGRlYmlhbi9zdWJzdHZhcnMgLgorTm8gdmFyaWFibGUgc3Vic3RpdHV0aW9uIGlzIGRvbmUgb24gYW55IG9mIHRoZSBmaWVsZHMgdGhhdCBhcmUgb3V0cHV0LAoraG93ZXZlciB0aGUgc3BlY2lhbCB2YXJpYWJsZSBcZklGb3JtYXRcZlIgd2lsbCBvdmVycmlkZSB0aGUgZmllbGQgb2YgdGhlCitzYW1lIG5hbWUuIFRoaXMgb3B0aW9uIGNhbiBiZSB1c2VkIG11bHRpcGxlIHRpbWVzIHRvIHJlYWQgc3Vic3RpdHV0aW9uCit2YXJpYWJsZXMgZnJvbSBtdWx0aXBsZSBmaWxlcy4KKworLlRQCisuQkkgXC1EIGZpZWxkID0gdmFsdWUKK092ZXJyaWRlIG9yIGFkZCBhbiBvdXRwdXQgY29udHJvbCBmaWxlIGZpZWxkLgorLlRQCisuQkkgXC1VIGZpZWxkCitSZW1vdmUgYW4gb3V0cHV0IGNvbnRyb2wgZmlsZSBmaWVsZC4KKy5UUAorLkJJIFwtYyBjb250cm9sZmlsZQorU3BlY2lmaWVzIHRoZSBtYWluIHNvdXJjZSBjb250cm9sIGZpbGUgdG8gcmVhZCBpbmZvcm1hdGlvbiBmcm9tLiBUaGUKK2RlZmF1bHQgaXMKKy5CUiBkZWJpYW4vY29udHJvbCAuCisuVFAKKy5CSSBcLWwgY2hhbmdlbG9nZmlsZQorU3BlY2lmaWVzIHRoZSBjaGFuZ2UgbG9nIGZpbGUgdG8gcmVhZCBpbmZvcm1hdGlvbiBmcm9tLiBUaGUKK2RlZmF1bHQgaXMKKy5CUiBkZWJpYW4vY2hhbmdlbG9nIC4KKy5UUAorLkJJIFwtZiBmaWxlc2xpc3RmaWxlCitSZWFkIHRoZSBsaXN0IG9mIGZpbGVzIHRvIGJlIHVwbG9hZGVkIGhlcmUsIHJhdGhlciB0aGFuIHVzaW5nCisuQlIgZGViaWFuL2ZpbGVzIC4KKy5UUAorLkJJIFwtRiBjaGFuZ2Vsb2dmb3JtYXQKK1NwZWNpZmllcyB0aGUgZm9ybWF0IG9mIHRoZSBjaGFuZ2Vsb2cuIEJ5IGRlZmF1bHQgdGhlIGZvcm1hdCBpcyByZWFkCitmcm9tIGEgc3BlY2lhbCBsaW5lIG5lYXIgdGhlIGJvdHRvbSBvZiB0aGUgY2hhbmdlbG9nIG9yIGZhaWxpbmcgdGhhdAorZGVmYXVsdHMgdG8gdGhlIGRlYmlhbiBzdGFuZGFyZCBmb3JtYXQuCisuVFAKKy5CSSBcLXUgdXBsb2FkZmlsZXNkaXIKK0xvb2sgZm9yIHRoZSBmaWxlcyB0byBiZSB1cGxvYWRlZCBpbgorLkkgdXBsb2FkZmlsZXNkaXIKK3JhdGhlciB0aGFuCisuQiAuLgorLlJCICggZHBrZ1wtZ2VuY2hhbmdlcworbmVlZHMgdG8gZmluZCB0aGVzZSBmaWxlcyBzbyB0aGF0IGl0IGNhbiBpbmNsdWRlIHRoZWlyIHNpemVzIGFuZAorY2hlY2tzdW1zIGluIHRoZQorLkIgLmNoYW5nZXMKK2ZpbGUpLgorLlRQCisuQiBcLXEKK1VzdWFsbHkKKy5CIGRwa2dcLWdlbmNoYW5nZXMKK3dpbGwgcHJvZHVjZSBpbmZvcm1hdGl2ZSBtZXNzYWdlcyBvbiBzdGFuZGFyZCBlcnJvciwgZm9yIGV4YW1wbGUgYWJvdXQKK2hvdyBtYW55IG9mIHRoZSBwYWNrYWdlJ3Mgc291cmNlIGZpbGVzIGFyZSBiZWluZyB1cGxvYWRlZC4KKy5CIFwtcQorc3VwcHJlc3NlcyB0aGVzZSBtZXNzYWdlcy4KKy5UUAorLkJSIFwtaCAiLCAiIFwtXC1oZWxwCitTaG93IHRoZSB1c2FnZSBtZXNzYWdlIGFuZCBleGl0LgorLlRQCisuQlIgXC1cLXZlcnNpb24KK1Nob3cgdGhlIHZlcnNpb24gYW5kIGV4aXQuCisuCisuU0ggRklMRVMKKy5UUAorLkIgZGViaWFuL2ZpbGVzCitUaGUgbGlzdCBvZiBnZW5lcmF0ZWQgZmlsZXMgd2hpY2ggYXJlIHBhcnQgb2YgdGhlIHVwbG9hZCBiZWluZworcHJlcGFyZWQuCisuQiBkcGtnXC1nZW5jaGFuZ2VzCityZWFkcyB0aGUgZGF0YSBoZXJlIHdoZW4gcHJvZHVjaW5nIGEKKy5CIC5jaGFuZ2VzCitmaWxlLgorLgorLlNIIEFVVEhPUlMKK0NvcHlyaWdodCBcKGNvIDE5OTUtMTk5NiBJYW4gSmFja3NvbgorLmJyCitDb3B5cmlnaHQgXChjbyAyMDAwIFdpY2hlcnQgQWtrZXJtYW4KKy5zcAorVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbmNlIHZlcnNpb24gMiBvciBsYXRlcgorZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gV0FSUkFOVFkuCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9kcGtnLWdlbmNvbnRyb2wuMSBiL2Rwa2ctMS4xNi4xLjEvbWFuL2Rwa2ctZ2VuY29udHJvbC4xCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmRiMTFmZjAKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9kcGtnLWdlbmNvbnRyb2wuMQpAQCAtMCwwICsxLDE1MCBAQAorLlRIIGRwa2dcLWdlbmNvbnRyb2wgMSAiMjAxMS0wOC0xNCIgIkRlYmlhbiBQcm9qZWN0IiAiZHBrZyB1dGlsaXRpZXMiCisuU0ggTkFNRQorZHBrZ1wtZ2VuY29udHJvbCBcLSBnZW5lcmF0ZSBEZWJpYW4gY29udHJvbCBmaWxlcworLgorLlNIIFNZTk9QU0lTCisuQiBkcGtnXC1nZW5jb250cm9sCisuUkkgWyBvcHRpb24gLi4uXQorLgorLlNIIERFU0NSSVBUSU9OCisuQiBkcGtnXC1nZW5jb250cm9sCityZWFkcyBpbmZvcm1hdGlvbiBmcm9tIGFuIHVucGFja2VkIERlYmlhbiBzb3VyY2UgdHJlZSBhbmQgZ2VuZXJhdGVzIGEKK2JpbmFyeSBwYWNrYWdlIGNvbnRyb2wgZmlsZSAod2hpY2ggZGVmYXVsdHMgdG8gZGViaWFuL3RtcC9ERUJJQU4vY29udHJvbCk7CitkdXJpbmcgdGhpcyBwcm9jZXNzIGl0IHdpbGwgc2ltcGxpZnkgdGhlIHJlbGF0aW9uIGZpZWxkcy4KKy5zcAorVGh1cworLklSIFByZVwtRGVwZW5kcyAiLCAiIERlcGVuZHMgIiwgIiBSZWNvbW1lbmRzICIgYW5kICIgU3VnZ2VzdHMKK2FyZSBzaW1wbGlmaWVkIGluIHRoaXMKK29yZGVyIGJ5IHJlbW92aW5nIGRlcGVuZGVuY2llcyB3aGljaCBhcmUga25vd24gdG8gYmUgdHJ1ZSBhY2NvcmRpbmcgdG8gdGhlCitzdHJvbmdlciBkZXBlbmRlbmNpZXMgYWxyZWFkeSBwYXJzZWQuIEl0IHdpbGwgYWxzbyByZW1vdmUgYW55IHNlbGYtZGVwZW5kZW5jeQorKGluIGZhY3QgaXQgd2lsbCByZW1vdmUgYW55IGRlcGVuZGVuY3kgd2hpY2ggZXZhbHVhdGVzIHRvIHRydWUgZ2l2ZW4gdGhlCitjdXJyZW50IHZlcnNpb24gb2YgdGhlIHBhY2thZ2UgYXMgaW5zdGFsbGVkKS4gTG9naWNhbGx5IGl0IGtlZXBzIHRoZQoraW50ZXJzZWN0aW9uIG9mIG11bHRpcGxlIGRlcGVuZGVuY2llcyBvbiB0aGUgc2FtZSBwYWNrYWdlLiBUaGUgb3JkZXIKK29mIGRlcGVuZGVuY2llcyBpcyBwcmVzZXJ2ZWQgYXMgYmVzdCBhcyBwb3NzaWJsZTogaWYgYW55IGRlcGVuZGVuY3kKK211c3QgYmUgZGlzY2FyZGVkIGR1ZSB0byBhbm90aGVyIGRlcGVuZGVuY3kgYXBwZWFyaW5nIGZ1cnRoZXIKK2luIHRoZSBmaWVsZCwgdGhlIHN1cGVyc2VkaW5nIGRlcGVuZGVuY3kgd2lsbCB0YWtlIHRoZSBwbGFjZSBvZiB0aGUKK2Rpc2NhcmRlZCBvbmUuCisuc3AKK1RoZSBvdGhlciByZWxhdGlvbiBmaWVsZHMKKy5SSSAoIEVuaGFuY2VzICIsICIgQ29uZmxpY3RzICIsICIgQnJlYWtzICIsICIgUmVwbGFjZXMgIiBhbmQgIiBQcm92aWRlcyApCithcmUgYWxzbyBzaW1wbGlmaWVkIGluZGl2aWR1YWxseSBieSBjb21wdXRpbmcgdGhlIHVuaW9uIG9mIHRoZSB2YXJpb3VzCitkZXBlbmRlbmNpZXMgd2hlbiBhIHBhY2thZ2UgaXMgbGlzdGVkIG11bHRpcGxlIHRpbWVzIGluIHRoZSBmaWVsZC4KKy5zcAorLkIgZHBrZ1wtZ2VuY29udHJvbAorYWxzbyBhZGRzIGFuIGVudHJ5IGZvciB0aGUgYmluYXJ5IHBhY2thZ2UgdG8KKy5CUiBkZWJpYW4vZmlsZXMgLgorLgorLlNIIE9QVElPTlMKKy5UUAorLkJJIFwtdiB2ZXJzaW9uCitTZXRzIHRoZSB2ZXJzaW9uIG51bWJlciBvZiB0aGUgYmluYXJ5IHBhY2thZ2Ugd2hpY2ggd2lsbCBiZSBnZW5lcmF0ZWQuCisuVFAKKy5CSSBcLVYgbmFtZSA9IHZhbHVlCitTZXQgYW4gb3V0cHV0IHN1YnN0aXR1dGlvbiB2YXJpYWJsZS4gU2VlIFxmQmRlYlwtc3Vic3R2YXJzXGZQKDUpIGZvcgorZGlzY3Vzc2lvbiBvZiBvdXRwdXQgc3Vic3RpdHV0aW9uLgorLlRQCisuQkkgXC1UIHN1YnN0dmFyc2ZpbGUKK1JlYWQgc3Vic3RpdHV0aW9uIHZhcmlhYmxlcyBpbgorLklSIHN1YnN0dmFyc2ZpbGUgOwordGhlIGRlZmF1bHQgaXMKKy5CUiBkZWJpYW4vc3Vic3R2YXJzIC4KK1RoaXMgb3B0aW9uIGNhbiBiZSB1c2VkIG11bHRpcGxlIHRpbWVzIHRvIHJlYWQgc3Vic3RpdHV0aW9uIHZhcmlhYmxlcyBmcm9tCittdWx0aXBsZSBmaWxlcy4KKy5UUAorLkJJIFwtRCBmaWVsZCA9IHZhbHVlCitPdmVycmlkZSBvciBhZGQgYW4gb3V0cHV0IGNvbnRyb2wgZmlsZSBmaWVsZC4KKy5UUAorLkJJIFwtVSBmaWVsZAorUmVtb3ZlIGFuIG91dHB1dCBjb250cm9sIGZpbGUgZmllbGQuCisuVFAKKy5CSSBcLWMgY29udHJvbGZpbGUKK1NwZWNpZmllcyB0aGUgbWFpbiBzb3VyY2UgY29udHJvbCBmaWxlIHRvIHJlYWQgaW5mb3JtYXRpb24gZnJvbS4gVGhlCitkZWZhdWx0IGlzCisuQlIgZGViaWFuL2NvbnRyb2wgLgorLlRQCisuQkkgXC1sIGNoYW5nZWxvZ2ZpbGUKK1NwZWNpZmllcyB0aGUgY2hhbmdlIGxvZyBmaWxlIHRvIHJlYWQgaW5mb3JtYXRpb24gZnJvbS4gVGhlCitkZWZhdWx0IGlzCisuQlIgZGViaWFuL2NoYW5nZWxvZyAuCisuVFAKKy5CSSBcLWYgZmlsZXNsaXN0ZmlsZQorUmVhZCBvciB3cml0ZSB0aGUgbGlzdCBvZiBmaWxlcyB0byBiZSB1cGxvYWRlZCBoZXJlLCByYXRoZXIgdGhhbiB1c2luZworLkJSIGRlYmlhbi9maWxlcyAuCisuVFAKKy5CSSBcLUYgY2hhbmdlbG9nZm9ybWF0CitTcGVjaWZpZXMgdGhlIGZvcm1hdCBvZiB0aGUgY2hhbmdlbG9nLiBCeSBkZWZhdWx0IHRoZSBmb3JtYXQgaXMgcmVhZAorZnJvbSBhIHNwZWNpYWwgbGluZSBuZWFyIHRoZSBib3R0b20gb2YgdGhlIGNoYW5nZWxvZyBvciBmYWlsaW5nIHRoYXQKK2RlZmF1bHRzIHRvIHRoZSBkZWJpYW4gc3RhbmRhcmQgZm9ybWF0LgorLlRQCisuQkkgXC1wIHBhY2thZ2UKK0dlbmVyYXRlIGluZm9ybWF0aW9uIGZvciB0aGUgYmluYXJ5IHBhY2thZ2UKKy5JUiBwYWNrYWdlIC4KK0lmIHRoZSBzb3VyY2UgY29udHJvbCBmaWxlIGxpc3RzIG9ubHkgb25lIGJpbmFyeSBwYWNrYWdlIHRoZW4gdGhpcworb3B0aW9uIG1heSBiZSBvbWl0dGVkOyBvdGhlcndpc2UgaXQgaXMgZXNzZW50aWFsIHRvIHNlbGVjdCB3aGljaAorYmluYXJ5IHBhY2thZ2UncyBpbmZvcm1hdGlvbiB0byBnZW5lcmF0ZS4KKy5UUAorLkJJIFwtbiBmaWxlbmFtZQorQXNzdW1lIHRoZSBmaWxlbmFtZSBvZiB0aGUgcGFja2FnZSB3aWxsIGJlCisuSSBmaWxlbmFtZQoraW5zdGVhZCBvZiB0aGUgbm9ybWFsIHBhY2thZ2VfdmVyc2lvbl9hcmNoLmRlYiBmaWxlbmFtZS4KKy5UUAorLkJSIFwtaXMgIiwgIiBcLWlwICIsICIgXC1pc3AKK1RoZXNlIG9wdGlvbnMgYXJlIGlnbm9yZWQgZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBvbGRlciB2ZXJzaW9ucyBvZgorZHBrZ1wtZGV2IGJ1dCBhcmUgbm93IGRlcHJlY2F0ZWQuIFByZXZpb3VzbHkgdGhleSB3ZXJlIHVzZWQgdG8gdGVsbAorZHBrZ1wtZ2VuY29udHJvbCB0byBpbmNsdWRlIHRoZSBTZWN0aW9uIGFuZCBQcmlvcml0eSBmaWVsZHMgaW4gdGhlCitjb250cm9sIGZpbGUuIFRoaXMgaXMgbm93IHRoZSBkZWZhdWx0IGJlaGF2aW91ci4gSWYgeW91IHdhbnQgdG8KK2dldCB0aGUgb2xkIGJlaGF2aW91ciB5b3UgY2FuIHVzZSB0aGUKKy5CIFwtVQorb3B0aW9uIHRvIGRlbGV0ZSB0aGUgZmllbGRzIGZyb20gdGhlIGNvbnRyb2wgZmlsZS4KKy5UUAorLkJJIFwtUCBwYWNrYWdlYnVpbGRkaXIKK1RlbGxzCisuQiBkcGtnXC1zb3VyY2UKK3RoYXQgdGhlIHBhY2thZ2UgaXMgYmVpbmcgYnVpbHQgaW4KKy5JIHBhY2thZ2VidWlsZGRpcgoraW5zdGVhZCBvZgorLkJSIGRlYmlhbi90bXAgLgorVGhpcyB2YWx1ZSBpcyB1c2VkIHRvIGZpbmQgdGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlCisuQiBJbnN0YWxsZWRcLVNpemUKK3N1YnN0aXR1dGlvbiB2YXJpYWJsZSBhbmQgY29udHJvbCBmaWxlIGZpZWxkICh1c2luZworLkJSIGR1ICksCithbmQgZm9yIHRoZSBkZWZhdWx0IGxvY2F0aW9uIG9mIHRoZSBvdXRwdXQgZmlsZS4KKy5UUAorLkIgXC1PCitQcmludCB0aGUgY29udHJvbCBmaWxlIHRvIHN0YW5kYXJkIG91dHB1dCwgcmF0aGVyIHRoYW4gdG8KKy5CIGRlYmlhbi90bXAvREVCSUFOL2NvbnRyb2wKKyhvcgorLklCIHBhY2thZ2VidWlsZGRpciAvREVCSUFOL2NvbnRyb2wKK2lmCisuQiBcLVAKK3dhcyB1c2VkKS4KKy5UUAorLkJSIFwtaCAiLCAiIFwtXC1oZWxwCitTaG93IHRoZSB1c2FnZSBtZXNzYWdlIGFuZCBleGl0LgorLlRQCisuQlIgXC1cLXZlcnNpb24KK1Nob3cgdGhlIHZlcnNpb24gYW5kIGV4aXQuCisuCisuU0ggRklMRVMKKy5UUAorLkIgZGViaWFuL2NvbnRyb2wKK1RoZSBtYWluIHNvdXJjZSBjb250cm9sIGluZm9ybWF0aW9uIGZpbGUsIGdpdmluZyB2ZXJzaW9uLWluZGVwZW5kZW50CitpbmZvcm1hdGlvbiBhYm91dCB0aGUgc291cmNlIHBhY2thZ2UgYW5kIHRoZSBiaW5hcnkgcGFja2FnZXMgaXQgY2FuCitwcm9kdWNlLgorLlRQCisuQiBkZWJpYW4vZmlsZXMKK1RoZSBsaXN0IG9mIGdlbmVyYXRlZCBmaWxlcyB3aGljaCBhcmUgcGFydCBvZiB0aGUgdXBsb2FkIGJlaW5nCitwcmVwYXJlZC4KKy5CIGRwa2dcLWdlbmNvbnRyb2wKK2FkZHMgdGhlIHByZXN1bWVkIGZpbGVuYW1lcyBvZiBiaW5hcnkgcGFja2FnZXMgd2hvc2UgY29udHJvbCBmaWxlcyBpdAorZ2VuZXJhdGVzIGhlcmUuCisuCisuU0ggQVVUSE9SUworQ29weXJpZ2h0IFwoY28gMTk5NS0xOTk2IElhbiBKYWNrc29uCisuYnIKK0NvcHlyaWdodCBcKGNvIDIwMDAgV2ljaGVydCBBa2tlcm1hbgorLmJyCitDb3B5cmlnaHQgXChjbyAyMDA3LTIwMDggUmFwaGFcWzplXWwgSGVydHpvZworLnNwCitUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgdmVyc2lvbiAyIG9yIGxhdGVyCitmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyBXQVJSQU5UWS4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL2Rwa2ctZ2Vuc3ltYm9scy4xIGIvZHBrZy0xLjE2LjEuMS9tYW4vZHBrZy1nZW5zeW1ib2xzLjEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOWViMjljNwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL2Rwa2ctZ2Vuc3ltYm9scy4xCkBAIC0wLDAgKzEsNDY0IEBACisuXCIgQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nCisuVEggZHBrZ1wtZ2Vuc3ltYm9scyAxICIyMDExLTA4LTE0IiAiRGViaWFuIFByb2plY3QiICJkcGtnIHV0aWxpdGllcyIKKy5TSCBOQU1FCitkcGtnXC1nZW5zeW1ib2xzIFwtIGdlbmVyYXRlIHN5bWJvbHMgZmlsZXMgKHNoYXJlZCBsaWJyYXJ5IGRlcGVuZGVuY3kgaW5mb3JtYXRpb24pCisuCisuU0ggU1lOT1BTSVMKKy5CIGRwa2dcLWdlbnN5bWJvbHMKKy5SSSBbIG9wdGlvbiAuLi5dCisuCisuU0ggREVTQ1JJUFRJT04KKy5CIGRwa2dcLWdlbnN5bWJvbHMKK3NjYW5zIGEgdGVtcG9yYXJ5IGJ1aWxkIHRyZWUgKGRlYmlhbi90bXAgYnkgZGVmYXVsdCkgbG9va2luZyBmb3IgbGlicmFyaWVzCithbmQgZ2VuZXJhdGUgYSBcZklzeW1ib2xzXGZSIGZpbGUgZGVzY3JpYmluZyB0aGVtLiBUaGlzIGZpbGUsIGlmCitub24tZW1wdHksIGlzIHRoZW4gaW5zdGFsbGVkIGluIHRoZSBERUJJQU4gc3ViZGlyZWN0b3J5IG9mIHRoZSBidWlsZCB0cmVlCitzbyB0aGF0IGl0IGVuZHMgdXAgaW5jbHVkZWQgaW4gdGhlIGNvbnRyb2wgaW5mb3JtYXRpb24gb2YgdGhlIHBhY2thZ2UuCisuUAorV2hlbiBnZW5lcmF0aW5nIHRob3NlIGZpbGVzLCBpdCB1c2VzIGFzIGlucHV0IHNvbWUgc3ltYm9scyBmaWxlcworcHJvdmlkZWQgYnkgdGhlIG1haW50YWluZXIuIEl0IGxvb2tzIGZvciB0aGUgZm9sbG93aW5nIGZpbGVzIChhbmQgdXNlIHRoZQorZmlyc3QgdGhhdCBpcyBmb3VuZCk6CisuSVAgXChidSA0CitkZWJpYW4vXGZJcGFja2FnZVxmUi5zeW1ib2xzLlxmSWFyY2hcZlIKKy5JUCBcKGJ1IDQKK2RlYmlhbi9zeW1ib2xzLlxmSWFyY2hcZlIKKy5JUCBcKGJ1IDQKK2RlYmlhbi9cZklwYWNrYWdlXGZSLnN5bWJvbHMKKy5JUCBcKGJ1IDQKK2RlYmlhbi9zeW1ib2xzCisuUAorVGhlIG1haW4gaW50ZXJlc3Qgb2YgdGhvc2UgZmlsZXMgaXMgdG8gcHJvdmlkZSB0aGUgbWluaW1hbCB2ZXJzaW9uCithc3NvY2lhdGVkIHRvIGVhY2ggc3ltYm9sIHByb3ZpZGVkIGJ5IHRoZSBsaWJyYXJpZXMuIFVzdWFsbHkgaXQKK2NvcnJlc3BvbmRzIHRvIHRoZSBmaXJzdCB2ZXJzaW9uIG9mIHRoYXQgcGFja2FnZSB0aGF0IHByb3ZpZGVkIHRoZSBzeW1ib2wsCitidXQgaXQgY2FuIGJlIG1hbnVhbGx5IGluY3JlbWVudGVkIGJ5IHRoZSBtYWludGFpbmVyIGlmIHRoZSBBQkkgb2YgdGhlCitzeW1ib2wgaXMgZXh0ZW5kZWQgd2l0aG91dCBicmVha2luZyBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eS4gSXQncyB0aGUKK3Jlc3BvbnNpYmlsaXR5IG9mIHRoZSBtYWludGFpbmVyIHRvIGtlZXAgdGhvc2UgZmlsZXMgdXAtdG8tZGF0ZSBhbmQKK2FjY3VyYXRlLCBidXQgXGZCZHBrZ1wtZ2Vuc3ltYm9sc1xmUiBoZWxwcyBoaW0uCisuUAorV2hlbiB0aGUgZ2VuZXJhdGVkIHN5bWJvbHMgZmlsZXMgZGlmZmVyIGZyb20gdGhlIG1haW50YWluZXIgc3VwcGxpZWQKK29uZSwgXGZCZHBrZ1wtZ2Vuc3ltYm9sc1xmUiB3aWxsIHByaW50IGEgZGlmZiBiZXR3ZWVuIHRoZSB0d28gdmVyc2lvbnMuCitGdXJ0aGVybW9yZSBpZiB0aGUgZGlmZmVyZW5jZSBpcyB0b28gc2lnbmlmaWNhbnQsIGl0IHdpbGwgZXZlbiBmYWlsICh5b3UKK2NhbiBjdXN0b21pemUgaG93IG11Y2ggZGlmZmVyZW5jZSB5b3UgY2FuIHRvbGVyYXRlLCBzZWUgdGhlIFxmQlwtY1xmUgorb3B0aW9uKS4KKy5TSCBNQUlOVEFJTklORyBTWU1CT0xTIEZJTEVTCitUaGUgc3ltYm9scyBmaWxlcyBhcmUgcmVhbGx5IHVzZWZ1bCBvbmx5IGlmIHRoZXkgcmVmbGVjdCB0aGUgZXZvbHV0aW9uIG9mCit0aGUgcGFja2FnZSB0aHJvdWdoIHNldmVyYWwgcmVsZWFzZXMuIFRodXMgdGhlIG1haW50YWluZXIgaGFzIHRvIHVwZGF0ZQordGhlbSBldmVyeSB0aW1lIHRoYXQgYSBuZXcgc3ltYm9sIGlzIGFkZGVkIHNvIHRoYXQgaXRzIGFzc29jaWF0ZWQgbWluaW1hbAordmVyc2lvbiBtYXRjaGVzIHJlYWxpdHkuIFRvIGRvIHRoaXMgcHJvcGVybHkgaGUgY2FuIHVzZSB0aGUgZGlmZnMgY29udGFpbmVkCitpbiB0aGUgYnVpbGQgbG9ncy4gSW4gbW9zdCBjYXNlcywgdGhlIGRpZmYgYXBwbGllcyBkaXJlY3RseSB0byBoaXMKK2RlYmlhbi9cZklwYWNrYWdlXGZSLnN5bWJvbHMgZmlsZS4gVGhhdCBzYWlkLCBmdXJ0aGVyIHR3ZWFrcyBhcmUgdXN1YWxseQorbmVlZGVkOiBpdCdzIHJlY29tbWVuZGVkIGZvciBleGFtcGxlIHRvIGRyb3AgdGhlIERlYmlhbiByZXZpc2lvbgorZnJvbSB0aGUgbWluaW1hbCB2ZXJzaW9uIHNvIHRoYXQgYmFja3BvcnRzIHdpdGggYSBsb3dlciB2ZXJzaW9uIG51bWJlcgorYnV0IHRoZSBzYW1lIHVwc3RyZWFtIHZlcnNpb24gc3RpbGwgc2F0aXNmeSB0aGUgZ2VuZXJhdGVkIGRlcGVuZGVuY2llcy4KK0lmIHRoZSBEZWJpYW4gcmV2aXNpb24gY2FuJ3QgYmUgZHJvcHBlZCBiZWNhdXNlIHRoZSBzeW1ib2wgcmVhbGx5IGdvdAorYWRkZWQgYnkgdGhlIERlYmlhbiBzcGVjaWZpYyBjaGFuZ2UsIHRoZW4gb25lIHNob3VsZCBzdWZmaXggdGhlIHZlcnNpb24KK3dpdGggIn4iLgorLlAKK0JlZm9yZSBhcHBseWluZyBhbnkgcGF0Y2ggdG8gdGhlIHN5bWJvbHMgZmlsZSwgdGhlIG1haW50YWluZXIgc2hvdWxkCitkb3VibGUtY2hlY2sgdGhhdCBpdCdzIHNhbmUuIFB1YmxpYyBzeW1ib2xzIGFyZSBub3Qgc3VwcG9zZWQgdG8gZGlzYXBwZWFyLAorc28gdGhlIHBhdGNoIHNob3VsZCBpZGVhbGx5IG9ubHkgYWRkIG5ldyBsaW5lcy4KKy5QCitOb3RlIHRoYXQgeW91IGNhbiBwdXQgY29tbWVudHMgaW4gc3ltYm9scyBmaWxlczogYW55IGxpbmUgd2l0aCAnIycgYXMgdGhlCitmaXJzdCBjaGFyYWN0ZXIgaXMgYSBjb21tZW50IGV4Y2VwdCBpZiBpdCBzdGFydHMgd2l0aCAnI2luY2x1ZGUnIChzZWUKK3NlY3Rpb24gXGZCVXNpbmcgaW5jbHVkZXNcZlApLiBMaW5lcyBzdGFydGluZyB3aXRoICcjTUlTU0lORzonIGFyZSBzcGVjaWFsCitjb21tZW50cyBkb2N1bWVudGluZyBzeW1ib2xzIHRoYXQgaGF2ZSBkaXNhcHBlYXJlZC4KKy5TUyBVc2luZyAjUEFDS0FHRSMgc3Vic3RpdHV0aW9uCisuUAorSW4gc29tZSByYXJlIGNhc2VzLCB0aGUgbmFtZSBvZiB0aGUgbGlicmFyeSB2YXJpZXMgYmV0d2VlbiBhcmNoaXRlY3R1cmVzLgorVG8gYXZvaWQgaGFyZGNvZGluZyB0aGUgbmFtZSBvZiB0aGUgcGFja2FnZSBpbiB0aGUgc3ltYm9scyBmaWxlLCB5b3UgY2FuCit1c2UgdGhlIG1hcmtlciBcZkkjUEFDS0FHRSNcZlIuIEl0IHdpbGwgYmUgcmVwbGFjZWQgYnkgdGhlIHJlYWwgcGFja2FnZQorbmFtZSBkdXJpbmcgaW5zdGFsbGF0aW9uIG9mIHRoZSBzeW1ib2xzIGZpbGVzLiBDb250cmFyeSB0byB0aGUKK1xmSSNNSU5WRVIjXGZSIG1hcmtlciwgXGZJI1BBQ0tBR0UjXGZSIHdpbGwgbmV2ZXIgYXBwZWFyIGluIGEgc3ltYm9scyBmaWxlCitpbnNpZGUgYSBiaW5hcnkgcGFja2FnZS4KKy5TUyBVc2luZyBzeW1ib2wgdGFncworLlAKK1N5bWJvbCB0YWdnaW5nIGlzIHVzZWZ1bCBmb3IgbWFya2luZyBzeW1ib2xzIHRoYXQgYXJlIHNwZWNpYWwgaW4gc29tZSB3YXkuICBBbnkKK3N5bWJvbCBjYW4gaGF2ZSBhbiBhcmJpdHJhcnkgbnVtYmVyIG9mIHRhZ3MgYXNzb2NpYXRlZCB3aXRoIGl0LiBXaGlsZSBhbGwgdGFncyBhcmUKK3BhcnNlZCBhbmQgc3RvcmVkLCBvbmx5IGEgc29tZSBvZiB0aGVtIGFyZSB1bmRlcnN0b29kIGJ5CitcZkJkcGtnXC1nZW5zeW1ib2xzXGZSIGFuZCB0cmlnZ2VyIHNwZWNpYWwgaGFuZGxpbmcgb2YgdGhlIHN5bWJvbHMuIFNlZQorc3Vic2VjdGlvbiBcZkJTdGFuZGFyZCBzeW1ib2wgdGFnc1xmUiBmb3IgcmVmZXJlbmNlIG9mIHRoZXNlIHRhZ3MuCisuUAorVGFnIHNwZWNpZmljYXRpb24gY29tZXMgcmlnaHQgYmVmb3JlIHRoZSBzeW1ib2wgbmFtZSAobm8gd2hpdGVzcGFjZSBpcyBhbGxvd2VkCitpbiBiZXR3ZWVuKS4gSXQgYWx3YXlzIHN0YXJ0cyB3aXRoIGFuIG9wZW5pbmcgYnJhY2tldCBcZkIoXGZSLCBlbmRzIHdpdGggYQorY2xvc2luZyBicmFja2V0IFxmQilcZlIgYW5kIG11c3QgY29udGFpbiBhdCBsZWFzdCBvbmUgdGFnLiBNdWx0aXBsZSB0YWdzIGFyZQorc2VwYXJhdGVkIGJ5IHRoZSBcZkJ8XGZSIGNoYXJhY3Rlci4gRWFjaCB0YWcgY2FuIG9wdGlvbmFsbHkgaGF2ZSBhIHZhbHVlIHdoaWNoCitpcyBzZXBhcmF0ZWQgZm9ybSB0aGUgdGFnIG5hbWUgYnkgdGhlIFxmQj1cZlIgY2hhcmFjdGVyLiBUYWcgbmFtZXMgYW5kIHZhbHVlcworY2FuIGJlIGFyYml0cmFyeSBzdHJpbmdzIGV4Y2VwdCB0aGV5IGNhbm5vdCBjb250YWluIGFueSBvZiB0aGUgc3BlY2lhbCBcZkIpXGZSCitcZkJ8XGZSIFxmQj1cZlIgY2hhcmFjdGVycy4gU3ltYm9sIG5hbWVzIGZvbGxvd2luZyBhIHRhZyBzcGVjaWZpY2F0aW9uIGNhbgorb3B0aW9uYWxseSBiZSBxdW90ZWQgd2l0aCBlaXRoZXIgXGZCJ1xmUiBvciBcZkIiXGZSIGNoYXJhY3RlcnMgdG8gYWxsb3cKK3doaXRlc3BhY2VzIGluIHRoZW0uIEhvd2V2ZXIsIGlmIHRoZXJlIGFyZSBubyB0YWdzIHNwZWNpZmllZCBmb3IgdGhlIHN5bWJvbCwKK3F1b3RlcyBhcmUgdHJlYXRlZCBhcyBwYXJ0IG9mIHRoZSBzeW1ib2wgbmFtZSB3aGljaCBjb250aW51ZXMgdXAgdW50aWwgdGhlCitmaXJzdCBzcGFjZS4KKy5QCisgKHRhZzE9aSBhbSBtYXJrZWR8dGFnIG5hbWUgd2l0aCBzcGFjZSkidGFnZ2VkIHF1b3RlZCBzeW1ib2wiQEJhc2UgMS4wCisgKG9wdGlvbmFsKXRhZ2dlZF91bnF1b3RlZF9zeW1ib2xAQmFzZSAxLjAgMQorIHVudGFnZ2VkX3N5bWJvbEBCYXNlIDEuMAorLlAKK1RoZSBmaXJzdCBzeW1ib2wgaW4gdGhlIGV4YW1wbGUgaXMgbmFtZWQgXGZJdGFnZ2VkIHF1b3RlZCBzeW1ib2xcZlIgYW5kIGhhcyB0d28KK3RhZ3M6IFxmSXRhZzFcZlIgd2l0aCB2YWx1ZSBcZklpIGFtIG1hcmtlZFxmUiBhbmQgXGZJdGFnIG5hbWUgd2l0aCBzcGFjZVxmUgordGhhdCBoYXMgbm8gdmFsdWUuIFRoZSBzZWNvbmQgc3ltYm9sIG5hbWVkIFxmSXRhZ2dlZF91bnF1b3RlZF9zeW1ib2xcZlIgaXMKK29ubHkgdGFnZ2VkIHdpdGggdGhlIHRhZyBuYW1lZCBcZklvcHRpb25hbFxmUi4gVGhlIGxhc3Qgc3ltYm9sIGlzIGFuCitleGFtcGxlIG9mIHRoZSBub3JtYWwgdW50YWdnZWQgc3ltYm9sLgorLlAKK1NpbmNlIHN5bWJvbCB0YWdzIGFyZSBhbiBleHRlbnNpb24gb2YgdGhlIFxmSWRlYlwtc3ltYm9scyg1KVxmUiBmb3JtYXQsIHRoZXkKK2NhbiBvbmx5IGJlIHBhcnQgb2YgdGhlIHN5bWJvbHMgZmlsZXMgdXNlZCBpbiBzb3VyY2UgcGFja2FnZXMgKHRob3NlIGZpbGVzCitzaG91bGQgdGhlbiBiZSBzZWVuIGFzIHRlbXBsYXRlcyB1c2VkIHRvIGJ1aWxkIHRoZSBzeW1ib2xzIGZpbGVzIHRoYXQgYXJlCitlbWJlZGRlZCBpbiBiaW5hcnkgcGFja2FnZXMpLiBXaGVuCitcZkJkcGtnXC1nZW5zeW1ib2xzXGZSIGlzIGNhbGxlZCB3aXRob3V0IHRoZSBcZklcLXRcZlIgb3B0aW9uLCBpdCB3aWxsCitvdXRwdXQgc3ltYm9scyBmaWxlcyBjb21wYXRpYmxlIHRvIHRoZSBcZklkZWJcLXN5bWJvbHMoNSlcZlIgZm9ybWF0OgoraXQgZnVsbHkgcHJvY2Vzc2VzIHN5bWJvbHMgYWNjb3JkaW5nIHRvIHRoZSByZXF1aXJlbWVudHMgb2YgdGhlaXIgc3RhbmRhcmQgdGFncworYW5kIHN0cmlwcyBhbGwgdGFncyBmcm9tIHRoZSBvdXRwdXQuIE9uIHRoZSBjb250cmFyeSwgaW4gdGVtcGxhdGUgbW9kZQorKFxmSVwtdFxmUikgYWxsIHN5bWJvbHMgYW5kIHRoZWlyIHRhZ3MgKGJvdGggc3RhbmRhcmQgYW5kIHVua25vd24gb25lcykKK2FyZSBrZXB0IGluIHRoZSBvdXRwdXQgYW5kIGFyZSB3cml0dGVuIGluIHRoZWlyIG9yaWdpbmFsIGZvcm0gYXMgdGhleSB3ZXJlCitsb2FkZWQuCisuU1MgU3RhbmRhcmQgc3ltYm9sIHRhZ3MKKy5UUAorLkIgb3B0aW9uYWwKK0Egc3ltYm9sIG1hcmtlZCBhcyBvcHRpb25hbCBjYW4gZGlzYXBwZWFyIGZyb20gdGhlIGxpYnJhcnkgYXQgYW55IHRpbWUgYW5kIHRoYXQKK3dpbGwgbmV2ZXIgY2F1c2UgXGZCZHBrZ1wtZ2Vuc3ltYm9sc1xmUiB0byBmYWlsLiBIb3dldmVyLCBkaXNhcHBlYXJlZCBvcHRpb25hbAorc3ltYm9scyB3aWxsIGNvbnRpbnVvdXNseSBhcHBlYXIgYXMgTUlTU0lORyBpbiB0aGUgZGlmZiBpbiBlYWNoIG5ldyBwYWNrYWdlCityZXZpc2lvbi4gIFRoaXMgYmVoYXZpb3VyIHNlcnZlcyBhcyBhIHJlbWluZGVyIGZvciB0aGUgbWFpbnRhaW5lciB0aGF0IHN1Y2ggYQorc3ltYm9sIG5lZWRzIHRvIGJlIHJlbW92ZWQgZnJvbSB0aGUgc3ltYm9sIGZpbGUgb3IgcmVhZGRlZCB0byB0aGUgbGlicmFyeS4gV2hlbgordGhlIG9wdGlvbmFsIHN5bWJvbCwgd2hpY2ggd2FzIHByZXZpb3VzbHkgZGVjbGFyZWQgYXMgTUlTU0lORywgc3VkZGVubHkKK3JlYXBwZWFycyBpbiB0aGUgbmV4dCByZXZpc2lvbiwgaXQgd2lsbCBiZSB1cGdyYWRlZCBiYWNrIHRvIHRoZSAiZXhpc3RpbmciCitzdGF0dXMgd2l0aCBpdHMgbWluaW11bSB2ZXJzaW9uIHVuY2hhbmdlZC4KKworVGhpcyB0YWcgaXMgdXNlZnVsIGZvciBzeW1ib2xzIHdoaWNoIGFyZSBwcml2YXRlIHdoZXJlIHRoZWlyIGRpc2FwcGVhcmFuY2UgZG8KK25vdCBjYXVzZSBBQkkgYnJlYWthZ2UuIEZvciBleGFtcGxlLCBtb3N0IG9mIEMrKyB0ZW1wbGF0ZSBpbnN0YW50aWF0aW9ucyBmYWxsCitpbnRvIHRoaXMgY2F0ZWdvcnkuIExpa2UgYW55IG90aGVyIHRhZywgdGhpcyBvbmUgbWF5IGFsc28gaGF2ZSBhbiBhcmJpdHJhcnkKK3ZhbHVlOiBpdCBjb3VsZCBiZSB1c2VkIHRvIGluZGljYXRlIHdoeSB0aGUgc3ltYm9sIGlzIGNvbnNpZGVyZWQgb3B0aW9uYWwuCisuVFAKKy5CIGFyY2g9XGZJYXJjaGl0ZWN0dXJlIGxpc3RcZlIKK1RoaXMgdGFnIGFsbG93cyBvbmUgdG8gcmVzdHJpY3QgdGhlIHNldCBvZiBhcmNoaXRlY3R1cmVzIHdoZXJlIHRoZSBzeW1ib2wKK2lzIHN1cHBvc2VkIHRvIGV4aXN0LiBXaGVuIHRoZSBzeW1ib2xzIGxpc3QgaXMgdXBkYXRlZCB3aXRoIHRoZSBzeW1ib2xzCitkaXNjb3ZlcmVkIGluIHRoZSBsaWJyYXJ5LCBhbGwgYXJjaC1zcGVjaWZpYyBzeW1ib2xzIHdoaWNoIGRvIG5vdCBjb25jZXJuCit0aGUgY3VycmVudCBob3N0IGFyY2hpdGVjdHVyZSBhcmUgdHJlYXRlZCBhcyBpZiB0aGV5IGRpZCBub3QgZXhpc3QuIElmIGFuCithcmNoLXNwZWNpZmljIHN5bWJvbCBtYXRjaGluZyB0aGUgY3VycmVudCBob3N0IGFyY2hpdGVjdHVyZSBkb2VzIG5vdCBleGlzdAoraW4gdGhlIGxpYnJhcnksIG5vcm1hbCBwcm9jZWR1cmVzIGZvciBtaXNzaW5nIHN5bWJvbHMgYXBwbHkgYW5kIGl0IG1heQorY2F1c2UgXGZCZHBrZ1wtZ2Vuc3ltYm9sc1xmUiB0byBmYWlsLiBPbiB0aGUgb3RoZXIgaGFuZCwgaWYgdGhlCithcmNoLXNwZWNpZmljIHN5bWJvbCBpcyBmb3VuZCB3aGVuIGl0IHdhcyBub3Qgc3VwcG9zZWQgdG8gZXhpc3QgKGJlY2F1c2UKK3RoZSBjdXJyZW50IGhvc3QgYXJjaGl0ZWN0dXJlIGlzIG5vdCBsaXN0ZWQgaW4gdGhlIHRhZyksIGl0IGlzIG1hZGUgYXJjaAorbmV1dHJhbCAoaS5lLiB0aGUgYXJjaCB0YWcgaXMgZHJvcHBlZCBhbmQgdGhlIHN5bWJvbCB3aWxsIGFwcGVhciBpbiB0aGUKK2RpZmYgZHVlIHRvIHRoaXMgY2hhbmdlKSwgYnV0IGl0IGlzIG5vdCBjb25zaWRlcmVkIGFzIG5ldy4KKworV2hlbiBvcGVyYXRpbmcgaW4gdGhlIGRlZmF1bHQgbm9uLXRlbXBsYXRlIG1vZGUsIGFtb25nIGFyY2gtc3BlY2lmaWMgc3ltYm9scworb25seSB0aG9zZSB0aGF0IG1hdGNoIHRoZSBjdXJyZW50IGhvc3QgYXJjaGl0ZWN0dXJlIGFyZSB3cml0dGVuIHRvIHRoZQorc3ltYm9scyBmaWxlLiBPbiB0aGUgY29udHJhcnksIGFsbCBhcmNoLXNwZWNpZmljIHN5bWJvbHMgKGluY2x1ZGluZyB0aG9zZQorZnJvbSBmb3JlaWduIGFyY2hlcykgYXJlIGFsd2F5cyB3cml0dGVuIHRvIHRoZSBzeW1ib2wgZmlsZSB3aGVuIG9wZXJhdGluZworaW4gdGVtcGxhdGUgbW9kZS4KKworVGhlIGZvcm1hdCBvZiBcZklhcmNoaXRlY3R1cmUgbGlzdFxmUiBpcyB0aGUgc2FtZSBhcyB0aGUgb25lIHVzZWQgaW4gdGhlCitcZklCdWlsZFwtRGVwZW5kc1xmUiBmaWVsZCBvZiBcZklkZWJpYW4vY29udHJvbFxmUiAoZXhjZXB0IHRoZSBlbmNsb3NpbmcKK3NxdWFyZSBicmFja2V0cyBbXSkuIEZvciBleGFtcGxlLCB0aGUgZmlyc3Qgc3ltYm9sIGZyb20gdGhlIGxpc3QgYmVsb3cKK3dpbGwgYmUgY29uc2lkZXJlZCBvbmx5IG9uIGFscGhhLCBhbWQ2NCwga2ZyZWVic2RcLWFtZDY0IGFuZCBpYTY0IGFyY2hpdGVjdHVyZXMKK3doaWxlIHRoZSBzZWNvbmQgb25lIGFueXdoZXJlIGV4Y2VwdCBvbiBhcm1lbC4KKworIChhcmNoPWFscGhhIGFtZDY0IGtmcmVlYnNkXC1hbWQ2NCBpYTY0KWFfNjRiaXRfc3BlY2lmaWNfc3ltYm9sQEJhc2UgMS4wCisgKGFyY2g9IWFybWVsKXN5bWJvbF9hcm1lbF9kb2VzX25vdF9oYXZlQEJhc2UgMS4wCisuVFAKKy5CIGlnbm9yZVwtYmxhY2tsaXN0CitkcGtnXC1nZW5zeW1ib2xzIGhhcyBhbiBpbnRlcm5hbCBibGFja2xpc3Qgb2Ygc3ltYm9scyB0aGF0IHNob3VsZCBub3QKK2FwcGVhciBpbiBzeW1ib2xzIGZpbGVzIGFzIHRoZXkgYXJlIHVzdWFsbHkgb25seSBzaWRlLWVmZmVjdHMgb2YKK2ltcGxlbWVudGF0aW9uIGRldGFpbHMgb2YgdGhlIHRvb2xjaGFpbi4gSWYgZm9yIHNvbWUgcmVhc29uLCB5b3UgcmVhbGx5Cit3YW50IG9uZSBvZiB0aG9zZSBzeW1ib2xzIHRvIGJlIGluY2x1ZGVkIGluIHRoZSBzeW1ib2xzIGZpbGUsIHlvdSBzaG91bGQKK3RhZyB0aGUgc3ltYm9sIHdpdGggXGZCaWdub3JlXC1ibGFja2xpc3RcZlAuIEl0IGNhbiBiZSBuZWNlc3NhcnkgZm9yCitzb21lIGxvdyBsZXZlbCB0b29sY2hhaW4gbGlicmFyaWVzIGxpa2UgbGliZ2NjLgorLlRQCisuQiBjKysKK0Rlbm90ZXMgXGZJYysrXGZSIHN5bWJvbCBwYXR0ZXJuLiBTZWUgXGZCVXNpbmcgc3ltYm9sIHBhdHRlcm5zXGZSIHN1YnNlY3Rpb24KK2JlbG93LgorLlRQCisuQiBzeW12ZXIKK0Rlbm90ZXMgXGZJc3ltdmVyXGZSIChzeW1ib2wgdmVyc2lvbikgc3ltYm9sIHBhdHRlcm4uIFNlZSBcZkJVc2luZyBzeW1ib2wKK3BhdHRlcm5zXGZSIHN1YnNlY3Rpb24gYmVsb3cuCisuVFAKKy5CIHJlZ2V4CitEZW5vdGVzIFxmSXJlZ2V4XGZSIHN5bWJvbCBwYXR0ZXJuLiBTZWUgXGZCVXNpbmcgc3ltYm9sIHBhdHRlcm5zXGZSIHN1YnNlY3Rpb24KK2JlbG93LgorLlNTIFVzaW5nIHN5bWJvbCBwYXR0ZXJucworLlAKK1VubGlrZSBhIHN0YW5kYXJkIHN5bWJvbCBzcGVjaWZpY2F0aW9uLCBhIHBhdHRlcm4gbWF5IGNvdmVyIG11bHRpcGxlIHJlYWwKK3N5bWJvbHMgZnJvbSB0aGUgbGlicmFyeS4gXGZCZHBrZ1wtZ2Vuc3ltYm9sc1xmUiB3aWxsIGF0dGVtcHQgdG8gbWF0Y2ggZWFjaAorcGF0dGVybiBhZ2FpbnN0IGVhY2ggcmVhbCBzeW1ib2wgdGhhdCBkb2VzIFxmSW5vdFxmUiBoYXZlIGEgc3BlY2lmaWMgc3ltYm9sCitjb3VudGVycGFydCBkZWZpbmVkIGluIHRoZSBzeW1ib2wgZmlsZS4gV2hlbmV2ZXIgdGhlIGZpcnN0IG1hdGNoaW5nIHBhdHRlcm4gaXMKK2ZvdW5kLCBhbGwgaXRzIHRhZ3MgYW5kIHByb3BlcnRpZXMgd2lsbCBiZSB1c2VkIGFzIGEgYmFzaXMgc3BlY2lmaWNhdGlvbiBvZiB0aGUKK3N5bWJvbC4gSWYgbm9uZSBvZiB0aGUgcGF0dGVybnMgbWF0Y2hlcywgdGhlIHN5bWJvbCB3aWxsIGJlIGNvbnNpZGVyZWQgYXMgbmV3LgorCitBIHBhdHRlcm4gaXMgY29uc2lkZXJlZCBsb3N0IGlmIGl0IGRvZXMgbm90IG1hdGNoIGFueSBzeW1ib2wgaW4gdGhlIGxpYnJhcnkuIEJ5CitkZWZhdWx0IHRoaXMgd2lsbCB0cmlnZ2VyIGEgXGZCZHBrZ1wtZ2Vuc3ltYm9sc1xmUiBmYWlsdXJlIHVuZGVyIFxmSVwtYzFcZlIgb3IKK2hpZ2hlciBsZXZlbC4gSG93ZXZlciwgaWYgdGhlIGZhaWx1cmUgaXMgdW5kZXNpcmVkLCB0aGUgcGF0dGVybiBtYXkgYmUgbWFya2VkCit3aXRoIHRoZSBcZklvcHRpb25hbFxmUiB0YWcuIFRoZW4gaWYgdGhlIHBhdHRlcm4gZG9lcyBub3QgbWF0Y2ggYW55dGhpbmcsIGl0Cit3aWxsIG9ubHkgYXBwZWFyIGluIHRoZSBkaWZmIGFzIE1JU1NJTkcuIE1vcmVvdmVyLCBsaWtlIGFueSBzeW1ib2wsIHRoZSBwYXR0ZXJuCittYXkgYmUgbGltaXRlZCB0byB0aGUgc3BlY2lmaWMgYXJjaGl0ZWN0dXJlcyB3aXRoIHRoZSBcZklhcmNoXGZSIHRhZy4gUGxlYXNlCityZWZlciB0byBcZkJTdGFuZGFyZCBzeW1ib2wgdGFnc1xmUiBzdWJzZWN0aW9uIGFib3ZlIGZvciBtb3JlIGluZm9ybWF0aW9uLgorCitQYXR0ZXJucyBhcmUgYW4gZXh0ZW5zaW9uIG9mIHRoZSBcZklkZWJcLXN5bWJvbHMoNSlcZlIgZm9ybWF0IGhlbmNlIHRoZXkgYXJlCitvbmx5IHZhbGlkIGluIHN5bWJvbCBmaWxlIHRlbXBsYXRlcy4gUGF0dGVybiBzcGVjaWZpY2F0aW9uIHN5bnRheCBpcyBub3QgYW55CitkaWZmZXJlbnQgZnJvbSB0aGUgb25lIG9mIGEgc3BlY2lmaWMgc3ltYm9sLiBIb3dldmVyLCBzeW1ib2wgbmFtZSBwYXJ0IG9mIHRoZQorc3BlY2lmaWNhdGlvbiBzZXJ2ZXMgYXMgYW4gZXhwcmVzc2lvbiB0byBiZSBtYXRjaGVkIGFnYWluc3QgXGZJbmFtZUB2ZXJzaW9uXGZSCitvZiB0aGUgcmVhbCBzeW1ib2wuIEluIG9yZGVyIHRvIGRpc3Rpbmd1aXNoIGFtb25nIGRpZmZlcmVudCBwYXR0ZXJuIHR5cGVzLCBhCitwYXR0ZXJuIHdpbGwgdHlwaWNhbGx5IGJlIHRhZ2dlZCB3aXRoIGEgc3BlY2lhbCB0YWcuCisKK0F0IHRoZSBtb21lbnQsIFxmQmRwa2dcLWdlbnN5bWJvbHNcZlIgc3VwcG9ydHMgdGhyZWUgYmFzaWMgcGF0dGVybiB0eXBlczoKKy5UUCAzCisuQiBjKysKK1RoaXMgcGF0dGVybiBpcyBkZW5vdGVkIGJ5IHRoZSBcZkljKytcZlIgdGFnLiBJdCBtYXRjaGVzIG9ubHkgQysrIHN5bWJvbHMgYnkKK3RoZWlyIGRlbWFuZ2xlZCBzeW1ib2wgbmFtZSAoYXMgZW1pdHRlZCBieSBcZkJjKytmaWx0XGZSKDEpIHV0aWxpdHkpLiBUaGlzCitwYXR0ZXJuIGlzIHZlcnkgaGFuZHkgZm9yIG1hdGNoaW5nIHN5bWJvbHMgd2hpY2ggbWFuZ2xlZCBuYW1lcyBtaWdodCB2YXJ5CithY3Jvc3MgZGlmZmVyZW50IGFyY2hpdGVjdHVyZXMgd2hpbGUgdGhlaXIgZGVtYW5nbGVkIG5hbWVzIHJlbWFpbiB0aGUgc2FtZS4gT25lCitncm91cCBvZiBzdWNoIHN5bWJvbHMgaXMgXGZJbm9uXC12aXJ0dWFsIHRodW5rc1xmUiB3aGljaCBoYXZlIGFyY2hpdGVjdHVyZQorc3BlY2lmaWMgb2Zmc2V0cyBlbWJlZGRlZCBpbiB0aGVpciBtYW5nbGVkIG5hbWVzLiBBIGNvbW1vbiBpbnN0YW5jZSBvZiB0aGlzCitjYXNlIGlzIGEgdmlydHVhbCBkZXN0cnVjdG9yIHdoaWNoIHVuZGVyIGRpYW1vbmQgaW5oZXJpdGFuY2UgbmVlZHMgYQorbm9uLXZpcnR1YWwgdGh1bmsgc3ltYm9sLiBGb3IgZXhhbXBsZSwgZXZlbiBpZiBfWlRobjhfTjNOU0I2Q2xhc3NERDFFdkBCYXNlIG9uCiszMmJpdCBhcmNoaXRlY3R1cmVzIHdpbGwgcHJvYmFibHkgYmUgX1pUaG4xNl9OM05TQjZDbGFzc0REMUV2QEJhc2Ugb24gNjRiaXQKK29uZXMsIGl0IGNhbiBiZSBtYXRjaGVkIHdpdGggYSBzaW5nbGUgXGZJYysrXGZSIHBhdHRlcm46CisuUlMKKy5QUAorbGliZHVtbXkuc28uMSBsaWJkdW1teTEgI01JTlZFUiMKKyBbLi4uXQorIChjKyspIm5vblwtdmlydHVhbCB0aHVuayB0byBOU0I6OkNsYXNzRDo6fkNsYXNzRCgpQEJhc2UiIDEuMAorIFsuLi5dCisuUAorVGhlIGRlbWFuZ2xlZCBuYW1lIGFib3ZlIGNhbiBiZSBvYnRhaW5lZCBieSBleGVjdXRpbmcgdGhlIGZvbGxvd2luZyBjb21tYW5kOgorLlBQCisgJCBlY2hvICdfWlRobjhfTjNOU0I2Q2xhc3NERDFFdkBCYXNlJyB8IGMrK2ZpbHQKKy5QCitQbGVhc2Ugbm90ZSB0aGF0IHdoaWxlIG1hbmdsZWQgbmFtZSBpcyB1bmlxdWUgaW4gdGhlIGxpYnJhcnkgYnkgZGVmaW5pdGlvbiwKK3RoaXMgaXMgbm90IG5lY2Vzc2FyaWx5IHRydWUgZm9yIGRlbWFuZ2xlZCBuYW1lcy4gQSBjb3VwbGUgb2YgZGlzdGluY3QgcmVhbAorc3ltYm9scyBtYXkgaGF2ZSB0aGUgc2FtZSBkZW1hbmdsZWQgbmFtZS4gRm9yIGV4YW1wbGUsIHRoYXQncyB0aGUgY2FzZSB3aXRoCitub24tdmlydHVhbCB0aHVuayBzeW1ib2xzIGluIGNvbXBsZXggaW5oZXJpdGFuY2UgY29uZmlndXJhdGlvbnMgb3Igd2l0aCBtb3N0Citjb25zdHJ1Y3RvcnMgYW5kIGRlc3RydWN0b3JzIChzaW5jZSBnKysgdHlwaWNhbGx5IGdlbmVyYXRlcyB0d28gcmVhbCBzeW1ib2xzCitmb3IgdGhlbSkuIEhvd2V2ZXIsIGFzIHRoZXNlIGNvbGxpc2lvbnMgaGFwcGVuIG9uIHRoZSBBQkkgbGV2ZWwsIHRoZXkgc2hvdWxkCitub3QgZGVncmFkZSBxdWFsaXR5IG9mIHRoZSBzeW1ib2wgZmlsZS4KKy5SRQorLlRQCisuQiBzeW12ZXIKK1RoaXMgcGF0dGVybiBpcyBkZW5vdGVkIGJ5IHRoZSBcZklzeW12ZXJcZlIgdGFnLiBXZWxsIG1haW50YWluZWQgbGlicmFyaWVzIGhhdmUKK3ZlcnNpb25lZCBzeW1ib2xzIHdoZXJlIGVhY2ggdmVyc2lvbiBjb3JyZXNwb25kcyB0byB0aGUgdXBzdHJlYW0gdmVyc2lvbiB3aGVyZQordGhlIHN5bWJvbCBnb3QgYWRkZWQuIElmIHRoYXQncyB0aGUgY2FzZSwgeW91IGNhbiB1c2UgYSBcZklzeW12ZXJcZlIgcGF0dGVybiB0bworbWF0Y2ggYW55IHN5bWJvbCBhc3NvY2lhdGVkIHRvIHRoZSBzcGVjaWZpYyB2ZXJzaW9uLiBGb3IgZXhhbXBsZToKKy5SUworLlBQCitsaWJjLnNvLjYgbGliYzYgI01JTlZFUiMKKyAoc3ltdmVyKUdMSUJDXzIuMCAyLjAKKyBbLi4uXQorIChzeW12ZXIpR0xJQkNfMi43IDIuNworIGFjY2Vzc0BHTElCQ18yLjAgMi4yCisuUFAKK0FsbCBzeW1ib2xzIGFzc29jaWF0ZWQgd2l0aCB2ZXJzaW9ucyBHTElCQ18yLjAgYW5kIEdMSUJDXzIuNyB3aWxsIGxlYWQgdG8KK21pbmltYWwgdmVyc2lvbiBvZiAyLjAgYW5kIDIuNyByZXNwZWN0aXZlbHkgd2l0aCB0aGUgZXhjZXB0aW9uIG9mIHRoZSBzeW1ib2wKK2FjY2Vzc0BHTElCQ18yLjAuIFRoZSBsYXR0ZXIgd2lsbCBsZWFkIHRvIGEgbWluaW1hbCBkZXBlbmRlbmN5IG9uIGxpYmM2IHZlcnNpb24KKzIuMiBkZXNwaXRlIGJlaW5nIGluIHRoZSBzY29wZSBvZiB0aGUgIihzeW12ZXIpR0xJQkNfMi4wIiBwYXR0ZXJuIGJlY2F1c2UKK3NwZWNpZmljIHN5bWJvbHMgdGFrZSBwcmVjZWRlbmNlIG92ZXIgcGF0dGVybnMuCisuUAorUGxlYXNlIG5vdGUgdGhhdCB3aGlsZSBvbGQgc3R5bGUgd2lsZGNhcmQgcGF0dGVybnMgKGRlbm90ZWQgYnkgIipAdmVyc2lvbiIgaW4KK3RoZSBzeW1ib2wgbmFtZSBmaWVsZCkgYXJlIHN0aWxsIHN1cHBvcnRlZCwgdGhleSBoYXZlIGJlZW4gZGVwcmVjYXRlZCBieSBuZXcKK3N0eWxlIHN5bnRheCAiKHN5bXZlcnxvcHRpb25hbCl2ZXJzaW9uIi4gRm9yIGV4YW1wbGUsICIqQEdMSUJDXzIuMCAyLjAiIHNob3VsZAorYmUgd3JpdHRlbiBhcyAiKHN5bXZlcnxvcHRpb25hbClHTElCQ18yLjAgMi4wIiBpZiB0aGUgc2FtZSBiZWhhdmlvdXIgaXMgbmVlZGVkLgorLlJFCisuVFAKKy5CIHJlZ2V4CitSZWd1bGFyIGV4cHJlc3Npb24gcGF0dGVybnMgYXJlIGRlbm90ZWQgYnkgdGhlIFxmSXJlZ2V4XGZSIHRhZy4gVGhleSBtYXRjaCBieQordGhlIHBlcmwgcmVndWxhciBleHByZXNzaW9uIHNwZWNpZmllZCBpbiB0aGUgc3ltYm9sIG5hbWUgZmllbGQuIEEgcmVndWxhcgorZXhwcmVzc2lvbiBpcyBtYXRjaGVkIGFzIGl0IGlzLCB0aGVyZWZvcmUgZG8gbm90IGZvcmdldCB0byBzdGFydCBpdCB3aXRoIHRoZQorXGZJXlxmUiBjaGFyYWN0ZXIgb3IgaXQgbWF5IG1hdGNoIGFueSBwYXJ0IG9mIHRoZSByZWFsIHN5bWJvbAorXGZJbmFtZUB2ZXJzaW9uXGZSIHN0cmluZy4gRm9yIGV4YW1wbGU6CisuUlMKKy5QUAorbGliZHVtbXkuc28uMSBsaWJkdW1teTEgI01JTlZFUiMKKyAocmVnZXgpIl5teXN0YWNrXy4qQEJhc2UkIiAxLjAKKyAocmVnZXh8b3B0aW9uYWwpInByaXZhdGUiIDEuMAorLlAKK1N5bWJvbHMgbGlrZSAibXlzdGFja19uZXdAQmFzZSIsICJteXN0YWNrX3B1c2hAQmFzZSIsICJteXN0YWNrX3BvcEBCYXNlIiBldGMuCit3aWxsIGJlIG1hdGNoZWQgYnkgdGhlIGZpcnN0IHBhdHRlcm4gd2hpbGUgZS5nLiAibmdfbXlzdGFja19uZXdAQmFzZSIgd29uJ3QuCitUaGUgc2Vjb25kIHBhdHRlcm4gd2lsbCBtYXRjaCBhbGwgc3ltYm9scyBoYXZpbmcgdGhlIHN0cmluZyAicHJpdmF0ZSIgaW4gdGhlaXIKK25hbWVzIGFuZCBtYXRjaGVzIHdpbGwgaW5oZXJpdCBcZklvcHRpb25hbFxmUiB0YWcgZnJvbSB0aGUgcGF0dGVybi4KKy5SRQorLlAKK0Jhc2ljIHBhdHRlcm5zIGxpc3RlZCBhYm92ZSBjYW4gYmUgY29tYmluZWQgd2hlcmUgaXQgbWFrZXMgc2Vuc2UuIEluIHRoYXQgY2FzZSwKK3RoZXkgYXJlIHByb2Nlc3NlZCBpbiB0aGUgb3JkZXIgaW4gd2hpY2ggdGhlIHRhZ3MgYXJlIHNwZWNpZmllZC4gRm9yIGV4YW1wbGUsCitib3RoCisuUFAKKyAoYysrfHJlZ2V4KSJeTlNBOjpDbGFzc0E6OlByaXZhdGU6OnByaXZtZXRob2RcXGRcXChpbnRcXClAQmFzZSIgMS4wCisgKHJlZ2V4fGMrKylOM05TQTZDbGFzc0E3UHJpdmF0ZTExcHJpdm1ldGhvZFxcZEVpQEJhc2UgMS4wCisuUAord2lsbCBtYXRjaCBzeW1ib2xzICJfWk4zTlNBNkNsYXNzQTdQcml2YXRlMTFwcml2bWV0aG9kMUVpQEJhc2UiIGFuZAorIl9aTjNOU0E2Q2xhc3NBN1ByaXZhdGUxMXByaXZtZXRob2QyRWlAQmFzZSIuIFdoZW4gbWF0Y2hpbmcgdGhlIGZpcnN0IHBhdHRlcm4sCit0aGUgcmF3IHN5bWJvbCBpcyBmaXJzdCBkZW1hbmdsZWQgYXMgQysrIHN5bWJvbCwgdGhlbiB0aGUgZGVtYW5nbGVkIG5hbWUgaXMKK21hdGNoZWQgYWdhaW5zdCB0aGUgcmVndWxhciBleHByZXNzaW9uLiBPbiB0aGUgb3RoZXIgaGFuZCwgd2hlbiBtYXRjaGluZyB0aGUKK3NlY29uZCBwYXR0ZXJuLCByZWd1bGFyIGV4cHJlc3Npb24gaXMgbWF0Y2hlZCBhZ2FpbnN0IHRoZSByYXcgc3ltYm9sIG5hbWUsIHRoZW4KK3RoZSBzeW1ib2wgaXMgdGVzdGVkIGlmIGl0IGlzIEMrKyBvbmUgYnkgYXR0ZW1wdGluZyB0byBkZW1hbmdsZSBpdC4gQSBmYWlsdXJlCitvZiBhbnkgYmFzaWMgcGF0dGVybiB3aWxsIHJlc3VsdCBpbiB0aGUgZmFpbHVyZSBvZiB0aGUgd2hvbGUgcGF0dGVybi4KK1RoZXJlZm9yZSwgZm9yIGV4YW1wbGUsICJfX04zTlNBNkNsYXNzQTdQcml2YXRlMTFwcml2bWV0aG9kXFxkRWlAQmFzZSIgd2lsbCBub3QKK21hdGNoIGVpdGhlciBvZiB0aGUgcGF0dGVybnMgYmVjYXVzZSBpdCBpcyBub3QgYSB2YWxpZCBDKysgc3ltYm9sLgorLlAKK0luIGdlbmVyYWwsIGFsbCBwYXR0ZXJucyBhcmUgZGl2aWRlZCBpbnRvIHR3byBncm91cHM6IGFsaWFzZXMgKGJhc2ljIFxmSWMrK1xmUgorYW5kIFxmSXN5bXZlclxmUikgYW5kIGdlbmVyaWMgcGF0dGVybnMgKFxmSXJlZ2V4XGZSLCBhbGwgY29tYmluYXRpb25zIG9mCittdWx0aXBsZSBiYXNpYyBwYXR0ZXJucykuIE1hdGNoaW5nIG9mIGJhc2ljIGFsaWFzLWJhc2VkIHBhdHRlcm5zIGlzIGZhc3QgKE8oMSkpCit3aGlsZSBnZW5lcmljIHBhdHRlcm5zIGFyZSBPKE4pIChOIC0gZ2VuZXJpYyBwYXR0ZXJuIGNvdW50KSBmb3IgZWFjaCBzeW1ib2wuCitUaGVyZWZvcmUsIGl0IGlzIHJlY29tbWVuZGVkIG5vdCB0byBvdmVydXNlIGdlbmVyaWMgcGF0dGVybnMuCisuUAorV2hlbiBtdWx0aXBsZSBwYXR0ZXJucyBtYXRjaCB0aGUgc2FtZSByZWFsIHN5bWJvbCwgYWxpYXNlcyAoZmlyc3QgXGZJYysrXGZSLAordGhlbiBcZklzeW12ZXJcZlIpIGFyZSBwcmVmZXJyZWQgb3ZlciBnZW5lcmljIHBhdHRlcm5zLiBHZW5lcmljIHBhdHRlcm5zIGFyZQorbWF0Y2hlZCBpbiB0aGUgb3JkZXIgdGhleSBhcmUgZm91bmQgaW4gdGhlIHN5bWJvbCBmaWxlIHRlbXBsYXRlIHVudGlsIHRoZSBmaXJzdAorc3VjY2Vzcy4gIFBsZWFzZSBub3RlLCBob3dldmVyLCB0aGF0IG1hbnVhbCByZW9yZGVyaW5nIG9mIHRlbXBsYXRlIGZpbGUgZW50cmllcworaXMgbm90IHJlY29tbWVuZGVkIGJlY2F1c2UgXGZCZHBrZ1wtZ2Vuc3ltYm9sc1xmUiBnZW5lcmF0ZXMgZGlmZnMgYmFzZWQgb24gdGhlCithbHBoYW51bWVyaWNhbCBvcmRlciBvZiB0aGVpciBuYW1lcy4KKy5TUyBVc2luZyBpbmNsdWRlcworLlAKK1doZW4gdGhlIHNldCBvZiBleHBvcnRlZCBzeW1ib2xzIGRpZmZlciBiZXR3ZWVuIGFyY2hpdGVjdHVyZXMsIGl0IG1heSBiZWNvbWUKK2luZWZmaWNpZW50IHRvIHVzZSBhIHNpbmdsZSBzeW1ib2wgZmlsZS4gSW4gdGhvc2UgY2FzZXMsIGFuIGluY2x1ZGUgZGlyZWN0aXZlCittYXkgcHJvdmUgdG8gYmUgdXNlZnVsIGluIGEgY291cGxlIG9mIHdheXM6CisuSVAgXChidSA0CitZb3UgY2FuIGZhY3Rvcml6ZSB0aGUgY29tbW9uIHBhcnQgaW4gc29tZSBleHRlcm5hbCBmaWxlCithbmQgaW5jbHVkZSB0aGF0IGZpbGUgaW4geW91ciBcZklwYWNrYWdlXGZSLnN5bWJvbHMuXGZJYXJjaFxmUiBmaWxlIGJ5Cit1c2luZyBhbiBpbmNsdWRlIGRpcmVjdGl2ZSBsaWtlIHRoaXM6CisKKyNpbmNsdWRlICJcZklwYWNrYWdlc1xmUi5zeW1ib2xzLmNvbW1vbiIKKy5JUCBcKGJ1CitUaGUgaW5jbHVkZSBkaXJlY3RpdmUgbWF5IGFsc28gYmUgdGFnZ2VkIGxpa2UgYW55IHN5bWJvbDoKKworKHRhZ3wuLnx0YWdOKSNpbmNsdWRlICJmaWxlLXRvLWluY2x1ZGUiCisKK0FzIGEgcmVzdWx0LCBhbGwgc3ltYm9scyBpbmNsdWRlZCBmcm9tIFxmSWZpbGUtdG8taW5jbHVkZVxmUiB3aWxsIGJlIGNvbnNpZGVyZWQKK3RvIGJlIHRhZ2dlZCB3aXRoIFxmSXRhZ1xmUiAuLiBcZkl0YWdOXGZSIGJ5IGRlZmF1bHQuIFlvdSBjYW4gdXNlIHRoaXMgZmVhdHVyZQordG8gY3JlYXRlIGEgY29tbW9uIFxmSXBhY2thZ2VcZlIuc3ltYm9scyBmaWxlIHdoaWNoIGluY2x1ZGVzIGFyY2hpdGVjdHVyZQorc3BlY2lmaWMgc3ltYm9sIGZpbGVzOgorCisgIGNvbW1vbl9zeW1ib2wxQEJhc2UgMS4wCisgKGFyY2g9YW1kNjQgaWE2NCBhbHBoYSkjaW5jbHVkZSAicGFja2FnZS5zeW1ib2xzLjY0Yml0IgorIChhcmNoPSFhbWQ2NCAhaWE2NCAhYWxwaGEpI2luY2x1ZGUgInBhY2thZ2Uuc3ltYm9scy4zMmJpdCIKKyAgY29tbW9uX3N5bWJvbDJAQmFzZSAxLjAKKy5QCitUaGUgc3ltYm9scyBmaWxlcyBhcmUgcmVhZCBsaW5lIGJ5IGxpbmUsIGFuZCBpbmNsdWRlIGRpcmVjdGl2ZXMgYXJlIHByb2Nlc3NlZAorYXMgc29vbiBhcyB0aGV5IGFyZSBlbmNvdW50ZXJlZC4gVGhpcyBtZWFucyB0aGF0IHRoZSBjb250ZW50IG9mIHRoZSBpbmNsdWRlZAorZmlsZSBjYW4gb3ZlcnJpZGUgYW55IGNvbnRlbnQgdGhhdCBhcHBlYXJlZCBiZWZvcmUgdGhlIGluY2x1ZGUgZGlyZWN0aXZlIGFuZAordGhhdCBhbnkgY29udGVudCBhZnRlciB0aGUgZGlyZWN0aXZlIGNhbiBvdmVycmlkZSBhbnl0aGluZyBjb250YWluZWQgaW4gdGhlCitpbmNsdWRlZCBmaWxlLiBBbnkgc3ltYm9sIChvciBldmVuIGFub3RoZXIgI2luY2x1ZGUgZGlyZWN0aXZlKSBpbiB0aGUgaW5jbHVkZWQKK2ZpbGUgY2FuIHNwZWNpZnkgYWRkaXRpb25hbCB0YWdzIG9yIG92ZXJyaWRlIHZhbHVlcyBvZiB0aGUgaW5oZXJpdGVkIHRhZ3MgaW4KK2l0cyB0YWcgc3BlY2lmaWNhdGlvbi4gSG93ZXZlciwgdGhlcmUgaXMgbm8gd2F5IGZvciB0aGUgc3ltYm9sIHRvIHJlbW92ZQorYW55IG9mIHRoZSBpbmhlcml0ZWQgdGFncy4KKy5QCitBbiBpbmNsdWRlZCBmaWxlIGNhbiByZXBlYXQgdGhlIGhlYWRlciBsaW5lIGNvbnRhaW5pbmcgdGhlIFNPTkFNRSBvZiB0aGUKK2xpYnJhcnkuIEluIHRoYXQgY2FzZSwgaXQgb3ZlcnJpZGVzIGFueSBoZWFkZXIgbGluZSBwcmV2aW91c2x5IHJlYWQuCitIb3dldmVyLCBpbiBnZW5lcmFsIGl0J3MgYmVzdCB0byBhdm9pZCBkdXBsaWNhdGluZyBoZWFkZXIgbGluZXMuIE9uZSB3YXkKK3RvIGRvIGl0IGlzIHRoZSBmb2xsb3dpbmc6CisuUFAKKyNpbmNsdWRlICJsaWJzb21ldGhpbmcxLnN5bWJvbHMuY29tbW9uIgorIGFyY2hfc3BlY2lmaWNfc3ltYm9sQEJhc2UgMS4wCisuU1MgR29vZCBsaWJyYXJ5IG1hbmFnZW1lbnQKKy5QCitBIHdlbGwtbWFpbnRhaW5lZCBsaWJyYXJ5IGhhcyB0aGUgZm9sbG93aW5nIGZlYXR1cmVzOgorLklQIFwoYnUgNAoraXRzIEFQSSBpcyBzdGFibGUgKHB1YmxpYyBzeW1ib2xzIGFyZSBuZXZlciBkcm9wcGVkLCBvbmx5IG5ldyBwdWJsaWMKK3N5bWJvbHMgYXJlIGFkZGVkKSBhbmQgY2hhbmdlcyBpbiBpbmNvbXBhdGlibGUgd2F5cyBvbmx5IHdoZW4gdGhlIFNPTkFNRQorY2hhbmdlczsKKy5JUCBcKGJ1IDQKK2lkZWFsbHksIGl0IHVzZXMgc3ltYm9sIHZlcnNpb25pbmcgdG8gYWNoaWV2ZSBBQkkgc3RhYmlsaXR5IGRlc3BpdGUKK2ludGVybmFsIGNoYW5nZXMgYW5kIEFQSSBleHRlbnNpb247CisuSVAgXChidSA0CitpdCBkb2Vzbid0IGV4cG9ydCBwcml2YXRlIHN5bWJvbHMgKHN1Y2ggc3ltYm9scyBjYW4gYmUgdGFnZ2VkIG9wdGlvbmFsIGFzCit3b3JrYXJvdW5kKS4KKy5QCitXaGlsZSBtYWludGFpbmluZyB0aGUgc3ltYm9scyBmaWxlLCBpdCdzIGVhc3kgdG8gbm90aWNlIGFwcGVhcmFuY2UgYW5kCitkaXNhcHBlYXJhbmNlIG9mIHN5bWJvbHMuIEJ1dCBpdCdzIG1vcmUgZGlmZmljdWx0IHRvIGNhdGNoIGluY29tcGF0aWJsZQorQVBJIGFuZCBBQkkgY2hhbmdlLiBUaHVzIHRoZSBtYWludGFpbmVyIHNob3VsZCByZWFkIHRob3JvdWdobHkgdGhlCit1cHN0cmVhbSBjaGFuZ2Vsb2cgbG9va2luZyBmb3IgY2FzZXMgd2hlcmUgdGhlIHJ1bGVzIG9mIGdvb2QgbGlicmFyeQorbWFuYWdlbWVudCBoYXZlIGJlZW4gYnJva2VuLiBJZiBwb3RlbnRpYWwgcHJvYmxlbXMgYXJlIGRpc2NvdmVyZWQsCit0aGUgdXBzdHJlYW0gYXV0aG9yIHNob3VsZCBiZSBub3RpZmllZCBhcyBhbiB1cHN0cmVhbSBmaXggaXMgYWx3YXlzIGJldHRlcgordGhhbiBhIERlYmlhbiBzcGVjaWZpYyB3b3JrLWFyb3VuZC4KKy5TSCBPUFRJT05TCisuVFAKKy5CSSBcLVAgcGFja2FnZS1idWlsZC1kaXIKK1NjYW4gXGZJcGFja2FnZS1idWlsZC1kaXJcZlIgaW5zdGVhZCBvZiBkZWJpYW4vdG1wLgorLlRQCisuQkkgXC1wIHBhY2thZ2UKK0RlZmluZSB0aGUgcGFja2FnZSBuYW1lLiBSZXF1aXJlZCBpZiBtb3JlIHRoYW4gb25lIGJpbmFyeSBwYWNrYWdlIGlzIGxpc3RlZCBpbgorZGViaWFuL2NvbnRyb2wgKG9yIGlmIHRoZXJlJ3Mgbm8gZGViaWFuL2NvbnRyb2wgZmlsZSkuCisuVFAKKy5CSSBcLXYgdmVyc2lvbgorRGVmaW5lIHRoZSBwYWNrYWdlIHZlcnNpb24uIERlZmF1bHRzIHRvIHRoZSB2ZXJzaW9uIGV4dHJhY3RlZCBmcm9tCitkZWJpYW4vY2hhbmdlbG9nLiBSZXF1aXJlZCBpZiBjYWxsZWQgb3V0c2lkZSBvZiBhIHNvdXJjZSBwYWNrYWdlIHRyZWUuCisuVFAKKy5CSSBcLWUgbGlicmFyeS1maWxlCitPbmx5IGFuYWx5emUgbGlicmFyaWVzIGV4cGxpY2l0bHkgbGlzdGVkIGluc3RlYWQgb2YgZmluZGluZyBhbGwgcHVibGljCitsaWJyYXJpZXMuIFlvdSBjYW4gdXNlIGEgcmVndWxhciBleHByZXNzaW9uIGluIFxmSWxpYnJhcnktZmlsZVxmUiB0byBtYXRjaAorbXVsdGlwbGUgbGlicmFyaWVzIHdpdGggYSBzaW5nbGUgYXJndW1lbnQgKG90aGVyd2lzZSB5b3UgbmVlZCBtdWx0aXBsZQorXGZCXC1lXGZSKS4KKy5UUAorLkJJIFwtSSBmaWxlbmFtZQorVXNlIFxmSWZpbGVuYW1lXGZSIGFzIHJlZmVyZW5jZSBmaWxlIHRvIGdlbmVyYXRlIHRoZSBzeW1ib2xzIGZpbGUKK3RoYXQgaXMgaW50ZWdyYXRlZCBpbiB0aGUgcGFja2FnZSBpdHNlbGYuCisuVFAKKy5CIFwtTworUHJpbnQgdGhlIGdlbmVyYXRlZCBzeW1ib2xzIGZpbGUgdG8gc3RhbmRhcmQgb3V0cHV0LCByYXRoZXIgdGhhbiBiZWluZworc3RvcmVkIGluIHRoZSBwYWNrYWdlIGJ1aWxkIHRyZWUuCisuVFAgCisuQkkgXC1PIGZpbGVuYW1lCitTdG9yZSB0aGUgZ2VuZXJhdGVkIHN5bWJvbHMgZmlsZSBhcyBcZklmaWxlbmFtZVxmUi4gSWYgXGZJZmlsZW5hbWVcZlIgaXMKK3ByZS1leGlzdGluZywgaXRzIGNvbnRlbnQgaXMgdXNlZCBhcyBiYXNpcyBmb3IgdGhlIGdlbmVyYXRlZCBzeW1ib2xzIGZpbGUuCitZb3UgY2FuIHVzZSB0aGlzIGZlYXR1cmUgdG8gdXBkYXRlIGEgc3ltYm9scyBmaWxlIHNvIHRoYXQgaXQgbWF0Y2hlcyBhCituZXdlciB1cHN0cmVhbSB2ZXJzaW9uIG9mIHlvdXIgbGlicmFyeS4KKy5UUAorLkJJIFwtdAorV3JpdGUgdGhlIHN5bWJvbCBmaWxlIGluIHRlbXBsYXRlIG1vZGUgcmF0aGVyIHRoYW4gdGhlIGZvcm1hdCBjb21wYXRpYmxlIHdpdGgKK1xmSWRlYlwtc3ltYm9scyg1KVxmUi4gVGhlIG1haW4gZGlmZmVyZW5jZSBpcyB0aGF0IGluIHRoZSB0ZW1wbGF0ZSBtb2RlIHN5bWJvbAorbmFtZXMgYW5kIHRhZ3MgYXJlIHdyaXR0ZW4gaW4gdGhlaXIgb3JpZ2luYWwgZm9ybSBjb250cmFyeSB0byB0aGUKK3Bvc3QtcHJvY2Vzc2VkIHN5bWJvbCBuYW1lcyB3aXRoIHRhZ3Mgc3RyaXBwZWQgaW4gdGhlIGNvbXBhdGliaWxpdHkgbW9kZS4KK01vcmVvdmVyLCBzb21lIHN5bWJvbHMgbWlnaHQgYmUgb21pdHRlZCB3aGVuIHdyaXRpbmcgYSBzdGFuZGFyZAorXGZJZGViXC1zeW1ib2xzKDUpXGZSIGZpbGUgKGFjY29yZGluZyB0byB0aGUgdGFnIHByb2Nlc3NpbmcgcnVsZXMpIHdoaWxlIGFsbAorc3ltYm9scyBhcmUgYWx3YXlzIHdyaXR0ZW4gdG8gdGhlIHN5bWJvbCBmaWxlIHRlbXBsYXRlLgorLlRQCisuQkkgXC1jIFswLTRdCitEZWZpbmUgdGhlIGNoZWNrcyB0byBkbyB3aGVuIGNvbXBhcmluZyB0aGUgZ2VuZXJhdGVkIHN5bWJvbHMgZmlsZSB3aXRoIHRoZQordGVtcGxhdGUgZmlsZSB1c2VkIGFzIHN0YXJ0aW5nIHBvaW50LiBCeSBkZWZhdWx0IHRoZSBsZXZlbCBpcyAxLiBJbmNyZWFzaW5nCitsZXZlbHMgZG8gbW9yZSBjaGVja3MgYW5kIGluY2x1ZGUgYWxsIGNoZWNrcyBvZiBsb3dlciBsZXZlbHMuIExldmVsIDAgbmV2ZXIKK2ZhaWxzLiBMZXZlbCAxIGZhaWxzIGlmIHNvbWUgc3ltYm9scyBoYXZlIGRpc2FwcGVhcmVkLiBMZXZlbCAyIGZhaWxzIGlmIHNvbWUKK25ldyBzeW1ib2xzIGhhdmUgYmVlbiBpbnRyb2R1Y2VkLiBMZXZlbCAzIGZhaWxzIGlmIHNvbWUgbGlicmFyaWVzIGhhdmUKK2Rpc2FwcGVhcmVkLiBMZXZlbCA0IGZhaWxzIGlmIHNvbWUgbGlicmFyaWVzIGhhdmUgYmVlbiBpbnRyb2R1Y2VkLgorCitUaGlzIHZhbHVlIGNhbiBiZSBvdmVycmlkZGVuIGJ5IHRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZQorRFBLR19HRU5TWU1CT0xTX0NIRUNLX0xFVkVMLgorLlRQCisuQkkgXC1xCitLZWVwIHF1aWV0IGFuZCBuZXZlciBnZW5lcmF0ZSBhIGRpZmYgYmV0d2VlbiBnZW5lcmF0ZWQgc3ltYm9scyBmaWxlIGFuZCB0aGUKK3RlbXBsYXRlIGZpbGUgdXNlZCBhcyBzdGFydGluZyBwb2ludCBvciBzaG93IGFueSB3YXJuaW5ncyBhYm91dCBuZXcvbG9zdAorbGlicmFyaWVzIG9yIG5ldy9sb3N0IHN5bWJvbHMuIFRoaXMgb3B0aW9uIG9ubHkgZGlzYWJsZXMgaW5mb3JtYXRpb25hbCBvdXRwdXQKK2J1dCBub3QgdGhlIGNoZWNrcyB0aGVtc2VsdmVzIChzZWUgXGZJXC1jXGZSIG9wdGlvbikuCisuVFAKKy5CSSBcLWEgYXJjaAorQXNzdW1lIFxmSWFyY2hcZlIgYXMgaG9zdCBhcmNoaXRlY3R1cmUgd2hlbiBwcm9jZXNzaW5nIHN5bWJvbCBmaWxlcy4gVXNlIHRoaXMKK29wdGlvbiB0byBnZW5lcmF0ZSBhIHN5bWJvbCBmaWxlIG9yIGRpZmYgZm9yIGFueSBhcmNoaXRlY3R1cmUgcHJvdmlkZWQgaXRzCitiaW5hcmllcyBhcmUgYWxyZWFkeSBhdmFpbGFibGUuCisuVFAKKy5CSSBcLWQKK0VuYWJsZSBkZWJ1ZyBtb2RlLiBOdW1lcm91cyBtZXNzYWdlcyBhcmUgZGlzcGxheWVkIHRvIGV4cGxhaW4gd2hhdCAKKy5CIGRwa2dcLWdlbnN5bWJvbHMKK2RvZXMuCisuVFAKKy5CSSBcLVYKK0VuYWJsZSB2ZXJib3NlIG1vZGUuIFRoZSBnZW5lcmF0ZWQgc3ltYm9scyBmaWxlIGNvbnRhaW5zIGRlcHJlY2F0ZWQKK3N5bWJvbHMgYXMgY29tbWVudHMuIEZ1cnRoZXJtb3JlIGluIHRlbXBsYXRlIG1vZGUsIHBhdHRlcm4gc3ltYm9scworYXJlIGZvbGxvd2VkIGJ5IGNvbW1lbnRzIGxpc3RpbmcgcmVhbCBzeW1ib2xzIHRoYXQgaGF2ZSBtYXRjaGVkIHRoZQorcGF0dGVybi4KKy5UUAorLkJSIFwtaCAiLCAiIFwtXC1oZWxwCitTaG93IHRoZSB1c2FnZSBtZXNzYWdlIGFuZCBleGl0LgorLlRQCisuQlIgXC1cLXZlcnNpb24KK1Nob3cgdGhlIHZlcnNpb24gYW5kIGV4aXQuCisuCisuU0ggIlNFRSBBTFNPIgorLkJSIGh0dHA6Ly9wZW9wbGUucmVkaGF0LmNvbS9kcmVwcGVyL3N5bWJvbFwtdmVyc2lvbmluZworLmJyCisuQlIgaHR0cDovL3Blb3BsZS5yZWRoYXQuY29tL2RyZXBwZXIvZ29vZHByYWN0aWNlLnBkZgorLmJyCisuQlIgaHR0cDovL3Blb3BsZS5yZWRoYXQuY29tL2RyZXBwZXIvZHNvaG93dG8ucGRmCisuYnIKKy5CUiBkZWJcLXN5bWJvbHMgKDUpLAorLkJSIGRwa2dcLXNobGliZGVwcyAoMSkuCisuCisuU0ggQVVUSE9SUworQ29weXJpZ2h0IFwoY28gMjAwNy0yMDA5IFJhcGhhXFs6ZV1sIEhlcnR6b2cKKy5zcAorVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbmNlIHZlcnNpb24gMiBvciBsYXRlcgorZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gV0FSUkFOVFkuCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9kcGtnLW1haW50c2NyaXB0LWhlbHBlci4xIGIvZHBrZy0xLjE2LjEuMS9tYW4vZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xM2M0ZDc4Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMQpAQCAtMCwwICsxLDEzOSBAQAorLlRIIGRwa2dcLW1haW50c2NyaXB0XC1oZWxwZXIgMSAiMjAxMS0wOC0xNCIgIkRlYmlhbiBQcm9qZWN0IiAiZHBrZyBzdWl0ZSIKKy5TSCBOQU1FCitkcGtnXC1tYWludHNjcmlwdFwtaGVscGVyIFwtIHdvcmtzIGFyb3VuZCBrbm93biBkcGtnIGxpbWl0YXRpb25zIGluIG1haW50YWluZXIgc2NyaXB0cworLgorLlNIIFNZTk9QU0lTCisuQiBkcGtnXC1tYWludHNjcmlwdFwtaGVscGVyCisuSVIgY29tbWFuZCAiIFsiIHBhcmFtZXRlciAiLi4uXSBcZkJcLVwtXGZQICIgbWFpbnQtc2NyaXB0LXBhcmFtZXRlciAuLi4KKy4KKy5TSCBDT01NQU5EUyBBTkQgUEFSQU1FVEVSUworLlAKK1xmQnJtX2NvbmZmaWxlXGZQIFxmSWNvbmZmaWxlXGZQIFtcZklsYXN0dmVyc2lvblxmUCBbXGZJcGFja2FnZVxmUF1dCisuUAorXGZCbXZfY29uZmZpbGVcZlAgXGZJb2xkY29uZmZpbGVcZlAgXGZJbmV3Y29uZmZpbGVcZlAgW1xmSWxhc3R2ZXJzaW9uXGZQIFtcZklwYWNrYWdlXGZQXV0KKy4KKy5TSCBERVNDUklQVElPTgorLlAKK1RoaXMgcHJvZ3JhbSBpcyBkZXNpZ25lZCB0byBiZSBydW4gd2l0aGluIG1haW50YWluZXIgc2NyaXB0cyB0byBhY2hpZXZlCitzb21lIHRhc2tzIHRoYXQgZHBrZyBjYW4ndCAoeWV0KSBoYW5kbGUgbmF0aXZlbHkgZWl0aGVyIGJlY2F1c2Ugb2YgZGVzaWduCitkZWNpc2lvbnMgb3IgZHVlIHRvIGN1cnJlbnQgbGltaXRhdGlvbnMuCisuUAorTWFueSBvZiB0aG9zZSB0YXNrcyByZXF1aXJlIGNvb3JkaW5hdGVkIGFjdGlvbnMgZnJvbSBzZXZlcmFsIG1haW50YWluZXIKK3NjcmlwdHMgKFxmQnByZWluc3RcZlAsIFxmQnBvc3RpbnN0XGZQLCBcZkJwcmVybVxmUCwgXGZCcG9zdHJtXGZQKS4gVG8KK2F2b2lkIG1pc3Rha2VzIHRoZSBzYW1lIGNhbGwgc2ltcGx5IG5lZWRzIHRvIGJlIHB1dCBpbiBhbGwgc2NyaXB0cyBhbmQgdGhlCitwcm9ncmFtIHdpbGwgYXV0b21hdGljYWxseSBhZGFwdCBpdHMgYmVoYXZpb3VyIGJhc2VkIG9uIHRoZSBlbnZpcm9ubWVudAordmFyaWFibGUgXGZCRFBLR19NQUlOVFNDUklQVF9OQU1FXGZQIGFuZCBvbiB0aGUgbWFpbnRhaW5lciBzY3JpcHRzIGFyZ3VtZW50cwordGhhdCB5b3UgaGF2ZSB0byBmb3J3YXJkIGFmdGVyIGEgZG91YmxlIGRhc2guCisuCisuU0ggQ09ORkZJTEUgUkVMQVRFRCBUQVNLUworLlAKK1doZW4gdXBncmFkaW5nIGEgcGFja2FnZSwgZHBrZyB3aWxsIG5vdCBhdXRvbWF0aWNhbGx5IHJlbW92ZSBhIGNvbmZmaWxlIChhCitjb25maWd1cmF0aW9uIGZpbGUgZm9yIHdoaWNoIGRwa2cgc2hvdWxkIHByZXNlcnZlIHVzZXIgY2hhbmdlcykgaWYgaXQgaXMKK25vdCBwcmVzZW50IGluIHRoZSBuZXdlciB2ZXJzaW9uLiBUaGVyZSBhcmUgdHdvIHByaW5jaXBhbCByZWFzb25zIGZvcgordGhpczsgdGhlIGZpcnN0IGlzIHRoYXQgdGhlIGNvbmZmaWxlIGNvdWxkJ3ZlIGJlZW4gZHJvcHBlZCBieSBhY2NpZGVudCBhbmQKK3RoZSBuZXh0IHZlcnNpb24gY291bGQgcmVzdG9yZSBpdCwgdXNlcnMgd291bGRuJ3Qgd2FudCB0aGVpciBjaGFuZ2VzCit0aHJvd24gYXdheS4gVGhlIHNlY29uZCBpcyB0byBhbGxvdyBwYWNrYWdlcyB0byB0cmFuc2l0aW9uIGZpbGVzIGZyb20gYQorZHBrZ1wtbWFpbnRhaW5lZCBjb25mZmlsZSB0byBhIGZpbGUgbWFpbnRhaW5lZCBieSB0aGUgcGFja2FnZSdzIG1haW50YWluZXIKK3NjcmlwdHMsIHVzdWFsbHkgd2l0aCBhIHRvb2wgbGlrZSBkZWJjb25mIG9yIHVjZi4KKy5QCitUaGlzIG1lYW5zIHRoYXQgaWYgYSBwYWNrYWdlIGlzIGludGVuZGVkIHRvIHJlbmFtZSBvciByZW1vdmUgYSBjb25mZmlsZSwKK2l0IG11c3QgZXhwbGljaXRseSBkbyBzbyBhbmQgXGZCZHBrZ1wtbWFpbnRzY3JpcHRcLWhlbHBlclxmUCBjYW4gYmUgdXNlZAordG8gaW1wbGVtZW50IGdyYWNlZnVsIGRlbGV0aW9uIGFuZCBtb3Zpbmcgb2YgY29uZmZpbGVzIHdpdGhpbiBtYWludGFpbmVyCitzY3JpcHRzLgorLgorLlNTIFJFTU9WSU5HIEEgQ09ORkZJTEUKKy5QCitJZiBhIGNvbmZmaWxlIGlzIGNvbXBsZXRlbHkgcmVtb3ZlZCwgaXQgc2hvdWxkIGJlIHJlbW92ZWQgZnJvbSBkaXNrLAordW5sZXNzIHRoZSB1c2VyIGhhcyBtb2RpZmllZCBpdC4gSWYgdGhlcmUgYXJlIGxvY2FsIG1vZGlmaWNhdGlvbnMsIHRoZXkKK3Nob3VsZCBiZSBwcmVzZXJ2ZWQuIElmIHRoZSBwYWNrYWdlIHVwZ3JhZGVzIGFib3J0cywgdGhlIG5ld2x5IG9ic29sZXRlCitjb25mZmlsZSBzaG91bGQgbm90IGRpc2FwcGVhci4KKy5QCitBbGwgb2YgdGhpcyBpcyBpbXBsZW1lbnRlZCBieSBwdXR0aW5nIHRoZSBmb2xsb3dpbmcgc2hlbGwgc25pcHBldCBpbiB0aGUKK1xmQnByZWluc3RcZlAsIFxmQnBvc3RpbnN0XGZQIGFuZCBcZkJwb3N0cm1cZlAgbWFpbnRhaW5lciBzY3JpcHRzOgorLlAKKyAgICBkcGtnXC1tYWludHNjcmlwdFwtaGVscGVyIHJtX2NvbmZmaWxlIFxcCisgICAgICAgIFxmSWNvbmZmaWxlXGZQIFxmSWxhc3R2ZXJzaW9uXGZQIFxmSXBhY2thZ2VcZlAgXC1cLSAiJEAiCisuUAorXGZJY29uZmZpbGVcZlAgaXMgdGhlIGZpbGVuYW1lIG9mIHRoZSBjb25mZmlsZSB0byByZW1vdmUuCitcZklsYXN0dmVyc2lvblxmUCBpcyB0aGUgbGFzdCB2ZXJzaW9uIG9mIHRoZSBwYWNrYWdlIHRoYXQgY29udGFpbmVkIHRoZQorY29uZmZpbGUgKG9yIHRoZSBsYXN0IHZlcnNpb24gb2YgdGhlIHBhY2thZ2UgdGhhdCBkaWQgbm90IHRha2UgY2FyZSB0bworcmVtb3ZlIHRoZSBvYnNvbGV0ZSBjb25mZmlsZSBpZiB0aGlzIHdhcyBub3QgaW1tZWRpYXRlbHkgaW1wbGVtZW50ZWQpLgorSWYgXGZJbGFzdHZlcnNpb25cZlAgaXMgZW1wdHkgb3Igb21pdHRlZCwgdGhlbiB0aGUgb3BlcmF0aW9uIGlzIHRyaWVkCitvbiBldmVyeSB1cGdyYWRlLiBcZklwYWNrYWdlXGZQIGlzIHRoZSBwYWNrYWdlIG5hbWUsIGl0J3Mgb3B0aW9uYWwgYXMgaXQgd2lsbAorZGVmYXVsdCB0byAkRFBLR19NQUlOVFNDUklQVF9QQUNLQUdFICh0aGlzIHZhcmlhYmxlIGlzIHNldCBieSBkcGtnIHRvIHRoZQorbmFtZSBvZiB0aGUgcGFja2FnZSBhY3RlZCB1cG9uKS4gQWxsIHRoZSBwYXJhbWV0ZXJzIG9mIHRoZSBtYWludGFpbmVyCitzY3JpcHRzIGhhdmUgdG8gYmUgZm9yd2FyZGVkIHRvIHRoZSBwcm9ncmFtIGFmdGVyICJcLVwtIi4KKy5QCitDdXJyZW50IGltcGxlbWVudGF0aW9uOiBpbiB0aGUgXGZCcHJlaW5zdFxmUCwgaXQgY2hlY2tzIGlmIHRoZSBjb25mZmlsZQord2FzIG1vZGlmaWVkIGFuZCByZW5hbWVzIGl0IGVpdGhlciB0byBcZkljb25mZmlsZVxmUFxmQi5kcGtnXC1yZW1vdmVcZlAgKGlmIG5vdAorbW9kaWZpZWQpIG9yIHRvIFxmSWNvbmZmaWxlXGZQXGZCLmRwa2dcLWJhY2t1cFxmUCAoaWYgbW9kaWZpZWQpLiBJbiB0aGUKK1xmQnBvc3RpbnN0XGZQLCB0aGUgbGF0dGVyIGZpbGUgaXMgcmVuYW1lZCB0byBcZkljb25mZmlsZVxmUFxmQi5kcGtnXC1iYWtcZlAKK2FuZCBrZXB0IGZvciByZWZlcmVuY2UgYXMgaXQgY29udGFpbnMgdXNlciBtb2RpZmljYXRpb25zIGJ1dCB0aGUgZm9ybWVyIHdpbGwKK2JlIHJlbW92ZWQuIElmIHRoZSBwYWNrYWdlIHVwZ3JhZGUgYWJvcnRzLCB0aGUgXGZCcG9zdHJtXGZQIHJlaW5zdGFsbHMgdGhlCitvcmlnaW5hbCBjb25mZmlsZS4gRHVyaW5nIHB1cmdlLCB0aGUgXGZCcG9zdHJtXGZQIHdpbGwgYWxzbyBkZWxldGUgdGhlCitcZkIuZHBrZ1wtYmFrXGZQIGZpbGUga2VwdCB1cCB0byBub3cuCisuCisuU1MgUkVOQU1JTkcgQSBDT05GRklMRQorLlAKK0lmIGEgY29uZmZpbGUgaXMgbW92ZWQgZnJvbSBvbmUgbG9jYXRpb24gdG8gYW5vdGhlciwgeW91IG5lZWQgdG8gbWFrZSBzdXJlCit5b3UgbW92ZSBhY3Jvc3MgYW55IGNoYW5nZXMgdGhlIHVzZXIgaGFzIG1hZGUuIFRoaXMgbWF5IHNlZW0gYSBzaW1wbGUKK2NoYW5nZSB0byB0aGUgXGZCcHJlaW5zdFxmUCBzY3JpcHQgYXQgZmlyc3QsIGhvd2V2ZXIgdGhhdCB3aWxsIHJlc3VsdCBpbgordGhlIHVzZXIgYmVpbmcgcHJvbXB0ZWQgYnkgZHBrZyB0byBhcHByb3ZlIHRoZSBjb25mZmlsZSBlZGl0cyBldmVuIHRob3VnaAordGhleSBhcmUgbm90IHJlc3BvbnNpYmxlIG9mIHRoZW0uCisuUAorR3JhY2VmdWwgcmVuYW1pbmcgY2FuIGJlIGltcGxlbWVudGVkIGJ5IHB1dHRpbmcgdGhlIGZvbGxvd2luZyBzaGVsbAorc25pcHBldCBpbiB0aGUgXGZCcHJlaW5zdFxmUCwgXGZCcG9zdGluc3RcZlAgYW5kIFxmQnBvc3RybVxmUCBtYWludGFpbmVyCitzY3JpcHRzOgorLlAKKyAgICBkcGtnXC1tYWludHNjcmlwdFwtaGVscGVyIG12X2NvbmZmaWxlIFxcCisgICAgICAgIFxmSW9sZGNvbmZmaWxlXGZQIFxmSW5ld2NvbmZmaWxlXGZQIFxmSWxhc3R2ZXJzaW9uXGZQIFxmSXBhY2thZ2VcZlAgXC1cLSAiJEAiCisuUAorXGZJb2xkY29uZmZpbGVcZlAgYW5kIFxmSW5ld2NvbmZmaWxlXGZQIGFyZSB0aGUgb2xkIGFuZCBuZXcgbmFtZSBvZiB0aGUKK2NvbmZmaWxlIHRvIHJlbmFtZS4gXGZJbGFzdHZlcnNpb25cZlAgaXMgdGhlIGxhc3QgdmVyc2lvbiBvZiB0aGUgcGFja2FnZQordGhhdCBjb250YWluZWQgdGhlIGNvbmZmaWxlIHdpdGggdGhlIG9sZCBuYW1lLiBJZiBcZklsYXN0dmVyc2lvblxmUCBpcworZW1wdHkgb3Igb21pdHRlZCwgdGhlbiB0aGUgb3BlcmF0aW9uIGlzIHRyaWVkIG9uIGV2ZXJ5IHVwZ3JhZGUgKG5vdGU6IGl0J3MKK3NhZmVyIHRvIGdpdmUgdGhlIHZlcnNpb24gYW5kIGhhdmUgdGhlIG9wZXJhdGlvbiB0cmllZCBvbmx5IG9uY2UpLiBcZklwYWNrYWdlXGZQCitpcyB0aGUgcGFja2FnZSBuYW1lLCBpdCdzIG9wdGlvbmFsIGFzIGl0IHdpbGwgZGVmYXVsdCB0bworJERQS0dfTUFJTlRTQ1JJUFRfUEFDS0FHRSAodGhpcyB2YXJpYWJsZSBpcyBzZXQgYnkgZHBrZyB0byB0aGUgbmFtZSBvZiB0aGUKK3BhY2thZ2UgYWN0ZWQgdXBvbikuIEFsbCB0aGUgcGFyYW1ldGVycyBvZiB0aGUgbWFpbnRhaW5lciBzY3JpcHRzIGhhdmUgdG8KK2JlIGZvcndhcmRlZCB0byB0aGUgcHJvZ3JhbSBhZnRlciAiXC1cLSIuCisuUAorQ3VycmVudCBpbXBsZW1lbnRhdGlvbjogdGhlIFxmQnByZWluc3RcZlAgY2hlY2tzIGlmIHRoZSBjb25mZmlsZSBoYXMgYmVlbgorbW9kaWZpZWQsIGlmIHllcyBpdCdzIGxlZnQgb24gcGxhY2Ugb3RoZXJ3aXNlIGl0J3MgcmVuYW1lZCB0bworXGZJb2xkY29uZmZpbGVcZlBcZkIuZHBrZ1wtcmVtb3ZlXGZQLiBPbiBjb25maWd1cmF0aW9uLCB0aGUgXGZCcG9zdGluc3RcZlAKK3JlbW92ZXMgXGZJb2xkY29uZmZpbGVcZlBcZkIuZHBrZ1wtcmVtb3ZlXGZQIGFuZCByZW5hbWVzIFxmSW9sZGNvbmZmaWxlXGZQCit0byBcZkluZXdjb25mZmlsZVxmUCBpZiBcZklvbGRjb25mZmlsZVxmUCBpcyBzdGlsbCBhdmFpbGFibGUuIE9uCithYm9ydFwtdXBncmFkZS9hYm9ydFwtaW5zdGFsbCwgdGhlIFxmQnBvc3RybVxmUCByZW5hbWVzCitcZklvbGRjb25mZmlsZVxmUFxmQi5kcGtnXC1yZW1vdmVcZlAgYmFjayB0byBcZklvbGRjb25mZmlsZVxmUCBpZiByZXF1aXJlZC4KKy4KKy5TSCBJTlRFR1JBVElPTiBJTiBQQUNLQUdFUworLlAKK0dpdmVuIHRoYXQgXGZCZHBrZ1wtbWFpbnRzY3JpcHRcLWhlbHBlclxmUCBpcyB1c2VkIGluIHRoZSBcZkJwcmVpbnN0XGZQLAordXNpbmcgaXQgdW5jb25kaXRpb25hbGx5IHJlcXVpcmVzIGEgcHJlLWRlcGVuZGVuY3kgdG8gZW5zdXJlIHRoYXQgdGhlCityZXF1aXJlZCB2ZXJzaW9uIG9mIGRwa2cgaGFzIGJlZW4gdW5wYWNrZWQgYmVmb3JlLiBUaGUgcmVxdWlyZWQgdmVyc2lvbgorZGVwZW5kcyBvbiB0aGUgY29tbWFuZCB1c2VkLCBmb3IgXGZCcm1fY29uZmZpbGVcZlAgYW5kIFxmQm12X2NvbmZmaWxlXGZQCitpdCBpcyAxLjE1LjcuMjoKKy5QCisgICAgXGZCUHJlXC1EZXBlbmRzOlxmUCBkcGtnICg+PSAxLjE1LjcuMikKKy5QCitCdXQgaW4gbWFueSBjYXNlcyB0aGUgb3BlcmF0aW9uIGRvbmUgYnkgdGhlIHByb2dyYW0gaXMgbm90IGNyaXRpY2FsIGZvcgordGhlIHBhY2thZ2UsIGFuZCBpbnN0ZWFkIG9mIHVzaW5nIGEgcHJlLWRlcGVuZGVuY3kgd2UgY2FuIGNhbGwgdGhlCitwcm9ncmFtIG9ubHkgaWYgd2Uga25vdyB0aGF0IHRoZSByZXF1aXJlZCBjb21tYW5kIGlzIHN1cHBvcnRlZCBieQordGhlIGN1cnJlbnRseSBpbnN0YWxsZWQgZHBrZzoKKy5QCisgICAgaWYgZHBrZ1wtbWFpbnRzY3JpcHRcLWhlbHBlciBzdXBwb3J0cyBcZkljb21tYW5kXGZQOyB0aGVuCisgICAgICAgIGRwa2dcLW1haW50c2NyaXB0XC1oZWxwZXIgXGZJY29tbWFuZFxmUCAuLi4KKyAgICBmaQorLgorLlNIIEFVVEhPUlMKK0NvcHlyaWdodCBcKGNvIDIwMTAgUmFwaGFcWzplXWwgSGVydHpvZworLmJyCitDb3B5cmlnaHQgXChjbyAyMDA4IEpvZXkgSGVzcworLmJyCitDb3B5cmlnaHQgXChjbyAyMDA3IEd1aWxsZW0gSm92ZXIKKy5icgorQ29weXJpZ2h0IFwoY28gMjAwNSBTY290dCBKYW1lcyBSZW1uYW50Cisuc3AKK1RoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSB2ZXJzaW9uIDIgb3IKK2xhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIFdBUlJBTlRZLgorCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9kcGtnLW1lcmdlY2hhbmdlbG9ncy4xIGIvZHBrZy0xLjE2LjEuMS9tYW4vZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41YmQ5OGMwCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMQpAQCAtMCwwICsxLDcxIEBACisuVEggZHBrZ1wtbWVyZ2VjaGFuZ2Vsb2dzIDEgIjIwMTEtMDgtMTQiICJEZWJpYW4gUHJvamVjdCIgImRwa2cgc3VpdGUiCisuU0ggTkFNRQorZHBrZ1wtbWVyZ2VjaGFuZ2Vsb2dzIFwtIDMtd2F5IG1lcmdlIG9mIGRlYmlhbi9jaGFuZ2Vsb2cgZmlsZXMKKy4KKy5TSCBTWU5PUFNJUworLkIgZHBrZ1wtbWVyZ2VjaGFuZ2Vsb2dzCisuUkkgWyBvcHRpb24gIi4uLl0gIiBvbGQgIiAiIG5ldy1hICIgIiBuZXctYiAiIFsiIG91dCBdCisuCisuU0ggREVTQ1JJUFRJT04KKy5QCitUaGlzIHByb2dyYW0gd2lsbCB1c2UgdGhlIDMgcHJvdmlkZWQgdmVyc2lvbnMgb2YgdGhlIERlYmlhbiBjaGFuZ2Vsb2cgdG8KK2dlbmVyYXRlIGEgbWVyZ2VkIGNoYW5nZWxvZyBmaWxlLiBUaGUgcmVzdWx0aW5nIGNoYW5nZWxvZyBpcyBzdG9yZWQKK2luIHRoZSBmaWxlIFxmSW91dFxmUCBvciBvdXRwdXQgdG8gdGhlIHN0YW5kYXJkIG91dHB1dCBpZiB0aGF0IHBhcmFtZXRlciBpcworbm90IGdpdmVuLgorLlAKK0VhY2ggZW50cnkgaXMgaWRlbnRpZmllZCBieSBpdHMgdmVyc2lvbiBudW1iZXIgYW5kIHRoZXkgYXJlIGFzc3VtZWQgdG8KK2JlIG5vdCBjb25mbGljdGluZywgdGhleSBhcmUgc2ltcGx5IG1lcmdlZCBpbiB0aGUgcmlnaHQgb3JkZXIgKGJ5CitkZWNyZWFzaW5nIHZlcnNpb24gbnVtYmVyKS4gV2hlbiBcZkJcLVwtbWVyZ2VcLXByZXJlbGVhc2VzXGZQIGlzIHVzZWQsIHRoZQorcGFydCBvZiB0aGUgdmVyc2lvbiBudW1iZXIgYWZ0ZXIgdGhlIGxhc3QgdGlsZGUgaXMgZHJvcHBlZCBzbyB0aGF0CisxLjBcLTF+ZXhwMSBhbmQgMS4wXC0xfmV4cDUgYXJlIGNvbnNpZGVyZWQgdG8gYmUgdGhlIHNhbWUgZW50cnkuIFdoZW4gdGhlCitzYW1lIHZlcnNpb24gaXMgYXZhaWxhYmxlIGluIGJvdGggXGZJbmV3LWFcZlAgYW5kIFxmSW5ldy1iXGZQLCBhIHN0YW5kYXJkCitsaW5lLWJhc2VkIDMtd2F5IG1lcmdlIGlzIGF0dGVtcHRlZCAocHJvdmlkZWQgdGhhdCB0aGUgbW9kdWxlCitBbGdvcml0aG06Ok1lcmdlIGlzIGF2YWlsYWJsZSBcW2VtXSBpdCdzIHBhcnQgb2YgdGhlIHBhY2thZ2UKK2xpYmFsZ29yaXRobVwtbWVyZ2VcLXBlcmwgXFtlbV0gb3RoZXJ3aXNlIHlvdSBnZXQgYSBnbG9iYWwgY29uZmxpY3Qgb24gdGhlCitjb250ZW50IG9mIHRoZSBlbnRyeSkuCisuCisuU0ggT1BUSU9OUworLlRQCisuQlIgXC1cLW1lcmdlXC1wcmVyZWxlYXNlcyAiLCAiIFwtbQorRHJvcCB0aGUgcGFydCBhZnRlciB0aGUgbGFzdCB0aWxkZSBpbiB0aGUgdmVyc2lvbiBudW1iZXIgd2hlbiBkb2luZwordmVyc2lvbiBjb21wYXJpc29uIHRvIGlkZW50aWZ5IGlmIHR3byBlbnRyaWVzIGFyZSBzdXBwb3NlZCB0byBiZQordGhlIHNhbWUgb3Igbm90LgorLnNwCitUaGlzIGlzIHVzZWZ1bCB3aGVuIHlvdSBrZWVwIHVzaW5nIHRoZSBzYW1lIGNoYW5nZWxvZyBlbnRyeSBidXQgeW91CitpbmNyZWFzZSBpdHMgdmVyc2lvbiBudW1iZXIgcmVndWxhcmx5LiBGb3IgaW5zdGFuY2UsIHlvdSBtaWdodCBoYXZlCisyLjNcLTF+ZXhwMSwgMi4zXC0xfmV4cDIsIC4uLiB1bnRpbCB0aGUgb2ZmaWNpYWwgcmVsZWFzZSAyLjNcLTEgYW5kIHRoZXkKK2FyZSBhbGwgdGhlIHNhbWUgY2hhbmdlbG9nIGVudHJ5IHRoYXQgaGFzIGV2b2x2ZWQgb3ZlciB0aW1lLgorLlRQCisuQiBcLVwtaGVscAorU2hvdyB0aGUgdXNhZ2UgbWVzc2FnZSBhbmQgZXhpdC4KKy5UUAorLkIgXC1cLXZlcnNpb24KK1Nob3cgdGhlIHZlcnNpb24gYW5kIGV4aXQuCisuCisuU0ggTElNSVRBVElPTlMKKy5QCitBbnl0aGluZyB0aGF0IGlzIG5vdCBwYXJzZWQgYnkgRHBrZzo6Q2hhbmdlbG9nIGlzIGxvc3QgZHVyaW5nIHRoZSBtZXJnZS4KK1RoaXMgbWlnaHQgaW5jbHVkZSBzdHVmZiBsaWtlIHZpbSBtb2RlbGluZXMsIGNvbW1lbnRzIHdoaWNoIHdlcmUgbm90CitzdXBwb3NlZCB0byBiZSB0aGVyZSwgZXRjLgorLgorLlNIIElOVEVHUkFUSU9OIFdJVEggR0lUCisuUAorSWYgeW91IHdhbnQgdG8gdXNlIHRoaXMgcHJvZ3JhbSB0byBtZXJnZSBEZWJpYW4gY2hhbmdlbG9nIGZpbGVzIGluIGEgZ2l0CityZXBvc2l0b3J5LCB5b3UgaGF2ZSBmaXJzdCB0byByZWdpc3RlciBhIG5ldyBtZXJnZSBkcml2ZXIgaW4KK1xmQi5naXQvY29uZmlnXGZQIG9yIFxmQn4vLmdpdGNvbmZpZ1xmUDoKKy5QCisgW21lcmdlICJkcGtnXC1tZXJnZWNoYW5nZWxvZ3MiXQorICAgICBuYW1lID0gZGViaWFuL2NoYW5nZWxvZyBtZXJnZSBkcml2ZXIKKyAgICAgZHJpdmVyID0gZHBrZ1wtbWVyZ2VjaGFuZ2Vsb2dzIFwtbSAlTyAlQSAlQiAlQQorLlAKK1RoZW4geW91IGhhdmUgdG8gc2V0dXAgdGhlIG1lcmdlIGF0dHJpYnV0ZSBmb3IgdGhlIGRlYmlhbi9jaGFuZ2Vsb2cgZmlsZQorZWl0aGVyIGluIFxmQi5naXRhdHRyaWJ1dGVzXGZQIGluIHRoZSByZXBvc2l0b3J5IGl0c2VsZiwgb3IgaW4KK1xmQi5naXQvaW5mby9hdHRyaWJ1dGVzXGZQOgorLlAKKyBkZWJpYW4vY2hhbmdlbG9nIG1lcmdlPWRwa2dcLW1lcmdlY2hhbmdlbG9ncworLlNIIEFVVEhPUgorQ29weXJpZ2h0IFwoY28gMjAwOS0yMDEwIFJhcGhhXFs6ZV1sIEhlcnR6b2cKKy5zcAorVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbmNlIHZlcnNpb24gMiBvcgorbGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gV0FSUkFOVFkuCisKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL2Rwa2ctbmFtZS4xIGIvZHBrZy0xLjE2LjEuMS9tYW4vZHBrZy1uYW1lLjEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjQyNTUwZAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL2Rwa2ctbmFtZS4xCkBAIC0wLDAgKzEsMTA4IEBACisuXCIgVGhpcyBpcyBhbiAtKi0gbnJvZmYgLSotIHNvdXJjZSBmaWxlLgorLlwiIGRwa2ctbmFtZSBhbmQgdGhpcyBtYW5wYWdlIGFyZSBDb3B5cmlnaHQgwqkgMTk5NSwxOTk2IGJ5IEVyaWNrIEJyYW5kZXJob3JzdC4KKy5cIgorLlwiIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSB2ZXJzaW9uIDIKKy5cIiBvciBsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiAgVGhlcmUgaXMgTk8gd2FycmFudHkuCisuVEggZHBrZ1wtbmFtZSAxICIyMDExLTA4LTE0IiAiRGViaWFuIFByb2plY3QiICJkcGtnIHV0aWxpdGllcyIKKy5TSCBOQU1FCitkcGtnXC1uYW1lIFwtIHJlbmFtZSBEZWJpYW4gcGFja2FnZXMgdG8gZnVsbCBwYWNrYWdlIG5hbWVzCisuCisuU0ggU1lOT1BTSVMKKy5CIGRwa2dcLW5hbWUKKy5SSSBbIG9wdGlvbiAuLi5dCisuUkIgWyBcLVwtIF0KKy5JUiBmaWxlIC4uLgorLgorLlNIIERFU0NSSVBUSU9OCisuUFAKK1RoaXMgbWFudWFsIHBhZ2UgZG9jdW1lbnRzIHRoZQorLkIgZHBrZ1wtbmFtZQorcHJvZ3JhbSB3aGljaCBwcm92aWRlcyBhbiBlYXN5IHdheSB0byByZW5hbWUKKy5CIERlYmlhbgorcGFja2FnZXMgaW50byB0aGVpciBmdWxsIHBhY2thZ2UgbmFtZXMuIEEgZnVsbCBwYWNrYWdlIG5hbWUgY29uc2lzdHMgb2YKKy5JQiBwYWNrYWdlIF8gdmVyc2lvbiBfIGFyY2hpdGVjdHVyZSAuIHBhY2thZ2UtdHlwZQorYXMgc3BlY2lmaWVkIGluIHRoZSBjb250cm9sIGZpbGUgb2YgdGhlIHBhY2thZ2UuIFRoZSBcZkl2ZXJzaW9uXGZQIHBhcnQKK29mIHRoZSBmaWxlbmFtZQorY29uc2lzdHMgb2YgdGhlIHVwc3RyZWFtIHZlcnNpb24gaW5mb3JtYXRpb24gb3B0aW9uYWxseSBmb2xsb3dlZCBieSBhCitoeXBoZW4gYW5kIHRoZSByZXZpc2lvbiBpbmZvcm1hdGlvbi4gVGhlIFxmSXBhY2thZ2UtdHlwZVxmUCBwYXJ0IGNvbWVzCitmcm9tIHRoYXQgZmllbGQgaWYgcHJlc2VudCBvciBmYWxsYmFja3MgdG8gXGZCZGViXGZQLgorLgorLlNIIE9QVElPTlMKKy5UUAorLkJSIFwtYSAiLCAiIFwtXC1ub1wtYXJjaGl0ZWN0dXJlCitUaGUgZGVzdGluYXRpb24gZmlsZW5hbWUgd2lsbCBub3QgaGF2ZSB0aGUgYXJjaGl0ZWN0dXJlIGluZm9ybWF0aW9uLgorLlRQCisuQlIgXC1rICIsICIgXC1cLXN5bWxpbmsKK0NyZWF0ZSBhIHN5bWxpbmssIGluc3RlYWQgb2YgbW92aW5nLgorLlRQCisuQlIgXC1vICIsICIgXC1cLW92ZXJ3cml0ZQorRXhpc3RpbmcgZmlsZXMgd2lsbCBiZSBvdmVyd3JpdHRlbiBpZiB0aGV5IGhhdmUgdGhlIHNhbWUgbmFtZSBhcyB0aGUKK2Rlc3RpbmF0aW9uIGZpbGVuYW1lLgorLlRQCisuQlIgXC1zICIsICIgXC1cLXN1YmRpciAiIFtcZklkaXJcZlBdIgorRmlsZXMgd2lsbCBiZSBtb3ZlZCBpbnRvIGEgc3ViZGlyZWN0b3J5LiBJZiB0aGUgZGlyZWN0b3J5IGdpdmVuIGFzIGFyZ3VtZW50IGV4aXN0cwordGhlIGZpbGVzIHdpbGwgYmUgbW92ZWQgaW50byB0aGF0IGRpcmVjdG9yeSBvdGhlcndpc2UgdGhlIG5hbWUgb2YKK3RoZSB0YXJnZXQgZGlyZWN0b3J5IGlzIGV4dHJhY3RlZCBmcm9tIHRoZSBzZWN0aW9uIGZpZWxkIGluIHRoZQorY29udHJvbCBwYXJ0IG9mIHRoZSBwYWNrYWdlLiBUaGUgdGFyZ2V0IGRpcmVjdG9yeSB3aWxsIGJlCitgdW5zdGFibGUvYmluYXJ5XC1cZklhcmNoaXRlY3R1cmVcZlAvXGZJc2VjdGlvblxmUCcuIElmIHRoZSBzZWN0aW9uIGlzCitub3QgZm91bmQgaW4gdGhlIGNvbnRyb2wsIHRoZW4gYG5vXC1zZWN0aW9uJyBpcyBhc3N1bWVkLCBhbmQgaW4gdGhpcyBjYXNlLAorYXMgd2VsbCBhcyBmb3Igc2VjdGlvbnMgYG5vblwtZnJlZScgYW5kIGBjb250cmliJyB0aGUgdGFyZ2V0IGRpcmVjdG9yeSBpcworYFxmSXNlY3Rpb25cZlAvYmluYXJ5XC1cZklhcmNoaXRlY3R1cmVcZlAnLiBUaGUgc2VjdGlvbiBmaWVsZCBpc24ndCByZXF1aXJlZAorc28gYSBsb3Qgb2YgcGFja2FnZXMgd2lsbCBmaW5kIHRoZWlyIHdheSB0byB0aGUgYG5vXC1zZWN0aW9uJyBhcmVhLiBVc2UKK3RoaXMgb3B0aW9uIHdpdGggY2FyZSwgaXQncyBtZXNzeS4KKy5UUAorLkJSIFwtYyAiLCAiIFwtXC1jcmVhdGVcLWRpcgorVGhpcyBvcHRpb24gY2FuIHVzZWQgdG9nZXRoZXIgd2l0aCB0aGUgXC1zIG9wdGlvbi4gSWYgYSB0YXJnZXQKK2RpcmVjdG9yeSBpc24ndCBmb3VuZCBpdCB3aWxsIGJlIGNyZWF0ZWQgYXV0b21hdGljYWxseS4KKy5CIFVzZSB0aGlzIG9wdGlvbiB3aXRoIGNhcmUuCisuVFAKKy5CUiBcLWggIiwgIiBcLVwtaGVscAorU2hvdyB0aGUgdXNhZ2UgbWVzc2FnZSBhbmQgZXhpdC4KKy5UUAorLkJSIFwtdiAiLCAiIFwtXC12ZXJzaW9uCitTaG93IHRoZSB2ZXJzaW9uIGFuZCBleGl0LgorLgorLlNIIEVYQU1QTEVTCisuVFAKKy5CIGRwa2dcLW5hbWUgYmFyXC1mb28uZGViCitUaGUgZmlsZSBgYmFyXC1mb28uZGViJyB3aWxsIGJlIHJlbmFtZWQgdG8gYmFyXC1mb29fMS4wXC0yX2kzODYuZGViIG9yCitzb21ldGhpbmcgc2ltaWxhciAoZGVwZW5kaW5nIG9uIHdoYXRldmVyIGluZm9ybWF0aW9uIGlzIGluIHRoZSBjb250cm9sCitwYXJ0IG9mIGBiYXJcLWZvby5kZWInKS4KKy5UUAorLkIgZmluZCAvcm9vdC9kZWJpYW4vIFwtbmFtZSBcKGFxKi5kZWJcKGFxIHwgeGFyZ3MgXC1uIDEgZHBrZ1wtbmFtZSBcLWEKK0FsbCBmaWxlcyB3aXRoIHRoZSBleHRlbnNpb24gYGRlYicgaW4gdGhlIGRpcmVjdG9yeSAvcm9vdC9kZWJpYW4gYW5kIGl0cworc3ViZGlyZWN0b3J5J3Mgd2lsbCBiZSByZW5hbWVkIGJ5IGRwa2dcLW5hbWUgaWYgcmVxdWlyZWQgaW50byBuYW1lcyB3aXRoIG5vCithcmNoaXRlY3R1cmUgaW5mb3JtYXRpb24uCisuVFAKKy5CIGZpbmQgXC1uYW1lIFwoYXEqLmRlYlwoYXEgfCB4YXJncyBcLW4gMSBkcGtnXC1uYW1lIFwtYSBcLW8gXC1zIFwtYworLkIgRG9uJ3QgZG8gdGhpcy4KK1lvdXIgYXJjaGl2ZSB3aWxsIGJlIG1lc3NlZCB1cCBjb21wbGV0ZWx5IGJlY2F1c2UgYSBsb3Qgb2YgcGFja2FnZXMKK2Rvbid0IGNvbWUgd2l0aCBzZWN0aW9uIGluZm9ybWF0aW9uLgorLkIgRG9uJ3QgZG8gdGhpcy4KKy5UUAorLkIgZHBrZyBcLVwtYnVpbGQgZGViaWFuXC10bXAgJiYgZHBrZ1wtbmFtZSBcLW8gXC1zIC4uIGRlYmlhblwtdG1wLmRlYgorVGhpcyBjYW4gYmUgdXNlZCB3aGVuIGJ1aWxkaW5nIG5ldyBwYWNrYWdlcy4KKy4KKy5TSCBCVUdTCitTb21lIHBhY2thZ2VzIGRvbid0IGZvbGxvdyB0aGUgbmFtZSBzdHJ1Y3R1cmUKKy5JQiBwYWNrYWdlIF8gdmVyc2lvbiBfIGFyY2hpdGVjdHVyZSAuZGViXGZSLlxmUAorUGFja2FnZXMgcmVuYW1lZCBieSBkcGtnXC1uYW1lCit3aWxsIGZvbGxvdyB0aGlzIHN0cnVjdHVyZS4gR2VuZXJhbGx5IHRoaXMgd2lsbCBoYXZlIG5vIGltcGFjdCBvbiBob3cKK3BhY2thZ2VzIGFyZSBpbnN0YWxsZWQgYnkKKy5CUiBkc2VsZWN0ICgxKS8gZHBrZyAoMSksCitidXQgb3RoZXIgaW5zdGFsbGF0aW9uIHRvb2xzCittaWdodCBkZXBlbmQgb24gdGhpcyBuYW1pbmcgc3RydWN0dXJlLgorLgorLlNIIFNFRSBBTFNPCisuQlIgZGViICg1KSwKKy5CUiBkZWJcLWNvbnRyb2wgKDUpLAorLkJSIGRwa2cgKDEpLAorLkJSIGRwa2dcLWRlYiAoMSksCisuQlIgZmluZCAoMSksCisuQlIgeGFyZ3MgKDEpLgorLgorLlNIIEFVVEhPUgorQ29weXJpZ2h0IFwoY28gMTk5NSwxOTk2IEVyaWNrIEJyYW5kZXJob3JzdAorLnNwCitUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgdmVyc2lvbiAyIG9yCitsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyBXQVJSQU5UWS4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL2Rwa2ctcGFyc2VjaGFuZ2Vsb2cuMSBiL2Rwa2ctMS4xNi4xLjEvbWFuL2Rwa2ctcGFyc2VjaGFuZ2Vsb2cuMQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41ZjhmZjc0Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vZHBrZy1wYXJzZWNoYW5nZWxvZy4xCkBAIC0wLDAgKzEsMTMxIEBACisuVEggZHBrZ1wtcGFyc2VjaGFuZ2Vsb2cgMSAiMjAxMS0wOC0xNCIgIkRlYmlhbiBQcm9qZWN0IiAiZHBrZyB1dGlsaXRpZXMiCisuU0ggTkFNRQorZHBrZ1wtcGFyc2VjaGFuZ2Vsb2cgXC0gcGFyc2UgRGViaWFuIGNoYW5nZWxvZyBmaWxlcworLgorLlNIIFNZTk9QU0lTCisuQiBkcGtnXC1wYXJzZWNoYW5nZWxvZworLlJJIFsgb3B0aW9uIC4uLl0KKy4KKy5TSCBERVNDUklQVElPTgorLkIgZHBrZ1wtcGFyc2VjaGFuZ2Vsb2cKK3JlYWRzIGFuZCBwYXJzZXMgdGhlIGNoYW5nZWxvZyBvZiBhbiB1bnBhY2tlZCBEZWJpYW4gc291cmNlIHRyZWUgYW5kCitvdXRwdXRzIHRoZSBpbmZvcm1hdGlvbiBpbiBpdCB0byBzdGFuZGFyZCBvdXRwdXQgaW4gYSBtYWNoaW5lLXJlYWRhYmxlCitmb3JtLgorLgorLlNIIE9QVElPTlMKKy5UUAorLkJJIFwtbCBjaGFuZ2Vsb2dmaWxlCitTcGVjaWZpZXMgdGhlIGNoYW5nZSBsb2cgZmlsZSB0byByZWFkIGluZm9ybWF0aW9uIGZyb20uIFRoZQorZGVmYXVsdCBpcworLkJSIGRlYmlhbi9jaGFuZ2Vsb2cgLgorLlRQCisuQkkgXC1GIGNoYW5nZWxvZ2Zvcm1hdAorU3BlY2lmaWVzIHRoZSBmb3JtYXQgb2YgdGhlIGNoYW5nZWxvZy4gQnkgZGVmYXVsdCB0aGUgZm9ybWF0IGlzIHJlYWQKK2Zyb20gYSBzcGVjaWFsIGxpbmUgbmVhciB0aGUgYm90dG9tIG9mIHRoZSBjaGFuZ2Vsb2cgb3IgZmFpbGluZyB0aGF0CitkZWZhdWx0cyB0byB0aGUgZGViaWFuIHN0YW5kYXJkIGZvcm1hdC4KKy5UUAorLkJJIFwtTCBsaWJkaXIKK1NwZWNpZnkgYW4gYWRkaXRpb25hbCBkaXJlY3RvcnkgdG8gc2VhcmNoIGZvciBwYXJzZXIgc2NyaXB0cy4KK1RoaXMgZGlyZWN0b3J5IGlzIHNlYXJjaGVkIGJlZm9yZSB0aGUgZGVmYXVsdCBkaXJlY3Rvcmllcword2hpY2ggYXJlIGN1cnJlbnRseQorLkJSIC91c3IvbG9jYWwvbGliL2Rwa2cvcGFyc2VjaGFuZ2Vsb2cgIiBhbmQgIgorLkJSIC91c3IvbGliL2Rwa2cvcGFyc2VjaGFuZ2Vsb2cgLgorLlRQCisuQlIgXC1oICIsICIgXC1cLWhlbHAKK1Nob3cgdGhlIHVzYWdlIG1lc3NhZ2UgYW5kIGV4aXQuCisuVFAKKy5CUiBcLVwtdmVyc2lvbgorU2hvdyB0aGUgdmVyc2lvbiBhbmQgZXhpdC4KKy5TUyBQYXJzZXIgT3B0aW9ucworVGhlIGZvbGxvd2luZyBvcHRpb25zIGNhbiBiZSB1c2VkIHRvIGluZmx1ZW5jZSB0aGUgb3V0cHV0IG9mCit0aGUgY2hhbmdlbG9nIHBhcnNlciwgZS5nLiB0aGUgcmFuZ2Ugb2YgZW50cmllcyBvciB0aGUgZm9ybWF0CitvZiB0aGUgb3V0cHV0LiBUaGV5IG5lZWQgdG8gYmUgc3VwcG9ydGVkIGJ5IHRoZSBwYXJzZXIgc2NyaXB0CitpbiBxdWVzdGlvbi4gU2VlIGFsc28gXGZCQ0FWRUFUU1xmUC4KKy5UUAorLkJJIFwtXC1mb3JtYXQgIiBvdXRwdXRmb3JtYXQiCitTZXQgdGhlIG91dHB1dCBmb3JtYXQuIEN1cnJlbnRseSBzdXBwb3J0ZWQgdmFsdWVzIGFyZQorLklSIGRwa2cgIiBhbmQgIiByZmM4MjIgLgorXGZJZHBrZ1xmUCBpcyB0aGUgY2xhc3NpYyBvdXRwdXQgZm9ybWF0IChmcm9tIGJlZm9yZSB0aGlzCitvcHRpb24gZXhpc3RlZCkgYW5kIHRoZSBkZWZhdWx0LiBJdCBjb25zaXN0cyBvZiBvbmUgcGFyYWdyYXBoCitpbiBEZWJpYW4gY29udHJvbCBmb3JtYXQgKHNlZSBcZkJkZWJcLWNvbnRyb2xcZlAoNSkpLiBJZiBtb3JlCit0aGFuIG9uZSBlbnRyeSBpcyByZXF1ZXN0ZWQsIHRoZW4gbW9zdCBmaWVsZHMgYXJlIHRha2VuIGZyb20gdGhlCitsYXRlc3QgZW50cnksIGV4Y2VwdCBvdGhlcndpc2Ugc3RhdGVkOgorLlJTCisuVFAKKy5CSSBTb3VyY2U6ICIgcGtnLW5hbWUiCisuVFAKKy5CSSBWZXJzaW9uOiAiIHZlcnNpb24iCisuVFAKKy5CSSBEaXN0cmlidXRpb246ICIgdGFyZ2V0LWRpc3RyaWJ1dGlvbiIKKy5UUAorLkJJIFVyZ2VuY3k6ICIgdXJnZW5jeSIKK1RoZSBoaWdoZXN0IHVyZ2VuY3kgb2YgYWxsIGluY2x1ZGVkIGVudHJpZXMgaXMgdXNlZC4KKy5UUAorLkJJIE1haW50YWluZXI6ICIgYXV0aG9yIgorLlRQCisuQkkgRGF0ZTogIiBkYXRlIgorLlRQCisuQkkgQ2xvc2VzOiAiIGJ1Zy1udW1iZXIiCitUaGUgQ2xvc2VzIGZpZWxkcyBvZiBhbGwgaW5jbHVkZWQgZW50cmllcyBhcmUgbWVyZ2VkLgorLlRQCisuQkkgQ2hhbmdlczogIiBjaGFuZ2Vsb2ctZW50cmllcyIKK1RoZSB0ZXh0IG9mIGFsbCBjaGFuZ2Vsb2cgZW50cmllcyBpcyBjb25jYXRlbmF0ZWQuIFRvIG1ha2UKK3RoaXMgZmllbGQgYSB2YWxpZCBEZWJpYW4gY29udHJvbCBmb3JtYXQgbXVsdGlsaW5lIGZpZWxkCitlbXB0eSBsaW5lcyBhcmUgcmVwbGFjZWQgd2l0aCBhIHNpbmdsZSBmdWxsIHN0b3AgYW5kIGFsbCBsaW5lcworaXMgaW50ZW5kZWQgYnkgb25lIHNwYWNlIGNoYXJhY3Rlci4gVGhlIGV4YWN0IGNvbnRlbnQgZGVwZW5kcworb24gdGhlIGNoYW5nZWxvZyBmb3JtYXQuCisuUkUKKy5JUAorVGhlcmUgbWlnaHQgYmUgYWRkaXRpb25hbCB1c2VyLWRlZmluZWQgZmllbGRzIHByZXNlbnQuCisuSVAKK1RoZSBcZkJyZmM4MjJcZlAgZm9ybWF0IHVzZXMgdGhlIHNhbWUgZmllbGRzIGJ1dCBvdXRwdXRzCithIHNlcGFyYXRlIHBhcmFncmFwaCBmb3IgZWFjaCBjaGFuZ2Vsb2cgZW50cnkgc28gdGhhdCBhbGwKK21ldGFkYXRhIGZvciBlYWNoIGVudHJ5IGlzIHByZXNlcnZlZC4KKy5UUAorLkJSIFwtXC1zaW5jZSAiIFxmSXZlcnNpb25cZlAsICIgXC1zIFxmSXZlcnNpb25cZlAsICIgXC12IiBcZkl2ZXJzaW9uXGZQCitpbmNsdWRlIGFsbCBjaGFuZ2VzIGxhdGVyIHRoYW4gXGZJdmVyc2lvblxmUC4KKy5UUAorLkJSIFwtXC11bnRpbCAiIFxmSXZlcnNpb25cZlAsICIgXC11IFxmSXZlcnNpb25cZlAKK2luY2x1ZGUgYWxsIGNoYW5nZXMgZWFybGllciB0aGFuIFxmSXZlcnNpb25cZlAuCisuVFAKKy5CUiBcLVwtZnJvbSAiIFxmSXZlcnNpb25cZlAsICIgXC1mIFxmSXZlcnNpb25cZlAKK2luY2x1ZGUgYWxsIGNoYW5nZXMgZXF1YWwgb3IgbGF0ZXIgdGhhbiBcZkl2ZXJzaW9uXGZQLgorLlRQCisuQlIgXC1cLXRvICIgXGZJdmVyc2lvblxmUCwgIiBcLXQgXGZJdmVyc2lvblxmUAoraW5jbHVkZSBhbGwgY2hhbmdlcyB1cCB0byBvciBlcXVhbCB0aGFuIFxmSXZlcnNpb25cZlAuCisuVFAKKy5CUiBcLVwtY291bnQgIiBcZkludW1iZXJcZlAsICIgXC1jICJcZkludW1iZXJcZlAsICIgXC1uIFxmSW51bWJlclxmUAoraW5jbHVkZSBcZkludW1iZXJcZlAgZW50cmllcyBmcm9tIHRoZSB0b3AgKG9yIHRoZSB0YWlsCitpZiBcZkludW1iZXJcZlAgaXMgbG93ZXIgdGhhbiAwKS4KKy5UUAorLkJSIFwtXC1vZmZzZXQgIiBcZkludW1iZXJcZlAsICIgXC1vIFxmSW51bWJlclxmUAorY2hhbmdlIHRoZSBzdGFydGluZyBwb2ludCBmb3IgXC1cLWNvdW50LCBjb3VudGVkIGZyb20gdGhlIHRvcAorKG9yIHRoZSB0YWlsIGlmIFxmSW51bWJlclxmUCBpcyBsb3dlciB0aGFuIDApLgorLlRQCisuQiBcLVwtYWxsCitpbmNsdWRlIGFsbCBjaGFuZ2VzLiBOb3RlOiBvdGhlciBvcHRpb25zIGhhdmUgbm8gZWZmZWN0IHdoZW4gdGhpcyBpcyBpbgordXNlLgorLgorLlNIIENBVkVBVFMKK0FsbCBcZkJQYXJzZXIgT3B0aW9uc1xmUCBleGNlcHQgZm9yIFwtdiBhcmUgb25seSBzdXBwb3J0ZWQgaW4KK1xmQmRwa2dcZlAsIHZlcnNpb24gMS4xNC4xNiBhbmQgbGF0ZXIuIFRoaXJkIHBhcnR5IHBhcnNlcnMgZm9yCitjaGFuZ2Vsb2cgZm9ybWF0cyBvdGhlciB0aGFuIFxmSWRlYmlhblxmUCBtaWdodCBub3Qgc3VwcG9ydAorYWxsIG9wdGlvbnMuCisuCisuU0ggRklMRVMKKy5UUAorLkIgZGViaWFuL2NoYW5nZWxvZworVGhlIGNoYW5nZWxvZyBmaWxlLCB1c2VkIHRvIG9idGFpbiB2ZXJzaW9uLWRlcGVuZGVudCBpbmZvcm1hdGlvbiBhYm91dAordGhlIHNvdXJjZSBwYWNrYWdlLCBzdWNoIGFzIHRoZSB1cmdlbmN5IGFuZCBkaXN0cmlidXRpb24gb2YgYW4gdXBsb2FkLAordGhlIGNoYW5nZXMgbWFkZSBzaW5jZSBhIHBhcnRpY3VsYXIgcmVsZWFzZSwgYW5kIHRoZSBzb3VyY2UgdmVyc2lvbgorbnVtYmVyIGl0c2VsZi4KKy4KKy5TSCBBVVRIT1JTCitDb3B5cmlnaHQgXChjbyAxOTk1LTE5OTYgSWFuIEphY2tzb24KKy5icgorQ29weXJpZ2h0IFwoY28gMjAwMCBXaWNoZXJ0IEFra2VybWFuCisuYnIKK0NvcHlyaWdodCBcKGNvIDIwMDcsIDIwMDggRnJhbmsgTGljaHRlbmhlbGQKKy5zcAorVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbmNlIHZlcnNpb24gMiBvciBsYXRlcgorZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gV0FSUkFOVFkuCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9kcGtnLXF1ZXJ5LjEgYi9kcGtnLTEuMTYuMS4xL21hbi9kcGtnLXF1ZXJ5LjEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOGRkZjdlYQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL2Rwa2ctcXVlcnkuMQpAQCAtMCwwICsxLDIyMiBAQAorLlRIIGRwa2dcLXF1ZXJ5IDEgIjIwMTEtMDgtMTQiICJEZWJpYW4gUHJvamVjdCIgImRwa2cgc3VpdGUiCisuU0ggTkFNRQorZHBrZ1wtcXVlcnkgXC0gYSB0b29sIHRvIHF1ZXJ5IHRoZSBkcGtnIGRhdGFiYXNlCisuCisuU0ggU1lOT1BTSVMKKy5CIGRwa2dcLXF1ZXJ5CisuUkkgWyBvcHRpb24gIi4uLl0gIiBjb21tYW5kCisuCisuU0ggREVTQ1JJUFRJT04KK1xmQmRwa2dcLXF1ZXJ5XGZQIGlzIGEgdG9vbCB0byBzaG93IGluZm9ybWF0aW9uIGFib3V0IHBhY2thZ2VzIGxpc3RlZCBpbgordGhlIFxmQmRwa2dcZlAgZGF0YWJhc2UuCisuCisuU0ggQ09NTUFORFMKKy5UUAorLkJSIFwtbCAiLCAiIFwtXC1saXN0ICIgW1xmSXBhY2thZ2UtbmFtZS1wYXR0ZXJuXGZQLi4uXSIKK0xpc3QgcGFja2FnZXMgbWF0Y2hpbmcgZ2l2ZW4gcGF0dGVybi4gSWYgbm8gXGZJcGFja2FnZS1uYW1lLXBhdHRlcm5cZlAKK2lzIGdpdmVuLCBsaXN0IGFsbCBwYWNrYWdlcyBpbiBcZkkvdmFyL2xpYi9kcGtnL3N0YXR1c1xmUCwgZXhjbHVkaW5nCit0aGUgb25lcyBtYXJrZWQgYXMgbm90LWluc3RhbGxlZCAoaS5lLiB0aG9zZSB3aGljaCBoYXZlIGJlZW4gcHJldmlvdXNseQorcHVyZ2VkKS4gTm9ybWFsIHNoZWxsIHdpbGRjaGFycyBhcmUgYWxsb3dlZAoraW4gXGZJcGFja2FnZS1uYW1lLXBhdHRlcm5cZlAuIFBsZWFzZSBub3RlIHlvdSB3aWxsIHByb2JhYmx5IGhhdmUgdG8KK3F1b3RlIFxmSXBhY2thZ2UtbmFtZS1wYXR0ZXJuXGZQIHRvIHByZXZlbnQgdGhlIHNoZWxsIGZyb20gcGVyZm9ybWluZworZmlsZW5hbWUgZXhwYW5zaW9uLiBGb3IgZXhhbXBsZSB0aGlzIHdpbGwgbGlzdCBhbGwgcGFja2FnZSBuYW1lcyBzdGFydGluZword2l0aCBcKihscWxpYmM2XCoocnE6CisKKy5uZgorICBcZkJkcGtnXC1xdWVyeSBcLWwgXChhcWxpYmM2KlwoYXFcZlAKKy5maQorCitUaGUgZmlyc3QgdGhyZWUgY29sdW1ucyBvZiB0aGUgb3V0cHV0IHNob3cgdGhlIGRlc2lyZWQgYWN0aW9uLCB0aGUgcGFja2FnZQorc3RhdHVzLCBhbmQgZXJyb3JzLCBpbiB0aGF0IG9yZGVyLgorCitEZXNpcmVkIGFjdGlvbjoKKy5uZgorICB1ID0gVW5rbm93bgorICBpID0gSW5zdGFsbAorICBoID0gSG9sZAorICByID0gUmVtb3ZlCisgIHAgPSBQdXJnZQorLmZpCisKK1BhY2thZ2Ugc3RhdHVzOgorLm5mCisgIG4gPSBOb3QtaW5zdGFsbGVkCisgIGMgPSBDb25maWctZmlsZXMKKyAgSCA9IEhhbGYtaW5zdGFsbGVkCisgIFUgPSBVbnBhY2tlZAorICBGID0gSGFsZi1jb25maWd1cmVkCisgIFcgPSBUcmlnZ2Vycy1hd2FpdGluZworICB0ID0gVHJpZ2dlcnMtcGVuZGluZworICBpID0gSW5zdGFsbGVkCisuZmkKKworRXJyb3IgZmxhZ3M6CisubmYKKyAgPGVtcHR5PiA9IChub25lKQorICBSID0gUmVpbnN0LXJlcXVpcmVkCisuZmkKKworQW4gdXBwZXJjYXNlIHN0YXR1cyBvciBlcnJvciBsZXR0ZXIgaW5kaWNhdGVzIHRoZSBwYWNrYWdlIGlzIGxpa2VseSB0bworY2F1c2Ugc2V2ZXJlIHByb2JsZW1zLiBQbGVhc2UgcmVmZXIgdG8gXGZCZHBrZ1xmUCgxKSBmb3IgaW5mb3JtYXRpb24KK2Fib3V0IHRoZSBhYm92ZSBzdGF0ZXMgYW5kIGZsYWdzLgorCitUaGUgb3V0cHV0IGZvcm1hdCBvZiB0aGlzIG9wdGlvbiBpcyBub3QgY29uZmlndXJhYmxlLCBidXQgdmFyaWVzCithdXRvbWF0aWNhbGx5IHRvIGZpdCB0aGUgdGVybWluYWwgd2lkdGguIEl0IGlzIGludGVuZGVkIGZvciBodW1hbgorcmVhZGVycywgYW5kIGlzIG5vdCBlYXNpbHkgbWFjaGluZS1yZWFkYWJsZS4gU2VlIFxmQlwtV1xmUCAoXGZCXC1cLXNob3dcZlApCithbmQgXGZCXC1cLXNob3dmb3JtYXRcZlAgZm9yIGEgd2F5IHRvIGNvbmZpZ3VyZSB0aGUgb3V0cHV0IGZvcm1hdC4KKy5UUAorLkJSIFwtVyAiLCAiIFwtXC1zaG93ICIgW1xmSXBhY2thZ2UtbmFtZS1wYXR0ZXJuXGZQLi4uXSIKK0p1c3QgbGlrZSB0aGUgXGZCXC1cLWxpc3RcZlAgb3B0aW9uIHRoaXMgd2lsbCBsaXN0IGFsbCBwYWNrYWdlcyBtYXRjaGluZwordGhlIGdpdmVuIHBhdHRlcm4uIEhvd2V2ZXIgdGhlIG91dHB1dCBjYW4gYmUgY3VzdG9taXplZCB1c2luZyB0aGUKK1xmQlwtXC1zaG93Zm9ybWF0XGZQIG9wdGlvbi4KK1RoZSBkZWZhdWx0IG91dHB1dCBmb3JtYXQgZ2l2ZXMgb25lIGxpbmUgcGVyIG1hdGNoaW5nIHBhY2thZ2UsIGVhY2ggbGluZQoraGF2aW5nIHRoZSBuYW1lIGFuZCBpbnN0YWxsZWQgdmVyc2lvbiBvZiB0aGUgcGFja2FnZSwgc2VwYXJhdGVkIGJ5IGEgdGFiLgorLlRQCisuQlIgXC1zICIsICIgXC1cLXN0YXR1cyAiIFxmSXBhY2thZ2UtbmFtZVxmUC4uLiIKK1JlcG9ydCBzdGF0dXMgb2Ygc3BlY2lmaWVkIHBhY2thZ2UuIFRoaXMganVzdCBkaXNwbGF5cyB0aGUgZW50cnkgaW4KK3RoZSBpbnN0YWxsZWQgcGFja2FnZSBzdGF0dXMgZGF0YWJhc2UuIFdoZW4gbXVsdGlwbGUgXGZJcGFja2FnZS1uYW1lXGZQCithcmUgbGlzdGVkLCB0aGUgcmVxdWVzdGVkIHN0YXR1cyBlbnRyaWVzIGFyZSBzZXBhcmF0ZWQgYnkgYW4gZW1wdHkgbGluZS4KKy5UUAorLkJSIFwtTCAiLCAiIFwtXC1saXN0ZmlsZXMgIiBcZklwYWNrYWdlLW5hbWVcZlAuLi4iCitMaXN0IGZpbGVzIGluc3RhbGxlZCB0byB5b3VyIHN5c3RlbSBmcm9tIFxmSXBhY2thZ2UtbmFtZVxmUC4gV2hlbiBtdWx0aXBsZQorXGZJcGFja2FnZS1uYW1lXGZQIGFyZSBsaXN0ZWQsIHRoZSByZXF1ZXN0ZWQgbGlzdHMgb2YgZmlsZXMgYXJlIHNlcGFyYXRlZAorYnkgYW4gZW1wdHkgbGluZS4gSG93ZXZlciwgbm90ZSB0aGF0IGZpbGVzIGNyZWF0ZWQgYnkgcGFja2FnZS1zcGVjaWZpYworaW5zdGFsbGF0aW9uLXNjcmlwdHMgYXJlIG5vdCBsaXN0ZWQuCisuVFAKKy5CUiBcLWMgIiwgIiBcLVwtY29udHJvbFwtcGF0aCAiIFxmSXBhY2thZ2UtbmFtZVxmUCBbXGZJY29udHJvbC1maWxlXGZQXSIKK0xpc3QgcGF0aHMgZm9yIGNvbnRyb2wgZmlsZXMgaW5zdGFsbGVkIHRvIHlvdXIgc3lzdGVtIGZyb20gXGZJcGFja2FnZS1uYW1lXGZQLgorSWYgXGZJY29udHJvbC1maWxlXGZQIGlzIHNwZWNpZmllZCB0aGVuIG9ubHkgbGlzdCB0aGUgcGF0aCBmb3IgdGhhdCBjb250cm9sCitmaWxlIGlmIGl0IGlzIHByZXNlbnQuIFxmQldhcm5pbmdcZlA6IHRoaXMgY29tbWFuZCBpcyBzZW1pLXB1YmxpYywgaXQgc2hvdWxkCitiZSB1c2VkIG9ubHkgYXMgYSBsYXN0IHJlc29ydCBzb2x1dGlvbiwgYW5kIGlmIG5vIG90aGVyIGludGVyZmFjZSBpcworYXZhaWxhYmxlLiBJdCBtaWdodCBnZXQgZGVwcmVjYXRlZCBsYXRlciBvbiBpZiBiZXR0ZXIgaW50ZXJmYWNlcyBvciB0aGUKK2N1cnJlbnQgYXJjaGl0ZWN0dXJhbCBkZWZpY2llbmNpZXMgaGF2ZSBiZWVuIHNvbHZlZC4KKy5UUAorLkJSIFwtUyAiLCAiIFwtXC1zZWFyY2ggIiBcZklmaWxlbmFtZS1zZWFyY2gtcGF0dGVyblxmUC4uLiIKK1NlYXJjaCBmb3IgcGFja2FnZXMgdGhhdCBvd24gZmlsZXMgY29ycmVzcG9uZGluZyB0byB0aGUgZ2l2ZW4gcGF0dGVybi4KK1N0YW5kYXJkIHNoZWxsIHdpbGRjaGFycyBjYW4gYmUgdXNlZCBpbiB0aGUgcGF0dGVybi4KK1RoaXMgY29tbWFuZCB3aWxsIG5vdCBsaXN0IGV4dHJhIGZpbGVzIGNyZWF0ZWQgYnkgbWFpbnRhaW5lciBzY3JpcHRzLAorbm9yIHdpbGwgaXQgbGlzdCBhbHRlcm5hdGl2ZXMuCisuVFAKKy5CUiBcLXAgIiwgIiBcLVwtcHJpbnRcLWF2YWlsICIgXGZJcGFja2FnZS1uYW1lXGZQLi4uIgorRGlzcGxheSBkZXRhaWxzIGFib3V0IFxmSXBhY2thZ2UtbmFtZVxmUCwgYXMgZm91bmQgaW4KK1xmSS92YXIvbGliL2Rwa2cvYXZhaWxhYmxlXGZQLiBXaGVuIG11bHRpcGxlIFxmSXBhY2thZ2UtbmFtZVxmUCBhcmUKK2xpc3RlZCwgdGhlIHJlcXVlc3RlZCBcZklhdmFpbGFibGVcZlAgZW50cmllcyBhcmUgc2VwYXJhdGVkIGJ5IGFuIGVtcHR5CitsaW5lLgorCitVc2VycyBvZiBBUFQtYmFzZWQgZnJvbnRlbmRzCitzaG91bGQgdXNlIFxmQmFwdFwtY2FjaGUgc2hvd1xmUCBcZklwYWNrYWdlLW5hbWVcZlAgaW5zdGVhZAorYXMgdGhlIFxmSWF2YWlsYWJsZVxmUCBmaWxlIGlzIG9ubHkga2VwdCB1cC10by1kYXRlIHdoZW4KK3VzaW5nIFxmQmRzZWxlY3RcZlAuCisuVFAKKy5CUiBcLWggIiwgIiBcLVwtaGVscAorU2hvdyB0aGUgdXNhZ2UgbWVzc2FnZSBhbmQgZXhpdC4KKy5UUAorLkIgXC1cLXZlcnNpb24KK1Nob3cgdGhlIHZlcnNpb24gYW5kIGV4aXQuCisuCisuU0ggT1BUSU9OUworLlRQCisuQkkgXC1cLWFkbWluZGlyPSBkaXIKK0NoYW5nZSB0aGUgbG9jYXRpb24gb2YgdGhlIFxmQmRwa2dcZlIgZGF0YWJhc2UuIFRoZSBkZWZhdWx0IGxvY2F0aW9uIGlzCitcZkkvdmFyL2xpYi9kcGtnXGZQLgorLlRQCisuQlIgXC1mICIsICIgXC1cLXNob3dmb3JtYXQ9XGZJZm9ybWF0XGZSCitUaGlzIG9wdGlvbiBpcyB1c2VkIHRvIHNwZWNpZnkgdGhlIGZvcm1hdCBvZiB0aGUgb3V0cHV0IFxmQlwtXC1zaG93XGZQCit3aWxsIHByb2R1Y2UuIFRoZSBmb3JtYXQgaXMgYSBzdHJpbmcgdGhhdCB3aWxsIGJlIG91dHB1dCBmb3IgZWFjaCBwYWNrYWdlCitsaXN0ZWQuCisKK0luIHRoZSBmb3JtYXQgc3RyaW5nLCBcKGxxXGZCXGVcZlBcKHJxIGludHJvZHVjZXMgZXNjYXBlczoKKworLm5mCisgICAgXGZCXGVuXGZQICBuZXdsaW5lCisgICAgXGZCXGVyXGZQICBjYXJyaWFnZSByZXR1cm4KKyAgICBcZkJcZXRcZlAgIHRhYgorLmZpCisKK1wobHFcZkJcZVxmUFwocnEgYmVmb3JlIGFueSBvdGhlciBjaGFyYWN0ZXIgc3VwcHJlc3NlcyBhbnkgc3BlY2lhbAorbWVhbmluZyBvZiB0aGUgZm9sbG93aW5nIGNoYXJhY3Rlciwgd2hpY2ggaXMgdXNlZnVsIGZvciBcKGxxXGZCXGVcZlBcKHJxCithbmQgXChscVxmQiRcZlBcKHJxLgorCitQYWNrYWdlIGluZm9ybWF0aW9uIGNhbiBiZSBpbmNsdWRlZCBieSBpbnNlcnRpbmcKK3ZhcmlhYmxlIHJlZmVyZW5jZXMgdG8gcGFja2FnZSBmaWVsZHMgdXNpbmcgdGhlIHN5bnRheAorXChscVxmQiR7XGZQXGZJZmllbGRcZlJbXGZCO1xmUFxmSXdpZHRoXGZSXVxmQn1cZlBcKHJxLiBGaWVsZHMgYXJlCitwcmludGVkIHJpZ2h0LWFsaWduZWQgdW5sZXNzIHRoZSB3aWR0aCBpcyBuZWdhdGl2ZSBpbiB3aGljaCBjYXNlIGxlZnQKK2FsaWdubWVudCB3aWxsIGJlIHVzZWQuIFRoZSBmb2xsb3dpbmcgXGZJZmllbGRcZlJzIGFyZSByZWNvZ25pc2VkIGJ1dAordGhleSBhcmUgbm90IG5lY2Vzc2FyaWx5IGF2YWlsYWJsZSBpbiB0aGUgc3RhdHVzIGZpbGUgKG9ubHkgaW50ZXJuYWwKK2ZpZWxkcyBvciBmaWVsZHMgc3RvcmVkIGluIHRoZSBiaW5hcnkgcGFja2FnZSBlbmQgdXAgaW4gaXQpOgorCisubmYKKyAgICBcZkJBcmNoaXRlY3R1cmVcZlAKKyAgICBcZkJCdWdzXGZQCisgICAgXGZCQ29uZmZpbGVzXGZQIChpbnRlcm5hbCkKKyAgICBcZkJDb25maWdcLVZlcnNpb25cZlAgKGludGVybmFsKQorICAgIFxmQkNvbmZsaWN0c1xmUAorICAgIFxmQkJyZWFrc1xmUAorICAgIFxmQkRlcGVuZHNcZlAKKyAgICBcZkJEZXNjcmlwdGlvblxmUAorICAgIFxmQkVuaGFuY2VzXGZQCisgICAgXGZCRXNzZW50aWFsXGZQCisgICAgXGZCRmlsZW5hbWVcZlAgKGludGVybmFsLCBmcm9udC1lbmQgcmVsYXRlZCkKKyAgICBcZkJIb21lcGFnZVxmUAorICAgIFxmQkluc3RhbGxlZFwtU2l6ZVxmUAorICAgIFxmQk1ENXN1bVxmUCAoaW50ZXJuYWwsIGZyb250LWVuZCByZWxhdGVkKQorICAgIFxmQk1TRE9TXC1GaWxlbmFtZVxmUCAoaW50ZXJuYWwsIGZyb250LWVuZCByZWxhdGVkKQorICAgIFxmQk1haW50YWluZXJcZlAKKyAgICBcZkJPcmlnaW5cZlAKKyAgICBcZkJQYWNrYWdlXGZQCisgICAgXGZCUHJlXC1EZXBlbmRzXGZQCisgICAgXGZCUHJpb3JpdHlcZlAKKyAgICBcZkJQcm92aWRlc1xmUAorICAgIFxmQlJlY29tbWVuZHNcZlAKKyAgICBcZkJSZXBsYWNlc1xmUAorICAgIFxmQlJldmlzaW9uXGZQIChvYnNvbGV0ZSkKKyAgICBcZkJTZWN0aW9uXGZQCisgICAgXGZCU2l6ZVxmUCAoaW50ZXJuYWwsIGZyb250LWVuZCByZWxhdGVkKQorICAgIFxmQlNvdXJjZVxmUAorICAgIFxmQlN0YXR1c1xmUCAoaW50ZXJuYWwpCisgICAgXGZCU3VnZ2VzdHNcZlAKKyAgICBcZkJUYWdcZlAgKHVzdWFsbHkgbm90IGluIHRoZSAuZGViIGJ1dCBpbiB0aGUgcmVwb3NpdG9yeSBQYWNrYWdlcyBmaWxlcykKKyAgICBcZkJUcmlnZ2Vyc1wtQXdhaXRlZFxmUCAoaW50ZXJuYWwpCisgICAgXGZCVHJpZ2dlcnNcLVBlbmRpbmdcZlAgKGludGVybmFsKQorICAgIFxmQlZlcnNpb25cZlAKKy5maQorCitUaGUgZGVmYXVsdCBmb3JtYXQgc3RyaW5nIGlzIFwobHFcZkIke1BhY2thZ2V9XGV0JHtWZXJzaW9ufVxlblxmUFwocnEuCitBY3R1YWxseSwgYWxsIG90aGVyIGZpZWxkcyBmb3VuZCBpbiB0aGUgc3RhdHVzIGZpbGUgKGkuZS4gdXNlciBkZWZpbmVkCitmaWVsZHMpIGNhbiBiZSByZXF1ZXN0ZWQsIHRvby4gVGhleSB3aWxsIGJlIHByaW50ZWQgYXMtaXMsIHRob3VnaCwgbm8KK2NvbnZlcnNpb24gbm9yIGVycm9yIGNoZWNraW5nIGlzIGRvbmUgb24gdGhlbS4KK1RvIGdldCB0aGUgbmFtZSBvZiB0aGUgZHBrZyBtYWludGFpbmVyIGFuZCB0aGUgaW5zdGFsbGVkIHZlcnNpb24sIHlvdSBjb3VsZAorcnVuOgorCisubmYKKyAgXGZCZHBrZ1wtcXVlcnkgXC1XIFwtZj1cKGFxJHtQYWNrYWdlfSAke1ZlcnNpb259XFx0JHtNYWludGFpbmVyfVxcblwoYXEgZHBrZ1xmUAorLmZpCisuCisuU0ggIkVYSVQgU1RBVFVTIgorLlRQCisuQiAwCitUaGUgcmVxdWVzdGVkIHF1ZXJ5IHdhcyBzdWNjZXNzZnVsbHkgcGVyZm9ybWVkLgorLlRQCisuQiAxCitQcm9ibGVtcyB3ZXJlIGVuY291bnRlcmVkIHdoaWxlIHBhcnNpbmcgdGhlIGNvbW1hbmQgbGluZSBvciBwZXJmb3JtaW5nIHRoZQorcXVlcnksIGluY2x1ZGluZyBubyBmaWxlIG9yIHBhY2thZ2UgYmVpbmcgZm91bmQgKGV4Y2VwdCBmb3IgXC1cLWNvbnRyb2xcLXBhdGgpLgorLgorLlNIIEVOVklST05NRU5UCisuVFAKKy5CIERQS0dfQURNSU5ESVIKK0lmIHNldCBhbmQgdGhlIFxmQlwtXC1hZG1pbmRpclxmUCBvcHRpb24gaGFzIG5vdCBiZWVuIHNwZWNpZmllZCwgaXQgd2lsbAorYmUgdXNlZCBhcyB0aGUgZHBrZyBkYXRhIGRpcmVjdG9yeS4KKy5UUAorXGZCQ09MVU1OU1xmUAorVGhpcyBzZXR0aW5nIGluZmx1ZW5jZXMgdGhlIG91dHB1dCBvZiB0aGUgXGZCXC1cLWxpc3RcZlAgb3B0aW9uIGJ5IGNoYW5naW5nCit0aGUgd2lkdGggb2YgaXRzIG91dHB1dC4KKy4KKy5TSCBBVVRIT1IKK0NvcHlyaWdodCBcKGNvIDIwMDEgV2ljaGVydCBBa2tlcm1hbgorLnNwCitUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgdmVyc2lvbiAyIG9yCitsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyBXQVJSQU5UWS4KKy4KKy5TSCBTRUUgQUxTTworLkJSIGRwa2cgKDEpLgorCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9kcGtnLXNjYW5wYWNrYWdlcy4xIGIvZHBrZy0xLjE2LjEuMS9tYW4vZHBrZy1zY2FucGFja2FnZXMuMQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wNGI3NDMxCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vZHBrZy1zY2FucGFja2FnZXMuMQpAQCAtMCwwICsxLDExNSBAQAorLlwiIENvcHlyaWdodCDCqSAxOTk2IE1pY2hhZWwgU2hpZWxkcyA8c2hpZWxkc0Bjcm9zc2xpbmsubmV0PgorLlwiIAorLlwiIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IG1heSByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorLlwiIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisuXCIgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKy5cIiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorLlwiCisuXCIgVGhpcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorLlwiIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisuXCIgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorLlwiIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisuXCIKKy5cIiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorLlwiIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorLlRIIGRwa2dcLXNjYW5wYWNrYWdlcyAxICIyMDExLTA4LTE0IiAiRGViaWFuIFByb2plY3QiICJkcGtnIHV0aWxpdGllcyIKKy5TSCBOQU1FCitkcGtnXC1zY2FucGFja2FnZXMgXC0gY3JlYXRlIFBhY2thZ2VzIGluZGV4IGZpbGVzCisuCisuU0ggU1lOT1BTSVMKKy5CIGRwa2dcLXNjYW5wYWNrYWdlcworLlJJIFsgb3B0aW9uICIuLi5dICIgYmluYXJ5LWRpcgorLlJJIFsgb3ZlcnJpZGUtZmlsZQorLlJJIFsgcGF0aC1wcmVmaXggXV0KKy5CID4KKy5JIFBhY2thZ2VzCisuCisuU0ggREVTQ1JJUFRJT04KKy5CIGRwa2dcLXNjYW5wYWNrYWdlcworc29ydHMgdGhyb3VnaCBhIHRyZWUgb2YgRGViaWFuIGJpbmFyeSBwYWNrYWdlcyBhbmQgY3JlYXRlcyBhIFBhY2thZ2VzCitmaWxlLCB1c2VkIGJ5CisuQlIgYXB0ICg4KSwKKy5CUiBkc2VsZWN0ICgxKSwKK2V0YywgdG8gdGVsbCB0aGUgdXNlciB3aGF0IHBhY2thZ2VzIGFyZSBhdmFpbGFibGUgZm9yIGluc3RhbGxhdGlvbi4gVGhlc2UKK1BhY2thZ2VzIGZpbGVzIGFyZSB0aGUgc2FtZSBhcyB0aG9zZSBmb3VuZCBvbiBEZWJpYW4gYXJjaGl2ZSBzaXRlcworYW5kIENELVJPTXMuIFlvdSBtaWdodCB1c2UKKy5CIGRwa2dcLXNjYW5wYWNrYWdlcworeW91cnNlbGYgaWYgbWFraW5nIGEgZGlyZWN0b3J5IG9mIGxvY2FsIHBhY2thZ2VzIHRvIGluc3RhbGwgb24gYSBjbHVzdGVyCitvZiBtYWNoaW5lcy4KKy5QUAorLkIgTm90ZToKK0lmIHlvdSB3YW50IHRvIGFjY2VzcyB0aGUgZ2VuZXJhdGVkIFBhY2thZ2VzIGZpbGUgd2l0aAorLkIgYXB0Cit5b3Ugd2lsbCBwcm9iYWJseSBuZWVkIHRvIGNvbXByZXNzIHRoZSBmaWxlIHdpdGgKKy5CUiBiemlwMiAoMSkKKyhnZW5lcmF0aW5nIGEgUGFja2FnZXMuYnoyIGZpbGUpIG9yCisuQlIgZ3ppcCAoMSkKKyhnZW5lcmF0aW5nIGEgUGFja2FnZXMuZ3ogZmlsZSkuIGFwdCBpZ25vcmVzIHVuY29tcHJlc3NlZCBQYWNrYWdlcworZmlsZXMgZXhjZXB0IG9uIGxvY2FsIGFjY2VzcyAoaS5lLgorLkIgZmlsZTovLworc291cmNlcykuCisuUFAKKy5JIGJpbmFyeWRpcgoraXMgdGhlIG5hbWUgb2YgdGhlIHRyZWUgb2YgdGhlIGJpbmFyeSBwYWNrYWdlcyB0byBwcm9jZXNzIChmb3IgZXhhbXBsZSwKKy5CUiBjb250cmliL2JpbmFyeVwtaTM4NiApLgorSXQgaXMgYmVzdCB0byBtYWtlIHRoaXMgcmVsYXRpdmUgdG8gdGhlIHJvb3Qgb2YgdGhlIERlYmlhbiBhcmNoaXZlLAorYmVjYXVzZSBldmVyeSBGaWxlbmFtZSBmaWVsZCBpbiB0aGUgbmV3IFBhY2thZ2VzIGZpbGUgd2lsbCBzdGFydCB3aXRoCit0aGlzIHN0cmluZy4KKy5QUAorLkkgb3ZlcnJpZGVmaWxlCitpcyB0aGUgbmFtZSBvZiBhIGZpbGUgdG8gcmVhZCB3aGljaCBjb250YWlucyBpbmZvcm1hdGlvbiBhYm91dCBob3cgdGhlCitwYWNrYWdlIGZpdHMgaW50byB0aGUgZGlzdHJpYnV0aW9uIChpdCBjYW4gYmUgYSBjb21wcmVzc2VkIGZpbGUpOyBzZWUKKy5CUiBkZWJcLW92ZXJyaWRlICg1KS4KKy5QUAorLkkgcGF0aHByZWZpeAoraXMgYW4gb3B0aW9uYWwgc3RyaW5nIHRvIGJlIHByZXBlbmRlZCB0byB0aGUgRmlsZW5hbWUgZmllbGRzLgorLlBQCitJZiBtb3JlIHRoYW4gb25lIHZlcnNpb24gb2YgYSBwYWNrYWdlIGlzIGZvdW5kIG9ubHkgdGhlIG5ld2VzdCBvbmUKK2lzIGluY2x1ZGVkIGluIHRoZSBvdXRwdXQuIElmIHRoZXkgaGF2ZSB0aGUgc2FtZSB2ZXJzaW9uIGFuZCBvbmx5CitkaWZmZXIgaW4gYXJjaGl0ZWN0dXJlIG9ubHkgdGhlIGZpcnN0IG9uZSBmb3VuZCBpcyB1c2VkLgorLgorLlNIIE9QVElPTlMKKy5UUAorLkJSIFwtdCAiLCAiIFwtXC10eXBlICIgXGZJdHlwZVxmUCIKK1NjYW4gZm9yICouXGZJdHlwZVxmUCBwYWNrYWdlcywgaW5zdGVhZCBvZiAqLmRlYi4KKy5UUAorLkJSIFwtdSAiLCAiIFwtXC11ZGViCitcZkJPYnNvbGV0ZVxmUCBhbGlhcyBmb3IgXGZCXC10dWRlYlxmUC4KKy5UUAorLkJSIFwtZSAiLCAiIFwtXC1leHRyYVwtb3ZlcnJpZGUgIiBcZklmaWxlXGZQIgorU2NhbiBcZklmaWxlXGZQIHRvIGZpbmQgc3VwcGxlbWVudGFyeSBvdmVycmlkZXMgKHRoZSBmaWxlIGNhbiBiZQorY29tcHJlc3NlZCkuIFNlZQorLkJSIGRlYlwtZXh0cmFcLW92ZXJyaWRlICg1KQorZm9yIG1vcmUgaW5mb3JtYXRpb24gb24gaXRzIGZvcm1hdC4KKy5UUAorLkJSIFwtYSAiLCAiIFwtXC1hcmNoICIgXGZJYXJjaFxmUCIKK1VzZSBhIHBhdHRlcm4gY29uc2lzdGluZyBvZiBcZkkqX2FsbC5kZWJcZlAgYW5kIFxmSSpfYXJjaC5kZWJcZlAgaW5zdGVhZCBvZgorc2Nhbm5pbmcgZm9yIGFsbCBkZWJzLgorLlRQCisuQlIgXC1tICIsICIgXC1cLW11bHRpdmVyc2lvbgorSW5jbHVkZSBhbGwgZm91bmQgcGFja2FnZXMgaW4gdGhlIG91dHB1dC4KKy5UUAorLkJSIFwtTSAiLCAiIFwtXC1tZWRpdW0gIiBcZklpZC1zdHJpbmdcZlAiCitBZGQgYW4gWFwtTWVkaXVtIGZpZWxkIGNvbnRhaW5pbmcgdGhlIHZhbHVlIFxmSWlkLXN0cmluZ1xmUC4gVGhpcyBmaWVsZAoraXMgcmVxdWlyZWQgaWYgeW91IHdhbnQgdG8gZ2VuZXJhdGUgXGZCUGFja2FnZXMuY2RcZlAgZmlsZXMgZm9yIHVzZQorYnkgdGhlIG11bHRpY2QgYWNjZXNzIG1ldGhvZCBvZiBkc2VsZWN0LgorLlRQCisuQlIgXC1oICIsICIgXC1cLWhlbHAKK1Nob3cgdGhlIHVzYWdlIG1lc3NhZ2UgYW5kIGV4aXQuCisuVFAKKy5CUiBcLVwtdmVyc2lvbgorU2hvdyB0aGUgdmVyc2lvbiBhbmQgZXhpdC4KKy4KKy5TSCBESUFHTk9TVElDUworLkIgZHBrZ1wtc2NhbnBhY2thZ2VzCitvdXRwdXRzIHRoZSB1c3VhbCBzZWxmLWV4cGxhbmF0b3J5IGVycm9ycy4gSXQgYWxzbyB3YXJucyBhYm91dCBwYWNrYWdlcwordGhhdCBhcmUgaW4gdGhlIHdyb25nIHN1YmRpcmVjdG9yeSwgYXJlIGR1cGxpY2F0ZWQsIGhhdmUgYSBGaWxlbmFtZQorZmllbGQgaW4gdGhlaXIgY29udHJvbCBmaWxlLCBhcmUgbWlzc2luZyBmcm9tIHRoZSBvdmVycmlkZSBmaWxlLCBvciBoYXZlCittYWludGFpbmVyIHN1YnN0aXR1dGlvbnMgd2hpY2ggZG8gbm90IHRha2UgZWZmZWN0LgorLgorLlNIIFNFRSBBTFNPCisuQlIgZHBrZyAoMSksCisuQlIgZHNlbGVjdCAoMSksCisuQlIgZGViXC1vdmVycmlkZSAoNSksCisuQlIgZGViXC1leHRyYVwtb3ZlcnJpZGUgKDUpLAorLkJSIGRwa2dcLXNjYW5zb3VyY2VzICgxKS4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL2Rwa2ctc2NhbnNvdXJjZXMuMSBiL2Rwa2ctMS4xNi4xLjEvbWFuL2Rwa2ctc2NhbnNvdXJjZXMuMQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jY2NmZTFlCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vZHBrZy1zY2Fuc291cmNlcy4xCkBAIC0wLDAgKzEsNzcgQEAKKy5USCBkcGtnXC1zY2Fuc291cmNlcyAxICIyMDExLTA4LTE0IiAiRGViaWFuIFByb2plY3QiICJkcGtnIHV0aWxpdGllcyIKKy5TSCBOQU1FCitkcGtnXC1zY2Fuc291cmNlcyBcLSBjcmVhdGUgU291cmNlcyBpbmRleCBmaWxlcworLgorLlNIIFNZTk9QU0lTCisuQiBkcGtnXC1zY2Fuc291cmNlcworLlJJIFsgb3B0aW9uICIuLi5dICIgYmluYXJ5LWRpcgorLlJJIFsgb3ZlcnJpZGUtZmlsZQorLlJJIFsgcGF0aC1wcmVmaXggXV0KKy5CID4KKy5JIFNvdXJjZXMKKy4KKy5TSCBERVNDUklQVElPTgorXGZCZHBrZ1wtc2NhbnNvdXJjZXNcZlIgc2NhbnMgdGhlIGdpdmVuIFxmSWJpbmFyeS1kaXJcZlIgZm9yIFxmSS5kc2NcZlIgZmlsZXMuCitUaGVzZSBhcmUgdXNlZCB0byBjcmVhdGUgYSBEZWJpYW4gc291cmNlIGluZGV4LCB3aGljaCBpcyBvdXRwdXQgdG8KK3N0ZG91dC4KKy5QUAorVGhlIFxmSW92ZXJyaWRlLWZpbGVcZlIsIGlmIGdpdmVuLCBpcyB1c2VkIHRvIHNldCBwcmlvcml0aWVzIGluIHRoZSByZXN1bHRpbmcKK2luZGV4IHJlY29yZHMgYW5kIHRvIG92ZXJyaWRlIHRoZSBtYWludGFpbmVyIGZpZWxkIGdpdmVuIGluIHRoZSBcZkkuZHNjXGZSCitmaWxlcy4gVGhlIGZpbGUgY2FuIGJlIGNvbXByZXNzZWQuIFNlZQorLkJSIGRlYlwtb3ZlcnJpZGUgKDUpCitmb3IgdGhlIGZvcm1hdCBvZiB0aGlzIGZpbGUuIFxzLTFOQjpcczAgIFNpbmNlCit0aGUgb3ZlcnJpZGUgZmlsZSBpcyBpbmRleGVkIGJ5IGJpbmFyeSwgbm90IHNvdXJjZSwgcGFja2FnZXMsIHRoZXJlJ3MgYSBiaXQKK29mIGEgcHJvYmxlbSBoZXJlLiBUaGUgY3VycmVudCBpbXBsZW1lbnRhdGlvbiB1c2VzIHRoZSBoaWdoZXN0IHByaW9yaXR5IG9mCithbGwgdGhlIGJpbmFyeSBwYWNrYWdlcyBwcm9kdWNlZCBieSBhIFxmSS5kc2NcZlIgZmlsZSBmb3IgdGhlIHByaW9yaXR5IG9mIHRoZQorc291cmNlIHBhY2thZ2UsIGFuZCB0aGUgb3ZlcnJpZGUgZW50cnkgZm9yIHRoZSBmaXJzdCBiaW5hcnkgcGFja2FnZSBsaXN0ZWQKK2luIHRoZSBcZkkuZHNjXGZSIGZpbGUgdG8gbW9kaWZ5IG1haW50YWluZXIgaW5mb3JtYXRpb24uIFRoaXMgbWlnaHQgY2hhbmdlLgorLlBQCitUaGUgXGZJcGF0aC1wcmVmaXhcZlIsIGlmIGdpdmVuLCBpcyBwcmVwZW5kZWQgdG8gdGhlIGRpcmVjdG9yeSBmaWVsZCBpbiB0aGUKK2dlbmVyYXRlZCBzb3VyY2UgaW5kZXguIFlvdSBnZW5lcmFsbHkgdXNlIHRoaXMgdG8gbWFrZSB0aGUgZGlyZWN0b3J5CitmaWVsZHMgY29udGFpbiB0aGUgcGF0aCBmcm9tIHRoZSB0b3Agb2YgdGhlIERlYmlhbiBhcmNoaXZlIGhpZXJhcmNoeS4KKy4KKy5QUAorLkIgTm90ZToKK0lmIHlvdSB3YW50IHRvIGFjY2VzcyB0aGUgZ2VuZXJhdGVkIFNvdXJjZXMgZmlsZSB3aXRoCisuQlIgYXB0ICg4KQoreW91IHdpbGwgcHJvYmFibHkgbmVlZCB0byBjb21wcmVzcyB0aGUgZmlsZSB3aXRoCisuQlIgZ3ppcCAoMSkKKyhnZW5lcmF0aW5nIGEgU291cmNlcy5neiBmaWxlKS4gYXB0IGlnbm9yZXMgdW5jb21wcmVzc2VkIFNvdXJjZXMgZmlsZXMKK2V4Y2VwdCBvbiBsb2NhbCBhY2Nlc3MgKGkuZS4KKy5CIGZpbGU6Ly8KK3NvdXJjZXMpLgorLgorLlNIIE9QVElPTlMKKy5JUCAiXGZCXC1uXGZSLCBcZkJcLVwtbm9cLXNvcnRcZlIiIDQKK0Rvbid0IHNvcnQgdGhlIGluZGV4IHJlY29yZHMuIE5vcm1hbGx5IHRoZXkgYXJlIHNvcnRlZCBieSBzb3VyY2UgcGFja2FnZQorbmFtZS4KKy5UUAorLklQICJcZkJcLWVcZlIsIFxmQlwtXC1leHRyYVwtb3ZlcnJpZGVcZlIgXGZJZmlsZVxmUCIgNAorU2NhbiBcZklmaWxlXGZQIHRvIGZpbmQgc3VwcGxlbWVudGFyeSBvdmVycmlkZXMgKHRoZSBmaWxlIGNhbiBiZQorY29tcHJlc3NlZCkuIFNlZQorLkJSIGRlYlwtZXh0cmFcLW92ZXJyaWRlICg1KQorZm9yIG1vcmUgaW5mb3JtYXRpb24gb24gaXRzIGZvcm1hdC4KKy5JUCAiXGZCXC1zXGZSLCBcZkJcLVwtc291cmNlXC1vdmVycmlkZVxmUiBcZklmaWxlXGZSIiA0CitVc2UgXGZJZmlsZVxmUiBhcyB0aGUgc291cmNlIG92ZXJyaWRlIGZpbGUgKHRoZSBmaWxlIGNhbiBiZSBjb21wcmVzc2VkKS4KK1RoZSBkZWZhdWx0IGlzIHRoZSBuYW1lIG9mIHRoZSBvdmVycmlkZSBmaWxlIHlvdSBzcGVjaWZpZWQgd2l0aCBcZkkuc3JjXGZSCithcHBlbmRlZC4KKy5zcAorVGhlIHNvdXJjZSBvdmVycmlkZSBmaWxlIGlzIGluIGEgZGlmZmVyZW50IGZvcm1hdCBmcm9tIHRoZSBiaW5hcnkgb3ZlcnJpZGUKK2ZpbGUuIEl0IGNvbnRhaW5zIG9ubHkgdHdvIHdoaXRlc3BhY2Ugc2VwYXJhdGVkIGZpZWxkcywgdGhlIGZpcnN0IGlzIHRoZQorc291cmNlIHBhY2thZ2UgbmFtZSBhbmQgdGhlIHNlY29uZCBpcyB0aGUgc2VjdGlvbi4gQmxhbmsgbGluZXMgYW5kIGNvbW1lbnQKK2xpbmVzIGFyZSBpZ25vcmVkIGluIHRoZSBub3JtYWwgbWFubmVyLiBJZiBhIHBhY2thZ2UgYXBwZWFycyBpbiBib3RoIGZpbGVzCit0aGUgc291cmNlIG92ZXJyaWRlIHRha2VzIHByZWNlZGVuY2UgZm9yIHNldHRpbmcgdGhlIHNlY3Rpb24uCisuSVAgIlxmQlwtXC1kZWJ1Z1xmUiIgNAorVHVybiBkZWJ1Z2dpbmcgb24uCisuSVAgIlxmQlwtXC1oZWxwXGZSIiA0CitTaG93IHRoZSB1c2FnZSBtZXNzYWdlIGFuZCBleGl0LgorLklQICJcZkJcLVwtdmVyc2lvblxmUiIgNAorU2hvdyB0aGUgdmVyc2lvbiBhbmQgZXhpdC4KKy4KKy5TSCAiU0VFIEFMU08iCisuQlIgZGViXC1vdmVycmlkZSAoNSksCisuQlIgZGViXC1leHRyYVwtb3ZlcnJpZGUgKDUpLAorLkJSIGRwa2dcLXNjYW5wYWNrYWdlcyAoMSkuCisuCisuU0ggQVVUSE9SCitSb2RlcmljayBTY2hlcnRsZXIgPHJvZGVyaWNrQGFyZ29uLm9yZz4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL2Rwa2ctc2hsaWJkZXBzLjEgYi9kcGtnLTEuMTYuMS4xL21hbi9kcGtnLXNobGliZGVwcy4xCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjliYmM4ZWIKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9kcGtnLXNobGliZGVwcy4xCkBAIC0wLDAgKzEsMzM5IEBACisuVEggZHBrZ1wtc2hsaWJkZXBzIDEgIjIwMTEtMDgtMTQiICJEZWJpYW4gUHJvamVjdCIgImRwa2cgdXRpbGl0aWVzIgorLlNIIE5BTUUKK2Rwa2dcLXNobGliZGVwcyBcLSBnZW5lcmF0ZSBzaGFyZWQgbGlicmFyeSBzdWJzdHZhciBkZXBlbmRlbmNpZXMKKy4KKy5TSCBTWU5PUFNJUworLkIgZHBrZ1wtc2hsaWJkZXBzCisuUkkgWyBvcHRpb24gIi4uLl0gWyIgXGZCXC1lXGZQIF0gZXhlY3V0YWJsZSAiIFsiIG9wdGlvbiAuLi5dCisuCisuU0ggREVTQ1JJUFRJT04KKy5CIGRwa2dcLXNobGliZGVwcworY2FsY3VsYXRlcyBzaGFyZWQgbGlicmFyeSBkZXBlbmRlbmNpZXMgZm9yIGV4ZWN1dGFibGVzIG5hbWVkIGluIGl0cworYXJndW1lbnRzLiBUaGUgZGVwZW5kZW5jaWVzIGFyZSBhZGRlZCB0byB0aGUgc3Vic3RpdHV0aW9uCit2YXJpYWJsZXMgZmlsZQorLkIgZGViaWFuL3N1YnN0dmFycworYXMgdmFyaWFibGUgbmFtZXMKKy5CSSBzaGxpYnM6IGRlcGVuZGVuY3lmaWVsZAord2hlcmUKKy5JIGRlcGVuZGVuY3lmaWVsZAoraXMgYSBkZXBlbmRlbmN5IGZpZWxkIG5hbWUuIEFueSBvdGhlciB2YXJpYWJsZXMgc3RhcnRpbmcgd2l0aAorLkIgc2hsaWJzOgorYXJlIHJlbW92ZWQgZnJvbSB0aGUgZmlsZS4KKy5QCisuQiBkcGtnXC1zaGxpYmRlcHMKK2hhcyB0d28gcG9zc2libGUgc291cmNlcyBvZiBpbmZvcm1hdGlvbiB0byBnZW5lcmF0ZSBkZXBlbmRlbmN5CitpbmZvcm1hdGlvbi4gRWl0aGVyCisuSSBzeW1ib2xzCitmaWxlcyBvcgorLkkgc2hsaWJzCitmaWxlcy4gRm9yIGVhY2ggYmluYXJ5IHRoYXQKKy5CIGRwa2dcLXNobGliZGVwcworYW5hbHl6ZXMsIGl0IGZpbmRzIG91dCB0aGUgbGlzdCBvZiBsaWJyYXJpZXMgdGhhdCBpdCdzIGxpbmtlZCB3aXRoLgorVGhlbiwgZm9yIGVhY2ggbGlicmFyeSwgaXQgbG9va3MgdXAgZWl0aGVyIHRoZSAKKy5JIHN5bWJvbHMKK2ZpbGUsIG9yIHRoZQorLkkgc2hsaWJzCitmaWxlIChpZiB0aGUgZm9ybWVyIGRvZXNuJ3QgZXhpc3Qgb3IgaWYgZGViaWFuL3NobGlicy5sb2NhbCBjb250YWlucwordGhlIHJlbGV2YW50IGRlcGVuZGVuY3kpLiBCb3RoIGZpbGVzIGFyZSBzdXBwb3NlZCB0byBiZSBwcm92aWRlZAorYnkgdGhlIGxpYnJhcnkgcGFja2FnZSBhbmQgc2hvdWxkIHRodXMgYmUgYXZhaWxhYmxlIGFzCisvdmFyL2xpYi9kcGtnL2luZm8vXGZJcGFja2FnZVxmUi5cZklzeW1ib2xzXGZSCitvciAvdmFyL2xpYi9kcGtnL2luZm8vXGZJcGFja2FnZVxmUi5cZklzaGxpYnNcZlIuIFRoZSBwYWNrYWdlIG5hbWUgaXMKK2lkZW50aWZpZWQgaW4gdHdvIHN0ZXBzOiBmaW5kIHRoZSBsaWJyYXJ5IGZpbGUgb24gdGhlIHN5c3RlbSAobG9va2luZyBpbgordGhlIHNhbWUgZGlyZWN0b3JpZXMgdGhhdCBcZkJsZC5zb1xmUiB3b3VsZCB1c2UpLCB0aGVuIHVzZQorLkJJICJkcGtnIFwtUyAiIGxpYnJhcnktZmlsZQordG8gbG9va3VwIHRoZSBwYWNrYWdlIHByb3ZpZGluZyB0aGUgbGlicmFyeS4KKy5TUyBTeW1ib2xzIGZpbGVzCitTeW1ib2xzIGZpbGVzIGNvbnRhaW4gZmluZXItZ3JhaW5lZCBkZXBlbmRlbmN5IGluZm9ybWF0aW9uIGJ5IHByb3ZpZGluZwordGhlIG1pbmltdW0gZGVwZW5kZW5jeSBmb3IgZWFjaCBzeW1ib2wgdGhhdCB0aGUgbGlicmFyeSBleHBvcnRzLiBUaGUKK3NjcmlwdCB0cmllcyB0byBmaW5kIGEgc3ltYm9scyBmaWxlIGFzc29jaWF0ZWQgdG8gYSBsaWJyYXJ5IHBhY2thZ2UKK2luIHRoZSBmb2xsb3dpbmcgcGxhY2VzIChmaXJzdCBtYXRjaCBpcyB1c2VkKToKKy5JUCBkZWJpYW4vKi9ERUJJQU4vc3ltYm9scworU2hhcmVkIGxpYnJhcnkgaW5mb3JtYXRpb24gZ2VuZXJhdGVkIGJ5IHRoZSBjdXJyZW50IGJ1aWxkIHByb2Nlc3MgdGhhdCBhbHNvIGludm9rZWQKKy5CUiBkcGtnXC1zaGxpYmRlcHMgLgorVGhleSBhcmUgZ2VuZXJhdGVkIGJ5IAorLkJSIGRwa2dcLWdlbnN5bWJvbHMgKDEpLgorVGhleSBhcmUgb25seSB1c2VkIGlmIHRoZSBsaWJyYXJ5IGlzIGZvdW5kIGluIGEgcGFja2FnZSdzIGJ1aWxkIHRyZWUuIFRoZQorc3ltYm9scyBmaWxlIGluIHRoYXQgYnVpbGQgdHJlZSB0YWtlcyBwcmVjZWRlbmNlIG92ZXIgc3ltYm9scyBmaWxlcyBmcm9tCitvdGhlciBiaW5hcnkgcGFja2FnZXMuCisuSVAgL2V0Yy9kcGtnL3N5bWJvbHMvXGZJcGFja2FnZVxmUi5zeW1ib2xzLlxmSWFyY2hcZlIKKy5JUCAvZXRjL2Rwa2cvc3ltYm9scy9cZklwYWNrYWdlXGZSLnN5bWJvbHMKK1Blci1zeXN0ZW0gb3ZlcnJpZGluZyBzaGFyZWQgbGlicmFyeSBkZXBlbmRlbmN5IGluZm9ybWF0aW9uLgorXGZJYXJjaFxmUiBpcyB0aGUgYXJjaGl0ZWN0dXJlIG9mIHRoZSBjdXJyZW50IHN5c3RlbSAob2J0YWluZWQgYnkKKy5CUiAiZHBrZ1wtYXJjaGl0ZWN0dXJlIFwtcURFQl9IT1NUX0FSQ0giICkuCisuSVAgIk91dHB1dCBmcm9tIFwobHFcZkJkcGtnXC1xdWVyeSBcLVwtY29udHJvbFwtcGF0aFxmUiBcZklwYWNrYWdlXGZSIHN5bWJvbHNcKHJxIgorUGFja2FnZS1wcm92aWRlZCBzaGFyZWQgbGlicmFyeSBkZXBlbmRlbmN5IGluZm9ybWF0aW9uLgorVW5sZXNzIG92ZXJyaWRkZW4gYnkgXC1cLWFkbWluZGlyLCB0aG9zZSBmaWxlcyBhcmUgbG9jYXRlZCBpbiAvdmFyL2xpYi9kcGtnLgorLlAgCitXaGlsZSBzY2FubmluZyB0aGUgc3ltYm9scyB1c2VkIGJ5IGFsbCBiaW5hcmllcywKKy5CIGRwa2dcLXNobGliZGVwcworcmVtZW1iZXJzIHRoZSAoYmlnZ2VzdCkgbWluaW1hbCB2ZXJzaW9uIG5lZWRlZCBmb3IgZWFjaCBsaWJyYXJ5LiBBdCB0aGUgZW5kCitvZiB0aGUgcHJvY2VzcywgaXQgaXMgYWJsZSB0byB3cml0ZSBvdXQgdGhlIG1pbmltYWwgZGVwZW5kZW5jeSBmb3IgZXZlcnkKK2xpYnJhcnkgdXNlZCAocHJvdmlkZWQgdGhhdCB0aGUgaW5mb3JtYXRpb24gb2YgdGhlIFxmSXN5bWJvbHNcZlIgZmlsZXMgYXJlCithY2N1cmF0ZSkuCisuUAorQXMgYSBzYWZlLWd1YXJkIG1lYXN1cmUsIGEgc3ltYm9scyBmaWxlIGNhbiBwcm92aWRlIGEKK1xmSUJ1aWxkXC1EZXBlbmRzXC1QYWNrYWdlXGZSIG1ldGEtaW5mb3JtYXRpb24gZmllbGQgYW5kCisuQiBkcGtnXC1zaGxpYmRlcHMKK3dpbGwgZXh0cmFjdCB0aGUgbWluaW1hbCB2ZXJzaW9uIHJlcXVpcmVkIGJ5IHRoZSBjb3JyZXNwb25kaW5nIHBhY2thZ2UgaW4KK3RoZSBCdWlsZFwtRGVwZW5kcyBmaWVsZCBhbmQgdXNlIHRoaXMgdmVyc2lvbiBpZiBpdCdzIGhpZ2hlciB0aGFuIHRoZQorbWluaW1hbCB2ZXJzaW9uIGNvbXB1dGVkIGJ5IHNjYW5uaW5nIHN5bWJvbHMuCisuU1MgU2hsaWJzIGZpbGVzCitTaGxpYnMgZmlsZXMgYXNzb2NpYXRlIGRpcmVjdGx5IGEgbGlicmFyeSB0byBhIGRlcGVuZGVuY3kgKHdpdGhvdXQgbG9va2luZworYXQgdGhlIHN5bWJvbHMpLiBJdCdzIHRodXMgb2Z0ZW4gc3Ryb25nZXIgdGhhbiByZWFsbHkgbmVlZGVkIGJ1dCB2ZXJ5IHNhZmUKK2FuZCBlYXN5IHRvIGhhbmRsZS4KKy5QCitUaGUgZGVwZW5kZW5jaWVzIGZvciBhIGxpYnJhcnkgYXJlIGxvb2tlZCB1cCBpbiBzZXZlcmFsIHBsYWNlcy4gVGhlIGZpcnN0CitmaWxlIHByb3ZpZGluZyBpbmZvcm1hdGlvbiBmb3IgdGhlIGxpYnJhcnkgb2YgaW50ZXJlc3QgaXMgdXNlZDoKKy5JUCBkZWJpYW4vc2hsaWJzLmxvY2FsCitQYWNrYWdlLWxvY2FsIG92ZXJyaWRpbmcgc2hhcmVkIGxpYnJhcnkgZGVwZW5kZW5jeSBpbmZvcm1hdGlvbi4KKy5JUCAvZXRjL2Rwa2cvc2hsaWJzLm92ZXJyaWRlCitQZXItc3lzdGVtIG92ZXJyaWRpbmcgc2hhcmVkIGxpYnJhcnkgZGVwZW5kZW5jeSBpbmZvcm1hdGlvbi4KKy5JUCBkZWJpYW4vKi9ERUJJQU4vc2hsaWJzCitTaGFyZWQgbGlicmFyeSBpbmZvcm1hdGlvbiBnZW5lcmF0ZWQgYnkgdGhlIGN1cnJlbnQgYnVpbGQgcHJvY2VzcyB0aGF0IGFsc28gaW52b2tlZAorLkJSIGRwa2dcLXNobGliZGVwcyAuCitUaGV5IGFyZSBvbmx5IHVzZWQgaWYgdGhlIGxpYnJhcnkgaXMgZm91bmQgaW4gYSBwYWNrYWdlJ3MgYnVpbGQgdHJlZS4gVGhlCitzaGxpYnMgZmlsZSBpbiB0aGF0IGJ1aWxkIHRyZWUgdGFrZXMgcHJlY2VkZW5jZSBvdmVyIHNobGlicyBmaWxlcyBmcm9tCitvdGhlciBiaW5hcnkgcGFja2FnZXMuCisuSVAgIk91dHB1dCBmcm9tIFwobHFcZkJkcGtnXC1xdWVyeSBcLVwtY29udHJvbFwtcGF0aFxmUCBcZklwYWNrYWdlXGZSIHNobGlic1wocnEiCitQYWNrYWdlLXByb3ZpZGVkIHNoYXJlZCBsaWJyYXJ5IGRlcGVuZGVuY3kgaW5mb3JtYXRpb24uCitVbmxlc3Mgb3ZlcnJpZGRlbiBieSBcLVwtYWRtaW5kaXIsIHRob3NlIGZpbGVzIGFyZSBsb2NhdGVkIGluIC92YXIvbGliL2Rwa2cuCisuSVAgL2V0Yy9kcGtnL3NobGlicy5kZWZhdWx0CitQZXItc3lzdGVtIGRlZmF1bHQgc2hhcmVkIGxpYnJhcnkgZGVwZW5kZW5jeSBpbmZvcm1hdGlvbi4KKy5QCitUaGUgZXh0cmFjdGVkIGRlcGVuZGVuY2llcyBhcmUgdGhlbiBkaXJlY3RseSB1c2VkIChleGNlcHQgaWYgdGhleSBhcmUKK2ZpbHRlcmVkIG91dCBiZWNhdXNlIHRoZXkgaGF2ZSBiZWVuIGlkZW50aWZpZWQgYXMgZHVwbGljYXRlLCBvciBhcyB3ZWFrZXIKK3RoYW4gYW5vdGhlciBkZXBlbmRlbmN5KS4KKy5TSCBPUFRJT05TCisuQiBkcGtnXC1zaGxpYmRlcHMKK2ludGVycHJldHMgbm9uLW9wdGlvbiBhcmd1bWVudHMgYXMgZXhlY3V0YWJsZSBuYW1lcywganVzdCBhcyBpZiB0aGV5J2QKK2JlZW4gc3VwcGxpZWQgYXMKKy5CSSBcLWUgZXhlY3V0YWJsZVxmUi4KKy5UUAorLkJJIFwtZSBleGVjdXRhYmxlCitJbmNsdWRlIGRlcGVuZGVuY2llcyBhcHByb3ByaWF0ZSBmb3IgdGhlIHNoYXJlZCBsaWJyYXJpZXMgcmVxdWlyZWQgYnkKKy5JUiBleGVjdXRhYmxlIC4KKy5UUAorLkJJIFwtZCBkZXBlbmRlbmN5ZmllbGQKK0FkZCBkZXBlbmRlbmNpZXMgdG8gYmUgYWRkZWQgdG8gdGhlIGNvbnRyb2wgZmlsZSBkZXBlbmRlbmN5IGZpZWxkCisuSVIgZGVwZW5kZW5jeWZpZWxkIC4KKyhUaGUgZGVwZW5kZW5jaWVzIGZvciB0aGlzIGZpZWxkIGFyZSBwbGFjZWQgaW4gdGhlIHZhcmlhYmxlCisuQkkgc2hsaWJzOiBkZXBlbmRlbmN5ZmllbGRcZlIuKQorCitUaGUKKy5CSSBcLWQgZGVwZW5kZW5jeWZpZWxkCitvcHRpb24gdGFrZXMgZWZmZWN0IGZvciBhbGwgZXhlY3V0YWJsZXMgYWZ0ZXIgdGhlIG9wdGlvbiwgdW50aWwgdGhlCituZXh0CisuQkkgXC1kIGRlcGVuZGVuY3lmaWVsZFxmUi4KK1RoZSBkZWZhdWx0CisuSSBkZXBlbmRlbmN5ZmllbGQKK2lzCisuQlIgRGVwZW5kcyAuCisKK0lmIHRoZSBzYW1lIGRlcGVuZGVuY3kgZW50cnkgKG9yIHNldCBvZiBhbHRlcm5hdGl2ZXMpIGFwcGVhcnMgaW4gbW9yZQordGhhbiBvbmUgb2YgdGhlIHJlY29nbmlzZWQgZGVwZW5kZW5jeSBmaWVsZCBuYW1lcworLkJSIFByZVwtRGVwZW5kcyAiLCAiIERlcGVuZHMgIiwgIiBSZWNvbW1lbmRzICIsICIgRW5oYW5jZXMgIiBvciAiIFN1Z2dlc3RzCit0aGVuCisuQiBkcGtnXC1zaGxpYmRlcHMKK3dpbGwgYXV0b21hdGljYWxseSByZW1vdmUgdGhlIGRlcGVuZGVuY3kgZnJvbSBhbGwgZmllbGRzIGV4Y2VwdCB0aGUKK29uZSByZXByZXNlbnRpbmcgdGhlIG1vc3QgaW1wb3J0YW50IGRlcGVuZGVuY2llcy4KKy5UUAorLkJJIFwtcCB2YXJuYW1lcHJlZml4CitTdGFydCBzdWJzdGl0dXRpb24gdmFyaWFibGVzIHdpdGgKKy5JQiB2YXJuYW1lcHJlZml4IDoKK2luc3RlYWQgb2YKKy5CUiBzaGxpYnM6IC4KK0xpa2V3aXNlLCBhbnkgZXhpc3Rpbmcgc3Vic3RpdHV0aW9uIHZhcmlhYmxlcyBzdGFydGluZyB3aXRoCisuSUIgdmFybmFtZXByZWZpeCA6CisocmF0aGVyIHRoYW4KKy5CUiBzaGxpYnM6ICkKK2FyZSByZW1vdmVkIGZyb20gdGhlIHRoZSBzdWJzdGl0dXRpb24gdmFyaWFibGVzIGZpbGUuCisuVFAKKy5CIFwtTworUHJpbnQgc3Vic3RpdHV0aW9uIHZhcmlhYmxlIHNldHRpbmdzIHRvIHN0YW5kYXJkIG91dHB1dCwgcmF0aGVyIHRoYW4gYmVpbmcKK2FkZGVkIHRvIHRoZSBzdWJzdGl0dXRpb24gdmFyaWFibGVzIGZpbGUKKy5SQiAoIGRlYmlhbi9zdWJzdHZhcnMKK2J5IGRlZmF1bHQpLgorLlRQCisuQkkgXC10IHR5cGUKK1ByZWZlciBzaGFyZWQgbGlicmFyeSBkZXBlbmRlbmN5IGluZm9ybWF0aW9uIHRhZ2dlZCBmb3IgdGhlIGdpdmVuCitwYWNrYWdlIHR5cGUuIElmIG5vIHRhZ2dlZCBpbmZvcm1hdGlvbiBpcyBhdmFpbGFibGUsIGZhbGxzIGJhY2sgdG8gdW50YWdnZWQKK2luZm9ybWF0aW9uLiBUaGUgZGVmYXVsdCBwYWNrYWdlIHR5cGUgaXMgImRlYiIuIFNoYXJlZCBsaWJyYXJ5IGRlcGVuZGVuY3kKK2luZm9ybWF0aW9uIGlzIHRhZ2dlZCBmb3IgYSBnaXZlbiB0eXBlIGJ5IHByZWZpeGluZyBpdCB3aXRoIHRoZSBuYW1lIG9mIHRoZQordHlwZSwgYSBjb2xvbiwgYW5kIHdoaXRlc3BhY2UuCisuVFAKKy5CSSBcLUwgbG9jYWxzaGxpYnNmaWxlCitSZWFkIG92ZXJyaWRpbmcgc2hhcmVkIGxpYnJhcnkgZGVwZW5kZW5jeSBpbmZvcm1hdGlvbiBmcm9tCisuSSBsb2NhbHNobGlic2ZpbGUKK2luc3RlYWQgb2YKKy5CUiBkZWJpYW4vc2hsaWJzLmxvY2FsIC4KKy5UUAorLkJJIFwtVCBzdWJzdHZhcnNmaWxlCitXcml0ZSBzdWJzdGl0dXRpb24gdmFyaWFibGVzIGluCisuSVIgc3Vic3R2YXJzZmlsZSA7Cit0aGUgZGVmYXVsdCBpcworLkJSIGRlYmlhbi9zdWJzdHZhcnMgLgorLlRQCisuQkkgXC12CitFbmFibGUgdmVyYm9zZSBtb2RlLiBOdW1lcm91cyBtZXNzYWdlcyBhcmUgZGlzcGxheWVkIHRvIGV4cGxhaW4gd2hhdCAKKy5CIGRwa2dcLXNobGliZGVwcworZG9lcy4KKy5UUAorLkJJIFwteCBwYWNrYWdlCitFeGNsdWRlIHRoZSBwYWNrYWdlIGZyb20gdGhlIGdlbmVyYXRlZCBkZXBlbmRlbmNpZXMuIFRoaXMgaXMgdXNlZnVsIHRvCithdm9pZCBzZWxmLWRlcGVuZGVuY2llcyBmb3IgcGFja2FnZXMgd2hpY2ggcHJvdmlkZSBFTEYgYmluYXJpZXMKKyhleGVjdXRhYmxlcyBvciBsaWJyYXJ5IHBsdWdpbnMpIHVzaW5nIGEgbGlicmFyeSBjb250YWluZWQgaW4gdGhlIHNhbWUKK3BhY2thZ2UuIFRoaXMgb3B0aW9uIGNhbiBiZSB1c2VkIG11bHRpcGxlIHRpbWVzIHRvIGV4Y2x1ZGUgc2V2ZXJhbAorcGFja2FnZXMuCisuVFAKKy5CSSBcLVMgcGtnYnVpbGRkaXIKK0xvb2sgaW50byBcZklwa2didWlsZGRpclxmUCBmaXJzdCB3aGVuIHRyeWluZyB0byBmaW5kIGEgbGlicmFyeS4gVGhpcyBpcwordXNlZnVsIHdoZW4gdGhlIHNvdXJjZSBwYWNrYWdlIGJ1aWxkcyBtdWx0aXBsZSBmbGF2b3JzIG9mIHRoZSBzYW1lIGxpYnJhcnkKK2FuZCB5b3Ugd2FudCB0byBlbnN1cmUgdGhhdCB5b3UgZ2V0IHRoZSBkZXBlbmRlbmN5IGZyb20gYSBnaXZlbiBiaW5hcnkKK3BhY2thZ2UuIFlvdSBjYW4gdXNlIHRoaXMgb3B0aW9uIG11bHRpcGxlIHRpbWVzOiBkaXJlY3RvcmllcyB3aWxsIGJlCit0cmllZCBpbiB0aGUgc2FtZSBvcmRlciBiZWZvcmUgZGlyZWN0b3JpZXMgb2Ygb3RoZXIgYmluYXJ5IHBhY2thZ2VzLgorLlRQCisuQkkgXC1cLWlnbm9yZVwtbWlzc2luZ1wtaW5mbworRG8gbm90IGZhaWwgaWYgZGVwZW5kZW5jeSBpbmZvcm1hdGlvbiBjYW4ndCBiZSBmb3VuZCBmb3IgYSBzaGFyZWQgbGlicmFyeS4KK1VzYWdlIG9mIHRoaXMgb3B0aW9uIGlzIGRpc2NvdXJhZ2VkLCBhbGwgbGlicmFyaWVzIHNob3VsZCBwcm92aWRlCitkZXBlbmRlbmN5IGluZm9ybWF0aW9uIChlaXRoZXIgd2l0aCBzaGxpYnMgZmlsZXMsIG9yIHdpdGggc3ltYm9scyBmaWxlcykKK2V2ZW4gaWYgdGhleSBhcmUgbm90IHlldCB1c2VkIGJ5IG90aGVyIHBhY2thZ2VzLiAgCisuVFAKKy5CSSBcLVwtd2FybmluZ3M9IHZhbHVlCitcZkl2YWx1ZVxmUCBpcyBhIGJpdCBmaWVsZCBkZWZpbmluZyB0aGUgc2V0IG9mIHdhcm5pbmdzIHRoYXQKK2NhbiBiZSBlbWl0dGVkIGJ5IFxmQmRwa2dcLXNobGliZGVwc1xmUC4KK0JpdCAwICh2YWx1ZT0xKSBlbmFibGVzIHRoZSB3YXJuaW5nICJzeW1ib2wgXGZJc3ltXGZQIHVzZWQgYnkgXGZJYmluYXJ5XGZQCitmb3VuZCBpbiBub25lIG9mIHRoZSBsaWJyYXJpZXMiLCBiaXQgMSAodmFsdWU9MikgZW5hYmxlcyB0aGUgd2FybmluZworImRlcGVuZGVuY3kgb24gXGZJbGlicmFyeVxmUCBjb3VsZCBiZSBhdm9pZGVkIiBhbmQgYml0IDIgKHZhbHVlPTQpCitlbmFibGVzIHRoZSB3YXJuaW5nICJcZkliaW5hcnlcZlAgc2hvdWxkbid0IGJlIGxpbmtlZCB3aXRoIFxmSWxpYnJhcnlcZlAiLgorVGhlIGRlZmF1bHQgXGZJdmFsdWVcZlAgaXMgMzogdGhlIGZpcnN0IHR3byB3YXJuaW5ncyBhcmUgYWN0aXZlIGJ5CitkZWZhdWx0LCB0aGUgbGFzdCBvbmUgaXMgbm90LiBTZXQgXGZJdmFsdWVcZlAgdG8gNyBpZiB5b3Ugd2FudCBhbGwKK3dhcm5pbmdzIHRvIGJlIGFjdGl2ZS4KKy5UUAorLkJJIFwtXC1hZG1pbmRpcj0gZGlyCitDaGFuZ2UgdGhlIGxvY2F0aW9uIG9mIHRoZSBcZkJkcGtnXGZSIGRhdGFiYXNlLiBUaGUgZGVmYXVsdCBsb2NhdGlvbiBpcworXGZJL3Zhci9saWIvZHBrZ1xmUC4KKy5UUAorLkJSIFwtaCAiLCAiIFwtXC1oZWxwCitTaG93IHRoZSB1c2FnZSBtZXNzYWdlIGFuZCBleGl0LgorLlRQCisuQlIgXC1cLXZlcnNpb24KK1Nob3cgdGhlIHZlcnNpb24gYW5kIGV4aXQuCisuCisuU0ggV0FSTklOR1MKK1NpbmNlCisuQiBkcGtnXC1zaGxpYmRlcHMKK2FuYWx5emVzIHRoZSBzZXQgb2Ygc3ltYm9scyB1c2VkIGJ5IGVhY2ggYmluYXJ5IG9mIHRoZSBnZW5lcmF0ZWQgcGFja2FnZSwKK2l0IGlzIGFibGUgdG8gZW1pdCB3YXJuaW5ncyBpbiBzZXZlcmFsIGNhc2VzLiBUaGV5IGluZm9ybSB5b3Ugb2YgdGhpbmdzCit0aGF0IGNhbiBiZSBpbXByb3ZlZCBpbiB0aGUgcGFja2FnZS4gSW4gbW9zdCBjYXNlcywgdGhvc2UgaW1wcm92ZW1lbnRzCitjb25jZXJuIHRoZSB1cHN0cmVhbSBzb3VyY2VzIGRpcmVjdGx5LiBCeSBvcmRlciBvZiBkZWNyZWFzaW5nIGltcG9ydGFuY2UsCitoZXJlIGFyZSB0aGUgdmFyaW91cyB3YXJuaW5ncyB0aGF0IHlvdSBjYW4gZW5jb3VudGVyOgorLlRQCisuQkkgc3ltYm9sICIgc3ltIiAiIHVzZWQgYnkgIiBiaW5hcnkgIiBmb3VuZCBpbiBub25lIG9mIHRoZSBsaWJyYXJpZXMuIgorVGhlIGluZGljYXRlZCBzeW1ib2wgaGFzIG5vdCBiZWVuIGZvdW5kIGluIHRoZSBsaWJyYXJpZXMgbGlua2VkIHdpdGggdGhlCitiaW5hcnkuIFRoZSBcZkliaW5hcnlcZlIgaXMgbW9zdCBsaWtlbHkgYSBsaWJyYXJ5IGFuZCBpdCBuZWVkcyB0byBiZSBsaW5rZWQKK3dpdGggYW4gYWRkaXRpb25hbCBsaWJyYXJ5IGR1cmluZyB0aGUgYnVpbGQgcHJvY2VzcyAob3B0aW9uCitcZkJcLWxcZlJcZklsaWJyYXJ5XGZSIG9mIHRoZSBsaW5rZXIpLgorLlRQCisuSUIgYmluYXJ5ICIgY29udGFpbnMgYW4gdW5yZXNvbHZhYmxlIHJlZmVyZW5jZSB0byBzeW1ib2wgIiBzeW0gIjogaXQncyBwcm9iYWJseSBhIHBsdWdpbgorVGhlIGluZGljYXRlZCBzeW1ib2wgaGFzIG5vdCBiZWVuIGZvdW5kIGluIHRoZSBsaWJyYXJpZXMgbGlua2VkIHdpdGggdGhlCitiaW5hcnkuIFRoZSBcZkliaW5hcnlcZlIgaXMgbW9zdCBsaWtlbHkgYSBwbHVnaW4gYW5kIHRoZSBzeW1ib2wgaXMKK3Byb2JhYmx5IHByb3ZpZGVkIGJ5IHRoZSBwcm9ncmFtIHRoYXQgbG9hZHMgdGhpcyBwbHVnaW4uIEluIHRoZW9yeSBhCitwbHVnaW4gZG9lc24ndCBoYXZlIGFueSBTT05BTUUgYnV0IHRoaXMgYmluYXJ5IGRvZXMgaGF2ZSBvbmUgYW5kIGFzIHN1Y2gKK2l0IGNvdWxkIG5vdCBiZSBjbGVhcmx5IGlkZW50aWZpZWQgYXMgc3VjaC4gSG93ZXZlciB0aGUgZmFjdCB0aGF0IHRoZQorYmluYXJ5IGlzIHN0b3JlZCBpbiBhIG5vbi1wdWJsaWMgZGlyZWN0b3J5IGlzIGEgc3Ryb25nIGluZGljYXRpb24KK3RoYXQncyBpdCdzIG5vdCBhIG5vcm1hbCBzaGFyZWQgbGlicmFyeS4gSWYgdGhlIGJpbmFyeSBpcyByZWFsbHkgYQorcGx1Z2luLCB0aGVuIGRpc3JlZ2FyZCB0aGlzIHdhcm5pbmcuIEJ1dCB0aGVyZSdzIGFsd2F5cyB0aGUgcG9zc2liaWxpdHkKK3RoYXQgaXQncyBhIHJlYWwgbGlicmFyeSBhbmQgdGhhdCBwcm9ncmFtcyBsaW5raW5nIHRvIGl0IGFyZSB1c2luZyBhbgorUlBBVEggc28gdGhhdCB0aGUgZHluYW1pYyBsb2FkZXIgZmluZHMgaXQuIEluIHRoYXQgY2FzZSwgdGhlIGxpYnJhcnkgaXMKK2Jyb2tlbiBhbmQgbmVlZHMgdG8gYmUgZml4ZWQuCisuVFAKKy5CSSAiZGVwZW5kZW5jeSBvbiAiIGxpYnJhcnkgIiBjb3VsZCBiZSBhdm9pZGVkIGlmICIgYmluYXJpZXMgIiB3ZXJlIG5vdCB1c2VsZXNzbHkgbGlua2VkIGFnYWluc3QgaXQgKHRoZXkgdXNlIG5vbmUgb2YgaXRzIHN5bWJvbHMpLiIKK05vbmUgb2YgdGhlIFxmSWJpbmFyaWVzXGZQIHRoYXQgYXJlIGxpbmtlZCB3aXRoIFxmUGxpYnJhcnlcZlAgdXNlIGFueSBvZiB0aGUKK3N5bWJvbHMgcHJvdmlkZWQgYnkgdGhlIGxpYnJhcnkuIEJ5IGZpeGluZyBhbGwgdGhlIGJpbmFyaWVzLCB5b3Ugd291bGQgYXZvaWQKK3RoZSBkZXBlbmRlbmN5IGFzc29jaWF0ZWQgdG8gdGhpcyBsaWJyYXJ5ICh1bmxlc3MgdGhlIHNhbWUgZGVwZW5kZW5jeSBpcworYWxzbyBnZW5lcmF0ZWQgYnkgYW5vdGhlciBsaWJyYXJ5IHRoYXQgaXMgcmVhbGx5IHVzZWQpLgorLlRQCisuSUIgYmluYXJ5ICIgc2hvdWxkbid0IGJlIGxpbmtlZCB3aXRoICIgbGlicmFyeSAiIChpdCB1c2VzIG5vbmUgb2YgaXRzIHN5bWJvbHMpLiIKK1RoZSBcZkliaW5hcnlcZlIgaXMgbGlua2VkIHRvIGEgbGlicmFyeSB0aGF0IGl0IGRvZXNuJ3QgbmVlZC4gSXQncyBub3QgYQorcHJvYmxlbSBidXQgc29tZSBzbWFsbCBwZXJmb3JtYW5jZSBpbXByb3ZlbWVudHMgaW4gYmluYXJ5IGxvYWQgdGltZSBjYW4gYmUKK29idGFpbmVkIGJ5IG5vdCBsaW5raW5nIHRoaXMgbGlicmFyeSB0byB0aGlzIGJpbmFyeS4gVGhpcyB3YXJuaW5nIGNoZWNrcwordGhlIHNhbWUgaW5mb3JtYXRpb24gdGhhbiB0aGUgcHJldmlvdXMgb25lIGJ1dCBkb2VzIGl0IGZvciBlYWNoIGJpbmFyeQoraW5zdGVhZCBvZiBkb2luZyB0aGUgY2hlY2sgZ2xvYmFsbHkgb24gYWxsIGJpbmFyaWVzIGFuYWx5emVkLgorLlNIIEVSUk9SUworLkIgZHBrZ1wtc2hsaWJkZXBzCit3aWxsIGZhaWwgaWYgaXQgY2FuJ3QgZmluZCBhIHB1YmxpYyBsaWJyYXJ5IHVzZWQgYnkgYSBiaW5hcnkgb3IgaWYgdGhpcworbGlicmFyeSBoYXMgbm8gYXNzb2NpYXRlZCBkZXBlbmRlbmN5IGluZm9ybWF0aW9uIChlaXRoZXIgc2hsaWJzIGZpbGUgb3IKK3N5bWJvbHMgZmlsZSkuIEEgcHVibGljIGxpYnJhcnkgaGFzIGEgU09OQU1FIGFuZCBpcyB2ZXJzaW9uZWQKKyhsaWJzb21ldGhpbmcuc28uXGZJWFxmUikuIEEgcHJpdmF0ZSBsaWJyYXJ5IChsaWtlIGEgcGx1Z2luKSBzaG91bGQgbm90CitoYXZlIGEgU09OQU1FIGFuZCBkb2Vzbid0IG5lZWQgdG8gYmUgdmVyc2lvbmVkLgorLlRQCisuQkkgImNvdWxkbid0IGZpbmQgbGlicmFyeSAiIGxpYnJhcnktc29uYW1lICIgbmVlZGVkIGJ5ICIgYmluYXJ5ICIgKGl0cyBSUEFUSCBpcyAnIiBycGF0aCAiJykiCitUaGUgXGZJYmluYXJ5XGZSIHVzZXMgYSBsaWJyYXJ5IGNhbGxlZCBcZklsaWJyYXJ5LXNvbmFtZVxmUiBidXQKKy5CIGRwa2dcLXNobGliZGVwcworaGFzIGJlZW4gdW5hYmxlIHRvIGZpbmQgdGhlIGxpYnJhcnkuCisuQiBkcGtnXC1zaGxpYmRlcHMKK2NyZWF0ZXMgYSBsaXN0IG9mIGRpcmVjdG9yaWVzIHRvIGNoZWNrIGFzIGZvbGxvd2luZzogZGlyZWN0b3JpZXMgbGlzdGVkIGluCit0aGUgUlBBVEggb2YgdGhlIGJpbmFyeSwgZGlyZWN0b3JpZXMgbGlzdGVkIGluIC9ldGMvbGQuc28uY29uZiwKK2RpcmVjdG9yaWVzIGxpc3RlZCBpbiB0aGUgTERfTElCUkFSWV9QQVRIIGVudmlyb25tZW50IHZhcmlhYmxlLCBhbmQKK3N0YW5kYXJkIHB1YmxpYyBkaXJlY3RvcmllcyAoL2xpYiwgL3Vzci9saWIsIC9saWIzMiwgL3Vzci9saWIzMiwgL2xpYjY0LAorL3Vzci9saWI2NCkuIFRoZW4gaXQgY2hlY2tzIHRob3NlIGRpcmVjdG9yaWVzIGluIHRoZSBwYWNrYWdlJ3MgYnVpbGQgdHJlZQorb2YgdGhlIGJpbmFyeSBiZWluZyBhbmFseXplZCwgaW4gdGhlIHBhY2thZ2VzJyBidWlsZCB0cmVlcyBpbmRpY2F0ZWQgd2l0aAordGhlIFwtUyBjb21tYW5kLWxpbmUgb3B0aW9uLCBpbiBvdGhlciBwYWNrYWdlcycgYnVpbGQgdHJlZXMgdGhhdCBjb250YWlucworYSBERUJJQU4vc2hsaWJzIG9yIERFQklBTi9zeW1ib2xzIGZpbGUgYW5kIGZpbmFsbHkgaW4gdGhlIHJvb3QgZGlyZWN0b3J5LgorSWYgdGhlIGxpYnJhcnkgaXMgbm90IGZvdW5kIGluIGFueSBvZiB0aG9zZSBkaXJlY3RvcmllcywgdGhlbiB5b3UgZ2V0IHRoaXMKK2Vycm9yLgorCitJZiB0aGUgbGlicmFyeSBub3QgZm91bmQgaXMgaW4gYSBwcml2YXRlIGRpcmVjdG9yeSBvZiB0aGUgc2FtZSBwYWNrYWdlLAordGhlbiB5b3Ugd2FudCB0byBhZGQgdGhlIGRpcmVjdG9yeSB0byBMRF9MSUJSQVJZX1BBVEguIElmIGl0J3MgaW4gYW5vdGhlcgorYmluYXJ5IHBhY2thZ2UgYmVpbmcgYnVpbHQsIHlvdSB3YW50IHRvIG1ha2Ugc3VyZSB0aGF0IHRoZSBzaGxpYnMvc3ltYm9scworZmlsZSBvZiB0aGlzIHBhY2thZ2UgaXMgYWxyZWFkeSBjcmVhdGVkIGFuZCB0aGF0IExEX0xJQlJBUllfUEFUSAorY29udGFpbnMgdGhlIGFwcHJvcHJpYXRlIGRpcmVjdG9yeSBpZiBpdCBhbHNvIGlzIGluIGEgcHJpdmF0ZSBkaXJlY3RvcnkuCisuVFAKKy5CSSAibm8gZGVwZW5kZW5jeSBpbmZvcm1hdGlvbiBmb3VuZCBmb3IgIiBsaWJyYXJ5LWZpbGUgIiAodXNlZCBieSAiIGJpbmFyeSAiKS4iCitUaGUgbGlicmFyeSBuZWVkZWQgYnkgXGZJYmluYXJ5XGZSIGhhcyBiZWVuIGZvdW5kIGJ5CisuQiBkcGtnXC1zaGxpYmRlcHMKK2luIFxmSWxpYnJhcnktZmlsZVxmUiBidXQKKy5CIGRwa2dcLXNobGliZGVwcworaGFzIGJlZW4gdW5hYmxlIHRvIGZpbmQgYW55IGRlcGVuZGVuY3kgaW5mb3JtYXRpb24gZm9yIHRoYXQgbGlicmFyeS4gVG8KK2ZpbmQgb3V0IHRoZSBkZXBlbmRlbmN5LCBpdCBoYXMgdHJpZWQgdG8gbWFwIHRoZSBsaWJyYXJ5IHRvIGEgRGViaWFuCitwYWNrYWdlIHdpdGggdGhlIGhlbHAgb2YKKy5CSSAiZHBrZyBcLVMgIiBsaWJyYXJ5LWZpbGVcZlIuCitUaGVuIGl0IGNoZWNrZWQgdGhlIGNvcnJlc3BvbmRpbmcgc2hsaWJzIGFuZCBzeW1ib2xzIGZpbGVzIGluCisvdmFyL2xpYi9kcGtnL2luZm8vLCBhbmQgaW4gdGhlIHZhcmlvdXMgcGFja2FnZSdzIGJ1aWxkIHRyZWVzCisoZGViaWFuLyovREVCSUFOLykuCisKK1RoaXMgZmFpbHVyZSBjYW4gYmUgY2F1c2VkIGJ5IGEgYmFkIG9yIG1pc3Npbmcgc2hsaWJzIG9yIHN5bWJvbHMgZmlsZQoraW4gdGhlIHBhY2thZ2Ugb2YgdGhlIGxpYnJhcnkuIEl0IG1pZ2h0IGFsc28gaGFwcGVuIGlmIHRoZSBsaWJyYXJ5IGlzCitidWlsdCB3aXRoaW4gdGhlIHNhbWUgc291cmNlIHBhY2thZ2UgYW5kIGlmIHRoZSBzaGxpYnMgZmlsZXMgaGFzIG5vdCB5ZXQKK2JlZW4gY3JlYXRlZCAoaW4gd2hpY2ggY2FzZSB5b3UgbXVzdCBmaXggZGViaWFuL3J1bGVzIHRvIGNyZWF0ZQordGhlIHNobGlicyBiZWZvcmUgY2FsbGluZyBcZkJkcGtnXC1zaGxpYmRlcHNcZlIpLiBCYWQgUlBBVEggY2FuIGFsc28KK2xlYWQgdG8gdGhlIGxpYnJhcnkgYmVpbmcgZm91bmQgdW5kZXIgYSBub24tY2Fub25pY2FsIG5hbWUgKGV4YW1wbGU6CisvdXNyL2xpYi9vcGVub2ZmaWNlLm9yZy8uLi9saWIvbGlic3NsLnNvLjAuOS44IGluc3RlYWQgb2YKKy91c3IvbGliL2xpYnNzbC5zby4wLjkuOCkgdGhhdCdzIG5vdCBhc3NvY2lhdGVkIHRvIGFueSBwYWNrYWdlLAorLkIgZHBrZ1wtc2hsaWJkZXBzCit0cmllcyB0byB3b3JrIGFyb3VuZCB0aGlzIGJ5IHRyeWluZyB0byBmYWxsYmFjayBvbiBhIGNhbm9uaWNhbCBuYW1lICh1c2luZworLkJSIHJlYWxwYXRoICgzKSkKK2J1dCBpdCBtaWdodCBub3QgYWx3YXlzIHdvcmsuIEl0J3MgYWx3YXlzIGJlc3QgdG8gY2xlYW4gdXAgdGhlIFJQQVRICitvZiB0aGUgYmluYXJ5IHRvIGF2b2lkIHByb2JsZW1zLgorCitDYWxsaW5nCisuQiBkcGtnXC1zaGxpYmRlcHMKK2luIHZlcmJvc2UgbW9kZSAoXC12KSB3aWxsIHByb3ZpZGUgbXVjaCBtb3JlIGluZm9ybWF0aW9uIGFib3V0IHdoZXJlIGl0Cit0cmllZCB0byBmaW5kIHRoZSBkZXBlbmRlbmN5IGluZm9ybWF0aW9uLiBUaGlzIG1pZ2h0IGJlIHVzZWZ1bCBpZiB5b3UKK2Rvbid0IHVuZGVyc3RhbmQgd2h5IGl0J3MgZ2l2aW5nIHlvdSB0aGlzIGVycm9yLgorLlNIICJTRUUgQUxTTyIKKy5CUiBkZWJcLXNobGlicyAoNSksCisuQlIgZGViXC1zeW1ib2xzICg1KSwKKy5CUiBkcGtnXC1nZW5zeW1ib2xzICgxKS4KKy4KKy5TSCBBVVRIT1JTCitDb3B5cmlnaHQgXChjbyAxOTk1LTE5OTYgSWFuIEphY2tzb24KKy5icgorQ29weXJpZ2h0IFwoY28gMjAwMCBXaWNoZXJ0IEFra2VybWFuCisuYnIKK0NvcHlyaWdodCBcKGNvIDIwMDYgRnJhbmsgTGljaHRlbmhlbGQKKy5icgorQ29weXJpZ2h0IFwoY28gMjAwNy0yMDA4IFJhcGhhXFs6ZV1sIEhlcnR6b2cKKy5zcAorVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbmNlIHZlcnNpb24gMiBvciBsYXRlcgorZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gV0FSUkFOVFkuCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9kcGtnLXNvdXJjZS4xIGIvZHBrZy0xLjE2LjEuMS9tYW4vZHBrZy1zb3VyY2UuMQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43ZDkwYmM1Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vZHBrZy1zb3VyY2UuMQpAQCAtMCwwICsxLDczOCBAQAorLlwiIEF1dGhvcnM6IElhbiBKYWNrc29uLCBSYXBoYcOrbCBIZXJ0em9nCisuVEggZHBrZ1wtc291cmNlIDEgIjIwMTEtMDgtMTQiICJEZWJpYW4gUHJvamVjdCIgImRwa2cgdXRpbGl0aWVzIgorLlNIIE5BTUUKK2Rwa2dcLXNvdXJjZSBcLSBEZWJpYW4gc291cmNlIHBhY2thZ2UgKC5kc2MpIG1hbmlwdWxhdGlvbiB0b29sCisuCisuU0ggU1lOT1BTSVMKKy5CIGRwa2dcLXNvdXJjZQorLlJJIFsgb3B0aW9uICIuLi5dICIgY29tbWFuZAorLgorLlNIIERFU0NSSVBUSU9OCisuQiBkcGtnXC1zb3VyY2UKK3BhY2tzIGFuZCB1bnBhY2tzIERlYmlhbiBzb3VyY2UgYXJjaGl2ZXMuCisKK05vbmUgb2YgdGhlc2UgY29tbWFuZHMgYWxsb3cgbXVsdGlwbGUgb3B0aW9ucyB0byBiZSBjb21iaW5lZCBpbnRvIG9uZSwKK2FuZCB0aGV5IGRvIG5vdCBhbGxvdyB0aGUgdmFsdWUgZm9yIGFuIG9wdGlvbiB0byBiZSBzcGVjaWZpZWQgaW4gYQorc2VwYXJhdGUgYXJndW1lbnQuCisuCisuU0ggQ09NTUFORFMKKy5UUAorLkJJICJcLXggIiBmaWxlbmFtZSAiLmRzYyAiIFxmUltcZlBvdXRwdXQtZGlyZWN0b3J5XGZSXVxmUAorRXh0cmFjdCBhIHNvdXJjZSBwYWNrYWdlLiBPbmUgbm9uLW9wdGlvbiBhcmd1bWVudCBtdXN0IGJlIHN1cHBsaWVkLAordGhlIG5hbWUgb2YgdGhlIERlYmlhbiBzb3VyY2UgY29udHJvbCBmaWxlCisuUkIgKCAuZHNjICkuCitBbiBvcHRpb25hbCBzZWNvbmQgbm9uLW9wdGlvbiBhcmd1bWVudCBtYXkgYmUgc3VwcGxpZWQgdG8gc3BlY2lmeSB0aGUKK2RpcmVjdG9yeSB0byBleHRyYWN0IHRoZSBzb3VyY2UgcGFja2FnZSB0bywgdGhpcyBtdXN0IG5vdCBleGlzdC4gSWYKK25vIG91dHB1dCBkaXJlY3RvcnkgaXMgc3BlY2lmaWVkLCB0aGUgc291cmNlIHBhY2thZ2UgaXMgZXh0cmFjdGVkIGludG8KK2EgZGlyZWN0b3J5IG5hbWVkIFxmSXNvdXJjZVxmUi1cZkl2ZXJzaW9uXGZSIHVuZGVyIHRoZSBjdXJyZW50IHdvcmtpbmcKK2RpcmVjdG9yeS4KKworLkIgZHBrZ1wtc291cmNlCit3aWxsIHJlYWQgdGhlIG5hbWVzIG9mIHRoZSBvdGhlciBmaWxlKHMpIG1ha2luZyB1cCB0aGUgc291cmNlIHBhY2thZ2UKK2Zyb20gdGhlIGNvbnRyb2wgZmlsZTsgdGhleSBhcmUgYXNzdW1lZCB0byBiZSBpbiB0aGUgc2FtZSBkaXJlY3RvcnkgYXMKK3RoZQorLkJSIC5kc2MgLgorCitUaGUgZmlsZXMgaW4gdGhlIGV4dHJhY3RlZCBwYWNrYWdlIHdpbGwgaGF2ZSB0aGVpciBwZXJtaXNzaW9ucyBhbmQKK293bmVyc2hpcHMgc2V0IHRvIHRob3NlIHdoaWNoIHdvdWxkIGhhdmUgYmVlbiBleHBlY3RlZCBpZiB0aGUgZmlsZXMKK2FuZCBkaXJlY3RvcmllcyBoYWQgc2ltcGx5IGJlZW4gY3JlYXRlZCAtIGRpcmVjdG9yaWVzIGFuZCBleGVjdXRhYmxlCitmaWxlcyB3aWxsIGJlIDA3NzcgYW5kIHBsYWluIGZpbGVzIHdpbGwgYmUgMDY2NiwgYm90aCBtb2RpZmllZCBieSB0aGUKK2V4dHJhY3RvcnMnIHVtYXNrOyBpZiB0aGUgcGFyZW50IGRpcmVjdG9yeSBpcyBzZXRnaWQgdGhlbiB0aGUKK2V4dHJhY3RlZCBkaXJlY3RvcmllcyB3aWxsIGJlIHRvbywgYW5kIGFsbCB0aGUgZmlsZXMgYW5kIGRpcmVjdG9yaWVzCit3aWxsIGluaGVyaXQgaXRzIGdyb3VwIG93bmVyc2hpcC4KKworSWYgdGhlIHNvdXJjZSBwYWNrYWdlIHVzZXMgYSBub24tc3RhbmRhcmQgZm9ybWF0IChjdXJyZW50bHkgdGhpcyBtZWFucyBhbGwKK2Zvcm1hdHMgZXhjZXB0ICIxLjAiKSwgaXRzIG5hbWUgd2lsbCBiZSBzdG9yZWQgaW4KK1xmQmRlYmlhbi9zb3VyY2UvZm9ybWF0XGZQIHNvIHRoYXQgdGhlIGZvbGxvd2luZyBidWlsZHMgb2YgdGhlIHNvdXJjZQorcGFja2FnZSB1c2UgdGhlIHNhbWUgZm9ybWF0IGJ5IGRlZmF1bHQuCisKKy5UUAorLlJJICJcZkJcLWJcZlAgIiBkaXJlY3RvcnkgIiBbIiBmb3JtYXQtc3BlY2lmaWMtcGFyYW1ldGVycyBdCitCdWlsZCBhIHNvdXJjZSBwYWNrYWdlLiBUaGUgZmlyc3Qgbm9uLW9wdGlvbiBhcmd1bWVudCBpcyB0YWtlbiBhcyB0aGUKK25hbWUgb2YgdGhlIGRpcmVjdG9yeSBjb250YWluaW5nIHRoZSBkZWJpYW5pemVkIHNvdXJjZSB0cmVlIChpLmUuIHdpdGggYQorZGViaWFuIHN1Yi1kaXJlY3RvcnkgYW5kIG1heWJlIGNoYW5nZXMgdG8gdGhlIG9yaWdpbmFsIGZpbGVzKS4KK0RlcGVuZGluZyBvbiB0aGUgc291cmNlIHBhY2thZ2UgZm9ybWF0IHVzZWQgdG8gYnVpbGQgdGhlIHBhY2thZ2UsCithZGRpdGlvbmFsIHBhcmFtZXRlcnMgbWlnaHQgYmUgYWNjZXB0ZWQuCisKK1xmQmRwa2dcLXNvdXJjZVxmUCB3aWxsIGJ1aWxkIHRoZSBzb3VyY2UgcGFja2FnZSB3aXRoIHRoZSBmaXJzdCBmb3JtYXQKK2ZvdW5kIGluIHRoaXMgb3JkZXJlZCBsaXN0OgordGhlIGZvcm1hdCBpbmRpY2F0ZWQgd2l0aCB0aGUgXGZJXC1cLWZvcm1hdFxmUCBjb21tYW5kIGxpbmUgb3B0aW9uLAordGhlIGZvcm1hdCBpbmRpY2F0ZWQgaW4gXGZCZGViaWFuL3NvdXJjZS9mb3JtYXRcZlAsCisiMS4wIi4gVGhlIGZhbGxiYWNrIHRvICIxLjAiIGlzIGRlcHJlY2F0ZWQgYW5kIHdpbGwgYmUgcmVtb3ZlZCBhdCBzb21lCitwb2ludCBpbiB0aGUgZnV0dXJlLCB5b3Ugc2hvdWxkIGFsd2F5cyBkb2N1bWVudCB0aGUgZGVzaXJlZCBzb3VyY2UgZm9ybWF0CitpbiBcZkJkZWJpYW4vc291cmNlL2Zvcm1hdFxmUC4gU2VlIHNlY3Rpb24gXGZCU09VUkNFIFBBQ0tBR0UgRk9STUFUU1xmUAorZm9yIGFuIGV4dGVuc2l2ZSBkZXNjcmlwdGlvbiBvZiB0aGUgdmFyaW91cyBzb3VyY2UgcGFja2FnZSBmb3JtYXRzLgorCisuVFAKKy5SSSAiXGZCXC1cLXByaW50XC1mb3JtYXRcZlAgIiBkaXJlY3RvcnkKK1ByaW50IHRoZSBzb3VyY2UgZm9ybWF0IHRoYXQgd291bGQgYmUgdXNlZCB0byBidWlsZCB0aGUgc291cmNlIHBhY2thZ2UgaWYKK1xmQmRwa2dcLXNvdXJjZSBcLWIgXGZJZGlyZWN0b3J5XGZSIHdhcyBjYWxsZWQgKGluIHRoZSBzYW1lIGNvbmRpdGlvbnMgYW5kCit3aXRoIHRoZSBzYW1lIHBhcmFtZXRlcnMpLgorCisuVFAKKy5SSSAiXGZCXC1cLWJlZm9yZVwtYnVpbGRcZlAgIiBkaXJlY3RvcnkKK1J1biB0aGUgY29ycmVzcG9uZGluZyBob29rIG9mIHRoZSBzb3VyY2UgcGFja2FnZSBmb3JtYXQuIFRoaXMgaG9vayBpcworY2FsbGVkIGJlZm9yZSBhbnkgYnVpbGQgb2YgdGhlIHBhY2thZ2UgKFxmQmRwa2dcLWJ1aWxkcGFja2FnZVxmUCBjYWxscyBpdAordmVyeSBlYXJseSBldmVuIGJlZm9yZSBcZkJkZWJpYW4vcnVsZXMgY2xlYW5cZlApLiBUaGlzIGNvbW1hbmQgaXMKK2lkZW1wb3RlbnQgYW5kIGNhbiBiZSBjYWxsZWQgbXVsdGlwbGUgdGltZXMuIE5vdCBhbGwgc291cmNlIGZvcm1hdHMKK2ltcGxlbWVudCBzb21ldGhpbmcgaW4gdGhpcyBob29rLCBhbmQgdGhvc2UgdGhhdCBkbyB1c3VhbGx5IHByZXBhcmUgdGhlCitzb3VyY2UgdHJlZSBmb3IgdGhlIGJ1aWxkIGZvciBleGFtcGxlIGJ5IGVuc3VyaW5nIHRoYXQgdGhlIERlYmlhbiBwYXRjaGVzCithcmUgYXBwbGllZC4KKworLlRQCisuUkkgIlxmQlwtXC1hZnRlclwtYnVpbGRcZlAgIiBkaXJlY3RvcnkKK1J1biB0aGUgY29ycmVzcG9uZGluZyBob29rIG9mIHRoZSBzb3VyY2UgcGFja2FnZSBmb3JtYXQuIFRoaXMgaG9vayBpcworY2FsbGVkIGFmdGVyIGFueSBidWlsZCBvZiB0aGUgcGFja2FnZSAoXGZCZHBrZ1wtYnVpbGRwYWNrYWdlXGZQIGNhbGxzIGl0CitsYXN0KS4gVGhpcyBjb21tYW5kIGlzIGlkZW1wb3RlbnQgYW5kIGNhbiBiZSBjYWxsZWQgbXVsdGlwbGUgdGltZXMuIE5vdAorYWxsIHNvdXJjZSBmb3JtYXRzIGltcGxlbWVudCBzb21ldGhpbmcgaW4gdGhpcyBob29rLCBhbmQgdGhvc2UgdGhhdCBkbwordXN1YWxseSB1c2UgaXQgdG8gdW5kbyB3aGF0IFxmQlwtXC1iZWZvcmVcLWJ1aWxkXGZQIGhhcyBkb25lLgorCisuVFAKKy5SSSAiXGZCXC1cLWNvbW1pdFxmUCBbIiBkaXJlY3RvcnkgIl0gLi4uIgorUmVjb3JkIGNoYW5nZXMgaW4gdGhlIHNvdXJjZSB0cmVlIHVucGFja2VkIGluIFxmSWRpcmVjdG9yeVxmUC4gVGhpcworY29tbWFuZCBjYW4gdGFrZSBzdXBwbGVtZW50YXJ5IHBhcmFtZXRlcnMgZGVwZW5kaW5nIG9uIHRoZSBzb3VyY2UgZm9ybWF0LgorSXQgd2lsbCBlcnJvciBvdXQgZm9yIGZvcm1hdHMgd2hlcmUgdGhpcyBvcGVyYXRpb24gZG9lc24ndCBtZWFuIGFueXRoaW5nLgorCisuVFAKKy5CUiBcLWggIiwgIiBcLVwtaGVscAorU2hvdyB0aGUgdXNhZ2UgbWVzc2FnZSBhbmQgZXhpdC4KKy5UUAorLkJSIFwtXC12ZXJzaW9uCitTaG93IHRoZSB2ZXJzaW9uIGFuZCBleGl0LgorLgorLlNIIEdFTkVSSUMgQlVJTEQgT1BUSU9OUworLlRQCisuQkkgXC1jIGNvbnRyb2xmaWxlCitTcGVjaWZpZXMgdGhlIG1haW4gc291cmNlIGNvbnRyb2wgZmlsZSB0byByZWFkIGluZm9ybWF0aW9uIGZyb20uIFRoZQorZGVmYXVsdCBpcworLkJSIGRlYmlhbi9jb250cm9sIC4KK0lmIGdpdmVuIHdpdGggcmVsYXRpdmUgcGF0aG5hbWUgdGhpcyBpcyBpbnRlcnByZXRlZCBzdGFydGluZyBhdAordGhlIHNvdXJjZSB0cmVlJ3MgdG9wIGxldmVsIGRpcmVjdG9yeS4KKy5UUAorLkJJIFwtbCBjaGFuZ2Vsb2dmaWxlCitTcGVjaWZpZXMgdGhlIGNoYW5nZSBsb2cgZmlsZSB0byByZWFkIGluZm9ybWF0aW9uIGZyb20uIFRoZQorZGVmYXVsdCBpcworLkJSIGRlYmlhbi9jaGFuZ2Vsb2cgLgorSWYgZ2l2ZW4gd2l0aCByZWxhdGl2ZSBwYXRobmFtZSB0aGlzIGlzIGludGVycHJldGVkIHN0YXJ0aW5nIGF0Cit0aGUgc291cmNlIHRyZWUncyB0b3AgbGV2ZWwgZGlyZWN0b3J5LgorLlRQCisuQkkgXC1GIGNoYW5nZWxvZ2Zvcm1hdAorU3BlY2lmaWVzIHRoZSBmb3JtYXQgb2YgdGhlIGNoYW5nZWxvZy4gQnkgZGVmYXVsdCB0aGUgZm9ybWF0IGlzIHJlYWQKK2Zyb20gYSBzcGVjaWFsIGxpbmUgbmVhciB0aGUgYm90dG9tIG9mIHRoZSBjaGFuZ2Vsb2cgb3IgZmFpbGluZyB0aGF0CitkZWZhdWx0cyB0byB0aGUgZGViaWFuIHN0YW5kYXJkIGZvcm1hdC4KKy5UUAorLkJJIFwtXC1mb3JtYXQ9IHZhbHVlCitVc2UgdGhlIGdpdmVuIGZvcm1hdCBmb3IgYnVpbGRpbmcgdGhlIHNvdXJjZSBwYWNrYWdlLiBJdCBkb2VzCitvdmVycmlkZSBhbnkgZm9ybWF0IGdpdmVuIGluIFxmQmRlYmlhbi9zb3VyY2UvZm9ybWF0XGZQLgorLlRQCisuQkkgXC1WIG5hbWUgPSB2YWx1ZQorU2V0IGFuIG91dHB1dCBzdWJzdGl0dXRpb24gdmFyaWFibGUuCitTZWUgXGZCZGViXC1zdWJzdHZhcnNcZlAoNSkgZm9yIGEgZGlzY3Vzc2lvbiBvZiBvdXRwdXQgc3Vic3RpdHV0aW9uLgorLlRQCisuQkkgXC1UIHN1YnN0dmFyc2ZpbGUKK1JlYWQgc3Vic3RpdHV0aW9uIHZhcmlhYmxlcyBpbgorLklSIHN1YnN0dmFyc2ZpbGUgOwordGhlIGRlZmF1bHQgaXMgdG8gbm90IHJlYWQgYW55IGZpbGUuIFRoaXMgb3B0aW9uIGNhbiBiZSB1c2VkIG11bHRpcGxlCit0aW1lcyB0byByZWFkIHN1YnN0aXR1dGlvbiB2YXJpYWJsZXMgZnJvbSBtdWx0aXBsZSBmaWxlcy4KKy5UUAorLkJJIFwtRCBmaWVsZCA9IHZhbHVlCitPdmVycmlkZSBvciBhZGQgYW4gb3V0cHV0IGNvbnRyb2wgZmlsZSBmaWVsZC4KKy5UUAorLkJJIFwtVSBmaWVsZAorUmVtb3ZlIGFuIG91dHB1dCBjb250cm9sIGZpbGUgZmllbGQuCisuVFAKKy5CUiBcLVogIlxmSWNvbXByZXNzaW9uXGZQLCAiIFwtXC1jb21wcmVzc2lvbiA9XGZJY29tcHJlc3Npb25cZlAKK1NwZWNpZnkgdGhlIGNvbXByZXNzaW9uIHRvIHVzZSBmb3IgY3JlYXRlZCBmaWxlcyAodGFyYmFsbHMgYW5kIGRpZmZzKS4KK05vdGUgdGhhdCB0aGlzIG9wdGlvbiB3aWxsIG5vdCBjYXVzZSBleGlzdGluZyB0YXJiYWxscyB0byBiZSByZWNvbXByZXNzZWQsCitpdCBvbmx5IGFmZmVjdHMgbmV3IGZpbGVzLiBTdXBwb3J0ZWQgdmFsdWVzIGFyZToKKy5JUiBnemlwICIsICIgYnppcDIgIiwgIiBsem1hICIgYW5kICIgeHogLgorXGZJZ3ppcFxmUCBpcyB0aGUgZGVmYXVsdC4gXGZJeHpcZlAgaXMgb25seSBzdXBwb3J0ZWQgc2luY2UKK2Rwa2dcLWRldiAxLjE1LjUuCisuVFAKKy5CUiBcLXogIlxmSWxldmVsXGZQLCAiIFwtXC1jb21wcmVzc2lvblwtbGV2ZWwgPVxmSWxldmVsXGZQCitDb21wcmVzc2lvbiBsZXZlbCB0byB1c2UuIEFzIHdpdGggXGZCXC1aXGZQIGl0IG9ubHkgYWZmZWN0cyBuZXdseSBjcmVhdGVkCitmaWxlcy4gU3VwcG9ydGVkIHZhbHVlcyBhcmU6CisuSVIgMSAiIHRvICIgOSAiLCAiIGJlc3QgIiwgYW5kICIgZmFzdCAuCitUaGUgZGVmYXVsdCBpcyBcZkk5XGZQIGZvciBnemlwIGFuZCBiemlwMiwgXGZJNlxmUCBmb3IgeHogYW5kIGx6bWEuCisuVFAKKy5CUiBcLWkgIltcZklyZWdleHBcZlBdLCAiIFwtXC1kaWZmXC1pZ25vcmUgWz1cZklyZWdleHBcZlBdCitZb3UgbWF5IHNwZWNpZnkgYSBwZXJsIHJlZ3VsYXIgZXhwcmVzc2lvbiB0byBtYXRjaCBmaWxlcyB5b3Ugd2FudAorZmlsdGVyZWQgb3V0IG9mIHRoZSBsaXN0IG9mIGZpbGVzIGZvciB0aGUgZGlmZi4gKFRoaXMgbGlzdCBpcworZ2VuZXJhdGVkIGJ5IGEgZmluZCBjb21tYW5kLikgKElmIHRoZSBzb3VyY2UgcGFja2FnZSBpcyBiZWluZyBidWlsdCBhcyBhCit2ZXJzaW9uIDMgc291cmNlIHBhY2thZ2UgdXNpbmcgYSBWQ1MsIHRoaXMgY2FuIGJlIHVzZWQgdG8gaWdub3JlCit1bmNvbW1pdGVkIGNoYW5nZXMgb24gc3BlY2lmaWMgZmlsZXMuIFVzaW5nIFwtaS4qIHdpbGwgaWdub3JlIGFsbCBvZiB0aGVtLikKK1xmQlwtaVxmUCBieSBpdHNlbGYgZW5hYmxlcyB0aGUgb3B0aW9uLCB3aXRoIGEgZGVmYXVsdCByZWdleHAgdGhhdCB3aWxsCitmaWx0ZXIgb3V0IGNvbnRyb2wgZmlsZXMgYW5kIGRpcmVjdG9yaWVzIG9mIHRoZSBtb3N0IGNvbW1vbiByZXZpc2lvbgorY29udHJvbCBzeXN0ZW1zLCBiYWNrdXAgYW5kIHN3YXAgZmlsZXMgYW5kIExpYnRvb2wgYnVpbGQgb3V0cHV0CitkaXJlY3Rvcmllcy4gVGhlcmUgY2FuIG9ubHkgYmUgb25lIGFjdGl2ZSByZWdleHAsIG9mIG11bHRpcGxlCitcZkJcLWlcZlAgb3B0aW9ucyBvbmx5IHRoZSBsYXN0IG9uZSB3aWxsIHRha2UgZWZmZWN0LgorCitUaGlzIGlzIHZlcnkgaGVscGZ1bCBpbiBjdXR0aW5nIG91dCBleHRyYW5lb3VzIGZpbGVzIHRoYXQgZ2V0IGluY2x1ZGVkCitpbiB0aGUgZGlmZiwgZS5nLiBpZiB5b3UgbWFpbnRhaW4geW91ciBzb3VyY2UgaW4gYSByZXZpc2lvbiBjb250cm9sCitzeXN0ZW0gYW5kIHdhbnQgdG8gdXNlIGEgY2hlY2tvdXQgdG8gYnVpbGQgYSBzb3VyY2UgcGFja2FnZSB3aXRob3V0CitpbmNsdWRpbmcgdGhlIGFkZGl0aW9uYWwgZmlsZXMgYW5kIGRpcmVjdG9yaWVzIHRoYXQgaXQgd2lsbCB1c3VhbGx5Citjb250YWluIChlLmcuIENWUy8sIC5jdnNpZ25vcmUsIC5zdm4vKS4gVGhlIGRlZmF1bHQgcmVnZXhwIGlzIGFscmVhZHkKK3ZlcnkgZXhoYXVzdGl2ZSwgYnV0IGlmIHlvdSBuZWVkIHRvIHJlcGxhY2UgaXQsIHBsZWFzZSBub3RlIHRoYXQgYnkKK2RlZmF1bHQgaXQgY2FuIG1hdGNoIGFueSBwYXJ0IG9mIGEgcGF0aCwgc28gaWYgeW91IHdhbnQgdG8gbWF0Y2ggdGhlCitiZWdpbiBvZiBhIGZpbGVuYW1lIG9yIG9ubHkgZnVsbCBmaWxlbmFtZXMsIHlvdSB3aWxsIG5lZWQgdG8gcHJvdmlkZQordGhlIG5lY2Vzc2FyeSBhbmNob3JzIChlLmcuICcoXnwvKScsICcoJHwvKScpIHlvdXJzZWxmLgorLlRQCisuQlIgXC1cLWV4dGVuZFwtZGlmZlwtaWdub3JlID1cZklyZWdleHBcZlAKK1RoZSBwZXJsIHJlZ3VsYXIgZXhwcmVzc2lvbiBzcGVjaWZpZWQgd2lsbCBleHRlbmQgdGhlIGRlZmF1bHQgdmFsdWUKK29mIFxmQlwtXC1kaWZmXC1pZ25vcmVcZlAgYW5kIGl0cyBjdXJyZW50IHZhbHVlIChpZiBzZXQpLiBJdCBkb2VzIHRoaXMKK2J5IGNvbmNhdGVuYXRpbmcgIlxmQnxcZlBcZklyZWdleHBcZlAiIHRvIHRoZSBleGlzdGluZyB2YWx1ZS4KK1RoaXMgb3B0aW9uIGlzIGNvbnZlbmllbnQgdG8gdXNlIGluIFxmQmRlYmlhbi9zb3VyY2Uvb3B0aW9uc1xmUCB0byBleGNsdWRlCitzb21lIGF1dG8tZ2VuZXJhdGVkIGZpbGVzIGZyb20gdGhlIGF1dG9tYXRpYyBwYXRjaCBnZW5lcmF0aW9uLgorLlRQCisuQlIgXC1JICJbXGZJZmlsZS1wYXR0ZXJuXGZQXSwgIiBcLVwtdGFyXC1pZ25vcmUgWz1cZklmaWxlLXBhdHRlcm5cZlBdCitJZiB0aGlzIG9wdGlvbiBpcyBzcGVjaWZpZWQsIHRoZSBwYXR0ZXJuIHdpbGwgYmUgcGFzc2VkIHRvCisuQlIgdGFyICgxKSdzCitcLVwtZXhjbHVkZQorb3B0aW9uIHdoZW4gaXQgaXMgY2FsbGVkIHRvIGdlbmVyYXRlIGEgLm9yaWcudGFyIG9yIC50YXIgZmlsZS4gRm9yCitleGFtcGxlLCBcLUlDVlMgd2lsbCBtYWtlIHRhciBza2lwIG92ZXIgQ1ZTIGRpcmVjdG9yaWVzIHdoZW4gZ2VuZXJhdGluZworYSAudGFyLmd6IGZpbGUuIFRoZSBvcHRpb24gbWF5IGJlIHJlcGVhdGVkIG11bHRpcGxlIHRpbWVzIHRvIGxpc3QgbXVsdGlwbGUKK3BhdHRlcm5zIHRvIGV4Y2x1ZGUuCisKK1xmQlwtSVxmUCBieSBpdHNlbGYgYWRkcyBkZWZhdWx0IFwtXC1leGNsdWRlIG9wdGlvbnMgdGhhdCB3aWxsCitmaWx0ZXIgb3V0IGNvbnRyb2wgZmlsZXMgYW5kIGRpcmVjdG9yaWVzIG9mIHRoZSBtb3N0IGNvbW1vbiByZXZpc2lvbgorY29udHJvbCBzeXN0ZW1zLCBiYWNrdXAgYW5kIHN3YXAgZmlsZXMgYW5kIExpYnRvb2wgYnVpbGQgb3V0cHV0CitkaXJlY3Rvcmllcy4KKy5QUAorLkIgTm90ZToKK1doaWxlIHRoZXkgaGF2ZSBzaW1pbGFyIHB1cnBvc2VzLCBcZkJcLWlcZlAgYW5kIFxmQlwtSVxmUCBoYXZlIHZlcnkKK2RpZmZlcmVudCBzeW50YXggYW5kIHNlbWFudGljcy4gXGZCXC1pXGZQIGNhbiBvbmx5IGJlIHNwZWNpZmllZCBvbmNlIGFuZAordGFrZXMgYSBwZXJsIGNvbXBhdGlibGUgcmVndWxhciBleHByZXNzaW9uIHdoaWNoIGlzIG1hdGNoZWQgYWdhaW5zdAordGhlIGZ1bGwgcmVsYXRpdmUgcGF0aCBvZiBlYWNoIGZpbGUuIFxmQlwtSVxmUCBjYW4gc3BlY2lmaWVkCittdWx0aXBsZSB0aW1lcyBhbmQgdGFrZXMgYSBmaWxlbmFtZSBwYXR0ZXJuIHdpdGggc2hlbGwgd2lsZGNhcmRzLgorVGhlIHBhdHRlcm4gaXMgYXBwbGllZCB0byB0aGUgZnVsbCByZWxhdGl2ZSBwYXRoIGJ1dCBhbHNvCit0byBlYWNoIHBhcnQgb2YgdGhlIHBhdGggaW5kaXZpZHVhbGx5LiBUaGUgZXhhY3Qgc2VtYW50aWMgb2YgdGFyJ3MKK1wtXC1leGNsdWRlIG9wdGlvbiBpcyBzb21ld2hhdCBjb21wbGljYXRlZCwgc2VlCitodHRwOi8vd3d3LmdudS5vcmcvc29mdHdhcmUvdGFyL21hbnVhbC90YXIuaHRtbCN3aWxkY2FyZHMgZm9yIGEgZnVsbAorZG9jdW1lbnRhdGlvbi4KKworVGhlIGRlZmF1bHQgcmVnZXhwIGFuZCBwYXR0ZXJucyBmb3IgYm90aCBvcHRpb25zIGNhbiBiZSBzZWVuCitpbiB0aGUgb3V0cHV0IG9mIHRoZSBcZkJcLVwtaGVscFxmUCBjb21tYW5kLgorLlNIIEdFTkVSSUMgRVhUUkFDVCBPUFRJT05TCisuVFAKKy5CSSBcLVwtbm9cLWNvcHkKK0RvIG5vdCBjb3B5IG9yaWdpbmFsIHRhcmJhbGxzIG5lYXIgdGhlIGV4dHJhY3RlZCBzb3VyY2UgcGFja2FnZS4KKy5UUAorLkJJIFwtXC1ub1wtY2hlY2sKK0RvIG5vdCBjaGVjayBzaWduYXR1cmVzIGFuZCBjaGVja3N1bXMgYmVmb3JlIHVucGFja2luZy4KKy5UUAorLkJJIFwtXC1yZXF1aXJlXC12YWxpZFwtc2lnbmF0dXJlCitSZWZ1c2UgdG8gdW5wYWNrIHRoZSBzb3VyY2UgcGFja2FnZSBpZiBpdCBkb2Vzbid0IGNvbnRhaW4gYW4gT3BlblBHUAorc2lnbmF0dXJlIHRoYXQgY2FuIGJlIHZlcmlmaWVkIGVpdGhlciB3aXRoIHRoZSB1c2VyJ3MKK1xmSXRydXN0ZWRrZXlzLmdwZ1xmUCBrZXlyaW5nLCBvbmUgb2YgdGhlIHZlbmRvci1zcGVjaWZpYyBrZXlyaW5ncywgb3Igb25lCitvZiB0aGUgb2ZmaWNpYWwgRGViaWFuIGtleXJpbmdzCisoXGZJL3Vzci9zaGFyZS9rZXlyaW5ncy9kZWJpYW5cLWtleXJpbmcuZ3BnXGZQCithbmQgXGZJL3Vzci9zaGFyZS9rZXlyaW5ncy9kZWJpYW5cLW1haW50YWluZXJzLmdwZ1xmUCkuCisKKy5TSCBTT1VSQ0UgUEFDS0FHRSBGT1JNQVRTCitJZiB5b3UgZG9uJ3Qga25vdyB3aGF0IHNvdXJjZSBmb3JtYXQgdG8gdXNlLCB5b3Ugc2hvdWxkIHByb2JhYmx5IHBpY2sKK2VpdGhlciAiMy4wIChxdWlsdCkiIG9yICIzLjAgKG5hdGl2ZSkiLiBTZWUKK2h0dHA6Ly93aWtpLmRlYmlhbi5vcmcvUHJvamVjdHMvRGViU3JjMy4wIGZvciBpbmZvcm1hdGlvbiBvbiB0aGUKK2RlcGxveW1lbnQgb2YgdGhvc2UgZm9ybWF0cyB3aXRoaW4gRGViaWFuLgorCisuU1MgRm9ybWF0OiAxLjAKK0Egc291cmNlIHBhY2thZ2UgaW4gdGhpcyBmb3JtYXQgY29uc2lzdHMgZWl0aGVyIG9mIGEgXGZCLm9yaWcudGFyLmd6XGZQCithc3NvY2lhdGVkIHRvIGEgXGZCLmRpZmYuZ3pcZlAgb3IgYSBzaW5nbGUgXGZCLnRhci5nelxmUCAoaW4gdGhhdCBjYXNlCit0aGUgcGFja2FnZSBpcyBzYWlkIHRvIGJlIFxmSW5hdGl2ZVxmUCkuCisKKy5CIEV4dHJhY3RpbmcKKworRXh0cmFjdGluZyBhIG5hdGl2ZSBwYWNrYWdlIGlzIGEgc2ltcGxlIGV4dHJhY3Rpb24gb2YgdGhlIHNpbmdsZQordGFyYmFsbCBpbiB0aGUgdGFyZ2V0IGRpcmVjdG9yeS4gRXh0cmFjdGluZyBhIG5vbi1uYXRpdmUgcGFja2FnZQoraXMgZG9uZSBieSBmaXJzdCB1bnBhY2tpbmcgdGhlIFxmQi5vcmlnLnRhci5nelxmUCBhbmQgdGhlbiBhcHBseWluZwordGhlIHBhdGNoIGNvbnRhaW5lZCBpbiB0aGUgXGZCLmRpZmYuZ3pcZlAgZmlsZS4gVGhlIHRpbWVzdGFtcCBvZgorYWxsIHBhdGNoZWQgZmlsZXMgaXMgcmVzZXQgdG8gdGhlIGV4dHJhY3Rpb24gdGltZSBvZiB0aGUgc291cmNlCitwYWNrYWdlICh0aGlzIGF2b2lkcyB0aW1lc3RhbXAgc2tld3MgbGVhZGluZyB0byBwcm9ibGVtcyB3aGVuCithdXRvZ2VuZXJhdGVkIGZpbGVzIGFyZSBwYXRjaGVkKS4gVGhlIGRpZmYgY2FuIGNyZWF0ZSBuZXcgZmlsZXMgKHRoZSB3aG9sZQorZGViaWFuIGRpcmVjdG9yeSBpcyBjcmVhdGVkIHRoYXQgd2F5KSBidXQgY2FuJ3QgcmVtb3ZlIGZpbGVzIChlbXB0eSBmaWxlcword2lsbCBiZSBsZWZ0IG92ZXIpLgorCisuQiBCdWlsZGluZworCitCdWlsZGluZyBhIG5hdGl2ZSBwYWNrYWdlIGlzIGp1c3QgY3JlYXRpbmcgYSBzaW5nbGUgdGFyYmFsbCB3aXRoCit0aGUgc291cmNlIGRpcmVjdG9yeS4gQnVpbGRpbmcgYSBub24tbmF0aXZlIHBhY2thZ2UgaW52b2x2ZXMKK2V4dHJhY3RpbmcgdGhlIG9yaWdpbmFsIHRhcmJhbGwgaW4gYSBzZXBhcmF0ZSAiLm9yaWciIGRpcmVjdG9yeSBhbmQKK3JlZ2VuZXJhdGluZyB0aGUgXGZCLmRpZmYuZ3pcZlAgYnkgY29tcGFyaW5nIHRoZSBzb3VyY2UgcGFja2FnZQorXGZJZGlyZWN0b3J5XGZQIHdpdGggdGhlIC5vcmlnIGRpcmVjdG9yeS4KKworLlRQCisuQiBCdWlsZCBvcHRpb25zICh3aXRoIFwtYik6CisuUFAKK0lmIGEgc2Vjb25kIG5vbi1vcHRpb24gYXJndW1lbnQgaXMgc3VwcGxpZWQgaXQgc2hvdWxkIGJlIHRoZSBuYW1lIG9mIHRoZQorb3JpZ2luYWwgc291cmNlIGRpcmVjdG9yeSBvciB0YXJmaWxlIG9yIHRoZSBlbXB0eSBzdHJpbmcgaWYgdGhlIHBhY2thZ2UgaXMKK2EgRGViaWFuLXNwZWNpZmljIG9uZSBhbmQgc28gaGFzIG5vIERlYmlhbmlzYXRpb24gZGlmZnMuIElmIG5vIHNlY29uZAorYXJndW1lbnQgaXMgc3VwcGxpZWQgdGhlbgorLkIgZHBrZ1wtc291cmNlCit3aWxsIGxvb2sgZm9yIHRoZSBvcmlnaW5hbCBzb3VyY2UgdGFyZmlsZQorLklCIHBhY2thZ2UgXyB1cHN0cmVhbS12ZXJzaW9uIC5vcmlnLnRhci5negorb3IgdGhlIG9yaWdpbmFsIHNvdXJjZSBkaXJlY3RvcnkKKy5JQiBkaXJlY3RvcnkgLm9yaWcKK2RlcGVuZGluZyBvbiB0aGUgXGZCXC1zWFxmUCBhcmd1bWVudHMuCisKKy5CUiBcLXNhICIsICIgXC1zcCAiLCAiIFwtc2sgIiwgIiBcLXN1ICIgYW5kICIgXC1zcgord2lsbCBub3Qgb3ZlcndyaXRlIGV4aXN0aW5nIHRhcmZpbGVzIG9yIGRpcmVjdG9yaWVzLiBJZiB0aGlzIGlzCitkZXNpcmVkIHRoZW4KKy5CUiBcLXNBICIsICIgXC1zUCAiLCAiIFwtc0sgIiwgIiBcLXNVICIgYW5kICIgXC1zUgorc2hvdWxkIGJlIHVzZWQgaW5zdGVhZC4KKy5UUAorLkJSIFwtc2sKK1NwZWNpZmllcyB0byBleHBlY3QgdGhlIG9yaWdpbmFsIHNvdXJjZSBhcyBhIHRhcmZpbGUsIGJ5IGRlZmF1bHQKKy5JQiBwYWNrYWdlIF8gdXBzdHJlYW0tdmVyc2lvbiAub3JpZy50YXIuIGV4dGVuc2lvbiBcZlIuCitJdCB3aWxsIGxlYXZlIHRoaXMgb3JpZ2luYWwgc291cmNlIGluIHBsYWNlIGFzIGEgdGFyZmlsZSwgb3IgY29weSBpdAordG8gdGhlIGN1cnJlbnQgZGlyZWN0b3J5IGlmIGl0IGlzbid0IGFscmVhZHkgdGhlcmUuIFRoZQordGFyYmFsbCB3aWxsIGJlIHVucGFja2VkIGludG8gCisuSUIgZGlyZWN0b3J5IC5vcmlnCitmb3IgdGhlIGdlbmVyYXRpb24gb2YgdGhlIGRpZmYuCisuVFAKKy5CIFwtc3AKK0xpa2UKKy5CIFwtc2sKK2J1dCB3aWxsIHJlbW92ZSB0aGUgZGlyZWN0b3J5IGFnYWluIGFmdGVyd2FyZHMuCisuVFAKKy5CIFwtc3UKK1NwZWNpZmllcyB0aGF0IHRoZSBvcmlnaW5hbCBzb3VyY2UgaXMgZXhwZWN0ZWQgYXMgYSBkaXJlY3RvcnksIGJ5CitkZWZhdWx0CisuSUIgcGFja2FnZSAtIHVwc3RyZWFtLXZlcnNpb24gLm9yaWcKK2FuZAorLkIgZHBrZ1wtc291cmNlCit3aWxsIGNyZWF0ZSBhIG5ldyBvcmlnaW5hbCBzb3VyY2UgYXJjaGl2ZSBmcm9tIGl0LgorLlRQCisuQiBcLXNyCitMaWtlCisuQiBcLXN1CitidXQgd2lsbCByZW1vdmUgdGhhdCBkaXJlY3RvcnkgYWZ0ZXIgaXQgaGFzIGJlZW4gdXNlZC4KKy5UUAorLkIgXC1zcworU3BlY2lmaWVzIHRoYXQgdGhlIG9yaWdpbmFsIHNvdXJjZSBpcyBhdmFpbGFibGUgYm90aCBhcyBhIGRpcmVjdG9yeQorYW5kIGFzIGEgdGFyZmlsZS4gZHBrZ1wtc291cmNlIHdpbGwgdXNlIHRoZSBkaXJlY3RvcnkgdG8gY3JlYXRlIHRoZSBkaWZmLCBidXQKK3RoZSB0YXJmaWxlIHRvIGNyZWF0ZSB0aGUKKy5CUiAuZHNjIC4KK1RoaXMgb3B0aW9uIG11c3QgYmUgdXNlZCB3aXRoIGNhcmUgLSBpZiB0aGUgZGlyZWN0b3J5IGFuZCB0YXJmaWxlIGRvCitub3QgbWF0Y2ggYSBiYWQgc291cmNlIGFyY2hpdmUgd2lsbCBiZSBnZW5lcmF0ZWQuCisuVFAKKy5CIFwtc24KK1NwZWNpZmllcyB0byBub3QgbG9vayBmb3IgYW55IG9yaWdpbmFsIHNvdXJjZSwgYW5kIHRvIG5vdCBnZW5lcmF0ZSBhIGRpZmYuCitUaGUgc2Vjb25kIGFyZ3VtZW50LCBpZiBzdXBwbGllZCwgbXVzdCBiZSB0aGUgZW1wdHkgc3RyaW5nLiBUaGlzIGlzCit1c2VkIGZvciBEZWJpYW4tc3BlY2lmaWMgcGFja2FnZXMgd2hpY2ggZG8gbm90IGhhdmUgYSBzZXBhcmF0ZQordXBzdHJlYW0gc291cmNlIGFuZCB0aGVyZWZvcmUgaGF2ZSBubyBkZWJpYW5pc2F0aW9uIGRpZmZzLgorLlRQCisuQlIgXC1zYSAiIG9yICIgXC1zQQorU3BlY2lmaWVzIHRvIGxvb2sgZm9yIHRoZSBvcmlnaW5hbCBzb3VyY2UgYXJjaGl2ZSBhcyBhIHRhcmZpbGUgb3IgYXMgYQorZGlyZWN0b3J5IC0gdGhlIHNlY29uZCBhcmd1bWVudCwgaWYgYW55LCBtYXkgYmUgZWl0aGVyLCBvciB0aGUgZW1wdHkKK3N0cmluZyAodGhpcyBpcyBlcXVpdmFsZW50IHRvIHVzaW5nCisuQlIgXC1zbiApLgorSWYgYSB0YXJmaWxlIGlzIGZvdW5kIGl0IHdpbGwgdW5wYWNrIGl0IHRvIGNyZWF0ZSB0aGUgZGlmZiBhbmQgcmVtb3ZlCitpdCBhZnRlcndhcmRzICh0aGlzIGlzIGVxdWl2YWxlbnQgdG8KKy5CUiBcLXNwICk7CitpZiBhIGRpcmVjdG9yeSBpcyBmb3VuZCBpdCB3aWxsIHBhY2sgaXQgdG8gY3JlYXRlIHRoZSBvcmlnaW5hbCBzb3VyY2UKK2FuZCByZW1vdmUgaXQgYWZ0ZXJ3YXJkcyAodGhpcyBpcyBlcXVpdmFsZW50IHRvCisuQlIgXC1zciApOworaWYgbmVpdGhlciBpcyBmb3VuZCBpdCB3aWxsIGFzc3VtZSB0aGF0IHRoZSBwYWNrYWdlIGhhcyBubworZGViaWFuaXNhdGlvbiBkaWZmcywgb25seSBhIHN0cmFpZ2h0Zm9yd2FyZCBzb3VyY2UgYXJjaGl2ZSAodGhpcyBpcworZXF1aXZhbGVudCB0bworLkJSIFwtc24gKS4KK0lmIGJvdGggYXJlIGZvdW5kIHRoZW4gXGZCZHBrZ1wtc291cmNlXGZQIHdpbGwgaWdub3JlIHRoZSBkaXJlY3RvcnksCitvdmVyd3JpdGluZyBpdCwgaWYKKy5CIFwtc0EKK3dhcyBzcGVjaWZpZWQgKHRoaXMgaXMgZXF1aXZhbGVudCB0bworLkJSIFwtc1AgKQorb3IgcmFpc2UgYW4gZXJyb3IgaWYKKy5CIFwtc2EKK3dhcyBzcGVjaWZpZWQuCisuQiBcLXNBCitpcyB0aGUgZGVmYXVsdC4KKy5UUAorLkIgXC1cLWFib3J0XC1vblwtdXBzdHJlYW1cLWNoYW5nZXMKK1RoZSBwcm9jZXNzIGZhaWxzIGlmIHRoZSBnZW5lcmF0ZWQgZGlmZiBjb250YWlucyBjaGFuZ2VzIHRvIGZpbGVzCitvdXRzaWRlIG9mIHRoZSBkZWJpYW4gc3ViLWRpcmVjdG9yeS4gVGhpcyBvcHRpb24gaXMgbm90IGFsbG93ZWQgaW4KK1xmQmRlYmlhbi9zb3VyY2Uvb3B0aW9uc1xmUCBidXQgY2FuIGJlIHVzZWQgaW4KK1xmQmRlYmlhbi9zb3VyY2UvbG9jYWxcLW9wdGlvbnNcZlAuCisKKy5UUAorLkIgRXh0cmFjdCBvcHRpb25zICh3aXRoIFwteCk6CisuUFAKK0luIGFsbCBjYXNlcyBhbnkgZXhpc3Rpbmcgb3JpZ2luYWwgc291cmNlIHRyZWUgd2lsbCBiZSByZW1vdmVkLgorLlRQCisuQiBcLXNwCitVc2VkIHdoZW4gZXh0cmFjdGluZyB0aGVuIHRoZSBvcmlnaW5hbCBzb3VyY2UgKGlmIGFueSkgd2lsbCBiZSBsZWZ0CithcyBhIHRhcmZpbGUuIElmIGl0IGlzIG5vdCBhbHJlYWR5IGxvY2F0ZWQgaW4gdGhlIGN1cnJlbnQgZGlyZWN0b3J5CitvciBpZiBhbiBleGlzdGluZyBidXQgZGlmZmVyZW50IGZpbGUgaXMgdGhlcmUgaXQgd2lsbCBiZSBjb3BpZWQgdGhlcmUuCisoXGZCVGhpcyBpcyB0aGUgZGVmYXVsdFxmUCkuCisuVFAKKy5CIFwtc3UKK1VucGFja3MgdGhlIG9yaWdpbmFsIHNvdXJjZSB0cmVlLgorLlRQCisuQiBcLXNuCitFbnN1cmVzIHRoYXQgdGhlIG9yaWdpbmFsIHNvdXJjZSBpcyBuZWl0aGVyIGNvcGllZCB0byB0aGUgY3VycmVudAorZGlyZWN0b3J5IG5vciB1bnBhY2tlZC4gQW55IG9yaWdpbmFsIHNvdXJjZSB0cmVlIHRoYXQgd2FzIGluIHRoZQorY3VycmVudCBkaXJlY3RvcnkgaXMgc3RpbGwgcmVtb3ZlZC4KKy5QUAorQWxsIHRoZQorLkJJIFwtcyBYCitvcHRpb25zIGFyZSBtdXR1YWxseSBleGNsdXNpdmUuIElmIHlvdSBzcGVjaWZ5IG1vcmUgdGhhbiBvbmUgb25seSB0aGUKK2xhc3Qgb25lIHdpbGwgYmUgdXNlZC4KKy5UUAorLkIgXC1cLXNraXBcLWRlYmlhbml6YXRpb24KK1NraXBzIGFwcGxpY2F0aW9uIG9mIHRoZSBkZWJpYW4gZGlmZiBvbiB0b3Agb2YgdGhlIHVwc3RyZWFtIHNvdXJjZXMuCisuCisuU1MgRm9ybWF0OiAyLjAKK0Fsc28ga25vd24gYXMgd2lnJnBlbi4gVGhpcyBmb3JtYXQgaXMgbm90IHJlY29tbWVuZGVkIGZvciB3aWRlLXNwcmVhZAordXNhZ2UsIHRoZSBmb3JtYXQgIjMuMCAocXVpbHQpIiByZXBsYWNlcyBpdC4gV2lnJnBlbiB3YXMgdGhlIGZpcnN0CitzcGVjaWZpY2F0aW9uIG9mIGEgbmV3LWdlbmVyYXRpb24gc291cmNlIHBhY2thZ2UgZm9ybWF0LgorCitUaGUgYmVoYXZpb3VyIG9mIHRoaXMgZm9ybWF0IGlzIHRoZSBzYW1lIGFzIHRoZSAiMy4wIChxdWlsdCkiIGZvcm1hdAorZXhjZXB0IHRoYXQgaXQgZG9lc24ndCB1c2UgYW4gZXhwbGljaXQgbGlzdCBvZiBwYXRjaGVzLiBBbGwgZmlsZXMgaW4KK1xmQmRlYmlhbi9wYXRjaGVzL1xmUCBtYXRjaGluZyB0aGUgcGVybCByZWd1bGFyIGV4cHJlc3Npb24gXGZCW1xcd1wtXStcZlAKK211c3QgYmUgdmFsaWQgcGF0Y2hlczogdGhleSBhcmUgYXBwbGllZCBhdCBleHRyYWN0aW9uIHRpbWUuCisKK1doZW4gYnVpbGRpbmcgYSBuZXcgc291cmNlIHBhY2thZ2UsIGFueSBjaGFuZ2UgdG8gdGhlIHVwc3RyZWFtIHNvdXJjZQoraXMgc3RvcmVkIGluIGEgcGF0Y2ggbmFtZWQgXGZCenpfZGViaWFuXC1kaWZmXC1hdXRvXGZQLgorLgorLlNTIEZvcm1hdDogMy4wIChuYXRpdmUpCitUaGlzIGZvcm1hdCBpcyBhbiBleHRlbnNpb24gb2YgdGhlIG5hdGl2ZSBwYWNrYWdlIGZvcm1hdCBhcyBkZWZpbmVkCitpbiB0aGUgMS4wIGZvcm1hdC4gSXQgc3VwcG9ydHMgYWxsIGNvbXByZXNzaW9uIG1ldGhvZHMgYW5kCit3aWxsIGlnbm9yZSBieSBkZWZhdWx0IGFueSBWQ1Mgc3BlY2lmaWMgZmlsZXMgYW5kIGRpcmVjdG9yaWVzCithcyB3ZWxsIGFzIG1hbnkgdGVtcG9yYXJ5IGZpbGVzIChzZWUgZGVmYXVsdCB2YWx1ZSBhc3NvY2lhdGVkIHRvCitcZkJcLUlcZlAgb3B0aW9uIGluIHRoZSBcZkJcLVwtaGVscFxmUCBvdXRwdXQpLgorLgorLlNTIEZvcm1hdDogMy4wIChxdWlsdCkKK0Egc291cmNlIHBhY2thZ2UgaW4gdGhpcyBmb3JtYXQgY29udGFpbnMgYXQgbGVhc3QKK2FuIG9yaWdpbmFsIHRhcmJhbGwgKFxmQi5vcmlnLnRhci5cZlBcZklleHRcZlAgd2hlcmUgXGZJZXh0XGZQIGNhbiBiZQorXGZCZ3pcZlAsIFxmQmJ6MlxmUCwgXGZCbHptYVxmUCBhbmQgXGZCeHpcZlApIGFuZCBhIGRlYmlhbiB0YXJiYWxsCisoXGZCLmRlYmlhbi50YXIuXGZQXGZJZXh0XGZQKS4gSXQgY2FuIGFsc28gY29udGFpbiBhZGRpdGlvbmFsIG9yaWdpbmFsCit0YXJiYWxscyAoXGZCLm9yaWdcLVxmUFxmSWNvbXBvbmVudFxmUFxmQi50YXIuXGZQXGZJZXh0XGZQKS4KK1xmSWNvbXBvbmVudFxmUCBjYW4gb25seSBjb250YWluIGFscGhhbnVtZXJpYyBjaGFyYWN0ZXJzIGFuZCBkYXNoZXMgKCJcLSIpLgorLlBQCisuQiBFeHRyYWN0aW5nCisuUFAKK1RoZSBtYWluIG9yaWdpbmFsIHRhcmJhbGwgaXMgZXh0cmFjdGVkIGZpcnN0LCB0aGVuIGFsbCBhZGRpdGlvbmFsIG9yaWdpbmFsCit0YXJiYWxscyBhcmUgZXh0cmFjdGVkIGluIHN1YmRpcmVjdG9yaWVzIG5hbWVkIGFmdGVyIHRoZSBcZkljb21wb25lbnRcZlAKK3BhcnQgb2YgdGhlaXIgZmlsZW5hbWUgKGFueSBwcmUtZXhpc3RpbmcgZGlyZWN0b3J5IGlzIHJlcGxhY2VkKS4gVGhlCitkZWJpYW4gdGFyYmFsbCBpcyBleHRyYWN0ZWQgb24gdG9wIG9mIHRoZSBzb3VyY2UgZGlyZWN0b3J5IGFmdGVyIHByaW9yCityZW1vdmFsIG9mIGFueSBwcmUtZXhpc3RpbmcgXGZCZGViaWFuXGZQIGRpcmVjdG9yeS4gTm90ZSB0aGF0IHRoZQorZGViaWFuIHRhcmJhbGwgbXVzdCBjb250YWluIGEgXGZCZGViaWFuXGZQIHN1Yi1kaXJlY3RvcnkgYnV0IGl0CitjYW4gYWxzbyBjb250YWluIGJpbmFyeSBmaWxlcyBvdXRzaWRlIG9mIHRoYXQgZGlyZWN0b3J5IChzZWUKK1xmQlwtXC1pbmNsdWRlXC1iaW5hcmllc1xmUCBvcHRpb24pLgorLlBQCitBbGwgcGF0Y2hlcyBsaXN0ZWQgaW4gXGZCZGViaWFuL3BhdGNoZXMvZGViaWFuLnNlcmllc1xmUCBvcgorXGZCZGViaWFuL3BhdGNoZXMvc2VyaWVzXGZQIGFyZSB0aGVuIGFwcGxpZWQuCitJZiB0aGUgZm9ybWVyIGZpbGUgaXMgdXNlZCBhbmQgdGhlIGxhdHRlciBvbmUgZG9lc24ndCBleGlzdCAob3IgaXMgYQorc3ltbGluayksIHRoZW4gdGhlIGxhdHRlciBpcyByZXBsYWNlZCB3aXRoIGEgc3ltbGluayB0byB0aGUgZm9ybWVyLiBUaGlzCitpcyBtZWFudCB0byBzaW1wbGlmeSB1c2FnZSBvZiBxdWlsdCB0byBtYW5hZ2UgdGhlIHNldCBvZiBwYXRjaGVzLiBOb3RlCitob3dldmVyIHRoYXQgd2hpbGUgXGZCZHBrZ1wtc291cmNlXGZQIHBhcnNlcyBjb3JyZWN0bHkgc2VyaWVzIGZpbGVzIHdpdGgKK2V4cGxpY2l0IG9wdGlvbnMgdXNlZCBmb3IgcGF0Y2ggYXBwbGljYXRpb24gKHN0b3JlZCBvbiBlYWNoIGxpbmUKK2FmdGVyIHRoZSBwYXRjaCBmaWxlbmFtZSBhbmQgb25lIG9yIG1vcmUgc3BhY2VzKSwgaXQgZG9lcyBpZ25vcmUgdGhvc2UKK29wdGlvbnMgYW5kIGFsd2F5cyBleHBlY3QgcGF0Y2hlcyB0aGF0IGNhbiBiZSBhcHBsaWVkIHdpdGggdGhlIFxmQlwtcDFcZlAKK29wdGlvbiBvZiBcZkJwYXRjaFxmUC4gSXQgd2lsbCB0aHVzIGVtaXQgYSB3YXJuaW5nIHdoZW4gaXQgZW5jb3VudGVycworc3VjaCBvcHRpb25zLCBhbmQgdGhlIGJ1aWxkIGlzIGxpa2VseSB0byBmYWlsLgorLlBQCitTaW1pbGFybHkgdG8gcXVpbHQncyBkZWZhdWx0IGJlaGF2aW91ciwgdGhlIHBhdGNoZXMgY2FuIHJlbW92ZSBmaWxlcyB0b28uCisuUFAKK1RoZSBmaWxlIFxmQi5wYy9hcHBsaWVkXC1wYXRjaGVzXGZQIGlzIGNyZWF0ZWQgaWYgc29tZQorcGF0Y2hlcyBoYXZlIGJlZW4gYXBwbGllZCBkdXJpbmcgdGhlIGV4dHJhY3Rpb24uCisuUFAKKy5CIEJ1aWxkaW5nCisuUFAKK0FsbCBvcmlnaW5hbCB0YXJiYWxscyBmb3VuZCBpbiB0aGUgY3VycmVudCBkaXJlY3RvcnkgYXJlIGV4dHJhY3RlZCBpbiBhCit0ZW1wb3JhcnkgZGlyZWN0b3J5IGJ5IGZvbGxvd2luZyB0aGUgc2FtZSBsb2dpYyBhcyBmb3IgdGhlIHVucGFjaywgdGhlCitkZWJpYW4gZGlyZWN0b3J5IGlzIGNvcGllZCBvdmVyIGluIHRoZSB0ZW1wb3JhcnkgZGlyZWN0b3J5LCBhbmQgYWxsCitwYXRjaGVzIGV4Y2VwdCB0aGUgYXV0b21hdGljIHBhdGNoIChcZkJkZWJpYW5cLWNoYW5nZXNcLVxmUFxmSXZlcnNpb25cZlAKK29yIFxmQmRlYmlhblwtY2hhbmdlc1xmUCwgZGVwZW5kaW5nIG9uIFxmQlwtXC1zaW5nbGVcLWRlYmlhblwtcGF0Y2hcZlApIGFyZQorYXBwbGllZC4gVGhlIHRlbXBvcmFyeSBkaXJlY3RvcnkgaXMgY29tcGFyZWQgdG8gdGhlIHNvdXJjZSBwYWNrYWdlCitkaXJlY3RvcnkuIFdoZW4gdGhlIGRpZmYgaXMgbm9uLWVtcHR5LCB0aGUgYnVpbGQgZmFpbHMgdW5sZXNzCitcZkJcLVwtc2luZ2xlXC1kZWJpYW5cLXBhdGNoXGZQIG9yIFxmQlwtXC1hdXRvXC1jb21taXRcZlAKK2hhcyBiZWVuIHVzZWQsIGluIHdoaWNoIGNhc2UgdGhlIGRpZmYgaXMgc3RvcmVkIGluIHRoZSBhdXRvbWF0aWMgcGF0Y2guCitJZiB0aGUgYXV0b21hdGljIHBhdGNoIGlzIGNyZWF0ZWQvZGVsZXRlZCwgaXQncyBhZGRlZC9yZW1vdmVkIGZyb20gdGhlCitzZXJpZXMgZmlsZSBhbmQgZnJvbSB0aGUgcXVpbHQgbWV0YWRhdGEuCisKK0FueSBjaGFuZ2UKK29uIGEgYmluYXJ5IGZpbGUgaXMgbm90IHJlcHJlc2VudGFibGUgaW4gYSBkaWZmIGFuZCB3aWxsIHRodXMgbGVhZCB0byBhCitmYWlsdXJlIHVubGVzcyB0aGUgbWFpbnRhaW5lciBkZWxpYmVyYXRlbHkgZGVjaWRlZCB0byBpbmNsdWRlIHRoYXQKK21vZGlmaWVkIGJpbmFyeSBmaWxlIGluIHRoZSBkZWJpYW4gdGFyYmFsbCAoYnkgbGlzdGluZyBpdCBpbgorXGZCZGViaWFuL3NvdXJjZS9pbmNsdWRlXC1iaW5hcmllc1xmUCkuIFRoZSBidWlsZCB3aWxsIGFsc28gZmFpbCBpZiBpdAorZmluZHMgYmluYXJ5IGZpbGVzIGluIHRoZSBkZWJpYW4gc3ViLWRpcmVjdG9yeSB1bmxlc3MgdGhleSBoYXZlIGJlZW4KK3doaXRlbGlzdGVkIHRocm91Z2ggXGZCZGViaWFuL3NvdXJjZS9pbmNsdWRlXC1iaW5hcmllc1xmUC4KKworVGhlIHVwZGF0ZWQgZGViaWFuIGRpcmVjdG9yeSBhbmQgdGhlIGxpc3Qgb2YgbW9kaWZpZWQgYmluYXJpZXMgaXMgdGhlbgordXNlZCB0byBnZW5lcmF0ZSB0aGUgZGViaWFuIHRhcmJhbGwuCisKK1RoZSBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlZCBkaWZmIGRvZXNuJ3QgaW5jbHVkZSBjaGFuZ2VzIG9uIFZDUyBzcGVjaWZpYworZmlsZXMgYXMgd2VsbCBhcyBtYW55IHRlbXBvcmFyeSBmaWxlcyAoc2VlIGRlZmF1bHQgdmFsdWUgYXNzb2NpYXRlZCB0bworXGZCXC1pXGZQIG9wdGlvbiBpbiB0aGUgXGZCXC1cLWhlbHBcZlAgb3V0cHV0KS4gSW4gcGFydGljdWxhciwgdGhlCitcZkIucGNcZlAgZGlyZWN0b3J5IHVzZWQgYnkgcXVpbHQgaXMgaWdub3JlZCBkdXJpbmcgZ2VuZXJhdGlvbiBvZiB0aGUKK2F1dG9tYXRpYyBwYXRjaC4KKworTm90ZTogXGZCZHBrZ1wtc291cmNlXGZQIFxmQlwtXC1iZWZvcmVcLWJ1aWxkXGZQIChhbmQgXGZCXC1iXGZQKSB3aWxsCitlbnN1cmUgdGhhdCBhbGwgcGF0Y2hlcyBsaXN0ZWQgaW4gdGhlIHNlcmllcyBmaWxlIGFyZSBhcHBsaWVkIHNvIHRoYXQgYQorcGFja2FnZSBidWlsZCBhbHdheXMgaGFzIGFsbCBwYXRjaGVzIGFwcGxpZWQuIEl0IGRvZXMgdGhpcyBieSBmaW5kaW5nCit1bmFwcGxpZWQgcGF0Y2hlcyAodGhleSBhcmUgbGlzdGVkIGluIHRoZSBcZkJzZXJpZXNcZlAgZmlsZSBidXQgbm90IGluCitcZkIucGMvYXBwbGllZFwtcGF0Y2hlc1xmUCksIGFuZCBpZiB0aGUgZmlyc3QgcGF0Y2ggaW4gdGhhdCBzZXQgY2FuIGJlCithcHBsaWVkIHdpdGhvdXQgZXJyb3JzLCBpdCB3aWxsIGFwcGx5IHRoZW0gYWxsLiBUaGUgb3B0aW9uCitcZkJcLVwtbm9cLXByZXBhcmF0aW9uXGZQIGNhbiBiZSB1c2VkIHRvIGRpc2FibGUgdGhpcworYmVoYXZpb3IuCisKKy5QUAorLkIgUmVjb3JkaW5nIGNoYW5nZXMKKy5UUAorLlJJICJcZkJcLVwtY29tbWl0XGZQIFsiIGRpcmVjdG9yeSAiXSBbIiBwYXRjaC1uYW1lICJdIFsiIHBhdGNoLWZpbGUgXQorR2VuZXJhdGVzIGEgcGF0Y2ggY29ycmVzcG9uZGluZyB0byB0aGUgbG9jYWwgY2hhbmdlcyB0aGF0IGFyZSBub3QgbWFuYWdlZAorYnkgdGhlIHF1aWx0IHBhdGNoIHN5c3RlbSBhbmQgaW50ZWdyYXRlcyBpdCBpbiB0aGUgcGF0Y2ggc3lzdGVtIHVuZGVyCit0aGUgbmFtZSBcZklwYXRjaC1uYW1lXGZQLiBJZiB0aGUgbmFtZSBpcyBtaXNzaW5nLCBpdCB3aWxsIGJlIGFza2VkCitpbnRlcmFjdGl2ZWx5LiBJZiBcZklwYXRjaC1maWxlXGZQIGlzIGdpdmVuLCBpdCBpcyB1c2VkIGFzIHRoZSBwYXRjaAorY29ycmVzcG9uZGluZyB0byB0aGUgbG9jYWwgY2hhbmdlcyB0byBpbnRlZ3JhdGUuIFRoaXMgaXMgbWFpbmx5IHVzZWZ1bAorYWZ0ZXIgYSBidWlsZCBmYWlsdXJlIHRoYXQgcHJlLWdlbmVyYXRlZCB0aGlzIGZpbGUuIE9uY2UgaW50ZWdyYXRlZCwgYW4KK2VkaXRvciBpcyBsYXVuY2hlZCBzbyB0aGF0IHlvdSBjYW4gZWRpdCB0aGUgbWV0YS1pbmZvcm1hdGlvbiBpbiB0aGUgcGF0Y2gKK2hlYWRlci4KKworLlBQCisuQiBCdWlsZCBvcHRpb25zCisuVFAKKy5CSSBcLVwtYWxsb3dcLXZlcnNpb25cLW9mXC1xdWlsdFwtZGI9IHZlcnNpb24KK0FsbG93IFxmQmRwa2dcLXNvdXJjZVxmUCB0byBidWlsZCB0aGUgc291cmNlIHBhY2thZ2UgaWYgdGhlIHZlcnNpb24gb2YKK3RoZSBxdWlsdCBtZXRhZGF0YSBpcyB0aGUgb25lIHNwZWNpZmllZCwgZXZlbiBpZiBcZkJkcGtnXC1zb3VyY2VcZlAKK2RvZXNuJ3Qga25vdyBhYm91dCBpdC4gRWZmZWN0aXZlbHkgdGhpcyBzYXlzIHRoYXQgdGhlIGdpdmVuIHZlcnNpb24gb2YgdGhlCitxdWlsdCBtZXRhZGF0YSBpcyBjb21wYXRpYmxlIHdpdGggdGhlIHZlcnNpb24gMiB0aGF0IFxmQmRwa2dcLXNvdXJjZVxmUAorY3VycmVudGx5IHN1cHBvcnRzLiBUaGUgdmVyc2lvbiBvZiB0aGUgcXVpbHQgbWV0YWRhdGEgaXMgc3RvcmVkIGluCitcZkIucGMvLnZlcnNpb25cZlAuCisuVFAKKy5CIFwtXC1pbmNsdWRlXC1yZW1vdmFsCitEbyBub3QgaWdub3JlIHJlbW92ZWQgZmlsZXMgYW5kIGluY2x1ZGUgdGhlbSBpbiB0aGUgYXV0b21hdGljYWxseQorZ2VuZXJhdGVkIHBhdGNoLgorLlRQCisuQiBcLVwtaW5jbHVkZVwtdGltZXN0YW1wCitJbmNsdWRlIHRpbWVzdGFtcCBpbiB0aGUgYXV0b21hdGljYWxseSBnZW5lcmF0ZWQgcGF0Y2guCisuVFAKKy5CIFwtXC1pbmNsdWRlXC1iaW5hcmllcworQWRkIGFsbCBtb2RpZmllZCBiaW5hcmllcyBpbiB0aGUgZGViaWFuIHRhcmJhbGwuIEFsc28gYWRkIHRoZW0gdG8KK1xmQmRlYmlhbi9zb3VyY2UvaW5jbHVkZVwtYmluYXJpZXNcZlA6IHRoZXkgd2lsbCBiZSBhZGRlZCBieSBkZWZhdWx0CitpbiBzdWJzZXF1ZW50IGJ1aWxkcyBhbmQgdGhpcyBvcHRpb24gaXMgdGh1cyBubyBtb3JlIG5lZWRlZC4KKy5UUAorLkIgXC1cLW5vXC1wcmVwYXJhdGlvbgorRG8gbm90IHRyeSB0byBwcmVwYXJlIHRoZSBidWlsZCB0cmVlIGJ5IGFwcGx5aW5nIHBhdGNoZXMgd2hpY2ggYXJlCithcHBhcmVudGx5IHVuYXBwbGllZC4KKy5UUAorLkIgXC1cLXNpbmdsZVwtZGViaWFuXC1wYXRjaAorVXNlIFxmQmRlYmlhbi9wYXRjaGVzL2RlYmlhblwtY2hhbmdlc1xmUCBpbnN0ZWFkIG9mCitcZkJkZWJpYW4vcGF0Y2hlcy9kZWJpYW5cLWNoYW5nZXNcLVxmUFxmSXZlcnNpb25cZlAgZm9yIHRoZSBuYW1lIG9mIHRoZQorYXV0b21hdGljIHBhdGNoIGdlbmVyYXRlZCBkdXJpbmcgYnVpbGQuIFRoaXMgb3B0aW9uIGlzIHBhcnRpY3VsYXJseQordXNlZnVsIHdoZW4gdGhlIHBhY2thZ2UgaXMgbWFpbnRhaW5lZCBpbiBhIFZDUyBhbmQgYSBwYXRjaCBzZXQgY2FuJ3QgcmVsaWFibHkKK2JlIGdlbmVyYXRlZC4gSW5zdGVhZCB0aGUgY3VycmVudCBkaWZmIHdpdGggdXBzdHJlYW0gc2hvdWxkIGJlIHN0b3JlZCBpbiBhCitzaW5nbGUgcGF0Y2guIFRoZSBvcHRpb24gd291bGQgYmUgcHV0IGluIFxmQmRlYmlhbi9zb3VyY2UvbG9jYWxcLW9wdGlvbnNcZlAKK2FuZCB3b3VsZCBiZSBhY2NvbXBhbmllZCBieSBhIFxmQmRlYmlhbi9zb3VyY2UvbG9jYWxcLXBhdGNoXC1oZWFkZXJcZlAgZmlsZQorZXhwbGFpbmluZyBob3cgdGhlIERlYmlhbiBjaGFuZ2VzIGNhbiBiZSBiZXN0IHJldmlld2VkLCBmb3IgZXhhbXBsZSBpbiB0aGUKK1ZDUyB0aGF0IGlzIHVzZWQuCisuVFAKKy5CIFwtXC1jcmVhdGVcLWVtcHR5XC1vcmlnCitBdXRvbWF0aWNhbGx5IGNyZWF0ZSB0aGUgbWFpbiBvcmlnaW5hbCB0YXJiYWxsIGFzIGVtcHR5IGlmIGl0J3MgbWlzc2luZworYW5kIGlmIHRoZXJlIGFyZSBzdXBwbGVtZW50YXJ5IG9yaWdpbmFsIHRhcmJhbGxzLiBUaGlzIG9wdGlvbiBpcyBtZWFudCB0bworYmUgdXNlZCB3aGVuIHRoZSBzb3VyY2UgcGFja2FnZSBpcyBqdXN0IGEgYnVuZGxlIG9mIG11bHRpcGxlIHVwc3RyZWFtCitzb2Z0d2FyZSBhbmQgd2hlcmUgdGhlcmUncyBubyAibWFpbiIgc29mdHdhcmUuCisuVFAKKy5CIFwtXC11bmFwcGx5XC1wYXRjaGVzCitVbmFwcGx5IHRoZSBwYXRjaGVzIGluIHRoZSBcZkJcLVwtYWZ0ZXJcLWJ1aWxkXGZQIGhvb2suIFlvdSB1c3VhbGx5IGRvbid0CituZWVkIHRoaXMgb3B0aW9uIGFzIGRwa2dcLXNvdXJjZSB3aWxsIGF1dG9tYXRpY2FsbHkgdW5hcHBseSB0aGUgcGF0Y2hlcworaWYgaXQgZGlkIGFwcGx5IHRoZW0gZHVyaW5nIFxmQlwtXC1iZWZvcmVcLWJ1aWxkXGZQLiBUaGlzCitvcHRpb24gaXMgb25seSBhbGxvd2VkIGluIFxmQmRlYmlhbi9zb3VyY2UvbG9jYWxcLW9wdGlvbnNcZlAgc28gdGhhdCBhbGwKK2dlbmVyYXRlZCBzb3VyY2UgcGFja2FnZXMgaGF2ZSB0aGUgc2FtZSBiZWhhdmlvciBieSBkZWZhdWx0LgorLlRQCisuQiBcLVwtYWJvcnRcLW9uXC11cHN0cmVhbVwtY2hhbmdlcworVGhlIHByb2Nlc3MgZmFpbHMgaWYgYW4gYXV0b21hdGljIHBhdGNoIGhhcyBiZWVuIGdlbmVyYXRlZC4gVGhpcyBvcHRpb24KK2NhbiBiZSB1c2VkIHRvIGVuc3VyZSB0aGF0IGFsbCBjaGFuZ2VzIHdlcmUgcHJvcGVybHkgcmVjb3JkZWQgaW4gc2VwYXJhdGUKK3F1aWx0IHBhdGNoZXMgcHJpb3IgdG8gdGhlIHNvdXJjZSBwYWNrYWdlIGJ1aWxkLiBUaGlzIG9wdGlvbiBpcyBub3QKK2FsbG93ZWQgaW4gXGZCZGViaWFuL3NvdXJjZS9vcHRpb25zXGZQIGJ1dCBjYW4gYmUgdXNlZCBpbgorXGZCZGViaWFuL3NvdXJjZS9sb2NhbFwtb3B0aW9uc1xmUC4KKy5UUAorLkIgXC1cLWF1dG9cLWNvbW1pdAorVGhlIHByb2Nlc3MgZG9lc24ndCBmYWlsIGlmIGFuIGF1dG9tYXRpYyBwYXRjaCBoYXMgYmVlbiBnZW5lcmF0ZWQsIGluc3RlYWQKK2l0J3MgaW1tZWRpYXRlbHkgcmVjb3JkZWQgaW4gdGhlIHF1aWx0IHNlcmllcy4KKworLlBQCisuQiBFeHRyYWN0IG9wdGlvbnMKKy5UUAorLkIgXC1cLXNraXBcLWRlYmlhbml6YXRpb24KK1NraXBzIGV4dHJhY3Rpb24gb2YgdGhlIGRlYmlhbiB0YXJiYWxsIG9uIHRvcCBvZiB0aGUgdXBzdHJlYW0gc291cmNlcy4KKy5UUAorLkIgXC1cLXNraXBcLXBhdGNoZXMKK0RvIG5vdCBhcHBseSBwYXRjaGVzIGF0IHRoZSBlbmQgb2YgdGhlIGV4dHJhY3Rpb24uCisuCisuU1MgRm9ybWF0OiAzLjAgKGN1c3RvbSkKK1RoaXMgZm9ybWF0IGlzIHNwZWNpYWwuIEl0IGRvZXNuJ3QgcmVwcmVzZW50IGEgcmVhbCBzb3VyY2UgcGFja2FnZQorZm9ybWF0IGJ1dCBjYW4gYmUgdXNlZCB0byBjcmVhdGUgc291cmNlIHBhY2thZ2VzIHdpdGggYXJiaXRyYXJ5IGZpbGVzLgorLlBQCisuQiBCdWlsZCBvcHRpb25zCisuUFAKK0FsbCBub24tb3B0aW9uIGFyZ3VtZW50cyBhcmUgdGFrZW4gYXMgZmlsZXMgdG8gaW50ZWdyYXRlIGluIHRoZQorZ2VuZXJhdGVkIHNvdXJjZSBwYWNrYWdlLiBUaGV5IG11c3QgZXhpc3QgYW5kIGFyZSBwcmVmZXJhYmx5CitpbiB0aGUgY3VycmVudCBkaXJlY3RvcnkuIEF0IGxlYXN0IG9uZSBmaWxlIG11c3QgYmUgZ2l2ZW4uCisuVFAKKy5CSSBcLVwtdGFyZ2V0XC1mb3JtYXQ9IHZhbHVlCitcZkJSZXF1aXJlZFxmUC4gRGVmaW5lcyB0aGUgcmVhbCBmb3JtYXQgb2YgdGhlIGdlbmVyYXRlZCBzb3VyY2UgcGFja2FnZS4KK1RoZSBnZW5lcmF0ZWQgLmRzYyBmaWxlIHdpbGwgY29udGFpbiB0aGlzIHZhbHVlIGluIGl0cyBcZklGb3JtYXRcZlAgZmllbGQKK2FuZCBub3QgIjMuMCAoY3VzdG9tKSIuCisuCisuU1MgRm9ybWF0OiAzLjAgKGdpdCkKK1RoaXMgZm9ybWF0IGlzIGV4cGVyaW1lbnRhbC4KKy5QUAorQSBzb3VyY2UgcGFja2FnZSBpbiB0aGlzIGZvcm1hdCBjb25zaXN0cyBvZiBhCitzaW5nbGUgYnVuZGxlIG9mIGEgZ2l0IHJlcG9zaXRvcnkgXGZCLmdpdFxmUCB0byBob2xkIHRoZSBzb3VyY2Ugb2YgYSBwYWNrYWdlLgorVGhlcmUgbWF5IGFsc28gYmUgYSBcZkIuZ2l0c2hhbGxvd1xmUCBmaWxlIGxpc3RpbmcgcmV2aXNpb25zIGZvciBhIHNoYWxsb3cKK2dpdCBjbG9uZS4KKy5QUAorLkIgRXh0cmFjdGluZworLlBQCitUaGUgYnVuZGxlIGlzIGNsb25lZCBhcyBhIGdpdCByZXBvc2l0b3J5IHRvIHRoZSB0YXJnZXQgZGlyZWN0b3J5LgorSWYgdGhlcmUgaXMgYSBnaXRzaGFsbG93IGZpbGUsIGl0IGlzIGluc3RhbGxlZCBhcyBgLmdpdC9zaGFsbG93YCBpbnNpZGUKK3RoZSBjbG9uZWQgZ2l0IHJlcG9zaXRvcnkuCisuUFAKK05vdGUgdGhhdCBieSBkZWZhdWx0IHRoZSBuZXcgcmVwb3NpdG9yeSB3aWxsIGhhdmUgdGhlIHNhbWUgYnJhbmNoIGNoZWNrZWQKK291dCB0aGF0IHdhcyBjaGVja2VkIG91dCBpbiB0aGUgb3JpZ2luYWwgc291cmNlLiAoVHlwaWNhbGx5ICJtYXN0ZXIiLCBidXQKK2l0IGNvdWxkIGJlIGFueXRoaW5nLikgQW55IG90aGVyIGJyYW5jaGVzIHdpbGwgYmUgYXZhaWxhYmxlIHVuZGVyCitgcmVtb3Rlcy9vcmlnaW4vYC4KKy5QUAorLkIgQnVpbGRpbmcKKy5QUAorQmVmb3JlIGdvaW5nIGFueSBmdXJ0aGVyLCBzb21lIGNoZWNrcyBhcmUgZG9uZSB0byBlbnN1cmUgdGhhdCB3ZQorZG9uJ3QgaGF2ZSBhbnkgbm9uLWlnbm9yZWQgdW5jb21taXR0ZWQgY2hhbmdlcy4KKy5QUAorXGZCZ2l0XC1idW5kbGVcZlAoMSkgaXMgdXNlZCB0byBnZW5lcmF0ZSBhIGJ1bmRsZSBvZiB0aGUgZ2l0IHJlcG9zaXRvcnkuCitCeSBkZWZhdWx0LCBhbGwgYnJhbmNoZXMgYW5kIHRhZ3MgaW4gdGhlIHJlcG9zaXRvcnkgYXJlIGluY2x1ZGVkIGluIHRoZQorYnVuZGxlLgorLlBQCisuQiBCdWlsZCBvcHRpb25zCisuVFAKKy5CSSBcLVwtZ2l0XC1yZWY9IHJlZgorQWxsb3dzIHNwZWNpZnlpbmcgYSBnaXQgcmVmIHRvIGluY2x1ZGUgaW4gdGhlIGdpdCBidW5kbGUuIFVzZSBkaXNhYmxlcwordGhlIGRlZmF1bHQgYmVoYXZpb3Igb2YgaW5jbHVkaW5nIGFsbCBicmFuY2hlcyBhbmQgdGFncy4gTWF5IGJlIHNwZWNpZmllZAorbXVsdGlwbGUgdGltZXMuIFRoZSBcZklyZWZcZlAgY2FuIGJlIHRoZSBuYW1lIG9mIGEgYnJhbmNoIG9yIHRhZyB0bworaW5jbHVkZS4gSXQgbWF5IGFsc28gYmUgYW55IHBhcmFtZXRlciB0aGF0IGNhbiBiZSBwYXNzZWQgdG8KK1xmQmdpdFwtcmV2XC1saXN0XGZQKDEpLiBGb3IgZXhhbXBsZSwgdG8gaW5jbHVkZSBvbmx5Cit0aGUgbWFzdGVyIGJyYW5jaCwgdXNlIFwtXC1naXRcLXJlZj1tYXN0ZXIuIFRvIGluY2x1ZGUgYWxsIHRhZ3MgYW5kCiticmFuY2hlcywgZXhjZXB0IGZvciB0aGUgcHJpdmF0ZSBicmFuY2gsIHVzZSBcLVwtZ2l0XC1yZWY9XC1cLWFsbAorXC1cLWdpdFwtcmVmPV5wcml2YXRlCisuVFAKKy5CSSBcLVwtZ2l0XC1kZXB0aD0gbnVtYmVyCitDcmVhdGVzIGEgc2hhbGxvdyBjbG9uZSB3aXRoIGEgaGlzdG9yeSB0cnVuY2F0ZWQgdG8gdGhlIHNwZWNpZmllZCBudW1iZXIgb2YKK3JldmlzaW9ucy4KKy5TUyBGb3JtYXQ6IDMuMCAoYnpyKQorVGhpcyBmb3JtYXQgaXMgZXhwZXJpbWVudGFsLiBJdCBnZW5lcmF0ZXMgYSBzaW5nbGUgdGFyYmFsbAorY29udGFpbmluZyB0aGUgYnpyIHJlcG9zaXRvcnkuCisuUFAKKy5CIEV4dHJhY3RpbmcKKy5QUAorVGhlIHRhcmJhbGwgaXMgdW5wYWNrZWQgYW5kIHRoZW4gYnpyIGlzIHVzZWQgdG8gY2hlY2tvdXQgdGhlIGN1cnJlbnQKK2JyYW5jaC4KKy5QUAorLkIgQnVpbGRpbmcKKy5QUAorQmVmb3JlIGdvaW5nIGFueSBmdXJ0aGVyLCBzb21lIGNoZWNrcyBhcmUgZG9uZSB0byBlbnN1cmUgdGhhdCB3ZQorZG9uJ3QgaGF2ZSBhbnkgbm9uLWlnbm9yZWQgdW5jb21taXR0ZWQgY2hhbmdlcy4KKy5QUAorVGhlbiB0aGUgVkNTIHNwZWNpZmljIHBhcnQgb2YgdGhlIHNvdXJjZSBkaXJlY3RvcnkgaXMgY29waWVkIG92ZXIgdG8gYQordGVtcG9yYXJ5IGRpcmVjdG9yeS4gQmVmb3JlIHRoaXMgdGVtcG9yYXJ5IGRpcmVjdG9yeSBpcyBwYWNrZWQgaW4gYSB0YXJiYWxsLAordmFyaW91cyBjbGVhbnVwIGFyZSBkb25lIHRvIHNhdmUgc3BhY2UuCisuU0ggV0FSTklOR1MgQU5EIEVSUk9SUworLlNTIG5vIHNvdXJjZSBmb3JtYXQgc3BlY2lmaWVkIGluIGRlYmlhbi9zb3VyY2UvZm9ybWF0CitUaGUgZmlsZSBcZkJkZWJpYW4vc291cmNlL2Zvcm1hdFxmUCBzaG91bGQgYWx3YXlzIGV4aXN0IGFuZCBpbmRpY2F0ZSB0aGUKK2Rlc2lyZWQgc291cmNlIGZvcm1hdC4gRm9yIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5LCBmb3JtYXQgIjEuMCIgaXMKK2Fzc3VtZWQgd2hlbiB0aGUgZmlsZSBkb2Vzbid0IGV4aXN0IGJ1dCB5b3Ugc2hvdWxkIG5vdCByZWx5IG9uIHRoaXM6CithdCBzb21lIHBvaW50IGluIHRoZSBmdXR1cmUgZHBrZ1wtc291cmNlIHdpbGwgYmUgbW9kaWZpZWQgdG8gZmFpbCB3aGVuIHRoYXQKK2ZpbGUgZG9lc24ndCBleGlzdC4KKworVGhlIHJhdGlvbmFsZSBpcyB0aGF0IGZvcm1hdCAiMS4wIiBpcyBubyBsb25nZXIgdGhlIHJlY29tbWVuZGVkIGZvcm1hdCwKK3lvdSBzaG91bGQgdXN1YWxseSBwaWNrIG9uZSBvZiB0aGUgbmV3ZXIgZm9ybWF0cyAoIjMuMCAocXVpbHQpIiwgIjMuMAorKG5hdGl2ZSkiKSBidXQgXGZCZHBrZ1wtc291cmNlXGZQIHdpbGwgbm90IGRvIHRoaXMgYXV0b21hdGljYWxseSBmb3IgeW91LgorSWYgeW91IHdhbnQgdG8gY29udGludWUgdXNpbmcgdGhlIG9sZCBmb3JtYXQsIHlvdSBzaG91bGQgYmUgZXhwbGljaXQgYWJvdXQKK2l0IGFuZCBwdXQgIjEuMCIgaW4gXGZCZGViaWFuL3NvdXJjZS9mb3JtYXRcZlAuCisuU1MgdGhlIGRpZmYgbW9kaWZpZXMgdGhlIGZvbGxvd2luZyB1cHN0cmVhbSBmaWxlcworV2hlbiB1c2luZyBzb3VyY2UgZm9ybWF0ICIxLjAiIGl0IGlzIHVzdWFsbHkgYSBiYWQgaWRlYSB0byBtb2RpZnkKK3Vwc3RyZWFtIGZpbGVzIGRpcmVjdGx5IGFzIHRoZSBjaGFuZ2VzIGVuZCB1cCBoaWRkZW4gYW5kIG1vc3RseQordW5kb2N1bWVudGVkIGluIHRoZSAuZGlmZi5neiBmaWxlLiBJbnN0ZWFkIHlvdSBzaG91bGQgc3RvcmUgeW91ciBjaGFuZ2VzCithcyBwYXRjaGVzIGluIHRoZSBkZWJpYW4gZGlyZWN0b3J5IGFuZCBhcHBseSB0aGVtIGF0IGJ1aWxkLXRpbWUuIFRvIGF2b2lkCit0aGlzIGNvbXBsZXhpdHkgeW91IGNhbiBhbHNvIHVzZSB0aGUgZm9ybWF0ICIzLjAgKHF1aWx0KSIgdGhhdCBvZmZlcnMgdGhpcworbmF0aXZlbHkuCisuU1MgY2Fubm90IHJlcHJlc2VudCBjaGFuZ2UgdG8gXGZJZmlsZVxmUAorQ2hhbmdlcyB0byB1cHN0cmVhbSBzb3VyY2VzIGFyZSB1c3VhbGx5IHN0b3JlZCB3aXRoIHBhdGNoIGZpbGVzLCBidXQgbm90CithbGwgY2hhbmdlcyBjYW4gYmUgcmVwcmVzZW50ZWQgd2l0aCBwYXRjaGVzOiB0aGV5IGNhbiBvbmx5IGFsdGVyIHRoZQorY29udGVudCBvZiBwbGFpbiB0ZXh0IGZpbGVzLiBJZiB5b3UgdHJ5IHJlcGxhY2luZyBhIGZpbGUgd2l0aCBzb21ldGhpbmcgb2YKK2EgZGlmZmVyZW50IHR5cGUgKGZvciBleGFtcGxlIHJlcGxhY2luZyBhIHBsYWluIGZpbGUgd2l0aCBhIHN5bWxpbmsgb3IgYQorZGlyZWN0b3J5KSwgeW91IHdpbGwgZ2V0IHRoaXMgZXJyb3IgbWVzc2FnZS4KKy5TUyBuZXdseSBjcmVhdGVkIGVtcHR5IGZpbGUgXGZJZmlsZVxmQiB3aWxsIG5vdCBiZSByZXByZXNlbnRlZCBpbiBkaWZmCitFbXB0eSBmaWxlcyBjYW4ndCBiZSBjcmVhdGVkIHdpdGggcGF0Y2ggZmlsZXMuIFRodXMgdGhpcyBjaGFuZ2UgaXMgbm90CityZWNvcmRlZCBpbiB0aGUgc291cmNlIHBhY2thZ2UgYW5kIHlvdSBhcmUgd2FybmVkIGFib3V0IGl0LgorLlNTIGV4ZWN1dGFibGUgbW9kZSBcZklwZXJtc1xmQiBvZiBcZklmaWxlXGZCIHdpbGwgbm90IGJlIHJlcHJlc2VudGVkIGluIGRpZmYKKy5TUyBzcGVjaWFsIG1vZGUgXGZJcGVybXNcZkIgb2YgXGZJZmlsZVxmQiB3aWxsIG5vdCBiZSByZXByZXNlbnRlZCBpbiBkaWZmCitQYXRjaCBmaWxlcyBkbyBub3QgcmVjb3JkIHBlcm1pc3Npb25zIG9mIGZpbGVzIGFuZCB0aHVzIG1vZGlmaWVkCitwZXJtaXNzaW9ucyBhcmUgbm90IHN0b3JlZCBpbiB0aGUgc291cmNlIHBhY2thZ2UuIFRoaXMgd2FybmluZyByZW1pbmRzIHlvdQorb2YgdGhhdCBmYWN0LgorLlNIIEZJTEUgRk9STUFUUworLlNTIGRlYmlhbi9zb3VyY2UvZm9ybWF0CitUaGlzIGZpbGUgY29udGFpbnMgb24gYSBzaW5nbGUgbGluZSB0aGUgZm9ybWF0IHRoYXQgc2hvdWxkIGJlIHVzZWQgdG8KK2J1aWxkIHRoZSBzb3VyY2UgcGFja2FnZSAocG9zc2libGUgZm9ybWF0cyBhcmUgZGVzY3JpYmVkIGFib3ZlKS4gTm8gbGVhZGluZworb3IgdHJhaWxpbmcgc3BhY2VzIGFyZSBhbGxvd2VkLgorLlNTIGRlYmlhbi9zb3VyY2UvaW5jbHVkZVwtYmluYXJpZXMKK1RoaXMgZmlsZSBjb250YWlucyBhIGxpc3Qgb2YgYmluYXJ5IGZpbGVzIChvbmUgcGVyIGxpbmUpIHRoYXQgc2hvdWxkIGJlCitpbmNsdWRlZCBpbiB0aGUgZGViaWFuIHRhcmJhbGwuIExlYWRpbmcgYW5kIHRyYWlsaW5nIHNwYWNlcyBhcmUgc3RyaXBwZWQuCitMaW5lcyBzdGFydGluZyB3aXRoICIjIiBhcmUgY29tbWVudHMgYW5kIGFyZSBza2lwcGVkLiBFbXB0eSBsaW5lcyBhcmUgaWdub3JlZC4KKy5TUyBkZWJpYW4vc291cmNlL29wdGlvbnMKK1RoaXMgZmlsZSBjb250YWlucyBhIGxpc3Qgb2YgbG9uZyBvcHRpb25zIHRoYXQgc2hvdWxkIGJlIGF1dG9tYXRpY2FsbHkKK3ByZXBlbmRlZCB0byB0aGUgc2V0IG9mIGNvbW1hbmQgbGluZSBvcHRpb25zIG9mIGEgXGZCZHBrZ1wtc291cmNlIFwtYlxmUgorb3IgXGZCZHBrZ1wtc291cmNlIFwtXC1wcmludFwtZm9ybWF0XGZSIGNhbGwuIE9wdGlvbnMgbGlrZQorXGZCXC1cLWNvbXByZXNzaW9uXGZSIGFuZCBcZkJcLVwtY29tcHJlc3Npb25cLWxldmVsXGZSIGFyZSB3ZWxsIHN1aXRlZCBmb3IKK3RoaXMgZmlsZS4KKy5QCitFYWNoIG9wdGlvbiBzaG91bGQgYmUgcHV0IG9uIGEgc2VwYXJhdGUgbGluZS4gRW1wdHkgbGluZXMgYW5kIGxpbmVzCitzdGFydGluZyB3aXRoICIjIiBhcmUgaWdub3JlZC4gVGhlIGxlYWRpbmcgIlwtXC0iIHNob3VsZCBiZQorc3RyaXBwZWQgYW5kIHNob3J0IG9wdGlvbnMgYXJlIG5vdCBhbGxvd2VkLiBPcHRpb25hbCBzcGFjZXMgYXJlIGFsbG93ZWQKK2Fyb3VuZCB0aGUgIj0iIHN5bWJvbCBhbmQgb3B0aW9uYWwgcXVvdGVzIGFyZSBhbGxvd2VkIGFyb3VuZCB0aGUgdmFsdWUuCitIZXJlJ3MgYW4gZXhhbXBsZSBvZiBzdWNoIGEgZmlsZToKKy5QCisgICMgbGV0IGRwa2dcLXNvdXJjZSBjcmVhdGUgYSBkZWJpYW4udGFyLmJ6MiB3aXRoIG1heGltYWwgY29tcHJlc3Npb24KKyAgY29tcHJlc3Npb24gPSAiYnppcDIiCisgIGNvbXByZXNzaW9uXC1sZXZlbCA9IDkKKyAgIyB1c2UgZGViaWFuL3BhdGNoZXMvZGViaWFuXC1jaGFuZ2VzIGFzIGF1dG9tYXRpYyBwYXRjaAorICBzaW5nbGVcLWRlYmlhblwtcGF0Y2gKKyAgIyBpZ25vcmUgY2hhbmdlcyBvbiBjb25maWcue3N1YixndWVzc30KKyAgZXh0ZW5kLWRpZmYtaWdub3JlID0gIihefC8pKGNvbmZpZ1wuc3VifGNvbmZpZ1wuZ3Vlc3MpJCIKKy5QCitOb3RlOiBcZkJmb3JtYXRcZlIgb3B0aW9ucyBhcmUgbm90IGFjY2VwdGVkIGluIHRoaXMgZmlsZSwgeW91IHNob3VsZAordXNlIFxmQmRlYmlhbi9zb3VyY2UvZm9ybWF0XGZSIGluc3RlYWQuCisuU1MgZGViaWFuL3NvdXJjZS9sb2NhbFwtb3B0aW9ucworRXhhY3RseSBsaWtlIFxmQmRlYmlhbi9zb3VyY2Uvb3B0aW9uc1xmUCBleGNlcHQgdGhhdCB0aGUgZmlsZSBpcyBub3QKK2luY2x1ZGVkIGluIHRoZSBnZW5lcmF0ZWQgc291cmNlIHBhY2thZ2UuIEl0IGNhbiBiZSB1c2VmdWwgdG8gc3RvcmUKK2EgcHJlZmVyZW5jZSB0aWVkIHRvIHRoZSBtYWludGFpbmVyIG9yIHRvIHRoZSBWQ1MgcmVwb3NpdG9yeSB3aGVyZQordGhlIHNvdXJjZSBwYWNrYWdlIGlzIG1haW50YWluZWQuCisuU1MgZGViaWFuL3NvdXJjZS9sb2NhbFwtcGF0Y2hcLWhlYWRlcgorLlNTIGRlYmlhbi9zb3VyY2UvcGF0Y2hcLWhlYWRlcgorRnJlZSBmb3JtIHRleHQgdGhhdCBpcyBwdXQgb24gdG9wIG9mIHRoZSBhdXRvbWF0aWMgcGF0Y2ggZ2VuZXJhdGVkCitpbiBmb3JtYXRzICIyLjAiIG9yICIzLjAgKHF1aWx0KSIuIFxmQmxvY2FsXC1wYXRjaFwtaGVhZGVyXGZQIGlzIG5vdAoraW5jbHVkZWQgaW4gdGhlIGdlbmVyYXRlZCBzb3VyY2UgcGFja2FnZSB3aGlsZSBcZkJwYXRjaFwtaGVhZGVyXGZQIGlzLgorLlNTIGRlYmlhbi9wYXRjaGVzL3NlcmllcworVGhpcyBmaWxlIGxpc3RzIGFsbCBwYXRjaGVzIHRoYXQgaGF2ZSB0byBiZSBhcHBsaWVkIChpbiB0aGUgZ2l2ZW4gb3JkZXIpCitvbiB0b3Agb2YgdGhlIHVwc3RyZWFtIHNvdXJjZSBwYWNrYWdlLiBMZWFkaW5nIGFuZCB0cmFpbGluZyBzcGFjZXMgYXJlCitzdHJpcHBlZC4gTGluZXMgc3RhcnRpbmcgd2l0aCAiIyIgYXJlIGNvbW1lbnRzIGFuZCBhcmUgc2tpcHBlZC4gRW1wdHkKK2xpbmVzIGFyZSBpZ25vcmVkLiBSZW1haW5pbmcgbGluZXMgc3RhcnQgd2l0aCBhIHBhdGNoIGZpbGVuYW1lIChyZWxhdGl2ZQordG8gdGhlIFxmQmRlYmlhbi9wYXRjaGVzL1xmUCBkaXJlY3RvcnkpIHVwIHRvIHRoZSBmaXJzdCBzcGFjZSBjaGFyYWN0ZXIgb3IKK3RoZSBlbmQgb2YgbGluZS4gT3B0aW9uYWwgcXVpbHQgb3B0aW9ucyBjYW4gZm9sbG93IHVwIHRvIHRoZSBlbmQgb2YgbGluZQorb3IgdGhlIGZpcnN0ICIjIiBwcmVjZWRlZCBieSBvbmUgb3IgbW9yZSBzcGFjZXMgKHdoaWNoIG1hcmtzIHRoZSBzdGFydCBvZgorYSBjb21tZW50IHVwIHRvIHRoZSBlbmQgb2YgbGluZSkuCisuU0ggQlVHUworVGhlIHBvaW50IGF0IHdoaWNoIGZpZWxkIG92ZXJyaWRpbmcgb2NjdXJzIGNvbXBhcmVkIHRvIGNlcnRhaW4KK3N0YW5kYXJkIG91dHB1dCBmaWVsZCBzZXR0aW5ncyBpcyByYXRoZXIgY29uZnVzZWQuCisuU0ggU0VFIEFMU08KKy5CUiBkcGtnXC1kZWIgKDEpLAorLkJSIGRwa2cgKDEpLAorLkJSIGRzZWxlY3QgKDEpLgorLgorLlNIIEFVVEhPUlMKK0NvcHlyaWdodCBcKGNvIDE5OTUtMTk5NiBJYW4gSmFja3NvbgorLmJyCitDb3B5cmlnaHQgXChjbyAyMDAwIFdpY2hlcnQgQWtrZXJtYW4KKy5icgorQ29weXJpZ2h0IFwoY28gMjAwOC0yMDExIFJhcGhhXFs6ZV1sIEhlcnR6b2cKKy5zcAorVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbmNlIHZlcnNpb24gMiBvciBsYXRlcgorZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gV0FSUkFOVFkuCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9kcGtnLXNwbGl0LjEgYi9kcGtnLTEuMTYuMS4xL21hbi9kcGtnLXNwbGl0LjEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzAwY2ZiZQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL2Rwa2ctc3BsaXQuMQpAQCAtMCwwICsxLDIyNyBAQAorLlwiIEF1dGhvcnM6IElhbiBKYWNrc29uCisuVEggZHBrZ1wtc3BsaXQgMSAiMjAxMS0wNy0wNCIgIkRlYmlhbiBQcm9qZWN0IiAiZHBrZyB1dGlsaXRpZXMiCisuU0ggTkFNRQorZHBrZ1wtc3BsaXQgXC0gRGViaWFuIHBhY2thZ2UgYXJjaGl2ZSBzcGxpdC9qb2luIHRvb2wKKy4KKy5TSCBTWU5PUFNJUworLkIgZHBrZ1wtc3BsaXQKKy5SSSBbIG9wdGlvbiAiLi4uXSAiIGNvbW1hbmQKKy4KKy5TSCBERVNDUklQVElPTgorLkIgZHBrZ1wtc3BsaXQKK3NwbGl0cyBEZWJpYW4gYmluYXJ5IHBhY2thZ2UgZmlsZXMgaW50byBzbWFsbGVyIHBhcnRzIGFuZCByZWFzc2VtYmxlcwordGhlbSBhZ2FpbiwgdG8gc3VwcG9ydCB0aGUgc3RvcmFnZSBvZiBsYXJnZSBwYWNrYWdlIGZpbGVzIG9uIHNtYWxsCittZWRpYSBzdWNoIGFzIGZsb3BweSBkaXNrcy4KKworSXQgY2FuIGJlIG9wZXJhdGVkIG1hbnVhbGx5IHVzaW5nIHRoZQorLkJSIFwtXC1zcGxpdCAiLCAiIFwtXC1qb2luICIgYW5kICIgXC1cLWluZm8KK29wdGlvbnMuCisKK0l0IGFsc28gaGFzIGFuIGF1dG9tYXRpYyBtb2RlLCBpbnZva2VkIHVzaW5nIHRoZQorLkIgXC1cLWF1dG8KK29wdGlvbiwgd2hlcmUgaXQgbWFpbnRhaW5zIGEgcXVldWUgb2YgcGFydHMgc2VlbiBidXQgbm90IHlldAorcmVhc3NlbWJsZWQgYW5kIHJlYXNzZW1ibGVzIGEgcGFja2FnZSBmaWxlIHdoZW4gaXQgaGFzIHNlZW4gYWxsIG9mIGl0cworcGFydHMuIFRoZQorLkJSIFwtXC1saXN0cSAiIGFuZCAiIFwtXC1kaXNjYXJkCitvcHRpb25zIGFsbG93IHRoZSBtYW5hZ2VtZW50IG9mIHRoZSBxdWV1ZS4KKworQWxsIHNwbGl0dGluZywgam9pbmluZyBhbmQgcXVldWVpbmcgb3BlcmF0aW9ucyBwcm9kdWNlIGluZm9ybWF0aXZlCittZXNzYWdlcyBvbiBzdGFuZGFyZCBvdXRwdXQ7IHRoZXNlIG1heSBzYWZlbHkgYmUgaWdub3JlZC4KKy4KKy5TSCBDT01NQU5EUworLlRQCisuQlIgXC1zICIsICIgXC1cLXNwbGl0ICIgXGZJY29tcGxldGUtYXJjaGl2ZVxmUCBbXGZJcHJlZml4XGZQXSIKK1NwbGl0cyBhIHNpbmdsZSBEZWJpYW4gYmluYXJ5IHBhY2thZ2UgaW50byBzZXZlcmFsIHBhcnRzLgorCitUaGUgcGFydHMgYXJlIG5hbWVkCisuSUIgcHJlZml4IC4gTiBvZiBNIC5kZWIKK3doZXJlCisuSSBOCitpcyB0aGUgcGFydCBudW1iZXIsIHN0YXJ0aW5nIGF0IDEsIGFuZAorLkkgTQoraXMgdGhlIHRvdGFsIG51bWJlciBvZiBwYXJ0cyAoYm90aCBpbiBkZWNpbWFsKS4KKworSWYgbm8KKy5JIHByZWZpeAoraXMgc3VwcGxpZWQgdGhlbiB0aGUKKy5JIGNvbXBsZXRlLWFyY2hpdmUKK2ZpbGVuYW1lIGlzIHRha2VuLCBpbmNsdWRpbmcgZGlyZWN0b3J5LCB3aXRoIGFueSB0cmFpbGluZworLkIgLmRlYgorcmVtb3ZlZC4KKy5UUAorLkJSIFwtaiAiLCAiIFwtXC1qb2luICIgXGZJcGFydFxmUC4uLiIKK0pvaW5zIHRoZSBwYXJ0cyBvZiBhIHBhY2thZ2UgZmlsZSB0b2dldGhlciwgcmVhc3NlbWJsaW5nIHRoZSBvcmlnaW5hbAorZmlsZSBhcyBpdCB3YXMgYmVmb3JlIGl0IHdhcyBzcGxpdC4KKworVGhlIHBhcnQgZmlsZXMgZ2l2ZW4gYXMgYXJndW1lbnRzIG11c3QgYmUgYWxsIHRoZSBwYXJ0cyBvZiBleGFjdGx5IHRoZQorc2FtZSBvcmlnaW5hbCBiaW5hcnkgZmlsZS4gRWFjaCBwYXJ0IG11c3Qgb2NjdXIgZXhhY3RseSBvbmNlIGluIHRoZQorYXJndW1lbnQgbGlzdCwgdGhvdWdoIHRoZSBwYXJ0cyB0byBub3QgbmVlZCB0byBiZSBsaXN0ZWQgaW4gb3JkZXIuCisKK1RoZSBwYXJ0cyBtdXN0IG9mIGNvdXJzZSBhbGwgaGF2ZSBiZWVuIGdlbmVyYXRlZCB3aXRoIHRoZSBzYW1lIHBhcnQKK3NpemUgc3BlY2lmaWVkIGF0IHNwbGl0IHRpbWUsIHdoaWNoIG1lYW5zIHRoYXQgdGhleSBtdXN0IHVzdWFsbHkgaGF2ZQorYmVlbiBnZW5lcmF0ZWQgYnkgdGhlIHNhbWUgaW52b2NhdGlvbiBvZgorLkJSICJkcGtnXC1zcGxpdCBcLVwtc3BsaXQiIC4KKworVGhlIHBhcnRzJyBmaWxlbmFtZXMgYXJlIG5vdCBzaWduaWZpY2FudCBmb3IgdGhlIHJlYXNzZW1ibHkgcHJvY2Vzcy4KKworQnkgZGVmYXVsdCB0aGUgb3V0cHV0IGZpbGUgaXMgY2FsbGVkCisuSUIgcGFja2FnZSBfIHZlcnNpb24gXyBhcmNoIC5kZWJcZlIuCisKKy5UUAorLkJSIFwtSSAiLCAiIFwtXC1pbmZvICIgXGZJcGFydFxmUC4uLiIKK1ByaW50cyBpbmZvcm1hdGlvbiwgaW4gYSBodW1hbi1yZWFkYWJsZSBmb3JtYXQsIGFib3V0IHRoZSBwYXJ0IGZpbGUocykKK3NwZWNpZmllZC4gQXJndW1lbnRzIHdoaWNoIGFyZSBub3QgYmluYXJ5IHBhY2thZ2UgcGFydHMgcHJvZHVjZSBhCittZXNzYWdlIHNheWluZyBzbyBpbnN0ZWFkIChidXQgc3RpbGwgb24gc3RhbmRhcmQgb3V0cHV0KS4KKy5UUAorLkJSIFwtYSAiLCAiICJcLVwtYXV0byBcLW8iICIgXGZJY29tcGxldGUtb3V0cHV0IHBhcnRcZlAiCitBdXRvbWF0aWNhbGx5IHF1ZXVlIHBhcnRzIGFuZCByZWFzc2VtYmxlIGEgcGFja2FnZSBpZiBwb3NzaWJsZS4KKworVGhlCisuSSBwYXJ0CitzcGVjaWZpZWQgaXMgZXhhbWluZWQsIGFuZCBjb21wYXJlZCB3aXRoIG90aGVyIHBhcnRzIG9mIHRoZSBzYW1lCitwYWNrYWdlIChpZiBhbnkpIGluIHRoZSBxdWV1ZSBvZiBwYWNrYWdlcyBmaWxlIHBhcnRzLgorCitJZiBhbGwgcGFydHMgb2YgdGhlIHBhY2thZ2UgZmlsZSBvZiB3aGljaAorLkkgcGFydAoraXMgYSBwYXJ0IGFyZSBhdmFpbGFibGUgdGhlbiB0aGUgcGFja2FnZSBpcyByZWFzc2VtYmxlZCBhbmQgd3JpdHRlbiB0bworLkkgY29tcGxldGUtb3V0cHV0Cisod2hpY2ggc2hvdWxkIG5vdCB1c3VhbGx5IGFscmVhZHkgZXhpc3QsIHRob3VnaCB0aGlzIGlzIG5vdCBhbgorZXJyb3IpLgorCitJZiBub3QgdGhlbiB0aGUKKy5JIHBhcnQKK2lzIGNvcGllZCBpbnRvIHRoZSBxdWV1ZSBhbmQKKy5JIGNvbXBsZXRlLW91dHB1dAoraXMgbm90IGNyZWF0ZWQuCisKK0lmCisuSSBwYXJ0CitpcyBub3QgYSBzcGxpdCBiaW5hcnkgcGFja2FnZSBwYXJ0IHRoZW4KKy5CIGRwa2dcLXNwbGl0Cit3aWxsIGV4aXQgd2l0aCBzdGF0dXMgXGZCMVxmUDsgaWYgc29tZSBvdGhlciB0cm91YmxlIG9jY3VycyB0aGVuIGl0IHdpbGwKK2V4aXQgd2l0aCBzdGF0dXMgXGZCMlxmUC4KKworVGhlCisuQlIgXC1cLW91dHB1dCAiIG9yICIgXC1vCitvcHRpb24gbXVzdCBiZSBzdXBwbGllZCB3aGVuIHVzaW5nCisuQlIgXC1cLWF1dG8gLgorKElmIHRoaXMgd2VyZSBub3QgbWFuZGF0b3J5IHRoZSBjYWxsaW5nIHByb2dyYW0gd291bGQgbm90IGtub3cgd2hhdAorb3V0cHV0IGZpbGUgdG8gZXhwZWN0LikKKy5UUAorLkJSIFwtbCAiLCAiIFwtXC1saXN0cQorTGlzdHMgdGhlIGNvbnRlbnRzIG9mIHRoZSBxdWV1ZSBvZiBwYWNrYWdlcyB0byBiZSByZWFzc2VtYmxlZC4KKworRm9yIGVhY2ggcGFja2FnZSBmaWxlIG9mIHdoaWNoIHBhcnRzIGFyZSBpbiB0aGUgcXVldWUgdGhlIG91dHB1dCBnaXZlcwordGhlIG5hbWUgb2YgdGhlIHBhY2thZ2UsIHRoZSBwYXJ0cyBpbiB0aGUgcXVldWUsIGFuZCB0aGUgdG90YWwgbnVtYmVyCitvZiBieXRlcyBzdG9yZWQgaW4gdGhlIHF1ZXVlLgorLlRQCisuQlIgXC1kICIsICIgXC1cLWRpc2NhcmQgIiBbXGZJcGFja2FnZVxmUC4uLl0iCitUaGlzIGRpc2NhcmRzIHBhcnRzIGZyb20gdGhlIHF1ZXVlIG9mIHRob3NlIHdhaXRpbmcgZm9yIHRoZSByZW1haW5pbmcKK3BhcnRzIG9mIHRoZWlyIHBhY2thZ2VzLgorCitJZiBubworLkkgcGFja2FnZQoraXMgc3BlY2lmaWVkIHRoZW4gdGhlIHF1ZXVlIGlzIGNsZWFyZWQgY29tcGxldGVseTsgaWYgYW55IGFyZQorc3BlY2lmaWVkIHRoZW4gb25seSBwYXJ0cyBvZiB0aGUgcmVsZXZhbnQgcGFja2FnZShzKSBhcmUgZGVsZXRlZC4KKy5UUAorLkJSIFwtaCAiLCAiIFwtXC1oZWxwCitTaG93IHRoZSB1c2FnZSBtZXNzYWdlIGFuZCBleGl0LgorLlRQCisuQlIgXC1cLXZlcnNpb24KK1Nob3cgdGhlIHZlcnNpb24gYW5kIGV4aXQuCisuCisuU0ggT1BUSU9OUworLlRQCisuQkkgXC1cLWRlcG90ZGlyICIgZGlyZWN0b3J5IgorU3BlY2lmaWVzIGFuIGFsdGVybmF0aXZlIGRpcmVjdG9yeSBmb3IgdGhlIHF1ZXVlIG9mIHBhcnRzIGF3YWl0aW5nCithdXRvbWF0aWMgcmVhc3NlbWJseS4gVGhlIGRlZmF1bHQgaXMKKy5CUiAvdmFyL2xpYi9kcGtnIC4KKy5UUAorLkJSIFwtUyAiLCAiIFwtXC1wYXJ0c2l6ZSAiIFxmSWtpYmlieXRlc1xmUCIKK1NwZWNpZmllcyB0aGUgbWF4aW11bSBwYXJ0IHNpemUgd2hlbiBzcGxpdHRpbmcsIGluIGtpYmlieXRlcyAoMTAyNAorYnl0ZXMpLiBUaGUgZGVmYXVsdCBpcyA0NTAgS2lCLgorLlRQCisuQlIgXC1vICIsICIgXC1cLW91dHB1dCAiIFxmSWNvbXBsZXRlLW91dHB1dFxmUCIKK1NwZWNpZmllcyB0aGUgb3V0cHV0IGZpbGUgbmFtZSBmb3IgYSByZWFzc2VtYmx5LgorCitUaGlzIG92ZXJyaWRlcyB0aGUgZGVmYXVsdCBmb3IgYSBtYW51YWwgcmVhc3NlbWJseQorLlJCICggXC1cLWpvaW4gKQorYW5kIGlzIG1hbmRhdG9yeSBmb3IgYW4gYXV0b21hdGljIHF1ZXVlLW9yLXJlYXNzZW1ibGUKKy5SQiAoIFwtXC1hdXRvICkuCisuVFAKKy5CUiBcLVEgIiwgIiBcLVwtbnBxdWlldAorV2hlbiBkb2luZyBhdXRvbWF0aWMgcXVldWUtb3ItcmVhc3NlbWJseQorLkIgZHBrZ1wtc3BsaXQKK3VzdWFsbHkgcHJpbnRzIGEgbWVzc2FnZSBpZiBpdCBpcyBnaXZlbiBhCisuSSBwYXJ0Cit0aGF0IGlzIG5vdCBhIGJpbmFyeSBwYWNrYWdlIHBhcnQuIFRoaXMgb3B0aW9uIHN1cHByZXNzZXMgdGhpcworbWVzc2FnZSwgdG8gYWxsb3cgcHJvZ3JhbXMgc3VjaCBhcworLkIgZHBrZwordG8gY29wZSB3aXRoIGJvdGggc3BsaXQgYW5kIHVuc3BsaXQgcGFja2FnZXMgd2l0aG91dCBwcm9kdWNpbmcKK3NwdXJpb3VzIG1lc3NhZ2VzLgorLlRQCisuQlIgXC1cLW1zZG9zCitGb3JjZXMgdGhlIG91dHB1dCBmaWxlbmFtZXMgZ2VuZXJhdGVkIGJ5CisuQiBcLVwtc3BsaXQKK3RvIGJlIG1zZG9zLWNvbXBhdGlibGUuCisKK1RoaXMgbWFuZ2xlcyB0aGUgcHJlZml4IC0gZWl0aGVyIHRoZSBkZWZhdWx0IGRlcml2ZWQgZnJvbSB0aGUgaW5wdXQKK2ZpbGVuYW1lIG9yIHRoZSBvbmUgc3VwcGxpZWQgYXMgYW4gYXJndW1lbnQ6IGFscGhhbnVtZXJpY3MgYXJlCitsb3dlcmNhc2VkLCBwbHVzIHNpZ25zIGFyZSByZXBsYWNlZCBieQorLkJSIHggJ3MKK2FuZCBhbGwgb3RoZXIgY2hhcmFjdGVycyBhcmUgZGlzY2FyZGVkLgorCitUaGUgcmVzdWx0IGlzIHRoZW4gdHJ1bmNhdGVkIGFzIG11Y2ggYXMgaXMgbmVjZXNzYXJ5LCBhbmQgZmlsZW5hbWVzIG9mCit0aGUgZm9ybQorLklCICJwcmVmaXhOIiBvZiBNIC5kZWIKK2FyZSBnZW5lcmF0ZWQuCisuCisuU0ggRVhJVCBTVEFUVVMKKy5UUAorLkIgMAorVGhlIHJlcXVlc3RlZCBzcGxpdCwgbWVyZ2UsIG9yIG90aGVyIGNvbW1hbmQgc3VjY2VlZGVkLgorLkIgXC1cLWluZm8KK2NvbW1hbmRzIGNvdW50IGFzIHN1Y2Nlc3NmdWwgZXZlbiBpZiB0aGUgZmlsZXMgYXJlIG5vdCBiaW5hcnkgcGFja2FnZQorcGFydHMuCisuVFAKKy5CIDEKK09ubHkgb2NjdXJzIHdpdGgKKy5CIFwtXC1hdXRvCithbmQgaW5kaWNhdGVzIHRoYXQgdGhlCisuSSBwYXJ0CitmaWxlIHdhcyBub3QgYSBiaW5hcnkgcGFja2FnZSBwYXJ0LgorLlRQCisuQiAyCitTb21lIGtpbmQgb2YgdHJvdWJsZSBoYXBwZW5lZCwgc3VjaCBhcyBhIHN5c3RlbQorY2FsbCBmYWlsdXJlLCBhIGZpbGUgdGhhdCBsb29rZWQgbGlrZSBhIHBhY2thZ2UgcGFydCBmaWxlIGJ1dCB3YXMKK2NvcnJ1cHRlZCwgYSB1c2FnZSBlcnJvciBvciBzb21lIG90aGVyIHByb2JsZW0uCisuCisuU0ggQlVHUworRnVsbCBkZXRhaWxzIG9mIHRoZSBwYWNrYWdlcyBpbiB0aGUgcXVldWUgYXJlIGltcG9zc2libGUgdG8gZ2V0Cit3aXRob3V0IGRpZ2dpbmcgaW50byB0aGUgcXVldWUgZGlyZWN0b3J5IHlvdXJzZWxmLgorCitUaGVyZSBpcyBubyBlYXN5IHdheSB0byB0ZXN0IHdoZXRoZXIgYSBmaWxlIHRoYXQgbWF5IGJlIGEgYmluYXJ5CitwYWNrYWdlIHBhcnQgaXMgb25lLgorLgorLlNIIEZJTEVTCisuVFAKKy5JIC92YXIvbGliL2Rwa2cvcGFydHMKK1RoZSBkZWZhdWx0IHF1ZXVlIGRpcmVjdG9yeSBmb3IgcGFydCBmaWxlcyBhd2FpdGluZyBhdXRvbWF0aWMKK3JlYXNzZW1ibHkuCisKK1RoZSBmaWxlbmFtZXMgdXNlZCBpbiB0aGlzIGRpcmVjdG9yeSBhcmUgaW4gYSBmb3JtYXQgaW50ZXJuYWwgdG8KKy5CIGRwa2dcLXNwbGl0CithbmQgYXJlIHVubGlrZWx5IHRvIGJlIHVzZWZ1bCB0byBvdGhlciBwcm9ncmFtcywgYW5kIGluIGFueSBjYXNlIHRoZQorZmlsZW5hbWUgZm9ybWF0IHNob3VsZCBub3QgYmUgcmVsaWVkIHVwb24uCisuCisuU0ggIlNFRSBBTFNPIgorLkJSIGRlYiAoNSksCisuQlIgZGViXC1jb250cm9sICg1KSwKKy5CUiBkcGtnXC1kZWIgKDEpLAorLkJSIGRwa2cgKDEpLgorLgorLlNIIEFVVEhPUgorQ29weXJpZ2h0IFwoY28gMTk5NS0xOTk2IElhbiBKYWNrc29uCisuc3AKK1RoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSB2ZXJzaW9uIDIgb3IKK2xhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIFdBUlJBTlRZLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vZHBrZy1zdGF0b3ZlcnJpZGUuOCBiL2Rwa2ctMS4xNi4xLjEvbWFuL2Rwa2ctc3RhdG92ZXJyaWRlLjgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDMyMDI5YQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL2Rwa2ctc3RhdG92ZXJyaWRlLjgKQEAgLTAsMCArMSw5MSBAQAorLlRIIGRwa2dcLXN0YXRvdmVycmlkZSA4ICIyMDExLTA3LTA0IiAiRGViaWFuIHByb2plY3QiICJkcGtnIHV0aWxpdGllcyIKKy5TSCBOQU1FCitkcGtnXC1zdGF0b3ZlcnJpZGUgXC0gb3ZlcnJpZGUgb3duZXJzaGlwIGFuZCBtb2RlIG9mIGZpbGVzCisuCisuU0ggU1lOT1BTSVMKKy5CIGRwa2dcLXN0YXRvdmVycmlkZQorLlJJIFsgb3B0aW9uICIuLi5dICIgY29tbWFuZAorLgorLlNIIERFU0NSSVBUSU9OCitgXGZCc3RhdCBvdmVycmlkZXNcZlInIGFyZSBhIHdheSB0byB0ZWxsCisuQlIgZHBrZyAoMSkKK3RvIHVzZSBhIGRpZmZlcmVudCBvd25lcgorb3IgbW9kZSBmb3IgYSBmaWxlIHdoZW4gYSBwYWNrYWdlIGlzIGluc3RhbGxlZC4gKG5vdGU6IEkgdXNlIHRoZSB3b3JkCitgZmlsZScgaGVyZSwgYnV0IGluIHJlYWxpdHkgdGhpcyBjYW4gYmUgYW55IGZpbGVzeXN0ZW0gb2JqZWN0IHRoYXQgZHBrZworaGFuZGxlcywgaW5jbHVkaW5nIGRpcmVjdG9yaWVzLCBkZXZpY2VzLCBldGMuKS4gVGhpcyBjYW4gYmUgdXNlZCB0bworZm9yY2UgcHJvZ3JhbXMgdGhhdCBhcmUgbm9ybWFsbHkgc2V0dWlkIHRvIGJlIGluc3RhbGwgd2l0aG91dCBhIHNldHVpZAorZmxhZywgb3Igb25seSBleGVjdXRhYmxlIGJ5IGEgY2VydGFpbiBncm91cC4KKy5QCitcZkJkcGtnXC1zdGF0b3ZlcnJpZGVcZlIgaXMgYSB1dGlsaXR5IHRvIG1hbmFnZSB0aGUgbGlzdCBvZiBzdGF0CitvdmVycmlkZXMuIEl0IGhhcyB0aHJlZSBiYXNpYyBmdW5jdGlvbnM6IGFkZGluZywgcmVtb3ZpbmcgYW5kIGxpc3RpbmcKK292ZXJyaWRlcy4KKy4KKy5TSCBDT01NQU5EUworLlRQCisuQkkgXC1cLWFkZCAiIHVzZXIgZ3JvdXAgbW9kZSBmaWxlIgorQWRkIGFuIG92ZXJyaWRlIGZvciBcZklmaWxlXGZQLiBcZklmaWxlXGZQIGRvZXMgbm90IG5lZWQgdG8gZXhpc3QKK3doZW4gdGhpcyBjb21tYW5kIGlzIHVzZWQ7IHRoZSBvdmVycmlkZSB3aWxsIGJlIHN0b3JlZCBhbmQgdXNlZCBsYXRlci4KK1VzZXJzIGFuZCBncm91cHMgY2FuIGJlIHNwZWNpZmllZCBieSB0aGVpciBuYW1lIChmb3IgZXhhbXBsZSBcZkJyb290XGZSCitvciBcZkJub2JvZHlcZlIpLCBvciBieSB0aGVpciBudW1iZXIgYnkgcHJlcGVuZGluZyB0aGUgbnVtYmVyIHdpdGggYQorYFxmQiNcZlInIChmb3IgZXhhbXBsZSBcZkIjMFxmUiBvciBcZkIjNjU1MzRcZlIpLiBUaGUgXGZJbW9kZVxmUiBuZWVkcwordG8gYmUgc3BlY2lmaWVkIGluIG9jdGFsLgorCitJZiBcLVwtdXBkYXRlIGlzIHNwZWNpZmllZCBhbmQgXGZJZmlsZVxmUCBleGlzdHMsIGl0IGlzIGltbWVkaWF0ZWx5CitzZXQgdG8gdGhlIG5ldyBvd25lciBhbmQgbW9kZS4KKy5UUAorLkJJIFwtXC1yZW1vdmUgIiBmaWxlIgorUmVtb3ZlIGFuIG92ZXJyaWRlIGZvciBcZklmaWxlXGZQLCB0aGUgc3RhdHVzIG9mIFxmSWZpbGVcZlAgaXMgbGVmdAordW5jaGFuZ2VkIGJ5IHRoaXMgY29tbWFuZC4KKy5UUAorLkJSIFwtXC1saXN0ICIgW1xmSWdsb2ItcGF0dGVyblxmUF0iCitMaXN0IGFsbCBvdmVycmlkZXMuIElmIGEgZ2xvYiBwYXR0ZXJuIGlzIHNwZWNpZmllZCByZXN0cmljdCB0aGUgb3V0cHV0Cit0byBvdmVycmlkZXMgd2hpY2ggbWF0Y2ggdGhlIGdsb2IuIElmIHRoZXJlIGFyZSBubyBvdmVycmlkZXMgb3Igbm9uZQorbWF0Y2ggdGhlIGdsb2IgXGZCZHBrZ1wtc3RhdG92ZXJyaWRlXGZSIHdpbGwgZXhpdCB3aXRoIGFuIGV4aXRjb2RlIG9mIDEuCisuVFAKKy5CIFwtXC1oZWxwCitTaG93IHRoZSB1c2FnZSBtZXNzYWdlIGFuZCBleGl0LgorLlRQCisuQiBcLVwtdmVyc2lvbgorU2hvdyB0aGUgdmVyc2lvbiBhbmQgZXhpdC4KKy4KKy5TSCBPUFRJT05TCisuVFAKKy5CSSBcLVwtYWRtaW5kaXIgIiBkaXJlY3RvcnkiCitDaGFuZ2UgdGhlIFxmSWRpcmVjdG9yeVxmUCBvZiB0aGUgZHBrZyBkYXRhYmFzZSB3aGVyZSB0aGUgc3RhdG92ZXJyaWRlIGZpbGUgaXMKK2Fsc28gc3RvcmVkLiBEZWZhdWx0cyB0byBcZkkvdmFyL2xpYi9kcGtnXGZQLgorLlRQCisuQiBcLVwtZm9yY2UKK0ZvcmNlIGFuIGFjdGlvbiwgZXZlbiBpZiBhIHNhbml0eSBjaGVjayB3b3VsZCBvdGhlcndpc2UgcHJvaGliaXQgaXQuCitUaGlzIGlzIG5lY2Vzc2FyeSB0byBvdmVycmlkZSBhbiBleGlzdGluZyBvdmVycmlkZS4KKy5UUAorLkIgXC1cLXVwZGF0ZQorSW1tZWRpYXRlbHkgdHJ5IHRvIGNoYW5nZSB0aGUgZmlsZSB0byB0aGUgbmV3IG93bmVyIGFuZCBtb2RlIGlmIGl0CitleGlzdHMuCisuVFAKKy5CIFwtXC1xdWlldAorQmUgbGVzcyB2ZXJib3NlIGFib3V0IHdoYXQgd2UgZG8uCisuCisuU0ggRU5WSVJPTk1FTlQKKy5UUAorLkIgRFBLR19BRE1JTkRJUgorSWYgc2V0IGFuZCB0aGUgXGZCXC1cLWFkbWluZGlyXGZQIG9wdGlvbiBoYXMgbm90IGJlZW4gc3BlY2lmaWVkLCBpdCB3aWxsCitiZSB1c2VkIGFzIHRoZSBkcGtnIGRhdGEgZGlyZWN0b3J5LgorLgorLlNIIEZJTEVTCisuVFAKKy5JIC92YXIvbGliL2Rwa2cvc3RhdG92ZXJyaWRlCitGaWxlIHdoaWNoIGNvbnRhaW5zIHRoZSBjdXJyZW50IGxpc3Qgb2Ygc3RhdCBvdmVycmlkZXMgb2YgdGhlIHN5c3RlbS4gSXQKK2lzIGxvY2F0ZWQgaW4gdGhlIGRwa2cgYWRtaW5pc3RyYXRpb24gZGlyZWN0b3J5LCBhbG9uZyB3aXRoIG90aGVyIGZpbGVzCitpbXBvcnRhbnQgdG8gZHBrZywgc3VjaCBhcyBgc3RhdHVzJyBvciBgYXZhaWxhYmxlJy4KKy5icgorTm90ZTogXGZCZHBrZ1wtc3RhdG92ZXJyaWRlXGZQIHByZXNlcnZlcyB0aGUgb2xkIGNvcHkgb2YgdGhpcyBmaWxlLCB3aXRoCitleHRlbnNpb24gIlwtb2xkIiwgYmVmb3JlIHJlcGxhY2luZyBpdCB3aXRoIHRoZSBuZXcgb25lLgorLgorLlNIIFNFRSBBTFNPCisuQlIgZHBrZyAoMSkuCisuCisuU0ggQVVUSE9SCitDb3B5cmlnaHQgXChjbyAyMDAwIFdpY2hlcnQgQWtrZXJtYW4KKy5zcAorVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbmNlIHZlcnNpb24gMiBvcgorbGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gV0FSUkFOVFkuCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9kcGtnLXRyaWdnZXIuMSBiL2Rwa2ctMS4xNi4xLjEvbWFuL2Rwa2ctdHJpZ2dlci4xCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjdjMzJjZDcKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9kcGtnLXRyaWdnZXIuMQpAQCAtMCwwICsxLDY5IEBACisuVEggZHBrZ1wtdHJpZ2dlciAxICIyMDExLTA4LTE0IiAiRGViaWFuIFByb2plY3QiICJkcGtnIHN1aXRlIgorLlNIIE5BTUUKK2Rwa2dcLXRyaWdnZXIgXC0gYSBwYWNrYWdlIHRyaWdnZXIgdXRpbGl0eQorLgorLlNIIFNZTk9QU0lTCisuQiBkcGtnXC10cmlnZ2VyCisuUkkgWyBvcHRpb24gIi4uLl0gIiB0cmlnZ2VyLW5hbWUKKy5icgorLkIgZHBrZ1wtdHJpZ2dlcgorLlJJIFsgb3B0aW9uICIuLi5dICIgY29tbWFuZAorLgorLlNIIERFU0NSSVBUSU9OCitcZkJkcGtnXC10cmlnZ2VyXGZQIGlzIGEgdG9vbCB0byBleHBsaWNpdGx5IGFjdGl2YXRlIHRyaWdnZXJzIGFuZCBjaGVjaworZm9yIGl0cyBzdXBwb3J0IG9uIHRoZSBydW5uaW5nIFxmQmRwa2dcZlAuCisuUFAKK1RoaXMgY2FuIGJlIHVzZWQgYnkgbWFpbnRhaW5lciBzY3JpcHRzIGluIGNvbXBsZXggYW5kIGNvbmRpdGlvbmFsCitzaXR1YXRpb25zIHdoZXJlIHRoZSBmaWxlIHRyaWdnZXJzLCBvciB0aGUgZGVjbGFyYXRpdmUgXGZCYWN0aXZhdGVcZlAKK3RyaWdnZXJzIGNvbnRyb2wgZmlsZSBkaXJlY3RpdmUsIGFyZSBpbnN1ZmZpY2llbnRseSByaWNoLiBJdCBjYW4gYWxzbworYmUgdXNlZCBmb3IgdGVzdGluZyBhbmQgYnkgc3lzdGVtIGFkbWluaXN0cmF0b3JzIChidXQgbm90ZSB0aGF0IHRoZQordHJpZ2dlcnMgd29uJ3QgYWN0dWFsbHkgYmUgcnVuIGJ5IFxmQmRwa2dcLXRyaWdnZXJcZlApLgorLlBQCitVbnJlY29nbmlzZWQgdHJpZ2dlciBuYW1lIHN5bnRheGVzIGFyZSBhbiBlcnJvciBmb3IgXGZCZHBrZ1wtdHJpZ2dlclxmUC4KKy4KKy5TSCBDT01NQU5EUworLlRQCisuQlIgXC1cLWNoZWNrXC1zdXBwb3J0ZWQKK0NoZWNrIGlmIHRoZSBydW5uaW5nIFxmQmRwa2dcZlAgc3VwcG9ydHMgdHJpZ2dlcnMgKHVzdWFsbHkgY2FsbGVkIGZyb20gYQorcG9zdGluc3QpLiBXaWxsIGV4aXQgXGZCMFxmUCBpZiBhIHRyaWdnZXJzLWNhcGFibGUgXGZCZHBrZ1xmUCBoYXMgcnVuLAorb3IgXGZCMVxmUCB3aXRoIGFuIGVycm9yIG1lc3NhZ2UgdG8gc3RkZXJyIGlmIG5vdC4gTm9ybWFsbHksIGhvd2V2ZXIsCitpdCBpcyBiZXR0ZXIganVzdCB0byBhY3RpdmF0ZSB0aGUgZGVzaXJlZCB0cmlnZ2VyIHdpdGggXGZCZHBrZ1wtdHJpZ2dlclxmUC4KKy5UUAorLkJSIFwtaCAiLCAiIFwtXC1oZWxwCitTaG93IHRoZSB1c2FnZSBtZXNzYWdlIGFuZCBleGl0LgorLlRQCisuQiBcLVwtdmVyc2lvbgorU2hvdyB0aGUgdmVyc2lvbiBhbmQgZXhpdC4KKy4KKy5TSCBPUFRJT05TCisuVFAKKy5CSSBcLVwtYWRtaW5kaXI9IGRpcgorQ2hhbmdlIHRoZSBsb2NhdGlvbiBvZiB0aGUgXGZCZHBrZ1xmUiBkYXRhYmFzZS4gVGhlIGRlZmF1bHQgbG9jYXRpb24gaXMKK1xmSS92YXIvbGliL2Rwa2dcZlAuCisuVFAKKy5CUiBcLVwtYnlcLXBhY2thZ2U9XGZJcGFja2FnZVxmUgorT3ZlcnJpZGUgdHJpZ2dlciBhd2FpdGVyIChub3JtYWxseSBzZXQgYnkgXGZCZHBrZ1xmUCB0aHJvdWdoIHRoZQorXGZCRFBLR19NQUlOVFNDUklQVF9QQUNLQUdFXGZQIGVudmlyb25tZW50IHZhcmlhYmxlIG9mIHRoZSBtYWludGFpbmVyIHNjcmlwdHMsCituYW1pbmcgdGhlIHBhY2thZ2UgdG8gd2hpY2ggdGhlIHNjcmlwdCBiZWxvbmdzLCBhbmQgdGhpcyB3aWxsIGJlIHVzZWQKK2J5IGRlZmF1bHQpLgorLlRQCisuQlIgXC1cLW5vXC1hd2FpdAorVGhpcyBvcHRpb24gYXJyYW5nZXMgdGhhdCB0aGUgY2FsbGluZyBwYWNrYWdlIFQgKGlmIGFueSkgbmVlZCBub3QgYXdhaXQKK3RoZSBwcm9jZXNzaW5nIG9mIHRoaXMgdHJpZ2dlcjsgdGhlIGludGVyZXN0ZWQgcGFja2FnZShzKSBJLCB3aWxsIG5vdCBiZQorYWRkZWQgdG8gVCdzIHRyaWdnZXIgcHJvY2Vzc2luZyBhd2FpdGVkIGxpc3QgYW5kIFQncyBzdGF0dXMgaXMgdW5jaGFuZ2VkLgorVCBtYXkgYmUgY29uc2lkZXJlZCBpbnN0YWxsZWQgZXZlbiB0aG91Z2ggSSBtYXkgbm90IHlldCBoYXZlIHByb2Nlc3NlZAordGhlIHRyaWdnZXIuCisuVFAKKy5CUiBcLVwtbm9cLWFjdAorSnVzdCB0ZXN0LCBkbyBub3QgYWN0dWFsbHkgY2hhbmdlIGFueXRoaW5nLgorLgorLlNIIEVOVklST05NRU5UCisuVFAKKy5CIERQS0dfQURNSU5ESVIKK0lmIHNldCBhbmQgdGhlIFxmQlwtXC1hZG1pbmRpclxmUCBvcHRpb24gaGFzIG5vdCBiZWVuIHNwZWNpZmllZCwgaXQgd2lsbAorYmUgdXNlZCBhcyB0aGUgZHBrZyBkYXRhIGRpcmVjdG9yeS4KKy4KKy5TSCBTRUUgQUxTTworLkJSIGRwa2cgKDEpLAorLkJSIGRlYlwtdHJpZ2dlcnMgKDUpLAorLkJSIC91c3Ivc2hhcmUvZG9jL2Rwa2dcLWRldi90cmlnZ2Vycy50eHQuZ3ogLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vZHBrZy12ZW5kb3IuMSBiL2Rwa2ctMS4xNi4xLjEvbWFuL2Rwa2ctdmVuZG9yLjEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYmNhZjlmZgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL2Rwa2ctdmVuZG9yLjEKQEAgLTAsMCArMSw1MyBAQAorLlRIIGRwa2dcLXZlbmRvciAxICIyMDExLTA3LTA0IiAiRGViaWFuIFByb2plY3QiICJkcGtnIHN1aXRlIgorLlNIIE5BTUUKK2Rwa2dcLXZlbmRvciBcLSBxdWVyaWVzIGluZm9ybWF0aW9uIGFib3V0IGRpc3RyaWJ1dGlvbiB2ZW5kb3JzCisuCisuU0ggU1lOT1BTSVMKKy5CIGRwa2dcLXZlbmRvcgorLlJJIFsgb3B0aW9uICIuLi5dICIgY29tbWFuZAorLgorLlNIIERFU0NSSVBUSU9OCitcZkJkcGtnXC12ZW5kb3JcZlAgaXMgYSB0b29sIHRvIHF1ZXJ5IGluZm9ybWF0aW9uIGFib3V0IHZlbmRvcnMgbGlzdGVkIGluCitcZkIvZXRjL2Rwa2cvb3JpZ2luc1xmUC4gXGZCL2V0Yy9kcGtnL29yaWdpbnMvZGVmYXVsdFxmUCBjb250YWlucworaW5mb3JtYXRpb24gYWJvdXQgdGhlIGN1cnJlbnQgdmVuZG9yLgorLgorLlNIIENPTU1BTkRTCisuVFAKKy5CSSBcLVwtaXMgIiB2ZW5kb3IiCitFeGl0cyB3aXRoIFxmQjBcZlAgaWYgdGhlIGN1cnJlbnQgdmVuZG9yIGlzIFxmSXZlbmRvclxmUC4gT3RoZXJ3aXNlIGV4aXRzCit3aXRoIG5vbi16ZXJvLgorLlRQCisuQkkgXC1cLWRlcml2ZXNcLWZyb20gIiB2ZW5kb3IiCitFeGl0cyB3aXRoIFxmQjBcZlAgaWYgdGhlIGN1cnJlbnQgdmVuZG9yIGRpc3RyaWJ1dGlvbiBpcyBhIGRlcml2YXRpdmUgb2YKK1xmSXZlbmRvclxmUCwgb3RoZXJ3aXNlIGV4aXRzIHdpdGggbm9uLXplcm8uIEl0IHVzZXMgdGhlICJQYXJlbnQiIGZpZWxkCit0byBicm93c2UgYWxsIGFuY2VzdG9ycyBvZiB0aGUgY3VycmVudCB2ZW5kb3IuCisuVFAKKy5CSSBcLVwtcXVlcnkgIiBmaWVsZCIKK1ByaW50IG9uIHN0YW5kYXJkIG91dHB1dCB0aGUgdmFsdWUgb2YgdGhlIHZlbmRvci1zcGVjaWZpYyBcZklmaWVsZFxmUCBmb3IKK3RoZSBjdXJyZW50IHZlbmRvci4KKy5UUAorLkIgXC1cLWhlbHAKK1Nob3cgdGhlIHVzYWdlIG1lc3NhZ2UgYW5kIGV4aXQuCisuVFAKKy5CIFwtXC12ZXJzaW9uCitTaG93IHRoZSB2ZXJzaW9uIGFuZCBleGl0LgorLgorLlNIIE9QVElPTlMKKy5UUAorLkJJIFwtXC12ZW5kb3IgIiB2ZW5kb3IiCitBc3N1bWVzIHRoZSBjdXJyZW50IHZlbmRvciBpcyBcZkl2ZW5kb3JcZlAgaW5zdGVhZCBvZiBkaXNjb3ZlcmluZyBpdAord2l0aCB0aGUgXGZCREVCX1ZFTkRPUlxmUCBlbnZpcm9ubWVudCB2YXJpYWJsZSBvcgorXGZCL2V0Yy9kcGtnL29yaWdpbnMvZGVmYXVsdFxmUC4KKy4KKy5TSCBFTlZJUk9OTUVOVAorLlRQCitcZkJERUJfVkVORE9SXGZQCitUaGlzIHNldHRpbmcgZGVmaW5lcyB0aGUgY3VycmVudCB2ZW5kb3IuIElmIG5vdCBzZXQsIGl0IHdpbGwgZGlzY292ZXIgdGhlCitjdXJyZW50IHZlbmRvciBieSByZWFkaW5nIFxmQi9ldGMvZHBrZy9vcmlnaW5zL2RlZmF1bHRcZlAuCisuCisuU0ggQVVUSE9SCitDb3B5cmlnaHQgXChjbyAyMDA5IFJhcGhhXFs6ZV1sIEhlcnR6b2cKKy5zcAorVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbmNlIHZlcnNpb24gMiBvcgorbGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gV0FSUkFOVFkuCisKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL2Rwa2cuMSBiL2Rwa2ctMS4xNi4xLjEvbWFuL2Rwa2cuMQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45NGYzYzFjCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vZHBrZy4xCkBAIC0wLDAgKzEsNzg1IEBACisuVEggZHBrZyAxICIyMDExLTA4LTE0IiAiRGViaWFuIFByb2plY3QiICJkcGtnIHN1aXRlIgorLlNIIE5BTUUKK2Rwa2cgXC0gcGFja2FnZSBtYW5hZ2VyIGZvciBEZWJpYW4KKy4KKy5TSCBTWU5PUFNJUworLkIgZHBrZworLlJJIFsgb3B0aW9uICIuLi5dICIgYWN0aW9uCisuCisuU0ggV0FSTklORworVGhpcyBtYW51YWwgaXMgaW50ZW5kZWQgZm9yIHVzZXJzIHdpc2hpbmcgdG8gdW5kZXJzdGFuZCBcZkJkcGtnXGZQJ3MKK2NvbW1hbmQgbGluZSBvcHRpb25zIGFuZCBwYWNrYWdlIHN0YXRlcyBpbiBtb3JlIGRldGFpbCB0aGFuIHRoYXQKK3Byb3ZpZGVkIGJ5IFxmQmRwa2cgXC1cLWhlbHBcZlAuCisKK0l0IHNob3VsZCBcZklub3RcZlAgYmUgdXNlZCBieSBwYWNrYWdlIG1haW50YWluZXJzIHdpc2hpbmcgdG8KK3VuZGVyc3RhbmQgaG93IFxmQmRwa2dcZlAgd2lsbCBpbnN0YWxsIHRoZWlyIHBhY2thZ2VzLiBUaGUKK2Rlc2NyaXB0aW9ucyBvZiB3aGF0IFxmQmRwa2dcZlAgZG9lcyB3aGVuIGluc3RhbGxpbmcgYW5kIHJlbW92aW5nCitwYWNrYWdlcyBhcmUgcGFydGljdWxhcmx5IGluYWRlcXVhdGUuCisuCisuU0ggREVTQ1JJUFRJT04KK1xmQmRwa2dcZlAgaXMgYSB0b29sIHRvIGluc3RhbGwsIGJ1aWxkLCByZW1vdmUgYW5kIG1hbmFnZQorRGViaWFuIHBhY2thZ2VzLiBUaGUgcHJpbWFyeSBhbmQgbW9yZSB1c2VyLWZyaWVuZGx5Citmcm9udC1lbmQgZm9yIFxmQmRwa2dcZlAgaXMgXGZCYXB0aXR1ZGVcZlAoMSkuIFxmQmRwa2dcZlAgaXRzZWxmIGlzCitjb250cm9sbGVkIGVudGlyZWx5IHZpYSBjb21tYW5kIGxpbmUgcGFyYW1ldGVycywgd2hpY2ggY29uc2lzdCBvZiBleGFjdGx5CitvbmUgYWN0aW9uIGFuZCB6ZXJvIG9yIG1vcmUgb3B0aW9ucy4gVGhlIGFjdGlvbi1wYXJhbWV0ZXIgdGVsbHMgXGZCZHBrZ1xmUAord2hhdCB0byBkbyBhbmQgb3B0aW9ucyBjb250cm9sIHRoZSBiZWhhdmlvciBvZiB0aGUgYWN0aW9uIGluIHNvbWUgd2F5LgorCitcZkJkcGtnXGZQIGNhbiBhbHNvIGJlIHVzZWQgYXMgYSBmcm9udC1lbmQgdG8gXGZCZHBrZ1wtZGViXGZQKDEpIGFuZAorXGZCZHBrZ1wtcXVlcnlcZlAoMSkuIFRoZSBsaXN0IG9mIHN1cHBvcnRlZCBhY3Rpb25zIGNhbiBiZSBmb3VuZCBsYXRlciBvbgoraW4gdGhlIFxmQkFDVElPTlNcZlAgc2VjdGlvbi4gSWYgYW55IHN1Y2ggYWN0aW9uIGlzIGVuY291bnRlcmVkIFxmQmRwa2dcZlAKK2p1c3QgcnVucyBcZkJkcGtnXC1kZWJcZlAgb3IgXGZCZHBrZ1wtcXVlcnlcZlAgd2l0aCB0aGUgcGFyYW1ldGVycyBnaXZlbgordG8gaXQsIGJ1dCBubyBzcGVjaWZpYyBvcHRpb25zIGFyZSBjdXJyZW50bHkgcGFzc2VkIHRvIHRoZW0sIHRvIHVzZQorYW55IHN1Y2ggb3B0aW9uIHRoZSBiYWNrLWVuZHMgbmVlZCB0byBiZSBjYWxsZWQgZGlyZWN0bHkuCisuCisuU0ggSU5GT1JNQVRJT04gQUJPVVQgUEFDS0FHRVMKK1xmQmRwa2dcZlAgbWFpbnRhaW5zIHNvbWUgdXNhYmxlIGluZm9ybWF0aW9uIGFib3V0IGF2YWlsYWJsZQorcGFja2FnZXMuIFRoZSBpbmZvcm1hdGlvbiBpcyBkaXZpZGVkIGluIHRocmVlIGNsYXNzZXM6IFxmQnN0YXRlc1xmUCwKK1xmQnNlbGVjdGlvbiBzdGF0ZXNcZlAgYW5kIFxmQmZsYWdzXGZQLiBUaGVzZSB2YWx1ZXMgYXJlIGludGVuZGVkIHRvCitiZSBjaGFuZ2VkIG1haW5seSB3aXRoIFxmQmRzZWxlY3RcZlAuCisuU1MgUEFDS0FHRSBTVEFURVMKKy5UUAorLkIgbm90XC1pbnN0YWxsZWQKK1RoZSBwYWNrYWdlIGlzIG5vdCBpbnN0YWxsZWQgb24geW91ciBzeXN0ZW0uCisuVFAKKy5CIGNvbmZpZ1wtZmlsZXMKK09ubHkgdGhlIGNvbmZpZ3VyYXRpb24gZmlsZXMgb2YgdGhlIHBhY2thZ2UgZXhpc3Qgb24gdGhlIHN5c3RlbS4KKy5UUAorLkIgaGFsZlwtaW5zdGFsbGVkCitUaGUgaW5zdGFsbGF0aW9uIG9mIHRoZSBwYWNrYWdlIGhhcyBiZWVuIHN0YXJ0ZWQsIGJ1dCBub3QgY29tcGxldGVkIGZvcgorc29tZSByZWFzb24uCisuVFAKKy5CIHVucGFja2VkCitUaGUgcGFja2FnZSBpcyB1bnBhY2tlZCwgYnV0IG5vdCBjb25maWd1cmVkLgorLlRQCisuQiBoYWxmXC1jb25maWd1cmVkCitUaGUgcGFja2FnZSBpcyB1bnBhY2tlZCBhbmQgY29uZmlndXJhdGlvbiBoYXMgYmVlbiBzdGFydGVkLCBidXQgbm90IHlldAorY29tcGxldGVkIGZvciBzb21lIHJlYXNvbi4KKy5UUAorLkIgdHJpZ2dlcnNcLWF3YWl0ZWQKK1RoZSBwYWNrYWdlIGF3YWl0cyB0cmlnZ2VyIHByb2Nlc3NpbmcgYnkgYW5vdGhlciBwYWNrYWdlLgorLlRQCisuQiB0cmlnZ2Vyc1wtcGVuZGluZworVGhlIHBhY2thZ2UgaGFzIGJlZW4gdHJpZ2dlcmVkLgorLlRQCisuQiBpbnN0YWxsZWQKK1RoZSBwYWNrYWdlIGlzIHVucGFja2VkIGFuZCBjb25maWd1cmVkIE9LLgorLlNTIFBBQ0tBR0UgU0VMRUNUSU9OIFNUQVRFUworLlRQCisuQiBpbnN0YWxsCitUaGUgcGFja2FnZSBpcyBzZWxlY3RlZCBmb3IgaW5zdGFsbGF0aW9uLgorLlRQCisuQiBob2xkCitBIHBhY2thZ2UgbWFya2VkIHRvIGJlIG9uIFxmQmhvbGRcZlAgaXMgbm90IGhhbmRsZWQgYnkgXGZCZHBrZ1xmUCwKK3VubGVzcyBmb3JjZWQgdG8gZG8gdGhhdCB3aXRoIG9wdGlvbiBcZkJcLVwtZm9yY2VcLWhvbGRcZlAuCisuVFAKKy5CIGRlaW5zdGFsbAorVGhlIHBhY2thZ2UgaXMgc2VsZWN0ZWQgZm9yIGRlaW5zdGFsbGF0aW9uIChpLmUuIHdlIHdhbnQgdG8gcmVtb3ZlIGFsbAorZmlsZXMsIGV4Y2VwdCBjb25maWd1cmF0aW9uIGZpbGVzKS4KKy5UUAorLkIgcHVyZ2UKK1RoZSBwYWNrYWdlIGlzIHNlbGVjdGVkIHRvIGJlIHB1cmdlZCAoaS5lLiB3ZSB3YW50IHRvIHJlbW92ZSBldmVyeXRoaW5nCitmcm9tIHN5c3RlbSBkaXJlY3RvcmllcywgZXZlbiBjb25maWd1cmF0aW9uIGZpbGVzKS4KKy5TUyBQQUNLQUdFIEZMQUdTCisuVFAKKy5CIHJlaW5zdFwtcmVxdWlyZWQKK0EgcGFja2FnZSBtYXJrZWQgXGZCcmVpbnN0XC1yZXF1aXJlZFxmUCBpcyBicm9rZW4gYW5kIHJlcXVpcmVzCityZWluc3RhbGxhdGlvbi4gVGhlc2UgcGFja2FnZXMgY2Fubm90IGJlIHJlbW92ZWQsIHVubGVzcyBmb3JjZWQgd2l0aAorb3B0aW9uIFxmQlwtXC1mb3JjZVwtcmVtb3ZlXC1yZWluc3RyZXFcZlAuCisuCisuU0ggQUNUSU9OUworLlRQCitcZkJcLWlcZlAsIFxmQlwtXC1pbnN0YWxsXGZQIFxmSXBhY2thZ2UtZmlsZVxmUC4uLgorSW5zdGFsbCB0aGUgcGFja2FnZS4gSWYgXGZCXC1cLXJlY3Vyc2l2ZVxmUCBvciBcZkJcLVJcZlAgb3B0aW9uIGlzCitzcGVjaWZpZWQsIFxmSXBhY2thZ2UtZmlsZVxmUCBtdXN0IHJlZmVyIHRvIGEgZGlyZWN0b3J5IGluc3RlYWQuCisKK0luc3RhbGxhdGlvbiBjb25zaXN0cyBvZiB0aGUgZm9sbG93aW5nIHN0ZXBzOgorLmJyCisKK1xmQjEuXGZQIEV4dHJhY3QgdGhlIGNvbnRyb2wgZmlsZXMgb2YgdGhlIG5ldyBwYWNrYWdlLgorLmJyCisKK1xmQjIuXGZQIElmIGFub3RoZXIgdmVyc2lvbiBvZiB0aGUgc2FtZSBwYWNrYWdlIHdhcyBpbnN0YWxsZWQgYmVmb3JlCit0aGUgbmV3IGluc3RhbGxhdGlvbiwgZXhlY3V0ZSBcZklwcmVybVxmUCBzY3JpcHQgb2YgdGhlIG9sZCBwYWNrYWdlLgorLmJyCisKK1xmQjMuXGZQIFJ1biBcZklwcmVpbnN0XGZQIHNjcmlwdCwgaWYgcHJvdmlkZWQgYnkgdGhlIHBhY2thZ2UuCisuYnIKKworXGZCNC5cZlAgVW5wYWNrIHRoZSBuZXcgZmlsZXMsIGFuZCBhdCB0aGUgc2FtZSB0aW1lIGJhY2sgdXAgdGhlIG9sZAorZmlsZXMsIHNvIHRoYXQgaWYgc29tZXRoaW5nIGdvZXMgd3JvbmcsIHRoZXkgY2FuIGJlIHJlc3RvcmVkLgorLmJyCisKK1xmQjUuXGZQIElmIGFub3RoZXIgdmVyc2lvbiBvZiB0aGUgc2FtZSBwYWNrYWdlIHdhcyBpbnN0YWxsZWQgYmVmb3JlCit0aGUgbmV3IGluc3RhbGxhdGlvbiwgZXhlY3V0ZSB0aGUgXGZJcG9zdHJtXGZQIHNjcmlwdCBvZiB0aGUgb2xkCitwYWNrYWdlLiBOb3RlIHRoYXQgdGhpcyBzY3JpcHQgaXMgZXhlY3V0ZWQgYWZ0ZXIgdGhlIFxmSXByZWluc3RcZlAKK3NjcmlwdCBvZiB0aGUgbmV3IHBhY2thZ2UsIGJlY2F1c2UgbmV3IGZpbGVzIGFyZSB3cml0dGVuIGF0IHRoZSBzYW1lCit0aW1lIG9sZCBmaWxlcyBhcmUgcmVtb3ZlZC4KKy5icgorCitcZkI2LlxmUCBDb25maWd1cmUgdGhlIHBhY2thZ2UuIFNlZSBcZkJcLVwtY29uZmlndXJlXGZQIGZvciBkZXRhaWxlZAoraW5mb3JtYXRpb24gYWJvdXQgaG93IHRoaXMgaXMgZG9uZS4KKy5UUAorXGZCXC1cLXVucGFjayBcZlBcZklwYWNrYWdlLWZpbGVcZlAuLi4KK1VucGFjayB0aGUgcGFja2FnZSwgYnV0IGRvbid0IGNvbmZpZ3VyZSBpdC4gSWYgXGZCXC1cLXJlY3Vyc2l2ZVxmUCBvcgorXGZCXC1SXGZQIG9wdGlvbiBpcyBzcGVjaWZpZWQsIFxmSXBhY2thZ2UtZmlsZVxmUCBtdXN0IHJlZmVyIHRvIGEKK2RpcmVjdG9yeSBpbnN0ZWFkLgorLlRQCitcZkJcLVwtY29uZmlndXJlIFxmUFxmSXBhY2thZ2VcZlAuLi58XGZCXC1hXGZQfFxmQlwtXC1wZW5kaW5nXGZQCitDb25maWd1cmUgYSBwYWNrYWdlIHdoaWNoIGhhcyBiZWVuIHVucGFja2VkIGJ1dCBub3QgeWV0IGNvbmZpZ3VyZWQuCitJZiBcZkJcLWFcZlAgb3IgXGZCXC1cLXBlbmRpbmdcZlAgaXMgZ2l2ZW4gaW5zdGVhZCBvZiBcZklwYWNrYWdlXGZQLAorYWxsIHVucGFja2VkIGJ1dCB1bmNvbmZpZ3VyZWQgcGFja2FnZXMgYXJlIGNvbmZpZ3VyZWQuCisKK1RvIHJlY29uZmlndXJlIGEgcGFja2FnZSB3aGljaCBoYXMgYWxyZWFkeSBiZWVuIGNvbmZpZ3VyZWQsIHRyeSB0aGUKKy5CUiBkcGtnXC1yZWNvbmZpZ3VyZSAoOCkKK2NvbW1hbmQgaW5zdGVhZC4KKworQ29uZmlndXJpbmcgY29uc2lzdHMgb2YgdGhlIGZvbGxvd2luZyBzdGVwczoKKy5icgorCitcZkIxLlxmUCBVbnBhY2sgdGhlIGNvbmZmaWxlcywgYW5kIGF0IHRoZSBzYW1lIHRpbWUgYmFjayB1cAordGhlIG9sZCBjb25mZmlsZXMsIHNvIHRoYXQgdGhleSBjYW4gYmUgcmVzdG9yZWQgaWYKK3NvbWV0aGluZyBnb2VzIHdyb25nLgorLmJyCisKK1xmQjIuXGZQIFJ1biBcZklwb3N0aW5zdFxmUCBzY3JpcHQsIGlmIHByb3ZpZGVkIGJ5IHRoZSBwYWNrYWdlLgorLlRQCitcZkJcLVwtdHJpZ2dlcnNcLW9ubHlcZlAgXGZJcGFja2FnZVxmUC4uLnxcZkJcLWFcZlB8XGZCXC1cLXBlbmRpbmdcZlAKK1Byb2Nlc3NlcyBvbmx5IHRyaWdnZXJzLiBBbGwgcGVuZGluZyB0cmlnZ2VycyB3aWxsIGJlIHByb2Nlc3NlZC4gSWYgcGFja2FnZQorbmFtZXMgYXJlIHN1cHBsaWVkIG9ubHkgdGhvc2UgcGFja2FnZXMnIHRyaWdnZXJzIHdpbGwgYmUgcHJvY2Vzc2VkLCBleGFjdGx5CitvbmNlIGVhY2ggd2hlcmUgbmVjZXNzYXJ5LiBVc2Ugb2YgdGhpcyBvcHRpb24gbWF5IGxlYXZlIHBhY2thZ2VzIGluIHRoZQoraW1wcm9wZXIgXGZCdHJpZ2dlcnNcLWF3YWl0ZWRcZlAgYW5kIFxmQnRyaWdnZXJzXC1wZW5kaW5nXGZQIHN0YXRlcy4gVGhpcworY2FuIGJlIGZpeGVkIGxhdGVyIGJ5IHJ1bm5pbmc6IFxmQmRwa2cgXC1cLWNvbmZpZ3VyZSBcLVwtcGVuZGluZ1xmUC4KKy5UUAorXGZCXC1yXGZQLCBcZkJcLVwtcmVtb3ZlXGZQLCBcZkJcLVBcZlAsIFxmQlwtXC1wdXJnZSBcZlBcZklwYWNrYWdlXGZQLi4ufFxmQlwtYVxmUHxcZkJcLVwtcGVuZGluZ1xmUAorUmVtb3ZlIGFuIGluc3RhbGxlZCBwYWNrYWdlLiBcZkJcLXJcZlAgb3IgXGZCXC1cLXJlbW92ZVxmUCByZW1vdmUKK2V2ZXJ5dGhpbmcgZXhjZXB0IGNvbmZmaWxlcy4gVGhpcyBtYXkgYXZvaWQgaGF2aW5nIHRvCityZWNvbmZpZ3VyZSB0aGUgcGFja2FnZSBpZiBpdCBpcyByZWluc3RhbGxlZCBsYXRlci4gKENvbmZmaWxlcyBhcmUgY29uZmlndXJhdGlvbgorZmlsZXMgdGhhdCBhcmUgbGlzdGVkIGluIHRoZSBcZklERUJJQU4vY29uZmZpbGVzXGZQIGNvbnRyb2wKK2ZpbGUpLiBcZkJcLVBcZlAgb3IgXGZCXC1cLXB1cmdlXGZQIHJlbW92ZXMgZXZlcnl0aGluZywgaW5jbHVkaW5nCitjb25mZmlsZXMuIElmIFxmQlwtYVxmUCBvciBcZkJcLVwtcGVuZGluZ1xmUCBpcyBnaXZlbiBpbnN0ZWFkIG9mIGEgcGFja2FnZQorbmFtZSwgdGhlbiBhbGwgcGFja2FnZXMgdW5wYWNrZWQsIGJ1dCBtYXJrZWQgdG8gYmUgcmVtb3ZlZCBvciBwdXJnZWQKK2luIGZpbGUgXGZJL3Zhci9saWIvZHBrZy9zdGF0dXNcZlAsIGFyZSByZW1vdmVkIG9yIHB1cmdlZCwKK3Jlc3BlY3RpdmVseS4gTm90ZTogc29tZSBjb25maWd1cmF0aW9uIGZpbGVzIG1pZ2h0IGJlIHVua25vd24gdG8KK1xmQmRwa2dcZlAgYmVjYXVzZSB0aGV5IGFyZSBjcmVhdGVkIGFuZCBoYW5kbGVkIHNlcGFyYXRlbHkgdGhyb3VnaCB0aGUKK2NvbmZpZ3VyYXRpb24gc2NyaXB0cy4gSW4gdGhhdCBjYXNlLCBcZkJkcGtnXGZQIHdvbid0IHJlbW92ZSB0aGVtIGJ5CitpdHNlbGYsIGJ1dCB0aGUgcGFja2FnZSdzIFxmSXBvc3RybVxmUCBzY3JpcHQgKHdoaWNoIGlzIGNhbGxlZCBieQorXGZCZHBrZ1xmUCksIGhhcyB0byB0YWtlIGNhcmUgb2YgdGhlaXIgcmVtb3ZhbCBkdXJpbmcgcHVyZ2UuIE9mIGNvdXJzZSwKK3RoaXMgb25seSBhcHBsaWVzIHRvIGZpbGVzIGluIHN5c3RlbSBkaXJlY3Rvcmllcywgbm90IGNvbmZpZ3VyYXRpb24gZmlsZXMKK3dyaXR0ZW4gdG8gaW5kaXZpZHVhbCB1c2VycycgaG9tZSBkaXJlY3Rvcmllcy4KKworUmVtb3Zpbmcgb2YgYSBwYWNrYWdlIGNvbnNpc3RzIG9mIHRoZSBmb2xsb3dpbmcgc3RlcHM6CisuYnIKKworXGZCMS5cZlAgUnVuIFxmSXByZXJtXGZQIHNjcmlwdAorLmJyCisKK1xmQjIuXGZQIFJlbW92ZSB0aGUgaW5zdGFsbGVkIGZpbGVzCisuYnIKKworXGZCMy5cZlAgUnVuIFxmSXBvc3RybVxmUCBzY3JpcHQKKy5icgorLlRQCitcZkJcLVwtdXBkYXRlXC1hdmFpbFxmUCwgXGZCXC1cLW1lcmdlXC1hdmFpbFxmUCBcZklQYWNrYWdlcy1maWxlXGZQCitVcGRhdGUgXGZCZHBrZ1xmUCdzIGFuZCBcZkJkc2VsZWN0XGZQJ3MgaWRlYSBvZiB3aGljaCBwYWNrYWdlcyBhcmUKK2F2YWlsYWJsZS4gV2l0aCBhY3Rpb24gXGZCXC1cLW1lcmdlXC1hdmFpbFxmUCwgb2xkIGluZm9ybWF0aW9uIGlzCitjb21iaW5lZCB3aXRoIGluZm9ybWF0aW9uIGZyb20gXGZJUGFja2FnZXMtZmlsZVxmUC4gV2l0aCBhY3Rpb24KK1xmQlwtXC11cGRhdGVcLWF2YWlsXGZQLCBvbGQgaW5mb3JtYXRpb24gaXMgcmVwbGFjZWQgd2l0aCB0aGUgaW5mb3JtYXRpb24KK2luIHRoZSBcZklQYWNrYWdlcy1maWxlXGZQLiBUaGUgXGZJUGFja2FnZXMtZmlsZVxmUCBkaXN0cmlidXRlZCB3aXRoCitEZWJpYW4gaXMgc2ltcGx5IG5hbWVkIFxmSVBhY2thZ2VzXGZQLiBcZkJkcGtnXGZQIGtlZXBzIGl0cworcmVjb3JkIG9mIGF2YWlsYWJsZSBwYWNrYWdlcyBpbiBcZkkvdmFyL2xpYi9kcGtnL2F2YWlsYWJsZVxmUC4KKworQSBzaW1wbGVyIG9uZS1zaG90IGNvbW1hbmQgdG8gcmV0cmlldmUgYW5kIHVwZGF0ZSB0aGUgXGZJYXZhaWxhYmxlXGZSCitmaWxlIGlzIFxmQmRzZWxlY3QgdXBkYXRlXGZSLiBOb3RlIHRoYXQgdGhpcyBmaWxlIGlzIG1vc3RseSB1c2VsZXNzCitpZiB5b3UgZG9uJ3QgdXNlIFxmQmRzZWxlY3RcZlIgYnV0IGFuIEFQVC1iYXNlZCBmcm9udGVuZDogQVBUIGhhcyBpdHMKK293biBzeXN0ZW0gdG8ga2VlcCB0cmFjayBvZiBhdmFpbGFibGUgcGFja2FnZXMuCisuVFAKK1xmQlwtQVxmUCwgXGZCXC1cLXJlY29yZFwtYXZhaWxcZlAgXGZJcGFja2FnZS1maWxlXGZQLi4uCitVcGRhdGUgXGZCZHBrZ1xmUCBhbmQgXGZCZHNlbGVjdFxmUCdzIGlkZWEgb2Ygd2hpY2ggcGFja2FnZXMgYXJlCithdmFpbGFibGUgd2l0aCBpbmZvcm1hdGlvbiBmcm9tIHRoZSBwYWNrYWdlIFxmSXBhY2thZ2UtZmlsZVxmUC4gSWYKK1xmQlwtXC1yZWN1cnNpdmVcZlAgb3IgXGZCXC1SXGZQIG9wdGlvbiBpcyBzcGVjaWZpZWQsIFxmSXBhY2thZ2UtZmlsZVxmUAorbXVzdCByZWZlciB0byBhIGRpcmVjdG9yeSBpbnN0ZWFkLgorLlRQCisuQiBcLVwtZm9yZ2V0XC1vbGRcLXVuYXZhaWwKK05vdyBcZkJvYnNvbGV0ZVxmUCBhbmQgYSBuby1vcCBhcyBcZkJkcGtnXGZQIHdpbGwgYXV0b21hdGljYWxseSBmb3JnZXQKK3VuaW5zdGFsbGVkIHVuYXZhaWxhYmxlIHBhY2thZ2VzLgorLlRQCisuQiBcLVwtY2xlYXJcLWF2YWlsCitFcmFzZSB0aGUgZXhpc3RpbmcgaW5mb3JtYXRpb24gYWJvdXQgd2hhdCBwYWNrYWdlcyBhcmUgYXZhaWxhYmxlLgorLlRQCitcZkIgXC1DXGZQLCBcZkJcLVwtYXVkaXRcZlAKK1NlYXJjaGVzIGZvciBwYWNrYWdlcyB0aGF0IGhhdmUgYmVlbiBpbnN0YWxsZWQgb25seSBwYXJ0aWFsbHkgb24geW91cgorc3lzdGVtLiBcZkJkcGtnXGZQIHdpbGwgc3VnZ2VzdCB3aGF0IHRvIGRvIHdpdGggdGhlbSB0byBnZXQgdGhlbQord29ya2luZy4KKy5UUAorXGZCXC1cLWdldFwtc2VsZWN0aW9uc1xmUCBbXGZJcGFja2FnZS1uYW1lLXBhdHRlcm5cZlAuLi5dCitHZXQgbGlzdCBvZiBwYWNrYWdlIHNlbGVjdGlvbnMsIGFuZCB3cml0ZSBpdCB0byBzdGRvdXQuIFdpdGhvdXQgYSBwYXR0ZXJuLAorbm9uLWluc3RhbGxlZCBwYWNrYWdlcyAoaS5lLiB0aG9zZSB3aGljaCBoYXZlIGJlZW4gcHJldmlvdXNseSBwdXJnZWQpCit3aWxsIG5vdCBiZSBzaG93bi4KKy5UUAorLkIgXC1cLXNldFwtc2VsZWN0aW9ucworU2V0IHBhY2thZ2Ugc2VsZWN0aW9ucyB1c2luZyBmaWxlIHJlYWQgZnJvbSBzdGRpbi4gVGhpcyBmaWxlIHNob3VsZCBiZQoraW4gdGhlIGZvcm1hdCAnXGZJcGFja2FnZVxmUCBcZklzdGF0ZVxmUCcsIHdoZXJlIHN0YXRlIGlzIG9uZSBvZgorXGZCaW5zdGFsbFxmUCwgXGZCaG9sZFxmUCwgXGZCZGVpbnN0YWxsXGZQIG9yIFxmQnB1cmdlXGZQLiBCbGFuayBsaW5lcworYW5kIGNvbW1lbnQgbGluZXMgYmVnaW5uaW5nIHdpdGggJyMnIGFyZSBhbHNvIHBlcm1pdHRlZC4KKy5UUAorLkIgXC1cLWNsZWFyXC1zZWxlY3Rpb25zCitTZXQgdGhlIHJlcXVlc3RlZCBzdGF0ZSBvZiBldmVyeSBub24tZXNzZW50aWFsIHBhY2thZ2UgdG8gZGVpbnN0YWxsLgorVGhpcyBpcyBpbnRlbmRlZCB0byBiZSB1c2VkIGltbWVkaWF0ZWx5IGJlZm9yZSBcLVwtc2V0XC1zZWxlY3Rpb25zLCB0bworZGVpbnN0YWxsIGFueSBwYWNrYWdlcyBub3QgaW4gbGlzdCBnaXZlbiB0byBcLVwtc2V0XC1zZWxlY3Rpb25zLgorLlRQCisuQiBcLVwteWV0XC10b1wtdW5wYWNrCitTZWFyY2hlcyBmb3IgcGFja2FnZXMgc2VsZWN0ZWQgZm9yIGluc3RhbGxhdGlvbiwgYnV0IHdoaWNoIGZvciBzb21lCityZWFzb24gc3RpbGwgaGF2ZW4ndCBiZWVuIGluc3RhbGxlZC4KKy5UUAorLlRQCisuQiBcLVwtcHJpbnRcLWFyY2hpdGVjdHVyZQorUHJpbnQgYXJjaGl0ZWN0dXJlIG9mIHBhY2thZ2VzIFxmQmRwa2dcZlAgaW5zdGFsbHMgKGZvciBleGFtcGxlLCAiaTM4NiIpLgorLlRQCisuQiBcLVwtY29tcGFyZVwtdmVyc2lvbnMgXGZJdmVyMSBvcCB2ZXIyXGZQCitDb21wYXJlIHZlcnNpb24gbnVtYmVycywgd2hlcmUgXGZJb3BcZlAgaXMgYSBiaW5hcnkgb3BlcmF0b3IuIFxmQmRwa2dcZlAKK3JldHVybnMgc3VjY2VzcyAoemVybyByZXN1bHQpIGlmIHRoZSBzcGVjaWZpZWQgY29uZGl0aW9uIGlzIHNhdGlzZmllZCwKK2FuZCBmYWlsdXJlIChub256ZXJvIHJlc3VsdCkgb3RoZXJ3aXNlLiBUaGVyZSBhcmUKK3R3byBncm91cHMgb2Ygb3BlcmF0b3JzLCB3aGljaCBkaWZmZXIgaW4gaG93IHRoZXkgdHJlYXQgYW4gZW1wdHkKK1xmSXZlcjFcZlAgb3IgXGZJdmVyMlxmUC4gVGhlc2UgdHJlYXQgYW4gZW1wdHkgdmVyc2lvbiBhcyBlYXJsaWVyIHRoYW4gYW55Cit2ZXJzaW9uOiBcZkJsdCBsZSBlcSBuZSBnZSBndFxmUC4gVGhlc2UgdHJlYXQgYW4gZW1wdHkgdmVyc2lvbiBhcyBsYXRlcgordGhhbiBhbnkgdmVyc2lvbjogXGZCbHRcLW5sIGxlXC1ubCBnZVwtbmwgZ3RcLW5sXGZQLiBUaGVzZSBhcmUgcHJvdmlkZWQKK29ubHkgZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBjb250cm9sIGZpbGUgc3ludGF4OiBcZkI8IDw8IDw9ID0gPj0gPj4KKz5cZlAuCisuVFAKKy5CIFwtXC1jb21tYW5kXC1mZCBcZkluXGZQCitBY2NlcHQgYSBzZXJpZXMgb2YgY29tbWFuZHMgb24gaW5wdXQgZmlsZSBkZXNjcmlwdG9yIFxmSW5cZlAuIE5vdGU6CithZGRpdGlvbmFsIG9wdGlvbnMgc2V0IG9uIHRoZSBjb21tYW5kIGxpbmUsIGFuZCB0aHJvdWdoIHRoaXMgZmlsZSBkZXNjcmlwdG9yLAorYXJlIG5vdCByZXNldCBmb3Igc3Vic2VxdWVudCBjb21tYW5kcyBleGVjdXRlZCBkdXJpbmcgdGhlIHNhbWUgcnVuLgorLlRQCisuQiBcLVwtaGVscAorRGlzcGxheSBhIGJyaWVmIGhlbHAgbWVzc2FnZS4KKy5UUAorLkIgXC1cLWZvcmNlXC1oZWxwCitHaXZlIGhlbHAgYWJvdXQgdGhlIFxmQlwtXC1mb3JjZVwtXGZQXGZJdGhpbmdcZlAgb3B0aW9ucy4KKy5UUAorLkJSIFwtRGggICIsICIgXC1cLWRlYnVnPWhlbHAKK0dpdmUgaGVscCBhYm91dCBkZWJ1Z2dpbmcgb3B0aW9ucy4KKy5UUAorXGZCXC1cLXZlcnNpb25cZlAKK0Rpc3BsYXkgXGZCZHBrZ1xmUCB2ZXJzaW9uIGluZm9ybWF0aW9uLgorLlRQCitcZkJkcGtnXC1kZWIgYWN0aW9uc1xmUAorU2VlIFxmQmRwa2dcLWRlYlxmUCgxKSBmb3IgbW9yZSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgZm9sbG93aW5nIGFjdGlvbnMuCisKKy5uZgorXGZCXC1iXGZQLCBcZkJcLVwtYnVpbGRcZlAgXGZJZGlyZWN0b3J5XGZQIFtcZklhcmNoaXZlXGZQfFxmSWRpcmVjdG9yeVxmUF0KKyAgICBCdWlsZCBhIGRlYiBwYWNrYWdlLgorXGZCXC1jXGZQLCBcZkJcLVwtY29udGVudHNcZlAgXGZJYXJjaGl2ZVxmUAorICAgIExpc3QgY29udGVudHMgb2YgYSBkZWIgcGFja2FnZS4KK1xmQlwtZVxmUCwgXGZCXC1cLWNvbnRyb2xcZlAgXGZJZmlsZW5hbWVcZlAgW1xmSWRpcmVjdG9yeVxmUF0KKyAgICBFeHRyYWN0IGNvbnRyb2wtaW5mb3JtYXRpb24gZnJvbSBhIHBhY2thZ2UuCitcZkJcLXhcZlAsIFxmQlwtXC1leHRyYWN0XGZQIFxmSWFyY2hpdmUgZGlyZWN0b3J5XGZQCisgICAgRXh0cmFjdCB0aGUgZmlsZXMgY29udGFpbmVkIGJ5IHBhY2thZ2UuCitcZkJcLVhcZlAsIFxmQlwtXC12ZXh0cmFjdFxmUCBcZklhcmNoaXZlIGRpcmVjdG9yeVxmUAorICAgIEV4dHJhY3QgYW5kIGRpc3BsYXkgdGhlIGZpbGVuYW1lcyBjb250YWluZWQgYnkgYQorICAgIHBhY2thZ2UuCitcZkJcLWZcZlAsIFxmQlwtXC1maWVsZFxmUCAgXGZJYXJjaGl2ZVxmUCBbXGZJY29udHJvbC1maWVsZFxmUC4uLl0KKyAgICBEaXNwbGF5IGNvbnRyb2wgZmllbGQocykgb2YgYSBwYWNrYWdlLgorXGZCXC1cLWZzeXNcLXRhcmZpbGVcZlAgXGZJYXJjaGl2ZVxmUAorICAgIERpc3BsYXkgdGhlIGZpbGVzeXN0ZW0gdGFyLWZpbGUgY29udGFpbmVkIGJ5IGEKKyAgICBEZWJpYW4gcGFja2FnZS4KK1xmQlwtSVxmUCwgXGZCXC1cLWluZm9cZlAgXGZJYXJjaGl2ZVxmUCBbXGZJY29udHJvbC1maWxlXGZQLi4uXQorICAgIFNob3cgaW5mb3JtYXRpb24gYWJvdXQgYSBwYWNrYWdlLgorLmZpCisKKy5UUAorXGZCZHBrZ1wtcXVlcnkgYWN0aW9uc1xmUAorU2VlIFxmQmRwa2dcLXF1ZXJ5XGZQKDEpIGZvciBtb3JlIGluZm9ybWF0aW9uIGFib3V0IHRoZSBmb2xsb3dpbmcgYWN0aW9ucy4KKworLm5mCisKK1xmQlwtbFxmUCwgXGZCXC1cLWxpc3RcZlAgXGZJcGFja2FnZS1uYW1lLXBhdHRlcm5cZlAuLi4KKyAgICBMaXN0IHBhY2thZ2VzIG1hdGNoaW5nIGdpdmVuIHBhdHRlcm4uCitcZkJcLXNcZlAsIFxmQlwtXC1zdGF0dXNcZlAgXGZJcGFja2FnZS1uYW1lXGZQLi4uCisgICAgUmVwb3J0IHN0YXR1cyBvZiBzcGVjaWZpZWQgcGFja2FnZS4KK1xmQlwtTFxmUCwgXGZCXC1cLWxpc3RmaWxlc1xmUCBcZklwYWNrYWdlLW5hbWVcZlAuLi4KKyAgICBMaXN0IGZpbGVzIGluc3RhbGxlZCB0byB5b3VyIHN5c3RlbSBmcm9tIFxmSXBhY2thZ2UtbmFtZVxmUC4KK1xmQlwtU1xmUCwgXGZCXC1cLXNlYXJjaFxmUCBcZklmaWxlbmFtZS1zZWFyY2gtcGF0dGVyblxmUC4uLgorICAgIFNlYXJjaCBmb3IgYSBmaWxlbmFtZSBmcm9tIGluc3RhbGxlZCBwYWNrYWdlcy4KK1xmQlwtcFxmUCwgXGZCXC1cLXByaW50XC1hdmFpbFxmUCBcZklwYWNrYWdlLW5hbWVcZlAuLi4KKyAgICBEaXNwbGF5IGRldGFpbHMgYWJvdXQgXGZJcGFja2FnZS1uYW1lXGZQLCBhcyBmb3VuZCBpbgorICAgIFxmSS92YXIvbGliL2Rwa2cvYXZhaWxhYmxlXGZQLiBVc2VycyBvZiBBUFQtYmFzZWQgZnJvbnRlbmRzCisgICAgc2hvdWxkIHVzZSBcZkJhcHRcLWNhY2hlIHNob3dcZlAgXGZJcGFja2FnZS1uYW1lXGZQIGluc3RlYWQuCisuZmkKKy4KKy5TSCBPUFRJT05TCitBbGwgb3B0aW9ucyBjYW4gYmUgc3BlY2lmaWVkIGJvdGggb24gdGhlIGNvbW1hbmQgbGluZSBhbmQgaW4gdGhlIFxmQmRwa2dcZlAKK2NvbmZpZ3VyYXRpb24gZmlsZSBcZkkvZXRjL2Rwa2cvZHBrZy5jZmdcZlAgb3IgdGhlIGZpbGVzIG9uIHRoZSBjb25maWd1cmF0aW9uCitkaXJlY3RvcnkgXGZJL2V0Yy9kcGtnL2Rwa2cuY2ZnLmQvXGZQLiBFYWNoIGxpbmUgaW4gdGhlIGNvbmZpZ3VyYXRpb24KK2ZpbGUgaXMgZWl0aGVyIGFuIG9wdGlvbiAoZXhhY3RseSB0aGUgc2FtZSBhcyB0aGUgY29tbWFuZCBsaW5lIG9wdGlvbiBidXQKK3dpdGhvdXQgbGVhZGluZyBkYXNoZXMpIG9yIGEgY29tbWVudCAoaWYgaXQgc3RhcnRzIHdpdGggYSBcZkIjXGZSKS4KKy5icgorLlRQCitcZkJcLVwtYWJvcnRcLWFmdGVyPVxmUFxmSW51bWJlclxmUAorQ2hhbmdlIGFmdGVyIGhvdyBtYW55IGVycm9ycyBcZkJkcGtnXGZQIHdpbGwgYWJvcnQuIFRoZSBkZWZhdWx0IGlzIDUwLgorLlRQCisuQlIgXC1CICIsICIgXC1cLWF1dG9cLWRlY29uZmlndXJlCitXaGVuIGEgcGFja2FnZSBpcyByZW1vdmVkLCB0aGVyZSBpcyBhIHBvc3NpYmlsaXR5IHRoYXQgYW5vdGhlcgoraW5zdGFsbGVkIHBhY2thZ2UgZGVwZW5kZWQgb24gdGhlIHJlbW92ZWQgcGFja2FnZS4gU3BlY2lmeWluZyB0aGlzCitvcHRpb24gd2lsbCBjYXVzZSBhdXRvbWF0aWMgZGVjb25maWd1cmF0aW9uIG9mIHRoZSBwYWNrYWdlIHdoaWNoCitkZXBlbmRlZCBvbiB0aGUgcmVtb3ZlZCBwYWNrYWdlLgorLlRQCitcZkJcLURcZklvY3RhbFxmUCwgXGZCXC1cLWRlYnVnPVxmUFxmSW9jdGFsXGZQCitTd2l0Y2ggZGVidWdnaW5nIG9uLiBcZklvY3RhbFxmUCBpcyBmb3JtZWQgYnkgYml0d2lzZS1vcnJpbmcgZGVzaXJlZAordmFsdWVzIHRvZ2V0aGVyIGZyb20gdGhlIGxpc3QgYmVsb3cgKG5vdGUgdGhhdCB0aGVzZSB2YWx1ZXMgbWF5IGNoYW5nZQoraW4gZnV0dXJlIHJlbGVhc2VzKS4gXGZCXC1EaFxmUCBvciBcZkJcLVwtZGVidWc9aGVscFxmUCBkaXNwbGF5IHRoZXNlCitkZWJ1Z2dpbmcgdmFsdWVzLgorCisgICAgTnVtYmVyICAgRGVzY3JpcHRpb24KKyAgICAgICAgIDEgICBHZW5lcmFsbHkgaGVscGZ1bCBwcm9ncmVzcyBpbmZvcm1hdGlvbgorICAgICAgICAgMiAgIEludm9jYXRpb24gYW5kIHN0YXR1cyBvZiBtYWludGFpbmVyIHNjcmlwdHMKKyAgICAgICAgMTAgICBPdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWQKKyAgICAgICAxMDAgICBMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZAorICAgICAgICAyMCAgIE91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGUKKyAgICAgICAyMDAgICBMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGUKKyAgICAgICAgNDAgICBEZXBlbmRlbmNpZXMgYW5kIGNvbmZsaWN0cworICAgICAgIDQwMCAgIExvdHMgb2YgZGVwZW5kZW5jaWVzL2NvbmZsaWN0cyBvdXRwdXQKKyAgICAgMTAwMDAgICBUcmlnZ2VyIGFjdGl2YXRpb24gYW5kIHByb2Nlc3NpbmcKKyAgICAgMjAwMDAgICBMb3RzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnMKKyAgICAgNDAwMDAgICBTaWxseSBhbW91bnRzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnMKKyAgICAgIDEwMDAgICBMb3RzIG9mIGRyaXZlbCBhYm91dCBlLmcuIHRoZSBkcGtnL2luZm8gZGlyCisgICAgICAyMDAwICAgSW5zYW5lIGFtb3VudHMgb2YgZHJpdmVsCisuVFAKK1xmQlwtXC1mb3JjZVwtXGZQXGZJdGhpbmdzXGZQLCBcZkJcLVwtbm9cLWZvcmNlXC1cZlBcZkl0aGluZ3NcZlAsIFxmQlwtXC1yZWZ1c2VcLVxmUFxmSXRoaW5nc1xmUAorCitGb3JjZSBvciByZWZ1c2UgKFxmQm5vXC1mb3JjZVxmUCBhbmQgXGZCcmVmdXNlXGZQIG1lYW4gdGhlIHNhbWUgdGhpbmcpCit0byBkbyBzb21lIHRoaW5ncy4gXGZJdGhpbmdzXGZQIGlzIGEgY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2YgdGhpbmdzCitzcGVjaWZpZWQgYmVsb3cuIFxmQlwtXC1mb3JjZVwtaGVscFxmUCBkaXNwbGF5cyBhIG1lc3NhZ2UgZGVzY3JpYmluZyB0aGVtLgorVGhpbmdzIG1hcmtlZCB3aXRoICgqKSBhcmUgZm9yY2VkIGJ5IGRlZmF1bHQuCisKK1xmSVdhcm5pbmc6IFRoZXNlIG9wdGlvbnMgYXJlIG1vc3RseSBpbnRlbmRlZCB0byBiZSB1c2VkIGJ5IGV4cGVydHMKK29ubHkuIFVzaW5nIHRoZW0gd2l0aG91dCBmdWxseSB1bmRlcnN0YW5kaW5nIHRoZWlyIGVmZmVjdHMgbWF5IGJyZWFrCit5b3VyIHdob2xlIHN5c3RlbS5cZlAKKworXGZCYWxsXGZQOgorVHVybnMgb24gKG9yIG9mZikgYWxsIGZvcmNlIG9wdGlvbnMuCisKK1xmQmRvd25ncmFkZVxmUCgqKToKK0luc3RhbGwgYSBwYWNrYWdlLCBldmVuIGlmIG5ld2VyIHZlcnNpb24gb2YgaXQgaXMgYWxyZWFkeSBpbnN0YWxsZWQuCisKK1xmSVdhcm5pbmc6IEF0IHByZXNlbnQgZHBrZyBkb2VzIG5vdCBkbyBhbnkgZGVwZW5kZW5jeSAKK2NoZWNraW5nIG9uIGRvd25ncmFkZXMgYW5kIHRoZXJlZm9yZSB3aWxsIG5vdCB3YXJuIHlvdSAKK2lmIHRoZSBkb3duZ3JhZGUgYnJlYWtzIHRoZSBkZXBlbmRlbmN5IG9mIHNvbWUgb3RoZXIgCitwYWNrYWdlLiBUaGlzIGNhbiBoYXZlIHNlcmlvdXMgc2lkZSBlZmZlY3RzLCBkb3duZ3JhZGluZworZXNzZW50aWFsIHN5c3RlbSBjb21wb25lbnRzIGNhbiBldmVuIG1ha2UgeW91ciB3aG9sZQorc3lzdGVtIHVudXNhYmxlLiBVc2Ugd2l0aCBjYXJlLlxmUAorCitcZkJjb25maWd1cmVcLWFueVxmUDoKK0NvbmZpZ3VyZSBhbHNvIGFueSB1bnBhY2tlZCBidXQgdW5jb25maWd1cmVkIHBhY2thZ2VzIG9uIHdoaWNoIHRoZSBjdXJyZW50CitwYWNrYWdlIGRlcGVuZHMuCisKK1xmQmhvbGRcZlA6CitQcm9jZXNzIHBhY2thZ2VzIGV2ZW4gd2hlbiBtYXJrZWQgImhvbGQiLgorCitcZkJyZW1vdmVcLXJlaW5zdHJlcVxmUDoKK1JlbW92ZSBhIHBhY2thZ2UsIGV2ZW4gaWYgaXQncyBicm9rZW4gYW5kIG1hcmtlZCB0byByZXF1aXJlCityZWluc3RhbGxhdGlvbi4gVGhpcyBtYXksIGZvciBleGFtcGxlLCBjYXVzZSBwYXJ0cyBvZiB0aGUgcGFja2FnZSB0bworcmVtYWluIG9uIHRoZSBzeXN0ZW0sIHdoaWNoIHdpbGwgdGhlbiBiZSBmb3Jnb3R0ZW4gYnkgXGZCZHBrZ1xmUC4KKworXGZCcmVtb3ZlXC1lc3NlbnRpYWxcZlA6CitSZW1vdmUsIGV2ZW4gaWYgdGhlIHBhY2thZ2UgaXMgY29uc2lkZXJlZCBlc3NlbnRpYWwuIEVzc2VudGlhbAorcGFja2FnZXMgY29udGFpbiBtb3N0bHkgdmVyeSBiYXNpYyBVbml4IGNvbW1hbmRzLiBSZW1vdmluZyB0aGVtIG1pZ2h0CitjYXVzZSB0aGUgd2hvbGUgc3lzdGVtIHRvIHN0b3Agd29ya2luZywgc28gdXNlIHdpdGggY2F1dGlvbi4KKworXGZCZGVwZW5kc1xmUDoKK1R1cm4gYWxsIGRlcGVuZGVuY3kgcHJvYmxlbXMgaW50byB3YXJuaW5ncy4KKworXGZCZGVwZW5kc1wtdmVyc2lvblxmUDoKK0Rvbid0IGNhcmUgYWJvdXQgdmVyc2lvbnMgd2hlbiBjaGVja2luZyBkZXBlbmRlbmNpZXMuCisKK1xmQmJyZWFrc1xmUDoKK0luc3RhbGwsIGV2ZW4gaWYgdGhpcyB3b3VsZCBicmVhayBhbm90aGVyIHBhY2thZ2UuCisKK1xmQmNvbmZsaWN0c1xmUDoKK0luc3RhbGwsIGV2ZW4gaWYgaXQgY29uZmxpY3RzIHdpdGggYW5vdGhlciBwYWNrYWdlLiBUaGlzIGlzIGRhbmdlcm91cywKK2ZvciBpdCB3aWxsIHVzdWFsbHkgY2F1c2Ugb3ZlcndyaXRpbmcgb2Ygc29tZSBmaWxlcy4KKworXGZCY29uZm1pc3NcZlA6CitBbHdheXMgaW5zdGFsbCBhIG1pc3NpbmcgY29uZmZpbGUuIFRoaXMgaXMgZGFuZ2Vyb3VzLAorc2luY2UgaXQgbWVhbnMgbm90IHByZXNlcnZpbmcgYSBjaGFuZ2UgKHJlbW92aW5nKSBtYWRlIHRvIHRoZQorZmlsZS4KKworXGZCY29uZm5ld1xmUDoKK0lmIGEgY29uZmZpbGUgaGFzIGJlZW4gbW9kaWZpZWQgYWx3YXlzIGluc3RhbGwgdGhlIG5ldyB2ZXJzaW9uIHdpdGhvdXQKK3Byb21wdGluZywgdW5sZXNzIHRoZSBcZkJcLVwtZm9yY2VcLWNvbmZkZWZcZlAgaXMgYWxzbyBzcGVjaWZpZWQsIGluCit3aGljaCBjYXNlIHRoZSBkZWZhdWx0IGFjdGlvbiBpcyBwcmVmZXJyZWQuCisKK1xmQmNvbmZvbGRcZlA6CitJZiBhIGNvbmZmaWxlIGhhcyBiZWVuIG1vZGlmaWVkIGFsd2F5cyBrZWVwIHRoZSBvbGQgdmVyc2lvbiB3aXRob3V0Citwcm9tcHRpbmcsIHVubGVzcyB0aGUgXGZCXC1cLWZvcmNlXC1jb25mZGVmXGZQIGlzIGFsc28gc3BlY2lmaWVkLCBpbgord2hpY2ggY2FzZSB0aGUgZGVmYXVsdCBhY3Rpb24gaXMgcHJlZmVycmVkLgorCitcZkJjb25mZGVmXGZQOgorSWYgYSBjb25mZmlsZSBoYXMgYmVlbiBtb2RpZmllZCBhbHdheXMgY2hvb3NlIHRoZSBkZWZhdWx0IGFjdGlvbi4gSWYKK3RoZXJlIGlzIG5vIGRlZmF1bHQgYWN0aW9uIGl0IHdpbGwgc3RvcCB0byBhc2sgdGhlIHVzZXIgdW5sZXNzIAorXGZCXC1cLWZvcmNlXC1jb25mbmV3XGZQIG9yIFxmQlwtXC1mb3JjZVwtY29uZm9sZFxmUCBpcyBhbHNvIGJlZW4gZ2l2ZW4sIGluCit3aGljaCBjYXNlIGl0IHdpbGwgdXNlIHRoYXQgdG8gZGVjaWRlIHRoZSBmaW5hbCBhY3Rpb24uCisKK1xmQmNvbmZhc2tcZlA6CitJZiBhIGNvbmZmaWxlIGhhcyBiZWVuIG1vZGlmaWVkIGFsd2F5cyBvZmZlciB0byByZXBsYWNlIGl0IHdpdGggdGhlCit2ZXJzaW9uIGluIHRoZSBwYWNrYWdlLCBldmVuIGlmIHRoZSB2ZXJzaW9uIGluIHRoZSBwYWNrYWdlIGRpZCBub3QKK2NoYW5nZS4gSWYgYW55IG9mIFxmQlwtXC1mb3JjZVwtY29uZm1pc3NcZlAsIFxmQlwtXC1mb3JjZVwtY29uZm5ld1xmUCwKK1xmQlwtXC1mb3JjZVwtY29uZm9sZFxmUCwgb3IgXGZCXC1cLWZvcmNlXC1jb25mZGVmXGZQIGlzIGFsc28gZ2l2ZW4sCitpdCB3aWxsIGJlIHVzZWQgdG8gZGVjaWRlIHRoZSBmaW5hbCBhY3Rpb24uCisKK1xmQm92ZXJ3cml0ZVxmUDoKK092ZXJ3cml0ZSBvbmUgcGFja2FnZSdzIGZpbGUgd2l0aCBhbm90aGVyJ3MgZmlsZS4KKworXGZCb3ZlcndyaXRlXC1kaXJcZlAKK092ZXJ3cml0ZSBvbmUgcGFja2FnZSdzIGRpcmVjdG9yeSB3aXRoIGFub3RoZXIncyBmaWxlLgorCitcZkJvdmVyd3JpdGVcLWRpdmVydGVkXGZQOgorT3ZlcndyaXRlIGEgZGl2ZXJ0ZWQgZmlsZSB3aXRoIGFuIHVuZGl2ZXJ0ZWQgdmVyc2lvbi4KKworXGZCdW5zYWZlXC1pb1xmUDoKK0RvIG5vdCBwZXJmb3JtIHNhZmUgSS9PIG9wZXJhdGlvbnMgd2hlbiB1bnBhY2tpbmcuIEN1cnJlbnRseSB0aGlzCitpbXBsaWVzIG5vdCBwZXJmb3JtaW5nIGZpbGUgc3lzdGVtIHN5bmNzIGJlZm9yZSBmaWxlIHJlbmFtZXMsIHdoaWNoIGlzCitrbm93biB0byBjYXVzZSBzdWJzdGFudGlhbCBwZXJmb3JtYW5jZSBkZWdyYWRhdGlvbiBvbiBzb21lIGZpbGUgc3lzdGVtcywKK3VuZm9ydHVuYXRlbHkgdGhlIG9uZXMgdGhhdCByZXF1aXJlIHRoZSBzYWZlIEkvTyBvbiB0aGUgZmlyc3QgcGxhY2UgZHVlCit0byB0aGVpciB1bnJlbGlhYmxlIGJlaGF2aW91ciBjYXVzaW5nIHplcm8tbGVuZ3RoIGZpbGVzIG9uIGFicnVwdAorc3lzdGVtIGNyYXNoZXMuCisKK1xmSU5vdGVcZlA6IEZvciBleHQ0LCB0aGUgbWFpbiBvZmZlbmRlciwgY29uc2lkZXIgdXNpbmcgaW5zdGVhZCB0aGUKK21vdW50IG9wdGlvbiBcZkJub2RlbGFsbG9jXGZQLCB3aGljaCB3aWxsIGZpeCBib3RoIHRoZSBwZXJmb3JtYW5jZQorZGVncmFkYXRpb24gYW5kIHRoZSBkYXRhIHNhZmV0eSBpc3N1ZXMsIHRoZSBsYXR0ZXIgYnkgbWFraW5nIHRoZSBmaWxlCitzeXN0ZW0gbm90IHByb2R1Y2UgemVyby1sZW5ndGggZmlsZXMgb24gYWJydXB0IHN5c3RlbSBjcmFzaGVzIHdpdGgKK2FueSBzb2Z0d2FyZSBub3QgZG9pbmcgc3luY3MgYmVmb3JlIGF0b21pYyByZW5hbWVzLgorCitcZklXYXJuaW5nOiBVc2luZyB0aGlzIG9wdGlvbiBtaWdodCBpbXByb3ZlIHBlcmZvcm1hbmNlIGF0IHRoZSBjb3N0IG9mCitsb3NpbmcgZGF0YSwgdXNlIHdpdGggY2FyZS5cZlAKKworXGZCYXJjaGl0ZWN0dXJlXGZQOgorUHJvY2VzcyBldmVuIHBhY2thZ2VzIHdpdGggd3Jvbmcgb3Igbm8gYXJjaGl0ZWN0dXJlLgorCitcZkJiYWRcLXZlcnNpb25cZlA6CitQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyB2ZXJzaW9ucy4KKworXGZCYmFkXC1wYXRoXGZQOgorXGZCUEFUSFxmUCBpcyBtaXNzaW5nIGltcG9ydGFudCBwcm9ncmFtcywgc28gcHJvYmxlbXMgYXJlIGxpa2VseS4KKworXGZCbm90XC1yb290XGZQOgorVHJ5IHRvIChkZSlpbnN0YWxsIHRoaW5ncyBldmVuIHdoZW4gbm90IHJvb3QuCisKK1xmQmJhZFwtdmVyaWZ5XGZQOgorSW5zdGFsbCBhIHBhY2thZ2UgZXZlbiBpZiBpdCBmYWlscyBhdXRoZW50aWNpdHkgY2hlY2suCisKKy5UUAorXGZCXC1cLWlnbm9yZVwtZGVwZW5kc1xmUD1cZklwYWNrYWdlXGZQLC4uLgorSWdub3JlIGRlcGVuZGVuY3ktY2hlY2tpbmcgZm9yIHNwZWNpZmllZCBwYWNrYWdlcyAoYWN0dWFsbHksIGNoZWNraW5nIGlzCitwZXJmb3JtZWQsIGJ1dCBvbmx5IHdhcm5pbmdzIGFib3V0IGNvbmZsaWN0cyBhcmUgZ2l2ZW4sIG5vdGhpbmcgZWxzZSkuCisuVFAKK1xmQlwtXC1ub1wtYWN0XGZQLCBcZkJcLVwtZHJ5XC1ydW5cZlAsIFxmQlwtXC1zaW11bGF0ZVxmUAorRG8gZXZlcnl0aGluZyB3aGljaCBpcyBzdXBwb3NlZCB0byBiZSBkb25lLCBidXQgZG9uJ3Qgd3JpdGUgYW55CitjaGFuZ2VzLiBUaGlzIGlzIHVzZWQgdG8gc2VlIHdoYXQgd291bGQgaGFwcGVuIHdpdGggdGhlIHNwZWNpZmllZAorYWN0aW9uLCB3aXRob3V0IGFjdHVhbGx5IG1vZGlmeWluZyBhbnl0aGluZy4KKworQmUgc3VyZSB0byBnaXZlIFxmQlwtXC1ub1wtYWN0XGZQIGJlZm9yZSB0aGUgYWN0aW9uLXBhcmFtZXRlciwgb3IgeW91IG1pZ2h0CitlbmQgdXAgd2l0aCB1bmRlc2lyYWJsZSByZXN1bHRzLiAoZS5nLiBcZkJkcGtnIFwtXC1wdXJnZSBmb28KK1wtXC1ub1wtYWN0XGZQIHdpbGwgZmlyc3QgcHVyZ2UgcGFja2FnZSBmb28gYW5kIHRoZW4gdHJ5IHRvIHB1cmdlIHBhY2thZ2UKK1wtXC1ub1wtYWN0LCBldmVuIHRob3VnaCB5b3UgcHJvYmFibHkgZXhwZWN0ZWQgaXQgdG8gYWN0dWFsbHkgZG8gbm90aGluZykKKy5UUAorXGZCXC1SXGZQLCBcZkJcLVwtcmVjdXJzaXZlXGZQCitSZWN1cnNpdmVseSBoYW5kbGUgYWxsIHJlZ3VsYXIgZmlsZXMgbWF0Y2hpbmcgcGF0dGVybiBcZkIqLmRlYlxmUAorZm91bmQgYXQgc3BlY2lmaWVkIGRpcmVjdG9yaWVzIGFuZCBhbGwgb2YgaXRzIHN1YmRpcmVjdG9yaWVzLiBUaGlzIGNhbgorYmUgdXNlZCB3aXRoIFxmQlwtaVxmUCwgXGZCXC1BXGZQLCBcZkJcLVwtaW5zdGFsbFxmUCwgXGZCXC1cLXVucGFja1xmUCBhbmQKK1xmQlwtXC1hdmFpbFxmUCBhY3Rpb25zLgorLlRQCitcZkJcLUdcZlAKK0Rvbid0IGluc3RhbGwgYSBwYWNrYWdlIGlmIGEgbmV3ZXIgdmVyc2lvbiBvZiB0aGUgc2FtZSBwYWNrYWdlIGlzIGFscmVhZHkKK2luc3RhbGxlZC4gVGhpcyBpcyBhbiBhbGlhcyBvZiBcZkJcLVwtcmVmdXNlXC1kb3duZ3JhZGVcZlAuCisuVFAKKy5CSSBcLVwtYWRtaW5kaXI9IGRpcgorQ2hhbmdlIGRlZmF1bHQgYWRtaW5pc3RyYXRpdmUgZGlyZWN0b3J5LCB3aGljaCBjb250YWlucyBtYW55IGZpbGVzIHRoYXQKK2dpdmUgaW5mb3JtYXRpb24gYWJvdXQgc3RhdHVzIG9mIGluc3RhbGxlZCBvciB1bmluc3RhbGxlZCBwYWNrYWdlcywgZXRjLgorKERlZmF1bHRzIHRvIFxmSS92YXIvbGliL2Rwa2dcZlApCisuVFAKKy5CSSBcLVwtaW5zdGRpcj0gZGlyCitDaGFuZ2UgZGVmYXVsdCBpbnN0YWxsYXRpb24gZGlyZWN0b3J5IHdoaWNoIHJlZmVycyB0byB0aGUgZGlyZWN0b3J5IHdoZXJlCitwYWNrYWdlcyBhcmUgdG8gYmUgaW5zdGFsbGVkLiBcZkJpbnN0ZGlyXGZQIGlzIGFsc28gdGhlIGRpcmVjdG9yeSBwYXNzZWQKK3RvIFxmQmNocm9vdFxmUCgyKSBiZWZvcmUgcnVubmluZyBwYWNrYWdlJ3MgaW5zdGFsbGF0aW9uIHNjcmlwdHMsIHdoaWNoCittZWFucyB0aGF0IHRoZSBzY3JpcHRzIHNlZSBcZkJpbnN0ZGlyXGZQIGFzIGEgcm9vdCBkaXJlY3RvcnkuCisoRGVmYXVsdHMgdG8gXGZJL1xmUCkKKy5UUAorLkJJIFwtXC1yb290PSBkaXIKK0NoYW5naW5nIFxmQnJvb3RcZlAgY2hhbmdlcyBcZkJpbnN0ZGlyXGZQIHRvIFxmSWRpclxmUCBhbmQgXGZCYWRtaW5kaXJcZlAKK3RvIFxmSWRpclxmUFxmQi92YXIvbGliL2Rwa2dcZlAuCisuVFAKK1xmQlwtT1xmUCwgXGZCXC1cLXNlbGVjdGVkXC1vbmx5XGZQCitPbmx5IHByb2Nlc3MgdGhlIHBhY2thZ2VzIHRoYXQgYXJlIHNlbGVjdGVkIGZvciBpbnN0YWxsYXRpb24uIFRoZQorYWN0dWFsIG1hcmtpbmcgaXMgZG9uZSB3aXRoIFxmQmRzZWxlY3RcZlAgb3IgYnkgXGZCZHBrZ1xmUCwgd2hlbiBpdAoraGFuZGxlcyBwYWNrYWdlcy4gRm9yIGV4YW1wbGUsIHdoZW4gYSBwYWNrYWdlIGlzIHJlbW92ZWQsIGl0IHdpbGwKK2JlIG1hcmtlZCBzZWxlY3RlZCBmb3IgZGVpbnN0YWxsYXRpb24uCisuVFAKKy5CUiBcLUUgIiwgIiBcLVwtc2tpcFwtc2FtZVwtdmVyc2lvbgorRG9uJ3QgaW5zdGFsbCB0aGUgcGFja2FnZSBpZiB0aGUgc2FtZSB2ZXJzaW9uIG9mIHRoZSBwYWNrYWdlIGlzIGFscmVhZHkKK2luc3RhbGxlZC4KKy5QCisuQkkgXC1cLXByZVwtaW52b2tlPSBjb21tYW5kCisuYnIKKy5CSSBcLVwtcG9zdFwtaW52b2tlPSBjb21tYW5kCisuUlMKK1NldCBhbiBpbnZva2UgaG9vayBcZkljb21tYW5kXGZQIHRvIGJlIHJ1biB2aWEgXCoobHFzaCBcLWNcKihycSBiZWZvcmUgb3IKK2FmdGVyIHRoZSBkcGtnIHJ1biBmb3IgdGhlIFxmSXVucGFja1xmUCwgXGZJY29uZmlndXJlXGZQLCBcZklpbnN0YWxsXGZQLAorXGZJdHJpZ2dlcnNcLW9ubHlcZlAsIFxmSXJlbW92ZVxmUCBhbmQgXGZJcHVyZ2VcZlAgZHBrZyBhY3Rpb25zLiBUaGlzCitvcHRpb24gY2FuIGJlIHNwZWNpZmllZCBtdWx0aXBsZSB0aW1lcy4gVGhlIG9yZGVyIHRoZSBvcHRpb25zIGFyZSBzcGVjaWZpZWQKK2lzIHByZXNlcnZlZCwgd2l0aCB0aGUgb25lcyBmcm9tIHRoZSBjb25maWd1cmF0aW9uIGZpbGVzIHRha2luZyBwcmVjZWRlbmNlLgorVGhlIGVudmlyb25tZW50IHZhcmlhYmxlIFxmQkRQS0dfSE9PS19BQ1RJT05cZlAgaXMgc2V0IGZvciB0aGUgaG9va3MgdG8gdGhlCitjdXJyZW50IGRwa2cgYWN0aW9uLiBOb3RlOiBmcm9udC1lbmRzIG1pZ2h0IGNhbGwgZHBrZyBzZXZlcmFsIHRpbWVzIHBlcgoraW52b2NhdGlvbiwgd2hpY2ggbWlnaHQgcnVuIHRoZSBob29rcyBtb3JlIHRpbWVzIHRoYW4gZXhwZWN0ZWQuCisuUkUKKy5QCisuQkkgXC1cLXBhdGhcLWV4Y2x1ZGU9IGdsb2ItcGF0dGVybgorLmJyCisuQkkgXC1cLXBhdGhcLWluY2x1ZGU9IGdsb2ItcGF0dGVybgorLlJTCitTZXQgXGZJZ2xvYi1wYXR0ZXJuXGZQIGFzIGEgcGF0aCBmaWx0ZXIsIGVpdGhlciBieSBleGNsdWRpbmcgb3IgcmUtaW5jbHVkaW5nCitwcmV2aW91c2x5IGV4Y2x1ZGVkIHBhdGhzIG1hdGNoaW5nIHRoZSBzcGVjaWZpZWQgcGF0dGVybnMgZHVyaW5nIGluc3RhbGwuCisKK1xmSVdhcm5pbmc6IHRha2UgaW50byBhY2NvdW50IHRoYXQgZGVwZW5kaW5nIG9uIHRoZSBleGNsdWRlZCBwYXRocyB5b3UKK21pZ2h0IGNvbXBsZXRlbHkgYnJlYWsgeW91ciBzeXN0ZW0sIHVzZSB3aXRoIGNhdXRpb24uXGZQCisKK1RoZSBnbG9iIHBhdHRlcm5zIHVzZSB0aGUgc2FtZSB3aWxkY2FyZHMgdXNlZCBpbiB0aGUgc2hlbGwsIHdlcmUgJyonIG1hdGNoZXMKK2FueSBzZXF1ZW5jZSBvZiBjaGFyYWN0ZXJzLCBpbmNsdWRpbmcgdGhlIGVtcHR5IHN0cmluZyBhbmQgYWxzbyAnLycuIEZvcgorZXhhbXBsZSwgXGZJJy91c3IvKi9SRUFEKidcZlAgbWF0Y2hlcyBcZkknL3Vzci9zaGFyZS9kb2MvcGFja2FnZS9SRUFETUUnXGZQLgorQXMgdXN1YWwsICc/JyBtYXRjaGVzIGFueSBzaW5nbGUgY2hhcmFjdGVyIChhZ2FpbiwgaW5jbHVkaW5nICcvJykuIEFuZCAnWycKK3N0YXJ0cyBhIGNoYXJhY3RlciBjbGFzcywgd2hpY2ggY2FuIGNvbnRhaW4gYSBsaXN0IG9mIGNoYXJhY3RlcnMsIHJhbmdlcworYW5kIGNvbXBsZW1lbnRhdGlvbnMuIFNlZSBcZkJnbG9iXGZQKDcpIGZvciBkZXRhaWxlZCBpbmZvcm1hdGlvbiBhYm91dAorZ2xvYmJpbmcuIE5vdGU6IHRoZSBjdXJyZW50IGltcGxlbWVudGF0aW9uIG1pZ2h0IHJlLWluY2x1ZGUgbW9yZSBkaXJlY3RvcmllcworYW5kIHN5bWxpbmtzIHRoYW4gbmVlZGVkLCB0byBiZSBvbiB0aGUgc2FmZSBzaWRlIGFuZCBhdm9pZCBwb3NzaWJsZSB1bnBhY2sKK2ZhaWx1cmVzLCBmdXR1cmUgd29yayBtaWdodCBmaXggdGhpcy4KKworVGhpcyBjYW4gYmUgdXNlZCB0byByZW1vdmUgYWxsIHBhdGhzIGV4Y2VwdCBzb21lIHBhcnRpY3VsYXIgb25lczsgYSB0eXBpY2FsCitjYXNlIGlzOgorCisubmYKKy5CIFwtXC1wYXRoXC1leGNsdWRlPS91c3Ivc2hhcmUvZG9jLyoKKy5CIFwtXC1wYXRoXC1pbmNsdWRlPS91c3Ivc2hhcmUvZG9jLyovY29weXJpZ2h0CisuZmkKKwordG8gcmVtb3ZlIGFsbCBkb2N1bWVudGF0aW9uIGZpbGVzIGV4Y2VwdCB0aGUgY29weXJpZ2h0IGZpbGVzLgorCitUaGVzZSB0d28gb3B0aW9ucyBjYW4gYmUgc3BlY2lmaWVkIG11bHRpcGxlIHRpbWVzLCBhbmQgaW50ZXJsZWF2ZWQgd2l0aAorZWFjaCBvdGhlci4gQm90aCBhcmUgcHJvY2Vzc2VkIGluIHRoZSBnaXZlbiBvcmRlciwgd2l0aCB0aGUgbGFzdCBydWxlIHRoYXQKK21hdGNoZXMgYSBmaWxlIG5hbWUgbWFraW5nIHRoZSBkZWNpc2lvbi4KKy5SRQorLlRQCitcZkJcLVwtc3RhdHVzXC1mZCBcZlJcZkluXGZSCitTZW5kIG1hY2hpbmUtcmVhZGFibGUgcGFja2FnZSBzdGF0dXMgYW5kIHByb2dyZXNzIGluZm9ybWF0aW9uIHRvIGZpbGUKK2Rlc2NyaXB0b3IgXGZJblxmUC4gVGhpcyBvcHRpb24gY2FuIGJlIHNwZWNpZmllZCBtdWx0aXBsZSB0aW1lcy4gVGhlCitpbmZvcm1hdGlvbiBpcyBnZW5lcmFsbHkgb25lIHJlY29yZCBwZXIgbGluZSwgaW4gb25lIG9mIHRoZSBmb2xsb3dpbmcKK2Zvcm1zOgorLlJTCisuVFAKKy5CSSAic3RhdHVzOiAiIHBhY2thZ2UgIjogIiBzdGF0dXMKK1BhY2thZ2Ugc3RhdHVzIGNoYW5nZWQ7IFxmSXN0YXR1c1xmUiBpcyBhcyBpbiB0aGUgc3RhdHVzIGZpbGUuCisuVFAKKy5CSSAic3RhdHVzOiAiIHBhY2thZ2UgIiA6IGVycm9yIDogIiBleHRlbmRlZC1lcnJvci1tZXNzYWdlCitBbiBlcnJvciBvY2N1cnJlZC4gQW55IHBvc3NpYmxlIG5ld2xpbmVzIGluIFxmSWV4dGVuZGVkLWVycm9yLW1lc3NhZ2VcZlIKK3dpbGwgYmUgY29udmVydGVkIHRvIHNwYWNlcyBiZWZvcmUgb3V0cHV0LgorLlRQCisuQkkgInN0YXR1czogIiBmaWxlICIgOiBjb25mZmlsZVwtcHJvbXB0IDogJyIgcmVhbC1vbGQgIicgJyIgcmVhbC1uZXcgIicgIiB1c2VyZWRpdGVkICIgIiBkaXN0ZWRpdGVkCitVc2VyIGlzIGJlaW5nIGFza2VkIGEgY29uZmZpbGUgcXVlc3Rpb24uCisuVFAKKy5CSSAicHJvY2Vzc2luZzogIiBzdGFnZSAiOiAiIHBhY2thZ2UKK1NlbnQganVzdCBiZWZvcmUgYSBwcm9jZXNzaW5nIHN0YWdlIHN0YXJ0cy4gXGZJc3RhZ2VcZlIgaXMgb25lIG9mCisuQlIgdXBncmFkZSAiLCAiIGluc3RhbGwgIiAoYm90aCBzZW50IGJlZm9yZSB1bnBhY2tpbmcpLCIKKy5CUiBjb25maWd1cmUgIiwgIiB0cmlncHJvYyAgIiwgIiBkaXNhcHBlYXIgIiwgIiByZW1vdmUgICIsICIgcHVyZ2UgLgorLlJFCisuVFAKK1xmQlwtXC1zdGF0dXNcLWxvZ2dlclxmUj1cZkljb21tYW5kXGZSCitTZW5kIG1hY2hpbmUtcmVhZGFibGUgcGFja2FnZSBzdGF0dXMgYW5kIHByb2dyZXNzIGluZm9ybWF0aW9uIHRvIHRoZQorc2hlbGwgXGZJY29tbWFuZFxmUidzIHN0YW5kYXJkIGlucHV0LiBUaGlzIG9wdGlvbiBjYW4gYmUgc3BlY2lmaWVkCittdWx0aXBsZSB0aW1lcy4gVGhlIG91dHB1dCBmb3JtYXQgdXNlZCBpcyB0aGUgc2FtZSBhcyBpbiBcZkJcLVwtc3RhdHVzXC1mZC4KKy5SRQorLlRQCitcZkJcLVwtbG9nPVxmUFxmSWZpbGVuYW1lXGZQCitMb2cgc3RhdHVzIGNoYW5nZSB1cGRhdGVzIGFuZCBhY3Rpb25zIHRvIFxmSWZpbGVuYW1lXGZQLCBpbnN0ZWFkIG9mCit0aGUgZGVmYXVsdCBcZkkvdmFyL2xvZy9kcGtnLmxvZ1xmUC4gSWYgdGhpcyBvcHRpb24gaXMgZ2l2ZW4gbXVsdGlwbGUKK3RpbWVzLCB0aGUgbGFzdCBmaWxlbmFtZSBpcyB1c2VkLiBMb2cgbWVzc2FnZXMgYXJlIG9mIHRoZSBmb3JtCitgWVlZWS1NTS1ERCBISDpNTTpTUyBzdGF0dXMgXGZJc3RhdGVcZlAgXGZJcGtnXGZQIFxmSWluc3RhbGxlZC12ZXJzaW9uXGZQJworZm9yIHN0YXR1cyBjaGFuZ2UgdXBkYXRlczsKK2BZWVlZLU1NLUREIEhIOk1NOlNTIFxmSWFjdGlvblxmUCBcZklwa2dcZlAgXGZJaW5zdGFsbGVkLXZlcnNpb25cZlAKK1xmSWF2YWlsYWJsZS12ZXJzaW9uXGZQJyBmb3IgYWN0aW9ucyB3aGVyZSBcZklhY3Rpb25cZlAgaXMgb25lIG9mCitcZkJpbnN0YWxsXGZQLCBcZkJ1cGdyYWRlXGZQLCBcZkJyZW1vdmVcZlAsIFxmQnB1cmdlXGZQOyBhbmQKK2BZWVlZLU1NLUREIEhIOk1NOlNTIGNvbmZmaWxlIFxmSWZpbGVuYW1lXGZQIFxmSWRlY2lzaW9uXGZQJyBmb3IgY29uZmZpbGUKK2NoYW5nZXMgd2hlcmUgXGZJZGVjaXNpb25cZlAgaXMgZWl0aGVyIFxmQmluc3RhbGxcZlAgb3IgXGZCa2VlcFxmUC4KKy5UUAorXGZCXC1cLW5vXC1kZWJzaWdcZlAKK0RvIG5vdCB0cnkgdG8gdmVyaWZ5IHBhY2thZ2Ugc2lnbmF0dXJlcy4KKy5UUAorXGZCXC1cLW5vXC10cmlnZ2Vyc1xmUAorRG8gbm90IHJ1biBhbnkgdHJpZ2dlcnMgaW4gdGhpcyBydW4gKGFjdGl2YXRpb25zIHdpbGwgc3RpbGwgYmUgcmVjb3JkZWQpLgorSWYgdXNlZCB3aXRoIFxmQlwtXC1jb25maWd1cmVcZlAgXGZJcGFja2FnZVxmUCBvcgorXGZCXC1cLXRyaWdnZXJzXC1vbmx5XGZQIFxmSXBhY2thZ2VcZlAgdGhlbiB0aGUgbmFtZWQgcGFja2FnZSBwb3N0aW5zdAord2lsbCBzdGlsbCBiZSBydW4gZXZlbiBpZiBvbmx5IGEgdHJpZ2dlcnMgcnVuIGlzIG5lZWRlZC4gVXNlIG9mIHRoaXMgb3B0aW9uCittYXkgbGVhdmUgcGFja2FnZXMgaW4gdGhlIGltcHJvcGVyIFxmQnRyaWdnZXJzXC1hd2FpdGVkXGZQIGFuZAorXGZCdHJpZ2dlcnNcLXBlbmRpbmdcZlAgc3RhdGVzLiBUaGlzIGNhbiBiZSBmaXhlZCBsYXRlciBieSBydW5uaW5nOgorXGZCZHBrZyBcLVwtY29uZmlndXJlIFwtXC1wZW5kaW5nXGZQLgorLlRQCitcZkJcLVwtdHJpZ2dlcnNcZlAKK0NhbmNlbHMgYSBwcmV2aW91cyBcZkJcLVwtbm9cLXRyaWdnZXJzXGZQLgorLgorLlNIIEZJTEVTCisuVFAKKy5JIC9ldGMvZHBrZy9kcGtnLmNmZworQ29uZmlndXJhdGlvbiBmaWxlIHdpdGggZGVmYXVsdCBvcHRpb25zLgorLlRQCisuSSAvdmFyL2xvZy9kcGtnLmxvZworRGVmYXVsdCBsb2cgZmlsZSAoc2VlIFxmSS9ldGMvZHBrZy9kcGtnLmNmZ1xmUCg1KSBhbmQgb3B0aW9uCitcZkJcLVwtbG9nXGZQKS4KKy5QCitUaGUgb3RoZXIgZmlsZXMgbGlzdGVkIGJlbG93IGFyZSBpbiB0aGVpciBkZWZhdWx0IGRpcmVjdG9yaWVzLCBzZWUgb3B0aW9uCitcZkJcLVwtYWRtaW5kaXJcZlAgdG8gc2VlIGhvdyB0byBjaGFuZ2UgbG9jYXRpb25zIG9mIHRoZXNlIGZpbGVzLgorLlRQCisuSSAvdmFyL2xpYi9kcGtnL2F2YWlsYWJsZQorTGlzdCBvZiBhdmFpbGFibGUgcGFja2FnZXMuCisuVFAKKy5JIC92YXIvbGliL2Rwa2cvc3RhdHVzCitTdGF0dXNlcyBvZiBhdmFpbGFibGUgcGFja2FnZXMuIFRoaXMgZmlsZSBjb250YWlucyBpbmZvcm1hdGlvbiBhYm91dAord2hldGhlciBhIHBhY2thZ2UgaXMgbWFya2VkIGZvciByZW1vdmluZyBvciBub3QsIHdoZXRoZXIgaXQgaXMKK2luc3RhbGxlZCBvciBub3QsIGV0Yy4gU2VlIHNlY3Rpb24gXGZCSU5GT1JNQVRJT04gQUJPVVQgUEFDS0FHRVNcZlAKK2ZvciBtb3JlIGluZm8uCisKK1RoZSBzdGF0dXMgZmlsZSBpcyBiYWNrZWQgdXAgZGFpbHkgaW4gXGZJL3Zhci9iYWNrdXBzXGZQLiBJdCBjYW4gYmUKK3VzZWZ1bCBpZiBpdCdzIGxvc3Qgb3IgY29ycnVwdGVkIGR1ZSB0byBmaWxlc3lzdGVtcyB0cm91Ymxlcy4KKy5QCitUaGUgZm9sbG93aW5nIGZpbGVzIGFyZSBjb21wb25lbnRzIG9mIGEgYmluYXJ5IHBhY2thZ2UuIFNlZSBcZkJkZWJcZlAoNSkKK2ZvciBtb3JlIGluZm9ybWF0aW9uIGFib3V0IHRoZW06CisuVFAKKy5JIGNvbnRyb2wKKy5UUAorLkkgY29uZmZpbGVzCisuVFAKKy5JIHByZWluc3QKKy5UUAorLkkgcG9zdGluc3QKKy5UUAorLkkgcHJlcm0KKy5UUAorLkkgcG9zdHJtCisuCisuU0ggRU5WSVJPTk1FTlQKKy5UUAorLkIgSE9NRQorSWYgc2V0LCBcZkJkcGtnXGZQIHdpbGwgdXNlIGl0IGFzIHRoZSBkaXJlY3RvcnkgZnJvbSB3aGljaCB0byByZWFkIHRoZSB1c2VyCitzcGVjaWZpYyBjb25maWd1cmF0aW9uIGZpbGUuCisuVFAKKy5CIFRNUERJUgorSWYgc2V0LCBcZkJkcGtnXGZQIHdpbGwgdXNlIGl0IGFzIHRoZSBkaXJlY3RvcnkgaW4gd2hpY2ggdG8gY3JlYXRlCit0ZW1wb3JhcnkgZmlsZXMgYW5kIGRpcmVjdG9yaWVzLgorLlRQCisuQiBQQUdFUgorVGhlIHByb2dyYW0gXGZCZHBrZ1xmUCB3aWxsIGV4ZWN1dGUgd2hlbiBkaXNwbGF5aW5nIHRoZSBjb25mZmlsZXMuCisuVFAKKy5CIFNIRUxMCitUaGUgcHJvZ3JhbSBcZkJkcGtnXGZQIHdpbGwgZXhlY3V0ZSB3aGVuIHN0YXJ0aW5nIGEgbmV3IHNoZWxsLgorLlRQCisuQiBDT0xVTU5TCitTZXRzIHRoZSBudW1iZXIgb2YgY29sdW1ucyBcZkJkcGtnXGZQIHNob3VsZCB1c2Ugd2hlbiBkaXNwbGF5aW5nIGZvcm1hdHRlZAordGV4dC4gQ3VycmVudGx5IG9ubHkgdXNlZCBieSBcLWwuCisuVFAKKy5CIERQS0dfU0hFTExfUkVBU09OCitEZWZpbmVkIGJ5IFxmQmRwa2dcZlAgb24gdGhlIHNoZWxsIHNwYXduZWQgb24gdGhlIGNvbmZmaWxlIHByb21wdCB0bworZXhhbWluZSB0aGUgc2l0dWF0aW9uLiBDdXJyZW50IHZhbGlkIHZhbHVlOiBcZkJjb25mZmlsZVwtcHJvbXB0XGZQLgorLlRQCisuQiBEUEtHX0NPTkZGSUxFX09MRAorRGVmaW5lZCBieSBcZkJkcGtnXGZQIG9uIHRoZSBzaGVsbCBzcGF3bmVkIG9uIHRoZSBjb25mZmlsZSBwcm9tcHQgdG8KK2V4YW1pbmUgdGhlIHNpdHVhdGlvbi4gQ29udGFpbnMgdGhlIHBhdGggdG8gdGhlIG9sZCBjb25mZmlsZS4KKy5UUAorLkIgRFBLR19DT05GRklMRV9ORVcKK0RlZmluZWQgYnkgXGZCZHBrZ1xmUCBvbiB0aGUgc2hlbGwgc3Bhd25lZCBvbiB0aGUgY29uZmZpbGUgcHJvbXB0IHRvCitleGFtaW5lIHRoZSBzaXR1YXRpb24uIENvbnRhaW5zIHRoZSBwYXRoIHRvIHRoZSBuZXcgY29uZmZpbGUuCisuVFAKKy5CIERQS0dfUlVOTklOR19WRVJTSU9OCitEZWZpbmVkIGJ5IFxmQmRwa2dcZlAgb24gdGhlIG1haW50YWluZXIgc2NyaXB0IGVudmlyb25tZW50IHRvIHRoZQordmVyc2lvbiBvZiB0aGUgY3VycmVudGx5IHJ1bm5pbmcgXGZCZHBrZ1xmUCBpbnN0YW5jZS4KKy5UUAorLkIgRFBLR19NQUlOVFNDUklQVF9QQUNLQUdFCitEZWZpbmVkIGJ5IFxmQmRwa2dcZlAgb24gdGhlIG1haW50YWluZXIgc2NyaXB0IGVudmlyb25tZW50IHRvIHRoZQorcGFja2FnZSBuYW1lIGJlaW5nIGhhbmRsZWQuCisuVFAKKy5CIERQS0dfTUFJTlRTQ1JJUFRfQVJDSAorRGVmaW5lZCBieSBcZkJkcGtnXGZQIG9uIHRoZSBtYWludGFpbmVyIHNjcmlwdCBlbnZpcm9ubWVudCB0byB0aGUKK2FyY2hpdGVjdHVyZSB0aGUgcGFja2FnZSBnb3QgYnVpbHQgZm9yLgorLlRQCisuQiBEUEtHX01BSU5UU0NSSVBUX05BTUUKK0RlZmluZWQgYnkgXGZCZHBrZ1xmUCBvbiB0aGUgbWFpbnRhaW5lciBzY3JpcHQgZW52aXJvbm1lbnQgdG8gdGhlCituYW1lIG9mIHRoZSBzY3JpcHQgcnVubmluZyAocHJlaW5zdCwgcG9zdGluc3QsIHByZXJtLCBwb3N0cm0pLgorLgorLlNIIEVYQU1QTEVTCitUbyBsaXN0IHBhY2thZ2VzIHJlbGF0ZWQgdG8gdGhlIGVkaXRvciBcZkJ2aVxmUCgxKToKKy5icgorXGZCICAgICBkcGtnIFwtbCBcKGFxKnZpKlwoYXFcZlAKKy5icgorCitUbyBzZWUgdGhlIGVudHJpZXMgaW4gXGZJL3Zhci9saWIvZHBrZy9hdmFpbGFibGVcZlAgb2YgdHdvIHBhY2thZ2VzOgorLmJyCitcZkIgICAgIGRwa2cgXC1cLXByaW50XC1hdmFpbCBlbHZpcyB2aW0gfCBsZXNzXGZQCisuYnIKKworVG8gc2VhcmNoIHRoZSBsaXN0aW5nIG9mIHBhY2thZ2VzIHlvdXJzZWxmOgorLmJyCitcZkIgICAgIGxlc3MgL3Zhci9saWIvZHBrZy9hdmFpbGFibGVcZlAKKy5icgorCitUbyByZW1vdmUgYW4gaW5zdGFsbGVkIGVsdmlzIHBhY2thZ2U6CisuYnIKK1xmQiAgICAgZHBrZyBcLXIgZWx2aXNcZlAKKy5icgorCitUbyBpbnN0YWxsIGEgcGFja2FnZSwgeW91IGZpcnN0IG5lZWQgdG8gZmluZCBpdCBpbiBhbiBhcmNoaXZlIG9yCitDRFJPTS4gVGhlICJhdmFpbGFibGUiIGZpbGUgc2hvd3MgdGhhdCB0aGUgdmltIHBhY2thZ2UgaXMgaW4gc2VjdGlvbgorImVkaXRvcnMiOgorLmJyCitcZkIgICAgIGNkIC9tZWRpYS9jZHJvbS9wb29sL21haW4vdi92aW1cZlAKK1xmQiAgICAgZHBrZyBcLWkgdmltXzQuNVwtMy5kZWJcZlAKKy5icgorCitUbyBtYWtlIGEgbG9jYWwgY29weSBvZiB0aGUgcGFja2FnZSBzZWxlY3Rpb24gc3RhdGVzOgorLmJyCitcZkIgICAgIGRwa2cgXC1cLWdldFwtc2VsZWN0aW9ucyA+bXlzZWxlY3Rpb25zXGZQCisuYnIKKworWW91IG1pZ2h0IHRyYW5zZmVyIHRoaXMgZmlsZSB0byBhbm90aGVyIGNvbXB1dGVyLCBhbmQgaW5zdGFsbCBpdCB0aGVyZQord2l0aDoKKy5icgorXGZCICAgICBkcGtnIFwtXC1jbGVhclwtc2VsZWN0aW9uc1xmUAorXGZCICAgICBkcGtnIFwtXC1zZXRcLXNlbGVjdGlvbnMgPG15c2VsZWN0aW9uc1xmUAorLmJyCisKK05vdGUgdGhhdCB0aGlzIHdpbGwgbm90IGFjdHVhbGx5IGluc3RhbGwgb3IgcmVtb3ZlIGFueXRoaW5nLCBidXQganVzdAorc2V0IHRoZSBzZWxlY3Rpb24gc3RhdGUgb24gdGhlIHJlcXVlc3RlZCBwYWNrYWdlcy4gWW91IHdpbGwgbmVlZCBzb21lCitvdGhlciBhcHBsaWNhdGlvbiB0byBhY3R1YWxseSBkb3dubG9hZCBhbmQgaW5zdGFsbCB0aGUgcmVxdWVzdGVkCitwYWNrYWdlcy4gRm9yIGV4YW1wbGUsIHJ1biBcZkJhcHRcLWdldCBkc2VsZWN0XC11cGdyYWRlXGZQLgorCitPcmRpbmFyaWx5LCB5b3Ugd2lsbCBmaW5kIHRoYXQgXGZCZHNlbGVjdFxmUCgxKSBwcm92aWRlcyBhIG1vcmUKK2NvbnZlbmllbnQgd2F5IHRvIG1vZGlmeSB0aGUgcGFja2FnZSBzZWxlY3Rpb24gc3RhdGVzLgorLmJyCisuCisuU0ggQURESVRJT05BTCBGVU5DVElPTkFMSVRZCitBZGRpdGlvbmFsIGZ1bmN0aW9uYWxpdHkgY2FuIGJlIGdhaW5lZCBieSBpbnN0YWxsaW5nIGFueSBvZiB0aGUKK2ZvbGxvd2luZyBwYWNrYWdlczogXGZCYXB0XGZSLCBcZkJhcHRpdHVkZVxmUiBhbmQgXGZCZGVic3Vtc1xmUi4KKy4KKy5TSCBTRUUgQUxTTworXGZCYXB0aXR1ZGVcZlAoMSksCitcZkJhcHRcZlAoMSksCitcZkJkc2VsZWN0XGZQKDEpLAorXGZCZHBrZ1wtZGViXGZQKDEpLAorXGZCZHBrZ1wtcXVlcnlcZlAoMSksCitcZkJkZWJcZlAoNSksCitcZkJkZWJcLWNvbnRyb2xcZlAoNSksCitcZkJkcGtnLmNmZ1xmUCg1KSwKK2FuZAorXGZCZHBrZ1wtcmVjb25maWd1cmVcZlAoOCkuCisuCisuU0ggQlVHUworXGZCXC1cLW5vXC1hY3RcZlAgdXN1YWxseSBnaXZlcyBsZXNzIGluZm9ybWF0aW9uIHRoYW4gbWlnaHQgYmUgaGVscGZ1bC4KKy4KKy5TSCBBVVRIT1JTCitTZWUgXGZJL3Vzci9zaGFyZS9kb2MvZHBrZy9USEFOS1NcZlAgZm9yIHRoZSBsaXN0IG9mIHBlb3BsZSB3aG8gaGF2ZQorY29udHJpYnV0ZWQgdG8gXGZCZHBrZ1xmUC4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL2Rwa2cuY2ZnLjUgYi9kcGtnLTEuMTYuMS4xL21hbi9kcGtnLmNmZy41Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmE2YmEwZDIKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9kcGtnLmNmZy41CkBAIC0wLDAgKzEsMjQgQEAKKy5USCBkcGtnLmNmZyA1ICIyMDA5LTA5LTA1IiAiRGViaWFuIFByb2plY3QiICJkcGtnIHN1aXRlIgorLlNIIE5BTUUKK2Rwa2cuY2ZnIFwtIGRwa2cgY29uZmlndXJhdGlvbiBmaWxlCisuCisuU0ggREVTQ1JJUFRJT04KK1RoaXMgZmlsZSBjb250YWlucyBkZWZhdWx0IG9wdGlvbnMgZm9yIGRwa2cuIEVhY2ggbGluZSBjb250YWlucyBhCitzaW5nbGUgb3B0aW9uIHdoaWNoIGlzIGV4YWN0bHkgdGhlIHNhbWUgYXMgYSBub3JtYWwgY29tbWFuZCBsaW5lCitvcHRpb24gZm9yIGRwa2cgZXhjZXB0IGZvciB0aGUgbGVhZGluZyBkYXNoZXMgd2hpY2ggYXJlIG5vdCB1c2VkCitoZXJlLiBRdW90ZXMgc3Vycm91bmRpbmcgb3B0aW9uIHZhbHVlcyBhcmUgc3RyaXBwZWQuIENvbW1lbnRzIGFyZQorYWxsb3dlZCBieSBzdGFydGluZyBhIGxpbmUgd2l0aCBhIGhhc2ggc2lnbiAoIlxmQiNcZlIiKS4KKy4KKy5TSCBGSUxFUworLkkgL2V0Yy9kcGtnL2Rwa2cuY2ZnLmQvWzAtOWEtekEtWl8tXSoKKy5icgorLkkgL2V0Yy9kcGtnL2Rwa2cuY2ZnCisuYnIKKy5JIH4vLmRwa2cuY2ZnCisuCisuU0ggQVVUSE9SCitTZWUgXGZJL3Vzci9zaGFyZS9kb2MvZHBrZy9USEFOS1NcZlAgZm9yIHRoZSBsaXN0IG9mIHBlb3BsZSB3aG8gaGF2ZQorY29udHJpYnV0ZWQgdG8gXGZCZHBrZ1xmUC4KKy4KKy5TSCBTRUUgQUxTTworLkJSIGRwa2cgKDEpLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vZHNlbGVjdC4xIGIvZHBrZy0xLjE2LjEuMS9tYW4vZHNlbGVjdC4xCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjA2NDFhODYKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9kc2VsZWN0LjEKQEAgLTAsMCArMSw0NTggQEAKKy5USCBkc2VsZWN0IDEgIjIwMTEtMDgtMTQiICJEZWJpYW4gUHJvamVjdCIgIkRlYmlhbiIKKy5TSCBOQU1FCitkc2VsZWN0IFwtIERlYmlhbiBwYWNrYWdlIG1hbmFnZW1lbnQgZnJvbnRlbmQKKy4KKy5TSCBTWU5PUFNJUworLkIgZHNlbGVjdAorLlJJIFsgb3B0aW9uICIuLi5dIFsiIGFjdGlvbiBdCisuCisuU0ggREVTQ1JJUFRJT04KKy5CIGRzZWxlY3QKK2lzIG9uZSBvZiB0aGUgcHJpbWFyeSB1c2VyIGludGVyZmFjZXMgZm9yIG1hbmFnaW5nIHBhY2thZ2VzIG9uIGEgRGViaWFuCitzeXN0ZW0uIEF0IHRoZSBcZkJkc2VsZWN0XGZQIG1haW4gbWVudSwgdGhlIHN5c3RlbSBhZG1pbmlzdHJhdG9yIGNhbjoKKyAtIFVwZGF0ZSB0aGUgbGlzdCBvZiBhdmFpbGFibGUgcGFja2FnZSB2ZXJzaW9ucywKKyAtIFZpZXcgdGhlIHN0YXR1cyBvZiBpbnN0YWxsZWQgYW5kIGF2YWlsYWJsZSBwYWNrYWdlcywKKyAtIEFsdGVyIHBhY2thZ2Ugc2VsZWN0aW9ucyBhbmQgbWFuYWdlIGRlcGVuZGVuY2llcywKKyAtIEluc3RhbGwgbmV3IHBhY2thZ2VzIG9yIHVwZ3JhZGUgdG8gbmV3ZXIgdmVyc2lvbnMuCisuUFAKKy5CIGRzZWxlY3QKK29wZXJhdGVzIGFzIGEgZnJvbnQtZW5kIHRvIFxmQmRwa2dcZlAoMSksIHRoZSBsb3ctbGV2ZWwgZGViaWFuIHBhY2thZ2UKK2hhbmRsaW5nIHRvb2wuIEl0IGZlYXR1cmVzIGEgZnVsbC1zY3JlZW4gcGFja2FnZSBzZWxlY3Rpb25zIG1hbmFnZXIKK3dpdGggcGFja2FnZSBkZXBlbmRzIGFuZCBjb25mbGljdHMgcmVzb2x2ZXIuIFdoZW4gcnVuIHdpdGggYWRtaW5pc3RyYXRvcgorcHJpdmlsZWdlcywgcGFja2FnZXMgY2FuIGJlIGluc3RhbGxlZCwgdXBncmFkZWQgYW5kIHJlbW92ZWQuIFZhcmlvdXMKK2FjY2VzcyBtZXRob2RzIGNhbiBiZSBjb25maWd1cmVkIHRvIHJldHJpZXZlIGF2YWlsYWJsZSBwYWNrYWdlIHZlcnNpb24KK2luZm9ybWF0aW9uIGFuZCBpbnN0YWxsYWJsZSBwYWNrYWdlcyBmcm9tIHBhY2thZ2UgcmVwb3NpdG9yaWVzLgorRGVwZW5kaW5nIG9uIHRoZSB1c2VkIGFjY2VzcyBtZXRob2QsIHRoZXNlIHJlcG9zaXRvcmllcyBjYW4gYmUgcHVibGljCithcmNoaXZlIHNlcnZlcnMgb24gdGhlIGludGVybmV0LCBsb2NhbCBhcmNoaXZlIHNlcnZlcnMgb3IgY2Ryb21zLgorVGhlIHJlY29tbWVuZGVkIGFjY2VzcyBtZXRob2QgaXMgXGZJYXB0XGZQLCB3aGljaCBpcyBwcm92aWRlZCBieSB0aGUKK3BhY2thZ2UgXGZCYXB0XGZQLgorLlBQCitOb3JtYWxseSBcZkJkc2VsZWN0XGZQIGlzIGludm9rZWQgd2l0aG91dCBwYXJhbWV0ZXJzLiBBbiBpbnRlcmFjdGl2ZQorbWVudSBpcyBwcmVzZW50ZWQsIG9mZmVyaW5nIHRoZSB1c2VyIGEgbGlzdCBvZiBhY3Rpb25zLiBJZiBhbiBhY3Rpb24KK2lzIGdpdmVuIGFzIGFyZ3VtZW50LCB0aGVuIHRoYXQgYWN0aW9uIGlzIHN0YXJ0ZWQgaW1tZWRpYXRlbHkuIFNldmVyYWwKK2NvbW1hbmQgbGluZSBwYXJhbWV0ZXJzIGFyZSBzdGlsbCBhdmFpbGFibGUgdG8gbW9kaWZ5IHRoZSBydW5uaW5nIGJlaGF2aW91cgorb2YgXGZCZHNlbGVjdFxmUCBvciBzaG93IGFkZGl0aW9uYWwgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHByb2dyYW0uCisuCisuU0ggT1BUSU9OUworQWxsIG9wdGlvbnMgY2FuIGJlIHNwZWNpZmllZCBib3RoIG9uIHRoZSBjb21tYW5kIGxpbmUgYW5kIGluIHRoZSBcZkJkc2VsZWN0XGZQCitjb25maWd1cmF0aW9uIGZpbGUgXGZJL2V0Yy9kcGtnL2RzZWxlY3QuY2ZnXGZQIG9yIHRoZSBmaWxlcyBvbiB0aGUKK2NvbmZpZ3VyYXRpb24gZGlyZWN0b3J5IFxmSS9ldGMvZHBrZy9kc2VsZWN0LmNmZy5kL1xmUC4gRWFjaCBsaW5lIGluIHRoZQorY29uZmlndXJhdGlvbiBmaWxlIGlzIGVpdGhlciBhbiBvcHRpb24gKGV4YWN0bHkgdGhlIHNhbWUgYXMgdGhlCitjb21tYW5kIGxpbmUgb3B0aW9uIGJ1dCB3aXRob3V0IGxlYWRpbmcgZGFzaGVzKSBvciBhIGNvbW1lbnQgKGlmIGl0IHN0YXJ0cword2l0aCBhIFxmQiNcZlIpLgorLmJyCisuVFAKKy5CSSBcLVwtYWRtaW5kaXIgIiBkaXJlY3RvcnkiCitDaGFuZ2VzIHRoZSBkaXJlY3Rvcnkgd2hlcmUgdGhlIGRwa2cgYFxmSXN0YXR1c1xmUCcsIGBcZklhdmFpbGFibGVcZlAnIGFuZAorc2ltaWxhciBmaWxlcyBhcmUgbG9jYXRlZC4gVGhpcyBkZWZhdWx0cyB0byBcZkkvdmFyL2xpYi9kcGtnXGZQCithbmQgbm9ybWFsbHkgdGhlcmUgc2hvdWxkbid0IGJlIGFueSBuZWVkIHRvIGNoYW5nZSBpdC4KKy5UUAorLkJJIFwtXC1kZWJ1ZyAiIGZpbGUgXGZSfFxmUCAiIFwtRCBmaWxlCitUdXJuIG9uIGRlYnVnZ2luZy4gRGVidWdnaW5nIGluZm9ybWF0aW9uIGlzIHNlbnQgdG8gXGZJZmlsZVxmUC4KKy5UUAorLkIgXC1cLWV4cGVydAorVHVybnMgb24gZXhwZXJ0IG1vZGUsIGkuZS4gZG9lc24ndCBkaXNwbGF5IHBvc3NpYmx5IGFubm95aW5nIGhlbHAKK21lc3NhZ2VzLgorLlRQCisuQlIgXC1cLWNvbG91ciB8IFwtXC1jb2xvciAiIFxmSXNjcmVlbnBhcnQ6XGZQW1xmSWZvcmVncm91bmRcZlBdLFtcZkliYWNrZ3JvdW5kXGZQXVtcZkk6YXR0clxmUFtcZkkrYXR0cisuLlxmUF1dIgorQ29uZmlndXJlcyBzY3JlZW4gY29sb3JzLiBUaGlzIHdvcmtzIG9ubHkgaWYgeW91ciBkaXNwbGF5IHN1cHBvcnRzIGNvbG9ycy4KK1RoaXMgb3B0aW9uIG1heSBiZSB1c2VkIG11bHRpcGxlIHRpbWVzIChhbmQgaXMgYmVzdCB1c2VkIGluCitcZklkc2VsZWN0LmNmZ1xmUCkuIEVhY2ggdXNlIGNoYW5nZXMgdGhlIGNvbG9yIChhbmQgb3B0aW9uYWxseSwgb3RoZXIKK2F0dHJpYnV0ZXMpIG9mIG9uZSBwYXJ0IG9mIHRoZSBzY3JlZW4uCitUaGUgcGFydHMgb2YgdGhlIHNjcmVlbiAoZnJvbSB0b3AgdG8gYm90dG9tKSBhcmU6CisuUlMKKy5UUAorLkIgdGl0bGUKK1RoZSBzY3JlZW4gdGl0bGUuCisuVFAKKy5CIGxpc3RoZWFkCitUaGUgaGVhZGVyIGxpbmUgYWJvdmUgdGhlIGxpc3Qgb2YgcGFja2FnZXMuCisuVFAKKy5CIGxpc3QKK1RoZSBzY3JvbGxpbmcgbGlzdCBvZiBwYWNrYWdlcyAoYW5kIGFsc28gc29tZSBoZWxwIHRleHQpLgorLlRQCisuQiBsaXN0c2VsCitUaGUgc2VsZWN0ZWQgaXRlbSBpbiB0aGUgbGlzdC4KKy5UUAorLkIgcGtnc3RhdGUKK0luIHRoZSBsaXN0IG9mIHBhY2thZ2VzLCB0aGUgdGV4dCBpbmRpY2F0aW5nIHRoZSBjdXJyZW50IHN0YXRlIG9mIGVhY2gKK3BhY2thZ2UuCisuVFAKKy5CIHBrZ3N0YXRlc2VsCitJbiB0aGUgbGlzdCBvZiBwYWNrYWdlcywgdGhlIHRleHQgaW5kaWNhdGluZyB0aGUgY3VycmVudCBzdGF0ZSBvZiB0aGUKK2N1cnJlbnRseSBzZWxlY3RlZCBwYWNrYWdlLgorLlRQCisuQiBpbmZvaGVhZAorVGhlIGhlYWRlciBsaW5lIHRoYXQgZGlzcGxheXMgdGhlIHN0YXRlIG9mIHRoZSBjdXJyZW50bHkgc2VsZWN0ZWQgcGFja2FnZS4KKy5UUAorLkIgaW5mb2Rlc2MKK1RoZSBwYWNrYWdlJ3Mgc2hvcnQgZGVzY3JpcHRpb24uCisuVFAKKy5CIGluZm8KK1VzZWQgdG8gZGlzcGxheSBwYWNrYWdlIGluZm8gc3VjaCBhcyB0aGUgcGFja2FnZSdzIGRlc2NyaXB0aW9uLgorLlRQCisuQiBpbmZvZm9vdAorVGhlIGxhc3QgbGluZSBvZiB0aGUgc2NyZWVuIHdoZW4gc2VsZWN0aW5nIHBhY2thZ2VzLgorLlRQCisuQiBxdWVyeQorVXNlZCB0byBkaXNwbGF5IHF1ZXJ5IGxpbmVzCisuVFAKKy5CIGhlbHBzY3JlZW4KK0NvbG9yIG9mIGhlbHAgc2NyZWVucy4KKy5SRQorLlAKK0FmdGVyIHRoZSBwYXJ0IG9mIHRoZSBzY3JlZW4gY29tZXMgYSBjb2xvbiBhbmQgdGhlIGNvbG9yIHNwZWNpZmljYXRpb24uIFlvdQorY2FuIHNwZWNpZnkgZWl0aGVyIHRoZSBmb3JlZ3JvdW5kIGNvbG9yLCB0aGUgYmFja2dyb3VuZCBjb2xvciwgb3IgYm90aCwKK292ZXJyaWRpbmcgdGhlIGNvbXBpbGVkLWluIGNvbG9ycy4gVXNlIHN0YW5kYXJkIGN1cnNlcyBjb2xvciBuYW1lcy4KKy5QCitPcHRpb25hbGx5LCBhZnRlciB0aGUgY29sb3Igc3BlY2lmaWNhdGlvbiBpcyBhbm90aGVyIGNvbG9uLCBhbmQgYW4KK2F0dHJpYnV0ZSBzcGVjaWZpY2F0aW9uLiBUaGlzIGlzIGEgbGlzdCBvZiBvbmUgb3IgbW9yZSBhdHRyaWJ1dGVzLAorc2VwYXJhdGVkIGJ5IHBsdXMgKCIrIikgY2hhcmFjdGVycy4gQXZhaWxhYmxlIGF0dHJpYnV0ZXMgaW5jbHVkZSAobm90IGFsbAorb2YgdGhlc2Ugd2lsbCB3b3JrIG9uIGFsbCB0ZXJtaW5hbHMpOiBub3JtYWwsIHN0YW5kb3V0LCB1bmRlcmxpbmUsIHJldmVyc2UsCitibGluaywgYnJpZ2h0LCBkaW0sIGJvbGQKKy5UUAorLkIgXC1cLWhlbHAKK1ByaW50IGEgYnJpZWYgaGVscCB0ZXh0IGFuZCBleGl0IHN1Y2Nlc3NmdWxseS4KKy5UUAorLkIgXC1cLXZlcnNpb24KK1ByaW50IHZlcnNpb24gaW5mb3JtYXRpb24gYW5kIGV4aXQgc3VjY2Vzc2Z1bGx5LgorLgorLlNIIEFDVElPTlMKK1doZW4KKy5CIGRzZWxlY3QKK2lzIHN0YXJ0ZWQgaXQgY2FuIHBlcmZvcm0gdGhlIGZvbGxvd2luZyBhY3Rpb25zLCBlaXRoZXIgZGlyZWN0bHkgaWYgaXQKK3dhcyBzcGVjaWZpZWQgb24gdGhlIGNvbW1hbmQgbGluZSBvciBieSBwcm9tcHRpbmcgdGhlIHVzZXIgd2l0aCBhIG1lbnUKK29mIGF2YWlsYWJsZSBhY3Rpb25zIGlmIHJ1bm5pbmcgaW50ZXJhY3RpdmVseToKKy5TUyBhY2Nlc3MKK0Nob29zZSBhbmQgY29uZmlndXJlIGFuIGFjY2VzcyBtZXRob2QgdG8gYWNjZXNzIHBhY2thZ2UgcmVwb3NpdG9yaWVzLgorLnNwCitCeSBkZWZhdWx0LCBcZkJkc2VsZWN0XGZQIHByb3ZpZGVzIHNldmVyYWwgbWV0aG9kcyBzdWNoCithcyBcZkljZHJvbVxmUCwgXGZJbXVsdGlfY2RcZlAsIFxmSW5mc1xmUCwgXGZJbXVsdGlfbmZzXGZQLCBcZkloYXJkZGlza1xmUCwKK1xmSW1vdW50ZWRcZlAsIFxmSW11bHRpX21vdW50XGZQLCBcZklmbG9wcHlcZlAgb3IgXGZJZnRwXGZQLCBidXQgb3RoZXIKK3BhY2thZ2VzIG1heSBwcm92aWRlIGFkZGl0aW9uYWwgbWV0aG9kcywgZWcuIHRoZSBcZklhcHRcZlAgYWNjZXNzIG1ldGhvZAorcHJvdmlkZWQgYnkgdGhlIFxmQmFwdFxmUCBwYWNrYWdlLgorLnNwCitUaGUgdXNlIG9mIHRoZSBcZklhcHRcZlAgYWNjZXNzIG1ldGhvZCBpcyBzdHJvbmdseSByZWNvbW1lbmRlZC4KKy5zcAorLlNTIHVwZGF0ZQorUmVmcmVzaCB0aGUgYXZhaWxhYmxlIHBhY2thZ2VzIGRhdGFiYXNlLgorLnNwCitSZXRyaWV2ZXMgYSBsaXN0IG9mIGF2YWlsYWJsZSBwYWNrYWdlIHZlcnNpb25zIGZyb20gdGhlIHBhY2thZ2UKK3JlcG9zaXRvcnksIGNvbmZpZ3VyZWQgZm9yIHRoZSBjdXJyZW50IGFjY2VzcyBtZXRob2QsIGFuZCB1cGRhdGUKK3RoZSBkcGtnIGRhdGFiYXNlLiBUaGUgcGFja2FnZSBsaXN0cyBhcmUgY29tbW9ubHkgcHJvdmlkZWQgYnkgdGhlCityZXBvc2l0b3J5IGFzIGZpbGVzIG5hbWVkIFxmSVBhY2thZ2VzXGZQIG9yIFxmSVBhY2thZ2VzLmd6XGZQLgorVGhlc2UgZmlsZXMgY2FuIGJlIGdlbmVyYXRlZCBieSByZXBvc2l0b3J5IG1haW50YWluZXJzLCB1c2luZyB0aGUKK3Byb2dyYW0gXGZCZHBrZ1wtc2NhbnBhY2thZ2VzXGZQKDEpLgorLnNwCitEZXRhaWxzIG9mIHRoZSB1cGRhdGUgYWN0aW9uIGRlcGVuZCBvbiB0aGUgYWNjZXNzIG1ldGhvZCdzIGltcGxlbWVudGF0aW9uLgorTm9ybWFsbHkgdGhlIHByb2Nlc3MgaXMgc3RyYWlnaHRmb3J3YXJkIGFuZCByZXF1aXJlcyBubyB1c2VyIGludGVyYWN0aW9uLgorLnNwCisuU1Mgc2VsZWN0CitWaWV3IG9yIG1hbmFnZSBwYWNrYWdlIHNlbGVjdGlvbnMgYW5kIGRlcGVuZGVuY2llcy4KKy5zcAorVGhpcyBpcyB0aGUgbWFpbiBmdW5jdGlvbiBvZiBcZkJkc2VsZWN0XGZQLiBJbiB0aGUgc2VsZWN0IHNjcmVlbiwgdGhlCit1c2VyIGNhbiByZXZpZXcgYSBsaXN0IG9mIGFsbCBhdmFpbGFibGUgYW5kIGluc3RhbGxlZCBwYWNrYWdlcy4gV2hlbiBydW4KK3dpdGggYWRtaW5pc3RyYXRvciBwcml2aWxlZ2VzLCBpdCBpcyBhbHNvIHBvc3NpYmxlIHRvIGludGVyYWN0aXZlbHkKK2NoYW5nZSBwYWNrYWdlcyBzZWxlY3Rpb24gc3RhdGUuIFxmQmRzZWxlY3RcZlAgdHJhY2tzIHRoZSBpbXBsaWNhdGlvbnMKK29mIHRoZXNlIGNoYW5nZXMgdG8gb3RoZXIgZGVwZW5kaW5nIG9yIGNvbmZsaWN0aW5nIHBhY2thZ2VzLgorLnNwCitXaGVuIGEgY29uZmxpY3Qgb3IgZmFpbGVkIGRlcGVuZHMgaXMgZGV0ZWN0ZWQsIGEgZGVwZW5kZW5jeSByZXNvbHV0aW9uCitzdWJzY3JlZW4gaXMgcHJvbXB0ZWQgdG8gdGhlIHVzZXIuIEluIHRoaXMgc2NyZWVuLCBhIGxpc3Qgb2YgY29uZmxpY3RpbmcKK29yIGRlcGVuZGluZyBwYWNrYWdlcyBpcyBzaG93biwgYW5kIGZvciBlYWNoIHBhY2thZ2UgbGlzdGVkLCB0aGUgcmVhc29uCitmb3IgaXRzIGxpc3RpbmcgaXMgc2hvd24uIFRoZSB1c2VyIG1heSBhcHBseSB0aGUgc3VnZ2VzdGlvbnMgcHJvcG9zZWQKK2J5IFxmQmRzZWxlY3RcZlAsIG92ZXJyaWRlIHRoZW0sIG9yIGJhY2sgb3V0IGFsbCB0aGUgY2hhbmdlcywgaW5jbHVkaW5nCit0aGUgb25lcyB0aGF0IGNyZWF0ZWQgdGhlIHVucmVzb2x2ZWQgZGVwZW5kcyBvciBjb25mbGljdHMuCisuc3AKK1RoZSB1c2Ugb2YgdGhlIGludGVyYWN0aXZlIHBhY2thZ2Ugc2VsZWN0aW9ucyBtYW5hZ2VtZW50IHNjcmVlbiBpcworZXhwbGFpbmVkIGluIG1vcmUgZGV0YWlsIGJlbG93LgorLnNwCisuU1MgaW5zdGFsbAorSW5zdGFsbHMgc2VsZWN0ZWQgcGFja2FnZXMuCisuc3AKK1RoZSBjb25maWd1cmVkIGFjY2VzcyBtZXRob2Qgd2lsbCBmZXRjaCBpbnN0YWxsYWJsZSBvciB1cGdyYWRhYmxlIHBhY2thZ2VzCitmcm9tIHRoZSByZWxldmFudCByZXBvc2l0b3JpZXMgYW5kIGluc3RhbGwgdGhlc2UgdXNpbmcgXGZCZHBrZ1xmUC4KK0RlcGVuZGluZyBvbiB0aGUgaW1wbGVtZW50YXRpb24gb2YgdGhlIGFjY2VzcyBtZXRob2QsIGFsbCBwYWNrYWdlcyBjYW4KK2JlIHByZWZldGNoZWQgYmVmb3JlIGluc3RhbGxhdGlvbiwgb3IgZmV0Y2hlZCB3aGVuIG5lZWRlZC4KK1NvbWUgYWNjZXNzIG1ldGhvZHMgbWF5IGFsc28gcmVtb3ZlIHBhY2thZ2VzIHRoYXQgd2VyZSBtYXJrZWQgZm9yIHJlbW92YWwuCisuc3AKK0lmIGFuIGVycm9yIG9jY3VycmVkIGR1cmluZyBpbnN0YWxsLCBpdCBpcyB1c3VhbGx5IGFkdmlzYWJsZSB0byBydW4KK2luc3RhbGwgYWdhaW4uIEluIG1vc3QgY2FzZXMsIHRoZSBwcm9ibGVtcyB3aWxsIGRpc2FwcGVhciBvciBiZSBzb2x2ZWQuCitJZiBwcm9ibGVtcyBwZXJzaXN0IG9yIHRoZSBpbnN0YWxsYXRpb24gcGVyZm9ybWVkIHdhcyBpbmNvcnJlY3QsIHBsZWFzZQoraW52ZXN0aWdhdGUgaW50byB0aGUgY2F1c2VzIGFuZCBjaXJjdW1zdGFuY2VzLCBhbmQgZmlsZSBhIGJ1ZyBpbiB0aGUKK0RlYmlhbiBidWcgdHJhY2tpbmcgc3lzdGVtLiBJbnN0cnVjdGlvbnMgb24gaG93IHRvIGRvIHRoaXMgY2FuIGJlIGZvdW5kCithdCBodHRwOi8vYnVncy5kZWJpYW4ub3JnLyBvciBieSByZWFkaW5nIHRoZSBkb2N1bWVudGF0aW9uCitmb3IgXGZCYnVnXGZQKDEpIG9yIFxmQnJlcG9ydGJ1Z1xmUCgxKSwgaWYgdGhlc2UgYXJlIGluc3RhbGxlZC4KKy5zcAorRGV0YWlscyBvZiB0aGUgaW5zdGFsbCBhY3Rpb24gZGVwZW5kIG9uIHRoZSBhY2Nlc3MgbWV0aG9kJ3MgaW1wbGVtZW50YXRpb24uCitUaGUgdXNlcidzIGF0dGVudGlvbiBhbmQgaW5wdXQgbWF5IGJlIHJlcXVpcmVkIGR1cmluZyBpbnN0YWxsYXRpb24sCitjb25maWd1cmF0aW9uIG9yIHJlbW92YWwgb2YgcGFja2FnZXMuIFRoaXMgZGVwZW5kcyBvbiB0aGUgbWFpbnRhaW5lcgorc2NyaXB0cyBpbiB0aGUgcGFja2FnZS4gU29tZSBwYWNrYWdlcyBtYWtlIHVzZSBvZiB0aGUgXGZCZGViY29uZlxmUCgxKQorbGlicmFyeSwgYWxsb3dpbmcgZm9yIG1vcmUgZmxleGlibGUgb3IgZXZlbiBhdXRvbWF0ZWQgaW5zdGFsbGF0aW9uCitzZXR1cHMuCisuc3AKKy5TUyBjb25maWcKK0NvbmZpZ3VyZXMgYW55IHByZXZpb3VzbHkgaW5zdGFsbGVkLCBidXQgbm90IGZ1bGx5IGNvbmZpZ3VyZWQgcGFja2FnZXMuCisuc3AKKy5TUyByZW1vdmUKK1JlbW92ZXMgb3IgcHVyZ2VzIGluc3RhbGxlZCBwYWNrYWdlcywgdGhhdCBhcmUgbWFya2VkIGZvciByZW1vdmFsLgorLnNwCisuU1MgcXVpdAorUXVpdCBcZkJkc2VsZWN0XGZQCisuc3AKK0V4aXRzIHRoZSBwcm9ncmFtIHdpdGggemVybyAoc3VjY2Vzc2Z1bCkgZXJyb3Jjb2RlLgorLnNwCisuCisuU0ggUGFja2FnZSBzZWxlY3Rpb25zIG1hbmFnZW1lbnQKKy5zcAorLlNTIEludHJvZHVjdGlvbgorLnNwCisuQiBkc2VsZWN0CitkaXJlY3RseSBleHBvc2VzCit0aGUgYWRtaW5pc3RyYXRvciB0byBzb21lIG9mIHRoZSBjb21wbGV4aXRpZXMgaW52b2x2ZWQgd2l0aCBtYW5hZ2luZworbGFyZ2Ugc2V0cyBvZiBwYWNrYWdlcyB3aXRoIG1hbnkgaW50ZXJkZXBlbmRlbmNpZXMuIEZvciBhIHVzZXIgd2hvIGlzCit1bmZhbWlsaWFyIHdpdGggdGhlIGNvbmNlcHRzIGFuZCB0aGUgd2F5cyBvZiB0aGUgZGViaWFuIHBhY2thZ2UgbWFuYWdlbWVudAorc3lzdGVtLCBpdCBjYW4gYmUgcXVpdGUgb3ZlcndoZWxtaW5nLiBBbHRob3VnaCBcZkJkc2VsZWN0XGZQIGlzIGFpbWVkCithdCBlYXNpbmcgcGFja2FnZSBtYW5hZ2VtZW50IGFuZCBhZG1pbmlzdHJhdGlvbiwgaXQgaXMgb25seSBpbnN0cnVtZW50YWwKK2luIGRvaW5nIHNvIGFuZCBjYW4gbm90IGJlIGFzc3VtZWQgdG8gYmUgYSBzdWZmaWNpZW50IHN1YnN0aXR1dGUgZm9yCithZG1pbmlzdHJhdG9yIHNraWxsIGFuZCB1bmRlcnN0YW5kaW5nLiBUaGUgdXNlciBpcyByZXF1aXJlZCB0bworYmUgZmFtaWxpYXIgd2l0aCB0aGUgY29uY2VwdHMgdW5kZXJseWluZyB0aGUgRGViaWFuIHBhY2thZ2luZyBzeXN0ZW0uCitJbiBjYXNlIG9mIGRvdWJ0LCBjb25zdWx0IHRoZSBcZkJkcGtnXGZQKDEpIG1hbnBhZ2UgYW5kIHRoZSBEZWJpYW4KK1BvbGljeSBtYW51YWwsIGNvbnRhaW5lZCBpbiB0aGUKKy5CIGRlYmlhblwtcG9saWN5CitwYWNrYWdlLgorLnNwCitVbmxlc3MgXGZCZHNlbGVjdFxmUCBpcyBydW4gaW4gZXhwZXJ0CitvciBpbW1lZGlhdGUgbW9kZSwgYSBoZWxwIHNjcmVlbiBpcyBmaXJzdCBkaXNwbGF5ZWQgd2hlbiBjaG9vc2luZyB0aGlzCithY3Rpb24gZnJvbSB0aGUgbWVudS4gVGhlIHVzZXIgaXMgXGZJc3Ryb25nbHlcZlAgYWR2aXNlZCB0byBzdHVkeSBhbGwgb2YKK3RoZSBpbmZvcm1hdGlvbiBwcmVzZW50ZWQgaW4gdGhlIG9ubGluZSBoZWxwIHNjcmVlbnMsIHdoZW4gb25lIHBvcHMgdXAuCitUaGUgb25saW5lIGhlbHAgc2NyZWVucyBjYW4gYXQgYW55IHRpbWUgYmUgaW52b2tlZCB3aXRoIHRoZSBcZkInPydcZlAga2V5LgorLnNwCisuU1MgU2NyZWVuIGxheW91dAorLnNwCitUaGUgc2VsZWN0IHNjcmVlbiBpcyBieSBkZWZhdWx0IHNwbGl0IGluIGEgdG9wIGFuZCBhIGJvdHRvbSBoYWxmLgorVGhlIHRvcCBoYWxmIHNob3dzIGEgbGlzdCBvZiBwYWNrYWdlcy4gQSBjdXJzb3IgYmFyIGNhbiBzZWxlY3QgYW4KK2luZGl2aWR1YWwgcGFja2FnZSwgb3IgYSBncm91cCBvZiBwYWNrYWdlcywgaWYgYXBwbGljYWJsZSwgYnkgc2VsZWN0aW5nCit0aGUgZ3JvdXAgaGVhZGVyLiBUaGUgYm90dG9tIGhhbGYgb2YgdGhlIHNjcmVlbiBzaG93cyBzb21lIGRldGFpbHMKK2Fib3V0IHRoZSBwYWNrYWdlIGN1cnJlbnRseSBzZWxlY3RlZCBpbiB0aGUgdG9wIGhhbGYgb2YgdGhlIHNjcmVlbi4KK1RoZSB0eXBlIG9mIGRldGFpbCB0aGF0IGlzIGRpc3BsYXllZCBjYW4gYmUgdmFyaWVkLgorLnNwCitQcmVzc2luZyB0aGUgXGZCJ0knXGZQIGtleSB0b2dnbGVzIGEgZnVsbC1zY3JlZW4gZGlzcGxheSBvZiB0aGUgcGFja2FnZXMKK2xpc3QsIGFuIGVubGFyZ2VkIHZpZXcgb2YgdGhlIHBhY2thZ2UgZGV0YWlscywgb3IgdGhlIGVxdWFsbHkgc3BsaXQgc2NyZWVuLgorLnNwCisuU1MgUGFja2FnZSBkZXRhaWxzIHZpZXcKKy5zcAorVGhlIHBhY2thZ2UgZGV0YWlscyB2aWV3IGJ5IGRlZmF1bHQgc2hvd3MgdGhlIGV4dGVuZGVkIHBhY2thZ2UgZGVzY3JpcHRpb24KK2ZvciB0aGUgcGFja2FnZSB0aGF0IGlzIGN1cnJlbnRseSBzZWxlY3RlZCBpbiB0aGUgcGFja2FnZXMgc3RhdHVzIGxpc3QuCitUaGUgdHlwZSBvZiBkZXRhaWwgY2FuIGJlIHRvZ2dsZWQgYnkgcHJlc3NpbmcgdGhlIFxmQidpJ1xmUCBrZXkuIFRoaXMKK2FsdGVybmF0ZXMgYmV0d2VlbjoKKyAtIHRoZSBleHRlbmRlZCBkZXNjcmlwdGlvbgorIC0gdGhlIGNvbnRyb2wgaW5mb3JtYXRpb24gZm9yIHRoZSBpbnN0YWxsZWQgdmVyc2lvbgorIC0gdGhlIGNvbnRyb2wgaW5mb3JtYXRpb24gZm9yIHRoZSBhdmFpbGFibGUgdmVyc2lvbgorLnNwCitJbiBhIGRlcGVuZGVuY3kgcmVzb2x1dGlvbiBzY3JlZW4sIHRoZXJlIGlzIGFsc28gdGhlIHBvc3NpYmlsaXR5IG9mCit2aWV3aW5nIHRoZSBzcGVjaWZpYyB1bnJlc29sdmVkIGRlcGVuZHMgb3IgY29uZmxpY3RzIHJlbGF0ZWQgdG8gdGhlCitwYWNrYWdlIGFuZCBjYXVzaW5nIGl0IHRvIGJlIGxpc3RlZC4KKy5zcAorLlNTIFBhY2thZ2VzIHN0YXR1cyBsaXN0Cisuc3AKK1RoZSBtYWluIHNlbGVjdCBzY3JlZW4gZGlzcGxheXMgYSBsaXN0IG9mIGFsbCBwYWNrYWdlcyBrbm93biB0byB0aGUgZGViaWFuCitwYWNrYWdlIG1hbmFnZW1lbnQgc3lzdGVtLiBUaGlzIGluY2x1ZGVzIHBhY2thZ2VzIGluc3RhbGxlZCBvbiB0aGUgc3lzdGVtCithbmQgcGFja2FnZXMga25vd24gZnJvbSB0aGUgYXZhaWxhYmxlIHBhY2thZ2VzIGRhdGFiYXNlLgorLnNwCitGb3IgZXZlcnkgcGFja2FnZSwgdGhlIGxpc3Qgc2hvd3MgdGhlIHBhY2thZ2UncyBzdGF0dXMsIHByaW9yaXR5LAorc2VjdGlvbiwgaW5zdGFsbGVkIGFuZCBhdmFpbGFibGUgdmVyc2lvbnMsIHRoZSBwYWNrYWdlIG5hbWUgYW5kIGl0cworc2hvcnQgZGVzY3JpcHRpb24sIGFsbCBpbiBvbmUgbGluZS4gQnkgcHJlc3NpbmcgdGhlIFxmQidWJ1xmUCBrZXksCit0aGUgZGlzcGxheSBvZiB0aGUgaW5zdGFsbGVkIGFuZCBhdmFpbGFibGUgdmVyc2lvbiBjYW4gYmUgdG9nZ2xlZCBiZXR3ZWVuCitvbiBhbiBvZmYuIEJ5IHByZXNzaW5nIHRoZSBcZkIndidcZlAga2V5LAordGhlIHBhY2thZ2Ugc3RhdHVzIGRpc3BsYXkgaXMgdG9nZ2xlZCBiZXR3ZWVuIHZlcmJvc2UgYW5kIHNob3J0aGFuZC4KK1Nob3J0aGFuZCBkaXNwbGF5IGlzIHRoZSBkZWZhdWx0LgorLnNwCitUaGUgc2hvcnRoYW5kIHN0YXR1cyBpbmRpY2F0aW9uIGNvbnNpc3RzCitvZiBmb3VyIHBhcnRzOiBhbiBlcnJvciBmbGFnLCB3aGljaCBzaG91bGQgbm9ybWFsbHkgYmUgY2xlYXIsIHRoZQorY3VycmVudCBzdGF0dXMsIHRoZSBsYXN0IHNlbGVjdGlvbiBzdGF0ZSBhbmQgdGhlIGN1cnJlbnQgc2VsZWN0aW9uIHN0YXRlLgorVGhlIGZpcnN0IHR3byByZWxhdGUgdG8gdGhlIGFjdHVhbCBzdGF0ZSBvZiB0aGUgcGFja2FnZSwgdGhlIHNlY29uZCBwYWlyCithcmUgYWJvdXQgdGhlIHNlbGVjdGlvbnMgc2V0IGJ5IHRoZSB1c2VyLgorLnNwCitUaGVzZSBhcmUgdGhlIG1lYW5pbmdzIG9mIHRoZSBzaG9ydGhhbmQgcGFja2FnZSBzdGF0dXMgaW5kaWNhdG9yIGNvZGVzOgorIEVycm9yIGZsYWc6CisgIFxmSWVtcHR5XGZQICAgbm8gZXJyb3IKKyAgXGZCUlxmUCAgICAgICBzZXJpb3VzIGVycm9yLCBuZWVkcyByZWluc3RhbGxhdGlvbjsKKyBJbnN0YWxsZWQgc3RhdGU6CisgIFxmSWVtcHR5XGZQICAgbm90IGluc3RhbGxlZDsKKyAgXGZCKlxmUCAgICAgICBmdWxseSBpbnN0YWxsZWQgYW5kIGNvbmZpZ3VyZWQ7CisgIFxmQlwtXGZQICAgICAgIG5vdCBpbnN0YWxsZWQgYnV0IHNvbWUgY29uZmlnIGZpbGVzIG1heSByZW1haW47CisgIFxmQlVcZlAgICAgICAgdW5wYWNrZWQgYnV0IG5vdCB5ZXQgY29uZmlndXJlZDsKKyAgXGZCQ1xmUCAgICAgICBoYWxmLWNvbmZpZ3VyZWQgKGFuIGVycm9yIGhhcHBlbmVkKTsKKyAgXGZCSVxmUCAgICAgICBoYWxmLWluc3RhbGxlZCAoYW4gZXJyb3IgaGFwcGVuZWQpLgorIEN1cnJlbnQgYW5kIHJlcXVlc3RlZCBzZWxlY3Rpb25zOgorICBcZkIqXGZQICAgICAgIG1hcmtlZCBmb3IgaW5zdGFsbGF0aW9uIG9yIHVwZ3JhZGU7CisgIFxmQlwtXGZQICAgICAgIG1hcmtlZCBmb3IgcmVtb3ZhbCwgY29uZmlndXJhdGlvbiBmaWxlcyByZW1haW47CisgIFxmQj1cZlAgICAgICAgb24gaG9sZDogcGFja2FnZSB3aWxsIG5vdCBiZSBwcm9jZXNzZWQgYXQgYWxsOworICBcZkJfXGZQICAgICAgIG1hcmtlZCBmb3IgcHVyZ2UsIGFsc28gcmVtb3ZlIGNvbmZpZ3VyYXRpb247CisgIFxmQm5cZlAgICAgICAgcGFja2FnZSBpcyBuZXcgYW5kIGhhcyB5ZXQgdG8gYmUgbWFya2VkLgorLnNwCisuU1MgQ3Vyc29yIGFuZCBzY3JlZW4gbW92ZW1lbnQKKy5zcAorVGhlIHBhY2thZ2Ugc2VsZWN0aW9uIGxpc3QgYW5kIHRoZSBkZXBlbmRlbmN5IGNvbmZsaWN0CityZXNvbHV0aW9uIHNjcmVlbnMgY2FuIGJlIG5hdmlnYXRlZCB1c2luZyBtb3Rpb24KK2NvbW1hbmRzIG1hcHBlZCB0byB0aGUgZm9sbG93aW5nIGtleXM6CisuYnIKKyAgXGZCcCwgVXAsIGtcZlAgICAgICAgICAgIG1vdmUgY3Vyc29yIGJhciB1cAorICBcZkJuLCBEb3duLCBqXGZQICAgICAgICAgbW92ZSBjdXJzb3IgYmFyIGRvd24KKyAgXGZCUCwgUGd1cCwgQmFja3NwYWNlXGZQIHNjcm9sbCBsaXN0IDEgcGFnZSB1cAorICBcZkJOLCBQZ2RuLCBTcGFjZVxmUCAgICAgc2Nyb2xsIGxpc3QgMSBwYWdlIGRvd24KKyAgXGZCXnBcZlAgICAgICAgICAgICAgICAgIHNjcm9sbCBsaXN0IDEgbGluZSB1cAorICBcZkJeblxmUCAgICAgICAgICAgICAgICAgc2Nyb2xsIGxpc3QgMSBsaW5lIGRvd24KKyAgXGZCdCwgSG9tZVxmUCAgICAgICAgICAgIGp1bXAgdG8gdG9wIG9mIGxpc3QKKyAgXGZCZSwgRW5kXGZQICAgICAgICAgICAgIGp1bXAgdG8gZW5kIG9mIGxpc3QKKyAgXGZCdVxmUCAgICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIDEgcGFnZSB1cAorICBcZkJkXGZQICAgICAgICAgICAgICAgICAgc2Nyb2xsIGluZm8gMSBwYWdlIGRvd24KKyAgXGZCXnVcZlAgICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIDEgbGluZSB1cAorICBcZkJeZFxmUCAgICAgICAgICAgICAgICAgc2Nyb2xsIGluZm8gMSBsaW5lIGRvd24KKyAgXGZCQiwgTGVmdC1hcnJvd1xmUCAgICAgIHBhbiBkaXNwbGF5IDEvMyBzY3JlZW4gbGVmdAorICBcZkJGLCBSaWdodC1hcnJvd1xmUCAgICAgcGFuIGRpc3BsYXkgMS8zIHNjcmVlbiByaWdodAorICBcZkJeYlxmUCAgICAgICAgICAgICAgICAgcGFuIGRpc3BsYXkgMSBjaGFyYWN0ZXIgbGVmdAorICBcZkJeZlxmUCAgICAgICAgICAgICAgICAgcGFuIGRpc3BsYXkgMSBjaGFyYWN0ZXIgcmlnaHQKKy5zcAorLlNTIFNlYXJjaGluZyBhbmQgc29ydGluZworLnNwCitUaGUgbGlzdCBvZiBwYWNrYWdlcyBjYW4gYmUgc2VhcmNoZWQgYnkgcGFja2FnZSBuYW1lLiBUaGlzCitpcyBkb25lIGJ5IHByZXNzaW5nIFxmQicvJ1xmUCwgYW5kIHR5cGluZyBhIHNpbXBsZSBzZWFyY2gKK3N0cmluZy4gVGhlIHN0cmluZyBpcyBpbnRlcnByZXRlZCBhcyBhCisuQlIgcmVnZXggKDcpCityZWd1bGFyIGV4cHJlc3Npb24uCitJZiB5b3UgYWRkIFxmQicvZCdcZlAgdG8gdGhlIHNlYXJjaCBleHByZXNzaW9uLCBkc2VsZWN0IHdpbGwgYWxzbyBzZWFyY2gKK2luIGRlc2NyaXB0aW9ucy4gSWYgeW91IGFkZCBcZkInL2knXGZQIHRoZSBzZWFyY2ggd2lsbCBiZSBjYXNlIGluc2Vuc2l0aXZlLgorWW91IG1heSBjb21iaW5lIHRoZXNlIHR3byBzdWZmaXhlcyBsaWtlIHRoaXM6IFxmQicvaWQnXGZQLgorUmVwZWF0ZWQgc2VhcmNoaW5nIGlzIGFjY29tcGxpc2hlZCBieSByZXBlYXRlZGx5IHByZXNzaW5nCit0aGUgXGZCJ24nXGZQIG9yIFxmQidcXCdcZlAga2V5cywgdW50aWwgdGhlIHdhbnRlZCBwYWNrYWdlIGlzIGZvdW5kLgorSWYgdGhlIHNlYXJjaCByZWFjaGVzIHRoZSBib3R0b20gb2YgdGhlIGxpc3QsIGl0IHdyYXBzIHRvIHRoZSB0b3AKK2FuZCBjb250aW51ZXMgc2VhcmNoaW5nIGZyb20gdGhlcmUuCisuc3AKK1RoZSBsaXN0IHNvcnQgb3JkZXIgY2FuIGJlIHZhcmllZCBieSBwcmVzc2luZwordGhlIFxmQidvJ1xmUCBhbmQgXGZCJ08nXGZQIGtleXMgcmVwZWF0ZWRseS4KK1RoZSBmb2xsb3dpbmcgbmluZSBzb3J0IG9yZGVyaW5ncyBjYW4gYmUgc2VsZWN0ZWQ6CisgYWxwaGFiZXQgICAgICAgICAgYXZhaWxhYmxlICAgICAgICAgICBzdGF0dXMKKyBwcmlvcml0eStzZWN0aW9uICBhdmFpbGFibGUrcHJpb3JpdHkgIHN0YXR1cytwcmlvcml0eQorIHNlY3Rpb24rcHJpb3JpdHkgIGF2YWlsYWJsZStzZWN0aW9uICAgc3RhdHVzK3NlY3Rpb24KKy5icgorV2hlcmUgbm90IGxpc3RlZCBhYm92ZSBleHBsaWNpdGx5LCBhbHBoYWJldGljIG9yZGVyIGlzIHVzZWQgYXMKK3RoZSBmaW5hbCBzdWJvcmRlcmluZyBzb3J0IGtleS4KKy5zcAorLlNTIEFsdGVyaW5nIHNlbGVjdGlvbnMKKy5zcAorVGhlIHJlcXVlc3RlZCBzZWxlY3Rpb24gc3RhdGUgb2YgaW5kaXZpZHVhbCBwYWNrYWdlcyBtYXkgYmUKK2FsdGVyZWQgd2l0aCB0aGUgZm9sbG93aW5nIGNvbW1hbmRzOgorICBcZkIrLCBJbnNlcnRcZlAgICAgaW5zdGFsbCBvciB1cGdyYWRlCisgIFxmQj0sIEhcZlAgICAgICAgICBob2xkIGluIHByZXNlbnQgc3RhdGUgYW5kIHZlcnNpb24KKyAgXGZCOiwgR1xmUCAgICAgICAgIHVuaG9sZDogdXBncmFkZSBvciBsZWF2ZSB1bmluc3RhbGxlZAorICBcZkJcLSwgRGVsZXRlXGZQICAgIHJlbW92ZSwgYnV0IGxlYXZlIGNvbmZpZ3VyYXRpb24KKyAgXGZCX1xmUCAgICAgICAgICAgIHJlbW92ZSAmIHB1cmdlIGNvbmZpZ3VyYXRpb24KKy5zcAorV2hlbiB0aGUgY2hhbmdlIHJlcXVlc3QgcmVzdWx0cyBpbiBvbmUgb3IgbW9yZSB1bnNhdGlzZmllZCBkZXBlbmRzCitvciBjb25mbGljdHMsIFxmQmRzZWxlY3RcZlAgcHJvbXB0cyB0aGUgdXNlciB3aXRoIGEgZGVwZW5kZW5jeSByZXNvbHV0aW9uCitzY3JlZW4uIFRoaXMgd2lsbCBiZSBmdXJ0aGVyIGV4cGxhaW5lZCBiZWxvdy4KKy5zcAorSXQgaXMgYWxzbyBwb3NzaWJsZSB0byBhcHBseSB0aGVzZSBjb21tYW5kcyB0byBncm91cHMgb2YgcGFja2FnZQorc2VsZWN0aW9ucywgYnkgcG9pbnRpbmcgdGhlIGN1cnNvciBiYXIgb250byBhIGdyb3VwIGhlYWRlci4gVGhlCitleGFjdCBncm91cGluZyBvZiBwYWNrYWdlcyBpcyBkZXBlbmRlbnQgb24gdGhlIGN1cnJlbnQgbGlzdCBvcmRlcmluZworc2V0dGluZ3MuCisuc3AKK1Byb3BlciBjYXJlIHNob3VsZCBiZSB0YWtlbiB3aGVuIGFsdGVyaW5nIGxhcmdlIGdyb3VwcyBvZiBzZWxlY3Rpb25zLAorYmVjYXVzZSB0aGlzIGNhbiBpbnN0YW50YW5lb3VzbHkgY3JlYXRlIGxhcmdlIG51bWJlcnMgb2YgdW5yZXNvbHZlZAorZGVwZW5kcyBvciBjb25mbGljdHMsIGFsbCBvZiB3aGljaCB3aWxsIGJlIGxpc3RlZCBpbiBvbmUgZGVwZW5kZW5jeQorcmVzb2x1dGlvbiBzY3JlZW4sIG1ha2luZyB0aGVtIHZlcnkgaGFyZCB0byBoYW5kbGUuIEluIHByYWN0aWNlLAorb25seSBob2xkIGFuZCB1bmhvbGQgb3BlcmF0aW9ucyBhcmUgdXNlZnVsIHdoZW4gYXBwbGllZCB0byBncm91cHMuCisuc3AKKy5TUyBSZXNvbHZpbmcgZGVwZW5kcyBhbmQgY29uZmxpY3RzCisuc3AKK1doZW4gdGhlIGNoYW5nZSByZXF1ZXN0IHJlc3VsdHMgaW4gb25lIG9yIG1vcmUgdW5zYXRpc2ZpZWQgZGVwZW5kcworb3IgY29uZmxpY3RzLCBcZkJkc2VsZWN0XGZQIHByb21wdHMgdGhlIHVzZXIgd2l0aCBhIGRlcGVuZGVuY3kgcmVzb2x1dGlvbgorc2NyZWVuLiBGaXJzdCBob3dldmVyLCBhbiBpbmZvcm1hdGl2ZSBoZWxwIHNjcmVlbiBpcyBkaXNwbGF5ZWQuCisuc3AKK1RoZSB0b3AgaGFsZiBvZiB0aGlzIHNjcmVlbiBsaXN0cyBhbGwgdGhlIHBhY2thZ2VzIHRoYXQgd2lsbCBoYXZlCit1bnJlc29sdmVkIGRlcGVuZHMgb3IgY29uZmxpY3RzLCBhcyBhIHJlc3VsdCBvZiB0aGUgcmVxdWVzdGVkIGNoYW5nZSwKK2FuZCBhbGwgdGhlIHBhY2thZ2VzIHdob3NlIGluc3RhbGxhdGlvbiBjYW4gcmVzb2x2ZSBhbnkgb2YgdGhlc2UKK2RlcGVuZHMgb3Igd2hvc2UgcmVtb3ZhbCBjYW4gcmVzb2x2ZSBhbnkgb2YgdGhlIGNvbmZsaWN0cy4KK1RoZSBib3R0b20gaGFsZiBkZWZhdWx0cyB0byBzaG93IHRoZSBkZXBlbmRzIG9yIGNvbmZsaWN0cyB0aGF0CitjYXVzZSB0aGUgY3VycmVudGx5IHNlbGVjdGVkIHBhY2thZ2UgdG8gYmUgbGlzdGVkLgorLnNwCitXaGVuIHRoZSBzdWJsaXN0IG9mIHBhY2thZ2VzIGlzIGRpc3BsYXllZCBpbml0aWFsbHksIFxmQmRzZWxlY3RcZlAKK21heSBoYXZlIGFscmVhZHkgc2V0IHRoZSByZXF1ZXN0ZWQgc2VsZWN0aW9uIHN0YXR1cyBvZiBzb21lIG9mIHRoZQorbGlzdGVkIHBhY2thZ2VzLCBpbiBvcmRlciB0byByZXNvbHZlIHRoZSBkZXBlbmRzIG9yIGNvbmZsaWN0cyB0aGF0CitjYXVzZWQgdGhlIGRlcGVuZGVuY3kgcmVzb2x1dGlvbiBzY3JlZW4gdG8gYmUgZGlzcGxheWVkLiBVc3VhbGx5LAoraXQgaXMgYmVzdCB0byBmb2xsb3cgdXAgdGhlIHN1Z2dlc3Rpb25zIG1hZGUgYnkgXGZCZHNlbGVjdFxmUC4KKy5zcAorVGhlIGxpc3RlZCBwYWNrYWdlcycgc2VsZWN0aW9uIHN0YXRlIG1heSBiZSByZXZlcnRlZCB0byB0aGUgb3JpZ2luYWwKK3NldHRpbmdzLCBhcyB0aGV5IHdlcmUgYmVmb3JlIHRoZSB1bnJlc29sdmVkIGRlcGVuZHMgb3IgY29uZmxpY3RzCit3ZXJlIGNyZWF0ZWQsIGJ5IHByZXNzaW5nIHRoZSBcZkInUidcZlAga2V5LiBCeSBwcmVzc2luZyB0aGUgXGZCJ0QnXGZQCitrZXksIHRoZSBhdXRvbWF0aWMgc3VnZ2VzdGlvbnMgYXJlIHJlc2V0LCBidXQgdGhlIGNoYW5nZSB0aGF0IGNhdXNlZAordGhlIGRlcGVuZGVuY3kgcmVzb2x1dGlvbiBzY3JlZW4gdG8gYmUgcHJvbXB0ZWQgaXMga2VwdCBhcyByZXF1ZXN0ZWQuCitGaW5hbGx5LCBieSBwcmVzc2luZyBcZkInVSdcZlAsIHRoZSBzZWxlY3Rpb25zIGFyZSBhZ2FpbiBzZXQgdG8gdGhlCithdXRvbWF0aWMgc3VnZ2VzdGlvbiB2YWx1ZXMuCisuc3AKKy5TUyBFc3RhYmxpc2hpbmcgdGhlIHJlcXVlc3RlZCBzZWxlY3Rpb25zCisuc3AKK0J5IHByZXNzaW5nIFxmQmVudGVyXGZQLCB0aGUgY3VycmVudGx5IGRpc3BsYXllZCBzZXQgb2Ygc2VsZWN0aW9ucworaXMgYWNjZXB0ZWQuIElmIFxmQmRzZWxlY3RcZlAgZGV0ZWN0cyBubyB1bnJlc29sdmVkIGRlcGVuZHMgYXMgYSByZXN1bHQKK29mIHRoZSByZXF1ZXN0ZWQgc2VsZWN0aW9ucywgdGhlIG5ldyBzZWxlY3Rpb25zIHdpbGwgYmUgc2V0LgorSG93ZXZlciwgaWYgdGhlcmUgYXJlIGFueSB1bnJlc29sdmVkIGRlcGVuZHMsIFxmQmRzZWxlY3RcZlAgd2lsbCBhZ2FpbgorcHJvbXB0IHRoZSB1c2VyIHdpdGggYSBkZXBlbmRlbmN5IHJlc29sdXRpb24gc2NyZWVuLgorLnNwCitUbyBhbHRlciBhIHNldCBvZiBzZWxlY3Rpb25zIHRoYXQgY3JlYXRlcyB1bnJlc29sdmVkIGRlcGVuZHMgb3IKK2NvbmZsaWN0cyBhbmQgZm9yY2luZyBcZkJkc2VsZWN0XGZQIHRvIGFjY2VwdCBpdCwgcHJlc3MgdGhlIFxmQidRJ1xmUAora2V5LiBUaGlzIHNldHMgdGhlIHNlbGVjdGlvbnMgYXMgc3BlY2lmaWVkIGJ5IHRoZSB1c2VyLAordW5jb25kaXRpb25hbGx5LiBHZW5lcmFsbHksIGRvbid0IGRvIHRoaXMgdW5sZXNzIHlvdSd2ZSByZWFkCit0aGUgZmluZSBwcmludC4KKy5zcAorVGhlIG9wcG9zaXRlIGVmZmVjdCwgdG8gYmFjayBvdXQgYW55IHNlbGVjdGlvbnMgY2hhbmdlIHJlcXVlc3RzIGFuZAorZ28gYmFjayB0byB0aGUgcHJldmlvdXMgbGlzdCBvZiBzZWxlY3Rpb25zLCBpcyBhdHRhaW5lZCBieSBwcmVzc2luZwordGhlIFxmQidYJ1xmUCBvciBcZkJlc2NhcGVcZlAga2V5cy4gQnkgcmVwZWF0ZWRseSBwcmVzc2luZyB0aGVzZQora2V5cywgYW55IHBvc3NpYmx5IGRldHJpbWVudGFsIGNoYW5nZXMgdG8gdGhlIHJlcXVlc3RlZCBwYWNrYWdlCitzZWxlY3Rpb25zIGNhbiBiZSBiYWNrZWQgb3V0IGNvbXBsZXRlbHkgdG8gdGhlIGxhc3QgZXN0YWJsaXNoZWQKK3NldHRpbmdzLgorLnNwCitJZiB5b3UgbWlzdGFrZW5seSBlc3RhYmxpc2ggc29tZSBzZXR0aW5ncyBhbmQgd2lzaCB0byByZXZlcnQgYWxsIHRoZQorc2VsZWN0aW9ucyB0byB3aGF0IGlzIGN1cnJlbnRseSBpbnN0YWxsZWQgb24gdGhlIHN5c3RlbSwgcHJlc3MgdGhlCitcZkInQydcZlAga2V5LgorVGhpcyBpcyBzb21ld2hhdCBzaW1pbGFyIHRvIHVzaW5nIHRoZSB1bmhvbGQgY29tbWFuZCBvbiBhbGwgcGFja2FnZXMsCitidXQgcHJvdmlkZXMgYSBtb3JlIG9idmlvdXMgcGFuaWMgYnV0dG9uIGluIGNhc2VzIHdoZXJlIHRoZSB1c2VyCitwcmVzc2VkIFxmQmVudGVyXGZQIGJ5IGFjY2lkZW50LgorLnNwCisuCisuU0ggRU5WSVJPTk1FTlQKKy5UUAorLkIgSE9NRQorSWYgc2V0LCBcZkJkc2VsZWN0XGZQIHdpbGwgdXNlIGl0IGFzIHRoZSBkaXJlY3RvcnkgZnJvbSB3aGljaCB0byByZWFkIHRoZQordXNlciBzcGVjaWZpYyBjb25maWd1cmF0aW9uIGZpbGUuCisuCisuU0ggQlVHUworVGhlCisuQiBkc2VsZWN0CitwYWNrYWdlIHNlbGVjdGlvbiBpbnRlcmZhY2UgaXMgY29uZnVzaW5nIHRvIHNvbWUgbmV3IHVzZXJzLgorUmVwb3J0ZWRseSwgaXQgZXZlbiBtYWtlcyBzZWFzb25lZCBrZXJuZWwgZGV2ZWxvcGVycyBjcnkuCisuc3AKK1RoZSBkb2N1bWVudGF0aW9uIGlzIGxhY2tpbmcuCisuc3AKK1RoZXJlIGlzIG5vIGhlbHAgb3B0aW9uIGluIHRoZSBtYWluIG1lbnUuCisuc3AKK1RoZSB2aXNpYmxlIGxpc3Qgb2YgYXZhaWxhYmxlIHBhY2thZ2VzIGNhbm5vdCBiZSByZWR1Y2VkLgorLnNwCitUaGUgYnVpbHQgaW4gYWNjZXNzIG1ldGhvZHMgY2FuIG5vIGxvbmdlciBzdGFuZCB1cCB0byBjdXJyZW50IHF1YWxpdHkKK3N0YW5kYXJkcy4gVXNlIHRoZSBhY2Nlc3MgbWV0aG9kIHByb3ZpZGVkIGJ5IGFwdCwgaXQgaXMgbm90IG9ubHkgbm90Citicm9rZW4sIGl0IGlzIGFsc28gbXVjaCBtb3JlIGZsZXhpYmxlIHRoYW4gdGhlIGJ1aWx0IGluIGFjY2VzcyBtZXRob2RzLgorLgorLlNIIFNFRSBBTFNPCisuQlIgZHBrZyAoMSksCisuQlIgYXB0XC1nZXQgKDgpLAorLkJSIHNvdXJjZXMubGlzdCAoNSksCisuQlIgZGViICg1KS4KKy4KKy5TSCBBVVRIT1JTCisuQiBkc2VsZWN0Cit3YXMgd3JpdHRlbiBieSBJYW4gSmFja3NvbiAoaWphY2tzb25AZ251LmFpLm1pdC5lZHUpLiBGdWxsIGxpc3Qgb2YKK2NvbnRyaWJ1dG9ycyBtYXkgYmUgZm91bmQgaW4gJ2RzZWxlY3QgXC1cLXZlcnNpb24nLgorLmJyCitUaGlzIG1hbnVhbCBwYWdlIHdhcyB3cml0dGVuIGJ5IEp1aG8gVnVvcmkgPGphdnVvcmlAY2MuaGVsc2lua2kuZmk+LAorSm9zaXAgUm9kaW4gYW5kIEpvb3N0IGtvb2lqLgorCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9kc2VsZWN0LmNmZy41IGIvZHBrZy0xLjE2LjEuMS9tYW4vZHNlbGVjdC5jZmcuNQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44NzcwYTk1Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vZHNlbGVjdC5jZmcuNQpAQCAtMCwwICsxLDI0IEBACisuVEggZHNlbGVjdC5jZmcgNSAiMjAxMS0wNy0wMyIgIkRlYmlhbiBQcm9qZWN0IiAiZHBrZyBzdWl0ZSIKKy5TSCBOQU1FCitkc2VsZWN0LmNmZyBcLSBkc2VsZWN0IGNvbmZpZ3VyYXRpb24gZmlsZQorLgorLlNIIERFU0NSSVBUSU9OCitUaGlzIGZpbGUgY29udGFpbnMgZGVmYXVsdCBvcHRpb25zIGZvciBkc2VsZWN0LiBFYWNoIGxpbmUgY29udGFpbnMgYQorc2luZ2xlIG9wdGlvbiB3aGljaCBpcyBleGFjdGx5IHRoZSBzYW1lIGFzIGEgbm9ybWFsIGNvbW1hbmQgbGluZQorb3B0aW9uIGZvciBkc2VsZWN0IGV4Y2VwdCBmb3IgdGhlIGxlYWRpbmcgZGFzaGVzIHdoaWNoIGFyZSBub3QgdXNlZAoraGVyZS4gUXVvdGVzIHN1cnJvdW5kaW5nIG9wdGlvbiB2YWx1ZXMgYXJlIHN0cmlwcGVkLiBDb21tZW50cyBhcmUKK2FsbG93ZWQgYnkgc3RhcnRpbmcgYSBsaW5lIHdpdGggYSBoYXNoIHNpZ24gKCJcZkIjXGZSIikuCisuCisuU0ggRklMRVMKKy5JIC9ldGMvZHBrZy9kc2VsZWN0LmNmZy5kL1swLTlhLXpBLVpfLV0qCisuYnIKKy5JIC9ldGMvZHBrZy9kc2VsZWN0LmNmZworLmJyCisuSSB+Ly5kc2VsZWN0LmNmZworLgorLlNIIEFVVEhPUgorU2VlIFxmSS91c3Ivc2hhcmUvZG9jL2Rwa2cvVEhBTktTXGZQIGZvciB0aGUgbGlzdCBvZiBwZW9wbGUgd2hvIGhhdmUKK2NvbnRyaWJ1dGVkIHRvIFxmQmRzZWxlY3RcZlAuCisuCisuU0ggU0VFIEFMU08KKy5CUiBkc2VsZWN0ICgxKS4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL2VzL2RlYi1leHRyYS1vdmVycmlkZS41IGIvZHBrZy0xLjE2LjEuMS9tYW4vZXMvZGViLWV4dHJhLW92ZXJyaWRlLjUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uY2Y0Zjg4MQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL2VzL2RlYi1leHRyYS1vdmVycmlkZS41CkBAIC0wLDAgKzEsNTAgQEAKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlRIIGRlYlwtZXh0cmFcLW92ZXJyaWRlIDUgIjE2IGRlIEFnb3N0byBkZSAyMDA4IiAiUHJveWVjdG8gRGViaWFuIiAiSGVycmFtaWVudGFzIGRlIGRwa2ciCisuU0ggTk9NQlJFCitkZWJcLWV4dHJhXC1vdmVycmlkZSBcLSBGaWNoZXJvIGRlIHN1c3RpdHVjaW9uZXMgYWRpY2lvbmFsIGRlIGFyY2hpdm8gZGUgRGViaWFuCisuCisuU0ggU0lOT1BTSVMKK292ZXJyaWRlCisuCisuU0ggREVTQ1JJUENJ004KK01pZW50cmFzIHF1ZSBwdWVkZSBlbmNvbnRyYXIgbGEgbWF5b3LtYSBkZSBsYSBpbmZvcm1hY2nzbiBkZSB1biBwYXF1ZXRlCitiaW5hcmlvIG8gZnVlbnRlIGVuIGVsIGZpY2hlcm8gq2NvbnRyb2wvLmRzY7ssIHB1ZWRlIHN1c3RpdHVpciB0b2RvIHN1Citjb250ZW5pZG8gYWwgZXhwb3J0YXJsbyBhIGxvcyBmaWNoZXJvcyCrUGFja2FnZXO7IHkgq1NvdXJjZXO7LiBFbCBmaWNoZXJvCiurb3ZlcnJpZGW7IGFkaWNpb25hbCAoaS5lLiCrb3ZlcnJpZGUubGVubnkuZXh0cmEuZ3q7KSBjb250aWVuZSB0YWxlcworc3VzdGl0dWNpb25lcy4KKy5QUAorRWwgZmljaGVybyCrb3ZlcnJpZGW7IGFkaWNpb25hbCB0aWVuZSB1biBmb3JtYXRvIHNpbXBsZSwgZGVsaW1pdGFkbyBwb3IKK2VzcGFjaW9zIGVuIGJsYW5jby4gU2UgcGVybWl0ZW4gY29tZW50YXJpb3MgcHJlY2VkaWRvcyBkZSBcZkIjXGZQLgorLlBQCisuaW4gKzUKK1xmSXBhcXVldGVcZlAgXGZJbm9tYnJlXC1kZWxcLWNhbXBvXGZQIFxmSXZhbG9yXGZQCisuaW4gLTUKKy5QUAorXGZJcGFxdWV0ZVxmUCBlcyBlbCBub21icmUgZGVsIHBhcXVldGUgYmluYXJpbyBvIGZ1ZW50ZS4KKy5QUAorXGZJbm9tYnJlXC1kZWxcLWNhbXBvXGZQIGVzIGVsIG5vbWJyZSBkZWwgY2FtcG8gYSBzdXN0aXR1aXIsIHkgXGZJdmFsb3JcZlAgZXMgZWwKK3ZhbG9yIGEgaW5zZXJ0YXIgZW4gZWwgY2FtcG8uIFB1ZWRlIGNvbnRlbmVyIGVzcGFjaW9zIHlhIHF1ZSBsYSBs7W5lYSBzZQorZGl2aWRlIGVuIGFsIG1lbm9zIDMgY29sdW1uYXMgZHVyYW50ZSBlbCBhbuFsaXNpcy4KKy5QUAorTG9zIGZpY2hlcm9zIKtvdmVycmlkZbsgYWRpY2lvbmFsZXMgcXVlIHNlIHVzYW4gcGFyYSBoYWNlciBsYXMgbGlzdGFzIGRlCitwYXF1ZXRlcyBvZmljaWFsZXMgc3VlbGVuIGVuY29udHJhcnNlIGVuIGVsIGRpcmVjdG9yaW8gXGZJaW5kaWNlc1xmUCBkZQorY3VhbHF1aWVyIHLpcGxpY2EgZGUgRGViaWFuLgorLgorLlNIICJWyUFTRSBUQU1CSclOIgorXGZCZHBrZ1wtc2NhbnBhY2thZ2VzXGZQKDEpLCBcZkJkcGtnXC1zY2Fuc291cmNlc1xmUCgxKSwgXGZCYXB0XC1mdHBhcmNoaXZlXGZQKDEpLgorLlNIICJUUkFEVUNUT1IiCitSdWR5IEdvZG95IDxydWR5QGtlcm5lbFwtcGFuaWsub3JnPiwKK1J1YuluIFBvcnJhcyA8bmFob29AaW5pY2lhLmVzPiwKK0JydW5vIEJhcnJlcmEgQy4gPGJydW5vLmJhcnJlcmFAaWdsb28uY2w+LAorQ2FybG9zIEl6cXVpZXJkbyA8Z2hlZXNoQGVydGlzLm5ldD4sCitFc3RlYmFuIE1hbmNoYWRvIHkKK05PSy4KK0RlYmlhbiBMMTBuIFNwYW5pc2ggPGRlYmlhblwtbDEwblwtc3BhbmlzaEBsaXN0cy5kZWJpYW4ub3JnPi4KKy5icgorUmV2aXNpb25lcyBwb3IgU2FudGlhZ28gVmlsYSA8c2FudmlsYUB1bmV4LmVzPiwKK0phdmllciBGZXJu4W5kZXpcLVNhbmd1aW5vLCBSdWLpbiBQb3JyYXMsCitMdWlzIFVyaWJlIHkgT21hciBDYW1wYWduZS4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL2VzL2RlYi1vbGQuNSBiL2Rwa2ctMS4xNi4xLjEvbWFuL2VzL2RlYi1vbGQuNQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jZDE1NWFlCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vZXMvZGViLW9sZC41CkBAIC0wLDAgKzEsNTkgQEAKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlRIIGRlYlwtb2xkIDUgMjAxMVwtMDhcLTE0ICJQcm95ZWN0byBEZWJpYW4iIERlYmlhbgorLlNIIE5PTUJSRQorZGViXC1vbGQgXC0gQW50aWd1byBmb3JtYXRvIGRlIHBhcXVldGUgYmluYXJpbyBkZSBEZWJpYW4KKy4KKy5TSCBTSU5PUFNJUworXGZJbm9tYnJlXC1maWNoZXJvXGZQXGZCLmRlYlxmUAorLgorLlNIIERFU0NSSVBDSdNOCitFbCBmb3JtYXRvIFxmQi5kZWJcZlAgZXMgZWwgZm9ybWF0byBkZSBmaWNoZXJvIGRlIHBhcXVldGUgYmluYXJpbyBkZSBEZWJpYW4uCitFc3RhIHDhZ2luYSBkZSBtYW51YWwgZGVzY3JpYmUgZWwgZm9ybWF0byBcZkJhbnRpZ3VvXGZQLCB1c2FkbyBwcmV2aWFtZW50ZSBhIGxhCit2ZXJzafNuIDAuOTMgZGUgRGViaWFuLiBDb25zdWx0ZSBlbCBtYW51YWwgXGZCZGViXGZQKDUpIHBhcmEgbeFzIGRldGFsbGVzIHNvYnJlCitlbCBudWV2byBmb3JtYXRvLgorLgorLlNIIEZPUk1BVE8KK0VsIGZpY2hlcm8gZXN04SBmb3JtYWRvIHBvciBkb3MgbGluZWFzIGNvbiBpbmZvcm1hY2nzbiBkZWwgZm9ybWF0byBlbiB0ZXh0bworQVNDSUksIHNlZ3VpZG8gcG9yIGRvcyBmaWNoZXJvcyB1c3RhciBjb25jYXRlbmFkb3MgeSBjb21wcmltaWRvcyB27WEgZ3ppcC4KKy5QUAorTGEgcHJpbWVyYSBs7W5lYSBpbmRpY2EgbGEgdmVyc2nzbiBkZWwgZm9ybWF0byBjb21wbGV0YWRhIGNvbiAwIGhhc3RhIGN1YnJpcgorOCBk7WdpdG9zLCB5IGVzIFxmQjAuOTM5MDAwXGZQIHBhcmEgdG9kb3MgbG9zIGFyY2hpdm9zIGNvbiBmb3JtYXRvIGFudGlndW8uCisuUFAKK0xhIHNlZ3VuZGEgbO1uZWEgZXMgdW4gbvptZXJvIGRlY2ltYWwgKHNpbiBjZXJvcyBwcmVjZWRlbnRlcykgcXVlIGluZGljYSBlbAordGFtYfFvIGRlbCBwcmltZXIgZmljaGVybyB0YXIgY29tcHJpbWlkbyBjb24gZ3ppcC4KKy5QUAorQ2FkYSBs7W5lYSBmaW5hbGl6YSBjb24gdW4g+m5pY28gY2Fy4WN0ZXIgZGUgbnVldmEgbO1uZWEuCisuUFAKK0VsIHByaW1lciBmaWNoZXJvIHRhciBjb250aWVuZSBsYSBpbmZvcm1hY2nzbiBkZSBjb250cm9sIGNvbW8gdW4gY29uanVudG8gZGUKK2ZpY2hlcm9zIGNvbXVuZXMuIEVsIGZpY2hlcm8gXGZCY29udHJvbFxmUCBkZWJlIGVzdGFyIHByZXNlbnRlLCB5YSBxdWUgY29udGllbmUKK2xhIGluZm9ybWFjafNuIGRlIGNvbnRyb2wgYuFzaWNhLgorLlBQCitFbiBhbGd1bm9zIGFyY2hpdm9zIG11eSBhbnRpZ3VvcywgbG9zIGZpY2hlcm9zIGRlIGNvbnRyb2wgZW4gZWwgZmljaGVybyB0YXIKK3B1ZWRlbiBlc3RhciBvcGNpb25hbG1lbnRlIGVuIHVuIHN1YmRpcmVjdG9yaW8gXGZCREVCSUFOXGZQLiBFbiBlc3RlIGNhc28sIGVsCitzdWJkaXJlY3RvcmlvIFxmQkRFQklBTlxmUCBlc3RhcuEgdGFtYmnpbiBlbiBlbCBmaWNoZXJvIHRhciBkZSBjb250cm9sLCB5IGVsCitmaWNoZXJvIHRhciBkZSBjb250cm9sIHRlbmRy4SBzb2xhbWVudGUgYXJjaGl2b3MgZW4gZXN0ZSBkaXJlY3RvcmlvLiBEZQorZm9ybWEgb3BjaW9uYWwsIGVsIGZpY2hlcm8gdGFyIHBvZHLhIGNvbnRlbmVyIHVuYSBlbnRyYWRhIHBhcmEgq1xmQi5cZlC7LCBlc3RvCitlcywgZWwgZGlyZWN0b3JpbyBhY3R1YWwuCisuUFAKK0VsIHNlZ3VuZG8gZmljaGVybyB0YXIgY29tcHJpbWlkbyBjb24gZ3ppcCBlcyBlbCBhcmNoaXZvIGRlbCBzaXN0ZW1hIGRlCitmaWNoZXJvcywgcXVlIGNvbnRpZW5lIGxhcyBydXRhcyByZWxhdGl2YXMgYWwgZGlyZWN0b3JpbyByYe16IGRlbCBzaXN0ZW1hCitkb25kZSBzZSBpbnN0YWxhcuEuIExvcyBub21icmVzIGRlIHJ1dGEgbm8gdGllbmVuIGJhcnJhcyBwcmVjZWRlbnRlcy4KKy4KKy5TSCAiVslBU0UgVEFNQknJTiIKK1xmQmRlYlxmUCg1KSwgXGZCZHBrZ1wtZGViXGZQKDEpLCBcZkJkZWJcLWNvbnRyb2xcZlAoNSkuCisuU0ggIlRSQURVQ1RPUiIKK1J1ZHkgR29kb3kgPHJ1ZHlAa2VybmVsXC1wYW5pay5vcmc+LAorUnVi6W4gUG9ycmFzIDxuYWhvb0BpbmljaWEuZXM+LAorQnJ1bm8gQmFycmVyYSBDLiA8YnJ1bm8uYmFycmVyYUBpZ2xvby5jbD4sCitDYXJsb3MgSXpxdWllcmRvIDxnaGVlc2hAZXJ0aXMubmV0PiwKK0VzdGViYW4gTWFuY2hhZG8geQorTk9LLgorRGViaWFuIEwxMG4gU3BhbmlzaCA8ZGViaWFuXC1sMTBuXC1zcGFuaXNoQGxpc3RzLmRlYmlhbi5vcmc+LgorLmJyCitSZXZpc2lvbmVzIHBvciBTYW50aWFnbyBWaWxhIDxzYW52aWxhQHVuZXguZXM+LAorSmF2aWVyIEZlcm7hbmRlelwtU2FuZ3Vpbm8sIFJ1YuluIFBvcnJhcywKK0x1aXMgVXJpYmUgeSBPbWFyIENhbXBhZ25lLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vZXMvZGViLW92ZXJyaWRlLjUgYi9kcGtnLTEuMTYuMS4xL21hbi9lcy9kZWItb3ZlcnJpZGUuNQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42YWQwMDBhCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vZXMvZGViLW92ZXJyaWRlLjUKQEAgLTAsMCArMSw3MCBAQAorLlwiIFRoaXMgbWFucGFnZSBpcyBjb3B5cmlnaHQgKEMpIDE5OTYgTWljaGFlbCBTaGllbGRzIDxzaGllbGRzQGNyb3NzbGluay5uZXQ+LgorLlwiIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IG1heSByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorLlwiIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisuXCIgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKy5cIiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorLlwiCisuXCIgVGhpcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorLlwiIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisuXCIgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorLlwiIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisuXCIKKy5cIiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorLlwiIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlwiCisuXCIgVGhpcyBmaWxlIHdhcyBnZW5lcmF0ZWQgd2l0aCBwbzRhLiBUcmFuc2xhdGUgdGhlIHNvdXJjZSBmaWxlLgorLlwiCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuVEggZGViXC1vdmVycmlkZSA1IDIwMTFcLTA4XC0xNCAiUHJveWVjdG8gRGViaWFuIiAiSGVycmFtaWVudGFzIGRlIGRwa2ciCisuU0ggTk9NQlJFCitkZWJcLW92ZXJyaWRlIFwtIEZpY2hlcm8gZGUgc3VzdGl0dWNpb25lcyBkZSBhcmNoaXZvIGRlIERlYmlhbgorLgorLlNIIFNJTk9QU0lTCitvdmVycmlkZQorLgorLlNIIERFU0NSSVBDSdNOCitNaWVudHJhcyBxdWUgbGEgbWF5b3LtYSBkZSBsYSBpbmZvcm1hY2nzbiBhY2VyY2EgZGUgbG9zIHBhcXVldGVzIHNlCitlbmN1ZW50cmEgZW4gZWwgZmljaGVybyBkZSBjb250cm9sIHBhcnRlIGRlIGVzdGEgaW5mb3JtYWNp824gc2UgZGViZQorcmVsbGVuYXIgcG9yIGxvcyBlbmNhcmdhZG9zIGRlIHBsYW5pZmljYXIgbGEgZGlzdHJpYnVjafNuLCBlbiBsdWdhciBkZSBsb3MKK3Jlc3BvbnNhYmxlcyBkZSBsb3MgcGFxdWV0ZXMsIG9mcmVjaWVuZG8gYXPtIHVuYSBtYXlvciBjb25zaXN0ZW5jaWEKK2dsb2JhbC4gRXN0YSBpbmZvcm1hY2nzbiBzZSBlbmN1ZW50cmEgZW4gZWwgZmljaGVybyCrb3ZlcnJpZGW7Cisoc3VzdGl0dWNp824pLgorLlBQCitFbCBmaWNoZXJvIKtvdmVycmlkZbsgdGllbmUgdW4gZm9ybWF0byBzaW1wbGUsIGRlbGltaXRhZG8gcG9yIGVzcGFjaW9zIGVuCitibGFuY28uIFNlIHBlcm1pdGVuIGNvbWVudGFyaW9zIHByZWNlZGlkb3MgZGUgXGZCI1xmUC4KKy5QUAorLmluICs1CitcZklwYXF1ZXRlXGZQIFxmSXByaW9yaWRhZFxmUCBcZklzZWNjafNuXGZQIFtcZklpbmZvcm1hY2nzblwtZGVsXC1tYW50ZW5lZG9yXGZQXQorLmluIC01CisuUFAKK1xmSXBhcXVldGVcZlAgRWwgbm9tYnJlIGRlbCBwYXF1ZXRlLiBTZSBpZ25vcmFy4W4gbGFzIGVudHJhZGFzIGVuIGVsIGZpY2hlcm8KK6tvdmVycmlkZbsgZGUgcGFxdWV0ZXMgbm8gZW5jb250cmFkb3MgZW4gZWwg4XJib2wgZGUgcGFxdWV0ZXMgYmluYXJpb3MuCisuUFAKK1xmSXByaW9yaWRhZFxmUCB5IFxmSXNlY2Np825cZlAgc2UgY29ycmVzcG9uZGVuIGNvbiBzdXMgcmVzcGVjdGl2b3MgY2FtcG9zIGRlCitjb250cm9sIGRpc3BvbmlibGVzIGVuIGVsIKsuZGViuy4gTG9zIHZhbG9yZXMgcGVybWl0aWRvcyBzZSBsaXN0YW4gZW4gZWwKK01hbnVhbCBkZSBOb3JtYXMgZGUgRGViaWFuLgorLlBQCitEZSBlc3RhciBwcmVzZW50ZSBcZklpbmZvcm1hY2nzblwtZGVsXC1tYW50ZW5lZG9yXGZQLCBwdWVkZSBzZXIgZWwgbm9tYnJlIGRlbAorcmVzcG9uc2FibGUgZGUgdW4gq292ZXJyaWRluyBpbmNvbmRpY2lvbmFsLCBvIGJpZW4gXGZJYW50aWd1b1wtbWFudGVuZWRvclxmUAorXGZCPT5cZlAgXGZJbnVldm9cLW1hbnRlbmVkb3JcZlAgcGFyYSBoYWNlciB1bmEgc3VzdGl0dWNp824uCisuUFAKK1B1ZWRlIGVuY29udHJhciBsb3MgZmljaGVyb3Mgq292ZXJyaWRluyBxdWUgc2UgdXNhbiBwYXJhIGhhY2VyIGxhcyBsaXN0YXMKK6tQYWNrYWdlc7sgb2ZpY2lhbGVzIGVuIGVsIGRpcmVjdG9yaW8gq1xmSWluZGljZXNcZlC7IGRlIGN1YWxxdWllciBy6XBsaWNhIGRlCitEZWJpYW4uCisuCisuU0ggIlbJQVNFIFRBTUJJyU4iCitcZkJkcGtnXC1zY2FucGFja2FnZXNcZlAoMSksIFxmQmRwa2dcLXNjYW5zb3VyY2VzXGZQKDEpLCBcZkJhcHRcLWZ0cGFyY2hpdmVcZlAoMSksCitcZkIvdXNyL3NoYXJlL2RvYy9kZWJpYW5cLXBvbGljeS9wb2xpY3kuaHRtbC9pbmRleC5odG1sXGZQLgorLlNIICJUUkFEVUNUT1IiCitSdWR5IEdvZG95IDxydWR5QGtlcm5lbFwtcGFuaWsub3JnPiwKK1J1YuluIFBvcnJhcyA8bmFob29AaW5pY2lhLmVzPiwKK0JydW5vIEJhcnJlcmEgQy4gPGJydW5vLmJhcnJlcmFAaWdsb28uY2w+LAorQ2FybG9zIEl6cXVpZXJkbyA8Z2hlZXNoQGVydGlzLm5ldD4sCitFc3RlYmFuIE1hbmNoYWRvIHkKK05PSy4KK0RlYmlhbiBMMTBuIFNwYW5pc2ggPGRlYmlhblwtbDEwblwtc3BhbmlzaEBsaXN0cy5kZWJpYW4ub3JnPi4KKy5icgorUmV2aXNpb25lcyBwb3IgU2FudGlhZ28gVmlsYSA8c2FudmlsYUB1bmV4LmVzPiwKK0phdmllciBGZXJu4W5kZXpcLVNhbmd1aW5vLCBSdWLpbiBQb3JyYXMsCitMdWlzIFVyaWJlIHkgT21hciBDYW1wYWduZS4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL2VzL2RlYi1zaGxpYnMuNSBiL2Rwa2ctMS4xNi4xLjEvbWFuL2VzL2RlYi1zaGxpYnMuNQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wODUzZjJmCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vZXMvZGViLXNobGlicy41CkBAIC0wLDAgKzEsNjggQEAKKy5cIiBDb3B5cmlnaHQgwqkgMTk5NiBNaWNoYWVsIFNoaWVsZHMgPHNoaWVsZHNAY3Jvc3NsaW5rLm5ldD4KKy5cIiBDb3B5cmlnaHQgwqkgMjAwOCBaYWNrIFdlaW5iZXJnIDx6YWNrd0BwYW5peC5jb20+CisuXCIgVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgbWF5IHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisuXCIgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKy5cIiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorLlwiIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisuXCIKKy5cIiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisuXCIgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKy5cIiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisuXCIgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKy5cIgorLlwiIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisuXCIgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkZWJcLXNobGlicyA1ICIxNyBkZSBGZWJyZXJvIGRlIDIwMDkiICJQcm95ZWN0byBEZWJpYW4iICJIZXJyYW1pZW50YXMgZGUgZHBrZyIKKy5TSCBOT01CUkUKK2RlYlwtc2hsaWJzIFwtIEZpY2hlcm8gZGUgaW5mb3JtYWNp824gZGUgYmlibGlvdGVjYXMgY29tcGFydGlkYXMgZGUgRGViaWFuCisuCisuU0ggREVTQ1JJUENJ004KKy5QUAorXGZCc2hsaWJzXGZQIGNyZWEgdW5hIGNvcnJlbGFjafNuIGVudHJlIGxvcyBub21icmVzIHkgdmVyc2lvbmVzIGRlIGJpYmxpb3RlY2FzCitjb21wYXJ0aWRhcyAoXGZJc29uYW1lc1xmUCkgeSBsYXMgZGVwZW5kZW5jaWFzLCBkZSBtYW5lcmEgYWRlY3VhZGEgcGFyYSBzdQoraW5jbHVzafNuIGVuIGVsIGZpY2hlcm8gZGUgY29udHJvbCBkZWwgcGFxdWV0ZS4gU2UgaW5zZXJ0YSB1bmEgZW50cmFkYSBwb3IKK2ztbmVhLCB5IGxhcyBs7W5lYXMgdmFj7WFzIFxmQm5vXGZQIGVzdOFuIHBlcm1pdGlkYXMuIExhcyBs7W5lYXMgcXVlIGVtcGllemFuCitjb24gdW4gY2Fy4WN0ZXIgXGZCI1xmUCBzZSBjb25zaWRlcmFuIGNvbWVudGFyaW9zLCB5IHNlIGlnbm9yYXLhbi4gVG9kYXMgbGFzCitkZW3hcyBs7W5lYXMgZGViZW4gc2VndWlyIGVsIGZvcm1hdG8KKy5JUAorW1xmSXR5cGVcZlBcZkI6XGZQXSBcZklsaWJyYXJ5XGZQIFxmSXZlcnNpb25cZlAgXGZJZGVwZW5kZW5jaWVzXGZQCisuUFAKK0xvcyBjYW1wb3MgXGZJYmlibGlvdGVjYVxmUCB5IFxmSXZlcnNp825cZlAgc2UgZGVsaW1pdGFuIGNvbiBlc3BhY2lvcyBlbiBibGFuY28sCitwZXJvIGVsIGNhbXBvIGRlIGxhcyBcZklkZXBlbmRlbmNpYXNcZlAgc2UgZXh0aWVuZGUgaGFzdGEgZWwgZmluIGRlIGztbmVhLiBFbAorY2FtcG8gXGZJdGlwb1xmUCBlcyBvcGNpb25hbCwgeSBoYWJpdHVhbG1lbnRlIGlubmVjZXNhcmlvLgorLlBQCitDb25zdWx0ZSBlbCBNYW51YWwgZGUgTm9ybWFzIGRlIERlYmlhbiBwYXJhIG3hcyBkZXRhbGxlcy4KKy4KKy5TSCBFSkVNUExPUworLlBQCitFbCBhc3BlY3RvIGRlIHVuIGZpY2hlcm8gXGZCc2hsaWJzXGZQIHBhcmEgdW4gcGFxdWV0ZSB07XBpY28gZGUgYmlibGlvdGVjYXMKK2xsYW1hZG8gXGZJbGliY3J1bmNoMVxmUCwgZWwgY3VhbCBwcm9wb3JjaW9uYSB1bmEgYmlibGlvdGVjYSBjdXlvIKtzb25hbWW7IGVzCitJXGZJbGliY3J1bmNoLnNvLjFcZlAsIHBvZHLtYSBzZXIKKy5JUAorbGliY3J1bmNoIDEgbGliY3J1bmNoMSAoPj0gMS4yXC0xKQorLlBQCitMYXMgXGZJZGVwZW5kZW5jaWFzXGZQIGRlYmVuIG1lbmNpb25hciBsYSB2ZXJzafNuIG3hcyByZWNpZW50ZSBkZWwgcGFxdWV0ZSBxdWUKK2HxYWRp8yBz7W1ib2xvcyBudWV2b3MgYSBsYSBiaWJsaW90ZWNhOiBlbiBlbCBlamVtcGxvIGFudGVyaW9yLCBsZXMKK2HxYWRpZXJvbiBz7W1ib2xvcyBudWV2b3MgZW4gbGEgdmVyc2nzbiAxLjIgZGUgXGZJbGliY3J1bmNoXGZQLiBFc3RhIG5vIGVzIGxhCiv6bmljYSByYXrzbiBwb3IgbGEgcXVlIHNlIGRlYmVuIHJlZm9yemFyIGxhcyByZWxhY2lvbmVzIGRlIGRlcGVuZGVuY2lhOyB1bmEKK3ZleiBt4XMsIGNvbnN1bHRlIGVsIE1hbnVhbCBkZSBOb3JtYXMgZGUgRGViaWFuIHBhcmEgbeFzIGRldGFsbGVzLgorLgorLlNIICJWyUFTRSBUQU1CSclOIgorXGZCZHBrZ1wtc2hsaWJkZXBzXGZQKDEpLCBcZkJkZWJcLXN5bWJvbHNcZlAoNSkuCisuU0ggIlRSQURVQ1RPUiIKK1J1ZHkgR29kb3kgPHJ1ZHlAa2VybmVsXC1wYW5pay5vcmc+LAorUnVi6W4gUG9ycmFzIDxuYWhvb0BpbmljaWEuZXM+LAorQnJ1bm8gQmFycmVyYSBDLiA8YnJ1bm8uYmFycmVyYUBpZ2xvby5jbD4sCitDYXJsb3MgSXpxdWllcmRvIDxnaGVlc2hAZXJ0aXMubmV0PiwKK0VzdGViYW4gTWFuY2hhZG8geQorTk9LLgorRGViaWFuIEwxMG4gU3BhbmlzaCA8ZGViaWFuXC1sMTBuXC1zcGFuaXNoQGxpc3RzLmRlYmlhbi5vcmc+LgorLmJyCitSZXZpc2lvbmVzIHBvciBTYW50aWFnbyBWaWxhIDxzYW52aWxhQHVuZXguZXM+LAorSmF2aWVyIEZlcm7hbmRlelwtU2FuZ3Vpbm8sIFJ1YuluIFBvcnJhcywKK0x1aXMgVXJpYmUgeSBPbWFyIENhbXBhZ25lLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vZXMvZGViLXN1YnN0dmFycy41IGIvZHBrZy0xLjE2LjEuMS9tYW4vZXMvZGViLXN1YnN0dmFycy41Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQzN2JmMjMKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9lcy9kZWItc3Vic3R2YXJzLjUKQEAgLTAsMCArMSwxNTcgQEAKKy5cIiBBdXRob3JzOiBJYW4gSmFja3NvbgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlwiCisuXCIgVGhpcyBmaWxlIHdhcyBnZW5lcmF0ZWQgd2l0aCBwbzRhLiBUcmFuc2xhdGUgdGhlIHNvdXJjZSBmaWxlLgorLlwiCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuVEggZGViXC1zdWJzdHZhcnMgNSAiMTUgZGUgSnVsaW8gZGUgMjAwOSIgIlByb3llY3RvIERlYmlhbiIgIkhlcnJhbWllbnRhcyBkZSBkcGtnIgorLlNIIE5PTUJSRQorZGViXC1zdWJzdHZhcnMgXC0gU3VzdGl0dWNp824gZGUgdmFyaWFibGVzIGRlIGZ1ZW50ZXMgZGUgRGViaWFuCisuCisuU0ggU0lOT1BTSVMKK3N1YnN0dmFycworLgorLlNIIERFU0NSSVBDSdNOCitBbnRlcyBkZSBxdWUgXGZCZHBrZ1wtc291cmNlXGZQLCBcZkJkcGtnXC1nZW5jb250cm9sXGZQIHkgXGZCZHBrZ1wtZ2VuY2hhbmdlc1xmUAorZXNjcmliYW4gc3UgaW5mb3JtYWNp824gZGUgY29udHJvbCAoYWwgZmljaGVybyBcZkIuZHNjXGZQIGRlIGNvbnRyb2wgZW4gZWwgY2FzbworZGUgXGZCZHBrZ1wtc291cmNlXGZQLCB5IGEgbGEgc2FsaWRhIGVzdOFuZGFyIGVuIGVsIGRlIFxmQmRwa2dcLWdlbmNvbnRyb2xcZlAgeQorXGZCZHBrZ1wtZ2VuY2hhbmdlc1xmUCksIHJlYWxpemFuIGFsZ3VuYXMgc3VzdGl0dWNpb25lcyBkZSB2YXJpYWJsZXMgZW4gZWwKK2ZpY2hlcm8gZGUgc2FsaWRhLgorCitVbmEgc3VzdGl0dWNp824gZGUgdmFyaWFibGUgdGllbmUgbGEgZm9ybWEKK1xmQiR7XGZQXGZJbm9tYnJlXC1kZVwtdmFyaWFibGVcZlBcZkJ9XGZQLiBMb3Mgbm9tYnJlcyBkZSB2YXJpYWJsZSBjb25zaXN0ZW4gZGUKK2NhcmFjdGVyZXMgYWxmYW51belyaWNvcywgZ3Vpb25lcyB5IGRvcyBwdW50b3MgKDopLCB5IGNvbWllbnphbiBzaWVtcHJlIGNvbgordW4gY2Fy4WN0ZXIgYWxmYW51belyaWNvLiBMYSBzdXN0aXR1Y2nzbiBkZSB2YXJpYWJsZXMgc2UgbGxldmEgYSBjYWJvCityZXBldGlkYW1lbnRlIGhhc3RhIHF1ZSBubyBxdWVkYSBuaW5ndW5hOyBlbCB0ZXh0byBjb21wbGV0byBkZWwgY2FtcG8gdHJhcworbGEgc3VzdGl0dWNp824gc2UgcmV2aXNhIGRlIG51ZXZvIGVuIGJ1c2NhIGRlIG3hcyBzdXN0aXR1Y2lvbmVzLgorCitEZXNwdelzIGRlIHF1ZSB0b2RhcyBsYXMgc3VzdGl0dWNpb25lcyBoYXlhbiB0ZW5pZG8gbHVnYXIsIGNhZGEgYXBhcmljafNuIGRlCitsYSBjYWRlbmEgXGZCJHt9XGZQIChxdWUgbm8gZXMgdW5hIHN1c3RpdHVjafNuIGxlZ2FsKSBzZSByZWVtcGxhemEgcG9yIHVuIHNpZ25vCitcZkIkXGZQLgorCitBIHBlc2FyIGRlIHF1ZSBsYSBzdXN0aXR1Y2nzbiBkZSB2YXJpYWJsZXMgc2UgcmVhbGl6YSBzb2JyZSB0b2RvcyBsb3MKK2NhbXBvcywgYWxndW5vcyBkZSBlc3RvcyBjYW1wb3Mgc2UgdXNhbiBvYmxpZ2F0b3JpYW1lbnRlIGR1cmFudGUgbGEKK2NvbnN0cnVjY2nzbiwgY3VhbmRvIGxhIHN1c3RpdHVjafNuIGH6biBubyBzZSBoYSBlamVjdXRhZG8uIFBvciBlbGxvLCBubworcHVlZGUgdXNhciB2YXJpYWJsZXMgZW4gbG9zIGNhbXBvcyBcZkJQYWNrYWdlXGZQLCBcZkJTb3VyY2VcZlAgeSBcZkJBcmNoaXRlY3R1cmVcZlAuCisKK0xhIHN1c3RpdHVjafNuIGRlIHZhcmlhYmxlcyBzZSBlamVjdXRhIHNvYnJlIGVsIGNvbnRlbmlkbyBkZSBsb3MgY2FtcG9zCitkZXNwdelzIGRlIHN1IGFu4Wxpc2lzLCB5IHBvciBlbGxvIG5vIG5lY2VzaXRhIGluY2x1aXIgdW4gZXNwYWNpbyBkZXNwdelzIGRlCitsYSBudWV2YSBs7W5lYSBwYXJhIGV4cGFuZGlyIHVuYSB2YXJpYWJsZSBzb2JyZSB2YXJpYXMgbO1uZWFzLiBFc3RvIHNlIGhhY2UKK2ltcGztY2l0YW1lbnRlIGN1YW5kbyBlbCBjYW1wbyBzZSBtdWVzdHJhIHBvciBsYSBzYWxpZGEuIFBvciBlamVtcGxvLCBzaSBsYQordmFyaWFibGUgXGZCJHtEZXNjcmlwdGlvbn1cZlAgZXN04SBkZWZpbmlkYSBjb21vIKtmb28gZXMgYmFyLiR7TmV3bGluZX1mb28gZXMKK2luY3Jl7WJsZS67IHkgdGllbmUgZWwgc2lndWllbnRlIGNhbXBvOgorCisgRGVzY3JpcHRpb246IGFwbGljYWNp824gZm9vCisgICR7RGVzY3JpcHRpb259CisgIC4KKyAgTeFzIHRleHRvLgorCitFbCByZXN1bHRhZG8gc2Vy7WE6CisKKyBEZXNjcmlwdGlvbjogYXBsaWNhY2nzbiBmb28KKyAgZm9vIGVzIGJhci4KKyAgZm9vIGVzIGluY3Jl7WJsZS4KKyAgLgorICBN4XMgdGV4dG8uCisKK0xhcyB2YXJpYWJsZXMgc2UgcHVlZGVuIGRlZmluaXIgdXNhbmRvIGxhIG9wY2nzbiBjb236biBcZkJcLVZcZlAuIFRhbWJp6W4gc2UKK3B1ZWRlbiBlc3BlY2lmaWNhciBlbiBlbCBmaWNoZXJvIFxmQmRlYmlhbi9zdWJzdHZhcnNcZlAgKHUgb3RybyBmaWNoZXJvCitlc3BlY2lmaWNhZG8gbWVkaWFudGUgbGEgb3BjafNuIFxmQlwtVFxmUCkuIEVzdGUgZmljaGVybyBjb25zaXN0ZSBkZSBs7W5lYXMgY29uCitsYSBmb3JtYSBcZklub21icmVcZlBcZkI9XGZQXGZJdmFsb3JcZlAuIExvcyBjYXJhY3RlcmVzIGVuIGJsYW5jbyBhbCBmaW5hbCBkZSBjYWRhCits7W5lYSwgbGFzIGztbmVhcyB2YWPtYXMgeSBsYXMgbO1uZWFzIHF1ZSBjb21pZW5jZW4gY29uIGVsIHPtbWJvbG8gXGZCI1xmUAorKGNvbWVudGFyaW9zKSBzb24gaWdub3JhZG9zLgorCitEZSBtYW5lcmEgYWRpY2lvbmFsLCBsYXMgc2lndWllbnRlcyB2YXJpYWJsZXMgZXN04W5kYXIgZXN04W4gZGlzcG9uaWJsZXM6CisuVFAgCitcZkJBcmNoXGZQCitMYSBhcnF1aXRlY3R1cmEgZGUgY29uc3RydWNjafNuIGFjdHVhbCAoZGUgXGZCZHBrZyBcLVwtcHJpbnRcLWFyY2hpdGVjdHVyZVxmUCkuCisuVFAgCitcZkJzb3VyY2U6VmVyc2lvblxmUAorTGEgdmVyc2nzbiBkZWwgcGFxdWV0ZSBmdWVudGUuCisuVFAgCitcZkJzb3VyY2U6VXBzdHJlYW1cLVZlcnNpb25cZlAKK0xhIHZlcnNp824gZGVsIHBhcXVldGUgZGVsIGF1dG9yIG9yaWdpbmFsLCBpbmNsdXllbmRvIGxhIHZlcnNp824gq2Vwb2NouyBkZQorRGViaWFuLCBkZSBleGlzdGlyLgorLlRQIAorXGZCYmluYXJ5OlZlcnNpb25cZlAKK0xhIHZlcnNp824gZGVsIHBhcXVldGUgYmluYXJpbyAocHVlZGUgc2VyIGRpc3RpbnRvIGRlIKtzb3VyY2U6VmVyc2lvbrssIHBvcgorZWplbXBsbywgY29uIHVuIE5NVSBiaW5hcmlvKS4KKy5UUCAKK1xmQlNvdXJjZVwtVmVyc2lvblxmUAorTGEgdmVyc2nzbiBkZWwgcGFxdWV0ZSBmdWVudGUgKGRlbCBmaWNoZXJvIGRlIHJlZ2lzdHJvIGRlIGNhbWJpb3MpLiBFc3RhCit2YXJpYWJsZSBlc3ThIFxmQm9ic29sZXRhXGZQLCB5YSBxdWUgc3Ugc2lnbmlmaWNhZG8gZGlmaWVyZSBkZSBzdSBmdW5jafNuLiBVc2UKK1xmQnNvdXJjZTpWZXJzaW9uXGZQIG8gXGZCYmluYXJ5OlZlcnNpb25cZlAgc2Vn+m4gcmVxdWllcmEgbGEgb2Nhc2nzbi4KKy5UUCAKK1xmQkluc3RhbGxlZFwtU2l6ZVxmUAorRWwgdGFtYfFvIHRvdGFsIGRlIGxvcyBmaWNoZXJvcyBkZWwgcGFxdWV0ZSB5YSBpbnN0YWxhZG8uIEVzdGUgdmFsb3Igc2UKK2NvcGlhIGFsIGNhbXBvIGRlbCBmaWNoZXJvIGRlIGNvbnRyb2wgY29ycmVzcG9uZGllbnRlOyBkZWZpbmlybG8gbW9kaWZpY2EgZWwKK3ZhbG9yIGRlIGRpY2hvIGNhbXBvLiBTaSBsYSB2YXJpYWJsZSBubyBlc3ThIGRlZmluaWRhLCBcZkJkcGtnXC1nZW5jb250cm9sXGZQCit1c2Fy4SBcZkJkdSBcLWsgZGViaWFuL3RtcFxmUCBwYXJhIGhhbGxhciBlbCB2YWxvciBwcmVkZWZpbmlkby4KKy5UUCAKK1xmQkV4dHJhXC1TaXplXGZQCitFbCBlc3BhY2lvIGVuIGRpc2NvIGFkaWNpb25hbCB1c2FkbyBjdWFuZG8gc2UgaW5zdGFsYSBlbCBwYXF1ZXRlLiBTaSBzZQorZGVmaW5lIGVzdGEgdmFyaWFibGUsIHN1IHZhbG9yIHNlIGHxYWRlIGFsIGRlIGxhIHZhcmlhYmxlIFxmQkluc3RhbGxlZFwtU2l6ZVxmUAorKHRhbnRvIHNpIHNlIGVzdGFibGVjZSBtYW51YWxtZW50ZSBjb21vIHNpIHNlIHVzYSBlbCB2YWxvciBwcmVkZWZpbmlkbykKK2FudGVzIGRlIGNvcGlhcnNlIGFsIGNhbXBvIFxmQkluc3RhbGxlZFwtU2l6ZVxmUCBkZWwgZmljaGVybyBkZSBjb250cm9sLgorLlRQIAorXGZCRjpcZlBcZklub21icmVcLWNhbXBvXGZQCitFbCB2YWxvciBkZSBsYSBzYWxpZGEgZGVsIGNhbXBvIFxmSW5vbWJyZVwtY2FtcG9cZlAgKHF1ZSBzZSBkZWJlIHByb3BvcmNpb25hcgorc2lndWllbmRvIGxhIGNvbnZlbmNp824gZGUgbWF5+nNjdWxhcyB5IG1pbvpzY3VsYXMpLiBEZWZpbmlyIGVzdGFzIHZhcmlhYmxlcworbm8gdGllbmUgbmluZ/puIGVmZWN0byBleGNlcHRvIGVuIGFxdWVsbG9zIGx1Z2FyZXMgZG9uZGUgc2UgZXhwYW5kYW4KK2V4cGztY2l0YW1lbnRlLgorLlRQIAorXGZCRm9ybWF0XGZQCitFbCBmb3JtYXRvIGRlbCBmaWNoZXJvIFxmQi5jaGFuZ2VzXGZQIGdlbmVyYWRvIHBvciBlc3RhIHZlcnNp824gZGUgbG9zIHNjcmlwdHMKK2RlIGVtcGFxdWV0YWRvIGRlIGZ1ZW50ZXMuIFNpIGRlZmluZSBlc3RhIHZhcmlhYmxlLCBlbCBjb250ZW5pZG8gZGVsIGNhbXBvCitcZkJGb3JtYXRcZlAgZW4gZWwgZmljaGVybyBcZkIuY2hhbmdlc1xmUCBjYW1iaWFy4SBpZ3VhbG1lbnRlLgorLlRQIAorXGZCTmV3bGluZVxmUCwgXGZCU3BhY2VcZlAsIFxmQlRhYlxmUAorRXN0YXMgdmFyaWFibGVzIGNvbnRpZW5lbiBjYWRhIHVuYSBlbCBjYXLhY3RlciBjdXlvIG5vbWJyZSBlc3BlY2lmaWNhbiBlbgoraW5nbOlzLiBOb3RhIGRlbCB0cmFkdWN0b3I6IE5ld2xpbmUgPSBSZXRvcm5vIGRlIGztbmVhLCBTcGFjZSA9IEVzcGFjaW8sIFRhYgorPSBUYWJ1bGFkb3IuCisuVFAgCitcZkJzaGxpYnM6XGZQXGZJY2FtcG9cLWRlXC1kZXBlbmRlbmNpYVxmUAorTGFzIHZhcmlhYmxlcyBjb24gbm9tYnJlcyBkZSBlc3RhIGZvcm1hIHNlIGdlbmVyYW4gbWVkaWFudGUKK1xmQmRwa2dcLXNobGliZGVwc1xmUC4KKy5UUCAKK1xmQmRwa2c6VXBzdHJlYW1cLVZlcnNpb25cZlAKK0xhIHZlcnNp824gZGUgbGEgZnVlbnRlIG9yaWdpbmFsIGRlIGRwa2cuCisuVFAgCitcZkJkcGtnOlZlcnNpb25cZlAKK0xhIHZlcnNp824gY29tcGxldGEgZGUgZHBrZy4KKy5MUAorU2kgc2UgaGFjZSByZWZlcmVuY2lhIGEgdW5hIHZhcmlhYmxlIHBlcm8gbm8gc2UgZGVmaW5lIHNlIGdlbmVyYSB1biBhdmlzbyB5CitzZSBhc3VtZSB1biB2YWxvciB2YWPtby4KKy4KKy5TSCBGSUNIRVJPUworLlRQIAorXGZCZGViaWFuL3N1YnN0dmFyc1xmUAorTGlzdGEgZGUgdmFyaWFibGVzIGEgc3VzdGl0dWlyIHkgdmFsb3Jlcy4KKy4KKy5TSCBGQUxMT1MKK05vIGVzdOEgY2xhcm8gZWwgcHVudG8gZW4gZWwgY3VhbCBzZSBwcm9kdWNlIGxhIHN1c3RpdHVjafNuIGRlIGNhbXBvcywKK2NvbXBhcmFkbyBjb24gY2llcnRhcyBvcGNpb25lcyBkZSBsb3MgY2FtcG9zIGRlIHNhbGlkYSBlc3ThbmRhci4KKworLlNIICJWyUFTRSBUQU1CSclOIgorXGZCZHBrZ1xmUCgxKSwgXGZCZHBrZ1wtZ2VuY2hhbmdlc1xmUCgxKSwgXGZCZHBrZ1wtZ2VuY29udHJvbFxmUCgxKSwKK1xmQmRwa2dcLXNobGliZGVwc1xmUCgxKSwgXGZCZHBrZ1wtc291cmNlXGZQKDEpLgorLgorLlNIIEFVVE9SCitDb3B5cmlnaHQgXChjbyAxOTk1XC0xOTk2IElhbiBKYWNrc29uCisuYnIKK0NvcHlyaWdodCBcKGNvIDIwMDAgV2ljaGVydCBBa2tlcm1hbgorLnNwCitFc3RvIGVzIHNvZnR3YXJlIGxpYnJlOyB2ZWEgbGEgdmVyc2nzbiAyIG8gcG9zdGVyaW9yIGRlIGxhIExpY2VuY2lhIFD6YmxpY2EKK0dlbmVyYWwgR05VIHBhcmEgY29uZGljaW9uZXMgZGUgY29waWEuIE5PIGhheSBuaW5ndW5hIGdhcmFudO1hLgorLlNIICJUUkFEVUNUT1IiCitSdWR5IEdvZG95IDxydWR5QGtlcm5lbFwtcGFuaWsub3JnPiwKK1J1YuluIFBvcnJhcyA8bmFob29AaW5pY2lhLmVzPiwKK0JydW5vIEJhcnJlcmEgQy4gPGJydW5vLmJhcnJlcmFAaWdsb28uY2w+LAorQ2FybG9zIEl6cXVpZXJkbyA8Z2hlZXNoQGVydGlzLm5ldD4sCitFc3RlYmFuIE1hbmNoYWRvIHkKK05PSy4KK0RlYmlhbiBMMTBuIFNwYW5pc2ggPGRlYmlhblwtbDEwblwtc3BhbmlzaEBsaXN0cy5kZWJpYW4ub3JnPi4KKy5icgorUmV2aXNpb25lcyBwb3IgU2FudGlhZ28gVmlsYSA8c2FudmlsYUB1bmV4LmVzPiwKK0phdmllciBGZXJu4W5kZXpcLVNhbmd1aW5vLCBSdWLpbiBQb3JyYXMsCitMdWlzIFVyaWJlIHkgT21hciBDYW1wYWduZS4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL2VzL2RlYi41IGIvZHBrZy0xLjE2LjEuMS9tYW4vZXMvZGViLjUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTcwZmY5MwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL2VzL2RlYi41CkBAIC0wLDAgKzEsODEgQEAKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlRIIGRlYiA1IDIwMTFcLTA4XC0xNCAiUHJveWVjdG8gRGViaWFuIiBEZWJpYW4KKy5TSCBOT01CUkUKK2RlYiBcLSBGb3JtYXRvIGRlIHBhcXVldGUgYmluYXJpbyBkZSBEZWJpYW4KKy5TSCBTSU5PUFNJUworXGZJbm9tYnJlXC1maWNoZXJvXGZQXGZCLmRlYlxmUAorLlNIIERFU0NSSVBDSdNOCitFbCBmb3JtYXRvIFxmQi5kZWJcZlAgZXMgZWwgZW1wbGVhZG8gcGFyYSBsb3MgcGFxdWV0ZXMgYmluYXJpb3MgZGUgRGViaWFuLiBMYQordmVyc2nzbiAwLjkzLjc2IGRlIGRwa2cgeSBwb3N0ZXJpb3JlcyBzb24gY29tcGF0aWJsZXMgY29uIGVzdGUgZm9ybWF0bywgeQorZHBrZyBsbyBnZW5lcmEgcG9yIG9taXNp824gZGVzZGUgbGEgdmVyc2nzbiAxLjIuMCwgeSBlbiB0b2RhcyBsYXMgdmVyc2lvbmVzCitpMzg2L0VMRiBkZXNkZSAxLjEuMWVsZi4KKy5QUAorRWwgZm9ybWF0byBkZXNjcml0byBhcXXtIHNlIHVzYSBkZXNkZSBEZWJpYW4gMC45MzsgbG9zIGRldGFsbGVzIHNvYnJlIGVsCithbnRlcmlvciBmb3JtYXRvIHNlIGRlc2NyaWJlbiBlbiBcZkJkZWJcLW9sZFxmUCg1KS4KKy5TSCBGT1JNQVRPCitFbCBmaWNoZXJvIGVzIHVuIGFyY2hpdm8gXGZCYXJcZlAgY29uIHVuIHZhbG9yIG3hZ2ljbyBkZQorXGZCITxhcmNoPlxmUC4gTG9zIG5vbWJyZXMgZGUgZmljaGVybyBwdWVkZW4gY29udGVuZXIgdW5hIGJhcnJhIGFsCitmaW5hbC4KKy5QUAorTG9zIGFyY2hpdm9zIFxmQnRhclxmUCBjb21wYXRpYmxlcyBzb24gZWwgdmllam8gZm9ybWF0byAodjcpLCBlbCBmb3JtYXRvCitwcmVcLVBPU0lYIHVzdGFyLCB1biBzdWJjb25qdW50byBkZWwgZm9ybWF0byBHTlUgKHPzbG8gbG9zIG5vbWJyZXMgZGUgcnV0YSB5CitkZSBlbmxhY2UgbGFyZ29zIGRlbCBudWV2byBlc3RpbG8sIGNvbXBhdGlibGUgY29uIGRwa2cgZGVzZGUgbGEgdmVyc2nzbgorMS40LjEuMTcpLCB5IGVsIGZvcm1hdG8gUE9TSVggdXN0YXIgKGNvbXBhdGlibGUgY29uIG5vbWJyZXMgbGFyZ29zIGRlc2RlCitkcGtnIDEuMTUuMCkuIExhcyBtYXJjYXMgZGUgdGlwbyBkZSB0YXIgcXVlIG5vIHNlIHJlY29ub3pjYW4gc2UgdG9tYW4gY29tbwordW4gZXJyb3IuCisuUFAKK0VsIHByaW1lciBtaWVtYnJvIHNlIGxsYW1hIFxmQmRlYmlhblwtYmluYXJ5XGZQIHkgY29udGllbmUgdW5hIHNlcmllIGRlIGztbmVhcworc2VwYXJhZGFzIHBvciBzYWx0b3MgZGUgbO1uZWEuIEFjdHVhbG1lbnRlIHPzbG8gaGF5IHVuYSBs7W5lYSwgZWwgbvptZXJvIGRlCit2ZXJzafNuIGRlbCBmb3JtYXRvLCBcZkIyLjBcZlAgZW4gZWwgbW9tZW50byBlbiBxdWUgc2UgZXNjcmliafMgZXN0YSBw4WdpbmEgZGUKK21hbnVhbC4gTG9zIHByb2dyYW1hcyBxdWUgbGVhbiBhcmNoaXZvcyBjb24gZWwgZm9ybWF0byBudWV2byBkZWJlcu1hbiBwcmV2ZXIKK3VuIGF1bWVudG8gZGUgbG9zIG76bWVyb3MgbWVub3JlcyB5IGxhIGFwYXJpY2nzbiBkZSBudWV2YXMgbO1uZWFzLCBsYXMKK2N1YWxlcyBkZWJlcu1hbiBpZ25vcmFyIGVuIGNhc28gZGUgYXBhcmVjZXIuCisuUFAKK1NpIGVsIG76bWVybyBtYXlvciBoYSBjYW1iaWFkbyBlcyBxdWUgaGF5IGNhbWJpb3MgaW5jb21wYXRpYmxlcyB5IGVsCitwcm9ncmFtYSBzZSBkZWJlcu1hIGRldGVuZXIuIERlIG5vIHNlciBhc+0gZGViZXLtYSBwb2RlciBzZWd1aXIgc2luCitwcm9ibGVtYXMsIGEgbm8gc2VyIHF1ZSBzZSBlbmN1ZW50cmUgdW4gbWllbWJybyBubyBlc3BlcmFkbyBlbiBlbCBhcmNoaXZvCisoZXhjZXB0byBhbCBmaW5hbCksIGNvbW8gc2UgZGVzY3JpYmUgbeFzIGFiYWpvLgorLlBQCitFbCBzZWd1bmRvIG1pZW1icm8gb2JsaWdhdG9yaW8gZXMgXGZCY29udHJvbC50YXIuZ3pcZlAuIEVzIHVuIGFyY2hpdm8gdGFyCitjb21wcmltaWRvIGNvbiBnemlwIHF1ZSBjb250aWVuZSBsYSBpbmZvcm1hY2nzbiBkZSBjb250cm9sIGRlbCBwYXF1ZXRlIGVuCit1bmEgc2VyaWUgZGUgZmljaGVyb3MgZGUgdGV4dG8sIGRlIGxvcyBjdWFsZXMgXGZCY29udHJvbFxmUCBlcyBvYmxpZ2F0b3JpbyB5Citjb250aWVuZSBsYSBpbmZvcm1hY2nzbiBkZSBjb250cm9sIHByaW5jaXBhbC4gT3BjaW9uYWxtZW50ZSwgZWwgZmljaGVybyB0YXIKK2RlIGNvbnRyb2wgcHVlZGUgY29udGVuZXIgdW5hIGVudHJhZGEgcGFyYSCrXGZCLlxmULssIGVsIGRpcmVjdG9yaW8gYWN0dWFsLgorLlBQCitFbCB0ZXJjZXIgeSD6bHRpbW8gbWllbWJybyBvYmxpZ2F0b3JpbyBzZSBsbGFtYSBcZkJkYXRhLnRhclxmUC4gQ29udGllbmUgZWwKK3Npc3RlbWEgZGUgZmljaGVyb3MgY29tbyB1biBhcmNoaXZvIHRhciwgZWwgY3VhbCBwdWVkZSBlc3RhciBkZXNjb21wcmltaWRvCisoY29tcGF0aWJsZSBkZXNkZSBsYSB2ZXJzafNuIDEuMTAuMjQgZGUgZHBrZykgbyBjb21wcmltaWRvIGNvbiBnemlwCisoZXh0ZW5zafNuIFxmQi5nelxmUCksIHh6IChleHRlbnNp824gXGZCLnh6XGZQLCBjb21wYXRpYmxlIGRlc2RlIGxhIHZlcnNp824KKzEuMTUuNiksIGJ6aXAyIChleHRlbnNp824gXGZCLmJ6MlxmUCwgY29tcGF0aWJsZSBkZXNkZSBsYSB2ZXJzafNuIDEuMTAuMjQgZGUKK2Rwa2cpIG8gbHptYSAoZXh0ZW5zafNuIFxmQi5sem1hXGZQLCBjb21wYXRpYmxlIGRlc2RlIGxhIHZlcnNp824gMS4xMy4yNSBkZQorZHBrZykuCisuUFAKK0VzdG9zIG1pZW1icm9zIGRlYmVuIGFwYXJlY2VyIGVuIGVzdGUgbWlzbW8gb3JkZW4uIExhcyBpbXBsZW1lbnRhY2lvbmVzCithY3R1YWxlcyBkZWJlcu1hbiBpZ25vcmFyIGN1YWxxdWllciBtaWVtYnJvIGFkaWNpb25hbCBkZXNwdelzIGRlCitcZkJkYXRhLnRhclxmUC4gU2UgcG9kcu1hbiBkZWZpbmlyc2UgbnVldm9zIG1pZW1icm9zIGVuIGVsIGZ1dHVybywgeSBzZQorcG9uZHLhbiwgc2kgZXMgcG9zaWJsZSwgZGVzcHXpcyBkZSDpc3RvcyB0cmVzLiBDdWFscXVpZXIgbWllbWJybyBhZGljaW9uYWwKK3F1ZSBzZSB0dXZpZXNlIHF1ZSBpbnNlcnRhciBhbnRlcyBkZSBcZkJkYXRhLnRhclxmUCwgeSBxdWUgbG9zIHByb2dyYW1hcyBt4XMKK2FudGlndW9zIHB1ZWRhbiBpZ25vcmFyLCB0ZW5kcuEgdW4gbm9tYnJlIHF1ZSBjb21pZW5jZSBjb24gdW4gZ3Vp824gYmFqbywKK6tcZkJfXGZQuy4KKy5QUAorTG9zIG51ZXZvcyBtaWVtYnJvcyBxdWUgbm8gc2UgcHVlZGFuIGlnbm9yYXIgc2luIHByb2JsZW1hcyBzZSBpbnNlcnRhcuFuCithbnRlcyBkZSBcZkJkYXRhLnRhclxmUCwgY29uIG5vbWJyZXMgcXVlIGVtcGllY2VuIHBvciBhbGdvIHF1ZSBubyBzZWEgdW4gZ3Vp824KK2Jham8sIG8gKHBvc2libGVtZW50ZSkgY2F1c2Fy4W4gdW4gaW5jcmVtZW50byBkZWwgbvptZXJvIG1heW9yIGRlIHZlcnNp824uCisuU0ggIlbJQVNFIFRBTUJJyU4iCitcZkJkZWJcLW9sZFxmUCg1KSwgXGZCZHBrZ1wtZGViXGZQKDEpLCBcZkJkZWJcLWNvbnRyb2xcZlAoNSkuCisuU0ggIlRSQURVQ1RPUiIKK1J1ZHkgR29kb3kgPHJ1ZHlAa2VybmVsXC1wYW5pay5vcmc+LAorUnVi6W4gUG9ycmFzIDxuYWhvb0BpbmljaWEuZXM+LAorQnJ1bm8gQmFycmVyYSBDLiA8YnJ1bm8uYmFycmVyYUBpZ2xvby5jbD4sCitDYXJsb3MgSXpxdWllcmRvIDxnaGVlc2hAZXJ0aXMubmV0PiwKK0VzdGViYW4gTWFuY2hhZG8geQorTk9LLgorRGViaWFuIEwxMG4gU3BhbmlzaCA8ZGViaWFuXC1sMTBuXC1zcGFuaXNoQGxpc3RzLmRlYmlhbi5vcmc+LgorLmJyCitSZXZpc2lvbmVzIHBvciBTYW50aWFnbyBWaWxhIDxzYW52aWxhQHVuZXguZXM+LAorSmF2aWVyIEZlcm7hbmRlelwtU2FuZ3Vpbm8sIFJ1YuluIFBvcnJhcywKK0x1aXMgVXJpYmUgeSBPbWFyIENhbXBhZ25lLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vZXMvZHBrZy1hcmNoaXRlY3R1cmUuMSBiL2Rwa2ctMS4xNi4xLjEvbWFuL2VzL2Rwa2ctYXJjaGl0ZWN0dXJlLjEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTg4MWJlMAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL2VzL2Rwa2ctYXJjaGl0ZWN0dXJlLjEKQEAgLTAsMCArMSwzMjYgQEAKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlRIIGRwa2dcLWFyY2hpdGVjdHVyZSAxIDIwMTFcLTA4XC0xNCAiUHJveWVjdG8gRGViaWFuIiAiSGVycmFtaWVudGFzIGRlIGRwa2ciCisuU0ggTk9NQlJFCitkcGtnXC1hcmNoaXRlY3R1cmUgXC0gQ29uZmlndXJhciB5IGRldGVybWluYXIgbGEgYXJxdWl0ZWN0dXJhIHBhcmEgbGEKK2NvbnN0cnVjY2nzbiBkZSBwYXF1ZXRlcworLgorLlNIIFNJTk9QU0lTCitcZkJkcGtnXC1hcmNoaXRlY3R1cmVcZlAgW1xmSW9wdGlvblxmUC4uLl0gW1xmSWNvbW1hbmRcZlBdCisuUFAKKy4KKy5TSCBERVNDUklQQ0nTTgorZHBrZ1wtYXJjaGl0ZWN0dXJlIGZhY2lsaXRhIGRldGVybWluYXIgeSBjb25maWd1cmFyIGxhIGFycXVpdGVjdHVyYSBkZQorY29uc3RydWNjafNuIHkgZGUgbGEgbeFxdWluYSBhbmZpdHJp824gcGFyYSBsYSBjb25zdHJ1Y2Np824gZGUgdW4gcGFxdWV0ZS4KKy5QUAorTGEgYXJxdWl0ZWN0dXJhIGRlIGNvbnN0cnVjY2nzbiBzaWVtcHJlIHNlIGRldGVybWluYSBjb24gdW5hIGludm9jYWNp824KK2V4dGVybmEgYSBcZkJkcGtnXGZQKDEpLCB5IG5vIHNlIHB1ZWRlIGRlZmluaXIgZW4gbGEgbO1uZWEgZGUg83JkZW5lcy4KKy5QUAorUHVlZGUgZGVmaW5pciBsYSBhcnF1aXRlY3R1cmEgZGVsIGFuZml0cmnzbiBpbnRyb2R1Y2llbmRvIHVuYSBvIGFtYmFzCitvcGNpb25lcyBcZkJcLWFcZlAgeSBcZkJcLXRcZlAuIEVsIHZhbG9yIHBvciBvbWlzafNuIGVzIHVuYSBpbnZvY2FjafNuIGV4dGVybmEgYQorXGZCZ2NjXGZQKDEpLCBvIGxhIG1pc21hIHF1ZSBsYSBhcnF1aXRlY3R1cmEgZGUgY29uc3RydWNjafNuIGVuIGNhc28gZGUgbm8KK2Rpc3BvbmVyIGRlIFxzLTFDQ1xzMCBvIGdjYy4gRXMgc3VmaWNpZW50ZSB1c2FyIFxmQlwtYVxmUCBvIFxmQlwtdFxmUCwgZWwgdmFsb3IgZGVsCitvdHJvIHNlIGRlZmluaXLhIGNvbiB1biB2YWxvciBwcmVkZWZpbmlkbyBhZGVjdWFkby4gRGUgaGVjaG8sIGEgdmVjZXMgZXMKK21lam9yIGRlZmluaXIgc/NsbyB1bm8sIHlhIHF1ZSBcZkJkcGtnXC1hcmNoaXRlY3R1cmVcZlAgbGUgYXZpc2Fy4SBzaSBzdSBvcGNp824KK25vIGVuY2FqYSBjb24gbGEgb3BjafNuIHByZWRlZmluaWRhLgorLgorLlNIINNSREVORVMKKy5UUCAKK1xmQlwtbFxmUAorTXVlc3RyYSBsYXMgdmFyaWFibGVzIGRlIGVudG9ybm8sIHVuYSBwb3IgbO1uZWEsIGNvbiBlbCBmb3JtYXRvCitcZklWQVJJQUJMRT12YWxvclxmUC4gRXN0YSBlcyBsYSBhY2Np824gcHJlZGVmaW5pZGEuCisuVFAgCitcZkJcLWVcZlBcZklkZWJpYW5cLWFyY2hpdGVjdHVyZVxmUAorUmV2aXNhIHNpIGxhIGFycXVpdGVjdHVyYSBlcyBsYSBtaXNtYS4gUG9yIG9taXNp824sIFxmSWRlYmlhblwtYXJjaGl0ZWN0dXJlXGZQCitzZSBjb21wYXJhIGNvbiBsYSBhcnF1aXRlY3R1cmEgZGVsIHNpc3RlbWEgRGViaWFuIGFjdHVhbCwgZWwgc2lzdGVtYQorYW5maXRyafNuLiBFc3RhIGFjY2nzbiBubyBleHBhbmRlIGxvcyBjb21vZGluZXMgZGUgYXJxdWl0ZWN0dXJhLiBMYSBvcmRlbgorZmluYWxpemEgY29uIHVuIGVzdGFkbyBkZSBzYWxpZGEgZGUgY2VybyBzaSBjb2luY2lkZW4sIHkgZGUgMSBlbiBjYXNvCitjb250cmFyaW8uCisuVFAgCitcZkJcLWlcZlBcZkljb21vZO1uXC1hcnF1aXRlY3R1cmFcZlAKK1JldmlzYSBsYSBpZGVudGlkYWQgZGUgbGEgYXJxdWl0ZWN0dXJhIGV4cGFuZGllbmRvIFxmSWNvbW9kaW5cLWFycXVpdGVjdHVyYVxmUAorY29tbyB1biBjb21vZO1uIGRlIGFycXVpdGVjdHVyYSwgeSBjb21wYXLhbmRvbGEgY29uIGxhIGFycXVpdGVjdHVyYSBkZWwKK3Npc3RlbWEgRGViaWFuIGFjdHVhbC4gTGEgb3JkZW4gZmluYWxpemEgY29uIHVuIGVzdGFkbyBkZSBzYWxpZGEgZGUgY2VybyBzaQorY29pbmNpZGUsIHkgZGUgMSBlbiBjYXNvIGNvbnRyYXJpby4KKy5UUCAKK1xmQlwtcVxmUFxmSW5vbWJyZVwtdmFyaWFibGVcZlAKK011ZXN0cmEgZWwgdmFsb3IgZGUgdW5hIPpuaWNhIHZhcmlhYmxlLgorLlRQIAorXGZCXC1zXGZQCitNdWVzdHJhIHVuYSBvcmRlbiCrZXhwb3J0uy4gU2UgcHVlZGUgdXNhciBwYXJhIGRlZmluaXIgbGFzIHZhcmlhYmxlcyBkZQorZW50b3JubyBtZWRpYW50ZSBldmFsLgorLlRQIAorXGZCXC11XGZQCitNdWVzdHJhIHVuYSBvcmRlbiBzaW1pbGFyIGEgXGZCXC1zXGZQLCBwZXJvIHBhcmEgZWxpbWluYXIgbGEgZGVmaW5pY2nzbgorKKt1bnNldLspIGRlIHRvZGFzIGxhcyB2YXJpYWJsZXMuCisuVFAgCitcZkJcLWNcZlBcZkkgb3JkZW5cZlAKK0VqZWN1dGEgdW5hIFxmSW9yZGVuXGZQIGVuIHVuIGVudG9ybm8gY3V5YXMgdmFyaWFibGVzIHlhIGVzdOFuIGRlZmluaWRhcyBjb24gdW4KK3ZhbG9yIHByZWRlZmluaWRvLgorLlRQIAorXGZCXC1MXGZQCitNdWVzdHJhIHVuYSBsaXN0YSBkZSBub21icmVzIGRlIGFycXVpdGVjdHVyYSB24WxpZG9zLgorLlRQIAorXGZCXC1cLWhlbHBcZlAKK011ZXN0cmEgZWwgbW9kbyBkZSB1c28geSB0ZXJtaW5hLgorLlRQIAorXGZCXC1cLXZlcnNpb25cZlAKK011ZXN0cmEgbGEgdmVyc2nzbiB5IHRlcm1pbmEuCisuCisuU0ggT1BDSU9ORVMKKy5UUCAKK1xmQlwtYVxmUFxmSWRlYmlhblwtYXJjaGl0ZWN0dXJlXGZQCitEZWZpbmUgbGEgYXJxdWl0ZWN0dXJhIGRlIERlYmlhbi4KKy5UUCAKK1xmQlwtdFxmUFxmSXRpcG9cLXNpc3RlbWFcLWdudVxmUAorRGVmaW5lIGVsIHRpcG8gZGUgc2lzdGVtYSBHTlUuCisuVFAgCitcZkJcLWZcZlAKK0xvcyBzY3JpcHRzIHJlc3BldGFuIGxvcyB2YWxvcmVzIGRlIHZhcmlhYmxlcyBkZSBlbnRvcm5vIHByZWV4aXN0ZW50ZXMgcXVlCit0aWVuZW4gZWwgbWlzbW8gbm9tYnJlIHF1ZSBsb3MgdmFsb3JlcyBjb250ZW5pZG9zIGVuIGVsIHNjcmlwdCAocG9yIGVqZW1wbG8sCit1c2Fkb3MgcG9yIFxmQmRwa2dcLWFyY2hpdGVjdHVyZVxmUCksIGEgbWVub3MgcXVlIHNlIHVzZSBlc3RhIG1hcmNhIGRlCitmb3J6YWRvLiBQZXJtaXRlIGFsIHVzdWFyaW8gc29icmVlc2NyaWJpciB1biB2YWxvciwgYfpuIGN1YW5kbyBsYSBpbnZvY2FjafNuCithIFxmQmRwa2dcLWFyY2hpdGVjdHVyZVxmUCBzZSBlbmN1ZW50cmEgZW4gb3RybyBzY3JpcHQgKHBvciBlamVtcGxvLAorXGZCZHBrZ1wtYnVpbGRwYWNrYWdlXGZQKDEpKS4KKy4KKy5TSCBUyVJNSU5PUworLklQICJt4XF1aW5hIGRlIGNvbnN0cnVjY2nzbiIgNAorTGEgbeFxdWluYSBlbiBsYSBxdWUgc2UgY29uc3RydXllIGVsIHBhcXVldGUuCisuSVAgIm3hcXVpbmEgYW5maXRyafNuIiA0CitMYSBt4XF1aW5hIHBhcmEgbGEgY3VhbCBzZSBjb25zdHJ1eWUgZWwgcGFxdWV0ZS4KKy5JUCAiQXJxdWl0ZWN0dXJhIGRlIERlYmlhbiIgNAorTGEgY2FkZW5hIGRlIGxhIGFycXVpdGVjdHVyYSBkZSBEZWJpYW4sIHF1ZSBlc3BlY2lmaWNhIGVsIOFyYm9sIGJpbmFyaW8gZW4KK2VsIGFyY2hpdm8gXHMtMUZUUFxzMC4gRWplbXBsb3M6IGkzODYsIHNwYXJjLCBodXJkXC1pMzg2LgorLklQICJjb21vZO1uIGRlIGFycXVpdGVjdHVyYSIgNAorVW4gY29tb2TtbiBkZSBhcnF1aXRlY3R1cmEgZXMgdW5hIGNhZGVuYSBlc3BlY2lhbCBkZSBhcnF1aXRlY3R1cmEgcXVlIGVuY2FqYQorY29uIGN1YWxxdWllciBhcnF1aXRlY3R1cmEgcmVhbCBkZWwgcXVlIGVzIHBhcnRlLiBMYSBmb3JtYSBoYWJpdHVhbCBlcworPGtlcm5lbD5cLTxjcHU+LiBFamVtcGxvczogbGludXhcLWFueSwgYW55XC1pMzg2LCBodXJkXC1hbnkuCisuSVAgInRpcG8gZGUgc2lzdGVtYSBccy0xR05VXHMwIiA0CitVbmEgY2FkZW5hIGRlIGRlZmluaWNp824gZGUgYXJxdWl0ZWN0dXJhIHF1ZSBjb25zaXN0ZSBkZSBkb3MgcGFydGVzCitzZXBhcmFkYXMgcG9yIHVuIGd1afNuOiBlbCBwcm9jZXNhZG9yIHkgZWwgc2lzdGVtYS4gRWplbXBsb3M6CitpMzg2XC1saW51eFwtZ251LCBzcGFyY1wtbGludXhcLWdudSwgaTM4NlwtZ251LCB4ODZfNjRcLW5ldGJzZC4KKy4KKy5TSCBWQVJJQUJMRVMKK0xhcyBzaWd1aWVudGVzIHZhcmlhYmxlcyBzZSBkZWZpbmVuIG1lZGlhbnRlIFxmQmRwa2dcLWFyY2hpdGVjdHVyZVxmUDoKKy5JUCBccy0xREVCX0JVSUxEX0FSQ0hcczAgNAorTGEgYXJxdWl0ZWN0dXJhIGRlIERlYmlhbiBkZSBsYSBt4XF1aW5hIGRlIGNvbnN0cnVjY2nzbi4KKy5JUCBccy0xREVCX0JVSUxEX0FSQ0hfT1NcczAgNAorRWwgbm9tYnJlIGRlbCBzaXN0ZW1hIERlYmlhbiBkZSBsYSBt4XF1aW5hIGRlIGNvbnN0cnVjY2nzbi4KKy5JUCBccy0xREVCX0JVSUxEX0FSQ0hfQ1BVXHMwIDQKK0VsIG5vbWJyZSBkZSBEZWJpYW4gZGVsIHByb2Nlc2Fkb3IgZGUgbGEgbeFxdWluYSBkZSBjb25zdHJ1Y2Np824uCisuSVAgXHMtMURFQl9CVUlMRF9BUkNIX0JJVFNcczAgNAorRWwgdGFtYfFvIGRlbCBwdW50ZXJvIGRlIGxhIG3hcXVpbmEgZGUgY29uc3RydWNjafNuLCBlbiBiaXRzLgorLklQIFxzLTFERUJfQlVJTERfQVJDSF9FTkRJQU5cczAgNAorRWwgbml2ZWwgZGUgq2VuZGlhbml6YWNp8267IGRlIGxhIG3hcXVpbmEgZGUgY29uc3RydWNjafNuLCCrbGl0dGxluyBvIKtiaWe7LgorLklQIFxzLTFERUJfQlVJTERfR05VX0NQVVxzMCA0CitMYSBwYXJ0ZSBccy0xQ1BVXHMwIGRlIFxzLTFERUJfQlVJTERfR05VX1RZUEVcczAuCisuSVAgXHMtMURFQl9CVUlMRF9HTlVfU1lTVEVNXHMwIDQKK0xhIHBhcnRlIGRlIKtTeXN0ZW27IGRlIFxzLTFERUJfQlVJTERfR05VX1RZUEVcczAuCisuSVAgXHMtMURFQl9CVUlMRF9HTlVfVFlQRVxzMCA0CitFbCB0aXBvIGRlIHNpc3RlbWEgXHMtMUdOVVxzMCBkZSBsYSBt4XF1aW5hIGRlIGNvbnN0cnVjY2nzbi4KKy5JUCBccy0xREVCX0JVSUxEX01VTFRJQVJDSFxzMCA0CitUaGUgY2xhcmlmaWVkIFxzLTFHTlVcczAgc3lzdGVtIHR5cGUgb2YgdGhlIGJ1aWxkIG1hY2hpbmUsIHVzZWQgZm9yCitmaWxlc3lzdGVtIHBhdGhzLgorLklQIFxzLTFERUJfSE9TVF9BUkNIXHMwIDQKK0xhIGFycXVpdGVjdHVyYSBkZSBEZWJpYW4gZGUgbGEgbeFxdWluYSBhbmZpdHJp824uCisuSVAgXHMtMURFQl9IT1NUX0FSQ0hfT1NcczAgNAorRWwgbm9tYnJlIGRlIHNpc3RlbWEgRGViaWFuIGRlIGxhIG3hcXVpbmEgYW5maXRyafNuLgorLklQIFxzLTFERUJfSE9TVF9BUkNIX0NQVVxzMCA0CitFbCBub21icmUgZGVsIHByb2Nlc2Fkb3IgRGViaWFuIGRlIGxhIG3hcXVpbmEgYW5maXRyafNuLgorLklQIFxzLTFERUJfSE9TVF9BUkNIX0JJVFNcczAgNAorRWwgdGFtYfFvIGRlbCBwdW50ZXJvIGRlIGxhIG3hcXVpbmEgYW5maXRyafNuLCBlbiBiaXRzLgorLklQIFxzLTFERUJfSE9TVF9BUkNIX0VORElBTlxzMCA0CitFbCBuaXZlbCBkZSCrZW5kaWFuaXphY2nzbrsgZGUgbGEgbeFxdWluYSBhbmZpdHJp824sIKtsaXR0bGW7IG8gq2JpZ7suCisuSVAgXHMtMURFQl9IT1NUX0dOVV9DUFVcczAgNAorTGEgcGFydGUgZGUgXHMtMUNQVVxzMCBkZSBccy0xREVCX0hPU1RfR05VX1RZUEVcczAuCisuSVAgXHMtMURFQl9IT1NUX0dOVV9TWVNURU1cczAgNAorTGEgcGFydGUgZGUgq1N5c3RlbbsgZGUgXHMtMURFQl9IT1NUX0dOVV9UWVBFXHMwLgorLklQIFxzLTFERUJfSE9TVF9HTlVfVFlQRVxzMCA0CitFbCB0aXBvIGRlIHNpc3RlbWEgXHMtMUdOVVxzMCBkZSBsYSBt4XF1aW5hIGFuZml0cmnzbi4KKy5JUCBccy0xREVCX0hPU1RfTVVMVElBUkNIXHMwIDQKK1RoZSBjbGFyaWZpZWQgXHMtMUdOVVxzMCBzeXN0ZW0gdHlwZSBvZiB0aGUgaG9zdCBtYWNoaW5lLCB1c2VkIGZvcgorZmlsZXN5c3RlbSBwYXRocy4KKy4KKy5TSCBERUJJQU4vUlVMRVMKK0xhcyB2YXJpYWJsZXMgZGUgZW50b3JubyBkZWZpbmlkYXMgcG9yIFxmQmRwa2dcLWFyY2hpdGVjdHVyZVxmUCBzZSBpbnRyb2R1Y2VuIGEKK1xmSWRlYmlhbi9ydWxlc1xmUCBjb21vIHZhcmlhYmxlcyBkZSCrbWFrZbsgKGNvbnN1bHRlIGxhIGRvY3VtZW50YWNp824gZGUKK21ha2UpLiBQb3Igb3RyYSBwYXJ0ZSwgbm8gZGViZXLtYSBkZXBlbmRlciBkZSBlbGxvcywgeWEgcXVlIGVzdG8gcm9tcGUgbGEKK2ludm9jYWNp824gbWFudWFsIGRlbCBzY3JpcHQuIEVuIGx1Z2FyIGRlIGVsbG8sIHNlIGRlYmVy7WFuIGluaWNpYXIgbWVkaWFudGUKK1xmQmRwa2dcLWFyY2hpdGVjdHVyZVxmUCBjb24gbGEgb3BjafNuIKtcLXG7LiBBcXXtIGhheSBhbGd1bm9zIGVqZW1wbG9zLCBxdWUKK211ZXN0cmFuIHRhbWJp6W4gY29tbyBtZWpvcmFyIGxhIGNvbXBhdGliaWxpZGFkIGRlIHN1IHBhcXVldGUgY29uIGxhCitjb25zdHJ1Y2Np824gcGFyYSB2YXJpYXMgYXJxdWl0ZWN0dXJhcy4KKy5QUAorCitFbiBsdWdhciBkZToKKy5JUAorLm5mCitBUkNIPVxgZHBrZyBcLVwtcHJpbnRcLWFyY2hpdGVjdHVyZVxgCitjb25maWd1cmUgJChccy0xQVJDSFxzMClcLWxpbnV4CisuZmkKKy5QUAordXNlIGxvIHNpZ3VpZW50ZToKKy5JUAorLm5mCitcJlxzLTFERUJfQlVJTERfR05VX1RZUEVcczAgOj0gJChzaGVsbCBkcGtnXC1hcmNoaXRlY3R1cmUgXC1xREVCX0JVSUxEX0dOVV9UWVBFKQorXCZccy0xREVCX0hPU1RfR05VX1RZUEVcczAgOj0gJChzaGVsbCBkcGtnXC1hcmNoaXRlY3R1cmUgXC1xREVCX0hPU1RfR05VX1RZUEUpCisKK2NvbmZpZ3VyZSBcLVwtYnVpbGQ9JChccy0xREVCX0JVSUxEX0dOVV9UWVBFXHMwKSBcLVwtaG9zdD0kKFxzLTFERUJfSE9TVF9HTlVfVFlQRVxzMCkKKy5maQorLlBQCisKK0VuIGx1Z2FyIGRlOgorLklQCisubmYKK0FSQ0g9XGBkcGtnIFwtXC1wcmludFwtYXJjaGl0ZWN0dXJlXGAKK2lmZXEgKCQoXHMtMUFSQ0hcczApLGFscGhhKQorICAuLi4KK2VuZGlmCisuZmkKKy5QUAordXNlOgorLklQCisubmYKK1wmXHMtMURFQl9IT1NUX0FSQ0hcczAgOj0gJChzaGVsbCBkcGtnXC1hcmNoaXRlY3R1cmUgXC1xREVCX0hPU1RfQVJDSCkKKworaWZlcSAoJChccy0xREVCX0hPU1RfQVJDSFxzMCksYWxwaGEpCisgIC4uLgorZW5kaWYKKy5maQorLlBQCitvIHNpIHPzbG8gcHJlY2lzYSByZXZpc2FyIGVsIHRpcG8gZGUgc2lzdGVtYSBvIENQVSwgdXNlIGxhcyB2YXJpYWJsZXMKK6tERUJfSE9TVF9BUkNIX09TuyBvIKtERUJfSE9TVF9BUkNIX0NQVbsuCisuUFAKK0VuIGdlbmVyYWwsIGludm9jYXIgZHBrZyBlbiBlbCBmaWNoZXJvIGRlIHJlZ2xhcyAoq3J1bGVzuykgcGFyYSBvYnRlbmVyIGxhCitpbmZvcm1hY2nzbiBkZSBhcnF1aXRlY3R1cmEgZXN04SBvYnNvbGV0byAoYSBtZW5vcyBxdWUgZGVzZWUgb2ZyZWNlcgorY29tcGF0aWJpbGlkYWQgY29uIHZlcnNpb25lcyBhbnRlcmlvcmVzLCB26WFzZSBhIGNvbnRpbnVhY2nzbikuIExhIG9wY2nzbgorq1wtXC1wcmludFwtYXJjaGl0ZWN0dXJluyBlcyBwYXJ0aWN1bGFybWVudGUgaW5lc3RhYmxlLCB5YSBxdWUgZXhpc3RlbgorYXJxdWl0ZWN0dXJhcyBkZSBEZWJpYW4gcXVlIG5vIGVuY2FqYW4gY29uIGVsIG5vbWJyZSBkZSB1biBwcm9jZXNhZG9yLgorLgorLlNIICJDT01QQVRJQklMSURBRCBDT04gVkVSU0lPTkVTIEFOVEVSSU9SRVMiCitMYXMgdmFyaWFibGVzIKtERUJfKl9BUkNIX0JJVFO7IHkgq0RFQl8qX0FSQ0hfRU5ESUFOuyBzZSBpbnRyb2R1amVyb24gYQorcGFydGlyIGRlIGxhIHZlcnNp824gMS4xNS40IGRlIGRwa2dcLWRldi4gU3UgdXNvIGVuIFxmSWRlYmlhbi9ydWxlc1xmUCByZXF1aWVyZQordW5hIGRlcGVuZGVuY2lhIGRlIGNvbnN0cnVjY2nzbiBzb2JyZSBkcGtnXC1kZXYgKD49IDEuMTUuNCkuCisuUFAKK0xhcyB2YXJpYWJsZXMgq0RFQl9IT1NUX0FSQ0hfQ1BVuyB5IKtERUJfSE9TVF9BUkNIX09TuyBzZSBpbnRyb2R1amVyb24gYQorcGFydGlyIGRlIGxhIHZlcnNp824gMS4xMy4yIGRlIGRwa2dcLWRldi4gQW50ZXMsIGxvcyBmaWNoZXJvcyBcZklkZWJpYW4vcnVsZXNcZlAKK3NvbO1hbiByZXZpc2FyIGFxdWVsbG9zIHZhbG9yZXMgZGUgq0RFQl9IT1NUX0dOVV9DUFW7IG8gq0RFQl9IT1NUX0dOVV9UWVBFuworc3VzY2VwdGlibGVzIGRlIGhhYmVyIGNhbWJpYWRvLgorLlBQCitTZSBkZWJlcu1hbiBhY3R1YWxpemFyIGFxdWVsbGFzIHBhcnRlcyBkZSBsb3MgZmljaGVyb3MgXGZJZGViaWFuL3J1bGVzXGZQIHF1ZQorcmV2aXNhbiBsYXMgdmFyaWFibGVzIHF1ZSBkZWNpZGVuIGVsIG1vZG8gbyBlbCBvYmpldGl2byBhIGNvbXBpbGFyLiBQdWVkZQordXNhciBlbCBzaWd1aWVudGUgY/NkaWdvIHNpIGRlc2VhIHBlcm1pdGlyIGxhIGNvbXBhdGliaWxpZGFkIGNvbiB2ZXJzaW9uZXMKK2FudGVyaW9yZXMgZGUgZHBrZ1wtZGV2OgorLklQCisubmYKK0RFQl9IT1NUX0FSQ0hfQ1BVIDo9ICQoc2hlbGwgZHBrZ1wtYXJjaGl0ZWN0dXJlIFwtcURFQl9IT1NUX0FSQ0hfQ1BVIDI+L2Rldi9udWxsKQorREVCX0hPU1RfQVJDSF9PUyA6PSAkKHNoZWxsIGRwa2dcLWFyY2hpdGVjdHVyZSBcLXFERUJfSE9TVF9BUkNIX09TIDI+L2Rldi9udWxsKQorCisjIFRha2UgYWNjb3VudCBvZiBvbGQgZHBrZ1wtYXJjaGl0ZWN0dXJlIG91dHB1dC4KK2lmZXEgKCQoREVCX0hPU1RfQVJDSF9DUFUpLCkKKyAgREVCX0hPU1RfQVJDSF9DUFUgOj0gJChzaGVsbCBkcGtnXC1hcmNoaXRlY3R1cmUgXC1xREVCX0hPU1RfR05VX0NQVSkKKyAgaWZlcSAoJChERUJfSE9TVF9BUkNIX0NQVSkseDg2XzY0KQorICAgIERFQl9IT1NUX0FSQ0hfQ1BVIDo9IGFtZDY0CisgIGVuZGlmCitlbmRpZgoraWZlcSAoJChERUJfSE9TVF9BUkNIX09TKSwpCisgIERFQl9IT1NUX0FSQ0hfT1MgOj0gJChzdWJzdCBcLWdudSwsJChzaGVsbCBkcGtnXC1hcmNoaXRlY3R1cmUgXC1xREVCX0hPU1RfR05VX1NZU1RFTSkpCisgIGlmZXEgKCQoREVCX0hPU1RfQVJDSF9PUyksZ251KQorICAgIERFQl9IT1NUX0FSQ0hfT1MgOj0gaHVyZAorICBlbmRpZgorZW5kaWYKKy5maQorLlBQCitZIGRlIGZvcm1hIHBhcmVjaWRhIGNvbiCrREVCX0JVSUxEX0FSQ0hfQ1BVuyB5IKtERUJfQlVJTERfQVJDSF9PU7suCisuUFAKK1NpIGRlc2VhIGxhIGNvbXBhdGliaWxpZGFkIGNvbiB2ZXJzaW9uZXMgZGUgZHBrZ1wtZGV2IHF1ZSBubyBpbmNsde1hbgorXGZCZHBrZ1wtYXJjaGl0ZWN0dXJlXGZQLCBwdWVkZSB1c2FyIGxvIHNpZ3VpZW50ZToKKy5JUAorLm5mCitcJlxzLTFERUJfQlVJTERfQVJDSFxzMCA6PSAkKHNoZWxsIGRwa2cgXC1cLXByaW50XC1hcmNoaXRlY3R1cmUpCitcJlxzLTFERUJfQlVJTERfR05VX0NQVVxzMCA6PSAkKHBhdHN1YnN0IGh1cmRcLSUsJSwkKFxzLTFERUJfQlVJTERfQVJDSFxzMCkpCitpZmVxICgkKGZpbHRlclwtb3V0IGh1cmRcLSUsJChccy0xREVCX0JVSUxEX0FSQ0hcczApKSwpCisgIFxzLTFERUJfQlVJTERfR05VX1NZU1RFTVxzMCA6PSBnbnUKK2Vsc2UKKyAgXHMtMURFQl9CVUlMRF9HTlVfU1lTVEVNXHMwIDo9IGxpbnV4XC1nbnUKK2VuZGlmCitERUJfQlVJTERfR05VX1RZUEU9JChccy0xREVCX0JVSUxEX0dOVV9DUFVcczApXC0kKFxzLTFERUJfQlVJTERfR05VX1NZU1RFTVxzMCkKKworXCZccy0xREVCX0hPU1RfQVJDSFxzMCA6PSAkKFxzLTFERUJfQlVJTERfQVJDSFxzMCkKK1wmXHMtMURFQl9IT1NUX0dOVV9DUFVcczAgOj0gJChccy0xREVCX0JVSUxEX0dOVV9DUFVcczApCitcJlxzLTFERUJfSE9TVF9HTlVfU1lTVEVNXHMwIDo9ICQoXHMtMURFQl9CVUlMRF9HTlVfU1lTVEVNXHMwKQorXCZccy0xREVCX0hPU1RfR05VX1RZUEVcczAgOj0gJChccy0xREVCX0JVSUxEX0dOVV9UWVBFXHMwKQorLmZpCisuUFAKK0luc2VydGUgdW4gc3ViY29uanVudG8gZGUgZXN0YXMgbO1uZWFzIGFsIGluaWNpbyBkZWwgZmljaGVybyCrZGViaWFuL3J1bGVzuzsKK2VzdG9zIHZhbG9yZXMgcHJlZGVmaW5pZG9zIHNlIHNvYnJlZXNjcmliaXLhbiBlbiBjYXNvIGRlIHVzYXIKK2Rwa2dcLWFyY2hpdGVjdHVyZS4KKy5QUAorTm8gbmVjZXNpdGEgZWwgY29uanVudG8gY29tcGxldG8uIFNlbGVjY2lvbmUgdW4gY29uanVudG8gY29uc2lzdGVudGUgcXVlCitjb250ZW5nYSBsb3MgdmFsb3JlcyBxdWUgdXNhIGVuIGVsIGZpY2hlcm8gZGUgcmVnbGFzLiBQb3IgZWplbXBsbywgc2kgc/NsbworbmVjZXNpdGEgbGEgYXJxdWl0ZWN0dXJhIERlYmlhbiBkZWwgc2lzdGVtYSBkZSBkZXN0aW5vLCB0aWVuZSBzdWZpY2llbnRlIGNvbgorq0RFQl9IT1NUX0FSQ0g9XGBkcGtnIFwtXC1wcmludFwtYXJjaGl0ZWN0dXJlXLsgKGRlIGhlY2hvLCBlc3RhIGVzIGxhCithcnF1aXRlY3R1cmEgZGUgRGViaWFuIGRlIGxhIG3hcXVpbmEgZGUgY29uc3RydWNjafNuLCBwZXJvIHJlY3VlcmRlIHF1ZSBz82xvCitpbnRlbnRhbW9zIGNyZWFyIGxhIGNvbXBhdGliaWxpZGFkIGNvbiB2ZXJzaW9uZXMgYW50ZXJpb3JlcyBxdWUgdGllbmVuIHVuYQorY29tcGlsYWNp824gbmF0aXZhKS4KKy5QUAorTGFzIG9wY2lvbmVzIFxmQlwtZVxmUCB5IFxmQlwtaVxmUCBhcGFyZWNpZXJvbiBlbiByZWNpZW50ZXMgdmVyc2lvbmVzIGRlCitcZkJkcGtnXC1hcmNoaXRlY3R1cmVcZlAgKGEgcGFydGlyIGRlIGxhIHZlcnNp824gMS4xMy4xMyBkZSBkcGtnKS4KKy4KKy5TSCBFSkVNUExPUworXGZCZHBrZ1wtYnVpbGRwYWNrYWdlXGZQIGFjZXB0YSBsYSBvcGNp824gXGZCXC1hXGZQIHkgbGEgaW50cm9kdWNlIGEKK1xmQmRwa2dcLWFyY2hpdGVjdHVyZVxmUC4gT3Ryb3MgZWplbXBsb3M6CisuSVAKK0NDPWkzODZcLWdudVwtZ2NjIGRwa2dcLWFyY2hpdGVjdHVyZSBcLWMgZGViaWFuL3J1bGVzIGJ1aWxkCisuSVAKK2V2YWwgXGBkcGtnXC1hcmNoaXRlY3R1cmUgXC11XGAKKy5QUAorUmV2aXNhIHNpIHVuYSBhcnF1aXRlY3R1cmEgZXF1aXZhbGUgYSBsYSBhcnF1aXRlY3R1cmEgYWN0dWFsIG8gZGFkYToKKy5JUAorZHBrZ1wtYXJjaGl0ZWN0dXJlIFwtZWxpbnV4XC1hbHBoYQorLklQCitkcGtnXC1hcmNoaXRlY3R1cmUgXC1hbWlwcyBcLWVsaW51eFwtbWlwcworLlBQCitSZXZpc2Egc2kgbGEgYXJxdWl0ZWN0dXJhIGFjdHVhbCBvIGludHJvZHVjaWRhIGNvbiCrXC1huyBlcyBkZSB1biBzaXN0ZW1hCitMaW51eDoKKy5JUAorZHBrZ1wtYXJjaGl0ZWN0dXJlIFwtaWxpbnV4XC1hbnkKKy5JUAorZHBrZ1wtYXJjaGl0ZWN0dXJlIFwtYWkzODYgXC1pbGludXhcLWFueQorLgorLlNIIEZJQ0hFUk9TCitBbGwgdGhlc2UgZmlsZXMgaGF2ZSB0byBiZSBwcmVzZW50IGZvciBcZkJkcGtnXC1hcmNoaXRlY3R1cmVcZlAgdG8gd29yay4gVGhlaXIKK2xvY2F0aW9uIGNhbiBiZSBvdmVycmlkZGVuIGF0IHJ1bnRpbWUgd2l0aCB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGUKK1xmQkRQS0dfREFUQURJUlxmUC4KKy5UUCAKK1xmSS91c3Ivc2hhcmUvZHBrZy9jcHV0YWJsZVxmUAorVGFibGEgZGUgbm9tYnJlcyBkZSBDUFUgY29ub2NpZG9zIHkgc3UgY29ycmVsYWNp824gY29uIHN1IG5vbWJyZSBHTlUuCisuVFAgCitcZkkvdXNyL3NoYXJlL2Rwa2cvb3N0YWJsZVxmUAorVGFibGEgZGUgc2lzdGVtYXMgb3BlcmF0aXZvcyBjb25vY2lkb3MgeSBzdSBjb3JyZWxhY2nzbiBjb24gc3Ugbm9tYnJlIEdOVS4KKy5UUCAKK1xmSS91c3Ivc2hhcmUvZHBrZy90cmlwbGV0dGFibGVcZlAKK0NvcnJlbGFjafNuIGVudHJlIHR1cGxlcyBkZSAzIGRlIGxhIGFycXVpdGVjdHVyYSBkZSBEZWJpYW4sIHkgbG9zIG5vbWJyZXMgZGUKK2FycXVpdGVjdHVyYSBkZSBEZWJpYW4uCisuCisuU0ggIlbJQVNFIFRBTUJJyU4iCitcZkJkcGtnXC1idWlsZHBhY2thZ2VcZlAoMSksIFxmQmRwa2dcLWNyb3NzXGZQKDEpLgorLgorLlNIIEFVVE9SCitcZkJkcGtnXC1hcmNoaXRlY3R1cmVcZlAgeSBzdSBw4WdpbmEgZGUgbWFudWFsIGZ1ZXJvbiBlc2NyaXRvcyBvcmlnaW5hbG1lbnRlIHBvcgorTWFyY3VzIEJyaW5rbWFubiA8YnJpbmttZEBkZWJpYW4ub3JnPi4KKworLlNIICJUUkFEVUNUT1IiCitSdWR5IEdvZG95IDxydWR5QGtlcm5lbFwtcGFuaWsub3JnPiwKK1J1YuluIFBvcnJhcyA8bmFob29AaW5pY2lhLmVzPiwKK0JydW5vIEJhcnJlcmEgQy4gPGJydW5vLmJhcnJlcmFAaWdsb28uY2w+LAorQ2FybG9zIEl6cXVpZXJkbyA8Z2hlZXNoQGVydGlzLm5ldD4sCitFc3RlYmFuIE1hbmNoYWRvIHkKK05PSy4KK0RlYmlhbiBMMTBuIFNwYW5pc2ggPGRlYmlhblwtbDEwblwtc3BhbmlzaEBsaXN0cy5kZWJpYW4ub3JnPi4KKy5icgorUmV2aXNpb25lcyBwb3IgU2FudGlhZ28gVmlsYSA8c2FudmlsYUB1bmV4LmVzPiwKK0phdmllciBGZXJu4W5kZXpcLVNhbmd1aW5vLCBSdWLpbiBQb3JyYXMsCitMdWlzIFVyaWJlIHkgT21hciBDYW1wYWduZS4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL2VzL2Rwa2ctYnVpbGRwYWNrYWdlLjEgYi9kcGtnLTEuMTYuMS4xL21hbi9lcy9kcGtnLWJ1aWxkcGFja2FnZS4xCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjJlNjBjODEKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9lcy9kcGtnLWJ1aWxkcGFja2FnZS4xCkBAIC0wLDAgKzEsMjY1IEBACisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkcGtnXC1idWlsZHBhY2thZ2UgMSAyMDExXC0wOFwtMTQgIlByb3llY3RvIERlYmlhbiIgIkhlcnJhbWllbnRhcyBkZSBkcGtnIgorLlNIIE5PTUJSRQorZHBrZ1wtYnVpbGRwYWNrYWdlIFwtIENvbnN0cnVjY2nzbiBkZSBwYXF1ZXRlcyBiaW5hcmlvcyBvIGZ1ZW50ZSBhIHBhcnRpciBkZQorbGFzIGZ1ZW50ZXMKKy4KKy5TSCBTSU5PUFNJUworXGZCZHBrZ1wtYnVpbGRwYWNrYWdlXGZQIFtcZklvcHRpb25cZlAuLi5dCisuCisuU0ggREVTQ1JJUENJ004KK1xmQmRwa2dcLWJ1aWxkcGFja2FnZVxmUCBlcyB1biBwcm9ncmFtYSBxdWUgYXV0b21hdGl6YSBlbCBwcm9jZXNvIGRlCitjb25zdHJ1Y2Np824gZGUgdW4gcGFxdWV0ZSBkZSBEZWJpYW4uIMlzdGUgY29uc2lzdGUgZGUgbG9zIHNpZ3VpZW50ZXMgcGFzb3M6CisuSVAgXGZCMS5cZlAgMworUHJlcGFyYWNp824gZGVsIGVudG9ybm8gZGUgY29uc3RydWNjafNuLCBkZWZpbmllbmRvIHZhcmlhcyB2YXJpYWJsZXMgZGUKK2VudG9ybm8gKGNvbnN1bHRlIFxmQlZBUklBQkxFUyBERSBFTlRPUk5PXGZQKSBwYXJhIGludm9jYXIgXGZCZHBrZ1wtc291cmNlCitcLVwtYmVmb3JlXC1idWlsZFxmUCAoYSBtZW5vcyBxdWUgc2UgZGVmaW5hIFxmQlwtVFxmUCBvIFxmQlwtXC10YXJnZXRcZlAuCisuSVAgXGZCMi5cZlAgMworVmVyaWZpY2FyIHF1ZSBsYXMgZGVwZW5kZW5jaWFzIHkgY29uZmxpY3RvcyBkZSBjb25zdHJ1Y2Np824KKyirYnVpbGRcLWRlcGVuZGVuY2llc7sgeSCrYnVpbGRcLWNvbmZsaWN0c7ssIHJlc3BlY3RpdmFtZW50ZSkgZXN06W4KK3NhdGlzZmVjaGFzIChhIG1lbm9zIHF1ZSBlc3BlY2lmaXF1ZSBcZkJcLWRcZlApLgorLklQIFxmQjMuXGZQIDMKK1NpIHNlIHNlbGVjY2lvbmEgdW4gb2JqZXRpdm8gZXNwZWPtZmljbyBjb24gXGZCXC1UXGZQIG8gXGZCXC1cLXRhcmdldFxmUCwgaW52b2NhIGVzZQorb2JqZXRpdm8geSBzZSBkZXRpZW5lLiBEZSBubyBzZXIgYXPtLCBpbnZvY2EgXGZCZmFrZXJvb3QgZGViaWFuL3J1bGVzIGNsZWFuXGZQCitwYXJhIGxpbXBpYXIgZWwg4XJib2wgZGUgY29uc3RydWNjafNuIChhIG1lbm9zIHF1ZSBlc3BlY2lmaXF1ZSBcZkJcLW5jXGZQKS4KKy5JUCBcZkI0LlxmUCAzCitJbnZvY2FjafNuIGRlIFxmQmRwa2dcLXNvdXJjZSBcLWJcZlAgcGFyYSBnZW5lcmFyIGVsIHBhcXVldGUgZnVlbnRlIChhIG1lbm9zIHF1ZQorc2UgcmVxdWllcmEgc/NsbyBsYSBjb25zdHJ1Y2Np824gZGVsIHBhcXVldGUgYmluYXJpbyBjb24gXGZCXC1iXGZQLCBcZkJcLUJcZlAgbworXGZCXC1BXGZQKS4KKy5JUCBcZkI1LlxmUCAzCitJdCBjYWxscyBcZkJkZWJpYW4vcnVsZXNcZlAgXGZCYnVpbGRcZlAgZm9sbG93ZWQgYnkgXGZCZmFrZXJvb3QgZGViaWFuL3J1bGVzXGZQCitcZkliaW5hcnlcLXRhcmdldFxmUCAodW5sZXNzIGEgc291cmNlXC1vbmx5IGJ1aWxkIGhhcyBiZWVuIHJlcXVlc3RlZCB3aXRoCitcZkJcLVNcZlApLiBOb3RlIHRoYXQgXGZJYmluYXJ5XC10YXJnZXRcZlAgaXMgZWl0aGVyIFxmQmJpbmFyeVxmUCAoZGVmYXVsdCBjYXNlLCBvciBpZgorXGZCXC1iXGZQIGlzIHNwZWNpZmllZCkgIG9yIFxmQmJpbmFyeVwtYXJjaFxmUCAoaWYgXGZCXC1CXGZQIGlzIHNwZWNpZmllZCkgb3IKK1xmQmJpbmFyeVwtaW5kZXBcZlAgKGlmIFxmQlwtQVxmUCBpcyBzcGVjaWZpZWQpLgorLklQIFxmQjYuXGZQIDMKK0ludm9jYWNp824gZGUgXGZCZ3BnXGZQIHBhcmEgZmlybWFyIGVsIGZpY2hlcm8gXGZCLmRzY1xmUCAoZGUgZXhpc3RpciwgYSBtZW5vcyBxdWUKK3NlIGVzcGVjaWZpcXVlIFxmQlwtdXNcZlApLgorLklQIFxmQjcuXGZQIDMKK0ludm9jYWNp824gZGUgXGZCZHBrZ1wtZ2VuY2hhbmdlc1xmUCBwYXJhIGdlbmVyYXIgZWwgZmljaGVybyBcZkIuY2hhbmdlc1xmUC4gTXVjaGFzCitkZSBsYXMgb3BjaW9uZXMgZGUgXGZCZHBrZ1wtYnVpbGRwYWNrYWdlXGZQIHNlIGludHJvZHVjZW4gYSBcZkJkcGtnXC1nZW5jaGFuZ2VzXGZQLgorLklQIFxmQjguXGZQIDMKK0ludm9jYWNp824gZGUgXGZCZ3BnXGZQIHBhcmEgZmlybWFyIGVsIGZpY2hlcm8gXGZCLmNoYW5nZXNcZlAgKGEgbWVub3MgcXVlIHNlCitlc3BlY2lmaXF1ZSBcZkJcLXVzXGZQKS4KKy5JUCBcZkI5LlxmUCAzCitTaSBzZSBlc3BlY2lmaWNhIFxmQlwtdGNcZlAsIHNlIGludm9jYXLhIG51ZXZhbWVudGUgXGZCZmFrZXJvb3QgZGViaWFuL3J1bGVzCitjbGVhblxmUC4gUG9yIPpsdGltbywgaW52b2NhIFxmQmRwa2dcLXNvdXJjZSBcLVwtYWZ0ZXJcLWJ1aWxkXGZQLgorLgorLlNIIE9QQ0lPTkVTCisuVFAgCitcZkJcLWJcZlAKK0VzcGVjaWZpY2EgdW5hIGNvbnN0cnVjY2nzbiBz82xvIGJpbmFyaWEsIG5vIHNlIGNvbnN0cnVpcuFuIGZpY2hlcm9zIGRlCitmdWVudGVzIHkvbyBkaXN0cmlidWlkYXMuIFNlIGludHJvZHVjZSBhIFxmQmRwa2dcLWdlbmNoYW5nZXNcZlAuCisuVFAgCitcZkJcLUJcZlAKK0VzcGVjaWZpY2EgdW5hIGNvbnN0cnVjY2nzbiBz82xvIGJpbmFyaWEsIGxpbWl0YWRhIGEgcGFxdWV0ZXMgZGVwZW5kaWVudGVzCitkZSBhcnF1aXRlY3R1cmEuIFNlIGludHJvZHVjZSBhIFxmQmRwa2dcLWdlbmNoYW5nZXNcZlAuCisuVFAgCitcZkJcLUFcZlAKK0VzcGVjaWZpY2EgdW5hIGNvbnN0cnVjY2nzbiBz82xvIGJpbmFyaWEsIGxpbWl0YWRhIGEgcGFxdWV0ZXMgaW5kZXBlbmRpZW50ZXMKK2RlIGxhIGFycXVpdGVjdHVyYS4gU2UgaW50cm9kdWNlIGEgXGZCZHBrZ1wtZ2VuY2hhbmdlc1xmUC4KKy5UUCAKK1xmQlwtU1xmUAorRXNwZWNpZmljYSB1bmEgY29uc3RydWNjafNuIHPzbG8gZGUgbGFzIGZ1ZW50ZXMsIG5vIHNlIGNvbnN0cnVpcuEgbmluZ/puCitwYXF1ZXRlIGJpbmFyaW8uIFNlIGludHJvZHVjZSBhIFxmQmRwa2dcLWdlbmNoYW5nZXNcZlAuCisuVFAgCitcZkJcLUZcZlAKK0RlZmluZSB1bmEgY29uc3RydWNjafNuIGNvbXBsZXRhIG5vcm1hbCwgc2UgY29uc3RydXllbiBsb3MgcGFxdWV0ZXMgYmluYXJpb3MKK3kgZGUgZnVlbnRlLiBFcyBpZOludGljYSBhbCBjb21wb3J0YW1pZW50byBwcmVkZWZpbmlkbyBjdWFuZG8gbm8gc2UgZGVmaW5lCituaW5ndW5hIG9wY2nzbiBkZSBjb25zdHJ1Y2Np824uCisuUAorXGZCXC1cLXRhcmdldD1cZlBcZkl0YXJnZXRcZlAKKy5icgorXGZCXC1cLXRhcmdldCBcZlBcZkl0YXJnZXRcZlAKKy5icgorXGZCXC1UXGZQXGZJdGFyZ2V0XGZQCisuUlMKK0ludm9jYSBcZkJkZWJpYW4vcnVsZXNcZlAgXGZJdGFyZ2V0XGZQIGRlc3B16XMgZGUgZGVmaW5pciBlbCBlbnRvcm5vIGRlCitjb25zdHJ1Y2Np824sIGRldGVuaWVuZG8gZW4gZXN0ZSBwdW50byBlbCBwcm9jZXNvIGRlIGNvbnN0cnVjY2nzbiBkZWwKK3BhcXVldGUuIFNpIHNlIGludHJvZHVjZSBcZkJcLVwtYXNcLXJvb3RcZlAsIGxhIG9yZGVuIHNlIGVqZWN1dGFy4SBjb21vIGVsIHVzdWFyaW8KK6tyb290uyAodulhc2UgXGZCXC1yXGZQKS4gVGVuZ2EgZW4gY3VlbnRhIHF1ZSBsb3Mgb2JqZXRpdm9zIG9maWNpYWxlcyBxdWUKK3ByZWNpc2FuIGVqZWN1dGFyc2UgY29tbyBhZG1pbmlzdHJhZG9yIHNlZ/puIGxhcyBkaXJlY3RyaWNlcyBkZSBEZWJpYW4gbm8KK25lY2VzaXRhbiBlc3RhIG9wY2nzbi4KKy5SRQorLlRQIAorXGZCXC1cLWFzXC1yb290XGZQCitTdSB1c28gc/NsbyB0aWVuZSBzZW50aWRvIGNvbiBcZkJcLVwtdGFyZ2V0XGZQLiBSZXF1aWVyZSBxdWUgc2UgZWplY3V0ZSBlbAorb2JqZXRpdm8gY29uIHBlcm1pc29zIGRlbCB1c3VhcmlvIKtyb290uy4KKy5QCitcZkJcLXNpXGZQCisuYnIKK1xmQlwtc2FcZlAKKy5icgorXGZCXC1zZFxmUAorLmJyCitcZkJcLXZcZlBcZkl2ZXJzafNuXGZQCisuYnIKK1xmQlwtQ1xmUFxmSWRlc2NyaXBjafNuXC1kZVwtY2FtYmlvc1xmUAorLmJyCitcZkJcLW1cZlBcZklkaXJlY2Np825cLW1hbnRlbmVkb3JcZlAKKy5icgorXGZCXC1lXGZQXGZJZGlyZWNjafNuXC1tYW50ZW5lZG9yXGZQCisuUlMKK1NlIGludHJvZHVjZSBzaW4gY2FtYmlvcyBhIFxmQmRwa2dcLWdlbmNoYW5nZXNcZlAuIENvbnN1bHRlIGxhIHDhZ2luYSBkZSBtYW51YWwuCisuUkUKKy5UUCAKK1xmQlwtYVxmUFxmSWFycXVpdGVjdHVyYVxmUAorRXNwZWNpZmljYSBsYSBhcnF1aXRlY3R1cmEgZGUgRGViaWFuIHBhcmEgbGEgY3VhbCBzZSBjb25zdHJ1eWUgZWwKK3BhcXVldGUuIExhIGFycXVpdGVjdHVyYSBkZSBsYSBt4XF1aW5hIGVuIGxhIHF1ZSBzZSBjb25zdHJ1eWUgZWwgcGFxdWV0ZSBzZQorZGV0ZWN0YSBhdXRvbeF0aWNhbWVudGUsIHkgZXMgdGFtYmnpbiBsYSBhcnF1aXRlY3R1cmEgZGUgZGVzdGlubyBwb3Igb21pc2nzbgorcGFyYSBsYSBt4XF1aW5hIGFuZml0cmnzbi4KKy5UUCAKK1xmQlwtdFxmUFxmSXRpcG9cLXNpc3RlbWFcLWdudVxmUAorRGVmaW5lIGVsIHRpcG8gZGUgc2lzdGVtYSBHTlUgcGFyYSBlbCBjdWFsIHNlIGNvbnN0cnV5ZSBlbCBwYXF1ZXRlLiBTZSBwdWVkZQordXNhciBlbiBsdWdhciBkZSCrXC1huywgbyBjb21vIHVuIGNvbXBsZW1lbnRvIHBhcmEgaW52YWxpZGFyIGVsIHRpcG8gZGUKK3Npc3RlbWEgR05VIHByZWRlZmluaWRvIGRlIGxhIGFycXVpdGVjdHVyYSBEZWJpYW4gZGUgZGVzdGluby4KKy5UUCAKK1xmQlwtalxmUFxmSXRhcmVhc1xmUAorRWwgbvptZXJvIG3heGltbyBkZSB0YXJlYXMgKKtqb2JzuykgZWplY3V04W5kb3NlIHNpbXVsdOFuZWFtZW50ZSwKK2VxdWl2YWxlbnRlIGEgbGEgb3BjafNuIGRlIFxmQm1ha2VcZlAoMSkgZGVsIG1pc21vIG5vbWJyZS4gU2UgYfFhZGly4SBhIGxhCit2YXJpYWJsZSBkZSBlbnRvcm5vIKtNQUtFRkxBR1O7LCBxdWUgY2F1c2EgcXVlIHRvZGFzIGxhcyBpbnZvY2FjaW9uZXMKK3Bvc3RlcmlvcmVzIGEgq21ha2W7IGhlcmVkZW4gZXN0YSBvcGNp824uIFRhbWJp6W4gYfFhZGUKK1xmQnBhcmFsbGVsPVxmUFxmSXRhcmVhc1xmUCBhIGxhIHZhcmlhYmxlIGRlIGVudG9ybm8gq0RFQl9CVUlMRF9PUFRJT05TuywgcXVlCitwZXJtaXRlIHF1ZSBsb3MgZmljaGVyb3Mgq2RlYmlhbi9ydWxlc7sgdXNlbiBlc3RhIGluZm9ybWFjafNuIHBhcmEgc3VzCitwcm9waW9zIHByb3Dzc2l0b3MuIFxmQnBhcmFsbGVsPVxmUFxmSXRhcmVhc1xmUCBlbiBsYSB2YXJpYWJsZSBkZSBlbnRvcm5vCiurREVCX0JVSUxEX09QVElPTlO7IGludmFsaWRhIGVsIHZhbG9yIFxmQlwtalxmUCBlbiBjYXNvIGRlIGludHJvZHVjaXIgZXN0YQorb3BjafNuLgorLlRQIAorXGZCXC1EXGZQCitWZXJpZmljYSBsYXMgZGVwZW5kZW5jaWFzIHkgbG9zIGNvbmZsaWN0b3MgZGUgY29uc3RydWNjafNuLCBpbnRlcnJ1bXBpZW5kbworZWwgcHJvY2VzbyBzaSBhbGd1bmEgbm8gZXN04SBzYXRpc2ZlY2hhLiBFc3RlIGVzIGVsIGNvbXBvcnRhbWllbnRvIHBvcgorb21pc2nzbi4KKy5UUCAKK1xmQlwtZFxmUAorTm8gcmV2aXNhIGRlcGVuZGVuY2lhcyBuaSBjb25mbGljdG9zIGRlIGNvbnN0cnVjY2nzbi4KKy5UUCAKK1xmQlwtbmNcZlAKK05vIGxpbXBpYSBlbCDhcmJvbCBkZSBmdWVudGVzIChpbXBsaWNhIFxmQlwtYlxmUCBzaSBubyBzZSBpbnRyb2R1am8gXGZCXC1CXGZQLCBcZkJcLUFcZlAKK28gXGZCXC1TXGZQKS4KKy5UUCAKK1xmQlwtdGNcZlAKK0xpbXBpYSBlbCDhcmJvbCBkZSBmdWVudGVzICh1c2FuZG8gXGZJb3JkZW5cLXBhcmFcLW9idGVuZXJcLXJvb3RcZlAgXGZCZGViaWFuL3J1bGVzCitjbGVhblxmUCkgZGVzcHXpcyBkZSBsYSBjcmVhY2nzbiBkZWwgcGFxdWV0ZS4KKy5UUCAKK1xmQlwtclxmUFxmSW9yZGVuXC1wYXJhXC1vYnRlbmVyXC1yb290XGZQCitDdWFuZG8gXGZCZHBrZ1wtYnVpbGRwYWNrYWdlXGZQIG5lY2VzaXRlIGVqZWN1dGFyIHBhcnRlIGRlbCBwcm9jZXNvIGRlCitjb25zdHJ1Y2Np824gY29tbyCrcm9vdLssIGHxYWRlIGVsIHByZWZpam8gXGZJb3JkZW5cLXBhcmFcLW9idGVuZXJcLXJvb3RcZlAgYSBsYQorb3JkZW4gYSBlamVjdXRhciBlbiBjYXNvIGRlIGhhYmVyc2UgZXNwZWNpZmljYWRvLiBMYQorXGZJb3JkZW5cLXBhcmFcLW9idGVuZXJcLXJvb3RcZlAgZGViZSBzZXIgZWwgbm9tYnJlIGRlIHVuIHByb2dyYW1hIHF1ZSBlc3TpIGRlbnRybworZGVsIFxmQlBBVEhcZlAsIHkgdG9tYXLhIGNvbW8gYXJndW1lbnRvcyBlbCBub21icmUgZGVsIHByb2Nlc28gYSBlamVjdXRhciwgYXPtCitjb21vIGxvcyBhcmd1bWVudG9zIHF1ZSDpc3RlIHRvbWEuIExhIFxmSW9yZGVuXC1wYXJhXC1vYnRlbmVyXC1yb290XGZQIHB1ZWRlCitpbmNsdWlyIHBhcuFtZXRyb3MsIHBlcm8gbm8gY2FyYWN0ZXJlcyBlc3BlY2lhbGVzIGRlbCBpbnTpcnByZXRlIGRlCivzcmRlbmVzLiBMYSBcZklvcmRlblwtcGFyYVwtb2J0ZW5lclwtcm9vdFxmUCBwdWVkZSBzZXIgXGZCZmFrZXJvb3RcZlAsIFxmQnN1ZG9cZlAsCitcZkJzdXBlclxmUCBvIFxmQnJlYWxseVxmUC4gXGZCc3VcZlAgbm8gZXMgYWRlY3VhZG8geWEgcXVlIHPzbG8gcHVlZGUgaW52b2NhciBlbAoraW506XJwcmV0ZSBkZSDzcmRlbmVzIGRlbCB1c3VhcmlvIGNvbiBcZkJcLWNcZlAsIGVuIGx1Z2FyIGRlIGludHJvZHVjaXIgbG9zCithcmd1bWVudG9zIGluZGl2aWR1YWxtZW50ZSBhIGxhIG9yZGVuIGEgZWplY3V0YXIuCisuVFAgCitcZkJcLVJcZlBcZklmaWNoZXJvXC1yZWdsYXNcZlAKK0hhYml0dWFsbWVudGUsIGNvbnN0cnVpciB1biBwYXF1ZXRlIGRlIERlYmlhbiBpbmNsdXllIGludm9jYXIKK1xmQmRlYmlhbi9ydWxlc1xmUCBjb21vIHVuYSBvcmRlbiBjb24gdmFyaW9zIHBhcuFtZXRyb3MgZXN04W5kYXIuIEVzdGEgb3BjafNuCitwb3NpYmlsaXRhIGludm9jYXIgb3RybyBwcm9ncmFtYSBwYXJhIGNvbnN0cnVpciBlbCBwYXF1ZXRlIChwdWVkZSBpbmNsdWlyCitwYXLhbWV0cm9zIHNlcGFyYWRvcyBwb3IgZXNwYWNpb3MpLiBQb3Igb3RyYSBwYXJ0ZSwgc2UgcHVlZGUgdXNhciBwYXJhCitlamVjdXRhciBlbCBmaWNoZXJvIGRlIHJlZ2xhcyAoq3J1bGVzuykgZXN04W5kYXIgY29uIG90cm8gcHJvZ3JhbWEgZGUgbWFrZQorKHBvciBlamVtcGxvLCB1c2FuZG8gXGZCL3Vzci9sb2NhbC9iaW4vbWFrZSBcLWYgZGViaWFuL3J1bGVzXGZQIGNvbW8KK1xmSWZpY2hlcm9cLXJlZ2xhc1xmUC4KKy5UUCAKK1xmQlwtcFxmUFxmSW9yZGVuXC1wYXJhXC1maXJtYXJcZlAKK0N1YW5kbyBcZkJkcGtnXC1idWlsZHBhY2thZ2VcZlAgbmVjZXNpdGEgZWplY3V0YXIgR1BHIG8gUEdQIHBhcmEgZmlybWFyIGVsCitmaWNoZXJvIGZ1ZW50ZSBkZSBjb250cm9sIChcZkIuZHNjXGZQKSBvIHVuIGZpY2hlcm8gXGZCLmNoYW5nZXNcZlAsIGVqZWN1dGFy4QorXGZJb3JkZW5cLXBhcmFcLWZpcm1hclxmUCAoYnVzY2FuZG8gZW4gXGZCUEFUSFxmUCBzaSBlcyBuZWNlc2FyaW8pIGVuIGx1Z2FyIGRlCitcZkJncGdcZlAuIFxmSW9yZGVuXC1wYXJhXC1maXJtYXJcZlAgcmVjaWJpcuEgdG9kb3MgbG9zIGFyZ3VtZW50b3MgcXVlIG9idGVuZHLtYQorXGZCcGdwXGZQLiBEZWJlIHVzYXIgbGEgb3BjafNuIFxmQlwtc2dwZ1xmUCBzaSBsYSBcZklvcmRlblwtcGFyYVwtZmlybWFyXGZQIHRvbWEgbG9zCithcmd1bWVudG9zIGVuIGZvcm1hdG8gR1BHIGVuIHZleiBkZSBQR1AuIExhIFxmSW9yZGVuXC1wYXJhXC1maXJtYXJcZlAgbm8gZGViZQorY29udGVuZXIgZXNwYWNpb3MgbmkgdGFtcG9jbyBjYXJhY3RlcmVzIGVzcGVjaWFsZXMgZGVsIGludOlycHJldGUgZGUKK/NyZGVuZXMuCisuVFAgCitcZkJcLWtcZlBcZklsbGF2ZVwtaWRcZlAKK0VzcGVjaWZpY2EgdW5hIGxsYXZlIGRlIGlkZW50aWZpY2FjafNuIGEgdXNhciBwYXJhIGZpcm1hciBsb3MgcGFxdWV0ZXMuCisuVFAgCitcZkJcLXVzXGZQCitObyBmaXJtYSBlbCBwYXF1ZXRlIGZ1ZW50ZS4KKy5UUCAKK1xmQlwtdWNcZlAKK05vIGZpcm1hIGVsIGZpY2hlcm8gXGZCLmNoYW5nZXNcZlAuCisuUAorXGZCXC1pXGZQW1xmSWV4cFwtcmVnXGZQXQorLmJyCitcZkJcLUlcZlBcZklbcGF0cvNuXVxmUAorLmJyCitcZkJcLXNcZlBbXGZCbnNBa3VyS1VSXGZQXQorLmJyCitcZkJcLXpcZlAsIFxmQlwtWlxmUAorLmJyCisuUlMKK1NlIGludHJvZHVjZSBzaW4gY2FtYmlvcyBhIFxmQmRwa2dcLXNvdXJjZVxmUC4gQ29uc3VsdGUgbGEgcOFnaW5hIGRlIG1hbnVhbC4KKy5SRQorLlRQIAorXGZCXC1cLXNvdXJjZVwtb3B0aW9uPVxmUFxmSW9wY2nzblxmUAorSW50cm9kdWNlIGxhIG9wY2nzbiBcZklvcGNp825cZlAgYSBcZkJkcGtnXC1zb3VyY2VcZlAuCisuVFAgCitcZkJcLVwtY2hhbmdlc1wtb3B0aW9uPVxmUFxmSW9wY2nzblxmUAorSW50cm9kdWNlIGxhIG9wY2nzbiBcZklvcGNp825cZlAgYSBcZkJkcGtnXC1nZW5jaGFuZ2VzXGZQLgorLlAKK1xmQlwtXC1hZG1pbmRpcj1cZlBcZklkaXJlY3RvcmlvXGZQCisuYnIKK1xmQlwtXC1hZG1pbmRpclxmUCBcZklkaXJlY3RvcmlvXGZQCisuUlMKK0NhbWJpYSBlbCBkaXJlY3RvcmlvIGNvbiBsYSBiYXNlIGRlIGRhdG9zIGRlIFxmQmRwa2dcZlAuIFBvciBvbWlzafNuIGVzCitcZkkvdmFyL2xpYi9kcGtnXGZQLgorLlJFCisuVFAgCitcZkJcLWhcZlAsIFxmQlwtXC1oZWxwXGZQCitNdWVzdHJhIGVsIG1vZG8gZGUgdXNvIHkgdGVybWluYS4KKy5UUCAKK1xmQlwtXC12ZXJzaW9uXGZQCitNdWVzdHJhIGxhIHZlcnNp824geSB0ZXJtaW5hLgorLgorLlNIIEVOVE9STk8KK0V2ZW4gaWYgXGZCZHBrZ1wtYnVpbGRwYWNrYWdlXGZQIGV4cG9ydHMgc29tZSB2YXJpYWJsZXMsIFxmQmRlYmlhbi9ydWxlc1xmUCBzaG91bGQKK25vdCByZWx5IG9uIHRoZWlyIHByZXNlbmNlIGFuZCBzaG91bGQgaW5zdGVhZCB1c2UgdGhlIHJlc3BlY3RpdmUgaW50ZXJmYWNlCit0byByZXRyaWV2ZSB0aGUgbmVlZGVkIHZhbHVlcy4KKy5TUyAiVmFyaWFibGVzIGRlZmluaWRhcyBwb3IgZHBrZ1wtYXJjaGl0ZWN0dXJlIgorXGZCZHBrZ1wtYXJjaGl0ZWN0dXJlXGZQIHNlIGludm9jYSBjb24gbG9zIHBhcuFtZXRyb3MgXGZCXC1hXGZQIHkgXGZCXC10XGZQLiBUb2RhCit2YXJpYWJsZSBxdWUgb2ZyZWNlIHVuYSBzYWxpZGEgbWVkaWFudGUgc3Ugb3BjafNuIFxmQlwtc1xmUCBzZSBpbnRlZ3JhIGVuIGVsCitlbnRvcm5vIGRlIGNvbnN0cnVjY2nzbi4KKy5TUyAiQ29tcGlsZXIgZmxhZ3MgYXJlIG5vIGxvbmdlciBleHBvcnRlZCIKK0JldHdlZW4gdmVyc2lvbnMgMS4xNC4xNyBhbmQgMS4xNi4xLCBcZkJkcGtnXC1idWlsZHBhY2thZ2VcZlAgZXhwb3J0ZWQgY29tcGlsZXIKK2ZsYWdzIChcZkJDRkxBR1NcZlAsIFxmQkNYWEZMQUdTXGZQLCBcZkJGRkxBR1NcZlAsIFxmQkNQUEZMQUdTXGZQIGFuZCBcZkJMREZMQUdTXGZQKSB3aXRoCit2YWx1ZXMgYXMgcmV0dXJuZWQgYnkgXGZCZHBrZ1wtYnVpbGRmbGFnc1xmUC4gVGhpcyBpcyBubyBsb25nZXIgdGhlIGNhc2UuCisuCisuU0ggRkFMTE9TCitEZWJlcu1hIHNlciBwb3NpYmxlIGVzcGVjaWZpY2FyIGVzcGFjaW9zIHkgY2FyYWN0ZXJlcyBlc3BlY2lhbGVzIGRlbAoraW506XJwcmV0ZSBkZSDzcmRlbmVzIGVuIGxvcyBhcmd1bWVudG9zIGluaWNpYWxlcyBkZSBsYQorXGZJb3JkZW5cLXBhcmFcLW9idGVuZXJcLXJvb3RcZlAgeSBsYSBcZklvcmRlblwtcGFyYVwtZmlybWFyXGZQLgorLgorLlNIICJWyUFTRSBUQU1CSclOIgorXGZCZHBrZ1wtc291cmNlXGZQKDEpLCBcZkJkcGtnXC1hcmNoaXRlY3R1cmVcZlAoMSksIFxmQmRwa2dcLWJ1aWxkZmxhZ3NcZlAoMSksCitcZkJkcGtnXC1nZW5jaGFuZ2VzXGZQKDEpLCBcZkJmYWtlcm9vdFxmUCgxKSwgXGZCZ3BnXGZQKDEpLgorLgorLlNIIEFVVE9SRVMKK0NvcHlyaWdodCBcKGNvIDE5OTVcLTE5OTYgSWFuIEphY2tzb24KKy5icgorQ29weXJpZ2h0IFwoY28gMjAwMCBXaWNoZXJ0IEFra2VybWFuCisuYnIKK0NvcHlyaWdodCBcKGNvIDIwMDcgRnJhbmsgTGljaHRlbmhlbGQKKy5icgorQ29weXJpZ2h0IFwoY28gMjAwOFwtMjAxMCBSYXBoYVxbOmVdbCBIZXJ0em9nCisuc3AKK0VzdG8gZXMgc29mdHdhcmUgbGlicmU7IHZlYSBsYSB2ZXJzafNuIDIgbyBwb3N0ZXJpb3IgZGUgbGEgTGljZW5jaWEgUPpibGljYQorR2VuZXJhbCBHTlUgcGFyYSBjb25kaWNpb25lcyBkZSBjb3BpYS4gTk8gaGF5IG5pbmd1bmEgZ2FyYW507WEuCisuU0ggIlRSQURVQ1RPUiIKK1J1ZHkgR29kb3kgPHJ1ZHlAa2VybmVsXC1wYW5pay5vcmc+LAorUnVi6W4gUG9ycmFzIDxuYWhvb0BpbmljaWEuZXM+LAorQnJ1bm8gQmFycmVyYSBDLiA8YnJ1bm8uYmFycmVyYUBpZ2xvby5jbD4sCitDYXJsb3MgSXpxdWllcmRvIDxnaGVlc2hAZXJ0aXMubmV0PiwKK0VzdGViYW4gTWFuY2hhZG8geQorTk9LLgorRGViaWFuIEwxMG4gU3BhbmlzaCA8ZGViaWFuXC1sMTBuXC1zcGFuaXNoQGxpc3RzLmRlYmlhbi5vcmc+LgorLmJyCitSZXZpc2lvbmVzIHBvciBTYW50aWFnbyBWaWxhIDxzYW52aWxhQHVuZXguZXM+LAorSmF2aWVyIEZlcm7hbmRlelwtU2FuZ3Vpbm8sIFJ1YuluIFBvcnJhcywKK0x1aXMgVXJpYmUgeSBPbWFyIENhbXBhZ25lLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vZXMvZHBrZy1jaGVja2J1aWxkZGVwcy4xIGIvZHBrZy0xLjE2LjEuMS9tYW4vZXMvZHBrZy1jaGVja2J1aWxkZGVwcy4xCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmU5ODE3ZTUKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9lcy9kcGtnLWNoZWNrYnVpbGRkZXBzLjEKQEAgLTAsMCArMSw2MCBAQAorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlwiCisuXCIgVGhpcyBmaWxlIHdhcyBnZW5lcmF0ZWQgd2l0aCBwbzRhLiBUcmFuc2xhdGUgdGhlIHNvdXJjZSBmaWxlLgorLlwiCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuVEggZHBrZ1wtY2hlY2tidWlsZGRlcHMgMSAyMDExXC0wN1wtMDQgIlByb3llY3RvIERlYmlhbiIgIkhlcnJhbWllbnRhcyBkZSBkcGtnIgorLlNIIE5PTUJSRQorZHBrZ1wtY2hlY2tidWlsZGRlcHMgXC0gQ29tcHJ1ZWJhIGxhcyBkZXBlbmRlbmNpYXMgeSBjb25mbGljdG9zIGRlIGNvbXBpbGFjafNuCisuCisuU0ggU0lOT1BTSVMKK1xmQmRwa2dcLWNoZWNrYnVpbGRkZXBzXGZQIFtcZklvcHRpb25cZlAuLi5dIFtcZkljb250cm9sXC1maWxlXGZQXQorLgorLlNIIERFU0NSSVBDSdNOCitFc3RlIHByb2dyYW1hIGNvbXBydWViYSBxdWUgbG9zIHBhcXVldGVzIGluc3RhbGFkb3MgZW4gZWwgc2lzdGVtYSBzYXRpc2ZhY2VuCitsYXMgZGVwZW5kZW5jaWFzIHkgY29uZmxpY3RvcyBkZSBjb21waWxhY2nzbiBsaXN0YWRvcyBlbiBlbCBmaWNoZXJvIGRlCitjb250cm9sIGRlbCBwYXF1ZXRlLiBTaSBhbGd1bmEgZGUgZXN0YXMgY29uZGljaW9uZXMgbm8gc2UgY3VtcGxlIGF2aXNhIHkKK2ZpbmFsaXphIGVsIHByb2Nlc28gZGV2b2x2aWVuZG8gdW4gY/NkaWdvIGRlIGVycm9yIGRpc3RpbnRvIGRlIGNlcm8uCisuUAorQnkgZGVmYXVsdCwgXGZCZGViaWFuL2NvbnRyb2xcZlAgaXMgcmVhZCwgYnV0IGFuIGFsdGVybmF0ZSBjb250cm9sIGZpbGVuYW1lIG1heQorYmUgc3BlY2lmaWVkIG9uIHRoZSBjb21tYW5kIGxpbmUuCisuCisuU0ggT1BDSU9ORVMKKy5UUCAKK1xmQlwtXC1hZG1pbmRpcj1cZlBcZklkaXJlY3RvcmlvXGZQCitDYW1iaWEgZWwgZGlyZWN0b3JpbyBjb24gbGEgYmFzZSBkZSBkYXRvcyBkZSBcZkJkcGtnXGZQLiBQb3Igb21pc2nzbiBlcworXGZJL3Zhci9saWIvZHBrZ1xmUC4KKy5UUCAKK1xmQlwtQlxmUAorSWdub3JhIGxhcyBs7W5lYXMgXGZJQnVpbGRcLURlcGVuZHNcLUluZGVwXGZQLiBTZSBkZWJlIHVzYXIgY3VhbmRvIHNlIGNvbnN0cnV5ZW4KK3BhcXVldGVzIGluZGVwZW5kaWVudGVzIGRlIGxhIGFycXVpdGVjdHVyYS4KKy5UUCAKK1xmQlwtZCBcZlBcZkljYWRlbmFcLWRlcGVuZGVuY2lhc1wtY29tcGlsYWNp825cZlAKKy5UUCAKK1xmQlwtYyBcZlBcZkljYWRlbmFcLWNvbmZsaWN0b1wtY29tcGlsYWNp825cZlAKK1VzYSBsYXMgZGVwZW5kZW5jaWFzIHkgY29uZmxpY3RvcyBkZSBjb21waWxhY2nzbiBkYWRvcyBlbiBsdWdhciBkZSBhcXVlbGxvcworbGlzdGFkb3MgZW4gZWwgZmljaGVybyBcZklkZWJpYW4vY29udHJvbFxmUC4KKy5UUCAKK1xmQlwtaFxmUCwgXGZCXC1cLWhlbHBcZlAKK011ZXN0cmEgZWwgbW9kbyBkZSB1c28geSB0ZXJtaW5hLgorLlRQIAorXGZCXC1cLXZlcnNpb25cZlAKK011ZXN0cmEgbGEgdmVyc2nzbiB5IHRlcm1pbmEuCisuCisuU0ggQVVUT1IKK0NvcHlyaWdodCBcKGNvIDIwMDEgSm9leSBIZXNzCisuc3AKK0VzdG8gZXMgc29mdHdhcmUgbGlicmU7IHZlYSBsYSB2ZXJzafNuIDIgbyBwb3N0ZXJpb3IgZGUgbGEgTGljZW5jaWEgUPpibGljYQorR2VuZXJhbCBHTlUgcGFyYSBjb25kaWNpb25lcyBkZSBjb3BpYS4gTk8gaGF5IG5pbmd1bmEgZ2FyYW507WEuCisuU0ggIlRSQURVQ1RPUiIKK1J1ZHkgR29kb3kgPHJ1ZHlAa2VybmVsXC1wYW5pay5vcmc+LAorUnVi6W4gUG9ycmFzIDxuYWhvb0BpbmljaWEuZXM+LAorQnJ1bm8gQmFycmVyYSBDLiA8YnJ1bm8uYmFycmVyYUBpZ2xvby5jbD4sCitDYXJsb3MgSXpxdWllcmRvIDxnaGVlc2hAZXJ0aXMubmV0PiwKK0VzdGViYW4gTWFuY2hhZG8geQorTk9LLgorRGViaWFuIEwxMG4gU3BhbmlzaCA8ZGViaWFuXC1sMTBuXC1zcGFuaXNoQGxpc3RzLmRlYmlhbi5vcmc+LgorLmJyCitSZXZpc2lvbmVzIHBvciBTYW50aWFnbyBWaWxhIDxzYW52aWxhQHVuZXguZXM+LAorSmF2aWVyIEZlcm7hbmRlelwtU2FuZ3Vpbm8sIFJ1YuluIFBvcnJhcywKK0x1aXMgVXJpYmUgeSBPbWFyIENhbXBhZ25lLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vZXMvZHBrZy1kZWIuMSBiL2Rwa2ctMS4xNi4xLjEvbWFuL2VzL2Rwa2ctZGViLjEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNTIyMDYwMQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL2VzL2Rwa2ctZGViLjEKQEAgLTAsMCArMSwyMjMgQEAKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlRIIGRwa2dcLWRlYiAxIDIwMTFcLTA4XC0xNCAiUHJveWVjdG8gRGViaWFuIiAiSGVycmFtaWVudGFzIGRlIGRwa2ciCisuU0ggTk9NQlJFCitkcGtnXC1kZWIgXC0gSGVycmFtaWVudGEgZGUgbWFuaXB1bGFjafNuIGRlIGFyY2hpdm9zIGRlIHBhcXVldGUgKKsuZGViuykgZGUKK0RlYmlhbgorLgorLlNIIFNJTk9QU0lTCitcZkJkcGtnXC1kZWJcZlAgW1xmSW9wdGlvblxmUC4uLl0gXGZJY29tbWFuZFxmUAorLgorLlNIIERFU0NSSVBDSdNOCitcZkJkcGtnXC1kZWJcZlAgZW1wYXF1ZXRhLCBkZXNlbXBhcXVldGEgeSBvZnJlY2UgaW5mb3JtYWNp824gc29icmUgYXJjaGl2b3MgZGUKK0RlYmlhbi4KKy5QUAorVXNlIFxmQmRwa2dcZlAgcGFyYSBpbnN0YWxhciB5IGVsaW1pbmFyIHBhcXVldGVzIGRlIHN1IHNpc3RlbWEuCisuUFAKK1RhbWJp6W4gcHVlZGUgaW52b2NhciBcZkJkcGtnXC1kZWJcZlAgdXNhbmRvIFxmQmRwa2dcZlAgY29uIGN1YWxxdWllcmEgZGUgbGFzCitvcGNpb25lcyBxdWUgZGVzZWUgaW50cm9kdWNpciBhIFxmQmRwa2dcLWRlYlxmUC4gXGZCZHBrZ1xmUCBub3RhcuEgcXVlIGRlc2VhIHVzYXIKK1xmQmRwa2dcLWRlYlxmUCwgeSBsbyBlamVjdXRhcuEgcG9yIHVzdGVkLgorLgorLlNIINNSREVORVMKKy5UUCAKK1xmQlwtYlxmUCwgXGZCXC1cLWJ1aWxkXGZQIFxmSWRpcmVjdG9yaW9cZlAgW1xmSWFyY2hpdm9cZlB8XGZJZGlyZWN0b3Jpb1xmUF0KK0NyZWEgdW4gYXJjaGl2byBkZSBEZWJpYW4gYSBwYXJ0aXIgZGVsIOFyYm9sIGRlbCBzaXN0ZW1hIGRlIGZpY2hlcm9zIHViaWNhZG8KK2VuIGVsIFxmSWRpcmVjdG9yaW9cZlAuIEVsIFxmSWRpcmVjdG9yaW9cZlAgZGViZSB0ZW5lciB1biBzdWJkaXJlY3RvcmlvIFxmQkRFQklBTlxmUCwKK2VsIGN1YWwgY29udGllbmUgbG9zIGZpY2hlcm9zIGRlIGluZm9ybWFjafNuIHRhbGVzIGNvbW8gZWwgZmljaGVybyBkZQorY29udHJvbC4gRXN0ZSBkaXJlY3RvcmlvIFxmSW5vXGZQIGFwYXJlY2Vy4SBlbiBlbCBzaXN0ZW1hIGRlIGZpY2hlcm9zIGRlbAorYXJjaGl2byBkZSBwYXF1ZXRlIGJpbmFyaW8sIHNpbm8gcXVlIGxvcyBmaWNoZXJvcyBjb250ZW5pZG9zIHNlIHViaWNhcuFuIGVuCitlbCDhcmVhIGRlIGxhIGluZm9ybWFjafNuIGRlIGNvbnRyb2wgZGVsIHBhcXVldGUgYmluYXJpby4KKworXGZCZHBrZ1wtZGViXGZQIGxlZXLhIHkgYW5hbGl6YXLhIFxmQkRFQklBTi9jb250cm9sXGZQIGEgbWVub3MgcXVlIGVzcGVjaWZpcXVlCitcZkJcLVwtbm9jaGVja1xmUC4gQ29tcHJvYmFy4SBwb3NpYmxlcyBlcnJvcmVzIGRlIHNpbnRheGlzIHkgb3Ryb3MgcHJvYmxlbWFzLAorbW9zdHJhbmRvIGVsIG5vbWJyZSBkZWwgcGFxdWV0ZSBiaW5hcmlvIHF1ZSBzZSBlc3ThIGNyZWFuZG8uIFxmQmRwa2dcLWRlYlxmUAordGFtYmnpbiBjb21wcm9iYXLhIGxvcyBwZXJtaXNvcyBkZSBsb3Mgc2NyaXB0cyBkZWwgbWFudGVuZWRvciBhc+0gY29tbyBkZQorbG9zIG90cm9zIGZpY2hlcm9zIHF1ZSBzZSBlbmN1ZW50cmVuIGVuIGVsIGRpcmVjdG9yaW8gZGUgbGEgaW5mb3JtYWNp824gZGUKK2NvbnRyb2wgXGZCREVCSUFOXGZQLgorCitTaSBubyBzZSBlc3BlY2lmaWNhIHVuIFxmSWFyY2hpdm9cZlAsIFxmQmRwa2dcLWRlYlxmUCBjcmVhcuEgZWwgcGFxdWV0ZSBjb21vIHVuCitmaWNoZXJvIFxmSWRpcmVjdG9yaW9cZlBcZkIuZGViXGZQLgorCitTaSBlbCBhcmNoaXZvIGEgY3JlYXIgeWEgZXhpc3RlIHNlIHNvYnJlZXNjcmliaXLhLgorCitTaSBlbCBzZWd1bmRvIGFyZ3VtZW50byBlcyB1biBkaXJlY3RvcmlvLCBcZkJkcGtnXC1kZWJcZlAgZXNjcmliaXLhIGVuIGVsCitmaWNoZXJvIFxmSXBhcXVldGVcZlBcZkJfXGZQXGZJdmVyc2nzblxmUFxmQl9cZlBcZklhcnF1aXRlY3R1cmFcZlBcZkIuZGViXGZQLCBvCitcZklwYXF1ZXRlXGZQXGZCX1xmUFxmSXZlcnNp825cZlBcZkIuZGViXGZQIHNpIGVsIGNhbXBvIFxmQkFycXVpdGVjdHVyZVxmUCBubyBlc3ThIHByZXNlbnRlCitlbiBlbCBmaWNoZXJvIGRlIGNvbnRyb2wgZGVsIHBhcXVldGUuIE5vIHNlIGRlYmVy7WEgdXNhciBsYSBvcGNp824KK1xmQlwtXC1ub2NoZWNrXGZQIGN1YW5kbyBzZSBlc3BlY2lmaWNhIHVuIGRpcmVjdG9yaW8gZGUgZGVzdGlubyBlbiBsdWdhciBkZSB1bgorZmljaGVybyB5YSBxdWUgXGZCZHBrZ1wtZGViXGZQIG5lY2VzaXRhIGxlZXIgeSBhbmFsaXphciBlbCBmaWNoZXJvIGRlIGNvbnRyb2wKK2RlbCBwYXF1ZXRlIHBhcmEgYXPtIGRldGVybWluYXIgcXXpIG5vbWJyZSBkZSBhcmNoaXZvIHVzYXIuCisuVFAgCitcZkJcLUlcZlAsIFxmQlwtXC1pbmZvXGZQIFxmSWFyY2hpdm9cZlAgW1xmSWZpY2hlcm9cLWRlXC1jb250cm9sXGZQIC4uXQorT2ZyZWNlIGluZm9ybWFjafNuIGFjZXJjYSBkZWwgcGFxdWV0ZSBiaW5hcmlvLgorCitTaSBubyBzZSBlc3BlY2lmaWNhIGVsIFxmSWZpY2hlcm8ocylcLWRlXC1jb250cm9sXGZQIHNlIG1vc3RyYXLhIHVuIHJlc3VtZW4gZGUKK2xvcyBjb250ZW5pZG9zIGRlbCBwYXF1ZXRlIGFz7SBjb21vIGRlbCBmaWNoZXJvIGRlIGNvbnRyb2wuCisKK1NpIHNlIGVzcGVjaWZpY2EgYWxn+m4gXGZJZmljaGVyb1wtZGVcLWNvbnRyb2xcZlAsIFxmQmRwa2dcLWRlYlxmUCBpbXByaW1pcuEgbG9zCitjb250ZW5pZG9zIGVuIGVsIG9yZGVuIGVuIHF1ZSBzZSBlc3BlY2lmaWNhcm9uLiBTaSBjdWFscXVpZXJhIGRlIGxvcworY29tcG9uZW50ZXMgbm8gZXN0dXZpZXNlIHByZXNlbnRlIHNlIG1vc3RyYXLhIHVuIG1lbnNhamUgZGUgZXJyb3IgcG9yIGxhCitzYWxpZGEgZGUgZXJyb3IgZXN04W5kYXIgcGFyYSBjYWRhIHVubyBkZSBlbGxvcywgaW50ZXJydW1waWVuZG8gZWwgcHJvY2VzbworY29uIGVsIGVzdGFkbyBkZSBzYWxpZGEgMi4KKy5UUCAKK1xmQlwtV1xmUCwgXGZCXC1cLXNob3dcZlAgXGZJYXJjaGl2b1xmUAorT2ZyZWNlIGluZm9ybWFjafNuIGFjZXJjYSBkZWwgcGFxdWV0ZSBiaW5hcmlvIGNvbiBlbCBmb3JtYXRvIGRlZmluaWRvIHBvciBlbAorYXJndW1lbnRvIFxmQlwtXC1zaG93Zm9ybWF0XGZQLiBFbCBmb3JtYXRvIHByZWRlZmluaWRvIG11ZXN0cmEgZWwgbm9tYnJlIGRlbAorcGFxdWV0ZSB5IGxhIHZlcnNp824gZW4gdW5hIHNvbGEgbO1uZWEsIHNlcGFyYWRvcyBwb3IgdW4gdGFidWxhZG8uCisuVFAgCitcZkJcLWZcZlAsIFxmQlwtXC1maWVsZFxmUCBcZklhcmNoaXZvXGZQIFtcZkljYW1wb1wtZGVsXC1maWNoZXJvXC1jb250cm9sXGZQIC4uLl0KK0V4dHJhZSBpbmZvcm1hY2nzbiBkZWwgZmljaGVybyBkZSBjb250cm9sIGRlbCBmaWNoZXJvIGRlIHVuIHBhcXVldGUgYmluYXJpby4KKworU2kgbm8gc2UgZXNwZWNpZmljYSBuaW5n+m4gXGZCY2FtcG9cLWRlbFwtZmljaGVyb1wtY29udHJvbFxmUCwgc2UgbW9zdHJhcuEgdG9kbyBlbAorZmljaGVybyBkZSBjb250cm9sLgorCitTaSBzZSBlc3BlY2lmaWNhIGFsZ/puIGNhbXBvLCBcZkJkcGtnXC1kZWJcZlAgbW9zdHJhcuEgc3VzIGNvbnRlbmlkb3MgZW4gZWwKK29yZGVuIGVuIGVsIGN1YWwgYXBhcmVjZW4gZW4gZWwgZmljaGVybyBkZSBjb250cm9sLiBTaSBzZSBlc3BlY2lmaWNhIG3hcyBkZQordW4gXGZCY2FtcG9cLWRlbFwtZmljaGVyb1wtY29udHJvbFxmUCwgXGZCZHBrZ1wtZGViXGZQIHByZWNlZGVy4SBjYWRhIHVubyBjb24gZWwKK25vbWJyZSBkZWwgY2FtcG8gKG3hcyBkb3MgcHVudG9zIHkgdW4gZXNwYWNpbykuCisKK05vIHNlIGluZm9ybWEgZGUgbmluZ/puIGVycm9yIHBhcmEgbG9zIGNhbXBvcyBzb2xpY2l0YWRvcyBwZXJvIG5vCitlbmNvbnRyYWRvcy4KKy5UUCAKK1xmQlwtY1xmUCwgXGZCXC1cLWNvbnRlbnRzXGZQIFxmSWFyY2hpdm9cZlAKK0xpc3RhIGxvcyBjb250ZW5pZG9zIGRlIGxhIHBhcnRlIGRlbCBhcmNoaXZvIGRlIHBhcXVldGUgcXVlIHNlIGluc3RhbGEgZW4gZWwKK+FyYm9sIGRlbCBzaXN0ZW1hIGRlIGZpY2hlcm9zLCBzaW4gaW5jbHVpciBmaWNoZXJvcyBlc3BlY+1maWNvcyBkZWwgc2lzdGVtYQorZGUgZW1wYXF1ZXRhZG8gZGUgRGViaWFuLiBMYSBsaXN0YSBzZSBnZW5lcmEgY29uIGVsIGZvcm1hdG8gcHJvZHVjaWRvIHBvciBlbAorbGlzdGFkbyBpbmZvcm1hdGl2byBkZSBcZkJ0YXJcZlAuCisuVFAgCitcZkJcLXhcZlAsIFxmQlwtXC1leHRyYWN0XGZQIFxmSWRpcmVjdG9yaW9cLWFyY2hpdm9cZlAKK0V4dHJhZSBlbCDhcmJvbCBkZWwgc2lzdGVtYSBkZSBmaWNoZXJvcyBkZWwgYXJjaGl2byBkZSBwYXF1ZXRlcyBhbAorZGlyZWN0b3JpbyBlc3BlY2lmaWNhZG8uCisKK6FUZW5nYSBlbiBjdWVudGEgcXVlIFxmSW5vXGZQIG9idGVuZHLhIHVuYSBpbnN0YWxhY2nzbiBjb3JyZWN0YSBzaSBleHRyYWUgdW4KK3BhcXVldGUgZW4gZWwgZGlyZWN0b3JpbyByYe16ISBVc2UgXGZCZHBrZ1xmUCBwYXJhIGluc3RhbGFyIHBhcXVldGVzLgorCitTZSBjcmVhcuEgZWwgXGZJZGlyZWN0b3Jpb1xmUCAocGVybyBubyBsb3MgZGlyZWN0b3Jpb3MgcGFkcmUpIGRlIHNlciBuZWNlc2FyaW8sCittb2RpZmljYW5kbyBzdXMgcGVybWlzb3MgZGUgYWN1ZXJkbyBhIGxvcyBjb250ZW5pZG9zIGRlbCBwYXF1ZXRlLgorLlRQIAorXGZCXC1YXGZQLCBcZkJcLVwtdmV4dHJhY3RcZlAgXGZJZGlyZWN0b3Jpb1wtYXJjaGl2b1xmUAorSXMgbGlrZSBcZkJcLVwtZXh0cmFjdFxmUCAoXGZCXC14XGZQKSAgd2l0aCBcZkJcLVwtdmVyYm9zZVxmUCAoXGZCXC12XGZQKSAgd2hpY2ggcHJpbnRzIGEKK2xpc3Rpbmcgb2YgdGhlIGZpbGVzIGV4dHJhY3RlZCBhcyBpdCBnb2VzLgorLlRQIAorXGZCXC1SXGZQLCBcZkJcLVwtcmF3XC1leHRyYWN0XGZQIFxmSWFyY2hpdmUgZGlyZWN0b3J5XGZQCitFeHRyYWN0cyB0aGUgZmlsZXN5c3RlbSB0cmVlIGZyb20gYSBwYWNrYWdlIGFyY2hpdmUgaW50byBhIHNwZWNpZmllZAorZGlyZWN0b3J5LCBhbmQgdGhlIGNvbnRyb2wgaW5mb3JtYXRpb24gZmlsZXMgaW50byBhIERFQklBTiBzdWJkaXJlY3Rvcnkgb2YKK3RoZSBzcGVjaWZpZWQgZGlyZWN0b3J5LgorCitFbCBkaXJlY3RvcmlvIGRlIGRlc3Rpbm8gKHBlcm8gbm8gbG9zIGRpcmVjdG9yaW9zIHBhZHJlKSBzZSBjcmVhcuEgZGUgc2VyCituZWNlc2FyaW8uCisuVFAgCitcZkJcLVwtZnN5c1wtdGFyZmlsZVxmUCBcZklhcmNoaXZvXGZQCitFeHRyYWN0cyB0aGUgZmlsZXN5c3RlbSB0cmVlIGRhdGEgZnJvbSBhIGJpbmFyeSBwYWNrYWdlIGFuZCBzZW5kcyBpdCB0bworc3RhbmRhcmQgb3V0cHV0IGluIFxmQnRhclxmUCBmb3JtYXQuIFRvZ2V0aGVyIHdpdGggXGZCdGFyXGZQKDEpICB0aGlzIGNhbiBiZSB1c2VkCit0byBleHRyYWN0IGEgcGFydGljdWxhciBmaWxlIGZyb20gYSBwYWNrYWdlIGFyY2hpdmUuICBUaGUgaW5wdXQgYXJjaGl2ZSB3aWxsCithbHdheXMgYmUgcHJvY2Vzc2VkIHNlcXVlbnRpYWxseS4KKy5UUCAKK1xmQlwtZVxmUCwgXGZCXC1cLWNvbnRyb2xcZlAgXGZJYXJjaGl2b1xmUCBbXGZJZGlyZWN0b3Jpb1xmUF0KK0V4dHJhZSBsb3MgZmljaGVyb3MgZGUgaW5mb3JtYWNp824gZGUgY29udHJvbCBkZSB1biBhcmNoaXZvIGRlIHBhcXVldGUgYWwKK2RpcmVjdG9yaW8gZXNwZWNpZmljYWRvLgorCitTaSBubyBzZSBlc3BlY2lmaWNhIG5pbmf6biBkaXJlY3RvcmlvLCBzZSB1c2Fy4SBlbCBzdWJkaXJlY3RvcmlvIFxmQkRFQklBTlxmUAorZGVsIGRpcmVjdG9yaW8gYWN0dWFsLgorCitFbCBkaXJlY3RvcmlvIGRlIGRlc3Rpbm8gKHBlcm8gbm8gbG9zIGRpcmVjdG9yaW9zIHBhZHJlKSBzZSBjcmVhcuEgZGUgc2VyCituZWNlc2FyaW8uCisuVFAgCitcZkJcLWhcZlAsIFxmQlwtXC1oZWxwXGZQCitNdWVzdHJhIGVsIG1vZG8gZGUgdXNvIHkgdGVybWluYS4KKy5UUCAKK1xmQlwtXC12ZXJzaW9uXGZQCitNdWVzdHJhIGxhIHZlcnNp824geSB0ZXJtaW5hLgorLgorLlNIIE9QQ0lPTkVTCisuVFAgCitcZkJcLVwtc2hvd2Zvcm1hdD1cZlBcZklmb3JtYXRcZlAKK0VzdGEgb3BjafNuIHNpcnZlIHBhcmEgZXNwZWNpZmljYXIgZWwgZm9ybWF0byBkZSBsYSBzYWxpZGEgcXVlIFxmQlwtXC1zaG93XGZQCitwcm9kdWNpcuEuIEVsIGZvcm1hdG8gZXMgdW5hIGNhZGVuYSBxdWUgc2Vy4SBsYSBzYWxpZGEgZGUgY2FkYSBwYXF1ZXRlCitsaXN0YWRvLgorCitMYSBjYWRlbmEgcHVlZGUgbW9zdHJhciBjdWFscXVpZXIgY2FtcG8gZGUgZXN0YWRvIHVzYW5kbyBsYSBmb3JtYQorqyR7XGZJbm9tYnJlXC1jYW1wb1xmUH27LCB5IHB1ZWRlIGdlbmVyYXIgdW5hIGxpc3RhIGRlIGNhbXBvcyB24WxpZG9zIHVzYW5kbworXGZCXC1JXGZQIGNvbiBlbCBtaXNtbyBwYXF1ZXRlLiBQYXJhIHVuYSBleHBsaWNhY2nzbiBkZSBsYXMgb3BjaW9uZXMgZGUgZm9ybWF0bworKGluY2x1eWVuZG8gc2VjdWVuY2lhcyBkZSBlc2NhcGUgeSBlbCB0YWJ1bGFkbyBkZSBsb3MgY2FtcG9zKSwgY29uc3VsdGUgbGEKK2V4cGxpY2FjafNuIGRlIGxhIG9wY2nzbiBcZkJcLVwtc2hvd2Zvcm1hdFxmUCBlbiBcZkJkcGtnXC1xdWVyeVxmUCAoMSkuCisKK0VsIHZhbG9yIHByZWRlZmluaWRvIGRlIGVzdGUgY2FtcG8gZXMgqyR7UGFja2FnZX1cZXQke1ZlcnNpb259XGVuuy4KKy5UUCAKK1xmQlwtelxmUFxmSWNvbXByZXNzXC1sZXZlbFxmUAorU3BlY2lmeSB3aGljaCBjb21wcmVzc2lvbiBsZXZlbCB0byB1c2Ugb24gdGhlIGNvbXByZXNzb3IgYmFja2VuZCwgd2hlbgorYnVpbGRpbmcgYSBwYWNrYWdlIChkZWZhdWx0IGlzIDkgZm9yIGd6aXAgYW5kIGJ6aXAyLCA2IGZvciB4eiBhbmQgbHptYSkuCisuVFAgCitcZkJcLVpcZlBcZkljb21wcmVzc1wtdHlwZVxmUAorRXNwZWNpZmljYSBlbCB0aXBvIGRlIGNvbXByZXNp824gYSB1c2FyIGFsIGNvbnN0cnVpciB1biBwYXF1ZXRlLiBMb3MgdmFsb3JlcworYWNlcHRhZG9zIHNvbiBcZklnemlwXGZQLCBcZkl4elxmUCwgXGZJYnppcDJcZlAsIFxmSWx6bWFcZlAsIHkgXGZJbm9uZVxmUCAobmluZ3VubykuIEVsCit2YWxvciBwcmVkZWZpbmlkbyBlcyBcZklnemlwXGZQLgorLlRQIAorXGZCXC1cLW5ld1xmUAorQXNlZ3VyYSBxdWUgXGZCZHBrZ1wtZGViXGZQIGNvbnN0cnV5YSB1biBhcmNoaXZvIGNvbiBlbCCrbnVldm+7IGZvcm1hdG8uIMlzdGUgZXMKK2VsIGNvbXBvcnRhbWllbnRvIHBvciBvbWlzafNuLgorLlRQIAorXGZCXC1cLW9sZFxmUAorRnVlcnphIHF1ZSBcZkJkcGtnXC1kZWJcZlAgY29uc3RydXlhIHVuIGFyY2hpdm8gY29uIGVsIGZvcm1hdG8gYW50aWd1bworKKtvbGS7KS4gRXN0ZSBmb3JtYXRvIGFudGlndW8gZGUgYXJjaGl2byBlcyBt4XMgZGlm7WNpbCBkZSBhbmFsaXphciBwb3IgbGFzCitoZXJyYW1pZW50YXMgcXVlIG5vIGZvcm1hbiBwYXJ0ZSBkZSBEZWJpYW4sIHkgYSBk7WEgZGUgaG95IGVzdOEKK29ic29sZXRvLiBT82xvIHNlIHVzYSBhbCBjb25zdHJ1aXIgcGFxdWV0ZXMgcXVlIHZlcnNpb25lcyBkZSBkcGtnIGFudGVyaW9yZXMKK2EgMC45My43NiAoc2VwdGllbWJyZSAxOTk1KSBhbmFsaXphcuFuLCBsYSBjdWFsIHNlIGRpc3RyaWJ1efMgc/NsbyBwYXJhCitzaXN0ZW1hcyBpMzg2IGVuIGZvcm1hdG8gq2Eub3V0LrsKKy5UUCAKK1xmQlwtXC1ub2NoZWNrXGZQCitJbXBpZGUgbGFzIGNvbXByb2JhY2lvbmVzIGhhYml0dWFsZXMgZGUgXGZCZHBrZ1wtZGViIFwtXC1idWlsZFxmUCBzb2JyZSBsb3MKK2NvbnRlbmlkb3MgZGVsIGFyY2hpdm8uIFB1ZWRlIGNvbnN0cnVpciBjdWFscXVpZXIgYXJjaGl2byBxdWUgZGVzZWUsIG5vCitpbXBvcnRhIGxvIG1hbCBxdWUgZXN06S4KKy5UUCAKK1xmQlwtdlxmUCwgXGZCXC1cLXZlcmJvc2VcZlAKK0VuYWJsZXMgdmVyYm9zZSBvdXRwdXQuIFRoaXMgY3VycmVudGx5IG9ubHkgYWZmZWN0cyBcZkJcLVwtZXh0cmFjdFxmUCBtYWtpbmcgaXQKK2JlaGF2ZSBsaWtlIFxmQlwtXC12ZXh0cmFjdFxmUC4KKy5UUCAKK1xmQlwtRFxmUCwgXGZCXC1cLWRlYnVnXGZQCitBY3RpdmEgbG9zIG1lbnNhamVzIGRlIGRlcHVyYWNp824uIE5vIHNvbiBtdXkgaW50ZXJlc2FudGVzLgorLgorLlNIIEVOVE9STk8KKy5UUCAKK1xmQlRNUERJUlxmUAorU2kgc2UgZGVmaW5lLCBcZkJkcGtnXC1kZWJcZlAgbG8gdXNhcuEgY29tbyBlbCBkaXJlY3RvcmlvIGVuIGVsIHF1ZSBjcmVhcgorZmljaGVyb3MgdGVtcG9yYWxlcyB5IGRpcmVjdG9yaW9zLgorLgorLlNIIEZBTExPUworXGZCZHBrZ1wtZGViIFwtSVxmUCBcZklwYXF1ZXRlMVxmUFxmQi5kZWJcZlAgXGZJcGFxdWV0ZTJcZlBcZkIuZGViXGZQIG5vIGZ1bmNpb25hIGNvbW8KK2RlYmVy7WEuCisKK05vIHJlYWxpemEgbmluZ3VuYSBjb21wcm9iYWNp824gZGUgYXV0ZW50aWNpZGFkIGRlIGxvcyBmaWNoZXJvcyBcZkIuZGViXGZQOyBkZQoraGVjaG8sIG5pIHNpcXVpZXJhIHVuYSBzdW1hIGRlIGNvbnRyb2wuIExhcyBoZXJyYW1pZW50YXMgZGUgbml2ZWwgYWx0byBjb21vCitBUFQgc29uIGNhcGFjZXMgZGUgYXV0ZW50aWNhciBwYXF1ZXRlcyBvYnRlbmlkb3MgZGVzZGUgZWwgcmVwb3NpdG9yaW8gZGFkbywKK3kgbGEgbWF5b3LtYSBkZSBlc3RvcyBvZnJlY2VuIGEgZO1hIGRlIGhveSB1biBmaWNoZXJvIGRlIHN1bWFzIGRlIGNvbnRyb2wKK21kNSBnZW5lcmFkbyBwb3Igq2RlYmlhbi9ydWxlc7suIExhcyBoZXJyYW1pZW50YXMgZGUgYmFqbyBuaXZlbCBubyB0aWVuZW4KK3VuYSBjb21wYXRpYmlsaWRhZCBkaXJlY3RhIGNvbiBlc3RvcyBwcm9jZXNvcy4KKworoU5vIHVzZSBcZkJkcGtnXC1kZWJcZlAgcGFyYSBpbnN0YWxhciBzb2Z0d2FyZSEgRGViZSB1c2FyIFxmQmRwa2dcZlAgcGFyYSBhc2VndXJhcgorcXVlIHRvZG9zIGxvcyBmaWNoZXJvcyBzZSBpbnN0YWxhbiBlbiBlbCBzaXRpbyBjb3JyZWN0bywgbG9zIHNjcmlwdHMgZGVsCitwYXF1ZXRlIHNlIGVqZWN1dGVuIHkgcXVlIHNlIHJlZ2lzdHJlbiBsb3MgY29udGVuaWRvcyB5IGVzdGFkbyBlbCBkZSDpc3RlLgorLgorLlNIICJWyUFTRSBUQU1CSclOIgorXGZCZGViXGZQKDUpLCBcZkJkZWJcLWNvbnRyb2xcZlAoNSksIFxmQmRwa2dcZlAoMSksIFxmQmRzZWxlY3RcZlAoMSkuCisuCisuU0ggQVVUT1IKK0NvcHlyaWdodCBcKGNvIDE5OTVcLTE5OTYgSWFuIEphY2tzb24KKy5zcAorRXN0byBlcyBzb2Z0d2FyZSBsaWJyZTsgdmVhIGxhIHZlcnNp824gMiBvIHBvc3RlcmlvciBkZSBsYSBMaWNlbmNpYSBQ+mJsaWNhCitHZW5lcmFsIEdOVSBwYXJhIGNvbmRpY2lvbmVzIGRlIGNvcGlhLiBOTyBoYXkgbmluZ3VuYSBnYXJhbnTtYS4KKy5TSCAiVFJBRFVDVE9SIgorUnVkeSBHb2RveSA8cnVkeUBrZXJuZWxcLXBhbmlrLm9yZz4sCitSdWLpbiBQb3JyYXMgPG5haG9vQGluaWNpYS5lcz4sCitCcnVubyBCYXJyZXJhIEMuIDxicnVuby5iYXJyZXJhQGlnbG9vLmNsPiwKK0NhcmxvcyBJenF1aWVyZG8gPGdoZWVzaEBlcnRpcy5uZXQ+LAorRXN0ZWJhbiBNYW5jaGFkbyB5CitOT0suCitEZWJpYW4gTDEwbiBTcGFuaXNoIDxkZWJpYW5cLWwxMG5cLXNwYW5pc2hAbGlzdHMuZGViaWFuLm9yZz4uCisuYnIKK1JldmlzaW9uZXMgcG9yIFNhbnRpYWdvIFZpbGEgPHNhbnZpbGFAdW5leC5lcz4sCitKYXZpZXIgRmVybuFuZGV6XC1TYW5ndWlubywgUnVi6W4gUG9ycmFzLAorTHVpcyBVcmliZSB5IE9tYXIgQ2FtcGFnbmUuCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9lcy9kcGtnLWRpc3RhZGRmaWxlLjEgYi9kcGtnLTEuMTYuMS4xL21hbi9lcy9kcGtnLWRpc3RhZGRmaWxlLjEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODMxNmE1YgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL2VzL2Rwa2ctZGlzdGFkZGZpbGUuMQpAQCAtMCwwICsxLDYwIEBACisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkcGtnXC1kaXN0YWRkZmlsZSAxIDIwMTFcLTA3XC0wNCAiUHJveWVjdG8gRGViaWFuIiAiSGVycmFtaWVudGFzIGRlIGRwa2ciCisuU0ggTk9NQlJFCitkcGtnXC1kaXN0YWRkZmlsZSBcLSBB8WFkZSBlbnRyYWRhcyBhIKtkZWJpYW4vZmlsZXO7CisuCisuU0ggU0lOT1BTSVMKK1xmQmRwa2dcLWRpc3RhZGRmaWxlXGZQIFtcZklvcHRpb25cZlAuLi5dXGZJIGZpbGVuYW1lIHNlY3Rpb24gcHJpb3JpdHlcZlAKKy4KKy5TSCBERVNDUklQQ0nTTgorXGZCZHBrZ1wtZGlzdGFkZGZpbGVcZlAgYfFhZGUgdW5hIGVudHJhZGEgcGFyYSB1biBmaWNoZXJvIGRhZG8gYQorXGZCZGViaWFuL2ZpbGVzXGZQLgorCitUb21hIHRyZXMgYXJndW1lbnRvcyBubyBvcGNpb25hbGVzLCBlbCBub21icmUgZGUgZmljaGVybywgc2VjY2nzbiB5CitwcmlvcmlkYWQgcGFyYSBlbCBmaWNoZXJvIFxmQi5jaGFuZ2VzXGZQLgorCitFbCBub21icmUgZGVsIGZpY2hlcm8gZGViZSBzZXIgcmVsYXRpdm8gYWwgZGlyZWN0b3JpbyBkb25kZQorXGZCZHBrZ1wtZ2VuY2hhbmdlc1xmUCBlc3BlcmEgZW5jb250cmFyIGxvcyBmaWNoZXJvcywgaGFiaXR1YWxtZW50ZSBcZkIuLlxmUCwgZW4KK2x1Z2FyIGRlIHNlciByZWxhdGl2byBhbCBkaXJlY3RvcmlvIGRvbmRlIHNlIGVqZWN1dGEgXGZCZHBrZ1wtZGlzdGFkZGZpbGVcZlAuCisuCisuU0ggT1BDSU9ORVMKKy5UUCAKK1xmQlwtZlxmUFxmSWZpY2hlcm9cLWxpc3RhXC1maWNoZXJvc1xmUAorTGVlIG8gZXNjcmliZSBsYSBsaXN0YSBkZSBmaWNoZXJvcyBhIHN1YmlyIGRlc2RlIGVsIGZpY2hlcm8gZXNwZWNpZmljYWRvLCBlbgorbHVnYXIgZGUgdXNhciBcZkJkZWJpYW4vZmlsZXNcZlAuCisuVFAgCitcZkJcLWhcZlAsIFxmQlwtXC1oZWxwXGZQCitNdWVzdHJhIGVsIG1vZG8gZGUgdXNvIHkgdGVybWluYS4KKy5UUCAKK1xmQlwtXC12ZXJzaW9uXGZQCitNdWVzdHJhIGxhIHZlcnNp824geSB0ZXJtaW5hLgorLgorLlNIIEZJQ0hFUk9TCisuVFAgCitcZkJkZWJpYW4vZmlsZXNcZlAKK0xhIGxpc3RhIGRlIGZpY2hlcm9zIGdlbmVyYWRvcyBxdWUgc29uIHBhcnRlIGRlIGxvcyBkYXRvcyBzdWJpZG9zIGVuCitwcm9jZXNvLiBQdWVkZSB1c2FyIFxmQmRwa2dcLWRpc3RhZGRmaWxlXGZQIHBhcmEgYfFhZGlyIGZpY2hlcm9zIGFkaWNpb25hbGVzLgorLgorLlNIIEFVVE9SRVMKK0NvcHlyaWdodCBcKGNvIDE5OTVcLTE5OTYgSWFuIEphY2tzb24KKy5icgorQ29weXJpZ2h0IFwoY28gMjAwMCBXaWNoZXJ0IEFra2VybWFuCisuc3AKK0VzdG8gZXMgc29mdHdhcmUgbGlicmU7IHZlYSBsYSB2ZXJzafNuIDIgbyBwb3N0ZXJpb3IgZGUgbGEgTGljZW5jaWEgUPpibGljYQorR2VuZXJhbCBHTlUgcGFyYSBjb25kaWNpb25lcyBkZSBjb3BpYS4gTk8gaGF5IG5pbmd1bmEgZ2FyYW507WEuCisuU0ggIlRSQURVQ1RPUiIKK1J1ZHkgR29kb3kgPHJ1ZHlAa2VybmVsXC1wYW5pay5vcmc+LAorUnVi6W4gUG9ycmFzIDxuYWhvb0BpbmljaWEuZXM+LAorQnJ1bm8gQmFycmVyYSBDLiA8YnJ1bm8uYmFycmVyYUBpZ2xvby5jbD4sCitDYXJsb3MgSXpxdWllcmRvIDxnaGVlc2hAZXJ0aXMubmV0PiwKK0VzdGViYW4gTWFuY2hhZG8geQorTk9LLgorRGViaWFuIEwxMG4gU3BhbmlzaCA8ZGViaWFuXC1sMTBuXC1zcGFuaXNoQGxpc3RzLmRlYmlhbi5vcmc+LgorLmJyCitSZXZpc2lvbmVzIHBvciBTYW50aWFnbyBWaWxhIDxzYW52aWxhQHVuZXguZXM+LAorSmF2aWVyIEZlcm7hbmRlelwtU2FuZ3Vpbm8sIFJ1YuluIFBvcnJhcywKK0x1aXMgVXJpYmUgeSBPbWFyIENhbXBhZ25lLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vZXMvZHBrZy1kaXZlcnQuOCBiL2Rwa2ctMS4xNi4xLjEvbWFuL2VzL2Rwa2ctZGl2ZXJ0LjgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTkyOTJiNgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL2VzL2Rwa2ctZGl2ZXJ0LjgKQEAgLTAsMCArMSwxNTkgQEAKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlRIIGRwa2dcLWRpdmVydCA4IDIwMTFcLTA4XC0xNCAiUHJveWVjdG8gRGViaWFuIiAiSGVycmFtaWVudGFzIGRlIGRwa2ciCisuU0ggTk9NQlJFCitkcGtnXC1kaXZlcnQgXC0gUmVkZWZpbmUgbGEgdmVyc2nzbiBkZSB1biBmaWNoZXJvIGRlbCBwYXF1ZXRlCisuCisuU0ggU0lOT1BTSVMKK1xmQmRwa2dcLWRpdmVydFxmUCBbXGZJb3B0aW9uXGZQLi4uXSBcZkljb21tYW5kXGZQCisuCisuU0ggREVTQ1JJUENJ004KK1xmQmRwa2dcLWRpdmVydFxmUCBlcyB1bmEgaGVycmFtaWVudGEgcGFyYSBjb25maWd1cmFyIHkgYWN0dWFsaXphciBsYSBsaXN0YSBkZQorcmVkaXJlY2Npb25lcy4KKy5QUAorTGEgXGZJcmVkaXJlY2Np825cZlAgKKtkaXZlcnNpb267KSBkZSBmaWNoZXJvcyBlcyB1bmEgZm9ybWEgZGUgZXZpdGFyIHF1ZSBkcGtnCitpbnN0YWxlIHVuIGZpY2hlcm8gZW4gc3UgdWJpY2FjafNuLCBzaW5vIHF1ZSBsbyBpbnN0YWxlIGVuIHVuYSB1YmljYWNp824KK1xmSXJlZGlyaWdpZGFcZlAuIExhcyByZWRpcmVjY2lvbmVzIHNlIHB1ZWRlbiB1c2FyIGEgdHJhdulzIGRlIGxvcyBzY3JpcHRzIGVuCitsb3MgcGFxdWV0ZXMgRGViaWFuIHBhcmEgbW92ZXIgdW4gZmljaGVybyBjdWFuZG8gY2F1c2EgdW4gY29uZmxpY3RvLiBMb3MKK2FkbWluaXN0cmFkb3JlcyBkZSBzaXN0ZW1hIHB1ZWRlbiB1c2FybG8gdGFtYmnpbiBwYXJhIHJlZGVmaW5pciBlbCBmaWNoZXJvCitkZSBjb25maWd1cmFjafNuIGRlIGFsZ/puIHBhcXVldGUsIG8gY3VhbmRvIGFsZ3Vub3MgZmljaGVyb3MgKHF1ZSBubyBlc3ThbgorbWFyY2Fkb3MgY29tbyCrY29uZmZpbGVzuykgZGViZW4gc2VyIHByZXNlcnZhZG9zIHBvciBkcGtnIHNpIHNlIGluc3RhbGEgdW5hCit2ZXJzafNuIG51ZXZhIGRlbCBwYXF1ZXRlIHF1ZSBjb250aWVuZSBlc3RvcyBmaWNoZXJvcy4KKy5zcAorLlNIINNSREVORVMKKy5UUCAKK1tcZkJcLVwtYWRkXGZQXSBcZklmaWNoZXJvXGZQCitB8WFkZSB1bmEgcmVkaXJlY2Np824gcGFyYSBlbCBcZklmaWNoZXJvXGZQLgorLlRQIAorXGZCXC1cLXJlbW92ZVxmUFxmSSBmaWNoZXJvXGZQCitFbGltaW5hIHVuYSByZWRpcmVjY2nzbiBwYXJhIGVsIFxmSWZpY2hlcm9cZlAuCisuVFAgCitcZkJcLVwtbGlzdFxmUFxmSSBjb21vZO1uXGZQCitMaXN0YSBsYXMgcmVkaXJlY2Npb25lcyBxdWUgZW5jYWphbiBjb24gZWwgXGZJY29tb2TtblxmUCAocGF0cvNuIKtnbG9iuykuCisuVFAgCitcZkJcLVwtbGlzdHBhY2thZ2VcZlBcZkkgZmljaGVyb1xmUAorTXVlc3RyYSBlbCBub21icmUgZGVsIHBhcXVldGUgcXVlIHJlZGlyaWdlIGFsIFxmSWZpY2hlcm9cZlAuIE11ZXN0cmEgq0xPQ0FMuyBzaQorZWwgZmljaGVybyBlc3ThIHJlZGlyaWdpZG8gbG9jYWxtZW50ZSwgeSBuYWRhIHNpIGVsIFxmSWZpY2hlcm9cZlAgbm8gZXN04QorcmVkaXJpZ2lkby4KKy5UUCAKK1xmQlwtXC10cnVlbmFtZVxmUFxmSSBmaWNoZXJvXGZQCitNdWVzdHJhIGVsIG5vbWJyZSByZWFsIGRlbCBmaWNoZXJvIHJlZGlyaWdpZG8uCisuCisuU0ggT1BDSU9ORVMKKy5UUCAKK1xmQlwtXC1hZG1pbmRpclxmUFxmSSBkaXJlY3RvcmlvXGZQCitEZWZpbmUgZWwgZGlyZWN0b3JpbyBkZSBkYXRvcyBkZSBkcGtnIGNvbW8gXGZJZGlyZWN0b3Jpb1xmUCAocG9yIG9taXNp8246CitcZkkvdmFyL2xpYi9kcGtnXGZQKS4KKy5UUCAKK1xmQlwtXC1kaXZlcnRcZlBcZkkgcmVkaXJpZ2lyXC1hXGZQCitcZklyZWRpcmlnaXJcLWFcZlAgZXMgbGEgdWJpY2FjafNuIGRvbmRlIGxhcyB2ZXJzaW9uZXMgZGVsIFxmSWZpY2hlcm9cZlAsIHRhbCB5Citjb21vIG90cm9zIHBhcXVldGVzIGxvIG9mcmVjZW4sIHNlIHJlZGlyaWdpcuEuCisuVFAgCitcZkJcLVwtbG9jYWxcZlAKK0VzcGVjaWZpY2EgcXVlIHRvZGFzIGxhcyB2ZXJzaW9uZXMgZGUgbG9zIHBhcXVldGVzIGRlIGVzdGUgZmljaGVybyBzZQorcmVkaXJpZ2ly4W4uIEVzdG8gZXMsIHNpbiBleGNlcGNpb25lcywgeSBzaW4gaW1wb3J0YXIgcXXpIHBhcXVldGUgZXN04QoraW5zdGFsYWRvLCBlbCBmaWNoZXJvIHNlIHJlZGlyaWdpcuEuIEVsIGFkbWluaXN0cmFkb3IgZGVsIHNpc3RlbWEgcHVlZGUgdXNhcgorZXN0byBwYXJhIGluc3RhbGFyIHVuYSB2ZXJzafNuIG1vZGlmaWNhZGEgbG9jYWxtZW50ZS4KKy5UUCAKK1xmQlwtXC1wYWNrYWdlXGZQXGZJIHBhcXVldGVcZlAKKzxwYXF1ZXRlPiBlcyBlbCBub21icmUgZGUgdW4gcGFxdWV0ZSBjdXlhIGNvcGlhIGRlbCBcZklmaWNoZXJvXGZQIG5vIHNlCityZWRpcmlnaXLhLiBQb3IgZWplbXBsbywgZWwgXGZJZmljaGVyb1xmUCBzZSByZWRpcmlnaXLhIHBhcmEgdG9kb3MgbG9zIHBhcXVldGVzCithIGV4Y2VwY2nzbiBkZSBcZklwYXF1ZXRlXGZQLgorLlRQIAorXGZCXC1cLXF1aWV0XGZQCitNb2RvIHNpbGVuY2lvc28sIGVzdG8gZXM6IHNpbiBpbmZvcm1hY2nzbiBkZXRhbGxhZGEuCisuVFAgCitcZkJcLVwtcmVuYW1lXGZQCitNdWV2ZSBlbCBhcmNoaXZvIGEgdW4gbGFkbyAobyBhdHLhcykuIFxmQmRwa2dcLWRpdmVydFxmUCBpbnRlcnJ1bXBpcuEgbGEKK29wZXJhY2nzbiBlbiBjYXNvIGRlIHF1ZSBlbCBmaWNoZXJvIGRlc3Rpbm8geWEgZXhpc3RhLgorLlRQIAorXGZCXC1cLXRlc3RcZlAKK01vZG8gZGUgcHJ1ZWJhLCBlc3RvIGVzLCBubyByZWFsaXphIG5pbmf6biBjYW1iaW8sIHPzbG8gbXVlc3RyYSBzdQorZWplY3VjafNuLgorLlRQIAorXGZCXC1cLWhlbHBcZlAKK011ZXN0cmEgZWwgbW9kbyBkZSB1c28geSB0ZXJtaW5hLgorLlRQIAorXGZCXC1cLXZlcnNpb25cZlAKK011ZXN0cmEgbGEgdmVyc2nzbiB5IHRlcm1pbmEuCisuCisuU0ggTk9UQVMKK1doZW4gYWRkaW5nLCBkZWZhdWx0IGlzIFxmQlwtXC1sb2NhbFxmUCBhbmQgXGZCXC1cLWRpdmVydFxmUAorXGZJb3JpZ2luYWxcZlBcZkIuZGlzdHJpYlxmUC4gV2hlbiByZW1vdmluZywgXGZCXC1cLXBhY2thZ2VcZlAgb3IgXGZCXC1cLWxvY2FsXGZQIGFuZAorXGZCXC1cLWRpdmVydFxmUCBtdXN0IG1hdGNoIGlmIHNwZWNpZmllZC4KKworTG9zIGRpcmVjdG9yaW9zIG5vIHNlIHB1ZWRlbiByZWRpcmlnaXIgY29uIFxmQmRwa2dcLWRpdmVydFxmUC4KKworRGViZSB0ZW5lciBjdWlkYWRvIGFsIHJlZGlyZWNjaW9uYXIgYmlibGlvdGVjYXMgY29tcGFydGlkYXMsIFxmQmxkY29uZmlnXGZQICg4KQorY3JlYSB1biBlbmxhY2Ugc2ltYvNsaWNvIGJhc2FkbyBlbiBlbCBjYW1wbyCrRFRfU09OQU1FuyBpbnRlZ3JhZG8gZW4gbGEKK2JpYmxpb3RlY2EuIFlhIHF1ZSBsZGNvbmZpZyBubyByZXNwZXRhIGxhcyByZWRpcmVjY2lvbmVzIChz82xvIGRwa2cgbG8KK2hhY2UpLCBzaSB1bmEgYmlibGlvdGVjYSByZWRpcmlnaWRhIHRpZW5lIGVsIG1pc21vIKtTT05BTUW7IHF1ZSBsYSBxdWUgbm8KK2VzdOEgcmVkaXJpZ2lkYSwgZXMgcG9zaWJsZSBxdWUgZWwgZW5sYWNlIHNpbWLzbGljbyBhY2FiZSBhcHVudGFuZG8gYSBsYQorYmlibGlvdGVjYSByZWRpcmlnaWRhLgorLgorLlNIIEVKRU1QTE9TCitQYXJhIHJlZGlyZWNjaW9uYXIgdG9kYXMgbGFzIGNvcGlhcyBkZSBcZkkvdXNyL2Jpbi9lamVtcGxvXGZQIGEKK1xmSS91c3IvYmluL2VqZW1wbG8uZm9vXGZQOyBoYXLhIHF1ZSB0b2RvcyBsb3MgcGFxdWV0ZXMgcXVlIHByb3ZlYW4KK1xmSS91c3IvYmluL2VqZW1wbG9cZlAgbG8gaW5zdGFsZW4gY29tbyBcZkkvdXNyL2Jpbi9lamVtcGxvLmZvb1xmUCwgcmVub21icmFuZG8gZWwKK2ZpY2hlcm8gZW4gY2FzbyBkZSBzZXIgbmVjZXNhcmlvLgorLkhQCitkcGtnXC1kaXZlcnQgXC1cLWRpdmVydCAvdXNyL2Jpbi9lamVtcGxvLmZvbyBcLVwtcmVuYW1lIC91c3IvYmluL2VqZW1wbG8KKy5QUAorUGFyYSBlbGltaW5hciBlc2EgcmVkaXJlY2Np8246CisuSFAKK2Rwa2dcLWRpdmVydCBcLVwtcmVuYW1lIFwtXC1yZW1vdmUgL3Vzci9iaW4vZWplbXBsbworCisuUFAKK1BhcmEgcmVkaXJlY2Npb25hciBjdWFscXVpZXIgcGFxdWV0ZSBxdWUgaW5zdGFsZSBcZkkvdXNyL2Jpbi9lamVtcGxvXGZQIGNvbW8KK1xmSS91c3IvYmluL2VqZW1wbG8uZm9vXGZQLCBhIGV4Y2VwY2nzbiBkZSBzdSBwcm9waW8gcGFxdWV0ZSBcZkl3aWJibGVcZlAuCisuSFAKK2Rwa2dcLWRpdmVydCBcLVwtcGFja2FnZSB3aWJibGUgXC1cLWRpdmVydCAvdXNyL2Jpbi9lamVtcGxvLmZvbyBcLVwtcmVuYW1lCisvdXNyL2Jpbi9lamVtcGxvCisuUFAKK1BhcmEgZWxpbWluYXIgZXNhIHJlZGlyZWNjafNuOgorLkhQCitkcGtnXC1kaXZlcnQgXC1cLXBhY2thZ2Ugd2liYmxlIFwtXC1yZW5hbWUgXC1cLXJlbW92ZSAvdXNyL2Jpbi9lamVtcGxvCisuCisuU0ggRU5UT1JOTworLlRQIAorXGZCRFBLR19BRE1JTkRJUlxmUAorSWYgc2V0IGFuZCB0aGUgXGZCXC1cLWFkbWluZGlyXGZQIG9wdGlvbiBoYXMgbm90IGJlZW4gc3BlY2lmaWVkLCBpdCB3aWxsIGJlIHVzZWQKK2FzIHRoZSBkcGtnIGRhdGEgZGlyZWN0b3J5LgorLlRQIAorXGZCRFBLR19NQUlOVFNDUklQVF9QQUNLQUdFXGZQCitJZiBzZXQgYW5kIHRoZSBcZkJcLVwtbG9jYWxcZlAgYW5kIFxmQlwtXC1wYWNrYWdlXGZQIG9wdGlvbnMgaGF2ZSBub3QgYmVlbiBzcGVjaWZpZWQsCitcZkJkcGtnXC1kaXZlcnRcZlAgd2lsbCB1c2UgaXQgYXMgdGhlIHBhY2thZ2UgbmFtZS4KKy4KKy5TSCBGSUNIRVJPUworLlRQIAorXGZJL3Zhci9saWIvZHBrZy9kaXZlcnNpb25zXGZQCitFbCBmaWNoZXJvIHF1ZSBjb250aWVuZSBsYSBsaXN0YSBhY3R1YWwgZGUgcmVkaXJlY2Npb25lcyBlbiBlbCBzaXN0ZW1hLiBFc3ThCit1YmljYWRvIGVuIGVsIGRpcmVjdG9yaW8gZGUgYWRtaW5pc3RyYWNp824gZGUgZHBrZywgYXPtIGNvbW8gb3Ryb3MgZmljaGVyb3MKK2ltcG9ydGFudGVzIHBhcmEgZHBrZywgY29tbyBcZklzdGF0dXNcZlAgbyBcZklhdmFpbGFibGVcZlAuCisuYnIKK05vdGE6IFxmQmRwa2dcLWRpdmVydFxmUCBwcmVzZXJ2YSBsYSBjb3BpYSBhbnRpZ3VhIGRlIGVzdGUgYXJjaGl2bywgaW5zZXJ0YW5kbworbGEgZXh0ZW5zafNuIFxmSVwtb2xkXGZQIGFudGVzIGRlIHJlZW1wbGF6YXJsbyBjb24gdW5vIG51ZXZvLgorLgorLlNIICJWyUFTRSBUQU1CSclOIgorXGZCZHBrZ1xmUCgxKS4KKy4KKy5TSCBBVVRPUgorQ29weXJpZ2h0IFwoY28gMTk5NSBJYW4gSmFja3NvbgorLnNwCitFc3RvIGVzIHNvZnR3YXJlIGxpYnJlOyB2ZWEgbGEgdmVyc2nzbiAyIG8gcG9zdGVyaW9yIGRlIGxhIExpY2VuY2lhIFD6YmxpY2EKK0dlbmVyYWwgR05VIHBhcmEgY29uZGljaW9uZXMgZGUgY29waWEuIE5PIGhheSBuaW5ndW5hIGdhcmFudO1hLgorLlNIICJUUkFEVUNUT1IiCitSdWR5IEdvZG95IDxydWR5QGtlcm5lbFwtcGFuaWsub3JnPiwKK1J1YuluIFBvcnJhcyA8bmFob29AaW5pY2lhLmVzPiwKK0JydW5vIEJhcnJlcmEgQy4gPGJydW5vLmJhcnJlcmFAaWdsb28uY2w+LAorQ2FybG9zIEl6cXVpZXJkbyA8Z2hlZXNoQGVydGlzLm5ldD4sCitFc3RlYmFuIE1hbmNoYWRvIHkKK05PSy4KK0RlYmlhbiBMMTBuIFNwYW5pc2ggPGRlYmlhblwtbDEwblwtc3BhbmlzaEBsaXN0cy5kZWJpYW4ub3JnPi4KKy5icgorUmV2aXNpb25lcyBwb3IgU2FudGlhZ28gVmlsYSA8c2FudmlsYUB1bmV4LmVzPiwKK0phdmllciBGZXJu4W5kZXpcLVNhbmd1aW5vLCBSdWLpbiBQb3JyYXMsCitMdWlzIFVyaWJlIHkgT21hciBDYW1wYWduZS4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL2VzL2Rwa2ctZ2VuY2hhbmdlcy4xIGIvZHBrZy0xLjE2LjEuMS9tYW4vZXMvZHBrZy1nZW5jaGFuZ2VzLjEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTRkMjExYwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL2VzL2Rwa2ctZ2VuY2hhbmdlcy4xCkBAIC0wLDAgKzEsMTQ3IEBACisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkcGtnXC1nZW5jaGFuZ2VzIDEgMjAxMVwtMDhcLTE0ICJQcm95ZWN0byBEZWJpYW4iICJIZXJyYW1pZW50YXMgZGUgZHBrZyIKKy5TSCBOT01CUkUKK2Rwa2dcLWdlbmNoYW5nZXMgXC0gR2VuZXJhY2nzbiBkZSBmaWNoZXJvcyBkZSBEZWJpYW4gqy5jaGFuZ2VzuworLgorLlNIIFNJTk9QU0lTCitcZkJkcGtnXC1nZW5jaGFuZ2VzXGZQIFtcZklvcHRpb25cZlAuLi5dCisuYnIKKy4KKy5TSCBERVNDUklQQ0nTTgorXGZCZHBrZ1wtZ2VuY2hhbmdlc1xmUCBsZWUgbGEgaW5mb3JtYWNp824gZGUgdW4g4XJib2wgZGUgZnVlbnRlcyBkZSBEZWJpYW4KK2Rlc2VtcGFxdWV0YWRvIHkgY29uc3RydWlkbywgYXPtIGNvbW8gZGUgbG9zIGZpY2hlcm9zIHF1ZSBoYSBnZW5lcmFkbywgeQorY3JlYSB1biBmaWNoZXJvIGRlIGNvbnRyb2wgZGUgc3ViaWRhIGRlIERlYmlhbiwgZWwgZmljaGVybyBcZkIuY2hhbmdlc1xmUC4KKy4KKy5TSCBPUENJT05FUworLlRQIAorXGZCXC1iXGZQLCBcZkJcLUJcZlAsIFxmQlwtQVxmUAorRGVmaW5lIHF1ZSBz82xvIHNlIHZhIGEgcmVhbGl6YXIgdW5hIGNvbnN0cnVjY2nzbiBiaW5hcmlhIChubyBzZSBpbmNsdXllbgorbG9zIGZpY2hlcm9zIGRlIGZ1ZW50ZSkuIE5vIGhheSBkaWZlcmVuY2lhcyBlbnRyZSBcZkJcLWJcZlAsIFxmQlwtQlxmUCB5IFxmQlwtQVxmUCwgeSBlbAorZmljaGVybyBcZkIuY2hhbmdlc1xmUCBpbmNsdWly4SBhcXVlbGxvcyBmaWNoZXJvcyBjcmVhZG9zIG1lZGlhbnRlIGVsIG8gbG9zCiurdGFyZ2V0uyBkZSBtYWtlIGJpbmFyaW9zIChcZkJiaW5hcnlcLSpcZlApIGRlbCBwYXF1ZXRlIGEgY29uc3RydWlyLgorLlRQIAorXGZCXC1TXGZQCitEZWZpbmUgcXVlIHPzbG8gc2UgZGViZW4gc3ViaXIgbGFzIGZ1ZW50ZXMgKG5vIHNlIGluY2x1aXLhbiBwYXF1ZXRlcworYmluYXJpb3MpLgorLlBQCitMYXMgb3BjaW9uZXMgXGZCXC1zXGZQXGZJeFxmUCBjb250cm9sYW4gc2kgZWwgYXJjaGl2byBvcmlnaW5hbCBkZSBsYXMgZnVlbnRlcyBzZQoraW5jbHV5ZSBlbiBsYSBzdWJpZGEgZ2VuZXJhZGEsIGVuIGNhc28gZGUgZ2VuZXJhciBhbGd1bmEgZnVlbnRlIChwb3IKK2VqZW1wbG8sIHNpIG5vIHNlIGhhbiB1c2FkbyBcZkJcLWJcZlAgbyBcZkJcLUJcZlApLgorLlRQIAorXGZCXC1zaVxmUAorUG9yIG9taXNp824sIG8gc2kgc2UgZXNwZWNpZmljYSwgbGFzIGZ1ZW50ZXMgb3JpZ2luYWxlcyBzZSBpbmNsdWly4W4gc2kgZWwKK276bWVybyBkZSB2ZXJzafNuIGRlbCBhdXRvciBvcmlnaW5hbCAobGEgdmVyc2nzbiBzaW4gq2Vwb2NouyB5IHNpbiBsYSBwYXJ0ZQorZGVsIG76bWVybyBkZSB2ZXJzafNuIHF1ZSBjb3JyZXNwb25kZSBhIGxhIHJldmlzafNuIGRlIERlYmlhbikgZGlmaWVyZSBkZWwKK276bWVybyBkZSB2ZXJzafNuIGRlIGxhIGZ1ZW50ZSBvcmlnaW5hbCBlbiBsYSBlbnRyYWRhIGRlbCByZWdpc3RybyBkZQorY2FtYmlvcy4KKy5UUCAKK1xmQlwtc2FcZlAKK0Z1ZXJ6YSBsYSBpbmNsdXNp824gZGUgbGEgZnVlbnRlIG9yaWdpbmFsLgorLlRQIAorXGZCXC1zZFxmUAorRnVlcnphIGxhIGV4Y2x1c2nzbiBkZSBsYSBmdWVudGUgb3JpZ2luYWwgeSBz82xvIGluY2x1eWUgZWwgZmljaGVybyBkZQorZGlmZXJlbmNpYXMgqy5kaWZmuy4KKy5maQorLlRQIAorXGZCXC12XGZQXGZJdmVyc2nzblxmUAorUHJvdm9jYSBlbCB1c28gZGUgbGEgaW5mb3JtYWNp824gZGVsIHJlZ2lzdHJvIGRlIGNhbWJpb3MgZGUgdG9kYXMgbGFzCit2ZXJzaW9uZXMgZXN0cmljdGFtZW50ZSBwb3N0ZXJpb3JlcyBhIFxmSXZlcnNp825cZlAuCisuVFAgCitcZkJcLUNcZlBcZklkZXNjcmlwY2nzblwtZGVcLWNhbWJpb3NcZlAKK0xlZSBsYSBkZXNjcmlwY2nzbiBkZSBsb3MgY2FtYmlvcyBkZWwgZmljaGVybyBcZkljaGFuZ2VzZGVzY3JpcHRpb25cZlAgZW4gdmV6CitkZSB1c2FyIGxhIGluZm9ybWFjafNuIGNvbnRlbmlkYSBlbiBlbCBmaWNoZXJvIGRlIGNhbWJpb3MgZGVsIOFyYm9sIGRlCitmdWVudGVzLgorLlRQIAorXGZCXC1tXGZQXGZJZGlyZWNjafNuXC1tYW50ZW5lZG9yXGZQCitVdGlsaXphIFxmSWRpcmVjY2nzblwtbWFudGVuZWRvclxmUCBjb21vIGVsIG5vbWJyZSB5IGRpcmVjY2nzbiBkZSBjb3JyZW8gZGVsCityZXNwb25zYWJsZSBkZSBlc3RlIHBhcXVldGUsIGVuIGx1Z2FyIGRlIHVzYXIgbGEgaW5mb3JtYWNp824gZGVsIGZpY2hlcm8gZGUKK2NvbnRyb2wgZGVsIOFyYm9sIGRlIGZ1ZW50ZXMuCisuVFAgCitcZkJcLWVcZlBcZklkaXJlY2Np825cLW1hbnRlbmVkb3JcZlAKK1V0aWxpemEgXGZJZGlyZWNjafNuXC1tYW50ZW5lZG9yXGZQIGNvbW8gZWwgbm9tYnJlIHkgZGlyZWNjafNuIGRlIGNvcnJlbyBkZWwKK3Jlc3BvbnNhYmxlIGRlIGVzdGEgc3ViaWRhLCBlbiBsdWdhciBkZSB1c2FyIGxhIGluZm9ybWFjafNuIGRlbCByZWdpc3RybyBkZQorY2FtYmlvcyBkZWwg4XJib2wgZGUgZnVlbnRlcy4KKy5UUCAKK1xmQlwtVlxmUFxmSW5vbWJyZVxmUFxmQj1cZlBcZkl2YWxvclxmUAorRGVmaW5lIHVuYSB2YXJpYWJsZSBkZSBzdXN0aXR1Y2nzbiBkZSBsYSBzYWxpZGEuIENvbnN1bHRlCitcZkJkZWJcLXN1YnN0dmFyc1xmUCg1KSBwYXJhIG3hcyBpbmZvcm1hY2nzbiBhY2VyY2EgZGUgbGEgc3VzdGl0dWNp824gZGUgbGEKK3NhbGlkYS4KKy5UUCAKK1xmQlwtVFxmUFxmSWZpY2hlcm9cLXZhcmlhYmxlc1wtc3VzdFxmUAorTGVlIHZhcmlhYmxlcyBkZSBzdXN0aXR1Y2nzbiBkZXNkZSBlbCBcZklmaWNoZXJvXC12YXJpYWJsZXNcLXN1c3RcZlA7CitcZkJkZWJpYW4vc3Vic3R2YXJzXGZQIGVzIGVsIHZhbG9yIHBvciBvbWlzafNuLiBObyBzZSByZWFsaXphIG5pbmd1bmEKK3N1c3RpdHVjafNuIGRlIHZhcmlhYmxlcyBlbiBuaW5ndW5vIGRlIGxvcyBjYW1wb3MgcXVlIHNvbiBwYXJ0ZSBkZSBsYQorc2FsaWRhLiBQb3Igb3RyYSBwYXJhLCBsYSB2YXJpYWJsZSBlc3BlY2lhbCBcZklGb3JtYXRcZlAgc29icmVlc2NyaWJpcuEgZWwKK2NhbXBvIGRlbCBtaXNtbyBub21icmUuIFB1ZWRlIHVzYXIgZXN0YSBvcGNp824gdmFyaWFzIHZlY2VzIHBhcmEgbGVlcgordmFyaWFibGVzIGRlIHN1c3RpdHVjafNuIGRlIHZhcmlvcyBmaWNoZXJvcy4KKworLlRQIAorXGZCXC1EXGZQXGZJY2FtcG9cZlBcZkI9XGZQXGZJdmFsb3JcZlAKK1NvYnJlZXNjcmliZSBvIGHxYWRlIHVuIGNhbXBvIGVuIGVsIGZpY2hlcm8gZGUgY29udHJvbCBkZSBzYWxpZGEuCisuVFAgCitcZkJcLVVcZlBcZkljYW1wb1xmUAorRWxpbWluYSB1biBjYW1wbyBkZWwgZmljaGVybyBkZSBjb250cm9sIGRlIHNhbGlkYS4KKy5UUCAKK1xmQlwtY1xmUFxmSWZpY2hlcm9cLWNvbnRyb2xcZlAKK0RlZmluZSBlbCBmaWNoZXJvIGRlIGNvbnRyb2wgcHJpbmNpcGFsIGRlIGxhcyBmdWVudGVzIGRlbCBxdWUgbGVlciBsYQoraW5mb3JtYWNp824uIFBvciBvbWlzafNuIGVzIFxmQmRlYmlhbi9jb250cm9sXGZQLgorLlRQIAorXGZCXC1sXGZQXGZJZmljaGVyb1wtY2FtYmlvc1xmUAorRGVmaW5lIGVsIGZpY2hlcm8gZGUgcmVnaXN0cm8gZGUgY2FtYmlvcyBkZWwgcXVlIGxlZXIgbGEgaW5mb3JtYWNp824uIFBvcgorb21pc2nzbiBlcyBcZkJkZWJpYW4vY2hhbmdlbG9nXGZQLgorLlRQIAorXGZCXC1mXGZQXGZJZmljaGVyb1wtbGlzdGFcLWZpY2hlcm9zXGZQCitMZWUgbyBlc2NyaWJlIGxhIGxpc3RhIGRlIGZpY2hlcm9zIHBhcmEgc3ViaXIgYXF17SwgZW4gbHVnYXIgZGUgdXNhcgorXGZCZGViaWFuL2ZpbGVzXGZQLgorLlRQIAorXGZCXC1GXGZQXGZJZm9ybWF0b1wtcmVnaXN0cm9cLWNhbWJpb3NcZlAKK0RlZmluZSBlbCBmb3JtYXRvIGRlbCByZWdpc3RybyBkZSBjYW1iaW9zLiBQb3Igb21pc2nzbiwgZWwgZm9ybWF0byBzZSBsZWUgZGUKK3VuYSBs7W5lYSBlc3BlY2lhbCBjZXJjYSBkZWwgZmluYWwgZGVsIHJlZ2lzdHJvIGRlIGNhbWJpb3MgbywgZW4gY2FzbyBkZQorZmFsbG8sIHVzYSBlbCBmb3JtYXRvIGVzdOFuZGFyIGRlYmlhbi4KKy5UUCAKK1xmQlwtdVxmUFxmSWRpcmVjdG9yaW9cLXN1YmlkYVwtZmljaGVyb3NcZlAKK0J1c2NhIGZpY2hlcm9zIGEgc3ViaXIgZW4gXGZJZGlyZWN0b3Jpb1wtc3ViaWRhXC1maWNoZXJvc1xmUCBlbiBsdWdhciBkZSBcZkIuLlxmUAorKFxmQmRwa2dcLWdlbmNoYW5nZXNcZlAgbmVjZXNpdGEgZW5jb250cmFyIGVzdG9zIGZpY2hlcm9zIHBhcmEgcG9kZXIgaW5jbHVpciBzdXMKK3RhbWHxb3MgeSBzdW1hcyBkZSB2ZXJpZmljYWNp824gZW4gZWwgZmljaGVybyBcZkIuY2hhbmdlc1xmUCkuCisuVFAgCitcZkJcLXFcZlAKK0hhYml0dWFsbWVudGUsIFxmQmRwa2dcLWdlbmNoYW5nZXNcZlAgcHJvZHVjaXLhIG1lbnNhamVzIGluZm9ybWF0aXZvcyBwb3IgbGEKK3NhbGlkYSBkZSBlcnJvciBlc3ThbmRhciwgcG9yIGVqZW1wbG8gYWNlcmNhIGRlIGN14W50b3MgZGUgbG9zIGZpY2hlcm9zCitmdWVudGUgZGUgbG9zIHBhcXVldGVzIHNlIGVzdOFuIHN1YmllbmRvLiBcZkJcLXFcZlAgc3VwcmltZSBkaWNob3MgbWVuc2FqZXMuCisuVFAgCitcZkJcLWhcZlAsIFxmQlwtXC1oZWxwXGZQCitNdWVzdHJhIGVsIG1vZG8gZGUgdXNvIHkgdGVybWluYS4KKy5UUCAKK1xmQlwtXC12ZXJzaW9uXGZQCitNdWVzdHJhIGxhIHZlcnNp824geSB0ZXJtaW5hLgorLgorLlNIIEZJQ0hFUk9TCisuVFAgCitcZkJkZWJpYW4vZmlsZXNcZlAKK0xhIGxpc3RhIGRlIGZpY2hlcm9zIGdlbmVyYWRvcyBxdWUgZm9ybWFuIHBhcnRlIGRlIGxhIHN1YmlkYSBhbCBzZXJ2aWRvciBlbgorcHJlcGFyYWNp824uIFxmQmRwa2dcLWdlbmNoYW5nZXNcZlAgbGVlIGxvcyBkYXRvcyBhcXXtIGN1YW5kbyBwcm9kdWNlIHVuIGZpY2hlcm8KK1wmXGZCLmNoYW5nZXNcZlAuCisuCisuU0ggQVVUT1JFUworQ29weXJpZ2h0IFwoY28gMTk5NVwtMTk5NiBJYW4gSmFja3NvbgorLmJyCitDb3B5cmlnaHQgXChjbyAyMDAwIFdpY2hlcnQgQWtrZXJtYW4KKy5zcAorRXN0byBlcyBzb2Z0d2FyZSBsaWJyZTsgdmVhIGxhIHZlcnNp824gMiBvIHBvc3RlcmlvciBkZSBsYSBMaWNlbmNpYSBQ+mJsaWNhCitHZW5lcmFsIEdOVSBwYXJhIGNvbmRpY2lvbmVzIGRlIGNvcGlhLiBOTyBoYXkgbmluZ3VuYSBnYXJhbnTtYS4KKy5TSCAiVFJBRFVDVE9SIgorUnVkeSBHb2RveSA8cnVkeUBrZXJuZWxcLXBhbmlrLm9yZz4sCitSdWLpbiBQb3JyYXMgPG5haG9vQGluaWNpYS5lcz4sCitCcnVubyBCYXJyZXJhIEMuIDxicnVuby5iYXJyZXJhQGlnbG9vLmNsPiwKK0NhcmxvcyBJenF1aWVyZG8gPGdoZWVzaEBlcnRpcy5uZXQ+LAorRXN0ZWJhbiBNYW5jaGFkbyB5CitOT0suCitEZWJpYW4gTDEwbiBTcGFuaXNoIDxkZWJpYW5cLWwxMG5cLXNwYW5pc2hAbGlzdHMuZGViaWFuLm9yZz4uCisuYnIKK1JldmlzaW9uZXMgcG9yIFNhbnRpYWdvIFZpbGEgPHNhbnZpbGFAdW5leC5lcz4sCitKYXZpZXIgRmVybuFuZGV6XC1TYW5ndWlubywgUnVi6W4gUG9ycmFzLAorTHVpcyBVcmliZSB5IE9tYXIgQ2FtcGFnbmUuCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9lcy9kcGtnLWdlbmNvbnRyb2wuMSBiL2Rwa2ctMS4xNi4xLjEvbWFuL2VzL2Rwa2ctZ2VuY29udHJvbC4xCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmFmMmQzYjYKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9lcy9kcGtnLWdlbmNvbnRyb2wuMQpAQCAtMCwwICsxLDE0NSBAQAorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlwiCisuXCIgVGhpcyBmaWxlIHdhcyBnZW5lcmF0ZWQgd2l0aCBwbzRhLiBUcmFuc2xhdGUgdGhlIHNvdXJjZSBmaWxlLgorLlwiCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuVEggZHBrZ1wtZ2VuY29udHJvbCAxIDIwMTFcLTA4XC0xNCAiUHJveWVjdG8gRGViaWFuIiAiSGVycmFtaWVudGFzIGRlIGRwa2ciCisuU0ggTk9NQlJFCitkcGtnXC1nZW5jb250cm9sIFwtIEdlbmVyYWNp824gZGUgZmljaGVyb3MgZGUgY29udHJvbCBkZSBEZWJpYW4KKy4KKy5TSCBTSU5PUFNJUworXGZCZHBrZ1wtZ2VuY29udHJvbFxmUCBbXGZJb3B0aW9uXGZQLi4uXQorLgorLlNIIERFU0NSSVBDSdNOCitcZkJkcGtnXC1nZW5jb250cm9sXGZQIGxlZSBsYSBpbmZvcm1hY2nzbiBkZXNkZSB1biDhcmJvbCBkZSBmdWVudGVzIGRlIERlYmlhbgorZGVzZW1wYXF1ZXRhZG8sIHkgZ2VuZXJhIHVuIGZpY2hlcm8gZGUgY29udHJvbCBkZSBwYXF1ZXRlIGJpbmFyaW8gKHBvcgorb21pc2nzbiB1YmljYWRvIGVuIKtkZWJpYW4vdG1wL0RFQklBTi9jb250cm9suyk7IGR1cmFudGUgZWwgcHJvY2VzbywgdGFtYmnpbgorc2ltcGxpZmljYXLhIGxvcyBjYW1wb3MgZGUgbGFzIHJlbGFjaW9uZXMuCisuc3AKK1BvciBlbGxvLCBcZklQcmVcLURlcGVuZHNcZlAsIFxmSURlcGVuZHNcZlAsIFxmSVJlY29tbWVuZHNcZlAgeSBcZklTdWdnZXN0c1xmUCBzZQorc2ltcGxpZmljYW4gZW4gZXN0ZSBvcmRlbiBtZWRpYW50ZSBsYSBlbGltaW5hY2nzbiBkZSBkZXBlbmRlbmNpYXMgcmVhbGVzIGRlCithY3VlcmRvIGEgbGFzIGRlcGVuZGVuY2lhcyBt4XMgZnVlcnRlcyB5YSBhbmFsaXphZGFzLiBUYW1iaeluIGVsaW1pbmEKK2N1YWxxdWllciBkZXBlbmRlbmNpYSBzb2JyZSBzaSBtaXNtbyAoZGUgaGVjaG8sIGVsaW1pbmFy4SBjdWFscXVpZXIKK2RlcGVuZGVuY2lhIHRvbWFkYSBjb21vIHZlcmRhZGVyYSwgq3RydWW7LCBzaSBsYSB2ZXJzafNuIGFjdHVhbCBkZWwgcGFxdWV0ZQoreWEgc2UgZW5jdWVudHJhIGluc3RhbGFkYSkuIFJldGVuZHLhIGRlIGZvcm1hIGzzZ2ljYSBsYSBpbnRlcnNlY2Np824gZGUKK3ZhcmlhcyBkZXBlbmRlbmNpYXMgc29icmUgZWwgbWlzbW8gcGFxdWV0ZS4gRWwgb3JkZW4gZGUgbGFzIGRlcGVuZGVuY2lhcyBzZQorbW9kaWZpY2EgbG8gbWVub3MgcG9zaWJsZTogZW4gY2FzbyBkZSB0ZW5lciBxdWUgZWxpbWluYXIgdW5hIGRlcGVuZGVuY2lhCitkZWJpZGEgYSBxdWUgb3RyYSBhcGFyZWNlIG3hcyBhZGVsYW50ZSBlbiBlbCBjYW1wbywg6XN0YSB0b21hcuEgbGEgcG9zaWNp824KK2RlIGxhIGRlcGVuZGVuY2lhIGRlc2NhcnRhZGEuCisuc3AKK0xvcyBvdHJvcyBjYW1wb3MgZGUgcmVsYWNp824gKFxmSUVuaGFuY2VzXGZQLCBcZklDb25mbGljdHNcZlAsIFxmSUJyZWFrc1xmUCwKK1xmSVJlcGxhY2VzXGZQIHkgXGZJUHJvdmlkZXNcZlApIHNlIHNpbXBsaWZpY2FuIGluZGl2aWR1YWxtZW50ZSBjb21wdXRhbmRvIGxhCit1bmnzbiBkZSB0b2RhcyBsYXMgZGVwZW5kZW5jaWFzIGN1YW5kbyB1biBwYXF1ZXRlIGFwYXJlY2UgdmFyaWFzIHZlY2VzIGVuIGVsCitjYW1wby4KKy5zcAorXGZCZHBrZ1wtZ2VuY29udHJvbFxmUCB0YW1iaeluIGHxYWRlIHVuYSBlbnRyYWRhIHBhcmEgZWwgcGFxdWV0ZSBiaW5hcmlvIGVuCitcZkJkZWJpYW4vZmlsZXNcZlAuCisuCisuU0ggT1BDSU9ORVMKKy5UUCAKK1xmQlwtdlxmUFxmSXZlcnNp825cZlAKK0RlZmluZSBlbCBu+m1lcm8gZGUgdmVyc2nzbiBkZWwgcGFxdWV0ZSBiaW5hcmlvIGEgZ2VuZXJhci4KKy5UUCAKK1xmQlwtVlxmUFxmSW5vbWJyZVxmUFxmQj1cZlBcZkl2YWxvclxmUAorRGVmaW5lIHVuYSB2YXJpYWJsZSBkZSBzdXN0aXR1Y2nzbiBkZSBsYSBzYWxpZGEuIENvbnN1bHRlCitcZkJkZWJcLXN1YnN0dmFyc1xmUCg1KSBwYXJhIG3hcyBpbmZvcm1hY2nzbiBhY2VyY2EgZGUgbGEgc3VzdGl0dWNp824gZGUgbGEKK3NhbGlkYS4KKy5UUCAKK1xmQlwtVFxmUFxmSWZpY2hlcm9cLXZhcmlhYmxlc1wtc3VzdFxmUAorTGVlIHZhcmlhYmxlcyBkZSBzdXN0aXR1Y2nzbiBkZXNkZSBlbCBcZklmaWNoZXJvXC12YXJpYWJsZXNcLXN1c3RcZlA7CitcZkJkZWJpYW4vc3Vic3R2YXJzXGZQIGVzIGVsIHZhbG9yIHBvciBvbWlzafNuLiBQdWVkZSB1c2FyIGVzdGEgb3BjafNuIHZhcmlhcwordmVjZXMgcGFyYSBsZWVyIHZhcmlhYmxlcyBkZSBzdXN0aXR1Y2nzbiBkZSB2YXJpb3MgZmljaGVyb3MuCisuVFAgCitcZkJcLURcZlBcZkljYW1wb1xmUFxmQj1cZlBcZkl2YWxvclxmUAorU29icmVlc2NyaWJlIG8gYfFhZGUgdW4gY2FtcG8gZW4gZWwgZmljaGVybyBkZSBjb250cm9sIGRlIHNhbGlkYS4KKy5UUCAKK1xmQlwtVVxmUFxmSWNhbXBvXGZQCitFbGltaW5hIHVuIGNhbXBvIGRlbCBmaWNoZXJvIGRlIGNvbnRyb2wgZGUgc2FsaWRhLgorLlRQIAorXGZCXC1jXGZQXGZJZmljaGVyb1wtY29udHJvbFxmUAorRGVmaW5lIGVsIGZpY2hlcm8gZGUgY29udHJvbCBwcmluY2lwYWwgZGUgbGFzIGZ1ZW50ZXMgZGVsIHF1ZSBsZWVyIGxhCitpbmZvcm1hY2nzbi4gUG9yIG9taXNp824gZXMgXGZCZGViaWFuL2NvbnRyb2xcZlAuCisuVFAgCitcZkJcLWxcZlBcZklmaWNoZXJvXC1jYW1iaW9zXGZQCitEZWZpbmUgZWwgZmljaGVybyBkZSByZWdpc3RybyBkZSBjYW1iaW9zIGRlbCBxdWUgbGVlciBsYSBpbmZvcm1hY2nzbi4gUG9yCitvbWlzafNuIGVzIFxmQmRlYmlhbi9jaGFuZ2Vsb2dcZlAuCisuVFAgCitcZkJcLWZcZlBcZklmaWNoZXJvXC1saXN0YVwtZmljaGVyb3NcZlAKK0xlZSBvIGVzY3JpYmUgbGEgbGlzdGEgZGUgZmljaGVyb3MgYSBzdWJpciBkZXNkZSBlbCBmaWNoZXJvIGVzcGVjaWZpY2FkbywgZW4KK2x1Z2FyIGRlIHVzYXIgXGZCZGViaWFuL2ZpbGVzXGZQLgorLlRQIAorXGZCXC1GXGZQXGZJZm9ybWF0b1wtcmVnaXN0cm9cLWNhbWJpb3NcZlAKK0RlZmluZSBlbCBmb3JtYXRvIGRlbCByZWdpc3RybyBkZSBjYW1iaW9zLiBQb3Igb21pc2nzbiwgZWwgZm9ybWF0byBzZSBsZWUgZGUKK3VuYSBs7W5lYSBlc3BlY2lhbCBjZXJjYSBkZWwgZmluYWwgZGVsIHJlZ2lzdHJvIGRlIGNhbWJpb3MgbywgZW4gY2FzbyBkZQorZmFsbG8sIHVzYSBlbCBmb3JtYXRvIGVzdOFuZGFyIGRlYmlhbi4KKy5UUCAKK1xmQlwtcFxmUFxmSXBhcXVldGVcZlAKK0dlbmVyYSBpbmZvcm1hY2nzbiBwYXJhIGVsIHBhcXVldGUgYmluYXJpbyBcZklwYXF1ZXRlXGZQLiBQdWVkZSBvbWl0aXIgZXN0YQorb3BjafNuIHNpIGVsIGZpY2hlcm8gZGUgY29udHJvbCBkZSBsYXMgZnVlbnRlcyBsaXN0YSB1biBz82xvIHBhcXVldGUKK2JpbmFyaW87IGRlIG5vIHNlciBhc+0sIGVzIGVzZW5jaWFsIHNlbGVjY2lvbmFyIGVsIHBhcXVldGUgYmluYXJpbyBkZWwgY3VhbAorc2UgZGVzZWEgZ2VuZXJhciBsYSBpbmZvcm1hY2nzbi4KKy5UUCAKK1xmQlwtblxmUFxmSW5vbWJyZWZpY2hlcm9cZlAKK1N1cG9uZSBxdWUgZWwgbm9tYnJlIGRlIGZpY2hlcm8gZGVsIHBhcXVldGUgc2Vy4SBcZklub21icmVcLWZpY2hlcm9cZlAgZW4gdmV6CitkZWwgaGFiaXR1YWwsIKtwYXF1ZXRlX3ZlcnNp825fYXJxdWl0ZWN0dXJhLmRlYrsuCisuVFAgCitcZkJcLWlzXGZQLCBcZkJcLWlwXGZQLCBcZkJcLWlzcFxmUAorRXN0YXMgb3BjaW9uZXMgc2UgaWdub3JhbiBwb3IgY29tcGF0aWJpbGlkYWQgY29uIHZlcnNpb25lcyBhbnRlcmlvcmVzIGRlCitkcGtnXC1kZXYsIHBlcm8geWEgZXN04W4gb2Jzb2xldGFzLiBBbnRlcyBzZSB1c2FiYW4gcGFyYSBoYWNlciBxdWUKK2Rwa2dcLWdlbmNvbnRyb2wgaW5jbHV5ZXNlIGxvcyBjYW1wb3Mgq1NlY3Rpb267IHkgq1ByaW9yaXR5uyBlbiBlbCBmaWNoZXJvIGRlCitjb250cm9sLiBIb3kgZW4gZO1hIGVzIGVsIGNvbXBvcnRhbWllbnRvIHByZWRlZmluaWRvLiBTaSBkZXNlYSBlbAorY29tcG9ydGFtaWVudG8gYW50aWd1byBkZWJlcuEgdXNhciBsYSBvcGNp824gXGZCXC1VXGZQIHBhcmEgZWxpbWluYXIgbG9zIGNhbXBvcworZGVsIGZpY2hlcm8gZGUgY29udHJvbC4KKy5UUCAKK1xmQlwtUFxmUFxmSWRpcmVjdG9yaW9cLWNvbXBpbGFjafNuXC1wYXF1ZXRlXGZQCitEaWNlIGEgXGZCZHBrZ1wtc291cmNlXGZQIHF1ZSBlbCBwYXF1ZXRlIHNlIGVzdOEgY3JlYW5kbyBlbgorXGZJZGlyZWN0b3Jpb1wtY29tcGlsYWNp825cLXBhcXVldGVcZlAgZW4gdmV6IGRlIFxmQmRlYmlhbi90bXBcZlAuIFNlIHVzYSBwYXJhCitlbmNvbnRyYXIgZWwgdmFsb3IgcG9yIG9taXNp824gZGUgbGEgdmFyaWFibGUgZGUgc3VzdGl0dWNp824geSBjYW1wbyBkZWwKK2ZpY2hlcm8gZGUgY29udHJvbCBcZkJJbnN0YWxsZWRcLVNpemVcZlAsIFRhbWHxb1wtSW5zdGFsYWRvLCAodXNhbmRvIFxmQmR1XGZQKSwgeQorcGFyYSBlc3RhYmxlY2VyIGxhIHJ1dGEgcHJlZGVmaW5pZGEgZGVsIGZpY2hlcm8gZGUgc2FsaWRhLgorLlRQIAorXGZCXC1PXGZQCitNdWVzdHJhIGVsIGZpY2hlcm8gZGUgY29udHJvbCBwb3IgbGEgc2FsaWRhIGVzdOFuZGFyLCBlbiBsdWdhciBkZQorXGZCZGViaWFuL3RtcC9ERUJJQU4vY29udHJvbFxmUCAobworXGZJZGlyZWN0b3Jpb1wtY29tcGlsYWNp825cLXBhcXVldGVcZlBcZkIvREVCSUFOL2NvbnRyb2xcZlAgc2kgc2UgdXPzIGxhIG9wY2nzbgorXGZCXC1QXGZQKS4KKy5UUCAKK1xmQlwtaFxmUCwgXGZCXC1cLWhlbHBcZlAKK011ZXN0cmEgZWwgbW9kbyBkZSB1c28geSB0ZXJtaW5hLgorLlRQIAorXGZCXC1cLXZlcnNpb25cZlAKK011ZXN0cmEgbGEgdmVyc2nzbiB5IHRlcm1pbmEuCisuCisuU0ggRklDSEVST1MKKy5UUCAKK1xmQmRlYmlhbi9jb250cm9sXGZQCitFbCBmaWNoZXJvIGRlIGluZm9ybWFjafNuIGRlIGNvbnRyb2wgZGUgZnVlbnRlcyBwcmluY2lwYWwsIHF1ZSBkYQoraW5mb3JtYWNp824gaW5kZXBlbmRpZW50ZSBkZSBsYSB2ZXJzafNuIGFjZXJjYSBkZWwgcGFxdWV0ZSBmdWVudGUgeSBsb3MKK3BhcXVldGVzIGJpbmFyaW9zIHF1ZSBwdWVkZSBnZW5lcmFyLgorLlRQIAorXGZCZGViaWFuL2ZpbGVzXGZQCitMYSBsaXN0YSBkZSBmaWNoZXJvcyBnZW5lcmFkb3MgcXVlIGZvcm1hbiBwYXJ0ZSBkZSBsYSBzdWJpZGEgZW4KK3ByZXBhcmFjafNuLiBcZkJkcGtnXC1nZW5jb250cm9sXGZQIGHxYWRlIGxvcyBzdXB1ZXN0b3Mgbm9tYnJlcyBkZSBmaWNoZXJvIGRlCitwYXF1ZXRlcyBiaW5hcmlvcyBjdXlvcyBmaWNoZXJvcyBkZSBjb250cm9sIGdlbmVyYS4KKy4KKy5TSCBBVVRPUkVTCitDb3B5cmlnaHQgXChjbyAxOTk1XC0xOTk2IElhbiBKYWNrc29uCisuYnIKK0NvcHlyaWdodCBcKGNvIDIwMDAgV2ljaGVydCBBa2tlcm1hbgorLmJyCitDb3B5cmlnaHQgXChjbyAyMDA3XC0yMDA4IFJhcGhhXFs6ZV1sIEhlcnR6b2cKKy5zcAorRXN0byBlcyBzb2Z0d2FyZSBsaWJyZTsgdmVhIGxhIHZlcnNp824gMiBvIHBvc3RlcmlvciBkZSBsYSBMaWNlbmNpYSBQ+mJsaWNhCitHZW5lcmFsIEdOVSBwYXJhIGNvbmRpY2lvbmVzIGRlIGNvcGlhLiBOTyBoYXkgbmluZ3VuYSBnYXJhbnTtYS4KKy5TSCAiVFJBRFVDVE9SIgorUnVkeSBHb2RveSA8cnVkeUBrZXJuZWxcLXBhbmlrLm9yZz4sCitSdWLpbiBQb3JyYXMgPG5haG9vQGluaWNpYS5lcz4sCitCcnVubyBCYXJyZXJhIEMuIDxicnVuby5iYXJyZXJhQGlnbG9vLmNsPiwKK0NhcmxvcyBJenF1aWVyZG8gPGdoZWVzaEBlcnRpcy5uZXQ+LAorRXN0ZWJhbiBNYW5jaGFkbyB5CitOT0suCitEZWJpYW4gTDEwbiBTcGFuaXNoIDxkZWJpYW5cLWwxMG5cLXNwYW5pc2hAbGlzdHMuZGViaWFuLm9yZz4uCisuYnIKK1JldmlzaW9uZXMgcG9yIFNhbnRpYWdvIFZpbGEgPHNhbnZpbGFAdW5leC5lcz4sCitKYXZpZXIgRmVybuFuZGV6XC1TYW5ndWlubywgUnVi6W4gUG9ycmFzLAorTHVpcyBVcmliZSB5IE9tYXIgQ2FtcGFnbmUuCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9lcy9kcGtnLWdlbnN5bWJvbHMuMSBiL2Rwa2ctMS4xNi4xLjEvbWFuL2VzL2Rwa2ctZ2Vuc3ltYm9scy4xCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjUxYzU3YTkKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9lcy9kcGtnLWdlbnN5bWJvbHMuMQpAQCAtMCwwICsxLDUxNyBAQAorLlwiIEF1dGhvcjogUmFwaGHDq2wgSGVydHpvZworLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlwiCisuXCIgVGhpcyBmaWxlIHdhcyBnZW5lcmF0ZWQgd2l0aCBwbzRhLiBUcmFuc2xhdGUgdGhlIHNvdXJjZSBmaWxlLgorLlwiCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuVEggZHBrZ1wtZ2Vuc3ltYm9scyAxIDIwMTFcLTA4XC0xNCAiUHJveWVjdG8gRGViaWFuIiAiSGVycmFtaWVudGFzIGRlIGRwa2ciCisuU0ggTk9NQlJFCitkcGtnXC1nZW5zeW1ib2xzIFwtIEdlbmVyYWNp824gZGUgZmljaGVyb3Mgq3N5bWJvbHO7IChpbmZvcm1hY2nzbiBkZQorZGVwZW5kZW5jaWEgZGUgYmlibGlvdGVjYXMgY29tcGFydGlkYXMpCisuCisuU0ggU0lOT1BTSVMKK1xmQmRwa2dcLWdlbnN5bWJvbHNcZlAgW1xmSW9wdGlvblxmUC4uLl0KKy4KKy5TSCBERVNDUklQQ0nTTgorXGZCZHBrZ1wtZ2Vuc3ltYm9sc1xmUCBhbmFsaXphIHVuIOFyYm9sIHRlbXBvcmFsIGRlIGNvbnN0cnVjY2nzbiAoq2RlYmlhbi90bXC7Citwb3Igb21pc2nzbikgZW4gYnVzY2EgZGUgYmlibGlvdGVjYXMgcGFyYSBnZW5lcmFyIHVuIGZpY2hlcm8gXGZJc3ltYm9sc1xmUCBxdWUKK2xvcyBkZXNjcmliYS4gRXN0ZSBmaWNoZXJvLCBzaSBubyBlc3ThIHZhY+1vLCBzZSBpbnN0YWxhIGVuIGVsIHN1YmRpcmVjdG9yaW8KK6tERUJJQU67IGRlbCDhcmJvbCBkZSBjb25zdHJ1Y2Np824sIHBhcmEgZGVzcHXpcyBpbmNsdWlyIGVsIGNvbnRlbmlkbyBlbiBsYQoraW5mb3JtYWNp824gZGUgY29udHJvbCBkZWwgcGFxdWV0ZS4KKy5QCitBbCBnZW5lcmFyIGVzdG9zIGZpY2hlcm9zLCB1c2EgYWxndW5vcyBmaWNoZXJvcyCrc3ltYm9sc7sgY29tbyBlbnRyYWRhCitwcm9wb3JjaW9uYWRvcyBwb3IgZWwgZGVzYXJyb2xsYWRvci4gQnVzY2EgbG9zIHNpZ3VpZW50ZXMgZmljaGVyb3MsIHVzYW5kbworZWwgcHJpbWVybyBxdWUgZW5jdWVudHJhLgorLklQIFwoYnUgNAorZGViaWFuL1xmSXBhY2thZ2VcZlAuc3ltYm9scy5cZklhcmNoXGZQCisuSVAgXChidSA0CitkZWJpYW4vc3ltYm9scy5cZklhcmNoXGZQCisuSVAgXChidSA0CitkZWJpYW4vXGZJcGFja2FnZVxmUC5zeW1ib2xzCisuSVAgXChidSA0CitkZWJpYW4vc3ltYm9scworLlAKK0xhIG1ldGEgcHJpbmNpcGFsIGRlIGVzdG9zIGZpY2hlcm9zIGVzIHByb3BvcmNpb25hciBsYSB2ZXJzafNuIG3tbmltYQorYXNvY2lhZGEgYSBjYWRhIHPtbWJvbG8gcHJvcG9yY2lvbmFkbyBwb3IgbGFzIGJpYmxpb3RlY2FzLiBIYWJpdHVhbG1lbnRlLCBzZQorY29ycmVzcG9uZGUgY29uIGxhIHByaW1lcmEgdmVyc2nzbiBkZSBlc2UgcGFxdWV0ZSBxdWUgcHJvcG9yY2lvbmEgZWwKK3PtbWJvbG8sIHBlcm8gZWwgZGVzYXJyb2xsYWRvciBsbyBwdWVkZSBpbmNyZW1lbnRhciBtYW51YWxtZW50ZSBzaSBsYSBBQkkKK2RlbCBz7W1ib2xvIHNlIGV4dGllbmRlIHNpbiByb21wZXIgbGEgY29tcGF0aWJpbGlkYWQgY29uIHZlcnNpb25lcworYW50ZXJpb3Jlcy4gRXMgbGEgcmVzcG9uc2FiaWxpZGFkIGRlbCBkZXNhcnJvbGxhZG9yIHF1ZSBlc3RvcyBmaWNoZXJvcyBlc3TpbgorYWwgZO1hIHkgcXVlIHNlYW4gYXByb3BpYWRvcywgcGVybyBcZkJkcGtnXC1nZW5zeW1ib2xzXGZQIGxlIGFzaXN0ZSBlbiBlc3RhCit0YXJlYS4KKy5QCitDdWFuZG8gbG9zIGZpY2hlcm9zIKtzeW1ib2xzuyBnZW5lcmFkb3MgZGlmaWVyZW4gZGVsIHByb3BvcmNpb25hZG8gcG9yIGVsCitkZXNhcnJvbGxhZG9yLCBcZkJkcGtnXC1nZW5zeW1ib2xzXGZQIG1vc3RyYXLhIGxhcyBkaWZlcmVuY2lhcyBlbnRyZSBhbWJhcwordmVyc2lvbmVzLiBN4XMgYfpuLCBwdWVkZSBxdWUgZmFsbGUgc2kgbGEgZGlmZXJlbmNpYSBlcyBkZW1hc2lhZG8gZ3JhbmRlLAorKHB1ZWRlIGNvbmZpZ3VyYXIgY3VhbnRhIGRpZmVyZW5jaWEgdG9sZXJhciwgY29uc3VsdGUgbGEgb3BjafNuIFxmQlwtY1xmUCkuCisuU0ggIk1BTlRFTkVSIEZJQ0hFUk9TIKtTWU1CT0xTuyIKK0xvcyBmaWNoZXJvcyCrc3ltYm9sc7sgc29uIHJlYWxtZW50ZSD6dGlsZXMgc/NsbyBjdWFuZG8gcmVmbGVqYW4gbGEKK2V2b2x1Y2nzbiBkZWwgcGFxdWV0ZSBhIGxvIGxhcmdvIGRlIHZhcmlhcyBwdWJsaWNhY2lvbmVzLiBQb3IgZWxsbywgZWwKK2Rlc2Fycm9sbGFkb3IgdGllbmUgcXVlIGFjdHVhbGl6YXJsb3MgY2FkYSB2ZXogcXVlIHNlIGHxYWRhIHVuIHPtbWJvbG8KK251ZXZvLCBwYXJhIHF1ZSBhc+0gbGEgbe1uaW1hIHZlcnNp824gYXNvY2lhZGEgY29uY3VlcmRlIGNvbiBsYQorcmVhbGlkYWQuIFBhcmEgaGFjZXIgZXN0byBhcHJvcGlhZGFtZW50ZSBwdWVkZSB1c2FyIGxvcyCrZGlmZrsgY29udGVuaWRvcyBlbgorbG9zIHJlZ2lzdHJvcyBkZSBjb25zdHJ1Y2Np824uIEVuIGxhIG1heW9y7WEgZGUgbG9zIGNhc28sIGVsIKtkaWZmuyBzZQorYXBsaWNhIGRpcmVjdGFtZW50ZSBzb2JyZSBlbCBmaWNoZXJvIKtkZWJpYW4vXGZJcGFja2FnZVxmUC5zeW1ib2xzuy4gRGljaG8KK2VzdG8sIGVzIG5lY2VzYXJpbyBhZmluYXIgZXN0ZSBwcm9jZXNvOiBzZSByZWNvbWllbmRhLCBwb3IgZWplbXBsbywgZWxpbWluYXIKK2VsIG76bWVybyBkZSByZXZpc2nzbiBkZSBEZWJpYW4gZGUgbGEgdmVyc2nzbiBt7W5pbWEgcGFyYSBxdWUgYXPtIGFxdWVsbGFzCithZGFwdGFjaW9uZXMgaGFjaWEgYXRy4XMgKKtiYWNrcG9ydHO7KSBjb24gdW4gbvptZXJvIGRlIHZlcnNp824gbWVub3IsIHBlcm8KK2NvbiBsYSBtaXNtYSB2ZXJzafNuIHF1ZSBsYSBmdWVudGUgb3JpZ2luYWwsIHB1ZWRhbiBzYXRpc2ZhY2VyIGxhcworZGVwZW5kZW5jaWFzIGdlbmVyYWRhcy4gU2kgbm8gc2UgcHVlZGUgZWxpbWluYXIgbGEgcmV2aXNp824gZGUgRGViaWFuIHBvcnF1ZQorZWwgc+1tYm9sbyBzZSBh8WFkafMgZGViaWRvIGEgdW4gY2FtYmlvIGVzcGVj7WZpY28gZGUgRGViaWFuIHB1ZWRlIGFmaWphcgorq367IGEgbGEgdmVyc2nzbi4KKy5QCitBbnRlcyBkZSBhcGxpY2FyIHVuIHBhcmNoZSBhbCBmaWNoZXJvIKtzeW1ib2xzuyBlbCBkZXNhcnJvbGxhZG9yIGRlYmVy7WEKK3JldmlzYXIgbnVldmFtZW50ZSBxdWUgZXMgYWRlY3VhZG8uIFNlIGVzcGVyYSBxdWUgbG9zIHPtbWJvbG9zIHD6YmxpY29zIG5vCitkZXNhcGFyZXpjYW4gYXPtIHF1ZSwgaWRlYWxtZW50ZSwgZWwgcGFyY2hlIHPzbG8gZGViZXLtYSBh8WFkaXIgbO1uZWFzCitudWV2YXMuCisuUAorTm90ZSB0aGF0IHlvdSBjYW4gcHV0IGNvbW1lbnRzIGluIHN5bWJvbHMgZmlsZXM6IGFueSBsaW5lIHdpdGggJyMnIGFzIHRoZQorZmlyc3QgY2hhcmFjdGVyIGlzIGEgY29tbWVudCBleGNlcHQgaWYgaXQgc3RhcnRzIHdpdGggJyNpbmNsdWRlJyAoc2VlCitzZWN0aW9uIFxmQlVzaW5nIGluY2x1ZGVzXGZQKS4gTGluZXMgc3RhcnRpbmcgd2l0aCAnI01JU1NJTkc6JyBhcmUgc3BlY2lhbAorY29tbWVudHMgZG9jdW1lbnRpbmcgc3ltYm9scyB0aGF0IGhhdmUgZGlzYXBwZWFyZWQuCisuU1MgIlVzYXIgbGEgc3VzdGl0dWNp824gZGUgI1BBQ0tBR0UjIgorLlAKK0VuIGFsZ3Vub3MgY2Fzb3MgYWlzbGFkb3MgZWwgbm9tYnJlIGRlIGxhIGJpYmxpb3RlY2EgdmFy7WEgc2Vn+m4gbGEKK2FycXVpdGVjdHVyYS4gUHVlZGUgdXNhciBlbCBtYXJjYWRvciBcZkkjUEFDS0FHRSNcZlAgcGFyYSBldml0YXIgaW5jcnVzdGFyCisoq2hhcmRjb2RluykgZWwgbm9tYnJlIGRlbCBwYXF1ZXRlIGVuIGVsIGZpY2hlcm8gq3N5bWJvbHO7LiBTZSByZWVtcGxhemFy4QorcG9yIGVsIG5vbWJyZSByZWFsIGRlbCBwYXF1ZXRlIGR1cmFudGUgbGEgaW5zdGFsYWNp824gZGUgbG9zIGZpY2hlcm9zCiurc3ltYm9sc7suIEEgZGlmZXJlbmNpYSBkZWwgbWFyY2Fkb3IgXGZJI01JTlZFUiNcZlAsIFxmSSNQQUNLQUdFI1xmUCBudW5jYQorYXBhcmVjZXLhIGVuIHVuIGZpY2hlcm8gq3N5bWJvbHO7IGNvbnRlbmlkbyBlbiB1biBwYXF1ZXRlIGJpbmFyaW8uCisuU1MgIlVzYXIgZXRpcXVldGFzIGRlIHPtbWJvbG9zIgorLlAKK0VsIGV0aXF1ZXRhZG8gZGUgc+1tYm9sb3MgZXMg+nRpbCBwYXJhIG1hcmNhciBhcXVlbGxvcyBz7W1ib2xvcyBxdWUgc29uIGRlCithbGd1bmEgbWFuZXJhIGVzcGVjaWFsZXMuIENhZGEgc+1tYm9sbyBwdWVkZSB0ZW5lciB1biBu+m1lcm8gYXJiaXRyYXJpbyBkZQorZXRpcXVldGFzIGFzb2NpYWRhcyBhIOlzdGUuIEF1bnF1ZSBzZSBhbmFsaXphbiB5IGd1YXJkYW4gdG9kYXMgbGFzCitldGlxdWV0YXMsIFxmQmRwa2dcLWdlbnN5bWJvbHNcZlAgc/NsbyBlbnRpZW5kZSBhbGd1bmFzIGRlIGVsbGFzLCBlIGluaWNpYXLhIHVuCit0cmF0YW1pZW50byBlc3BlY2lhbCBkZSBsb3Mgc+1tYm9sb3MuIENvbnN1bHRlIGxhIHN1Ylwtc2VjY2nzbiBcZkJFdGlxdWV0YXMKK2VzdOFuZGFyIGRlIHPtbWJvbG9zXGZQIHBhcmEgdW5hIHJlZmVyZW5jaWEgZGUgZXN0YXMgZXRpcXVldGFzLgorLlAKK0xhIGVzcGVjaWZpY2FjafNuIGRlIGxhIGV0aXF1ZXRhIGFwYXJlY2UgYSBjb250aW51YWNp824gZGVsIG5vbWJyZSBkZWwKK3PtbWJvbG8gKG5vIHNlIHBlcm1pdGUgdW4gZXNwYWNpbyB2YWPtbyBlbnRyZSBlc3RvcykuIFNpZW1wcmUgY29taWVuemEgY29uCit1biBwYXLpbnRlc2lzIGRlIGFwZXJ0dXJhIFxmQihcZlAsIGZpbmFsaXphIGNvbiB1biBwYXLpbnRlc2lzIGRlIGNpZXJyZSBcZkIpXGZQLCB5CitkZWJlIGNvbnRlbmVyIGFsIG1lbm9zIHVuYSBldGlxdWV0YS4gVmFyaWFzIGV0aXF1ZXRhcyBzZSBzZXBhcmFuIGNvbiB1bgorY2Fy4WN0ZXIgXGZCfFxmUC4gT3BjaW9uYWxtZW50ZSwgY2FkYSBldGlxdWV0YSBwdWVkZSB0ZW5lciB1biB2YWxvciBzZXBhcmFkbworZGVsIG5vbWJyZSBkZSBsYSBldGlxdWV0YSBtZWRpYW50ZSBlbCBjYXLhY3RlciBcZkI9XGZQLiBMb3Mgbm9tYnJlcyBkZSBldGlxdWV0YQoreSB2YWxvcmVzIHB1ZWRlbiBzZXIgY2FkZW5hcyBhcmJpdHJhcmlhcywgYSBleGNlcGNp824gZGUgcXVlIG5vIHB1ZWRlbgorY29udGVuZXIgbmluZ/puIGNhcuFjdGVyIGVzcGVjaWFsOiBcZkIpXGZQLCBcZkJ8XGZQIHkgXGZCPVxmUC4gTG9zIG5vbWJyZXMgZGUgc+1tYm9sbworYSBjb250aW51YWNp824gZGUgdW5hIGVzcGVjaWZpY2FjafNuIGRlIGV0aXF1ZXRhIHNlIHB1ZWRlbiBlbnRyZWNvbWlsbGFyIGNvbgorY2FyYWN0ZXJlcyBcZkInXGZQIG8gXGZCIlxmUCwgcGVybWl0aWVuZG8gYXPtIGVzcGFjaW9zIHZhY+1vcy4gUG9yIG90cmEgcGFydGUsIGRlCitubyBleGlzdGlyIG5pbmd1bmEgZXRpcXVldGEgZGVmaW5pZGEgcGFyYSBlbCBz7W1ib2xvLCBsYXMgY29taWxsYXMgc2UKK3RyYXRhcuFuIGNvbW8gcGFydGUgZGVsIG5vbWJyZSBkZWwgc+1tYm9sbywgY29udGludWFuZG8gaGFzdGEgZWwgcHJpbWVyCitlc3BhY2lvLgorLlAKKyAodGFnMT10ZW5nbyB1bmEgbWFyY2F8bm9tYnJlIGRlIGV0aXF1ZXRhIGNvbiBlc3BhY2lvKSJz7W1ib2xvCisgZW50cmVjb21pbGxhZG8geSBldGlxdWV0YWRvIkBCYXNlIDEuMAorIChvcHRpb25hbClz7W1ib2xvX3Npbl9jb21pbGxhc195X2V0aXF1ZXRhZG9AQmFzZSAxLjAgMQorIHPtbWJvbG9fc2luX2V0aXF1ZXRhckBCYXNlIDEuMAorLlAKK0VsIHByaW1lciBz7W1ib2xvIGRlbCBlamVtcGxvIHNlIGxsYW1hIFxmSXPtbWJvbG8gZW50cmVjb21pbGxhZG8geQorZXRpcXVldGFkb1xmUCwgeSB0aWVuZSBkb3MgZXRpcXVldGFzOiBcZkl0YWcxXGZQLCBjb24gZWwgdmFsb3IgXGZJdGVuZ28gdW5hIG1hcmNhXGZQCit5IFxmSW5vbWJyZSBkZSBldGlxdWV0YSBjb24gZXNwYWNpb1xmUCwgcXVlIG5vIHRpZW5lIHZhbG9yLiBFbCBzZWd1bmRvIHPtbWJvbG8KK3NlIGxsYW1hIFxmSXPtbWJvbG9fc2luX2NvbWlsbGFzX3lfZXRpcXVldGFkb1xmUCwgeSBz82xvIHRpZW5lIHVuYSBldGlxdWV0YQorbGxhbWFkYSBcZklvcHRpb25hbFxmUC4gRWwg+mx0aW1vIHPtbWJvbG8gZXMgdW4gZWplbXBsbyBkZSB1biBz7W1ib2xvIG5vcm1hbAorc2luIGV0aXF1ZXRhci4KKy5QCitEZWJpZG8gYSBxdWUgbGFzIGV0aXF1ZXRhcyBkZSBz7W1ib2xvcyBzb24gdW5hIGV4dGVuc2nzbiBkZWwgZm9ybWF0bworXGZJZGViXC1zeW1ib2xzKDUpXGZQIHPzbG8gcHVlZGVuIGZvcm1hciBwYXJ0ZSBkZSBsb3MgZmljaGVyb3Mgq3N5bWJvbHO7IGRlCitwYXF1ZXRlcyBmdWVudGUgKGVzdG9zIGZpY2hlcm9zIGRlYmVy7WFuIGFwYXJlY2VyIGNvbW8gcGxhbnRpbGxhcyB1c2FkYXMKK3BhcmEgZ2VuZXJhciBsb3MgZmljaGVyb3Mgq3N5bWJvbHO7IGludGVncmFkb3MgZW4gcGFxdWV0ZXMgYmluYXJpb3MpLiBDdWFuZG8KK2ludm9jYSBcZkJkcGtnXC1nZW5zeW1ib2xzXGZQIGNvbiBsYSBvcGNp824gXGZJXC10XGZQLCBlbnZpYXLhIHBvciBsYSBzYWxpZGEKK2ZpY2hlcm9zIKtzeW1ib2xzuyBjb21wYXRpYmxlcyBjb24gZWwgZm9ybWF0byBcZklkZWJcLXN5bWJvbHMoNSlcZlA6IHByb2Nlc2EKK2NvbXBsZXRhbWVudGUgbG9zIHPtbWJvbG9zIGRlIGFjdWVyZG8gYSBsb3MgcmVxdWVyaW1pZW50b3MgZGUgc3VzIGV0aXF1ZXRhcworZXN04W5kYXIsIHkgZWxpbWluYSB0b2RhcyBsYXMgZXRpcXVldGFzIGRlIGxhIHNhbGlkYS4gUG9yIG90cmEgcGFydGUsIGVuIGVsCittb2RvIHBsYW50aWxsYSAoXGZJXC10XGZQKSwgdG9kb3MgbG9zIHPtbWJvbG9zIHkgZXRpcXVldGFzIChlc3ThbmRhciB5CitkZXNjb25vY2lkb3MpIHNlIG11ZXN0cmFuIHBvciBsYSBzYWxpZGEsIHkgc2UgZXNjcmliZW4gZW4gc3UgZm9ybWEgb3JpZ2luYWwKK2EgbWVkaWRhIHF1ZSBzZSBjYXJnYW4uCisuU1MgIkV0aXF1ZXRhcyBkZSBz7W1ib2xvIGVzdOFuZGFyIgorLlRQIAorXGZCb3B0aW9uYWxcZlAKK1VuIHPtbWJvbG8gbWFyY2FkbyBjb21vIG9wY2lvbmFsIHB1ZWRlIGRlc2FwYXJlY2VyIGRlIGxhIGJpYmxpb3RlY2EgZW4KK2N1YWxxdWllciBtb21lbnRvIHNpbiBjYXVzYXIgdW4gZmFsbG8gZGUgXGZCZHBrZ1wtZ2Vuc3ltYm9sc1xmUC4gUG9yIG90cmEgcGFydGUsCitsb3Mgc+1tYm9sb3Mgb3BjaW9uYWxlcyBkZXNhcGFyZWNpZG9zIGFwYXJlY2Vy4W4gY29udGludWFtZW50ZSBjb21vCiurTUlTU0lOR7sgKGF1c2VudGUpIGVuIGVsIKtkaWZmuyBkZSBjYWRhIG51ZXZhIHJldmlzafNuIGRlbCBwYXF1ZXRlLiBFc3RlCitjb21wb3J0YW1pZW50byBzaXJ2ZSBjb21vIHVuIHJlY29yZGF0b3JpbyBwYXJhIGVsIGRlc2Fycm9sbGFkb3IgcGFyYQoraW5mb3JtYXIgZGUgbGEgbmVjZXNpZGFkIGRlIGVsaW1pbmFyIHRhbCBz7W1ib2xvIGRlbCBmaWNoZXJvIKtzeW1ib2xzuywgbyBkZQorYfFhZGlyIOlzdGUgbnVldmFtZW50ZSBhIGxhIGJpYmxpb3RlY2EuIEN1YW5kbyBlbCBz7W1ib2xvIG9wY2lvbmFsIGRlY2xhcmFkbworcHJldmlhbWVudGUgY29tbyCrTUlTU0lOR7sgcmVhcGFyZWNlIGRlIHP6Yml0byBlbiBsYSBzaWd1aWVudGUgcmV2aXNp824sIHNlCithY3R1YWxpemFyYSBhIHVuIGVzdGFkbyCrZXhpc3RlbnRluyBzaW4gbW9kaWZpY2FyIGxhIHZlcnNp824gbe1uaW1hLgorCitFc3RhIGV0aXF1ZXRhIGVzIPp0aWwgcGFyYSBhcXVlbGxvcyBz7W1ib2xvcyBwcml2YWRvcyBjdXlhIGRlc2FwYXJpY2nzbiBubworcm9tcGUgbGEgQUJJLiBQb3IgZWplbXBsbywgbGEgbWF5b3LtYSBkZSBwbGFudGlsbGFzIGRlIHByb2R1Y2Np824gZGUgdW4KK29iamV0byBkZWZpbmlkbyBt4XMgZXNwZWPtZmljYW1lbnRlIHBvciBtZWRpbyBkZWwgcmVlbXBsYXpvIGRlIGNpZXJ0YXMKK3ZhcmlhYmxlcyBwb3IgdmFsb3JlcyAoq2luc3RhbnRpYXRpb267KSBkZSBDKysgc2UgZW5jdWVudHJhbiBkZW50cm8gZGUgZXN0YQorY2F0ZWdvcu1hLiBBbCBpZ3VhbCBxdWUgY29uIGN1YWxxdWllciBvdHJhIGV0aXF1ZXRhLCDpc3RlIHB1ZWRlIHRlbmVyIHVuCit2YWxvciBhcmJpdHJhcmlvOiBzZSBwdWVkZSB1c2FyIHBhcmEgaW5kaWNhciBwb3JxdekgZWwgc+1tYm9sbyBzZSBjb25zaWRlcmEKK29wY2lvbmFsLgorLlRQIAorXGZCYXJjaD1cZlBcZklsaXN0YVwtZGVcLWFycXVpdGVjdHVyYXNcZlAKK0VzdGEgZXRpcXVldGEgcGVybWl0ZSBsaW1pdGFyIGVsIGNvbmp1bnRvIGRlIGFycXVpdGVjdHVyYXMgZPNuZGUgc2Ugc3Vwb25lCitxdWUgZWwgc+1tYm9sbyBleGlzdGUuIEN1YW5kbyBsYSBsaXN0YSBkZSBz7W1ib2xvcyBzZSBhY3R1YWxpemEgY29uIGxvcworc+1tYm9sb3MgZGVzY3ViaWVydG9zIGVuIGxhIGJpYmxpb3RlY2EsIHRvZG9zIGxvcyBz7W1ib2xvcyBlc3BlY+1maWNvcyBkZSBsYQorYXJxdWl0ZWN0dXJhIHF1ZSBubyBzb24gcmVsZXZhbnRlcyBwYXJhIGxhIGFycXVpdGVjdHVyYSBhbmZpdHJp824gc2UgdG9tYW4KK2NvbW8gbm8gZXhpc3RlbnRlcy4gU2kgdW4gc+1tYm9sbyBlc3BlY+1maWNvIGEgbGEgYXJxdWl0ZWN0dXJhIHF1ZSBjb25jdWVyZGEKK2NvbiBsYSBhcnF1aXRlY3R1cmEgYW5maXRyafNuIHByZXNlbnRlIG5vIGV4aXN0ZSBlbiBsYSBiaWJsaW90ZWNhLCBzZQorYXBsaWNhcuFuIGxvcyBwcm9jZWRpbWllbnRvcyBub3JtYWxlcyBwYXJhIHPtbWJvbG9zIGRlc2FwYXJlY2lkb3MsIGxsZXZhbmRvCithIHF1ZSBcZkJkcGtnXC1nZW5zeW1ib2xzXGZQIGZhbGxlLiBQb3Igb3RyYSBwYXJ0ZSwgc2kgZWwgc+1tYm9sbyBlc3BlY+1maWNvIGEKK2xhIGFycXVpdGVjdHVyYSBzZSBlbmN1ZW50cmEgY3VhbmRvIHNlIHN1cG9u7WEgcXVlIG5vIGV4aXN0ZSAocG9ycXVlIGxhCithcnF1aXRlY3R1cmEgYW5maXRyafNuIHByZXNlbnRlIG5vIGVzdOEgbGlzdGFkYSBlbiBsYSBldGlxdWV0YSksIHBhc2EgYSBzZXIKK25ldXRyYWwgYSBsYSBhcnF1aXRlY3R1cmEgKHBvciBlamVtcGxvLCBzZSBlbGltaW5hIGxhIGV0aXF1ZXRhIGRlCithcnF1aXRlY3R1cmEsIGFwYXJlY2llbmRvIGVsIHPtbWJvbG8gZW4gZWwgq2RpZma7IGRlYmlkbyBhIGxhIG1vZGlmaWNhY2nzbiksCitwZXJvIG5vIHNlIHRvbWEgY29tbyB1biBudWV2byBz7W1ib2xvLgorCitBbCBvcGVyYXIgZW4gZWwgbW9kbyBwb3Igb21pc2nzbiAoc2luIHBsYW50aWxsYSkgc/NsbyBzZSBlc2NyaWJpcuFuIGFsCitmaWNoZXJvIKtzeW1ib2xzuyBhcXVlbGxvcyBz7W1ib2xvcyBlc3BlY+1maWNvcyBhIGxhIGFycXVpdGVjdHVyYSBxdWUKK2NvaW5jaWRlbiBjb24gbGEgYXJxdWl0ZWN0dXJhIGFuZml0cmnzbi4gUG9yIG90cmEgcGFydGUsIGVuIGVsIG1vZG8KK3BsYW50aWxsYSB0b2RvcyBsb3Mgc+1tYm9sb3MgZXNwZWPtZmljb3MgYSBsYSBhcnF1aXRlY3R1cmEgKGluY2x1eWVuZG8KK2FycXVpdGVjdHVyYXMgYWx0ZXJuYXRpdmFzKSBzaWVtcHJlIHNlIGVzY3JpYmly4W4gYWwgZmljaGVybyCrc3ltYm9sc7suCisKK0VsIGZvcm1hdG8gZGUgXGZJbGlzdGFcLWRlXC1hcnF1aXRlY3R1cmFzXGZQIGVzIGVsIG1pc21vIHF1ZSBlbCB1c2FkbyBlbiBlbCBjYW1wbworXGZJQnVpbGRcLURlcGVuZHNcZlAgZGUgXGZJZGViaWFuL2NvbnRyb2xcZlAgKGEgZXhjZXBjafNuIGRlIGxvcyBwYXLpbnRlc2lzCitjdWFkcmFkb3MgZGUgY2llcnJlIKtbXbspLiBQb3IgZWplbXBsbywgZWwgcHJpbWVyIHPtbWJvbG8gZGUgbGEgbGlzdGEgYQorY29udGludWFjafNuIHNlIGNvbnNpZGVyYXLhIHPzbG8gZW4gbGFzIGFycXVpdGVjdHVyYXMgYWxwaGEsIGFtZDY0LAora2ZyZWVic2RcLWFtZDY0IHkgaWE2NCwgbWllbnRyYXMgcXVlIGVsIHNlZ3VuZG8gZW4gdG9kb3MgbWVub3MgYXJtZWwuCisKKyAoYXJjaD1hbHBoYSBhbWQ2NCBrZnJlZWJzZFwtYW1kNjQgaWE2NCl1bl9z7W1ib2xvIF9lc3BlY+1maWNvXzY0Yml0QEJhc2UgMS4wCisgKGFyY2g9IWFybWVsKXPtbWJvbG9fcXVlX2FybWVsX25vX3RpZW5lQEJhc2UgMS4wCisuVFAgCitcZkJpZ25vcmVcLWJsYWNrbGlzdFxmUAorZHBrZ1wtZ2Vuc3ltYm9scyB0aWVuZSB1bmEgbGlzdGEgbmVncmEgaW50ZXJuYSBkZSBz7W1ib2xvcyBxdWUgbm8gZGViZXLtYW4KK2FwYXJlY2VyIGVuIGxvcyBmaWNoZXJvcyCrc3ltYm9sc7ssIHlhIHF1ZSBoYWJpdHVhbG1lbnRlIHNvbiBz82xvIGVmZWN0b3MKK3NlY3VuZGFyaW9zIGRlIGxvcyBkZXRhbGxhcyBkZSBpbXBsZW1lbnRhY2nzbiBkZSBsYSBjYWRlbmEgZGUKK2hlcnJhbWllbnRhcy4gU2kgcG9yIGFsZ3VuYSByYXrzbiBkZXNlYSBpbmNsdWlyIHVubyBkZSBlc29zIHPtbWJvbG9zIGVuIGVsCitmaWNoZXJvIKtzeW1ib2xzuyBkZWJlcu1hIGV0aXF1ZXRhciBlbCBz7W1ib2xvIGNvbgorXGZCaWdub3JlXC1ibGFja2xpc3RcZlAuIFB1ZWRlIHNlciBuZWNlc2FyaW8gY29uIGFsZ3VuYSBjYWRlbmEgZGUgaGVycmFtaWVudGFzCitkZSBiYWpvIG5pdmVsIGNvbW8gbGliZ2NjLgorLlRQIAorXGZCYysrXGZQCitEZW5vdGEgZWwgcGF0cvNuIFxmSWMrK1xmUFwtIENvbnN1bHRlIGxhIHN1YnNlY2Np824gYSBjb250aW51YWNp824gXGZCVXNhcgorcGF0cm9uZXMgZGUgc+1tYm9sb3NcZlAuCisuVFAgCitcZkJzeW12ZXJcZlAKK0Rlbm90YSBlbCBwYXRy824gZGUgc+1tYm9sb3MgXGZJc3ltdmVyXGZQICh2ZXJzafNuIGRlbCBz7W1ib2xvKS4gQ29uc3VsdGUgbGEKK3N1Ylwtc2VjY2nzbiBhIGNvbnRpbnVhY2nzbiBcZkJVc2FyIHBhdHJvbmVzIGRlIHPtbWJvbG9zXGZQLgorLlRQIAorXGZCcmVnZXhcZlAKK0Rlbm90YSBlbCBwYXRy824gZGUgc+1tYm9sb3MgXGZJcmVnZXhcZlAgKGV4cHJlc2nzbiByZWd1bGFyKS4gQ29uc3VsdGUgbGEKK3N1Ylwtc2VjY2nzbiBhIGNvbnRpbnVhY2nzbiBcZkJVc2FyIHBhdHJvbmVzIGRlIHPtbWJvbG9zXGZQLgorLlNTICJVc2FyIHBhdHJvbmVzIGRlIHPtbWJvbG9zLiIKKy5QCitBIGRpZmVyZW5jaWEgZGUgY3VhbHF1aWVyIGRlZmluaWNp824gZGUgc+1tYm9sbyBlc3ThbmRhciB1biBwYXRy824gcHVlZGUKK2N1YnJpciB2YXJpb3Mgc+1tYm9sb3MgcmVhbGVzIGRlIGxhIGJpYmxpb3RlY2EuIFxmQmRwa2dcLWdlbnN5bWJvbHNcZlAgaW50ZW50YXLhCitlbXBhcmVqYXIgY2FkYSBwYXRy824gY29uIGNhZGEgc+1tYm9sbyByZWFsIHF1ZSBcZklub1xmUCB0aWVuZSB1biBz7W1ib2xvCitlc3BlY+1maWNvIGRlIGNvbnRyYXBhcnRpZGEgZGVmaW5pZG8gZW4gZWwgZmljaGVybyBkZSBz7W1ib2xvcy4gRW4gZWwKK21vbWVudG8gcXVlIHNlIGVuY3VlbnRyZSBlbCBwcmltZXIgcGF0cvNuIHF1ZSBjb2luY2lkYSBzZSB1c2Fy4W4gdG9kYXMgc3VzCitldGlxdWV0YXMgeSBwcm9waWVkYWRlcyBjb21vIHVuIGRlZmluaWNp824gYuFzaWNhIGRlbCBz7W1ib2xvLiBTaSBuaW5ndW5vIGRlCitsb3MgcGF0cm9uZXMgZW5jYWphLCBlbCBz7W1ib2xvIHNlIGNvbnNpZGVyYXLhIG51ZXZvLgorCitVbiBwYXRy824gc2UgY29uc2lkZXJhIHBlcmRpZG8gc2kgbm8gZW5jYWphIGNvbiBuaW5n+m4gc+1tYm9sbyBlbiBsYQorYmlibGlvdGVjYS4gUG9yIG9taXNp824sIGVzdG8gYWNjaW9uYXLhIHVuIGZhbGxvIGRlIFxmQmRwa2dcLWdlbnN5bWJvbHNcZlAgYmFqbworXGZJXC1jMVxmUCBvIHVuIG5pdmVsIHN1cGVyaW9yLiBBdW4gYXPtLCBzaSBubyBkZXNlYSBsYSBhcGFyaWNp824gZGVsIGZhbGxvLAorcHVlZGUgbWFyY2FyIGVsIHBhdHLzbiBjb24gbGEgZXRpcXVldGEgXGZJb3B0aW9uYWxcZlAuIEVudG9uY2VzLCBzaSBlbCBwYXRy824KK25vIGVuY2FqYSBjb24gbmFkYSBzaW1wbGVtZW50ZSBhcGFyZWNlcuEgZW4gZWwgq2RpZma7IGNvbW8gq01JU1NJTke7LiBB+m4KK23hcywgYWwgaWd1YWwgcXVlIGNvbiBjdWFscXVpZXIgc+1tYm9sbywgcHVlZGUgbGltaXRhciBlbCBwYXRy824gYSB1bmFzCithcnF1aXRlY3R1cmFzIGRlZmluaWRhcyBjb24gbGEgZXRpcXVldGEgXGZJYXJjaFxmUC4gQ29uc3VsdGUgbGEgc2VjY2nzbgorYW50ZXJpb3IgXGZCRXRpcXVldGFzIGRlIHPtbWJvbG8gZXN04W5kYXJcZlAuCisKK0xvcyBwYXRyb25lcyBzb24gdW5hIGV4dGVuc2nzbiBkZWwgZm9ybWF0byBcZklkZWJcLXN5bWJvbHMoNSlcZlAsIHkgcG9yIGVsbG8KK3PzbG8gc29uIHbhbGlkb3MgZW4gcGxhbnRpbGxhcyBkZSBmaWNoZXJvIGRlIHPtbWJvbG9zLiBQb3Igb3RyYSBwYXJ0ZSwgbGEKK3BhcnRlIGRlbCBub21icmUgZGVsIHPtbWJvbG8gZGVmaW5pZG8gc2lydmUgY29tbyB1bmEgZXhwcmVzafNuIHF1ZSBzZQorY29tcGFyYXLhIGNvbiBlbCBcZklub21icmVAdmVyc2nzblxmUCBkZWwgc+1tYm9sbyByZWFsLiBQYXJhIHBvZGVyIGRpc3Rpbmd1aXIKK2VudHJlIGxvcyBkaWZlcmVudGVzIHRpcG9zIGRlIHBhdHLzbiwg6XN0ZSBzZSBldGlxdWV0YXLhIGhhYml0dWFsbWVudGUgY29uCit1bmEgZXRpcXVldGEgZXNwZWNpYWwuCisKK0EgZO1hIGRlIGhveSwgXGZCZHBrZ1wtZ2Vuc3ltYm9sc1xmUCBlcyBjb21wYXRpYmxlIGNvbiB0cmVzIHRpcG9zIGRlIHBhdHJvbmVzCiti4XNpY29zOgorLlRQICAzCitcZkJjKytcZlAKK0VzdGUgcGF0cvNuIHNlIGluZGljYSBjb24gbGEgZXRpcXVldGEgXGZJYysrXGZQLiBT82xvIGVuY2FqYSBjb24gZWwgbm9tYnJlCiurZGVtYW5nbGVkuyBkZSBz7W1ib2xvcyBDKysgKHRhbCB5IGNvbW8gbXVlc3RyYSBsYSBoZXJyYW1pZW50YQorXGZCYysrZmlsdFxmUCgxKSkuIEVzdGUgcGF0cvNuIGVzIGRlIHV0aWxpZGFkIHBhcmEgZW1wYXJlamFyIHPtbWJvbG9zIGNvbgorbm9tYnJlcyCrbWFuZ2xlZLsgcXVlIHB1ZWRlbiB2YXJpYXIgc2Vn+m4gbGEgYXJxdWl0ZWN0dXJhLCBtaWVudHJhcyBxdWUgc3VzCitub21icmVzIKtkZW1hbmdsZWS7IHBlcm1hbmVjZW4gc2luIGNhbWJpb3MuIFVuIGdydXBvIGRlIGVzdG9zIHPtbWJvbG9zIHNvbgorbG9zIFxmSXRodW5rIG5vIHZpcnR1YWxlc1xmUCwgcXVlIHRpZW5lbiBkaXJlY2Npb25lcyByZWxhdGl2YXMgKKtvZmZzZXRzuykKK2VzcGVj7WZpY2FzIGEgbGEgYXJxdWl0ZWN0dXJhIGludGVncmFkYXMgZW4gc3VzIG5vbWJyZXMgq21hbmdsZWS7LiBVbgorZWplbXBsbyBjb236biBkZSBlc3RlIGNhc28gZXMgdW4gZGVzdHJ1Y3RvciB2aXJ0dWFsLCBxdWUgYmFqbyB1bmEgaGVyZW5jaWEKK2RlIGRpYW1hbnRlIG5lY2VzaXRhIHVuIHPtbWJvbG8gdGh1bmsgbm8gdmlydHVhbC4gUG9yIGVqZW1wbG8sIGluY2x1c28gc2kKK6tfWlRobjhfTjNOU0I2Q2xhc3NERDFFdkBCYXNluyBlbiBhcnF1aXRlY3R1cmFzIGRlIDMyYml0IGVzCiurX1pUaG4xNl9OM05TQjZDbGFzc0REMUV2QEJhc2W7IGVuIGFycXVpdGVjdHVyYXMgZGUgNjRiaXQsIHB1ZWRlIGVtcGFyZWphcmxvCitjb24gdW4g+m5pY28gcGF0cvNuIFxmSWMrK1xmUDoKKy5SUworLlBQCitsaWJkdW1teS5zby4xIGxpYmR1bW15MSAjTUlOVkVSIworIFsuLi5dCisgKGMrKykibm9uXC12aXJ0dWFsIHRodW5rIHRvIE5TQjo6Q2xhc3NEOjp+Q2xhc3NEKClAQmFzZSIgMS4wCisgWy4uLl0KKy5QCitQdWVkZSBvYnRlbmVyIGVsIG5vbWJyZSCrZGVtYW5nbGVkuyBkZWwgZWplbXBsbyBhbnRlcmlvciBlamVjdXRhbmRvIGxhCitzaWd1aWVudGUgb3JkZW46CisuUFAKKyAkIGVjaG8gJ19aVGhuOF9OM05TQjZDbGFzc0REMUV2QEJhc2UnIHwgYysrZmlsdAorLlAKK09ic2VydmUgcXVlIGF1bnF1ZSBlbCBub21icmUgq21hbmdsZWS7IHNlYSBwb3IgZGVmaW5pY2nzbiD6bmljbyBlbiBsYQorYmlibGlvdGVjYSwgbm8gZXMgbmVjZXNhcmlhbWVudGUgY2llcnRvIHBhcmEgbm9tYnJlcyCrZGVtYW5nbGVkuy4gUHVlZGUgcXVlCitkb3Mgc+1tYm9sb3MgcmVhbGVzIHkgZGlzdGludG9zIHRlbmdhbiBlbCBtaXNtbyBub21icmUgq2RlbWFuZ2xlZLsuIFBvcgorZWplbXBsbywgZW4gY2FzbyBkZSBleGlzdGlyIHPtbWJvbG9zIHRodW5rIG5vIHZpcnR1YWxlcyBlbiBjb21wbGVqYXMKK2NvbmZpZ3VyYWNpb25lcyBkZSBoZXJlbmNpYSwgbyBjb24gbGEgbWF5b3LtYSBkZSBjb25zdHJ1Y3RvcmVzIHkKK2Rlc3RydWN0b3JlcyAoeWEgcXVlIGhhYml0dWFsbWVudGUgZysrIGdlbmVyYSBkb3Mgc+1tYm9sb3MgcGFyYSBlbGxvcykuIFBvcgorb3RyYSBwYXJ0ZSwgZXN0YXMgY29saXNpb25lcyBhcGFyZWNlbiBhbCBuaXZlbCBkZSBsYSBBQkksIHkgcG9yIGVsbG8gbm8KK2RlYmVy7WFuIGRlZ3JhZGFyIGxhIGNhbGlkYWQgZGVsIGZpY2hlcm8gZGUgc+1tYm9sb3MuCisuUkUKKy5UUCAKK1xmQnN5bXZlclxmUAorTGEgZXRpcXVldGEgXGZJc3ltdmVyXGZQIGluZGljYSBlc3RlIHBhdHLzbi4gTGFzIGJpYmxpb3RlY2FzIGJpZW4gbWFudGVuaWRhcwordGllbmVuIHPtbWJvbG9zIGNvbiB2ZXJzafNuLCBkb25kZSBjYWRhIHZlcnNp824gY29ycmVzcG9uZGUgY29uIGxhIHZlcnNp824KK2RlbCBhdXRvciBvcmlnaW5hbCBlbiBsYSBxdWUgc2UgYfFhZGnzIGVsIHPtbWJvbG8uIERlIHNlciBhc+0sIHB1ZWRlIHVzYXIgdW4KK3BhdHLzbiBcZklzeW12ZXJcZlAgcGFyYSBlbXBhcmVqYXIgZWwgc+1tYm9sbyBhc29jaWFkbyBjb24gdW5hIHZlcnNp824gZW4KK3BhcnRpY3VsYXIuIFBvciBlamVtcGxvOgorLlJTCisuUFAKK2xpYmMuc28uNiBsaWJjNiAjTUlOVkVSIworIChzeW12ZXIpR0xJQkNfMi4wIDIuMAorIFsuLi5dCisgKHN5bXZlcilHTElCQ18yLjcgMi43CisgYWNjZXNzQEdMSUJDXzIuMCAyLjIKKy5QUAorVG9kb3MgbG9zIHPtbWJvbG9zIGFzb2NpYWRvcyBjb24gbGFzIHZlcnNpb25lcyCrR0xJQkNfMi4wuyB5IKtHTElCQ18yLje7CitsbGV2YW4gYSB1bmEgdmVyc2nzbiBt7W5pbWEgZGUgMi4wIHkgMi43IHJlc3BlY3RpdmFtZW50ZSwgY29uIGxhIGV4Y2VwY2nzbgorZGVsIHPtbWJvbG8gq2FjY2Vzc0BHTElCQ18yLjC7LiBFbCBzZWd1bmRvIGxsZXZhIGEgdW5hIGRlcGVuZGVuY2lhIG3tbmltYQorc29icmUgbGEgdmVyc2nzbiAyLjIgZGUgbGliYzYsIGEgcGVzYXIgZGUgZXN0YXIgZW4gZWwgcmFuZ28gZGVsIHBhdHLzbgorqyhzeW12ZXIpR0xJQkNfMi4wuywgZGViaWRvIGEgcXVlIGxvcyBz7W1ib2xvcyBlc3BlY+1maWNvcyB0aWVuZSBwcmVjZWRlbmNpYQorc29icmUgbG9zIHBhdHJvbmVzLgorLlAKK1RlbmdhIGVuIGN1YW50YSBxdWUgbG9zIHBhdHJvbmVzIGRlIGNvbW9k7W4gYW50aWd1b3MgKGluZGljYWRvcyBwb3IKK6sqQHZlcnNpb7sgZW4gZWwgY2FtcG8gZGVsIG5vbWJyZSBkZWwgc+1tYm9sbykgc29uIGH6biBjb21wYXRpYmxlcywgYXVucXVlCitoYW4gcXVlZGFkbyBvYnNvbGV0b3MgcG9yIGVsIG51ZXZvIGVzdGlsbyBkZSBzaW50YXhpcworqyhzeW12ZXJ8b3B0aW9uYWwpdmVyc2nzbrsuIFBvciBlamVtcGxvLCBkZWJlcu1hIGVzY3JpYmlyIKsqQEdMSUJDXzIuMCAyLjC7Citjb21vIKsoc3ltdmVyfG9wdGlvbmFsKUdMSUJDXzIuMCAyLjC7IHNpIGRlc2VhIGVsIG1pc21vIGNvbXBvcnRhbWllbnRvLgorLlJFCisuVFAgCitcZkJyZWdleFxmUAorTG9zIHBhdHJvbmVzIGRlIGV4cHJlc2lvbmVzIHJlZ3VsYXJlcyBzZSBpbmRpY2FuIGNvbiBsYSBldGlxdWV0YQorXGZJcmVnZXhcZlAuIEJ1c2NhbiBjb2luY2lkZW5jaWFzIGNvbiBsYSBleHByZXNp824gcmVndWxhciBkZSBwZXJsIGRlZmluaWRvIGVuCitlbCBjYW1wbyBkZSBub21icmUgZGVsIHPtbWJvbG8uIFVuYSBleHByZXNp824gcmVndWxhciBzZSBlbXBhcmVqYSB0YWwgY3VhbCwKK3BvciBlbGxvIG5vIG9sdmlkZSBpbnNlcnRhciBcZkleXGZQIGFsIGluaWNpbyBkZSBsYSBtaXNtYSBvIHB1ZWRlIHF1ZSBjb2luY2lkYQorY29uIGN1YWxxdWllciBwYXJ0ZSBkZSBsYSBjYWRlbmEgcmVhbCBkZWwgc+1tYm9sbyBcZklub21icmVAdmVyc2nzblxmUC4gUG9yCitlamVtcGxvOgorLlJTCisuUFAKK2xpYmR1bW15LnNvLjEgbGliZHVtbXkxICNNSU5WRVIjCisgKHJlZ2V4KSJebXlzdGFja18uKkBCYXNlJCIgMS4wCisgKHJlZ2V4fG9wdGlvbmFsKSJwcml2YXRlIiAxLjAKKy5QCitMb3Mgc+1tYm9sb3MgY29tbyCrbXlzdGFja19uZXdAQmFzZbssIKtteXN0YWNrX3B1c2hAQmFzZbssCiurbXlzdGFja19wb3BAQmFzZbsgeSBzaW1pbGFyZXMgZW5jYWphcu1hbiBjb24gZWwgcHJpbWVyIHBhdHLzbiwgbWllbnRyYXMgcXVlCitvdHJvcyBjb21vIKtuZ19teXN0YWNrX25ld0BCYXNluyBubyBsbyBoYXLtYW4uIEVsIHNlZ3VuZG8gcGF0cvNuIGVuY2FqYSBjb24KK3RvZG9zIGxvcyBz7W1ib2xvcyBjb24gq3ByaXZhdGW7IGVuIHN1IG5vbWJyZSwgeSBsYXMgY29pbmNpZGVuY2lhcyBoZXJlZGFy4W4KK2RlIGVzdGUgcGF0cvNuIGxhIGV0aXF1ZXRhIFxmSW9wdGlvbmFsXGZQLgorLlJFCisuUAorUHVlZGUgY29tYmluYXIgbG9zIHBhdHJvbmVzIGxpc3RhZG9zIGFudGVyaW9ybWVudGUsIGN1YW5kbyB0ZW5nYSBzZW50aWRvLiBFbgordGFsIGNhc28sIHNlIHByb2Nlc2FuIGVuIGVsIG9yZGVuIGRlIGxhcyBldGlxdWV0YXMgZGVmaW5pZGFzLiBQb3IgZWplbXBsbywKK2FtYm9zCisuUFAKKyAoYysrfHJlZ2V4KSJeTlNBOjpDbGFzc0E6OlByaXZhdGU6OnByaXZtZXRob2RcZWRcZShpbnRcZSlAQmFzZSIgMS4wCisgKHJlZ2V4fGMrKylOM05TQTZDbGFzc0E3UHJpdmF0ZTExcHJpdm1ldGhvZFxlZEVpQEJhc2UgMS4wCisuUAorZW5jYWphIGNvbiCrX1pOM05TQTZDbGFzc0E3UHJpdmF0ZTExcHJpdm1ldGhvZDFFaUBCYXNluyB5CiurX1pOM05TQTZDbGFzc0E3UHJpdmF0ZTExcHJpdm1ldGhvZDJFaUBCYXNluy4gQWwgY29tcGFyYXIgZWwgcHJpbWVyIHBhdHLzbgorc2Ugq2RlbWFuZ2xluyBlbCBz7W1ib2xvIHNpbiBwcm9jZXNhciBjb21vIHPtbWJvbG8gQysrLCBwYXJhIGRlc3B16XMKK2NvbXBhcmFyIGVsIG5vbWJyZSCrZGVtYW5nbGVkuyBjb24gbGEgZXhwcmVzafNuIHJlZ3VsYXIuIFBvciBvdHJhIHBhcnRlLCBhbAorY29tcGFyYXIgZWwgc2VndW5kbyBwYXRy824gbGEgZXhwcmVzafNuIHJlZ3VsYXIgc2UgY29tcGFyYSBjb24gZWwgbm9tYnJlIHNpbgorcHJvY2VzYXIgZGVsIHPtbWJvbG8sIHBhcmEgZGVzcHXpcyBjb25maXJtYXIgc2kgZXMgdW4gc+1tYm9sbyBkZSBDKysKK21lZGlhbnRlIKtkZW1hbmdsZbsuIFVuIGZhbGxvIGRlIHVuIHBhdHLzbiBi4XNpY28gbGxldmEgYSB1biBmYWxsbyBkZSB0b2RvCitlbCBwYXRy824uIFBvciBlamVtcGxvLCCrX19OM05TQTZDbGFzc0E3UHJpdmF0ZTExcHJpdm1ldGhvZFxlZEVpQEJhc2W7IG5vCitlbmNhamFy7WEgY29uIG5pbmf6biBwYXRy824gcG9ycXVlIG5vIGVzIHVuIHPtbWJvbG8gduFsaWRvIGRlIEMrKy4KKy5QCitFbiBnZW5lcmFsLCB0b2RvcyBsb3MgcGF0cm9uZXMgc2UgZGl2aWRlbiBlbiBkb3MgZ3J1cG9zOiBhbGlhc2VzIChsb3MKK2Lhc2ljb3MgXGZJYysrXGZQIHkgXGZJc3ltdmVyXGZQKSB5IHBhdHJvbmVzIGdlbulyaWNvcyAoXGZJcmVnZXhcZlAsIHRvZGFzIGxhcworY29tYmluYWNpb25lcyBkZSB2YXJpb3MgcGF0cm9uZXMgYuFzaWNvcykuIEVzdGFibGVjZXIgY29pbmNpZGVuY2lhcyBjb24KK3BhdHJvbmVzIGJhc2Fkb3MgZW4gYWxpYXMgZXMgcuFwaWRvICgwKDEpKSBtaWVudHJhcyBxdWUgbG9zIHBhdHJvbmVzCitnZW7pcmljb3Mgc29uIDAoTikgKE4gXC0gY3VlbnRhIGdlbulyaWNhIGRlbCBwYXRy824pIHBhcmEgY2FkYQorc+1tYm9sby4gRGViaWRvIGEgZWxsbywgc2UgcmVjb21pZW5kYSBubyBhYnVzYXIgZGUgbG9zIHBhdHJvbmVzIGdlbulyaWNvcy4KKy5QCitMb3MgYWxpYXMgKHByaW1lcm8gXGZJYysrXGZQLCBkZXNwdelzIFxmSXN5bXZlclxmUCkgdGllbmVuIHByaW9yaWRhZCBzb2JyZSBsb3MKK3BhdHJvbmVzIGdlbulyaWNvcy4gyXN0b3Mgc2UgZW1wYXJlamFuIHBvciBvcmRlbiBkZSBhcGFyaWNp824gZW4gbGEKK3BsYW50aWxsYSBkZWwgZmljaGVybyBkZSBz7W1ib2xvcyBoYXN0YSBlbCBwcmltZXIgcmVzdWx0YWRvIGRlIOl4aXRvLiBUZW5nYQorZW4gY3VlbnRhLCBubyBvYnN0YW50ZSwgcXVlIG5vIHNlIHJlY29taWVuZGEgbGEgcmVvcmdhbml6YWNp824gbWFudWFsIGRlIGxhcworZW50cmFkYXMgZW4gcGxhbnRpbGxhcyBkZSBmaWNoZXJvIHlhIHF1ZSBcZkJkcGtnXC1nZW5zeW1ib2xzXGZQIGdlbmVyYSCrZGlmZnO7CitiYXNhZG9zIGVuIGVsIG9yZGVuIGFsZmFudW3pcmljbyBkZSBzdXMgbm9tYnJlcy4KKy5TUyAiVXNhciCraW5jbHVkZbsiCisuUAorSGF5IGNhc29zIGVuIGxvcyBxdWUgdXNhciB1biBz82xvIGZpY2hlcm8gZGUgc+1tYm9sb3MgZXMgY29udHJhcHJvZHVjZW50ZQorY3VhbmRvIGVsIGNvbmp1bnRvIGRlIHPtbWJvbG9zIGV4cG9ydGFkb3MgZGlmaWVyZSBzZWf6biBsYSBhcnF1aXRlY3R1cmEuIEVuCitlc3RvcyBjYXNvcywgdW5hIGRpcmVjdGl2YSCraW5jbHVkZbsgcHVlZGUgc2VyIPp0aWwgZGUgdW4gcGFyIGRlIG1hbmVyYXM6CisuSVAgXChidSA0CitQdWVkZSBmYWN0b3JpemFyIGxhIHBhcnRlIGNvbfpuIGVuIGFsZ/puIGZpY2hlcm8gZXh0ZXJubywgZSBpbmNsdWlyIGVzZQorZmljaGVybyBlbiBzdSBmaWNoZXJvIFxmSXBhcXVldGVcZlAuc3ltYm9scy5cZklhcnFcZlAgdXNhbmRvIHVuYSBkaXJlY3RpdmEKK6tpbmNsdWRluyBjb21vIGVzdGE6CisKKyNpbmNsdWRlICJcZklwYWNrYWdlc1xmUC5zeW1ib2xzLmNvbW1vbiIKKy5JUCBcKGJ1CitBbCBpZ3VhbCBxdWUgY29uIGN1YWxxdWllciBz7W1ib2xvLCBwdWVkZSBldGlxdWV0YXIgbGEgZGlyZWN0aXZhIKtpbmNsdWRluzoKKworKHRhZ3wuLnx0YWdOKSNpbmNsdWRlICJmaWxlXC10b1wtaW5jbHVkZSIKKworQXMgYSByZXN1bHQsIGFsbCBzeW1ib2xzIGluY2x1ZGVkIGZyb20gXGZJZmlsZVwtdG9cLWluY2x1ZGVcZlAgd2lsbCBiZSBjb25zaWRlcmVkCit0byBiZSB0YWdnZWQgd2l0aCBcZkl0YWdcZlAgLi4gXGZJdGFnTlxmUCBieSBkZWZhdWx0LiBZb3UgY2FuIHVzZSB0aGlzIGZlYXR1cmUgdG8KK2NyZWF0ZSBhIGNvbW1vbiBcZklwYWNrYWdlXGZQLnN5bWJvbHMgZmlsZSB3aGljaCBpbmNsdWRlcyBhcmNoaXRlY3R1cmUgc3BlY2lmaWMKK3N5bWJvbCBmaWxlczoKKworICBjb21tb25fc3ltYm9sMUBCYXNlIDEuMAorIChhcmNoPWFtZDY0IGlhNjQgYWxwaGEpI2luY2x1ZGUgInBhY2thZ2Uuc3ltYm9scy42NGJpdCIKKyAoYXJjaD0hYW1kNjQgIWlhNjQgIWFscGhhKSNpbmNsdWRlICJwYWNrYWdlLnN5bWJvbHMuMzJiaXQiCisgIGNvbW1vbl9zeW1ib2wyQEJhc2UgMS4wCisuUAorTG9zIGZpY2hlcm9zIGRlIHPtbWJvbG9zIHNlIGxlZW4gbO1uZWEgYSBs7W5lYSwgeSBsYXMgZGlyZWN0aXZhcyCraW5jbHVkZbsKK3NlIHByb2Nlc2FuIHBvciBvcmRlbiBkZSBhcGFyaWNp824uIEVzdG8gc2lnbmlmaWNhIHF1ZSBlbCBjb250ZW5pZG8gZGVsCitmaWNoZXJvIGluY2x1aWRvIHB1ZWRlIHN1c3RpdHVpciBjdWFscXVpZXIgY29udGVuaWRvIGFwYXJlY2lkbyBhbnRlcyBkZSBsYQorZGlyZWN0aXZhIKtpbmNsdWRluywgeSBxdWUgdG9kbyBjb250ZW5pZG8gYSBjb250aW51YWNp824gZGUgbGEgZGlyZWN0aXZhCitwdWVkZSBzdXN0aXR1aXIgY3VhbHF1aWVyIGNvbnRlbmlkbyBkZWwgZmljaGVybyBpbmNsdWlkby4gVG9kbyBz7W1ib2xvIChvCitpbmNsdXNvIG90cmEgZGlyZWN0aXZhIKsjaW5jbHVkZbspIGVuIGVsIGZpY2hlcm8gaW5jbHVpZG8gcHVlZGUgZXNwZWNpZmljYXIKK2V0aXF1ZXRhcyBhZGljaW9uYWxlcywgbyBzdXN0aXR1aXIgdmFsb3JlcyBkZSBsYXMgZXRpcXVldGFzIGhlcmVkYWRhcyBlbiBsYQorZXNwZWNpZmljYWNp824gZGUgZXRpcXVldGEuIFBvciBvdHJhIHBhcnRlLCBlbCBz7W1ib2xvIG5vIHB1ZWRlIGVsaW1pbmFyCituaW5ndW5hIGRlIGxhcyBldGlxdWV0YXMgaGVyZWRhZGFzLgorLlAKK1VuIGZpY2hlcm8gaW5jbHVpZG8gcHVlZGUgcmVwZXRpciBsYSBs7W5lYSBkZSBjYWJlY2VyYSBxdWUgY29udGllbmUgZWwKK6tTT05BTUW7IGRlIGxhIGJpYmxpb3RlY2EuIEVuIHRhbCBjYXNvLCBzdXN0aXR1eWUgY3VhbHF1aWVyIGztbmVhIGRlCitjYWJlY2VyYSBsZe1kYSBhbnRlcmlvcm1lbnRlLiBQb3Igb3RyYSBwYXJ0ZSwgZ2VuZXJhbG1lbnRlIGVzIG1lam9yIGV2aXRhcgorZHVwbGljYXIgbGFzIGztbmVhcyBkZSBjYWJlY2VyYS4gQSBjb250aW51YWNp824gcHVlZGUgdmVyIHVuYSBtYW5lcmEgZGUKK3JlYWxpemFyIGVzdG86CisuUFAKKyNpbmNsdWRlICJsaWJzb21ldGhpbmcxLnN5bWJvbHMuY29tbW9uIgorIGFyY2hfc3BlY2lmaWNfc3ltYm9sQEJhc2UgMS4wCisuU1MgIkJ1ZW5hIGdlc3Rp824gZGUgYmlibGlvdGVjYXMiCisuUAorVW5hIGJpYmxpb3RlY2EgbWFudGVuaWRhIGFkZWN1YWRhbWVudGUgdGllbmUgbGFzIHNpZ3VpZW50ZXMgY2FyYWN0ZXLtc3RpY2FzOgorLklQIFwoYnUgNAorc3UgQVBJIGVzIGVzdGFibGUgKGxvcyBz7W1ib2xvcyBw+mJsaWNvcyBudW5jYSBzZSBlbGltaW5hbiwgc2lubyBxdWUgc/NsbyBzZQorYfFhZGVuIHPtbWJvbG9zIG51ZXZvcyksIHkgbG9zIGNhbWJpb3MgcHVlZGVuIGludHJvZHVjaXIgdW5hCitpbmNvbXBhdGliaWxpZGFkIHPzbG8gY3VhbmRvIGVsIKtTT05BTUW7IGNhbWJpYTsKKy5JUCBcKGJ1IDQKK0lkZWFsbWVudGUsIHVzYSBlbCB2ZXJzaW9uYWRvIGRlIHPtbWJvbG9zIHBhcmEgYWxjYW56YXIgbGEgZXN0YWJpbGlkYWQgZGUgbGEKK0FCSSwgYSBwZXNhciBkZSBjYW1iaW9zIGludGVybm9zIHkgbGEgZXh0ZW5zafNuIGRlIGxhIEFQSTsKKy5JUCBcKGJ1IDQKK05vIGV4cG9ydGEgc+1tYm9sb3MgcHJpdmFkb3MgKHRhbGVzIGNvbW8gc+1tYm9sb3MgZXRpcXVldGFkb3MgY29tbworb3BjaW9uYWxlcyBwYXJhIGV2aXRhciB1biBwcm9ibGVtYSkuCisuUAorQWwgbWFudGVuZXIgdW4gZmljaGVybyCrc3ltYm9sc7sgZXMgc2VuY2lsbG8gbm90YXIgbGEgYXBhcmljafNuIHkKK2Rlc2FwYXJpY2nzbiBkZSBz7W1ib2xvcy4gUGVybyBlcyBt4XMgZGlm7WNpbCBub3RhciBjYW1iaW9zIGluY29tcGF0aWJsZXMgZW4KK2xhcyBBUEkgeSBBQkkuIFBvciBlbGxvLCBlbCByZXNwb25zYWJsZSBkZWwgcGFxdWV0ZSBkZWJlcu1hIGxlZXIKK2N1aWRhZG9zYW1lbnRlIGVsIHJlZ2lzdHJvIGRlIGNhbWJpb3MgZGUgbGEgZnVlbnRlIG9yaWdpbmFsIGVuIGJ1c2NhIGRlCitjYXNvcyBlbiBsb3MgcXVlIHNlIGhhIHJvdG8gbGEgY29ycmVjdGEgZ2VzdGnzbiBkZSBiaWJsaW90ZWNhcy4gU2UgZGViZXLtYQorbm90aWZpY2FyIGFsIGF1dG9yIG9yaWdpbmFsIGVuIGNhc28gZGUgZW5jb250cmFyIHByb2JsZW1hcyBwb3RlbmNpYWxlcywgeWEKK3F1ZSB1biBhcnJlZ2xvIGVuIGxhIGZ1ZW50ZSBvcmlnaW5hbCBkZWwgc29mdHdhcmUgZXMgc2llbXByZSBwcmVmZXJpYmxlIGEgdW4KK2FycmVnbG8gZXNwZWPtZmljbyBkZSBEZWJpYW4uCisuU0ggT1BDSU9ORVMKKy5UUCAKK1xmQlwtUFxmUFxmSWRpcmVjdG9yaW9cLWNvbXBpbGFjafNuXC1wYXF1ZXRlXGZQCitBbmFsaXphIFxmSWRpcmVjdG9yaW9cLWNvbXBpbGFjafNuXC1wYXF1ZXRlXGZQIGVuIGx1Z2FyIGRlIKtkZWJpYW4vdG1wuy4KKy5UUCAKK1xmQlwtcFxmUFxmSXBhcXVldGVcZlAKK0RlZmluZSBlbCBub21icmUgZGVsIHBhcXVldGUuIEVzIG5lY2VzYXJpbyBzaSBhcGFyZWNlIG3hcyBkZSB1biBwYXF1ZXRlCitiaW5hcmlvIGVuIKtkZWJpYW4vY29udHJvbLsgKG8gc2kgbm8gZXhpc3RlIG5pbmf6biBmaWNoZXJvCiurZGViaWFuL2NvbnRyb2y7KS4KKy5UUCAKK1xmQlwtdlxmUFxmSXZlcnNp825cZlAKK0RlZmluZSBsYSB2ZXJzafNuIGRlbCBwYXF1ZXRlLiBFbCB2YWxvciBwb3Igb21pc2nzbiBlcyBsYSB2ZXJzafNuIGV4dHJh7WRhCitkZSCrZGViaWFuL2NoYW5nZWxvZ7suIE5lY2VzYXJpbyBlbiBjYXNvIGRlIHVuYSBpbnZvY2FjafNuIGV4dGVybmEgYWwg4XJib2wKK2RlbCBwYXF1ZXRlIGZ1ZW50ZS4KKy5UUCAKK1xmQlwtZVxmUFxmSWZpY2hlcm9cLWJpYmxpb3RlY2FcZlAKK1PzbG8gYW5hbGl6YSBsYXMgYmlibGlvdGVjYXMgbGlzdGFkYXMgZXhwbO1jaXRhbWVudGUsIGVuIGx1Z2FyIGRlIGJ1c2NhcgordG9kYXMgbGFzIGJpYmxpb3RlY2FzIHD6YmxpY2FzLiBQdWVkZSB1c2FyIHVuYSBleHByZXNp824gcmVndWxhciBlbgorXGZJZmljaGVyb1wtYmlibGlvdGVjYVxmUCBwYXJhIGVtcGFyZWphciB2YXJpYXMgYmlibGlvdGVjYXMgY29uIHVuIPpuaWNvCithcmd1bWVudG8gKGRlIG90cmEgZm9ybWEsIG5lY2VzaXRhIHZhcmlhcyBcZkJcLWVcZlApLgorLlRQIAorXGZCXC1JXGZQXGZJbm9tYnJlXC1maWNoZXJvXGZQCitVc2EgXGZJbm9tYnJlXC1maWNoZXJvXGZQIGNvbW8gdW4gZmljaGVybyBkZSByZWZlcmVuY2lhIHBhcmEgZ2VuZXJhciBlbCBmaWNoZXJvCiurc3ltYm9sc7sgaW50ZWdyYWRvIGVuIGVsIG1pc21vIHBhcXVldGUuCisuVFAgCitcZkJcLU9cZlAKK011ZXN0cmEgcG9yIGxhIHNhbGlkYSBlc3ThbmRhciBlbCBmaWNoZXJvIKtzeW1ib2xzuyBnZW5lcmFkbywgZW4gbHVnYXIgZGUKK2FsbWFjZW5hcmxvIGVuIGVsIOFyYm9sIGRlIGNvbnN0cnVjY2nzbiBkZWwgcGFxdWV0ZS4KKy5UUCAgCitcZkJcLU9cZlBcZklmaWNoZXJvXGZQCitHdWFyZGEgZWwgZmljaGVybyBkZSBz7W1ib2xvcyBnZW5lcmFkbyBjb21vIFxmSWZpY2hlcm9cZlAuIFNpIGVsIFxmSWZpY2hlcm9cZlAgeWEKK2V4aXN0ZSBzdSBjb250ZW5pZG8gc2UgdXNhcuEgY29tbyBiYXNlIHBhcmEgZWwgZmljaGVybyCrc3ltYm9sc7sKK2dlbmVyYWRvLiBQdWVkZSB1c2FyIGVzdGEgY2FyYWN0ZXLtc3RpY2EgcGFyYSBhY3R1YWxpemFyIHVuIGZpY2hlcm8KK6tzeW1ib2xzuyBwYXJhIHF1ZSBjb2luY2lkYSBjb24gdW5hIHZlcnNp824gbeFzIHJlY2llbnRlIGRlIGxhIGJpYmxpb3RlY2EKK2RlbCBhdXRvciBvcmlnaW5hbC4KKy5UUCAKK1xmQlwtdFxmUAorRXNjcmliZSBlbCBmaWNoZXJvIKtzeW1ib2xzuyBlbiBtb2RvIHBsYW50aWxsYSBlbiBsdWdhciBkZWwgZm9ybWF0bworY29tcGF0aWJsZSBjb24gXGZJZGViXC1zeW1ib2xzKDUpXGZQLiBMYSBkaWZlcmVuY2lhIG3hcyBub3RhYmxlIGVzIHF1ZSBlbiBtb2RvCitwbGFudGlsbGEgbG9zIG5vbWJyZXMgZGUgc+1tYm9sbyB5IGV0aXF1ZXRhcyBzZSBlc2NyaWJlbiBlbiBzdSBmb3JtYQorb3JpZ2luYWwsIGVuIGx1Z2FyIGRlIGxvcyBub21icmVzIGRlIHPtbWJvbG8gcG9zdFwtcHJvY2VzYWRvcyBjb24gbGFzCitldGlxdWV0YXMgZWxpbWluYWRhcyBlbiBtb2RvIGNvbXBhdGlibGUuIEFkZW3hcywgcHVlZGUgcXVlIHNlIG9taXRhbiBhbGd1bm9zCitz7W1ib2xvcyBhbCBlc2NyaWJpciB1biBmaWNoZXJvIGVzdOFuZGFyIGRlIFxmSWRlYlwtc3ltYm9scyg1KVxmUCAoZGUgYWN1ZXJkbyBhCitsYXMgcmVnbGFzIGRlIHByb2Nlc2FtaWVudG8gZGUgZXRpcXVldGFzKSwgbWllbnRyYXMgcXVlIHNpZW1wcmUgc2UgaW5zZXJ0YW4KK3RvZG9zIGxvcyBz7W1ib2xvcyBlbiBlbCBtb2RvIHBsYW50aWxsYS4KKy5UUCAKK1xmQlwtY1xmUFxmSVswXC00XVxmUAorRGVmaW5lIGxhcyBjb21wcm9iYWNpb25lcyBhIHJlYWxpemFyIGFsIGNvbXBhcmFyIGVsIGZpY2hlcm8gq3N5bWJvbHO7CitnZW5lcmFkbyB1c2FuZG8gY29tbyBiYXNlIGVsIGZpY2hlcm8gZGUgcGxhbnRpbGxhLiBFbCBuaXZlbCBwcmVkZWZpbmlkbyBlcworMS4gQXVtZW50YXIgbG9zIG5pdmVsZXMgY29ubGxldmEgbeFzIGNvbXByb2JhY2lvbmVzLCBhc+0gY29tbyBsYSBpbmNsdXNp824KK2RlIHRvZG9zIGxvcyBuaXZlbGVzIGluZmVyaW9yZXMuIEVsIG5pdmVsIDAgbnVuY2EgZmFsbGEuIEVsIG5pdmVsIDEgZmFsbGEgc2kKK2FsZ3Vub3Mgc+1tYm9sb3MgaGFuIGRlc2FwYXJlY2lkby4gRWwgbml2ZWwgMiBmYWxsYSBzaSBzZSBoYW4gaW50cm9kdWNpZG8KK3PtbWJvbG9zIG51ZXZvcy4gRWwgbml2ZWwgMyBmYWxsYSBzaSBoYW4gZGVzYXBhcmVjaWRvIGFsZ3VuYXMKK2JpYmxpb3RlY2FzLiBFbCBuaXZlbCA0IGZhbGxhIHNpIHNlIGhhbiBpbnRyb2R1Y2lkbyBiaWJsaW90ZWNhcyBudWV2YXMuCisKK1B1ZWRlIHN1c3RpdHVpciBlc3RlIHZhbG9yIGNvbiBsYSB2YXJpYWJsZSBkZSBlbnRvcm5vCiurRFBLR19HRU5TWU1CT0xTX0NIRUNLX0xFVkVMuy4KKy5UUCAKK1xmQlwtcVxmUAorTm8gbXVlc3RyYSBpbmZvcm1lcyB5IG51bmNhIGdlbmVyYSB1biCrZGlmZrsgZW50cmUgZWwgZmljaGVybyCrc3ltYm9sc7sKK2dlbmVyYWRvIHkgZWwgZmljaGVybyBkZSBwbGFudGlsbGEgdG9tYWRvIGNvbW8gYmFzZSwgbmkgbXVlc3RyYSBuaW5n+m4gYXZpc28KK3JlbGF0aXZvIGEgYmlibGlvdGVjYXMgbnVldmFzIG8gYXVzZW50ZXMsIG8gc+1tYm9sb3MgbnVldm9zIG8gYXVzZW50ZXMuIEVzdGEKK29wY2nzbiBzb2xvIGRlc2FjdGl2YSBsYSBzYWxpZGEgaW5mb3JtYXRpdmEsIHBlcm8gbm8gbGFzIGNvbXByb2JhY2lvbmVzCisoY29uc3VsdGUgbGEgb3BjafNuIFxmSVwtY1xmUCkuCisuVFAgCitcZkJcLWFcZlBcZklhcnF1aXRlY3R1cmFcZlAKK1RvbWEgXGZJYXJxdWl0ZWN0dXJhXGZQIGNvbW8gbGEgYXJxdWl0ZWN0dXJhIGFuZml0cmnzbiBhbCBwcm9jZXNhciBmaWNoZXJvcworq3N5bWJvbHO7LiBVc2UgZXN0YSBvcGNp824gcGFyYSBnZW5lcmFyIHVuIGZpY2hlcm8gq3N5bWJvbHO7IG8gdW4gq2RpZma7CitwYXJhIGN1YWxxdWllciBhcnF1aXRlY3R1cmEsIHNpZW1wcmUgeSBjdWFuZG8gc3VzIGJpbmFyaW9zIHlhIGVzdOluCitkaXNwb25pYmxlcy4KKy5UUCAKK1xmQlwtZFxmUAorQWN0aXZhIGVsIG1vZG8gZGUgZGVwdXJhY2nzbi4gU2UgbXVlc3RyYW4gbnVtZXJvc29zIG1lbnNhamVzIHF1ZSBleHBsaWNhbgorbGFzIGFjY2lvbmVzIGRlIFxmQmRwa2dcLWdlbnN5bWJvbHNcZlAuCisuVFAgCitcZkJcLVZcZlAKK0FjdGl2YSBlbCBtb2RvIHZlcmJvc28uIEVsIGZpY2hlcm8gq3N5bWJvbHO7IGdlbmVyYWRvIGNvbnRpZW5lIHPtbWJvbG9zCitvYnNvbGV0b3MgZW4gbGEgZm9ybWEgZGUgY29tZW50YXJpb3MuIEFkZW3hcywgZW4gbW9kbyBwbGFudGlsbGEgbG9zIHBhdHJvbmVzCitkZSBz7W1ib2xvIGFudGVjZWRlbiBhIGxvcyBjb21lbnRhcmlvcyBxdWUgbGlzdGFuIGxvcyBz7W1ib2xvcyByZWFsZXMgcXVlCitjb2luY2lkZW4gY29uIGVsIHBhdHLzbi4KKy5UUCAKK1xmQlwtaFxmUCwgXGZCXC1cLWhlbHBcZlAKK011ZXN0cmEgZWwgbW9kbyBkZSB1c28geSB0ZXJtaW5hLgorLlRQIAorXGZCXC1cLXZlcnNpb25cZlAKK011ZXN0cmEgbGEgdmVyc2nzbiB5IHRlcm1pbmEuCisuCisuU0ggIlbJQVNFIFRBTUJJyU4iCitcZkJodHRwOi8vcGVvcGxlLnJlZGhhdC5jb20vZHJlcHBlci9zeW1ib2xcLXZlcnNpb25pbmdcZlAKKy5icgorXGZCaHR0cDovL3Blb3BsZS5yZWRoYXQuY29tL2RyZXBwZXIvZ29vZHByYWN0aWNlLnBkZlxmUAorLmJyCitcZkJodHRwOi8vcGVvcGxlLnJlZGhhdC5jb20vZHJlcHBlci9kc29ob3d0by5wZGZcZlAKKy5icgorXGZCZGViXC1zeW1ib2xzXGZQKDUpLCBcZkJkcGtnXC1zaGxpYmRlcHNcZlAoMSkuCisuCisuU0ggQVVUT1JFUworQ29weXJpZ2h0IFwoY28gMjAwN1wtMjAwOSBSYXBoYVxbOmVdbCBIZXJ0em9nCisuc3AKK0VzdG8gZXMgc29mdHdhcmUgbGlicmU7IHZlYSBsYSB2ZXJzafNuIDIgbyBwb3N0ZXJpb3IgZGUgbGEgTGljZW5jaWEgUPpibGljYQorR2VuZXJhbCBHTlUgcGFyYSBjb25kaWNpb25lcyBkZSBjb3BpYS4gTk8gaGF5IG5pbmd1bmEgZ2FyYW507WEuCisuU0ggIlRSQURVQ1RPUiIKK1J1ZHkgR29kb3kgPHJ1ZHlAa2VybmVsXC1wYW5pay5vcmc+LAorUnVi6W4gUG9ycmFzIDxuYWhvb0BpbmljaWEuZXM+LAorQnJ1bm8gQmFycmVyYSBDLiA8YnJ1bm8uYmFycmVyYUBpZ2xvby5jbD4sCitDYXJsb3MgSXpxdWllcmRvIDxnaGVlc2hAZXJ0aXMubmV0PiwKK0VzdGViYW4gTWFuY2hhZG8geQorTk9LLgorRGViaWFuIEwxMG4gU3BhbmlzaCA8ZGViaWFuXC1sMTBuXC1zcGFuaXNoQGxpc3RzLmRlYmlhbi5vcmc+LgorLmJyCitSZXZpc2lvbmVzIHBvciBTYW50aWFnbyBWaWxhIDxzYW52aWxhQHVuZXguZXM+LAorSmF2aWVyIEZlcm7hbmRlelwtU2FuZ3Vpbm8sIFJ1YuluIFBvcnJhcywKK0x1aXMgVXJpYmUgeSBPbWFyIENhbXBhZ25lLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vZXMvZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMSBiL2Rwa2ctMS4xNi4xLjEvbWFuL2VzL2Rwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMWQ5ZWIyZQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL2VzL2Rwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjEKQEAgLTAsMCArMSwxNjggQEAKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlRIIGRwa2dcLW1haW50c2NyaXB0XC1oZWxwZXIgMSAyMDExXC0wOFwtMTQgIlByb3llY3RvIERlYmlhbiIgIkhlcnJhbWllbnRhcyBkZSBkcGtnIgorLlNIIE5PTUJSRQorZHBrZ1wtbWFpbnRzY3JpcHRcLWhlbHBlciBcLSBTb2x1Y2nzbiBhbHRlcm5hdGl2YSBhIGxhcyBsaW1pdGFjaW9uZXMgZGUgZHBrZyBlbgorc2NyaXB0cyBkZSBtYW50ZW5lZG9yCisuCisuU0ggU0lOT1BTSVMKK1xmQmRwa2dcLW1haW50c2NyaXB0XC1oZWxwZXJcZlAgXGZJY29tbWFuZFxmUCBbXGZJcGFyYW1ldGVyXGZQLi4uXSBcZkJcLVwtXGZQCitcZkltYWludFwtc2NyaXB0XC1wYXJhbWV0ZXJcZlAuLi4KKy4KKy5TSCAi01JERU5FUyBZIFBBUsFNRVRST1MiCisuUAorXGZCcm1fXGZQIFxmSWNvbmZmaWxlXGZQIFtcZkn6bHRpbWFcLXZlcnNp825cZlAgW1xmSXBhcXVldGVcZlBdXQorLlAKK1xmQm12X2NvbmZmaWxlXGZQIFxmSWNvbmZmaWxlXC1hbnRpZ3VvXGZQIFxmSWNvbmZmaWxlXC1udWV2b1xmUCBbXGZJ+mx0aW1hXC12ZXJzafNuXGZQCitbXGZJcGFxdWV0ZVxmUF1dCisuCisuU0ggREVTQ1JJUENJ004KKy5QCitFc3RlIHByb2dyYW1hIGVzdOEgZGlzZfFhZG8gcGFyYSBzdSB1c28gZGVudHJvIGRlIHNjcmlwdHMgZGUgbWFudGVuZWRvciBwYXJhCityZWFsaXphciB0YXJlYXMgcXVlIGRwa2cgbm8gcHVlZGUgKHBvciBhaG9yYSkgZ2VzdGlvbmFyIGRlIGZvcm1hIG5hdGl2YSwKK2JpZW4gcG9yIGRlY2lzaW9uZXMgZGUgZGlzZfFvIG8gbGltaXRhY2lvbmVzIGFjdHVhbGVzLgorLlAKK01hbnkgb2YgdGhvc2UgdGFza3MgcmVxdWlyZSBjb29yZGluYXRlZCBhY3Rpb25zIGZyb20gc2V2ZXJhbCBtYWludGFpbmVyCitzY3JpcHRzIChcZkJwcmVpbnN0XGZQLCBcZkJwb3N0aW5zdFxmUCwgXGZCcHJlcm1cZlAsIFxmQnBvc3RybVxmUCkuIFRvIGF2b2lkIG1pc3Rha2VzCit0aGUgc2FtZSBjYWxsIHNpbXBseSBuZWVkcyB0byBiZSBwdXQgaW4gYWxsIHNjcmlwdHMgYW5kIHRoZSBwcm9ncmFtIHdpbGwKK2F1dG9tYXRpY2FsbHkgYWRhcHQgaXRzIGJlaGF2aW91ciBiYXNlZCBvbiB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGUKK1xmQkRQS0dfTUFJTlRTQ1JJUFRfTkFNRVxmUCBhbmQgb24gdGhlIG1haW50YWluZXIgc2NyaXB0cyBhcmd1bWVudHMgdGhhdCB5b3UKK2hhdmUgdG8gZm9yd2FyZCBhZnRlciBhIGRvdWJsZSBkYXNoLgorLgorLlNIICJUQVJFQVMgQ09OIEZJQ0hFUk9TIERFIENPTkZJR1VSQUNJ004gq0NPTkZGSUxFU7siCisuUAorQWwgYWN0dWFsaXphciB1biBwYXF1ZXRlLCBkcGtnIG5vIGVsaW1pbmFy4SBhdXRvbeF0aWNhbWVudGUgdW4gZmljaGVybyBkZQorY29uZmlndXJhY2nzbiAodW4gZmljaGVybyBkZSBjb25maWd1cmFjafNuIGNvbiBjYW1iaW9zIGRlbCB1c3VhcmlvIHF1ZSBkcGtnCitkZWJlcu1hIHByZXNlcnZhcikgc2kgbm8gZXN04SBwcmVzZW50ZSBlbiBsYSB2ZXJzafNuIG3hcyByZWNpZW50ZS4gRXhpc3RlbgorZG9zIHJhem9uZXMgcHJpbmNpcGFsZXMgcGFyYSBlc3RvOiBsYSBwcmltZXJhIGVzIHF1ZSBwdWVkZSBxdWUgZWwgZmljaGVybyBkZQorY29uZmlndXJhY2nzbiCrY29uZmZpbGW7IGhheWEgZGVzYXBhcmVjaWRvIGFjY2lkZW50YWxtZW50ZSwgY29uIGxvIHF1ZSBsYQorc2lndWllbnRlIHZlcnNp824gbGEgcmVzdGF1cmFy7WEuIExvcyB1c3VhcmlvcyBubyBxdWVycu1hbiB2ZXIgZGVzcGFyZWNlcgorbG9zIGNhbWJpb3MgaGVjaG9zLiBMYSBzZWd1bmRhIGVzIHBlcm1pdGlyIGEgbG9zIHBhcXVldGVzIHVuYSB0cmFuc2ljafNuIGRlCit1biBmaWNoZXJvIGRlIGNvbmZpZ3VyYWNp824gq2NvbmZmaWxluyBtYW50ZW5pZG8gcG9yIGRwa2cgYSB1biBmaWNoZXJvCittYW50ZW5pZG8gcG9yIGxvcyBzY3JpcHRzIGRlIG1hbnRlbmVkb3IgZGVsIHBhcXVldGUsIGhhYml0dWFsbWVudGUgY29uIHVuYQoraGVycmFtaWVudGEgY29tbyBkZWJjb25mIG8gdWNmLgorLlAKK0VzdG8gc2lnbmlmaWNhIHF1ZSBzaSB1biBwYXF1ZXRlIHByZXRlbmRlIHJlbm9tYnJhciBvIGVsaW1pbmFyIHVuIGZpY2hlcm8gZGUKK2NvbmZpZ3VyYWNp824sIGRlYmUgaGFjZXJsbyBkZSBmb3JtYSBleHBs7WNpdGEuIFxmQmRwa2dcLW1haW50c2NyaXB0XC1oZWxwZXJcZlAKK3NlIHB1ZWRlIHVzYXIgcGFyYSBpbXBsZW1lbnRhciBjb24gc2VuY2lsbGV6IGRlbnRybyBkZSBsb3Mgc2NyaXB0cyBkZWwKK21hbnRlbmVkb3IgbGEgZWxpbWluYWNp824geSBlbCBkZXNwbGF6YW1pZW50byBkZSBmaWNoZXJvcyBkZSBjb25maWd1cmFjafNuCiurY29uZmZpbGW7LgorLgorLlNTICJFTElNSU5BUiBVTiBGSUNIRVJPIERFIENPTkZJR1VSQUNJ004gq0NPTkZGSUxFuyIKKy5QCitTaSBzZSBlbGltaW5hIHVuIGZpY2hlcm8gZGUgY29uZmlndXJhY2nzbiCrY29uZmZpbGW7IHBvciBjb21wbGV0bywgc2UKK2RlYmVy7WEgZWxpbWluYXIgZGVsIGRpc2NvIGEgbWVub3MgcXVlIHVuIHVzdWFyaW8gbG8gaGF5YSBtb2RpZmljYWRvLiBTZQorZGViZXLtYW4gcHJlc2VydmFyIG1vZGlmaWNhY2lvbmVzIGxvY2FsZXMgZW4gY2FzbyBkZSBleGlzdGlyLiBTaSBzZSBjYW5jZWxhCitsYSBhY3R1YWxpemFjafNuIGRlbCBwYXF1ZXRlLCBlbCBmaWNoZXJvIGRlIGNvbmZpZ3VyYWNp824gq2NvbmZmaWxluworZGVjbGFyYWRvIGNvbW8gb2Jzb2xldG8gbm8gZGViZXLtYSBkZXNhcGFyZWNlci4KKy5QCitFc3RvIHNlIHB1ZWRlIGludGVncmFyIGludHJvZHVjaWVuZG8gZWwgc2lndWllbnRlIHRleHRvIGRlIGNvbnNvbGEgZW4gbG9zCitzY3JpcHRzIGRlIG1hbnRlbmVkb3IgXGZCcHJlaW5zdFxmUCwgXGZCcG9zdGluc3RcZlAgeSBcZkJwb3N0cm1cZlA6CisuUAorICAgIGRwa2dcLW1haW50c2NyaXB0XC1oZWxwZXIgcm1fY29uZmZpbGUgXGUKKyAgICAgICAgXGZJY29uZmZpbGVcZlAgXGZJ+mx0aW1hXC12ZXJzafNuXGZQIFxmSXBhcXVldGVcZlAgXC1cLSAiJEAiCisuUAorXGZJY29uZmZpbGVcZlAgZXMgZWwgbm9tYnJlIGRlbCBmaWNoZXJvIGRlIGNvbmZpZ3VyYWNp824gq2NvbmZmaWxluyBhCitlbGltaW5hci4gXGZJ+mx0aW1hXC12ZXJzafNuXGZQIGVzIGxhIPpsdGltYSB2ZXJzafNuIGRlbCBwYXF1ZXRlIHF1ZSBjb250ZW7tYSBlbAorZmljaGVybyBkZSBjb25maWd1cmFjafNuIKtjb25mZmlsZbsgKG8gbGEg+mx0aW1hIHZlcnNp824gZGVsIHBhcXVldGUgcXVlIG5vCitzZSBvY3Vw8yBkZSBlbGltaW5hciBlbCBmaWNoZXJvIGRlIGNvbmZpZ3VyYWNp824gq2NvbmZmaWxluyBvYnNvbGV0byBlbiBlbAorY2FzbyBkZSBxdWUgZXN0ZSBt6XRvZG8gbm8gc2UgaW1wbGVtZW508yBpbm1lZGlhdGFtZW50ZSkuIFNpCitcZkn6bHRpbWFcLXZlcnNp825cZlAgZXN04SB2YWPtbyBvIHNlIG9taXRlLCBzZSBpbnRlbnRhcuEgbGEgb3BlcmFjafNuIGVuIGNhZGEKK2FjdHVhbGl6YWNp824uIFxmSXBhcXVldGVcZlAgZXMgZWwgbm9tYnJlIGRlbCBwYXF1ZXRlLCBzdSBhcGFyaWNp824gZXMgb3BjaW9uYWwKK3lhIHF1ZSBlbCB2YWxvciBwb3Igb21pc2nzbiBlcyCrJERQS0dfTUFJTlRTQ1JJUFRfUEFDS0FHRbsgKGRwa2cgZGVmaW5lIGVzdGEKK3ZhcmlhYmxlIGNvbiBlbCBub21icmUgZGVsIHBhcXVldGUgc29icmUgZWwgcXVlIGFjdPphKS4gVG9kb3MgbG9zIHBhcuFtZXRyb3MKK2RlIGxvcyBzY3JpcHRzIGRlIG1hbnRlbmVkb3Igc2UgZGViZW4gaW50cm9kdWNpciBhbCBwcm9ncmFtYSBkZXNwdelzIGRlCiurXC1cLbsuCisuUAorSW1wbGVtZW50YWNp824gYWN0dWFsOiBlbiBlbCBzY3JpcHQgXGZCcHJlaW5zdFxmUCwgY29tcHJ1ZWJhIHNpIHNlIGhhCittb2RpZmljYWRvIGVsIGZpY2hlcm8gZGUgY29uZmlndXJhY2nzbiB5IGxvIHJlbm9tYnJhIGJpZW4gY29tbworXGZJY29uZmZpbGVcZlBcZkIuZHBrZ1wtcmVtb3ZlXGZQIChzaSBubyBzZSBoYSBtb2RpZmljYWRvKSwgbyBjb21vCitcZkljb25mZmlsZVxmUFxmQi5kcGtnXC1iYWNrdXBcZlAgKHNpIHNlIGhhIG1vZGlmaWNhZG8pLiBFbiBlbCBzY3JpcHQgXGZCcG9zdGluc3RcZlAsCitlbCBzZWd1bmRvIGZpY2hlcm8gc2UgcmVub21icmEgYSBcZkljb25mZmlsZVxmUFxmQi5kcGtnXC1iYWtcZlAgeSBzZSBndWFyZGEgY29tbworcmVmZXJlbmNpYSB5YSBxdWUgY29udGllbmUgbW9kaWZpY2FjaW9uZXMgZGVsIHVzdWFyaW8sIG1pZW50cmFzIHF1ZSBlbAorcHJpbWVyIHNjcmlwdCBzZSBlbGltaW5hLiBTaSBzZSBpbnRlcnJ1bXBlIGxhIGFjdHVhbGl6YWNp824gZGVsIHBhcXVldGUsIGVsCitzY3JpcHQgXGZCcG9zdHJtXGZQIHJlaW5zdGFsYXLhIGVsIGZpY2hlcm8gZGUgY29uZmlndXJhY2nzbiCrY29uZmZpbGW7CitvcmlnaW5hbC4gRHVyYW50ZSBlbCBwdXJnYWRvLCBlbCBzY3JpcHQgXGZCcG9zdHJtXGZQIGJvcnJhcuEgdGFtYmnpbiBlbCBmaWNoZXJvCitcJlxmQi5kcGtnXC1iYWtcZlAgbWFudGVuaWRvIGhhc3RhIGFob3JhLgorLgorLlNTICJSRU5PTUJSQVIgVU4gRklDSEVSTyBERSBDT05GSUdVUkFDSdNOIKtDT05GRklMRbsiCisuUAorU2kgc2UgaGEgY2FtYmlhZG8gbGEgdWJpY2FjafNuIGRlIHVuIGZpY2hlcm8gZGUgY29uZmlndXJhY2nzbiCrY29uZmZpbGW7CitkZWJlIGFzZWd1cmFyc2UgZGUgcXVlIHRhbWJp6W4gbWlncmEgbG9zIGNhbWJpb3MgaGVjaG9zIHBvciBlbCB1c3VhcmlvLiBFc3RvCitwdWVkZSBwYXJlY2VyIGVuIHByaW5jaXBpbyBjb21vIHVuIHNlbmNpbGxvIGNhbWJpbyBlbiBlbCBzY3JpcHQgXGZCcHJlaW5zdFxmUCwKK2F1bnF1ZSByZXN1bHRhcuEgZW4gdW4gZGnhbG9nbyBkZSBkcGtnIHBhcmEgY29uZmlybWFyIGxhIGVkaWNp824gZGVsIGZpY2hlcm8KK6tjb25mZmlsZbsgaW5jbHVzbyBzaSBubyBzb24gcmVzcG9uc2FibGVzIGRlIGVsbG9zLgorLlAKK1B1ZWRlIGludGVncmFyIHJlbm9tYnJhciBjb24gc2VuY2lsbGV6IGluc2VydGFuZG8gZWwgc2lndWllbnRlIHRleHRvIGRlCitjb25zb2xhIGVuIGxvcyBzY3JpcHRzIGRlIG1hbnRlbmVkb3IgXGZCcHJlaW5zdFxmUCwgXGZCcG9zdGluc3RcZlAgeSBcZkJwb3N0cm1cZlAuCisuUAorICAgIGRwa2dcLW1haW50c2NyaXB0XC1oZWxwZXIgbXZfY29uZmZpbGUgXGUKKyAgICAgICAgXGZJY29uZmZpbGVcLWFudGlndW9cZlAgXGZJY29uZmZpbGVcLW51ZXZvXGZQIFxmSfpsdGltYVwtdmVyc2nzblxmUAorICAgICAgICBcZklwYXF1ZXRlXGZQIFwtXC0gIiRAIgorLlAKK1xmSWNvbmZmaWxlXC1hbnRpZ3VvXGZQIHkgXGZJY29uZmZpbGVcLW51ZXZvXGZQIHNvbiBlbCBub21icmUgYW50aWd1byB5IG51ZXZvIGRlbAorZmljaGVybyBkZSBjb25maWd1cmFjafNuIKtjb25mZmlsZbsgYSByZW5vbWJyYXIuIFxmSfpsdGltYVwtdmVyc2nzblxmUCBlcyBsYQor+mx0aW1hIHZlcnNp824gZGVsIHBhcXVldGUgcXVlIGNvbnRlbu1hIGVsIGZpY2hlcm8gZGUgY29uZmlndXJhY2nzbgorq2NvbmZmaWxluyBjb24gZWwgbm9tYnJlIGFudGlndW8uIFNpIFxmSXVsdGltYVwtdmVyc2nzblxmUCBlc3ThIHZhY+1vIG8gc2UKK29taXRlLCBzZSBlamVjdXRhcuEgbGEgb3BlcmFjafNuIGVuIGNhZGEgYWN0dWFsaXphY2nzbiAobm90YTogZXMgbeFzIHNlZ3VybworZGFyIGxhIHZlcnNp824geSBlamVjdXRhciBsYSBvcGVyYWNp824gdW5hIHNvbGEgdmV6KS4gXGZJcGFxdWV0ZVxmUCBlcyBlbAorbm9tYnJlIGRlbCBwYXF1ZXRlLCBvcGNpb25hbCB5YSBxdWUgc3UgdmFsb3IgcG9yIG9taXNp824gZXMKK6skRFBLR19NQUlOVFNDUklQVF9QQUNLQUdFuyAoZHBrZyBkZWZpbmUgZXN0YSB2YXJpYWJsZSBjb24gZWwgbm9tYnJlIGRlbAorcGFxdWV0ZSBzb2JyZSBlbCBxdWUgYWN0+mEpLiBUb2RvcyBsb3MgcGFy4W1ldHJvcyBkZSBzY3JpcHRzIGRlIG1hbnRlbmVkb3IKK3NlIGRlYmVuIGludHJvZHVjaXIgZGVzcHXpcyBkZSCrXC1cLbsuCisuUAorSW1wbGVtZW50YWNp824gYWN0dWFsOiBlbCBzY3JpcHQgXGZCcHJlaW5zdFxmUCBjb21wcnVlYmEgc2kgc2UgaGEgbW9kaWZpY2FkbyBlbAorZmljaGVybyBkZSBjb25maWd1cmFjafNuIKtjb25mZmlsZbssIHByZXNlcnbhbmRvbG8gZW4gc3UgbHVnYXIgc2kgZXMgYXPtLCBvCityZW5vbWJy4W5kb2xvIGNvbW8gXGZJY29uZmZpbGVcLWFudGlndW9cZlBcZkIuZHBrZ1wtcmVtb3ZlXGZQIGVuIGNhc28KK2NvbnRyYXJpby4gRHVyYW50ZSBsYSBjb25maWd1cmFjafNuLCBlbCBzY3JpcHQgXGZCcG9zdGluc3RcZlAgZWxpbWluYQorXGZJY29uZmZpbGVcLWFudGlndW9cZlBcZkIuZHBrZ1wtcmVtb3ZlXGZQIHkgcmVub21icmEgXGZJY29uZmZpbGVcLWFudGlndW9cZlAgY29tbworXGZJY29uZmZpbGVcLW51ZXZvXGZQIHNpIGVsIHByaW1lcm8gYfpuIGVzdOEgZGlzcG9uaWJsZS4gRHVyYW50ZSBsYSBjYW5jZWxhY2nzbgorZGUgdW5hIGluc3RhbGFjafNuIG8gYWN0dWFsaXphY2nzbiBlbCBzY3JpcHQgXGZJcG9zdHJtXGZQIHJlbm9tYnJhCitcZkljb25mZmlsZVwtYW50aWd1b1xmUFxmQi5kcGtnXC1yZW1vdmVcZlAgbnVldmFtZW50ZSBjb21vIFxmSWNvbmZmaWxlXC1hbnRpZ3VvXGZQIGRlCitzZXIgbmVjZXNhcmlvLgorLgorLlNIICJJTlRFR1JBQ0nTTiBFTiBQQVFVRVRFUyIKKy5QCitHaXZlbiB0aGF0IFxmQmRwa2dcLW1haW50c2NyaXB0XC1oZWxwZXJcZlAgaXMgdXNlZCBpbiB0aGUgXGZCcHJlaW5zdFxmUCwgdXNpbmcgaXQKK3VuY29uZGl0aW9uYWxseSByZXF1aXJlcyBhIHByZVwtZGVwZW5kZW5jeSB0byBlbnN1cmUgdGhhdCB0aGUgcmVxdWlyZWQKK3ZlcnNpb24gb2YgZHBrZyBoYXMgYmVlbiB1bnBhY2tlZCBiZWZvcmUuIFRoZSByZXF1aXJlZCB2ZXJzaW9uIGRlcGVuZHMgb24KK3RoZSBjb21tYW5kIHVzZWQsIGZvciBcZkJybV9jb25mZmlsZVxmUCBhbmQgXGZCbXZfY29uZmZpbGVcZlAgaXQgaXMgMS4xNS43LjI6CisuUAorICAgIFxmQlByZVwtRGVwZW5kczpcZlAgZHBrZyAoPj0gMS4xNS43LjIpCisuUAorQfpuIGFz7SwgZW4gbXVjaG9zIGNhc29zIGxhIG9wZXJhY2nzbiBlZmVjdHVhZGEgcG9yIGVsIHByb2dyYW1hIG5vIGVzCitjcu10aWNhIHBhcmEgZWwgcGFxdWV0ZSwgeSBlbiBsdWdhciBkZSB1c2FyIHVuIHByZVwtZGVwZW5kZW5jaWEgcHVlZGUgaW52b2NhcgorZWwgcHJvZ3JhbWEgc/NsbyBzaSBzYWJlbW9zIHF1ZSBsYSBvcmRlbiByZXF1ZXJpZGEgZXMgY29tcGF0aWJsZSBjb24gbGEKK3ZlcnNp824gZGUgZHBrZyBhY3R1YWxtZW50ZSBpbnN0YWxhZGE6CisuUAorICAgIGlmIGRwa2dcLW1haW50c2NyaXB0XC1oZWxwZXIgc3VwcG9ydHMgXGZJY29tbWFuZFxmUDsgdGhlbgorICAgICAgICBkcGtnXC1tYWludHNjcmlwdFwtaGVscGVyIFxmSWNvbW1hbmRcZlAgLi4uCisgICAgZmkKKy4KKy5TSCBBVVRPUkVTCitDb3B5cmlnaHQgXChjbyAyMDEwIFJhcGhhXFs6ZV1sIEhlcnR6b2cKKy5icgorQ29weXJpZ2h0IFwoY28gMjAwOCBKb2V5IEhlc3MKKy5icgorQ29weXJpZ2h0IFwoY28gMjAwNyBHdWlsbGVtIEpvdmVyCisuYnIKK0NvcHlyaWdodCBcKGNvIDIwMDUgU2NvdHQgSmFtZXMgUmVtbmFudAorLnNwCitFc3RvIGVzIHNvZnR3YXJlIGxpYnJlOyB2ZWEgbGEgdmVyc2nzbiAyIG8gcG9zdGVyaW9yIGRlIGxhIExpY2VuY2lhIFD6YmxpY2EKK0dlbmVyYWwgR05VIHBhcmEgY29uZGljaW9uZXMgZGUgY29waWEuIE5PIGhheSBuaW5ndW5hIGdhcmFudO1hLgorCisuU0ggIlRSQURVQ1RPUiIKK1J1ZHkgR29kb3kgPHJ1ZHlAa2VybmVsXC1wYW5pay5vcmc+LAorUnVi6W4gUG9ycmFzIDxuYWhvb0BpbmljaWEuZXM+LAorQnJ1bm8gQmFycmVyYSBDLiA8YnJ1bm8uYmFycmVyYUBpZ2xvby5jbD4sCitDYXJsb3MgSXpxdWllcmRvIDxnaGVlc2hAZXJ0aXMubmV0PiwKK0VzdGViYW4gTWFuY2hhZG8geQorTk9LLgorRGViaWFuIEwxMG4gU3BhbmlzaCA8ZGViaWFuXC1sMTBuXC1zcGFuaXNoQGxpc3RzLmRlYmlhbi5vcmc+LgorLmJyCitSZXZpc2lvbmVzIHBvciBTYW50aWFnbyBWaWxhIDxzYW52aWxhQHVuZXguZXM+LAorSmF2aWVyIEZlcm7hbmRlelwtU2FuZ3Vpbm8sIFJ1YuluIFBvcnJhcywKK0x1aXMgVXJpYmUgeSBPbWFyIENhbXBhZ25lLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vZXMvZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMSBiL2Rwa2ctMS4xNi4xLjEvbWFuL2VzL2Rwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZWI0ZGVjMwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL2VzL2Rwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjEKQEAgLTAsMCArMSw4OSBAQAorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlwiCisuXCIgVGhpcyBmaWxlIHdhcyBnZW5lcmF0ZWQgd2l0aCBwbzRhLiBUcmFuc2xhdGUgdGhlIHNvdXJjZSBmaWxlLgorLlwiCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuVEggZHBrZ1wtbWVyZ2VjaGFuZ2Vsb2dzIDEgMjAxMVwtMDhcLTE0ICJQcm95ZWN0byBEZWJpYW4iICJIZXJyYW1pZW50YXMgZGUgZHBrZyIKKy5TSCBOT01CUkUKK2Rwa2dcLW1lcmdlY2hhbmdlbG9ncyBcLSBGdXNp824gYSBwYXJ0aXIgZGUgdHJlcyB2ZXJzaW9uZXMgKKszXC13YXkgbWVyZ2W7KSBkZQorZmljaGVyb3Mgq2RlYmlhbi9jaGFuZ2Vsb2e7CisuCisuU0ggU0lOT1BTSVMKK1xmQmRwa2dcLW1lcmdlY2hhbmdlbG9nc1xmUCBbXGZJb3BjafNuXGZQLi4uXSBcZklhbnRpZ3VvXGZQIFxmSW51ZXZvXC1hXGZQIFxmSW51ZXZvXC1iXGZQCitbXGZJc2FsaWRhXGZQXQorLgorLlNIIERFU0NSSVBDSdNOCisuUAorRXN0ZSBwcm9ncmFtYSB1c2EgbGFzIHRyZXMgdmVyc2lvbmVzIHByb3BvcmNpb25hZGFzIGRlbCByZWdpc3RybyBkZSBjYW1iaW9zCitkZSBEZWJpYW4gcGFyYSBnZW5lcmFyIHVuIGZpY2hlcm8gZGUgcmVnaXN0cm8gZGUgY2FtYmlvcyAoq2NoYW5nZWxvZ7spCitmdXNpb25hZG8uIEVsIHJlZ2lzdHJvIGRlIGNhbWJpb3MgcmVzdWx0YW50ZSBzZSBndWFyZGEgZW4gZWwgZmljaGVybworXGZJc2FsaWRhXGZQLCBvIHNlIG1vc3RyYXLhIHBvciBsYSBzYWxpZGEgZXN04W5kYXIgZW4gY2FzbyBkZSBubyBpbnRyb2R1Y2lyIHRhbAorcGFy4W1ldHJvLgorLlAKK0NhZGEgZW50cmFkYSBzZSBpZGVudGlmaWNhIHBvciBzdSBu+m1lcm8gZGUgdmVyc2nzbiB5LCBhc3VtaWVuZG8gcXVlIG5vCitlbnRyYW4gZW4gY29uZmxpY3RvLCBzZSBmdXNpb25hcuFuIGVuIGVsIG9yZGVuIGNvcnJlY3RvIChwb3Igb3JkZW4KK2RlY3JlY2llbnRlIGRlbCBu+m1lcm8gZGUgdmVyc2nzbikuIEN1YW5kbyBzZSB1c2EgXGZCXC1cLW1lcmdlXC1wcmVyZWxlYXNlc1xmUCwgc2UKK29taXRpcuEgZWwgbvptZXJvIGRlIHZlcnNp824gdHJhcyBsYSD6bHRpbWEgdGlsZGUsIGRlIGZvcm1hIHF1ZSCrMS4wXC0xfmV4cDG7Cit5IKsxLjBcLTF+ZXhwNbsgc2UgdG9tYXLhbiBjb21vIGxhIG1pc21hIGVudHJhZGEuIEN1YW5kbyBsYSBtaXNtYSB2ZXJzafNuCitlc3ThIGRpc3BvbmlibGUgZW4gXGZJbnVldm9cLWFcZlAgeSBcZkludWV2b1wtYlxmUCwgc2UgaW50ZW50YXLhIHVuYSBmdXNp824gZXN04W5kYXIKK2RlIGxhcyBs7W5lYXMgZGUgbGFzIHRyZXMgdmVyc2lvbmVzIChz82xvIHNpIGVzdGEgZGlzcG9uaWJsZSBlbCBt82R1bG8KK6tBbGdvcml0aG06Ok1lcmdluyBcW2VtXSBwYXJ0ZSBkZWwgcGFxdWV0ZSCrbGliYWxnb3JpdGhtXC1tZXJnZVwtcGVybLsgXFtlbV0sCitkZSBubyBzZXIgYXPtLCBvYnRlbmRy4SB1biBjb25mbGljdG8gZ2xvYmFsIGVuIGVsIGNvbnRlbmlkbyBkZSBsYSBlbnRyYWRhKS4KKy4KKy5TSCBPUENJT05FUworLlRQIAorXGZCXC1cLW1lcmdlXC1wcmVyZWxlYXNlc1xmUCwgXGZCXC1tXGZQCitFbGltaW5hIGxhIHBhcnRlIHRyYXMgbGEg+mx0aW1hIHZpcmd1bGlsbGEgZW4gZWwgbvptZXJvIGRlIHZlcnNp824gYWwKK3JlYWxpemFyIHVuYSBjb21wYXJhY2nzbiBwYXJhIGlkZW50aWZpY2FyIHNpIGRvcyBlbnRyYWRhcyBzb24gbGEgbWlzbWEgbyBuby4KKy5zcAorRXMg+nRpbCBjdWFuZG8gc2llbXByZSBzZSB1c2EgbGEgbWlzbWEgZW50cmFkYSBlbiBlbCByZWdpc3RybyBkZSBjYW1iaW9zLAorcGVybyBhdW1lbnRhIGVsIG76bWVybyBkZSB2ZXJzafNuIHJlZ3VsYXJtZW50ZS4gUG9yIGVqZW1wbG8sIHB1ZWRlIHRlbmVyCiurMi4zXC0xfmV4cDG7LCCrMi4zXC0xfmV4cDK7Li4uIGhhc3RhIGxhIHB1YmxpY2FjafNuIG9maWNpYWwgqzIuM1wtMbssIHRlbmllbmRvCit0b2RhcyBsYSBtaXNtYSBlbnRyYWRhIGVuIGVsIHJlZ2lzdHJvIGRlIGNhbWJpb3MsIHBlcm8gcXVlIGhhIGV2b2x1Y2lvbmFkbworY29uIGVsIHRpZW1wby4KKy5UUCAKK1xmQlwtXC1oZWxwXGZQCitNdWVzdHJhIGVsIG1vZG8gZGUgdXNvIHkgdGVybWluYS4KKy5UUCAKK1xmQlwtXC12ZXJzaW9uXGZQCitNdWVzdHJhIGxhIHZlcnNp824geSB0ZXJtaW5hLgorLgorLlNIIExJTUlUQUNJT05FUworLlAKK1NlIHBlcmRlcuEgZHVyYW50ZSBsYSBmdXNp824gdG9kbyBsbyBxdWUgq0Rwa2c6OkNoYW5nZWxvZ7sgbm8gYW5hbGljZS4gRXN0bworcHVlZGUgaW5jbHVpciBjb3NhcyBjb21vIKttb2RlbGluZXO7IGRlIHZpbSwgY29tZW50YXJpb3MgZG9uZGUgbm8gZGViZXLtYW4KK2VzdGFyLCBldGMuCisuCisuU0ggIklOVEVHUkFDSdNOIENPTiBHSVQiCisuUAorU2kgZGVzZWEgdXNhciBlc3RlIHByb2dyYW1hIHBhcmEgZnVzaW9uYXIgZmljaGVyb3MgZGUgcmVnaXN0cm8gZGUgY2FtYmlvcyBkZQorRGViaWFuIGVuIHVuIHJlcG9zaXRvcmlvIGdpdCBwcmltZXJvIHRlbmRy4SBxdWUgcmVnaXN0cmFyIHVuIG51ZXZvIKttZXJnZQorZHJpdmVyuyBlbiBcZkIuZ2l0L2NvbmZpZ1xmUCBvIFxmQn4vLmdpdGNvbmZpZ1xmUDoKKy5QCisgW21lcmdlICJkcGtnXC1tZXJnZWNoYW5nZWxvZ3MiXQorICAgICBuYW1lID0gZGViaWFuL2NoYW5nZWxvZyBtZXJnZSBkcml2ZXIKKyAgICAgZHJpdmVyID0gZHBrZ1wtbWVyZ2VjaGFuZ2Vsb2dzIFwtbSAlTyAlQSAlQiAlQQorLlAKK0Rlc3B16XMgdGVuZHLhIHF1ZSBkZWZpbmlyIGVsIKttZXJnZSBhdHRyaWJ1dGW7IHBhcmEgZWwgZmljaGVybworq2RlYmlhbi9jaGFuZ2Vsb2e7IGJpZW4gZW4gXGZCLmdpdGF0dHJpYnV0ZXNcZlAgZW4gZWwgbWlzbW8gcmVwb3NpdG9yaW8sIG8gZW4KK1wmXGZCLmdpdC9pbmZvL2F0dHJpYnV0ZXNcZlA6CisuUAorIGRlYmlhbi9jaGFuZ2Vsb2cgbWVyZ2U9ZHBrZ1wtbWVyZ2VjaGFuZ2Vsb2dzCisuU0ggQVVUT1IKK0NvcHlyaWdodCBcKGNvIDIwMDlcLTIwMTAgUmFwaGFcWzplXWwgSGVydHpvZworLnNwCitFc3RvIGVzIHNvZnR3YXJlIGxpYnJlOyB2ZWEgbGEgdmVyc2nzbiAyIG8gcG9zdGVyaW9yIGRlIGxhIExpY2VuY2lhIFD6YmxpY2EKK0dlbmVyYWwgR05VIHBhcmEgY29uZGljaW9uZXMgZGUgY29waWEuIE5PIGhheSBuaW5ndW5hIGdhcmFudO1hLgorCisuU0ggIlRSQURVQ1RPUiIKK1J1ZHkgR29kb3kgPHJ1ZHlAa2VybmVsXC1wYW5pay5vcmc+LAorUnVi6W4gUG9ycmFzIDxuYWhvb0BpbmljaWEuZXM+LAorQnJ1bm8gQmFycmVyYSBDLiA8YnJ1bm8uYmFycmVyYUBpZ2xvby5jbD4sCitDYXJsb3MgSXpxdWllcmRvIDxnaGVlc2hAZXJ0aXMubmV0PiwKK0VzdGViYW4gTWFuY2hhZG8geQorTk9LLgorRGViaWFuIEwxMG4gU3BhbmlzaCA8ZGViaWFuXC1sMTBuXC1zcGFuaXNoQGxpc3RzLmRlYmlhbi5vcmc+LgorLmJyCitSZXZpc2lvbmVzIHBvciBTYW50aWFnbyBWaWxhIDxzYW52aWxhQHVuZXguZXM+LAorSmF2aWVyIEZlcm7hbmRlelwtU2FuZ3Vpbm8sIFJ1YuluIFBvcnJhcywKK0x1aXMgVXJpYmUgeSBPbWFyIENhbXBhZ25lLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vZXMvZHBrZy1uYW1lLjEgYi9kcGtnLTEuMTYuMS4xL21hbi9lcy9kcGtnLW5hbWUuMQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44ZGU0NWYyCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vZXMvZHBrZy1uYW1lLjEKQEAgLTAsMCArMSwxMTIgQEAKKy5cIiBUaGlzIGlzIGFuIC0qLSBucm9mZiAtKi0gc291cmNlIGZpbGUuCisuXCIgZHBrZy1uYW1lIGFuZCB0aGlzIG1hbnBhZ2UgYXJlIENvcHlyaWdodCDCqSAxOTk1LDE5OTYgYnkgRXJpY2sgQnJhbmRlcmhvcnN0LgorLlwiCisuXCIgVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbmNlIHZlcnNpb24gMgorLlwiIG9yIGxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuICBUaGVyZSBpcyBOTyB3YXJyYW50eS4KKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlRIIGRwa2dcLW5hbWUgMSAyMDExXC0wOFwtMTQgIlByb3llY3RvIERlYmlhbiIgIkhlcnJhbWllbnRhcyBkZSBkcGtnIgorLlNIIE5PTUJSRQorZHBrZ1wtbmFtZSBcLSBSZW5vbWJyYSBwYXF1ZXRlcyBkZSBEZWJpYW4gYSBub21icmVzIGNvbXBsZXRvcyBkZSBwYXF1ZXRlCisuCisuU0ggU0lOT1BTSVMKK1xmQmRwa2dcLW5hbWVcZlAgW1xmSW9wdGlvblxmUC4uLl0gW1xmQlwtXC1cZlBdIFxmSWZpbGVcZlAuLi4KKy4KKy5TSCBERVNDUklQQ0nTTgorLlBQCitUaGlzIG1hbnVhbCBwYWdlIGRvY3VtZW50cyB0aGUgXGZCZHBrZ1wtbmFtZVxmUCBwcm9ncmFtIHdoaWNoIHByb3ZpZGVzIGFuIGVhc3kKK3dheSB0byByZW5hbWUgXGZCRGViaWFuXGZQIHBhY2thZ2VzIGludG8gdGhlaXIgZnVsbCBwYWNrYWdlIG5hbWVzLiBBIGZ1bGwKK3BhY2thZ2UgbmFtZSBjb25zaXN0cyBvZgorXGZJcGFja2FnZVxmUFxmQl9cZlBcZkl2ZXJzaW9uXGZQXGZCX1xmUFxmSWFyY2hpdGVjdHVyZVxmUFxmQi5cZlBcZklwYWNrYWdlXC10eXBlXGZQIGFzIHNwZWNpZmllZAoraW4gdGhlIGNvbnRyb2wgZmlsZSBvZiB0aGUgcGFja2FnZS4gVGhlIFxmSXZlcnNpb25cZlAgcGFydCBvZiB0aGUgZmlsZW5hbWUKK2NvbnNpc3RzIG9mIHRoZSB1cHN0cmVhbSB2ZXJzaW9uIGluZm9ybWF0aW9uIG9wdGlvbmFsbHkgZm9sbG93ZWQgYnkgYSBoeXBoZW4KK2FuZCB0aGUgcmV2aXNpb24gaW5mb3JtYXRpb24uIFRoZSBcZklwYWNrYWdlXC10eXBlXGZQIHBhcnQgY29tZXMgZnJvbSB0aGF0IGZpZWxkCitpZiBwcmVzZW50IG9yIGZhbGxiYWNrcyB0byBcZkJkZWJcZlAuCisuCisuU0ggT1BDSU9ORVMKKy5UUCAKK1xmQlwtYVxmUCwgXGZCXC1cLW5vXC1hcmNoaXRlY3R1cmVcZlAKK0VsIG5vbWJyZSBkZWwgZmljaGVybyBkZSBkZXN0aW5vIG5vIGluY2x1aXLhIGluZm9ybWFjafNuIHNvYnJlIGxhCithcnF1aXRlY3R1cmEuCisuVFAgCitcZkJcLWtcZlAsIFxmQlwtXC1zeW1saW5rXGZQCitDcmVhIHVuIGVubGFjZSBzaW1i82xpY28gZW4gdmV6IGRlIG1vdmVyIGVsIGZpY2hlcm8uCisuVFAgCitcZkJcLW9cZlAsIFxmQlwtXC1vdmVyd3JpdGVcZlAKK0xvcyBmaWNoZXJvcyBleGlzdGVudGVzIHNlIHNvYnJlZXNjcmliaXLhbiBzaSBwb3NlZW4gZWwgbWlzbW8gbm9tYnJlIHF1ZSBlbAorZmljaGVybyBkZSBkZXN0aW5vLgorLlRQIAorXGZCXC1zXGZQLCBcZkJcLVwtc3ViZGlyXGZQIFtcZklkaXJlY3RvcmlvXGZQXQorRmlsZXMgd2lsbCBiZSBtb3ZlZCBpbnRvIGEgc3ViZGlyZWN0b3J5LiBJZiB0aGUgZGlyZWN0b3J5IGdpdmVuIGFzIGFyZ3VtZW50CitleGlzdHMgdGhlIGZpbGVzIHdpbGwgYmUgbW92ZWQgaW50byB0aGF0IGRpcmVjdG9yeSBvdGhlcndpc2UgdGhlIG5hbWUgb2YgdGhlCit0YXJnZXQgZGlyZWN0b3J5IGlzIGV4dHJhY3RlZCBmcm9tIHRoZSBzZWN0aW9uIGZpZWxkIGluIHRoZSBjb250cm9sIHBhcnQgb2YKK3RoZSBwYWNrYWdlLiBUaGUgdGFyZ2V0IGRpcmVjdG9yeSB3aWxsIGJlCitgdW5zdGFibGUvYmluYXJ5XC1cZklhcmNoaXRlY3R1cmVcZlAvXGZJc2VjdGlvblxmUCcuIElmIHRoZSBzZWN0aW9uIGlzIG5vdCBmb3VuZCBpbgordGhlIGNvbnRyb2wsIHRoZW4gYG5vXC1zZWN0aW9uJyBpcyBhc3N1bWVkLCBhbmQgaW4gdGhpcyBjYXNlLCBhcyB3ZWxsIGFzIGZvcgorc2VjdGlvbnMgYG5vblwtZnJlZScgYW5kIGBjb250cmliJyB0aGUgdGFyZ2V0IGRpcmVjdG9yeSBpcworYFxmSXNlY3Rpb25cZlAvYmluYXJ5XC1cZklhcmNoaXRlY3R1cmVcZlAnLiBUaGUgc2VjdGlvbiBmaWVsZCBpc24ndCByZXF1aXJlZCBzbyBhCitsb3Qgb2YgcGFja2FnZXMgd2lsbCBmaW5kIHRoZWlyIHdheSB0byB0aGUgYG5vXC1zZWN0aW9uJyBhcmVhLiBVc2UgdGhpcworb3B0aW9uIHdpdGggY2FyZSwgaXQncyBtZXNzeS4KKy5UUCAKK1xmQlwtY1xmUCwgXGZCXC1cLWNyZWF0ZVwtZGlyXGZQCitFc3RhIG9wY2nzbiBzZSBwdWVkZSB1c2FyIGp1bnRvIGNvbiBsYSBvcGNp824gq1wtc7suIFNpIG5vIHNlIGVuY3VlbnRyYQorbmluZ/puIGRpcmVjdG9yaW8gZGUgZGVzdGlubywgc2UgY3JlYXLhIGF1dG9t4XRpY2FtZW50ZS4gXGZCVXNlIGVzdGEgb3BjafNuCitjb24gY3VpZGFkby5cZlAKKy5UUCAKK1xmQlwtaFxmUCwgXGZCXC1cLWhlbHBcZlAKK011ZXN0cmEgZWwgbW9kbyBkZSB1c28geSB0ZXJtaW5hLgorLlRQIAorXGZCXC12XGZQLCBcZkJcLVwtdmVyc2lvblxmUAorTXVlc3RyYSBsYSB2ZXJzafNuIHkgdGVybWluYS4KKy4KKy5TSCBFSkVNUExPUworLlRQIAorXGZCZHBrZ1wtbmFtZSBiYXJcLWZvby5kZWJcZlAKK0VsIGZpY2hlcm8gq2JhclwtZm9vLmRlYrsgc2UgcmVub21icmFy4SBhIKtiYXJcLWZvb18xLjBcLTJfaTM4Ni5kZWK7IG8gc2ltaWxhcgorKGRlcGVuZGllbmRvIGRlIGN1YWwgc2VhIGxhIGluZm9ybWFjafNuIGVuIGxhIHNlY2Np824gZGUgY29udHJvbCBkZQorq2JhclwtZm9vLmRlYrspLgorLlRQIAorXGZCZmluZCAvcm9vdC9kZWJpYW4vIFwtbmFtZSBcKGFxKi5kZWJcKGFxIHwgeGFyZ3MgXC1uIDEgZHBrZ1wtbmFtZSBcLWFcZlDnCitkcGtnXC1uYW1lIHJlbm9tYnJhcuEgdG9kb3MgbG9zIGZpY2hlcm9zIGNvbiBsYSBleHRlbnNp824gqy5kZWK7IGRlbnRybyBkZWwKK2RpcmVjdG9yaW8gqy9yb290L2RlYmlhbrsgeSBzdXMgc3ViZGlyZWN0b3Jpb3MsIGVuIGNhc28gZGUgc2VyIG5lY2VzYXJpbywgYQorbm9tYnJlcyBzaW4gaW5mb3JtYWNp824gZGUgYXJxdWl0ZWN0dXJhLgorLlRQIAorXGZCZmluZCBcLW5hbWUgXChhcSouZGViXChhcSB8IHhhcmdzIFwtbiAxIGRwa2dcLW5hbWUgXC1hIFwtbyBcLXMgXC1jXGZQCitcZkJObyBoYWdhIGVzdG8uXGZQIFN1IGFyY2hpdm8gc2UgY29ycm9tcGVy4SBjb21wbGV0YW1lbnRlIGRlYmlkbyBhIHF1ZSB1bmEKK2dyYW4gY2FudGlkYWQgZGUgcGFxdWV0ZXMgbm8gaW5jbHV5ZW4gdW5hIHNlY2Np824gZGUgaW5mb3JtYWNp824uIFxmQk5vIGhhZ2EKK2VzdG8uXGZQCisuVFAgCitcZkJkcGtnIFwtXC1idWlsZCBkZWJpYW5cLXRtcCAmJiBkcGtnXC1uYW1lIFwtbyBcLXMgLi4gZGViaWFuXC10bXAuZGViXGZQCitQdWVkZSB1dGlsaXphciBlc3RvIGFsIGNvbnN0cnVpciBwYXF1ZXRlcyBudWV2b3MuCisuCisuU0ggRkFMTE9TCitTb21lIHBhY2thZ2VzIGRvbid0IGZvbGxvdyB0aGUgbmFtZSBzdHJ1Y3R1cmUKK1xmSXBhY2thZ2VcZlBcZkJfXGZQXGZJdmVyc2lvblxmUFxmQl9cZlBcZklhcmNoaXRlY3R1cmVcZlBcZkIuZGViXGZQLiAgUGFja2FnZXMgcmVuYW1lZCBieQorZHBrZ1wtbmFtZSB3aWxsIGZvbGxvdyB0aGlzIHN0cnVjdHVyZS4gR2VuZXJhbGx5IHRoaXMgd2lsbCBoYXZlIG5vIGltcGFjdCBvbgoraG93IHBhY2thZ2VzIGFyZSBpbnN0YWxsZWQgYnkgXGZCZHNlbGVjdFxmUCgxKS9cZkJkcGtnXGZQKDEpLCBidXQgb3RoZXIKK2luc3RhbGxhdGlvbiB0b29scyBtaWdodCBkZXBlbmQgb24gdGhpcyBuYW1pbmcgc3RydWN0dXJlLgorLgorLlNIICJWyUFTRSBUQU1CSclOIgorXGZCZGViXGZQKDUpLCBcZkJkZWJcLWNvbnRyb2xcZlAoNSksIFxmQmRwa2dcZlAoMSksIFxmQmRwa2dcLWRlYlxmUCgxKSwgXGZCZmluZFxmUCgxKSwKK1xmQnhhcmdzXGZQKDEpLgorLgorLlNIIEFVVE9SCitDb3B5cmlnaHQgXChjbyAxOTk1LDE5OTYgRXJpY2sgQnJhbmRlcmhvcnN0Cisuc3AKK0VzdG8gZXMgc29mdHdhcmUgbGlicmU7IHZlYSBsYSB2ZXJzafNuIDIgbyBwb3N0ZXJpb3IgZGUgbGEgTGljZW5jaWEgUPpibGljYQorR2VuZXJhbCBHTlUgcGFyYSBjb25kaWNpb25lcyBkZSBjb3BpYS4gTk8gaGF5IG5pbmd1bmEgZ2FyYW507WEuCisuU0ggIlRSQURVQ1RPUiIKK1J1ZHkgR29kb3kgPHJ1ZHlAa2VybmVsXC1wYW5pay5vcmc+LAorUnVi6W4gUG9ycmFzIDxuYWhvb0BpbmljaWEuZXM+LAorQnJ1bm8gQmFycmVyYSBDLiA8YnJ1bm8uYmFycmVyYUBpZ2xvby5jbD4sCitDYXJsb3MgSXpxdWllcmRvIDxnaGVlc2hAZXJ0aXMubmV0PiwKK0VzdGViYW4gTWFuY2hhZG8geQorTk9LLgorRGViaWFuIEwxMG4gU3BhbmlzaCA8ZGViaWFuXC1sMTBuXC1zcGFuaXNoQGxpc3RzLmRlYmlhbi5vcmc+LgorLmJyCitSZXZpc2lvbmVzIHBvciBTYW50aWFnbyBWaWxhIDxzYW52aWxhQHVuZXguZXM+LAorSmF2aWVyIEZlcm7hbmRlelwtU2FuZ3Vpbm8sIFJ1YuluIFBvcnJhcywKK0x1aXMgVXJpYmUgeSBPbWFyIENhbXBhZ25lLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vZXMvZHBrZy1wYXJzZWNoYW5nZWxvZy4xIGIvZHBrZy0xLjE2LjEuMS9tYW4vZXMvZHBrZy1wYXJzZWNoYW5nZWxvZy4xCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjIzMzBmNjcKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9lcy9kcGtnLXBhcnNlY2hhbmdlbG9nLjEKQEAgLTAsMCArMSwxNDIgQEAKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlRIIGRwa2dcLXBhcnNlY2hhbmdlbG9nIDEgMjAxMVwtMDhcLTE0ICJQcm95ZWN0byBEZWJpYW4iICJIZXJyYW1pZW50YXMgZGUgZHBrZyIKKy5TSCBOT01CUkUKK2Rwa2dcLXBhcnNlY2hhbmdlbG9nIFwtIEFu4Wxpc2lzIGRlIGZpY2hlcm9zIGRlIHJlZ2lzdHJvIGRlIGNhbWJpb3MgZGUgRGViaWFuCisuCisuU0ggU0lOT1BTSVMKK1xmQmRwa2dcLXBhcnNlY2hhbmdlbG9nXGZQIFtcZklvcHRpb25cZlAuLi5dCisuCisuU0ggREVTQ1JJUENJ004KK1xmQmRwa2dcLXBhcnNlY2hhbmdlbG9nXGZQIGxlZSB5IGFuYWxpemEgZWwgcmVnaXN0cm8gZGUgY2FtYmlvcyBkZSB1biDhcmJvbCBkZQorZnVlbnRlcyBkZSBEZWJpYW4gZGVzZW1wYXF1ZXRhZG8sIG1vc3RyYW5kbyBsYSBpbmZvcm1hY2nzbiBjb250ZW5pZGEgYQordHJhdulzIGRlIGxhIHNhbGlkYSBlc3ThbmRhciBlbiB1biBmb3JtYXRvIGxlZ2libGUgcG9yIGVsIHNpc3RlbWEuCisuCisuU0ggT1BDSU9ORVMKKy5UUCAKK1xmQlwtbFxmUFxmSWZpY2hlcm9cLWNhbWJpb3NcZlAKK0RlZmluZSBlbCBmaWNoZXJvIGRlIHJlZ2lzdHJvIGRlIGNhbWJpb3MgZGVsIHF1ZSBsZWVyIGxhIGluZm9ybWFjafNuLiBQb3IKK29taXNp824gZXMgXGZCZGViaWFuL2NoYW5nZWxvZ1xmUC4KKy5UUCAKK1xmQlwtRlxmUFxmSWZvcm1hdG9cLXJlZ2lzdHJvXC1jYW1iaW9zXGZQCitEZWZpbmUgZWwgZm9ybWF0byBkZWwgcmVnaXN0cm8gZGUgY2FtYmlvcy4gUG9yIG9taXNp824sIGVsIGZvcm1hdG8gc2UgbGVlIGRlCit1bmEgbO1uZWEgZXNwZWNpYWwgY2VyY2EgZGVsIGZpbmFsIGRlbCByZWdpc3RybyBkZSBjYW1iaW9zIG8sIGVuIGNhc28gZGUKK2ZhbGxvLCB1c2EgZWwgZm9ybWF0byBlc3ThbmRhciBkZWJpYW4uCisuVFAgCitcZkJcLUxcZlBcZklkaXJlY3RvcmlvXC1iaWJsaW90ZWNhc1xmUAorRGVmaW5lIHVuIGRpcmVjdG9yaW8gYWRpY2lvbmFsIGVuIGVsIHF1ZSBidXNjYXIgc2NyaXB0cyBkZSBhbuFsaXNpcy4gRXN0ZQorZGlyZWN0b3JpbyBzZSBhbmFsaXphIGFudGVzIHF1ZSBsb3MgZGlyZWN0b3Jpb3MgcHJlZGVmaW5pZG9zLAorXGZCL3Vzci9sb2NhbC9saWIvZHBrZy9wYXJzZWNoYW5nZWxvZ1xmUCB5IFxmQi91c3IvbGliL2Rwa2cvcGFyc2VjaGFuZ2Vsb2dcZlAuCisuVFAgCitcZkJcLWhcZlAsIFxmQlwtXC1oZWxwXGZQCitNdWVzdHJhIGVsIG1vZG8gZGUgdXNvIHkgdGVybWluYS4KKy5UUCAKK1xmQlwtXC12ZXJzaW9uXGZQCitNdWVzdHJhIGxhIHZlcnNp824geSB0ZXJtaW5hLgorLlNTICJPcGNpb25lcyBkZSBhbuFsaXNpcyIKK0xhcyBzaWd1aWVudGVzIG9wY2lvbmVzIHBlcm1pdGVuIG1vZGlmaWNhciBsYSBzYWxpZGEgZGVsIGFuYWxpemFkb3IgZGUKK3JlZ2lzdHJvcyBkZSBjYW1iaW8sIHBvciBlamVtcGxvLCBlbCByYW5nbyBkZSBsYXMgZW50cmFkYXMgbyBlbCBmb3JtYXRvIGRlCitsYSBzYWxpZGEuIERlYmVuIHNlciBjb21wYXRpYmxlcyBjb24gZWwgc2NyaXB0IGFuYWxpemFkb3IgZW4gY3Vlc3Rp824uIFbpYXNlCit0YW1iaeluIFxmQkFEVkVSVEVOQ0lBU1xmUC4KKy5UUCAKK1xmQlwtXC1mb3JtYXRcZlBcZkkgZm9ybWF0b1wtc2FsaWRhXGZQCitEZWZpbmUgZWwgZm9ybWF0byBkZSBsYSBzYWxpZG8uIExvcyB2YWxvcmVzIGNvbXBhdGlibGVzIHNvbiBcZklkcGtnXGZQIHkKK1xmSXJmYzgyMlxmUC4gXGZJZHBrZ1xmUCBlcyBlbCBmb3JtYXRvIGRlIHNhbGlkYSBjbOFzaWNvIChhbnRlcmlvciBhIGxhIGV4aXN0ZW5jaWEKK2RlIGVzdGEgb3BjafNuKSB5IGVsIHZhbG9yIHByZWRlZmluaWRvLiBDb25zaXN0ZSBkZSB1biBw4XJyYWZvIGNvbiBlbAorZm9ybWF0byBkZSBjb250cm9sIGRlIERlYmlhbiAoY29uc3VsdGUgXGZCZGViXC1jb250cm9sXGZQKDUpKS4gRW4gY2FzbyBkZQorcmVxdWVyaXIgbeFzIGRlIHVuYSBlbnRyYWRhLCBsYSBtYXlvcu1hIGRlIGNhbXBvcyBzZSB0b21hbiBkZSBsYSD6bHRpbWEKK2VudHJhZGEsIGEgbWVub3MgcXVlIHNlIGVzcGVjaWZpcXVlIGxvIGNvbnRyYXJpbzoKKy5SUworLlRQIAorXGZCU291cmNlOlxmUFxmSSBwa2dcLW5hbWVcZlAKKy5UUCAKK1xmQlZlcnNpb246XGZQXGZJIHZlcnNpb25cZlAKKy5UUCAKK1xmQkRpc3RyaWJ1dGlvbjpcZlBcZkkgdGFyZ2V0XC1kaXN0cmlidXRpb25cZlAKKy5UUCAKK1xmQlVyZ2VuY3k6XGZQXGZJIHVyZ2VuY3lcZlAKK1NlIHVzYSBsYSB1cmdlbmNpYSBt4XMgZWxldmFkYSBwcmVzZW50ZSBlbnRyZSB0b2RhcyBsYXMgZW50cmFkYXMgaW5jbHVpZGFzLgorLlRQIAorXGZCTWFpbnRhaW5lcjpcZlBcZkkgYXV0aG9yXGZQCisuVFAgCitcZkJEYXRlOlxmUFxmSSBkYXRlXGZQCisuVFAgCitcZkJDbG9zZXM6XGZQXGZJIGJ1Z1wtbnVtYmVyXGZQCitMb3MgY2FtcG9zIKtDbG9zZXO7IGRlIHRvZGFzIGxhcyBlbnRyYWRhcyBpbmNsdWlkYXMgc2UgZnVzaW9uYW4uCisuVFAgCitcZkJDaGFuZ2VzOlxmUFxmSSBjaGFuZ2Vsb2dcLWVudHJpZXNcZlAKK0VsIHRleHRvIGRlIHRvZGFzIGxhcyBlbnRyYWRhcyBkZWwgcmVnaXN0cm8gZGUgY2FtYmlvcyBzZSBlbmNhZGVuYS4gUGFyYSBxdWUKK+lzdG8gdGVuZ2EgdW4gZm9ybWF0byBkZSBjb250cm9sIG11bHRpXC1s7W5lYSBkZSBEZWJpYW4gduFsaWRvLCBsYXMgbO1uZWFzCit2YWPtYXMgc2UgcmVlbXBsYXphbiBwb3IgdW4gcmV0b3JubyBkZSBs7W5lYSwgeSBzZSBpbnNlcnRhIHVuIHNhbmdyYWRvIGRlIHVuCitjYXLhY3RlciBkZSBlc3BhY2lvIGVuIHRvZGFzIGxhcyBs7W5lYXMuIEVsIGNvbnRlbmlkbyBleGFjdG8gZGVwZW5kZSBkZWwKK2Zvcm1hdG8gZGVsIHJlZ2lzdHJvIGRlIGNhbWJpb3MuCisuUkUKKy5JUAorUHVlZGVuIHF1ZSBhcGFyZXpjYW4gY2FtcG9zIGFkaWNpb25hbGVzIGRlZmluaWRvcyBwb3IgZWwgdXN1YXJpby4KKy5JUAorRWwgZm9ybWF0byBcZkJyZmM4MjJcZlAgZW1wbGVhIGxvcyBtaXNtb3MgY2FtcG9zLCBwZXJvIGRldnVlbHZlIHBvciBsYSBzYWxpZGEKK3VuIHDhcnJhZm8gcG9yIGNhZGEgZW50cmFkYSBlbiBlbCByZWdpc3RybyBkZSBjYW1iaW9zLCBkZSBmb3JtYSBxdWUgc2UKK3ByZXNlcnZhbiBsb3MgbWV0YWRhdG9zIGRlIGNhZGEgZW50cmFkYS4KKy5UUCAKK1xmQlwtXC1zaW5jZVxmUCBcZkl2ZXJzafNuXGZQLCBcZkJcLXNcZlBcZkl2ZXJzafNuXGZQLFxmQiBcLXZcZlBcZkl2ZXJzafNuXGZQCitJbmNsdXllIHRvZG9zIGxvcyBjYW1iaW9zIHBvc3RlcmlvcmVzIGEgbGEgXGZJdmVyc2nzblxmUC4KKy5UUCAKK1xmQlwtXC11bnRpbFxmUCBcZkl2ZXJzafNuXGZQLCBcZkJcLXVcZlBcZkl2ZXJzafNuXGZQCitJbmNsdXllIHRvZG9zIGxvcyBjYW1iaW9zIGFudGVyaW9yZXMgYSBsYSBcZkl2ZXJzafNuXGZQLgorLlRQIAorXGZCXC1cLWZyb21cZlAgXGZJdmVyc2nzblxmUCwgXGZCXC1mXGZQXGZJdmVyc2nzblxmUAorSW5jbHV5ZSB0b2RvcyBsb3MgY2FtYmlvcyBwb3N0ZXJpb3JlcyBvIGRlIGxhIG1pc21hIFxmSXZlcnNp825cZlAuCisuVFAgCitcZkJcLVwtdG9cZlAgXGZJdmVyc2nzblxmUCwgXGZCXC10XGZQXGZJdmVyc2nzblxmUAorSW5jbHV5ZSB0b2RvcyBsb3MgY2FtYmlvcyBhbnRlcmlvcmVzIG8gZGUgbGEgbWlzbWEgXGZJdmVyc2nzblxmUC4KKy5UUCAKK1xmQlwtXC1jb3VudFxmUCBcZklu+m1lcm9cZlAsIFxmQlwtY1xmUFxmSW76bWVyb1xmUCwgXGZCXC1uXGZQXGZJbvptZXJvXGZQCitJbmNsdXllIHVuIFxmSW76bWVyb1xmUCBkZSBlbnRyYWRhcyBkZXNkZSBlbCBpbmljaW8gKG8gZWwgZmluYWwgZW4gY2FzbyBkZSBxdWUKK2VsIFxmSW76bWVyb1xmUCBzZWEgbWVub3IgcXVlIDApLgorLlRQIAorXGZCXC1cLW9mZnNldFxmUCBcZklu+m1lcm9cZlAsIFxmQlwtb1xmUFxmSW76bWVyb1xmUAorTW9kaWZpY2EgZWwgcHVudG8gZGUgaW5pY2lvIHBhcmEgq1wtXC1jb3VudLsgKGN1ZW50YSksIGVtcGV6YW5kbyBwb3IgZWwKK3ByaW5jaXBpbyAobyBlbCBmaW5hbCBzaSBlbCBcZklu+m1lcm9cZlAgZXMgbWVub3IgcXVlIDApLgorLlRQIAorXGZCXC1cLWFsbFxmUAorSW5jbHV5ZSB0b2RvcyBsb3MgY2FtYmlvcy4gTm90YTogb3RyYXMgb3BjaW9uZXMgbm8gdGVuZHLhbiBlZmVjdG8gY3VhbmRvCitlc3RhIGVzdOkgZW4gdXNvLgorLgorLlNIIEFEVkVSVEVOQ0lBUworVG9kYXMgbGFzIFxmQk9wY2lvbmVzIGRlIGFu4Wxpc2lzXGZQLCBhIGV4Y2VwY2nzbiBkZSCrXC12uywgc29uIGNvbXBhdGlibGVzIGEKK3BhcnRpciBkZSBsYSB2ZXJzafNuIDEuMTQuMTYgeSBwb3N0ZXJpb3JlcyBkZSBcZkJkcGtnXGZQLiBQdWVkZSBxdWUgbG9zCithbmFsaXphZG9yZXMgZGUgZm9ybWF0b3MgZGUgcmVnaXN0cm8gZGUgY2FtYmlvcyBhZGVt4XMgZGUgXGZJZGViaWFuXGZQIHkKK3Byb2NlZGVudGVzIGRlIG90cmFzIGZ1ZW50ZXMgbm8gYWNlcHRlbiB0b2RhcyBsYXMgb3BjaW9uZXMuCisuCisuU0ggRklDSEVST1MKKy5UUCAKK1xmQmRlYmlhbi9jaGFuZ2Vsb2dcZlAKK0VsIGZpY2hlcm8gZGUgcmVnaXN0cm8gZGUgY2FtYmlvcyBzZSB1c2EgcGFyYSBvYnRlbmVyIGluZm9ybWFjafNuCitkZXBlbmRpZW50ZSBkZSBsYSB2ZXJzafNuIGFjZXJjYSBkZWwgcGFxdWV0ZSBmdWVudGUsIGFz7SBjb21vIGxhIHVyZ2VuY2lhIHkKK2xhIGRpc3RyaWJ1Y2nzbiBkZSB1bmEgc3ViaWRhLCBsb3MgY2FtYmlvcyByZWFsaXphZG9zIGRlc2RlIHVuYSB2ZXJzafNuIGVuCitjb25jcmV0byB5IGVsIHByb3BpbyBu+m1lcm8gZGUgdmVyc2nzbiBkZSBsYSBmdWVudGUuCisuCisuU0ggQVVUT1JFUworQ29weXJpZ2h0IFwoY28gMTk5NVwtMTk5NiBJYW4gSmFja3NvbgorLmJyCitDb3B5cmlnaHQgXChjbyAyMDAwIFdpY2hlcnQgQWtrZXJtYW4KKy5icgorQ29weXJpZ2h0IFwoY28gMjAwNywgMjAwOCBGcmFuayBMaWNodGVuaGVsZAorLnNwCitFc3RvIGVzIHNvZnR3YXJlIGxpYnJlOyB2ZWEgbGEgdmVyc2nzbiAyIG8gcG9zdGVyaW9yIGRlIGxhIExpY2VuY2lhIFD6YmxpY2EKK0dlbmVyYWwgR05VIHBhcmEgY29uZGljaW9uZXMgZGUgY29waWEuIE5PIGhheSBuaW5ndW5hIGdhcmFudO1hLgorLlNIICJUUkFEVUNUT1IiCitSdWR5IEdvZG95IDxydWR5QGtlcm5lbFwtcGFuaWsub3JnPiwKK1J1YuluIFBvcnJhcyA8bmFob29AaW5pY2lhLmVzPiwKK0JydW5vIEJhcnJlcmEgQy4gPGJydW5vLmJhcnJlcmFAaWdsb28uY2w+LAorQ2FybG9zIEl6cXVpZXJkbyA8Z2hlZXNoQGVydGlzLm5ldD4sCitFc3RlYmFuIE1hbmNoYWRvIHkKK05PSy4KK0RlYmlhbiBMMTBuIFNwYW5pc2ggPGRlYmlhblwtbDEwblwtc3BhbmlzaEBsaXN0cy5kZWJpYW4ub3JnPi4KKy5icgorUmV2aXNpb25lcyBwb3IgU2FudGlhZ28gVmlsYSA8c2FudmlsYUB1bmV4LmVzPiwKK0phdmllciBGZXJu4W5kZXpcLVNhbmd1aW5vLCBSdWLpbiBQb3JyYXMsCitMdWlzIFVyaWJlIHkgT21hciBDYW1wYWduZS4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL2VzL2Rwa2ctcXVlcnkuMSBiL2Rwa2ctMS4xNi4xLjEvbWFuL2VzL2Rwa2ctcXVlcnkuMQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42YmY2Zjg0Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vZXMvZHBrZy1xdWVyeS4xCkBAIC0wLDAgKzEsMjM5IEBACisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkcGtnXC1xdWVyeSAxIDIwMTFcLTA4XC0xNCAiUHJveWVjdG8gRGViaWFuIiAiSGVycmFtaWVudGFzIGRlIGRwa2ciCisuU0ggTk9NQlJFCitkcGtnXC1xdWVyeSBcLSBVbmEgaGVycmFtaWVudGEgcGFyYSBjb25zdWx0YXIgbGEgYmFzZSBkZSBkYXRvcyBkZSBkcGtnCisuCisuU0ggU0lOT1BTSVMKK1xmQmRwa2dcLXF1ZXJ5XGZQIFtcZklvcGNp825cZlAuLi5dIFxmSW9yZGVuXGZQCisuCisuU0ggREVTQ1JJUENJ004KK1xmQmRwa2dcLXF1ZXJ5XGZQIGVzIHVuYSBoZXJyYW1pZW50YSBxdWUgbXVlc3RyYSBpbmZvcm1hY2nzbiBzb2JyZSBwYXF1ZXRlcworbGlzdGFkb3MgZW4gbGEgYmFzZSBkZSBkYXRvcyBkZSBcZkJkcGtnXGZQLgorLgorLlNIINNSREVORVMKKy5UUCAKK1xmQlwtbFxmUCwgXGZCXC1cLWxpc3RcZlAgW1xmSXBhY2thZ2VcLW5hbWVcLXBhdHRlcm5cZlAuLi5dCitMaXN0YSBsb3MgcGFxdWV0ZXMgcXVlIGVuY2FqYW4gY29uIGVsIHBhdHLzbiBkYWRvLiBTaSBubyBzZSBlbnRyZWdhIHVuCitcZklwYXRy825cLW5vbWJyZVwtcGFxdWV0ZVxmUCwgbGlzdGEgbG9zIHBhcXVldGVzIGVuIFxmSS92YXIvbGliL2Rwa2cvc3RhdHVzXGZQLAorZXhjbHV5ZW5kbyBhcXVlbGxvcyBtYXJjYWRvcyBjb21vIG5vIGluc3RhbGFkb3MgKGVzdG8gZXMsIGFxdWVsbG9zCitwcmV2aWFtZW50ZSBwdXJnYWRvcykuIFB1ZWRlIHVzYXIgbG9zIGNvbW9kaW5lcyBoYWJpdHVhbGVzIGRlbCBpbnTpcnByZXRlIGRlCivzcmRlbmVzIGVuIGVsIFxmSXBhdHLzblwtbm9tYnJlXC1wYXF1ZXRlXGZQLiBUZW5nYSBlbiBjdWVudGEgcXVlIHBvc2libGVtZW50ZQordGVuZ2EgcXVlIGVudHJlY29taWxsYXIgXGZJcGF0cvNuXC1ub21icmVcLXBhcXVldGVcZlAgcGFyYSBldml0YXIgcXVlIGVsCitpbnTpcnByZXRlIHJlYWxpY2UgdW5hIGV4cGFuc2nzbiBkZWwgbm9tYnJlIGRlbCBmaWNoZXJvLiBQb3IgZWplbXBsbywgbG8KK3NpZ3VpZW50ZSBsaXN0YSB0b2RvcyBsb3MgcGFxdWV0ZXMgcXVlIGVtcGllemFuIGNvbiCrbGliYza7LgorCisubmYKKyAgXGZCZHBrZ1wtcXVlcnkgXC1sIFwoYXFsaWJjNipcKGFxXGZQCisuZmkKKworTGFzIHRyZXMgcHJpbWVyYXMgY29sdW1uYXMgZGUgbGEgc2FsaWRhIG11ZXN0cmFuIGxhIGFjY2nzbiBkZXNlYWRhLCBlbAorZXN0YWRvIGRlbCBwYXF1ZXRlIGFz7SBjb21vIGVycm9yZXMsIGVuIGVzdGUgb3JkZW4uCisKK0FjY2nzbiBkZXNlYWRhOgorLm5mCisgIHUgPSBEZXNjb25vY2lkYQorICBpID0gSW5zdGFsYXIKKyAgaCA9IFJldGVuZXIKKyAgciA9IEVsaW1pbmFyCisgIHAgPSBQdXJnYXIKKy5maQorCitFc3RhZG8gZGVsIHBhcXVldGUKKy5uZgorICBuID0gTm8gaW5zdGFsYWRvCisgIGMgPSBGaWNoZXJvcyBkZSBjb25maWd1cmFjafNuCisgIEggPSBQYXJjaWFsbWVudGUgaW5zdGFsYWRvCisgIFUgPSBEZXNlbXBhcXVldGFkbworICBGID0gUGFyY2lhbG1lbnRlIGNvbmZpZ3VyYWRvCisgIFcgPSBEaXNwYXJhZG9yZXMgZXNwZXJhbmRvCisgIHQgPSBEaXNwYXJhZG9yZXMgcGVuZGllbnRlcworICBpID0gSW5zdGFsYWRvCisuZmkKKworTWFyY2FzIGRlIGVycm9yOgorLm5mCisgIDxlbXB0eT4gPSAobm9uZSkKKyAgUiA9IFJlaW5zdFwtcmVxdWlyZWQKKy5maQorCitVbiBlc3RhZG8gY29uIG1hefpzY3VsYSBvIHVuYSBsZXRyYSBkZSBlcnJvciBpbmRpY2EgcXVlIGVzIHBvc2libGUgcXVlIGVsCitjYXVzZSBwcm9ibGVtYXMgc2VyaW9zLiBQYXJhIG3hcyBpbmZvcm1hY2nzbiBhY2VyY2EgZGUgbG9zIGVzdGFkb3MgeSBtYXJjYXMKK2NvbnN1bHRlIFxmQmRwa2dcZlAoMSkuCisKK0VsIGZvcm1hdG8gZGUgbGEgc2FsaWRhIGRlIGVzdGEgb3BjafNuIG5vIHNlIHB1ZWRlIG1vZGlmaWNhciwgcGVybyB2YXLtYQorYXV0b23hdGljYW1lbnRlIHBhcmEgZW5jYWphciBlbCBhbmNobyBkZSBsYSB0ZXJtaW5hbC4gRXN0byBzZSBoYWNlIHBhcmEKK2xlY3RvcmVzIGh1bWFub3MsIHBlcm8gbm8gZmFjaWxpdGEgc3UgbGVjdHVyYSBwb3IgZWwgc2lzdGVtYS4gQ29uc3VsdGUgXGZCXC1XXGZQCisoXGZCXC1cLXNob3dcZlApIHkgXGZCXC1cLXNob3dmb3JtYXRcZlAgIHBhcmEgdmVyIHVuYSBtYW5lcmEgZGUgY29uZmlndXJhciBlbCBmb3JtYXRvCitkZSBsYSBzYWxpZGEuCisuVFAgCitcZkJcLVdcZlAsIFxmQlwtXC1zaG93XGZQIFtcZklwYWNrYWdlXC1uYW1lXC1wYXR0ZXJuXGZQLi4uXQorQWwgaWd1YWwgcXVlIGxhIG9wY2nzbiBcZkJcLVwtbGlzdFxmUCwgZXN0byBsaXN0YSB0b2RvcyBsb3MgcGFxdWV0ZXMgcXVlIGVuY2FqYW4KK2NvbiBlbCBwYXRy824gZGFkby4gUG9yIG90cmEgcGFydGUsIHB1ZWRlIGNvbmZpZ3VyYXIgbGEgc2FsaWRhIHVzYW5kbyBsYQorb3BjafNuIFxmQlwtXC1zaG93Zm9ybWF0XGZQLiBFbCBmb3JtYXRvIHByZWRlZmluaWRvIGRlIGxhIHNhbGlkYSBkYSB1bmEgbO1uZWEgcG9yCitjYWRhIHBhcXVldGUgcXVlIGVuY2FqZSwgbW9zdHJhbmRvIGVsIG5vbWJyZSB5IGxhIHZlcnNp824gaW5zdGFsYWRhLCB5CitzZXBhcmFkb3MgcG9yIHVuYSB0YWJ1bGFjafNuLgorLlRQIAorXGZCXC1zXGZQLCBcZkJcLVwtc3RhdHVzXGZQIFxmSW5vbWJyZVwtcGFxdWV0ZVxmUC4uLgorUmVwb3J0IHN0YXR1cyBvZiBzcGVjaWZpZWQgcGFja2FnZS4gVGhpcyBqdXN0IGRpc3BsYXlzIHRoZSBlbnRyeSBpbiB0aGUKK2luc3RhbGxlZCBwYWNrYWdlIHN0YXR1cyBkYXRhYmFzZS4gV2hlbiBtdWx0aXBsZSBcZklwYWNrYWdlXC1uYW1lXGZQIGFyZSBsaXN0ZWQsCit0aGUgcmVxdWVzdGVkIHN0YXR1cyBlbnRyaWVzIGFyZSBzZXBhcmF0ZWQgYnkgYW4gZW1wdHkgbGluZS4KKy5UUCAKK1xmQlwtTFxmUCwgXGZCXC1cLWxpc3RmaWxlc1xmUCBcZklub21icmVcLXBhcXVldGVcZlAuLi4KK0xpc3QgZmlsZXMgaW5zdGFsbGVkIHRvIHlvdXIgc3lzdGVtIGZyb20gXGZJcGFja2FnZVwtbmFtZVxmUC4gV2hlbiBtdWx0aXBsZQorXGZJcGFja2FnZVwtbmFtZVxmUCBhcmUgbGlzdGVkLCB0aGUgcmVxdWVzdGVkIGxpc3RzIG9mIGZpbGVzIGFyZSBzZXBhcmF0ZWQgYnkgYW4KK2VtcHR5IGxpbmUuIEhvd2V2ZXIsIG5vdGUgdGhhdCBmaWxlcyBjcmVhdGVkIGJ5IHBhY2thZ2VcLXNwZWNpZmljCitpbnN0YWxsYXRpb25cLXNjcmlwdHMgYXJlIG5vdCBsaXN0ZWQuCisuVFAgCitcZkJcLWNcZlAsIFxmQlwtXC1jb250cm9sXC1wYXRoXGZQIFxmSW5vbWJyZVwtcGFxdWV0ZVxmUCBbXGZJZmljaGVyb1wtY29udHJvbFxmUF0KK0xpc3RhIGxhcyBydXRhcyBkZSBsb3MgZmljaGVyb3MgZGUgY29udHJvbCBkZSBcZklub21icmVcLXBhcXVldGVcZlAgaW5zdGFsYWRvcworZW4gZWwgc2lzdGVtYS4gU2kgc2UgZGVmaW5lIFxmSWZpY2hlcm9cLWNvbnRyb2xcZlAsIHPzbG8gc2UgbW9zdHJhcuEgbGEgcnV0YSBkZQorZXNlIGZpY2hlcm8gZGUgY29udHJvbC4gXGZCQWR2ZXJ0ZW5jaWFcZlA6IGVzdGEgb3JkZW4gZXMgc2VtaVwtcPpibGljYSwgeSBz82xvCitzZSBkZWJlcu1hIHVzYXIgY29tbyBsYSD6bHRpbWEgc29sdWNp824geSBlbiBjYXNvIGRlIG5vIGRpc3BvbmVyIGRlIG5pbmd1bmEKK290cmEgaW50ZXJmYXouIFB1ZWRlIHF1ZSBxdWVkZSBvYnNvbGV0byBlbiBlbCBmdXR1cm8gZW4gY2FzbyBkZSBhcGFyZWNlcgorbWVqb3JlcyBpbnRlcmZhY2VzLCBvIHNpIHNlIHNvbHVjaW9uYW4gbGFzIGRlZmljaWVuY2lhcyBhY3R1YWxlcyBkZSBzdQorYXJxdWl0ZWN0dXJhLgorLlRQIAorXGZCXC1TXGZQLCBcZkJcLVwtc2VhcmNoXGZQIFxmSXBhdHLzblwtYvpzcXVlZGFcLWZpY2hlcm9cZlAuLi4KK1NlYXJjaCBmb3IgcGFja2FnZXMgdGhhdCBvd24gZmlsZXMgY29ycmVzcG9uZGluZyB0byB0aGUgZ2l2ZW4gcGF0dGVybi4KK1N0YW5kYXJkIHNoZWxsIHdpbGRjaGFycyBjYW4gYmUgdXNlZCBpbiB0aGUgcGF0dGVybi4gIFRoaXMgY29tbWFuZCB3aWxsIG5vdAorbGlzdCBleHRyYSBmaWxlcyBjcmVhdGVkIGJ5IG1haW50YWluZXIgc2NyaXB0cywgbm9yIHdpbGwgaXQgbGlzdAorYWx0ZXJuYXRpdmVzLgorLlRQIAorXGZCXC1wXGZQLCBcZkJcLVwtcHJpbnRcLWF2YWlsXGZQIFxmSW5vbWJyZVwtcGFxdWV0ZVxmUC4uLgorRGlzcGxheSBkZXRhaWxzIGFib3V0IFxmSXBhY2thZ2VcLW5hbWVcZlAsIGFzIGZvdW5kIGluCitcZkkvdmFyL2xpYi9kcGtnL2F2YWlsYWJsZVxmUC4gV2hlbiBtdWx0aXBsZSBcZklwYWNrYWdlXC1uYW1lXGZQIGFyZSBsaXN0ZWQsIHRoZQorcmVxdWVzdGVkIFxmSWF2YWlsYWJsZVxmUCBlbnRyaWVzIGFyZSBzZXBhcmF0ZWQgYnkgYW4gZW1wdHkgbGluZS4KKworVXNlcnMgb2YgQVBUXC1iYXNlZCBmcm9udGVuZHMgc2hvdWxkIHVzZSBcZkJhcHRcLWNhY2hlIHNob3dcZlAgXGZJcGFja2FnZVwtbmFtZVxmUAoraW5zdGVhZCBhcyB0aGUgXGZJYXZhaWxhYmxlXGZQIGZpbGUgaXMgb25seSBrZXB0IHVwXC10b1wtZGF0ZSB3aGVuIHVzaW5nCitcZkJkc2VsZWN0XGZQLgorLlRQIAorXGZCXC1oXGZQLCBcZkJcLVwtaGVscFxmUAorTXVlc3RyYSBlbCBtb2RvIGRlIHVzbyB5IHRlcm1pbmEuCisuVFAgCitcZkJcLVwtdmVyc2lvblxmUAorTXVlc3RyYSBsYSB2ZXJzafNuIHkgdGVybWluYS4KKy4KKy5TSCBPUENJT05FUworLlRQIAorXGZCXC1cLWFkbWluZGlyPVxmUFxmSWRpcmVjdG9yaW9cZlAKK0NhbWJpYSBlbCBkaXJlY3RvcmlvIGNvbiBsYSBiYXNlIGRlIGRhdG9zIGRlIFxmQmRwa2dcZlAuIFBvciBvbWlzafNuIGVzCitcZkkvdmFyL2xpYi9kcGtnXGZQLgorLlRQIAorXGZCXC1mXGZQLCBcZkJcLVwtc2hvd2Zvcm1hdD1cZlBcZklmb3JtYXRvXGZQCitFc3RhIG9wY2nzbiBzaXJ2ZSBwYXJhIGVzcGVjaWZpY2FyIGVsIGZvcm1hdG8gZGUgbGEgc2FsaWRhIHF1ZSBcZkJcLVwtc2hvd1xmUAorcHJvZHVjaXLhLiBFbCBmb3JtYXRvIGVzIHVuYSBjYWRlbmEgcXVlIHNlcuEgbGEgc2FsaWRhIGRlIGNhZGEgcGFxdWV0ZQorbGlzdGFkby4KKworRW4gbGEgY2FkZW5hIGRlIGZvcm1hdG8sIFwobHFcZkJcZVxmUFwocnEgaW50cm9kdWNlIGVzY2FwZXM6CisKKy5uZgorICAgIFxmQlxlblxmUCAgbnVldmEgbO1uZWEKKyAgICBcZkJcZXJcZlAgIHJldG9ybm8gZGUgbO1uZWEKKyAgICBcZkJcZXRcZlAgIHRhYnVsYWNp824KKy5maQorCitcKGxxXGZCXGVcZlBcKHJxIHBvc2ljaW9uYWRvIGFudGVzIGRlIGN1YWxxdWllciBvdHJvIGNhcuFjdGVyIHN1cHJpbWUgY3VhbHF1aWVyCitzaWduaWZpY2FkbyBlc3BlY2lhbCBxdWUgcHVlZGUgdGVuZXIgZWwgc2lndWllbnRlIGNhcuFjdGVyLCD6dGlsIHBhcmEKK1wobHFcZkJcZVxmUFwocnEgYW5kIFwobHFcZkIkXGZQXChycS4KKworUHVlZGUgaW5jbHVpciBpbmZvcm1hY2nzbiBkZWwgcGFxdWV0ZSBpbnNlcnRhbmRvIHZhcmlhYmxlcyBkZSByZWZlcmVuY2lhIGEKK2xvcyBjYW1wb3MgZGVsIHBhcXVldGUgdXNhbmRvIGxhIHNpbnRheGlzCitcKGxxXGZCJHtcZlBcZklmaWVsZFxmUFtcZkI7XGZQXGZJd2lkdGhcZlBdXGZCfVxmUFwocnEuIExvcyBjYW1wb3Mgc2UgYWxpbmVhbiBhIGxhIGRlcmVjaGEKK2EgbWVub3MgcXVlIGVsIGFuY2hvIHNlYSBuZWdhdGl2bywgZW4gY3V5byBjYXNvIHNlIGFsaW5lYW4gYSBsYQoraXpxdWllcmRhLiBMb3Mgc2lndWllbnRlcyBcZkljYW1wb3NcZlAgc2UgcmVjb25vY2VuIHBlcm8gbm8gZXN04W4gc2llbXByZQorZGlzcG9uaWJsZXMgZW4gZWwgZmljaGVybyBkZSBlc3RhZG8gKHPzbG8gc2UgZ3VhcmRhbiBsb3MgY2FtcG9zIGludGVybm9zIG8KK2NhbXBvcyBjb250ZW5pZG9zIGVuIGVsIHBhcXVldGUgYmluYXJpbyk6CisKKy5uZgorICAgIFxmQkFyY2hpdGVjdHVyZVxmUAorICAgIFxmQkJ1Z3NcZlAKKyAgICBcZkJDb25mZmlsZXNcZlAgKGludGVybmFsKQorICAgIFxmQkNvbmZpZ1wtVmVyc2lvblxmUCAoaW50ZXJuYWwpCisgICAgXGZCQ29uZmxpY3RzXGZQCisgICAgXGZCQnJlYWtzXGZQCisgICAgXGZCRGVwZW5kc1xmUAorICAgIFxmQkRlc2NyaXB0aW9uXGZQCisgICAgXGZCRW5oYW5jZXNcZlAKKyAgICBcZkJFc3NlbnRpYWxcZlAKKyAgICBcZkJGaWxlbmFtZVxmUCAoaW50ZXJuYWwsIGZyb250XC1lbmQgcmVsYXRlZCkKKyAgICBcZkJIb21lcGFnZVxmUAorICAgIFxmQkluc3RhbGxlZFwtU2l6ZVxmUAorICAgIFxmQk1ENXN1bVxmUCAoaW50ZXJuYWwsIGZyb250XC1lbmQgcmVsYXRlZCkKKyAgICBcZkJNU0RPU1wtRmlsZW5hbWVcZlAgKGludGVybmFsLCBmcm9udFwtZW5kIHJlbGF0ZWQpCisgICAgXGZCTWFpbnRhaW5lclxmUAorICAgIFxmQk9yaWdpblxmUAorICAgIFxmQlBhY2thZ2VcZlAKKyAgICBcZkJQcmVcLURlcGVuZHNcZlAKKyAgICBcZkJQcmlvcml0eVxmUAorICAgIFxmQlByb3ZpZGVzXGZQCisgICAgXGZCUmVjb21tZW5kc1xmUAorICAgIFxmQlJlcGxhY2VzXGZQCisgICAgXGZCUmV2aXNpb25cZlAgKG9ic29sZXRlKQorICAgIFxmQlNlY3Rpb25cZlAKKyAgICBcZkJTaXplXGZQIChpbnRlcm5hbCwgZnJvbnRcLWVuZCByZWxhdGVkKQorICAgIFxmQlNvdXJjZVxmUAorICAgIFxmQlN0YXR1c1xmUCAoaW50ZXJuYWwpCisgICAgXGZCU3VnZ2VzdHNcZlAKKyAgICBcZkJUYWdcZlAgKHVzdWFsbHkgbm90IGluIHRoZSAuZGViIGJ1dCBpbiB0aGUgcmVwb3NpdG9yeSBQYWNrYWdlcyBmaWxlcykKKyAgICBcZkJUcmlnZ2Vyc1wtQXdhaXRlZFxmUCAoaW50ZXJuYWwpCisgICAgXGZCVHJpZ2dlcnNcLVBlbmRpbmdcZlAgKGludGVybmFsKQorICAgIFxmQlZlcnNpb25cZlAKKy5maQorCitMYSBjYWRlbmEgZGUgZm9ybWF0byBwb3Igb21pc2nzbiBlcworXChscVxmQiR7UGFja2FnZX1cZXQke1ZlcnNpb259XGVuXGZQXChycS4gRW4gcmVhbGlkYWQsIHB1ZWRlIGNvbnN1bHRhciB0b2RvcworbG9zIGNhbXBvcyBjb250ZW5pZG9zIGVuIGVsIGZpY2hlcm8gZGUgZXN0YWRvIChwb3IgZWplbXBsbywgZXRpcXVldGFzIGRlCit1c3VhcmlvKS4gQXBhcmVjZXLhbiCrdGFsIGN1YWy7LCBzaW4gY29udmVyc2nzbiBvIHJldmlzafNuIGRlIGZhbGxvcy4gUGFyYQorb2J0ZW5lciBlbCBub21icmUgZGVsIHJlc3BvbnNhYmxlIGRlIGRwa2cgeSBsYSB2ZXJzafNuIGluc3RhbGFkYSBlamVjdXRlIGxvCitzaWd1aWVudGU6CisKKy5uZgorICBcZkJkcGtnXC1xdWVyeSBcLVcgXC1mPVwoYXEke1BhY2thZ2V9ICR7VmVyc2lvbn1cZXQke01haW50YWluZXJ9XGVuXChhcSBkcGtnXGZQCisuZmkKKy4KKy5TSCAiRVNUQURPUyBERSBTQUxJREEiCisuVFAgCitcZkIwXGZQCitMYSBjb25zdWx0YSByZXF1ZXJpZGEgc2UgZWplY3V08yBjb24g6XhpdG8uCisuVFAgCitcZkIxXGZQCitTZSBoYW4gZGV0ZWN0YWRvIHByb2JsZW1hcyBhbmFsaXphbmRvIGxhIGztbmVhIGRlIPNyZGVuZXMgbyByZWFsaXphbmRvIGxhCitjb25zdWx0YSByZXF1ZXJpZGEsIGFkZW3hcyBkZSBxdWUgbm8gc2UgaGFuIGVuY29udHJhZG8gbmluZ/puIGZpY2hlcm8gbworcGFxdWV0ZSAoYSBleGNlcGNp824gZGUgq1wtXC1jb250cm9sXC1wYXRouykuCisuCisuU0ggRU5UT1JOTworLlRQIAorXGZCRFBLR19BRE1JTkRJUlxmUAorSWYgc2V0IGFuZCB0aGUgXGZCXC1cLWFkbWluZGlyXGZQIG9wdGlvbiBoYXMgbm90IGJlZW4gc3BlY2lmaWVkLCBpdCB3aWxsIGJlIHVzZWQKK2FzIHRoZSBkcGtnIGRhdGEgZGlyZWN0b3J5LgorLlRQIAorXGZCQ09MVU1OU1xmUAorRXN0YSBvcGNp824gaW5mbHVlbmNpYSBsYSBzYWxpZGEgZGUgXGZCXC1cLWxpc3RcZlAgYWwgbW9kaWZpY2FyIGVsIGFuY2hvIGRlIGxhCitzYWxpZGEuCisuCisuU0ggQVVUT1IKK0NvcHlyaWdodCBcKGNvIDIwMDEgV2ljaGVydCBBa2tlcm1hbgorLnNwCitFc3RvIGVzIHNvZnR3YXJlIGxpYnJlOyB2ZWEgbGEgdmVyc2nzbiAyIG8gcG9zdGVyaW9yIGRlIGxhIExpY2VuY2lhIFD6YmxpY2EKK0dlbmVyYWwgR05VIHBhcmEgY29uZGljaW9uZXMgZGUgY29waWEuIE5PIGhheSBuaW5ndW5hIGdhcmFudO1hLgorLgorLlNIICJWyUFTRSBUQU1CSclOIgorXGZCZHBrZ1xmUCgxKS4KKworLlNIICJUUkFEVUNUT1IiCitSdWR5IEdvZG95IDxydWR5QGtlcm5lbFwtcGFuaWsub3JnPiwKK1J1YuluIFBvcnJhcyA8bmFob29AaW5pY2lhLmVzPiwKK0JydW5vIEJhcnJlcmEgQy4gPGJydW5vLmJhcnJlcmFAaWdsb28uY2w+LAorQ2FybG9zIEl6cXVpZXJkbyA8Z2hlZXNoQGVydGlzLm5ldD4sCitFc3RlYmFuIE1hbmNoYWRvIHkKK05PSy4KK0RlYmlhbiBMMTBuIFNwYW5pc2ggPGRlYmlhblwtbDEwblwtc3BhbmlzaEBsaXN0cy5kZWJpYW4ub3JnPi4KKy5icgorUmV2aXNpb25lcyBwb3IgU2FudGlhZ28gVmlsYSA8c2FudmlsYUB1bmV4LmVzPiwKK0phdmllciBGZXJu4W5kZXpcLVNhbmd1aW5vLCBSdWLpbiBQb3JyYXMsCitMdWlzIFVyaWJlIHkgT21hciBDYW1wYWduZS4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL2VzL2Rwa2ctc2NhbnBhY2thZ2VzLjEgYi9kcGtnLTEuMTYuMS4xL21hbi9lcy9kcGtnLXNjYW5wYWNrYWdlcy4xCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjk1YjNlNjUKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9lcy9kcGtnLXNjYW5wYWNrYWdlcy4xCkBAIC0wLDAgKzEsMTEwIEBACisuXCIgQ29weXJpZ2h0IMKpIDE5OTYgTWljaGFlbCBTaGllbGRzIDxzaGllbGRzQGNyb3NzbGluay5uZXQ+CisuXCIgVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgbWF5IHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisuXCIgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKy5cIiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorLlwiIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisuXCIKKy5cIiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisuXCIgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKy5cIiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisuXCIgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKy5cIgorLlwiIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisuXCIgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkcGtnXC1zY2FucGFja2FnZXMgMSAyMDExXC0wOFwtMTQgIlByb3llY3RvIERlYmlhbiIgIkhlcnJhbWllbnRhcyBkZSBkcGtnIgorLlNIIE5PTUJSRQorZHBrZ1wtc2NhbnBhY2thZ2VzIFwtIENyZWFjafNuIGRlIGZpY2hlcm9zIGRlIO1uZGljZSCrUGFja2FnZXO7CisuCisuU0ggU0lOT1BTSVMKK1xmQmRwa2dcLXNjYW5wYWNrYWdlc1xmUCBbXGZJb3B0aW9uXGZQLi4uXSBcZkliaW5hcnlcLWRpclxmUCBbXGZJb3ZlcnJpZGVcLWZpbGVcZlAKK1tcZklwYXRoXC1wcmVmaXhcZlBdXSBcZkI+XGZQIFxmSVBhY2thZ2VzXGZQCisuCisuU0ggREVTQ1JJUENJ004KK1xmQmRwa2dcLXNjYW5wYWNrYWdlc1xmUCBidXNjYSBwYXF1ZXRlcyBiaW5hcmlvcyBkZSBEZWJpYW4gZW4gdW4g4XJib2wgZGUKK2RpcmVjdG9yaW9zLCBjcmVhbmRvIHVuIGZpY2hlcm8gq1BhY2thZ2VzuyB1c2FkbyBwb3IgXGZCZHNlbGVjdFxmUCg4KSB5IG90cm9zCitwYXJhIG1vc3RyYXIgYWwgdXN1YXJpbyBsb3MgcGFxdWV0ZXMgZGlzcG9uaWJsZXMgcGFyYSBzdSBpbnN0YWxhY2nzbi4gRXN0b3MKK2ZpY2hlcm9zIKtQYWNrYWdlc7sgc29uIGlk6W50aWNvcyBhIGxvcyBwcmVzZW50ZXMgZW4gbG9zIGFyY2hpdm9zIGRlIERlYmlhbgorZW4gSW50ZXJuZXQgbyBlbiBsb3MgZGlzY29zIPNwdGljb3MuIFxmQmRwa2dcLXNjYW5wYWNrYWdlc1xmUCBzZSBwdWVkZSB1c2FyIHBhcmEKK2NyZWFyIHVuIGRpcmVjdG9yaW8gbG9jYWwgY29uIHBhcXVldGVzIGEgaW5zdGFsYXIgZW4gdW5hIG8gdmFyaWFzIG3hcXVpbmFzLgorLlBQCitcZkJOb3RhOlxmUCBTaSBkZXNlYSBhY2NlZGVyIGFsIGZpY2hlcm8gq1BhY2thZ2VzuyBnZW5lcmFkbyBtZWRpYW50ZSBcZkJhcHRcZlAsCitwb3NpYmxlbWVudGUgbmVjZXNpdGUgY29tcHJpbWlyIGVsIGZpY2hlcm8gY29uIFxmQmJ6aXBcZlAoMSksIGdlbmVyYW5kbyB1bgorZmljaGVybyCrUGFja2FnZXMuYnoyuywgbyBcZkJnemlwXGZQKDEpLCBxdWUgZ2VuZXJhcu1hIHVuIGZpY2hlcm8KK6tQYWNrYWdlcy5nersuIGFwdCBpZ25vcmEgbG9zIGZpY2hlcm9zIKtQYWNrYWdlc7sgZGVzY29tcHJpbWlkb3MsIGEKK2V4Y2VwY2nzbiBkZSBsb3MgZmljaGVyb3MgbG9jYWxlcyAocG9yIGVqZW1wbG8sIFxmQmZpbGU6Ly9cZlAgc291cmNlcykuCisuUFAKK1xmSWRpcmVjdG9yaW9cLWJpbmFyaW9cZlAgZXMgZWwgbm9tYnJlIGRlbCDhcmJvbCBkZSBkaXJlY3RvcmlvcyBxdWUgY29udGllbmUgbG9zCitwYXF1ZXRlcyBiaW5hcmlvcyAgYSBwcm9jZXNhciAocG9yIGVqZW1wbG8sIFxmQmNvbnRyaWIvYmluYXJ5XC1pMzg2XGZQKS4gU2UKK3JlY29taWVuZGEgcXVlIGVzdGUgZGlyZWN0b3JpbyBzZWEgcmVsYXRpdm8gYWwgZGlyZWN0b3JpbyBwcmluY2lwYWwgZGVsCithcmNoaXZvIGRlIERlYmlhbiwgeWEgcXVlIHRvZG8gZmljaGVybyBsaXN0YWRvIGVuIGVsIG51ZXZvIGZpY2hlcm8KK6tQYWNrYWdlc7sgZW1wZXphcuEgcG9yIGVzdGEgY2FkZW5hIGRlIGNhcmFjdGVyZXMuCisuUFAKK1xmSWZpY2hlcm9cLW92ZXJyaWRlXGZQIGVzIGVsIG5vbWJyZSBkZWwgZmljaGVybyBxdWUgY29udGllbmUgaW5mb3JtYWNp824gYWNlcmNhCitkZSBj821vIHNlIGluc3RhbGFuIGxvcyBwYXF1ZXRlcyBlbiBsYSBkaXN0cmlidWNp824gKHB1ZWRlIHNlciB1biBmaWNoZXJvCitjb21wcmltaWRvKTsgY29uc3VsdGUgXGZCZGViXC1vdmVycmlkZVxmUCg1KS4KKy5QUAorXGZJcHJlZmlqb1wtcnV0YVxmUCBlcyB1bmEgY2FkZW5hIG9wY2lvbmFsIHF1ZSBzZSBhbnRlcG9uZHLhIGEgbG9zIGNhbXBvcworq0ZpbGVuYW1luy4KKy5QUAorRW4gY2FzbyBkZSBleGlzdGlyIG3hcyBkZSB1bmEgdmVyc2nzbiBkZSB1biBwYXF1ZXRlLCBz82xvIHNlIG1vc3RyYXLhIGxhCiv6bHRpbWEgcG9yIGxhIHNhbGlkYS4gU2kgY29tcGFydGVuIGxhIG1pc21hIHZlcnNp824gcGVybyBkaWZpZXJlbiBlbiBsYQorYXJxdWl0ZWN0dXJhLCBz82xvIHNlIHVzYXLhIGVsIHByaW1lcm8uCisuCisuU0ggT1BDSU9ORVMKKy5UUCAKK1xmQlwtdFxmUCwgXGZCXC1cLXR5cGVcZlAgXGZJdGlwb1xmUAorQnVzY2EgcGFxdWV0ZXMgqyouXGZJdGlwb1xmULsgZW4gdmV6IGRlIKsqLmRlYrsuCisuVFAgCitcZkJcLXVcZlAsIFxmQlwtXC11ZGViXGZQCitBbGlhcyBcZkJvYnNvbGV0b1xmUCBwYXJhIFxmQlwtdHVkZWJcZlAuCisuVFAgCitcZkJcLWVcZlAsIFxmQlwtXC1leHRyYVwtb3ZlcnJpZGVcZlAgXGZJZmljaGVyb1xmUAorQW5hbGl6YSBlbCBcZklmaWNoZXJvXGZQIHBhcmEgZW5jb250cmFyIGFsdGVybmF0aXZhcyBhZGljaW9uYWxlcyAoZWwgZmljaGVybworcHVlZGUgZXN0YXIgZGVzY29tcHJpbWlkbykuIENvbnN1bHRlIFxmQmRlYlwtZXh0cmFcLW92ZXJyaWRlXGZQKDUpIHBhcmEgbeFzCitpbmZvcm1hY2nzbiBhY2VyY2EgZGVsIGZvcm1hdG8uCisuVFAgCitcZkJcLWFcZlAsIFxmQlwtXC1hcmNoXGZQIFxmSWFycXVpdGVjdHVyYVxmUAorVXNhIHVuIHBhdHLzbiBxdWUgY29uc2lzdGUgZGUgXGZJKl9hbGwuZGViXGZQIHkgXGZJKl9hcmNoLmRlYlxmUCwgZW4gbHVnYXIgZGUKK2J1c2NhciB0b2RvcyBsb3Mgqy5kZWK7LgorLlRQIAorXGZCXC1tXGZQLCBcZkJcLVwtbXVsdGl2ZXJzaW9uXGZQCitJbmNsdXllIGVuIGxhIHNhbGlkYSB0b2RvcyBsb3MgcGFxdWV0ZXMgZW5jb250cmFkb3MuCisuVFAgCitcZkJcLU1cZlAsIFxmQlwtXC1tZWRpdW1cZlAgXGZJY2FkZW5hXC1pZGVudGlmaWNhY2nzblxmUAorQfFhZGUgdW4gY2FtcG8gq1hcLU1lZGl1bbssIHF1ZSBjb25zaXN0ZSBkZWwgdmFsb3IgZGUgbGEKK1xmSWNhZGVuYVwtaWRlbnRpZmljYWNp825cZlAuIEVzdGUgY2FtcG8gZXMgbmVjZXNhcmlvIHNpIGRlc2VhIGdlbmVyYXIgZmljaGVyb3MKK1xmQlBhY2thZ2VzLmNkXGZQIHBhcmEgc3UgdXNvIGEgdHJhdulzIGRlbCBt6XRvZG8gq211bHRpY2S7IGRlIGRzZWxlY3QuCisuVFAgCitcZkJcLWhcZlAsIFxmQlwtXC1oZWxwXGZQCitNdWVzdHJhIGVsIG1vZG8gZGUgdXNvIHkgdGVybWluYS4KKy5UUCAKK1xmQlwtXC12ZXJzaW9uXGZQCitNdWVzdHJhIGxhIHZlcnNp824geSB0ZXJtaW5hLgorLgorLlNIIERJQUdO01NUSUNPUworXGZCZHBrZ1wtc2NhbnBhY2thZ2VzXGZQIGRldnVlbHZlIGxvcyBlcnJvcmVzIGF1dG9cLWV4cGxpY2F0aXZvcworaGFiaXR1YWxlcy4gQWRlbeFzLCBnZW5lcmEgYXZpc29zIHNvYnJlIHBhcXVldGVzIHByZXNlbnRlcyBlbiB1bgorc3ViZGlyZWN0b3JpbyBlcXVpdm9jYWRvLCBkdXBsaWNhZG9zLCBxdWUgdGllbmVuIHVuIGNhbXBvIKtGaWxlbmFtZbsgZW4gc3UKK2ZpY2hlcm8gZGUgY29udHJvbCwgbm8gYXBhcmVjZW4gZW4gZWwgZmljaGVybyBkZSBhbnVsYWNp824sIG8gcXVlIGNvbnRpZW5lbgorYWxndW5hIHN1c3RpdHVjafNuIGRlbCByZXNwb25zYWJsZSBkZWwgcGFxdWV0ZSBxdWUgbm8gdGllbmUgZWZlY3RvLgorLgorLlNIICJWyUFTRSBUQU1CSclOIgorXGZCZHBrZ1xmUCgxKSwgXGZCZHNlbGVjdFxmUCgxKSwgXGZCZGViXC1vdmVycmlkZVxmUCg1KSwgXGZCZGViXC1leHRyYVwtb3ZlcnJpZGVcZlAoNSksCitcZkJkcGtnXC1zY2Fuc291cmNlc1xmUCgxKS4KKy5TSCAiVFJBRFVDVE9SIgorUnVkeSBHb2RveSA8cnVkeUBrZXJuZWxcLXBhbmlrLm9yZz4sCitSdWLpbiBQb3JyYXMgPG5haG9vQGluaWNpYS5lcz4sCitCcnVubyBCYXJyZXJhIEMuIDxicnVuby5iYXJyZXJhQGlnbG9vLmNsPiwKK0NhcmxvcyBJenF1aWVyZG8gPGdoZWVzaEBlcnRpcy5uZXQ+LAorRXN0ZWJhbiBNYW5jaGFkbyB5CitOT0suCitEZWJpYW4gTDEwbiBTcGFuaXNoIDxkZWJpYW5cLWwxMG5cLXNwYW5pc2hAbGlzdHMuZGViaWFuLm9yZz4uCisuYnIKK1JldmlzaW9uZXMgcG9yIFNhbnRpYWdvIFZpbGEgPHNhbnZpbGFAdW5leC5lcz4sCitKYXZpZXIgRmVybuFuZGV6XC1TYW5ndWlubywgUnVi6W4gUG9ycmFzLAorTHVpcyBVcmliZSB5IE9tYXIgQ2FtcGFnbmUuCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9lcy9kcGtnLXNjYW5zb3VyY2VzLjEgYi9kcGtnLTEuMTYuMS4xL21hbi9lcy9kcGtnLXNjYW5zb3VyY2VzLjEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTViMmJjNQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL2VzL2Rwa2ctc2NhbnNvdXJjZXMuMQpAQCAtMCwwICsxLDg1IEBACisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkcGtnXC1zY2Fuc291cmNlcyAxIDIwMTFcLTA4XC0xNCAiUHJveWVjdG8gRGViaWFuIiAiSGVycmFtaWVudGFzIGRlIGRwa2ciCisuU0ggTk9NQlJFCitkcGtnXC1zY2Fuc291cmNlcyBcLSBDcmVhY2nzbiBkZSBmaWNoZXJvcyBkZSDtbmRpY2Ugq1NvdXJjZXO7CisuCisuU0ggU0lOT1BTSVMKK1xmQmRwa2dcLXNjYW5zb3VyY2VzXGZQIFtcZklvcHRpb25cZlAuLi5dIFxmSWJpbmFyeVwtZGlyXGZQIFtcZklvdmVycmlkZVwtZmlsZVxmUAorW1xmSXBhdGhcLXByZWZpeFxmUF1dIFxmQj5cZlAgXGZJU291cmNlc1xmUAorLgorLlNIIERFU0NSSVBDSdNOCitcZkJkcGtnXC1zY2Fuc291cmNlc1xmUCBidXNjYSBmaWNoZXJvcyBcZkkuZHNjXGZQIGVuIGVsIFxmSWRpcmVjdG9yaW9cLWJpbmFyaW9cZlAKK2RhZG8uIEVzdG9zIHNpcnZlbiBwYXJhIGNyZWFyIHVuIO1uZGljZSBkZSBmdWVudGVzIGRlIERlYmlhbiwgcXVlIHNlIG11ZXN0cmEKK3BvciBsYSBzYWxpZGEgZXN04W5kYXIuCisuUFAKK1NpIHNlIHByb3BvcmNpb25hIHVuIFxmSWZpY2hlcm9cLW92ZXJyaWRlXGZQLCBzZSB1c2Fy4SBwYXJhIGZpamFyIHByaW9yaWRhZGVzIGVuCitlbCDtbmRpY2UgcmVzdWx0YW50ZSB5IHNvYnJlZXNjcmliaXIgZWwgY2FtcG8gZGVsIG1hbnRlbmVkb3IgZGFkbyBlbiBsb3MKK2ZpY2hlcm9zIFxmSS5kc2NcZlAuIEVsIGZpY2hlcm8gc2UgcHVlZGUgY29tcHJpbWlyLiBDb25zdWx0ZSBcZkJkZWJcLW92ZXJyaWRlXGZQKDUpCitwYXJhIGNvbm9jZXIgbeFzIGFjZXJjYSBkZWwgZm9ybWF0byBkZSBlc3RlIGZpY2hlcm8uIFxzLTFOQjpcczAgRGViaWRvIGEgcXVlCitlbCBmaWNoZXJvIKtvdmVycmlkZbsgc2UgaW5kZXhhIGNvbiBlbCBwYXF1ZXRlcyBiaW5hcmlvLCB5IG5vIGNvbiBsYXMKK2Z1ZW50ZXMsIGVuY29udHJhbW9zIHVuIHBlcXVl8W8gcHJvYmxlbWEuIExhIGltcGxlbWVudGFjafNuIGFjdHVhbCB1c2EgbGEKK3ByaW9yaWRhZCBt4XMgYWx0YSBlbnRyZSBsb3MgcGFxdWV0ZXMgYmluYXJpb3MgcHJvZHVjaWRvcyBwb3IgdW4gZmljaGVybworXCZcZkkuZHNjXGZQLCBwYXJhIGFz7SBvYnRlbmVyIGxhIHByaW9yaWRhZCBkZWwgcGFxdWV0ZSBmdWVudGUsIGFz7SBjb21vIGxhCitlbnRyYWRhIKtvdmVycmlkZbsgZGVsIHByaW1lciBwYXF1ZXRlIGJpbmFyaW8gbGlzdGFkbyBlbiBlbCBmaWNoZXJvIFxmSS5kc2NcZlAKK3F1ZSBtb2RpZmljYSBsYSBpbmZvcm1hY2nzbiBzb2JyZSBlbCBtYW50ZW5lZG9yLiBFc3RvIHB1ZWRlIGNhbWJpYXIgZW4gdW4KK2Z1dHVyby4KKy5QUAorU2kgc2UgcHJvcG9yY2lvbmEgXGZJcHJlZmlqb1wtcnV0YVxmUCwgc2UgYW50ZXBvbmRy4SBhbCBjYW1wbyBkZWwgZGlyZWN0b3JpbyBlbgorZWwg7W5kaWNlIGRlIGZ1ZW50ZXMgZ2VuZXJhZG8uIEhhYml0dWFsbWVudGUsIHNlIHVzYSBwYXJhIGhhY2VyIHF1ZSBlbCBjYW1wbworZGUgZGlyZWN0b3JpbyBjb250ZW5nYSBsYSBydXRhIGRlc2RlIGVsIGRpcmVjdG9yaW8gc3VwZXJpb3IgZGVsIGFyY2hpdm8gZGUKK0RlYmlhbi4KKy4KKy5QUAorXGZCTm90YTpcZlAgU2kgZGVzZWEgYWNjZWRlciBhbCBmaWNoZXJvIGdlbmVyYWRvIKtTb3VyY2VzuyBtZWRpYW50ZSBcZkJhcHRcZlAoOCksCitlcyBwb3NpYmxlIHF1ZSBuZWNlc2l0ZSBjb21wcmltaXIgZWwgZmljaGVybyBjb24gXGZCZ3ppcFxmUCgxKSwgZ2VuZXJhbmRvIGFz7QordW4gZmljaGVybyCrU291cmNlcy5nersuIGFwdCBpZ25vcmEgZmljaGVyb3Mgq1NvdXJjZXO7IGRlc2NvbXByaW1pZG9zLCBhCitleGNlcGNp824gZGUgZmljaGVyb3MgbG9jYWxlcyAocG9yIGVqZW1wbG8sIFxmQmZpbGU6Ly9cZlAgc291cmNlcykuCisuCisuU0ggT1BDSU9ORVMKKy5JUCAiXGZCXC1uXGZQLCBcZkJcLVwtbm9cLXNvcnRcZlAiIDQKK0V2aXRhIG9yZGVuYXIgbG9zIHJlZ2lzdHJvcyBkZWwg7W5kaWNlIGRlIGZ1ZW50ZXMuIEhhYml0dWFsbWVudGUsIHNlIG9yZGVuYQorcG9yIGVsIG5vbWJyZSBkZSBsb3MgcGFxdWV0ZXMgZnVlbnRlLgorLlRQIAorLklQICJcZkJcLWVcZlAsIFxmQlwtXC1leHRyYVwtb3ZlcnJpZGVcZlAgXGZJZmljaGVyb1xmUCIgNAorQW5hbGl6YSBlbCBcZklmaWNoZXJvXGZQIHBhcmEgZW5jb250cmFyIGFsdGVybmF0aXZhcyBhZGljaW9uYWxlcyAoZWwgZmljaGVybworcHVlZGUgZXN0YXIgZGVzY29tcHJpbWlkbykuIENvbnN1bHRlIFxmQmRlYlwtZXh0cmFcLW92ZXJyaWRlXGZQKDUpIHBhcmEgbeFzCitpbmZvcm1hY2nzbiBhY2VyY2EgZGVsIGZvcm1hdG8uCisuSVAgIlxmQlwtc1xmUCwgXGZCXC1cLXNvdXJjZVwtb3ZlcnJpZGVcZlAgXGZJZmljaGVyb1xmUCIgNAorVXNhIGVsIFxmSWZpY2hlcm9cZlAgY29tbyBlbCBmaWNoZXJvIKtvdmVycmlkZbsgZGUgbGFzIGZ1ZW50ZXMuIFBvciBvbWlzafNuIGVzCitlbCBub21icmUgZGVsIGZpY2hlcm8gq292ZXJyaWRluyBjb24gbGEgZXh0ZW5zafNuIFxmSS5zcmNcZlAgcXVlIGRlZmluafMKK2FudGVyaW9ybWVudGUuCisuc3AKK0VsIGZpY2hlcm8gq292ZXJyaWRluyBkZSBsYXMgZnVlbnRlcyBlc3ThIGVuIHVuIGZvcm1hdG8gZGlzdGludG8gZGVsIGZpY2hlcm8KK6tvdmVycmlkZbsgZGUgbG9zIHBhcXVldGVzIGJpbmFyaW9zLiBDb250aWVuZSBzb2xhbWVudGUgZG9zIGNhbXBvcyBzZXBhcmFkb3MKK3BvciBlc3BhY2lvcyBlbiBibGFuY28sIHNpZW5kbyBlbCBwcmltZXIgY2FtcG8gZWwgbm9tYnJlIGRlbCBwYXF1ZXRlIGZ1ZW50ZQoreSBlbCBzZWd1bmRvIGVsIGRlIHNlY2Np824uIFNlIG9taXRlbiBsYXMgbO1uZWFzIGVuIGJsYW5jbyB5IGRlCitjb21lbnRhcmlvcy4gU2kgdW4gcGFxdWV0ZSBhcGFyZWNlIGVuIGFtYm9zIGZpY2hlcm9zLCBlbCBmaWNoZXJvIKtvdmVycmlkZbsKK2RlIGxhcyBmdWVudGVzIHRpZW5lIHByZWZlcmVuY2lhLgorLklQIFxmQlwtXC1kZWJ1Z1xmUCA0CitBY3RpdmEgbGEgZGVwdXJhY2nzbi4KKy5JUCBcZkJcLVwtaGVscFxmUCA0CitNdWVzdHJhIGVsIG1vZG8gZGUgdXNvIHkgdGVybWluYS4KKy5JUCBcZkJcLVwtdmVyc2lvblxmUCA0CitNdWVzdHJhIGxhIHZlcnNp824geSB0ZXJtaW5hLgorLgorLlNIICJWyUFTRSBUQU1CSclOIgorXGZCZGViXC1vdmVycmlkZVxmUCg1KSwgXGZCZGViXC1leHRyYVwtb3ZlcnJpZGVcZlAoNSksIFxmQmRwa2dcLXNjYW5wYWNrYWdlc1xmUCgxKS4KKy4KKy5TSCBBVVRPUgorUm9kZXJpY2sgU2NoZXJ0bGVyIDxyb2Rlcmlja0Bhcmdvbi5vcmc+CisuU0ggIlRSQURVQ1RPUiIKK1J1ZHkgR29kb3kgPHJ1ZHlAa2VybmVsXC1wYW5pay5vcmc+LAorUnVi6W4gUG9ycmFzIDxuYWhvb0BpbmljaWEuZXM+LAorQnJ1bm8gQmFycmVyYSBDLiA8YnJ1bm8uYmFycmVyYUBpZ2xvby5jbD4sCitDYXJsb3MgSXpxdWllcmRvIDxnaGVlc2hAZXJ0aXMubmV0PiwKK0VzdGViYW4gTWFuY2hhZG8geQorTk9LLgorRGViaWFuIEwxMG4gU3BhbmlzaCA8ZGViaWFuXC1sMTBuXC1zcGFuaXNoQGxpc3RzLmRlYmlhbi5vcmc+LgorLmJyCitSZXZpc2lvbmVzIHBvciBTYW50aWFnbyBWaWxhIDxzYW52aWxhQHVuZXguZXM+LAorSmF2aWVyIEZlcm7hbmRlelwtU2FuZ3Vpbm8sIFJ1YuluIFBvcnJhcywKK0x1aXMgVXJpYmUgeSBPbWFyIENhbXBhZ25lLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vZXMvZHBrZy1zaGxpYmRlcHMuMSBiL2Rwa2ctMS4xNi4xLjEvbWFuL2VzL2Rwa2ctc2hsaWJkZXBzLjEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODM4MGVlMwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL2VzL2Rwa2ctc2hsaWJkZXBzLjEKQEAgLTAsMCArMSwzMTQgQEAKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlRIIGRwa2dcLXNobGliZGVwcyAxIDIwMTFcLTA4XC0xNCAiUHJveWVjdG8gRGViaWFuIiAiSGVycmFtaWVudGFzIGRlIGRwa2ciCisuU0ggTk9NQlJFCitkcGtnXC1zaGxpYmRlcHMgXC0gR2VuZXJhIGRlcGVuZGVuY2lhcyBkZSBiaWJsaW90ZWNhcyBjb21wYXJ0aWRhcyBkZQorc3VzdGl0dWNp824gZGUgdmFyaWFibGVzCisuCisuU0ggU0lOT1BTSVMKK1xmQmRwa2dcLXNobGliZGVwc1xmUCBbXGZJb3B0aW9uXGZQLi4uXSBbXGZCXC1lXGZQXVxmSWV4ZWN1dGFibGVcZlAgW1xmSW9wdGlvblxmUC4uLl0KKy4KKy5TSCBERVNDUklQQ0nTTgorXGZCZHBrZ1wtc2hsaWJkZXBzXGZQIGNhbGN1bGF0ZXMgc2hhcmVkIGxpYnJhcnkgZGVwZW5kZW5jaWVzIGZvciBleGVjdXRhYmxlcworbmFtZWQgaW4gaXRzIGFyZ3VtZW50cy4gVGhlIGRlcGVuZGVuY2llcyBhcmUgYWRkZWQgdG8gdGhlIHN1YnN0aXR1dGlvbgordmFyaWFibGVzIGZpbGUgXGZCZGViaWFuL3N1YnN0dmFyc1xmUCBhcyB2YXJpYWJsZSBuYW1lcworXGZCc2hsaWJzOlxmUFxmSWRlcGVuZGVuY3lmaWVsZFxmUCB3aGVyZSBcZklkZXBlbmRlbmN5ZmllbGRcZlAgaXMgYSBkZXBlbmRlbmN5IGZpZWxkCituYW1lLiBBbnkgb3RoZXIgdmFyaWFibGVzIHN0YXJ0aW5nIHdpdGggXGZCc2hsaWJzOlxmUCBhcmUgcmVtb3ZlZCBmcm9tIHRoZQorZmlsZS4KKy5QCitcZkJkcGtnXC1zaGxpYmRlcHNcZlAgdGllbmUgZG9zIHBvc2libGVzIGZ1ZW50ZXMgZGUgaW5mb3JtYWNp824gcGFyYSBnZW5lcmFyIGxhCitpbmZvcm1hY2nzbiBkZSBkZXBlbmRlbmNpYXMuIEVzdG9zIHNvbiBsb3MgZmljaGVyb3MgXGZJc3ltYm9sc1xmUCB5CitcZklzaGxpYnNcZlAuIFBvciBjYWRhIGJpbmFyaW8gcXVlIFxmQmRwa2dcLXNobGliZGVwc1xmUCBhbmFsaXphLCBidXNjYSBsYSBsaXN0YSBkZQorYmlibGlvdGVjYXMgZW5sYXphZGFzIGNvbiDpc3RlLiBFbnRvbmNlcywgcG9yIGNhZGEgYmlibGlvdGVjYSwgYnVzY2EgZWwKK2ZpY2hlcm8gXGZJc3ltYm9sc1xmUCBvIGVsIGZpY2hlcm8gXGZJc2hsaWJzXGZQIChlbiBjYXNvIGRlIHF1ZSBlbCBwcmltZXJvIG5vCitleGlzdGEsIG8gc2kgq2RlYmlhbi9zaGxpYnMubG9jYWy7IGNvbnRpZW5lIGxhIGRlcGVuZGVuY2lhIHJlbGV2YW50ZSkuIFNlCithc3VtZSBxdWUgZWwgcGFxdWV0ZSBkZSBsYSBiaWJsaW90ZWNhIHByb3BvcmNpb25hIGFtYm9zIGZpY2hlcm9zLCB5IHBvciBlbGxvCitkZWJlcu1hIGVzdGFyIGRpc3BvbmlibGUgY29tbyCrL3Zhci9saWIvZHBrZy9pbmZvL1xmSXBhcXVldGVcZlAuXGZJc3ltYm9sc1xmULsgbworqy92YXIvbGliL2Rwa2cvaW5mby9cZklwYWNrYWdlXGZQLlxmSXNobGlic1xmULsuIEVsIG5vbWJyZSBkZWwgcGFxdWV0ZSBzZQoraWRlbnRpZmljYSBlbiBkb3MgcGFzb3M6IGL6c3F1ZWRhIGVuIGVsIHNpc3RlbWEgZGVsIGZpY2hlcm8gZGUgbGEgYmlibGlvdGVjYQorKGJ1c2NhbmRvIGVuIGxvcyBtaXNtb3MgZGlyZWN0b3Jpb3MgcXVlIHVzYXLtYSBcZkJsZC5zb1xmUCksIHkgZWplY3VjafNuIGRlCitcZkJkcGtnIFwtUyBcZlBcZklsaWJyYXJ5XC1maWxlXGZQIHBhcmEgY29ub2NlciBlbCBwYXF1ZXRlIHF1ZSBwcm9wb3JjaW9uYSBsYQorYmlibGlvdGVjYS4KKy5TUyAiRmljaGVyb3MgZGUgc+1tYm9sb3MiCitMb3MgZmljaGVyb3MgZGUgc+1tYm9sb3MgY29udGllbmVuIHVuYSBpbmZvcm1hY2nzbiBt4XMgcHJlY2lzYSBkZSBsYXMKK2RlcGVuZGVuY2lhcywgcHJvcG9yY2lvbmFuZG8gbGEgZGVwZW5kZW5jaWEgbe1uaW1hIGRlIGNhZGEgc+1tYm9sbyBxdWUgbGEKK2JpYmxpb3RlY2EgZXhwb3J0YS4gRWwgc2NyaXB0IGludGVudGEgZW5jb250cmFyIHVuIGZpY2hlcm8gZGUgc+1tYm9sb3MKK2Fzb2NpYWRvIGFsIHBhcXVldGUgZGUgbGEgYmlibGlvdGVjYSBlbiBsYXMgc2lndWllbnRlcyB1YmljYWNpb25lcyAoc2UgdXNhCitsYSBwcmltZXJhIGNvaW5jaWRlbmNpYSk6CisuSVAgZGViaWFuLyovREVCSUFOL3N5bWJvbHMKK0xhIGluZm9ybWFjafNuIGRlIGJpYmxpb3RlY2EgY29tcGFydGlkYSBnZW5lcmFkYSBwb3IgZWwgcHJvY2VzbyBkZQorY29uc3RydWNjafNuIGFjdHVhbCwgcXVlIHRhbWJp6W4gaW52b2NhIFxmQmRwa2dcLXNobGliZGVwc1xmUC4gU2UgZ2VuZXJhbgorbWVkaWFudGUgXGZCZHBrZ1wtZ2Vuc3ltYm9sc1xmUCgxKS4gU/NsbyBzZSB1c2FuIGVuIGNhc28gZGUgZW5jb250cmFyIGxhCitiaWJsaW90ZWNhIGVuIGxhIOFyYm9sIGRlIGNvbnN0cnVjY2nzbiBkZWwgcGFxdWV0ZS4gRWwgZmljaGVybyBkZSBz7W1ib2xvcworZGUgZXNlIOFyYm9sIGRlIGNvbnN0cnVjY2nzbiB0aWVuZSBwcmlvcmlkYWQgc29icmUgbG9zIGZpY2hlcm9zIGRlIHPtbWJvbG9zCitkZSBvdHJvcyBwYXF1ZXRlcyBiaW5hcmlvcy4KKy5JUCAvZXRjL2Rwa2cvc3ltYm9scy9cZklwYXF1ZXRlXGZQLnN5bWJvbHMuXGZJYXJxdWl0ZWN0dXJhXGZQCisuSVAgL2V0Yy9kcGtnL3N5bWJvbHMvXGZJcGFxdWV0ZVxmUC5zeW1ib2xzCitJbmZvcm1hY2nzbiBkZSByZWRlZmluaWNp824gZGUgYmlibGlvdGVjYXMgY29tcGFydGlkYXMgcG9yIGNhZGEKK3Npc3RlbWEuIFxmSWFycXVpdGVjdHVyYVxmUCBlcyBsYSBhcnF1aXRlY3R1cmEgZGVsIHNpc3RlbWEgYWN0dWFsIChvYnRlbmlkbworbWVkaWFudGUgXGZCZHBrZ1wtYXJjaGl0ZWN0dXJlIFwtIHFERUJfSE9TVF9BUkNIXGZQKS4KKy5JUCAiT3V0cHV0IGZyb20gXChscVxmQmRwa2dcLXF1ZXJ5IFwtXC1jb250cm9sXC1wYXRoXGZQIFxmSXBhY2thZ2VcZlAgc3ltYm9sc1wocnEiCitQYWNrYWdlXC1wcm92aWRlZCBzaGFyZWQgbGlicmFyeSBkZXBlbmRlbmN5IGluZm9ybWF0aW9uLiAgVW5sZXNzIG92ZXJyaWRkZW4KK2J5IFwtXC1hZG1pbmRpciwgdGhvc2UgZmlsZXMgYXJlIGxvY2F0ZWQgaW4gL3Zhci9saWIvZHBrZy4KKy5QCitcZkJkcGtnXC1zaGxpYmRlcHNcZlAgcmVjdWVyZGEgbGEgdmVyc2nzbiBt7W5pbWEgKG3hcyBncmFuZGUpIG5lY2VzYXJpYSBwYXJhCitjYWRhIGJpYmxpb3RlY2EgYWwgYW5hbGl6YXIgbG9zIHPtbWJvbG9zIHVzYWRvcyBwb3IgdG9kb3MgbG9zIGJpbmFyaW9zLiBBbAorZmluYWxpemFyIGVsIHByb2Nlc28sIHB1ZWRlIGVzY3JpYmlyIGxhIGRlcGVuZGVuY2lhIG3tbmltYSBwYXJhIGNhZGEKK2JpYmxpb3RlY2EgdXNhZGEgKHNpZW1wcmUgcXVlIGxhIGluZm9ybWFjafNuIGRlIGxvcyBmaWNoZXJvcyBcZklzeW1ib2xzXGZQIHNlYQorcHJlY2lzYSkuCisuUAorQ29tbyBtZWRpZGEgZGUgcHJlY2F1Y2nzbiwgdW4gZmljaGVybyBkZSBz7W1ib2xvcyBwdWVkZSBwcm9wb3JjaW9uYXIgdW4KK2NhbXBvIGRlIG1ldGEgaW5mb3JtYWNp824gXGZJQnVpbGRcLURlcGVuZHNcLVBhY2thZ2VcZlAgcGFyYSBxdWUKK1xmQmRwa2dcLXNobGliZGVwc1xmUCBleHRyYWlnYSBsYSB2ZXJzafNuIG3tbmltYSByZXF1ZXJpZGEgcG9yIGVsIHBhcXVldGUKK2NvcnJlc3BvbmRpZW50ZSBlbiBlbCBjYW1wbyCrQnVpbGRcLURlcGVuZHO7LCB5IHVzYXIgdGFsIHZlcnNp824gc2kgZXMgbWF5b3IKK3F1ZSBsYSB2ZXJzafNuIG3tbmltYSBjYWxjdWxhZGEgZW4gZWwgYW7hbGlzaXMgZGUgc+1tYm9sb3MuCisuU1MgIkZpY2hlcm9zIKtzaGxpYnO7IgorTG9zIGZpY2hlcm9zIKtzaGxpYnO7IGFzb2NpYW4gZGUgZm9ybWEgZGlyZWN0YSB1bmEgbGlicmVy7WEgY29uIHVuYQorZGVwZW5kZW5jaWEgKHNpbiBhbmFsaXphciCrc3ltYm9sc7spLiBQb3IgZWxsbywgZXMgbeFzIHPzbGlkbyBxdWUgbmVjZXNhcmlvLAorcGVybyBzZW5jaWxsbyB5IHNlZ3VybyBkZSBtYW5pcHVsYXIuCisuUAorTGFzIGRlcGVuZGVuY2lhcyBkZSB1bmEgYmlibGlvdGVjYSBzZSBidXNjYW4gZW4gdmFyaWFzIHViaWNhY2lvbmVzLiBTZSB1c2Fy4QorZWwgcHJpbWVyIGZpY2hlcm8gcXVlIHByb3BvcmNpb25lIGluZm9ybWFjafNuIGRlIGxhIGJpYmxpb3RlY2EgcmVsZXZhbnRlLgorLklQIGRlYmlhbi9zaGxpYnMubG9jYWwKK0luZm9ybWFjafNuIGFjZXJjYSBkZSByZWRlZmluaWNp824gZGUgZGVwZW5kZW5jaWFzIGRlIGJpYmxpb3RlY2FzCitjb21wYXJ0aWRhcyBlc3BlY+1maWNhcyBhbCBwYXF1ZXRlIGxvY2FsLgorLklQIC9ldGMvZHBrZy9zaGxpYnMub3ZlcnJpZGUKK0luZm9ybWFjafNuIGFjZXJjYSBkZSByZWRlZmluaWNp824gZGUgZGVwZW5kZW5jaWFzIGRlIGJpYmxpb3RlY2FzCitjb21wYXJ0aWRhcyBwYXJhIGNhZGEgc2lzdGVtYS4KKy5JUCBkZWJpYW4vKi9ERUJJQU4vc2hsaWJzCitMYSBpbmZvcm1hY2nzbiBkZSBiaWJsaW90ZWNhcyBjb21wYXJ0aWRhcyBnZW5lcmFkYSBwb3IgZWwgcHJvY2VzbyBkZQorY29uc3RydWNjafNuIGFjdHVhbCwgcXVlIFxmQmRwa2dcLXNobGliZGVwc1xmUCB0YW1iaeluIGludm9jYS4gU/NsbyBzZSB1c2Egc2kgbGEKK2JpYmxpb3RlY2Egc2UgZW5jdWVudHJhIGVuIGVsIOFyYm9sIGRlIGNvbnN0cnVjY2nzbiBkZWwgcGFxdWV0ZS4gRWwgZmljaGVybworq3NobGlic7sgZW4gZWwg4XJib2wgZGUgY29uc3RydWNjafNuIHRpZW5lIHByaW9yaWRhZCBzb2JyZSBvdHJvcyBmaWNoZXJvcworq3NobGlic7sgZGUgb3Ryb3MgcGFxdWV0ZXMgYmluYXJpb3MuCisuSVAgIk91dHB1dCBmcm9tIFwobHFcZkJkcGtnXC1xdWVyeSBcLVwtY29udHJvbFwtcGF0aFxmUCBcZklwYWNrYWdlXGZQIHNobGlic1wocnEiCitQYWNrYWdlXC1wcm92aWRlZCBzaGFyZWQgbGlicmFyeSBkZXBlbmRlbmN5IGluZm9ybWF0aW9uLiAgVW5sZXNzIG92ZXJyaWRkZW4KK2J5IFwtXC1hZG1pbmRpciwgdGhvc2UgZmlsZXMgYXJlIGxvY2F0ZWQgaW4gL3Zhci9saWIvZHBrZy4KKy5JUCAvZXRjL2Rwa2cvc2hsaWJzLmRlZmF1bHQKK0luZm9ybWFjafNuIGRlbCBzaXN0ZW1hIGFjZXJjYSBkZSBsYXMgZGVwZW5kZW5jaWFzIHByZWRlZmluaWRhcyBkZQorYmlibGlvdGVjYXMgY29tcGFydGlkYXMuCisuUAorVHJhcyBlbGxvLCBzZSB1c2FuIGxhcyBkZXBlbmRlbmNpYXMgZXh0cmHtZGFzIGRpcmVjdGFtZW50ZSAoYSBtZW5vcyBxdWUgc2UKK2hheWFuIG9taXRpZG8gZGViaWRvIHF1ZSBzZSBsZXMgaWRlbnRpZmlxdWUgY29tbyBkdXBsaWNhZG9zLCBvIGNvbW8gbeFzCitk6WJpbGVzIHF1ZSBvdHJhIGRlcGVuZGVuY2lhKS4KKy5TSCBPUENJT05FUworXGZCZHBrZ1wtc2hsaWJkZXBzXGZQIGludGVycHJldGEgY3VhbHF1aWVyIGFyZ3VtZW50byBxdWUgbm8gc2VhIHVuYSBvcGNp824gY29tbworZWwgbm9tYnJlIGRlIHVuIGZpY2hlcm8gZWplY3V0YWJsZSwgaWd1YWwgcXVlIHNpIHNlIGh1Ymllc2VuIHByb3BvcmNpb25hZG8KK2NvbiBcZkJcLWVcZlBcZkllamVjdXRhYmxlXGZQLgorLlRQIAorXGZCXC1lXGZQXGZJZWplY3V0YWJsZVxmUAorSW5jbHV5ZSBkZXBlbmRlbmNpYXMgYXByb3BpYWRhcyBwYXJhIGxhcyBiaWJsaW90ZWNhcyBjb21wYXJ0aWRhcyByZXF1ZXJpZGFzCitwb3IgZWwgXGZJZWplY3V0YWJsZVxmUC4KKy5UUCAKK1xmQlwtZFxmUFxmSWNhbXBvXC1kZXBlbmRlbmNpYXNcZlAKK0HxYWRlIGRlcGVuZGVuY2lhcyBhbCBjYW1wbyBcZkljYW1wb1wtZGVwZW5kZW5jaWFzXGZQIGRlbCBmaWNoZXJvIGRlCitjb250cm9sLiAoTGFzIGRlcGVuZGVuY2lhcyBwYXJhIGVzdGUgY2FtcG8gc2UgdWJpY2FuIGVuIGxhIHZhcmlhYmxlCitcZkJzaGxpYnM6XGZQXGZJY2FtcG9cLWRlcGVuZGVuY2lhc1xmUCkuCisKK0xhIG9wY2nzbiBcZkJcLWRcZlBcZkljYW1wb1wtZGVwZW5kZW5jaWFzXGZQIHRpZW5lIGVmZWN0byBwYXJhIHRvZG9zIGxvcyBlamVjdXRhYmxlcworZGVzcHXpcyBkZSBkaWNoYSBvcGNp824sIGhhc3RhIGVsIHNpZ3VpZW50ZSBcZkJcLWRcZlBcZkljYW1wb1wtZGVwZW5kZW5jaWFzXGZQLiBQb3IKK29taXNp824gZWwgXGZJY2FtcG9cLWRlcGVuZGVuY2lhc1xmUCBlcyBcZkJEZXBlbmRzXGZQLgorCitTaSBsYSBtaXNtYSBkZXBlbmRlbmNpYSAobyB1biBjb25qdW50byBkZSBhbHRlcm5hdGl2YXMpIGFwYXJlY2UgZW4gbeFzIGRlCit1bm8gZGUgbG9zIG5vbWJyZXMgZGUgY2FtcG8gZGUgZGVwZW5kZW5jaWFzIHJlY29ub2NpZG9zOiBcZkJQcmVcLURlcGVuZHNcZlAsCitcZkJEZXBlbmRzXGZQLCBcZkJSZWNvbW1lbmRzXGZQLCBcZkJFbmhhbmNlc1xmUCBvIFxmQlN1Z2dlc3RzXGZQLCBcZkJkcGtnXC1zaGxpYmRlcHNcZlAKK2VsaW1pbmFy4SBhdXRvbeF0aWNhbWVudGUgbGEgZGVwZW5kZW5jaWEgZGUgdG9kb3MgbG9zIGNhbXBvcywgZXhjZXB0dWFuZG8KK2FxdelsIHF1ZSBjb250ZW5nYSBsYXMgZGVwZW5kZW5jaWFzIG3hcyBpbXBvcnRhbnRlcy4KKy5UUCAKK1xmQlwtcFxmUFxmSXByZWZpam9cLWRlXC12YXJpYWJsZVxmUAorUHJvdm9jYSBxdWUgbGFzIHZhcmlhYmxlcyBkZSBzdXN0aXR1Y2nzbiBlbXBpZWNlbiBwb3IKK1xmSXByZWZpam9cLWRlXC12YXJpYWJsZVxmUFxmQjpcZlAgZW4gdmV6IGRlIFxmQnNobGliczpcZlAuIEFzaW1pc21vLCBjdWFscXVpZXIKK3ZhcmlhYmxlIGRlIHN1c3RpdHVjafNuIHlhIGV4aXN0ZW50ZSBxdWUgZW1waWVjZSBwb3IKK1xmSXByZWZpam9cLWRlXC12YXJpYWJsZVxmUFxmQjpcZlAgKGVuIHZleiBkZSBcZkJzaGxpYnM6XGZQKSBzZSBlbGltaW5hcuEgZGVsIGZpY2hlcm8KK2RlIHN1c3RpdHVjafNuIGRlIHZhcmlhYmxlcy4KKy5UUCAKK1xmQlwtT1xmUAorTXVlc3RyYSBsYXMgcHJvcGllZGFkZXMgZGUgbGFzIHZhcmlhYmxlcyBkZSBzdXN0aXR1Y2nzbiBwb3IgbGEgc2FsaWRhCitlc3ThbmRhciwgZW4gbHVnYXIgZGUgYfFhZGlyc2UgYWwgZmljaGVybyBkZSBzdXN0aXR1Y2nzbiBkZSB2YXJpYWJsZXMgKHBvcgorb21pc2nzbiBcZkJkZWJpYW4vc3Vic3R2YXJzXGZQKS4KKy5UUCAKK1xmQlwtdFxmUFxmSXRpcG9cZlAKK0RhIHByaW9yaWRhZCBhIGxhIGluZm9ybWFjafNuIGRlIGRlcGVuZGVuY2lhIGRlIGJpYmxpb3RlY2FzIGNvbXBhcnRpZGFzCitldGlxdWV0YWRhIHBhcmEgZWwgdGlwbyBkZSBwYXF1ZXRlIGRhZG8uIEVuIGNhc28gZGUgbm8gZXhpc3RpciBuaW5ndW5hCitpbmZvcm1hY2nzbiBldGlxdWV0YWRhLCB1c2EgaW5mb3JtYWNp824gc2luIGV0aXF1ZXRhciBwb3Igb21pc2nzbi4gRWwgdGlwbworZGUgcGFxdWV0ZSBwcmVkZWZpbmlkbyBlcyCrZGViuy4gTGEgaW5mb3JtYWNp824gZGUgZGVwZW5kZW5jaWEgZGUKK2JpYmxpb3RlY2FzIGNvbXBhcnRpZGFzIHNlIGV0aXF1ZXRhIHBhcmEgdW4gdGlwbyBkYWRvIHByZWZpamFuZG8g6XN0ZSBjb24gZWwKK25vbWJyZSBkZWwgdGlwbywgZG9zIHB1bnRvcywgeSB1biBlc3BhY2lvLgorLlRQIAorXGZCXC1MXGZQXGZJZmljaGVyb1wtc2hsaWJzXC1sb2NhbFxmUAorUHJvdm9jYSBxdWUgXGZCZHBrZ1wtc2hsaWJzXGZQIGxlYSBsYSBpbmZvcm1hY2nzbiBzb2JyZSBkZXBlbmRlbmNpYXMgY29uCitiaWJsaW90ZWNhcyBjb21wYXJ0aWRhcyBkZXNkZSBcZklmaWNoZXJvXC1zaGxpYnNcLWxvY2FsXGZQIGVuIHZleiBkZQorXGZCZGViaWFuL3NobGlicy5sb2NhbFxmUC4KKy5UUCAKK1xmQlwtVFxmUFxmSWZpY2hlcm9cLXZhcmlhYmxlc1wtc3VzdFxmUAorRXNjcmliZSBsYXMgdmFyaWFibGVzIGRlIHN1c3RpdHVjafNuIGVuIFxmSWZpY2hlcm9cLXN1c3RpdHVjafNuXC12YXJpYWJsZXNcZlA7Citwb3Igb21pc2nzbiBcZkJkZWJpYW4vc3Vic3R2YXJzXGZQLgorLlRQIAorXGZCXC12XGZQCitBY3RpdmEgZWwgbW9kbyBpbmZvcm1hdGl2by4gU2UgbXVlc3RyYW4gbnVtZXJvc29zIG1lbnNhamVzIHF1ZSBleHBsaWNhbiBsYXMKK2FjY2lvbmVzIGRlIFxmQmRwa2dcLXNobGluZGVwc1xmUC4KKy5UUCAKK1xmQlwteFxmUFxmSXBhcXVldGVcZlAKK0V4Y2x1eWUgZWwgcGFxdWV0ZSBkZSBsYXMgZGVwZW5kZW5jaWFzIGdlbmVyYWRhcy4gRXMg+nRpbCBwYXJhIGV2aXRhcgorYXV0b1wtZGVwZW5kZW5jaWFzIGRlIHBhcXVldGVzIHF1ZSBwcm9wb3JjaW9uYW4gYmluYXJpb3MgRUxGIChlamVjdXRhYmxlcyBvCitleHRlbnNpb25lcyBkZSBiaWJsaW90ZWNhcykgeSBxdWUgdXNhbiB1bmEgYmlibGlvdGVjYSBjb250ZW5pZGEgZW4gZWwgbWlzbW8KK3BhcXVldGUuIEVzdGEgb3BjafNuIHNlIHB1ZWRlIHVzYXIgdmFyaWFzIHZlY2VzIHBhcmEgZXhjbHVpciB2YXJpb3MKK3BhcXVldGVzLgorLlRQIAorXGZCXC1TXGZQXGZJZGlyZWN0b3Jpb1wtY29tcGlsYWNp825cLXBhcXVldGVcZlAKK0FuYWxpemEgZWwgXGZJZGlyZWN0b3Jpb1wtY29tcGlsYWNp825cLXBhcXVldGVcZlAgcHJpbWVybyBhbCBidXNjYXIgdW5hCitiaWJsaW90ZWNhLiBFcyD6dGlsIGN1YW5kbyBlbCBwYXF1ZXRlIGZ1ZW50ZSBnZW5lcmEgZGlzdGludGFzIHZhcmlhbnRlcyBkZQorbGEgbWlzbWEgYmlibGlvdGVjYSwgeSBxdWllcmUgYXNlZ3VyYXIgcXVlIG9idGllbmUgbGEgZGVwZW5kZW5jaWEgZGUgdW4KK3BhcXVldGUgYmluYXJpbyBkYWRvLiBQdWVkZSB1c2FyIGVzdGEgb3BjafNuIHZhcmlhcyB2ZWNlczogbG9zIGRpcmVjdG9yaW9zCitzZSBhbmFsaXphbiBlbiBlbCBtaXNtbyBvcmRlbiBhbnRlcyBkZSBhbmFsaXphciBsb3MgZGlyZWN0b3Jpb3MgZGUgb3Ryb3MKK3BhcXVldGVzIGJpbmFyaW9zLgorLlRQIAorXGZCXC1cLWlnbm9yZVwtbWlzc2luZ1wtaW5mb1xmUAorTm8gZGV2dWVsdmUgdW4gZmFsbG8gZW4gY2FzbyBkZSBubyBlbmNvbnRyYXIgbGEgaW5mb3JtYWNp824gZGUgZGVwZW5kZW5jaWEKK2RlIHVuYSBiaWJsaW90ZWNhIGNvbXBhcnRpZGEuIE5vIHNlIHJlY29taWVuZGEgdXNhciBlc3RhIG9wY2nzbiB5YSBxdWUgdG9kYXMKK2xhcyBiaWJsaW90ZWNhcyBkZWJlcu1hbiBwcm9wb3JjaW9uYXIgaW5mb3JtYWNp824gZGUgZGVwZW5kZW5jaWEgKG1lZGlhbnRlCitsb3MgZmljaGVyb3Mgq3NobGlic7ssIG8gZmljaGVyb3MgZGUgc+1tYm9sb3MpLCBpbmNsdXNvIGN1YW5kbyBvdHJvcworcGFxdWV0ZXMgbm8gbG9zIHVzYW4gYWN0dWFsbWVudGUuCisuVFAgCitcZkJcLVwtd2FybmluZ3M9XGZQXGZJdmFsb3JcZlAKK1xmSXZhbG9yXGZQIGVzIHVuIGNhbXBvIGRlIGJpdCBxdWUgZGVmaW5lIGVsIGNvbmp1bnRvIGRlIGF2aXNvcyBxdWUKK1xmQmRwa2dcLXNobGliZGVwc1xmUCBwdWVkZSBlbWl0aXIuIEJpdCAwICh2YWxvcj0xKSBhY3RpdmEgZWwgYXZpc28gq3N5bWJvbAorXGZJc3ltXGZQIHVzZWQgYnkgXGZJYmluYXJ5XGZQIGZvdW5kIGluIG5vbmUgb2YgdGhlIGxpYnJhcmllc7ssIGVsIGJpdCAxICh2YWxvcj0yKQorYWN0aXZhIGVsIGF2aXNvIKtkZXBlbmRlbmN5IG9uIFxmSWxpYnJhcnlcZlAgY291bGQgYmUgYXZvaWRlZLssIHkgYml0IDIKKyh2YWxvcj00KSBhY3RpdmEgZWwgYXZpc28gq1xmSWJpbmFyeVxmUCBzaG91bGRuJ3QgYmUgbGlua2VkIHdpdGgKK1xmSWxpYnJhcnlcZlC7LiBFbCBcZkl2YWxvclxmUCBwcmVkZWZpbmlkbyBlcyAzOiBsb3MgZG9zIHByaW1lcm9zIGF2aXNvcyBlc3ThbgorYWN0aXZhZG9zIHBvciBvbWlzafNuLCBubyBlbCD6bHRpbW8uIERlZmluYSBlbCBcZkl2YWxvclxmUCBjb24gNyBzaSBkZXNlYSBxdWUKK3RvZG9zIGxvcyBhdmlzb3MgZXN06W4gYWN0aXZvcy4KKy5UUCAKK1xmQlwtXC1hZG1pbmRpcj1cZlBcZklkaXJlY3RvcmlvXGZQCitDYW1iaWEgZWwgZGlyZWN0b3JpbyBjb24gbGEgYmFzZSBkZSBkYXRvcyBkZSBcZkJkcGtnXGZQLiBQb3Igb21pc2nzbiBlcworXGZJL3Zhci9saWIvZHBrZ1xmUC4KKy5UUCAKK1xmQlwtaFxmUCwgXGZCXC1cLWhlbHBcZlAKK011ZXN0cmEgZWwgbW9kbyBkZSB1c28geSB0ZXJtaW5hLgorLlRQIAorXGZCXC1cLXZlcnNpb25cZlAKK011ZXN0cmEgbGEgdmVyc2nzbiB5IHRlcm1pbmEuCisuCisuU0ggQURWRVJURU5DSUFTCitEZWJpZG8gYSBxdWUgXGZCZHBrZ1wtc2hsaWJkZXBzXGZQIGFuYWxpemEgZWwgY29uanVudG8gZGUgc+1tYm9sb3MgdXNhZG8gcG9yCitjYWRhIGJpbmFyaW8gZGVsIHBhcXVldGUgZ2VuZXJhZG8sIHB1ZWRlIG1vc3RyYXIgYXZpc29zIGVuIHZhcmlhcworc2l0dWFjaW9uZXMuIMlzdG9zIGluZm9ybWFuIGRlIGFzcGVjdG9zIG1lam9yYWJsZXMgZGVsIHBhcXVldGUuIEVuIGxhCittYXlvcu1hIGRlIGxvcyBjYXNvcywgY29uY2llcm5lbiBkaXJlY3RhbWVudGUgYSBsYXMgZnVlbnRlcyBvcmlnaW5hbC4gQQorY29udGludWFjafNuIHNlIG11ZXN0cmFuIGxvcyB2YXJpb3MgbWVuc2FqZXMgZGUgYWR2ZXJ0ZW5jaWEgcXVlIHB1ZWRlbgorYXBhcmVjZXIsIHBvciBvcmRlbiBkZSBpbXBvcnRhbmNpYSBkZWNyZWNpZW50ZS4KKy5UUCAKK1xmQnN5bWJvbFxmUFxmSSBzeW1cZlBcZkIgdXNlZCBieSBcZlBcZkliaW5hcnlcZlBcZkIgZm91bmQgaW4gbm9uZSBvZiB0aGUgbGlicmFyaWVzLlxmUAorRWwgc+1tYm9sbyBpbmRpY2FkbyBubyBzZSBlbmNvbnRy8yBlbiBsYXMgYmlibGlvdGVjYXMgZW5sYXphZGFzIGNvbiBlbAorYmluYXJpby4gUG9zaWJsZW1lbnRlLCBcZkliaW5hcmlvXGZQIGVzIHVuYSBiaWJsaW90ZWNhLCB5IG5lY2VzaXRhIGVzdGFyCitlbmxhemFkbyBjb24gdW5hIGJpYmxpb3RlY2EgYWRpY2lvbmFsIGR1cmFudGUgZWwgcHJvY2VzbyBkZSBjb25zdHJ1Y2Np824KKyhvcGNp824gXGZCXC1sXGZQXGZJYmlibGlvdGVjYVxmUCBkZWwgZW5sYXphZG9yKS4KKy5UUCAKK1xmSWJpbmFyeVxmUFxmQiBjb250YWlucyBhbiB1bnJlc29sdmFibGUgcmVmZXJlbmNlIHRvIHN5bWJvbCBcZlBcZklzeW1cZlBcZkI6IGl0J3MgcHJvYmFibHkgYSBwbHVnaW5cZlAKK0VsIHPtbWJvbG8gaW5kaWNhZG8gbm8gc2UgaGEgZW5jb250cmFkbyBlbiBsYXMgYmlibGlvdGVjYXMgZW5sYXphZGFzIGNvbiBlbAorYmluYXJpby4gUHJvYmFibGVtZW50ZSwgZWwgXGZJYmluYXJpb1xmUCBlcyB1bmEgZXh0ZW5zafNuLCB5IGNhYmUgcXVlIGVsCitwcm9ncmFtYSBxdWUgY2FyZ2EgdGFsIGV4dGVuc2nzbiBwcm9wb3JjaW9uYSBlbCBz7W1ib2xvLiBUZfNyaWNhbWVudGUsIHVuYQorZXh0ZW5zafNuIG5vIHRpZW5lIG5pbmf6biCrU09OQU1FuywgcGVybyBz7SBlc3RlIGJpbmFyaW8sIHkgcG9yIGVsbG8gbm8gc2UKK2xlIHB1ZWRlIGlkZW50aWZpY2FyIGNsYXJhbWVudGUgY29tbyB0YWwuIEH6biBhc+0sIGVsIGhlY2hvIGRlIHF1ZSBlbAorYmluYXJpbyBzZSBndWFyZGEgZW4gdW4gZGlyZWN0b3JpbyBubyBw+mJsaWNvIGVzIHVuYSBpbmRpY2FjafNuIGRlIHF1ZSBubyBlcwordW5hIGJpYmxpb3RlY2EgY29tcGFydGlkYSBub3JtYWwuIFNpIGVsIGJpbmFyaW8gZXMgcmVhbG1lbnRlIHVuYSBleHRlbnNp824sCitubyBoYWdhIGNhc28gZGUgZXN0ZSBhdmlzby4gU2llbXByZSBjYWJlIGxhIHBvc2liaWxpZGFkIGRlIHF1ZSBlcyB1bmEKK2JpYmxpb3RlY2EgcmVhbCwgeSBxdWUgbG9zIHByb2dyYW1hcyBxdWUgZW5sYXphbiBjb24gZWwgdXNhbiB1biCrUlBBVEi7IHBhcmEKK3F1ZSBlbCBjYXJnYWRvciBkaW7hbWljbyBsbyBlbmN1ZW50cmUuIEVuIHRhbCBjYXNvLCBsYSBiaWJsaW90ZWNhIGVzdOEgcm90YQoreSBwcmVjaXNhIHVuIGFycmVnbG8uCisuVFAgCitcZkJkZXBlbmRlbmN5IG9uIFxmUFxmSWxpYnJhcnlcZlBcZkIgY291bGQgYmUgYXZvaWRlZCBpZiBcZlBcZkliaW5hcmllc1xmUFxmQiB3ZXJlIG5vdCB1c2VsZXNzbHkgbGlua2VkIGFnYWluc3QgaXQgKHRoZXkgdXNlIG5vbmUgb2YgaXRzIHN5bWJvbHMpLlxmUAorTmluZ3VubyBkZSBsb3MgXGZJYmluYXJpb3NcZlAgZW5sYXphZG9zIGNvbiBsYSBcZkliaWJsaW90ZWNhXGZQIHVzYW4gc+1tYm9sb3MgcXVlCitwcm9wb3JjaW9uYSBsYSBiaWJsaW90ZWNhLiBBbCBhcnJlZ2xhciB0b2RvcyBsb3MgYmluYXJpb3MsIGV2aXRhcu1hIGxhCitkZXBlbmRlbmNpYSBhc29jaWFkYSBhIGVzdGEgYmlibGlvdGVjYSAoYSBtZW5vcyBxdWUgbGEgZGVwZW5kZW5jaWEgc2UgZ2VuZXJlCit0YW1iaeluIHBhcmEgb3RyYSBiaWJsaW90ZWNhIHF1ZSBz7SBsYSB1c2EpLgorLlRQIAorXGZJYmluYXJ5XGZQXGZCIHNob3VsZG4ndCBiZSBsaW5rZWQgd2l0aCBcZlBcZklsaWJyYXJ5XGZQXGZCIChpdCB1c2VzIG5vbmUgb2YgaXRzIHN5bWJvbHMpLlxmUAorRWwgXGZJYmluYXJpb1xmUCBlc3ThIGVubGF6YWRvIGNvbiB1bmEgYmlibGlvdGVjYSBxdWUgbm8gbmVjZXNpdGEuIE5vIGVzIHVuCitwcm9ibGVtYSwgcGVybyBwdWVkZSBvcHRpbWl6YXIgbGV2ZW1lbnRlIGVsIHRpZW1wbyBkZSBjYXJnYSBkZWwgYmluYXJpbyBzaQorbm8gZW5sYXphIHRhbCBiaW5hcmlvIGEgbGEgYmlibGlvdGVjYS4gRXN0ZSBhdmlzbyByZXZpc2EgbGEgbWlzbWEKK2luZm9ybWFjafNuIHF1ZSBlbCBhbnRlcmlvciwgcGVybyBsbyBoYWNlIHBhcmEgY2FkYSBiaW5hcmlvLCBlbiBsdWdhciBkZSB1bmEKK3JldmlzafNuIGdsb2JhbCBkZSB0b2RvcyBsb3MgYmluYXJpb3MuCisuU0ggRkFMTE9TCitcZkJkcGtnXC1zaGxpYmRlcHNcZlAgZmFsbGFy4SBzaSBubyBwdWVkZSBlbmNvbnRyYXIgbmluZ3VuYSBiaWJsaW90ZWNhIHD6YmxpY2EKK3VzYWRhIHBvciB1biBiaW5hcmlvLCBvIHNpIG5vIGV4aXN0ZSBuaW5ndW5hIGluZm9ybWFjafNuIGRlIGRlcGVuZGVuY2lhCithc29jaWFkYSBhIGVzdGEgYmlibGlvdGVjYSAoZWwgZmljaGVybyCrc2hsaWJzuywgbyBlbCBmaWNoZXJvCiurc3ltYm9sc7spLiBVbmEgYmlibGlvdGVjYSBw+mJsaWNhIHRpZW5lIHVuIKtTT05BTUW7LCBlbCBjdWFsIHRpZW5lCitpbmZvcm1hY2nzbiBkZSB2ZXJzafNuIChiaWJsaW90ZWNhLnNvLlxmSXhcZlApLiBVbmEgYmlibGlvdGVjYSBwcml2YWRhIChjb21vCit1bmEgZXh0ZW5zafNuKSBubyBkZWJlcu1hIHRlbmVyIHVuIKtTT05BTUW7LCB5IHBvciBlbGxvIG5vIG5lY2VzaXRhCitpbmZvcm1hY2nzbiBkZSB2ZXJzafNuLgorLlRQIAorXGZCY291bGRuJ3QgZmluZCBsaWJyYXJ5IFxmUFxmSWxpYnJhcnlcLXNvbmFtZVxmUFxmQiBuZWVkZWQgYnkgXGZQXGZJYmluYXJ5XGZQXGZCIChpdHMgUlBBVEggaXMgJ1xmUFxmSXJwYXRoXGZQXGZCJylcZlAKK1RoZSBcZkliaW5hcnlcZlAgdXNlcyBhIGxpYnJhcnkgY2FsbGVkIFxmSWxpYnJhcnlcLXNvbmFtZVxmUCBidXQgXGZCZHBrZ1wtc2hsaWJkZXBzXGZQCitoYXMgYmVlbiB1bmFibGUgdG8gZmluZCB0aGUgbGlicmFyeS4gIFxmQmRwa2dcLXNobGliZGVwc1xmUCBjcmVhdGVzIGEgbGlzdCBvZgorZGlyZWN0b3JpZXMgdG8gY2hlY2sgYXMgZm9sbG93aW5nOiBkaXJlY3RvcmllcyBsaXN0ZWQgaW4gdGhlIFJQQVRIIG9mIHRoZQorYmluYXJ5LCBkaXJlY3RvcmllcyBsaXN0ZWQgaW4gL2V0Yy9sZC5zby5jb25mLCBkaXJlY3RvcmllcyBsaXN0ZWQgaW4gdGhlCitMRF9MSUJSQVJZX1BBVEggZW52aXJvbm1lbnQgdmFyaWFibGUsIGFuZCBzdGFuZGFyZCBwdWJsaWMgZGlyZWN0b3JpZXMgKC9saWIsCisvdXNyL2xpYiwgL2xpYjMyLCAvdXNyL2xpYjMyLCAvbGliNjQsIC91c3IvbGliNjQpLiBUaGVuIGl0IGNoZWNrcyB0aG9zZQorZGlyZWN0b3JpZXMgaW4gdGhlIHBhY2thZ2UncyBidWlsZCB0cmVlIG9mIHRoZSBiaW5hcnkgYmVpbmcgYW5hbHl6ZWQsIGluIHRoZQorcGFja2FnZXMnIGJ1aWxkIHRyZWVzIGluZGljYXRlZCB3aXRoIHRoZSBcLVMgY29tbWFuZFwtbGluZSBvcHRpb24sIGluIG90aGVyCitwYWNrYWdlcycgYnVpbGQgdHJlZXMgdGhhdCBjb250YWlucyBhIERFQklBTi9zaGxpYnMgb3IgREVCSUFOL3N5bWJvbHMgZmlsZQorYW5kIGZpbmFsbHkgaW4gdGhlIHJvb3QgZGlyZWN0b3J5LiAgSWYgdGhlIGxpYnJhcnkgaXMgbm90IGZvdW5kIGluIGFueSBvZgordGhvc2UgZGlyZWN0b3JpZXMsIHRoZW4geW91IGdldCB0aGlzIGVycm9yLgorCitTaSBsYSBiaWJsaW90ZWNhIHF1ZSBubyBzZSBlbmNvbnRy8yBlc3ThIGRlbnRybyBkZSB1biBkaXJlY3RvcmlvIHByaXZhZG8gZGVsCittaXNtbyBwYXF1ZXRlLCBxdWVycuEgYfFhZGlyIGVsIGRpcmVjdG9yaW8gYSCrTERfTElCUkFSWV9QQVRIuy4gU2kgZXN04SBlbgorb3RybyBwYXF1ZXRlIGJpbmFyaW8gZW4gY29uc3RydWNjafNuLCBxdWVycuEgYXNlZ3VyYXIgcXVlIGVsIGZpY2hlcm8KK6tzaGxpYnO7IG8gq3N5bWJvbHO7IGRlIGVzdGUgcGFxdWV0ZSB5YSBleGlzdGUsIHkgcXVlIKtMRF9MSUJSQVJZX1BBVEi7Citjb250aWVuZSBlbCBkaXJlY3RvcmlvIGFkZWN1YWRvLCBlbiBjYXNvIGRlIHNlciB1biBkaXJlY3RvcmlvIHByaXZhZG8uCisuVFAgCitcZkJubyBkZXBlbmRlbmN5IGluZm9ybWF0aW9uIGZvdW5kIGZvciBcZlBcZklsaWJyYXJ5XC1maWxlXGZQXGZCICh1c2VkIGJ5IFxmUFxmSWJpbmFyeVxmUFxmQikuXGZQCitcZkJkcGtnXC1zaGxpYmRlcHNcZlAgZW5jb250cvMgbGEgYmlibGlvdGVjYSBxdWUgXGZJYmluYXJpb1xmUCBuZWNlc2l0YSBlbgorXGZJZmljaGVyb1wtYmlibGlvdGVjYVxmUCwgcGVybyBubyBoYSBzaWRvIGNhcGF6IGRlIGVuY29udHJhciBuaW5ndW5hCitpbmZvcm1hY2nzbiBkZSBkZXBlbmRlbmNpYSBwYXJhIGVzdGEgYmlibGlvdGVjYS4gUGFyYSBlbmNvbnRyYXIgbGEKK2RlcGVuZGVuY2lhLCBpbnRlbnTzIGVzdGFibGVjZXIgdW5hIGNvcnJlbGFjafNuIGRlIGxhIGJpYmxpb3RlY2EgY29uIGVsCitwYXF1ZXRlIERlYmlhbiBjb24gbGEgYXl1ZGEgZGUgXGZCZHBrZyBcLVMgXGZQXGZJZmljaGVyb1wtYmlibGlvdGVjYVxmUC4gRGVzcHXpcworcmV2aXPzIGxvcyBjb3JyZXNwb25kaWVudGVzIGZpY2hlcm9zIKtzaGxpYnO7IHkgq3N5bWJvbHO7IGVuCiurL3Zhci9saWIvZHBrZy9pbmZvL7ssIHkgZW4gbG9zIGRpc3RpbnRvcyDhcmJvbGVzIGRlIGNvbnN0cnVjY2nzbiBkZWwKK3BhcXVldGUgKKtkZWJpYW4vKi9ERUJJQU4vuykuCisKK0VzdGUgZmFsbG8gcHVlZGUgZXN0YXIgY2F1c2FkbyBwb3IgdW4gZmljaGVybyCrc2hsaWJzuyBvIKtzeW1ib2xzuworaW5jb3JyZWN0byBvIGF1c2VudGUgZW4gZWwgcGFxdWV0ZSBkZSBsYSBiaWJsaW90ZWNhLiBUYW1iaeluIGNhYmUgcXVlIGxhCitiaWJsaW90ZWNhIHNlIGNvbnN0cnV5YSBkZW50cm8gZGVsIG1pc21vIHBhcXVldGUgZnVlbnRlLCB5IHF1ZSBh+m4gbm8gc2UKK2hheWEgY3JlYWRvIGVsIGZpY2hlcm8gq3NobGlic7sgKGVuIGN1eW8gY2FzbyBkZWJlcu1hIGFycmVnbGFyCiurZGViaWFuL3J1bGVzuyBwYXJhIGNyZWFyIKtzaGxpYnO7IGFudGVzIGRlIGludm9jYXIgXGZCZHBrZ1wtc2hsaWJkZXBzXGZQKS4gVW4KK2luY29ycmVjdG8gq1JQQVRIuyB0YW1iaeluIHB1ZWRlIGxsZXZhciBhIGVuY29udHJhciBsYSBiaWJsaW90ZWNhIGJham8gdW4KK25vbWJyZSBubyBjYW7zbmljbyAocG9yIGVqZW1wbG8sCiurL3Vzci9saWIvb3Blbm9mZmljZS5vcmcvLi4vbGliL2xpYnNzbC5zby4wLjkuOLsgZW4gbHVnYXIgZGUKK6svdXNyL2xpYi9saWJzc2wuc28uMC45Lji7KSBxdWUgbm8gZXN06SBhc29jaWFkbyBhIG5pbmf6bgorcGFxdWV0ZS4gXGZCZHBrZ1wtc2hsaWJkZXBzXGZQIGludGVudGEgZXZpdGFyIGVzdG8gdXNhbmRvIHVuIG5vbWJyZSBjYW7zbmljbworKGNvbiBcZkJyZWFscGF0aFxmUCgzKSksIHBlcm8gbm8gc2llbXByZSBmdW5jaW9uYS4gU2llbXByZSBlcyBtZWpvciBsaW1waWFyIGVsCiurUlBBVEi7IGRlbCBiaW5hcmlvIHBhcmEgZXZpdGFyIHByb2JsZW1hcy4KKworSW52b2NhciBcZkJkcGtnXC1zaGxpYmRlcHNcZlAgZW4gbW9kbyBpbmZvcm1hdGl2byAoXC12KSBvZnJlY2UgbXVjaGEgbeFzCitpbmZvcm1hY2nzbiBhY2VyY2EgZGUgZPNuZGUgYnVzY/MgbGEgaW5mb3JtYWNp824gZGUgZGVwZW5kZW5jaWEuIFB1ZWRlIHNlcgor+nRpbCBzaSBubyBlbnRpZW5kZSBwb3JxdWUgbXVlc3RyYSBlc3RlIGZhbGxvLgorLlNIICJWyUFTRSBUQU1CSclOIgorXGZCZGViXC1zaGxpYnNcZlAoNSksIFxmQmRlYlwtc3ltYm9sc1xmUCg1KSwgXGZCZHBrZ1wtZ2Vuc3ltYm9sc1xmUCgxKS4KKy4KKy5TSCBBVVRPUkVTCitDb3B5cmlnaHQgXChjbyAxOTk1XC0xOTk2IElhbiBKYWNrc29uCisuYnIKK0NvcHlyaWdodCBcKGNvIDIwMDAgV2ljaGVydCBBa2tlcm1hbgorLmJyCitDb3B5cmlnaHQgXChjbyAyMDA2IEZyYW5rIExpY2h0ZW5oZWxkCisuYnIKK0NvcHlyaWdodCBcKGNvIDIwMDdcLTIwMDggUmFwaGFcWzplXWwgSGVydHpvZworLnNwCitFc3RvIGVzIHNvZnR3YXJlIGxpYnJlOyB2ZWEgbGEgdmVyc2nzbiAyIG8gcG9zdGVyaW9yIGRlIGxhIExpY2VuY2lhIFD6YmxpY2EKK0dlbmVyYWwgR05VIHBhcmEgY29uZGljaW9uZXMgZGUgY29waWEuIE5PIGhheSBuaW5ndW5hIGdhcmFudO1hLgorLlNIICJUUkFEVUNUT1IiCitSdWR5IEdvZG95IDxydWR5QGtlcm5lbFwtcGFuaWsub3JnPiwKK1J1YuluIFBvcnJhcyA8bmFob29AaW5pY2lhLmVzPiwKK0JydW5vIEJhcnJlcmEgQy4gPGJydW5vLmJhcnJlcmFAaWdsb28uY2w+LAorQ2FybG9zIEl6cXVpZXJkbyA8Z2hlZXNoQGVydGlzLm5ldD4sCitFc3RlYmFuIE1hbmNoYWRvIHkKK05PSy4KK0RlYmlhbiBMMTBuIFNwYW5pc2ggPGRlYmlhblwtbDEwblwtc3BhbmlzaEBsaXN0cy5kZWJpYW4ub3JnPi4KKy5icgorUmV2aXNpb25lcyBwb3IgU2FudGlhZ28gVmlsYSA8c2FudmlsYUB1bmV4LmVzPiwKK0phdmllciBGZXJu4W5kZXpcLVNhbmd1aW5vLCBSdWLpbiBQb3JyYXMsCitMdWlzIFVyaWJlIHkgT21hciBDYW1wYWduZS4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL2VzL2Rwa2ctc291cmNlLjEgYi9kcGtnLTEuMTYuMS4xL21hbi9lcy9kcGtnLXNvdXJjZS4xCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjAzYzhmMWUKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9lcy9kcGtnLXNvdXJjZS4xCkBAIC0wLDAgKzEsNzE2IEBACisuXCIgQXV0aG9yczogSWFuIEphY2tzb24sIFJhcGhhw6tsIEhlcnR6b2cKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlRIIGRwa2dcLXNvdXJjZSAxIDIwMTFcLTA4XC0xNCAiUHJveWVjdG8gRGViaWFuIiAiSGVycmFtaWVudGFzIGRlIGRwa2ciCisuU0ggTk9NQlJFCitkcGtnXC1zb3VyY2UgXC0gSGVycmFtaWVudGEgZGUgbWFuaXB1bGFjafNuIGRlIHBhcXVldGVzIGZ1ZW50ZSBkZSBEZWJpYW4KK6suZHNjuworLgorLlNIIFNJTk9QU0lTCitcZkJkcGtnXC1zb3VyY2VcZlAgW1xmSW9wdGlvblxmUC4uLl0gXGZJY29tbWFuZFxmUAorLgorLlNIIERFU0NSSVBDSdNOCitcZkJkcGtnXC1zb3VyY2VcZlAgZW1wYXF1ZXRhIHkgZGVzZW1wYXF1ZXRhIGFyY2hpdm9zIGRlIGZ1ZW50ZXMgZGUgRGViaWFuLgorCitOaW5ndW5hIGRlIGVzdGFzIPNyZGVuZXMgcGVybWl0ZSBjb21iaW5hciBt+mx0aXBsZXMgb3BjaW9uZXMgZW4gdW5hCitzb2xhLiBUYW1wb2NvIHBlcm1pdGVuIHF1ZSBlbCB2YWxvciBkZSB1bmEgb3BjafNuIHNlIGVzcGVjaWZpcXVlIGVuIHVuCithcmd1bWVudG8gc2VwYXJhZG8uCisuCisuU0gg01JERU5FUworLlRQIAorXGZCXC14IFxmUFxmSWZpY2hlcm9cZlBcZkIuZHNjIFxmUFtcZklkaXJlY3RvcmlvXC1zYWxpZGFcZlBdCitFeHRyYWUgdW4gcGFxdWV0ZSBmdWVudGUuIFNlIGRlYmUgc3VtaW5pc3RyYXIgdW4gYXJndW1lbnRvIHF1ZSBubyBzZWEgdW5hCitvcGNp824sIGVsIG5vbWJyZSBkZWwgZmljaGVybyBkZSBjb250cm9sIGRlIGZ1ZW50ZSBkZSBEZWJpYW4KKyhcZkIuZHNjXGZQKS4gUHVlZGUgaW50cm9kdWNpciB1biBzZWd1bmRvIGFyZ3VtZW50byBxdWUgbm8gc2VhIHVuYSBvcGNp824gcGFyYQorZGVmaW5pciBlbCBkaXJlY3RvcmlvIGVuIGVsIHF1ZSBleHRyYWVyIGVsIHBhcXVldGUgZnVlbnRlLCBlbCBjdWFsIG5vIGRlYmUKK2V4aXN0aXIuIEVuIGNhc28gZGUgbm8gZGVmaW5pciBuaW5n+m4gZGlyZWN0b3JpbywgZWwgcGFxdWV0ZSBmdWVudGUgc2UKK2V4dHJhZXLhIGVuIHVuIGRpcmVjdG9yaW8gbGxhbWFkbyBcZklmdWVudGVcZlBcLVxmSXZlcnNp825cZlAgZGVudHJvIGRlbCBkaXJlY3RvcmlvCithY3R1YWwuCisKK1xmQmRwa2dcLXNvdXJjZVxmUCBsZWUgbG9zIG5vbWJyZXMgZGUgbG9zIGRlbeFzIGZpY2hlcm9zIHF1ZSBjb21wb25lbiBlbCBwYXF1ZXRlCitmdWVudGUgZGVzZGUgZWwgZmljaGVybyBkZSBjb250cm9sOyBzZSBhc3VtZSBxdWUgZXN04W4gZW4gZWwgbWlzbW8KK2RpcmVjdG9yaW8gcXVlIGVsIGZpY2hlcm8gXGZCLmRzY1xmUC4KKworTG9zIHBlcm1pc29zIHkgcHJvcGlldGFyaW9zIGRlIGxvcyBmaWNoZXJvcyBkZWwgcGFxdWV0ZSBleHRyYe1kbyBzZXLhbiBsb3MKK21pc21vcyBxdWUgc2UgZXNwZXJhcu1hbiBzaSBsb3MgZmljaGVyb3Mgc2UgaHViaWVzZW4gc2ltcGxlbWVudGUgY3JlYWRvIFwtCiswNzc3IHBhcmEgZGlyZWN0b3Jpb3MgeSBlamVjdXRhYmxlcyB5IDA2NjYgcGFyYSBlbCByZXN0byBkZSBmaWNoZXJvcywgYW1ib3MKK21vZGlmaWNhZG9zIHNlZ/puIGVsIHVtYXNrIGRlbCBleHRyYWN0b3IuIFNpIGVsIGRpcmVjdG9yaW8gc3VwZXJpb3IgdGllbmUKK2FjdGl2YWRvIGVsIGJpdCBzZXRnaWQsIGxvcyBkaXJlY3RvcmlvcyBleHRyYe1kb3MgbG8gdGVuZHLhbiB0YW1iaeluLCB5Cit0b2RvcyBsb3MgZmljaGVyb3MgeSBkaXJlY3RvcmlvcyBoZXJlZGFy4W4gZWwgZ3J1cG8gYWwgcXVlIHBlcnRlbmVjZS4KKworU2kgZWwgcGFxdWV0ZSBmdWVudGUgdXNhIHVuIGZvcm1hdG8gbm8gZXN04W5kYXIgKGEgZO1hIGRlIGhveSwgdG9kb3MgbG9zCitmb3JtYXRvcyBtZW5vcyCrMS4wuyksIHN1IG5vbWJyZSBzZSBndWFyZGFy4SBlbiBcZkJkZWJpYW4vc291cmNlL2Zvcm1hdFxmUCBwYXJhCitxdWUgbGFzIHNpZ3VpZW50ZXMgY29uc3RydWNjaW9uZXMgZGVsIHBhcXVldGUgZnVlbnRlIHVzZW4gZWwgbWlzbW8gZm9ybWF0bworcG9yIG9taXNp824uCisKKy5UUCAKK1xmQlwtYlxmUCBcZklkaXJlY3RvcmlvXGZQIFtcZklwYXLhbWV0cm9zXC1lc3BlY+1maWNvc1wtZm9ybWF0b1xmUF0KK0NvbnN0cnV5ZSB1biBwYXF1ZXRlIGZ1ZW50ZS4gRWwgcHJpbWVyIGFyZ3VtZW50bywgcXVlIG5vIG9wY2nzbiwgc2UgdG9tYQorY29tbyBlbCBub21icmUgZGVsIGRpcmVjdG9yaW8gcXVlIGNvbnRpZW5lIGVsIOFyYm9sIGRlIGZ1ZW50ZXMgq2RlYmlhbml6YWRvuworKHBvciBlamVtcGxvLCBjb24gdW4gc3ViZGlyZWN0b3JpbyCrZGViaWFuL7ssIHkgcHVlZGUgcXVlIGNhbWJpb3MgZW4gbG9zCitmaWNoZXJvcyBvcmlnaW5hbGVzKS4gUHVlZGUgZXNwZWNpZmljYXIgcGFy4W1ldHJvcyBhZGljaW9uYWxlcywgZGVwZW5kaWVuZG8KK2RlbCBmb3JtYXRvIGRlIHBhcXVldGUgZnVlbnRlIHVzYWRvIGVuIGxhIGNvbnN0cnVjY2nzbiBkZWwgcGFxdWV0ZS4KKworXGZCZHBrZ1wtc291cmNlXGZQIHdpbGwgYnVpbGQgdGhlIHNvdXJjZSBwYWNrYWdlIHdpdGggdGhlIGZpcnN0IGZvcm1hdCBmb3VuZCBpbgordGhpcyBvcmRlcmVkIGxpc3Q6IHRoZSBmb3JtYXQgaW5kaWNhdGVkIHdpdGggdGhlIFxmSVwtXC1mb3JtYXRcZlAgY29tbWFuZCBsaW5lCitvcHRpb24sIHRoZSBmb3JtYXQgaW5kaWNhdGVkIGluIFxmQmRlYmlhbi9zb3VyY2UvZm9ybWF0XGZQLCAiMS4wIi4gVGhlIGZhbGxiYWNrCit0byAiMS4wIiBpcyBkZXByZWNhdGVkIGFuZCB3aWxsIGJlIHJlbW92ZWQgYXQgc29tZSBwb2ludCBpbiB0aGUgZnV0dXJlLCB5b3UKK3Nob3VsZCBhbHdheXMgZG9jdW1lbnQgdGhlIGRlc2lyZWQgc291cmNlIGZvcm1hdCBpbgorXGZCZGViaWFuL3NvdXJjZS9mb3JtYXRcZlAuIFNlZSBzZWN0aW9uIFxmQlNPVVJDRSBQQUNLQUdFIEZPUk1BVFNcZlAgZm9yIGFuCitleHRlbnNpdmUgZGVzY3JpcHRpb24gb2YgdGhlIHZhcmlvdXMgc291cmNlIHBhY2thZ2UgZm9ybWF0cy4KKworLlRQIAorXGZCXC1cLXByaW50XC1mb3JtYXRcZlAgXGZJZGlyZWN0b3Jpb1xmUAorTXVlc3RyYSBlbCBmb3JtYXRvIGRlIGZ1ZW50ZXMgYSB1c2FyIGVuIGxhIGNvbnN0cnVjY2nzbiBkZWwgcGFxdWV0ZSBmdWVudGUKK3NpIHNlIGludm9j8yBcZkJkcGtnXC1zb3VyY2UgXC1iIFxmUFxmSWRpcmVjdG9yaW9cZlAgKGNvbiBsYXMgbWlzbWFzIGNvbmRpY2lvbmVzIHkKK2xvcyBtaXNtb3MgcGFy4W1ldHJvcykuCisKKy5UUCAKK1xmQlwtXC1iZWZvcmVcLWJ1aWxkXGZQIFxmSWRpcmVjdG9yaW9cZlAKK1J1biB0aGUgY29ycmVzcG9uZGluZyBob29rIG9mIHRoZSBzb3VyY2UgcGFja2FnZSBmb3JtYXQuIFRoaXMgaG9vayBpcyBjYWxsZWQKK2JlZm9yZSBhbnkgYnVpbGQgb2YgdGhlIHBhY2thZ2UgKFxmQmRwa2dcLWJ1aWxkcGFja2FnZVxmUCBjYWxscyBpdCB2ZXJ5IGVhcmx5CitldmVuIGJlZm9yZSBcZkJkZWJpYW4vcnVsZXMgY2xlYW5cZlApLiBUaGlzIGNvbW1hbmQgaXMgaWRlbXBvdGVudCBhbmQgY2FuIGJlCitjYWxsZWQgbXVsdGlwbGUgdGltZXMuIE5vdCBhbGwgc291cmNlIGZvcm1hdHMgaW1wbGVtZW50IHNvbWV0aGluZyBpbiB0aGlzCitob29rLCBhbmQgdGhvc2UgdGhhdCBkbyB1c3VhbGx5IHByZXBhcmUgdGhlIHNvdXJjZSB0cmVlIGZvciB0aGUgYnVpbGQgZm9yCitleGFtcGxlIGJ5IGVuc3VyaW5nIHRoYXQgdGhlIERlYmlhbiBwYXRjaGVzIGFyZSBhcHBsaWVkLgorCisuVFAgCitcZkJcLVwtYWZ0ZXJcLWJ1aWxkXGZQIFxmSWRpcmVjdG9yaW9cZlAKK1J1biB0aGUgY29ycmVzcG9uZGluZyBob29rIG9mIHRoZSBzb3VyY2UgcGFja2FnZSBmb3JtYXQuIFRoaXMgaG9vayBpcyBjYWxsZWQKK2FmdGVyIGFueSBidWlsZCBvZiB0aGUgcGFja2FnZSAoXGZCZHBrZ1wtYnVpbGRwYWNrYWdlXGZQIGNhbGxzIGl0IGxhc3QpLiBUaGlzCitjb21tYW5kIGlzIGlkZW1wb3RlbnQgYW5kIGNhbiBiZSBjYWxsZWQgbXVsdGlwbGUgdGltZXMuIE5vdCBhbGwgc291cmNlCitmb3JtYXRzIGltcGxlbWVudCBzb21ldGhpbmcgaW4gdGhpcyBob29rLCBhbmQgdGhvc2UgdGhhdCBkbyB1c3VhbGx5IHVzZSBpdAordG8gdW5kbyB3aGF0IFxmQlwtXC1iZWZvcmVcLWJ1aWxkXGZQIGhhcyBkb25lLgorCisuVFAgCitcZkJcLVwtY29tbWl0XGZQIFtcZklkaXJlY3RvcnlcZlBdIC4uLgorUmVjb3JkIGNoYW5nZXMgaW4gdGhlIHNvdXJjZSB0cmVlIHVucGFja2VkIGluIFxmSWRpcmVjdG9yeVxmUC4gVGhpcyBjb21tYW5kIGNhbgordGFrZSBzdXBwbGVtZW50YXJ5IHBhcmFtZXRlcnMgZGVwZW5kaW5nIG9uIHRoZSBzb3VyY2UgZm9ybWF0LiAgSXQgd2lsbCBlcnJvcgorb3V0IGZvciBmb3JtYXRzIHdoZXJlIHRoaXMgb3BlcmF0aW9uIGRvZXNuJ3QgbWVhbiBhbnl0aGluZy4KKworLlRQIAorXGZCXC1oXGZQLCBcZkJcLVwtaGVscFxmUAorTXVlc3RyYSBlbCBtb2RvIGRlIHVzbyB5IHRlcm1pbmEuCisuVFAgCitcZkJcLVwtdmVyc2lvblxmUAorTXVlc3RyYSBsYSB2ZXJzafNuIHkgdGVybWluYS4KKy4KKy5TSCAiT1BDSU9ORVMgR0VOyVJJQ0FTIERFIENPTlNUUlVDQ0nTTiIKKy5UUCAKK1xmQlwtY1xmUFxmSWZpY2hlcm9cLWNvbnRyb2xcZlAKK0RlZmluZSBlbCBmaWNoZXJvIGRlIGNvbnRyb2wgcHJpbmNpcGFsIGRlIGxhcyBmdWVudGVzIGRlbCBxdWUgbGVlciBsYQoraW5mb3JtYWNp824sIFxmQmRlYmlhbi9jb250cm9sXGZQIHBvciBvbWlzafNuLiBTaSBzZSBpbnRyb2R1Y2VuIHJ1dGFzCityZWxhdGl2YXMsIOlzdGFzIHNlIGludGVycHJldGFuIGVtcGV6YW5kbyBlbiBlbCBkaXJlY3RvcmlvIHN1cGVyaW9yIGRlbAor4XJib2wgZGUgZnVlbnRlcy4KKy5UUCAKK1xmQlwtbFxmUFxmSWZpY2hlcm9cLWNhbWJpb3NcZlAKK0RlZmluZSBlbCBmaWNoZXJvIGRlIHJlZ2lzdHJvIGRlIGNhbWJpb3MgZGVsIHF1ZSBsZWVyIGxhIGluZm9ybWFjafNuLAorXGZCZGViaWFuL2NoYW5nZWxvZ1xmUCBwb3Igb21pc2nzbi4gU2kgc2UgaW50cm9kdWNlbiBydXRhcyByZWxhdGl2YXMsIOlzdGFzIHNlCitpbnRlcnByZXRhbiBlbXBlemFuZG8gZW4gZWwgZGlyZWN0b3JpbyBzdXBlcmlvciBkZWwg4XJib2wgZGUgZnVlbnRlcy4KKy5UUCAKK1xmQlwtRlxmUFxmSWZvcm1hdG9cLXJlZ2lzdHJvXC1jYW1iaW9zXGZQCitEZWZpbmUgZWwgZm9ybWF0byBkZWwgcmVnaXN0cm8gZGUgY2FtYmlvcy4gUG9yIG9taXNp824sIGVsIGZvcm1hdG8gc2UgbGVlIGRlCit1bmEgbO1uZWEgZXNwZWNpYWwgY2VyY2EgZGVsIGZpbmFsIGRlbCByZWdpc3RybyBkZSBjYW1iaW9zIG8sIGVuIGNhc28gZGUKK2ZhbGxvLCB1c2EgZWwgZm9ybWF0byBlc3ThbmRhciBkZWJpYW4uCisuVFAgCitcZkJcLVwtZm9ybWF0PVxmUFxmSXZhbG9yXGZQCitVc2EgZWwgZm9ybWF0byBkYWRvIHBhcmEgbGEgY29uc3RydWNjafNuIGRlbCBwYXF1ZXRlIGZ1ZW50ZS4gRXN0bworc29icmVlc2NyaWJlIGN1YWxxdWllciBmb3JtYXRvIHByZXNlbnRlIGVuXGZCZGViaWFuL3NvdXJjZS9mb3JtYXRcZlAuCisuVFAgCitcZkJcLVZcZlBcZklub21icmVcZlBcZkI9XGZQXGZJdmFsb3JcZlAKK0RlZmluZSB1bmEgdmFyaWFibGUgZGUgc3VzdGl0dWNp824gZGUgbGEgc2FsaWRhLiBDb25zdWx0ZQorXGZCZGViXC1zdWJzdHZhcnNcZlAoNSkgcGFyYSBt4XMgaW5mb3JtYWNp824gYWNlcmNhIGRlIGxhIHN1c3RpdHVjafNuIGRlIGxhCitzYWxpZGEuCisuVFAgCitcZkJcLVRcZlBcZklmaWNoZXJvXC12YXJpYWJsZXNcLXN1c3RcZlAKK0xlZSBsYXMgdmFyaWFibGVzIGRlIHN1c3RpdHVjafNuIGRlc2RlIFxmSWZpY2hlcm9cLXZhcmlhYmxlc1wtc3VzdFxmUDsgZWwgdmFsb3IKK3BvciBvbWlzafNuIGVzIG5vIGxlZXIgbmluZ3Vuby4gUHVlZGUgdXNhciBlc3RhIG9wY2nzbiB2YXJpYXMgdmVjZXMgcGFyYQorbGVlciB2YXJpYWJsZXMgZGUgc3VzdGl0dWNp824gZGUgdmFyaW9zIGZpY2hlcm9zLgorLlRQIAorXGZCXC1EXGZQXGZJY2FtcG9cZlBcZkI9XGZQXGZJdmFsb3JcZlAKK1NvYnJlZXNjcmliZSBvIGHxYWRlIHVuIGNhbXBvIGVuIGVsIGZpY2hlcm8gZGUgY29udHJvbCBkZSBzYWxpZGEuCisuVFAgCitcZkJcLVVcZlBcZkljYW1wb1xmUAorRWxpbWluYSB1biBjYW1wbyBkZWwgZmljaGVybyBkZSBjb250cm9sIGRlIHNhbGlkYS4KKy5UUCAKK1xmQlwtWlxmUFxmSWNvbXByZXNzaW9uXGZQLCBcZkJcLVwtY29tcHJlc3Npb25cZlA9XGZJY29tcHJlc2nzblxmUAorRGVmaW5lIHF16SBjb21wcmVzafNuIHVzYXIgY29uIGxvcyBmaWNoZXJvcyBjcmVhZG9zIChhcmNoaXZvcyB0YXIgeSBmaWNoZXJvcworq2RpZma7KS4gVGVuZ2EgZW4gY3VlbnRhIHF1ZSBlc3RhIG9wY2nzbiBubyBwcm92b2NhIHF1ZSBsb3MgYXJjaGl2b3MgdGFyCitleGlzdGVudGVzIHNlIGNvbXByaW1hbiBudWV2YW1lbnRlLCBz82xvIGFmZWN0YSBhIGxvcyBmaWNoZXJvcyBudWV2b3MuIExvcwordmFsb3JlcyBwZXJtaXRpZG9zIHNvbjogXGZJZ3ppcFxmUCwgXGZJYnppcDJcZlAsIFxmSWx6bWFcZlAgeSBcZkl4elxmUC4gXGZJZ3ppcFxmUCBzZSB1c2EKK3BvciBvbWlzafNuLiBMYSBjb21wYXRpYmlsaWRhZCBjb24gXGZJeHpcZlAgZXMgcG9zaWJsZSBkZXNkZSBkcGtnXC1kZXYgMS4xNS41LgorLlRQIAorXGZCXC16XGZQXGZJbGV2ZWxcZlAsIFxmQlwtXC1jb21wcmVzc2lvblwtbGV2ZWxcZlA9XGZJbml2ZWxcZlAKK0NvbXByZXNzaW9uIGxldmVsIHRvIHVzZS4gQXMgd2l0aCBcZkJcLVpcZlAgaXQgb25seSBhZmZlY3RzIG5ld2x5IGNyZWF0ZWQKK2ZpbGVzLiBTdXBwb3J0ZWQgdmFsdWVzIGFyZTogXGZJMVxmUCB0byBcZkk5XGZQLCBcZkliZXN0XGZQLCBhbmQgXGZJZmFzdFxmUC4gIFRoZQorZGVmYXVsdCBpcyBcZkk5XGZQIGZvciBnemlwIGFuZCBiemlwMiwgXGZJNlxmUCBmb3IgeHogYW5kIGx6bWEuCisuVFAgCitcZkJcLWlcZlBbXGZJZXhwcmVzafNuXC1yZWd1bGFyXGZQXSwgXGZCXC1cLWRpZmZcLWlnbm9yZVxmUFs9XGZJZXhwcmVzafNuXC1yZWd1bGFyXGZQXQorUHVlZGUgZXNwZWNpZmljYXIgdW5hIGV4cHJlc2nzbiByZWd1bGFyIGRlIFBlcmwgcGFyYSBpbmRpY2FyIGFxdWVsbG9zCitmaWNoZXJvcyBxdWUgZGVzZWUgZXhjbHVpciBkZSBsYSBsaXN0YSBkZSBmaWNoZXJvcyBwYXJhIGVsIKtkaWZmuyAoZXN0YQorbGlzdGEgc2UgZ2VuZXJhIGNvbiB1bmEgb3JkZW4gZmluZCkuIFB1ZWRlIHVzYXIgZXN0byBwYXJhIGlnbm9yYXIgY2FtYmlvcyBubworaW50cm9kdWNpZG9zIGVuIGZpY2hlcm9zIGVzcGVj7WZpY29zLCBlbiBjYXNvIGRlIGNvbnN0cnVpciB1biBwYXF1ZXRlIGZ1ZW50ZQorY29tbyB1biBwYXF1ZXRlIGZ1ZW50ZSB2ZXJzafNuIDMgdXNhbmRvIFZDUy4gUG9yIHPtIG1pc21vLCBcZkJcLWlcZlAgYWN0aXZhIGxhCitvcGNp824gY29uIHVuYSBleHByZXNp824gcmVndWxhciBwcmVkZWZpbmlkYSBxdWUgZWxpbWluYSBsb3MgZmljaGVyb3MgeQorZGlyZWN0b3Jpb3MgZGUgY29udHJvbCBkZSBsb3Mgc2lzdGVtYXMgZGUgY29udHJvbCBkZSB2ZXJzaW9uZXMgbeFzIGNvbXVuZXMsCitsb3MgZmljaGVyb3MgZGUgcmVzcGFsZG8sIGxvcyBmaWNoZXJvcyBkZSBpbnRlcmNhbWJpbyB5IGxvcyBkaXJlY3RvcmlvcyBxdWUKK3NlIGdlbmVyYW4gY29tbyByZXN1bHRhZG8gZGUgbGFzIG9wZXJhY2lvbmVzIGRlIExpYnRvb2wuIFPzbG8gcHVlZGUgaGFiZXIKK3VuYSBleHByZXNp824gcmVndWxhciBhY3RpdmEsIHkgZW4gY2FzbyBkZSBleGlzdGlyIHZhcmlhcyBvcGNpb25lcyBcZkJcLWlcZlAKK3PzbG8gc2UgdGVuZHLhIGVuIGN1ZW50YSBsYSD6bHRpbWEuCisKK0VzdG8gZXMg+nRpbCBwYXJhIGVsaW1pbmFyIGZpY2hlcm9zIGV4dGVybm9zIHF1ZSBzZSBpbmNsdXllbiBlbiBlbAorq2RpZma7LiBQb3IgZWplbXBsbywgc2kgZGVzYXJyb2xsYSBzdSBzb2Z0d2FyZSBlbiBzaXN0ZW1hIGRlIGNvbnRyb2wgZGUKK3ZlcnNpb25lcyB5IGRlc2VhIHJlYWxpemFyIHVuIKtjaGVja291dLsgcGFyYSBjb25zdHJ1aXIgdW4gcGFxdWV0ZSBmdWVudGUsCitzaW4gaW5jbHVpciBsb3MgZmljaGVyb3MgeSBkaXJlY3RvcmlvcyBhZGljaW9uYWxlcyBxdWUgaGFiaXR1YWxtZW50ZQorY29udGllbmUgKHBvciBlamVtcGxvLCCrQ1ZTL7ssIKsuY3ZzaWdub3Jluywgqy5zdm67KS4gTGEgZXhwcmVzafNuIHJlZ3VsYXIKK3ByZWRlZmluaWRhIGVzIGJhc3RhbnRlIGNvbXBsZXRhLCBwZXJvIHNpIG5lY2VzaXRhIHJlZW1wbGF6YXJsYSwgdGVuZ2EgZW4KK2N1ZW50YSBxdWUgcG9yIG9taXNp824sIHB1ZWRlIGNvaW5jaWRpciBjb24gY3VhbHF1aWVyIHBhcnRlIGRlIGxhIHJ1dGEuIFBvcgorZWxsbywgc2kgZGVzZWEgZW1wYXJlamFyIGVsIHByaW5jaXBpbyBkZSB1biBub21icmUgZGUgZmljaGVybywgbyBz82xvCitub21icmVzIGRlIGZpY2hlcm8gY29tcGxldG9zLCB0ZW5kcuEgcXVlIGludHJvZHVjaXIgZGlyZWN0YW1lbnRlIGVsIGFuY2xhamUKK25lY2VzYXJpbyAocG9yIGVqZW1wbG8sICcoXnwvKScsICcoJHwvKScpLgorLlRQIAorXGZCXC1cLWV4dGVuZFwtZGlmZlwtaWdub3JlXGZQPVxmSWV4cHJlc2nzblwtcmVndWxhclxmUAorVGhlIHBlcmwgcmVndWxhciBleHByZXNzaW9uIHNwZWNpZmllZCB3aWxsIGV4dGVuZCB0aGUgZGVmYXVsdCB2YWx1ZSBvZgorXGZCXC1cLWRpZmZcLWlnbm9yZVxmUCBhbmQgaXRzIGN1cnJlbnQgdmFsdWUgKGlmIHNldCkuIEl0IGRvZXMgdGhpcyBieQorY29uY2F0ZW5hdGluZyAiXGZCfFxmUFxmSXJlZ2V4cFxmUCIgdG8gdGhlIGV4aXN0aW5nIHZhbHVlLiAgVGhpcyBvcHRpb24gaXMKK2NvbnZlbmllbnQgdG8gdXNlIGluIFxmQmRlYmlhbi9zb3VyY2Uvb3B0aW9uc1xmUCB0byBleGNsdWRlIHNvbWUgYXV0b1wtZ2VuZXJhdGVkCitmaWxlcyBmcm9tIHRoZSBhdXRvbWF0aWMgcGF0Y2ggZ2VuZXJhdGlvbi4KKy5UUCAKK1xmQlwtSVxmUFtcZklwYXRy825cLWZpY2hlcm9cZlBdLCBcZkJcLVwtdGFyXC1pZ25vcmVcZlBbPVxmSXBhdHLzblwtZmljaGVyb1xmUF0KK1NpIHNlIGVzcGVjaWZpY2EgZXN0YSBvcGNp824sIGVsIG5vbWJyZSBkZSBmaWNoZXJvIHNlIHBhc2Fy4SBjb21vIHBhcuFtZXRybworYSBsYSBvcGNp824gq1wtXC1leGNsdWRluyBkZSBcZkJ0YXJcZlAoMSkgYWwgZ2VuZXJhciBlbCBmaWNoZXJvIKsub3JpZy50YXK7IG8KK6sudGFyuy4gUG9yIGVqZW1wbG8sIKtcLUlDVlO7IGhhcuEgcXVlIHRhciBvbWl0YSBsb3MgZGlyZWN0b3Jpb3MgQ1ZTIGN1YW5kbworZ2VuZXJlIGVsIGZpY2hlcm8gqy50YXIuZ3q7LiBMYSBvcGNp824gc2UgcHVlZGUgcmVwZXRpciB2YXJpYXMgdmVjZXMgcGFyYQorbGlzdGFyIHZhcmlvcyBwYXRyb25lcyBhIGV4Y2x1aXIuCisKK1BvciBzaSBtaXNtbywgXGZCXC1JXGZQIGHxYWRlIGxhcyBvcGNpb25lcyBwcmVkZWZpbmlkYXMgq1wtXC1leGNsdWRluywgcXVlCitmaWx0cmFy4W4gbG9zIGZpY2hlcm9zIGRlIGNvbnRyb2wgeSBsb3MgZGlyZWN0b3Jpb3MgZGUgbG9zIHNpc3RlbWFzIGRlCitjb250cm9sIGRlIHZlcnNpb25lcyBt4XMgY29tdW5lcywgZmljaGVyb3MgZGUgcmVzcGFsZG8gZSBpbnRlcmNhbWJpbywgeSBsb3MKK2RpcmVjdG9yaW9zIGRlIHNhbGlkYSBkZSBjb25zdHJ1Y2Np824gZGUgTGlidG9vbC4KKy5QUAorXGZCTm90YTpcZlAgQSBwZXNhciBkZSB0ZW5lciBvYmpldGl2b3Mgc2ltaWxhcmVzLCBcZkJpXGZQIHkgXGZCSVxmUCB0aWVuZW4gdW5hCitzaW50YXhpcyB5IHNlbeFudGljYSBtdXkgZGlmZXJlbnRlcy4gU/NsbyBwdWVkZSBlc3BlY2lmaWNhciBcZkJpXGZQIHVuYSB2ZXosCitxdWUgdG9tYSB1bmEgZXhwcmVzafNuIHJlZ3VsYXIgY29tcGF0aWJsZSBjb24gUGVybCwgbGEgY3VhbCBzZSBjb21wYXJhIGNvbgorbGEgcnV0YSByZWxhdGl2YSBkZSBjYWRhIGZpY2hlcm8uIFB1ZWRlIGVzcGVjaWZpY2FyIFxmQklcZlAgdmFyaWFzIHZlY2VzLCB5Cit0b21hIHVuIHBhdHLzbiBkZSBub21icmUgZGUgZmljaGVybyBjb24gY29tb2RpbmVzIGRlIGludOlycHJldGUgZGUKK/NyZGVuZXMuIEVsIHBhdHLzbiBzZSBjb21wYXJhIGNvbiBsYSBydXRhIHJlbGF0aXZhLCB5IHRhbWJp6W4gY29uIGNhZGEgcGFydGUKK2RlIGxhIHJ1dGEsIGRlIG1hbmVyYSBpbmRpdmlkdWFsLiBMYSBzZW3hbnRpY2EgZXhhY3RhIGRlIGxhIG9wY2nzbgorq1wtXC1leGNsdWRluyBkZSB0YXIgZXMgYWxnbyBjb21wbGljYWRhLCBjb25zdWx0ZQoraHR0cDovL3d3dy5nbnUub3JnL3NvZnR3YXJlL3Rhci9tYW51YWwvdGFyLmh0bWwjd2lsZGNhcmRzIHBhcmEgdW5hIGNvbXBsZXRhCitkb2N1bWVudGFjafNuLgorCitQdWVkZSBjb25zdWx0YXIgbG9zIHBhdHJvbmVzIHkgZXhwcmVzaW9uZXMgcmVndWxhcmVzIHByZWRlZmluaWRhcyBkZSBhbWJhcworb3BjaW9uZXMgZW4gbGEgc2FsaWRhIGRlIGxhIG9yZGVuIFxmQlwtXC1oZWxwXGZQLgorLlNIICJPUENJT05FUyBERSBFWFRSQUNDSdNOIEdFTslSSUNBUyIKKy5UUCAKK1xmQlwtXC1ub1wtY29weVxmUAorTm8gY29waWEgbG9zIGZpY2hlcm9zIHRhciBvcmlnaW5hbGVzIGNlcmNhIGRlbCBwYXF1ZXRlIGZ1ZW50ZSBleHRyYe1kby4KKy5UUCAKK1xmQlwtXC1ub1wtY2hlY2tcZlAKK05vIHJldmlzYSBsYXMgZmlybWFzIHkgc3VtYXMgZGUgY29udHJvbCBhbnRlcyBkZSBkZXNlbXBhcXVldGFyLgorLlRQIAorXGZCXC1cLXJlcXVpcmVcLXZhbGlkXC1zaWduYXR1cmVcZlAKK1JlY2hhemEgZGVzZW1wYXF1ZXRhciBlbCBwYXF1ZXRlIGZ1ZW50ZSBzaSBubyBjb250aWVuZSB1bmEgZmlybWEgT3BlblBHUCwKK3F1ZSBzZSB2ZXJpZmljYSBvIGJpZW4gY29uIGVsIGFuaWxsbyBkZSBjbGF2ZXMgZGUgdXN1YXJpbworXGZJdHJ1c3RlZGtleXMuZ3BnXGZQLCB1bm8gZGUgbG9zIGFuaWxsb3MgZGUgY2xhdmVzIGVzcGVj7WZpY29zIGRlbCBwcm92ZWVkb3IsCitvIHVubyBkZSBsb3MgYW5pbGxvcyBkZSBjbGF2ZXMgb2ZpY2lhbGVzIGRlIERlYmlhbiwKK1xmSS91c3Ivc2hhcmUva2V5cmluZ3MvZGViaWFuXC1rZXlyaW5nLmdwZ1xmUCB5CitcZkkvdXNyL3NoYXJlL2tleXJpbmdzL2RlYmlhblwtbWFpbnRhaW5lcnMuZ3BnXGZQLgorCisuU0ggIkZPUk1BVE9TIERFIFBBUVVFVEUgRlVFTlRFIgorU2kgbm8gc2FiZSBxdekgZm9ybWF0byBkZSBmdWVudGVzIHVzYXIsIGRlYmVy7WEgc2VsZWNjaW9uYXIgbyBiaWVuIKszLjAKKyhxdWlsdCm7IG8gqzMuMCAobmF0aXZlKbsuIENvbnN1bHRlCiuraHR0cDovL3dpa2kuZGViaWFuLm9yZy9Qcm9qZWN0cy9EZWJTcmMzLjC7IHBhcmEgbeFzIGluZm9ybWFjafNuIGFjZXJjYSBkZWwKK2Rlc2Fycm9sbG8gZGUgZXN0b3MgZm9ybWF0b3MgZGVudHJvIGRlbCBwcm95ZWN0byBEZWJpYW4uCisKKy5TUyAiRm9ybWF0bzogMS4wIgorVW4gcGFxdWV0ZSBmdWVudGUgZW4gZXN0ZSBmb3JtYXRvIGNvbnNpc3RlIGJpZW4gZGUgdW4gXGZCLm9yaWcudGFyLmd6XGZQCithc29jaWFkbyBhIHVuIFxmQi5kaWZmLmd6XGZQLCBvIGJpZW4gZGUgdW4g+m5pY28gXGZCLnRhci5nelxmUCAoZW4gdGFsIGNhc28sIGVsCitwYXF1ZXRlIHNlIGNvbnNpZGVyYSBcZkluYXRpdmVcZlApLgorCitcZkJFeHRyYWNjafNuXGZQCisKK0V4dHJhZXIgdW4gcGFxdWV0ZSBuYXRpdm8gZXMgc2ltcGxlbWVudGUgdW5hIGV4dHJhY2Np824gZGUgdW4g+m5pY28gYXJjaGl2bwordGFyIGVuIGVsIGRpcmVjdG9yaW8gZGVzdGluby4gRXh0cmFlciB1biBwYXF1ZXRlIG5vIG5hdGl2byBzZSByZWFsaXphLAorcHJpbWVybywgZGVzZW1wYXF1ZXRhbmRvIGVsIFxmQi5vcmlnLnRhci5nelxmUCBwYXJhIGRlc3B16XMgYXBsaWNhciBlbCBwYXJjaGUKK2NvbnRlbmlkbyBlbiBlbCBmaWNoZXJvIFxmQi5kaWZmLmd6XGZQLiBMYSBtYXJjYSB0ZW1wb3JhbCBkZSB0b2RvcyBsb3MgZmljaGVyb3MKK3BhcmNoZWFkb3Mgc2UgbW9kaWZpY2EgZW4gZWwgbW9tZW50byBkZSBleHRyYWVyIGVsIHBhcXVldGUgZnVlbnRlIChlc3RvCitldml0YSBiaWZ1cmNhY2lvbmVzIGRlIGxhcyBtYXJjYXMgdGVtcG9yYWxlcywgcXVlIGNvbmR1Y2VuIGEgcHJvYmxlbWFzCitjdWFuZG8gc2UgcGFyY2hlYW4gbG9zIGZpY2hlcm9zIGdlbmVyYWRvcyBhdXRvbeF0aWNhbWVudGUpLiBFbCCrZGlmZrsgcHVlZGUKK2NyZWFyIG51ZXZvcyBmaWNoZXJvcyAodG9kbyBlbCBkaXJlY3RvcmlvIKtkZWJpYW4vuyBzZSBjcmVhIGRlIGVzdGEgbWFuZXJhKQorcGVybyBubyBwdWVkZSBlbGltaW5hciBmaWNoZXJvcyAobG9zIGZpY2hlcm9zIHZhY+1vcyBwZXJtYW5lY2Vy4W4gZW4gZWwKK3Npc3RlbWEpLgorCitcZkJDb25zdHJ1Y2Np825cZlAKKworQ29uc3RydWlyIHVuIHBhcXVldGUgbmF0aXZvIGNvbnNpc3RlIGRlIGxhIGNyZWFjafNuIGRlIHVuIPpuaWNvIGFyY2hpdm8gdGFyCitjb24gZWwgZGlyZWN0b3JpbyBmdWVudGUuIENvbnN0cnVpciB1biBwYXF1ZXRlIG5vIG5hdGl2byBpbmNsdXllIGV4dHJhZXIgZWwKK2FyY2hpdm8gdGFyIG9yaWdpbmFsIGVuIG90cm8gZGlyZWN0b3JpbyCrLm9yaWe7LCByZWdlbmVyYW5kbyBlbCBcZkIuZGlmZi5nelxmUAorcG9yIGNvbXBhcmFjafNuIGRlbCBcZklkaXJlY3RvcmlvXGZQIGRlbCBwYXF1ZXRlIGZ1ZW50ZSBjb24gZWwgZGlyZWN0b3Jpbworqy5vcmlnuy4KKworLlRQIAorXGZCT3BjaW9uZXMgZGUgY29uc3RydWNjafNuIChjb24gXC1iKTpcZlAKKy5QUAorU2kgaGF5IHVuIHNlZ3VuZG8gYXJndW1lbnRvLCBkZWJlcu1hIHNlciBlbCBub21icmUgZGVsIGRpcmVjdG9yaW8gZGUKK2Z1ZW50ZXMsIGRlbCBmaWNoZXJvIHRhciBvcmlnaW5hbCBvIGxhIGNhZGVuYSB2YWPtYSwgc2kgZWwgcGFxdWV0ZSBlcworZXNwZWPtZmljbyBkZSBEZWJpYW4geSBwb3IgdGFudG8gY2FyZWNlIGRlIGRpZmZzIKtkZWJpYW5pemFudGVzuy4gU2kgbm8gc2UKK3Byb3BvcmNpb25hIHVuIHNlZ3VuZG8gYXJndW1lbnRvLCBcZkJkcGtnXC1zb3VyY2VcZlAgYnVzY2Fy4SBlbCBhcmNoaXZvIHRhcgorb3JpZ2luYWwgXGZJcGFxdWV0ZVxmUFxmQl9cZlBcZkl2ZXJzafNuXC1hdXRvclwtb3JpZ2luYWxcZlBcZkIub3JpZy50YXIuZ3pcZlAgbyBlbAorZGlyZWN0b3JpbyBkZSBmdWVudGVzIG9yaWdpbmFsIFxmSWRpcmVjdG9yaW9cZlBcZkIub3JpZ1xmUCBlbiBmdW5jafNuIGRlIGxvcworYXJndW1lbnRvcyBcZkJcLXNYXGZQLgorCitcZkJcLXNhXGZQLCBcZkJcLXNwXGZQLCBcZkJcLXNrXGZQLCBcZkJcLXN1XGZQIHkgXGZCXC1zclxmUCBubyBzb2JyZWVzY3JpYmly4W4gZGlyZWN0b3Jpb3MgbworZmljaGVyb3MgdGFyIGV4aXN0ZW50ZXMuIFNpIGVzdG8gZXMgbG8gcXVlIGRlc2VhLCBkZWJlcu1hIHV0aWxpemFyIFxmQlwtc0FcZlAsCitcZkJcLXNQXGZQLCBcZkJcLXNLXGZQLCBcZkJcLXNVXGZQIHkgXGZCXC1zUlxmUCBlbiBzdSBsdWdhci4KKy5UUCAKK1xmQlwtc2tcZlAKK0RlZmluZSBxdWUgc2UgZXNwZXJhIGxhIGZ1ZW50ZSBvcmlnaW5hbCBjb21vIHVuIGFyY2hpdm8gdGFyLCBwb3Igb21pc2nzbgorXGZJcGFxdWV0ZVxmUFxmQl9cZlBcZkl2ZXJzafNuXC1hdXRvclwtb3JpZ2luYWxcZlBcZkIub3JpZy50YXIuZ3pcZlAuIExhIGZ1ZW50ZSBvcmlnaW5hbAorc2UgZGVqYXLhIGVuIGVsIHNpdGlvIGNvbW8gdW4gZmljaGVybyB0YXIsIG8gc2UgY29waWFy4SBhbCBkaXJlY3RvcmlvIGFjdHVhbAorZW4gY2FzbyBkZSBubyBlc3RhciB5YSBhaO0gcHJlc2VudGUuIEVsIGFyY2hpdm8gdGFyIHNlIGRlc2VtcGFxdWV0YXLhIGVuCitcZklkaXJlY3RvcmlvXGZQXGZCLm9yaWdcZlAgcGFyYSBsYSBnZW5lcmFjafNuIGRlbCCrZGlmZrsuCisuVFAgCitcZkJcLXNwXGZQCitJZOludGljYSBhIFxmQlwtc2tcZlAsIGEgZGlmZXJlbmNpYSBkZSBxdWUgZWxpbWluYXLhIGVsIGRpcmVjdG9yaW8gYWwgZmluYWxpemFyLgorLlRQIAorXGZCXC1zdVxmUAorRGVmaW5lIHF1ZSBzZSBlc3BlcmEgcXVlIGxhIGZ1ZW50ZSBvcmlnaW5hbCBzZWEgdW4gZGlyZWN0b3JpbywgcG9yIG9taXNp824KK1xmSXBhcXVldGVcZlBcZkJcLVxmUFxmSXZlcnNp825cLWF1dG9yXC1vcmlnaW5hbFxmUFxmQi5vcmlnXGZQLCB5IHF1ZSBcZkJkcGtnXC1zb3VyY2VcZlAgY3JlYXLhCit1biBmaWNoZXJvIGRlIGZ1ZW50ZXMgbnVldm8gYSBwYXJ0aXIgZGUg6WwuCisuVFAgCitcZkJcLXNyXGZQCitJZOludGljYSBhIFxmQlwtc3VcZlAsIGEgZGlmZXJlbmNpYSBkZSBxdWUgZWxpbWluYXLhIGVsIGRpcmVjdG9yaW8gZGVzcHXpcyBkZSBzdQordXNvLgorLlRQIAorXGZCXC1zc1xmUAorRGVmaW5lIHF1ZSBsYSBmdWVudGUgb3JpZ2luYWwgZXN04SBkaXNwb25pYmxlIHRhbnRvIGNvbW8gZGlyZWN0b3JpbyBjb21vIHVuCitmaWNoZXJvIHRhci4gZHBrZ1wtc291cmNlIHVzYXLhIGVsIGRpcmVjdG9yaW8gcGFyYSBjcmVhciBlbCBkaWZmICwgcGVybyBlbAorZmljaGVybyB0YXIgcGFyYSBjcmVhciBlbCBcZkIuZHNjXGZQLiBEZWJlIHVzYXIgZXN0YSBvcGNp824gY29uIHByZWNhdWNp824sIHlhCitxdWUgc2kgZWwgZGlyZWN0b3JpbyB5IGVsIGFyY2hpdm8gdGFyIG5vIGNvaW5jaWRlbiBzZSBnZW5lcmFy4SB1biBhcmNoaXZvCitmdWVudGUgaW524WxpZG8uCisuVFAgCitcZkJcLXNuXGZQCitPbWl0ZSBsYSBi+nNxdWVkYSBkZSBsYSBmdWVudGUgb3JpZ2luYWwgeSBubyBnZW5lcmFy4SB1biCrZGlmZrsuIEVsIHNlZ3VuZG8KK2FyZ3VtZW50bywgZW4gY2FzbyBkZSBleGlzdGlyLCBkZWJlIHNlciBsYSBjYWRlbmEgdmFj7WEuIEVzdGEgb3BjafNuIHNlIHVzYQorZW4gcGFxdWV0ZXMgZXNwZWPtZmljb3MgZGUgRGViaWFuIHF1ZSBubyB0aWVuZW4gZnVlbnRlcyBkZWwgYXV0b3Igb3JpZ2luYWwKK3BvciBzZXBhcmFkbywgeSBwb3IgdGFudG8gY2FyZWNlbiBkZSBmaWNoZXJvcyCrZGlmZrsgq2RlYmlhbml6YW50ZXO7LgorLlRQIAorXGZCXC1zYVxmUCBvciBcZkJcLXNBXGZQCitEZWZpbmEgdW5hIGL6c3F1ZWRhIGRlIGxhIGZ1ZW50ZSBvcmlnaW5hbCBjb21vIGRpcmVjdG9yaW8gbyBjb21vIGFyY2hpdm8gdGFyCitcLSBlbCBzZWd1bmRvIGFyZ3VtZW50bywgZGUgZXhpc3RpciwgcHVlZGUgc2VyIGN1YWxxdWllcmEgZGUgbGFzIGRvcyBjb3NhcyBvCitsYSBjYWRlbmEgdmFj7WEgKGVxdWl2YWxlIGEgdXNhciBcZkJcLXNuXGZQKS4gU2kgc2UgZW5jdWVudHJhIHVuIGZpY2hlcm8gdGFyLCBzZQorZGVzZW1wYXF1ZXRhcuEgcGFyYSBjcmVhciBlbCCrZGlmZrsgeSBlbGltaW5hcuEgcG9zdGVyaW9ybWVudGUgKGVxdWl2YWxlIGEKK1xmQlwtc3BcZlApOyBzaSBzZSBlbmN1ZW50cmEgdW4gZGlyZWN0b3Jpbywgc2UgZW1wYXF1ZXRhcuEgcGFyYSBjcmVhciBsYSBmdWVudGUKK29yaWdpbmFsIHkgc2UgZWxpbWluYXLhIHBvc3Rlcmlvcm1lbnRlIChlcXVpdmFsZSBhIFxmQlwtc3JcZlApOyBzaSBubyBzZQorZW5jdWVudHJhIG5pbmd1bm8gZGUgbG9zIGRvcywgc2UgYXN1bWUgcXVlIGVsIHBhcXVldGUgbm8gdGllbmUgZmljaGVyb3MKK6tkaWZmuyCrZGViaWFuaXphbnRlc7ssIPpuaWNhbWVudGUgdW4gZmljaGVybyBkZSBmdWVudGVzIChlcXVpdmFsZSBhCitcZkJcLXNuXGZQKS4gU2kgc2UgZW5jdWVudHJhbiBhbWJvcywgXGZCZHBrZ1wtc291cmNlXGZQIGlnbm9yYXLhIGVsIGRpcmVjdG9yaW8sCitzb2JyZWVzY3JpYmnpbmRvbG8sIHNpIHNlIGVzcGVjaWZpY/MgXGZCXC1zQVxmUCAoZXF1aXZhbGUgYSBcZkJcLXNQXGZQKSwgbyBnZW5lcmFy4QordW4gZXJyb3Igc2kgc2UgZGVmaW5p8yBcZkJcLXNhXGZQLiBcZkJcLXNBXGZQIGVzIGxhIG9wY2nzbiBwcmVkZWZpbmlkYS4KKy5UUCAKK1xmQlwtXC1hYm9ydFwtb25cLXVwc3RyZWFtXC1jaGFuZ2VzXGZQCitFbCBwcm9jZXNhIGRhcuEgZmFsbG8gc2kgZWwgq2RpZma7IGdlbmVyYWRvIGNvbnRpZW5lIGNhbWJpb3MgcmVhbGl6YWRvcyBhCitmaWNoZXJvcyBmdWVyYSBkZWwgc3ViZGlyZWN0b3JpbyCrZGViaWFuuy4gRXN0YSBvcGNp824gbm8gc2UgcHVlZGUgdXNhciBlbgorXGZCZGViaWFuL3NvdXJjZS9vcHRpb25zXGZQIHBlcm8gc2UgcHVlZGUgdXNhciBlbgorXGZCZGViaWFuL3NvdXJjZS9sb2NhbFwtb3B0aW9uc1xmUC4KKworLlRQIAorXGZCT3BjaW9uZXMgZGUgZXh0cmFjY2nzbiAoY29uIFwteCk6XGZQCisuUFAKK0VuIHRvZG9zIGxvcyBjYXNvcyBjdWFscXVpZXIg4XJib2wgZGUgZnVlbnRlcyBvcmlnaW5hbCBzZXLhIGVsaW1pbmFkby4KKy5UUCAKK1xmQlwtc3BcZlAKK1NpIHNlIHVzYSBlbiBsYSBleHRyYWNjafNuLCBsYSBmdWVudGUgb3JpZ2luYWwgKGRlIGV4aXN0aXIpIHNlIGRlamFy4SBjb21vCit1biBmaWNoZXJvIHRhci4gU2kgbm8gc2UgZW5jdWVudHJhIGVuIGVsIGRpcmVjdG9yaW8gYWN0dWFsIG8gc2kgZXhpc3RlIHVuCitmaWNoZXJvIHBlcm8gZXMgZGlmZXJlbnRlLCBzZSBjb3BpYXLhIGFo7S4gKFxmQslzdGEgZXMgbGEgYWNjafNuIHBvcgorb21pc2nzblxmUCkuCisuVFAgCitcZkJcLXN1XGZQCitEZXNlbXBhcXVldGEgZWwg4XJib2wgZGUgZnVlbnRlcyBvcmlnaW5hbC4KKy5UUCAKK1xmQlwtc25cZlAKK0FzZWd1cmEgcXVlIGxhIGZ1ZW50ZSBvcmlnaW5hbCBuaSBzZSBjb3BpYSBhbCBkaXJlY3RvcmlvIGFjdHVhbCBuaSBzZQorZGVzZW1wYXF1ZXRhLiBDdWFscXVpZXIg4XJib2wgZGUgZnVlbnRlcyBvcmlnaW5hbCBleGlzdGVudGUgZW4gZWwgZGlyZWN0b3JpbworYWN0dWFsIGVzIGVsaW1pbmFkby4KKy5QUAorVG9kYXMgbGFzIG9wY2lvbmVzIFxmQlwtc1xmUFxmSVhcZlAgc29uIG11dHVhbWVudGUgZXhjbHV5ZW50ZXMuIFNpIGRlZmluZSBt4XMgZGUKK3VuYSwgc/NsbyBzZSB1c2Fy4SBsYSD6bHRpbWEuCisuVFAgCitcZkJcLVwtc2tpcFwtZGViaWFuaXphdGlvblxmUAorT21pdGUgbGEgYXBsaWNhY2nzbiBkZWwgq2RpZma7IGRlIGRlYmlhbiBjb24gbGFzIGZ1ZW50ZXMgZGVsIGF1dG9yIG9yaWdpbmFsLgorLgorLlNTICJGb3JtYXRvOiAyLjAiCitUYW1iaeluIGNvbm9jaWRvIGNvbW8gd2lnJnBlbi4gTm8gc2UgcmVjb21pZW5kYSBlc3RlIGZvcm1hdG8gcGFyYSB1biB1c28KK21hc2l2bywgeWEgcXVlIGVsIGZvcm1hdG8gqzMuMCAocXVpbHQpuyBsbyByZWVtcGxhemEuIFdpZyZwZW4gZnVlIGxhIHByaW1lcmEKK2VzcGVjaWZpY2FjafNuIGRlIHVuIGZvcm1hdG8gZGUgcGFxdWV0ZSBmdWVudGUgZGUgbnVldmEgZ2VuZXJhY2nzbi4KKworRWwgY29tcG9ydGFtaWVudG8gZGUgZXN0ZSBmb3JtYXRvIGVzIGlk6W50aWNvIGFsIGRlbCBmb3JtYXRvIKszLjAgKHF1aWx0KbssCithIGV4Y2VwY2nzbiBkZSBxdWUgbm8gdXNhIHVuYSBsaXN0YSBleHBs7WNpdGEgZGUgcGFyY2hlcy4gVG9kb3MgbG9zIGZpY2hlcm9zCitlbiBcZkJkZWJpYW4vcGF0Y2hlcy9cZlAgcXVlIGNvaW5jaWRlbiBjb24gbGEgZXhwcmVzafNuIHJlZ3VsYXIgZGUgcGVybAorXGZCW1xld1wtXStcZlAgZGViZW4gc2VyIHBhcmNoZXMgduFsaWRvczogc2UgYXBsaWNhbiBkdXJhbnRlIGVsIHByb2Nlc28gZGUKK2V4dHJhY2Np824uCisKK0FsIGNvbnN0cnVpciB1biBudWV2byBwYXF1ZXRlIGZ1ZW50ZSwgdG9kbyBjYW1iaW8gZW4gbGFzIGZ1ZW50ZXMgb3JpZ2luYWwgc2UKK2d1YXJkYW4gZW4gdW4gcGFyY2hlIGxsYW1hZG8gXGZCenpfZGViaWFuXC1kaWZmXC1hdXRvXGZQLgorLgorLlNTICJGb3JtYXRvOiAzLjAgKG5hdGl2bykiCitFc3RlIGZvcm1hdG8gZXMgdW5hIGV4dGVuc2nzbiBkZWwgZm9ybWF0byBkZSBwYXF1ZXRlIG5hdGl2byBjb21vIHNlIGRlZmluZQorZW4gZWwgZm9ybWF0byAxLjAuIEVzIGNvbXBhdGlibGUgY29uIHRvZG9zIGxvcyBt6XRvZG9zIGRlIGNvbXByZXNp824sIGUKK2lnbm9yYXLhIGN1YWxxdWllciBmaWNoZXJvIG8gZGlyZWN0b3JpbyBlc3BlY+1maWNvIGEgc2lzdGVtYXMgZGUgY29udHJvbCBkZQordmVyc2lvbmVzLCBhc+0gY29tbyBtdWNob3MgZmljaGVyb3MgdGVtcG9yYWxlcyAoY29uc3VsdGUgZWwgdmFsb3IKK3ByZWRlZmluaWRvIGFzb2NpYWRvIGEgbGEgb3BjafNuIFxmQlwtSVxmUCBlbiBsYSBzYWxpZGEgZGUgXGZCXC1cLWhlbHBcZlApLgorLgorLlNTICJGb3JtYXQ6IDMuMCAocXVpbHQpIgorVW4gcGFxdWV0ZSBmdWVudGUgY29uIGVzdGUgZm9ybWF0byBjb250aWVuZSBhbCBtZW5vcyB1biBhcmNoaXZvIHRhciBvcmlnaW5hbAorKFxmQi5vcmlnLnRhci5cZlBcZklleHRcZlAsIHNpZW5kbyBcZklleHRcZlAgXGZCZ3pcZlAsIFxmQmJ6MlxmUCwgXGZCbHptYVxmUCBvIFxmQnh6XGZQKSB5IHVuCithcmNoaXZvIHRhciBkZSBEZWJpYW4gKFxmQi5kZWJpYW4udGFyLlxmUFxmSWV4dFxmUCkuICBUYW1iaeluIGNvbnRpZW5lIGFyY2hpdm9zCit0YXIgb3JpZ2luYWxlcyBhZGljaW9uYWxlcworKFxmQi5vcmlnXC1cZlBcZkljb21wb25lbnRlXGZQXGZCLnRhci5cZlBcZklleHRcZlApLiBcZkljb21wb25lbnRlXGZQIHPzbG8gcHVlZGUgY29udGVuZXIKK2NhcmFjdGVyZXMgYWxmYW51belyaWNvcyB5IGd1aW9uZXMgKKtcLbspLgorLlBQCitcZkJFeHRyYWNjafNuXGZQCisuUFAKK1ByaW1lcm8gc2UgZXh0cmFlIGVsIGFyY2hpdm8gdGFyIG9yaWdpbmFsLCB5IGRlc3B16XMgc2UgZXh0cmFlbiB0b2RvcyBsb3MKK2FyY2hpdm9zIHRhciBvcmlnaW5hbGVzIGVuIHN1YmRpcmVjdG9yaW9zIG5vbWJyYWRvcyBhIHBhcnRpciBkZSBsYSBwYXJ0ZSBkZQorXGZJY29tcG9uZW50ZVxmUCBkZSBzdSBub21icmUgZGUgZmljaGVybyAodG9kbyBkaXJlY3RvcmlvIHByZWV4aXN0ZW50ZSBzZQorcmVlbXBsYXphcuEpLiBFbCBhcmNoaXZvIHRhciBkZSBEZWJpYW4gc2UgZXh0cmFlIGVuIGVsIGRpcmVjdG9yaW8gcmHteiBkZWwKK+FyYm9sIGRlc3B16XMgZGUgbGEgZWxpbWluYWNp824gZGUgY3VhbHF1aWVyIGRpcmVjdG9yaW8gXGZCZGViaWFuXGZQCitwcmVleGlzdGVudGUuIFRlbmdhIGVuIGN1ZW50YSBxdWUgZWwgYXJjaGl2byB0YXIgZGUgRGViaWFuIGRlYmUgY29udGVuZXIgdW4KK3N1YmRpcmVjdG9yaW8gXGZCZGViaWFuXGZQLCBwZXJvIHRhbWJp6W4gcHVlZGUgY29udGVuZXIgZmljaGVyb3MgYmluYXJpb3MKK2V4dGVybm9zIGEgZXNlIGRpcmVjdG9yaW8gKGNvbnN1bHRlIGxhIG9wY2nzbiBcZkJcLVwtaW5jbHVkZVwtYmluYXJpZXNcZlApLgorLlBQCitFbiBlc3RlIG1vbWVudG8gc2UgYXBsaWNhbiB0b2RvcyBsb3MgcGFyY2hlcyBsaXN0YWRvcyBlbgorXGZCZGViaWFuL3BhdGNoZXMvZGViaWFuLnNlcmllc1xmUCBvIFxmQmRlYmlhbi9wYXRjaGVzL3Nlcmllc1xmUC4gU2kgZWwgcHJpbWVyCitmaWNoZXJvIHNlIHVzYSwgeSBlbCBzZWd1bmRvIG5vIGV4aXN0ZSAobyBlcyB1biBlbmxhY2Ugc2ltYvNsaWNvKSwg6XN0ZSBzZQorcmVlbXBsYXphcuEgY29uIHVuIGVubGFjZSBzaW1i82xpY28gYWwgcHJpbWVyby4gRWwgb2JqZXRpdm8gZGUgZXN0byBlcworc2ltcGxpZmljYXIgZWwgdXNvIGRlIHF1aWx0IGFsIGdlc3Rpb25hciBlbCBjb25qdW50byBkZSBwYXJjaGVzLiBObworb2JzdGFudGUsIHRlbmdhIGVuIGN1ZW50YSBxdWUgbWllbnRyYXMgcXVlIFxmQmRwa2dcLXNvdXJjZVxmUCBhbmFsaXphCitjb3JyZWN0YW1lbnRlIGxvcyBmaWNoZXJvcyBlbiCrc2VyaWVzuyBjb24gb3BjaW9uZXMgZXhwbO1jaXRhcyBwYXJhIGxhCithcGxpY2FjafNuIGRlbCBwYXJjaGUgKGd1YXJkYWRvcyBlbiBjYWRhIGztbmVhIGRlc3B16XMgZGVsIG5vbWJyZSBkZSBmaWNoZXJvCitkZWwgcGFyY2hlIHkgdW5vIG8gbeFzIGVzcGFjaW9zKSwgaWdub3JhIGFxdWVsbGFzIG9wY2lvbmVzIHF1ZSBzaWVtcHJlCitlc3BlcmFuIHBhcmNoZXMgcXVlIHNlIHB1ZWRhbiBhcGxpY2FyIGNvbiBsYSBvcGNp824gXGZCXC1wMVxmUCBkZSBcZkJwYXRjaFxmUC4gRGUKK25vIHNlciBhc+0sIG1vc3RyYXLhIHVuIGF2aXNvIGVuIGNhc28gZGUgZW5jb250cmFyIHRhbGVzIG9wY2lvbmVzLCB5IGNhYmUKK3F1ZSBsYSBjb25zdHJ1Y2Np824gZmFsbGUuCisuUFAKK0RlIGZvcm1hIHNpbWlsYXIgYWwgY29tcG9ydGFtaWVudG8gcHJlZGVmaW5pZG8gZGUgcXVpbHQsIGxvcyBwYXJjaGVzIHRhbWJp6W4KK3B1ZWRlbiBlbGltaW5hciBmaWNoZXJvcy4KKy5QUAorRWwgZmljaGVybyBcZkIucGMvYXBwbGllZFwtcGF0Y2hlc1xmUCBzZSBjcmVhIGVuIGNhc28gZGUgYXBsaWNhciBwYXJjaGVzIGR1cmFudGUKK2xhIGV4dHJhY2Np824uCisuUFAKK1xmQkNvbnN0cnVjY2nzblxmUAorLlBQCitBbGwgb3JpZ2luYWwgdGFyYmFsbHMgZm91bmQgaW4gdGhlIGN1cnJlbnQgZGlyZWN0b3J5IGFyZSBleHRyYWN0ZWQgaW4gYQordGVtcG9yYXJ5IGRpcmVjdG9yeSBieSBmb2xsb3dpbmcgdGhlIHNhbWUgbG9naWMgYXMgZm9yIHRoZSB1bnBhY2ssIHRoZQorZGViaWFuIGRpcmVjdG9yeSBpcyBjb3BpZWQgb3ZlciBpbiB0aGUgdGVtcG9yYXJ5IGRpcmVjdG9yeSwgYW5kIGFsbCBwYXRjaGVzCitleGNlcHQgdGhlIGF1dG9tYXRpYyBwYXRjaCAoXGZCZGViaWFuXC1jaGFuZ2VzXC1cZlBcZkl2ZXJzaW9uXGZQIG9yCitcZkJkZWJpYW5cLWNoYW5nZXNcZlAsIGRlcGVuZGluZyBvbiBcZkJcLVwtc2luZ2xlXC1kZWJpYW5cLXBhdGNoXGZQKSBhcmUgYXBwbGllZC4gVGhlCit0ZW1wb3JhcnkgZGlyZWN0b3J5IGlzIGNvbXBhcmVkIHRvIHRoZSBzb3VyY2UgcGFja2FnZSBkaXJlY3RvcnkuIFdoZW4gdGhlCitkaWZmIGlzIG5vblwtZW1wdHksIHRoZSBidWlsZCBmYWlscyB1bmxlc3MgXGZCXC1cLXNpbmdsZVwtZGViaWFuXC1wYXRjaFxmUCBvcgorXGZCXC1cLWF1dG9cLWNvbW1pdFxmUCBoYXMgYmVlbiB1c2VkLCBpbiB3aGljaCBjYXNlIHRoZSBkaWZmIGlzIHN0b3JlZCBpbiB0aGUKK2F1dG9tYXRpYyBwYXRjaC4gIElmIHRoZSBhdXRvbWF0aWMgcGF0Y2ggaXMgY3JlYXRlZC9kZWxldGVkLCBpdCdzCithZGRlZC9yZW1vdmVkIGZyb20gdGhlIHNlcmllcyBmaWxlIGFuZCBmcm9tIHRoZSBxdWlsdCBtZXRhZGF0YS4KKworQ3VhbHF1aWVyIGNhbWJpbyBlbiB1biBmaWNoZXJvIGJpbmFyaW8gbm8gc2UgcHVlZGUgcmVwcmVzZW50YXIgZW4gdW4gq2RpZma7LAorY29uZHVjaWVuZG8gYXPtIGEgdW4gZmFsbG8gYSBtZW5vcyBxdWUgZWwgZGVzYXJyb2xsYWRvciBkZWNpZGEKK2V4cGztY2l0YW1lbnRlIGluY2x1aXIgZWwgZmljaGVybyBiaW5hcmlvIG1vZGlmaWNhZG8gZW4gZWwgYXJjaGl2byB0YXIKK6tkZWJpYW67IChtZWRpYW50ZSBzdSBsaXN0YWRvIGVuIFxmQmRlYmlhbi9zb3VyY2UvaW5jbHVkZVwtYmluYXJpZXNcZlApLiBMYQorY29uc3RydWNjafNuIHRhbWJp6W4gZmFsbGFy4SBzaSBlbmN1ZW50cmEgZmljaGVyb3MgYmluYXJpb3MgZW4gZWwKK3N1YmRpcmVjdG9yaW8gq2RlYmlhbrssIGEgbWVub3MgcXVlIGVzdOluIGVuIGVsIKt3aGl0ZWxpc3S7IGRlCitcZkJkZWJpYW4vc291cmNlL2luY2x1ZGVcLWJpbmFyaWVzXGZQLgorCitMbGVnYWRvIGEgZXN0ZSBwdW50byBzZSBnZW5lcmEgZWwgYXJjaGl2byB0YXIgq2RlYmlhbrsgZW4gYmFzZSBhbCBkaXJlY3RvcmlvCiurZGViaWFuuyBtb2RpZmljYWRvIHkgbGEgbGlzdGEgZGUgYmluYXJpb3MgbW9kaWZpY2Fkb3MuCisKK0VsIKtkaWZmuyBnZW5lcmFkbyBhdXRvbeF0aWNhbWVudGUgbm8gaW5jbHV5ZSBjYW1iaW9zIGVuIGZpY2hlcm9zCitlc3BlY+1maWNvcyBhbCBzaXN0ZW1hIGRlIGNvbnRyb2wgZGUgdmVyc2lvbmVzLCBhc+0gY29tbyBtdWNob3Mgb3Ryb3MKK2ZpY2hlcm9zIHRlbXBvcmFsZXMgKGNvbnN1bHRlIGVsIHZhbG9yIHByZWRlZmluaWRvIGFzb2NpYWRvIGEgXGZCXC1pXGZQIGVuIGxhCitzYWxpZGEgZGUgXGZCXC1cLWhlbHBcZlApLiBFbiBwYXJ0aWN1bGFyLCBzZSBpZ25vcmEgZWwgZGlyZWN0b3JpbyBcZkIucGNcZlAgZW1wbGVhZG8KK3BvciBxdWlsdCBkdXJhbnRlIGxhIGNyZWFjafNuIGRlbCBwYXJjaGUgYXV0b23hdGljby4KKworTm90ZTogXGZCZHBrZ1wtc291cmNlXGZQIFxmQlwtXC1iZWZvcmVcLWJ1aWxkXGZQIChhbmQgXGZCXC1iXGZQKSB3aWxsIGVuc3VyZSB0aGF0IGFsbAorcGF0Y2hlcyBsaXN0ZWQgaW4gdGhlIHNlcmllcyBmaWxlIGFyZSBhcHBsaWVkIHNvIHRoYXQgYSBwYWNrYWdlIGJ1aWxkIGFsd2F5cworaGFzIGFsbCBwYXRjaGVzIGFwcGxpZWQuIEl0IGRvZXMgdGhpcyBieSBmaW5kaW5nIHVuYXBwbGllZCBwYXRjaGVzICh0aGV5IGFyZQorbGlzdGVkIGluIHRoZSBcZkJzZXJpZXNcZlAgZmlsZSBidXQgbm90IGluIFxmQi5wYy9hcHBsaWVkXC1wYXRjaGVzXGZQKSwgYW5kIGlmIHRoZQorZmlyc3QgcGF0Y2ggaW4gdGhhdCBzZXQgY2FuIGJlIGFwcGxpZWQgd2l0aG91dCBlcnJvcnMsIGl0IHdpbGwgYXBwbHkgdGhlbQorYWxsLiBUaGUgb3B0aW9uIFxmQlwtXC1ub1wtcHJlcGFyYXRpb25cZlAgY2FuIGJlIHVzZWQgdG8gZGlzYWJsZSB0aGlzIGJlaGF2aW9yLgorCisuUFAKK1xmQlJlY29yZGluZyBjaGFuZ2VzXGZQCisuVFAgCitcZkJcLVwtY29tbWl0XGZQIFtcZklkaXJlY3RvcnlcZlBdIFtcZklwYXRjaFwtbmFtZVxmUF0gW1xmSXBhdGNoXC1maWxlXGZQXQorR2VuZXJhdGVzIGEgcGF0Y2ggY29ycmVzcG9uZGluZyB0byB0aGUgbG9jYWwgY2hhbmdlcyB0aGF0IGFyZSBub3QgbWFuYWdlZCBieQordGhlIHF1aWx0IHBhdGNoIHN5c3RlbSBhbmQgaW50ZWdyYXRlcyBpdCBpbiB0aGUgcGF0Y2ggc3lzdGVtIHVuZGVyIHRoZSBuYW1lCitcZklwYXRjaFwtbmFtZVxmUC4gSWYgdGhlIG5hbWUgaXMgbWlzc2luZywgaXQgd2lsbCBiZSBhc2tlZCBpbnRlcmFjdGl2ZWx5LiBJZgorXGZJcGF0Y2hcLWZpbGVcZlAgaXMgZ2l2ZW4sIGl0IGlzIHVzZWQgYXMgdGhlIHBhdGNoIGNvcnJlc3BvbmRpbmcgdG8gdGhlIGxvY2FsCitjaGFuZ2VzIHRvIGludGVncmF0ZS4gVGhpcyBpcyBtYWlubHkgdXNlZnVsIGFmdGVyIGEgYnVpbGQgZmFpbHVyZSB0aGF0CitwcmVcLWdlbmVyYXRlZCB0aGlzIGZpbGUuIE9uY2UgaW50ZWdyYXRlZCwgYW4gZWRpdG9yIGlzIGxhdW5jaGVkIHNvIHRoYXQgeW91CitjYW4gZWRpdCB0aGUgbWV0YVwtaW5mb3JtYXRpb24gaW4gdGhlIHBhdGNoIGhlYWRlci4KKworLlBQCitcZkJPcGNpb25lcyBkZSBjb25zdHJ1Y2Np825cZlAKKy5UUCAKK1xmQlwtXC1hbGxvd1wtdmVyc2lvblwtb2ZcLXF1aWx0XC1kYj1cZlBcZkl2ZXJzafNuXGZQCitQZXJtaXRlIHF1ZSBcZkJkcGtnXC1zb3VyY2VcZlAgY29uc3RydXlhIGVsIHBhcXVldGUgZnVlbnRlIHNpIGxhIHZlcnNp824gZGUgbG9zCittZXRhZGF0b3MgZGUgcXVpbHQgZXMgZWwgZXNwZWNpZmljYWRvLCBpbmNsdXNvIHNpIFxmQmRwa2dcLXNvdXJjZVxmUCBubyBsbworY29ub2NlLiBEZSBoZWNobywgZXN0byBkaWNlIHF1ZSBsYSB2ZXJzafNuIGRhZGEgZGUgbG9zIG1ldGFkYXRvcyBkZSBxdWlsdCBlcworY29tcGF0aWJsZSBjb24gbGEgdmVyc2nzbiAyLCBjb24gbGEgcXVlIFxmQmRwa2dcLXNvdXJjZVxmUCB0aWVuZSBjb21wYXRpYmlsaWRhZAorYWN0dWFsbWVudGUuIEVzdGEgdmVyc2nzbiBkZSBsb3MgbWV0YWRhdG9zIGRlIHF1aWx0IHNlIGd1YXJkYW4gZW4KK1wmXGZCLnBjLy52ZXJzaW9uXGZQLgorLlRQIAorXGZCXC1cLWluY2x1ZGVcLXJlbW92YWxcZlAKK05vIGlnbm9yYSBsb3MgZmljaGVyb3MgZWxpbWluYWRvcyB5IGxvcyBpbmNsdXllIGVuIGVsIHBhcmNoZSBnZW5lcmFkbworYXV0b23hdGljYW1lbnRlLgorLlRQIAorXGZCXC1cLWluY2x1ZGVcLXRpbWVzdGFtcFxmUAorSW5jbHV5ZSBsYSBtYXJjYSB0ZW1wb3JhbCBlbiBlbCBwYXJjaGUgZ2VuZXJhZG8gYXV0b23hdGljYW1lbnRlLgorLlRQIAorXGZCXC1cLWluY2x1ZGVcLWJpbmFyaWVzXGZQCitB8WFkZSB0b2RvcyBsb3MgZmljaGVyb3MgYmluYXJpb3MgbW9kaWZpY2Fkb3MgYWwgYXJjaGl2byB0YXIKK6tkZWJpYW67LiBUYW1iaeluIGxvcyBh8WFkZSBhIFxmQmRlYmlhbi9zb3VyY2UvaW5jbHVkZVwtYmluYXJpZXNcZlA6IHNlIGHxYWRpcuFuCitwb3Igb21pc2nzbiBlbiBmdXR1cmFzIGNvbnN0cnVjY2lvbmVzLCBjb24gbG8gcXVlIGVzdGEgb3BjafNuIHlhIG5vIHNlcuEKK25lY2VzYXJpYS4KKy5UUCAKK1xmQlwtXC1ub1wtcHJlcGFyYXRpb25cZlAKK05vIGludGVudGEgcHJlcGFyYXIgZWwg4XJib2wgZGUgY29uc3RydWNjafNuIGFwbGljYW5kbyBwYXJjaGVzIHF1ZSBlc3Thbgorc3VwdWVzdGFtZW50ZSBzaW4gYXBsaWNhci4KKy5UUCAKK1xmQlwtXC1zaW5nbGVcLWRlYmlhblwtcGF0Y2hcZlAKK1VzZSBcZkJkZWJpYW4vcGF0Y2hlcy9kZWJpYW5cLWNoYW5nZXNcZlAgaW5zdGVhZCBvZgorXGZCZGViaWFuL3BhdGNoZXMvZGViaWFuXC1jaGFuZ2VzXC1cZlBcZkl2ZXJzaW9uXGZQIGZvciB0aGUgbmFtZSBvZiB0aGUgYXV0b21hdGljCitwYXRjaCBnZW5lcmF0ZWQgZHVyaW5nIGJ1aWxkLiBUaGlzIG9wdGlvbiBpcyBwYXJ0aWN1bGFybHkgdXNlZnVsIHdoZW4gdGhlCitwYWNrYWdlIGlzIG1haW50YWluZWQgaW4gYSBWQ1MgYW5kIGEgcGF0Y2ggc2V0IGNhbid0IHJlbGlhYmx5IGJlCitnZW5lcmF0ZWQuIEluc3RlYWQgdGhlIGN1cnJlbnQgZGlmZiB3aXRoIHVwc3RyZWFtIHNob3VsZCBiZSBzdG9yZWQgaW4gYQorc2luZ2xlIHBhdGNoLiBUaGUgb3B0aW9uIHdvdWxkIGJlIHB1dCBpbiBcZkJkZWJpYW4vc291cmNlL2xvY2FsXC1vcHRpb25zXGZQIGFuZAord291bGQgYmUgYWNjb21wYW5pZWQgYnkgYSBcZkJkZWJpYW4vc291cmNlL2xvY2FsXC1wYXRjaFwtaGVhZGVyXGZQIGZpbGUKK2V4cGxhaW5pbmcgaG93IHRoZSBEZWJpYW4gY2hhbmdlcyBjYW4gYmUgYmVzdCByZXZpZXdlZCwgZm9yIGV4YW1wbGUgaW4gdGhlCitWQ1MgdGhhdCBpcyB1c2VkLgorLlRQIAorXGZCXC1cLWNyZWF0ZVwtZW1wdHlcLW9yaWdcZlAKK0NyZWEgYXV0b23hdGljYW1lbnRlIGVsIGFyY2hpdm8gdGFyIHByaW5jaXBhbCB5IG9yaWdpbmFsIGNvbW8gdmFj7W8gZW4gY2FzbworZGUgbm8gZXhpc3RpciB5IHNpIGhheSBvdHJvcyBhcmNoaXZvcyB0YXIgb3JpZ2luYWxlcyBhZGljaW9uYWxlcy4gRXN0YQorb3BjafNuIGVzdOEgZGlzZfFhZGEgcGFyYSBzdSB1c28gY3VhbmRvIGVsIHBhcXVldGUgZnVlbnRlIGVzIHVuIGNvbmp1bnRvIGRlCit2YXJpb3MgcHJvZ3JhbWFzIGRlIGxhIGZ1ZW50ZSBwcmluY2lwYWwgeSBjdWFuZG8gbm8gaGF5IHByb2dyYW1hcworq3ByaW5jaXBhbGVzuy4KKy5UUCAKK1xmQlwtXC11bmFwcGx5XC1wYXRjaGVzXGZQCitVbmFwcGx5IHRoZSBwYXRjaGVzIGluIHRoZSBcZkJcLVwtYWZ0ZXJcLWJ1aWxkXGZQIGhvb2suIFlvdSB1c3VhbGx5IGRvbid0IG5lZWQKK3RoaXMgb3B0aW9uIGFzIGRwa2dcLXNvdXJjZSB3aWxsIGF1dG9tYXRpY2FsbHkgdW5hcHBseSB0aGUgcGF0Y2hlcyBpZiBpdCBkaWQKK2FwcGx5IHRoZW0gZHVyaW5nIFxmQlwtXC1iZWZvcmVcLWJ1aWxkXGZQLiBUaGlzIG9wdGlvbiBpcyBvbmx5IGFsbG93ZWQgaW4KK1xmQmRlYmlhbi9zb3VyY2UvbG9jYWxcLW9wdGlvbnNcZlAgc28gdGhhdCBhbGwgZ2VuZXJhdGVkIHNvdXJjZSBwYWNrYWdlcyBoYXZlCit0aGUgc2FtZSBiZWhhdmlvciBieSBkZWZhdWx0LgorLlRQIAorXGZCXC1cLWFib3J0XC1vblwtdXBzdHJlYW1cLWNoYW5nZXNcZlAKK0VsIHByb2Nlc28gZmFsbGEgc2kgc2UgZ2VuZXJhIHVuIHBhcmNoZSBhdXRvbeF0aWNvLiBFc3RhIG9wY2nzbiBzZSBwdWVkZQordXNhciBwYXJhIGFzZWd1cmFyIHF1ZSB0b2RvcyBsb3MgY2FtYmlvcyBzZSByZWdpc3RyZW4gYXByb3BpYWRhbWVudGUgZW4KK3BhcmNoZXMgZGUgcXVpbHQgc2VwYXJhZG9zIGFudGVzIGRlIGxhIGNvbnN0cnVjY2nzbiBkZWwgcGFxdWV0ZSBmdWVudGUuIEVzdGEKK29wY2nzbiBubyBzZSBwZXJtaXRlIGVuIFxmQmRlYmlhbi9zb3VyY2Uvb3B0aW9uc1xmUCBwZXJvIHNlIHB1ZWRlIHVzYXIgZW4KK1xmQmRlYmlhbi9zb3VyY2UvbG9jYWxcLW9wdGlvbnNcZlAuCisuVFAgCitcZkJcLVwtYXV0b1wtY29tbWl0XGZQCitUaGUgcHJvY2VzcyBkb2Vzbid0IGZhaWwgaWYgYW4gYXV0b21hdGljIHBhdGNoIGhhcyBiZWVuIGdlbmVyYXRlZCwgaW5zdGVhZAoraXQncyBpbW1lZGlhdGVseSByZWNvcmRlZCBpbiB0aGUgcXVpbHQgc2VyaWVzLgorCisuUFAKK1xmQk9wY2lvbmVzIGRlIGV4dHJhY2Np825cZlAKKy5UUCAKK1xmQlwtXC1za2lwXC1kZWJpYW5pemF0aW9uXGZQCitPbWl0ZSBsYSBleHRyYWNjafNuIGRlbCBhcmNoaXZvIHRhciCrZGViaWFuuyBzb2JyZSBsYXMgZnVlbnRlIGRlbCBhdXRvcgorb3JpZ2luYWwuCisuVFAgCitcZkJcLVwtc2tpcFwtcGF0Y2hlc1xmUAorTm8gYXBsaWNhIGxvcyBwYXJjaGVzIGFsIGZpbmFsaXphciBsYSBleHRyYWNjafNuLgorLgorLlNTICJGb3JtYXRvOiAzLjAgKGN1c3RvbSkiCitUaGlzIGZvcm1hdCBpcyBzcGVjaWFsLiBJdCBkb2Vzbid0IHJlcHJlc2VudCBhIHJlYWwgc291cmNlIHBhY2thZ2UgZm9ybWF0CitidXQgY2FuIGJlIHVzZWQgdG8gY3JlYXRlIHNvdXJjZSBwYWNrYWdlcyB3aXRoIGFyYml0cmFyeSBmaWxlcy4KKy5QUAorXGZCT3BjaW9uZXMgZGUgY29uc3RydWNjafNuXGZQCisuUFAKK1RvZG9zIGxvcyBhcmd1bWVudG9zIHF1ZSBubyBzb24gb3BjaW9uZXMgc2UgdG9tYW4gY29tbyBmaWNoZXJvcyBhIGludGVncmFyCitlbiBlbCBwYXF1ZXRlIGZ1ZW50ZSBnZW5lcmFkby4gRGViZW4gZXhpc3RpciwgYSBzZXIgcG9zaWJsZSBlbiBlbCBkaXJlY3RvcmlvCithY3R1YWwuIERlYmUgaW50cm9kdWNpciBhbCBtZW5vcyB1biBmaWNoZXJvLgorLlRQIAorXGZCXC1cLXRhcmdldFwtZm9ybWF0PVxmUFxmSXZhbG9yXGZQCitcZkJPYmxpZ2F0b3Jpb1xmUC4gRGVmaW5lIGVsIGZvcm1hdG8gcmVhbCBkZWwgcGFxdWV0ZSBmdWVudGUgZ2VuZXJhZG8uIEVsCitmaWNoZXJvIKsuZHNjuyBnZW5lcmFkbyBjb250ZW5kcuEgZXN0ZSB2YWxvciBlbiBzdSBjYW1wbyBcZklGb3JtYXRcZlAgeSBubyCrMy4wCisoY3VzdG9tKbsuCisuCisuU1MgIkZvcm1hdDogMy4wIChnaXQpIgorRXN0ZSBmb3JtYXRvIGVzIGV4cGVyaW1lbnRhbC4KKy5QUAorVW4gcGFxdWV0ZSBkZSBmdWVudGUgY29uIGVzdGUgZm9ybWF0byBjb25zaXN0ZSBkZSB1biBz82xvIGFyY2hpdm8gY29uIHVuCityZXBvc2l0b3JpbyBcZkIuZ2l0XGZQLCBxdWUgZ3VhcmRhIGxhIGZ1ZW50ZSBkZWwgcGFxdWV0ZS4gUHVlZGUgdGFtYmnpbiBleGlzdGlyCit1biBmaWNoZXJvIFxmQi5naXRzaGFsbG93XGZQIHF1ZSBsaXN0YSBsYXMgcmV2aXNpb25lcyBkZSB1bmEgY2xvbmFjafNuIGRlIGdpdAorc3VwZXJmaWNpYWwgKKtzaGFsbG93uykuCisuUFAKK1xmQkV4dHJhY2Np825cZlAKKy5QUAorRWwgYXJjaGl2byBzZSBjbG9uYSBjb21vIHVuIHJlcG9zaXRvcmlvIGdpdCBlbiBlbCBkaXJlY3RvcmlvIGRlc3Rpbm8uIFNpIGhheQordW4gZmljaGVybyCrZ2l0c2hhbGxvd7ssIHNlIGluc3RhbGEgY29tbyCrLmdpdC9zaGFsbG93uyBkZW50cm8gZGVsCityZXBvc2l0b3JpbyBnaXQgY2xvbmFkby4KKy5QUAorVGVuZ2EgZW4gY3VlbnRhIHF1ZSwgcG9yIG9taXNp824sIGVsIG51ZXZvIHJlcG9zaXRvcmlvIHRlbmRy4SB1biCrY2hlY2tvdXS7CitkZSBsYSBtaXNtYSByYW1hIGRlIGxhIHF1ZSBzZSByZWFsaXrzIGVsIKtjaGVja291dLsgZGUgbGEgZnVlbnRlCitvcmlnaW5hbC4gKEhhYml0dWFsbWVudGUsIKttYXN0ZXK7LCBwZXJvIHBvZHLtYSBzZXIgY3VhbHF1aWVyIG90cmEgY29zYS4pCitUb2RhcyBsYXMgZGVt4XMgcmFtYXMgZXN0YXLhbiBkaXNwb25pYmxlcyBiYWpvIKtyZW1vdGVzL29yaWdpbi+7LgorLlBQCitcZkJDb25zdHJ1Y2Np825cZlAKKy5QUAorQW50ZXMgZGUgY29udGludWFyLCBzZSByZWFsaXphbiBhbGd1bmFzIHJldmlzaW9uZXMgcGFyYSBhc2VndXJhciBxdWUgbm8KK3F1ZWRlbiBjYW1iaW9zIG5vIGlnbm9yYWRvcyBhIHJlbWl0aXIgYWwgcmVwb3NpdG9yaW8gbWVkaWFudGUgq2NvbW1pdLsuCisuUFAKK1xmQmdpdFwtYnVuZGxlXGZQKDEpIHNlIHVzYSBwYXJhIGdlbmVyYXIgdW4gYXJjaGl2byBhIHBhcnRpciBkZSB1biByZXBvc2l0b3JpbworZ2l0LiBQb3Igb21pc2nzbiwgc2UgaW5jbHV5ZW4gZW4gZWwgYXJjaGl2byB0b2RhcyBsYXMgcmFtYXMgeSBldGlxdWV0YXMgZW4KK2VsIHJlcG9zaXRvcmlvLgorLlBQCitcZkJPcGNpb25lcyBkZSBjb25zdHJ1Y2Np825cZlAKKy5UUCAKK1xmQlwtXC1naXRcLXJlZj1cZlBcZklyZWZcZlAKK1Blcm1pdGUgZXNwZWNpZmljYXIgdW5hIHJlZmVyZW5jaWEgKKtyZWa7KSBkZSBnaXQgYSBpbmNsdWlyIGVuIGVsIGFyY2hpdm8gZGUKK2dpdC4gU3UgdXNvIGRlc2FjdGl2YSBlbCBjb21wb3J0YW1pZW50byBwcmVkZWZpbmlkbyBkZSBpbmNsdWlyIHRvZGFzIGxhcworcmFtYXMgeSBldGlxdWV0YXMsIHkgc2UgcHVlZGUgZGVmaW5pciB2YXJpYXMgdmVjZXMuIFxmSXJlZlxmUCBwdWVkZSBzZXIgZWwKK25vbWJyZSBkZSB1bmEgcmFtYSBvIGV0aXF1ZXRhIGEgaW5jbHVpci4gUG9yIGVqZW1wbG8sIHBhcmEgaW5jbHVpciBz82xvIGxhCityYW1hIKttYXN0ZXK7LCB1c2Ugq1wtXC1naXRcLXJlZj1tYXN0ZXK7LiBQYXJhIGluY2x1aXIgdG9kYXMgbGFzIGV0aXF1ZXRhcyB5CityYW1hcyBhIGV4Y2VwY2nzbiBkZSBsYSByYW1hIGxvY2FsICircHJpdmF0ZbspLCB1c2Ugq1wtXC1naXRcLXJlZj1cLVwtYWxsCitcLVwtZ2l0XC1yZWY9XnByaXZhdGW7LgorLlRQIAorXGZCXC1cLWdpdFwtZGVwdGg9XGZQXGZJbnVtYmVyXGZQCitDcmVhIHVuIGNsb24gc3VwZXJmaWNpYWwgKKtzaGFsb3e7KSBjb24gbGEgaGlzdG9yaWEgdHJ1bmNhZGEgZW4gZWwgbvptZXJvCitkZWZpbmlkbyBkZSByZXZpc2lvbmVzLgorLlNTICJGb3JtYXQ6IDMuMCAoYnpyKSIKK0VzdGUgZm9ybWF0byBlcyBleHBlcmltZW50YWwuIEdlbmVyYSB1biD6bmljbyBhcmNoaXZvIHRhciBxdWUgY29udGllbmUgZWwKK3JlcG9zaXRvcmlvIGJ6ci4KKy5QUAorXGZCRXh0cmFjY2nzblxmUAorLlBQCitFbCBhcmNoaXZvIHRhciBzZSBkZXNlbXBhcXVldGEsIHVzYW5kbyBkZXNwdelzIGJ6ciBwYXJhIHJlYWxpemFyIHVuCiurY2hlY2tvdXS7IGRlIGxhIHJhbWEgYWN0dWFsLgorLlBQCitcZkJDb25zdHJ1Y2Np825cZlAKKy5QUAorQW50ZXMgZGUgY29udGludWFyLCBzZSByZWFsaXphbiBhbGd1bmFzIHJldmlzaW9uZXMgcGFyYSBhc2VndXJhciBxdWUgbm8KK3F1ZWRlbiBjYW1iaW9zIG5vIGlnbm9yYWRvcyBhIHJlbWl0aXIgYWwgcmVwb3NpdG9yaW8gbWVkaWFudGUgq2NvbW1pdLsuCisuUFAKK0VudG9uZXMsIGxhIHBhcnRlIGRlbCBkaXJlY3RvcmlvIGRlIGZ1ZW50ZXMgZXNwZWPtZmljbyBhbCBzaXN0ZW1hIGRlIGNvbnRyb2wKK2RlIHZlcnNpb25lcyBzZSBjb3BpYSBhIHVuIGRpcmVjdG9yaW8gdGVtcG9yYWwuIEFudGVzIGRlIGVtcGFxdWV0YXIgZXN0ZQorZGlyZWN0b3JpbyB0ZW1wb3JhbCBlbiB1bmEgYXJjaGl2byB0YXIgc2UgcmVhbGl6YW4gdmFyaW9zIHByb2Nlc29zIGRlCitsaW1waWV6YSwgcGFyYSBhc+0gYWhvcnJhciBlc3BhY2lvLgorLlNIICJBVklTT1MgWSBFUlJPUkVTIgorLlNTICJubyBzZSBkZWZpbmnzIG5pbmf6biBmb3JtYXRvIGRlIGZ1ZW50ZXMgZW4gq2RlYmlhbi9zb3VyY2UvZm9ybWF0uyIKK0VsIGZpY2hlcm8gXGZCZGViaWFuL3NvdXJjZS9mb3JtYXRcZlAgc2llbXByZSBkZWJlcu1hIGV4aXN0aXIgZSBpbmRpY2FyIGVsCitmb3JtYXRvIGRlIGZ1ZW50ZXMgZGVzZWFkby4gUG9yIHJhem9uZXMgZGUgY29tcGF0aWJpbGlkYWQgaGFjaWEgYXRy4XMsIHNlCitzdXBvbmUgZWwgZm9ybWF0byCrMS4wuyBjdWFuZG8gZWwgZmljaGVybyBubyBleGlzdGUsIHBlcm8gbm8gZGViZXLtYQorZGVwZW5kZXIgZGUgZXN0by4gRW4gYWxn+m4gcHVudG8gZW4gZWwgZnV0dXJvLCBzZSBtb2RpZmljYXLhIGRwa2cgcGFyYSBxdWUKK2ZhbGxlIGN1YW5kbyBubyBlbmN1ZW50cmUgZXNlIGZpY2hlcm8uCisKK0VsIGZ1bmRhbWVudGUgZXMgcXVlIGVsIGZvcm1hdG8gqzEuMLsgeWEgbm8gZXMgZWwgZm9ybWF0byByZWNvbWVuZGFkbywgc2lubworcXVlIGRlYmVy7WEgZXNjb2dlciB1bm8gZGUgbG9zIGZvcm1hdG9zIG3hcyByZWNpZW50ZXMgKKszLjAgKHF1aWx0KbssIKszLjAKKyhuYXRpdmUpuykuIFxmQmRwa2dcLXNvdXJjZVxmUCBubyBoYXLhIGVzdG8gYXV0b23hdGljYW1lbnRlLiBTaSBkZXNlYSBjb250aW51YXIKK3VzYW5kbyBlbCBmb3JtYXRvIGFudGlndW8sIHRlbmRy4SBxdWUgc2VyIGV4cGztY2l0byBlIGluc2VydGFyIKsxLjC7IGVuCitcZkJkZWJpYW4vc291cmNlL2Zvcm1hdFxmUC4KKy5TUyAiZWwgZGlmZiBtb2RpZmljYSBsb3Mgc2lndWllbnRlcyBmaWNoZXJvcyBkZSBsYSBmdWVudGUgb3JpZ2luYWwiCitHZW5lcmFsbWVudGUsIGVzIHVuYSBtYWxhIGlkZWEgbW9kaWZpY2FyIGZpY2hlcm9zIGRlIGxhIGZ1ZW50ZSBvcmlnaW5hbCBzaQorZXN04SB1c2FuZG8gZWwgZm9ybWF0byBkZSBmdWVudGVzIKsxLjC7IHlhIHF1ZSBsb3MgY2FtYmlvcyB0ZXJtaW5hcuFuCitvY3VsdG9zIHkgZ2VuZXJhbG1lbnRlIHNpbiBkb2N1bWVudGFyIGRlbnRybyBkZWwgZmljaGVybyCrZGlmZi5nersuIERlYmVy7WEKK2d1YXJkYXIgbG9zIGNhbWJpb3MgY29tbyBwYXJjaGVzIGVuIGVsIGRpcmVjdG9yaW8gq2RlYmlhbrsgeSBhcGxpY2FybG9zIGVuCit0aWVtcG8gZGUgY29uc3RydWNjafNuLiBQYXJhIGV2aXRhciBlc3RhIGNvbXBsZWppZGFkIHRhbWJp6W4gcHVlZGUgdXNhciBlbAorZm9ybWF0byCrMy4wIChxdWlsdCm7LCBxdWUgb2ZyZWNlIGVzdG8gZGUgZm9ybWEgbmF0aXZhLgorLlNTICJubyBzZSBwdWVkZW4gcmVwcmVzZW50YXIgbG9zIGNhbWJpb3MgYWwgXGZJZmljaGVyb1xmUCIKK0xvcyBjYW1iaW9zIGEgbGFzIGZ1ZW50ZXMgb3JpZ2luYWxlcyBzZSBzdWVsZW4gZ3VhcmRhciBlbCBmaWNoZXJvcyBkZQorcGFyY2hlLCBwZXJvIG5vIHRvZG9zIGxvcyBjYW1iaW9zIHNlIHB1ZWRlbiByZXByZXNlbnRhciBjb24gcGFyY2hlczogc/NsbworcHVlZGVuIGFsdGVyYXIgZWwgY29udGVuaWRvIGRlIGZpY2hlcm9zIGRlIHRleHRvIHNpbXBsZS4gU2kgaW50ZW50YQorcmVlbXBsYXphciB1biBmaWNoZXJvIGNvbiBhbGdvIGRlIG90cm8gdGlwbyAocG9yIGVqZW1wbG8sIHVuIGZpY2hlcm8gc2ltcGxlCitjb24gdW4gZW5sYWNlIHNpbWLzbGljbyBvIGRpcmVjdG9yaW8pLCBvYnRlbmRy4SBlbCBzaWd1aWVudGUgbWVuc2FqZSBkZQorZXJyb3IuCisuU1MgImVsIGZpY2hlcm8gdmFj7W8gXGZJZmljaGVyb1xmUCByZWNpZW50ZW1lbnRlIGNyZWFkbyBubyBlc3RhcuEgcmVwcmVzZW50YWRvIGVuIGVsIKtkaWZmuyIKK05vIHNlIHB1ZWRlbiBjcmVhciBmaWNoZXJvcyB2YWPtb3MgY29uIGZpY2hlcm9zIGRlIHBhcmNoZS4gUG9yIGVsbG8sIGVzdGUKK2NhbWJpbyBubyBzZSByZWdpc3RyYSBlbiBlbCBwYXF1ZXRlIGZ1ZW50ZSwgZXN04SB1c3RlZCBhdmlzYWRvLgorLlNTICJsb3MgXGZJcGVybWlzb3NcZlAgZGUgbW9kbyBkZSBlamVjdWNp824gZGVsIFxmSWZpY2hlcm9cZlAgbm8gc2UgcmVwcmVzZW50YXLhbiBlbiBlbCCrZGlmZrsiCisuU1MgImxvcyBcZklwZXJtaXNvc1xmUCBkZSBtb2RvIGVzcGVjaWFsIGRlbCBcZklmaWNoZXJvXGZQIG5vIHNlIHJlcHJlc2VudGFy4W4gZW4gZWwgq2RpZma7IgorTG9zIGZpY2hlcm9zIGRlIHBhcmNoZSBubyByZWdpc3RyYW4gcGVybWlzb3MgZGUgbG9zIGZpY2hlcm9zLCB5IHBvciBlbGxvIGxvcworcGVybWlzb3MgbW9kaWZpY2Fkb3Mgbm8gc2UgZ3VhcmRhbiBlbiBlbCBwYXF1ZXRlIGZ1ZW50ZS4gRXN0ZSBhdmlzbyBsZSBzaXJ2ZQorZGUgcmVjb3JkYXRvcmlvLgorLlNIICJGT1JNQVRPUyBERSBGSUNIRVJPIgorLlNTIGRlYmlhbi9zb3VyY2UvZm9ybWF0CitFc3RlIGZpY2hlcm8gY29udGllbmUgZW4gdW5hIPpuaWNhIGztbmVhIGVsIGZvcm1hdG8gcXVlIHNlIGRlYmVy7WEgdXNhciBwYXJhCitjb25zdHJ1aXIgZWwgcGFxdWV0ZSBmdWVudGUgKGxvcyBmb3JtYXRvcyBwb3NpYmxlcyBzZSBkZXNjcmliZW4gZW4gdW4gcHVudG8KK2FudGVyaW9yKS4gTm8gc2UgcGVybWl0ZW4gZXNwYWNpb3MgdmFj7W9zIGFsIHByaW5jaXBpbyBvIGZpbmFsIGRlIGxhIGztbmVhLgorLlNTIGRlYmlhbi9zb3VyY2UvaW5jbHVkZVwtYmluYXJpZXMKK0VzdGUgZmljaGVybyBjb250aWVuZSB1bmEgbGlzdGEgZGUgZmljaGVyb3MgYmluYXJpb3MgKHVubyBwb3IgbO1uZWEpIHF1ZSBzZQorZGViZXLtYW4gaW5jbHVpciBlbiBlbCBhcmNoaXZvIHRhciCrZGViaWFuuy4gU2UgZWxpbWluYW4gbG9zIGVzcGFjaW9zIHZhY+1vcworYWwgcHJpbmNpcGlvIHkgZmluYWwgZGUgbGEgbO1uZWEuIExhcyBs7W5lYXMgcXVlIGNvbWllbnphbiBjb24gqyO7IHNvbgorY29tZW50YXJpb3MsIHkgcG9yIHRhbnRvLCBzZSBvbWl0ZW4uIFNlIGlnbm9yYXLhbiBs7W5lYXMgdmFj7WFzLgorLlNTIGRlYmlhbi9zb3VyY2Uvb3B0aW9ucworRXN0ZSBmaWNoZXJvIGNvbnRpZW5lIHVuYSBsaXN0YSBkZSBvcGNpb25lcyBsYXJnYXMgcXVlIHNlIGRlYmVy7WFuIGFuZXhhciBhbAorY29uanVudG8gZGUgbGFzIG9wY2lvbmVzIGRlIGztbmVhIGRlIPNyZGVuZXMgZGUgdW5hIGludm9jYWNp824gYQorXGZCZHBrZ1wtc291cmNlIFwtYlxmUCBvIFxmQmRwa2dcLXNvdXJjZSBcLVwtcHJpbnRcLWZvcm1hdFxmUC4gTGFzIG9wY2lvbmVzIGNvbW8KK1xmQlwtXC1jb21wcmVzc2lvblxmUCB5IFxmQlwtXC1jb21wcmVzc2lvblwtbGV2ZWxcZlAgc29uIGFkZWN1YWRhcyBjb24gZXN0ZSBmaWNoZXJvLgorLlAKK0NhZGEgb3BjafNuIGRlYmVy7WEgYXBhcmVjZXIgZW4gdW5hIGztbmVhIHNlcGFyYWRhLiBTZSBpZ25vcmFy4W4gbGFzIGztbmVhcwordmFj7WFzLCB5IGFxdWVsbGFzIHF1ZSBjb21pZW56YW4gY29uIKsjuy4gTG9zIGd1aW9uZXMgq1wtXC27IGFsIHByaW5jaXBpbyBkZQorbGEgb3BjafNuIHNlIGRlYmVy7WFuIGVsaW1pbmFyLCB5IG5vIHNlIHBlcm1pdGVuIG9wY2lvbmVzIGNvcnRhcy4gU2UKK3Blcm1pdGVuIGVzcGFjaW9zIGFkaWNpb25hbGVzIGVuIHRvcm5vIGFsIHPtbWJvbG8gqz27LCBhc+0gY29tbyBjb21pbGxhcworZG9ibGVzIGVuIHRvcm5vIGFsIHZhbG9yLiBBcXXtIHRpZW5lIHVuIGVqZW1wbG8gZGUgZXN0ZSBmaWNoZXJvOgorLlAKKyAgIyBsZXQgZHBrZ1wtc291cmNlIGNyZWF0ZSBhIGRlYmlhbi50YXIuYnoyIHdpdGggbWF4aW1hbCBjb21wcmVzc2lvbgorICBjb21wcmVzc2lvbiA9ICJiemlwMiIKKyAgY29tcHJlc3Npb25cLWxldmVsID0gOQorICAjIHVzZSBkZWJpYW4vcGF0Y2hlcy9kZWJpYW5cLWNoYW5nZXMgYXMgYXV0b21hdGljIHBhdGNoCisgIHNpbmdsZVwtZGViaWFuXC1wYXRjaAorICAjIGlnbm9yZSBjaGFuZ2VzIG9uIGNvbmZpZy57c3ViLGd1ZXNzfQorICBleHRlbmRcLWRpZmZcLWlnbm9yZSA9ICIoXnwvKShjb25maWcuc3VifGNvbmZpZy5ndWVzcykkIgorLlAKK05vdGE6IG5vIHNlIHBlcm1pdGVuIGVuIGVzdGUgZmljaGVybyBsYXMgb3BjaW9uZXMgZGUgXGZCZm9ybWF0b1xmUCwgeSBkZWJlcu1hCit1c2FyIFxmQmRlYmlhbi9zb3VyY2UvZm9ybWF0XGZQIGVuIHN1IGx1Z2FyLgorLlNTIGRlYmlhbi9zb3VyY2UvbG9jYWxcLW9wdGlvbnMKK0lk6W50aWNvIGEgXGZCZGViaWFuL3NvdXJjZS9vcHRpb25zXGZQLCBhIGV4Y2VwY2nzbiBkZSBxdWUgZWwgZmljaGVybyBubyBzZQoraW5jbHV5ZSBlbiBlbCBwYXF1ZXRlIGZ1ZW50ZSBnZW5lcmFkby4gUHVlZGUgc2VyIPp0aWwgcGFyYSBndWFyZGFyIHVuYQorcHJlZmVyZW5jaWEgbGlnYWRhIGFsIG1hbnRlbmVkb3IgYSBhbCByZXBvc2l0b3JpbyBkZWwgc2lzdGVtYSBkZSBjb250cm9sIGRlCit2ZXJzaW9uZXMgZPNuZGUgZWwgcGFxdWV0ZSBlcyBtYW50ZW5pZG8uCisuU1MgZGViaWFuL3NvdXJjZS9sb2NhbFwtcGF0Y2hcLWhlYWRlcgorLlNTIGRlYmlhbi9zb3VyY2UvcGF0Y2hcLWhlYWRlcgorRnJlZSBmb3JtIHRleHQgdGhhdCBpcyBwdXQgb24gdG9wIG9mIHRoZSBhdXRvbWF0aWMgcGF0Y2ggZ2VuZXJhdGVkIGluCitmb3JtYXRzICIyLjAiIG9yICIzLjAgKHF1aWx0KSIuIFxmQmxvY2FsXC1wYXRjaFwtaGVhZGVyXGZQIGlzIG5vdCBpbmNsdWRlZCBpbiB0aGUKK2dlbmVyYXRlZCBzb3VyY2UgcGFja2FnZSB3aGlsZSBcZkJwYXRjaFwtaGVhZGVyXGZQIGlzLgorLlNTIGRlYmlhbi9wYXRjaGVzL3NlcmllcworRXN0ZSBmaWNoZXJvIGxpc3RhIHRvZG9zIGxvcyBwYXJjaGVzIHF1ZSBzZSBkZWJlbiBhcGxpY2FyIChlbiBlbCBvcmRlbiBkYWRvKQorYWwgcGFxdWV0ZSBmdWVudGUgZGVsIGF1dG9yIG9yaWdpbmFsLiBTZSBlbGltaW5hcuFuIGxvcyBlc3BhY2lvcyB2YWPtb3MgYWwKK3ByaW5jaXBpbyB5IGZpbmFsIGRlIGxhIGztbmVhLiBMYXMgbO1uZWFzIHF1ZSBjb21pZW56YW4gY29uIKsjuyBzb24KK2NvbWVudGFyaW9zLCB5IHNlIG9taXRlbi4gTGFzIGztbmVhcyByZXN0YW50ZXMgZW1waWV6YW4gY29uIHVuIG5vbWJyZSBkZQorZmljaGVybyBkZSB1biBwYXJjaGUgKHJlbGF0aXZvIGFsIGRpcmVjdG9yaW8gXGZCZGViaWFuL3BhdGNoZXMvXGZQKSBoYXN0YSBlbAorcHJpbWVyIGNhcuFjdGVyIGRlIGVzcGFjaW8sIG8gZWwgZmluYWwgZGUgbGEgbO1uZWEuIE9wY2lvbmFsbWVudGUsIHB1ZWRlCitpbnNldGFyIGEgY29udGludWFjafNuIG9wY2lvbmVzIGRlIHF1aWx0IGhhc3RhIGVsIGZpbmFsIGRlIGztbmVhLCBvIGVsCitwcmltZXIgqyO7IHByZWNlZGlkbyBkZSB1bm8gbyBt4XMgZXNwYWNpb3MgKHF1ZSBpbmRpY2FuIGVsIGluaWNpbyBkZSB1bgorY29tZW50YXJpbyBoYXN0YSBlbCBmaW5hbCBkZSBsYSBs7W5lYSkuCisuU0ggRkFMTE9TCitObyBlc3ThIGNsYXJvIGVsIHB1bnRvIGVuIGVsIGN1YWwgc2UgcHJvZHVjZSBsYSBzdXN0aXR1Y2nzbiBkZSBjYW1wb3MsCitjb21wYXJhZG8gY29uIGNpZXJ0YXMgb3BjaW9uZXMgZGUgbG9zIGNhbXBvcyBkZSBzYWxpZGEgZXN04W5kYXIuCisuU0ggIlbJQVNFIFRBTUJJyU4iCitcZkJkcGtnXC1kZWJcZlAoMSksIFxmQmRwa2dcZlAoMSksIFxmQmRzZWxlY3RcZlAoMSkuCisuCisuU0ggQVVUT1JFUworQ29weXJpZ2h0IFwoY28gMTk5NVwtMTk5NiBJYW4gSmFja3NvbgorLmJyCitDb3B5cmlnaHQgXChjbyAyMDAwIFdpY2hlcnQgQWtrZXJtYW4KKy5icgorQ29weXJpZ2h0IFwoY28gMjAwOFwtMjAxMSBSYXBoYVxbOmVdbCBIZXJ0em9nCisuc3AKK0VzdG8gZXMgc29mdHdhcmUgbGlicmU7IHZlYSBsYSB2ZXJzafNuIDIgbyBwb3N0ZXJpb3IgZGUgbGEgTGljZW5jaWEgUPpibGljYQorR2VuZXJhbCBHTlUgcGFyYSBjb25kaWNpb25lcyBkZSBjb3BpYS4gTk8gaGF5IG5pbmd1bmEgZ2FyYW507WEuCisuU0ggIlRSQURVQ1RPUiIKK1J1ZHkgR29kb3kgPHJ1ZHlAa2VybmVsXC1wYW5pay5vcmc+LAorUnVi6W4gUG9ycmFzIDxuYWhvb0BpbmljaWEuZXM+LAorQnJ1bm8gQmFycmVyYSBDLiA8YnJ1bm8uYmFycmVyYUBpZ2xvby5jbD4sCitDYXJsb3MgSXpxdWllcmRvIDxnaGVlc2hAZXJ0aXMubmV0PiwKK0VzdGViYW4gTWFuY2hhZG8geQorTk9LLgorRGViaWFuIEwxMG4gU3BhbmlzaCA8ZGViaWFuXC1sMTBuXC1zcGFuaXNoQGxpc3RzLmRlYmlhbi5vcmc+LgorLmJyCitSZXZpc2lvbmVzIHBvciBTYW50aWFnbyBWaWxhIDxzYW52aWxhQHVuZXguZXM+LAorSmF2aWVyIEZlcm7hbmRlelwtU2FuZ3Vpbm8sIFJ1YuluIFBvcnJhcywKK0x1aXMgVXJpYmUgeSBPbWFyIENhbXBhZ25lLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vZXMvZHBrZy1zcGxpdC4xIGIvZHBrZy0xLjE2LjEuMS9tYW4vZXMvZHBrZy1zcGxpdC4xCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmU5ZGZiMGQKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9lcy9kcGtnLXNwbGl0LjEKQEAgLTAsMCArMSwxOTYgQEAKKy5cIiBBdXRob3JzOiBJYW4gSmFja3NvbgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlwiCisuXCIgVGhpcyBmaWxlIHdhcyBnZW5lcmF0ZWQgd2l0aCBwbzRhLiBUcmFuc2xhdGUgdGhlIHNvdXJjZSBmaWxlLgorLlwiCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuVEggZHBrZ1wtc3BsaXQgMSAyMDExXC0wN1wtMDQgIlByb3llY3RvIERlYmlhbiIgIkhlcnJhbWllbnRhcyBkZSBkcGtnIgorLlNIIE5PTUJSRQorZHBrZ1wtc3BsaXQgXC0gSGVycmFtaWVudGEgcGFyYSBzZXBhcmFyIHkgdW5pciBwYXF1ZXRlcyBEZWJpYW4KKy4KKy5TSCBTSU5PUFNJUworXGZCZHBrZ1wtc3BsaXRcZlAgW1xmSW9wdGlvblxmUC4uLl0gXGZJY29tbWFuZFxmUAorLgorLlNIIERFU0NSSVBDSdNOCitcZkJkcGtnXC1zcGxpdFxmUCBzZXBhcmEgdW4gcGFxdWV0ZSBiaW5hcmlvIGRlIERlYmlhbiBlbiB2YXJpYXMgcGFydGVzIG3hcworcGVxdWXxYXMgcGFyYSBsdWVnbyB2b2x2ZXJsYXMgYSB1bmlyLCBwb3NpYmlsaXRhbmRvIGFsbWFjZW5hciBwYXF1ZXRlcyBlbgorZGlzcG9zaXRpdm9zIGRlIHBvY2EgY2FwYWNpZGFkLCBjb21vIGRpc3F1ZXRlcy4KKworU2UgcHVlZGUgdXNhciBtYW51YWxtZW50ZSB1c2FuZG8gbGFzIG9wY2lvbmVzIFxmQlwtXC1zcGxpdFxmUCwgXGZCXC1cLWpvaW5cZlAgeQorXGZCXC1cLWluZm9cZlAuCisKK1RhbWJp6W4gb2ZyZWNlIHVuIG1vZG8gYXV0b23hdGljbyBtZWRpYW50ZSBsYSBvcGNp824gXGZCXC1cLWF1dG9cZlAsIHF1ZSBjcmVhIHVuYQorY29sYSBjb24gbGFzIHBhcnRlcyBxdWUgaGEgYW5hbGl6YWRvIHBlcm8gYfpuIHNlcGFyYWRhcyBwYXJhIGRlc3B16XMgY3JlYXIKK2VsIHBhcXVldGUgdHJhcyBhbmFsaXphciB0b2RhcyBsYXMgcGFydGVzLiBMYXMgb3BjaW9uZXMgXGZCXC1cLWxpc3RxXGZQIHkKK1xmQlwtXC1kaXNjYXJkXGZQIHBlcm1pdGVuIGFkbWluaXN0cmFyIGxhIGNvbGEuCisKK0xvcyBwcm9jZXNvcyBkZSBzZXBhcmFyLCB1bmlyIHkgcG9zaWNpb25hZG8gZW4gY29sYSBwcm9kdWNlbiBtZW5zYWplcworaW5mb3JtYXRpdm9zIHBvciBsYSBzYWxpZGEgZXN04W5kYXIsIHF1ZSBzZSBwdWVkZW4gaWdub3JhciBzaW4gbmluZ/puCityaWVzZ28uCisuCisuU0gg01JERU5FUworLlRQIAorXGZCXC1zXGZQLCBcZkJcLVwtc3BsaXRcZlAgXGZJcGFxdWV0ZVwtY29tcGxldG9cZlAgW1xmSXByZWZpeFxmUF0KK0RpdmlkZSB1biD6bmljbyBwYXF1ZXRlIGJpbmFyaW8gZGUgRGViaWFuIGVuIHZhcmlhcyBwYXJ0ZXMuCisKK0xhcyBwYXJ0ZXMgcmVjaWJlbiBlbCBub21icmUgXGZJcHJlZmlqb1xmUFxmQi5cZlBcZklOXGZQXGZCb2ZcZlBcZklNXGZQXGZCLmRlYlxmUCwgc2llbmRvIFxmSU5cZlAKK2VsIG76bWVybyBkZSBsYSBwYXJ0ZSwgY29tZW56YW5kbyBwb3IgMSwgeSBcZklNXGZQIGVsIG76bWVybyB0b3RhbCBkZSBwYXJ0ZXMKKyhhbWJvcyBlbiBkZWNpbWFsKS4KKworU2kgbm8gc2UgcHJvcG9yY2lvbmEgbmluZ/puIFxmSXByZWZpam9cZlAsIHNlIHRvbWEgZWwgbm9tYnJlIGRlbAorXGZJZmljaGVyb1wtY29tcGxldG9cZlAsIGluY2x1eWVuZG8gZWwgZGlyZWN0b3JpbywgeSBlbGltaW5hbmRvIGN1YWxxdWllcgordGVybWluYWNp824gXGZCLmRlYlxmUC4KKy5UUCAKK1xmQlwtalxmUCwgXGZCXC1cLWpvaW5cZlAgXGZJcGFydGVcZlAuLi4KK1VuZSBsYXMgcGFydGVzIGRlIHVuIHBhcXVldGUsIGRlamFuZG8gZWwgcGFxdWV0ZSB0YWwgeSBjb21vIGVyYQorb3JpZ2luYWxtZW50ZS4KKworTGFzIHBhcnRlcyBxdWUgc2UgcHJvcG9yY2lvbmVuIGNvbW8gYXJndW1lbnRvIGRlYmVuIHNlciB0b2RhcyBwYXJ0ZSBkZWwKK21pc21vIGZpY2hlcm8gb3JpZ2luYWwuIENhZGEgcGFydGUgc2UgZGViZSBwcm9wb3JjaW9uYXIgdW5hIHNvbGEgdmV6LCBhdW5xdWUKK25vIG5lY2VzYXJpYW1lbnRlIGVuIG9yZGVuLgorCitUb2RhcyBsYXMgcGFydGVzIHNlIGRlYmVuIGdlbmVyYXIgY29uIGVsIG1pc21vIHRhbWHxbyBlc3BlY2lmaWNhZG8gZW4gZWwKK21vbWVudG8gZGUgbGEgZGl2aXNp824sIGxvIHF1ZSBzaWduaWZpY2EgcXVlIHRvZGFzIHNlIGRlYmVuIGdlbmVyYXIgY29uIGxhCittaXNtYSBpbnZvY2FjafNuIGRlIFxmQmRwa2dcLXNwbGl0IFwtXC1zcGxpdFxmUC4KKworRWwgbm9tYnJlIGRlIGxhcyBwYXJ0ZXMgY2FyZWNlIGRlIGltcG9ydGFuY2lhIHBhcmEgZWwgcHJvY2VzbyBkZSB1bmnzbi4KKworQnkgZGVmYXVsdCB0aGUgb3V0cHV0IGZpbGUgaXMgY2FsbGVkCitcZklwYWNrYWdlXGZQXGZCX1xmUFxmSXZlcnNpb25cZlBcZkJfXGZQXGZJYXJjaFxmUFxmQi5kZWJcZlAuCisKKy5UUCAKK1xmQlwtSVxmUCwgXGZCXC1cLWluZm9cZlAgXGZJcGFydGVcZlAuLi4KK011ZXN0cmEgaW5mb3JtYWNp824sIGVuIHVuIGZvcm1hdG8gbGVnaWJsZSBwb3IgZWwgdXN1YXJpbywgYWNlcmNhIGRlIGxhCitwYXJ0ZSBvIHBhcnRlcyBkZWwgZmljaGVybyBlc3BlY2lmaWNhZGFzLiBMb3MgYXJndW1lbnRvcyBxdWUgbm8gc29uIHBhcnRlIGRlCit1biBwYXF1ZXRlIGJpbmFyaW8gcHJvZHVjZW4gdW4gbWVuc2FqZSBhdmlzYW5kbyBkZWwgcHJvYmxlbWEgKHBvciBsYSBzYWxpZGEKK2VzdOFuZGFyKS4KKy5UUCAKK1xmQlwtYVxmUCwgXGZCXC1cLWF1dG8gXC1vXGZQIFxmSXNhbGlkYVwtY29tcGxldGEgcGFydGVcZlAKK1Bvc2ljaW9uYSBsYXMgcGFydGVzIGVuIGxhIGNvbGEgYXV0b23hdGljYW1lbnRlLCB5IHVuZSBudWV2YW1lbnRlIGVsCitwYXF1ZXRlLCBzaSBlcyBwb3NpYmxlLgorCitMYSBcZklwYXJ0ZVxmUCBlc3BlY2lmaWNhZGEgc2UgZXhhbWluYSB5IGNvbXBhcmEganVudG8gY29uIGxhcyBvdHJhcyBwYXJ0ZXMgZGVsCittaXNtbyBwYXF1ZXRlIChzaSBoYXkgYWxndW5hKSBlbiBsYSBjb2xhIGRlIGxhcyBwYXJ0ZXMgZGUgZmljaGVyb3MgZGUKK3BhcXVldGUuCisKK1NpIGVzdOFuIGRpc3BvbmlibGVzIHRvZGFzIGxhcyBwYXJ0ZXMgZGVsIGZpY2hlcm8gYWwgcXVlIHBlcnRlbmVjZSBsYQorXGZJcGFydGVcZlAsIHNlIHVuZSBwYXF1ZXRlIHkgZ3VhcmRhIGVuIGxhIFxmSXNhbGlkYVwtY29tcGxldGFcZlAgKHF1ZSBub3JtYWxtZW50ZQorbm8gZXhpc3RlLCBhdW5xdWUgZXN0byBubyBlcyB1biBlcnJvcikuCisKK0RlIG5vIHNlIGFz7SwgbGEgXGZJcGFydGVcZlAgc2UgY29waWEgZW4gbGEgY29sYSBwZXJvIG5vIHNlIGNyZWEgbGEKK1xmSXNhbGlkYVwtY29tcGxldGFcZlAuCisKK0lmIFxmSXBhcnRcZlAgaXMgbm90IGEgc3BsaXQgYmluYXJ5IHBhY2thZ2UgcGFydCB0aGVuIFxmQmRwa2dcLXNwbGl0XGZQIHdpbGwgZXhpdAord2l0aCBzdGF0dXMgXGZCMVxmUDsgaWYgc29tZSBvdGhlciB0cm91YmxlIG9jY3VycyB0aGVuIGl0IHdpbGwgZXhpdCB3aXRoIHN0YXR1cworXGZCMlxmUC4KKworRGViZSBwcm9wb3JjaW9uYXIgbGEgb3BjafNuIFxmQlwtXC1vdXRwdXRcZlAgbyBcZkJcLW9cZlAgY3VhbmRvIHVzZSBcZkJcLVwtYXV0b1xmUC4gKFNpCitlc3RlIGFyZ3VtZW50byBubyBmdWVzZSBvYmxpZ2F0b3JpbyBlbCBwcm9ncmFtYSBxdWUgZWplY3V0ZSBcZkJkcGtnXC1zcGxpdFxmUCBubworc2Ficu1hIHF1ZSBmaWNoZXJvIGVzcGVyYXIpLgorLlRQIAorXGZCXC1sXGZQLCBcZkJcLVwtbGlzdHFcZlAKK0xpc3RhIGxvcyBjb250ZW5pZG9zIGRlIGxhIGNvbGEgZGUgcGFxdWV0ZXMgY3V5YXMgcGFydGVzIHVuaXIuCisKK1BvciBjYWRhIGZpY2hlcm8gZGUgdW4gcGFxdWV0ZSBxdWUgY29udGVuZ2EgcGFydGVzIGVuIGxhIGNvbGEgc2UgbXVlc3RyYSBlbAorbm9tYnJlIGRlbCBwYXF1ZXRlLCBsYXMgcGFydGVzIGVuIGxhIGNvbGEgeSBlbCBu+m1lcm8gdG90YWwgZGUgYnl0ZXMKK2d1YXJkYWRvcyBlbiDpc3RhLgorLlRQIAorXGZCXC1kXGZQLCBcZkJcLVwtZGlzY2FyZFxmUCBbXGZJcGFxdWV0ZVxmUC4uLl0KK0Rlc2NhcnRhIHBhcnRlcyBkZSBsYSBjb2xhIGRlIGFxdelsbGFzIHF1ZSBlc3BlcmFuIGxhcyBwYXJ0ZXMgcmVzdGFudGVzIGRlbAorcGFxdWV0ZSBwYXJhIHN1IHVuafNuIGNvbiBvdHJhcy4KKworU2kgbm8gc2UgZXNwZWNpZmljYSBuaW5n+m4gXGZJcGFxdWV0ZVxmUCBzZSBsaW1waWEgbGEgY29sYSBwb3IgY29tcGxldG8sIHNpIHNlCitlc3BlY2lmaWNhIGFsZ3VubyBz82xvIHNlIGVsaW1pbmFuIGxhcyBwYXJ0ZXMgZGUgbG9zIHBhcXVldGVzIHJlbGV2YW50ZXMuCisuVFAgCitcZkJcLWhcZlAsIFxmQlwtXC1oZWxwXGZQCitNdWVzdHJhIGVsIG1vZG8gZGUgdXNvIHkgdGVybWluYS4KKy5UUCAKK1xmQlwtXC12ZXJzaW9uXGZQCitNdWVzdHJhIGxhIHZlcnNp824geSB0ZXJtaW5hLgorLgorLlNIIE9QQ0lPTkVTCisuVFAgCitcZkJcLVwtZGVwb3RkaXJcZlBcZkkgZGlyZWN0b3Jpb1xmUAorRXNwZWNpZmljYSB1biBkaXJlY3RvcmlvIGFsdGVybmF0aXZvIHBhcmEgbGFzIHBhcnRlcyBxdWUgc2UgZW5jdWVudHJhbiBlbiBsYQorY29sYSBlc3BlcmFuZG8gcGFyYSBzZXIgdW5pZGFzLiBQb3Igb21pc2nzbiBlcyBcZkIvdmFyL2xpYi9kcGtnXGZQLgorLlRQIAorXGZCXC1TXGZQLCBcZkJcLVwtcGFydHNpemVcZlAgXGZJa2liaWJ5dGVzXGZQCitFc3BlY2lmaWNhIGVsIHRhbWHxbyBt4XhpbW8gZGUgY2FkYSBwYXJ0ZSBlbiBraWxvYnl0ZXMgKDEwMjQgYnl0ZXMpLiBQb3IKK29taXNp824gZXMgNDUwS2IuCisuVFAgCitcZkJcLW9cZlAsIFxmQlwtXC1vdXRwdXRcZlAgXGZJY29tcGxldGVcLW91dHB1dFxmUAorRXNwZWNpZmljYSBlbCBub21icmUgZGVsIGZpY2hlcm8gZ2VuZXJhZG8gcG9yIGxhIHVuafNuIGRlIGxhcyBwYXJ0ZXMuCisKK8lzdG8gc3VzdGl0dXllIGFsIG5vbWJyZSBwb3Igb21pc2nzbiBlbiBtb2RvIG1hbnVhbCAoXGZCXC1cLWpvaW5cZlApLCAgeSBlcworb2JsaWdhdG9yaW8gY29uIGVsIG1vZG8gYXV0b23hdGljbyAoXGZCXC1cLWF1dG9cZlApLgorLlRQIAorXGZCXC1RXGZQLCBcZkJcLVwtbnBxdWlldFxmUAorQ3VhbmRvIFxmQmRwa2dcLXNwbGl0XGZQIGVzdOEgZW4gbW9kbyBhdXRvbeF0aWNvLCBub3JtYWxtZW50ZSBtdWVzdHJhIG1lbnNhamVzCitzaSBzZSBsZSBwYXNhIHVuYSBcZklwYXJ0ZVxmUCBxdWUgbm8gZXMgcGFydGUgZGVsIHBhcXVldGUgYmluYXJpby4gRXN0YSBvcGNp824KK3N1cHJpbWUgZXN0b3MgbWVuc2FqZXMsIHBlcm1pdGllbmRvIHF1ZSBwcm9ncmFtYXMgY29tbyBcZkJkcGtnXGZQIHB1ZWRhbgorc2VwYXJhciB5IHVuaXIgcGFxdWV0ZXMgc2luIHByb2R1Y2lyIG1lbnNhamVzIHBvY28gaW5mb3JtYXRpdm9zLgorLlRQIAorXGZCXC1cLW1zZG9zXGZQCitGdWVyemEgcXVlIGxvcyBub21icmVzIGRlIGxvcyBmaWNoZXJvcyBnZW5lcmFkb3MgY29tbyBzYWxpZGEgZGUgXGZCXC1cLXNwbGl0XGZQCitzZWFuIGNvbXBhdGlibGVzIGNvbiBtc2Rvcy4KKworRXN0YSBvcGNp824gbW9kaWZpY2EgZWwgcHJlZmlqbyAodGFudG8gZWwgcHJlZmlqbyBwb3Igb21pc2nzbiBjb21vIGVsCitwcm9wb3JjaW9uYWRvIHBvciB1biBhcmd1bWVudG8pOiBsb3MgY2FyYWN0ZXJlcyBhbGZhbnVt6XJpY29zIHNlIHBhc2FuIGEKK21pbvpzY3VsYXMsIGxvcyBzaWdub3MgZGUgc3VtYSCrK7sgc2UgcmVlbXBsYXphbiBjb24gXGZCeFxmUCB5IHNlIGRlc2NhcnRhbiBlbAorcmVzdG8gZGUgY2FyYWN0ZXJlcy4KKworRWwgcmVzdWx0YWRvIHJlc3RhbnRlIHNlIHRydW5jYSBoYXN0YSBkb25kZSBzZWEgbmVjZXNhcmlvIGRlIGZvcm1hIHF1ZSBzZQorZ2VuZXJlbiBmaWNoZXJvcyBjb24gbGEgZm9ybWEgXGZJcHJlZmlqb05cZlBcZkJvZlxmUFxmSU1cZlBcZkIuZGViLlxmUAorLgorLlNIICJFU1RBRE9TIERFIFNBTElEQSIKKy5UUCAKK1xmQjBcZlAKK1RoZSByZXF1ZXN0ZWQgc3BsaXQsIG1lcmdlLCBvciBvdGhlciBjb21tYW5kIHN1Y2NlZWRlZC4gIFxmQlwtXC1pbmZvXGZQIGNvbW1hbmRzCitjb3VudCBhcyBzdWNjZXNzZnVsIGV2ZW4gaWYgdGhlIGZpbGVzIGFyZSBub3QgYmluYXJ5IHBhY2thZ2UgcGFydHMuCisuVFAgCitcZkIxXGZQCitPbmx5IG9jY3VycyB3aXRoIFxmQlwtXC1hdXRvXGZQIGFuZCBpbmRpY2F0ZXMgdGhhdCB0aGUgXGZJcGFydFxmUCBmaWxlIHdhcyBub3QgYQorYmluYXJ5IHBhY2thZ2UgcGFydC4KKy5UUCAKK1xmQjJcZlAKK1NvbWUga2luZCBvZiB0cm91YmxlIGhhcHBlbmVkLCBzdWNoIGFzIGEgc3lzdGVtIGNhbGwgZmFpbHVyZSwgYSBmaWxlIHRoYXQKK2xvb2tlZCBsaWtlIGEgcGFja2FnZSBwYXJ0IGZpbGUgYnV0IHdhcyBjb3JydXB0ZWQsIGEgdXNhZ2UgZXJyb3Igb3Igc29tZQorb3RoZXIgcHJvYmxlbS4KKy4KKy5TSCBGQUxMT1MKK0VzIGltcG9zaWJsZSBvYnRlbmVyIHRvZG9zIGxvcyBkZXRhbGxlcyBkZSBsb3MgcGFxdWV0ZXMgcXVlIGVzdOFuIGVuIGxhIGNvbGEKK3NpbiBpbnZlc3RpZ2FyIGRpcmVjdGFtZW50ZSBsYSBjb2xhLgorCitObyBleGlzdGUgdW5hIG1hbmVyYSBzZW5jaWxsYSBkZSBjb21wcm9iYXIgc2kgZWwgZmljaGVybyBxdWUgcHVlZGUgc2VyIHBhcnRlCitkZSB1biBwYXF1ZXRlIGJpbmFyaW8gZXMgcmVhbG1lbnRlIHVuby4KKy4KKy5TSCBGSUNIRVJPUworLlRQIAorXGZJL3Zhci9saWIvZHBrZy9wYXJ0c1xmUAorRWwgZGlyZWN0b3JpbyBwb3Igb21pc2nzbiBkb25kZSBsYXMgcGFydGVzIGVzcGVyYW4gcGFyYSBsYSB1bmnzbiBhdXRvbeF0aWNhLgorCitMb3Mgbm9tYnJlIGRlIGxvcyBmaWNoZXJvcyB1c2Fkb3MgZW4gZXN0ZSBkaXJlY3RvcmlvIHNlIGVuY3VlbnRyYW4gZW4gdW4KK2Zvcm1hdG8gaW50ZXJubyBkZSBcZkJkcGtnXC1zcGxpdFxmUCwgeSBlcyBpbXByb2JhYmxlIHF1ZSBzZWFuIPp0aWxlcyBwYXJhIG90cm9zCitwcm9ncmFtYXMuIEVuIGN1YWxxdWllciBjYXNvLCBubyBzZSBkZWJlcu1hIGRlcGVuZGVyIGRlbCBmb3JtYXRvIGRlbCBub21icmUKK2RlbCBmaWNoZXJvLgorLgorLlNIICJWyUFTRSBUQU1CSclOIgorXGZCZGViXGZQKDUpLCBcZkJkZWJcLWNvbnRyb2xcZlAoNSksIFxmQmRwa2dcLWRlYlxmUCgxKSwgXGZCZHBrZ1xmUCgxKS4KKy4KKy5TSCBBVVRPUgorQ29weXJpZ2h0IFwoY28gMTk5NVwtMTk5NiBJYW4gSmFja3NvbgorLnNwCitFc3RvIGVzIHNvZnR3YXJlIGxpYnJlOyB2ZWEgbGEgdmVyc2nzbiAyIG8gcG9zdGVyaW9yIGRlIGxhIExpY2VuY2lhIFD6YmxpY2EKK0dlbmVyYWwgR05VIHBhcmEgY29uZGljaW9uZXMgZGUgY29waWEuIE5PIGhheSBuaW5ndW5hIGdhcmFudO1hLgorLlNIICJUUkFEVUNUT1IiCitSdWR5IEdvZG95IDxydWR5QGtlcm5lbFwtcGFuaWsub3JnPiwKK1J1YuluIFBvcnJhcyA8bmFob29AaW5pY2lhLmVzPiwKK0JydW5vIEJhcnJlcmEgQy4gPGJydW5vLmJhcnJlcmFAaWdsb28uY2w+LAorQ2FybG9zIEl6cXVpZXJkbyA8Z2hlZXNoQGVydGlzLm5ldD4sCitFc3RlYmFuIE1hbmNoYWRvIHkKK05PSy4KK0RlYmlhbiBMMTBuIFNwYW5pc2ggPGRlYmlhblwtbDEwblwtc3BhbmlzaEBsaXN0cy5kZWJpYW4ub3JnPi4KKy5icgorUmV2aXNpb25lcyBwb3IgU2FudGlhZ28gVmlsYSA8c2FudmlsYUB1bmV4LmVzPiwKK0phdmllciBGZXJu4W5kZXpcLVNhbmd1aW5vLCBSdWLpbiBQb3JyYXMsCitMdWlzIFVyaWJlIHkgT21hciBDYW1wYWduZS4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL2VzL2Rwa2ctc3RhdG92ZXJyaWRlLjggYi9kcGtnLTEuMTYuMS4xL21hbi9lcy9kcGtnLXN0YXRvdmVycmlkZS44Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjJiMDUzNjYKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9lcy9kcGtnLXN0YXRvdmVycmlkZS44CkBAIC0wLDAgKzEsMTA4IEBACisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkcGtnXC1zdGF0b3ZlcnJpZGUgOCAyMDExXC0wN1wtMDQgIlByb3llY3RvIERlYmlhbiIgIkhlcnJhbWllbnRhcyBkZSBkcGtnIgorLlNIIE5PTUJSRQorZHBrZ1wtc3RhdG92ZXJyaWRlIFwtIFN1c3RpdHVjafNuIGRlbCBwcm9waWV0YXJpbyB5IG1vZG8gZGUgZmljaGVyb3MKKy4KKy5TSCBTSU5PUFNJUworXGZCZHBrZ1wtc3RhdG92ZXJyaWRlXGZQIFtcZklvcHRpb25cZlAuLi5dIFxmSWNvbW1hbmRcZlAKKy4KKy5TSCBERVNDUklQQ0nTTgorXGZCTGEgc3VzdGl0dWNp824gZGUgcHJvcGllZGFkZXNcZlAgZXMgdW4gbW9kbyBkZSBpbmRpY2FyIGEgXGZCZHBrZ1xmUCgxKSBxdWUgdXNlCit1biBwcm9waWV0YXJpbyBvIG1vZG8gZGlmZXJlbnRlIHBhcmEgdW4gZmljaGVybyBjdWFuZG8gdW4gcGFxdWV0ZSBlc3ThCitpbnN0YWxhZG8gKE5vdGE6IGFxde0gdXNhbW9zIGxhIHBhbGFicmEgq2ZpY2hlcm+7LCBwZXJvIHB1ZWRlIHRyYXRhcnNlIGRlCitjdWFscXVpZXIgb2JqZXRvIGRlbCBzaXN0ZW1hIGRlIGZpY2hlcm9zIHF1ZSBkcGtnIHB1ZWRhIG1hbmVqYXIsIGluY2x1eWVuZG8KK2RpcmVjdG9yaW9zLCBkaXNwb3NpdGl2b3MsIGV0YykuIFNlIHB1ZWRlIHVzYXIgcGFyYSBmb3J6YXIgcXVlIHByb2dyYW1hcyBxdWUKK25vcm1hbG1lbnRlIHNlIGluc3RhbGFuIGNvbiBiaXQgc2V0dWlkIHNlIGluc3RhbGVuIHNpbiBlc3RhIG1hcmNhLCBvIHF1ZQorc/NsbyBzZWFuIGVqZWN1dGFibGVzIHBvciB1biBncnVwbyBlbiBjb25jcmV0by4KKy5QCitcZkJkcGtnXC1zdGF0b3ZlcnJpZGVcZlAgZXMgdW5hIGhlcnJhbWllbnRhIHBhcmEgYWRtaW5pc3RyYXIgbGEgbGlzdGEgZGUKK3N1c3RpdHVjaW9uZXMuIFRpZW5lIHRyZXMgZnVuY2lvbmVzIGLhc2ljYXM6IGHxYWRpciwgZWxpbWluYXIgeSBsaXN0YXIgbGFzCitleGNlcGNpb25lcy4KKy4KKy5TSCDTUkRFTkVTCisuVFAgCitcZkJcLVwtYWRkXGZQXGZJIHVzdWFyaW8gZ3J1cG8gbW9kbyBmaWNoZXJvXGZQCitB8WFkZSB1bmEgc3VzdGl0dWNp824gcGFyYSBlbCBcZkJmaWNoZXJvXGZQLiBObyBlcyBuZWNlc2FyaW8gcXVlIGVsIFxmSWZpY2hlcm9cZlAKK2V4aXN0YSBjdWFuZG8gc2UgdXNlIGVzdGEgb3JkZW4sIGxhIHN1c3RpdHVjafNuIHNlIGd1YXJkYXLhIHBhcmEgdXNhcnNlCitwb3N0ZXJpb3JtZW50ZS4gTG9zIHVzdWFyaW9zIHkgbG9zIGdydXBvcyBzZSBwdWVkZW4gZGVmaW5pciBwb3Igc3Ugbm9tYnJlCisocG9yIGVqZW1wbG8gXGZCcm9vdFxmUCBvIFxmQm5vYm9keVxmUCksIG8gcG9yIHN1IG76bWVybyBwcmVjZWRpZG8gcG9yIHVuIFxmQiNcZlAKKyhwb3IgZWplbXBsbyBcZkIjMFxmUCBvIFxmQiM2NTUzNFxmUCkuIEVsIFxmSW1vZG9cZlAgc2UgZGViZSBkZWZpbmlyIGVuIGJhc2UgYWwKK3Npc3RlbWEgb2N0YWwuCisKK1NpIHNlIHByb3BvcmNpb25hIGxhIG9wY2nzbiCrXC1cLXVwZGF0ZbsgeSBlbCBcZklmaWNoZXJvXGZQIGV4aXN0ZSwgc2UgbGUgYXNpZ25hCitpbm1lZGlhdGFtZW50ZSBlbCBudWV2byBwcm9waWV0YXJpbyB5IG1vZG8uCisuVFAgCitcZkJcLVwtcmVtb3ZlXGZQXGZJIGZpY2hlcm9cZlAKK0VsaW1pbmEgdW5hIHN1c3RpdHVjafNuIHBhcmEgZWwgXGZJZmljaGVyb1xmUCwgZXN0YSBvcmRlbiBubyBtb2RpZmljYSBlbCBlc3RhZG8KK2RlbCBcZkJmaWNoZXJvXGZQLgorLlRQIAorXGZCXC1cLWxpc3RcZlAgW1xmSWNvbW9k7W5cZlBdCitMaXN0YSB0b2RhcyBsYXMgc3VzdGl0dWNpb25lcy4gU2kgc2UgZGVmaW5lIHVuIGNvbW9k7W4sIHJlc3RyaW5naXLhIGxhCitzYWxpZGEgYSBsbyBxdWUgY29uY3VlcmRlIGNvbiBlbCBwYXRy824uIFNpIG5vIGhheSBuaW5ndW5hIHN1c3RpdHVjafNuIG8KK25pbmd1bmEgY29uY3VlcmRhIGNvbiBlbCBwYXRy824sIFxmQmRwa2dcLXN0YXRvdmVycmlkZVxmUCBmaW5hbGl6YXLhIGNvbiB1bgorY/NkaWdvIGRlIHNhbGlkYSBkZSAxLgorLlRQIAorXGZCXC1cLWhlbHBcZlAKK011ZXN0cmEgZWwgbW9kbyBkZSB1c28geSB0ZXJtaW5hLgorLlRQIAorXGZCXC1cLXZlcnNpb25cZlAKK011ZXN0cmEgbGEgdmVyc2nzbiB5IHRlcm1pbmEuCisuCisuU0ggT1BDSU9ORVMKKy5UUCAKK1xmQlwtXC1hZG1pbmRpclxmUFxmSSBkaXJlY3RvcmlvXGZQCitDYW1iaWEgZWwgXGZJZGlyZWN0b3Jpb1xmUCBjb24gbGEgYmFzZSBkZSBkYXRvcyBkZSBkcGtnLCBkb25kZSB0YW1iaeluIHNlCitndWFyZGEgbGEgaW5mb3JtYWNp824gcmVsYXRpdmEgYWwgZmljaGVybyCrc3RhdG92ZXJyaWRluy4gUG9yIG9taXNp824gZXMKK6svdmFyL2xpYi9kcGtnuy4KKy5UUCAKK1xmQlwtXC1mb3JjZVxmUAorRnVlcnphIHVuYSBhY2Np824sIGluY2x1c28gc2kg6XN0YSBwdWRpZXNlIHJlc3VsdGFyIHBlcmp1ZGljaWFsLiBFcworbmVjZXNhcmlvIHBhcmEgcG9kZXIgbW9kaWZpY2FyIHVuYSBzdXN0aXR1Y2nzbiBleGlzdGVudGUuCisuVFAgCitcZkJcLVwtdXBkYXRlXGZQCitUcmF0YSBpbm1lZGlhdGFtZW50ZSBkZSBjYW1iaWFyIGVsIGZpY2hlcm8gYWwgbnVldm8gcHJvcGlldGFyaW8geSBtb2RvLCBkZQorZXhpc3Rpci4KKy5UUCAKK1xmQlwtXC1xdWlldFxmUAorUmVkdWNlIGVsIG5pdmVsIGRlIGluZm9ybWFjafNuIGRlIGxhcyBhY2Npb25lcyB0b21hZGFzLgorLgorLlNIIEVOVE9STk8KKy5UUCAKK1xmQkRQS0dfQURNSU5ESVJcZlAKK0lmIHNldCBhbmQgdGhlIFxmQlwtXC1hZG1pbmRpclxmUCBvcHRpb24gaGFzIG5vdCBiZWVuIHNwZWNpZmllZCwgaXQgd2lsbCBiZSB1c2VkCithcyB0aGUgZHBrZyBkYXRhIGRpcmVjdG9yeS4KKy4KKy5TSCBGSUNIRVJPUworLlRQIAorXGZJL3Zhci9saWIvZHBrZy9zdGF0b3ZlcnJpZGVcZlAKK0VsIGZpY2hlcm8gcXVlIGNvbnRpZW5lIGxhIGxpc3RhIGFjdHVhbCBkZSBzdXN0aXR1Y2lvbmVzIGRlIHByb3BpZWRhZGVzIGRlbAorc2lzdGVtYS4gU2UgZW5jdWVudHJhIGVuIGVsIGRpcmVjdG9yaW8gZGUgYWRtaW5pc3RyYWNp824gZGUgZHBrZywganVudG8gY29uCitvdHJvcyBmaWNoZXJvcyBpbXBvcnRhbnRlcyBwYXJhIGRwa2cgY29tbyCrc3RhdHVzuyBvIKthdmFpbGFibGW7LgorLmJyCitOb3RhOiBcZkJkcGtnXC1zdGF0b3ZlcnJpZGVcZlAgcHJlc2VydmEgdW5hIGNvcGlhIGFudGlndWEgZGVsIGZpY2hlcm8gY29uIGxhCitleHRlbnNp824gq1wtb2xkuyBhbnRlcyBkZSByZWVtcGxhemFybGEgY29uIHVuYSBudWV2YS4KKy4KKy5TSCAiVslBU0UgVEFNQknJTiIKK1xmQmRwa2dcZlAoMSkuCisuCisuU0ggQVVUT1IKK0NvcHlyaWdodCBcKGNvIDIwMDAgV2ljaGVydCBBa2tlcm1hbgorLnNwCitFc3RvIGVzIHNvZnR3YXJlIGxpYnJlOyB2ZWEgbGEgdmVyc2nzbiAyIG8gcG9zdGVyaW9yIGRlIGxhIExpY2VuY2lhIFD6YmxpY2EKK0dlbmVyYWwgR05VIHBhcmEgY29uZGljaW9uZXMgZGUgY29waWEuIE5PIGhheSBuaW5ndW5hIGdhcmFudO1hLgorLlNIICJUUkFEVUNUT1IiCitSdWR5IEdvZG95IDxydWR5QGtlcm5lbFwtcGFuaWsub3JnPiwKK1J1YuluIFBvcnJhcyA8bmFob29AaW5pY2lhLmVzPiwKK0JydW5vIEJhcnJlcmEgQy4gPGJydW5vLmJhcnJlcmFAaWdsb28uY2w+LAorQ2FybG9zIEl6cXVpZXJkbyA8Z2hlZXNoQGVydGlzLm5ldD4sCitFc3RlYmFuIE1hbmNoYWRvIHkKK05PSy4KK0RlYmlhbiBMMTBuIFNwYW5pc2ggPGRlYmlhblwtbDEwblwtc3BhbmlzaEBsaXN0cy5kZWJpYW4ub3JnPi4KKy5icgorUmV2aXNpb25lcyBwb3IgU2FudGlhZ28gVmlsYSA8c2FudmlsYUB1bmV4LmVzPiwKK0phdmllciBGZXJu4W5kZXpcLVNhbmd1aW5vLCBSdWLpbiBQb3JyYXMsCitMdWlzIFVyaWJlIHkgT21hciBDYW1wYWduZS4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL2VzL2Rwa2ctdHJpZ2dlci4xIGIvZHBrZy0xLjE2LjEuMS9tYW4vZXMvZHBrZy10cmlnZ2VyLjEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uN2RhMzcwMQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL2VzL2Rwa2ctdHJpZ2dlci4xCkBAIC0wLDAgKzEsODUgQEAKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlRIIGRwa2dcLXRyaWdnZXIgMSAyMDExXC0wOFwtMTQgIlByb3llY3RvIERlYmlhbiIgIkhlcnJhbWllbnRhcyBkZSBkcGtnIgorLlNIIE5PTUJSRQorZHBrZ1wtdHJpZ2dlciBcLSBIZXJyYW1pZW50YSBkZSBkaXNwYXJhZG9yZXMgZGUgcGFxdWV0ZQorLgorLlNIIFNJTk9QU0lTCitcZkJkcGtnXC10cmlnZ2VyXGZQIFtcZklvcGNp825cZlAuLi5dIFxmSW5vbWJyZVwtZGlzcGFyYWRvclxmUAorLmJyCitcZkJkcGtnXC10cmlnZ2VyXGZQIFtcZklvcGNp825cZlAuLi5dIFxmSW9yZGVuXGZQCisuCisuU0ggREVTQ1JJUENJ004KK1xmQmRwa2dcLXRyaWdnZXJcZlAgZXMgdW5hIGhlcnJhbWllbnRhIHBhcmEgYWN0aXZhciBkaXNwYXJhZG9yZXMKK2ludGVuY2lvbmFkYW1lbnRlIHkgcmV2aXNhciBzdSBjb21wYXRpYmlsaWRhZCBjb24gbGEgdmVyc2nzbiBkZSBcZkJkcGtnXGZQIGVuCitlamVjdWNp824uCisuUFAKK1NlIHB1ZWRlIHVzYXIgbWVkaWFudGUgc2NyaXB0cyBkZWwgZGVzYXJyb2xsYWRvciBlbiBzaXR1YWNpb25lcyBjb21wbGVqYXMgeQorY29uZGljaW9uYWxlcyBlbiBsYXMgcXVlIGxvcyBmaWNoZXJvcyBkZSBkaXNwYXJhZG9yZXMsIG8gbGEgZGVjbGFyYWNp824gZGUKK2xhIGRpcmVjdGl2YSBcZkJhY3RpdmF0ZVxmUCBlbiBlbCBmaWNoZXJvIGRlIGNvbnRyb2wsIG5vIHNvbiBzdWZpY2llbnRlbWVudGUKK2luZm9ybWF0aXZvcy4gVGFtYmnpbiBzZSBwdWVkZSB1c2FyIHBhcmEgY29tcHJvYmFjaW9uZXMgeSBhZG1pbmlzdHJhZG9yZXMgZGUKK3Npc3RlbWFzIChwZXJvIHRlbmdhIGVuIGN1ZW50YSBxdWUgXGZCZHBrZ1wtdHJpZ2dlclxmUCBubyBhY2Npb25hcuEgbG9zCitkaXNwYXJhZG9yZXMpLgorLlBQCitMYSBzaW50YXhpcyBubyByZWNvbm9jaWRhIGRlIG5vbWJyZXMgZGUgZGlzcGFyYWRvcmVzIHNvbiB1biBlcnJvciBwYXJhCitcZkJkcGtnXC10cmlnZ2VyXGZQLgorLgorLlNIINNSREVORVMKKy5UUCAKK1xmQlwtXC1jaGVja1wtc3VwcG9ydGVkXGZQCitDaGVjayBpZiB0aGUgcnVubmluZyBcZkJkcGtnXGZQIHN1cHBvcnRzIHRyaWdnZXJzICh1c3VhbGx5IGNhbGxlZCBmcm9tIGEKK3Bvc3RpbnN0KS4gV2lsbCBleGl0IFxmQjBcZlAgaWYgYSB0cmlnZ2Vyc1wtY2FwYWJsZSBcZkJkcGtnXGZQIGhhcyBydW4sIG9yIFxmQjFcZlAKK3dpdGggYW4gZXJyb3IgbWVzc2FnZSB0byBzdGRlcnIgaWYgbm90LiBOb3JtYWxseSwgaG93ZXZlciwgaXQgaXMgYmV0dGVyIGp1c3QKK3RvIGFjdGl2YXRlIHRoZSBkZXNpcmVkIHRyaWdnZXIgd2l0aCBcZkJkcGtnXC10cmlnZ2VyXGZQLgorLlRQIAorXGZCXC1oXGZQLCBcZkJcLVwtaGVscFxmUAorTXVlc3RyYSBlbCBtb2RvIGRlIHVzbyB5IHRlcm1pbmEuCisuVFAgCitcZkJcLVwtdmVyc2lvblxmUAorTXVlc3RyYSBsYSB2ZXJzafNuIHkgdGVybWluYS4KKy4KKy5TSCBPUENJT05FUworLlRQIAorXGZCXC1cLWFkbWluZGlyPVxmUFxmSWRpcmVjdG9yaW9cZlAKK0NhbWJpYSBlbCBkaXJlY3RvcmlvIGNvbiBsYSBiYXNlIGRlIGRhdG9zIGRlIFxmQmRwa2dcZlAuIFBvciBvbWlzafNuIGVzCitcZkkvdmFyL2xpYi9kcGtnXGZQLgorLlRQIAorXGZCXC1cLWJ5XC1wYWNrYWdlPVxmUFxmSXBhcXVldGVcZlAKK092ZXJyaWRlIHRyaWdnZXIgYXdhaXRlciAobm9ybWFsbHkgc2V0IGJ5IFxmQmRwa2dcZlAgdGhyb3VnaCB0aGUKK1xmQkRQS0dfTUFJTlRTQ1JJUFRfUEFDS0FHRVxmUCBlbnZpcm9ubWVudCB2YXJpYWJsZSBvZiB0aGUgbWFpbnRhaW5lciBzY3JpcHRzLAorbmFtaW5nIHRoZSBwYWNrYWdlIHRvIHdoaWNoIHRoZSBzY3JpcHQgYmVsb25ncywgYW5kIHRoaXMgd2lsbCBiZSB1c2VkIGJ5CitkZWZhdWx0KS4KKy5UUCAKK1xmQlwtXC1ub1wtYXdhaXRcZlAKK0VzdGEgb3BjafNuIGRlZmluZSBxdWUgbGEgaW52b2NhY2nzbiBhbCBwYXF1ZXRlIFQgKGRlIGV4aXN0aXIpIG5vIG5lY2VzaXRhCitlc3BlcmFyIGFsIHByb2Nlc2FtaWVudG8gZGUgZXN0ZSBkaXNwYXJhZG9yOyBlbCBwYXF1ZXRlKHMpIGludGVyZXNhZG8gSSBubworc2UgYfFhZGly4SBhIGxhIGxpc3RhIGRlIGVzcGVyYSBkZWwgcHJvY2VzYWRvIGRlbCBkaXNwYXJhZG9yLCBzaW4gY2FtYmlhciBlbAorZXN0YWRvIGRlIFQuIFB1ZWRlIHF1ZSBzZSBjb25zaWRlcmUgcXVlIFQgZXN04SBpbnN0YWxhZG8gYXVucXVlIG5vIHNlIGhheWEKK3Byb2Nlc2FkbyBlbCBkaXNwYXJhZG9yLgorLlRQIAorXGZCXC1cLW5vXC1hY3RcZlAKK1JlYWxpemEgdW4gc2ltdWxhY3JvIHNpbiBjYW1iaW9zIGVuIGVsIHNpc3RlbWEuCisuCisuU0ggRU5UT1JOTworLlRQIAorXGZCRFBLR19BRE1JTkRJUlxmUAorSWYgc2V0IGFuZCB0aGUgXGZCXC1cLWFkbWluZGlyXGZQIG9wdGlvbiBoYXMgbm90IGJlZW4gc3BlY2lmaWVkLCBpdCB3aWxsIGJlIHVzZWQKK2FzIHRoZSBkcGtnIGRhdGEgZGlyZWN0b3J5LgorLgorLlNIICJWyUFTRSBUQU1CSclOIgorXGZCZHBrZ1xmUCgxKSwgXGZCZGViXC10cmlnZ2Vyc1xmUCg1KSwgXGZCL3Vzci9zaGFyZS9kb2MvZHBrZ1wtZGV2L3RyaWdnZXJzLnR4dC5nelxmUC4KKy5TSCAiVFJBRFVDVE9SIgorUnVkeSBHb2RveSA8cnVkeUBrZXJuZWxcLXBhbmlrLm9yZz4sCitSdWLpbiBQb3JyYXMgPG5haG9vQGluaWNpYS5lcz4sCitCcnVubyBCYXJyZXJhIEMuIDxicnVuby5iYXJyZXJhQGlnbG9vLmNsPiwKK0NhcmxvcyBJenF1aWVyZG8gPGdoZWVzaEBlcnRpcy5uZXQ+LAorRXN0ZWJhbiBNYW5jaGFkbyB5CitOT0suCitEZWJpYW4gTDEwbiBTcGFuaXNoIDxkZWJpYW5cLWwxMG5cLXNwYW5pc2hAbGlzdHMuZGViaWFuLm9yZz4uCisuYnIKK1JldmlzaW9uZXMgcG9yIFNhbnRpYWdvIFZpbGEgPHNhbnZpbGFAdW5leC5lcz4sCitKYXZpZXIgRmVybuFuZGV6XC1TYW5ndWlubywgUnVi6W4gUG9ycmFzLAorTHVpcyBVcmliZSB5IE9tYXIgQ2FtcGFnbmUuCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9lcy9kcGtnLXZlbmRvci4xIGIvZHBrZy0xLjE2LjEuMS9tYW4vZXMvZHBrZy12ZW5kb3IuMQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iYzQwMzU4Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vZXMvZHBrZy12ZW5kb3IuMQpAQCAtMCwwICsxLDY4IEBACisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkcGtnXC12ZW5kb3IgMSAyMDExXC0wN1wtMDQgIlByb3llY3RvIERlYmlhbiIgIkhlcnJhbWllbnRhcyBkZSBkcGtnIgorLlNIIE5PTUJSRQorZHBrZ1wtdmVuZG9yIFwtIENvbnN1bHRhIGluZm9ybWFjafNuIHJlbGF0aXZhIGFsIHByb3ZlZWRvciBkZSBsYSBwdWJsaWNhY2nzbgorLgorLlNIIFNJTk9QU0lTCitcZkJkcGtnXC12ZW5kb3JcZlAgW1xmSW9wY2nzblxmUC4uLl0gXGZJb3JkZW5cZlAKKy4KKy5TSCBERVNDUklQQ0nTTgorXGZCZHBrZ1wtdmVuZG9yXGZQIGVzIHVuYSBoZXJyYW1pZW50YSBwYXJhIGNvbnN1bHRhciBpbmZvcm1hY2nzbiBkZSBsb3MKK3Byb3ZlZWRvcmVzIGxpc3RhZG9zIGVuIFxmQi9ldGMvZHBrZy9vcmlnaW5zXGZQLiBcZkIvZXRjL2Rwa2cvb3JpZ2lucy9kZWZhdWx0XGZQCitjb250aWVuZSBpbmZvcm1hY2nzbiBhY2VyY2EgZGVsIHByb3ZlZWRvciBhY3R1YWwuCisuCisuU0gg01JERU5FUworLlRQIAorXGZCXC1cLWlzXGZQXGZJIHByb3ZlZWRvclxmUAorRXhpdHMgd2l0aCBcZkIwXGZQIGlmIHRoZSBjdXJyZW50IHZlbmRvciBpcyBcZkl2ZW5kb3JcZlAuIE90aGVyd2lzZSBleGl0cyB3aXRoCitub25cLXplcm8uCisuVFAgCitcZkJcLVwtZGVyaXZlc1wtZnJvbVxmUFxmSSBwcm92ZWVkb3JcZlAKK0V4aXRzIHdpdGggXGZCMFxmUCBpZiB0aGUgY3VycmVudCB2ZW5kb3IgZGlzdHJpYnV0aW9uIGlzIGEgZGVyaXZhdGl2ZSBvZgorXGZJdmVuZG9yXGZQLCBvdGhlcndpc2UgZXhpdHMgd2l0aCBub25cLXplcm8uIEl0IHVzZXMgdGhlICJQYXJlbnQiIGZpZWxkIHRvCiticm93c2UgYWxsIGFuY2VzdG9ycyBvZiB0aGUgY3VycmVudCB2ZW5kb3IuCisuVFAgCitcZkJcLVwtcXVlcnlcZlBcZkkgY2FtcG9cZlAKK011ZXN0cmEgcG9yIGxhIHNhbGlkYSBlc3ThbmRhciBlbCB2YWxvciBlc3BlY+1maWNvIGRlIHByb3ZlZWRvciBcZkljYW1wb1xmUCBlbgorcmVsYWNp824gYWwgcHJvdmVlZG9yIGFjdHVhbC4KKy5UUCAKK1xmQlwtXC1oZWxwXGZQCitNdWVzdHJhIGVsIG1vZG8gZGUgdXNvIHkgdGVybWluYS4KKy5UUCAKK1xmQlwtXC12ZXJzaW9uXGZQCitNdWVzdHJhIGxhIHZlcnNp824geSB0ZXJtaW5hLgorLgorLlNIIE9QQ0lPTkVTCisuVFAgCitcZkJcLVwtdmVuZG9yXGZQXGZJIHByb3ZlZWRvclxmUAorQXNzdW1lcyB0aGUgY3VycmVudCB2ZW5kb3IgaXMgXGZJdmVuZG9yXGZQIGluc3RlYWQgb2YgZGlzY292ZXJpbmcgaXQgd2l0aCB0aGUKK1xmQkRFQl9WRU5ET1JcZlAgZW52aXJvbm1lbnQgdmFyaWFibGUgb3IgXGZCL2V0Yy9kcGtnL29yaWdpbnMvZGVmYXVsdFxmUC4KKy4KKy5TSCBFTlRPUk5PCisuVFAgCitcZkJERUJfVkVORE9SXGZQCitFc3RhIG9wY2nzbiBkZWZpbmUgZWwgcHJvdmVlZG9yIGFjdHVhbC4gRGUgZXN0YXIgdmFj7W8sIGVsIHByb3ZlZWRvciBhY3R1YWwKK3NlIGRlZmluaXLhIGxleWVuZG8gXGZCL2V0Yy9kcGtnL29yaWdpbnMvZGVmYXVsdFxmUC4KKy4KKy5TSCBBVVRPUgorQ29weXJpZ2h0IFwoY28gMjAwOSBSYXBoYVxbOmVdbCBIZXJ0em9nCisuc3AKK0VzdG8gZXMgc29mdHdhcmUgbGlicmU7IHZlYSBsYSB2ZXJzafNuIDIgbyBwb3N0ZXJpb3IgZGUgbGEgTGljZW5jaWEgUPpibGljYQorR2VuZXJhbCBHTlUgcGFyYSBjb25kaWNpb25lcyBkZSBjb3BpYS4gTk8gaGF5IG5pbmd1bmEgZ2FyYW507WEuCisKKy5TSCAiVFJBRFVDVE9SIgorUnVkeSBHb2RveSA8cnVkeUBrZXJuZWxcLXBhbmlrLm9yZz4sCitSdWLpbiBQb3JyYXMgPG5haG9vQGluaWNpYS5lcz4sCitCcnVubyBCYXJyZXJhIEMuIDxicnVuby5iYXJyZXJhQGlnbG9vLmNsPiwKK0NhcmxvcyBJenF1aWVyZG8gPGdoZWVzaEBlcnRpcy5uZXQ+LAorRXN0ZWJhbiBNYW5jaGFkbyB5CitOT0suCitEZWJpYW4gTDEwbiBTcGFuaXNoIDxkZWJpYW5cLWwxMG5cLXNwYW5pc2hAbGlzdHMuZGViaWFuLm9yZz4uCisuYnIKK1JldmlzaW9uZXMgcG9yIFNhbnRpYWdvIFZpbGEgPHNhbnZpbGFAdW5leC5lcz4sCitKYXZpZXIgRmVybuFuZGV6XC1TYW5ndWlubywgUnVi6W4gUG9ycmFzLAorTHVpcyBVcmliZSB5IE9tYXIgQ2FtcGFnbmUuCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9lcy9kcGtnLjEgYi9kcGtnLTEuMTYuMS4xL21hbi9lcy9kcGtnLjEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTIyZWQ4OAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL2VzL2Rwa2cuMQpAQCAtMCwwICsxLDc5MiBAQAorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlwiCisuXCIgVGhpcyBmaWxlIHdhcyBnZW5lcmF0ZWQgd2l0aCBwbzRhLiBUcmFuc2xhdGUgdGhlIHNvdXJjZSBmaWxlLgorLlwiCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuVEggZHBrZyAxIDIwMTFcLTA4XC0xNCAiUHJveWVjdG8gRGViaWFuIiAiSGVycmFtaWVudGFzIGRlIGRwa2ciCisuU0ggTk9NQlJFCitkcGtnIFwtIEdlc3RvciBkZSBwYXF1ZXRlcyBkZSBEZWJpYW4KKy4KKy5TSCBTSU5PUFNJUworXGZCZHBrZ1xmUCBbXGZJb3B0aW9uXGZQLi4uXSBcZklhY3Rpb25cZlAKKy4KKy5TSCBBVklTTworRWwgcHJvcPNzaXRvIGRlIGVzdGUgbWFudWFsIGVzIHF1ZSBsb3MgdXN1YXJpb3MgZW50aWVuZGFuIGxhcyBvcGNpb25lcyBkZQoraW52b2NhY2nzbiBkZSBcZkJkcGtnXGZQIHkgZWwgZXN0YWRvIGRlIGxvcyBwYXF1ZXRlcyBjb24gbeFzIGRldGFsbGUgcXVlIGxhIHF1ZQorb2ZyZWNlIFxmQmRwa2cgXC1cLWhlbHBcZlAuCisKK0xvcyByZXNwb25zYWJsZXMgZGUgcGFxdWV0ZXMgXGZJbm9cZlAgZGViZXLtYW4gdXNhciBcZkJkcGtnIFwtXC1oZWxwXGZQIHBhcmEKK2NvbXByZW5kZXIgZWwgcHJvY2VzbyBkZSBpbnN0YWxhY2nzbiBkZSBcZkJkcGtnXGZQLiBMYXMgZGVzY3JpcGNpb25lcyBkZSBsbyBxdWUKK2hhY2UgXGZCZHBrZ1xmUCBhbCBpbnN0YWxhciB5IGRlc2luc3RhbGFyIHNvbiBwYXJ0aWN1bGFybWVudGUgaW1wcmVjaXNhcy4KKy4KKy5TSCBERVNDUklQQ0nTTgorXGZCZHBrZ1xmUCBlcyB1bmEgaGVycmFtaWVudGEgcGFyYSBpbnN0YWxhciwgY29tcGlsYXIsIGVsaW1pbmFyIHkgbWFuaXB1bGFyIGxvcworcGFxdWV0ZXMgZGUgRGViaWFuLiBMYSBpbnRlcmZheiBwcmluY2lwYWwgeSBt4XMgaW50dWl0aXZhIHBhcmEgXGZCZHBrZ1xmUCBlcworXGZCYXB0aXR1ZGVcZlAoMSkuIFxmQmRwa2dcZlAgc2UgaW52b2NhIGNvbiBwYXLhbWV0cm9zIGRlIGztbmVhIGRlIPNyZGVuZXMsIHF1ZQorY29uc2lzdGVuIGRlIHVuYSBzb2xhIGFjY2nzbiB5IGNlcm8gbyBt4XMgb3BjaW9uZXMuIExhIGFjY2nzbiBvIHBhcuFtZXRybworZGljZSBhIFxmQmRwa2dcZlAgcXXpIGhhY2VyLCBtaWVudHJhcyBxdWUgbGFzIG9wY2lvbmVzIGNvbnRyb2xhbiBkZSB1bmEgbWFuZXJhCit1IG90cmEgc3UgY29tcG9ydGFtaWVudG8uCisKK1xmQmRwa2dcZlAgY2FuIGFsc28gYmUgdXNlZCBhcyBhIGZyb250XC1lbmQgdG8gXGZCZHBrZ1wtZGViXGZQKDEpIGFuZAorXGZCZHBrZ1wtcXVlcnlcZlAoMSkuIFRoZSBsaXN0IG9mIHN1cHBvcnRlZCBhY3Rpb25zIGNhbiBiZSBmb3VuZCBsYXRlciBvbiBpbiB0aGUKK1xmQkFDVElPTlNcZlAgc2VjdGlvbi4gSWYgYW55IHN1Y2ggYWN0aW9uIGlzIGVuY291bnRlcmVkIFxmQmRwa2dcZlAganVzdCBydW5zCitcZkJkcGtnXC1kZWJcZlAgb3IgXGZCZHBrZ1wtcXVlcnlcZlAgd2l0aCB0aGUgcGFyYW1ldGVycyBnaXZlbiB0byBpdCwgYnV0IG5vCitzcGVjaWZpYyBvcHRpb25zIGFyZSBjdXJyZW50bHkgcGFzc2VkIHRvIHRoZW0sIHRvIHVzZSBhbnkgc3VjaCBvcHRpb24gdGhlCitiYWNrXC1lbmRzIG5lZWQgdG8gYmUgY2FsbGVkIGRpcmVjdGx5LgorLgorLlNIICJJTkZPUk1BQ0nTTiBTT0JSRSBQQVFVRVRFUyIKK1xmQmRwa2dcZlAgcG9zaWJpbGl0YSBlbCBhY2Nlc28gYSBiYXN0YW50ZSBpbmZvcm1hY2nzbiBzb2JyZSBsb3MgcGFxdWV0ZXMKK2Rpc3BvbmlibGVzLiBFc3RhIGluZm9ybWFjafNuIHNlIGRpdmlkZSBlbiB0cmVzIGNsYXNlczogXGZCZXN0YWRvc1xmUCwKK1xmQmVzdGFkb3MgZGUgc2VsZWNjafNuXGZQIGUgXGZCaW5kaWNhZG9yZXNcZlAuIEhhYml0dWFsbWVudGUsIGVzdG9zIHZhbG9yZXMgc2UKK21vZGlmaWNhbiBwcmluY2lwYWxtZW50ZSBjb24gXGZCZHNlbGVjdFxmUC4KKy5TUyAiRVNUQURPUyBERUwgUEFRVUVURSIKKy5UUCAKK1xmQm5vdFwtaW5zdGFsbGVkXGZQCitFbCBwYXF1ZXRlIG5vIGVzdOEgaW5zdGFsYWRvIGVuIGVsIHNpc3RlbWEuCisuVFAgCitcZkJjb25maWdcLWZpbGVzXGZQCitT82xvIHF1ZWRhbiBsb3MgZmljaGVyb3MgZGUgY29uZmlndXJhY2nzbiBkZWwgcGFxdWV0ZSBlbiBlbCBzaXN0ZW1hLgorLlRQIAorXGZCaGFsZlwtaW5zdGFsbGVkXGZQCitTZSBpbmljafMgbGEgaW5zdGFsYWNp824gZGVsIHBhcXVldGUsIHBlcm8gbm8gc2UgY29tcGxldPMgcG9yIGFsZ3VuYSByYXrzbi4KKy5UUCAKK1xmQnVucGFja2VkXGZQCitFbCBwYXF1ZXRlIGVzdOEgZGVzY29tcHJpbWlkbywgcGVybyBubyBjb25maWd1cmFkby4KKy5UUCAKK1xmQmhhbGZcLWNvbmZpZ3VyZWRcZlAKK0VsIHBhcXVldGUgZXN04SBkZXNjb21wcmltaWRvIHkgbGEgY29uZmlndXJhY2nzbiBzZSBoYSBpbmljaWFkbywgcGVybyBubworZmluYWxpevMgcG9yIGFsZ3VuYSByYXrzbi4KKy5UUCAKK1xmQnRyaWdnZXJzXC1hd2FpdGVkXGZQCitFbCBwYXF1ZXRlIGFndWFyZGEgYWwgcHJvY2VzbyBkZSBsb3MgZGlzcGFyYWRvcmVzIGRlIG90cm8gcGFxdWV0ZS4KKy5UUCAKK1xmQnRyaWdnZXJzXC1wZW5kaW5nXGZQCitMb3MgZGlzcGFyYWRvcmVzIGRlbCBwYXF1ZXRlIHNlIGhhbiBhY3RpdmFkby4KKy5UUCAKK1xmQmluc3RhbGxlZFxmUAorRWwgcGFxdWV0ZSBlc3ThIGNvcnJlY3RhbWVudGUgZGVzZW1wYXF1ZXRhZG8geSBjb25maWd1cmFkby4KKy5TUyAiRVNUQURPUyBERSBTRUxFQ0NJ004gREVMIFBBUVVFVEUiCisuVFAgCitcZkJpbnN0YWxsXGZQCitFbCBwYXF1ZXRlIHNlIGhhIHNlbGVjY2lvbmFkbyBwYXJhIHN1IGluc3RhbGFjafNuLgorLlRQIAorXGZCaG9sZFxmUAorXGZCZHBrZ1xmUCBubyBtb2RpZmljYXLhIHVuIHBhcXVldGUgbWFyY2FkbyBjb24gXGZCaG9sZFxmUCAocmV0ZW5pZG8pLCBhIG5vIHNlcgorcXVlIHNlIGxlIGZ1ZXJjZSBhIGVsbG8gY29uIGxhIG9wY2nzbiBcZkJcLVwtZm9yY2VcLWhvbGRcZlAuCisuVFAgCitcZkJkZWluc3RhbGxcZlAKK0VsIHBhcXVldGUgc2UgaGEgc2VsZWNjaW9uYWRvIHBhcmEgc3UgZGVzaW5zdGFsYWNp824gKGVzIGRlY2lyLCBxdWUgcXVlcmVtb3MKK2JvcnJhciB0b2RvIGV4Y2VwdG8gbG9zIGZpY2hlcm9zIGRlIGNvbmZpZ3VyYWNp824pLgorLlRQIAorXGZCcHVyZ2VcZlAKK0VsIHBhcXVldGUgc2UgaGEgc2VsZWNjaW9uYWRvIHBhcmEgcXVlIHNlIHB1cmd1ZSAoZXMgZGVjaXIsIHF1ZSBxdWVyZW1vcworYm9ycmFyIHRvZG8gZW4gbG9zIGRpcmVjdG9yaW9zIGRlbCBzaXN0ZW1hLCBpbmNsdXllbmRvIGxvcyBmaWNoZXJvcyBkZQorY29uZmlndXJhY2nzbikuCisuU1MgIklORElDQURPUkVTIERFTCBQQVFVRVRFIgorLlRQIAorXGZCcmVpbnN0XC1yZXF1aXJlZFxmUAorVW4gcGFxdWV0ZSBtYXJjYWRvIGNvbiBcZkJyZWluc3RcLXJlcXVpcmVkXGZQIGVzdOEgcm90byB5IHByZWNpc2EgdW5hCityZWluc3RhbGFjafNuLiBFc3RvcyBwYXF1ZXRlcyBubyBzZSBwdWVkZW4gYm9ycmFyIGEgbm8gc2VyIHF1ZSBmdWVyY2UgbGEKK2FjY2nzbiBjb24gbGEgb3BjafNuIFxmQlwtXC1mb3JjZVwtcmVtb3ZlXC1yZWluc3RyZXFcZlAuCisuCisuU0ggQUNDSU9ORVMKKy5UUCAKK1xmQlwtaVxmUCwgXGZCXC1cLWluc3RhbGxcZlAgXGZJcGFja2FnZVwtZmlsZVxmUC4uLgorSW5zdGFsbCB0aGUgcGFja2FnZS4gSWYgXGZCXC1cLXJlY3Vyc2l2ZVxmUCBvciBcZkJcLVJcZlAgb3B0aW9uIGlzIHNwZWNpZmllZCwKK1xmSXBhY2thZ2VcLWZpbGVcZlAgbXVzdCByZWZlciB0byBhIGRpcmVjdG9yeSBpbnN0ZWFkLgorCitMYSBpbnN0YWxhY2nzbiBjb25zaXN0ZSBkZSBsb3Mgc2lndWllbnRlcyBwYXNvczoKKy5icgorCitcZkIxLlxmUCBFeHRyYWNjafNuIGRlIGxvcyBmaWNoZXJvcyBkZSBjb250cm9sIGRlbCBwYXF1ZXRlIG51ZXZvLgorLmJyCisKK1xmQjIuXGZQIERlIGV4aXN0aXIgb3RyYSB2ZXJzafNuIGRlbCBtaXNtbyBwYXF1ZXRlIGVuIGVsIHNpc3RlbWEsIHNlIGVqZWN1dGEgZWwKK3NjcmlwdCBcZklwcmVybVxmUCAocHJlXC1lbGltaW5hY2nzbikgZGVsIGFudGlndW8gcGFxdWV0ZS4KKy5icgorCitcZkIzLlxmUCBFamVjdWNp824gZGVsIHNjcmlwdCBcZklwcmVpbnN0XGZQIChwcmVcLWluc3RhbGFjafNuKSBkZWwgcGFxdWV0ZSwgZGUKK2V4aXN0aXIuCisuYnIKKworXGZCNC5cZlAgRGVzZW1wYXF1ZXRhZG8gZGUgbG9zIG51ZXZvcyBmaWNoZXJvcywgYSBsYSB2ZXogcXVlIHNlIGNyZWEgdW5hIGNvcGlhCitkZSBzZWd1cmlkYWQgZGUgbG9zIGFudGlndW9zIHBhcmEgc3UgcmVzdGF1cmFjafNuIGVuIGNhc28gZGUgZmFsbG8uCisuYnIKKworXGZCNS5cZlAgRGUgZXhpc3RpciBvdHJhIHZlcnNp824gZGVsIG1pc21vIHBhcXVldGUgcHJldmlhbWVudGUgaW5zdGFsYWRvIGVuIGVsCitzaXN0ZW1hLCBzZSBlamVjdXRhcuEgZWwgc2NyaXB0IFxmSXBvc3RybVxmUCAocG9zdFwtZWxpbWluYWNp824pIGRlbCBwYXF1ZXRlCithbnRpZ3VvLiBUZW5nYSBlbiBjdWVudGEgcXVlIGVzdGUgc2NyaXB0IHNlIGVqZWN1dGEgZGVzcHXpcyBkZWwgc2NyaXB0CitcZklwcmVpbnN0XGZQIGRlbCBwYXF1ZXRlIG51ZXZvIHlhIHF1ZSBsb3MgbnVldm9zIGZpY2hlcm9zIHNlIGVzY3JpYmVuIGEgbGEgdmV6CitxdWUgc2UgYm9ycmFuIGxvcyBhbnRpZ3Vvcy4KKy5icgorCitcZkI2LlxmUCBDb25maWd1cmFjafNuIGRlbCBwYXF1ZXRlLiBQYXJhIHVuYSBpbmZvcm1hY2nzbiBkZXRhbGxhZGEgc29icmUgZXN0ZQorcHJvY2VzbywgY29uc3VsdGUgXGZCXC1cLWNvbmZpZ3VyZVxmUC4KKy5UUCAKK1xmQlwtXC11bnBhY2sgXGZQXGZJcGFja2FnZVwtZmlsZVxmUC4uLgorVW5wYWNrIHRoZSBwYWNrYWdlLCBidXQgZG9uJ3QgY29uZmlndXJlIGl0LiBJZiBcZkJcLVwtcmVjdXJzaXZlXGZQIG9yIFxmQlwtUlxmUAorb3B0aW9uIGlzIHNwZWNpZmllZCwgXGZJcGFja2FnZVwtZmlsZVxmUCBtdXN0IHJlZmVyIHRvIGEgZGlyZWN0b3J5IGluc3RlYWQuCisuVFAgCitcZkJcLVwtY29uZmlndXJlIFxmUFxmSXBhcXVldGVcZlAuLi58XGZCXC1hXGZQfFxmQlwtXC1wZW5kaW5nXGZQCitDb25maWd1cmEgdW4gcGFxdWV0ZSBxdWUgZXN04SBkZXNlbXBhcXVldGFkbyBwZXJvIG5vIGNvbmZpZ3VyYWRvLiBTaSBzZQoraW50cm9kdWNlbiBsYXMgb3BjaW9uZXMgXGZCXC1hXGZQIG8gXGZCXC1cLXBlbmRpbmdcZlAgZW4gbHVnYXIgZGUgdW4gXGZJcGFxdWV0ZVxmUCwgc2UKK2NvbmZpZ3VyYXLhbiB0b2RvcyBsb3MgcGFxdWV0ZXMgZGVzZW1wYXF1ZXRhZG9zIHBlcm8gbm8gY29uZmlndXJhZG9zLgorCitQYXJhIHJlY29uZmlndXJhciB1biBwYXF1ZXRlIHF1ZSB5YSBmdWUgY29uZmlndXJhZG8sIHBydWViZSBsYSBvcmRlbgorXGZCZHBrZ1wtcmVjb25maWd1cmVcZlAoOCkuCisKK0xhIGNvbmZpZ3VyYWNp824gY29uc2lzdGUgZGUgbG9zIHNpZ3VpZW50ZXMgcGFzb3M6CisuYnIKKworXGZCMS5cZlAgRGVzZW1wYXF1ZXRhZG8gZGUgbG9zIGZpY2hlcm9zIGRlIGNvbmZpZ3VyYWNp824gq2NvbmZmaWxlc7ssIGEgbGEgdmV6CitzZSBjcmVhIHVuYSBjb3BpYSBkZSBzZWd1cmlkYWQgZGUgbG9zIGFudGlndW9zIHBhcmEgc3UgcmVzdGF1cmFjafNuIGVuIGNhc28KK2RlIGZhbGxvLgorLmJyCisKK1xmQjIuXGZQIEVqZWN1Y2nzbiBkZWwgc2NyaXB0IFxmSXBvc3RpbnN0XGZQIChwb3N0XC1pbnN0YWxhY2nzbikgZGVsIHBhcXVldGUsIHNpCitleGlzdGUuCisuVFAgCitcZkJcLVwtdHJpZ2dlcnNcLW9ubHlcZlAgXGZJcGFxdWV0ZVxmUC4uLnxcZkJcLWFcZlB8XGZCXC1cLXBlbmRpbmdcZlAKK1Byb2Nlc2Egc/NsbyBsb3MgZGlzcGFyYWRvcmVzLiBUb2RvcyBsb3MgZGlzcGFyYWRvcmVzIHBlbmRpZW50ZXMgKHBlbmRpbmcpCitzZSBwcm9jZXNhcuFuIGEgbWVub3MgcXVlIGVzcGVjaWZpcXVlIGVsKGxvcykgcGFxdWV0ZShzKSwgdW5vIHBvciB1bm8gZGUgc2VyCituZWNlc2FyaW8uIEVsIHVzbyBkZSBlc3RhIG9wY2nzbiBwdWVkZSBkZWphciBwYXF1ZXRlcyBjb24gbG9zIGVzdGFkb3Mgbm8KK2Rlc2VhZG9zIGRlIFxmQnRyaWdnZXJzXC1hd2FpdGVkXGZQIHkgXGZCdHJpZ2dlcnNcLXBlbmRpbmdcZlAuIFB1ZWRlIGFycmVnbGFyIGVzdG8KK23hcyB0YXJkZSBlamVjdXRhbmRvIFxmQmRwa2cgXC1cLWNvbmZpZ3VyZSBcLVwtcGVuZGluZ1xmUC4KKy5UUCAKK1xmQlwtclxmUCwgXGZCXC1cLXJlbW92ZVxmUCwgXGZCXC1QXGZQLCBcZkJcLVwtcHVyZ2UgXGZQXGZJcGFxdWV0ZVxmUC4uLnxcZkJcLWFcZlB8XGZCXC1cLXBlbmRpbmdcZlAKK0VsaW1pbmEgdW4gcGFxdWV0ZSBpbnN0YWxhZG8uIExhcyBvcGNpb25lcyBcZkJcLXJcZlAgeSBcZkJcLVwtcmVtb3ZlXGZQIGVsaW1pbmFuIHRvZG8KK2V4Y2VwdG8gbG9zIGZpY2hlcm9zIGRlIGNvbmZpZ3VyYWNp824gq2NvbmZmaWxlc7suIEVzdG8gcHVlZGUgZXZpdGFyIHRlbmVyCitxdWUgY29uZmlndXJhciBkZSBudWV2byBlbCBwYXF1ZXRlIHNpIHNlIHJlaW5zdGFsYSBkZXNwdelzIChsb3Mgq2NvbmZmaWxlc7sKK3NvbiBmaWNoZXJvcyBkZSBjb25maWd1cmFjafNuIGxpc3RhZG9zIGVuIGVsIGZpY2hlcm8gZGUgY29udHJvbAorXGZJREVCSUFOL2NvbmZmaWxlc1xmUCkuIFxmQlwtUFxmUCBvIFxmQlwtXC1wdXJnZVxmUCBlbGltaW5hbiB0b2RvIGluY2x1eWVuZG8gbG9zCitmaWNoZXJvcyBkZSBjb25maWd1cmFjafNuIKtjb25mZmlsZbsuIERlIHVzYXIgbGFzIG9wY2lvbmVzIFxmQlwtYVxmUCB5CitcZkJcLVwtcGVuZGluZ1xmUCBlbiBsdWdhciBkZSB1biBub21icmUgZGUgcGFxdWV0ZSwgdG9kb3MgbG9zIHF1ZSBlc3ThbiBhbCBtZW5vcworZGVzZW1wYXF1ZXRhZG9zIHBlcm8gbWFyY2Fkb3MgcGFyYSBzdSBlbGltaW5hY2nzbiBvIHB1cmdhY2nzbiBlbgorXGZJL3Zhci9saWIvZHBrZy9zdGF0dXNcZlAgc2UgZWxpbWluYXLhbiBvIHB1cmdhcuFuIHJlc3BlY3RpdmFtZW50ZS4gTm90YToKK3B1ZWRlIHF1ZSBcZkJkcGtnXGZQIGRlc2Nvbm96Y2EgYWxndW5vcyBmaWNoZXJvcyBzaSBzdSBjcmVhY2nzbiB5IG1hbmlwdWxhY2nzbgorb2N1cnJp8yBhaXNsYWRhbWVudGUgYSB0cmF26XMgZGUgbG9zIHNjcmlwdHMgZGUgY29uZmlndXJhY2nzbi4gRGUgc2VyIGFz7SwKK1xmQmRwa2dcZlAgbm8gbG9zIGVsaW1pbmFy4SBkaXJlY3RhbWVudGUgc2lubyBxdWUgZWwgc2NyaXB0IFxmSXBvc3RybVxmUCBkZWwKK3BhcXVldGUgKGludm9jYWRvIHBvciBcZkJkcGtnXGZQKSBlamVjdXRhcuEgbGEgZWxpbWluYWNp824gZGUgZXN0b3MgZmljaGVyb3MKK2R1cmFudGUgbGEgcHVyZ2FjafNuIGRlbCBwYXF1ZXRlLiBQb3Igc3VwdWVzdG8sIGVzdG8gc/NsbyB0aWVuZSBlZmVjdG8gZW4KK2xvcyBkaXJlY3RvcmlvcyBkZSBzaXN0ZW1hLCBubyBzb2JyZSBsb3MgZmljaGVyb3MgZGUgY29uZmlndXJhY2nzbiBlc2NyaXRvcworZW4gbG9zIGRpcmVjdG9yaW9zIKtob21lL7sgZGUgdXN1YXJpby4KKworTGEgZWxpbWluYWNp824gZGUgdW4gcGFxdWV0ZSBjb25zaXN0ZSBkZSBsb3Mgc2lndWllbnRlcyBwYXNvczoKKy5icgorCitcZkIxLlxmUCBFamVjdWNp824gZGVsIHNjcmlwdCBcZklwcmVybVxmUC4KKy5icgorCitcZkIyLlxmUCBFbGltaW5hY2nzbiBkZSBsb3MgZmljaGVyb3MgaW5zdGFsYWRvcy4KKy5icgorCitcZkIzLlxmUCBFamVjdWNp824gZGVsIHNjcmlwdCBcZklwb3N0cm1cZlAuCisuYnIKKy5UUCAKK1xmQlwtXC11cGRhdGVcLWF2YWlsXGZQLCBcZkJcLVwtbWVyZ2VcLWF2YWlsXGZQIFxmSWZpY2hlcm9cLVBhY2thZ2VzXGZQCitBY3R1YWxpemEgbGEgbGlzdGEgZGUgcGFxdWV0ZXMgZGlzcG9uaWJsZXMgZGUgXGZCZHBrZ1xmUCB5IFxmQmRzZWxlY3RcZlAuIExhCithY2Np824gXGZCXC1cLW1lcmdlXC1hdmFpbFxmUCBjb21iaW5hIGxhIGluZm9ybWFjafNuIGFudGlndWEgY29uIGxhIGluZm9ybWFjafNuCitkZWwgXGZJZmljaGVyb1wtUGFja2FnZXNcZlAuIEVsIFxmSWZpY2hlcm9cLVBhY2thZ2VzXGZQIGRpc3RyaWJ1aWRvIGNvbiBEZWJpYW4gc2UKK2xsYW1hIHNpbXBsZW1lbnRlIFxmSVBhY2thZ2VzXGZQLiBFbCBwcm9ncmFtYSBcZkJkcGtnXGZQIGd1YXJkYSB1biByZWdpc3RybyBkZSBsb3MKK3BhcXVldGVzIGRpc3BvbmlibGVzIGVuIFxmSS92YXIvbGliL2Rwa2cvYXZhaWxhYmxlXGZQLgorCitcZkJkc2VsZWN0IHVwZGF0ZVxmUCBvZnJlY2UgdW5hIG1hbmVyYSBzZW5jaWxsYSB5IGRpcmVjdGEgZGUgb2J0ZW5lciB5CithY3R1YWxpemFyIGVsIGZpY2hlcm8gXGZJYXZhaWxhYmxlXGZQIChkaXNwb25pYmxlKS4gVGVuZ2EgZW4gY3VlbnRhIHF1ZSBlbAorZmljaGVybyBlcyBjYXNpIGluc2VydmlibGUgc2kgdXNhIHVuYSBpbnRlcmZheiBiYXNhZGEgZW4gQVBUIGVuIGx1Z2FyIGRlCitcZkJkc2VsZWN0XGZQOiBBUFQgdGllbmUgc3UgcHJvcGlvIHNpc3RlbWEgZGUgcmVnaXN0cmFyIGxvcyBwYXF1ZXRlcworZGlzcG9uaWJsZXMuCisuVFAgCitcZkJcLUFcZlAsIFxmQlwtXC1yZWNvcmRcLWF2YWlsXGZQIFxmSXBhY2thZ2VcLWZpbGVcZlAuLi4KK1VwZGF0ZSBcZkJkcGtnXGZQIGFuZCBcZkJkc2VsZWN0XGZQJ3MgaWRlYSBvZiB3aGljaCBwYWNrYWdlcyBhcmUgYXZhaWxhYmxlIHdpdGgKK2luZm9ybWF0aW9uIGZyb20gdGhlIHBhY2thZ2UgXGZJcGFja2FnZVwtZmlsZVxmUC4gSWYgXGZCXC1cLXJlY3Vyc2l2ZVxmUCBvciBcZkJcLVJcZlAKK29wdGlvbiBpcyBzcGVjaWZpZWQsIFxmSXBhY2thZ2VcLWZpbGVcZlAgbXVzdCByZWZlciB0byBhIGRpcmVjdG9yeSBpbnN0ZWFkLgorLlRQIAorXGZCXC1cLWZvcmdldFwtb2xkXC11bmF2YWlsXGZQCitcZkJPYnNvbGV0YVxmUCwgeSB1bmEgb3BjafNuIGluc2VydmlibGUgeWEgcXVlIFxmQmRwa2dcZlAgb2x2aWRhcuEgYXV0b23hdGljYW1lbnRlCitsb3MgcGFxdWV0ZXMgZGVzaW5zdGFsYWRvcyBubyBkaXNwb25pYmxlcy4KKy5UUCAKK1xmQlwtXC1jbGVhclwtYXZhaWxcZlAKK0VsaW1pbmEgbGEgaW5mb3JtYWNp824gc29icmUgcXXpIHBhcXVldGVzIGVzdOFuIGRpc3BvbmlibGVzLgorLlRQIAorIFxmQlwtQ1xmUCwgXGZCXC1cLWF1ZGl0XGZQCitCdXNjYSBwYXF1ZXRlcyBxdWUgc2UgaGF5YW4gaW5zdGFsYWRvIHBhcmNpYWxtZW50ZSBlbiBlbCBzaXN0ZW1hLiBFbAorcHJvZ3JhbWEgXGZCZHBrZ1xmUCBzdWdlcmly4SBxdekgaGFjZXIgY29uIGVsbG9zIHBhcmEgaGFjZXJsb3MgZnVuY2lvbmFyLgorLlRQIAorXGZCXC1cLWdldFwtc2VsZWN0aW9uc1xmUCBbXGZJcGF0cvNuXC1ub21icmVcLXBhcXVldGVcZlAuLi5dCitNdWVzdHJhIGxhIGxpc3RhIGRlIHNlbGVjY2lvbmVzIGRlIHBhcXVldGVzIHBvciBsYSBzYWxpZGEgZXN04W5kYXIuIERlIG5vCitpbnRyb2R1Y2lyIHVuIHBhdHLzbiBzZSBtb3N0cmFy4SBsYSBsaXN0YSBkZSBwYXF1ZXRlcyBubyBpbnN0YWxhZG9zIChlc3RvCitlcywgcHJldmlhbWVudGUgcHVyZ2Fkb3MpIC4KKy5UUCAKK1xmQlwtXC1zZXRcLXNlbGVjdGlvbnNcZlAKK1NldCBwYWNrYWdlIHNlbGVjdGlvbnMgdXNpbmcgZmlsZSByZWFkIGZyb20gc3RkaW4uIFRoaXMgZmlsZSBzaG91bGQgYmUgaW4KK3RoZSBmb3JtYXQgJ1xmSXBhY2thZ2VcZlAgXGZJc3RhdGVcZlAnLCB3aGVyZSBzdGF0ZSBpcyBvbmUgb2YgXGZCaW5zdGFsbFxmUCwgXGZCaG9sZFxmUCwKK1xmQmRlaW5zdGFsbFxmUCBvciBcZkJwdXJnZVxmUC4gQmxhbmsgbGluZXMgYW5kIGNvbW1lbnQgbGluZXMgYmVnaW5uaW5nIHdpdGggJyMnCithcmUgYWxzbyBwZXJtaXR0ZWQuCisuVFAgCitcZkJcLVwtY2xlYXJcLXNlbGVjdGlvbnNcZlAKK0RlZmluZSBlbCBlc3RhZG8gZGVzZWFkbyBkZSB0b2RvIHBhcXVldGUgbm8gZXNlbmNpYWwgcGFyYSBzdQorZGVzaW5zdGFsYWNp824uIExhIGludGVuY2nzbiBlcyB1c2FyIGVzdG8gaW5tZWRpYXRhbWVudGUgZGVzcHXpcyBkZQorq1wtXC1zZXRcLXNlbGVjdGlvbnO7LCBwYXJhIGRlc2luc3RhbGFyIHRvZG8gcGFxdWV0ZSBxdWUgbm8gZXN06SBlbiBsYSBsaXN0YQoraW50cm9kdWNpZGEgYSCrXC1cLXNldFwtc2VsZWN0aW9uc7suCisuVFAgCitcZkJcLVwteWV0XC10b1wtdW5wYWNrXGZQCitCdXNjYSBsb3MgcGFxdWV0ZXMgc2VsZWNjaW9uYWRvcyBwYXJhIHN1IGluc3RhbGFjafNuLCBwZXJvIHF1ZSBwb3IgYWxndW5hCityYXrzbiB0b2Rhdu1hIG5vIHNlIGhhbiBpbnN0YWxhZG8uCisuVFAgCisuVFAgCitcZkJcLVwtcHJpbnRcLWFyY2hpdGVjdHVyZVxmUAorTXVlc3RyYSBsYSBhcnF1aXRlY3R1cmEgZGUgbG9zIHBhcXVldGVzIHF1ZSBcZkJkcGtnXGZQIGluc3RhbGEgKHBvciBlamVtcGxvLAorq2kzODa7KS4KKy5UUCAKK1xmQlwtXC1jb21wYXJlXC12ZXJzaW9ucyBcZlBcZkl2ZXIxIG9wIHZlcjJcZlAKK0NvbXBhcmEgbG9zIG76bWVyb3MgZGUgdmVyc2nzbiwgc2llbmRvIFxmSW9wXGZQIHVuIG9wZXJhZG9yIGJpbmFyaW8uIFxmQmRwa2dcZlAKK2RldnVlbHZlIOl4aXRvIChjZXJvKSBzaSBsYSBjb25kaWNp824gZXNwZWNpZmljYWRhIHNlIGN1bXBsZSwgeSBmYWxsbyAodW4KK3Jlc3VsdGFkbyBkaXN0aW50byBkZSBjZXJvKSBlbiBjYXNvIGNvbnRyYXJpby4gSGF5IGRvcyBncnVwb3MgZGUgb3BlcmFkb3JlcworcXVlIGRpZmllcmVuIGVuIHN1IGNvbXBvcnRhbWllbnRvIGN1YW5kbyBsZXMgZmFsdGEgYWxndW5vIGRlIGxvcyBvcGVyYW5kb3MsCitcZkl2ZXIxXGZQIG8gXGZJdmVyMlxmUC4gTG9zIHByaW1lcm9zIHRyYXRhbiBsYSBmYWx0YSBkZSB2ZXJzafNuIGNvbW8gbGEgdmVyc2nzbgorbeFzIGFudGlndWEgcG9zaWJsZTogXGZCbHQgbGUgZXEgbmUgZ2UgZ3RcZlAuIExvcyBvdHJvcyB0cmF0YW4gbGEgZmFsdGEgZGUKK3ZlcnNp824gY29tbyBsYSBt4XMgbW9kZXJuYSBwb3NpYmxlOiBcZkJsdFwtbmwgbGVcLW5sIGdlXC1ubCBndFwtbmxcZlAuIMlzdG9zIHNlCitwcm9wb3JjaW9uYW4gc/NsbyBwb3IgY29tcGF0aWJpbGlkYWQgY29uIGxhIHNpbnRheGlzIGRlbCBmaWNoZXJvIGRlIGNvbnRyb2w6CitcZkI8IDw8IDw9ID0gPj0gPj4gPlxmUC4KKy5UUCAKK1xmQlwtXC1jb21tYW5kXC1mZCBcZlBcZkluXGZQCitBY2NlcHQgYSBzZXJpZXMgb2YgY29tbWFuZHMgb24gaW5wdXQgZmlsZSBkZXNjcmlwdG9yIFxmSW5cZlAuIE5vdGU6IGFkZGl0aW9uYWwKK29wdGlvbnMgc2V0IG9uIHRoZSBjb21tYW5kIGxpbmUsIGFuZCB0aHJvdWdoIHRoaXMgZmlsZSBkZXNjcmlwdG9yLCBhcmUgbm90CityZXNldCBmb3Igc3Vic2VxdWVudCBjb21tYW5kcyBleGVjdXRlZCBkdXJpbmcgdGhlIHNhbWUgcnVuLgorLlRQIAorXGZCXC1cLWhlbHBcZlAKK011ZXN0cmEgdW4gcmVzdW1lbiBkZSBsYXMgaW5zdHJ1Y2Npb25lcyBkZSB1c28uCisuVFAgCitcZkJcLVwtZm9yY2VcLWhlbHBcZlAKK011ZXN0cmEgbGEgYXl1ZGEgZGUgbGFzIG9wY2lvbmVzIFxmQlwtXC1mb3JjZVwtXGZQXGZJYWxnb1xmUC4KKy5UUCAKK1xmQlwtRGhcZlAsIFxmQlwtXC1kZWJ1Zz1oZWxwXGZQCitNdWVzdHJhIGxhIGF5dWRhIGRlIGxhcyBvcGNpb25lcyBkZSBkZXB1cmFjafNuLgorLlRQIAorXGZCXC1cLXZlcnNpb25cZlAKK011ZXN0cmEgbGEgdmVyc2nzbiBkZSBcZkJkcGtnXGZQLgorLlRQIAorXGZCZHBrZ1wtZGViIGFjdGlvbnNcZlAKK0NvbnN1bHRlIFxmQmRwa2dcLWRlYlxmUCgxKSBwYXJhIG3hcyBpbmZvcm1hY2nzbiBzb2JyZSBsYXMgc2lndWllbnRlcyBhY2Npb25lcy4KKworLm5mCitcZkJcLWJcZlAgfCBcZkJcLVwtYnVpbGRcZlAgXGZJZGlyZWN0b3Jpb1xmUCBbXGZJZmljaGVyb1xmUF0KKyAgICBDb25zdHJ1eWUgdW4gcGFxdWV0ZSBEZWJpYW4gR05VL0xpbnV4LgorXGZCXC1jXGZQIHwgXGZCXC1cLWNvbnRlbnRzXGZQIFxmSWZpY2hlcm9cZlAKKyAgICBNdWVzdHJhIGVsIGNvbnRlbmlkbyBkZSB1biBwYXF1ZXRlIERlYmlhbiBHTlUvTGludXguCitcZkJcLWVcZlAgfCBcZkJcLVwtY29udHJvbFxmUCBcZklmaWNoZXJvXGZQIFtcZklkaXJlY3RvcmlvXGZQXQorICAgIEV4dHJhZSBsYSBpbmZvcm1hY2nzbiBkZSBjb250cm9sIGRlIHVuIHBhcXVldGUuCitcZkJcLXhcZlAgfCBcZkJcLVwtZXh0cmFjdFxmUCBcZklmaWNoZXJvIGRpcmVjdG9yaW9cZlAKKyAgICBFeHRyYWUgbG9zIGZpY2hlcm9zIGNvbnRlbmlkb3MgZW4gZWwgcGFxdWV0ZS4KK1xmQlwtWFxmUCwgXGZCXC1cLXZleHRyYWN0XGZQIFxmSWFyY2hpdmUgZGlyZWN0b3J5XGZQCisgICAgRXh0cmFlIHkgbXVlc3RyYSBsb3Mgbm9tYnJlcyBkZSBmaWNoZXJvIHF1ZSB1bgorICAgIHBhcXVldGUgY29udGllbmUuCitcZkJcLWZcZlAgfCBcZkJcLVwtZmllbGRcZlAgIFxmSWZpY2hlcm9cZlAgW1xmSWNhbXBvXC1jb250cm9sXGZQXSAuLi4KKyAgICBNdWVzdHJhIGVsL2xvcyBjYW1wbyhzKSBkZSBjb250cm9sIGRlIHVuIHBhcXVldGUuCitcZkJcLVwtZnN5c1wtdGFyZmlsZVxmUCBcZklmaWNoZXJvXGZQCisgICAgTXVlc3RyYSBlbCBmaWNoZXJvIHRhciBjb250ZW5pZG8gZW4gZWwgcGFxdWV0ZSBkZWIuCitcZkJkcGtnIFwtSVxmUCB8IFxmQlwtXC1pbmZvXGZQIFxmSWZpY2hlcm9cZlAgW1xmSWZpY2hlcm9cLWNvbnRyb2xcZlBdCisgICAgTXVlc3RyYSBpbmZvcm1hY2nzbiBzb2JyZSBlbCBwYXF1ZXRlLgorLmZpCisKKy5UUCAKK1xmQmRwa2dcLXF1ZXJ5XC1hY3Rpb25zXGZQCitDb25zdWx0ZSBcZkJkcGtnXC1xdWVyeVxmUCgxKSBwYXJhIG3hcyBpbmZvcm1hY2nzbiBzb2JyZSBsYXMgc2lndWllbnRlcworYWNjaW9uZXM6CisKKy5uZgorCitcZkJcLWxcZlAgfCBcZkJcLVwtbGlzdFxmUCBcZklwYXRy825cLW5vbWJyZVwtcGFxdWV0ZVxmUCAuLi4KKyAgICBMaXN0YSBsb3MgcGFxdWV0ZXMgY3V5byBub21icmUgZW5jYWphIGVuIGVsIHBhdHLzbiBkYWRvLgorXGZCXC1zXGZQIHwgXGZCXC1cLXN0YXR1c1xmUCBcZklub21icmVcLXBhcXVldGVcZlAgLi4uCisgICAgSW5mb3JtYSBkZWwgZXN0YWRvIGRlbCBwYXF1ZXRlIGVzcGVjaWZpY2Fkby4KK1xmQlwtTFxmUCB8IFxmQlwtXC1saXN0ZmlsZXNcZlAgXGZJcGFxdWV0ZVxmUCAuLi4KKyAgICBMaXN0YSBsb3MgZmljaGVyb3MgaW5zdGFsYWRvcyBlbiBlbCBzaXN0ZW1hIHF1ZSBwZXJ0ZW5lY2VuIGEKKyAgICBcZkJwYXF1ZXRlXGZQLgorXGZCXC1TXGZQIHwgXGZCXC1cLXNlYXJjaFxmUCBcZklwYXRy825cLWL6c3F1ZWRhXC1maWNoZXJvc1xmUCAuLi4KKyAgICBCdXNjYSB1biBmaWNoZXJvIGVuIGxvcyBwYXF1ZXRlcyBpbnN0YWxhZG9zLgorXGZCXC1wXGZQIHwgXGZCXC1cLXByaW50XC1hdmFpbFxmUCBcZklwYXF1ZXRlXGZQIC4uLgorICAgIEltcHJpbWUgaW5mb3JtYWNp824gc29icmUgZWwgXGZJcGFxdWV0ZVxmUCwgZXh0cmHtZGEgZGUKKyAgICBcZkkvdmFyL2xpYi9kcGtnL2F2YWlsYWJsZVxmUC4gTG9zIHVzdWFyaW9zIGRlIGludGVyZmFjZXMgZGUgQVBUCisgICAgZGViZXLtYW4gdXNhciBcZkJhcHRcLWNhY2hlIHNob3dcZlAgXGZJcGFxdWV0ZVxmUC4KKy5maQorLgorLlNIIE9QQ0lPTkVTCitUb2RhcyBsYXMgb3BjaW9uZXMgc2UgcHVlZGVuIGRlZmluaXIgZW4gbGEgbO1uZWEgZGUg83JkZW5lcywgZW4gZWwgZmljaGVybworZGUgY29uZmlndXJhY2nzbiBkZSBcZkJkcGtnXGZQIFxmSS9ldGMvZHBrZy9kcGtnLmNmZ1xmUCB5IGVuIGVsIGRpcmVjdG9yaW8gZGUKK2NvbmZpZ3VyYWNp824gXGZJL2V0Yy9kcGtnL2Rwa2cuY2ZnLmQvXGZQLiBDYWRhIGztbmVhIGRlIGVzdGUgZmljaGVybyBlcyBiaWVuCit1bmEgb3BjafNuIChleGFjdGFtZW50ZSBsYSBtaXNtYSBxdWUgZW4gbGEgbO1uZWEgZGUg83JkZW5lcywgcGVybyBzaW4gbG9zCitndWlvbmVzIGFsIHByaW5jaXBpbykgbyBiaWVuIHVuIGNvbWVudGFyaW8gKHNpIGVtcGllemEgY29uIFxmQiNcZlApLgorLmJyCisuVFAgCitcZkJcLVwtYWJvcnRcLWFmdGVyPVxmUFxmSW76bWVyb1xmUAorTW9kaWZpY2EgY3XhbnRvcyBlcnJvcmVzIGxsZXZhbiBhIFxmQmRwa2dcZlAgYSBpbnRlcnJ1bXBpciBlbCBwcm9jZXNvLiBFbCB2YWxvcgorcG9yIG9taXNp824gZXMgNTAuCisuVFAgCitcZkJcLUJcZlAsIFxmQlwtXC1hdXRvXC1kZWNvbmZpZ3VyZVxmUAorQWwgZWxpbWluYXIgdW4gcGFxdWV0ZSBwdWVkZSBxdWUgb3RybyBkZXBlbmRhIGRlIOlsLiBEZWZpbmlyIGVzdGEgb3BjafNuCitwcm9kdWNpcuEgbGEgZGVzY29uZmlndXJhY2nzbiBhdXRvbeF0aWNhIGRlbCBwYXF1ZXRlIHF1ZSBkZXBlbmTtYSBkZWwKK3BhcXVldGUgZWxpbWluYWRvLgorLlRQIAorXGZCXC1EXGZQXGZJb2N0YWxcZlBcZkIsIFwtXC1kZWJ1Zz1cZlBcZklvY3RhbFxmUAorQWN0aXZhIGVsIG1vZG8gZGUgZGVwdXJhY2nzbi4gRWwgcGFy4W1ldHJvIFxmSW9jdGFsXGZQIHNlIGZvcm1hIHVuaWVuZG8gbG9zCit2YWxvcmVzIGRlIGxhIHNpZ3VpZW50ZSBsaXN0YSBtZWRpYW50ZSBsYSBvcGVyYWNp824gXGZJb3JcZlAgYSBuaXZlbCBkZSBiaXRzCisodGVuZ2EgZW4gY3VlbnRhIHF1ZSBlc3RvcyB2YWxvcmVzIHBvZHLtYW4gY2FtYmlhciBlbiBmdXR1cmFzCit2ZXJzaW9uZXMpLiBcZkJcLURoXGZQIG8gXGZCXC1cLWRlYnVnPWhlbHBcZlAgbXVlc3RyYW4gZXN0b3MgdmFsb3Jlcy4KKworICAgIE51bWJlciAgIERlc2NyaXB0aW9uCisgICAgICAgICAxICAgR2VuZXJhbGx5IGhlbHBmdWwgcHJvZ3Jlc3MgaW5mb3JtYXRpb24KKyAgICAgICAgIDIgICBJbnZvY2F0aW9uIGFuZCBzdGF0dXMgb2YgbWFpbnRhaW5lciBzY3JpcHRzCisgICAgICAgIDEwICAgT3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkCisgICAgICAgMTAwICAgTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWQKKyAgICAgICAgMjAgICBPdXRwdXQgZm9yIGVhY2ggY29uZmlndXJhdGlvbiBmaWxlCisgICAgICAgMjAwICAgTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggY29uZmlndXJhdGlvbiBmaWxlCisgICAgICAgIDQwICAgRGVwZW5kZW5jaWVzIGFuZCBjb25mbGljdHMKKyAgICAgICA0MDAgICBMb3RzIG9mIGRlcGVuZGVuY2llcy9jb25mbGljdHMgb3V0cHV0CisgICAgIDEwMDAwICAgVHJpZ2dlciBhY3RpdmF0aW9uIGFuZCBwcm9jZXNzaW5nCisgICAgIDIwMDAwICAgTG90cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzCisgICAgIDQwMDAwICAgU2lsbHkgYW1vdW50cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzCisgICAgICAxMDAwICAgTG90cyBvZiBkcml2ZWwgYWJvdXQgZS5nLiB0aGUgZHBrZy9pbmZvIGRpcgorICAgICAgMjAwMCAgIEluc2FuZSBhbW91bnRzIG9mIGRyaXZlbAorLlRQIAorXGZCXC1cLWZvcmNlXC1cZlBcZkljb3Nhc1xmUCwgXGZCXC1cLW5vXC1mb3JjZVwtXGZQXGZJY29zYXNcZlAsIFxmQlwtXC1yZWZ1c2VcLVxmUFxmSWNvc2FzXGZQCisKK0Z1ZXJ6YSBvIHJlY2hhemEgKFxmQm5vXC1mb3JjZVxmUCB5IFxmQnJlZnVzZVxmUCBzaWduaWZpY2FuIGxvIG1pc21vKSBoYWNlciBjaWVydGFzCitjb3Nhcy4gRWwgcGFy4W1ldHJvIFxmSWNvc2FzXGZQIGVzIHVuYSBsaXN0YSBkZSBjb3NhcyBkZWZpbmlkYXMgYSBjb250aW51YWNp824KK3kgc2VwYXJhZGFzIHBvciBjb21hcy4gTGEgb3BjafNuIFxmQlwtXC1mb3JjZVwtaGVscFxmUCBtdWVzdHJhIHVuIG1lbnNhamUgcXVlIGxhcworZGVzY3JpYmUuIExhcyBjb3NhcyBtYXJjYWRhcyBjb24gKCopIHNlIGZ1ZXJ6YW4gcG9yIG9taXNp824uCisKK1xmSUF2aXNvOiBFc3RhcyBvcGNpb25lcyBlc3ThbiBwZW5zYWRhcyBi4XNpY2FtZW50ZSBwYXJhIHVuIHVzbworZXhwZXJ0by4gVXNhcmxhcyBzaW4gY29ub2NlciB0b3RhbG1lbnRlIHN1cyBlZmVjdG9zIHBvZHLtYSBkZWphciBzdSBzaXN0ZW1hCitzaW4gZnVuY2lvbmFtaWVudG8uXGZQCisKK1xmQmFsbFxmUDogQWN0aXZhIChvIGRlc2FjdGl2YSkgdG9kYXMgbGFzIG9wY2lvbmVzIGRlIGZvcnphci4KKworXGZCZG93bmdyYWRlXGZQKCopOiBJbnN0YWxhIHVuIHBhcXVldGUsIGluY2x1c28gc2kgeWEgZXhpc3RlIHVuYSB2ZXJzafNuIG3hcworbnVldmEgaW5zdGFsYWRhLgorCitcZklBdmlzbzogYWN0dWFsbWVudGUgZHBrZyBubyBjb21wcnVlYmEgZGUgbmluZ3VuYSBtYW5lcmEgbGFzIGRlcGVuZGVuY2lhcyBhbAorZGVzYWN0dWFsaXphciB5IHBvciBsbyB0YW50byBubyBhdmlzYXLhIHNpIHJvbXBlIGFsZ3VuYSBkZXBlbmRlbmNpYSBkZSBvdHJvCitwYXF1ZXRlLiBVbmEgc2l0dWFjafNuIGFz7SBwb2Ry7WEgdGVuZXIgZWZlY3RvcyBzZWN1bmRhcmlvcyBncmF2ZXM7CitkZXNhY3R1YWxpemFyIGNvbXBvbmVudGVzIGVzZW5jaWFsZXMgZGVsIHNpc3RlbWEgaW5jbHVzbyBwb2Ry7WEgaW51dGlsaXphcgorc3Ugc2lzdGVtYSBwb3IgY29tcGxldG8uINpzZWxvIGNvbiBjdWlkYWRvLlxmUAorCitcZkJjb25maWd1cmVcLWFueVxmUDogQ29uZmlndXJhIHRhbWJp6W4gbG9zIHBhcXVldGVzIGRlc2VtcGFxdWV0YWRvcyBwZXJvIG5vCitjb25maWd1cmFkb3Mgc29icmUgbG9zIHF1ZSBkZXBlbmRlIGVsIHBhcXVldGUuCisKK1xmQmhvbGRcZlA6IFByb2Nlc2EgbG9zIHBhcXVldGVzIGluY2x1c28gc2kgZXN04W4gbWFyY2Fkb3MgY29uIKtob2xkuworKHJldGVuZXIpLgorCitcZkJyZW1vdmVcLXJlaW5zdHJlcVxmUDogRWxpbWluYSB1biBwYXF1ZXRlIGluY2x1c28gc2kgZXN04SByb3RvIHkgbWFyY2FkbyBwYXJhCit1bmEgbmVjZXNhcmlhIHJlaW5zdGFsYWNp824uIEVzdG8gcG9kcu1hIGNhdXNhciwgcG9yIGVqZW1wbG8sIHF1ZSBhbGd1bmFzCitwYXJ0ZXMgZGVsIHBhcXVldGUgcXVlZGFzZW4gZW4gZWwgc2lzdGVtYSwgZGUgbGFzIHF1ZSBcZkJkcGtnXGZQIHNlIG9sdmlkYXLtYS4KKworXGZCcmVtb3ZlXC1lc3NlbnRpYWxcZlA6IEVsaW1pbmEsIGluY2x1c28gc2kgZWwgcGFxdWV0ZSBzZSBjb25zaWRlcmEKK2VzZW5jaWFsLiBMb3MgcGFxdWV0ZXMgZXNlbmNpYWxlcyBjb250aWVuZW4gcHJpbmNpcGFsbWVudGUg83JkZW5lcyBkZSBVbml4CittdXkgYuFzaWNhcy4gQm9ycmFybG9zIHBvZHLtYSBoYWNlciBxdWUgZWwgc2lzdGVtYSBkZWphc2UgZGUgZnVuY2lvbmFyIGVuCithYnNvbHV0byBhc+0gcXVlIHVzZSBlc3RhIG9wY2nzbiBjb24gY3VpZGFkby4KKworXGZCZGVwZW5kc1xmUDogQ29udmllcnRlIHRvZG9zIGxvcyBwcm9ibGVtYXMgZGUgZGVwZW5kZW5jaWFzIGVuIGF2aXNvcy4KKworXGZCZGVwZW5kc1wtdmVyc2lvblxmUDogTm8gdGllbmUgZW4gY3VlbnRhIGxhcyB2ZXJzaW9uZXMgYWwgY29tcHJvYmFyIGxhcworZGVwZW5kZW5jaWFzLgorCitcZkJicmVha3NcZlA6IEluc3RhbGEsIGF1bnF1ZSBzdXBvbmdhIHJvbXBlciBvdHJvIHBhcXVldGUuCisKK1xmQmNvbmZsaWN0c1xmUDogSW5zdGFsYSwgaW5jbHVzbyBzaSBlbnRyYSBlbiBjb25mbGljdG8gY29uIG90cm8gcGFxdWV0ZS4gRXN0YQorb3BjafNuIGVzIHBlbGlncm9zYSBkYWRvIHF1ZSBnZW5lcmFsbWVudGUgc29icmVlc2NyaWJpcuEgYWxndW5vcyBmaWNoZXJvcy4KKworXGZCY29uZm1pc3NcZlA6IEluc3RhbGEgc2llbXByZSB1biBmaWNoZXJvIGRlIGNvbmZpZ3VyYWNp824gq2NvbmZmaWxluywgZGUgbm8KK2V4aXN0aXIuIEVzIHBlbGlncm9zbyBwb3JxdWUgbm8gZ3VhcmRhIGxvcyBjYW1iaW9zIChsYSBlbGltaW5hY2nzbikgaGVjaG9zCithbCBmaWNoZXJvLgorCitcZkJjb25mbmV3XGZQOiBTaSBzZSBoYSBtb2RpZmljYWRvIHVuIGZpY2hlcm8gZGUgY29uZmlndXJhY2nzbiCrY29uZmZpbGW7CitpbnN0YWxhIHNpZW1wcmUgbGEgbnVldmEgdmVyc2nzbiBzaW4gcHJlZ3VudGFyLCBhIG1lbm9zIHF1ZSBzZSBkZWZpbmEKK3RhbWJp6W4gbGEgb3BjafNuIFxmQlwtXC1mb3JjZVwtY29uZmRlZlxmUCwgZW4gY3V5byBjYXNvIHNlIHRvbWEgbGEgYWNjafNuCitwcmVkZWZpbmlkYS4KKworXGZCY29uZm9sZFxmUDogU2kgc2UgaGEgbW9kaWZpY2FkbyB1biBmaWNoZXJvIGRlIGNvbmZpZ3VyYWNp824gq2NvbmZmaWxluywKK21hbnRlbmVyIHNpZW1wcmUgbGEgdmVyc2nzbiBleGlzdGVudGUgc2luIHByZWd1bnRhciwgYSBtZW5vcyBxdWUgdGFtYmnpbiBzZQorZGVmaW5hIGxhIG9wY2nzbiBcZkJcLVwtZm9yY2VcLWNvbmZkZWZcZlAsIGVuIGN1eW8gY2FzbyBzZSB0b21hIGxhIGFjY2nzbgorcHJlZGVmaW5pZGEuCisKK1xmQmNvbmZkZWZcZlA6IFNpIHNlIGhhIG1vZGlmaWNhZG8gdW4gZmljaGVybyBkZSBjb25maWd1cmFjafNuIKtjb25mZmlsZbssCitlbGVnaXIgc2llbXByZSBsYSBvcGNp824gcHJlZGVmaW5pZGEuIFNpIG5vIGV4aXN0ZSBzZSBkZXRlbmRy4SB5IHByZWd1bnRhcuEKK2FsIHVzdWFyaW8sIGEgbm8gc2VyIHF1ZSBzZSB1c2VuIHRhbWJp6W4gbGFzIG9wY2lvbmVzIFxmQlwtXC1mb3JjZVwtY29uZm5ld1xmUCBvCitcZkJcLVwtZm9yY2VcLWNvbmZvbGRcZlAsIGVuIGN1eW8gY2FzbyBzZSB1c2Fy4SB1bmEgZGUgZXN0YXMgb3BjaW9uZXMgcGFyYSB0b21hcgorbGEgZGVjaXNp824gZmluYWwuCisKK1xmQmNvbmZkZWZcZlA6IFNpIHNlIGhhIG1vZGlmaWNhZG8gdW4gZmljaGVybyBkZSBjb25maWd1cmFjafNuIKtjb25mZmlsZbssCitvZnJlY2Ugc2llbXByZSByZWVtcGxhemFyIGVzdGUgY29uIGxhIHZlcnNp824gZW4gZWwgcGFxdWV0ZSBpbmNsdXNvIHNpIGxhCit2ZXJzafNuIGRlbCBwYXF1ZXRlIG5vIGhhIGNhbWJpYWRvLiBTaSBzZSBpbnRyb2R1Y2UgY3VhbHF1aWVyYSBkZSBsYXMKK29wY2lvbmVzIFxmQlwtXC1mb3JjZVwtY29uZm5ld1xmUCBvIFxmQlwtXC1mb3JjZVwtY29uZm9sZFxmUCBvIFxmQlwtXC1mb3JjZVwtY29uZmRlZlxmUCwgc2UKK3VzYXLhIGVzdGEgcGFyYSB0b21hciBsYSBkZWNpc2nzbiBmaW5hbC4KKworXGZCb3ZlcndyaXRlXGZQOiBTb2JyZWVzY3JpYmUgdW4gZmljaGVybyBkZSB1biBwYXF1ZXRlIGNvbiB1biBmaWNoZXJvIGRlIG90cm8uCisKK1xmQm92ZXJ3cml0ZVwtZGlyXGZQOiBTb2JyZWVzY3JpYmUgdW4gZGlyZWN0b3JpbyBkZSB1biBwYXF1ZXRlIGNvbiB1biBmaWNoZXJvIGRlCitvdHJvLgorCitcZkJvdmVyd3JpdGVcLWRpdmVydGVkXGZQOiBTb2JyZWVzY3JpYmUgdW5hIHZlcnNp824gZGVzdmlhZGEgZGUgdW4gZmljaGVybyBjb24KK3VuYSBubyBkZXN2aWFkYS4KKworXGZCdW5zYWZlXC1pb1xmUDogTm8gcmVhbGl6YSBsYXMgb3BlcmFjaW9uZXMgSS9PIHNlZ3VyYXMgYWwKK2Rlc2VtcGFxdWV0YXIuIEFjdHVhbG1lbnRlLCBpbXBsaWNhIHF1ZSBubyBzZSByZWFsaXphIGxhIHNpbmNyb25pemFjafNuIGRlbAorc2lzdGVtYSBkZSBmaWNoZXJvcyBhbnRlcyBkZSByZW5vbWJyYXIgdW4gZmljaGVybywgbG8gY3VhbCBjYXVzYSB1bmEKK2FwcmVjaWFibGUgZGVncmFkYWNp824gZGVsIHJlbmRpbWllbnRvIGVuIGFsZ3Vub3Mgc2lzdGVtYXMgZGUKK2ZpY2hlcm8uIERlc2Fmb3J0dW5hZGFtZW50ZSwgbG9zIHF1ZSByZXF1aWVyZW4gSS9PIHNlZ3VyYSBwYXJhIGVtcGV6YXIgZW4KK3ByaW1lciBsdWdhciBkZWJpZG8gYSBzdSBjb21wb3J0YW1pZW50byBpcnJlZ3VsYXIgY2F1c2FuIGZpY2hlcm9zIGRlIHRhbWHxbworY2VybyBlbiBmYWxsb3Mgc2V2ZXJvcyBkZWwgc2lzdGVtYS4KKworXGZJTm90ZVxmUDogUGFyYSBleHQ0LCBlbCBzaXN0ZW1hIGNvbiBt4XMgcHJvYmxlbWFzIGRlIGVzdGUgc2VudGlkbywgY29uc2lkZXJlCit1c2FyIGxhIG9wY2nzbiBkZSBtb250YWplIFxmQm5vZGVsYWxsb2NcZlAsIGxvIHF1ZSBhcnJlZ2xhIGxhIGRlZ3JhZGFjafNuIGRlbAorcmVuZGltaWVudG8geSBsb3MgcHJvYmxlbWFzIGRlIHNlZ3VyaWRhZCBkZSBkYXRvcy4gTG8g+mx0aW1vIGxvIHNvbHVjaW9uYQoraGFjaWVuZG8gcXVlIGVsIHNpc3RlbWEgZGUgZmljaGVyb3Mgbm8gcHJvZHV6Y2EgZmljaGVyb3MgZGUgdGFtYfFvIGNlcm8KK2R1cmFudGUgZmFsbG9zIHNldmVyb3MgZGVsIHNpc3RlbWEgY29uIGN1YWxxdWllciBzb2Z0d2FyZSBxdWUgbm8gcmVhbGl6YSB1bmEKK3NpbmNyb25pemFjafNuIGFudGVzIGRlIGxvcyByZW5vbWJyZXMgYXTzbWljb3MuCisKK1xmSUFkdmVydGVuY2lhOiBVc2FyIGVzdGEgb3BjafNuIHB1ZWRlIGF1bWVudGFyIGVsIHJlbmRpbWllbnRvIGEgY29zdGEgZGUgbGEKK3DpcmRpZGEgZGUgZGF0b3MuINpzZWxvIGNvbiBjdWlkYWRvLlxmUAorCitcZkJhcmNoaXRlY3R1cmVcZlA6IFByb2Nlc3MgZXZlbiBwYWNrYWdlcyB3aXRoIHdyb25nIG9yIG5vIGFyY2hpdGVjdHVyZS4KKworXGZCYmFkXC12ZXJzaW9uXGZQOiBQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyB2ZXJzaW9ucy4KKworXGZCYmFkXC1wYXRoXGZQOiBcZkJQQVRIXGZQIG5vIGNvbnRpZW5lIGFsZ3Vub3MgcHJvZ3JhbWFzIGltcG9ydGFudGVzLCBhc+0gcXVlIGVzCitiYXN0YW50ZSBwb3NpYmxlIHF1ZSBoYXlhIHByb2JsZW1hcy4KKworXGZCbm90XC1yb290XGZQOiBJbnRlbnRhIGxhIChkZXMpaW5zdGFsYWNp824gaW5jbHVzbyBzaSBubyBlcyBlbCB1c3VhcmlvIKtyb290uy4KKworXGZCYmFkXC12ZXJpZnlcZlA6IEluc3RhbGEgdW4gcGFxdWV0ZSBhdW5xdWUgZmFsbGUgbGEgY29tcHJvYmFjafNuIGRlCithdXRlbnRpY2lkYWQuCisKKy5UUCAKK1xmQlwtXC1pZ25vcmVcLWRlcGVuZHNcZlA9XGZJcGFxdWV0ZVxmUCwuLi4KK0lnbm9yYSBsYSBjb21wcm9iYWNp824gZGUgZGVwZW5kZW5jaWFzIHBhcmEgbG9zIHBhcXVldGVzIGRlZmluaWRvcyAoZW4KK3JlYWxpZGFkLCBzZSBoYWNlbiBsYXMgY29tcHJvYmFjaW9uZXMgcGVybyBzZSBpbXByaW1lbiBhdmlzb3MgZW4gdmV6IGRlCitpbnRlcnJ1bXBpciBlbCBwcm9jZXNvKS4KKy5UUCAKK1xmQlwtXC1ub1wtYWN0XGZQLCBcZkJcLVwtZHJ5XC1ydW5cZlAsIFxmQlwtXC1zaW11bGF0ZVxmUAorSGFjZSB0b2RvIGxvIHF1ZSBzZSBzdXBvbmUgcXVlIGRlYmUgaGFjZXIsIHBlcm8gbm8gcmVhbGl6YSBuaW5n+m4gY2FtYmlvLiBTZQordXRpbGl6YSBwYXJhIHZlciBxdekgb2N1cnJpcu1hIGNvbiBsYXMgb3BjaW9uZXMgc2VsZWNjaW9uYWRhcyBzaW4gcmVhbGl6YXIKK2NhbWJpb3MgcmVhbGVzLgorCitBc2Vn+nJlc2UgZGUgaW50cm9kdWNpciBsYSBvcGNp824gXGZCXC1cLW5vXC1hY3RcZlAgYW50ZXMgZGVsIHBhcuFtZXRybyBkZSBhY2Np824sCitvIHBvZHLtYSBhY2FiYXIgY29uIHJlc3VsdGFkb3Mgbm8gZGVzZWFkb3MuIChQb3IgZWplbXBsbzogXGZCZHBrZyBcLVwtcHVyZ2UgZm9vCitcLVwtbm9cLWFjdFxmUCBwdXJnYXLhIHByaW1lcm8gZWwgcGFxdWV0ZSBmb28geSBsdWVnbyBpbnRlbnRhcuEgcHVyZ2FyIGVsIHBhcXVldGUKK1wtXC1ub1wtYWN0LCChYXVucXVlIHByb2JhYmxlbWVudGUgdXN0ZWQgZXNwZXJhYmEgcXVlIG5vIGhpY2llcmEgbmFkYSEpLgorLlRQIAorXGZCXC1SXGZQLCBcZkJcLVwtcmVjdXJzaXZlXGZQCitBY3T6YSByZWN1cnNpdmFtZW50ZSBzb2JyZSB0b2RvcyBsb3MgZmljaGVyb3MgcXVlIGNvaW5jaWRhbiBjb24gZWwgcGF0cvNuCitcZkIqLmRlYlxmUCBxdWUgc2UgZW5jdWVudHJlbiBlbiBlbCBkaXJlY3RvcmlvIGRlZmluaWRvLCB5IHRhbWJp6W4gdG9kb3Mgc3VzCitzdWJkaXJlY3Rvcmlvcy4gU2UgcHVlZGUgdXNhciBjb24gbGFzIG9wY2lvbmVzIFxmQlwtaVxmUCwgXGZCXC1BXGZQLCBcZkJcLVwtaW5zdGFsbFxmUCwKK1xmQlwtXC11bnBhY2tcZlAgeSBcZkJcLVwtYXZhaWxcZlAuCisuVFAgCitcZkJcLUdcZlAKK05vIGluc3RhbGEgdW4gcGFxdWV0ZSBkZWwgcXVlIHlhIGV4aXN0ZSB1bmEgdmVyc2nzbiBt4XMgbnVldmEgZW4gZWwKK3Npc3RlbWEuIEVzIHVuIGFsaWFzIGRlIFxmQlwtXC1yZWZ1c2VcLWRvd25ncmFkZVxmUC4KKy5UUCAKK1xmQlwtXC1hZG1pbmRpcj1cZlBcZklkaXJlY3RvcmlvXGZQCitDYW1iaWEgZWwgZGlyZWN0b3JpbyBkZSBhZG1pbmlzdHJhY2nzbiBwcmVkZWZpbmlkby4gyXN0ZSBjb250aWVuZSBtdWNob3MKK2ZpY2hlcm9zIHF1ZSBvZnJlY2VuIGluZm9ybWFjafNuIHJlbGF0aXZhIGFsIGVzdGFkbyBkZSBwYXF1ZXRlcyBpbnN0YWxhZG9zIG8KK25vIGluc3RhbGFkb3MsIGV0Yy4gKFBvciBvbWlzafNuLCBcZkkvdmFyL2xpYi9kcGtnXGZQKS4KKy5UUCAKK1xmQlwtXC1pbnN0ZGlyPVxmUFxmSWRpcmVjdG9yaW9cZlAKK0NhbWJpYSBlbCBkaXJlY3RvcmlvIGRlIGluc3RhbGFjafNuIHByZWRlZmluaWRvLCBsYSB1YmljYWNp824gZW4gbGEgcXVlIHNlCitpbnN0YWxhcuFuIGxvcyBwYXF1ZXRlcy4gXGZCaW5zdGRpclxmUCBlcyB0YW1iaeluIGVsIGRpcmVjdG9yaW8gaW50cm9kdWNpZG8gYQorXGZCY2hyb290XGZQKDIpIGFudGVzIGRlIGVqZWN1dGFyIGxvcyBzY3JpcHRzIGRlIGluc3RhbGFjafNuIGRlbCBwYXF1ZXRlLCBsbworcXVlIHNpZ25pZmljYSBxdWUg6XN0b3MgdmVy4W4gXGZCaW5zdGRpclxmUCBjb21vIGRpcmVjdG9yaW8gcmHtei4gKFBvciBvbWlzafNuLAorXGZJL1xmUCkuCisuVFAgCitcZkJcLVwtcm9vdD1cZlBcZklkaXJlY3RvcmlvXGZQCitDYW1iaWFyIFxmQnJvb3RcZlAgZGEgZWwgdmFsb3IgZGUgXGZJZGlyZWN0b3Jpb1xmUCBhIFxmQmluc3RkaXJcZlAsIHkgZWwgdmFsb3IKK1xmSWRpclxmUFxmQi92YXIvbGliL2Rwa2dcZlAgYSBcZkJhZG1pbmRpclxmUC4KKy5UUCAKK1xmQlwtT1xmUCwgXGZCXC1cLXNlbGVjdGVkXC1vbmx5XGZQCitQcm9jZXNhIHPzbG8gbG9zIHBhcXVldGVzIHNlbGVjY2lvbmFkb3MgcGFyYSBzdSBpbnN0YWxhY2nzbi4gTGEgbWFyY2EgZW4gc+0KK2xhIGhhY2VuIFxmQmRzZWxlY3RcZlAgbyBcZkJkcGtnXGZQIGFsIG1hbmlwdWxhciBwYXF1ZXRlcy4gUG9yIGVqZW1wbG8sIHNpIHNlCitib3JyYSB1bm8sIOlzdGUgc2UgbWFyY2Fy4SBwYXJhIHN1IGRlc2luc3RhbGFjafNuLgorLlRQIAorXGZCXC1FXGZQLCBcZkJcLVwtc2tpcFwtc2FtZVwtdmVyc2lvblxmUAorRXZpdGEgbGEgaW5zdGFsYWNp824gZGUgdW4gcGFxdWV0ZSBzaSB0aWVuZSBsYSBtaXNtYSB2ZXJzafNuIHF1ZSBsYSB5YQoraW5zdGFsYWRhLgorLlAKK1xmQlwtXC1wcmVcLWludm9rZT1cZlBcZklvcmRlblxmUAorLmJyCitcZkJcLVwtcG9zdFwtaW52b2tlPVxmUFxmSW9yZGVuXGZQCisuUlMKK0RlZmluZSB1bmEgXGZJb3JkZW5cZlAgq2hvb2u7IHF1ZSBzZSBpbnZvY2Fy4SBtZWRpYW50ZSCrc2ggXC1juyBhbnRlcyBvIGRlc3B16XMKK2RlIHF1ZSBkcGtnIGVqZWN1dGUgdW5hIGFjY2nzbiBcZkl1bnBhY2tcZlAsIFxmSWNvbmZpZ3VyZVxmUCwgXGZJaW5zdGFsbFxmUCwKK1xmSXRyaWdnZXJzXC1vbmx5XGZQLCBcZklyZW1vdmVcZlAgbyBcZklwdXJnZVxmUC4gUHVlZGUgZGVmaW5pciBlc3RhIG9wY2nzbiB2YXJpYXMKK3ZlY2VzLiBTZSByZXNwZXRhIGVsIG9yZGVuIGRlIGFwYXJpY2nzbiBkZSBsYXMgb3BjaW9uZXMsIGNvbiBwcmVmZXJlbmNpYSBkZQorbGFzIHByZXNlbnRlcyBlbiBsb3MgZmljaGVyb3MgZGUgY29uZmlndXJhY2nzbi4gTGEgdmFyaWFibGUgZGUgZW50b3JubworXGZCRFBLR19IT09LX0FDVElPTlxmUCBkZWZpbmUgbG9zIKtob29rc7sgYSBsYSBhY2Np824gZGUgZHBrZyBhY3R1YWwuTm90YToKK3B1ZWRlIHF1ZSBsYXMgaW50ZXJmYWNlcyBlamVjdXRlbiBkcGtnIHZhcmlhcyB2ZWNlcyBlbiBjYWRhIGludm9jYWNp824sIGxvCitjdWFsIHB1ZWRlIGVqZWN1dGFyIG3hcyDzcmRlbmVzIGVuY2FkZW5hZGFzIHF1ZSBsYXMgZXNwZXJhZGFzLgorLlJFCisuUAorXGZCXC1cLXBhdGhcLWV4Y2x1ZGU9XGZQXGZJY29tb2TtblxmUAorLmJyCitcZkJcLVwtcGF0aFwtaW5jbHVkZT1cZlBcZkljb21vZO1uXGZQCisuUlMKK0RlZmluZSBcZkljb21vZO1uXGZQICirZ2xvYiBwYXR0ZXJuuykgY29tbyB1biBmaWx0cm8gZGUgcnV0YSwgYmllbiBleGNsdXllbmRvIG8KK2luY2x1eWVuZG8gb3RyYSB2ZXogcnV0YXMgYW50ZXJpb3JtZW50ZSBleGNsdWlkYXMgcXVlIGVuY2FqYW4gY29uIGxvcworcGF0cm9uZXMgZGVmaW5pZG9zIGR1cmFudGUgbGEgaW5zdGFsYWNp824uCisKK1xmSUF2aXNvOiB0ZW5nYSBlbiBjdWVudGEgcXVlIGRlcGVuZGVuZGllbmRvIGRlIGxhcyBydXRhcyBxdWUgZXhjbHV5YSwgcHVlZGUKK2RlamFyIHN1IHNpc3RlbWEgaW51dGlsaXphYmxlLCD6c2VsbyBjb24gcHJlY3VhY2nzbi5cZlAKKworTG9zIHBhdHJvbmVzIGRlIGNvbW9k7W4gKKtnbG9iuykgdXNhbiBsb3MgbWlzbW9zIGNvbW9kaW5lcyBxdWUgZWwgaW506XJwcmV0ZQorZGUg83JkZW5lcywgZG9uZGUgqyq7IGVuY2FqYSBjb24gY3VhbHF1aWVyIGNhZGVuYSBkZSBjYXJhY3RlcmVzLCBpbmNsdXllbmRvCit1bmEgY2FkZW5hIHZhY+1hIHkgqy+7LiBQb3IgZWplbXBsbywgXGZJJy91c3IvKi9SRUFEKidcZlAgZW5jYWphIGNvbgorXCZcZkknL3Vzci9zaGFyZS9kb2MvcGFja2FnZS9SRUFETUUnXGZQLiBDb21vIGVzIGhhYml0dWFsLCCrP7sgZW5jYWphIGN1YWxxdWllcgorY2Fy4WN0ZXIg+m5pY28gKHVuYSB2ZXogbeFzLCBpbmNsdXllbmRvIKsvuykuIFkgq1u7IGluaWNpYSB1bmEgY2xhc2UKKyirY2xhc3O7KSBkZSBjYXLhY3RlciwgcXVlIHB1ZWRlIGNvbnRlbmVyIHVuYSBsaXN0YSBkZSBjYXJhY3RlcmVzLCByYW5nb3MgeQorY29tcGxlbWVudGFjaW9uZXMuIENvbnN1bHRlIFxmQmdsb2JcZlAoNykgcGFyYSBt4XMgaW5mb3JtYWNp824gYWNlcmNhIGRlbCB1c28KK2RlIGNvbW9kaW5lcy4gTm90YTogcHVlZGUgcXVlIGxhIGltcGxlbWVudGFjafNuIGFjdHVhbCBpbmNsdXlhIG90cmEgdmV6IG3hcworZGlyZWN0b3Jpb3MgeSBlbmxhY2VzIHNpbWLzbGljb3MgcXVlIGxvcyBuZWNlc2FyaW9zLiBQdWVkZSBxdWUgdW4gZGVzYXJyb2xsbworZW4gZWwgZnV0dXJvIGFycmVnbGUgZXN0byBwYXJhIGVzdGFyIG3hcyBzZWd1cm9zIHkgZXZpdGFyIHVuIHBvc2libGUgZXJyb3IKK2RlIGRlc2VtcGFxdWV0YWRvLgorCitQdWVkZSB1c2FyIGVzdG8gcGFyYSBlbGltaW5hciB0b2RhcyBsYXMgcnV0YXMgYSBleGNlcGNp824gZGUgYWxndW5hcyBlbgorcGFydGljdWxhcjsgdW4gdO1waWNvIHVzbyBlczoKKworLm5mCitcZkJcLVwtcGF0aFwtZXhjbHVkZT0vdXNyL3NoYXJlL2RvYy8qXGZQCitcZkJcLVwtcGF0aFwtaW5jbHVkZT0vdXNyL3NoYXJlL2RvYy8qL2NvcHlyaWdodFxmUAorLmZpCisKK3BhcmEgZWxpbWluYXIgdG9kb3MgbG9zIGZpY2hlcm9zIGRlIGRvY3VtZW50YWNp824gYSBleGNlcGNp824gZGUgbG9zCitmaWNoZXJvcyBkZSBkZXJlY2hvcyBkZSBhdXRvci4KKworRXN0YXMgZG9zIG9wY2lvbmVzIHNlIHB1ZWRlbiBkZWZpbmlyIHZhcmlhcyB2ZWNlcywgeSBzZSBwdWVkZW4KK2ludGVycG9sYXIuIEFtYm9zIHNlIHByb2Nlc2FuIGVuIGVsIG9yZGVuIGRhZG8sIHkgbGEg+mx0aW1hIHJlZ2xhIHF1ZSBlbmNhamEKK2NvbiB1biBub21icmUgZGUgZmljaGVybyByZWFsaXphIGxhIGRlY2lzafNuLgorLlJFCisuVFAgCitcZkJcLVwtc3RhdHVzXC1mZCBcZlBcZkluXGZQCitFbnbtYSBsYSBpbmZvcm1hY2nzbiBkZWwgZXN0YWRvIGRlbCBwYXF1ZXRlIGUgaW5mb3JtYWNp824gZGUgcHJvZ3Jlc28gZW4KK2Zvcm1hdG8gbeFxdWluYSBhbCBkZXNjcmlwdG9yIGRlIGZpY2hlcm8gXGZJblxmUC4gUHVlZGUgaW50cm9kdWNpciBlc3RhIG9wY2nzbgordmFyaWFzIHZlY2VzLiBMYSBpbmZvcm1hY2nzbiBhcGFyZWNlIGhhYml0dWFsbWVudGUgY29uIHVuIHJlZ2lzdHJvIHBvcgorbO1uZWEsIGVuIHVuYSBkZSBsYXMgc2lndWllbnRlcyBmb3JtYXMuCisuUlMKKy5UUCAKK1xmQnN0YXR1czogXGZQXGZJcGFxdWV0ZVxmUFxmQjogXGZQXGZJZXN0YWRvXGZQCitFbCBlc3RhZG8gZGVsIHBhcXVldGUgaGEgY2FtYmlhZG87IGVsIFxmSWVzdGFkb1xmUCBlcyBlbCBxdWUgYXBhcmVjZSBlbiBlbAorZmljaGVybyBkZSBlc3RhZG8uCisuVFAgCitcZkJzdGF0dXM6IFxmUFxmSXBhcXVldGVcZlBcZkIgOiBlcnJvciA6IFxmUFxmSW1lbnNhamVcLWRlXC1mYWxsb1wtZGV0YWxsYWRvXGZQCitBbiBlcnJvciBvY2N1cnJlZC4gQW55IHBvc3NpYmxlIG5ld2xpbmVzIGluIFxmSWV4dGVuZGVkXC1lcnJvclwtbWVzc2FnZVxmUCB3aWxsCitiZSBjb252ZXJ0ZWQgdG8gc3BhY2VzIGJlZm9yZSBvdXRwdXQuCisuVFAgCitcZkJzdGF0dXM6IFxmUFxmSWZpY2hlcm9cZlBcZkIgOiBjb25mZmlsZVwtcHJvbXB0IDogJ1xmUFxmSXJlYWxcLW9sZFxmUFxmQicgJ1xmUFxmSXJlYWxcLW5ld1xmUFxmQicgXGZQXGZJZWRpY2nzblwtdXN1YXJpb1xmUFxmQiBcZlBcZkllZGljafNuXC1kaXN0cmlidWNp825cZlAKK0VsIHVzdWFyaW8gdGllbmUgcXVlIHJlc3BvbmRlciBhIHVuYSBwcmVndW50YSBkZSB1biBmaWNoZXJvIGRlIGNvbmZpZ3VyYWNp824KK6tjb25mZmlsZbsuCisuVFAgCitcZkJwcm9jZXNzaW5nOiBcZlBcZklldGFwYVxmUFxmQjogXGZQXGZJcGFxdWV0ZVxmUAorU2UgZW527WEganVzdG8gZGVzcHXpcyBkZWwgaW5pY2lvIGRlbCBlc3RhZG8gZGUgcHJvY2VzYW1pZW50by4gRWwgXGZJZXN0YWRvXGZQCitwdWVkZSBzZXIgXGZCdXBncmFkZVxmUCwgXGZCaW5zdGFsbFxmUCAoYW1ib3Mgc2UgZW527WFuIGFudGVzIGRlIGRlc2VtcGFxdWV0YXIpLAorXGZCY29uZmlndXJlXGZQLCBcZkJ0cmlncHJvY1xmUCwgXGZCZGlzYXBwZWFyXGZQLCBcZkJyZW1vdmVcZlAgbyBcZkJwdXJnZVxmUC4KKy5SRQorLlRQIAorXGZCXC1cLXN0YXR1c1wtbG9nZ2VyXGZQPVxmSWNvbW1hbmRcZlAKK1NlbmQgbWFjaGluZVwtcmVhZGFibGUgcGFja2FnZSBzdGF0dXMgYW5kIHByb2dyZXNzIGluZm9ybWF0aW9uIHRvIHRoZSBzaGVsbAorXGZJY29tbWFuZFxmUCdzIHN0YW5kYXJkIGlucHV0LiBUaGlzIG9wdGlvbiBjYW4gYmUgc3BlY2lmaWVkIG11bHRpcGxlCit0aW1lcy4gVGhlIG91dHB1dCBmb3JtYXQgdXNlZCBpcyB0aGUgc2FtZSBhcyBpbiBcZkJcLVwtc3RhdHVzXC1mZC5cZlAKKy5SRQorLlRQIAorXGZCXC1cLWxvZz1cZlBcZklmaWNoZXJvXGZQCitMb2cgc3RhdHVzIGNoYW5nZSB1cGRhdGVzIGFuZCBhY3Rpb25zIHRvIFxmSWZpbGVuYW1lXGZQLCBpbnN0ZWFkIG9mIHRoZSBkZWZhdWx0CitcZkkvdmFyL2xvZy9kcGtnLmxvZ1xmUC4gSWYgdGhpcyBvcHRpb24gaXMgZ2l2ZW4gbXVsdGlwbGUgdGltZXMsIHRoZSBsYXN0CitmaWxlbmFtZSBpcyB1c2VkLiBMb2cgbWVzc2FnZXMgYXJlIG9mIHRoZSBmb3JtIGBZWVlZXC1NTVwtREQgSEg6TU06U1Mgc3RhdHVzCitcZklzdGF0ZVxmUCBcZklwa2dcZlAgXGZJaW5zdGFsbGVkXC12ZXJzaW9uXGZQJyBmb3Igc3RhdHVzIGNoYW5nZSB1cGRhdGVzOyBgWVlZWVwtTU1cLURECitISDpNTTpTUyBcZklhY3Rpb25cZlAgXGZJcGtnXGZQIFxmSWluc3RhbGxlZFwtdmVyc2lvblxmUCBcZklhdmFpbGFibGVcLXZlcnNpb25cZlAnIGZvcgorYWN0aW9ucyB3aGVyZSBcZklhY3Rpb25cZlAgaXMgb25lIG9mIFxmQmluc3RhbGxcZlAsIFxmQnVwZ3JhZGVcZlAsIFxmQnJlbW92ZVxmUCwKK1xmQnB1cmdlXGZQOyBhbmQgYFlZWVlcLU1NXC1ERCBISDpNTTpTUyBjb25mZmlsZSBcZklmaWxlbmFtZVxmUCBcZklkZWNpc2lvblxmUCcgZm9yCitjb25mZmlsZSBjaGFuZ2VzIHdoZXJlIFxmSWRlY2lzaW9uXGZQIGlzIGVpdGhlciBcZkJpbnN0YWxsXGZQIG9yIFxmQmtlZXBcZlAuCisuVFAgCitcZkJcLVwtbm9cLWRlYnNpZ1xmUAorTm8gaW50ZW50YSB2ZXJpZmljYXIgbGFzIGZpcm1hcyBkZSBsb3MgcGFxdWV0ZXMuCisuVFAgCitcZkJcLVwtbm9cLXRyaWdnZXJzXGZQCitObyBlamVjdXRhIG5pbmf6biBkaXNwYXJhZG9yIGR1cmFudGUgZXN0YSBlamVjdWNp824gKHNlIGdyYWJhcuFuIGxhcworYWN0aXZhY2lvbmVzKS4gU2kgc2UgdXNhIGNvbiBcZkJcLVwtY29uZmlndXJlXGZQIFxmSXBhcXVldGVcZlAgbyBcZkJcLVwtdHJpZ2dlcnNcLW9ubHlcZlAKK1xmSXBhcXVldGVcZlAsIGVsIHNjcmlwdCCrcG9zdGluc3S7IGRlbCBwYXF1ZXRlIG5vbWJyYWRvIHRlbmRy4SBwZXJtaXNvcyBkZQorZWplY3VjafNuIGF1bnF1ZSBz82xvIHNlIG5lY2VzaXRlIGVqZWN1dGFyIHVuIGRpc3BhcmFkb3IuIEVsIHVzbyBkZSBlc3RhCitvcGNp824gcHVlZGUgZGVqYXIgcGFxdWV0ZXMgY29uIGVsIGVzdGFkbyBubyBkZXNlYWRvIGRlIFxmQnRyaWdnZXJzXC1hd2FpdGVkXGZQCit5IFxmQnRyaWdnZXJzXC1wZW5kaW5nXGZQLiBQdWVkZSBhcnJlZ2xhciBlc3RvIG3hcyB0YXJkZSBlamVjdXRhbmRvIFxmQmRwa2cKK1wtXC1jb25maWd1cmUgXC1cLXBlbmRpbmdcZlAuCisuVFAgCitcZkJcLVwtdHJpZ2dlcnNcZlAKK0NhbmNlbGEgdW4gXGZCXC1cLW5vXC10cmlnZ2Vyc1xmUCBwcmV2aW8uCisuCisuU0ggRklDSEVST1MKKy5UUCAKK1xmSS9ldGMvZHBrZy9kcGtnLmNmZ1xmUAorRWwgZmljaGVybyBkZSBjb25maWd1cmFjafNuIGNvbiBsYXMgb3BjaW9uZXMgcHJlZGVmaW5pZGFzLgorLlRQIAorXGZJL3Zhci9sb2cvZHBrZy5sb2dcZlAKK0VsIGZpY2hlcm8gZGUgcmVnaXN0cm8gcHJlZGVmaW5pZG8gKGNvbnN1bHRlIFxmSS9ldGMvZHBrZy9kcGtnLmNmZ1xmUCg1KSB5IGxhCitvcGNp824gXGZCXC1cLWxvZ1xmUCkuCisuUAorTG9zIG90cm9zIGZpY2hlcm9zIGxpc3RhZG9zIGEgY29udGludWFjafNuIGVzdOFuIGVuIHN1cyBkaXJlY3RvcmlvcworcHJlZGVmaW5pZG9zLiBDb25zdWx0ZSBsYSBvcGNp824gXGZCXC1cLWFkbWluZGlyXGZQIHBhcmEgdmVyIGPzbW8gbW9kaWZpY2FyIGxhCit1YmljYWNp824gZGUgZXN0b3MgZmljaGVyb3MuCisuVFAgCitcZkkvdmFyL2xpYi9kcGtnL2F2YWlsYWJsZVxmUAorTGlzdGEgZGUgcGFxdWV0ZXMgZGlzcG9uaWJsZXMuCisuVFAgCitcZkkvdmFyL2xpYi9kcGtnL3N0YXR1c1xmUAorTG9zIGVzdGFkb3MgZGUgbG9zIHBhcXVldGVzIGRpc3BvbmlibGVzLiBFc3RlIGZpY2hlcm8gY29udGllbmUgaW5mb3JtYWNp824KK3NvYnJlIHNpIHVuIHBhcXVldGUgZXN04SBtYXJjYWRvIG8gbm8gcGFyYSBzdSBlbGltaW5hY2nzbiwgc2kgZXN04SBvIG5vIGVzdOEKK2luc3RhbGFkbywgZXRjLiBQYXJhIG3hcyBpbmZvcm1hY2nzbiwgY29uc3VsdGUgZWwgYXBhcnRhZG8gXGZCSU5GT1JNQUNJ004KK1NPQlJFIFBBUVVFVEVTXGZQLgorCitVbmEgY29waWEgZGUgc2VndXJpZGFkIGRpYXJpYSBkZWwgZmljaGVybyBkZSBlc3RhZG8gc2UgY3JlYSBlbgorXGZJL3Zhci9iYWNrdXBzXGZQLiBQdWVkZSBzZXIg+nRpbCBzaSBzZSBoYSBwZXJkaWRvIG8gaGEgcXVlZGFkbyBkYfFhZG8gcG9yCitwcm9ibGVtYXMgY29uIGVsIHNpc3RlbWEgZGUgZmljaGVyb3MuCisuUAorTG9zIHNpZ3VpZW50ZXMgZmljaGVyb3Mgc29uIGNvbXBvbmVudGVzIGRlIHVuIHBhcXVldGUgYmluYXJpby4gQ29uc3VsdGUKK1xmQmRlYlxmUCg1KSBwYXJhIG3hcyBpbmZvcm1hY2nzbiBzb2JyZSDpc3RvczoKKy5UUCAKK1xmSWNvbnRyb2xcZlAKKy5UUCAKK1xmSWNvbmZmaWxlc1xmUAorLlRQIAorXGZJcHJlaW5zdFxmUAorLlRQIAorXGZJcG9zdGluc3RcZlAKKy5UUCAKK1xmSXByZXJtXGZQCisuVFAgCitcZklwb3N0cm1cZlAKKy4KKy5TSCBFTlRPUk5PCisuVFAgCitcZkJIT01FXGZQCitTaSBzZSBkZWZpbmUsIFxmQmRwa2dcZlAgbG8gdXNhcuEgY29tbyBlbCBkaXJlY3RvcmlvIGRlbCBjdWFsIGxlZXIgZWwgZmljaGVybworZGUgY29uZmlndXJhY2nzbiBlc3BlY+1maWNvIGRlbCB1c3VhcmlvLgorLlRQIAorXGZCVE1QRElSXGZQCitTaSBzZSBkZWZpbmUsIFxmQmRwa2dcZlAgbG8gdXNhcuEgY29tbyBlbCBkaXJlY3RvcmlvIGVuIGVsIHF1ZSBjcmVhciBmaWNoZXJvcyB5CitkaXJlY3RvcmlvcyB0ZW1wb3JhbGVzLgorLlRQIAorXGZCUEFHRVJcZlAKK0VsIHByb2dyYW1hIHF1ZSBcZkJkcGtnXGZQIGVqZWN1dGFy4SBhbCBtb3N0cmFyIGxvcyBmaWNoZXJvcyBkZSBjb25maWd1cmFjafNuCiurY29uZmZpbGVzuy4KKy5UUCAKK1xmQlNIRUxMXGZQCitFbCBwcm9ncmFtYSBxdWUgXGZCZHBrZ1xmUCBlamVjdXRhcuEgYWwgaW5pY2lhciB1biBudWV2byBpbnTpcnByZXRlIGRlIPNyZGVuZXMuCisuVFAgCitcZkJDT0xVTU5TXGZQCitEZWZpbmUgZWwgbvptZXJvIGRlIGNvbHVtbmFzIHF1ZSBcZkJkcGtnXGZQIHB1ZWRlIHVzYXIgcGFyYSBtb3N0cmFyIGxhCitpbmZvcm1hY2nzbi4gUG9yIGFob3JhIHPzbG8gbGEgdXNhIGxhIG9wY2nzbiCrXC1suy4KKy5UUCAKK1xmQkRQS0dfU0hFTExfUkVBU09OXGZQCitEZWZpbmlkbyBwb3IgXGZCZHBrZ1xmUCBlbiBlbCBpbnTpcnByZXRlIGRlIPNyZGVuZXMgaW5pY2lhZG8gZW4gZWwgZGnhbG9nbyBkZWwKK2ZpY2hlcm8gZGUgY29uZmlndXJhY2nzbiCrY29uZmZpbGW7IHBhcmEgZXhhbWluYXIgbGEgc2l0dWFjafNuLiBFbCB2YWxvcgorduFsaWRvIGFjdHVhbG1lbnRlIGVzIFxmQmNvbmZmaWxlXC1wcm9tcHRcZlAuCisuVFAgCitcZkJEUEtHX0NPTkZGSUxFX09MRFxmUAorRGVmaW5pZG8gcG9yIFxmQmRwa2dcZlAgZW4gZWwgaW506XJwcmV0ZSBkZSDzcmRlbmVzIGluaWNpYWRvIGVuIGVsIGRp4WxvZ28gZGVsCitmaWNoZXJvIGRlIGNvbmZpZ3VyYWNp824gq2NvbmZmaWxluyBwYXJhIGV4YW1pbmFyIGxhIHNpdHVhY2nzbi4gQ29udGllbmUgbGEKK3J1dGEgYWwgZmljaGVybyBkZSBjb25maWd1cmFjafNuIGFudGlndW8uCisuVFAgCitcZkJEUEtHX0NPTkZGSUxFX05FV1xmUAorRGVmaW5pZG8gcG9yIFxmQmRwa2dcZlAgZW4gZWwgaW506XJwcmV0ZSBkZSDzcmRlbmVzIGluaWNpYWRvIGVuIGVsIGRp4WxvZ28gZGVsCitmaWNoZXJvIGRlIGNvbmZpZ3VyYWNp824gq2NvbmZmaWxluyBwYXJhIGV4YW1pbmFyIGxhIHNpdHVhY2nzbi4gQ29udGllbmUgbGEKK3J1dGEgYWwgZmljaGVybyBkZSBjb25maWd1cmFjafNuIKtjb25mZmlsZbsgbnVldm8uCisuVFAgCitcZkJEUEtHX1JVTk5JTkdfVkVSU0lPTlxmUAorRGVmaW5pZG8gcG9yIFxmQmRwa2dcZlAgZW4gZWwgc2NyaXB0IGRlbCBlbnRvcm5vIGRlbCBtYW50ZW5lZG9yIGNvbiBlbCB2YWxvciBkZQorbGEgdmVyc2nzbiBlbiBlamVjdWNp824gZGUgXGZCZHBrZ1xmUC4KKy5UUCAKK1xmQkRQS0dfTUFJTlRTQ1JJUFRfUEFDS0FHRVxmUAorRGVmaW5pZG8gcG9yIFxmQmRwa2dcZlAgZW4gZWwgc2NyaXB0IGRlIGVudG9ybm8gZGVsIG1hbnRlbmVkb3IgY29uIGVsIHZhbG9yIGRlbAorbm9tYnJlIGRlbCBwYXF1ZXRlIG1hbmlwdWxhZG8uCisuVFAgCitcZkJEUEtHX01BSU5UU0NSSVBUX0FSQ0hcZlAKK0RlZmluaWRvIHBvciBcZkJkcGtnXGZQIGVuIGVsIHNjcmlwdCBkZSBlbnRvcm5vIGRlbCBtYW50ZW5lZG9yIGNvbiBlbCB2YWxvciBkZQorbGEgYXJxdWl0ZWN0dXJhIGRlIHBhcXVldGUgcGFyYSBsYSBjdWFsIHNlIGNvbXBpbPMuCisuVFAgCitcZkJEUEtHX01BSU5UU0NSSVBUX05BTUVcZlAKK0RlZmluaWRvIHBvciBcZkJkcGtnXGZQIGVuIGVsIHNjcmlwdCBkZWwgZW50b3JubyBkZWwgbWFudGVuZWRvciBjb24gZWwgdmFsb3IKK2RlbCBub21icmUgZGVsIHNjcmlwdCBlbiBlamVjdWNp824gKKtwcmVpbnN0uywgq3Bvc3RpbnN0uywgq3ByZXJtuywKK6twb3N0cm27KS4KKy4KKy5TSCBFSkVNUExPUworUGFyYSBsaXN0YXIgbG9zIHBhcXVldGVzIGNvbiBlbCBlZGl0b3IgXGZCdmlcZlAoMSkgZW4gc3Ugbm9tYnJlOgorLmJyCisgICAgIFxmQmRwa2cgXC1sIFwoYXEqdmkqXChhcVxmUAorLmJyCisKK1BhcmEgdmVyIGxhcyBlbnRyYWRhcyBlbiBcZkkvdmFyL2xpYi9kcGtnL2F2YWlsYWJsZVxmUCBkZSBkb3MgcGFxdWV0ZXM6CisuYnIKKyAgICAgXGZCZHBrZyBcLVwtcHJpbnRcLWF2YWlsIGVsdmlzIHZpbSB8IGxlc3NcZlAKKy5icgorCitQYXJhIGJ1c2NhciBwZXJzb25hbG1lbnRlIGVuIGxhIGxpc3RhIGRlIHBhcXVldGVzOgorLmJyCisgICAgIFxmQmxlc3MgL3Zhci9saWIvZHBrZy9hdmFpbGFibGVcZlAKKy5icgorCitQYXJhIGJvcnJhciB1biBwYXF1ZXRlIGluc3RhbGFkbyBsbGFtYWRvIGVsdmlzOgorLmJyCisgICAgIFxmQmRwa2cgXC1yIGVsdmlzXGZQCisuYnIKKworUGFyYSBpbnN0YWxhciB1biBwYXF1ZXRlLCDpc3RlIHRpZW5lIHF1ZSBlc3RhciBkaXNwb25pYmxlIGVuIHVuIGFyY2hpdm8gbworZGlzY28g83B0aWNvLiBFbCBmaWNoZXJvIKthdmFpbGFibGW7IG11ZXN0cmEgcXVlIGVsIHBhcXVldGUgdmltIGVzdOEgZW4gbGEKK3NlY2Np824gq2VkaXRvcnO7OgorLmJyCisgICAgIFxmQmNkIC9tZWRpYS9jZHJvbS9wb29sL21haW4vdi92aW1cZlAKKyAgICAgXGZCZHBrZyBcLWkgdmltXzQuNVwtMy5kZWJcZlAKKy5icgorCitQYXJhIGhhY2VyIHVuYSBjb3BpYSBsb2NhbCBkZSBsYXMgc2VsZWNjaW9uZXMgZGUgZXN0YWRvcyBkZSBwYXF1ZXRlczoKKy5icgorICAgICBcZkIgZHBrZyBcLVwtZ2V0XC1zZWxlY3Rpb25zID5taXNcLXNlbGVjY2lvbmVzXGZQCisuYnIKKworUG9kcu1hIGNvcGlhciBlc3RlIGZpY2hlcm8gYSBvdHJhIG3hcXVpbmEgZSBpbnN0YWxhcmxvIGFsbO0gY29uOgorLmJyCisgICAgIFxmQmRwa2cgXC1cLWNsZWFyXC1zZWxlY3Rpb25zXGZQCisgICAgIFxmQmRwa2cgXC1cLXNldFwtc2VsZWN0aW9ucyA8bWlzXC1zZWxlY2Npb25lc1xmUAorLmJyCisKK1RlbmdhIGVuIGN1ZW50YSBxdWUgZXN0byBubyBpbnN0YWxhcuEgbmkgYm9ycmFy4SBuYWRhLCBzaW1wbGVtZW50ZQorbW9kaWZpY2Fy4SBlbCBlc3RhZG8gZGUgc2VsZWNjafNuIGRlIGxvcyBwYXF1ZXRlcyBzZWxlY2Npb25hZG9zLiBOZWNlc2l0YXLhCitvdHJhIGFwbGljYWNp824gcGFyYSBvYnRlbmVyIGxvcyBwYXF1ZXRlcyBlIGluc3RhbGFybG9zLiBQb3IgZWplbXBsbywKK2VqZWN1dGUgXGZCYXB0XC1nZXQgZHNlbGVjdFwtdXBncmFkZVxmUC4KKworUG9yIGxvIGdlbmVyYWwsIGVuY29udHJhcuEgcXVlIFxmQmRzZWxlY3RcZlAoOCkgZXMgdW5hIGZvcm1hIG3hcyBj821vZGEgZGUKK21vZGlmaWNhciBsb3MgZXN0YWRvcyBkZSBzZWxlY2Np824gZGUgbG9zIHBhcXVldGVzLgorLmJyCisuCisuU0ggIkZVTkNJT05BTElEQUQgQURJQ0lPTkFMIgorUHVlZGUgZ2FuYXIgZnVuY2lvbmFsaWRhZGVzIGFkaWNpb25hbGVzIGluc3RhbGFuZG8gYWxndW5vIGRlIGxvcyBzaWd1aWVudGVzCitwYXF1ZXRlczogXGZJYXB0XGZQLCBcZklhcHRpdHVkZVxmUCB5IFxmSWRlYnN1bXNcZlAuCisuCisuU0ggIlbJQVNFIFRBTUJJyU4iCitcZkJhcHRpdHVkZVxmUCgxKSwgXGZCYXB0XGZQKDEpLCBcZkJkc2VsZWN0XGZQKDEpLCBcZkJkcGtnXC1kZWJcZlAoMSksIFxmQmRwa2dcLXF1ZXJ5XGZQKDEpLAorXGZCZGViXGZQKDUpLCBcZkJkZWJcLWNvbnRyb2xcZlAoNSksIFxmQmRwa2cuY2ZnXGZQKDUpLCB5IFxmQmRwa2dcLXJlY29uZmlndXJlXGZQKDgpLgorLgorLlNIIEZBTExPUworSGFiaXR1YWxtZW50ZSwgbGEgb3BjafNuIFxmQlwtXC1ub1wtYWN0XGZQIGRhIG1lbm9zIGluZm9ybWFjafNuIGRlIGxhIHF1ZQorbmVjZXNpdGEuCisuCisuU0ggQVVUT1JFUworQ29uc3VsdGUgXGZJL3Vzci9zaGFyZS9kb2MvZHBrZy9USEFOS1NcZlAgcGFyYSB1bmEgbGlzdGEgZGUgbGFzIHBlcnNvbmFzIHF1ZQoraGFuIGNvbnRyaWJ1aWRvIGEgXGZCZHBrZ1xmUC4KKy5TSCAiVFJBRFVDVE9SIgorUnVkeSBHb2RveSA8cnVkeUBrZXJuZWxcLXBhbmlrLm9yZz4sCitSdWLpbiBQb3JyYXMgPG5haG9vQGluaWNpYS5lcz4sCitCcnVubyBCYXJyZXJhIEMuIDxicnVuby5iYXJyZXJhQGlnbG9vLmNsPiwKK0NhcmxvcyBJenF1aWVyZG8gPGdoZWVzaEBlcnRpcy5uZXQ+LAorRXN0ZWJhbiBNYW5jaGFkbyB5CitOT0suCitEZWJpYW4gTDEwbiBTcGFuaXNoIDxkZWJpYW5cLWwxMG5cLXNwYW5pc2hAbGlzdHMuZGViaWFuLm9yZz4uCisuYnIKK1JldmlzaW9uZXMgcG9yIFNhbnRpYWdvIFZpbGEgPHNhbnZpbGFAdW5leC5lcz4sCitKYXZpZXIgRmVybuFuZGV6XC1TYW5ndWlubywgUnVi6W4gUG9ycmFzLAorTHVpcyBVcmliZSB5IE9tYXIgQ2FtcGFnbmUuCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9lcy9kcGtnLmNmZy41IGIvZHBrZy0xLjE2LjEuMS9tYW4vZXMvZHBrZy5jZmcuNQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lYjdjYTA4Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vZXMvZHBrZy5jZmcuNQpAQCAtMCwwICsxLDQxIEBACisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkcGtnLmNmZyA1ICI1IGRlIFNlcHRpZW1icmUgZGUgMjAwOSIgIlByb3llY3RvIERlYmlhbiIgIkhlcnJhbWllbnRhcyBkZSBkcGtnIgorLlNIIE5PTUJSRQorZHBrZy5jZmcgXC0gRmljaGVybyBkZSBjb25maWd1cmFjafNuIGRlIGRwa2cKKy4KKy5TSCBERVNDUklQQ0nTTgorRXN0ZSBmaWNoZXJvIGNvbnRpZW5lIGxhcyBvcGNpb25lcyBwcmVkZWZpbmlkYXMgZGUgZHBrZy4gQ2FkYSBs7W5lYSBjb250aWVuZQordW5hIPpuaWNhIG9wY2nzbiwgaWTpbnRpY2EgYSB1bmEgb3BjafNuIGRlIGztbmVhIGRlIPNyZGVuZXMgbm9ybWFsIGRlIGRwa2cgYQorZXhjZXBjafNuIGRlIGxhIGF1c2VuY2lhIGRlIGd1aW9uZXMgcHJlY2VkZW50ZXMuIExhcyBjb21pbGxhcyBxdWUgcm9kZWVuCit2YWxvcmVzIGRlIG9wY2lvbmVzIGRlc2FwYXJlY2Vy4W4uIFNlIHBlcm1pdGVuIGNvbWVudGFyaW9zIHNpIGxhIGztbmVhCitjb21pZW56YSBjb24gdW5hIGFsbW9oYWRpbGxhICirXGZCI1xmULspLgorLgorLlNIIEZJQ0hFUk9TCitcZkkvZXRjL2Rwa2cvZHBrZy5jZmcuZC9bMFwtOWFcLXpBXC1aX1wtXSpcZlAKKy5icgorXGZJL2V0Yy9kcGtnL2Rwa2cuY2ZnXGZQCisuYnIKK1xmSX4vLmRwa2cuY2ZnXGZQCisuCisuU0ggQVVUT1IKK0NvbnN1bHRlIFxmSS91c3Ivc2hhcmUvZG9jL2Rwa2cvVEhBTktTXGZQIHBhcmEgdW5hIGxpc3RhIGRlIGxhcyBwZXJzb25hcyBxdWUKK2hhbiBjb250cmlidWlkbyBhIFxmQmRwa2dcZlAuCisuCisuU0ggIlbJQVNFIFRBTUJJyU4iCitcZkJkcGtnXGZQKDEpLgorLlNIICJUUkFEVUNUT1IiCitSdWR5IEdvZG95IDxydWR5QGtlcm5lbFwtcGFuaWsub3JnPiwKK1J1YuluIFBvcnJhcyA8bmFob29AaW5pY2lhLmVzPiwKK0JydW5vIEJhcnJlcmEgQy4gPGJydW5vLmJhcnJlcmFAaWdsb28uY2w+LAorQ2FybG9zIEl6cXVpZXJkbyA8Z2hlZXNoQGVydGlzLm5ldD4sCitFc3RlYmFuIE1hbmNoYWRvIHkKK05PSy4KK0RlYmlhbiBMMTBuIFNwYW5pc2ggPGRlYmlhblwtbDEwblwtc3BhbmlzaEBsaXN0cy5kZWJpYW4ub3JnPi4KKy5icgorUmV2aXNpb25lcyBwb3IgU2FudGlhZ28gVmlsYSA8c2FudmlsYUB1bmV4LmVzPiwKK0phdmllciBGZXJu4W5kZXpcLVNhbmd1aW5vLCBSdWLpbiBQb3JyYXMsCitMdWlzIFVyaWJlIHkgT21hciBDYW1wYWduZS4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL2VzL2RzZWxlY3QuMSBiL2Rwa2ctMS4xNi4xLjEvbWFuL2VzL2RzZWxlY3QuMQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jNGM5OTlmCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vZXMvZHNlbGVjdC4xCkBAIC0wLDAgKzEsNDcyIEBACisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkc2VsZWN0IDEgMjAxMVwtMDhcLTE0ICJQcm95ZWN0byBEZWJpYW4iIERlYmlhbgorLlNIIE5PTUJSRQorZHNlbGVjdCBcLSBJbnRlcmZheiBwYXJhIGxhIGdlc3Rp824gZGUgcGFxdWV0ZXMgZGUgRGViaWFuCisuCisuU0ggU0lOT1BTSVMKK1xmQmRzZWxlY3RcZlAgW1xmSW9wdGlvblxmUC4uLl0gW1xmSWFjdGlvblxmUF0KKy4KKy5TSCBERVNDUklQQ0nTTgorXGZCZHNlbGVjdFxmUAorZXMgdW5hIGRlIGxhcyBwcmluY2lwYWxlcyBpbnRlcmZhY2VzIHBhcmEgbGEgZ2VzdGnzbiBkZSBwYXF1ZXRlcyBlbiB1bgorc2lzdGVtYSBEZWJpYW4gR05VL0xpbnV4LiBFbCBtZW76IHByaW5jaXBhbCBkZSBcZkJkc2VsZWN0XGZQIHBlcm1pdGUgYWwKK2FkbWluaXN0cmFkb3IgZGVsIHNpc3RlbWE6CisgXC0gQWN0dWFsaXphciBsYSBsaXN0YSBkZSBwYXF1ZXRlcyBkaXNwb25pYmxlcworIFwtIFZlciBlbCBlc3RhZG8gZGUgbG9zIHBhcXVldGVzIGluc3RhbGFkb3MgeSBkaXNwb25pYmxlcworIFwtIEFsdGVyYXIgc2VsZWNjaW9uZXMgZGUgcGFxdWV0ZXMgeSBnZXN0aW9uYXIgbGFzIGRlcGVuZGVuY2lhcworIFwtIEluc3RhbGFyIHBhcXVldGVzIG51ZXZvcyBvIGFjdHVhbGl6YXJsb3MgYSBudWV2YXMgdmVyc2lvbmVzCisuUFAKK1xmQmRzZWxlY3RcZlAgZnVuY2lvbmEgY29tbyB1bmEgaW50ZXJmYXogZGUgXGZCZHBrZyg4KVxmUCwgbGEgaGVycmFtaWVudGEgZGUgYmFqbworbml2ZWwgZGUgbWFuaXB1bGFjafNuIGRlIHBhcXVldGVzIGRlIERlYmlhbi4gT2ZyZWNlIHVuYSBwYW50YWxsYSBjb21wbGV0YSBkZQorc2VsZWNjafNuIGRlIHBhcXVldGVzIGNvbiB1biBzb2x1Y2lvbmFkb3IgZGUgZGVwZW5kZW5jaWFzIHkKK2NvbmZsaWN0b3MuIEN1YW5kbyBzZSBlamVjdXRhIGNvbiBwZXJtaXNvcyBkZSBhZG1pbmlzdHJhZG9yIHBlcm1pdGUKK2luc3RhbGFyLCBhY3R1YWxpemFyIHkgZWxpbWluYXIgcGFxdWV0ZXMuIFB1ZWRlIGNvbmZpZ3VyYXIgdmFyaW9zIG3pdG9kb3MgZGUKK2FjY2VzbyBwYXJhIGNvbm9jZXIgbGFzIHZlcnNpb25lcyBkaXNwb25pYmxlcyBlIGluc3RhbGFibGVzIGRlc2RlCityZXBvc2l0b3Jpb3MgZGUgcGFxdWV0ZXMuIERlcGVuZGllbmRvIGRlbCBt6XRvZG8gZGUgYWNjZXNvIHVzYWRvLCBlc29zCityZXBvc2l0b3Jpb3MgZGUgcGFxdWV0ZXMgcHVlZGVuIHNlciBhcmNoaXZvcyBw+mJsaWNvcyBlbiBzZXJ2aWRvcmVzIGEgdHJhdulzCitkZSBJbnRlcm5ldCwgc2Vydmlkb3JlcyBkZSBhcmNoaXZvIGxvY2FsZXMgbyBiaWVuIGRpc2NvcyDzcHRpY29zLiBFbCBt6XRvZG8KK2RlIGFjY2VzbyByZWNvbWVuZGFkbyBlcyBcZklhcHRcZlAsIHByb3BvcmNpb25hZG8gcG9yIGVsIHBhcXVldGUgXGZCYXB0XGZQLgorLlBQCitOb3JtYWxseSBcZkJkc2VsZWN0XGZQIGlzIGludm9rZWQgd2l0aG91dCBwYXJhbWV0ZXJzLiBBbiBpbnRlcmFjdGl2ZSBtZW51IGlzCitwcmVzZW50ZWQsIG9mZmVyaW5nIHRoZSB1c2VyIGEgbGlzdCBvZiBhY3Rpb25zLiBJZiBhbiBhY3Rpb24gaXMgZ2l2ZW4gYXMKK2FyZ3VtZW50LCB0aGVuIHRoYXQgYWN0aW9uIGlzIHN0YXJ0ZWQgaW1tZWRpYXRlbHkuIFNldmVyYWwgY29tbWFuZCBsaW5lCitwYXJhbWV0ZXJzIGFyZSBzdGlsbCBhdmFpbGFibGUgdG8gbW9kaWZ5IHRoZSBydW5uaW5nIGJlaGF2aW91ciBvZiBcZkJkc2VsZWN0XGZQCitvciBzaG93IGFkZGl0aW9uYWwgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHByb2dyYW0uCisuCisuU0ggT1BDSU9ORVMKK0FsbCBvcHRpb25zIGNhbiBiZSBzcGVjaWZpZWQgYm90aCBvbiB0aGUgY29tbWFuZCBsaW5lIGFuZCBpbiB0aGUgXGZCZHNlbGVjdFxmUAorY29uZmlndXJhdGlvbiBmaWxlIFxmSS9ldGMvZHBrZy9kc2VsZWN0LmNmZ1xmUCBvciB0aGUgZmlsZXMgb24gdGhlCitjb25maWd1cmF0aW9uIGRpcmVjdG9yeSBcZkkvZXRjL2Rwa2cvZHNlbGVjdC5jZmcuZC9cZlAuIEVhY2ggbGluZSBpbiB0aGUKK2NvbmZpZ3VyYXRpb24gZmlsZSBpcyBlaXRoZXIgYW4gb3B0aW9uIChleGFjdGx5IHRoZSBzYW1lIGFzIHRoZSBjb21tYW5kIGxpbmUKK29wdGlvbiBidXQgd2l0aG91dCBsZWFkaW5nIGRhc2hlcykgb3IgYSBjb21tZW50IChpZiBpdCBzdGFydHMgd2l0aCBhIFxmQiNcZlApLgorLmJyCisuVFAgCitcZkJcLVwtYWRtaW5kaXJcZlBcZkkgZGlyZWN0b3Jpb1xmUAorQ2FtYmlhIGVsIGRpcmVjdG9yaW8gZG9uZGUgc2UgdWJpY2FuIGxvcyBmaWNoZXJvcyBkZSBkcGtnIFxmSXN0YXR1c1xmUCwKK1xmSWF2YWlsYWJsZVxmUCB5IG90cm9zLiBFcyBcZkkvdmFyL2xpYi9kcGtnXGZQIHBvciBvbWlzafNuIHkgZW4gY29uZGljaW9uZXMKK25vcm1hbGVzIG5vIHNlICBkZWJlcu1hIGNhbWJpYXIuCisuVFAgCitcZkJcLVwtZGVidWdcZlBcZkkgZmlsZSBcZlB8XGZJIFxmUFxmQlwtRFxmUFxmSWZpbGVcZlAKK1R1cm4gb24gZGVidWdnaW5nLiBEZWJ1Z2dpbmcgaW5mb3JtYXRpb24gaXMgc2VudCB0byBcZklmaWxlXGZQLgorLlRQIAorXGZCXC1cLWV4cGVydFxmUAorQWN0aXZhIGVsIG1vZG8gZXhwZXJ0by4gUG9yIGVqZW1wbG8sIG5vIG11ZXN0cmEgbWVuc2FqZXMgZGUgYXl1ZGEKK3Bvc2libGVtZW50ZSBtb2xlc3Rvcy4KKy5UUCAKK1xmQlwtXC1jb2xvdXJcZlB8XGZCXC1cLWNvbG9yXGZQIFxmSXBhcnRlXC1kZVwtcGFudGFsbGE6XGZQW1xmSXByaW1lclwtcGxhbm9cZlBdLFtcZklmb25kb1xmUF1bXGZJOmF0dHJcZlBbXGZJK2F0dHIrLi5cZlBdXQorQ29uZmlndXJhIGxvcyBjb2xvcmVzIGRlIGxhIHBhbnRhbGxhLiBFc3RvIHPzbG8gZnVuY2lvbmEgc2kgc3UgZXF1aXBvIGVzCitjYXBheiBkZSBtb3N0cmFyIGNvbG9yZXMuIFB1ZWRlIHVzYXIgZXN0YSBvcGNp824gY3VhbnRhcyB2ZWNlcyBkZXNlZSAoZXMKK21lam9yIHVzYXJsYSBlbiBcZklkc2VsZWN0LmNmZ1xmUCkuIENhZGEgdXNvIGNhbWJpYSBlbCBjb2xvciAoeSBvcGNpb25hbG1lbnRlLAorb3Ryb3MgYXRyaWJ1dG9zKSBkZSB1bmEgcGFydGUgZGUgbGEgcGFudGFsbGEuIEVzdGFzIHBhcnRlcyBkZSBsYSBwYW50YWxsYQorKGRlc2RlIGFycmliYSBoYWNpYSBhYmFqbykgc29uOgorLlJTCisuVFAgCitcZkJ0aXRsZVxmUAorRWwgdO10dWxvIGRlIGxhIHBhbnRhbGxhLgorLlRQIAorXGZCbGlzdGhlYWRcZlAKK0xhIGztbmVhIGRlIGNhYmVjZXJhIGVuY2ltYSBkZSBsYSBsaXN0YSBkZSBwYXF1ZXRlcy4KKy5UUCAKK1xmQmxpc3RcZlAKK0xhIGxpc3RhIGRlIHBhcXVldGVzICh5IHRhbWJp6W4gb3Ryb3MgdGV4dG9zIGRlIGF5dWRhKS4KKy5UUCAKK1xmQmxpc3RzZWxcZlAKK0VsIGVsZW1lbnRvIHNlbGVjY2lvbmFkbyBlbiBsYSBsaXN0YS4KKy5UUCAKK1xmQnBrZ3N0YXRlXGZQCitFbiBsYSBsaXN0YSBkZSBwYXF1ZXRlcywgZWwgdGV4dG8gcXVlIGluZGljYSBlbCBlc3RhZG8gYWN0dWFsIGRlIGNhZGEKK3BhcXVldGUuCisuVFAgCitcZkJwa2dzdGF0ZXNlbFxmUAorRW4gbGEgbGlzdGEgZGUgcGFxdWV0ZXMsIGVsIHRleHRvIHF1ZSBpbmRpY2EgZWwgZXN0YWRvIGFjdHVhbCBkZWwgcGFxdWV0ZQorc2VsZWNjaW9uYWRvLgorLlRQIAorXGZCaW5mb2hlYWRcZlAKK0xhIGztbmVhIGRlIGNhYmVjZXJhIHF1ZSBtdWVzdHJhIGVsIGVzdGFkbyBkZWwgcGFxdWV0ZSBzZWxlY2Npb25hZG8uCisuVFAgCitcZkJpbmZvZGVzY1xmUAorTGEgZGVzY3JpcGNp824gY29ydGEgZGVsIHBhcXVldGUuCisuVFAgCitcZkJpbmZvXGZQCitTZSB1c2EgcGFyYSBtb3N0cmFyIGxhIGluZm9ybWFjafNuIGRlbCBwYXF1ZXRlIGFz7SBjb21vIHN1IGRlc2NyaXBjafNuLgorLlRQIAorXGZCaW5mb2Zvb3RcZlAKK0xhIPpsdGltYSBs7W5lYSBkZSBsYSBwYW50YWxsYSBjdWFuZG8gc2Ugc2VsZWNjaW9uYW4gcGFxdWV0ZXMuCisuVFAgCitcZkJxdWVyeVxmUAorU2UgdXNhIHBhcmEgbW9zdHJhciBs7W5lYXMgZGUgY29uc3VsdGEuCisuVFAgCitcZkJoZWxwc2NyZWVuXGZQCitDb2xvciBkZSBsYXMgcGFudGFsbGFzIGRlIGF5dWRhLgorLlJFCisuUAorQSBjb250aW51YWNp824gZGUgbGEgcGFydGUgZGUgbGEgcGFudGFsbGEgYXBhcmVjZW4gZG9zIHB1bnRvcyB5IGxhCitkZWZpbmljafNuIGRlbCBjb2xvci4gUHVlZGUgZGVmaW5pciBlbCBjb2xvciBkZWwgcHJpbWVyIHBsYW5vLCBlbCBjb2xvciBkZQorZm9uZG8sIG8gYW1ib3MgZXZpdGFuZG8gbG9zIGNvbG9yZXMgcHJlZGVmaW5pZG9zLiBTZSBkZWJlbiB1c2FyIG5vbWJyZXMKK2VzdOFuZGFyIGRlIGNvbG9yZXMgZGUgbGEgYmlibGlvdGVjYSBjdXJzZXMuCisuUAorT3BjaW9uYWxtZW50ZSwgYSBjb250aW51YWNp824gZGUgbGEgZXNwZWNpZmljYWNp824gZGUgY29sb3JlcyBoYXkgb3Ryb3MgZG9zCitwdW50b3MsIHkgbGEgZXNwZWNpZmljYWNp824gZGUgbG9zIGF0cmlidXRvcy4gyXN0YSBlcyB1bmEgbGlzdGEgZGUgdW5vIG8gbeFzCithdHJpYnV0b3MsIHNlcGFyYWRvcyBwb3IgdW4gc2lnbm8gZGUgc3VtYSCrK7suIExvcyBhdHJpYnV0b3MgZGlzcG9uaWJsZXMKK2luY2x1eWVuIChubyB0b2RvcyBmdW5jaW9uYXLhbiBlbiB0b2RvcyBsb3MgdGVybWluYWxlcyk6IG5vcm1hbCwgc3RhbmRvdXQsCit1bmRlcmxpbmUsIHJldmVyc2UsIGJsaW5rLCBicmlnaHQsIGRpbSwgYm9sZC4KKy5UUCAKK1xmQlwtXC1oZWxwXGZQCitNdWVzdHJhIHVuIGJyZXZlIHRleHRvIGRlIGF5dWRhIHkgY2llcnJhIGNvbiDpeGl0by4KKy5UUCAKK1xmQlwtXC12ZXJzaW9uXGZQCitNdWVzdHJhIGxhIGluZm9ybWFjafNuIGRlIHZlcnNp824gZGVsIHByb2dyYW1hIHkgY2llcnJhIGNvbiDpeGl0by4KKy4KKy5TSCBBQ0NJT05FUworV2hlbiBcZkJkc2VsZWN0XGZQIGlzIHN0YXJ0ZWQgaXQgY2FuIHBlcmZvcm0gdGhlIGZvbGxvd2luZyBhY3Rpb25zLCBlaXRoZXIKK2RpcmVjdGx5IGlmIGl0IHdhcyBzcGVjaWZpZWQgb24gdGhlIGNvbW1hbmQgbGluZSBvciBieSBwcm9tcHRpbmcgdGhlIHVzZXIKK3dpdGggYSBtZW51IG9mIGF2YWlsYWJsZSBhY3Rpb25zIGlmIHJ1bm5pbmcgaW50ZXJhY3RpdmVseToKKy5TUyBhY2Nlc3MKK1NlbGVjY2nzbiB5IGNvbmZpZ3VyYWNp824gZGUgdW4gbel0b2RvIGRlIGFjY2VzbyBwYXJhIGFjY2VkZXIgYSBsb3MKK3JlcG9zaXRvcmlvcyBkZSBwYXF1ZXRlcy4KKy5zcAorQnkgZGVmYXVsdCwgXGZCZHNlbGVjdFxmUCBwcm92aWRlcyBzZXZlcmFsIG1ldGhvZHMgc3VjaCBhcyBcZkljZHJvbVxmUCwKK1xmSW11bHRpX2NkXGZQLCBcZkluZnNcZlAsIFxmSW11bHRpX25mc1xmUCwgXGZJaGFyZGRpc2tcZlAsIFxmSW1vdW50ZWRcZlAsIFxmSW11bHRpX21vdW50XGZQLAorXGZJZmxvcHB5XGZQIG9yIFxmSWZ0cFxmUCwgYnV0IG90aGVyIHBhY2thZ2VzIG1heSBwcm92aWRlIGFkZGl0aW9uYWwgbWV0aG9kcywKK2VnLiB0aGUgXGZJYXB0XGZQIGFjY2VzcyBtZXRob2QgcHJvdmlkZWQgYnkgdGhlIFxmQmFwdFxmUCBwYWNrYWdlLgorLnNwCitFbCB1c28gZGVsIG3pdG9kbyBkZSBhY2Nlc28gdu1hIFxmSWFwdFxmUCBlcyBhbHRhbWVudGUgcmVjb21lbmRhZG8uCisuc3AKKy5TUyB1cGRhdGUKK0FjdHVhbGl6YSBsYSBsaXN0YSBkaXNwb25pYmxlIGRlIHBhcXVldGVzLgorLnNwCitPYnRpZW5lIHVuYSBsaXN0YSBkZSB2ZXJzaW9uZXMgZGlzcG9uaWJsZXMgZGUgcGFxdWV0ZXMgZGVzZGUgdW4gcmVwb3NpdG9yaW8sCitjb25maWd1cmFkbyBwb3IgZWwgbel0b2RvIGRlIGFjY2VzbyBzZWxlY2Npb25hZG8sIHkgYWN0dWFsaXphIGxhIGJhc2UgZGUKK2RhdG9zIGRlIGRwa2cuIEhhYml0dWFsbWVudGUsIGVsIHJlcG9zaXRvcmlvIHByb3BvcmNpb25hIGxhIGxpc3RhIGRlCitwYXF1ZXRlcyBtZWRpYW50ZSBmaWNoZXJvcyBsbGFtYWRvcyBcZkJQYWNrYWdlc1xmUCBvIFxmQlBhY2thZ2VzLmd6XGZQLiBMb3MKK3Jlc3BvbnNhYmxlcyBkZSByZXBvc2l0b3Jpb3MgcHVlZGVuIGdlbmVyYXIgZXN0b3MgZmljaGVyb3MgYSB0cmF26XMgZGVsCitwcm9ncmFtYSBcZkJkcGtnXC1zY2FucGFja2FnZXMoMSlcZlAuCisuc3AKK0xvcyBkZXRhbGxlcyBkZSBsYSBhY2Np824gZGUgYWN0dWFsaXphciBkZXBlbmRlbiBkZWwgbel0b2RvIGRlIGFjY2VzbyBxdWUgc2UKK2hheWEgaW1wbGVtZW50YWRvLiBOb3JtYWxtZW50ZSBlc3RlIHByb2Nlc28gZXMgYXV0b23hdGljbyB5IG5vIHJlcXVpZXJlIGxhCitpbnRlcnZlcm5jafNuIGRlbCB1c3VhcmlvLgorLnNwCisuU1Mgc2VsZWN0CitFeGFtaW5hIG8gZ2VzdGlvbmEgbGEgc2VsZWNjafNuIGRlIHBhcXVldGVzIHkgc3VzIHJlc3BlY3RpdmFzIGRlcGVuZGVuY2lhcy4KKy5zcAorRXN0YSBlcyBsYSBmdW5jafNuIHByaW5jaXBhbCBkZSBcZkJkc2VsZWN0XGZQLiBFbiBsYSBwYW50YWxsYSBkZSBzZWxlY2Np824sIGVsCit1c3VhcmlvIHB1ZWRlIGV4YW1pbmFyIHVuYSBsaXN0YSBkZSB0b2RvcyBsb3MgcGFxdWV0ZXMgZGlzcG9uaWJsZXMgZQoraW5zdGFsYWRvcy4gQ3VhbmRvIHNlIGVqZWN1dGEgY29uIHBlcm1pc29zIGRlIGFkbWluaXN0cmFkb3IgdGFtYmnpbiBlcworcG9zaWJsZSBjYW1iaWFyIGVsIGVzdGFkbyBkZSBsYSBzZWxlY2Np824gaW50ZXJhY3RpdmFtZW50ZS4gXGZCZHNlbGVjdFxmUAorcmVnaXN0cmEgbGFzIGltcGxpY2FjaW9uZXMgZGUgZXN0b3MgY2FtYmlvcyBlbiByZWxhY2nzbiBhIG90cm9zIHBhcXVldGVzCitkZXBlbmRlbmNpYSBvIHF1ZSBlbnRyYW4gZW4gY29uZmxpY3RvLgorLnNwCitDdWFuZG8gaGF5IHVuIGNvbmZsaWN0bywgbyBiaWVuIHVuYSBkZXBlbmRlbmNpYSBmYWxsYSwgc2UgbXVlc3RyYSBsYQorcGFudGFsbGEgZGUgcmVzb2x1Y2nzbiBkZSBkZXBlbmRlbmNpYXMuIEVuIGVzdGEgcGFudGFsbGEgYXBhcmVjZSB1bmEgbGlzdGEKK2RlIHBhcXVldGVzIGNvbmZsaWN0aXZvcyBvIGRlcGVuZGllbnRlcywgeSBwb3IgcGFyYSBjYWRhIHBhcXVldGUgZW4gbGEKK2xpc3RhLCBzZSBtdWVzdHJhIGxhIHJhevNuIGRlIHN1IGFwYXJpY2nzbiBlbiBlbGxhLiBFbCB1c3VhcmlvIHB1ZWRlCitlamVjdXRhciBsYXMgc3VnZXJlbmNpYXMgcXVlIFxmQmRzZWxlY3RcZlAgb2ZyZWNlLCBldml0YXJsYXMsIG8gYmllbiBkZXNoYWNlcgorbG9zIGNhbWJpb3MgaGVjaG9zLCBpbmNsdXllbmRvIGFxdWVsbG9zIGVuIGxvcyBxdWUgc2UgZGVqYXJvbiBkZXBlbmRlbmNpYXMgbworY29uZmxpY3RvcyBzaW4gcmVzb2x2ZXIuCisuc3AKK0EgY29udGludWFjafNuIHNlIGV4cGxpY2EgY29uIG3hcyBkZXRhbGxlIGVsIHVzbyBkZSBsYSBwYW50YWxsYSBpbnRlcmFjdGl2YQorZGUgc2VsZWNjafNuIGRlIHBhcXVldGVzLgorLnNwCisuU1MgaW5zdGFsbAorSW5zdGFsYSBsb3MgcGFxdWV0ZXMgc2VsZWNjaW9uYWRvcy4KKy5zcAorRWwgbel0b2RvIGRlIGFjY2VzbyBjb25maWd1cmFkbyBkZXNjYXJnYXLhIGxvcyBwYXF1ZXRlcyBpbnN0YWxhYmxlcyBvCithY3R1YWxpemFibGVzIGRlc2RlIGxvcyByZXBvc2l0b3Jpb3MsIHkgbG9zIGluc3RhbGFy4SB1c2FuZG8KK1xmQmRwa2dcZlAuIERlcGVuZGllbmRvIGRlIGxhIGltcGxlbWVudGFjafNuIGRlbCBt6XRvZG8gZGUgYWNjZXNvLCB0b2RvcyBsb3MKK3BhcXVldGVzIHNlIHB1ZWRlbiBkZXNjYXJnYXIgcHJldmlhbWVudGUgYSBsYSBpbnN0YWxhY2nzbiwgbyBiaWVuIGN1YW5kbyBzZQorcmVxdWllcmEuIEFsZ3Vub3Mgbel0b2RvcyBkZSBhY2Nlc28gcG9kcu1hbiBib3JyYXIgcGFxdWV0ZXMgcXVlIHNlIG1hcmNhcm9uCitwYXJhIHN1IGVsaW1pbmFjafNuLgorLnNwCitTaSBvY3VycmUgYWxn+m4gZXJyb3IgZHVyYW50ZSBsYSBpbnN0YWxhY2nzbiwgbm9ybWFsbWVudGUgc2UgYWNvbnNlamEKK2VqZWN1dGFyIGxhIGluc3RhbGFjafNuIG51ZXZhbWVudGUuIEVuIGxhIG1heW9y7WEgZGUgbG9zIGNhc29zIGxvcyBwcm9ibGVtYXMKK2Rlc2FwYXJlY2Vy4W4gbyBiaWVuIHNlIHJlc29sdmVy4W4uIFNpIGVsIHByb2JsZW1hIHBlcnNpc3RlIG8gbGEgaW5zdGFsYWNp824KK3NlIGVqZWN1dPMgZGUgZm9ybWEgaW5jb3JyZWN0YSwgbGUgcm9nYW1vcyBpbnZlc3RpZ3VlIGxhcyBjYXVzYXMgeQorY2lyY3Vuc3RhbmNpYXMgZGVsIHByb2JsZW1hLCB5IHJlbWl0YSB1biBpbmZvcm1lIGRlIGZhbGxvcyBhbCBzaXN0ZW1hIGRlCitzZWd1aW1pZW50byBkZSBmYWxsb3MgZGUgRGViaWFuLiBQdWVkZSBlbmNvbnRyYXIgbGFzIGluc3RydWNjaW9uZXMKK2NvcnJlc3BvbmRpZW50ZXMgZW4gq2h0dHA6Ly9idWdzLmRlYmlhbi5vcmcvuywgbyBiaWVuIGxleWVuZG8gbGEKK2RvY3VtZW50YWNp824gZGUgbG9zIHByb2dyYW1hcyBcZkJidWcoMSlcZlAgbyBcZkJyZXBvcnRidWcoMSlcZlAsIHNpIGVzIHF1ZSBlc3ThbgoraW5zdGFsYWRvcy4KKy5zcAorTG9zIGRldGFsbGVzIGFjZXJjYSBkZSBsYSBhY2Np824gZGUgaW5zdGFsYXIgZGVwZW5kZW4gZGUgbGEgaW1wbGVtZW50YWNp824KK2RlbCBt6XRvZG8gZGUgYWNjZXNvLiBQdWVkZSBxdWUgc2UgcmVxdWllcmEgbGEgYXRlbmNp824gY29tcGxldGEgZGVsIHVzdWFyaW8KK2R1cmFudGUgbGEgaW5zdGFsYWNp824sIGNvbmZpZ3VyYWNp824gbyBlbGltaW5hY2nzbiBkZSBsb3MgcGFxdWV0ZXMKK2NvcnJlc3BvbmRpZW50ZXMuIEVzdG8gZGVwZW5kZSBleGNsdXNpdmFtZW50ZSBkZSBsb3Mgc2NyaXB0cyBkZWwgbWFudGVuZWRvcgorZGUgbG9zIHBhcXVldGVzLiBBbGd1bm9zIHBhcXVldGVzIGhhY2VuIHVzbyBkZSBsYSBiaWJsaW90ZWNhIGRlCitcZkJkZWJjb25mKDgpXGZQLCBwZXJtaXRpZW5kbyBhc+0gdW5hIGluc3RhbGFjafNuIG3hcyBmbGV4aWJsZSBvIGluY2x1c28gbeFzCithdXRvbWF0aXphZGEuCisuc3AKKy5TUyBjb25maWcKK0NvbmZpZ3VyYSBjdWFscXVpZXIgcGFxdWV0ZSBwcmV2aWFtZW50ZSBpbnN0YWxhZG8sIHBlcm8gbm8gY29uZmlndXJhZG8KK3RvdGFsbWVudGUuCisuc3AKKy5TUyByZW1vdmUKK0VsaW1pbmEgbyBwdXJnYSAoTi5ULiBlcyBkZWNpciwgZWxpbWluYSBsb3MgZmljaGVyb3MgZGUgY29uZmlndXJhY2nzbikgbG9zCitwYXF1ZXRlcyBpbnN0YWxhZG9zIHF1ZSBlc3TpbiBtYXJjYWRvcyBwYXJhIHN1IGVsaW1pbmFjafNuLgorLnNwCisuU1MgcXVpdAorU2FsaXIgZGUgXGZCZHNlbGVjdFxmUAorLnNwCitUZXJtaW5hIGVsIHByb2dyYW1hIGNvbiDpeGl0byAoZWwgY/NkaWdvIGRlIGVycm9yIGRldnVlbHRvIGVzIDApLgorLnNwCisuCisuU0ggIk1hbmlwdWxhY2nzbiBkZSBzZWxlY2Npb25lcyBkZSBwYXF1ZXRlcyIKKy5zcAorLlNTIEludHJvZHVjY2nzbgorLnNwCitcZkJkc2VsZWN0XGZQIGV4cG9uZSBkaXJlY3RhbWVudGUgYWwgYWRtaW5pc3RyYWRvciBhIGFsZ3VuYXMgZGUgbGFzCitjb21wbGVqaWRhZGVzIHJlbGFjaW9uYWRhcyBjb24gbGEgZ2VzdGnzbiBkZSBncmFuZGVzIGNvbmp1bnRvcyBkZSBwYXF1ZXRlcworY29uIG11Y2hhcyBkZXBlbmRlbmNpYXMgZW50cmVsYXphZGFzLiBFbCB1c3VhcmlvIHF1ZSBubyBlc3TpIGZhbWlsaWFyaXphZG8KK2NvbiBsb3MgY29uY2VwdG9zIHkgZWwgc2lzdGVtYSBkZSBnZXN0afNuIGRlIHBhcXVldGVzIGRlIERlYmlhbiBwdWVkZQorZW5jb250cmFyIGVzdGUgcHJvY2VzbyB1biB0YW50byBhYnJ1bWFkb3IuIEEgcGVzYXIgZGUgcXVlIGVsIG9iamV0aXZvIGRlCitcZkJkc2VsZWN0XGZQIGVzIHNlciB1biBwcm9ncmFtYSBxdWUgZmFjaWxpdGUgbGEgZ2VzdGnzbiB5IGFkbWluaXN0cmFjafNuIGRlCitwYXF1ZXRlcywgc/NsbyBsbyBoYWNlIGRlIGZvcm1hIGluc3RydW1lbnRhbCwgcG9yIGxvIHF1ZSBubyBzZSBwdWVkZQorY29uc2lkZXJhciBjb21vIHVuIHN1YnN0aXR1dG8gZGUgbG9zIGNvbm9jaW1pZW50b3MgeSBoYWJpbGlkYWRlcyBkZSB1bgorYWRtaW5pc3RyYWRvci4gU2UgcmVxdWllcmUgcXVlIGVsIHVzdWFyaW8gZXN06SBmYW1pbGlhcml6YWRvIGNvbiBsb3MKK2NvbmNlcHRvcyBzdWJ5YWNlbnRlcyBhbCBzaXN0ZW1hIGRlIHBhcXVldGVzIGRlIERlYmlhbi4gRW4gY2FzbyBkZSBkdWRhcywKK2NvbnN1bHRlIGxhIHDhZ2luYSBkZSBtYW51YWwgZGUgXGZCZHBrZyg4KVxmUCB5IGVsIE1hbnVhbCBkZSBOb3JtYXMgZGUgRGViaWFuLgorLnNwCitBIG1lbm9zIHF1ZSBzZSBlamVjdXRlIFxmQmRzZWxlY3RcZlAgZW4gbW9kbyBleHBlcnRvIG8gaW50ZXJtZWRpbywgc2UgbXVlc3RyYQordW5hIHBhbnRhbGxhIGRlIGF5dWRhIGN1YW5kbyBzZSBzZWxlY2Npb25hIGVzdGEgYWNjafNuIGRlc2RlIGVsIG1lbvouIFNlCithY29uc2VqYSBcZklmZXJ2aWVudGVtZW50ZVxmUCBhbCB1c3VhcmlvIHF1ZSBlc3R1ZGllIHRvZGEgbGEgaW5mb3JtYWNp824KK3ByZXNlbnRhZGEgZW4gbGFzIHBhbnRhbGxhcyBkZSBheXVkYS4gTGEgYXl1ZGEgZW4gbO1uZWEgcHVlZGUgb2J0ZW5lcnNlIGVuCitjdWFscXVpZXIgbW9tZW50byBwdWxzYW5kbyBsYSB0ZWNsYSBcZkKrP7tcZlAuCisuc3AKKy5TUyAiRGlzcG9zaWNp824gZGUgbGEgcGFudGFsbGEiCisuc3AKK0xhIHBhbnRhbGxhIGRlIHNlbGVjY2nzbiBlc3ThIGRpdmlkaWRhIGVuIGRvcyBwYXJ0ZXMsIHN1cGVyaW9yIGUgaW5mZXJpb3IsCitkZSBmb3JtYSBwcmVkZWZpbmlkby4gTGEgcGFydGUgc3VwZXJpb3IgbXVlc3RyYSBsYSBsaXN0YSBkZSBwYXF1ZXRlcy4gUHVlZGUKK3NlbGVjY2lvbmFyIHVuIHBhcXVldGUgaW5kaXZpZHVhbCBwdWxzYW5kbyBzb2JyZSDpbCwgbyB1biBncnVwbyBkZSBwYXF1ZXRlcywKK3NpIGVzIHF1ZSBzZSBwdWVkZSwgc2VsZWNjaW9uYW5kbyBsYSBjYWJlY2VyYSBkZWwgZ3J1cG8uIExhIHBhcnRlIGluZmVyaW9yCitkZSBsYSBwYW50YWxsYSBtdWVzdHJhIGFsZ3Vub3MgZGUgbG9zIGRldGFsbGVzIGRlbCBwYXF1ZXRlIHNlbGVjY2lvbmFkbyBlbgorbGEgcGFydGUgc3VwZXJpb3IgZGUgbGEgcGFudGFsbGEuIEVsIHRpcG8gZGUgZGV0YWxsZSBtb3N0cmFkbyBwdWVkZSB2YXJpYXIuCisuc3AKK1B1bHNhciBsYSB0ZWNsYSBcZkKrSbtcZlAgY29ubXV0YSBsYSBsaXN0YSBkZSBwYXF1ZXRlcyBhIHBhbnRhbGxhIGNvbXBsZXRhLCB1bmEKK3Zpc3RhIGF1bWVudGFkYSBkZSBsb3MgZGV0YWxsZXMgZGUgbG9zIHBhcXVldGVzLCBvIGxhIGRpdmlkZSBsYSBwYW50YWxsYQorc2lt6XRyaWNhbWVudGUuCisuc3AKKy5TUyAiRGV0YWxsZXMgZGUgbGEgdmlzdGEgZGUgcGFxdWV0ZXMuIgorLnNwCitQb3Igb21pc2nzbiBzZSBtdWVzdHJhIHVuYSBkZXNjcmlwY2nzbiBiYXN0YW50ZSBleHRlbnNhIGRlbCBwYXF1ZXRlCitzZWxlY2Npb25hZG8gZW4gbGEgbGlzdGEuCitQdWVkZSBtb2RpZmljYXIgZWwgdGlwbyBkZSBkZXRhbGxlcyBwdWxzYW5kbyBsYSB0ZWNsYSBcZkKrabtcZlAuCitMYXMgb3BjaW9uZXMgcG9zaWJsZXMgc29uOgorIFwtIExhIGRlc2NyaXBjafNuIGV4dGVuZGlkYQorIFwtIExhIGluZm9ybWFjafNuIGRlIGNvbnRyb2wgZGUgbGEgdmVyc2nzbiBpbnN0YWxhZGEKKyBcLSBMYSBpbmZvcm1hY2nzbiBkZSBjb250cm9sIGRlIGxhIHZlcnNp824gZGlzcG9uaWJsZQorLnNwCitMYSBwYW50YWxsYSBkZSByZXNvbHVjafNuIGRlIGRlcGVuZGVuY2lhcyB0YW1iaeluIG9mcmVjZSBsYSBwb3NpYmlsaWRhZCBkZQordmVyIGxvcyBwb3NpYmxlcyBwcm9ibGVtYXMgZGUgZGVwZW5kZW5jaWFzIG8gY29uZmxpY3RvcyBzaW4gcmVzb2x2ZXIKK3JlbGFjaW9uYWRvcyBjb24gZWwgcGFxdWV0ZSBxdWUgY2F1c2EgbG9zIHByb2JsZW1hcy4KKy5zcAorLlNTICJMaXN0YSBkZSBlc3RhZG8gZGUgbG9zIHBhcXVldGVzIgorLnNwCitMYSBwYW50YWxsYSBwcmluY2lwYWwgbXVlc3RyYSB1bmEgbGlzdGEgZGUgdG9kb3MgbG9zIHBhcXVldGVzIGNvbm9jaWRvcyBwb3IKK2VsIHNpc3RlbWEgZGUgZ2VzdGnzbiBkZSBwYXF1ZXRlcyBkZSBEZWJpYW4uIEVzdG8gaW5jbHV5ZSBsb3MgcGFxdWV0ZXMKK2luc3RhbGFkb3MgZW4gZWwgc2lzdGVtYSB5IHRhbWJp6W4gYXF1ZWxsb3MgY29ub2NpZG9zIG1lZGlhbnRlIGxhIGJhc2UgZGUKK2RhdG9zIGRlIHBhcXVldGVzIGRpc3BvbmlibGVzLgorLnNwCitQYXJhIGNhZGEgcGFxdWV0ZSwgbGEgbGlzdGEgbXVlc3RyYSBlbCBlc3RhZG8sIHByaW9yaWRhZCwgc2VjY2nzbiwgbGFzCit2ZXJzaW9uZXMgaW5zdGFsYWRhIHkgZGlzcG9uaWJsZSwgZWwgbm9tYnJlIGRlbCBwYXF1ZXRlIHkgc3UgZGVzY3JpcGNp824KK2NvcnRhLCB0b2RvIGVzdG8gZW4gdW5hIHNvbGEgbO1uZWEuIFB1bHNhciBsYSB0ZWNsYSBcZkKrVrtcZlAgY29ubXV0YSBsYQorYXBhcmljafNuIGRlIGxhIHZlcnNp824gaW5zdGFsYWRhLCBvIGxhIGRpc3BvbmlibGUuIExhIHRlY2xhIFxmQqt2u1xmUCBtb2RpZmljYQorbGEgcGFudGFsbGEgZGVsIGVzdGFkbyBkZWwgcGFxdWV0ZSBhIGxhIGZvcm1hIGJyZXZlIG8gaW5mb3JtYXRpdmEuIExhIGZvcm1hCiticmV2ZSBlcyBsYSBvcGNp824gcHJlZGVmaW5pZG8uCisuc3AKK0xhIGZvcm1hIGJyZXZlIGRlbCBlc3RhZG8gY29uc2lzdGUgZGUgY3VhdHJvIHBhcnRlczogdW5hIG1hcmNhIGRlIGZhbGxvLCBsYQorY3VhbCBub3JtYWxtZW50ZSBkZWJlcu1hIGVzdGFyIHZhY+1hLCBlbCBlc3RhZG8gYWN0dWFsLCBlbCBlc3RhZG8gZGUgbGEKK/psdGltYSBzZWxlY2Np824geSBlbCBlc3RhZG8gZGUgbGEgc2VsZWNjafNuIGFjdHVhbC4gTGFzIGRvcyBwcmltZXJhcyBlc3ThbgorZW4gZGlyZWN0YSByZWxhY2nzbiBjb24gZWwgZXN0YWRvIGFjdHVhbCBkZWwgcGFxdWV0ZSwgZWwgc2VndW5kbyBwYXIgY29uIGxhcworc2VsZWNjaW9uZXMgZGVsIHVzdWFyaW8uCisuc3AKK0Fxde0gdGllbmUgdW5hIHRhYmxhIGRlIHNpZ25pZmljYWRvcyBkZSBpbmRpY2Fkb3JlcyBkZWwgZXN0YWRvIGRlbCBwYXF1ZXRlOgorIE1hcmNhIGRlIGVycm9yOgorICBcZkl2YWPtb1xmUCAgIE5vIGhheSBlcnJvci4KKyAgXGZCUlxmUCAgICAgICBFcnJvciBzZXJpbywgbmVjZXNpdGEgdW5hIHJlaW5zdGFsYWNp824uCisgRXN0YWRvIGRlIGxhIGluc3RhbGFjafNuOgorICBcZkl2YWPtb1xmUCAgIE5vIGVzdOEgaW5zdGFsYWRvLgorICBcZkIqXGZQICAgICAgIFRvdGFsbWVudGUgaW5zdGFsYWRvIHkgY29uZmlndXJhZG8uCisgIFxmQlwtXGZQICAgICAgIE5vIGVzdOEgaW5zdGFsYWRvLCBwZXJvIGH6biBleGlzdGVuIGFyY2hpdm9zIGRlCisgICAgICAgICAgICAgY29uZmlndXJhY2nzbi4KKyAgXGZCVVxmUCAgICAgICBEZXNlbXBhcXVldGFkbywgcGVybyBubyBjb25maWd1cmFkbyBwb3IgZWwgbW9tZW50by4KKyAgXGZCQ1xmUCAgICAgICBNZWRpb1wtY29uZmlndXJhZG8gKG9jdXJyafMgdW4gZXJyb3IpLgorICBcZkJJXGZQICAgICAgIE1lZGlvXC1pbnN0YWxhZG8gKG9jdXJyafMgdW4gZXJyb3IpLgorIFNlbGVjY2nzbiBhY3R1YWwgeSBzb2xpY2l0YWRhOgorICBcZkIqXGZQICAgICAgIE1hcmNhZG8gcGFyYSBzdSBpbnN0YWxhY2nzbiBvIGFjdHVhbGl6YWNp824uCisgIFxmQlwtXGZQICAgICAgIE1hcmNhZG8gcGFyYSBzdSBlbGltaW5hY2nzbiwgbm8gc2UgZWxpbWluYXLhbgorICAgICAgICAgICAgIGxvcyBmaWNoZXJvcyBkZSBjb25maWd1cmFjafNuLgorICBcZkI9XGZQICAgICAgIEJsb3F1ZWFkbzogZWwgcGFxdWV0ZSBubyBzZSBwcm9jZXNhcuEgZW4gYWJzb2x1dG8uCisgIFxmQl9cZlAgICAgICAgRWwgcGFxdWV0ZSBlc3ThIG1hcmNhZG8gcGFyYSBzdSBwdXJnYWNp824sCisgICAgICAgICAgICAgdGFtYmnpbiBlbGltaW5hIGxvcyBmaWNoZXJvcyBkZSBjb25maWd1cmFjafNuLgorICBcZkJuXGZQICAgICAgIEVsIHBhcXVldGUgZXMgbnVldm8geSBh+m4gbm8gc2UgaGEgbWFyY2Fkby4KKy5zcAorLlNTICJNb3ZpbWllbnRvIGRlbCBjdXJzb3IgeSBkZSBsYSBwYW50YWxsYSIKKy5zcAorTGEgbGlzdGEgZGUgc2VsZWNjafNuIGRlIHBhcXVldGVzIHkgbGEgcGFudGFsbGEgZGUgcmVzb2x1Y2nzbiBkZQorZGVwZW5kZW5jaWFzIHkgY29uZmxpY3RvcyBzZSBwdWVkZW4gZXhwbG9yYXIgdXNhbmRvIGxhcyBzaWd1aWVudGVzIHRlY2xhczoKKy5icgorICBcZkJwLCBhcnJpYmEsIGtcZlAgICAgICAgTXVldmUgZWwgY3Vyc29yIGhhY2lhIGFycmliYS4KKyAgXGZCbiwgYWJham8sIGpcZlAgICAgICAgIE11ZXZlIGVsIGN1cnNvciBoYWNpYSBhYmFqby4KKyAgXGZCUCwgcmVw4WcsIHJldG9ybm9cZlAgIE11ZXZlIGxhIGxpc3RhIHVuYSBw4WdpbmEgaGFjaWEgYXJyaWJhLgorICBcZkJOLCBhdnDhZywgRXNwYWNpb1xmUCAgTXVldmUgbGEgbGlzdGEgdW5hIHDhZ2luYSBoYWNpYSBhYmFqby4KKyAgXGZCXnBcZlAgICAgICAgICAgICAgICAgIE11ZXZlIGxhIGxpc3RhIHVuYSBs7W5lYSBoYWNpYSBhcnJpYmEuCisgIFxmQl5uXGZQICAgICAgICAgICAgICAgICBNdWV2ZSBsYSBsaXN0YSB1bmEgbO1uZWEgaGFjaWEgYWJham8uCisgIFxmQnQsIEluaWNpb1xmUCAgICAgICAgICBTYWx0YSBhbCBwcmluY2lwaW8gZGUgbGEgbGlzdGEuCisgIFxmQmUsIEZpblxmUCAgICAgICAgICAgICBTYWx0YSBhbCBmaW4gZGUgbGEgbGlzdGEuCisgIFxmQnVcZlAgICAgICAgICAgICAgICAgICBNdWV2ZSBpbmZvIHVuYSBw4WdpbmEgaGFjaWEgYXJyaWJhLgorICBcZkJkXGZQICAgICAgICAgICAgICAgICAgTXVldmUgaW5mbyB1bmEgcOFnaW5hIGhhY2lhIGFiYWpvLgorICBcZkJedVxmUCAgICAgICAgICAgICAgICAgTXVldmUgaW5mbyB1bmEgbO1uZWEgaGFjaWEgYWJham8uCisgIFxmQl5kXGZQICAgICAgICAgICAgICAgICBNdWV2ZSBpbmZvIHVuYSBs7W5lYSBoYWNpYSBhYmFqby4KKyAgXGZCQiwgaXpxdWllcmRhXGZQICAgICAgIEV4aGliZSBsYSBwYW50YWxsYSAxLzMgaGFjaWEgbGEgaXpxdWllcmRhLgorICBcZkJGLCBkZXJlY2hhXGZQICAgICAgICAgRXhoaWJlIGxhIHBhbnRhbGxhIDEvMyBoYWNpYSBsYSBkZXJlY2hhLgorICBcZkJeYlxmUCAgICAgICAgICAgICAgICAgRXhoaWJlIHVuIGNhcuFjdGVyIGhhY2lhIGxhIGl6cXVpZXJkYS4KKyAgXGZCXmZcZlAgICAgICAgICAgICAgICAgIEV4aGliZSB1biBjYXLhY3RlciBoYWNpYSBsYSBkZXJlY2hhLgorLnNwCisuU1MgIkJ1c2NhciB5IG9yZGVuYXIiCisuc3AKK1B1ZWRlIHJlYWxpemFyIGL6c3F1ZWRhcyBkZSBwYXF1ZXRlcyBlbiBsYSBsaXN0YSBtZWRpYW50ZSBlbCBub21icmUuIFB1ZWRlCitoYWNlcmxvIHB1bHNhbmRvIGxhIHRlY2xhIFxmQqsvu1xmUCB5IGVzY3JpYmllbmRvIGVsIG5vbWJyZSBkZWwgcGFxdWV0ZSBxdWUKK2Rlc2VhIGJ1c2Nhci4gRXN0ZSBub21icmUgc2UgaW50ZXJwcmV0YSBjb21vIHVuYSBleHByZXNp824gcmVndWxhciBkZQorYWN1ZXJkbyBhIFxmQnJlZ2V4XGZQKDcpLiBTaSBzZSBh8WFkZSBcZkKrL2S7XGZQIGEgbGEgYvpzcXVlZGEsIGRzZWxlY3QgYnVzY2Fy4QordGFtYmnpbiBlbiBsYXMgZGVzY3JpcGNpb25lcy4gU2kgc2UgYfFhZGUgXGZCqy9pu1xmUCBsYSBi+nNxdWVkYSBubworZGlzY3JpbWluYXLhIGVudHJlIG1hefpzY3VsYXMgeSBtaW76c2N1bGFzLiBQdWVkZSBjb21iaW5hciBlc3RhcyBkb3MKK29wY2lvbmVzIGRlIGVzdGEgbWFuZXJhOiBcZkKrL2lku1xmUC4gUHVlZGUgcmVwZXRpciBsYSBi+nNxdWVkYSBwdWxzYW5kbyBsYXMKK3RlY2xhcyBcZkKrbrtcZlAgbyBcZkKrXGW7XGZQLCBoYXN0YSBlbmNvbnRyYXIgZWwgcGFxdWV0ZSBxdWUgZXN0YWJhIGJ1c2NhbmRvLiBTaQorbGEgYvpzcXVlZGEgY29taWVuemEgYWwgZmluYWwgZGUgbGEgbGlzdGEsIHN1Ymly4SBhbCBwcmluY2lwaW8geSB0YW1iaeluCitjb250aW51YXLhIGxhIGL6c3F1ZWRhIGRlc2RlIGVzZSBwdW50by4KKy5zcAorRWwgb3JkZW4gZGUgbGEgbGlzdGEgc2UgcHVlZGUgbW9kaWZpY2FyIHB1bHNhbmRvIGxhcyB0ZWNsYXMKK1xmQqtvu1xmUCB5IFxmQqtPu1xmUCByZXBldGlkYW1lbnRlLgorTG9zIHNpZ3VpZW50ZXMgb3JkZW5hbWllbnRvcyBzb24gcG9zaWJsZXM6CisgYWxmYWLpdGljbyAgICAgICAgZGlzcG9uaWJsZSAgICAgICAgICAJIGVzdGFkbworIHByaW9yaWRhZCtzZWNjafNuIGRpc3BvbmlibGUrcHJpb3JpZGFkICBlc3RhZG8rcHJpb3JpZGFkCisgc2VjY2nzbitwcmlvcmlkYWQgZGlzcG9uaWJsZStzZWNjafNuICAgIGVzdGFkbytzZWNjafNuCisuYnIKK1NpIG5vIHNlIHVzYSBleHBs7WNpdGFtZW50ZSBuaW5ndW5vIGRlIGxvcyBtZW5jaW9uYWRvcyBhcnJpYmEsIHNlIHVzYSBlbAorb3JkZW4gYWxmYWLpdGljby4KKy5zcAorLlNTICJNb2RpZmljYXIgc2VsZWNjaW9uZXMuIgorLnNwCitFbCBlc3RhZG8gZGUgbGEgc2VsZWNjafNuIHNvbGljaXRhZGEgZGUgcGFxdWV0ZXMgaW5kaXZpZHVhbGVzIHNlIHB1ZWRlCithbHRlcmFyIG1lZGlhbnRlIGxhcyBzaWd1aWVudGVzIPNyZGVuZXM6CisgIFxmQissIEluc2VydFxmUCAgICBJbnN0YWxhIG8gYWN0dWFsaXphLgorICBcZkI9LCBIXGZQICAgICAgICAgQmxvcXVlYWRvIGVuIGVsIGVzdGFkbyB5IHZlcnNp824gYWN0dWFsLgorICBcZkI6LCBHXGZQICAgICAgICAgRWxpbWluYSBlbCBibG9xdWVvOiBhY3R1YWxpemEgbyBkZWphIHNpbiBpbnN0YWxhci4KKyAgXGZCXC0sIFN1cHJcZlAgICAgICBFbGltaW5hLCBwZXJvIGRlamEgbG9zIGZpY2hlcm9zIGRlIGNvbmZpZ3VyYWNp824uCisgIFxmQl9cZlAgICAgICAgICAgICBFbGltaW5hIHkgYm9ycmEgbG9zIGZpY2hlcm9zIGRlIGNvbmZpZ3VyYWNp824uCisuc3AKK0N1YW5kbyBsb3MgY2FtYmlvcyByZXN1bHRhbiBlbiB1bmEgbyBt4XMgZGVwZW5kZW5jaWFzIG5vIHNhdGlzZmVjaGFzLCBvCit0YW1iaeluIGVuIGNvbmZsaWN0b3MsIFxmQmRzZWxlY3RcZlAgbXVlc3RyYSBhbCB1c3VhcmlvIHVuYSBwYW50YWxsYSBkZQorcmVzb2x1Y2nzbiBkZSBkZXBlbmRlbmNpYXMuIEVzdGEgcGFudGFsbGEgc2UgZXhwbGljYXLhIGVuIGRldGFsbGUgbeFzIGFiYWpvLgorLnNwCitUYW1iaeluIGVzIHBvc2libGUgYXBsaWNhciBlc3RhcyDzcmRlbmVzIGEgZ3J1cG9zIGRlIHNlbGVjY2lvbmVzIGRlCitwYXF1ZXRlcywgYXB1bnRhbmRvIGVsIGN1cnNvciBhIGxhIGNhYmVjZXJhIGRlbCBncnVwby4gRWwgYWdydXBhbWllbnRvCitleGFjdG8gZGUgbG9zIHBhcXVldGVzIGRlcGVuZGUgZGUgbGEgY29uZmlndXJhY2nzbiBkZWwgb3JkZW5hbWllbnRvIGRlIGxhCitsaXN0YS4KKy5zcAorU2UgZGViZSB0b21hciBlbCBjdWlkYWRvIGFwcm9waWFkbyBhbCBhbHRlcmFyIGdydXBvcyBncmFuZGVzIGRlIHNlbGVjY2lvbmVzLAoreWEgcXVlIGVzdG8gcHVlZGUgY3JlYXIgaW5tZWRpYXRhbWVudGUgdW5hIGxhcmdhIGxpc3RhIGRlIGRlcGVuZGVuY2lhcyBzaW4KK3Jlc29sdmVyIG8gY29uZmxpY3RvcyBjb24gb3Ryb3MgcGFxdWV0ZXMsIGxvcyBjdWFsZXMgYXBhcmVjZXLhbiBlbiB1bmEKK3BhbnRhbGxhIPpuaWNhLCBkaWZpY3VsdGFuZG8gc3UgZ2VzdGnzbi4gRW4gbGEgcHLhY3RpY2EsIGFsIG1hbmlwdWxhciBncnVwb3MKK3PzbG8gc29uIPp0aWxlcyBsYXMgb3BlcmFjaW9uZXMgZGUgcmV0ZW5jafNuIKtob2xkuyB5IKt1bmhvbGS7LgorLnNwCisuU1MgIlJlc29sdmVyIHByb2JsZW1hcyBkZSBkZXBlbmRlbmNpYXMgeSBjb25mbGljdG9zIgorLnNwCitDdWFuZG8gZWwgY2FtYmlvIHJlc3VsdGEgZW4gdW5hIG8gbeFzIGRlcGVuZGVuY2lhcyBzaW4gcmVzb2x2ZXIgbworY29uZmxpY3RvcywgXGZCZHNlbGVjdFxmUCBtdWVzdHJhIGFsIHVzdWFyaW8gdW5hIHBhbnRhbGxhIGNvbiBsYSBwb3NpYmxlCitzb2x1Y2nzbiBhbCBwcm9ibGVtYS4gUHJpbWVybywgc2luIGVtYmFyZ28sIHNlIG11ZXN0cmEgdW5hIHBhbnRhbGxhCitpbmZvcm1hdGl2YS4KKy5zcAorTGEgbWl0YWQgc3VwZXJpb3IgZGUgZXN0YSBwYW50YWxsYSBlbnVtZXJhIHRvZG9zIGxvcyBwYXF1ZXRlcyBxdWUgdGVuZHLhbgorY29uZmxpY3RvcywgbyBwcm9ibGVtYXMgZGUgZGVwZW5kZW5jaWFzIHNpbiByZXNvbHZlciwgY29tbyByZXN1bHRhZG8gZGVsCitjYW1iaW8gcmVxdWVyaWRvIHBvciBlbCB1c3VhcmlvLCBhZGVt4XMgZGUgdG9kb3MgbG9zIHBhcXVldGVzIGN1eWEKK2luc3RhbGFjafNuIHNvbHVjaW9uYXLhIGVsIHByb2JsZW1hLiBMYSBtaXRhZCBpbmZlcmlvciBtdWVzdHJhIGxvcyBwcm9ibGVtYXMKK2RlIGRlcGVuZGVuY2lhIG8gY29uZmxpY3RvcyBxdWUgY2F1c2EgZWwgcGFxdWV0ZSBzZWxlY2Npb25hZG8uCisuc3AKK0N1YW5kbyBsYSBzdWJcLWxpc3RhIGRlIHBhcXVldGVzIHNlIGV4aGliZSBpbmljaWFsbWVudGUgcHVlZGUgcXVlIFxmQmRzZWxlY3RcZlAKK3lhIGhheWEgZGVmaW5pZG8gZWwgZXN0YWRvIGRlIHNlbGVjY2nzbiByZXF1ZXJpZG8gZGUgYWxndW5vIGRlIGxvcyBwYXF1ZXRlcworbGlzdGFkb3MsIHBhcmEgYXPtIHJlc29sdmVyIGxvcyBwcm9ibGVtYXMgZGUgZGVwZW5kZW5jaWFzIG8gY29uZmxpY3RvcyBxdWUKK2NhdXNhcm9uIGxhIGFwYXJpY2nzbiBkZSBsYSBwYW50YWxsYSBkZSByZXNvbHVjafNuIGRlCitkZXBlbmRlbmNpYXMuIEhhYml0dWFsbWVudGUsIGxvIG1lam9yIGVzIHNlZ3VpciBsYXMgc3VnZXJlbmNpYXMgcXVlCitcZkJkc2VsZWN0XGZQIHByZXNlbnRhLgorLnNwCitQdWVkZSBkZXZvbHZlciBlbCBlc3RhZG8gZGUgbG9zIHBhcXVldGVzIHNlbGVjY2lvbmFkb3MgZW4gbGEgbGlzdGEgYSBzdQorY29uZmlndXJhY2nzbiBvcmlnaW5hbCwgYXPtIGNvbW8gdGFtYmnpbiBsYXMgZGVwZW5kZW5jaWFzIHNpbiByZXNvbHZlciB5IGxvcworY29uZmxpY3RvcyBxdWUgZ2VuZXJhcm9uLCBwdWxzYW5kbyBsYSB0ZWNsYSBcZkKrUrtcZlAuIFBhcmEgcmVhanVzdGFyIGxhcworc3VnZXJlbmNpYXMgYXV0b23hdGljYXMgcHVsc2UgbGEgdGVjbGEgXGZCq0S7XGZQLCBhdW5xdWUgcGVybWFuZWNlcuEgZWwgY2FtYmlvCitxdWUgY2F1c28gbGEgYXBhcmljafNuIGRlIGxhIHBhbnRhbGxhIGRlIHJlc29sdWNp824gZGUgZGVwZW5kZW5jaWFzLiBQb3IKK/psdGltbywgc2kgcHVsc2EgbGEgdGVjbGEgXGZCq1W7XGZQIGxhcyBzZWxlY2Npb25lcyBzZSBjb25maWd1cmFy4W4gbnVldmFtZW50ZQorY29uIGxvcyB2YWxvcmVzIGF1dG9t4XRpY29zIGRlIGxhcyBzdWdlcmVuY2lhcy4KKy5zcAorLlNTICJFc3RhYmxlY2VyIGxhcyBzZWxlY2Npb25lcyBzb2xpY2l0YWRhcyIKKy5zcAorTGEgdGVjbGEgXGZCSW50cm9cZlAgYWNlcHRhIGxhIGxpc3RhIGFjdHVhbCBkZSBzZWxlY2Npb25lcy4gU2kgXGZCZHNlbGVjdFxmUAorZGV0ZWN0YSBxdWUgbm8gaGF5IHByb2JsZW1hcywgYWNlcHRhcuEgbGFzIG51ZXZhcyBzZWxlY2Npb25lcy4gU2luIGVtYmFyZ28sCitzaSBoYXkgZGVwZW5kZW5jaWFzIHNpbiByZXNvbHZlciBcZkJkc2VsZWN0XGZQIG1vc3RyYXLhIG51ZXZhbWVudGUgbGEgcGFudGFsbGEKK2RlIHJlc29sdWNp824gZGUgZGVwZW5kZW5jaWFzLgorLnNwCitQYXJhIG1vZGlmaWNhciB1bmEgbGlzdGEgZGUgc2VsZWNjaW9uZXMgcXVlIGNyZWEgZGVwZW5kZW5jaWFzIHNpbiByZXNvbHZlciBvCitjb25mbGljdG9zLCB5IGZvcnphciBhIFxmQmRzZWxlY3RcZlAgYSBhY2VwdGFybGEsIHB1bHNlIGxhIHRlY2xhIFxmQqtRu1xmUC4gRXN0bworZGVmaW5lIGxhcyBzZWxlY2Npb25lcyBkZWZpbmlkYXMgcG9yIGVsIHVzdWFyaW8sCitpbmNvbmRpY2lvbmFsbWVudGUuIEdlbmVyYWxtZW50ZSwgbm8gc2UgZGViZXLtYSBoYWNlciBlc3RvIGEgbWVub3MgcXVlIHNlcGEKK2xvIHF1ZSBlc3ThIGhhY2llbmRvLgorLnNwCitFbCBlZmVjdG8gb3B1ZXN0bywgZGVzaGFjZXIgc3VzIGNhbWJpb3MgeSB2b2x2ZXIgaGFjaWEgYXRy4XMgaGFzdGEgcXVlIG5vCit0ZW5nYSBwcm9ibGVtYXMsIHNlIHB1ZWRlIHJlYWxpemFyIHB1bHNhbmRvIGxhIHRlY2xhIFxmQqtYu1xmUCBvIFxmQmVzY2FwZVxmUC4gU2kKK3B1bHNhIHJlcGV0aWRhbWVudGUgZXN0YXMgdGVjbGFzIHB1ZWRlIHJldGlyYXIgY3VhbHF1aWVyIGNhbWJpbyBwZXJqdWRpY2lhbAorYSBsYXMgc2VsZWNjaW9uZXMgZGUgcGFxdWV0ZXMsIHZvbHZpZW5kbyBhc+0gYSBsYSD6bHRpbWEgY29uZmlndXJhY2nzbgorZGVmaW5pZGEuCisuc3AKK1NpIGhhIHJlYWxpemFkbyB1biBlcnJvciBhbCBkZWZpbmlyIGxhIGxpc3RhIGRlIHBhcXVldGVzIHkgZGVzZWEgcmV2ZXJ0aXIKK2xhcyBzZWxlY2Npb25lcyBhY3R1YWxlcyBhIGxvIHF1ZSB5YSBlc3ThIGluc3RhbGFkbyBlbiBlbCBzaXN0ZW1hLCBwdWxzZQorXGZCq0O7XGZQLiBFcyBzaW1pbGFyIGEgdXNhciBsYSBvcmRlbiCrdW5ob2xkuyBzb2JyZSB0b2RvcyBsb3MgcGFxdWV0ZXMsIHBlcm8KK29mcmVjZSB1biBib3TzbiBkZSBw4W5pY28gbeFzIG9idmlvIHBhcmEgYXF1ZWxsb3MgY2Fzb3MgZW4gbG9zIHF1ZSBlbAordXN1YXJpbyBwdWxz8yBcZkJJbnRyb1xmUCBwb3IgZXJyb3IuCisuc3AKKy4KKy5TSCBFTlRPUk5PCisuVFAgCitcZkJIT01FXGZQCitTaSBzZSBkZWZpbmUsIFxmQmRzZWxlY3RcZlAgbG8gdXNhcuEgY29tbyBlbCBkaXJlY3RvcmlvIGRlbCBjdWFsIGxlZXIgZWwKK2ZpY2hlcm8gZGUgY29uZmlndXJhY2nzbiBlc3BlY+1maWNvIGRlbCB1c3VhcmlvLgorLgorLlNIIEZBTExPUworTGEgaW50ZXJmYXogZGUgc2VsZWNjafNuIGRlIHBhcXVldGVzIGRlIFxmQmRzZWxlY3RcZlAgcHVlZGUgcGFyZWNlciBjb25mdXNhCitwYXJhIGFsZ3Vub3MgdXN1YXJpb3MgbnVldm9zLiBFeGlzdGVuIGluZm9ybWVzIGRlIHF1ZSBoYSBsbGV2YWRvIGEgbGFzCits4WdyaW1hcyBhIGV4cGVyaW1lbnRhZG9zIGRlc2Fycm9sbGFkb3JlcyBkZWwgbvpjbGVvLgorLnNwCitMYSBkb2N1bWVudGFjafNuIGVzdOEgaW5jb21wbGV0YS4KKy5zcAorTm8gaGF5IG5pbmd1bmEgb3BjafNuIGRlIGF5dWRhIGVuIGVsIG1lbvogcHJpbmNpcGFsLgorLnNwCitMYSBsaXN0YSBkZSBwYXF1ZXRlcyBkaXNwb25pYmxlcyBubyBzZSBwdWVkZSByZWR1Y2lyLgorLnNwCitMb3Mgb3Ryb3Mgbel0b2RvcyBkZSBhY2Nlc28gbm8gdGllbmVuIHRhbnRhIGNhbGlkYWQgY29tbyBlbCBt6XRvZG8gcXVlCitvZnJlY2UgYXB0LiBVc2UgZWwgbel0b2RvIGRlIGFjY2VzbyBxdWUgYXB0IG9mcmVjZS4gQWRlbeFzIGRlIHF1ZSBubyBlc3ThCityb3RvLCBlcyBtdWNobyBt4XMgZmxleGlibGUgcXVlIGxvcyBt6XRvZG9zIGRlIGFjY2VzbyBpbnRlZ3JhZG9zLgorLgorLlNIICJWyUFTRSBUQU1CSclOIgorXGZCZHBrZ1xmUCgxKSwgXGZCYXB0XC1nZXRcZlAoOCksIFxmQnNvdXJjZXMubGlzdFxmUCg1KSwgXGZCZGViXGZQKDUpLgorLgorLlNIIEFVVE9SRVMKK1xmQmRzZWxlY3RcZlAgZnVlIGVzY3JpdG8gcG9yIElhbiBKYWNrc29uIChpamFja3NvbkBnbnUuYWkubWl0LmVkdSkuIFB1ZWRlIHZlcgordW5hIGxpc3RhIGNvbXBsZXRhIGRlIGNvbnRyaWJ1eWVudGVzIGNvbiCrZHNlbGVjdCBcLVwtdmVyc2lvbrsuCisuYnIKK0VzdGEgcOFnaW5hIGRlIG1hbnVhbCBmdWUgZXNjcml0YSBwb3IgSnVobyBWdW9yaSA8amF2dW9yaUBjYy5oZWxzaW5raS5maQorPiwgSm9zaXAgUm9kaW4geSBKb29zdCBrb29pai4KKworLlNIICJUUkFEVUNUT1IiCitSdWR5IEdvZG95IDxydWR5QGtlcm5lbFwtcGFuaWsub3JnPiwKK1J1YuluIFBvcnJhcyA8bmFob29AaW5pY2lhLmVzPiwKK0JydW5vIEJhcnJlcmEgQy4gPGJydW5vLmJhcnJlcmFAaWdsb28uY2w+LAorQ2FybG9zIEl6cXVpZXJkbyA8Z2hlZXNoQGVydGlzLm5ldD4sCitFc3RlYmFuIE1hbmNoYWRvIHkKK05PSy4KK0RlYmlhbiBMMTBuIFNwYW5pc2ggPGRlYmlhblwtbDEwblwtc3BhbmlzaEBsaXN0cy5kZWJpYW4ub3JnPi4KKy5icgorUmV2aXNpb25lcyBwb3IgU2FudGlhZ28gVmlsYSA8c2FudmlsYUB1bmV4LmVzPiwKK0phdmllciBGZXJu4W5kZXpcLVNhbmd1aW5vLCBSdWLpbiBQb3JyYXMsCitMdWlzIFVyaWJlIHkgT21hciBDYW1wYWduZS4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL2VzL2RzZWxlY3QuY2ZnLjUgYi9kcGtnLTEuMTYuMS4xL21hbi9lcy9kc2VsZWN0LmNmZy41Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjY3NzdkZGEKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9lcy9kc2VsZWN0LmNmZy41CkBAIC0wLDAgKzEsNDEgQEAKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlRIIGRzZWxlY3QuY2ZnIDUgMjAxMVwtMDdcLTAzICJQcm95ZWN0byBEZWJpYW4iICJIZXJyYW1pZW50YXMgZGUgZHBrZyIKKy5TSCBOT01CUkUKK2RzZWxlY3QuY2ZnIFwtIEZpY2hlcm8gZGUgY29uZmlndXJhY2nzbiBkZSBkc2VsZWN0CisuCisuU0ggREVTQ1JJUENJ004KK1RoaXMgZmlsZSBjb250YWlucyBkZWZhdWx0IG9wdGlvbnMgZm9yIGRzZWxlY3QuIEVhY2ggbGluZSBjb250YWlucyBhIHNpbmdsZQorb3B0aW9uIHdoaWNoIGlzIGV4YWN0bHkgdGhlIHNhbWUgYXMgYSBub3JtYWwgY29tbWFuZCBsaW5lIG9wdGlvbiBmb3IgZHNlbGVjdAorZXhjZXB0IGZvciB0aGUgbGVhZGluZyBkYXNoZXMgd2hpY2ggYXJlIG5vdCB1c2VkIGhlcmUuIFF1b3RlcyBzdXJyb3VuZGluZworb3B0aW9uIHZhbHVlcyBhcmUgc3RyaXBwZWQuIENvbW1lbnRzIGFyZSBhbGxvd2VkIGJ5IHN0YXJ0aW5nIGEgbGluZSB3aXRoIGEKK2hhc2ggc2lnbiAoIlxmQiNcZlAiKS4KKy4KKy5TSCBGSUNIRVJPUworXGZJL2V0Yy9kcGtnL2RzZWxlY3QuY2ZnLmQvWzBcLTlhXC16QVwtWl9cLV0qXGZQCisuYnIKK1xmSS9ldGMvZHBrZy9kc2VsZWN0LmNmZ1xmUAorLmJyCitcZkl+Ly5kc2VsZWN0LmNmZ1xmUAorLgorLlNIIEFVVE9SCitDb25zdWx0ZSBcZkkvdXNyL3NoYXJlL2RvYy9kcGtnL1RIQU5LU1xmUCBwYXJhIHVuYSBsaXN0YSBkZSBsYXMgcGVyc29uYXMgcXVlCitoYW4gY29udHJpYnVpZG8gYSBcZkJkc2VsZWN0XGZQLgorLgorLlNIICJWyUFTRSBUQU1CSclOIgorXGZCZHNlbGVjdFxmUCgxKS4KKy5TSCAiVFJBRFVDVE9SIgorUnVkeSBHb2RveSA8cnVkeUBrZXJuZWxcLXBhbmlrLm9yZz4sCitSdWLpbiBQb3JyYXMgPG5haG9vQGluaWNpYS5lcz4sCitCcnVubyBCYXJyZXJhIEMuIDxicnVuby5iYXJyZXJhQGlnbG9vLmNsPiwKK0NhcmxvcyBJenF1aWVyZG8gPGdoZWVzaEBlcnRpcy5uZXQ+LAorRXN0ZWJhbiBNYW5jaGFkbyB5CitOT0suCitEZWJpYW4gTDEwbiBTcGFuaXNoIDxkZWJpYW5cLWwxMG5cLXNwYW5pc2hAbGlzdHMuZGViaWFuLm9yZz4uCisuYnIKK1JldmlzaW9uZXMgcG9yIFNhbnRpYWdvIFZpbGEgPHNhbnZpbGFAdW5leC5lcz4sCitKYXZpZXIgRmVybuFuZGV6XC1TYW5ndWlubywgUnVi6W4gUG9ycmFzLAorTHVpcyBVcmliZSB5IE9tYXIgQ2FtcGFnbmUuCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9lcy91cGRhdGUtYWx0ZXJuYXRpdmVzLjggYi9kcGtnLTEuMTYuMS4xL21hbi9lcy91cGRhdGUtYWx0ZXJuYXRpdmVzLjgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzUwZTlmNQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL2VzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuOApAQCAtMCwwICsxLDQyOCBAQAorLlwiIHVwZGF0ZVwtYWx0ZXJuYXRpdmVzLjgKKy5cIiBUaGlzIG1hbiBwYWdlIGlzIGNvcHlyaWdodCAxOTk3IENoYXJsZXMgQnJpc2NvZS1TbWl0aAorLlwiIFRoaXMgaXMgZnJlZSBkb2N1bWVudGF0aW9uOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisuXCIgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQKKy5cIiBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorLlwiIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uICBUaGVyZSBpcyBOTyBXQVJSQU5UWS4gIFlvdSBjYW4KKy5cIiBmaW5kIHRoZSBHTlUgR1BMIGluIC91c3Ivc2hhcmUvY29tbW9uLWxpY2Vuc2VzL0dQTCBvbiBhbnkgRGViaWFuIHN5c3RlbS4KKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlRIIHVwZGF0ZVwtYWx0ZXJuYXRpdmVzIDggMjAxMVwtMDhcLTE0ICJQcm95ZWN0byBEZWJpYW4iICJIZXJyYW1pZW50YXMgZGUgZHBrZyIKKy5TSCBOT01CUkUKK3VwZGF0ZVwtYWx0ZXJuYXRpdmVzIFwtIEdlc3Rp824gZGUgZW5sYWNlcyBzaW1i82xpY29zIHF1ZSBkZXRlcm1pbmFuIPNyZGVuZXMKK3ByZWRlZmluaWRhcworLgorLlNIIFNJTk9QU0lTCitcZkJ1cGRhdGVcLWFsdGVybmF0aXZlc1xmUCBbXGZJb3B0aW9uXGZQLi4uXSBcZkljb21tYW5kXGZQCisuCisuU0ggREVTQ1JJUENJ004KK1xmQnVwZGF0ZVwtYWx0ZXJuYXRpdmVzXGZQIGNyZWEsIGVsaW1pbmEsIGdlc3Rpb25hIHkgbXVlc3RyYSBpbmZvcm1hY2nzbiBzb2JyZQorbG9zIGVubGFjZXMgc2ltYvNsaWNvcyBxdWUgY29uZm9ybWFuIGVsIHNpc3RlbWEgZGUgYWx0ZXJuYXRpdmFzIGRlIERlYmlhbi4KKy5QUAorRXMgcG9zaWJsZSBxdWUgdGVuZ2EgZW4gZWwgc2lzdGVtYSB2YXJpb3MgcHJvZ3JhbWFzIGluc3RhbGFkb3MgYSBsYSB2ZXogcXVlCityZWFsaXphbiBsYSBtaXNtYSBmdW5jafNuLiBQb3IgZWplbXBsbywgbXVjaG9zIHNpc3RlbWFzIHRpZW5lbiB2YXJpb3MKK2VkaXRvcmVzIGRlIHRleHRvIGluc3RhbGFkb3MgYWwgbWlzbW8gdGllbXBvLCBsbyBxdWUgZGVqYSBsYSBlbGVjY2nzbiBkZSBxdekKK2VkaXRvciBkZSB0ZXh0byB1c2FyIGVuIG1hbm9zIGRlbCB1c3VhcmlvLCBzaSDpc3RlIGxvIGRlc2VhLCBwZXJvIGhhY2UKK2RpZu1jaWwgcXVlIHVuIHByb2dyYW1hIGVsaWphIGxhIG9wY2nzbiBjb3JyZWN0YSBzaSBlbCB1c3VhcmlvIG5vIGhhCitkZWZpbmlkbyBuaW5ndW5hIHByZWZlcmVuY2lhLgorLlBQCitFbCBvYmpldGl2byBkZWwgc2lzdGVtYSBkZSBhbHRlcm5hdGl2YXMgZGUgRGViaWFuIGVzIHJlc29sdmVyIGVzdGUKK3Byb2JsZW1hLiBVbiBub21icmUgZ2Vu6XJpY28gZW4gZWwgc2lzdGVtYSBkZSBmaWNoZXJvcyBzZSBjb21wYXJ0ZSBlbnRyZQordG9kb3MgbG9zIGZpY2hlcm9zIHF1ZSB0aWVuZW4gdW5hIGZ1bmNpb25hbGlkYWQgaW50ZXJjYW1iaWFibGUuIEVsIHNpc3RlbWEKK2RlIGFsdGVybmF0aXZhcyBqdW50byBjb24gZWwgYWRtaW5pc3RyYWRvciBkZWwgc2lzdGVtYSBkZXRlcm1pbmFuIGEgcXXpCitmaWNoZXJvIGhhY2UgcmVmZXJlbmNpYSBlc3RlIG5vbWJyZSBnZW7pcmljby4gUG9yIGVqZW1wbG8sIHNpIGxvcyBlZGl0b3JlcworZGUgdGV4dG8gXGZCZWRcZlAoMSkgeSBcZkJudmlcZlAoMSkgZXN04W4gaW5zdGFsYWRvcyBjb25qdW50YW1lbnRlIGVuIGVsIHNpc3RlbWEsCitlbCBzaXN0ZW1hIGRlIGFsdGVybmF0aXZhcyBoYXLhIHF1ZSBlbCBub21icmUgZ2Vu6XJpY28gXGZJL3Vzci9iaW4vZWRpdG9yXGZQIHNlCityZWZpZXJhIGEgXGZJL3Vzci9iaW4vbnZpXGZQIHBvciBvbWlzafNuLiBFbCBhZG1pbmlzdHJhZG9yIGRlbCBzaXN0ZW1hIHB1ZWRlCittb2RpZmljYXIgZXN0byB5IGhhY2VyIHF1ZSBzZSByZWZpZXJhIGEgXGZJL3Vzci9iaW4vZWRcZlAsIHkgZWwgc2lzdGVtYSBkZQorYWx0ZXJuYXRpdmFzIG5vIG1vZGlmaWNhcuEgZXN0byBwb3N0ZXJpb3JtZW50ZSBoYXN0YSBxdWUgc2Ugc29saWNpdGUKK2V4cGztY2l0YW1lbnRlLgorLlBQCitFbCBub21icmUgZ2Vu6XJpY28gbm8gZXMgdW4gZW5sYWNlIHNpbWLzbGljbyBkaXJlY3RvIGEgbGEgYWx0ZXJuYXRpdmEKK3NlbGVjY2lvbmFkYS4gRW4gdmV6IGRlIGVzdG8sIGVzIHVuIGVubGFjZSBzaW1i82xpY28gYSB1biBub21icmUgZW4gZWwKK1xmSWRpcmVjdG9yaW9cZlAgZGUgXGZJYWx0ZXJuYXRpdmFzXGZQICirL2V0Yy9hbHRlcm5hdGl2ZXO7KSwgcXVlIGEgc3UgdmV6IGVzIHVuCitlbmxhY2Ugc2ltYvNsaWNvIGFsIGZpY2hlcm8gYWwgcXVlIHNlIGhhY2UgcmVmZXJlbmNpYSBlbiByZWFsaWRhZC4gRWwKK29iamV0aXZvIGVzIHF1ZSBsb3MgY2FtYmlvcyBkZWwgYWRtaW5pc3RyYWRvciBzZSBtYW50ZW5nYW4gZGVudHJvIGRlbAorZGlyZWN0b3JpbyBcZkkvZXRjXGZQOiBlbCBGSFMgKHEudi4pIGRhIHJhem9uZXMgZGUgcG9yIHF16SBlc3RvIGVzIGJ1ZW5vLgorLlBQCitDdWFuZG8gc2UgaW5zdGFsYSBvIGRlc2luc3RhbGEgdW4gcGFxdWV0ZSBxdWUgcHJvdmVlIHVuIGZpY2hlcm8gY29uIHVuYQorZnVuY2lvbmFsaWRhZCBlbiBwYXJ0aWN1bGFyIHNlIGludm9jYSBcZkJ1cGRhdGVcLWFsdGVybmF0aXZlc1xmUCBwYXJhIGFjdHVhbGl6YXIKK2xhIGluZm9ybWFjafNuIGRlbCBzaXN0ZW1hIGRlIGFsdGVybmF0aXZhcyBhY2VyY2EgZGUgZXNlCitmaWNoZXJvLiBIYWJpdHVhbG1lbnRlLCBcZkJ1cGRhdGVcLWFsdGVybmF0aXZlc1xmUCBzZSBpbnZvY2EgZGVzZGUgbG9zIHNjcmlwdHMKK1xmQnBvc3RpbnN0XGZQIChwb3N0XC1pbnN0YWxhY2nzbiBvIGNvbmZpZ3VyYWNp824pIG8gXGZCcHJlcm1cZlAgKHByZVwtZWxpbWluYWNp824pCitkZSBsb3MgcGFxdWV0ZXMgZGUgRGViaWFuLgorLlBQCitIYWJpdHVhbG1lbnRlLCBlcyD6dGlsIHF1ZSB1biBu+m1lcm8gZGUgYWx0ZXJuYXRpdmFzIHNlIHNpbmNyb25pY2VuIGRlIHRhbAorbW9kbyBxdWUgc2UgcHVlZGFuIGNhbWJpYXIgY29tbyB1biBncnVwby4gUG9yIGVqZW1wbG8sIGN1YW5kbyB2YXJpYXMKK3ZlcnNpb25lcyBkZWwgZWRpdG9yIFxmQnZpXGZQKDEpIGVzdOFuIGluc3RhbGFkYXMgbGEgcOFnaW5hIGRlbCBtYW51YWwKK3ByZWZlcmlkYSBwb3IgXGZJL3Vzci9zaGFyZS9tYW4vbWFuMS92aS4xXGZQIGRlYmUgY29ycmVzcG9uZGVyIGNvbiBlbAorZWplY3V0YWJsZSBhbCBxdWUgaGFjZSByZWZlcmVuY2lhIFxmSS91c3IvYmluL3ZpXGZQLiBcZkJ1cGRhdGVcLWFsdGVybmF0aXZlc1xmUAorbWFuaXB1bGEgZXN0byBlbiB06XJtaW5vcyBkZSBlbmxhY2VzIFxmSW1hZXN0cm9cZlAgeSBcZkllc2NsYXZvXGZQOyBjdWFuZG8gc2UKK2NhbWJpYSBlbCBtYWVzdHJvLCB0b2RvcyBsb3MgZXNjbGF2b3MgcmVsYWNpb25hZG9zIGNvbiDpbCB0YW1iaeluCitjYW1iaWFuLiBVbiBlbmxhY2UgbWFlc3RybyB5IHN1cyBlc2NsYXZvcyByZWxhY2lvbmFkb3MgZm9ybWFuIHVuIFxmSWdydXBvXGZQIGRlCitcZkllbmxhY2VzXGZQLgorLlBQCitDYWRhIGdydXBvIGRlIGVubGFjZXMgZXN04SBlbiB0b2RvIG1vbWVudG8gZW4gdW5vIGRlIGxvcyBkb3MgbW9kb3MgcG9zaWJsZXM6CithdXRvbeF0aWNvIG8gbWFudWFsLiBDdWFuZG8gdW4gZ3J1cG8gZXN04SBlbiBtb2RvIGF1dG9t4XRpY28gZWwgc2lzdGVtYSBkZQorYWx0ZXJuYXRpdmFzIGRlY2lkZSBhdXRvbeF0aWNhbWVudGUgZWwgbW9tZW50byBkZSBhY3R1YWxpemFyIGxvcyBlbmxhY2VzIGEKK21lZGlkYSBxdWUgc2UgaW5zdGFsYW4gbyBkZXNpbnN0YWxhbiBwYXF1ZXRlcy4gRW4gbW9kbyBtYW51YWwgZWwgc2lzdGVtYSBkZQorYWx0ZXJuYXRpdmFzIGRlamEgdG9kYXMgZXN0YXMgZGVjaXNpb25lcyBlbiBtYW5vcyBkZWwgYWRtaW5pc3RyYWRvciBkZWwKK3Npc3RlbWEuCisuUFAKK0xvcyBncnVwb3MgZGUgZW5sYWNlcyBzZSBlc3RhYmxlY2VuIGVuIG1vZG8gYXV0b23hdGljbyBsYSBwcmltZXJhIHZleiBxdWUKK2FwYXJlY2VuIGVuIGVsIHNpc3RlbWEuIFNpIGVsIGFkbWluaXN0cmFkb3IgZGVsIHNpc3RlbWEgaGFjZSBjYW1iaW9zIGVuIGxhCitjb25maWd1cmFjafNuIGF1dG9t4XRpY2EgZGVsIHNpc3RlbWEsIFxmQnVwZGF0ZVwtYWx0ZXJuYXRpdmVzXGZQIHNlIGRhcuEgY3VlbnRhCitsYSBwcvN4aW1hIHZleiBxdWUgc2UgZWplY3V0ZSBzb2JyZSBlbCBncnVwbyBkZSBlbmxhY2VzIGNhbWJpYWRvcyB5IGVsIGdydXBvCitwYXNhcuEgYXV0b23hdGljYW1lbnRlIGEgbW9kbyBtYW51YWwuCisuUFAKK0NhZGEgYWx0ZXJuYXRpdmEgdGllbmUgdW5hIFxmSXByaW9yaWRhZFxmUCBhc29jaWFkYS4gQ3VhbmRvIHVuIGdydXBvIGRlIGVubGFjZXMKK3NlIGVuY3VlbnRyYSBlbiBtb2RvIGF1dG9t4XRpY28sIGxvcyBtaWVtYnJvcyBkZWwgZ3J1cG8gYXB1bnRhcuFuIGEgbGEKK2FsdGVybmF0aXZhIGNvbiBsYSBwcmlvcmlkYWQgbeFzIGFsdGEuCisuUFAKK1doZW4gdXNpbmcgdGhlIFxmQlwtXC1jb25maWdcZlAgb3B0aW9uLCBcZkJ1cGRhdGVcLWFsdGVybmF0aXZlc1xmUCB3aWxsIGxpc3QgYWxsIG9mCit0aGUgY2hvaWNlcyBmb3IgdGhlIGxpbmsgZ3JvdXAgb2Ygd2hpY2ggZ2l2ZW4gXGZJbmFtZVxmUCBpcyB0aGUgbWFzdGVyCithbHRlcm5hdGl2ZSBuYW1lLiBUaGUgY3VycmVudCBjaG9pY2UgaXMgbWFya2VkIHdpdGggYSAnKicuICBZb3Ugd2lsbCB0aGVuIGJlCitwcm9tcHRlZCBmb3IgeW91ciBjaG9pY2UgcmVnYXJkaW5nIHRoaXMgbGluayBncm91cC4gIERlcGVuZGluZyBvbiB0aGUgY2hvaWNlCittYWRlLCB0aGUgbGluayBncm91cCBtaWdodCBubyBsb25nZXIgYmUgaW4gXGZJYXV0b1xmUCBtb2RlLiBZb3Ugd2lsbCBuZWVkIHRvCit1c2UgdGhlIFxmQlwtXC1hdXRvXGZQIG9wdGlvbiBpbiBvcmRlciB0byByZXR1cm4gdG8gdGhlIGF1dG9tYXRpYyBtb2RlIChvciB5b3UKK2NhbiByZXJ1biBcZkJcLVwtY29uZmlnXGZQIGFuZCBzZWxlY3QgdGhlIGVudHJ5IG1hcmtlZCBhcyBhdXRvbWF0aWMpLgorLlBQCitJZiB5b3Ugd2FudCB0byBjb25maWd1cmUgbm9uXC1pbnRlcmFjdGl2ZWx5IHlvdSBjYW4gdXNlIHRoZSBcZkJcLVwtc2V0XGZQIG9wdGlvbgoraW5zdGVhZCAoc2VlIGJlbG93KS4KKy5QUAorTG9zIGRpZmVyZW50ZXMgcGFxdWV0ZXMgcXVlIHByb3ZlZW4gZWwgbWlzbW8gZmljaGVybyB0aWVuZW4gcXVlIGhhY2VybG8gZGUKK2Zvcm1hIFxmQmNvb3BlcmF0aXZhXGZQLiBFbiBvdHJhcyBwYWxhYnJhcywgZWwgdXNvIGRlIFxmQnVwZGF0ZVwtYWx0ZXJuYXRpdmVzXGZQIGVzCitcZkJvYmxpZ2F0b3Jpb1xmUCBjb24gdG9kb3MgbG9zIHBhcXVldGVzIHJlbGFjaW9uYWRvcyBjb24gZXNhIHNpdHVhY2nzbi4gTm8gZXMKK3Bvc2libGUgc29icmVlc2NyaWJpciBlbCBmaWNoZXJvIGRlIHVuIHBhcXVldGUgcXVlIG5vIHVzYSBlbCBtZWNhbmlzbW8gZGUKK1xmQnVwZGF0ZVwtYWx0ZXJuYXRpdmVzXGZQLgorLgorLlNIIFRFUk1JTk9MT0fNQQorRGViaWRvIGEgcXVlIGxhcyBhY3RpdmlkYWRlcyBxdWUgcmVhbGl6YSBcZkJ1cGRhdGVcLWFsdGVybmF0aXZlc1xmUCBlc3ThbgorZnVlcnRlbWVudGUgcmVsYWNpb25hZGFzIGVudHJlIHPtLCBsYSBkZWZpbmljafNuIGRlIGFsZ3Vub3MgdOlybWlub3MKK2VzcGVj7WZpY29zIGF5dWRhcuEgYSBlbnRlbmRlciBzdSBmdW5jaW9uYW1pZW50by4KKy5UUCAKK25vbWJyZSBnZW7pcmljbyAobyBlbmxhY2UgYWx0ZXJuYXRpdm8pCitVbiBub21icmUsIGNvbW8gXGZJL3Vzci9iaW4vZWRpdG9yXGZQLCBxdWUgbWVkaWFudGUgZWwgc2lzdGVtYSBkZSBhbHRlcm5hdGl2YXMKK2hhY2UgcmVmZXJlbmNpYSBhIHVubyBkZSBsb3MgcG9zaWJsZXMgZmljaGVyb3MgY29uIHVuYSBmdW5jafNuIHNpbWlsYXIuCisuVFAgCitub21icmUgZGUgbGEgYWx0ZXJuYXRpdmEKK0VsIG5vbWJyZSBkZSB1biBlbmxhY2Ugc2ltYvNsaWNvIGVuIGVsIGRpcmVjdG9yaW8gZGUgYWx0ZXJuYXRpdmFzLgorLlRQIAorYWx0ZXJuYXRpdmEgKG8gcnV0YSBhbHRlcm5hdGl2YSkKK0VsIG5vbWJyZSBkZSB1biBmaWNoZXJvIGVzcGVj7WZpY28gZW4gZWwgc2lzdGVtYSBkZSBmaWNoZXJvcyBhbCBxdWUgc2UgcHVlZGUKK2FjY2VkZXIgYSB0cmF26XMgZGUgdW4gbm9tYnJlIGdlbulyaWNvIHVzYW5kbyBlbCBzaXN0ZW1hIGRlIGFsdGVybmF0aXZhcy4KKy5UUCAKK2RpcmVjdG9yaW8gZGUgYWx0ZXJuYXRpdmFzCitFbCBkaXJlY3RvcmlvIHF1ZSBjb250aWVuZSBsb3MgZW5sYWNlcywgcG9yIG9taXNp824gZXMgXGZJL2V0Yy9hbHRlcm5hdGl2ZXNcZlAuCisuVFAgCitkaXJlY3RvcmlvIGFkbWluaXN0cmF0aXZvCitFbCBkaXJlY3RvcmlvIHF1ZSBjb250aWVuZSBsYSBpbmZvcm1hY2nzbiBkZSBlc3RhZG8gZGUKK1xmQnVwZGF0ZVwtYWx0ZXJuYXRpdmVzXGZQLCBwb3Igb21pc2nzbiBlcyBcZkkvdmFyL2xpYi9kcGtnL2FsdGVybmF0aXZlc1xmUC4KKy5UUCAKK2dydXBvIGRlIGVubGFjZXMKK1VuIGNvbmp1bnRvIGRlIGVubGFjZXMgcmVsYWNpb25hZG9zIGNvbiBlbCBvYmpldGl2byBkZSBxdWUgc2UgYWN0dWFsaWNlbgorY29tbyBncnVwby4KKy5UUCAKK2VubGFjZSBtYWVzdHJvCitFbCBlbmxhY2UgYWx0ZXJuYXRpdm8gZW4gdW4gZ3J1cG8gZGUgZW5sYWNlcyBxdWUgZGV0ZXJtaW5hIGPzbW8gc2UKK2NvbmZpZ3VyYW4gZWwgcmVzdG8gZGUgbG9zIGVubGFjZXMgZGVsIGdydXBvLgorLlRQIAorZW5sYWNlIGVzY2xhdm8KK1VuIGVubGFjZSBhbHRlcm5hdGl2byBlbiB1biBncnVwbyBkZSBlbmxhY2VzIGRlZmluaWRvIHBvciBlbCBlbmxhY2UgbWFlc3Ryby4KKy5UUCAKK21vZG8gYXV0b23hdGljbworQ3VhbmRvIHVuIGdydXBvIGRlIGVubGFjZXMgc2UgZW5jdWVudHJhIGVuIG1vZG8gYXV0b23hdGljbyBlbCBzaXN0ZW1hIGRlCithbHRlcm5hdGl2YXMgYXNlZ3VyYSBxdWUgbG9zIGVubGFjZXMgZGVsIGdydXBvIGFwdW50YW4gYSBsYSBhbHRlcm5hdGl2YSBjb24KK2xhIG1heW9yIHByaW9yaWRhZCBlbiBlc2UgZ3J1cG8uCisuVFAgCittb2RvIG1hbnVhbAorQ3VhbmRvIHVuIGdydXBvIGRlIGVubGFjZXMgc2UgZW5jdWVudHJhIGVuIG1vZG8gbWFudWFsIGVsIHNpc3RlbWEgZGUKK2FsdGVybmF0aXZhcyBubyBoYXLhIG5pbmf6biBjYW1iaW8gZW4gbGEgY29uZmlndXJhY2nzbiBkZWwgYWRtaW5pc3RyYWRvci4KKy4KKy5TSCDTUkRFTkVTCisuVFAgCitcZkJcLVwtaW5zdGFsbFxmUCBcZkllbmxhY2Ugbm9tYnJlIHJ1dGEgcHJpb3JpZGFkXGZQIFtcZkJcLVwtc2xhdmVcZlAgXGZJZW5sYWNlIG5vbWJyZSBydXRhXGZQXSAuLi4KK0HxYWRlIHVuIGdydXBvIGRlIGFsdGVybmF0aXZhcyBhbCBzaXN0ZW1hLiBcZkllbmxhY2VcZlAgZXMgZWwgbm9tYnJlIGdlbulyaWNvCitkZWwgZW5sYWNlIG1hZXN0cm8sIFxmSW5vbWJyZVxmUCBlcyBlbCBub21icmUgZGVsIGVubGFjZSBzaW1i82xpY28gZW4gZWwKK2RpcmVjdG9yaW8gZGUgYWx0ZXJuYXRpdmFzLCB5IFxmSXJ1dGFcZlAgZXMgbGEgYWx0ZXJuYXRpdmEgcXVlIHNlIHZhIGEKK2ludHJvZHVjaXIgcGFyYSBlbCBlbmxhY2UgbWFlc3Ryby4gTG9zIGFyZ3VtZW50b3MgYSBjb250aW51YWNp824gZGUKK1xmQlwtXC1zbGF2ZVxmUCBzb24gZWwgbm9tYnJlIGdlbulyaWNvLCBlbCBub21icmUgZGVsIGVubGFjZSBzaW1i82xpY28gZW4gZWwKK2RpcmVjdG9yaW8gZGUgYWx0ZXJuYXRpdmFzLCB5IGxhIHJ1dGEgYWx0ZXJuYXRpdmEgcGFyYSBlbCBlbmxhY2UKK2VzY2xhdm8uIFB1ZWRlIGRlZmluaXIgY2VybyBvIG3hcyBvcGNpb25lcyBkZSBcZkJcLVwtc2xhdmVcZlAsIGNhZGEgdW5vIHNlZ3VpZG8KK2RlIHRyZXMgYXJndW1lbnRvcy4gVGVuZ2EgZW4gY3VlbnRhIHF1ZSBsYSBhbHRlcm5hdGl2YSBtYWVzdHJhIGRlYmUgZXhpc3RpcgorcHJldmlhbWVudGUgbyBsYSBpbnZvY2FjafNuIGZhbGxhcuEuIFBvciBvdHJhIHBhcnRlLCBzaSBsYSBhbHRlcm5hdGl2YQorZXNjbGF2YSBubyBleGlzdGUsIGVsIGVubGFjZSBlc2NsYXZvIGFsdGVybmF0aXZvIGNvcnJlc3BvbmRpZW50ZSBubyBzZQoraW5zdGFsYXLhLCBtb3N0cmFuZG8gdW4gYXZpc28uIFVuIGZpY2hlcm8gcmVhbCBpbnN0YWxhZG8gZW4gbGEgdWJpY2FjafNuIGRlCit1biBlbmxhY2UgYWx0ZXJuYXRpdm8gbnVuY2Egc2UgZWxpbWluYXLhIGEgbWVub3MgcXVlIHNlIHVzZSBcZkJcLVwtZm9yY2VcZlAuCisuSVAKK1NpIGVsIG5vbWJyZSBkZSBsYSBhbHRlcm5hdGl2YSBkZWZpbmlkYSB5YSBleGlzdGUgZW4gbG9zIHJlZ2lzdHJvcyBkZWwKK3Npc3RlbWEgZGUgYWx0ZXJuYXRpdmFzIGxhIGluZm9ybWFjafNuIHN1bWluaXN0cmFkYSBzZSBh8WFkaXLhIGNvbW8gdW4gbnVldm8KK2Nvbmp1bnRvIGRlIGFsdGVybmF0aXZhcyBwYXJhIGVsIGdydXBvLiBEZSBvdHJhIGZvcm1hIHNlIGNyZWFy4SB1biBncnVwbworbnVldm8gZW4gbW9kbyBhdXRvbeF0aWNvLCBhbCBxdWUgc2UgbGUgYfFhZGly4SBsYSBpbmZvcm1hY2nzbgorc3VtaW5pc3RyYWRhLiBTaSBlbCBncnVwbyBlc3ThIGVuIG1vZG8gYXV0b23hdGljbywgeSBsYSBwcmlvcmlkYWQgbnVldmEKK2HxYWRpZGEgZXMgbWF5b3IgcXVlIGN1YWxxdWllciBvdHJhIGFsdGVybmF0aXZhIGluc3RhbGFkYSBwYXJhIGVzZSBncnVwbywKK2xvcyBlbmxhY2VzIHNlIGFjdHVhbGl6YXLhbiBwYXJhIGFwdW50YXIgYSBsYXMgbnVldmFzIGFsdGVybmF0aXZhcy4KKy5UUCAKK1xmQlwtXC1zZXRcZlAgXGZJbm9tYnJlIHJ1dGFcZlAKK1NldCB0aGUgcHJvZ3JhbSBcZklwYXRoXGZQIGFzIGFsdGVybmF0aXZlIGZvciBcZkluYW1lLlxmUCBUaGlzIGlzIGVxdWl2YWxlbnQgdG8KK1xmQlwtXC1jb25maWdcZlAgYnV0IGlzIG5vblwtaW50ZXJhY3RpdmUgYW5kIHRodXMgc2NyaXB0YWJsZS4KKy5UUCAKK1xmQlwtXC1yZW1vdmVcZlAgXGZJbm9tYnJlIHJ1dGFcZlAKK0VsaW1pbmEgdW5hIGFsdGVybmF0aXZhIHkgdG9kb3Mgc3VzIGVubGFjZXMgZXNjbGF2b3MgYXNvY2lhZG9zLiBcZklub21icmVcZlAgZXMKK2VsIG5vbWJyZSBlbiBlbCBkaXJlY3RvcmlvIGRlIGFsdGVybmF0aXZhcyB5IFxmSXJ1dGFcZlAgZXMgZWwgbm9tYnJlIGFic29sdXRvCitkZWwgZmljaGVybyBhbCBxdWUgXGZJbm9tYnJlXGZQIHNlIHBvZHLtYSBlbmxhemFyLiBTaSBcZklub21icmVcZlAgZXN04SBlbgorcmVhbGlkYWQgZW5sYXphZG8gYSBcZklydXRhXGZQLCBcZklub21icmVcZlAgc2UgYWN0dWFsaXphcuEgcGFyYSBxdWUgYXB1bnRlIGEgb3RyYQorYWx0ZXJuYXRpdmEgYXByb3BpYWRhIG8gc2UgZWxpbWluYXLhIHNpIG5vIHF1ZWRhIG5pbmd1bmEgYWx0ZXJuYXRpdmEKK3Jlc3RhbnRlLiBMb3MgZW5sYWNlcyBlc2NsYXZvcyBhc29jaWFkb3Mgc2UgYWN0dWFsaXphcuFuIG8gZWxpbWluYXLhbgorY29ycmVzcG9uZGllbnRlbWVudGUuIFNpIGVsIGVubGFjZSBubyBhcHVudGEgYSBcZklydXRhXGZQLCBubyBzZSBjYW1iaWEgbmluZ/puCitlbmxhY2UsIHPzbG8gc2UgZWxpbWluYSBsYSBpbmZvcm1hY2nzbiBhY2VyY2EgZGUgbGEgYWx0ZXJuYXRpdmEuCisuVFAgCitcZkJcLVwtcmVtb3ZlXC1hbGxcZlAgXGZJbm9tYnJlXGZQCitFbGltaW5hIHRvZGFzIGxhcyBhbHRlcm5hdGl2YXMgeSB0b2RvcyBzdXMgZW5sYWNlcyBlc2NsYXZvcworYXNvY2lhZG9zLiBcZklub21icmVcZlAgZXMgdW4gbm9tYnJlIGVuIGVsIGRpcmVjdG9yaW8gZGUgYWx0ZXJuYXRpdmFzLgorLlRQIAorXGZCXC1cLWFsbFxmUAorSW52b2NhIFxmQlwtXC1jb25maWdcZlAgc29icmUgdG9kYXMgbGFzIGFsdGVybmF0aXZhcy4gUHVlZGUgc2VyIPp0aWwgZW4KK2NvbWJpbmFjafNuIGNvbiBcZkJcLVwtc2tpcFwtYXV0b1xmUCBwYXJhIHJldmlzYXIgeSBjb25maWd1cmFyIHRvZGFzIGxhcworYWx0ZXJuYXRpdmFzIHF1ZSBubyBlc3ThbiBjb25maWd1cmFkYXMgZW4gbW9kbyBhdXRvbeF0aWNvLiBUYW1iaeluIHNlCittdWVzdHJhbiBsYXMgYWx0ZXJuYXRpdmFzIHJvdGFzLiBVbmEgbWFuZXJhIHNlbmNpbGxhIGRlIGFycmVnbGFyIHRvZGFzIGxhcworYWx0ZXJuYXRpdmFzIHJvdGFzIGVzIGludm9jYXIgXGZCeWVzIFxbYXFdXFthcV0gfCB1cGRhdGVcLWFsdGVybmF0aXZlcyBcLVwtZm9yY2UKK1wtXC1hbGxcZlAuCisuVFAgCitcZkJcLVwtYXV0b1xmUCBcZklub21icmVcZlAKK0NhbWJpYSBlbCBncnVwbyBkZSBlbmxhY2VzIGRlcGVuZGllbnRlcyBkZSBsYSBhbHRlcm5hdGl2YSBcZklub21icmVcZlAgYSBtb2RvCithdXRvbeF0aWNvLiBFbiBlbCBwcm9jZXNvLCBlbCBlbmxhY2Ugc2ltYvNsaWNvIHkgc3VzIGVzY2xhdm9zIHNlCithY3R1YWxpemFy4W4gcGFyYSBhcHVudGFyIGEgbGEgYWx0ZXJuYXRpdmEgaW5zdGFsYWRhIGNvbiB1bmEgcHJpb3JpZGFkCittYXlvci4KKy5UUCAKK1xmQlwtXC1kaXNwbGF5XGZQIFxmSW5vbWJyZVxmUAorTXVlc3RyYSBpbmZvcm1hY2nzbiBhY2VyY2EgZGVsIGdydXBvIGRlIGVubGFjZXMuIExhIGluZm9ybWFjafNuIGluY2x1eWUgZWwKK21vZG8gZGVsIGdydXBvIChtYW51YWwgbyBhdXRvbeF0aWNvKSwgYSBxdekgYWx0ZXJuYXRpdmEgYXB1bnRhIGVsIGVubGFjZQorbWFlc3RybywgcXXpIG90cmFzIGFsdGVybmF0aXZhcyBleGlzdGVuICh5IHN1cyBhbHRlcm5hdGl2YXMgZXNjbGF2YXMKK2NvcnJlc3BvbmRpZW50ZXMpLCB5IGxhIGFsdGVybmF0aXZhIGRlIG1heW9yIHByaW9yaWRhZCBpbnN0YWxhZGEgZW4gZWwKK3Npc3RlbWEuCisuVFAgCitcZkJcLVwtZ2V0XC1zZWxlY3Rpb25zXGZQCitDcmVhIHVuIGxpc3RhZG8gZGUgdG9kYXMgbG9zIG5vbWJyZXMgZGUgYWx0ZXJuYXRpdmFzIG1hZXN0cmFzIChhcXVlbGxhcyBxdWUKK2NvbnRyb2xhbiB1biBncnVwbyBkZSBlbmxhY2VzKSB5IHN1IGVzdGFkby4gQ2FkYSBs7W5lYSBjb250aWVuZSBoYXN0YSAzCitjYW1wb3MsIHNlcGFyYWRvcyBwb3IgdW5vIG8gbeFzIGVzcGFjaW9zLiBFbCBwcmltZXIgY2FtcG8gZXMgZWwgbm9tYnJlIGRlIGxhCithbHRlcm5hdGl2YSwgZWwgc2VndW5kbyBlcyBlbCBlc3RhZG8gKGJpZW4gq2F1dG+7IG8gq21hbnVhbLspLCB5IGVsIPpsdGltbworY29udGllbmUgbGEgZWxlY2Np824gcHJlc2VudGUgcGFyYSBsYSBhbHRlcm5hdGl2YSAocHVlZGUgY29udGVuZXIgZXNwYWNpb3MKK3lhIHF1ZSBlcyB1biBub21icmUgZGUgZmljaGVybykuCisuVFAgCitcZkJcLVwtc2V0XC1zZWxlY3Rpb25zXGZQCitMZWUgbGEgY29uZmlndXJhY2nzbiBkZSBhbHRlcm5hdGl2YXMgcG9yIGxhIGVudHJhZGEgZXN04W5kYXIgZW4gZWwgZm9ybWF0bworZ2VuZXJhZG8gcG9yIFxmQnVwZGF0ZVwtYWx0ZXJuYXRpdmVzIFwtXC1nZXRcLXNlbGVjdGlvbnNcZlAgeSBsb3MgcmVjb25maWd1cmEKK2Fwcm9waWFkYW1lbnRlLgorLlRQIAorXGZCXC1cLXF1ZXJ5XGZQIFxmSW5vbWJyZVxmUAorTXVlc3RyYSBpbmZvcm1hY2nzbiBhY2VyY2EgZGVsIGdydXBvIGRlIGVubGFjZXMsIGFsIGlndWFsIHF1ZSCrXC1cLWRpc3BsYXm7LAorcGVybyBkZSB1bmEgbWFuZXJhIHF1ZSBlbCBzaXN0ZW1hIHB1ZWRlIGFuYWxpemFyIChjb25zdWx0ZSBsYSBzZWNjafNuCitcZkJGT1JNQVRPIERFIENPTlNVTFRBXGZQIG3hcyBhYmFqbykuCisuVFAgCitcZkJcLVwtbGlzdFxmUCBcZkluYW1lXGZQCitNdWVzdHJhIHRvZG9zIGxvcyBvYmpldGl2b3MgZGVsIGdydXBvIGRlIGVubGFjZXMuCisuVFAgCitcZkJcLVwtY29uZmlnXGZQIFxmSW5vbWJyZVxmUAorTXVlc3RyYSBsYXMgYWx0ZXJuYXRpdmFzIGRpc3BvbmlibGVzIHBhcmEgdW4gZ3J1cG8gZGUgZW5sYWNlcyB5IHBlcm1pdGUgYWwKK3VzdWFyaW8gc2VsZWNjaW9uYXIgaW50ZXJhY3RpdmFtZW50ZSBjdWFsIHVzYXIuIEVsIGdydXBvIGRlIGVubGFjZXMgc2UKK2FjdHVhbGl6YXLhLgorLlRQIAorXGZCXC1cLWhlbHBcZlAKK011ZXN0cmEgZWwgbW9kbyBkZSB1c28geSB0ZXJtaW5hLgorLlRQIAorXGZCXC1cLXZlcnNpb25cZlAKK011ZXN0cmEgbGEgdmVyc2nzbiB5IHRlcm1pbmEuCisuCisuU0ggT1BDSU9ORVMKKy5UUCAKK1xmQlwtXC1hbHRkaXJcZlAgXGZJZGlyZWN0b3Jpb1xmUAorRGVmaW5lIGVsIGRpcmVjdG9yaW8gZGUgYWx0ZXJuYXRpdmFzLCBjdWFuZG8gZXMgZGlmZXJlbnRlIGRlbCBkaXJlY3RvcmlvIHBvcgorb21pc2nzbi4KKy5UUCAKK1xmQlwtXC1hZG1pbmRpclxmUFxmSSBkaXJlY3RvcmlvXGZQCitEZWZpbmUgZWwgZGlyZWN0b3JpbyBhZG1pbmlzdHJhdGl2bywgY3VhbmRvIGVzIGRpZmVyZW50ZSBkZWwgZGlyZWN0b3JpbyBwb3IKK29taXNp824uCisuVFAgCitcZkJcLVwtbG9nPVxmUFxmSWZpY2hlcm9cZlAKK0RlZmluZSBlbCBmaWNoZXJvIGRlIHJlZ2lzdHJvIGRlIGFsdGVybmF0aXZhcyBjdWFuZG8gZXMgZGlmZXJlbnRlIGRlbCB2YWxvcgorcG9yIG9taXNp824gKKsvdmFyL2xvZy9hbHRlcm5hdGl2YXMubG9nuykuCisuVFAgCitcZkJcLVwtZm9yY2VcZlAKK0xldCBcZkJ1cGRhdGVcLWFsdGVybmF0aXZlc1xmUCByZXBsYWNlIG9yIGRyb3AgYW55IHJlYWwgZmlsZSB0aGF0IGlzIGluc3RhbGxlZAord2hlcmUgYW4gYWx0ZXJuYXRpdmUgbGluayBoYXMgdG8gYmUgaW5zdGFsbGVkIG9yIHJlbW92ZWQuCisuVFAgCitcZkJcLVwtc2tpcFwtYXV0b1xmUAorT21pdGUgZWwgZGlhbG9nbyBkZSBjb25maWd1cmFjafNuIGRlIGFsdGVybmF0aXZhcyBwYXJhIGFxdWVsbGFzIGNvbmZpZ3VyYWRhcworYWRlY3VhZGFtZW50ZSBlbiBtb2RvIGF1dG9t4XRpY28uIEVzdGEgb3BjafNuIHNvbG8gdGllbmUgc2VudGlkbyBjb24KK1xmQlwtXC1jb25maWdcZlAgbyBcZkJcLVwtYWxsXGZQLgorLlRQIAorXGZCXC1cLXZlcmJvc2VcZlAKK0dlbmVyYSB1bmEgc2FsaWRhIGNvbiBt4XMgaW5mb3JtYWNp824gYWNlcmNhIGRlIGxvIHF1ZQorXGZCdXBkYXRlXC1hbHRlcm5hdGl2ZXNcZlAgZXN04SBoYWNpZW5kby4KKy5UUCAKK1xmQlwtXC1xdWlldFxmUAorTm8gZ2VuZXJhIG5pbmf6biBjb21lbnRhcmlvIGEgbWVub3MgcXVlIG9jdXJyYSBhbGf6biBlcnJvci4KKy4KKy5TSCBFTlRPUk5PCisuVFAgCitcZkJEUEtHX0FETUlORElSXGZQCitJZiBzZXQgYW5kIHRoZSBcZkJcLVwtYWRtaW5kaXJcZlAgb3B0aW9uIGhhcyBub3QgYmVlbiBzcGVjaWZpZWQsIGl0IHdpbGwgYmUgdXNlZAorYXMgdGhlIGJhc2UgYWRtaW5pc3RyYXRpdmUgZGlyZWN0b3J5LgorLgorLlNIIEZJQ0hFUk9TCisuVFAgCitcZkkvZXRjL2FsdGVybmF0aXZlcy9cZlAKK0VsIGRpcmVjdG9yaW8gZGUgYWx0ZXJuYXRpdmFzIHBvciBvbWlzafNuLiBTZSBwdWVkZSBjYW1iaWFyIGNvbiBsYSBvcGNp824KK1xmQlwtXC1hbHRkaXJcZlAuCisuVFAgCitcZkkvdmFyL2xpYi9kcGtnL2FsdGVybmF0aXZlcy9cZlAKK0VsIGRpcmVjdG9yaW8gZGUgYWRtaW5pc3RyYWNp824gcG9yIG9taXNp824uIFNlIHB1ZWRlIG1vZGlmaWNhciBjb24gbGEKK29wY2nzbiBcZkJcLVwtYWRtaW5kaXJcZlAuCisuCisuU0ggIkVTVEFET1MgREUgU0FMSURBIgorLlRQIAorXGZCMFxmUAorTGEgYWNjafNuIHJlcXVlcmlkYSBmaW5hbGl68yBjb24g6XhpdG8uCisuVFAgCitcZkIyXGZQCitTZSBlbmNvbnRyYXJvbiBwcm9ibGVtYXMgYW5hbGl6YW5kbyBsYSBs7W5lYSBkZSDzcmRlbmVzIG8gcmVhbGl6YW5kbyBsYQorYWNjafNuIHJlcXVlcmlkYS4KKy4KKy5TSCAiRk9STUFUTyBERSBDT05TVUxUQSIKK1RoZSBcZkJ1cGRhdGVcLWFsdGVybmF0aXZlcyBcLVwtcXVlcnlcZlAgZm9ybWF0IGlzIHVzaW5nIGFuIFJGQzgyMlwtbGlrZSBmbGF0Citmb3JtYXQuIEl0J3MgbWFkZSBvZiBcZkluXGZQICsgMSBibG9ja3Mgd2hlcmUgXGZJblxmUCBpcyB0aGUgbnVtYmVyIG9mCithbHRlcm5hdGl2ZXMgYXZhaWxhYmxlIGluIHRoZSBxdWVyaWVkIGxpbmsgZ3JvdXAuIFRoZSBmaXJzdCBibG9jayBjb250YWlucwordGhlIGZvbGxvd2luZyBmaWVsZHM6CisuVFAgCitcZkJMaW5rOlxmUFxmSSBsaW5rXGZQCitFbCBub21icmUgZ2Vu6XJpY28gZGUgbGEgYWx0ZXJuYXRpdmEuCisuVFAgCitcZkJTdGF0dXM6XGZQXGZJIHN0YXR1c1xmUAorRWwgZXN0YWRvIGRlIGxhIGFsdGVybmF0aXZhIChcZkJhdXRvXGZQIG8gXGZCbWFudWFsXGZQKS4KKy5UUCAKK1xmQkJlc3Q6XGZQXGZJIGJlc3RcLWNob2ljZVxmUAorTGEgcnV0YSBkZSBsYSBtZWpvciBhbHRlcm5hdGl2YSBwYXJhIGVzdGUgZ3J1cG8gZGUgZW5sYWNlcy4gTm8gYXBhcmVjZSBzaSBubworZXhpc3RlbiBhbHRlcm5hdGl2YXMgZGlzcG9uaWJsZXMuCisuVFAgCitcZkJWYWx1ZTpcZlBcZkkgY3VycmVudGx5XC1zZWxlY3RlZFwtYWx0ZXJuYXRpdmVcZlAKK0xhIHJ1dGEgZGUgbGEgYWx0ZXJuYXRpdmEgc2VsZWNjaW9uYWRhIGVuIGVzZSBtb21lbnRvLiBUYW1iaeluIHB1ZWRlIHRvbWFyCitlbCB2YWxvciBt4WdpY28gXGZCbm9uZVxmUCAobmluZ3VubykuIFNlIHVzYSBzaSBlbCBlbmxhY2Ugbm8gZXhpc3RlLgorLlRQIAorLlRQIAorTG9zIHNpZ3VpZW50ZXMgYmxvcXVlcyBkZXNjcmliZW4gbGFzIGFsdGVybmF0aXZhcyBkaXNwb25pYmxlcyBlbiBlbCBncnVwbyBkZSBlbmxhY2VzIGNvbnN1bHRhZG86CisuVFAgCitcZkJBbHRlcm5hdGl2ZTpcZlBcZkkgcGF0aFwtb2ZcLXRoaXNcLWFsdGVybmF0aXZlXGZQCitSdXRhIGEgbGEgYWx0ZXJuYXRpdmEgZGUgZXN0ZSBibG9xdWUuCisuVFAgCitcZkJQcmlvcml0eTpcZlBcZkkgcHJpb3JpdHlcLXZhbHVlXGZQCitWYWxvciBkZSBsYSBwcmlvcmlkYWQgZGUgZXN0YSBhbHRlcm5hdGl2YS4KKy5UUCAKK1xmQlNsYXZlczpcZlBcZkkgbGlzdFwtb2ZcLXNsYXZlc1xmUAorQ3VhbmRvIGVzdGEgY2FiZWNlcmEgZXN04SBwcmVzZW50ZSwgbGFzIGztbmVhcyBcZkJuZXh0XGZQIGNvbnRpZW5lbiB0b2RhcyBsYXMKK2FsdGVybmF0aXZhcyBlc2NsYXZhcyBhc29jaWFkYXMgYWwgZW5sYWNlIG1hZXN0cm8gZGUgbGEgYWx0ZXJuYXRpdmEuIEhheSB1bgorZXNjbGF2byBwb3IgbO1uZWEuIENhZGEgbO1uZWEgY29udGllbmUgdW4gZXNwYWNpbywgZWwgbm9tYnJlIGdlbulyaWNvIGRlIGxhCithbHRlcm5hdGl2YSBlc2NsYXZhLCBvdHJvIGVzcGFjaW8sIHkgbGEgcnV0YSBhIGxhIGFsdGVybmF0aXZhIGVzY2xhdmEuCisuCisuVFAgCitcZkJFamVtcGxvXGZQCisubmYKKyQgdXBkYXRlXC1hbHRlcm5hdGl2ZXMgXC1cLXF1ZXJ5IGVkaXRvcgorTGluazogZWRpdG9yCitTdGF0dXM6IGF1dG8KK0Jlc3Q6IC91c3IvYmluL3ZpbS5ndGsKK1ZhbHVlOiAvdXNyL2Jpbi92aW0uZ3RrCisKK0FsdGVybmF0aXZlOiAvYmluL2VkCitQcmlvcml0eTogXC0xMDAKK1NsYXZlczoKKyBlZGl0b3IuMS5neiAvdXNyL3NoYXJlL21hbi9tYW4xL2VkLjEuZ3oKKworQWx0ZXJuYXRpdmU6IC91c3IvYmluL3ZpbS5ndGsKK1ByaW9yaXR5OiA1MAorU2xhdmVzOgorIGVkaXRvci4xLmd6IC91c3Ivc2hhcmUvbWFuL21hbjEvdmltLjEuZ3oKKyBlZGl0b3IucnUuMS5neiAvdXNyL3NoYXJlL21hbi9ydS9tYW4xL3ZpbS4xLmd6CisgZWRpdG9yLnBsLklTTzg4NTlcLTIuMS5neiAvdXNyL3NoYXJlL21hbi9wbC5JU084ODU5XC0yL21hbjEvdmltLjEuZ3oKKyBlZGl0b3IuaXQuSVNPODg1OVwtMS4xLmd6IC91c3Ivc2hhcmUvbWFuL2l0LklTTzg4NTlcLTEvbWFuMS92aW0uMS5negorIGVkaXRvci5wbC5VVEZcLTguMS5neiAvdXNyL3NoYXJlL21hbi9wbC5VVEZcLTgvbWFuMS92aW0uMS5negorIGVkaXRvci5pdC4xLmd6IC91c3Ivc2hhcmUvbWFuL2l0L21hbjEvdmltLjEuZ3oKKyBlZGl0b3IuZnIuVVRGXC04LjEuZ3ogL3Vzci9zaGFyZS9tYW4vZnIuVVRGXC04L21hbjEvdmltLjEuZ3oKKyBlZGl0b3IuZnIuMS5neiAvdXNyL3NoYXJlL21hbi9mci9tYW4xL3ZpbS4xLmd6CisgZWRpdG9yLml0LlVURlwtOC4xLmd6IC91c3Ivc2hhcmUvbWFuL2l0LlVURlwtOC9tYW4xL3ZpbS4xLmd6CisgZWRpdG9yLnBsLjEuZ3ogL3Vzci9zaGFyZS9tYW4vcGwvbWFuMS92aW0uMS5negorIGVkaXRvci5mci5JU084ODU5XC0xLjEuZ3ogL3Vzci9zaGFyZS9tYW4vZnIuSVNPODg1OVwtMS9tYW4xL3ZpbS4xLmd6CisuZmkKKy4KKy5TSCBESUFHTtNTVElDT1MKK1dpdGggXGZCXC1cLXZlcmJvc2VcZlAgXGZCdXBkYXRlXC1hbHRlcm5hdGl2ZXNcZlAgY2hhdHRlcnMgaW5jZXNzYW50bHkgYWJvdXQgaXRzCithY3Rpdml0aWVzIG9uIGl0cyBzdGFuZGFyZCBvdXRwdXQgY2hhbm5lbC4gIElmIHByb2JsZW1zIG9jY3VyLAorXGZCdXBkYXRlXC1hbHRlcm5hdGl2ZXNcZlAgb3V0cHV0cyBlcnJvciBtZXNzYWdlcyBvbiBpdHMgc3RhbmRhcmQgZXJyb3IgY2hhbm5lbAorYW5kIHJldHVybnMgYW4gZXhpdCBzdGF0dXMgb2YgMi4gIFRoZXNlIGRpYWdub3N0aWNzIHNob3VsZCBiZQorc2VsZlwtZXhwbGFuYXRvcnk7IGlmIHlvdSBkbyBub3QgZmluZCB0aGVtIHNvLCBwbGVhc2UgcmVwb3J0IHRoaXMgYXMgYSBidWcuCisuCisuU0ggRUpFTVBMT1MKK0hheSB2YXJpb3MgcGFxdWV0ZXMgcXVlIHByb3BvcmNpb25hbiB1biBlZGl0b3IgZGUgdGV4dG8gY29tcGF0aWJsZSBjb24KK1xmQnZpXGZQLCBwb3IgZWplbXBsbyBcZkJudmlcZlB5IFxmQnZpbVxmUC4gRWwgZ3J1cG8gZGUgZW5sYWNlcyBcZkJ2aVxmUCBzZWxlY2Npb25hIGN1YWwKK3NlIHVzYSwgaW5jbHV5ZW5kbyBlbmxhY2VzIHBhcmEgZWwgcHJvZ3JhbWEgeSBsYSBw4WdpbmEgZGVsIG1hbnVhbCBhc29jaWFkYS4KKy5QUAorVG8gZGlzcGxheSB0aGUgYXZhaWxhYmxlIHBhY2thZ2VzIHdoaWNoIHByb3ZpZGUgXGZCdmlcZlAgYW5kIHRoZSBjdXJyZW50CitzZXR0aW5nIGZvciBpdCwgdXNlIHRoZSBcZkJcLVwtZGlzcGxheVxmUCBhY3Rpb246CisuUlMKKy5QUAorXGZCdXBkYXRlXC1hbHRlcm5hdGl2ZXMgXC1cLWRpc3BsYXkgdmlcZlAKKy5SRQorLlBQCitQYXJhIGVsZWdpciB1bmEgaW1wbGVtZW50YWNp824gZGUgXGZCdmlcZlAgZW4gcGFydGljdWxhciB1c2UgbGEgc2lndWllbnRlIG9yZGVuCitjb21vIGVsIHVzdWFyaW8gq3Jvb3S7IHkgc2VsZWNjaW9uZSB1biBu+m1lcm8gZGUgbGEgbGlzdGE6CisuUlMKKy5QUAorXGZCdXBkYXRlXC1hbHRlcm5hdGl2ZXMgXC1cLWNvbmZpZyB2aVxmUAorLlJFCisuUFAKK1BhcmEgcXVlIGxhIGltcGxlbWVudGFjafNuIGRlIFxmQnZpXGZQIHNlIHZ1ZWx2YSBhIGVsZWdpciBkZSBmb3JtYSBhdXRvbeF0aWNhLAoraGFnYSBjb21vIGFkbWluaXN0cmFkb3I6CisuUlMKKy5QUAorXGZCdXBkYXRlXC1hbHRlcm5hdGl2ZXMgXC1cLWF1dG8gdmlcZlAKKy5SRQorLgorLlNIIEZBTExPUworU2kgZW5jdWVudHJhIGFsZ/puIGZhbGxvIGluZm9ybWUgZGUgZWxsbyB1c2FuZG8gZWwgc2lzdGVtYSBkZSBzZWd1aW1pZW50byBkZQorZmFsbG9zIGRlIERlYmlhbi4KKy5QUAorU2kgZW5jdWVudHJhIGFsZ3VuYSBkaXNjcmVwYW5jaWEgZW50cmUgZWwgbW9kbyBkZSBvcGVyYXIgZGUKK1xmQnVwZGF0ZVwtYWx0ZXJuYXRpdmVzXGZQIHkgZXN0YSBw4WdpbmEgZGVsIG1hbnVhbCwgZXMgdW4gZmFsbG8sIGJpZW4gZW4gbGEKK2ltcGxlbWVudGFjafNuIG8gYmllbiBlbiBsYSBkb2N1bWVudGFjafNuLiBMZSByb2dhbW9zIHF1ZSBpbmZvcm1lIGRlIGVsbG8uCisuCisuU0ggQVVUT1JFUworQ29weXJpZ2h0IFwoY28gMTk5NSBJYW4gSmFja3NvbgorLmJyCitDb3B5cmlnaHQgXChjbyAyMDA5IFJhcGhhXFs6ZV1sIEhlcnR6b2cKKy5zcAorRXN0byBlcyBzb2Z0d2FyZSBsaWJyZTsgdmVhIGxhIHZlcnNp824gMiBvIHBvc3RlcmlvciBkZSBsYSBMaWNlbmNpYSBQ+mJsaWNhCitHZW5lcmFsIEdOVSBwYXJhIGNvbmRpY2lvbmVzIGRlIGNvcGlhLiBOTyBoYXkgbmluZ3VuYSBnYXJhbnTtYS4KKy5QUAorTG9zIGRlcmVjaG9zIGRlIGF1dG9yIGRlIGVzdGEgcOFnaW5hIGRlIG1hbnVhbCBwZXJ0ZW5lY2VuIGEgQ2hhcmxlcworQnJpc2NvZVwtU21pdGggeSBvdHJvcywgMTk5NywxOTk4LgorLnNwCitFc3RvIGVzIHNvZnR3YXJlIGxpYnJlOyB2ZWEgbGEgdmVyc2nzbiAyIG8gcG9zdGVyaW9yIGRlIGxhIExpY2VuY2lhIFD6YmxpY2EKK0dlbmVyYWwgR05VIHBhcmEgY29uZGljaW9uZXMgZGUgY29waWEuIE5PIGhheSBuaW5ndW5hIGdhcmFudO1hLgorLgorLlNIICJWyUFTRSBUQU1CSclOIgorXGZCbG5cZlAoMSksIEZIUywgZWwgZXN04W5kYXIgZGUgbGEgamVyYXJxde1hIGRlbCBzaXN0ZW1hIGRlIGZpY2hlcm9zLgorLlNIICJUUkFEVUNUT1IiCitSdWR5IEdvZG95IDxydWR5QGtlcm5lbFwtcGFuaWsub3JnPiwKK1J1YuluIFBvcnJhcyA8bmFob29AaW5pY2lhLmVzPiwKK0JydW5vIEJhcnJlcmEgQy4gPGJydW5vLmJhcnJlcmFAaWdsb28uY2w+LAorQ2FybG9zIEl6cXVpZXJkbyA8Z2hlZXNoQGVydGlzLm5ldD4sCitFc3RlYmFuIE1hbmNoYWRvIHkKK05PSy4KK0RlYmlhbiBMMTBuIFNwYW5pc2ggPGRlYmlhblwtbDEwblwtc3BhbmlzaEBsaXN0cy5kZWJpYW4ub3JnPi4KKy5icgorUmV2aXNpb25lcyBwb3IgU2FudGlhZ28gVmlsYSA8c2FudmlsYUB1bmV4LmVzPiwKK0phdmllciBGZXJu4W5kZXpcLVNhbmd1aW5vLCBSdWLpbiBQb3JyYXMsCitMdWlzIFVyaWJlIHkgT21hciBDYW1wYWduZS4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL2ZyL2RlYi1jb250cm9sLjUgYi9kcGtnLTEuMTYuMS4xL21hbi9mci9kZWItY29udHJvbC41Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmRkMjdjOWUKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9mci9kZWItY29udHJvbC41CkBAIC0wLDAgKzEsMjU2IEBACisuXCIgQXV0aG9yOiBSYXVsIE1pbGxlcgorLlwiIEluY2x1ZGVzIHRleHQgZnJvbSB0aGUgZGViaWFuIEd1aWRlbGluZXMgYnkgSWFuIEphY2tzb24sIElhbiBNdXJkb2NrCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkZWJcLWNvbnRyb2wgNSAyMDExXC0wOFwtMTQgIlByb2pldCBEZWJpYW4iIERlYmlhbgorLlNIIE5PTQorZGViXC1jb250cm9sIFwtIEZvcm1hdCBkdSBmaWNoaWVyIHByaW5jaXBhbCBkZSBjb250cvRsZSBkYW5zIGxlcyBwYXF1ZXRzCitEZWJpYW4KKy4KKy5TSCBTWU5PUFNJUworY29udHL0bGUKKy4KKy5TSCBERVNDUklQVElPTgorQ2hhcXVlIHBhcXVldCBEZWJpYW4gcG9zc+hkZSB1biBmaWNoaWVyIHByaW5jaXBhbCBkZSBjb250cvRsZSBxdWkgY29udGllbnQKK3VuIGNlcnRhaW4gbm9tYnJlIGRlIGNoYW1wcyBvdSBkZSBjb21tZW50YWlyZXMgcG91ciBsZXMgbGlnbmVzIGNvbW1lbudhbnQKK3BhciB1biBjYXJhY3TocmUgq1wgXGZCI1xmUFwguy4gQ2hhcXVlIGNoYW1wIGNvbW1lbmNlIHBhciB1bmUg6XRpcXVldHRlLCB0ZWxsZQorcXVlIFxmQlBhY2thZ2VcZlAgb3UgXGZCVmVyc2lvblxmUCAobGEgY2Fzc2UgbidpbXBvcnRlIHBhcyksIHN1aXZpZSBkJ3VuIKtcIDpcILssIGV0CitkdSBjb250ZW51IGR1IGNoYW1wLiBMZXMgY2hhbXBzIHNvbnQgc+lwYXLpcyBzZXVsZW1lbnQgcGFyIGRlcyDpdGlxdWV0dGVzIGRlCitjaGFtcC4gRW4gZCdhdXRyZXMgdGVybWVzLCBsZSBjb250ZW51IGQndW4gY2hhbXAgcGV1dCBzJ+l0ZW5kcmUgc3VyCitwbHVzaWV1cnMgbGlnbmVzLCBtYWlzIGxlcyBvdXRpbHMgZCdpbnN0YWxsYXRpb24gam9pbmRyb250IGVuIGfpbulyYWwgbGVzCitsaWduZXMgcGVuZGFudCBsZSB0cmFpdGVtZW50IGR1IGNvbnRlbnUgZHUgY2hhbXAgKHNhdWYgcG91ciBsZSBjaGFtcAorXGZCRGVzY3JpcHRpb25cZlAsIHZveWV6IGNpXC1kZXNzb3VzKS4KKy4KKy5TSCAiTEVTIENIQU1QUyBFWElHyVMiCisuVFAgCitcZkJQYWNrYWdlOlxmUFxmSSBub21cLWR1XC1wYXF1ZXRcZlAKK0xhIHZhbGV1ciBkZSBjZSBjaGFtcCBkb25uZSBsZSBub20gZHUgcGFxdWV0LCBldCBsYSBwbHVwYXJ0IGRlcyBvdXRpbHMKK2QnaW5zdGFsbGF0aW9uIHMnZW4gc2VydmVudCBwb3VyIHByb2R1aXJlIGxlcyBub21zIGRlcyBwYXF1ZXRzLgorLlRQIAorXGZCVmVyc2lvbjpcZlAgXGZJY2hh7m5lIHBvdXIgbGEgdmVyc2lvblxmUAorQydlc3QgY2xhc3NpcXVlbWVudCBsZSBudW3pcm8gZGUgdmVyc2lvbiBkdSBwYXF1ZXQgZCdvcmlnaW5lIGRhbnMgbGEgZm9ybWUKK2Nob2lzaWUgcGFyIGwnYXV0ZXVyIGR1IHByb2dyYW1tZS4gSWwgcGV1dCB5IGF2b2lyIGF1c3NpIHVuIG51belybyBkZQorcul2aXNpb24gRGViaWFuIChwb3VyIGxlcyBwYXF1ZXRzIG5vbiBuYXRpZnMpLiBMZSBmb3JtYXQgZXhhY3QgZXQKK2wnYWxnb3JpdGhtZSBkZSB0cmkgc29udCBk6WNyaXRzIGRhbnMgXGZCZGViXC12ZXJzaW9uXGZQKDUpLgorLlRQIAorXGZCTWFpbnRhaW5lcjpcZlAgXGZJIG5vbVwtY29tcGxldFwtYWRyZXNzZVwt6WxlY3Ryb25pcXVlXGZQCitMZSBmb3JtYXQgZGUgY2UgY2hhbXAgc2VyYSCrXCBKZWFuIER1cG9udCA8amR1cG9udEBmb28uY29tPlwgu1wgOyBldAorYydlc3QgYmllbiBz+3IgbGUgY3LpYXRldXIgZHUgcGFxdWV0LCBwYXIgb3Bwb3NpdGlvbiDgIGwnYXV0ZXVyIGR1IHByb2dyYW1tZQorbWlzIGVuIHBhcXVldC4KKy5UUCAKK1xmQkRlc2NyaXB0aW9uOlxmUCBcZkkgZGVzY3JpcHRpb24gY291cnRlXGZQCitcZkIgXGZQXGZJZGVzY3JpcHRpb24gbG9uZ3VlXGZQCisuYnIKK0xlIGZvcm1hdCBkZSBsYSBkZXNjcmlwdGlvbiBkdSBwYXF1ZXQgZXN0IHVuIHLpc3Vt6SBicmVmIHN1ciBsYSBwcmVtaehyZQorbGlnbmUgKGFwcuhzIGxlIGNoYW1wIKtcIERlc2NyaXB0aW9uXCC7KS4gTGVzIGxpZ25lcyBzdWl2YW50ZXMgcGV1dmVudCBzZXJ2aXIKK+AgdW5lIGRlc2NyaXB0aW9uIHBsdXMgbG9uZ3VlIGV0IHBsdXMgZOl0YWlsbOllLiBDaGFxdWUgbGlnbmUgZGUgY2V0dGUKK2Rlc2NyaXB0aW9uIGxvbmd1ZSBkb2l0IOp0cmUgcHLpY+lk6WUgZCd1bmUgZXNwYWNlXCA7IHF1YW5kIGMnZXN0IHVuZSBsaWduZQorYmxhbmNoZSwgZWxsZSBkb2l0IGNvbnRlbmlyIHVuIHNldWwgq1wgLlwguyBhcHLocyBjZXQgZXNwYWNlLgorLgorLlNIICJDSEFNUFMgT1BUSU9OTkVMUyIKKy5UUCAKK1xmQlNlY3Rpb246XGZQIFxmSSBzZWN0aW9uXGZQCitDJ2VzdCB1biBjaGFtcCBn6W7pcmFsIHF1aSBpbmRpcXVlIGxhIGNhdOlnb3JpZSBkJ3VuIHBhcXVldFwgOyBjZXR0ZQorY2F06WdvcmllIGVzdCBmb25k6WUgc3VyIGxlIHByb2dyYW1tZSBxdWUgY2UgcGFxdWV0IGluc3RhbGxlLiCrXCBVdGlsc1wguywKK6tcIG5ldFwguywgq1wgbWFpbFwguywgq1wgdGV4dFwguywgq1wgeDExXCC7LCBldGMuIHJlcHLpc2VudGVudCBxdWVscXVlcyBjYXTpZ29yaWVzCitoYWJpdHVlbGxlcy4KKy5UUCAKK1xmQlByaW9yaXR5OlxmUCBcZklwcmlvcml06VxmUAorROlmaW5pdCBsJ2ltcG9ydGFuY2UgZHUgcGFxdWV0IOAgbCdpbnTpcmlldXIgZHUgc3lzdOhtZQorZ+lu6XJhbC4gq1wgUmVxdWlyZWRcILssIKtcIHN0YW5kYXJkXCC7LCCrXCBvcHRpb25hbFwguywgq1wgZXh0cmFcILssCitldGMuIHJlcHLpc2VudGVudCBkZXMgcHJpb3JpdOlzIGhhYml0dWVsbGVzLgorLkxQCitMZXMgY2hhbXBzIFxmQlNlY3Rpb25cZlAgZXQgXGZCUHJpb3JpdHlcZlAgcG9zc+hkZW50IHVuIGVuc2VtYmxlIGTpZmluaSBkZSB2YWxldXJzCithY2NlcHTpZXMsIHRpcukgZGUgbGEgQ2hhcnRlIERlYmlhbiAoq1wgRGViaWFuIFBvbGljeVwguykuIE9uIHBldXQgZW4gdHJvdXZlcgordW5lIGxpc3RlIGRhbnMgbGEgdmVyc2lvbiBsYSBwbHVzIHLpY2VudGUgZHUgcGFxdWV0IFxmQmRlYmlhblwtcG9saWN5XGZQLgorLlRQIAorXGZCRXNzZW50aWFsOlxmUCBcZkJ5ZXNcZlB8XGZCbm9cZlAKK09uIHNlIHNlcnQgaGFiaXR1ZWxsZW1lbnQgZGUgY2UgY2hhbXAgdW5pcXVlbWVudCBzaSBsYSBy6XBvbnNlIGVzdAorXGZCeWVzXGZQLiBJbCBzaWduaWZpZSBxdWUgY2UgcGFxdWV0IGVzdCBleGln6SBwb3VyIHVuIGZvbmN0aW9ubmVtZW50IGNvcnJlY3QKK2R1IHN5c3TobWUuIERwa2cgZXQgbGVzIGF1dHJlcyBvdXRpbHMgZCdpbnN0YWxsYXRpb24gaW50ZXJkaXNlbnQgbGEKK3N1cHByZXNzaW9uIGQndW4gcGFxdWV0IFxmQkVzc2VudGlhbFxmUCAoZHUgbW9pbnMgdGFudCBxdSd1bmUgZGVzIG9wdGlvbnMgZGUKK2ZvcudhZ2Ugbidlc3QgcGFzIHV0aWxpc+llKS4KKy5UUCAKK1xmQkFyY2hpdGVjdHVyZTpcZlAgXGZJYXJjaFxmUHxcZkJhbGxcZlAKK0wnYXJjaGl0ZWN0dXJlIHBy6WNpc2UgcG91ciBxdWVsIHR5cGUgZGUgbWF06XJpZWwgbGUgcGFxdWV0IGEg6XTpCitjb21waWzpLiBWb2ljaSBxdWVscXVlcyBhcmNoaXRlY3R1cmVzIGhhYml0dWVsbGVzXCA6IKtcIGkzODZcILssIKtcIG02OGtcILssCiurXCBzcGFyY1wguywgq1wgYWxwaGFcILssIKtcIHBvd2VycGNcILssIGV0Yy4gUmVtYXJxdWV6IHF1ZSBsJ29wdGlvbiBcZkJhbGxcZlAKK3NpZ25pZmllIHF1ZSBsZSBwYXF1ZXQgZXN0IGluZOlwZW5kYW50IGRlIHRvdXRlIGFyY2hpdGVjdHVyZS4gTGVzIHNjcmlwdHMKK3NoZWxsIG91IFBlcmwsIGFpbnNpIHF1ZSBsYSBkb2N1bWVudGF0aW9uIHNvbnQgZGFucyBjZSBjYXMuCisuVFAgCitcZkJPcmlnaW46XGZQIFxmSSBub21cZlAKK05vbSBkZSBsYSBkaXN0cmlidXRpb24gZG9udCBjZSBwYXF1ZXQgcHJvdmllbnQuCisuVFAgCitcZkJCdWdzOlxmUCBcZkkgVVJMXGZQCitcZkl1cmxcZlBVUkwgZHUgc3lzdOhtZSBkZSBzdWl2aSBkZSBib2d1ZXMgKEJUUykgZGUgY2UgcGFxdWV0LiBMZSBmb3JtYXQKK3V0aWxpc+kgZXN0IFxmSXR5cGVfZGVfYnRzXGZQXGZCOi8vXGZQXGZJYWRyZXNzZV9kdV9idHNcZlAsIHBhciBleGVtcGxlCitcZkJkZWJidWdzOi8vYnVncy5kZWJpYW4ub3JnXGZQLgorLlRQIAorXGZCSG9tZXBhZ2U6XGZQXGZJIFVSTFxmUAorXGZJVVJMXGZQIGRlIGxhIHBhZ2UgZCdhY2N1ZWlsIGR1IHByb2pldCBhbW9udC4KKy5UUCAKK1xmQlRhZzpcZlAgXGZJbGlzdGUgZCfpdGlxdWV0dGVzXGZQCitMaXN0ZSBkJ+l0aXF1ZXR0ZXMgZOljcml2YW50IGxlcyBxdWFsaXTpcyBkdSBwYXF1ZXQuIExhIGRlc2NyaXB0aW9uIGV0IGxhCitsaXN0ZSBkZXMg6XRpcXVldHRlcyAoq1wgdGFnc1wguykgZ+ly6WVzIHBldXQg6nRyZSB0cm91dullIGRhbnMgbGUgcGFxdWV0CitcZkJkZWJ0YWdzXGZQLgorLlRQIAorXGZCTXVsdGlcLUFyY2g6XGZQIFxmQnNhbWVcZlB8XGZCZm9yZWlnblxmUHxcZkJhbGxvd2VkXGZQCitUaGlzIGZpZWxkIGlzIHVzZWQgdG8gaW5kaWNhdGUgaG93IHRoaXMgcGFja2FnZSBzaG91bGQgYmVoYXZlIG9uIGEKK211bHRpXC1hcmNoIGluc3RhbGxhdGlvbnMuIFRoZSB2YWx1ZSBcZkJzYW1lXGZQIG1lYW5zIHRoYXQgdGhlIHBhY2thZ2UgaXMKK2NvXC1pbnN0YWxsYWJsZSB3aXRoIGl0c2VsZiwgYnV0IGl0IG11c3Qgbm90IGJlIHVzZWQgdG8gc2F0aXNmeSB0aGUKK2RlcGVuZGVuY3kgb2YgYW55IHBhY2thZ2Ugb2YgYSBkaWZmZXJlbnQgYXJjaGl0ZWN0dXJlIGZyb20gaXRzZWxmLiBUaGUgdmFsdWUKK1xmQmZvcmVpZ25cZlAgbWVhbnMgdGhhdCB0aGUgcGFja2FnZSBpcyBub3QgY29cLWluc3RhbGxhYmxlIHdpdGggaXRzZWxmLCBidXQKK3Nob3VsZCBiZSBhbGxvd2VkIHRvIHNhdGlzZnkgdGhlIGRlcGVuZGVuY3kgb2YgYSBwYWNrYWdlIG9mIGEgZGlmZmVyZW50IGFyY2gKK2Zyb20gaXRzZWxmLiBUaGUgdmFsdWUgXGZCYWxsb3dlZFxmUCBhbGxvd3MgcmV2ZXJzZVwtZGVwZW5kZW5jaWVzIHRvIGluZGljYXRlIGluCit0aGVpciBEZXBlbmRzIGZpZWxkIHRoYXQgdGhleSBuZWVkIGEgcGFja2FnZSBmcm9tIGEgZm9yZWlnbiBhcmNoaXRlY3R1cmUsCitidXQgaGFzIG5vIGVmZmVjdCBvdGhlcndpc2UuIFRoaXMgZmllbGQgc2hvdWxkIG5vdCBiZSBwcmVzZW50IGluIHBhY2thZ2VzCit3aXRoIHRoZSBcZkJBcmNoaXRlY3R1cmU6IGFsbFxmUCBmaWVsZC4KKy5UUCAKK1xmQlNvdXJjZTpcZlBcZkkgbm9tIGR1IHNvdXJjZVxmUAorTGUgbm9tIGR1IHBhcXVldCBzb3VyY2UgZCdv+SBwcm92aWVudCBsZSBwYXF1ZXQgYmluYWlyZSwgcydpbCB5IGEgdW5lCitkaWZm6XJlbmNlIGVudHJlIGxlcyBkZXV4IG5vbXMuCisKKy5UUCAKKy5QRCAwCitcZkJTdWJhcmNoaXRlY3R1cmU6XGZQXGZJIHZhbGV1clxmUAorLlRQIAorLlBEIDAKK1xmQktlcm5lbFwtVmVyc2lvbjpcZlBcZkkgdmFsZXVyXGZQCisuVFAgCisuUEQKK1xmQkluc3RhbGxlclwtTWVudVwtSXRlbTpcZlBcZkkgdmFsZXVyXGZQCitDZXMgY2hhbXBzIHNvbnQgdXRpbGlz6XMgcGFyIGwnaW5zdGFsbGF0ZXVyIGV0IG5lIHNvbnQgZW4gZ+lu6XJhbCBwYXMKK27pY2Vzc2FpcmVzLiBWZXVpbGxleiBjb25zdWx0ZXIKKy91c3Ivc2hhcmUvZG9jL2RlYmlhblwtaW5zdGFsbGVyL2RldmVsL21vZHVsZXMudHh0ICBmb3VybmkgYXZlYyBsZSBwYXF1ZXQKK1xmQmRlYmlhblwtaW5zdGFsbGVyXGZQIHBvdXIgcGx1cyBkZSBk6XRhaWxzLgorCisuVFAgCitcZkJEZXBlbmRzOlxmUFxmSSBsaXN0ZSBkZSBwYXF1ZXRzXGZQCitDJ2VzdCBsYSBsaXN0ZSBkZXMgcGFxdWV0cyBleGln6XMgcG91ciBxdWUgY2UgcGFxdWV0IGFycml2ZSDgIGZvbmN0aW9ubmVyIGRlCittYW5p6HJlIG5vbiB0cml2aWFsZS4gTGUgcHJvZ3JhbW1lIGRlIG1haW50ZW5hbmNlIGRlcyBwYXF1ZXRzIGludGVyZGl0CitsJ2luc3RhbGxhdGlvbiBkJ3VuIHBhcXVldCBxdWFuZCBsZXMgcGFxdWV0cyBy6XBlcnRvcmnpcyBkYW5zIGxlIGNoYW1wCitcZkJEZXBlbmRzXGZQIG5lIHNvbnQgcGFzIGluc3RhbGzpcyAoZHUgbW9pbnMgdGFudCBxdSd1bmUgb3B0aW9uIGRlIGZvcudhZ2UKK24nZXN0IHBhcyB1dGlsaXPpZSlcIDsgaWwgbGFuY2UgbGVzIHNjcmlwdHMgq1wgcG9zdGluc3RcILsgZGVzIHBhcXVldHMKK3LpcGVydG9yaelzIGRhbnMgbGVzIGNoYW1wcyCrXCBEZXBlbmRzOlwguyBhdmFudCBsZXMgc2NyaXB0cyCrXCBwb3N0aW5zdFwguyBkZXMKK3BhcXVldHMgcXVpIGTpcGVuZGVudCBkJ2V1eC4gwCBsJ2ludmVyc2UsIGxvcnMgZCd1bmUgc3VwcHJlc3Npb24gbGVzIHNjcmlwdHMKK6tcIHByZXJtXCC7IGRlcyBwYXF1ZXRzIHNvbnQgbGFuY+lzIGF2YW50IGNldXggZGUgbGV1cnMgZOlwZW5kYW5jZXMuCisuVFAgCitcZkJQcmVcLURlcGVuZHM6XGZQXGZJIGxpc3RlIGRlIHBhcXVldHNcZlAKK0MnZXN0IGxhIGxpc3RlIGRlcyBwYXF1ZXRzIHF1aSBkb2l2ZW50IOp0cmUgaW5zdGFsbOlzIFxmQmV0XGZQIGNvbmZpZ3Vy6XMgYXZhbnQKK3F1ZSBjZSBwYXF1ZXQgcHVpc3NlIOp0cmUgaW5zdGFsbOkuIEhhYml0dWVsbGVtZW50LCBvbiB1dGlsaXNlIGNlIGNoYW1wCitxdWFuZCB1biBwYXF1ZXQgYSBiZXNvaW4gZCd1biBhdXRyZSBwYXF1ZXQgcG91ciBsYW5jZXIgc29uIHNjcmlwdAorq1wgcHJlaW5zdFwguy4KKy5UUCAKK1xmQlJlY29tbWVuZHM6XGZQXGZJIGxpc3RlIGRlIHBhcXVldHNcZlAKK0MnZXN0IGxhIGxpc3RlIGRlcyBwYXF1ZXRzIHF1J29uIHRyb3V2ZXJhaXQgYXZlYyBjZSBwYXF1ZXQgZGFucyB0b3V0ZQoraW5zdGFsbGF0aW9uIHN0YW5kYXJkLiBMZSBwcm9ncmFtbWUgZGUgbWFpbnRlbmFuY2UgZGVzIHBhcXVldHMgYXZlcnRpdAorbCd1dGlsaXNhdGV1ciBxdWFuZCBpbCBpbnN0YWxsZSB1biBwYXF1ZXQgc2FucyBpbnN0YWxsZXIgbGVzIHBhcXVldHMKK3LpcGVydG9yaelzIGRhbnMgbGUgY2hhbXAgXGZCUmVjb21tZW5kcy5cZlAKKy5UUCAKK1xmQlN1Z2dlc3RzOlxmUFxmSWxpc3RlIGRlIHBhcXVldHNcZlAKK0MnZXN0IGxhIGxpc3RlIGRlcyBwYXF1ZXRzIHF1aSwgYXNzb2Np6XMgYXZlYyBjZSBwYXF1ZXQsIHBldXZlbnQgYW3pbGlvcmVyCitzb24gdXRpbGl06VwgOyBu6WFubW9pbnMsIHVuZSBpbnN0YWxsYXRpb24gc2FucyBjZXMgcGFxdWV0cyBlc3QgcGFyZmFpdGVtZW50CityYWlzb25uYWJsZS4KKy5MUAorTGEgc3ludGF4ZSBkZXMgY2hhbXBzIFxmQkRlcGVuZHMsXGZQIFxmQlByZVwtRGVwZW5kcyxcZlAgXGZCUmVjb21tZW5kcyxcZlAgZXQKK1xmQlN1Z2dlc3RzXGZQIGVzdCB1bmUgbGlzdGUgZGUgZ3JvdXBlcyBjb250ZW5hbnQgZGVzIHBhcXVldHMKK3N1Y2Nlc3NpZnMuIENoYXF1ZSBncm91cGUgZXN0IHVuZSBsaXN0ZSBkZSBwYXF1ZXRzIHPpcGFy6XMgcGFyIHVuZSBiYXJyZQordmVydGljYWxlIChsZSBzeW1ib2xlIGR1IHR1YmUpIKtcIHxcILsuIExlcyBncm91cGVzIHNvbnQgc+lwYXLpcyBwYXIgZGVzCit2aXJndWxlcy4gVW5lIHZpcmd1bGUgcmVwculzZW50ZSB1biCrXCBFVFwguyBsb2dpcXVlIGV0IHVuZSBiYXJyZSB2ZXJ0aWNhbGUKK3JlcHLpc2VudGUgdW4gq1wgT1VcILsgbG9naXF1ZVwgOyBsZSB0dWJlIHJlcHLpc2VudGUgdW4gbGllbiBwbHVzIGZvcnQuIENoYXF1ZQor6WzpbWVudCBlc3QgbGUgbm9tIGQndW4gcGFxdWV0IHN1aXZpIGRlIGZh529uIG9wdGlvbm5lbGxlIHBhciB1biBudW3pcm8gZGUKK3ZlcnNpb24gZW50cmUgcGFyZW50aOhzZXMuCisuTFAKK1VuIG51belybyBkZSB2ZXJzaW9uIHBldXQgY29tbWVuY2VyIHBhciCrXCA+PlwguywgZXQgZGFucyBjZSBjYXMgdG91dGUKK3ZlcnNpb24gc3Vw6XJpZXVyZSBjb3JyZXNwb25kcmEsIGV0IGlsIHBldXQgaW5kaXF1ZXIgKG91IHBhcykgbGUgbnVt6XJvIGRlCity6XZpc2lvbiBwb3VyIGxlIHBhcXVldCBkZWJpYW4gKGxlcyBkZXV4IG51belyb3Mg6XRhbnQgc+lwYXLpcyBwYXIgdW4gdHJhaXQKK2QndW5pb24pLiBWb2ljaSBsZXMgcmVsYXRpb25zIGFjY2VwdOllcyBwb3VyIGxlcyB2ZXJzaW9uc1wgOiCrXCA+PlwguworcG91ciBzdXDpcmlldXIg4Cwgq1wgPDxcILsgcG91ciBpbmbpcmlldXIg4Cwgq1wgPj1cILsgcG91ciBzdXDpcmlldXIKK291IOlnYWwsIKtcIDw9XCC7IHBvdXIgaW5m6XJpZXVyIG91IOlnYWwsIGV0IKtcID1cILsgcG91ciDpZ2FsIOAuCisuVFAgCitcZkJCcmVha3M6XGZQXGZJbGlzdGUgZGUgcGFxdWV0c1xmUAorQydlc3QgdW5lIGxpc3RlIGRlIHBhcXVldHMgcXVlIGNlIHBhcXVldCCrXCBjYXNzZVwguywgcGFyIGV4ZW1wbGUgZW4gcul26WxhbnQKK2RlcyBib2d1ZXMgcXVhbmQgbGVzIHBhcXVldHMgY29uY2VybulzIGTpcGVuZGVudCBkZSBjZWx1aVwtY2kuIExlIHByb2dyYW1tZQorZGUgbWFpbnRlbmFuY2UgZGVzIHBhcXVldHMgaW50ZXJkaXQgbGEgY29uZmlndXJhdGlvbiBkZSBwYXF1ZXRzIGNhc3Ppc1wgO1wgdW5lCitt6XRob2RlIHVzdWVsbGUgZGUgculzb2x1dGlvbiBlc3QgbGEgbWlzZSDgIGpvdXIgZGVzIHBhcXVldHMgbWVudGlvbm7pcyBkYW5zCitsZSBjaGFtcCBcZkJCcmVha3NcZlAuCisuVFAgCitcZkJDb25mbGljdHM6XGZQXGZJbGlzdGUgZGUgcGFxdWV0c1xmUAorQydlc3QgdW5lIGxpc3RlIGRlIHBhcXVldHMgcXVpIHNvbnQgZW4gY29uZmxpdCBhdmVjIGNlIHBhcXVldFwgOyBpbHMKK2NvbnRpZW5uZW50IHBhciBleGVtcGxlIGRlcyBmaWNoaWVycyBxdWkgb250IGxlIG3qbWUgbm9tLiBMZSBwcm9ncmFtbWUgZGUKK21haW50ZW5hbmNlIGRlcyBwYXF1ZXRzIGludGVyZGl0IGwnaW5zdGFsbGF0aW9uIHNpbXVsdGFu6WUgZGUgcGFxdWV0cyBlbgorY29uZmxpdC4gRGV1eCBwYXF1ZXRzIGVuIGNvbmZsaXQgcmVuc2VpZ25lcm9udCB1bmUgbGlnbmUgXGZCQ29uZmxpY3RzXGZQIGF2ZWMKK2xlIG5vbSBkZSBsJ2F1dHJlIHBhcXVldC4KKy5UUCAKK1xmQlJlcGxhY2VzOlxmUFxmSSBsaXN0ZSBkZSBwYXF1ZXRzXGZQCitDJ2VzdCB1bmUgbGlzdGUgZGUgcGFxdWV0cyBxdWUgY2UgcGFxdWV0IHJlbXBsYWNlLiBJbCBwZXV0IGFpbnNpIHJlbXBsYWNlcgorbGVzIGZpY2hpZXJzIGRlIGNlcyBhdXRyZXMgcGFxdWV0c1wgOyBvbiBzZSBzZXJ0IHBvdXIgY2VsYSBkdSBjaGFtcAorXGZCQ29uZmxpY3RzXGZQIHBvdXIgZm9yY2VyIGxhIHN1cHByZXNzaW9uIGRlcyBhdXRyZXMgcGFxdWV0cywgc2kgY2VsdWlcLWzgCitwb3Nz6GRlIGF1c3NpIGxlcyBt6m1lcyBmaWNoaWVycyBxdWUgbGUgcGFxdWV0IGVuIGNvbmZsaXQuCisuVFAgCitcZkJQcm92aWRlczpcZlAgXGZJbGlzdGUgZGUgcGFxdWV0c1xmUAorQydlc3QgdW5lIGxpc3RlIGRlIHBhcXVldHMgdmlydHVlbHMgcXVlIGNlIHBhcXVldCCrXCByZW1wbGl0XCC7LiBPbiBzJ2VuIHNlcnQKK2hhYml0dWVsbGVtZW50IHBvdXIgZGVzIHBhcXVldHMgcXVpIG9mZnJlbnQgbGUgbeptZSBzZXJ2aWNlLiBQYXIgZXhlbXBsZSwKK3NlbmRtYWlsIGV0IGV4aW0gc29udCBkZXMgc2VydmV1cnMgZGUgY291cnJpZXIsIGV0IGRvbmMgaWxzIKtcIHJlbXBsaXNzZW50XCC7CitjaGFjdW4gbGUgcGFxdWV0IKtcIG1haWxcLXRyYW5zcG9ydFwtYWdlbnRcILtcIDsgYWluc2kgbGVzIGF1dHJlcyBwYXF1ZXRzIHBldXZlbnQKK2TpcGVuZHJlIGRlIGNlIHBhcXVldCB2aXJ0dWVsLiBTZW5kbWFpbCBldCBleGltIHBldXZlbnQgYWluc2kgY2hhY3VuCitzYXRpc2ZhaXJlIGxhIGTpcGVuZGFuY2UuIExlcyBwYXF1ZXRzIHF1aSBk6XBlbmRlbnQgZCd1biBzZXJ2ZXVyIGRlIGNvdXJyaWVyCituJ29udCBwYXMg4CBjb25uYe50cmUgbGVzIG5vbXMgZGUgdG91cyBsZXMgc2VydmV1cnMgZGUgY291cnJpZXIgZXQgbidvbnQgcGFzCivgIHV0aWxpc2VyIKtcIHxcILsgY29tbWUgc+lwYXJhdGV1ciBkZSBsaXN0ZS4KKy5MUAorTGEgc3ludGF4ZSBkZXMgY2hhbXBzIFxmQkJyZWFrc1xmUCwgXGZCQ29uZmxpY3RzXGZQLCBcZkJSZXBsYWNlc1xmUCBldCBcZkJQcm92aWRlc1xmUAorZXN0IHVuZSBsaXN0ZSBkZSBub21zIGRlIHBhcXVldHMsIHPpcGFy6XMgcGFyIGRlcyB2aXJndWxlcyAoZXQgZGVzIGVzcGFjZXMKK2ZhY3VsdGF0aWZzKS4gRGFucyBsZXMgY2hhbXBzIFxmQkJyZWFrc1xmUCBldCBcZkJDb25mbGljdHNcZlAgbGEgdmlyZ3VsZSBzZXJhIGx1ZQorY29tbWUgdW4gq1wgT1VcILsuIE9uIHBldXQgZG9ubmVyIHVuZSB2ZXJzaW9uIG9wdGlvbm5lbGxlIGRlIGxhIG3qbWUgZmHnb24gcXVlCitjaVwtZGVzc3VzIGRhbnMgbGVzIGNoYW1wcyBcZkJCcmVha3NcZlAsIFxmQkNvbmZsaWN0c1xmUCBldCBcZkJSZXBsYWNlc1xmUC4KKy4KKy5UUCAKK1xmQkJ1aWx0XC1Vc2luZzpcZlBcZkkgbGlzdGUgZGUgcGFxdWV0c1xmUAorQ2UgY2hhbXAgYWZmaWNoZSBsZXMgcGFxdWV0cyBzb3VyY2Ugc3VwcGzpbWVudGFpcmVzIHV0aWxpc+llcyBsb3JzIGRlIGxhCitjb25zdHJ1Y3Rpb24gZHUgcGFxdWV0IGJpbmFpcmUuIElsIHBlcm1ldCBkJ2luZGlxdWVyIGF1eCBsb2dpY2llbHMgZGUKK2dlc3Rpb24gZGUgbCdhcmNoaXZlIHF1ZSBkZXMgcGFxdWV0cyBzb3VyY2Ugc3VwcGzpbWVudGFpcmVzIGRvaXZlbnQg6nRyZQorY29uc2VydullcyB0YW50IHF1ZSBsZSBwYXF1ZXQgYmluYWlyZSBlc3QgbWFpbnRlbnUuIENlIGNoYW1wIGRvaXQg6nRyZSB1bmUKK2xpc3RlIGRlIHBhcXVldHMgc291cmNlIGF2ZWMgZGVzIHLpZulyZW5jZXMgc3RyaWN0ZXMgZGUgdmVyc2lvbgorKD0pLiBWZXVpbGxleiBub3RlciBxdWUgbGVzIGxvZ2ljaWVscyBkZSBnZXN0aW9uIGRlIGwnYXJjaGl2ZSByaXNxdWUgZGUgbmUKK3BhcyBhY2NlcHRlciB1biBlbnZvaSBxdWkgZOljbGFyZSB1bmUgcmVsYXRpb24gXGZCQnVpbHRcLVVzaW5nXGZQIHF1aSBuZSBwZXV0CitwYXMg6nRyZSBzYXRpc2ZhaXRlIGRhbnMgbCdhcmNoaXZlLgorLgorLlNIIEVYRU1QTEUKKy5cIiAuUlMKKy5uZgorIyBDb21tZW50YWlyZQorUGFja2FnZTogZ3JlcAorRXNzZW50aWFsOiB5ZXMKK1ByaW9yaXR5OiByZXF1aXJlZAorU2VjdGlvbjogYmFzZQorTWFpbnRhaW5lcjogV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KK0FyY2hpdGVjdHVyZTogc3BhcmMKK1ZlcnNpb246IDIuNFwtMQorUHJlXC1EZXBlbmRzOiBsaWJjNiAoPj0gMi4wLjEwNSkKK1Byb3ZpZGVzOiByZ3JlcAorQ29uZmxpY3RzOiByZ3JlcAorRGVzY3JpcHRpb246IEdOVSBncmVwLCBlZ3JlcCBhbmQgZmdyZXAuCisgSWwgc2UgcGV1dCBxdWUgbGUgZ3JlcCBkZSBsYSBmYW1pbGxlIEdOVSBkZXMgdXRpbGl0YWlyZXMgZ3JlcCBzb2l0CisgbGUgcGx1cyByYXBpZGUgZGUgbCdvdWVzdFwgISBMZSBncmVwIGRlIEdOVSBlc3QgZm9uZOkgc3VyIHVuIG3pY2FuaXNtZQorIHJhcGlkZSBkZSBtaXNlIGVuIGNvcnJlc3BvbmRhbmNlIGTpdGVybWluaXN0ZSBkJ+l0YXRzIHNpbXBsZXMgKGVudmlyb24KKyBkZXV4IGZvaXMgcGx1cyByYXBpZGUgcXVlIGxlIKtcIGVncmVwXCC7IHN0YW5kYXJkIGQnVW5peCksIG1vZGlmaekgcGFyIHVuZQorIHJlY2hlcmNoZSBkZSB0eXBlIEJveWVyXC1Nb29yZVwtR29zcGVyIHF1aSBjaGVyY2hlIHVuZSBjaGHubmUgZG9ubullIGVuCisgZW1w6mNoYW50IHF1ZSBsZXMgdGV4dGVzIGltcG9zc2libGVzIHNvaWVudCBhbmFseXPpcyBwYXIgbGUgbeljYW5pc21lIGRlCisgbWlzZSBlbiBjb3JyZXNwb25kYW5jZSBkJ2V4cHJlc3Npb25zIHJhdGlvbm5lbGxlcyBldCBzYW5zIGF2b2lyCisgbuljZXNzYWlyZW1lbnQgYmVzb2luIGRlIHZvaXIgY2hhcXVlIGNhcmFjdOhyZS4gQydlc3QgYmVhdWNvdXAgcGx1cworIHJhcGlkZSAgcXVlIGxlcyCrXCBncmVwXCC7IG91IKtcIGVncmVwXCC7IGQnVW5peC4KKyAoRGVzIGV4cHJlc3Npb25zIHJhdGlvbm5lbGxlcyBjb250ZW5hbnQgZGVzIHLpZulyZW5jZXMgY2lyY3VsYWlyZXMKKyByYWxlbnRpc3NlbnQgY2VwZW5kYW50IGxlIHByb2dyYW1tZS4pCisuZmkKKy5cIiAuUkUKKy4KKy5TSCAiVk9JUiBBVVNTSSIKK1xmQmRlYlxmUCg1KSwgXGZCZGViXC12ZXJzaW9uXGZQKDUpLCBcZkJkZWJ0YWdzXGZQKDEpLCBcZkJkcGtnXGZQKDEpLCBcZkJkcGtnXC1kZWJcZlAoMSkuCisuU0ggVFJBRFVDVElPTgorQXJpZWwgVkFSREkgPGFyaWVsLnZhcmRpQGZyZWVzYmVlLmZyPiwgMjAwMi4KK1BoaWxpcHBlIEJhdGFpbGxlciwgMjAwNi4KK05pY29sYXMgRnJhbudvaXMsIDIwMDYuCitWZXVpbGxleiBzaWduYWxlciB0b3V0ZSBlcnJldXIg4CA8ZGViaWFuXC1sMTBuXC1mcmVuY2hAbGlzdHMuZGViaWFuLm9yZz4uCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9mci9kZWItZXh0cmEtb3ZlcnJpZGUuNSBiL2Rwa2ctMS4xNi4xLjEvbWFuL2ZyL2RlYi1leHRyYS1vdmVycmlkZS41Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjJlMjFlNzgKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9mci9kZWItZXh0cmEtb3ZlcnJpZGUuNQpAQCAtMCwwICsxLDQyIEBACisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkZWJcLWV4dHJhXC1vdmVycmlkZSA1IDE2XC0wOFwtMjAwOSAiUHJvamV0IERlYmlhbiIgIlV0aWxpdGFpcmVzIGRlIGRwa2ciCisuU0ggTk9NCitkZWJcLWV4dHJhXC1vdmVycmlkZSBcLSBGaWNoaWVyIG92ZXJyaWRlIHN1cHBs6W1lbnRhaXJlIGQndW5lIGFyY2hpdmUgRGViaWFuCisuCisuU0ggU1lOT1BTSVMKK292ZXJyaWRlCisuCisuU0ggREVTQ1JJUFRJT04KK0JpZW4gcXVlIGxhIG1ham9yaXTpIGRlcyBpbmZvcm1hdGlvbnMgZCd1biBwYXF1ZXQgc291cmNlIG91IGJpbmFpcmUgcHVpc3NlCivqdHJlIHRyb3V26WVzIGRhbnMgbGUgZmljaGllciBjb250cm9sLy5kc2MsIGNlcyBpbmZvcm1hdGlvbnMgcGV1dmVudCDqdHJlCityZW1wbGFj6WVzIGxvcnMgZGUgbCdleHBvcnRhdGlvbiBkYW5zIGRlcyBmaWNoaWVycyBQYWNrYWdlcyBvdVNvdXJjZXMuIExlcworZmljaGllciBkJ6tcIG92ZXJyaWRlXCC7IHN1cHBs6W1lbnRhaXJlIGNvbnRpZW50IGxlcyB2YWxldXJzIHJlbXBsYWPpZXMuCisuUFAKK0xlcyDpbOltZW50cyBkdSBmaWNoaWVyIKtcIG92ZXJyaWRlXCC7IHN1cHBs6W1lbnRhaXJlIHNvbnQgc+lwYXLpcyBzaW1wbGVtZW50CitwYXIgdW4gZXNwYWNlLiBMZXMgY29tbWVudGFpcmVzIGNvbW1lbmNlbnQgcGFyIHVuIGNhcmFjdOhyZSBcZkKrXCAjXCC7XGZQLgorLlBQCisuaW4gKzUKK1xmSXBhcXVldFxmUCBcZklub21cLWRlXC1jaGFtcFxmUCBcZkl2YWxldXJcZlAKKy5pbiAtNQorLlBQCitcZklwYXF1ZXRcZlAgZXN0IGxlIG5vbSBkdSBwYXF1ZXQgYmluYWlyZS9zb3VyY2UuCisuUFAKK1xmSW5vbVwtY2hhbXBcZlAgZXN0IGxlIG5vbSBkdSBjaGFtcCBxdWkgZXN0IHJlbXBsYWPpLiBcZkl2YWxldXJcZlAgZXN0IGxhIHZhbGV1ciDgCittZXR0cmUgZGFucyBjZSBjaGFtcC4gRWxsZSBwZXV0IGNvbnRlbmlyIGRlcyBlc3BhY2VzIGNhciBsYSBsaWduZSBlc3QKK2TpY291cOllIGVuIDMgY29sb25uZXMgYXUgcGx1cyBxdWFuZCBlbGxlIGVzdCBhbmFseXPpZS4KKy5QUAorTGVzIGZpY2hpZXJzIGRlIGTpcm9nYXRpb24gKKtcIG92ZXJyaWRlXCC7KSBzdXBwbOltZW50YWlyZXMgdXRpbGlz6XMgcG91cgor6XRhYmxpciBsZXMgZmljaGllcnMgb2ZmaWNpZWxzIKtcIFBhY2thZ2VzXCC7IHNlIHRyb3V2ZW50IGRhbnMgbGUgculwZXJ0b2lyZQorXGZJaW5kaWNlc1xmUCBkZXMgbWlyb2lycyBEZWJpYW4uCisuCisuU0ggIlZPSVIgQVVTU0kiCitcZkJkcGtnXC1zY2FucGFja2FnZXNcZlAoMSksIFxmQmRwa2dcLXNjYW5zb3VyY2VzXGZQKDEpLCBcZkJhcHRcLWZ0cGFyY2hpdmVcZlAoMSkuCisuU0ggVFJBRFVDVElPTgorQXJpZWwgVkFSREkgPGFyaWVsLnZhcmRpQGZyZWVzYmVlLmZyPiwgMjAwMi4KK1BoaWxpcHBlIEJhdGFpbGxlciwgMjAwNi4KK05pY29sYXMgRnJhbudvaXMsIDIwMDYuCitWZXVpbGxleiBzaWduYWxlciB0b3V0ZSBlcnJldXIg4CA8ZGViaWFuXC1sMTBuXC1mcmVuY2hAbGlzdHMuZGViaWFuLm9yZz4uCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9mci9kZWItb2xkLjUgYi9kcGtnLTEuMTYuMS4xL21hbi9mci9kZWItb2xkLjUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMGRkNDY3MQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL2ZyL2RlYi1vbGQuNQpAQCAtMCwwICsxLDUyIEBACisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkZWJcLW9sZCA1IDIwMTFcLTA4XC0xNCAiUHJvamV0IERlYmlhbiIgRGViaWFuCisuU0ggTk9NCitkZWJcLW9sZCBcLSBBbmNpZW4gZm9ybWF0IGRlcyBwYXF1ZXRzIGJpbmFpcmVzIERlYmlhbgorLgorLlNIIFNZTk9QU0lTCitcZklub21cLWR1XC1maWNoaWVyLmRlYlxmUAorLgorLlNIIERFU0NSSVBUSU9OCitMZSBmb3JtYXQgZGUgZmljaGllciBcZkIuZGViXGZQIGNvcnJlc3BvbmQgYXV4IHBhcXVldHMgYmluYWlyZXMgRGViaWFuLiBDZXR0ZQorcGFnZSBkZSBtYW51ZWwgZOljcml0IGwnXGZCYW5jaWVuXGZQIGZvcm1hdCwgdXRpbGlz6SBhdmFudCBsYSB2ZXJzaW9uIDAuOTMgZGUKK0RlYmlhbi4gVmV1aWxsZXogY29uc3VsdGVyIFxmQmRlYlxmUCg1KSBwb3VyIGxlcyBpbmZvcm1hdGlvbnMgc3VyIGxlIG5vdXZlYXUKK2Zvcm1hdC4KKy4KKy5TSCBGT1JNQVQKK0xlIGZpY2hpZXIgY29uc2lzdGUgZW4gZGV1eCBsaWduZXMgZCdpbmZvcm1hdGlvbiBhdSBmb3JtYXQgdGV4dGUgQVNDSUksCitzdWl2aSBwYXIgbGEgY29uY2F06W5hdGlvbiBkZSBkZXV4IGZpY2hpZXJzIHVzdGFyIGNvbXByZXNz6SBhdmVjIGd6aXAuCisuUFAKK0xhIHByZW1p6HJlIGxpZ25lIGluZGlxdWUgbGEgdmVyc2lvbiBkdSBmb3JtYXQsIHJlbXBsaWUgc3VyIDggY2hpZmZyZXMsCitjJ2VzdCDgIGRpcmUgXGZCMC45MzkwMDBcZlAgcG91ciB0b3V0ZXMgbGVzIGFyY2hpdmVzIGRhbnMgbCdhbmNpZW4gZm9ybWF0LgorLlBQCitMYSBkZXV4aehtZSBsaWduZSBmb3Vybml0IHVuIG5vbWJyZSBk6WNpbWFsIChzYW5zIHrpcm9zIGVuIHTqdGUpLCBxdWkKK2luZGlxdWUgbGEgdGFpbGxlIGRlIGxhIHByZW1p6HJlIGFyY2hpdmUgdGFyIGNvbXByZXNz6WUgYXZlYyBnemlwLgorLlBQCitDaGFjdW5lIGRlIGNlcyBsaWduZXMgc2UgdGVybWluZSBwYXIgdW4gdW5pcXVlIGNhcmFjdOhyZSBkZSBub3V2ZWxsZSBsaWduZS4KKy5QUAorTGEgcHJlbWnocmUgYXJjaGl2ZSB0YXIgY29udGllbnQgbGVzIGluZm9ybWF0aW9ucyBkZSBjb250cvRsZSwgc291cyBmb3JtZQorZCd1bmUgc+lyaWUgZGUgZmljaGllcnMgb3JkaW5haXJlcy4gTGUgZmljaGllciBcZkJjb250cm9sXGZQIGRvaXQg6nRyZSBwculzZW50LAorcHVpc3F1J2lsIGNvbnRpZW50IGxlcyBpbmZvcm1hdGlvbnMgcHJpbmNpcGFsZXMgZGUgY29udHL0bGUuCisuUFAKK0RhbnMgY2VydGFpbmVzIGFyY2hpdmVzIHZyYWltZW50IGFuY2llbm5lcywgbGVzIGZpY2hpZXJzIGRlIGwnYXJjaGl2ZSBkZQorY29udHL0bGUgcGV1dmVudCBzZSB0cm91dmVyIGRhbnMgdW4gc291c1wtculwZXJ0b2lyZSBcZkJERUJJQU5cZlAuIERhbnMgY2UgY2FzLAorbGUgc291c1wtculwZXJ0b2lyZSBcZkJERUJJQU5cZlAgc2UgdHJvdXZlIOlnYWxlbWVudCBkYW5zIGwnYXJjaGl2ZSBkZSBjb250cvRsZSwKK3F1aSBuZSBjb250aWVuZHJhIHF1ZSBkZXMgZmljaGllcnMgZGUgY2UgculwZXJ0b2lyZS4gRW4gb3B0aW9uLCBsJ2FyY2hpdmUgZGUKK2NvbnRy9GxlIHBldXQgY29udGVuaXIgdW5lIGVudHLpZSBwb3VyIFxmQi5cZlAsIGxlIHLpcGVydG9pcmUgY291cmFudC4KKy5QUAorTGEgc2Vjb25kZSBhcmNoaXZlIGNvbXByZXNz6WUgYXZlYyBnemlwIGNvcnJlc3BvbmQg4CBsJ2FyY2hpdmUg4CBwbGFjZXIgZGFucworbGUgc3lzdOhtZSBkZSBmaWNoaWVycy4gRWxsZSBjb250aWVudCBkZXMgY2hlbWlucyByZWxhdGlmcyDgIGxhIHJhY2luZSBkdQorc3lzdOhtZSBkYW5zIGxlcXVlbCBzZSBmZXJhIGwnaW5zdGFsbGF0aW9uLiBMZXMgbm9tcyBkZSBmaWNoaWVycyBuZSBk6WJ1dGVudAorcGFzIHBhciBkZXMgYmFycmVzIG9ibGlxdWVzICirXCAvXCC7KS4KKy4KKy5TSCAiVk9JUiBBVVNTSSIKK1xmQmRlYlxmUCg1KSwgXGZCZHBrZ1wtZGViXGZQKDEpLCBcZkJkZWJcLWNvbnRyb2xcZlAoNSkuCisuU0ggVFJBRFVDVElPTgorQXJpZWwgVkFSREkgPGFyaWVsLnZhcmRpQGZyZWVzYmVlLmZyPiwgMjAwMi4KK1BoaWxpcHBlIEJhdGFpbGxlciwgMjAwNi4KK05pY29sYXMgRnJhbudvaXMsIDIwMDYuCitWZXVpbGxleiBzaWduYWxlciB0b3V0ZSBlcnJldXIg4CA8ZGViaWFuXC1sMTBuXC1mcmVuY2hAbGlzdHMuZGViaWFuLm9yZz4uCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9mci9kZWItb3ZlcnJpZGUuNSBiL2Rwa2ctMS4xNi4xLjEvbWFuL2ZyL2RlYi1vdmVycmlkZS41Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmNhZWZiOWUKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9mci9kZWItb3ZlcnJpZGUuNQpAQCAtMCwwICsxLDY0IEBACisuXCIgVGhpcyBtYW5wYWdlIGlzIGNvcHlyaWdodCAoQykgMTk5NiBNaWNoYWVsIFNoaWVsZHMgPHNoaWVsZHNAY3Jvc3NsaW5rLm5ldD4uCisuXCIgVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgbWF5IHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisuXCIgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKy5cIiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorLlwiIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisuXCIKKy5cIiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisuXCIgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKy5cIiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisuXCIgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKy5cIgorLlwiIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisuXCIgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkZWJcLW92ZXJyaWRlIDUgMjAxMVwtMDhcLTE0ICJQcm9qZXQgRGViaWFuIiAiVXRpbGl0YWlyZXMgZGUgZHBrZyIKKy5TSCBOT00KK2RlYlwtb3ZlcnJpZGUgXC0gRmljaGllciBvdmVycmlkZSBkJ3VuZSBhcmNoaXZlIERlYmlhbgorLgorLlNIIFNZTk9QU0lTCitvdmVycmlkZQorLgorLlNIIERFU0NSSVBUSU9OCitCaWVuIHF1ZSBsJ29uIHB1aXNzZSB0cm91dmVyIGRhbnMgbGUgZmljaGllciCrXCBjb250cm9sXCC7IGxhIHBsdXBhcnQgZGVzCitpbmZvcm1hdGlvbnMgY29uY2VybmFudCB1biBwYXF1ZXQsIGNlcnRhaW5lcyBkb2l2ZW50IOp0cmUgaW5zY3JpdGVzIHBhciBsZXMKK3Jlc3BvbnNhYmxlcyBkZSBsYSBkaXN0cmlidXRpb24gcGx1dPR0IHF1ZSBwYXIgbGUgcmVzcG9uc2FibGUgZHUgcGFxdWV0IGFmaW4KK2RlIGdhcmFudGlyIHVuZSBjb2jpcmVuY2UgZ2xvYmFsZS4gQ2VzIGluZm9ybWF0aW9ucyBzZSB0cm91dmVudCBkYW5zIGxlCitmaWNoaWVyIKtcIG92ZXJyaWRlXCC7LgorLlBQCitMZXMg6WzpbWVudHMgZHUgZmljaGllciCrXCBvdmVycmlkZVwguyBzb250IHPpcGFy6XMgc2ltcGxlbWVudCBwYXIgdW4KK2VzcGFjZS4gTGVzIGNvbW1lbnRhaXJlcyBjb21tZW5jZW50IHBhciB1biBjYXJhY3TocmUgXGZCq1wgI1wgu1xmUC4KKy5QUAorLmluICs1CitcZklwYXF1ZXRcZlAgXGZJcHJpb3JpdOlcZlAgXGZJc2VjdGlvblxmUCBbXGZJcmVzcG9uc2FibGVcZlBdCisuaW4gLTUKKy5QUAorXGZJcGFxdWV0XGZQIGVzdCBsZSBub20gZHUgcGFxdWV0LiBMZXMgZW50cullcyBkdSBmaWNoaWVyIKtcIG92ZXJyaWRlXCC7Citjb25jZXJuYW50IGRlcyBwYXF1ZXRzIHF1aSBuZSBzb250IHBhcyBkYW5zIGwnYXJib3Jlc2NlbmNlIGRlcyBwYXF1ZXRzCitiaW5haXJlcyBzb250IGlnbm9y6WVzLgorLlBQCitcZklwcmlvcml0eVxmUCBldCBcZklzZWN0aW9uXGZQIGNvcnJlc3BvbmRlbnQgcmVzcGVjdGl2ZW1lbnQgYXV4IGNoYW1wcyBkZQorY29udHL0bGUgcHLpc2VudCBkYW5zIGxlIGZpY2hpZXIgLmRlYi4gTGVzIHZhbGV1cnMgYXV0b3Jpc+llIHNvbnQgZOlmaW5pZXMKK2RhbnMgbGEgQ2hhcnRlIERlYmlhbi4KKy5QUAorTCfpbOltZW50IFxmSXJlc3BvbnNhYmxlLFxmUCBxdWFuZCBpbCBleGlzdGUsIHBldXQgcmVwculzZW50ZXIgc29pdCBsZSBub20gZHUKK3Jlc3BvbnNhYmxlIHF1YW5kIGlsIHMnYWdpdCBkJ3VuIHJlbXBsYWNlbWVudCBzYW5zIGNvbmRpdGlvbiwgc29pdCBsYSBjaGHubmUKK1xmSWFuY2llbnJlc3BvbnNhYmxlXGZQIFxmQj0+XGZQIFxmSW5vdXZlYXVyZXNwb25zYWJsZVxmUCBwb3VyIHVuIGNoYW5nZW1lbnQgZGUKK3Jlc3BvbnNhYmxlLgorLlBQCitPbiBwZXV0IHRyb3V2ZXIgbGVzIGZpY2hpZXJzIKtcIG92ZXJyaWRlXCC7LCBkb250IG9uIHNlIHNlcnQgcG91ciDpdGFibGlyIGxlcworZmljaGllcnMgb2ZmaWNpZWxzIKtcIFBhY2thZ2VzXCC7LCBkYW5zIGxlIHLpcGVydG9pcmUgXGZJaW5kaWNlc1xmUCBkZXMgbWlyb2lycworRGViaWFuLgorLgorLlNIICJWT0lSIEFVU1NJIgorXGZCZHBrZ1wtc2NhbnBhY2thZ2VzXGZQKDEpLCBcZkJkcGtnXC1zY2Fuc291cmNlc1xmUCgxKSwgXGZCYXB0XC1mdHBhcmNoaXZlXGZQKDEpLAorXGZCL3Vzci9zaGFyZS9kb2MvZGViaWFuXC1wb2xpY3kvcG9saWN5Lmh0bWwvaW5kZXguaHRtbFxmUC4KKy5TSCBUUkFEVUNUSU9OCitBcmllbCBWQVJESSA8YXJpZWwudmFyZGlAZnJlZXNiZWUuZnI+LCAyMDAyLgorUGhpbGlwcGUgQmF0YWlsbGVyLCAyMDA2LgorTmljb2xhcyBGcmFu529pcywgMjAwNi4KK1ZldWlsbGV6IHNpZ25hbGVyIHRvdXRlIGVycmV1ciDgIDxkZWJpYW5cLWwxMG5cLWZyZW5jaEBsaXN0cy5kZWJpYW4ub3JnPi4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL2ZyL2RlYi1zaGxpYnMuNSBiL2Rwa2ctMS4xNi4xLjEvbWFuL2ZyL2RlYi1zaGxpYnMuNQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jODhkZjJjCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vZnIvZGViLXNobGlicy41CkBAIC0wLDAgKzEsNjEgQEAKKy5cIiBDb3B5cmlnaHQgwqkgMTk5NiBNaWNoYWVsIFNoaWVsZHMgPHNoaWVsZHNAY3Jvc3NsaW5rLm5ldD4KKy5cIiBDb3B5cmlnaHQgwqkgMjAwOCBaYWNrIFdlaW5iZXJnIDx6YWNrd0BwYW5peC5jb20+CisuXCIgVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgbWF5IHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisuXCIgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKy5cIiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorLlwiIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisuXCIKKy5cIiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisuXCIgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKy5cIiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisuXCIgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKy5cIgorLlwiIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisuXCIgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkZWJcLXNobGlicyA1IDE3XC0wMlwtMjAwOCAiUHJvamV0IERlYmlhbiIgIlV0aWxpdGFpcmVzIGRlIGRwa2ciCisuU0ggTk9NCitkZWJcLXNobGlicyBcLSBGaWNoaWVyIGQnaW5mb3JtYXRpb24gc3VyIGxlcyBiaWJsaW90aOhxdWVzIHBhcnRhZ+llcyBEZWJpYW4KKy4KKy5TSCBERVNDUklQVElPTgorLlBQCitMZXMgZmljaGllcnMgXGZCc2hsaWJzXGZQIGFzc29jaWVudCBsZXMgbm9tcyBldCB2ZXJzaW9ucyAoXGZJc29uYW1lc1xmUCkgZGVzCitiaWJsaW90aOhxdWVzIHBhcnRhZ+llcyBhdXggZOlwZW5kYW5jZXMgY29ycmVzcG9uZGFudGVzIGRhbnMgbGVzIGZpY2hpZXJzIGRlCitjb250cvRsZSBkZXMgcGFxdWV0cy4gSWwgeSBhIHVuZSBlbnRy6WUgcGFyIGxpZ25lIGV0IGxlcyBsaWduZXMgdmlkZXMgbmUKK3NvbnQgXGZCcGFzIGF1dG9yaXPpZXNcZlAuIExlcyBsaWduZXMgY29tbWVuY2FudCBwYXIgbGUgY2FyYWN06HJlIFxmQiirXCAjXCC7KVxmUAorc29udCBjb25zaWTpcullcyBjb21tZSDpdGFudCBkZXMgY29tbWVudGFpcmVzIGV0IHNvbnQgaWdub3LpZXMuIFRvdXRlcyBsZXMKK2F1dHJlcyBsaWduZXMgZG9pdmVudCDqdHJlIGF1IGZvcm1hdAorLklQCitbXGZJdHlwZVxmUFxmQjpcZlBdIFxmSWxpYnJhcnlcZlAgXGZJdmVyc2lvblxmUCBcZklkZXBlbmRlbmNpZXNcZlAKKy5QUAorTGVzIGNoYW1wcyBcZkliaWJsaW90aOhxdWVcZlAgZXQgXGZJdmVyc2lvblxmUCBzb250IHPpcGFy6XMgcGFyIGRlcyBlc3BhY2VzLiBMZSBsZQorY2hhbXAgXGZJZOlwZW5kYW5jZVxmUCBmaW5pdCBsYSBsaWduZS4gTGUgY2hhbXAgXGZJdHlwZVxmUCBlc3Qgb3B0aW9ubmVsIGV0IGRvbmMKK25vcm1hbGVtZW50IHBhcyBu6WNlc3NhaXJlLgorLlBQCitMaXJlIGxhIGNoYXJ0ZSBEZWJpYW4gcG91ciBwbHVzIGQnaW5mb3JtYXRpb25zLgorLgorLlNIIEVYRU1QTEVTCisuUFAKK0xlIGZpY2hpZXIgXGZCc2hsaWJzXGZQIHBvdXIgdW4gcGFxdWV0IG5vbW3pIFxmSWxpYmNydW5jaDFcZlAsIHF1aSBmb3Vybml0IHVuZQorYmlibGlvdGjocXVlIGRvbnQgbGUgbm9tIGVzdCBcZklsaWJjcnVuY2guc28uMVxmUCwgZG9pdCBhdm9pciBsYSBsaWduZQorLklQCitsaWJjcnVuY2ggMSBsaWJjcnVuY2gxICg+PSAxLjJcLTEpCisuUFAKK0xlcyBcZklk6XBlbmRhbmNlc1xmUCBkb2l2ZW50IGluZGlxdWVyIGxhIHZlcnNpb24gbGEgcGx1cyBy6WNlbnRlIGR1IHBhcXVldCBxdWkKK2Fqb3V0ZSBkZSBub3V2ZWF1eCBzeW1ib2xlcyDgIGxhIGJpYmxpb3Ro6HF1ZVwgOiBkYW5zIGwnZXhlbXBsZSBwculj6WRlbnQsIGRlCitub3V2ZWF1eCBzeW1ib2xlcyBvbnQg6XTpIGFqb3V06XMgYXZlYyBsYSB2ZXJzaW9uIDEuMiBkZSBcZklsaWJjcnVuY2hcZlAuIENlCituJ2VzdCBwYXMgbGEgc2V1bGUgcmFpc29uIHBvdXIgbGFxdWVsbGUgbGVzIGTpcGVuZGFuY2VzIGRvaXZlbnQg6nRyZSBzdWl2aWVzCithdmVjIHNvaW5cIDsgdW5lIGZvaXMgZGUgcGx1cywgdmV1aWxsZXogdm91cyByZXBvcnRlciDgIGxhIGNoYXJ0ZSBEZWJpYW4gcG91cgorcGx1cyBkZSBk6XRhaWxzLgorLgorLlNIICJWT0lSIEFVU1NJIgorXGZCZHBrZ1wtc2hsaWJkZXBzXGZQKDEpLCBcZkJkZWJcLXN5bWJvbHNcZlAoNSkuCisuU0ggVFJBRFVDVElPTgorQXJpZWwgVkFSREkgPGFyaWVsLnZhcmRpQGZyZWVzYmVlLmZyPiwgMjAwMi4KK1BoaWxpcHBlIEJhdGFpbGxlciwgMjAwNi4KK05pY29sYXMgRnJhbudvaXMsIDIwMDYuCitWZXVpbGxleiBzaWduYWxlciB0b3V0ZSBlcnJldXIg4CA8ZGViaWFuXC1sMTBuXC1mcmVuY2hAbGlzdHMuZGViaWFuLm9yZz4uCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9mci9kZWItc3BsaXQuNSBiL2Rwa2ctMS4xNi4xLjEvbWFuL2ZyL2RlYi1zcGxpdC41Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjVjYzhhOWIKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9mci9kZWItc3BsaXQuNQpAQCAtMCwwICsxLDY0IEBACisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkZWJcLXNwbGl0IDUgMDdcLTA0XC0yMDExICJQcm9qZXQgRGViaWFuIiBEZWJpYW4KKy5TSCBOT00KK2RlYlwtc3BsaXQgXC0gZm9ybWF0YWdlIGRlIHBhcXVldHMgYmluYWlyZXMgRGViaWFuIGVuIHBsdXNpZXVycyBwYXJ0aWVzCisuU0ggU1lOT1BTSVMKK1xmSW5vbVwtZHVcLWZpY2hpZXIuZGViXGZQCisuU0ggREVTQ1JJUFRJT04KK0xlIGZvcm1hdCBcZkIuZGViXGZQIGVuIHBhcnRpZXMgbXVsdGlwbGVzIChtdWx0aVwtcGFydCkgcGVybWV0IGRlIGTpY291cGVyIGRlCitncm9zIHBhcXVldHMgZW4gcGV0aXRlcyBwYXJ0aWVzIHBvdXIgZmFjaWxpdGVyIGxldXIgdHJhbnNwb3J0IHN1ciBkZXMKK3N1cHBvcnRzIGRlIGZhaWJsZSBjYXBhY2l06S4KKy5TSCBGT1JNQVQKK0xlIGZpY2hpZXIgZXN0IHVuZSBhcmNoaXZlIFxmQmFyXGZQIGF2ZWMgdW4gbnVt6XJvIG1hZ2lxdWUgZGUKK1xmQiE8YXJjaD4uXGZQLiBMZXMgbm9tcyBkZSBmaWNoaWVycyBwZXV2ZW50IGNvbXBvcnRlciB1biBjYXJhY3TocmUKK6tcIC9cILsgZmluYWwgKGRlcHVpcyBkcGtnIDEuMTUuNikuCisuUFAKK0xlIHByZW1pZXIgbWVtYnJlIGVzdCBhcHBlbOkgXGZCZGViaWFuc1wtc3BsaXRcZlAgZXQgY29udGllbnQgdW4gZW5zZW1ibGUgZGUKK2xpZ25lcywgc+lwYXLpZXMgcGFyIGRlcyByZXRvdXJzIOAgbGEgbGlnbmUuIEFjdHVlbGxlbWVudCwgaHVpdCBsaWduZXMgc29udAorcHLpc2VudGVzXCA6CisuSVAgXChidSA0CitOdW3pcm8gZGUgdmVyc2lvbiBkdSBmb3JtYXQsIFxmQjIuMVxmUCBhdSBtb21lbnQgZGUgbGEgculkYWN0aW9uIGRlIGNldHRlIHBhZ2UKK2RlIG1hbnVlbC4KKy5JUCBcKGJ1CitOb20gZHUgcGFxdWV0CisuSVAgXChidQorVmVyc2lvbiBkdSBwYXF1ZXQKKy5JUCBcKGJ1CitTb21tZSBkZSBjb250cvRsZSBNRDUgZHUgcGFxdWV0CisuSVAgXChidQorVGFpbGxlIHRvdGFsZSBkdSBwYXF1ZXQKKy5JUCBcKGJ1CitUYWlsbGUgbWF4aW1hbGUgZCd1biBtZW1icmUKKy5JUCBcKGJ1CitOdW3pcm8gZHUgbWVtYnJlIGNvdXJhbnQsIHN1aXZpIGQndW5lIGJhcnJlIG9ibGlxdWUgKC8pIGV0IGR1IG5vbWJyZSB0b3RhbAorZGUgbWVtYnJlcyAocGFyIGV4ZW1wbGUgXChvcTEvMTBcKGNxKS4KKy5JUCBcKGJ1CitBcmNoaXRlY3R1cmUgZHUgcGFxdWV0IChkZXB1aXMgZHBrZyAxLjE2LjEpCisuUFAKK0xlcyBwcm9ncmFtbWVzIHF1aSBsaXNlbnQgZGVzIGFyY2hpdmVzIGVuIHBhcnRpZXMgbXVsdGlwbGVzIGRvaXZlbnQKK2F1dG9yaXNlciBsYSBwculzZW5jZSBkZSBsaWduZXMgc3VwcGzpbWVudGFpcmVzIChldCBsZXMgaWdub3JlciBzaSBlbGxlcworZXhpc3RlbnQpLgorLlBQCitTaSBsZSBudW3pcm8gZGUgdmVyc2lvbiBtYWpldXIgYSBjaGFuZ+ksIGNlbGEgc2lnbmlmaWUgcXUndW5lIG1vZGlmaWNhdGlvbgoraW5jb21wYXRpYmxlIGEg6XTpIGVmZmVjdHXpZSwgZXQgbGUgcHJvZ3JhbW1lIGRvaXQgYWxvcnMgcydhcnLqdGVyLiBTaSBjZQorbidlc3QgcGFzIGxlIGNhcywgbGUgcHJvZ3JhbW1lIGRvaXQg6nRyZSBlbiBtZXN1cmUgZGUgcG91cnN1aXZyZQorY29ycmVjdGVtZW50LCDgIG1vaW5zIHF1J2lsIG5lIHJlbmNvbnRyZSB1biBtZW1icmUgbm9uIHJlY29ubnUgZGFucworbCdhcmNoaXZlIChleGNlcHTpIOAgbGEgZmluIGRlIGNldHRlIGRlcm5p6HJlKSwgY29tbWUgZOljcml0IGNpXC1kZXNzb3VzLgorLlBQCitUaGUgc2Vjb25kLCBsYXN0IHJlcXVpcmVkIG1lbWJlciBpcyBuYW1lZCBcZkJkYXRhLlxmUFxmSU5cZlAsIHdoZXJlIFxmSU5cZlAgZGVub3RlcwordGhlIHBhcnQgbnVtYmVyLiBJdCBjb250YWlucyB0aGUgcmF3IHBhcnQgZGF0YS4KKy5QUAorVGhlc2UgbWVtYmVycyBtdXN0IG9jY3VyIGluIHRoaXMgZXhhY3Qgb3JkZXIuIEN1cnJlbnQgaW1wbGVtZW50YXRpb25zIHNob3VsZAoraWdub3JlIGFueSBhZGRpdGlvbmFsIG1lbWJlcnMgYWZ0ZXIgXGZCZGF0YS5cZlBcZklOXGZQLiAgRnVydGhlciBtZW1iZXJzIG1heSBiZQorZGVmaW5lZCBpbiB0aGUgZnV0dXJlLCBhbmQgKGlmIHBvc3NpYmxlKSB3aWxsIGJlIHBsYWNlZCBhZnRlciB0aGVzZSB0d28uCisuU0ggIlZPSVIgQVVTU0kiCitcZkJkZWJcZlAoNSksIFxmQmRwa2dcLXNwbGl0XGZQKDEpLgorLlNIIFRSQURVQ1RJT04KK0FyaWVsIFZBUkRJIDxhcmllbC52YXJkaUBmcmVlc2JlZS5mcj4sIDIwMDIuCitQaGlsaXBwZSBCYXRhaWxsZXIsIDIwMDYuCitOaWNvbGFzIEZyYW7nb2lzLCAyMDA2LgorVmV1aWxsZXogc2lnbmFsZXIgdG91dGUgZXJyZXVyIOAgPGRlYmlhblwtbDEwblwtZnJlbmNoQGxpc3RzLmRlYmlhbi5vcmc+LgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vZnIvZGViLXNyYy1jb250cm9sLjUgYi9kcGtnLTEuMTYuMS4xL21hbi9mci9kZWItc3JjLWNvbnRyb2wuNQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kZDNmODNkCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vZnIvZGViLXNyYy1jb250cm9sLjUKQEAgLTAsMCArMSwzMjIgQEAKKy5cIiBBdXRob3I6IE94YW4gdmFuIExlZXV3ZW4KKy5cIiBJbmNsdWRlcyB0ZXh0IGZyb20gdGhlIGRlYi1jb250cm9sIG1hbnVhbCBwYWdlIGJ5IFJhdWwgTWlsbGVyCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkZWJcLXNyY1wtY29udHJvbCA1IDIwMTFcLTA4XC0xNCAiUHJvamV0IERlYmlhbiIgRGViaWFuCisuU0ggTk9NCitkZWJcLXNyY1wtY29udHJvbCBcLSBGb3JtYXQgZHUgZmljaGllciBwcmluY2lwYWwgZGUgY29udHL0bGUgZGFucyBsZXMgcGFxdWV0cworRGViaWFuCisuCisuU0ggU1lOT1BTSVMKK2NvbnRy9GxlCisuCisuU0ggREVTQ1JJUFRJT04KK0NoYXF1ZSBwYXF1ZXQgc291cmNlIERlYmlhbiBjb250aWVudCB1biBmaWNoaWVyIKtcIGNvbnRyb2xcILsgbWHudHJlLCBxdWkKK2NvbnRpZW50IGF1IG1vaW5zIDIgcGFyYWdyYXBoZXMsIHPpcGFy6XMgcGFyIHVuZSBsaWduZSB2aWRlLiBMZSBwcmVtaWVyCitwYXJhZ3JhcGhlIGRvbm5lIHRvdXRlcyBsZXMgaW5mb3JtYXRpb25zIOAgcHJvcG9zIGR1IHBhcXVldCBzb3VyY2UgZW4KK2fpbulyYWwgZXQgY2hhcXVlIHBhcmFncmFwaGUgcXVpIHN1aXQgZOljcml0IGV4YWN0ZW1lbnQgdW4gcGFxdWV0CitiaW5haXJlLiBDaGFxdWUgcGFyYWdyYXBoZSBjb250aWVudCBhdSBtb2lucyB1biBjaGFtcC4gVW4gY2hhbXAgY29tbWVuY2UgcGFyCitsZSBub21kdSBjaGFtcCwgcGFyIGV4ZW1wbGUgXGZCUGFja2FnZVxmUCBvdSBcZkJTZWN0aW9uXGZQIChsYSBjYXNzZSBuJ2VzdCBwYXMKK3NpZ25pZmljYXRpdmUpLCBzdWl2aSBkJ3VuIGNhcmFjdOhyZSCrXCBkZXV4XC1wb2ludHNcILssIGR1IGNvbnRlbnUgZHUgY2hhbXAgZXQKK2QndW4gcmV0b3VyIOAgbGEgbGlnbmUuIExlcyBjaGFtcHMgbXVsdGlcLWxpZ25lcyBzb250IGF1c3NpIHBvc3NpYmxlcywgbWFpcworY2hhcXVlIGxpZ25lIHN1cHBs6W1lbnRhaXJlLCBxdWkgbmUgY29tcG9ydGUgcGFzIGRlIG5vbSBkZSBjaGFtcCwgZG9pdAorY29tbWVuY2VyIHBhciBhdSBtb2lucyB1biBlc3BhY2UuIExlIGNvbnRlbnUgZGVzIGNoYW1wcyBtdWx0aVwtbGlnbmVzIGVzdCBlbgorZ+lu6XJhbCBy6WFzc2VtYmzpIGVuIHVuZSBsaWduZSB1bmlxdWUgcGFyIGxlcyBvdXRpbHMgKHNhdWYgcG91ciBsZSBjaGFtcAorXGZCRGVzY3JpcHRpb25cZlAsIHZvaXIgY2lcLWRlc3NvdXMpLiBQb3VyIGluY2x1cmUgZGVzIGxpZ25lcyB2aWRlcyBkYW5zIHVuCitjaGFtcCBtdWx0aVwtbGlnbmVzLCBpbCBlc3QgbuljZXNzYWlyZSBkZSBtZXR0cmUgdW4gcG9pbnQgYXBy6HMgbCdlc3BhY2UKK2luaXRpYWwuIExlcyBsaWduZXMgY29tbWVu52FudCBwYXMgXGZCq1wgI1wgu1xmUCBzb250IHRyYWl06WVzIGNvbW1lIGRlcworY29tbWVudGFpcmVzLgorLgorLlNIICJMRVMgQ0hBTVBTIFNPVVJDRSIKKy5UUCAKK1xmQlNvdXJjZTpcZlAgXGZJbm9tIGR1IHBhcXVldCBzb3VyY2VcZlAgKHJlcXVpcykKK0xhIHZhbGV1ciBkZSBjZSBjaGFtcCBlc3QgbGUgbm9tIGR1IHBhcXVldCBzb3VyY2UgZXQgZG9pdCBjb3JyZXNwb25kcmUgYXUKK25vbSBkdSBwYXF1ZXQgc291cmNlIGRhbnMgbGUgZmljaGllciBkZWJpYW4vY2hhbmdlbG9nLiBVbiBub20gZGUgcGFxdWV0IGRvaXQKK+p0cmUgY29uc3RpdHXpIHVuaXF1ZW1lbnQgZGUgbGV0dHJlcyBtaW51c2N1bGVzIChhXC16KSwgZGUgY2hpZmZyZXMgKDBcLTkpLAorZGVzIGNhcmFjdOhyZXMgcGx1cyAoKykgZXQgbW9pbnMgKFwtKSBldCBkZSBwb2ludHMgKC4pLiBMZXMgbm9tcyBkZSBwYXF1ZXRzCitkb2l0IGNvbXBvcnRlciBhdSBtb2lucyBkZXV4IGNhcmFjdOhyZXMgZXQgZG9pdmVudCBjb21tZW5jZXIgcGFyIHVuCitjYXJhY3TocmUgYWxwaGFudW3pcmlxdWUuCisKKy5UUCAKK1xmQk1haW50YWluZXI6XGZQIFxmSW5vbSBjb21wbGV0IGV0IGFkcmVzc2Ug6WxlY3Ryb25pcXVlXGZQIChyZXF1aXMpCitMZSBmb3JtYXQgZGUgY2UgY2hhbXAgc2VyYSCrXCBKZWFuIER1cG9udCA8amR1cG9udEBmb28uY29tPlwgu1wgOyBldAoraW5kaXF1ZSBsZSBjculhdGV1ciBkdSBwYXF1ZXQsIHBhciBvcHBvc2l0aW9uIOAgbCdhdXRldXIgZHUgcHJvZ3JhbW1lIG1pcyBlbgorcGFxdWV0LgorCisuVFAgCitcZkJVcGxvYWRlcnM6XGZQXGZJIG5vbSBjb21wbGV0IGV0IGFkcmVzc2Ug6WxlY3Ryb25pcXVlXGZQCitBZmZpY2hlIGxlcyBub21zIGV0IGxlcyBhZHJlc3NlcyDpbGVjdHJvbmlxdWVzIGRlcyBjb1wtcmVzcG9uc2FibGVzIGR1CitwYXF1ZXQsIGF1IG3qbWUgZm9ybWF0IHF1ZSBsZSBjaGFtcCBNYWludGFpbmVyLiBEZXMgY29cLXJlc3BvbnNhYmxlcworbXVsdGlwbGVzIHBldXZlbnQg6nRyZSBz6XBhculzIHBhciB1bmUgdmlyZ3VsZS4KKworLlRQIAorXGZCU3RhbmRhcmRzXC1WZXJzaW9uOlxmUFxmSSBjaGHubmUgZGUgdmVyc2lvblxmUAorQ2UgY2hhbXAgaW5kaXF1ZSBsYSB2ZXJzaW9uIGxhIHBsdXMgculjZW50ZSBkZXMgbm9ybWVzIChjb25zdGl0dellcyBwYXIgbGEKK0NoYXJ0ZSBEZWJpYW4gZXQgbGVzIHRleHRlcyBpbmRpcXXpcyBkYW5zIGxlIHBhcXVldCBcZkJkZWJpYW5cLXBvbGljeVxmUCkKK2F1eHF1ZWxsZXMgY2UgcGFxdWV0IHNlIGNvbmZvcm1lLgorCisuVFAgCitcZkJETVwtVXBsb2FkXC1BbGxvd2VkOlxmUCBcZkJ5ZXNcZlB8XGZCbm9cZlAKK0NlIGNoYW1wIGluZGlxdWUgc2kgdW4gcGFxdWV0IHBldXQg6nRyZSBlbnZveekgcGFyIGxlcyBtYWludGVuZXVycyBEZWJpYW4KK3F1aSBzb250IGluZGlxdelzIGRhbnMgbGUgY2hhbXAgTWFpbnRhaW5lciBvdSBsZSBjaGFtcCBVcGxvYWRlcnMuIExhIHZhbGV1cgorcGFyIGTpZmF1dCBlc3Qgq1wgbm9cILsuCisKKy5UUCAKK1xmQkhvbWVwYWdlOlxmUFxmSSBVUkxcZlAKK1VSTCBkZSBsYSBwYWdlIGQnYWNjdWVpbCBkdSBwcm9qZXQgYW1vbnQuCisKKy5UUCAKK1xmQkJ1Z3M6XGZQIFxmSSBVUkxcZlAKK0luZGlxdWUgbCdcZklVUkxcZlAgZHUgc3lzdOhtZSBkZSBzdWl2aSBkZSBib2d1ZXMgKEJUUykgZGUgY2UgcGFxdWV0LiBMZSBmb3JtYXQKK3V0aWxpc+kgZXN0IFxmSXR5cGVfZGVfYnRzXGZQXGZCOi8vXGZQXGZJYWRyZXNzZV9kdV9idHNFXGZQLCBwYXIgZXhlbXBsZQorXGZCZGViYnVnczovL2J1Z3MuZGViaWFuLm9yZ1xmUC4gQ2UgY2hhbXAgZXN0IGVuIGfpbulyYWwgaW51dGlsZS4KKworLlRQIAorXGZCVmNzXC0qOlxmUFxmSSBVUkxcZlAKK0NlIGNoYW1wIGluZGlxdWUgbCdcZklVUkxcZlAgZHUgc3lzdOhtZSBkZSBnZXN0aW9uIGRlIHZlcnNpb24gdXRpbGlz6SBwb3VyIGxhCitnZXN0aW9uIGR1IHBhcXVldC4gTGVzIHN5c3TobWVzIGfpculzIHNvbnQgXGZCQXJjaFxmUCwgXGZCQnpyXGZQIChCYXphYXIpLCBcZkJDdnNcZlAsCitcZkJEYXJjc1xmUCwgXGZCR2l0XGZQLCBcZkJIZ1xmUCAoTWVyY3VyaWFsKSwgXGZCTXRuXGZQIChNb25vdG9uZSkgZXQgXGZCU3ZuXGZQCisoU3VidmVyc2lvbikuIEVuIGfpbulyYWwsIGNlIGNoYW1wIGZhaXQgculm6XJlbmNlIOAgbGEgZGVybmnocmUgdmVyc2lvbiBkdQorcGFxdWV0LCBjJ2VzdCDgIGRpcmUgbGEgYnJhbmNoZSBwcmluY2lwYWxlIG91IGxlIKtcIHRydW5rXCC7LgorCisuVFAgCitcZkJWY3NcLUJyb3dzZXI6XGZQXGZJIFVSTFxmUAoraW5kaXF1ZSBsJ1xmSVVSTFxmUCBkZSBsJ2ludGVyZmFjZSB3ZWIgcGVybWV0dGFudCBkZSBwYXJjb3VyaXIgbGUgZOlw9HQgZHUKK3N5c3TobWUgZGUgZ2VzdGlvbiBkZSB2ZXJzaW9uLgorCisuVFAgCitcZkJPcmlnaW46XGZQIFxmSSBub21cZlAKK2luZGlxdWUgbGUgbm9tIGRlIGxhIGRpc3RyaWJ1dGlvbiBkb250IGxlIHBhcXVldCBwcm92aWVudC4gQ2UgY2hhbXAgbidlc3QKK3NvdXZlbnQgcGFzIG7pY2Vzc2FpcmUuCisKKy5UUCAKK1xmQlNlY3Rpb246XGZQIFxmSSBzZWN0aW9uXGZQCitjaGFtcCBn6W7pcmFsIHF1aSBpbmRpcXVlIGxhIGNhdOlnb3JpZSBkJ3VuIHBhcXVldFwgOyBjZXR0ZSBjYXTpZ29yaWUgZXN0Citmb25k6WUgc3VyIGxlcyBwcm9ncmFtbWVzIHF1ZSBjZSBwYXF1ZXQgaW5zdGFsbGUuIKtcIFV0aWxzXCC7LCCrXCBuZXRcILssCiurXCBtYWlsXCC7LCCrXCB0ZXh0XCC7LCCrXCB4MTFcILssIGV0Yy4gcmVwculzZW50ZW50IHF1ZWxxdWVzIGNhdOlnb3JpZXMKK2hhYml0dWVsbGVzLgorCisuVFAgCitcZkJQcmlvcml0eTpcZlAgXGZJcHJpb3JpdOlcZlAKK2TpZmluaXQgbCdpbXBvcnRhbmNlIGR1IHBhcXVldCDgIGwnaW506XJpZXVyIGR1IHN5c3TobWUKK2fpbulyYWwuIKtcIFJlcXVpcmVkXCC7LCCrXCBzdGFuZGFyZFwguywgq1wgb3B0aW9uYWxcILssIKtcIGV4dHJhXCC7LAorZXRjLiByZXBy6XNlbnRlbnQgZGVzIHByaW9yaXTpcyBoYWJpdHVlbGxlcy4KKworTGVzIGNoYW1wcyBcZkJTZWN0aW9uXGZQIGV0IFxmQlByaW9yaXR5XGZQIHBvc3PoZGVudCB1biBlbnNlbWJsZSBk6WZpbmkgZGUgdmFsZXVycworYWNjZXB06WVzLCB0aXLpIGRlIGxhIENoYXJ0ZSBEZWJpYW4gKKtcIERlYmlhbiBQb2xpY3lcILspLiBPbiBwZXV0IGVuIHRyb3V2ZXIKK3VuZSBsaXN0ZSBkYW5zIGxhIHZlcnNpb24gbGEgcGx1cyBy6WNlbnRlIGR1IHBhcXVldCBcZkJkZWJpYW5cLXBvbGljeVxmUC4KKworLlRQIAorXGZCQnVpbGRcLURlcGVuZHM6XGZQXGZJIGxpc3RlIGRlIHBhcXVldHNcZlAKK2xpc3RlIGRlcyBwYXF1ZXRzIHF1J2lsIGVzdCBu6WNlc3NhaXJlIGQnaW5zdGFsbGVyIGV0IGNvbmZpZ3VyZXIgcG91cgorcG91dm9pciBjb25zdHJ1aXJlIGxlIHBhcXVldCBzb3VyY2UuCisKKy5UUCAKK1xmQkJ1aWxkXC1EZXBlbmRzXC1JbmRlcDpcZlBcZkkgbGlzdGUgZGUgcGFxdWV0c1xmUAorbGlzdGUgYW5hbG9ndWUg4CBcZkJCdWlsZFwtRGVwZW5kc1xmUCwgbWFpcyByZXN0cmVpbnRlIGF1eCBwYXF1ZXRzIG7pY2Vzc2FpcmVzCitwb3VyIGNvbnN0cnVpcmUgbGVzIHBhcXVldHMgaW5k6XBlbmRhbnRzIGRlIGwnYXJjaGl0ZWN0dXJlLiBMZXMgcGFxdWV0cworaW5kaXF16XMgZGFucyBcZkJCdWlsZFwtRGVwZW5kc1xmUCBzb250IGFsb3JzIGF1c3NpIGluc3RhbGzpcy4KKworLlRQIAorXGZCQnVpbGRcLUNvbmZsaWN0czpcZlBcZkkgbGlzdGUgZGUgcGFxdWV0c1xmUAorbGlzdGUgZGUgcGFxdWV0cyBxdWkgbmUgZG9pdmVudCBwYXMg6nRyZSBpbnN0YWxs6XMgbG9yc3F1ZSBsZSBwYXF1ZXQgZXN0Citjb25zdHJ1aXQsIHBhciBleGVtcGxlIHMnaWxzIGludGVyZuhyZW50IGF2ZWMgbGUgc3lzdOhtZSBkZSBjb25zdHJ1Y3Rpb24KK3V0aWxpc+kuCisKKy5UUCAKK1xmQkJ1aWxkXC1Db25mbGljdHNcLUluZGVwOlxmUFxmSSBsaXN0ZSBkZSBwYXF1ZXRzXGZQCitsaXN0ZSBhbmFsb2d1ZSDgIFxmQkJ1aWxkXC1Db25mbGljdHNcZlAgbWFpcyByZXN0cmVpbnRlIOAgbGEgY29uc3RydWN0aW9uIGRlcworcGFxdWV0cyBpbmTpcGVuZGFudHMgZGUgbCdhcmNoaXRlY3R1cmUuCisKK0xhIHN5bnRheGUgZGVzIGNoYW1wcyBcZkJCdWlsZFwtRGVwZW5kc1xmUCBcZkJCdWlsZFwtRGVwZW5kc1wtSW5kZXBcZlBlc3QgdW5lIGxpc3RlCitkZSBncm91cGVzIGNvbnRlbmFudCBkZXMgcGFxdWV0cyBzdWNjZXNzaWZzLiBDaGFxdWUgZ3JvdXBlIGVzdCB1bmUgbGlzdGUgZGUKK3BhcXVldHMgc+lwYXLpcyBwYXIgdW5lIGJhcnJlIHZlcnRpY2FsZSAobGUgc3ltYm9sZSBkdSB0dWJlKSCrXCB8XCC7LiBMZXMKK2dyb3VwZXMgc29udCBz6XBhculzIHBhciBkZXMgdmlyZ3VsZXMuIFVuZSB2aXJndWxlIHJlcHLpc2VudGUgdW4gq1wgRVRcILsKK2xvZ2lxdWUgZXQgdW5lIGJhcnJlIHZlcnRpY2FsZSByZXBy6XNlbnRlIHVuIKtcIE9VXCC7IGxvZ2lxdWVcIDsgbGUgdHViZQorcmVwculzZW50ZSB1biBsaWVuIHBsdXMgZm9ydC4gQ2hhcXVlIOls6W1lbnQgZXN0IGxlIG5vbSBkJ3VuIHBhcXVldCBzdWl2aSBkZQorZmHnb24gb3B0aW9ubmVsbGUgcGFyIHVuIG51belybyBkZSB2ZXJzaW9uIGVudHJlIHBhcmVudGjoc2VzIGV0IHVuZQoraW5kaWNhdGlvbiBkJ2FyY2hpdGVjdHVyZSBlbnRyZSBhY2NvbGFkZXMuCisKK0xhIHN5bnRheGUgZGVzIGNoYW1wcyBcZkJCdWlsZFwtQ29uZmxpY3RzXGZQIFxmQkJ1aWxkXC1Db25mbGljdHNcLUluZGVwXGZQZXN0IHVuZQorbGlzdGUgZGUgcGFxdWV0cyBz6XBhculzIHBhciBkZXMgdmlyZ3VsZXMgcXVpIHJlcHLpc2VudGVudCBsZSCrXCBFVFwguworbG9naXF1ZS4gTCdpbmRpY2F0aW9uIGRlIHBhcXVldHMgYWx0ZXJuYXRpZnMgYXZlYyB1bmUgYmFycmUgdmVydGljYWxlIChsZQorc3ltYm9sZSBkdSB0dWJlKSCrXCB8XCC7IG4nZXN0IHBhcyBwcmlzZSBlbiBjaGFyZ2UuIENoYXF1ZSBvbSBkZSBwYXF1ZXQgcGV1dAor6nRyZSBzdWl2aSBkZSBmYedvbiBvcHRpb25uZWxsZSBwYXIgdW4gbnVt6XJvIGRlIHZlcnNpb24gZW50cmUgcGFyZW50aOhzZXMKK2V0IHVuZSBpbmRpY2F0aW9uIGQnYXJjaGl0ZWN0dXJlIGVudHJlIGFjY29sYWRlcy4KKworVW4gbnVt6XJvIGRlIHZlcnNpb24gcGV1dCBjb21tZW5jZXIgcGFyIKtcID4+XCC7LCBldCBkYW5zIGNlIGNhcyB0b3V0ZQordmVyc2lvbiBzdXDpcmlldXJlIGNvcnJlc3BvbmRyYSwgZXQgaWwgcGV1dCBpbmRpcXVlciAob3UgcGFzKSBsZSBudW3pcm8gZGUKK3LpdmlzaW9uIHBvdXIgbGUgcGFxdWV0IERlYmlhbiAobGVzIGRldXggbnVt6XJvcyDpdGFudCBz6XBhculzIHBhciB1biB0cmFpdAorZCd1bmlvbikuIFZvaWNpIGxlcyByZWxhdGlvbnMgYWNjZXB06WVzIHBvdXIgbGVzIHZlcnNpb25zXCA6IKtcID4+XCC7Citwb3VyIHN1cOlyaWV1ciDgLCCrXCA8PFwguyBwb3VyIGluZulyaWV1ciDgLCCrXCA+PVwguyBwb3VyIHN1cOlyaWV1cgorb3Ug6WdhbCwgq1wgPD1cILsgcG91ciBpbmbpcmlldXIgb3Ug6WdhbCwgZXQgq1wgPVwguyBwb3VyIOlnYWwg4C4KKworVW5lIGluZGljYXRpb24gZCdhcmNoaXRlY3R1cmUgY29uc2lzdGUgZW4gdW4gb3UgcGx1c2lldXJzIG5vbXMKK2QnYXJjaGl0ZWN0dXJlcywgc+lwYXLpcyBwYXIgZGVzIGVzcGFjZXMuIFVuIG5vbSBkJ2FyY2hpdGVjdHVyZSBwZXV0IOp0cmUKK3By6WPpZOkgZCd1biBwb2ludCBkJ2VjbGFtYXRpb24gcXVpIGNvcnJlc3BvbmQgYWxvcnMgYXUgq1wgTk9OXCC7IGxvZ2lxdWUuCisKK1ZldWlsbGV6IG5vdGVyIHF1ZSBsZXMgZOlwZW5kYW5jZSBxdWUgbGVzIHBhcXVldHMgZHUgamV1IFxmQmJ1aWxkXC1lc3NlbnRpYWxcZlAKK3BldXZlbnQg6nRyZSBvbWlzZXMgZXQgcXUnaWwgbidlc3QgcGFzIHBvc3NpYmxlIGRlIGTpY2xhcmVyIGRlcyBjb25mbGl0cworYXZlYyBjZXMgcGFxdWV0cy4gTGEgbGlzdGUgZGVzIHBhcXVldHMgY29uY2VybulzIGVzdCBmb3VybmllIHBhciBsZSBwYXF1ZXQKK2J1aWxkXC1lc3NlbnRpYWwuCisKKworLlNIICJDSEFNUFMgQklOQUlSRVMiCisKKy5MUAorVmV1aWxsZXogbm90ZXIgcXVlIGxlcyBjaGFtcHMgXGZCUHJpb3JpdHlcZlAsIFxmQlNlY3Rpb25cZlAgYW5kIFxmQkhvbWVwYWdlXGZQCitwZXV2ZW50IOp0cmUgcGxhY+lzIGRhbnMgbGUgcGFyYWdyYXBoZSBkJ3VuIHBhcXVldCBiaW5haXJlIGV0IGxldXIgdmFsZXVyCityZW1wbGFjZSBhbG9ycyBjZWxsZSBkdSBwYXF1ZXQgc291cmNlLgorCisuVFAgCitcZkJQYWNrYWdlOlxmUCBcZklub20gZHUgcGFxdWV0IGJpbmFpcmVcZlAgKHJlcXVpcykKK0NlIGNoYW1wIHNlcnQg4CBpbmRpcXVlciBsZSBub20gZHUgcGFxdWV0IGJpbmFpcmUuIExlcyByZXN0cmljdGlvbnMgc29udCBsZXMKK23qbWVzIHF1ZSBjZWxsZSBkZXMgcGFxdWV0cyBzb3VyY2UuCisKKy5UUCAKK1xmQkFyY2hpdGVjdHVyZTpcZlAgXGZJYXJjaFxmUHxcZkJhbGxcZlB8XGZCYW55XGZQIChyZXF1aXMpCitDZSBjaGFtcCBpbmRpcXVlIGwnYXJjaGl0ZWN0dXJlIG1hdOlyaWVsbGUgc3VyIGxhcXVlbGxlIGxlIHBhcXVldCBwZXV0IOp0cmUKK3V0aWxpc+kuIExlcyBwYXF1ZXRzIHF1aSBwZXV2ZW50IOp0cmUgdXRpbGlz6XMgc3VyIHRvdXRlIGFyY2hpdGVjdHVyZQorZG9pdmVudCB1dGlsaXNlciBsZSBjaGFtcCBcZkJhbnlcZlAuIExlcyBwYXF1ZXRzIGluZOlwZW5kYW50cyBkZQorbCdhcmNoaXRlY3R1cmUsIHRlbHMgbGVzIHNjcmlwdHMgc2hlbGwgb3UgUGVybCBvdSBsYSBkb2N1bWVudGF0aW9uIHV0aWxpc2VudAorbGEgdmFsZXVyIFxmQmFsbFxmUC4gUG91ciByZXN0cmVpbmRyZSB1biBwYXF1ZXQg4CBjZXJ0YWluZXMgYXJjaGl0ZWN0dXJlcywKK2xldXJzIG5vbXMgZG9pdmVudCDqdHJlIGluZGlxdelzIHPpcGFy6XMgcGFyIGRlcyBlc3BhY2VzLiBJbCBlc3Qg6WdhbGVtZW50Citwb3NzaWJsZSBkJ3V0aWxpc2VyIGRlcyBub21zIGfpbulyaXF1ZXMgZCdhcmNoaXRlY3R1cmVzIGRhbnMgY2V0dGUgbGlzdGUKKyh2b2lyIFxmQmRwa2dcLWFyY2hpdGVjdHVyZVxmUCgxKSBwb3VyIHBsdXMgZCdpbmZvcm1hdGlvbnMgc3VyIGNlcyBhcmNoaXRlY3R1cmVzCitn6W7pcmlxdWVzKS4KKworLlRQIAorXGZCUGFja2FnZVwtVHlwZTpcZlAgXGZCZGViXGZQfFxmQnVkZWJcZlAKK0NlIGNoYW1wIGluZGlxdWUgbGUgdHlwZSBkZSBwYXF1ZXQuIExhIHZhbGV1ciCrXCB1ZGViXCC7IGVzdCDgIHV0aWxpc2VyIHBvdXIKK2xlcyBwYXF1ZXRzIOAgdGFpbGxlIGNvbnRy9GzpZSB1dGlsaXPpcyBwYXIgbCdpbnN0YWxsYXRldXIgRGViaWFuLiBMYSB2YWxldXIKK6tcIGRlYlwguyBlc3QgbGEgdmFsZXVyIHBhciBk6WZhdXQgcXVpIGVzdCB1dGlsaXPpZSBzaSBsZSBjaGFtcCBuJ2VzdCBwYXMKK3By6XNlbnQuIERlIG5vdXZlYXV4IHR5cGVzIHBvdXJyYWllbnQg6nRyZSBham91dOlzIGF1IGZpbCBkdSB0ZW1wcy4KKworLlRQIAorLlBEIDAKK1xmQlN1YmFyY2hpdGVjdHVyZTpcZlBcZkkgdmFsZXVyXGZQCisuVFAgCisuUEQgMAorXGZCS2VybmVsXC1WZXJzaW9uOlxmUFxmSSB2YWxldXJcZlAKKy5UUCAKKy5QRCAwCitcZkJJbnN0YWxsZXJcLU1lbnVcLUl0ZW06XGZQXGZJIHZhbGV1clxmUAorQ2VzIGNoYW1wcyBzb250IHV0aWxpc+lzIHBhciBsJ2luc3RhbGxhdGV1ciBldCBuZSBzb250IGVuIGfpbulyYWwgcGFzCitu6WNlc3NhaXJlcy4gVmV1aWxsZXogY29uc3VsdGVyCisvdXNyL3NoYXJlL2RvYy9kZWJpYW5cLWluc3RhbGxlci9kZXZlbC9tb2R1bGVzLnR4dCAgZm91cm5pIGF2ZWMgbGUgcGFxdWV0CitcZkJkZWJpYW5cLWluc3RhbGxlclxmUCBwb3VyIHBsdXMgZGUgZOl0YWlscy4KKworLlRQIAorLlBEIDAKK1xmQkVzc2VudGlhbDpcZlAgXGZCeWVzXGZQfFxmQm5vXGZQCisuVFAgCisuUEQgMAorXGZCTXVsdGlcLUFyY2g6XGZQIFxmQnNhbWVcZlB8XGZCZm9yZWlnblxmUHxcZkJhbGxvd2VkXGZQCisuVFAgCisuUEQgMAorXGZCVGFnOlxmUCBcZklsaXN0ZSBkJ+l0aXF1ZXR0ZXNcZlAKKy5UUCAKKy5QRCAwCitcZkJEZXNjcmlwdGlvbjpcZlAgXGZJZGVzY3JpcHRpb24gY291cnRlXGZQIChyZXF1aXMpCitDZXMgY2hhbXBzIHNvbnQgZOljcml0cyBkYW5zIGxhIHBhZ2UgZGUgbWFudWVsIGRlIFxmQmRlYlwtY29udHJvbFxmUCg1KSwgY2FyIGlscworc29udCBjb3Bp6XMgbGl0dOlyYWxlbWVudCBkYW5zIGxlIGZpY2hpZXIgq1wgY29udHJvbFwguyBkdSBwYXF1ZXQgYmluYWlyZS4KKworLlRQIAorLlBEIDAKK1xmQkRlcGVuZHM6XGZQXGZJIGxpc3RlIGRlIHBhcXVldHNcZlAKKy5UUCAKKy5QRCAwCitcZkJQcmVcLURlcGVuZHM6XGZQXGZJIGxpc3RlIGRlIHBhcXVldHNcZlAKKy5UUCAKKy5QRCAwCitcZkJSZWNvbW1lbmRzOlxmUFxmSSBsaXN0ZSBkZSBwYXF1ZXRzXGZQCisuVFAgCisuUEQgMAorXGZCU3VnZ2VzdHM6XGZQXGZJbGlzdGUgZGUgcGFxdWV0c1xmUAorLlRQIAorLlBEIDAKK1xmQkJyZWFrczpcZlBcZklsaXN0ZSBkZSBwYXF1ZXRzXGZQCisuVFAgCisuUEQgMAorXGZCRW5oYW5jZXM6XGZQXGZJIGxpc3RlIGRlIHBhcXVldHNcZlAKKy5UUCAKKy5QRCAwCitcZkJSZXBsYWNlczpcZlBcZkkgbGlzdGUgZGUgcGFxdWV0c1xmUAorLlRQIAorLlBEIDAKK1xmQkNvbmZsaWN0czpcZlBcZklsaXN0ZSBkZSBwYXF1ZXRzXGZQCisuVFAgCisuUEQgMAorXGZCUHJvdmlkZXM6XGZQIFxmSWxpc3RlIGRlIHBhcXVldHNcZlAKKy5UUCAKKy5QRCAwCitcZkJCdWlsdFwtVXNpbmc6XGZQXGZJIGxpc3RlIGRlIHBhcXVldHNcZlAKKy5icgorQ2VzIGNoYW1wcyBpbmRpcXVlbnQgbGVzIHJlbGF0aW9ucyBlbnRyZSBsZXMgcGFxdWV0cy4gSWxzIHNvbnQgZOl0YWlsbOlzCitkYW5zIGxhIHBhZ2UgZGUgbWFudWVsIFxmQmRlYlwtY29udHJvbFxmUCg1KSBldCBkYW5zIGxlIHBhcXVldCBcZkJkZWJpYW5cLXBvbGljeVxmUC4KKworLlNIICJMRVMgQ0hBTVBTIFVUSUxJU0FURVVSIgorSWwgZXN0IHBvc3NpYmxlIGQnYWpvdXRlciBkZXMgY2hhbXBzIGTpZmluaXMgcGFyIGwndXRpbGlzYXRldXIgYXUgZmljaGllcgorq1wgY29udHJvbFwguy4gTGVzIG91dGlscyBsZXMgaWdub3Jlcm9udC4gU2kgY2VzIGNoYW1wcyBkb2l2ZW50IOp0cmUgY29waelzCit2ZXJzIGxlcyBmaWNoaWVycyBjcunpcywgcGFyIGV4ZW1wbGUgbGVzIHBhcXVldHMgYmluYWlyZXMsIGlsIGVzdAoraW5kaXNwZW5zYWJsZSBkJ3V0aWxpc2VyIHVuIHNjaOltYSBkZSBub21tYWdlIHBlcnNvbm5hbGlz6VwgOlwgbGVzIGNoYW1wcworZG9pdmVudCBjb21tZW5jZXIgcGFyIGxhIGxldHRyZSBYIHN1aXZpZSBkZSBsJ3VuIGRlcyBsZXR0cmVzIEIsIEMgb3UgUyBldAorZCd1biB0aXJldC4gU2kgbGEgbGV0dHJlIEIgZXN0IHV0aWxpc+llLCBsZSBjaGFtcCBzZXJhIGNvcGnpIGRhbnMgbGUgZmljaGllcgorq1wgY29udHJvbFwguyBkdSBwYXF1ZXQgYmluYWlyZSwgdm9pciBcZkJkZWJcLWNvbnRyb2xcZlAoNSkuIEF2ZWMgbGEgbGV0dHJlIFMsIGxlCitjaGFtcCBzZXJhIGNvcGnpIGRhbnMgbGUgZmljaGllciCrXCBjb250cm9sXCC7IGR1IHBhcXVldCBzb3VyY2UgY3Lp6SBwYXIKK1xmQmRwa2dcLXNvdXJjZVxmUCgxKS4gRW5maW4sIGxhIGxldHRyZSBDIHByb3ZvcXVlcmEgbGEgcmVjb3BpZSBkdSBjaGFtcCBkYW5zIGxlCitmaWNoaWVyIGRlIGNvbnRy9GxlIGRlIGwnZW52b2kgKKtcIC5jaGFuZ2VzXCC7KS4gTGVzIHBy6WZpeGVzIFhbQkNTXVwtIHNvbnQKK3N1cHByaW3pcyBsb3JzIGRlIGNlcyByZWNvcGllcy4gQWluc2ksIHVuIGNoYW1wIFxmQlhDXC1BcHByb3ZlZFwtQnlcZlAgYXBwYXJh7nRyYQorc291cyBsZSBub20gXGZCQXBwcm92ZWRcLUJ5XGZQIGRhbnMgbGUgZmljaGllciCrXCBjaGFuZ2VzXCC7IG1haXMgcGFzIGRhbnMgbGUKK2ZpY2hpZXIgq1wgY29udHJvbFwguyBkdSBwYXF1ZXQgYmluYWlyZSBuaSBkYW5zIGNlbHVpIGR1IHBhcXVldCBzb3VyY2UuCisKKworLlNIIEVYRU1QTEUKKy5cIiAuUlMKKy5uZgorIyBDb21tZW50CitTb3VyY2U6IGRwa2cKK1NlY3Rpb246IGFkbWluCitQcmlvcml0eTogcmVxdWlyZWQKK01haW50YWluZXI6IERwa2cgRGV2ZWxvcGVycyA8ZGViaWFuXC1kcGtnQGxpc3RzLmRlYmlhbi5vcmc+CisjIHRoaXMgZmllbGQgaXMgY29waWVkIHRvIHRoZSBiaW5hcnkgYW5kIHNvdXJjZSBwYWNrYWdlcworWEJTXC1VcHN0cmVhbVwtUmVsZWFzZVwtU3RhdHVzOiBzdGFibGUKK0hvbWVwYWdlOiBodHRwOi8vd2lraS5kZWJpYW4ub3JnL1RlYW1zL0Rwa2cKK1Zjc1wtQnJvd3NlcjogaHR0cDovL2dpdC5kZWJpYW4ub3JnLz9wPWRwa2cvZHBrZy5naXQKK1Zjc1wtR2l0OiBnaXQ6Ly9naXQuZGViaWFuLm9yZy9naXQvZHBrZy9kcGtnLmdpdAorU3RhbmRhcmRzXC1WZXJzaW9uOiAzLjcuMworQnVpbGRcLURlcGVuZHM6IHBrZ1wtY29uZmlnLCBkZWJoZWxwZXIgKD49IDQuMS44MSksCisgbGlic2VsaW51eDFcLWRldiAoPj0gMS4yOFwtNCkgWyFsaW51eFwtYW55XQorCitQYWNrYWdlOiBkcGtnXC1kZXYKK1NlY3Rpb246IHV0aWxzCitQcmlvcml0eTogb3B0aW9uYWwKK0FyY2hpdGVjdHVyZTogYWxsCisjIHRoaXMgaXMgYSBjdXN0b20gZmllbGQgaW4gdGhlIGJpbmFyeSBwYWNrYWdlCitYQlwtTWVudG9yaW5nXC1Db250YWN0OiBSYXBoYWVsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RlcGVuZHM6IGRwa2cgKD49IDEuMTQuNiksIHBlcmw1LCBwZXJsXC1tb2R1bGVzLCBjcGlvICg+PSAyLjQuMlwtMiksCisgYnppcDIsIGx6bWEsIHBhdGNoICg+PSAyLjJcLTEpLCBtYWtlLCBiaW51dGlscywgbGlidGltZWRhdGVcLXBlcmwKK1JlY29tbWVuZHM6IGdjYyB8IGNcLWNvbXBpbGVyLCBidWlsZFwtZXNzZW50aWFsCitTdWdnZXN0czogZ251cGcsIGRlYmlhblwta2V5cmluZworQ29uZmxpY3RzOiBkcGtnXC1jcm9zcyAoPDwgMi4wLjApLCBkZXZzY3JpcHRzICg8PCAyLjEwLjI2KQorUmVwbGFjZXM6IG1hbnBhZ2VzXC1wbCAoPD0gMjAwNTExMTdcLTEpCitEZXNjcmlwdGlvbjogRGViaWFuIHBhY2thZ2UgZGV2ZWxvcG1lbnQgdG9vbHMKKyBUaGlzIHBhY2thZ2UgcHJvdmlkZXMgdGhlIGRldmVsb3BtZW50IHRvb2xzIChpbmNsdWRpbmcgZHBrZ1wtc291cmNlKQorIHJlcXVpcmVkIHRvIHVucGFjaywgYnVpbGQgYW5kIHVwbG9hZCBEZWJpYW4gc291cmNlIHBhY2thZ2VzLgorIC4KKyBNb3N0IERlYmlhbiBzb3VyY2UgcGFja2FnZXMgd2lsbCByZXF1aXJlIGFkZGl0aW9uYWwgdG9vbHMgdG8gYnVpbGQ7CisgZm9yIGV4YW1wbGUsIG1vc3QgcGFja2FnZXMgbmVlZCBtYWtlIGFuZCB0aGUgQyBjb21waWxlciBnY2MuCisuZmkKKworCisuXCIgLlJFCisuU0ggIlZPSVIgQVVTU0kiCitcZkJkZWJcLWNvbnRyb2xcZlAoNSksIFxmQmRlYlwtdmVyc2lvblxmUCg1KSwgXGZCZHBrZ1wtc291cmNlXGZQKDEpCisuU0ggVFJBRFVDVElPTgorQXJpZWwgVkFSREkgPGFyaWVsLnZhcmRpQGZyZWVzYmVlLmZyPiwgMjAwMi4KK1BoaWxpcHBlIEJhdGFpbGxlciwgMjAwNi4KK05pY29sYXMgRnJhbudvaXMsIDIwMDYuCitWZXVpbGxleiBzaWduYWxlciB0b3V0ZSBlcnJldXIg4CA8ZGViaWFuXC1sMTBuXC1mcmVuY2hAbGlzdHMuZGViaWFuLm9yZz4uCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9mci9kZWItc3Vic3R2YXJzLjUgYi9kcGtnLTEuMTYuMS4xL21hbi9mci9kZWItc3Vic3R2YXJzLjUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYWY0Zjg4NwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL2ZyL2RlYi1zdWJzdHZhcnMuNQpAQCAtMCwwICsxLDE1MSBAQAorLlwiIEF1dGhvcnM6IElhbiBKYWNrc29uCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkZWJcLXN1YnN0dmFycyA1IDE1XC0wN1wtMjAwOSAiUHJvamV0IERlYmlhbiIgIlV0aWxpdGFpcmVzIGRlIGRwa2ciCisuU0ggTk9NCitkZWJcLXN1YnN0dmFycyBcLSBWYXJpYWJsZXMgZGUgc3Vic3RpdHV0aW9uIGRlIHNvdXJjZSBEZWJpYW4KKy4KKy5TSCBTWU5PUFNJUworc3Vic3R2YXJzCisuCisuU0ggREVTQ1JJUFRJT04KK0F2YW50IHF1ZSBcZkJkcGtnXC1zb3VyY2VcZlAsIFxmQmRwa2dcLWdlbmNvbnRyb2xcZlAgZXQgXGZCZHBrZ1wtZ2VuY2hhbmdlc1xmUAorbifpY3JpdmVudCBsZXVycyBpbmZvcm1hdGlvbnMgZGUgY29udHL0bGUgKGRhbnMgbGUgZmljaGllciBzb3VyY2UgZGUKK2NvbnRy9GxlIFxmQi5kc2NcZlAgcG91ciBcZkJkcGtnXC1zb3VyY2VcZlAgZXQgc3VyIGxhIHNvcnRpZSBzdGFuZGFyZCBwb3VyCitcZkJkcGtnXC1nZW5jb250cm9sXGZQIGV0IFxmQmRwa2dcLWdlbmNoYW5nZXNcZlApLCBpbHMgculhbGlzZW50IHF1ZWxxdWVzCitzdWJzdGl0dXRpb25zIGRlIHZhcmlhYmxlcyBkYW5zIGxlIGZpY2hpZXIgZGUgc29ydGllLgorCitVbmUgc3Vic3RpdHV0aW9uIGRlIHZhcmlhYmxlIGVzdCBkZSBsYSBmb3JtZVwgOiBcZkIke1xmUFxmSW5vbVwtdmFyaWFibGVcZlBcZkJ9XGZQLiBMZXMKK25vbXMgZGUgdmFyaWFibGUgY29uc2lzdGVudCBlbiBjYXJhY3TocmVzIGFscGhhbnVt6XJpcXVlcywgdHJhaXRzIGQndW5pb24gZXQKK6tcIGRldXggcG9pbnRzXCC7XCA7IGlscyBjb21tZW5jZW50IHBhciB1bmUgbGV0dHJlIG91IHVuIGNoaWZmcmUuIExhCitzdWJzdGl0dXRpb24gc2UgZmFpdCBy6XDpdGl0aXZlbWVudCBqdXNxdSfgIGNlIHF1J2lsIG4nZW4gcmVzdGUgYXVjdW5lIOAKK2ZhaXJlXCA7IGxlIHRleHRlIGVudGllciBkdSBjaGFtcCBhcHLocyBsYSBzdWJzdGl0dXRpb24gZXN0IHLpZXhhbWlu6SBwb3VyCitjaGVyY2hlciBkJ2F1dHJlcyBzdWJzdGl0dXRpb25zLgorCitRdWFuZCB0b3V0ZXMgbGVzIHN1YnN0aXR1dGlvbnMgb250IOl06SBmYWl0ZXMsIGNoYXF1ZSBvY2N1cnJlbmNlIGRlIGxhCitjaGHubmUgXGZCJHt9XGZQIChsYXF1ZWxsZSBuJ2VzdCBwYXMgdW5lIHN1YnN0aXR1dGlvbiBhdXRvcmlz6WUpIGVzdCByZW1wbGFj6WUKK3BhciB1biBzaWduZSBcZkIkXGZQLgorCitMb3JzcXVlIGxlIHJlbXBsYWNlbWVudCBkZSB2YXJpYWJsZXMgZXN0IGVmZmVjdHXpIHN1ciB0b3VzIGxlcyBjaGFtcHMgZGUKK2NvbnRy9GxlLCBjZXJ0YWlucyBkZSBjZXMgY2hhbXBzIHNvbnQgdXRpbGlz6XMgZXQgbuljZXNzYWlyZXMgcGVuZGFudCBsYQorY29uc3RydWN0aW9ucyBhbG9ycyBt6m1lIHF1ZSBsYSBzdWJzdGl0dXRpb24gbidhIHBhcyBlbmNvcmUgcHUg6nRyZQorZWZmZWN0dellLiBDZWxhIGV4cGxpcXVlIHBvdXJxdW9pIGlsIG4nZXN0IHBhcyBwb3NzaWJsZSBkJ3V0aWxpc2VyIGRlCit2YXJpYWJsZXMgZGFucyBsZXMgY2hhbXBzIFxmQlBhY2thZ2VcZlAsIFxmQlNvdXJjZVxmUCBldCBcZkJBcmNoaXRlY3R1cmVcZlAuCisKK0xhIHN1YnN0aXR1dGlvbiBkZSB2YXJpYWJsZXMgc2UgZmFpdCBkYW5zIGxlIGNvbnRleHRlIGRlcyBjaGFtcHMgYXBy6HMgbGV1cgorYW5hbHlzZS4gRW4gY29uc+lxdWVuY2UsIHNpIHZvdXMgc291aGFpdGV6IHF1J3VuZSB2YXJpYWJsZSBzb2l0IHJlbXBsYWPpZQorc3VyIHBsdXNpZXVycyBsaWduZXMsIGlsIG4nZXN0IHBhcyBu6WNlc3NhaXJlIGRlIHBsYWNlciB1biBlc3BhY2UgYXBy6HMgbGUKK3JldG91ciDgIGxhIGxpZ25lLiBDZWxhIHNlIGZhaXQgaW1wbGljaXRlbWVudCBxdWFuZCBsZSBjaGFtcCBlc3QKK2FmZmljaOkuIFBhciBleGVtcGxlLCBzaSBsYSB2YXJpYWJsZSBcZkIke0Rlc2NyaXB0aW9ufVxmUCBlc3QgcG9zaXRpb25u6WUgc3VyCiurXCBmb28gZXN0IGJhci4ke05ld2xpbmV9Zm9vIGVzdCBzdXBlci5cILsgZXQgc2kgdm91cyBhdmV6IGxlIGNoYW1wIHN1aXZhbnRcIDoKKworIERlc2NyaXB0aW9uOiBhcHBsaWNhdGlvbiBmb28KKyAgJHtEZXNjcmlwdGlvbn0KKyAgLgorICBFbmNvcmUgZHUgdGV4dGUuCisKK0xlIHLpc3VsdGF0IGZpbmFsIHNlcmFcIDoKKworIERlc2NyaXB0aW9uOiBhcHBsaWNhdGlvbiBmb28KKyAgZm9vIGVzdCBiYXIuCisgIGZvbyBlc3Qgc3VwZXIuCisgIC4KKyAgTW9yZSB0ZXh0LgorCitPbiBwZXV0IGTpZmluaXIgbGVzIHZhcmlhYmxlcyBlbiB1dGlsaXNhbnQgbCdvcHRpb24gY29tbXVuZSBcZkJcLVZcZlAuIE9uIHBldXQKK2F1c3NpIHNlIHNlcnZpciBkdSBmaWNoaWVyIFxmQmRlYmlhbi9zdWJzdHZhcnNcZlAgKG91IHRvdXQgYXV0cmUgZmljaGllciBhdmVjCitsJ29wdGlvbiBcZkJcLVRcZlApLiBDZSBmaWNoaWVyIGVzdCBjb21wb3PpIGRlIGxpZ25lcyBkZSBsYSBmb3JtZSBzdWl2YW50ZVwgOgorXGZJbm9tXGZQXGZCPVxmUFxmSXZhbGV1clxmUC4gTGVzIGVzcGFjZXMgculzaWR1ZWxzIHN1ciBjaGFxdWUgbGlnbmUsIGxlcyBsaWduZXMKK3ZpZGVzIGV0IGxlcyBsaWduZXMgcXVpIGNvbW1lbmNlbnQgcGFyIHVuIHN5bWJvbGUgXGZCI1xmUCBzb250IGlnbm9y6XMuCisKK0VuIG91dHJlLCBsZXMgdmFyaWFibGVzIHN0YW5kYXJkIHN1aXZhbnRlcyBzb250IGRpc3BvbmlibGVzXCA6CisuVFAgCitcZkJBcmNoXGZQCitMJ2FyY2hpdGVjdHVyZSBwb3VyIGxhcXVlbGxlIG9uIGNvbnN0cnVpdCAodGly6WUgZGUgXGZCZHBrZworXC1cLXByaW50XC1hcmNoaXRlY3R1cmVcZlApLgorLlRQIAorXGZCc291cmNlOlZlcnNpb25cZlAKK0xhIHZlcnNpb24gZHUgcGFxdWV0IHNvdXJjZS4KKy5UUCAKK1xmQnNvdXJjZTpVcHN0cmVhbVwtVmVyc2lvblxmUAorTGEgdmVyc2lvbiBhbW9udCBkdSBwYXF1ZXQgc291cmNlLCBhdmVjIOl2ZW50dWVsbGVtZW50IGwnq1wgZXBvY2hcILsgZGUgbGEKK3ZlcnNpb24gZGViaWFuLgorLlRQIAorXGZCYmluYXJ5OlZlcnNpb25cZlAKK0xhIHZlcnNpb24gZHUgcGFxdWV0IGJpbmFpcmUgKHF1aSBwZXV0IOp0cmUgZGlmZulyZW50ZSBkZSBzb3VyY2U6VmVyc2lvbgorZGFucyB1biBiaW5OTVUgcGFyIGV4ZW1wbGUpLgorLlRQIAorXGZCU291cmNlXC1WZXJzaW9uXGZQCitMYSB2ZXJzaW9uIGR1IHBhcXVldCBzb3VyY2UsIHNlbG9uIGxlIGZpY2hpZXIgY2hhbmdlbG9nLiBDZXR0ZSB2YXJpYWJsZSBlc3QKK21haW50ZW5hbnQgXGZCZOljb25zZWlsbOllXGZQIGNhciBzYSBzaWduaWZpY2F0aW9uIGVzdCBkaXN0aW5jdGUgZGUgc2EKK2ZvbmN0aW9uLiBVdGlsaXNleiBwbHV09HQgXGZCc291cmNlOlZlcnNpb25cZlAgb3UgXGZCYmluYXJ5OlZlcnNpb25cZlAuCisuVFAgCitcZkJJbnN0YWxsZWRcLVNpemVcZlAKK0xhIHRhaWxsZSBkZSB0b3VzIGxlcyBmaWNoaWVycyBpbnN0YWxs6XMgZHUgcGFxdWV0LiBDZXR0ZSB2YWxldXIgZXN0IGNvcGnpZQorZGFucyBsZSBjaGFtcCBhZOlxdWF0IGR1IGZpY2hpZXIgq1wgY29udHJvbFwgu1wgOyBRdWFuZCBvbiBmaXhlIGNldHRlIHZhcmlhYmxlLAorY2VsYSBtb2RpZmllIGxhIHZhbGV1ciBkZSBjZSBjaGFtcC4gUXVhbmQgZWxsZSBlc3QgaW5k6XRlcm1pbullLAorXGZCZHBrZ1wtZ2VuY29udHJvbFxmUCB1c2UgZGUgbGEgY29tbWFuZGUgXGZCZHUgXC1rIGRlYmlhbi90bXBcZlAgcG91ciB0cm91dmVyIHVuZQordmFsZXVyIHBhciBk6WZhdXQuCisuVFAgCitcZkJFeHRyYVwtU2l6ZVxmUAorTCdlc3BhY2UgZGlzcXVlIHN1cHBs6W1lbnRhaXJlIHV0aWxpc+kgcG91ciBsJ2luc3RhbGxhdGlvbiBkdSBwYXF1ZXQuIFF1YW5kCitvbiBmaXhlIGNldHRlIHZhcmlhYmxlLCBvbiBham91dGUgc2EgdmFsZXVyIOAgbGEgdmFsZXVyIGRlIGxhIHZhcmlhYmxlCitcZkJJbnN0YWxsZWRcLVNpemVcZlAgKHF1J2VsbGUgc29pdCBk6WZpbmllIGV4cGxpY2l0ZW1lbnQgb3UgY2FsY3Vs6WUgcGFyCitk6WZhdXQpIGF2YW50IHF1ZSBsYSB2YXJpYWJsZSBcZkJJbnN0YWxsZWRcLVNpemVcZlAgbmUgc29pdCBjb3Bp6WUgZGFucyBsZSBjaGFtcAorZHUgZmljaGllciCrXCBjb250cm9sXCC7LgorLlRQIAorXGZCRjpcZlBcZklmaWVsZG5hbWVcZlAKK0xhIHZhbGV1ciBkdSBjaGFtcCBcZklmaWVsZG5hbWVcZlAgYWZmaWNo6SBlbiBzb3J0aWUgZXQgcXVpIGRvaXQg6nRyZQorY2xhc3NpcXVlbWVudCBlbiBtYWp1c2N1bGVzLiBRdWFuZCBvbiBmaXhlIGNlcyB2YXJpYWJsZXMsIGNlbGEgbmUgcHJlbmQKK2VmZmV0IHF1ZSBs4CBv+SBlbGxlcyBzb250IGVmZmVjdGl2ZW1lbnQgZOl2ZWxvcHDpZXMuCisuVFAgCitcZkJGb3JtYXRcZlAKK0xhIHZlcnNpb24gZHUgZm9ybWF0IGR1IGZpY2hpZXIgXGZCLmNoYW5nZXNcZlAgcHJvZHVpdGUgcGFyIGxhIHZlcnNpb24gZGVzCitzY3JpcHRzIGNvbnN0cnVpc2FudCBsZSBzb3VyY2UuIFF1YW5kIG9uIGTpdGVybWluZSBjZXR0ZSB2YXJpYWJsZSwgbGUKK2NvbnRlbnUgZHUgY2hhbXAgXGZCRm9ybWF0XGZQIGRhbnMgbGUgZmljaGllciBcZkIuY2hhbmdlc1xmUCBlc3QgYXVzc2kgbW9kaWZp6S4KKy5UUCAKK1xmQk5ld2xpbmVcZlAsIFxmQlNwYWNlXGZQLCBcZkJUYWJcZlAKK0NlcyB2YXJpYWJsZXMgY29udGllbm5lbnQgY2hhY3VuZSBsZSBjYXJhY3TocmUgY29ycmVzcG9uZGFudC4KKy5UUCAKK1xmQnNobGliczpcZlBcZklkZXBlbmRlbmN5ZmllbGRcZlAKK0xlcyB2YXJpYWJsZXMgZOl0ZXJtaW7pZXMgZGUgY2V0dGUgZmHnb24gc29udCBwcm9kdWl0ZXMgcGFyCitcZkJkcGtnXC1zaGxpYmRlcHNcZlAuCisuVFAgCitcZkJkcGtnOlVwc3RyZWFtXC1WZXJzaW9uXGZQCitMYSB2ZXJzaW9uIGFtb250IGRlIGRwa2cuCisuVFAgCitcZkJkcGtnOlZlcnNpb25cZlAKK0xhIHZlcnNpb24gY29tcGzodGUgZGUgZHBrZy4KKy5MUAorUXVhbmQgdW5lIHZhcmlhYmxlIGVzdCBy6WbpcmVuY+llIG1haXMgbidlc3QgcGFzIGTpZmluaWUsIGNlbGEgcHJvZHVpdCB1bgorYXZlcnRpc3NlbWVudCBldCB1bmUgdmFsZXVyIG51bGxlIGVzdCBhc3N1bellLgorLgorLlNIIEZJQ0hJRVJTCisuVFAgCitcZkJkZWJpYW4vc3Vic3R2YXJzXGZQCitMYSBsaXN0ZSBkZXMgdmFyaWFibGVzIGRlIHN1YnN0aXR1dGlvbiBldCBsZXVycyB2YWxldXJzLgorLgorLlNIIEJPR1VFUworTGUgbW9tZW50IG/5IGEgbGlldSBsZSByZW1wbGFjZW1lbnQgZCd1biBjaGFtcCBwYXIgcmFwcG9ydCDgIGNlcnRhaW5lcworZOl0ZXJtaW5hdGlvbnMgZGUgY2hhbXAgYWZmaWNo6WVzIHN1ciBsYSBzb3J0aWUgc3RhbmRhcmQgZXN0IHBsdXT0dAorZW1icm91aWxs6S4KKworLlNIICJWT0lSIEFVU1NJIgorXGZCZHBrZ1xmUCgxKSwgXGZCZHBrZ1wtZ2VuY2hhbmdlc1xmUCgxKSwgXGZCZHBrZ1wtZ2VuY29udHJvbFxmUCgxKSwKK1xmQmRwa2dcLXNobGliZGVwc1xmUCgxKSwgXGZCZHBrZ1wtc291cmNlXGZQKDEpLgorLgorLlNIIEFVVEVVUgorQ29weXJpZ2h0IFwoY28gMTk5NVwtMTk5NiBJYW4gSmFja3NvbgorLmJyCitDb3B5cmlnaHQgXChjbyAyMDAwIFdpY2hlcnQgQWtrZXJtYW4KKy5zcAorQ2UgcHJvZ3JhbW1lIGVzdCB1biBsb2dpY2llbCBsaWJyZVwgOyB2b3lleiBsYSCrXCBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZVwguwordmVyc2lvbiAyIG91IHN1cOlyaWV1cmUgcG91ciBsZSBjb3B5cmlnaHQuIElsIG4neSBhIFBBUyBkZSBnYXJhbnRpZS4KKy5TSCBUUkFEVUNUSU9OCitBcmllbCBWQVJESSA8YXJpZWwudmFyZGlAZnJlZXNiZWUuZnI+LCAyMDAyLgorUGhpbGlwcGUgQmF0YWlsbGVyLCAyMDA2LgorTmljb2xhcyBGcmFu529pcywgMjAwNi4KK1ZldWlsbGV6IHNpZ25hbGVyIHRvdXRlIGVycmV1ciDgIDxkZWJpYW5cLWwxMG5cLWZyZW5jaEBsaXN0cy5kZWJpYW4ub3JnPi4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL2ZyL2RlYi41IGIvZHBrZy0xLjE2LjEuMS9tYW4vZnIvZGViLjUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjUxMjY5ZQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL2ZyL2RlYi41CkBAIC0wLDAgKzEsNzcgQEAKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlRIIGRlYiA1IDIwMTFcLTA4XC0xNCAiUHJvamV0IERlYmlhbiIgRGViaWFuCisuU0ggTk9NCitkZWIgXC0gRm9ybWF0IGRlcyBwYXF1ZXRzIGJpbmFpcmVzIERlYmlhbgorLlNIIFNZTk9QU0lTCitcZklub21cLWR1XC1maWNoaWVyLmRlYlxmUAorLlNIIERFU0NSSVBUSU9OCitMZSBmb3JtYXQgXGZCLmRlYlxmUCBlc3QgbGUgZm9ybWF0IGRlcyBwYXF1ZXRzIGJpbmFpcmVzIGRlIERlYmlhbi4gSWwgZXN0Citjb21wYXRpYmxlIGF2ZWMgbGVzIHZlcnNpb25zIDAuOTMuNzYgZXQgdWx06XJpZXVyZXMgZGUgZHBrZywgZXQgaWwgZXN0Citn6W7pcukgcGFyIGTpZmF1dCBwYXIgdG91dGVzIGxlcyB2ZXJzaW9ucyBkZSBkcGtnIGRlcHVpcyBsYSB2ZXJzaW9uIDEuMi4wCithaW5zaSBxdWUgdG91dGVzIGxlcyB2ZXJzaW9ucyBpMzg2L0VMRiBkZXB1aXMgbGEgdmVyc2lvbiAxLjEuMWVsZi4KKy5QUAorTGUgZm9ybWF0IGTpY3JpdCBpY2kgZXN0IHV0aWxpc+kgZGVwdWlzIGxhIHZlcnNpb24gMC45MyBkZSBEZWJpYW5cIDsgbGVzCitk6XRhaWxzIGNvbmNlcm5hbnQgbGUgdmlldXggZm9ybWF0IHNvbnQgY29uc3VsdGFibGVzIGRhbnMgXGZCZGViXC1vbGRcZlAoNSkuCisuU0ggRk9STUFUCitMZSBmaWNoaWVyIGVzdCB1bmUgYXJjaGl2ZSBcZkJhclxmUCBhdmVjIHVuIG51belybyBtYWdpcXVlIGRlCitcZkIhPGFyY2g+LlxmUC4gTGVzIG5vbXMgZGUgZmljaGllcnMgcGV1dmVudCBjb21wb3J0ZXIgdW4gY2FyYWN06HJlCiurXCAvXCC7IGZpbmFsLgorLlBQCitMZXMgYXJjaGl2ZXMgXGZCdGFyXGZQIGFjdHVlbGxlbWVudCBn6XLpZXMgc29udCwgbGUgZm9ybWF0IHY3IGQnb3JpZ2luZSwgdGhlCitmb3JtYXQgdXN0YXIgcHLpXC1QT1NJWCwgdW4gc291c1wtZW5zZW1ibGUgZHUgZm9ybWF0IEdOVSAodW5pcXVlbWVudCBsZQorbm91dmVhdSBmb3JtYXQgZGUgbm9tcyBsb25ncyBwb3VyIGxlcyBjaGVtaW5zIGV0IGxlcyBsaWVucywgZ+ly6XMgZGVwdWlzCitkcGtnIDEuNC4xLjE3KSBldCBsZSBmb3JtYXQgdXN0YXIgUE9TSVggKG5vbXMgbG9uZ3MgZ+ly6XMgZGVwdWlzIGRwa2cKKzEuMTUuMCkuIExlcyBtYXJxdWV1cnMgZHUgdHlwZSAoq1wgdHlwZWZsYWdzXCC7KSB0YXIgaW5jb25udXMgcHJvdm9xdWVudCB1bmUKK2VycmV1ci4KKy5QUAorTGUgcHJlbWllciBtZW1icmUgZXN0IG5vbW3pIFxmQmRlYmlhblwtYmluYXJ5XGZQIGV0IGNvbnRpZW50IHVuZSBzdWNjZXNzaW9uIGRlCitsaWduZXMsIHPpcGFy6WVzIHBhciBkZXMgcmV0b3Vyc1wtY2hhcmlvdC4gUG91ciBsZSBtb21lbnQsIHVuZSBzZXVsZSBsaWduZQorZXN0IHBy6XNlbnRlXCA6IGxlIG51belybyBkZSB2ZXJzaW9uIGR1IGZvcm1hdCwgXGZCMi4wXGZQIOAgbCdoZXVyZSBv+SBjZQorZG9jdW1lbnQgYSDpdOkg6WNyaXQuIExlcyBwcm9ncmFtbWVzIGxpc2FudCBkZXMgYXJjaGl2ZXMgRGViaWFuIHLpY2VudGVzCitkb2l2ZW50IOp0cmUgcHLpcGFy6XMg4CB1bmUgYXVnbWVudGF0aW9uIGR1IG51belybyBkZSB2ZXJzaW9uIG1pbmV1ciBldCDgIGxhCitwculzZW5jZSBkZSBub3V2ZWxsZXMgbGlnbmVzLCBhaW5zaSBxdSfgIGxlcyBpZ25vcmVyIHMnaWwgbGUgZmF1dC4KKy5QUAorU2kgbGUgbnVt6XJvIGRlIHZlcnNpb24gbWFqZXVyIGEgY2hhbmfpLCBjZWxhIHNpZ25pZmllIHF1J3VuZSBtb2RpZmljYXRpb24KK2VudHJh7m5hbnQgdW5lIGluY29tcGF0aWJpbGl06SBlbnRyZSBsZXMgdmVyc2lvbnMgYSDpdOkgZWZmZWN0dellLCBldCBsZQorcHJvZ3JhbW1lIGRvaXQgYWxvcnMgcydhcnLqdGVyLiBTaSBjZSBuJ2VzdCBwYXMgbGUgY2FzLCBsZSBwcm9ncmFtbWUgZG9pdAor6nRyZSBlbiBtZXN1cmUgZGUgY29udGludWVyIOAgdHJhaXRlciBjb3JyZWN0ZW1lbnQgbGUgZmljaGllciwg4CBtb2lucyBxdSdpbAorbmUgcmVuY29udHJlIHVuIG1lbWJyZSBub24gcmVjb25udSBkYW5zIGwnYXJjaGl2ZSAoZXhjZXB06SDgIGxhIGZpbiBkZSBjZXR0ZQorZGVybmnocmUpLCBjb21tZSBk6WNyaXQgY2lcLWRlc3NvdXMuCisuUFAKK0xlIHNlY29uZCBtZW1icmUgcmVxdWlzIGVzdCBub21t6SBcZkJjb250cm9sLnRhci5nelxmUC4gSWwgcydhZ2l0IGQndW5lIGFyY2hpdmUKK3RhciBjb21wcmVzc+llIGdy4mNlIOAgZ3ppcCBjb250ZW5hbnQgbGVzIGluZm9ybWF0aW9ucyBkZSBjb250cvRsZSBkdQorcGFxdWV0LCBzb3VzIGxhIGZvcm1lIGQndW5lIHPpcmllIGRlIGZpY2hpZXJzLCBwYXJtaSBsZXNxdWVscyBsZSBmaWNoaWVyCitcZkJjb250cm9sXGZQIGVzdCBzdHJpY3RlbWVudCByZXF1aXMgZXQgY29udGllbnQgbGVzIHByaW5jaXBhbGVzIGluZm9ybWF0aW9ucworZGUgY29udHL0bGUuIEwnYXJjaGl2ZSBkZSBjb250cvRsZSBwZXV0IOl2ZW50dWVsbGVtZW50IGNvbnRlbmlyIHVuZSBlbnRy6WUKK3BvdXIgq1wgLlwguywgbGUgculwZXJ0b2lyZSBjb3VyYW50LgorLlBQCitMZSB0cm9pc2nobWUgZXQgZGVybmllciBtZW1icmUgb2JsaWdhdG9pcmUgZXN0IGFwcGVs6SBcZkJkYXRhLnRhclxmUC4gSWwKK2NvbnRpZW50IGxlIHN5c3TobWUgZGUgZmljaGllcnMgc291cyBmb3JtZSBkJ3VuZSBhcmNoaXZlIHRhciwgc29pdCBub24KK2NvbXByZXNz6WUgKGfpcukgZGVwdWlzIGRwa2cgMS4xMC4yNCkgb3UgY29tcHJlc3PpIGF2ZWMgZ3ppcCAoYXZlYyBleHRlbnNpb24KK1wmXGZCLmd6XGZQKSwgeHogKGF2ZWMgZXh0ZW5zaW9ucyBcZkIueHpcZlAsIGfpcukgZGVwdWlzIGRwa2cgMS4xNS42KSwgYnppcDIgKGF2ZWMKK2V4dGVuc2lvbnMgXGZCLmJ6MlxmUCwgZ+ly6SBkZXB1aXMgZHBrZyAxLjEwLjI0KSBvdSBsem1hIChhdmVjIGV4dGVuc2lvbgorXCZcZkIubHptYVxmUCwgZ+ly6SBkZXB1aXMgZHBrZyAxLjEzLjI1KS4KKy5QUAorQ2VzIHRyb2lzIG1lbWJyZXMgZG9pdmVudCBhcHBhcmHudHJlIGRhbnMgY2V0IG9yZHJlIGV4YWN0LiBMZXMKK2ltcGzpbWVudGF0aW9ucyBhY3R1ZWxsZXMgZGV2cmFpZW50IGlnbm9yZXIgdG91dCBtZW1icmUgYWRkaXRpb25uZWwgc3VpdmFudAorXGZCZGF0YS50YXIuZ3pcZlAuIEQnYXV0cmVzIG1lbWJyZXMgc2Vyb250IOl2ZW50dWVsbGVtZW50IHByb3Bvc+lzLCBldCAoc2kKK3Bvc3NpYmxlKSBzZXJvbnQgcGxhY+lzIGFwcuhzIGNlcyB0cm9pcyBkZXJuaWVycy4gVG91dCBhdXRyZSBtZW1icmUgcXVpCitu6WNlc3NpdGVyYSBkJ+p0cmUgaW5z6XLpIGF2YW50IFxmQmRhdGEudGFyLmd6XGZQIGV0IHF1aSBwb3VycmEg6nRyZSBpZ25vcukKK3NhbnMgcHJvYmzobWUgcGFyIGRlcyBwcm9ncmFtbWVzIHBsdXMgYW5jaWVucywgYXVyYSB1biBub20gY29tbWVu52FudCBwYXIgdW4KK2NhcmFjdOhyZSBkZSBzb3VsaWduZW1lbnQsIKtcIFxmQl9cZlBcILsuCisuUFAKK0xlcyBub3V2ZWF1eCBtZW1icmVzIHF1aSBuZSBwb3Vycm9udCBwYXMg6nRyZSBpZ25vculzIHNhbnMgY29uc+lxdWVuY2UKK3Nlcm9udCBpbnPpculzIGF2YW50IFxmQmRhdGEudGFyLmd6XGZQIGF2ZWMgZGVzIG5vbXMgcHLpZml46XMgcGFyIHF1ZWxxdWUgY2hvc2UKK2QnYXV0cmUgcXUndW4gY2FyYWN06HJlIGRlIHNvdWxpZ25lbWVudCwgb3UgaW1wbGlxdWVyb250IHBsdXMgcHJvYmFibGVtZW50Cit1bmUgaW5jcultZW50YXRpb24gZHUgbnVt6XJvIG1hamV1ciBkZSB2ZXJzaW9uLgorLlNIICJWT0lSIEFVU1NJIgorXGZCZGViXC1vbGRcZlAoNSksIFxmQmRwa2dcLWRlYlxmUCgxKSwgXGZCZGViXC1jb250cm9sXGZQKDUpLgorLlNIIFRSQURVQ1RJT04KK0FyaWVsIFZBUkRJIDxhcmllbC52YXJkaUBmcmVlc2JlZS5mcj4sIDIwMDIuCitQaGlsaXBwZSBCYXRhaWxsZXIsIDIwMDYuCitOaWNvbGFzIEZyYW7nb2lzLCAyMDA2LgorVmV1aWxsZXogc2lnbmFsZXIgdG91dGUgZXJyZXVyIOAgPGRlYmlhblwtbDEwblwtZnJlbmNoQGxpc3RzLmRlYmlhbi5vcmc+LgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vZnIvZHBrZy1hcmNoaXRlY3R1cmUuMSBiL2Rwa2ctMS4xNi4xLjEvbWFuL2ZyL2Rwa2ctYXJjaGl0ZWN0dXJlLjEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDU2ZjFkOQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL2ZyL2Rwa2ctYXJjaGl0ZWN0dXJlLjEKQEAgLTAsMCArMSwzMjEgQEAKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlRIIGRwa2dcLWFyY2hpdGVjdHVyZSAxIDIwMTFcLTA4XC0xNCAiUHJvamV0IERlYmlhbiIgIlV0aWxpdGFpcmVzIGRlIGRwa2ciCisuU0ggTk9NCitkcGtnXC1hcmNoaXRlY3R1cmUgXC0gRml4ZXIgZXQgZOl0ZXJtaW5lciBsJ2FyY2hpdGVjdHVyZSBwb3VyIGxhIGNvbnN0cnVjdGlvbgorZCd1biBwYXF1ZXQKKy4KKy5TSCBTWU5PUFNJUworXGZCZHBrZ1wtYXJjaGl0ZWN0dXJlXGZQIFtcZklvcHRpb25cZlAuLi5dIFtcZkljb21tYW5kXGZQXQorLlBQCisuCisuU0ggREVTQ1JJUFRJT04KK2Rwa2dcLWFyY2hpdGVjdHVyZSBhaWRlIOAgZOl0ZXJtaW5lciBldCDgIGZpeGVyIGwnYXJjaGl0ZWN0dXJlIGRlCitjb25zdHJ1Y3Rpb24gZXQgbCdhcmNoaXRlY3R1cmUgaPR0ZSBwb3VyIGxhIGNy6WF0aW9uIGQndW4gcGFxdWV0LgorLlBQCitMJ2FyY2hpdGVjdHVyZSBkZSBjb25zdHJ1Y3Rpb24gZXN0IHRvdWpvdXJzIGTpdGVybWlu6WUgcGFyIHVuIGFwcGVsIGV4dGVybmUKK+AgXGZCZHBrZ1xmUCgxKS4gRWxsZSBuZSBwZXV0IHBhcyDqdHJlIHNw6WNpZmnpZSBlbiBsaWduZSBkZSBjb21tYW5kZS4KKy5QUAorVm91cyBwb3V2ZXogc3DpY2lmaWVyIHVuZSBhcmNoaXRlY3R1cmUgaPR0ZSBlbiB1dGlsaXNhbnQgdW5lIGRlcyBvcHRpb25zCitcZkJcLWFcZlAgZXQgXGZCXC10XGZQIChvdSBsZXMgZGV1eCkuIFBhciBk6WZhdXQsIGxhIHZhbGV1ciBlc3QgZOl0ZXJtaW7pZSBwYXIgdW4KK2FwcGVsIOAgXGZCZ2NjXGZQKDEpLCBvdSBlbiB1dGlsaXNhbnQgbCdhcmNoaXRlY3R1cmUgZGUgY29uc3RydWN0aW9uIHNpCitccy0xQ0NcczAgb3UgZ2NjIG5lIHNvbnQgcGFzIGRpc3BvbmlibGVzLiBVdGlsaXNlciB1bmUgc2V1bGUgZGVzIG9wdGlvbnMKK1xmQlwtYVxmUCBldCBcZkJcLXRcZlAgZXN0IHN1ZmZpc2FudCwgbGEgdmFsZXVyIGRlIGwndW5lIGVzdCB1dGlsaXPpZSBjb21tZSB2YWxldXIKK3BhciBk6WZhdXQgZGUgbCdhdXRyZS4gQmllbiBz+3IsIGlsIGVzdCBwculm6XJhYmxlIGRlIG4nZW4gcHLpY2lzZXIgcXUndW5lCitzZXVsZSwgcHVpc3F1ZSBcZkJkcGtnXC1hcmNoaXRlY3R1cmVcZlAgYWZmaWNoZXJhIHVuIGF2ZXJ0aXNzZW1lbnQgc2kgbGUgY2hvaXgKK25lIGNvcnJlc3BvbmQgcGFzIOAgbGEgdmFsZXVyIHBhciBk6WZhdXQuCisuCisuU0ggQ09NTUFOREVTCisuVFAgCitcZkJcLWxcZlAKK0FmZmljaGUgbGVzIHZhcmlhYmxlcyBkJ2Vudmlyb25uZW1lbnQsIHVuZSBwYXIgbGlnbmUsIGVuIHV0aWxpc2FudCBsZSBmb3JtYXQKK1xmSVZBUklBQkxFPXZhbGV1clxmUC4gQydlc3QgbCdhY3Rpb24gcGFyIGTpZmF1dC4KKy5UUCAKK1xmQlwtZVxmUFxmSWFyY2hpdGVjdHVyZVwtZGViaWFuXGZQCitW6XJpZmllIGwn6WdhbGl06SBkJ2FyY2hpdGVjdHVyZXMuIFBhciBk6WZhdXQsIFxmSWFyY2hpdGVjdHVyZVwtZGViaWFuXGZQIGVzdAorY29tcGFy6WUg4CBsJ2FyY2hpdGVjdHVyZSBEZWJpYW4gYWN0dWVsbGUsIHF1aSBlc3QgY2VsbGUgZGUgbGEgbWFjaGluZQoraPR0ZS4gQ2V0dGUgYWN0aW9uIG5lIGTpdmVsb3BwZSBwYXMgbGVzIGFyY2hpdGVjdHVyZXMgam9rZXIuIExhIGNvbW1hbmRlCitxdWl0dGUgYXZlYyB1biBjb2RlIGRlIHJldG91ciBkZSAwIHNpIGwnYXJjaGl0ZWN0dXJlIGNvcnJlc3BvbmQgZXQgZGUgMSBkYW5zCitsZSBjYXMgY29udHJhaXJlLgorLlRQIAorXGZCXC1pXGZQXGZJYXJjaGl0ZWN0dXJlXC1qb2tlclxmUAorVulyaWZpZSBsJ+lnYWxpdOkgZCdhcmNoaXRlY3R1cmVzIGVuIGTpdmVsb3BwYW50IFxmSWFyY2hpdGVjdHVyZVwtam9rZXJcZlAgZXQgZW4KK2NvbXBhcmFudCDgIGwnYXJjaGl0ZWN0dXJlIERlYmlhbiBhY3R1ZWxsZS4gTGEgY29tbWFuZGUgcXVpdHRlIGF2ZWMgdW4gY29kZQorZGUgcmV0b3VyIGRlIDAgc2kgbCdhcmNoaXRlY3R1cmUgY29ycmVzcG9uZCBldCBkZSAxIGRhbnMgbGUgY2FzIGNvbnRyYWlyZS4KKy5UUCAKK1xmQlwtcVxmUFxmSW5vbVwtZGVcLXZhcmlhYmxlXGZQCitBZmZpY2hlIGxhIHZhbGV1ciBkJ3VuZSBzZXVsZSB2YXJpYWJsZS4KKy5UUCAKK1xmQlwtc1xmUAorUHJvZHVpdCB1bmUgY29tbWFuZGUsIHF1aSBwZXV0IOp0cmUgdXRpbGlz6WUgcG91ciBwb3NpdGlvbm5lciBsZXMgdmFyaWFibGVzCitkJ2Vudmlyb25uZW1lbnQgYXZlYyCrXCBldmFsXCC7LgorLlRQIAorXGZCXC11XGZQCitQcm9kdWl0IHVuZSBjb21tYW5kZSBzaW1pbGFpcmUg4CBjZWxsZSBwcm9kdWl0ZSBwYXIgXGZCXC1zXGZQLCBtYWlzIHBvdXIKK3N1cHByaW1lciBsZXMgdmFyaWFibGVzIGRlIGwnZW52aXJvbm5lbWVudC4KKy5UUCAKK1xmQlwtY1xmUCBcZkljb21tYW5kZVxmUAorRXjpY3V0ZSB1bmUgXGZJY29tbWFuZGVcZlAgZGFucyB1biBlbnZpcm9ubmVtZW50IG/5IHRvdXRlcyBsZXMgdmFyaWFibGVzIHNvbnQKK3Bvc2l0aW9ubullcyBhdXggdmFsZXVycyBzcOljaWZp6WVzLgorLlRQIAorXGZCXC1MXGZQCitBZmZpY2hlIHVuZSBsaXN0ZSBkZXMgYXJjaGl0ZWN0dXJlcyB2YWxhYmxlcy4KKy5UUCAKK1xmQlwtXC1oZWxwXGZQCitBZmZpY2hlIHVuIG1lc3NhZ2UgZCdhaWRlIHB1aXMgcXVpdHRlLgorLlRQIAorXGZCXC1cLXZlcnNpb25cZlAKK0FmZmljaGUgbGUgbnVt6XJvIGRlIHZlcnNpb24gcHVpcyBxdWl0dGUuCisuCisuU0ggT1BUSU9OUworLlRQIAorXGZCXC1hXGZQXGZJYXJjaGl0ZWN0dXJlXC1kZWJpYW5cZlAKK0ZpeGUgbCdhcmNoaXRlY3R1cmUgRGViaWFuLgorLlRQIAorXGZCXC10XGZQXGZJdHlwZVwtZGVcLXN5c3TobWVcLWdudVxmUAorRml4ZSBsZSB0eXBlIGRlIHN5c3TobWUgR05VLgorLlRQIAorXGZCXC1mXGZQCitMZXMgdmFsZXVycyBwb3NpdGlvbm7pZXMgcGFyIGxlcyB2YXJpYWJsZXMgZCdlbnZpcm9ubmVtZW50IGF5YW50IGxlIG3qbWUgbm9tCitxdWUgY2VsbGVzIHV0aWxpc+llcyBwYXIgbGVzIHNjcmlwdHMgc29udCBwcmlzZXMgZW4gY29tcHRlIChjJ2VzdFwt4FwtZGlyZQordXRpbGlz6WUgcGFyIFxmQmRwa2dcLWFyY2hpdGVjdHVyZVxmUCksIHNhdWYgc2kgY2V0dGUgb3B0aW9uIGVzdCBwculzZW50ZS4gQ2VjaQorcGVybWV0IOAgdW4gdXRpbGlzYXRldXIgZGUgc3VyY2hhcmdlciB1bmUgdmFsZXVyIG3qbWUgbG9yc3F1ZSBsJ2FwcGVsIOAKK1xmQmRwa2dcLWFyY2hpdGVjdHVyZVxmUCBlc3QgaW5jbHVzIGRhbnMgdW4gYXV0cmUgc2NyaXB0IChwYXIgZXhlbXBsZQorXGZCZHBrZ1wtYnVpbGRwYWNrYWdlXGZQKDEpKS4KKy4KKy5TSCBURVJNSU5PTE9HSUUKKy5JUCAiTWFjaGluZSBkZSBjb25zdHJ1Y3Rpb24iIDQKK01hY2hpbmUgc3VyIGxhcXVlbGxlIGxlIHBhcXVldCBlc3QgY29uc3RydWl0LgorLklQICJNYWNoaW5lIGj0dGUiIDQKK01hY2hpbmUgcG91ciBsYXF1ZWxsZSBsZSBwYXF1ZXQgZXN0IGNvbnN0cnVpdC4KKy5JUCAiQXJjaGl0ZWN0dXJlIERlYmlhbiIgNAorQ2hh7m5lIGRlIGNhcmFjdOhyZXMgZGUgbCdhcmNoaXRlY3R1cmUgRGViaWFuLCBxdWkgc3DpY2lmaWUgbCdlbXBsYWNlbWVudAorZGFucyBsJ2FyY2hpdmUgXHMtMUZUUFxzMC4gUGFyIGV4ZW1wbGVcIDogaTM4Niwgc3BhcmMsIGh1cmRcLWkzODYuCisuSVAgIkFyY2hpdGVjdHVyZSBqb2tlciIgNAorVW5lIGFyY2hpdGVjdHVyZSBqb2tlciBlc3QgdW5lIGFyY2hpdGVjdHVyZSBzcOljaWFsZSBxdWkgY29ycmVzcG9uZCDgIHRvdXRlcworbGVzIGFyY2hpdGVjdHVyZXMgcullbGxlcyBxdWkgZW4gZm9udCBwYXJ0aWUuIElsIGVzdCBlbiBn6W7pcmFsIGRlIGxhIGZvcm1lCis8bm95YXU+XC08cHJvY2Vzc2V1cj4uIFBhciBleGVtcGxlXCA6IGxpbnV4XC1hbnksIGFueVwtaTM4NiwKK2h1cmRcLWFueS4KKy5JUCAiVHlwZSBkZSBzeXN06G1lIFxzLTFHTlVcczAiIDQKK0NoYe5uZSBkZSBjYXJhY3TocmVzIGTpZmluaXNzYW50IGwnYXJjaGl0ZWN0dXJlIGV0IGNvbnN0aXR16WUgZGUgZGV1eAorcGFydGllcyBz6XBhcullcyBwYXIgdW4gdGlyZXRcIDogcHJvY2Vzc2V1ciBldCBzeXN06G1lLiBQYXIgZXhlbXBsZVwgOgoraTM4NlwtbGludXhcLWdudSwgc3BhcmNcLWxpbnV4XC1nbnUsIGkzODZcLWdudSwgeDg2XzY0XC1uZXRic2QuCisuCisuU0ggIlZBUklBQkxFUyBEJ0VOVklST05ORU1FTlQiCitMZXMgdmFyaWFibGVzIHN1aXZhbnRlcyBzb250IHBvc2l0aW9ubullcyBwYXIgXGZCZHBrZ1wtYXJjaGl0ZWN0dXJlXGZQXCA6CisuSVAgXHMtMURFQl9CVUlMRF9BUkNIXHMwIDQKK0FyY2hpdGVjdHVyZSBEZWJpYW4gZGUgbGEgbWFjaGluZSBkZSBjb25zdHJ1Y3Rpb24uCisuSVAgXHMtMURFQl9CVUlMRF9BUkNIX09TXHMwIDQKK05vbSBkdSBzeXN06G1lIERlYmlhbiBkZSBsYSBtYWNoaW5lIGRlIGNvbnN0cnVjdGlvbi4KKy5JUCBccy0xREVCX0JVSUxEX0FSQ0hfQ1BVXHMwIDQKK05vbSBkZSBwcm9jZXNzZXVyIERlYmlhbiBkZSBsYSBtYWNoaW5lIGRlIGNvbnN0cnVjdGlvbi4KKy5JUCBccy0xREVCX0JVSUxEX0FSQ0hfQklUU1xzMCA0CitUYWlsbGUgZGUgcG9pbnRldXIgZGUgbGEgbWFjaGluZSBkZSBjb25zdHJ1Y3Rpb24gKGVuIGJpdHMpLgorLklQIFxzLTFERUJfQlVJTERfQVJDSF9FTkRJQU5cczAgNAorq1wgRW5kaWFubmVzc7tcIGRlIGxhIG1hY2hpbmUgZGUgY29uc3RydWN0aW9uIChsaXR0bGUgb3UgYmlnKS4KKy5JUCBccy0xREVCX0JVSUxEX0dOVV9DUFVcczAgNAorUGFydGllIFxzLTFDUFVcczAgZGUgXHMtMURFQl9CVUlMRF9HTlVfVFlQRVxzMC4KKy5JUCBccy0xREVCX0JVSUxEX0dOVV9TWVNURU1cczAgNAorUGFydGllIKtcIHN5c3TobWVcILsgZGUgXHMtMURFQl9CVUlMRF9HTlVfVFlQRVxzMC4KKy5JUCBccy0xREVCX0JVSUxEX0dOVV9UWVBFXHMwIDQKK1R5cGUgZGUgc3lzdOhtZSBccy0xR05VXHMwIGRlIGxhIG1hY2hpbmUgZGUgY29uc3RydWN0aW9uLgorLklQIFxzLTFERUJfQlVJTERfTVVMVElBUkNIXHMwIDQKK1RoZSBjbGFyaWZpZWQgXHMtMUdOVVxzMCBzeXN0ZW0gdHlwZSBvZiB0aGUgYnVpbGQgbWFjaGluZSwgdXNlZCBmb3IKK2ZpbGVzeXN0ZW0gcGF0aHMuCisuSVAgXHMtMURFQl9IT1NUX0FSQ0hcczAgNAorQXJjaGl0ZWN0dXJlIERlYmlhbiBkZSBsYSBtYWNoaW5lIGj0dGUuCisuSVAgXHMtMURFQl9IT1NUX0FSQ0hfT1NcczAgNAorTm9tIGR1IHN5c3TobWUgRGViaWFuIGRlIGxhIG1hY2hpbmUgaPR0ZS4KKy5JUCBccy0xREVCX0hPU1RfQVJDSF9DUFVcczAgNAorTm9tIGR1IHByb2Nlc3NldXIgRGViaWFuIGRlIGxhIG1hY2hpbmUgaPR0ZS4KKy5JUCBccy0xREVCX0hPU1RfQVJDSF9CSVRTXHMwIDQKK1RhaWxsZSBkZSBwb2ludGV1ciBkZSBsYSBtYWNoaW5lIGj0dGUgKGVuIGJpdHMpLgorLklQIFxzLTFERUJfSE9TVF9BUkNIX0VORElBTlxzMCA0CiurXCBFbmRpYW5lc3NcILsgZGUgbGEgbWFjaGluZSBo9HRlIChsaXR0bGUgb3UgYmlnKS4KKy5JUCBccy0xREVCX0hPU1RfR05VX0NQVVxzMCA0CitQYXJ0aWUgq1wgcHJvY2Vzc2V1clwguyBkZSBccy0xREVCX0hPU1RfR05VX1RZUEVcczAuCisuSVAgXHMtMURFQl9IT1NUX0dOVV9TWVNURU1cczAgNAorUGFydGllIKtcIHN5c3TobWVcILsgZGUgXHMtMURFQl9IT1NUX0dOVV9UWVBFXHMwLgorLklQIFxzLTFERUJfSE9TVF9HTlVfVFlQRVxzMCA0CitUeXBlIGRlIHN5c3TobWUgXHMtMUdOVVxzMCBkZSBsYSBtYWNoaW5lIGj0dGUuCisuSVAgXHMtMURFQl9IT1NUX01VTFRJQVJDSFxzMCA0CitUaGUgY2xhcmlmaWVkIFxzLTFHTlVcczAgc3lzdGVtIHR5cGUgb2YgdGhlIGhvc3QgbWFjaGluZSwgdXNlZCBmb3IKK2ZpbGVzeXN0ZW0gcGF0aHMuCisuCisuU0ggREVCSUFOL1JVTEVTCitMZXMgdmFyaWFibGVzIGQnZW52aXJvbm5lbWVudCBk6WZpbmllcyBwYXIgXGZCZHBrZ1wtYXJjaGl0ZWN0dXJlXGZQIHNvbnQKK2ZvdXJuaWVzIOAgXGZJZGViaWFuL3J1bGVzXGZQIGNvbW1lIHZhcmlhYmxlcyBwb3VyIG1ha2UgKGNvbnN1bHRleiBsYQorZG9jdW1lbnRhdGlvbiBkZSBtYWtlKS4gQ2VwZW5kYW50LCB2b3VzIG5lIGRldmV6IHBhcyBjb21wdGVyIGzgXC1kZXNzdXMKK3B1aXNxdWUgY2VsYSBlbXDqY2hlIGxlcyBhcHBlbHMgbWFudWVscyDgIGNlIHNjcmlwdC4gwCBsYSBwbGFjZSwgdm91cyBkZXZlegordG91am91cnMgbGVzIGluaXRpYWxpc2VyIGVuIHV0aWxpc2FudCBcZkJkcGtnXC1hcmNoaXRlY3R1cmVcZlAgYXZlYyBsJ29wdGlvbgorXC1xLiBWb2ljaSBxdWVscXVlcyBleGVtcGxlcywgcXVpIGluZGlxdWVudCBhdXNzaSBjb21tZW50IGFt6Wxpb3JlciBsYQorZ2VzdGlvbiBkZXMgY29tcGlsYXRpb25zIGNyb2lz6WVzIGRlIHZvdHJlIHBhcXVldFwgOgorLlBQCisKK0F1IGxpZXUgZGVcIDoKKy5JUAorLm5mCitBUkNIPVxgZHBrZyBcLVwtcHJpbnRcLWFyY2hpdGVjdHVyZVxgCitjb25maWd1cmUgJChccy0xQVJDSFxzMClcLWxpbnV4CisuZmkKKy5QUAorVmV1aWxsZXogdXRpbGlzZXJcIDoKKy5JUAorLm5mCitcJlxzLTFERUJfQlVJTERfR05VX1RZUEVcczBcIDo9ICQoc2hlbGwgZHBrZ1wtYXJjaGl0ZWN0dXJlIFwtcURFQl9CVUlMRF9HTlVfVFlQRSkKK1wmXHMtMURFQl9IT1NUX0dOVV9UWVBFXHMwXCA6PSAkKHNoZWxsIGRwa2dcLWFyY2hpdGVjdHVyZSBcLXFERUJfSE9TVF9HTlVfVFlQRSkKKworY29uZmlndXJlIFwtXC1idWlsZD0kKFxzLTFERUJfQlVJTERfR05VX1RZUEVcczApIFwtXC1ob3N0PSQoXHMtMURFQl9IT1NUX0dOVV9UWVBFXHMwKQorLmZpCisuUFAKKworQXUgbGlldSBkZVwgOgorLklQCisubmYKK0FSQ0g9XGBkcGtnIFwtXC1wcmludFwtYXJjaGl0ZWN0dXJlXGAKK2lmZXEgKCQoXHMtMUFSQ0hcczApLGFscGhhKQorICAuLi4KK2VuZGlmCisuZmkKKy5QUAorVmV1aWxsZXogdXRpbGlzZXJcIDoKKy5JUAorLm5mCitcJlxzLTFERUJfSE9TVF9BUkNIXHMwXCA6PSAkKHNoZWxsIGRwa2dcLWFyY2hpdGVjdHVyZSBcLXFERUJfSE9TVF9BUkNIKQorCitpZmVxICgkKFxzLTFERUJfSE9TVF9BUkNIXHMwKSxhbHBoYSkKKyAgLi4uCitlbmRpZgorLmZpCisuUFAKK091LCBzaSB2b3VzIG4nYXZleiBiZXNvaW4gcXVlIGRlIHbpcmlmaWVyIGxlIHR5cGUgZHUgcHJvY2Vzc2V1ciBldCBkdQorc3lzdOhtZSwgdXRpbGlzZXogbGVzIHZhcmlhYmxlcyBERUJfSE9TVF9BUkNIX0NQVSBvdSBERUJfSE9TVF9BUkNIX09TLgorLlBQCitBcHBlbGVyIGRwa2cgZGFucyBsZXMgZmljaGllcnMgq1wgcnVsZXNcILsgcG91ciBvYnRlbmlyIGxlcyBpbmZvcm1hdGlvbnMgc3VyCitsJ2FyY2hpdGVjdHVyZSBlc3QgZOljb25zZWlsbOkgKHNhdWYgcG91ciBkZXMgcmFpc29ucyBkZSBjb21wYXRpYmlsaXTpCithcnJp6HJlLCB2b3lleiBjaVwtZGVzc291cykuIEVuIHBhcnRpY3VsaWVyLCBsJ29wdGlvbiBcLVwtcHJpbnRcLWFyY2hpdGVjdHVyZQorbidlc3QgcGFzIGZpYWJsZSBwdWlzcXVlIGNlcnRhaW5lcyBhcmNoaXRlY3R1cmVzIERlYmlhbiBuZSBjb3JyZXNwb25kZW50IOAKK2F1Y3VuIG5vbSBkZSBwcm9jZXNzZXVyLgorLgorLlNIICJDT01QQVRJQklMSVTJIEFSUknIUkUiCitMZXMgdmFyaWFibGVzIERFQl8qX0FSQ0hfQklUUyBldCBERUJfKl9BUkNIX0VORElBTiBzb250IGFwcGFydWVzIGF2ZWMgbGEKK3ZlcnNpb24gMS4xNS40IGRlIGRwa2dcLWRldi4gU2kgZWxsZXMgc29udCB1dGlsaXPpZXMgZGFucyBcZklkZWJpYW4vcnVsZXNcZlAsCit1bmUgZOlwZW5kYW5jZSBkZSBjb25zdHJ1Y3Rpb24gc3VyIGRwa2dcLWRldiAoPj0gMS4xNS40KSBlc3QgbuljZXNzYWlyZS4KKy5QUAorTGVzIHZhcmlhYmxlcyBERUJfSE9TVF9BUkNIX0NQVSBldCBERUJfSE9TVF9BUkNIX09TIHNvbnQgYXBwYXJ1ZXMgYXZlYyBsYQordmVyc2lvbiAxLjEzLjIgZGUgZHBrZ1wtZGV2LiBBdXBhcmF2YW50LCBsZXMgZmljaGllcnMgXGZJZGViaWFuL3J1bGVzXGZQCit1dGlsaXNhaWVudCBsZXMgdmFyaWFibGVzIERFQl9IT1NUX0dOVV9DUFUgb3UgREVCX0hPU1RfR05VX1RZUEUgcXVpIG9udCBldQordGVuZGFuY2Ug4CB2YXJpZXIgZGFucyBsZSB0ZW1wcy4KKy5QUAorU2kgY2VzIHZhcmlhYmxlcyBzb250IGVuY29yZSB1dGlsaXPpZXMgZGFucyB1biBmaWNoaWVyIFxmSWRlYmlhbi9ydWxlc1xmUCBwb3VyCitk6WNpZGVyIHF1b2kgY29uc3RydWlyZSBldCBjb21tZW50LCBpbCBmYXV0IGxlcyByZW1wbGFjZXIgcGFyIGxlcyBub3V2ZWxsZXMKK3ZhcmlhYmxlcy4gVm91cyBwb3V2ZXogcmVzdGVyIGNvbXBhdGlibGUgYXZlYyBsZXMgdmVyc2lvbnMgcHLpY+lkZW50ZXMgZGUKK2Rwa2dcLWRldiBlbiB1dGlsaXNhbnQgbGUgY29kZSBzdWl2YW50XCA6CisuSVAKKy5uZgorREVCX0hPU1RfQVJDSF9DUFVcIDo9ICQoc2hlbGwgZHBrZ1wtYXJjaGl0ZWN0dXJlIFwtcURFQl9IT1NUX0FSQ0hfQ1BVIDI+L2Rldi9udWxsKQorREVCX0hPU1RfQVJDSF9PU1wgOj0gJChzaGVsbCBkcGtnXC1hcmNoaXRlY3R1cmUgXC1xREVCX0hPU1RfQVJDSF9PUyAyPi9kZXYvbnVsbCkKKworIyBQcmlzZSBlbiBjb21wdGUgZGVzIGFuY2llbm5lcyB2ZXJzaW9ucyBkZSBkcGtnXC1hcmNoaXRlY3R1cmUuCitpZmVxICgkKERFQl9IT1NUX0FSQ0hfQ1BVKSwpCisgIERFQl9IT1NUX0FSQ0hfQ1BVXCA6PSAkKHNoZWxsIGRwa2dcLWFyY2hpdGVjdHVyZSBcLXFERUJfSE9TVF9HTlVfQ1BVKQorICBpZmVxICgkKERFQl9IT1NUX0FSQ0hfQ1BVKSx4ODZfNjQpCisgICAgREVCX0hPU1RfQVJDSF9DUFVcIDo9IGFtZDY0CisgIGVuZGlmCitlbmRpZgoraWZlcSAoJChERUJfSE9TVF9BUkNIX09TKSwpCisgIERFQl9IT1NUX0FSQ0hfT1NcIDo9ICQoc3Vic3QgXC1nbnUsLCQoc2hlbGwgZHBrZ1wtYXJjaGl0ZWN0dXJlIFwtcURFQl9IT1NUX0dOVV9TWVNURU0pKQorICBpZmVxICgkKERFQl9IT1NUX0FSQ0hfT1MpLGdudSkKKyAgICBERUJfSE9TVF9BUkNIX09TXCA6PSBodXJkCisgIGVuZGlmCitlbmRpZgorLmZpCisuUFAKK0V0IGRlIGxhIG3qbWUgZmHnb24gcG91ciBERUJfQlVJTERfQVJDSF9DUFUgZXQgREVCX0JVSUxEX0FSQ0hfT1MuCisuUFAKK1BvdXIgYWNjZXB0ZXIgZW5jb3JlIGxlcyB2ZXJzaW9ucyBkZSBkcGtnXC1kZXYgcXVpIG4naW5jbHVlbnQgcGFzCitcZkJkcGtnXC1hcmNoaXRlY3R1cmVcZlAsIHZvdXMgcG91dmV6IHV0aWxpc2VyXCA6CisuSVAKKy5uZgorXCZccy0xREVCX0JVSUxEX0FSQ0hcczBcIDo9ICQoc2hlbGwgZHBrZyBcLVwtcHJpbnRcLWFyY2hpdGVjdHVyZSkKK1wmXHMtMURFQl9CVUlMRF9HTlVfQ1BVXHMwXCA6PSAkKHBhdHN1YnN0IGh1cmRcLSUsJSwkKFxzLTFERUJfQlVJTERfQVJDSFxzMCkpCitpZmVxICgkKGZpbHRlclwtb3V0IGh1cmRcLSUsJChccy0xREVCX0JVSUxEX0FSQ0hcczApKSwpCisgIFxzLTFERUJfQlVJTERfR05VX1NZU1RFTVxzMFwgOj0gZ251CitlbHNlCisgIFxzLTFERUJfQlVJTERfR05VX1NZU1RFTVxzMFwgOj0gbGludXhcLWdudQorZW5kaWYKK0RFQl9CVUlMRF9HTlVfVFlQRT0kKFxzLTFERUJfQlVJTERfR05VX0NQVVxzMClcLSQoXHMtMURFQl9CVUlMRF9HTlVfU1lTVEVNXHMwKQorCitcJlxzLTFERUJfSE9TVF9BUkNIXHMwXCA6PSAkKFxzLTFERUJfQlVJTERfQVJDSFxzMCkKK1wmXHMtMURFQl9IT1NUX0dOVV9DUFVcczBcIDo9ICQoXHMtMURFQl9CVUlMRF9HTlVfQ1BVXHMwKQorXCZccy0xREVCX0hPU1RfR05VX1NZU1RFTVxzMFwgOj0gJChccy0xREVCX0JVSUxEX0dOVV9TWVNURU1cczApCitcJlxzLTFERUJfSE9TVF9HTlVfVFlQRVxzMFwgOj0gJChccy0xREVCX0JVSUxEX0dOVV9UWVBFXHMwKQorLmZpCisuUFAKK1ZvdXMgcG91dmV6IHBsYWNlciBjZXJ0YWluZXMgZGUgY2VzIGxpZ25lcyBhdSBk6WJ1dCBkZSB2b3RyZQorZGViaWFuL3J1bGVzLiBDZXMgdmFsZXVycyBwYXIgZOlmYXV0IHNlcm9udCDpY3Jhc+llcyBzaSBkcGtnXC1hcmNoaXRlY3R1cmUKK2VzdCB1dGlsaXPpLgorLlBQCitWb3VzIG4nYXZleiBwYXMgYmVzb2luIGRlIHRvdXRlcyBjZXMgbGlnbmVzLiBDaG9pc2lzc2V6IHVuaXF1ZW1lbnQgbGVzCit2YXJpYWJsZXMgcXVlIHZvdXMgdXRpbGlzZXogZGFucyB2b3RyZSBmaWNoaWVyIKtcIHJ1bGVzXCC7LiBQYXIgZXhlbXBsZSwgc2kKK3ZvdXMgbidhdmV6IGJlc29pbiBxdWUgZGUgbCdhcmNoaXRlY3R1cmUgaPR0ZSBEZWJpYW4sIGBERUJfSE9TVF9BUkNIPVxgZHBrZworXC1cLXByaW50XC1hcmNoaXRlY3R1cmVcYCcgZXN0IHN1ZmZpc2FudCAoaWwgcydhZ2l0IGJpZW4gc/tyIGRlIGwnYXJjaGl0ZWN0dXJlCitEZWJpYW4gZGUgbGEgbWFjaGluZSBkZSBjb25zdHJ1Y3Rpb24sIG1haXMgbGUgYnV0IGVzdCBpY2kgZGUgcmVzdGVyCitjb21wYXRpYmxlIGF2ZWMgbGVzIGFuY2llbm5lcyBjb21waWxhdGlvbnMgbmF0aXZlcykuCisuUFAKK0xlcyBvcHRpb25zIFxmQlwtZVxmUCBldCBcZkJcLWlcZlAgbidvbnQg6XTpIGFqb3V06WVzIHF1ZSByZWxhdGl2ZW1lbnQgculjZW1tZW50IOAKK1xmQmRwa2dcLWFyY2hpdGVjdHVyZVxmUCAoZGVwdWlzIGxhIHZlcnNpb24gMS4xMy4xMyBkZSBkcGtnKS4KKy4KKy5TSCBFWEVNUExFUworXGZCZHBrZ1wtYnVpbGRwYWNrYWdlXGZQIGFjY2VwdGUgbCdvcHRpb24gXGZCXC1hXGZQLCBldCBsYSBwYXNzZSDgCitcZkJkcGtnXC1hcmNoaXRlY3R1cmVcZlAuIFZvaWNpIGQnYXV0cmVzIGV4ZW1wbGVzXCA6CisuSVAKK0NDPWkzODZcLWdudVwtZ2NjIGRwa2dcLWFyY2hpdGVjdHVyZSBcLWMgZGViaWFuL3J1bGVzIGJ1aWxkCisuSVAKK2V2YWwgXGBkcGtnXC1hcmNoaXRlY3R1cmUgXC11XGAKKy5QUAorVulyaWZpZSBzaSB1bmUgYXJjaGl0ZWN0dXJlIGVzdCBpZGVudGlxdWUg4CBsJ2FyY2hpdGVjdHVyZSBhY3R1ZWxsZSBvdSDgCitjZWxsZSBzcOljaWZp6WVcIDoKKy5JUAorZHBrZ1wtYXJjaGl0ZWN0dXJlIFwtZWxpbnV4XC1hbHBoYQorLklQCitkcGtnXC1hcmNoaXRlY3R1cmUgXC1hbWlwcyBcLWVsaW51eFwtbWlwcworLlBQCitW6XJpZmllIHNpIGwnYXJjaGl0ZWN0dXJlIGFjdHVlbGxlIG91IGNlbGxlIHNw6WNpZmnpZSBhdmVjIFwtYSBjb3JyZXNwb25kIOAKK3VuIHN5c3TobWUgTGludXhcIDoKKy5JUAorZHBrZ1wtYXJjaGl0ZWN0dXJlIFwtaWxpbnV4XC1hbnkKKy5JUAorZHBrZ1wtYXJjaGl0ZWN0dXJlIFwtYWkzODYgXC1pbGludXhcLWFueQorLgorLlNIIEZJQ0hJRVJTCitBbGwgdGhlc2UgZmlsZXMgaGF2ZSB0byBiZSBwcmVzZW50IGZvciBcZkJkcGtnXC1hcmNoaXRlY3R1cmVcZlAgdG8gd29yay4gVGhlaXIKK2xvY2F0aW9uIGNhbiBiZSBvdmVycmlkZGVuIGF0IHJ1bnRpbWUgd2l0aCB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGUKK1xmQkRQS0dfREFUQURJUlxmUC4KKy5UUCAKK1xmSS91c3Ivc2hhcmUvZHBrZy9jcHV0YWJsZVxmUAorVGFibGUgZGVzIG5vbXMgZGUgcHJvY2Vzc2V1cnMgY29ubnVzIGV0IGxpYWlzb24gYXZlYyBsZXVyIG5vbSBHTlUuCisuVFAgCitcZkkvdXNyL3NoYXJlL2Rwa2cvb3N0YWJsZVxmUAorVGFibGUgZGVzIG5vbXMgZGVzIHN5c3TobWVzIGQnZXhwbG9pdGF0aW9uIGNvbm51cyBldCBsaWFpc29uIGF2ZWMgbGV1cnMgbm9tcworR05VLgorLlRQIAorXGZJL3Vzci9zaGFyZS9kcGtnL3RyaXBsZXR0YWJsZVxmUAorQ29ycmVzcG9uZGFuY2VzIGVudHJlIGxlcyB0cmlwbGV0cyBkZSBsJ2FyY2hpdGVjdHVyZSBEZWJpYW4gZXQgbGVzIG5vbXMgZGVzCithcmNoaXRlY3R1cmVzIERlYmlhbi4KKy4KKy5TSCAiVk9JUiBBVVNTSSIKK1xmQmRwa2dcLWJ1aWxkcGFja2FnZVxmUCgxKSwgXGZCZHBrZ1wtY3Jvc3NcZlAoMSkuCisuCisuU0ggQVVURVVSCitcZkJkcGtnXC1hcmNoaXRlY3R1cmVcZlAgZXQgY2V0dGUgcGFnZSBkZSBtYW51ZWwgb250IOl06SBpbml0aWFsZW1lbnQg6WNyaXRzIHBhcgorTWFyY3VzIEJyaW5rbWFubiA8YnJpbmttZEBkZWJpYW4ub3JnPi4KKworLlNIIFRSQURVQ1RJT04KK0FyaWVsIFZBUkRJIDxhcmllbC52YXJkaUBmcmVlc2JlZS5mcj4sIDIwMDIuCitQaGlsaXBwZSBCYXRhaWxsZXIsIDIwMDYuCitOaWNvbGFzIEZyYW7nb2lzLCAyMDA2LgorVmV1aWxsZXogc2lnbmFsZXIgdG91dGUgZXJyZXVyIOAgPGRlYmlhblwtbDEwblwtZnJlbmNoQGxpc3RzLmRlYmlhbi5vcmc+LgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vZnIvZHBrZy1idWlsZHBhY2thZ2UuMSBiL2Rwa2ctMS4xNi4xLjEvbWFuL2ZyL2Rwa2ctYnVpbGRwYWNrYWdlLjEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOGE4YWM0NQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL2ZyL2Rwa2ctYnVpbGRwYWNrYWdlLjEKQEAgLTAsMCArMSwyNjIgQEAKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlRIIGRwa2dcLWJ1aWxkcGFja2FnZSAxIDIwMTFcLTA4XC0xNCAiUHJvamV0IERlYmlhbiIgIlV0aWxpdGFpcmVzIGRlIGRwa2ciCisuU0ggTk9NCitkcGtnXC1idWlsZHBhY2thZ2UgXC0gQ29uc3RydWlyZSBkZXB1aXMgbGVzIHNvdXJjZXMgZGVzIHBhcXVldHMgYmluYWlyZXMgb3UKK3NvdXJjZXMKKy4KKy5TSCBTWU5PUFNJUworXGZCZHBrZ1wtYnVpbGRwYWNrYWdlXGZQIFtcZklvcHRpb25cZlAuLi5dCisuCisuU0ggREVTQ1JJUFRJT04KK1xmQmRwa2dcLWJ1aWxkcGFja2FnZVxmUCBlc3QgdW4gcHJvZ3JhbW1lIHF1aSBwZXJtZXQgZCdhdXRvbWF0aXNlciBsYQorY29uc3RydWN0aW9uIGQndW4gcGFxdWV0IERlYmlhbi4gSWwgY29tcG9ydGUgbGVzIOl0YXBlcyBzdWl2YW50ZXNcIDoKKy5JUCBcZkIxLlxmUCAzCitQculwYXJhdGlvbiBkZSBsJ2Vudmlyb25uZW1lbnQgZGUgY29tcGlsYXRpb24gcGFyIHBvc2l0aW9ubmVtZW50IGRlIGRpdmVyc2VzCit2YXJpYWJsZXMgZCdlbnZpcm9ubmVtZW50ICh2b2lyIFxmQlZBUklBQkxFUyBEJ0VOVklST05ORU1FTlRcZlApIGV0IGFwcGVsIGRlCitcZkJkcGtnXC1zb3VyY2UgXC1cLWJlZm9yZVwtYnVpbGRcZlAgKHNhdWYgc2kgXGZCXC1UXGZQIG91IFxmQlwtXC10YXJnZXRcZlAgb250IOl06QordXRpbGlz6XMpLgorLklQIFxmQjIuXGZQIDMKK0NvbnRy9GxlIGRlcyBk6XBlbmRhbmNlcyBkZSBjb25zdHJ1Y3Rpb25zIGV0IGRlcyBjb25mbGl0cyBkZSBjb25zdHJ1Y3Rpb24KKyhub24gZWZmZWN0dekgc2kgXGZCXC1kXGZQIGVzdCB1dGlsaXPpKS4KKy5JUCBcZkIzLlxmUCAzCitTaSB1bmUgY2libGUgcGFydGljdWls6HJlIGEg6XTpIGluZGlxdellIGF2ZWMgbGVzIG9wdGlvbnMgXGZCXC1UXGZQIG91CitcZkJcLVwtdGFyZ2V0XGZQLCBhcHBlbCBkZSBjZXR0ZSBjaWJsZSBldCBhcnLqdC4gRGFucyBsZSBjYXMgY29udHJhaXJlLCBhcHBlbCBkZQorXGZCZmFrZXJvb3QgZGViaWFuL3J1bGVzIGNsZWFuXGZQIHBvdXIgbmV0dG95YWdlIGRlIGwnYXJib3Jlc2NlbmNlIHNvdXJjZSAoc2F1Zgorc2kgXGZCXC1uY1xmUCBhIOl06SB1dGlsaXPpKS4KKy5JUCBcZkI0LlxmUCAzCitBcHBlbCBkZSBcZkJkcGtnXC1zb3VyY2UgXC1iXGZQIHBvdXIgY3LpZXIgbGUgcGFxdWV0IHNvdXJjZSAoc2F1ZiBzaSB1bmUKK2NvbnRydWN0aW9uIGJpbmFpcmUgc2V1bGUgYSDpdOkgZGVtYW5k6WUgYXZlYyBcZkJcLWJcZlAsIFxmQlwtQlxmUCBvdSBcZkJcLUFcZlApLgorLklQIFxmQjUuXGZQIDMKK0l0IGNhbGxzIFxmQmRlYmlhbi9ydWxlc1xmUCBcZkJidWlsZFxmUCBmb2xsb3dlZCBieSBcZkJmYWtlcm9vdCBkZWJpYW4vcnVsZXNcZlAKK1xmSWJpbmFyeVwtdGFyZ2V0XGZQICh1bmxlc3MgYSBzb3VyY2VcLW9ubHkgYnVpbGQgaGFzIGJlZW4gcmVxdWVzdGVkIHdpdGgKK1xmQlwtU1xmUCkuIE5vdGUgdGhhdCBcZkliaW5hcnlcLXRhcmdldFxmUCBpcyBlaXRoZXIgXGZCYmluYXJ5XGZQIChkZWZhdWx0IGNhc2UsIG9yIGlmCitcZkJcLWJcZlAgaXMgc3BlY2lmaWVkKSAgb3IgXGZCYmluYXJ5XC1hcmNoXGZQIChpZiBcZkJcLUJcZlAgaXMgc3BlY2lmaWVkKSBvcgorXGZCYmluYXJ5XC1pbmRlcFxmUCAoaWYgXGZCXC1BXGZQIGlzIHNwZWNpZmllZCkuCisuSVAgXGZCNi5cZlAgMworQXBwZWwgZGUgXGZCZ3BnXGZQIHBvdXIgc2lnbmF0dXJlIGR1IGZpY2hpZXIgXGZCLmRzY1xmUCAoc2F1ZiBzaSBcZkJcLXVzXGZQIGVzdAordXRpbGlz6SkuCisuSVAgXGZCNy5cZlAgMworQXBwZWwgZGUgXGZCZHBrZ1wtZ2VuY2hhbmdlc1xmUCBwb3VyIGNy6WVyIHVuIGZpY2hpZXIgXGZCLmNoYW5nZXNcZlAuIERlIG5vbWJyZXVzZXMKK29wdGlvbnMgZGUgXGZCZHBrZ1wtYnVpbGRwYWNrYWdlXGZQIHNvbnQgcGFzc+llcyDgIFxmQmRwa2dcLWdlbmNoYW5nZXNcZlAuCisuSVAgXGZCOC5cZlAgMworQXBwZWwgZGUgXGZCZ3BnXGZQIHBvdXIgc2lnbmVyIGxlIGZpY2hpZXIgXGZCLmNoYW5nZXNcZlAgKHNhdWYgc2kgXGZCXC11Y1xmUCBlc3QKK3V0aWxpc+kpLgorLklQIFxmQjkuXGZQIDMKK1NpIFxmQlwtdGNcZlAgZXN0IHV0aWxpc+ksIGFwcGVsIGRlIFxmQmZha2Vyb290IGRlYmlhbi9ydWxlcyBjbGVhblxmUCDgCitub3V2ZWF1LiBFbmZpbiwgYXBwZWwgZGUgXGZCZHBrZ1wtc291cmNlIFwtXC1hZnRlclwtYnVpbGRcZlAuCisuCisuU0ggT1BUSU9OUworLlRQIAorXGZCXC1iXGZQCitJbmRpcXVlIHF1ZSBzZXVsIHVuIHBhcXVldCBiaW5haXJlIGVzdCDgIGNvbnN0cnVpcmVcIDsgYXVjdW4gZmljaGllciBzb3VyY2UKK24nZXN0IOAgY29uc3RydWlyZSBldC9vdSDgIGRpc3RyaWJ1ZXIuIFBhc3PpIOAgXGZCZHBrZ1wtZ2VuY2hhbmdlc1xmUC4KKy5UUCAKK1xmQlwtQlxmUAorSW5kaXF1ZSBxdWUgc2V1bCB1biBwYXF1ZXQgYmluYWlyZSBlc3Qg4CBjb25zdHJ1aXJlXCA7IGF1Y3VuIGZpY2hpZXIsCithcHBhcnRlbmFudCDgIHVuIHBhcXVldCBiaW5haXJlIG5lIGTpcGVuZGFudCBwYXMgZCd1bmUgYXJjaGl0ZWN0dXJlLCBuJ2VzdCDgCitkaXN0cmlidWVyLiBQYXNz6SDgIFxmQmRwa2dcLWdlbmNoYW5nZXNcZlAuCisuVFAgCitcZkJcLUFcZlAKK0luZGlxdWUgcXVlIHNldWwgdW4gcGFxdWV0IGJpbmFpcmUgZXN0IOAgY29uc3RydWlyZVwgOyBhdWN1biBmaWNoaWVyLAorYXBwYXJ0ZW5hbnQg4CB1biBwYXF1ZXQgYmluYWlyZSBuZSBk6XBlbmRhbnQgcGFzIGQndW5lIGFyY2hpdGVjdHVyZSwgbidlc3Qg4AorZGlzdHJpYnVlci4gUGFzc+kg4CBcZkJkcGtnXC1nZW5jaGFuZ2VzXGZQLgorLlRQIAorXGZCXC1TXGZQCitOZSBjb25zdHJ1aXQgcXUndW4gcGFxdWV0IHNvdXJjZSwgYXVjdW4gcGFxdWV0IGJpbmFpcmUgbmUgc2VyYQorY29uc3RydWl0LiBQYXNz6SDgIFxmQmRwa2dcLWdlbmNoYW5nZXNcZlAuCisuVFAgCitcZkJcLUZcZlAKK0NvbnN0cnVjdGlvbiBjb21wbOh0ZSBv+SBsZXMgcGFxdWV0cyBzb3VyY2VzIGV0IGJpbmFpcmVzIHNvbnQKK2NvbnN0cnVpdHMuIElkZW50aXF1ZSBhdSBjYXMgcGFyIGTpZmF1dCBv+SBhdWN1bmUgb3B0aW9uIGRlIGNvbnN0cnVjdGlvbgorbidlc3QgaW5kaXF16WUuCisuUAorXGZCXC1cLXRhcmdldD1cZlBcZkljaWJsZVxmUAorLmJyCitcZkJcLVwtdGFyZ2V0IFxmUFxmSWNpYmxlXGZQCisuYnIKK1xmQlwtVFxmUFxmSWNpYmxlXGZQCisuUlMKK0FwcGVsbGUgXGZCZGViaWFuL3J1bGVzXGZQIFxmSWNpYmxlXGZQIGFwcuhzIGF2b2lyIG1pcyBlbiBwbGFjZSBsJ2Vudmlyb25uZW1lbnQgZGUKK2NvbnN0cnVjdGlvbiwgcHVpcyBpbnRlcnJvbXB0IGxlIHByb2Nlc3N1cyBkZSBjb25zdHJ1Y3Rpb24uIFNpIFxmQlwtXC1hc1wtcm9vdFxmUAorZXN0IOlnYWxlbWVudCB1dGlsaXPpLCBsYSBjb21tYW5kZSBzZXJhIGV46WN1dOllIGF2ZWMgbGVzIHByaXZpbOhnZXMgZHUKK3N1cGVydXRpbGlzYXRldXIgKHZvaXIgXGZCXC1yXGZQKS4gTm90ZXIgcXVlIGxlcyBjaWJsZXMgZG9udCBsJ2V46WN1dGlvbiBwYXIKK3Jvb3QgZXN0IGltcG9z6WUgcGFyIGxhIENoYXJ0ZSBEZWJpYW4gbidvbnQgcGFzIGJlc29pbiBkZSBjZXR0ZSBvcHRpb24uCisuUkUKKy5UUCAKK1xmQlwtXC1hc1wtcm9vdFxmUAorTidlc3QgdXRpbGUgcXUnYXZlYyBcZkJcLVwtdGFyZ2V0XGZQLiBJbXBvc2UgZCdleOljdXRlciBsYSBjaWJsZSBhdmVjIGxlcworcHJpdmls6GdlcyBkdSBzdXBlcnV0aWxpc2F0ZXVyLgorLlAKK1xmQlwtc2lcZlAKKy5icgorXGZCXC1zYVxmUAorLmJyCitcZkJcLXNkXGZQCisuYnIKK1xmQlwtdlxmUFxmSXZlcnNpb25cZlAKKy5icgorXGZCXC1DXGZQXGZJZGVzY3JpcHRpb25cLWRlc1wtY2hhbmdlbWVudHNcZlAKKy5icgorXGZCXC1tXGZQXGZJYWRyZXNzZVwtZHVcLXJlc3BvbnNhYmxlXGZQCisuYnIKK1xmQlwtZVxmUFxmSWFkcmVzc2VcLWR1XC1yZXNwb25zYWJsZVxmUAorLlJTCitQYXNz6SB0ZWwgcXVlbCDgIFxmQmRwa2dcLWdlbmNoYW5nZXNcZlAuIFZvaXIgc2EgcGFnZSBkZSBtYW51ZWwuCisuUkUKKy5UUCAKK1xmQlwtYVxmUFxmSWFyY2hpdGVjdHVyZVxmUAorUHLpY2lzZSBsJ2FyY2hpdGVjdHVyZSBEZWJpYW4gcG91ciBsYXF1ZWxsZSBvbiBjb25zdHJ1aXQuIEwnYXJjaGl0ZWN0dXJlIGRlCitsYSBtYWNoaW5lIHN1ciBsYXF1ZWxsZSBvbiBjb25zdHJ1aXQgZXN0IGF1dG9tYXRpcXVlbWVudCBk6XRlcm1pbullXCA7IGMnZXN0CithdXNzaSBsJ2FyY2hpdGVjdHVyZSBwYXIgZOlmYXV0IGRlIGxhIG1hY2hpbmUgaPR0ZS4KKy5UUCAKK1xmQlwtdFxmUFxmSXR5cGVcLWRlXC1zeXN06G1lXC1nbnVcZlAKK1By6WNpc2UgbGUgdHlwZSBkZSBzeXN06G1lIEdOVSBwb3VyIGxlcXVlbCBjb25zdHJ1aXJlLiBJbCBwZXV0IOp0cmUgdXRpbGlz6Qor4CBsYSBwbGFjZSBkZSBcZkJcLWFcZlAgb3UgZW4gdGFudCBxdWUgY29tcGzpbWVudCBhZmluIGRlIHJlbXBsYWNlciBsZSB0eXBlIGRlCitzeXN06G1lIEdOVSBwYXIgZOlmYXV0IGRlIGwnYXJjaGl0ZWN0dXJlIERlYmlhbiBjaWJsZS4KKy5UUCAKK1xmQlwtalxmUFxmSWpvYnNcZlAKK05vbWJyZSBkZSBwcm9jZXNzdXMgc2ltdWx0YW7pcyBxdWkgcGV1dmVudCDqdHJlIGV46WN1dOlzLCDpcXVpdmFsZW50IOAKK2wnb3B0aW9uIFxmQm1ha2VcZlAoMSkgZHUgbeptZSBub20uIFMnYWpvdXRlcmEgdG91dCBzZXVsIOAgbGEgdmFyaWFibGUKK2QnZW52aXJvbm5lbWVudCBNQUtFRkxBR1MsIGFmaW4gcXVlIGxlcyBhcHBlbHMgc3VpdmFudHMgZGUgbWFrZSBlbgoraOlyaXRlbnQuIEFqb3V0ZSBhdXNzaSBcZkJwYXJhbGxlbD1cZlBcZklqb2JzXGZQIOAgbGEgdmFyaWFibGUgZCdlbnZpcm9ubmVtZW50CitERUJfQlVJTERfT1BUSU9OUyBjZSBxdWkgcGVybWV0IGF1eCBmaWNoaWVycyBkZWJpYW4vcnVsZXMgZCd1dGlsaXNlciBjZXR0ZQoraW5mb3JtYXRpb24gcG91ciBsZXVycyBwcm9wcmVzIGJlc29pbnMuIExhIHBy6XNlbmNlIGRlIFxmQnBhcmFsbGVsPVxmUFxmSWpvYnNcZlAKK2RhbnMgbGEgdmFyaWFibGUgZCdlbnZpcm9ubmVtZW50IERFQl9CVUlMRF9PUFRJT05TIHJlbXBsYWNlIGxhIHZhbGV1ciBkZQorbCdvcHRpb24gXGZCXC1qXGZQIHNpIGVsbGUgZXN0IHBy6WNpc+llLgorLlRQIAorXGZCXC1EXGZQCitW6XJpZmllciBsZXMgZOlwZW5kYW5jZXMgZGUgY29uc3RydWN0aW9ucyBldCBsZXMgY29uZmxpdHNcIDsgc2UgdGVybWluZSBlbgorY2FzIGRlIHByb2Js6G1lcy4gQ2VjaSBlc3QgbGUgY29tcG9ydGVtZW50IHBhciBk6WZhdXQuCisuVFAgCitcZkJcLWRcZlAKK05lIHBhcyB26XJpZmllciBsZXMgZOlwZW5kYW5jZXMgZGUgY29uc3RydWN0aW9ucyBldCBsZXMgY29uZmxpdHMuCisuVFAgCitcZkJcLW5jXGZQCitOZSBwYXMgbmV0dG95ZXIgbCdhcmJvcmVzY2VuY2UgZGVzIHNvdXJjZXMgKGltcGxpcXVlIFxmQlwtYlxmUCBzaSBhdWN1bmUgZGVzCitvcHRpb25zIFxmQlwtQlxmUCwgXGZCXC1BXGZQIG91IFxmQlwtU1xmUCBuJ2VzdCB1dGlsaXPpZSkuCisuVFAgCitcZkJcLXRjXGZQCitOZXR0b3lhZ2UgZGUgbCdhcmJvcmVzY2VuY2UgKGVuIHV0aWxpc2FudAorXGZJY29tbWFuZGVcLXBvdXJcLW9idGVuaXJcLXByaXZpbOhnZXNcLWRlXC1yb290XGZQIFxmQmRlYmlhbi9ydWxlcyBjbGVhblxmUCkgIGFwcuhzIGxhCitjb25zdHJ1Y3Rpb24gZHUgcGFxdWV0LgorLlRQIAorXGZCXC1yXGZQXGZJY29tbWFuZGVcLXBvdXJcLW9idGVuaXJcLXByaXZpbOhnZXNcLWRlXC1yb290XGZQCitRdWFuZCBcZkJkcGtnXC1idWlsZHBhY2thZ2VcZlAgZG9pdCBleOljdXRlciB1bmUgcGFydGllIGR1IHByb2Nlc3N1cyBkZQorY29uc3RydWN0aW9uIGVuIHRhbnQgcXVlIHJvb3QsIGlsIHBy6WZpeGUgbGEgY29tbWFuZGUgZXjpY3V06WUgcGFyCitcZkljb21tYW5kZVwtcG91clwtb2J0ZW5pclwtcHJpdmls6Gdlc1wtZGVcLXJvb3RcZlAsIHNpIHVuZSBhIOl06SBzcOljaWZp6S4gU2kgY2UKK24nZXN0IHBhcyBsZSBjYXMgYWxvcnMgXGZCZmFrZXJvb3RcZlAgZXN0IHV0aWxpc+kgcGFyCitk6WZhdXQuIFxmSWNvbW1hbmRlXC1wb3VyXC1vYnRlbmlyXC1wcml2aWzoZ2VzXC1kZVwtcm9vdFxmUCBkb2l0IGTpYnV0ZXIgcGFyIGxlIG5vbQorZCd1biBwcm9ncmFtbWUgYWNjZXNzaWJsZSBkZXB1aXMgXGZCUEFUSFxmUCBldCBhdm9pciBjb21tZSBhcmd1bWVudHMgbGUgbm9tIGRlCitsYSBjb21tYW5kZSBy6WVsbGUgYXZlYyBsZXMgYXJndW1lbnRzIHF1J2VsbGUgZG9pdAorcHJlbmRyZS4gXGZJY29tbWFuZGVcLXBvdXJcLW9idGVuaXJcLXByaXZpbOhnZXNcLWRlXC1yb290XGZQIHBldXQgcmVjZXZvaXIgZGVzCitwYXJhbeh0cmVzIChpbHMgZG9pdmVudCDqdHJlIHPpcGFy6XMgcGFyIGRlcyBlc3BhY2VzKSBtYWlzIGF1Y3VuCiurXCBt6XRhY2FyYWN06HJlXCC7IGRlIGwnaW50ZXJwcul0ZXVyIGRlIGNvbW1hbmRlcy4gQ2xhc3NpcXVlbWVudAorXGZJY29tbWFuZGVcLXBvdXJcLW9idGVuaXJcLXByaXZpbOhnZXNcLWRlXC1yb290XGZQIGRldnJhaXQg6nRyZSBcZkJmYWtlcm9vdFxmUCwKK1xmQnN1ZG9cZlAsIFxmQnN1cGVyXGZQIG91IFxmQnJlYWxseVxmUC4gXGZCc3VcZlAgbmUgdmEgcGFzLCBwdWlzcXVlIGNlIHByb2dyYW1tZSBwZXV0Cit1bmlxdWVtZW50IHV0aWxpc2VyIGwnaW50ZXJwcul0ZXVyIGRlIGNvbW1hbmRlcyBkZSBsJ3V0aWxpc2F0ZXVyIGF2ZWMKK2wnb3B0aW9uIFxmQlwtY1xmUCBhdSBsaWV1IGRlIHBhc3NlciBkaXJlY3RlbWVudCBsZXMgYXJndW1lbnRzIOAgbGEgY29tbWFuZGUgcXVpCitkb2l0IOp0cmUgZXjpY3V06WUuCisuVFAgCitcZkJcLVJcZlBcZklmaWNoaWVyXC1ydWxlc1xmUAorQ29uc3RydWlyZSB1biBwYXF1ZXQgRGViaWFuIGltcGxpcXVlIGfpbulyYWxlbWVudCBsJ2ludm9jYXRpb24gZGUKK1xmQmRlYmlhbi9ydWxlc1xmUCBjb21tZSB1bmUgY29tbWFuZGUgYXZlYyBkZSBub21icmV1eCBwYXJhbeh0cmVzCitzdGFuZGFyZHMuIEF2ZWMgY2V0dGUgb3B0aW9uLCBpbCBlc3QgcG9zc2libGUgZCd1dGlsaXNlciB1biBhdXRyZSBwcm9ncmFtbWUKK+AgdXRpbGlzZXIgcG91ciBsYSBjb25zdHJ1Y3Rpb24gZGUgcGFxdWV0IChhaW5zaSBxdWUgc2VzIHBhcmFt6HRyZXMgc+lwYXLpcworcGFyIGRlcyBlc3BhY2VzKS4gVW5lIGF1dHJlIHV0aWxpc2F0aW9uIHBvc3NpYmxlIGVzdCBkJ2V46WN1dGVyIGxlIGZpY2hpZXIKK3J1bGVzIHN0YW5kYXJkIGF2ZWMgdW4gYXV0cmUgcHJvZ3JhbW1lIGRlIGNvbnN0cnVjdGlvbiAocGFyIGV4ZW1wbGUgZW4KK3V0aWxpc2FudCBcZkIvdXNyL2xvY2FsL2Jpbi9tYWtlIFwtZiBkZWJpYW4vcnVsZXNcZlAgY29tbWUgXGZJZmljaGllclwtcnVsZXNcZlApLgorLlRQIAorXGZCXC1wXGZQXGZJY29tbWFuZGVcLWRlXC1zaWduYXR1cmVcZlAKK1F1YW5kIFxmQmRwa2dcLWJ1aWxkcGFja2FnZVxmUCBkb2l0IGV46WN1dGVyIEdQRyBvdSBQR1AgcG91ciBzaWduZXIgdW4gZmljaGllcgorc291cmNlIGRlIGNvbnRy9GxlIChcZkIuZHNjXGZQKSBvdSB1biBmaWNoaWVyIFxmQi5jaGFuZ2VzXGZQLCBpbCBleOljdXRlCitcZkljb21tYW5kZVwtZGVcLXNpZ25hdHVyZVxmUCAocmVjaGVyY2jpIHZpYSBcZkJQQVRIXGZQIHNpIG7pY2Vzc2FpcmUpIGF1IGxpZXUgZGUKK1xmQnBncFxmUC4gXGZJY29tbWFuZGVcLWRlXC1zaWduYXR1cmVcZlAgcmXnb2l0IHRvdXMgbGVzIHBhcmFt6HRyZXMgcXUnYXVyYWl0CityZed1XGZCcGdwXGZQLiBTaSBcZkljb21tYW5kZVwtZGVcLXNpZ25hdHVyZVxmUCB2ZXV0IHJlY2V2b2lyIHNlcyBwYXJhbeh0cmVzIOAgbGEKK21hbmnocmUgZGUgR1BHIHBsdXT0dCBxdSfgIGxhIG1hbmnocmUgZGUgUEdQLCBpbCBmYXV0IHV0aWxpc2VyIGwnb3B0aW9uCitcZkJcLXNncGdcZlAuIFxmSWNvbW1hbmRlXC1kZVwtc2lnbmF0dXJlXGZQIG5lIGNvbnRpZW5kcmEgcGFzIGQnZXNwYWNlIG5pIGF1Y3VuCiurXCBt6XRhY2FyYWN06HJlXCC7IGRlIGwnaW50ZXJwcul0ZXVyIGRlIGNvbW1hbmRlcy4KKy5UUCAKK1xmQlwta1xmUFxmSWtleVwtaWRcZlAKK1By6WNpc2UgdW5lIGNs6SBwb3VyIGxhIHNpZ25hdHVyZSBkZXMgcGFxdWV0cy4KKy5UUCAKK1xmQlwtdXNcZlAKK05lIHBhcyBzaWduZXIgbGUgcGFxdWV0IHNvdXJjZS4KKy5UUCAKK1xmQlwtdWNcZlAKK05lIHBhcyBzaWduZXIgbGUgZmljaGllciBcZkIuY2hhbmdlc1xmUC4KKy5QCitcZkJcLWlcZlBbXGZJcmVnZXhwXGZQXQorLmJyCitcZkJcLUlcZlBcZklbbW90aWZdXGZQCisuYnIKK1xmQlwtc1xmUFtcZkJuc0FrdXJLVVJcZlBdCisuYnIKK1xmQlwtelxmUCwgXGZCXC1aXGZQCisuYnIKKy5SUworQ2hh7m5lIHBhc3PpZSB0ZWxsZSBxdWVsbGUg4CBcZkJkcGtnXC1zb3VyY2VcZlAuIFZvaXIgbGEgcGFnZSBkZSBtYW51ZWwKK2NvcnJlc3BvbmRhbnRlLgorLlJFCisuVFAgCitcZkJcLVwtc291cmNlXC1vcHRpb249XGZQXGZJb3B0XGZQCitQYXNzZSBsJ29wdGlvbiBcZklvcHRcZlAg4CBcZkJkcGtnXC1zb3VyY2VcZlAuCisuVFAgCitcZkJcLVwtY2hhbmdlc1wtb3B0aW9uPVxmUFxmSW9wdFxmUAorUGFzc2UgbCdvcHRpb24gXGZJb3B0XGZQIOAgXGZCZHBrZ1wtZ2VuY2hhbmdlc1xmUC4KKy5QCitcZkJcLVwtYWRtaW5kaXJcZlA9XGZJZGlyXGZQCisuYnIKK1xmQlwtXC1hZG1pbmRpciBcZlBcZkly6XBcZlAKKy5SUworQ2hhbmdlIGwnZW5kcm9pdCBv+SBzZSB0cm91dmUgbGEgYmFzZSBkZSBkb25u6WVzIGRlIFxmQmRwa2dcZlAuIFBhciBk6WZhdXQsCitjJ2VzdCBcZkkvdmFyL2xpYi9kcGtnXGZQLgorLlJFCisuVFAgCitcZkJcLWhcZlAsIFxmQlwtXC1oZWxwXGZQCitBZmZpY2hlIHVuIG1lc3NhZ2UgZCdhaWRlIHB1aXMgcXVpdHRlLgorLlRQIAorXGZCXC1cLXZlcnNpb25cZlAKK0FmZmljaGUgbGUgbnVt6XJvIGRlIHZlcnNpb24gcHVpcyBxdWl0dGUuCisuCisuU0ggRU5WSVJPTk5FTUVOVAorRXZlbiBpZiBcZkJkcGtnXC1idWlsZHBhY2thZ2VcZlAgZXhwb3J0cyBzb21lIHZhcmlhYmxlcywgXGZCZGViaWFuL3J1bGVzXGZQIHNob3VsZAorbm90IHJlbHkgb24gdGhlaXIgcHJlc2VuY2UgYW5kIHNob3VsZCBpbnN0ZWFkIHVzZSB0aGUgcmVzcGVjdGl2ZSBpbnRlcmZhY2UKK3RvIHJldHJpZXZlIHRoZSBuZWVkZWQgdmFsdWVzLgorLlNTICJWYXJpYWJsZXMgcG9zaXRpb25u6WVzIHBhciBcZkJkcGtnXC1hcmNoaXRlY3R1cmVcZlAiCitcZkJkcGtnXC1hcmNoaXRlY3R1cmVcZlAgZXN0IGxhbmPpIGF2ZWMgbGVzIHBhcmFt6HRyZXMgZGUgXGZCXC1hXGZQIGFuZCBcZkJcLXRcZlAuIFRvdXRlCit2YXJpYWJsZSByZXRvdXJu6WUgcGFyIGwnb3B0aW9uIFxmQlwtc1xmUCBlc3QgaW506Wdy6WUgZGFucyBsJ2Vudmlyb25uZW1lbnQgZGUKK2NvbnN0cnVjdGlvbi4KKy5TUyAiQ29tcGlsZXIgZmxhZ3MgYXJlIG5vIGxvbmdlciBleHBvcnRlZCIKK0JldHdlZW4gdmVyc2lvbnMgMS4xNC4xNyBhbmQgMS4xNi4xLCBcZkJkcGtnXC1idWlsZHBhY2thZ2VcZlAgZXhwb3J0ZWQgY29tcGlsZXIKK2ZsYWdzIChcZkJDRkxBR1NcZlAsIFxmQkNYWEZMQUdTXGZQLCBcZkJGRkxBR1NcZlAsIFxmQkNQUEZMQUdTXGZQIGFuZCBcZkJMREZMQUdTXGZQKSB3aXRoCit2YWx1ZXMgYXMgcmV0dXJuZWQgYnkgXGZCZHBrZ1wtYnVpbGRmbGFnc1xmUC4gVGhpcyBpcyBubyBsb25nZXIgdGhlIGNhc2UuCisuCisuU0ggQk9HVUVTCitPbiBkZXZyYWl0IHBvdXZvaXIgbWV0dHJlIGRlcyBlc3BhY2VzIGV0IGRlcyBt6XRhY2FyYWN06HJlcyBkdSBzaGVsbCBkYW5zCitsZXMgYXJndW1lbnRzIGluaXRpYXV4IGRlIFxmSWNvbW1hbmRlXC1wb3VyXC1vYnRlbmlyXC1wcml2aWzoZ2VzXC1kZVwtcm9vdFxmUCBldAorXGZJY29tbWFuZGVcLWRlXC1zaWduYXR1cmVcZlAuCisuCisuU0ggIlZPSVIgQVVTU0kiCitcZkJkcGtnXC1zb3VyY2VcZlAoMSksIFxmQmRwa2dcLWFyY2hpdGVjdHVyZVxmUCgxKSwgXGZCZHBrZ1wtYnVpbGRmbGFnc1xmUCgxKSwKK1xmQmRwa2dcLWdlbmNoYW5nZXNcZlAoMSksIFxmQmZha2Vyb290XGZQKDEpLCBcZkJncGdcZlAoMSkuCisuCisuU0ggQVVURVVSUworQ29weXJpZ2h0IFwoY28gMTk5NVwtMTk5NiBJYW4gSmFja3NvbgorLmJyCitDb3B5cmlnaHQgXChjbyAyMDAwIFdpY2hlcnQgQWtrZXJtYW4KKy5icgorQ29weXJpZ2h0IFwoY28gMjAwNyBGcmFuayBMaWNodGVuaGVsZAorLmJyCitDb3B5cmlnaHQgXChjbyAyMDA4XC0yMDEwIFJhcGhhXFs6ZV1sIEhlcnR6b2cKKy5zcAorQ2UgcHJvZ3JhbW1lIGVzdCB1biBsb2dpY2llbCBsaWJyZVwgOyB2b3lleiBsYSCrXCBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZVwguwordmVyc2lvbiAyIG91IHN1cOlyaWV1cmUgcG91ciBsZSBjb3B5cmlnaHQuIElsIG4neSBhIFBBUyBkZSBnYXJhbnRpZS4KKy5TSCBUUkFEVUNUSU9OCitBcmllbCBWQVJESSA8YXJpZWwudmFyZGlAZnJlZXNiZWUuZnI+LCAyMDAyLgorUGhpbGlwcGUgQmF0YWlsbGVyLCAyMDA2LgorTmljb2xhcyBGcmFu529pcywgMjAwNi4KK1ZldWlsbGV6IHNpZ25hbGVyIHRvdXRlIGVycmV1ciDgIDxkZWJpYW5cLWwxMG5cLWZyZW5jaEBsaXN0cy5kZWJpYW4ub3JnPi4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL2ZyL2Rwa2ctY2hlY2tidWlsZGRlcHMuMSBiL2Rwa2ctMS4xNi4xLjEvbWFuL2ZyL2Rwa2ctY2hlY2tidWlsZGRlcHMuMQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iYjBiOWNkCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vZnIvZHBrZy1jaGVja2J1aWxkZGVwcy4xCkBAIC0wLDAgKzEsNTQgQEAKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlRIIGRwa2dcLWNoZWNrYnVpbGRkZXBzIDEgMDdcLTA0XC0yMDExICJQcm9qZXQgRGViaWFuIiAiVXRpbGl0YWlyZXMgZGUgZHBrZyIKKy5TSCBOT00KK2Rwa2dcLWNoZWNrYnVpbGRkZXBzIFwtIHbpcmlmaWVyIGxlcyBk6XBlbmRhbmNlcyBldCBsZXMgY29uZmxpdHMgZGUKK2NvbnN0cnVjdGlvbgorLgorLlNIIFNZTk9QU0lTCitcZkJkcGtnXC1jaGVja2J1aWxkZGVwc1xmUCBbXGZJb3B0aW9uXGZQLi4uXSBbXGZJY29udHJvbFwtZmlsZVxmUF0KKy4KKy5TSCBERVNDUklQVElPTgorQ2UgcHJvZ3JhbW1lIHbpcmlmaWUgc2kgbGVzIGTpcGVuZGFuY2VzIGV0IGxlcyBjb25mbGl0cyBkZSBjb25zdHJ1Y3Rpb24KK2xpc3TpcyBkYW5zIGxlIGZpY2hpZXIgY29udHJvbCBleGlzdGVudCBkYW5zIGxlcyBwYXF1ZXRzIGluc3RhbGzpcyBzdXIgbGUKK3N5c3TobWUuIFMnaWwgZW4gZXhpc3RlLCBpbCBsZXMgYWZmaWNoZSBldCBzZSB0ZXJtaW5lIGF2ZWMgdW4gY29kZSBkZSByZXRvdXIKK2RpZmbpcmVudCBkZSAwLgorLlAKK0J5IGRlZmF1bHQsIFxmQmRlYmlhbi9jb250cm9sXGZQIGlzIHJlYWQsIGJ1dCBhbiBhbHRlcm5hdGUgY29udHJvbCBmaWxlbmFtZSBtYXkKK2JlIHNwZWNpZmllZCBvbiB0aGUgY29tbWFuZCBsaW5lLgorLgorLlNIIE9QVElPTlMKKy5UUCAKK1xmQlwtXC1hZG1pbmRpclxmUD1cZklkaXJcZlAKK0NoYW5nZSBsJ2VuZHJvaXQgb/kgc2UgdHJvdXZlIGxhIGJhc2UgZGUgZG9ubullcyBkZSBcZkJkcGtnXGZQLiBQYXIgZOlmYXV0LAorYydlc3QgXGZJL3Zhci9saWIvZHBrZ1xmUC4KKy5UUCAKK1xmQlwtQlxmUAorSWdub3JlIGxlcyBsaWduZXMgXGZJQnVpbGRcLURlcGVuZHNcLUluZGVwXGZQLiDAIHV0aWxpc2VyIGxvcnNxdWUgYXVjdW4gcGFxdWV0CitpbmTpcGVuZGFudCBkJ3VuZSBhcmNoaXRlY3R1cmUgbmUgdmEg6nRyZSBjb25zdHJ1aXQuCisuVFAgCitcZkJcLWQgXGZQXGZJY2hhaW5lXC1kZXNcLWTpcGVuZGFuY2VzXC1wb3VyXC1sYVwtY29uc3RydWN0aW9uXGZQCisuVFAgCitcZkJcLWMgXGZQXGZJY2hh7m5lXC1kZXNcLWNvbmZsaXRzXC1kZVwtY29uc3RydWN0aW9uXGZQCitVdGlsaXNlIGxlcyBk6XBlbmRhbmNlcyBldCBjb25mbGl0cyBkZSBjb25zdHJ1Y3Rpb24gZG9ubulzIGF1IGxpZXUgZGUgY2V1eAoraW5kaXF16XMgZGFucyBsZSBmaWNoaWVyIFxmSWRlYmlhbi9jb250cm9sXGZQLgorLlRQIAorXGZCXC1oXGZQLCBcZkJcLVwtaGVscFxmUAorQWZmaWNoZSB1biBtZXNzYWdlIGQnYWlkZSBwdWlzIHF1aXR0ZS4KKy5UUCAKK1xmQlwtXC12ZXJzaW9uXGZQCitBZmZpY2hlIGxlIG51belybyBkZSB2ZXJzaW9uIHB1aXMgcXVpdHRlLgorLgorLlNIIEFVVEVVUgorQ29weXJpZ2h0IFwoY28gMjAwMSBKb2V5IEhlc3MKKy5zcAorQ2UgcHJvZ3JhbW1lIGVzdCB1biBsb2dpY2llbCBsaWJyZVwgOyB2b3lleiBsYSCrXCBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZVwguwordmVyc2lvbiAyIG91IHN1cOlyaWV1cmUgcG91ciBsZSBjb3B5cmlnaHQuIElsIG4neSBhIFBBUyBkZSBnYXJhbnRpZS4KKy5TSCBUUkFEVUNUSU9OCitBcmllbCBWQVJESSA8YXJpZWwudmFyZGlAZnJlZXNiZWUuZnI+LCAyMDAyLgorUGhpbGlwcGUgQmF0YWlsbGVyLCAyMDA2LgorTmljb2xhcyBGcmFu529pcywgMjAwNi4KK1ZldWlsbGV6IHNpZ25hbGVyIHRvdXRlIGVycmV1ciDgIDxkZWJpYW5cLWwxMG5cLWZyZW5jaEBsaXN0cy5kZWJpYW4ub3JnPi4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL2ZyL2Rwa2ctZGViLjEgYi9kcGtnLTEuMTYuMS4xL21hbi9mci9kcGtnLWRlYi4xCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmRkNGM2NjAKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9mci9kcGtnLWRlYi4xCkBAIC0wLDAgKzEsMjEzIEBACisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkcGtnXC1kZWIgMSAyMDExXC0wOFwtMTQgIlByb2pldCBEZWJpYW4iICJzdWl0ZSBkcGtnIgorLlNIIE5PTQorZHBrZ1wtZGViIFwtIG91dGlsIHBvdXIgbGEgbWFuaXB1bGF0aW9uIGRlcyBhcmNoaXZlcyAoLmRlYikgZGVzIHBhcXVldHMgRGViaWFuCisuCisuU0ggU1lOT1BTSVMKK1xmQmRwa2dcLWRlYlxmUCBbXGZJb3B0aW9uXGZQLi4uXSBcZkljb21tYW5kXGZQCisuCisuU0ggREVTQ1JJUFRJT04KK1xmQmRwa2dcLWRlYlxmUCBjcullIHVuIHBhcXVldCwgZOlwYXF1ZXR0ZSB1bmUgYXJjaGl2ZSBvdSBkb25uZSBkZXMKK3JlbnNlaWduZW1lbnRzIHN1ciBsZXMgYXJjaGl2ZXMgRGViaWFuCisuUFAKK1xmQmRwa2dcZlAgc2VydCDgIGluc3RhbGxlciBvdSDgIHN1cHByaW1lciBkZXMgcGFxdWV0cyBzdXIgbGUgc3lzdOhtZS4KKy5QUAorSWwgZXN0IHBvc3NpYmxlIGQnZXjpY3V0ZXIgXGZCZHBrZ1wtZGViXGZQIGVuIGFwcGVsYW50IFxmQmRwa2dcZlAgYXZlYyBsZXMgb3B0aW9ucworZGUgXGZCZHBrZ1wtZGViXGZQLiBcZkJkcGtnXGZQIGNvbXByZW5kIHF1ZSBcZkJkcGtnXC1kZWJcZlAgZXN0IGFwcGVs6SBldCBsZSBsYW5jZS4KKy4KKy5TSCBDT01NQU5ERVMKKy5UUCAKK1xmQlwtYlxmUCwgXGZCXC1cLWJ1aWxkXGZQIFxmSXLpcGVydG9pcmVcZlAgW1xmSWFyY2hpdmVcZlB8XGZJculwZXJ0b2lyZVxmUF0KK0Ny6WUgdW5lIGFyY2hpdmUgRGViaWFuIGF2ZWMgbCdhcmJvcmVzY2VuY2UgY29udGVudWUgZGFucworXGZJculwZXJ0b2lyZVxmUC4gXGZJculwZXJ0b2lyZVxmUCBkb2l0IHBvc3PpZGVyIHVuIHNvdXNcLXLpcGVydG9pcmUgXGZCREVCSUFOXGZQIHF1aQorY29udGllbnQgbGVzIGZpY2hpZXJzIGRlIGNvbnRy9GxlIHRlbCBxdWUgbGUgZmljaGllciCrXCBjb250cm9sXCC7CitsdWlcLW3qbWUuIENlIHLpcGVydG9pcmUgXGZJbidhcHBhcmHudCBwYXNcZlAgZGFucyBsJ2FyY2hpdmUgZGUgbCdhcmJvcmVzY2VuY2UKK2R1IHBhcXVldCBiaW5haXJlXCA7IG1haXMgbGVzIGZpY2hpZXJzIHF1J2lsIGNvbnRpZW50IHNvbnQgbWlzIGRhbnMgbGEgem9uZQorZGUgY29udHL0bGUgZHUgcGFxdWV0IGJpbmFpcmUuCisKK8AgbW9pbnMgZGUgcHLpY2lzZXIgXGZCXC1cLW5vY2hlY2tcZlAsIFxmQmRwa2dcLWRlYlxmUCBsaXQgXGZCREVCSUFOL2NvbnRyb2xcZlAgZXQKK2wnYW5hbHlzZS4gSWwgY2hlcmNoZSBsZXMgZXJyZXVycyBkZSBzeW50YXhlIGV0IGQnYXV0cmVzIHByb2Js6G1lcworZXhpc3RhbnRzXCA7IHB1aXMgaWwgYWZmaWNoZSBsZSBub20gZHUgcGFxdWV0IGJpbmFpcmUgcXUnaWwKK2NvbnN0cnVpdC4gXGZCZHBrZ1wtZGViXGZQIHbpcmlmaWUgYXVzc2kgbGVzIHBlcm1pc3Npb25zIGRlcyBzY3JpcHRzIGR1CityZXNwb25zYWJsZSBldCBkZXMgYXV0cmVzIGZpY2hpZXJzIHF1J2lsIHRyb3V2ZSBkYW5zIGxlIHLpcGVydG9pcmUgZGUKK2NvbnRy9GxlIFxmQkRFQklBTlxmUC4KKworUXVhbmQgYXVjdW5lIFxmSWFyY2hpdmVcZlAgbidlc3QgZG9ubullLCBcZkJkcGtnXC1kZWJcZlAgYXBwZWxsZSBsZSBwYXF1ZXQKK1xmSXLpcGVydG9pcmVcZlBcZkIuZGViXGZQLgorCitTaSBsJ2FyY2hpdmUgcXVpIGRvaXQg6nRyZSBjcunpZSBleGlzdGUgZOlq4CwgZWxsZSBlc3QgcmVtcGxhY+llLgorCitRdWFuZCBsZSBzZWNvbmQgYXJndW1lbnQgZXN0IHVuIHLpcGVydG9pcmUsIFxmQmRwa2dcLWRlYlxmUCBhcHBlbGxlIGxlIHBhcXVldAorXGZJcGFxdWV0XGZQXGZCX1xmUFxmSXZlcnNpb25cZlBcZkJfXGZQXGZJYXJjaFxmUFxmQi5kZWJcZlAsXGZCIG91IGJpZW4KK1xmUFxmSXBhcXVldFxmUFxmQl9cZlBcZkl2ZXJzaW9uXGZQXGZCLmRlYlxmUCBzaSBhdWN1biBjaGFtcCBcZkJBcmNoaXRlY3R1cmVcZlAgbidlc3QgcHLpc2VudAorZGFucyBsZSBmaWNoaWVyIGRlIGNvbnRy9GxlIGR1IHBhcXVldC4gUXVhbmQgdW4gculwZXJ0b2lyZSBjaWJsZSBlc3QgcHLpY2lz6Qor4CBsYSBwbGFjZSBkJ3VuIGZpY2hpZXIsIGwnb3B0aW9uIFxmQlwtXC1ub2NoZWNrXGZQIG5lIGRvaXQgcGFzIOp0cmUgdXRpbGlz6WUKKyhwdWlzcXVlIFxmQmRwa2dcLWRlYlxmUCBhIGJlc29pbiBkZSBsaXJlIGV0IGQnYW5hbHlzZXIgbGUgZmljaGllciBkZSBjb250cvRsZQorZHUgcGFxdWV0IHBvdXIgY29ubmHudHJlIGxlIG5vbSBkZSBmaWNoaWVyIOAgdXRpbGlzZXIpLgorLlRQIAorXGZCXC1JXGZQLCBcZkJcLVwtaW5mb1xmUCBcZklhcmNoaXZlXGZQIFtcZklub21cLWZpY2hpZXJcLWNvbnRyb2xcZlAuLi5dCitEb25uZSBkZXMgcmVuc2VpZ25lbWVudHMgc3VyIHVuZSBhcmNoaXZlIGRlIHBhcXVldCBiaW5haXJlLgorCitRdWFuZCBhdWN1biBhcmd1bWVudCBcZklmaWNoaWVyXC1jb250cm9sXGZQIG4nZXN0IHBy6WNpc+ksIHVuIHLpc3Vt6SBkdSBjb250ZW51CitkdSBwYXF1ZXQgYWluc2kgcXVlIHNvbiBmaWNoaWVyIKtcIGNvbnRyb2xcILsgc29udCBhZmZpY2jpcy4KKworUXVhbmQgdW4gYXJndW1lbnQgXGZJZmljaGllclwtY29udHJvbFxmUCBlc3QgcHLpY2lz6SwgXGZCZHBrZ1wtZGViXGZQIGFmZmljaGUgbGVzCivpbOltZW50cyBkYW5zIGwnb3JkcmUgZCdhcHBhcml0aW9uXCA7IHF1YW5kIGwndW4gZGVzIOls6W1lbnRzIG4nZXN0IHBhcworcHLpc2VudCwgaWwgYWZmaWNoZSB1biBtZXNzYWdlIGQnZXJyZXVyIHN1ciCrXCBzdGRlcnJcILsgZXQgcXVpdHRlIGF2ZWMgdW4KK2NvZGUg6WdhbCDgIDIuCisuVFAgCitcZkJcLVdcZlAsIFxmQlwtXC1zaG93XGZQIFxmSWFyY2hpdmVcZlAKK0NldHRlIG9wdGlvbiBkb25uZSBkZXMgaW5mb3JtYXRpb25zIHN1ciBsJ2FyY2hpdmUgZCd1biBwYXF1ZXQgYmluYWlyZSBzZWxvbgorbGUgZm9ybWF0IHNw6WNpZmnpIHBhciBsJ2FyZ3VtZW50IFxmQlwtXC1zaG93Zm9ybWF0XGZQLiBMZSBmb3JtYXQgcGFyIGTpZmF1dAorYWZmaWNoZSBsZSBub20gZXQgbGEgdmVyc2lvbiBkdSBwYXF1ZXQgc3VyIHVuZSBzZXVsZSBsaWduZSwgc+lwYXLpcyBwYXIgdW5lCit0YWJ1bGF0aW9uLgorLlRQIAorXGZCXC1mXGZQLCBcZkJcLVwtZmllbGRcZlAgXGZJYXJjaGl2ZVxmUCBbXGZJbm9tXC1kdVwtY2hhbXBcLWRlXC1jb250cm9sXGZQLi4uXQorRXh0cmFpdCBsZXMgcmVuc2VpZ25lbWVudHMgZHUgZmljaGllciCrXCBjb250cm9sXCC7IGRlIGwnYXJjaGl2ZSBkdSBwYXF1ZXQKK2JpbmFpcmUuCisKK1F1YW5kIGF1Y3VuIGFyZ3VtZW50IFxmQmNvbnRyb2xcLWZpY2hpZXJcLWNoYW1wXGZQIG4nZXN0IHBy6WNpc+ksIGxlIGZpY2hpZXIKK6tcIGNvbnRyb2xcILsgZXN0IGFmZmljaOkgZW4gZW50aWVyLgorCitRdWFuZCBpbCB5IGVuIGEgdW4sIFxmQmRwa2dcLWRlYlxmUCBhZmZpY2hlIHNlcyDpbOltZW50cyBlbiBzdWl2YW50IGxldXIgb3JkcmUKK2QnYXBwYXJpdGlvbiBkYW5zIGxlIGZpY2hpZXIgq1wgY29udHJvbFwguy4gUXVhbmQgaWwgeSBhIHBsdXMgZCd1biBhcmd1bWVudAorXGZCY29udHJvbFwtZmljaGllclwtZmllbGQsXGZQIFxmQmRwa2dcLWRlYlxmUCBmYWl0IHBy6WPpZGVyIGNoYWN1biBwYXIgbGUgbm9tIGRlIHNvbgorY2hhbXAgKHB1aXMgcGFyIHVuIKtcIGRldXhcLXBvaW50c1wguyBldCB1bmUgZXNwYWNlKS4KKworTCdhYnNlbmNlIGRlcyBjaGFtcHMgZGVtYW5k6XMgbmUgcHJvdm9xdWUgcGFzIGRlIG1lc3NhZ2UgZCdlcnJldXIuCisuVFAgCitcZkJcLWNcZlAsIFxmQlwtXC1jb250ZW50c1xmUCBcZklhcmNoaXZlXGZQCitMaXN0ZSBzZXVsZW1lbnQgbCdhcmJvcmVzY2VuY2UgZGVzIGZpY2hpZXJzIGQndW5lIGFyY2hpdmUgZGUgcGFxdWV0LiBDJ2VzdAorZW4gZmFpdCBsZSBy6XN1bHRhdCBwcm9kdWl0IHBhciBsYSBjb21tYW5kZSBcZkJ0YXJcZlAgZXQgdW5lIG9wdGlvbgorZCfpbnVt6XJhdGlvbiB2ZXJiZXVzZS4KKy5UUCAKK1xmQlwteFxmUCwgXGZCXC1cLWV4dHJhY3RcZlAgXGZJYXJjaGl2ZSBy6XBlcnRvaXJlXGZQCitFeHRyYWl0IGwnYXJib3Jlc2NlbmNlIGRlcyBmaWNoaWVycyBkJ3VuIHBhcXVldCBhcmNoaXZlIGRhbnMgbGUgculwZXJ0b2lyZQorc3DpY2lmaekuCisKK0lsIGZhdXQgcmVtYXJxdWVyIHF1ZSBsJ2V4dHJhY3Rpb24gZCd1biBwYXF1ZXQgZGFucyBsZSBy6XBlcnRvaXJlIHJvb3QgXGZJbmUKK3Byb2R1aXQgcGFzXGZQIHVuZSBpbnN0YWxsYXRpb24gY29ycmVjdGVcICEgVXRpbGlzZXogXGZCZHBrZ1xmUCBwb3VyCitsJ2luc3RhbGxhdGlvbiBkZXMgcGFxdWV0cy4KKworXGZJculwZXJ0b2lyZVxmUCBlc3QgY3Lp6SBzaSBu6WNlc3NhaXJlIChtYWlzIHBhcyBzZXMgculwZXJ0b2lyZXMgcGFyZW50cykgZXQKK3NlcyBwZXJtaXNzaW9ucyBzb250IG1vZGlmaellcyBwb3VyIGNvcnJlc3BvbmRyZSBhdSBjbm90ZW51IGR1IHBhcXVldC4KKy5UUCAKK1xmQlwtWFxmUCwgXGZCXC1cLXZleHRyYWN0XGZQIFxmSWFyY2hpdmUgculwZXJ0b2lyZVxmUAorSXMgbGlrZSBcZkJcLVwtZXh0cmFjdFxmUCAoXGZCXC14XGZQKSAgd2l0aCBcZkJcLVwtdmVyYm9zZVxmUCAoXGZCXC12XGZQKSAgd2hpY2ggcHJpbnRzIGEKK2xpc3Rpbmcgb2YgdGhlIGZpbGVzIGV4dHJhY3RlZCBhcyBpdCBnb2VzLgorLlRQIAorXGZCXC1SXGZQLCBcZkJcLVwtcmF3XC1leHRyYWN0XGZQIFxmSWFyY2hpdmUgZGlyZWN0b3J5XGZQCitFeHRyYWN0cyB0aGUgZmlsZXN5c3RlbSB0cmVlIGZyb20gYSBwYWNrYWdlIGFyY2hpdmUgaW50byBhIHNwZWNpZmllZAorZGlyZWN0b3J5LCBhbmQgdGhlIGNvbnRyb2wgaW5mb3JtYXRpb24gZmlsZXMgaW50byBhIERFQklBTiBzdWJkaXJlY3Rvcnkgb2YKK3RoZSBzcGVjaWZpZWQgZGlyZWN0b3J5LgorCitMZSBy6XBlcnRvaXJlIGNpYmxlIGVzdCBjcunpIHNpIG7pY2Vzc2FpcmUgKG1haXMgcGFzIHNlcyBy6XBlcnRvaXJlcworcGFyZW50cykuCisuVFAgCitcZkJcLVwtZnN5c1wtdGFyZmlsZVxmUCBcZklhcmNoaXZlXGZQCitFeHRyYWN0cyB0aGUgZmlsZXN5c3RlbSB0cmVlIGRhdGEgZnJvbSBhIGJpbmFyeSBwYWNrYWdlIGFuZCBzZW5kcyBpdCB0bworc3RhbmRhcmQgb3V0cHV0IGluIFxmQnRhclxmUCBmb3JtYXQuIFRvZ2V0aGVyIHdpdGggXGZCdGFyXGZQKDEpICB0aGlzIGNhbiBiZSB1c2VkCit0byBleHRyYWN0IGEgcGFydGljdWxhciBmaWxlIGZyb20gYSBwYWNrYWdlIGFyY2hpdmUuICBUaGUgaW5wdXQgYXJjaGl2ZSB3aWxsCithbHdheXMgYmUgcHJvY2Vzc2VkIHNlcXVlbnRpYWxseS4KKy5UUCAKK1xmQlwtZVxmUCwgXGZCXC1cLWNvbnRyb2xcZlAgXGZJYXJjaGl2ZVxmUCBbXGZJculwZXJ0b2lyZVxmUF0KK0V4dHJhaXQgbGVzIGZpY2hpZXJzIGRlIGNvbnRy9GxlIGQndW5lIGFyY2hpdmUgZGUgcGFxdWV0IGRhbnMgbGUgculwZXJ0b2lyZQorc3DpY2lmaekuCisKK1F1YW5kIGF1Y3VuIHLpcGVydG9pcmUgbidlc3QgcHLpY2lz6Swgb24gdXRpbGlzZSB1biBzb3VzXC1y6XBlcnRvaXJlCitcZkJERUJJQU5cZlAgZHUgculwZXJ0b2lyZSBhY3R1ZWwuCisKK0xlIHLpcGVydG9pcmUgY2libGUgZXN0IGNy6ekgc2kgbuljZXNzYWlyZSAobWFpcyBwYXMgc2VzIHLpcGVydG9pcmVzCitwYXJlbnRzKS4KKy5UUCAKK1xmQlwtaFxmUCwgXGZCXC1cLWhlbHBcZlAKK0FmZmljaGUgdW4gbWVzc2FnZSBkJ2FpZGUgcHVpcyBxdWl0dGUuCisuVFAgCitcZkJcLVwtdmVyc2lvblxmUAorQWZmaWNoZSBsZSBudW3pcm8gZGUgdmVyc2lvbiBwdWlzIHF1aXR0ZS4KKy4KKy5TSCBPUFRJT05TCisuVFAgCitcZkJcLVwtc2hvd2Zvcm1hdD1cZlBcZklmb3JtYXRcZlAKK0NldHRlIG9wdGlvbiBzZXJ0IOAgc3DpY2lmaWVyIGxlIGZvcm1hdCBkZSBzb3J0aWUgZGUgbCdvcHRpb24gXGZCXC1cLXNob3dcZlAuIENlCitmb3JtYXQgc2VyYSB1dGlsaXPpIHBvdXIgY2hhcXVlIHBhcXVldCBsaXN06S4KKworQ2V0IGFyZ3VtZW50IGVzdCB1bmUgY2hh7m5lIHF1aSBwZXV0IHLpZulyZW5jZXIgdG91dCBjaGFtcCBhdmVjIGxhIGZvcm1lCiske1xmSWZpZWxkXC1uYW1lXGZQfVwgOyB1bmUgbGlzdGUgZGVzIGNoYW1wcyB2YWxhYmxlcyBwZXV0IOp0cmUgZmFjaWxlbWVudAorcHJvZHVpdGUgYXZlYyBsJ29wdGlvbiBcZkJcLUlcZlAgc3VyIGxlIG3qbWUgcGFxdWV0LiBVbmUgZXhwbGljYXRpb24gY29tcGzodGUKK2RlcyBvcHRpb25zIGRlIGZvcm1hdGFnZSAoYXZlYyBsZXMgc+lxdWVuY2VzIGQn6WNoYXBwZW1lbnQgZXQgbGVzIGVzcGFjZXMKK2VudHJlIGxlcyBjaGFtcHMpIHNlIHRyb3V2ZSBkYW5zIGxhIHBhZ2UgXGZCZHBrZ1wtcXVlcnlcZlAoMSksIG9wdGlvbgorXGZCXC1cLXNob3dmb3JtYXRcZlAuCisKK1BhciBk6WZhdXQsIGxhIHZhbGV1ciBkZSBjZSBjaGFtcCBlc3QgJHtQYWNrYWdlfVxldCR7VmVyc2lvbn1cZW4uCisuVFAgCitcZkJcLXpcZlBcZkljb21wcmVzc1wtbGV2ZWxcZlAKK1NwZWNpZnkgd2hpY2ggY29tcHJlc3Npb24gbGV2ZWwgdG8gdXNlIG9uIHRoZSBjb21wcmVzc29yIGJhY2tlbmQsIHdoZW4KK2J1aWxkaW5nIGEgcGFja2FnZSAoZGVmYXVsdCBpcyA5IGZvciBnemlwIGFuZCBiemlwMiwgNiBmb3IgeHogYW5kIGx6bWEpLgorLlRQIAorXGZCXC1aXGZQXGZJY29tcHJlc3NcLXR5cGVcZlAKK0luZGlxdWUgbGUgdHlwZSBkZSBjb21wcmVzc2lvbiDgIHV0aWxpc2VyIGxvcnMgZGUgbGEgY29uc3RydWN0aW9uIGQndW4KK3BhcXVldC4gTGVzIHZhbGV1cnMgYXV0b3Jpc+llcyBzb250IFxmSWd6aXBcZlAgKGxhIHZhbGV1ciBwYXIgZOlmYXV0KSwgXGZJeHpcZlAsCitcZkliemlwMlxmUCwgXGZJbHptYVxmUCBldCBcZklub25lXGZQIChhdWN1bmUgY29tcHJlc3Npb24pLgorLlRQIAorXGZCXC1cLW5ld1xmUAorUydhc3N1cmUgcXVlIFxmQmRwa2dcLWRlYlxmUCBjb25zdHJ1aXQgdW5lIGFyY2hpdmUgYXZlYyBsZSCrXCBub3V2ZWF1XCC7Citmb3JtYXQuIEMnZXN0IGxlIGNvbXBvcnRlbWVudCBwYXIgZOlmYXV0LgorLlRQIAorXGZCXC1cLW9sZFxmUAorT2JsaWdlIFxmQmRwa2dcLWRlYlxmUCDgIGNvbnN0cnVpcmUgdW5lIGFyY2hpdmUgYXZlYyBsJ6tcIGFuY2llblwguyBmb3JtYXQuIENlCitmb3JtYXQsIG1vaW5zIGZhY2lsZW1lbnQgY29tcHJpcyBwYXIgbGVzIG91dGlscyBub25cLURlYmlhbiwgZXN0IG1haW50ZW5hbnQKK2TpcGFzc+kuIE9uIGwndXRpbGlzZSBzZXVsZW1lbnQgcXVhbmQgb24gY29uc3RydWl0IGRlcyBwYXF1ZXRzIHF1aSBkb2l2ZW50CivqdHJlIGFuYWx5c+lzIHBhciBkZXMgdmVyc2lvbnMgZGUgZHBrZyBwbHVzIGFuY2llbm5lcyBxdWUgbGEgdmVyc2lvbiAwLjkzLjc2Cisoc2VwdGVtYnJlIDE5OTUpLCBxdWkgZnV0IHByb2R1aXRlIHVuaXF1ZW1lbnQgcG91ciBsZSBmb3JtYXQgq1wgaTM4NiBhLm91dFwguy4KKy5UUCAKK1xmQlwtXC1ub2NoZWNrXGZQCitFbXDqY2hlIGxlcyB26XJpZmljYXRpb25zIG5vcm1hbGVzIGRlIFxmQmRwa2dcLWRlYiBcLVwtYnVpbGRcZlAgcXVhbnQgYXUgY29udGVudQorcHJvcG9z6SBkJ3VuZSBhcmNoaXZlLiBEZSBjZXR0ZSBmYedvbiwgb24gcGV1dCBjb25zdHJ1aXJlIG4naW1wb3J0ZSBxdWVsbGUKK2FyY2hpdmUsIGF1c3NpIGTpZmVjdHVldXNlIHNvaXRcLWVsbGUuCisuVFAgCitcZkJcLXZcZlAsIFxmQlwtXC12ZXJib3NlXGZQCitFbmFibGVzIHZlcmJvc2Ugb3V0cHV0LiBUaGlzIGN1cnJlbnRseSBvbmx5IGFmZmVjdHMgXGZCXC1cLWV4dHJhY3RcZlAgbWFraW5nIGl0CitiZWhhdmUgbGlrZSBcZkJcLVwtdmV4dHJhY3RcZlAuCisuVFAgCitcZkJcLURcZlAsIFxmQlwtXC1kZWJ1Z1xmUAorUGVybWV0IGxlcyBtZXNzYWdlcyBkZSBk6WJvZ2FnZS4gQ2Ugbidlc3QgcGFzIHRy6HMgaW506XJlc3NhbnQuCisuCisuU0ggRU5WSVJPTk5FTUVOVAorLlRQIAorXGZCVE1QRElSXGZQCitTaSBjZXR0ZSBvcHRpb24gZXN0IHV0aWxpc+llLCBcZkJkcGtnXGZQIGwndXRpbGlzZXJhIGNvbW1lIHLpcGVydG9pcmUgcG91cgorY3LpZXIgbGVzIGZpY2hpZXJzIGV0IHLpcGVydG9pcmUgdGVtcG9yYWlyZXMuCisuCisuU0ggQk9HVUVTCitcZkJkcGtnXC1kZWIgXC1JXGZQIFxmSXBhcXVldDFcZlBcZkIuZGViXGZQIFxmSXBhcXVldDJcZlBcZkIuZGViXGZQIHNlIHRyb21wZS4KKworSWwgbidleGlzdGUgcGFzIGQnYXV0aGVudGlmaWNhdGlvbiBkZXMgZmljaGllcnMgXGZCLmRlYlxmUC4gSWwgbidleGlzdGUgbeptZQorcGFzIGRlIHN5c3TobWUgZGUgc29tbWUgZGUgY29udHL0bGUgaW1t6WRpYXQuIExlcyBvdXRpbHMgZGUgaGF1dCBuaXZlYXUKK2NvbW1lIEFQVCBn6HJlbnQgbCdhdXRoZW50aWZpY2F0aW9uIGRlcyBwYXF1ZXRzIFxmQi5kZWJcZlAgculjdXDpculzIGRlcHVpcyB1bgorZOlw9HQgZG9ubukgZXQgbGEgcGx1cGFydCBkZXMgcGFxdWV0cyBmb3Vybmlzc2VudCBk6XNvcm1haXMgdW5lIGNvbW1lIGRlCitjb250cvRsZSBNRDUgY3Lp6WUgcGFyIGRlYmlhbi9ydWxlcy4gQ2VwZW5kYW50LCBjZWNpIG4nZXN0IHBhcyBkaXJlY3RlbWVudAorZ+ly6SBwYXIgbGVzIG91dGlscyBkZSBwbHVzIGJhcyBuaXZlYXUuCisKK04nZXNzYXlleiBwYXMgZCdpbnN0YWxsZXIgdW4gbG9naWNpZWwgYXZlYyBcZkJkcGtnXC1kZWJcICFcZlAgVm91cyBkZXZleiB1dGlsaXNlcgorXGZCZHBrZ1xmUCBwb3VyIOp0cmUgc/tyIHF1ZSB0b3VzIHNlcyBmaWNoaWVycyBzb250IGNvcnJlY3RlbWVudCBtaXMgZW4gcGxhY2UsCitxdWUgbGVzIHNjcmlwdHMgZHUgcGFxdWV0IHNvbnQgZXjpY3V06XMgZXQgcXVlIHNvbiBjb250ZW51IGV0IHNvbiDpdGF0IHNvbnQKK2VucmVnaXN0culzLgorLgorLlNIICJWT0lSIEFVU1NJIgorXGZCZGViXGZQKDUpLCBcZkJkZWJcLWNvbnRyb2xcZlAoNSksIFxmQmRwa2dcZlAoMSksIFxmQmRzZWxlY3RcZlAoMSkuCisuCisuU0ggQVVURVVSCitDb3B5cmlnaHQgXChjbyAxOTk1XC0xOTk2IElhbiBKYWNrc29uCisuc3AKK0NlIHByb2dyYW1tZSBlc3QgdW4gbG9naWNpZWwgbGlicmVcIDsgdm95ZXogbGEgq1wgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2VcILsKK3ZlcnNpb24gMiBvdSBzdXDpcmlldXJlIHBvdXIgbGUgY29weXJpZ2h0LiBJbCBuJ3kgYSBQQVMgZGUgZ2FyYW50aWUuCisuU0ggVFJBRFVDVElPTgorQXJpZWwgVkFSREkgPGFyaWVsLnZhcmRpQGZyZWVzYmVlLmZyPiwgMjAwMi4KK1BoaWxpcHBlIEJhdGFpbGxlciwgMjAwNi4KK05pY29sYXMgRnJhbudvaXMsIDIwMDYuCitWZXVpbGxleiBzaWduYWxlciB0b3V0ZSBlcnJldXIg4CA8ZGViaWFuXC1sMTBuXC1mcmVuY2hAbGlzdHMuZGViaWFuLm9yZz4uCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9mci9kcGtnLWRpc3RhZGRmaWxlLjEgYi9kcGtnLTEuMTYuMS4xL21hbi9mci9kcGtnLWRpc3RhZGRmaWxlLjEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjRmMTcyYwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL2ZyL2Rwa2ctZGlzdGFkZGZpbGUuMQpAQCAtMCwwICsxLDU0IEBACisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkcGtnXC1kaXN0YWRkZmlsZSAxIDA3XC0wNFwtMjAxMSAiUHJvamV0IERlYmlhbiIgIlV0aWxpdGFpcmVzIGRlIGRwa2ciCisuU0ggTk9NCitkcGtnXC1kaXN0YWRkZmlsZSBcLSBBam91dGVyIHVuZSBlbnRy6WUgYXUgZmljaGllciBkZWJpYW4vZmlsZXMuCisuCisuU0ggU1lOT1BTSVMKK1xmQmRwa2dcLWRpc3RhZGRmaWxlXGZQIFtcZklvcHRpb25cZlAuLi5dXGZJIGZpbGVuYW1lIHNlY3Rpb24gcHJpb3JpdHlcZlAKKy4KKy5TSCBERVNDUklQVElPTgorXGZCZHBrZ1wtZGlzdGFkZGZpbGVcZlAgYWpvdXRlIHVuZSBlbnRy6WUgcG91ciB1biBmaWNoaWVyIGRhbnMgXGZCZGViaWFuL2ZpbGVzXGZQLgorCitJbCBwcmVuZCB0cm9pcyBhcmd1bWVudHMgc2FucyBvcHRpb24sIOAgc2F2b2lyIGxlIG5vbSBkdSBmaWNoaWVyLCBsYSBzZWN0aW9uCitldCBsYSBwcmlvcml06SwgcG91ciBsZSBmaWNoaWVyIFxmQi5jaGFuZ2VzXGZQLgorCitMZSBub20gZHUgZmljaGllciBzZXJhIGluZGlxdekgcmVsYXRpdmVtZW50IGF1IHLpcGVydG9pcmUgZGFucyBsZXF1ZWwKK1xmQmRwa2dcLWdlbmNoYW5nZXNcZlAgcydhdHRlbmQg4CB0cm91dmVyIGxlcyBmaWNoaWVycywgaGFiaXR1ZWxsZW1lbnQgXGZCLi5cZlAsCitwbHV09HQgcXVlIHJlbGF0aXZlbWVudCBhdSBy6XBlcnRvaXJlIGRhbnMgbGVxdWVsIGVzdCBleOljdXTpCitcZkJkcGtnXC1kaXN0YWRkZmlsZS5cZlAKKy4KKy5TSCBPUFRJT05TCisuVFAgCitcZkJcLWZcZlBcZklmaWNoaWVyL2xpc3RlXC1kZXNcLWZpY2hpZXJzXGZQCitMaXQgb3Ug6WNyaXQgbGEgbGlzdGUgZGVzIGZpY2hpZXJzIHF1aSBkb2l2ZW50IOp0cmUgZW52b3npcyB2ZXJzIGwnYXJjaGl2ZQorZGFucyBjZSBmaWNoaWVyIHBsdXT0dCBxdWUgZGFucyBsZSBmaWNoaWVyIFxmQmRlYmlhbi9maWxlc1xmUC4KKy5UUCAKK1xmQlwtaFxmUCwgXGZCXC1cLWhlbHBcZlAKK0FmZmljaGUgdW4gbWVzc2FnZSBkJ2FpZGUgcHVpcyBxdWl0dGUuCisuVFAgCitcZkJcLVwtdmVyc2lvblxmUAorQWZmaWNoZSBsZSBudW3pcm8gZGUgdmVyc2lvbiBwdWlzIHF1aXR0ZS4KKy4KKy5TSCBGSUNISUVSUworLlRQIAorXGZCZGViaWFuL2ZpbGVzXGZQCitMYSBsaXN0ZSBkZXMgZmljaGllcnMgY3Lp6XMgcXVpIHNlcm9udCBpbnN0YWxs6XMgc3VyIGxlCitzZXJ2ZXVyLiBcZkJkcGtnXC1kaXN0YWRkZmlsZVxmUCBwZXV0IOp0cmUgdXRpbGlz6SBwb3VyIGFqb3V0ZXIgZGVzIGZpY2hpZXJzCitzdXBwbOltZW50YWlyZXMuCisuCisuU0ggQVVURVVSUworQ29weXJpZ2h0IFwoY28gMTk5NVwtMTk5NiBJYW4gSmFja3NvbgorLmJyCitDb3B5cmlnaHQgXChjbyAyMDAwIFdpY2hlcnQgQWtrZXJtYW4KKy5zcAorQ2UgcHJvZ3JhbW1lIGVzdCB1biBsb2dpY2llbCBsaWJyZVwgOyB2b3lleiBsYSCrXCBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZVwguwordmVyc2lvbiAyIG91IHN1cOlyaWV1cmUgcG91ciBsZSBjb3B5cmlnaHQuIElsIG4neSBhIFBBUyBkZSBnYXJhbnRpZS4KKy5TSCBUUkFEVUNUSU9OCitBcmllbCBWQVJESSA8YXJpZWwudmFyZGlAZnJlZXNiZWUuZnI+LCAyMDAyLgorUGhpbGlwcGUgQmF0YWlsbGVyLCAyMDA2LgorTmljb2xhcyBGcmFu529pcywgMjAwNi4KK1ZldWlsbGV6IHNpZ25hbGVyIHRvdXRlIGVycmV1ciDgIDxkZWJpYW5cLWwxMG5cLWZyZW5jaEBsaXN0cy5kZWJpYW4ub3JnPi4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL2ZyL2Rwa2ctZGl2ZXJ0LjggYi9kcGtnLTEuMTYuMS4xL21hbi9mci9kcGtnLWRpdmVydC44Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjMyMmU4NzUKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9mci9kcGtnLWRpdmVydC44CkBAIC0wLDAgKzEsMTUwIEBACisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkcGtnXC1kaXZlcnQgOCAyMDExXC0wOFwtMTQgIlByb2pldCBEZWJpYW4iICJVdGlsaXRhaXJlcyBkZSBkcGtnIgorLlNIIE5PTQorZHBrZ1wtZGl2ZXJ0IFwtIHJlbXBsYWNlciBsYSB2ZXJzaW9uIGQndW4gZmljaGllciBjb250ZW51IGRhbnMgdW4gcGFxdWV0LgorLgorLlNIIFNZTk9QU0lTCitcZkJkcGtnXC1kaXZlcnRcZlAgW1xmSW9wdGlvblxmUC4uLl0gXGZJY29tbWFuZFxmUAorLgorLlNIIERFU0NSSVBUSU9OCitcZkJkcGtnXC1kaXZlcnRcZlAgc2VydCDgIGNy6WVyIGV0IOAgbWV0dHJlIOAgam91ciBsYSBsaXN0ZSBkZXMgZOl0b3VybmVtZW50cy4KKy5QUAorTGUgq1wgZOl0b3VybmVtZW50XCC7IGRlIGZpY2hpZXIgZXN0IHVuIG1veWVuIGQnb2JsaWdlciBcZkJkcGtnXGZQKDEpIOAgaW5zdGFsbGVyCit1biBmaWNoaWVyIG5vbiBwYXMgZGFucyBsJ2VtcGxhY2VtZW50IHBy6XZ1IG1haXMgZGFucyB1biBhdXRyZS4gTGVzIHNjcmlwdHMKK2RlcyBwYXF1ZXRzIERlYmlhbiBzZSBzZXJ2ZW50IGRlIGxhIGTpdmlhdGlvbiBwb3VyIGTpcGxhY2VyIGxlcyBmaWNoaWVycyBxdWkKK2Ny6WVudCBkZXMgY29uZmxpdHMuIExlcyBhZG1pbmlzdHJhdGV1cnMgcydlbiBzZXJ2ZW50LCBsb3JzIGRlCitsJ2luc3RhbGxhdGlvbiBkJ3VuZSB2ZXJzaW9uIHBsdXMgculjZW50ZSBkJ3VuIHBhcXVldCwgcG91ciByZW1wbGFjZXIgbGVzCitmaWNoaWVycyBkZSBjb25maWd1cmF0aW9uIGRlIGNlcnRhaW5zIHBhcXVldHMsIG91IGJpZW4g4CBjaGFxdWUgZm9pcyBxdWUgZGVzCitmaWNoaWVycyAocXVpIG5lIHNvbnQgcGFzIGRlcyCrXCBjb25mZmlsZXNcILspIGRvaXZlbnQg6nRyZSBwculzZXJ26XMgcGFyCitkcGtnLgorLnNwCisuU0ggQ09NTUFOREVTCisuVFAgCitbXGZCXC1cLWFkZFxmUF0gXGZJZmljaGllclxmUAorQWpvdXRlciB1biBk6XRvdXJuZW1lbnQgcG91ciBsZSBcZklmaWNoaWVyXGZQLgorLlRQIAorXGZCXC1cLXJlbW92ZVxmUFxmSSBmaWNoaWVyXGZQCitTdXBwcmltZXIgdW4gZOl0b3VybmVtZW50IHBvdXIgbGUgXGZJZmljaGllclxmUC4KKy5UUCAKK1xmQlwtXC1saXN0XGZQIFxmSWV4cFwtcmVnXGZQCitMaXN0ZXIgbGVzIGTpdG91cm5lbWVudHMgcXVpIGNvcnJlc3BvbmRlbnQg4CBcZklleHBcLXJlZ1xmUC4KKy5UUCAKK1xmQlwtXC1saXN0cGFja2FnZVxmUFxmSSBmaWNoaWVyXGZQCitBZmZpY2hlciBsZSBub20gZHUgcGFxdWV0IHF1aSBk6XJpdmUgKKtcIGRpdmVydFwguykgXGZJZmljaGllclxmUC4gQWZmaWNoZSBMT0NBTAorc2kgXGZJZmljaGllclxmUCBlc3QgZOlyaXbpIGxvY2FsZW1lbnQgZXQgbidhZmZpY2hlIHJpZW4gc2kgXGZJZmljaGllclxmUCBuJ2VzdAorcGFzIGTpcml26S4KKy5UUCAKK1xmQlwtXC10cnVlbmFtZVxmUFxmSSBmaWNoaWVyXGZQCitBZmZpY2hlciBsZSB2cmFpIG5vbSBkJ3VuIGZpY2hpZXIgZOl0b3VybukuCisuCisuU0ggT1BUSU9OUworLlRQIAorXGZCXC1cLWFkbWluZGlyXGZQXGZJIHLpcGVydG9pcmVcZlAKK0TpZmluaXIgbGUgculwZXJ0b2lyZSBkZSBkb25u6WVzIGRlIERwa2cgY29tbWUgXGZJculwZXJ0b2lyZVxmUCAocGFyIGTpZmF1dAorYydlc3QgXGZJL3Zhci9saWIvZHBrZ1xmUCkuCisuVFAgCitcZkJcLVwtZGl2ZXJ0XGZQXGZJIGTpdG91cm5lclwtZGFuc1xmUAorXGZJZOl0b3VybmVyXC1kYW5zXGZQIGVzdCBsJ2VtcGxhY2VtZW50IHZlcnMgbGVxdWVsIGxlcyB2ZXJzaW9ucyBkZSBcZklmaWNoaWVyXGZQLAordGVsIHF1J2lsIGVzdCBkb25u6SBwYXIgZCdhdXRyZXMgcGFxdWV0cywgc2Vyb250IGTpdG91cm7pZXMuCisuVFAgCitcZkJcLVwtbG9jYWxcZlAKK0luZGlxdWUgcXVlIHRvdXRlcyBsZXMgdmVyc2lvbnMgZGUgY2UgZmljaGllciBzb250IGTpdG91cm7pZXMuIENlbGEgc2lnbmlmaWUKK3F1J2lsIG4neSBhIHBhcyBkJ2V4Y2VwdGlvbiBldCBxdWVsIHF1ZSBzb2l0IGxlIHBhcXVldCBpbnN0YWxs6SwgY2UgZmljaGllcgorc2VyYSBk6XRvdXJu6S4gVW4gYWRtaW5pc3RyYXRldXIgcGV1dCBwYXIgZXhlbXBsZSBpbnN0YWxsZXIgdW5lIHZlcnNpb24KK21vZGlmaellIGxvY2FsZW1lbnQuCisuVFAgCitcZkJcLVwtcGFja2FnZVxmUFxmSSBwYXF1ZXRcZlAKK1xmSXBhcXVldFxmUCBlc3QgbGUgbm9tIGR1IHBhcXVldCBkb250IGxhIGNvcGllIGRlIFxmSWZpY2hpZXJcZlAgbmUgc2VyYSBwYXMKK2TpdG91cm7pZS4gQXV0cmVtZW50IGRpdCwgXGZJZmljaGllclxmUCBzZXJhIGTpdG91cm7pIHNhdWYgcydpbCBhcHBhcnRpZW50IOAKK1xmSXBhcXVldFxmUC4KKy5UUCAKK1xmQlwtXC1xdWlldFxmUAorTW9kZSBzaWxlbmNpZXV4LCBwYXMgZGUgYmF2YXJkYWdlLgorLlRQIAorXGZCXC1cLXJlbmFtZVxmUAorTWV0IGVuIGZhaXQgbGUgZmljaGllciBkZSBj9HTpLiBRdWFuZCBsZSBmaWNoaWVyIGRlIGRlc3RpbmF0aW9uIGV4aXN0ZSwKK1xmQmRwa2dcLWRpdmVydFxmUCBpbnRlcnJvbXB0IGwnb3DpcmF0aW9uLgorLlRQIAorXGZCXC1cLXRlc3RcZlAKK01vZGUgZGUgdGVzdCwgbmUgcmllbiBtb2RpZmllciBy6WVsbGVtZW50LCBzZXVsZW1lbnQgbW9udHJlci4KKy5UUCAKK1xmQlwtXC1oZWxwXGZQCitBZmZpY2hlIHVuIG1lc3NhZ2UgZCdhaWRlIHB1aXMgcXVpdHRlLgorLlRQIAorXGZCXC1cLXZlcnNpb25cZlAKK0FmZmljaGUgbGUgbnVt6XJvIGRlIHZlcnNpb24gcHVpcyBxdWl0dGUuCisuCisuU0ggTk9URVMKK1doZW4gYWRkaW5nLCBkZWZhdWx0IGlzIFxmQlwtXC1sb2NhbFxmUCBhbmQgXGZCXC1cLWRpdmVydFxmUAorXGZJb3JpZ2luYWxcZlBcZkIuZGlzdHJpYlxmUC4gV2hlbiByZW1vdmluZywgXGZCXC1cLXBhY2thZ2VcZlAgb3IgXGZCXC1cLWxvY2FsXGZQIGFuZAorXGZCXC1cLWRpdmVydFxmUCBtdXN0IG1hdGNoIGlmIHNwZWNpZmllZC4KKworT24gbmUgcGV1dCBwYXMgZOl0b3VybmVyIGRlcyBy6XBlcnRvaXJlcyBhdmVjIFxmQmRwa2dcLWRpdmVydFxmUC4KKworSWwgZmF1dCBmYWlyZSBhdHRlbnRpb24gcXVhbmQgdW5lIGJpYmxpb3Ro6HF1ZSBwYXJ0YWfpZSBlc3QKK2TpdG91cm7pZS4gXGZCbGRjb25maWdcZlAoOCkgY3LpZSB1biBsaWVuIHN5bWJvbGlxdWUg4CBwYXJ0aXIgZHUgY2hhbXAKK0RUX1NPTkFNRSBlbWJhcnF16SBkYW5zIGxhIGJpYmxpb3Ro6HF1ZS4gbGRjb25maWcgbmUgY29ubmHudCBwYXMgbGVzCitk6XRvdXJuZW1lbnRzIChzZXVsIGRwa2cgbGUgZmFpdCksIGV0IHNpIHVuZSBiaWJsaW90aOhxdWUgZOl0b3VybullIHBvc3PoZGUKK2xlIG3qbWUgU09OQU1FIHF1ZSBsYSBiaWJsaW90aOhxdWUgbm9uIGTpdG91cm7pZSwgbGUgbGllbiBzeW1ib2xpcXVlIHBldXQKK3BvaW50ZXIgZW4gZmluIGRlIGNvbXB0ZSBzdXIgbGEgYmlibGlvdGjocXVlIGTpdG91cm7pZS4KKy4KKy5TSCBFWEVNUExFUworUG91ciBk6XRvdXJuZXIgdG91dGVzIGxlcyBjb3BpZXMgZGUgXGZJL3Vzci9iaW4vZXhhbXBsZVxmUCB2ZXJzCitcZkkvdXNyL2Jpbi9leGFtcGxlLmZvb1xmUCwgYydlc3RcLeBcLWRpcmUgZGVtYW5kZXIgYXV4IHBhcXVldHMgcXVpIGZvdXJuaXNzZW50CitcZkkvdXNyL2Jpbi9leGFtcGxlXGZQIGRlIGwnaW5zdGFsbGVyIGRhbnMgXGZJL3Vzci9iaW4vZXhhbXBsZS5mb29cZlAsIGVuCitlZmZlY3R1YW50IGxlIGNoYW5nZW1lbnQgZGUgbm9tIHNpIG7pY2Vzc2FpcmVcIDoKKy5IUAorZHBrZ1wtZGl2ZXJ0IFwtXC1kaXZlcnQgL3Vzci9iaW4vZXhhbXBsZS5mb28gXC1cLXJlbmFtZSAvdXNyL2Jpbi9leGFtcGxlCisuUFAKK1BvdXIgc3VwcHJpbWVyIGNlIGTpdG91cm5lbWVudFwgOgorLkhQCitkcGtnXC1kaXZlcnQgXC1cLXJlbmFtZSBcLVwtcmVtb3ZlIC91c3IvYmluL2V4YW1wbGUKKworLlBQCitQb3VyIGTpdG91cm5lciB1biBwYXF1ZXQgcXVpIHZldXQgaW5zdGFsbGVyIFxmSS91c3IvYmluL2V4YW1wbGVcZlAgZGFucworXGZJL3Vzci9iaW4vZXhhbXBsZS5mb29cZlAsIHNhdWYgdm90cmUgcHJvcHJlIHBhcXVldCBcZkl3aWJibGVcZlBcIDoKKy5IUAorZHBrZ1wtZGl2ZXJ0IFwtXC1wYWNrYWdlIHdpYmJsZSBcLVwtZGl2ZXJ0IC91c3IvYmluL2V4YW1wbGUuZm9vIFwtXC1yZW5hbWUKKy91c3IvYmluL2V4YW1wbGUKKy5QUAorUG91ciBzdXBwcmltZXIgY2UgZOl0b3VybmVtZW50XCA6CisuSFAKK2Rwa2dcLWRpdmVydCBcLVwtcGFja2FnZSB3aWJibGUgXC1cLXJlbmFtZSBcLVwtcmVtb3ZlIC91c3IvYmluL2V4YW1wbGUKKy4KKy5TSCBFTlZJUk9OTkVNRU5UCisuVFAgCitcZkJEUEtHX0FETUlORElSXGZQCitJZiBzZXQgYW5kIHRoZSBcZkJcLVwtYWRtaW5kaXJcZlAgb3B0aW9uIGhhcyBub3QgYmVlbiBzcGVjaWZpZWQsIGl0IHdpbGwgYmUgdXNlZAorYXMgdGhlIGRwa2cgZGF0YSBkaXJlY3RvcnkuCisuVFAgCitcZkJEUEtHX01BSU5UU0NSSVBUX1BBQ0tBR0VcZlAKK0lmIHNldCBhbmQgdGhlIFxmQlwtXC1sb2NhbFxmUCBhbmQgXGZCXC1cLXBhY2thZ2VcZlAgb3B0aW9ucyBoYXZlIG5vdCBiZWVuIHNwZWNpZmllZCwKK1xmQmRwa2dcLWRpdmVydFxmUCB3aWxsIHVzZSBpdCBhcyB0aGUgcGFja2FnZSBuYW1lLgorLgorLlNIIEZJQ0hJRVJTCisuVFAgCitcZkkvdmFyL2xpYi9kcGtnL2RpdmVyc2lvbnNcZlAKK0NlIGZpY2hpZXIgY29udGllbnQgbGEgbGlzdGUgZGVzIGTpdG91cm5lbWVudHMgZW4gb2V1dnJlIHN1ciBsZSBzeXN06G1lLiBJbAorc2UgdHJvdXZlIGRhbnMgbGUgculwZXJ0b2lyZSBkJ2FkbWluaXN0cmF0aW9uIGRlIGRwa2csIGF2ZWMgZCdhdXRyZXMKK2ZpY2hpZXJzIGltcG9ydGFudHMgY29tbWUgq1wgc3RhdHVzXCC7IG91IKtcIGF2YWlsYWJsZVwguy4KKy5icgorTm90ZVwgOiBcZkJkcGtnXC1kaXZlcnRcZlAgcHLpc2VydmUgbCdhbmNpZW5uZSBjb3BpZSBkZSBjZSBmaWNoaWVyLCBhdmVjCitsJ2V4dGVuc2lvbiCrXCBcLW9sZFwguywgYXZhbnQgZGUgbGEgcmVtcGxhY2VyIHBhciBsYSBub3V2ZWxsZS4KKy4KKy5TSCAiVk9JUiBBVVNTSSIKK1xmQmRwa2dcZlAoMSkuCisuCisuU0ggQVVURVVSCitDb3B5cmlnaHQgXChjbyAxOTk1IElhbiBKYWNrc29uCisuc3AKK0NlIHByb2dyYW1tZSBlc3QgdW4gbG9naWNpZWwgbGlicmVcIDsgdm95ZXogbGEgq1wgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2VcILsKK3ZlcnNpb24gMiBvdSBzdXDpcmlldXJlIHBvdXIgbGUgY29weXJpZ2h0LiBJbCBuJ3kgYSBQQVMgZGUgZ2FyYW50aWUuCisuU0ggVFJBRFVDVElPTgorQXJpZWwgVkFSREkgPGFyaWVsLnZhcmRpQGZyZWVzYmVlLmZyPiwgMjAwMi4KK1BoaWxpcHBlIEJhdGFpbGxlciwgMjAwNi4KK05pY29sYXMgRnJhbudvaXMsIDIwMDYuCitWZXVpbGxleiBzaWduYWxlciB0b3V0ZSBlcnJldXIg4CA8ZGViaWFuXC1sMTBuXC1mcmVuY2hAbGlzdHMuZGViaWFuLm9yZz4uCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9mci9kcGtnLWdlbmNoYW5nZXMuMSBiL2Rwa2ctMS4xNi4xLjEvbWFuL2ZyL2Rwa2ctZ2VuY2hhbmdlcy4xCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjA2OTJmYjEKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9mci9kcGtnLWdlbmNoYW5nZXMuMQpAQCAtMCwwICsxLDE0MCBAQAorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlwiCisuXCIgVGhpcyBmaWxlIHdhcyBnZW5lcmF0ZWQgd2l0aCBwbzRhLiBUcmFuc2xhdGUgdGhlIHNvdXJjZSBmaWxlLgorLlwiCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuVEggZHBrZ1wtZ2VuY2hhbmdlcyAxIDIwMTFcLTA4XC0xNCAiUHJvamV0IERlYmlhbiIgIlV0aWxpdGFpcmVzIGRlIGRwa2ciCisuU0ggTk9NCitkcGtnXC1nZW5jaGFuZ2VzIFwtIENy6WVyIGRlcyBmaWNoaWVycyCrXCAuY2hhbmdlc1wguy4KKy4KKy5TSCBTWU5PUFNJUworXGZCZHBrZ1wtZ2VuY2hhbmdlc1xmUCBbXGZJb3B0aW9uXGZQLi4uXQorLmJyCisuCisuU0ggREVTQ1JJUFRJT04KK1xmQmRwa2dcLWdlbmNoYW5nZXNcZlAgbGl0IGxlcyBpbmZvcm1hdGlvbnMg4CBsYSBmb2lzIGRhbnMgdW5lIGFyYm9yZXNjZW5jZQorZGViaWFuIGTpcGFxdWV06WUgZXQgZOlq4CBjb25zdHJ1aXRlIGV0IHN1ciBsZXMgZmljaGllcnMgcXVpIG9udCDpdOkgY3Lp6XNcIDsKK3B1aXMgaWwgY3LpZSB1biBmaWNoaWVyIGRlIGNvbnRy9GxlIHBvdXIgbGEgbWlzZSBlbiBwbGFjZSBkYW5zIGwnYXJjaGl2ZQorRGViaWFuIChjJ2VzdCBsZSBmaWNoaWVyIFxmQi5jaGFuZ2VzXGZQKS4KKy4KKy5TSCBPUFRJT05TCisuVFAgCitcZkJcLWJcZlAsIFxmQlwtQlxmUCwgXGZCXC1BXGZQCitQculjaXNlIHF1ZSBsJ29uIHZldXQgdW5pcXVlbWVudCB1bmUgY29uc3RydWN0aW9uIGR1IGJpbmFpcmUgKGxlcyBmaWNoaWVycworc291cmNlcyBuZSBzZXJvbnQgcGFzIGluY2x1cykuIElsIG4neSBhIHBhcyBkZSBkaXN0aW5jdGlvbiBlbnRyZSBcZkJcLWJcZlAsCitcZkJcLUJcZlAgZXQgXGZCXC1BXGZQXCA7IGxlIGZpY2hpZXIgcHJvZHVpdCBcZkIuY2hhbmdlc1xmUCByZXByZW5kcmEgdG91cyBsZXMgZmljaGllcnMKK2Ny6elzIHBhciBsZXMgY2libGVzIFxmQmJpbmFyeVwtKlxmUCBkdSBwYXF1ZXQgZW4gY291cnMgZGUgY29uc3RydWN0aW9uLi4KKy5UUCAKK1xmQlwtU1xmUAorTmUgY29uc3RydWl0IHF1ZSBsZSBwYXF1ZXQgc291cmNlIChhdWN1biBwYXF1ZXQgYmluYWlyZSBuZSBzZXJhIGNvbnN0cnVpdCkuCisuUFAKK0xlcyBvcHRpb25zIFxmQlwtc1xmUFxmSXhcZlAgY29udHL0bGVudCBzaSBsJ2FyY2hpdmUgc291cmNlIGQnb3JpZ2luZSBlc3QgaW5jbHVzZQorZGFucyBsJ2luc3RhbGxhdGlvbiBwcm9kdWl0ZSBzaSB1biBwYXF1ZXQgc291cmNlIGVzdCBjcunpIChjYWQuIHF1ZSBsZXMKK29wdGlvbnMgXGZCXC1iXGZQIG91IFxmQlwtQlxmUCBuJ29udCBwYXMg6XTpIHV0aWxpc+llcykuCisuVFAgCitcZkJcLXNpXGZQCitQYXIgZOlmYXV0LCBvdSBxdWFuZCBsJ29wdGlvbiBlc3QgaW5kaXF16WUsIGxlcyBzb3VyY2VzIGQnb3JpZ2luZSBzb250CitpbmNsdXNlcyB1bmlxdWVtZW50IHNpIGxlIG51belybyBkZSB2ZXJzaW9uIG1hamV1ciAoYy7gLmQuIGxhIHZlcnNpb24gc2FucworbGVzIHBhcnRpZXMgZXBvY2ggZXQgq1wgcul2aXNpb24gRGViaWFuXCC7KSBkaWZm6HJlIGRlIGxhIHZlcnNpb24gcHLpY+lkZW50ZQoraW5kaXF16WUgZGFucyBsZSBmaWNoaWVyIGRlIGNoYW5nZWxvZy4KKy5UUCAKK1xmQlwtc2FcZlAKK0ZvcmNlIGwnaW5jbHVzaW9uIGRlcyBzb3VyY2VzIGQnb3JpZ2luZS4KKy5UUCAKK1xmQlwtc2RcZlAKK0ZvcmNlIGwnZXhjbHVzaW9uIGRlcyBzb3VyY2VzIGQnb3JpZ2luZSBldCBpbmNsdXQgc2V1bGVtZW50IGxlIKtcIGRpZmZcILsuCisuZmkKKy5UUCAKK1xmQlwtdlxmUFxmSXZlcnNpb25cZlAKK0ZvcmNlIGwndXRpbGlzYXRpb24gZGVzIGluZm9ybWF0aW9ucyBjb250ZW51ZXMgZGFucyBsZSBmaWNoaWVyIKtcIGNoYW5nZWxvZ1wguworZXQgcXVpIGNvbmNlcm5lbnQgdG91dGVzIGxlcyB2ZXJzaW9ucyBzdHJpY3RlbWVudCBwbHVzIHLpY2VudGVzIHF1ZQorXGZJdmVyc2lvblxmUC4KKy5UUCAKK1xmQlwtQ1xmUFxmSWRlc2NyaXB0aW9uXC1kZXNcLWNoYW5nZW1lbnRzXGZQCitMaXQgbGEgZGVzY3JpcHRpb24gZGVzIGNoYW5nZW1lbnRzIGRhbnMgbGUgZmljaGllcgorXGZJZGVzY3JpcHRpb25cLWRlc1wtY2hhbmdlbWVudHNcZlAgcGx1dPR0IHF1ZSBkYW5zIGxlIGZpY2hpZXIgq1wgY2hhbmdlbG9nXCC7IGRlCitsJ2FyYm9yZXNjZW5jZSBzb3VyY2UuCisuVFAgCitcZkJcLW1cZlBcZklhZHJlc3NlXC1kdVwtcmVzcG9uc2FibGVcZlAKK1V0aWxpc2UgXGZJYWRyZXNzZVwtZHVcLXJlc3BvbnNhYmxlXGZQIGNvbW1lIG5vbSBldCBhZHJlc3NlIOlsZWN0cm9uaXF1ZSBkdQorcmVzcG9uc2FibGUgZGUgcGFxdWV0IHBsdXT0dCBxdWUgZCd1dGlsaXNlciBsZXMgaW5mb3JtYXRpb25zIGNvbnRlbnVlcyBkYW5zCitsZSBmaWNoaWVyIKtcIGNvbnRyb2xcILsgZGUgbCdhcmJvcmVzY2VuY2Ugc291cmNlLgorLlRQIAorXGZCXC1lXGZQXGZJYWRyZXNzZVwtZHVcLXJlc3BvbnNhYmxlXGZQCitVdGlsaXNlIFxmSWFkcmVzc2VcLWR1XC1yZXNwb25zYWJsZVxmUCBjb21tZSBub20gZXQgYWRyZXNzZSDpbGVjdHJvbmlxdWUgZHUKK3Jlc3BvbnNhYmxlIGRlIHBhcXVldCBwb3VyIGNldHRlIG1pc2UgZW4gcGxhY2UsIHBsdXT0dCBxdWUgZCd1dGlsaXNlciBsZXMKK2luZm9ybWF0aW9ucyBjb250ZW51ZXMgZGFucyBsZSBmaWNoaWVyIKtcIGNoYW5nZWxvZ1wguyBkZSBsJ2FyYm9yZXNjZW5jZQorc291cmNlLgorLlRQIAorXGZCXC1WXGZQXGZJbm9tXGZQXGZCPVxmUFxmSXZhbGV1clxmUAorRml4ZSBsYSB2YWxldXIgZCd1bmUgdmFyaWFibGUgZGUgc3Vic3RpdHV0aW9uLiBDb25zdWx0ZXogXGZCZGViXC1zdWJzdHZhcnNcZlAoNSkKK3BvdXIgdW5lIGRpc2N1c3Npb24gc3VyIGxhIHZhbGV1ciBkZSBzdWJzdGl0dXRpb24uCisuVFAgCitcZkJcLVRcZlBcZklmaWNoaWVyL3N1YnN0dmFyc1xmUAorTGVjdHVyZSBkZXMgdmFyaWFibGVzIGRlIHN1YnN0aXR1dGlvbiBkZXB1aXMgXGZJc3Vic3R2YXJzZmlsZVxmUFwgOyBsYSB2YWxldXIKK3BhciBk6WZhdXQgZXN0IFxmQmRlYmlhbi9zdWJzdHZhcnNcZlAuIEF1Y3VuZSBzdWJzdGl0dXRpb24gZGUgdmFyaWFibGUgbidlc3QKK2ZhaXRlIHN1ciBsZXMgY2hhbXBzIGRlIHNvcnRpZXMsIGNlcGVuZGFudCBsYSB2YXJpYWJsZSBzcOljaWFsZSBcZklGb3JtYXRcZlAKK3JlbXBsYWNlcmEgbGUgY2hhbXBzIHF1aSBwb3J0ZSBsZSBt6m1lIG5vbS4gQ2V0dGUgb3B0aW9uIHBldXQg6nRyZSB1dGlsaXPpZQorcGx1c2lldXJzIGZvaXMgcG91ciBsaXJlIGxlcyB2YXJpYWJsZXMgZGUgc3Vic3RpdHV0aW9uIGRlcHVpcyBwbHVzaWV1cnMKK2ZpY2hpZXJzLgorCisuVFAgCitcZkJcLURcZlBcZkljaGFtcFxmUFxmQj1cZlBcZkl2YWxldXJcZlAKK1JlbXBsYWNlIG91IGFqb3V0ZSBlbiBzb3J0aWUgdW4gY2hhbXAgZGFucyBsZSBmaWNoaWVyIGRlIGNvbnRy9GxlLgorLlRQIAorXGZCXC1VXGZQXGZJY2hhbXBcZlAKK1N1cHByaW1lIGVuIHNvcnRpZSB1biBjaGFtcCBkYW5zIGxlIGZpY2hpZXIgZGUgY29udHL0bGUuCisuVFAgCitcZkJcLWNcZlBcZklmaWNoaWVyL2NvbnRyb2xcZlAKK0luZGlxdWUgbGUgcHJpbmNpcGFsIGZpY2hpZXIgZGUgY29udHL0bGUgZGVzIHNvdXJjZXMgb/kgdHJvdXZlciBkZXMKK3JlbnNlaWduZW1lbnRzLiBQYXIgZOlmYXV0LCBjJ2VzdCBsZSBmaWNoaWVyIFxmQmRlYmlhbi9jb250cm9sXGZQLgorLlRQIAorXGZCXC1sXGZQXGZJZmljaGllci9jaGFuZ2Vsb2dcZlAKK0luZGlxdWUgbGUgZmljaGllciBkJ2VucmVnaXN0cmVtZW50IGRlcyBjaGFuZ2VtZW50cyBv+SB0cm91dmVyIGRlcworcmVuc2VpZ25lbWVudHMuIFBhciBk6WZhdXQsIGMnZXN0IGxlIGZpY2hpZXIgXGZCZGViaWFuL2NoYW5nZWxvZ1xmUC4KKy5UUCAKK1xmQlwtZlxmUFxmSWZpY2hpZXIvbGlzdGVcLWRlc1wtZmljaGllcnNcZlAKK0xpdCBvdSDpY3JpdCBsYSBsaXN0ZSBkZXMgZmljaGllcnMgcXVpIGRvaXZlbnQg6nRyZSBlbnZveelzIHZlcnMgbCdhcmNoaXZlCitkYW5zIGNlIGZpY2hpZXIgcGx1dPR0IHF1ZSBkYW5zIGxlIGZpY2hpZXIgXGZCZGViaWFuL2ZpbGVzXGZQLgorLlRQIAorXGZCXC1GXGZQXGZJZm9ybWF0XC1kdVwtY2hhbmdlbG9nXGZQCitEb25uZSBsZSBmb3JtYXQgZHUgZmljaGllciBjaGFuZ2Vsb2cuIFBhciBk6WZhdXQsIGMnZXN0IHVuZSBsaWduZSBzcOljaWFsZSwKK3By6HMgZGUgbGEgZmluIGR1IGZpY2hpZXIsIHF1aSBsJ2luZGlxdWVcIDsgc2lub24sIG9uIHV0aWxpc2UgbGUgZm9ybWF0CitjbGFzc2lxdWUgXGZCZGViaWFuXGZQLgorLlRQIAorXGZCXC11XGZQXGZJculwZXJ0b2lyZVwtZGVzXC1maWNoaWVyc1wt4FwtaW5zdGFsbGVyXGZQCitDaGVyY2hlIGxlcyBmaWNoaWVycyDgIGluc3RhbGxlciBkYW5zIFxmSXLpcGVydG9pcmVcLWRlc1wtZmljaGllcnNcLeBcLWluc3RhbGxlclxmUAorcGx1dPR0IHF1ZSBkYW5zIFxmQi4uXGZQIChcZkJkcGtnXC1nZW5jaGFuZ2VzXGZQIGRvaXQgdHJvdXZlciBjZXMgZmljaGllcnMgZGUKK21hbmnocmUg4CBtZXR0cmUgbGV1cnMgdGFpbGxlcyBldCBsZXVycyBzb21tZXMgZGUgY29udHL0bGUgZGFucyBsZSBmaWNoaWVyCitcJlxmQi5jaGFuZ2VzLilcZlAKKy5UUCAKK1xmQlwtcVxmUAorXGZCZHBrZ1wtZ2VuY2hhbmdlc1xmUCBhZmZpY2hlIGhhYml0dWVsbGVtZW50IGRlcyBtZXNzYWdlcyBkJ2luZm9ybWF0aW9uIHN1ciBsYQorc29ydGllIGQnZXJyZXVyIHN0YW5kYXJkXCA7IHBhciBleGVtcGxlLCBjb21iaWVuIGRlIGZpY2hpZXJzIHNvdXJjZSBkdSBwYXF1ZXQKK3NvbnQgZW4gY291cnMgZCdpbnN0YWxsYXRpb24uIFxmQlwtcVxmUCBzdXBwcmltZSBjZXMgbWVzc2FnZXMuCisuVFAgCitcZkJcLWhcZlAsIFxmQlwtXC1oZWxwXGZQCitBZmZpY2hlIHVuIG1lc3NhZ2UgZCdhaWRlIHB1aXMgcXVpdHRlLgorLlRQIAorXGZCXC1cLXZlcnNpb25cZlAKK0FmZmljaGUgbGUgbnVt6XJvIGRlIHZlcnNpb24gcHVpcyBxdWl0dGUuCisuCisuU0ggRklDSElFUlMKKy5UUCAKK1xmQmRlYmlhbi9maWxlc1xmUAorTGEgbGlzdGUgZGVzIGZpY2hpZXJzIGNy6elzIHF1aSBzZXJvbnQgaW5zdGFsbOlzIHN1ciBsZQorc2VydmV1ci4gXGZCZHBrZ1wtZ2VuY2hhbmdlc1xmUCBsaXQgZGFucyBjZSBmaWNoaWVyIGxlcyBkb25u6WVzIG7pY2Vzc2FpcmVzIOAgbGEKK2Ny6WF0aW9uIGR1IGZpY2hpZXIgXGZCLmNoYW5nZXNcZlAuCisuCisuU0ggQVVURVVSUworQ29weXJpZ2h0IFwoY28gMTk5NVwtMTk5NiBJYW4gSmFja3NvbgorLmJyCitDb3B5cmlnaHQgXChjbyAyMDAwIFdpY2hlcnQgQWtrZXJtYW4KKy5zcAorQ2UgcHJvZ3JhbW1lIGVzdCB1biBsb2dpY2llbCBsaWJyZVwgOyB2b3lleiBsYSCrXCBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZVwguwordmVyc2lvbiAyIG91IHN1cOlyaWV1cmUgcG91ciBsZSBjb3B5cmlnaHQuIElsIG4neSBhIFBBUyBkZSBnYXJhbnRpZS4KKy5TSCBUUkFEVUNUSU9OCitBcmllbCBWQVJESSA8YXJpZWwudmFyZGlAZnJlZXNiZWUuZnI+LCAyMDAyLgorUGhpbGlwcGUgQmF0YWlsbGVyLCAyMDA2LgorTmljb2xhcyBGcmFu529pcywgMjAwNi4KK1ZldWlsbGV6IHNpZ25hbGVyIHRvdXRlIGVycmV1ciDgIDxkZWJpYW5cLWwxMG5cLWZyZW5jaEBsaXN0cy5kZWJpYW4ub3JnPi4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL2ZyL2Rwa2ctZ2VuY29udHJvbC4xIGIvZHBrZy0xLjE2LjEuMS9tYW4vZnIvZHBrZy1nZW5jb250cm9sLjEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTNjOGUxMgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL2ZyL2Rwa2ctZ2VuY29udHJvbC4xCkBAIC0wLDAgKzEsMTM5IEBACisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkcGtnXC1nZW5jb250cm9sIDEgMjAxMVwtMDhcLTE0ICJQcm9qZXQgRGViaWFuIiAiVXRpbGl0YWlyZXMgZGUgZHBrZyIKKy5TSCBOT00KK2Rwa2dcLWdlbmNvbnRyb2wgXC0gQ3LpZXIgZGVzIGZpY2hpZXJzIGRlIGNvbnRy9GxlIERlYmlhbi4KKy4KKy5TSCBTWU5PUFNJUworXGZCZHBrZ1wtZ2VuY29udHJvbFxmUCBbXGZJb3B0aW9uXGZQLi4uXQorLgorLlNIIERFU0NSSVBUSU9OCitcZkJkcGtnXC1nZW5jb250cm9sXGZQIGxpdCBsZXMgaW5mb3JtYXRpb25zIGNvbnRlbnVlcyBkYW5zIHVuZSBhcmJvcmVzY2VuY2UKK0RlYmlhbiBk6XBhcXVldOllIGV0IGNy6WUgbGUgZmljaGllciCrXCBjb250cm9sXCC7IGQndW4gcGFxdWV0IGJpbmFpcmUgKHBhcgorZOlmYXV0LCBjJ2VzdCBsZSBmaWNoaWVyIGRlYmlhbi90bXAvREVCSUFOL2NvbnRyb2wpXCA7IGR1cmFudCBjZXR0ZSBhY3Rpb24gaWwKK3kgYSBzaW1wbGlmaWNhdGlvbiBkZXMgY2hhbXBzIGRlIHJlbGF0aW9ucy4KKy5zcAorXGZJUHJlXC1EZXBlbmRzXGZQLCBcZklEZXBlbmRzXGZQLCBcZklSZWNvbW1lbmRzXGZQIGV0IFxmSVN1Z2dlc3RzXGZQIHNvbnQgc2ltcGxpZmnpcworZGFucyBjZXQgb3JkcmUgc3VwcHJpbWVyIGxlcyBk6XBlbmRhbmNlcyBxdWkgc29udCBjb25udWVzIHBvdXIg6nRyZSB26XJpZmnpCitwYXIgbGEgcGx1cyBmb3J0ZSBk6XBlbmRhbmNlIGTpauAgdHJhaXTpZS4gU29udCBhdXNzaSBzdXBwcmlt6WVzIHRvdXRlcyBsZXMKK2F1dG9cLWTpcGVuZGFuY2VzIChkYW5zIGxlcyBmYWl0cywgY2VsYSBzdXBwcmltZSBsZXMgZOlwZW5kYW5jZXMgcXVpIHNvbnQKK2TpauAgdmFsaWTpZXMgcGFyIGxhIHZlcnNpb24gZHUgcGFxdWV0IGTpauAgaW5zdGFsbOkpLiBMb2dpcXVlbWVudCwgaWwKK2NvbnNlcnZlIGxlcyBjb3JyZXNwb25kYW5jZXMgZW50cmUgcGx1c2lldXJzIGTpcGVuZGFuY2VzIGRhbnMgbGUgbeptZQorcGFxdWV0LiBMJ29yZHJlIGRlcyBk6XBlbmRhbmNlcyBlc3QgY29uc2VydukgZHUgbWlldXggcG9zc2libGVcIDogc2kgdW5lCitk6XBlbmRhbmNlIGRvaXQg6nRyZSBzdXBwcmlt6WUg4CBjYXVzZSBkJ3VuZSBhdXRyZSBk6XBlbmRhbmNlIHF1aSBzZSB0cm91dmUKK2RhbnMgdW4gY2hhbXBzIHN1aXZhbnQsIGxhIGTpcGVuZGFuY2UgcmVtcGxh52FudGUgcHJlbmRyYSBsYSBwbGFjZSBkZSBjZWxsZQor6WxpbWlu6WUuCisuc3AKK0xlcyBhdXRyZSBjaGFtcHMgKFxmSUVuaGFuY2VzXGZQLCBcZklDb25mbGljdHNcZlAsIFxmSUJyZWFrc1xmUCwgXGZJUmVwbGFjZXNcZlAgZXQKK1xmSVByb3ZpZGVzXGZQKSBzb250IOlnYWxlbWVudCBzaW1wbGlmaelzIGluZGl2aWR1ZWxsZW1lbnQgcGFyIGwnYW5hbHlzZSBkZXMKK2RpZmbpcmVudGVzIGTpcGVuZGFuY2VzIGxvcnNxdWUgdW4gcGFxdWV0IGVzdCBpbmRpcXXpIHBsdXNpZXVycyBmb2lzIGRhbnMgbGUKK2NoYW1wLgorLnNwCitcZkJkcGtnXC1nZW5jb250cm9sXGZQIGFqb3V0ZSBhdXNzaSB1bmUgZW50cullIHBvdXIgdW4gcGFxdWV0IGJpbmFpcmUgZGFucworXGZCZGViaWFuL2ZpbGVzXGZQLgorLgorLlNIIE9QVElPTlMKKy5UUCAKK1xmQlwtdlxmUFxmSXZlcnNpb25cZlAKK0ZpeGUgbGUgbnVt6XJvIGRlIHZlcnNpb24gZHUgcGFxdWV0IGJpbmFpcmUgcXVpIHNlcmEgY3Lp6S4KKy5UUCAKK1xmQlwtVlxmUFxmSW5vbVxmUFxmQj1cZlBcZkl2YWxldXJcZlAKK0ZpeGUgbGEgdmFsZXVyIGQndW5lIHZhcmlhYmxlIGRlIHN1YnN0aXR1dGlvbi4gQ29uc3VsdGV6IFxmQmRlYlwtc3Vic3R2YXJzXGZQKDUpCitwb3VyIHVuZSBkaXNjdXNzaW9uIHN1ciBsYSB2YWxldXIgZGUgc3Vic3RpdHV0aW9uLgorLlRQIAorXGZCXC1UXGZQXGZJZmljaGllci9zdWJzdHZhcnNcZlAKK0xlY3R1cmUgZGVzIHZhcmlhYmxlcyBkZSBzdWJzdGl0dXRpb24gZGVwdWlzIFxmSXN1YnN0dmFyc2ZpbGVcZlBcIDsgbGEgdmFsZXVyCitwYXIgZOlmYXV0IGVzdCBcZkJkZWJpYW4vc3Vic3R2YXJzXGZQLiBDZXR0ZSBvcHRpb24gcGV1dCDqdHJlIHV0aWxpc+llCitwbHVzaWV1cnMgZm9pcyBwb3VyIGxpcmUgbGVzIHZhcmlhYmxlcyBkZSBzdWJzdGl0dXRpb24gZGVwdWlzIHBsdXNpZXVycworZmljaGllcnMuCisuVFAgCitcZkJcLURcZlBcZkljaGFtcFxmUFxmQj1cZlBcZkl2YWxldXJcZlAKK1JlbXBsYWNlIG91IGFqb3V0ZSBlbiBzb3J0aWUgdW4gY2hhbXAgZGFucyBsZSBmaWNoaWVyIGRlIGNvbnRy9GxlLgorLlRQIAorXGZCXC1VXGZQXGZJY2hhbXBcZlAKK1N1cHByaW1lIGVuIHNvcnRpZSB1biBjaGFtcCBkYW5zIGxlIGZpY2hpZXIgZGUgY29udHL0bGUuCisuVFAgCitcZkJcLWNcZlBcZklmaWNoaWVyL2NvbnRyb2xcZlAKK0luZGlxdWUgbGUgcHJpbmNpcGFsIGZpY2hpZXIgZGUgY29udHL0bGUgZGVzIHNvdXJjZXMgb/kgdHJvdXZlciBkZXMKK3JlbnNlaWduZW1lbnRzLiBQYXIgZOlmYXV0LCBjJ2VzdCBsZSBmaWNoaWVyIFxmQmRlYmlhbi9jb250cm9sXGZQLgorLlRQIAorXGZCXC1sXGZQXGZJZmljaGllci9jaGFuZ2Vsb2dcZlAKK0luZGlxdWUgbGUgZmljaGllciBkJ2VucmVnaXN0cmVtZW50IGRlcyBjaGFuZ2VtZW50cyBv+SB0cm91dmVyIGRlcworcmVuc2VpZ25lbWVudHMuIFBhciBk6WZhdXQsIGMnZXN0IGxlIGZpY2hpZXIgXGZCZGViaWFuL2NoYW5nZWxvZ1xmUC4KKy5UUCAKK1xmQlwtZlxmUFxmSWZpY2hpZXIvbGlzdGVcLWRlc1wtZmljaGllcnNcZlAKK0xpdCBvdSDpY3JpdCBsYSBsaXN0ZSBkZXMgZmljaGllcnMgcXVpIGRvaXZlbnQg6nRyZSBlbnZveelzIHZlcnMgbCdhcmNoaXZlCitkYW5zIGNlIGZpY2hpZXIgcGx1dPR0IHF1ZSBkYW5zIGxlIGZpY2hpZXIgXGZCZGViaWFuL2ZpbGVzXGZQLgorLlRQIAorXGZCXC1GXGZQXGZJZm9ybWF0XC1kdVwtY2hhbmdlbG9nXGZQCitEb25uZSBsZSBmb3JtYXQgZHUgZmljaGllciBjaGFuZ2Vsb2cuIFBhciBk6WZhdXQsIGMnZXN0IHVuZSBsaWduZSBzcOljaWFsZSwKK3By6HMgZGUgbGEgZmluIGR1IGZpY2hpZXIsIHF1aSBsJ2luZGlxdWVcIDsgc2lub24sIG9uIHV0aWxpc2UgbGUgZm9ybWF0CitjbGFzc2lxdWUgXGZCZGViaWFuXGZQLgorLlRQIAorXGZCXC1wXGZQXGZJcGFxdWV0XGZQCitDZXR0ZSBvcHRpb24gcHJvZHVpdCBsZXMgaW5mb3JtYXRpb25zIGNvbmNlcm5hbnQgbGUgcGFxdWV0IGJpbmFpcmUKK1xmSXBhcXVldFxmUC5TaSBsZSBmaWNoaWVyIGRlIGNvbnRy9GxlIGRlcyBzb3VyY2VzIGxpc3RlIHVuIHNldWwgcGFxdWV0CitiaW5haXJlLCBvbiBwZXV0IG9tZXR0cmUgY2V0dGUgb3B0aW9uXCA7IHNpbm9uIGlsIGVzdCBpbmRpc3BlbnNhYmxlCitkJ2luZGlxdWVyIGxlIHBhcXVldCBwb3VyIGxlcXVlbCBvbiB2ZXV0IHByb2R1aXJlIGxlcyBpbmZvcm1hdGlvbnMuCisuVFAgCitcZkJcLW5cZlBcZklub21cLWRlXC1maWNoaWVyXGZQCitMZSBub20gZHUgcGFxdWV0IGVzdCBcZklub21cLWRlXC1maWNoaWVyXGZQIGF1IGxpZXUgZGUgbCdoYWJpdHVlbFwgOgorcGFxdWV0X3ZlcnNpb25fYXJjaC5kZWIuCisuVFAgCitcZkJcLWlzXGZQLCBcZkJcLWlwXGZQLCBcZkJcLWlzcFxmUAorQ2VzIG9wdGlvbnMsIGNvbnNlcnbpZXMgcG91ciBjb21wYXRpYmlsaXTpIGF2ZWMgbGVzIGFuY2llbm5lcyB2ZXJzaW9ucyBkZQorZHBrZ1wtZGV2LCBzb250IG1haW50ZW5hbnQgZOljb25zZWlsbOllcy4gRWxsZXMgc2VydmFpZW50IOAgZGlyZSDgCitkcGtnXC1nZW5jb250cm9sIGQnaW5jbHVyZSBsZXMgY2hhbXBzIKtcIFNlY3Rpb25cILsgZXQgq1wgUHJpb3JpdHlcILsgZGFucyBsZQorZmljaGllciCrXCBjb250cm9sXCC7LiBDJ2VzdCBtYWludGVuYW50IGxlIGNvbXBvcnRlbWVudCBwYXIgZOlmYXV0LiBTaSB2b3VzCit2b3VsZXogbCdhbmNpZW4gY29tcG9ydGVtZW50LCB2b3VzIHBvdXZleiB1dGlsaXNlciBsJ29wdGlvbiBcZkJcLVVcZlAgcG91cgorc3VwcHJpbWVyIGNlcyBjaGFtcHMgZHUgZmljaGllciCrXCBjb250cm9sXCC7LgorLlRQIAorXGZCXC1QXGZQXGZJcmVwXC1kZVwtY29uc3RydWN0aW9uXC1kdVwtcGFxdWV0XGZQCitDZXR0ZSBvcHRpb24gaW5kaXF1ZSDgIFxmQmRwa2dcLXNvdXJjZVxmUCBxdWUgbGUgculwZXJ0b2lyZSBkZSBjb25zdHJ1Y3Rpb24gZHUKK3BhcXVldCBlc3QgXGZJcmVwXC1kZVwtY29uc3RydWN0aW9uXC1kdVwtcGFxdWV0XGZQIGF1IGxpZXUgZGUgXGZCZGViaWFuL3RtcC5cZlAgQ2V0dGUKK3ZhbGV1ciBzZXJ0IOAgdHJvdXZlciBsYSB2YWxldXIgcGFyIGTpZmF1dCBkZSBsYSB2YXJpYWJsZSBkZSBzdWJzdGl0dXRpb24KK1xmQkluc3RhbGxlZFwtU2l6ZVxmUCBldCBjZWxsZSBkdSBjaGFtcCBjb3JyZXNwb25kYW50IGRhbnMgbGUgZmljaGllciBkZQorY29udHL0bGUgKG9uIHV0aWxpc2UgbGEgY29tbWFuZGUgXGZCZHVcZlApXCA7IGVsbGUgZG9ubmUgYXVzc2kgbCdlbXBsYWNlbWVudCBwYXIKK2TpZmF1dCBwb3VyIGxlIGZpY2hpZXIgZGUgc29ydGllLgorLlRQIAorXGZCXC1PXGZQCitBZmZpY2hlIGxlIGZpY2hpZXIgZGUgY29udHL0bGUgc3VyIGxhIHNvcnRpZSBzdGFuZGFyZCBhdSBsaWV1IGRlCitcZkJkZWJpYW4vdG1wL0RFQklBTi9jb250cm9sXGZQIChvdQorXGZJcmVwXC1kZVwtY29uc3RydWN0aW9uXC1kdVwtcGFxdWV0XGZQXGZCL0RFQklBTi9jb250cm9sXGZQIHNpIGwnb3B0aW9uIFxmQlwtUFxmUCBhIOl06QordXRpbGlz6WUpLgorLlRQIAorXGZCXC1oXGZQLCBcZkJcLVwtaGVscFxmUAorQWZmaWNoZSB1biBtZXNzYWdlIGQnYWlkZSBwdWlzIHF1aXR0ZS4KKy5UUCAKK1xmQlwtXC12ZXJzaW9uXGZQCitBZmZpY2hlIGxlIG51belybyBkZSB2ZXJzaW9uIHB1aXMgcXVpdHRlLgorLgorLlNIIEZJQ0hJRVJTCisuVFAgCitcZkJkZWJpYW4vY29udHJvbFxmUAorTGUgcHJpbmNpcGFsIGZpY2hpZXIgZCdpbmZvcm1hdGlvbiBzdXIgbGVzIHNvdXJjZXNcIDsgaWwgZG9ubmUgZGVzCityZW5zZWlnbmVtZW50cyBxdWkgbmUgZOlwZW5kZW50IHBhcyBkJ3VuZSB2ZXJzaW9uIGNvbmNlcm5hbnQgbGUgcGFxdWV0Citzb3VyY2UgZXQgbGVzIHBhcXVldHMgYmluYWlyZXMgcXVpIHBldXZlbnQg6nRyZSBjcunpcy4KKy5UUCAKK1xmQmRlYmlhbi9maWxlc1xmUAorTGEgbGlzdGUgZGVzIGZpY2hpZXJzIGNy6elzIHF1aSBmb250IHBhcnRpZSBkZSBjZXV4IHF1aSBzZXJvbnQgaW5zdGFsbOlzIHN1cgorbGUgc2VydmV1ci4gXGZCZHBrZ1wtZ2VuY29udHJvbFxmUCBham91dGUgbGVzIG5vbXMgcHLpc3Vt6XMgZGVzIGZpY2hpZXJzIGRlcworcGFxdWV0cyBiaW5haXJlcyDgIHBhcnRpciBkZXMgZmljaGllcnMgq1wgY29udHJvbFwguyBxdSdpbCBjcullLgorLgorLlNIIEFVVEVVUlMKK0NvcHlyaWdodCBcKGNvIDE5OTVcLTE5OTYgSWFuIEphY2tzb24KKy5icgorQ29weXJpZ2h0IFwoY28gMjAwMCBXaWNoZXJ0IEFra2VybWFuCisuYnIKK0NvcHlyaWdodCBcKGNvIDIwMDdcLTIwMDggUmFwaGFcWzplXWwgSGVydHpvZworLnNwCitDZSBwcm9ncmFtbWUgZXN0IHVuIGxvZ2ljaWVsIGxpYnJlXCA7IHZveWV6IGxhIKtcIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbmNlXCC7Cit2ZXJzaW9uIDIgb3Ugc3Vw6XJpZXVyZSBwb3VyIGxlIGNvcHlyaWdodC4gSWwgbid5IGEgUEFTIGRlIGdhcmFudGllLgorLlNIIFRSQURVQ1RJT04KK0FyaWVsIFZBUkRJIDxhcmllbC52YXJkaUBmcmVlc2JlZS5mcj4sIDIwMDIuCitQaGlsaXBwZSBCYXRhaWxsZXIsIDIwMDYuCitOaWNvbGFzIEZyYW7nb2lzLCAyMDA2LgorVmV1aWxsZXogc2lnbmFsZXIgdG91dGUgZXJyZXVyIOAgPGRlYmlhblwtbDEwblwtZnJlbmNoQGxpc3RzLmRlYmlhbi5vcmc+LgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vZnIvZHBrZy1nZW5zeW1ib2xzLjEgYi9kcGtnLTEuMTYuMS4xL21hbi9mci9kcGtnLWdlbnN5bWJvbHMuMQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wMDczNmNmCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vZnIvZHBrZy1nZW5zeW1ib2xzLjEKQEAgLTAsMCArMSw1MjQgQEAKKy5cIiBBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlRIIGRwa2dcLWdlbnN5bWJvbHMgMSAyMDExXC0wOFwtMTQgIlByb2pldCBEZWJpYW4iICJVdGlsaXRhaXJlcyBkZSBkcGtnIgorLlNIIE5PTQorZHBrZ1wtZ2Vuc3ltYm9scyBcLSBjculhdGlvbiBkZXMgZmljaGllcnMgZGUgc3ltYm9sZXMgKGluZm9ybWF0aW9uIGRlc3RpbullCithdXggZOlwZW5kYW5jZXMgZGUgYmlibGlvdGjocXVlcyBwYXJ0YWfpZXMpCisuCisuU0ggU1lOT1BTSVMKK1xmQmRwa2dcLWdlbnN5bWJvbHNcZlAgW1xmSW9wdGlvblxmUC4uLl0KKy4KKy5TSCBERVNDUklQVElPTgorXGZCZHBrZ1wtZ2Vuc3ltYm9sc1xmUCBhbmFseXNlIHVuIHLpcGVydG9pcmUgdGVtcG9yYWlyZSBkZSBjb25zdHJ1Y3Rpb24gKHBhcgorZOlmYXV0IGRlYmlhbi90bXApLCB5IHJlY2hlcmNoZSBsZXMgYmlibGlvdGjocXVlcyBldCBjcullIHVuIGZpY2hpZXIKK1xmSXN5bWJvbHNcZlAgZmlsZSBxdWkgbGVzIGTpY3JpdC4gU2kgY2UgZmljaGllciBuJ2VzdCBwYXMgdmlkZSwgaWwgZXN0CitpbnN0YWxs6SBkYW5zIGxlIHNvdXNcLXLpcGVydG9pcmUgREVCSUFOIGR1IHLpcGVydG9pcmUgZGUgY29uc3RydWN0aW9uIGFmaW4KK2RlIHBvdXZvaXIg6nRyZSBpbmNsdXMgZGFucyBsZXMgaW5mb3JtYXRpb25zIGRlIGNvbnRy9GxlIGR1IHBhcXVldC4KKy5QCitMb3JzIGRlIGxhIGNy6WF0aW9uIGRlIGNlcyBmaWNoaWVycywgaWwgdXRpbGlzZSBlbiBlbnRy6WUgY2VydGFpbnMgZmljaGllcnMKK2RlIHN5bWJvbGVzIGZvdXJuaXMgcGFyIGxlIHJlc3BvbnNhYmxlLiBJbCByZWNoZXJjaGUgbGVzIGZpY2hpZXJzIHN1aXZhbnRzCisoZW4gdXRpbGlzYW50IGxlIHByZW1pZXIgdHJvdXbpKVwgOgorLklQIFwoYnUgNAorZGViaWFuL1xmSXBhcXVldFxmUC5zeW1ib2xzLlxmSWFyY2hcZlAKKy5JUCBcKGJ1IDQKK2RlYmlhbi9zeW1ib2xzLlxmSWFyY2hcZlAKKy5JUCBcKGJ1IDQKK2RlYmlhbi9cZklwYXF1ZXRcZlAuc3ltYm9scworLklQIFwoYnUgNAorZGViaWFuL3N5bWJvbHMKKy5QCitMJ2ludOly6nQgcHJpbmNpcGFsIGRlIGNlcyBmaWNoaWVycyBlc3QgZGUgZm91cm5pciBsYSB2ZXJzaW9uIG1pbmltYWxlCithc3NvY2npZSDgIGNoYXF1ZSBzeW1ib2xlIGZvdXJuaSBwYXIgbGVzIGJpYmxpb3Ro6HF1ZXMuIEVuIGfpbulyYWwsIGNlbGEKK2NvcnJlc3BvbmQg4CBsYSBwcmVtaehyZSB2ZXJzaW9uIGR1IHBhcXVldCBxdWkgYSBmb3VybmkgY2Ugc3ltYm9sZSwgbWFpcworY2V0dGUgdmFsZXVyIHBldXQg6nRyZSBhdWdtZW506WUgbWFudWVsbGVtZW50IHBhciBsZSByZXNwb25zYWJsZSBzaQorbCdpbnRlcmZhY2UgYmluYWlyZSBhcHBsaWNhdGl2ZSAoQUJJKSBkdSBzeW1ib2xlIGVzdCDpdGVuZHVlIHNhbnMgY2Fzc2VyIGxhCitjb21wYXRpYmlsaXTpIGF2ZWMgbGVzIHZlcnNpb25zIHBy6WPpZGVudGVzLiBMYSB0ZW51ZSDgIGpvdXIgZGUgY2VzIGZpY2hpZXJzCitlc3Qg4CBsYSBjaGFyZ2UgZHUgcmVzcG9uc2FibGUgZHUgcGFxdWV0LCBhdmVjIGwnYWlkZSBkZSBcZkJkcGtnXC1nZW5zeW1ib2xzXGZQCitcJi4KKy5QCitRdWFuZCBsZXMgZmljaGllcnMgZGUgc3ltYm9sZXMgY3Lp6XMgc29udCBkaWZm6XJlbnRzIGRlIGNldXggZm91cm5pcyBwYXIgbGUKK3Jlc3BvbnNhYmxlLCBcZkJkcGtnXC1nZW5zeW1ib2xzXGZQIGFmZmljaGVyYSBsZXMgZGlmZulyZW5jZXMgZW50cmUgbGVzIGRldXgKK2ZpY2hpZXJzLiBTaSBjZXMgZGlmZulyZW5jZXMgc29udCB0cm9wIGltcG9ydGFudGVzLCBsZSBwcm9ncmFtbWUgcGV1dCBt6m1lCitzZSB0ZXJtaW5lciBlbiDpY2hlYyAobGUgbm9tYnJlIGRlIGRpZmbpcmVuY2VzIHRvbOly6WVzIHBldXQg6nRyZSBy6Wds6SBhdmVjCitsJ29wdGlvbiBcZkJcLWNcZlApLgorLlNIICJURU5VRSDAIEpPVVIgREVTIEZJQ0hJRVJTIFNZTUJPTEVTIgorTGVzIGZpY2hpZXJzIGRlIHN5bWJvbGVzIGRldmllbm5lbnQgcullbGxlbWVudCB1dGlsZXMgbG9yc3F1J2lscyBwZXJtZXR0ZW50CitkZSBzdWl2cmUgbCfpdm9sdXRpb24gZHUgcGFxdWV0IHN1ciBwbHVzaWV1cnMgdmVyc2lvbnMuIEVuIGNvbnPpcXVlbmNlLCBsZQorcmVzcG9uc2FibGUgZG9pdCBsZXMgbWV0dHJlIOAgam91ciBjaGFxdWUgZm9pcyBxdSd1biBub3V2ZWF1IHN5bWJvbGUgZXN0Citham91dOkgYWZpbiBxdWUgbGEgdmVyc2lvbiBtaW5pbWFsZSBhc3NvY2npZSBjb3JyZXNwb25kZSDgIGxhIHLpYWxpdOkuIFBvdXIKK2VmZmVjdHVlciBjZXR0ZSBvcOlyYXRpb24gY29ycmVjdGVtZW50LCBpbCBlc3QgbuljZXNzYWlyZSBkJ3V0aWxpc2VyIGxlCitmaWNoaWVyIGRlIGRpZmbpcmVuY2UgaW5kaXF16SBkYW5zIGxlIGpvdXJuYWwgZGUgY29uc3RydWN0aW9uLiBEYW5zIGxhCitwbHVwYXJ0IGRlcyBjYXMsIGNlIGZpY2hpZXIgZGUgZGlmZulyZW5jZXMgcGV1dCDqdHJlIGFwcGxpcXXpIHRlbCBxdWVsIGF1CitmaWNoaWVyIGRlYmlhbi9cZklwYXF1ZXRcZlAuc3ltYm9scy4gQ2VsYSDpdGFudCwgcXVlbHF1ZXMgYWRhcHRhdGlvbnMgc29udAorZ+lu6XJhbGVtZW50IG7pY2Vzc2FpcmVzXCA6XCBpbCBlc3QgcGFyIGV4ZW1wbGUgcmVjb21tYW5k6SBkZSByZXRpcmVyIGxlCitudW3pcm8gZGUgcul2aXNpb24gRGViaWFuIGRlIGxhIHZlcnNpb24gbWluaW1hbGUgYWZpbiBxdWUgbGVzIHBhcXVldHMKK3LpdHJvXC1wb3J06XMsIGRlIG51belybyBkZSB2ZXJzaW9uIGluZulyaWV1ciBtYWlzIGF2ZWMgbGEgbeptZSB2ZXJzaW9uIGFtb250Citjb250aW51ZW50IOAgculwb25kcmUgYXV4IHBy6VwtcmVxdWlzLiBTaSBsZSBudW3pcm8gZGUgcul2aXNpb24gRGViaWFuIG5lCitwZXV0IHZyYWltZW50IHBhcyDqdHJlIHJldGly6SBjYXIgbGUgbm91dmVhdSBzeW1ib2xlIGVzdCBsYSBjb25z6XF1ZW5jZQorZCd1bmUgbW9kaWZpY2F0aW9uIHByb3ByZSDgIERlYmlhbiwgaWwgZXN0IHN1Z2fpcukgZCdham91dGVyIHVuIHN1ZmZpeGUKK6tcIH5cILsgYXUgbnVt6XJvIGRlIHZlcnNpb24uCisuUAorQXZhbnQgZCdhcHBsaXF1ZXIgbGUgY29ycmVjdGlmIGF1IGZpY2hpZXIgZGUgc3ltYm9sZXMsIGxlIHJlc3BvbnNhYmxlIGRvaXQKK2NvbnRy9GxlciBxdSdpbCBlc3QgY29ycmVjdC4gTGVzIHN5bWJvbGVzIHB1YmxpY3Mgc29udCBzdXBwb3PpcyBuZSBqYW1haXMKK2Rpc3BhcmHudHJlIGV0IGxlIGNvcnJlY3RpZiBuZSBkZXZyYWl0IGRvbmMgcXUnYWpvdXRlciBkZXMgbGlnbmVzLgorLlAKK05vdGUgdGhhdCB5b3UgY2FuIHB1dCBjb21tZW50cyBpbiBzeW1ib2xzIGZpbGVzOiBhbnkgbGluZSB3aXRoICcjJyBhcyB0aGUKK2ZpcnN0IGNoYXJhY3RlciBpcyBhIGNvbW1lbnQgZXhjZXB0IGlmIGl0IHN0YXJ0cyB3aXRoICcjaW5jbHVkZScgKHNlZQorc2VjdGlvbiBcZkJVc2luZyBpbmNsdWRlc1xmUCkuIExpbmVzIHN0YXJ0aW5nIHdpdGggJyNNSVNTSU5HOicgYXJlIHNwZWNpYWwKK2NvbW1lbnRzIGRvY3VtZW50aW5nIHN5bWJvbHMgdGhhdCBoYXZlIGRpc2FwcGVhcmVkLgorLlNTICJVdGlsaXNhdGlvbiBkdSByZW1wbGFjZW1lbnQgZGUgI1BBQ0tBR0UjIgorLlAKK0RhbnMgZGUgcmFyZXMgY2FzLCBsZSBub20gZGUgbGEgYmlibGlvdGjocXVlIGTpcGVuZCBkZSBsJ2FyY2hpdGVjdHVyZS4gQWZpbgorZCfpdml0ZXIgZGUgY29kZXIgbGUgbm9tIGR1IHBhcXVldCBlbiBkdXIgZGFucyBsZSBmaWNoaWVyIGRlIHN5bWJvbGVzLCBpbAorZXN0IHBvc3NpYmxlIGQndXRpbGlzZXIgbGUgbWFycXVldXIgXGZJI1BBQ0tBR0UjXGZQLiBJbCBzZXJhIHJlbXBsYWPpIHBhciBsZQordnJhaSBub20gZHUgcGFxdWV0IGxvcnMgZGUgbCdpbnN0YWxsYXRpb24gZGVzIGZpY2hpZXJzIGRlIHN5bWJvbGVzLiDAIGxhCitkaWZm6XJlbmNlIGR1IG1hcnF1ZXVyIFxmSSNNSU5WRVIjXGZQLCBcZkkjUEFDS0FHRSNcZlAgbidhcHBhcmHudHJhIGphbWFpcyBkYW5zIGxlCitmaWNoaWVyIGRlIHN5bWJvbGVzIGQndW4gcGFxdWV0IGJpbmFpcmUuCisuU1MgIlV0aWxpc2F0aW9uIGRlcyDpdGlxdWV0dGVzIGRlIHN5bWJvbGVzIgorLlAKK0wn6XRpcXVldGFnZSBkZXMgc3ltYm9sZXMgKKtcIHN5bWJvbCB0YWdnaW5nXCC7KSBlc3QgdXRpbGUgcG91ciBtYXJxdWVyIGRlcworc3ltYm9sZXMgcXVpIHNvbnQgcGFydGljdWxpZXJzIGQndW5lIG1hbmnocmUgb3UgZCd1bmUgYXV0cmUuIFRvdXQgc3ltYm9sZQorcGV1dCBhdm9pciB1biBub21icmUgcXVlbGNvbnF1ZSBkJ+l0aXF1ZXR0ZXMgYXNzb2Np6WVzLiAgQmllbiBxdWUgdG91dGVzIGxlcwor6XRpcXVldHRlcyBzb2llbnQgYW5hbHlz6WVzIGV0IGNvbnNlcnbpZXMsIHNldWxlcyBjZXJ0YWluZXMgZCdlbnRyZSBlbGxlcworc29udCBjb21wcmlzZXMgcGFyIFxmQmRwa2dcLWdlbnN5bWJvbHNcZlAgZXQgZOljbGVuY2hlbnQgdW4gdHJhaXRlbWVudAorc3DpY2lmaXF1ZSBkZXMgc3ltYm9sZXMuIFZldWlsbGV6IGNvbnN1bHRlciBsYSBzb3VzXC1zZWN0aW9uIFxmQsl0aXF1ZXR0ZXMKK3N0YW5kYXJkIGRlIHN5bWJvbGVzXGZQIHBvdXIgdW5lIHLpZulyZW5jZSBjb21wbOh0ZSDgIHByb3BvcyBkZSBjZXMKK+l0aXF1ZXR0ZXMuCisuUAorTCdpbmRpY2F0aW9uIGRlIGwn6XRpcXVldHRlIHZpZW50IGp1c3RlIGF2YW50IGxlIG5vbSBkdSBzeW1ib2xlIChzYW5zCitlc3BhY2UpLiBFbGxlIGNvbW1lbmNlIHRvdWpvdXJzIHBhciB1bmUgcGFyZW50aOhzZSBvdXZyYW50ZSBcZkIoXGZQLCBzZSB0ZXJtaW5lCithdmVjIHVuZSBwYXJlbnRo6HNlIGZlcm1hbnRlIFxmQilcZlAgZXQgZG9pdCBjb250ZW5pciBhdSBtb2lucyB1bmUKK+l0aXF1ZXR0ZS4gTGVzIOl0aXF1ZXR0ZXMgbXVsdGlwbGVzIGRvaXZlbnQg6nRyZSBz6XBhcullcyBwYXIgbGUgY2FyYWN06HJlCitcZkJ8XGZQLiBDaGFxdWUg6XRpcXVldHRlIHBldXQgY29tcG9ydGVyIG9wdGlvbm5lbGxlbWVudCB1bmUgdmFsZXVyLCBz6XBhcullIGR1Citub20gZGUgbCfpdGlxdWV0dGUgcGFyIGxlIGNhcmFjdOhyZSBcZkI9XGZQLiBMZXMgbm9tcyBldCB2YWxldXJzIGRlcyDpdGlxdWV0dGVzCitzb250IGRlcyBjaGHubmVzIHF1ZWxjb25xdWVzIHF1aSBuZSBkb2l2ZW50IHBhcyBjb21wb3J0ZXIgbGVzIGNhcmFjdOhyZXMKK1xmQilcZlAgXGZCfFxmUCBldCBcZkI9XGZQLiBMZXMgbm9tcyBkZSBzeW1ib2xlcyBxdWkgc3VpdmVudCB1bmUg6XRpcXVldHRlIHBldXZlbnQKK29wdGlvbm5lbGxlbWVudCDqdHJlIG1pcyBlbnRyZSBndWlsbGVtZXRzIGF2ZWMgbGVzIGNhcmFjdOhyZXMgXGZCJ1xmUCBvdSBcZkIiXGZQCithZmluIGQneSBhdXRvcmlzZXIgbGEgcHLpc2VuY2UgZCdlc3BhY2VzLiBDZXBlbmRhbnQsIHNpIGF1Y3VuZSDpdGlxdWV0dGUKK24nZXN0IHV0aWxpc+llLCBsZXMgZ3VpbGxlbWV0cyBzb250IGFsb3JzIHRyYWl06XMgY29tbWUgdW5lIHBhcnRpZSBkdSBub20gZHUKK3N5bWJvbGUsIHF1aSBzJ2Fycup0ZSBhbG9ycyBhdSBwcmVtaWVyIGVzcGFjZS4KKy5QCisgKOl0aXExPWplIHN1aXMgbWFycXXpfOl0aXF1ZXR0ZSBhdmVjIGVzcGFjZSkic3ltYm9sZSBjb21wb3J0YW50IGRlcyBlc3BhY2VzIkBCYXNlIDEuMAorIChvcHRpb25hbClzeW1ib2xlX25vbl9wcm906WfpQEJhc2UgMS4wIDEKKyBzeW1ib2xlX25vbl/pdGlxdWV06UBCYXNlIDEuMAorLlAKK0xlIHByZW1pZXIgc3ltYm9sZSBkZSBjZXQgZXhlbXBsZSBlc3QgYXBwZWzpIFxmSXN5bWJvbGUgY29tcG9ydGFudCBkZXMKK2VzcGFjZXNcZlAgZXQgdXRpbGlzZSBkZXV4IOl0aXF1ZXR0ZXNcIDpcIFxmSel0aXExXGZQIGF2ZWMgbGEgdmFsZXVyIFxmSWplIHN1aXMKK21hcnF16VxmUCBldCBcZknpdGlxdWV0dGUgYXZlYyBlc3BhY2VcZlAgc2FucyB2YWxldXIuIExlIGRldXhp6G1lIHN5bWJvbGUsIGFwcGVs6QorXGZJc3ltYm9sZV9ub25fcHJvdOln6VxmUCBuZSBjb21wb3J0ZSBxdWUgbCfpdGlxdWV0dGUgXGZJb3B0aW9uYWxcZlAuIExlIGRlcm5pZXIKK3N5bWJvbGUgZXN0IHVuIGV4ZW1wbGUgZGUgc3ltYm9sZSBub3JtYWwgc2FucyDpdGlxdWV0dGUuCisuUAorQ29tbWUgbGVzIOl0aXF1ZXR0ZXMgZGUgc3ltYm9sZXMgc29udCB1bmUgZXh0ZW5zaW9uIGR1IGZvcm1hdCBkZQorXGZJZGViXC1zeW1ib2xzKDUpXGZQLCBlbGxlcyBuZSBwZXV2ZW50IGFwcGFyYe50cmUgcXVlIGRhbnMgbGVzIGZpY2hpZXJzIGRlCitzeW1ib2xlcyBkZXMgcGFxdWV0cyBzb3VyY2UgKGNlcyBmaWNoaWVycyBwZXV2ZW50IGVuc3VpdGUg6nRyZSB2dXMgY29tbWUgZGVzCittb2TobGVzIHBlcm1ldHRhbnQgZGUgY29uc3RydWlyZSBsZXMgZmljaGllcnMgZGUgc3ltYm9sZXMgaW5jbHVzIGRhbnMgbGVzCitwYXF1ZXRzIGJpbmFpcmVzKS4gTG9yc3F1ZSBcZkJkcGtnXC1nZW5zeW1ib2xzXGZQIGVzdCBsYW5j6SBzYW5zIGwnb3B0aW9uIFxmSVwtdFxmUCwKK2lsIGFmZmljaGUgbGVzIGZpY2hpZXJzIGRlIHN5bWJvbGVzIGNvbXBhdGlibGVzIGF2ZWMgbGUgZm9ybWF0CitcZklkZWJcLXN5bWJvbHMoNSlcZlBcIDpcIGlsIHRyYWl0ZSBlbnRp6HJlbWVudCBsZXMgc3ltYm9sZXMgZCdhcHLocyBsZXMgZXhpZ2VuY2VzCitkZXMg6XRpcXVldHRlcyBzdGFuZGFyZCBldCBzdXBwcmltZSBsZXMg6XRpcXVldHRlcyBkYW5zIHNhIHNvcnRpZS4gQXUKK2NvbnRyYWlyZSwgZGFucyBsZSBtb2RlIG1vZOhsZSAoq1wgdGVtcGxhdGVcILssIG9wdGlvbiBcZklcLXRcZlApLCB0b3VzIGxlcworc3ltYm9sZXMgZXQgbGV1cnMg6XRpcXVldHRlcyAoc3RhbmRhcmQgZXQgaW5jb25udWVzKSBzb250IGNvbnNlcnbpcyBkYW5zIGxhCitzb3J0aWUgZXQg6WNyaXRzIGRhbnMgbGV1ciBmb3JtZSBkJ29yaWdpbmUuCisuU1MgIsl0aXF1ZXR0ZXMgc3RhbmRhcmQgZGUgc3ltYm9sZXMiCisuVFAgCitcZkJvcHRpb25hbFxmUAorVW4gc3ltYm9sZSBtYXJxdekgY29tbWUgb3B0aW9ubmVsIHBldXQgZGlzcGFyYe50cmUgZGUgbGEgYmlibGlvdGjocXVlIOAgdG91dAorbW9tZW50IGV0IG5lIHByb3ZvcXVlcmEgcGFzIGwn6WNoZWMgZGUgXGZCZHBrZ1wtZ2Vuc3ltYm9sc1xmUC4gQ2VwZW5kYW50LCBsZXMKK3N5bWJvbGVzIG9wdGlvbm5lbHMgZGlzcGFydXMgYXBwYXJh7nRyb250IGVuIHBlcm1hbmVuY2UgY29tbWUgbWFucXVhbnRzIGRhbnMKK2xlIGZpY2hpZXIgZGUgZGlmZulyZW5jZXMsIOAgY2hhcXVlIG5vdXZlbGxlIHZlcnNpb24gZHUgcGFxdWV0LiBDZQorY29tcG9ydGVtZW50IHNlcnQgZGUgcmFwcGVsIGF1IHJlc3BvbnNhYmxlIHF1J3VuIHRlbCBzeW1ib2xlIGRvaXQg6nRyZQorc3VwcHJpbekgZHUgZmljaGllciBkZSBzeW1ib2xlcyBvdSBiaWVuIHLpYWpvdXTpIOAgbGEgYmlibGlvdGjocXVlLiBVbgordGVsc3ltYm9sZSBvcHRpb25uZWwsIHBy6WPpZGVtbWVudCBk6WNsYXLpIGNvbW1lIG1hbnF1YW50ICirXCBNSVNTSU5HXCC7KSwKK3LpYXBwYXJh7nRyZSBzb3VkYWluZW1lbnQgZGFucyBsYSB2ZXJzaW9uIHN1aXZhbnRlIGVuIOl0YW50IHJlbWlzIOAgbCfpdGF0CitleGlzdGFudCAoq1wgZXhpc3RpbmdcILspLCBzYW5zIG1vZGlmaWNhdGlvbiBkZSBzYSB2ZXJzaW9uIG1pbmltYWxlLgorCitDZXR0ZSDpdGlxdWV0dGUgZXN0IHV0aWxlIHBvdXIgbGVzIHN5bWJvbGVzIHF1aSBzb250IHByaXbpcyBjYXIgbGV1cgorZGlzcGFyaXRpb24gbmUgcHJvdm9xdWUgcGFzIGRlIGNoYW5nZW1lbnQgZCdpbnRlcmZhY2UgYXBwbGljYXRpdmUgKEFCSSkuIFBhcgorZXhlbXBsZSwgbGVzIHBsdXBhcnQgZGVzIG1vZOhsZXMgZCdpbnN0YW50aWFjaW9uIEMrKyBzb250IGRhbnMgY2V0dGUKK2NhdOlnb3JpZS4gQ29tbWUgdG91dGUgYXV0cmUg6XRpcXVldHRlLCBjZWxsZVwtY2kgcGV1dCBjb21wcm90ZXIgdW5lIHZhbGV1cgorYXJiaXRyYWlyZSBxdWkgcGV1dCBzZXJ2aXIg4CBpbmRpcXVlciBwb3VyIHF1ZWxsZSByYWlzb24gbGUgc3ltYm9sZSBlc3QKK29wdGlvbm5lbC4KKy5UUCAKK1xmQmFyY2g9XGZQXGZJbGlzdGUgZCdhcmNoaXRlY3R1cmVzXGZQCitDZXR0ZSDpdGlxdWV0dGUgcGVybWV0IGRlIHJlc3RyZWluZHJlIGxhIGxpc3RlIGRlcyBhcmNoaXRlY3R1cmVzIGF2ZWMKK2xlc3F1ZWxsZXMgbGUgc3ltYm9sZSBlc3QgY2Vuc+kgZXhpc3Rlci4gTG9yc3F1ZSBsYSBsaXN0ZSBkZXMgeW1ib2xlcyBlc3QKK21pc2Ug4CBqb3VyIGF2ZWMgY2V1eCBk6WNvdXZlcnRzIGRhbnMgbGEgYmlibGlvdGjocXVlLCB0b3VzIGxlcyBzeW1ib2xlcworc3DpY2lmaXF1ZXMgZCdhcmNoaXRlY3R1cmVzIHF1aSBuZSBjb25jZXJuZW50IHBhcyBsJ2FyY2hpdGVjdHVyZSBlbiBjb3Vycworc29udCBpZ25vculzLiBTaSB1biBzeW1ib2xlIHByb3ByZSDgIGwnYXJjaGl0ZWN0dXJlIGVuIGNvdXJzIG4nZXhpc3RlIHBhcworZGFucyBsYSBiaWJsaW90aOhxdWUsIGxlcyBwcm9jZXNzdXMgbm9ybWF1eCBwb3VyIGRlcyBzeW1ib2xlcyBtYW5xdWFudHMKK3MnYXBwbGlxdWVudCBqdXNxdSfgIOl2ZW50dWVsbGVtZW50IHByb3ZvcXVlciBsJ+ljaGVjIGRlCitcZkJkcGtnXC1nZW5zeW1ib2xzXGZQLiBEJ3VuIGF1dHJlIGP0dOksIHNpIGxlIHN5bWJvbGUgcHJvcHJlIOAgdW5lIGFyY2hpdGVjdHVyZQorZXN0IHRyb3V26SBhbG9ycyBxdSdpbCBuJ2VzdCBwYXMgY2Vuc+kgZXhpc3RlciAocGFyY2UgcXVlIGwnYXJjaGl0ZWN0dXJlCitjb3VyYW50ZSBuJ2VzdCBwYXMgbWVudGlvbm7pZSBkYW5zIGwn6XRpcXVldHRlKSwgaWwgZXN0IHJlbmR1IGluZOlwZW5kYW50IGRlCitsJ2FyY2hpdGVjdHVyZSAobCfpdGlxdWV0dGUgZCdhcmNoaXRlY3R1cmUgZXN0IGFiYW5kb25u6WUgZXQgbGUgc3ltYm9sZQorYXBwYXJh7nQgZGFucyBsZSBmaWNoaWVyIGRlIGRpZmbpcmVuY2VzKSBtYWlzIG5vbiBjb25zaWTpcukgY29tbWUKK25vdXZlYXUuIChOZFRcIDogdW5lIGFzcGlyaW5lIHBldXQg6nRyZSBu6WNlc3NhaXJlIGFwcuhzIGxhIGxlY3R1cmUgZGUgY2UKK3BhcmFncmFwaGUpCisKK0RhbnMgbGUgbW9kZSBkZSBmb25jdGlvbm5lbWVudCBwYXIgZOlmYXV0IChwYXMgZW4gbW9kZSCrXCBtb2TobGVcILspLCBzZXVscworbGVzIHN5bWJvbGVzIHNw6WNpZmlxdWVzIGRlIGNlcnRhaW5lcyBhcmNoaXRlY3R1cmVzIHF1aSBjb3JyZXNwb25kZW50IOAKK2wnYXJjaGl0ZWN0dXJlIGNvdXJhbnRlIHNvbnQg6WNyaXRzIGRhbnMgbGUgZmljaGllciBkZSBzeW1ib2xlcy4gQXUKK2NvbnRyYWlyZSwgdG91cyBsZXMgc3ltYm9sZXMgc3DpY2lmaXF1ZXMgZCdhcmNoaXRlY3R1cmVzICh5IGNvbXByaXMgY2V1eCBkZXMKK2FyY2hpdGVjdHVyZXMgZGlmZulyZW50ZXMpIHNlcm9udCDpY3JpdHMgZGFucyBsZSBmaWNoaWVyIGRlIHN5bWJvbGVzLCBkYW5zCitsZSBtb2RlIKtcIG1vZOhsZVwguy4KKworTGUgZm9ybWF0IGRlIFxmSWFyY2hpdGVjdHVyZSBsaXN0XGZQIGVzdCBsZSBt6m1lIHF1ZSBsZSBmb3JtYXQgdXRpbGlz6SBkYW5zIGxlcworY2hhbXBzIFxmSUJ1aWxkXC1EZXBlbmRzXGZQIGRlcyBmaWNoaWVycyBcZklkZWJpYW4vY29udHJvbFxmUCAo4CBsJ2V4Y2VwdGlvbiBkZXMKK2Nyb2NoZXRzIGQnaW5jbHVzaW9uIFtdKS4gUGFyIGV4ZW1wbGUsIGxlIHByZW1pZXIgc3ltYm9sZSBkZSBsYSBsaXN0ZSBxdWkKK3N1aXQgc2VyYSBwcmlzIGVuIGNvbXB0ZSBzdXIgbGVzIGFyY2hpdGVjdHVyZXMgYWxwaGEsIGFtZDY0LCBrZnJlZWJzZFwtYW1kNjQKK2V0IGlhNjQsIG1haXMgbGUgc2Vjb25kIHVuaXF1ZW1lbnQgc3VyIGFybWVsLgorCisgKGFyY2g9YWxwaGEgYW1kNjQga2ZyZWVic2RcLWFtZDY0IGlhNjQpdW5fc3ltYm9sZV9zcOljaWZpcXVlXzY0Yml0QEJhc2UgMS4wCisgKGFyY2g9IWFybWVsKXVuX3N5bWJvbGVfaW5leGlzdGFudF9zdXJfYXJtZWxAQmFzZSAxLjAKKy5UUCAKK1xmQmlnbm9yZVwtYmxhY2tsaXN0XGZQCitkcGtnXC1nZW5zeW1ib2xzIGNvbXBvcnRlIHVuZSBsaXN0ZSBpbnRlcm5lIGRlIHN5bWJvbGVzIGlnbm9y6XMgcXVpIG5lCitkZXZyYWllbnQgcGFzIGFwcGFyYe50cmUgZGFucyBsZXMgZmljaGllcnMgZGUgc3ltYm9sZXMgY2FyIGlscyBzb250IGVuCitn6W7pcmFsIHVuaXF1ZW1lbnQgZGVzIGVmZmV0cyBkZSBib3JkIGRlIGTpdGFpbHMgZGUgbWlzZSBlbiBvZXV2cmUgZGUgbGEKK2NoYe5uZSBkJ291dGlscyBkZSBjb25zdHJ1Y3Rpb24uIFNpLCBwb3VyIHVuZSBy6Wlzb24gcHLpY2lzZSwgdm91cyB2b3VsZXoKK3ZyYWltZW50IGluY2x1cmUgdW4gZGUgY2VzIHN5bWJvbGVzIGRhbnMgbGUgZmljaGllciwgdm91cyBwb3V2ZXogaW1wb3NlcgorcXUnaWwgc29pdCBpZ25vcuksIGF2ZWMgXGZCaWdub3JlXC1ibGFja2xpc3RcZlAuIENlbGEgcGV1dCDqdHJlIHV0aWxlIHBvdXIKK2NlcnRhaW5lcyBiaWJsaW90aOhxdWVzIGRlIGJhcyBuaXZlYXUgdGVsbGVzIHF1ZSBsaWJnY2MuCisuVFAgCitcZkJjKytcZlAKK0luZGlxdWUgdW4gbW90aWYgZGUgc3ltYm9sZSBcZkljKytcZlAuIFZvaXIgbGEgc291c1wtc2VjdGlvbiBcZkJVdGlsaXNhdGlvbiBkZQorY2FuZXZhcyBkZSBzeW1ib2xlc1xmUCBwbHVzIGxvaW4uCisuVFAgCitcZkJzeW12ZXJcZlAKK0luZGlxdWUgdW4gbW90aWYgZGUgc3ltYm9sZSBcZklzeW12ZXJcZlAgKHZlcnNpb24gZGUgc3ltYm9sZSkuCisuVFAgCitcZkJyZWdleFxmUAorSW5kaXF1ZSB1biBtb3RpZiBkZSBzeW1ib2xlIGJhc+kgc3VyIGRlcyBcZklleHByZXNzaW9ucyByYXRpb25uZWxsZXNcZlAuIFZvaXIKK2xhIHNvdXNcLXNlY3Rpb24gXGZCVXRpbGlzYXRpb24gZGVzIG1vdGlmcyBkZSBzeW1ib2xlc1xmUCBwbHVzIGxvaW4uCisuU1MgIlV0aWxpc2F0aW9uIGRlcyBtb3RpZnMgZGUgc3ltYm9sZXMiCisuUAorQXUgY29udHJhaXJlIGQndW5lIGluZGljYXRpb24gbm9ybWFsZSBkZSBzeW1ib2xlLCB1biBtb3RpZiBwZXJtZXQgZGUgY291dnJpcgorZGVzIHN5bWJvbGVzIG11bHRpcGxlcyBkZSBsYSBiaWJsaW90aOhxdWUuIFxmQmRwa2dcLWdlbnN5bWJvbHNcZlAgZXNzYWllIGRlCitmYWlyZSBjb3JyZXNwb25kcmUgY2hhcXVlIG1vdGlmIOAgY2hhcXVlIHN5bWJvbGUgcXVpIG4nZXN0IHBhcyBleHBsaWNpdGVtZW50Citk6WZpbmkgZGFucyBsZSBmaWNoaWVyIGRlIHN5bWJvbGVzLiBE6HMgcXUndW4gbW90aWYgZXN0IHRyb3V26SBxdWkKK2NvcnJlc3BvbmRlIGF1IHN5bWJvbGUsIGwnZW5zZW1ibGUgZGUgc2VzIOl0aXF1ZXR0ZXMgZXQgcHJvcHJp6XTpcyBzb250Cit1dGlsaXPpcyBjb21tZSBzcOljaWZpY2F0aW9uIGRlIGJhc2UgZHUgc3ltYm9sZS4gU2kgYXVjdW4gZGVzIG1vdGlmcyBuZQorY29ycmVzcG9uZCwgbGUgc3ltYm9sZSBzZXJhIGNvbnNpZOly6SBjb21tZSBub3V2ZWF1LgorCitBIG1vdGlmIGVzdCBjb25zaWTpcukgY29tbWUgcGVyZHUgc2kgYXVjdW4gc3ltYm9sZSBuZSBsdWkgY29ycmVzcG9uZCBkYW5zIGxhCitiaWJsaW90aOhxdWUuIFBhciBk6WZhdXQsIGNlbGEgcHJvdm9xdWVyYSB1biDpY2hlYyBkZSBcZkJkcGtnXC1nZW5zeW1ib2xzXGZQCitzJ2lsIGVzdCB1dGlsaXPpIGF2ZWMgbCdvcHRpb24gXGZJXC1jMVxmUCAob3UgdW5lIHZhbGV1ciBwbHVzCivpbGV26WUpLiBDZXBlbmRhbnQsIHNpIGwn6WNoZWMgbidlc3QgcGFzIHNvdWhhaXTpLCBsZSBtb3RpZiBwZXV0IOp0cmUgbWFycXXpCitjb21tZSBvcHRpb25uZWwgYXZlYyBsJ+l0aXF1ZXR0ZSBcZklvcHRpb25hbFxmUC4gRGFucyBjZSBjYXMsIHNpIGxlbW90aWYgbmUKK2NvcnJlc3BvbmQg4CByaWVuLCBpbCBzZXJhIHNpbXBsZW1lbnQgbWVudGlvbm7pIGRhbnMgbGUgZmljaGllciBkZQorZGlmZulyZW5jZXMgY29tbWUgXGZJTUlTU0lOR1xmUCAobWFucXVhbnQpLiBEZSBwbHVzLCBjb21tZSBwb3VyIHRvdXQgYXV0cmUKK3N5bWJvbGUsIGxlIG1vdGlmIHBldXQg6nRyZSBsaW1pdOkg4CBkZXMgYXJjaGl0ZWN0dXJlcyBkb25u6WVzIGF2ZWMKK2wn6XRpcXVldHRlIFxmSWFyY2hcZlAuIFZldWlsbGV6IGNvbnN1bHRlciBsYSBzb3VzXC1zZWN0aW9uIFxmQsl0aXF1ZXR0ZXMKK3N0YW5kYXJkIGRlIHN5bWJvbGVzXGZQIHBvdXIgcGx1cyBkJ2luZm9ybWF0aW9ucy4KKworTGVzIG1vdGlmcyBzb250IHVuZSBleHRlbnNpb24gZHUgZm9ybWF0IGRlIFxmSWRlYlwtc3ltYm9scyg1KVxmUCBlbiBjZSBzZW5zCitxdSdpbHMgbmUgc29udCB2YWxhYmxlcyBxdWUgZGFucyBsZXMgbW9k6GxlcyBkZSBmaWNoaWVycyBkZQorc3ltYm9sZXMuIENlcGVuZGFudCwgbGEgcGFydGllIGNvbXBvcnRhbnQgbGUgbm9tIGRlIHN5bWJvbGUgZXN0IHV0aWxpc+llCitjb21tZSB1bmUgZXhwcmVzc2lvbiDgIGZhaXJlIGNvcnJlc3BvbmRyZSDgIFxmSW5hbWVAdmVyc2lvblxmUCBkdSBzeW1ib2xlCity6WVsLiBBZmluIGRlIGZhaXJlIGxhIGRpc3RpbmN0aW9uIGVudHJlIGxlcyBkaWZm6XJlbnRzIHR5cGVzIGRlIG1vdGlmcywgdW4KK21vdGlmIHNlcmEgdXN1ZWxsZW1lbnQgbWFycXXpIGF2ZWMgdW5lIOl0aXF1ZXR0ZSBzcOljaWFsZS4KKworQWN0dWVsbGVtZW50LCBcZkJkcGtnXC1nZW5zeW1ib2xzXGZQIGfocmVzIHRyb2lzIHR5cGUgZGUgYmFzZSBkZSBtb3RpZnNcIDoKKy5UUCAgMworXGZCYysrXGZQCitDZSBtb3RpZiBlc3QgcmVw6XLpIHBhciBsJ+l0aXF1ZXR0ZSBcZkljKytcZlAuIElsIG5lIHNlcmEgY29tcGFy6SBxdSdhdXgKK3N5bWJvbGVzIEMrKyBhdmVjIGxldXIgbm9tIGRlIHN5bWJvbGUgY29tcGxldCAoZGVtYW5nbGVkKSB0ZWwgcXUnYWZmaWNo6QorYXZlYyBsJ3V0aWxpdGFpcmUgXGZCYysrZmlsdFxmUC4gQ2UgbW90aWYgZXN0IHRy6HMgcHJhdGlxdWUgcG91ciBmYWlyZQorY29ycmVzcG9uZHJlIGxlcyBzeW1ib2xlcyBkb250IGxlcyBub21zIHJhY2NvdXJjaXMgKG1hbmdsZWQpIHBldXQgZGlmZulyZXIKK3NlbG9uIGxlcyBhcmNoaXRlY3R1cmVzIGJpZW4gcXVlIGxldXJzIG5vbXMgY29tcGxldCByZXN0ZW50IGxlcyBt6m1lcy4gVW4KK3RlbCBncm91cGUgZGUgc3ltYm9sZXMgc29udCBsZXMgXGZJbm9uXC12aXJ0dWFsIHRodW5rc1xmUCBwb3Ugcmxlc3F1ZWxzIGxlcworZOljYWxhZ2VzIChvZmZzZXRzKSBzcOljaWZpcXVlcyBkJ2FyY2hpdGVjdHVyZXMgc29udCBpbmNsdXMgZGFucyBsZXVyIG5vbQorY291cnQuIFVuZSBtYW5pZmVzdGF0aW9uICB1c3VlbGxlIGRlIGNlIGNhcyBlc3QgbGUgZGVzdHJ1Y3RldXIgdmlydHVlbCBxdWksCitlbiCrXCBkaWFtb24gaW5oZXJpdGFuY2VcILsgKE5kVDogaW50cmFkdWlzaWJsZT8pIGEgYmVzb2luIGQndW4gc3ltYm9sZQorq1wgdGh1bmtcILsgKE5kdDogZGl0dG8pIG5vbiB2aXJ0dWVsLiBQYXIgZXhlbXBsZSwgbeptZSBzaQorX1pUaG44X04zTlNCNkNsYXNzREQxRXZAQmFzZSBzdXIgdW5lIGFyY2hpdGVjdHVyZSAzMmJpdCBlc3QgaWRlbnRpcXVlIOAKK19aVGhuMTZfTjNOU0I2Q2xhc3NERDFFdkBCYXNlIHN1ciB1bmUgYXJjaGl0ZWN0dXJlIDY0Yml0LCBsZXMgZGV1eCBwZXV2ZW50CivqdHJlIGluZGlxdelzIGF2ZWMgbGUgbeptZSBtb3RpZiBcZkljKytcZlBcIDoKKy5SUworLlBQCitsaWJkdW1teS5zby4xIGxpYmR1bW15MSAjTUlOVkVSIworIFsuLi5dCisgKGMrKykibm9uXC12aXJ0dWFsIHRodW5rIHRvIE5TQjo6Q2xhc3NEOjp+Q2xhc3NEKClAQmFzZSIgMS4wCisgWy4uLl0KKy5QCitMZSBub20gY29tcGxldCBjaVwtZGVzc3VzIHBldXQg6nRyZSBvYnRlbnUgYXZlYyBsYSBjb21tYW5kZSBzdWl2YW50ZVwgOgorLlBQCisgJCBlY2hvICdfWlRobjhfTjNOU0I2Q2xhc3NERDFFdkBCYXNlJyB8IGMrK2ZpbHQKKy5QCitWZXVpbGxleiBub3RlciBxdWUsIGJpZW4gcXVlIGxlIG5vbSBjb21wbGV0IHNvaXQgdW5pcXVlIGRhbnMgbGEgYmlibGlvdGjocXVlCitwYXIgZOlmaW5pdGlvbiwgY2VsYSBuJ2VzdCBwYXMgZm9yY+ltZW50IHZyYWkgcG91ciBsZSBub20gcmFjY291cmNpLiBEZXV4CitzeW1ib2xlcyBy6WVscyBkaWZm6XJlbnRzIHBldXZlbnQgYXZvaXIgbGUgbeptZSBub20gcmFjY291cmNpLiBDJ2VzdCBwYXIKK2V4ZW1wbGUgbGUgY2FzIGF2ZWMgbGVzIHN5bWJvbGVzIKtcIHRodW5rXCC7IG5vbiB2aXJ0dWVscyBkYW5zIGRlcworY29uZmlndXJhdGlvbnMgZCdo6XJpdGFnZSBjb21wbGV4ZXMgb3UgYXZlYyBsYSBwbHVwYXJ0IGRlcyBjb25zdHJ1Y3RldXJzIGV0CitkZXN0cnVjdGV1cnMgKHB1aXNxdWUgZysrIGNy6WUgdXN1ZWxsZW1lbnQgZGV1eCBzeW1ib2xlcyBy6WVscyBwb3VyCitldXgpLiBDZXBlbmRhbnQsIGNvbW1lIGNlcyBjb2xsaXNpb25zIHNlIHByb2R1aXNlbnQgYXUgbml2ZWF1IGRlIGwnaW50ZXJmYWNlCithcHBsaWNhdGl2ZSBiaW5haXJlIChBQkkpLCBlbGxlIG5lIGRldnJhaWVudCBwYXMgZOlncmFkZXIgbGEgcXVhbGl06SBkdQorZmljaGllciBkZSBzeW1ib2xlcy4KKy5SRQorLlRQIAorXGZCc3ltdmVyXGZQCitDZSBtb3RpZiBlc3QgaW5kaXF16SBwYXIgbCfpdGlxdWV0dGUgXGZJc3ltdmVyXGZQLiBMZXMgYmlibGlvdGjocXVlcyBiaWVuCitn6XLpZXMgdXRpbGlzZW50IGRlcyBzeW1ib2xlcyB2ZXJzaW9ubulzIG/5IGNoYXF1ZSB2ZXJzaW9uIGNvcnJlc3BvbmQg4CBsYQordmVyc2lvbiBhbW9udCDgIGxhcXVlbGxlIGxlIHN5bWJvbGUgYSDpdOkgYWpvdXTpLiBTaSBjJ2VzdCBsZSBjYXMsIGlsIGVzdAorcG9zc2libGUgZCd1dGlsaXNlciB1biBtb3RpZiBcZklzeW12ZXJcZlAgcG91ciBmYWlyZSBjb3JyZXNwb25kcmUgY2hhcXVlCitzeW1ib2xlIGFzc29jaellIOAgbGEgdmVyc2lvbiBzcOljaWZpcXVlLiBQYXIgZXhlbXBsZVwgOgorLlJTCisuUFAKK2xpYmMuc28uNiBsaWJjNiAjTUlOVkVSIworIChzeW12ZXIpR0xJQkNfMi4wIDIuMAorIFsuLi5dCisgKHN5bXZlcilHTElCQ18yLjcgMi43CisgYWNjZXNzQEdMSUJDXzIuMCAyLjIKKy5QUAorVG91cyBsZXMgc3ltYm9sZXMgYXNzb2Np6XMgYXZlYyBsZXMgdmVyc2lvbnMgR0xJQkNfMi4wIGV0IEdMSUJDXzIuNworY29uZHVpcm9udCByZXNwZWN0aXZlbWVudCDgIGRlcyB2ZXJzaW9ucyBtaW5pbWFsZXMgZGUgMi4wIGV0IDIuNywg4AorbCdleGNlcHRpb24gZHUgc3ltYm9sZSBhY2Nlc3NAR0xJQkNfMi4wLiBDZSBkZXJuaWVyIGFt6G5lIOAgdW5lIGTpcGVuZGFuY2UKK21pbmltYWxlIHN1ciBsYSB2ZXJzaW9uIDIuMiBkZSBsaWJjNiBiaWVuIHF1J2lsIHNvaXQgZGFucyBsZSBzY29wZSBkZQorq1wgKHN5bXZhcilHTElCQ18yLjBcILsuIENlbGEgZXN0IGT7IGF1IGZhaXQgcXVlIGxlcyBzeW1ib2xlcyBzcOljaWZpcXVlcworcHJlbm5lbnQgbGUgcGFzIHN1ciBsZXMgbW90aWZzLgorLlAKK1ZldWlsbGV6IG5vdGVyIHF1ZSBsZXMgYW5jaWVucyBtb3RpZnMgYXZlYyBjYXJhY3TocmVzIGfpbulyaXF1ZXMgKGluZGlxdelzCitzb3VzIGxhIGZvcm1lIKtcICpAdmVyc2lvblwguykgZGFucyBsZSBjaGFtcCBkZSBub20gZGUgc3ltYm9sZSBzb250IHRvdWpvdXJzCitn6XLpcy4gTGEgbm91dmVsbGUgc3ludGF4ZSCrXCAoc3ltdmVyfG9wdGlvbmFsKXZlcnNpb25cILsgZG9pdCB0b3V0ZWZvaXMgbGV1cgor6nRyZSBwculm6XLpZS4gUGFyIGV4ZW1wbGUsIKtcICpAR0xJQkNfMi4wIDIuMFwguyBkZXZyYWl0IOp0cmUg6WNyaXQgc291cyBsYQorZm9ybWUgq1wgKHN5bXZlcnxvcHRpb25hbClHTElCQ18yLjAgMi4wXCC7IHNpIHVuIGNvbXBvcnRlbWVudCBhbmFsb2d1ZSBlc3QKK3JlY2hlcmNo6S4KKy5SRQorLlRQIAorXGZCcmVnZXhcZlAKK0xlcyBtb3RpZnMgZCdleHByZXNzaW9ucyByYXRpb25uZWxsZXMgc29udCBpbmRpcXXpcyBwYXIgbCfpdGlxdWV0dGUKK1xmSXJlZ2V4XGZQLiBMYSBjb3JyZXNwb25kYW5jZSBzZSBmYWl0IGF2ZWMgdW5lIGV4cHJlc3Npb24gcmF0aW9ubmVsbGUgUGVybCBzdXIKK2xlIGNoYW1wIGRlIG5vbSBkZSBzeW1ib2xlLiBsYSBjb3JyZXNwb25kYW5jZSBlc3QgZmFpdGUgdGVsbGUgcXVlbGxlIGV0IGlsCituZSBmYXV0IGRvbmMgcGFzIG91YmxpZXIgbGUgY2FyYWN06HJlIFxmSV5cZlAsIHNpbm9uIGxhIGNvcnJlc3BvbmRhbmNlIGVzdAorZmFpdGUgc3VyIG4naW1wb3J0ZSBxdWVsbGUgcGFydGllIGR1IHN5bWJvbGUgcullbCBcZkluYW1lQHZlcnNpb25cZlAuIFBhcgorZXhlbXBsZVwgOgorLlJTCisuUFAKK2xpYmR1bW15LnNvLjEgbGliZHVtbXkxICNNSU5WRVIjCisgKHJlZ2V4KSJebXlzdGFja18uKkBCYXNlJCIgMS4wCisgKHJlZ2V4fG9wdGlvbmFsKSJwcml2YXRlIiAxLjAKKy5QCitMZXMgc3ltYm9sZXMgdGVscyBxdWUgq1wgbXlzdGFja19uZXdAQmFzZVwguywgq1wgbXlzdGFja19wdXNoQEJhc2VcILssCiurXCBteXN0YWNrX3BvcEBCYXNlXCC7LCBldGMuIHNlcm9udCBlbiBjb3JyZXNwb25kYW5jZSBhdmVjIGxlIHByZW1pZXIgbW90aWYKK2Fsb3JzIHF1ZSwgcGFyIGV4ZW1wbGUsIKtcIG5nX215c3RhY2tfbmV3QEJhc2VcILsgbmUgbGUgc2VyYSBwYXMuIExlIGRldXhp6G1lCittb3RpZiBjb3JyZXNwb25kcmEgcG91ciB0b3VzIGxlcyBzeW1ib2xlcyBxdWkgY29tcG9ydGVudCBsYSBjaGHubmUKK6tcIHByaXZhdGVcILsgZGFucyBsZXVyIG5vbSBldCBsZXMgY29ycmVzcG9uZGFuY2VzIGjpcml0ZXJvbnQgZGUgbCfpdGlxdWV0dGUKK1xmSW9wdGlvbmFsXGZQIGRlcHVpcyBsZSBtb3RpZi4KKy5SRQorLlAKK0xlcyBtb3RpZnMgZGUgYmFzZSBpbmRpcXXpcyBwculj6WRlbW1lbnQgcGV1dmVudCDqdHJlIGNvbWJpbulzIGF1CitiZXNvaW4uIERhbnMgY2UgY2FzLCBpbHMgc29udCB0cmFpdOlzIGRhbnMgbCdvcmRyZSBv+SBsZXMg6XRpcXVldHRlcyBzb250CitpbmRpcXXpZXMuIFBhciBleGVtcGxlLCBsZXMgZGV1eCBtb3RpZnMKKy5QUAorIChjKyt8cmVnZXgpIl5OU0E6OkNsYXNzQTo6UHJpdmF0ZTo6cHJpdm1ldGhvZFxlZFxlKGludFxlKUBCYXNlIiAxLjAKKyAocmVnZXh8YysrKU4zTlNBNkNsYXNzQTdQcml2YXRlMTFwcml2bWV0aG9kXGVkRWlAQmFzZSAxLjAKKy5QCitTZXJvbnQgZW4gY29ycmVzcG9uZGFuY2UgYXZlYyBsZXMgc3ltYm9sZXMKK6tcIF9aTjNOU0E2Q2xhc3NBN1ByaXZhdGUxMXByaXZtZXRob2QxRWlAQmFzZSJcILsgZXQKK6tcIF9aTjNOU0E2Q2xhc3NBN1ByaXZhdGUxMXByaXZtZXRob2QyRWlAQmFzZVwguy4gTG9ycyBkZSBsYSBjb3JyZXNwb25kYW5jZQorYXZlYyBsZSBwcmVtaWVyIG1vdGlmLCBsZSBzeW1ib2xlIGNvbXBsZXQgZXN0IGQnYWJvcmQgZOljb2TpIGVuIHRhbnQgcXVlCitzeW1ib2xlIEMrKywgcHVpcyBjb21w6XLpIOAgbCdleHByZXNzaW9uIHJhdGlvbm5lbGxlLiBEJ3VuIGF1dHJlIGP0dOksIGxvcnMKK2RlIGxhIGNvcnJlc3BvbmRhbmNlIGF2ZWMgbGUgZGV1eGnobWUgbW90aWYsIGwnZXhwcmVzc2lvbiByYXRpb25uZWxsZSBlc3QKK2NvbXBhcullIGF1IG5vbSBkZSBzeW1ib2xlIGJydXQsIHB1aXMgbGUgc3ltYm9sZSBlc3QgdGVzdOkgZW4gdGFudCBxdWUKK3N5bWJvbGUgQysrIGVuIHRlbnRhbnQgZGUgbGUgZOljb2Rlci4gTCfpY2hlYyBkZSBuJ2ltcG9ydGUgcXVlbCBtb3RpZiBkZQorYmFzZSBwcm92b3F1ZXJhIGwn6WNoZWMgZGUgbCdlbnNlbWJsZSBkdSBtb3RpZi4gQWluc2ksIHBhciBleGVtcGxlLAorq1wgX19OM05TQTZDbGFzc0E3UHJpdmF0ZTExcHJpdm1ldGhvZFxlZEVpQEJhc2VcILsgbmUgY29ycmVzcG9uZHJhIOAgYXVjdW4gZGVzCittb3RpZnMgY2FyIGNlIG4nZXN0IHBhcyB1biBzeW1ib2xlIEMrKyB2YWxhYmxlIChOZHRcIDpcIGonYWkgbCdpbXByZXNzaW9uIGRlCit0cmFkdWlyZSBkdSBLbGluZ29uXCAhKS4KKy5QCitFbiBn6W7pcmFsLCBsZXMgbW90aWZzIHNvbnQgZGl2aXPpcyBlbiBkZXV4IGdyb3VwZXNcIDpcIGxlcyBhbGlhcyAoXGZJYysrXGZQIGV0CitcZklzeW12ZXJcZlAgZGUgYmFzZSkgZXQgbGVzIG1vdGlmcyBn6W7pcmlxdWVzIChcZklyZWdleFxmUCBldCB0b3V0ZXMgbGVzCitjb21iaW5haXNvbnMgZGUgbW90aWZzIGRlIGJhc2UgbXVsdGlwbGVzKS4gTGEgY29ycmVzcG9uZGFuY2UgZGUgbW90aWZzIGJhc+lzCitzdXIgZGVzIGFsaWFzIGVzdCByYXBpZGUgKDAoMSkpIGFsb3JzIHF1ZSBsZXMgbW90aWZzIGfpbulyaXF1ZXMgc29udCAwKE4pIChOCivpdGFudCBsZSBub21icmUgZGUgbW90aWZzIGfpbulyaXF1ZXMpIHBvdXIgY2hhcXVlIHN5bWJvbGUuIEVuIGNvbnPpcXVlbmNlLAoraWwgZXN0IGTpY29uc2VpbGzpIGQnYWJ1c2VyIGRlcyBtb3RpZnMgZ+lu6XJpcXVlcy4KKy5QCitMb3JzcXVlIHBsdXNpZXVycyBtb3RpZnMgY29ycmVzcG9uZGVudCBwb3VyIGxlIG3qbWUgc3ltYm9sZSBy6WVsLCBsZXMgYWxpYWFzCisoZCdhYm9yZCBcZkljKytcZlAsIHB1aXMgXGZJc3ltdmVyXGZQKSBzb250IHByaXZpbOlnaelzIHBhciByYXBwb3J0IGF1eCBtb3RpZnMKK2fpbulyaXF1ZXMuIENldXhcLWNpIHNvbnQgZXNzYXnpcyBkYW5zIGwnb3JkcmUgb/kgaWxzIGFwcGFyYWlzc2VudCBkYW5zIGxlCittb2TobGUgZGUgZmljaGllciBkZSBzeW1ib2xlLCBlbiBzJ2Fycup0YW50IOAgbGEgcHJlbWnocmUKK2NvcnJlc3BvbmRhbmNlLiBWZXVpbGxleiBub3RlciwgY2VwZW5kYW50LCBxdWUgbGEgbW9kaWZpY2F0aW9uIG1hbnVlbGxlIGRlCitsJ29yZHJlIGRlcyBlbnRy6WVzIGRlIGZpY2hpZXJzIG4nZXN0IHBhcyByZWNvbW1hbmTpZSBjYXIgXGZCZHBrZ1wtZ2Vuc3ltYm9sc1xmUAorY3LpZSBkZXMgZmljaGllcnMgZGUgZGlmZulyZW5jZXMgZCdhcHLocyBsJ29yZHJlIGFscGhhYul0aWNvXC1udW3pcmlxdWUgZGUKK2xldXIgbm9tLgorLlNTICJVdGlsaXNhdGlvbiBkZXMgaW5jbHVzaW9ucyIKKy5QCitMb3JzcXUndW4gamV1IGRlIHN5bWJvbGVzIGV4cG9ydOlzIHZhcmllIHNlbG9uIGxlcyBhcmNoaXRlY3R1cmVzLCBpbCBlc3QKK3NvdXZlbnQgcGV1IGVmZmljYWNlIGQndXRpbGlzZXIgdW4gc2V1bCBmaWNoaWVyIGRlIHN5bWJvbGVzLiAgUG91ciBjb3V2cmlyCitjZXMgY2FzLCB1bmUgZGlyZWN0aXZlIGQnaW5jbHVzaW9uIHBldXQgZGV2ZW5pciB1dGlsZSBkYW5zIGNlcnRhaW5zIGNhcy4KKy5JUCBcKGJ1IDQKK0lsIGVzdCBwb3NzaWJsZSBkZSBmYWN0b3Jpc2VyIGxhIHBhcnRpZSBjb21tdW5lIGRhbnMgdW4gZmljaGllciBleHRlcm5lCitkb25u6SBldCBsJ2luY2x1cmUgZGFucyBsZSBmaWNoaWVyIFxmSXBhcXVldFxmUC5zeW1ib2xzLlxmSWFyY2hcZlAgYXZlYyB1bmUKK2RpcmVjdGl2ZSCrXCBpbmNsdWRlXCC7IHV0aWxpc+llIGRlIGxhIG1hbmnocmUgc3VpdmFudGVcIDoKKworI2luY2x1ZGUgIlxmSXBhcXVldHNcZlAuc3ltYm9scy5jb21tb24iCisuSVAgXChidQorTGEgZGlyZWN0aXZlIGQnaW5jbHVzaW9uIHBldXQg6WdhbGVtZW50IOp0cmUg6XRpcXVldOllIGNvbW1lIHRvdXQgYXV0cmUKK3N5bWJvbGVcIDoKKworKHRhZ3wuLnx0YWdOKSNpbmNsdWRlICJmaWxlXC10b1wtaW5jbHVkZSIKKworQXMgYSByZXN1bHQsIGFsbCBzeW1ib2xzIGluY2x1ZGVkIGZyb20gXGZJZmlsZVwtdG9cLWluY2x1ZGVcZlAgd2lsbCBiZSBjb25zaWRlcmVkCit0byBiZSB0YWdnZWQgd2l0aCBcZkl0YWdcZlAgLi4gXGZJdGFnTlxmUCBieSBkZWZhdWx0LiBZb3UgY2FuIHVzZSB0aGlzIGZlYXR1cmUgdG8KK2NyZWF0ZSBhIGNvbW1vbiBcZklwYWNrYWdlXGZQLnN5bWJvbHMgZmlsZSB3aGljaCBpbmNsdWRlcyBhcmNoaXRlY3R1cmUgc3BlY2lmaWMKK3N5bWJvbCBmaWxlczoKKworICBzeW1ib2xlX2NvbW11bjFAQmFzZSAxLjAKKyAoYXJjaD1hbWQ2NCBpYTY0IGFscGhhKSNpbmNsdWRlICJwYWNrYWdlLnN5bWJvbHMuNjRiaXQiCisgKGFyY2g9IWFtZDY0ICFpYTY0ICFhbHBoYSkjaW5jbHVkZSAicGFja2FnZS5zeW1ib2xzLjMyYml0IgorICBzeW1ib2xlX2NvbW11bjJAQmFzZSAxLjAKKy5QCitMZXMgZmljaGllcnMgZGUgc3ltYm9sZXMgc29udCBsdXMgbGlnbmUgcGFyIGxpZ25lIGV0IGxlcyBkaXJlY3RpdmVzCitkJ2luY2x1c2lvbiBzb250IHRyYWl06WVzIGTocyBxdSdlbGxlcyBzb250IHRyb3V26WVzLiBFbiBjb25z6XF1ZW5jZSwgbGUKK2NvbnRlbnUgZHUgZmljaGllciBkJ2luY2x1c2lvbiBwZXV0IHJlbXBsYWNlciB1bmUgZOlmaW5pdGlvbiBxdWkgcHLpY+hkZQorbCdpbmNsdXNpb24gYXQgcXVlIGNlIHF1aSBzdWl0IGwnaW5jbHVzaW9uIHBldXQgcmVtcGxhY2VyIHVuZSBk6WZpbml0aW9uCitxdSdlbGxlIGFqb3V0YWl0LiBUb3V0IHN5bWJvbGUgKG91IG3qbWUgdW5lIGF1dHJlIGRpcmVjdGl2ZSBkJ2luY2x1c2lvbikKK2RhbnMgbGUgZmljaGllciBpbmNsdXMgcGV0IGTpZmluaXIgZGVzIOl0aXF1ZXR0ZXMgc3VwcGzpbWVudGFpcmVzIG91CityZW1wbGFjZXIgbGVzIHZhbGV1cnMgZCfpdGlxdWV0dGVzIGjpcml06WVzLCBkYW5zIHNhIGTpZmluaXRpb24KK2Qn6XRpcXVldHRlcy4uIENlcGVuZGFudCwgcG91ciB1biBzeW1ib2xlIGRvbm7pLCBpbCBuJ2V4aXN0ZSBwYXMgZGUgbel0aG9kZQorcGVybWV0dGFudCBkZSByZW1wbGFjZXIgdW5lIGRlIHNlcyDpdGlxdWV0dGVzIGjpcml06WVzLgorLlAKK1VuIGZpY2hpZXIgaW5jbHVzIHBldXQgcmVwcmVuZHJlIGxhIGxpZ25lIGQnZW5cLXTqdGUgcXVpIGNvbnRpZW50IGxlCiurXCBTT05BTUVcILsgZGUgbGEgYmlibGlvdGjocXVlLiBEYW5zIGNlIGNhcywgY2VsYSByZW1wbGFjZSB0b3V0ZSBsaWduZQorZCdlblwtdOp0ZSBwculj6WRlbnRlLiBJbCBlc3QgY2VwZW5kYW50IGTpY29uc2VpbGzpIGRlIGR1cGxpcXVlciBsZXMgbGlnbmVzCitkJ2VuXC106nRlLiBVbmUgZmHnb24gZGUgbGUgZmFpcmUgZXN0IGxhIG3pdGhvZGUgc3VpdmFudGVcIDoKKy5QUAorI2luY2x1ZGUgImxpYm1hY2hpbjEuc3ltYm9scy5jb21tb24iCisgc3ltYm9sZXNfc3BlY2lmaXF1ZV9hcmNoaXRlY3R1cmVAQmFzZSAxLjAKKy5TUyAiQm9ubmVzIHByYXRpcXVlcyBkZSBnZXN0aW9uIGRlcyBiaWJsaW90aOhxdWVzIgorLlAKK3VuZSBiaWJsaW90aOhxdWUgYmllbiBtYWludGVudWUgb2ZmcmUgbGVzIHBvc3NpYmlsaXTpcyBzdWl2YW50ZXNcIDoKKy5JUCBcKGJ1IDQKK3NvbiBpbnRlcmZhY2UgZGUgcHJvZ3JhbW1hdGlvbiAoQVBJKSBlc3Qgc3RhYmxlIChsZXMgc3ltYm9sZXMgcHVibGljcyBuZQorc29udCBqYW1haXMgc3VwcHJpbelzIGV0IGxlcyBjaGFuZ2VtZW50IG5lIGNvbmNlcm5hbnQgcXVlIGRlcyBham91dHMgZGUKK25vdXZlYXV4IHN5bWJvbGVzIHB1YmxpY3MpIGV0IGxlcyBtb2RpZmljYXRpb25zIHByb3ZvcXVhbnQgdW4KK2luY29tcGF0aWJpbGl06SBkb2l2ZW50IOp0cmUgY29tYmlu6XMgYXZlYyB1biBjaGFuZ2VtZW50IGRlIFNPTkFNRVwgOworLklQIFwoYnUgNAoraWTpYWxlbWVudCwgZWxsZSB1dGlsaXNlIGxlIHZlcnNpb25uZW1lbnQgZGVzIHN5bWJvbGVzIHBvdXIgZ2FyYW50aXIgbGEKK3N0YWJpbGl06SBkZSBpbnRlcmZhY2UgYXBwbGljYXRpdmUgYmluYWlyZSAoQUJJKSBtYWxncukgc2VzIG1vZGlmaWNhdGlvbnMKK2ludGVybmVzIGV0IGwnZXh0ZW5zaW9uIGRlIHNvbiBBUElcIDsKKy5JUCBcKGJ1IDQKK2VsbGUgbidleHBvcnRlIHBhcyBsZXMgc3ltYm9sZXMgcHJpdulzIChhZmluIGRlIGNvbnRvdXJuZXIgY2VsYSwgZGUgdGVscworc3ltYm9sZXMgcGV1dmVudCDqdHJlIOl0aXF1ZXTpcyBjb21tZSBvcHRpb25uZWxzKQorLlAKK0VuIG1haW50ZW5hbnQgbGUgZmljaGllciBkZSBzeW1ib2xlcywgaWwgZXN0IGZhY2lsZSBkJ2VuIHZvaXIgYXBwYXJh7nRyZSBldAorZGlzcGFyYe50cmUuIENlcGVuZGFudCwgaWwgZXN0IHBsdXMgZGlmZmljaWxlIGRlIGNvbnRy9GxlciBsYSBwculzZW5jZQorZCfpdmVudHVlbGxlcyBtb2RpZmljYXRpb25zIGQnQVBJIG91IEFCSS4gRW4gY29uc+lxdWVuY2UsIGxlIG1haW50ZW5ldXIgZG9pdAorY29udHL0bGVyIHNvaWduZXVzZW1lbnQgbGUgam91cm5hbCBkZXMgbW9kaWZpY2F0aW9ucyBhbW9udCwg4CBsYSByZWNoZXJjaGUKK2RlIGNhcyBv+SB1bmUgc2FpbmUgZ2VzdGlvbiBkZXMgYmlibGlvdGjocXVlIHB1dCBhdm9pciDpdOkgb21pc2UuIFNpIGRlcworcHJvYmzobWVzIHBvdGVudGllbHMgc29udCBk6WNvdXZlcnRzLCBsJ2F1dGV1ciBhbW9udCBkb2l0IOp0cmUgYXZlcnRpKGUpIGNhcgordW5lIGNvcnJlY3Rpb24gZW4gYW1vbnQgZXN0IG1laWxsZXVyZSBxdSd1biB0cmF2YWlsIHNw6WNpZmlxdWUgYXUgcGFxdWV0CitEZWJpYW4uCisuU0ggT1BUSU9OUworLlRQIAorXGZCXC1QXGZQXGZJculwZXJ0b2lyZVwtY29uc3RydWN0aW9uXC1wYXF1ZXRcZlAKK0FuYWx5c2UgZGUgXGZJculwZXJ0b2lyZVwtY29uc3RydWN0aW9uXC1wYXF1ZXRcZlAsIHBsdXT0dCBxdWUgZGViaWFuL3RtcC4KKy5UUCAKK1xmQlwtcFxmUFxmSXBhcXVldFxmUAorROlmaW5pdCBsZSBub20gZHUgcGFxdWV0LiBSZXF1aXMgc2kgcGx1cyBkJ3VuIHBhcXVldCBiaW5haXJlIGVzdCBpbmRpcXXpCitkYW5zIGRlYmlhbi9jb250cm9sIChvdSBzJ2lsIG4neSBhIHBhcyBkZSBmaWNoaWVyIGRlYmlhbi9jb250cm9sKS4KKy5UUCAKK1xmQlwtdlxmUFxmSXZlcnNpb25cZlAKK0TpZmluaXQgbGEgdmVyc2lvbiBkdSBwYXF1ZXQuIExhIHZhbGV1ciBwYXIgZOlmYXV0IGVzdCBsYSB2ZXJzaW9uIGV4dHJhaXRlCitkZSBkZWJpYW4vY2hhbmdlbG9nLiBDZSBwYXJhbeh0cmUgZXN0IHJlcXVpcyBzaSBsZSBwcm9ncmFtbWUgZXN0IGxhbmPpIGVuCitkZWhvcnMgZGUgbCdhcmJvcmVzY2VuY2Ugc291cmNlIGQndW4gcGFxdWV0LgorLlRQIAorXGZCXC1lXGZQXGZJZmljaGllclwtYmlibGlvdGjocXVlXGZQCitOJ2FuYWx5c2UgcXVlIGxlcyBiaWJsaW90aOhxdWVzIGV4cGxpY2l0ZW1lbnQgbWVudGlvbm7pZXMgYXUgbGlldSBkZQorcmVjaGVyY2hlciB0b3V0ZXMgbGVzIGJpYmxpb3Ro6HF1ZXMgcHVibGlxdWVzLiBVbmUgZXhwcmVzc2lvbiByYXRpb25uZWxsZQorcGV1dCDqdHJlIHV0aWxpc+llIGRhbnMgXGZJZmljaGllclwtYmlibGlvdGjocXVlXGZQIHBvdXIgY29ycmVzcG9uZHJlIOAKK3BsdXNpZXVycyBiaWJsaW90aOhxdWVzIGF2ZWMgdW4gc2V1bCBwYXJhbeh0cmUgKGRhbnMgbGUgY2FzIGNvbnRyYWlyZSwKK3BsdXNpZXVycyBwYXJhbeh0cmVzIFxmQlwtZVxmUCBzb250IG7pY2Vzc2FpcmVzKS4KKy5UUCAKK1xmQlwtSVxmUFxmSW5vbVwtZGVcLWZpY2hpZXJcZlAKK1V0aWxpc2UgXGZJbm9tXC1kZVwtZmljaGllclxmUCBjb21tZSBmaWNoaWVyIGRlIHLpZulyZW5jZSBwb3VyIGNy6WVyIGxlIGZpY2hpZXIKK2RlIHN5bWJvbGVzIOAgaW506WdyZXIgZGFucyBsZSBwYXF1ZXQgbHVpXC1t6m1lLgorLlRQIAorXGZCXC1PXGZQCitBZmZpY2hlIGxlIGZpY2hpZXIgZGUgc3ltYm9sZXMgY3Lp6SBzdXIgbGEgc29ydGllIHN0YW5kYXJkIGF1IGxpZXUgZGUKK2wn6WNyaXJlIGRhbnMgbCdhcmJvcmVzY2VuY2Ugc291cmNlIGR1IHBhcXVldC4KKy5UUCAgCitcZkJcLU9cZlBcZklub21cLWRlXC1maWNoaWVyXGZQCitFbnJlZ2lzdHJlIGxlIGZpY2hpZXIgZGUgc3ltYm9sZXMgY3Lp6SBhdmVjIGxlIG5vbSBcZklub21cLWRlXC1maWNoaWVyXGZQLiBTaQorXGZJbm9tXC1kZVwtZmljaGllclxmUCBleGlzdGUgZOlq4Cwgc29uIGNvbnRlbnUgc2VyYSB1dGlsaXPpIGNvbW1lIGJhc2UgcG91ciBsZQorZmljaGllciBjcunpLiBDZXR0ZSBmb25jdGlvbm5hbGl06SBwZXJtZXQgZGUgbWV0dHJlIOAgam91ciBsZSBmaWNoaWVyIGRlCitzeW1ib2xlcyBwb3VyIHF1J2lsIGNvcnJlc3BvbmRlIOAgdW5lIG5vdXZlbGxlIHZlcnNpb24gYW1vbnQgZGUgbGEKK2JpYmxpb3Ro6HF1ZS4KKy5UUCAKK1xmQlwtdFxmUAoryWNyaXQgbGUgZmljaGllciBkZSBzeW1ib2xlcyBlbiBtb2RlIG1vZOhsZSBwbHV09HQgcXVlIGRhbnMgdW4gZm9ybWF0Citjb21wYXRpYmxlIGF2ZWMgXGZJZGViXC1zeW1ib2xzKDUpXGZQLiBMYSBkaWZm6XJlbmNlIG1hamV1cmUgculzaWRlIGRhbnMgbGUgZmFpdAorcXVlIGxlcyBub21zIGRlIHN5bWJvbGVzIGV0IGxlcyDpdGlxdWV0dGVzIHNvbnQg6WNyaXRzIGRhbnMgbGV1ciBmb3JtZQorZCdvcmlnaW5lIGF1IGxpZXUgZCfqdHJlIGludGVycHLpdOlzLCBhdmVjIHLpZHVjdGlvbiBkZXMg6XRpcXVldHRlcyBlbiBtb2RlCitkZSBjb21wYXRpYmlsaXTpLiBEZSBwbHVzLCBjZXJ0YWlucyBzeW1ib2xlcyBwZXV2ZW50IOp0cmUgb21pcyBsb3JzIGRlCitsJ+ljcml0dXJlIGQndW4gZmljaGllciBcZklkZWJcLXN5bWJvbHMoNSlcZlAgc3RhbmRhcmQgKHNlbG9uIGxlcyBy6GdsZXMgZGUKK3RyYWl0ZW1lbnQgZGVzIOl0aXF1ZXR0ZXMpIGFsb3JzIHF1ZSB0b3VzIGxlcyBzeW1ib2xlcyBzb250IOljcml0cyBsb3JzIGRlCitsYSBjculhdGlvbiBkJ3VuIG1vZOhsZSBkZSBmaWNoaWVyIGRlIHN5bWJvbGVzLgorLlRQIAorXGZCXC1jXGZQXGZJWzBcLTRdXGZQCitE6WZpbml0IGxlcyBjb250cvRsZXMg4CBlZmZlY3R1ZXIgbG9ycyBkZSBsYSBjb21wYXJhaXNvbiBkZXMgc3ltYm9sZXMgY3Lp6XMKK2VuIHV0aWxpc2FudCBsZSBmaWNoaWVyIGRlIG1vZOhsZSBjb21tZSBwb2ludCBkZSBk6XBhcnQuIExlIG5pdmVhdSBwYXIKK2TpZmF1dCBlc3QgMS4gUGx1cyBsZSBuaXZlYXUgZXN0IGF1Z21lbnTpLCBwbHVzIGxlIG5vbWJyZSBkZSBjb250cvRsZQorZWZmZWN0delzIGVzdCBpbXBvcnRhbnQuIENoYXF1ZSBuaXZlYXUgZGUgY29udHL0bGUgIGNvbXBvcnRlIGxlcyBjb250cvRsZXMKK2VmZmVjdHXpcyBwb3VyIGxlcyBuaXZlYXV4IGluZulyaWV1cnMuIExlIG5pdmVhdSAwIG4n6WNob3VlIGphbWFpcy4gTGUKK25pdmVhdSAxIOljaG91ZSBzaSBjZXJ0YWlucyBzeW1ib2xlcyBvbnQgZGlzcGFydS4gTGUgbml2ZWF1IDIg6WNob3VlIHNpIGRlCitub3V2ZWF1eCBzeW1ib2xlcyBvbnQg6XTpIGFqb3V06XMuIExlIG5pdmVhdSAzIOljaG91ZSBzaSBjZXJ0YWluZXMKK2JpYmxpb3Ro6HF1ZXMgb250IGRpc3BhcnUuIExlIG5pdmVhdSA0IOljaG91ZSBzaSBkZXMgYmlibGlvdGjocXVlcyBvbnQg6XTpCitham91dOllcy4KKworQ2V0dGUgdmFsZXVyIHBldXQg6nRyZSByZW1wbGFj6WUgcGFyIGxhIHZhbGV1ciBkZSBsYSB2YXJpYWJsZQorZCdlbnZpcm9ubmVtZW50IERQS0dfR0VOU1lNQk9MU19DSEVDS19MRVZFTC4KKy5UUCAKK1xmQlwtcVxmUAorRm9uY3Rpb25uZSBlbiBtb2RlIHNpbGVuY2lldXggZXQgbmUgY3LpZSBqYW1haXMgZGUgZmljaGllciBkZSBkaWZm6XJlbmNlcworZW50cmUgbGUgZmljaGllciBkZSBzeW1ib2xlcyBjcunpIGV0IGxlIGZpY2hpZXIgbW9k6GxlIHV0aWxpc+kgY29tbWUgcG9pbnQKK2RlIGTpcGFydC4gTidhZmZpY2hlIOlnYWxlbWVudCBhdWN1biBhdmVydGlzc2VtZW50IOAgcHJvcG9zIGRlIGJpYmxpb3Ro6HF1ZXMKK25vdXZlbGxlcyBvdSBkaXNwYXJ1ZXMgb3UgZGUgc3ltYm9sZXMgbm91dmVhdXggb3UgZGlzcGFydXMuIENldHRlIG9wdGlvbiBuZQorZOlzYWN0aXZlIHF1ZSBsJ2FmZmljaGFnZSBpbmZvcm1hdGlmLCBtYWlzIHBhcyBsZXMgY29udHL0bGVzIGV1eFwtbeptZXMgKHZvaXIKK2wnb3B0aW9uIFxmSVwtY1xmUCkuCisuVFAgCitcZkJcLWFcZlBcZklhcmNoXGZQCitE6WZpbml0IFxmSWFyY2hcZlAgY29tbWUgYXJjaGl0ZWN0dXJlIGxvcnMgZHUgdHJhaXRlbWVudCBkZXMgZmljaGllcnMgZGUKK3N5bWJvbGVzLiBDZXR0ZSBvcHRpb24gcGVybWV0IGRlIGNy6WVyIHVuIGZpY2hpZXIgZGUgc3ltYm9sZXMgb3UgdW4gZmljaGllcgorZGUgZGlmZulyZW5jZXMgcG91ciBuJ2ltcG9ydGUgcXVlbGxlIGFyY2hpdGVjdHVyZSwg4CBjb25kaXRpb24gcXVlIGxlcworZmljaGllcnMgYmluYWlyZXMgY29ycmVzcG9uZGFudHMgc29pZW50IGTpauAgZGlzcG9uaWJsZXMuCisuVFAgCitcZkJcLWRcZlAKK0FjdGl2ZSBsZSBtb2RlIHZlcmJldXguIERlIG5vbWJyZXV4IG1lc3NhZ2VzIHNvbnQgYWZmaWNo6XMgcG91ciBleHBsaXF1ZXIgY2UKK3F1ZSBcZkJkcGtnXC1nZW5zeW1ib2xzXGZQIGZhaXQuCisuVFAgCitcZkJcLVZcZlAKK0FjdGl2ZSBsZSBtb2RlIHZlcmJldXguIExlIGZpY2hpZXIgZGUgc3ltYm9sZXMgY3Lp6SBjb250aWVuZHJhIGxlcyBzeW1ib2xzCitk6XBy6WNp6XMgc291cyBmb3JtZSBkZSBjb21tZW50YWlyZXMuIERlIHBsdXMsIGVuIG1vZGUgbW9k6GxlLCBsZXMgbW90aWZzIGRlCitzeW1ib2xlcyBzZXJvbnQgc3VpdmlzIGRlIGNvbW1lbnRhaXJlcyBhZmZpY2hhbnQgbGVzIHN5bWJvbGVzIHLpZWxzIHF1aQorY29ycmVzcG9uZGVudCBhdSBtb3RpZi4KKy5UUCAKK1xmQlwtaFxmUCwgXGZCXC1cLWhlbHBcZlAKK0FmZmljaGUgdW4gbWVzc2FnZSBkJ2FpZGUgcHVpcyBxdWl0dGUuCisuVFAgCitcZkJcLVwtdmVyc2lvblxmUAorQWZmaWNoZSBsZSBudW3pcm8gZGUgdmVyc2lvbiBwdWlzIHF1aXR0ZS4KKy4KKy5TSCAiVk9JUiBBVVNTSSIKK1xmQmh0dHA6Ly9wZW9wbGUucmVkaGF0LmNvbS9kcmVwcGVyL3N5bWJvbFwtdmVyc2lvbmluZ1xmUAorLmJyCitcZkJodHRwOi8vcGVvcGxlLnJlZGhhdC5jb20vZHJlcHBlci9nb29kcHJhY3RpY2UucGRmXGZQCisuYnIKK1xmQmh0dHA6Ly9wZW9wbGUucmVkaGF0LmNvbS9kcmVwcGVyL2Rzb2hvd3RvLnBkZlxmUAorLmJyCitcZkJkZWJcLXN5bWJvbHNcZlAoNSksIFxmQmRwa2dcLXNobGliZGVwc1xmUCgxKS4KKy4KKy5TSCBBVVRFVVJTCitDb3B5cmlnaHQgXChjbyAyMDA3XC0yMDA5IFJhcGhhXFs6ZV1sIEhlcnR6b2cKKy5zcAorQ2UgcHJvZ3JhbW1lIGVzdCB1biBsb2dpY2llbCBsaWJyZVwgOyB2b3lleiBsYSCrXCBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZVwguwordmVyc2lvbiAyIG91IHN1cOlyaWV1cmUgcG91ciBsZSBjb3B5cmlnaHQuIElsIG4neSBhIFBBUyBkZSBnYXJhbnRpZS4KKy5TSCBUUkFEVUNUSU9OCitBcmllbCBWQVJESSA8YXJpZWwudmFyZGlAZnJlZXNiZWUuZnI+LCAyMDAyLgorUGhpbGlwcGUgQmF0YWlsbGVyLCAyMDA2LgorTmljb2xhcyBGcmFu529pcywgMjAwNi4KK1ZldWlsbGV6IHNpZ25hbGVyIHRvdXRlIGVycmV1ciDgIDxkZWJpYW5cLWwxMG5cLWZyZW5jaEBsaXN0cy5kZWJpYW4ub3JnPi4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL2ZyL2Rwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjEgYi9kcGtnLTEuMTYuMS4xL21hbi9mci9kcGtnLW1haW50c2NyaXB0LWhlbHBlci4xCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjI1NzU3OWQKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9mci9kcGtnLW1haW50c2NyaXB0LWhlbHBlci4xCkBAIC0wLDAgKzEsMTYwIEBACisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkcGtnXC1tYWludHNjcmlwdFwtaGVscGVyIDEgMjAxMVwtMDhcLTE0ICJQcm9qZXQgRGViaWFuIiAic3VpdGUgZHBrZyIKKy5TSCBOT00KK2Rwa2dcLW1haW50c2NyaXB0XC1oZWxwZXIgXC0gY29udG91cm5lbWVudCBkZXMgbGltaXRhdGlvbnMgY29ubnVlcyBkZSBkcGtnIGRhbnMKK2xlcyBzY3JpcHRzIGR1IHJlc3BvbnNhYmxlCisuCisuU0ggU1lOT1BTSVMKK1xmQmRwa2dcLW1haW50c2NyaXB0XC1oZWxwZXJcZlAgXGZJY29tbWFuZFxmUCBbXGZJcGFyYW1ldGVyXGZQLi4uXSBcZkJcLVwtXGZQCitcZkltYWludFwtc2NyaXB0XC1wYXJhbWV0ZXJcZlAuLi4KKy4KKy5TSCAiQ09NTUFOREVTIEVUIFBBUkFNyFRSRVMiCisuUAorXGZCcm1fY29uZmZpbGVcZlAgXGZJZmljaGllclwtZGVcLWNvbmZpZ3VyYXRpb25cZlAgW1xmSWRlcm5p6HJlXC12ZXJzaW9uXGZQIFtcZklwYXF1ZXRcZlBdXQorLlAKK1xmQm12X2NvbmZmaWxlXGZQIFxmSWFuY2llblwtZmljaGllclwtZGVcLWNvbmZpZ3VyYXRpb25cZlAKK1xmSW5vdXZlYXVcLWZpY2hpZXJcLWRlXC1jb25maWd1cmF0aW9uXGZQIFtcZklkZXJuaehyZVwtdmVyc2lvblxmUCBbXGZJcGFxdWV0XGZQXV0KKy4KKy5TSCBERVNDUklQVElPTgorLlAKK0NlIHByb2dyYW1tZSBlc3QgcHLpdnUgcG91ciDqdHJlIGV46WN1dOkgZGFucyBsZXMgc2NyaXB0cyBkdSByZXNwb25zYWJsZQorYWZpbiBkZSBy6WFsaXNlciBjZXJ0YWluZXMgdOJjaGVzIHF1ZSBkcGtnIG5lIHBldXQgcGFzIChlbmNvcmUpIHByZW5kcmUgZW4KK2NoYXJnZSBkaXJlY3RlbWVudCDgIGNhdXNlIGRlIGxpbWl0ZXMgZGUgY29uY2VwdGlvbiBvdSBkZSBsaW1pdGF0aW9ucworYWN0dWVsbGVzLgorLlAKK01hbnkgb2YgdGhvc2UgdGFza3MgcmVxdWlyZSBjb29yZGluYXRlZCBhY3Rpb25zIGZyb20gc2V2ZXJhbCBtYWludGFpbmVyCitzY3JpcHRzIChcZkJwcmVpbnN0XGZQLCBcZkJwb3N0aW5zdFxmUCwgXGZCcHJlcm1cZlAsIFxmQnBvc3RybVxmUCkuIFRvIGF2b2lkIG1pc3Rha2VzCit0aGUgc2FtZSBjYWxsIHNpbXBseSBuZWVkcyB0byBiZSBwdXQgaW4gYWxsIHNjcmlwdHMgYW5kIHRoZSBwcm9ncmFtIHdpbGwKK2F1dG9tYXRpY2FsbHkgYWRhcHQgaXRzIGJlaGF2aW91ciBiYXNlZCBvbiB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGUKK1xmQkRQS0dfTUFJTlRTQ1JJUFRfTkFNRVxmUCBhbmQgb24gdGhlIG1haW50YWluZXIgc2NyaXB0cyBhcmd1bWVudHMgdGhhdCB5b3UKK2hhdmUgdG8gZm9yd2FyZCBhZnRlciBhIGRvdWJsZSBkYXNoLgorLgorLlNIICJUwkNIRVMgTEnJRVMgQVVYIEZJQ0hJRVJTIERFIENPTkZJR1VSQVRJT04iCisuUAorTG9ycyBkZSBsYSBtaXNlIOAgam91ciBkJ3VuIHBhcXVldCwgZHBrZyBuZSBzdXBwcmltZSBwYXMgYXV0b21hdGlxdWVtZW50IGxlcworZmljaGllcnMgZGUgY29uZmlndXJhdGlvbiAoY29tcG9ydGFudCBkZXMgbW9kaWZpY2F0aW9ucyBsb2NhbGVzIOAgcHLpc2VydmVyKQorcydpbCBuJ2VzdCBwYXMgcHLpc2VudCBkYW5zIGxhIG5vdXZlbGxlIHZlcnNpb24uIElsIGV4aXN0ZSBkZXV4IHJhaXNvbnMKK3ByaW5jaXBhbGVzIOAgY2VsYS4gRW4gcHJlbWllciBsaWV1LCBsZSBmaWNoaWVyIGRlIGNvbmZpZ3VyYXRpb24gcGV1dCBhdm9pcgor6XTpIHN1cHByaW3pIHBhciBhY2NpZGVudCwg6nRyZSBy6WludOlncukgZGFucyBsYSB2ZXJzaW9uIHN1aXZhbnRlIGV0IGlsCitwZXV0IOp0cmUgbuljZXNzYWlyZSBkZSByZXRyb3V2ZXIgbGVzIG1vZGlmaWNhdGlvbnMgbG9jYWxlcy4gRW5zdWl0ZSwKK2wnb2JqZWN0aWYgZXN0IOlnYWxlbWVudCBkZSBwZXJtZXR0cmUgZCdlZmZlY3R1ZXIgbGEgdHJhbnNpdGlvbiBkZXB1aXMgZGVzCitmaWNoaWVycyBkZSBjb25maWd1cmF0aW9uIGfpculzIHBhciBkcGtnIHZlcnMgdW4gZmljaGllciBn6XLpIHZpYSBsZXMKK3NjcmlwdHMgZHUgcmVzcG9uc2FibGUsIGVuIGfpbulyYWwg4CBsJ2FpZGUgZCd1biBvdXRpbCBjb21tZSBkZWJjb25mIG91IHVjZi4KKy5QCitDZWxhIHNpZ25pZmllIHF1ZSBzaSB1biBwYXF1ZXQgYSBiZXNvaW4gZGUgcmVub21tZXIgb3Ugc3VwcHJpbWVyIHVuIGZpY2hpZXIKK2RlIGNvbmZpZ3VyYXRpb24sIGlsIGRvaXQgbGUgZmFpcmUgZXhwbGljaXRlbWVudC4gTCdvYmplY3RpZiBkZQorXGZCZHBrZ1wtbWFpbnRzY3JpcHRcLWhlbHBlclxmUCBlc3QgZG9uYyBkZSBmb3VybmlyIGRlcyBt6XRob2RlcyBkZSBzdXBwcmVzc2lvbgorb3UgcmVub21tYWdlIGRlIGZpY2hpZXJzIGRlIGNvbmZpZ3VyYXRpb24gdmlhIGxlcyBzY3JpcHRzIGR1IHJlc3BvbnNhYmxlLgorLgorLlNTICJTVVBQUkVTU0lPTiBEJ1VOIEZJQ0hJRVIgREUgQ09ORklHVVJBVElPTiIKKy5QCitTaSB1biBmaWNoaWVyIGRlIGNvbmZpZ3VyYXRpb24gZXN0IGNvbXBs6HRlbWVudCBzdXBwcmlt6SwgaWwgZG9pdCDqdHJlCitlZmZhY+kgZHUgZGlzcXVlIHNhdWYgc2kgbCdhZG1pbmlzdHJhdGV1ciBsb2NhbCBsJ2EgbW9kaWZp6S4gTGVzIOl2ZW50dWVsbGVzCittb2RpZmljYXRpb25zIGxvY2FsZXMgZG9pdmVudCDqdHJlIGNvbnNlcnbpZXMuIFNpIGxhIG1pc2Ug4CBqb3VyIGR1IHBhcXVldAorZXN0IGludGVycm9tcHVlLCBsZSBmaWNoaWVyIGRlIGNvbmZpZ3VyYXRpb24gcmVuZHUgb2Jzb2zodGUgbmUgZG9pdCBwYXMKK2F2b2lyIGRpc3BhcnUuCisuUAorTCdlbnNlbWJsZSBkZSBjZXMgcHLpXC1yZXF1aXMgZXN0IG1pcyBlbiBvZXV2cmUgZW4gdXRpbGlzYW50IGxlcyBjb21tYW5kZXMKK3NoZWxsIHN1aXZhbnRlcyBkYW5zIGxlcyBzY3JpcHRzIFxmQnByZWluc3RcZlAsIFxmQnBvc3RpbnN0XGZQIGV0IFxmQnBvc3RybVxmUFwgOgorLlAKKyAgICBkcGtnXC1tYWludHNjcmlwdFwtaGVscGVyIHJtX2NvbmZmaWxlIFxlCisgICAgICAgIFxmSWZpY2hpZXJcLWRlXC1jb25maWd1cmF0aW9uXGZQIFxmSWRlcm5p6HJlXC12ZXJzaW9uXGZQIFxmSXBhcXVldFxmUCBcLVwtICIkQCIKKy5QCitcZklmaWNoaWVyXC1kZVwtY29uZmlndXJhdGlvblxmUCBlc3QgbGUgbm9tIGR1IGZpY2hpZXIgZGUgY29uZmlndXJhdGlvbiDgCitzdXBwcmltZXIuIFxmSWRlcm5p6HJlXC12ZXJzaW9uXGZQIGVzdCBsYSBkZXJuaehyZSB2ZXJzaW9uIGR1IHBhcXVldCBxdWkgbGUKK2ZvdXJuaXNzYWl0IChvdSBsYSBkZXJuaehyZSB2ZXJzaW9uIGR1IHBhcXVldCBxdWkgbmUgcHJlbmFpdCBwYXMgc29pbiBkZQorc3VwcHJpbWVyIGxlIGZpY2hpZXIgZGUgY29uZmlndXJhdGlvbiBvYnNvbOh0ZSBzaSBsYSBzdXBwcmVzc2lvbiBjb3JyZWN0ZQorbidhIHBhcyDpdOkgaW1t6WRpYXRlbWVudCBtaXNlIGVuIG9ldXZyZSkuIFNpIFxmSWRlcm5p6HJlXC12ZXJzaW9uXGZQIGVzdCB2aWRlCitvdSBlc3Qgb21pcywgY2V0dGUgc3VwcHJlc3Npb24gc2VyYSB0ZW506SBwb3VyIHRvdXRlIG1pc2Ug4CBqb3VyLiBcZklwYXF1ZXRcZlAKK2VzdCBsZSBub20gZHUgcGFxdWV0LiBDZSBwYXJhbeh0cmUgZXN0IG9wdGlvbm5lbCwgbGEgdmFsZXVyIHBhciBk6WZhdXQg6XRhbnQKKyREUEtHX01BSU5UU0NSSVBUX1BBQ0tBR0UgKGNldHRlIHZhcmlhYmxlIGVzdCBwb3NpdGlvbm7pZSBwYXIgZHBrZyBzdXIgbGUKK25vbSBkdSBwYXF1ZXQgc3VyIGxlcXVlbCBpbCB0cmF2YWlsbGUpLiBUb3VzIGxlcyBwYXJhbeh0cmVzIGRlcyBzY3JpcHRzIGR1CityZXNwb25zYWJsZSBkb2l2ZW50IOp0cmUgcmVkaXJpZ+lzIGF1IHByb2dyYW1tZSBhcHLocyCrXCBcLVwtXCC7LgorLlAKK0TpdGFpbHMgZGUgbGEgbWlzZSBlbiBvZXV2cmUgYWN0dWVsbGVcIDpcIGRhbnMgbGUgc2NyaXB0IFxmQnByZWluc3RcZlAsIGlsIGVzdAordulyaWZp6SBzaSBsZSBmaWNoaWVyIGRlIGNvbmZpZ3VyYXRpb24gYSDpdOkgbW9kaWZp6S4gQ2VsdWlcLWNpIGVzdCBhbG9ycworcmVub21t6Swgc29pdCBlbiBcZklmaWNoaWVyXC1kZVwtY29uZmlndXJhdGlvblxmUFxmQi5kcGtnXC1yZW1vdmVcZlAgcydpbCBuJ2EgcGFzIOl06QorbW9kaWZp6Swgc29pdCBlbiBcZklmaWNoaWVyXC1kZVwtY29uZmlndXJhdGlvblxmUFxmQi5kcGtnXC1iYWNrdXBcZlAgcydpbCBsJ2EKK+l06S4gRGFucyBsZSBzY3JpcHQgXGZCcG9zdGluc3RcZlAsIGNlIGRlcm5pZXIgZmljaGllciBlc3QgZW5zdWl0ZSByZW5vbW3pIGVuCitcZklmaWNoaWVyXC1kZVwtY29uZmlndXJhdGlvblxmUFxmQi5kcGtnXC1iYWtcZlAgZXQgY29uc2VydukgcG91ciBy6WbpcmVuY2UgcHVpc3F1J2lsCitjb250aWVudCBkZXMgbW9kaWZpY2F0aW9ucyBsb2NhbGVzLCBtYWlzIGxlIHByZW1pZXIgZXN0IHN1cHByaW3pLiBTaSBsYSBtaXNlCivgIGpvdXIgZHUgcGFxdWV0IGVzdCBpbnRlcnJvbXB1ZSwgbGUgc2NyaXB0IFxmQnBvc3RybVxmUCByZW1ldCBlbiBwbGFjZSBsZQorZmljaGllciBkZSBjb25maWd1cmF0aW9uIGQnb3JpZ2luZS4gwCBsYSBwdXJnZSBkdSBwYXF1ZXQsIGxlIHNjcmlwdAorXGZCcG9zdHJtXGZQIHN1cHByaW1lcmEg6WdhbGVtZW50IGxlIGZpY2hpZXIgXGZCLmRwa2dcLWJha1xmUCBxdWkgYXZhaXQg6XTpCitjb25zZXJ26SBqdXNxdWUgbOAuCisuCisuU1MgIlJFTk9NTUFHRSBEJ1VOIEZJQ0hJRVIgREUgQ09ORklHVVJBVElPTiIKKy5QCitTaSB1biBmaWNoaWVyIGRlIGNvbmZpZ3VyYXRpb24gZXN0IGTpcGxhY+kg4CB1biBhdXRyZSBlbmRyb2l0LCBpbCBlc3QKK27pY2Vzc2FpcmUgZGUgZ2FyYW50aXIgbGEgcHLpc2VydmF0aW9uIGRlcyBtb2RpZmljYXRpb25zIGxvY2FsZXMuIMAgcHJlbWnocmUKK3Z1ZSwgY2VsYSBwZXV0IHNlbWJsZXIg6nRyZSB1bmUgc2ltcGxlIG1vZGlmaWNhdGlvbiBkYW5zIGxlIHNjcmlwdAorXGZCcHJlaW5zdFxmUCwgbWFpcyBjZWxhIHJpc3F1ZSBkZSBy6XN1bHRhdCBkYW5zIHVuZSBkZW1hbmRlLCBwYXIgZHBrZywKK2QnYXBwcm9iYXRpb24gZGUgbW9kaWZpY2F0aW9ucyBsb2NhbGVzIHF1aSBuJ2V4aXN0ZW50IHBhcyBy6WVsbGVtZW50LgorLlAKK1VuIHJlbm9tbWFnZSDpbOlnYW50IHBldXQg6nRyZSBtaXMgZW4gb2V1dnJlIGF2ZWMgbGVzIGV4dHJhaXRzIHNoZWxsIHF1aQorc3VpdmVudCwgZGFucyBsZXMgc2NyaXB0cyBcZkJwcmVpbnN0XGZQLCBcZkJwb3N0aW5zdFxmUCBldCBcZkJwb3N0cm1cZlAuCisuUAorICAgIGRwa2dcLW1haW50c2NyaXB0XC1oZWxwZXIgbXZfY29uZmZpbGUgXGUKKyAgICAgICAgXGZJYW5jaWVuXC1maWNoaWVyXGZQIFxmSW5vdXZlYXVcLWZpY2hpZXJcZlAgXGZJZGVybmnocmVcLXZlcnNpb25cZlAgXGZJcGFxdWV0XGZQIFwtXC0gIiRAIgorLlAKK1xmSWFuY2llblwtZmljaGllclxmUCBldCBcZklub3V2ZWF1XC1maWNoaWVyXGZQIHNvbnQgbGVzIGRldXggbm9tcyBzdWNjZXNzaWZzIGR1CitmaWNoaWVyIGRlIGNvbmZpZ3VyYXRpb24uIFxmSWRlcm5p6HJlXC12ZXJzaW9uXGZQIGVzdCBsYSBkZXJuaehyZSB2ZXJzaW9uIGR1CitwYXF1ZXQgcXVpIGNvbnRlbmFpdCBsZSBmaWNoaWVyIGRlIGNvbmZpZ3VyYXRpb24gYXZlYyBsJ2FuY2llbiBubm9tLiBTaQorXGZJZGVybmnocmVcLXZlcnNpb25cZlAgZXN0IHZpZGUgb3UgbWFucXVhbnQsIGwnb3DpcmF0aW9uIHNlcmEgdGVudOllIOAgY2hhcXVlCittaXNlIOAgam91ciAoaWwgZXN0IHBsdXMgc/tyIGQnaW5kaXF1ZXIgbGEgYm9ubmUgdmVyc2lvbiBhZmluIHFlIGwnb3DpcmF0aW9uCituZSBzb2l0IHRlbnTpZSBxdSd1bmUgZm9pcykuIFxmSXBhcXVldFxmUCBlc3QgbGUgbm9tIGR1IHBhcXVldC4gQ2UgcGFyYW3odHJlCitlc3Qgb3B0aW9ubmVsLCBsYSB2YWxldXIgcGFyIGTpZmF1dCDpdGFudCAkRFBLR19NQUlOVFNDUklQVF9QQUNLQUdFIChjZXR0ZQordmFyaWFibGUgZXN0IHBvc2l0aW9ubullIHBhciBkcGtnIHN1ciBsZSBub20gZHUgcGFxdWV0IHN1ciBsZXF1ZWwgaWwKK3RyYXZhaWxsZSkuIFRvdXMgbGVzIHBhcmFt6HRyZXMgZGVzIHNjcmlwdHMgZHUgcmVzcG9uc2FibGUgZG9pdmVudCDqdHJlCityZWRpcmln6XMgYXUgcHJvZ3JhbW1lIGFwcuhzIKtcIFwtXC1cILsuCisuUAorROl0YWlscyBkZSBsYSBtaXNlIGVuIG9ldXZyZSBhY3R1ZWxsZVwgOlwgZGFucyBsZSBzY3JpcHQgXGZCcHJlaW5zdFxmUCwgaWwgZXN0Cit26XJpZmnpIHNpIGxlIGZpY2hpZXIgZGUgY29uZmlndXJhdGlvbiBhIOl06SBtb2RpZmnpLiBDZWx1aVwtY2kgZXN0IGFsb3JzCitzb2l0IGxhaXNz6SBlbiBwbGFjZSBzJ2lsIGEg6XTpIG1vZGlmaeksIHNvaXQgcmVub21t6SBlbgorXGZJYW5jaWVuXC1maWNoaWVyXGZQXGZCLmRwa2dcLXJlbW92ZVxmUCBzJ2lsIG5lIGwnYSBwYXMg6XTpLiBMb3JzIGRlIGxhCitjb25maWd1cmF0aW9ucywgbGUgc2NyaXB0IFxmQnBvc3RpbnN0XGZQIHN1cHByaW1lCitcZklhbmNpZW5cLWZpY2hpZXJcZlBcZkIuZHBrZ1wtcmVtb3ZlXGZQIGV0IHJlbm9tbWUgXGZJYW5jaWVuXC1maWNoaWVyXGZQIGFuZAorXGZJbm91dmVhdVwtZmljaGllclxmUCBzaSBcZklhbmNpZW5cLWZpY2hpZXJcZlAgZXhpc3RlIHRvdWpvdXJzIFNpIGxhIG1pc2Ug4CBqb3VyIG91CitsJ2luc3RhbGxhdGlvbiBzb250IGludGVycm9tcHVlcywgbGUgc2NyaXB0IFxmQnBvc3RybVxmUCByZW5vbW1lCitcZklhbmNpZW5cLWZpY2hpZXJcZlBcZkIuZHBrZ1wtcmVtb3ZlXGZQIGVuIFxmSWFuY2llblwtZmljaGllclxmUCBzaSBjJ2VzdAoraW5kaXNwZW5zYWJsZS4KKy4KKy5TSCAiSU5UyUdSQVRJT04gREFOUyBMRVMgUEFRVUVUUyIKKy5QCitHaXZlbiB0aGF0IFxmQmRwa2dcLW1haW50c2NyaXB0XC1oZWxwZXJcZlAgaXMgdXNlZCBpbiB0aGUgXGZCcHJlaW5zdFxmUCwgdXNpbmcgaXQKK3VuY29uZGl0aW9uYWxseSByZXF1aXJlcyBhIHByZVwtZGVwZW5kZW5jeSB0byBlbnN1cmUgdGhhdCB0aGUgcmVxdWlyZWQKK3ZlcnNpb24gb2YgZHBrZyBoYXMgYmVlbiB1bnBhY2tlZCBiZWZvcmUuIFRoZSByZXF1aXJlZCB2ZXJzaW9uIGRlcGVuZHMgb24KK3RoZSBjb21tYW5kIHVzZWQsIGZvciBcZkJybV9jb25mZmlsZVxmUCBhbmQgXGZCbXZfY29uZmZpbGVcZlAgaXQgaXMgMS4xNS43LjI6CisuUAorICAgIFxmQlByZVwtRGVwZW5kczpcZlAgZHBrZyAoPj0gMS4xNS43LjIpCisuUAorQ2VwZW5kYW50LCBkYW5zIGRlIG5vbWJyZXV4IGNhcywgbCdvcOlyYXRpb24gculhbGlz6WUgcGFyIGxlIHByb2dyYW1tZSBuJ2VzdAorcGFzIGNyaXRpcXVlIHBvdXIgbGUgcGFxdWV0IGV0IGF1IGxpZXUgZCd1dGlsaXNlciB1bmUgcHLpXC1k6XBlbmRhbmNlLCBpbCBlc3QKK3Bvc3NpYmxlIGRlIG5lIGxhbmNlciBsZSBwcm9ncmFtbWUgcXVlIHNpIG9uIGEgbGEgY2VydGl0dWRlIHF1ZSBsYSBjb21tYW5kZQorbuljZXNzYWlyZSBlc3QgZ+ly6WUgcGFyIGxhIHZlcnNpb24gYWN0dWVsbGVtZW50IGluc3RhbGzpZSBkZSBkcGtnXCA6CisuUAorICAgIGlmIGRwa2dcLW1haW50c2NyaXB0XC1oZWxwZXIgc3VwcG9ydHMgXGZJY29tbWFuZFxmUDsgdGhlbgorICAgICAgICBkcGtnXC1tYWludHNjcmlwdFwtaGVscGVyIFxmSWNvbW1hbmRcZlAgLi4uCisgICAgZmkKKy4KKy5TSCBBVVRFVVJTCitDb3B5cmlnaHQgXChjbyAyMDEwIFJhcGhhXFs6ZV1sIEhlcnR6b2cKKy5icgorQ29weXJpZ2h0IFwoY28gMjAwOCBKb2V5IEhlc3MKKy5icgorQ29weXJpZ2h0IFwoY28gMjAwNyBHdWlsbGVtIEpvdmVyCisuYnIKK0NvcHlyaWdodCBcKGNvIDIwMDUgU2NvdHQgSmFtZXMgUmVtbmFudAorLnNwCitDZSBwcm9ncmFtbWUgZXN0IHVuIGxvZ2ljaWVsIGxpYnJlXCA7IHZveWV6IGxhIKtcIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbmNlXCC7Cit2ZXJzaW9uIDIgb3Ugc3Vw6XJpZXVyZSBwb3VyIGxlIGNvcHlyaWdodC4gSWwgbid5IGEgUEFTIGRlIGdhcmFudGllLgorCisuU0ggVFJBRFVDVElPTgorQXJpZWwgVkFSREkgPGFyaWVsLnZhcmRpQGZyZWVzYmVlLmZyPiwgMjAwMi4KK1BoaWxpcHBlIEJhdGFpbGxlciwgMjAwNi4KK05pY29sYXMgRnJhbudvaXMsIDIwMDYuCitWZXVpbGxleiBzaWduYWxlciB0b3V0ZSBlcnJldXIg4CA8ZGViaWFuXC1sMTBuXC1mcmVuY2hAbGlzdHMuZGViaWFuLm9yZz4uCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9mci9kcGtnLW1lcmdlY2hhbmdlbG9ncy4xIGIvZHBrZy0xLjE2LjEuMS9tYW4vZnIvZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45OWY5M2M3Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vZnIvZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMQpAQCAtMCwwICsxLDgzIEBACisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkcGtnXC1tZXJnZWNoYW5nZWxvZ3MgMSAyMDExXC0wOFwtMTQgIlByb2pldCBEZWJpYW4iICJzdWl0ZSBkcGtnIgorLlNIIE5PTQorZHBrZ1wtbWVyZ2VjaGFuZ2Vsb2dzIFwtIGZ1c2lvbiB0cmlwbGUgZGUgZmljaGllcnMgZGViaWFuL2NoYW5nZWxvZworLgorLlNIIFNZTk9QU0lTCitcZkJkcGtnXC1tZXJnZWNoYW5nZWxvZ3NcZlAgW1xmSW9wdGlvblxmUC4uLl0gXGZJYW5jaWVuXGZQIFxmSW5vdXZlYXVcLWFcZlAgXGZJbm91dmVhdVwtYlxmUAorW1xmSXNvcnRpZVxmUF0KKy4KKy5TSCBERVNDUklQVElPTgorLlAKK0NlIHByb2dyYW1tZSB1dGlsaXNlIGxlcyAzIHZlcnNpb25zIGZvdXJuaWVzIGRlIGpvdXJuYWwgZGVzIG1vZGlmaWNhdGlvbnMKKyirXCBjaGFuZ2Vsb2dcILspIERlYmlhbiBwb3VyIGNy6WVyIHVuIGZpY2hpZXIgZGUgam91cm5hbGlzYXRpb24gZnVzaW9ubukuIExlCity6XN1bHRhdCBlc3QgcGxhY+kgZGFucyBsZSBmaWNoaWVyIFxmSXNvcnRpZVxmUCBvdSBhZmZpY2jpIHN1ciBsYSBzb3J0aWUKK3N0YW5kYXJkIHNpIGNlIHBhcmFt6HRyZSBlc3Qgb21pcy4KKy5QCitDaGFxdWUgZW50cullIGVzdCBpZGVudGlmaellIHBhciBzb24gbnVt6XJvIGRlIHZlcnNpb24uIExlcyBlbnRy6WVzIG5lIHNvbnQKK3BhcyBjZW5z6WVzIGVudHJlciBlbiBjb25mbGl0LCBtYWlzIHNvbnQgc2ltcGxlbWVudCBmdXNpb25u6WVzIGRhbnMgbGUgYm9uCitvcmRyZSAocGFyIG51belybyBkZSB2ZXJzaW9uIGTpY3JvaXNzYW50KS4gU2kgbCdvcHRpb24KK1xmQlwtXC1tZXJnZVwtcHJlcmVsZWFzZXNcZlAgZXN0IHV0aWxpc+llLCBsYSBwYXJ0aWUgZGUgbnVt6XJvIGRlIHZlcnNpb24gcXVpIHN1aXQKK2xlIGRlcm5pZXIgY2FyYWN06HJlIHRpbGRlIGVzdCBvbWlzZVwgO1wgbGVzIHZlcnNpb25zIDEuMFwtMX5leHAxIGV0IDEuMFwtMWV4cDUKK3NvbnQgYWluc2kgY29uc2lk6XLpZXMgY29tbWUgbGEgbeptZSBlbnRy6WUuICBRdWFuZCBsYSBt6m1lIHZlcnNpb24gZXN0CittZW50aW9ubullIGRhbnMgXGZJbm91dmVhdVwtYVxmUCBldCBcZklub3V2ZWF1XC1iXGZQLCB1bmUgZnVzaW9uIHRyaXBsZSBsaWduZSDgCitsaWduZSAgc3RhbmRhcmQgZXN0IHRlbnTpZSAoc291cyBy6XNlcnZlIHF1ZSBsZSBtb2R1bGUgQWxnb3JpdGhtOjpNZXJnZSBzb2l0CitkaXNwb25pYmxlIFxbZW1dIGlsIGVzdCBmb3VybmkgcGFyIGxlIHBhcXVldCBsaWJhbGdvcml0aG1cLW1lcmdlXC1wZXJsCitcW2VtXS4gRGFucyBsZSBjYXMgY29udHJhaXJlLCB1biBjb25mbGl0IGdsb2JhbCBlc3QgY3Lp6SBkYW5zIGxlIGNvbnRleHRlIGRlCitjZXR0ZSBlbnRy6WUuCisuCisuU0ggT1BUSU9OUworLlRQIAorXGZCXC1cLW1lcmdlXC1wcmVyZWxlYXNlc1xmUCwgXGZCXC1tXGZQCitPbWV0IGxhIHZlcnNpb24gcXVpIHN1aXQgbGUgZGVybmllciBjYXJhY3TocmUgdGlsZGUgZGFucyBsZXMgbnVt6XJvcyBkZQordmVyc2lvbnMsIGxvcnMgZGUgbGEgY29tcGFyYWlzb24gcXVpIHBlcm1ldCBkJ2lkZW50aWZpZXIgc2kgY2V1eCBlbnRy6WVzCitzb250IGxlcyBt6m1lcyBvdSBwYXMuCisuc3AKK0NldHRlIG9wdGlvbiB1dGlsZSBsb3JzcXUnb24gY29uc2VydmUgbGEgbeptZSBlbnRy6WUgZGUgam91cm5hbCBtYWlzIHF1ZSBsYQordmVyc2lvbiBlc3QgaW5jcultZW506WUgculndWxp6HJlbWVudC4gUGFyIGV4ZW1wbGUsIGNlbGEgcGVybWV0IGQndXRpbGlzZXIKK2xlcyBudW3pcm9zIDIuM1wtMX5leHAxLCAyLjNcLTF+ZXhwMiwgZXRjLiBqdXNxdSfgIHVuZSBwdWJsaWNhdGlvbiBvZmZpY2llbGxlCitudW3pcm906WUgMi4zXC0xLCB0b3V0ZXMgY2VzIHZlcnNpb25zIOl0YW50IGNvbnNpZOly6WVzIGNvbW1lIGwn6XZvbHV0aW9uCitkYW5zIGxlIHRlbXBzIGRlIGxhIG3qbWUgdmVyc2lvbi4KKy5UUCAKK1xmQlwtXC1oZWxwXGZQCitBZmZpY2hlIHVuIG1lc3NhZ2UgZCdhaWRlIHB1aXMgcXVpdHRlLgorLlRQIAorXGZCXC1cLXZlcnNpb25cZlAKK0FmZmljaGUgbGUgbnVt6XJvIGRlIHZlcnNpb24gcHVpcyBxdWl0dGUuCisuCisuU0ggTElNSVRBVElPTlMKKy5QCitUb3V0IGNlIHF1aSBuZSBwZXV0IHBhcyDqdHJlIGFuYWx5c+kgcGFyIERwa2c6OkNoYW5nZWxvZyBlc3QgcGVyZHUgbG9ycyBkZQorbGEgZnVzaW9uLiBDZWxhIHBldXQgY29tcHJlbmRyZSBkZXMgbGlnbmVzIGRlIG1vZGUgdmltLCBkZXMgY29tbWVudGFpcmVzIHF1aQorbmUgc29udCBwYXMgY2Vuc+lzIHNlIHRyb3V2ZXIgbOAsIGV0Yy4KKy4KKy5TSCAiSU5UyUdSQVRJT04gQVZFQyBHSVQiCisuUAorU2kgdm91cyBzb3VoYWl0ZXogdXRpbGlzZXIgY2UgcHJvZ3JhbW1lIHBvdXIgZnVzaW9ubmVyIGRlcyBqb3VybmF1eCBkZQorbW9kaWZpY2F0aW9ucyBEZWJpYW4gZGFucyB1biBk6XD0dCBnaXQsIHZvdXMgZGV2ZXogdG91dCBkJ2Fib3JkIGVucmVnaXN0cmVyCit1biBub3V2ZWF1IHBpbG90ZSBkZSBmdXNpb24gZGFuIFxmQi5naXQvY29uZmlnXGZQIG91IFxmQn4vLmdpdGNvbmZpZ1xmUFwgOgorLlAKKyBbbWVyZ2UgImRwa2dcLW1lcmdlY2hhbmdlbG9ncyJdCisgICAgIG5hbWUgPSBkZWJpYW4vY2hhbmdlbG9nIG1lcmdlIGRyaXZlcgorICAgICBkcml2ZXIgPSBkcGtnXC1tZXJnZWNoYW5nZWxvZ3MgXC1tICVPICVBICVCICVBCisuUAorVm91cyBkZXZleiBlbnN1aXRlIGNvbmZpZ3VyZXIgbCdhdHRyaWJ1dCBkZSBmdXNpb24gcG91ciBsZSBmaWNoaWVyCitkZWJpYW4vY2hhbmdlbG9nLCBzb2l0IGRhbnMgXGZCLmdpdGF0dHJpYnV0ZXNcZlAgZHUgZOlw9HQgbHVpXC1t6m1lLCBzb2l0IGRhbnMKK1wmXGZCLmdpdC9pbmZvL2F0dHJpYnV0ZXNcZlBcIDoKKy5QCisgZGViaWFuL2NoYW5nZWxvZyBtZXJnZT1kcGtnXC1tZXJnZWNoYW5nZWxvZ3MKKy5TSCBBVVRFVVIKK0NvcHlyaWdodCBcKGNvIDIwMDlcLTIwMTAgUmFwaGFcWzplXWwgSGVydHpvZworLnNwCitDZSBwcm9ncmFtbWUgZXN0IHVuIGxvZ2ljaWVsIGxpYnJlXCA7IHZveWV6IGxhIKtcIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbmNlXCC7Cit2ZXJzaW9uIDIgb3Ugc3Vw6XJpZXVyZSBwb3VyIGxlIGNvcHlyaWdodC4gSWwgbid5IGEgUEFTIGRlIGdhcmFudGllLgorCisuU0ggVFJBRFVDVElPTgorQXJpZWwgVkFSREkgPGFyaWVsLnZhcmRpQGZyZWVzYmVlLmZyPiwgMjAwMi4KK1BoaWxpcHBlIEJhdGFpbGxlciwgMjAwNi4KK05pY29sYXMgRnJhbudvaXMsIDIwMDYuCitWZXVpbGxleiBzaWduYWxlciB0b3V0ZSBlcnJldXIg4CA8ZGViaWFuXC1sMTBuXC1mcmVuY2hAbGlzdHMuZGViaWFuLm9yZz4uCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9mci9kcGtnLW5hbWUuMSBiL2Rwa2ctMS4xNi4xLjEvbWFuL2ZyL2Rwa2ctbmFtZS4xCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjY0ZGVhZmMKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9mci9kcGtnLW5hbWUuMQpAQCAtMCwwICsxLDEwNCBAQAorLlwiIFRoaXMgaXMgYW4gLSotIG5yb2ZmIC0qLSBzb3VyY2UgZmlsZS4KKy5cIiBkcGtnLW5hbWUgYW5kIHRoaXMgbWFucGFnZSBhcmUgQ29weXJpZ2h0IMKpIDE5OTUsMTk5NiBieSBFcmljayBCcmFuZGVyaG9yc3QuCisuXCIKKy5cIiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgdmVyc2lvbiAyCisuXCIgb3IgbGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gIFRoZXJlIGlzIE5PIHdhcnJhbnR5LgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlwiCisuXCIgVGhpcyBmaWxlIHdhcyBnZW5lcmF0ZWQgd2l0aCBwbzRhLiBUcmFuc2xhdGUgdGhlIHNvdXJjZSBmaWxlLgorLlwiCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuVEggZHBrZ1wtbmFtZSAxIDIwMTFcLTA4XC0xNCAiUHJvamV0IERlYmlhbiIgIlV0aWxpdGFpcmVzIGRlIGRwa2ciCisuU0ggTk9NCitkcGtnXC1uYW1lIFwtIHJlZG9ubmUgYXV4IHBhcXVldHMgRGViaWFuIGxldXIgbm9tIGNvbXBsZXQKKy4KKy5TSCBTWU5PUFNJUworXGZCZHBrZ1wtbmFtZVxmUCBbXGZJb3B0aW9uXGZQLi4uXSBbXGZCXC1cLVxmUF0gXGZJZmlsZVxmUC4uLgorLgorLlNIIERFU0NSSVBUSU9OCisuUFAKK1RoaXMgbWFudWFsIHBhZ2UgZG9jdW1lbnRzIHRoZSBcZkJkcGtnXC1uYW1lXGZQIHByb2dyYW0gd2hpY2ggcHJvdmlkZXMgYW4gZWFzeQord2F5IHRvIHJlbmFtZSBcZkJEZWJpYW5cZlAgcGFja2FnZXMgaW50byB0aGVpciBmdWxsIHBhY2thZ2UgbmFtZXMuIEEgZnVsbAorcGFja2FnZSBuYW1lIGNvbnNpc3RzIG9mCitcZklwYWNrYWdlXGZQXGZCX1xmUFxmSXZlcnNpb25cZlBcZkJfXGZQXGZJYXJjaGl0ZWN0dXJlXGZQXGZCLlxmUFxmSXBhY2thZ2VcLXR5cGVcZlAgYXMgc3BlY2lmaWVkCitpbiB0aGUgY29udHJvbCBmaWxlIG9mIHRoZSBwYWNrYWdlLiBUaGUgXGZJdmVyc2lvblxmUCBwYXJ0IG9mIHRoZSBmaWxlbmFtZQorY29uc2lzdHMgb2YgdGhlIHVwc3RyZWFtIHZlcnNpb24gaW5mb3JtYXRpb24gb3B0aW9uYWxseSBmb2xsb3dlZCBieSBhIGh5cGhlbgorYW5kIHRoZSByZXZpc2lvbiBpbmZvcm1hdGlvbi4gVGhlIFxmSXBhY2thZ2VcLXR5cGVcZlAgcGFydCBjb21lcyBmcm9tIHRoYXQgZmllbGQKK2lmIHByZXNlbnQgb3IgZmFsbGJhY2tzIHRvIFxmQmRlYlxmUC4KKy4KKy5TSCBPUFRJT05TCisuVFAgCitcZkJcLWFcZlAsIFxmQlwtXC1ub1wtYXJjaGl0ZWN0dXJlXGZQCitMZSBub20gZHUgZmljaGllciBuJ2F1cmEgcGFzIGwnaW5mb3JtYXRpb24gc3VyIGwnYXJjaGl0ZWN0dXJlLgorLlRQIAorXGZCXC1rXGZQLCBcZkJcLVwtc3ltbGlua1xmUAorRmFpcmUgdW4gbGllbiBzeW1ib2xpcXVlIHBsdXT0dCBxdSd1bmUgY3LpYXRpb24gZGUgZmljaGllci4KKy5UUCAKK1xmQlwtb1xmUCwgXGZCXC1cLW92ZXJ3cml0ZVxmUAorUmVtcGxhY2UgZGVzIGZpY2hpZXJzIGV4aXN0YW50cyBzJ2lscyBvbnQgbGUgbeptZSBub20gcXVlIGxlIGZpY2hpZXIgZGUKK2Rlc3RpbmF0aW9uLgorLlRQIAorXGZCXC1zXGZQLCBcZkJcLVwtc3ViZGlyXGZQIFtcZklyZXBcZlBdCitGaWxlcyB3aWxsIGJlIG1vdmVkIGludG8gYSBzdWJkaXJlY3RvcnkuIElmIHRoZSBkaXJlY3RvcnkgZ2l2ZW4gYXMgYXJndW1lbnQKK2V4aXN0cyB0aGUgZmlsZXMgd2lsbCBiZSBtb3ZlZCBpbnRvIHRoYXQgZGlyZWN0b3J5IG90aGVyd2lzZSB0aGUgbmFtZSBvZiB0aGUKK3RhcmdldCBkaXJlY3RvcnkgaXMgZXh0cmFjdGVkIGZyb20gdGhlIHNlY3Rpb24gZmllbGQgaW4gdGhlIGNvbnRyb2wgcGFydCBvZgordGhlIHBhY2thZ2UuIFRoZSB0YXJnZXQgZGlyZWN0b3J5IHdpbGwgYmUKK2B1bnN0YWJsZS9iaW5hcnlcLVxmSWFyY2hpdGVjdHVyZVxmUC9cZklzZWN0aW9uXGZQJy4gSWYgdGhlIHNlY3Rpb24gaXMgbm90IGZvdW5kIGluCit0aGUgY29udHJvbCwgdGhlbiBgbm9cLXNlY3Rpb24nIGlzIGFzc3VtZWQsIGFuZCBpbiB0aGlzIGNhc2UsIGFzIHdlbGwgYXMgZm9yCitzZWN0aW9ucyBgbm9uXC1mcmVlJyBhbmQgYGNvbnRyaWInIHRoZSB0YXJnZXQgZGlyZWN0b3J5IGlzCitgXGZJc2VjdGlvblxmUC9iaW5hcnlcLVxmSWFyY2hpdGVjdHVyZVxmUCcuIFRoZSBzZWN0aW9uIGZpZWxkIGlzbid0IHJlcXVpcmVkIHNvIGEKK2xvdCBvZiBwYWNrYWdlcyB3aWxsIGZpbmQgdGhlaXIgd2F5IHRvIHRoZSBgbm9cLXNlY3Rpb24nIGFyZWEuIFVzZSB0aGlzCitvcHRpb24gd2l0aCBjYXJlLCBpdCdzIG1lc3N5LgorLlRQIAorXGZCXC1jXGZQLCBcZkJcLVwtY3JlYXRlXC1kaXJcZlAKK09uIHBldXQgdXRpbGlzZXIgY2V0dGUgb3B0aW9uIGF2ZWMgbCdvcHRpb24gXC1zLiBRdWFuZCB1biBy6XBlcnRvaXJlIGNpYmxlCituJ2VzdCBwYXMgdHJvdXbpLCBpbCBlc3QgY3Lp6SBhdXRvbWF0aXF1ZW1lbnQuICBcZkJVdGlsaXNleiBjZXR0ZSBvcHRpb24gYXZlYworc29pbi5cZlAKKy5UUCAKK1xmQlwtaFxmUCwgXGZCXC1cLWhlbHBcZlAKK0FmZmljaGUgdW4gbWVzc2FnZSBkJ2FpZGUgcHVpcyBxdWl0dGUuCisuVFAgCitcZkJcLXZcZlAsIFxmQlwtXC12ZXJzaW9uXGZQCitBZmZpY2hlIGxlIG51belybyBkZSB2ZXJzaW9uIHB1aXMgcXVpdHRlLgorLgorLlNIIEVYRU1QTEVTCisuVFAgCitcZkJkcGtnXC1uYW1lIGJhclwtZm9vLmRlYlxmUAorTGUgbm9tIGR1IGZpY2hpZXIgq1wgYmFyXC1mb28uZGViXCC7IGRldmllbnQgq1wgYmFyXC1mb29fMS4wXC0yX2kzODYuZGViXCC7IG91CitxdWVscXVlIGNob3NlIGRlIHNpbWlsYWlyZSBzdWl2YW50IGxlcyByZW5zZWlnbmVtZW50cyBxdWUgY29udGllbnQgbGEgcGFydGllCitkZSBjb250cvRsZSBkZSCrXCBiYXJcLWZvby5kZWJcILsuCisuVFAgCitcZkJmaW5kIC9yb290L2RlYmlhbi8gXC1uYW1lIFwoYXEqLmRlYlwoYXEgfCB4YXJncyBcLW4gMSBkcGtnXC1uYW1lIFwtYVxmUAorQ2V0dGUgY29tbWFuZGUgcmVkb25uZSBsZXVyIG5vbSBjb21wbGV0IOAgdG91cyBsZXMgZmljaGllcnMgcXVpIHNlIHRyb3V2ZW50CitkYW5zIGxlIHLpcGVydG9pcmUgL3Jvb3QvZGViaWFuIGV0IHNlcyBzb3VzXC1y6XBlcnRvaXJlcyBldCBxdWkgcG9zc+hkZW50IHVuZQorZXh0ZW5zaW9uIKtcIGRlYlwguywgbWFpcyBzdXBwcmltZSBsJ2luZm9ybWF0aW9uIHN1ciBsJ2FyY2hpdGVjdHVyZS4KKy5UUCAKK1xmQmZpbmQgXC1uYW1lIFwoYXEqLmRlYlwoYXEgfCB4YXJncyBcLW4gMSBkcGtnXC1uYW1lIFwtYSBcLW8gXC1zIFwtY1xmUAorXGZCTmUgZmFpdGVzIHBhcyDnYVwgIVxmUCBMJ2FyY2hpdmUgc2VyYSBjb21wbOh0ZW1lbnQgZ+JjaOllIHBhciBkZXMgcGFxdWV0cyBxdWkKK25lIHBvc3PoZGVudCBwYXMgZCdpbmZvcm1hdGlvbnMgc3VyIGxhIHNlY3Rpb24uIFxmQk5lIGZhaXRlcyBwYXMg52FcICFcZlAKKy5UUCAKK1xmQmRwa2cgXC1cLWJ1aWxkIGRlYmlhblwtdG1wICYmIGRwa2dcLW5hbWUgXC1vIFwtcyAuLiBkZWJpYW5cLXRtcC5kZWJcZlAKK09uIHBldXQgc2Ugc2VydmlyIGRlIGNldHRlIGNvbW1hbmRlIGxvcnMgZGUgbGEgY29uc3RydWN0aW9uIGQndW4gbm91dmVhdQorcGFxdWV0LgorLgorLlNIIEJPR1VFUworU29tZSBwYWNrYWdlcyBkb24ndCBmb2xsb3cgdGhlIG5hbWUgc3RydWN0dXJlCitcZklwYWNrYWdlXGZQXGZCX1xmUFxmSXZlcnNpb25cZlBcZkJfXGZQXGZJYXJjaGl0ZWN0dXJlXGZQXGZCLmRlYlxmUC4gIFBhY2thZ2VzIHJlbmFtZWQgYnkKK2Rwa2dcLW5hbWUgd2lsbCBmb2xsb3cgdGhpcyBzdHJ1Y3R1cmUuIEdlbmVyYWxseSB0aGlzIHdpbGwgaGF2ZSBubyBpbXBhY3Qgb24KK2hvdyBwYWNrYWdlcyBhcmUgaW5zdGFsbGVkIGJ5IFxmQmRzZWxlY3RcZlAoMSkvXGZCZHBrZ1xmUCgxKSwgYnV0IG90aGVyCitpbnN0YWxsYXRpb24gdG9vbHMgbWlnaHQgZGVwZW5kIG9uIHRoaXMgbmFtaW5nIHN0cnVjdHVyZS4KKy4KKy5TSCAiVk9JUiBBVVNTSSIKK1xmQmRlYlxmUCg1KSwgXGZCZGViXC1jb250cm9sXGZQKDUpLCBcZkJkcGtnXGZQKDEpLCBcZkJkcGtnXC1kZWJcZlAoMSksIFxmQmZpbmRcZlAoMSksCitcZkJ4YXJnc1xmUCgxKS4KKy4KKy5TSCBBVVRFVVIKK0NvcHlyaWdodCBcKGNvIDE5OTUsMTk5NiBFcmljayBCcmFuZGVyaG9yc3QKKy5zcAorQ2UgcHJvZ3JhbW1lIGVzdCB1biBsb2dpY2llbCBsaWJyZVwgOyB2b3lleiBsYSCrXCBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZVwguwordmVyc2lvbiAyIG91IHN1cOlyaWV1cmUgcG91ciBsZSBjb3B5cmlnaHQuIElsIG4neSBhIFBBUyBkZSBnYXJhbnRpZS4KKy5TSCBUUkFEVUNUSU9OCitBcmllbCBWQVJESSA8YXJpZWwudmFyZGlAZnJlZXNiZWUuZnI+LCAyMDAyLgorUGhpbGlwcGUgQmF0YWlsbGVyLCAyMDA2LgorTmljb2xhcyBGcmFu529pcywgMjAwNi4KK1ZldWlsbGV6IHNpZ25hbGVyIHRvdXRlIGVycmV1ciDgIDxkZWJpYW5cLWwxMG5cLWZyZW5jaEBsaXN0cy5kZWJpYW4ub3JnPi4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL2ZyL2Rwa2ctcGFyc2VjaGFuZ2Vsb2cuMSBiL2Rwa2ctMS4xNi4xLjEvbWFuL2ZyL2Rwa2ctcGFyc2VjaGFuZ2Vsb2cuMQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kZGNiNmU1Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vZnIvZHBrZy1wYXJzZWNoYW5nZWxvZy4xCkBAIC0wLDAgKzEsMTM3IEBACisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkcGtnXC1wYXJzZWNoYW5nZWxvZyAxIDIwMTFcLTA4XC0xNCAiUHJvamV0IERlYmlhbiIgIlV0aWxpdGFpcmVzIGRlIGRwa2ciCisuU0ggTk9NCitkcGtnXC1wYXJzZWNoYW5nZWxvZyBcLSBBbmFseXNlciB1biBmaWNoaWVyIGNoYW5nZWxvZyBEZWJpYW4uCisuCisuU0ggU1lOT1BTSVMKK1xmQmRwa2dcLXBhcnNlY2hhbmdlbG9nXGZQIFtcZklvcHRpb25cZlAuLi5dCisuCisuU0ggREVTQ1JJUFRJT04KK1xmQmRwa2dcLXBhcnNlY2hhbmdlbG9nXGZQIGxpdCBldCBmYWl0IGwnYW5hbHlzZSBkdSBmaWNoaWVyIKtcIGNoYW5nZWxvZ1wguyBkJ3VuZQorYXJib3Jlc2NlbmNlIHNvdXJjZSBk6XBhcXVldOllIGV0IGFmZmljaGUgbGVzIGluZm9ybWF0aW9ucyBxdSdpbCBjb250aWVudAorc3VyIGxhIHNvcnRpZSBzdGFuZGFyZCBldCBzb3VzIHVuZSBmb3JtZSBsaXNpYmxlIHBhciBsYSBtYWNoaW5lLgorLgorLlNIIE9QVElPTlMKKy5UUCAKK1xmQlwtbFxmUFxmSWZpY2hpZXIvY2hhbmdlbG9nXGZQCitJbmRpcXVlIGxlIGZpY2hpZXIgZCdlbnJlZ2lzdHJlbWVudCBkZXMgY2hhbmdlbWVudHMgb/kgdHJvdXZlciBkZXMKK3JlbnNlaWduZW1lbnRzLiBQYXIgZOlmYXV0LCBjJ2VzdCBsZSBmaWNoaWVyIFxmQmRlYmlhbi9jaGFuZ2Vsb2dcZlAuCisuVFAgCitcZkJcLUZcZlBcZklmb3JtYXRcLWR1XC1jaGFuZ2Vsb2dcZlAKK0Rvbm5lIGxlIGZvcm1hdCBkdSBmaWNoaWVyIGNoYW5nZWxvZy4gUGFyIGTpZmF1dCwgYydlc3QgdW5lIGxpZ25lIHNw6WNpYWxlLAorcHLocyBkZSBsYSBmaW4gZHUgZmljaGllciwgcXVpIGwnaW5kaXF1ZVwgOyBzaW5vbiwgb24gdXRpbGlzZSBsZSBmb3JtYXQKK2NsYXNzaXF1ZSBcZkJkZWJpYW5cZlAuCisuVFAgCitcZkJcLUxcZlBcZklyZXBfbGliXGZQCitTcOljaWZpZSB1biBy6XBlcnRvaXJlIHN1cHBs6W1lbnRhaXJlIHBvdXIgbGEgcmVjaGVyY2hlIGRlIHNjcmlwdHMKK2QnYW5hbHlzZS4gQ2UgculwZXJ0b2lyZSBlc3QgZXhhbWlu6SBhdmFudCBsZXMgculwZXJ0b2lyZXMgcGFyIGTpZmF1dCBxdWkKK3NvbnQgXGZCL3Vzci9sb2NhbC9saWIvZHBrZy9wYXJzZWNoYW5nZWxvZ1xmUCBldAorXGZCL3Vzci9saWIvZHBrZy9wYXJzZWNoYW5nZWxvZ1xmUC4KKy5UUCAKK1xmQlwtaFxmUCwgXGZCXC1cLWhlbHBcZlAKK0FmZmljaGUgdW4gbWVzc2FnZSBkJ2FpZGUgcHVpcyBxdWl0dGUuCisuVFAgCitcZkJcLVwtdmVyc2lvblxmUAorQWZmaWNoZSBsZSBudW3pcm8gZGUgdmVyc2lvbiBwdWlzIHF1aXR0ZS4KKy5TUyAiT3B0aW9ucyBkZSBmaWx0cmFnZSIKK0xlcyBvcHRpb25zIHN1aXZhbnRlcyBwZXV2ZW50IOp0cmUgdXRpbGlz6WVzIHBvdXIgaW5mbHVlbmNlciBsYSBzb3J0aWUgZGUKK2wnYW5hbHlzZXVyIGR1IGpvdXJuYWwgZGVzIG1vZGlmaWNhdGlvbnMgKKtcIGNoYW5nZWxvZ1wguyksIHBhciBleGVtcGxlIGxhCitnYW1tZSBkJ2VudHLpZXMgb3UgbGUgZm9ybWF0IGRlIHNvcnRpZS4gSWxzIGRvaXZlbnQg6nRyZSBn6XLpcyBwYXIgbGUgc2NyaXB0CitkJ2FuYWx5c2UgZW4gcXVlc3Rpb24uIFZvaXIgYXVzc2kgXGZCQ0FWRUFUU1xmUC4KKy5UUCAKK1xmQlwtXC1mb3JtYXRcZlBcZkkgb3V0cHV0Zm9ybWF0XGZQCitS6GdsZSBsZSBmb3JtYXQgZGUgc29ydGllLiBBY3R1ZWxsZW1lbnQgbGVzIHZhbGV1cnMgZ+ly6WVzIHNvbnQgXGZJZHBrZ1xmUCBldAorXGZJcmZjODIyXGZQLiBcZklkcGtnXGZQIGVzdCBsZSBmb3JtYXQgY2xhc3NpcXVlIGRlIHNvcnRpZSAoYXZhbnQgcXVlIGNldHRlIG9wdGlvbgorbidleGlzdGUpIGV0IGwnb3B0aW9uIHBhciBk6WZhdXQuIElsIHNlIGNvbXBvc2UgZCd1biBwYXJhZ3JhcGhlIGRhbnMgbGUKK2Zvcm1hdCBkdSBmaWNoaWVyIGRlIGNvbnRy9GxlIERlYmlhbiAodm9pciBcZkJkZWJcLWNvbnRyb2xcZlAoNSkpLiBTaSBwbHVzIGQndW5lCitlbnRy6WUgZXN0IGRlbWFuZOllLCBhbG9ycyBsYSBwbHVwYXJ0IGRlcyBjaGFtcHMgc29udCB0aXLpcyBkZSBsYSBkZXJuaehyZQorZW50cullLCBzYXVmIHMnaWwgeSBhIGwnaW5kaWNhdGlvblwgOgorLlJTCisuVFAgCitcZkJTb3VyY2U6XGZQXGZJIHBrZ1wtbmFtZVxmUAorLlRQIAorXGZCVmVyc2lvbjpcZlBcZkkgdmVyc2lvblxmUAorLlRQIAorXGZCRGlzdHJpYnV0aW9uOlxmUFxmSSB0YXJnZXRcLWRpc3RyaWJ1dGlvblxmUAorLlRQIAorXGZCVXJnZW5jeTpcZlBcZkkgdXJnZW5jeVxmUAorTGEgcHJpb3JpdOkgbGEgcGx1cyBoYXV0ZSBkZSBjZWxsZXMgaW5kaXF16WVzIGVzdCB1dGlsaXPpZS4KKy5UUCAKK1xmQk1haW50YWluZXI6XGZQXGZJIGF1dGhvclxmUAorLlRQIAorXGZCRGF0ZTpcZlBcZkkgZGF0ZVxmUAorLlRQIAorXGZCQ2xvc2VzOlxmUFxmSSBidWdcLW51bWJlclxmUAorTGVzIGNoYW1wcyCrXCBDbG9zZXNcILsgZGUgdG91dGVzIGxlcyBlbnRy6WVzIGluY2x1c2VzIHNvbnQgZnVzaW9ubulzLgorLlRQIAorXGZCQ2hhbmdlczpcZlBcZkkgY2hhbmdlbG9nXC1lbnRyaWVzXGZQCitMZSB0ZXh0ZSBkZSB0b3V0ZXMgbGVzIGVudHLpZXMgZGUgY2hhbmdlbG9nIGVzdCBjb25jYXTpbukuIFBvdXIgZmFpcmUgZGUgY2UKK2NoYW1wIHVuIGNoYW1wIGRlIGNvbnRy9GxlIERlYmlhbiB2YWxpZGUsIGxlcyBsaWduZXMgbXVsdGlwbGVzIHF1aSBzb250Cit2aWRlcyBzb250IHJlbXBsYWPpZXMgcGFyIHVuIHBvaW50IFxmQiIuIlxmUCBldCB0b3V0ZXMgbGVzIGxpZ25lcyBzb250CitpbnRlbnTpZXMgcGFyIHVuIHNldWwgZXNwYWNlLiBMZSBjb250ZW51IGV4YWN0IGTpcGVuZCBkdSBmb3JtYXQgZHUKK2NoYW5nZWxvZy4KKy5SRQorLklQCitJbCBlc3QgcG9zc2libGUgZCdhdm9pciBkJ2F1dHJlcyBjaGFtcHMgcXVpIHNvbnQgZOlmaW5pcyBwYXIgbCd1dGlsaXNhdGV1ci4KKy5JUAorTGUgZm9ybWF0IFxmQnJmYzgyMlxmUCB1dGlsaXNlIGxlcyBt6m1lcyBjaGFtcHMgbWFpcyBsZSBy6XN1bHRhdCBlc3QgdW4KK3BhcmFncmFwaGUgZGlzdGluY3QgcG91ciBjaGFxdWUgZW50cullIGR1IGNoYW5nZWxvZyBhZmluIHF1ZSB0b3V0ZXMgbGVzCitt6XRhZG9ubullcyBkZSBjaGFxdWUgZW50cullIHNvaXQgcHLpc2Vydullcy4KKy5UUCAKK1xmQlwtXC1zaW5jZVxmUCBcZkl2ZXJzaW9uXGZQLCBcZkJcLXNcZlBcZkl2ZXJzaW9uXGZQLFxmQiBcLXZcZlBcZkl2ZXJzaW9uXGZQCitpbmNsdXQgdG91cyBsZXMgY2hhbmdlbWVudHMgcXVpIG9udCBzdWl2aSBsYSBcZkl2ZXJzaW9uXGZQLgorLlRQIAorXGZCXC1cLXVudGlsXGZQIFxmSXZlcnNpb25cZlAsIFxmQlwtdVxmUFxmSXZlcnNpb25cZlAKK2luY2x1dCB0b3VzIGxlcyBjaGFuZ2VtZW50cyBxdWkgb250IGV1IGxpZXUgYXZhbnQgbGEgXGZJdmVyc2lvblxmUC4KKy5UUCAKK1xmQlwtXC1mcm9tXGZQIFxmSXZlcnNpb25cZlAsIFxmQlwtZlxmUFxmSXZlcnNpb25cZlAKK2luY2x1dCB0b3VzIGxlcyBjaGFuZ2VtZW50cyBkZXB1aXMgbGEgXGZJdmVyc2lvblxmUCAoaW5jbHVzZSkuCisuVFAgCitcZkJcLVwtdG9cZlAgXGZJdmVyc2lvblxmUCwgXGZCXC10XGZQXGZJdmVyc2lvblxmUAoraW5jbHV0IHRvdXMgbGVzIGNoYW5nZW1lbnRzIGFwcG9ydOlzIGp1c3F1J+AgbGEgXGZJdmVyc2lvblxmUCBjb21wcmlzZS4KKy5UUCAKK1xmQlwtXC1jb3VudFxmUCBcZklub21icmVcZlAsIFxmQlwtY1xmUFxmSW5vbWJyZVxmUCwgXGZCXC1uXGZQXGZJbm9tYnJlXGZQCitpbmNsdXQgY2UgXGZJbm9tYnJlXGZQIGQnZW50cullcyBkZXB1aXMgbGUgZOlidXQgKG91IGxhIGZpbiBzaSBsZSBcZklub21icmVcZlAgZXN0CitpbmbpcmlldXIg4CAwKS4KKy5UUCAKK1xmQlwtXC1vZmZzZXRcZlAgXGZJbm9tYnJlXGZQLCBcZkJcLW9cZlBcZklub21icmVcZlAKK21vZGlmaWUgbGUgcG9pbnQgZGUgZOlwYXJ0IHBvdXIgq1wgXC1cLWNvdW50XCC7LCDgIGNvbXB0ZXIgZHUgZOlidXQgKG91IGxhIGZpbgorc2kgbGUgXGZJbm9tYnJlXGZQIGVzdCBpbmbpcmlldXJlIOAgMCkuCisuVFAgCitcZkJcLVwtYWxsXGZQCitpbmNsdXQgdG91dGVzIGxlcyBtb2RpZmljYXRpb25zLiBOb3RlXCA6XCBkJ2F1dHJlcyBvcHRpb25zIGRldmllbm5lbnQgc2FucworZWZmZXQgbG9yc3F1ZSBjZWxsZVwtY2kgZXN0IHV0aWxpc+llLgorLgorLlNIIENBVkVBVFMKK1RvdXRlcyBsZXMgXGZCT3B0aW9ucyBkJ2FuYWx5c2VcZlAgc2F1ZiCrXCBcLXZcILsgc29udCBn6XLpZXMgcGFyIFxmQmRwa2dcZlAgYXZlYyBsYQordmVyc2lvbiAxLjE0LjE2IGV0IHN1aXZhbnRlcy4gTGVzIGFuYWx5c2V1cnMgdGllcnMgcG91ciBsZSBmb3JtYXQgZHUKK2NoYW5nZWxvZyBwbHVzIHZpZXV4IHF1ZSBcZklkZWJpYW5cZlAgbmUgZ+hyZW50IHBldXRcLep0cmUgcGFzIHRvdXRlcyBsZXMKK29wdGlvbnMuCisuCisuU0ggRklDSElFUlMKKy5UUCAKK1xmQmRlYmlhbi9jaGFuZ2Vsb2dcZlAKK0xlIGZpY2hpZXIgZCdlbnJlZ2lzdHJlbWVudCBkZXMgbW9kaWZpY2F0aW9uc1wgOyBvbiBzJ2VuIHNlcnQgcG91ciBjb25uYe50cmUKK2xlcyBpbmZvcm1hdGlvbnMgcXVpIGTpcGVuZGVudCBkJ3VuZSB2ZXJzaW9uIGR1IHBhcXVldCBzb3VyY2UsIHBhciBleGVtcGxlCitsJ3VyZ2VuY2Ugb3UgbGEgZGlzdHJpYnV0aW9uIGQndW5lIGluc3RhbGxhdGlvbiBzdXIgbGUgc2VydmV1ciwgbGVzCittb2RpZmljYXRpb25zIGZhaXRlcyBkZXB1aXMgdGVsbGUg6WRpdGlvbiBldCBsZSBudW3pcm8gZGUgbGEgdmVyc2lvbiBzb3VyY2UKK2x1aVwtbeptZS4KKy4KKy5TSCBBVVRFVVJTCitDb3B5cmlnaHQgXChjbyAxOTk1XC0xOTk2IElhbiBKYWNrc29uCisuYnIKK0NvcHlyaWdodCBcKGNvIDIwMDAgV2ljaGVydCBBa2tlcm1hbgorLmJyCitDb3B5cmlnaHQgXChjbyAyMDA3LCAyMDA4IEZyYW5rIExpY2h0ZW5oZWxkCisuc3AKK0NlIHByb2dyYW1tZSBlc3QgdW4gbG9naWNpZWwgbGlicmVcIDsgdm95ZXogbGEgq1wgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2VcILsKK3ZlcnNpb24gMiBvdSBzdXDpcmlldXJlIHBvdXIgbGUgY29weXJpZ2h0LiBJbCBuJ3kgYSBQQVMgZGUgZ2FyYW50aWUuCisuU0ggVFJBRFVDVElPTgorQXJpZWwgVkFSREkgPGFyaWVsLnZhcmRpQGZyZWVzYmVlLmZyPiwgMjAwMi4KK1BoaWxpcHBlIEJhdGFpbGxlciwgMjAwNi4KK05pY29sYXMgRnJhbudvaXMsIDIwMDYuCitWZXVpbGxleiBzaWduYWxlciB0b3V0ZSBlcnJldXIg4CA8ZGViaWFuXC1sMTBuXC1mcmVuY2hAbGlzdHMuZGViaWFuLm9yZz4uCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9mci9kcGtnLXF1ZXJ5LjEgYi9kcGtnLTEuMTYuMS4xL21hbi9mci9kcGtnLXF1ZXJ5LjEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzEwMGE0YgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL2ZyL2Rwa2ctcXVlcnkuMQpAQCAtMCwwICsxLDIzMSBAQAorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlwiCisuXCIgVGhpcyBmaWxlIHdhcyBnZW5lcmF0ZWQgd2l0aCBwbzRhLiBUcmFuc2xhdGUgdGhlIHNvdXJjZSBmaWxlLgorLlwiCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuVEggZHBrZ1wtcXVlcnkgMSAyMDExXC0wOFwtMTQgIlByb2pldCBEZWJpYW4iICJzdWl0ZSBkcGtnIgorLlNIIE5PTQorZHBrZ1wtcXVlcnkgXC0gVW4gb3V0aWwgcG91ciBpbnRlcnJvZ2VyIGxhIGJhc2UgZGUgZG9ubullcyBkZSBkcGtnCisuCisuU0ggU1lOT1BTSVMKK1xmQmRwa2dcLXF1ZXJ5XGZQIFtcZklvcHRpb25cZlAuLi5dIFxmSWNvbW1hbmRlXGZQCisuCisuU0ggREVTQ1JJUFRJT04KK1xmQmRwa2dcLXF1ZXJ5XGZQIGVzdCB1biBvdXRpbCBwb3VyIGFmZmljaGVyIGRlcyBpbmZvcm1hdGlvbnMgc3VyIGxlcyBwYXF1ZXRzCitjb25udXMgcGFyIGxhIGJhc2UgZGUgZG9ubullcyBkZSBcZkJkcGtnXGZQLgorLgorLlNIIENPTU1BTkRFUworLlRQIAorXGZCXC1sXGZQLCBcZkJcLVwtbGlzdFxmUCBbXGZJcGFja2FnZVwtbmFtZVwtcGF0dGVyblxmUC4uLl0KK0FmZmljaGUgbGVzIHBhcXVldHMgY29ycmVzcG9uZGFudHMgYXUgbW90aWYgZG9ubukuIFNpIGF1Y3VuCitcZklub21cLXBhcXVldFwtbW90aWZcZlAgbidlc3QgaW5kaXF16SwgYWZmaWNoZSB0b3VzIGxlcyBwYXF1ZXRzIGRlCitcZkkvdmFyL2xpYi9kcGtnL3N0YXR1c1xmUCwgc2F1ZiBjZXV4IHF1aSBuZSBzb250IHBhcyBpbnN0YWxs6XMgKGMnZXN0IOAgZGlyZQorY2V1eCBxdWkgb250IOl06SBwculj6WRlbW1lbnQgcHVyZ+lzKS4gTGVzIG3pdGFjYXJhY3TocmVzIG9yZGluYWlyZXMgZGUKK2wnaW50ZXJwcul0ZXVyIGRlIGNvbW1hbmRlcyBzb250IGF1dG9yaXPpcyBkYW5zIFxmSW5vbVwtcGFxdWV0XC1tb3RpZlxmUC4gSWwKK2ZhdWRyYSBzYW5zIGRvdXRlIG1ldHRyZSBcZklub21cLXBhcXVldFwtbW90aWZcZlAgZW50cmUgYXBvc3Ryb3BoZXMgcG91ciDpdml0ZXIKK2wnZXhwYW5zaW9uIGRlcyBub21zIGRlIGZpY2hpZXIgcGFyIGwnaW50ZXJwcul0ZXVyIGRlIGNvbW1hbmRlcy4gUGFyCitleGVtcGxlLCB0b3VzIGxlcyBwYXF1ZXRzIGRvbnQgbGUgbm9tIGNvbW1lbmNlIHBhciCrXCBsaWJjNlwguyBzZXJvbnQgYWZmaWNo6XMKK3BhciBsYSBjb21tYW5kZVwgOgorCisubmYKK1xmQmRwa2dcLXF1ZXJ5IFwtbCBcKGFxbGliYzYqXChhcVxmUAorLmZpCisKK0xlcyB0cm9pcyBwcmVtaehyZXMgY29sb25uZXMgYWZmaWNo6WVzIG1vbnRyZW50IGRhbnMgbCdvcmRyZVwgOiBsJ2FjdGlvbgorc291aGFpdOllLCBsJ+l0YXQgZHUgcGFxdWV0IGV0IGxlcyBlcnJldXJzLgorCitBY3Rpb24gc291aGFpdOllXCA6CisubmYKKyAgdSA9IEluY29ubnUgKFVua25vd24pCisgIGkgPSBJbnN0YWxsZXIgKEluc3RhbGwpCisgIGggPSBHYXJkZXIgKEhvbGQpCisgIHIgPSBTdXBwcmltZXIgKFJlbW92ZSkKKyAgcCA9IFB1cmdlciAoUHVyZ2UpCisuZmkKKworyXRhdCBkdSBwYXF1ZXRcIDoKKy5uZgorICBuID0gTm9uIGluc3RhbGzpIChOb3RcLWluc3RhbGxlZAorKSAgYyA9IEZpY2hpZXJzIGRlIGNvbmZpZ3VyYXRpb24gKENvbmZpZ1wtZmlsZXMpCisgIEggPSBTZW1pXC1pbnN0YWxs6SAoSGFsZlwtaW5zdGFsbGVkKQorICBVID0gROljb21wcmVzc+kgKFVucGFja2VkKQorICBGID0gU2VtaVwtY29uZmlndXLpIChIYWxmXC1jb25maWd1cmVkKQorICBXID0gQXR0ZW50ZSBkZSBk6WNsZW5jaGVtZW50cyAoVHJpZ2dlcnNcLWF3YWl0aW5nKQorICB0ID0gROljbGVuY2hlbWVudHMgZW4gYXR0ZW50ZSAoVHJpZ2dlcnNcLXBlbmRpbmcpCisgIGkgPSBJbnN0YWxs6SAoSW5zdGFsbGVkKQorLmZpCisKK0RyYXBlYXV4IGQnZXJyZXVyXCA6CisubmYKKyAgPGVtcHR5PiA9IChub25lKQorICBSID0gUmVpbnN0XC1yZXF1aXJlZAorLmZpCisKK1VuIOl0YXQgZW4gbWFqdXNjdWxlcyBvdSB1bmUgbGV0dHJlIGQnZXJyZXVyIGluZGlxdWVudCBxdWUgbGUgcGFxdWV0IHBldXQKK3Byb3ZvcXVlciBkZXMgcHJvYmzobWVzIGdyYXZlcy4gVmV1aWxsZXogY29uc3VsdGVyIFxmQmRwa2dcZlAoMSkg4CBwcm9wb3MgZGVzCivpdGF0cyBldCBkcmFwZWF1eCBjaVwtZGVzc3VzLgorCitPbiBuZSBwZXV0IHBhcyBjb25maWd1cmVyIGxlIGZvcm1hdCBkZSBzb3J0aWUgZGUgY2V0dGUgb3B0aW9uLiBJbCBzJ2FkYXB0ZQorYXV0b21hdGlxdWVtZW50IOAgbGEgbGFyZ2V1ciBkdSB0ZXJtaW5hbC4gQ2UgZm9ybWF0IGVzdCBkZXN0aW7pIGF1eCBodW1haW5zCitldCBsYSBtYWNoaW5lIGxlIGxpdCBtYWwuIFZveWV6IFxmQlwtV1xmUCAoXGZCXC1cLXNob3dcZlApIGV0IFxmQlwtXC1zaG93Zm9ybWF0XGZQIHBvdXIKK3VuZSBwb3NzaWJsZSBjb25maWd1cmF0aW9uIGRlIGNlIGZvcm1hdC4KKy5UUCAKK1xmQlwtV1xmUCwgXGZCXC1cLXNob3dcZlAgW1xmSXBhY2thZ2VcLW5hbWVcLXBhdHRlcm5cZlAuLi5dCitUb3V0IGNvbW1lIGwnb3B0aW9uIFxmQlwtXC1saXN0XGZQLCBjZXR0ZSBvcHRpb24gYWZmaWNoZSBsYSBsaXN0ZSBkZXMgcGFxdWV0cyBxdWkKK2NvcnJlc3BvbmRlbnQgYXUgbW90aWYgZG9ubukuIExhIHNvcnRpZSBwZXV0IGNlcGVuZGFudCDqdHJlIGZvcm1hdOllIGVuCit1dGlsaXNhbnQgbCdvcHRpb24gXGZCXC1cLXNob3dmb3JtYXRcZlAuIExlIGZvcm1hdCBkZSBzb3J0aWUgcGFyIGTpZmF1dCBlc3QgbGUKK3N1aXZhbnRcIDogdW5lIGxpZ25lIHBvdXIgY2hhcXVlIHBhcXVldCwgYXZlYyBsZSBub20gZXQgbGEgdmVyc2lvbiBpbnN0YWxs6WUsCitz6XBhcukgcGFyIHVuZSB0YWJ1bGF0aW9uLgorLlRQIAorXGZCXC1zXGZQLCBcZkJcLVwtc3RhdHVzXGZQIFxmSW5vbVwtcGFxdWV0XGZQIC4uLgorUmVwb3J0IHN0YXR1cyBvZiBzcGVjaWZpZWQgcGFja2FnZS4gVGhpcyBqdXN0IGRpc3BsYXlzIHRoZSBlbnRyeSBpbiB0aGUKK2luc3RhbGxlZCBwYWNrYWdlIHN0YXR1cyBkYXRhYmFzZS4gV2hlbiBtdWx0aXBsZSBcZklwYWNrYWdlXC1uYW1lXGZQIGFyZSBsaXN0ZWQsCit0aGUgcmVxdWVzdGVkIHN0YXR1cyBlbnRyaWVzIGFyZSBzZXBhcmF0ZWQgYnkgYW4gZW1wdHkgbGluZS4KKy5UUCAKK1xmQlwtTFxmUCwgXGZCXC1cLWxpc3RmaWxlc1xmUCBcZklub21cLXBhcXVldFxmUC4uLgorTGlzdCBmaWxlcyBpbnN0YWxsZWQgdG8geW91ciBzeXN0ZW0gZnJvbSBcZklwYWNrYWdlXC1uYW1lXGZQLiBXaGVuIG11bHRpcGxlCitcZklwYWNrYWdlXC1uYW1lXGZQIGFyZSBsaXN0ZWQsIHRoZSByZXF1ZXN0ZWQgbGlzdHMgb2YgZmlsZXMgYXJlIHNlcGFyYXRlZCBieSBhbgorZW1wdHkgbGluZS4gSG93ZXZlciwgbm90ZSB0aGF0IGZpbGVzIGNyZWF0ZWQgYnkgcGFja2FnZVwtc3BlY2lmaWMKK2luc3RhbGxhdGlvblwtc2NyaXB0cyBhcmUgbm90IGxpc3RlZC4KKy5UUCAKK1xmQlwtY1xmUCwgXGZCXC1cLWNvbnRyb2xcLXBhdGhcZlAgXGZJbm9tXC1wYXF1ZXRcZlAgW1xmSWZpY2hpZXJcLWNvbnRy9GxlXGZQXQorQWZmaWNoZSBsZXMgY2hlbWlucyBwb3VyIGxlcyBmaWNoaWVycyBkZSBjb250cvRsZSBpbnN0YWxs6XMgc3VyIHZvdHJlCitzeXN06G1lIHBvdXIgXGZJbm9tXC1wYXF1ZXRcZlAuIFNpIFxmSWZpY2hpZXJcLWNvbnRy9GxlXGZQIGVzdCBpbmRpcXXpLCBzZXVsIGxlCitjaGVtaW4gcG91ciBjZSBmaWNoaWVyIGRlIGNvbnRy9GxlIHNlcmEgYWZmaWNo6SwgcydpbCBlc3QKK3By6XNlbnQuIFxmQkF0dGVudGlvblxmUFwgOlwgY2V0dGUgY29tbWFuZGUgZXN0IHNlbWlcLXB1YmxpcXVlIGV0IG5lIGRldnJhaXQg6nRyZQordXRpbGlz6WUgcXUnZW4gZGVybmllciByZXNzb3J0IGV0IHNpIGF1Y3VuZSBhdXRyZSBpbnRlcmZhY2Ugbidlc3QKK2Rpc3BvbmlibGUuIEVsbGUgcG91cnJhaXQgZGV2ZW5pciBvYnNvbOh0ZSBkYW5zIGxlIGZ1dHVyIHNpIGRlIG1laWxsZXVyZXMKK2ludGVyZmFjZXMgc29udCBtaXNlcyBlbiBwbGFjZSBvdSBzaSBsZXMgZOlmYXV0cyBhY3R1ZWxzIGQnYXJjaGl0ZWN0dXJlIHNvbnQKK3Lpc29sdXMuCisuVFAgCitcZkJcLVNcZlAsIFxmQlwtXC1zZWFyY2hcZlAgXGZJbW90aWZcLWRlXC1ub21cLWFcLXJlY2hlcmNoZXJcZlAuLi4KK1NlYXJjaCBmb3IgcGFja2FnZXMgdGhhdCBvd24gZmlsZXMgY29ycmVzcG9uZGluZyB0byB0aGUgZ2l2ZW4gcGF0dGVybi4KK1N0YW5kYXJkIHNoZWxsIHdpbGRjaGFycyBjYW4gYmUgdXNlZCBpbiB0aGUgcGF0dGVybi4gIFRoaXMgY29tbWFuZCB3aWxsIG5vdAorbGlzdCBleHRyYSBmaWxlcyBjcmVhdGVkIGJ5IG1haW50YWluZXIgc2NyaXB0cywgbm9yIHdpbGwgaXQgbGlzdAorYWx0ZXJuYXRpdmVzLgorLlRQIAorXGZCXC1wXGZQLCBcZkJcLVwtcHJpbnRcLWF2YWlsXGZQIFxmSW5vbVwtcGFxdWV0XGZQLi4uCitEaXNwbGF5IGRldGFpbHMgYWJvdXQgXGZJcGFja2FnZVwtbmFtZVxmUCwgYXMgZm91bmQgaW4KK1xmSS92YXIvbGliL2Rwa2cvYXZhaWxhYmxlXGZQLiBXaGVuIG11bHRpcGxlIFxmSXBhY2thZ2VcLW5hbWVcZlAgYXJlIGxpc3RlZCwgdGhlCityZXF1ZXN0ZWQgXGZJYXZhaWxhYmxlXGZQIGVudHJpZXMgYXJlIHNlcGFyYXRlZCBieSBhbiBlbXB0eSBsaW5lLgorCitVc2VycyBvZiBBUFRcLWJhc2VkIGZyb250ZW5kcyBzaG91bGQgdXNlIFxmQmFwdFwtY2FjaGUgc2hvd1xmUCBcZklwYWNrYWdlXC1uYW1lXGZQCitpbnN0ZWFkIGFzIHRoZSBcZklhdmFpbGFibGVcZlAgZmlsZSBpcyBvbmx5IGtlcHQgdXBcLXRvXC1kYXRlIHdoZW4gdXNpbmcKK1xmQmRzZWxlY3RcZlAuCisuVFAgCitcZkJcLWhcZlAsIFxmQlwtXC1oZWxwXGZQCitBZmZpY2hlIHVuIG1lc3NhZ2UgZCdhaWRlIHB1aXMgcXVpdHRlLgorLlRQIAorXGZCXC1cLXZlcnNpb25cZlAKK0FmZmljaGUgbGUgbnVt6XJvIGRlIHZlcnNpb24gcHVpcyBxdWl0dGUuCisuCisuU0ggT1BUSU9OUworLlRQIAorXGZCXC1cLWFkbWluZGlyXGZQPVxmSWRpclxmUAorQ2hhbmdlIGwnZW5kcm9pdCBv+SBzZSB0cm91dmUgbGEgYmFzZSBkZSBkb25u6WVzIGRlIFxmQmRwa2dcZlAuIFBhciBk6WZhdXQsCitjJ2VzdCBcZkkvdmFyL2xpYi9kcGtnXGZQLgorLlRQIAorXGZCXC1mXGZQLCBcZkJcLVwtc2hvd2Zvcm1hdD1cZlBcZklmb3JtYXRcZlAKK0NldHRlIG9wdGlvbiBzZXJ0IOAgc3DpY2lmaWVyIGxlIGZvcm1hdCBkZSBzb3J0aWUgZGUgbCdvcHRpb24gXGZCXC1cLXNob3dcZlAuIENlCitmb3JtYXQgc2VyYSB1dGlsaXPpIHBvdXIgY2hhcXVlIHBhcXVldCBsaXN06S4KKworRGFucyBsYSBjaGHubmUsIFwobHFcZkJcZVxmUFwocnEgZOlzcOljaWZpZSBsZSBjYXJhY3TocmUKKworLm5mCisgICAgXGZCXGVuXGZQICBub3V2ZWxsZSBsaWduZQorICAgIFxmQlxlclxmUCAgcmV0b3VyIGNoYXJpb3QKKyAgICBcZkJcZXRcZlAgIHRhYnVsYXRpb24KKy5maQorCitcKGxxXGZCXGVcZlBcKHJxIGF2YW50IHVuIGNhcmFjdOhyZSBzdXBwcmltZSBsYSBzaWduaWZpY2F0aW9uIGR1IGNhcmFjdOhyZSBxdWkKK3N1aXQuIEMnZXN0IHV0aWxlIHBvdXIgbGVzIGNhcmFjdOhyZXMgXChscVxmQlxlXGZQXChycSBhbmQgXChscVxmQiRcZlBcKHJxLgorCitMJ2luZm9ybWF0aW9uIHJlbGF0aXZlIOAgdW4gcGFxdWV0IHBldXQg6nRyZSBpbmRpcXXpZSBlbiBpbnPpcmFudCBkZXMgYXBwZWxzCitkZSB2YXJpYWJsZXMgc3DpY2lmaWFudCBkZXMgY2hhbXBzIGR1IHBhcXVldCBhdmVjIGxhIHN5bnRheGUgc3VpdmFudGVcIDoKK1wobHFcZkIke1xmUFxmSWZpZWxkXGZQW1xmQjtcZlBcZkl3aWR0aFxmUF1cZkJ9XGZQXChycS4gTGVzIGNoYW1wcyBzb250IGFsaWdu6XMg4CBkcm9pdGUsIOAKK21vaW5zIHF1ZSBsYSBsYXJnZXVyIG5lIHNvaXQgbulnYXRpdmUsIGF1cXVlbCBjYXMgaWxzIHNvbnQgYWxpZ27pcyDgCitnYXVjaGUuIExlcyBjaGFtcHMgc3VpdmFudHMgc29udCByZWNvbm51cywgbWFpcyBwYXMgbuljZXNzYWlyZW1lbnQKK2Rpc3BvbmlibGVzIGRhbnMgbGUgZmljaGllciBkJ+l0YXQgKHNldWxzIGxlcyBjaGFtcHMgaW50ZXJuZXMgb3UgbGVzIGNoYW1wcworY29uc2VydulzIGF2ZWMgbGUgcGFxdWV0IGJpbmFpcmUgbGUgc29udClcIDoKKworLm5mCisgICAgXGZCQXJjaGl0ZWN0dXJlXGZQCisgICAgXGZCQnVnc1xmUAorICAgIFxmQkNvbmZmaWxlc1xmUCAoaW50ZXJuYWwpCisgICAgXGZCQ29uZmlnXC1WZXJzaW9uXGZQIChpbnRlcm5hbCkKKyAgICBcZkJDb25mbGljdHNcZlAKKyAgICBcZkJCcmVha3NcZlAKKyAgICBcZkJEZXBlbmRzXGZQCisgICAgXGZCRGVzY3JpcHRpb25cZlAKKyAgICBcZkJFbmhhbmNlc1xmUAorICAgIFxmQkVzc2VudGlhbFxmUAorICAgIFxmQkZpbGVuYW1lXGZQIChpbnRlcm5hbCwgZnJvbnRcLWVuZCByZWxhdGVkKQorICAgIFxmQkhvbWVwYWdlXGZQCisgICAgXGZCSW5zdGFsbGVkXC1TaXplXGZQCisgICAgXGZCTUQ1c3VtXGZQIChpbnRlcm5hbCwgZnJvbnRcLWVuZCByZWxhdGVkKQorICAgIFxmQk1TRE9TXC1GaWxlbmFtZVxmUCAoaW50ZXJuYWwsIGZyb250XC1lbmQgcmVsYXRlZCkKKyAgICBcZkJNYWludGFpbmVyXGZQCisgICAgXGZCT3JpZ2luXGZQCisgICAgXGZCUGFja2FnZVxmUAorICAgIFxmQlByZVwtRGVwZW5kc1xmUAorICAgIFxmQlByaW9yaXR5XGZQCisgICAgXGZCUHJvdmlkZXNcZlAKKyAgICBcZkJSZWNvbW1lbmRzXGZQCisgICAgXGZCUmVwbGFjZXNcZlAKKyAgICBcZkJSZXZpc2lvblxmUCAob2Jzb2xldGUpCisgICAgXGZCU2VjdGlvblxmUAorICAgIFxmQlNpemVcZlAgKGludGVybmFsLCBmcm9udFwtZW5kIHJlbGF0ZWQpCisgICAgXGZCU291cmNlXGZQCisgICAgXGZCU3RhdHVzXGZQIChpbnRlcm5hbCkKKyAgICBcZkJTdWdnZXN0c1xmUAorICAgIFxmQlRhZ1xmUCAodXN1YWxseSBub3QgaW4gdGhlIC5kZWIgYnV0IGluIHRoZSByZXBvc2l0b3J5IFBhY2thZ2VzIGZpbGVzKQorICAgIFxmQlRyaWdnZXJzXC1Bd2FpdGVkXGZQIChpbnRlcm5hbCkKKyAgICBcZkJUcmlnZ2Vyc1wtUGVuZGluZ1xmUCAoaW50ZXJuYWwpCisgICAgXGZCVmVyc2lvblxmUAorLmZpCisKK0xlIGZvcm1hdCBwYXIgZOlmYXV0IGVzdCBsZSBzdWl2YW50XCA6CitcKGxxXGZCJHtQYWNrYWdlfVxldCR7VmVyc2lvbn1cZW5cZlBcKHJxLiBUb3VzIGxlcyBhdXRyZXMgY2hhbXBzIGR1IGZpY2hpZXIKK3N0YXR1cywgcGFyIGV4ZW1wbGUgZGVzIGNoYW1wcyBk6WZpbmlzIHBhciBsJ3V0aWxpc2F0ZXVyLCBwZXV2ZW50IOp0cmUKK2RlbWFuZOlzLiBJbHMgc2Vyb250IGFmZmljaOlzIG1haXMgc2FucyBhdWN1bmUgbWlzZSBlbiBmb3JtZSBldCBhdWN1bmUKK3bpcmlmaWNhdGlvbiBuJ2VzdCBmYWl0ZS4gUG91ciBvYnRlbmlyIGxlIG5vbSBkdSByZXNwb25zYWJsZSBkZSBkcGtnIGV0IGxhCit2ZXJzaW9uIGluc3RhbGzpZSwgZXjpY3V0ZXogcGFyIGV4ZW1wbGVcIDoKKworLm5mCisgIFxmQmRwa2dcLXF1ZXJ5IFwtVyBcLWY9XChhcSR7UGFja2FnZX0gJHtWZXJzaW9ufVxldCR7TWFpbnRhaW5lcn1cZW5cKGFxIGRwa2dcZlAKKy5maQorLgorLlNIICJDT0RFIERFIFNPUlRJRSIKKy5UUCAKK1xmQjBcZlAKK0xhIHJlcXXqdGUgZGVtYW5k6WUgcydlc3QgY29ycmVjdGVtZW50IGTpcm91bOllLgorLlRQIAorXGZCMVxmUAorRGVzIHByb2Js6G1lcyBzb250IHN1cnZlbnVzIGxvcnMgZGUgbCdhbmFseXNlIGRlIGxhIGxpZ25lIGRlIGNvbW1hbmRlIG91CitiaWVuIHBlbmRhbnQgbCdleOljdXRpb24gZGUgbGEgcmVxdep0ZS4gQ2VsYSBwZXV0IOp0cmUgdW5lIGFic2VuY2UgZGUKK2ZpY2hpZXIgb3UgZGUgcGFxdWV0IChzYXVmIHBvdXIgXC1cLWNvbnRyb2xcLXBhdGgpLgorLgorLlNIIEVOVklST05ORU1FTlQKKy5UUCAKK1xmQkRQS0dfQURNSU5ESVJcZlAKK0lmIHNldCBhbmQgdGhlIFxmQlwtXC1hZG1pbmRpclxmUCBvcHRpb24gaGFzIG5vdCBiZWVuIHNwZWNpZmllZCwgaXQgd2lsbCBiZSB1c2VkCithcyB0aGUgZHBrZyBkYXRhIGRpcmVjdG9yeS4KKy5UUCAKK1xmQkNPTFVNTlNcZlAKK0NlIHLpZ2xhZ2UgaW5mbHVlbmNlIGxhIHNvcnRpZSBkZSBsJ29wdGlvbiBcZkJcLVwtbGlzdFxmUCBlbiBtb2RpZmlhbnQgbGEgbGFyZ2V1cgorZCdhZmZpY2hhZ2UuCisuCisuU0ggQVVURVVSCitDb3B5cmlnaHQgXChjbyAyMDAxIFdpY2hlcnQgQWtrZXJtYW4KKy5zcAorQ2UgcHJvZ3JhbW1lIGVzdCB1biBsb2dpY2llbCBsaWJyZVwgOyB2b3lleiBsYSCrXCBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZVwguwordmVyc2lvbiAyIG91IHN1cOlyaWV1cmUgcG91ciBsZSBjb3B5cmlnaHQuIElsIG4neSBhIFBBUyBkZSBnYXJhbnRpZS4KKy4KKy5TSCAiVk9JUiBBVVNTSSIKK1xmQmRwa2dcZlAoMSkuCisKKy5TSCBUUkFEVUNUSU9OCitBcmllbCBWQVJESSA8YXJpZWwudmFyZGlAZnJlZXNiZWUuZnI+LCAyMDAyLgorUGhpbGlwcGUgQmF0YWlsbGVyLCAyMDA2LgorTmljb2xhcyBGcmFu529pcywgMjAwNi4KK1ZldWlsbGV6IHNpZ25hbGVyIHRvdXRlIGVycmV1ciDgIDxkZWJpYW5cLWwxMG5cLWZyZW5jaEBsaXN0cy5kZWJpYW4ub3JnPi4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL2ZyL2Rwa2ctc2NhbnBhY2thZ2VzLjEgYi9kcGtnLTEuMTYuMS4xL21hbi9mci9kcGtnLXNjYW5wYWNrYWdlcy4xCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjM4ZDQ1NjcKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9mci9kcGtnLXNjYW5wYWNrYWdlcy4xCkBAIC0wLDAgKzEsMTA1IEBACisuXCIgQ29weXJpZ2h0IMKpIDE5OTYgTWljaGFlbCBTaGllbGRzIDxzaGllbGRzQGNyb3NzbGluay5uZXQ+CisuXCIgVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgbWF5IHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisuXCIgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKy5cIiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorLlwiIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisuXCIKKy5cIiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisuXCIgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKy5cIiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisuXCIgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKy5cIgorLlwiIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisuXCIgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkcGtnXC1zY2FucGFja2FnZXMgMSAyMDExXC0wOFwtMTQgIlByb2pldCBEZWJpYW4iICJVdGlsaXRhaXJlcyBkZSBkcGtnIgorLlNIIE5PTQorZHBrZ1wtc2NhbnBhY2thZ2VzIFwtIGNy6WVyIGRlcyBmaWNoaWVycyBkJ2luZGV4IGRlIHBhcXVldHMuCisuCisuU0ggU1lOT1BTSVMKK1xmQmRwa2dcLXNjYW5wYWNrYWdlc1xmUCBbXGZJb3B0aW9uXGZQLi4uXSBcZkliaW5hcnlcLWRpclxmUCBbXGZJb3ZlcnJpZGVcLWZpbGVcZlAKK1tcZklwYXRoXC1wcmVmaXhcZlBdXSBcZkI+XGZQIFxmSVBhY2thZ2VzXGZQCisuCisuU0ggREVTQ1JJUFRJT04KK1xmQmRwa2dcLXNjYW5wYWNrYWdlc1xmUCB0cmllIHVuZSBhcmJvcmVzY2VuY2UgY29udGVuYW50IGRlcyBwYXF1ZXRzIGJpbmFpcmVzCitEZWJpYW4gZXQgY3LpZSB1biBmaWNoaWVyIKtcIFBhY2thZ2VzXCC7IHF1aSBwZXJtZXR0cmEg4CBcZkJhcHRcZlAoOCksCitcZkJkc2VsZWN0XGZQKDEpLCBvdSDgIHVuIGF1dHJlIHByb2dyYW1tZSwgZGUgc2F2b2lyIHF1ZWxzIHNvbnQgbGVzIHBhcXVldHMKK2luc3RhbGxhYmxlcy4gQ2VzIGZpY2hpZXJzIKtcIFBhY2thZ2VzXCC7IHNvbnQgc2VtYmxhYmxlcyDgIGNldXggcXUnb24gcGV1dAordHJvdXZlciBzdXIgbGVzIHNpdGVzIGQnYXJjaGl2ZXMgRGViaWFuIG91IHN1ciBkZXMgQ0QuIFF1YW5kIG9uIGNy6WUgdW4KK3LpcGVydG9pcmUgY29udGVuYW50IGRlcyBwYXF1ZXRzIHF1J29uIHZldXQgaW5zdGFsbGVyIHN1ciB1biBlbnNlbWJsZSBkZQorbWFjaGluZXMsIG9uIHBldXQgc2Ugc2VydmlyIHNvaVwtbeptZSBkZSBcZkJkcGtnXC1zY2FucGFja2FnZXNcZlAuCisuUFAKK1xmQk5vdGVcIDpcZlAgUG91ciBwb3V2b2lyIGFjY+lkZXIgYXZlYyBcZkJhcHRcZlAgYXUgZmljaGllciBQYWNrYWdlcyBjcunpLCBpbAorZmF1ZHJhIHNhbnMgZG91dGUgbGUgY29tcHJlc3NlciBhdmVjIFxmQmJ6aXAyXGZQKDEpIChxdWkgY3LpZSB1biBmaWNoaWVyCitQYWNrYWdlcy5iejIpIG91IFxmQmd6aXBcZlAoMSkgKHF1aSBjcullIHVuIGZpY2hpZXIgUGFja2FnZXMuZ3opLiBhcHQgaWdub3JlCitsZXMgZmljaGllcnMgUGFja2FnZXMgbm9uIGNvbXByZXNz6XMsIHNhdWYgcG91ciBkZXMgc291cmNlcyBsb2NhbGVzIChjYWQKK1xmQmZpbGU6Ly9cZlApLgorLlBQCitcZklyZXBcLWRlXC1iaW5haXJlc1xmUCBlc3QgbGUgbm9tIGRlIGwnYXJib3Jlc2NlbmNlIGRlcyBwYXF1ZXRzIGJpbmFpcmVzIChwYXIKK2V4ZW1wbGUgXGZCY29udHJpYi9iaW5hcnlcLWkzODYpXGZQIHF1ZSBsJ29uIHZldXQgdHJhaXRlci4gSWwgdmF1dCBtaWV1eCBxdSdlbGxlCitzb2l0IHJlbGF0aXZlIOAgbGEgcmFjaW5lIGRlIGwnYXJjaGl2ZSBEZWJpYW5cIDsgYWluc2kgY2hhcXVlIGNoYW1wCiurXCBGaWxlbmFtZVwguyBkYW5zIGxlIG5vdXZlYXUgZmljaGllciCrXCBQYWNrYWdlc1wguyBjb21tZW5jZXJhIHBhciBjZXR0ZQorY2hh7m5lLgorLlBQCitcZklmaWNoaWVyXC1kJ1wtb3ZlcnJpZGVcZlAgZXN0IGxlIG5vbSBkdSBmaWNoaWVyIHF1aSBjb250aWVudCBsZXMgcmVuc2VpZ25lbWVudHMKK3N1ciBsYSBtYW5p6HJlIGRvbnQgbGUgcGFxdWV0IHMnaW5z6HJlIGRhbnMgbGEgZGlzdHJpYnV0aW9uIChjZSBmaWNoaWVyIHBldXQKK+p0cmUgY29tcHJlc3PpKVwgOyB2b2lyIFxmQmRlYlwtb3ZlcnJpZGVcZlAoNSkuCisuUFAKK1xmSWNoZW1pblwt4FwtcHLpZml4ZXJcZlAgZXN0IHVuZSBjaGHubmUgZmFjdWx0YXRpdmUgcXVpIHBy6WZpeGVyYSBsZXMgY2hhbXBzCiurXCBGaWxlbmFtZVwguy4KKy5QUAorUydpbCBleGlzdGUgcGx1c2lldXJzIHZlcnNpb25zIGQndW4gcGFxdWV0LCBzZXVsZSBsYSBwbHVzIHLpY2VudGUgZXN0CithZmZpY2jpZSBlbiBzb3J0aWUuIFNpIGxlcyBwYXF1ZXRzIG9udCBsYSBt6m1lIHZlcnNpb24gbWFpcyBkaWZm6HJlbnQgcGFyCitsJ2FyY2hpdGVjdHVyZSwgc2V1bCBsZSBwcmVtaWVyIHRyb3V26SBlc3QgdXRpbGlz6S4KKy4KKy5TSCBPUFRJT05TCisuVFAgCitcZkJcLXRcZlAsIFxmQlwtXC10eXBlXGZQIFxmSXR5cGVcZlAKK1JlY2hlcmNoZSBkZXMgZmljaGllcnMgKi5cZkl0eXBlXGZQLCBwbHV09HQgcXVlIFxmSSouZGViXGZQLgorLlRQIAorXGZCXC11XGZQLCBcZkJcLVwtdWRlYlxmUAorQWxpYXMgXGZCb2Jzb2xldGVcZlAgcG91ciBcZkJcLXR1ZGViXGZQLgorLlRQIAorXGZCXC1lXGZQLCBcZkJcLVwtZXh0cmFcLW92ZXJyaWRlXGZQIFxmSWZpY2hpZXJcZlAKK0V4YW1pbmUgXGZJZmljaGllclxmUCDgIGxhIHJlY2hlcmNoZSBkJ6tcIG92ZXJyaWRlc1wguyBzdXBwbOltZW50YWlyZXMgKGNlCitmaWNoaWVyIHBldXQg6nRyZSBjb21wcmVzc+kpLiBWb2lyIFxmQmRlYlwtZXh0cmFcLW92ZXJyaWRlXGZQKDUpIHBvdXIgcGx1cworZCdpbmZvcm1hdGlvbiBzdXIgbGUgZm9ybWF0IHV0aWxpc+kuCisuVFAgCitcZkJcLWFcZlAsIFxmQlwtXC1hcmNoXGZQIFxmSWFyY2hcZlAKK1V0aWxpc2VyIHVuIG1vdGlmIOlxdWl2YWxlbnQg4CBcZkkqX2FsbC5kZWJcZlAgZXQg4CBcZkkqX2FyY2guZGViXGZQLCBwbHV09HQgcXVlCitkZSByZWNoZXJjaGVyIHRvdXMgbGVzIGZpY2hpZXJzIGRlYnMuCisuVFAgCitcZkJcLW1cZlAsIFxmQlwtXC1tdWx0aXZlcnNpb25cZlAKK0FmZmljaGUgdG91cyBsZXMgcGFxdWV0cyB0cm91dulzIGVuIHNvcnRpZS4KKy5UUCAKK1xmQlwtTVxmUCwgXGZCXC1cLW1lZGl1bVxmUCBcZklpZFwtY2hh7m5lXGZQCitBam91dGUgdW4gY2hhbXAgWFwtTWVkaXVtIHF1aSBjb250aWVudCBsYSB2YWxldXIgXGZJaWRcLWNoYe5uZVxmUC4gQ2UgY2hhbXAgZXN0CitvYmxpZ2F0b2lyZSBzaSB2b3VzIHZvdWxleiBjcullciBkZXMgZmljaGllcnMgXGZCUGFja2FnZXMuY2RcZlAgZmlsZXMgZGVzdGlu6XMKK+Ag6nRyZSB1dGlsaXPpcyBhdmVjIGxhIG3pdGhvZGUgbXVsdGljZCBkZSBkc2VsZWN0LgorLlRQIAorXGZCXC1oXGZQLCBcZkJcLVwtaGVscFxmUAorQWZmaWNoZSB1biBtZXNzYWdlIGQnYWlkZSBwdWlzIHF1aXR0ZS4KKy5UUCAKK1xmQlwtXC12ZXJzaW9uXGZQCitBZmZpY2hlIGxlIG51belybyBkZSB2ZXJzaW9uIHB1aXMgcXVpdHRlLgorLgorLlNIIERJQUdOT1NUSUNTCitcZkJkcGtnXC1zY2FucGFja2FnZXNcZlAgYWZmaWNoZSBsZXMgZXJyZXVycyBoYWJpdHVlbGxlcyBxdWkgc2UgY29tcHJlbm5lbnQKK2QnZWxsZXNcLW3qbWVzLiBJbCBhZmZpY2hlIGF1c3NpIGRlcyBhdmVydGlzc2VtZW50cyBxdWFuZCBkZXMgcGFxdWV0cyBzb250CitkYW5zIHVuIG1hdXZhaXMgc291c1wtculwZXJ0b2lyZSwgZXhpc3RlbnQgZW4gZG91YmxlIGV4ZW1wbGFpcmUsIG9udCBkZXMKK2NoYW1wcyCrXCBGaWxlbmFtZVwguyBkYW5zIGxldXIgZmljaGllciCrXCBjb250cm9sXCC7LCBzb250IGFic2VudHMgZHUgZmljaGllcgorq1wgb3ZlcnJpZGVcILsgb3UgYmllbiBkb250IGxlcyBzdWJzdGl0dXRpb25zIGRlIHJlc3BvbnNhYmxlIG5lIHBldXZlbnQgcGFzCitzJ2FwcGxpcXVlci4KKy4KKy5TSCAiVk9JUiBBVVNTSSIKK1xmQmRwa2dcZlAoMSksIFxmQmRzZWxlY3RcZlAoMSksIFxmQmRlYlwtb3ZlcnJpZGVcZlAoNSksIFxmQmRlYlwtZXh0cmFcLW92ZXJyaWRlXGZQKDUpLAorXGZCZHBrZ1wtc2NhbnNvdXJjZXNcZlAoMSkuCisuU0ggVFJBRFVDVElPTgorQXJpZWwgVkFSREkgPGFyaWVsLnZhcmRpQGZyZWVzYmVlLmZyPiwgMjAwMi4KK1BoaWxpcHBlIEJhdGFpbGxlciwgMjAwNi4KK05pY29sYXMgRnJhbudvaXMsIDIwMDYuCitWZXVpbGxleiBzaWduYWxlciB0b3V0ZSBlcnJldXIg4CA8ZGViaWFuXC1sMTBuXC1mcmVuY2hAbGlzdHMuZGViaWFuLm9yZz4uCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9mci9kcGtnLXNjYW5zb3VyY2VzLjEgYi9kcGtnLTEuMTYuMS4xL21hbi9mci9kcGtnLXNjYW5zb3VyY2VzLjEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNTBiZWIyYwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL2ZyL2Rwa2ctc2NhbnNvdXJjZXMuMQpAQCAtMCwwICsxLDc2IEBACisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkcGtnXC1zY2Fuc291cmNlcyAxIDIwMTFcLTA4XC0xNCAiUHJvamV0IERlYmlhbiIgIlV0aWxpdGFpcmVzIGRlIGRwa2ciCisuU0ggTk9NCitkcGtnXC1zY2Fuc291cmNlcyBcLSBjcullciBkZXMgZmljaGllcnMgZCdpbmRleCBkZSBzb3VyY2VzCisuCisuU0ggU1lOT1BTSVMKK1xmQmRwa2dcLXNjYW5zb3VyY2VzXGZQIFtcZklvcHRpb25cZlAuLi5dIFxmSWJpbmFyeVwtZGlyXGZQIFtcZklvdmVycmlkZVwtZmlsZVxmUAorW1xmSXBhdGhcLXByZWZpeFxmUF1dIFxmQj5cZlAgXGZJU291cmNlc1xmUAorLgorLlNIIERFU0NSSVBUSU9OCitcZkJkcGtnXC1zY2Fuc291cmNlc1xmUCByZWNoZXJjaGUgZGVzIGZpY2hpZXJzIFxmSS5kc2NcZlAgZGFucyBsZSBy6XBlcnRvaXJlCitcZklyZXBcLWRlXC1iaW5haXJlc1xmUCBpbmRpcXXpLiBDZXMgZmljaGllcnMgc29udCB1dGlsaXPpcyBwb3VyIGNy6WVyIHVuIGluZGV4CitkZSBzb3VyY2VzIERlYmlhbiwgcXVpIGVzdCBlbnZveekgc3VyIGxhIHNvcnRpZSBzdGFuZGFyZC4KKy5QUAorTGUgXGZJZmljaGllclwtb3ZlcnJpZGVcZlAsIHMnaWwgZXN0IGluZGlxdeksIGVzdCB1dGlsaXPpIHBvdXIgZml4ZXIgbGVzCitwcmlvcml06XMgZGFucyBsJ2luZGV4IGNy6ekgZXQgcG91ciBtb2RpZmllciBsZSByZXNwb25zYWJsZSBkb25u6SBwYXIgbGVzCitmaWNoaWVycyBcZkkuZHNjXGZQLiBDb25zdWx0ZXogXGZCZGViXC1vdmVycmlkZVxmUCg1KSBwb3VyIHBsdXMgZGUgZOl0YWlscyBzdXIgbGUKK2Zvcm1hdCBkZSBjZSBmaWNoaWVyLiBccy0xTm90ZVwgOlxzMCBTIGNvbW1lIGxlIGZpY2hpZXIgb3ZlcnJpZGUgZXN0IGluZGV46QorcGFyIHBhcXVldCBiaW5haXJlIGV0IG5vbiBwYXMgcGFyIHBhcXVldCBzb3VyY2UsIGNlbGEgcG9zZSB1biBs6WdlcgorcHJvYmzobWUuIEwnaW1wbOltZW50YXRpb24gYWN0dWVsbGUgdXRpbGlzZSBsYSBwcmlvcml06SBsYSBwbHVzIOlsZXbpZSBkZXMKK3BhcXVldHMgcHJvZHVpdCBwYXIgdW4gZmljaGllciBcZkkuZHNjXGZQIGNvbW1lIHByaW9yaXTpIGR1IHBhcXVldCBzb3VyY2UsIGV0CitsJ2VudHLpZSBkdSBmaWNoaWVyIG92ZXJyaWRlIGR1IHByZW1pZXIgcGFxdWV0IGJpbmFpcmUgbGlzdOkgZGFucyBsZSBmaWNoaWVyCitcJlxmSS5kc2NcZlAgcG91ciBtb2RpZmllciBsJ2luZm9ybWF0aW9uIHN1ciBsZSByZXNwb25zYWJsZS4gQ2VjaSBwb3VycmEgY2hhbmdlci4KKy5QUAorTGUgXGZJY2hlbWluXC3gXC1wculmaXhlclxmUCwgcydpbCBlc3QgaW5kaXF16SwgZXN0IGFqb3V06SBhdSBk6WJ1dCBkdSBjaGFtcAorRGlyZWN0b3J5ICirXCBy6XBlcnRvaXJlXCC7KSBkYW5zIGwnaW5kZXggZGVzIHNvdXJjZXMgZ+lu6XLpLiBDJ2VzdCBlbiBy6GdsZQorZ+lu6XJhbGUgdXRpbGlz6SBwb3VyIHF1ZSBsZSBjaGFtcCBEaXJlY3RvcnkgY29udGllbm5lIHVuIGNoZW1pbiBkZXB1aXMgbGEKK3JhY2luZSBkZSBsJ2FyY2hpdmUgRGViaWFuLgorLgorLlBQCitcZkJOb3RlXCA6XGZQIFNpIHZvdXMgdm91bGV6IGFjY+lkZXIgYXUgZmljaGllciBTb3VyY2VzIGfpbuly6SBhdmVjIFxmQmFwdFxmUCg4KSwKK3ZvdXMgZGV2cmV6IHByb2JhYmxlbWVudCBjb21wcmVzc2VyIGNlIGZpY2hpZXIgYXZlYyBcZkJnemlwXGZQKDEpIChwb3VyIGNy6WVyCit1biBmaWNoaWVyIFNvdXJjZXMuZ3opLiBBcHQgaWdub3JlIGxlcyBmaWNoaWVycyBTb3VyY2VzIG5vbiBjb21wcmVzc+lzIHNhdWYKK3BvdXIgbGVzIGFjY+hzIGxvY2F1eCAoYydlc3RcLeBcLWRpcmUgbGVzIHNvdXJjZXMgXGZCZmlsZTovL1xmUCkuCisuCisuU0ggT1BUSU9OUworLklQICJcZkJcLW5cZlAsIFxmQlwtXC1ub1wtc29ydFxmUCIgNAorTmUgdHJpZSBwYXMgbGVzIGVudHLpZXMgZGUgbCdpbmRleC4gRWxsZXMgc29udCBkJ2hhYml0dWRlIHRyaellcyBlbiBmb25jdGlvbgorZHUgbm9tIGR1IHBhcXVldCBzb3VyY2UuCisuVFAgCisuSVAgIlxmQlwtZVxmUCwgXGZCXC1cLWV4dHJhXC1vdmVycmlkZVxmUCBcZklmaWNoaWVyXGZQIiA0CitFeGFtaW5lIFxmSWZpY2hpZXJcZlAg4CBsYSByZWNoZXJjaGUgZCerXCBvdmVycmlkZXNcILsgc3VwcGzpbWVudGFpcmVzIChjZQorZmljaGllciBwZXV0IOp0cmUgY29tcHJlc3PpKS4gVm9pciBcZkJkZWJcLWV4dHJhXC1vdmVycmlkZVxmUCg1KSBwb3VyIHBsdXMKK2QnaW5mb3JtYXRpb24gc3VyIGxlIGZvcm1hdCB1dGlsaXPpLgorLklQICJcZkJcLXNcZlAsIFxmQlwtXC1zb3VyY2VcLW92ZXJyaWRlXGZQIFxmSWZpY2hpZXJcZlAiIDQKK1V0aWxpc2UgXGZJZmljaGllclxmUCBjb21tZSBmaWNoaWVyIG92ZXJyaWRlIGRlcyBzb3VyY2VzIChjZSBmaWNoaWVyIHBldXQg6nRyZQorY29tcHJlc3PpKS4gTGEgdmFsZXVyIHBhciBk6WZhdXQgZXN0IGxlIGZpY2hpZXIgb3ZlcnJpZGUgaW5kaXF16SBhdXF1ZWwgZXN0Citham91dOllIGwnZXh0ZW5zaW9uIFxmSS5zcmNcZlAuCisuc3AKK0xlIGZvcm1hdCBkZXMgZmljaGllcnMgb3ZlcnJpZGUgZGVzIHNvdXJjZXMgZXN0IGRpZmbpcmVudCBkZXMgZmljaGllcnMKK292ZXJyaWRlIGRlcyBiaW5haXJlcy4gSWwgbmUgY29udGllbnQgcXVlIGRldXggY2hhbXBzIHPpcGFy6XMgcGFyIGRlcworZXNwYWNlcywgbGUgcHJlbWllciBpbmRpcXVlIGxlIHBhcXVldCBzb3VyY2UgZXQgbGUgc2Vjb25kLCBsYSBzZWN0aW9uLiBMZXMKK2xpZ25lcyBibGFuY2hlcyBldCBsZXMgbGlnbmVzIGRlIGNvbW1lbnRhaXJlIHNvbnQgaWdub3LpZXMgY29tbWUg4AorbCdoYWJpdHVkZS4gU2kgdW4gcGFxdWV0IGFwcGFyYe50IGRhbnMgY2hhcXVlIGZpY2hpZXIsIGxlIGZpY2hpZXIgZGVzCitzb3VyY2VzIGVzdCBwcmlvcml0YWlyZSBwb3VyIGZpeGVyIGxhIHNlY3Rpb24uCisuSVAgXGZCXC1cLWRlYnVnXGZQIDQKK0FjdGl2ZSBsZSBk6WJvZ2FnZS4KKy5JUCBcZkJcLVwtaGVscFxmUCA0CitBZmZpY2hlIHVuIG1lc3NhZ2UgZCdhaWRlIHB1aXMgcXVpdHRlLgorLklQIFxmQlwtXC12ZXJzaW9uXGZQIDQKK0FmZmljaGUgbGUgbnVt6XJvIGRlIHZlcnNpb24gcHVpcyBxdWl0dGUuCisuCisuU0ggIlZPSVIgQVVTU0kiCitcZkJkZWJcLW92ZXJyaWRlXGZQKDUpLCBcZkJkZWJcLWV4dHJhXC1vdmVycmlkZVxmUCg1KSwgXGZCZHBrZ1wtc2NhbnBhY2thZ2VzXGZQKDEpLgorLgorLlNIIEFVVEVVUgorUm9kZXJpY2sgU2NoZXJ0bGVyIDxyb2Rlcmlja0Bhcmdvbi5vcmc+CisuU0ggVFJBRFVDVElPTgorQXJpZWwgVkFSREkgPGFyaWVsLnZhcmRpQGZyZWVzYmVlLmZyPiwgMjAwMi4KK1BoaWxpcHBlIEJhdGFpbGxlciwgMjAwNi4KK05pY29sYXMgRnJhbudvaXMsIDIwMDYuCitWZXVpbGxleiBzaWduYWxlciB0b3V0ZSBlcnJldXIg4CA8ZGViaWFuXC1sMTBuXC1mcmVuY2hAbGlzdHMuZGViaWFuLm9yZz4uCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9mci9kcGtnLXNobGliZGVwcy4xIGIvZHBrZy0xLjE2LjEuMS9tYW4vZnIvZHBrZy1zaGxpYmRlcHMuMQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kOTA2Y2E3Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vZnIvZHBrZy1zaGxpYmRlcHMuMQpAQCAtMCwwICsxLDMxMyBAQAorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlwiCisuXCIgVGhpcyBmaWxlIHdhcyBnZW5lcmF0ZWQgd2l0aCBwbzRhLiBUcmFuc2xhdGUgdGhlIHNvdXJjZSBmaWxlLgorLlwiCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuVEggZHBrZ1wtc2hsaWJkZXBzIDEgMjAxMVwtMDhcLTE0ICJQcm9qZXQgRGViaWFuIiAiVXRpbGl0YWlyZXMgZGUgZHBrZyIKKy5TSCBOT00KK2Rwa2dcLXNobGliZGVwcyBcLSBn6W7pcmF0ZXVyIGRlIHZhcmlhYmxlcyBkZSBzdWJzdGl0dXRpb24gZGUgZOlwZW5kYW5jZXMgcG91cgorYmlibGlvdGjocXVlcyBwYXJ0YWfpZXMKKy4KKy5TSCBTWU5PUFNJUworXGZCZHBrZ1wtc2hsaWJkZXBzXGZQIFtcZklvcHRpb25cZlAuLi5dIFtcZkJcLWVcZlBdXGZJZXhlY3V0YWJsZVxmUCBbXGZJb3B0aW9uXGZQLi4uXQorLgorLlNIIERFU0NSSVBUSU9OCitcZkJkcGtnXC1zaGxpYmRlcHNcZlAgY2FsY3VsYXRlcyBzaGFyZWQgbGlicmFyeSBkZXBlbmRlbmNpZXMgZm9yIGV4ZWN1dGFibGVzCituYW1lZCBpbiBpdHMgYXJndW1lbnRzLiBUaGUgZGVwZW5kZW5jaWVzIGFyZSBhZGRlZCB0byB0aGUgc3Vic3RpdHV0aW9uCit2YXJpYWJsZXMgZmlsZSBcZkJkZWJpYW4vc3Vic3R2YXJzXGZQIGFzIHZhcmlhYmxlIG5hbWVzCitcZkJzaGxpYnM6XGZQXGZJZGVwZW5kZW5jeWZpZWxkXGZQIHdoZXJlIFxmSWRlcGVuZGVuY3lmaWVsZFxmUCBpcyBhIGRlcGVuZGVuY3kgZmllbGQKK25hbWUuIEFueSBvdGhlciB2YXJpYWJsZXMgc3RhcnRpbmcgd2l0aCBcZkJzaGxpYnM6XGZQIGFyZSByZW1vdmVkIGZyb20gdGhlCitmaWxlLgorLlAKK1xmQmRwa2dcLXNobGliZGVwc1xmUCBhIGRldXggc291cmNlcyBwb3NzaWJsZXMgcG91ciBjcunpZXIgbGVzIGluZm9ybWF0aW9ucworY29uY2VybmFudCBsZXMgZOlwZW5kYW5jZXMuIFNvaXQgbGVzIGZpY2hpZXJzIFxmSXN5bWJvbHNcZlAsIHNvaXQgbGVzIGZpY2hpZXJzCitcZklzaGxpYnNcZlAuIFBvdXIgY2hhcXVlIGZpY2hpZXIgYmluYWlyZSBxdSdpbCBhbmFseXNlLCBcZkJkcGtnXC1zaGxpYmRlcHNcZlAKK3JlY2hlcmNoZSBsYSBsaXN0ZSBkZXMgYmlibGlvdGjocXVlcyBwYXJ0YWfpZXMgcXVpIGx1aSBzb250IGxp6WVzLiBQdWlzLAorcG91ciBjaGFjdW5lIGQnZWxsZXMgaWwgYW5hbHlzZSBzb2l0IGxlIGZpY2hpZXIgXGZJc3ltYm9sc1xmUCwgc29pdCBsZSBmaWNoaWVyCitcZklzaGxpYnNcZlAgKHNpIGxlIHByZW1pZXIgbidleGlzdGUgcGFzIG91IHNpIGRlYmlhbi9zaGxpYnMubG9jYWwgY29udGllbnQgbGVzCitk6XBlbmRhbmNlcyBhcHByb3ByaellcykuIENlcyBkZXV4IGZpY2hpZXJzIHNvbnQgc2Vuc+lzIOp0cmUgZm91cm5pcyBwYXIgbGUKK3BhcXVldCBkZSBsYSBiaWJsaW90aOhxdWUgZXQgZGlzcG9uaWJsZXMgZGFucworL3Zhci9saWIvZHBrZy9pbmZvL1xmSXBhcXVldFxmUC5cZklzeW1ib2xzXGZQIG91CisvdmFyL2xpYi9kcGtnL2luZm8vXGZJcGFxdWV0XGZQLlxmSXNobGlic1xmUC4gTGUgbm9tIGR1IHBhcXVldCBlc3QgdHJvdXbpIGVuIGRldXgKK+l0YXBlc1wgOiBlbiBjaGVyY2hhbnQgbGVzIGZpY2hpZXJzIGRlIGxhIGJpYmxpb3Ro6HF1ZSBzdXIgbGUgc3lzdOhtZSwgZGFucworbGUgculwZXJ0b2lyZSBxdWUgXGZCbGQuc29cZlAgdXRpbGlzZXJhaXQsIHB1aXMgdW4gdXRpbGlzYW50IFxmQmRwa2cgXC1TCitcZlBcZklmaWNoaWVyXC1iaWJsaW90aOhxdWVcZlAgcG91ciB0cm91dmVyIGxlIHBhcXVldCBxdWkgZm91cm5pdCBjZXR0ZQorYmlibGlvdGjocXVlLgorLlNTICJGaWNoaWVycyBzeW1ib2xlcyIKK0xlcyBmaWNoaWVycyBzeW1ib2xlcyBjb250aWVubmVudCBkZXMgaW5mb3JtYXRpb25zIGRlIGTpcGVuZGFuY2VzIHBsdXMgZmluZXMKK2VuIGZvdXJuaXNzYW50IGxlcyBk6XBlbmRhbmNlcyBtaW5pbWFsZXMgcG91ciBjaGFxdWUgc3ltYm9sZSBkZSBsYQorYmlibGlvdGjocXVlIGV4cG9ydOllLiBMZSBzY3JpcHQgZXNzYWllIGRlIHRyb3V2ZXIgdW4gZmljaGllciBkZSBzeW1ib2xlcworYXNzb2Np6SDgIHVuIHBhcXVldCBkZSBiaWJsaW90aOhxdWUgZGFucyBsZXMgZW1wbGFjZW1lbnRzIHN1aXZhbnRzIChsZQorcHJlbWllciB0cm91dukgZXN0IHV0aWxpc+kpXCA6CisuSVAgZGViaWFuLyovREVCSUFOL3N5bWJvbHMKK0wnaW5mb3JtYXRpb24gZGVzIGJpYmxpb3Ro6HF1ZXMgcGFydGFn6WVzIGfpbuly6WUgcGFyIGwnYWN0dWVsIHByb2Nlc3N1cyBkZQorY29uc3RydWN0aW9uIHF1aSBpbnZvcXVlIGF1c3NpIFxmQmRwa2dcLXNobGliZGVwc1xmUC4gRWxsZXMgc29udCBn6W7pcullcyBwYXIKK1xmQmRwa2dcLWdlbnN5bWJvbHNcZlAoMSkgZXQgbmUgc29udCB1dGlsaXPpZXMgcXVlIHNpIGxhIGJpYmxpb3Ro6HF1ZSBzZSB0cm91dmUKK2RhbnMgbCdhcmJyZSBkZSBjb25zdHJ1Y3Rpb24gZCd1biBwYXF1ZXQuIExlIGZpY2hpZXIgZGVzIHN5bWJvbGVzIHF1aQorY29uc3RydWl0IGwnYXJicmUgcydhcHB1aWUgc3VyIGxlcyBmaWNoaWVycyBkZSBzeW1ib2xlcyBkJ2F1dHJlcyBwYXF1ZXRzCitiaW5haXJlcy4KKy5JUCAvZXRjL2Rwa2cvc3ltYm9scy9cZklwYXF1ZXRcZlAuc3ltYm9scy5cZklhcmNoaXRlY3R1cmVcZlAKKy5JUCAvZXRjL2Rwa2cvc3ltYm9scy9cZklwYXF1ZXRcZlAuc3ltYm9scworTCdpbmZvcm1hdGlvbiBkZSBk6XBlbmRhbmNlIGRlcyBiaWJsaW90aOhxdWVzIHBhcnRhZ+llcyBhc3NvY2npZSBhdXgKK3N5c3TobWVzLiBcZklhcmNoXGZQIGVzdCBsJ2FyY2hpdGVjdHVyZSBkdSBzeXN06G1lIGFjdHVlbCAob2J0ZW51IHBhcgorXGZCZHBrZ1wtYXJjaGl0ZWN0dXJlIFwtcURFQl9IT1NUX0FSQ0hcZlApLgorLklQICJPdXRwdXQgZnJvbSBcKGxxXGZCZHBrZ1wtcXVlcnkgXC1cLWNvbnRyb2xcLXBhdGhcZlAgXGZJcGFja2FnZVxmUCBzeW1ib2xzXChycSIKK1BhY2thZ2VcLXByb3ZpZGVkIHNoYXJlZCBsaWJyYXJ5IGRlcGVuZGVuY3kgaW5mb3JtYXRpb24uICBVbmxlc3Mgb3ZlcnJpZGRlbgorYnkgXC1cLWFkbWluZGlyLCB0aG9zZSBmaWxlcyBhcmUgbG9jYXRlZCBpbiAvdmFyL2xpYi9kcGtnLgorLlAKK0xvcnMgZGUgbCdhbmFseXNlIGRlcyBzeW1ib2xlcyB1dGlsaXPpcyBwYXIgdG91cyBsZXMgYmluYWlyZXMsCitcZkJkcGtnXC1zaGxpYmRlcHNcZlAgcmV0aWVudCBsYSAocGx1cyBncmFuZGUpIHZlcnNpb24gbWluaW1hbGUgbuljZXNzYWlyZSBwb3VyCitjaGFxdWUgYmlibGlvdGjocXVlLiDAIGxhIGZpbiBkdSBwcm9jZXNzdXMsIGlsIGVzdCBjYXBhYmxlIGQn6WNyaXJlIGxhCitk6XBlbmRhbmNlIG1pbmltYWxlIHBvdXIgdG91dGVzIGxlcyBiaWJsaW90aOhxdWVzIHV0aWxpc+llcyAo4CBjb25kaXRpb24gcXVlCitsJ2luZm9ybWF0aW9uIGRlcyBmaWNoaWVycyBcZklzeW1ib2xzXGZQIHNvaXQgZXhhY3RlKS4KKy5QCitDb21tZSBnYXJkZVwtZm91LCB1biBmaWNoaWVyIGRlIHN5bWJvbGVzIHBldXQgZm91cm5pciB1biBjaGFtcAorXGZJQnVpbGRcLURlcGVuZHNcLVBhY2thZ2VcZlAgZGUgbel0YVwtaW5mb3JtYXRpb24gZXQgXGZCZHBrZ1wtc2hsaWJkZXBzXGZQIGVuCitleHRyYWlyYSBsYSB2ZXJzaW9uIG1pbmltYWxlIHJlcXVpc2UgcGFyIGxlIHBhcXVldCBjb3JyZXNwb25kYW50IGRlcHVpcyBjZQorY2hhbXAgQnVpbGRcLURlcGVuZHMgZXQgdXRpbGlzZXIgY2V0dGUgdmVyc2lvbiBzaSBlbGxlIGVzdCBzdXDpcmlldXJlIOAgbGEKK3ZlcnNpb24gbWluaW1hbGUgY2FsY3Vs6WUgcGFyIGwnZXhhbWVuIGRlcyBzeW1ib2xlcy4KKy5TUyAiRmljaGllcnMgU2hsaWJzIgorTGVzIGZpY2hpZXJzIFNobGlicyBhc3NvY2llbnQgZGlyZWN0ZW1lbnQgdW5lIGJpYmxpb3Ro6HF1ZSDgIHVuZSBk6XBlbmRhbmNlCisoc2FucyByZWdhcmRlciBsZXMgc3ltYm9sZXMpLiBJbCBhZ2l0IGRvbmMgc291dmVudCBwbHVzIGZvcnRlbWVudCBxdWUgY2UKK2RvbnQgb24gYXVyYWl0IGJlc29pbiBtYWlzIGlsIHJlc3RlIHRy6HMgc/tyIGV0IGZhY2lsZSDgIG1hbmlwdWxlci4KKy5QCitMZXMgZOlwZW5kYW5jZXMgZCd1bmUgYmlibGlvdGjocXVlIHNvbnQgcmVjaGVyY2jpZXMg4CBwbHVzaWV1cnMgZW5kcm9pdHMuIExlCitwcmVtaWVyIGZpY2hpZXIgZCdpbmZvcm1hdGlvbnMgdHJvdXbpIHF1aSBjb25jZXJuZSBsYSBiaWJsaW90aOhxdWUgZXN0Cit1dGlsaXPpXCA6CisuSVAgZGViaWFuL3NobGlicy5sb2NhbAorRmljaGllciBwYXJ0aWN1bGllciDgIHVuIHBhcXVldCByZW1wbGHnYW50IGxlcyBpbmZvcm1hdGlvbnMgcXVpIGNvbmNlcm5lbnQKK2xlcyBk6XBlbmRhbmNlcyBlbnZlcnMgZGVzIGJpYmxpb3Ro6HF1ZXMgcGFydGFn6WVzLgorLklQIC9ldGMvZHBrZy9zaGxpYnMub3ZlcnJpZGUKK0ZpY2hpZXIgc3lzdOhtZSByZW1wbGHnYW50IGxlcyBpbmZvcm1hdGlvbnMgcXVpIGNvbmNlcm5lbnQgbGVzIGTpcGVuZGFuY2VzCitlbnZlcnMgZGVzIGJpYmxpb3Ro6HF1ZXMgcGFydGFn6WVzLgorLklQIGRlYmlhbi8qL0RFQklBTi9zaGxpYnMKK0luZm9ybWF0aW9uIHN1ciBsYSBiaWJsaW90aOhxdWUgcGFydGFn6WUgZ+lu6XLpIHBhciBsZSBwcm9jZXNzdXMgYWN0dWVsIGRlCitjb25zdHJ1Y3Rpb24gcXVpIGludm9xdWUgYXVzc2kgXGZCZHBrZ1wtc2hsaWJkZXBzXGZQLiBJbCBuJ2VzdCB1dGlsaXPpIHF1ZSBzaSBsYQorYmlibGlvdGjocXVlIHNlIHRyb3V2ZSBkYW5zIGwnYXJicmUgZGUgY29uc3RydWN0aW9uIGR1IHBhcXVldC4gTGUgZmljaGllcgorc2hsaWJzIHF1aSBjb25zdHJ1aXQgbCdhcmJyZSBhIHByaW9yaXTpIHN1ciBsZXMgZmljaGllcnMgc2hsaWJzIGRlcyBhdXRyZXMKK3BhcXVldHMgYmluYWlyZXMuCisuSVAgIk91dHB1dCBmcm9tIFwobHFcZkJkcGtnXC1xdWVyeSBcLVwtY29udHJvbFwtcGF0aFxmUCBcZklwYWNrYWdlXGZQIHNobGlic1wocnEiCitQYWNrYWdlXC1wcm92aWRlZCBzaGFyZWQgbGlicmFyeSBkZXBlbmRlbmN5IGluZm9ybWF0aW9uLiAgVW5sZXNzIG92ZXJyaWRkZW4KK2J5IFwtXC1hZG1pbmRpciwgdGhvc2UgZmlsZXMgYXJlIGxvY2F0ZWQgaW4gL3Zhci9saWIvZHBrZy4KKy5JUCAvZXRjL2Rwa2cvc2hsaWJzLmRlZmF1bHQKK0ZpY2hpZXIgc3lzdOhtZSBwYXIgZOlmYXV0IGNvbmNlcm5hbnQgbGVzIGluZm9ybWF0aW9ucyBkZSBk6XBlbmRhbmNlIGVudmVycworZGVzIGJpYmxpb3Ro6HF1ZXMgcGFydGFn6WVzLgorLlAKK0xlcyBk6XBlbmRhbmNlcyB0cm91dullcyBzb250IGVuc3VpdGUgZGlyZWN0ZW1lbnQgdXRpbGlz6WVzIChzYXVmIHNpIGVsbGVzCitzb250IGZpbHRy6WVzIHBhcmNlIHF1J2VsbGVzIG9udCDpdOkgaWRlbnRpZmnpZXMgY29tbWUg6XRhbnQgZW4gZG91YmxlLCBvdQorZCd1biBuaXZlYXUgcGx1cyBmYWlibGUgcXUndW5lIGF1dHJlIGTpcGVuZGFuY2UpLgorLlNIIE9QVElPTlMKK1xmQmRwa2dcLXNobGliZGVwc1xmUCBpbnRlcnBy6HRlIGRlcyBhcmd1bWVudHMgc2FucyBvcHRpb24gY29tbWUgZGVzIGNvbW1hbmRlcworZXjpY3V0YWJsZXMsIGNvbW1lIHNpIG9uIGF2YWl0IHNpbXBsZW1lbnQgZG9ubukgXGZCXC1lXGZQXGZJZXjpY3V0YWJsZVxmUC4KKy5UUCAKK1xmQlwtZVxmUFxmSWV46WN1dGFibGVcZlAKK0NldHRlIG9wdGlvbiBpbmNsdXQgbGVzIGJvbm5lcyBk6XBlbmRhbmNlcyBlbnZlcnMgbGVzIGJpYmxpb3Ro6HF1ZXMKK3BhcnRhZ+llcyBxdWUgZGVtYW5kZSBcZklleOljdXRhYmxlXGZQLgorLlRQIAorXGZCXC1kXGZQXGZJY2hhbXBcLWTpcGVuZGFuY2VcZlAKK0NldHRlIG9wdGlvbiBham91dGUgbGVzIGTpcGVuZGFuY2VzIGRlc3RpbullcyBhdSBjaGFtcCCrXCBk6XBlbmRhbmNlXCC7IGR1CitmaWNoaWVyIGRlIGNvbnRy9GxlIFxmSWNoYW1wXC1k6XBlbmRhbmNlLlxmUCAoTGVzIGTpcGVuZGFuY2VzIHBvdXIgY2UgY2hhbXAgc29udAorZGFucyBsYSB2YXJpYWJsZSBcZkJzaGxpYnM6XGZQXGZJY2hhbXBcLWTpcGVuZGFuY2VcZlAuKQorCitMJ29wdGlvbiBcZkJcLWRcZlBcZkljaGFtcFwtZOlwZW5kYW5jZVxmUCBjb25jZXJuZSB0b3VzIGxlcyBleOljdXRhYmxlcyBxdWkgc3VpdmVudAorbCdvcHRpb24sIGp1c3F1J+AgbGEgcHJvY2hhaW5lIG9wdGlvbiBcZkJcLWRcZlBcZkljaGFtcFwtZOlwZW5kYW5jZVxmUC4gUGFyIGTpZmF1dCwKK1xmSWNoYW1wXC1k6XBlbmRhbmNlXGZQIHZhdXQgXGZCRGVwZW5kc1xmUC4KKworUXVhbmQsIGRhbnMgcGx1c2lldXJzIGNoYW1wcyByZWNvbm51cyBheWFudCB0cmFpdCBhdXggZOlwZW5kYW5jZXMgY29tbWUgbGVzCitjaGFtcHMgXGZCUHJlXC1EZXBlbmRzXGZQLCBcZkJEZXBlbmRzXGZQLCBcZkJSZWNvbW1lbmRzXGZQLCBcZkJFbmhhbmNlc1xmUCBvdSBcZkJTdWdnZXN0c1xmUAorYXBwYXJh7nQgbGEgbeptZSBlbnRy6WUgKG91IGJpZW4gdW4gZW5zZW1ibGUgZCdhbHRlcm5hdGl2ZXMpLAorXGZCZHBrZ1wtc2hsaWJkZXBzXGZQIHN1cHByaW1lIGF1dG9tYXRpcXVlbWVudCBsZXMgZOlwZW5kYW5jZXMgZGFucyB0b3VzIGxlcworY2hhbXBzIHNhdWYgY2VsdWkgcXVpIHJlcHLpc2VudGUgbGVzIGTpcGVuZGFuY2VzIGxlcyBwbHVzIGltcG9ydGFudGVzLgorLlRQIAorXGZCXC1wXGZQXGZJcHLpZml4ZVwtcG91clwtbGVcLW5vbVwtZGVzXC12YXJpYWJsZXNcZlAKK0ZhaXQgY29tbWVuY2VyIGxlcyB2YXJpYWJsZXMgZGUgc3Vic3RpdHV0aW9uIHBhcgorXGZJcHLpZml4ZVwtcG91clwtbGVcLW5vbVwtZGVzXC12YXJpYWJsZXNcZlBcZkI6XGZQIGF1IGxpZXUgZGUgXGZCc2hsaWJzOlxmUC4gRGUgbeptZSwKK3RvdXRlIHZhcmlhYmxlIGRlIHN1YnN0aXR1dGlvbiBjb21tZW7nYW50IHBhcgorXGZJcHLpZml4ZVwtcG91clwtbGVcLW5vbVwtZGVzXC12YXJpYWJsZXNcZlBcZkI6XGZQIChhdSBsaWV1IGRlIFxmQnNobGliczpcZlApIGVzdCBlbmxldullCitkdSBmaWNoaWVyIGRlIHN1YnN0aXR1dGlvbiBkZXMgdmFyaWFibGVzLgorLlRQIAorXGZCXC1PXGZQCitBZmZpY2hlIGxlcyBk6WZpbml0aW9ucyBkZXMgdmFyaWFibGVzIGRlIHN1YnN0aXR1dGlvbiBzdXIgbGEgc29ydGllCitzdGFuZGFyZCwgcGx1dPR0IHF1ZSBkZSBsZXMgYWpvdXRlciBkYW5zIGxlIGZpY2hpZXIgZGUgc3Vic3RpdHV0aW9uIGRlcwordmFyaWFibGVzIHF1aSBlc3QgcGFyIGTpZmF1dCBkZWJpYW4vc3Vic3R2YXJzLgorLlRQIAorXGZCXC10XGZQXGZJdHlwZVxmUAorUHLpZulyZXIgbGVzIGluZm9ybWF0aW9ucyBzdXIgbGVzIGTpcGVuZGFuY2VzIGRlcyBiaWJsaW90aOhxdWVzIHBhcnRhZ+llcworcXVpIHNvbnQg6XRpcXVldOllcyBwb3VyIHVuIHR5cGUgZGUgcGFxdWV0IGRvbm7pLiBTaSBhdWN1bmUgaW5mb3JtYXRpb24gZGUKK3R5cGUgbidlc3QgZG9ubullLCBpbCBuJ3V0aWxpc2VyYSBwYXMgZCdpbmZvcm1hdGlvbi4gUGFyIGTpZmF1dCwgbGUgdHlwZSBkZQorcGFxdWV0IGVzdCCrXCBkZWJcILsuIE9uIHBldXQgY3LpZXIgdW5lIOl0aXF1ZXR0ZSBwb3VyIGNlcyBpbmZvcm1hdGlvbnMgZW4gbGVzCitwculmaXhhbnQgcGFyIGxlIG5vbSBkdSB0eXBlLCB1biBkZXV4XC1wb2ludHMgZXQgdW5lIGVzcGFjZS4KKy5UUCAKK1xmQlwtTFxmUFxmSWZpY2hpZXJcLWxvY2FsXC1zaGxpYnNcZlAKK0xpcmUgbGVzIGluZm9ybWF0aW9ucyBkZSByZW1wbGFjZW1lbnQgY29uY2VybmFudCBsZXMgZOlwZW5kYW5jZXMgZW52ZXJzIGxlcworYmlibGlvdGjocXVlcyBwYXJ0YWfpZXMgZGFucyBcZklmaWNoaWVyXC1sb2NhbFwtc2hsaWJzXGZQIGF1IGxpZXUgZGUKK1xmQmRlYmlhbi9zaGxpYnMubG9jYWxcZlAuCisuVFAgCitcZkJcLVRcZlBcZklmaWNoaWVyL3N1YnN0dmFyc1xmUAoryWNyaXJlIGxlcyB2YXJpYWJsZXMgZGUgc3Vic3RpdHV0aW9uIGRhbnMgXGZJZmljaGllci9zdWJzdHZhcnNcZlBcIDsgbGUgZmljaGllcgorcGFyIGTpZmF1dCBlc3QgXGZCZGViaWFuL3N1YnN0dmFyc1xmUC4KKy5UUCAKK1xmQlwtdlxmUAorQWN0aXZlIGxlIG1vZGUgdmVyYmV1eC4gRGUgbm9tYnJldXggbWVzc2FnZXMgc29udCBhZmZpY2jpcyBwb3VyIGV4cGxpcXVlciBjZQorcXVlIFxmQmRwa2dcLXNobGliZGVwc1xmUCBmYWl0LgorLlRQIAorXGZCXC14XGZQXGZJcGFja2FnZVxmUAorRXhjbHV0IGxlIHBhcXVldCBkZXMgZOlwZW5kYW5jZXMgZ+lu6XLpZXMuIENlbGEg6XZpdGUgbGVzIGF1dG9cLWTpcGVuZGFuY2VzCitwb3VyIGxlcyBwYXF1ZXRzIGZvdXJuaXNzYW50IGRlcyBleOljdXRhYmxlcyBFTEYgKGV46WN1dGFibGVzIG91IG1vZHVsZXMKK2NvbXBs6W1lbnRhaXJlcyBkZSBiaWJsaW90aOhxdWUpIHF1aSB1dGlsaXNlbnQgdW5lIGJpYmxpb3Ro6HF1ZSBpbmNsdXNlIGRhbnMKK2NlIG3qbWUgcGFxdWV0LiBDZXR0ZSBvcHRpb24gcGV1dCDqdHJlIHV0aWxpc+llIHBsdXNpZXVycyBmb2lzIHBvdXIgZXhjbHVyZQorcGx1c2lldXJzIHBhcXVldHMuCisuVFAgCitcZkJcLVNcZlBcZklwa2didWlsZGRpclxmUAorUmVjaGVyY2hlIGRhbnMgXGZJcGtnYnVpbGRkaXJcZlAgZW4gcHJlbWllciBldCBlc3NhaWUgZGUgdHJvdXZlciB1bmUKK2JpYmxpb3Ro6HF1ZS4gQydlc3QgdXRpbGUgbG9yc3F1ZSBsZSBwYXF1ZXQgc291cmNlIGNvbnN0cnVpdCBwbHVzaWV1cnMKK3NhdmV1cnMgZGUgbGEgbeptZSBiaWJsaW90aOhxdWUgZXQgcXVlIHZvdXMgdm91bGV6IHZvdXMgYXNzdXJlciBxdWUgdm91cworb2J0aWVuZHJleiBsYSBk6XBlbmRhbmNlIGQndW4gcGFxdWV0IGJpbmFpcmUgZG9ubukuIENldHRlIG9wdGlvbiBwZXV0IOp0cmUKK3V0aWxpc+llIHBsdXNpZXVycyBmb2lzXCA6IGxlcyBy6XBlcnRvaXJlcyBzZXJvbnQgZXhhbWlu6XMgZGFucyBsZSBt6m1lIG9yZHJlCithdmFudCBsZXMgculwZXJ0b2lyZXMgZCdhdXRyZXMgcGFxdWV0cyBiaW5haXJlcy4KKy5UUCAKK1xmQlwtXC1pZ25vcmVcLW1pc3NpbmdcLWluZm9cZlAKK1BhcyBkJ+ljaGVjIHNpIGwnaW5mb3JtYXRpb24gZGUgZOlwZW5kYW5jZSBuZSBwZXV0IHBhcyDqdHJlIHRyb3V26WUgcG91ciB1bmUKK2JpYmxpb3Ro6HF1ZSBwYXJ0YWfpZS4gTCd1dGlsaXNhdGlvbiBkZSBjZXR0ZSBvcHRpb24gZXN0IGTpY29uc2VpbGzpZSwKK3RvdXRlcyBsZXMgYmlibGlvdGjocXVlcyBkZXZyYWllbnQgZm91cm5pciBsZXVycyBpbmZvcm1hdGlvbnMgZGUgZOlwZW5kYW5jZQorKHF1ZSBjZSBzb2l0IGF2ZWMgbGVzIGZpY2hpZXJzIHNobGlicywgb3UgYXZlYyBsZXMgZmljaGllcnMgc3ltYm9sZXMpLCBt6m1lCitzaSBlbGxlcyBuZSBzb250IHBhcyBlbmNvcmUgdXRpbGlz6WVzIHBhciBkJ2F1dHJlcyBwYXF1ZXRzLgorLlRQIAorXGZCXC1cLXdhcm5pbmdzPVxmUFxmSXZhbGV1clxmUAorXGZJdmFsZXVyXGZQIGVzdCB1biBjaGFtcCBkZSCrXCBiaXRcILsgZOlmaW5pc3NhbnQgbCdlbnNlbWJsZSBkZXMgYXZlcnRpc3NlbWVudHMKK3F1aSBwZXV2ZW50IOp0cmUg6W1pcyBwYXIgXGZCZHBrZ1wtc2hsaWJkZXBzXGZQLiBMZSBiaXQgMCAodmFsZXVyID0gMSkgYWN0aXZlCitsJ2F2ZXJ0aXNzZW1lbnQgq1wgc3ltYm9sZSBcZklzeW1cZlAgdXRpbGlz6SBwYXIgbGUgXGZJYmluYWlyZVxmUCB0cm91dukgZGFucworYXVjdW5lIGRlcyBiaWJsaW90aOhxdWVzXCC7LiBMZSBiaXQgMSAodmFsZXVyID0gMikgYWN0aXZlIGwnYXZlcnRpc3NlbWVudAorq1wgbGEgZOlwZW5kYW5jZSDgIGxhIFxmSWJpYmxpb3Ro6HF1ZVxmUCBwb3VycmFpdCDqdHJlIOl2aXTpZVwguy4gTGUgYml0IDIKKyh2YWxldXIgPSA0KSBhY3RpdmUgbCdhdmVydGlzc2VtZW50IKtcIExlIFxmSWJpbmFpcmVcZlAgbmUgZGV2cmFpdCBwYXMg6nRyZSBsaekKK+AgbGEgXGZJYmlibGlvdGjocXVlXGZQXCC7LiBMYSBcZkl2YWxldXJcZlAgcGFyIGTpZmF1dCBlc3QgM1wgOiBsZXMgZGV1eCBwcmVtaehyZXMKK21pc2VzIGVuIGdhcmRlIHNvbnQgYWN0aXZlcyBwYXIgZOlmYXV0LCBsYSBkZXJuaehyZSBuZSBsJ2VzdAorcGFzLiBQb3NpdGlvbm5leiBsYSBcZkl2YWxldXJcZlAg4CA3IHNpIHZvdXMgc291aGFpdGV6IHF1ZSB0b3VzIGxlcworYXZlcnRpc3NlbWVudHMgc29pZW50IGFjdGlmcy4KKy5UUCAKK1xmQlwtXC1hZG1pbmRpclxmUD1cZklkaXJcZlAKK0NoYW5nZSBsJ2VuZHJvaXQgb/kgc2UgdHJvdXZlIGxhIGJhc2UgZGUgZG9ubullcyBkZSBcZkJkcGtnXGZQLiBQYXIgZOlmYXV0LAorYydlc3QgXGZJL3Zhci9saWIvZHBrZ1xmUC4KKy5UUCAKK1xmQlwtaFxmUCwgXGZCXC1cLWhlbHBcZlAKK0FmZmljaGUgdW4gbWVzc2FnZSBkJ2FpZGUgcHVpcyBxdWl0dGUuCisuVFAgCitcZkJcLVwtdmVyc2lvblxmUAorQWZmaWNoZSBsZSBudW3pcm8gZGUgdmVyc2lvbiBwdWlzIHF1aXR0ZS4KKy4KKy5TSCBBVkVSVElTU0VNRU5UUworRGVwdWlzIHF1ZSBcZkJkcGtnXC1zaGxpYmRlcHNcZlAgYW5hbHlzZSBsJ2Vuc2VtYmxlIGRlcyBzeW1ib2xlcyB1dGlsaXPpcyBwYXIKK2NoYXF1ZSBiaW5haXJlIGfpbuly6SBwYXIgbGUgcGFxdWV0LCBpbCBlc3QgZW4gbWVzdXJlIGQn6W1ldHRyZSBkZXMKK2F2ZXJ0aXNzZW1lbnRzIGRhbnMgcGx1c2lldXJzIGNhcy4gSWxzIHZvdXMgaW5mb3JtZW50IGRlcyBjaG9zZXMgcXVpIHBldXZlbnQKK+p0cmUgYW3pbGlvcullcyBkYW5zIGxlIHBhcXVldC4gRGFucyBsYSBwbHVwYXJ0IGRlcyBjYXMsIGNlcyBhbelsaW9yYXRpb25zCitjb25jZXJuZW50IGRpcmVjdGVtZW50IGxlcyBzb3VyY2VzIGFtb250LiBEYW5zIGwnb3JkcmUgZCdpbXBvcnRhbmNlCitk6WNyb2lzc2FudCwgdm9pY2kgbGVzIGRpZmbpcmVudHMgYXZlcnRpc3NlbWVudHMgcXVlIHZvdXMgcG91dmV6CityZW5jb250cmVyXCA6CisuVFAgCitcZkJzeW1ib2xlXGZQXGZJIHN5bVxmUFxmQiB1dGlsaXPpIHBhciBcZlBcZkliaW5haXJlXGZQXGZCIHRyb3V26SBkYW5zIGF1Y3VuZSBkZXMgYmlibGlvdGjocXVlcy5cZlAKK0xlIHN5bWJvbGUgaW5kaXF16SBuJ2EgcGFzIOl06SB0cm91dukgZGFucyBsZXMgYmlibGlvdGjocXVlcyBsaellcyBhdQorYmluYWlyZS4gTGUgXGZJYmluYWlyZVxmUCBlc3QgcHJvYmFibGVtZW50IHBsdXT0dCB1bmUgYmlibGlvdGjocXVlIGV0IGVsbGUgZG9pdAor6nRyZSBsaellIGF2ZWMgdW5lIGJpYmxpb3Ro6HF1ZSBzdXBwbOltZW50YWlyZSBkdXJhbnQgbGUgcHJvY2Vzc3VzIGRlCitjb25zdHJ1Y3Rpb24gKGwnb3B0aW9uIFxmQlwtbFxmUFxmSWJpYmxpb3Ro6HF1ZVxmUCBkZSBsJ+lkaXRldXIgZGUgbGllbnMpLgorLlRQIAorXGZJYmluYXJ5XGZQXGZCIGNvbnRpZW50IHVuZSBy6WbpcmVuY2Ugbm9uIHLpc29sdWUgYXUgc3ltYm9sZSBcZlBcZklzeW1cZlBcZkI6IGlsIHMnYWdpdCBwcm9iYWJsZW1lbnQgZCd1biBncmVmZm9uIChwbHVnaW4pXGZQCitMZSBzeW1ib2xlIGluZGlxdekgbidhIHBhcyDpdOkgdHJvdXbpIGRhbnMgbGVzIGJpbGJpb2h06HF1ZXMgbGnpZXMgYXZlYyBsZQorZmljaGllciBiaW5haXJlLiBMZSBcZkliaW5haXJlXGZQIGVzIHRy6HMgcHJvYmFibGVtZW50IHVuIGdyZWZmb24gKHBsdWdpbikgZXQKK2xlIHN5bWJvbGUgZXN0IHByb2JhYmxlbWVudCBmb3VybmkgcGFyIGxlIHByb2dyYW1tZSBxdWkgY2hhcmdlIGNlCitncmVmZm9uLiBFbiB0aOlvcmksIHVuIGdyZWZmb24gbidhIHBhcyBkZSCrXCBTT05BTUVcILsgbWFpcyBjZSBiaW5haXJlIGVuCitwb3Nz6GRlIHVuIGV0IG4nYSBwYXMgcHUg6nRyZSBpZGVudGlmaekgZW4gdGFudCBxdWUgdGVsLiBDZXBlbmRhbnQsIGxlIGZhaXQKK3F1ZSBsZSBiaW5haXJlIHNvaXQgc3RvY2vpIGRhbnMgdW4gculwZXJ0b2lyZSBub24gcHVibGljIGVzdCB1bmUgaW5kaWNhdGlvbgorZm9ydGUgcXUnaWwgbmUgcydhZ2l0IHBhcyBkJ3VuZSBiaWJsaW90aOhxdWUgcGFydGFn6WUgbm9ybWFsZS4gU2kgbGUgYmluYWlyZQorZXN0IHZyYWltZW50IHVuIGdyZWZmb24sIHZvdXMgcG91dmV6IGlnbm9yZXIgY2V0IGF2ZXJ0aXNzZW1lbnQuIElsIGV4aXN0ZQorY2VwZW5kYW50IHVuZSBwb3NzaWJpbGl06SBxdSdpbCBzJ2FnaXNzZSBkJ3VuIHZyYWkgYmluYWlyZSBldCBxdWUgbGVzCitwcm9ncmFtbWVzIGF2ZWMgbGVxdWVsIGlsIGVzdCBsaekgdXRpbGlzZW50IHVuIFJQQVRIIGFmaW4gcXVlIGxlIGNoYXJnZXVyCitkeW5hbWlxdWUgbGUgdHJvdXZlLiBEYW5zIGNlIGNhcywgbGEgYmlibGlvdGjocXVlIGVzdCBpbmNvcnJlY3RlIGV0IGRvaXQKK+p0cmUgY29ycmln6WUuCisuVFAgCitcZkJsYSBk6XBlbmRhbmNlIHN1ciBsYVxmUCBcZkliaWJsaW90aOhxdWVcZlAgXGZCcG91cnJhaXQg6nRyZSDpdml06WUgc2lcZlAgXGZJbGVzIGJpbmFpcmVzXGZQXGZCIGludXRpbGVzIG4n6XRhaWVudCBwYXMgbGnpcyDgIGNlbGxlXC1jaSAoaWxzIG4ndXRpbGlzZW50IGF1Y3VuIGRlIHNlcyBzeW1ib2xlcykuXGZQCitBdWN1biBkZXMgXGZJYmluYWlyZXNcZlAgbGnpcyDgIGxhIFxmSWJpYmxpb3Ro6HF1ZVxmUCB1dGlsaXNlIGxlcyBzeW1ib2xlcyBxdSdlbGxlCitmb3Vybml0LiBFbiBjb3JyaWdlYW50IHRvdXMgbGVzIGJpbmFpcmVzLCB2b3VzIOl2aXRlcmlleiBsYSBk6XBlbmRhbmNlCithc3NvY2npZSDgIGNldHRlIGJpYmxpb3Ro6HF1ZSAo4CBtb2lucyBxdWUgbGEgbeptZSBk6XBlbmRhbmNlIHNvaXQg6WdhbGVtZW50CitsaellIOAgdW5lIGF1dHJlIGJpYmxpb3Ro6HF1ZSBxdWkgZXN0IGVsbGUgcullbGxlbWVudCB1dGlsaXPpZSkuCisuVFAgCitcZklsZSBiaW5haXJlXGZQXGZCIG5lIGRldnJhaXQgcGFzIOp0cmUgbGnpIGF2ZWMgbGEgXGZQXGZJYmlibGlvdGjocXVlXGZQXGZCIChpbCBuZSBmYWl0IHVzYWdlIGQnYXVjdW4gZGUgc2VzIHN5bWJvbGVzKS5cZlAKK0xlIFxmSWJpbmFpcmVcZlAgZXN0IGxp6SDgIHVuZSBiaWJsaW90aOhxdWUgZG9udCBpbCBuJ2EgcGFzIGJlc29pbi4gQ2Ugbidlc3QKK3BhcyB1biBwcm9ibOhtZSBtYWlzIGRlIHBldGl0ZXMgYW3pbGlvcmF0aW9ucyBkZSBwZXJmb3JtYW5jZSBkYW5zIGxlIHRlbXBzCitkZSBjaGFyZ2VtZW50IGRlIGNlbHVpXC1jaSBwZXV2ZW50IOp0cmUgb2J0ZW51ZXMgZW4gbmUgbGUgbGlhbnQgcGFzIOAgY2V0dGUKK2JpYmxpb3Ro6HF1ZS4gQ2V0IGF2ZXJ0aXNzZW1lbnQgdulyaWZpZSBsYSBt6m1lIGluZm9ybWF0aW9uIHF1ZSBsYQorcHLpY+lkZW50ZSBtYWlzIGVsbGUgbGUgZmFpdCBwb3VyIHRvdXMgbGVzIGJpbmFpcmVzIGF1IGxpZXUgZGUgbmUgZmFpcmUgbGUKK2NvbnRy9GxlIHF1J2F1IG5pdmVhdSBnbG9iYWwgc3VyIHRvdXMgbGVzIGJpbmFpcmVzIGFuYWx5c+lzLgorLlNIIEVSUkVVUlMKK1xmQmRwa2dcLXNobGliZGVwc1xmUCDpY2hvdWVyYSBzJ2lsIG5lIHBldXQgcGFzIHRyb3V2ZXIgZGUgYmlibGlvdGjocXVlIHB1YmxpcXVlCit1dGlsaXPpZSBwYXIgdW4gYmluYWlyZSBvdSBzaSBjZXR0ZSBiaWJsaW90aOhxdWUgbidhIHBhcyBkJ2luZm9ybWF0aW9ucyBzdXIKK2xlcyBk6XBlbmRhbmNlcyBhc3NvY2npZXMgKHNvaXQgbGVzIGZpY2hpZXIgc2hsaWJzLCBzb2l0IGxlIGZpY2hpZXIgZGVzCitzeW1ib2xlcykuIFVuZSBiaWJsaW90aOhxdWUgcHVibGlxdWUgYSB1biBTT05BTUUgZXQgdW4gbnVt6XJvIGRlIHZlcnNpb24KKyhsaWJzb21ldGhpbmcuc28uXGZJWFxmUCkuIFVuZSBiaWJsaW90aOhxdWUgcHJpdullIChjb21tZSB1biBtb2R1bGUKK2FkZGl0aW9ubmVsKSBuZSBkZXZyYWl0IHBhcyBhdm9pciBkZSBTT05BTUUgZXQgbidhIHBhcyBiZXNvaW4gZCdhdm9pciBkZQordmVyc2lvbi4KKy5UUCAKK1xmQmltcG9zc2libGUgZGUgdHJvdXZlciBsYSBiaWJsaW90aOhxdWUgXGZQXGZJbGlicmFyeVwtc29uYW1lXGZQIFxmQmRlbWFuZOllIHBhciBsZVxmUCBcZkliaW5haXJlXGZQIFxmQihzb24gUlBBVEggZXN0ICdcZlBcZklycGF0aFxmUFxmQicpXGZQCitUaGUgXGZJYmluYXJ5XGZQIHVzZXMgYSBsaWJyYXJ5IGNhbGxlZCBcZklsaWJyYXJ5XC1zb25hbWVcZlAgYnV0IFxmQmRwa2dcLXNobGliZGVwc1xmUAoraGFzIGJlZW4gdW5hYmxlIHRvIGZpbmQgdGhlIGxpYnJhcnkuICBcZkJkcGtnXC1zaGxpYmRlcHNcZlAgY3JlYXRlcyBhIGxpc3Qgb2YKK2RpcmVjdG9yaWVzIHRvIGNoZWNrIGFzIGZvbGxvd2luZzogZGlyZWN0b3JpZXMgbGlzdGVkIGluIHRoZSBSUEFUSCBvZiB0aGUKK2JpbmFyeSwgZGlyZWN0b3JpZXMgbGlzdGVkIGluIC9ldGMvbGQuc28uY29uZiwgZGlyZWN0b3JpZXMgbGlzdGVkIGluIHRoZQorTERfTElCUkFSWV9QQVRIIGVudmlyb25tZW50IHZhcmlhYmxlLCBhbmQgc3RhbmRhcmQgcHVibGljIGRpcmVjdG9yaWVzICgvbGliLAorL3Vzci9saWIsIC9saWIzMiwgL3Vzci9saWIzMiwgL2xpYjY0LCAvdXNyL2xpYjY0KS4gVGhlbiBpdCBjaGVja3MgdGhvc2UKK2RpcmVjdG9yaWVzIGluIHRoZSBwYWNrYWdlJ3MgYnVpbGQgdHJlZSBvZiB0aGUgYmluYXJ5IGJlaW5nIGFuYWx5emVkLCBpbiB0aGUKK3BhY2thZ2VzJyBidWlsZCB0cmVlcyBpbmRpY2F0ZWQgd2l0aCB0aGUgXC1TIGNvbW1hbmRcLWxpbmUgb3B0aW9uLCBpbiBvdGhlcgorcGFja2FnZXMnIGJ1aWxkIHRyZWVzIHRoYXQgY29udGFpbnMgYSBERUJJQU4vc2hsaWJzIG9yIERFQklBTi9zeW1ib2xzIGZpbGUKK2FuZCBmaW5hbGx5IGluIHRoZSByb290IGRpcmVjdG9yeS4gIElmIHRoZSBsaWJyYXJ5IGlzIG5vdCBmb3VuZCBpbiBhbnkgb2YKK3Rob3NlIGRpcmVjdG9yaWVzLCB0aGVuIHlvdSBnZXQgdGhpcyBlcnJvci4KKworU2kgbGEgYmlibGlvdGjocXVlIG5vbiB0cm91dullIGVzdCBjZXBlbmRhbnQgZGlzcG9uaWJsZSBkYW5zIGxlIHLpcGVydG9pcmUKK3ByaXbpIGRlIGNlIG3qbWUgcGFxdWV0LCBhbG9ycyBpbCB2b3VzIGZhdXQgYWpvdXRlciBjZSBy6XBlcnRvaXJlIGRhbnMKK0xEX0xJQlJBUllfUEFUSC4gUydpbCBlc3QgZGFucyB1biBhdXRyZSBwYXF1ZXQgYmluYWlyZSBlbiBjb3VycyBkZQorY29uc3RydWN0aW9uLCBhbG9ycyBhc3N1cmV6XC12b3VzIHF1ZSBsZSBmaWNoaWVyIHNobGlicy9zeW1ib2xzIGRlIGNlIHBhcXVldAorZXN0IGTpauAgY3Lp6SBldCBxdWUgTERfTElCUkFSWV9QQVRIIGNvbnRpZW50IGxlIHLpcGVydG9pcmUgYXBwcm9wcmnpIHNpCitjJ2VzdCBhdXNzaSB1biBy6XBlcnRvaXJlIHByaXbpLgorLlRQIAorXGZCYXVjdW5lIGluZm9ybWF0aW9uIGRlIGTpcGVuZGFuY2UgdHJvdXbpIHBvdXJcZlAgXGZJbGEgYmlibGlvdGjocXVlXGZQIFxmQih1dGlsaXPpZSBwYXIgbGVcZlAgXGZJYmluYWlyZVxmUFxmQikuXGZQCitMYSBiaWJsaW90aOhxdWUgbuljZXNzYWlyZSBhdSBcZkliaW5haXJlXGZQIGEg6XTpIHRyb3V26WUgcGFyIFxmQmRwa2dcLXNobGliZGVwc1xmUAorZGFucyBcZklmaWNoaWVyXC1iaWJsaW90aOhxdWVcZlAgbWFpcyBcZkJkcGtnXC1zaGxpYmRlcHNcZlAgbidhIHBhcyDpdOkgZW4gbWVzdXJlIGRlCit0cm91dmVyIGQnaW5mb3JtYXRpb25zIGRlIGTpcGVuZGFuY2UgcG91ciBjZXR0ZSBiaWJsaW90aOhxdWUuIFBvdXIgdHJvdXZlcgorbGEgZOlwZW5kYW5jZSwgaWwgYSBlc3NheekgZGUgbGllciBsYSBiaWJsaW90aOhxdWUg4CB1biBwYXF1ZXQgRGViaWFuIGF2ZWMKK2wnYWlkZSBkZSBcZkJkcGtnIFwtUyBcZlBcZklmaWNoaWVyXC1iaWJsaW90aOhxdWVcZlAuIFB1aXMsIGlsIGEgdulyaWZp6SBsZXMgc2hsaWJzCitjb3JyZXNwb25kYW50cyBldCBsZXMgZmljaGllcnMgc3ltYm9sZXMgZGUgL3Zhci9saWIvZHBrZy9pbmZvLyBldCBlbmZpbiBsZXMKK2RpZmbpcmVudHMgYXJicmVzIGRlcyBwYXF1ZXRzIGNvbnN0cnVpdHMgKGRlYmlhbi8qL0RFQklBTi8pLgorCitDZXQg6WNoZWMgcGV1dCDqdHJlIGNhdXPpIHBhciB1biBzaGxpYnMgb3UgdW4gZmljaGllciBkZSBzeW1ib2xlcyBxdWkgc2VyYWl0CittYXV2YWlzIG91IG1hbnF1YW50IGRhbnMgbGUgcGFxdWV0LiBVbmUgYXV0cmUgY2F1c2Ugc2VyYWl0IHF1ZSBsYQorYmlibGlvdGjocXVlIHNvaXQgY29uc3RydWl0ZSBhdSBzZWluIGR1IG3qbWUgcGFxdWV0IHNvdXJjZSBldCBxdWUgbGVzCitmaWNoaWVycyBzaGxpYnMgbidhaWVudCBwYXMgZW5jb3JlIOl06SBjcunpcyAoZGFucyBjZSBjYXMgZGViaWFuL3J1bGVzIGRvaXQKK+p0cmUgbW9kaWZp6SBwb3VyIGNy6WVyIGxlIHNobGlicyBhdmFudCBsJ2FwcGVsIGRlIFxmQmRwa2dcLXNobGliZGVwc1xmUCkuIFVuCittYXV2YWlzIFJQQVRIIHBldXQgYXVzc2kgY29uZHVpcmUg4CBjZSBxdWUgbGEgYmlibGlvdGjocXVlIHNvaXQgdHJvdXbpZSBzb3VzCit1biBub20gbm9uXC1jYW5vbmlxdWUgKGNvbW1lOiAvdXNyL2xpYi9vcGVub2ZmaWNlLm9yZy8uLi9saWIvbGlic3NsLnNvLjAuOS44CithdSBsaWV1IGRlIC91c3IvbGliL2xpYnNzbC5zby4wLjkuOCkgcXVpIG4nZXN0IGFzc29jaekg4CBhdWN1biBwYXF1ZXQsCitcZkJkcGtnXC1zaGxpYmRlcHNcZlAgZXNzYWllIGRlIHRyYXZhaWxsZXIgc3VyIGNlIG5vbSBub25cLWNhbm9uaXF1ZSAoZW4KK3V0aWxpc2FudCBcZkJyZWFscGF0aFxmUCgzKSksIG1haXMgY2VsYSBuZSBmb25jdGlvbm5lIHBhcyB0b3Vqb3Vycy4gSWwgZXN0Cit0b3Vqb3VycyBwculm6XJhYmxlIGRlIGJpZW4gbmV0dG95ZXIgbGUgUlBBVEggZHUgYmluYWlyZSBhZmluIGQn6XZpdGVyIGNlcworcHJvYmzobWVzLgorCitMJ2FwcGVsIGRlIFxmQmRwa2dcLXNobGliZGVwc1xmUCBlbiBtb2RlIHZlcmJldXggKFwtdikgZm91cm5pcmEgYmVhdWNvdXAgcGx1cworaW5mb3JtYXRpb25zIHN1ciBsJ2VuZHJvaXQgb/kgaWwgYSBlc3NheekgZGUgdHJvdXZlciBsJ2luZm9ybWF0aW9uIHN1ciBsZXMKK2TpcGVuZGFuY2VzLiBDZWNpIHBldXQg6nRyZSB1dGlsZSBzaSB2b3VzIG5lIGNvbXByZW5leiBwYXMgcG91cnF1b2kgdm91cworb2J0ZW5leiBjZXR0ZSBlcnJldXIuCisuU0ggIlZPSVIgQVVTU0kiCitcZkJkZWJcLXNobGlic1xmUCg1KSwgXGZCZGViXC1zeW1ib2xzXGZQKDUpLCBcZkJkcGtnXC1nZW5zeW1ib2xzXGZQKDEpLgorLgorLlNIIEFVVEVVUlMKK0NvcHlyaWdodCBcKGNvIDE5OTVcLTE5OTYgSWFuIEphY2tzb24KKy5icgorQ29weXJpZ2h0IFwoY28gMjAwMCBXaWNoZXJ0IEFra2VybWFuCisuYnIKK0NvcHlyaWdodCBcKGNvIDIwMDYgRnJhbmsgTGljaHRlbmhlbGQKKy5icgorQ29weXJpZ2h0IFwoY28gMjAwN1wtMjAwOCBSYXBoYVxbOmVdbCBIZXJ0em9nCisuc3AKK0NlIHByb2dyYW1tZSBlc3QgdW4gbG9naWNpZWwgbGlicmVcIDsgdm95ZXogbGEgq1wgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2VcILsKK3ZlcnNpb24gMiBvdSBzdXDpcmlldXJlIHBvdXIgbGUgY29weXJpZ2h0LiBJbCBuJ3kgYSBQQVMgZGUgZ2FyYW50aWUuCisuU0ggVFJBRFVDVElPTgorQXJpZWwgVkFSREkgPGFyaWVsLnZhcmRpQGZyZWVzYmVlLmZyPiwgMjAwMi4KK1BoaWxpcHBlIEJhdGFpbGxlciwgMjAwNi4KK05pY29sYXMgRnJhbudvaXMsIDIwMDYuCitWZXVpbGxleiBzaWduYWxlciB0b3V0ZSBlcnJldXIg4CA8ZGViaWFuXC1sMTBuXC1mcmVuY2hAbGlzdHMuZGViaWFuLm9yZz4uCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9mci9kcGtnLXNvdXJjZS4xIGIvZHBrZy0xLjE2LjEuMS9tYW4vZnIvZHBrZy1zb3VyY2UuMQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42MTE2NDY0Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vZnIvZHBrZy1zb3VyY2UuMQpAQCAtMCwwICsxLDcyNCBAQAorLlwiIEF1dGhvcnM6IElhbiBKYWNrc29uLCBSYXBoYcOrbCBIZXJ0em9nCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkcGtnXC1zb3VyY2UgMSAyMDExXC0wOFwtMTQgIlByb2pldCBEZWJpYW4iICJVdGlsaXRhaXJlcyBkZSBkcGtnIgorLlNIIE5PTQorZHBrZ1wtc291cmNlIFwtIG91dGlsIGRlIG1hbmlwdWxhdGlvbiBkZXMgcGFxdWV0cyBzb3VyY2VzIERlYmlhbiAoLmRzYykuCisuCisuU0ggU1lOT1BTSVMKK1xmQmRwa2dcLXNvdXJjZVxmUCBbXGZJb3B0aW9uXGZQLi4uXSBcZkljb21tYW5kXGZQCisuCisuU0ggREVTQ1JJUFRJT04KK1xmQmRwa2dcLXNvdXJjZVxmUCBlbXBhcXVldGUgb3UgZOlwYXF1ZXRlIHVuZSBhcmNoaXZlIHNvdXJjZSBEZWJpYW4uCisKK0F1Y3VuZSBkZSBjZXMgY29tbWFuZGVzIG5lIHBlcm1ldCBsYSBjb21iaW5haXNvbiBkZSBwbHVzaWV1cnMgb3B0aW9ucyBlbiB1bmUKK3NldWxlIGV0IGVsbGVzIG5lIHBlcm1ldHRlbnQgcGFzIGQnaW5kaXF1ZXIgbGEgdmFsZXVyIGQndW5lIG9wdGlvbiBkYW5zIHVuCithcmd1bWVudCBz6XBhcukuCisuCisuU0ggQ09NTUFOREVTCisuVFAgCitcZkJcLXggXGZQXGZJZmljaGllclxmUFxmQi5kc2NcZlAgW1xmSXLpcGVydG9pcmVcLWRlXC1zb3J0aWVcZlBdCitDZXR0ZSBvcHRpb24gc2VydCDgIGV4dHJhaXJlIHVuIHBhcXVldCBzb3VyY2UuIE9uIGRvaXQgZG9ubmVyIHVuIHNldWwKK2FyZ3VtZW50IHNhbnMgb3B0aW9uXCA6IGxlIG5vbSBkdSBmaWNoaWVyIGRlIGNvbnRy9GxlIGRlcyBzb3VyY2VzIERlYmlhbgorKFxmQi5kc2NcZlApLiAgVW4gZGV1eGnobWUgYXJndW1lbnQgc2FucyBvcHRpb24gcGV1dCDqdHJlIGRvbm7pIHBvdXIgaW5kaXF1ZXIKK2xlIHLpcGVydG9pcmUgb/kgZXh0cmFpcmUgbGUgcGFxdWV0IHNvdXJjZSwgY2VsYSBuZSBkb2l0IHBhcyBleGlzdGVyLiBRdWFuZAorYXVjdW4gculwZXJ0b2lyZSBuJ2VzdCBpbmRpcXXpLCBsZSBwYXF1ZXQgc291cmNlIGVzdCBleHRyYWl0IGRhbnMgdW4KK3LpcGVydG9pcmUgXGZJc291cmNlXGZQXC1cZkl2ZXJzaW9uXGZQIGR1IHLpcGVydG9pcmUgY291cmFudC4KKworXGZCZHBrZ1wtc291cmNlXGZQIGxpdCwgZGFucyBsZSBmaWNoaWVyIGRlIGNvbnRy9GxlLCBsZXMgbm9tcyBkZXMgZmljaGllcnMgcXVpCitjb21wb3NlbnQgbGUgcGFxdWV0IHNvdXJjZVwgOyBpbCBzdXBwb3NlIHF1J2lscyBzb250IGRhbnMgbGUgbeptZSBy6XBlcnRvaXJlCitxdWUgbGUgZmljaGllciBcZkIuZHNjXGZQLgorCitMZXMgZmljaGllcnMgZXh0cmFpdHMgZHUgcGFxdWV0IGF1cm9udCBsZSBt6m1lIHN5c3TobWUgZGUgcHJvcHJp6XTpIGV0IGRlCitwZXJtaXNzaW9uIHF1ZSBzJ2lscyBhdmFpZW50IOl06SBzaW1wbGVtZW50IGNy6elzIFwtXC0gbGVzIHLpcGVydG9pcmVzIGV0IGxlcworZmljaGllcnMgZXjpY3V0YWJsZXMgYXVyb250IHVuIHN5c3TobWUgZGUgcGVybWlzc2lvbiDpZ2FsIOAgMDc3NyBldCBsZXMKK3NpbXBsZXMgZmljaGllcnMsIDA2NjZcIDsgY2VzIGRldXggc3lzdOhtZXMg6XRhbnQgbW9kaWZp6XMgcGFyIGxlIG1hc3F1ZSBkZQorY2VsdWkgcXVpIGZhaXQgbCdleHRyYWN0aW9uXCA7IHNpIGxlIHLpcGVydG9pcmUgcGFyZW50IGVzdCCrXCBzZXRnaWRcILssIGxlcworculwZXJ0b2lyZXMgZXh0cmFpdHMgbGUgc2Vyb250IGF1c3NpIGV0IHRvdXMgbGVzIGZpY2hpZXJzIGV0IHLpcGVydG9pcmVzCito6XJpdGVyb250IGR1IHN5c3TobWUgZGUgcHJvcHJp6XTpIGRlIGNlIGdyb3VwZS4KKworU2kgbGUgcGFxdWV0IHNvdXJjZSB1dGlsaXNlIHVuIGZvcm1hdCBub25cLXN0YW5kYXJkIChhY3R1ZWxsZW1lbnQsIGNlbGEKK3NpZ25pZmllIHRvdXMgbGVzIGZvcm1hdHMgc2F1ZiBsZSAiMS4wIiksIHNvbiBub20gc2VyYSBlbnJlZ2lzdHLpIGRhbnMKK1xmQmRlYmlhbi9zb3VyY2UvZm9ybWF0XGZQIGRlIHNvcnRlIHF1ZSBsYSBjb25zdHJ1Y3Rpb24gZHUgcGFxdWV0IHNvdXJjZQordXRpbGlzZSBsZSBt6m1lIGZvcm1hdCBwYXIgZOlmYXV0LgorCisuVFAgCitcZkJcLWJcZlAgXGZJculwZXJ0b2lyZVxmUCBbXGZJcGFyYW3odHJlc1wtZGFuc1wtdW5cLWZvcm1hdFwtc3DpY2lmaXF1ZVxmUF0KK0NvbnN0cnVpdCB1biBwYXF1ZXQgc291cmNlLiBMZSBwcmVtaWVyIGFyZ3VtZW50IG5vbiBvcHRpb25uZWwgZXN0IHByaXMgY29tbWUKK25vbSBkdSBy6XBlcnRvaXJlIGNvbnRlbmFudCBsJ2FyYm9yZXNjZW5jZSBkZXMgc291cmNlcyBEZWJpYW5pc+llcworKGMnZXN0XC3gXC1kaXJlIGF2ZWMgdW4gc291c1wtculwZXJ0b2lyZSBkZWJpYW4gZXQgcGV1dFwt6nRyZSBkZXMgbW9kaWZpY2F0aW9ucworc3VyIGxlcyBmaWNoaWVycyBkJ29yaWdpbmUpLiBTZWxvbiBsZSBmb3JtYXQgZHUgcGFxdWV0IHNvdXJjZSB1dGlsaXPpIHBvdXIKK2NvbnN0cnVpcmUgbGUgcGFxdWV0LCBkJ2F1dHJlcyBwYXJhbeh0cmVzIHBldXZlbnQg6nRyZSBhY2NlcHTpcy4KKworXGZCZHBrZ1wtc291cmNlXGZQIHdpbGwgYnVpbGQgdGhlIHNvdXJjZSBwYWNrYWdlIHdpdGggdGhlIGZpcnN0IGZvcm1hdCBmb3VuZCBpbgordGhpcyBvcmRlcmVkIGxpc3Q6IHRoZSBmb3JtYXQgaW5kaWNhdGVkIHdpdGggdGhlIFxmSVwtXC1mb3JtYXRcZlAgY29tbWFuZCBsaW5lCitvcHRpb24sIHRoZSBmb3JtYXQgaW5kaWNhdGVkIGluIFxmQmRlYmlhbi9zb3VyY2UvZm9ybWF0XGZQLCAiMS4wIi4gVGhlIGZhbGxiYWNrCit0byAiMS4wIiBpcyBkZXByZWNhdGVkIGFuZCB3aWxsIGJlIHJlbW92ZWQgYXQgc29tZSBwb2ludCBpbiB0aGUgZnV0dXJlLCB5b3UKK3Nob3VsZCBhbHdheXMgZG9jdW1lbnQgdGhlIGRlc2lyZWQgc291cmNlIGZvcm1hdCBpbgorXGZCZGViaWFuL3NvdXJjZS9mb3JtYXRcZlAuIFNlZSBzZWN0aW9uIFxmQlNPVVJDRSBQQUNLQUdFIEZPUk1BVFNcZlAgZm9yIGFuCitleHRlbnNpdmUgZGVzY3JpcHRpb24gb2YgdGhlIHZhcmlvdXMgc291cmNlIHBhY2thZ2UgZm9ybWF0cy4KKworLlRQIAorXGZCXC1cLXByaW50XC1mb3JtYXRcZlAgXGZJculwZXJ0b2lyZVxmUAorQWZmaWNoZSBsZSBmb3JtYXQgc291cmNlIHF1aSBzZXJhaXQgdXRpbGlz6SBwb3VyIGNvbnN0cnVpcmUgbGUgcGFxdWV0IHNvdXJjZQorc2kgXGZCZHBrZ1wtc291cmNlIFwtYiBcZlBcZkly6XBlcnRvaXJlXGZQIOl0YWl0IHV0aWxpc+kgKGRhbnMgbGVzIG3qbWVzIGNvbmRpdGlvbnMKK2V0IGF2ZWMgbGVzIG3qbWVzIG9wdGlvbnMpLgorCisuVFAgCitcZkJcLVwtYmVmb3JlXC1idWlsZFxmUCBcZkly6XBlcnRvaXJlXGZQCitSdW4gdGhlIGNvcnJlc3BvbmRpbmcgaG9vayBvZiB0aGUgc291cmNlIHBhY2thZ2UgZm9ybWF0LiBUaGlzIGhvb2sgaXMgY2FsbGVkCitiZWZvcmUgYW55IGJ1aWxkIG9mIHRoZSBwYWNrYWdlIChcZkJkcGtnXC1idWlsZHBhY2thZ2VcZlAgY2FsbHMgaXQgdmVyeSBlYXJseQorZXZlbiBiZWZvcmUgXGZCZGViaWFuL3J1bGVzIGNsZWFuXGZQKS4gVGhpcyBjb21tYW5kIGlzIGlkZW1wb3RlbnQgYW5kIGNhbiBiZQorY2FsbGVkIG11bHRpcGxlIHRpbWVzLiBOb3QgYWxsIHNvdXJjZSBmb3JtYXRzIGltcGxlbWVudCBzb21ldGhpbmcgaW4gdGhpcworaG9vaywgYW5kIHRob3NlIHRoYXQgZG8gdXN1YWxseSBwcmVwYXJlIHRoZSBzb3VyY2UgdHJlZSBmb3IgdGhlIGJ1aWxkIGZvcgorZXhhbXBsZSBieSBlbnN1cmluZyB0aGF0IHRoZSBEZWJpYW4gcGF0Y2hlcyBhcmUgYXBwbGllZC4KKworLlRQIAorXGZCXC1cLWFmdGVyXC1idWlsZFxmUCBcZkly6XBlcnRvaXJlXGZQCitSdW4gdGhlIGNvcnJlc3BvbmRpbmcgaG9vayBvZiB0aGUgc291cmNlIHBhY2thZ2UgZm9ybWF0LiBUaGlzIGhvb2sgaXMgY2FsbGVkCithZnRlciBhbnkgYnVpbGQgb2YgdGhlIHBhY2thZ2UgKFxmQmRwa2dcLWJ1aWxkcGFja2FnZVxmUCBjYWxscyBpdCBsYXN0KS4gVGhpcworY29tbWFuZCBpcyBpZGVtcG90ZW50IGFuZCBjYW4gYmUgY2FsbGVkIG11bHRpcGxlIHRpbWVzLiBOb3QgYWxsIHNvdXJjZQorZm9ybWF0cyBpbXBsZW1lbnQgc29tZXRoaW5nIGluIHRoaXMgaG9vaywgYW5kIHRob3NlIHRoYXQgZG8gdXN1YWxseSB1c2UgaXQKK3RvIHVuZG8gd2hhdCBcZkJcLVwtYmVmb3JlXC1idWlsZFxmUCBoYXMgZG9uZS4KKworLlRQIAorXGZCXC1cLWNvbW1pdFxmUCBbXGZJZGlyZWN0b3J5XGZQXSAuLi4KK1JlY29yZCBjaGFuZ2VzIGluIHRoZSBzb3VyY2UgdHJlZSB1bnBhY2tlZCBpbiBcZklkaXJlY3RvcnlcZlAuIFRoaXMgY29tbWFuZCBjYW4KK3Rha2Ugc3VwcGxlbWVudGFyeSBwYXJhbWV0ZXJzIGRlcGVuZGluZyBvbiB0aGUgc291cmNlIGZvcm1hdC4gIEl0IHdpbGwgZXJyb3IKK291dCBmb3IgZm9ybWF0cyB3aGVyZSB0aGlzIG9wZXJhdGlvbiBkb2Vzbid0IG1lYW4gYW55dGhpbmcuCisKKy5UUCAKK1xmQlwtaFxmUCwgXGZCXC1cLWhlbHBcZlAKK0FmZmljaGUgdW4gbWVzc2FnZSBkJ2FpZGUgcHVpcyBxdWl0dGUuCisuVFAgCitcZkJcLVwtdmVyc2lvblxmUAorQWZmaWNoZSBsZSBudW3pcm8gZGUgdmVyc2lvbiBwdWlzIHF1aXR0ZS4KKy4KKy5TSCAiT1BUSU9OUyBERSBDT05TVFJVQ1RJT04gR8lOyVJJUVVFUyIKKy5UUCAKK1xmQlwtY1xmUFxmSWZpY2hpZXIvY29udHJvbFxmUAorSW5kaXF1ZSBsZSBwcmluY2lwYWwgZmljaGllciBkZSBjb250cvRsZSBkZXMgc291cmNlcyBv+SB0cm91dmVyIGxlcworcmVuc2VpZ25lbWVudHMuIFBhciBk6WZhdXQsIGMnZXN0IGxlIGZpY2hpZXIgXGZCZGViaWFuL2NvbnRyb2xcZlAuIExvcnNxdSd1bgorY2hlbWluIHJlbGF0aWYgZXN0IGZvdXJuaSwgb24gY29uc2lk6HJlIHF1J2lsIGVzdCByZWxhdGlmIGF1IHLpcGVydG9pcmUgbGUKK3BsdXMg6WxldukgZGUgbCdhcmJvcmVzY2VuY2Ugc291cmNlLgorLlRQIAorXGZCXC1sXGZQXGZJZmljaGllci9jaGFuZ2Vsb2dcZlAKK0luZGlxdWUgbGUgZmljaGllciBkJ2VucmVnaXN0cmVtZW50IGRlcyBjaGFuZ2VtZW50cyBv+SB0cm91dmVyIGRlcworcmVuc2VpZ25lbWVudHMuIFBhciBk6WZhdXQsIGMnZXN0IGxlIGZpY2hpZXIgXGZCZGViaWFuL2NoYW5nZWxvZ1xmUC4gTG9yc3F1J3VuCitjaGVtaW4gcmVsYXRpZiBlc3QgZm91cm5pLCBvbiBjb25zaWTocmUgcXUnaWwgZXN0IHJlbGF0aWYgYXUgculwZXJ0b2lyZSBsZQorcGx1cyDpbGV26SBkZSBsJ2FyYm9yZXNjZW5jZSBzb3VyY2UuCisuVFAgCitcZkJcLUZcZlBcZklmb3JtYXRcLWR1XC1jaGFuZ2Vsb2dcZlAKK0Rvbm5lIGxlIGZvcm1hdCBkdSBmaWNoaWVyIGNoYW5nZWxvZy4gUGFyIGTpZmF1dCwgYydlc3QgdW5lIGxpZ25lIHNw6WNpYWxlLAorcHLocyBkZSBsYSBmaW4gZHUgZmljaGllciwgcXVpIGwnaW5kaXF1ZVwgOyBzaW5vbiwgb24gdXRpbGlzZSBsZSBmb3JtYXQKK2NsYXNzaXF1ZSBcZkJkZWJpYW5cZlAuCisuVFAgCitcZkJcLVwtZm9ybWF0PVxmUFxmSXZhbGV1clxmUAorVXRpbGlzZSBsZSBmb3JtYXQgaW5kaXF16SBwb3VyIGxhIGNvbnN0cnVjdGlvbiBkdSBwYXF1ZXQgc291cmNlLiBDZSBjaG9peAorcmVtcGxhY2UgbGUgZm9ybWF0IGluZGlxdekgZGFucyBcZkJkZWJpYW4vc291cmNlL2Zvcm1hdFxmUC4KKy5UUCAKK1xmQlwtVlxmUFxmSW5vbVxmUFxmQj1cZlBcZkl2YWxldXJcZlAKK0ZpeGUgbGEgdmFsZXVyIGQndW5lIHZhcmlhYmxlIGRlIHN1YnN0aXR1dGlvbi4gQ29uc3VsdGV6IFxmQmRlYlwtc3Vic3R2YXJzXGZQKDUpCitwb3VyIHVuZSBkaXNjdXNzaW9uIHN1ciBsYSB2YWxldXIgZGUgc3Vic3RpdHV0aW9uLgorLlRQIAorXGZCXC1UXGZQXGZJZmljaGllci9zdWJzdHZhcnNcZlAKK0xpdCBsZXMgdmFyaWFibGVzIGRlIHN1YnN0aXR1dGlvbiBkYW5zIFxmSWZpY2hpZXJcLXN1YnN0dmFyc1xmUFwgOyBwYXIgZOlmYXV0CithdWN1biBmaWNoaWVyIG4nZXN0IGx1LiBDZXR0ZSBvcHRpb24gcGV1dCDqdHJlIHV0aWxpc+llIHBsdXNpZXVycyBmb2lzIHBvdXIKK2xpcmUgZGVzIHZhcmlhYmxlcyBkZSBzdWJzdGl0dXRpb24gZGVwdWlzIHBsdXNpZXVycyBmaWNoaWVycy4KKy5UUCAKK1xmQlwtRFxmUFxmSWNoYW1wXGZQXGZCPVxmUFxmSXZhbGV1clxmUAorUmVtcGxhY2Ugb3UgYWpvdXRlIGVuIHNvcnRpZSB1biBjaGFtcCBkYW5zIGxlIGZpY2hpZXIgZGUgY29udHL0bGUuCisuVFAgCitcZkJcLVVcZlBcZkljaGFtcFxmUAorU3VwcHJpbWUgZW4gc29ydGllIHVuIGNoYW1wIGRhbnMgbGUgZmljaGllciBkZSBjb250cvRsZS4KKy5UUCAKK1xmQlwtWlxmUFxmSWNvbXByZXNzaW9uXGZQLCBcZkJcLVwtY29tcHJlc3Npb25cZlA9XGZJY29tcHJlc3Npb25cZlAKK1Nw6WNpZmllIGxlIG5pdmVhdSBkZSBjb21wcmVzc2lvbiDgIHV0aWxpc2VyIHBvdXIgbGVzIGZpY2hpZXJzIGNy6elzCisoYXJjaGl2ZXMgZXQgZmljaGllcnMgZGlmZnMpLiBOb3RleiBxdWUgY2V0dGUgb3B0aW9uIG5lIGNhdXNlcmEgcGFzIGxhCityZWNvbXByZXNzaW9uIGRlcyBhcmNoaXZlcyBleGlzdGFudGVzLCBjZWxhIG5lIGNvbmNlcm5lIHF1ZSBsZXMgbm91dmVhdXgKK2ZpY2hpZXJzLiBMZXMgdmFsZXVycyBhY2NlcHTpZXMgc29udCBsZXMgc3VpdmFudGVzXCA6IFxmSWd6aXBcZlAsIFxmSWJ6aXAyXGZQLAorXGZJbHptYVxmUCBldCBcZkl4elxmUC4gXGZJZ3ppcFxmUCDpdGFudCBsJ29wdGlvbiBwYXIgZOlmYXV0LiBcZkl4elxmUCBuJ2VzdCBn6XLpIHF1ZQorZGVwdWlzIGRwa2dcLWRldiAxLjE1LjUuCisuVFAgCitcZkJcLXpcZlBcZkluaXZlYXVcZlAsIFxmQlwtXC1jb21wcmVzc2lvblwtbGV2ZWxcZlA9XGZJbml2ZWF1XGZQCitDb21wcmVzc2lvbiBsZXZlbCB0byB1c2UuIEFzIHdpdGggXGZCXC1aXGZQIGl0IG9ubHkgYWZmZWN0cyBuZXdseSBjcmVhdGVkCitmaWxlcy4gU3VwcG9ydGVkIHZhbHVlcyBhcmU6IFxmSTFcZlAgdG8gXGZJOVxmUCwgXGZJYmVzdFxmUCwgYW5kIFxmSWZhc3RcZlAuICBUaGUKK2RlZmF1bHQgaXMgXGZJOVxmUCBmb3IgZ3ppcCBhbmQgYnppcDIsIFxmSTZcZlAgZm9yIHh6IGFuZCBsem1hLgorLlRQIAorXGZCXC1pXGZQW1xmSWV4cHIuIHJhdC5cZlBdLCBcZkJcLVwtZGlmZlwtaWdub3JlXGZQWz1cZklleHByLiByYXQuXGZQXQorSWwgZXN0IHBvc3NpYmxlIGRlIGRvbm5lciB1bmUgZXhwcmVzc2lvbiByYXRpb25uZWxsZSBQZXJsIHBvdXIgZmlsdHJlciBsZXMKK2ZpY2hpZXJzIHF1aSBkb2l2ZW50IOp0cmUg6WxpbWlu6XMgZGUgbGEgbGlzdGUgZGVzIGZpY2hpZXJzIHBvdXIgbGUKK6tcIGRpZmZcILsuIENldHRlIGxpc3RlIGVzdCBjcunpZSBhdmVjIHVuZSBjb21tYW5kZSCrXCBmaW5kXCC7LiBTaSBsZSBmaWNoaWVyCitzb3VyY2UgZW4gY29uc3RydWN0aW9uIGVzdCB1biBmaWNoaWVyIHNvdXJjZSBkZSB2ZXJzaW9uIDMgdXRpbGlzYW50IHVuCitzeXN06G1lIGRlIHN1aXZpIGRlIHZlcnNpb25zLCBjZXR0ZSBvcHRpb24gZXN0IHV0aWxlIHBvdXIgaWdub3JlciBsZXMKK21vZGlmaWNhdGlvbnMgbm9uIGVudm956WVzLiBMJ29wdGlvbiBcZkJcLWlcZlAgYWN0aXZlIGNldHRlIGZvbmN0aW9uIGF2ZWMgdW5lCitleHByZXNzaW9uIHJhdGlvbm5lbGxlIHF1aSBjb3V2cmUgbGVzIGZpY2hpZXJzIGRlIGNvbnRy9GxlIGRlcyBwbHVzIHVzdWVscworc3lzdOhtZXMgZGUgZ2VzdGlvbiBkZSB2ZXJzaW9uLCBsZXMgZmljaGllcnMgZGUgc2F1dmVnYXJkZXMsIGxlcyBmaWNoaWVycworZCfpY2hhbmdlIGV0IGxlcyBy6XBlcnRvaXJlcyB1dGlsaXPpcyBwYXIgTGlidG9vbC4gSWwgbmUgcGV1dCB5IGF2b2lyIHF1J3VuZQorc2V1bGUgZXhwcmVzc2lvbiByYXRpb25uZWxsZSBhY3RpdmVcIDsgc2V1bGUgbGEgZGVybmnocmUgbWVudGlvbm7pZSBzZXJhCitwcmlzZSBlbiBjb21wdGUuCisKK0MnZXN0IHRy6HMgdXRpbGUgcG91ciBzdXBwcmltZXIgZGVzIGZpY2hpZXJzIHF1aSBzb250IGluY2x1cyBkYW5zIGxlIGRpZmYsCitwYXIgZXhlbXBsZSwgc2kgdm91cyBtYWludGVuZXogdW4gc291cmNlIGF2ZWMgdW4gc3lzdOhtZSBkZSBjb250cvRsZSBkZQorcul2aXNpb24gZXQgcXVlIHZvdWxleiBjb25zdHJ1aXJlIHVuIHBhcXVldCBzb3VyY2Ugc2FucyBpbmNsdXJlIGRlcyBmaWNoaWVycworZXQgculwZXJ0b2lyZXMgYWRkaXRpb25uZWxzIHF1J2lsIGNvbnRpZW50IGfpbulyYWxlbWVudCAocGFyIGV4ZW1wbGUgQ1ZTLywKK1wmLmN2c2lnbm9yZSwgLnN2bi8pLiBMJ2V4cHJlc3Npb24gcmF0aW9ubmVsbGUgcGFyIGTpZmF1dCAgZXN0IGTpauAgdHLocworZXhoYXVzdGl2ZSwgbWFpcyBzaSBhdmV6IGJlc29pbiBkZSBsYSByZW1wbGFjZXIsIHZldWlsbGV6IG5vdGVyIHF1ZSBwYXIKK2TpZmF1dCwgaWwgc2FpdCB26XJpZmllciBuJ2ltcG9ydGUgcXVlbGxlIHBhcnRpZSBkJ3VuIGNoZW1pbiwgZG9uYyBzaSB2b3VzCit2b3VsZXogdHJvdXZlciBsZSBk6WJ1dCBkJ3VuIG5vbSBkZSBmaWNoaWVyIG91IGRlcyBub21zIGRlIGZpY2hpZXJzCitjb21wbGV0cywgdm91cyBkZXZyZXogZm91cm5pciBsZXMgY2FyYWN06HJlcyBzcOljaWF1eCB2b3VzXC1t6m1lIChwYXIKK2V4ZW1wbGUnKF58LyknLCAnKCR8LyknKS4KKy5UUCAKK1xmQlwtXC1leHRlbmRcLWRpZmZcLWlnbm9yZVxmUD1cZklleHByLnJhdC5cZlAKK1RoZSBwZXJsIHJlZ3VsYXIgZXhwcmVzc2lvbiBzcGVjaWZpZWQgd2lsbCBleHRlbmQgdGhlIGRlZmF1bHQgdmFsdWUgb2YKK1xmQlwtXC1kaWZmXC1pZ25vcmVcZlAgYW5kIGl0cyBjdXJyZW50IHZhbHVlIChpZiBzZXQpLiBJdCBkb2VzIHRoaXMgYnkKK2NvbmNhdGVuYXRpbmcgIlxmQnxcZlBcZklyZWdleHBcZlAiIHRvIHRoZSBleGlzdGluZyB2YWx1ZS4gIFRoaXMgb3B0aW9uIGlzCitjb252ZW5pZW50IHRvIHVzZSBpbiBcZkJkZWJpYW4vc291cmNlL29wdGlvbnNcZlAgdG8gZXhjbHVkZSBzb21lIGF1dG9cLWdlbmVyYXRlZAorZmlsZXMgZnJvbSB0aGUgYXV0b21hdGljIHBhdGNoIGdlbmVyYXRpb24uCisuVFAgCitcZkJcLUlcZlBbXGZJbW90aWZcLWZpY2hpZXJcZlBdLCBcZkJcLVwtdGFyXC1pZ25vcmVcZlBbPVxmSW1vdGlmXC1maWNoaWVyXGZQXQorQXZlYyBjZXR0ZSBvcHRpb24sIGxlIGZpY2hpZXIgZXN0IHBhc3PpIOAgbCdvcHRpb24gXGZCdGFyXGZQKDEpIHF1YW5kIG9uIHZldXQKK2Ny6WVyIHVuIGZpY2hpZXIgLm9yaWcudGFyLmd6IG91IC50YXIuZ3ouIFBhciBleGVtcGxlLCBcLUlDVlMgZmVyYSBxdWUgdGFyCitzYXV0ZXJhIGxlcyBy6XBlcnRvaXJlcyBkdSBDVlMgcXVhbmQgaWwgZG9pdCBjcullciB1biBmaWNoaWVyIC50YXIuZ3ouIE9uCitwZXV0IHLpcOl0ZXIgY2V0dGUgb3B0aW9uIHBvdXIgZXhjbHVyZSBwbHVzaWV1cnMgZmljaGllcnMuCisKK1xmQlwtSVxmUCBham91dGUgcGFyIGTpZmF1dCBkZXMgb3B0aW9ucyCrXC1cLWV4Y2x1ZGVcILsgcXVpIOlsaW1pbmVyb250IGxlcworZmljaGllcnMgZXQgbGVzIHLpcGVydG9pcmVzIGRlIGNvbnRy9GxlcyBkZXMgc3lzdOhtZXMgbGVzIHBsdXMgY29ubnVzIGRlCitjb250cvRsZSBkZSB2ZXJzaW9uLCBsZXMgZmljaGllcnMgZCfpY2hhbmdlIGV0IGRlIHNhdXZlZ2FyZGUgZXQgbGVzCity6XBlcnRvaXJlcyB1dGlsaXPpcyBwYXIgTGlidG9vbC4KKy5QUAorXGZCTm90ZVwgOlxmUCBt6m1lIHNpIGVsbGVzIG9udCBkZXMgcvRsZXMgc2ltaWxhaXJlcywgXGZCXC1pXGZQIGV0IFxmQlwtSVxmUCBvbnQgdW5lCitzeW50YXhlIGV0IHVuZSBz6W1hbnRpcXVlIHRy6HMgZGlmZulyZW50ZXMuIFxmQlwtaVxmUCBuZSBwZXV0IOp0cmUgc3DpY2lmaekKK3F1J3VuZSBmb2lzIGV0IHJl529pdCB1bmUgZXhwcmVzc2lvbiByYXRpb25uZWxsZSBjb21wYXRpYmxlIGF2ZWMgbGUgbGFuZ2FnZQorUGVybCBxdWkgZXN0IGFwcGxpcXXpZSBzdXIgY2hhcXVlIGNoZW1pbiByZWxhdGlmIGNvbXBsZXQgZGUgY2hhcXVlCitmaWNoaWVyLiBcZkJJXGZQIHBldXQg6nRyZSBzcOljaWZp6SBwbHVzaWV1cnMgZm9pcyBldCBwcmVuZCB1biBtb3RpZiBkZSBub20gZGUKK2ZpY2hpZXIgYXZlYyBsZXMgbel0YVwtY2FyYWN06HJlcyBkdSBzaGVsbC4gTGUgbW90aWYgZXN0IGFwcGxpcXXpIGF1IGNoZW1pbgorcmVsYXRpZiBjb21wbGV0IG1haXMgYXVzc2kg4CBjaGFxdWUgcGFydGllIGR1IGNoZW1pbiBpbmRpdmlkdWVsbGVtZW50LiBMYQorc+ltYW50aXF1ZSBleGFjdGUgZGUgbCdvcHRpb24gq1wgdGFyIFwtXC1leGNsdWRlXCC7IGVzdCB1biBwZXUgY29tcGxpcXXpZSwgdm9pcgoraHR0cDovL3d3dy5nbnUub3JnL3NvZnR3YXJlL3Rhci9tYW51ZWwvdGFyLmh0bWwjd2lsZGNhcmRzIHBvdXIgdW5lCitkb2N1bWVudGF0aW9uIHBsdXMgY29tcGzodGUuCisKK0wnZXhwcmVzc2lvbiByYXRpb25uZWxsZSBldCBsZSBtb3RpZiBwYXIgZOlmYXV0IHBvdXIgbGVzIGRldXggb3B0aW9ucworcGV1dmVudCDqdHJlIHRyb3V26XMgZGFucyBsYSBzb3J0aWUgZGUgbGEgY29tbWFuZGUgXGZCXC1cLWhlbHBcZlAuCisuU0ggIkxFUyBPUFRJT05TIEdFTkVSSVFVRVMgUE9VUiBFWFRSQUNUSU9OIgorLlRQIAorXGZCXC1cLW5vXC1jb3B5XGZQCitOZSBwYXMgY29waWVyIGwnYXJjaGl2ZSBkJ29yaWdpbmUgcHLocyBkZSBsJ2V4dHJhY3Rpb24gZHUgcGFxdWV0IHNvdXJjZS4KKy5UUCAKK1xmQlwtXC1ub1wtY2hlY2tcZlAKK05lIHbpcmlmaWUgcGFzIGxlcyBzaWduYXR1cmVzIGV0IGxlcyBzb21tZXMgZGUgY29udHL0bGUgYXZhbnQgZGUgZOlwYXF1ZXRlci4KKy5UUCAKK1xmQlwtXC1yZXF1aXJlXC12YWxpZFwtc2lnbmF0dXJlXGZQCitSZWZ1c2UgZGUgZOljb21wcmVzc2VyIGxlIHBhcXVldCBzb3VyY2UgcydpbCBuZSBjb250aWVudCBwYXMgZGUgc2lnbmF0dXJlCitPcGVuUEdQIHBvdXZhbnQg6nRyZSB26XJpZmnpZSBzb2l0IGF2ZWMgbGUgZmljaGllciBkZSBjbOlzCitcZkl0cnVzdGVka2V5cy5ncGdcZlAgZGUgbCd1dGlsaXNhdGV1ciwgdW4gZGVzIGZpY2hpZXJzIGRlIGNs6XMgcHJvcHJlIOAgdW4KK2Rpc3RyaWJ1dGV1ciBvdSB1biBkZXMgZmljaGllcnMgZGUgY2zpcyBvZmZpY2llbHMgZGUgRGViaWFuCisoXGZJL3Vzci9zaGFyZS9rZXlyaW5ncy9kZWJpYW5cLWtleXJpbmcuZ3BnXGZQIGV0CitcZkkvdXNyL3NoYXJlL2tleXJpbmdzL2RlYmlhblwtbWFpbnRhaW5lcnMuZ3BnXGZQKS4KKworLlNIICJGT1JNQVRTIERFIFBBUVVFVCBTT1VSQ0UiCitTaSB2b3VzIG5lIHNhdmV6IHBhcyBxdWVsIGZvcm1hdCBzb3VyY2UgdXRpbGlzZXIsIGlsIGVzdCBjb25zZWlsbOkgZGUKK2Nob2lzaXIgc29pdCCrXCAzLjAgKHF1aWx0KSIgc29pdCAiMy4wIChuYXRpdmUpIi4gVm9pcgoraHR0cDovL3dpa2kuZGViaWFuLm9yZy9Qcm9qZWN0cy9EZWJTcmMzLjAgcG91ciBwbHVzIGQnaW5mb3JtYXRpb25zIHN1ciBsYQorbWlzZSBlbiBvZXV2cmUgZGUgY2VzIGZvcm1hdHMgZGFucyBEZWJpYW4uCisKKy5TUyAiRm9ybWF0OiAxLjAiCitVbiBwYXF1ZXQgc291cmNlIGRhbnMgY2UgZm9ybWF0IHNlIGNvbXBvc2Ugc29pdCBkJ3VuIFxmQi5vcmlnLnRhci5nelxmUCBhc3NvY2npCivgIHVuIFxmQi5kaWZmLmd6XGZQIG91IHVuIHNpbXBsZSBcZkIudGFyLmd6XGZQIChkYW5zIGNlIGNhcywgbGUgcGFxdWV0IGVzdCBhcHBlbOkKK25hdGlmIFxmSSJuYXRpdmUiXGZQKS4KKworXGZCRXh0cmFjdGluZ1xmUAorCitFeHRyYWlyZSB1biBwYXF1ZXQgbmF0aWYgcmV2aWVudCDgIHVuZSBzaW1wbGUgZXh0cmFjdGlvbiBkZSBsJ2FyY2hpdmUgVEFSCitkYW5zIGxlIHLpcGVydG9pcmUgY2libGUuIEwnZXh0cmFjdGlvbiBkJ3VuIHBhcXVldCBub25cLW5hdGlmIGNvbnNpc3RlIGF1Citk6XBhcXVldGFnZSBkdSBcZkIub3JpZy50YXIuZ3pcZlAgcHVpcyBsJ2FwcGxpY2F0aW9uIGRlcyBjb3JyZWN0aWZzIGNvbnRlbnVlcworZGFucyBsZSBcZkIuZGlmZi5nelxmUC4gTGEgZGF0ZSBkZSB0b3VzIGxlcyBmaWNoaWVycyBjb3JyZWN0aWZzIGVzdCBjZWxsZSBkdQorbW9tZW50IG/5IGEgZXUgbGlldSBsJ2V4dHJhY3Rpb24gZGVwdWlzIGxlIHBhcXVldCBzb3VyY2UgKGNlbGEg6XZpdGUgbGVzCitoZXVyZXMgZmF1c3NlcyBtZW5hbnQg4CBkZXMgcHJvYmzobWVzIGxvcnNxdWUgZGVzIGZpY2hpZXJzIGfpbuly6XMKK2F1dG9tYXRpcXVlbWVudCBzb250IG1vZGlmaelzKS4gTGUgZGlmZiBwZXV0IGNy6WVyIGRlIG5vdXZlYXV4IGZpY2hpZXJzCisodG91dCBsZSBy6XBlcnRvaXJlIGRlYmlhbiBlc3QgY3Lp6SBkZSBjZXR0ZSBmYedvbikgbWFpcyBuZSBwZXV0IHBhcworc3VwcHJpbWVyIGRlIGZpY2hpZXJzIChsZXMgZmljaGllcnMgdmlkZXMgc2Vyb250IGxhaXNz6SBs4CkuCisKK1xmQkNvbnN0cnVjdGlvblxmUAorCitDb25zdHJ1aXJlIHVuIHBhcXVldCBuYXRpZiByZXZpZW50IHNpbXBsZW1lbnQg4CBjcullciB1bmUgYXJjaGl2ZSBUQVIgYXZlYworbGUgculwZXJ0b2lyZSBkdSBzb3VyY2UuIExhIGNy6WF0aW9uIGQndW4gcGFxdWV0IG5vblwtbmF0aWYgY29uc2lzdGUg4AorZXh0cmFpcmUgbCdhcmNoaXZlIGQnb3JpZ2luZSBkYW5zIHVuIHLpcGVydG9pcmUgc+lwYXLpICIub3JpZyIgcHVpcworculn6W7pcmVyIGxlIFxmQi5kaWZmLmd6XGZQIGVuIGNvbXBhcmFudCBsZSBcZkly6XBlcnRvaXJlXGZQIGR1IHBhcXVldCBzb3VyY2UgYXZlYworculwZXJ0b2lyZSAiLm9yaWciLgorCisuVFAgCitcZkJPcHRpb25zIGRlIGNvbnN0cnVjdGlvbiAoYXZlYyBcLWIpOlxmUAorLlBQCitTaSBsJ29uIGRvbm5lIHVuIHNlY29uZCBhcmd1bWVudCwgY2Ugc2VyYSBsZSBub20gZHUgculwZXJ0b2lyZSBzb3VyY2UKK2Qnb3JpZ2luZSBvdSBsZSBub20gZHUgZmljaGllciCrXCB0YXJcILsgb3UgYmllbiB1bmUgY2hh7m5lIHZpZGUgc2kgbGUgcGFxdWV0Citlc3QgdW4gq1wgZGViaWFuIHB1cmUgc291Y2hlXCC7IGV0IG4nYSBkb25jIHBhcyBkZSBmaWNoaWVycyCrXCBkaWZmc1wguworY29uY2VybmFudCBzYSCrXCBkZWJpYW5pc2F0aW9uXCC7LiBTJ2lsIG4neSBhIHBhcyBkZSBzZWNvbmQgYXJndW1lbnQsIGV0IHNlbG9uCitsZXMgYXV0cmVzIGFyZ3VtZW50cyBkb25u6XMsIFxmQmRwa2dcLXNvdXJjZVxmUCBjaGVyY2hlIGxlIGZpY2hpZXIgq1wgdGFyXCC7IGRlcworc291cmNlcyBkJ29yaWdpbmUgXGZJcGFxdWV0XGZQXGZCX1xmUFxmSXZlcnNpb25cLWQnb3JpZ2luZVxmUFxmQi5vcmlnLnRhci5nelxmUCBvdSBiaWVuCitsZSBy6XBlcnRvaXJlIHNvdXJjZSBkJ29yaWdpbmUgXGZJculwZXJ0b2lyZVxmUFxmQi5vcmlnXGZQIHNlbG9uIGxlcyBwYXJhbeh0cmVzCitcZkJcLXNYXGZQLgorCitMZXMgb3B0aW9ucyBcZkJcLXNhXGZQLCBcZkJcLXNwXGZQLCBcZkJcLXNrXGZQLCBcZkJcLXN1XGZQIGV0IFxmQlwtc3JcZlAgbmUgcmVtcGxhY2VudCBwYXMgbGVzCitmaWNoaWVycyCrXCB0YXJcILsgb3UgbGVzIHLpcGVydG9pcmVzIGV4aXN0YW50cy4gUG91ciBjZWxhLCBpbCBmYXV0IHV0aWxpc2VyCitsZXMgb3B0aW9ucyBcZkJcLXNBXGZQLCBcZkJcLXNQXGZQLCBcZkJcLXNLXGZQLCBcZkJcLXNVXGZQIGV0IFxmQlwtc1IuXGZQCisuVFAgCitcZkJcLXNrXGZQCitRdWFuZCBvbiBzcOljaWZpZSBlbiBmaWNoaWVyIHNvdXJjZSBkJ29yaWdpbmUgdW4gZmljaGllciCrXCB0YXJcILtcIDsgcGFyCitk6WZhdXQsIFxmSXBhcXVldFxmUFxmQl9cZlBcZkl2ZXJzaW9uXC1kJ29yaWdpbmVcZlBcZkIub3JpZy50YXJcZlBcZklleHRlbnNpb25cZlAuIElsIGxlCitsYWlzc2UgZW4gcGxhY2UgZW4gdGFudCBxdWUgZmljaGllciCrXCB0YXJcILsgb3UgbGUgY29waWUgZGFucyBsZSBy6XBlcnRvaXJlCitlbiBjb3VycyBzJ2lsIG4neSBlc3QgcGFzIGTpauAuIExlIGZpY2hpZXIgc2VyYSBk6XBhcXVldOkgZGFucworXGZJculwZXJ0b2lyZVxmUFxmQi5vcmlnXGZQIHBvdXIgbGEgZ+lu6XJhdGlvbiBkdSBmaWNoaWVyIGRpZmYuCisuVFAgCitcZkJcLXNwXGZQCitDb21tZSBcZkJcLXNrXGZQIG1haXMgc3VwcHJpbWVyYSBsZSBy6XBlcnRvaXJlIOAgbm91dmVhdSBwYXIgbGEgc3VpdGUuCisuVFAgCitcZkJcLXN1XGZQCitRdWFuZCBvbiBzcOljaWZpZSBxdWUgbGUgc291cmNlIGQnb3JpZ2luZSBlc3QgdW4gculwZXJ0b2lyZVwgOyBsYSB2YWxldXIgcGFyCitk6WZhdXQgZXN0IGxlIHLpcGVydG9pcmUgXGZJcGFxdWV0XGZQXGZCXC1cZlBcZkl2ZXJzaW9uXC1kJ29yaWdpbmVcZlBcZkIub3JpZ1xmUCBldAorXGZCZHBrZ1wtc291cmNlXGZQIGNy6WUgdW5lIG5vdXZlbGxlIGFyY2hpdmUgZHUgc291cmNlIGQnb3JpZ2luZS4KKy5UUCAKK1xmQlwtc3JcZlAKK0NvbW1lIFxmQlwtc3VcZlAgbWFpcyBzdXBwcmltZXJhIGNlIHLpcGVydG9pcmUgYXBy6HMgdXRpbGlzYXRpb24uCisuVFAgCitcZkJcLXNzXGZQCitJbmRpcXVlIHF1ZSBsZSBzb3VyY2UgZCdvcmlnaW5lIGVzdCBkaXNwb25pYmxlIOAgbGEgZm9pcyBjb21tZSB1biBy6XBlcnRvaXJlCitldCBjb21tZSB1biBmaWNoaWVyIKtcIHRhclwguy4gq1wgZHBrZ1wtc291cmNlXCC7IHNlIHNlcnZpcmEgZHUgculwZXJ0b2lyZSBwb3VyCitjcullciBsZSCrXCBkaWZmXCC7LCBtYWlzIGR1IGZpY2hpZXIgq1wgdGFyXCC7IHBvdXIgY3LpZXIgbGUgZmljaGllcgorXCZcZkIuZHNjXGZQLiBBdXNzaSwgZmFpcmUgYXR0ZW50aW9uIGF2ZWMgY2V0dGUgb3B0aW9uLiBTaSBsZSBy6XBlcnRvaXJlIGV0IGxlCitmaWNoaWVyIKtcIHRhclwguyBuZSBjb3JyZXNwb25kZW50IHBhcywgdW5lIG1hdXZhaXNlIGFyY2hpdmUgc291cmNlIGVuCity6XN1bHRlLgorLlRQIAorXGZCXC1zblxmUAorSW5kaXF1ZSBkZSBuZSBwYXMgY2hlcmNoZXIgZGUgc291cmNlIGQnb3JpZ2luZSBldCBkZSBuZSBwYXMgY3LpZXIgZGUKK6tcIGRpZmZcILsuIExlIHNlY29uZCBhcmd1bWVudCwgcydpbCBleGlzdGUsIGRvaXQg6nRyZSB1bmUgY2hh7m5lIHZpZGUuIENlbGEKK3NlcnQgcG91ciBsZXMgcGFxdWV0cyBEZWJpYW4gcHVyZSBzb3VjaGUgcXVpIG4nb250IHBhcyB1bmUgc291cmNlIGQnb3JpZ2luZQorZGlzdGluY3RlIGV0IGRvbmMgcGFzIGRlIGZpY2hpZXIgq1wgZGlmZlwguyBkZSBkZWJpYW5pc2F0aW9uLgorLlRQIAorXGZCXC1zYVxmUCBvciBcZkJcLXNBXGZQCitJbmRpcXVlIGNvbW1lIHNvdXJjZSBkJ29yaWdpbmUgc29pdCB1biBmaWNoaWVyIKtcIHRhclwguywgc29pdCB1biBy6XBlcnRvaXJlIFwtCitsZSBkZXV4aehtZSBhcmd1bWVudCwgcydpbCBleGlzdGUsIGRvaXQg6nRyZSBsJ3VuIGQnZXV4IG91IGJpZW4gdW5lIGNoYe5uZQordmlkZSAoY2VsYSByZXZpZW50IOAgdXRpbGlzZXIgbCdvcHRpb24gXGZCXC1zbilcZlAuIFF1YW5kIHVuIGZpY2hpZXIgq1wgdGFyXCC7CitleGlzdGUsIGlsIGVzdCBk6XBhcXVldOkgcG91ciBjcullciBsZSBmaWNoaWVyIKtcIGRpZmZcILtcIDsgZW5zdWl0ZSBpbCBlc3QKK3N1cHByaW3pIChjZWxhIHJldmllbnQg4CB1dGlsaXNlciBsJ29wdGlvbiBcZkJcLXNwKVxmUFwgOyBxdWFuZCB1biBy6XBlcnRvaXJlIGVzdAordHJvdXbpLCBpbCBlc3QgZOlwYXF1ZXTpIGV0IFxmQmRwa2dcLXNvdXJjZVxmUCBjcullIGxlIHNvdXJjZSBkJ29yaWdpbmUgZXQKK3N1cHByaW1lIGVuc3VpdGUgY2UgculwZXJ0b2lyZSAoY2VsYSByZXZpZW50IOAgdXRpbGlzZXIgbCdvcHRpb24gXGZCXC1zcilcZlBcIDsKK3F1YW5kIG5pIGwndW4gbmkgbCdhdXRyZSBuJ2VzdCB0cm91duksIFxmQmRwa2dcLXNvdXJjZVxmUCBzdXBwb3NlIHF1ZSBsZSBwYXF1ZXQKK25lIHBvc3PoZGUgcGFzIGRlIGZpY2hpZXIgq1wgZGlmZlwguyBkZSBkZWJpYW5pc2F0aW9uLCBtYWlzIHNldWxlbWVudCB1bmUKK3NpbXBsZSBhcmNoaXZlIHNvdXJjZSAoY2VsYSByZXZpZW50IOAgdXRpbGlzZXIgbCdvcHRpb24gXGZCXC1zblxmUCkuIFF1YW5kIGxlcworZGV1eCBzb250IHRyb3V26XMsIFxmQmRwa2dcLXNvdXJjZVxmUCBpZ25vcmUgbGUgculwZXJ0b2lyZSBldCBsZSByZW1wbGFjZSBzaQorbCdvcHRpb24gXGZCXC1zQVxmUCBhIOl06SBzcOljaWZp6WUgKGNlbGEgcmV2aWVudCDgIHV0aWxpc2VyIGwnb3B0aW9uIFxmQlwtc1ApXGZQIG91CitpbCBwcm92b3F1ZSB1bmUgZXJyZXVyIHNpIGwnb3B0aW9uIFxmQlwtc2FcZlAgYSDpdOkgc3DpY2lmaellLiBMJ29wdGlvbiBwYXIKK2TpZmF1dCBlc3QgXGZCXC1zQVxmUC4KKy5UUCAKK1xmQlwtXC1hYm9ydFwtb25cLXVwc3RyZWFtXC1jaGFuZ2VzXGZQCitDZSBwcm9jZXNzdXMg6WNob3VlIHNpIGxlIGZpY2hpZXIgZGUgZGlmZulyZW5jZXMgY29udGllbnQgZGVzIG1vZGlmaWNhdGlvbnMKK2FwcG9ydOllcyDgIGRlcyBmaWNoaWVycyBlbiBkZWhvcnMgZHUgc291c1wtculwZXJ0b2lyZSBkZWJpYW4uIENldHRlIG9wdGlvbgorbidlc3QgcGFzIGF1dG9yaXPpZSBkYW5zIFxmQmRlYmlhbi9zb3VyY2Uvb3B0aW9uc1xmUCBtYWlzIHBldXQg6nRyZSB1dGlsaXPpZQorZGFucyBcZkJkZWJpYW4vc291cmNlL2xvY2FsXC1vcHRpb25zXGZQLgorCisuVFAgCitcZkJvcHRpb25zIGQnZXh0cmFjdGlvbnMgKGF2ZWMgXC14KTpcZlAKKy5QUAorRGFucyB0b3VzIGNlcyBjYXMsIGwnYXJib3Jlc2NlbmNlIGV4aXN0YW50ZSBkZXMgc291cmNlcyBkJ29yaWdpbmUgZXN0CitzdXBwcmlt6WUuCisuVFAgCitcZkJcLXNwXGZQCitRdWFuZCBvbiBleHRyYWl0IGxlIHLpcGVydG9pcmUgc291cmNlIGQnb3JpZ2luZSAocydpbCBleGlzdGUpLCBpbCBlc3QKK2NvbnNlcnbpIGVuIHRhbnQgcXVlIGZpY2hpZXIgq1wgdGFyXCC7LiBTJ2lsIG4nZXN0IHBhcyBk6WrgIGRhbnMgbGUgculwZXJ0b2lyZQorY291cmFudCBvdSBzaSBjZSBy6XBlcnRvaXJlIGNvbnRpZW50IHVuIGZpY2hpZXIgZGlmZulyZW50LCBsZSBmaWNoaWVyCiurXCB0YXJcILsgZXN0IGNvcGnpIGRhbnMgY2UgculwZXJ0b2lyZS4gKFxmQkNlY2kgZXN0IGxlIGNvbXBvcnRlbWVudCBwYXIKK2TpZmF1dFxmUCkuCisuVFAgCitcZkJcLXN1XGZQCitE6XBhcXVldGFnZSBkZSBsJ2FyYm9yZXNjZW5jZSBkdSBy6XBlcnRvaXJlIHNvdXJjZSBkJ29yaWdpbmUuCisuVFAgCitcZkJcLXNuXGZQCitBc3N1cmUgcXVlIGxlIHLpcGVydG9pcmUgc291cmNlIGQnb3JpZ2luZSBuZSBzZXJhIG5pIGNvcGnpIGRhbnMgbGUKK3LpcGVydG9pcmUgZW4gY291cnMsIG5pIGTpcGFxdWV06S4gU2kgdW5lIGFyYm9yZXNjZW5jZSBzb3VyY2UgZCdvcmlnaW5lIGVzdAorcHLpc2VudGUgZGFucyBsZSBy6XBlcnRvaXJlIGNvdXJhbnQsIGVsbGUgZXN0IHRvdWpvdXJzIHN1cHByaW3pZS4KKy5QUAorVG91dGVzIGxlcyBvcHRpb25zIFxmQlwtc1xmUFxmSVhcZlAgcydleGNsdWVudCBtdXR1ZWxsZW1lbnQuIFNpIHZvdXMgZW4gaW5kaXF1ZXoKK3BsdXNpZXVycywgc2V1bGUgbGEgZGVybmnocmUgc2VyYSBwcmlzZSBlbiBjb21wdGUuCisuVFAgCitcZkJcLVwtc2tpcFwtZGViaWFuaXphdGlvblxmUAorUGFzc2UgbCfpdGFwZSBkJ2FwcGxpY2F0aW9uIGR1IGZpY2hpZXIgZGUgZGlmZulyZW5jZXMgRGViaWFuIGF1eCBzb3VyY2VzCithbW9udC4KKy4KKy5TUyAiRm9ybWF0OiAyLjAiCitBdXNzaSBjb25udSBzb3VzIGxlIG5vbSBkZSCrXCB3aWcmcGVuXCC7LiBDZSBmb3JtYXQgbidlc3QgcGFzIHJlY29tbWFuZOkgYWZpbgorZCdhc3N1cmVyIHVuZSB1dGlsaXNhdGlvbiBtYXNzaXZlIGR1IGZvcm1hdCAiMy4wIChxdWlsdCkiIHF1aSBsZQorcmVtcGxhY2UuIFdpZyZwZW4gYSDpdOkgbGEgcHJlbWnocmUgc3DpY2lmaWNhdGlvbiBkJ3VuZSBub3V2ZWxsZSBn6W7pcmF0aW9uCitkZSBmb3JtYXQgZGUgcGFxdWV0IHNvdXJjZS4KKworTGUgY29tcG9ydGVtZW50IGRlIGNlIGZvcm1hdCBlc3QgbGUgbeptZSBxdWUgcG91ciBsZSBmb3JtYXQgIjMuMCAocXVpbHQpIgorc2F1ZiBxdSdpbCBuJ3V0aWxpc2UgcGFzIGRlIGxpc3RlIGV4cGxpY2l0ZSBkZSBjb3JyZWN0aWZzLiBUb3VzIGxlcyBmaWNoaWVycworZGFucyBcZkJkZWJpYW4vcGF0Y2hlcy9cZlAgY29ycmVzcG9uZGFudCDgIGwnZXhwcmVzc2lvbiByYXRpb25uZWxsZSBQZXJsCitcZkJbXGV3XC1dK1xmUCBkb2l2ZW50IOp0cmUgZGVzIGNvcnJlY3RpZnMgdmFsaWRlc1wgOiBpbHMgc29udCBhcHBsaXF16XMgYXUKK21vbWVudCBkZSBsJ2V4dHJhY3Rpb24uCisKK0xvcnMgZGUgbGEgY29uc3RydWN0aW9uIGQndW4gbm91dmVhdSBwYXF1ZXQgc291cmNlLCB0b3V0ZSBtb2RpZmljYXRpb24KK2FwcG9ydOllIOAgbGEgc291cmNlIGFtb250IGVzdCBlbnJlZ2lzdHLpIGRhbnMgdW4gY29ycmVjdGlmIG5vbW3pCitcZkJ6el9kZWJpYW5cLWRpZmZcLWF1dG9cZlAuCisuCisuU1MgIkZvcm1hdDogMy4wIChuYXRpdmUpIgorQ2UgZm9ybWF0IGVzdCB1bmUgZXh0ZW5zaW9uIGR1IGZvcm1hdCBkZSBwYXF1ZXQgbmF0aWYgdGVsIHF1ZSBk6WZpbmkgZGFucyBsZQorZm9ybWF0IDEuMC4gSWwgZ+hyZSB0b3V0ZXMgbGVzIG3pdGhvZGVzIGRlIGNvbXByZXNzaW9uIGV0IGlnbm9yZSBwYXIgZOlmYXV0Cit0b3V0IGZpY2hpZXIgZXQgculwZXJ0b2lyZSBWQ1MgYWluc2kgcXVlIGRlIG5vbWJyZXV4IGZpY2hpZXJzIHRlbXBvcmFpcmVzCisodm9pciBsYSB2YWxldXIgcGFyIGTpZmF1dCBhc3NvY2npIOAgbCdvcHRpb24gXGZCXC1JXGZQIGRhbnMgbGEgc29ydGllIGRlCitcZkJcLVwtaGVscFxmUCkuCisuCisuU1MgIkZvcm1hdDogMy4wIChxdWlsdCkiCitVbiBwYXF1ZXQgc291cmNlIGRhbnMgY2UgZm9ybWF0IGNvbnRpZW50IGF1IG1vaW5zIHVuZSBhcmNoaXZlIHRhciBkJ29yaWdpbmUKKyhcZkIub3JpZy50YXIuXGZQXGZJZXh0XGZQIG/5IFxmSWV4dFxmUCBwZXV0IOp0cmUgXGZCZ3pcZlAsIFxmQmJ6MlxmUCBcZkJsem1hXGZQIGV0IFxmQnh6XGZQKSBldAordW5lIGFyY2hpdmUgdGFyIGRlYmlhbiAoXGZCLmRlYmlhbi50YXIuXGZQXGZJZXh0XGZQKS4gSWwgcGV1dCDpZ2FsZW1lbnQgY29udGVuaXIKK2QnYXV0cmVzIGFyY2hpdmVzIHRhciBkJ29yaWdpbmUKKyhcZkIub3JpZ1wtXGZQXGZJY29tcG9zYW50XGZQXGZCLnRhci5cZlBcZklleHRcZlApLiBcZkljb21wb3NhbnRcZlAgbmUgcGV1dCDqdHJlIGNvbnN0aXR16QorcXVlIGRlIGNhcmFjdOhyZXMgYWxwaGFudW3pcmlxdWVzIGV0IGRlIHRpcmV0cyAoq1wgXC1cILspLgorLlBQCitcZkJFeHRyYWN0aW5nXGZQCisuUFAKK0wnYXJjaGl2ZSBwcmluY2lwYWxlIHRhciBkJ29yaWdpbmUgZXN0IGV4dHJhaXRlIHRvdXQgZCdhYm9yZCwgcHVpcyB0b3V0ZXMKK2xlcyBhdXRyZXMgYXJjaGl2ZXMgdGFyIGQnb3JpZ2luZSBzb250IGV4dHJhaXRlcyBkYW5zIGRlcyBzb3VzXC1y6XBlcnRvaXJlcworZG9udCBsZSBub20gZXN0IGZvcm3pIOAgcGFydGlyIGRlIGxhIHBhcnRpZSBcZkljb21wb3NhbnRcZlAgZGUgbGV1cgorbm9tLiBMJ2FyY2hpdmUgdGFyIERlYmlhbiBlc3QgZXh0cmFpdGUgcGFyIGRlc3N1cyBsZSBy6XBlcnRvaXJlIHNvdXJjZSwKK2FwcuhzIGxhIHN1cHByZXNzaW9uIGRlIHRvdXQgculwZXJ0b2lyZSBcZkJkZWJpYW5cZlAgZXhpc3RhbnQuIE5vdGV6IHF1ZQorbCdhcmNoaXZlIHRhciBEZWJpYW4gZG9pdCBjb250ZW5pciB1biBzb3VzXC1y6XBlcnRvaXJlIFxmQmRlYmlhblxmUCwgbWFpcyBpbAorcGV1dCDpZ2FsZW1lbnQgY29udGVuaXIgZGVzIGZpY2hpZXJzIGJpbmFpcmVzIGVuIGRlaG9ycyBkZSBjZSBy6XBlcnRvaXJlCisodm9pciBsJ29wdGlvbiBcZkJcLVwtaW5jbHVkZVwtYmluYXJpZXNcZlApLgorLlBQCitUb3V0ZXMgbGVzIG1vZGlmaWNhdGlvbnMgZmlndXJhbnQgZGFucyBcZkJkZWJpYW4vcGF0Y2hlcy9kZWJpYW4uc2VyaWVzXGZQIG91CitcZkJkZWJpYW4vcGF0Y2hlcy9zZXJpZXNcZlAgc29udCBhbG9ycyBhcHBsaXF16WVzLiBTaSBsJ2FuY2llbiBmaWNoaWVyIGVzdAordXRpbGlz6SBldCBxdSdpbCBuJ3kgYSBwYXMgZGUgcGx1cyBy6WNlbnQgKG91IHF1ZSBjJ2VzdCB1biBsaWVuIHN5bWJvbGlxdWUpLAorYWxvcnMgY2VsdWlcLWNpIGVzdCByZW1wbGFj6SBwYXIgdW4gbGllbiBzeW1ib2xpcXVlIHZlcnMgbCdhbmNpZW4uIENldHRlCitkaXNwb3NpdGlvbiB2aXNlIOAgc2ltcGxpZmllciBsJ3V0aWxpc2F0aW9uIGRlIKtcIHF1aWx0XCC7IHBvdXIgZ+lyZXIKK2wnZW5zZW1ibGUgZGVzIHBhdGNoZXMuIE5vdGV6IHRvdXRlZm9pcyBxdWUgc2kgXGZCZHBrZ1wtc291cmNlXGZQIGFuYWx5c2UKK2NvcnJlY3RlbWVudCB1bmUgc+lyaWUgZGUgZmljaGllcnMgYXZlYyBsZXMgb3B0aW9ucyB1dGlsaXPpZXMgcG91cgorbCdhcHBsaWNhdGlvbiBkdSBjb3JyZWN0aWYgKHN0b2Nr6WVzIHN1ciBjaGFxdWUgbGlnbmUgYXBy6HMgbGUgbm9tIGR1IHBhdGNoCitldCBkJ3VuIG91IHBsdXNpZXVycyBlc3BhY2VzKSwgaWwgbidpZ25vcmUgcGFzIGNlc29wdGlvbnMgZXQgcydhdHRlbmRyYQordG91am91cnMgcXVlIGxlcyBjb3JyZWN0aWZzIHB1aXNzZW50IOp0cmUgYXBwbGlxdelzIGF2ZWMgbCdvcHRpb24gXGZCXC1wMVxmUCBkZQorXGZCcGF0Y2hcZlAuIElsIHZhIGRvbmMg6W1ldHRyZSB1biBhdmVydGlzc2VtZW50IGxvcnNxdSdpbCByZW5jb250cmUgY2VzCitvcHRpb25zLCBldCBsYSBjb25zdHJ1Y3Rpb24gZXN0IHN1c2NlcHRpYmxlIGQn6WNob3Vlci4KKy5QUAorU2ltaWxhaXJlIGF1IGNvbXBvcnRlbWVudCBwYXIgZOlmYXV0IGRlIKtcIHF1aWx0XCC7LCBsZXMgbW9kaWZpY2F0aW9ucyBwZXV2ZW50CithdXNzaSBzdXBwcmltZXIgZGVzIGZpY2hpZXJzLgorLlBQCitMZSBmaWNoaWVyIFxmQi5wYy9hcHBsaWVkXC1wYXRjaGVzXGZQIGVzdCBjcunpIHNpIGNlcnRhaW5zIGNvcnJlY3RpZnMgb250IOl06QorYXBwbGlxdelzIGF1IGNvdXJzIGRlIGwnZXh0cmFjdGlvbi4KKy5QUAorXGZCQ29uc3RydWN0aW9uXGZQCisuUFAKK0FsbCBvcmlnaW5hbCB0YXJiYWxscyBmb3VuZCBpbiB0aGUgY3VycmVudCBkaXJlY3RvcnkgYXJlIGV4dHJhY3RlZCBpbiBhCit0ZW1wb3JhcnkgZGlyZWN0b3J5IGJ5IGZvbGxvd2luZyB0aGUgc2FtZSBsb2dpYyBhcyBmb3IgdGhlIHVucGFjaywgdGhlCitkZWJpYW4gZGlyZWN0b3J5IGlzIGNvcGllZCBvdmVyIGluIHRoZSB0ZW1wb3JhcnkgZGlyZWN0b3J5LCBhbmQgYWxsIHBhdGNoZXMKK2V4Y2VwdCB0aGUgYXV0b21hdGljIHBhdGNoIChcZkJkZWJpYW5cLWNoYW5nZXNcLVxmUFxmSXZlcnNpb25cZlAgb3IKK1xmQmRlYmlhblwtY2hhbmdlc1xmUCwgZGVwZW5kaW5nIG9uIFxmQlwtXC1zaW5nbGVcLWRlYmlhblwtcGF0Y2hcZlApIGFyZSBhcHBsaWVkLiBUaGUKK3RlbXBvcmFyeSBkaXJlY3RvcnkgaXMgY29tcGFyZWQgdG8gdGhlIHNvdXJjZSBwYWNrYWdlIGRpcmVjdG9yeS4gV2hlbiB0aGUKK2RpZmYgaXMgbm9uXC1lbXB0eSwgdGhlIGJ1aWxkIGZhaWxzIHVubGVzcyBcZkJcLVwtc2luZ2xlXC1kZWJpYW5cLXBhdGNoXGZQIG9yCitcZkJcLVwtYXV0b1wtY29tbWl0XGZQIGhhcyBiZWVuIHVzZWQsIGluIHdoaWNoIGNhc2UgdGhlIGRpZmYgaXMgc3RvcmVkIGluIHRoZQorYXV0b21hdGljIHBhdGNoLiAgSWYgdGhlIGF1dG9tYXRpYyBwYXRjaCBpcyBjcmVhdGVkL2RlbGV0ZWQsIGl0J3MKK2FkZGVkL3JlbW92ZWQgZnJvbSB0aGUgc2VyaWVzIGZpbGUgYW5kIGZyb20gdGhlIHF1aWx0IG1ldGFkYXRhLgorCitUb3V0IGNoYW5nZW1lbnQgZGFucyB1biBmaWNoaWVyIGJpbmFpcmUgbmUgcGV1dCDqdHJlIGluZGlxdekgZGFucyBsZSBkaWZmIGV0Cit2YSBk6WJvdWNoZXIgc3VyIHVuIOljaGVjIOAgbW9pbnMgcXVlIGxlIG1haW50ZW5ldXIgZOljaWRlIGTpbGli6XLpbWVudAorZCdpbmNsdXJlIGNldHRlIG1vZGlmaWNhdGlvbiBiaW5haXJlIGRhbnMgbCdhcmNoaXZlIHRhciBEZWJpYW4gKGVuIGxlCitsaXN0YW50IGRhbnMgXGZCZGViaWFuL3NvdXJjZS9pbmNsdWRlXC1iaW5hcmllc1xmUCkuIExhIGNvbnN0cnVjdGlvbiBwb3VycmEKK+lnYWxlbWVudCDpY2hvdWVyIHNpIGRlcyBmaWNoaWVycyBiaW5haXJlcyBzb250IHRyb3V26XMgZGFucyBsZQorc291c1wtculwZXJ0b2lyZSBkZWJpYW4gc2FucyDqdHJlIGluZGlxdekgZGFucyBsYSBsaXN0ZSBibGFuY2hlIGRlCitcZkJkZWJpYW4vc291cmNlL2luY2x1ZGVcLWJpbmFyaWVzXGZQLgorCitMZSBy6XBlcnRvaXJlIGRlYmlhbiBtaXMg4CBqb3VyIGV0IGxhIGxpc3RlIGRlcyBiaW5haXJlcyBtb2RpZmnpcyBzb250CitlbnN1aXRlIHV0aWxpc+lzIHBvdXIgcmVjcullciBsJ2FyY2hpdmUgdGFyIGRlYmlhbi4KKworTGUgZGlmZiBn6W7pcukgYXV0b21hdGlxdWVtZW50IG4naW5jbHV0IHBhcyBsZXMgY2hhbmdlbWVudHMgc3DpY2lmaXF1ZXMgc3VyCitsZXMgZmljaGllcnMgVkNTIGFpbnNpIHN1ciBxdWUgZGUgbm9tYnJldXggZmljaGllcnMgdGVtcG9yYWlyZXMgKHBvdXIgbGEKK3ZhbGV1ciBwYXIgZOlmYXV0IGFzc29jaellIOAgbCdvcHRpb24gXGZCXC1pXGZQLCB2b2lyIGxhIHNvcnRpZSBkZQorXGZCXC1cLWhlbHBcZlApLiBFbiBwYXJ0aWN1bGllciwgbGUgculwZXJ0b2lyZSBcZkIucGNcZlAgdXRpbGlz6SBwYXIgq1wgcXVpbHRcILsgZXN0CitpZ25vcukgbG9ycyBkZSBsYSBn6W7pcmF0aW9uIGF1dG9tYXRpcXVlIGR1IHBhdGNoLgorCitOb3RlOiBcZkJkcGtnXC1zb3VyY2VcZlAgXGZCXC1cLWJlZm9yZVwtYnVpbGRcZlAgKGFuZCBcZkJcLWJcZlApIHdpbGwgZW5zdXJlIHRoYXQgYWxsCitwYXRjaGVzIGxpc3RlZCBpbiB0aGUgc2VyaWVzIGZpbGUgYXJlIGFwcGxpZWQgc28gdGhhdCBhIHBhY2thZ2UgYnVpbGQgYWx3YXlzCitoYXMgYWxsIHBhdGNoZXMgYXBwbGllZC4gSXQgZG9lcyB0aGlzIGJ5IGZpbmRpbmcgdW5hcHBsaWVkIHBhdGNoZXMgKHRoZXkgYXJlCitsaXN0ZWQgaW4gdGhlIFxmQnNlcmllc1xmUCBmaWxlIGJ1dCBub3QgaW4gXGZCLnBjL2FwcGxpZWRcLXBhdGNoZXNcZlApLCBhbmQgaWYgdGhlCitmaXJzdCBwYXRjaCBpbiB0aGF0IHNldCBjYW4gYmUgYXBwbGllZCB3aXRob3V0IGVycm9ycywgaXQgd2lsbCBhcHBseSB0aGVtCithbGwuIFRoZSBvcHRpb24gXGZCXC1cLW5vXC1wcmVwYXJhdGlvblxmUCBjYW4gYmUgdXNlZCB0byBkaXNhYmxlIHRoaXMgYmVoYXZpb3IuCisKKy5QUAorXGZCUmVjb3JkaW5nIGNoYW5nZXNcZlAKKy5UUCAKK1xmQlwtXC1jb21taXRcZlAgW1xmSWRpcmVjdG9yeVxmUF0gW1xmSXBhdGNoXC1uYW1lXGZQXSBbXGZJcGF0Y2hcLWZpbGVcZlBdCitHZW5lcmF0ZXMgYSBwYXRjaCBjb3JyZXNwb25kaW5nIHRvIHRoZSBsb2NhbCBjaGFuZ2VzIHRoYXQgYXJlIG5vdCBtYW5hZ2VkIGJ5Cit0aGUgcXVpbHQgcGF0Y2ggc3lzdGVtIGFuZCBpbnRlZ3JhdGVzIGl0IGluIHRoZSBwYXRjaCBzeXN0ZW0gdW5kZXIgdGhlIG5hbWUKK1xmSXBhdGNoXC1uYW1lXGZQLiBJZiB0aGUgbmFtZSBpcyBtaXNzaW5nLCBpdCB3aWxsIGJlIGFza2VkIGludGVyYWN0aXZlbHkuIElmCitcZklwYXRjaFwtZmlsZVxmUCBpcyBnaXZlbiwgaXQgaXMgdXNlZCBhcyB0aGUgcGF0Y2ggY29ycmVzcG9uZGluZyB0byB0aGUgbG9jYWwKK2NoYW5nZXMgdG8gaW50ZWdyYXRlLiBUaGlzIGlzIG1haW5seSB1c2VmdWwgYWZ0ZXIgYSBidWlsZCBmYWlsdXJlIHRoYXQKK3ByZVwtZ2VuZXJhdGVkIHRoaXMgZmlsZS4gT25jZSBpbnRlZ3JhdGVkLCBhbiBlZGl0b3IgaXMgbGF1bmNoZWQgc28gdGhhdCB5b3UKK2NhbiBlZGl0IHRoZSBtZXRhXC1pbmZvcm1hdGlvbiBpbiB0aGUgcGF0Y2ggaGVhZGVyLgorCisuUFAKK1xmQk9wdGlvbnMgZGUgY29uc3RydWN0aW9uXGZQCisuVFAgCitcZkJcLVwtYWxsb3dcLXZlcnNpb25cLW9mXC1xdWlsdFwtZGI9XGZQXGZJdmVyc2lvblxmUAorQXV0b3Jpc2UgXGZCZHBrZ1wtc291cmNlXGZQIOAgY29uc3RydWlyZSBsZSBmaWNoaWVyIHNpIGxhIHZlcnNpb24gZGVzCitt6XRhXC1kb25u6WVzIGRlIHF1aWx0IGVzdCBjZWxsZSBpbmRpcXXpZSwgbeptZSBzaSBcZkJkcGtnXC1zb3VyY2VcZlAgbidlbiBuJ2EKK3BhcyBjb25uYWlzc2FuY2UuIEVuIGZhaXQsIGNlbGEgaW5kaXF1ZSBxdWUgbGEgdmVyc2lvbiBpbmRpcXXpZSBkZXMKK23pdGFcLWRvbm7pZXMgZGUgcXVpbHQgZXN0IGNvbXBhdGlibGUgYXZlYyBsYSB2ZXJzaW9uIDIgcXVlIFxmQmRwa2dcLXNvdXJjZVxmUAorZ+hyZS4gTGEgdmVyc2lvbiBkZXMgbel0YVwtZG9ubullcyBkZSBxdWlsdCBlc3QgY29uc2VydullIGRhbnMKK1wmXGZCLnBjLy52ZXJzaW9uXGZQLgorLlRQIAorXGZCXC1cLWluY2x1ZGVcLXJlbW92YWxcZlAKK05lIHBhcyBpZ25vcmVyIGxlcyBmaWNoaWVycyBzdXBwcmlt6XMgZXQgbGVzIGluY2x1cmUgZGFucyBsZSBmaWNoaWVyIGRlCittb2RpZmljYXRpb24gZ+lu6XLpIGF1dG9tYXRpcXVlbWVudC4KKy5UUCAKK1xmQlwtXC1pbmNsdWRlXC10aW1lc3RhbXBcZlAKK0luY2x1cmUgbGEgZGF0ZSBkYW5zIGxlIHBhdGNoIGfpbuly6SBhdXRvbWF0aXF1ZW1lbnQuCisuVFAgCitcZkJcLVwtaW5jbHVkZVwtYmluYXJpZXNcZlAKK0Fqb3V0ZXIgdG91cyBsZXMgYmluYWlyZXMgbW9kaWZp6XMgZGFucyBsJ2FyY2hpdmUgdGFyIGRlYmlhbi4gTGVzIGFqb3V0ZXIKK2F1c3NpIOAgXGZCZGViaWFuL3NvdXJjZS9pbmNsdWRlXC1iaW5hcmllc1xmUFwgOiBlbGxlcyBzZXJvbnQgYWpvdXTpZXMgcGFyIGTpZmF1dAorZGFucyBsZXMgY29uc3RydWN0aW9ucyBjb3JyZXNwb25kYW50ZXMgYXVzc2kgY2V0dGUgb3B0aW9uIG4nZXN0IGRvbmMgcGx1cworbuljZXNzYWlyZS4KKy5UUCAKK1xmQlwtXC1ub1wtcHJlcGFyYXRpb25cZlAKK05lIHBhcyBlc3NheWVyIGRlIHBy6XBhcmVyIGwnYXJicmUgZGUgbGEgY29uc3RydWN0aW9uIGVuIGFwcGxpcXVhbnQgbGVzCitjb3JyZWN0aWZzIHF1aSBuZSBsdWkgc29udCBhcHBhcmVtbWVudCBwYXMgYXBwbGlxdelzLgorLlRQIAorXGZCXC1cLXNpbmdsZVwtZGViaWFuXC1wYXRjaFxmUAorVXNlIFxmQmRlYmlhbi9wYXRjaGVzL2RlYmlhblwtY2hhbmdlc1xmUCBpbnN0ZWFkIG9mCitcZkJkZWJpYW4vcGF0Y2hlcy9kZWJpYW5cLWNoYW5nZXNcLVxmUFxmSXZlcnNpb25cZlAgZm9yIHRoZSBuYW1lIG9mIHRoZSBhdXRvbWF0aWMKK3BhdGNoIGdlbmVyYXRlZCBkdXJpbmcgYnVpbGQuIFRoaXMgb3B0aW9uIGlzIHBhcnRpY3VsYXJseSB1c2VmdWwgd2hlbiB0aGUKK3BhY2thZ2UgaXMgbWFpbnRhaW5lZCBpbiBhIFZDUyBhbmQgYSBwYXRjaCBzZXQgY2FuJ3QgcmVsaWFibHkgYmUKK2dlbmVyYXRlZC4gSW5zdGVhZCB0aGUgY3VycmVudCBkaWZmIHdpdGggdXBzdHJlYW0gc2hvdWxkIGJlIHN0b3JlZCBpbiBhCitzaW5nbGUgcGF0Y2guIFRoZSBvcHRpb24gd291bGQgYmUgcHV0IGluIFxmQmRlYmlhbi9zb3VyY2UvbG9jYWxcLW9wdGlvbnNcZlAgYW5kCit3b3VsZCBiZSBhY2NvbXBhbmllZCBieSBhIFxmQmRlYmlhbi9zb3VyY2UvbG9jYWxcLXBhdGNoXC1oZWFkZXJcZlAgZmlsZQorZXhwbGFpbmluZyBob3cgdGhlIERlYmlhbiBjaGFuZ2VzIGNhbiBiZSBiZXN0IHJldmlld2VkLCBmb3IgZXhhbXBsZSBpbiB0aGUKK1ZDUyB0aGF0IGlzIHVzZWQuCisuVFAgCitcZkJcLVwtY3JlYXRlXC1lbXB0eVwtb3JpZ1xmUAorQ3LpZSBhdXRvbWF0aXF1ZW1lbnQgdW5lIGFyY2hpdmUgdGFyIGQnb3JpZ2luZSB2aWRlIHNpIGVsbGUgZXN0IG1hbnF1YW50ZSBldAorcXUnaWwgZXhpc3RlIGRlcyBhcmNoaXZlcyB0YXIgZCdvcmlnaW5lIGFkZGl0aW9ubmVsbGVzLiBDZXR0ZSBvcHRpb24gcGV1dAor6nRyZSB1dGlsaXPpZSBsb3JzcXVlIGxlIHBhcXVldCBzb3VyY2UgZXN0IHVuZSBjb2xsZWN0aW9uIGRlIGRpZmbpcmVudGVzCitzb3VyY2VzIGFtb250IGV0IHF1J2lsIG4nZXhpc3RlIHBhcyBkZSBsb2dpY2llbCCrIHByaW5jaXBhbFwguy4KKy5UUCAKK1xmQlwtXC11bmFwcGx5XC1wYXRjaGVzXGZQCitVbmFwcGx5IHRoZSBwYXRjaGVzIGluIHRoZSBcZkJcLVwtYWZ0ZXJcLWJ1aWxkXGZQIGhvb2suIFlvdSB1c3VhbGx5IGRvbid0IG5lZWQKK3RoaXMgb3B0aW9uIGFzIGRwa2dcLXNvdXJjZSB3aWxsIGF1dG9tYXRpY2FsbHkgdW5hcHBseSB0aGUgcGF0Y2hlcyBpZiBpdCBkaWQKK2FwcGx5IHRoZW0gZHVyaW5nIFxmQlwtXC1iZWZvcmVcLWJ1aWxkXGZQLiBUaGlzIG9wdGlvbiBpcyBvbmx5IGFsbG93ZWQgaW4KK1xmQmRlYmlhbi9zb3VyY2UvbG9jYWxcLW9wdGlvbnNcZlAgc28gdGhhdCBhbGwgZ2VuZXJhdGVkIHNvdXJjZSBwYWNrYWdlcyBoYXZlCit0aGUgc2FtZSBiZWhhdmlvciBieSBkZWZhdWx0LgorLlRQIAorXGZCXC1cLWFib3J0XC1vblwtdXBzdHJlYW1cLWNoYW5nZXNcZlAKK0NlIHByb2Nlc3N1cyDpY2hvdWVyYSBzaSB1biBjb3JyZWN0aWYgYXV0b21hdGlxdWUgYSDpdOkgY3Lp6S4gRWxsZSBwZXV0CitzZXJ2aXIg4CB26XJpZmllciBxdWUgdG91dGVzIGxlcyBtb2RpZmljYXRpb25zIG9udCDpdOkgZW5yZWdpc3Ry6WVzCitjb3JyZWN0ZW1lbnQgZGFucyBkZXMgY29ycmVjdGlmcyBxdWlsdCBkaXN0aW5jdHMgYXZhbnQgbGEgY29uc3RydWN0aW9uIGR1CitwYXF1ZXQgc291cmNlLiBFbGxlIG4nZXN0IHBhcyBhdXRvcmlz6WUgZGFucyBcZkJkZWJpYW4vc291cmNlL29wdGlvbnNcZlAgbWFpcworcGV1dCBwcmVuZHJlIHBsYWNlIGRhbnMgXGZCZGViaWFuL3NvdXJjZS9sb2NhbFwtb3B0aW9uc1xmUC4KKy5UUCAKK1xmQlwtXC1hdXRvXC1jb21taXRcZlAKK1RoZSBwcm9jZXNzIGRvZXNuJ3QgZmFpbCBpZiBhbiBhdXRvbWF0aWMgcGF0Y2ggaGFzIGJlZW4gZ2VuZXJhdGVkLCBpbnN0ZWFkCitpdCdzIGltbWVkaWF0ZWx5IHJlY29yZGVkIGluIHRoZSBxdWlsdCBzZXJpZXMuCisKKy5QUAorXGZCT3B0aW9ucyBkJ2V4dHJhY3Rpb25cZlAKKy5UUCAKK1xmQlwtXC1za2lwXC1kZWJpYW5pemF0aW9uXGZQCitQYXNzZSBsJ+l0YXBlIGQnZXh0cmFjdGlvbiBkZSBsJ2FyY2hpdmUgdGFyIGRlYmlhbiBwYXIgZGVzc3VzIGxlcyBzb3VyY2VzCithbW9udAorLlRQIAorXGZCXC1cLXNraXBcLXBhdGNoZXNcZlAKK05lIHBhcyBhcHBsaXF1ZXIgZGVzIGNvcnJlY3RpZnMg4CBsYSBmaW4gZGUgbCdleHRyYWN0aW9uLgorLgorLlNTICJGb3JtYXQ6IDMuMCAoY3VzdG9tKSIKK1RoaXMgZm9ybWF0IGlzIHNwZWNpYWwuIEl0IGRvZXNuJ3QgcmVwcmVzZW50IGEgcmVhbCBzb3VyY2UgcGFja2FnZSBmb3JtYXQKK2J1dCBjYW4gYmUgdXNlZCB0byBjcmVhdGUgc291cmNlIHBhY2thZ2VzIHdpdGggYXJiaXRyYXJ5IGZpbGVzLgorLlBQCitcZkJPcHRpb25zIGRlIGNvbnN0cnVjdGlvblxmUAorLlBQCitUb3VzIGxlcyBhcmd1bWVudHMgcXVpIG5lIHNvbnQgcGFzIGRlcyBvcHRpb25zIHNvbnQgcHJpcyBwb3VyIGRlcyBmaWNoaWVycyDgCitpbnTpZ3JlciBkYW5zIGxlIHBhcXVldCBzb3VyY2UgZ+lu6XLpLiBJbHMgZG9pdmVudCBleGlzdGVyIGV0IOp0cmUgZGUKK3By6WbpcmVuY2UgZGFucyBsZSBy6XBlcnRvaXJlIGNvdXJhbnQuIEF1IG1vaW5zIHVuIGZpY2hpZXIgZG9pdCDqdHJlIGRvbm7pLgorLlRQIAorXGZCXC1cLXRhcmdldFwtZm9ybWF0PVxmUFxmSXZhbGV1clxmUAorXGZCUmVxdWlyZWRcZlAuIETpZmluaXQgbGUgZm9ybWF0IHLpZWwgZHUgcGFxdWV0IHNvdXJjZSBn6W7pcukuIExlIGZpY2hpZXIKK2fpbuly6SAuZHNjIGNvbnRpZW5kcmEgY2V0dGUgdmFsZXVyIGRhbnMgc29uIGNoYW1wIFxmSWZvcm1hdFxmUCBldCBub24gIjMuMAorKGN1c3RvbSkiLgorLgorLlNTICJGb3JtYXQ6IDMuMCAoZ2l0KSIKK0NlIGZvcm1hdCBlc3QgZXhw6XJpbWVudGFsLgorLlBQCitVbiBwYXF1ZXQgc291cmNlIHF1aSB1dGlsaXNlIGNlIGZvcm1hdCBlc3QgY29uc3RpdHXpIGQndW4gZW5zZW1ibGUgZCd1biBzZXVsCitk6XD0dCBnaXQgXGZCLmdpdFxmUCBxdWkgY29udGllbnQgbGVzIHNvdXJjZXMgZHUgcGFxdWV0LiAgSWwgcGV1dCDpZ2FsZW1lbnQKK2V4aXN0ZXIgdW4gZmljaGllciBcZkIuZ2l0c2hhbGxvd1xmUCBxdWkgZG9ubmUgbGVzIHLpdmlzaW9ucyBkJ3VuIGNsb25lIGdpdAorq1wgc2hhbGxvd1wguy4KKy5QUAorXGZCRXh0cmFjdGluZ1xmUAorLlBQCitDZXQgZW5zZW1ibGUgZXN0IGNsb27pIHNvdXMgZm9ybWUgZCd1biBk6XD0dCBnaXQgZGFucyBsZSBy6XBlcnRvaXJlCitjaWJsZS4gUydpbCBleGlzdGUgdW4gZmljaGllciAuZ2l0c2hhbGxvdywgaWwgZXN0IGluc3RhbGzpIGVuIHRhbnQgcXVlCiurXCAuZ2l0L3NoYWxsb3dcILsgZGFucyBsZSBk6XD0dCBnaXQgY2xvbukuCisuUFAKK1ZldWlsbGV6IG5vdGVyIHF1ZSwgcGFyIGTpZmF1dCwgbGUgbm91dmVhdSBk6XD0dCBhdXJhIGxhIG3qbWUgYnJhbmNoZQorculjdXDpcullIHF1ZSBjZWxsZSBxdWkg6XRhaXQgculjdXDpcullIGRhbnMgbGVzIHNvdXJjZXMgZCdvcmlnaW5lIChzb3V2ZW50CiurXCBtYXN0ZXJcILsgbWFpcyBjZWxhIHBldXQg6nRyZSB0b3V0IOAgZmFpdCBhdXRyZSBjaG9zZSkuIFRvdXRlcyBsZXMgYXV0cmVzCiticmFuY2hlcyBzZXJvbnQgZGlzcG9uaWJsZXMgc291cyCrXCByZW1vdGVzL29yaWdpblwguy4KKy5QUAorXGZCQ29uc3RydWN0aW9uXGZQCisuUFAKK0F2YW50IGQnYWxsZXIgcGx1cyBsb2luLCBxdWVscXVlcyB26XJpZmljYXRpb25zIHNvbnQgZWZmZWN0dellcyBhZmluIGRlCitzJ2Fzc3VyZXIgcXUnaWwgbidleGlzdGUgYXVjdW4gY2hhbmdlbWVudCBub25cLXNvdW1pcyBldCDgIG5lIHBhcyBpZ25vcmVyLgorLlBQCitcZkJnaXRcLWJ1bmRsZVxmUCgxKSBwZXJtZXQgZGUgY3LpZXIgdW4gZW5zZW1ibGUg4CBwYXJ0aXIgZHUgZOlw9HQgZ2l0LiBQYXIKK2TpZmF1dCwgdG91dGVzIGxlcyBicmFuY2hlcyBldCDpdGlxdWV0dGVzIGR1IGTpcPR0IHNvbnQgaW5jbHVzIGRhbnMgY2V0CitlbnNlbWJsZS4KKy5QUAorXGZCT3B0aW9ucyBkZSBjb25zdHJ1Y3Rpb25cZlAKKy5UUCAKK1xmQlwtXC1naXRcLXJlZj1cZlBcZkly6WZcZlAKK1Blcm1ldCBkJ2luZGlxdWVyIHVuZSBy6WbpcmVuY2UgZ2l0IOAgaW5jbHVyZSBkYW5zIGwnZW5zZW1ibGUKK2dpdC4gTCd1dGlsaXNhdGlvbiBkZSBjZXR0ZSBvcHRpb24gZOlzYWN0aXZlIGxlIGNvbXBvcnRlbWVudCBwYXIgZOlmYXV0IHF1aQorZXN0IGQnaW5jbHVyZSB0b3V0ZXMgbGVzIGJyYW5jaGVzIGV0IOl0aXF1ZXR0ZXMuIENldHRlIG9wdGlvbiBwZXV0XC3qdHJlCit1dGlsaXPpZSBwbHVzaWV1cnMgZm9pcy4gTGUgcGFyYW3odHJlIFxmSXLpZlxmUCBwZXV0IOp0cmUgbGUgbm9tIGQndW5lIGJyYW5jaGUKK291IHVuZSDpdGlxdWV0dGUg4CBpbmNsdXJlLiBJbCBwZXV0IOlnYWxlbWVudCDqdHJlIHRvdXQgcGFyYW3odHJlIHF1ZSBsJ29uCitwZXV0IHBhc3NlciDgIFxmQmdpdFwtcmV2XC1saXN0XGZQKDEpLiBQYXIgZXhlbXBsZSwgcG91ciBuJ2luY2x1cmUgcXVlIGxhCiurXCBtYXN0ZXJcILssIG9uIHBldXQgdXRpbGlzZXIgXC1cLWdpdFwtcmVmPW1hc3Rlci4gUG91ciBpbmNsdXJlIHRvdXRlcyBsZXMKK+l0aXF1ZXR0ZXMgZXQgdG91dGVzIGxlcyBicmFuY2hlcywgc2F1ZiBsYSBicmFuY2hlIHByaXbpZSwgb24gcGV1dCB1dGlsaXNlcgorXC1naXRcLXJlZj1cLVwtYWxsIFwtXC0gZ2l0XC1yZWY9XnByaXZhdGUuCisuVFAgCitcZkJcLVwtZ2l0XC1kZXB0aD1cZlBcZklub21icmVcZlAKK0Ny6WUgdW4gY2xvbmUgq1wgc2hhbGxvd1wguyBkb250IGwnaGlzdG9yaXF1ZSBlc3QgdHJvbnF16SBhdSBub21icmUgaW5kaXF16SBkZQorcul2aXNpb25zLgorLlNTICJGb3JtYXQ6IDMuMCAoYnpyKSIKK0NlIGZvcm1hdCBlc3QgZXhw6XJpbWVudGFsLiBJbCBjcullIHVuZSBhcmNoaXZlIHRhciBjb250ZW5hbnQgbGUgZOlw9HQgYnpyCitjb3JyZXNwb25kYW50LgorLlBQCitcZkJFeHRyYWN0aW5nXGZQCisuUFAKK0wnYXJjaGl2ZSB0YXIgZXN0IGTpY29tcHJlc3PpZSBwdWlzIGJ6ciBlc3QgdXRpbGlz6SBhZmluIGRlIHLpY3Vw6XJlciBsYQorYnJhbmNoZSBjb3VyYW50ZS4KKy5QUAorXGZCQ29uc3RydWN0aW9uXGZQCisuUFAKK0F2YW50IGQnYWxsZXIgcGx1cyBsb2luLCBxdWVscXVlcyB26XJpZmljYXRpb25zIHNvbnQgZWZmZWN0dellcyBhZmluIGRlCitzJ2Fzc3VyZXIgcXUnaWwgbidleGlzdGUgYXVjdW4gY2hhbmdlbWVudCBub25cLXNvdW1pcyBldCDgIG5lIHBhcyBpZ25vcmVyLgorLlBQCitFbnN1aXRlLCBsYSBwYXJ0aWUgc3DpY2lmaXF1ZSBkdSBy6XBlcnRvaXJlIHNvdXJjZSBkdSBnZXN0aW9ubmFpcmUgZGUKK3ZlcnNpb25zIGVzdCBjb3Bp6WUgZGFucyB1biBy6XBlcnRvaXJlIHRlbXBvcmFpcmUuIEF2YW50IHF1ZSBjZSBy6XBlcnRvaXJlCit0ZW1wb3JhaXJlIG5lIHNvaXQgZW1wYXF1ZXTpIGRhbnMgdW5lIGFyY2hpdmUgdGFyLCBkaXZlcnMgbmV0dG95YWdlcyBzb250CitlZmZlY3R16WVzIHBvdXIg6WNvbm9taXNlciBkZSBsJ2VzcGFjZS4KKy5TSCAiQVZFUlRJU1NFTUVOVFMgRVQgRVJSRVVSUyIKKy5TUyAiYXVjdW4gZm9ybWF0IHNvdXJjZSBpbmRpcXXpIGRhbnMgZGViaWFuL3NvdXJjZS9mb3JtYXQiCitMZSBmaWNoaWVyIFxmQmRlYmlhbi9zb3VyY2UvZm9ybWF0XGZQIGRldnJhaXQgdG91am91cnMgZXhpc3RlciBldCBpbmRpcXVlciBsZQorZm9ybWF0IHNvdXJjZSBzb3VoYWl06S4gUG91ciBwculzZXJ2ZXIgbGEgY29tcGF0aWJpbGl06SBhdmVjIGQnYW5jaWVubmVzCit2ZXJzaW9ucywgbGUgZm9ybWF0IKtcIDEuMFwguyBlc3QgaW1wbGljaXRlIHF1YW5kIGxlIGZpY2hpZXIgbidleGlzdGUgcGFzLiBJbAorZXN0IGTpY29uc2VpbGzpIGRlIGTpcGVuZHJlIGRlIGNlIGNvbXBvcnRlbWVudCBxdWkgcG91cnJhaXQg6nRyZSBtb2RpZmnpCitkYW5zIGRlIGZ1dHVyZXMgdmVyc2lvbnMgZGUgZHBrZ1wtc291cmNlLCBxdWkg6WNob3Vlcm9udCBhbG9ycyBlbiBsJ2Fic2VuY2UKK2QndW5lIG1lbnRpb24gZXhwbGljaXRlIGRlIGZvcm1hdC4KKworQ2VsYSBlc3QgZPsgYXUgZmFpdCBxdWUgbGUgZm9ybWF0IKtcIDEuMFwguyBuJ2VzdCBwbHVzIGxlIGZvcm1hdCByZWNvbW1hbmTpLAorcXUnaWwgZXN0IGNvbnNlaWxs6SBkZSBjaG9pc2lyIHVuIGRlcyBmb3JtYXRzIGxlcyBwbHVzIHLpY2VudHMgKKtcIDMuMAorKHF1aWx0KVwguyBvdSCrXCAzLjAgKG5hdGl2ZSlcILspIG1haXMgcXVlIGRwa2dcLXNvdXJjZSBuZSBsZSBmZXJhIHBhcworYXV0b21hdGlxdWVtZW50LiBTaSB2b3VzIHNvdWhhaXRleiBjb250aW51ZXIg4CB1dGlsaXNlciBsJ2FuY2llbiBmb3JtYXQsIGlsCitlc3QgbuljZXNzYWlyZSBkJ+p0cmUgZXhwbGljaXRlIGV0IGluZGlxdWVyIKtcIDEuMFwguyBkYW5zCitcZkJkZWJpYW4vc291cmNlL2Zvcm1hdFxmUC4KKy5TUyAibGUgZmljaGllciBkZSBkaWZm6XJlbmNlcyBtb2RpZmllIGxlcyBmaWNoaWVycyBhbW9udCBzdWl2YW50cyIKK0xvcnMgZGUgbCd1dGlsaXNhdGlvbiBkdSBmb3JtYXQgc291cmNlIKtcIDEuMFwguywgaWwgZXN0IGTpY29uc2VpbGzpIGRlCittb2RpZmllciBkaXJlY3RlbWVudCBsZXMgZmljaGllcnMgYW1vbnQgY2FyIGxlcyBtb2RpZmljYXRpb25zIHJlc3RlbnQgYWxvcnMKK2NhY2jpZXMgZXQgc291dmVudCBub24gZG9jdW1lbnTpZXMgZGFucyBsZSBmaWNoaWVyIGRpZmYuZ3ouIEFVIGNvbnRyYWlyZSwgaWwKK2VzdCBjb25zZWlsbOkgZGUgY29uc2VydmVyIGxlcyBtb2RpZmljYXRpb25zIHNvdXMgZm9ybWUgZGUgY29ycmVjdGlmcyBkYW5zCitsZSBy6XBlcnRvaXJlIGRlYmlhbiBldCBkZSBsZXMgYXBwbGlxdWVyIGF1IG1vbWVudCBkZSBsYSBjb25zdHJ1Y3Rpb24uIFBvdXIKK+l2aXRlciBjZXMgb3DpcmF0aW9ucyBwbHVzIGNvbXBsZXhlcywgdm91cyBwb3V2ZXog6WdhbGVtZW50IGNob2lzaXIgbGUKK2Zvcm1hdCCrXCAzLjAgKHF1aWx0KVwguyBxdWkgcGVybWV0IGNlcyBvcOlyYXRpb25zIGRlIG1hbmnocmUgbmF0aXZlLgorLlNTICJpbXBvc3NpYmxlIGQnaWRlbnRpZmllciBsZXMgY2hhbmdlbWVudHMgZGUgXGZJZmljaGllclxmUCIKK0xlcyBtb2RpZmljYXRpb25zIGRlcyBzb3VyY2VzIGFtb250IHNvbnQgZW4gZ+lu6XJhbCBjb25zZXJ26WVzIGRhbnMgZGVzCitmaWNoaWVycyBkZSBjb3JyZWN0aWZzIG1haXMgY2VydGFpbmVzIG1vZGlmaWNhdGlvbnMgbmUgcGV1dmVudCDqdHJlCityZXBy6XNlbnTpZXMgc291cyBmb3JtZSBkZSB0ZWxzIGZpY2hpZXJzIHF1aSBuZSBwZXV2ZW50IG1vZGlmaWVyIHF1ZSBkZXMKK2ZpY2hpZXJzIHRleHRlLiBTaSB2b3VzIGVzc2F5ZXogZGUgcmVtcGxhY2VyIHVuIGZpY2hpZXIgYXZlYyB1biBvYmpldCBkJ3VuCit0eXBlIGRpZmbpcmVudCAocGFyIGV4ZW1wbGUgcmVtcGxhY2VyIHVuIGZpY2hpZXIgcGFyIHVuIGxpZW4gb3UgdW4KK3LpcGVydG9pcmUpLCBjZSBtZXNzYWdlIGQnZXJyZXVyIHMnYWZmaWNoZXJhLgorLlNTICJsZSBmaWNoaWVyIFxmSWZpY2hpZXJcZlAsIG5vdXZlbGxlbWVudCBjcunpLCBuZSBzZXJhIHBhcyByZXBy6XNlbnTpIGRhbnMgbGUgZmljaGllciBkZSBkaWZm6XJlbmNlcyIKK0xlcyBmaWNoaWVycyB2aWRlcyBuZSBwZXV2ZW50IHBhcyDqdHJlIGNy6elzIGF2ZWMgZGVzIGNvcnJlY3RpZnMuIEVuCitjb25z6XF1ZW5jZSwgbGEgbW9kaWZpY2F0aW9uIG4nZXN0IHBhcyBlbnJlZ2lzdHLpZSBkYW5zIGxlIHBhcXVldCBzb3VyY2UsIGNlCitxdWkgcHJvdm9xdWUgY2V0IGF2ZXJ0aXNzZW1lbnQuCisuU1MgImxlIG1vZGUgZXjpY3V0YWJsZSBcZklwZXJtaXNzaW9uc1xmUCBkZSBcZklmaWNoaWVyXGZQIG5lIHNlcmEgcGFzIHJlcHLpc2VudOkgZGFucyBsZSBmaWNoaWVyIGRlIGRpZmbpcmVuY2VzIgorLlNTICJsZSBtb2RlIHNw6WNpYWwgXGZJcGVybWlzc2lvbnNcZlAgZGUgXGZJZmljaGllclxmUCBuZSBzZXJhIHBhcyByZXBy6XNlbnTpIGRhbnMgbGUgZmljaGllciBkZSBkaWZm6XJlbmNlcyIKK0xlcyBmaWNoaWVycyBjb3JyZWN0aWZzIG4nZW5yZWdpc3RyZW50IHBhcyBsZXMgcGVybWlzc2lvbnMgZGUgZmljaGllcnMgZXQsCitlbiBjb25z6XF1ZW5jZSwgbGVzIHBlcm1pc3Npb25zIG1vZGlmaellcyBuZSBzb250IHBhcyBlbnJlZ2lzdHLpZXMgZGFucyBsZQorcGFxdWV0IHNvdXJjZSwgY2UgcXVpIHByb3ZvcXVlIGNldCBhdmVydGlzc2VtZW50LgorLlNIICJGT1JNQVRTIERFIEZJQ0hJRVJTIgorLlNTIGRlYmlhbi9zb3VyY2UvZm9ybWF0CitDZSBmaWNoaWVyIGNvbnRpZW50IHN1ciB1bmUgc2V1bGUgbGlnbmUgbGUgZm9ybWF0IOAgdXRpbGlzZXIgcG91ciBjb25zdHJ1aXJlCitsZSBwYXF1ZXQgc291cmNlIChsZXMgZm9ybWF0cyBhY2NlcHTpcyBzb250IGTpY3JpdHMgcGx1cyBoYXV0KS4gSWwgbmUgZG9pdAorcGFzIGNvbnRlbmlyIGQnZXNwYWNlcyBhdmFudCBvdSBhcHLocyBsJ2luZGljYXRpb24gZHUgZm9ybWF0LgorLlNTIGRlYmlhbi9zb3VyY2UvaW5jbHVkZVwtYmluYXJpZXMKK0NlIGZpY2hpZXIgY29udGllbnQgdW5lIGxpc3RlIGRlIGZpY2hpZXJzIGJpbmFpcmVzICh1biBwYXIgbGlnbmUpIHF1aQorZG9pdmVudCDqdHJlIGluY2x1cyBkYW5zIGwnYXJjaGl2ZSB0YXIgZGViaWFuLiBMZXMgZXNwYWNlcyBwbGFj6XMgYXZhbnQgb3UKK2FwcuhzIGNlcyBub21zIHNvbnQgc3VwcHJpbelzLiBMZXMgbGlnbmVzIGNvbW1lbudhbnQgcGFyIKtcICNcILsgc29udCBkZXMKK2NvbW1lbnRhaXJlcyBldCBzb250IGlnbm9y6WVzLCBhaW5zaSBxdWUgbGVzIGxpZ25lcyB2aWRlcy4KKy5TUyBkZWJpYW4vc291cmNlL29wdGlvbnMKK0NlIGZpY2hpZXIgY29udGllbnQgbGEgbGlzdGUgZGVzIG9wdGlvbnMgcXVpIHNlcm9udCBhdXRvbWF0aXF1ZW1lbnQgYWpvdXTpZXMKK2F1IGpldSBkJ29wdGlvbnMgZGUgbGlnbmUgZGUgY29tbWFuZGUgdXRpbGlz6WVzIHBhciBcZkJkcGtnXC1zb3VyY2UgXC1iXGZQIG91CitcZkJkcGtnXC1zb3VyY2UgXC1cLXByaW50XC1mb3JtYXRcZlAuIERlcyBvcHRpb25zIGNvbW1lIFxmQlwtXC1jb21wcmVzc2lvblxmUCBldAorXGZCXC1cLWNvbXByZXNzaW9uXC1sZXZlbFxmUCBjb252aWVubmVudCBiaWVuIHBvdXIgY2UgZmljaGllci4KKy5QCitDaGFxdWUgb3B0aW9uIGRvaXQg6nRyZSBwbGFj6WUgc3VyIHVuZSBsaWduZSBkaXN0aW5jdGUuIExlcyBsaWduZXMgdmlkZXMgZXQKK2xlcyBsaWduZXMgY29tbWVu52FudCBwYXIgbGUgY2FyYWN06HJlIKtcICNcILsgc29udCBpZ25vcullcy4gTGVzIGNhcmFjdOhyZXMKK2luaXRpYXV4IKtcIFwtXC1cILsgZG9pdmVudCDqdHJlIHJldGly6XMgZXQgbGVzIG9wdGlvbnMgY291cnRlcyBuZSBwZXV2ZW50IHBhcwor6nRyZSB1dGlsaXPpZXMuIERlcyBlc3BhY2VzIG9wdGlvbm5lbHMgc29udCBhdXRvcmlz6XMgYXV0b3VyIGR1IHN5bWJvbGUKK6tcID1cILssIGFpbnNpIHF1ZSBkZXMgZ3VpbGxlbWV0cyBvcHRpb25uZWxzIGF1dG91ciBkZSBsYSB2YWxldXIgZCd1bmUgb3B0aW9uCitkb25u6WUuIFZvaWNpIHVuIGV4ZW1wbGUgZCd1biB0ZWwgZmljaGllclwgOgorLlAKKyAgIyBsZXQgZHBrZ1wtc291cmNlIGNyZWF0ZSBhIGRlYmlhbi50YXIuYnoyIHdpdGggbWF4aW1hbCBjb21wcmVzc2lvbgorICBjb21wcmVzc2lvbiA9ICJiemlwMiIKKyAgY29tcHJlc3Npb25cLWxldmVsID0gOQorICAjIHVzZSBkZWJpYW4vcGF0Y2hlcy9kZWJpYW5cLWNoYW5nZXMgYXMgYXV0b21hdGljIHBhdGNoCisgIHNpbmdsZVwtZGViaWFuXC1wYXRjaAorICAjIGlnbm9yZSBjaGFuZ2VzIG9uIGNvbmZpZy57c3ViLGd1ZXNzfQorICBleHRlbmRcLWRpZmZcLWlnbm9yZSA9ICIoXnwvKShjb25maWcuc3VifGNvbmZpZy5ndWVzcykkIgorLlAKK05vdGVcIDogbGVzIG9wdGlvbnMgZGUgXGZCZm9ybWF0XGZQIG5lIHNvbnQgcGFzIGFjY2VwdOllcyBkYW5zIGNlIGZpY2hpZXIuIFZvdXMKK2RldnJpZXogdXRpbGlzZXIgXGZCZGViaWFuL3NvdXJjZS9mb3JtYXRcZlAg4CBsYSBwbGFjZS4KKy5TUyBkZWJpYW4vc291cmNlL2xvY2FsXC1vcHRpb25zCitJZGVudGlxdWUg4CBcZkJkZWJpYW4vc291cmNlL29wdGlvbnNcZlAgbWFpcyBuJ2VzdCBwYXMgZW5yZWdpc3Ry6SBkYW5zIGxlCitwYXF1ZXQgc291cmNlIGNy6ekuIENlIGZpY2hpZXIgcGV1dCDqdHJlIHV0aWxlIHBvdXIgY29uc2VydmVyIHVuZSBwculm6XJlbmNlCitwcm9wcmUgYXUgcmVzcG9uc2FibGUgb3UgYXUgZOlw9HQgZGUgZ2VzdGlvbm5haXJlIGRlIHZlcnNpb25zIG/5IGxlIHBhcXVldAorc291cmNlIGVzdCBn6XLpLgorLlNTIGRlYmlhbi9zb3VyY2UvbG9jYWxcLXBhdGNoXC1oZWFkZXIKKy5TUyBkZWJpYW4vc291cmNlL3BhdGNoXC1oZWFkZXIKK0ZyZWUgZm9ybSB0ZXh0IHRoYXQgaXMgcHV0IG9uIHRvcCBvZiB0aGUgYXV0b21hdGljIHBhdGNoIGdlbmVyYXRlZCBpbgorZm9ybWF0cyAiMi4wIiBvciAiMy4wIChxdWlsdCkiLiBcZkJsb2NhbFwtcGF0Y2hcLWhlYWRlclxmUCBpcyBub3QgaW5jbHVkZWQgaW4gdGhlCitnZW5lcmF0ZWQgc291cmNlIHBhY2thZ2Ugd2hpbGUgXGZCcGF0Y2hcLWhlYWRlclxmUCBpcy4KKy5TUyBkZWJpYW4vcGF0Y2hlcy9zZXJpZXMKK0NlIGZpY2hpZXIgY29tcG9ydGUgbGEgbGlzdGUgZGUgdG91dGVzIGxlcyBjb3JyZWN0aW9ucyBxdWkgb250IOl06QorYXBwbGlxdellcyAoZGFucyBsJ29yZHJlIGluZGlxdekpIGF1eCBzb3VyY2VzIGFtb250LiBMZXMgZXNwYWNlcyBzaXR16XMKK2F2YW50IGV0IGFwcuhzIGxlcyBub21zIHNvbnQgaWdub3Lpcy4gTGVzIGxpZ25lcyBjb21tZW7nYW50IHBhciCrXCAjXCC7IHNvbnQKK2RlcyBjb21tZW50YWlyZXMgZXQgc29udCBpZ25vcullcywgYWluc2kgcXVlIGxlcyBsaWduZXMgdmlkZXMuIExlcyBhdXRyZXMKK2xpZ25lcyBk6WJ1dGVudCBwYXIgbGUgbm9tIGR1IGZpY2hpZXIgZGUgY29ycmVjdGlvbiAocmVsYXRpZiBhdSBy6XBlcnRvaXJlCitcZkJkZWJpYW4vcGF0Y2hlcy9cZlApIHF1aSBzZSB0ZXJtaW5lIGF1IHByZW1pZXIgZXNwYWNlIG91IOAgbGEgZmluIGRlIGxhCitsaWduZS4gRGVzIG9wdGlvbnMgZmFjdWx0YXRpdmVzIGRlIHF1aWx0IHBldXZlbnQg6nRyZSBwbGFj6WVzIGp1c3F1J+AgbGEgZmluCitkZSBsYSBsaWduZSBvdSBqdXNxdSdhdSBwcmVtaWVyIGNhcmFjdOhyZSCrXCAjXCC7IHBy6WPpZOkgcGFyIHVuIG91IHBsdXNpZXVycworZXNwYWNlcyAocXVpIGluZGlxdWUgdW4gY29tbWVudGFpcmUgcXVpIHNlIHBvdXJzdWl0IGp1c3F1J+AgbGEgZmluIGRlIGxhCitsaWduZSkuCisuU0ggQk9HVUVTCitMZSBtb21lbnQgb/kgYSBsaWV1IGxlIHJlbXBsYWNlbWVudCBkJ3VuIGNoYW1wIHBhciByYXBwb3J0IOAgY2VydGFpbmVzCitk6XRlcm1pbmF0aW9ucyBkZSBjaGFtcCBhZmZpY2jpZXMgc3VyIGxhIHNvcnRpZSBzdGFuZGFyZCBlc3QgcGx1dPR0CitlbWJyb3VpbGzpLgorLlNIICJWT0lSIEFVU1NJIgorXGZCZHBrZ1wtZGViXGZQKDEpLCBcZkJkcGtnXGZQKDEpLCBcZkJkc2VsZWN0XGZQKDEpLgorLgorLlNIIEFVVEVVUlMKK0NvcHlyaWdodCBcKGNvIDE5OTVcLTE5OTYgSWFuIEphY2tzb24KKy5icgorQ29weXJpZ2h0IFwoY28gMjAwMCBXaWNoZXJ0IEFra2VybWFuCisuYnIKK0NvcHlyaWdodCBcKGNvIDIwMDhcLTIwMTEgUmFwaGFcWzplXWwgSGVydHpvZworLnNwCitDZSBwcm9ncmFtbWUgZXN0IHVuIGxvZ2ljaWVsIGxpYnJlXCA7IHZveWV6IGxhIKtcIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbmNlXCC7Cit2ZXJzaW9uIDIgb3Ugc3Vw6XJpZXVyZSBwb3VyIGxlIGNvcHlyaWdodC4gSWwgbid5IGEgUEFTIGRlIGdhcmFudGllLgorLlNIIFRSQURVQ1RJT04KK0FyaWVsIFZBUkRJIDxhcmllbC52YXJkaUBmcmVlc2JlZS5mcj4sIDIwMDIuCitQaGlsaXBwZSBCYXRhaWxsZXIsIDIwMDYuCitOaWNvbGFzIEZyYW7nb2lzLCAyMDA2LgorVmV1aWxsZXogc2lnbmFsZXIgdG91dGUgZXJyZXVyIOAgPGRlYmlhblwtbDEwblwtZnJlbmNoQGxpc3RzLmRlYmlhbi5vcmc+LgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vZnIvZHBrZy1zcGxpdC4xIGIvZHBrZy0xLjE2LjEuMS9tYW4vZnIvZHBrZy1zcGxpdC4xCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjA4ZTIwZDEKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9mci9kcGtnLXNwbGl0LjEKQEAgLTAsMCArMSwxOTUgQEAKKy5cIiBBdXRob3JzOiBJYW4gSmFja3NvbgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlwiCisuXCIgVGhpcyBmaWxlIHdhcyBnZW5lcmF0ZWQgd2l0aCBwbzRhLiBUcmFuc2xhdGUgdGhlIHNvdXJjZSBmaWxlLgorLlwiCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuVEggZHBrZ1wtc3BsaXQgMSAwN1wtMDRcLTIwMTEgIlByb2pldCBEZWJpYW4iICJVdGlsaXRhaXJlcyBkZSBkcGtnIgorLlNIIE5PTQorZHBrZ1wtc3BsaXQgXC0gb3V0aWwgZGUgZOljb21wb3NpdGlvbi9yZWNvbXBvc2l0aW9uIGRlcyBwYXF1ZXRzIERlYmlhbgorLgorLlNIIFNZTk9QU0lTCitcZkJkcGtnXC1zcGxpdFxmUCBbXGZJb3B0aW9uXGZQLi4uXSBcZkljb21tYW5kXGZQCisuCisuU0ggREVTQ1JJUFRJT04KK1xmQmRwa2dcLXNwbGl0XGZQIGTpY29tcG9zZSBsZXMgZmljaGllcnMgZCd1biBwYXF1ZXQgYmluYWlyZSBEZWJpYW4gZW4gcGFydGllcworcGx1cyBwZXRpdGVzIChldCBsZXMgcmVjb21wb3NlKSwgcG91ciBwZXJtZXR0cmUgbCdlbnJlZ2lzdHJlbWVudCBkZXMKK2ZpY2hpZXJzIGQndW4gcGFxdWV0IHZvbHVtaW5ldXggc3VyIGRlcyBt6WRpYSBkZSBmYWlibGUgY2FwYWNpdOkgdGVscyBxdWUKK2xlcyBkaXNxdWV0dGVzLgorCitPbiBwZXV0IHMnZW4gc2VydmlyIKtcIOAgbGEgbWFpblwguyBhdmVjIGxlcyBvcHRpb25zIFxmQlwtXC1zcGxpdFxmUCwgXGZCXC1cLWpvaW5cZlAgZXQKK1xmQlwtXC1pbmZvXGZQLgorCitJbCBwb3Nz6GRlIGF1c3NpIHVuIG1vZGUgYXV0b21hdGlxdWUsIGFwcGVs6SBhdmVjIGwnb3B0aW9uIFxmQlwtXC1hdXRvXGZQLCBkYW5zCitsZXF1ZWwgaWwgY29uc2VydmUgc+lwYXLpbWVudCBkYW5zIHVuZSBmaWxlIGxlcyBwYXJ0aWVzIGNvbm51ZXMgb3UgcmVjb21wb3NlCitsZSBmaWNoaWVyIGQndW4gcGFxdWV0IHF1YW5kIGlsIGNvbm5h7nQgdG91dGVzIHNlcyBwYXJ0aWVzLiBMZXMgb3B0aW9ucworXGZCXC1cLWxpc3RxXGZQIGV0IFxmQlwtXC1kaXNjYXJkXGZQIHBlcm1ldHRlbnQgbGEgZ2VzdGlvbiBkZSBjZXR0ZSBmaWxlLgorCitUb3V0ZXMgbGVzIG9w6XJhdGlvbnMgZGUgZOljb21wb3NpdGlvbiwgcmVjb21wb3NpdGlvbiBvdSBkZSBtaXNlIGVuIGZpbGUKK3Byb2R1aXNlbnQgZGVzIG1lc3NhZ2VzIHN1ciBsYSBzb3J0aWUgc3RhbmRhcmRcIDsgaWxzIHBldXZlbnQg6nRyZQordHJhbnF1aWxsZW1lbnQgaWdub3Lpcy4KKy4KKy5TSCBDT01NQU5ERVMKKy5UUCAKK1xmQlwtc1xmUCwgXGZCXC1cLXNwbGl0XGZQIFxmSWFyY2hpdmVcLWNvbXBs6HRlXGZQIFtcZklwculmaXhlXGZQXQorROljb21wb3NlIGVuIHBsdXNpZXVycyBwYXJ0aWVzIHVuIHBhcXVldCBiaW5haXJlIERlYmlhbi4KKworTGUgbm9tIGQndW5lIHBhcnRpZSBlc3RcIDogXGZJcHLpZml4ZVxmUFxmQi5cZlBcZklOXGZQXGZCZGVcZlBcZklNXGZQXGZCLmRlYlxmUCBv+SBcZklOXGZQIGxlCitudW3pcm8gZGUgcGFydGllLCBjb21tZW7nYW50IOAgMSwgZXQgXGZJTVxmUCBlc3QgbGUgbm9tYnJlIHRvdGFsIGRlIHBhcnRpZXMKKyhsZXMgZGV1eCBzb250IGRlcyBk6WNpbWF1eCkuCisKK1F1YW5kIG9uIG5lIGRvbm5lIHBhcyBkZSBcZklwculmaXhlXGZQLCBsZSBub20gZHUgZmljaGllciBcZklhcmNoaXZlXC1jb21wbOh0ZVxmUAorZXN0IHV0aWxpc+ksIGVuIGluY2x1YW50IGxlIHLpcGVydG9pcmUgZXQgZW4gc3VwcHJpbWFudCB0b3V0IFxmQi5kZWJcZlAKK3Jlc3RhbnQuCisuVFAgCitcZkJcLWpcZlAsIFxmQlwtXC1qb2luXGZQIFxmSXBhcnRpZVxmUC4uLgorUmFzc2VtYmxlIGxlcyBwYXJ0aWVzIGQndW4gZmljaGllciwgcmVjb21wb3NhbnQgYWluc2kgbGUgZmljaGllciBkJ29yaWdpbmUKK3RlbCBxdSdpbCDpdGFpdCBhdmFudCBsYSBk6WNvbXBvc2l0aW9uLgorCitDZXMgcGFydGllcywgZG9ubullcyBjb21tZSBhcmd1bWVudHMsIGRvaXZlbnQgYXBwYXJ0ZW5pciB0b3V0ZXMgYXUgbeptZQorZmljaGllciBiaW5haXJlIGQnb3JpZ2luZS4gQ2hhcXVlIHBhcnRpZSBuZSBkb2l0IGFwcGFyYe50cmUgcXUndW5lIHNldWxlCitmb2lzIGRhbnMgbGEgbGlzdGUgZGVzIGFyZ3VtZW50c1wgOyBtYWlzIGlsIGVzdCBpbnV0aWxlIGRlIGxlcyBvcmRvbm5lci4KKworTGVzIHBhcnRpZXMgZG9pdmVudCBiaWVuIHP7ciBhdm9pciDpdOkgY3Lp6WVzIHNlbG9uIGxlIG3qbWUgbW9k6GxlICh0YWlsbGUKK21heGltdW0gZGVzIHBhcnRpZXMpLCBxdWkgZXN0IGTpY2xhcukgYXUgbW9tZW50IGRlIGxhIGTpY29tcG9zaXRpb25cIDsgY2UgcXVpCitzaWduaWZpZSBlbiBmYWl0IHF1J2VsbGVzIGRvaXZlbnQgYXZvaXIg6XTpIGNy6ellcyBwYXIgbGUgbeptZSBhcHBlbCDgCitcZkJkcGtnXC1zcGxpdCBcLVwtc3BsaXRcZlAuCisKK0xlcyBwYXJ0aWVzIGRlcyBub21zIG5lIHNvbnQgcGFzIHNpZ25pZmljYXRpdmVzIHBvdXIgbGUgcHJvY2Vzc3VzIGRlCityZWNvbXBvc2l0aW9uLgorCitCeSBkZWZhdWx0IHRoZSBvdXRwdXQgZmlsZSBpcyBjYWxsZWQKK1xmSXBhY2thZ2VcZlBcZkJfXGZQXGZJdmVyc2lvblxmUFxmQl9cZlBcZklhcmNoXGZQXGZCLmRlYlxmUC4KKworLlRQIAorXGZCXC1JXGZQLCBcZkJcLVwtaW5mb1xmUCBcZklwYXJ0aWVcZlAuLi4KK0FmZmljaGUgbGVzIHJlbnNlaWduZW1lbnRzIGNvbmNlcm5hbnQgdGVsbGUgcGFydGllIGRhbnMgdW4gZm9ybWF0IGxpc2libGUKK3BhciB0b3VzLiBMZXMgYXJndW1lbnRzIG5lIHJlcHLpc2VudGFudCBwYXMgbGEgcGFydGllIGQndW4gZmljaGllciBiaW5haXJlCitsZSBkaXNlbnQgYXVzc2kgc3VyIGxhIHNvcnRpZSBzdGFuZGFyZC4KKy5UUCAKK1xmQlwtYVxmUCwgXGZCXC1cLWF1dG8gXC1vXGZQIFxmSWZpY2hpZXJcLWNvbXBsZXQgcGFydGllXGZQCitNZXQgZW4gZmlsZSBhdXRvbWF0aXF1ZW1lbnQgbGVzIHBhcnRpZXMgZW4gdnVlIGRlIGxhIHJlY29tcG9zaXRpb24gZCd1bgorcGFxdWV0LgorCitMYSBcZklwYXJ0aWVcZlAgZOljbGFy6WUgZXN0IGV4YW1pbullIGV0IGNvbXBhcullIGF2ZWMgbGVzIGF1dHJlcyBwYXJ0aWVzIGR1Citt6m1lIHBhcXVldCBxdWkgc2UgdHJvdXZlbnQgKHNpIGVsbGVzIGV4aXN0ZW50KSBkYW5zIGxhIGZpbGUuCisKK1F1YW5kIHRvdXRlcyBsZXMgcGFydGllcyBkJ3VuIGZpY2hpZXIgKGF1cXVlbCBhcHBhcnRpZW50IGxhIHBhcnRpZSBcZklwYXJ0XGZQKQorc29udCBwculzZW50ZXMsIGxlIGZpY2hpZXIgZXN0IHJlY29tcG9z6SBldCBjcunpIGVuIHRhbnQgcXVlCitcZklmaWNoaWVyXC1jb21wbGV0XGZQIChjZSBmaWNoaWVyIG5lIGRldnJhaXQgcGFzIGTpauAgZXhpc3RlciwgbWFpcyBjZSBuJ2VzdAorcGFzIHVuZSBlcnJldXIpLgorCitRdWFuZCBjZSBuJ2VzdCBwYXMgbGUgY2FzLCBsYSBwYXJ0aWUgXGZJcGFydFxmUCBlc3QgbWlzZSBkYW5zIGxhIGZpbGUgZXQgbGUKK2ZpY2hpZXIgXGZJZmljaGllclwtY29tcGxldFxmUCBuJ2VzdCBwYXMgY3Lp6S4KKworSWYgXGZJcGFydFxmUCBpcyBub3QgYSBzcGxpdCBiaW5hcnkgcGFja2FnZSBwYXJ0IHRoZW4gXGZCZHBrZ1wtc3BsaXRcZlAgd2lsbCBleGl0Cit3aXRoIHN0YXR1cyBcZkIxXGZQOyBpZiBzb21lIG90aGVyIHRyb3VibGUgb2NjdXJzIHRoZW4gaXQgd2lsbCBleGl0IHdpdGggc3RhdHVzCitcZkIyXGZQLgorCitMJ29wdGlvbiBcZkJcLVwtb3V0cHV0XGZQIG91IFxmQlwtb1xmUCBkb2l0IOp0cmUgZm91cm5pZSBhdmVjIGwnYWN0aW9uIFxmQlwtXC1hdXRvXGZQLiBTaQorY2VsYSBuJ+l0YWl0IHBhcyBvYmxpZ2F0b2lyZSwgbGUgcHJvZ3JhbW1lIGFwcGVsYW50IG5lIHNhdXJhaXQgcGFzIHF1ZWwKK2ZpY2hpZXIgYXR0ZW5kcmUuCisuVFAgCitcZkJcLWxcZlAsIFxmQlwtXC1saXN0cVxmUAorTGlzdGUgbGUgY29udGVudSBkJ3VuZSBmaWxlIGRlIHBhcXVldHMg4CByZWNvbXBvc2VyLgorCitQb3VyIGNoYXF1ZSBmaWNoaWVyIHBvc3PpZGFudCBkZXMgcGFydGllcyBkYW5zIGxhIGZpbGUsIGNldHRlIGFjdGlvbiBkb25uZQorbGUgbm9tIGR1IGZpY2hpZXIsIGxlcyBwYXJ0aWVzIHBy6XNlbnRlcyBkYW5zIGxhIGZpbGUgZXQgbGUgbm9tYnJlIHRvdGFsCitkJ29jdGV0cyBjb25zZXJ26XMuCisuVFAgCitcZkJcLWRcZlAsIFxmQlwtXC1kaXNjYXJkXGZQIFtcZklwYXF1ZXRcZlAuLi5dCitDZXR0ZSBhY3Rpb24gbGFpc3NlIGRlIGP0dOkgY2VydGFpbmVzIHBhcnRpZXMgZGFucyBsYSBmaWxlLCBjZWxsZXMgcXVpIHNvbnQKK2VuIGF0dGVudGUgZGVzIGF1dHJlcyBwYXJ0aWVzIGNvbXBvc2FudCBsZSBwYXF1ZXQuCisKK1F1YW5kIGF1Y3VuIFxmSXBhcXVldFxmUCBuJ2VzdCBkb25u6SwgbGEgZmlsZSBlc3Qgdmlk6WVcIDsgc2kgdW4gcGFxdWV0IGVzdAorZG9ubuksIHNldWxlcyBsZXMgcGFydGllcyBkZSBjZSBwYXF1ZXQgc29udCBk6XRydWl0ZXMuCisuVFAgCitcZkJcLWhcZlAsIFxmQlwtXC1oZWxwXGZQCitBZmZpY2hlIHVuIG1lc3NhZ2UgZCdhaWRlIHB1aXMgcXVpdHRlLgorLlRQIAorXGZCXC1cLXZlcnNpb25cZlAKK0FmZmljaGUgbGUgbnVt6XJvIGRlIHZlcnNpb24gcHVpcyBxdWl0dGUuCisuCisuU0ggT1BUSU9OUworLlRQIAorXGZCXC1cLWRlcG90ZGlyXGZQXGZJIHLpcGVydG9pcmVcZlAKK0luZGlxdWUgdW4gculwZXJ0b2lyZSBkaWZm6XJlbnQgcG91ciBsYSBmaWxlIGNvbXByZW5hbnQgbGVzIHBhcnRpZXMgZW4KK2F0dGVudGUgZCd1bmUgcmVjb21wb3NpdGlvbiBhdXRvbWF0aXF1ZS4gUGFyIGTpZmF1dCwgYydlc3QgbGUgculwZXJ0b2lyZQorXGZCL3Zhci9saWIvZHBrZ1xmUC4KKy5UUCAKK1xmQlwtU1xmUCwgXGZCXC1cLXBhcnRzaXplXGZQIFxmSWtpYmlcLW9jdGV0c1xmUAorSW5kaXF1ZSwgZW4ga2liaVwtb2N0ZXRzICgxMDI0IG9jdGV0cyksIGxhIHRhaWxsZSBtYXhpbXVtIGQndW5lIHBhcnRpZSBsb3JzCitkJ3VuZSBk6WNvbXBvc2l0aW9uLiBQYXIgZOlmYXV0LCBsYSB0YWlsbGUgbWF4aW11bSBlc3QgZGUgNDUwXCBLaW8uCisuVFAgCitcZkJcLW9cZlAsIFxmQlwtXC1vdXRwdXRcZlAgXGZJZmljaGllclwtY29tcGxldFxmUAorSW5kaXF1ZSBsZSBub20gZHUgZmljaGllciDgIHByb2R1aXJlIHBvdXIgdW5lIHJlY29tcG9zaXRpb24uCisKK0NlbGEgYW5udWxlIGxlIGZpY2hpZXIgcGFyIGTpZmF1dCBsb3JzIGQndW5lIHJlY29tcG9zaXRpb24gq1wg4CBsYSBtYWluXCC7CisoXGZCXC1cLWpvaW5cZlApIGV0IGMnZXN0IG9ibGlnYXRvaXJlIHBvdXIgdW5lIHJlY29tcG9zaXRpb24gb3UgdW5lIG1pc2UgZW4gZmlsZQorYXV0b21hdGlxdWVzIChcZkJcLVwtYXV0b1xmUCkuCisuVFAgCitcZkJcLVFcZlAsIFxmQlwtXC1ucHF1aWV0XGZQCitQb3VyIHVuZSByZWNvbXBvc2l0aW9uIG91IHVuZSBtaXNlIGVuIGZpbGUgYXV0b21hdGlxdWVzLCBcZkJkcGtnXC1zcGxpdFxmUAorYWZmaWNoZSBoYWJpdHVlbGxlbWVudCB1biBtZXNzYWdlIHNpIG9uIGx1aSBkb25uZSB1bmUgXGZJcGFydGllXGZQIHF1aSBuJ2VzdAorcGFzIHVuZSBwYXJ0aWUgZCd1biBwYXF1ZXQgYmluYWlyZS4gQ2V0dGUgb3B0aW9uIHN1cHByaW1lIGNlIG1lc3NhZ2VcIDsgY2VsYQorcGVybWV0IOAgZGVzIHByb2dyYW1tZXMgY29tbWUgXGZCZHBrZ1xmUCBkZSBuZSBwYXMgYWZmaWNoZXIgZGUgZmF1eCBtZXNzYWdlcworcXVhbmQgaWwgZXN0IGNvbmZyb2506SDgIGRlcyBwYXF1ZXRzIGTpY29tcG9z6XMgZXQgZGVzIHBhcXVldHMgbm9uCitk6WNvbXBvc+lzLgorLlRQIAorXGZCXC1cLW1zZG9zXGZQCitPYmxpZ2UgbGUgbm9tIGRlcyBmaWNoaWVycyBwcm9kdWl0cyBwYXIgXGZCXC1cLXNwbGl0XGZQIOAgc2UgY29uZm9ybWVyIOAgbXNkb3MuCisKK0NlbGEgc3VwcHJpbWUgbGUgcHLpZml4ZSBcLSBzb2l0IGNlbHVpIHBhciBk6WZhdXQgZOlyaXbpIGR1IGZpY2hpZXIgZCdlbnRy6WUsCitzb2l0IGNlbHVpIGRvbm7pIGNvbW1lIGFyZ3VtZW50XCA6IGxlcyBjYXJhY3TocmVzIGFscGhhbnVt6XJpcXVlcyBzb250IGVuCittaW51c2N1bGVzLCBsZXMgc2lnbmVzIHBsdXMgc29udCByZW1wbGFj6XMgcGFyIGRlcyBcZkJ4XGZQIGV0IHRvdXMgbGVzIGF1dHJlcworY2FyYWN06HJlcyBzb250IGFiYW5kb25u6XMuCisKK2xlIHLpc3VsdGF0IGVzdCBhbG9ycyB0cm9ucXXpIGF1dGFudCBxdWUgbuljZXNzYWlyZSBldCBkZXMgZmljaGllcnMgZGUgbGEKK2Zvcm1lXCA6IFxmSXByZWZpeE5cZlBcZkJvZlxmUFxmSU1cZlBcZkIuZGViXGZQIHNvbnQgY3Lp6XMuCisuCisuU0ggIkNPREUgREUgU09SVElFIgorLlRQIAorXGZCMFxmUAorVGhlIHJlcXVlc3RlZCBzcGxpdCwgbWVyZ2UsIG9yIG90aGVyIGNvbW1hbmQgc3VjY2VlZGVkLiAgXGZCXC1cLWluZm9cZlAgY29tbWFuZHMKK2NvdW50IGFzIHN1Y2Nlc3NmdWwgZXZlbiBpZiB0aGUgZmlsZXMgYXJlIG5vdCBiaW5hcnkgcGFja2FnZSBwYXJ0cy4KKy5UUCAKK1xmQjFcZlAKK09ubHkgb2NjdXJzIHdpdGggXGZCXC1cLWF1dG9cZlAgYW5kIGluZGljYXRlcyB0aGF0IHRoZSBcZklwYXJ0XGZQIGZpbGUgd2FzIG5vdCBhCitiaW5hcnkgcGFja2FnZSBwYXJ0LgorLlRQIAorXGZCMlxmUAorU29tZSBraW5kIG9mIHRyb3VibGUgaGFwcGVuZWQsIHN1Y2ggYXMgYSBzeXN0ZW0gY2FsbCBmYWlsdXJlLCBhIGZpbGUgdGhhdAorbG9va2VkIGxpa2UgYSBwYWNrYWdlIHBhcnQgZmlsZSBidXQgd2FzIGNvcnJ1cHRlZCwgYSB1c2FnZSBlcnJvciBvciBzb21lCitvdGhlciBwcm9ibGVtLgorLgorLlNIIEJPR1VFUworT24gbmUgcGV1dCBwYXMgb2J0ZW5pciB0b3VzIGxlcyBk6XRhaWxzIHZvdWx1cyBzdXIgbGVzIHBhcXVldHMgcHLpc2VudHMgZGFucworbGEgZmlsZSDgIG1vaW5zIGQnYWxsZXIgdm9pciBzb2lcLW3qbWUgZGFucyBsZSBy6XBlcnRvaXJlIGRlIGxhIGZpbGUuCisKK09uIG5lIHBldXQgcGFzIGZhY2lsZW1lbnQgc2F2b2lyIHNpIHVuIGZpY2hpZXIgZXN0IHZyYWltZW50IGxhIHBhcnRpZSBkJ3VuCitwYXF1ZXQgYmluYWlyZSBvdSBub24uCisuCisuU0ggRklDSElFUlMKKy5UUCAKK1xmSS92YXIvbGliL2Rwa2cvcGFydHNcZlAKK0xlIHLpcGVydG9pcmUgcGFyIGTpZmF1dCBkZSBsYSBmaWxlIGNvbnRlbmFudCBsZXMgZmljaGllcnMgcXVpIGF0dGVuZGVudCB1bmUKK3JlY29tcG9zaXRpb24gYXV0b21hdGlxdWUuCisKK0xlcyBub21zIGRlIGZpY2hpZXJzIHV0aWxpc+lzIGRhbnMgY2UgculwZXJ0b2lyZSBzb250IGRhbnMgdW4gZm9ybWF0CitwYXJ0aWN1bGllciDgIFxmQmRwa2dcLXNwbGl0XGZQIGV0IG5lIHNvbnQgc2FucyBkb3V0ZSBwYXMgdXRpbGVzIHBvdXIgZCdhdXRyZXMKK3Byb2dyYW1tZXNcIDsgZW4gdG91cyBjYXMgb24gbmUgcGV1dCBwYXMgY29tcHRlciBzdXIgY2UgZm9ybWF0IGRlIG5vbSBkZQorZmljaGllci4KKy4KKy5TSCAiVk9JUiBBVVNTSSIKK1xmQmRlYlxmUCg1KSwgXGZCZGViXC1jb250cm9sXGZQKDUpLCBcZkJkcGtnXC1kZWJcZlAoMSksIFxmQmRwa2dcZlAoMSkuCisuCisuU0ggQVVURVVSCitDb3B5cmlnaHQgXChjbyAxOTk1XC0xOTk2IElhbiBKYWNrc29uCisuc3AKK0NlIHByb2dyYW1tZSBlc3QgdW4gbG9naWNpZWwgbGlicmVcIDsgdm95ZXogbGEgq1wgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2VcILsKK3ZlcnNpb24gMiBvdSBzdXDpcmlldXJlIHBvdXIgbGUgY29weXJpZ2h0LiBJbCBuJ3kgYSBQQVMgZGUgZ2FyYW50aWUuCisuU0ggVFJBRFVDVElPTgorQXJpZWwgVkFSREkgPGFyaWVsLnZhcmRpQGZyZWVzYmVlLmZyPiwgMjAwMi4KK1BoaWxpcHBlIEJhdGFpbGxlciwgMjAwNi4KK05pY29sYXMgRnJhbudvaXMsIDIwMDYuCitWZXVpbGxleiBzaWduYWxlciB0b3V0ZSBlcnJldXIg4CA8ZGViaWFuXC1sMTBuXC1mcmVuY2hAbGlzdHMuZGViaWFuLm9yZz4uCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9mci9kcGtnLXN0YXRvdmVycmlkZS44IGIvZHBrZy0xLjE2LjEuMS9tYW4vZnIvZHBrZy1zdGF0b3ZlcnJpZGUuOApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mMDU5MmUxCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vZnIvZHBrZy1zdGF0b3ZlcnJpZGUuOApAQCAtMCwwICsxLDEwMCBAQAorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlwiCisuXCIgVGhpcyBmaWxlIHdhcyBnZW5lcmF0ZWQgd2l0aCBwbzRhLiBUcmFuc2xhdGUgdGhlIHNvdXJjZSBmaWxlLgorLlwiCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuVEggZHBrZ1wtc3RhdG92ZXJyaWRlIDggMDdcLTA0XC0yMDExICJQcm9qZXQgRGViaWFuIiAiVXRpbGl0YWlyZXMgZGUgZHBrZyIKKy5TSCBOT00KK2Rwa2dcLXN0YXRvdmVycmlkZSBcLSBhbm51bGVyIGxhIHByb3Byael06SBldCBsZSBtb2RlIGRlcyBmaWNoaWVycworLgorLlNIIFNZTk9QU0lTCitcZkJkcGtnXC1zdGF0b3ZlcnJpZGVcZlAgW1xmSW9wdGlvblxmUC4uLl0gXGZJY29tbWFuZFxmUAorLgorLlNIIERFU0NSSVBUSU9OCitMZXMgq1wgXGZCZOlyb2dhdGlvbnMgYXUgc3RhdHV0XGZQXCC7IHNvbnQgdW5lIGZh529uIGRlIGRlbWFuZGVyIOAgXGZCZHBrZ1xmUCgxKSBkZQorY2hhbmdlciBsZSBwcm9wcmnpdGFpcmUgb3UgbGUgbW9kZSBkJ3VuIGZpY2hpZXIgbG9ycyBkZSBsJ2luc3RhbGxhdGlvbiBkJ3VuCitwYXF1ZXQuIChOb3RlXCA6IGplIGRpcyCrXCBmaWNoaWVyXCC7IGljaSwgbWFpcyBjZWxhIHBldXQg6nRyZSBlbiBy6WFsaXTpCituJ2ltcG9ydGUgcXVlbCBzeXN06G1lIGRlIGZpY2hpZXJzIGfpcmFibGUgcGFyIERwa2csIHBhciBleGVtcGxlLCBkZXMKK3LpcGVydG9pcmVzLCBkZXMgcOlyaXBo6XJpcXVlcywgZXRjLikgT24gcGV1dCBzJ2VuIHNlcnZpciBwb3VyIGZvcmNlcgorbCdpbnN0YWxsYXRpb24gZGUgcHJvZ3JhbW1lcyBxdWkgc29udCBub3JtYWxlbWVudCCrXCBzZXR1aWRcILsgc2FucyBjZSBkcmFwZWF1CiurXCBzZXR1aWRcILssIG91IHBvdXIgbGVzIHJlbmRyZSBleOljdXRhYmxlcyBzZXVsZW1lbnQgcGFyIHVuIGdyb3VwZSBkb25u6S4KKy5QCitcZkJkcGtnXC1zdGF0b3ZlcnJpZGVcZlAgZXN0IHVuIHV0aWxpdGFpcmUgcG91ciBn6XJlciBsYSBsaXN0ZSBkZXMKK2Tpcm9nYXRpb25zLiBJbCBwb3Nz6GRlIHRyb2lzIGZvbmN0aW9ucyDpbOltZW50YWlyZXNcIDogbCdham91dCwgbGEKK3N1cHByZXNzaW9uIGV0IGxlIGxpc3RhZ2UgZGVzIGTpcm9nYXRpb25zLgorLgorLlNIIENPTU1BTkRFUworLlRQIAorXGZCXC1cLWFkZFxmUFxmSSB1dGlsaXNhdGV1ciBncm91cGUgbW9kZSBmaWNoaWVyXGZQCitBam91dGUgdW5lIGTpcm9nYXRpb24gKKtcIG92ZXJyaWRlXCC7KSBwb3VyIFxmSWZpY2hpZXJcZlAuIFxmSWZpY2hpZXJcZlAgbidhIHBhcworYmVzb2luIGQnZXhpc3RlciBxdWFuZCBjZXR0ZSBjb21tYW5kZSBlc3QgdXRpbGlz6WVcIDsgbGEgZOlyb2dhdGlvbiBlc3QKK3N0b2Nr6WUgZXQgdXRpbGlz6WUgcGFyIGxhIHN1aXRlLiBMZXMgdXRpbGlzYXRldXJzIG91IGxlcyBncm91cGVzIHBldXZlbnQKK+p0cmUgaW5kaXF16XMgcGFyIGxldXIgbm9tIChwYXIgZXhlbXBsZSBcZkJyb290XGZQIG91IFxmQm5vYm9keVxmUCksIG91IGJpZW4gcGFyCitsZXVyIG51belybywgZW4gcHLpZml4YW50IGNlIG51belybyBwYXIgbGUgY2FyYWN06HJlIKtcIFxmQiNcZlBcILsgKHBhciBleGVtcGxlLAorXGZCIzBcZlAgb3UgXGZCIzY1NTM0XGZQKS4gTGUgXGZJbW9kZVxmUCBkb2l0IOp0cmUgaW5kaXF16SBlbiBudW3pcm90YXRpb24gb2N0YWxlLgorCitTaSBcLVwtdXBkYXRlIGVzdCB1dGlsaXPpZSBldCBzaSBcZklmaWNoaWVyXGZQIGV4aXN0ZSwgbGUgZmljaGllciBvYnRpZW50IHVuCitub3V2ZWF1IHByb3Byael0YWlyZSBldCB1biBub3V2ZWF1IG1vZGUuCisuVFAgCitcZkJcLVwtcmVtb3ZlXGZQXGZJIGZpY2hpZXJcZlAKK1N1cHByaW1lIHVuZSBk6XJvZ2F0aW9uICirXCBvdmVycmlkZVwguykgcG91ciBcZklmaWNoaWVyXGZQLCBsJ+l0YXQgZGUgXGZJZmljaGllclxmUAorZXN0IGluY2hhbmfpLgorLlRQIAorXGZCXC1cLWxpc3RcZlAgW1xmSWV4cFwtcmVnXGZQXQorTGlzdGUgdG91dGVzIGxlcyBk6XJvZ2F0aW9ucy4gUXVhbmQgb24gZG9ubmUgdW5lIGV4cHJlc3Npb24gcmF0aW9ubmVsbGUsIG9uCity6WR1aXQgbGEgc29ydGllIGF1eCBk6XJvZ2F0aW9ucyBxdWkgY29ycmVzcG9uZGVudCBhdSBtb3RpZi4gUXVhbmQgaWwgbid5IGEKK3BhcyBkZSBk6XJvZ2F0aW9uLCBvdSBxdWFuZCBhdWN1bmUgbmUgY29ycmVzcG9uZCBhdSBtb3RpZiwKK1xmQmRwa2dcLXN0YXRvdmVycmlkZVxmUCBzZSB0ZXJtaW5lIGF2ZWMgdW4gY29kZSBkZSBzb3J0aWUg6WdhbCDgIDEuCisuVFAgCitcZkJcLVwtaGVscFxmUAorQWZmaWNoZSB1biBtZXNzYWdlIGQnYWlkZSBwdWlzIHF1aXR0ZS4KKy5UUCAKK1xmQlwtXC12ZXJzaW9uXGZQCitBZmZpY2hlIGxlIG51belybyBkZSB2ZXJzaW9uIHB1aXMgcXVpdHRlLgorLgorLlNIIE9QVElPTlMKKy5UUCAKK1xmQlwtXC1hZG1pbmRpclxmUFxmSSBy6XBlcnRvaXJlXGZQCitDaGFuZ2UgbGUgXGZJculwZXJ0b2lyZVxmUCBkZSBsYSBiYXNlIGRlIGRvbm7pZXMgZGUgZHBrZywgb/kgc2UgdHJvdXZlIGF1c3NpIGxlCitmaWNoaWVyIHN0YXRvdmVycmlkZS4gTGEgdmFsZXVyIHBhciBk6WZhdXQgZXN0IFxmSS92YXIvbGliL2Rwa2dcZlAuCisuVFAgCitcZkJcLVwtZm9yY2VcZlAKK0ZvcmNlciB1bmUgb3DpcmF0aW9uLCBt6m1lIHNpIHVuZSB26XJpZmljYXRpb24gcmFpc29ubmFibGUKK2wnaW50ZXJkaXJhaXQuIEMnZXN0IG7pY2Vzc2FpcmUgcG91ciBhbm51bGVyIHVuZSBwculj6WRlbnRlIGTpcm9nYXRpb24uCisuVFAgCitcZkJcLVwtdXBkYXRlXGZQCitFc3NheWVyIGRlIGNoYW5nZXIgaW1t6WRpYXRlbWVudCBsZSBwcm9wcmnpdGFpcmUgZXQgbGUgbW9kZSBkdSBmaWNoaWVyIHNpIGNlCitmaWNoaWVyIGV4aXN0ZS4KKy5UUCAKK1xmQlwtXC1xdWlldFxmUAorTW9pbnMgZGUgYmF2YXJkYWdlIHN1ciBjZSBxdWkgZXN0IGZhaXQuCisuCisuU0ggRU5WSVJPTk5FTUVOVAorLlRQIAorXGZCRFBLR19BRE1JTkRJUlxmUAorSWYgc2V0IGFuZCB0aGUgXGZCXC1cLWFkbWluZGlyXGZQIG9wdGlvbiBoYXMgbm90IGJlZW4gc3BlY2lmaWVkLCBpdCB3aWxsIGJlIHVzZWQKK2FzIHRoZSBkcGtnIGRhdGEgZGlyZWN0b3J5LgorLgorLlNIIEZJQ0hJRVJTCisuVFAgCitcZkkvdmFyL2xpYi9kcGtnL3N0YXRvdmVycmlkZVxmUAorQ2UgZmljaGllciBjb250aWVudCBsYSBsaXN0ZSBhY3R1ZWxsZSBkZXMgZOlyb2dhdGlvbnMgY29uY2VybmFudCBsZQorc3lzdOhtZS4gSWwgc2UgdHJvdXZlIGRhbnMgbGUgculwZXJ0b2lyZSBkJ2FkbWluaXN0cmF0aW9uIGRlIERwa2csIGF2ZWMgbGVzCithdXRyZXMgZmljaGllcnMgaW1wb3J0YW50cyBjb21tZSCrXCBzdGF0dXNcILsgb3Ugq1wgYXZhaWxhYmxlXCC7LgorLmJyCitOb3RlXCA6IFxmQmRwa2dcLXN0YXRvdmVycmlkZVxmUCBnYXJkZSB1bmUgY29waWUgZGUgY2UgZmljaGllciwgYXZlYyB1bmUKK2V4dGVuc2lvbiAiXC1vbGQiLCBhdmFudCBkZSBsZSByZW1wbGFjZXIgcGFyIHVuIG5vdXZlYXUuCisuCisuU0ggIlZPSVIgQVVTU0kiCitcZkJkcGtnXGZQKDEpLgorLgorLlNIIEFVVEVVUgorQ29weXJpZ2h0IFwoY28gMjAwMCBXaWNoZXJ0IEFra2VybWFuCisuc3AKK0NlIHByb2dyYW1tZSBlc3QgdW4gbG9naWNpZWwgbGlicmVcIDsgdm95ZXogbGEgq1wgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2VcILsKK3ZlcnNpb24gMiBvdSBzdXDpcmlldXJlIHBvdXIgbGUgY29weXJpZ2h0LiBJbCBuJ3kgYSBQQVMgZGUgZ2FyYW50aWUuCisuU0ggVFJBRFVDVElPTgorQXJpZWwgVkFSREkgPGFyaWVsLnZhcmRpQGZyZWVzYmVlLmZyPiwgMjAwMi4KK1BoaWxpcHBlIEJhdGFpbGxlciwgMjAwNi4KK05pY29sYXMgRnJhbudvaXMsIDIwMDYuCitWZXVpbGxleiBzaWduYWxlciB0b3V0ZSBlcnJldXIg4CA8ZGViaWFuXC1sMTBuXC1mcmVuY2hAbGlzdHMuZGViaWFuLm9yZz4uCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9mci9kcGtnLXRyaWdnZXIuMSBiL2Rwa2ctMS4xNi4xLjEvbWFuL2ZyL2Rwa2ctdHJpZ2dlci4xCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjcxYTBjOGIKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9mci9kcGtnLXRyaWdnZXIuMQpAQCAtMCwwICsxLDc4IEBACisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkcGtnXC10cmlnZ2VyIDEgMjAxMVwtMDhcLTE0ICJQcm9qZXQgRGViaWFuIiAic3VpdGUgZHBrZyIKKy5TSCBOT00KK2Rwa2dcLXRyaWdnZXIgXC0gdW4gdXRpbGl0YWlyZSBwb3VyIGFjdGl2ZXIgbGVzIGFjdGlvbnMgZGlmZuly6WVzIGRlIHBhcXVldHMKKy4KKy5TSCBTWU5PUFNJUworXGZCZHBrZ1wtdHJpZ2dlclxmUCBbXGZJb3B0aW9uXGZQLi4uXSBcZklub21cLWFjdGlvblwtZGlmZuly6WVcZlAKKy5icgorXGZCZHBrZ1wtdHJpZ2dlclxmUCBbXGZJb3B0aW9uXGZQLi4uXSBcZkljb21tYW5kZVxmUAorLgorLlNIIERFU0NSSVBUSU9OCitcZkJkcGtnXC10cmlnZ2VyXGZQIGVzdCB1biBvdXRpbCBwb3VyIGFjdGl2ZXIgZXhwbGljaXRlbWVudCBsZXMgYWN0aW9ucworZGlmZuly6WVzIGV0IHBvdXIgdulyaWZpZXIgbGV1ciBnZXN0aW9uIGRhbnMgbGUgZm9uY3Rpb25uZW1lbnQgZGUgXGZCZHBrZ1xmUC4KKy5QUAorVXRpbGlzYWJsZSBwYXIgbGVzIHNjcmlwdHMgZHUgbWFpbnRlbmV1ciBkYW5zIGNlcnRhaW5lcyBzaXR1YXRpb25zIGNvbXBsZXhlcworb/kgdW4gZmljaGllciBkJ2FjdGlvbnMgZGlmZuly6WVzICirXCB0cmlnZ2Vyc1wguykgb3UgbGEgZGlyZWN0aXZlIFxmQmFjdGl2YXRlXGZQCitkdSBmaWNoaWVyIGRlIGNvbnRy9GxlIGRlcyBhY3Rpb25zIGRpZmbpcullcyBuZSBzb250IHBhcyBzdWZmaXNhbnRzLiBQZXV0CivpZ2FsZW1lbnQg6nRyZSB1dGlsaXPpIHBvdXIgZGVzIGVzc2FpcyBvdSBwYXIgbGVzIGFkbWluaXN0cmF0ZXVycyBzeXN06G1lCisobm90ZXIgcXVlIGxlcyBhY3Rpb25zIGRpZmbpcullcyBuZSBzZXJvbnQgYWxvcnMgcGFzIGV46WN1dOllcyBwYXIKK1xmQmRwa2dcLXRyaWdnZXJcZlApLgorLlBQCitMZXMgc3ludGF4ZXMgbm9uXC1yZWNvbm51ZXMgcG91ciBsZSBub20gZGVzIGFjdGlvbnMgZGlmZuly6WVzIGNvbnN0aXR1ZW50IHVuZQorZXJyZXVyIHBvdXIgXGZCZHBrZ1wtdHJpZ2dlclxmUC4KKy4KKy5TSCBDT01NQU5ERVMKKy5UUCAKK1xmQlwtXC1jaGVja1wtc3VwcG9ydGVkXGZQCitDaGVjayBpZiB0aGUgcnVubmluZyBcZkJkcGtnXGZQIHN1cHBvcnRzIHRyaWdnZXJzICh1c3VhbGx5IGNhbGxlZCBmcm9tIGEKK3Bvc3RpbnN0KS4gV2lsbCBleGl0IFxmQjBcZlAgaWYgYSB0cmlnZ2Vyc1wtY2FwYWJsZSBcZkJkcGtnXGZQIGhhcyBydW4sIG9yIFxmQjFcZlAKK3dpdGggYW4gZXJyb3IgbWVzc2FnZSB0byBzdGRlcnIgaWYgbm90LiBOb3JtYWxseSwgaG93ZXZlciwgaXQgaXMgYmV0dGVyIGp1c3QKK3RvIGFjdGl2YXRlIHRoZSBkZXNpcmVkIHRyaWdnZXIgd2l0aCBcZkJkcGtnXC10cmlnZ2VyXGZQLgorLlRQIAorXGZCXC1oXGZQLCBcZkJcLVwtaGVscFxmUAorQWZmaWNoZSB1biBtZXNzYWdlIGQnYWlkZSBwdWlzIHF1aXR0ZS4KKy5UUCAKK1xmQlwtXC12ZXJzaW9uXGZQCitBZmZpY2hlIGxlIG51belybyBkZSB2ZXJzaW9uIHB1aXMgcXVpdHRlLgorLgorLlNIIE9QVElPTlMKKy5UUCAKK1xmQlwtXC1hZG1pbmRpclxmUD1cZklkaXJcZlAKK0NoYW5nZSBsJ2VuZHJvaXQgb/kgc2UgdHJvdXZlIGxhIGJhc2UgZGUgZG9ubullcyBkZSBcZkJkcGtnXGZQLiBQYXIgZOlmYXV0LAorYydlc3QgXGZJL3Zhci9saWIvZHBrZ1xmUC4KKy5UUCAKK1xmQlwtXC1ieVwtcGFja2FnZT1cZlBcZklwYXF1ZXRcZlAKK092ZXJyaWRlIHRyaWdnZXIgYXdhaXRlciAobm9ybWFsbHkgc2V0IGJ5IFxmQmRwa2dcZlAgdGhyb3VnaCB0aGUKK1xmQkRQS0dfTUFJTlRTQ1JJUFRfUEFDS0FHRVxmUCBlbnZpcm9ubWVudCB2YXJpYWJsZSBvZiB0aGUgbWFpbnRhaW5lciBzY3JpcHRzLAorbmFtaW5nIHRoZSBwYWNrYWdlIHRvIHdoaWNoIHRoZSBzY3JpcHQgYmVsb25ncywgYW5kIHRoaXMgd2lsbCBiZSB1c2VkIGJ5CitkZWZhdWx0KS4KKy5UUCAKK1xmQlwtXC1ub1wtYXdhaXRcZlAKK0NldHRlIG9wdGlvbiBmYWl0IGVuIHNvcnRlIHF1ZSBsZSBwYXF1ZXQgYXBwZWxhbnQgVCAocydpbCBleGlzdGUpIG4nYSBwYXMKK2Jlc29pbiBkJ2F0dGVuZHJlIGwnZXjpY3V0aW9uIGRlIGNldHRlIGFjdGlvbiBkaWZm6XLpZVwgOyBJLCBsZShzKSBwYXF1ZXQocykKK2Fzc29jaekocykg4CBsJ2FjdGlvbiBkaWZm6XLpZSwgbmUgc2VyYSBwYXMgYWpvdXTpIOAgbGlzdGUgZGVzIHBhcXVldHMgZG9udAorbGUgdHJhaXRlbWVudCBkZXMgYWN0aW9ucyBkaWZm6XLpZXMgZXN0IGF0dGVuZHUgcGFyIFQgZXQgbCfpdGF0IGRlIFQgcmVzdGUKK2luY2hhbmfpLiBUIHBldXQg6nRyZSBjb25zaWTpcukgaW5zdGFsbOkgbeptZSBzaSBsZXMgYWN0aW9ucyBkaWZm6XLpZXMgZGUgSQorbidvbnQgcGFzIGVuY29yZSDpdOkgZXjpY3V06WVzLgorLlRQIAorXGZCXC1cLW5vXC1hY3RcZlAKK1Rlc3RlIHVuaXF1ZW1lbnQsIG4nYXBwb3J0ZSBhdWN1biBjaGFuZ2VtZW50LgorLgorLlNIIEVOVklST05ORU1FTlQKKy5UUCAKK1xmQkRQS0dfQURNSU5ESVJcZlAKK0lmIHNldCBhbmQgdGhlIFxmQlwtXC1hZG1pbmRpclxmUCBvcHRpb24gaGFzIG5vdCBiZWVuIHNwZWNpZmllZCwgaXQgd2lsbCBiZSB1c2VkCithcyB0aGUgZHBrZyBkYXRhIGRpcmVjdG9yeS4KKy4KKy5TSCAiVk9JUiBBVVNTSSIKK1xmQmRwa2dcZlAoMSksIFxmQmRlYlwtdHJpZ2dlcnNcZlAoNSksIFxmQi91c3Ivc2hhcmUvZG9jL2Rwa2dcLWRldi90cmlnZ2Vycy50eHQuZ3pcZlAuCisuU0ggVFJBRFVDVElPTgorQXJpZWwgVkFSREkgPGFyaWVsLnZhcmRpQGZyZWVzYmVlLmZyPiwgMjAwMi4KK1BoaWxpcHBlIEJhdGFpbGxlciwgMjAwNi4KK05pY29sYXMgRnJhbudvaXMsIDIwMDYuCitWZXVpbGxleiBzaWduYWxlciB0b3V0ZSBlcnJldXIg4CA8ZGViaWFuXC1sMTBuXC1mcmVuY2hAbGlzdHMuZGViaWFuLm9yZz4uCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9mci9kcGtnLXZlbmRvci4xIGIvZHBrZy0xLjE2LjEuMS9tYW4vZnIvZHBrZy12ZW5kb3IuMQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42MTExZGY1Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vZnIvZHBrZy12ZW5kb3IuMQpAQCAtMCwwICsxLDYyIEBACisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkcGtnXC12ZW5kb3IgMSAwN1wtMDRcLTIwMTEgIlByb2pldCBEZWJpYW4iICJzdWl0ZSBkcGtnIgorLlNIIE5PTQorZHBrZ1wtdmVuZG9yIFwtIHLpY3Vw6XJlIGxlcyBpbmZvcm1hdGlvbnMgc3VyIGxlcyDpZGl0ZXVycyBkZSBkaXN0cmlidXRpb24KKy4KKy5TSCBTWU5PUFNJUworXGZCZHBrZ1wtdmVuZG9yXGZQIFtcZklvcHRpb25cZlAuLi5dIFxmSWNvbW1hbmRlXGZQCisuCisuU0ggREVTQ1JJUFRJT04KK1xmQmRwa2dcLXZlbmRvclxmUCBlc3QgdW4gb3V0aWwgcXVpIHBlcm1ldCBkZSBy6WN1cOlyZXIgZGVzIGluZm9ybWF0aW9ucyBzdXIgbGVzCivpZGl0ZXVycyAoq1wgdmVuZG9yc1wguykgZGUgZGlzdHJpYnV0aW9ucyBy6WbpcmVuY+lzIGRhbnMKK1xmQi9ldGMvZHBrZy9vcmlnaW5zXGZQLiBcZkIvZXRjL2Rwa2cvb3JpZ2lucy9kZWZhdWx0XGZQIGNvbnRpZW50IGwnaW5mb3JtYXRpb24KK3JlbGF0aXZlIOAgbCfpZGl0ZXVyIGFjdHVlbGxlbWVudCB1dGlsaXPpLgorLgorLlNIIENPTU1BTkRFUworLlRQIAorXGZCXC1cLWlzXGZQXGZJIOlkaXRldXJcZlAKK0V4aXRzIHdpdGggXGZCMFxmUCBpZiB0aGUgY3VycmVudCB2ZW5kb3IgaXMgXGZJdmVuZG9yXGZQLiBPdGhlcndpc2UgZXhpdHMgd2l0aAorbm9uXC16ZXJvLgorLlRQIAorXGZCXC1cLWRlcml2ZXNcLWZyb21cZlBcZkkg6WRpdGV1clxmUAorRXhpdHMgd2l0aCBcZkIwXGZQIGlmIHRoZSBjdXJyZW50IHZlbmRvciBkaXN0cmlidXRpb24gaXMgYSBkZXJpdmF0aXZlIG9mCitcZkl2ZW5kb3JcZlAsIG90aGVyd2lzZSBleGl0cyB3aXRoIG5vblwtemVyby4gSXQgdXNlcyB0aGUgIlBhcmVudCIgZmllbGQgdG8KK2Jyb3dzZSBhbGwgYW5jZXN0b3JzIG9mIHRoZSBjdXJyZW50IHZlbmRvci4KKy5UUCAKK1xmQlwtXC1xdWVyeVxmUFxmSSBjaGFtcFxmUAorQWZmaWNoZSBzdXIgbGEgc29ydGllIHN0YW5kYXJkIGxhIHZhbGV1ciBkdSBjaGFtcCBzcOljaWZpcXVlIFxmSWNoYW1wXGZQIGRlCitsJ+lkaXRldXIgYWN0dWVsLgorLlRQIAorXGZCXC1cLWhlbHBcZlAKK0FmZmljaGUgdW4gbWVzc2FnZSBkJ2FpZGUgcHVpcyBxdWl0dGUuCisuVFAgCitcZkJcLVwtdmVyc2lvblxmUAorQWZmaWNoZSBsZSBudW3pcm8gZGUgdmVyc2lvbiBwdWlzIHF1aXR0ZS4KKy4KKy5TSCBPUFRJT05TCisuVFAgCitcZkJcLVwtdmVuZG9yXGZQXGZJIOlkaXRldXJcZlAKK0Fzc3VtZXMgdGhlIGN1cnJlbnQgdmVuZG9yIGlzIFxmSXZlbmRvclxmUCBpbnN0ZWFkIG9mIGRpc2NvdmVyaW5nIGl0IHdpdGggdGhlCitcZkJERUJfVkVORE9SXGZQIGVudmlyb25tZW50IHZhcmlhYmxlIG9yIFxmQi9ldGMvZHBrZy9vcmlnaW5zL2RlZmF1bHRcZlAuCisuCisuU0ggRU5WSVJPTk5FTUVOVAorLlRQIAorXGZCREVCX1ZFTkRPUlxmUAorQ2UgculnbGFnZSBk6WZpbml0IGwn6WRpdGV1ciAoq1wgdmVuZG9yXCC7KSBhY3R1ZWwuIFNpIGNldHRlIHZhbGV1ciBlc3QgdmlkZSwKK2xlIGNvbnRlbnUgZHUgZmljaGllciBcZkIvZXRjL2Rwa2cvb3JpZ2lucy9kZWZhdWx0XGZQIGVzdCB1dGlsaXPpLgorLgorLlNIIEFVVEVVUgorQ29weXJpZ2h0IFwoY28gMjAwOSBSYXBoYVxbOmVdbCBIZXJ0em9nCisuc3AKK0NlIHByb2dyYW1tZSBlc3QgdW4gbG9naWNpZWwgbGlicmVcIDsgdm95ZXogbGEgq1wgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2VcILsKK3ZlcnNpb24gMiBvdSBzdXDpcmlldXJlIHBvdXIgbGUgY29weXJpZ2h0LiBJbCBuJ3kgYSBQQVMgZGUgZ2FyYW50aWUuCisKKy5TSCBUUkFEVUNUSU9OCitBcmllbCBWQVJESSA8YXJpZWwudmFyZGlAZnJlZXNiZWUuZnI+LCAyMDAyLgorUGhpbGlwcGUgQmF0YWlsbGVyLCAyMDA2LgorTmljb2xhcyBGcmFu529pcywgMjAwNi4KK1ZldWlsbGV6IHNpZ25hbGVyIHRvdXRlIGVycmV1ciDgIDxkZWJpYW5cLWwxMG5cLWZyZW5jaEBsaXN0cy5kZWJpYW4ub3JnPi4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL2ZyL2Rwa2cuMSBiL2Rwa2ctMS4xNi4xLjEvbWFuL2ZyL2Rwa2cuMQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45NzJjYTc4Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vZnIvZHBrZy4xCkBAIC0wLDAgKzEsNzkyIEBACisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkcGtnIDEgMjAxMVwtMDhcLTE0ICJQcm9qZXQgRGViaWFuIiAic3VpdGUgZHBrZyIKKy5TSCBOT00KK2Rwa2cgXC0gdW4gZ2VzdGlvbm5haXJlIGRlIHBhcXVldCBwb3VyIERlYmlhbgorLgorLlNIIFNZTk9QU0lTCitcZkJkcGtnXGZQIFtcZklvcHRpb25cZlAuLi5dIFxmSWFjdGlvblxmUAorLgorLlNIIEFWRVJUSVNTRU1FTlQKK0NlIG1hbnVlbCBlc3QgZGVzdGlu6SBhdXggdXRpbGlzYXRldXJzIHF1aSBzb3VoYWl0ZW50IGFsbGVyIGF1XC1kZWzgIGRlIGxhCitjb21tYW5kZSBcZkJkcGtnIFwtXC1oZWxwXGZQIHBvdXIgbGEgY29tcHLpaGVuc2lvbiBkZXMgb3B0aW9ucyBkZSBsYSBsaWduZSBkZQorY29tbWFuZGUgZXQgZGVzIOl0YXRzIGRlcyBwYXF1ZXRzLgorCitMZXMgcmVzcG9uc2FibGVzIGRlIHBhcXVldCBxdWkgdmV1bGVudCBjb21wcmVuZHJlIGNvbW1lbnQgXGZCZHBrZ1xmUCBpbnN0YWxsZQorbGV1ciBwYXF1ZXQgXGZJbmUgZG9pdmVudCBwYXNcZlAgbCd1dGlsaXNlci4gTGVzIGRlc2NyaXB0aW9ucyBjb25jZXJuYW50CitsJ2luc3RhbGxhdGlvbiBvdSBsYSBk6XNpbnN0YWxsYXRpb24gZGVzIHBhcXVldHMgc29udCB0cuhzIGluc3VmZmlzYW50ZXMuCisuCisuU0ggREVTQ1JJUFRJT04KK1xmQmRwa2dcZlAgZXN0IHVuIG91dGlsIHBvdXIgbCdpbnN0YWxsYXRpb24sIGxhIGNy6WF0aW9uLCBsYSBzdXBwcmVzc2lvbiBldCBsYQorZ2VzdGlvbiBkZXMgcGFxdWV0cyBEZWJpYW4uIFxmQmFwdGl0dWRlXGZQKDEpIGVzdCBsYSBwcmluY2lwYWxlIGludGVyZmFjZSDgCitcZkJkcGtnXGZQIGV0IGxhIHBsdXMgYWdy6WFibGUgcG91ciBsJ3V0aWxpc2F0ZXVyLiAgXGZCZHBrZ1xmUCBsdWlcLW3qbWUgZXN0CitlbnRp6HJlbWVudCBjb250cvRs6SBwYXIgZGVzIHBhcmFt6HRyZXMgc3VyIGxhIGxpZ25lIGRlIGNvbW1hbmRlLiBVbmUKK2NvbW1hbmRlIGNvbXBvcnRlIGV4YWN0ZW1lbnQgdW5lIGFjdGlvbiBldCB66XJvIG91IHBsdXNpZXVycyBvcHRpb25zLiBMZQorcGFyYW3odHJlIKtcIGFjdGlvblwguyBkaXQgY2UgcXVlIFxmQmRwa2dcZlAgZG9pdCBmYWlyZSBldCBsZXMgb3B0aW9ucyBtb2RpZmllbnQKK2wnYWN0aW9uIGQndW5lIG1hbmnocmUgb3UgZCd1bmUgYXV0cmUuCisKK1xmQmRwa2dcZlAgY2FuIGFsc28gYmUgdXNlZCBhcyBhIGZyb250XC1lbmQgdG8gXGZCZHBrZ1wtZGViXGZQKDEpIGFuZAorXGZCZHBrZ1wtcXVlcnlcZlAoMSkuIFRoZSBsaXN0IG9mIHN1cHBvcnRlZCBhY3Rpb25zIGNhbiBiZSBmb3VuZCBsYXRlciBvbiBpbiB0aGUKK1xmQkFDVElPTlNcZlAgc2VjdGlvbi4gSWYgYW55IHN1Y2ggYWN0aW9uIGlzIGVuY291bnRlcmVkIFxmQmRwa2dcZlAganVzdCBydW5zCitcZkJkcGtnXC1kZWJcZlAgb3IgXGZCZHBrZ1wtcXVlcnlcZlAgd2l0aCB0aGUgcGFyYW1ldGVycyBnaXZlbiB0byBpdCwgYnV0IG5vCitzcGVjaWZpYyBvcHRpb25zIGFyZSBjdXJyZW50bHkgcGFzc2VkIHRvIHRoZW0sIHRvIHVzZSBhbnkgc3VjaCBvcHRpb24gdGhlCitiYWNrXC1lbmRzIG5lZWQgdG8gYmUgY2FsbGVkIGRpcmVjdGx5LgorLgorLlNIICJSRU5TRUlHTkVNRU5UUyBTVVIgTEVTIFBBUVVFVFMiCitcZkJkcGtnXGZQIGNvbnNlcnZlIGRlcyByZW5zZWlnbmVtZW50cyB1dGlsZXMgc3VyIGxlcyBwYXF1ZXRzIGRpc3BvbmlibGVzLgorQ2V0dGUgaW5mb3JtYXRpb24gZXN0IGRpdmlz6WUgZW4gdHJvaXMgY2xhc3Nlc1wgOiBsZXMg6XRhdHMsIGxlcyDpdGF0cyBkZSBsYQorc+lsZWN0aW9uIGV0IGxlcyBkcmFwZWF1eC4gTGEgbW9kaWZpY2F0aW9uIGRlIGNlcyB2YWxldXJzIGVzdCBwcmluY2lwYWxlbWVudAorZOl2b2x1ZSDgIFxmQmRzZWxlY3RcZlAuCisuU1MgIslUQVRTIERFUyBQQVFVRVRTIgorLlRQIAorXGZCbm90XC1pbnN0YWxsZWRcZlAKK0xlIHBhcXVldCBuJ2VzdCBwYXMgaW5zdGFsbOkgc3VyIGxlIHN5c3TobWUuCisuVFAgCitcZkJjb25maWdcLWZpbGVzXGZQCitTZXVscyBsZXMgZmljaGllcnMgZGUgY29uZmlndXJhdGlvbiBkdSBwYXF1ZXQgZXhpc3RlbnQgc3VyIGxlIHN5c3TobWUuCisuVFAgCitcZkJoYWxmXC1pbnN0YWxsZWRcZlAKK0wnaW5zdGFsbGF0aW9uIGR1IHBhcXVldCBhIGNvbW1lbmPpIG1haXMsIHBvdXIgdW5lIHJhaXNvbiBxdWVsY29ucXVlLCBuZQorcydlc3QgcGFzIHRlcm1pbullLgorLlRQIAorXGZCdW5wYWNrZWRcZlAKK0xlIHBhcXVldCBlc3QgZOlwYXF1ZXTpIG1haXMgbidlc3QgcGFzIGNvbmZpZ3Vy6S4KKy5UUCAKK1xmQmhhbGZcLWNvbmZpZ3VyZWRcZlAKK0xlIHBhcXVldCBlc3QgZOlwYXF1ZXTpIGV0IGxhIGNvbmZpZ3VyYXRpb24gYSBjb21tZW5j6SBtYWlzLCBwb3VyIHVuZQorcXVlbGNvbnF1ZSByYWlzb24sIG5lIHMnZXN0IHBhcyB0ZXJtaW7pZS4KKy5UUCAKK1xmQnRyaWdnZXJzXC1hd2FpdGVkXGZQCitMZSBwYXF1ZXQgYXR0ZW5kIGwnZXjpY3V0aW9uIGQndW5lIGFjdGlvbiBkaWZm6XLpZSBxdWkgZXN0IOAgbGEgY2hhcmdlIGQndW4KK2F1dHJlIHBhcXVldC4KKy5UUCAKK1xmQnRyaWdnZXJzXC1wZW5kaW5nXGZQCitVbmUgYWN0aW9uIGRpZmbpcullIGRlIGNlIHBhcXVldCBhIOl06SBhY3RpdullLCBpbCByZXN0ZSDgIGwnZXjpY3V0ZXIuCisuVFAgCitcZkJpbnN0YWxsZWRcZlAKK0xlIHBhcXVldCBlc3QgZOlwYXF1ZXTpIGV0IGNvcnJlY3RlbWVudCBjb25maWd1cukuCisuU1MgIslUQVRTIERFIExBIFPJTEVDVElPTiBERVMgUEFRVUVUUyIKKy5UUCAKK1xmQmluc3RhbGxcZlAKK0xlIHBhcXVldCBlc3Qgc+lsZWN0aW9ubukgcG91ciDqdHJlIGluc3RhbGzpLgorLlRQIAorXGZCaG9sZFxmUAorXGZCZHBrZ1xmUCBsYWlzc2UgZGUgY/R06SB1biBwYXF1ZXQgbWFycXXpIFxmQmhvbGRcZlAsIOAgbW9pbnMgcXUnaWwgbmUgc29pdCBsYW5j6QorYXZlYyBsJ29wdGlvbiBkZSBmb3LnYWdlIFxmQlwtXC1mb3JjZVwtaG9sZFxmUC4KKy5UUCAKK1xmQmRlaW5zdGFsbFxmUAorTGUgcGFxdWV0IGVzdCBz6WxlY3Rpb25u6SBwb3VyIOp0cmUgZOlzaW5zdGFsbOkgKGMuXC3gXC1kLiBxdSdvbiB2ZXV0CitzdXBwcmltZXIgdG91cyBsZXMgZmljaGllcnMg4CBsJ2V4Y2VwdGlvbiBkZXMgZmljaGllcnMgZGUgY29uZmlndXJhdGlvbikuCisuVFAgCitcZkJwdXJnZVxmUAorTGUgcGFxdWV0IGVzdCBz6WxlY3Rpb25u6SBwb3VyIOp0cmUgcHVyZ+kgKGMuXC3gXC1kLiBxdSdvbiB2ZXV0IHRvdXQgc3VwcHJpbWVyCitkYW5zIGxlcyBy6XBlcnRvaXJlIGR1IHN5c3TobWUgbeptZSBsZXMgZmljaGllcnMgZGUgY29uZmlndXJhdGlvbikuCisuU1MgIkRSQVBFQVVYIERFUyBQQVFVRVRTIgorLlRQIAorXGZCcmVpbnN0XC1yZXF1aXJlZFxmUAorVW4gcGFxdWV0IG1hcnF16SBcZkJyZWluc3RcLXJlcXVpcmVkXGZQIGVzdCBk6WZlY3R1ZXV4IGV0IGRlbWFuZGUgdW5lCity6Wluc3RhbGxhdGlvbi4gXGZCZHBrZ1xmUCBuZSBwZXV0IHN1cHByaW1lciBkZSB0ZWxzIHBhcXVldHMsIOAgbW9pbnMgcXUnaWwgbmUKK3NvaXQgbGFuY+kgYXZlYyBsJ29wdGlvbiBkZSBmb3LnYWdlIFxmQlwtXC1mb3JjZVwtcmVtb3ZlXC1yZWluc3RyZXFcZlAuCisuCisuU0ggQUNUSU9OUworLlRQIAorXGZCXC1pXGZQLCBcZkJcLVwtaW5zdGFsbFxmUCBcZklwYWNrYWdlXC1maWxlXGZQLi4uCitJbnN0YWxsIHRoZSBwYWNrYWdlLiBJZiBcZkJcLVwtcmVjdXJzaXZlXGZQIG9yIFxmQlwtUlxmUCBvcHRpb24gaXMgc3BlY2lmaWVkLAorXGZJcGFja2FnZVwtZmlsZVxmUCBtdXN0IHJlZmVyIHRvIGEgZGlyZWN0b3J5IGluc3RlYWQuCisKK0wnaW5zdGFsbGF0aW9uIGNvbXBvcnRlIGxlcyDpdGFwZXMgc3VpdmFudGVzXCA6CisuYnIKKworXGZCMS5cZlAgRXh0cmFjdGlvbiBkZXMgZmljaGllcnMgZGUgY29udHL0bGUgZHUgbm91dmVhdSBwYXF1ZXQuCisuYnIKKworXGZCMi5cZlAgUXVhbmQgdW5lIGFuY2llbm5lIHZlcnNpb24gZHUgbeptZSBwYXF1ZXQgZXN0IGTpauAgaW5zdGFsbOllLAorZXjpY3V0aW9uIGR1IHNjcmlwdCBcZklwcmVybVxmUCBkZSBsJ2FuY2llbiBwYXF1ZXQuCisuYnIKKworXGZCMy5cZlAgTGFuY2VtZW50IGR1IHNjcmlwdCBcZklwcmVpbnN0XGZQLCBzJ2lsIGVzdCBmb3VybmkgcGFyIGxlIHBhcXVldC4KKy5icgorCitcZkI0LlxmUCBE6XBhcXVldGFnZSBkZXMgbm91dmVhdXggZmljaGllcnMgZXQsIGVuIG3qbWUgdGVtcHMsIHNhdXZlZ2FyZGUgZGVzCithbmNpZW5zIGRlIG1hbmnocmUg4CBwb3V2b2lyIGxlcyByZXN0YXVyZXIgc2kgcXVlbHF1ZSBjaG9zZSB0b3VybmUgbWFsLgorLmJyCisKK1xmQjUuXGZQIFF1YW5kIHVuZSBhbmNpZW5uZSB2ZXJzaW9uIGR1IG3qbWUgcGFxdWV0IGVzdCBk6WrgIGluc3RhbGzpZSwKK2V46WN1dGlvbiBkdSBzY3JpcHQgXGZJcG9zdHJtXGZQIGRlIGwnYW5jaWVuIHBhcXVldC4gSWwgZmF1dCByZW1hcnF1ZXIgcXVlIGNlCitzY3JpcHQgZXN0IGV46WN1dOkgYXBy6HMgbGUgc2NyaXB0IFxmSXByZWluc3RcZlAgZHUgbm91dmVhdSBwYXF1ZXQsIHBhcmNlIHF1ZQorbGVzIG5vdXZlYXV4IGZpY2hpZXJzIHNvbnQg6WNyaXRzIGRhbnMgbGUgbeptZSB0ZW1wcyBxdWUgbGVzIGFuY2llbnMgc29udAorc3VwcHJpbelzLgorLmJyCisKK1xmQjYuXGZQIENvbmZpZ3VyYXRpb24gZHUgcGFxdWV0LiBWb3lleiBsJ2FjdGlvbiBcZkJcLVwtY29uZmlndXJlXGZQIHBvdXIgc2F2b2lyCitjb21tZW50IGNlbGEgc2UgcGFzc2UuCisuVFAgCitcZkJcLVwtdW5wYWNrIFxmUFxmSXBhY2thZ2VcLWZpbGVcZlAuLi4KK1VucGFjayB0aGUgcGFja2FnZSwgYnV0IGRvbid0IGNvbmZpZ3VyZSBpdC4gSWYgXGZCXC1cLXJlY3Vyc2l2ZVxmUCBvciBcZkJcLVJcZlAKK29wdGlvbiBpcyBzcGVjaWZpZWQsIFxmSXBhY2thZ2VcLWZpbGVcZlAgbXVzdCByZWZlciB0byBhIGRpcmVjdG9yeSBpbnN0ZWFkLgorLlRQIAorXGZCXC1cLWNvbmZpZ3VyZSBcZlBcZklwYXF1ZXRcZlAuLi58XGZCXC1hXGZQfFxmQlwtXC1wZW5kaW5nXGZQCitSZWNvbmZpZ3VyYXRpb24gZCd1biBwYXF1ZXQgZOlwYXF1ZXTpIG1haXMgbm9uIGVuY29yZSBjb25maWd1cukuIFNpIGwnb3B0aW9uCitcZkJcLWFcZlAgb3UgXGZCXC1cLXBlbmRpbmdcZlAgZXN0IHV0aWxpc+llIGF1IGxpZXUgZGUgXGZJcGFxdWV0XGZQLCB0b3VzIGxlcyBwYXF1ZXRzCitk6XBhcXVldOlzIG1haXMgbm9uIGNvbmZpZ3Vy6XMgc29udCBjb25maWd1culzLgorCitQb3VyIHJlY29uZmlndXJlciB1biBwYXF1ZXQgcXVpIGwnYSBk6WrgIOl06Swgdm91cyBkZXZyaWV6IHBsdXT0dCB1dGlsaXNlcgorbGEgY29tbWFuZGUgXGZCZHBrZ1wtcmVjb25maWd1cmVcZlAoOCkuCisKK0xhIGNvbmZpZ3VyYXRpb24gY29tcG9ydGUgbGVzIOl0YXBlcyBzdWl2YW50ZXNcIDoKKy5icgorCitcZkIxLlxmUCBE6XBhcXVldGFnZSBkZXMgZmljaGllcnMgZGUgY29uZmlndXJhdGlvbiwgZXQgZGFucyBsZSBt6m1lIHRlbXBzCitzYXV2ZWdhcmRlIGRlcyBhbmNpZW5zIGZpY2hpZXJzIGRlIGNvbmZpZ3VyYXRpb24sIGRlIG1hbmnocmUg4CBwb3V2b2lyIGxlcworcmVzdGF1cmVyIHNpIHF1ZWxxdWUgY2hvc2Ugc2UgcGFzc2UgbWFsLgorLmJyCisKK1xmQjIuXGZQIEV46WN1dGlvbiBkdSBzY3JpcHQgXGZCcG9zdGluc3RcZlAsIHMnaWwgZXN0IGZvdXJuaSBwYXIgbGUgcGFxdWV0LgorLlRQIAorXGZCXC1cLXRyaWdnZXJzXC1vbmx5XGZQIFxmSXBhcXVldFxmUCAuLi58XGZCXC1hXGZQIHwgXGZCXC1cLXBlbmRpbmdcZlAKK04nZXjpY3V0ZSBxdWUgbGVzIGFjdGlvbnMgZGlmZuly6WVzLiBUb3V0ZXMgbGVzIGFjdGlvbnMgZGlmZuly6WVzIGVuIGF0dGVudGUKK3Nlcm9udCB0cmFpdOllcy4gU2kgZGVzIG5vbXMgZGVzIHBhcXVldHMgc29udCBmb3VybmlzLCBsZXMgYWN0aW9ucyBkaWZm6XLpZXMKK2RlIGNlcyBwYXF1ZXRzIHNlcm9udCB0cmFpdOllcywgdW5lIGZvaXMgY2hhY3VuZSBsb3JzcXVlCitu6WNlc3NhaXJlLiBMJ3V0aWxpc2F0aW9uIGRlIGNldHRlIG9wdGlvbiBwZXV0IGxhaXNzZXIgZGVzIHBhcXVldHMgZGFucyBsZXMKK+l0YXRzIGluY29ycmVjdHMgZGUgXGZCdHJpZ2dlcnNcLWF3YWl0ZWRcZlAgZXQgZGUgXGZCdHJpZ2dlcnNcLXBlbmRpbmdcZlAuIENlbGEgcGV1dAor6nRyZSBjb3JyaWfpIHBsdXMgdGFyZCBlbiBleOljdXRhbnRcIDogXGZCZHBrZyBcLVwtY29uZmlndXJlIFwtXC1wZW5kaW5nXGZQLgorLlRQIAorXGZCXC1yXGZQLCBcZkJcLVwtcmVtb3ZlXGZQLCBcZkJcLVBcZlAsIFxmQlwtXC1wdXJnZSBcZlBcZklwYXF1ZXRcZlAuLi58XGZCXC1hXGZQfFxmQlwtXC1wZW5kaW5nXGZQCitTdXBwcmltZSB1biBwYXF1ZXQgaW5zdGFsbOkuIEwnYWN0aW9uIFxmQlwtclxmUCBvdSBcZkJcLVwtcmVtb3ZlXGZQIHN1cHByaW1lIHRvdXQKK3NhdWYgbGVzIGZpY2hpZXJzIGRlIGNvbmZpZ3VyYXRpb24uIENlbGEgcGV1dCDpdml0ZXIgbGEgcmVjb25maWd1cmF0aW9uIGR1CitwYXF1ZXQgbG9ycyBkJ3VuZSBy6Wluc3RhbGxhdGlvbi4gTGVzIGZpY2hpZXJzIGRlIGNvbmZpZ3VyYXRpb24gc29udCBsZXMKK2ZpY2hpZXJzIHLpcGVydG9yaelzIGRhbnMgbGUgZmljaGllciBkZSBjb250cvRsZQorXGZJZGViaWFuL2NvbmZmaWxlc1xmUC4gTCdvcHRpb24gXGZCXC1QXGZQIG91IFxmQlwtXC1wdXJnZVxmUCBzdXBwcmltZSB0b3V0LCB5IGNvbXByaXMKK2xlcyBmaWNoaWVycyBkZSBjb25maWd1cmF0aW9uLiBTaSBsJ29uIGRvbm5lIGwnb3B0aW9uIFxmQlwtYVxmUCBvdSBcZkJcLVwtcGVuZGluZ1xmUAor4CBsYSBwbGFjZSBkJ3VuIG5vbSBkZSBwYXF1ZXQsIHRvdXMgbGVzIHBhcXVldHMgbm9uIGTpcGFxdWV06XMsIG1haXMgcXVpCitzb250IG1hcnF16XMgY29tbWUgZGV2YW50IOp0cmUgc3VwcHJpbelzIG91IHB1cmfpcyBkYW5zIGxlIGZpY2hpZXIKK1xmSS92YXIvbGliL2Rwa2cvc3RhdHVzXGZQLCBzb250IHJlc3BlY3RpdmVtZW50IHN1cHByaW3pcyBvdQorcHVyZ+lzLiBOb3RlXCA6XCBjZXJ0YWlucyBmaWNoaWVycyBkZSBjb25maWd1cmF0aW9uIHBldXZlbnQg6nRyZSBpbmNvbm51cyBkZQorXGZCZHBrZ1xmUCBjYXIgaWxzIHNvbnQgY3Lp6XMgZXQgZ+ly6XMg4CBwYXJ0LCB2aWEgbGVzIHNjcmlwdHMgZGUKK2NvbmZpZ3VyYXRpb24uIERhbnMgY2UgY2FzLCBcZkJkcGtnXGZQIG5lIGxlcyBzdXBwcmltZXJhIHBhcyBsdWlcLW3qbWUgZXQgbGUKK3NjcmlwdCBcZklwb3N0cm1cZlAgZHUgcGFxdWV0IChxdWkgZXN0IGFwcGVs6SBwYXIgXGZCZHBrZ1xmUCkgZG9pdCBzJ29jY3VwZXIgZGUKK2xldXIgc3VwcHJlc3Npb24uIEJpZW4gZW50ZW5kdSwgY2VsYSBuZSBzJ2FwcGxpcXVlIHF1J2F1eCBmaWNoaWVycyBzaXR16XMKK2RhbnMgbGVzIHLpcGVydG9pcmVzIGR1IHN5c3TobWUsIHBhcyDgIGNldXggZXhpc3RhbnQgZGFucyBsZXMgculwZXJ0b2lyZXMKK3BlcnNvbm5lbHMgZGVzIHV0aWxpc2F0ZXVycy4KKworTGEgc3VwcHJlc3Npb24gZCd1biBwYXF1ZXQgY29tcG9ydGUgbGVzIOl0YXBlcyBzdWl2YW50ZXNcIDoKKy5icgorCitcZkIxLlxmUCBMYW5jZW1lbnQgZHUgc2NyaXB0IFxmSXByZXJtXGZQCisuYnIKKworXGZCMi5cZlAgU3VwcHJlc3Npb24gZGVzIGZpY2hpZXJzIGluc3RhbGzpcworLmJyCisKK1xmQjMuXGZQIGxhbmNlbWVudCBkdSBzY3JpcHQgXGZJcG9zdHJtXGZQCisuYnIKKy5UUCAKK1xmQlwtXC11cGRhdGVcLWF2YWlsXGZQLCBcZkJcLVwtbWVyZ2VcLWF2YWlsXGZQIFxmSWZpY2hpZXJcLVBhcXVldHNcZlAKK01ldCDgIGpvdXIgbCdpbmZvcm1hdGlvbiBkZSBcZkJkcGtnXGZQIGV0IGRlIFxmQmRzZWxlY3RcZlAgc3VyIGxlcyBwYXF1ZXRzCitkaXNwb25pYmxlcy4gTCdhY3Rpb24gXGZCXC1cLW1lcmdlXC1hdmFpbFxmUCBjb21iaW5lIGxlcyBpbmZvcm1hdGlvbnMgYW5jaWVubmVzCithdmVjIGNlbGxlcyBxdWkgcHJvdmllbm5lbnQgZHUgZmljaGllciBcZklmaWNoaWVyXC1QYWNrYWdlc1xmUC4gTCdhY3Rpb24KK1xmQlwtXC11cGRhdGVcLWF2YWlsXGZQIHJlbXBsYWNlIGxlcyBpbmZvcm1hdGlvbnMgYW5jaWVubmVzIHBhciBjZWxsZXMgcXVpCitwcm92aWVubmVudCBkdSBmaWNoaWVyIFxmSWZpY2hpZXJcLVBhY2thZ2VzXGZQLiBMZSBmaWNoaWVyIFxmSWZpY2hpZXJcLVBhY2thZ2VzXGZQCitkaXN0cmlidekgYXZlYyBEZWJpYW4gZXN0IGFwcGVs6SBzaW1wbGVtZW50IFxmSVBhY2thZ2VzXGZQLiBcZkJkcGtnXGZQIGdhcmRlIHNvbgorcHJvcHJlIGVucmVnaXN0cmVtZW50IGRlcyBwYXF1ZXRzIGRpc3BvbmlibGVzIGRhbnMKK1xmSS92YXIvbGliL2Rwa2cvYXZhaWxhYmxlXGZQLgorCitBIGNvbW1hbmRlIHVuaXF1ZSBwbHVzIHNpbXBsZSBwZXJtZXR0YW50IGRlIHLpY3Vw6XJlciBldCBtZXR0cmUg4CBqb3VyIGxlCitmaWNoaWVyIFxmSWF2YWlsYWJsZVxmUCBlc3QgXGZCZHNlbGVjdCB1cGRhdGVcZlAuIFZldWlsbGV6IG5vdGVyIHF1ZSBjZSBmaWNoaWVyCitlc3Qg4CBwZXUgcHLocyBpbnV0aWxlIHNpIHZvdXMgbid1dGlsaXNleiBwYXMgXGZCZHNlbGVjdFxmUCBtYWlzIHVuZSBpbnRlcmZhY2UKK2Jhc+llIHN1ciBBUFQuIEFQVCBjb21wb3J0ZSBlbiBlZmZldCBzb24gcHJvcHJlIG3pY2FuaXNtZSBwb3VyIHN1aXZyZSBsZXMKK3BhcXVldHMgZGlzcG9uaWJsZXMuCisuVFAgCitcZkJcLUFcZlAsIFxmQlwtXC1yZWNvcmRcLWF2YWlsXGZQIFxmSXBhY2thZ2VcLWZpbGVcZlAuLi4KK1VwZGF0ZSBcZkJkcGtnXGZQIGFuZCBcZkJkc2VsZWN0XGZQJ3MgaWRlYSBvZiB3aGljaCBwYWNrYWdlcyBhcmUgYXZhaWxhYmxlIHdpdGgKK2luZm9ybWF0aW9uIGZyb20gdGhlIHBhY2thZ2UgXGZJcGFja2FnZVwtZmlsZVxmUC4gSWYgXGZCXC1cLXJlY3Vyc2l2ZVxmUCBvciBcZkJcLVJcZlAKK29wdGlvbiBpcyBzcGVjaWZpZWQsIFxmSXBhY2thZ2VcLWZpbGVcZlAgbXVzdCByZWZlciB0byBhIGRpcmVjdG9yeSBpbnN0ZWFkLgorLlRQIAorXGZCXC1cLWZvcmdldFwtb2xkXC11bmF2YWlsXGZQCitE6XNvcm1haXMgXGZCb2Jzb2zodGVcZlAgZXQgc2FucyBlZmZldCBjYXIgXGZCZHBrZ1xmUCBvdWJsaWUgYXV0b21hdGlxdWVtZW50IGxlcworcGFxdWV0cyBk6XNpbnN0YWxs6XMgcXVpIG5lIHNvbnQgcGFzIGRpc3BvbmlibGVzLgorLlRQIAorXGZCXC1cLWNsZWFyXC1hdmFpbFxmUAorRWZmYWNlIGxlcyByZW5zZWlnbmVtZW50cyBleGlzdGFudHMgc3VyIGxlcyBwYXF1ZXRzIGRpc3BvbmlibGVzLgorLlRQIAorXGZCXC1DXGZQLCBcZkJcLVwtYXVkaXRcZlAKK1JlY2hlcmNoZSBsZXMgcGFxdWV0cyBxdWkgbidvbnQg6XTpIHF1ZSBwYXJ0aWVsbGVtZW50IGluc3RhbGzpcyBzdXIgbGUKK3N5c3TobWUuIFxmQmRwa2dcZlAgc3VnZ+hyZSB1bmUgbWFuaehyZSBkZSBsZXMgZmFpcmUgZm9uY3Rpb25uZXIuCisuVFAgCitcZkJcLVwtZ2V0XC1zZWxlY3Rpb25zXGZQIFtcZkltb3RpZlwtbm9tXC1wYXF1ZXRcZlAuLi5dCitPYnRpZW50IGxhIGxpc3RlIGRlcyBz6WxlY3Rpb25zIGRlcyBwYXF1ZXRzLCBldCBsJ2Vudm9pZSBzdXIgbGEgc29ydGllCitzdGFuZGFyZC4gU2FucyB1biBtb3RpZiwgbGVzIHBhcXVldHMgbm9uIGluc3RhbGzpcyAoYydlc3Qg4CBkaXJlIGNldXggcXVpCitvbnQg6XTpIHBy6WPpZGVtbWVudCBwdXJn6XMpIG5lIHNlcm9udCBwYXMgYWZmaWNo6XMuCisuVFAgCitcZkJcLVwtc2V0XC1zZWxlY3Rpb25zXGZQCitTZXQgcGFja2FnZSBzZWxlY3Rpb25zIHVzaW5nIGZpbGUgcmVhZCBmcm9tIHN0ZGluLiBUaGlzIGZpbGUgc2hvdWxkIGJlIGluCit0aGUgZm9ybWF0ICdcZklwYWNrYWdlXGZQIFxmSXN0YXRlXGZQJywgd2hlcmUgc3RhdGUgaXMgb25lIG9mIFxmQmluc3RhbGxcZlAsIFxmQmhvbGRcZlAsCitcZkJkZWluc3RhbGxcZlAgb3IgXGZCcHVyZ2VcZlAuIEJsYW5rIGxpbmVzIGFuZCBjb21tZW50IGxpbmVzIGJlZ2lubmluZyB3aXRoICcjJworYXJlIGFsc28gcGVybWl0dGVkLgorLlRQIAorXGZCXC1cLWNsZWFyXC1zZWxlY3Rpb25zXGZQCitNZXQgbCfpdGF0IGRlIGNoYXF1ZSBwYXF1ZXQgbm9uIGVzc2VudGllbCDgIKtcIGRlaW5zdGFsbFwguy4gSWwgZmF1dCB1dGlsaXNlcgorY2V0dGUgb3B0aW9uIGp1c3RlIGF2YW50IFwtXC1zZXRcLXNlbGVjdGlvbnMsIHBvdXIgZOlzaW5zdGFsbGVyIGxlcyBwYXF1ZXRzIHF1aQorbmUgc29udCBwYXMgYWZmaWNo6XMgcGFyIFwtXC1zZXRcLXNlbGVjdGlvbnMuCisuVFAgCitcZkJcLVwteWV0XC10b1wtdW5wYWNrXGZQCitSZWNoZXJjaGUgbGVzIHBhcXVldHMgcXVpIG9udCDpdOkgc+lsZWN0aW9ubulzIHBvdXIgbCdpbnN0YWxsYXRpb24sIG1haXMgcXVpCitwb3VyIHVuZSByYWlzb24gcXVlbGNvbnF1ZSwgbmUgc29udCBwYXMgZW5jb3JlIGluc3RhbGzpcy4KKy5UUCAKKy5UUCAKK1xmQlwtXC1wcmludFwtYXJjaGl0ZWN0dXJlXGZQCitBZmZpY2hlIGwnYXJjaGl0ZWN0dXJlIGRlcyBwYXF1ZXRzIGluc3RhbGzpcyAocGFyIGV4ZW1wbGUsIKtcIGkzODZcILspLgorLlRQIAorXGZCXC1cLWNvbXBhcmVcLXZlcnNpb25zIFxmUFxmSXZlcjEgb3AgdmVyMlxmUAorQ29tcGFyZSBkZXMgbnVt6XJvcyBkZSB2ZXJzaW9uLCBv+SBcZklvcFxmUCBlc3QgdW4gb3DpcmF0ZXVyIGJpbmFpcmUuIFxmQmRwa2dcZlAKK3JldG91cm5lIHVuIHrpcm8gc2kgbGEgY29uZGl0aW9uIHNw6WNpZmnpZSBlc3QgdulyaWZp6WUsIGV0IHJldG91cm5lIHVuCitub21icmUgZGlmZulyZW50IGRlIHrpcm8gZGFucyBsZSBjYXMgY29udHJhaXJlLiBJbCB5IGEgZGV1eCBncm91cGVzCitkJ29w6XJhdGV1cnNcIDsgaWxzIGRpZmbocmVudCBwYXIgbGV1ciBmYedvbiBkZSB0cmFpdGVyIGwnYWJzZW5jZSBkZSBcZkl2ZXIxXGZQCitvdSBkZSBcZkl2ZXIyXGZQLiBQb3VyIGxlcyBvcOlyYXRldXJzIHN1aXZhbnRzLCBcZkJsdCBsZSBlcSBuZSBnZSBndFxmUCwgbCdhYnNlbmNlCitkJ3VuZSB2ZXJzaW9uIGVzdCBjb25zaWTpcullIGNvbW1lIGluZulyaWV1cmUg4CB0b3V0ZSB2ZXJzaW9uXCA7IHBvdXIgbGVzCitvcOlyYXRldXJzIFxmQmx0XC1ubCBsZVwtbmwgZ2VcLW5sIGd0XC1ubFxmUCwgbCdhYnNlbmNlIGQndW5lIHZlcnNpb24gZXN0Citjb25zaWTpcullIGNvbW1lIHN1cOlyaWV1cmUg4CB0b3V0ZSB2ZXJzaW9uLiBMZXMgb3DpcmF0ZXVycyBcZkI8Cis8PCA8PSA9ID49ID4+ID5cZlAgbmUgc29udCBmb3VybmlzIHF1ZSBwb3VyIGxhCitjb21wYXRpYmlsaXTpIGF2ZWMgbGEgc3ludGF4ZSBkdSBmaWNoaWVyIGRlIGNvbnRy9GxlLgorLlRQIAorXGZCXC1cLWNvbW1hbmRcLWZkIFxmUFxmSW5cZlAKK0FjY2VwdCBhIHNlcmllcyBvZiBjb21tYW5kcyBvbiBpbnB1dCBmaWxlIGRlc2NyaXB0b3IgXGZJblxmUC4gTm90ZTogYWRkaXRpb25hbAorb3B0aW9ucyBzZXQgb24gdGhlIGNvbW1hbmQgbGluZSwgYW5kIHRocm91Z2ggdGhpcyBmaWxlIGRlc2NyaXB0b3IsIGFyZSBub3QKK3Jlc2V0IGZvciBzdWJzZXF1ZW50IGNvbW1hbmRzIGV4ZWN1dGVkIGR1cmluZyB0aGUgc2FtZSBydW4uCisuVFAgCitcZkJcLVwtaGVscFxmUAorQWZmaWNoZSB1biBjb3VydCBtZXNzYWdlIGQnYWlkZS4KKy5UUCAKK1xmQlwtXC1mb3JjZVwtaGVscFxmUAorRG9ubmUgZGVzIHJlbnNlaWduZW1lbnRzIHN1ciBsZXMgb3B0aW9ucyBcZkJcLVwtZm9yY2VcLVxmUFxmSXF1ZWxxdWVcLWNob3NlXGZQLgorLlRQIAorXGZCXC1EaFxmUCwgXGZCXC1cLWRlYnVnPWhlbHBcZlAKK2Rvbm5lIGRlcyByZW5zZWlnbmVtZW50cyBzdXIgbGVzIG9wdGlvbnMgZGUgZOlib2dhZ2UuCisuVFAgCitcZkJcLVwtdmVyc2lvblxmUAorQWZmaWNoZSBsYSB2ZXJzaW9uIGRlIFxmQmRwa2dcZlAuCisuVFAgCitcZkJkcGtnXC1kZWIgYWN0aW9uc1xmUAorVm95ZXogXGZCZHBrZ1wtZGViXGZQKDEpIHBvdXIgZGVzIHJlbnNlaWduZW1lbnRzIHN1cHBs6W1lbnRhaXJlcyBzdXIgbGVzIGFjdGlvbnMKK3N1aXZhbnRlcy4KKworLm5mCitcZkJcLWJcZlAsIFxmQlwtXC1idWlsZFxmUCBcZkly6XBlcnRvaXJlXGZQIFtcZklhcmNoaXZlXGZQfFxmSXLpcGVydG9pcmVcZlBdCisgICAgQ29uc3RydWl0IHVuIHBhcXVldCBkZWIuCitcZkJcLWNcZlAsIFxmQlwtXC1jb250ZW50c1xmUCBcZklhcmNoaXZlXGZQCisgICAgTGlzdGUgbGUgY29udGVudSBkJ3VuIHBhcXVldCBkZWIuCitcZkJcLWVcZlAsIFxmQlwtXC1jb250cm9sXGZQIFxmSW5vbVwtZGVcLWZpY2hpZXJcZlAgW1xmSXLpcGVydG9pcmVcZlBdCisgICAgRXh0cmFpdCBsZXMgaW5mb3JtYXRpb25zIGRlIGNvbnRy9GxlIGQndW4gcGFxdWV0LgorXGZCXC14XGZQLCBcZkJcLVwtZXh0cmFjdFxmUCBcZkly6XBlcnRvaXJlIGRlIGwnYXJjaGl2ZVxmUAorICAgIEV4dHJhaXQgZXQgYWZmaWNoZSBsZXMgZmljaGllcnMgY29udGVudXMgZGFucyB1biBwYXF1ZXQuCitcZkJcLWZcZlAsIFxmQlwtXC1maWVsZFxmUCBcZklub21cLWRlXC1maWNoaWVyXGZQIFtcZkljaGFtcCBkZSBjb250cvRsZVxmUF0gLi4uCisgICAgQWZmaWNoZSBsZShzKSBjaGFtcChzKSBkZSBjb250cvRsZSBkJ3VuIHBhcXVldC4KK1xmQlwtXC1mc3lzXC10YXJmaWxlXGZQIFxmSWFyY2hpdmVcZlAKKyAgICBBZmZpY2hlIGxlIGNvbnRlbnUgZHUgZmljaGllciCrXCB0YXJcILsgZCd1biBwYXF1ZXQgRGViaWFuLgorXGZCXC1JXGZQLCBcZkJcLVwtaW5mb1xmUCBcZklub21cLWRlXC1maWNoaWVyXGZQIFtcZklmaWNoaWVyIGRlIGNvbnRy9GxlXGZQXQorICAgIEFmZmljaGUgZGVzIHJlbnNlaWduZW1lbnRzIHN1ciB1biBwYXF1ZXQuCisuZmkKKworLlRQIAorXGZCZHBrZ1wtcXVlcnkgYWN0aW9uc1xmUAorVm95ZXogXGZCZHBrZ1wtcXVlcnlcZlAoMSkgcG91ciBkYXZhbnRhZ2UgZCdleHBsaWNhdGlvbnMgc3VyIGxlcyBhY3Rpb25zCitzdWl2YW50ZXMuCisKKy5uZgorCitcZkJcLWxcZlAsIFxmQlwtXC1saXN0XGZQIFxmSW1vdGlmXC1kdVwtbm9tXC1kdVwtcGFxdWV0XGZQIC4uLgorICAgIEFmZmljaGUgbGEgbGlzdGUgZGVzIHBhcXVldHMgcXVpIGNvcnJlc3BvbmRlbnQgYXUgbW90aWYuCitcZkJcLXNcZlAsIFxmQlwtXC1zdGF0dXNcZlAgXGZJbm9tXC1kdVwtcGFxdWV0XGZQIC4uLgorICAgIERvbm5lIGwn6XRhdCBkdSBwYXF1ZXQgaW5kaXF16S4KK1xmQlwtTFxmUCwgXGZCXC1cLWxpc3RmaWxlc1xmUCBcZklub21cLXBhcXVldFxmUCAuLi4KKyAgICBBZmZpY2hlIGxhIGxpc3RlIGRlcyBmaWNoaWVycyBpbnN0YWxs6XMgcXVpIGFwcGFydGllbm5lbnQKKyAgICDgIFxmSXBhcXVldFxmUC4KK1xmQlwtU1xmUCwgXGZCXC1cLXNlYXJjaFxmUCBcZkltb3RpZlwtZHVcLWZpY2hpZXJcLeBcLXJlY2hlcmNoZXJcZlAgLi4uCisgICAgUmVjaGVyY2hlIHVuIGZpY2hpZXIgZGFucyBsZXMgcGFxdWV0cyBpbnN0YWxs6XMuCitcZkJcLXBcZlAsIFxmQlwtXC1wcmludFwtYXZhaWxcZlAgXGZJbm9tXC1kdVwtcGFxdWV0XGZQCisgICAgQWZmaWNoZSBsZXMgaW5mb3JtYXRpb25zIHRyb3V26WVzIGRhbnMgXGZJL3Zhci9saWIvZHBrZy9hdmFpbGFibGVcZlAKKyAgICDgIHByb3BvcyBkZSBcZklwYXF1ZXRcZlAuIExlcyB1dGlsaXNhdGV1cnMgZGVzIGludGVyZmFjZXMg4CBBUFQKKyAgICBkZXZyYWllbnQgcGx1dPR0IHV0aWxpc2VyIFxmQmFwdFwtY2FjaGUgc2hvd1xmUCBcZklub21cLWR1XC1wYXF1ZXRcZlAuCisuZmkKKy4KKy5TSCBPUFRJT05TCitPbiBwZXV0IHNw6WNpZmllciB1bmUgb3B0aW9uIOAgbGEgZm9pcyBzdXIgbGEgbGlnbmUgZGUgY29tbWFuZGUgZXQgZGFucyBsZQorZmljaGllciBkZSBjb25maWd1cmF0aW9uIGRlIFxmQmRwa2dcZlAsIFxmSS9ldGMvZHBrZy9kcGtnLmNmZ1xmUCBvdSBkYW5zIGxlcworZmljaGllcnMgZHUgculwZXJ0b2lyZSBkZSBjb25maWd1cmF0aW9uIFxmSS9ldGMvZHBrZy9kcGtnLmNmZy5kL1xmUC4gQ2hhcXVlCitsaWduZSBkZSBjZSBmaWNoaWVyIGVzdCBzb2l0IHVuZSBvcHRpb24gKGlkZW50aXF1ZSDgIHVuZSBvcHRpb24gZW4gbGlnbmUgZGUKK2NvbW1hbmRlIG1haXMgc2FucyB0aXJldCksIHNvaXQgdW4gY29tbWVudGFpcmUsIGNvbW1lbudhbnQgcGFyIFxmQiNcZlAuCisuYnIKKy5UUCAKK1xmQlwtXC1hYm9ydFwtYWZ0ZXI9XGZQXGZJbm9tYnJlXGZQCitNb2RpZmllIGxlIG5vbWJyZSBkJ2VycmV1cnMgYXUgZGVs4CBkdXF1ZWwgXGZCZHBrZ1xmUCBzJ2Fycup0ZS4gSWwgZXN0IHBhcgorZOlmYXV0IOlnYWwg4CA1MC4KKy5UUCAKK1xmQlwtQlxmUCwgXGZCXC1cLWF1dG9cLWRlY29uZmlndXJlXGZQCitRdWFuZCB1biBwYXF1ZXQgZXN0IHN1cHByaW3pLCBpbCBwZXV0IGFycml2ZXIgcXUndW4gcGFxdWV0IGluc3RhbGzpCitk6XBlbmRhaXQgZHUgcGFxdWV0IHN1cHByaW3pLiBFbiBzcOljaWZpYW50IGNldHRlIG9wdGlvbiwgb24gb2J0aWVudCBsYQorZOljb25maWd1cmF0aW9uIGF1dG9tYXRpcXVlIGR1IHBhcXVldCBxdWkgZOlwZW5kYWl0IGR1IHBhcXVldCBzdXBwcmlt6S4KKy5UUCAKK1xmQlwtRFxmUFxmSW9jdGFsXGZQXGZCLCBcLVwtZGVidWc9XGZQXGZJb2N0YWxcZlAKK0RlbWFuZGUgZGUgZOlib2dhZ2UuIFxmSW9jdGFsXGZQIGVzdCBmb3Jt6SBlbiBmYWlzYW50IHVuIKtcIG91XCC7IGxvZ2lxdWUgZW50cmUKK2RlcyB2YWxldXJzIHNvdWhhaXTpZXMgYXBwYXJ0ZW5hbnQg4CBsYSBsaXN0ZSBjaVwtZGVzc291cyAobm90ZXogcXVlIGNlcwordmFsZXVycyBwb3Vycm9udCBjaGFuZ2VyIGRhbnMgbGVzIHByb2NoYWluZXMgdmVyc2lvbnMpLiBcZkJcLURoXGZQIG91CitcZkJcLVwtZGVidWc9aGVscFxmUCBhZmZpY2hlIGNlcyB2YWxldXJzIGRlIGTpYm9nYWdlLgorCisgICAgTnVtYmVyICAgRGVzY3JpcHRpb24KKyAgICAgICAgIDEgICBHZW5lcmFsbHkgaGVscGZ1bCBwcm9ncmVzcyBpbmZvcm1hdGlvbgorICAgICAgICAgMiAgIEludm9jYXRpb24gYW5kIHN0YXR1cyBvZiBtYWludGFpbmVyIHNjcmlwdHMKKyAgICAgICAgMTAgICBPdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWQKKyAgICAgICAxMDAgICBMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZAorICAgICAgICAyMCAgIE91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGUKKyAgICAgICAyMDAgICBMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGUKKyAgICAgICAgNDAgICBEZXBlbmRlbmNpZXMgYW5kIGNvbmZsaWN0cworICAgICAgIDQwMCAgIExvdHMgb2YgZGVwZW5kZW5jaWVzL2NvbmZsaWN0cyBvdXRwdXQKKyAgICAgMTAwMDAgICBUcmlnZ2VyIGFjdGl2YXRpb24gYW5kIHByb2Nlc3NpbmcKKyAgICAgMjAwMDAgICBMb3RzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnMKKyAgICAgNDAwMDAgICBTaWxseSBhbW91bnRzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnMKKyAgICAgIDEwMDAgICBMb3RzIG9mIGRyaXZlbCBhYm91dCBlLmcuIHRoZSBkcGtnL2luZm8gZGlyCisgICAgICAyMDAwICAgSW5zYW5lIGFtb3VudHMgb2YgZHJpdmVsCisuVFAgCitcZkJcLVwtZm9yY2VcLVxmUFxmSXF1ZWxxdWVcLWNob3NlXGZQLCBcZkJcLVwtbm9cLWZvcmNlXC1cZlBcZklxdWVscXVlXC1jaG9zZVxmUCwgXGZCXC1cLXJlZnVzZVwtXGZQXGZJcXVlbHF1ZVwtY2hvc2VcZlAKKworRm9yY2VyIG91IHJlZnVzZXIgKFxmQm5vXC1mb3JjZVxmUCBldCBcZkJyZWZ1c2VcZlAgc2lnbmlmaWVudCBsYSBt6m1lIGNob3NlKSBkZQorZmFpcmUgcXVlbHF1ZSBjaG9zZS4gXGZJcXVlbHF1ZVwtY2hvc2VcZlAgZXN0IHVuZSBsaXN0ZSBkJ2FjdGlvbnMgc+lwYXLpZXMgcGFyCitkZXMgdmlyZ3VsZXMsIGTpY3JpdGVzIGNpXC1hcHLocy4gXGZCXC1cLWZvcmNlXC1oZWxwXGZQIGFmZmljaGUgdW4gbWVzc2FnZSBxdWkgbGVzCitk6WNyaXQuIExlcyBhY3Rpb25zIG1hcnF16WVzIGQndW4gKCopIHNvbnQgZm9yY+llcyBwYXIgZOlmYXV0LgorCitcZklBdmVydGlzc2VtZW50XCA6IENlcyBvcHRpb25zIHNvbnQgcHJpbmNpcGFsZW1lbnQgZGVzdGlu6WVzIGF1eCBleHBlcnRzLiBVbgordXNhZ2UgYXVxdWVsIG1hbnF1ZSBsYSBwbGVpbmUgY29tcHLpaGVuc2lvbiBkZSBsZXVycyBlZmZldHMgcGV1dCBjYXNzZXIgbGUKK3N5c3TobWUgZW50aWVyLlxmUAorCitcZkJhbGxcZlBcIDogTWV0IGVuIG9ldXZyZSAob3UgcGFzKSB0b3V0ZXMgbGVzIG9wdGlvbnMgZGUgZm9y52FnZS4KKworXGZCZG93bmdyYWRlXGZQKCopXCA6IEluc3RhbGxlIHVuIHBhcXVldCwgbeptZSBzaSB1bmUgdmVyc2lvbiBwbHVzIHLpY2VudGUgZHUKK3BhcXVldCBlc3QgZOlq4CBpbnN0YWxs6WUuCisKK1xmSUF2ZXJ0aXNzZW1lbnRcIDogUG91ciBsJ2luc3RhbnQsIGRwa2cgbmUgcmVjaGVyY2hlIHBhcyBsZXMgZOlwZW5kYW5jZXMgbG9ycworZCd1biByZXRvdXIg4CB1bmUgdmVyc2lvbiBpbmbpcmlldXJlIGQndW4gcGFxdWV0XCA7IGlsIG5lIHZvdXMgcHLpdmllbmRyYSBwYXMKK3NpIGxhIHZlcnNpb24gY2hvaXNpZSBjYXNzZSBsZXMgZOlwZW5kYW5jZXMgZCd1biBhdXRyZSBwYXF1ZXQuIENlbGEgcGV1dAorYXZvaXIgZGUgc+lyaWV1c2VzIGNvbnPpcXVlbmNlc1wgO1wgZXQgc2kgbCdvbiByZXZpZW50IOAgZGVzIHZlcnNpb25zCithbnTpcmlldXJlcyBkZXMgcHJvZ3JhbW1lcyBlc3NlbnRpZWxzIGR1IHN5c3TobWUsIGNlbGEgcGV1dCByZW5kcmUgdm90cmUKK3N5c3TobWUgaW51dGlsaXNhYmxlLiBOJ3V0aWxpc2VyIHF1J2F2ZWMgcHLpY2F1dGlvbi5cZlAKKworXGZCY29uZmlndXJlXC1hbnlcZlBcIDogQ29uZmlndXJlIGF1c3NpIGxlcyBwYXF1ZXRzIGTpcGFxdWV06XMgbWFpcyBub24KK2NvbmZpZ3Vy6XMgZG9udCBk6XBlbmQgbGUgcGFxdWV0IGVuIHF1ZXN0aW9uLgorCitcZkJob2xkXGZQXCA6IFRyYWl0ZSBt6m1lIGxlcyBwYXF1ZXRzIG1hcnF16XMgq1wg4CBnYXJkZXJcILsgKKtcIGhvbGRcILspLgorCitcZkJyZW1vdmVcLXJlaW5zdHJlcVxmUFwgOiBTdXBwcmltZSB1biBwYXF1ZXQsIG3qbWUgZOlmZWN0dWV1eCBldCBtYXJxdekgY29tbWUKK2RlbWFuZGFudCB1bmUgculpbnN0YWxsYXRpb24uIElsIHNlIHBldXQsIGTocyBsb3JzLCBxdWUgZGVzIOls6W1lbnRzIGR1CitwYXF1ZXQgcmVzdGVudCBkYW5zIGxlIHN5c3TobWUgZXQgc29pZW50IG91Ymxp6XMgcGFyIFxmQmRwa2dcZlAuCisKK1xmQnJlbW92ZVwtZXNzZW50aWFsXGZQXCA6IHN1cHByaW1lIHVuIHBhcXVldCBt6m1lIHMnaWwgZXN0IGNvbnNpZOly6SBjb21tZQoraW5kaXNwZW5zYWJsZS4gTGVzIHBhcXVldHMgq1wgRXNzZW50aWFsXCC7IGNvbXBvcnRlbnQgbGVzIGNvbW1hbmRlcyBVbml4IGxlcworcGx1cyBmb25kYW1lbnRhbGVzIGV0IGxlcyBlbmxldmVyIHBldXQgY2Fzc2VyIGxlIHN5c3TobWUgZW50aWVyLiBJbCBmYXV0Cit1dGlsaXNlciBjZXR0ZSBvcHRpb24gYXZlYyBwcnVkZW5jZS4KKworXGZCZGVwZW5kc1xmUFwgOiBDaGFuZ2UgdG91cyBsZXMgcHJvYmzobWVzIGRlIGTpcGVuZGFuY2UgZW4gYXZlcnRpc3NlbWVudHMuCisKK1xmQmRlcGVuZHNcLXZlcnNpb25cZlBcIDogSWdub3JlIGxlcyB2ZXJzaW9ucyBkYW5zIGxlcyBxdWVzdGlvbnMgZGUgZOlwZW5kYW5jZS4KKworXGZCYnJlYWtzXGZQOiBGb3JjZSBsJ2luc3RhbGxhdGlvbiwgbeptZSBzaSBjZWxhIHJpc3F1ZSBkZSBjYXNzZXIgdW4gYXV0cmUKK3BhcXVldC4KKworXGZCY29uZmxpY3RzXGZQXCA6IEluc3RhbGxlIHVuIHBhcXVldCwgbeptZSBzJ2lsIGVzdCBlbiBjb25mbGl0IGF2ZWMgdW4gYXV0cmUKK3BhcXVldC4gQydlc3QgZGFuZ2VyZXV4IGNhciBoYWJpdHVlbGxlbWVudCBjZWxhIHByb2R1aXQgbGUgcmVtcGxhY2VtZW50IGRlCitjZXJ0YWlucyBmaWNoaWVycy4KKworXGZCY29uZm1pc3NcZlBcIDogSW5zdGFsbGUgdW4gZmljaGllciBkZSBjb25maWd1cmF0aW9uIG1hbnF1YW50LiBDZXR0ZSBvcOlyYXRpb24KK2VzdGRhbmdlcmV1c2UsIHB1aXNxdWUgbGVzIGNoYW5nZW1lbnRzIGFwcG9ydOlzIGF1IGZpY2hpZXIgbmUgc2Vyb250IHBhcworcHLpc2VydulzIChzdXBwcmVzc2lvbikuCisKK1xmQmNvbmZuZXdcZlBcIDogUXVhbmQgdW4gq1wgY29uZmZpbGVcILsgYSDpdOkgbW9kaWZp6SwgdG91am91cnMgaW5zdGFsbGVyIGxhCitub3V2ZWxsZSB2ZXJzaW9uIGV0IG5lIHJpZW4gZGVtYW5kZXIsIHNhdWYgc2kgbCdvcHRpb24gXGZCXC1cLWZvcmNlXC1jb25mZGVmXGZQCitlc3QgYXVzc2kgcHLpc2VudGUsIGF1cXVlbCBjYXMgbCdhY3Rpb24gcGFyIGTpZmF1dCBlc3QgY2hvaXNpZS4KKworXGZCY29uZm9sZFxmUFwgOiBRdWFuZCB1biCrXCBjb25mZmlsZVwguyBhIOl06SBtb2RpZmnpLCBnYXJkZXIgbCdhbmNpZW5uZSB2ZXJzaW9uCitldCBuZSByaWVuIGRlbWFuZGVyLCBzYXVmIHNpIGwnb3B0aW9uIFxmQlwtXC1mb3JjZVwtY29uZmRlZlxmUCBlc3QgYXVzc2kgcHLpc2VudGUsCithdXF1ZWwgY2FzIGwnYWN0aW9uIHBhciBk6WZhdXQgZXN0IGNob2lzaWUuCisKK1xmQmNvbmZkZWZcZlBcIDogVXRpbGlzZSB0b3Vqb3VycyBsJ2FjdGlvbiBwYXIgZOlmYXV0IHF1YW5kIHVuIKtcIGNvbmZmaWxlXCC7IGEKK+l06SBtb2RpZmnpLiBRdWFuZCBpbCBuJ3kgYSBwYXMgZCdhY3Rpb24gcGFyIGTpZmF1dCwgbGEgY29tbWFuZGUgcydhcnLqdGUgZXQKK2ludGVycm9nZSBsJ3V0aWxpc2F0ZXVyLCDgIG1vaW5zIHF1ZSBsJ29wdGlvbiBcZkJcLVwtZm9yY2VcLWNvbmZuZXdcZlAgb3UgbCdvcHRpb24KK1xmQlwtXC1mb3JjZVwtY29uZm9sZFxmUCBuJ2FpdCDpdOkgZG9ubullLCBhdXF1ZWwgY2FzIGVsbGUgc2Ugc2VydCBkZSBjZXMgb3B0aW9ucworcG91ciBk6XRlcm1pbmVyIGNlIHF1J2lsIGZhdXQgZmFpcmUuCisKK1xmQmNvbmZhc2tcZlBcIDogU2kgdW4gZmljaGllciBkZSBjb25maWd1cmF0aW9uIGEg6XTpIG1vZGlmaeksIHByb3Bvc2UgZGUgbGUKK3JlbXBsYWNlciBhdmVjIGxhIHZlcnNpb24gZHUgcGFxdWV0LCBt6m1lIHNpIGNlbGxlXC1jaSBuJ2EgcGFzIGNoYW5n6S4gU2kKK2wndW5lIGRlcyBvcHRpb25zIFxmQlwtXC1mb3JjZVwtY29uZm1pc3NcZlAsIFxmQlwtXC1mb3JjZVwtY29uZm5ld1xmUCwKK1xmQlwtXC1mb3JjZVwtY29uZm9sZFxmUCwgb3UgXGZCXC1cLWZvcmNlXC1jb25mZGVmXGZQIGVzdCDpZ2FsZW1lbnQgbWVudGlvbm7pZSwgZWxsZQorZOl0ZXJtaW5lcmEgbCdhY3Rpb24gZmluYWxlbWVudCB1dGlsaXPpZS4KKworXGZCb3ZlcndyaXRlXGZQXCA6IFJlbXBsYWNlIHVuIGZpY2hpZXIgcGFyIHVuIGZpY2hpZXIgZCd1biBhdXRyZSBwYXF1ZXQuCisKK1xmQm92ZXJ3cml0ZVwtZGlyXGZQXCA6IFJlbXBsYWNlIHVuIHLpcGVydG9pcmUgcGFyIHVuIHLpcGVydG9pcmUgZCd1biBhdXRyZQorcGFxdWV0LgorCitcZkJvdmVyd3JpdGVcLWRpdmVydGVkXGZQXCA6IFJlbXBsYWNlIHVuIGZpY2hpZXIgZOl0b3VybukgYXZlYyB1bmUgdmVyc2lvbiBub24KK2TpdG91cm7pZS4KKworXGZCdW5zYWZlXC1pb1xmUDogTmUgcGFzIGVmZmVjdHVlciBkJ2FjdGlvbnMgZCdlbnRy6WUvc29ydGllIG5vbiBz+3JlIGxvcnMgZGUgbGEKK2TpY29tcHJlc3Npb24uIENlbGEgaW1wbGlxdWUgYWN0dWVsbGVtZW50IGRlIG5lIHBhcyBzeW5jaHJvbmlzZXIgbGUgc3lzdOhtZQorZGUgZmljaGllcnMgYXZhbnQgbGUgcmVub21tYWdlIGRlIGZpY2hpZXJzLCBjZSBxdWkgZXN0IHVuZSBjYXVzZSBjb25udWUgZGUKK2TpZ3JhZGF0aW9uIGRlcyBwZXJmb3JtYW5jZXMgc3VyIGNlcnRhaW5zIHN5c3TobWVzLCBlbiBn6W7pcmFsIGNldXggcXVpLCBwZXUKK2ZpYWJsZXMsIG9udCBiZXNvaW4gZCdhY3Rpb25zIHP7cmVzIHBvdXIg6XZpdGVyIGRlIHRlcm1pbmVyIGF2ZWMgZGVzCitmaWNoaWVycyBkZSB0YWlsbGUgdmlkZSBlbiBjYXMgZCdpbnRlcnJ1cHRpb24gaW5vcGlu6WUuCisKK1xmSU5vdGVcZlA6IFBvdXIgZXh0NCwgbGUgcHJpbmNpcGFsIGNvbmNlcm7pLCBpbCBlc3Qgc3VnZ+ly6SBkZSBwbHV09HQgdXRpbGlzZXIKK2wnb3B0aW9uIGRlIG1vbnRhZ2UgXGZCbm9kZWxhbGxvY1xmUCwgcXVpIGNvcnJpZ2VyYSDgIGxhIGZvaXMgbGEgZOlncmFkYXRpb24KK2RlcyBwZXJmb3JtYW5jZXMgZXQgbGVzIHByb2Js6G1lcyBkZSBz6WN1cml06SBkZXMgZG9ubullcy4gRWxsZSBwZXJtZXQKK25vdGFtbWVudCBkJ+l2aXRlciBkZSB0ZXJtaW5lciBhdmVjIGRlcyBmaWNoaWVycyB2aWRlcyBsb3JzIGRlcyBhcnLqdHMKK2JydXRhdXggcG91ciB0b3V0IGxvZ2ljaWVsIHF1aSBuZSBzeW5jaHJvbmlzZSBwYXMgbGUgc3lzdOhtZSBkZSBmaWNoaWVycworYXZhbnQgY2hhcXVlIHJlbm9tbWFnZS4KKworXGZJQXZlcnRpc3NlbWVudCA6IEwndXRpbGlzYXRpb24gZGUgY2V0dGUgb3B0aW9uIHBldXQgYW3pbGlvcmVyIGxhCitwZXJmb3JtYW5jZSBtYWlzIGF1Z21lbnRlIGxlIHJpc3F1ZSBkZSBwZXJ0ZSBkZSBkb25u6WVzLiBFbGxlIGVzdCBkb25jIOAKK3V0aWxpc2VyIGF2ZWMgcHLpY2F1dGlvbnMuXGZQCisKK1xmQmFyY2hpdGVjdHVyZVxmUDogUHJvY2VzcyBldmVuIHBhY2thZ2VzIHdpdGggd3Jvbmcgb3Igbm8gYXJjaGl0ZWN0dXJlLgorCitcZkJiYWRcLXZlcnNpb25cZlA6IFByb2Nlc3MgZXZlbiBwYWNrYWdlcyB3aXRoIHdyb25nIHZlcnNpb25zLgorCitcZkJiYWRcLXBhdGhcZlBcIDogUHJvZ3JhbW1lcyBpbXBvcnRhbnRzIG5vbiB2aXNpYmxlcyBwYXIgbGEgdmFyaWFibGUgXGZCUEFUSFxmUCwgY2UKK3F1aSB2YSBwb3NlciBkZXMgcHJvYmzobWVzLgorCitcZkJub3RcLXJvb3RcZlBcIDogVGVudGUgZGUgKGTpcylpbnN0YWxsZXIgbeptZSBzYW5zIOp0cmUgcm9vdC4KKworXGZCYmFkXC12ZXJpZnlcZlBcIDogSW5zdGFsbGUgdW4gcGFxdWV0IG3qbWUgc2kgbGEgdulyaWZpY2F0aW9uIGRlIHNvbgorYXV0aGVudGljaXTpIGEg6WNob3XpLgorCisuVFAgCitcZkJcLVwtaWdub3JlXC1kZXBlbmRzXGZQPVxmSXBhcXVldFxmUCwuLi4KK05lIHRpZW50IHBhcyBjb21wdGUgZGUgbGEgdulyaWZpY2F0aW9uIGRlcyBk6XBlbmRhbmNlcyBwb3VyIGxlcyBwYXF1ZXRzCitzcOljaWZp6XMgKGVuIGZhaXQsIGxhIHbpcmlmaWNhdGlvbiBlc3QgZmFpdGUgbWFpcyBvbiBuZSBkb25uZSByaWVuIGQnYXV0cmUKK3F1ZSBkZXMgYXZlcnRpc3NlbWVudHMpLgorLlRQIAorXGZCXC1cLW5vXC1hY3RcZlAsIFxmQlwtXC1kcnlcLXJ1blxmUCwgXGZCXC1cLXNpbXVsYXRlXGZQCitGYWlyZSB0b3V0IGNlIHF1aSBkb2l0IOp0cmUgZmFpdCwgbWFpcyBuJ+ljcmlyZSBhdWN1bmUgbW9kaWZpY2F0aW9uLiBPbgordXRpbGlzZSBjZXR0ZSBvcHRpb24gcG91ciB2b2lyIGNlIHF1aSBzZSBwYXNzZSBzYW5zIG1vZGlmaWVyIHF1b2kgcXVlIGNlCitzb2l0LgorCitBc3N1cmV6XC12b3VzIGRlIGRvbm5lciBsJ29wdGlvbiBcZkJcLVwtbm9cLWFjdFxmUCBhdmFudCBsZSBwYXJhbeh0cmUgYWN0aW9uLCBzaW5vbgorZGVzIHLpc3VsdGF0cyBm4mNoZXV4IHNvbnQgcHJvYmFibGVzLiBQYXIgZXhlbXBsZSwgbGEgY29tbWFuZGUgXGZCZHBrZworXC1cLXB1cmdlIGZvbyBcLVwtbm9cLWFjdFxmUCBwdXJnZSBkJ2Fib3JkIGxlIHBhcXVldCBmb28gZXQgZXNzYWllIGVuc3VpdGUgZGUKK3B1cmdlciBsZSBwYXF1ZXQgXC1cLW5vXC1hY3QsIG3qbWUgc2kgdm91cyBjb21wdGlleiBxdSdlbGxlIG5lIGZlcmFpdCByaWVuIGR1Cit0b3V0LgorLlRQIAorXGZCXC1SXGZQLCBcZkJcLVwtcmVjdXJzaXZlXGZQCitUcmFpdGUgculjdXJzaXZlbWVudCB0b3VzIGxlcyBzaW1wbGVzIGZpY2hpZXJzIHF1aSBjb3JyZXNwb25kZW50IGF1IG1vdGlmCitcZkIqLmRlYlxmUCBldCBxdWkgc2UgdHJvdXZlbnQgZGFucyBsZXMgculwZXJ0b2lyZXMgZXQgc291c1wtculwZXJ0b2lyZXMKK3Nw6WNpZmnpcy4gT24gcGV1dCB1dGlsaXNlciBjZXR0ZSBvcHRpb24gYXZlYyBsZXMgYWN0aW9ucyBcZkJcLWlcZlAsIFxmQlwtQVxmUCwKK1xmQlwtXC1pbnN0YWxsXGZQLCBcZkJcLVwtdW5wYWNrXGZQIGV0IFxmQlwtXC1hdmFpbFxmUC4KKy5UUCAKK1xmQlwtR1xmUAorTmUgcGFzIGluc3RhbGxlciB1biBwYXF1ZXQgc2kgdW5lIHZlcnNpb24gcGx1cyBy6WNlbnRlIGRlIGNlIHBhcXVldCBlc3QgZOlq4AoraW5zdGFsbOllLiBDJ2VzdCB1biBhbGlhcyBwb3VyIFxmQlwtXC1yZWZ1c2VcLWRvd25ncmFkZVxmUC4KKy5UUCAKK1xmQlwtXC1hZG1pbmRpclxmUD1cZklkaXJcZlAKK01vZGlmaWUgbGUgculwZXJ0b2lyZSBkJ2FkbWluaXN0cmF0aW9uIHBhciBk6WZhdXQsIHF1aSBjb250aWVudCBkZSBub21icmV1eAorZmljaGllcnMgZG9ubmFudCBkZXMgaW5mb3JtYXRpb25zIGF1IHN1amV0IGRlIGwn6XRhdCBkZXMgcGFxdWV0cyBpbnN0YWxs6XMKK291IG5vbiwgZXRjLiAoTGUgculwZXJ0b2lyZSBwYXIgZOlmYXV0IOl0YW50IFxmSS92YXIvbGliL2Rwa2dcZlApCisuVFAgCitcZkJcLVwtaW5zdGRpcj1cZlBcZklyZXBlcnRvaXJlXGZQCitDaGFuZ2UgbGUgculwZXJ0b2lyZSBkJ2luc3RhbGxhdGlvbiBwYXIgZOlmYXV0IHF1aSBpbmRpcXVlIG/5IGxlcyBwYXF1ZXRzCit2b250IOp0cmUgaW5zdGFsbOlzLiBcZkJpbnN0ZGlyXGZQIGVzdCBhdXNzaSBsZSBub20gZHUgculwZXJ0b2lyZSBpbmRpcXXpIOAKK1xmQmNocm9vdFxmUCgyKSBhdmFudCBxdWUgbmUgc29pZW50IGxhbmPpcyBsZXMgc2NyaXB0cyBkJ2luc3RhbGxhdGlvbiwgY2UgcXVpCitzaWduaWZpZSBxdWUgY2VzIHNjcmlwdHMgdm9pZW50IFxmQmluc3RkaXJcZlAgY29tbWUgculwZXJ0b2lyZSByYWNpbmUuIChMZQorculwZXJ0b2lyZSBwYXIgZOlmYXV0IGVzdCBcZkkvXGZQKS4KKy5UUCAKK1xmQlwtXC1yb290PVxmUFxmSXLpcGVydG9pcmVcZlAKK01vZGlmaWVyIFxmQnJvb3RcZlAgY2hhbmdlIFxmQmluc3RkaXJcZlAgcGFyIFxmSXLpcGVydG9pcmVcZlAgZXQgXGZCYWRtaW5kaXJcZlAgcGFyCitcZklkaXJcZlBcZkIvdmFyL2xpYi9kcGtnXGZQLgorLlRQIAorXGZCXC1PXGZQLCBcZkJcLVwtc2VsZWN0ZWRcLW9ubHlcZlAKK1RyYWl0ZXIgc2V1bGVtZW50IGxlcyBwYXF1ZXRzIHF1aSBzb250IHPpbGVjdGlvbm7pcyBwb3VyIGwnaW5zdGFsbGF0aW9uLiBMYQorc+lsZWN0aW9uIGVzdCBy6WVsbGVtZW50IGZhaXRlIHBhciBcZkJkc2VsZWN0XGZQIG91IHBhciBcZkJkcGtnXGZQIHF1YW5kIGlscworbWFuaXB1bGVudCBsZXMgcGFxdWV0cy4gUGFyIGV4ZW1wbGUsIHF1YW5kIHVuIHBhcXVldCBlc3Qgc3VwcHJpbeksIGlsIGVzdAorbWFycXXpIGNvbW1lIGF5YW50IOl06SBz6WxlY3Rpb25u6SBwb3VyIHVuZSBk6XNpbnN0YWxsYXRpb24uCisuVFAgCitcZkJcLUVcZlAsIFxmQlwtXC1za2lwXC1zYW1lXC12ZXJzaW9uXGZQCitOZSBwYXMgaW5zdGFsbGVyIGxlIHBhcXVldCBzaSBsYSBt6m1lIHZlcnNpb24gZHUgcGFxdWV0IGVzdCBk6WrgIGluc3RhbGzpZS4KKy5QCitcZkJcLVwtcHJlXC1pbnZva2U9XGZQXGZJY29tbWFuZGVcZlAKKy5icgorXGZCXC1cLXBvc3RcLWludm9rZT1cZlBcZkljb21tYW5kZVxmUAorLlJTCitQcm9ncmFtbWUgbCdleOljdXRpb24gZGUgXGZJY29tbWFuZGVcZlAgdmlhIKtcIHNoIFwtY1wguyBhdmFudCBvdSBhcHLocworbCdleOljdXRpb24gZGUgZHBrZyBwb3VyIGxlcyBhY3Rpb25zIFxmSXVucGFja1xmUCwgXGZJY29uZmlndXJlXGZQLCBcZklpbnN0YWxsXGZQLAorXGZJdHJpZ2dlcnNcLW9ubHlcZlAsIFxmSXJlbW92ZVxmUCBldCBcZklwdXJnZVxmUC4gQ2V0dGUgb3B0aW9uIHBldXQg6nRyZSB1dGlsaXPpZQorcGx1c2lldXJzIGZvaXMuIEwnb3JkcmUgZGFucyBsZXF1ZWwgbGVzIG9wdGlvbnMgbXVsdGlwbGVzIHNvbnQgaW5kaXF16WVzCitzZXJhIHBy6XNlcnbpIGV0IGNlbGxlcyBpbmRpcXXpZXMgZGFucyBsZSBmaWNoaWVyIGRlIGNvbmZpZ3VyYXRpb24gYXVyb250IGxhCitwcmlvcml06S4gTGEgdmFyaWFibGUgZCdlbnZpcm9ubmVtZW50IFxmQkRQS0dfSE9PS19BQ1RJT05cZlAgZXN0IHV0aWxpc+llIHBvdXIKK2luZGlxdWVyIGF1eCBzY3JpcHRzIHV0aWxpc+lzIHF1ZWxsZSBlc3QgbCdhY3Rpb24gYWN0dWVsbGUgZGUKK2Rwa2cuIE5vdGVcIDpcIGxlcyBpbnRlcmZhY2VzIGRlIGRwa2cgcGV1dmVudCBsJ2FwcGVsZXIgcGx1c2lldXJzIGZvaXMg4AorY2hhcXVlIGludm9jYXRpb24sIGNlIHF1aSBwZXV0IHByb3ZvcXVlciBsJ2V46WN1dGlvbiBkZXMgq1wgaG9va3NcILsgcGx1cworc291dmVudCBxdWUgcHLpdnUuCisuUkUKKy5QCitcZkJcLVwtcGF0aFwtZXhjbHVkZT1cZlBcZkltb3RpZlwtZ2xvYmFsXGZQCisuYnIKK1xmQlwtXC1wYXRoXC1pbmNsdWRlPVxmUFxmSW1vdGlmXC1nbG9iYWxcZlAKKy5SUworVXRpbGlzZSBcZkltb3RpZlwtZ2xvYmFsXGZQIGNvbW1lIGZpbHRyZSBkZSBjaGVtaW5zLCBzb2l0IGVuIGV4Y2x1YW50LCBzb2l0IGVuCity6VwtaW5jbHVhbnQgZGVzIGNoZW1pbnMgcHLpY+lkZW1tZW50IGV4Y2x1cywgY29ycmVzcG9uZGFudCBhdSBtb3RpZiBpbmRpcXXpLAorcGVuZGFudCBsJ2luc3RhbGxhdGlvbi4KKworXGZJQXR0ZW50aW9uXCA6XCBk6XBlbmRyZSBkZXMgY2hlbWlucyBleGNsdXMgcGV1dCBlbnRp6HJlbWVudCBjYXNzZXIgbGUKK3N5c3TobWUuIENlIHLpZ2xhZ2Ugc29pdCBkb25jIOp0cmUgdXRpbGlz6SBhdmVjIHBy6WNhdXRpb25zLlxmUAorCitMZXMgbW90aWZzIGdsb2JhdXggdXRpbGlzZW50IGxlcyBt6m1lcyBjYXJhY3TocmVzIGpva2VyIHF1ZSBsZQorc2hlbGxcIG/5XCCrXCAqXCC7IGNvcnJlc3BvbmQg4CB1bmUgc+lxdWVuY2UgcXVlbGNvbnF1ZSBkZSBjYXJhY3TocmVzLCB5IGNvbXByaXMKK3VuZSBjaGHubmUgdmlkZSBvdSBsZSBjYXJhY3TocmUgq1wgL1wguy4gQWluc2ksIFxmSScvdXNyLyovUkVBRConXGZQIGNvbXBvcnRlcmEKK1wmXGZJJy91c3Ivc2hhcmUvZG9jL3BhY2thZ2UvUkVBRE1FJ1xmUC4gQ29tbWUgdG91am91cnMsIGxlIGNhcmFjdOhyZSCrXCA/XCC7Citjb3JyZXNwb25kIOAgdW4gY2FyYWN06HJlIHF1ZWxjb25xdWUgKHkgY29tcHJpcyCrXCAvXCC7KS4gTGUgY2FyYWN06HJlIKtcIFtcILsKK21hcnF1ZSBsZSBk6WJ1dCBkJ3VuZSBjbGFzc2UgZGUgY2FyYWN06HJlcywgcXVpIGNvbnRpZW50IHVuZSBsaXN0ZSBkZQorY2FyYWN06HJlcywgc+lyaWVzIGRlIGNhcmFjdOhyZXMgb3UgY29tcGzpbWVudHMgZGUgc+lyaWVzLiBWZXVpbGxlegorY29uc3VsdGVyIFxmQmdsb2JcZlAoNykgcG91ciBwbHVzIGQnaW5mb3JtYXRpb25zIOAgcHJvcG9zIGRlcyBjb3JyZXNwb25kYW5jZXMKK2dsb2JhbGVzLiBOb3RlXCA6XCBsJ2ltcGzpbWVudGF0aW9uIGFjdHVlbGxlIHBvdXJyYWl0IHLpXC1pbmNsdXJlIHBsdXMgZGUKK3LpcGVydG9pcmVzIGV0IGxpZW5zIHN5bWJvbGlxdWVzIHF1ZSBu6WNlc3NhaXJlLCBwYXIgc291Y2kgZGUgc+ljdXJpdOkgZXQKK3BvdXIg6XZpdGVyIGRlcyDpY2hlcyBwb3NzaWJsZXMgZGUgZOljb21wcmVzc2lvbi4gRGVzIG1vZGlmaWNhdGlvbnMg4CB2ZW5pcgorcG91cnJhaWVudCBjaGFuZ2VyIGNlbGEuCisKK0NlbGEgcGV1dCBzZXJ2aXIg4CBleGNsdXJlIHRvdXMgbGVzIGNoZW1pbnMgc2F1ZiBjZXJ0YWlucyBzcOljaWZpcXVlcy4gVW4KK2NhcyBjbGFzc2lxdWUgZCd1dGlsaXNhdGlvbiBlc3RcIDoKKworLm5mCitcZkJcLVwtcGF0aFwtZXhjbHVkZT0vdXNyL3NoYXJlL2RvYy8qXGZQCitcZkJcLVwtcGF0aFwtaW5jbHVkZT0vdXNyL3NoYXJlL2RvYy8qL2NvcHlyaWdodFxmUAorLmZpCisKK3F1aSBwZXJtZXQgZGUgc3VwcHJpbWVyIHRvdXMgbGVzIGZpY2hpZXJzIGRlIGRvY3VtZW50YXRpb24gc2F1ZiBsZXMgZmljaGllcnMKK2RlIKtcIGNvcHlyaWdodFwguy4KKworQ2VzIGRldXggb3B0aW9ucyBwZXV2ZW50IOp0cmUgdXRpbGlz6WVzIHBsdXNpZXVycyBmb2lzIGV0IOl2ZW50dWVsbGVtZW50CivqdHJlIGFsdGVybullcyBlbnRyZSBlbGxlcy4gTGVzIGRldXggc29udCB0cmFpdOllcyBkYW5zIGwnb3JkcmUgaW5kaXF16VwgOlwgbGEKK2Rlcm5p6HJlIHLoZ2xlIGNvcnJlc3BvbmRhbnQg4CB1biBmaWNoaWVyIGRvbm7pIGVzdCBhbG9ycyBjZWxsZSBxdWkgc2VyYQordXRpbGlz6WUuCisuUkUKKy5UUCAKK1xmQlwtXC1zdGF0dXNcLWZkIFxmUFxmSW5cZlAKK0Vudm9pZSB1biDpdGF0IGR1IHBhcXVldCBjb21wculoZW5zaWJsZSBwYXIgbGEgbWFjaGluZSBldCBtZXQg4CBqb3VyIGNldHRlCitpbmZvcm1hdGlvbiBkYW5zIGxlIGZpY2hpZXIgZGUgZGVzY3JpcHRpb24gXGZJblxmUC4gQ2V0dGUgb3B0aW9uIHBldXQg6nRyZQorc3DpY2lmaellIHBsdXNpZXVycyBmb2lzLiBMJ2luZm9ybWF0aW9uIGVzdCBn6W7pcmFsZW1lbnQgY29uc3RpdHXpZSBkJ3VuCitlbnJlZ2lzdHJlbWVudCBwYXIgbGlnbmUsIGRhbnMgbCd1bmUgZGVzIGZvcm1lcyBzdWl2YW50ZXNcIDoKKy5SUworLlRQIAorXGZCc3RhdHVzOiBcZlBcZklwYXF1ZXRcZlBcZkI6IFxmUFxmSXN0YXR1c1xmUAorTCfpdGF0IGR1IHBhcXVldCBhIGNoYW5n6VwgOyBsZSBcZklzdGF0dXNcZlAgZXN0IHRlbCBxdWUgZGFucyBsZSBmaWNoaWVyIGQn6XRhdAorKFwgq3N0YXR1cyBmaWxlXCC7KS4KKy5UUCAKK1xmQnN0YXR1czogXGZQXGZJcGFxdWV0XGZQXGZCIDogZXJyb3IgOiBcZlBcZkltZXNzYWdlXC1kJ2VycmV1clwtY29tcGxldFxmUAorQW4gZXJyb3Igb2NjdXJyZWQuIEFueSBwb3NzaWJsZSBuZXdsaW5lcyBpbiBcZklleHRlbmRlZFwtZXJyb3JcLW1lc3NhZ2VcZlAgd2lsbAorYmUgY29udmVydGVkIHRvIHNwYWNlcyBiZWZvcmUgb3V0cHV0LgorLlRQIAorXGZCc3RhdHVzOiBcZlBcZklmaWNoaWVyXGZQXGZCIDogY29uZmZpbGVcLXByb21wdCA6ICdcZlBcZklyZWFsXC1vbGRcZlBcZkInICdcZlBcZklyZWFsXC1uZXdcZlBcZkInIFxmUFxmSXVzZXJlZGl0ZWRcZlBcZkIgXGZQXGZJZGlzdGVkaXRlZFxmUAorVW5lIHF1ZXN0aW9uIHBvdXIgdW4gZmljaGllciBkZSBjb25maWd1cmF0aW9uIHZhIOp0cmUgcG9z6WUg4CBsJ3V0aWxpc2F0ZXVyLgorLlRQIAorXGZCcHJvY2Vzc2luZzogXGZQXGZJc3RhZ2VcZlBcZkI6IFxmUFxmSXBhcXVldFxmUAorRW52b3npIGp1c3RlIGF2YW50IGxlIGTpYnV0IGR1IHRyYWl0ZW1lbnQgZCd1biBzdGFnZS4gTGVzIFxmSXN0YWdlc1xmUCBzb250CitcZkJ1cGdyYWRlXGZQLCBcZkJpbnN0YWxsXGZQIChsZXMgZGV1eCBzb250IGVudm956XMgYXZhbnQgbGUgZOlwYXF1ZXRhZ2UpLAorXGZCY29uZmlndXJlXGZQLCBcZkJ0cmlncHJvY1xmUCwgXGZCZGlzYXBwZWFyXGZQLCBcZkJyZW1vdmVcZlAsIFxmQnB1cmdlXGZQLgorLlJFCisuVFAgCitcZkJcLVwtc3RhdHVzXC1sb2dnZXJcZlA9XGZJY29tbWFuZFxmUAorU2VuZCBtYWNoaW5lXC1yZWFkYWJsZSBwYWNrYWdlIHN0YXR1cyBhbmQgcHJvZ3Jlc3MgaW5mb3JtYXRpb24gdG8gdGhlIHNoZWxsCitcZkljb21tYW5kXGZQJ3Mgc3RhbmRhcmQgaW5wdXQuIFRoaXMgb3B0aW9uIGNhbiBiZSBzcGVjaWZpZWQgbXVsdGlwbGUKK3RpbWVzLiBUaGUgb3V0cHV0IGZvcm1hdCB1c2VkIGlzIHRoZSBzYW1lIGFzIGluIFxmQlwtXC1zdGF0dXNcLWZkLlxmUAorLlJFCisuVFAgCitcZkJcLVwtbG9nPVxmUFxmSWZpY2hpZXJcZlAKK0xvZyBzdGF0dXMgY2hhbmdlIHVwZGF0ZXMgYW5kIGFjdGlvbnMgdG8gXGZJZmlsZW5hbWVcZlAsIGluc3RlYWQgb2YgdGhlIGRlZmF1bHQKK1xmSS92YXIvbG9nL2Rwa2cubG9nXGZQLiBJZiB0aGlzIG9wdGlvbiBpcyBnaXZlbiBtdWx0aXBsZSB0aW1lcywgdGhlIGxhc3QKK2ZpbGVuYW1lIGlzIHVzZWQuIExvZyBtZXNzYWdlcyBhcmUgb2YgdGhlIGZvcm0gYFlZWVlcLU1NXC1ERCBISDpNTTpTUyBzdGF0dXMKK1xmSXN0YXRlXGZQIFxmSXBrZ1xmUCBcZklpbnN0YWxsZWRcLXZlcnNpb25cZlAnIGZvciBzdGF0dXMgY2hhbmdlIHVwZGF0ZXM7IGBZWVlZXC1NTVwtREQKK0hIOk1NOlNTIFxmSWFjdGlvblxmUCBcZklwa2dcZlAgXGZJaW5zdGFsbGVkXC12ZXJzaW9uXGZQIFxmSWF2YWlsYWJsZVwtdmVyc2lvblxmUCcgZm9yCithY3Rpb25zIHdoZXJlIFxmSWFjdGlvblxmUCBpcyBvbmUgb2YgXGZCaW5zdGFsbFxmUCwgXGZCdXBncmFkZVxmUCwgXGZCcmVtb3ZlXGZQLAorXGZCcHVyZ2VcZlA7IGFuZCBgWVlZWVwtTU1cLUREIEhIOk1NOlNTIGNvbmZmaWxlIFxmSWZpbGVuYW1lXGZQIFxmSWRlY2lzaW9uXGZQJyBmb3IKK2NvbmZmaWxlIGNoYW5nZXMgd2hlcmUgXGZJZGVjaXNpb25cZlAgaXMgZWl0aGVyIFxmQmluc3RhbGxcZlAgb3IgXGZCa2VlcFxmUC4KKy5UUCAKK1xmQlwtXC1ub1wtZGVic2lnXGZQCitOZSBwYXMgdGVudGVyIGRlIHbpcmlmaWVyIGxhIHNpZ25hdHVyZSBkZXMgcGFxdWV0cy4KKy5UUCAKK1xmQlwtXC1ub1wtdHJpZ2dlcnNcZlAKK0R1cmFudCBjZSB0cmFpdGVtZW50IG5lIHBhcyBsYW5jZXIgZCdhY3Rpb25zIGRpZmbpcullcyAobGVzIGFjdGl2YXRpb25zCitzZXJvbnQgdG91am91cnMgZW5yZWdpc3Ry6WVzKS4gUydpbCBlc3QgdXRpbGlz6SBhdmVjIFxmQlwtXC1jb25maWd1cmVcZlAKK1xmSXBhcXVldFxmUCBvdSBcZkJcLVwtdHJpZ2dlcnNcLW9ubHlcZlAgXGZJcGFxdWV0XGZQIGFsb3JzIGxlIHBvc3RpbnN0IGR1IHBhcXVldCBzZXJhCit0b3Vqb3VycyBleOljdXTpIG3qbWUgc2kgc2V1bGUgbCdleOljdXRpb24gZCd1bmUgYWN0aW9uIGRpZmbpcullIGVzdAorbuljZXNzYWlyZS4gTCd1dGlsaXNhdGlvbiBkZSBjZXR0ZSBvcHRpb24gcGV1dCBsYWlzc2VyIGRlcyBwYXF1ZXRzIGRhbnMgbGVzCittYXV2YWlzIOl0YXRzIFxmQnRyaWdnZXJzXC1hd2FpdGVkXGZQIGV0IFxmQnRyaWdnZXJzXC1wZW5kaW5nXGZQLiBDZWxhIHBldXQg6nRyZQorY29ycmln6SBwbHVzIHRhcmQgZW4gZXjpY3V0YW50IFxmQmRwa2cgXC1cLWNvbmZpZ3VyZSBcLVwtcGVuZGluZ1xmUC4KKy5UUCAKK1xmQlwtXC10cmlnZ2Vyc1xmUAorQW5udWxlIHVuIHBy6WPpZGVudCBcZkJcLVwtbm9cLXRyaWdnZXJzXGZQLgorLgorLlNIIEZJQ0hJRVJTCisuVFAgCitcZkkvZXRjL2Rwa2cvZHBrZy5jZmdcZlAKK0ZpY2hpZXIgZGUgY29uZmlndXJhdGlvbiBjb250ZW5hbnQgbGVzIG9wdGlvbnMgcGFyIGTpZmF1dC4KKy5UUCAKK1xmSS92YXIvbG9nL2Rwa2cubG9nXGZQCitGaWNoaWVyIGpvdXJuYWwgc3RhbmRhcmQuIFZveWV6IFxmSS9ldGMvZHBrZy9kcGtnLmNmZ1xmUCg1KSBldCBsJ29wdGlvbgorXGZCXC1cLWxvZ1xmUC4KKy5QCitMZXMgYXV0cmVzIGZpY2hpZXJzIHLpcGVydG9yaelzIGljaSBzb250IGRhbnMgbGV1ciBy6XBlcnRvaXJlIHBhciBk6WZhdXQsCit2b3lleiBsJ29wdGlvbiBcZkJcLVwtYWRtaW5kaXJcZlAgcG91ciBzYXZvaXIgY2hhbmdlciBsJ2VtcGxhY2VtZW50IGRlIGNlcworZmljaGllcnMuCisuVFAgCitcZkkvdmFyL2xpYi9kcGtnL2F2YWlsYWJsZVxmUAorTGlzdGUgZGVzIHBhcXVldHMgZGlzcG9uaWJsZXMuCisuVFAgCitcZkkvdmFyL2xpYi9kcGtnL3N0YXR1c1xmUAoryXRhdHMgZGVzIHBhcXVldHMgZGlzcG9uaWJsZXMuIENlIGZpY2hpZXIgY29udGllbnQgZGVzIGluZm9ybWF0aW9ucyBxdWkKK3Blcm1ldHRlbnQgZGUgc2F2b2lyIHNpIHVuIHBhcXVldCBlc3QgbWFycXXpIGNvbW1lIGRldmFudCDqdHJlIHN1cHByaW3pIG91CitwYXMsIGRldmFudCDqdHJlIGluc3RhbGzpIG91IHBhcywgZXRjLiBWb3lleiBsYSBzZWN0aW9uIFxmQlJFTlNFSUdORU1FTlRTIFNVUgorTEVTIFBBUVVFVFNcZlAgcG91ciBkZXMgaW5mb3JtYXRpb25zIHN1cHBs6W1lbnRhaXJlcy4KKworTGUgZmljaGllciBkJ+l0YXQgZXN0IHNhdXZlZ2FyZOkgcXVvdGlkaWVubmVtZW50IGRhbnMgXGZJL3Zhci9iYWNrdXBzXGZQLiBDZWxhCitwZXV0IOp0cmUgdXRpbGUgZW4gY2FzIGRlIHBlcnRlIG91IGRlIGNvcnJ1cHRpb24gZPtlIOAgZGVzIHByb2Js6G1lcyBkZQorc3lzdOhtZSBkZSBmaWNoaWVycy4KKy5QCitMZXMgZmljaGllcnMgc3VpdmFudHMgZm9udCBwYXJ0aWUgZCd1biBwYXF1ZXQgYmluYWlyZS4gVm95ZXogXGZCZGViXGZQKDUpIHBvdXIKK2RlcyBpbmZvcm1hdGlvbnMgc3VwcGzpbWVudGFpcmVzXCA6CisuVFAgCitcZkljb250cm9sXGZQCisuVFAgCitcZkljb25mZmlsZXNcZlAKKy5UUCAKK1xmSXByZWluc3RcZlAKKy5UUCAKK1xmSXBvc3RpbnN0XGZQCisuVFAgCitcZklwcmVybVxmUAorLlRQIAorXGZJcG9zdHJtXGZQCisuCisuU0ggRU5WSVJPTk5FTUVOVAorLlRQIAorXGZCSE9NRVxmUAorU2kgY2V0dGUgb3B0aW9uIGVzdCB1dGlsaXPpZSwgXGZCZHBrZ1xmUCB1dGlsaXNlcmEgbGUgculwZXJ0b2lyZSBpbmRpcXXpIHBvdXIKK2xpcmUgbGUgZmljaGllciBkZSBjb25maWd1cmF0aW9uIHByb3ByZSDgIGwndXRpbGlzYXRldXIuCisuVFAgCitcZkJUTVBESVJcZlAKK1NpIGNldHRlIG9wdGlvbiBlc3QgdXRpbGlz6WUsIFxmQmRwa2dcZlAgdXRpbGlzZXJhIGxlIHLpcGVydG9pcmUgaW5kaXF16SBwb3VyCitjcullciBsZXMgZmljaGllcnMgZXQgculwZXJ0b2lyZSB0ZW1wb3JhaXJlcy4KKy5UUCAKK1xmQlBBR0VSXGZQCitDZXR0ZSBvcHRpb24gaW5kaXF1ZSBsZSBwcm9ncmFtbWUgZXjpY3V06SBwYXIgXGZCZHBrZ1xmUCBxdWFuZCBpbCBhZmZpY2hlIGxlcworZmljaGllcnMgZGUgY29uZmlndXJhdGlvbi4KKy5UUCAKK1xmQlNIRUxMXGZQCitMZSBwcm9ncmFtbWUgZXjpY3V06SBwYXIgXGZCZHBrZ1xmUCBxdWFuZCBpbCBsYW5jZSB1biBub3V2ZWwgaW50ZXJwcul0ZXVyIGRlCitjb21tYW5kZXMuCisuVFAgCitcZkJDT0xVTU5TXGZQCitGaXhlIGxlIG5vbWJyZSBkZSBjb2xvbm5lcyB1dGlsaXPpcyBwYXIgXGZCZHBrZ1xmUCBsb3JzcXUnaWwgYWZmaWNoZSB1biB0ZXh0ZQorZm9ybWF06S4gU2V1bGUgbCdhY3Rpb24gXGZCXC1sXGZQIHNlIHNlcnQgYWN0dWVsbGVtZW50IGRlIGNldHRlIHZhcmlhYmxlLgorLlRQIAorXGZCRFBLR19TSEVMTF9SRUFTT05cZlAKK0NldHRlIHZhcmlhYmxlIGTpZmluaXQgbCdpbnZpdGUgZHUgc2hlbGwgbGFuY+kgcGFyIFxmQmRwa2dcZlAgbG9yc3F1J2lsIGx1aSBlc3QKK2RlbWFuZOkgZCerXCAgZXhhbWluZXIgbGEgc2l0dWF0aW9uXCC7IGxvcnMgZHUgdHJhaXRlbWVudCBkZXMgZmljaGllcnMgZGUKK2NvbmZpZ3VyYXRpb24uIExhIHZhbGV1ciBhY3R1ZWxsZW1lbnQgdmFsYWJsZSBlc3RcIDpcIFxmQmNvbmZmaWxlXC1wcm9tcHRcZlAvCisuVFAgCitcZkJEUEtHX0NPTkZGSUxFX09MRFxmUAorQ2V0dGUgdmFyaWFibGUgZXN0IGTpZmluaWUgcG91ciBsZSBzaGVsbCBsYW5j6SBwYXIgXGZCZHBrZ1xmUCBsb3JzcXUnaWwgbHVpIGVzdAorZGVtYW5k6SBkJ6tcICBleGFtaW5lciBsYSBzaXR1YXRpb25cILsgbG9ycyBkdSB0cmFpdGVtZW50IGRlcyBmaWNoaWVycyBkZQorY29uZmlndXJhdGlvbi4gRWxsZSBjb250aWVudCBsZSBub20gZGUgbCdhbmNpZW4gZmljaGllciBkZSBjb25maWd1cmF0aW9uLgorLlRQIAorXGZCRFBLR19DT05GRklMRV9ORVdcZlAKK0NldHRlIHZhcmlhYmxlIGVzdCBk6WZpbmllIHBvdXIgbGUgc2hlbGwgbGFuY+kgcGFyIFxmQmRwa2dcZlAgbG9yc3F1J2lsIGx1aSBlc3QKK2RlbWFuZOkgZCerXCAgZXhhbWluZXIgbGEgc2l0dWF0aW9uXCC7IGxvcnMgZHUgdHJhaXRlbWVudCBkZXMgZmljaGllcnMgZGUKK2NvbmZpZ3VyYXRpb24uIEVsbGUgY29udGllbnQgbGUgbm9tIGR1IG5vdXZlYXUgZmljaGllciBkZSBjb25maWd1cmF0aW9uLgorLlRQIAorXGZCRFBLR19SVU5OSU5HX1ZFUlNJT05cZlAKK0NldHRlIHZhcmlhYmxlcyBlc3QgZOlmaW5pZSBwYXIgXGZCZHBrZ1xmUCBkYW5zIGwnZW52aXJvbm5lbWVudCBkdSBzY3JpcHQgZHUKK3Jlc3BvbnNhYmxlLiBFbGxlIGNvbnRpZW50IGxhIHZlcnNpb24gZGUgbCdpbnN0YW5jZSBkZSBcZkJkcGtnXGZQIGVuIGNvdXJzCitkJ2V46WN1dGlvbi4KKy5UUCAKK1xmQkRQS0dfTUFJTlRTQ1JJUFRfUEFDS0FHRVxmUAorROlmaW5pZSBwYXIgXGZCZHBrZ1xmUCBkYW5zIGwnZW52aXJvbm5lbWVudCBkdSBzY3JpcHQgZHUgcmVzcG9uc2FibGUsIGNldHRlCit2YXJpYWJsZSBjb250aWVudCBsZSBub20gZHUgcGFxdWV0IGVuIGNvdXJzIGRlIHRyYWl0ZW1lbnQuCisuVFAgCitcZkJEUEtHX01BSU5UU0NSSVBUX0FSQ0hcZlAKK0TpZmluaWUgcGFyIFxmQmRwa2dcZlAgZGFucyBsJ2Vudmlyb25uZW1lbnQgZHUgc2NyaXB0IGR1IHJlc3BvbnNhYmxlLCBjZXR0ZQordmFyaWFibGUgY29udGllbnQgbCdhcmNoaXRlY3R1cmUgcG91ciBsYXF1ZWxsZSBsZSBwYXF1ZXQgYSDpdOkgY29uc3RydWl0LgorLlRQIAorXGZCRFBLR19NQUlOVFNDUklQVF9OQU1FXGZQCitE6WZpbmllIHBhciBcZkJkcGtnXGZQIGRhbnMgbCdlbnZpcm9ubmVtZW50IGR1IHNjcmlwdCBkdSByZXNwb25zYWJsZSwgY2V0dGUKK3ZhcmlhYmxlIGNvbnRpZW50IGxlIG5vbSBkdSBzY3JpcHQgZW4gY291cnMgZCdleOljdXRpb24gKHByZWluc3QsIHBvc3RpbnN0LAorcHJlcm0sIHBvc3RybSkuCisuCisuU0ggRVhFTVBMRVMKK1BvdXIgYWZmaWNoZXIgbGVzIHBhcXVldHMgbGnpcyBhdSBwcm9ncmFtbWUgXGZCdmlcZlAoMSlcIDoKKy5icgorICAgIFxmQmRwa2cgXC1sIFwoYXEqdmkqXChhcVxmUAorLmJyCisKK1BvdXIgdm9pciBsZXMgZW50cullcyBkZSBcZkkvdmFyL2xpYi9kcGtnL2F2YWlsYWJsZVxmUCBjb25jZXJuYW50IGRldXgKK3BhcXVldHNcIDoKKy5icgorICAgIFxmQmRwa2cgXC1cLXByaW50XC1hdmFpbCBlbHZpcyB2aW0gfCBsZXNzXGZQCisuYnIKKworUG91ciByZWNoZXJjaGVyIHZvdXNcLW3qbWUgZGFucyBsYSBsaXN0ZSBkZXMgcGFxdWV0c1wgOgorLmJyCisgICAgXGZCbGVzcyAvdmFyL2xpYi9kcGtnL2F2YWlsYWJsZVxmUAorLmJyCisKK1BvdXIgc3VwcHJpbWVyIGxlIHBhcXVldCBpbnN0YWxs6SBlbHZpc1wgOgorLmJyCisgICAgXGZCZHBrZyBcLXIgZWx2aXNcZlAKKy5icgorCitQb3VyIGluc3RhbGxlciB1biBwYXF1ZXQsIHZvdXMgZGV2ZXogZCdhYm9yZCBsZSB0cm91dmVyIGRhbnMgdW5lIGFyY2hpdmUgb3UKK3N1ciB1biBDRC4gTGUgZmljaGllciCrXCBhdmFpbGFibGVcILsgbW9udHJlIHF1ZSBsZSBwYXF1ZXQgdmltIHNlIHRyb3V2ZSBkYW5zCitsYSBzZWN0aW9uIKtcIGVkaXRvcnNcILtcIDoKKy5icgorICAgICBcZkJjZCAvbWVkaWEvY2Ryb20vcG9vbC9tYWluL3YvdmltXGZQCisgICAgIFxmQmRwa2cgXC1pIHZpbV80LjVcLTMuZGViXGZQCisuYnIKKworUG91ciBmYWlyZSB1bmUgY29waWUgbG9jYWxlIGRlcyDpdGF0cyBkZSBz6WxlY3Rpb24gZGVzIHBhcXVldHNcIDoKKy5icgorICAgIFxmQmRwa2cgXC1cLWdldFwtc2VsZWN0aW9ucyA+bXlzZWxlY3Rpb25zXGZQCisuYnIKKworVm91cyBwb3VycmlleiB0cmFuc2bpcmVyIGNlIGZpY2hpZXIgc3VyIHVuIGF1dHJlIG9yZGluYXRldXIgZXQgbCdpbnN0YWxsZXIKK2RlIGNldHRlIG1hbmnocmVcIDoKKy5icgorICAgIFxmQmRwa2cgXC1cLWNsZWFyXC1zZWxlY3Rpb25zXGZQCisgICAgXGZCZHBrZyBcLVwtc2V0XC1zZWxlY3Rpb25zIDxteXNlbGVjdGlvbnNcZlAKKy5icgorCitPbiByZW1hcnF1ZXJhIHF1ZSBjZWxhIG4naW5zdGFsbGUgb3UgbmUgc3VwcHJpbWUgcmllbiBkdSB0b3V0XCA7IGNlbGEgbmUgZmFpdAorcXUnZW5yZWdpc3RyZXIgbCfpdGF0IHNvdWhhaXTpIGRlcyBwYXF1ZXRzLiBWb3VzIGF1cmV6IGJlc29pbiBkJ2F1dHJlcworYXBwbGljYXRpb25zIHBvdXIgculjdXDpcmVyIGV0IGluc3RhbGxlciBy6WVsbGVtZW50IGxlcyBwYXF1ZXRzIHJlcXVpcy4gUGFyCitleGVtcGxlLCBleOljdXRleiBcZkJhcHRcLWdldCBkc2VsZWN0XC11cGdyYWRlXGZQLgorCitIYWJpdHVlbGxlbWVudCwgdm91cyB0cm91dmVyZXogcXVlIFxmQmRzZWxlY3RcZlAoMSkgZm91cm5pdCB1bmUgZmHnb24gcGx1cworYWlz6WUgZGUgbW9kaWZpZXIgbGVzIOl0YXRzIGRlIHPpbGVjdGlvbiBkZXMgcGFxdWV0cy4KKy5icgorLgorLlNIICJGT05DVElPTk5BTElUyVMgU1VQUEzJTUVOVEFJUkVTIgorRCdhdXRyZXMgcG9zc2liaWxpdOlzIHNvbnQgb2ZmZXJ0ZXMgZW4gaW5zdGFsbGFudCBsZXMgcGFxdWV0cyBzdWl2YW50c1wgOgorXGZCYXB0XGZQLCBcZkJhcHRpdHVkZVxmUCBldCBcZkJkZWJzdW1zXGZQLgorLgorLlNIICJWT0lSIEFVU1NJIgorXGZCYXB0aXR1ZGVcZlAoMSksIFxmQmFwdFxmUCgxKSwgXGZCZHNlbGVjdFxmUCgxKSwgXGZCZHBrZ1wtZGViXGZQKDEpLCBcZkJkcGtnXC1xdWVyeVxmUCgxKSwKK1xmQmRlYlxmUCg1KSwgXGZCZGViXC1jb250cm9sXGZQKDUpLCBcZkJkcGtnLmNmZ1xmUCg1KSBldCBcZkJkcGtnXC1yZWNvbmZpZ3VyZVxmUCg4KS4KKy4KKy5TSCBCT0dVRVMKK0wnb3B0aW9uIFxmQlwtXC1ub1wtYWN0XGZQIG5lIGRvbm5lIHBhcyBhc3NleiBkJ2luZm9ybWF0aW9ucyB1dGlsZXMuCisuCisuU0ggQVVURVVSUworQ29uc3VsdGV6IFxmSS91c3Ivc2hhcmUvZG9jL2Rwa2cvVEhBTktTXGZQIHBvdXIgbGEgbGlzdGUgZGUgY2V1eCBxdWkgb250Citjb250cmlidekg4CBcZkJkcGtnXGZQLgorLlNIIFRSQURVQ1RJT04KK0FyaWVsIFZBUkRJIDxhcmllbC52YXJkaUBmcmVlc2JlZS5mcj4sIDIwMDIuCitQaGlsaXBwZSBCYXRhaWxsZXIsIDIwMDYuCitOaWNvbGFzIEZyYW7nb2lzLCAyMDA2LgorVmV1aWxsZXogc2lnbmFsZXIgdG91dGUgZXJyZXVyIOAgPGRlYmlhblwtbDEwblwtZnJlbmNoQGxpc3RzLmRlYmlhbi5vcmc+LgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vZnIvZHBrZy5jZmcuNSBiL2Rwa2ctMS4xNi4xLjEvbWFuL2ZyL2Rwa2cuY2ZnLjUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzQ2NmMyZgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL2ZyL2Rwa2cuY2ZnLjUKQEAgLTAsMCArMSwzNCBAQAorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlwiCisuXCIgVGhpcyBmaWxlIHdhcyBnZW5lcmF0ZWQgd2l0aCBwbzRhLiBUcmFuc2xhdGUgdGhlIHNvdXJjZSBmaWxlLgorLlwiCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuVEggZHBrZy5jZmcgNSAwNVwtMDlcLTIwMDkgIlByb2pldCBEZWJpYW4iICJzdWl0ZSBkcGtnIgorLlNIIE5PTQorZHBrZy5jZmcgXC0gZmljaGllciBkZSBjb25maWd1cmF0aW9uIGRlIGRwa2cKKy4KKy5TSCBERVNDUklQVElPTgorQ2UgZmljaGllciBsaXN0ZSBsZXMgb3B0aW9ucyBhcHBsaXF16WVzIHBhciBk6WZhdXQg4CBkcGtnLiBDaGFxdWUgbGlnbmUKK2NvbnRpZW50IHVuZSBzZXVsZSBvcHRpb24sIOljcml0ZSBleGFjdGVtZW50IGNvbW1lIHN1ciBsYSBsaWduZSBkZSBjb21tYW5kZQorbWFpcyBzYW5zIGxlcyB0aXJldHMgaW5pdGlhdXgsIGludXRpbGlz6XMuIExlcyBndWlsbGVtZXRzIGF1dG91ciBkZXMgdmFsZXVycworZCdvcHRpb25zIHNvbnQgc3VwcHJpbelzLiBMZXMgY29tbWVudGFpcmVzIHNvbnQgYXV0b3Jpc+lzIGVuIGZhaXNhbnQKK2NvbW1lbmNlciBsYSBsaWduZSBwYXIgdW4gY2FyYWN06HJlIFxmQigiIyIpXGZQLgorLgorLlNIIEZJQ0hJRVJTCitcZkkvZXRjL2Rwa2cvZHBrZy5jZmcuZC9bMFwtOWFcLXpBXC1aX1wtXSpcZlAKKy5icgorXGZJL2V0Yy9kcGtnL2Rwa2cuY2ZnXGZQCisuYnIKK1xmSX4vLmRwa2cuY2ZnXGZQCisuCisuU0ggQVVURVVSCitDb25zdWx0ZXogXGZJL3Vzci9zaGFyZS9kb2MvZHBrZy9USEFOS1NcZlAgcG91ciBsYSBsaXN0ZSBkZSBjZXV4IHF1aSBvbnQKK2NvbnRyaWJ16SDgIFxmQmRwa2dcZlAuCisuCisuU0ggIlZPSVIgQVVTU0kiCitcZkJkcGtnXGZQKDEpLgorLlNIIFRSQURVQ1RJT04KK0FyaWVsIFZBUkRJIDxhcmllbC52YXJkaUBmcmVlc2JlZS5mcj4sIDIwMDIuCitQaGlsaXBwZSBCYXRhaWxsZXIsIDIwMDYuCitOaWNvbGFzIEZyYW7nb2lzLCAyMDA2LgorVmV1aWxsZXogc2lnbmFsZXIgdG91dGUgZXJyZXVyIOAgPGRlYmlhblwtbDEwblwtZnJlbmNoQGxpc3RzLmRlYmlhbi5vcmc+LgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vZnIvZHNlbGVjdC4xIGIvZHBrZy0xLjE2LjEuMS9tYW4vZnIvZHNlbGVjdC4xCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjU5NTI4ZjkKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9mci9kc2VsZWN0LjEKQEAgLTAsMCArMSw0NTMgQEAKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlRIIGRzZWxlY3QgMSAyMDExXC0wOFwtMTQgIlByb2pldCBEZWJpYW4iIERlYmlhbgorLlNIIE5PTQorZHNlbGVjdCBcLSBJbnRlcmZhY2UgZGUgZ2VzdGlvbiBkZSBwYXF1ZXRzIERlYmlhbi4KKy4KKy5TSCBTWU5PUFNJUworXGZCZHNlbGVjdFxmUCBbXGZJb3B0aW9uXGZQLi4uXSBbXGZJYWN0aW9uXGZQXQorLgorLlNIIERFU0NSSVBUSU9OCitcZkJkc2VsZWN0XGZQIGVzdCB1bmUgZGVzIHByaW5jaXBhbGVzIGludGVyZmFjZXMgZGUgZ2VzdGlvbiBkZXMgcGFxdWV0cyBzdXIgdW4gc3lzdOhtZSBEZWJpYW4uIMAgcGFydGlyIGR1IG1lbnUgcHJpbmNpcGFsIGRlIFxmQmRzZWxlY3RcZlAsIGwnYWRtaW5pc3RyYXRldXIgc3lzdOhtZSBwZXV0XCA6CisgXC0gTWV0dHJlIOAgam91ciBsYSBsaXN0ZSBkZXMgdmVyc2lvbnMgZGVzIHBhcXVldHMgZGlzcG9uaWJsZXMsCisgXC0gVm9pciBsJ+l0YXQgZGVzIHBhcXVldHMgaW5zdGFsbOlzIG91IGRpc3BvbmlibGVzLAorIFwtIE1vZGlmaWVyIGxlcyBz6WxlY3Rpb25zIGRlIHBhcXVldHMgZXQgZ+lyZXIgbGVzIGTpcGVuZGFuY2VzLAorIFwtIEluc3RhbGxlciBkZSBub3V2ZWF1eCBwYXF1ZXRzIG91IG1ldHRyZSDgIGpvdXIgdmVycyBkZSBub3V2ZWxsZXMgdmVyc2lvbnMuCisuUFAKK1xmQmRzZWxlY3RcZlAgZXN0IHVuZSBpbnRlcmZhY2UgYXUgZGVzc3VzIGRlIFxmQmRwa2dcZlAoMSksIGwnb3V0aWwgYmFzIG5pdmVhdSBkZQorZ2VzdGlvbiBkZXMgcGFxdWV0cyBEZWJpYW4uIElsIHByb3Bvc2Ug4CBsJ+ljcmFuIHVuIGdlc3Rpb25uYWlyZSBkZQorc+lsZWN0aW9ucyBkZSBwYXF1ZXRzIGF2ZWMgbGEgcG9zc2liaWxpdOkgZGUgculzb3VkcmUgbGVzIGNvbmZsaXRzIGV0Citk6XBlbmRhbmNlcy4gRXjpY3V06SBhdmVjIGxlcyBkcm9pdHMgYWRtaW5pc3RyYXRldXIsIGlsIHBlcm1ldCBkJ2luc3RhbGxlcgorZGVzIHBhcXVldHMsIGxlcyBtZXR0cmUg4CBqb3VyIG91IGxlcyByZXRpcmVyLiBQbHVzaWV1cnMgbel0aG9kZSBkJ2FjY+hzCitwZXV2ZW50IOp0cmUgY29uZmlndXLpZXMgcG91ciBy6WN1cOlyZXIgbGVzIGluZm9ybWF0aW9ucyBzdXIgbGVzIHZlcnNpb25zCitkZXMgcGFxdWV0cyBkaXNwb25pYmxlcyBldCBsZXMgcGFxdWV0cyBldXhcLW3qbWVzIGRhbnMgbGVzIGTpcPR0cyBkZQorcGFxdWV0cy4gU3VpdmFudCBsYSBt6XRob2RlIGQnYWNj6HMgdXRpbGlz6WUsIGNlcyBk6XD0dHMgcGV1dmVudCDqdHJlIGRlcworc2VydmV1cnMgZCdhcmNoaXZlcyBwdWJsaWNzIHN1ciBJbnRlcm5ldCwgZGVzIHNlcnZldXJzIGxvY2F1eCBvdSBkZXMKK0NEUk9NLiBMYSBt6XRob2RlIGQnYWNj6HMgcmVjb21tYW5k6WUgZXN0IFxmSWFwdFxmUCwgcXVpIGVzdCBmb3VybmllIHBhciBsZQorcGFxdWV0IFxmQmFwdFxmUC4KKy5QUAorTm9ybWFsbHkgXGZCZHNlbGVjdFxmUCBpcyBpbnZva2VkIHdpdGhvdXQgcGFyYW1ldGVycy4gQW4gaW50ZXJhY3RpdmUgbWVudSBpcworcHJlc2VudGVkLCBvZmZlcmluZyB0aGUgdXNlciBhIGxpc3Qgb2YgYWN0aW9ucy4gSWYgYW4gYWN0aW9uIGlzIGdpdmVuIGFzCithcmd1bWVudCwgdGhlbiB0aGF0IGFjdGlvbiBpcyBzdGFydGVkIGltbWVkaWF0ZWx5LiBTZXZlcmFsIGNvbW1hbmQgbGluZQorcGFyYW1ldGVycyBhcmUgc3RpbGwgYXZhaWxhYmxlIHRvIG1vZGlmeSB0aGUgcnVubmluZyBiZWhhdmlvdXIgb2YgXGZCZHNlbGVjdFxmUAorb3Igc2hvdyBhZGRpdGlvbmFsIGluZm9ybWF0aW9uIGFib3V0IHRoZSBwcm9ncmFtLgorLgorLlNIIE9QVElPTlMKK0FsbCBvcHRpb25zIGNhbiBiZSBzcGVjaWZpZWQgYm90aCBvbiB0aGUgY29tbWFuZCBsaW5lIGFuZCBpbiB0aGUgXGZCZHNlbGVjdFxmUAorY29uZmlndXJhdGlvbiBmaWxlIFxmSS9ldGMvZHBrZy9kc2VsZWN0LmNmZ1xmUCBvciB0aGUgZmlsZXMgb24gdGhlCitjb25maWd1cmF0aW9uIGRpcmVjdG9yeSBcZkkvZXRjL2Rwa2cvZHNlbGVjdC5jZmcuZC9cZlAuIEVhY2ggbGluZSBpbiB0aGUKK2NvbmZpZ3VyYXRpb24gZmlsZSBpcyBlaXRoZXIgYW4gb3B0aW9uIChleGFjdGx5IHRoZSBzYW1lIGFzIHRoZSBjb21tYW5kIGxpbmUKK29wdGlvbiBidXQgd2l0aG91dCBsZWFkaW5nIGRhc2hlcykgb3IgYSBjb21tZW50IChpZiBpdCBzdGFydHMgd2l0aCBhIFxmQiNcZlApLgorLmJyCisuVFAgCitcZkJcLVwtYWRtaW5kaXJcZlBcZkkgculwZXJ0b2lyZVxmUAorQ2hhbmdlIGxlIHLpcGVydG9pcmUgb/kgbGVzIGZpY2hpZXJzIKtcIFxmSXN0YXR1c1xmUFwguywgq1wgXGZJYXZhaWxhYmxlXGZQXCC7IGV0CithdXRyZXMgc29udCBzaXR16XMuIExlIHLpcGVydG9pcmUgcGFyIGTpZmF1dCBlc3QgXGZJL3Zhci9saWIvZHBrZ1xmUCBldCBpbCBuZQorZGV2cmFpdCBwYXMgYXZvaXIgYmVzb2luIGRlIGxlIG1vZGlmaWVyLgorLlRQIAorXGZCXC1cLWRlYnVnXGZQXGZJIGZpbGUgXGZQfFxmSSBcZlBcZkJcLURcZlBcZklmaWxlXGZQCitUdXJuIG9uIGRlYnVnZ2luZy4gRGVidWdnaW5nIGluZm9ybWF0aW9uIGlzIHNlbnQgdG8gXGZJZmlsZVxmUC4KKy5UUCAKK1xmQlwtXC1leHBlcnRcZlAKK0FjdGl2ZXIgbGUgbW9kZSBleHBlcnQsIGMnZXN0XC3gXC1kaXJlIG5lIHBhcyBhZmZpY2hlciBsZXMgbWVzc2FnZXMgZCdhaWRlCitlbm51eWV1eC4KKy5UUCAKK1xmQlwtXC1jb2xvdXJcZlB8XGZCXC1cLWNvbG9yXGZQIFxmSXBhcnRpZV/pY3JhbjpcZlBbXGZJcHJlbWllcl9wbGFuXGZQXSxbXGZJYXJyaehyZV9wbGFuXGZQXVtcZkk6YXR0clxmUFtcZkkrYXR0cisuLlxmUF1dCitDb25maWd1cmUgbGVzIGNvdWxldXJzIGRlcyDpY3JhbnMuIENlY2kgbmUgZm9uY3Rpb25uZSBxdWUgc2kgdm90cmUgdGVybWluYWwKK2focmUgbGVzIGNvdWxldXJzLiBDZXR0ZSBvcHRpb24gcGV1dFwt6nRyZSB1dGlsaXPpZSBwbHVzaWV1cnMgZm9pcyAoZXQgaWwgZXN0Citwculm6XJhYmxlIGRlIGwndXRpbGlzZXIgZGFucyBcZklkc2VsZWN0LmNmZ1xmUCkuIENoYXF1ZSB1dGlsaXNhdGlvbiBjaGFuZ2UgbGEKK2NvdWxldXIgKGV0LCBlbiBvcHRpb24sIGQnYXV0cmVzIGF0dHJpYnV0cykgZCd1bmUgcGFydGllIGRlIGwn6WNyYW4uIExlcworcGFydGllcyBkZSBsJ+ljcmFuIChkZSBoYXV0IGVuIGJhcykgc29udFwgOgorLlJTCisuVFAgCitcZkJ0aXRsZVxmUAorTGUgdGl0cmUgZGUgbCfpY3Jhbi4KKy5UUCAKK1xmQmxpc3RoZWFkXGZQCitMYSBsaWduZSBkJ2VuXC106nRlIGF1IGRlc3N1cyBkZSBsYSBsaXN0ZSBkZSBwYXF1ZXRzLgorLlRQIAorXGZCbGlzdFxmUAorTGEgbGlzdGUgZOlyb3VsYW50ZSBkZSBwYXF1ZXRzIChldCBkZSB0ZXh0ZXMgZXhwbGljYXRpZnMpLgorLlRQIAorXGZCbGlzdHNlbFxmUAorTCfpbOltZW50IHPpbGVjdGlvbm7pIGRhbnMgbGEgbGlzdGUuCisuVFAgCitcZkJwa2dzdGF0ZVxmUAorRGFucyBsYSBsaXN0ZSBkZXMgcGFxdWV0cywgbGUgdGV4dGUgcXVpIGluZGlxdWUgbCfpdGF0IGFjdHVlbCBkZSBjaGFxdWUKK3BhcXVldC4KKy5UUCAKK1xmQnBrZ3N0YXRlc2VsXGZQCitEYW5zIGxhIGxpc3RlIGRlcyBwYXF1ZXRzLCBsZSB0ZXh0ZSBxdWkgaW5kaXF1ZSBsJ+l0YXQgYWN0dWVsIGR1IHBhcXVldAorc+lsZWN0aW9ubukuCisuVFAgCitcZkJpbmZvaGVhZFxmUAorTGEgbGlnbmUgZCdlblwtdOp0ZSBxdWkgYWZmaWNoZSBsJ+l0YXQgZHUgcGFxdWV0IHPpbGVjdGlvbm7pLgorLlRQIAorXGZCaW5mb2Rlc2NcZlAKK0xhIGRlc2NyaXB0aW9uIGNvdXJ0ZSBkdSBwYXF1ZXQuCisuVFAgCitcZkJpbmZvXGZQCitVdGlsaXPpIHBvdXIgYWZmaWNoZXIgbGVzIGluZm9ybWF0aW9ucyBzdXIgbGUgcGFxdWV0LCBjb21tZSBwYXIgZXhlbXBsZSBsYQorZGVzY3JpcHRpb24gZHUgcGFxdWV0LgorLlRQIAorXGZCaW5mb2Zvb3RcZlAKK0xhIGRlcm5p6HJlIGxpZ25lIGRlIGwn6WNyYW4gbG9ycyBkZSBsYSBz6WxlY3Rpb24gZGVzIHBhcXVldHMuCisuVFAgCitcZkJxdWVyeVxmUAorVXRpbGlz6SBwb3VyIGxlcyBsaWduZXMgZGVzIHJlY2hlcmNoZXMuCisuVFAgCitcZkJoZWxwc2NyZWVuXGZQCitMYSBjb3VsZXVyIGRlcyDpY3JhbnMgZCdhaWRlLgorLlJFCisuUAorQXBy6HMgbGEgcGFydGllIGRlIGwn6WNyYW4gY29uY2VybullLCB2aWVudCB1biBzaWduZSBkZXV4XC1wb2ludHMgZXQgbGEKK3Nw6WNpZmljYXRpb24gZGVzIGNvdWxldXJzLiBQb3VyIHN1cmNoYXJnZXIgbGVzIHZhbGV1cnMgZGVzIGNvdWxldXJzCitjb21waWzpZXMsIHZvdXMgcG91dmV6IGluZGlxdWVyIGxhIGNvdWxldXIgZHUgcHJlbWllciBwbGFuLCBkZQorbCdhcnJp6HJlXC1wbGFuLCBvdSBsZXMgZGV1eC4gVXRpbGlzZXogbGVzIG5vbXMgc3RhbmRhcmQgZGUgY291bGV1cnMgY3Vyc2VzLgorLlAKK0VuIG9wdGlvbiwgbGVzIHNw6WNpZmljYXRpb25zIGRlcyBjb3VsZXVycyBwZXV2ZW50IOp0cmUgc3VpdmllcyBkJ3VuIHNpZ25lCitkZXV4XC1wb2ludHMgZXQgZGUgbGEgc3DpY2lmaWNhdGlvbiBkJ3VuIGF0dHJpYnV0LiBJbCBzJ2FnaXQgZCd1bmUgbGlzdGUKK2QnYXR0cmlidXRzLCBz6XBhculzIHBhciBkZXMgY2FyYWN06HJlcyBwbHVzICirXCArXCC7KS4gUGFybWkgbGVzIGF0dHJpYnV0cworZGlzcG9uaWJsZXMsIG9uIHRyb3V2ZSAodG91cyBuZSBmb25jdGlvbm5lbnQgcGFzIHN1ciB0b3VzIGxlcyB0ZXJtaW5hdXgpXCA6Citub3JtYWwsIHN0YW5kb3V0LCB1bmRlcmxpbmUsIHJldmVyc2UsIGJsaW5rLCBicmlnaHQsIGRpbSBldCBib2xkLgorLlRQIAorXGZCXC1cLWhlbHBcZlAKK0FmZmljaGUgdW5lIGFpZGUgcmFwaWRlIGV0IHNlIHRlcm1pbmUgbm9ybWFsZW1lbnQuCisuVFAgCitcZkJcLVwtdmVyc2lvblxmUAorQWZmaWNoZSBsYSB2ZXJzaW9uIGV0IHNlIHRlcm1pbmUgbm9ybWFsZW1lbnQuCisuCisuU0ggQUNUSU9OUworV2hlbiBcZkJkc2VsZWN0XGZQIGlzIHN0YXJ0ZWQgaXQgY2FuIHBlcmZvcm0gdGhlIGZvbGxvd2luZyBhY3Rpb25zLCBlaXRoZXIKK2RpcmVjdGx5IGlmIGl0IHdhcyBzcGVjaWZpZWQgb24gdGhlIGNvbW1hbmQgbGluZSBvciBieSBwcm9tcHRpbmcgdGhlIHVzZXIKK3dpdGggYSBtZW51IG9mIGF2YWlsYWJsZSBhY3Rpb25zIGlmIHJ1bm5pbmcgaW50ZXJhY3RpdmVseToKKy5TUyAiQWNj6WRlciAoYWNjZXNzKSIKK0Nob2lzaXIgZXQgY29uZmlndXJlciB1bmUgbel0aG9kZSBkJ2FjY+hzIGF1eCBk6XD0dHMgZGUgcGFxdWV0cy4KKy5zcAorQnkgZGVmYXVsdCwgXGZCZHNlbGVjdFxmUCBwcm92aWRlcyBzZXZlcmFsIG1ldGhvZHMgc3VjaCBhcyBcZkljZHJvbVxmUCwKK1xmSW11bHRpX2NkXGZQLCBcZkluZnNcZlAsIFxmSW11bHRpX25mc1xmUCwgXGZJaGFyZGRpc2tcZlAsIFxmSW1vdW50ZWRcZlAsIFxmSW11bHRpX21vdW50XGZQLAorXGZJZmxvcHB5XGZQIG9yIFxmSWZ0cFxmUCwgYnV0IG90aGVyIHBhY2thZ2VzIG1heSBwcm92aWRlIGFkZGl0aW9uYWwgbWV0aG9kcywKK2VnLiB0aGUgXGZJYXB0XGZQIGFjY2VzcyBtZXRob2QgcHJvdmlkZWQgYnkgdGhlIFxmQmFwdFxmUCBwYWNrYWdlLgorLnNwCitMJ3V0aWxpc2F0aW9uIGRlIGxhIG3pdGhvZGUgZCdhY2PocyBcZklhcHRcZlAgZXN0IGZvcnRlbWVudCBjb25zZWlsbOllLgorLnNwCisuU1MgIk1pc2Ug4CBqb3VyICh1cGRhdGUpIgorUmFmcmHuY2hpciBsYSBsaXN0ZSBkZXMgcGFxdWV0cyBkaXNwb25pYmxlcy4KKy5zcAorUuljdXDocmUgdW5lIGxpc3RlIGRlIHZlcnNpb25zIGRlIHBhcXVldHMgZGlzcG9uaWJsZXMgZGVwdWlzIHVuIGTpcPR0IGRlCitwYXF1ZXRzLCBxdWkgYSDpdOkgY29uZmlndXLpIHBvdXIgbGEgbel0aG9kZSBkJ2FjY+hzIGFjdHVlbGxlLCBwdWlzIG1ldCDgCitqb3VyIGxhIGJhc2UgZGUgZG9ubullcyBkZSBkcGtnLiBMZXMgbGlzdGVzIGRlIHBhcXVldHMgc29udCBkJ2hhYml0dWRlCitmb3VybmlzIHBhciBsZXMgZOlw9HRzIHNvdXMgbGEgZm9ybWUgZGUgZmljaGllcnMgXGZJUGFja2FnZXNcZlAgb3UKK1xmSVBhY2thZ2VzLmd6XGZQLiBDZXMgZmljaGllcnMgcGV1dmVudCDqdHJlIGfpbuly6XMgcGFyIGxlcyByZXNwb25zYWJsZXMgZGVzCitk6XD0dHMgZ3LiY2UgYXUgcHJvZ3JhbW1lIFxmQmRwa2dcLXNjYW5wYWNrYWdlc1xmUCgxKS4KKy5zcAorTGUgZm9uY3Rpb25uZW1lbnQgZOl0YWlsbOkgZGVzIG1pc2VzIOAgam91ciBk6XBlbmQgZGUgbCdpbXBs6W1lbnRhdGlvbiBkZSBsYQorbel0aG9kZSBkJ2FjY+hzLiBOb3JtYWxlbWVudCBsZSBwcm9jZXNzdXMgc2UgcGFzc2UgdG91dCBzZXVsLCBzYW5zCitpbnRlcnZlbnRpb24gZGUgbCd1dGlsaXNhdGV1ci4KKy5zcAorLlNTICJT6WxlY3Rpb25uZXIgKHNlbGVjdCkiCitWb2lyIG91IGfpcmVyIGxlcyBwYXF1ZXRzIHPpbGVjdGlvbm7pcyBldCBsZXMgZOlwZW5kYW5jZXMuCisuc3AKK0lsIHMnYWdpdCBkZSBsYSBmb25jdGlvbiBwcmluY2lwYWxlIGRlIFxmQmRzZWxlY3RcZlAuIERhbnMgbCfpY3JhbiBkZQorc+lsZWN0aW9uLCBsJ3V0aWxpc2F0ZXVyIHBldXQgY29uc3VsdGVyIGxhIGxpc3RlIGRlIHRvdXMgbGVzIHBhcXVldHMKK2Rpc3BvbmlibGVzIG91IGluc3RhbGzpcy4gRXjpY3V06SBhdmVjIGxlcyBwcml2aWzoZ2VzIGFkbWluaXN0cmF0ZXVyLCBpbAorcGVybWV0IOlnYWxlbWVudCBkZSBjaGFuZ2VyIGRlIGZh529uIGludGVyYWN0aXZlIGwn6XRhdCBkZSBwYXF1ZXRzCitz6WxlY3Rpb25u6XMuIFxmQmRzZWxlY3RcZlAgdulyaWZpZSBsZXMgaW1wbGljYXRpb25zIGRlIGNlcyBjaGFuZ2VtZW50cwordmlzXC3gXC12aXMgZGVzIGTpcGVuZGFuY2VzIGV0IGRlcyBjb25mbGl0cyBlbnRyZSBwYXF1ZXRzLgorLnNwCitMb3JzcXUndW4gY29uZmxpdCBvdSB1bmUgZOlwZW5kYW5jZSBtYW5xdWFudGUgZXN0IGTpdGVjdOksIHVuIHNvdXNcLeljcmFuIGRlCity6XNvbHV0aW9uIGRlcyBk6XBlbmRhbmNlcyBlc3QgcHJvcG9z6SDgIGwndXRpbGlzYXRldXIuIERhbnMgY2V0IOljcmFuLCB1bmUKK2xpc3RlIGRlIHBhcXVldHMgYXZlYyBkZXMgY29uZmxpdHMgb3UgYXZlYyBkZXMgZOlwZW5kYW5jZXMgbWFucXVhbnRlcyBlc3QKK2FmZmljaOllIGV0IHBvdXIgY2hhcXVlIHBhcXVldCBsaXN06SwgbGEgcmFpc29uIGRlIHNhIHBy6XNlbmNlIGRhbnMgY2V0dGUKK2xpc3RlIGVzdCBpbmRpcXXpZS4gTCd1dGlsaXNhdGV1ciBwZXV0IGVuc3VpdGUgYXBwbGlxdWVyIGxlcyBzdWdnZXN0aW9uIGRlCitcZkJkc2VsZWN0XGZQLCBsZXMgbW9kaWZpZXIgb3Ugc3VwcHJpbWVyIHRvdXRlcyBsZXMgbW9kaWZpY2F0aW9ucywgZG9udCBjZWxsZXMKK3F1aSBvbnQgY3Lp6SBsZXMgY29uZmxpdHMgb3UgZOlwZW5kYW5jZXMgbm9uIHLpc29sdWVzLgorLnNwCitMJ3V0aWxpc2F0aW9uIGRlIGwn6WNyYW4gaW50ZXJhY3RpZiBkZXMgc+lsZWN0aW9ucyBkZSBwYXF1ZXRzIGVzdCBleHBsaXF16WUKK2RlIGZh529uIHBsdXMgZOl0YWlsbOllIGNpXC1kZXNzb3VzLgorLnNwCisuU1MgIkluc3RhbGxlciAoaW5zdGFsbCkiCitJbnN0YWxsZXIgbGVzIHBhcXVldHMgc+lsZWN0aW9ubulzLgorLnNwCitMYSBt6XRob2RlIGQnYWNj6HMgculjdXDpcmVyYSBkYW5zIGxlcyBk6XD0dHMgbGVzIHBhcXVldHMgcXVpIHBldXZlbnQg6nRyZQoraW5zdGFsbOlzIG91IG1pcyDgIGpvdXIsIHB1aXMgbGVzIGluc3RhbGxlIGF2ZWMgXGZCZHBrZ1xmUC4gRW4gZm9uY3Rpb24gZGUgbGEKK23pdGhvZGUgZCdhY2PocywgbGVzIHBhcXVldHMgcGV1dmVudCDqdHJlIHRvdXMgculjdXDpculzIGF2YW50IGluc3RhbGxhdGlvbiwKK291IHLpY3Vw6XLpcyDgIGxhIGRlbWFuZGUuIENlcnRhaW5lcyBt6XRob2RlcyBkJ2FjY+hzIHJldGlyZW50IOlnYWxlbWVudCBsZXMKK3BhcXVldHMgcXVpIG9udCDpdOkgbWFycXXpcyBwb3VyIOp0cmUgcmV0aXLpcy4KKy5zcAorU2kgdW5lIGVycmV1ciBhcHBhcmHudCBsb3JzIGRlIGwnaW5zdGFsbGF0aW9uLCBpbCBlc3QgcmVjb21tYW5k6SBkZQorcmVk6W1hcnJlciB1bmUgaW5zdGFsbGF0aW9uLiBMYSBwbHVwYXJ0IGRlcyBmb2lzLCBsZXMgcHJvYmzobWVzCitkaXNwYXJhaXNzZW50IG91IHNvbnQgculzb2x1cy4gU2kgbGVzIHByb2Js6G1lcyBwZXJzaXN0ZW50IG91IHNpCitsJ2luc3RhbGxhdGlvbiBuJ2VzdCBwYXMgY29ycmVjdGUsIHZldWlsbGV6IGV4YW1pbmVyIGxlcyBjYXVzZXMgZXQKK2NpcmNvbnN0YW5jZXMgcHVpcyBzb3VtZXR0ZXogdW4gcmFwcG9ydCBkZSBib2d1ZSBhdSBzeXN06G1lIGRlIHN1aXZpIGRlcworYm9ndWVzIERlYmlhbi4gTGVzIGluc3RydWN0aW9ucyBwb3VyIHNvdW1ldHRyZSBjZXMgcmFwcG9ydHMgZGUgYm9ndWVzIHNlCit0cm91dmVudCBzdXIgaHR0cDovL2J1Z3MuZGViaWFuLm9yZy8gb3UgZGFucyBsYSBwYWdlIGRlIG1hbnVlbCBkZQorXGZCcmVwb3J0YnVnXGZQKDEpLCBzaSBjZSBwYXF1ZXQgZXN0IGluc3RhbGzpLgorLnNwCitMZXMgZOl0YWlscyBkZSBsJ2FjdGlvbiBkJ2luc3RhbGxhdGlvbiBk6XBlbmRlbnQgZGUgbCdpbXBs6W1lbnRhdGlvbiBkZSBsYQorbel0aG9kZSBkJ2FjY+hzLiBMJ2F0dGVudGlvbiBldCBsYSBjb250cmlidXRpb24gZGUgbCd1dGlsaXNhdGV1ciBwZXV2ZW50CivqdHJlIG7pY2Vzc2FpcmUgbG9ycyBkZSBsJ2luc3RhbGxhdGlvbiBvdSBkdSByZXRyYWl0IGRlcyBwYXF1ZXRzLiBDZWNpCitk6XBlbmQgZGVzIHNjcmlwdHMgZGVzIHJlc3BvbnNhYmxlcyBkZXMgcGFxdWV0cy4gQ2VydGFpbnMgcGFxdWV0cyB1dGlsaXNlbnQKK2xhIGJpYmxpb3Ro6HF1ZSBcZkJkZWJjb25mXGZQKDEpLCBjZSBxdWkgcGVybWV0IGxhIG1pc2UgZW4gcGxhY2UKK2QnaW5zdGFsbGF0aW9ucyBwbHVzIGZsZXhpYmxlcyBvdSBt6m1lIGF1dG9tYXRpc+llcy4KKy5zcAorLlNTICJDb25maWd1cmVyIChjb25maWcpIgorQ29uZmlndXJlIGxlcyBwYXF1ZXRzIGTpauAgaW5zdGFsbOlzIG1haXMgbifpdGFudCBwYXMgY29tcGzodGVtZW50CitpbnN0YWxs6XMuCisuc3AKKy5TUyAiUmV0aXJlciAocmVtb3ZlKSIKK1JldGlyZXIgb3UgcHVyZ2VyIGxlcyBwYXF1ZXRzIGluc3RhbGzpcyBxdWkgc29udCBtYXJxdelzIGNvbW1lIOl0YW50IOAKK3JldGlyZXIuCisuc3AKKy5TUyAiUXVpdHRlciAocXVpdCkiCitRdWl0dGVyIFxmQmRzZWxlY3RcZlAKKy5zcAorUXVpdHRlIGxlIHByb2dyYW1tZSBhdmVjIHVuIGNvZGUgZCdlcnJldXIgZGUgMCAoc3VjY+hzKS4KKy5zcAorLgorLlNIICJHZXN0aW9uIGRlcyBz6WxlY3Rpb25zIGRlIHBhcXVldHMiCisuc3AKKy5TUyBJbnRyb2R1Y3Rpb24KKy5zcAorXGZCZHNlbGVjdFxmUCBleHBvc2UgZGlyZWN0ZW1lbnQgbCdhZG1pbmlzdHJhdGV1ciDgIHVuZSBwYXJ0aWUgZGUgbGEgY29tcGxleGl06QorbGnpZSDgIGxhIGdlc3Rpb24gZCd1biBncmFuZCBub21icmUgZGUgcGFxdWV0cyBheWFudCBiZWF1Y291cCBkZSBsaWVucyBlbnRyZQorZXV4LiBQb3VyIHVuIHV0aWxpc2F0ZXVyIHF1aSBuJ2VzdCBwYXMgaGFiaXR16SBhdXggY29uY2VwdHMgZXQgYXUgc3lzdOhtZSBkZQorZ2VzdGlvbiBkZXMgcGFxdWV0cyBEZWJpYW4sIGNlbGEgcGV1dCDqdHJlIHBlcnR1cmJhbnQuIE1haXMgXGZCZHNlbGVjdFxmUCBlc3QKK2Nvbud1IHBvdXIgYWlkZXIgbGEgZ2VzdGlvbiBldCBsJ2FkbWluaXN0cmF0aW9uIGRlcyBwYXF1ZXRzLiBDZSBuJ2VzdCBxdSd1bgorb3V0aWwsIGV0IG5lIGRvaXQgcGFzIHJlbXBsYWNlciBsYSBjb21wculoZW5zaW9uIGV0IGxlcyBhcHRpdHVkZXMgZCd1bgorYWRtaW5pc3RyYXRldXIuIEwndXRpbGlzYXRldXIgZG9pdCDqdHJlIGZhbWlsaWVyIGRlcyBjb25jZXB0cyBzb3VzXC1qYWNlbnRzCithdSBzeXN06G1lIGRlIGdlc3Rpb24gZGVzIHBhcXVldHMgRGViaWFuLiBFbiBjYXMgZGUgZG91dGUsIGNvbnN1bHRleiBsYSBwYWdlCitkZSBtYW51ZWwgXGZCZHBrZ1xmUCgxKSBldCBsYSBjaGFydGUgRGViaWFuIHBy6XNlbnRlIGRhbnMgbGUgcGFxdWV0CitcZkJkZWJpYW5cLXBvbGljeVxmUC4KKy5zcAorQSBtb2lucyBxdWUgXGZCZHNlbGVjdFxmUCBzb2l0IGxhbmPpIGVuIG1vZGUgZXhwZXJ0IG91IGludGVybelkaWFpcmUsIHVuCittZXNzYWdlIGQnYWlkZSBlc3QgZCdhYm9yZCBhZmZpY2jpIGxvcnNxdWUgY2V0dGUgYWN0aW9uIGVzdCBjaG9pc2llIGRhbnMgbGUKK21lbnUuIElsIGVzdCBcZkJmb3J0ZW1lbnRcZlAgY29uc2VpbGzpIOAgbCd1dGlsaXNhdGV1ciBkJ+l0dWRpZXIgdG91dGVzIGxlcworaW5mb3JtYXRpb25zIGRhbnMgY2VzIOljcmFucyBkJ2FpZGUgbG9yc3F1J2lscyBhcHBhcmFpc3NlbnQuIExlcyDpY3JhbnMKK2QnYWlkZSBwZXV2ZW50IOp0cmUgYWZmaWNo6XMg4CB0b3V0IG1vbWVudCDgIGwnYWlkZSBkZSBsYSB0b3VjaGUgq1wgXGZCP1xmUFwguy4KKy5zcAorLlNTICJEaXNwb3NpdGlvbiBkZSBsJ+ljcmFuIgorLnNwCitMJ+ljcmFuIGRlIHPpbGVjdGlvbiBlc3QgZOljb3Vw6SBwYXIgZOlmYXV0IGVuIHVuZSBtb2l0aekgc3Vw6XJpZXVyZSBldCB1bmUKK21vaXRp6SBpbmbpcmlldXJlLiBMYSBtb2l0aekgc3Vw6XJpZXVyZSBhZmZpY2hlIHVuZSBsaXN0ZSBkZSBwYXF1ZXRzLiBVbgorY3Vyc2V1ciBwZXJtZXQgZGUgc+lsZWN0aW9ubmVyIHVuIHBhcXVldCwgb3UgdW4gZ3JvdXBlIGRlIHBhcXVldCBlbgorc+lsZWN0aW9ubmFudCBsZSB0aXRyZSBkdSBncm91cGUsIHNpIOdhIHMnYXBwbGlxdWUuIExhIG1vaXRp6SBpbmbpcmlldXJlIGRlCitsJ+ljcmFuIGFmZmljaGUgbGVzIGTpdGFpbHMgZHUgcGFxdWV0IHPpbGVjdGlvbm7pIGRhbnMgbGEgbW9pdGnpCitzdXDpcmlldXJlLiBMZSB0eXBlIGRlIGTpdGFpbCBhZmZpY2jpIHBldXQgdmFyaWVyLgorLnNwCitBcHB1eWV6IHN1ciBsYSB0b3VjaGUgq1wgXGZCSVxmUFwguyBwb3VyIHBhc3NlciBkJ3VuIGFmZmljaGFnZSBkZSBsYSBsaXN0ZSBkZXMKK3BhcXVldHMgZW4gbW9kZSBwbGVpblwt6WNyYW4sIOAgdW4gYWZmaWNoYWdlIHBsdXMgaW1wb3J0YW50IGRlcyBk6XRhaWxzIGRlcworcGFxdWV0cyBvdSDgIHVuIG1vZGUgcGFydGFn6SDpcXVpdGFibGVtZW50LgorLnNwCisuU1MgIlZ1ZSBkZXMgZOl0YWlscyBkJ3VuIHBhcXVldCIKKy5zcAorTGEgdnVlIGRlcyBk6XRhaWxzIGQndW4gcGFxdWV0IGFmZmljaGUgcGFyIGTpZmF1dCBsYSBkZXNjcmlwdGlvbiBsb25ndWUgZHUgcGFxdWV0IHPpbGVjdGlvbm7pIGRhbnMgbGEgbGlzdGUgZGVzIHBhcXVldHMuIExlIHR5cGUgZGUgZOl0YWlsIHBldXQg6nRyZSBtb2RpZmnpIGVuIHByZXNzYW50IGxhIHRvdWNoZSCrXCBcZkJpXGZQXCC7LiBDZWNpIHBlcm1ldCBkZSBwYXNzZXIgZGVcIDoKKyBcLSBsYSBkZXNjcmlwdGlvbiBsb25ndWUKKyBcLSBsZXMgaW5mb3JtYXRpb25zIGRlIGNvbnRy9GxlIGRlIGxhIHZlcnNpb24gaW5zdGFsbOllCisgXC0gbGVzIGluZm9ybWF0aW9ucyBkZSBjb250cvRsZSBkZSBsYSB2ZXJzaW9uIGRpc3BvbmlibGUKKy5zcAorRGFucyB1biDpY3JhbiBkZSBy6XNvbHV0aW9uIGRlcyBk6XBlbmRhbmNlcywgb24gcGV1dCDpZ2FsZW1lbnQgdm9pciBsZXMKK2TpcGVuZGFuY2VzIGV0IGNvbmZsaXRzIHNw6WNpZmlxdWVzIGF1IHBhcXVldCBldCBxdWkgZXhwbGlxdWVudCBsYSBwculzZW5jZQorZHUgcGFxdWV0IGRhbnMgbGEgbGlzdGUuCisuc3AKKy5TUyAiTGlzdGUgZGVzIOl0YXRzIGRlcyBwYXF1ZXRzIgorLnNwCitMJ+ljcmFuIHByaW5jaXBhbCBkZSBz6WxlY3Rpb24gYWZmaWNoZSB1bmUgbGlzdGUgZGUgdG91cyBsZXMgcGFxdWV0cyBjb25udXMKK3BhciBsZSBzeXN06G1lIGRlIGdlc3Rpb24gZGVzIHBhcXVldHMgRGViaWFuLiBDZWNpIGluY2x1cyBsZXMgcGFxdWV0cworaW5zdGFsbOlzIHN1ciBsZSBzeXN06G1lIGV0IGxlcyBwYXF1ZXRzIGNvbm51cyBwYXIgbGEgYmFzZSBkZSBkb25u6WVzIGRlcworcGFxdWV0cyBkaXNwb25pYmxlcy4KKy5zcAorUG91ciB0b3VzIGxlcyBwYXF1ZXRzLCBsYSBsaXN0ZSBhZmZpY2hlIHN1ciB1bmUgbGlnbmUgbCfpdGF0IGR1IHBhcXVldCwgc2EKK3ByaW9yaXTpLCBzYSBzZWN0aW9uLCBsZXMgdmVyc2lvbnMgaW5zdGFsbOllcyBldCBkaXNwb25pYmxlcywgbGUgbm9tIGR1CitwYXF1ZXQgZXQgc2EgZGVzY3JpcHRpb24gY291cnRlLiBFbiBhcHB1eWFudCBzdXIgbGEgdG91Y2hlIKtcIFxmQlZcZlBcILssIG9uIHBldXQKK2FjdGl2ZXIgb3UgZOlzYWN0aXZlciBsJ2FmZmljaGFnZSBkZXMgdmVyc2lvbnMgaW5zdGFsbOllcyBldCBkaXNwb25pYmxlcy4gRW4KK2FwcHV5YW50IHN1ciBsYSB0b3VjaGUgq1wgXGZCdlxmUFwguywgbCdhZmZpY2hhZ2UgZGUgbCfpdGF0IHBhc3NlIGQndW4gbW9kZQordmVyYmV1eCDgIHVuIG1vZGUgcmFjY291cmNpLiBQYXIgZOlmYXV0LCBsJ+l0YXQgcmFjY291cmNpIGVzdCB1dGlsaXPpLgorLnNwCitMJ+l0YXQgcmFjY291cmNpIGNvbnNpc3RlIGVuIDQgcGFydGllc1wgOiB1biBkcmFwZWF1IGQnZXJyZXVyLCBxdWkgZXN0CitkJ2hhYml0dWRlIHZpZGUsIGwn6XRhdCBjb3VyYW50LCBsJ+l0YXQgZGUgc+lsZWN0aW9uIHBy6WPpZGVudCBldCBsJ+l0YXQgZGUKK3PpbGVjdGlvbiBhY3R1ZWwuIExlcyBkZXV4IHByZW1pZXJzIGRvbm5lbnQgZGVzIGluZGljYXRpb25zIHN1ciBsJ+l0YXQKK2NvdXJhbnQgZHUgcGFxdWV0LCBsZXMgZGV1eCBzdWl2YW50cyBjb25jZXJuZW50IGxlcyBz6WxlY3Rpb25zIGTpZmluaWVzIHBhcgorbCd1dGlsaXNhdGV1ci4KKy5zcAorVm9pY2kgbGEgc2lnbmlmaWNhdGlvbiBkZXMgY29kZXMgZCdpbmRpY2F0aW9uIGRlcyDpdGF0c1wgOgorIERyYXBlYXUgZCdlcnJldXJcIDoKKyAgXGZJdmlkZVxmUCAgICBhdWN1bmUgZXJyZXVyXCA7CisgIFxmQlJcZlAgICAgICAgZXJyZXVyIHPpcmlldXNlLCBy6Wluc3RhbGxhdGlvbiBu6WNlc3NhaXJlLgorIMl0YXQgZCdpbnN0YWxsYXRpb25cIDoKKyAgXGZJdmlkZVxmUCAgICBwYXMgaW5zdGFsbOlcIDsKKyAgXGZCKlxmUCAgICAgICBjb21wbOh0ZW1lbnQgaW5zdGFsbOkgZXQgY29uZmlndXLpXCA7CisgIFxmQlwtXGZQICAgICAgIHBhcyBpbnN0YWxs6SwgbWFpcyBkZXMgZmljaGllcnMgZGUgY29uZmlndXJhdGlvbiBleGlzdGVudCB0b3Vqb3Vyc1wgOworICBcZkJVXGZQICAgICAgIGTpcGFxdWV06SwgbWFpcyB0b3Vqb3VycyBwYXMgY29uZmlndXLpXCA7CisgIFxmQkNcZlAgICAgICAg4CBtb2l0aekgY29uZmlndXLpIChpbCB5IGEgZXUgdW5lIGVycmV1cilcIDsKKyAgXGZCSVxmUCAgICAgICDgIG1vaXRp6SBpbnN0YWxs6SAoaWwgeSBhIGV1IHVuZSBlcnJldXIpLgorIFPpbGVjdGlvbiBhY3R1ZWxsZSBldCBkZW1hbmTpZVwgOgorICBcZkIqXGZQICAgICAgIG1hcnF16SBjb21tZSDpdGFudCDgIGluc3RhbGxlciBvdSDgIG1ldHRyZSDgIGpvdXJcIDsKKyAgXGZCXC1cZlAgICAgICAgbWFycXXpIGNvbW1lIOl0YW50IOAgcmV0aXJlciwgZW4gY29uc2VydmFudCBsYSBjb25maWd1cmF0aW9uXCA7CisgIFxmQj1cZlAgICAgICAgbWFycXXpIGNvbW1lIOAgY29uc2VydmVyXCA6IGxlIHBhcXVldCBuZSBzZXJhIHBhcyB0cmFpdOlcIDsKKyAgXGZCX1xmUCAgICAgICBtYXJxdekgY29tbWUg6XRhbnQg4CBuZXR0b3npLCBsYSBjb25maWd1cmF0aW9uIHNlcmEgcmV0aXLpZSDpZ2FsZW1lbnRcIDsKKyAgXGZCblxmUCAgICAgICBub3V2ZWF1IHBhcXVldCwgbidhIHRvdWpvdXJzIHBhcyDpdOkgbWFycXXpLgorLnNwCisuU1MgIkTpcGxhY2VtZW50IGR1IGN1cnNldXIgZXQgZGUgbCfpY3JhbiIKKy5zcAorVm91cyBwb3V2ZXogbmF2aWd1ZXIgZGFucyBsYSBsaXN0ZSBkZSBz6WxlY3Rpb24gZGVzIHBhcXVldHMgZXQgZGFucyBsJ+ljcmFuCitkZSBy6XNvbHV0aW9uIGRlcyBk6XBlbmRhbmNlcyBldCBkZXMgY29uZmxpdHMg4CBsJ2FpZGUgZGVzIHRvdWNoZXMKK3N1aXZhbnRlc1wgOgorLmJyCisgIFxmQnAsIEhhdXQsIGtcZlAgICAgICAgICAgICAgZOlwbGFjZSBsZSBjdXJzZXVyIHZlcnMgbGUgaGF1dAorICBcZkJuLCBCYXMsIGpcZlAgICAgICAgICAgICAgIGTpcGxhY2UgbGUgY3Vyc2V1ciB2ZXJzIGxlIGJhcworICBcZkJQLCBQYWdlXC1wculjLiwgRWZmYWNlclxmUCBmYWl0IGTpZmlsZXIgbGEgbGlzdGUgZCd1bmUgcGFnZSB2ZXJzIGxlIGhhdXQKKyAgXGZCTiwgUGFnZVwtc3Vpdi4sIEVzcGFjZVxmUCAgZmFpdCBk6WZpbGVyIGxhIGxpc3RlIGQndW5lIHBhZ2UgdmVycyBsZSBiYXMKKyAgXGZCXnBcZlAgICAgICAgICAgICAgICAgICAgICBmYWl0IGTpZmlsZXIgbGEgbGlzdGUgZCd1bmUgbGlnbmUgdmVycyBsZSBoYXV0CisgIFxmQl5uXGZQICAgICAgICAgICAgICAgICAgICAgZmFpdCBk6WZpbGVyIGxhIGxpc3RlIGQndW5lIGxpZ25lIHZlcnMgbGUgYmFzCisgIFxmQnQsIEhvbWVcZlAgICAgICAgICAgICAgICAgc2F1dGUgYXUgZOlidXQgZGUgbGEgbGlzdGUKKyAgXGZCZSwgRmluXGZQICAgICAgICAgICAgICAgICBzYXV0ZSDgIGxhIGZpbiBkZSBsYSBsaXN0ZQorICBcZkJ1XGZQICAgICAgICAgICAgICAgICAgICAgIGZhaXQgZOlmaWxlciBsZXMgaW5mb3JtYXRpb25zIGQndW5lIHBhZ2UgdmVycyBsZSBoYXV0CisgIFxmQmRcZlAgICAgICAgICAgICAgICAgICAgICAgZmFpdCBk6WZpbGVyIGxlcyBpbmZvcm1hdGlvbnMgZCd1bmUgcGFnZSB2ZXJzIGxlIGJhcworICBcZkJedVxmUCAgICAgICAgICAgICAgICAgICAgIGZhaXQgZOlmaWxlciBsZXMgaW5mb3JtYXRpb25zIGQndW5lIGxpZ25lIHZlcnMgbGUgaGF1dAorICBcZkJeZFxmUCAgICAgICAgICAgICAgICAgICAgIGZhaXQgZOlmaWxlciBsZXMgaW5mb3JtYXRpb25zIGQndW5lIGxpZ25lIHZlcnMgbGUgYmFzCisgIFxmQkIsIGdhdWNoZVxmUCAgICAgICAgICAgICAgZOlwbGFjZSBsJ2FmZmljaGFnZSBkZSAxLzMgdmVycyBsYSBnYXVjaGUKKyAgXGZCRiwgZHJvaXRlXGZQICAgICAgICAgICAgICBk6XBsYWNlIGwnYWZmaWNoYWdlIGRlIDEvMyB2ZXJzIGxhIGRyb2l0ZQorICBcZkJeYlxmUCAgICAgICAgICAgICAgICAgICAgIGTpcGxhY2UgbCdhZmZpY2hhZ2UgZCd1biBjYXJhY3TocmUgdmVycyBsYSBnYXVjaGUKKyAgXGZCXmZcZlAgICAgICAgICAgICAgICAgICAgICBk6XBsYWNlIGwnYWZmaWNoYWdlIGQndW4gY2FyYWN06HJlIHZlcnMgbGEgZHJvaXRlCisuc3AKKy5TUyAiUmVjaGVyY2hlcyBldCB0cmlzIgorLnNwCitPbiBwZXV0IHJlY2hlcmNoZXIgdW4gcGFxdWV0IHBhciBzb24gbm9tIGRhbnMgbGEgbGlzdGUgZGVzIHBhcXVldHMuIFBvdXIKK2NlbGEsIGlsIGZhdXQgcHJlc3NlciBsYSB0b3VjaGUgq1wgXGZCL1xmUFwguywgcHVpcyB0YXBlciBsZSB0ZXh0ZSDgCityZWNoZXJjaGVyLiBDZSB0ZXh0ZSBlc3QgaW50ZXJwcul06SBjb21tZSB1bmUgZXhwcmVzc2lvbiByYXRpb25uZWxsZSAodm9pcgorXGZCcmVnZXhcZlAoNykpLiBTaSB2b3VzIGFqb3V0ZXogq1wgXGZCL2RcZlBcILsg4CBsYSByZWNoZXJjaGUsIGRzZWxlY3QgcmVjaGVyY2hlcmEKK+lnYWxlbWVudCBkYW5zIGxlcyBkZXNjcmlwdGlvbnMuIFNpIHZvdXMgYWpvdXRleiCrXCBcZkIvaVxmUFwguywgbGEgcmVjaGVyY2hlIG5lCitwcmVuZCBwYXMgZW4gY29tcHRlIGxhIGNhc3NlLiBMZXMgZGV1eCBzdWZmaXhlcyBwZXV2ZW50IOp0cmUgY29tYmlu6XMgY29tbWUKK2NlY2lcIDogq1wgXGZCL2lkXGZQXCC7LiBMYSByZWNoZXJjaGUgcGV1dCDqdHJlIHLpcOl06WUgZW4gYXBwdXlhbnQgc3VyIGxhIHRvdWNoZQorq1wgXGZCblxmUFwguyBvdSCrXCBcZkJcZVxmUFwguywganVzcXUn4CBjZSBxdWUgbGUgcGFxdWV0IHNvaXQgdHJvdXbpLiBMb3JzcXVlIGxhCityZWNoZXJjaGUgYXR0ZWludCBsYSBmaW4gZGUgbGEgbGlzdGUsIGVsbGUgcmVjb21tZW5jZSBhdSBk6WJ1dC4KKy5zcAorT24gcGV1dCBjaGFuZ2VyIGwnb3JkcmUgZHUgdHJpIGVuIGFwcHV5YW50IHN1ciBsYSB0b3VjaGUgq1wgXGZCb1xmUFwguyBvdSCrXCBcZkJPXGZQXCC7LiBMZXMgbmV1ZiBzeXN06G1lcyBkZSB0cmlzIHN1aXZhbnRzIGV4aXN0ZW50XCA6CisgYWxwaGFi6XRpcXVlICAgICAgZGlzcG9uaWJsZSAgICAgICAgICAg6XRhdAorIHByaW9yaXTpK3NlY3Rpb24gIGRpc3BvbmlibGUrcHJpb3JpdOkgIOl0YXQrcHJpb3JpdOkKKyBzZWN0aW9uK3ByaW9yaXTpICBkaXNwb25pYmxlK3NlY3Rpb24gICDpdGF0K3NlY3Rpb24KKy5icgorTG9yc3F1J2lsIG4nZXN0IHBhcyBpbmRpcXXpLCBsJ29yZHJlIGFscGhhYul0aXF1ZSBlc3QgdXRpbGlz6SBjb21tZSBkZXJuaWVyCitjcml06HJlIGRlIHRyaS4KKy5zcAorLlNTICJNb2RpZmllciBsZXMgc+lsZWN0aW9ucyIKKy5zcAorTGUgdHlwZSBkZSBz6WxlY3Rpb24gZGVtYW5k6SBkJ3VuIHBhcXVldCBwZXV0IOp0cmUgY2hhbmfpIOAgbCdhaWRlIGRlcyBjb21tYW5kZXMgc3VpdmFudGVzXCA6CisgIFxmQissIEluc2VyXGZQICAgICBpbnN0YWxsZXIgb3UgbWV0dHJlIOAgam91cgorICBcZkI9LCBIXGZQICAgICAgICAg4CBnYXJkZXIgZGFucyBsJ+l0YXQgZXQgbGEgdmVyc2lvbiBhY3R1ZWxzCisgIFxmQjosIEdcZlAgICAgICAgICBuZSBwbHVzIGdhcmRlclwgOiBtZXR0cmUg4CBqb3VyIG91IGxhaXNzZXIgbm9uIGluc3RhbGzpCisgIFxmQlwtLCBTdXBwclxmUCAgICAgcmV0aXJlciwgZW4gZ2FyZGFudCBsYSBjb25maWd1cmF0aW9uCisgIFxmQl9cZlAgICAgICAgICAgICByZXRpcmVyIGV0IHN1cHByaW1lciBsYSBjb25maWd1cmF0aW9uCisuc3AKK0xvcnNxdWUgbGEgZGVtYW5kZSBkZSBtb2RpZmljYXRpb24gZW50cmHubmUgZGVzIGTpcGVuZGFuY2VzIG5vbiBzYXRpc2ZhaXRlcworb3UgZGVzIGNvbmZsaXRzLCBcZkJkc2VsZWN0XGZQIGZvdXJuaXQg4CBsJ3V0aWxpc2F0ZXVyIHVuIOljcmFuIGRlIHLpc29sdXRpb24KK2RlcyBk6XBlbmRhbmNlcy4gQ2VjaSBzZXJhIGTpY3JpdCBwbHVzIHRhcmQuCisuc3AKK0lsIGVzdCDpZ2FsZW1lbnQgcG9zc2libGUgZCdhcHBsaXF1ZXIgY2VzIGNvbW1hbmRlcyDgIGRlcyBncm91cGVzIGRlCitz6WxlY3Rpb25zIGRlIHBhcXVldHMgZW4gcGxh52FudCBsZSBjdXJzZXVyIHN1ciBsZSB0aXRyZSBkJ3VuIGdyb3VwZS4gTGUKK3JlZ3JvdXBlbWVudCBkZXMgcGFxdWV0cyBk6XBlbmQgZGUgbGEgZmHnb24gZG9udCBsZXMgcGFxdWV0cyBzb250IHRyaelzIGRhbnMKK2xhIGxpc3RlLgorLnNwCitVbmUgYXR0ZW50aW9uIHBhcnRpY3VsaehyZSBkb2l0IOp0cmUgcHJpc2UgbG9ycyBkZSBsYSBtb2RpZmljYXRpb24gZGUgZ3JhbmRzCitncm91cGVzIGRlIHPpbGVjdGlvbnMsIHBhcmNlIHF1J2lscyBwZXV2ZW50IGNy6WVyIHJhcGlkZW1lbnQgdW4gbm9tYnJlCitpbXBvcnRhbnQgZGUgZOlwZW5kYW5jZXMgbm9uIHLpc29sdWVzIG91IGRlIGNvbmZsaXRzLCBxdWkgc2VyYWllbnQgdG91cworbGlzdOlzIGRhbnMgdW4g6WNyYW4gZGUgculzb2x1dGlvbiBkZSBk6XBlbmRhbmNlcywgbGUgcmVuZGFudCBkaWZmaWNpbGUg4AordXRpbGlzZXIuIEVuIHByYXRpcXVlLCBzZXVsZXMgbGVzIG9w6XJhdGlvbnMgq1wg4CBnYXJkZXJcILsgZXQgq1wgbmUgcGx1cworZ2FyZGVyXCC7IHNvbnQgdXRpbGVzIHBvdXIgbGVzIGdyb3VwZXMuCisuc3AKKy5TUyAiUulzb3VkcmUgbGVzIGTpcGVuZGFuY2VzIGV0IGxlcyBjb25mbGl0cyIKKy5zcAorTG9yc3F1ZSBsYSBkZW1hbmRlIGRlIG1vZGlmaWNhdGlvbiBlbnRyYe5uZSBkZXMgZOlwZW5kYW5jZXMgbm9uIHNhdGlzZmFpdGVzCitvdSBkZXMgY29uZmxpdHMsIFxmQmRzZWxlY3RcZlAgZm91cm5pdCDgIGwndXRpbGlzYXRldXIgdW4g6WNyYW4gZGUgculzb2x1dGlvbgorZGVzIGTpcGVuZGFuY2VzLiBNYWlzIHVuIOljcmFuIGQnaW5mb3JtYXRpb24gZXN0IGFmZmljaOkgZGFucyB1biBwcmVtaWVyCit0ZW1wcy4KKy5zcAorTGEgbW9pdGnpIHN1cOlyaWV1cmUgZGUgY2V0IOljcmFuIGxpc3RlIHRvdXMgbGVzIHBhcXVldHMgYXlhbnQgZGVzCitk6XBlbmRhbmNlcyBub24gculzb2x1ZXMgb3UgZGVzIGNvbmZsaXRzIGR1cyBhdXggbW9kaWZpY2F0aW9ucyBkZW1hbmTpZXMsCithaW5zaSBxdWUgbGVzIHBhcXVldHMgZG9udCBsJ2luc3RhbGxhdGlvbiBwZXJtZXR0cmFpdCBkZSBy6XNvdWRyZSB1bmUKK2TpcGVuZGFuY2Ugb3UgZG9udCBsZSByZXRyYWl0IHBlcm1ldHRyYWl0IGRlIHLpc291ZHJlIHVuIGNvbmZsaXQuIExhIG1vaXRp6QoraW5m6XJpZXVyZSBhZmZpY2hlIHBhciBk6WZhdXQgbGVzIGTpcGVuZGFuY2VzIG91IGNvbmZsaXRzIHBvdXIgbGVzcXVlbHMgbGUKK3BhcXVldCBz6WxlY3Rpb25u6SBzZSB0cm91dmUgcHLpc2VudCBkYW5zIGxhIGxpc3RlLgorLnNwCitRdWFuZCBsYSBzb3VzXC1saXN0ZSBkZSBwYXF1ZXRzIGVzdCBhZmZpY2jpZSBwb3VyIGxhIHByZW1p6HJlIGZvaXMsCitcZkJkc2VsZWN0XGZQIHBldXQgYXZvaXIgZOlq4CBmaXjpIGxlcyDpdGF0cyBkZW1hbmTpcyBwb3VyIGNlcnRhaW5zIGRlcyBwYXF1ZXRzCitsaXN06XMsIGNlY2kgYWZpbiBkZSBy6XNvdWRyZSBsZXMgZOlwZW5kYW5jZXMgb3UgbGVzIGNvbmZsaXRzIHF1aSBvbnQgY2F1c+kKK2wnYXBwYXJpdGlvbiBkZSBsJ+ljcmFuIGRlIHLpc29sdXRpb24gZGVzIGTpcGVuZGFuY2VzLiBJbCBlc3QgZCdoYWJpdHVkZQorcmVjb21tYW5k6SBkZSBzdWl2cmUgbGVzIHN1Z2dlc3Rpb25zIGRlIFxmQmRzZWxlY3RcZlAuCisuc3AKK0xlIHR5cGUgZGUgc+lsZWN0aW9uIGRlcyBwYXF1ZXRzIGxpc3TpcyBwZXV0IOp0cmUgcmVtaXMgZGFucyBsZXVycyDpdGF0cworcHLpY+lkZW50cywgYXZhbnQgcXVlIGxlIHByb2Js6G1lIGRlIGTpcGVuZGFuY2Ugb3UgbGUgY29uZmxpdCBzb2l0IGNy6eksIGVuCithcHB1eWFudCBzdXIgbGEgdG91Y2hlIKtcIFxmQlJcZlBcILsuIExhIHRvdWNoZSCrXCBcZkJEXGZQXCC7IHBlcm1ldCBkZSByZW1ldHRyZSDgCit66XJvIGxlcyBzdWdnZXN0aW9ucyBhdXRvbWF0aXF1ZXMsIHRvdXQgZW4gY29uc2VydmFudCBsZXMgbW9kaWZpY2F0aW9ucyBxdWkKK29udCBjYXVz6WVzIGwnYXBwYXJpdGlvbiBkZSBsJ+ljcmFuIGRlIHLpc29sdXRpb24gZGVzIGTpcGVuZGFuY2VzLiBFbmZpbiwgbGEKK3RvdWNoZSCrXCBcZkJVXGZQXCC7IHBlcm1ldCBkZSBy6XRhYmxpciBsZXMgc3VnZ2VzdGlvbnMgYXV0b21hdGlxdWVzLgorLnNwCisuU1MgIsl0YWJsaXIgbGVzIHPpbGVjdGlvbnMgZGVtYW5k6WVzIgorLnNwCitFbiBhcHB1eWFudCBzdXIgXGZCRW50cullXGZQLCBsZXMgc+lsZWN0aW9ucyBhZmZpY2jpZXMgc29udCBhY2NlcHTpZXMuIFNpCitcZkJkc2VsZWN0XGZQIG5lIGTpdGVjdGUgcGFzIGRlIGTpcGVuZGFuY2VzIG5vbiBy6XNvbHVlcyBkdSBmYWl0IGRlIGNlcworc+lsZWN0aW9ucywgbGVzIG5vdXZlbGxlcyBz6WxlY3Rpb25zIHNvbnQg6XRhYmxpZXMuIENlcGVuZGFudCwgc2kgZGVzCitk6XBlbmRhbmNlcyBub24gculzb2x1ZXMgc29udCB0cm91dullcywgXGZCZHNlbGVjdFxmUCBhZmZpY2hlcmEgZGUgbm91dmVhdSB1bgor6WNyYW4gZGUgculzb2x1dGlvbiBkZXMgZOlwZW5kYW5jZXMuCisuc3AKK1BvdXIgbW9kaWZpZXIgdW4gamV1IGRlIHPpbGVjdGlvbnMgcXVpIGNhdXNlbnQgZGVzIGTpcGVuZGFuY2VzIG5vbiBy6XNvbHVlcworb3UgZGVzIGNvbmZsaXRzLCBldCBmb3JjZXIgXGZCZHNlbGVjdFxmUCDgIGwnYWNjZXB0ZXIsIGFwcHV5ZXogc3VyIGxhIHRvdWNoZQorq1wgXGZCUVxmUFwguy4gQ2VjaSBmaXhlIGxlcyBz6WxlY3Rpb25zIHRlbGxlcyBxdSdlbGxlcyBzb250IGTpZmluaWVzIHBhcgorbCd1dGlsaXNhdGV1ciwgc2FucyBjb25kaXRpb24uIEVuIGfpbulyYWwsIG5lIGZhaXRlcyBwYXMgY2VsYSwgc2F1ZiBzaSB2b3VzCithdmV6IGJpZW4gbHUgY2UgcXUnaWwgeSBhIGQn6WNyaXQuCisuc3AKK0wnZWZmZXQgaW52ZXJzZSwgcXVpIGNvbnNpc3RlIOAgb3VibGllciBsZXMgZGVtYW5kZXMgZGUgbW9kaWZpY2F0aW9uIGRlcworc+lsZWN0aW9ucyBldCByZXZlbmlyIOAgbGEgbGlzdGUgcHLpY+lkZW50ZSBkZSBz6WxlY3Rpb25zLCBwZXV0IOp0cmUgb2J0ZW51CitlbiBhcHB1eWFudCBzdXIgbGEgdG91Y2hlIKtcIFxmQlhcZlBcILsgb3Ugq1wgXGZCRWNoYXBcZlBcILsuIEVuIHLpcOl0YW50IGwnb3DpcmF0aW9uLAorb24gcGV1dCBjb21wbOh0ZW1lbnQgcmV2ZW5pciDgIGxhIGRlcm5p6HJlIGNvbmZpZ3VyYXRpb24g6XRhYmxpZS4KKy5zcAorU2kgcGFyIGVycmV1ciB2b3VzIGF2ZXogZml46SBjZXJ0YWlucyBwYXJhbeh0cmVzIGV0IHF1ZSB2b3VzIHNvdWhhaXRlegorcmV2ZW5pciBlbiBhcnJp6HJlIHN1ciBjZSBxdWkgZXN0IGFjdHVlbGxlbWVudCBpbnN0YWxs6SBzdXIgbGUgc3lzdOhtZSwKK2FwcHV5ZXogc3VyIGxhIHRvdWNoZSBcZkInQydcZlAuIEMnZXN0IHVuIHBldSBjb21tZSB1dGlsaXNlciBsYSBjb21tYW5kZSBkZQorZOlibG9jYWdlIHN1ciB0b3VzIGxlcyBwYXF1ZXRzLCBtYWlzIGNlbGEgb2ZmcmUgdW4gYm91dG9uIHBhbmlxdWUgcGx1cwor6XZpZGVudCBwb3VyIGxlcyBjYXMgb/kgbCd1dGlsaXNhdGV1ciDgIGFwcHV56SBzdXIgXGZCZW50cmVyXGZQCithY2NpZGVudGVsbGVtZW50LgorLnNwCisuCisuU0ggRU5WSVJPTk5FTUVOVAorLlRQIAorXGZCSE9NRVxmUAorU2kgcG9zaXRpb25u6Swgc2VyYSB1dGlsaXPpIHBhciBcZkJkc2VsZWN0XGZQIGNvbW1lIGxlIHLpcGVydG9pcmUgZCdv+SBzZXJhIGx1CitsZSBmaWNoaWVyIGRlIGNvbmZpZ3VyYXRpb24gcHJvcHJlIOAgbCd1dGlsaXNhdGV1ci4KKy4KKy5TSCBCT0dVRVMKK0wnaW50ZXJmYWNlIFxmQmRzZWxlY3RcZlAgZGUgc+lsZWN0aW9uIGRlIHBhcXVldHMgZXN0IGTpcm91dGFudGUgcG91ciBsZXMKK25vdXZlYXV4IHV0aWxpc2F0ZXVycy4gT24gcmFwcG9ydGUgbeptZSBxdSdlbGxlIGZhaXQgcGxldXJlciBjZXJ0YWlucworZOl2ZWxvcHBldXJzIGNoZXZyb25u6XMgZHUgbm95YXUgKE5kVFwgOlwgZHUgbW9pbnMgbGVzIGRlcm5pZXJzIGhpc3RvcmlxdWVzCitkaW5vc2F1cmVzIHF1aSBzJ2VuIHNlcnZlbnQgZW5jb3JlKS4KKy5zcAorTGEgZG9jdW1lbnRhdGlvbiBtYW5xdWUuCisuc3AKK0lsIG4nZXhpc3RlIHBhcyBkJ29wdGlvbiBkJ2FpZGUgZGFucyBsZSBtZW51LgorLnNwCitMYSBsaXN0ZSB2aXNpYmxlIGRlcyBwYXF1ZXRzIGRpc3BvbmlibGVzIG5lIHBldXQgcGFzIOp0cmUgculkdWl0ZS4KKy5zcAorTGEgbel0aG9kZSBkJ2FjY+hzIGludOlncullIG5lIHNhdGlzZmFpdCBwYXMgbGVzIG5vcm1lcyBkZSBxdWFsaXTpCithY3R1ZWxsZXMuIFV0aWxpc2V6IHBsdXT0dCBsYSBt6XRob2RlIGZvdXJuaWUgcGFyIEFQVC4gTm9uIHNldWxlbWVudCBlbGxlCituJ2VzdCBwYXMgY2Fzc+llLCBtYWlzIGVuIHBsdXMgZWxsZSBlc3QgcGx1cyBzb3VwbGUgcXVlIGxhIG3pdGhvZGUgZCdhY2PocworaW506Wdy6WUuCisuCisuU0ggIlZPSVIgQVVTU0kiCitcZkJkcGtnXGZQKDEpLCBcZkJhcHRcLWdldFxmUCg4KSwgXGZCc291cmNlcy5saXN0XGZQKDUpLCBcZkJkZWJcZlAoNSkuCisuCisuU0ggQVVURVVSUworXGZCZHNlbGVjdFxmUCBhIOl06SDpY3JpdCBwYXIgSWFuIEphY2tzb24gKGlqYWNrc29uQGdudS5haS5taXQuZWR1KS4gTGEgbGlzdGUKK2NvbXBs6HRlIGRlcyBjb250cmlidXRldXJzIGVzdCBhZmZpY2jpZSBwYXIgq1wgZHNlbGVjdCBcLVwtdmVyc2lvblwguy4KKy5icgorQ2V0dGUgcGFnZSBkZSBtYW51ZWwgYSDpdOkg6WNyaXRlIHBhciBKdWhvIFZ1b3JpCis8amF2dW9yaUBjYy5oZWxzaW5raS5maT4sIEpvc2lwIFJvZGluIGV0IEpvb3N0IGtvb2lqLgorCisuU0ggVFJBRFVDVElPTgorQXJpZWwgVkFSREkgPGFyaWVsLnZhcmRpQGZyZWVzYmVlLmZyPiwgMjAwMi4KK1BoaWxpcHBlIEJhdGFpbGxlciwgMjAwNi4KK05pY29sYXMgRnJhbudvaXMsIDIwMDYuCitWZXVpbGxleiBzaWduYWxlciB0b3V0ZSBlcnJldXIg4CA8ZGViaWFuXC1sMTBuXC1mcmVuY2hAbGlzdHMuZGViaWFuLm9yZz4uCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9mci9kc2VsZWN0LmNmZy41IGIvZHBrZy0xLjE2LjEuMS9tYW4vZnIvZHNlbGVjdC5jZmcuNQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zZWEyZDY5Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vZnIvZHNlbGVjdC5jZmcuNQpAQCAtMCwwICsxLDM0IEBACisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkc2VsZWN0LmNmZyA1IDIwMTFcLTA3XC0wMyAiUHJvamV0IERlYmlhbiIgInN1aXRlIGRwa2ciCisuU0ggTk9NCitkc2VsZWN0LmNmZyBcLSBGaWNoaWVyIGRlIGNvbmZpZ3VyYXRpb24gZGUgZHNlbGVjdAorLgorLlNIIERFU0NSSVBUSU9OCitUaGlzIGZpbGUgY29udGFpbnMgZGVmYXVsdCBvcHRpb25zIGZvciBkc2VsZWN0LiBFYWNoIGxpbmUgY29udGFpbnMgYSBzaW5nbGUKK29wdGlvbiB3aGljaCBpcyBleGFjdGx5IHRoZSBzYW1lIGFzIGEgbm9ybWFsIGNvbW1hbmQgbGluZSBvcHRpb24gZm9yIGRzZWxlY3QKK2V4Y2VwdCBmb3IgdGhlIGxlYWRpbmcgZGFzaGVzIHdoaWNoIGFyZSBub3QgdXNlZCBoZXJlLiBRdW90ZXMgc3Vycm91bmRpbmcKK29wdGlvbiB2YWx1ZXMgYXJlIHN0cmlwcGVkLiBDb21tZW50cyBhcmUgYWxsb3dlZCBieSBzdGFydGluZyBhIGxpbmUgd2l0aCBhCitoYXNoIHNpZ24gKCJcZkIjXGZQIikuCisuCisuU0ggRklDSElFUlMKK1xmSS9ldGMvZHBrZy9kc2VsZWN0LmNmZy5kL1swXC05YVwtekFcLVpfXC1dKlxmUAorLmJyCitcZkkvZXRjL2Rwa2cvZHNlbGVjdC5jZmdcZlAKKy5icgorXGZJfi8uZHNlbGVjdC5jZmdcZlAKKy4KKy5TSCBBVVRFVVIKK0NvbnN1bHRleiBcZkkvdXNyL3NoYXJlL2RvYy9kcGtnL1RIQU5LU1xmUCBwb3VyIGxhIGxpc3RlIGRlIGNldXggcXVpIG9udAorY29udHJpYnXpIOAgXGZCZHNlbGVjdFxmUC4KKy4KKy5TSCAiVk9JUiBBVVNTSSIKK1xmQmRzZWxlY3RcZlAoMSkuCisuU0ggVFJBRFVDVElPTgorQXJpZWwgVkFSREkgPGFyaWVsLnZhcmRpQGZyZWVzYmVlLmZyPiwgMjAwMi4KK1BoaWxpcHBlIEJhdGFpbGxlciwgMjAwNi4KK05pY29sYXMgRnJhbudvaXMsIDIwMDYuCitWZXVpbGxleiBzaWduYWxlciB0b3V0ZSBlcnJldXIg4CA8ZGViaWFuXC1sMTBuXC1mcmVuY2hAbGlzdHMuZGViaWFuLm9yZz4uCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9mci91cGRhdGUtYWx0ZXJuYXRpdmVzLjggYi9kcGtnLTEuMTYuMS4xL21hbi9mci91cGRhdGUtYWx0ZXJuYXRpdmVzLjgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTQ5YmUwYwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL2ZyL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuOApAQCAtMCwwICsxLDQyNiBAQAorLlwiIHVwZGF0ZVwtYWx0ZXJuYXRpdmVzLjgKKy5cIiBUaGlzIG1hbiBwYWdlIGlzIGNvcHlyaWdodCAxOTk3IENoYXJsZXMgQnJpc2NvZS1TbWl0aAorLlwiIFRoaXMgaXMgZnJlZSBkb2N1bWVudGF0aW9uOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisuXCIgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQKKy5cIiBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorLlwiIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uICBUaGVyZSBpcyBOTyBXQVJSQU5UWS4gIFlvdSBjYW4KKy5cIiBmaW5kIHRoZSBHTlUgR1BMIGluIC91c3Ivc2hhcmUvY29tbW9uLWxpY2Vuc2VzL0dQTCBvbiBhbnkgRGViaWFuIHN5c3RlbS4KKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlRIIHVwZGF0ZVwtYWx0ZXJuYXRpdmVzIDggMjAxMVwtMDhcLTE0ICJQcm9qZXQgRGViaWFuIiAiVXRpbGl0YWlyZXMgZGUgZHBrZyIKKy5TSCBOT00KK3VwZGF0ZVwtYWx0ZXJuYXRpdmVzIFwtIG1haW50ZW5hbmNlIGRlcyBsaWVucyBzeW1ib2xpcXVlcyBk6XRlcm1pbmFudCBsZXMgbm9tcworcGFyIGTpZmF1dCBkZSBjZXJ0YWluZXMgY29tbWFuZGVzCisuCisuU0ggU1lOT1BTSVMKK1xmQnVwZGF0ZVwtYWx0ZXJuYXRpdmVzXGZQIFtcZklvcHRpb25cZlAuLi5dIFxmSWNvbW1hbmRcZlAKKy4KKy5TSCBERVNDUklQVElPTgorXGZCdXBkYXRlXC1hbHRlcm5hdGl2ZXNcZlAgY3LpZSwgZW5s6HZlLCBjb25zZXJ2ZSBldCBhZmZpY2hlIGRlcyBpbmZvcm1hdGlvbnMKK2NvbmNlcm5hbnQgbGVzIGxpZW5zIHN5bWJvbGlxdWVzIHF1aSBmb3JtZW50IGxlIHN5c3TobWUgRGViaWFuIGRlcworq1wgYWx0ZXJuYXRpdmVzXCC7LgorLlBQCitJbCBlc3QgcG9zc2libGUgZCdpbnN0YWxsZXIsIHN1ciB1biBt6m1lIHN5c3TobWUgZXQgZW4gbeptZSB0ZW1wcywgZGVzCitwcm9ncmFtbWVzIHF1aSByZW1wbGlzc2VudCBkZXMgZm9uY3Rpb25zIGlkZW50aXF1ZXMgb3Ugc2VtYmxhYmxlcy4gUGFyCitleGVtcGxlLCBiZWF1Y291cCBkZSBzeXN06G1lcyBpbnN0YWxsZW50IHBsdXNpZXVycyDpZGl0ZXVycyBkZSB0ZXh0ZSBlbiBt6m1lCit0ZW1wcy4gQ2VsYSBwZXJtZXQg4CBjaGFxdWUgdXRpbGlzYXRldXIgZCd1biBzeXN06G1lIGRlIGNob2lzaXIsIHMnaWwgbGUKK2Tpc2lyZSwgdW4g6WRpdGV1ciBkZSB0ZXh0ZSBkaWZm6XJlbnRcIDsgbWFpcyBjZWxhIHJlbmQgbGVzIGNob3NlcyBkaWZmaWNpbGVzCitwb3VyIGxlIHByb2dyYW1tZSBxdWkgZG9pdCBjaG9pc2lyIHVuIGJvbiDpZGl0ZXVyIGRlIHRleHRlIHF1YW5kCitsJ3V0aWxpc2F0ZXVyIG4nYSBwYXMgZmFpdCBkZSBjaG9peCBwculjaXMuCisuUFAKK0xlIHN5c3TobWUgRGViaWFuIGRlcyCrXCBhbHRlcm5hdGl2ZXNcILsgZXNzYWllIGRlIHLpc291ZHJlIGNlIHByb2Js6G1lLiBUb3VzCitsZXMgZmljaGllcnMgcXVpIHByb3Bvc2VudCBkZXMgZm9uY3Rpb25zIGludGVyY2hhbmdlYWJsZXMgc2Ugc2VydmVudCBkJ3VuCitub20gZ+lu6XJpcXVlIHF1aSBzZSB0cm91dmUgZGFucyBsJ2FyYm9yZXNjZW5jZS4gTGUgc3lzdOhtZSBkZXMKK6tcIGFsdGVybmF0aXZlc1wguyBldCBsJ2FkbWluaXN0cmF0ZXVyIHN5c3TobWUgZm9udCBjb25uYe50cmUgZW5zZW1ibGUgbGUKK2ZpY2hpZXIgcXVpIGVzdCBy6WVsbGVtZW50IHZpc+kgcGFyIGNlIG5vbSBn6W7pcmlxdWUuIFBhciBleGVtcGxlLCBzaSBsZXMKK+lkaXRldXJzIGRlIHRleHRlIFxmQmVkXGZQKDEpIGV0IFxmQm52aVxmUCgxKSBzb250IHRvdXMgbGVzIGRldXggaW5zdGFsbOlzLCBsZQorc3lzdOhtZSBkZXMgq1wgYWx0ZXJuYXRpdmVzXCC7IGZhaXQgcXVlIGxlIG5vbSBn6W7pcmlxdWUgXGZJL3Vzci9iaW4vZWRpdG9yXGZQCityZW52b2llIHBhciBk6WZhdXQg4CBcZkkvdXNyL2Jpbi9udmlcZlAuIEwnYWRtaW5pc3RyYXRldXIgc3lzdOhtZSBwZXV0CityZW1wbGFjZXIgY2V0dGUgYXNzaWduYXRpb24gcGFyIFxmSS91c3IvYmluL2VkXGZQIGV0IGxlIHN5c3TobWUgZGVzCiurXCBhbHRlcm5hdGl2ZXNcILsgbmUgbGEgY2hhbmdlcmEgcGFzIHRhbnQgcXUnb24gbmUgbHVpIGF1cmEgcGFzIGRlbWFuZOkKK2V4cGxpY2l0ZW1lbnQgZGUgbGUgZmFpcmUuCisuUFAKK0xlIG5vbSBn6W7pcmlxdWUgbidlc3QgcGFzIHVuIGxpZW4gc3ltYm9saXF1ZSBkaXJlY3QgdmVycyBsJ2FsdGVybmF0aXZlCitjaG9pc2llLiBDJ2VzdCBlbiBmYWl0IHVuIGxpZW4gc3ltYm9saXF1ZSB2ZXJzIHVuIG5vbSBzaXR16SBkYW5zIGxlCitcZkly6XBlcnRvaXJlXGZQIFxmSWRlcyCrXCBhbHRlcm5hdGl2ZXNcILtcZlAsIGxlcXVlbCBub20gZXN0IOAgc29uIHRvdXIgdW4gbGllbgorc3ltYm9saXF1ZSB2ZXJzIGxlIGZpY2hpZXIgcullbGxlbWVudCB2aXPpLiBMZXMgbW9kaWZpY2F0aW9ucyBmYWl0ZXMgcGFyCitsJ2FkbWluaXN0cmF0ZXVyIHN5c3TobWUgc29udCBhaW5zaSBjb25maW7pZXMgZGFucyBsZSBy6XBlcnRvaXJlIFxmSS9ldGNcZlBcIDsKK2xlIEZIUyAobGlzZXpcLWxlKSBkb25uZSBkZSBCb25uZXMgUmFpc29ucyBkZSBmYWlyZSBhaW5zaS4KKy5QUAorQ2hhcXVlIGZvaXMgcXUndW4gcGFxdWV0IHByb3Bvc2FudCB1biBmaWNoaWVyIHBvdXIgdW5lIGZvbmN0aW9uIGTpdGVybWlu6WUsCitlc3QgaW5zdGFsbOksIG1vZGlmaekgb3UgZOlzaW5zdGFsbOksIFxmQnVwZGF0ZVwtYWx0ZXJuYXRpdmVzXGZQIGVzdCBhcHBlbOkgcG91cgorbWV0dHJlIOAgam91ciBsZXMgaW5mb3JtYXRpb25zIGNvbmNlcm5hbnQgY2UgZmljaGllciBkYW5zIGxlIHN5c3TobWUgZGVzCiurXCBhbHRlcm5hdGl2ZXNcILsuIEVuIGfpbulyYWwsIFxmQnVwZGF0ZVwtYWx0ZXJuYXRpdmVzXGZQIGVzdCBhcHBlbOkgZGFucyBsZXMKK3NjcmlwdHMgXGZCcG9zdGluc3RcZlAgKGNvbmZpZ3VyZSkgZXQgXGZCcHJlcm1cZlAgKGluc3RhbGwpIGRlcyBwYXF1ZXRzIERlYmlhbi4KKy5QUAorSWwgZXN0IHNvdXZlbnQgdXRpbGUgZGUgc3luY2hyb25pc2VyIGNlcnRhaW5lcyBhbHRlcm5hdGl2ZXMsIGRlIG1hbmnocmUg4AorcG91dm9pciBsZXMgbWFuaXB1bGVyIGdsb2JhbGVtZW50XCA7IHBhciBleGVtcGxlLCBxdWFuZCBwbHVzaWV1cnMgdmVyc2lvbnMgZGUKK1xmQnZpXGZQKDEpICBzb250IGluc3RhbGzpZXMsIGxhIHBhZ2UgZGUgbWFudWVsIHF1aSBlc3Qgdmlz6WUgcGFyCitcZkkvdXNyL3NoYXJlL21hbi9tYW4xL3ZpLjFcZlAgZGV2cmFpdCBjb3JyZXNwb25kcmUg4AorXGZJL3Vzci9iaW4vdmlcZlAuIFxmQnVwZGF0ZVwtYWx0ZXJuYXRpdmVzXGZQIGfocmUgY2UgcHJvYmzobWUgYXZlYyBsZXMgbGllbnMKK1xmSXByaW5jaXBhdXggKKtcIG1hc3RlclwguylcZlAgZXQgbGVzIGxpZW5zIFxmSXNlY29uZGFpcmVzICirXCBzbGF2ZVwguylcZlAuIFF1YW5kIGxlCitsaWVuIHByaW5jaXBhbCBlc3QgY2hhbmfpLCB0b3VzIGxlcyBsaWVucyBzZWNvbmRhaXJlcyBhc3NvY2npcyBzb250CitjaGFuZ+lzLiBVbiBsaWVuIHByaW5jaXBhbCBldCBzZXMgbGllbnMgc2Vjb25kYWlyZXMgYXNzb2Np6XMgY29tcG9zZW50IHVuCitcZklncm91cGVcZlAgZGUgXGZJbGllbnMuXGZQCisuUFAKK8AgdG91dCBtb21lbnQsIHVuIGdyb3VwZSBkZSBsaWVucyBlc3QgZGFucyBsJ3VuIGRlcyBkZXV4IG1vZGVzIHN1aXZhbnRzXCA6CithdXRvbWF0aXF1ZSBvdSBtYW51ZWwuIFF1YW5kIHVuIGdyb3VwZSBlc3QgZGFucyBsZSBtb2RlIGF1dG9tYXRpcXVlIGV0IHF1ZQorZGVzIHBhcXVldHMgc29udCBpbnN0YWxs6XMgb3UgZOlzaW5zdGFsbOlzLCBsZSBzeXN06G1lIGRlcyCrXCBhbHRlcm5hdGl2ZXNcILsKK2TpY2lkZSBhdXRvbWF0aXF1ZW1lbnQgcydpbCBkb2l0IG1ldHRyZSDgIGpvdXIgbGVzIGxpZW5zIGV0IGNvbW1lbnQgbGUKK2ZhaXJlLiBEYW5zIGxlIG1vZGUgbWFudWVsLCBsZSBzeXN06G1lIGRlcyCrXCBhbHRlcm5hdGl2ZXNcILsgbmUgY2hhbmdlIHBhcworbGVzIGxpZW5zIGV0IGxhaXNzZSBsJ2FkbWluaXN0cmF0ZXVyIHN5c3TobWUgcHJlbmRyZSB0b3V0ZXMgbGVzIGTpY2lzaW9ucworKHNhdWYgc2kgcXVlbHF1ZSBjaG9zZSBlc3QgY2Fzc+kpLgorLlBQCitVbiBncm91cGUgZGUgbGllbnMgZXN0IGVuIG1vZGUgYXV0b21hdGlxdWUgcXVhbmQgaWwgZXN0IGNy6WUgc3VyIHVuIHN5c3TobWUKK3BvdXIgbGEgcHJlbWnocmUgZm9pcy4gUXVhbmQgbCdhZG1pbmlzdHJhdGV1ciBzeXN06G1lIG1vZGlmaWUgbGUgcGFyYW3pdHJhZ2UKK2F1dG9tYXRpcXVlIGR1IHN5c3TobWUsIFxmQnVwZGF0ZVwtYWx0ZXJuYXRpdmVzXGZQIGxlIHJlbWFycXVlcmEgbGEgcHJvY2hhaW5lCitmb2lzIHF1J2lsIHNlcmEgbGFuY+kgcG91ciBjZSBncm91cGUgYXV4IGxpZW5zIG1vZGlmaelzIGV0IGlsIGZlcmEgcGFzc2VyIGNlCitncm91cGUgZW4gbW9kZSBtYW51ZWwuCisuUFAKK8AgY2hhcXVlIGFsdGVybmF0aXZlIGVzdCBhc3NvY2npZSB1bmUgXGZJcHJpb3JpdOlcZlAuIFF1YW5kIHVuIGdyb3VwZSBkZSBsaWVucworZXN0IGVuIG1vZGUgYXV0b21hdGlxdWUsIGwnYWx0ZXJuYXRpdmUgdmlz6WUgcGFyIGxlcyDpbOltZW50cyBkdSBncm91cGUgZXN0CitjZWxsZSBxdWkgcG9zc+hkZSBsYSBwcmlvcml06SBsYSBwbHVzIOlsZXbpZS4KKy5QUAorV2hlbiB1c2luZyB0aGUgXGZCXC1cLWNvbmZpZ1xmUCBvcHRpb24sIFxmQnVwZGF0ZVwtYWx0ZXJuYXRpdmVzXGZQIHdpbGwgbGlzdCBhbGwgb2YKK3RoZSBjaG9pY2VzIGZvciB0aGUgbGluayBncm91cCBvZiB3aGljaCBnaXZlbiBcZkluYW1lXGZQIGlzIHRoZSBtYXN0ZXIKK2FsdGVybmF0aXZlIG5hbWUuIFRoZSBjdXJyZW50IGNob2ljZSBpcyBtYXJrZWQgd2l0aCBhICcqJy4gIFlvdSB3aWxsIHRoZW4gYmUKK3Byb21wdGVkIGZvciB5b3VyIGNob2ljZSByZWdhcmRpbmcgdGhpcyBsaW5rIGdyb3VwLiAgRGVwZW5kaW5nIG9uIHRoZSBjaG9pY2UKK21hZGUsIHRoZSBsaW5rIGdyb3VwIG1pZ2h0IG5vIGxvbmdlciBiZSBpbiBcZklhdXRvXGZQIG1vZGUuIFlvdSB3aWxsIG5lZWQgdG8KK3VzZSB0aGUgXGZCXC1cLWF1dG9cZlAgb3B0aW9uIGluIG9yZGVyIHRvIHJldHVybiB0byB0aGUgYXV0b21hdGljIG1vZGUgKG9yIHlvdQorY2FuIHJlcnVuIFxmQlwtXC1jb25maWdcZlAgYW5kIHNlbGVjdCB0aGUgZW50cnkgbWFya2VkIGFzIGF1dG9tYXRpYykuCisuUFAKK0lmIHlvdSB3YW50IHRvIGNvbmZpZ3VyZSBub25cLWludGVyYWN0aXZlbHkgeW91IGNhbiB1c2UgdGhlIFxmQlwtXC1zZXRcZlAgb3B0aW9uCitpbnN0ZWFkIChzZWUgYmVsb3cpLgorLlBQCitMZXMgZGlmZulyZW50cyBwYXF1ZXRzIHF1aSBmb3Vybmlzc2VudCB1biBt6m1lIGZpY2hpZXIgZG9pdmVudCBsZSBmYWlyZSBlbgorXGZCY29sbGFib3JhbnRcZlAuIEVuIGQnYXV0cmVzIHRlcm1lcywgbCd1dGlsaXNhdGlvbiBkZSBcZkJ1cGRhdGVcLWFsdGVybmF0aXZlc1xmUAorZXN0IFxmQm9ibGlnYXRvaXJlXGZQIHBvdXIgdG91cyBsZXMgcGFxdWV0cyBxdWkgc29udCBkYW5zIGNlIGNhcyBldCBpbCBuJ2VzdAorcGFzIHBvc3NpYmxlIGRlIHJlbXBsYWNlciB1biBmaWNoaWVyIGQndW4gcGFxdWV0IHF1aSBuJ3V0aWxpc2UgcGFzIGxlCitt6WNhbmlzbWUgb2ZmZXJ0IHBhciBcZkJ1cGRhdGVcLWFsdGVybmF0aXZlc1xmUC4KKy4KKy5TSCBURVJNSU5PTE9HSUUKK0NvbW1lIGxlcyBvcOlyYXRpb25zIGRlIFxmQnVwZGF0ZVwtYWx0ZXJuYXRpdmVzXGZQIHNvbnQgdHLocyBjb21wbGlxdellcywgdm9pY2kKK3F1ZWxxdWVzIHRlcm1lcyBxdWkgZmFjaWxpdGVyb250IGwnZXhwbGljYXRpb24uCisuVFAgCitub20gZ+lu6XJpcXVlIChvdSBsaWVuIGFsdGVybmF0aWYpCitDJ2VzdCB1biBub20sIHBhciBleGVtcGxlIFxmSS91c3IvYmluL2VkaXRvclxmUCwgcXVpIHJlbnZvaWUsIOAgdHJhdmVycyBsZQorc3lzdOhtZSBkZXMgq1wgYWx0ZXJuYXRpdmVzXCC7LCDgIGwndW4gZGVzIGZpY2hpZXJzIHF1aSByZW1wbGlzc2VudCBkZXMKK2ZvbmN0aW9ucyBzaW1pbGFpcmVzLgorLlRQIAorbm9tIGFsdGVybmF0aWYKK05vbSBkJ3VuIGxpZW4gc3ltYm9saXF1ZSBkYW5zIGxlIHLpcGVydG9pcmUgZGVzIGFsdGVybmF0aXZlcy4KKy5UUCAKK2FsdGVybmF0aXZlIChvdSBjaGVtaW4gYWx0ZXJuYXRpZikKK0MnZXN0IGxlIG5vbSBkJ3VuIGZpY2hpZXIgcGFydGljdWxpZXIgZGFucyBsJ2FyYm9yZXNjZW5jZVwgOyBpbCBwZXV0IOp0cmUKK2FjY2Vzc2libGUgYXZlYyB1biBub20gZ+lu6XJpcXVlcyBncuJjZSBhdSBzeXN06G1lIGQnYWx0ZXJuYXRpdmVzLgorLlRQIAorculwZXJ0b2lyZSBkZXMgYWx0ZXJuYXRpdmVzIAorQydlc3QgbGUgculwZXJ0b2lyZSBxdWkgY29udGllbnQgbGVzIGxpZW5zIHN5bWJvbGlxdWVzXCA7IGlsIHMnYWdpdCBwYXIKK2TpZmF1dCBkZSBcZkkvZXRjL2FsdGVybmF0aXZlcy5cZlAKKy5UUCAKK3LpcGVydG9pcmUgYWRtaW5pc3RyYXRpZgorQydlc3QgbGUgculwZXJ0b2lyZSBxdWkgY29udGllbnQgZGVzIHJlbnNlaWduZW1lbnRzIHN1ciBsJ+l0YXQgZGUKK1xmQnVwZGF0ZVwtYWx0ZXJuYXRpdmVzLlxmUCBJbCBzJ2FnaXQgcGFyIGTpZmF1dCBkZQorXGZJL3Zhci9saWIvZHBrZy9hbHRlcm5hdGl2ZXMuXGZQCisuVFAgCitncm91cGUgZGUgbGllbnMKK0MnZXN0IHVuIGVuc2VtYmxlIGRlIGxpZW5zIHN5bWJvbGlxdWVzIGNvcnLpbOlzLCBkZSBtYW5p6HJlIHF1J29uIHB1aXNzZSBsZXMKK21ldHRyZSDgIGpvdXIgZW4gdW5lIHNldWxlIGZvaXMuCisuVFAgCitsaWVuIHByaW5jaXBhbAorRGFucyB1biBncm91cGUgZGUgbGllbnMsIGxlIGxpZW50IGFsdGVybmF0aWYgZXN0IGxlIGxpZW4gcXVpIGTpdGVybWluZQorY29tbWVudCBzb250IGNvbmZpZ3Vy6XMgbGVzIGF1dHJlcyBsaWVucyBkdSBncm91cGUuCisuVFAgCitsaWVuIHNlY29uZGFpcmUgKKtcIHNsYXZlXCC7KQorVW4gbGllbiBhbHRlcm5hdGlmIGVzdCB1biBncm91cGUgZGUgbGllbnMgY29udHL0bOlzIHBhciBsZSBy6WdsYWdlIGR1IGxpZW4KK3ByaW5jaXBhbC4KKy5UUCAKK21vZGUgYXV0b21hdGlxdWUKK1F1YW5kIHVuIGdyb3VwZSBkZSBsaWVucyBlc3QgZW4gbW9kZSBhdXRvbWF0aXF1ZSwgbGUgc3lzdOhtZSBkZXMKK6tcIGFsdGVybmF0aXZlc1wguyBhc3N1cmUgcXVlIGxlcyBsaWVucyBkYW5zIGxlIGdyb3VwZSBwb2ludGVudCB2ZXJzCitsJ2FsdGVybmF0aXZlIHBvc3PpZGFudCBsYSBwcmlvcml06SBsYSBwbHVzIOlsZXbpZSBkYW5zIGNlIGdyb3VwZS4KKy5UUCAKK21vZGUgbWFudWVsIAorUXVhbmQgdW4gZ3JvdXBlIGRlIGxpZW5zIGVzdCBlbiBtb2RlIG1hbnVlbCwgbGUgc3lzdOhtZSBkZXMgq1wgYWx0ZXJuYXRpdmVzXCC7CituZSBtb2RpZmllIHBhcyBsZSBwYXJhbel0cmFnZSBkZSBsJ2FkbWluaXN0cmF0ZXVyIHN5c3TobWUuCisuCisuU0ggQ09NTUFOREVTCisuVFAgCitcZkJcLVwtaW5zdGFsbFxmUCBcZklsaWVuIG5vbSBjaGVtaW4gcHJpb3JpdOlcZlAgW1xmQlwtXC1zbGF2ZVxmUCBcZklsaWVuIG5vbSBjaGVtaW5cZlBdLi4uCitBam91dGUgdW4gZ3JvdXBlIGQnYWx0ZXJuYXRpdmVzIGF1IHN5c3TobWUuIFxmSWxpZW5cZlAgZXN0IGxlIG5vbSBn6W7pcmlxdWUgZHUKK2xpZW4gcHJpbmNpcGFsLCBcZklub21cZlAgZXN0IGxlIG5vbSBkZSBzb24gbGllbiBzeW1ib2xpcXVlLCBldCBcZkljaGVtaW5cZlAgZXN0CitsJ2FsdGVybmF0aXZlIHBy6XNlbnTpZSBwb3VyIGxlIGxpZW4gcHJpbmNpcGFsLiBMZXMgcGFyYW3odHJlcyBxdWkgc3VpdmVudAorXGZCXC1cLXNsYXZlXGZQIHNvbnQgbGUgbm9tIGfpbulyaXF1ZSwgbGUgbGllbiBzeW1ib2xpcXVlIGRhbnMgbGUgculwZXJ0b2lyZSBkZXMKK2FsdGVybmF0aXZlcyBldCBsJ2FsdGVybmF0aXZlIHBvdXIgdW4gbGllbiBzZWNvbmRhaXJlLiBPbiBwZXV0IGluZGlxdWVyIHrpcm8KK291IHBsdXNpZXVycyBvcHRpb25zIFxmQlwtXC1zbGF2ZVxmUCBjaGFjdW5lIHN1aXZpZSBwYXIgdHJvaXMKK3BhcmFt6HRyZXMuIEwnYWx0ZXJuYXRpdmUgcHJpbmNpcGFsZSBkb2l0IGV4aXN0ZXIsIHNpbm9uIGxhIGNvbW1hbmRlCivpY2hvdWVyYS4gQ2VwZW5kYW50LCBzaSB1bmUgYWx0ZXJuYXRpdmUgc2Vjb25kYWlyZSBuJ2V4aXN0ZSBwYXMsIGxlIGxpZW4KK3NlY29uZGFpcmUgbmUgc2VyYSBzaW1wbGVtZW50IHBhcyBpbnN0YWxs6SAobWFpcyB1biBhdmVydGlzc2VtZW50IHNlcmEKK2FmZmljaOkpLiBTaSB1biBmaWNoaWVyIGV4aXN0ZSDgIGwnZW1wbGFjZW1lbnQgb/kgbCdhbHRlcm5hdGl2ZSBkb2l0IOp0cmUKK2luc3RhbGzpZSwgaWwgZXN0IGNvbnNlcnbpIHNhdWYgc2kgXGZCXC1cLWZvcmNlXGZQIGVzdCB1dGlsaXPpLgorLklQCitRdWFuZCBsZSBsaWVuIHByaW5jaXBhbCBzcOljaWZp6SBleGlzdGUgZOlq4CBkYW5zIGxlcyBlbnJlZ2lzdHJlbWVudHMgZHUKK3N5c3TobWUgZGVzIKtcIGFsdGVybmF0aXZlc1wguywgbGVzIHJlbnNlaWduZW1lbnRzIGZvdXJuaXMgc29udCBham91dOlzIGRhbnMKK3VuIG5vdXZlbCBlbnNlbWJsZSBkJ2FsdGVybmF0aXZlcyBwb3VyIGxlIGdyb3VwZS4gU2lub24sIHVuIG5vdXZlYXUgZ3JvdXBlCitjb250ZW5hbnQgY2VzIGluZm9ybWF0aW9ucyBlc3QgYWpvdXTpIGV0IG1pcyBlbiBtb2RlIGF1dG9tYXRpcXVlLiBRdWFuZCB1bgorZ3JvdXBlIGVzdCBlbiBtb2RlIGF1dG9tYXRpcXVlLCBldCBxdWUgbGEgcHJpb3JpdOkgZGVzIGFsdGVybmF0aXZlcworbm91dmVsbGVtZW50IGFqb3V06WVzIGVzdCBzdXDpcmlldXJlIOAgY2VsbGUgZGUgdG91dGVzIGxlcyBhbHRlcm5hdGl2ZXMKK2luc3RhbGzpZXMgZGFucyBjZSBncm91cGUsIGxlcyBsaWVucyBzeW1ib2xpcXVlcyBzb250IG1pcyDgIGpvdXIgZXQgcG9pbnRlbnQKK3ZlcnMgbGVzIGFsdGVybmF0aXZlcyBub3V2ZWxsZW1lbnQgYWpvdXTpZXMuCisuVFAgCitcZkJcLVwtc2V0XGZQIFxmSW5vbSBjaGVtaW5cZlAKK1NldCB0aGUgcHJvZ3JhbSBcZklwYXRoXGZQIGFzIGFsdGVybmF0aXZlIGZvciBcZkluYW1lLlxmUCBUaGlzIGlzIGVxdWl2YWxlbnQgdG8KK1xmQlwtXC1jb25maWdcZlAgYnV0IGlzIG5vblwtaW50ZXJhY3RpdmUgYW5kIHRodXMgc2NyaXB0YWJsZS4KKy5UUCAKK1xmQlwtXC1yZW1vdmVcZlAgXGZJbm9tIGNoZW1pblxmUAorRW5s6HZlIHVuZSBhbHRlcm5hdGl2ZSBldCB0b3VzIHNlcyBsaWVucyBzZWNvbmRhaXJlcyBhc3NvY2npcy4gXGZJbm9tXGZQIGVzdCB1bgorbm9tIGRhbnMgbGUgculwZXJ0b2lyZSBkZXMgq1wgYWx0ZXJuYXRpdmVzXCC7LCBldCBcZkljaGVtaW5cZlAgZXN0IHVuIG5vbSBkZQorZmljaGllciBhdXF1ZWwgXGZJbm9tXGZQIHBldXQg6nRyZSBsaekuIFF1YW5kIFxmSW5vbVxmUCBlc3QgZW4gZWZmZXQgbGnpIOAKK1xmSWNoZW1pblxmUCwgXGZJbm9tXGZQIGVzdCBtaXMg4CBqb3VyIGV0IHBvaW50ZSB2ZXJzIHVuZSBhdXRyZSBhbHRlcm5hdGl2ZQorYWTpcXVhdGUgb3UgYmllbiBlc3QgZW5sZXbpIHMnaWwgbid5IGVuIGEgcGFzIGQnYXV0cmUuIERlIG3qbWUsIGxlcyBsaWVucworc2Vjb25kYWlyZXMgYXNzb2Np6XMgc29udCBtaXMg4CBqb3VyIG91IGVubGV26XMuIFF1YW5kIGxlIGxpZW4gbmUgcG9pbnRlIHBhcworZOlq4CBzdXIgXGZJY2hlbWluXGZQLCBhdWN1biBsaWVuIG4nZXN0IG1vZGlmaelcIDsgc2V1bGVzIGxlcyBpbmZvcm1hdGlvbnMgc3VyCitsJ2FsdGVybmF0aXZlIHNvbnQgc3VwcHJpbellcy4KKy5UUCAKK1xmQlwtXC1yZW1vdmVcLWFsbFxmUCBcZklub21cZlAKK1N1cHByaW1lIHRvdXRlcyBsZXMgYWx0ZXJuYXRpdmVzIGV0IHRvdXMgbGVzIGxpZW5zIHNlY29uZGFpcmVzCithc3NvY2npcy4gXGZJbm9tXGZQIGVzdCB1biBub20gZGFucyBsZSBy6XBlcnRvaXJlIGRlcyBhbHRlcm5hdGl2ZXMuCisuVFAgCitcZkJcLVwtYWxsXGZQCitVdGlsaXNlIFxmQlwtXC1jYWxsXGZQIHN1ciB0b3V0ZXMgbGVzIGFsdGVybmF0aXZlcy4gQ2V0dGUgb3B0aW9uIHBldXQg6nRyZQorY29tYmlu6WUgYXZlYyBcZkJcLVwtc2tpcFwtYXV0b1xmUCBwb3VyIHJldm9pciBldCBjb25maWd1cmVyIHRvdXRlcyBsZXMKK2FsdGVybmF0aXZlcyBxdWkgbmUgc29udCBwYXMgZW4gbW9kZSBhdXRvbWF0aXF1ZS4gTGVzIGFsdGVybmF0aXZlcyBlcnJvbullcworc29udCBhdXNzaSBhZmZpY2jpZXMuIEFpbnNpLCB1bmUgbel0aG9kZSBzaW1wbGUgcG91ciBjb3JyaWdlciBsZXMKK2FsdGVybmF0aXZlcyBjYXNz6WVzIGVzdCBkJ3V0aWxpc2VyIFxmQnllcyBcW2FxXVxbYXFdIHwgdXBkYXRlXC1hbHRlcm5hdGl2ZXMKK1wtXC1mb3JjZSBcLVwtYWxsXGZQLgorLlRQIAorXGZCXC1cLWF1dG9cZlAgXGZJbm9tXGZQCitQYXNzZSBsZSBsaWVuIHN5bWJvbGlxdWUgcHJpbmNpcGFsIFxmSW5vbVxmUCBlbiBtb2RlIGF1dG9tYXRpcXVlLiBFbiBt6m1lCit0ZW1wcywgbGUgbGllbiBzeW1ib2xpcXVlIHByaW5jaXBhbCBldCBzZXMgbGllbnMgc2Vjb25kYWlyZXMgc29udCBtaXMg4CBqb3VyCitldCBwb2ludGVudCB2ZXJzIGxlcyBhbHRlcm5hdGl2ZXMgYXZlYyBsZXMgcHJpb3JpdOlzIGxlcyBwbHVzIOlsZXbpZXMuCisuVFAgCitcZkJcLVwtZGlzcGxheVxmUCBcZklub21cZlAKK0FmZmljaGUgZGVzIHJlbnNlaWduZW1lbnRzIHN1ciBsZSBncm91cGUgZGUgbGllbnMuIEwnaW5mb3JtYXRpb24gYWZmaWNo6WUKK2NvbXByZW5kIGxlIG1vZGUgZHUgZ3JvdXBlIChhdXRvIG91IG1hbnVlbCksIHZlcnMgcXVlbGxlIGFsdGVybmF0aXZlIGxlIGxpZW4KK3N5bWJvbGlxdWUgcG9pbnRlIGFjdHVlbGxlbWVudCwgcXVlbGxlcyBhdXRyZXMgYWx0ZXJuYXRpdmVzIHNvbnQgZGlzcG9uaWJsZXMKKyhldCBsZXMgbGllbnMgc2Vjb25kYWlyZXMgYXNzb2Np6XMpLCBldCBsJ2FsdGVybmF0aXZlIGFjdHVlbGxlbWVudCBpbnN0YWxs6WUKK3F1aSBwb3Nz6GRlIGxhIHByaW9yaXTpIGxhIHBsdXMg6WxldullLgorLlRQIAorXGZCXC1cLWdldFwtc2VsZWN0aW9uc1xmUAorQWZmaWNoZSB0b3VzIGxlcyBub21zIHByaW5jaXBhdXggZCdhbHRlcm5hdGl2ZXMgKGNldXggcXVpIGNvbnRy9GxlbnQgdW4KK2dyb3VwZSBkZSBsaWVucykgYWluc2kgcXVlIGxldXIg6XRhdC4gQ2hhcXVlIGxpZ25lIGNvbXBvcnRlIGp1c3F1J+AgdHJvaXMKK2NoYW1wcyAoc+lwYXLpcyBwYXIgdW4gb3UgcGx1c2lldXJzIGVzcGFjZXMpLiBMZSBwcmVtaWVyIGVzdCBsZSBub20gZGUKK2wnYWx0ZXJuYXRpdmUsIGxlIHNlY29uZCBlc3Qgc29uIOl0YXQgKKtcIGF1dG9cILsgb3Ugq1wgbWFudWFsXCC7KSBldCBsZSBkZXJuaWVyCittb250cmUgbGUgY2hvaXggYWN0dWVsIHBvdXIgbCdhbHRlcm5hdGl2ZSAoaWwgcydhZ2l0IGQndW4gbm9tIGRlIGZpY2hpZXIsCitxdWkgcGV1dCBjb250ZW5pciBkZXMgZXNwYWNlcykuCisuVFAgCitcZkJcLVwtc2V0XC1zZWxlY3Rpb25zXGZQCitMaXQgbGEgY29uZmlndXJhdGlvbiBkZXMgYWx0ZXJuYXRpdmVzIHN1ciBsJ2VudHLpZSBzdGFuZGFyZCwgZGFucyBsZSBmb3JtYXQKK3V0aWxpc+kgcGFyIFxmQnVwZGF0ZVwtYWx0ZXJuYXRpdmVzIFwtXC1nZXRcLXNlbGVjdGlvbnNcZlAgZXQgbGVzIGNvbmZpZ3VyZSBlbgorY29uc+lxdWVuY2UuCisuVFAgCitcZkJcLVwtcXVlcnlcZlAgXGZJbm9tXGZQCitBZmZpY2hlIGRlcyBpbmZvcm1hdGlvbnMgc3VyIGxlIGdyb3VwZSBkZSBsaWVucyBkZSBtYW5p6HJlIGFuYWxvZ3VlIOAKK1wtXC1kaXNwbGF5LCBtYWlzIHNvdXMgdW5lIGZvcm1lIHF1aSBwZXV0IOp0cmUgYW5hbHlz6WUgYXV0b21hdGlxdWVtZW50ICh2b2lyCitsYSBzZWN0aW9uIFxmQkZPUk1BVCBERSBSRVFVylRFXGZQIGNpXC1kZXNzb3VzKS4KKy5UUCAKK1xmQlwtXC1saXN0XGZQIFxmSW5vbVxmUAorQWZmaWNoZSB0b3V0ZXMgbGVzIGNpYmxlcyBkdSBncm91cGUgZGUgbGllbnMuCisuVFAgCitcZkJcLVwtY29uZmlnXGZQIFxmSW5vbVxmUAorQWZmaWNoZSBsZXMgYWx0ZXJuYXRpdmVzIGRpc3BvbmlibGVzIHBvdXIgdW4gZ3JvdXBlIGRlIGxpZW5zIGV0IHBlcm1ldGRlCitjaG9pc2lyIGludGVyYWN0aXZlbWVudCBsYXF1ZWxsZSBkb2l0IOp0cmUgdXRpbGlz6WUuIExlIGdyb3VwZSBkZSBsaWVucyBlc3QKK21pcyDgIGpvdXIuCisuVFAgCitcZkJcLVwtaGVscFxmUAorQWZmaWNoZSB1biBtZXNzYWdlIGQnYWlkZSBwdWlzIHF1aXR0ZS4KKy5UUCAKK1xmQlwtXC12ZXJzaW9uXGZQCitBZmZpY2hlIGxlIG51belybyBkZSB2ZXJzaW9uIHB1aXMgcXVpdHRlLgorLgorLlNIIE9QVElPTlMKKy5UUCAKK1xmQlwtXC1hbHRkaXJcZlBcZkkgculwZXJ0b2lyZVxmUAorRG9ubmUgbGUgculwZXJ0b2lyZSBkZXMgYWx0ZXJuYXRpdmVzLCBxdWFuZCBpbCBlc3QgZGlmZulyZW50IGRlIGNlbHVpIHBhcgorZOlmYXV0LgorLlRQIAorXGZCXC1cLWFkbWluZGlyXGZQXGZJIHLpcGVydG9pcmVcZlAKK0Rvbm5lIGxlIHLpcGVydG9pcmUgYWRtaW5pc3RyYXRpZiwgcXVhbmQgaWwgZXN0IGRpZmbpcmVudCBkZSBjZWx1aSBwYXIKK2TpZmF1dC4KKy5UUCAKK1xmQlwtXC1sb2dcZlBcZkkgZmljaGllclxmUAorSW5kaXF1ZSBsZSBmaWNoaWVyIGpvdXJuYWwsIHBvdXIgdXRpbGlzZXIgdW4gZmljaGllciBkaWZm6XJlbnQgZHUgZmljaGllcgorcGFyIGTpZmF1dCAoL3Zhci9sb2cvYWx0ZXJuYXRpdmVzLmxvZykuCisuVFAgCitcZkJcLVwtZm9yY2VcZlAKK0xldCBcZkJ1cGRhdGVcLWFsdGVybmF0aXZlc1xmUCByZXBsYWNlIG9yIGRyb3AgYW55IHJlYWwgZmlsZSB0aGF0IGlzIGluc3RhbGxlZAord2hlcmUgYW4gYWx0ZXJuYXRpdmUgbGluayBoYXMgdG8gYmUgaW5zdGFsbGVkIG9yIHJlbW92ZWQuCisuVFAgCitcZkJcLVwtc2tpcFwtYXV0b1xmUAorUGFzc2UgbCdpbnZpdGUgZGUgY29uZmlndXJhdGlvbiBwb3VyIGxlcyBhbHRlcm5hdGl2ZXMgcXVpIHNvbnQgY29ycmVjdGVtZW50Citjb25maWd1cullcyBlbiBtb2RlIGF1dG9tYXRpcXVlLiBDZXR0ZSBvcHRpb24gbidlc3QgcGVydGluZW50ZSBxdSdhdmVjCitcZkJcLVwtY29uZmlnXGZQIG91IFxmQlwtXC1hbGxcZlAuCisuVFAgCitcZkJcLVwtdmVyYm9zZVxmUAorcHJvZHVpdCBwbHVzIGRlIGNvbW1lbnRhaXJlcyBzdXIgY2UgcXVlIGZhaXQgXGZCdXBkYXRlXC1hbHRlcm5hdGl2ZXNcZlAuCisuVFAgCitcZkJcLVwtcXVpZXRcZlAKK05lIGNy6WUgcGFzIGRlIGNvbW1lbnRhaXJlIOAgbW9pbnMgcXUndW5lIGVycmV1ciBuZSBzdXJ2aWVubmUuCisuCisuU0ggRU5WSVJPTk5FTUVOVAorLlRQIAorXGZCRFBLR19BRE1JTkRJUlxmUAorSWYgc2V0IGFuZCB0aGUgXGZCXC1cLWFkbWluZGlyXGZQIG9wdGlvbiBoYXMgbm90IGJlZW4gc3BlY2lmaWVkLCBpdCB3aWxsIGJlIHVzZWQKK2FzIHRoZSBiYXNlIGFkbWluaXN0cmF0aXZlIGRpcmVjdG9yeS4KKy4KKy5TSCBGSUNISUVSUworLlRQIAorXGZJL2V0Yy9hbHRlcm5hdGl2ZXMvXGZQCitMZSBy6XBlcnRvaXJlIGRlcyCrXCBhbHRlcm5hdGl2ZXNcILsgcGFyIGTpZmF1dC4gUGV1dCDqdHJlIHJlbXBsYWPpIGF2ZWMKK2wnb3B0aW9uIFxmQlwtXC1hbHRkaXJcZlAuCisuVFAgCitcZkkvdmFyL2xpYi9kcGtnL2FsdGVybmF0aXZlcy9cZlAKK0xlIHLpcGVydG9pcmUgYWRtaW5pc3RyYXRpZiBwYXIgZOlmYXV0LiBQZXV0IOp0cmUgcmVtcGxhY+kgYXZlYyBsJ29wdGlvbgorXGZCXC1cLWFkbWluZGlyXGZQCisuCisuU0ggIkNPREUgREUgU09SVElFIgorLlRQIAorXGZCMFxmUAorTCdhY3Rpb24gZGVtYW5k6WUgcydlc3QgY29ycmVjdGVtZW50IGTpcm91bOllLgorLlRQIAorXGZCMlxmUAorRGVzIHByb2Js6G1lcyBzb250IHN1cnZlbnVzIGxvcnMgZGUgbCdhbmFseXNlIGRlIGxhIGxpZ25lIGRlIGNvbW1hbmRlIG91CitiaWVuIHBlbmRhbnQgbCdleOljdXRpb24gZGUgbCdhY3Rpb24uCisuCisuU0ggIkZPUk1BVCBERSBSRVFVylRFIgorVGhlIFxmQnVwZGF0ZVwtYWx0ZXJuYXRpdmVzIFwtXC1xdWVyeVxmUCBmb3JtYXQgaXMgdXNpbmcgYW4gUkZDODIyXC1saWtlIGZsYXQKK2Zvcm1hdC4gSXQncyBtYWRlIG9mIFxmSW5cZlAgKyAxIGJsb2NrcyB3aGVyZSBcZkluXGZQIGlzIHRoZSBudW1iZXIgb2YKK2FsdGVybmF0aXZlcyBhdmFpbGFibGUgaW4gdGhlIHF1ZXJpZWQgbGluayBncm91cC4gVGhlIGZpcnN0IGJsb2NrIGNvbnRhaW5zCit0aGUgZm9sbG93aW5nIGZpZWxkczoKKy5UUCAKK1xmQkxpbms6XGZQXGZJIGxpbmtcZlAKK05vbSBn6W7pcmlxdWUgZGUgbCdhbHRlcm5hdGl2ZS4KKy5UUCAKK1xmQlN0YXR1czpcZlBcZkkgc3RhdHVzXGZQCivJdGF0IGRlIGwnYWx0ZXJuYXRpdmUgKFxmQmF1dG9cZlAgb3UgXGZCbWFudWFsXGZQKS4KKy5UUCAKK1xmQkJlc3Q6XGZQXGZJIGJlc3RcLWNob2ljZVxmUAorQ2hlbWluIGRlIGxhIG1laWxsZXVyZSBhbHRlcm5hdGl2ZSBwb3VyIGNlIGdyb3VwZSBkZSBsaWVucy4gTidlc3QgcGFzCitwculzZW50IHNpIGF1Y3VuIGFsdGVybmF0aXZlIG4nZXN0IGRpc3BvbmlibGUuCisuVFAgCitcZkJWYWx1ZTpcZlBcZkkgY3VycmVudGx5XC1zZWxlY3RlZFwtYWx0ZXJuYXRpdmVcZlAKK0NoZW1pbiBkZSBsJ2FsdGVybmF0aXZlIGFjdHVlbGxlbWVudCBjaG9pc2llLiBQZXV0IGF1c3NpIHByZW5kcmUgbGEgdmFsZXVyCitzcOljaWFsZSBcZkJub25lXGZQLCB1dGlsaXPpZSBzaSBsZSBsaWVuIG4nZXhpc3RlIHBhcy4KKy5UUCAKKy5UUCAKK0xlcyBhdXRyZXMgYmxvY3MgZOljcml2ZW50IGxlcyBhbHRlcm5hdGl2ZXMgZGlzcG9uaWJsZXMgZGFucyBsZSBncm91cGUgZGUgbGllbnMgaW50ZXJyb2fpLgorLlRQIAorXGZCQWx0ZXJuYXRpdmU6XGZQXGZJIHBhdGhcLW9mXC10aGlzXC1hbHRlcm5hdGl2ZVxmUAorQ2hlbWluIHZlcnMgbCdhbHRlcm5hdGl2ZSBkZSBjZSBibG9jCisuVFAgCitcZkJQcmlvcml0eTpcZlBcZkkgcHJpb3JpdHlcLXZhbHVlXGZQCitWYWxldXIgZGUgbGEgcHJpb3JpdOkgYWx0ZXJuYXRpdmUuCisuVFAgCitcZkJTbGF2ZXM6XGZQXGZJIGxpc3RcLW9mXC1zbGF2ZXNcZlAKK0xvcnNxdWUgY2V0IGVuXC106nRlIGVzdCBwculzZW50LCBsYSBsaWduZSBzdWl2YW50ZSBjb250aWVudCB0b3V0ZXMgbGVzCithbHRlcm5hdGl2ZXMgc2Vjb25kYWlyZXMgYXNzb2Np6WVzIGF1IGxpZW4gcHJpbmNpcGFsIGRlIGNldHRlIGFsdGVybmF0aXZlLCDgCityYWlzb24gZCd1bmUgYWx0ZXJuYXRpdmUgc2Vjb25kYWlyZSBwYXIgbGlnbmUuIENoYXF1ZSBsaWduZSBjb21wb3J0ZSB1bgorZXNwYWNlLCBsZSBub20gZGUgbCdhbHRlcm5hdGl2ZSBzZWNvbmRhaXJlLCB1biBlc3BhY2UgZXQgbGUgY2hlbWluIHZlcnMKK2wnYWx0ZXJuYXRpdmUgc2Vjb25kYWlyZS4KKy4KKy5UUCAKK1xmQkV4ZW1wbGVcZlAKKy5uZgorJCB1cGRhdGVcLWFsdGVybmF0aXZlcyBcLVwtcXVlcnkgZWRpdG9yCitMaW5rOiBlZGl0b3IKK1N0YXR1czogYXV0bworQmVzdDogL3Vzci9iaW4vdmltLmd0aworVmFsdWU6IC91c3IvYmluL3ZpbS5ndGsKKworQWx0ZXJuYXRpdmU6IC9iaW4vZWQKK1ByaW9yaXR5OiBcLTEwMAorU2xhdmVzOgorIGVkaXRvci4xLmd6IC91c3Ivc2hhcmUvbWFuL21hbjEvZWQuMS5negorCitBbHRlcm5hdGl2ZTogL3Vzci9iaW4vdmltLmd0aworUHJpb3JpdHk6IDUwCitTbGF2ZXM6CisgZWRpdG9yLjEuZ3ogL3Vzci9zaGFyZS9tYW4vbWFuMS92aW0uMS5negorIGVkaXRvci5ydS4xLmd6IC91c3Ivc2hhcmUvbWFuL3J1L21hbjEvdmltLjEuZ3oKKyBlZGl0b3IucGwuSVNPODg1OVwtMi4xLmd6IC91c3Ivc2hhcmUvbWFuL3BsLklTTzg4NTlcLTIvbWFuMS92aW0uMS5negorIGVkaXRvci5pdC5JU084ODU5XC0xLjEuZ3ogL3Vzci9zaGFyZS9tYW4vaXQuSVNPODg1OVwtMS9tYW4xL3ZpbS4xLmd6CisgZWRpdG9yLnBsLlVURlwtOC4xLmd6IC91c3Ivc2hhcmUvbWFuL3BsLlVURlwtOC9tYW4xL3ZpbS4xLmd6CisgZWRpdG9yLml0LjEuZ3ogL3Vzci9zaGFyZS9tYW4vaXQvbWFuMS92aW0uMS5negorIGVkaXRvci5mci5VVEZcLTguMS5neiAvdXNyL3NoYXJlL21hbi9mci5VVEZcLTgvbWFuMS92aW0uMS5negorIGVkaXRvci5mci4xLmd6IC91c3Ivc2hhcmUvbWFuL2ZyL21hbjEvdmltLjEuZ3oKKyBlZGl0b3IuaXQuVVRGXC04LjEuZ3ogL3Vzci9zaGFyZS9tYW4vaXQuVVRGXC04L21hbjEvdmltLjEuZ3oKKyBlZGl0b3IucGwuMS5neiAvdXNyL3NoYXJlL21hbi9wbC9tYW4xL3ZpbS4xLmd6CisgZWRpdG9yLmZyLklTTzg4NTlcLTEuMS5neiAvdXNyL3NoYXJlL21hbi9mci5JU084ODU5XC0xL21hbjEvdmltLjEuZ3oKKy5maQorLgorLlNIIERJQUdOT1NUSUNTCitXaXRoIFxmQlwtXC12ZXJib3NlXGZQIFxmQnVwZGF0ZVwtYWx0ZXJuYXRpdmVzXGZQIGNoYXR0ZXJzIGluY2Vzc2FudGx5IGFib3V0IGl0cworYWN0aXZpdGllcyBvbiBpdHMgc3RhbmRhcmQgb3V0cHV0IGNoYW5uZWwuICBJZiBwcm9ibGVtcyBvY2N1ciwKK1xmQnVwZGF0ZVwtYWx0ZXJuYXRpdmVzXGZQIG91dHB1dHMgZXJyb3IgbWVzc2FnZXMgb24gaXRzIHN0YW5kYXJkIGVycm9yIGNoYW5uZWwKK2FuZCByZXR1cm5zIGFuIGV4aXQgc3RhdHVzIG9mIDIuICBUaGVzZSBkaWFnbm9zdGljcyBzaG91bGQgYmUKK3NlbGZcLWV4cGxhbmF0b3J5OyBpZiB5b3UgZG8gbm90IGZpbmQgdGhlbSBzbywgcGxlYXNlIHJlcG9ydCB0aGlzIGFzIGEgYnVnLgorLgorLlNIIEVYRU1QTEVTCitQbHVzaWV1cnMgcGFxdWV0cyBmb3Vybmlzc2VudCB1biDpZGl0ZXVyIGRlIHRleHRlIGNvbXBhdGlibGUgYXZlYyBcZkJ2aVxmUCwgcGFyCitleGVtcGxlIFxmQm52aVxmUCBldCBcZkJ2aW1cZlAuIENlbHVpIHF1aSBzZXJhIHV0aWxpc+kgZXN0IGTpdGVybWlu6SBwYXIgbGUgZ3JvdXBlCitkZSBsaWVucyBcZkJ2aVxmUCwgcXVpIGNvbXByZW5kIGRlcyBsaWVucyBwb3VyIGxlIHByb2dyYW1tZSBsdWlcLW3qbWUgZXQgc2EgcGFnZQorZGUgbWFudWVsLgorLlBQCitUbyBkaXNwbGF5IHRoZSBhdmFpbGFibGUgcGFja2FnZXMgd2hpY2ggcHJvdmlkZSBcZkJ2aVxmUCBhbmQgdGhlIGN1cnJlbnQKK3NldHRpbmcgZm9yIGl0LCB1c2UgdGhlIFxmQlwtXC1kaXNwbGF5XGZQIGFjdGlvbjoKKy5SUworLlBQCitcZkJ1cGRhdGVcLWFsdGVybmF0aXZlcyBcLVwtZGlzcGxheSB2aVxmUAorLlJFCisuUFAKK1BvdXIgY2hvaXNpciB1bmUgaW1wbOltZW50YXRpb24gcGFydGljdWxp6HJlIGRlIFxmQnZpXGZQIG9uIHBldXQgdXRpbGlzZXIgY2V0dGUKK2NvbW1hbmRlIGVuIHRhbnQgcXVlIHN1cGVydXRpbGlzYXRldXIgZXQgY2hvaXNpciB1biBub21icmUgZGFucyBsYSBsaXN0ZVwgOgorLlJTCisuUFAKK1xmQnVwZGF0ZVwtYWx0ZXJuYXRpdmVzIFwtXC1jb25maWcgdmlcZlAKKy5SRQorLlBQCitQb3VyIHJldHJvdXZlciBsJ2ltcGzpbWVudGF0aW9uIHBhciBk6WZhdXQgZGUgXGZCdmlcZlAgb24gcGV1dCB1dGlsaXNlciBjZXR0ZQorY29tbWFuZGUgZW4gdGFudCBxdWUgc3VwZXJcLXV0aWxpc2F0ZXVyXCA6CisuUlMKKy5QUAorXGZCdXBkYXRlXC1hbHRlcm5hdGl2ZXMgXC1cLWF1dG8gdmlcZlAKKy5SRQorLgorLlNIIEJPR1VFUworU2kgdm91cyB0cm91dmV6IHVuIGJvZ3VlLCB2ZXVpbGxleiBsZSBzaWduYWxlciBhdSBzeXN06G1lIGRlIHN1aXZpIGRlcworYm9ndWVzIGRlIERlYmlhbi4KKy5QUAorU2kgdm91cyB0cm91dmV6IHVuZSBkaXNjb3JkYW5jZSBlbnRyZSBsJ2FjdGlvbiBkZSBcZkJ1cGRhdGVcLWFsdGVybmF0aXZlc1xmUCBldAorY2V0dGUgcGFnZSBkZSBtYW51ZWwsIGMnZXN0IHF1J2lsIHkgYSB1biBib2d1ZSwgc29pdCBkYW5zIGwnaW1wbOltZW50YXRpb24KK3NvaXQgZGFucyBsYSBkb2N1bWVudGF0aW9uXCA7IGZhaXRlcyB1biByYXBwb3J0LgorLgorLlNIIEFVVEVVUlMKK0NvcHlyaWdodCBcKGNvIDE5OTUgSWFuIEphY2tzb24KKy5icgorQ29weXJpZ2h0IFwoY28gMjAwOSBSYXBoYVxbOmVdbCBIZXJ0em9nCisuc3AKK0NlIHByb2dyYW1tZSBlc3QgdW4gbG9naWNpZWwgbGlicmVcIDsgdm95ZXogbGEgq1wgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2VcILsKK3ZlcnNpb24gMiBvdSBzdXDpcmlldXJlIHBvdXIgbGUgY29weXJpZ2h0LiBJbCBuJ3kgYSBQQVMgZGUgZ2FyYW50aWUuCisuUFAKK0NldHRlIHBhZ2UgZGUgbWFudWVsIGVzdCBjb3B5cmlnaHQgMTk5NywgMTk5OCBDaGFybGVzIEJyaXNjb2VcLVNtaXRoIGV0CithdXRyZXMgYXV0ZXVycy4KKy5zcAorQ2V0dGUgZG9jdW1lbnRhdGlvbiBlc3QgbGlicmVcIDsgdm95ZXogbGEgq1wgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2VcILsKK3ZlcnNpb24gMiBvdSBzdXDpcmlldXJlIHBvdXIgbGUgY29weXJpZ2h0LiBJbCBuJ3kgYSBQQVMgZGUgZ2FyYW50aWUuCisuCisuU0ggIlZPSVIgQVVTU0kiCitcZkJsblxmUCgxKSwgRkhTLCBsZSBzdGFuZGFyZCBwb3VyIGwnb3JnYW5pc2F0aW9uIGR1IHN5c3TobWUgZGUgZmljaGllcnMuCisuU0ggVFJBRFVDVElPTgorQXJpZWwgVkFSREkgPGFyaWVsLnZhcmRpQGZyZWVzYmVlLmZyPiwgMjAwMi4KK1BoaWxpcHBlIEJhdGFpbGxlciwgMjAwNi4KK05pY29sYXMgRnJhbudvaXMsIDIwMDYuCitWZXVpbGxleiBzaWduYWxlciB0b3V0ZSBlcnJldXIg4CA8ZGViaWFuXC1sMTBuXC1mcmVuY2hAbGlzdHMuZGViaWFuLm9yZz4uCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9odS9kcGtnLmNmZy41IGIvZHBrZy0xLjE2LjEuMS9tYW4vaHUvZHBrZy5jZmcuNQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43ZGNjNDAwCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vaHUvZHBrZy5jZmcuNQpAQCAtMCwwICsxLDMxIEBACisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkcGtnLmNmZyA1IDIwMDlcLTA5XC0wNSAiRGViaWFuIFByb2plY3QiICJkcGtnIGvpc3psZXQiCisuU0ggTslWCitkcGtnLmNmZyBcLSBkcGtnIGtvbmZpZ3Vy4WNp83MgZuFqbAorLgorLlNIIExFzVLBUworVGhpcyBmaWxlIGNvbnRhaW5zIGRlZmF1bHQgb3B0aW9ucyBmb3IgZHBrZy4gRWFjaCBsaW5lIGNvbnRhaW5zIGEgc2luZ2xlCitvcHRpb24gd2hpY2ggaXMgZXhhY3RseSB0aGUgc2FtZSBhcyBhIG5vcm1hbCBjb21tYW5kIGxpbmUgb3B0aW9uIGZvciBkcGtnCitleGNlcHQgZm9yIHRoZSBsZWFkaW5nIGRhc2hlcyB3aGljaCBhcmUgbm90IHVzZWQgaGVyZS4gUXVvdGVzIHN1cnJvdW5kaW5nCitvcHRpb24gdmFsdWVzIGFyZSBzdHJpcHBlZC4gQ29tbWVudHMgYXJlIGFsbG93ZWQgYnkgc3RhcnRpbmcgYSBsaW5lIHdpdGggYQoraGFzaCBzaWduICgiXGZCI1xmUCIpLgorLgorLlNIIEbBSkxPSworXGZJL2V0Yy9kcGtnL2Rwa2cuY2ZnLmQvWzBcLTlhXC16QVwtWl9cLV0qXGZQCisuYnIKK1xmSS9ldGMvZHBrZy9kcGtnLmNmZ1xmUAorLmJyCitcZkl+Ly5kcGtnLmNmZ1xmUAorLgorLlNIIFNaRVJa1QorTOFzZCBhIFxmSS91c3Ivc2hhcmUvZG9jL2Rwa2cvVEhBTktTXGZQIGbhamx0LCBtZWx5YmVuIGEgXGZCZHBrZ1xmUCBr6XN67XTpc+l0CitzZWftdPUgc3plbelseWVrIGxpc3ThamEgdGFs4WxoYXTzLgorLgorLlNIICJMwVNEIE3JRyIKK1xmQmRwa2dcZlAoMSkuCisuUAorRm9yZDogU1pFUlbBQyBBdHRpbGEKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL2h1L2RzZWxlY3QuY2ZnLjUgYi9kcGtnLTEuMTYuMS4xL21hbi9odS9kc2VsZWN0LmNmZy41Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjRmYTVhZGQKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9odS9kc2VsZWN0LmNmZy41CkBAIC0wLDAgKzEsMzEgQEAKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlRIIGRzZWxlY3QuY2ZnIDUgMjAxMVwtMDdcLTAzICJEZWJpYW4gUHJvamVjdCIgImRwa2cga+lzemxldCIKKy5TSCBOyVYKK2RzZWxlY3QuY2ZnIFwtIGRzZWxlY3Qga29uZmlndXLhY2nzcyBm4WpsCisuCisuU0ggTEXNUsFTCitUaGlzIGZpbGUgY29udGFpbnMgZGVmYXVsdCBvcHRpb25zIGZvciBkc2VsZWN0LiBFYWNoIGxpbmUgY29udGFpbnMgYSBzaW5nbGUKK29wdGlvbiB3aGljaCBpcyBleGFjdGx5IHRoZSBzYW1lIGFzIGEgbm9ybWFsIGNvbW1hbmQgbGluZSBvcHRpb24gZm9yIGRzZWxlY3QKK2V4Y2VwdCBmb3IgdGhlIGxlYWRpbmcgZGFzaGVzIHdoaWNoIGFyZSBub3QgdXNlZCBoZXJlLiBRdW90ZXMgc3Vycm91bmRpbmcKK29wdGlvbiB2YWx1ZXMgYXJlIHN0cmlwcGVkLiBDb21tZW50cyBhcmUgYWxsb3dlZCBieSBzdGFydGluZyBhIGxpbmUgd2l0aCBhCitoYXNoIHNpZ24gKCJcZkIjXGZQIikuCisuCisuU0ggRsFKTE9LCitcZkkvZXRjL2Rwa2cvZHNlbGVjdC5jZmcuZC9bMFwtOWFcLXpBXC1aX1wtXSpcZlAKKy5icgorXGZJL2V0Yy9kcGtnL2RzZWxlY3QuY2ZnXGZQCisuYnIKK1xmSX4vLmRzZWxlY3QuY2ZnXGZQCisuCisuU0ggU1pFUlrVCitM4XNkIGEgXGZJL3Vzci9zaGFyZS9kb2MvZHBrZy9USEFOS1NcZlAgZuFqbHQsIG1lbHliZW4gYSBcZkJkc2VsZWN0XGZQIGvpc3rtdOlz6XQKK3NlZ+109SBzemVt6Wx5ZWsgbGlzdOFqYSB0YWzhbGhhdPMuCisuCisuU0ggIkzBU0QgTclHIgorXGZCZHNlbGVjdFxmUCgxKS4KKy5QCitGb3JkOiBTWkVSVsFDIEF0dGlsYQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vamEvZGViLW9sZC41IGIvZHBrZy0xLjE2LjEuMS9tYW4vamEvZGViLW9sZC41Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmE2Y2QzMmQKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9qYS9kZWItb2xkLjUKQEAgLTAsMCArMSw0OCBAQAorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlwiCisuXCIgVGhpcyBmaWxlIHdhcyBnZW5lcmF0ZWQgd2l0aCBwbzRhLiBUcmFuc2xhdGUgdGhlIHNvdXJjZSBmaWxlLgorLlwiCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuVEggZGViXC1vbGQgNSAyMDExXC0wOFwtMTQgIkRlYmlhbiBQcm9qZWN0IiBEZWJpYW4KKy5TSCBOQU1FCitkZWJcLW9sZCBcLSBEZWJpYW4gpdClpKXKpeql0aXDpbGhvKW4tey3wbywpdWlqaG8pd6lw6XICisuCisuU0ggvfG8sAorXGZJZmlsZW5hbWVcZlBcZkIuZGViXGZQCisuCisuU0ggwOLMwAorXCZcZkIuZGViXGZQIKXVpamhvKXepcOlyKTPIERlYmlhbiCl0KWkpcql6qXRpcOlsaG8pbikzqXVpaGlpKXrt8G8sKTHpKKk66GjpLOkzqXepcul5aWipeukx6TPoaJEZWJpYW4gMC45MyCwysGwpMu7yM3RpLWk7KTGpKSkvworXGZCtey3wbywXGZQIKTLpMSkpKTGta290qS5pOuho7+3t8G8sKTOvty62aTLpMSkpKTGpM8gXGZCZGViXGZQKDUpIKTyu7K+yKS1pOykv6SkoaMKKy4KKy5TSCCl1aWpobyl3qXDpcgKKzIgudSkziBBU0NJSSClxqWtpbmlyKTLpOik66XVpamhvKXepcOlyL7wyvOkrKSipOqhoqS9pOykyyAyIKTEpM4gZ3ppcCCwtb3MpLWk7KS/IHVzdGFyIKXVpaGlpKXrpKzCs6SvoaMKKy5QUAorMSC51MzcpM8gOCC35aTLpL2k7aSopL+l1aWpobyl3qXDpcil0KG8pbil56XzyNa55qTHpKKk6qGitey3wbywpaKhvKWrpaSl1qTPpLmk2aTGIFxmQjAuOTM5MDAwXGZQIKTHpKKk66GjCisuUFAKKzIgudTM3KTPpNKkyKTEzNykziBnemlwILC1vcwgdGFyIKXVpaGlpKXrpM7C56StpLWk8s2/pKik6ygwIKSrpOm7z6TepOmkyqSkKSC9vb/Kv/Skx6SipOuhoworLlBQCiukvaTspL6k7KTOudSkzr2qpO+k6qTPsv651Mq4u/qk0qTIpMSkx6SipOuhoworLlBQCisxIMjWzNykziB0YXIgpdWloaWkpeukz6GiwKm45r7wyvOk8sq/yril1aWhpaSl67eypMikt6TGtN6k4KGjXGZCY29udHJvbFxmUCCl1aWhpaSl66TPyay/3KTHpKKk6qGiw+a/tKTIpMqk68CpuOa+8MrzpPK03qTgoaMKKy5QUAoryPO+76TLuMWkpKWiobylq6Wkpdakx6TPoaIgY29udHJvbCB0YXIgpdWloaWkpevD5qTOpdWloaWkpeukrCBcZkJERUJJQU5cZlAgpbWl1qXHpaOl7KWvpcil6qTLpKKk66SzpMik4qSipOuho6SzpM6+7LnnoaIKK2NvbnRyb2wgdGFyIKXVpaGlpKXrpMuk4iBcZkJERUJJQU5cZlAgpbWl1qXHpaOl7KWvpcil6qSswri636S3oaIgY29udHJvbCB0YXIKK6XVpaGlpKXrpM+kvaTOpcelo6Xspa+lyKXqxuKky6TOpN+l1aWhpaSl66Tyyt3NraS5pOuhoyBjb250cm9sIHRhciCl1aWhpaSl66TPoaIgYFxmQi5cZlAnLAorpMSk3qTqpaul7KXzpcilx6Wjpeylr6XIpeqky6XVpaGlpKXrpPK03qTgpLOkyKTipKKk66GjCisuUFAKKzIgyNbM3KTOIGd6aXAgsLW9zCB0YXIKK6XVpaGlpKXrpM+l1aWhpaSl66W3pbmlxqXgpaKhvKWrpaSl1qTHpKKk6qGipaSl86W5pcihvKXrpLWk7KTrpbeluaXGpeCkzqXrobylyKXHpaOl7KWvpcil6qSrpOmkzsHqwtCl0aW5zL6k8rTepPOkx6SkpOuho6XRpbnMvqTOwOjGrKTLpbml6aXDpbel5SgvKaTPpMqkpKGjCisuCisuU0ggtNjPorngzNwKK1xmQmRlYlxmUCg1KSwgXGZCZHBrZ1wtZGViXGZQKDEpLCBcZkJkZWJcLWNvbnRyb2xcZlAoNSkuCisuU0ggy93M9bzUCiu02LjNILmssOwgPHNla2lkb0BtYm94Lmt5b3RvLWluZXQub3IuanA+LgorxunDqyCxycW4IDxuYWJlQGRlYmlhbi5vci5qcD4uCivB0t+3IMu+IDxuYWJldGFyb0BkZWJpYW4ub3IuanA+LgorwNDA7svTIDxpc2hpa2F3YUBsaW51eC5vci5qcD4uCiuxrbv0yrjJ0iA8dWthaUBkZWJpYW4ub3IuanA+LgortO7ApbnAIDxraXNlQGZ1eXVuZWtvLmpwPi4KK8PmzO7J8M26IDxuYWthbm9AYXBtLnNlaWtlaS5hYy5qcD4uCiu07sClucAgPGtpc2VAZnV5dW5la28uanA+LgorLlNIIMvdzPW5u8C1CitEZWJpYW4gSlAgRG9jdW1lbnRhdGlvbiBNTCA8ZGViaWFuLWRvY0BkZWJpYW4ub3IuanA+LgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vamEvZHNlbGVjdC4xIGIvZHBrZy0xLjE2LjEuMS9tYW4vamEvZHNlbGVjdC4xCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjJhZjVkYTcKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9qYS9kc2VsZWN0LjEKQEAgLTAsMCArMSwzNTAgQEAKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlRIIGRzZWxlY3QgMSAyMDExXC0wOFwtMTQgIkRlYmlhbiBQcm9qZWN0IiBEZWJpYW4KKy5TSCBOQU1FCitkc2VsZWN0IFwtIERlYmlhbiCl0aXDpbGhvKW4tMnN/aXVpe2l86XIpail86XJCisuCisuU0ggvfG8sAorXGZCZHNlbGVjdFxmUCBbXGZJb3B0aW9uXGZQLi4uXSBbXGZJYWN0aW9uXGZQXQorLgorLlNIIMDizMAKK1xmQmRzZWxlY3RcZlAgpM8gRGViaWFuIKW3pbmlxqXgpM6horznzdekyqXRpcOlsaG8pbi0yc39zdGl5qG8pbalpKXzpb+hvKXVpaehvKW5pM6w7KTEpMekoqTroaOlt6W5pcal4LTJzf281KTPoaJcZkJkc2VsZWN0XGZQIKTOpeGlpKXzpeGly6Xlobykx7DKsrykzsHguu6k8rnUpKik66GjCisgXC0gzfjN0bLEx72l0aXDpbGhvKW4pM6l0KG8pbil56XzpeqluaXIpM65ub+3oaMKKyBcLSClpKXzpbmlyKG8peu60aTfoabN+M3RssTHvaXRpcOlsaG8pbikzr71trekzruyvsihoworIFwtIMLlwtil0aXDpbGhvKW4pM7BqsLytdqk07DNwri02Le4tMnN/aGjCisgXC0gv7e1rKXRpcOlsaG8pbikzqWkpfOluaXIobyl66Tkv7el0KG8pbil56XzpNikzrm5v7ehoworLlBQCitcZkJkc2VsZWN0XGZQIKTPoaJcZkJkcGtnXGZQKDEpICiyvLDMwdggRGViaWFuIKXRpcOlsaG8pbi0yc39pcShvKXrKQorpM6l1aXtpfOlyKWopfOlyaTIpLekxsawuu6kuaTroaOl0aXDpbGhvKW4pM6wzcK4oaa2pbnnpM6y8rfopPK51KTKpKik66GiwbSy6MzMpdGlw6WxobyluMGqwvKl3qXNobyluKXjpMekoqTrpLOkyKSsxsPEp6THpKKk66GjtMnN/bzUuKK4wqTHta/GsKS5pOukyKGipdGlw6WxobyluKTOpaSl86W5pcihvKXroaK5ub+3oaK67738pPK51KSmpLOkyKSspMekraTroaOk3qS/pdGlw6WxobyluKXqpd2luKXIpeqk6KTqoaLN+M3RssTHvaXRpcOlsaG8pbikzqXQobyluKXnpfO+8MrzpOShoqWkpfOluaXIobyl67LEx72l0aXDpbGhvKW4pM686MbApLmk66S/pOGkzqGizc2huaTKpaKlr6W7pbnK/bywpPLA38TqpMekraTroaO7yM3RpLmk66Wipa+lu6W5yv28sKTLpOikw6TGoaKlpKXzpb+hvKXNpcOlyL7lpM64+LOrpbWhvKXQoaKl7aG8paul66W1obyl0KGiQ0RcLVJPTQorpPKl6qXdpbilyKXqpMukx6StpOuho7/kvqmkuaTrpaKlr6W7pbnK/bywpM+holxmQmFwdFxmUCCl0aXDpbGhvKW4pMfE87ahpLmk6yBcZklhcHRcZlAgpMekoqTroaMKKy5QUAorTm9ybWFsbHkgXGZCZHNlbGVjdFxmUCBpcyBpbnZva2VkIHdpdGhvdXQgcGFyYW1ldGVycy4gQW4gaW50ZXJhY3RpdmUgbWVudSBpcworcHJlc2VudGVkLCBvZmZlcmluZyB0aGUgdXNlciBhIGxpc3Qgb2YgYWN0aW9ucy4gSWYgYW4gYWN0aW9uIGlzIGdpdmVuIGFzCithcmd1bWVudCwgdGhlbiB0aGF0IGFjdGlvbiBpcyBzdGFydGVkIGltbWVkaWF0ZWx5LiBTZXZlcmFsIGNvbW1hbmQgbGluZQorcGFyYW1ldGVycyBhcmUgc3RpbGwgYXZhaWxhYmxlIHRvIG1vZGlmeSB0aGUgcnVubmluZyBiZWhhdmlvdXIgb2YgXGZCZHNlbGVjdFxmUAorb3Igc2hvdyBhZGRpdGlvbmFsIGluZm9ybWF0aW9uIGFib3V0IHRoZSBwcm9ncmFtLgorLgorLlNIIKWqpdelt6XnpfMKK0FsbCBvcHRpb25zIGNhbiBiZSBzcGVjaWZpZWQgYm90aCBvbiB0aGUgY29tbWFuZCBsaW5lIGFuZCBpbiB0aGUgXGZCZHNlbGVjdFxmUAorY29uZmlndXJhdGlvbiBmaWxlIFxmSS9ldGMvZHBrZy9kc2VsZWN0LmNmZ1xmUCBvciB0aGUgZmlsZXMgb24gdGhlCitjb25maWd1cmF0aW9uIGRpcmVjdG9yeSBcZkkvZXRjL2Rwa2cvZHNlbGVjdC5jZmcuZC9cZlAuIEVhY2ggbGluZSBpbiB0aGUKK2NvbmZpZ3VyYXRpb24gZmlsZSBpcyBlaXRoZXIgYW4gb3B0aW9uIChleGFjdGx5IHRoZSBzYW1lIGFzIHRoZSBjb21tYW5kIGxpbmUKK29wdGlvbiBidXQgd2l0aG91dCBsZWFkaW5nIGRhc2hlcykgb3IgYSBjb21tZW50IChpZiBpdCBzdGFydHMgd2l0aCBhIFxmQiNcZlApLgorLmJyCisuVFAgCitcZkJcLVwtYWRtaW5kaXJcZlBcZkkgZGlyZWN0b3J5XGZQCitkcGtnIKSsu8jN0aS5pOsgYHN0YXR1cycgpdWloaWkpeuk5CBgYXZhaWxhYmxlJyCl1aWhpaSl66TKpMmk8sPWpK+lx6Wjpeylr6XIpeqk8srRubmkuaTroaOlx6XVpaml66XIpM8KK1xmSS92YXIvbGliL2Rwa2dcZlAgpMehosTMvu/K0bm5pLmk68mszdekz6TKpKShoworLlRQIAorXGZCXC1cLWRlYnVnXGZQXGZJIGZpbGUgXGZQfFxmSSBcZlBcZkJcLURcZlBcZklmaWxlXGZQCitUdXJuIG9uIGRlYnVnZ2luZy4gRGVidWdnaW5nIGluZm9ybWF0aW9uIGlzIHNlbnQgdG8gXGZJZmlsZVxmUC4KKy5UUCAKK1xmQlwtXC1leHBlcnRcZlAKK6Wopa2luaXRobylyKXiobylyaTyza24+qTLpLmk66GjpMSk3qTqoaKkpqTrpLWkpKXYpeul16Tyyb28qKS3pMqkpKGjCisuVFAgCitcZkJcLVwtY29sb3VyXGZQfFxmQlwtXC1jb2xvclxmUCBcZklzY3JlZW5wYXJ0OlxmUFtcZklmb3JlZ3JvdW5kXGZQXSxbXGZJYmFja2dyb3VuZFxmUF1bXGZJOmF0dHJcZlBbXGZJK2F0dHIrLi5cZlBdXQoryb28qL+npPLA38TqpLmk66Gjpcelo6W5pdel7KWkpKylq6XpobzJvbyopPKltaXdobylyKS3pMakpKTrvuy556TLza24+qTHpKKk66GjpLOkzqWqpdelt6XnpfOkz6GiyqO/9LLzu9jE6qTHpK2k6yikvaS3pMYgXGZJZHNlbGVjdC5jZmdcZlAKK6THsOzI1rvIzdGktaTspMakpKTrKaGju9jE6qS0pMiky6GisujMzKTOsOzJ9KTOv6copOTCvqTOwrDArSmk8srRubmkuaTroaOy6MzMICi+5aSrpOmyvKTepMcpIKTOyfSwzKTPvKGkzqTIpKqk6joKKy5SUworLlRQIAorXGZCdGl0bGVcZlAKK7LozMylv6Wkpcil6worLlRQIAorXGZCbGlzdGhlYWRcZlAKK6XRpcOlsaG8pbil6qW5pcikzr7lpM6l2KXDpcCl6aWkpfMKKy5UUCAKK1xmQmxpc3RcZlAKK6XRpcOlsaG8pbil6qW5pcikzqW5pa+l7aG8pevOzrDoICil2KXrpdek4sm9vKikuaTrKQorLlRQIAorXGZCbGlzdHNlbFxmUAorpeqluaXIxuKkzsGqwvK51AorLlRQIAorXGZCcGtnc3RhdGVcZlAKK6XRpcOlsaG8pbil6qW5pcjD5qGipdGlw6WxobyluKTOuL263771trfJvbyoyfQKKy5UUCAKK1xmQnBrZ3N0YXRlc2VsXGZQCiul0aXDpbGhvKW4peqluaXIw+ahosGqwvKkt6S/pdGlw6WxobyluKTOuL263771trfJvbyoyfQKKy5UUCAKK1xmQmluZm9oZWFkXGZQCivBqsLyw+al0aXDpbGhvKW4pM6+9ba3yb28qMn0pM6l2KXDpcC51AorLlRQIAorXGZCaW5mb2Rlc2NcZlAKK6XRpcOlsaG8pbikzsO7pKTA4szAyrgKKy5UUCAKK1xmQmluZm9cZlAKK6XRpcOlsaG8pbikzsDizMCkyqTJpM6l0aXDpbGhvKW4vvDK88m9vKjJ9AorLlRQIAorXGZCaW5mb2Zvb3RcZlAKK6XRpcOlsaG8pbjBqsLyu/6kzrLozMy6x7K8udQKKy5UUCAKK1xmQnF1ZXJ5XGZQCivN17XhudTJvbyoyfQKKy5UUCAKK1xmQmhlbHBzY3JlZW5cZlAKK6XYpeul17LozMykzr+nCisuUkUKKy5QCiuy6MzMpM7J9LDMpM645aTLoaKls6XtpfOkyL+nwN/E6qTyta290qS5pOuho6WzpfOl0aWkpeu7/qTOv6ek8sy1u+ukt6TGoaLBsLfKv6ehosfYt8q/p6SipOukpKTPzr7K/aTyu9jE6qS5pOuks6TIpKykx6StpOuho8m4veAgY3Vyc2VzCiu/p8y+vs6k8rvIzdGkuaTroaMKKy5QCivHpLDVpMehor+nwN/E6qTOuOWky8rMpM6ls6XtpfOkx6GiwrDAraTywN/E6qTHpK2k66GjpLOk7KTPpdel6aW5KCIrIinKuLv6pMuk6KTDpMbKrM6lpLWk7KS/oaLKo7/0pM7CsMCtpM6l6qW5pcikx6SipOuho834zdGyxMe9pMrCsMCtpPKwyrK8zvO186S5pOsopLmk2aTGpM7CsMCtpKykuaTZpMakzsO8y/akx82tuPqkyKTPuMKk6aTKpKQpOgorbm9ybWFsLCBzdGFuZG91dCwgdW5kZXJsaW5lLCByZXZlcnNlLCBibGluaywgYnJpZ2h0LCBkaW0sIGJvbGQKKy5UUCAKK1xmQlwtXC1oZWxwXGZQCiu0ysOxpMql2KXrpdek8sm9vKikt6GiwLW+772qzrukuaTroaMKKy5UUCAKK1xmQlwtXC12ZXJzaW9uXGZQCitQcmludCB2ZXJzaW9uIGluZm9ybWF0aW9uIGFuZCBleGl0IHN1Y2Nlc3NmdWxseS4KKy4KKy5TSCCloqWvpbel56XzCitXaGVuIFxmQmRzZWxlY3RcZlAgaXMgc3RhcnRlZCBpdCBjYW4gcGVyZm9ybSB0aGUgZm9sbG93aW5nIGFjdGlvbnMsIGVpdGhlcgorZGlyZWN0bHkgaWYgaXQgd2FzIHNwZWNpZmllZCBvbiB0aGUgY29tbWFuZCBsaW5lIG9yIGJ5IHByb21wdGluZyB0aGUgdXNlcgord2l0aCBhIG1lbnUgb2YgYXZhaWxhYmxlIGFjdGlvbnMgaWYgcnVubmluZyBpbnRlcmFjdGl2ZWx5OgorLlNTIGFjY2VzcworpdGlw6WxobyluKXqpd2luKXIpeqky6Wipa+lu6W5pLmk66S/pOGkzqGipaKlr6W7pbnK/bywpPLBqsLyoabA38TqpLmk66GjCisuc3AKK0J5IGRlZmF1bHQsIFxmQmRzZWxlY3RcZlAgcHJvdmlkZXMgc2V2ZXJhbCBtZXRob2RzIHN1Y2ggYXMgXGZJY2Ryb21cZlAsCitcZkltdWx0aV9jZFxmUCwgXGZJbmZzXGZQLCBcZkltdWx0aV9uZnNcZlAsIFxmSWhhcmRkaXNrXGZQLCBcZkltb3VudGVkXGZQLCBcZkltdWx0aV9tb3VudFxmUCwKK1xmSWZsb3BweVxmUCBvciBcZklmdHBcZlAsIGJ1dCBvdGhlciBwYWNrYWdlcyBtYXkgcHJvdmlkZSBhZGRpdGlvbmFsIG1ldGhvZHMsCitlZy4gdGhlIFxmSWFwdFxmUCBhY2Nlc3MgbWV0aG9kIHByb3ZpZGVkIGJ5IHRoZSBcZkJhcHRcZlAgcGFja2FnZS4KKy5zcAorXGZJYXB0XGZQIKWipa+lu6W5yv28sKTOu8jN0aTyoaK2r6Svv+S+qaS5pOuhoworLnNwCisuU1MgdXBkYXRlCivN+M3RssTHvaXRpcOlsaG8pbilx6G8pb+l2aG8pbmk8qXqpdWl7KXDpbel5aS5pOuhoworLnNwCivN+M3RssTHvaXRpcOlsaG8pbikzqXQobyluKXnpfOl6qW5pcik8qGiuL2638DfxOqkt6TGpKSk66Wipa+lu6W5yv28sKTHoaKl0aXDpbGhvKW4peql3aW4pcil6qSrpOm86MbApLehomRwa2cKK6XHobylv6XZobyluaTyubm/t6S5pOuho6XRpcOlsaG8pbil6qW5pcikz6GisOzIzMWqpMukzyBcZkJQYWNrYWdlc1xmUCwgXGZCUGFja2FnZXMuZ3pcZlAKK6TIpKSkpsy+wbCkx6Gipeql3aW4pcil6qTopOrE87ahpLWk7KTGpKSk66Gjpeql3aW4pcil6rTJzf281KTPoaJcZkJkcGtnXC1zY2FucGFja2FnZXNcZlAoMSkKK6TIpKSkpqXXpe2lsKXppeCk8rvIzdGkt6TGoaKks6TOpdWloaWkpeuk8sC4wK6kuaTrpLOkyKSspMekraTroaMKKy5zcAordXBkYXRlIKWipa+lt6XnpfOkzr7cutmkz6GipaKlr6W7pbnK/bywpM68wsH1pMuwzcK4pLmk66GjxMy+76GipLOkzqXXpe2lu6W5pM/Dsb3jpMehoqXmobyltqTOxv7Oz6TyyazN16TIpLekyqSkoaMKKy5zcAorLlNTIHNlbGVjdAorpdGlw6WxobyluKTOwarC8qTksM3CuLTYt7ikzsm9vKihprTJzf2k8rnUpKahoworLnNwCiuks6TspKwgXGZCZHNlbGVjdFxmUAorpM6l4aWkpfO1oce9pMekoqTroaPBqsLypLekv7LozMykx6GiwbTN+M3RssTHvaGmpaSl86W5pcihvKXrutGk36XRpcOlsaG8pbikzqXqpbmlyKTyxLS6uqTHpK2k66GjtMnN/bzUuKK4wqTHvMK51KS5pOukyKGiwtDPw8WqpMuhoqXRpcOlsaG8pbjBqsLyvvW2t6TyytG5uaS5pOuks6TIpOKkx6StpOuhoworXGZCZHNlbGVjdFxmUCCkz6GiwarC8r71trekzsrRubmky7TYz6Kkt6TGta+ks6Trwr6kzrDNwrihpralueel0aXDpbGhvKW4pMukxKSkpMak4saxzc2ky8TJwNekuaTroaMKKy5zcAortqW556TksM3CuKTOvLrH1KTyuKG90KS5pOukyKGisM3CuLTYt7iy8rfopbWl1rLozMyk8qXmobyltqTLxPO8qKS5pOuho6SzpM6y6MzMpMekz6GitqW556XRpcOlsaG8pbik5LDNwril0aXDpbGhvKW4pPKhoqS9pM7N/c2zpMikyKTipMvJvbyopLmk66GjpeahvKW2pM+holxmQmRzZWxlY3RcZlAKK6SsxPOwxqS3pL/K0bm5sMak8sWszdGkt6TGpOKk6KSkpLehoqS9pM6wxqTyvuW98aStpLekxqTipOikpKGjpN6kv6GiytG5uaTypLmk2aTGuLWky8zhpLekxqTipOikpKGjsMq+5aTyoaKwzcK4oaa2pbnnpKyy8rfopLWk7KTrpN6kx6Git6uk6srWpLmhoworLnNwCivC0M/DxaqkyqXRpcOlsaG8pbjBqsLytMnN/bLozMykzr7cutmkyrvIpKTK/aTyuOW90qS5pOuhoworLnNwCisuU1MgaW5zdGFsbAorwarC8qS3pL+l0aXDpbGhvKW4pPKlpKXzpbmlyKG8peukuaTroaMKKy5zcAorpaSl86W5pcihvKXroaa5ub+3pLmk66XRpcOlsaG8pbik8qGiwN/E6qS3pL+loqWvpbulucr9vLCkx8WswNqkyqXqpd2luKXIpeqk6KTqvOjGwKS3oaIgXGZCZHBrZ1xmUAorpPLN0aSkpMalpKXzpbmlyKG8peuk8rnUpKaho6Wipa+lu6W5yv28sKTOvMLB9aTLsM3CuKS5pOukrKGipaSl86W5pcihvKXrwbCky8G0pdGlw6WxobyluKTyvOjGwKGipOKkt6SvpM/JrM3XpMq7/qTLvOjGwKS5pOuho6Wipa+lu6W5yv28sKTLpOik6qGiuu+9/KXeobylr6TypMSksaS/pdGlw6WxobyluKTOuu+9/KTyudSkpr7sueek4qSipOuhoworLnNwCiulpKXzpbmlyKG8pevD5qTLpail6aG8pKzIr8C4pLekv77sueehoqTipKaw7MXZIGluc3RhbGwKK6TyudSkpqTopKbCpaS1pOyk66GjpL2kzr7sueekx6TioaKk26TIpPOkyczkwuqkrMivwLikt6TKpKSkq6GisvK36LrRpN+kyKTKpMOkxqSkpOuho8zkwuqkrLvEpMOkv6TepN6kwKTDpL+k6qGipaSl86W5pcihvKXrpKyw277vvarOu6S5pOu+7LnnoaK4trD4oaa79r7wpPLEtKTZpMahokRlYmlhbgorpdClsMTJwNelt6W5pcal4KTYpdClsMrzufCk8qS3pMakpKS/pMCkraS/pKSho6XQpbDK87nwpM7K/cuhpM+homh0dHA6Ly9idWdzLmRlYmlhbi5vcmcvIKTkoaKlpKXzpbmlyKG8peuktaTspMakpKTspNChogorXGZCYnVnXGZQKDEpIKTkIFxmQnJlcG9ydGJ1Z1xmUCgxKSCkzsq4vfGk8ruyvsikzqSzpMihoworLnNwCitpbnN0YWxsCiuloqWvpbel56XzpM6+3LrZpM+loqWvpbulucr9vLCkzrzCwfWky7DNwrikuaTroaOl0aXDpbGhvKW4pM6lpKXzpbmlyKG8peuhosDfxOqhorrvvfzD5qTLoaKl5qG8pbaky8PtsNWk8sKlpLekv6TqoaLG/s7PpPLN17XhpLmk67LEx73AraTipKKk66GjpLOk7KTPpdGlw6WxobyluLTJzf281KW5pa+l6qXXpciky7DNwrikuaTroaOl0aXDpbGhvKW4pMuk6KTDpMakz6GiXGZCZGViY29uZlxmUCgxKQorpemlpKXWpeml6qTyzdGkpKTGpKqk6qGipOik6r3AxvCkx7yrxrCyvaS1pOykv6WkpfOluaXIobyl66W7pcOlyKWipcOl16SsssTHvaTHpKKk66GjCisuc3AKKy5TUyBjb25maWcKK6S5pMeky6WkpfOluaXIobyl67rRpN+kwKSsoaLA38TqpKy0sM67pLekxqSkpMqkpKXRpcOlsaG8pbikzsDfxOqk8rnUpKahoworLnNwCisuU1MgcmVtb3ZlCiu67738pd6hvKWvpPKkxKSxpL+lpKXzpbmlyKG8peu60aTfpdGlw6WxobyluKTOoaK67738oaa0sMG0uu+9/KTyudSkpqGjCisuc3AKKy5TUyBxdWl0CitcZkJkc2VsZWN0XGZQIKTyvarOu6S5pOuhoworLnNwCiulqKXpobyls6G8pckgMCAowK64+SkgpMel16XtpbCl6aXgpPK9qs67pLmk66GjCisuc3AKKy4KKy5TSCCl0aXDpbGhvKW4warC8rTJzf0KKy5zcAorLlNTIMb+zOcKKy5zcAorwufOzKTOweq437DNwri02Le4pPK7/aTEpdGlw6WxobyluLeypPIgXGZCZHNlbGVjdFxmUCCkx7TJzf2kuaTryqO7qKS1pMuhorTJzf281KTPxL7MzKS5pOuhoyBEZWJpYW4KK6XRpcOlsaG8pbi0yc39pbeluaXGpeCkzrO1x7Ck5KGipL2kzsr9y6Gky7S3pOykxqSkpMqkpKXmobyltqTLpMikw6TGpM+hoqSzpOykz7C1xd3FqqTHpLmk6aSipOuhoyBcZkJkc2VsZWN0XGZQCiukz6GipdGlw6WxobyluLTJzf2kyLTJzf267rbIpM7J6cO0tMvPwqTyzNy72KS3pMakpKTroaOkt6SrpLehosOxpMvJ6cO0tMvPwqTLzPLOqaTEpMCksaTHoaK0yc39vNSkyKS3pMakzrW7vdGk5MPOvLGkzsLlzdGky6TPpMqk6aTKpKSho6XmobyltqTLpM+hokRlYmlhbgorpdGlw6WxobyluKXzpbClt6W5pcal4KTLpMSkpKTGpM608MHDs7XHsKTLwLrEzKS5pOuks6TIpKzN17XhpLWk7KTroaO1v8zkpKykoqTspNCholxmQmRwa2dcZlAoMSkgpM6l3qXLpeWloqXrpOSholxmQmRlYmlhblwtcG9saWN5XGZQCiul0aXDpbGhvKW4pMu03qTepOykxqSkpOsgRGViaWFuIKXdpeqlt6G8pd6ly6XlpaKl66Tyu7K+yKS3pMak26S3pKShoworLnNwCitcZkJkc2VsZWN0XGZQCiukrKGipailraW5pdGhvKXIpeKhvKXJpOTEvsDcpeKhvKXJpMe1r8awpLWk7KTKpKS+7LnnoaKl4aXLpeWhvKSrpOmloqWvpbel56XzpPLBqqTWut2ky6Givemk4aTLpdil66XXsujMzKSsyb28qKS1pOyk66Gjpaql86XppaSl86XYpeul17LozMykrKXdpcOl16WipcOl16S3pL+63aTLpM+hoqS9pLOky7yopLWk7KTrxuLNxqTypLmk2aTGuKHGpKS5pOuk6KSmoaJcZkm2r6SvXGZQpKq+qaThpLmk66Gjpaql86XppaSl86XYpeul17LozMykz6GipKSkxKTHpOIKK1wmXGZCJ6GpJ1xmUCClraG8pMfJvbyopMekraTroaMKKy5zcAorLlNTILLozMyl7KWkpaKlpqXICisuc3AKK8GqwvKy6MzMpM+hoqXHpdWlqaXrpcikx77lsrwgMgoryqyz5KS1pOykxqSkpOuho77lyL7KrKTPoaKl0aXDpbGhvKW4peqluaXIpPLJvbyopLekxqSkpOuho6WrobylvaXrpdChvKTHuMShuaTOpdGlw6WxobyluKTywarC8qS3pL+k6qGipbCl66G8pdel2KXDpcCk8sGqwvIopMekraTspNAppLekxqGipdGlw6WxobyluKWwpeuhvKXXpPLBqsLypLekv6TqpMekraTroaOy6MzMpM6yvMi+yqykz6GisujMzKTOvuXIvsqspMe4vbrfwarC8qS3pMakpKTrpdGlw6WxobyluKTOvty62aSsyb28qKS1pOyk66Gjyb28qKS1pOyk677cutmkzqW/paSl16TPoaLK0bm5pMekraTroaMKKy5zcAorIFxmQidJJ1xmUCClraG8pPKyoaS5pLSkyKTLoaKl0aXDpbGhvKW4peqluaXIpM7BtLLozMzJvbyooaKl0aXDpbGhvKW4vty62aTOs8jC56GisujMzKTOttHF+cqss+Sk8sDapOrC2KSopOuhoworLnNwCisuU1MgpdGlw6WxobyluL7cutnJvbyoCisuc3AKK6XHpdWlqaXrpcikzqXRpcOlsaG8pbi+3LrZyb28qMn0pM+hoqXRpcOlsaG8pbi+9ba3peqluaXIw+akx7i9ut/BqsLypLWk7KTGpKSk66XRpcOlsaG8pbikzqGixLmkpKXRpcOlsaG8pbjA4szAyrik8sm9vKikuaTroaO+3LrZpb+lpKXXpM8gXGZCJ2knXGZQIKWtobyk8rKhpLmktKTIpMuwyrK8pKzA2qTqwtik76TroaMKKyBcLSDEuaSkwOLMwMq4CisgXC0gpaSl86W5pcihvKXrutGk36XQobyluKXnpfOkzqWzpfOlyKXtobyl677wyvMKKyBcLSDN+M3RssTHvaXQobyluKXnpfOkzqWzpfOlyKXtobyl677wyvMKKy5zcAorsM3CuLTYt7iy8rfosujMzKTHpM+hosbDxOqkzqXRpcOlsaG8pbikzsyksvK36LDNwrihpraluee02Le4pPKhoqS9pM64trD4pMikyKTipMvJvbyopLmk67LEx73AraSspKKk66GjCisuc3AKKy5TUyCl0aXDpbGhvKW4vvW2t6XqpbmlyAorLnNwCiul4aWkpfPBqsLysujMzKTPoaIgRGViaWFuCiul0aXDpbGhvKW4tMnN/aW3pbmlxqXgpKzDzqTDpMakpKTrwbSl0aXDpbGhvKW4pPLJvbyopLmk66GjpLOk7KTLpM+hoqW3pbmlxqXgpMulpKXzpbmlyKG8peu60aTfpM6l0aXDpbGhvKW4pMihos34zdGyxMe9pdGlw6WxobyluKXHobylv6XZobyluaSsw86kw6TGpKSk66XRpcOlsaG8pbikrLTepN6k7KTroaMKKy5zcAorpeqluaXIpMukz6XRpcOlsaG8pbiktKTIpMuhoqXRpcOlsaG8pbikzr71trehos2lwOjF2aGipbulr6W3peel86GipaSl86W5pcihvKXrutGk36GmzfjN0bLEx72l0KG8pbil56XzoaKl0aXDpbGhvKW4zL6hosO7pKTA4szAyrikrCAxILnUpMfJvbyopLWk7KTroaMKK1wmXGZCJ1YnXGZQIKWtobyk8rKhpLmkyKGipaSl86W5pcihvKXrutGk36XQobyluKXnpfOkyM34zdGyxMe9pdChvKW4peel86TOyb28qKTyIE9OL09GRiCkx6StpOuhoyBcZkIndidcZlAKK6Wtobyk8rKhpLmkyKGipdGlw6WxobyluL71trek8r7cutnJvbyopMi0ys6syb28qKTHwNqk6sLYpKik66GjtMrOrMm9vKikrKXHpdWlqaXrpcikx6SipOuhoworLnNwCiu+9ba3tMrOrMm9vKikz6GisMqyvKTOIDQgpdGhvKXIpMvKrKSrpOykxqSkpOuho6WopemhvKXVpemlsCAoxMy+76Wvpeqloimhori9ut+kzr71trehosGwsvPBqsLyvvW2t6GiuqOy88GqwvK+9ba3pMekoqTroaO7z6ThpM4gMgorpMSkz6XRpcOlsaG8pbikzri9ut+kzr71trek8sm9pLehoqS9pM645aTOIDIgpMSkz6XmobyltqSspbulw6XIpLekv8GqwvK+9ba3pPLJvaS3pMakpKTroaMKKy5zcAorpdGlw6WxobyluL71tre0ys6syb28qMn0pM6ls6G8pcmky6TPsMqyvKTOsNXMo6SspKKk66GjCisgpail6aG8pdWl6aWwOgorICBcZkm29VxmUCAgICAgIKWopemhvKTKpLcKKyAgXGZCUlxmUCAgICAgICC/vLnvpMqlqKXpobwgKM3XusalpKXzpbmlyKG8pespCisgpaSl86W5pcihvKXrvvW2tzoKKyAgXGZJtvVcZlAgICAgICDMpKWkpfOluaXIobyl6worICBcZkIqXGZQICAgICAgIKWkpfOluaXIobyl67rRpN+hoqSrpMTA38TqutGk3worICBcZkJcLVxmUCAgICAgICDMpKWkpfOluaXIobyl66TApKyhosDfxOql1aWhpaSl66Ssu8Skw6TGpKSk6worICBcZkJVXGZQICAgICAgIMW4s6u60aTfpMCkrMDfxOqkrLrRpPOkx6SkpMqkpAorICBcZkJDXGZQICAgICAgIMi+wN/E6r71trcgKKWopemhvMivwLgpCisgIFxmQklcZlAgICAgICAgyL6lpKXzpbmlyKG8peu+9ba3ICilqKXpobzIr8C4KQorILi9ut+kzsGqwvKhps3XteGkt6S/warC8joKKyAgXGZCKlxmUCAgICAgICClpKXzpbmlyKG8peuhprm5v7el3qG8pa8KKyAgXGZCXC1cZlAgICAgICAguu+9/KXeobylryAowN/E6qXVpaGlpKXrpM+7xKS5KQorICBcZkI9XGZQICAgICAgIMrdzrEgKKXRpcOlsaG8pbiky6TKpMuk4r3ozf2k8rnUpO+kyqSkKQorICBcZkJfXGZQICAgICAgILSwwbS67738pd6hvKWvICjA38TqpdWloaWkpeuk4rrvvfykuaTrKQorICBcZkJuXGZQICAgICAgIL+3tayl0aXDpbGhvKW4pMek3qTApd6hvKWvydWksaS1pOykxqSkpMqkpAorLnNwCisuU1MgpauhvKW9peukqqTopNOy6MzMsNzGsAorLnNwCiul0aXDpbGhvKW4warC8qXqpbmlyKTksM3CuKGmtqW557TYt7iy8rfosujMzKTHpM+horDKsrykzqWtobyz5MX2pM6ls6XepfOlyaTHweC67qTHpK2k66GjCisuYnIKKyAgXGZCcCwgVXAsIGtcZlAgICAgICAgICAgIKWrobylvaXrpdChvKTyvuWky7DcxrAKKyAgXGZCbiwgRG93biwgalxmUCAgICAgICAgIKWrobylvaXrpdChvKTysryky7DcxrAKKyAgXGZCUCwgUGd1cCwgQmFja3NwYWNlXGZQIKXqpbmlyKTyIDEgpdqhvKW4vuWky6W5pa+l7aG8pesKKyAgXGZCTiwgUGdkbiwgU3BhY2VcZlAgICAgIKXqpbmlyKTyIDEgpdqhvKW4sryky6W5pa+l7aG8pesKKyAgXGZCXnBcZlAgICAgICAgICAgICAgICAgIKXqpbmlyKTyIDEgudS+5aTLpbmlr6Xtobyl6worICBcZkJeblxmUCAgICAgICAgICAgICAgICAgpeqluaXIpPIgMSC51LK8pMuluaWvpe2hvKXrCisgIFxmQnQsIEhvbWVcZlAgICAgICAgICAgICCl6qW5pcikzsDoxqyky6W4peOl86XXCisgIFxmQmUsIEVuZFxmUCAgICAgICAgICAgICCl6qW5pcikzrrHuOWky6W4peOl86XXCisgIFxmQnVcZlAgICAgICAgICAgICAgICAgICC+8MrzpPIgMSCl2qG8pbi+5aTLpbmlr6Xtobyl6worICBcZkJkXGZQICAgICAgICAgICAgICAgICAgvvDK86TyIDEgpdqhvKW4sryky6W5pa+l7aG8pesKKyAgXGZCXnVcZlAgICAgICAgICAgICAgICAgIL7wyvOk8iAxILnUvuWky6W5pa+l7aG8pesKKyAgXGZCXmRcZlAgICAgICAgICAgICAgICAgIL7wyvOk8iAxILnUsryky6W5pa+l7aG8pesKKyAgXGZCQiwgTGVmdFwtYXJyb3dcZlAgICAgICDJvbyopPIgMS8zILLozMy6uKTLpbmlr6Xtobyl6worICBcZkJGLCBSaWdodFwtYXJyb3dcZlAgICAgIMm9vKik8iAxLzMgsujMzLGmpMuluaWvpe2hvKXrCisgIFxmQl5iXGZQICAgICAgICAgICAgICAgICDJvbyopPIgMSDKuLv6uriky6W5pa+l7aG8pesKKyAgXGZCXmZcZlAgICAgICAgICAgICAgICAgIMm9vKik8iAxIMq4u/qxpqTLpbmlr6Xtobyl6worLnNwCisuU1MguKG696TIysKk2cLYpKgKKy5zcAorpdGlw6WxobyluKXqpbmlyKTPpdGlw6WxobyluMy+pMe4obr3pLmk66SzpMikrKTHpK2k66GjpdGlw6WxobyluKTOpeqluaXIpMekz6GiIFxmQicvJ1xmUAorpPKyoaS3pMakq6TpoaLDsb3jpMq4obr3yri7+s7zpPLG/s7PpLmk66SzpMikx6GipdGlw6WxobyluMy+pM64obr3pKykx6StpOuho6SzpM7KuLv6zvOkz6GiwLW1rMm9uL0gXGZCcmVnZXhcZlAoNykKK6THsvLAz6S1pOyk66GjuKG698q4u/rO86TLwrOksaTGIFxmQicvZCdcZlAgpPKyw6SopOukyKGiwOLMwMq4pKuk6aTiuKG696S5pOuhoyBcZkInL2knXGZQIKTyssOkqKS/vuy556TPoaLC58q4u/q+rsq4u/qkzrboysyk8qS3pMqkpKGjpLOkzgorMiCkxKTOxbq7+qTyIFxmQicvaWQnXGZQIKTOpOikpqTLpMSkyqSypMak4rWtvdKkx6StpOuho7ihuve367LMpMvC0KS3pMahosKzpLGkxiBcZkInbidcZlAgpMqkpKS3IFxmQidcZSdcZlAKK6Wtobyk8rKhpLmkyKGizNzFqqTOpdGlw6WxobyluKSsxsCk6aTspOuk3qTHoaK4obr3pPK3q6Tqytaku6TroaO4obr3pKyl6qW5pcikzrrHuOWk3qTHw6OkuaTrpMihosDoxqyky8zhpOuhoworLnNwCiul6qW5pcikzqW9obylyL3npM+holxmQidvJ1xmUCCkyCBcZkInTydcZlAgpa2hvKTyt6uk6srWpLeyoaS3pMbK0bm5pLmk66GjCiuwyrK8pM4gOSDEzKTqpM6lvaG8pci956Tywaqk2aTroaMKKyCloqXrpdWloaXZpcOlyCAgICAgzfjN0bLEx70gICAgICAgICAgICAgvvW2tworIM2lwOjF2Sulu6Wvpbel56XzICDN+M3RssTHvSvNpcDoxdkgICAgICC+9ba3K82lwOjF2QorIKW7pa+lt6XnpfMrzaXA6MXZICDN+M3RssTHvSulu6Wvpbel56XzICC+9ba3K6W7pa+lt6XnpfMKKy5icgorvuW1raXqpbmlyKTLpM/MwLWtpLekxqSkpMqkpKSsoaK6x7jlpMuloqXrpdWloaXZpcOlyL3npMelvaG8pciktaTspOuhoworLnNwCisuU1MgwarC8qTOytG5uQorLnNwCiukvaTspL6k7KTOpdGlw6WxobyluKTOzde14cGqwvK+9ba3pM+horDKsrykzqWzpd6l86XJpMfK0bm5pMekraTroaMKKyAgXGZCKywgSW5zZXJ0XGZQICAgIKWkpfOluaXIobyl66Gmubm/t6S5pOsKKyAgXGZCPSwgSFxmUCAgICAgICAgILi9ut+kzr71trehpqXQobyluKXnpfOk8srdzrGkuaTrCisgIFxmQjosIEdcZlAgICAgICAgICDK3c6xsvK9/CAoubm/t6TKpKSkt8ykpaSl86W5pcihvKXrpM6k3qTepMikuaTrKQorICBcZkJcLSwgRGVsZXRlXGZQICAgILrvvfykt6TGwN/E6qTPu8SkuQorICBcZkJfXGZQICAgICAgICAgICAguu+9/KS3pMbA38TqpOK+w6S5Cisuc3AKK8rRubnN17XhpM6367LMoaKwzcK4pPLL/sKtpLekyqSrpMOkv6TqtqW556S3pL++7LnnoaIgXGZCZHNlbGVjdFxmUCCkz7DNwri02Le4svK36LLozMyk8sTzvKikuaTroaOks6TspM+45aTbpMnA4szApLmk66GjCisuc3AKK6S1pOmky6GipbCl66G8pdel2KXDpcC+5aTLpauhvKW9peul0KG8pPKw3MawpLekxqGipdGlw6WxobyluMGqwvKkzqWwpeuhvKXXpMuls6XepfOlyaTyxazN0aS5pOuks6TIpKykx6StpOuho6XRpcOlsaG8pbikzsC1s86kyqWwpeuhvKXXsr2krKTHpK2k66SrpM+hori9ut+kzqXqpbmlyKTOpb2hvKXIvefA38TqpMuwzcK4pLmk66GjCisuc3AKK7Dsxdmky8LnzsykzsyksvK36LDNwrihpralueek8sivwLiktaS7pOukv6ThoaLD5r/IpKzC56StpKSlsKXrobyl16TyytG5uaS5pOu+7LnnpM+hor29yqzD7bDVpLmk66TZpK2kx6SipOuhoyAxCiukxKTOsM3CuLTYt7iy8rfosujMzKTLoaKkuaTZpMbJvbyopLWk7KTrpLOkyKTIpMqk66S/pOGhoqSzpOyk8rLyt+ikuaTrpM6kz8jzvu+ky8bxpLekpKGjvMK63aTLpM+hoqWwpeuhvKXXpM7K0bm5pKzNrc3RpMqkzqTPoaLK3c6xpOTK3c6xsvK9/KTOu/6ksKTppKSkx6SipOuhoworLnNwCisuU1MgsM3CuKGmtqW557Lyt+gKKy5zcAorwarC8r71trek8srRubmkt6TGzKSy8rfosM3CuKGmtqW556SsyK/AuKS3pL++7LnnoaIgXGZCZHNlbGVjdFxmUCCkz7DNwri02Le4svK36LLozMyk8sm9vKikuaTroaO96aThpMakzr7sueekz6GipL2kzsGwpMul2KXrpdey6MzMpPLJvbyopLmk66GjCisuc3AKK6SzpM6y6MzMpM6+5ci+yqyky6TPoaLMpLLyt+iwzcK4oaa2pbnnpKykoqTrpdGlw6WxobyluKTkoaLN17XhpLWk7KS/ytG5uaTOt+uyzKGipL2kt6TGsM3CuKTysvK36KS5pOukzqTLpaSl86W5pcihvKXrpLmk7KTQpKSkpKXRpcOlsaG8pbihoralueek8rLyt+ikuaTrpM6ky7rvvfykuaTspNCkpKSkpdGlw6WxobyluKTypLmk2aTGyb28qKS5pOuho7K8yL7KrKTLpM+hori9ut/BqsLypLekxqSkpOul0aXDpbGhvKW4pM6wzcK4pOS2pbnnpM64trD4pPKhoqXHpdWlqaXrpcikx8m9vKikuaTroaMKKy5zcAorV2hlbiB0aGUgc3VibGlzdCBvZiBwYWNrYWdlcyBpcyBkaXNwbGF5ZWQgaW5pdGlhbGx5LCBcZkJkc2VsZWN0XGZQIG1heSBoYXZlCithbHJlYWR5IHNldCB0aGUgcmVxdWVzdGVkIHNlbGVjdGlvbiBzdGF0dXMgb2Ygc29tZSBvZiB0aGUgbGlzdGVkIHBhY2thZ2VzLAoraW4gb3JkZXIgdG8gcmVzb2x2ZSB0aGUgZGVwZW5kcyBvciBjb25mbGljdHMgdGhhdCBjYXVzZWQgdGhlIGRlcGVuZGVuY3kKK3Jlc29sdXRpb24gc2NyZWVuIHRvIGJlIGRpc3BsYXllZC4gVXN1YWxseSwgaXQgaXMgYmVzdCB0byBmb2xsb3cgdXAgdGhlCitzdWdnZXN0aW9ucyBtYWRlIGJ5IFxmQmRzZWxlY3RcZlAuCisuc3AKK1wmXGZCJ1InXGZQIKWtobyk8rKhpLmks6TIpMehoqXRpcOlsaG8pbil6qW5pcikzsGqwvK+9ba3pPKhosyksvK36LDNwrihpralueekrLruwK6ktaTspOvBsKTOpOikpqTLoaK4taTLzOGku6TrpMCk7aSmoaNcZkInRCdcZlAKK6Wtobyk8rKhpLmks6TIpMehoryrxrDE87DGpM+l6qW7pcOlyKS1pOyk66SsoaKwzcK4tNi3uLLyt+iy6MzMpKy8qKS3pL/K0bm5pM+hos3XteGkt6S/pOKkzqTIxrHNzaTLsN27/aS1pOyk66Gjuse9qsWqpMsgXGZCJ1UnXGZQCiuk8rKhpLmks6TIpMehoryrxrDE87DGpPKlu6XDpcikuaTrpLOkyKSspMekraTroaMKKy5zcAorLlNTIMGqwvLN17XhpM6zzsTqCisuc3AKK1xmQmVudGVyXGZQIKTysqGkuaTIoaK4vbrfyb28qKS1pOykxqSkpOvBqsLypbulw6XIpMezzsTqpLmk66GjwarC8s3XteGkzrfrssyhosyksvK36LDNwrikrLihvdCktaTspMqksaTspNChoiBcZkJkc2VsZWN0XGZQCiukz7+3pLekpMGqwvKk8sDfxOqkuaTroaOkt6SrpLehoqSkpN6kwMyksvK36LDNwrikrMK4ut+kuaTrvuy556GiIFxmQmRzZWxlY3RcZlAgpM+wzcK4tNi3uLLyt+iy6MzMpPKy/qThpMbJvbyopLmk66GjCisuc3AKK8yksvK36LDNwrihpralueekrMK4ut+kuaTrwarC8r71trekx6GiXGZCZHNlbGVjdFxmUCCkz7POxOqk8ravwKmkuaTrpMukz6GiIFxmQidRJ1xmUAorpa2hvKTysqGkuaGjpLOk7KTPpeahvKW2pKy72MTqpLekv8GqwvKk8sy1vvK376TLpbulw6XIpLmk66GjsOzIzMWqpMuhor7cutmk8sbJpPOkx6SkpMqksaTspNChoqSzpOyk8qS3pMqkpKSzpMihoworLnNwCivIv8LQpMuhosGqwvKk8rzopOq+w6S3pMbBqsLypeqluaXIpPK4taTLzOGkub7sueekz6GiIFxmQidYJ1xmUCClraG8pOQgXGZCZXNjYXBlXGZQCiulraG8pPKyoaS5pLOkyKGjpa2hvKTysr+y86TisqGkuaSzpMikx6GizOTC6qTOpKKk68rRubnN17XhpPK86KTqvsOkt6Giuse45aTLs87E6qS3pL/BqsLypMvM4aS5pLOkyKSspMekraTroaMKKy5zcAorSWYgeW91IG1pc3Rha2VubHkgZXN0YWJsaXNoIHNvbWUgc2V0dGluZ3MgYW5kIHdpc2ggdG8gcmV2ZXJ0IGFsbCB0aGUKK3NlbGVjdGlvbnMgdG8gd2hhdCBpcyBjdXJyZW50bHkgaW5zdGFsbGVkIG9uIHRoZSBzeXN0ZW0sIHByZXNzIHRoZSBcZkInQydcZlAKK2tleS4gIFRoaXMgaXMgc29tZXdoYXQgc2ltaWxhciB0byB1c2luZyB0aGUgdW5ob2xkIGNvbW1hbmQgb24gYWxsIHBhY2thZ2VzLAorYnV0IHByb3ZpZGVzIGEgbW9yZSBvYnZpb3VzIHBhbmljIGJ1dHRvbiBpbiBjYXNlcyB3aGVyZSB0aGUgdXNlciBwcmVzc2VkCitcZkJlbnRlclxmUCBieSBhY2NpZGVudC4KKy5zcAorLgorLlNIILTEtq3K0b/0CisuVFAgCitcZkJIT01FXGZQCitJZiBzZXQsIFxmQmRzZWxlY3RcZlAgd2lsbCB1c2UgaXQgYXMgdGhlIGRpcmVjdG9yeSBmcm9tIHdoaWNoIHRvIHJlYWQgdGhlIHVzZXIKK3NwZWNpZmljIGNvbmZpZ3VyYXRpb24gZmlsZS4KKy4KKy5TSCCl0KWwCitcZkJkc2VsZWN0XGZQIKXRpcOlsaG8pbjBqsLypaSl86W/obyl1aWnobyluaTPoaK/t6S3pKSl5qG8pbak8rquzfCktaS7pOuho8q5pK+kyKSzpO2kx6TPoaK30LizpPLA0aTzpMClq6G8pc2l67OryK+81KTHpLmk6aGipLOk7KTyw7KkpKTGpKSk66GjCisuc3AKK8q4vfGkrMKtpOqkyqSkoaMKKy5zcAorpeGlpKXzpeGly6Xlobyky6XYpeul16Wqpdelt6XnpfOkrKTKpKShoworLnNwCivN+M3RssTHvaXRpcOlsaG8pbikzqXqpbmlyMm9vKik8ri6pOmku6TKpKShoworLnNwCivG4sKipaKlr6W7pbnK/bywpMekz6GipOKkz6TkuL2636TOycq8wbTwveCk8sv+pL+ku6TKpKShoyBhcHQKK6SsxPO2oaS5pOuloqWvpbulucr9vLCk8s34zdGkuaTspNChorL1pOykyqSkpMCksaTHpMqkr6GixuLCoqWipa+lu6W5yv28sKTopOr0o6SrpMu9wMbwpMekoqTroaMKKy4KKy5TSCC02M+iueDM3AorXGZCZHBrZ1xmUCgxKSwgXGZCYXB0XC1nZXRcZlAoOCksIFxmQnNvdXJjZXMubGlzdFxmUCg1KSwgXGZCZGViXGZQKDUpLgorLgorLlNIIMP4vNQKK1xmQmRzZWxlY3RcZlAgd2FzIHdyaXR0ZW4gYnkgSWFuIEphY2tzb24gKGlqYWNrc29uQGdudS5haS5taXQuZWR1KS4gRnVsbCBsaXN0CitvZiBjb250cmlidXRvcnMgbWF5IGJlIGZvdW5kIGluICdkc2VsZWN0IFwtXC12ZXJzaW9uJy4KKy5icgorpLOkzqXepcul5aWipeukzyBKdWhvIFZ1b3JpIDxqYXZ1b3JpQGNjLmhlbHNpbmtpLmZpPiCky6TopMOkxr3xpKuk7KGiIEpvc2lwIFJvZGluLAorSm9vc3Qga29vaWogpKy5ub+3pLekv6GjCisKKy5TSCDL3cz1vNQKK7TYuM0guayw7CA8c2VraWRvQG1ib3gua3lvdG8taW5ldC5vci5qcD4uCivG6cOrILHJxbggPG5hYmVAZGViaWFuLm9yLmpwPi4KK8HS37cgy74gPG5hYmV0YXJvQGRlYmlhbi5vci5qcD4uCivA0MDuy9MgPGlzaGlrYXdhQGxpbnV4Lm9yLmpwPi4KK7Gtu/TKuMnSIDx1a2FpQGRlYmlhbi5vci5qcD4uCiu07sClucAgPGtpc2VAZnV5dW5la28uanA+Lgorw+bM7snwzbogPG5ha2Fub0BhcG0uc2Vpa2VpLmFjLmpwPi4KK7TuwKW5wCA8a2lzZUBmdXl1bmVrby5qcD4uCisuU0ggy93M9bm7wLUKK0RlYmlhbiBKUCBEb2N1bWVudGF0aW9uIE1MIDxkZWJpYW4tZG9jQGRlYmlhbi5vci5qcD4uCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9tYW4uc3RhbXAgYi9kcGtnLTEuMTYuMS4xL21hbi9tYW4uc3RhbXAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTY5ZGUyOQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL21hbi5zdGFtcApkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vcGwvZGViLWV4dHJhLW92ZXJyaWRlLjUgYi9kcGtnLTEuMTYuMS4xL21hbi9wbC9kZWItZXh0cmEtb3ZlcnJpZGUuNQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42YjU2MDI4Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vcGwvZGViLWV4dHJhLW92ZXJyaWRlLjUKQEAgLTAsMCArMSw0NCBAQAorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlwiCisuXCIgVGhpcyBmaWxlIHdhcyBnZW5lcmF0ZWQgd2l0aCBwbzRhLiBUcmFuc2xhdGUgdGhlIHNvdXJjZSBmaWxlLgorLlwiCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuVEggZGViXC1leHRyYVwtb3ZlcnJpZGUgNSAyMDA5XC0wOFwtMTYgIlByb2pla3QgRGViaWFuYSIgInByb2dyYW15IHBvbW9jbmljemUgZHBrZyIKKy5TSCBOQVpXQQorZGViXC1leHRyYVwtb3ZlcnJpZGUgXC0gcGxpayBkb2RhdGtvd3ljaCBuYWRwaXNh8SBhcmNoaXd1bSBEZWJpYW5hCisuCisuU0ggU0ujQUROSUEKK292ZXJyaWRlCisuCisuU0ggT1BJUworV2nqa3N6b7bmIGluZm9ybWFjamkgbyBiaW5hcm55bSBsdWIgvHLzZLNvd3ltIHBha2llY2llIG1vv2UgYnnmIHphd2FydGEgdworcGxpa3UgY29udHJvbC8uZHNjLCBqZWRuYWsgY2GzYSB0YSBpbmZvcm1hY2phIG1vv2UgYnnmIG5hZHBpc2FuYSBwb2RjemFzCitla3Nwb3J0b3dhbmlhIGRvIHBsaWvzdyBQYWNrYWdlcy9Tb3VyY2VzLiBQbGlrIGRvZGF0a293eWNoIG5hZHBpc2HxIHphd2llcmEKK3Rha2llIHezYbZuaWUgbmFkcGlzYW5pYS4KKy5QUAorRG9kYXRrb3d5IHBsaWsgbmFkcGlzYfEgbWEgcHJvc3R5IGZvcm1hdCBw82wgcm96ZHppZWxvbnljaCBiaWGzeW1pIHpuYWthbWkKKyhzcGFjamFtaSkuIERvendvbG9uZSBzsSBrb21lbnRhcnplICh6YWN6eW5harFjZSBzaeogb2QgXGZCI1xmUCkuCisuUFAKKy5pbiArNQorXGZJcGFraWV0XGZQIFxmSW5hendhXC1wb2xhXGZQIFxmSXdhcnRvtuZcZlAKKy5pbiAtNQorLlBQCitcZklwYWtpZXRcZlAgamVzdCBuYXp3sSBiaW5hcm5lZ28gbHViILxy82Szb3dlZ28gcGFraWV0dS4KKy5QUAorXGZJbmF6d2FcLXBvbGFcZlAgamVzdCBuYXp3sSBuYWRwaXN5d2FuZWdvIHBvbGEuIFxmSXdhcnRvtuZcZlAgamVzdCB3YXJ0b7ZjabEsCitrdPNyYSBi6mR6aWUgdW1pZXN6Y3pvbmEgdyB0eW0gcG9sdS4gTW+/ZSBvbmEgemF3aWVyYeYgc3BhY2plLCBwb25pZXdhvworbGluaWEgamVzdCBkemllbG9uYSBwb2RjemFzIHBhcnNvd2FuaWEgbmEgbmllIHdp6mNlaiBuab8gMyBrb2x1bW55LgorLlBQCitEb2RhdGtvd2UgcGxpa2kgbmFkcGlzYfEgdb95d2FuZSBkbyBzdHdvcnplbmlhIG9maWNqYWxueWNoIGxpc3QgUGFja2FnZXMKK21vv25hIHpuYWxlvOYgdyBrYXRhbG9ndSBcZklpbmRpY2VzXGZQIG5hIGthv2R5bSBtaXJyb3J6ZSBEZWJpYW5hLgorLgorLlNIICJaT0JBQ1ogVEFLr0UiCitcZkJkcGtnXC1zY2FucGFja2FnZXNcZlAoMSksIFxmQmRwa2dcLXNjYW5zb3VyY2VzXGZQKDEpLCBcZkJhcHRcLWZ0cGFyY2hpdmVcZlAoMSkuCisuU0ggIlSjVU1BQ1pFIgorUGlvdHIgUm9zemF0eWNraSA8ZGV4dGVyQGRlYmlhbi5vcmc+LCAxOTk5CisuYnIKK0JhcnRvc3ogRmXxc2tpIDxmZW5pb0BkZWJpYW4ub3JnPiwgMjAwNC0yMDA1CisuYnIKK1JvYmVydCBMdWJlcmRhIDxyb2JlcnRAZGViaWFuLm9yZz4sIDIwMDYtMjAwOAorLmJyCitXaWt0b3IgV2FuZGFjaG93aWN6IDxzaXJ5ZXNAZ21haWwuY29tPiwgMjAwOApkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vcGwvZGViLW9sZC41IGIvZHBrZy0xLjE2LjEuMS9tYW4vcGwvZGViLW9sZC41Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjc4ODhkYzUKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9wbC9kZWItb2xkLjUKQEAgLTAsMCArMSw1MyBAQAorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlwiCisuXCIgVGhpcyBmaWxlIHdhcyBnZW5lcmF0ZWQgd2l0aCBwbzRhLiBUcmFuc2xhdGUgdGhlIHNvdXJjZSBmaWxlLgorLlwiCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuVEggZGViXC1vbGQgNSAyMDExXC0wOFwtMTQgIlByb2pla3QgRGViaWFuYSIgRGViaWFuCisuU0ggTkFaV0EKK2RlYlwtb2xkIFwtIHN0YXJ5IGZvcm1hdCBiaW5hcm5lZ28gcGFraWV0dSBEZWJpYW5hCisuCisuU0ggU0ujQUROSUEKK1xmSW5hendhX3BsaWt1XGZQXGZCLmRlYlxmUAorLgorLlNIIE9QSVMKK0Zvcm1hdCBcZkIuZGViXGZQIGplc3QgZm9ybWF0ZW0gYmluYXJuZWdvIHBha2lldHUgRGViaWFuYS4gVGEgc3Ryb25hCitwb2Ry6mN6bmlrYSBvcGlzdWplIFxmQnN0YXJ5XGZQIGZvcm1hdCwgdb95d2FueSBwcnplZCB3ZXJzarEgMC45MworRGViaWFuYS4gU3pjemVn87N5IG5vd2VnbyBmb3JtYXR1IG1vv25hIHpuYWxlvOYgdyBcZkJkZWJcZlAoNSkuCisuCisuU0ggRk9STUFUCitQbGlrIHNrs2FkYSBzaeogeiBkd3UgbGluaWkgaW5mb3JtYWNqaSBvIGZvcm1hY2llIGpha28gdGVrc3QgQVNDSUksIHBvCitrdPNyeWNoIG5hc3TqcHVqsSBkd2EgcG+zsWN6b25lIHBsaWtpIHVzdGFyIHNwYWtvd2FuZSBnemlwZW0uCisuUFAKK1BpZXJ3c3qxIGxpbmmxIGplc3QgbnVtZXIgd2Vyc2ppIGZvcm1hdHUsIHd5cvN3bmFueSBkbyA4IGN5ZnIuIERsYSBzdGFyZWdvCitmb3JtYXR1IG51bWVyIHRlbiB3eW5vc2kgXGZCMC45MzkwMDBcZlAuCisuUFAKK1cgZHJ1Z2llaiBsaW5paSBqZXN0IHphcGlzYW5hIGxpY3piYSBkemllc2nqdG5hIChiZXogcG9jerF0a293eWNoIHplcikKK3BvZGFqsWNlIGSzdWdvtuYgcGllcndzemVnbyB6Z3ppcG93YW5lZ28gcGxpa3UgdGFyLgorLlBQCitLYb9kYSB6IHR5Y2ggbGluaWkgamVzdCB6YWtv8WN6b25hIHBvamVkeW5jenltIHpuYWtpZW0gbm93ZWogbGluaWkuCisuUFAKK1BpZXJ3c3p5IHBsaWsgdGFyIHphd2llcmEgaW5mb3JtYWNqZSBrb250cm9sbmUsIGpha28gc2Vyaeogend5Y3pham55Y2gKK3BsaWvzdy4gWmF3c3plIG11c2kgYnnmIG9iZWNueSBwbGlrIFxmQmNvbnRyb2xcZlAgemF3aWVyYWqxY3kgZ7Pzd25lIGluZm9ybWFjamUKK2tvbnRyb2xuZS4KKy5QUAorVyBiYXJkem8gc3RhcnljaCBhcmNoaXdhY2gsIHBsaWtpIHcgYXJjaGl3dW0ga29udHJvbG55bSBtb2ezeSBieeYKK3VtaWVzemN6b25lIHcgcG9ka2F0YWxvZ3UgXGZCREVCSUFOXGZQLiBXIHRha2ltIHd5cGFka3Uga2F0YWxvZyBcZkJERUJJQU5cZlAKK2LqZHppZSB3eXN06nBvd2GzIHLzd25pZb8gdyBhcmNoaXd1bSBrb250cm9sbnltLCBrdPNyZSBi6mR6aWUgemF3aWVyYbNvCitwbGlraSB0eWxrbyB3IHR5bSBrYXRhbG9ndS4gT3Bjam9uYWxuaWUgYXJjaGl3dW0ga29udHJvbG5lIG1vv2UgemF3aWVyYeYKK3Lzd25pZb8gd3BpcyBkbGEgIlxmQi5cZlAiLCBjenlsaSBrYXRhbG9ndSBiaWW/sWNlZ28uCisuUFAKK0RydWdpbSBza29tcHJlc293YW55bSBhcmNoaXd1bSB0YXIgamVzdCBhcmNoaXd1bSBzeXN0ZW11IHBsaWvzdywgemF3aWVyYWqxY2UKK25hend5ILZjaWW/ZWsgcmVsYXR5d25lIGRvIGez83duZWdvIGthdGFsb2d1IHN5c3RlbXUsIG5hIGt083J5bSBi6mSxCitpbnN0YWxvd2FuZS4gTmF6d3kgdGUgbmllIHphY3p5bmFqsSBzaeogb2QgdWtvtm5pa/N3LgorLgorLlNIICJaT0JBQ1ogVEFLr0UiCitcZkJkZWJcZlAoNSksIFxmQmRwa2dcLWRlYlxmUCgxKSwgXGZCZGViXC1jb250cm9sXGZQKDUpLgorLlNIICJUo1VNQUNaRSIKK1Bpb3RyIFJvc3phdHlja2kgPGRleHRlckBkZWJpYW4ub3JnPiwgMTk5OQorLmJyCitCYXJ0b3N6IEZl8XNraSA8ZmVuaW9AZGViaWFuLm9yZz4sIDIwMDQtMjAwNQorLmJyCitSb2JlcnQgTHViZXJkYSA8cm9iZXJ0QGRlYmlhbi5vcmc+LCAyMDA2LTIwMDgKKy5icgorV2lrdG9yIFdhbmRhY2hvd2ljeiA8c2lyeWVzQGdtYWlsLmNvbT4sIDIwMDgKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL3BsL2RlYi1zaGxpYnMuNSBiL2Rwa2ctMS4xNi4xLjEvbWFuL3BsL2RlYi1zaGxpYnMuNQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42NGI3OWZkCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vcGwvZGViLXNobGlicy41CkBAIC0wLDAgKzEsNjMgQEAKKy5cIiBDb3B5cmlnaHQgwqkgMTk5NiBNaWNoYWVsIFNoaWVsZHMgPHNoaWVsZHNAY3Jvc3NsaW5rLm5ldD4KKy5cIiBDb3B5cmlnaHQgwqkgMjAwOCBaYWNrIFdlaW5iZXJnIDx6YWNrd0BwYW5peC5jb20+CisuXCIgVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgbWF5IHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisuXCIgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKy5cIiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorLlwiIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisuXCIKKy5cIiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisuXCIgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKy5cIiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisuXCIgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKy5cIgorLlwiIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisuXCIgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkZWJcLXNobGlicyA1IDIwMDhcLTAyXC0xNyAiUHJvamVrdCBEZWJpYW5hIiAicHJvZ3JhbXkgcG9tb2NuaWN6ZSBkcGtnIgorLlNIIE5BWldBCitkZWJcLXNobGlicyBcLSBwbGlrIHogaW5mb3JtYWNqYW1pIG8gYmlibGlvdGVrYWNoIHdzcPOzZHppZWxvbnljaCB3IERlYmlhbmllCisuCisuU0ggT1BJUworLlBQCitQbGlraSBcZkJzaGxpYnNcZlAgb2R3em9yb3d1arEgbmF6d3kgaSB3ZXJzamUgKHR6dy4gXGZJc29uYW1lc1xmUCkgYmlibGlvdGVrCit3c3Dzs2R6aWVsb255Y2ggbmEgemFsZb9ub7ZjaSBvZHBvd2llZG5pZSBkbGEgcGxpa3Uga29udHJvbG5lZ28gcGFraWV0dS4gVwora2G/ZGVqIGxpbmlpIG1vv2UgYnnmIHVtaWVzemN6b255IHR5bGtvIGplZGVuIHdwaXMuIFB1c3RlIGxpbmllIFxmSW5pZVxmUCBtb2exCit3eXN06nBvd2HmLiBMaW5pZSB6YWN6eW5harFjZSBzaeogb2Qgem5ha3UgXGZCI1xmUCBzsSB1d2G/YW5lIHphIGtvbWVudGFyemUgaQoraWdub3Jvd2FuZS4gV3N6eXN0a2llIHBvem9zdGGzZSBsaW5pZSBtdXN6sSBtaWXmIG5hc3TqcHVqsWN5IGZvcm1hdDoKKy5JUAorW1xmSXR5cGVcZlBcZkI6XGZQXSBcZklsaWJyYXJ5XGZQIFxmSXZlcnNpb25cZlAgXGZJZGVwZW5kZW5jaWVzXGZQCisuUFAKK1RoZSBcZklsaWJyYXJ5XGZQIGFuZCBcZkl2ZXJzaW9uXGZQIGZpZWxkcyBhcmUgd2hpdGVzcGFjZVwtZGVsaW1pdGVkLCBidXQgdGhlCitcZklkZXBlbmRlbmNpZXNcZlAgZmllbGQgZXh0ZW5kcyB0byB0aGUgZW5kIG9mIHRoZSBsaW5lLiAgVGhlIFxmSXR5cGVcZlAgZmllbGQgaXMKK29wdGlvbmFsIGFuZCBub3JtYWxseSBub3QgbmVlZGVkLgorLlBQCitEYWxzemUgc3pjemVn87N5IG1vv25hIHpuYWxlvOYgdyBaYXNhZGFjaCBwb2xpdHlraSBEZWJpYW5hLgorLgorLlNIIFBSWllLo0FEWQorLlBQCitQbGlrIFxmQnNobGlic1xmUCBkbGEgdHlwb3dlZ28gcGFraWV0dSB6IGJpYmxpb3Rla2FtaSwgbmF6d2FuZWdvIFxmSWxpYmNydW5jaDFcZlAsCitkb3N0YXJjemFqsWNlZ28gdHlsa28gamVkbrEgYmlibGlvdGVr6iwga3TzcmVqIHNvbmFtZSB0byBcZklsaWJjcnVuY2guc28uMVxmUCwKK21vv2Ugd3lnbLFkYeYgdGFrOgorLklQCitsaWJjcnVuY2ggMSBsaWJjcnVuY2gxICg+PSAxLjJcLTEpCisuUFAKK1BvbGUgXGZJemFsZb9ub7ZjaVxmUCBtdXNpIHd5bWllbmlh5iBuYWpub3dzerEgd2Vyc2rqIHBha2lldHUsIHcga3TzcmVqIGRvZGFubworbm93ZSBzeW1ib2xlIGRvIGJpYmxpb3Rla2k6IHcgcG93eb9zenltIHByenlrs2FkemllIG5vd2Ugc3ltYm9sZSBiebN5IGRvZGFuZQorZG8gd2Vyc2ppIDEuMiBiaWJsaW90ZWtpICBcZklsaWJjcnVuY2hcZlAuIE5pZSBqZXN0IHRvIGplZHlueSBwb3fzZCxkbGEga3TzcmVnbworemFsZb9ub7ZjaSBtb2exIGJ55iB6YXfqv2FuZTsgc3pjemVn87N5IG1vv25hIHpuYWxlvOYgdyBkb2t1bWVuY2llICJaYXNhZHkKK3BvbGl0eWtpIERlYmlhbmEiLgorLgorLlNIICJaT0JBQ1ogVEFLr0UiCitcZkJkcGtnXC1zaGxpYmRlcHNcZlAoMSksIFxmQmRlYlwtc3ltYm9sc1xmUCg1KS4KKy5TSCAiVKNVTUFDWkUiCitQaW90ciBSb3N6YXR5Y2tpIDxkZXh0ZXJAZGViaWFuLm9yZz4sIDE5OTkKKy5icgorQmFydG9zeiBGZfFza2kgPGZlbmlvQGRlYmlhbi5vcmc+LCAyMDA0LTIwMDUKKy5icgorUm9iZXJ0IEx1YmVyZGEgPHJvYmVydEBkZWJpYW4ub3JnPiwgMjAwNi0yMDA4CisuYnIKK1dpa3RvciBXYW5kYWNob3dpY3ogPHNpcnllc0BnbWFpbC5jb20+LCAyMDA4CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9wbC9kZWItc3Vic3R2YXJzLjUgYi9kcGtnLTEuMTYuMS4xL21hbi9wbC9kZWItc3Vic3R2YXJzLjUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNmY5YTgyNAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL3BsL2RlYi1zdWJzdHZhcnMuNQpAQCAtMCwwICsxLDE0OSBAQAorLlwiIEF1dGhvcnM6IElhbiBKYWNrc29uCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkZWJcLXN1YnN0dmFycyA1IDIwMDlcLTA3XC0xNSAiUHJvamVrdCBEZWJpYW5hIiAicHJvZ3JhbXkgcG9tb2NuaWN6ZSBkcGtnIgorLlNIIE5BWldBCitkZWJcLXN1YnN0dmFycyBcLSB6bWllbm5lIHBvZHN0YXdpYW5pYSC8cvNks293eWNoIHBha2lldPN3IERlYmlhbmEKKy4KKy5TSCBTS6NBRE5JQQorc3Vic3R2YXJzCisuCisuU0ggT1BJUworWmFuaW0gXGZCZHBrZ1wtc291cmNlXGZQLCBcZkJkcGtnXC1nZW5jb250cm9sXGZQIGkgXGZCZHBrZ1wtZ2VuY2hhbmdlc1xmUCB6YXBpc3qxIHN3b2plCitpbmZvcm1hY2plIGtvbnRyb2xuZSAoZG8gvHLzZLNvd2VnbyBwbGlrdSBcZkIuZHNjXGZQIHcgd3lwYWRrdSBcZkJkcGtnXC1zb3VyY2VcZlAgaQorbmEgc3RhbmRhcmRvd2Ugd3lqtmNpZSB3IHd5cGFka3UgXGZCZHBrZ1wtZ2VuY29udHJvbFxmUCBpIFxmQmRwa2dcLWdlbmNoYW5nZXNcZlApLAord3lrb251arEgcG9kc3Rhd2llbmlhIHBld255Y2ggem1pZW5ueWNoIG5hIHBsaWt1IHd5arZjaW93eW0uCisKK1BvZHN0YXdpZW5pZSB6bWllbm5laiBtYSBwb3N0YeYgXGZCJHtcZlBcZkluYXp3YVwtem1pZW5uZWpcZlBcZkJ9XGZQLiBOYXp3eSB6bWllbm55Y2gKK3Nrs2FkYWqxIHNp6iB6ZSB6bmFr83cgYWxmYW51bWVyeWN6bnljaCwgbXm2bG5pa/N3IG9yYXogZHd1a3JvcGvzdyBpCit6YWN6eW5harEgc2nqIG9kIHpuYWt1IGFsZmFudW1lcnljem5lZ28uIFBvZHN0YXdpZW5pYSB6bWllbm55Y2ggc7EKK3Bvd3RhcnphbmUgZG9w83R5LCBhvyBuaWUgYupkemllIG5pYyBkbyBwb2RzdGF3aWVuaWE7IHBls2VuIHRla3N0IHBvbGEgcG8KK3BvZHN0YXdpZW5pdSBqZXN0IHBvbm93bmllIHNrYW5vd2FueSB3IHBvc3p1a2l3YW5pdSBrb2xlam55Y2ggcG9kc3Rhd2ll8S4KKworUG8gZG9rb25hbml1IHdzenlzdGtpY2ggcG9kc3Rhd2ll8Swga2G/ZGUgd3lzdLFwaWVuaWUgs2HxY3VjaGEgXGZCJHt9XGZQIChrdPNyeQorbmllIGplc3QgcG9wcmF3bnltIHBvZHN0YXdpZW5pZW0pIGplc3QgemFzdOpwb3dhbmUgcHJ6ZXogem5hayBcZkIkXGZQLgorCitQb2RzdGF3aWFuaWUgem1pZW5ueWNoIGplc3Qgd3lrb255d2FuZSBuYSB3c3p5c3RraWNoIHBvbGFjaCBrb250cm9sbnljaCwKK2plZG5hayBuaWVrdPNyZSB6IHR5Y2ggcPNsIHOxIHW/eXdhbmUgb3JheiB3eW1hZ2FuZSBwb2RjemFzIGJ1ZG93YW5pYSwgZ2R5Citwb2RzdGF3aWVuaWUgbmllIHpvc3Rhs28gamVzemN6ZSB3eWtvbmFuZS4gRGxhdGVnbyBuaWUgbW+/bmEgdb95d2HmCit6bWllbm55Y2ggdyBwb2xhY2ggXGZCUGFja2FnZVxmUCwgXGZCU291cmNlXGZQIG9yYXogXGZCQXJjaGl0ZWN0dXJlXGZQLgorCitWYXJpYWJsZSBzdWJzdGl0dXRpb24gaGFwcGVucyBvbiB0aGUgY29udGVudCBvZiB0aGUgZmllbGRzIGFmdGVyIHRoZXkgaGF2ZQorYmVlbiBwYXJzZWQsIHRodXMgaWYgeW91IHdhbnQgYSB2YXJpYWJsZSB0byBleHBhbmQgb3ZlciBtdWx0aXBsZSBsaW5lcyB5b3UKK2RvIG5vdCBoYXZlIHRvIGluY2x1ZGUgYSBzcGFjZSBhZnRlciB0aGUgbmV3bGluZS4gVGhpcyBpcyBkb25lIGltcGxpY2l0bHkKK3doZW4gdGhlIGZpZWxkIGlzIG91dHB1dC4gRm9yIGV4YW1wbGUsIGlmIHRoZSB2YXJpYWJsZSBcZkIke0Rlc2NyaXB0aW9ufVxmUCBpcworc2V0IHRvICJmb28gaXMgYmFyLiR7TmV3bGluZX1mb28gaXMgZ3JlYXQuIiBhbmQgaWYgeW91IGhhdmUgdGhlIGZvbGxvd2luZworZmllbGQ6CisKKyBEZXNjcmlwdGlvbjogZm9vIGFwcGxpY2F0aW9uCisgICR7RGVzY3JpcHRpb259CisgIC4KKyAgTW9yZSB0ZXh0LgorCitJdCB3aWxsIHJlc3VsdCBpbjoKKworIERlc2NyaXB0aW9uOiBmb28gYXBwbGljYXRpb24KKyAgZm9vIGlzIGJhci4KKyAgZm9vIGlzIGdyZWF0LgorICAuCisgIE1vcmUgdGV4dC4KKworWm1pZW5uZSBtb79uYSB1c3Rhd2nmIHphIHBvbW9jsSBvcGNqaSBcZkJcLVZcZlAuIE1vv25hIGplIHRha79lIHBvZGHmIHcgcGxpa3UKK1xmQmRlYmlhbi9zdWJzdHZhcnNcZlAgKGx1YiBqYWtpbWtvbHdpZWsgaW5ueW0gcGxpa3Ugd3NrYXphbnltIG9wY2qxCitcZkJcLVRcZlApLiBQbGlrIHRlbiBza7NhZGEgc2nqIHogbGluaWkgdyBwb3N0YWNpCitcZkluYXp3YVxmUFxmQj1cZlBcZkl3YXJ0b7bmXGZQLiBLb/Fjb3dlIHNwYWNqZSB3IGthv2RlaiBsaW5paSwgbGluaWUgcHVzdGUgb3JhegorbGluaWUgemFjenluYWqxY2Ugc2nqIG9kIHpuYWt1IFxmQiNcZlAgKGN6eWxpIGtvbWVudGFyemUpIHOxIGlnbm9yb3dhbmUuCisKK0RvZGF0a293byBkb3N06nBuZSBzsSBuYXN06nB1arFjZSBzdGFuZGFyZG93ZSB6bWllbm5lOgorLlRQIAorXGZCQXJjaFxmUAorQmllv7FjYSBhcmNoaXRla3R1cmEgYnVkb3dhbmlhICh6IFxmQmRwa2cgXC1cLXByaW50XC1hcmNoaXRlY3R1cmVcZlApLgorLlRQIAorXGZCc291cmNlOlZlcnNpb25cZlAKK1dlcnNqYSBwYWtpZXR1ILxy82Szb3dlZ28KKy5UUCAKK1xmQnNvdXJjZTpVcHN0cmVhbVwtVmVyc2lvblxmUAorT3J5Z2luYWxuYSB3ZXJzamEgYXV0b3JhIHBha2lldHUgvHLzZLNvd2Vnbywgd7OxY3pharFjIHdlcnNq6iBlcG9raSBEZWJpYW5hCitqZbZsaSBqZXN0LgorLlRQIAorXGZCYmluYXJ5OlZlcnNpb25cZlAKK1dlcnNqYSBwYWtpZXR1IGJpbmFybmVnbyAobW+/ZSBzaeogcvO/bmnmIG9kIHNvdXJjZTpWZXJzaW9uIG5hIHByenlrs2FkIHcKK3ByenlwYWRrdSBiaW5OTVUpLgorLlRQIAorXGZCU291cmNlXC1WZXJzaW9uXGZQCitXZXJzamEgcGFraWV0dSC8cvNks293ZWdvICh6IGR6aWVubmlrYSB6bWlhbikuIFRhIHptaWVubmEgamVzdCBvYmVjbmllCitcZkJwcnplc3Rhcnphs2FcZlAsIGpha28gv2UgamVqIHpuYWN6ZW5pZSBqZXN0IGlubmUgbmm/IGplagorZnVua2Nqb25hbG5vtuYuIFByb3NpbXkgdb95d2HmIFxmQnNvdXJjZTpWZXJzaW9uXGZQIGx1YiBcZkJiaW5hcnk6VmVyc2lvblxmUCwgdworemFsZb9ub7ZjaSBvZCB3eW1hZ2HxLgorLlRQIAorXGZCSW5zdGFsbGVkXC1TaXplXGZQCitDYbNrb3dpdHkgcm96bWlhciBwbGlr83cgemFpbnN0YWxvd2FueWNoIHByemV6IHBha2lldC4gV2FydG+25iB0YSBqZXN0Citrb3Bpb3dhbmEgZG8gb2Rwb3dpYWRharFjZWdvIGplaiBwb2xhIHcgcGxpa3Uga29udHJvbG55bTsgdXN0YXdpZW5pZSBqZWoKK3ptb2R5ZmlrdWplIHdhcnRvtuYgdGVnbyBwb2xhLiBKZbZsaSBuaWUgdXN0YXdpb25vIHptaWVubmVqLCB0bworXGZCZHBrZ1wtZ2VuY29udHJvbFxmUCB1v3lqZSBcZkJkdSBcLWsgZGViaWFuL3RtcFxmUCwgYWJ5IHpuYWxlvOYgamVqIHdhcnRvtuYKK2RvbXm2bG6xLgorLlRQIAorXGZCRXh0cmFcLVNpemVcZlAKK0RvZGF0a293YSBwcnplc3RyemXxIGR5c2tvd2EsIHW/eXdhbmEgcG9kY3phcyBpbnN0YWxvd2FuaWEgcGFraWV0dS4gSmW2bGkgdGEKK3ptaWVubmEgamVzdCB1c3Rhd2lvbmEsIHRvIGplaiB3YXJ0b7bmIGplc3QgZG9kYXdhbmEgZG8gd2FydG+2Y2kgem1pZW5uZWoKK1xmQkluc3RhbGxlZFwtU2l6ZVxmUCAobmllemFsZb9uaWUgb2QgdGVnbywgY3p5IHpvc3Rhs2Egb3R3YXJjaWUgdXN0YXdpb25hLCBjenkKK21hIHdhcnRvtuYgZG9tebZsbrEpLCB6YW5pbSB6b3N0YW5pYSBza29waW93YW5hIGRvIHBvbGEgXGZCSW5zdGFsbGVkXC1TaXplXGZQCitwbGlrdSBrb250cm9sbmVnby4KKy5UUCAKK1xmQkY6XGZQXGZJbmF6d2FcLXBvbGFcZlAKK1dhcnRvtuYgcG9sYSB3eWq2Y2lvd2VnbyBcZkluYXp3YV9wb2xhXGZQIChrdPNyZSBtdXNpIGJ55iBwb2RhbmUgeiB1v3ljaWVtCitOb3RhY2ppXC1XaWVsYrOxZHppZWopLiBVc3Rhd2llbmllIHRha2ljaCB6bWllbm55Y2ggd3CzeXdhIHR5bGtvIG5hIG1pZWpzY2EsCitnZHppZSBzsSBvbmUgamF3bmllIHJvendpamFuZS4KKy5UUCAKK1xmQkZvcm1hdFxmUAorV2Vyc2phIGZvcm1hdHUgcGxpa3UgXGZCLmNoYW5nZXNcZlAgd3lnZW5lcm93YW5hIHByemV6IHTqIHdlcnNq6iBza3J5cHTzdworcHJ6eWdvdG93dWqxY3ljaCBwYWtpZXR5ILxy82Szb3dlLiBVc3Rhd2llbmllIHRlaiB6bWllbm5laiB6bWllbmlhIHLzd25pZb8KK3phd2FydG+25iBwb2xhIFxmQkZvcm1hdFxmUCB3IHBsaWt1IFxmQi5jaGFuZ2VzXGZQLgorLlRQIAorXGZCTmV3bGluZVxmUCwgXGZCU3BhY2VcZlAsIFxmQlRhYlxmUAorS2G/ZGEgeiB0eWNoIHptaWVubnljaCB6YXdpZXJhIG9kcG93aWFkYWqxY3kgamVqIHpuYWsuCisuVFAgCitcZkJzaGxpYnM6XGZQXGZJcG9sZVwtemFsZb9ub7ZjaVxmUAorVXN0YXdpZW5pYSB6bWllbm55Y2ggdyB0ZWogcG9zdGFjaSBzsSBnZW5lcm93YW5lIHByemV6IFxmQmRwa2dcLXNobGliZGVwc1xmUC4KKy5UUCAKK1xmQmRwa2c6VXBzdHJlYW1cLVZlcnNpb25cZlAKK09yeWdpbmFsbmEgd2Vyc2phIGRwa2csIG5hZGFuYSBwcnpleiBhdXRvcvN3LgorLlRQIAorXGZCZHBrZzpWZXJzaW9uXGZQCitQZbNuYSB3ZXJzamEgcHJvZ3JhbXUgZHBrZy4KKy5MUAorSmW/ZWxpIGplc3Qgb2R3b7NhbmllIGRvIG5pZXpkZWZpbmlvd2FuZWogem1pZW5uZWosIHRvIGdlbmVyb3dhbmUgamVzdAorb3N0cnplv2VuaWUgaSBwcnp5am1vd2FuYSBqZXN0IHB1c3RhIHdhcnRvtuYgem1pZW5uZWouCisuCisuU0ggUExJS0kKKy5UUCAKK1xmQmRlYmlhbi9zdWJzdHZhcnNcZlAKK0xpc3RhIHptaWVubnljaCBwb2RzdGF3aWFuaWEgaSBpY2ggd2FydG+2Y2kuCisuCisuU0ggQqPKRFkKK1B1bmt0LCB3IGt083J5bSBuYXN06nB1amUgbmFkcGlzeXdhbmllIHDzbCB3IHBvcvN3bmFuaXUgZG8gcGV3bnljaAorc3RhbmRhcmRvd3ljaCB1c3Rhd2ll8SBw82wgd3lqtmNpb3d5Y2ggamVzdCBkb7bmIHphZ21hdHdhbnkuCisKKy5TSCAiWk9CQUNaIFRBS69FIgorXGZCZHBrZ1xmUCgxKSwgXGZCZHBrZ1wtZ2VuY2hhbmdlc1xmUCgxKSwgXGZCZHBrZ1wtZ2VuY29udHJvbFxmUCgxKSwKK1xmQmRwa2dcLXNobGliZGVwc1xmUCgxKSwgXGZCZHBrZ1wtc291cmNlXGZQKDEpLgorLgorLlNIIEFVVE9SCitDb3B5cmlnaHQgXChjbyAxOTk1XC0xOTk2IElhbiBKYWNrc29uCisuYnIKK0NvcHlyaWdodCBcKGNvIDIwMDAgV2ljaGVydCBBa2tlcm1hbgorLnNwCitOaW5pZWpzenkgcHJvZ3JhbSBqZXN0IG9wcm9ncmFtb3dhbmllbSB3b2xueW0sIHNwcmF3ZLwgUG93c3plY2husSBMaWNlbmNq6gorUHVibGljem6xIEdOVSB3IHdlcnNqaSBkcnVnaWVqIGx1YiBw87xuaWVqc3plaiwgYnkgZG93aWVkemll5iBzaeogbword2FydW5rYWNoIGR5c3RyeWJ1Y2ppLiBCcmFrIEpBS0lFSktPTFdJRUsgZ3dhcmFuY2ppLgorLlNIICJUo1VNQUNaRSIKK1Bpb3RyIFJvc3phdHlja2kgPGRleHRlckBkZWJpYW4ub3JnPiwgMTk5OQorLmJyCitCYXJ0b3N6IEZl8XNraSA8ZmVuaW9AZGViaWFuLm9yZz4sIDIwMDQtMjAwNQorLmJyCitSb2JlcnQgTHViZXJkYSA8cm9iZXJ0QGRlYmlhbi5vcmc+LCAyMDA2LTIwMDgKKy5icgorV2lrdG9yIFdhbmRhY2hvd2ljeiA8c2lyeWVzQGdtYWlsLmNvbT4sIDIwMDgKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL3BsL2RlYi41IGIvZHBrZy0xLjE2LjEuMS9tYW4vcGwvZGViLjUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTg1ZWEzMgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL3BsL2RlYi41CkBAIC0wLDAgKzEsNzYgQEAKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlRIIGRlYiA1IDIwMTFcLTA4XC0xNCAiUHJvamVrdCBEZWJpYW5hIiBEZWJpYW4KKy5TSCBOQVpXQQorZGViIFwtIGZvcm1hdCBiaW5hcm5lZ28gcGFraWV0dSBEZWJpYW5hCisuU0ggU0ujQUROSUEKK1xmSW5hendhX3BsaWt1XGZQXGZCLmRlYlxmUAorLlNIIE9QSVMKK0Zvcm1hdCBcZkIuZGViXGZQIGplc3QgZm9ybWF0ZW0gcGxpa3UgYmluYXJuZWdvIHBha2lldHUgRGViaWFuYS4gSmVzdCByb3p1bWlhbnkKK3ByemV6IGRwa2cgMC45My43NiBpIHDzvG5pZWpzemUgaSBkb215tmxuaWUgZ2VuZXJvd2FueSBwcnpleiB3c3p5c3RraWUKK3dlcnNqZSBkcGtnIHdp6mtzemUgbmm/IDEuMi4wIGkgd3N6eXN0a2llIHdlcnNqZSBpMzg2L0VMRiBwb2N6sXdzenkgb2QKKzEuMS4xZWxmLgorLlBQCitPcGlzYW55IHR1IGZvcm1hdCBqZXN0IHW/eXdhbnkgb2Qgd2Vyc2ppIDAuOTMgRGViaWFuYTsgc3pjemVn87N5IHN0YXJlZ28KK2Zvcm1hdHUgc7Egb3Bpc2FuZSB3IFxmQmRwa2dcLWRlYlxmUCg1KS4KKy5TSCBGT1JNQVQKK1BsaWsgdGVuIGplc3QgYXJjaGl3dW0gXGZCYXJcZlAgbWFqsWN5bSBsaWN6YuogbWFnaWN6brEgegorXGZCITxhcmNoPlxmUC4gTmF6d3kgcGxpa/N3IG1vZ7EgemF3aWVyYeYga2/xY3qxY3kgem5hayB1a2+2bmlrYS4KKy5QUAorQWt0dWFsbmllIGRvendvbG9uZSBhcmNoaXdhIFxmQnRhclxmUCBtb2exIG1pZeY6IGZvcm1hdCB3IHN0YXJ5bSBzdHlsdSAodjcpLAorcG9wcnplZHpharFjeSBQT1NJWCBmb3JtYXQgdXN0YXIsIHBvZHpiafNyIGZvcm1hdHUgR05VIChqZWR5bmllIGSzdWdpZQortmNpZb9raSBpIGSzdWdpZSBuYXp3eSBkb3dpsXph8SB3IG5vd3ltIHN0eWx1LCB3c3BpZXJhbmUgb2QgZHBrZyAxLjQuMS4xNyksCitvcmF6IHpnb2RueSB6IFBPU0lYIGZvcm1hdCB1c3RhciAoZLN1Z2llIG5hend5IHdzcGllcmFuZSBvZCBkcGtnCisxLjE1LjApLiBOaWV6bmFuZSBmbGFnaSB0eXDzdyB0YXIgc7EgdXdhv2FuZSB6YSBis7FkLgorLlBQCitQaWVyd3N6eSBza7NhZG5payBuYXp5d2Egc2nqIFxmQmRlYmlhblwtYmluYXJ5XGZQIGkgemF3aWVyYSBzZXJp6iBsaW5paQorcm96ZHppZWxvbnljaCB6bmFrYW1pIG5vd2VqIGxpbmlpLiBPYmVjbmllIHBsaWsgdGVuIHphd2llcmEgdHlsa28gamVkbrEKK2xpbmnqIFwtIG51bWVyIHdlcnNqaSBmb3JtYXR1LCBrdPNyeSBcLSB3IGN6YXNpZSBwaXNhbmlhIHRlaiBzdHJvbnkKK3BvZHLqY3puaWthIFwtIHd5bm9zabMgXGZCMi4wXGZQLiBQcm9ncmFteSBvYnOzdWd1arFjZSBhcmNoaXdhIHcgbm93eW0gZm9ybWFjaWUKK3Bvd2lubnkgYnnmIGdvdG93ZSBuYSBvYnOzdb9lbmllIHptaWFueSBsaWN6YnkgcG9ib2N6bmVqIChwbyBrcm9wY2UpIG9yYXogbmEKK29iZWNub7bmIG5vd3ljaCBsaW5paSwga3TzcmUgcG93aW5ueSBpZ25vcm93YeYuCisuUFAKK0plv2VsaSB6bWllbmkgc2nqIGez83duYSBsaWN6YmEgbnVtZXJ1IHdlcnNqaSAobGljemJhIHByemVkIGtyb3BrsSksIG96bmFjemEKK3RvLCC/ZSB3cHJvd2Fkem9uZSB6bWlhbnkgdyBmb3JtYWNpZSBzsSBuaWVrb21wYXR5YmlsbmUgeiBwb3ByemVkbmmxIHdlcnNqsQoraSBwcm9ncmFtIHBvd2luaWVuIHNp6iB6YXRyenltYeYuIEplv2VsaSBzaeogbmllIHphdHJ6eW1hLCB0byBwb3dpbmllbgora29udHludW93YeYgZHppYbNhbmllIGG/IGRvIG5hcG90a2FuaWEgbmllb2N6ZWtpd2FuZWdvIHNrs2FkbmlrYSB3IGFyY2hpd3VtCisoY2h5YmEsIL9lIHd5c3TqcHVqZSBvbiBuYSBrb/FjdSksIHRhayBqYWsgdG8gb3Bpc2FubyBwb25pv2VqLgorLlBQCitEcnVnaSB3eW1hZ2FueSBza7NhZG5payBuYXp5d2Egc2nqIFxmQmNvbnRyb2wudGFyLmd6XGZQLiBKZXN0IHRvIHNwYWtvd2FuZQorYXJjaGl3dW0gdGFyIHphd2llcmFqsWNlIGluZm9ybWFjamUga29udHJvbG5lIHBha2lldHUsIGpha28gc2VyaeogcGxpa/N3Cit0ZWtzdG93eWNoLCB3tnLzZCBrdPNyeWNoIHd5bWFnYW55bSBwbGlraWVtIGplc3QgXGZCY29udHJvbFxmUCwgemF3aWVyYWqxY3kKK3BvZHN0YXdvd2UgaW5mb3JtYWNqZSBrb250cm9sbmUuIEFyY2hpd3VtIHRhciBtb79lIHphd2llcmHmIG9wY2pvbmFsbnkgd3BpcworZG90eWN6sWN5IGJpZb+xY2VnbyBrYXRhbG9ndSAiXGZCLlxmUCIuCisuUFAKK1RoZSB0aGlyZCwgbGFzdCByZXF1aXJlZCBtZW1iZXIgaXMgbmFtZWQgXGZCZGF0YS50YXJcZlAuICBJdCBjb250YWlucyB0aGUKK2ZpbGVzeXN0ZW0gYXMgYSB0YXIgYXJjaGl2ZSwgZWl0aGVyIG5vdCBjb21wcmVzc2VkIChzdXBwb3J0ZWQgc2luY2UgZHBrZworMS4xMC4yNCksIG9yIGNvbXByZXNzZWQgd2l0aCBnemlwICh3aXRoIFxmQi5nelxmUCBleHRlbnNpb24pLCB4eiAod2l0aCBcZkIueHpcZlAKK2V4dGVuc2lvbiwgc3VwcG9ydGVkIHNpbmNlIGRwa2cgMS4xNS42KSwgYnppcDIgKHdpdGggXGZCLmJ6MlxmUCBleHRlbnNpb24sCitzdXBwb3J0ZWQgc2luY2UgZHBrZyAxLjEwLjI0KSBvciBsem1hICh3aXRoIFxmQi5sem1hXGZQIGV4dGVuc2lvbiwgc3VwcG9ydGVkCitzaW5jZSBkcGtnIDEuMTMuMjUpLgorLlBQCitTa7NhZG5pa2kgdGUgbXVzerEgd3lzdOpwb3dh5iB3IHR5bSBwb3d5v3N6eW0gcG9yerFka3UuIEltcGxlbWVudGFjamUKK3Bvd2lubnkgaWdub3Jvd2HmIGpha2lla29sd2llayBkb2RhdGtvd2Ugc2uzYWRuaWtpIHd5c3TqcHVqsWNlIHBvCitcZkJkYXRhLnRhclxmUC4gS29sZWpuZSBza7NhZG5pa2kgbW9nsSB6b3N0YeYgemRlZmluaW93YW5lIHcgcHJ6eXN6s2+2Y2kgaQorKGplv2VsaSBi6mR6aWUgdG8gbW+/bGl3ZSkgYupksSB1bWllc3pjem9uZSBwbyB0cnplY2ggd3m/ZWoKK3d5bWllbmlvbnljaC4gRG9kYXRrb3dlIHNrs2FkbmlraSwgZGxhIGt083J5Y2ggd3ltYWdhbmUgYnkgYnmzbyBpY2gKK3VtaWVzemN6ZW5pZSBwcnplZCBcZkJkYXRhLnRhclxmUCBpIGt083JlIHBvd2lubnkgYnnmIGlnbm9yb3dhbmUgcHJ6ZXogc3RhcnN6ZQorcHJvZ3JhbXksIGLqZLEgbWlhs3kgbmF6d3kgemFjenluYWqxY2Ugc2nqIG9kIHpuYWt1IHBvZGtyZbZsZW5pYSAiXGZCX1xmUCIuCisuUFAKK1RlIG5vd2Ugc2uzYWRuaWtpLCBrdPNyZSBuaWUgYupksSBtb2ezeSB6b3N0YeYgemlnbm9yb3dhbmUsIHpvc3RhbrEKK3VtaWVzemN6b25lIHByemVkIFxmQmRhdGEudGFyXGZQLCBhIGljaCBuYXp3eSBi6mSxIHNp6iB6YWN6eW5h5iBvZCB6bmFrdSBpbm5lZ28KK25pvyBwb2RrcmW2bGVuaWUsIGx1YiAoY28gamVzdCBiYXJkemllaiBwcmF3ZG9wb2RvYm5lKSBzcG93b2R1arEgendp6mtzemVuaWUKK2ez83duZWogKG1ham9yKSB3ZXJzamkgZm9ybWF0dSBwbGlrdSBkZWIuCisuU0ggIlpPQkFDWiBUQUuvRSIKK1xmQmRlYlwtb2xkXGZQKDUpLCBcZkJkcGtnXC1kZWJcZlAoMSksIFxmQmRlYlwtY29udHJvbFxmUCg1KS4KKy5TSCAiVKNVTUFDWkUiCitQaW90ciBSb3N6YXR5Y2tpIDxkZXh0ZXJAZGViaWFuLm9yZz4sIDE5OTkKKy5icgorQmFydG9zeiBGZfFza2kgPGZlbmlvQGRlYmlhbi5vcmc+LCAyMDA0LTIwMDUKKy5icgorUm9iZXJ0IEx1YmVyZGEgPHJvYmVydEBkZWJpYW4ub3JnPiwgMjAwNi0yMDA4CisuYnIKK1dpa3RvciBXYW5kYWNob3dpY3ogPHNpcnllc0BnbWFpbC5jb20+LCAyMDA4CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9wbC9kcGtnLWFyY2hpdGVjdHVyZS4xIGIvZHBrZy0xLjE2LjEuMS9tYW4vcGwvZHBrZy1hcmNoaXRlY3R1cmUuMQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43OTI1NWY3Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vcGwvZHBrZy1hcmNoaXRlY3R1cmUuMQpAQCAtMCwwICsxLDMxOSBAQAorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlwiCisuXCIgVGhpcyBmaWxlIHdhcyBnZW5lcmF0ZWQgd2l0aCBwbzRhLiBUcmFuc2xhdGUgdGhlIHNvdXJjZSBmaWxlLgorLlwiCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuVEggZHBrZ1wtYXJjaGl0ZWN0dXJlIDEgMjAxMVwtMDhcLTE0ICJQcm9qZWt0IERlYmlhbmEiICJwcm9ncmFteSBwb21vY25pY3plIGRwa2ciCisuU0ggTkFaV0EKK2Rwa2dcLWFyY2hpdGVjdHVyZSBcLSB1c3Rhd2lhIGkgendyYWNhIGFyY2hpdGVrdHVy6iBidWRvd2FuaWEgcGFraWV083cuCisuCisuU0ggU0ujQUROSUEKK1xmQmRwa2dcLWFyY2hpdGVjdHVyZVxmUCBbXGZJb3B0aW9uXGZQLi4uXSBbXGZJY29tbWFuZFxmUF0KKy5QUAorLgorLlNIIE9QSVMKK2Rwa2dcLWFyY2hpdGVjdHVyZSBkb3N0YXJjemEgc3Bvc29idSBuYSBva3JltmxlbmllIGkgdXN0YXdpZW5pZSBhcmNoaXRla3R1cnkKK2J1ZG93YW5pYSBvcmF6IGFyY2hpdGVrdHVyeSBkb2NlbG93ZWogZGxhIGJ1ZG93YW5pYSBwYWtpZXTzdy4KKy5QUAorQXJjaGl0ZWt0dXJhIGJ1ZG93YW5pYSBqZXN0IHphd3N6ZSBva3JltmxhbmEgcHJ6ZXogd3l3b7NhbmllIFxmQmRwa2dcZlAgaSBuaWUKK21vv2UgYnnmIHVzdGF3aW9uYSB3IGxpbmlpIHBvbGVjZfEuCisuUFAKK01vv25hIHBvZGHmIGFyY2hpdGVrdHVy6iBkb2NlbG93sSBwcnpleiBwb2RhbmllIGplZG5laiBsdWIgb2J1IG9wY2ppIHNwb7Zy82QKK1xmQlwtYVxmUCBpIFxmQlwtdFxmUC4gV2FydG+25iBkb215tmxuYSBqZXN0IG9rcmW2bGFuYSBwcnpleiB3eXdvs2FuaWUgcHJvZ3JhbXUKK1xmQmdjY1xmUCgxKSwgYSB3IHJhemllIGdkeSBccy0xQ0NcczAgaSBnY2MgbmllIHOxIGRvc3TqcG5lLCBqZXN0IHRha2Egc2FtYSBqYWsKK2FyY2hpdGVrdHVyYSBidWRvd2FuaWEuIFd5c3RhcmN6eSBwb2Rh5iB0eWxrbyBqZWRusSBzcG+2cvNkIG9wY2ppIFxmQlwtYVxmUCBpCitcZkJcLXRcZlAsIHBvbmlld2G/IHRhIGRydWdhIHpvc3RhbmllIHVzdGF3aW9uYSBuYSBzZW5zb3dusSB3YXJ0b7bmIGRvbXm2bG6xLiBDbword2nqY2VqLCBjeupzdG8gcG9kYW5pZSBqZWRuZWogb3BjamkgamVzdCBsZXBzemUgbmm/IHBvZGFuaWUgaWNoIG9idSBuYXJheiwKK2dkeb8gXGZCZHBrZ1wtYXJjaGl0ZWN0dXJlXGZQIHd5cGlzemUgb3N0cnplv2VuaWUsIGpltmxpIHBvZGFuZSB3YXJ0b7ZjaSBuaWUKK2LqZLEgb2Rwb3dpYWRhs3kgd2FydG+2Y2lvbSBkb215tmxueW0uCisuCisuU0ggUE9MRUNFTklBCisuVFAgCitcZkJcLWxcZlAKK1d5tndpZXRsYSB6bWllbm5lILZyb2Rvd2lza293ZSwgcG8gamVkbmVqIHcga2G/ZGVqIGxpbmlpLCB3IGZvcm1hY2llCitcZklaTUlFTk5BPXdhcnRvtuZcZlAuIEplc3QgdG8gZG9tebZsbmEgYWtjamEuCisuVFAgCitcZkJcLWVcZlBcZklhcmNoaXRla3R1cmFcLWRlYmlhbmFcZlAKK1NwcmF3ZHphIHLzd25vd2G/bm+25iBhcmNoaXRla3R1ci4gRG9tebZsbmllIFxmSWFyY2hpdGVrdHVyYVwtZGViaWFuYVxmUCBqZXN0Citwb3Lzd255d2FuYSB6IGJpZb+xY7EgYXJjaGl0ZWt0dXKxIERlYmlhbmEsIHRyYWt0b3dhbrEgamFrbyBhcmNoaXRla3R1cmEKK2dvc3BvZGFyemEuIFRhIGFrY2phIG5pZSByb3p3aWphIG1hc2VrIGFyY2hpdGVrdHVyLiBQb2xlY2VuaWUga2/xY3p5IHNp6gora29kZW0gd3lqtmNpYSAwIGpltmxpIGRvcGFzb3dhbmllIGFyY2hpdGVrdHVyIHNp6iBwb3dpb2SzbywgbHViIGtvZGVtIDEKK2pltmxpIG5pZSBiebNvIGRvcGFzb3dhbmlhLgorLlRQIAorXGZCXC1pXGZQXGZJbWFza2FcLWFyY2hpdGVrdHVyeVxmUAorU3ByYXdkemVuaWUgYXJjaGl0ZWt0dXJ5IHByemV6IHJvendpbmnqY2llIHcgb2Rwb3dpZWRuaSBzcG9z82IKK1xmSW1hc2tpXC1hcmNoaXRla3R1cnlcZlAgaSBwb3Lzd25hbmllIHogYmllv7FjsSBhcmNoaXRla3R1crEgRGViaWFuYS4gUG9sZWNlbmllCitrb/Fjenkgc2nqIGtvZGVtIHd5arZjaWEgMCBqZbZsaSBkb3Bhc293YW5pZSBhcmNoaXRla3R1ciBzaeogcG93aW9ks28sIGx1Ygora29kZW0gMSBqZbZsaSBuaWUgYnmzbyBkb3Bhc293YW5pYS4KKy5UUCAKK1xmQlwtcVxmUFxmSW5hendhXC16bWllbm5lalxmUAorV3m2d2lldGxhIHdhcnRvtuYgcG9qZWR5bmN6ZWogem1pZW5uZWouCisuVFAgCitcZkJcLXNcZlAKK1d5tndpZXRsYSBwb2xlY2VuaWUgZXhwb3J0LCBrdPNyZSBtb79lIGJ55iB1v3l0ZSBkbyB1c3Rhd2llbmlhIHptaWVubnljaAortnJvZG93aXNrb3d5Y2ggemEgcG9tb2OxIGV2YWwuCisuVFAgCitcZkJcLXVcZlAKK1d5tndpZXRsYSBwb2xlY2VuaWUgcG9kb2JuZSBkbyBcZkJcLXNcZlAsIGplZG5ha79lIHplIHdzenlzdGtpbWkgem1pZW5ueW1pCituaWV1c3Rhd2lvbnltaS4KKy5UUCAKK1xmQlwtY1xmUFxmSSBwb2xlY2VuaWVcZlAKK1d5a29udWplIFxmSXBvbGVjZW5pZVxmUCB3ILZyb2Rvd2lza3UsIGt083JlIG1hIHdzenlzdGtpZSB6bWllbm5lIHVzdGF3aW9uZSBuYQord3l6bmFjem9uZSB3YXJ0b7ZjaS4KKy5UUCAKK1xmQlwtTFxmUAorV3m2d2lldGxhIGxpc3TqIHBvcHJhd255Y2ggbmF6dyBhcmNoaXRla3R1ci4KKy5UUCAKK1xmQlwtXC1oZWxwXGZQCitXebZ3aWV0bGEgaW5mb3JtYWNq6iBvIHW/eXRrb3dhbml1IGkga2/xY3p5IGR6aWGzYW5pZS4KKy5UUCAKK1xmQlwtXC12ZXJzaW9uXGZQCitXebZ3aWV0bGEgaW5mb3JtYWNq6iBvIHdlcnNqaSBpIHBvbXm2bG5pZSBrb/FjenkgZHppYbNhbmllLgorLgorLlNIIE9QQ0pFCisuVFAgCitcZkJcLWFcZlBcZklhcmNoaXRla3R1cmFcLWRlYmlhbmFcZlAKK1VzdGF3aWEgYXJjaGl0ZWt0dXLqIERlYmlhbmEuCisuVFAgCitcZkJcLXRcZlBcZkl0eXBcLXN5c3RlbXVcLWdudVxmUAorVXN0YXdpYSB0eXAgc3lzdGVtdSBHTlUuCisuVFAgCitcZkJcLWZcZlAKK0hvbm9yb3dhbmUgc7Egd2FydG+2Y2kgdXN0YXdpb25lIHcgaXN0bmllarFjeWNoIHptaWVubnljaCC2cm9kb3dpc2tvd3ljaCBvCit0eWNoIHNhbXljaCBuYXp3YWNoLCBjbyB1v3l3YW5lIHcgc2tyeXB0YWNoIChucC4gdb95dGUgcHJ6ZXoKK1xmQmRwa2dcLWFyY2hpdGVjdHVyZVxmUCksIGNoeWJhIL9lIGplc3Qgb2JlY25hIHRhIGZsYWdhIHd5bXVzemVuaWEuIFBvendhbGEgdG8KK25hIG5hZHBpc2FuaWUgd2FydG+2Y2kgbmF3ZXQgamW2bGkgd3l3b7NhbmllIFxmQmRwa2dcLWFyY2hpdGVjdHVyZVxmUCBqZXN0Cit1a3J5dGUgZ7PqYm9rbyB3IGpha2lttiBpbm55bSBza3J5cGNpZSAobnAuIFxmQmRwa2dcLWJ1aWxkcGFja2FnZVxmUCgxKSkuCisuCisuU0ggV0FSVU5LSQorLklQICJtYXN6eW5hIGJ1ZG93YW5pYSIgNAorUm9kemFqIG1hc3p5bnksIG5hIGt083JlaiBwYWtpZXQgamVzdCBidWRvd2FueS4KKy5JUCAibWFzenluYSBkb2NlbG93YSIgNAorUm9kemFqIG1hc3p5bnksIGRsYSBrdPNyZWogcGFraWV0IGplc3QgYnVkb3dhbnkuCisuSVAgImFyY2hpdGVrdHVyYSBEZWJpYW5hIiA0CiujYfFjdWNoIHpuYWvzdyB6YXdpZXJharFjeSBhcmNoaXRla3R1cuogRGViaWFuYSwga3TzcmEgb2tyZbZsYSBkcnpld28KK2JpbmFybmUgdyBhcmNoaXd1bSBccy0xRlRQXHMwLiBQcnp5a7NhZHk6IGkzODYsIHNwYXJjLCBodXJkXC1pMzg2LgorLklQICJtYXNrYSBhcmNoaXRla3R1cnkiIDQKK01hc2thIGFyY2hpdGVrdHVyeSBqZXN0IHNwZWNqYWxueW0gs2HxY3VjaGVtIHpuYWvzdywga3TzcnkgYupkemllIHBhc293YbMgZG8KK2thv2RlaiBhcmNoaXRla3R1cnksIGt083JhIGplc3QgamVnbyBjeuq2Y2mxLiBPZ/NsbmEgcG9zdGHmIGplc3QKK25hc3TqcHVqsWNhOiA8arFkcm8+XC08cHJvY2Vzb3I+LiBQcnp5a7NhZHk6IGxpbnV4XC1hbnksCithbnlcLWkzODYsIGh1cmRcLWFueS4KKy5JUCAidHlwIHN5c3RlbXUgXHMtMUdOVVxzMCIgNAoro2HxY3VjaCB6bmFr83cgb2tyZbZsYWqxY3kgYXJjaGl0ZWt0dXLqIHNrs2FkYWqxY3kgc2nqIHogZHfzY2ggY3rqtmNpCitvZGR6aWVsb255Y2ggbXm2bG5pa2llbTogcHJvY2Vzb3IgaSBzeXN0ZW0uIFByenlrs2FkeTogaTM4NlwtbGludXhcLWdudSwKK3NwYXJjXC1saW51eFwtZ251LCBpMzg2XC1nbnUsIHg4Nl82NFwtbmV0YnNkLgorLgorLlNIIFpNSUVOTkUKK1xmQmRwa2dcLWFyY2hpdGVjdHVyZVxmUCB1c3Rhd2lhIG5hc3TqcHVqsWNlIHptaWVubmU6CisuSVAgXHMtMURFQl9CVUlMRF9BUkNIXHMwIDQKK0FyY2hpdGVrdHVyYSB3ZyBEZWJpYW5hIGtvbXB1dGVyYSwgbmEga3TzcnltIGJ1ZG93YW55IGplc3QgcGFraWV0LgorLklQIFxzLTFERUJfQlVJTERfQVJDSF9PU1xzMCA0CitOYXp3YSBzeXN0ZW11IHdnIERlYmlhbmEga29tcHV0ZXJhLCBuYSBrdPNyeW0gYnVkb3dhbnkgamVzdCBwYWtpZXQuCisuSVAgXHMtMURFQl9CVUlMRF9BUkNIX0NQVVxzMCA0CitOYXp3YSBwcm9jZXNvcmEgd2cgRGViaWFuYSBrb21wdXRlcmEsIG5hIGt083J5bSBidWRvd2FueSBqZXN0IHBha2lldC4KKy5JUCBccy0xREVCX0JVSUxEX0FSQ0hfQklUU1xzMCA0CitSb3ptaWFyIHdza2G8bmlrYSBuYSBrb21wdXRlcnplIGJ1ZHVqsWN5bSAodyBiaXRhY2gpLgorLklQIFxzLTFERUJfQlVJTERfQVJDSF9FTkRJQU5cczAgNAorS29sZWpub7bmIGJhanTzdyAoZW5kaWFuKSBuYSBrb21wdXRlcnplIGJ1ZHVqsWN5bSAobGl0dGxlIC8gYmlnKS4KKy5JUCBccy0xREVCX0JVSUxEX0dOVV9DUFVcczAgNAorVGhlIFxzLTFDUFVcczAgcGFydCBvZiBccy0xREVCX0JVSUxEX0dOVV9UWVBFXHMwLgorLklQIFxzLTFERUJfQlVJTERfR05VX1NZU1RFTVxzMCA0CitDemW25iBkb3R5Y3qxY2Egc3lzdGVtdSB6IFxzLTFERUJfQlVJTERfR05VX1RZUEVcczAuCisuSVAgXHMtMURFQl9CVUlMRF9HTlVfVFlQRVxzMCA0CitUeXAgc3lzdGVtdSBccy0xR05VXHMwIGtvbXB1dGVyYSwgbmEga3TzcnltIGJ1ZG93YW55IGplc3QgcGFraWV0LgorLklQIFxzLTFERUJfQlVJTERfTVVMVElBUkNIXHMwIDQKK1RoZSBjbGFyaWZpZWQgXHMtMUdOVVxzMCBzeXN0ZW0gdHlwZSBvZiB0aGUgYnVpbGQgbWFjaGluZSwgdXNlZCBmb3IKK2ZpbGVzeXN0ZW0gcGF0aHMuCisuSVAgXHMtMURFQl9IT1NUX0FSQ0hcczAgNAorQXJjaGl0ZWt0dXJhIHdnIERlYmlhbmEgZGxhIG1hc3p5bnkgZG9jZWxvd2VqLgorLklQIFxzLTFERUJfQlVJTERfQVJDSF9PU1xzMCA0CitOYXp3YSBzeXN0ZW11IHdnIERlYmlhbmEgZGxhIG1hc3p5bnkgZG9jZWxvd2VqLgorLklQIFxzLTFERUJfSE9TVF9BUkNIX0NQVVxzMCA0CitOYXp3YSBwcm9jZXNvcmEgd2cgRGViaWFuYSBkbGEgbWFzenlueSBkb2NlbG93ZWouCisuSVAgXHMtMURFQl9IT1NUX0FSQ0hfQklUU1xzMCA0CitSb3ptaWFyIHdza2G8bmlrYSBuYSBtYXN6eW5pZSBkb2NlbG93ZWogKHcgYml0YWNoKS4KKy5JUCBccy0xREVCX0hPU1RfQVJDSF9FTkRJQU5cczAgNAorS29sZWpub7bmIGJhanTzdyAoZW5kaWFuKSBuYSBtYXN6eW5pZSBkb2NlbG93ZWogKGxpdHRsZSAvIGJpZykuCisuSVAgXHMtMURFQl9IT1NUX0dOVV9DUFVcczAgNAorQ3rqtuYgZG90eWN6sWNhIFxzLTFDVVBcczAgeiBccy0xREVCX0hPU1RfR05VX1RZUEVcczAuCisuSVAgXHMtMURFQl9IT1NUX0dOVV9TWVNURU1cczAgNAorQ3rqtuYgZG90eWN6sWNhIHN5c3RlbXUgeiBccy0xREVCX0hPU1RfR05VX1RZUEVcczAuCisuSVAgXHMtMURFQl9IT1NUX0dOVV9UWVBFXHMwIDQKK1R5cCBzeXN0ZW11IFxzLTFHTlVcczAgZGxhIG1hc3p5bnkgZG9jZWxvd2VqLgorLklQIFxzLTFERUJfSE9TVF9NVUxUSUFSQ0hcczAgNAorVGhlIGNsYXJpZmllZCBccy0xR05VXHMwIHN5c3RlbSB0eXBlIG9mIHRoZSBob3N0IG1hY2hpbmUsIHVzZWQgZm9yCitmaWxlc3lzdGVtIHBhdGhzLgorLgorLlNIIERFQklBTi9SVUxFUworWm1pZW5uZSC2cm9kb3dpc2tvd2UgdXN0YXdpb25lIHByemV6IFxmQmRwa2dcLWFyY2hpdGVjdHVyZVxmUCBzsSBwcnpla2F6eXdhbmUgZG8KK1xmSWRlYmlhbi9ydWxlc1xmUCBqYWtvIHptaWVubmUgcHJvZ3JhbXUgbWFrZSAocGF0cnogZG9rdW1lbnRhY2phIGRvCittYWtlKS4gSmVkbmFrv2UgbmllIG5hbGW/eSBuYSBuaWNoIHBvbGVnYeYsIGdkeb8gcHN1amUgdG8gcupjem5lCit1cnVjaG9taWVuaWUgdGVnbyBza3J5cHR1LiBaYW1pYXN0IHRlZ28sIG5hbGW/eSB6YXdzemUgaW5pY2pvd2HmIGplLAordb95d2FqsWMgXGZCZHBrZ1wtYXJjaGl0ZWN0dXJlXGZQIHogb3BjarEgXC1xLiBQb25pv2VqIHpuYWpkdWplIHNp6iBwYXLqCitwcnp5a7NhZPN3LCBrdPNyZSB0YWu/ZSBwb2thenVqsSwgamFrIG1vv25hIHBvbGVwc3p55iB3c3BhcmNpZSBkbGEKK2tvbXBpbGFjamkga3J6eb9vd2VqIHBha2lldHU6CisuUFAKKworWmFtaWFzdDoKKy5JUAorLm5mCitBUkNIPVxgZHBrZyBcLVwtcHJpbnRcLWFyY2hpdGVjdHVyZVxgCitjb25maWd1cmUgJChccy0xQVJDSFxzMClcLWxpbnV4CisuZmkKKy5QUAorcHJvc3rqIHW/eXdh5joKKy5JUAorLm5mCitcJlxzLTFERUJfQlVJTERfR05VX1RZUEVcczAgOj0gJChzaGVsbCBkcGtnXC1hcmNoaXRlY3R1cmUgXC1xREVCX0JVSUxEX0dOVV9UWVBFKQorXCZccy0xREVCX0hPU1RfR05VX1RZUEVcczAgOj0gJChzaGVsbCBkcGtnXC1hcmNoaXRlY3R1cmUgXC1xREVCX0hPU1RfR05VX1RZUEUpCisKK2NvbmZpZ3VyZSBcLVwtYnVpbGQ9JChccy0xREVCX0JVSUxEX0dOVV9UWVBFXHMwKSBcLVwtaG9zdD0kKFxzLTFERUJfSE9TVF9HTlVfVFlQRVxzMCkKKy5maQorLlBQCisKK1phbWlhc3Q6CisuSVAKKy5uZgorQVJDSD1cYGRwa2cgXC1cLXByaW50XC1hcmNoaXRlY3R1cmVcYAoraWZlcSAoJChccy0xQVJDSFxzMCksYWxwaGEpCisgIC4uLgorZW5kaWYKKy5maQorLlBQCitwcm9zeuogdb95d2HmOgorLklQCisubmYKK1wmXHMtMURFQl9IT1NUX0FSQ0hcczAgOj0gJChzaGVsbCBkcGtnXC1hcmNoaXRlY3R1cmUgXC1xREVCX0hPU1RfQVJDSCkKKworaWZlcSAoJChccy0xREVCX0hPU1RfQVJDSFxzMCksYWxwaGEpCisgIC4uLgorZW5kaWYKKy5maQorLlBQCithbGJvIGpltmxpIHRyemViYSBzcHJhd2R6aeYgdHlsa28gdHlwIENQVSBsdWIgT1MsIG5hbGW/eSB1v3nmIHptaWVubnljaAorREVCX0hPU1RfQVJDSF9DUFUgbHViIERFQl9IT1NUX0FSQ0hfT1MuCisuUFAKK09n82xuaWUgd3l3b7N5d2FuaWUgZHBrZyB3IHBsaWt1IHJ1bGVzIHcgY2VsdSBwb2JyYW5pYSBpbmZvcm1hY2ppIG8KK2FyY2hpdGVrdHVyemUgamVzdCBwcnplc3Rhcnphs2UgKGNoeWJhIL9lIGNoY2Ugc2nqIHphY2hvd2HmIGtvbXBhdHliaWxub7bmCit3c3RlY3pusSwgcGF0cnogbmm/ZWopLiBXIHN6Y3plZ/Nsbm+2Y2kgb3BjamEgXC1cLXByaW50XC1hcmNoaXRlY3R1cmUgamVzdAorbmllemJ5dCB3aWFyeWdvZG5hLCBwb25pZXdhvyBpc3RuaWVqsSBhcmNoaXRla3R1cnkgRGViaWFuYSwga3TzcmUgbmllIHOxCity83duZSBuYXp3aWUgcHJvY2Vzb3JhLgorLgorLlNIICJLT01QQVRZQklMTk+mxiBXU1RFQ1pOQSIKK1ptaWVubmUgREVCXypfQVJDSF9CSVRTIG9yYXogREVCXypfQVJDSF9FTkRJQU4gem9zdGGzeSB3cHJvd2Fkem9uZSB3CitkcGtnXC1kZXYgMS4xNS40LiBVv3l3YW5pZSBpY2ggdyBcZklkZWJpYW4vcnVsZXNcZlAgd3ltYWdhIHdp6mMgemFsZb9ub7ZjaSBjemFzdQorYnVkb3dhbmlhIGRsYSBkcGtnXC1kZXYgKD49IDEuMTUuNCkuCisuUFAKK1ptaWVubmUgREVCX0hPU1RfQVJDSF9DUFUgb3JheiBERUJfSE9TVF9BUkNIX09TIHOxIGRvc3TqcG5lIHcgbWlhcuogbm93eWNoCit3ZXJzamFjaCBcZkJkcGtnXC1hcmNoaXRlY3R1cmVcZlAgKG9kIGRwa2cgMS4xMy4yKS4gV2N6ZbZuaWVqIHcgcGxpa2FjaAorXGZJZGViaWFuL3J1bGVzXGZQIGJ5s3kgc3ByYXdkemFuZSB6bWllbm5lIERFQl9IT1NUX0dOVV9DUFUgbHViCitERUJfSE9TVF9HTlVfVFlQRSwga3TzcmUgem9zdGGzeSB6bWllbmlvbmUuCisuUFAKK1dzenlzdGtpZSBwbGlraSBcZklkZWJpYW4vcnVsZXNcZlAsIGRlY3lkdWqxY2UgbmEgcG9kc3Rhd2llIHR5Y2ggem1pZW5ueWNoIGphaworaSBjbyBrb21waWxvd2HmLCBwb3dpbm55IGJ55iB6YWt0dWFsaXpvd2FuZSBpIHByenlzdG9zb3dhbmUgZG8gdb95d2FuaWEKK25vd3ljaCB6bWllbm55Y2ggaSBpY2ggd2FydG+2Y2kuIEFieSB6YWNob3dh5iB3c3RlY3pusSBrb21wYXR5Ymlsbm+25iB6Citwb3ByemVkbmltaSB3ZXJzamFtaSBkcGtnXC1kZXYsIG1vv25hIHW/eeYgbmFzdOpwdWqxY2VnbyBrb2R1OgorLklQCisubmYKK0RFQl9IT1NUX0FSQ0hfQ1BVIDo9ICQoc2hlbGwgZHBrZ1wtYXJjaGl0ZWN0dXJlIFwtcURFQl9IT1NUX0FSQ0hfQ1BVIDI+L2Rldi9udWxsKQorREVCX0hPU1RfQVJDSF9PUyA6PSAkKHNoZWxsIGRwa2dcLWFyY2hpdGVjdHVyZSBcLXFERUJfSE9TVF9BUkNIX09TIDI+L2Rldi9udWxsKQorCisjIEJpZXJ6ZSBwb2QgdXdhZ+ogd3lqtmNpZSB6ZSBzdGFyZWdvIGRwa2dcLWFyY2hpdGVjdHVyZS4KK2lmZXEgKCQoREVCX0hPU1RfQVJDSF9DUFUpLCkKKyAgREVCX0hPU1RfQVJDSF9DUFUgOj0gJChzaGVsbCBkcGtnXC1hcmNoaXRlY3R1cmUgXC1xREVCX0hPU1RfR05VX0NQVSkKKyAgaWZlcSAoJChERUJfSE9TVF9BUkNIX0NQVSkseDg2XzY0KQorICAgIERFQl9IT1NUX0FSQ0hfQ1BVIDo9IGFtZDY0CisgIGVuZGlmCitlbmRpZgoraWZlcSAoJChERUJfSE9TVF9BUkNIX09TKSwpCisgIERFQl9IT1NUX0FSQ0hfT1MgOj0gJChzdWJzdCBcLWdudSwsJChzaGVsbCBkcGtnXC1hcmNoaXRlY3R1cmUgXC1xREVCX0hPU1RfR05VX1NZU1RFTSkpCisgIGlmZXEgKCQoREVCX0hPU1RfQVJDSF9PUyksZ251KQorICAgIERFQl9IT1NUX0FSQ0hfT1MgOj0gaHVyZAorICBlbmRpZgorZW5kaWYKKy5maQorLlBQCitJIHBvZG9ibmllIGRsYSBERUJfQlVJTERfQVJDSF9DUFUgb3JheiBERUJfQlVJTERfQVJDSF9PUy4KKy5QUAorSmW2bGkgY2hjZXN6IHdjabG/IG9ic7N1Z2l3YeYgd2Vyc2plIGRwa2dcLWRldiwga3TzcmUgbmllIHphd2llcmFqsQorXGZCZHBrZ1wtYXJjaGl0ZWN0dXJlXGZQLCB0byBwb25pv3N6eSBrb2Qgd3lrb251amUgdG8gemFkYW5pZToKKy5JUAorLm5mCitcJlxzLTFERUJfQlVJTERfQVJDSFxzMCA6PSAkKHNoZWxsIGRwa2cgXC1cLXByaW50XC1hcmNoaXRlY3R1cmUpCitcJlxzLTFERUJfQlVJTERfR05VX0NQVVxzMCA6PSAkKHBhdHN1YnN0IGh1cmRcLSUsJSwkKFxzLTFERUJfQlVJTERfQVJDSFxzMCkpCitpZmVxICgkKGZpbHRlclwtb3V0IGh1cmRcLSUsJChccy0xREVCX0JVSUxEX0FSQ0hcczApKSwpCisgIFxzLTFERUJfQlVJTERfR05VX1NZU1RFTVxzMCA6PSBnbnUKK2Vsc2UKKyAgXHMtMURFQl9CVUlMRF9HTlVfU1lTVEVNXHMwIDo9IGxpbnV4XC1nbnUKK2VuZGlmCitERUJfQlVJTERfR05VX1RZUEU9JChccy0xREVCX0JVSUxEX0dOVV9DUFVcczApXC0kKFxzLTFERUJfQlVJTERfR05VX1NZU1RFTVxzMCkKKworXCZccy0xREVCX0hPU1RfQVJDSFxzMCA6PSAkKFxzLTFERUJfQlVJTERfQVJDSFxzMCkKK1wmXHMtMURFQl9IT1NUX0dOVV9DUFVcczAgOj0gJChccy0xREVCX0JVSUxEX0dOVV9DUFVcczApCitcJlxzLTFERUJfSE9TVF9HTlVfU1lTVEVNXHMwIDo9ICQoXHMtMURFQl9CVUlMRF9HTlVfU1lTVEVNXHMwKQorXCZccy0xREVCX0hPU1RfR05VX1RZUEVcczAgOj0gJChccy0xREVCX0JVSUxEX0dOVV9UWVBFXHMwKQorLmZpCisuUFAKK1VtaWW25iBwb2R6YmnzciB0eWNoIGxpbmlpIG5hIGfzcnplIHBsaWt1IGRlYmlhbi9ydWxlczsgdGUgZG9tebZsbmUgd2FydG+2Y2kKK2LqZLEgbmFkcGlzYW5lIHByemV6IGRwa2dcLWFyY2hpdGVjdHVyZSwgamW2bGkgamVzdCB1v3l3YW5lLgorLlBQCitOaWUgbWEgcG90cnplYnkgdb95d2FuaWEgcGWzbmVnbyB6ZXN0YXd1IHptaWVubnljaC4gTW+/bmEgd3licmHmIHNw82pueSBpY2gKK3piafNyLCB6YXdpZXJharFjeSB3YXJ0b7ZjaSB1v3l3YW5lIHcgcGxpa3UgcnVsZXMuIE5hIHByenlrs2FkLCBqZb9lbGkKK3BvdHJ6ZWJuYSBqZXN0IHR5bGtvIGFyY2hpdGVrdHVyYSBEZWJpYW5hIG1hc3p5bnksIGRsYSBrdPNyZWogYnVkb3dhbnkgamVzdAorcGFraWV0LCB3eXN0YXJjemFqsWNlIGplc3Qgdb95Y2llICJERUJfSE9TVF9BUkNIPVxgZHBrZworXC1cLXByaW50XC1hcmNoaXRlY3R1cmVcYCIgKHRhayBuYXByYXdk6iBqZXN0IHRvIGFyY2hpdGVrdHVyYSBEZWJpYW5hIG1hc3p5bnksCituYSBrdPNyZWogamVzdCBidWRvd2FueSBwYWtpZXQsIGFsZSBwcm9zeuogcGFtaep0YeYsIL9lIHBy82J1amVteSB0eWxrbworemFjaG93YeYgd3N0ZWN6brEgemdvZG5vtuYgeiBuYXR5d26xIGtvbXBpbGFjarEpLgorLlBQCitPcGNqZSBcZkJcLWVcZlAgaSBcZkJcLWlcZlAgem9zdGGzeSB3cHJvd2Fkem9uZSB3IG1pYXLqIG5vd3ljaCB3ZXJzamFjaAorXGZCZHBrZ1wtYXJjaGl0ZWN0dXJlXGZQIChvZCB3ZXJzamkgZHBrZyAxLjEzLjEzKS4KKy4KKy5TSCBQUlpZS6NBRFkKK1xmQmRwa2dcLWJ1aWxkcGFja2FnZVxmUCBha2NlcHR1amUgb3BjauogXGZCXC1hXGZQIGkgcHJ6ZWthenVqZSBqsSBkbworXGZCZHBrZ1wtYXJjaGl0ZWN0dXJlXGZQLiBJbm5lIHByenlrs2FkeToKKy5JUAorQ0M9aTM4NlwtZ251XC1nY2MgZHBrZ1wtYXJjaGl0ZWN0dXJlIFwtYyBkZWJpYW4vcnVsZXMgYnVpbGQKKy5JUAorZXZhbCBcYGRwa2dcLWFyY2hpdGVjdHVyZSBcLXVcYAorLlBQCitTcHJhd2R6YW5pZSwgY3p5IGFyY2hpdGVrdHVyYSBqZXN0IHLzd25hIGFyY2hpdGVrdHVyemUgYmllv7FjZWogbHViIHBvZGFuZWo6CisuSVAKK2Rwa2dcLWFyY2hpdGVjdHVyZSBcLWVsaW51eFwtYWxwaGEKKy5JUAorZHBrZ1wtYXJjaGl0ZWN0dXJlIFwtYW1pcHMgXC1lbGludXhcLW1pcHMKKy5QUAorU3ByYXdkemFuaWUsIGN6eSBhcmNoaXRla3R1cmEgYmllv7FjYSBwb2RhbmEgcHJ6ZXogXC1hIGplc3Qgc3lzdGVtZW0gTGludWtzYToKKy5JUAorZHBrZ1wtYXJjaGl0ZWN0dXJlIFwtaWxpbnV4XC1hbnkKKy5JUAorZHBrZ1wtYXJjaGl0ZWN0dXJlIFwtYWkzODYgXC1pbGludXhcLWFueQorLgorLlNIIFBMSUtJCitBbGwgdGhlc2UgZmlsZXMgaGF2ZSB0byBiZSBwcmVzZW50IGZvciBcZkJkcGtnXC1hcmNoaXRlY3R1cmVcZlAgdG8gd29yay4gVGhlaXIKK2xvY2F0aW9uIGNhbiBiZSBvdmVycmlkZGVuIGF0IHJ1bnRpbWUgd2l0aCB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGUKK1xmQkRQS0dfREFUQURJUlxmUC4KKy5UUCAKK1xmSS91c3Ivc2hhcmUvZHBrZy9jcHV0YWJsZVxmUAorVGFiZWxhIHpuYW55Y2ggbmF6dyBwcm9jZXNvcvN3IGkgaWNoIG1hcG93YW5pZSBuYSBuYXp3eSBHTlUuCisuVFAgCitcZkkvdXNyL3NoYXJlL2Rwa2cvb3N0YWJsZVxmUAorVGFiZWxhIG5hencgem5hbnljaCBzeXN0ZW3zdyBvcGVyYWN5am55Y2ggaSBpY2ggbWFwb3dhbmllIG5hIG5hend5IEdOVS4KKy5UUCAKK1xmSS91c3Ivc2hhcmUvZHBrZy90cmlwbGV0dGFibGVcZlAKK01hcG93YW5pZSBtaepkenkgdHLzamthbWkgYXJjaGl0ZWt0dXIgRGViaWFuYSBhIG5hendhbWkgYXJjaGl0ZWt0dXIgRGViaWFuYS4KKy4KKy5TSCAiWk9CQUNaIFRBS69FIgorXGZCZHBrZ1wtYnVpbGRwYWNrYWdlXGZQKDEpLCBcZkJkcGtnXC1jcm9zc1xmUCgxKS4KKy4KKy5TSCBBVVRPUgorXGZCZHBrZ1wtYXJjaGl0ZWN0dXJlXGZQIGkgdGEgc3Ryb25hIHBvZHLqY3puaWthIGVrcmFub3dlZ28gem9zdGGzeSBuYXBpc2FuZQorTWFyY3VzYSBCcmlua21hbm5hIDxicmlua21kQGRlYmlhbi5vcmc+LgorCisuU0ggIlSjVU1BQ1pFIgorUGlvdHIgUm9zemF0eWNraSA8ZGV4dGVyQGRlYmlhbi5vcmc+LCAxOTk5CisuYnIKK0JhcnRvc3ogRmXxc2tpIDxmZW5pb0BkZWJpYW4ub3JnPiwgMjAwNC0yMDA1CisuYnIKK1JvYmVydCBMdWJlcmRhIDxyb2JlcnRAZGViaWFuLm9yZz4sIDIwMDYtMjAwOAorLmJyCitXaWt0b3IgV2FuZGFjaG93aWN6IDxzaXJ5ZXNAZ21haWwuY29tPiwgMjAwOApkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vcGwvZHBrZy1idWlsZHBhY2thZ2UuMSBiL2Rwa2ctMS4xNi4xLjEvbWFuL3BsL2Rwa2ctYnVpbGRwYWNrYWdlLjEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZjQ4MDk1ZAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL3BsL2Rwa2ctYnVpbGRwYWNrYWdlLjEKQEAgLTAsMCArMSwyNTkgQEAKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlRIIGRwa2dcLWJ1aWxkcGFja2FnZSAxIDIwMTFcLTA4XC0xNCAiUHJvamVrdCBEZWJpYW5hIiAicHJvZ3JhbXkgcG9tb2NuaWN6ZSBkcGtnIgorLlNIIE5BWldBCitkcGtnXC1idWlsZHBhY2thZ2UgXC0gYnVkdWplIHBha2lldHkgvHLzZLNvd2UgbHViIGJpbmFybmUgemUgvHLzZGWzCisuCisuU0ggU0ujQUROSUEKK1xmQmRwa2dcLWJ1aWxkcGFja2FnZVxmUCBbXGZJb3B0aW9uXGZQLi4uXQorLgorLlNIIE9QSVMKK1xmQmRwa2dcLWJ1aWxkcGFja2FnZVxmUCBqZXN0IHByb2dyYW1lbSBhdXRvbWF0eXp1arFjeW0gcHJvY2VzIGJ1ZG93YW5pYSBwYWtpZXR1CitEZWJpYW5hLiBQcm9jZXMgdGVuIHNrs2FkYSBzaeogeiBuYXN06nB1arFjeWNoIGtyb2vzdzoKKy5JUCBcZkIxLlxmUCAzCitJdCBwcmVwYXJlcyB0aGUgYnVpbGQgZW52aXJvbm1lbnQgYnkgc2V0dGluZyB2YXJpb3VzIGVudmlyb25tZW50IHZhcmlhYmxlcworKHNlZSBcZkJFTlZJUk9OTUVOVFxmUCkgYW5kIGNhbGxzIFxmQmRwa2dcLXNvdXJjZSBcLVwtYmVmb3JlXC1idWlsZFxmUCAodW5sZXNzIFxmQlwtVFxmUAorb3IgXGZCXC1cLXRhcmdldFxmUCBoYXMgYmVlbiB1c2VkKS4KKy5JUCBcZkIyLlxmUCAzCitTcHJhd2R6YSBjenkgemFsZb9ub7ZjaSBpIGtvbmZsaWt0eSBjemFzdSBidWRvd2FuaWEgc7Egc3Bls25pb25lIChvIGlsZSBuaWUKK2plc3QgcG9kYW5lIFxmQlwtZFxmUCkuCisuSVAgXGZCMy5cZlAgMworSmW2bGkgb2tyZbZsb255IGNlbCB6b3N0YbMgd3NrYXphbnkgeiB1v3ljaWVtIG9wY2ppIFxmQlwtVFxmUCBsdWIgXGZCXC1cLXRhcmdldFxmUCwKK3d5d2+zdWplIHRlbiBjZWwgaSBuYSB0eW0ga2/xY3p5LiBXIHByemVjaXdueW0gd3lwYWRrdSB3eXdvs3VqZSBcZkJmYWtlcm9vdAorZGViaWFuL3J1bGVzIGNsZWFuXGZQLCBhYnkgd3ljenm2Y2nmIGRyemV3byBidWRvd2FuaWEgcGFraWV0dSAoY2h5YmEgv2Ugdb95amUKK3Np6iBvcGNqaSBcZkJcLW5jXGZQKS4KKy5JUCBcZkI0LlxmUCAzCitJdCBjYWxscyBcZkJkcGtnXC1zb3VyY2UgXC1iXGZQIHRvIGdlbmVyYXRlIHRoZSBzb3VyY2UgcGFja2FnZSAodW5sZXNzIGEKK2JpbmFyeVwtb25seSBidWlsZCBoYXMgYmVlbiByZXF1ZXN0ZWQgd2l0aCBcZkJcLWJcZlAsIFxmQlwtQlxmUCBvciBcZkJcLUFcZlApLgorLklQIFxmQjUuXGZQIDMKK0l0IGNhbGxzIFxmQmRlYmlhbi9ydWxlc1xmUCBcZkJidWlsZFxmUCBmb2xsb3dlZCBieSBcZkJmYWtlcm9vdCBkZWJpYW4vcnVsZXNcZlAKK1xmSWJpbmFyeVwtdGFyZ2V0XGZQICh1bmxlc3MgYSBzb3VyY2VcLW9ubHkgYnVpbGQgaGFzIGJlZW4gcmVxdWVzdGVkIHdpdGgKK1xmQlwtU1xmUCkuIE5vdGUgdGhhdCBcZkliaW5hcnlcLXRhcmdldFxmUCBpcyBlaXRoZXIgXGZCYmluYXJ5XGZQIChkZWZhdWx0IGNhc2UsIG9yIGlmCitcZkJcLWJcZlAgaXMgc3BlY2lmaWVkKSAgb3IgXGZCYmluYXJ5XC1hcmNoXGZQIChpZiBcZkJcLUJcZlAgaXMgc3BlY2lmaWVkKSBvcgorXGZCYmluYXJ5XC1pbmRlcFxmUCAoaWYgXGZCXC1BXGZQIGlzIHNwZWNpZmllZCkuCisuSVAgXGZCNi5cZlAgMworV3l3b7N1amUgXGZCZ3BnXGZQIGFieSBwb2RwaXNh5iBwbGlrIFxmQi5kc2NcZlAgKGpltmxpIGplc3QsIGNoeWJhIL9lIHBvZGFubyBvcGNq6gorXGZCXC11c1xmUCkuCisuSVAgXGZCNy5cZlAgMworV3l3b7N1amUgXGZCZHBrZ1wtZ2VuY2hhbmdlc1xmUCBhYnkgd3lnZW5lcm93YeYgcGxpayBcZkIuY2hhbmdlc1xmUC4gRG8KK1xmQmRwa2dcLWdlbmNoYW5nZXNcZlAgcHJ6ZWthenl3YW55Y2ggamVzdCB3aWVsZSBvcGNqaSBcZkJkcGtnXC1idWlsZHBhY2thZ2VcZlAuCisuSVAgXGZCOC5cZlAgMworV3l3b7N1amUgXGZCZ3BnXGZQIGFieSBwb2RwaXNh5iBwbGlrIFxmQi5jaGFuZ2VzXGZQIChjaHliYSC/ZSBwb2Rhbm8gb3BjauoKK1xmQlwtdWNcZlApLgorLklQIFxmQjkuXGZQIDMKK0lmIFxmQlwtdGNcZlAgaXMgc3BlY2lmaWVkLCBpdCB3aWxsIGNhbGwgXGZCZmFrZXJvb3QgZGViaWFuL3J1bGVzIGNsZWFuXGZQCithZ2Fpbi4gRmluYWxseSBpdCBjYWxscyBcZkJkcGtnXC1zb3VyY2UgXC1cLWFmdGVyXC1idWlsZFxmUC4KKy4KKy5TSCBPUENKRQorLlRQIAorXGZCXC1iXGZQCitPa3JltmxhIGJ1ZG93YW5pZSB0eWxrbyBwYWtpZXTzdyBiaW5hcm55Y2gsIL9hZG5lIHBsaWtpILxy82Szb3dlIG5pZSBi6mSxCitidWRvd2FuZSBhbmkgZHlzdHJ5YnVvd2FuZS4gUHJ6ZWthenl3YW5lIGRvIFxmQmRwa2dcLWdlbmNoYW5nZXNcZlAuCisuVFAgCitcZkJcLUJcZlAKK09rcmW2bGEgYnVkb3dhbmllIHR5bGtvIHBha2lldPN3IGJpbmFybnljaCwgb2dyYW5pY3pvbmUgZG8gcGFraWV083cKK3phbGW/bnljaCBvZCBhcmNoaXRla3R1cnkuIFByemVrYXp5d2FuZSBkbyBcZkJkcGtnXC1nZW5jaGFuZ2VzXGZQLgorLlRQIAorXGZCXC1BXGZQCitPa3JltmxhIGJ1ZG93YW5pZSB0eWxrbyBwYWtpZXTzdyBiaW5hcm55Y2gsIG9ncmFuaWN6b25lIGRvIHBha2lldPN3CituaWV6YWxlv255Y2ggb2QgYXJjaGl0ZWt0dXJ5LiBQcnpla2F6eXdhbmUgZG8gXGZCZHBrZ1wtZ2VuY2hhbmdlc1xmUC4KKy5UUCAKK1xmQlwtU1xmUAorT2tyZbZsYSBidWRvd2FuaWUgdHlsa28gcGFraWV083cgvHLzZLNvd3ljaCwgYmV6IGJ1ZG93YW5pYSBwYWtpZXTzdworYmluYXJueWNoLiBQcnpla2F6eXdhbmUgZG8gXGZCZHBrZ1wtZ2VuY2hhbmdlc1xmUC4KKy5UUCAKK1xmQlwtRlxmUAorU3BlY2lmaWVzIGEgbm9ybWFsIGZ1bGwgYnVpbGQsIGJpbmFyeSBhbmQgc291cmNlIHBhY2thZ2VzIHdpbGwgYmUgYnVpbHQuCitUaGlzIGlzIHRoZSBzYW1lIGFzIHRoZSBkZWZhdWx0IGNhc2Ugd2hlbiBubyBidWlsZCBvcHRpb24gaXMgc3BlY2lmaWVkLgorLlAKK1xmQlwtXC10YXJnZXQ9XGZQXGZJY2VsXGZQCisuYnIKK1xmQlwtXC10YXJnZXQgXGZQXGZJY2VsXGZQCisuYnIKK1xmQlwtVFxmUFxmSWNlbFxmUAorLlJTCitXeXdvs3VqZSBcZkJkZWJpYW4vcnVsZXNcZlAgXGZJY2VsXGZQIHBvIHByenlnb3Rvd2FuaXUgtnJvZG93aXNrYSBidWRvd2FuaWEgaSBuYQordHltIGtv8WN6eSBwcm9jZXMgYnVkb3dhbmlhIHBha2lldHUuIEpltmxpIHBvZGFuYSB6b3N0YbNhIHLzd25pZb8gb3BjamEKK1xmQlwtXC1hc1wtcm9vdFxmUCwgd3RlZHkgcG9sZWNlbmllIHRvIGplc3Qgd3lrb255d2FuZSB6IHByYXdhbWkKK2FkbWluaXN0cmF0b3JhLiBQcm9zeuogemF1d2G/eeYsIL9lIGNlbGUgb2ZpY2phbG5pZSBva3JltmxvbmUgdyBQb2xpdHljZQorRGViaWFuYSBqYWtvIHd5bWFnYWqxY2UgdXJ1Y2hhbWlhbmlhIHogcHJhd2FtaSBhZG1pbmlzdHJhdG9yYSBuaWUgd3ltYWdharEKK3RlaiBvcGNqaS4KKy5SRQorLlRQIAorXGZCXC1cLWFzXC1yb290XGZQCitabmFjerFjYSBqZWR5bmllIHcgcG+zsWN6ZW5pdSB6IG9wY2qxIFxmQlwtXC10YXJnZXRcZlAuIFd5bXVzemEgdXJ1Y2hvbWllbmllIGNlbHUKK3ogcHJhd2FtaSBhZG1pbmlzdHJhdG9yYS4KKy5QCitcZkJcLXNpXGZQCisuYnIKK1xmQlwtc2FcZlAKKy5icgorXGZCXC1zZFxmUAorLmJyCitcZkJcLXZcZlBcZkl3ZXJzamFcZlAKKy5icgorXGZCXC1DXGZQXGZJb3Bpc196bWlhblxmUAorLmJyCitcZkJcLW1cZlBcZklhZHJlcyBvcGlla3VuYVxmUAorLmJyCitcZkJcLWVcZlBcZklhZHJlc19vcGlla3VuYVxmUAorLlJTCitQcnpla2F6eXdhbmEgYmV6IHptaWFuIGRvIFxmQmRwa2dcLWdlbmNoYW5nZXNcZlAuIFdp6mNlaiBpbmZvcm1hY2ppIG5hIHN0cm9uaWUKK3BvZHLqY3puaWthIHRlZ28gcHJvZ3JhbXUuCisuUkUKKy5UUCAKK1xmQlwtYVxmUFxmSWFyY2hpdGVrdHVyYVxmUAorT2tyZbZsYSBhcmNoaXRla3R1cuogRGViaWFuYSBkbGEga3TzcmVqIGplc3QgYnVkb3dhbnkgcGFraWV0LiBBcmNoaXRla3R1cmEKK21hc3p5bnksIG5hIGt083JlaiBqZXN0IGJ1ZG93YW55IHBha2lldCwgamVzdCBva3JltmxhbmEgYXV0b21hdHljem5pZSBpCitzdGFub3dpIHLzd25pZb8gZG9tebZsbrEgYXJjaGl0ZWt0dXLqIGRvY2Vsb3exLgorLlRQIAorXGZCXC10XGZQXGZJdHlwXC1zeXN0ZW11XC1nbnVcZlAKK09rcmW2bGEgdHlwIHN5c3RlbXUgR05VLCBkbGEga3TzcmVnbyBidWR1amVteS4gTW+/ZSBieeYgdb95dGUgemFtaWFzdCBcLWEgbHViCitqYWtvIHV6dXBls25pZW5pZSBkbyBuYWRwaXNhbmlhIGRvbXm2bG5lZ28gdHlwdSBzeXN0ZW11IEdOVSBkb2NlbG93ZWoKK2FyY2hpdGVrdHVyeSBEZWJpYW5hLgorLlRQIAorXGZCXC1qXGZQXGZJemFkYW5pYVxmUAorTGljemJhIHphZGHxLCBrdPNyZSBtb2exIHpvc3Rh5iBy83dub2N6ZbZuaWUgdXJ1Y2hvbWlvbmUsIG9kcG93aWVkbmlrIG9wY2ppCitcZkJtYWtlXGZQKDEpIG8gdGVqIHNhbWVqIG5hendpZS4gRG9kYWplIHNp6iBkbyB6bWllbm5laiC2cm9kb3dpc2tvd2VqCitNQUtFRkxBR1MsIGNvIHBvd2lubm8gc3Bvd29kb3dh5iwgv2Ugd3N6eXN0a2llIGtvbGVqbmUgd3l3b7NhbmlhIHByb2dyYW11CittYWtlIG9kemllZHppY3qxIHTqIG9wY2rqLiBUYWu/ZSBkb2RhamUgXGZCcGFyYWxsZWw9XGZQXGZJemFkYW5pYVxmUCBkbyB6bWllbm5lagortnJvZG93aXNrb3dlaiBERUJfQlVJTERfT1BUSU9OUywgY28gcG96d2FsYSBwbGlrb20gZGViaWFuL3J1bGVzIG5hCitrb3J6eXN0YW5pZSB6IHRlaiBpbmZvcm1hY2ppIGRsYSBpY2ggd7Nhc255Y2ggY2Vs83cuIFdhcnRvtuYKK1xmQnBhcmFsbGVsPVxmUFxmSXphZGFuaWFcZlAgem1pZW5uZWogtnJvZG93aXNrYSBERUJfQlVJTERfT1BUSU9OUyBuYWRwaXN1amUKK3dhcnRvtuYgcHJ6ZWthemFusSB3IG9wY2ppIFxmQlwtalxmUCwgamW2bGkgem9zdGGzYSBvbmEgcG9kYW5hLgorLlRQIAorXGZCXC1EXGZQCitTcHJhd2R6YSB6YWxlv25vtmNpIGkga29uZmxpa3R5IGN6YXN1IGJ1ZG93YW5pYSwgcHJ6ZXJ5d2EgZHppYbNhbmllIHogYrPqZGVtCitqZb9lbGkgbmllIGLqZLEgc3Bls25pb25lLiBKZXN0IHRvIHphY2hvd2FuaWUgZG9tebZsbmUuCisuVFAgCitcZkJcLWRcZlAKK05pZSBzcHJhd2R6YSB6YWxlv25vtmNpIGN6YXN1IGJ1ZG93YW5pYSBhbmkga29uZmxpa3Tzdy4KKy5UUCAKK1xmQlwtbmNcZlAKK1BvbWlqYSBjenlzemN6ZW5pZSBkcnpld2EgvHLzZGWzIHBha2lldHUgKGltcGxpa3VqZSBcZkJcLWJcZlAsIGpltmxpIG5pYyBpbm5lZ28KK25pZSB6b3N0YbNvIHd5YnJhbmUgc3BvtnLzZCBcZkJcLUJcZlAsIFxmQlwtQVxmUCBvcmF6IFxmQlwtU1xmUCkuCisuVFAgCitcZkJcLXRjXGZQCitQbyB6YnVkb3dhbml1IHBha2lldHUgY3p5tmNpIGthdGFsb2cgemUgvHLzZLNhbWkgKHW/eXdharFjCitcZklnYWluXC1yb290XC1jb21tYW5kXGZQIFxmQmRlYmlhbi9ydWxlcyBjbGVhblxmUCkuCisuVFAgCitcZkJcLXJcZlBcZklwb2xlY2VuaWVcLXV6eXNraXdhbmlhXC1wcmF3XC1hZG1pbmlzdHJhdG9yYVxmUAorS2llZHkgXGZCZHBrZ1wtYnVpbGRwYWNrYWdlXGZQIHBvdHJ6ZWJ1amUgd3lrb25h5iBjeuq25iBwcm9jZXN1IGJ1ZG93YW5pYSBqYWtvCithZG1pbmlzdHJhdG9yLCBwb3ByemVkemEgd3lrb255d2FuZSBwb2xlY2VuaWEKK1xmSXBvbGVjZW5pZW1cLXV6eXNraXdhbmlhXC1wcmF3XC1hZG1pbmlzdHJhdG9yYVxmUCwgamW2bGkgdGFrb3dlIHpvc3Rhs28KK3BvZGFuZS4gSmW2bGkgbmF0b21pYXN0IG5pZSB6b3N0YbNvIHBvZGFuZSwgem9zdGFuaWUgZG9tebZsbmllIHW/eXRlCitwb2xlY2VuaWUgXGZCZmFrZXJvb3RcZlAsIG8gaWxlIGplc3QKK2Rvc3TqcG5lLiBcZklwb2xlY2VuaWVcLXV6eXNraXdhbmlhXC1wcmF3XC1hZG1pbmlzdHJhdG9yYVxmUCBwb3dpbm5vIHphY3p5bmHmIHNp6gorbmF6d7EgcHJvZ3JhbXUgZG9zdOpwbmVnbyBwcnpleiB6bWllbm6xIHN5c3RlbW93sSBcZkJQQVRIXGZQLCBrdPNyZW11IGLqZLEKK3ByemVrYXp5d2FuZSBhcmd1bWVudHkgdyBwb3N0YWNpIHezYbZjaXdlZ28gcHJvZ3JhbXUgZG8gd3lrb25hbmlhIG9yYXogamVnbworcGFyYW1ldHLzdy4gXGZJcG9sZWNlbmllXC11enlza2l3YW5pYVwtcHJhd1wtYWRtaW5pc3RyYXRvcmFcZlAgbW+/ZSBzYW1vIHphd2llcmHmCitwYXJhbWV0cnkgKG11c3qxIGJ55iBvbmUgcm96ZHppZWxvbmUgc3BhY2phbWkpLCBhbGUgbmllIG1vv2UgemF3aWVyYeYKK21ldGF6bmFr83cgcG93s29raS4gXGZJcG9sZWNlbmllbVwtdXp5c2tpd2FuaWFcLXByYXdcLWFkbWluaXN0cmF0b3JhXGZQIG1vZ7EKK3R5cG93byBieeYgXGZCZmFrZXJvb3RcZlAsIFxmQnN1ZG9cZlAsIFxmQnN1cGVyXGZQIGx1YiBcZkJyZWFsbHlcZlAuIFxmQnN1XGZQIG5pZSBuYWRhamUKK3Np6iBkbyB0ZWdvIGNlbHUsIHBvbmlld2G/IG1vv2UgdHlsa28gd3l3b7Nh5iBwb3ezb2vqIHW/eXRrb3duaWthIHW/eXdharFjCitcZkJcLWNcZlAgemFtaWFzdCBwcnpla2F6eXdh5iBpbmR5d2lkdWFsbmllIGFyZ3VtZW50eSBkbGEgcG9sZWNlbmlhIGRvCit3eWtvbmFuaWEuCisuVFAgCitcZkJcLVJcZlBcZklwbGlrX3J1bGVzXGZQCitCdWRvd2FuaWUgcGFraWV0dSBEZWJpYW5hIHp3eWtsZSB3eW1hZ2Egd3l3b7NhbmlhIFxmQmRlYmlhbi9ydWxlc1xmUCBqYWtvCitwb2xlY2VuaWEgeiBraWxrb21hIHN0YW5kYXJkb3d5bWkgcGFyYW1ldHJhbWkuIFW/eXdharFjIHRlaiBvcGNqaSBtb79uYQorcG9kYeYgd3l3b7NhbmllIGlubmVnbyBwcm9ncmFtdSwga3TzcnkgcG9zs3W/eSBkbyB6YnVkb3dhbmlhIHBha2lldHUgKG1vv2UKK3Rha79lIHphd2llcmHmIGRvZGF0a293ZSBwYXJhbWV0cnkgcm96ZHppZWxvbmUgc3BhY2phbWkpLiBNb79lIGJ55iB0YWu/ZQordb95dGEgZG8gd3lrb25hbmlhIHN0YW5kYXJkb3dlZ28gcGxpa3UgcmVndbMgeiB1v3ljaWVtIGlubmVnbyBwcm9ncmFtdSBtYWtlCisobnAuIHBvZGFqsWMgXGZCL3Vzci9sb2NhbC9iaW4vbWFrZSBcLWYgZGViaWFuL3J1bGVzXGZQIGpha28gXGZJcGxpa19ydWxlc1xmUCkuCisuVFAgCitcZkJcLXBcZlBcZklwb2xlY2VuaWVcLXBvZHBpc3l3YW5pYVxmUAorR2R5IFxmQmRwa2dcLWJ1aWxkcGFja2FnZVxmUCBi6mR6aWUgcG90cnplYm93YbMgd3l3b7Nh5iBHUEcgbHViIFBHUCBhYnkgcG9kcGlzYeYKK3BsaWsga29udHJvbG55ILxy82RlsyAoXGZCLmRzY1xmUCkgbHViIHBsaWsgXGZCLmNoYW5nZXNcZlAsIHpvc3RhbmllIHVydWNob21pb25lCitcZklwb2xlY2VuaWVcLXBvZHBpc3l3YW5pYVxmUCAodyByYXppZSBrb25pZWN6bm+2Y2kgcHJ6ZXN6dWt1arFjIFxmQlBBVEhcZlApCit6YW1pYXN0IFxmQmdwZ1xmUC4gUGFyYW1ldHJ5IG5vcm1hbG5pZSBwcnpla2F6eXdhbmUgZG8gXGZCcGdwXGZQIHpvc3RhbrEKK3ByemVrYXphbmUgZG8gXGZJcG9sZWNlbmlhXC1wb2RwaXN5d2FuaWFcZlAuIEpltmxpIFxmSXBvbGVjZW5pZVwtcG9kcGlzeXdhbmlhXGZQCitwcnp5am11amUgYXJndW1lbnR5IHcgc3R5bHUgR1BHIHphbWlhc3QgYXR5bHUgUEdQLCBuYWxlv3kgdb955iBvcGNqaQorXGZCXC1zZ3BnXGZQLiBcZklwb2xlY2VuaWVcLXBvZHBpc3l3YW5pYVxmUCBuaWUgcG93aW5ubyB6YXdpZXJh5iBzcGFjamkgYW5pIGlubnljaAorbWV0YXpuYWvzdyBwb3ezb2tpLgorLlRQIAorXGZCXC1rXGZQXGZJaWRcLWtsdWN6YVxmUAorT2tyZbZsYSBJRCBrbHVjemEgdb95d2FuZWdvIGRvIHBvZHBpc3l3YW5pYSBwYWtpZXTzdy4KKy5UUCAKK1xmQlwtdXNcZlAKK05pZSBwcvNidWplIHBvZHBpc3l3YeYgcGFraWV083cuCisuVFAgCitcZkJcLXVjXGZQCitOaWUgcHLzYnVqZSBwb2RwaXN5d2HmIHBsaWvzdyBcZkIuY2hhbmdlc1xmUC4KKy5QCitcZkJcLWlcZlBbXGZJd3lyYb9fcmVndWxhcm5lXGZQXQorLmJyCitcZkJcLUlcZlBcZklbd3pvcnplY11cZlAKKy5icgorXGZCXC1zXGZQW1xmQm5zQWt1cktVUlxmUF0KKy5icgorXGZCXC16XGZQLCBcZkJcLVpcZlAKKy5icgorLlJTCitQcnpla2F6eXdhbmEgYmV6IHptaWFuIGRvIFxmQmRwa2dcLXNvdXJjZVxmUC4gV2nqY2VqIGluZm9ybWFjamkgbmEgc3Ryb25pZQorcG9kcupjem5pa2EgdGVnbyBwcm9ncmFtdQorLlJFCisuVFAgCitcZkJcLVwtc291cmNlXC1vcHRpb249XGZQXGZJb3B0XGZQCitQYXNzIG9wdGlvbiBcZklvcHRcZlAgdG8gXGZCZHBrZ1wtc291cmNlXGZQLgorLlRQIAorXGZCXC1cLWNoYW5nZXNcLW9wdGlvbj1cZlBcZklvcHRcZlAKK1Bhc3Mgb3B0aW9uIFxmSW9wdFxmUCB0byBcZkJkcGtnXC1nZW5jaGFuZ2VzXGZQLgorLlAKK1xmQlwtXC1hZG1pbmRpcj1cZlBcZklrYXRhbG9nXGZQCisuYnIKK1xmQlwtXC1hZG1pbmRpciBcZlBcZklrYXRhbG9nXGZQCisuUlMKK1ptaWVuaWEgcG+zb79lbmllIGJhenkgZGFueWNoIFxmQmRwa2dcZlAuIERvbXm2bG5pZSBqZXN0IHRvIFxmSS92YXIvbGliL2Rwa2dcZlAuCisuUkUKKy5UUCAKK1xmQlwtaFxmUCwgXGZCXC1cLWhlbHBcZlAKK1d5tndpZXRsYSBpbmZvcm1hY2rqIG8gdb95dGtvd2FuaXUgaSBrb/FjenkgZHppYbNhbmllLgorLlRQIAorXGZCXC1cLXZlcnNpb25cZlAKK1d5tndpZXRsYSBpbmZvcm1hY2rqIG8gd2Vyc2ppIGkgcG9tebZsbmllIGtv8WN6eSBkemlhs2FuaWUuCisuCisuU0ggplJPRE9XSVNLTworRXZlbiBpZiBcZkJkcGtnXC1idWlsZHBhY2thZ2VcZlAgZXhwb3J0cyBzb21lIHZhcmlhYmxlcywgXGZCZGViaWFuL3J1bGVzXGZQIHNob3VsZAorbm90IHJlbHkgb24gdGhlaXIgcHJlc2VuY2UgYW5kIHNob3VsZCBpbnN0ZWFkIHVzZSB0aGUgcmVzcGVjdGl2ZSBpbnRlcmZhY2UKK3RvIHJldHJpZXZlIHRoZSBuZWVkZWQgdmFsdWVzLgorLlNTICJabWllbm5lIHVzdGF3aWFuZSBwcnpleiBkcGtnXC1hcmNoaXRlY3R1cmUiCitXeXdvs3VqZSBwcm9ncmFtIFxmQmRwa2dcLWFyY2hpdGVjdHVyZVxmUCB6IHByemVrYXphbmllbSBwYXJhbWV0cvN3IFxmQlwtYVxmUCBvcmF6CitcZkJcLXRcZlAuIFdzenlzdGtpZSB6bWllbm5lIHV6eXNrYW5lIG5hIHd5arZjaXUgZHpp6mtpIGplZ28gb3BjamkgXGZCXC1zXGZQIHOxCitkb7OxY3phbmUgZG8gtnJvZG93aXNrYSBidWRvd2FuaWEuCisuU1MgIkNvbXBpbGVyIGZsYWdzIGFyZSBubyBsb25nZXIgZXhwb3J0ZWQiCitCZXR3ZWVuIHZlcnNpb25zIDEuMTQuMTcgYW5kIDEuMTYuMSwgXGZCZHBrZ1wtYnVpbGRwYWNrYWdlXGZQIGV4cG9ydGVkIGNvbXBpbGVyCitmbGFncyAoXGZCQ0ZMQUdTXGZQLCBcZkJDWFhGTEFHU1xmUCwgXGZCRkZMQUdTXGZQLCBcZkJDUFBGTEFHU1xmUCBhbmQgXGZCTERGTEFHU1xmUCkgd2l0aAordmFsdWVzIGFzIHJldHVybmVkIGJ5IFxmQmRwa2dcLWJ1aWxkZmxhZ3NcZlAuIFRoaXMgaXMgbm8gbG9uZ2VyIHRoZSBjYXNlLgorLgorLlNIIEKjykRZCitQb3dpbm5vIGJ55iBtb79saXdlIHBvZGFuaWUgc3BhY2ppLCBtZXRhem5ha/N3IHBvd7Nva2kgb3JheiBhcmd1bWVudPN3IGRsYQorXGZJZ2Fpblwtcm9vdFwtY29tbWFuZFxmUCBvcmF6IFxmSXNpZ25cLWNvbW1hbmRcZlAuCisuCisuU0ggIlpPQkFDWiBUQUuvRSIKK1xmQmRwa2dcLXNvdXJjZVxmUCgxKSwgXGZCZHBrZ1wtYXJjaGl0ZWN0dXJlXGZQKDEpLCBcZkJkcGtnXC1idWlsZGZsYWdzXGZQKDEpLAorXGZCZHBrZ1wtZ2VuY2hhbmdlc1xmUCgxKSwgXGZCZmFrZXJvb3RcZlAoMSksIFxmQmdwZ1xmUCgxKS4KKy4KKy5TSCBBVVRPUlpZCitDb3B5cmlnaHQgXChjbyAxOTk1XC0xOTk2IElhbiBKYWNrc29uCisuYnIKK0NvcHlyaWdodCBcKGNvIDIwMDAgV2ljaGVydCBBa2tlcm1hbgorLmJyCitDb3B5cmlnaHQgXChjbyAyMDA3IEZyYW5rIExpY2h0ZW5oZWxkCisuYnIKK0NvcHlyaWdodCBcKGNvIDIwMDhcLTIwMTAgUmFwaGFcWzplXWwgSGVydHpvZworLnNwCitOaW5pZWpzenkgcHJvZ3JhbSBqZXN0IG9wcm9ncmFtb3dhbmllbSB3b2xueW0sIHNwcmF3ZLwgUG93c3plY2husSBMaWNlbmNq6gorUHVibGljem6xIEdOVSB3IHdlcnNqaSBkcnVnaWVqIGx1YiBw87xuaWVqc3plaiwgYnkgZG93aWVkemll5iBzaeogbword2FydW5rYWNoIGR5c3RyeWJ1Y2ppLiBCcmFrIEpBS0lFSktPTFdJRUsgZ3dhcmFuY2ppLgorLlNIICJUo1VNQUNaRSIKK1Bpb3RyIFJvc3phdHlja2kgPGRleHRlckBkZWJpYW4ub3JnPiwgMTk5OQorLmJyCitCYXJ0b3N6IEZl8XNraSA8ZmVuaW9AZGViaWFuLm9yZz4sIDIwMDQtMjAwNQorLmJyCitSb2JlcnQgTHViZXJkYSA8cm9iZXJ0QGRlYmlhbi5vcmc+LCAyMDA2LTIwMDgKKy5icgorV2lrdG9yIFdhbmRhY2hvd2ljeiA8c2lyeWVzQGdtYWlsLmNvbT4sIDIwMDgKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL3BsL2Rwa2ctY2hlY2tidWlsZGRlcHMuMSBiL2Rwa2ctMS4xNi4xLjEvbWFuL3BsL2Rwa2ctY2hlY2tidWlsZGRlcHMuMQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hMTNkYjRmCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vcGwvZHBrZy1jaGVja2J1aWxkZGVwcy4xCkBAIC0wLDAgKzEsNTUgQEAKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlRIIGRwa2dcLWNoZWNrYnVpbGRkZXBzIDEgMjAxMVwtMDdcLTA0ICJQcm9qZWt0IERlYmlhbmEiICJwcm9ncmFteSBwb21vY25pY3plIGRwa2ciCisuU0ggTkFaV0EKK2Rwa2dcLWNoZWNrYnVpbGRkZXBzIFwtIHNwcmF3ZHphIHphbGW/bm+2Y2kgaSBrb25mbGlrdHkgY3phc3UgYnVkb3dhbmlhCisuCisuU0ggU0ujQUROSUEKK1xmQmRwa2dcLWNoZWNrYnVpbGRkZXBzXGZQIFtcZklvcHRpb25cZlAuLi5dIFtcZkljb250cm9sXC1maWxlXGZQXQorLgorLlNIIE9QSVMKK1Byb2dyYW0gdGVuIHNwcmF3ZHphIHBha2lldHkgemFpbnN0YWxvd2FuZSB3IHN5c3RlbWllIHcgc3Rvc3Vua3UgZG8gd3ltYWdh8QoraSBrb25mbGlrdPN3IHphcGlzYW55Y2ggdyBwbGlrdSBrb250cm9sbnltLiBKZb9lbGkga3TzcmW2IG5pZSBzsSBzcGWzbmlvbmUsCit3ebZ3aWV0bGEgamUgaSBrb/FjenkgZHppYbNhbmllIHogbmllemVyb3d5bSBrb2RlbSBwb3dyb3R1LgorLlAKK0J5IGRlZmF1bHQsIFxmQmRlYmlhbi9jb250cm9sXGZQIGlzIHJlYWQsIGJ1dCBhbiBhbHRlcm5hdGUgY29udHJvbCBmaWxlbmFtZSBtYXkKK2JlIHNwZWNpZmllZCBvbiB0aGUgY29tbWFuZCBsaW5lLgorLgorLlNIIE9QQ0pFCisuVFAgCitcZkJcLVwtYWRtaW5kaXI9XGZQXGZJa2F0YWxvZ1xmUAorWm1pZW5pYSBwb7Nvv2VuaWUgYmF6eSBkYW55Y2ggXGZCZHBrZ1xmUC4gRG9tebZsbmllIGplc3QgdG8gXGZJL3Zhci9saWIvZHBrZ1xmUC4KKy5UUCAKK1xmQlwtQlxmUAorSWdub3J1amUgbGluaWUgXGZJQnVpbGRcLURlcGVuZHNcLUluZGVwXGZQLiBOYWxlv3kgdb95d2HmLCBqZbZsaSBuaWUgYupksQorYnVkb3dhbmUgcGFraWV0eSBuaWV6YWxlv25lIG9kIGFyY2hpdGVrdHVyeS4KKy5UUCAKK1xmQlwtZCBcZlBcZkl6YWxlv25vtmNpX2J1ZG93YW5pYVxmUAorLlRQIAorXGZCXC1jIFxmUFxmSWtvbmZsaWt0eV9idWRvd2FuaWFcZlAKK1W/eXdhIHBvZGFueWNoIHphbGW/bm+2Y2kva29uZmxpa3TzdyBjemFzdSBidWRvd2FuaWEgemFtaWFzdCB3eW1pZW5pb255Y2ggdworcGxpa3UgXGZJZGViaWFuL2NvbnRyb2xcZlAuCisuVFAgCitcZkJcLWhcZlAsIFxmQlwtXC1oZWxwXGZQCitXebZ3aWV0bGEgaW5mb3JtYWNq6iBvIHW/eXRrb3dhbml1IGkga2/xY3p5IGR6aWGzYW5pZS4KKy5UUCAKK1xmQlwtXC12ZXJzaW9uXGZQCitXebZ3aWV0bGEgaW5mb3JtYWNq6iBvIHdlcnNqaSBpIHBvbXm2bG5pZSBrb/FjenkgZHppYbNhbmllLgorLgorLlNIIEFVVE9SCitDb3B5cmlnaHQgXChjbyAyMDAxIEpvZXkgSGVzcworLnNwCitOaW5pZWpzenkgcHJvZ3JhbSBqZXN0IG9wcm9ncmFtb3dhbmllbSB3b2xueW0sIHNwcmF3ZLwgUG93c3plY2husSBMaWNlbmNq6gorUHVibGljem6xIEdOVSB3IHdlcnNqaSBkcnVnaWVqIGx1YiBw87xuaWVqc3plaiwgYnkgZG93aWVkemll5iBzaeogbword2FydW5rYWNoIGR5c3RyeWJ1Y2ppLiBCcmFrIEpBS0lFSktPTFdJRUsgZ3dhcmFuY2ppLgorLlNIICJUo1VNQUNaRSIKK1Bpb3RyIFJvc3phdHlja2kgPGRleHRlckBkZWJpYW4ub3JnPiwgMTk5OQorLmJyCitCYXJ0b3N6IEZl8XNraSA8ZmVuaW9AZGViaWFuLm9yZz4sIDIwMDQtMjAwNQorLmJyCitSb2JlcnQgTHViZXJkYSA8cm9iZXJ0QGRlYmlhbi5vcmc+LCAyMDA2LTIwMDgKKy5icgorV2lrdG9yIFdhbmRhY2hvd2ljeiA8c2lyeWVzQGdtYWlsLmNvbT4sIDIwMDgKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL3BsL2Rwa2ctZGViLjEgYi9kcGtnLTEuMTYuMS4xL21hbi9wbC9kcGtnLWRlYi4xCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmUyMTA1MTAKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9wbC9kcGtnLWRlYi4xCkBAIC0wLDAgKzEsMjA4IEBACisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkcGtnXC1kZWIgMSAyMDExXC0wOFwtMTQgIlByb2pla3QgRGViaWFuYSIgInW/eXRraSBkcGtnIgorLlNIIE5BWldBCitkcGtnXC1kZWIgXC0gbmFyeupkemllIG9ic7N1Z2kgcGxpa/N3IGFyY2hpd3VtIERlYmlhbmEgKC5kZWIpCisuCisuU0ggU0ujQUROSUEKK1xmQmRwa2dcLWRlYlxmUCBbXGZJb3B0aW9uXGZQLi4uXSBcZkljb21tYW5kXGZQCisuCisuU0ggT1BJUworXGZCZHBrZ1wtZGViXGZQIHR3b3J6eSwgcm96cGFrb3d1amUgaSBwb2RhamUgaW5mb3JtYWNqZSBvIHBsaWthY2ggYXJjaGl3dW0KKyhjenlsaSBwYWtpZXRhY2gpIERlYmlhbmEuCisuUFAKK0RvIGluc3RhbG93YW5pYSBpIHVzdXdhbmlhIHBha2lldPN3IHogc3lzdGVtdSBzs3W/eSBwb2xlY2VuaWUgXGZCZHBrZ1xmUC4KKy5QUAorUG9uYWR0byBtb79uYSBza29yenlzdGHmIHogXGZCZHBrZ1wtZGViXGZQIHd5d2+zdWqxYyBcZkJkcGtnXGZQIHogb2Rwb3dpZWRuabEKK29wY2qxLCBrdPNyYSB6b3N0YW5pZSBwcnpla2F6YW5hIGRvIFxmQmRwa2dcLWRlYlxmUC4gXGZCZHBrZ1xmUCB1cnVjaG9taQorXGZCZHBrZ1wtZGViXGZQIGkgd3lrb25hIL+xZGFusSBvcGVyYWNq6i4KKy4KKy5TSCBQT0xFQ0VOSUEKKy5UUCAKK1xmQlwtYlxmUCwgXGZCXC1cLWJ1aWxkXGZQIFxmSWthdGFsb2dcZlAgW1xmSWFyY2hpd3VtXGZQfFxmSWthdGFsb2dcZlBdCitUd29yenkgYXJjaGl3dW0gRGViaWFuYSB6IHBsaWvzdyB6YXdhcnR5Y2ggdyBcZklrYXRhbG9ndVxmUC4gXGZJa2F0YWxvZ1xmUCBtdXNpCit6YXdpZXJh5iBwb2RrYXRhbG9nIG8gbmF6d2llIFxmQkRFQklBTlxmUCwgdyBrdPNyeW0gemF3YXJ0ZSBzsSBwbGlraSBrb250cm9sbmUsCit0YWtpZSBqYWsgbnAuIGNvbnRyb2wuIFRlbiBrYXRhbG9nIFxmSW5pZVxmUCBwb2phd2kgc2nqIHcgYXJjaGl3dW0gYmluYXJueW0KK3Bha2lldHUsIHR5bGtvIHpvc3RhbmllIHVtaWVzemN6b255IGpha28gaW5mb3JtYWNqZSBrb250cm9sbmUgcGFraWV0dSwga3TzcmUKK29waXN1arEgd7NhtmNpd2+2Y2kgcGFraWV0dS4KKworSmW2bGkgcG9taW5p6nRvIG9wY2rqIFxmQlwtXC1ub2NoZWNrXGZQLCBcZkJkcGtnXC1kZWJcZlAgb2Rjenl0YSBwbGlrCitcZkJERUJJQU4vY29udHJvbFxmUCBpIHByemV0d29yenkgZ28uIFNwcmF3ZHppIHByenkgdHltLCBjenkgbmllIHd5c3TqcHVqsSB3CituaW0gYrPqZHkgc2uzYWRuaW93ZSBsdWIgaW5uZSBwcm9ibGVteSwgYSBuYXN06nBuaWUgd3m2d2lldGxpIG5henfqIHBha2lldHUsCitrdPNyeSBqZXN0IHR3b3J6b255LiBcZkJkcGtnXC1kZWJcZlAgcG9uYWR0byBzcHJhd2R6aSBwcmF3YSBkb3N06nB1IHNrcnlwdPN3CitpbnN0YWxhY3lqbnljaCBpIGlubnljaCBwbGlr83cgem5hamR1arFjeWNoIHNp6iB3IGthdGFsb2d1IFxmQkRFQklBTlxmUC4KKworSmW2bGkgbmllIHBvZGFubyBuYXp3eSBcZklhcmNoaXd1bVxmUCwgdG8gXGZCZHBrZ1wtZGViXGZQIHphcGlzemUgcGFraWV0IHcgcGxpa3UKK1xmSWthdGFsb2dcZlBcZkIuZGViXGZQLgorCitKZb9lbGkgdGFraSBwYWtpZXQganW/IGlzdG5pZWplLCB0byB6b3N0YW5pZSBuYWRwaXNhbnkuCisKK0pltmxpIGRydWdpbSBhcmd1bWVudGVtIGplc3QgXGZJa2F0YWxvZ1xmUCwgdG8gXGZCZHBrZ1wtZGViXGZQIHphcGlzemUgcGFraWV0IHBvZAorbmF6d7EgXGZJa2F0YWxvZ1xmUFxmQi9cZlBcZklwYWtpZXRcZlBcZkJfXGZQXGZJd2Vyc2phXGZQXGZCX1xmUFxmSWFyY2hcZlBcZkIuZGViXGZQIGx1YgorXGZJa2F0YWxvZ1xmUFxmQi9cZlBcZklwYWtpZXRcZlBcZkJfXGZQXGZJd2Vyc2phXGZQXGZCLmRlYlxmUCwgamW2bGkgbmllIHpvc3Rhs28gb2tyZbZsb25lCitwb2xlIFxmQkFyY2hpdGVjdHVyZVxmUCB3IHBsaWt1IGtvbnRyb2xueW0uIEdkeSBwb2RhbnkgamVzdCBcZklrYXRhbG9nXGZQLCB0byBuaWUKK21vv2Ugem9zdGHmIHW/eXRhIG9wY2phIFxmQlwtXC1ub1wtY2hlY2tcZlAsIHBvbmlld2G/IFxmQmRwa2dcLWRlYlxmUCBtdXNpIHByemV0d29yennmCitwbGlrIGtvbnRyb2xueSwgYWJ5IHJvenBvem5h5iBuYXp36iBpIHdlcnNq6iBwYWtpZXR1LgorLlRQIAorXGZCXC1JXGZQLCBcZkJcLVwtaW5mb1xmUCBcZklhcmNoaXd1bVxmUCBbXGZJbmF6d2FcLXBsaWt1XC1rb250cm9sbmVnb1xmUC4uLl0KK0Rvc3RhcmN6YSBpbmZvcm1hY2ppIG8gcGFraWVjaWUuCisKK0dkeSBuaWUgcG9kYW5vIL9hZG5laiBcZkluYXp3eVwtcGxpa3VcLWtvbnRyb2xuZWdvXGZQLCB3ebZ3aWV0bGFuYSBqZXN0CitpbmZvcm1hY2phIG8gemF3YXJ0b7ZjaSBwYWtpZXR1IG9yYXogemVzdGF3aWVuaWUgd3lrb3J6eXN0YW55Y2ggcGxpa/N3Citrb250cm9sbnljaC4KKworVyByYXppZSBwb2RhbmlhIFxmSW5hend5XC1wbGlrdVwta29udHJvbG5lZ29cZlAsIFxmQmRwa2dcLWRlYlxmUCB3ebZ3aWV0bGkgemF3YXJ0b7bmCit0ZWdvIHBsaWt1LiBKZbZsaSB0ZW4gcGxpayBuaWUgaXN0bmllamUsIHd5tndpZXRsb255IHpvc3RhbmllIGtvbXVuaWthdAorYrPqZHUgbmEgc3RhbmRhcmRvd2Ugd3lqtmNpZSBis+pk83cgaSBwcm9ncmFtIHpha2/xY3p5IHNp6iB6IGtvZGVtIGKz6mR1IDIuCisuVFAgCitcZkJcLVdcZlAsIFxmQlwtXC1zaG93XGZQIFxmSWFyY2hpd3VtXGZQCitXebZ3aWV0bGEgaW5mb3JtYWNq6iBvIHBha2llY2llIGJpbmFybnltIHcgZm9ybWFjaWUgb2tyZbZsb255bSBvcGNqsQorXGZCXC1cLXNob3dmb3JtYXRcZlAuIFcgZG9tebZsbnltIGZvcm1hY2llIHcga2G/ZGVqIGxpbmlpIHd5tndpZXRsYW5lIHOxIG5hendhIGkKK3dlcnNqYSBwYWtpZXR1LCBvZGR6aWVsb25lIG9kIHNpZWJpZSB6bmFraWVtIHRhYnVsYWNqaS4KKy5UUCAKK1xmQlwtZlxmUCwgXGZCXC1cLWZpZWxkXGZQIFxmSWFyY2hpd3VtXGZQIFtcZkluYXp3YVwtcG9sYVwta29udHJvbG5lZ29cZlAuLi5dCitXebZ3aWV0bGEgemF3YXJ0b7bmIHBsaWt1IGtvbnRyb2xuZWdvIG8gbmF6d2llIGNvbnRyb2wuCisKK0pltmxpIG5pZSBwb2Rhbm8gv2FkbmVqIFxmQm5hend5XC1wb2xhXC1rb250cm9sbmVnb1xmUCwgdG8gd3m2d2lldGxhbmEgamVzdAoremF3YXJ0b7bmIGNhs2VnbyBwbGlrdSBjb250cm9sLgorCitKZbZsaSBwb2Rhbm8gXGZCbmF6d+pcLXBvbGFcLWtvbnRyb2xuZWdvXGZQLCB0byBcZkJkcGtnXC1kZWJcZlAgd3m2d2lldGxpIGplagoremF3YXJ0b7bmLiBHZHkgcG9kYW5vIHdp6mNlaiBuab8gamVkbrEgXGZCbmF6d+pcLXBvbGFcLWtvbnRyb2xuZWdvXGZQLCB0bworXGZCZHBrZ1wtZGViXGZQIHd5tndpZXRsaSBwb2xhIHdyYXogeiBuYXp3sSAob3JheiBkd3Vrcm9wa2llbSBpIHNwYWNqsSkgdyB0YWtpZWoKK2tvbGVqbm+2Y2ksIHcgamFraWVqIHOxIHd5bWllbmlvbmUgdyBwbGlrdSBrb250cm9sbnltLgorCitEbGEgbmllb2RuYWxlemlvbnljaCBw82wga29udHJvbG55Y2ggbmllIHOxIHd5tndpZXRsYW5lIGtvbXVuaWthdHkgYrPqZPN3LgorLlRQIAorXGZCXC1jXGZQLCBcZkJcLVwtY29udGVudHNcZlAgXGZJYXJjaGl3dW1cZlAKK1d5tndpZXRsYSB6YXdhcnRvtuYgYXJjaGl3dW0uIFd5ZHJ1ayBqZXN0IHBvZGFueSB3IHRha2llaiBwb3N0YWNpLCBqYWuxCitnZW5lcnVqZSBwb2xlY2VuaWUgXGZCdGFyXGZQLgorLlRQIAorXGZCXC14XGZQLCBcZkJcLVwtZXh0cmFjdFxmUCBcZklrYXRhbG9nIGFyY2hpd3VtXGZQCitSb3pwYWtvd3VqZSB6YXdhcnRvtuYgYXJjaGl3dW0gZG8gcG9kYW5lZ28gXGZJa2F0YWxvZ3VcZlAuCisKK1Byb3N66iB6YXV3Yb955iwgv2Ugcm96cGFrb3dhbmllIHBha2lldHUgdyBrYXRhbG9ndSBns/N3bnltIFxmSW5pZVxmUCBqZXN0CitvZHBvd2llZG5pa2llbSB6YWluc3RhbG93YW5pYSBwYWtpZXR1ISBEbyB0ZWdvIGNlbHUgc7N1v3kgd3mzsWN6bmllCitwb2xlY2VuaWUgXGZCZHBrZ1xmUC4KKworXGZJa2F0YWxvZ1xmUCAoYWxlIGJleiBrYXRhbG9n83cgbmFkcnrqZG55Y2gpIHpvc3RhbmllIHV0d29yem9ueSBqZbZsaSB0cnplYmEsCithIGplZ28gdXByYXduaWVuaWEgem9zdGFusSB6bW9keWZpa293YW5lIHRhaywgYWJ5IG9kcG93aWFkYbN5IHphd2FydG+2Y2kKK3Bha2lldHUuCisuVFAgCitcZkJcLVhcZlAsIFxmQlwtXC12ZXh0cmFjdFxmUCBcZklrYXRhbG9nIGFyY2hpd3VtXGZQCitJcyBsaWtlIFxmQlwtXC1leHRyYWN0XGZQIChcZkJcLXhcZlApICB3aXRoIFxmQlwtXC12ZXJib3NlXGZQIChcZkJcLXZcZlApICB3aGljaCBwcmludHMgYQorbGlzdGluZyBvZiB0aGUgZmlsZXMgZXh0cmFjdGVkIGFzIGl0IGdvZXMuCisuVFAgCitcZkJcLVJcZlAsIFxmQlwtXC1yYXdcLWV4dHJhY3RcZlAgXGZJYXJjaGl2ZSBkaXJlY3RvcnlcZlAKK0V4dHJhY3RzIHRoZSBmaWxlc3lzdGVtIHRyZWUgZnJvbSBhIHBhY2thZ2UgYXJjaGl2ZSBpbnRvIGEgc3BlY2lmaWVkCitkaXJlY3RvcnksIGFuZCB0aGUgY29udHJvbCBpbmZvcm1hdGlvbiBmaWxlcyBpbnRvIGEgREVCSUFOIHN1YmRpcmVjdG9yeSBvZgordGhlIHNwZWNpZmllZCBkaXJlY3RvcnkuCisKK1cgcmF6aWUgcG90cnplYnksIGthdGFsb2cgZG9jZWxvd3kgYupkemllIHV0d29yem9ueS4KKy5UUCAKK1xmQlwtXC1mc3lzXC10YXJmaWxlXGZQIFxmSWFyY2hpd3VtXGZQCitFeHRyYWN0cyB0aGUgZmlsZXN5c3RlbSB0cmVlIGRhdGEgZnJvbSBhIGJpbmFyeSBwYWNrYWdlIGFuZCBzZW5kcyBpdCB0bworc3RhbmRhcmQgb3V0cHV0IGluIFxmQnRhclxmUCBmb3JtYXQuIFRvZ2V0aGVyIHdpdGggXGZCdGFyXGZQKDEpICB0aGlzIGNhbiBiZSB1c2VkCit0byBleHRyYWN0IGEgcGFydGljdWxhciBmaWxlIGZyb20gYSBwYWNrYWdlIGFyY2hpdmUuICBUaGUgaW5wdXQgYXJjaGl2ZSB3aWxsCithbHdheXMgYmUgcHJvY2Vzc2VkIHNlcXVlbnRpYWxseS4KKy5UUCAKK1xmQlwtZVxmUCwgXGZCXC1cLWNvbnRyb2xcZlAgXGZJYXJjaGl3dW1cZlAgW1xmSWthdGFsb2dcZlBdCitSb3pwYWtvd3VqZSBwbGlraSBrb250cm9sbmUgcGFraWV0dSBkbyBwb2RhbmVnbyBcZklrYXRhbG9ndVxmUC4KKworSmW2bGkgXGZJa2F0YWxvZ1xmUCBuaWUgem9zdGGzIG9rcmW2bG9ueSwgcGxpa2kgc7Egcm96cGFrb3d5d2FuZSBkbyBwb2RrYXRhbG9ndQorXGZCREVCSUFOXGZQIHcga2F0YWxvZ3UgYmllv7FjeW0uCisKK1cgcmF6aWUgcG90cnplYnksIGthdGFsb2cgZG9jZWxvd3kgYupkemllIHV0d29yem9ueS4KKy5UUCAKK1xmQlwtaFxmUCwgXGZCXC1cLWhlbHBcZlAKK1d5tndpZXRsYSBpbmZvcm1hY2rqIG8gdb95dGtvd2FuaXUgaSBrb/FjenkgZHppYbNhbmllLgorLlRQIAorXGZCXC1cLXZlcnNpb25cZlAKK1d5tndpZXRsYSBpbmZvcm1hY2rqIG8gd2Vyc2ppIGkgcG9tebZsbmllIGtv8WN6eSBkemlhs2FuaWUuCisuCisuU0ggT1BDSkUKKy5UUCAKK1xmQlwtXC1zaG93Zm9ybWF0PVxmUFxmSWZvcm1hdFxmUAorT3BjamEgamVzdCB1v3l3YW5hIGRvIHBvZGFuaWEgZm9ybWF0dSB3eWq2Y2lhIHByb2R1a293YW5lZ28gcHJ6ZXoKK1xmQlwtXC1zaG93XGZQLiBGb3JtYXQgamVzdCCzYfFjdWNoZW0gem5ha/N3LCBrdPNyeSBi6mR6aWUgd3m2d2lldGxvbnkgZGxhCitrYb9kZWdvIHd5cGlzYW5lZ28gcGFraWV0dS4KKworQXJndW1lbnRlbSBqZXN0ILNh8WN1Y2ggem5ha/N3IHcgcG9zdGFjaSAiJHtcZkluYXp3YVwtcG9sYVxmUH0iLCBrdPNyeSBtb79lIHNp6gorb2Rub3Np5iBkbyBkb3dvbG5lZ28gcG9sYSBwbGlrdSBzdGFudS4gTGlzdOogbmF6dyBwb3ByYXdueWNoIHDzbCBtb79uYSCzYXR3bword3lnZW5lcm93YeYsIHW/eXdharFjIG9wY2ppIFxmQlwtSVxmUCBuYSB0eW0gc2FteW0gcGFraWVjaWUuIFBls25lIHd5amG2bmllbmllCitvcGNqaSBmb3JtYXRvd2FuaWEgKLOxY3puaWUgeiBzZWt3ZW5jamFtaSBjeXRvd2FuaWEgaSByb3pkemllbGFuaWVtIHDzbCkKK21vv25hIHpuYWxlvOYgdyBvcGlzaWUgb3BjamkgXGZCXC1cLXNob3dmb3JtYXRcZlAgdyBcZkJkcGtnXC1xdWVyeVxmUCgxKS4KKworRG9tebZsbrEgd2FydG+2Y2mxIHRlZ28gcG9sYSBqZXN0ICIke1BhY2thZ2V9XGV0JHtWZXJzaW9ufVxlbiIuCisuVFAgCitcZkJcLXpcZlBcZkljb21wcmVzc1wtbGV2ZWxcZlAKK1NwZWNpZnkgd2hpY2ggY29tcHJlc3Npb24gbGV2ZWwgdG8gdXNlIG9uIHRoZSBjb21wcmVzc29yIGJhY2tlbmQsIHdoZW4KK2J1aWxkaW5nIGEgcGFja2FnZSAoZGVmYXVsdCBpcyA5IGZvciBnemlwIGFuZCBiemlwMiwgNiBmb3IgeHogYW5kIGx6bWEpLgorLlRQIAorXGZCXC1aXGZQXGZJY29tcHJlc3NcLXR5cGVcZlAKK1NwZWNpZnkgd2hpY2ggY29tcHJlc3Npb24gdHlwZSB0byB1c2Ugd2hlbiBidWlsZGluZyBhIHBhY2thZ2UuIEFsbG93ZWQKK3ZhbHVlcyBhcmUgXGZJZ3ppcFxmUCwgXGZJeHpcZlAsIFxmSWJ6aXAyXGZQLCBcZklsem1hXGZQLCBhbmQgXGZJbm9uZVxmUCAoZGVmYXVsdCBpcworXGZJZ3ppcFxmUCkuCisuVFAgCitcZkJcLVwtbmV3XGZQCitaYXBld25pYSwgv2UgXGZCZHBrZ1wtZGViXGZQIHV0d29yenkgIm5vd3kiIGZvcm1hdCBhcmNoaXd1bS4gVGEgb3BjamEgamVzdAorZG9tebZsbmEuCisuVFAgCitcZkJcLVwtb2xkXGZQCitXeW11c3phIHV0d29yemVuaWUgcHJ6ZXogXGZCZHBrZ1wtZGViXGZQICJzdGFyZWdvIiBmb3JtYXR1IGFyY2hpd3VtLiBUZW4gZm9ybWF0CitqZXN0IHOzYWJvIG9ic7N1Z2l3YW55IHByemV6IG5hcnrqZHppYSBzcG96YSBkeXN0cnlidWNqaSBEZWJpYW5hIGkgb2JlY25pZQoramVzdCBwcnplc3Rhcnphs3kuIFRhIG9wY2phIGplc3Qgdb95dGVjem5hIGplZHluaWUgdyBwcnp5cGFka3Uga29yenlzdGFuaWEgegord2Vyc2ppIGRwa2cgd2N6ZbZuaWVqc3plaiBuab8gMC45My43NiAod3J6ZXNpZfEgMTk5NSksIGt083JhIGJ5s2EKK29wdWJsaWtvd2FuYSBqZWR5bmllIGRsYSBpMzg2IGEub3V0LgorLlRQIAorXGZCXC1cLW5vY2hlY2tcZlAKK1Bvd29kdWplLCC/ZSBwb2xlY2VuaWUgXGZCZHBrZ1wtZGViIFwtXC1idWlsZFxmUCBuaWUgYupkemllIHNwcmF3ZHph5iB6YXdhcnRvtmNpCithcmNoaXd1bS4gVyB0ZW4gc3Bvc/NiIG1vv25hIHV0d29yennmIG5pZXBvcHJhd255IHBha2lldCwgamW2bGkgemFqZHppZSB0YWthCitwb3RyemViYS4KKy5UUCAKK1xmQlwtdlxmUCwgXGZCXC1cLXZlcmJvc2VcZlAKK0VuYWJsZXMgdmVyYm9zZSBvdXRwdXQuIFRoaXMgY3VycmVudGx5IG9ubHkgYWZmZWN0cyBcZkJcLVwtZXh0cmFjdFxmUCBtYWtpbmcgaXQKK2JlaGF2ZSBsaWtlIFxmQlwtXC12ZXh0cmFjdFxmUC4KKy5UUCAKK1xmQlwtRFxmUCwgXGZCXC1cLWRlYnVnXGZQCitXs7FjemEgb3BjauogZGVidWdvd2FuaWEuIE5pZSBqZXN0IHRvIHpieXQgaW50ZXJlc3VqsWNlLgorLgorLlNIIKZST0RPV0lTS08KKy5UUCAKK1xmQlRNUERJUlxmUAorSWYgc2V0LCBcZkJkcGtnXC1kZWJcZlAgd2lsbCB1c2UgaXQgYXMgdGhlIGRpcmVjdG9yeSBpbiB3aGljaCB0byBjcmVhdGUKK3RlbXBvcmFyeSBmaWxlcyBhbmQgZGlyZWN0b3JpZXMuCisuCisuU0ggQqPKRFkKK1xmQmRwa2dcLWRlYiBcLUlcZlAgXGZJcGFraWV0MVxmUFxmQi5kZWJcZlAgXGZJcGFraWV0MlxmUFxmQi5kZWJcZlAgZHppYbNhIG5pZXBvcHJhd25pZS4KKworTmllIG1hIHNwcmF3ZHphbmlhIGF1dGVudHljem5vtmNpIHBsaWvzdyBcZkIuZGViXGZQLCBhIG5hd2V0IG5pZSBtYSBwcm9zdGVqCitzdW15IGtvbnRyb2xuZWouIChOYXJ66mR6aWEgd3m/c3plZ28gcG96aW9tdSB0YWtpZSBqYWsgQVBUIHdzcGllcmFqsQordXdpZXJ6eXRlbG5pYW5pZSBwYWtpZXTzdyBcZkIuZGViXGZQIHBvYmllcmFueWNoIHogZGFuZWdvIHJlcG96eXRvcml1bSwgemG2Cit3aeprc3pvtuYgd3Nw87NjemVzbnljaCBwYWtpZXTzdyBkb3N0YXJjemEgcGxpayBrb250cm9sbnkgbWQ1c3VtCit3eWdlbmVyb3dhbnkgcHJ6ZXogZGViaWFuL3J1bGVzLiBOaWVzdGV0eSwgbmllIGplc3QgdG8gYmV6cG+2cmVkbmlvCit3c3BpZXJhbmUgcHJ6ZXogbmFyeupkemlhIG5pv3N6ZWdvIHBvemlvbXUuKQorCitOaWUgbmFsZb95IHW/eXdh5iBcZkJkcGtnXC1kZWJcZlAgZG8gaW5zdGFsb3dhbmlhIG9wcm9ncmFtb3dhbmlhISBEbyB0ZWdvIGNlbHUKK25hbGW/eSBrb3J6eXN0YeYgeiBcZkJkcGtnXGZQLCBrdPNyeSB6YWluc3RhbHVqZSBwb3ByYXduaWUgcGxpa2kgaSB1cnVjaG9taQorcG90cnplYm5lIHNrcnlwdHkgaW5zdGFsYWN5am5lLgorLgorLlNIICJaT0JBQ1ogVEFLr0UiCitcZkJkZWJcZlAoNSksIFxmQmRlYlwtY29udHJvbFxmUCg1KSwgXGZCZHBrZ1xmUCgxKSwgXGZCZHNlbGVjdFxmUCgxKS4KKy4KKy5TSCBBVVRPUgorQ29weXJpZ2h0IFwoY28gMTk5NVwtMTk5NiBJYW4gSmFja3NvbgorLnNwCitOaW5pZWpzenkgcHJvZ3JhbSBqZXN0IG9wcm9ncmFtb3dhbmllbSB3b2xueW0sIHNwcmF3ZLwgUG93c3plY2husSBMaWNlbmNq6gorUHVibGljem6xIEdOVSB3IHdlcnNqaSBkcnVnaWVqIGx1YiBw87xuaWVqc3plaiwgYnkgZG93aWVkemll5iBzaeogbword2FydW5rYWNoIGR5c3RyeWJ1Y2ppLiBCcmFrIEpBS0lFSktPTFdJRUsgZ3dhcmFuY2ppLgorLlNIICJUo1VNQUNaRSIKK1Bpb3RyIFJvc3phdHlja2kgPGRleHRlckBkZWJpYW4ub3JnPiwgMTk5OQorLmJyCitCYXJ0b3N6IEZl8XNraSA8ZmVuaW9AZGViaWFuLm9yZz4sIDIwMDQtMjAwNQorLmJyCitSb2JlcnQgTHViZXJkYSA8cm9iZXJ0QGRlYmlhbi5vcmc+LCAyMDA2LTIwMDgKKy5icgorV2lrdG9yIFdhbmRhY2hvd2ljeiA8c2lyeWVzQGdtYWlsLmNvbT4sIDIwMDgKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL3BsL2Rwa2ctZGlzdGFkZGZpbGUuMSBiL2Rwa2ctMS4xNi4xLjEvbWFuL3BsL2Rwa2ctZGlzdGFkZGZpbGUuMQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kMDJkZjM4Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vcGwvZHBrZy1kaXN0YWRkZmlsZS4xCkBAIC0wLDAgKzEsNTcgQEAKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlRIIGRwa2dcLWRpc3RhZGRmaWxlIDEgMjAxMVwtMDdcLTA0ICJQcm9qZWt0IERlYmlhbmEiICJwcm9ncmFteSBwb21vY25pY3plIGRwa2ciCisuU0ggTkFaV0EKK2Rwa2dcLWRpc3RhZGRmaWxlIFwtIGRvZGFqZSB3cGlzeSBkbyBkZWJpYW4vZmlsZXMKKy4KKy5TSCBTS6NBRE5JQQorXGZCZHBrZ1wtZGlzdGFkZGZpbGVcZlAgW1xmSW9wdGlvblxmUC4uLl1cZkkgZmlsZW5hbWUgc2VjdGlvbiBwcmlvcml0eVxmUAorLgorLlNIIE9QSVMKK1xmQmRwa2dcLWRpc3RhZGRmaWxlXGZQIGRvZGFqZSB3cGlzIGRvdHljerFjeSBwb2RhbmVnbyBwbGlrdSBkbyBcZkJkZWJpYW4vZmlsZXNcZlAuCisKK1BvYmllcmEgdHJ6eSBhcmd1bWVudHkgbmllIGLqZLFjZSBvcGNqYW1pOiBuYXp36iBwbGlrdSBvcmF6IHNla2Nq6iBpCitwcmlvcnl0ZXQgZGxhIHBsaWt1IFxmQi5jaGFuZ2VzXGZQLgorCitOYXp3YSBwbGlrdSBwb3dpbm5hIGJ55iBwb2RhbmEgcmVsYXR5d25pZSB3IHN0b3N1bmt1IGRvIGthdGFsb2d1LCB3IGt083J5bQorXGZCZHBrZ1wtZ2VuY2hhbmdlc1xmUCBi6mR6aWUgc3p1a2GzIHBsaWvzdywgemF6d3ljemFqIGpha28gXGZCLi5cZlAsIHJhY3plaiBuab8KK2J55iC2Y2llv2uxIHJlbGF0eXdusSBkbyBiaWW/sWNlZ28ga2F0YWxvZ3UsIHBvZGN6YXMgZHppYbNhbmlhCitcZkJkcGtnXC1kaXN0YWRkZmlsZVxmUC4KKy4KKy5TSCBPUENKRQorLlRQIAorXGZCXC1mXGZQXGZJcGxpa196X2xpc3SxX3BsaWvzd1xmUAorQ3p5dGEgbHViIHphcGlzdWplIGxpc3TqIHBsaWvzdyB3eWRhbmlhIGRvIHBsaWt1IHBvZGFuZWdvIGpha28gYXJndW1lbnQgdGVqCitvcGNqaSwgemFtaWFzdCBkbyBwbGlrdSBcZkJkZWJpYW4vZmlsZXNcZlAuCisuVFAgCitcZkJcLWhcZlAsIFxmQlwtXC1oZWxwXGZQCitXebZ3aWV0bGEgaW5mb3JtYWNq6iBvIHW/eXRrb3dhbml1IGkga2/xY3p5IGR6aWGzYW5pZS4KKy5UUCAKK1xmQlwtXC12ZXJzaW9uXGZQCitXebZ3aWV0bGEgaW5mb3JtYWNq6iBvIHdlcnNqaSBpIHBvbXm2bG5pZSBrb/FjenkgZHppYbNhbmllLgorLgorLlNIIFBMSUtJCisuVFAgCitcZkJkZWJpYW4vZmlsZXNcZlAKK0xpc3RhIHd5Z2VuZXJvd2FueWNoIHBsaWvzdywga3TzcmUgc7EgY3rqtmNpsSBwcnp5Z290b3d5d2FuZWdvIHd5ZGFuaWEuIEFieQorZG9kYeYgZG9kYXRrb3dlIHBsaWtpLCBtb79uYSB1v3nmIFxmQmRwa2dcLWRpc3RhZGRmaWxlXGZQLgorLgorLlNIIEFVVE9SWlkKK0NvcHlyaWdodCBcKGNvIDE5OTVcLTE5OTYgSWFuIEphY2tzb24KKy5icgorQ29weXJpZ2h0IFwoY28gMjAwMCBXaWNoZXJ0IEFra2VybWFuCisuc3AKK05pbmllanN6eSBwcm9ncmFtIGplc3Qgb3Byb2dyYW1vd2FuaWVtIHdvbG55bSwgc3ByYXdkvCBQb3dzemVjaG6xIExpY2VuY2rqCitQdWJsaWN6brEgR05VIHcgd2Vyc2ppIGRydWdpZWogbHViIHDzvG5pZWpzemVqLCBieSBkb3dpZWR6aWXmIHNp6iBvCit3YXJ1bmthY2ggZHlzdHJ5YnVjamkuIEJyYWsgSkFLSUVKS09MV0lFSyBnd2FyYW5jamkuCisuU0ggIlSjVU1BQ1pFIgorUGlvdHIgUm9zemF0eWNraSA8ZGV4dGVyQGRlYmlhbi5vcmc+LCAxOTk5CisuYnIKK0JhcnRvc3ogRmXxc2tpIDxmZW5pb0BkZWJpYW4ub3JnPiwgMjAwNC0yMDA1CisuYnIKK1JvYmVydCBMdWJlcmRhIDxyb2JlcnRAZGViaWFuLm9yZz4sIDIwMDYtMjAwOAorLmJyCitXaWt0b3IgV2FuZGFjaG93aWN6IDxzaXJ5ZXNAZ21haWwuY29tPiwgMjAwOApkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vcGwvZHBrZy1kaXZlcnQuOCBiL2Rwa2ctMS4xNi4xLjEvbWFuL3BsL2Rwa2ctZGl2ZXJ0LjgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNDY5MTYxNAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL3BsL2Rwa2ctZGl2ZXJ0LjgKQEAgLTAsMCArMSwxNTUgQEAKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlRIIGRwa2dcLWRpdmVydCA4IDIwMTFcLTA4XC0xNCAiUHJvamVrdCBEZWJpYW5hIiAicHJvZ3JhbXkgcG9tb2NuaWN6ZSBkcGtnIgorLlNIIE5BWldBCitkcGtnXC1kaXZlcnQgXC0gbmFkcGlzeXdhbmllIHBsaWvzdyB6IHBha2lldPN3CisuCisuU0ggU0ujQUROSUEKK1xmQmRwa2dcLWRpdmVydFxmUCBbXGZJb3B0aW9uXGZQLi4uXSBcZkljb21tYW5kXGZQCisuCisuU0ggT1BJUworXGZCZHBrZ1wtZGl2ZXJcZlAgamVzdCBuYXJ66mR6aWVtIHW/eXdhbnltIGRvIHR3b3J6ZW5pYSBpIGFrdHVhbGl6b3dhbmlhIGxpc3R5CituYWRwaXNh8SBwbGlr83cuCisuUFAKKyJcZklOYWRwaXNhbmlhXGZQIiBwbGlr83cgc7Egc3Bvc29iZW0gbmEgd3ltdXN6ZW5pZSBuYSBwcm9ncmFtaWUgXGZCZHBrZ1xmUCgxKQoraW5zdGFsb3dhbmlhIHBsaWt1IG5pZSB3IGRvbXm2bG5laiBsb2thbGl6YWNqaSwgbGVjeiB3IG5vd2VqLCBcZkluYWRwaXNhbmVqXGZQCitsb2thbGl6YWNqaS4gTmFkcGlzYW5pYSBtb2exIGJ55iB1v3l3YW5lIHcgc2tyeXB0YWNoIHBha2lldPN3IERlYmlhbmEgZG8KK3ByemVuaWVzaWVuaWEgcGxpa/N3LCBrdPNyZSBwb3dvZHVqsSBrb25mbGlrdHkuIEFkbWluaXN0cmF0b3Igc3lzdGVtdSBtb79lCitpY2ggdGFrv2Ugdb955iBkbyBuYWRwaXNhbmlhIHBsaWvzdyBrb25maWd1cmFjeWpueWNoIHBld255Y2ggcGFraWV083csIGFsYm8KK3d0ZWR5IGdkeSBuaWVrdPNyZSBwbGlraSAobmllb3puYWN6b25lIGpha28gInBsaWtpIGtvbmZpZ3VyYWN5am5lIikgbXVzerEKK2J55iB6YWNob3dhbmUgcHJ6ZXogZHBrZyBwb2RjemFzIGluc3RhbGFjamkgbm93ZWogd2Vyc2ppIHBha2lldHUKK3phd2llcmFqsWNlZ28gdGUgcGxpa2kuCisuc3AKKy5TSCBQT0xFQ0VOSUEKKy5UUCAKK1tcZkJcLVwtYWRkXGZQXSBcZklwbGlrXGZQCitEb2RhamUgbmFkcGlzYW5pZSBcZklwbGlrdVxmUC4KKy5UUCAKK1xmQlwtXC1yZW1vdmVcZlAgXGZJcGxpa1xmUAorVXN1d2EgbmFkcGlzYW5pZSBcZklwbGlrdVxmUC4KKy5UUCAKK1xmQlwtXC1saXN0XGZQXGZJIHd6b3J6ZWNcLWdsb2JcZlAKK1d5tndpZXRsYSBuYWRwaXNhbmlhIHBhc3VqsWNlIGRvIFxmSXd6b3JjYVwtZ2xvYlxmUC4KKy5UUCAKK1xmQlwtXC1saXN0cGFja2FnZVxmUFxmSSBwbGlrXGZQCitXebZ3aWV0bGEgbmF6d+ogcGFraWV0dSwga3TzcnkgemF3aWVyYSBvbWluaepjaWUgXGZJcGxpa3VcZlAuIFd5tndpZXRsYSBuYXBpcworTE9DQUwgamW2bGkgXGZJcGxpa1xmUCBqZXN0IG9taW5p6nR5IGxva2FsbmllLCBuaWUgd3m2d2lldGxhIG5pYyBqZbZsaSBkbGEKK1xmSXBsaWt1XGZQIG5pZSBtYSBvbWluaepjaWEuCisuVFAgCitcZkJcLVwtdHJ1ZW5hbWVcZlBcZkkgcGxpa1xmUAorV3m2d2lldGxhIHJ6ZWN6eXdpc3SxIG5henfqIG5hZHBpc2FuZWdvIHBsaWt1LgorLgorLlNIIE9QQ0pFCisuVFAgCitcZkJcLVwtYWRtaW5kaXJcZlBcZkkga2F0YWxvZ1xmUAorVXN0YXdpYSBrYXRhbG9nIGJhenkgZGFueWNoIGRwa2cgbmEgXGZJa2F0YWxvZ1xmUCAoZG9tebZsbmllIFxmSS92YXIvbGliL2Rwa2dcZlApLgorLlRQIAorXGZCXC1cLWRpdmVydFxmUCBcZkluYWRwaXN6XC1kb1xmUAorXGZJbmFkcGlzelwtZG9cZlAgamVzdCBsb2thbGl6YWNqsSwgZG8ga3TzcmVqIHpvc3RhbrEgbmFkcGlzYW5lIHdlcnNqZSBcZklwbGlrdVxmUAorZG9zdGFyY3phbmUgcHJ6ZXogaW5uZSBwYWtpZXR5LgorLlRQIAorXGZCXC1cLWxvY2FsXGZQCitPa3JltmxhLCC/ZSB6b3N0YW6xIG5hZHBpc2FuZSB3c3p5c3RraWUgd2Vyc2plIHRlZ28gcGxpa3UuIE96bmFjemEgdG8gLL9lCitiZXogv2FkbnljaCB3eWqxdGvzdywgcGxpayBqZXN0IG5hZHBpc3l3YW55LCBuaWV6YWxlv25pZSBvZCB0ZWdvLCBrdPNyeQorcGFraWV0IGplc3QgaW5zdGFsb3dhbnkuIEFkbWluaXN0cmF0b3IgbW+/ZSB0ZWdvIHW/eeYgZG8gemFpbnN0YWxvd2FuaWEKK2xva2FsbmllIHptb2R5Zmlrb3dhbmVqIHdlcnNqaSBwbGlrdS4KKy5UUCAKK1xmQlwtXC1wYWNrYWdlXGZQXGZJIHBha2lldFxmUAorXGZJcGFraWV0XGZQIGplc3QgbmF6d7EgcGFraWV0dSwga3TzcmVnbyBrb3BpYSBcZklwbGlrdVxmUCBuaWUgYupkemllIG5hZHBpc2FuYSwKK3RqLiBcZklwbGlrXGZQIGLqZHppZSBuYWRwaXNhbnkgZGxhIHdzenlzdGtpY2ggcGFraWV083cgb3By82N6IHBvZGFuZWdvCitcZklwYWtpZXR1XGZQLgorLlRQIAorXGZCXC1cLXF1aWV0XGZQCitUcnliIGNpY2h5LCBiZXogcm96d2xla7N5Y2gga29tdW5pa2F083cuCisuVFAgCitcZkJcLVwtcmVuYW1lXGZQCitQcnplbm9zaSBwbGlrIHcgamVkbrEgbHViIGRydWexIHN0cm9u6i4gXGZCZHBrZ1wtZGl2ZXJ0XGZQIHByemVyd2llIGR6aWGzYW5pZSwKK2plv2VsaSBwbGlrIGRvY2Vsb3d5IGp1vyBpc3RuaWVqZS4KKy5UUCAKK1xmQlwtXC10ZXN0XGZQCitUcnliIHRlc3Rvd3ksIHR6bi4gbmllIHd5a29udWplIL9hZG55Y2ggYWtjamksIHR5bGtvIHBva2F6dWplLCBjbyB6b3N0YbNvYnkKK3pyb2Jpb25lLgorLlRQIAorXGZCXC1cLWhlbHBcZlAKK1d5tndpZXRsYSBpbmZvcm1hY2rqIG8gdb95dGtvd2FuaXUgaSBrb/FjenkgZHppYbNhbmllLgorLlRQIAorXGZCXC1cLXZlcnNpb25cZlAKK1d5tndpZXRsYSBpbmZvcm1hY2rqIG8gd2Vyc2ppIGkgcG9tebZsbmllIGtv8WN6eSBkemlhs2FuaWUuCisuCisuU0ggVVdBR0kKK1doZW4gYWRkaW5nLCBkZWZhdWx0IGlzIFxmQlwtXC1sb2NhbFxmUCBhbmQgXGZCXC1cLWRpdmVydFxmUAorXGZJb3JpZ2luYWxcZlBcZkIuZGlzdHJpYlxmUC4gV2hlbiByZW1vdmluZywgXGZCXC1cLXBhY2thZ2VcZlAgb3IgXGZCXC1cLWxvY2FsXGZQIGFuZAorXGZCXC1cLWRpdmVydFxmUCBtdXN0IG1hdGNoIGlmIHNwZWNpZmllZC4KKworWmEgcG9tb2OxIFxmQmRwa2dcLWRpdmVydFxmUCBuaWUgbW+/bmEgbmFkcGlzYeYga2F0YWxvZ/N3LgorCitOYWxlv3kgYnnmIG9zdHJvv255bSBwb2RjemFzIG5hZHBpc3l3YW5pYSBiaWJsaW90ZWsKK3dzcPOzZHppZWxvbnljaC4gXGZCbGRjb25maWdcZlAoOCkgdHdvcnp5IGRvd2mxemFuaWEgc3ltYm9saWN6bmUgbmEgcG9kc3Rhd2llCitwb2xhIERUX1NPTkFNRSB1c3Rhd2lvbmVnbyB3IGJpYmxpb3RlY2UuIFBvbmlld2G/IGxkY29uZmlnIG5pZSBob25vcnVqZQorbmFkcGlzYfEgKHR5bGtvIGRwa2cgdG8gcm9iaSksIGRvd2mxemFuaWUgc3ltYm9saWN6bmUgbW+/ZSB3c2thenl3YeYgbmEKK25hZHBpc2FusSBiaWJsaW90ZWvqLCBqZb9lbGkgdGEgbmFkcGlzYW5hIGJpYmxpb3Rla2EgbWEgdGFraWUgc2FtbyBTT05BTUUsCitjbyBuaWVuYWRwaXNhbmEuCisuCisuU0ggUFJaWUujQURZCitBYnkgbmFkcGlzYeYgd3N6eXN0a2llIGtvcGllIHBsaWt1IFxmSS91c3IvYmluL3Byenlrs2FkXGZQIGRvCitcZkkvdXNyL2Jpbi9wcnp5a7NhZC5ibGFcZlAsIHRqLiBzcG93b2Rvd2HmLCC/ZSB3c3p5c3RraWUgcGFraWV0eSBkb3N0YXJjemFqsWNlCitcZkkvdXNyL2Jpbi9wcnp5a7NhZFxmUCB6YWluc3RhbHVqsSB0ZW4gcGxpayBqYWtvIFxmSS91c3IvYmluL3Byenlrs2FkLmJsYVxmUCBpCit6bWllbmmxIG5henfqIHBsaWt1LCBqZbZsaSBqZXN0IHRvIHd5bWFnYW5lOgorLkhQCitkcGtnXC1kaXZlcnQgXC1cLWRpdmVydCAvdXNyL2Jpbi9wcnp5a7NhZC5ibGEgXC1cLXJlbmFtZSAvdXNyL2Jpbi9wcnp5a7NhZAorLlBQCitBYnkgdXN1brHmIHRvIG5hZHBpc2FuaWU6CisuSFAKK2Rwa2dcLWRpdmVydCBcLVwtcmVuYW1lIFwtXC1yZW1vdmUgL3Vzci9iaW4vcHJ6eWuzYWQKKworLlBQCitBYnkgbmFwaXNh5iBcZkkvdXNyL2Jpbi9wcnp5a7NhZFxmUCBqYWtvIFxmSS91c3IvYmluL3Byenlrs2FkLmJsYVxmUCB3c3p5c3RraW0KK3Bha2lldG9tLCBwcvNidWqxY3ltIHphaW5zdGFsb3dh5iB0ZW4gcGxpaywgb3By82N6IHBha2lldHUgXGZJd2liYmxlXGZQOgorLkhQCitkcGtnXC1kaXZlcnQgXC1cLXBhY2thZ2Ugd2liYmxlIFwtXC1kaXZlcnQgL3Vzci9iaW4vcHJ6eWuzYWQuYmxhIFwtXC1yZW5hbWUKKy91c3IvYmluL3Byenlrs2FkCisuUFAKK0FieSB1c3VuseYgdG8gbmFkcGlzYW5pZToKKy5IUAorZHBrZ1wtZGl2ZXJ0IFwtXC1wYWNrYWdlIHdpYmJsZSBcLVwtcmVuYW1lIFwtXC1yZW1vdmUgL3Vzci9iaW4vcHJ6eWuzYWQKKy4KKy5TSCCmUk9ET1dJU0tPCisuVFAgCitcZkJEUEtHX0FETUlORElSXGZQCitJZiBzZXQgYW5kIHRoZSBcZkJcLVwtYWRtaW5kaXJcZlAgb3B0aW9uIGhhcyBub3QgYmVlbiBzcGVjaWZpZWQsIGl0IHdpbGwgYmUgdXNlZAorYXMgdGhlIGRwa2cgZGF0YSBkaXJlY3RvcnkuCisuVFAgCitcZkJEUEtHX01BSU5UU0NSSVBUX1BBQ0tBR0VcZlAKK0lmIHNldCBhbmQgdGhlIFxmQlwtXC1sb2NhbFxmUCBhbmQgXGZCXC1cLXBhY2thZ2VcZlAgb3B0aW9ucyBoYXZlIG5vdCBiZWVuIHNwZWNpZmllZCwKK1xmQmRwa2dcLWRpdmVydFxmUCB3aWxsIHVzZSBpdCBhcyB0aGUgcGFja2FnZSBuYW1lLgorLgorLlNIIFBMSUtJCisuVFAgCitcZkkvdmFyL2xpYi9kcGtnL2RpdmVyc2lvbnNcZlAKK1BsaWsgemF3aWVyYWqxY3kgb2JlY26xIGxpc3TqIG5hZHBpc2HxIHBsaWvzdyB3IHN5c3RlbWllLiBabG9rYWxpem93YW55IGplc3QKK3cga2F0YWxvZ3UgYWRtaW5pc3RyYWN5am55bSBkcGtnLCCzsWN6bmllIHogaW5ueW1pIHBsaWthbWkgd2G/bnltaSBkbGEgZHBrZywKK3Rha2ltaSBqYWsgXGZJc3RhdHVzXGZQIGx1YiBcZklhdmFpbGFibGVcZlAuCisuYnIKK1V3YWdhOiBwcnplZCB6YXN0sXBpZW5pZW0gcGxpa3Ugbm93sSB3ZXJzarEsIFxmQmRwa2dcLWRpdmVydFxmUCB6YWNob3d1amUgc3RhcrEKK2tvcGnqIHcgcGxpa3UgeiByb3pzemVyemVuaWVtICJcLW9sZCIuCisuCisuU0ggIlpPQkFDWiBUQUuvRSIKK1xmQmRwa2dcZlAoMSkuCisuCisuU0ggQVVUT1IKK0NvcHlyaWdodCBcKGNvIDE5OTUgSWFuIEphY2tzb24KKy5zcAorTmluaWVqc3p5IHByb2dyYW0gamVzdCBvcHJvZ3JhbW93YW5pZW0gd29sbnltLCBzcHJhd2S8IFBvd3N6ZWNobrEgTGljZW5jauoKK1B1YmxpY3pusSBHTlUgdyB3ZXJzamkgZHJ1Z2llaiBsdWIgcPO8bmllanN6ZWosIGJ5IGRvd2llZHppZeYgc2nqIG8KK3dhcnVua2FjaCBkeXN0cnlidWNqaS4gQnJhayBKQUtJRUpLT0xXSUVLIGd3YXJhbmNqaS4KKy5TSCAiVKNVTUFDWkUiCitQaW90ciBSb3N6YXR5Y2tpIDxkZXh0ZXJAZGViaWFuLm9yZz4sIDE5OTkKKy5icgorQmFydG9zeiBGZfFza2kgPGZlbmlvQGRlYmlhbi5vcmc+LCAyMDA0LTIwMDUKKy5icgorUm9iZXJ0IEx1YmVyZGEgPHJvYmVydEBkZWJpYW4ub3JnPiwgMjAwNi0yMDA4CisuYnIKK1dpa3RvciBXYW5kYWNob3dpY3ogPHNpcnllc0BnbWFpbC5jb20+LCAyMDA4CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9wbC9kcGtnLWdlbmNoYW5nZXMuMSBiL2Rwa2ctMS4xNi4xLjEvbWFuL3BsL2Rwa2ctZ2VuY2hhbmdlcy4xCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmFiMzIzNjkKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9wbC9kcGtnLWdlbmNoYW5nZXMuMQpAQCAtMCwwICsxLDEzOCBAQAorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlwiCisuXCIgVGhpcyBmaWxlIHdhcyBnZW5lcmF0ZWQgd2l0aCBwbzRhLiBUcmFuc2xhdGUgdGhlIHNvdXJjZSBmaWxlLgorLlwiCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuVEggZHBrZ1wtZ2VuY2hhbmdlcyAxIDIwMTFcLTA4XC0xNCAiUHJvamVrdCBEZWJpYW5hIiAicHJvZ3JhbXkgcG9tb2NuaWN6ZSBkcGtnIgorLlNIIE5BWldBCitkcGtnXC1nZW5jaGFuZ2VzIFwtIHR3b3J6eSBwbGlraSAuY2hhbmdlcworLgorLlNIIFNLo0FETklBCitcZkJkcGtnXC1nZW5jaGFuZ2VzXGZQIFtcZklvcHRpb25cZlAuLi5dCisuYnIKKy4KKy5TSCBPUElTCitcZkJkcGtnXC1nZW5jaGFuZ2VzXGZQIGN6eXRhIGluZm9ybWFjamUgeiByb3pwYWtvd2FuZWdvIGkgemJ1ZG93YW5lZ28gZHJ6ZXdhCitwYWtpZXR1ILxy82Szb3dlZ28gRGViaWFuYSBvcmF6IHogcGxpa/N3LCBrdPNyZSB3eWdlbmVyb3dhsywgaSBuYSBpY2gKK3BvZHN0YXdpZSB0d29yenkgcGxpayBrb250cm9sbnkgd3lkYW5pYSAocGxpayBcZkIuY2hhbmdlc1xmUCkuCisuCisuU0ggT1BDSkUKKy5UUCAKK1xmQlwtYlxmUCwgXGZCXC1CXGZQLCBcZkJcLUFcZlAKK09rcmW2bGEsIL9lIHd5a29ueXdhbmUgamVzdCBidWRvd2FuaWUgdHlsa28gcGFraWV083cgYmluYXJueWNoIChiZXoKK3ezsWN6YW5pYSBqYWtpY2hrb2x3aWVrIHBsaWvzdyC8cvNks293eWNoKS4gTmllIG1hIHLzv25pY3kgbWnqZHp5IFxmQlwtYlxmUCwKK1xmQlwtQlxmUCBpIFxmQlwtQVxmUCwgd3lnZW5lcm93YW55IHBsaWsgXGZCLmNoYW5nZXNcZlAgYupkemllIHphd2llcmHmIHdzenlzdGtpZSBwbGlraQordXR3b3J6b25lIHByemV6IHJlZ3WzeSBcZkJiaW5hcnlcLSpcZlAgYnVkb3dhbnljaCB3s2G2bmllIHBha2lldPN3LgorLlRQIAorXGZCXC1TXGZQCitPa3JltmxhLCC/ZSB0eWxrbyC8cvNks2EgYupksSBkb7OxY3pvbmUgZG8gd3lkYW5pYSAoYmV6IL9hZG55Y2ggcGFraWV083cKK2JpbmFybnljaCkuCisuUFAKK09wY2plIFxmQlwtc1xmUFxmSXhcZlAgb2tyZbZsYWqxLCBjenkgZG8gd3lkYW5pYSBkb7OxY3phbmUgc7Egb3J5Z2luYWxuZSBwbGlraQorvHLzZLNvd2UsIGplv2VsaSB6b3N0YW5pZSB3eWdlbmVyb3dhbnkgY2hv5iBqZWRlbiB6IG5pY2ggKHRqLiBuaWUgdb95dG8KK29wY2ppIFxmQlwtYlxmUCBsdWIgXGZCXC1CXGZQKS4KKy5UUCAKK1xmQlwtc2lcZlAKK0RvbXm2bG5pZSBsdWIgamW2bGkgdG8gb2tyZbZsb25vLCBvcnlnaW5hbG5lILxy82SzYSBi6mSxIGRvs7Fjem9uZSB0eWxrbworamW2bGkgbnVtZXIgb3J5Z2luYWxuZWogd2Vyc2ppIGF1dG9yYSBwcm9ncmFtdSAodHpuLiB3ZXJzamEgYmV6IGVwb2tpIGkgYmV6CitudW1lcnUgcmV3aXpqaSBEZWJpYW5hKSBy879uaSBzaeogb2QgbnVtZXJ1IHdlcnNqaSBhdXRvcmEgcHJvZ3JhbXUgegorcG9wcnplZG5pZWdvIHdwaXN1IGR6aWVubmlrYSB6bWlhbi4KKy5UUCAKK1xmQlwtc2FcZlAKK1d5bXVzemEgZG+zsWN6ZW5pZSBvcnlnaW5hbG55Y2ggvHLzZGWzLgorLlRQIAorXGZCXC1zZFxmUAorV3ltdXN6YSBwb21pbmnqY2llIG9yeWdpbmFsbnljaCC8cvNkZbMgaSBkb7OxY3plbmllIHR5bGtvIHBsaWt1IHLzv25pYworKGRpZmYpLgorLmZpCisuVFAgCitcZkJcLXZcZlBcZkl3ZXJzamFcZlAKK1Bvd29kdWplLCC/ZSBi6mSxIHW/eXdhbmUgaW5mb3JtYWNqZSB6IGR6aWVubmlrYSB6bWlhbiB6ZSB3c3p5c3RraWNoIHdlcnNqaQord2nqa3N6eWNoIG5pvyBcZkl3ZXJzamFcZlAuCisuVFAgCitcZkJcLUNcZlBcZklvcGlzX3ptaWFuXGZQCitDenl0YSBvcGlzIHptaWFuIHogcGxpa3UgXGZJb3Bpc196bWlhblxmUCwgemFtaWFzdCB1v3l3YeYgaW5mb3JtYWNqaSB6Citkemllbm5pa2Egem1pYW4geiBrYXRhbG9ndSB6ZSC8cvNks2FtaS4KKy5UUCAKK1xmQlwtbVxmUFxmSWFkcmVzIG9waWVrdW5hXGZQCitVv3l3YSBcZklhZHJlc3Vfb3BpZWt1bmFcZlAgamFrbyBuYXp3eSBpIGFkcmVzdSBlXC1tYWlsIG9waWVrdW5hIHRlZ28gcGFraWV0dSwKK3phbWlhc3QgcG9iaWVyYeYgdGUgd2FydG+2Y2kgeiBwbGlrdSBrb250cm9sbmVnbyB6IGthdGFsb2d1IHplILxy82SzYW1pLgorLlRQIAorXGZCXC1lXGZQXGZJYWRyZXNfb3BpZWt1bmFcZlAKK1W/eXdhIFxmSWFkcmVzdV9vcGlla3VuYVxmUCBqYWtvIG5hend5IGkgYWRyZXN1IGVcLW1haWwgb3BpZWt1bmEgdGVnbyB3eWRhbmlhLAoremFtaWFzdCBwb2JpZXJh5iB0ZSB3YXJ0b7ZjaSB6IGR6aWVubmlrYSB6bWlhbiB6IGthdGFsb2d1IHplILxy82SzYW1pLgorLlRQIAorXGZCXC1WXGZQXGZJbmF6d2FcZlBcZkI9XGZQXGZJd2FydG+25lxmUAorVXN0YXdpYSB6bWllbm6xIHBvZHN0YXdpZW5pYSB3eWq2Y2lhLiBTemN6ZWfzs293eSBvcGlzIHBvZHN0YXdpYW5pYQorem1pZW5ueWNoIHd5arZjaW93eWNoIHpuYWpkdWplIHNp6iB3IFxmQmRlYlwtc3Vic3R2YXJzXGZQKDUpLgorLlRQIAorXGZCXC1UXGZQXGZJcGxpa196bWllbm55Y2hfcG9kc3RcZlAKK1JlYWQgc3Vic3RpdHV0aW9uIHZhcmlhYmxlcyBpbiBcZklzdWJzdHZhcnNmaWxlXGZQOyB0aGUgZGVmYXVsdCBpcworXGZCZGViaWFuL3N1YnN0dmFyc1xmUC4gIE5vIHZhcmlhYmxlIHN1YnN0aXR1dGlvbiBpcyBkb25lIG9uIGFueSBvZiB0aGUgZmllbGRzCit0aGF0IGFyZSBvdXRwdXQsIGhvd2V2ZXIgdGhlIHNwZWNpYWwgdmFyaWFibGUgXGZJRm9ybWF0XGZQIHdpbGwgb3ZlcnJpZGUgdGhlCitmaWVsZCBvZiB0aGUgc2FtZSBuYW1lLiBUaGlzIG9wdGlvbiBjYW4gYmUgdXNlZCBtdWx0aXBsZSB0aW1lcyB0byByZWFkCitzdWJzdGl0dXRpb24gdmFyaWFibGVzIGZyb20gbXVsdGlwbGUgZmlsZXMuCisKKy5UUCAKK1xmQlwtRFxmUFxmSXBvbGVcZlBcZkI9XGZQXGZJd2FydG+25lxmUAorTmFkcGlzdWplIGx1YiBkb2RhamUgd3lqtmNpb3dlIHBvbGUgcGxpa3Uga29udHJvbG5lZ28uCisuVFAgCitcZkJcLVVcZlBcZklwb2xlXGZQCitVc3V3YSB3eWq2Y2lvd2UgcG9sZSBwbGlrdSBrb250cm9sbmVnby4KKy5UUCAKK1xmQlwtY1xmUFxmSXBsaWtfa29udHJvbG55XGZQCitPa3JltmxhIGez83dueSBwbGlrIGtvbnRyb2xueSwgeiBrdPNyZWdvIGLqZLEgY3p5dGFuZSBpbmZvcm1hY2plLiBEb215tmxuaWUKK2plc3QgdG8gXGZCZGViaWFuL2NvbnRyb2xcZlAuCisuVFAgCitcZkJcLWxcZlBcZklkemllbm5pa196bWlhblxmUAorT2tyZbZsYSBkemllbm5payB6bWlhbiwgeiBrdPNyZWdvIGLqZLEgY3p5dGFuZSBpbmZvcm1hY2plLiBEb215tmxueW0gcGxpa2llbQoramVzdCBcZkJkZWJpYW4vY2hhbmdlbG9nXGZQLgorLlRQIAorXGZCXC1mXGZQXGZJcGxpa196X2xpc3SxX3BsaWvzd1xmUAorQ3p5dGEgeiB0ZWdvIHBsaWt1IGxpc3TqIHBsaWvzdyBkbyB3eWRhbmlhIHphbWlhc3Qgdb95d2HmIFxmQmRlYmlhbi9maWxlc1xmUC4KKy5UUCAKK1xmQlwtRlxmUFxmSWZvcm1hdF9kemllbm5pa2Ffem1pYW5cZlAKK09rcmW2bGEgZm9ybWF0IGR6aWVubmlrYSB6bWlhbi4gRG9tebZsbmllIGZvcm1hdCBqZXN0IGN6eXRhbnkgemUgc3BlY2phbG5lagorbGluaWkgem5hamR1arFjZWogc2nqIHByenkga2/xY3UgcGxpa3UgbHViIFwtIGpltmxpIHRha2EgbGluaWEgbmllIGlzdG5pZWplIFwtCit1v3l3YW55IGplc3Qgc3RhbmRhcmRvd3kgZm9ybWF0IERlYmlhbmEuCisuVFAgCitcZkJcLXVcZlBcZklrYXRhbG9nX3pfcGxpa2FtaV93eWRhbmlhXGZQCitQb3N6dWt1amUgcGxpa/N3LCBrdPNyZSBtYWqxIGJ55iBkb7OxY3pvbmUgZG8gd3lkYW5pYSB3CitcZklrYXRhbG9ndV96X3BsaWthbWlfd3lkYW5pYVxmUCB6YW1pYXN0IHcga2F0YWxvZ3UgXGZCLi5cZlAgKFxmQmRwa2dcLWdlbmNoYW5nZXNcZlAKK211c2kgem5hbGW85iB0ZSBwbGlraSwgdGFrIL9lYnkgbfNjIHphcGlzYeYgaWNoIHJvem1pYXJ5IG9yYXogc3VteSBrb250cm9sbmUKK3cgcGxpa3UgXGZCLmNoYW5nZXNcZlApLgorLlRQIAorXGZCXC1xXGZQCitaYXp3eWN6YWogXGZCZHBrZ1wtZ2VuY2hhbmdlc1xmUCBuYSBzdGFuZGFyZG93eW0gd3lqtmNpdSBis+pk83cgd3lwaXN6ZQora29tdW5pa2F0eSBpbmZvcm11arFjZSBuYSBwcnp5a7NhZCBvIGxpY3piaWUgcGxpa/N3IHd5Z2VuZXJvd2FueWNoCiu8cvNks293eWNoIHBha2lldHUuIFxmQlwtcVxmUCBwb3dzdHJ6eW11amUgd3lwaXN5d2FuaWUgdGFraWNoIGtvbXVuaWthdPN3CisuVFAgCitcZkJcLWhcZlAsIFxmQlwtXC1oZWxwXGZQCitXebZ3aWV0bGEgaW5mb3JtYWNq6iBvIHW/eXRrb3dhbml1IGkga2/xY3p5IGR6aWGzYW5pZS4KKy5UUCAKK1xmQlwtXC12ZXJzaW9uXGZQCitXebZ3aWV0bGEgaW5mb3JtYWNq6iBvIHdlcnNqaSBpIHBvbXm2bG5pZSBrb/FjenkgZHppYbNhbmllLgorLgorLlNIIFBMSUtJCisuVFAgCitcZkJkZWJpYW4vZmlsZXNcZlAKK0xpc3RhIHd5Z2VuZXJvd2FueWNoIHBsaWvzdywga3TzcmUgc7EgY3rqtmNpsSBwcnp5Z290b3d5d2FuZWdvCit3eWRhbmlhLiBcZkJkcGtnXC1nZW5jaGFuZ2VzXGZQIGN6eXRhIHN0sWQgZGFuZSBwb2RjemFzIHR3b3J6ZW5pYSBwbGlrdQorXCZcZkIuY2hhbmdlc1xmUC4KKy4KKy5TSCBBVVRPUlpZCitDb3B5cmlnaHQgXChjbyAxOTk1XC0xOTk2IElhbiBKYWNrc29uCisuYnIKK0NvcHlyaWdodCBcKGNvIDIwMDAgV2ljaGVydCBBa2tlcm1hbgorLnNwCitOaW5pZWpzenkgcHJvZ3JhbSBqZXN0IG9wcm9ncmFtb3dhbmllbSB3b2xueW0sIHNwcmF3ZLwgUG93c3plY2husSBMaWNlbmNq6gorUHVibGljem6xIEdOVSB3IHdlcnNqaSBkcnVnaWVqIGx1YiBw87xuaWVqc3plaiwgYnkgZG93aWVkemll5iBzaeogbword2FydW5rYWNoIGR5c3RyeWJ1Y2ppLiBCcmFrIEpBS0lFSktPTFdJRUsgZ3dhcmFuY2ppLgorLlNIICJUo1VNQUNaRSIKK1Bpb3RyIFJvc3phdHlja2kgPGRleHRlckBkZWJpYW4ub3JnPiwgMTk5OQorLmJyCitCYXJ0b3N6IEZl8XNraSA8ZmVuaW9AZGViaWFuLm9yZz4sIDIwMDQtMjAwNQorLmJyCitSb2JlcnQgTHViZXJkYSA8cm9iZXJ0QGRlYmlhbi5vcmc+LCAyMDA2LTIwMDgKKy5icgorV2lrdG9yIFdhbmRhY2hvd2ljeiA8c2lyeWVzQGdtYWlsLmNvbT4sIDIwMDgKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL3BsL2Rwa2ctZ2VuY29udHJvbC4xIGIvZHBrZy0xLjE2LjEuMS9tYW4vcGwvZHBrZy1nZW5jb250cm9sLjEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOGM1MGU2YQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL3BsL2Rwa2ctZ2VuY29udHJvbC4xCkBAIC0wLDAgKzEsMTQwIEBACisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkcGtnXC1nZW5jb250cm9sIDEgMjAxMVwtMDhcLTE0ICJQcm9qZWt0IERlYmlhbmEiICJwcm9ncmFteSBwb21vY25pY3plIGRwa2ciCisuU0ggTkFaV0EKK2Rwa2dcLWdlbmNvbnRyb2wgXC0gdHdvcnp5IHBsaWtpIGtvbnRyb2xuZSBEZWJpYW5hCisuCisuU0ggU0ujQUROSUEKK1xmQmRwa2dcLWdlbmNvbnRyb2xcZlAgW1xmSW9wdGlvblxmUC4uLl0KKy4KKy5TSCBPUElTCitcZkJkcGtnXC1nZW5jb250cm9sXGZQIGN6eXRhIGluZm9ybWFjamUgeiByb3pwYWtvd2FuZWdvIGRyemV3YSC8cvNkZbMgcGFraWV0dQorRGViaWFuYSBpIGdlbmVydWplIHBsaWsga29udHJvbG55IHBha2lldHUgYmluYXJuZWdvIChkb215tmxuaWUgamVzdCB0bworZGViaWFuL3RtcC9ERUJJQU4vY29udHJvbCksIHVwcmFzemN6YWqxYyBwb2RjemFzIHRlZ28gcHJvY2VzdSBwb2xhIGRvdHljerFjZQoremFsZb9ub7ZjaS4KKy5zcAorUG9sYSBcZklQcmVcLURlcGVuZHNcZlAsIFxmSURlcGVuZHNcZlAsIFxmSVJlY29tbWVuZHNcZlAgb3JheiBcZklTdWdnZXN0c1xmUCBzsQordXByYXN6Y3phbmUgdyB0ZWogd7Nhtm5pZSBrb2xlam5vtmNpIHByemV6IHVzdXdhbmllIHphbGW/bm+2Y2kgbyBrdPNyeWNoCit3aWFkb21vLCC/ZSBzsSBwcmF3ZHppd2UsIHBvbmlld2G/IHd5bmlrYWqxIHogaW5ueWNoLCBwcnpldHdvcnpvbnljaCBqdb8KK21vY25pZWpzenljaCB6YWxlv25vtmNpLiBVc3Vuaep0ZSB0YWu/ZSBi6mSxIHdzemVsa2llIHphbGW/bm+2Y2kgcGFraWV0dSBvZAorc2FtZWdvIHNpZWJpZSAoZG9rs2FkbmllajogdXN1bmnqdGUgYupksSB3c3p5c3RraWUgemFsZb9ub7ZjaSwga3TzcmUgYupksQorcHJhd2R6aXdlIHBvIHphaW5zdGFsb3dhbml1IGJpZb+xY2VqIHdlcnNqaSBwYWtpZXR1KS4gTfN3abFjIGrqenlraWVtCitsb2dpa2ksIHphY2hvd2FuYSBi6mR6aWUgY3rqtuYgd3Nw82xuYSB6ZSB6YmlvcnUgd3N6eXN0a2ljaCB6YWxlv25vtmNpCitkb3R5Y3qxY3ljaCB0ZWdvIHNhbWVnbyBwYWtpZXR1LiBQb3J6sWRlayB6YWxlv25vtmNpIGplc3QgemFjaG93eXdhbnkgdwordGFraW0gc3RvcG5pdSwgdyBqYWtpbSBqZXN0IHRvIHR5bGtvIG1vv2xpd2U6IGplv2VsaSBqYWthtiB6YWxlv25vtuYgbXVzaQorYnnmIHVzdW5p6nRhIHogcG93b2R1IGlubmVqIHphbGW/bm+2Y2kgd3lzdOpwdWqxY2VqIGRhbGVqIHcgZGFueW0gcG9sdSwKK3d5cGllcmFqsWNhIHphbGW/bm+25iB6YWptaWUgbWllanNjZSB0ZWogdXN1d2FuZWouCisuc3AKK1Bvem9zdGGzZSBwb2xhIHJlbGFjeWpuZSAoXGZJRW5oYW5jZXNcZlAsIFxmSUNvbmZsaWN0c1xmUCwgXGZJQnJlYWtzXGZQLCBcZklSZXBsYWNlc1xmUAorb3JheiBcZklQcm92aWRlc1xmUCkgdGFrv2Ugc7EgaW5keXdpZHVhbG5pZSB1cHJhc3pjemFuZSBwcnpleiB3eWxpY3phbmllIHN1bXkKK3Lzv255Y2ggemFsZb9ub7ZjaSwgamW2bGkgdyBkYW55bSBwb2x1IHBha2lldCBqZXN0IHd5bWllbmlvbnkgd2llbGUgcmF6eS4KKy5zcAorXGZCZHBrZ1wtZ2VuY29udHJvbFxmUCBkb2RhamUgcG9uYWR0byB3cGlzIGRvdHljerFjeSBwYWtpZXR1IGJpbmFybmVnbyBkbworXGZCZGViaWFuL2ZpbGVzXGZQLgorLgorLlNIIE9QQ0pFCisuVFAgCitcZkJcLXZcZlBcZkl3ZXJzamFcZlAKK1VzdGF3aWEgbnVtZXIgd2Vyc2ppIGdlbmVyb3dhbmVnbyBwYWtpZXR1IGJpbmFybmVnby4KKy5UUCAKK1xmQlwtVlxmUFxmSW5hendhXGZQXGZCPVxmUFxmSXdhcnRvtuZcZlAKK1VzdGF3aWEgem1pZW5usSBwb2RzdGF3aWVuaWEgd3lqtmNpYS4gU3pjemVn87Nvd3kgb3BpcyBwb2RzdGF3aWFuaWEKK3ptaWVubnljaCB3eWq2Y2lvd3ljaCB6bmFqZHVqZSBzaeogdyBcZkJkZWJcLXN1YnN0dmFyc1xmUCg1KS4KKy5UUCAKK1xmQlwtVFxmUFxmSXBsaWtfem1pZW5ueWNoX3BvZHN0XGZQCitSZWFkIHN1YnN0aXR1dGlvbiB2YXJpYWJsZXMgaW4gXGZJc3Vic3R2YXJzZmlsZVxmUDsgdGhlIGRlZmF1bHQgaXMKK1xmQmRlYmlhbi9zdWJzdHZhcnNcZlAuICBUaGlzIG9wdGlvbiBjYW4gYmUgdXNlZCBtdWx0aXBsZSB0aW1lcyB0byByZWFkCitzdWJzdGl0dXRpb24gdmFyaWFibGVzIGZyb20gbXVsdGlwbGUgZmlsZXMuCisuVFAgCitcZkJcLURcZlBcZklwb2xlXGZQXGZCPVxmUFxmSXdhcnRvtuZcZlAKK05hZHBpc3VqZSBsdWIgZG9kYWplIHd5arZjaW93ZSBwb2xlIHBsaWt1IGtvbnRyb2xuZWdvLgorLlRQIAorXGZCXC1VXGZQXGZJcG9sZVxmUAorVXN1d2Egd3lqtmNpb3dlIHBvbGUgcGxpa3Uga29udHJvbG5lZ28uCisuVFAgCitcZkJcLWNcZlBcZklwbGlrX2tvbnRyb2xueVxmUAorT2tyZbZsYSBns/N3bnkgcGxpayBrb250cm9sbnksIHoga3TzcmVnbyBi6mSxIGN6eXRhbmUgaW5mb3JtYWNqZS4gRG9tebZsbmllCitqZXN0IHRvIFxmQmRlYmlhbi9jb250cm9sXGZQLgorLlRQIAorXGZCXC1sXGZQXGZJZHppZW5uaWtfem1pYW5cZlAKK09rcmW2bGEgZHppZW5uaWsgem1pYW4sIHoga3TzcmVnbyBi6mSxIGN6eXRhbmUgaW5mb3JtYWNqZS4gRG9tebZsbnltIHBsaWtpZW0KK2plc3QgXGZCZGViaWFuL2NoYW5nZWxvZ1xmUC4KKy5UUCAKK1xmQlwtZlxmUFxmSXBsaWtfel9saXN0sV9wbGlr83dcZlAKK0N6eXRhIGx1YiB6YXBpc3VqZSBsaXN06iBwbGlr83cgd3lkYW5pYSBkbyBwbGlrdSBwb2RhbmVnbyBqYWtvIGFyZ3VtZW50IHRlagorb3BjamksIHphbWlhc3QgZG8gcGxpa3UgXGZCZGViaWFuL2ZpbGVzXGZQLgorLlRQIAorXGZCXC1GXGZQXGZJZm9ybWF0X2R6aWVubmlrYV96bWlhblxmUAorT2tyZbZsYSBmb3JtYXQgZHppZW5uaWthIHptaWFuLiBEb215tmxuaWUgZm9ybWF0IGplc3QgY3p5dGFueSB6ZSBzcGVjamFsbmVqCitsaW5paSB6bmFqZHVqsWNlaiBzaeogcHJ6eSBrb/FjdSBwbGlrdSBsdWIgXC0gamW2bGkgdGFrYSBsaW5pYSBuaWUgaXN0bmllamUgXC0KK3W/eXdhbnkgamVzdCBzdGFuZGFyZG93eSBmb3JtYXQgRGViaWFuYS4KKy5UUCAKK1xmQlwtcFxmUFxmSXBha2lldFxmUAorR2VuZXJ1amUgaW5mb3JtYWNqZSBvIHBha2llY2llIGJpbmFybnltIFxmSXBha2lldFxmUC4gSmW/ZWxpIHBsaWsga29udHJvbG55CitwYWtpZXR1ILxy82Szb3dlZ28gd3ltaWVuaWEgdHlsa28gamVkZW4gcGFraWV0IGJpbmFybnksIHRvIG9wY2rqIHTqIG1vv25hCitwb21pbrHmLCB3IHByemVjaXdueW0gd3lwYWRrdSB3eW1hZ2FuZSBqZXN0IHdza2F6YW5pZSwgZGxhIGt083JlZ28gcGFraWV0dQorYmluYXJuZWdvIHd5Z2VuZXJvd2HmIGluZm9ybWFjamUuCisuVFAgCitcZkJcLW5cZlBcZkluYXp3YV9wbGlrdVxmUAorT2tyZbZsYSwgv2UgbmF6d7EgcGxpa3UgcGFraWV0dSBi6mR6aWUgXGZJbmF6d2FfcGxpa3VcZlAgemFtaWFzdCBub3JtYWxuZWoKK25hend5IHBsaWt1IHcgcG9zdGFjaSBwYWtpZXRfd2Vyc2phX2FyY2hpdGVrdHVyYS5kZWIKKy5UUCAKK1xmQlwtaXNcZlAsIFxmQlwtaXBcZlAsIFxmQlwtaXNwXGZQCitUZSBvcGNqZSBzsSBpZ25vcm93YW5lIHcgY2VsdSB6YWNob3dhbmlhIGtvbXBhdHliaWxub7ZjaSB6ZSBzdGFyc3p5bWkKK3dlcnNqYW1pIGRwa2dcLWRldiwgb2JlY25pZSBzsSB1em5hd2FuZSB6YSBwcnplc3Rhcnphs2UuIFBvcHJ6ZWRuaW8gYnmzeQordb95d2FuZSBkbyBuYWthemFuaWEgcHJvZ3JhbW93aSBkcGtnXC1nZW5jb250cm9sIHezsWN6ZW5pYSBw82wgU2VjdGlvbiBpCitQcmlvcml0eSBkbyBwbGlrdSBrb250cm9sbmVnby4gT2JlY25pZSBqZXN0IHRvIGRvbXm2bG5lIHphY2hvd2FuaWUuIEFieQordXp5c2th5iBwb3ByemVkbmllIHphY2hvd2FuaWUsIG1vv25hIHW/eeYgb3BjamkgXGZCXC1VXGZQLCBkemnqa2kga3TzcmVqIG1vv25hCit1c3VuseYgcG93eb9zemUgcG9sYSB6IHBsaWt1IGtvbnRyb2xuZWdvLgorLlRQIAorXGZCXC1QXGZQXGZJa2F0YWxvZ19idWRvd2FuaWFfcGFraWV0dVxmUAorTfN3aSBwcm9ncmFtb3dpIFxmQmRwa2dcLXNvdXJjZVxmUCwgv2UgcGFraWV0IGplc3QgYnVkb3dhbnkgdworXGZJa2F0YWxvZ3VfYnVkb3dhbmlhX3Bha2lldHVcZlAsIHphbWlhc3QgdyBcZkJkZWJpYW4vdG1wXGZQLiBLYXRhbG9nIHRlbiBqZXN0Cit1v3l3YW55IGRvIHpuYWxlemllbmlhIGRvbXm2bG55Y2ggd2FydG+2Y2kgem1pZW5uZWogcG9kc3Rhd2lhbmlhCitcZkJJbnN0YWxsZWRcLVNpemVcZlAgaSBwb2xhIHcgcGxpa3Uga29udHJvbG55bSBvIHRlaiBzYW1laiBuYXp3aWUgKHByenkgdb95Y2l1CitkdSkgb3JheiBkb215tmxuZWogbG9rYWxpemFjamkgcGxpa3Ugd3luaWtvd2Vnby4KKy5UUCAKK1xmQlwtT1xmUAorV3lwaXN1amUgcGxpayBrb250cm9sbnkgbmEgc3RhbmRhcmRvd2Ugd3lqtmNpZSwgYSBuaWUgZG8gcGxpa3UKK1xmQmRlYmlhbi90bXAvREVCSUFOL2NvbnRyb2xcZlAgKGx1YgorXGZJa2F0YWxvZ3VfYnVkb3dhbmlhX3Bha2lldHVcZlBcZkIvREVCSUFOL2NvbnRyb2xcZlAsIGdkeSB1v3l0byBcZkJcLVBcZlApLgorLlRQIAorXGZCXC1oXGZQLCBcZkJcLVwtaGVscFxmUAorV3m2d2lldGxhIGluZm9ybWFjauogbyB1v3l0a293YW5pdSBpIGtv8WN6eSBkemlhs2FuaWUuCisuVFAgCitcZkJcLVwtdmVyc2lvblxmUAorV3m2d2lldGxhIGluZm9ybWFjauogbyB3ZXJzamkgaSBwb215tmxuaWUga2/xY3p5IGR6aWGzYW5pZS4KKy4KKy5TSCBQTElLSQorLlRQIAorXGZCZGViaWFuL2NvbnRyb2xcZlAKK0ez83dueSBwbGlrIGtvbnRyb2xueSwgemF3aWVyYWqxY3kgbmllemFsZb9uZSBvZCB3ZXJzamkgaW5mb3JtYWNqZSB6YXLzd25vIG8KK3Bha2llY2llILxy82Szb3d5bSwgamFrIGkgbyBwYWtpZXRhY2ggYmluYXJueWNoLCBrdPNyZSBzsSB0d29yem9uZSB6IHBha2lldHUKK7xy82Szb3dlZ28uCisuVFAgCitcZkJkZWJpYW4vZmlsZXNcZlAKK0xpc3RhIHd5Z2VuZXJvd2FueWNoIHBsaWvzdywga3TzcmUgc7EgY3rqtmNpsSBwcnp5Z290b3d5d2FuZWdvCit3eWRhbmlhLiBcZkJkcGtnXC1nZW5jb250cm9sXGZQIHphcGlzdWplIHR1dGFqIHByenlwdXN6Y3phbG5lIG5hend5CitwbGlr83dcLXBha2lldPN3IGJpbmFybnljaCBnZW5lcm93YW55Y2ggeiBwbGlrdSBrb250cm9sbmVnby4KKy4KKy5TSCBBVVRPUlpZCitDb3B5cmlnaHQgXChjbyAxOTk1XC0xOTk2IElhbiBKYWNrc29uCisuYnIKK0NvcHlyaWdodCBcKGNvIDIwMDAgV2ljaGVydCBBa2tlcm1hbgorLmJyCitDb3B5cmlnaHQgXChjbyAyMDA3XC0yMDA4IFJhcGhhXFs6ZV1sIEhlcnR6b2cKKy5zcAorTmluaWVqc3p5IHByb2dyYW0gamVzdCBvcHJvZ3JhbW93YW5pZW0gd29sbnltLCBzcHJhd2S8IFBvd3N6ZWNobrEgTGljZW5jauoKK1B1YmxpY3pusSBHTlUgdyB3ZXJzamkgZHJ1Z2llaiBsdWIgcPO8bmllanN6ZWosIGJ5IGRvd2llZHppZeYgc2nqIG8KK3dhcnVua2FjaCBkeXN0cnlidWNqaS4gQnJhayBKQUtJRUpLT0xXSUVLIGd3YXJhbmNqaS4KKy5TSCAiVKNVTUFDWkUiCitQaW90ciBSb3N6YXR5Y2tpIDxkZXh0ZXJAZGViaWFuLm9yZz4sIDE5OTkKKy5icgorQmFydG9zeiBGZfFza2kgPGZlbmlvQGRlYmlhbi5vcmc+LCAyMDA0LTIwMDUKKy5icgorUm9iZXJ0IEx1YmVyZGEgPHJvYmVydEBkZWJpYW4ub3JnPiwgMjAwNi0yMDA4CisuYnIKK1dpa3RvciBXYW5kYWNob3dpY3ogPHNpcnllc0BnbWFpbC5jb20+LCAyMDA4CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9wbC9kcGtnLW5hbWUuMSBiL2Rwa2ctMS4xNi4xLjEvbWFuL3BsL2Rwa2ctbmFtZS4xCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjRhNjk0OGYKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9wbC9kcGtnLW5hbWUuMQpAQCAtMCwwICsxLDEwNiBAQAorLlwiIFRoaXMgaXMgYW4gLSotIG5yb2ZmIC0qLSBzb3VyY2UgZmlsZS4KKy5cIiBkcGtnLW5hbWUgYW5kIHRoaXMgbWFucGFnZSBhcmUgQ29weXJpZ2h0IMKpIDE5OTUsMTk5NiBieSBFcmljayBCcmFuZGVyaG9yc3QuCisuXCIKKy5cIiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgdmVyc2lvbiAyCisuXCIgb3IgbGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gIFRoZXJlIGlzIE5PIHdhcnJhbnR5LgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlwiCisuXCIgVGhpcyBmaWxlIHdhcyBnZW5lcmF0ZWQgd2l0aCBwbzRhLiBUcmFuc2xhdGUgdGhlIHNvdXJjZSBmaWxlLgorLlwiCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuVEggZHBrZ1wtbmFtZSAxIDIwMTFcLTA4XC0xNCAiUHJvamVrdCBEZWJpYW5hIiAicHJvZ3JhbXkgcG9tb2NuaWN6ZSBkcGtnIgorLlNIIE5BWldBCitkcGtnXC1uYW1lIFwtIHptaWVuaWEgbmF6d3kgcGFraWV083cgRGViaWFuYSBuYSBwZbNuZQorLgorLlNIIFNLo0FETklBCitcZkJkcGtnXC1uYW1lXGZQIFtcZklvcHRpb25cZlAuLi5dIFtcZkJcLVwtXGZQXSBcZklmaWxlXGZQLi4uCisuCisuU0ggT1BJUworLlBQCitUaGlzIG1hbnVhbCBwYWdlIGRvY3VtZW50cyB0aGUgXGZCZHBrZ1wtbmFtZVxmUCBwcm9ncmFtIHdoaWNoIHByb3ZpZGVzIGFuIGVhc3kKK3dheSB0byByZW5hbWUgXGZCRGViaWFuXGZQIHBhY2thZ2VzIGludG8gdGhlaXIgZnVsbCBwYWNrYWdlIG5hbWVzLiBBIGZ1bGwKK3BhY2thZ2UgbmFtZSBjb25zaXN0cyBvZgorXGZJcGFja2FnZVxmUFxmQl9cZlBcZkl2ZXJzaW9uXGZQXGZCX1xmUFxmSWFyY2hpdGVjdHVyZVxmUFxmQi5cZlBcZklwYWNrYWdlXC10eXBlXGZQIGFzIHNwZWNpZmllZAoraW4gdGhlIGNvbnRyb2wgZmlsZSBvZiB0aGUgcGFja2FnZS4gVGhlIFxmSXZlcnNpb25cZlAgcGFydCBvZiB0aGUgZmlsZW5hbWUKK2NvbnNpc3RzIG9mIHRoZSB1cHN0cmVhbSB2ZXJzaW9uIGluZm9ybWF0aW9uIG9wdGlvbmFsbHkgZm9sbG93ZWQgYnkgYSBoeXBoZW4KK2FuZCB0aGUgcmV2aXNpb24gaW5mb3JtYXRpb24uIFRoZSBcZklwYWNrYWdlXC10eXBlXGZQIHBhcnQgY29tZXMgZnJvbSB0aGF0IGZpZWxkCitpZiBwcmVzZW50IG9yIGZhbGxiYWNrcyB0byBcZkJkZWJcZlAuCisuCisuU0ggT1BDSkUKKy5UUCAKK1xmQlwtYVxmUCwgXGZCXC1cLW5vXC1hcmNoaXRlY3R1cmVcZlAKK1d5bmlrb3d5IHBsaWsgbmllIGLqZHppZSBtaWGzIGluZm9ybWFjamkgbyBhcmNoaXRla3R1cnplLgorLlRQIAorXGZCXC1rXGZQLCBcZkJcLVwtc3ltbGlua1xmUAorVHdvcnp5IGRvd2mxemFuaWUgc3ltYm9saWN6bmUsIHphbWlhc3QgcHJ6ZW5vc2nmIHBsaWsuCisuVFAgCitcZkJcLW9cZlAsIFxmQlwtXC1vdmVyd3JpdGVcZlAKK0lzdG5pZWqxY2UgcGxpa2kgYupksSBuYWRwaXNhbmUsIGplv2VsaSBpY2ggbmF6d3kgc7EgdGFraWUgc2FtZSBqYWsgbmF6d3kKK3BsaWvzdyB3eW5pa293eWNoLgorLlRQIAorXGZCXC1zXGZQLCBcZkJcLVwtc3ViZGlyXGZQIFtcZklrYXRhbG9nXGZQXQorRmlsZXMgd2lsbCBiZSBtb3ZlZCBpbnRvIGEgc3ViZGlyZWN0b3J5LiBJZiB0aGUgZGlyZWN0b3J5IGdpdmVuIGFzIGFyZ3VtZW50CitleGlzdHMgdGhlIGZpbGVzIHdpbGwgYmUgbW92ZWQgaW50byB0aGF0IGRpcmVjdG9yeSBvdGhlcndpc2UgdGhlIG5hbWUgb2YgdGhlCit0YXJnZXQgZGlyZWN0b3J5IGlzIGV4dHJhY3RlZCBmcm9tIHRoZSBzZWN0aW9uIGZpZWxkIGluIHRoZSBjb250cm9sIHBhcnQgb2YKK3RoZSBwYWNrYWdlLiBUaGUgdGFyZ2V0IGRpcmVjdG9yeSB3aWxsIGJlCitgdW5zdGFibGUvYmluYXJ5XC1cZklhcmNoaXRlY3R1cmVcZlAvXGZJc2VjdGlvblxmUCcuIElmIHRoZSBzZWN0aW9uIGlzIG5vdCBmb3VuZCBpbgordGhlIGNvbnRyb2wsIHRoZW4gYG5vXC1zZWN0aW9uJyBpcyBhc3N1bWVkLCBhbmQgaW4gdGhpcyBjYXNlLCBhcyB3ZWxsIGFzIGZvcgorc2VjdGlvbnMgYG5vblwtZnJlZScgYW5kIGBjb250cmliJyB0aGUgdGFyZ2V0IGRpcmVjdG9yeSBpcworYFxmSXNlY3Rpb25cZlAvYmluYXJ5XC1cZklhcmNoaXRlY3R1cmVcZlAnLiBUaGUgc2VjdGlvbiBmaWVsZCBpc24ndCByZXF1aXJlZCBzbyBhCitsb3Qgb2YgcGFja2FnZXMgd2lsbCBmaW5kIHRoZWlyIHdheSB0byB0aGUgYG5vXC1zZWN0aW9uJyBhcmVhLiBVc2UgdGhpcworb3B0aW9uIHdpdGggY2FyZSwgaXQncyBtZXNzeS4KKy5UUCAKK1xmQlwtY1xmUCwgXGZCXC1cLWNyZWF0ZVwtZGlyXGZQCitPcGNqYSB0YSBtb79lIGJ55iB1v3l0YSCzsWN6bmllIHogb3BjarEgXC1zLiBKZbZsaSBrYXRhbG9nIGRvY2Vsb3d5IG5pZQoraXN0bmllamUsIHRvIHpvc3RhbmllIHV0d29yem9ueS4gXGZCUHJvc3rqIG9zdHJvv25pZSB1v3l3YeYgdGVqIG9wY2ppLlxmUAorLlRQIAorXGZCXC1oXGZQLCBcZkJcLVwtaGVscFxmUAorV3m2d2lldGxhIGluZm9ybWFjauogbyB1v3l0a293YW5pdSBpIGtv8WN6eSBkemlhs2FuaWUuCisuVFAgCitcZkJcLXZcZlAsIFxmQlwtXC12ZXJzaW9uXGZQCitXebZ3aWV0bGEgaW5mb3JtYWNq6iBvIHdlcnNqaSBpIHBvbXm2bG5pZSBrb/FjenkgZHppYbNhbmllLgorLgorLlNIIFBSWllLo0FEWQorLlRQIAorXGZCZHBrZ1wtbmFtZSBiYXJcLWZvby5kZWJcZlAKK05hendhIHBsaWt1ICJiYXJcLWZvby5kZWIiIHpvc3RhbmllIHptaWVuaW9uYSBuYSBiYXJcLWZvb18xLjBcLTJfaTM4Ni5kZWIgbHViCitjb7YgcG9kb2JuZWdvICh3IHphbGW/bm+2Y2kgb2QgaW5mb3JtYWNqaSB6YXdhcnR5Y2ggdyBwbGlrdSBrb250cm9sbnltCitwYWtpZXR1ICJiYXJcLWZvby5kZWIiKS4KKy5UUCAKK1xmQmZpbmQgL3Jvb3QvZGViaWFuLyBcLW5hbWUgXChhcSouZGViXChhcSB8IHhhcmdzIFwtbiAxIGRwa2dcLW5hbWUgXC1hXGZQCitkcGtnXC1uYW1lLCBqZbZsaSBqZXN0IHRvIGtvbmllY3puZSwgem1pZW5pIG5hend5IHdzenlzdGtpY2ggcGxpa2kgegorcm96c3plcnplbmllbSAiZGViIiB6IGthdGFsb2d1IC9yb290L2RlYmlhbiBpIGplZ28gcG9ka2F0YWxvZ/N3IG5hIG5hend5CituaWV6YXdpZXJharFjZSBpbmZvcm1hY2ppIG8gYXJjaGl0ZWt0dXJ6ZS4KKy5UUCAKK1xmQmZpbmQgXC1uYW1lIFwoYXEqLmRlYlwoYXEgfCB4YXJncyBcLW4gMSBkcGtnXC1uYW1lIFwtYSBcLW8gXC1zIFwtY1xmUAorXGZCTmllIHLzYiB0ZWdvXGZQLiBUd29qZSBhcmNoaXd1bSB6b3N0YW5pZSBrb21wbGV0bmllIHplcHN1dGUsIHBvbmlld2G/IHdpZWxlCitwYWtpZXTzdyBuaWUgYupkemllIG1pYbNvIGluZm9ybWFjamkgbyBzZWtjamkuIFxmQk5pZSBy82IgdGVnb1xmUC4KKy5UUCAKK1xmQmRwa2cgXC1cLWJ1aWxkIGRlYmlhblwtdG1wICYmIGRwa2dcLW5hbWUgXC1vIFwtcyAuLiBkZWJpYW5cLXRtcC5kZWJcZlAKK01vv2Ugem9zdGHmIHW/eXRlIGRvIGJ1ZG93YW5pYSBub3d5Y2ggcGFraWV083cuCisuCisuU0ggQqPKRFkKK1NvbWUgcGFja2FnZXMgZG9uJ3QgZm9sbG93IHRoZSBuYW1lIHN0cnVjdHVyZQorXGZJcGFja2FnZVxmUFxmQl9cZlBcZkl2ZXJzaW9uXGZQXGZCX1xmUFxmSWFyY2hpdGVjdHVyZVxmUFxmQi5kZWJcZlAuICBQYWNrYWdlcyByZW5hbWVkIGJ5CitkcGtnXC1uYW1lIHdpbGwgZm9sbG93IHRoaXMgc3RydWN0dXJlLiBHZW5lcmFsbHkgdGhpcyB3aWxsIGhhdmUgbm8gaW1wYWN0IG9uCitob3cgcGFja2FnZXMgYXJlIGluc3RhbGxlZCBieSBcZkJkc2VsZWN0XGZQKDEpL1xmQmRwa2dcZlAoMSksIGJ1dCBvdGhlcgoraW5zdGFsbGF0aW9uIHRvb2xzIG1pZ2h0IGRlcGVuZCBvbiB0aGlzIG5hbWluZyBzdHJ1Y3R1cmUuCisuCisuU0ggIlpPQkFDWiBUQUuvRSIKK1xmQmRlYlxmUCg1KSwgXGZCZGViXC1jb250cm9sXGZQKDUpLCBcZkJkcGtnXGZQKDEpLCBcZkJkcGtnXC1kZWJcZlAoMSksIFxmQmZpbmRcZlAoMSksCitcZkJ4YXJnc1xmUCgxKS4KKy4KKy5TSCBBVVRPUgorQ29weXJpZ2h0IFwoY28gMTk5NSwxOTk2IEVyaWNrIEJyYW5kZXJob3JzdAorLnNwCitOaW5pZWpzenkgcHJvZ3JhbSBqZXN0IG9wcm9ncmFtb3dhbmllbSB3b2xueW0sIHNwcmF3ZLwgUG93c3plY2husSBMaWNlbmNq6gorUHVibGljem6xIEdOVSB3IHdlcnNqaSBkcnVnaWVqIGx1YiBw87xuaWVqc3plaiwgYnkgZG93aWVkemll5iBzaeogbword2FydW5rYWNoIGR5c3RyeWJ1Y2ppLiBCcmFrIEpBS0lFSktPTFdJRUsgZ3dhcmFuY2ppLgorLlNIICJUo1VNQUNaRSIKK1Bpb3RyIFJvc3phdHlja2kgPGRleHRlckBkZWJpYW4ub3JnPiwgMTk5OQorLmJyCitCYXJ0b3N6IEZl8XNraSA8ZmVuaW9AZGViaWFuLm9yZz4sIDIwMDQtMjAwNQorLmJyCitSb2JlcnQgTHViZXJkYSA8cm9iZXJ0QGRlYmlhbi5vcmc+LCAyMDA2LTIwMDgKKy5icgorV2lrdG9yIFdhbmRhY2hvd2ljeiA8c2lyeWVzQGdtYWlsLmNvbT4sIDIwMDgKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL3BsL2Rwa2ctcGFyc2VjaGFuZ2Vsb2cuMSBiL2Rwa2ctMS4xNi4xLjEvbWFuL3BsL2Rwa2ctcGFyc2VjaGFuZ2Vsb2cuMQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xNjlhZTY4Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vcGwvZHBrZy1wYXJzZWNoYW5nZWxvZy4xCkBAIC0wLDAgKzEsMTM2IEBACisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkcGtnXC1wYXJzZWNoYW5nZWxvZyAxIDIwMTFcLTA4XC0xNCAiUHJvamVrdCBEZWJpYW5hIiAicHJvZ3JhbXkgcG9tb2NuaWN6ZSBkcGtnIgorLlNIIE5BWldBCitkcGtnXC1wYXJzZWNoYW5nZWxvZyBcLSBwcnpldHdhcnphIHBsaWtpIGR6aWVubmlr83cgem1pYW4gRGViaWFuYQorLgorLlNIIFNLo0FETklBCitcZkJkcGtnXC1wYXJzZWNoYW5nZWxvZ1xmUCBbXGZJb3B0aW9uXGZQLi4uXQorLgorLlNIIE9QSVMKK1xmQmRwa2dcLXBhcnNlY2hhbmdlbG9nXGZQIGN6eXRhIGkgcHJ6ZXR3YXJ6YSBkemllbm5payB6bWlhbiByb3pwYWtvd2FuZWdvCitkcnpld2EgvHLzZGWzIHBha2lldHUgRGViaWFuYSBpIHd5cGlzdWplIHRlIGluZm9ybWFjamUgbmEgc3RhbmRhcmRvd3ltCit3eWq2Y2l1IHcgcG9zdGFjaSBjenl0ZWxuZWogZGxhIG1hc3p5bnkuCisuCisuU0ggT1BDSkUKKy5UUCAKK1xmQlwtbFxmUFxmSWR6aWVubmlrX3ptaWFuXGZQCitPa3JltmxhIGR6aWVubmlrIHptaWFuLCB6IGt083JlZ28gYupksSBjenl0YW5lIGluZm9ybWFjamUuIERvbXm2bG55bSBwbGlraWVtCitqZXN0IFxmQmRlYmlhbi9jaGFuZ2Vsb2dcZlAuCisuVFAgCitcZkJcLUZcZlBcZklmb3JtYXRfZHppZW5uaWthX3ptaWFuXGZQCitPa3JltmxhIGZvcm1hdCBkemllbm5pa2Egem1pYW4uIERvbXm2bG5pZSBmb3JtYXQgamVzdCBjenl0YW55IHplIHNwZWNqYWxuZWoKK2xpbmlpIHpuYWpkdWqxY2VqIHNp6iBwcnp5IGtv8WN1IHBsaWt1IGx1YiBcLSBqZbZsaSB0YWthIGxpbmlhIG5pZSBpc3RuaWVqZSBcLQordb95d2FueSBqZXN0IHN0YW5kYXJkb3d5IGZvcm1hdCBEZWJpYW5hLgorLlRQIAorXGZCXC1MXGZQXGZJa2F0YWxvZ1wtbGliXGZQCitPa3JltmxhIGRvZGF0a293eSBrYXRhbG9nLCB3IGt083J5bSBi6mSxIHd5c3p1a2l3YW5lIHNrcnlwdHkKK3BhcnNlcmEuIEthdGFsb2cgdGVuIGplc3QgcHJ6ZXN6dWtpd2FueSBwcnplZCBkb215tmxueW1pIGthdGFsb2dhbWksIGt083J5bWkKK29iZWNuaWUgc7EgXGZCL3Vzci9sb2NhbC9saWIvZHBrZy9wYXJzZWNoYW5nZWxvZ1xmUCBvcmF6CitcZkIvdXNyL2xpYi9kcGtnL3BhcnNlY2hhbmdlbG9nXGZQLgorLlRQIAorXGZCXC1oXGZQLCBcZkJcLVwtaGVscFxmUAorV3m2d2lldGxhIGluZm9ybWFjauogbyB1v3l0a293YW5pdSBpIGtv8WN6eSBkemlhs2FuaWUuCisuVFAgCitcZkJcLVwtdmVyc2lvblxmUAorV3m2d2lldGxhIGluZm9ybWFjauogbyB3ZXJzamkgaSBwb215tmxuaWUga2/xY3p5IGR6aWGzYW5pZS4KKy5TUyAiT3BjamUgcGFyc2VyYSIKK1Bvbmm/c3plIG9wY2plIG1vZ7EgYnnmIHW/eXRlIGRvIHdws3l3YW5pYSBuYSBwYXJzZXIgZHppZW5uaWthIHptaWFuLCBucC4gbmEKK3pha3JlcyB3cGlz83cgbHViIGZvcm1hdCB3eWq2Y2lhLiBQb3dpbm55IGJ55iBvYnOzdWdpd2FuZSBwcnpleiBza3J5cHR5CitwYXJzZXJhLiBQYXRyeiB0YWu/ZSBcZkJPU1RSWkWvRU5JQVxmUC4KKy5UUCAKK1xmQlwtXC1mb3JtYXRcZlAgXGZJZm9ybWF0X3d5arZjaW93eVxmUAorVXN0YXdpYSBmb3JtYXQgd3lqtmNpYS4gT2JlY25pZSB3c3BpZXJhbnltaSB3YXJ0b7ZjaWFtaSBzsSBcZklkcGtnXGZQIG9yYXoKK1xmSXJmYzgyMlxmUC4gXGZJZHBrZ1xmUCBqZXN0IGtsYXN5Y3pueW0gZm9ybWF0ZW0gd3lqtmNpYSAoeiBjemFz83cgc3ByemVkCitwb3dzdGFuaWEgdGVqIG9wY2ppKSBpIGplc3QgZG9tebZsbnltIGZvcm1hdGVtLiBTa7NhZGEgc2nqIHogamVkbmVnbyBha2FwaXR1Cit3IGZvcm1hY2llIHBsaWt1IGtvbnRyb2xuZWdvIERlYmlhbmEgKHBhdHJ6IFxmQmRwa2dcLWNvbnRyb2xcZlAoNSkpLiBKZbZsaQoremG/sWRhbm8gd2nqY2VqIG5pvyBqZWRuZWdvIHdwaXN1LCB0byBvIGlsZSBuaWUgcG9kYW5vIGluYWN6ZWogXC0gd2nqa3N6b7bmCitw82wgamVzdCBicmFuYSB6IG5ham5vd3N6ZWdvIHdwaXN1OgorLlJTCisuVFAgCitcZkJTb3VyY2U6XGZQXGZJIHBrZ1wtbmFtZVxmUAorLlRQIAorXGZCVmVyc2lvbjpcZlBcZkkgdmVyc2lvblxmUAorLlRQIAorXGZCRGlzdHJpYnV0aW9uOlxmUFxmSSB0YXJnZXRcLWRpc3RyaWJ1dGlvblxmUAorLlRQIAorXGZCVXJnZW5jeTpcZlBcZkkgdXJnZW5jeVxmUAorSmVzdCB1v3l3YW5hIG5handp6mtzemEgd2FydG+25iB3Yb9ub7ZjaSB6ZSB3c3p5c3RraWNoIGRvs7Fjem9ueWNoIHdwaXPzdy4KKy5UUCAKK1xmQk1haW50YWluZXI6XGZQXGZJIGF1dGhvclxmUAorLlRQIAorXGZCRGF0ZTpcZlBcZkkgZGF0ZVxmUAorLlRQIAorXGZCQ2xvc2VzOlxmUFxmSSBidWdcLW51bWJlclxmUAorUG9sYSBDbG9zZXMgd3N6eXN0a2ljaCB3s7Fjem9ueWNoIHdwaXPzdyBzsSCzsWN6b25lLgorLlRQIAorXGZCQ2hhbmdlczpcZlBcZkkgY2hhbmdlbG9nXC1lbnRyaWVzXGZQCitUZWtzdCB3c3p5c3RraWNoIHdwaXPzdyBkemllbm5pa2Egem1pYW4gamVzdCCzsWN6b255LiBBYnkgdWN6eW5p5iB0byBwb2xlCitwb3ByYXdueW0gd2llbG9saW5pb3d5bSBwb2xlbSB3IGZvcm1hY2llIHBsaWt1IGtvbnRyb2xuZWdvIERlYmlhbmEsCit3c3p5c3RraWUgcHVzdGUgbGluaWUgc7EgemFzdOpwb3dhbmUgcG9qZWR5bmN6eW1pIGtyb3BrYW1pIG9yYXogamVzdAorZG9kYXdhbmEgc3BhY2phIG5hIHBvY3qxdGt1IGthv2RlaiBsaW5paS4gRG9rs2FkYW5hIHphd2FydG+25iB6YWxlv3kgb2QKK2Zvcm1hdHUgZHppZW5uaWthIHptaWFuLgorLlJFCisuSVAKK01vZ7EgdGFrv2Ugd3lzdOpwb3dh5iBkb2RhdGtvd2UgcG9sYSB6ZGVmaW5pb3dhbmUgcHJ6ZXogdb95dGtvd25pa2EuCisuSVAKK0Zvcm1hdCBcZkJyZmM4MjJcZlAgdb95d2EgdHljaCBzYW15Y2ggcPNsLCBhbGUgd3lwaXN1amUgb3NvYm55IGFrYXBpdCBkbGEKK2thv2RlZ28gdb95dGVnbyB3cGlzdSB6IGR6aWVubmlrYSB6bWlhbiB0YWssIL9lIHphY2hvd2FuZSBzsSB3c3p5c3RraWUKK21ldGFkYW5lIHoga2G/ZGVnbyB3cGlzdS4KKy5UUCAKK1xmQlwtXC1zaW5jZVxmUCBcZkl3ZXJzamFcZlAsIFxmQlwtc1xmUFxmSXdlcnNqYVxmUCxcZkIgXC12XGZQXGZJd2Vyc2phXGZQCitkb7OxY3phIHdzenlzdGtpZSB6bWlhbnkgcPO8bmllanN6ZSBuab8gXGZJd2Vyc2phXGZQLgorLlRQIAorXGZCXC1cLXVudGlsXGZQIFxmSXdlcnNqYVxmUCwgXGZCXC11XGZQXGZJd2Vyc2phXGZQCitkb7OxY3phIHdzenlzdGtpZSB6bWlhbnkgd2N6ZbZuaWVqc3plIG5pvyBcZkl2ZXJzamFcZlAuCisuVFAgCitcZkJcLVwtZnJvbVxmUCBcZkl3ZXJzamFcZlAsIFxmQlwtZlxmUFxmSXdlcnNqYVxmUAorZG+zsWN6YSB3c3p5c3RraWUgem1pYW55IHLzd25lIFxmSXdlcnNqaVxmUCBsdWIgcPO8bmllanN6ZSBvZCBuaWVqLgorLlRQIAorXGZCXC1cLXRvXGZQIFxmSXdlcnNqYVxmUCwgXGZCXC10XGZQXGZJd2Vyc2phXGZQCitkb7OxY3phIHdzenlzdGtpZSB6bWlhbnkgd2nqa3N6ZSBkbyBcZkl3ZXJzamlcZlAgbHViIHLzd25lIGplai4KKy5UUCAKK1xmQlwtXC1jb3VudFxmUCBcZklsaWN6YmFcZlAsIFxmQlwtY1xmUFxmSWxpY3piYVxmUCwgXGZCXC1uXGZQXGZJbGljemJhXGZQCitkb7OxY3phIFxmSWxpY3piYVxmUCB3cGlz83cgeiBwb2N6sXRrdSBwbGlrdSAobHViIHogamVnbyBrb/FjYSwgZ2R5IFxmSWxpY3piYVxmUAoramVzdCBtbmllanN6YSBvZCB6ZXJhKS4KKy5UUCAKK1xmQlwtXC1vZmZzZXRcZlAgXGZJbGljemJhXGZQLCBcZkJcLW9cZlBcZklsaWN6YmFcZlAKK3ptaWVuaWEgcHVua3QgcG9jerF0a293eSBkbGEgb3BjamkgXC1cLWNvdW50LCBsaWN6sWMgb2QgcG9jerF0a3UgcGxpa3UgKGx1YiBvZAoramVnbyBrb/FjYSwgamW2bGkgXGZJbGljemJhXGZQIGplc3QgbW5pZWpzemEgb2QgemVyYSkuCisuVFAgCitcZkJcLVwtYWxsXGZQCitpbmNsdWRlIGFsbCBjaGFuZ2VzLiBOb3RlOiBvdGhlciBvcHRpb25zIGhhdmUgbm8gZWZmZWN0IHdoZW4gdGhpcyBpcyBpbiB1c2UuCisuCisuU0ggT1NUUlpFr0VOSUEKK1dzenlzdGtpZSBcZkJvcGNqZSBwYXJzZXJhXGZQLCB6IHd5arF0a2llbSBcLXYsIHOxIG9ic7N1Z2l3YW5lIHByemV6IFxmQmRwa2dcZlAgb2QKK3dlcnNqaSAxLjE0LjE2LiBaZXdu6nRyem5lIHBhcnNlcnkgZHppZW5uaWvzdyB6bWlhbiB3IGZvcm1hdGFjaCBpbm55Y2ggbmm/CitcZklkZWJpYW5cZlAgbW9nsSBuaWUgb2Jzs3VnaXdh5iB3c3p5c3RraWNoIG9wY2ppLgorLgorLlNIIFBMSUtJCisuVFAgCitcZkJkZWJpYW4vY2hhbmdlbG9nXGZQCitEemllbm5payB6bWlhbiBqZXN0IHW/eXdhbnkgZG8gcG96eXNrYW5pYSBpbmZvcm1hY2ppIG8gcGFraWVjaWUgvHLzZLNvd3ltCit6YWxlv255Y2ggb2QgamVnbyB3ZXJzamksIHRha2ljaCBqYWsgd2G/bm+25iBpIGR5c3RyeWJ1Y2phIHd5ZGFuaWEsIHptaWFueQorZG9rb25hbmUgcG8gb2tyZbZsb255bSB3eWRhbml1LCBvcmF6IG51bWVyIHdlcnNqaSBwYWtpZXR1LgorLgorLlNIIEFVVE9SWlkKK0NvcHlyaWdodCBcKGNvIDE5OTVcLTE5OTYgSWFuIEphY2tzb24KKy5icgorQ29weXJpZ2h0IFwoY28gMjAwMCBXaWNoZXJ0IEFra2VybWFuCisuYnIKK0NvcHlyaWdodCBcKGNvIDIwMDcsIDIwMDggRnJhbmsgTGljaHRlbmhlbGQKKy5zcAorTmluaWVqc3p5IHByb2dyYW0gamVzdCBvcHJvZ3JhbW93YW5pZW0gd29sbnltLCBzcHJhd2S8IFBvd3N6ZWNobrEgTGljZW5jauoKK1B1YmxpY3pusSBHTlUgdyB3ZXJzamkgZHJ1Z2llaiBsdWIgcPO8bmllanN6ZWosIGJ5IGRvd2llZHppZeYgc2nqIG8KK3dhcnVua2FjaCBkeXN0cnlidWNqaS4gQnJhayBKQUtJRUpLT0xXSUVLIGd3YXJhbmNqaS4KKy5TSCAiVKNVTUFDWkUiCitQaW90ciBSb3N6YXR5Y2tpIDxkZXh0ZXJAZGViaWFuLm9yZz4sIDE5OTkKKy5icgorQmFydG9zeiBGZfFza2kgPGZlbmlvQGRlYmlhbi5vcmc+LCAyMDA0LTIwMDUKKy5icgorUm9iZXJ0IEx1YmVyZGEgPHJvYmVydEBkZWJpYW4ub3JnPiwgMjAwNi0yMDA4CisuYnIKK1dpa3RvciBXYW5kYWNob3dpY3ogPHNpcnllc0BnbWFpbC5jb20+LCAyMDA4CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9wbC9kcGtnLXNjYW5zb3VyY2VzLjEgYi9kcGtnLTEuMTYuMS4xL21hbi9wbC9kcGtnLXNjYW5zb3VyY2VzLjEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uY2M3NjUxMwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL3BsL2Rwa2ctc2NhbnNvdXJjZXMuMQpAQCAtMCwwICsxLDc4IEBACisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkcGtnXC1zY2Fuc291cmNlcyAxIDIwMTFcLTA4XC0xNCAiUHJvamVrdCBEZWJpYW5hIiAicHJvZ3JhbXkgcG9tb2NuaWN6ZSBkcGtnIgorLlNIIE5BWldBCitkcGtnXC1zY2FucGFja2FnZXMgXC0gdHdvcnp5IHBsaWtpIGluZGVrc293ZSBTb3VyY2VzCisuCisuU0ggU0ujQUROSUEKK1xmQmRwa2dcLXNjYW5zb3VyY2VzXGZQIFtcZklvcHRpb25cZlAuLi5dIFxmSWJpbmFyeVwtZGlyXGZQIFtcZklvdmVycmlkZVwtZmlsZVxmUAorW1xmSXBhdGhcLXByZWZpeFxmUF1dIFxmQj5cZlAgXGZJU291cmNlc1xmUAorLgorLlNIIE9QSVMKK1xmQmRwa2dcLXNjYW5zb3VyY2VzXGZQIHNrYW51amUgcG9kYW55IFxmSWthdGFsb2dfYmluYXJueVxmUCB3IHBvc3p1a2l3YW5pdSBwbGlr83cKK1wmXGZJLmRzY1xmUCwgdb95d2FueWNoIGRvIHV0d29yemVuaWEgaW5kZWtzdSC8cvNks293eWNoIHBha2lldPN3IERlYmlhbmEsIGt083J5CituYXN06nBuaWUgamVzdCB3eXBpc3l3YW55IG5hIHN0YW5kYXJkb3dlIHd5arZjaWUuCisuUFAKK1RoZSBcZklvdmVycmlkZVwtZmlsZVxmUCwgaWYgZ2l2ZW4sIGlzIHVzZWQgdG8gc2V0IHByaW9yaXRpZXMgaW4gdGhlIHJlc3VsdGluZworaW5kZXggcmVjb3JkcyBhbmQgdG8gb3ZlcnJpZGUgdGhlIG1haW50YWluZXIgZmllbGQgZ2l2ZW4gaW4gdGhlIFxmSS5kc2NcZlAKK2ZpbGVzLiBUaGUgZmlsZSBjYW4gYmUgY29tcHJlc3NlZC4gU2VlIFxmQmRlYlwtb3ZlcnJpZGVcZlAoNSkgIGZvciB0aGUgZm9ybWF0IG9mCit0aGlzIGZpbGUuIFxzLTFOQjpcczAgU2luY2UgdGhlIG92ZXJyaWRlIGZpbGUgaXMgaW5kZXhlZCBieSBiaW5hcnksIG5vdAorc291cmNlLCBwYWNrYWdlcywgdGhlcmUncyBhIGJpdCBvZiBhIHByb2JsZW0gaGVyZS4gVGhlIGN1cnJlbnQKK2ltcGxlbWVudGF0aW9uIHVzZXMgdGhlIGhpZ2hlc3QgcHJpb3JpdHkgb2YgYWxsIHRoZSBiaW5hcnkgcGFja2FnZXMgcHJvZHVjZWQKK2J5IGEgXGZJLmRzY1xmUCBmaWxlIGZvciB0aGUgcHJpb3JpdHkgb2YgdGhlIHNvdXJjZSBwYWNrYWdlLCBhbmQgdGhlIG92ZXJyaWRlCitlbnRyeSBmb3IgdGhlIGZpcnN0IGJpbmFyeSBwYWNrYWdlIGxpc3RlZCBpbiB0aGUgXGZJLmRzY1xmUCBmaWxlIHRvIG1vZGlmeQorbWFpbnRhaW5lciBpbmZvcm1hdGlvbi4gVGhpcyBtaWdodCBjaGFuZ2UuCisuUFAKK1xmSVByZWZpa3NftmNpZb9raVxmUCwgamW2bGkgcG9kYW5vLCBqZXN0IGRvs7FjemFueSBuYSBwb2N6sXRlayBwb2xhIERpcmVjdG9yeQordyB3eWdlbmVyb3dhbnltIGluZGVrc2llILxy82Szb3d5bS4gT2fzbG5pZSBqZXN0IHRvIHW/eXdhbmUsIGFieSBwb2xhCitEaXJlY3RvcnkgemF3aWVyYbN5ILZjaWW/a+ogb2QgbmFqd3m/c3plZ28gcG96aW9tdSBoaWVyYXJjaGlpIGFyY2hpd3VtCitEZWJpYW5hLgorLgorLlBQCitcZkJVd2FnYVxmUDogQWJ5IFxmQmFwdFxmUCg4KSBtb2ezbyB1v3nmIHd5Z2VuZXJvd2FuZWdvIHBsaWt1IFNvdXJjZXMsIG5hbGW/eSBnbworc2tvbXByZXNvd2HmIHByb2dyYW1lbSBcZkJnemlwXGZQKDEpICh0d29yerFjIHBsaWsgU291cmNlcy5neikuIGFwdCBpZ25vcnVqZQorbmllc2tvbXByZXNvd2FuZSBwbGlraSBTb3VyY2VzIHogd3lqsXRraWVtIGxva2FsbmVnbyBkb3N06nB1CisodGouIHBvY2hvZHqxY2VnbyB6IFxmQmZpbGU6Ly9cZlApLgorLgorLlNIIE9QQ0pFCisuSVAgIlxmQlwtblxmUCwgXGZCXC1cLW5vXC1zb3J0XGZQIiA0CitOaWUgc29ydHVqZSByZWtvcmTzdyBpbmRla3N1LiBOb3JtYWxuaWUgc7Egb25lIHBvc29ydG93YW5lIHBvIG5hendpZSBwYWtpZXR1Ciu8cvNks293ZWdvLgorLlRQIAorLklQICJcZkJcLWVcZlAsIFxmQlwtXC1leHRyYVwtb3ZlcnJpZGVcZlAgXGZJcGxpa1xmUCIgNAorU2NhbiBcZklmaWxlXGZQIHRvIGZpbmQgc3VwcGxlbWVudGFyeSBvdmVycmlkZXMgKHRoZSBmaWxlIGNhbiBiZQorY29tcHJlc3NlZCkuIFNlZSBcZkJkZWJcLWV4dHJhXC1vdmVycmlkZVxmUCg1KSAgZm9yIG1vcmUgaW5mb3JtYXRpb24gb24gaXRzCitmb3JtYXQuCisuSVAgIlxmQlwtc1xmUCwgXGZCXC1cLXNvdXJjZVwtb3ZlcnJpZGVcZlAgXGZJcGxpa1xmUCIgNAorVXNlIFxmSWZpbGVcZlAgYXMgdGhlIHNvdXJjZSBvdmVycmlkZSBmaWxlICh0aGUgZmlsZSBjYW4gYmUgY29tcHJlc3NlZCkuICBUaGUKK2RlZmF1bHQgaXMgdGhlIG5hbWUgb2YgdGhlIG92ZXJyaWRlIGZpbGUgeW91IHNwZWNpZmllZCB3aXRoIFxmSS5zcmNcZlAKK2FwcGVuZGVkLgorLnNwCitGb3JtYXQgcGxpayBuYWRwaXNh8SC8cvNkZbMgcvO/bmkgc2nqIG9kIGZvcm1hdHUgbmFkcGlzYfEgcGFraWV083cKK2JpbmFybnljaC4gWmF3aWVyYSB0eWxrbyBkd2EgcG9sYSBvZGR6aWVsb25lIG9kIHNpZWJpZSBiaWGzeW1pIHpuYWthbWk6CitwaWVyd3N6eW0gamVzdCBuYXp3YSBwYWtpZXR1LCBhIGRydWdpbSBcLSBzZWtjamEuIExpbmllIHB1c3RlIG9yYXogbGluaWUKK2tvbWVudGFyemEgc7EgaWdub3Jvd2FuZS4gSmW2bGkgcGFraWV0IHBvamF3aWEgc2nqIHcgb2J1IHBsaWthY2gsIHRvIHBvZGN6YXMKK3VzdGF3aWFuaWEgc2VrY2ppIG5hZHBpc2FuaWUgvHLzZGWzIG1hIHdp6mtzenkgcHJpb3J5dGV0LgorLklQIFxmQlwtXC1kZWJ1Z1xmUCA0CitXs7FjemEgdHJ5YiBkZWJ1Z293YW5pYS4KKy5JUCBcZkJcLVwtaGVscFxmUCA0CitXebZ3aWV0bGEgaW5mb3JtYWNq6iBvIHW/eXRrb3dhbml1IGkga2/xY3p5IGR6aWGzYW5pZS4KKy5JUCBcZkJcLVwtdmVyc2lvblxmUCA0CitXebZ3aWV0bGEgaW5mb3JtYWNq6iBvIHdlcnNqaSBpIHBvbXm2bG5pZSBrb/FjenkgZHppYbNhbmllLgorLgorLlNIICJaT0JBQ1ogVEFLr0UiCitcZkJkZWJcLW92ZXJyaWRlXGZQKDUpLCBcZkJkZWJcLWV4dHJhXC1vdmVycmlkZVxmUCg1KSwgXGZCZHBrZ1wtc2NhbnBhY2thZ2VzXGZQKDEpLgorLgorLlNIIEFVVE9SCitSb2RlcmljayBTY2hlcnRsZXIgPHJvZGVyaWNrQGFyZ29uLm9yZz4KKy5TSCAiVKNVTUFDWkUiCitQaW90ciBSb3N6YXR5Y2tpIDxkZXh0ZXJAZGViaWFuLm9yZz4sIDE5OTkKKy5icgorQmFydG9zeiBGZfFza2kgPGZlbmlvQGRlYmlhbi5vcmc+LCAyMDA0LTIwMDUKKy5icgorUm9iZXJ0IEx1YmVyZGEgPHJvYmVydEBkZWJpYW4ub3JnPiwgMjAwNi0yMDA4CisuYnIKK1dpa3RvciBXYW5kYWNob3dpY3ogPHNpcnllc0BnbWFpbC5jb20+LCAyMDA4CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9wbC9kcGtnLXNobGliZGVwcy4xIGIvZHBrZy0xLjE2LjEuMS9tYW4vcGwvZHBrZy1zaGxpYmRlcHMuMQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hYTA0NGVlCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vcGwvZHBrZy1zaGxpYmRlcHMuMQpAQCAtMCwwICsxLDMwNCBAQAorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlwiCisuXCIgVGhpcyBmaWxlIHdhcyBnZW5lcmF0ZWQgd2l0aCBwbzRhLiBUcmFuc2xhdGUgdGhlIHNvdXJjZSBmaWxlLgorLlwiCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuVEggZHBrZ1wtc2hsaWJkZXBzIDEgMjAxMVwtMDhcLTE0ICJQcm9qZWt0IERlYmlhbmEiICJwcm9ncmFteSBwb21vY25pY3plIGRwa2ciCisuU0ggTkFaV0EKK2Rwa2dcLXNobGliZGVwcyBcLSBnZW5lcm93YW5pZSB6YWxlv25vtmNpIHBvZHN0YXdpZfEgd3Nw87NkemllbG9ueWNoIGJpYmxpb3RlaworLgorLlNIIFNLo0FETklBCitcZkJkcGtnXC1zaGxpYmRlcHNcZlAgW1xmSW9wdGlvblxmUC4uLl0gW1xmQlwtZVxmUF1cZklleGVjdXRhYmxlXGZQIFtcZklvcHRpb25cZlAuLi5dCisuCisuU0ggT1BJUworXGZCZHBrZ1wtc2hsaWJkZXBzXGZQIGNhbGN1bGF0ZXMgc2hhcmVkIGxpYnJhcnkgZGVwZW5kZW5jaWVzIGZvciBleGVjdXRhYmxlcworbmFtZWQgaW4gaXRzIGFyZ3VtZW50cy4gVGhlIGRlcGVuZGVuY2llcyBhcmUgYWRkZWQgdG8gdGhlIHN1YnN0aXR1dGlvbgordmFyaWFibGVzIGZpbGUgXGZCZGViaWFuL3N1YnN0dmFyc1xmUCBhcyB2YXJpYWJsZSBuYW1lcworXGZCc2hsaWJzOlxmUFxmSWRlcGVuZGVuY3lmaWVsZFxmUCB3aGVyZSBcZklkZXBlbmRlbmN5ZmllbGRcZlAgaXMgYSBkZXBlbmRlbmN5IGZpZWxkCituYW1lLiBBbnkgb3RoZXIgdmFyaWFibGVzIHN0YXJ0aW5nIHdpdGggXGZCc2hsaWJzOlxmUCBhcmUgcmVtb3ZlZCBmcm9tIHRoZQorZmlsZS4KKy5QCitcZkJkcGtnXC1zaGxpYmRlcHNcZlAgbWEgZHdhILxy82SzYSBpbmZvcm1hY2ppIHOzdb+xY2UgZG8gZ2VuZXJvd2FuaWEgaW5mb3JtYWNqaQorbyB6YWxlv25vtmNpYWNoLiBTsSB0byBwbGlraSBcZklzeW1ib2xzXGZQIGx1YiBwbGlraSBcZklzaGxpYnNcZlAuIERsYSBrYb9kZWdvCitwbGlrdSBiaW5hcm5lZ28gYW5hbGl6b3dhbmVnbyBwcnpleiBcZkJkcGtnXC1zaGxpYmRlcHNcZlAgb2tyZbZsYW5hIGplc3QgbGlzdGEKK2JpYmxpb3RlaywgeiBrdPNyeW1pIGplc3Qgb24gbGlua293YW55LiBOYXN06nBuaWUgZGxhIGthv2RlaiBiaWJsaW90ZWtpCitwcnplZ2yxZGFueSBqZXN0IHBsaWsgXGZJc3ltYm9sc1xmUCBsdWIgcGxpayBcZklzaGxpYnNcZlAgKGpltmxpIHRlbiBwaWVyd3N6eSBuaWUKK2lzdG5pZWplLCBsdWIgZ2R5IGRlYmlhbi9zaGxpYnMubG9jYWwgemF3aWVyYSBzdG9zb3dusSB6YWxlv25vtuYpLiBPYmEgcGxpa2kKK3Bvd2lubnkgYnnmIGRvc3RhcmN6YW5lIHByemV6IHBha2lldCB6YXdpZXJharFjeSBiaWJsaW90ZWvqIGkgcG93aW5ueSB3aepjCitieeYgZG9zdOpwbmUgamFrbyAvdmFyL2xpYi9kcGtnL2luZm8vXGZJcGFraWV0XGZQLlxmSXN5bWJvbHNcZlAgbHViCisvdmFyL2xpYi9kcGtnL2luZm8vXGZJcGFraWV0XGZQLlxmSXNobGlic1xmUC4gTmF6d2EgcGFraWV0dSBqZXN0IG9rcmW2bGFuYSB3IGR382NoCitrcm9rYWNoOiBvZG5hbGV6aWVuaWUgcGxpa3UgYmlibGlvdGVraSB3IHN5c3RlbWllIChzcHJhd2R6YWqxYyB3IHR5Y2ggc2FteWNoCitrYXRhbG9nYWNoLCBrdPNyeWNoIHW/eXdhIFxmQmxkLnNvXGZQKSwgYSBuYXN06nBuaWUgdb95Y2llIFxmQmRwa2cgXC1TCitcZlBcZklwbGlrXC1iaWJsaW90ZWtpXGZQIHcgY2VsdSBva3JltmxlbmlhIHBha2lldHUgZG9zdGFyY3pharFjZWdvIGRhbrEKK2JpYmxpb3Rla+ouCisuU1MgIlBsaWtpIHN5bWJvbGkiCitQbGlraSBzeW1ib2xpIHphd2llcmFqsSBkb2uzYWRuaWVqc3plIG9rcmW2bGVuaWEgaW5mb3JtYWNqaSBvIHphbGW/bm+2Y2lhY2gsCitkb3N0YXJjemFqsWMgbWluaW11bSB6YWxlv25vtmNpIGRsYSBrYb9kZWdvIHN5bWJvbHUgZWtzcG9ydG93YW5lZ28gcHJ6ZXoKK2JpYmxpb3Rla+ouIFNrcnlwdCBwcvNidWplIG9kbmFsZbzmIHBsaWsgendpsXphbnkgeiBwYWtpZXRlbSBiaWJsaW90ZWtpIHcKK25hc3TqcHVqsWN5Y2ggbWllanNjYWNoICh1v3l0ZSBqZXN0IHBpZXJ3c3plIGRvcGFzb3dhbmllKToKKy5JUCBkZWJpYW4vKi9ERUJJQU4vc3ltYm9scworSW5mb3JtYWNqZSBvIHdzcPOzZHppZWxvbmVqIGJpYmxpb3RlY2Ugd3lnZW5lcm93YW5lIHcgYmllv7FjeW0gcHJvY2VzaWUKK2J1ZG93eSwga3Tzcnkgd3l3b7NhsyBy83duaWW/IFxmQmRwa2dcLXNobGliZGVwc1xmUC4gU7Egb25lIGdlbmVyb3dhbmUgcHJ6ZXoKK1xmQmRwa2dcLWdlbnN5bWJvbHNcZlAoMSkuIFOxIHW/eXdhbmUgdHlsa28sIGdkeSBiaWJsaW90ZWthIHpuYWpkdWplIHNp6iB3Citkcnpld2llIGJ1ZG93YW5pYSBwYWtpZXR1LiBQbGlrICJzeW1ib2xzIiB6IHRlZ28gZHJ6ZXdhIG1hIHBpZXJ3c3pl8XN0d28gbmFkCitwbGlrYW1pIHN5bWJvbGkgeiBpbm55Y2ggcGFraWV083cgYmluYXJueWNoLgorLklQIC9ldGMvZHBrZy9zeW1ib2xzL1xmSXBha2lldFxmUC5zeW1ib2xzLlxmSWFyY2hcZlAKKy5JUCAvZXRjL2Rwa2cvc3ltYm9scy9cZklwYWtpZXRcZlAuc3ltYm9scworSW5mb3JtYWNqZSBvIHphc2nqZ3Ugc3lzdGVtdSwga3TzcmUgbmFkcGlzdWqxIGluZm9ybWFjamUgbyB6YWxlv25vtmNpYWNoCitiaWJsaW90ZWsgd3Nw87NkemllbG9ueWNoLiBcZklhcmNoXGZQIGplc3QgYXJjaGl0ZWt0dXKxIGJpZb+xY2VnbyBzeXN0ZW11Cisob2tyZbZsb26xIHByemV6IFxmQmRwa2dcLWFyY2hpdGVjdHVyZSBcLXFERUJfSE9TVF9BUkNIXGZQKS4KKy5JUCAiT3V0cHV0IGZyb20gXChscVxmQmRwa2dcLXF1ZXJ5IFwtXC1jb250cm9sXC1wYXRoXGZQIFxmSXBhY2thZ2VcZlAgc3ltYm9sc1wocnEiCitQYWNrYWdlXC1wcm92aWRlZCBzaGFyZWQgbGlicmFyeSBkZXBlbmRlbmN5IGluZm9ybWF0aW9uLiAgVW5sZXNzIG92ZXJyaWRkZW4KK2J5IFwtXC1hZG1pbmRpciwgdGhvc2UgZmlsZXMgYXJlIGxvY2F0ZWQgaW4gL3Zhci9saWIvZHBrZy4KKy5QCitQb2RjemFzIHByemVzenVraXdhbmlhIHN5bWJvbGkgdb95d2FueWNoIHByemV6IHdzenlzdGtpZSBwbGlraSBiaW5hcm5lLAorXGZCZHBrZ1wtc2hsaWJkZXBzXGZQIHphcGFtaep0dWplIChuYWp3aeprc3qxKSBtaW5pbWFsbrEgd2Vyc2rqIHd5bWFnYW6xIGRsYQora2G/ZGVqIGJpYmxpb3Rla2kuIE5hIGtv8WN1IHByb2Nlc3UgamVzdCB3aepjIHcgc3RhbmllIHd5cGlzYeYgbWluaW1hbG5lCit6YWxlv25vtmNpIGRsYSBrYb9kZWogdb95dGVqIGJpYmxpb3Rla2kgKHBvZCB3YXJ1bmtpZW0sIL9lIGluZm9ybWFjamEgegorcGxpa/N3IFxmSXN5bWJvbHNcZlAgamVzdCBkb2uzYWRuYSkuCisuUAorSmFrbyB6YWJlenBpZWN6ZW5pZSBwbGlrIHN5bWJvbGkgbW+/ZSB6YXdpZXJh5iBwb2xlIG1ldGFpbmZvcm1hY2ppCitcZklCdWlsZFwtRGVwZW5kc1wtUGFja2FnZVxmUCwgemG2IFxmQmRwa2dcLXNobGliZGVwc1xmUCBva3JltmxharFjIG1pbmltYWxusSB3ZXJzauoKK3d5bWFnYW6xIHByemV6IG9kcG93aWFkYWqxY3kgcGFraWV0IHogcG9sYSBCdWlsZFwtRGVwZW5kcyBi6mR6aWUgdb95d2HmCit3s2G2bmllIHRlaiB3ZXJzamksIGpltmxpIGplc3Qgb25hIHd5v3N6YSBuab8gbWluaW1hbG5hIHdlcnNqYSBva3JltmxvbmEKK2R6aepraSBwcnplc3p1a2l3YW5pdSBzeW1ib2xpLgorLlNTICJQbGlraSBcKGRxc2hsaWJzXChkcSIKK1BsaWtpICJzaGxpYnMiIHdpsb+xIGJlenBvtnJlZG5pbyBiaWJsaW90ZWvqIHogemFsZb9ub7ZjaWFtaSAoYmV6CitwcnplZ2yxZGFuaWEgc3ltYm9saSkuIEplc3QgdG8gd2nqYyBjeupzdG8gc2lsbmllanN6ZSBuab8gbmFwcmF3ZOoKK3BvdHJ6ZWJuZSwgYWxlIGJhcmR6byBiZXpwaWVjem5lIGkgs2F0d2UgdyBvYnOzdWR6ZS4KKy5QCitaYWxlv25vtmNpIGRsYSBiaWJsaW90ZWtpIHOxIHd5c3p1a2l3YW5lIHcga2lsa3UgbWllanNjYWNoLiBVv3l3YW55IGplc3QKK3BpZXJ3c3p5IHBsaWsgemF3aWVyYWqxY3kgaW5mb3JtYWNqZSBkbGEgZGFuZWogYmlibGlvdGVraToKKy5JUCBkZWJpYW4vc2hsaWJzLmxvY2FsCitMb2thbG5lIGluZm9ybWFjamUgeiBwYWtpZXR1IG5hZHBpc3VqsWNlIGluZm9ybWFjamUgbyB6YWxlv25vtmNpYWNoCitiaWJsaW90ZWsgd3Nw87NkemllbG9ueWNoLgorLklQIC9ldGMvZHBrZy9zaGxpYnMub3ZlcnJpZGUKK0luZm9ybWFjamUgbyB6YXNp6md1IHN5c3RlbXUsIGt083JlIG5hZHBpc3VqsSBpbmZvcm1hY2plIG8gemFsZb9ub7ZjaWFjaAorYmlibGlvdGVrIHdzcPOzZHppZWxvbnljaC4KKy5JUCBkZWJpYW4vKi9ERUJJQU4vc2hsaWJzCitJbmZvcm1hY2plIG8gemFsZb9ub7ZjaWFjaCB3c3Dzs2R6aWVsb255Y2ggYmlibGlvdGVrIHd5Z2VuZXJvd2FuZSB3IGJpZb+xY3ltCitwcm9jZXNpZSBidWRvd3ksIGt083J5IHd5d2+zYbMgcvN3bmllvyBcZkJkcGtnXC1zaGxpYmRlcHNcZlAuIFOxIHW/eXdhbmUgdHlsa28sCitnZHkgYmlibGlvdGVrYSB6bmFqZHVqZSBzaeogdyBkcnpld2llIGJ1ZG93YW5pYSBwYWtpZXR1LiBQbGlrICJzaGxpYnMiIHoKK3RlZ28gZHJ6ZXdhIG1hIHBpZXJ3c3pl8XN0d28gbmFkIHBsaWthbWkgc2hsaWJzIHogaW5ueWNoIHBha2lldPN3CitiaW5hcm55Y2guIgorLklQICJPdXRwdXQgZnJvbSBcKGxxXGZCZHBrZ1wtcXVlcnkgXC1cLWNvbnRyb2xcLXBhdGhcZlAgXGZJcGFja2FnZVxmUCBzaGxpYnNcKHJxIgorUGFja2FnZVwtcHJvdmlkZWQgc2hhcmVkIGxpYnJhcnkgZGVwZW5kZW5jeSBpbmZvcm1hdGlvbi4gIFVubGVzcyBvdmVycmlkZGVuCitieSBcLVwtYWRtaW5kaXIsIHRob3NlIGZpbGVzIGFyZSBsb2NhdGVkIGluIC92YXIvbGliL2Rwa2cuCisuSVAgL2V0Yy9kcGtnL3NobGlicy5kZWZhdWx0CitEb215tmxuYSBpbmZvcm1hY2phIG8gemFsZb9ub7ZjaWFjaCBiaWJsaW90ZWsgd3Nw87NkemllbG9ueWNoLCBvIHpha3Jlc2llCitzeXN0ZW11LgorLlAKK1V6eXNrYW5lIHphbGW/bm+2Y2kgc7Egdb95d2FuZSBiZXpwb7ZyZWRuaW8gKGNoeWJhLCC/ZSBzsSBvZGZpbHRyb3dhbmUKK3Bvbmlld2G/IHpvc3Rhs3kgemlkZW50eWZpa293YW5lIGpha28gZHVwbGlrYXR5IGx1YiBzs2Fic3plIG5pvyBqYWthtiBpbm5hCit6YWxlv25vtuYpLgorLlNIIE9QQ0pFCitcZkJkcGtnXC1zaGxpYmRlcHNcZlAgaW50ZXJwcmV0dWplIHBhcmFtZXRyeSBuaWUgYupksWNlIG9wY2phbWkgamFrbyBuYXp3eQorcGxpa/N3IHd5a29ueXdhbG55Y2gsIHRhayBqYWtieSBiebN5IHBvZGFuZSBwcnpleiBcZkJcLWVcZlBcZklwbGlrX3d5a29ueXdhbG55XGZQLgorLlRQIAorXGZCXC1lXGZQXGZJcGxpa193eWtvbnl3YWxueVxmUAorV7OxY3plbmllIHphbGW/bm+2Y2kgb2Rwb3dpYWRharFjeWNoIGJpYmxpb3Rla29tIHdzcPOzZHppZWxvbnltIHd5bWFnYW55bQorcHJ6ZXogXGZJcGxpa193eWtvbnl3YWxueVxmUC4KKy5UUCAKK1xmQlwtZFxmUFxmSXBvbGVfemFsZb9ub7ZjaVxmUAorRG9kYW5pZSB6YWxlv25vtmNpLCBrdPNyZSBtYWqxIGJ55iBkb2RhbmUgZG8gcG9sYSB6YWxlv25vtmNpCitcZklwb2xlX3phbGW/bm+2Y2lcZlAgcGxpa3Uga29udHJvbG5lZ28uIChaYWxlv25vtmNpIGRsYSB0ZWdvIHBvbGEgc7EKK3VtaWVzemN6YW5lIHcgem1pZW5uZWogXGZCc2hsaWJzOlxmUFxmSXBvbGVfemFsZb9ub7ZjaVxmUC4pCisKK09wY2phIFxmQlwtZFxmUFxmSXBvbGVfemFsZb9ub7ZjaVxmUCB3cLN5d2EgbmEgd3N6eXN0a2llIHBsaWtpIHd5a29ueXdhbG5lIHBvZGFuZQorcG8gdGVqIG9wY2ppLCBhvyBkbyBuYXN06nBuZWdvIFxmQlwtZFxmUFxmSXBvbGVfemFsZb9ub7ZjaVxmUC4gRG9tebZsbnltCitcZklwb2xlbV96YWxlv25vtmNpXGZQIGplc3QgXGZCRGVwZW5kc1xmUC4KKworSmW2bGkgdG8gc2FtbyBva3JltmxlbmllIHphbGW/bm+2Y2kgKGx1YiB6YmnzciBhbHRlcm5hdHl3KSBwb2phd2lhIHNp6iB3Cit3aepjZWogbmm/IGplZG5laiBuYXp3aWUgeiByb3py879uaWFueWNoIHDzbCB6YWxlv25vtmNpIFxmQlByZVwtRGVwZW5kc1xmUCwKK1xmQkRlcGVuZHNcZlAsIFxmQlJlY29tbWVuZHNcZlAsIFxmQkVuaGFuY2VzXGZQIGx1YiBcZkJTdWdnZXN0c1xmUCB0byBcZkJkcGtnXC1zaGxpYmRlcHNcZlAKK2F1dG9tYXR5Y3puaWUgdXN1bmllIHphbGW/bm+25iB6ZSB3c3p5c3RraWNoIHDzbCwgcG96YSBwb2xlbSByZXByZXplbnR1arFjeW0KK25handhv25pZWpzemUgemFsZb9ub7ZjaS4KKy5UUCAKK1xmQlwtcFxmUFxmSXByZWZpa3NfbmF6d196bWllbm55Y2hcZlAKK1JvenBvY3p5bmFuaWUgbmF6dyB6bWllbm55Y2ggcG9kc3Rhd2lhbmlhIG9kIFxmSXByZWZpa3NfbmF6d196bWllbm55Y2hcZlBcZkI6XGZQCit6YW1pYXN0IFxmQnNobGliczpcZlAuIFBvZG9ibmllLCB3c3p5c3RraWUgem1pZW5uZSByb3pwb2N6eW5harFjZSBzaeogb2QKK1xmSXByZWZpa3NfbmF6d196bWllbm55Y2hcZlBcZkI6XGZQICh6YW1pYXN0IFxmQnNobGliczpcZlApIHOxIHVzdXdhbmUgeiBwbGlrdQorem1pZW5ueWNoIHBvZHN0YXdpYW5pYS4KKy5UUCAKK1xmQlwtT1xmUAorV3m2d2lldGxlbmllIHVzdGF3aWXxIHptaWVubnljaCBwb2RzdGF3aWFuaWEgbmEgc3RhbmRhcmRvd2Ugd3lqtmNpZSwgemFtaWFzdAorZG9kYXdhbmlhIGljaCBkbyBwbGlrdSB6bWllbm55Y2ggcG9kc3Rhd2lhbmlhIChkb215tmxuaWUKK1xmQmRlYmlhbi9zdWJzdHZhcnNcZlApLgorLlRQIAorXGZCXC10XGZQXGZJdHlwXGZQCitQcmVmZXJvd2FuaWUgaW5mb3JtYWNqaSBvIHphbGW/bm+2Y2lhY2ggYmlibGlvdGVrIHdzcPOzZHppZWxvbnljaAorb3puYWN6b255Y2ggZGxhIGRhbmVnbyB0eXB1IHBha2lldHUuIEpltmxpIGluZm9ybWFjamkgb3puYWN6b255Y2ggbmllIG1hLAordb95d2FuZSBzsSBpbmZvcm1hY2plIGJleiBvem5hY3pl8S4gRG9tebZsbnltIHR5cGVtIHBha2lldHUgamVzdAorImRlYiIuIEluZm9ybWFjamUgbyB6YWxlv25vtmNpYWNoIGJpYmxpb3RlayB3c3Dzs2R6aWVsb255Y2ggc7Egb3puYWN6YW5lIGRsYQorZGFuZWdvIHR5cHUgcGFraWV0dSBwcnpleiBwb3ByemVkemVuaWUgaWNoIG5henexIHR5cHUsIGR3dWtyb3BraWVtIG9yYXoKK2JpYbN5bWkgem5ha2FtaSAoc3BhY2phbWkpLgorLlRQIAorXGZCXC1MXGZQXGZJbG9rYWxueV9wbGlrX3NobGlic1xmUAorT2Rjenl0IG5hZHBpc2HxIGluZm9ybWFjamkgbyBiaWJsaW90ZWthY2ggd3Nw87NkemllbG9ueWNoIHoKK1xmSWxva2FsbmVnb19wbGlrdV9zaGxpYnNcZlAgemFtaWFzdCBcZkJkZWJpYW4vc2hsaWJzLmxvY2FsXGZQLgorLlRQIAorXGZCXC1UXGZQXGZJcGxpa196bWllbm55Y2hfcG9kc3RcZlAKK1phcGlzIHptaWVubnljaCBwb2RzdGF3aWFuaWEgdyBwbGlrdSBcZklwbGlrX3ptaWVubnljaF9wb2RzdFxmUDsgZG9tebZsbmllIGplc3QKK3RvIFxmQmRlYmlhbi9zdWJzdHZhcnNcZlAuCisuVFAgCitcZkJcLXZcZlAKK1ezsWN6ZW5pZSBkb2RhdGtvd3ljaCBpbmZvcm1hY2ppLiBXebZ3aWV0bGFueWNoIGplc3Qgd2llbGUga29tdW5pa2F083cKK3SzdW1hY3qxY3ljaCBkemlhs2FuaWUgXGZCZHBrZ1wtc2hsaWJkZXBzXGZQLgorLlRQIAorXGZCXC14XGZQXGZJcGFraWV0XGZQCitXebOxY3plbmllIHBha2lldHUgeiBnZW5lcm93YW55Y2ggemFsZb9ub7ZjaS4gVb95dGVjem5lIGFieSB6YXBvYmllYworemFsZb9ub7ZjaW9tIHBha2lldHUgb2Qgc2FtZWdvIHNpZWJpZSBkbGEgcGFraWV083cgZG9zdGFyY3pharFjeWNoIGJpbmFyaWEKK3R5cHUgRUxGIChwbGlraSB3eWtvbnl3YWxuZSBsdWIgYmlibGlvdGVraSksIGt083JlIHphbGW/sSBvZCBpbm5lagorYmlibGlvdGVraSB6YXdhcnRlaiB3IHR5bSBzYW15bSBwYWtpZWNpZS4gVGEgb3BjamEgbW+/ZSBieeYgdb95dGEKK3dpZWxva3JvdG5pZSBhYnkgd3mzsWN6eeYga2lsa2EgcGFraWV083cuCisuVFAgCitcZkJcLVNcZlBcZklrYXRhbG9nX2J1ZG93YW5pYV9wYWtpZXR1XGZQCitQcnplZ2yxZGFuaWUgbmFqcGllcncgXGZJa2F0YWxvZ3VfYnVkb3dhbmlhX3Bha2lldHVcZlAgcHJ6eSBwcvNiaWUgb2RuYWxlemllbmlhCitiaWJsaW90ZWtpLiBQcnp5ZGF0bmUgZ2R5IHBha2lldCC8cvNks293eSB0d29yenkgd2llbGUgb2RtaWFuIHRlaiBzYW1lagorYmlibGlvdGVraSwgYSBjaGNlIHNp6iB6YXBld25p5iB1enlza2FuaWUgemFsZb9ub7ZjaSBvZCBva3JltmxvbmVnbyBwYWtpZXR1CitiaW5hcm5lZ28uIFRhIG9wY2phIG1vv2UgYnnmIHW/eXRhIHdpZWxva3JvdG5pZToga2F0YWxvZ2kgYupksSBwcnplZ2yxZGFuZSB3Cit0ZWogc2FtZWoga29sZWpub7ZjaSBwcnplZCBrYXRhbG9nYW1pIGlubnljaCBwYWtpZXTzdyBiaW5hcm55Y2guCisuVFAgCitcZkJcLVwtaWdub3JlXC1taXNzaW5nXC1pbmZvXGZQCitLb250eW51YWNqYSBwb21pbW8gYnJha3UgaW5mb3JtYWNqaSBvIHphbGW/bm+2Y2lhY2ggZGxhIGJpYmxpb3Rla2kKK3dzcPOzZHppZWxvbmVqLiBPZHJhZHphIHNp6iB1v3l3YW5pZSB0ZWogb3BjamksIHdzenlzdGtpZSBiaWJsaW90ZWtpIHBvd2lubnkKK2Rvc3RhcmN6YeYgaW5mb3JtYWNqZSBvIHphbGW/bm+2Y2lhY2ggKHcgcG9zdGFjaSBwbGlr83cgc2hsaWJzIGx1YiBwbGlr83cKK3N5bWJvbGkpIFwtIG5hd2V0IGpltmxpIG5pZSBzsSBqZXN6Y3plIHW/eXdhbmUgcHJ6ZXogaW5uZSBwYWtpZXR5LgorLlRQIAorXGZCXC1cLXdhcm5pbmdzPVxmUFxmSXdhcnRvtuZcZlAKK1xmSXdhcnRvtuZcZlAgamVzdCBwb2xlbSBiaXRvd3ltIGRlZmluaXVqsWN5bSB6YmnzciBvc3RyemW/ZfEsIGt083JlIG1vZ7EgYnnmCit3eXOzYW5lIHByemV6IFxmQmRwa2dcLXNobGliZGVwc1xmUC4gQml0IDAgKHdhcnRvtuY9MSkgd7OxY3phIG9zdHJ6Zb9lbmllICJ3Ciu/YWRuZWogeiBiaWJsaW90ZWsgbmllIHpuYWxlemlvbm8gc3ltYm9sdSBcZklzeW1iXGZQIHW/eXdhbmVnbyBwcnplegorXGZJcGxpa19iaW5hcm55XGZQIiwgYml0IDEgKHdhcnRvtuY9Mikgd7OxY3phIG9zdHJ6Zb9lbmllICJtb79uYSBieSB1bmlrbrHmCit6YWxlv25vtmNpIG9kIGJpYmxpb3Rla2kgXGZJYmlibFxmUCIsIHphtiBiaXQgMiAod2FydG+25j00KSB3s7FjemEgb3N0cnplv2VuaWUKKyJcZklwbGlrX2JpbmFybnlcZlAgbmllIHBvd2luaWVuIGJ55iBsaW5rb3dhbnkgeiBcZkliaWJsaW90ZWuxXGZQIi4gRG9tebZsbrEKK1xmSXdhcnRvtmNpsVxmUCBqZXN0IDM6IHBpZXJ3c3plIGR3YSBvc3RyemW/ZW5pYSBzsSBkb215tmxuaWUgYWt0eXduZSwgemG2Citvc3RhdG5pZSBuaWUuIFVzdGF3aWVuaWUgXGZJd2FydG+2Y2lcZlAgbmEgNyBwb3dvZHVqZSBha3R5d2Fjauogd3N6eXN0a2ljaAorb3N0cnplv2XxLgorLlRQIAorXGZCXC1cLWFkbWluZGlyPVxmUFxmSWthdGFsb2dcZlAKK1ptaWVuaWEgcG+zb79lbmllIGJhenkgZGFueWNoIFxmQmRwa2dcZlAuIERvbXm2bG5pZSBqZXN0IHRvIFxmSS92YXIvbGliL2Rwa2dcZlAuCisuVFAgCitcZkJcLWhcZlAsIFxmQlwtXC1oZWxwXGZQCitXebZ3aWV0bGEgaW5mb3JtYWNq6iBvIHW/eXRrb3dhbml1IGkga2/xY3p5IGR6aWGzYW5pZS4KKy5UUCAKK1xmQlwtXC12ZXJzaW9uXGZQCitXebZ3aWV0bGEgaW5mb3JtYWNq6iBvIHdlcnNqaSBpIHBvbXm2bG5pZSBrb/FjenkgZHppYbNhbmllLgorLgorLlNIIFVXQUdJCitQb25pZXdhvyBcZkJkcGtnXC1zaGxpYmRlcHNcZlAgYW5hbGl6dWplIHpiafNyIHN5bWJvbGkgdb95d2FueWNoIHByemV6IGthv2R5CitwbGlrIGJpbmFybnkgZ2VuZXJvd2FuZWdvIHBha2lldHUsIGplc3QgdyBzdGFuaWUgd3lzebNh5iBvc3RyemW/ZW5pYSB3CitwZXdueWNoIHByenlwYWRrYWNoLiBJbmZvcm11arEgb25lIG8gcnplY3phY2gsIGt083JlIG1vZ7EgYnnmIHVsZXBzem9uZSB3CitwYWtpZWNpZS4gVyB3aeprc3pvtmNpIHByenlwYWRr83cgZG90eWN6eSB0byBiZXpwb7ZyZWRuaW8gb3J5Z2luYWxueWNoCiu8cvNkZbMuIFBvbmm/ZWogemVicmFuZSBzsSBvc3RyemW/ZW5pYSBuYSBqYWtpZSBtb79uYSBuYXRyYWZp5iwgdyBrb2xlam5vtmNpCittYWxlarFjZWogd2G/bm+2Y2k6CisuVFAgCitcZkJ3IL9hZG5laiB6IGJpYmxpb3RlayBuaWUgem5hbGV6aW9ubyBzeW1ib2x1XGZQXGZJIHN5bWJcZlBcZkIgdb95d2FuZWdvIHByemV6IFxmUFxmSXBsaWtfYmluYXJueVxmUAorV3NrYXphbnkgc3ltYm9sIG5pZSB6b3N0YbMgb2RuYWxlemlvbnkgdyC/YWRuZWogeiBiaWJsaW90ZWssIHoga3TzcnltaSBqZXN0CitsaW5rb3dhbnkgcGxpayBiaW5hcm55LiBUYWtpIFxmSXBsaWtfYmluYXJueVxmUCBqZXN0IG5hanBld25pZWogYmlibGlvdGVrsSBpCitwb3dpbmllbiBieeYgbGlua293YW55IHogZG9kYXRrb3exIGJpYmxpb3Rla7EgcG9kY3phcyBidWRvd2FuaWEgcGFraWV0dQorKG9wY2phIFxmQlwtbFxmUFxmSWJpYmxpb3Rla2FcZlAgbGlua2VyYSkuCisuVFAgCitcZklwbGlrX2JpbmFybnlcZlBcZkIgemF3aWVyYSBuaWVyb3p3abF6eXdhbG5lIG9kbmllc2llbmllIGRvIHN5bWJvbHUgXGZQXGZJc3ltXGZQXGZCOiBwcmF3ZG9wb2RvYm5pZSBqZXN0IHRvIHd0eWN6a2FcZlAKK1dza2F6YW55IHN5bWJvbCBuaWUgem9zdGGzIG9kbmFsZXppb255IHcgv2FkbmVqIHogYmlibGlvdGVrLCB6IGt083J5bWkgamVzdAorbGlua293YW55IHBsaWsgYmluYXJueS4gVGFraSBcZklwbGlrX2JpbmFybnlcZlAgamVzdCBuYWpwZXduaWVqIHd0eWN6a7EgaSBqZXN0CitwcmF3ZG9wb2RvYm5pZSBkb3N0YXJjemFueSB3cmF6IHogcHJvZ3JhbWVtLCBrdPNyeSCzYWR1auogdGFrsQord3R5Y3pr6i4gVGVvcmV0eWN6bmllIHd0eWN6a2EgbmllIHBvd2lubmEgbWll5iBwb2xhIFNPTkFNRSwgamVkbmFrIHRlbiBwbGlrCitiaW5hcm55IGplIHBvc2lhZGEgaSBuaWUgbW+/bmEgZ28gemlkZW50eWZpa293YeYgbmEgdGVqIHBvZHN0YXdpZS4gRmFrdCwgab8KK3BsaWsgdGVuIGplc3QgdW1pZXN6Y3pvbnkgdyBuaWVwdWJsaWN6bnltIGthdGFsb2d1IG1vY25vIHdza2F6dWplIG5hIHRvLCC/ZQorbmllIGplc3Qgb24gend5a7OxIGJpYmxpb3Rla7Egd3Nw87NkemllbG9usS4gSmW2bGkgcGxpayBiaW5hcm55IHJ6ZWN6eXdptmNpZQoramVzdCB3dHljemuxLCBtb79uYSBwb21pbrHmIHRvIG9zdHJ6Zb9lbmllLiBKZWRuYWsgemF3c3plIGlzdG5pZWplCittb79saXdvtuYsIL9lIGplc3QgdG8gYmlibGlvdGVrYSBpIHByb2dyYW15IHogbmmxIGxpbmtvd2FuZSB1v3l3YWqxIFJQQVRILAorYWJ5IGR5bmFtaWN6bnkgbG9hZGVyIGJ5syB3IHN0YW5pZSBqsSBvZG5hbGW85i4gVyB0YWtpbSBwcnp5cGFka3UgYmlibGlvdGVr6gorbW+/bmEgdXpuYeYgemEgemVwc3V0sSBpIG5hbGW/eSBqsSBuYXByYXdp5i4KKy5UUCAKK1xmQm1vv25hIGJ5IHVuaWtuseYgemFsZb9ub7ZjaSBvZCBcZlBcZkliaWJsaW90ZWtpXGZQXGZCLCBqZb9lbGkgbmllIGJ5s29ieSBuaWVwb3RyemVibmVnbyBsaW5rb3dhbmlhIFxmUFxmSXBsaWvzd19iaW5hcm55Y2hcZlBcZkIgeiBuabEgKG5pZSBzsSB1v3l3YW5lIL9hZG5lIHogdGFtdGVqc3p5Y2ggc3ltYm9saSkuXGZQCiuvYWRlbiB6IFxmSXBsaWvzd19iaW5hcm55Y2hcZlAsIGt083JlIHOxIGxpbmtvd2FuZSB6IFxmSWJpYmxpb3Rla7FcZlAgbmllIHW/eXdhCitzeW1ib2xpIHByemV6IG5psSB1ZG9zdOpwbmlhbnljaC4gUG9wcmF3aWFqsWMgd3N6eXN0a2llIHBsaWtpIGJpbmFybmUgbW+/bmEKK3VuaWtuseYgemFsZb9ub7ZjaSB6d2mxemFueWNoIHogdLEgYmlibGlvdGVrsSAoY2h5YmEsIL9lIHRha2Egc2FtYSB6YWxlv25vtuYKK2plc3QgcvN3bmllvyBnZW5lcm93YW5hIHByemV6IGlubrEgYmlibGlvdGVr6iwga3TzcmEgamVzdCBmYWt0eWN6bmllCit1v3l3YW5hKS4KKy5UUCAKK1xmSXBsaWtfYmluYXJueVxmUFxmQiBuaWUgcG93aW5pZW4gYnnmIGxpbmtvd2FueSB6IFxmUFxmSWJpYmxpb3Rla7FcZlBcZkIgKG5pZSBzsSB1v3l3YW5lIL9hZG5lIHogdGFtdGVqc3p5Y2ggc3ltYm9saSkuXGZQCitcZklwbGlrX2JpbmFybnlcZlAgamVzdCBsaW5rb3dhbnkgeiBiaWJsaW90ZWuxLCBrdPNyZWogbmllIHBvdHJ6ZWJ1amUuIE5pZSBqZXN0Cit0byBwcm9ibGVtLCBhbGUgbW+/bmEgdXp5c2th5iBwZXdusSBwb3ByYXfqIHd5ZGFqbm+2Y2kgY3phc3Ugs2Fkb3dhbmlhIHBsaWt1CitiaW5hcm5lZ28sIGpltmxpIGJpYmxpb3Rla2EgdGEgbmllIGLqZHppZSB6IG5pbSBsaW5rb3dhbmEuIFRvIG9zdHJ6Zb9lbmllCitzcHJhd2R6YSB0ZSBzYW1lIGluZm9ybWFjamUgY28gcG9wcnplZG5pZSwgYWxlIHd5a29udWplIHRvIGRsYSBrYb9kZWdvIHBsaWt1CitiaW5hcm5lZ28gemFtaWFzdCB3eWtvbnl3YW5pYSBnbG9iYWxuZWdvIHNwcmF3ZHplbmlhIGRsYSB3c3p5c3RraWNoCithbmFsaXpvd2FueWNoIHBsaWvzdy4KKy5TSCBCo8pEWQorXGZCZHBrZ1wtc2hsaWJkZXBzXGZQIHByemVyd2llIGR6aWGzYW5pZSB6IGKz6mRlbSBqZbZsaSBuaWUgYupkemllIHcgc3RhbmllCit6bmFsZbzmIHB1YmxpY3puZWogYmlibGlvdGVraSB1v3l3YW5laiBwcnpleiBwbGlrIGJpbmFybnksIGx1YiBqZbZsaQorYmlibGlvdGVrYSB0YWthIG5pZSBi6mR6aWUgbWll5iBwb3dpsXphbmVqIGluZm9ybWFjamkgbyB6YWxlv25vtmNpYWNoIChwbGlrdQorc2hsaWJzIGx1YiBwbGlrdSBzeW1ib2xpKS4gUHVibGljem5lIGJpYmxpb3Rla2kgbWFqsSBTT05BTUUgaSBzsQord2Vyc2pvbm93YW5lIChqYWsgbnAuIGxpYnNvbWV0aGluZy5zby5cZklYXGZQKS4gQmlibGlvdGVraSBwcnl3YXRuZSAoamFrCitucC4gd3R5Y3praSkgbmllIHBvd2lubnkgbWll5iBTT05BTUUgaSBuaWUgbXVzerEgYnnmIHdlcnNqb25vd2FuZS4KKy5UUCAKK1xmQm5pZSBtb79uYSB6bmFsZbzmIGJpYmxpb3Rla2kgXGZQXGZJc29uYW1lXC1iaWJsaW90ZWtpXGZQXGZCIHBvdHJ6ZWJuZWogZGxhIFxmUFxmSXBsaWt1X2JpbmFybmVnb1xmUFxmQiAoUlBBVEggdG8gIlxmUFxmSXJwYXRoXGZQXGZCIilcZlAKK1RoZSBcZkliaW5hcnlcZlAgdXNlcyBhIGxpYnJhcnkgY2FsbGVkIFxmSWxpYnJhcnlcLXNvbmFtZVxmUCBidXQgXGZCZHBrZ1wtc2hsaWJkZXBzXGZQCitoYXMgYmVlbiB1bmFibGUgdG8gZmluZCB0aGUgbGlicmFyeS4gIFxmQmRwa2dcLXNobGliZGVwc1xmUCBjcmVhdGVzIGEgbGlzdCBvZgorZGlyZWN0b3JpZXMgdG8gY2hlY2sgYXMgZm9sbG93aW5nOiBkaXJlY3RvcmllcyBsaXN0ZWQgaW4gdGhlIFJQQVRIIG9mIHRoZQorYmluYXJ5LCBkaXJlY3RvcmllcyBsaXN0ZWQgaW4gL2V0Yy9sZC5zby5jb25mLCBkaXJlY3RvcmllcyBsaXN0ZWQgaW4gdGhlCitMRF9MSUJSQVJZX1BBVEggZW52aXJvbm1lbnQgdmFyaWFibGUsIGFuZCBzdGFuZGFyZCBwdWJsaWMgZGlyZWN0b3JpZXMgKC9saWIsCisvdXNyL2xpYiwgL2xpYjMyLCAvdXNyL2xpYjMyLCAvbGliNjQsIC91c3IvbGliNjQpLiBUaGVuIGl0IGNoZWNrcyB0aG9zZQorZGlyZWN0b3JpZXMgaW4gdGhlIHBhY2thZ2UncyBidWlsZCB0cmVlIG9mIHRoZSBiaW5hcnkgYmVpbmcgYW5hbHl6ZWQsIGluIHRoZQorcGFja2FnZXMnIGJ1aWxkIHRyZWVzIGluZGljYXRlZCB3aXRoIHRoZSBcLVMgY29tbWFuZFwtbGluZSBvcHRpb24sIGluIG90aGVyCitwYWNrYWdlcycgYnVpbGQgdHJlZXMgdGhhdCBjb250YWlucyBhIERFQklBTi9zaGxpYnMgb3IgREVCSUFOL3N5bWJvbHMgZmlsZQorYW5kIGZpbmFsbHkgaW4gdGhlIHJvb3QgZGlyZWN0b3J5LiAgSWYgdGhlIGxpYnJhcnkgaXMgbm90IGZvdW5kIGluIGFueSBvZgordGhvc2UgZGlyZWN0b3JpZXMsIHRoZW4geW91IGdldCB0aGlzIGVycm9yLgorCitKZbZsaSBuaWUgb2RuYWxlemlvbmEgYmlibGlvdGVrYSBqZXN0IHcgcHJ5d2F0bnltIGthdGFsb2d1IHRlZ28gc2FtZWdvCitwYWtpZXR1LCBuYWxlv3kgZG9kYeYgdGFraSBrYXRhbG9nIGRvIExEX0xJQlJBUllfUEFUSC4gSmW2bGkgYmlibGlvdGVrYSBqZXN0Cit3IGlubnltIGJ1ZG93YW55bSBiaW5hcm55bSBwYWtpZWNpZSwgbmFsZb95IHVwZXduaeYgc2nqLCC/ZSBwbGlrIHNobGlicyBsdWIKK3BsaWsgc3ltYm9saSBkbGEgdGVnbyBwYWtpZXR1IHpvc3RhsyBzdHdvcnpvbnkgb3Jheiwgv2UgTERfTElCUkFSWV9QQVRICit6YXdpZXJhIG9kcG93aWVkbmkga2F0YWxvZyBqZbZsaSBiaWJsaW90ZWthIHRha79lIGplc3QgdyBrYXRhbG9ndSBwcnl3YXRueW0uCisuVFAgCitcZkJuaWUgem5hbGV6aW9ubyBpbmZvcm1hY2ppIG8gemFsZb9ub7ZjaWFjaCBkbGEgXGZQXGZJcGxpa1wtYmlibGlvdGVraVxmUFxmQiAodb95d2FuZWdvIHByemV6IFxmUFxmSXBsaWtcLWJpbmFybnlcZlBcZkIpLlxmUAorQmlibGlvdGVrYSB3eW1hZ2FuYSBwcnpleiBcZklwbGlrXC1iaW5hcm55XGZQIHpvc3Rhs2Egem5hbGV6aW9uYSBwcnplegorXGZCZHBrZ1wtc2hsaWJkZXBzXGZQIHcgXGZJcGxpa3VcLWJpYmxpb3Rla2lcZlAsIGFsZSBcZkJkcGtnXC1zaGxpYmRlcHNcZlAgbmllIG3zZ7MKK29kbmFsZbzmIL9hZG5laiBpbmZvcm1hY2ppIG8gemFsZb9ub7ZjaWFjaCBkbGEgdGVqIGJpYmxpb3Rla2kuIEFieSBva3Jltmxp5goremFsZb9ub7ZjaSwgcG9kaup0byBwcvNi6iB1v3ljaWEgXGZCZHBrZyBcLVNcZlBcZklwbGlrXC1iaWJsaW90ZWtpXGZQIHcgY2VsdQorb2tyZbZsZW5pYSBwYWtpZXR1IGRvc3RhcmN6YWqxY2VnbyBkYW6xIGJpYmxpb3Rla+ouIE5hc3TqcG5pZSBzcHJhd2R6b25vCitvZHBvd2llZG5pZSBwbGlraSBzaGxpYnMgaSBwbGlraSBzeW1ib2xpIHcgL3Zhci9saWIvZHBrZy9pbmZvLyBvcmF6IHcKK3Lzv255Y2ggZHJ6ZXdhY2ggYnVkb3dhbmlhIHBha2lldPN3IChkZWJpYW4vKi9ERUJJQU4vKS4KKworVG8gbmllcG93b2R6ZW5pZSBtb79lIGJ55iBzcG93b2Rvd2FuZSBwcnpleiBuaWVwb3ByYXdueSBsdWIgbmllaXN0bmllarFjeQorcGxpayBzaGxpYnMgbHViIHBsaWsgc3ltYm9saSB3IHBha2llY2llIGJpYmxpb3Rla2kuIE1vv2Ugc2nqIHLzd25pZb8gemRhcnp55goramW2bGkgYmlibGlvdGVrYSBqZXN0IGJ1ZG93YW5hIHdld26xdHJ6IHRlZ28gc2FtZWdvIHBha2lldHUgvHLzZLNvd2VnbywgYQorcGxpa2kgc2hsaWJzIGplc3pjemUgbmllIHpvc3Rhs3kgc3R3b3J6b25lICh3IHRha2ltIHByenlwYWRrdSBuYWxlv3kKK3BvcHJhd2nmIGRlYmlhbi9ydWxlcyBhYnkgc2hsaWJzIGJ5s3kgdHdvcnpvbmUgcHJ6ZWQgd3l3b7NhbmllbQorXGZCZHBrZ1wtc2hsaWJkZXBzXGZQKS4gTmlld7NhtmNpd2Egd2FydG+25iBSUEFUSCBtb79lIHLzd25pZb8gcG93b2Rvd2HmLCC/ZQorYmlibGlvdGVrYSB6b3N0YW5pZSBvZG5hbGV6aW9uYSBwb2QgbmlldHlwb3exIG5henexLCBrdPNyYSBuaWUgamVzdCB6d2mxemFuYQoreiC/YWRueW0gcGFraWV0ZW0gKG5wLiAvdXNyL2xpYi9vcGVub2ZmaWNlLm9yZy8uLi9saWIvbGlic3NsLnNvLjAuOS44Cit6YW1pYXN0IC91c3IvbGliL2xpYnNzbC5zby4wLjkuOCkuIFxmQmRwa2dcLXNobGliZGVwc1xmUCBwcvNidWplIHBvcmFkemnmIHNvYmllCit6IHR5bSBzdGFyYWqxYyBzaeogb2Rjenl0YeYgbmF6d+oga2Fub25pY3pusSAoeiB1v3ljaWVtIFxmQnJlYWxwYXRoXGZQKDMpKSBhbGUKK21vv2UgdG8gbmllIHphd3N6ZSB6YWR6aWGzYeYuIEFieSB1bmlrbrHmIHByb2JsZW3zdywgbmFqbGVwaWVqIGplc3QgemF3c3plCitkb3Byb3dhZHpp5iBkbyBwb3J6sWRrdSBSUEFUSCBwbGlrdSBiaW5hcm5lZ28uCisKK1d5d2+zYW5pZSBcZkJkcGtnXC1zaGxpYmRlcHNcZlAgdyB0cnliaWUgcm96c3plcnpvbmVqIGluZm9ybWFjamkgKFwtdikgZG9zdGFyY3phCit3aWVsdSBkb2RhdGtvd3ljaCBpbmZvcm1hY2ppIG8gdHltLCBnZHppZSBwcvNib3dhsyBvbiB6bmFsZbzmIGluZm9ybWFjauogbworemFsZb9ub7ZjaWFjaC4gTW+/ZSB0byBieeYgcHJ6eWRhdG5lIGpltmxpIG5pZSB3aWFkb21vIGRsYWN6ZWdvIHp3cmFjYW55CitqZXN0IHRlbiBis7FkLgorLlNIICJaT0JBQ1ogVEFLr0UiCitcZkJkZWJcLXNobGlic1xmUCg1KSwgXGZCZGViXC1zeW1ib2xzXGZQKDUpLCBcZkJkcGtnXC1nZW5zeW1ib2xzXGZQKDEpLgorLgorLlNIIEFVVE9SWlkKK0NvcHlyaWdodCBcKGNvIDE5OTVcLTE5OTYgSWFuIEphY2tzb24KKy5icgorQ29weXJpZ2h0IFwoY28gMjAwMCBXaWNoZXJ0IEFra2VybWFuCisuYnIKK0NvcHlyaWdodCBcKGNvIDIwMDYgRnJhbmsgTGljaHRlbmhlbGQKKy5icgorQ29weXJpZ2h0IFwoY28gMjAwN1wtMjAwOCBSYXBoYVxbOmVdbCBIZXJ0em9nCisuc3AKK05pbmllanN6eSBwcm9ncmFtIGplc3Qgb3Byb2dyYW1vd2FuaWVtIHdvbG55bSwgc3ByYXdkvCBQb3dzemVjaG6xIExpY2VuY2rqCitQdWJsaWN6brEgR05VIHcgd2Vyc2ppIGRydWdpZWogbHViIHDzvG5pZWpzemVqLCBieSBkb3dpZWR6aWXmIHNp6iBvCit3YXJ1bmthY2ggZHlzdHJ5YnVjamkuIEJyYWsgSkFLSUVKS09MV0lFSyBnd2FyYW5jamkuCisuU0ggIlSjVU1BQ1pFIgorUGlvdHIgUm9zemF0eWNraSA8ZGV4dGVyQGRlYmlhbi5vcmc+LCAxOTk5CisuYnIKK0JhcnRvc3ogRmXxc2tpIDxmZW5pb0BkZWJpYW4ub3JnPiwgMjAwNC0yMDA1CisuYnIKK1JvYmVydCBMdWJlcmRhIDxyb2JlcnRAZGViaWFuLm9yZz4sIDIwMDYtMjAwOAorLmJyCitXaWt0b3IgV2FuZGFjaG93aWN6IDxzaXJ5ZXNAZ21haWwuY29tPiwgMjAwOApkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vcGwvZHBrZy1zcGxpdC4xIGIvZHBrZy0xLjE2LjEuMS9tYW4vcGwvZHBrZy1zcGxpdC4xCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmI5Y2E4OTMKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9wbC9kcGtnLXNwbGl0LjEKQEAgLTAsMCArMSwxODQgQEAKKy5cIiBBdXRob3JzOiBJYW4gSmFja3NvbgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlwiCisuXCIgVGhpcyBmaWxlIHdhcyBnZW5lcmF0ZWQgd2l0aCBwbzRhLiBUcmFuc2xhdGUgdGhlIHNvdXJjZSBmaWxlLgorLlwiCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuVEggZHBrZ1wtc3BsaXQgMSAyMDExXC0wN1wtMDQgIlByb2pla3QgRGViaWFuYSIgInByb2dyYW15IHBvbW9jbmljemUgZHBrZyIKKy5TSCBOQVpXQQorZHBrZ1wtc3BsaXQgXC0gbmFyeupkemllIGR6aWVsZW5pYS+zsWN6ZW5pYSBwYWtpZXTzdyBEZWJpYW5hCisuCisuU0ggU0ujQUROSUEKK1xmQmRwa2dcLXNwbGl0XGZQIFtcZklvcHRpb25cZlAuLi5dIFxmSWNvbW1hbmRcZlAKKy4KKy5TSCBPUElTCitcZkJkcGtnXC1zcGxpdFxmUCBkemllbGkgcGFraWV0eSBiaW5hcm5lIERlYmlhbmEgbmEgbW5pZWpzemUgY3rqtmNpIG9yYXogc2NhbGEKK2plIHogcG93cm90ZW0sIHRhayC/ZSBtb79saXdlIGplc3QgcHJ6ZWNob3dhbmllIHdp6mtzenljaCBwYWtpZXTzdyBuYSBtYbN5Y2gKK25vtm5pa2FjaCwgdGFraWNoIGphayBkeXNraWV0a2kuCisKK1Byb2dyYW0gd3l3b7N1amUgc2nqIHLqY3puaWUsIHdyYXogeiBvcGNqsSBcZkJcLVwtc3BsaXRcZlAsIFxmQlwtXC1qb2luXGZQIGx1YgorXGZCXC1cLWluZm9cZlAuCisKK01vv2xpd2UgamVzdCB0YWu/ZSB3eXdvs2FuaWUgYXV0b21hdHljem5lLCBwcnpleiB1v3ljaWUgb3BjamkKK1xmQlwtXC1hdXRvXGZQLiBXdGVkeSB0byB0d29yem9uYSBqZXN0IGtvbGVqa2EgY3rqtmNpIHBha2lldHUsIGEgZ2R5IHdzenlzdGtpZQorY3rqtmNpIGLqZLEgZG9zdOpwbmUsIGNhs3kgcGFraWV0IHpvc3RhbmllIG9kdHdvcnpvbnkuIE9wY2plIFxmQlwtXC1saXN0cVxmUCBpCitcZkJcLVwtZGlzY2FyZFxmUCBwb3p3YWxharEgbmEgemFyerFkemFuaWUga29sZWprsS4KKworV3N6eXN0a2llIGR6aWGzYW5pYSwgdGFraWUgamFrIHJvemR6aWVsYW5pZSwgs7FjemVuaWUsIGN6eSBrb2xlamtvd2FuaWUsCitwb3dvZHVqsSB3ebZ3aWV0bGVuaWUgaW5mb3JtYWNqaSBuYSBzdGFuZGFyZG93ZSB3eWq2Y2llLiBJbmZvcm1hY2plIHRlIG1vv25hCit6aWdub3Jvd2HmLgorLgorLlNIIFBPTEVDRU5JQQorLlRQIAorXGZCXC1zXGZQLCBcZkJcLVwtc3BsaXRcZlAgXGZJa29tcGxldG5lXC1hcmNoaXd1bVxmUCBbXGZJcHJ6ZWRyb3N0ZWtcZlBdCitSb3pkemllbGVuaWUgcG9qZWR5bmN6ZWdvIHBha2lldHUgYmluYXJuZWdvIG5hIHBvc3pjemVn82xuZSBjeuq2Y2kuCisKK0N66rZjaSBtYWqxIG5henfqIFxmSXByenlyb3N0ZWtcZlBcZkIuXGZQXGZJTlxmUFxmQm9mXGZQXGZJTVxmUFxmQi5kZWJcZlAgZ2R6aWUgXGZJTlxmUCBqZXN0CitudW1lcmVtIGN66rZjaSwgcm96cG9jenluYWqxYyBvZCAxLCBhIFxmSU1cZlAgamVzdCBsaWN6YrEgd3N6eXN0a2ljaCBjeuq2Y2kKKyhkemllc2nqdG5pZSkuCisKK0pltmxpIG5pZSBwb2Rhbm8gXGZJcHJ6ZWRyb3N0a2FcZlAsIHRvIHW/eXRhIGplc3QgbmF6d2EgcGxpa3UKK1xmSXBls25lZ29cLWFyY2hpd3VtXGZQLCB3cmF6IHoga2F0YWxvZ2llbSwgZ2R5IGplc3Qgb2tyZbZsb255LiBQb25hZHRvIHVzdW5p6nRhCitqZXN0IGtv8WPzd2thIFxmQi5kZWJcZlAuCisuVFAgCitcZkJcLWpcZlAsIFxmQlwtXC1qb2luXGZQIFxmSXBhcnRcZlAuLi4KK6OxY3plbmllIGN66rZjaSBwYWtpZXR1IGkgb2R0d29yemVuaWUgb3J5Z2luYWxuZWdvIHBsaWt1IHNwcnplZCBkemllbGVuaWEuCisKK1BsaWtpIHBvZGFuZSBqYWtvIGFyZ3VtZW50eSBtdXN6sSBieeYgY3rqtmNpYW1pIHRlZ28gc2FtZWdvIG9yeWdpbmFsbmVnbworcGFraWV0dS4gS2G/ZGEgY3rqtuYgbXVzaSBwb2phd2nmIHNp6iByYXogbmEgbGm2Y2llIGFyZ3VtZW5083csIGFsZSBuaWUgamVzdAora29uaWVjem5lIHphY2hvd2FuaWUgd7NhtmNpd2VqIGtvbGVqbm+2Y2kuCisKK0N66rZjaSBtdXN6sSBieeYgd3lnZW5lcm93YW5lIHogdb95Y2llbSB0ZWdvIHNhbWVnbyByb3ptaWFydSwgY28gb3puYWN6YSwgv2UKK211c3qxIHRvIGJ55iB0ZSBzYW1lIGN66rZjaSB1dHdvcnpvbmUgemEgcG9tb2OxIHBvbGVjZW5pYSBcZkJkcGtnXC1zcGxpdAorXC1cLXNwbGl0XGZQLgorCitOYXp3eSBwbGlr83cgY3rqtmNpIG5pZSBtYWqxIHpuYWN6ZW5pYSBkbGEgcHJvY2VzdSBvZHR3b3J6ZW5pYSBwYWtpZXR1LgorCitCeSBkZWZhdWx0IHRoZSBvdXRwdXQgZmlsZSBpcyBjYWxsZWQKK1xmSXBhY2thZ2VcZlBcZkJfXGZQXGZJdmVyc2lvblxmUFxmQl9cZlBcZklhcmNoXGZQXGZCLmRlYlxmUC4KKworLlRQIAorXGZCXC1JXGZQLCBcZkJcLVwtaW5mb1xmUCBcZklwYXJ0XGZQLi4uCitXebZ3aWV0bGFuaWUgaW5mb3JtYWNqaSwgcG9kYW55Y2ggdyBmb3JtYWNpZSBjenl0ZWxueW0gZGxhIGN6s293aWVrYSwgbworY3rqtmNpYWNoIHBha2lldHUuIEFyZ3VtZW50eSwga3TzcmUgbmllIHOxIGN66rZjabEgcGFraWV0dSwgcG93b2R1arEKK3d5tndpZXRsZW5pZSBpbmZvcm1hY2ppIG8gdHltIGZha2NpZSBuYSBzdGFuZGFyZG93eW0gd3lqtmNpdS4KKy5UUCAKK1xmQlwtYVxmUCwgXGZCXC1cLWF1dG8gXC1vXGZQIFxmSXBls25lXC1hcmNoaXd1bSBjeuq25lxmUAorQXV0b21hdHljem5lIGtvbGVqa293YW5pZSBjeuq2Y2kgaSBvZHR3b3J6ZW5pZSBwYWtpZXR1LCBnZHkgdG8gamVzdCBtb79saXdlLgorCitQb2RhbmEgXGZJY3rqtuZcZlAgem9zdGFqZSBzcHJhd2R6b25hIGkgcG9y83duYW5hIHogaW5ueW1pIGN66rZjaWFtaSB0ZWdvCitzYW1lZ28gcGFraWV0dSwga3TzcmUgem5hamR1arEgc2nqIHcga29sZWpjZS4KKworSmW2bGkgd3N6eXN0a2llIGN66rZjaSBwYWtpZXR1IHOxIGp1vyBkb3N06nBuZSwgcGFraWV0IGplc3Qgb2R0d2FyemFueSBpCit6YXBpc3l3YW55IGRvIFxmSXBls25lZ29cLWFyY2hpd3VtXGZQLgorCitKZbZsaSBqZXN6Y3plIG5pZSBtYSB3c3p5c3RraWNoIGN66rZjaSwgcG9kYW5hIFxmSWN66rbmXGZQIGplc3Qga29waW93YW5hIGRvCitrb2xlamtpIGkgXGZJcGWzbmVcLWFyY2hpd3VtXGZQIG5pZSBqZXN0IG9kdHdhcnphbmUuCisKK0lmIFxmSXBhcnRcZlAgaXMgbm90IGEgc3BsaXQgYmluYXJ5IHBhY2thZ2UgcGFydCB0aGVuIFxmQmRwa2dcLXNwbGl0XGZQIHdpbGwgZXhpdAord2l0aCBzdGF0dXMgXGZCMVxmUDsgaWYgc29tZSBvdGhlciB0cm91YmxlIG9jY3VycyB0aGVuIGl0IHdpbGwgZXhpdCB3aXRoIHN0YXR1cworXGZCMlxmUC4KKworT3BjamEgXGZCXC1cLW91dHB1dFxmUCBsdWIgXGZCXC1vXGZQIG11c2kgem9zdGHmIHBvZGFuYSB3IHByenlwYWRrdSB1v3ljaWEKK1xmQlwtXC1hdXRvXGZQLiAoVyBwcnplY2l3bnltIHJhemllIHByb2dyYW0gbmllIHdpZWR6aWGzYnksIGpha2llZ28gc3BvZHppZXdh5gorc2nqIHBsaWt1IHd5arZjaW93ZWdvLikKKy5UUCAKK1xmQlwtbFxmUCwgXGZCXC1cLWxpc3RxXGZQCitMaXN0b3dhbmllIHphd2FydG+2Y2kga29sZWpraSBjeuq2Y2kgcGFraWV0dSBkbyBvZHR3b3J6ZW5pYS4KKworRGxhIGthv2RlZ28gcGxpa3UgY3rqtmNpIHBha2lldHUgd3m2d2lldGxhbmEgamVzdCBuYXp3YSBwYWtpZXR1LCBjeuq25iB3Citrb2xlamNlLCBjYbNrb3dpdGEgbGljemJhIGJhanTzdyBwcnplY2hvd3l3YW55Y2ggdyBrb2xlamNlLgorLlRQIAorXGZCXC1kXGZQLCBcZkJcLVwtZGlzY2FyZFxmUCBbXGZJcGFraWV0XGZQLi4uXQorVXN1d2EgY3rqtmNpIHBha2lldHUgeiBrb2xlamtpLgorCitKZbZsaSBuaWUgcG9kYW5vIG5hend5IFxmSXBha2lldHVcZlAsIGN6eXN6Y3pvbmEgamVzdCBjYbNhIGtvbGVqa2EuIEdkeSBuYXp3YQoramVzdCBwb2RhbmEsIHVzdXdhbmUgc7EgdHlsa28gY3rqtmNpIHBvZGFuZWdvIHBha2lldHUuCisuVFAgCitcZkJcLWhcZlAsIFxmQlwtXC1oZWxwXGZQCitXebZ3aWV0bGEgaW5mb3JtYWNq6iBvIHW/eXRrb3dhbml1IGkga2/xY3p5IGR6aWGzYW5pZS4KKy5UUCAKK1xmQlwtXC12ZXJzaW9uXGZQCitXebZ3aWV0bGEgaW5mb3JtYWNq6iBvIHdlcnNqaSBpIHBvbXm2bG5pZSBrb/FjenkgZHppYbNhbmllLgorLgorLlNIIE9QQ0pFCisuVFAgCitcZkJcLVwtZGVwb3RkaXJcZlBcZkkga2F0YWxvZ1xmUAorT2tyZbZsZW5pZSBhbHRlcm5hdHl3bmVnbyBrYXRhbG9ndSBkbGEga29sZWpraSBjeuq2Y2kgcGFraWV083cgZG8KK3pyZWtvbnN0cnVvd2FuaWEuIERvbXm2bG55bSBqZXN0IFxmQi92YXIvbGliL2Rwa2dcZlAuCisuVFAgCitcZkJcLVNcZlAsIFxmQlwtXC1wYXJ0c2l6ZVxmUCBcZklraWJpYmFqdHlcZlAKK09rcmW2bGVuaWUgbWFrc3ltYWxuZWdvIHJvem1pYXJ1IGN66rZjaSBwYWtpZXR1IHcga2liaWJhanRhY2ggKEtpQiwgMTAyNAorYmFqdPN3KS4gV2FydG+2Y2mxIGRvbXm2bG6xIGplc3QgNDUwIEtpQi4KKy5UUCAKK1xmQlwtb1xmUCwgXGZCXC1cLW91dHB1dFxmUCBcZklwZbNuZVwtYXJjaGl3dW1cZlAKK09rcmW2bGVuaWUgbmF6d3kgcGxpa3UgcGWzbmVnbyBhcmNoaXd1bS4KKworVGEgb3BjamEgbmFkcGlzdWplIGRvbXm2bG6xIG5henfqIHByenkgb2R0d2FyemFuaXUgcGFraWV0dSAoXGZCXC1cLWpvaW5cZlApIG9yYXoKK2plc3Qgd3ltYWdhbmEgcHJ6eSBhdXRvbWF0eWN6bnltIG9kdHdhcnphbml1IHBha2lldHUgKFxmQlwtXC1hdXRvXGZQKS4KKy5UUCAKK1xmQlwtUVxmUCwgXGZCXC1cLW5wcXVpZXRcZlAKK0dkeSB3eWtvbnl3YW5lIGplc3QgYXV0b21hdHljem5lILOxY3plbmllIGN66rZjaSBwYWtpZXR1LCBcZkJkcGtnXC1zcGxpdFxmUAorend5a2xlIHd5tndpZXRsYSBpbmZvcm1hY2plIG8gYrPqZHppZSwgZ2R5IGRhbnkgcGxpayBcZkljeuq2Y2lcZlAgbmllIGplc3QKK2N66rZjabEgcGFraWV0dS4gVGEgb3BjamEgemFwb2JpZWdhIHd5tndpZXRsYW5pdSBuYWRtaWVybmVqIGlsb7ZjaQoraW5mb3JtYWNqaSBwcnpleiBwcm9ncmFteSB0YWtpZSBqYWsgXGZCZHBrZ1xmUC4KKy5UUCAKK1xmQlwtXC1tc2Rvc1xmUAorUGxpa2kgZ2VuZXJvd2FuZSBwcnpleiBcZkJcLVwtc3BsaXRcZlAgc7EgemFwaXN5d2FuZSB3IGZvcm1hY2llIG9kY3p5dHl3YW55bQorcHJ6ZXogTVNET1MuCisKK1ptaWVuaWFueSBqZXN0IHByemVkcm9zdGVrLCB6YXLzd25vIHRlbiBkb215tmxueSBqYWsgaSB0ZW4gcG9kYW55IHcKK2FyZ3VtZW5jaWU6IGxpdGVyeSBzsSB6YW1pZW5pYW5lIG5hIG1hs2UsIHpuYWsgcGx1c2EgemFtaWVuaWFueSBqZXN0IG5hCitcZkJ4XGZQLCBhIHBvem9zdGGzZSB6bmFraSBzsSBwb21pamFuZS4KKworUG93c3Rhs3kgcHJ6ZWRyb3N0ZWsgamVzdCB1Y2luYW55IGRvIG5pZXpi6mRuZWdvIHJvem1pYXJ1LiBQb3dzdGGzYSBuYXp3YSBtYQorcG9zdGHmIFxmSXByemVkcm9zdGVrTlxmUFxmQm9mXGZQXGZJTVxmUFxmQi5kZWIuLlxmUAorLgorLlNIICJLT0QgV1lKpkNJQSIKKy5UUCAKK1xmQjBcZlAKK1RoZSByZXF1ZXN0ZWQgc3BsaXQsIG1lcmdlLCBvciBvdGhlciBjb21tYW5kIHN1Y2NlZWRlZC4gIFxmQlwtXC1pbmZvXGZQIGNvbW1hbmRzCitjb3VudCBhcyBzdWNjZXNzZnVsIGV2ZW4gaWYgdGhlIGZpbGVzIGFyZSBub3QgYmluYXJ5IHBhY2thZ2UgcGFydHMuCisuVFAgCitcZkIxXGZQCitPbmx5IG9jY3VycyB3aXRoIFxmQlwtXC1hdXRvXGZQIGFuZCBpbmRpY2F0ZXMgdGhhdCB0aGUgXGZJcGFydFxmUCBmaWxlIHdhcyBub3QgYQorYmluYXJ5IHBhY2thZ2UgcGFydC4KKy5UUCAKK1xmQjJcZlAKK1NvbWUga2luZCBvZiB0cm91YmxlIGhhcHBlbmVkLCBzdWNoIGFzIGEgc3lzdGVtIGNhbGwgZmFpbHVyZSwgYSBmaWxlIHRoYXQKK2xvb2tlZCBsaWtlIGEgcGFja2FnZSBwYXJ0IGZpbGUgYnV0IHdhcyBjb3JydXB0ZWQsIGEgdXNhZ2UgZXJyb3Igb3Igc29tZQorb3RoZXIgcHJvYmxlbS4KKy4KKy5TSCBCo8pEWQorUG9icmFuaWUgcGWzbmVqIGluZm9ybWFjamkgbyBwYWtpZXRhY2ggdyBrb2xlamNlIGplc3QgbmllbW+/bGl3ZSwgYmV6Citwcnplc3p1a2FuaWEga2F0YWxvZ3Uga29sZWpraS4KKworTmllIG1hIHByb3N0ZWdvIHRlc3R1IG5hIHNwcmF3ZHplbmllLCBjenkgZGFueSBwbGlrIGplc3QgbmEgcGV3bm8gY3rqtmNpsQorcGFraWV0dS4KKy4KKy5TSCBQTElLSQorLlRQIAorXGZJL3Zhci9saWIvZHBrZy9wYXJ0c1xmUAorRG9tebZsbnkga2F0YWxvZyBrb2xlamtpIGN66rZjaSBwYWtpZXTzdyBjemVrYWqxY3ljaCBuYSBhdXRvbWF0eWN6bmUKK29kdHdvcnplbmllLgorCitOYXp3eSBwbGlr83cgdyB0eW0ga2F0YWxvZ3Ugc7Egd2V3bup0cnpuaWUgdXR3b3J6b25lIHByemV6IFxmQmRwa2dcLXNwbGl0XGZQIGkKK25pZSBzsSB1v3l0ZWN6bmUgZGxhIGlubnljaCBwcm9ncmFt83cuCisuCisuU0ggIlpPQkFDWiBUQUuvRSIKK1xmQmRlYlxmUCg1KSwgXGZCZGViXC1jb250cm9sXGZQKDUpLCBcZkJkcGtnXC1kZWJcZlAoMSksIFxmQmRwa2dcZlAoMSkuCisuCisuU0ggQVVUT1IKK0NvcHlyaWdodCBcKGNvIDE5OTVcLTE5OTYgSWFuIEphY2tzb24KKy5zcAorTmluaWVqc3p5IHByb2dyYW0gamVzdCBvcHJvZ3JhbW93YW5pZW0gd29sbnltLCBzcHJhd2S8IFBvd3N6ZWNobrEgTGljZW5jauoKK1B1YmxpY3pusSBHTlUgdyB3ZXJzamkgZHJ1Z2llaiBsdWIgcPO8bmllanN6ZWosIGJ5IGRvd2llZHppZeYgc2nqIG8KK3dhcnVua2FjaCBkeXN0cnlidWNqaS4gQnJhayBKQUtJRUpLT0xXSUVLIGd3YXJhbmNqaS4KKy5TSCAiVKNVTUFDWkUiCitQaW90ciBSb3N6YXR5Y2tpIDxkZXh0ZXJAZGViaWFuLm9yZz4sIDE5OTkKKy5icgorQmFydG9zeiBGZfFza2kgPGZlbmlvQGRlYmlhbi5vcmc+LCAyMDA0LTIwMDUKKy5icgorUm9iZXJ0IEx1YmVyZGEgPHJvYmVydEBkZWJpYW4ub3JnPiwgMjAwNi0yMDA4CisuYnIKK1dpa3RvciBXYW5kYWNob3dpY3ogPHNpcnllc0BnbWFpbC5jb20+LCAyMDA4CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9wbC9kcGtnLXN0YXRvdmVycmlkZS44IGIvZHBrZy0xLjE2LjEuMS9tYW4vcGwvZHBrZy1zdGF0b3ZlcnJpZGUuOApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lYzFjNDUzCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vcGwvZHBrZy1zdGF0b3ZlcnJpZGUuOApAQCAtMCwwICsxLDEwMiBAQAorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlwiCisuXCIgVGhpcyBmaWxlIHdhcyBnZW5lcmF0ZWQgd2l0aCBwbzRhLiBUcmFuc2xhdGUgdGhlIHNvdXJjZSBmaWxlLgorLlwiCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuVEggZHBrZ1wtc3RhdG92ZXJyaWRlIDggMjAxMVwtMDdcLTA0ICJQcm9qZWt0IERlYmlhbmEiICJwcm9ncmFteSBwb21vY25pY3plIGRwa2ciCisuU0ggTkFaV0EKK2Rwa2dcLXN0YXRvdmVycmlkZSBcLSBuYWRwaXN5d2FuaWUgd7NhtmNpY2llbGEgaSBwcmF3IHBsaWvzdworLgorLlNIIFNLo0FETklBCitcZkJkcGtnXC1zdGF0b3ZlcnJpZGVcZlAgW1xmSW9wdGlvblxmUC4uLl0gXGZJY29tbWFuZFxmUAorLgorLlNIIE9QSVMKK1xmQk5hZHBpc2FuaWEgc3RhbnVcZlAgc7Egc3Bvc29iZW0gbmFrYXphbmlhIHByb2dyYW1vd2kgXGZCZHBrZ1xmUCgxKSB1v3ljaWUKK2lubmVnbyB3s2G2Y2ljaWVsYSBpIHRyeWJ1IHBsaWt1IHBvZGN6YXMgaW5zdGFsYWNqaSBwYWtpZXR1LiAoVXdhZ2E6IHW/ebNlbQordHUgc7Nvd2EgInBsaWsiLCBhbGUgdGFrIG5hcHJhd2TqIG1vv2UgdG8gYnnmIGRvd29sbnkgb2JpZWt0IHN5c3RlbXUgcGxpa/N3LAora3TzcnltIHphcnqxZHphIGRwa2csIG5wLiBrYXRhbG9naSBjenkgdXJ6sWR6ZW5pYSkuIE1vv25hIGljaCB1v3nmIGRvCit6bXVzemVuaWEgcHJvZ3JhbfN3LCBrdPNyZSBzsSB6YXp3eWN6YWogaW5zdGFsb3dhbmUgeiBmbGFnsSBzZXR1aWQsIGJ5IGJ5s3kKK3phaW5zdGFsb3dhbmUgYmV6IHRlaiBmbGFnaSBsdWJieSBiebN5IG1vv2xpd2UgZG8gd3lrb25hbmlhIHR5bGtvIHByemV6CitwZXdusSBncnVw6iB1v3l0a293bmlr83cuCisuUAorXGZCZHBrZ1wtc3RhdG92ZXJyaWRlXGZQIGplc3QgbmFyeupkemllbSB1v3l0a293eW0gZG8gemFyerFkemFuaWEgbGlzdLEgbmFkcGlzYfEKK3N0YW51LiBNYSB0cnp5IHBvZHN0YXdvd2UgZnVua2NqZTogZG9kYXdhbmlhLCB1c3V3YW5pYSBpIHd5tndpZXRsYW5pYSBsaXN0eQordGFraWNoIG5hZHBpc2HxLgorLgorLlNIIFBPTEVDRU5JQQorLlRQIAorXGZCXC1cLWFkZFxmUFxmSSB1v3l0a293bmlrIGdydXBhIHRyeWIgcGxpa1xmUAorRG9kYWplIG5hZHBpc2FuaWUgZGxhIFxmSXBsaWt1XGZQLiBTYW0gXGZJcGxpa1xmUCBuaWUgbXVzaSBpc3RuaWXmIHcgY3phc2llCit3eWtvbmFuaWEgdGVnbyBwb2xlY2VuaWEsIG5hZHBpc2FuaWUgYupkemllIHByemVjaG93YW5lIGkgdb95dGUKK3DzvG5pZWouIFW/eXRrb3duaWvzdyBpIGdydXB5IG1vv25hIHBvZGF3YeYgdb95d2FqsWMgYWxibyBpY2ggbmF6dyAobmEKK3Byenlrs2FkIFxmQnJvb3RcZlAgbHViIFxmQm5vYm9keVxmUCksIGFsYm8gaWNoIG51bWVydSBwb3ByemVkem9uZWdvIHpuYWtpZW0KKyJcZkIjXGZQIiAobmEgcHJ6eWuzYWQgXGZCIzBcZlAgbHViIFxmQiM2NTUzNFxmUCkuIE5hdG9taWFzdCBcZkl0cnliXGZQIG11c2kgYnnmIHBvZGFueQoramFrbyBsaWN6YmEg83NlbWtvd2EuCisKK0plv2VsaSBwb2Rhbm8gb3BjauogXC1cLXVwZGF0ZSBpIFxmSXBsaWtcZlAgaXN0bmllamUsIHRvIG5vd3kgd7NhtmNpY2llbCBpIHByYXdhCit6b3N0YW6xIG9kIHJhenUgdXN0YXdpb25lLgorLlRQIAorXGZCXC1cLXJlbW92ZVxmUCBcZklwbGlrXGZQCitVc3V3YSBuYWRwaXNhbmllIFxmSXBsaWt1XGZQLiBQb2xlY2VuaWUgdG8gbmllIHptaWVuaWEgc3RhbnUgXGZJcGxpa3VcZlAuCisuVFAgCitcZkJcLVwtbGlzdFxmUCBbXGZJd3pvcnplY1wtZ2xvYlxmUF0KK1d5tndpZXRsYSB3c3p5c3RraWUgbmFwaXNhbmlhLiBKZb9lbGkgcG9kYW5vIHd6b3J6ZWMgbmF6d3ksIHRvIHd5arZjaW93YQorbGlzdGEgYupkemllIHphd2llcmHmIHR5bGtvIG5hZHBpc2FuaWEgcGFzdWqxY2UgZG8gdGVnbyB3em9yY2EuIEplv2VsaSBuaWUKK21hIL9hZG55Y2ggbmFkcGlzYfEgbHViIL9hZG5lIG5hZHBpc2FuaWUgbmllIHBhc3VqZSBkbyB3em9yY2EsIHRvCitcZkJkcGtnXC1zdGF0b3ZlcnJpZGVcZlAgemFrb/FjenkgZHppYbNhbmllIHoga29kZW0gYrPqZHUgMS4KKy5UUCAKK1xmQlwtXC1oZWxwXGZQCitXebZ3aWV0bGEgaW5mb3JtYWNq6iBvIHW/eXRrb3dhbml1IGkga2/xY3p5IGR6aWGzYW5pZS4KKy5UUCAKK1xmQlwtXC12ZXJzaW9uXGZQCitXebZ3aWV0bGEgaW5mb3JtYWNq6iBvIHdlcnNqaSBpIHBvbXm2bG5pZSBrb/FjenkgZHppYbNhbmllLgorLgorLlNIIE9QQ0pFCisuVFAgCitcZkJcLVwtYWRtaW5kaXJcZlBcZkkga2F0YWxvZ1xmUAorWm1pZW5pYSBcZklrYXRhbG9nXGZQIGJhenkgZGFueWNoIGRwa2csIHcga3TzcnltIHRha79lIGplc3QgcHJ6ZWNob3d5d2FueSBwbGlrCitzdGF0b3ZlcnJpZGUuIERvbXm2bG5pZSBqZXN0IHRvIFxmSS92YXIvbGliL2Rwa2dcZlAuCisuVFAgCitcZkJcLVwtZm9yY2VcZlAKK1d5bXVzemEgcG9kYW6xIGFrY2rqLCBuYXdldCBqZb9lbGkgc3ByYXdkemVuaWEgZG9rb255d2FuZSBwcnpleiBwcm9ncmFtIGJ5Cit0ZWdvIHphYnJvbmmzeS4gSmVzdCB0byBwb3RyemVibmUsIGFieSBuYWRwaXNh5iBpc3RuaWVqsWNlIG5hZHBpc2FuaWUuCisuVFAgCitcZkJcLVwtdXBkYXRlXGZQCitPZCByYXp5IHBy82J1amUgem1pZW5p5iB3s2G2Y2ljaWVsYSBpIHByYXdhIHBsaWt1LCBqZb9lbGkgdGVuIHBsaWsgaXN0bmllamUuCisuVFAgCitcZkJcLVwtcXVpZXRcZlAKK1d5tndpZXRsYSBtbmllaiBrb211bmlrYXTzdyBvIHBvZGVqbW93YW55Y2ggcHJ6ZXogcHJvZ3JhbSBha2NqYWNoLgorLgorLlNIIKZST0RPV0lTS08KKy5UUCAKK1xmQkRQS0dfQURNSU5ESVJcZlAKK0lmIHNldCBhbmQgdGhlIFxmQlwtXC1hZG1pbmRpclxmUCBvcHRpb24gaGFzIG5vdCBiZWVuIHNwZWNpZmllZCwgaXQgd2lsbCBiZSB1c2VkCithcyB0aGUgZHBrZyBkYXRhIGRpcmVjdG9yeS4KKy4KKy5TSCBQTElLSQorLlRQIAorXGZJL3Zhci9saWIvZHBrZy9zdGF0b3ZlcnJpZGVcZlAKK1BsaWsgemF3aWVyYWqxY3kgb2JlY26xIGxpc3TqIG5hZHBpc2HxIHN0YW51IHcgc3lzdGVtaWUuIFpsb2thbGl6b3dhbnkgamVzdAordyBrYXRhbG9ndSBhZG1pbmlzdHJhY3lqbnltIGRwa2csILOxY3puaWUgeiBpbm55bWkgcGxpa2FtaSB3Yb9ueW1pIGRsYSBkcGtnLAordGFraW1pIGphayAic3RhdHVzIiBsdWIgImF2YWlsYWJsZSIuCisuYnIKK1V3YWdhOiBwcnplZCB6YXN0sXBpZW5pZW0gcGxpa3Ugbm93sSB3ZXJzarEsIFxmQmRwa2dcLXN0YXRvdmVycmlkZVxmUCB6YWNob3d1amUKK3N0YXKxIGtvcGnqIHcgcGxpa3UgeiByb3pzemVyemVuaWVtICJcLW9sZCIuCisuCisuU0ggIlpPQkFDWiBUQUuvRSIKK1xmQmRwa2dcZlAoMSkuCisuCisuU0ggQVVUT1IKK0NvcHlyaWdodCBcKGNvIDIwMDAgV2ljaGVydCBBa2tlcm1hbgorLnNwCitOaW5pZWpzenkgcHJvZ3JhbSBqZXN0IG9wcm9ncmFtb3dhbmllbSB3b2xueW0sIHNwcmF3ZLwgUG93c3plY2husSBMaWNlbmNq6gorUHVibGljem6xIEdOVSB3IHdlcnNqaSBkcnVnaWVqIGx1YiBw87xuaWVqc3plaiwgYnkgZG93aWVkemll5iBzaeogbword2FydW5rYWNoIGR5c3RyeWJ1Y2ppLiBCcmFrIEpBS0lFSktPTFdJRUsgZ3dhcmFuY2ppLgorLlNIICJUo1VNQUNaRSIKK1Bpb3RyIFJvc3phdHlja2kgPGRleHRlckBkZWJpYW4ub3JnPiwgMTk5OQorLmJyCitCYXJ0b3N6IEZl8XNraSA8ZmVuaW9AZGViaWFuLm9yZz4sIDIwMDQtMjAwNQorLmJyCitSb2JlcnQgTHViZXJkYSA8cm9iZXJ0QGRlYmlhbi5vcmc+LCAyMDA2LTIwMDgKKy5icgorV2lrdG9yIFdhbmRhY2hvd2ljeiA8c2lyeWVzQGdtYWlsLmNvbT4sIDIwMDgKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL3BsL2Rwa2ctdHJpZ2dlci4xIGIvZHBrZy0xLjE2LjEuMS9tYW4vcGwvZHBrZy10cmlnZ2VyLjEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNGE3MmU1NgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL3BsL2Rwa2ctdHJpZ2dlci4xCkBAIC0wLDAgKzEsNzcgQEAKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlRIIGRwa2dcLXRyaWdnZXIgMSAyMDExXC0wOFwtMTQgIlByb2pla3QgRGViaWFuYSIgInW/eXRraSBkcGtnIgorLlNIIE5BWldBCitkcGtnXC10cmlnZ2VyIFwtIHByb2dyYW0gcG9tb2NuaWN6eSB3eXp3YWxhY3p5IGRsYSBwYWtpZXTzdworLgorLlNIIFNLo0FETklBCitcZkJkcGtnXC10cmlnZ2VyXGZQIFtcZklvcGNqYVxmUC4uLl0gXGZJbmF6d2FcLXd5endhbGFjemFcZlAKKy5icgorXGZCZHBrZ1wtdHJpZ2dlclxmUCBbXGZJb3BjamFcZlAuLi5dIFxmSXBvbGVjZW5pZVxmUAorLgorLlNIIE9QSVMKK1xmQmRwa2dcLXRyaWdnZXJcZlAgamVzdCBuYXJ66mR6aWVtLCBrdPNyZSBwb3p3YWxhIGphd25pZSBha3R5d293YeYgd3l6d2FsYWN6ZQorb3JheiBzcHJhd2R6YSB3c3BhcmNpZSBkbGEgbmljaCB3IHVydWNob21pb255bSBcZkJkcGtnXGZQLgorLlBQCitNb79lIGJ55iB1v3l0ZSBwcnpleiBza3J5cHR5IG9waWVrdW5hIHBha2lldHUgdyBzeXR1YWNqYWNoIHqzb79vbnljaCBpCitvYrNvv29ueWNoIHdhcnVua2FtaSwgZ2R5IHd5endhbGFjemUgcGxpa293ZSBsdWIgZHlyZWt0eXd5IFxmQmFjdGl2YXRlXGZQIHoKK3BsaWt1IGtvbnRyb2xuZWdvIHRyaWdnZXJzIHOxIG5pZXd5c3RhcmN6YWqxY2UuIE1vv2UgYnnmIHLzd25pZb8gdb95dGUgZG8KK3Rlc3Rvd2FuaWEgb3JheiBwcnpleiBhZG1pbmlzdHJhdG9y83cgc3lzdGVtdSAocHJvc3rqIHphdXdhv3nmLCC/ZSBzYW1lCit3eXp3YWxhY3plIG5pZSBi6mSxIHVydWNoYW1pYW5lIHByemV6IFxmQmRwa2dcLXRyaWdnZXJcZlApLgorLlBQCitOaWVyb3pwb3puYW5hIHNrs2FkbmlhIG5hend5IHd5endhbGFjemEgc3Rhbm93aSBis7FkIGRsYSBcZkJkcGtnXC10cmlnZ2VyXGZQLgorLgorLlNIIFBPTEVDRU5JQQorLlRQIAorXGZCXC1cLWNoZWNrXC1zdXBwb3J0ZWRcZlAKK0NoZWNrIGlmIHRoZSBydW5uaW5nIFxmQmRwa2dcZlAgc3VwcG9ydHMgdHJpZ2dlcnMgKHVzdWFsbHkgY2FsbGVkIGZyb20gYQorcG9zdGluc3QpLiBXaWxsIGV4aXQgXGZCMFxmUCBpZiBhIHRyaWdnZXJzXC1jYXBhYmxlIFxmQmRwa2dcZlAgaGFzIHJ1biwgb3IgXGZCMVxmUAord2l0aCBhbiBlcnJvciBtZXNzYWdlIHRvIHN0ZGVyciBpZiBub3QuIE5vcm1hbGx5LCBob3dldmVyLCBpdCBpcyBiZXR0ZXIganVzdAordG8gYWN0aXZhdGUgdGhlIGRlc2lyZWQgdHJpZ2dlciB3aXRoIFxmQmRwa2dcLXRyaWdnZXJcZlAuCisuVFAgCitcZkJcLWhcZlAsIFxmQlwtXC1oZWxwXGZQCitXebZ3aWV0bGEgaW5mb3JtYWNq6iBvIHW/eXRrb3dhbml1IGkga2/xY3p5IGR6aWGzYW5pZS4KKy5UUCAKK1xmQlwtXC12ZXJzaW9uXGZQCitXebZ3aWV0bGEgaW5mb3JtYWNq6iBvIHdlcnNqaSBpIHBvbXm2bG5pZSBrb/FjenkgZHppYbNhbmllLgorLgorLlNIIE9QQ0pFCisuVFAgCitcZkJcLVwtYWRtaW5kaXI9XGZQXGZJa2F0YWxvZ1xmUAorWm1pZW5pYSBwb7Nvv2VuaWUgYmF6eSBkYW55Y2ggXGZCZHBrZ1xmUC4gRG9tebZsbmllIGplc3QgdG8gXGZJL3Zhci9saWIvZHBrZ1xmUC4KKy5UUCAKK1xmQlwtXC1ieVwtcGFja2FnZT1cZlBcZklwYWtpZXRcZlAKK092ZXJyaWRlIHRyaWdnZXIgYXdhaXRlciAobm9ybWFsbHkgc2V0IGJ5IFxmQmRwa2dcZlAgdGhyb3VnaCB0aGUKK1xmQkRQS0dfTUFJTlRTQ1JJUFRfUEFDS0FHRVxmUCBlbnZpcm9ubWVudCB2YXJpYWJsZSBvZiB0aGUgbWFpbnRhaW5lciBzY3JpcHRzLAorbmFtaW5nIHRoZSBwYWNrYWdlIHRvIHdoaWNoIHRoZSBzY3JpcHQgYmVsb25ncywgYW5kIHRoaXMgd2lsbCBiZSB1c2VkIGJ5CitkZWZhdWx0KS4KKy5UUCAKK1xmQlwtXC1ub1wtYXdhaXRcZlAKK1RhIG9wY2phIHphcGV3bmlhLCC/ZSB3eXdvs3VqsWN5IHBha2lldCBUIChqZbZsaSBqZXN0KSBuaWUgcG90cnplYnVqZQorb2N6ZWtpd2HmIG5hIHByemV0d29yemVuaWUgdGVnbyB3eXp3YWxhY3phLiBUencuICJ6YWludGVyZXNvd2FuZSIgcGFraWV0KHkpCitJIG5pZSBi6mSxIGRvZGFuZSBkbyBsaXN0eSBwYWtpZXTzdyBvY3pla3VqsWN5Y2ggbmEgcHJ6ZXR3b3J6ZW5pZSB3eXp3YWxhY3phCitkbGEgVCwgYSBzdGF0dXMgVCBuaWUgem9zdGFuaWUgem1pZW5pb255LiBNb79uYSB1d2G/YeYgVCB6YSB6YWluc3RhbG93YW55LAorbWltbyC/ZSBwYWtpZXQoeSkgSSB3eXp3YWxhY3ogbfNnsyBqZXN6Y3plIG5pZSB6b3N0YeYgcHJ6ZXR3b3J6b255LgorLlRQIAorXGZCXC1cLW5vXC1hY3RcZlAKKyBUeWxrbyB0ZXN0IFwtIGJleiB3eWtvbnl3YW5pYSC/YWRueWNoIHptaWFuLgorLgorLlNIIKZST0RPV0lTS08KKy5UUCAKK1xmQkRQS0dfQURNSU5ESVJcZlAKK0lmIHNldCBhbmQgdGhlIFxmQlwtXC1hZG1pbmRpclxmUCBvcHRpb24gaGFzIG5vdCBiZWVuIHNwZWNpZmllZCwgaXQgd2lsbCBiZSB1c2VkCithcyB0aGUgZHBrZyBkYXRhIGRpcmVjdG9yeS4KKy4KKy5TSCAiWk9CQUNaIFRBS69FIgorXGZCZHBrZ1xmUCgxKSwgXGZCZGViXC10cmlnZ2Vyc1xmUCg1KSwgXGZCL3Vzci9zaGFyZS9kb2MvZHBrZ1wtZGV2L3RyaWdnZXJzLnR4dC5nelxmUC4KKy5TSCAiVKNVTUFDWkUiCitQaW90ciBSb3N6YXR5Y2tpIDxkZXh0ZXJAZGViaWFuLm9yZz4sIDE5OTkKKy5icgorQmFydG9zeiBGZfFza2kgPGZlbmlvQGRlYmlhbi5vcmc+LCAyMDA0LTIwMDUKKy5icgorUm9iZXJ0IEx1YmVyZGEgPHJvYmVydEBkZWJpYW4ub3JnPiwgMjAwNi0yMDA4CisuYnIKK1dpa3RvciBXYW5kYWNob3dpY3ogPHNpcnllc0BnbWFpbC5jb20+LCAyMDA4CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9wbC9kcGtnLXZlbmRvci4xIGIvZHBrZy0xLjE2LjEuMS9tYW4vcGwvZHBrZy12ZW5kb3IuMQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xOTMwYzFlCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vcGwvZHBrZy12ZW5kb3IuMQpAQCAtMCwwICsxLDY1IEBACisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkcGtnXC12ZW5kb3IgMSAyMDExXC0wN1wtMDQgIlByb2pla3QgRGViaWFuYSIgInW/eXRraSBkcGtnIgorLlNIIE5BWldBCitkcGtnXC12ZW5kb3IgXC0gb2Rjenl0dWplIGluZm9ybWFjauogbyB0d/NyY2FjaCBkeXN0cnlidWNqaQorLgorLlNIIFNLo0FETklBCitcZkJkcGtnXC12ZW5kb3JcZlAgW1xmSW9wY2phXGZQLi4uXSBcZklwb2xlY2VuaWVcZlAKKy4KKy5TSCBPUElTCitcZkJkcGtnXC12ZW5kb3JcZlAgamVzdCBuYXJ66mR6aWVtIHBvendhbGFqsWN5bSBuYSBvZGN6eXR5d2FuaWUgaW5mb3JtYWNqaSBvCit0d/NyY2FjaCB3eW1pZW5pb255Y2ggdyBcZkIvZXRjL2Rwa2cvb3JpZ2luc1xmUC4gXGZCL2V0Yy9kcGtnL29yaWdpbnMvZGVmYXVsdFxmUAoremF3aWVyYSBpbmZvcm1hY2plIGRvdHljerFjZSBha3R1YWxuZWdvIHR383JjeS4KKy4KKy5TSCBQT0xFQ0VOSUEKKy5UUCAKK1xmQlwtXC1pc1xmUFxmSSB0d/NyY2FcZlAKK0V4aXRzIHdpdGggXGZCMFxmUCBpZiB0aGUgY3VycmVudCB2ZW5kb3IgaXMgXGZJdmVuZG9yXGZQLiBPdGhlcndpc2UgZXhpdHMgd2l0aAorbm9uXC16ZXJvLgorLlRQIAorXGZCXC1cLWRlcml2ZXNcLWZyb21cZlBcZkkgdHfzcmNhXGZQCitFeGl0cyB3aXRoIFxmQjBcZlAgaWYgdGhlIGN1cnJlbnQgdmVuZG9yIGRpc3RyaWJ1dGlvbiBpcyBhIGRlcml2YXRpdmUgb2YKK1xmSXZlbmRvclxmUCwgb3RoZXJ3aXNlIGV4aXRzIHdpdGggbm9uXC16ZXJvLiBJdCB1c2VzIHRoZSAiUGFyZW50IiBmaWVsZCB0bworYnJvd3NlIGFsbCBhbmNlc3RvcnMgb2YgdGhlIGN1cnJlbnQgdmVuZG9yLgorLlRQIAorXGZCXC1cLXF1ZXJ5XGZQXGZJIHBvbGVcZlAKK1d5tndpZXRsYSBuYSBzdGFuZGFyZG93eW0gd3lqtmNpdSB3YXJ0b7bmIG9rcmW2bG9uZWdvIFxmSXBvbGFcZlAgb2Rjenl0YW5lZ28gegoraW5mb3JtYWNqaSBkb3R5Y3qxY3ljaCBha3R1YWxuZWdvIHR383JjeS4KKy5UUCAKK1xmQlwtXC1oZWxwXGZQCitXebZ3aWV0bGEgaW5mb3JtYWNq6iBvIHW/eXRrb3dhbml1IGkga2/xY3p5IGR6aWGzYW5pZS4KKy5UUCAKK1xmQlwtXC12ZXJzaW9uXGZQCitXebZ3aWV0bGEgaW5mb3JtYWNq6iBvIHdlcnNqaSBpIHBvbXm2bG5pZSBrb/FjenkgZHppYbNhbmllLgorLgorLlNIIE9QQ0pFCisuVFAgCitcZkJcLVwtdmVuZG9yXGZQXGZJIHR383JjYVxmUAorQXNzdW1lcyB0aGUgY3VycmVudCB2ZW5kb3IgaXMgXGZJdmVuZG9yXGZQIGluc3RlYWQgb2YgZGlzY292ZXJpbmcgaXQgd2l0aCB0aGUKK1xmQkRFQl9WRU5ET1JcZlAgZW52aXJvbm1lbnQgdmFyaWFibGUgb3IgXGZCL2V0Yy9kcGtnL29yaWdpbnMvZGVmYXVsdFxmUC4KKy4KKy5TSCCmUk9ET1dJU0tPCisuVFAgCitcZkJERUJfVkVORE9SXGZQCitVc3Rhd2llbmllIG9rcmW2bGFqsWNlIGFrdHVhbG5lZ28gdHfzcmPqLiBKZbZsaSBuaWUgamVzdCB1c3Rhd2lvbmUsIGFrdHVhbG55Cit0d/NyY2Egem9zdGFuaWUgb2tyZbZsb255IHBvcHJ6ZXogb2Rjenl0YW5pZSB6IFxmQi9ldGMvZHBrZy9vcmlnaW5zL2RlZmF1bHRcZlAuCisuCisuU0ggQVVUT1IKK0NvcHlyaWdodCBcKGNvIDIwMDkgUmFwaGFcWzplXWwgSGVydHpvZworLnNwCitOaW5pZWpzenkgcHJvZ3JhbSBqZXN0IG9wcm9ncmFtb3dhbmllbSB3b2xueW0sIHNwcmF3ZLwgUG93c3plY2husSBMaWNlbmNq6gorUHVibGljem6xIEdOVSB3IHdlcnNqaSBkcnVnaWVqIGx1YiBw87xuaWVqc3plaiwgYnkgZG93aWVkemll5iBzaeogbword2FydW5rYWNoIGR5c3RyeWJ1Y2ppLiBCcmFrIEpBS0lFSktPTFdJRUsgZ3dhcmFuY2ppLgorCisuU0ggIlSjVU1BQ1pFIgorUGlvdHIgUm9zemF0eWNraSA8ZGV4dGVyQGRlYmlhbi5vcmc+LCAxOTk5CisuYnIKK0JhcnRvc3ogRmXxc2tpIDxmZW5pb0BkZWJpYW4ub3JnPiwgMjAwNC0yMDA1CisuYnIKK1JvYmVydCBMdWJlcmRhIDxyb2JlcnRAZGViaWFuLm9yZz4sIDIwMDYtMjAwOAorLmJyCitXaWt0b3IgV2FuZGFjaG93aWN6IDxzaXJ5ZXNAZ21haWwuY29tPiwgMjAwOApkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vcGwvZHBrZy4xIGIvZHBrZy0xLjE2LjEuMS9tYW4vcGwvZHBrZy4xCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjliYTFhZTYKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9wbC9kcGtnLjEKQEAgLTAsMCArMSw3NzQgQEAKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlRIIGRwa2cgMSAyMDExXC0wOFwtMTQgIlByb2pla3QgRGViaWFuYSIgInW/eXRraSBkcGtnIgorLlNIIE5BWldBCitkcGtnIFwtIG1lbmVkv2VyIHBha2lldPN3IERlYmlhbmEKKy4KKy5TSCBTS6NBRE5JQQorXGZCZHBrZ1xmUCBbXGZJb3B0aW9uXGZQLi4uXSBcZklhY3Rpb25cZlAKKy4KKy5TSCBVV0FHQQorVGVuIHBvZHLqY3puaWsgamVzdCBwcnplem5hY3pvbnkgZGxhIHW/eXRrb3duaWvzdywga3Tzcnp5IGNoY7EgcG96bmHmIG9wY2plCitwcm9ncmFtdSBcZkJkcGtnXGZQIG9yYXogY2hjsSBkb3dpZWR6aWXmIHNp6iBvIHBha2lldGFjaCB3aepjZWogbmm/IHBvZGFqZSB0bworXGZCZHBrZyBcLVwtaGVscFxmUC4KKworVGVuIHBvZHLqY3puaWsgXGZJbmllXGZQIHd5amG2bmlhIHRlY2huaWN6bnljaCBzemN6ZWfzs/N3LCBucC4gdyBqYWtpIHNwb3PzYgorXGZCZHBrZ1xmUCBpbnN0YWx1amUgbHViIHVzdXdhIHN3b2plIHBha2lldHksIGdkeb8gamVzdCB0byBkbGEgcHJ6ZWNp6nRuZWdvCit1v3l0a293bmlrYSB6dXBls25pZSBuaWVpc3RvdG5lLgorLgorLlNIIE9QSVMKK1xmQmRwa2dcZlAgamVzdCBuYXJ66mR6aWVtIGRvIGluc3RhbG93YW5pYSwgdHdvcnplbmlhLCB1c3V3YW5pYSBwYWtpZXTzdworc3lzdGVtdSBEZWJpYW4gb3JheiBkbyB6YXJ6sWR6YW5pYSBuaW1pLiBQb2RzdGF3b3d5bSBpIGJhcmR6aWVqIHByenlqYXpueW0KK3W/eXRrb3duaWtvd2kgbmFyeupkemllbVwtbmFrs2Fka7EgXGZCZHBrZ1xmUCBqZXN0IFxmQmFwdGl0dWRlXGZQKDEpLiBTYW0gXGZCZHBrZ1xmUAoramVzdCBvYnOzdWdpd2FueSB6IGxpbmlpIGtvbWVuZCwgcHJ6ZXogcG9kYW5pZSBkb2uzYWRuaWUgamVkbmVnbyBkemlhs2FuaWEKK29yYXogZG9kYXRrb3d5Y2gsIG5pZW9ib3dpsXprb3d5Y2ggb3BjamkuIFBhcmFtZXRyIGR6aWGzYW5pZSBva3JltmxhLCBjbworXGZCZHBrZ1xmUCBtYSB6cm9iaeYsIGEgZG9kYXRrb3dlIG9wY2plIG1vZHlmaWt1arEgdG8gZHppYbNhbmllLgorCitcZkJkcGtnXGZQIGNhbiBhbHNvIGJlIHVzZWQgYXMgYSBmcm9udFwtZW5kIHRvIFxmQmRwa2dcLWRlYlxmUCgxKSBhbmQKK1xmQmRwa2dcLXF1ZXJ5XGZQKDEpLiBUaGUgbGlzdCBvZiBzdXBwb3J0ZWQgYWN0aW9ucyBjYW4gYmUgZm91bmQgbGF0ZXIgb24gaW4gdGhlCitcZkJBQ1RJT05TXGZQIHNlY3Rpb24uIElmIGFueSBzdWNoIGFjdGlvbiBpcyBlbmNvdW50ZXJlZCBcZkJkcGtnXGZQIGp1c3QgcnVucworXGZCZHBrZ1wtZGViXGZQIG9yIFxmQmRwa2dcLXF1ZXJ5XGZQIHdpdGggdGhlIHBhcmFtZXRlcnMgZ2l2ZW4gdG8gaXQsIGJ1dCBubworc3BlY2lmaWMgb3B0aW9ucyBhcmUgY3VycmVudGx5IHBhc3NlZCB0byB0aGVtLCB0byB1c2UgYW55IHN1Y2ggb3B0aW9uIHRoZQorYmFja1wtZW5kcyBuZWVkIHRvIGJlIGNhbGxlZCBkaXJlY3RseS4KKy4KKy5TSCAiSU5GT1JNQUNKRSBPIFBBS0lFVEFDSCIKK1xmQmRwa2dcZlAgemFyerFkemEgaW5mb3JtYWNqYW1pIG8gZG9zdOpwbnljaCBwYWtpZXRhY2guIEluZm9ybWFjamUgem9zdGGzeQorcG9kemllbG9uZSBuYSB0cnp5IGtsYXN5OiBcZkJzdGFuIGJpZb+xY3lcZlAsIFxmQnN0YW4gd3lib3J1XGZQIG9yYXoKK1xmQmZsYWfqXGZQLiBXYXJ0b7ZjaSB0ZSBtb2exIHpvc3Rh5iB6bWllbmlvbmUgemEgcG9tb2OxIHByb2dyYW11IFxmQmRzZWxlY3RcZlAuCisuU1MgIlNUQU4gQklFr6FDWSBQQUtJRVTTVyIKKy5UUCAKK1xmQm5vdFwtaW5zdGFsbGVkIChuaWV6YWluc3RhbG93YW55KVxmUAorUGFraWV0IG5pZSBqZXN0IHphaW5zdGFsb3dhbnkgdyBzeXN0ZW1pZS4KKy5UUCAKK1xmQmNvbmZpZ1wtZmlsZXMgKHBsaWtpXC1rb25maWd1cmFjeWpuZSlcZlAKK1R5bGtvIHBsaWtpIGtvbmZpZ3VyYWN5am5lIHBha2lldHUgem9zdGGzeSB3IHN5c3RlbWllLgorLlRQIAorXGZCaGFsZlwtaW5zdGFsbGVkICh3cPOzemFpbnN0YWxvd2FueSlcZlAKK0luc3RhbGFjamEgcGFraWV0dSB6b3N0YbNhIHJvenBvY3rqdGEsIGFsZSBuaWVkb2tv8WN6b25hIHogcGV3bnljaCBwb3dvZPN3LgorLlRQIAorXGZCdW5wYWNrZWQgKHJvenBha293YW55KVxmUAorUGFraWV0IGplc3Qgcm96cGFrb3dhbnksIGFsZSBuaWUgc2tvbmZpZ3Vyb3dhbnkuCisuVFAgCitcZkJoYWxmXC1jb25maWd1cmVkICh3cPOzc2tvbmZpZ3Vyb3dhbnkpXGZQCitQYWtpZXQgamVzdCByb3pwYWtvd2FueSwgYSBrb25maWd1cmFjamEgem9zdGGzYSByb3pwb2N66nRhLCBhbGUKK25pZWRva2/xY3pvbmEgeiBwZXdueWNoIHBvd29k83cuCisuVFAgCitcZkJ0cmlnZ2Vyc1wtYXdhaXRlZFxmUAorUGFraWV0IG9jemVrdWplIHByemV0d29yemVuaWEgd3l6d2FsYWN6eSBwcnpleiBpbm55IHBha2lldC4KKy5UUCAKK1xmQnRyaWdnZXJzXC1wZW5kaW5nXGZQCitQYWtpZXQgem9zdGGzIHBvYnVkem9ueS4KKy5UUCAKK1xmQmluc3RhbGxlZCAoemFpbnN0YWxvd2FueSlcZlAKK1Bha2lldCBqZXN0IHJvenBha293YW55IGkgcG9wcmF3bmllIHNrb25maWd1cm93YW55LgorLlNTICJTVEFOIFdZQk9SVSBQQUtJRVTTVyIKKy5UUCAKK1xmQmluc3RhbGwgKGluc3RhbGFjamEpXGZQCitQYWtpZXQgem9zdGGzIHd5YnJhbnkgZG8gemFpbnN0YWxvd2FuaWEuCisuVFAgCitcZkJob2xkICh3c3RyenltYW5pZSlcZlAKK1Bha2lldCBvem5hY3pvbnkgamFrbyBcZkJ3c3RyenltYW55XGZQIG5pZSBqZXN0IG9ic7N1Z2l3YW55IHByemV6IFxmQmRwa2dcZlAsCitjaHliYSC/ZSB1v3lqZSBzaeogb3BjamkgXGZCXC1cLWZvcmNlXC1ob2xkXGZQLgorLlRQIAorXGZCZGVpbnN0YWxsIChkZWluc3RhbGFjamEpXGZQCitQYWtpZXQgem9zdGGzIHd5YnJhbnkgZG8gb2RpbnN0YWxvd2FuaWEgKHRvIHpuYWN6eSwgv2UgY2hjZW15IHNrYXNvd2HmCit3c3p5c3RraWUgcGxpa2kgcGFraWV0dSBvcHLzY3ogcGxpa/N3IGtvbmZpZ3VyYWN5am55Y2gpLgorLlRQIAorXGZCcHVyZ2UgKHd5Y3p5c3pjemVuaWUpXGZQCitUaGUgcGFja2FnZSBpcyBzZWxlY3RlZCB0byBiZSBwdXJnZWQgKGkuZS4gd2Ugd2FudCB0byByZW1vdmUgZXZlcnl0aGluZyBmcm9tCitzeXN0ZW0gZGlyZWN0b3JpZXMsIGV2ZW4gY29uZmlndXJhdGlvbiBmaWxlcykuCisuU1MgIkZMQUdJIFBBS0lFVNNXIgorLlRQIAorXGZCcmVpbnN0XC1yZXF1aXJlZCAoa29uaWVjem5hXC1yZWluc3RhbGFjamEpXGZQCitQYWtpZXQgb3puYWN6b255IGpha28gXGZCa29uaWVjem5hXC1yZWluc3RhbGFjamFcZlAgamVzdCB1c3prb2R6b255IGkgd3ltYWdhCityZWluc3RhbGFjamkuIFRha2kgcGFraWV0IG5pZSBtb79lIHpvc3Rh5iB1c3Vuaep0eSwgY2h5YmEgv2Ugdb95amUgc2nqIG9wY2ppCitcZkJcLVwtZm9yY2VcLXJlbW92ZVwtcmVpbnN0cmVxXGZQLgorLgorLlNIIEFLQ0pFCisuVFAgCitcZkJcLWlcZlAsIFxmQlwtXC1pbnN0YWxsXGZQIFxmSXBhY2thZ2VcLWZpbGVcZlAuLi4KK0luc3RhbGwgdGhlIHBhY2thZ2UuIElmIFxmQlwtXC1yZWN1cnNpdmVcZlAgb3IgXGZCXC1SXGZQIG9wdGlvbiBpcyBzcGVjaWZpZWQsCitcZklwYWNrYWdlXC1maWxlXGZQIG11c3QgcmVmZXIgdG8gYSBkaXJlY3RvcnkgaW5zdGVhZC4KKworSW5zdGFsYWNqYSBza7NhZGEgc2nqIHogbmFzdOpwdWqxY3ljaCBrcm9r83c6CisuYnIKKworXGZCMS5cZlAgUm96cGFrb3dhbmllIHBsaWvzdyBrb250cm9sbnljaCBub3dlZ28gcGFraWV0dS4KKy5icgorCitcZkIyLlxmUCBKZbZsaSBpbm5hIHdlcnNqYSB0ZWdvIHNhbWVnbyBwYWtpZXR1IGplc3QganW/IHphaW5zdGFsb3dhbmEsCit1cnVjaG9taWVuaWUgc2tyeXB0dSBcZklwcmVybVxmUCBzdGFyZWdvIHBha2lldHUuCisuYnIKKworXGZCMy5cZlAgVXJ1Y2hvbWllbmllIHNrcnlwdHUgXGZJcHJlaW5zdFxmUCwgamW2bGkgcGFraWV0IGdvIHphd2llcmEuCisuYnIKKworXGZCNC5cZlAgUm96cGFrb3dhbmllIG5vd3ljaCBwbGlr83csIGFsZSBwcnplY2hvd2FuaWUgc3RhcnljaCBuYSB3eXBhZGVrLCBnZHlieQoraW5zdGFsYWNqYSBzaeogbmllIHBvd2lvZLNhIGkgdHJ6ZWJhIGJ5IGplIG9kenlza2HmLgorLmJyCisKK1xmQjUuXGZQIEpltmxpIGlubmEgd2Vyc2phIHRlZ28gc2FtZWdvIHBha2lldHUgYnmzYSBwb3ByemVkbmlvIHphaW5zdGFsb3dhbmEsCit1cnVjaG9taWVuaWUgc2tyeXB0dSBcZklwb3N0cm1cZlAgc3RhcmVnbyBwYWtpZXR1LiBQcm9zeuogemF1d2G/eeYsIL9lIHRlbgorc2tyeXB0IGplc3QgdXJ1Y2hhbWlhbnkgcG8gc2tyeXBjaWUgXGZJcHJlaW5zdFxmUCBub3dlZ28gcGFraWV0dSwgcG9uaWV3Yb8gbm93ZQorcGxpa2kgc7EgemFwaXN5d2FuZSB3IHR5bSBzYW15bSBjemFzaWUsIGdkeSBzdGFyZSBzsSBrYXNvd2FuZS4KKy5icgorCitcZkI2LlxmUCBLb25maWd1cmFjamEgcGFraWV0dS4gQmFyZHppZWogc3pjemVn87Nvd2UgaW5mb3JtYWNqZSB6YXdhcnRvIHByenkKK29waXNpZSBwYXJhbWV0cnUgXGZCXC1cLWNvbmZpZ3VyZVxmUC4KKy5UUCAKK1xmQlwtXC11bnBhY2sgXGZQXGZJcGFja2FnZVwtZmlsZVxmUC4uLgorVW5wYWNrIHRoZSBwYWNrYWdlLCBidXQgZG9uJ3QgY29uZmlndXJlIGl0LiBJZiBcZkJcLVwtcmVjdXJzaXZlXGZQIG9yIFxmQlwtUlxmUAorb3B0aW9uIGlzIHNwZWNpZmllZCwgXGZJcGFja2FnZVwtZmlsZVxmUCBtdXN0IHJlZmVyIHRvIGEgZGlyZWN0b3J5IGluc3RlYWQuCisuVFAgCitcZkJcLVwtY29uZmlndXJlIFxmUFxmSXBha2lldFxmUC4uLnxcZkJcLWFcZlB8XGZCXC1cLXBlbmRpbmdcZlAKK0NvbmZpZ3VyZSBhIHBhY2thZ2Ugd2hpY2ggaGFzIGJlZW4gdW5wYWNrZWQgYnV0IG5vdCB5ZXQgY29uZmlndXJlZC4gIElmCitcZkJcLWFcZlAgb3IgXGZCXC1cLXBlbmRpbmdcZlAgaXMgZ2l2ZW4gaW5zdGVhZCBvZiBcZklwYWNrYWdlXGZQLCBhbGwgdW5wYWNrZWQgYnV0Cit1bmNvbmZpZ3VyZWQgcGFja2FnZXMgYXJlIGNvbmZpZ3VyZWQuCisKK1RvIHJlY29uZmlndXJlIGEgcGFja2FnZSB3aGljaCBoYXMgYWxyZWFkeSBiZWVuIGNvbmZpZ3VyZWQsIHRyeSB0aGUKK1xmQmRwa2dcLXJlY29uZmlndXJlXGZQKDgpICBjb21tYW5kIGluc3RlYWQuCisKK0tvbmZpZ3Vyb3dhbmllIHNrs2FkYSBzaeogeiBuYXN06nB1arFjeWNoIGtyb2vzdzoKKy5icgorCitcZkIxLlxmUCBSb3pwYWtvd2FuaWUgbm93eWNoIHBsaWvzdyBrb25maWd1cmFjeWpueWNoLCBhbGUgcHJ6ZWNob3dhbmllIHN0YXJ5Y2gKK25hIHd5cGFkZWssIGdkeWJ5IGtvbmZpZ3Vyb3dhbmllIHNp6iBuaWUgcG93aW9ks28gaSB0cnplYmEgYnkgamUgb2R6eXNrYeYuCisuYnIKKworXGZCMi5cZlAgVXJ1Y2hvbWllbmllIHNrcnlwdHUgXGZJcG9zdGluc3RcZlAsIGpltmxpIHBha2lldCBnbyB6YXdpZXJhLgorLlRQIAorXGZCXC1cLXRyaWdnZXJzXC1vbmx5XGZQIFxmSXBha2lldFxmUC4uLnxcZkJcLWFcZlB8XGZCXC1cLXBlbmRpbmdcZlAKK1ByemV0d2FyemFuaWUgc2FteWNoIHd5endhbGFjenkuIFdzenlzdGtpZSB6YXBsYW5vd2FuZSB3eXp3YWxhY3plIHpvc3RhbrEKK3ByemV0d29yem9uZS4gSmW2bGkgcG9kYW5lIHOxIG5hend5IHBha2lldPN3LCB0eWxrbyBpY2ggd3l6d2FsYWN6ZSB6b3N0YW6xCitwcnpldHdvcnpvbmUgXC0ga2G/ZHkgZG9rs2FkbmllIHJheiwgdGFtIGdkemllIHRvIHBvdHJ6ZWJuZS4gVb95Y2llIHRlaiBvcGNqaQorbW+/ZSBwb3pvc3Rhd2nmIHBha2lldHkgdyBuaWV3s2G2Y2l3eW0gc3RhbmllIFxmQnRyaWdnZXJzXC1hd2FpdGVkXGZQIGx1YgorXGZCdHJpZ2dlcnNcLXBlbmRpbmdcZlAuIE1vv2UgdG8gYnnmIHDzvG5pZWogbmFwcmF3aW9uZSBwcnpleiB3eXdvs2FuaWU6IFxmQmRwa2cKK1wtXC1jb25maWd1cmUgXC1cLXBlbmRpbmdcZlAuCisuVFAgCitcZkJcLXJcZlAsIFxmQlwtXC1yZW1vdmVcZlAsIFxmQlwtUFxmUCwgXGZCXC1cLXB1cmdlIFxmUFxmSXBha2lldFxmUC4uLnxcZkJcLWFcZlB8XGZCXC1cLXBlbmRpbmdcZlAKK1JlbW92ZSBhbiBpbnN0YWxsZWQgcGFja2FnZS4gXGZCXC1yXGZQIG9yIFxmQlwtXC1yZW1vdmVcZlAgcmVtb3ZlIGV2ZXJ5dGhpbmcgZXhjZXB0Citjb25mZmlsZXMuIFRoaXMgbWF5IGF2b2lkIGhhdmluZyB0byByZWNvbmZpZ3VyZSB0aGUgcGFja2FnZSBpZiBpdCBpcworcmVpbnN0YWxsZWQgbGF0ZXIuIChDb25mZmlsZXMgYXJlIGNvbmZpZ3VyYXRpb24gZmlsZXMgdGhhdCBhcmUgbGlzdGVkIGluIHRoZQorXGZJREVCSUFOL2NvbmZmaWxlc1xmUCBjb250cm9sIGZpbGUpLiBcZkJcLVBcZlAgb3IgXGZCXC1cLXB1cmdlXGZQIHJlbW92ZXMgZXZlcnl0aGluZywKK2luY2x1ZGluZyBjb25mZmlsZXMuIElmIFxmQlwtYVxmUCBvciBcZkJcLVwtcGVuZGluZ1xmUCBpcyBnaXZlbiBpbnN0ZWFkIG9mIGEgcGFja2FnZQorbmFtZSwgdGhlbiBhbGwgcGFja2FnZXMgdW5wYWNrZWQsIGJ1dCBtYXJrZWQgdG8gYmUgcmVtb3ZlZCBvciBwdXJnZWQgaW4gZmlsZQorXGZJL3Zhci9saWIvZHBrZy9zdGF0dXNcZlAsIGFyZSByZW1vdmVkIG9yIHB1cmdlZCwgcmVzcGVjdGl2ZWx5LiBOb3RlOiBzb21lCitjb25maWd1cmF0aW9uIGZpbGVzIG1pZ2h0IGJlIHVua25vd24gdG8gXGZCZHBrZ1xmUCBiZWNhdXNlIHRoZXkgYXJlIGNyZWF0ZWQgYW5kCitoYW5kbGVkIHNlcGFyYXRlbHkgdGhyb3VnaCB0aGUgY29uZmlndXJhdGlvbiBzY3JpcHRzLiBJbiB0aGF0IGNhc2UsIFxmQmRwa2dcZlAKK3dvbid0IHJlbW92ZSB0aGVtIGJ5IGl0c2VsZiwgYnV0IHRoZSBwYWNrYWdlJ3MgXGZJcG9zdHJtXGZQIHNjcmlwdCAod2hpY2ggaXMKK2NhbGxlZCBieSBcZkJkcGtnXGZQKSwgaGFzIHRvIHRha2UgY2FyZSBvZiB0aGVpciByZW1vdmFsIGR1cmluZyBwdXJnZS4gT2YKK2NvdXJzZSwgdGhpcyBvbmx5IGFwcGxpZXMgdG8gZmlsZXMgaW4gc3lzdGVtIGRpcmVjdG9yaWVzLCBub3QgY29uZmlndXJhdGlvbgorZmlsZXMgd3JpdHRlbiB0byBpbmRpdmlkdWFsIHVzZXJzJyBob21lIGRpcmVjdG9yaWVzLgorCitVc3VuaepjaWUgcGFraWV0dSBza7NhZGEgc2nqIHogbmFzdOpwdWqxY3ljaCBrcm9r83c6CisuYnIKKworXGZCMS5cZlAgVXJ1Y2hvbWllbmllIHNrcnlwdHUgXGZJcHJlcm1cZlAKKy5icgorCitcZkIyLlxmUCBVc3VuaepjaWUgemFpbnN0YWxvd2FueWNoIHBsaWvzdworLmJyCisKK1xmQjMuXGZQIFVydWNob21pZW5pZSBza3J5cHR1IFxmSXBvc3RybVxmUAorLmJyCisuVFAgCitcZkJcLVwtdXBkYXRlXC1hdmFpbFxmUCwgXGZCXC1cLW1lcmdlXC1hdmFpbFxmUCBcZklwbGlrXC1wYWtpZXTzd1xmUAorWmFrdHVhbGl6b3dhbmllIGJhenkgZGFueWNoIHByb2dyYW11IFxmQmRwa2dcZlAgb3JheiBcZkJkc2VsZWN0XGZQIG8gZG9zdOpwbnljaAorcGFraWV0YWNoLiBPcGNqYSBcZkJcLVwtbWVyZ2VcLWF2YWlsXGZQIHBvd29kdWplLCC/ZSBwb3ByemVkbmllIGluZm9ybWFjamUgc7EKK7OxY3pvbmUgeiBub3d5bWkgeiBcZklwbGlrdV9wYWtpZXTzd1xmUC4gT3BjamEgXGZCXC1cLXVwZGF0ZVwtYXZhaWxcZlAgcG93b2R1amUKK3phc3SxcGllbmllIHN0YXJ5Y2ggaW5mb3JtYWNqaSBub3d5bWkgeiBcZklwbGlrdV9wYWtpZXTzd1xmUC4gXGZJUGxpa19wYWtpZXTzd1xmUAorZHlzdHJ5YnVvd2FueSByYXplbSB6IHN5c3RlbWVtIERlYmlhbiBuYXp5d2Egc2nqIHBvIHByb3N0dQorXGZJUGFja2FnZXNcZlAuIFxmQmRwa2dcZlAgcHJ6ZWNob3d1amUgaW5mb3JtYWNqZSBvIGRvc3TqcG55Y2ggcGFraWV0YWNoIHcgcGxpa3UKK1xmSS92YXIvbGliL2Rwa2cvYXZhaWxhYmxlXGZQLgorCitQcm9zdHN6eW0gcG9sZWNlbmllbSwga3TzcmVnbyBtb79uYSB1v3nmIHcgY2VsdSBwb2JyYW5pYSBpIG9ktndpZb9lbmlhIHBsaWt1CitcZklhdmFpbGFibGVcZlAsIGplc3QgXGZCZHNlbGVjdCB1cGRhdGVcZlAuIFByb3N66iB6YXV3Yb955iwgv2UgcGxpayB0ZW4gamVzdAoremFzYWRuaWN6byBuaWV1v3l0ZWN6bnksIGpltmxpIG5pZSB1v3l3YSBzaeogXGZCZHNlbGVjdFxmUCB0eWxrbyBuYWuzYWRraQorYmF6dWqxY2VqIG5hIEFQVC4gUHJ6eWN6eW6xIHRlZ28gamVzdCBmYWt0LCC/ZSBBUFQgcG9zaWFkYSB3s2Fzbnkgc3lzdGVtCitva3JltmxhbmlhIGRvc3TqcG5vtmNpIHBha2lldPN3LgorLlRQIAorXGZCXC1BXGZQLCBcZkJcLVwtcmVjb3JkXC1hdmFpbFxmUCBcZklwYWNrYWdlXC1maWxlXGZQLi4uCitVcGRhdGUgXGZCZHBrZ1xmUCBhbmQgXGZCZHNlbGVjdFxmUCdzIGlkZWEgb2Ygd2hpY2ggcGFja2FnZXMgYXJlIGF2YWlsYWJsZSB3aXRoCitpbmZvcm1hdGlvbiBmcm9tIHRoZSBwYWNrYWdlIFxmSXBhY2thZ2VcLWZpbGVcZlAuIElmIFxmQlwtXC1yZWN1cnNpdmVcZlAgb3IgXGZCXC1SXGZQCitvcHRpb24gaXMgc3BlY2lmaWVkLCBcZklwYWNrYWdlXC1maWxlXGZQIG11c3QgcmVmZXIgdG8gYSBkaXJlY3RvcnkgaW5zdGVhZC4KKy5UUCAKK1xmQlwtXC1mb3JnZXRcLW9sZFwtdW5hdmFpbFxmUAorQWt0dWFsbmllIFxmQnByemVzdGFyemGzZVxmUCBpIG5pZSBkYWplIL9hZG5lZ28gZWZla3R1LCBwb25pZXdhvyBcZkJkcGtnXGZQCithdXRvbWF0eWN6bmllIHphcG9taW5hIG8gbmllemFpbnN0YWxvd2FueWNoLCBuaWVkb3N06nBueWNoIHBha2lldGFjaC4KKy5UUCAKK1xmQlwtXC1jbGVhclwtYXZhaWxcZlAKK1NrYXNvd2FuaWUgaW5mb3JtYWNqaSBvIGRvc3TqcG55Y2ggcGFraWV0YWNoLgorLlRQIAorIFxmQlwtQ1xmUCwgXGZCXC1cLWF1ZGl0XGZQCitXeXN6dWthbmllIHBha2lldPN3LCBrdPNyZSB6YWluc3RhbG93YW5lIHOxIHcgc3lzdGVtaWUgdHlsa28KK2N66rZjaW93by4gXGZCZHBrZ1xmUCB6YXN1Z2VydWplLCBjbyBtb79uYSB6cm9iaeYgeiB0eW1pIHBha2lldGFtaSwgYWJ5IHcgcGWzbmkKK2R6aWGzYbN5LgorLlRQIAorXGZCXC1cLWdldFwtc2VsZWN0aW9uc1xmUCBbXGZJd3pvcnplY1wtbmF6d3lcLXBha2lldHVcZlAuLi5dCitQb2JyYW5pZSBsaXN0eSB3eWJyYW55Y2ggcGFraWV083cgaSB3eXBpc2FuaWUgamVqIG5hIHN0ZG91dC4gSmW/ZWxpIG5pZQorcG9kYW5vIHd6b3JjYSwgcGFraWV0eSBuaWV6YWluc3RhbG93YW5lIChjenlsaSB0YWtpZSwga3TzcmUgbmllIHpvc3Rhs3kKK3VwcnplZG5pbyB3eWN6eXN6Y3pvbmUpIG5pZSB6b3N0YW6xIHd5tndpZXRsb25lLgorLlRQIAorXGZCXC1cLXNldFwtc2VsZWN0aW9uc1xmUAorU2V0IHBhY2thZ2Ugc2VsZWN0aW9ucyB1c2luZyBmaWxlIHJlYWQgZnJvbSBzdGRpbi4gVGhpcyBmaWxlIHNob3VsZCBiZSBpbgordGhlIGZvcm1hdCAnXGZJcGFja2FnZVxmUCBcZklzdGF0ZVxmUCcsIHdoZXJlIHN0YXRlIGlzIG9uZSBvZiBcZkJpbnN0YWxsXGZQLCBcZkJob2xkXGZQLAorXGZCZGVpbnN0YWxsXGZQIG9yIFxmQnB1cmdlXGZQLiBCbGFuayBsaW5lcyBhbmQgY29tbWVudCBsaW5lcyBiZWdpbm5pbmcgd2l0aCAnIycKK2FyZSBhbHNvIHBlcm1pdHRlZC4KKy5UUCAKK1xmQlwtXC1jbGVhclwtc2VsZWN0aW9uc1xmUAorT3puYWN6YSB3c3p5c3RraWUgcGFraWV0eSBuaWUgYupksWNlIHBha2lldGFtaSBuaWV6YupkbnltaSAoZXNzZW50aWFsKSBqYWtvCitwcnplem5hY3pvbmUgZG8gdXN1bmnqY2lhLiBPcGNqYSB0YSBwb3dpbm5hIGJ55iB1v3l0YSBiZXpwb7ZyZWRuaW8gcHJ6ZWQKK1wtXC1zZXRcLXNlbGVjdGlvbnMsIGFieSB1c3VuseYgd3N6eXN0a2llIHBha2lldHkgbmlld3ltaWVuaW9uZSB3CitcLVwtc2V0XC1zZWxlY3Rpb25zLgorLlRQIAorXGZCXC1cLXlldFwtdG9cLXVucGFja1xmUAorV3lzenVrYW5pZSBwYWtpZXTzdyBwcnplem5hY3pvbnljaCBkbyB6YWluc3RhbG93YW5pYSwga3TzcmUgeiBwZXdueWNoCitwb3dvZPN3IG5pZSBtb2ezeSB6b3N0YeYgemFpbnN0YWxvd2FuZS4KKy5UUCAKKy5UUCAKK1xmQlwtXC1wcmludFwtYXJjaGl0ZWN0dXJlXGZQCitQb2RhbmllIGFyY2hpdGVrdHVyeSBwYWtpZXTzdyBpbnN0YWxvd2FueWNoIHByemV6IFxmQmRwa2dcZlAgKG5hIHByenlrs2FkCisiaTM4NiIpLgorLlRQIAorXGZCXC1cLWNvbXBhcmVcLXZlcnNpb25zIFxmUFxmSXdlcnNqYTEgb3Agd2Vyc2phMlxmUAorUG9y83duYW5pZSBudW1lcvN3IHdlcnNqaSwgZ2R6aWUgXGZJb3BcZlAgamVzdCBvcGVyYXRvcmVtIGJpbmFybnltLiBcZkJkcGtnXGZQCit6d3LzY2kgcHJhd2TqIChyZXp1bHRhdCB6ZXJvd3kpIFwtIGdkeSB3YXJ1bmVrIGplc3Qgc3Bls25pb255LCBsdWIgendy82NpCitmYbNzeiAocmV6dWx0YXQgbmllemVyb3d5KSBcLSB3IHByemVjaXdueW0gcmF6aWUuIElzdG5pZWqxIGR3aWUgZ3J1cHkKK29wZXJhdG9y83csIHcgemFsZb9ub7ZjaSBvZCB0ZWdvLCB3IGpha2kgc3Bvc/NiIHRyYWt0dWplIHNp6iBwdXN0eSBudW1lcgorXGZJd2Vyc2ppMVxmUCBsdWIgXGZJd2Vyc2ppMlxmUC4gT3BlcmF0b3J5LCBkbGEga3TzcnljaCBwdXN0eSBudW1lciB3ZXJzamkgb3puYWN6YQord2Vyc2rqIHdjemW2bmllanN6sSBuab8gZG93b2xuYTogXGZCbHQgbGUgZXEgbmUgZ2UgZ3RcZlAuIE9wZXJhdG9yeSwgZGxhCitrdPNyeWNoIHB1c3R5IG51bWVyIHdlcnNqaSBvem5hY3phIHdlcnNq6iBw87xuaWVqc3qxIG5pvyBkb3dvbG5hOiBcZkJsdFwtbmwKK2xlXC1ubCBnZVwtbmwgZ3RcLW5sXGZQLiBPcGVyYXRvcnkgaXN0bmllarFjZSwgYWJ5IHphY2hvd2HmIGtvbXBhdHliaWxub7bmIHoKK3BsaWtpZW0ga29udHJvbG55bTogXGZCPCA8PCA8PSA9ID49ID4+ID5cZlAuCisuVFAgCitcZkJcLVwtY29tbWFuZFwtZmQgXGZQXGZJblxmUAorQWNjZXB0IGEgc2VyaWVzIG9mIGNvbW1hbmRzIG9uIGlucHV0IGZpbGUgZGVzY3JpcHRvciBcZkluXGZQLiBOb3RlOiBhZGRpdGlvbmFsCitvcHRpb25zIHNldCBvbiB0aGUgY29tbWFuZCBsaW5lLCBhbmQgdGhyb3VnaCB0aGlzIGZpbGUgZGVzY3JpcHRvciwgYXJlIG5vdAorcmVzZXQgZm9yIHN1YnNlcXVlbnQgY29tbWFuZHMgZXhlY3V0ZWQgZHVyaW5nIHRoZSBzYW1lIHJ1bi4KKy5UUCAKK1xmQlwtXC1oZWxwXGZQCitXebZ3aWV0bGVuaWUga3LzdGtpZWdvIGtvbXVuaWthdHUgcG9tb2N5LgorLlRQIAorXGZCXC1cLWZvcmNlXC1oZWxwXGZQCitXebZ3aWV0bGVuaWUgb3Bpc3Ugb3BjamkgXGZCXC1cLWZvcmNlXC1cZlBcZklkemlhs2FuaWVcZlAuCisuVFAgCitcZkJcLURoXGZQLCBcZkJcLVwtZGVidWc9aGVscFxmUAorV3m2d2lldGxlbmllIG9waXN1IG9wY2ppIGRlYnVnZ2VyYS4KKy5UUCAKK1xmQlwtXC12ZXJzaW9uXGZQCitXebZ3aWV0bGVuaWUgaW5mb3JtYWNqaSBvIHdlcnNqaSBcZkJkcGtnXGZQLgorLlRQIAorXGZCYWtjamUgZHBrZ1wtZGViXGZQCitQcm9zeuogemFqcnpl5iBkbyBcZkJkcGtnXC1kZWJcZlAoMSksIGFieSBwb3puYeYgcGWzbnkgb3BpcyBuYXN06nB1arFjeWNoCitkemlhs2HxLgorCisubmYKK1xmQlwtYlxmUCwgXGZCXC1cLWJ1aWxkXGZQIFxmSWthdGFsb2dcZlAgW1xmSWFyY2hpd3VtXGZQfFxmSWthdGFsb2dcZlBdCisgICAgWmJ1ZG93YW5pZSBwYWtpZXR1IGRlYi4KK1xmQlwtY1xmUCwgXGZCXC1cLWNvbnRlbnRzXGZQIFxmSWFyY2hpd3VtXGZQCisgICAgUG9kYW5pZSB6YXdhcnRvtmNpIHBha2lldHUgZGViLgorXGZCXC1lXGZQLCBcZkJcLVwtY29udHJvbFxmUCBcZkluYXp3YVwtcGxpa3VcZlAgW1xmSWthdGFsb2dcZlBdCisgICAgUm96cGFrb3dhbmllIHBsaWvzdyBrb250cm9sbnljaCB6IHBha2lldHUuCitcZkJcLXhcZlAsIFxmQlwtXC1leHRyYWN0XGZQIFxmSWFyY2hpd3VtIGthdGFsb2dcZlAKKyAgICAgUm96cGFrb3dhbmllIHBsaWvzdyB6YXdhcnR5Y2ggdyBwYWtpZWNpZS4KK1xmQlwtWFxmUCwgXGZCXC1cLXZleHRyYWN0XGZQIFxmSWFyY2hpd3VtIGthdGFsb2dcZlAKKyAgICBSb3pwYWtvd2FuaWUgcGFraWV0dSBpIHBvZGFuaWUgbmF6dyBwbGlr83csIGt083JlCisgICAgemF3aWVyYSBwYWtpZXQuCitcZkJcLWZcZlAsIFxmQlwtXC1maWVsZFxmUCBcZklhcmNoaXd1bVxmUCBbXGZJcG9sZVwta29udHJvbG5lXGZQLi4uXQorICAgIFBvZGFuaWUgaW5mb3JtYWNqaSB6IHDzbCBrb250cm9sbnljaCBwYWtpZXR1LgorXGZCXC1cLWZzeXNcLXRhcmZpbGVcZlAgXGZJYXJjaGl3dW1cZlAKKyAgICBQb2RhbmllIG5hIHN0ZG91dCBhcmNoaXd1bSB0YXIsIGt083JlIHphd2llcmEgcGFraWV0CisgICAgRGViaWFuYS4KK1xmQlwtSVxmUCwgXGZCXC1cLWluZm9cZlAgXGZJYXJjaGl3dW1cZlAgW1xmSXBsaWtcLWtvbnRyb2xueVxmUC4uLl0KKyAgICAgUG9kYW5pZSBpbmZvcm1hY2ppIG8gcGFraWVjaWUuCisuZmkKKworLlRQIAorXGZCYWtjamUgZHBrZ1wtcXVlcnlcZlAKK1Byb3N66iBwcnplY3p5dGHmIFxmQmRwa2dcLXF1ZXJ5XGZQKDgpLCBhYnkgdXp5c2th5iBzemN6ZWfzs293ZSBpbmZvcm1hY2plIG8KK25hc3TqcHVqsWN5Y2ggZHppYbNhbmlhY2guCisKKy5uZgorCitcZkJcLWxcZlAsIFxmQlwtXC1saXN0XGZQIFxmSXd6b3J6ZWNcLW5hendcLXBha2lldPN3XGZQLi4uCisgICAgV3m2d2lldGxhIHBha2lldHkgcGFzdWqxY2UgZG8gd3pvcmNhLgorXGZCXC1zXGZQLCBcZkJcLVwtc3RhdHVzXGZQIFxmSW5hendhXC1wYWtpZXR1XGZQLi4uCisgICAgV3m2d2lldGxhIGluZm9ybWFjamUgbyBzdGFuaWUgZGFuZWdvIHBha2lldHUuCitcZkJcLUxcZlAsIFxmQlwtXC1saXN0ZmlsZXNcZlAgXGZJbmF6d2FcLXBha2lldHVcZlAuLi4KKyAgICBXebZ3aWV0bGEgbGlzdOogcGxpa/N3IHphaW5zdGFsb3dhbnljaCB3IHN5c3RlbWllIHByemV6IHBha2lldCBcZkluYXp3YVwtcGFraWV0dVxmUC4KK1xmQlwtU1xmUCwgXGZCXC1cLXNlYXJjaFxmUCBcZkl3em9yemVjXC13eXN6dWtpd2FuaWFcLW5hendcLXBsaWvzd1xmUC4uLgorICAgIFd5c3p1a3VqZSBuYXp3eSBwbGlr83cgdyB6YWluc3RhbG93YW55Y2ggcGFraWV0YWNoLgorXGZCXC1wXGZQLCBcZkJcLVwtcHJpbnRcLWF2YWlsXGZQIFxmSW5hendhXC1wYWtpZXR1XGZQLi4uCisgICAgV3m2d2lldGxhIHN6Y3plZ/Ozb3dlIGluZm9ybWFjamUgbmEgdGVtYXQgcGFraWV0dSBcZkluYXp3YVwtcGFraWV0dVxmUCwKKyAgICBwb2Nob2R6sWNlIHogcGxpa3UgXGZJL3Zhci9saWIvZHBrZy9hdmFpbGFibGVcZlAuIFW/eXRrb3duaWN5IG5ha7NhZGVrCisgICAgb3BhcnR5Y2ggbyBBUFQgcG93aW5uaSB1v3l3YeYgXGZCYXB0XC1jYWNoZSBzaG93XGZQIFxmSXBhY2thZ2VcLW5hbWVcZlAgemFtaWFzdAorICAgIHRlaiBvcGNqaS4KKy5maQorLgorLlNIIE9QQ0pFCitXc3p5c3RraWUgb3BjamUgbW9nsSBieeYgcG9kYW5lIHphcvN3bm8gdyBsaW5paSBwb2xlY2XxLCBqYWsgaSB3IHBsaWt1Citrb25maWd1cmFjeWpueW0gXGZJL2V0Yy9kcGtnL2Rwa2cuY2ZnXGZQIHByb2dyYW11IFxmQmRwa2dcZlAgbHViIHcgcGxpa2FjaCB3CitrYXRhbG9ndSBrb25maWd1cmFjeWpueW0gXGZJL2V0Yy9kcGtnL2Rwa2cuY2ZnLmQvXGZQLiBLYb9kYSBsaW5pYSBwbGlrdQora29uZmlndXJhY3lqbmVnbyBqZXN0IGFsYm8gb3BjarEgKGRva7NhZG5pZSB0YWuxIHNhbbEgamFrIG9wY2phIGxpbmlpCitwb2xlY2XxLCBhbGUgYmV6IHBvY3qxdGtvd3ljaCBtebZsbmlr83cpLCBhbGJvIGtvbWVudGFyemVtIChqZb9lbGkgemFjenluYQorc2nqIG9kIFxmQiNcZlApLgorLmJyCisuVFAgCitcZkJcLVwtYWJvcnRcLWFmdGVyPVxmUFxmSWxpY3piYVxmUAorWm1pYW5hIGxpY3pieSBis+pk83csIHBvIGt083J5Y2ggXGZCZHBrZ1xmUCB6YXByemVzdGFuaWUgZHppYbNhbmlhLiBEb215tmxuYQord2FydG+25iB0byA1MC4KKy5UUCAKK1xmQlwtQlxmUCwgXGZCXC1cLWF1dG9cLWRlY29uZmlndXJlXGZQCitHZHkgcGFraWV0IGplc3QgdXN1d2FueSwgbW+/bGl3ZSBqZXN0LCC/ZSBpbm55IHphaW5zdGFsb3dhbnkgcGFraWV0IHphbGW/eQorb2QgdGVnbyB1c3V3YW5lZ28uIFBvZGFuaWUgdGVqIG9wY2ppIHNwb3dvZHVqZSBhdXRvbWF0eWN6bmUgZGVrb25maWd1cm93YW5pZQorcGFraWV083csIGt083JlIHOxIHphbGW/bmUgb2QgdXN1d2FuZWdvLgorLlRQIAorXGZCXC1EXGZQXGZJ83NlbWtvd29cZlAsIFxmQlwtXC1kZWJ1Zz1cZlBcZknzc2Vta293b1xmUAorV7OxY3plbmllIHRyeWJ1IGRlYnVnZ2VyYS4gXGZJ83NlbWtvd29cZlAgamVzdCBsaWN6YrEg83NlbWtvd7EgYupksWOxIHN1bbEKK2xvZ2ljem6xIGJpdPN3IG9wY2ppIGRlYnVnZ2VyYSB6IHBvbmm/c3plaiBsaXN0eSAodGUgd2FydG+2Y2kgbW9nsSBzaeoKK3ptaWVuaeYgdyBwcnp5c3qzb7ZjaSkuIFBhcmFtZXRyIFxmQlwtRGhcZlAgbHViIFxmQlwtXC1kZWJ1Zz1oZWxwXGZQIHd5tndpZXRsYSB0ZQord2FydG+2Y2kuCisKKyAgICBOdW1iZXIgICBEZXNjcmlwdGlvbgorICAgICAgICAgMSAgIEdlbmVyYWxseSBoZWxwZnVsIHByb2dyZXNzIGluZm9ybWF0aW9uCisgICAgICAgICAyICAgSW52b2NhdGlvbiBhbmQgc3RhdHVzIG9mIG1haW50YWluZXIgc2NyaXB0cworICAgICAgICAxMCAgIE91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZAorICAgICAgIDEwMCAgIExvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkCisgICAgICAgIDIwICAgT3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZQorICAgICAgIDIwMCAgIExvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZQorICAgICAgICA0MCAgIERlcGVuZGVuY2llcyBhbmQgY29uZmxpY3RzCisgICAgICAgNDAwICAgTG90cyBvZiBkZXBlbmRlbmNpZXMvY29uZmxpY3RzIG91dHB1dAorICAgICAxMDAwMCAgIFRyaWdnZXIgYWN0aXZhdGlvbiBhbmQgcHJvY2Vzc2luZworICAgICAyMDAwMCAgIExvdHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2VycworICAgICA0MDAwMCAgIFNpbGx5IGFtb3VudHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2VycworICAgICAgMTAwMCAgIExvdHMgb2YgZHJpdmVsIGFib3V0IGUuZy4gdGhlIGRwa2cvaW5mbyBkaXIKKyAgICAgIDIwMDAgICBJbnNhbmUgYW1vdW50cyBvZiBkcml2ZWwKKy5UUCAKK1xmQlwtXC1mb3JjZVwtXGZQXGZJZHppYbNhbmlhXGZQLCBcZkJcLVwtbm9cLWZvcmNlXC1cZlBcZklkemlhs2FuaWFcZlAsIFxmQlwtXC1yZWZ1c2VcLVxmUFxmSWR6aWGzYW5pYVxmUAorCitXeW11tiAoXGZCXC1cLWZvcmNlXC1cZlApIHd5a29uYW5pZSBwZXdueWNoIGR6aWGzYfEgbHViIHBvem9zdGF3IGRvbXm2bG55IHNwb3PzYgorKFxmQm5vXC1mb3JjZVxmUCBpIFxmQnJlZnVzZVxmUCBvem5hY3pharEgdG8gc2Ftbykgd3lrb25hbmlhIGR6aWGzYfEuIFxmSWR6aWGzYW5pYVxmUAordG8gcm96ZHppZWxvbmEgcHJ6ZWNpbmthbWkgbGlzdGEgZHppYbNh8S4gXGZCXC1cLWZvcmNlXC1oZWxwXGZQIHd5tndpZXRsYSBvcGlzCit0eWNoIGR6aWGzYfEuIER6aWGzYW5pYSBvem5hY3pvbmUgcHJ6ZXogKCopIHOxIGRvbXm2bG5pZSB3eW11c3pvbmUuCisKK1xmSU9zdHJ6Zb9lbmllOiBUZSBvcGNqZSBzsSB6d3lrbGUgcHJ6ZXpuYWN6b25lIHd5s7Fjem5pZSBkbGEgZG+2d2lhZGN6b255Y2gKK3W/eXRrb3duaWvzdy4gVb95Y2llIGljaCBiZXogcGWzbmVnbyB6cm96dW1pZW5pYSBlZmVrdHUgZHppYbNhbmlhIG1vv2UKK3Nwb3dvZG93YeYgdXN6a29kemVuaWUgc3lzdGVtdS5cZlAKKworXGZCYWxsXGZQOiBXs7FjemEgKGx1YiB3ebOxY3phKSB3c3p5c3RraWUgb3BjamUgdHlwdSAiZm9yY2UiLgorCitcZkJkb3duZ3JhZGVcZlAoKik6IFphaW5zdGFsb3dhbmllIHBha2lldHUsIG5hd2V0IGdkeSBub3dzemEgamVnbyB3ZXJzamEgamVzdAoranW/IHphaW5zdGFsb3dhbmEuCisKK1xmSU9zdHJ6Zb9lbmllOiBXIGNod2lsaSBvYmVjbmVqIGRwa2cgbmllIHNwcmF3ZHphIHphbGW/bm+2Y2kgcG9kY3phcworaW5zdGFsb3dhbmlhIHN0YXJzemVqIHdlcnNqaSBwYWtpZXR1IGkgZGxhdGVnbyBuaWUgd3lwaXN6ZSBvc3RyemW/ZW5pYSwKK2plv2VsaSB6YWluc3RhbG93YW5pZSBzdGFyc3plaiB3ZXJzamkgcG9wc3VqZSB6YWxlv25vtmNpIGlubnljaAorcGFraWV083cuIEluc3RhbG93YW5pZSBzdGFyc3p5Y2ggd2Vyc2ppIG5pZXpi6mRueWNoIChlc3NlbnRpYWwpIHBha2lldPN3Cittb79lIHNwb3dvZG93YeYgXC0gaSBqZXN0IHRvIHBvd2G/bnkgc2t1dGVrIHVib2N6bnkgXC0gv2UgVHfzaiBzeXN0ZW0gbmllCiti6mR6aWUgc2nqIG5hZGF3YbMgZG8gdb95dGt1LiBQcm9zeuogdb95d2HmIHRlaiBvcGNqaSBvc3Ryb79uaWUuXGZQCisKK1xmQmNvbmZpZ3VyZVwtYW55XGZQOiBTa29uZmlndXJvd2FuaWUgd3N6eXN0a2ljaCByb3pwYWtvd2FueWNoIGFsZQorbmllc2tvbmZpZ3Vyb3dhbnljaCBwYWtpZXTzdywgb2Qga3TzcnljaCB6YWxlv3kgYmllv7FjeSBwYWtpZXQuCisKK1xmQmhvbGRcZlA6IER6aWGzYW5pZSBvYmVqbWllIHRha79lIHBha2lldHkgb3puYWN6b25lIGpha28gIndzdHJ6eW1hbmUiIChob2xkKS4KKworXGZCcmVtb3ZlXC1yZWluc3RyZXFcZlA6IFVzdW5p6mNpZSBwYWtpZXR1LCBuYXdldCB3dGVkeSBnZHkgamVzdCB1c3prb2R6b255IGkKK3d5bWFnYSBwcnplaW5zdGFsb3dhbmlhLiBNb79lIHRvIHNwb3dvZG93YeYgcG96b3N0YXdpZW5pZSBjeuq2Y2kgcGFraWV0dSB3CitzeXN0ZW1pZSwgZ2R5vyBcZkJkcGtnXGZQIHphcG9tbmkgbyBuaWVqLgorCitcZkJyZW1vdmVcLWVzc2VudGlhbFxmUDogVXN1bmnqY2llIHBha2lldHUsIG5hd2V0IHd0ZWR5IGdkeSBqZXN0IG9uIHV6bmFueSB6YQorbmllemLqZG55IChlc3NlbnRpYWwpLiBQYWtpZXR5IG5pZXpi6mRuZSB6YXdpZXJharEgcG9kc3Rhd293ZSBwb2xlY2VuaWEKK1VuaWtzYS4gVXN1bmnqY2llIGljaCBtb79lIHNwb3dvZG93YeYsIL9lIHN5c3RlbSBwcnplc3RhbmllIGR6aWGzYeYuIE5hbGW/eQoremFjaG93YeYgc3pjemVn82xusSBvc3Ryb79ub7bmIHByenkgdb95Y2l1IHRlaiBvcGNqaS4KKworXGZCZGVwZW5kc1xmUDogWmFtaWFuYSB3c3p5c3RraWNoIHByb2JsZW3zdyB6IHphbGW/bm+2Y2lhbWkgbmEgb3N0cnplv2VuaWEuCisKK1xmQmRlcGVuZHNcLXZlcnNpb25cZlA6IFppZ25vcm93YW5pZSBwcm9ibGVt83cgeiBudW1lcmFtaSB3ZXJzamkgcHJ6eQorc3ByYXdkemFuaXUgemFsZb9ub7ZjaS4KKworXGZCYnJlYWtzXGZQOiBJbnN0YWxhY2phLCBuYXdldCBqZbZsaWJ5IHRvIHBvcHN1s28gaW5ueSBwYWtpZXQuCisKK1xmQmNvbmZsaWN0c1xmUDogSW5zdGFsYWNqYSwgbmF3ZXQgZ2R5IHBha2lldCBwb3dvZHVqZSBrb25mbGlrdCB6Citpbm55bS4gUG93c3Rh5iBtb79lIG5pZWJlenBpZWN6ZfFzdHdvIG5hZHBpc2FuaWEgcGxpa/N3IHogaW5uZWdvIHBha2lldHUsCitkbGF0ZWdvIG5hbGW/eSB6YWNob3dh5iBvc3Ryb79ub7bmIHByenkgdb95Y2l1IHRlaiBvcGNqaS4KKworXGZCY29uZm1pc3NcZlA6IFphd3N6ZSBi6mSxIGluc3RhbG93YW5lIGJyYWt1arFjZSBwbGlraQora29uZmlndXJhY3lqbmUuIFW/eXdhbmllIHRlaiBvcGNqaSBtb79lIGJ55iBuaWViZXpwaWVjem5lLCBwb25pZXdhvyBuaWUKK3phY2hvd3VqZSB0byB6bWlhbnkgZG9rb25hbmVqIG5hIHBsaWt1IChjenlsaSBqZWdvIHVzdW5p6mNpYSkuCisKK1xmQmNvbmZuZXdcZlA6IEpltmxpIHBsaWsga29uZmlndXJhY3lqbnkgem9zdGGzIHptb2R5Zmlrb3dhbnksIHphaW5zdGFsb3dhbmEKK3pvc3RhbmllIGplZ28gbm93YSB3ZXJzamEgYmV6IHB5dGFuaWEsIGNoeWJhIL9lIHW/eXRvIHLzd25pZb8gb3BjamkKK1xmQlwtXC1mb3JjZVwtY29uZmRlZlxmUCwgY28gc3Bvd29kdWplIHd5a29uYW5pZSBkb215tmxuZWogYWtjamkuCisKK1xmQmNvbmZvbGRcZlA6IEpltmxpIHBsaWsga29uZmlndXJhY3lqbnkgem9zdGGzIHptb2R5Zmlrb3dhbnksIHN0YXJhIHdlcnNqYQorem9zdGFuaWUgemFjaG93YW5hIGJleiBweXRhbmlhLCBjaHliYSC/ZSB1v3l0byBy83duaWW/IG9wY2ppCitcZkJcLVwtZm9yY2VcLWNvbmZkZWZcZlAsIGNvIHNwb3dvZHVqZSB3eWtvbmFuaWUgZG9tebZsbmVqIGFrY2ppLgorCitcZkJjb25mZGVmXGZQOiBKZbZsaSBwbGlrIGtvbmZpZ3VyYWN5am55IHpvc3RhsyB6bW9keWZpa293YW55LCB3eWJyYW5lIHpvc3RhbmllCitkb215tmxuZSBkemlhs2FuaWUuIEplv2VsaSBuaWUgb2tyZbZsb25vIGRvbXm2bG5laiBha2NqaSwgdb95dGtvd25paworem9zdGFuaWUgcG9wcm9zem9ueSBvIGRva29uYW5pZSB3eWJvcnUuIFBvZGFuaWUgZG9kYXRrb3dvIG9wY2ppCitcZkJcLVwtZm9yY2VcLWNvbmZuZXdcZlAgbHViIFxmQlwtXC1mb3JjZVwtY29uZm9sZFxmUCB6ZGVjeWR1amUgbyBkYWxzenltIGR6aWGzYW5pdS4KKworXGZCY29uZmFza1xmUDogSWYgYSBjb25mZmlsZSBoYXMgYmVlbiBtb2RpZmllZCBhbHdheXMgb2ZmZXIgdG8gcmVwbGFjZSBpdCB3aXRoCit0aGUgdmVyc2lvbiBpbiB0aGUgcGFja2FnZSwgZXZlbiBpZiB0aGUgdmVyc2lvbiBpbiB0aGUgcGFja2FnZSBkaWQgbm90CitjaGFuZ2UuIElmIGFueSBvZiBcZkJcLVwtZm9yY2VcLWNvbmZtaXNzXGZQLCBcZkJcLVwtZm9yY2VcLWNvbmZuZXdcZlAsCitcZkJcLVwtZm9yY2VcLWNvbmZvbGRcZlAsIG9yIFxmQlwtXC1mb3JjZVwtY29uZmRlZlxmUCBpcyBhbHNvIGdpdmVuLCBpdCB3aWxsIGJlIHVzZWQgdG8KK2RlY2lkZSB0aGUgZmluYWwgYWN0aW9uLgorCitcZkJvdmVyd3JpdGVcZlA6IE5hZHBpc2FuaWUgcGxpa/N3IHogaW5ueWNoIHBha2lldPN3LCB3IHByenlwYWRrdSBnZHkgZGFueSBwbGlrCit3eXN06nB1amUgdGFrv2UgdyBpbm55bSBwYWtpZWNpZS4KKworXGZCb3ZlcndyaXRlXC1kaXJcZlAgTmFkcGlzYW5pZSBrYXRhbG9n83cgeiBpbm55Y2ggcGFraWV083csIHcgcHJ6eXBhZGt1IGdkeQorZGFueSBrYXRhbG9nIHd5c3TqcHVqZSB0YWu/ZSB3IGlubnltIHBha2llY2llLgorCitcZkJvdmVyd3JpdGVcLWRpdmVydGVkXGZQOiBOYWRwaXNhbmllIHBsaWvzdyBvbWluaep0eWNoIHBsaWthbWkgbmllb21pbmnqdHltaS4KKworXGZCdW5zYWZlXC1pb1xmUDogRG8gbm90IHBlcmZvcm0gc2FmZSBJL08gb3BlcmF0aW9ucyB3aGVuIHVucGFja2luZy4gQ3VycmVudGx5Cit0aGlzIGltcGxpZXMgbm90IHBlcmZvcm1pbmcgZmlsZSBzeXN0ZW0gc3luY3MgYmVmb3JlIGZpbGUgcmVuYW1lcywgd2hpY2ggaXMKK2tub3duIHRvIGNhdXNlIHN1YnN0YW50aWFsIHBlcmZvcm1hbmNlIGRlZ3JhZGF0aW9uIG9uIHNvbWUgZmlsZSBzeXN0ZW1zLAordW5mb3J0dW5hdGVseSB0aGUgb25lcyB0aGF0IHJlcXVpcmUgdGhlIHNhZmUgSS9PIG9uIHRoZSBmaXJzdCBwbGFjZSBkdWUgdG8KK3RoZWlyIHVucmVsaWFibGUgYmVoYXZpb3VyIGNhdXNpbmcgemVyb1wtbGVuZ3RoIGZpbGVzIG9uIGFicnVwdCBzeXN0ZW0KK2NyYXNoZXMuCisKK1xmSU5vdGVcZlA6IEZvciBleHQ0LCB0aGUgbWFpbiBvZmZlbmRlciwgY29uc2lkZXIgdXNpbmcgaW5zdGVhZCB0aGUgbW91bnQKK29wdGlvbiBcZkJub2RlbGFsbG9jXGZQLCB3aGljaCB3aWxsIGZpeCBib3RoIHRoZSBwZXJmb3JtYW5jZSBkZWdyYWRhdGlvbiBhbmQKK3RoZSBkYXRhIHNhZmV0eSBpc3N1ZXMsIHRoZSBsYXR0ZXIgYnkgbWFraW5nIHRoZSBmaWxlIHN5c3RlbSBub3QgcHJvZHVjZQoremVyb1wtbGVuZ3RoIGZpbGVzIG9uIGFicnVwdCBzeXN0ZW0gY3Jhc2hlcyB3aXRoIGFueSBzb2Z0d2FyZSBub3QgZG9pbmcgc3luY3MKK2JlZm9yZSBhdG9taWMgcmVuYW1lcy4KKworXGZJV2FybmluZzogVXNpbmcgdGhpcyBvcHRpb24gbWlnaHQgaW1wcm92ZSBwZXJmb3JtYW5jZSBhdCB0aGUgY29zdCBvZiBsb3NpbmcKK2RhdGEsIHVzZSB3aXRoIGNhcmUuXGZQCisKK1xmQmFyY2hpdGVjdHVyZVxmUDogUHJvY2VzcyBldmVuIHBhY2thZ2VzIHdpdGggd3Jvbmcgb3Igbm8gYXJjaGl0ZWN0dXJlLgorCitcZkJiYWRcLXZlcnNpb25cZlA6IFByb2Nlc3MgZXZlbiBwYWNrYWdlcyB3aXRoIHdyb25nIHZlcnNpb25zLgorCitcZkJiYWRcLXBhdGhcZlA6IFppZ25vcm93YW5pZSBicmFrdSBwZXdueWNoIHByb2dyYW3zdyB3ILZjaWW/Y2Ugem1pZW5uZWoKK3N5c3RlbW93ZWogXGZCUEFUSFxmUC4KKworXGZCbm90XC1yb290XGZQOiBQcvNiYSAoZGUpaW5zdGFsYWNqaSwgZ2R5IGRwa2cgbmllIGplc3QgdXJ1Y2hhbWlhbnkgeiBrb250YQorYWRtaW5pc3RhcnRvcmEuCisKK1xmQmJhZFwtdmVyaWZ5XGZQOiBJbnN0YWxvd2FuaWUgcGFraWV0dSwgbmF3ZXQgamW/ZWxpIG5pZSBwb3dpZWR6aWUgc2nqCitzcHJhd2R6ZW5pZSBqZWdvIGF1dGVudHljem5vtmNpLgorCisuVFAgCitcZkJcLVwtaWdub3JlXC1kZXBlbmRzXGZQPVxmSXBha2lldFxmUCwuLi4KK1ppZ25vcm93YW5pZSBzcHJhd2R6YW5pYSB6YWxlv25vtmNpIG9kIHBvZGFueWNoIHBha2lldPN3IChhILZjabZsZWogcnplY3oKK2Jpb3KxYywgc3ByYXdkemFuaWUgc2nqIG9kYnl3YSwgYWxlIHcgcHJ6eXBhZGt1IGtvbmZsaWt083cgd3m2d2lldGxhbmUgamVzdAordHlsa28gb3N0cnplv2VuaWUpLgorLlRQIAorXGZCXC1cLW5vXC1hY3RcZlAsIFxmQlwtXC1kcnlcLXJ1blxmUCwgXGZCXC1cLXNpbXVsYXRlXGZQCitQb2Rlam1vd2FuZSBkemlhs2FuaWEgbmllIHBvd29kdWqxIL9hZG55Y2ggem1pYW4uIFRhIG9wY2phIGplc3Qgdb95dGVjem5hLAorZ2R5IHBvdHJ6ZWJhIHNwcmF3ZHpp5iwgY3p5IGR6aWGzYW5pZSBzaeogd3lrb25hLCBhbGUgYmV6IHBvd29kb3dhbmlhIHptaWFuCitjemVnb2tvbHdpZWsuCisKK09wY2rqIFxmQlwtXC1ub1wtYWN0XGZQIG5hbGW/eSBwb2Rh5iBqYWtvIHBpZXJ3c3p5IHBhcmFtZXRyLCBnZHm/IHcgcHJ6ZWNpd255bQorcmF6aWUgbW+/bmEgb3RyenltYeYgbmllc3BvZHppZXdhbmUgZWZla3R5LiAobnAuIFxmQmRwa2cgXC1cLXB1cmdlIGJsYQorXC1cLW5vXC1hY3RcZlAgd3ljenm2Y2kgcGFraWV0IGJsYSwgYSBuYXN06nBuaWUgc3By82J1amUgd3ljenm2Y2nmIHBha2lldCBvCituYXp3aWUgXC1cLW5vXC1hY3QsIG1pbW8gv2UgbmFqcHJhd2RvcG9kb2JuaWVqIHNwb2R6aWV3YbNltiBzaeosIL9lIHRha2llCitwb2xlY2VuaWUgbmljIG5pZSB6cm9iaSkuCisuVFAgCitcZkJcLVJcZlAsIFxmQlwtXC1yZWN1cnNpdmVcZlAKK0R6aWGzYW5pZSBvYmVqbWllIHdzenlzdGtpZSBwbGlraSBcZkIqLmRlYlxmUCB6IHBvZGFuZWdvIGthdGFsb2d1LCB3cmF6IHoKK3BvZGthdGFsb2dhbWkgdGVnbyBrYXRhbG9ndS4gVGEgb3BjamEgbW+/ZSB6b3N0YeYgdb95dGEgd3JheiB6IFxmQlwtaVxmUCwgXGZCXC1BXGZQLAorXGZCXC1cLWluc3RhbGxcZlAsIFxmQlwtXC11bnBhY2tcZlAgb3JheiBcZkJcLVwtYXZhaWxcZlAuCisuVFAgCitcZkJcLUdcZlAKK05pZWluc3RhbG93YW5pZSBwYWtpZXR1LCBqZbZsaSBqZWdvIG5vd3N6YSB3ZXJzamEgamVzdCBqdb8KK3phaW5zdGFsb3dhbmEuIEplc3QgdG8gZG9rs2FkbmllIHRvIHNhbW8sIGNvIFxmQlwtXC1yZWZ1c2VcLWRvd25ncmFkZVxmUC4KKy5UUCAKK1xmQlwtXC1hZG1pbmRpcj1cZlBcZklrYXRhbG9nXGZQCitabWlhbmEgZG9tebZsbmVnbyBrYXRhbG9ndSBhZG1pbmlzdHJhY3lqbmVnbywgemF3aWVyYWqxY2VnbyB3aWVsZSBwbGlr83cKK2Rvc3RhcmN6YWqxY3ljaCBpbmZvcm1hY2ppIG8gc3RhbmllIHphaW5zdGFsb3dhbnljaCBpIG5pZXphaW5zdGFsb3dhbnljaAorcGFraWV083cgaXRwLiAoV2FydG+25iBkb215tmxuYSB0byBcZkkvdmFyL2xpYi9kcGtnXGZQKS4KKy5UUCAKK1xmQlwtXC1pbnN0ZGlyPVxmUFxmSWthdGFsb2dcZlAKK1ptaWFuYSBkb215tmxuZWdvIGthdGFsb2d1IGluc3RhbGFjeWpuZWdvLCBjenlsaSBrYXRhbG9ndSwgdyBrdPNyeW0gcGFraWV0eQorc7EgaW5zdGFsb3dhbmUuIFxmQmluc3RkaXJcZlAgamVzdCB0YWu/ZSBrYXRhbG9naWVtIHByemVrYXp5d2FueW0gZG8KK1xmQmNocm9vdFxmUCgyKSBwcnplZCB1cnVjaG9taWVuaWVtIHNrcnlwdPN3IGRvc3RhcmN6b255aGMgcHJ6ZXogb3BpZWt1bmEKK3Bha2lldHUsIGNvIG96bmFjemEsIL9lIHNrcnlwdHkgdGUgd2lkerEgXGZCaW5zdGRpclxmUCBqYWtvIGez83dueSBrYXRhbG9nCitoaWVyYXJjaGlpLiAoV2FydG+25iBkb215tmxuYSB0byBcZkkvXGZQKS4KKy5UUCAKK1xmQlwtXC1yb290PVxmUFxmSWthdGFsb2dcZlAKK1ptaWFuYSBcZkJyb290XGZQIHptaWVuaWEgXGZCaW5zdGRpclxmUCBuYSBcZklrYXRhbG9nXGZQIGkgXGZCYWRtaW5kaXJcZlAgbmEKK1xmSWthdGFsb2dcZlBcZkIvdmFyL2xpYi9kcGtnXGZQLgorLlRQIAorXGZCXC1PXGZQLCBcZkJcLVwtc2VsZWN0ZWRcLW9ubHlcZlAKK0R6aWGzYW5pZSBvYmVqbXVqZSB3ebOxY3puaWUgcGFraWV0eSB3eWJyYW5lIGRvIGluc3RhbGFjamkuIFd5YvNyIG1vv2UKK3pvc3Rh5iBkb2tvbmFueSBwcnpleiBwb2xlY2VuaWUgXGZCZHNlbGVjdFxmUCBsdWIgXGZCZHBrZ1xmUCwgZ2R5IHd5a29udWplCitvcGVyYWNqZSBuYSBwYWtpZXRhY2guIE5hIHByenlrs2FkIHBha2lldCB1c3V3YW55IGplc3QgemF6bmFjemFueSBqYWtvCit3eWJyYW55IGRvIG9kaW5zdGFsb3dhbmlhLgorLlRQIAorXGZCXC1FXGZQLCBcZkJcLVwtc2tpcFwtc2FtZVwtdmVyc2lvblxmUAorTmllaW5zdGFsb3dhbmllIHBha2lldHUsIGpltmxpIG8gdGVqIHNhbWVqIHdlcnNqaSBqZXN0IGp1vyB6YWluc3RhbG93YW55IHcKK3N5c3RlbWllLgorLlAKK1xmQlwtXC1wcmVcLWludm9rZT1cZlBcZklwb2xlY2VuaWVcZlAKKy5icgorXGZCXC1cLXBvc3RcLWludm9rZT1cZlBcZklwb2xlY2VuaWVcZlAKKy5SUworT2tyZbZsYSBkb2RhdGtvd2UgXGZJcG9sZWNlbmllXGZQLCBrdPNyZSBi6mR6aWUgd3l3b7NhbmUgcHJ6ZXogInNoIFwtYyIgcHJ6ZWQKK2x1YiBwbyB3eWtvbmFuaXUgcHJ6ZXogZHBrZyBha2NqaTogXGZJdW5wYWNrXGZQLCBcZkljb25maWd1cmVcZlAsIFxmSWluc3RhbGxcZlAsCitcZkl0cmlnZ2Vyc1wtb25seVxmUCwgXGZJcmVtb3ZlXGZQIG9yYXogXGZJcHVyZ2VcZlAuIE9wY2phIHRhIG1vv2UgYnnmIHBvZGFuYQord2llbG9rcm90bmllLiBaYWNob3d5d2FuYSBqZXN0IGtvbGVqbm+25iBwb2Rhd2FuaWEgb3BjamksIHBvcHJ6ZWR6YW5lIHOxIG9uZQoramVzemN6ZSBvcGNqYW1pIHogcGxpa/N3IGtvbmZpZ3VyYWN5am55Y2guIFptaWVubmEgtnJvZG93aXNrYQorXGZCRFBLR19IT09LX0FDVElPTlxmUCBqZXN0IHVzdGF3aWFuYSBkbGEgZG9kYXRrb3d5Y2ggcG9sZWNl8SBuYSB3YXJ0b7bmCitvZHBvd2lhZGFqsWOxIGJpZb+xY2VqIGFrY2ppIGRwa2cuIFV3YWdhOiBuYWuzYWRraSBtb2exIHVydWNoYW1pYeYgZHBrZwora2lsa2EgcmF6eSB3IGNpsWd1IGplZG5lZ28gd3l3b7NhbmlhLCBjbyBtb79lIHNwb3dvZG93YeYgdXJ1Y2hvbWllbmllCitkb2RhdGtvd3ljaCBwb2xlY2XxIHdp6mNlaiByYXp5IG5pvyBvY3pla2l3YW5vLgorLlJFCisuUAorXGZCXC1cLXBhdGhcLWV4Y2x1ZGU9XGZQXGZJZ2xvYlwtcGF0dGVyblxmUAorLmJyCitcZkJcLVwtcGF0aFwtaW5jbHVkZT1cZlBcZklnbG9iXC1wYXR0ZXJuXGZQCisuUlMKK1NldCBcZklnbG9iXC1wYXR0ZXJuXGZQIGFzIGEgcGF0aCBmaWx0ZXIsIGVpdGhlciBieSBleGNsdWRpbmcgb3IgcmVcLWluY2x1ZGluZworcHJldmlvdXNseSBleGNsdWRlZCBwYXRocyBtYXRjaGluZyB0aGUgc3BlY2lmaWVkIHBhdHRlcm5zIGR1cmluZyBpbnN0YWxsLgorCitcZklXYXJuaW5nOiB0YWtlIGludG8gYWNjb3VudCB0aGF0IGRlcGVuZGluZyBvbiB0aGUgZXhjbHVkZWQgcGF0aHMgeW91IG1pZ2h0Citjb21wbGV0ZWx5IGJyZWFrIHlvdXIgc3lzdGVtLCB1c2Ugd2l0aCBjYXV0aW9uLlxmUAorCitUaGUgZ2xvYiBwYXR0ZXJucyB1c2UgdGhlIHNhbWUgd2lsZGNhcmRzIHVzZWQgaW4gdGhlIHNoZWxsLCB3ZXJlICcqJyBtYXRjaGVzCithbnkgc2VxdWVuY2Ugb2YgY2hhcmFjdGVycywgaW5jbHVkaW5nIHRoZSBlbXB0eSBzdHJpbmcgYW5kIGFsc28gJy8nLiBGb3IKK2V4YW1wbGUsIFxmSScvdXNyLyovUkVBRConXGZQIG1hdGNoZXMgXGZJJy91c3Ivc2hhcmUvZG9jL3BhY2thZ2UvUkVBRE1FJ1xmUC4gIEFzCit1c3VhbCwgJz8nIG1hdGNoZXMgYW55IHNpbmdsZSBjaGFyYWN0ZXIgKGFnYWluLCBpbmNsdWRpbmcgJy8nKS4gQW5kICdbJworc3RhcnRzIGEgY2hhcmFjdGVyIGNsYXNzLCB3aGljaCBjYW4gY29udGFpbiBhIGxpc3Qgb2YgY2hhcmFjdGVycywgcmFuZ2VzIGFuZAorY29tcGxlbWVudGF0aW9ucy4gU2VlIFxmQmdsb2JcZlAoNykgZm9yIGRldGFpbGVkIGluZm9ybWF0aW9uIGFib3V0CitnbG9iYmluZy4gTm90ZTogdGhlIGN1cnJlbnQgaW1wbGVtZW50YXRpb24gbWlnaHQgcmVcLWluY2x1ZGUgbW9yZSBkaXJlY3RvcmllcworYW5kIHN5bWxpbmtzIHRoYW4gbmVlZGVkLCB0byBiZSBvbiB0aGUgc2FmZSBzaWRlIGFuZCBhdm9pZCBwb3NzaWJsZSB1bnBhY2sKK2ZhaWx1cmVzLCBmdXR1cmUgd29yayBtaWdodCBmaXggdGhpcy4KKworVGhpcyBjYW4gYmUgdXNlZCB0byByZW1vdmUgYWxsIHBhdGhzIGV4Y2VwdCBzb21lIHBhcnRpY3VsYXIgb25lczsgYSB0eXBpY2FsCitjYXNlIGlzOgorCisubmYKK1xmQlwtXC1wYXRoXC1leGNsdWRlPS91c3Ivc2hhcmUvZG9jLypcZlAKK1xmQlwtXC1wYXRoXC1pbmNsdWRlPS91c3Ivc2hhcmUvZG9jLyovY29weXJpZ2h0XGZQCisuZmkKKwordG8gcmVtb3ZlIGFsbCBkb2N1bWVudGF0aW9uIGZpbGVzIGV4Y2VwdCB0aGUgY29weXJpZ2h0IGZpbGVzLgorCitUaGVzZSB0d28gb3B0aW9ucyBjYW4gYmUgc3BlY2lmaWVkIG11bHRpcGxlIHRpbWVzLCBhbmQgaW50ZXJsZWF2ZWQgd2l0aCBlYWNoCitvdGhlci4gQm90aCBhcmUgcHJvY2Vzc2VkIGluIHRoZSBnaXZlbiBvcmRlciwgd2l0aCB0aGUgbGFzdCBydWxlIHRoYXQKK21hdGNoZXMgYSBmaWxlIG5hbWUgbWFraW5nIHRoZSBkZWNpc2lvbi4KKy5SRQorLlRQIAorXGZCXC1cLXN0YXR1c1wtZmQgXGZQXGZJblxmUAorV3lzs2FuaWUgImN6eXRlbG5lZ28gZGxhIG1hc3p5bnkiIHN0YXR1c3UgcGFraWV0dSBpIGluZm9ybWFjamkgbyBwb3N06nBpZSBkbworZGVza3J5cHRvcmEgcGxpa3UgXGZJblxmUC4gVGEgb3BjamEgbW+/ZSBieeYgcG9kYW5hIHdpZWxva3JvdG5pZS4gSW5mb3JtYWNqYQoramVzdCBvZ/NsbmllIHphcGlzeXdhbmEgcG8gamVkbnltIHdwaXNpZSB3IGxpbmlpLCB3IGplZG5laiB6IG5hc3TqcHVqsWN5Y2gKK2Zvcm06CisuUlMKKy5UUCAKK1xmQnN0YXR1czogXGZQXGZJcGFraWV0XGZQXGZCOiBcZlBcZklzdGF0dXNcZlAKK05hc3SxcGmzYSB6bWlhbmEgc3RhdHVzdSBwYWtpZXR1LCBcZklzdGF0dXNcZlAgamVzdCB0YWtpIGphayB3IHBsaWt1IHN0YXR1c3UKK3Bha2lldHUuCisuVFAgCitcZkJzdGF0dXM6IFxmUFxmSXBha2lldFxmUFxmQiA6IGVycm9yIDogXGZQXGZJcm96c3plcnpvbnlcLWtvbXVuaWthdFwtYrPqZHVcZlAKK0FuIGVycm9yIG9jY3VycmVkLiBBbnkgcG9zc2libGUgbmV3bGluZXMgaW4gXGZJZXh0ZW5kZWRcLWVycm9yXC1tZXNzYWdlXGZQIHdpbGwKK2JlIGNvbnZlcnRlZCB0byBzcGFjZXMgYmVmb3JlIG91dHB1dC4KKy5UUCAKK1xmQnN0YXR1czogXGZQXGZJcGxpa1xmUFxmQiA6IGNvbmZmaWxlXC1wcm9tcHQgOiAnXGZQXGZJcHJhd2R6aXd5XC1zdGFyeVxmUFxmQicgJ1xmUFxmSXByYXdkeml3eVwtbm93eVxmUFxmQicgXGZQXGZJem1pYW55XC11v3l0a293bmlrYVxmUFxmQiBcZlBcZkl6bWlhbnlcLWR5c3RyeWJ1Y3lqbmVcZlAKK1W/eXRrb3duaWtvd2kgem9zdGFuaWUgcHJ6ZWRzdGF3aW9uZSBweXRhbmllIG9kbm+2bmllIHBsaWt1Citrb25maWd1cmFjeWpuZWdvLgorLlRQIAorXGZCcHJvY2Vzc2luZzogXGZQXGZJZXRhcFxmUFxmQjogXGZQXGZJcGFraWV0XGZQCitTZW50IGp1c3QgYmVmb3JlIGEgcHJvY2Vzc2luZyBzdGFnZSBzdGFydHMuIFxmSXN0YWdlXGZQIGlzIG9uZSBvZiBcZkJ1cGdyYWRlXGZQLAorXGZCaW5zdGFsbFxmUCAoYm90aCBzZW50IGJlZm9yZSB1bnBhY2tpbmcpLCBcZkJjb25maWd1cmVcZlAsIFxmQnRyaWdwcm9jXGZQLAorXGZCZGlzYXBwZWFyXGZQLCBcZkJyZW1vdmVcZlAsIFxmQnB1cmdlXGZQLgorLlJFCisuVFAgCitcZkJcLVwtc3RhdHVzXC1sb2dnZXJcZlA9XGZJY29tbWFuZFxmUAorU2VuZCBtYWNoaW5lXC1yZWFkYWJsZSBwYWNrYWdlIHN0YXR1cyBhbmQgcHJvZ3Jlc3MgaW5mb3JtYXRpb24gdG8gdGhlIHNoZWxsCitcZkljb21tYW5kXGZQJ3Mgc3RhbmRhcmQgaW5wdXQuIFRoaXMgb3B0aW9uIGNhbiBiZSBzcGVjaWZpZWQgbXVsdGlwbGUKK3RpbWVzLiBUaGUgb3V0cHV0IGZvcm1hdCB1c2VkIGlzIHRoZSBzYW1lIGFzIGluIFxmQlwtXC1zdGF0dXNcLWZkLlxmUAorLlJFCisuVFAgCitcZkJcLVwtbG9nPVxmUFxmSW5hendhXC1wbGlrdVxmUAorTG9nIHN0YXR1cyBjaGFuZ2UgdXBkYXRlcyBhbmQgYWN0aW9ucyB0byBcZklmaWxlbmFtZVxmUCwgaW5zdGVhZCBvZiB0aGUgZGVmYXVsdAorXGZJL3Zhci9sb2cvZHBrZy5sb2dcZlAuIElmIHRoaXMgb3B0aW9uIGlzIGdpdmVuIG11bHRpcGxlIHRpbWVzLCB0aGUgbGFzdAorZmlsZW5hbWUgaXMgdXNlZC4gTG9nIG1lc3NhZ2VzIGFyZSBvZiB0aGUgZm9ybSBgWVlZWVwtTU1cLUREIEhIOk1NOlNTIHN0YXR1cworXGZJc3RhdGVcZlAgXGZJcGtnXGZQIFxmSWluc3RhbGxlZFwtdmVyc2lvblxmUCcgZm9yIHN0YXR1cyBjaGFuZ2UgdXBkYXRlczsgYFlZWVlcLU1NXC1ERAorSEg6TU06U1MgXGZJYWN0aW9uXGZQIFxmSXBrZ1xmUCBcZklpbnN0YWxsZWRcLXZlcnNpb25cZlAgXGZJYXZhaWxhYmxlXC12ZXJzaW9uXGZQJyBmb3IKK2FjdGlvbnMgd2hlcmUgXGZJYWN0aW9uXGZQIGlzIG9uZSBvZiBcZkJpbnN0YWxsXGZQLCBcZkJ1cGdyYWRlXGZQLCBcZkJyZW1vdmVcZlAsCitcZkJwdXJnZVxmUDsgYW5kIGBZWVlZXC1NTVwtREQgSEg6TU06U1MgY29uZmZpbGUgXGZJZmlsZW5hbWVcZlAgXGZJZGVjaXNpb25cZlAnIGZvcgorY29uZmZpbGUgY2hhbmdlcyB3aGVyZSBcZklkZWNpc2lvblxmUCBpcyBlaXRoZXIgXGZCaW5zdGFsbFxmUCBvciBcZkJrZWVwXGZQLgorLlRQIAorXGZCXC1cLW5vXC1kZWJzaWdcZlAKK05pZSBwcvNidWplIHdlcnlmaWtvd2HmIHN5Z25hdHVyIHBha2lldHUuCisuVFAgCitcZkJcLVwtbm9cLXRyaWdnZXJzXGZQCitOaWUgdXJ1Y2hhbWlhaiC/YWRueWNoIHd5endhbGFjenkgdyB0eW0gcHJ6ZWJpZWd1IChha3R5d2FjamUgbmFkYWwgYupksQoremFyZWplc3Ryb3dhbmUpLiBQcnp5IHW/eWNpdSB3cmF6IHogXGZCXC1cLWNvbmZpZ3VyZVxmUCBcZklwYWtpZXRcZlAgbHViCitcZkJcLVwtdHJpZ2dlcnNcLW9ubHlcZlAgXGZJcGFraWV0XGZQIHNrcnlwdCAicG9zdGluc3QiIHdza2F6YW5lZ28gcGFraWV0dSBuYWRhbAorem9zdGFuaWUgdXJ1Y2hvbWlvbnksIG5hd2V0IGpltmxpIHd5bWFnYW5lIGplc3QgdHlsa28gdXJ1Y2hvbWllbmllCit3eXp3YWxhY3p5LiBVv3ljaWUgdGVqIG9wY2ppIG1vv2UgcG96b3N0YXdp5iBwYWtpZXR5IHcgbmlld7NhtmNpd3ltIHN0YW5pZQorXGZCdHJpZ2dlcnNcLWF3YWl0ZWRcZlAgbHViIFxmQnRyaWdnZXJzXC1wZW5kaW5nXGZQLiBNb79lIHRvIGJ55iBw87xuaWVqIG5hcHJhd2lvbmUKK3ByemV6IHd5d2+zYW5pZTogXGZCZHBrZyBcLVwtY29uZmlndXJlIFwtXC1wZW5kaW5nXGZQLgorLlRQIAorXGZCXC1cLXRyaWdnZXJzXGZQCitBbnVsdWplIHBvcHJ6ZWRuaWUgXGZCXC1cLW5vXC10cmlnZ2Vyc1xmUC4KKy4KKy5TSCBQTElLSQorLlRQIAorXGZJL2V0Yy9kcGtnL2Rwa2cuY2ZnXGZQCitQbGlrIGtvbmZpZ3VyYWN5am55IHphd2llcmFqsWN5IGRvbXm2bG5lIG9wY2plLgorLlRQIAorXGZJL3Zhci9sb2cvZHBrZy5sb2dcZlAKK0RvbXm2bG55IHBsaWsgbG9ndSAocGF0cnogXGZJL2V0Yy9kcGtnL2Rwa2cuY2ZnXGZQKDUpIGkgb3BjamEgXGZCXC1cLWxvZ1xmUCkuCisuUAorUG96b3N0YbNlIHBsaWtpIHd5bWllbmlvbmUgcG9uab9laiBvZG5vc3qxIHNp6iBkbyBzd29pY2ggZG9tebZsbnljaAora2F0YWxvZ/N3LiBPcGNqYSBcZkJcLVwtYWRtaW5kaXJcZlAgbW+/ZSB6bWllbmnmIGxva2FsaXphY2rqIHR5Y2ggcGxpa/N3LgorLlRQIAorXGZJL3Zhci9saWIvZHBrZy9hdmFpbGFibGVcZlAKK0xpc3RhIGRvc3TqcG55Y2ggcGFraWV083cuCisuVFAgCitcZkkvdmFyL2xpYi9kcGtnL3N0YXR1c1xmUAorU3RhbiBkb3N06nBueWNoIHBha2lldPN3LiBUZW4gcGxpayB6YXdpZXJhIGluZm9ybWFjamUgbyB0eW0sIGN6eSBkYW55IHBha2lldAoramVzdCB3eWJyYW55IGRvIHNrYXNvd2FuaWEsIGN6eSBqZXN0IHphaW5zdGFsb3dhbnkgaXRwLiBUZSBpbmZvcm1hY2plIHOxCitvcGlzYW5lIHcgc2VrY2ppIFxmQklORk9STUFDSkUgTyBQQUtJRVRBQ0hcZlAuCisKK0tvcGlhIHphcGFzb3dhIHBsaWt1IHN0YXR1c3UgamVzdCB0d29yem9uYSB3IFxmSS92YXIvYmFja3Vwc1xmUCBrYb9kZWdvCitkbmlhLiBNb79lIHRvIGJ55iBwcnp5ZGF0bmUgamW2bGkgem9zdGFuaWUgb24gdXRyYWNvbnkgbHViIHVzemtvZHpvbnkgegorcG93b2R1IGuzb3BvdPN3IHogc3lzdGVtYW1pIHBsaWvzdy4KKy5QCitQb25pv3N6ZSBwbGlraSBzsSBjeuq2Y2mxIHNrs2Fkb3exIHBha2lldPN3IGJpbmFybnljaC4gV2nqY2VqIGluZm9ybWFjamkgbworbmljaCBtb79uYSB6bmFsZbzmIHcgXGZCZGViXGZQKDUpLgorLlRQIAorXGZJY29udHJvbFxmUAorLlRQIAorXGZJY29uZmZpbGVzXGZQCisuVFAgCitcZklwcmVpbnN0XGZQCisuVFAgCitcZklwb3N0aW5zdFxmUAorLlRQIAorXGZJcHJlcm1cZlAKKy5UUCAKK1xmSXBvc3RybVxmUAorLgorLlNIIKZST0RPV0lTS08KKy5UUCAKK1xmQkhPTUVcZlAKK0lmIHNldCwgXGZCZHBrZ1xmUCB3aWxsIHVzZSBpdCBhcyB0aGUgZGlyZWN0b3J5IGZyb20gd2hpY2ggdG8gcmVhZCB0aGUgdXNlcgorc3BlY2lmaWMgY29uZmlndXJhdGlvbiBmaWxlLgorLlRQIAorXGZCVE1QRElSXGZQCitJZiBzZXQsIFxmQmRwa2dcZlAgd2lsbCB1c2UgaXQgYXMgdGhlIGRpcmVjdG9yeSBpbiB3aGljaCB0byBjcmVhdGUgdGVtcG9yYXJ5CitmaWxlcyBhbmQgZGlyZWN0b3JpZXMuCisuVFAgCitcZkJQQUdFUlxmUAorVGhlIHByb2dyYW0gXGZCZHBrZ1xmUCB3aWxsIGV4ZWN1dGUgd2hlbiBkaXNwbGF5aW5nIHRoZSBjb25mZmlsZXMuCisuVFAgCitcZkJTSEVMTFxmUAorUHJvZ3JhbSB1cnVjaGFtaWFueSBwcnpleiBcZkJkcGtnXGZQLCBnZHkgdHJ6ZWJhIHVydWNob21p5iBub3exIHNlc2rqIHBvd7Nva2kuCisuVFAgCitcZkJDT0xVTU5TXGZQCitVc3Rhd2lhIGxpY3pi6iBrb2x1bW4gdb95d2FueWNoIHByemV6IFxmQmRwa2dcZlAgdyBjemFzaWUgd3m2d2lldGxhbmlhCitzZm9ybWF0b3dhbmVnbyB0ZWtzdHUuIE9iZWNuaWUgdb95d2FuZSB0eWxrbyBwcnpleiBvcGNq6iBcLWwuCisuVFAgCitcZkJEUEtHX1NIRUxMX1JFQVNPTlxmUAorRGVmaW5lZCBieSBcZkJkcGtnXGZQIG9uIHRoZSBzaGVsbCBzcGF3bmVkIG9uIHRoZSBjb25mZmlsZSBwcm9tcHQgdG8gZXhhbWluZQordGhlIHNpdHVhdGlvbi4gQ3VycmVudCB2YWxpZCB2YWx1ZTogXGZCY29uZmZpbGVcLXByb21wdFxmUC4KKy5UUCAKK1xmQkRQS0dfQ09ORkZJTEVfT0xEXGZQCitEZWZpbmVkIGJ5IFxmQmRwa2dcZlAgb24gdGhlIHNoZWxsIHNwYXduZWQgb24gdGhlIGNvbmZmaWxlIHByb21wdCB0byBleGFtaW5lCit0aGUgc2l0dWF0aW9uLiBDb250YWlucyB0aGUgcGF0aCB0byB0aGUgb2xkIGNvbmZmaWxlLgorLlRQIAorXGZCRFBLR19DT05GRklMRV9ORVdcZlAKK0RlZmluZWQgYnkgXGZCZHBrZ1xmUCBvbiB0aGUgc2hlbGwgc3Bhd25lZCBvbiB0aGUgY29uZmZpbGUgcHJvbXB0IHRvIGV4YW1pbmUKK3RoZSBzaXR1YXRpb24uIENvbnRhaW5zIHRoZSBwYXRoIHRvIHRoZSBuZXcgY29uZmZpbGUuCisuVFAgCitcZkJEUEtHX1JVTk5JTkdfVkVSU0lPTlxmUAorWmRlZmluaW93YW5hIHByemV6IFxmQmRwa2dcZlAgdyC2cm9kb3dpc2t1IHNrcnlwdHUgb3BpZWt1bmEgcGFraWV0dSwgamFrbword2Vyc2phIGFrdHVhbG5pZSB1cnVjaG9taW9uZWogaW5zdGFuY2ppIHByb2dyYW11IFxmQmRwa2dcZlAuCisuVFAgCitcZkJEUEtHX01BSU5UU0NSSVBUX1BBQ0tBR0VcZlAKK1pkZWZpbmlvd2FuYSBwcnpleiBcZkJkcGtnXGZQIHcgtnJvZG93aXNrdSBza3J5cHR1IG9waWVrdW5hIHBha2lldHUsIGpha28gbmF6d2EKK3ByemV0d2FyemFuZWdvIHBha2lldHUuCisuVFAgCitcZkJEUEtHX01BSU5UU0NSSVBUX0FSQ0hcZlAKK1pkZWZpbmlvd2FuYSBwcnpleiBcZkJkcGtnXGZQIHcgtnJvZG93aXNrdSBza3J5cHR1IG9waWVrdW5hIHBha2lldHUsIGpha28KK2FyY2hpdGVrdHVyYSBkbGEga3TzcmVqIGJ1ZG93YW5vIHBha2lldC4KKy5UUCAKK1xmQkRQS0dfTUFJTlRTQ1JJUFRfTkFNRVxmUAorRGVmaW5lZCBieSBcZkJkcGtnXGZQIG9uIHRoZSBtYWludGFpbmVyIHNjcmlwdCBlbnZpcm9ubWVudCB0byB0aGUgbmFtZSBvZiB0aGUKK3NjcmlwdCBydW5uaW5nIChwcmVpbnN0LCBwb3N0aW5zdCwgcHJlcm0sIHBvc3RybSkuCisuCisuU0ggUFJaWUujQURZCitXebZ3aWV0bGVuaWUgd3N6eXN0a2ljaCBwYWtpZXTzdyB6d2mxemFueWNoIHogZWR5dG9yZW0gXGZCdmlcZlAoMSk6CisuYnIKKyAgICBcZkJkcGtnIFwtbCBcKGFxKnZpKlwoYXFcZlAKKy5icgorCitXebZ3aWV0bGVuaWUgaW5mb3JtYWNqaSB6IHBsaWt1IFxmSS92YXIvbGliL2Rwa2cvYXZhaWxhYmxlXGZQIG8gZHfzY2gKK3Bha2lldGFjaDoKKy5icgorICAgICBcZkJkcGtnIFwtXC1wcmludFwtYXZhaWwgZWx2aXMgdmltIHwgbGVzc1xmUAorLmJyCisKK1NhbW9kemllbG5lIHByemVzenVrYW5pZSBpbmZvcm1hY2ppIG8gcGFraWV0YWNoOgorLmJyCisgICAgIFxmQmxlc3MgL3Zhci9saWIvZHBrZy9hdmFpbGFibGVcZlAKKy5icgorCitXeWthc293YW5pZSB6YWluc3RhbG93YW5lZ28gcGFraWV0dSBlbHZpczoKKy5icgorICAgICBcZkJkcGtnIFwtciBlbHZpc1xmUAorLmJyCisKK0FieSB6YWluc3RhbG93YeYgcGFraWV0LCBuYWxlv3kgd3BpZXJ3IHpuYWxlvOYgZ28gdyBhcmNoaXd1bSBsdWIgbmEKK0NEUk9NLiBQbGlrICJhdmFpbGFibGUiIHBva2F6dWplLCC/ZSBwYWtpZXQgdmltIGplc3QgdyBzZWtjamkgImVkaXRvcnMiOgorLmJyCisgICAgIFxmQmNkIC9tZWRpYS9jZHJvbS9wb29sL21haW4vdi92aW1cZlAKKyAgICAgXGZCZHBrZyBcLWkgdmltXzQuNVwtMy5kZWJcZlAKKy5icgorCitBYnkgc3R3b3J6eeYga29waeogbG9rYWxuaWUgd3licmFueWNoIHBha2lldPN3OgorLmJyCisgICAgIFxmQmRwa2cgXC1cLWdldFwtc2VsZWN0aW9ucyA+bW9qZXBha2lldHlcZlAKKy5icgorCitUZW4gcGxpayBtb79uYSBwcnplbmlltuYgZG8gaW5uZWdvIHN5c3RlbXUgaSB6YWluc3RhbG93YeYgdGUgcGFraWV0eQorcG9wcnplejoKKy5icgorICAgICBcZkJkcGtnIFwtXC1jbGVhclwtc2VsZWN0aW9uc1xmUAorICAgICBcZkJkcGtnIFwtXC1zZXRcLXNlbGVjdGlvbnMgPG1vamVwYWtpZXR5XGZQCisuYnIKKworTmFsZb95IHphdXdhv3nmLCC/ZSB0YSBvcGNqYSBuaWUgcG93b2R1amUgemFpbnN0YWxvd2FuaWEgbHViIHVzdW5p6mNpYQorY3plZ29rb2x3aWVrLCBhbGUgdHlsa28gemF6bmFjemEgd3NrYXphbmUgcGFraWV0eSBkbyB6YWluc3RhbG93YW5pYSBisWS8Cit1c3VuaepjaWEuIERvIHBvYnJhbmlhIGkgemFpbnN0YWxvd2FuaWEgdHljaCBwYWtpZXTzdyB0cnplYmEgdb955iBpbm5lZ28KK3Byb2dyYW11LiBOYSBwcnp5a7NhZCBtb79uYSB3IHR5bSBjZWx1IHW/eeYgcG9sZWNlbmlhIFxmQmFwdFwtZ2V0Citkc2VsZWN0XC11cGdyYWRlXGZQLgorCitad3ljemFqb3dvIGRvIHd5Ym9ydSBwYWtpZXTzdyBzs3W/eSBcZkJkc2VsZWN0XGZQKDEpLCBrdPNyeSBkYWplIHdp6mtzemUKK21vv2xpd2+2Y2kgem1pYW55IGljaCBzdGFudS4KKy5icgorLgorLlNIICJET0RBVEtPV0EgRlVOS0NKT05BTE5PpsYiCitEb2RhdGtvd7EgZnVua2Nqb25hbG5vtuYgbW+/bmEgdXp5c2th5iwgaW5zdGFsdWqxYyBrdPNyeWtvbHdpZWsgegorbmFzdOpwdWqxY3ljaCBwYWtpZXTzdzogXGZCYXB0XGZQLCBcZkJhcHRpdHVkZVxmUCBvcmF6IFxmQmRlYnN1bXNcZlAuCisuCisuU0ggIlpPQkFDWiBUQUuvRSIKK1xmQmFwdGl0dWRlXGZQKDEpLCBcZkJhcHRcZlAoMSksIFxmQmRzZWxlY3RcZlAoMSksIFxmQmRwa2dcLWRlYlxmUCgxKSwgXGZCZHBrZ1wtcXVlcnlcZlAoMSksCitcZkJkZWJcZlAoNSksIFxmQmRlYlwtY29udHJvbFxmUCg1KSwgXGZCZHBrZy5jZmdcZlAoNSksIG9yYXogXGZCZHBrZ1wtcmVjb25maWd1cmVcZlAoOCkuCisuCisuU0ggQqPKRFkKK1xmQlwtXC1ub1wtYWN0XGZQIHBvZGFqZSByYWN6ZWogemJ5dCBtYbNvIHBvbW9jbnljaCBpbmZvcm1hY2ppLgorLgorLlNIIEFVVE9SWlkKK1BhdHJ6IHBsaWsgXGZJL3Vzci9zaGFyZS9kb2MvZHBrZy9USEFOS1MuZ3pcZlAgemF3aWVyYWqxY3kgbGlzdOogb3PzYiwga3TzcmUKK3ByenljenluabN5IHNp6iBkbyByb3p3b2p1IHByb2dyYW11IFxmQmRwa2dcZlAuCisuU0ggIlSjVU1BQ1pFIgorUGlvdHIgUm9zemF0eWNraSA8ZGV4dGVyQGRlYmlhbi5vcmc+LCAxOTk5CisuYnIKK0JhcnRvc3ogRmXxc2tpIDxmZW5pb0BkZWJpYW4ub3JnPiwgMjAwNC0yMDA1CisuYnIKK1JvYmVydCBMdWJlcmRhIDxyb2JlcnRAZGViaWFuLm9yZz4sIDIwMDYtMjAwOAorLmJyCitXaWt0b3IgV2FuZGFjaG93aWN6IDxzaXJ5ZXNAZ21haWwuY29tPiwgMjAwOApkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vcGwvZHBrZy5jZmcuNSBiL2Rwa2ctMS4xNi4xLjEvbWFuL3BsL2Rwa2cuY2ZnLjUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODk0MTA3MwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL3BsL2Rwa2cuY2ZnLjUKQEAgLTAsMCArMSwzNyBAQAorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlwiCisuXCIgVGhpcyBmaWxlIHdhcyBnZW5lcmF0ZWQgd2l0aCBwbzRhLiBUcmFuc2xhdGUgdGhlIHNvdXJjZSBmaWxlLgorLlwiCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuVEggZHBrZy5jZmcgNSAyMDA5XC0wOVwtMDUgIlByb2pla3QgRGViaWFuYSIgInW/eXRraSBkcGtnIgorLlNIIE5BWldBCitkcGtnLmNmZyBcLSBwbGlrIGtvbmZpZ3VyYWN5am55IHByb2dyYW11IGRwa2cKKy4KKy5TSCBPUElTCitQbGlrIHRlbiB6YXdpZXJhIGRvbXm2bG5lIG9wY2plIHByb2dyYW11IGRwa2cuIFcga2G/ZGVqIGxpbmlpIHd5bWllbmlvbmEKK2plc3QgcG9qZWR5bmN6YSBvcGNqYSwgZG9rs2FkbmllIHRha2Egc2FtYSBqYWsgbm9ybWFsbmEgb3BjamEgbGluaWkgcG9sZWNl8QorcHJvZ3JhbXUgZHBrZywgeiB3eWqxdGtpZW0gdGVnbywgv2UgbmllIHOxIHW/eXdhbmUgcG9jerF0a293ZQorbXm2bG5pa2kuIFpuYWtpIGN1ZHp5c7Nvd/N3IG90YWN6YWqxY2Ugd2FydG+2Y2kgb3Bjamkgc7EgdXN1d2FuZS4gTW+/bmEKK3W/eXdh5iBrb21lbnRhcnp5LCB6YWN6eW5harFjIGxpbmnqIHpuYWtpZW0gaGFzaCAoIlxmQiNcZlAiKS4KKy4KKy5TSCBQTElLSQorXGZJL2V0Yy9kcGtnL2Rwa2cuY2ZnLmQvWzBcLTlhXC16QVwtWl9cLV0qXGZQCisuYnIKK1xmSS9ldGMvZHBrZy9kcGtnLmNmZ1xmUAorLmJyCitcZkl+Ly5kcGtnLmNmZ1xmUAorLgorLlNIIEFVVE9SCitQYXRyeiBwbGlrIFxmSS91c3Ivc2hhcmUvZG9jL2Rwa2cvVEhBTktTLmd6XGZQIHphd2llcmFqsWN5IGxpc3TqIG9z82IsIGt083JlCitwcnp5Y3p5bmmzeSBzaeogZG8gcm96d29qdSBwcm9ncmFtdSBcZkJkcGtnXGZQLgorLgorLlNIICJaT0JBQ1ogVEFLr0UiCitcZkJkcGtnXGZQKDEpLgorLlNIICJUo1VNQUNaRSIKK1Bpb3RyIFJvc3phdHlja2kgPGRleHRlckBkZWJpYW4ub3JnPiwgMTk5OQorLmJyCitCYXJ0b3N6IEZl8XNraSA8ZmVuaW9AZGViaWFuLm9yZz4sIDIwMDQtMjAwNQorLmJyCitSb2JlcnQgTHViZXJkYSA8cm9iZXJ0QGRlYmlhbi5vcmc+LCAyMDA2LTIwMDgKKy5icgorV2lrdG9yIFdhbmRhY2hvd2ljeiA8c2lyeWVzQGdtYWlsLmNvbT4sIDIwMDgKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL3BsL2RzZWxlY3QuMSBiL2Rwa2ctMS4xNi4xLjEvbWFuL3BsL2RzZWxlY3QuMQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43ZWEzOWE0Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vcGwvZHNlbGVjdC4xCkBAIC0wLDAgKzEsNDU1IEBACisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkc2VsZWN0IDEgMjAxMVwtMDhcLTE0ICJQcm9qZWt0IERlYmlhbmEiIERlYmlhbgorLlNIIE5BWldBCitkc2VsZWN0IFwtIGtvbnNvbG93ZSBuYXJ66mR6aWUgemFyerFkemFuaWEgcGFraWV0YW1pIERlYmlhbmEKKy4KKy5TSCBTS6NBRE5JQQorXGZCZHNlbGVjdFxmUCBbXGZJb3B0aW9uXGZQLi4uXSBbXGZJYWN0aW9uXGZQXQorLgorLlNIIE9QSVMKK1xmQmRzZWxlY3RcZlAKK2plc3QgamVkbnltIHogcG9kc3Rhd293eWNoIG5hcnrqZHppIHW/eXRrb3duaWthIGRvIHphcnqxZHphbmlhCitwYWtpZXRhbWkgRGViaWFuYS4gWiBns/N3bmVnbyBtZW51IHByb2dyYW11IFxmQmRzZWxlY3RcZlAgYWRtaW5pc3RyYXRvciBzeXN0ZW11IG1vv2U6CisgXC0gemFrdHVhbGl6b3dh5iBsaXN06iBkb3N06nBueWNoIHBha2lldPN3LAorIFwtIHd5tndpZXRsaeYgc3RhbiB6YWluc3RhbG93YW55Y2ggaSBkb3N06nBueWNoIHdlcnNqaSBwYWtpZXTzdywKKyBcLSB3eWJpZXJh5iBwYWtpZXR5IGkgemFyerFkemHmIHphbGW/bm+2Y2lhbWksCisgXC0gemFpbnN0YWxvd2HmIG5vd2UgcGFraWV0eSBsdWIgemFrdHVhbGl6b3dh5iBwYWtpZXR5IGRvIG5vd3N6eWNoIHdlcnNqaS4KKy5QUAorXGZCZHNlbGVjdFxmUCBqZXN0IG5ha7NhZGuxIG5hIHBvbGVjZW5pZSBcZkJkcGtnKDEpXGZQLCBuaXNrb3BvemlvbW93ZSBuYXJ66mR6aWUKK3phcnqxZHphbmlhIHBha2lldGFtaSBEZWJpYW5hLiBKZWdvIHBvZHN0YXdvd7EgemFsZXSxIGplc3QgbWVuYWS/ZXIKK3Bls25vZWtyYW5vd2VnbyB3eWJvcnUgcGFraWV083cgeiBtb79saXdvtmNpsSB6bmFqZG93YW5pYSB6YWxlv25vtmNpIG1p6mR6eQorbmltaSBpIHJvendpsXp5d2FuaWEga29uZmxpa3Tzdy4gUHJvZ3JhbSB1cnVjaG9taW9ueSB6IHByYXdhbWkKK2FkbWluaXN0cmF0b3JhIGRhamUgbW+/bGl3b7bmIGluc3RhbG93YW5pYSwgYWt0dWFsaXpvd2FuaWEgb3JheiB1c3V3YW5pYQorcGFraWV083cuIE1vv25hIHNrb25maWd1cm93YeYgcvO/bm9yb2RuZSBtZXRvZHkgZG9zdOpwdSwgemEga3TzcnljaCBwb21vY7EKK21vv25hILZjabFnbrHmIHogcmVwb3p5dG9yaXVtIHBha2lldPN3IHphcvN3bm8gaW5mb3JtYWNqZSBvIGRvc3TqcG55Y2gKK3dlcnNqYWNoIHBha2lldPN3LCBqYWsgaSBzYW1lIHBha2lldHkgZG8gemFpbnN0YWxvd2FuaWEuIFcgemFsZb9ub7ZjaSBvZAorbWV0b2R5IGRvc3TqcHUgcmVwb3p5dG9yaWEgdGUgbW9nsSBzaeogem5hamRvd2HmIG5hIHB1YmxpY3pueWNoCitzZXJ3ZXJhY2hcLWFyY2hpd2FjaCB3IEludGVybmVjaWUsIGxva2FsbnljaCBzZXJ3ZXJhY2ggeiBhcmNoaXdhbWkgbHViIG5hCitDRFwtUk9NXC1hY2guIFphbGVjYW6xIG1ldG9ksSBkb3N06nB1IGplc3QgbWV0b2RhIFxmSWFwdFxmUCwgZG9zdGFyY3phbmEgcHJ6ZXoKK3Bha2lldCBcZkJhcHRcZlAuCisuUFAKK05vcm1hbGx5IFxmQmRzZWxlY3RcZlAgaXMgaW52b2tlZCB3aXRob3V0IHBhcmFtZXRlcnMuIEFuIGludGVyYWN0aXZlIG1lbnUgaXMKK3ByZXNlbnRlZCwgb2ZmZXJpbmcgdGhlIHVzZXIgYSBsaXN0IG9mIGFjdGlvbnMuIElmIGFuIGFjdGlvbiBpcyBnaXZlbiBhcworYXJndW1lbnQsIHRoZW4gdGhhdCBhY3Rpb24gaXMgc3RhcnRlZCBpbW1lZGlhdGVseS4gU2V2ZXJhbCBjb21tYW5kIGxpbmUKK3BhcmFtZXRlcnMgYXJlIHN0aWxsIGF2YWlsYWJsZSB0byBtb2RpZnkgdGhlIHJ1bm5pbmcgYmVoYXZpb3VyIG9mIFxmQmRzZWxlY3RcZlAKK29yIHNob3cgYWRkaXRpb25hbCBpbmZvcm1hdGlvbiBhYm91dCB0aGUgcHJvZ3JhbS4KKy4KKy5TSCBPUENKRQorQWxsIG9wdGlvbnMgY2FuIGJlIHNwZWNpZmllZCBib3RoIG9uIHRoZSBjb21tYW5kIGxpbmUgYW5kIGluIHRoZSBcZkJkc2VsZWN0XGZQCitjb25maWd1cmF0aW9uIGZpbGUgXGZJL2V0Yy9kcGtnL2RzZWxlY3QuY2ZnXGZQIG9yIHRoZSBmaWxlcyBvbiB0aGUKK2NvbmZpZ3VyYXRpb24gZGlyZWN0b3J5IFxmSS9ldGMvZHBrZy9kc2VsZWN0LmNmZy5kL1xmUC4gRWFjaCBsaW5lIGluIHRoZQorY29uZmlndXJhdGlvbiBmaWxlIGlzIGVpdGhlciBhbiBvcHRpb24gKGV4YWN0bHkgdGhlIHNhbWUgYXMgdGhlIGNvbW1hbmQgbGluZQorb3B0aW9uIGJ1dCB3aXRob3V0IGxlYWRpbmcgZGFzaGVzKSBvciBhIGNvbW1lbnQgKGlmIGl0IHN0YXJ0cyB3aXRoIGEgXGZCI1xmUCkuCisuYnIKKy5UUCAKK1xmQlwtXC1hZG1pbmRpclxmUFxmSSBrYXRhbG9nXGZQCitabWllbmlhIGthdGFsb2cgemF3aWVyYWqxY3kgcGxpa2kgIlxmSXN0YXR1c1xmUCIgLCJcZklhdmFpbGFibGVcZlAiIGkgaW5uZQorcG90cnplYm5lIHByb2dyYW1vd2kgXGZCZHBrZ1xmUC4gRG9tebZsbnltIGthdGFsb2dpZW0gamVzdCBcZkkvdmFyL2xpYi9kcGtnXGZQIGkKK3phend5Y3phaiBuaWUgcG93aW5ubyBieeYgcG90cnplYnkgem1pZW5pYW5pYSBnbyBuYSBpbm55LgorLlRQIAorXGZCXC1cLWRlYnVnXGZQXGZJIGZpbGUgXGZQfFxmSSBcZlBcZkJcLURcZlBcZklmaWxlXGZQCitUdXJuIG9uIGRlYnVnZ2luZy4gRGVidWdnaW5nIGluZm9ybWF0aW9uIGlzIHNlbnQgdG8gXGZJZmlsZVxmUC4KKy5UUCAKK1xmQlwtXC1leHBlcnRcZlAKK1ezsWN6YSB0cnliIGRvtndpYWRjem9uZWdvIHW/eXRrb3duaWthIGkgbmEgcHJ6eWuzYWQgbmllIHd5tndpZXRsYSBt6mN6sWN5Y2gKK2luZm9ybWFjamkgeiBwb21vY7EuCisuVFAgCitcZkJcLVwtY29sb3VyXGZQfFxmQlwtXC1jb2xvclxmUCBcZkljeuq25l9la3JhbnU6XGZQW1xmSXBpZXJ3c3pvcGxhblxmUF0sW1xmSXSzb1xmUF1bXGZJOmF0clxmUFtcZkkrYXRyKy4uXGZQXV0KK1VzdGF3aWEga29sb3J5IGVrcmFudS4gRHppYbNhIHR5bGtvIHBvZCB3YXJ1bmtpZW0sIL9lIHRlcm1pbmFsIG9ic7N1Z3VqZQora29sb3J5LiBUYSBvcGNqYSBtb79lIHpvc3Rh5iB1v3l0YSB3aWVsZSByYXp5IChpIG5hamxlcGllaiBqZWogdb95d2HmIHcKK1xmSWRzZWxlY3QuY2ZnXGZQKS4gS2G/ZGUgdb95Y2llIHptaWVuaWEga29sb3IgKGkgb3Bjam9uYWxuaWUgaW5uZSBhdHJ5YnV0eSkKK2pha2llarYgY3rqtmNpIGVrcmFudS4gQ3rqtmNpIGVrcmFudSBzsSBuYXN06nB1arFjZSAob2QgZ/NyeSBkbyBkb7N1KToKKy5SUworLlRQIAorXGZCdGl0bGVcZlAKK1R5dHWzIGVrcmFudS4KKy5UUCAKK1xmQmxpc3RoZWFkXGZQCitMaW5pYSBuYWez83drYSBuYWQgbGlzdLEgcGFraWV083cuCisuVFAgCitcZkJsaXN0XGZQCitQcnpld2lqYW5hIGxpc3RhIHBha2lldPN3IChpIHLzd25pZb8gbmlla3TzcmUgdGVrc3R5IHBvbW9jeSkuCisuVFAgCitcZkJsaXN0c2VsXGZQCitQb2S2d2lldGxvbnkgZWxlbWVudCB6IGxpc3R5LgorLlRQIAorXGZCcGtnc3RhdGVcZlAKK1cgbGm2Y2llIHBha2lldPN3IFwtIHRla3N0IG96bmFjemFqsWN5IG9iZWNueSBzdGFuIGthv2RlZ28gcGFraWV0dS4KKy5UUCAKK1xmQnBrZ3N0YXRlc2VsXGZQCitXIGxptmNpZSBwYWtpZXTzdyBcLSB0ZWtzdCBvem5hY3pharFjeSBvYmVjbnkgc3RhbiBwb2S2d2lldGxvbmVnbyBwYWtpZXR1LgorLlRQIAorXGZCaW5mb2hlYWRcZlAKK0xpbmlhIG5hZ7Pzd2thLCB3IGt083JlaiB3ebZ3aWV0bG9ueSBqZXN0IHN0YW4gb2JlY25pZSB6YXpuYWN6b25lZ28gcGFraWV0dS4KKy5UUCAKK1xmQmluZm9kZXNjXGZQCitLcvN0a2kgb3BpcyBwYWtpZXR1LgorLlRQIAorXGZCaW5mb1xmUAorVb95d2FuZSBkbyB3ebZ3aWV0bGFuaWEgaW5mb3JtYWNqaSBvIHBha2llY2llIHRha2ljaCBqYWsgamVnbyBvcGlzLgorLlRQIAorXGZCaW5mb2Zvb3RcZlAKK09zdGF0bmlhIGxpbmlhIGVrcmFudSB6IHd5Ym9yZW0gcGFraWV083cuCisuVFAgCitcZkJxdWVyeVxmUAorVb95d2FuZSBkbyB3ebZ3aWV0bGFuaWEgbGluaWkgemFweXRh8S4KKy5UUCAKK1xmQmhlbHBzY3JlZW5cZlAKK0tvbG9yIGVrcmFu83cgcG9tb2N5LgorLlJFCisuUAorUG8gY3rqtmNpIGVrcmFudSBuYXN06nB1amUgZHd1a3JvcGVrIGkgc3BlY3lmaWthY2phIGtvbG9ydS4gTW+/bmEgb2tyZbZsaeYKK2tvbG9yIGN6Y2lvbmVrLCBrb2xvciB0s2EgYWxibyBvYmEgdGUga29sb3J5LCB1bmlld2G/bmlharFjIGRvbXm2bG5lCit3YXJ0b7ZjaSBrb2xvcvN3LiBOYWxlv3kgdb95d2HmIHN0YW5kYXJkb3d5Y2ggbmF6dyBrb2xvcvN3IHogYmlibGlvdGVraQorY3Vyc2VzLgorLlAKK09wY2pvbmFsbmllLCBwbyBzcGVjeWZpa2Fjamkga29sb3LzdyBtb79uYSBkb2Rh5iBqZXN6Y3plIGplZGVuIGR3dWtyb3BlaywgYQorcG8gbmltIG9waXMgYXRyeWJ1dPN3LiBKZXN0IHRvIGxpc3RhIHphd2llcmFqsWNhIGplZGVuIGx1YiB3aepjZWogYXRyeWJ1dPN3CitvZGR6aWVsb255Y2ggem5ha2FtaSBwbHVzYSAoIisiKS4gRG9zdOpwbmUgYXRyeWJ1dHkgKG5pZSB3c3p5c3RraWUgZHppYbNharEKK25hIHdzenlzdGtpY2ggdGVybWluYWxhY2gpIHRvOiBub3JtYWwgKG5vcm1hbG55KSwgc3RhbmRvdXQgKHd5cvO/bmlvbnkpLAordW5kZXJsaW5lIChwb2RrcmW2bG9ueSksIHJldmVyc2UgKG9kd3LzY29ueSksIGJsaW5rIChtaWdharFjeSksIGJyaWdodAorKGphc255KSwgZGltIChjaWVtbnkpLCBib2xkIChwb2dydWJpb255KS4KKy5UUCAKK1xmQlwtXC1oZWxwXGZQCitXebZ3aWV0bGEga3LzdGuxIGluZm9ybWFjauogbyBwb21vY3kgaSBwb215tmxuaWUga2/xY3p5IGR6aWGzYW5pZS4KKy5UUCAKK1xmQlwtXC12ZXJzaW9uXGZQCitXebZ3aWV0bGEgaW5mb3JtYWNq6iBvIHdlcnNqaSBpIHBvbXm2bG5pZSBrb/FjenkgZHppYbNhbmllLgorLgorLlNIIEFLQ0pFCitXaGVuIFxmQmRzZWxlY3RcZlAgaXMgc3RhcnRlZCBpdCBjYW4gcGVyZm9ybSB0aGUgZm9sbG93aW5nIGFjdGlvbnMsIGVpdGhlcgorZGlyZWN0bHkgaWYgaXQgd2FzIHNwZWNpZmllZCBvbiB0aGUgY29tbWFuZCBsaW5lIG9yIGJ5IHByb21wdGluZyB0aGUgdXNlcgord2l0aCBhIG1lbnUgb2YgYXZhaWxhYmxlIGFjdGlvbnMgaWYgcnVubmluZyBpbnRlcmFjdGl2ZWx5OgorLlNTICJhY2Nlc3MgKGRvc3TqcCkiCitXeWJpZXJhIG1ldG9k6iBkb3N06nB1IHW/eXdhbrEgZG8gem5hbGV6aWVuaWEgcmVwb3p5dG9yaXVtIHBha2lldPN3LgorLnNwCitCeSBkZWZhdWx0LCBcZkJkc2VsZWN0XGZQIHByb3ZpZGVzIHNldmVyYWwgbWV0aG9kcyBzdWNoIGFzIFxmSWNkcm9tXGZQLAorXGZJbXVsdGlfY2RcZlAsIFxmSW5mc1xmUCwgXGZJbXVsdGlfbmZzXGZQLCBcZkloYXJkZGlza1xmUCwgXGZJbW91bnRlZFxmUCwgXGZJbXVsdGlfbW91bnRcZlAsCitcZklmbG9wcHlcZlAgb3IgXGZJZnRwXGZQLCBidXQgb3RoZXIgcGFja2FnZXMgbWF5IHByb3ZpZGUgYWRkaXRpb25hbCBtZXRob2RzLAorZWcuIHRoZSBcZklhcHRcZlAgYWNjZXNzIG1ldGhvZCBwcm92aWRlZCBieSB0aGUgXGZCYXB0XGZQIHBhY2thZ2UuCisuc3AKK1phbGVjYW5lIGplc3Qgdb95d2FuaWUgbWV0b2R5IFxmSWFwdFxmUC4KKy5zcAorLlNTICJ1cGRhdGUgKGFrdHVhbGl6YWNqYSkiCitBa3R1YWxpenVqZSBiYXrqIGRvc3TqcG55Y2ggcGFraWV083cuCisuc3AKK6ZjabFnYSBsaXN06iBkb3N06nBueWNoIHdlcnNqaSBwYWtpZXTzdyB6IHJlcG96eXRvcml1bSBwYWtpZXTzdywKK3Nrb25maWd1cm93YW5lZ28gemEgcG9tb2OxIHd5YnJhbmVqIG1ldG9keSBkb3N06nB1LCBpIGFrdHVhbGl6dWplIGJheuoKK3Bha2lldPN3IHByb2dyYW11IGRwa2cuIExpc3R5IHBha2lldPN3IHOxIHp3eWN6YWpvd28gemF3YXJ0ZSB3IHJlcG96eXRvcml1bQordyBwbGlrYWNoIG5hendhbnljaCBcZklQYWNrYWdlc1xmUCBsdWIgXGZJUGFja2FnZXMuZ3pcZlAuIFBsaWtpIHRlIG1vZ7Egem9zdGHmCit3eWdlbmVyb3dhbmUgcHJ6ZXogb3BpZWt1bvN3IHJlcG96eXRvcmnzdyB6YSBwb21vY7EgcHJvZ3JhbXUKK1xmQmRwa2dcLXNjYW5wYWNrYWdlc1xmUCgxKS4KKy5zcAorU3pjemVn87N5IGFrdHVhbGl6YWNqaSB6YWxlv7Egb2QgaW1wbGVtZW50YWNqaSBtZXRvZHkgZG9zdOpwdS4gWmF6d3ljemFqIHRlbgorcHJvY2VzIGplc3QgYmFyZHpvIHByb3N0eSBpIG5pZSB3eW1hZ2EgaW50ZXJha2NqaSB6IHW/eXRrb3duaWtpZW0uCisuc3AKKy5TUyAic2VsZWN0ICh3eWLzcikiCitXebZ3aWV0bGEgaW5mb3JtYWNqZSBvIHd5Ym9yemUgcGFraWV083cgaSB6YWxlv25vtmNpYWNoIG9yYXogemFyerFkemEgbmltaS4KKy5zcAorSmVzdCB0byBns/N3bmEgZnVua2NqYSBwcm9ncmFtdSBcZkJkc2VsZWN0XGZQLiBXIGVrcmFuaWUgd3lib3J1IHBha2lldPN3Cit1v3l0a293bmlrIG1vv2UgcHJ6ZWdssWRh5iBsaXN06iBkb3N06nBueWNoIGkgemFpbnN0YWxvd2FueWNoCitwYWtpZXTzdy4gSmW/ZWxpIHByb2dyYW0gZHppYbNhIHogdXByYXduaWVuaWFtaSBhZG1pbmlzdHJhdG9yYSwgbW+/bGl3ZSBqZXN0CitpbnRlcmFrdHl3bmUgem1pZW5pYW5pZSBzdGFudSBwYWtpZXTzdy4gXGZCZHNlbGVjdFxmUCC2bGVkemkgd3CzeXcgdHljaCB6bWlhbgorbmEgcGFraWV0eSB6YWxlv25lLgorLnNwCitKZbZsaSB6b3N0YW5pZSB3eWtyeXR5IGtvbmZsaWt0IGx1YiBuaWVzcGWzbmlvbmEgemFsZb9ub7bmLCB3ebZ3aWV0bGFueSBqZXN0Citla3JhbiByb3p3abF6eXdhbmlhIHphbGW/bm+2Y2kgcG9rYXp1arFjeSBsaXN06iBwYWtpZXTzdywgcG93b2R1arFjeWNoCitrb25mbGlrdCBsdWIgbmllc3Bls25pb26xIHphbGW/bm+25iBpIGRsYSBrYb9kZWdvIHd5tndpZXRsb25lZ28gcGFraWV0dSBcLQorcHJ6eWN6eW7qLCBkbGEga3TzcmVqIGplc3Qgb24gd3m2d2lldGxvbnkuIFW/eXRrb3duaWsgbW+/ZSB6YXN0b3Nvd2HmIHNp6iBkbworc3VnZXN0aWkgemFwcm9wb25vd2FueWNoIHByemV6IFxmQmRzZWxlY3RcZlAsIHVuaWV3Yb9uaeYgamUgbHViIHd5Y29mYeYgc2nqIHplCit6bWlhbiwgd7OxY3pharFjIHcgdG8gcGFraWV0eSwga3TzcmUgc3Bvd29kb3dhs3kgbmllc3Bls25pb25lIHphbGW/bm+2Y2kgbHViCitrb25mbGlrdHkuCisuc3AKK1W/eXdhbmllIGVrcmFueSBkbyB6YXJ6sWRhbmlhIGludGVyYWt0eXdueW0gd3lib3JlbSBwYWtpZXTzdyBqZXN0CitzemN6ZWfzs293byB3eWqxtm5pb25lIHBvbmm/ZWouCisuc3AKKy5TUyAiaW5zdGFsbCAoaW5zdGFsYWNqYSkiCitJbnN0YWx1amUgd3licmFuZSBwYWtpZXR5LgorLnNwCitaYSBwb21vY7Egc2tvbmZpZ3Vyb3dhbmVqIG1ldG9keSBkb3N06nB1IHpvc3RhbrEgeiBvZHBvd2llZG5pY2ggcmVwb3p5dG9yafN3Citwb2JyYW5lIHBha2lldHkgZG8gemFpbnN0YWxvd2FuaWEgbHViIHpha3R1YWxpem93YW5pYSB6YSBwb21vY7EgcHJvZ3JhbXUKK1xmQmRwa2dcZlAuIFphbGW/bmllIG9kIGltcGxlbWVudGFjamkgdGVqIG1ldG9keSBkb3N06nB1LCBwYWtpZXR5IG1vZ7Egem9zdGHmCitwb2JyYW5lIHdjemW2bmllaiBcLSBwcnplZCBpbnN0YWxhY2qxIFwtIGx1YiB3dGVkeSwgZ2R5IGLqZLEKK3BvdHJ6ZWJuZS4gTmlla3TzcmUgbWV0b2R5IGRvc3TqcHUgcvN3bmllvyB1c3V3YWqxIHBha2lldHkgemF6bmFjem9uZSBkbwordXN1bmnqY2lhLgorLnNwCitKZb9lbGkgcG9kY3phcyBpbnN0YWxhY2ppIHd5c3SxcGkgYrOxZCwgcG9sZWNhIHNp6iB1cnVjaG9taWVuaWUgYWtjamkKK2luc3RhbGwgamVzemN6ZSByYXouIFcgd2nqa3N6b7ZjaSBwcnp5cGFka/N3LCBwcm9ibGVteSBzYW1lIHpuaWtusSBsdWIKK3pvc3RhbrEgcm96d2mxemFuZS4gSmW2bGkgcHJvYmxlbSBwb3pvc3RhamUgbHViIHByemVwcm93YWR6b25hIGluc3RhbGFjamEKK2J5s2EgbmllcHJhd2lks293YSwgcHJvc2lteSBvIHpiYWRhbmllIHByenljenluIHByb2JsZW11IGkgb2tvbGljem5vtmNpIGplZ28KK3d5c3SxcGllbmlhIGkgbyB3eXOzYW5pZSByZXBvcnR1IG8gYrPqZHppZSBkbyBzeXN0ZW11ILZsZWR6ZW5pYSBis+pk83cKK0RlYmlhbmEuIEluc3RydWtjamUsIGphayB0byB6cm9iaeYsIG1vv25hIHpuYWxlvOYgcG9kIGFkcmVzZW0KK2h0dHA6Ly9idWdzLmRlYmlhbi5vcmcvIGFsYm8gdyBkb2t1bWVudGFjamkgcHJvZ3JhbfN3IFxmQmJ1Z1xmUCgxKSBsdWIKK1xmQnJlcG9ydGJ1Z1xmUCgxKSwgamW/ZWxpIHOxIHphaW5zdGFsb3dhbmUuCisuc3AKK1N6Y3plZ/OzeSBkb3R5Y3qxY2UgYWtjamkgaW5zdGFsYWNqaSB6YWxlv7Egb2QgaW1wbGVtZW50YWNqaSBtZXRvZHkKK2Rvc3TqcHUuIFBvZGN6YXMgaW5zdGFsYWNqaSwga29uZmlndXJhY2ppIGN6eSB1c3V3YW5pYSBwYWtpZXTzdyBtb79lIGJ55gorcG90cnplYm5hIGludGVyYWtjamEgeiB1v3l0a293bmlraWVtLiBaYWxlv3kgdG8gb2Qgc2tyeXB083cgb3BpZWt1bmEKK3Bha2lldHUuIE5pZWt083JlIHBha2lldHkgdb95d2FqsSBiaWJsaW90ZWtpIFxmQmRlYmNvbmZcZlAoMSksIGNvIHBvendhbGEgbmEKK2JhcmR6aWVqIGVsYXN0eWN6brEgbHViIG5hd2V0IHcgcGWzbmkgYXV0b21hdHljem6xIGluc3RhbGFjauogcGFraWV0dS4KKy5zcAorLlNTICJjb25maWcgKGtvbmZpZ3Vyb3dhbmllKSIKK0tvbmZpZ3VydWplIHdzenlzdGtpZSBwYWtpZXR5IHBvcHJ6ZWRuaW8gemFpbnN0YWxvd2FuZSwgYWxlIG5pZSBkbyBrb/FjYQorc2tvbmZpZ3Vyb3dhbmUuCisuc3AKKy5TUyAicmVtb3ZlICh1c3V3YW5pZSkiCitVc3V3YSBsdWIgY3p5tmNpIHRlIHphaW5zdGFsb3dhbmUgcGFraWV0eSwga3TzcmUgc7EgemF6bmFjem9uZSBkbyB1c3VuaepjaWEuCisuc3AKKy5TUyAicXVpdCAod3lqtmNpZSkiCitXeWq2Y2llIHogXGZCZHNlbGVjdFxmUC4KKy5zcAorV3ljaG9kemkgeiBwcm9ncmFtdSB6IHplcm93eW0ga29kZW0gYrPqZHUgKHBvbXm2bG5pZSkuCisuc3AKKy4KKy5TSCAiWmFyerFkemFuaWUgd3lib3JlbSBwYWtpZXTzdyIKKy5zcAorLlNTIFdzdOpwCisuc3AKK1xmQmRzZWxlY3RcZlAgb2Rrcnl3YSBwcnplZCBhZG1pbmlzdHJhdG9yZW0gbmlla3TzcmUgerNvv29ub7ZjaSB3abG/sWNlIHNp6iB6Cit6YXJ6sWR6YW5pZW0gZHW/eW0gemJpb3JlbSBwYWtpZXTzdyB6IHdpZWxvbWEgemFsZb9ub7ZjaWFtaSBtaepkenkgbmltaS4gRGxhCit1v3l0a293bmlrYSwga3TzcnkgbmllIGplc3QgemF6bmFqb21pb255IHoga29uY2VwY2phbWkgRGViaWFub3dlZ28gc3lzdGVtdQoremFyerFkemFuaWEgcGFraWV0YW1pLCBtb79lIHRvIGJ55iBiYXJkem8gcHJ6eXSzYWN6YWqxY2UuIENob2NpYb8gY2VsZW0KK3Byb2dyYW11IFxmQmRzZWxlY3RcZlAgamVzdCB1s2F0d2llbmllIHphcnqxZHphbmlhIGkgYWRtaW5pc3Ryb3dhbmlhIHBha2lldGFtaSwKK2plc3Qgb24gdHlsa28gaW5zdHJ1bWVudGVtIHOzdb+xY3ltIGRvIHRlZ28gaSBuaWUgbW+/ZSB3IHd5c3RhcmN6YWqxY3ltCitzdG9wbml1IHphc3SxcGnmIHVtaWVq6nRub7ZjaSBpIHdpZWR6eSBhZG1pbmlzdHJhdG9yYS4gVb95dGtvd25payBwb3dpbmllbgorYnnmIHphem5ham9taW9ueSB6IGtvbmNlcGNqYW1pIGxlv7FjeW1pIHUgcG9kc3RhdyBzeXN0ZW11IHBha2lldPN3CitEZWJpYW5hLiBXIHJhemllIGpha2ljaGtvbHdpZWsgd7F0cGxpd2+2Y2ksIG5hbGW/eSBqZSBzcHJhd2R6aeYgdworcG9kcupjem5pa3UgXGZCZHBrZ1xmUCgxKSBvcmF6IHcgcG9kcupjem5pa3UgIlphc2FkeSBwb2xpdHlraSBEZWJpYW5hIiB6YXdhcnR5bQordyBwYWtpZWNpZSBcZkJkZWJpYW5cLXBvbGljeVxmUC4KKy5zcAorSmW/ZWxpIFxmQmRzZWxlY3RcZlAgbmllIGJ5syB1cnVjaG9taW9ueSB3IHRyeWJpZSBla3NwZXJ0YSAoZXhwZXJ0KSBsdWIgdHJ5YmllCitwaWxueW0gKGltbWVkaWF0ZSksIHRvIHBvIHd5YnJhbml1IGFrY2ppIHogbWVudSwgd3m2d2lldGxhbnkgamVzdCBla3JhbgorcG9tb2N5LiBVv3l0a293bmlrIFxmSXBvd2luaWVuXGZQIGRva7NhZG5pZSBwcnplY3p5dGHmIHdzenlzdGtpZSBpbmZvcm1hY2plCit6YXdhcnRlIHcgZWtyYW5hY2ggcG9tb2N5LCBraWVkeSBzaeogcG9qYXdpYWqxLiBFa3JhbnkgcG9tb2N5IG1vZ7Egem9zdGHmCit3ebZ3aWV0bG9uZSB3IGRvd29sbnltIG1vbWVuY2llIHByemV6IHd5YnJhbmllIGtsYXdpc3phIFxmQiI/IlxmUC4KKy5zcAorLlNTICJVa7NhZCBla3JhbnUiCisuc3AKK0VrcmFuIHd5Ym9ydSBwYWtpZXTzdyBkb215tmxuaWUgcG9kemllbG9ueSBqZXN0IG5hIGfzcm6xIGkgZG9sbrEgcG+zb3fqLiBXCitn83JuZWogcG+zb3dpZSB3ebZ3aWV0bG9uYSBqZXN0IGxpc3RhIHBha2lldPN3LiBaYSBwb21vY7EgcGFza2Egd3lib3J1IG1vv25hCit3eWJyYeYgcG9qZWR5bmN6eSBwYWtpZXQgbHViIGdydXDqIHBha2lldPN3LCBwcnpleiB6YXpuYWN6ZW5pZSBuYWez83drYQorZ3J1cHkgcGFraWV083cuIFcgZG9sbmVqIHBvs293aWUgZWtyYW51IHBva2F6YW5lIHOxIHN6Y3plZ/Ozb3dlIGluZm9ybWFjamUKK25hIHRlbWF0IHBha2lldHUgb2JlY25pZSB3eWJyYW5lZ28gdyBn83JuZWogcG+zb3dpZSBla3JhbnUuIFR5cCB0eWNoCitpbmZvcm1hY2ppIG1vv2UgYnnmIHLzv255LgorLnNwCitOYWNptm5p6mNpZSBrbGF3aXN6YSBcZkIiSSJcZlAgcHJ6ZbOxY3phIHBvbWnqZHp5IHBls25vZWtyYW5vd3ltIHdpZG9raWVtCitwYWtpZXTzdywgcG93aeprc3pvbnltIHdpZG9raWVtIHN6Y3plZ/Ozb3d5Y2ggaW5mb3JtYWNqaSBvIHBha2llY2llIGFsYm8KK2R6aWVsaSBla3JhbiBuYSBwb7Nvd+ouCisuc3AKKy5TUyAiV2lkb2sgc3pjemVn87Nvd3ljaCBpbmZvcm1hY2ppIG8gcGFraWVjaWUiCisuc3AKK1cgd2lkb2t1IHN6Y3plZ/Ozb3d5Y2ggaW5mb3JtYWNqaSBvIHBha2llY2llIGRvbXm2bG5pZSB3ebZ3aWV0bG9ueSBqZXN0IHJvenN6ZXJ6b255CitvcGlzIHBha2lldHUgb2JlY25pZSB3eWJyYW5lZ28gdyBsabZjaWUgcGFraWV083cuCitUeXAgdHljaCBpbmZvcm1hY2ppIG1vv2UgYnnmIHptaWVuaW9ueSB6YSBwb21vY7Ega2xhd2lzemEgXGZCImkiXGZQLiBNb79saXdlIHd5Ym9yeSBzsQorbmFzdOpwdWqxY2U6CisgXC0gcG9zemVyem9ueSBvcGlzCisgXC0gaW5mb3JtYWNqYSBvIHphaW5zdGFsb3dhbmVqIHdlcnNqaSBwYWtpZXR1CisgXC0gaW5mb3JtYWNqYSBvIGRvc3TqcG5laiB3ZXJzamkgcGFraWV0dQorLnNwCitFa3JhbiByb3p3abF6eXdhbmlhIHphbGW/bm+2Y2kgZGFqZSB0YWu/ZSBtb79saXdvtuYgcG9kZWpyemVuaWEgb2tyZbZsb255Y2gKK25pZXNwZbNuaW9ueWNoIHphbGW/bm+2Y2kgYrFkvCBrb25mbGlrdPN3IHp3abF6YW55Y2ggeiBwYWtpZXRlbSwgdGouIHR5Y2gKK3phbGW/bm+2Y2ksIGt083JlIHNwb3dvZG93YbN5IHd5bGlzdG93YW5pZSB0ZWdvIHBha2lldHUuCisuc3AKKy5TUyAiTGlzdGEgc3RhbvN3IHBha2lldPN3IgorLnNwCitXIGez83dueW0gZWtyYW5pZSB3eWJvcnUgcGFraWV083cgd3m2d2lldGxvbmEgamVzdCBsaXN0YSB3c3p5c3RraWNoIHBha2lldPN3Cit6bmFueWNoIHN5c3RlbW93aSB6YXJ6sWR6YW5pYSBwYWtpZXRhbWkgRGViaWFuYS4gU7EgdG8gemFy83dubyBwYWtpZXR5Cit6YWluc3RhbG93YW5lIHcgc3lzdGVtaWUsIGphayBpIHBha2lldHkgemF3YXJ0ZSB3IGJhemllIGRvc3TqcG55Y2ggcGFraWV083cuCisuc3AKK0RsYSBrYb9kZWdvIHBha2lldHUgcG9rYXphbmUgc7E6IGplZ28gc3RhbiwgcHJpb3J5dGV0LCBzZWtjamEsIG51bWVyIHdlcnNqaQoremFpbnN0YWxvd2FuZWogaSBudW1lciB3ZXJzamkgZG9zdOpwbmVqLCBuYXp3YSBwYWtpZXR1IG9yYXoga3LzdGtpIG9waXMgXC0KK3dzenlzdGtvIHcgamVkbmVqIGxpbmlpLiBOYWNpc2tharFjIGtsYXdpc3ogXGZCIlYiXGZQLCBtb79uYSB3s7FjemHmIGkgd3mzsWN6YeYKK3d5tndpZXRsYW5pZSBpbmZvcm1hY2ppIG8gbnVtZXJ6ZSB6YWluc3RhbG93YW5laiBpIGRvc3TqcG5laiB3ZXJzamkKK3Bha2lldHUuIE5hY2m2bmnqY2llIGtsYXdpc3phIFxmQiJ2IlxmUCBwb3dvZHVqZSBwcnpls7FjemFuaWUgcG9taepkenkKK3d5tndpZXRsYW5pZW0gcm96d2xla7NlZ28gaSBza3LzY29uZWdvIG9waXN1IHN0YW51IHBha2lldHUuIFNrcvNjb255IG9waXMKK3N0YW51IGplc3Qgd3m2d2lldGxhbnkgZG9tebZsbmllLgorLnNwCitOYSBza3LzY29ueSBvcGlzIHN0YW51IHBha2lldHUgc2uzYWRharEgc2nqIGN6dGVyeSBjeuq2Y2k6IGZsYWdhIGKz6mR1LAora3TzcmEgbm9ybWFsbmllIHBvd2lubmEgYnnmIGN6eXN0YSwgb2JlY255IHN0YW4gemFpbnN0YWxvd2FuaWEgcGFraWV0dSwKK3BvcHJ6ZWRuaSBzdGFuIHd5Ym9ydSBwYWtpZXR1IG9yYXogb2JlY255IHN0YW4gd3lib3J1IHBha2lldHUuIER3aWUgcGllcndzemUKK2N66rZjaSBzsSB6d2mxemFuZSB6IG9iZWNueW0gc3RhbmVtIHBha2lldHUsIGtvbGVqbmUgZHdpZSBcLSB6d2mxemFuZSB6Cit3eWJvcmFtaSBkb2tvbmFueW1pIHByemV6IHW/eXRrb3duaWthLgorLnNwCitPem5hY3plbmlhIHW/eXdhbmUgdyBza3LzY29ueW0gb3Bpc2llIHN0YW51IHBha2lldHUgc7EgbmFzdOpwdWqxY2U6CisgRmxhZ2EgYrPqZHU6CisgIFxmSXB1c3R5XGZQICAgYmV6IGKz6mR1OworICBcZkJSXGZQICAgICAgIHBvd2G/bnkgYrOxZCwgcGFraWV0IHd5bWFnYSByZWluc3RhbGFjamk7CisgU3RhbiBpbnN0YWxhY2ppOgorICBcZklwdXN0eVxmUCAgIG5pZSB6YWluc3RhbG93YW55OworICBcZkIqXGZQICAgICAgIHcgcGWzbmkgemFpbnN0YWxvd2FueSBpIHNrb25maWd1cm93YW55OworICBcZkJcLVxmUCAgICAgICBuaWUgemFpbnN0YWxvd2FueSwgYWxlIG1vZ7N5IHBvem9zdGHmIHBsaWtpIGtvbmZpZ3VyYWN5am5lOworICBcZkJVXGZQICAgICAgIHJvenBha293YW55LCBhbGUgamVzemN6ZSBuaWUgc2tvbmZpZ3Vyb3dhbnk7CisgIFxmQkNcZlAgICAgICAgdyBwb7Nvd2llIHNrb25maWd1cm93YW55ICh3eXN0sXBpsyBis7FkKTsKKyAgXGZCSVxmUCAgICAgICB3IHBvs293aWUgemFpbnN0YWxvd2FueSAod3lzdLFwabMgYrOxZCkuCisgT2JlY25lIGkgv7FkYW5lIHd5Ym9yeToKKyAgXGZCKlxmUCAgICAgICB6YXpuYWN6b255IGRvIHphaW5zdGFsb3dhbmlhIGx1YiB6YWt0dWFsaXpvd2FuaWE7CisgIFxmQlwtXGZQICAgICAgIHphem5hY3pvbnkgZG8gdXN1bmnqY2lhIHogcG96b3N0YXdpZW5pZW0gcGxpa/N3IGtvbmZpZy47CisgIFxmQj1cZlAgICAgICAgd3N0cnp5bWFueTogcGFraWV0IG5pZSBi6mR6aWUgcHJ6ZXR3YXJ6YW55OworICBcZkJfXGZQICAgICAgIHphem5hY3pvbnkgZG8gdXN1bmnqY2lhIGkgd3ljenlzemN6ZW5pYSBwbGlr83cga29uZmlnLjsKKyAgXGZCblxmUCAgICAgICBwYWtpZXQgamVzdCBub3d5IGkgamVzemN6ZSBuaWUgYnmzIHpuYWN6b255LgorLnNwCisuU1MgIlByemVzdXdhbmllIGt1cnNvcmEgaSBla3JhbnUiCisuc3AKK0VrcmFuIHd5Ym9ydSBwYWtpZXTzdyBvcmF6IGVrcmFuIHJvendpsXp5d2FuaWEgemFsZb9ub7ZjaSBtb79uYSBwcnplc3V3YeYKK3W/eXdharFjIHBvbGVjZfEgcHJ6eXBpc2FueWNoIGRvIG5hc3TqcHVqsWN5Y2gga2xhd2lzenk6CisuYnIKKyAgXGZCcCwgVXAsIGtcZlAgICAgICAgICAgIHByemVzdW5p6mNpZSBwYXNrYSBrdXJzb3JhIHcgZ/Ny6gorICBcZkJuLCBEb3duLCBqXGZQICAgICAgICAgcHJ6ZXN1bmnqY2llIHBhc2thIGt1cnNvcmEgdyBk87MKKyAgXGZCUCwgUGd1cCwgQmFja3NwYWNlXGZQIHByemVzdW5p6mNpZSBsaXN0eSAxIHN0cm9u6iB3IGfzcuoKKyAgXGZCTiwgUGdkbiwgU3BhY2VcZlAgICAgIHByemVzdW5p6mNpZSBsaXN0eSAxIHN0cm9u6iB3IGTzsworICBcZkJecFxmUCAgICAgICAgICAgICAgICAgcHJ6ZXN1bmnqY2llIGxpc3R5IDEgbGluaeogdyBn83LqCisgIFxmQl5uXGZQICAgICAgICAgICAgICAgICBwcnplc3VuaepjaWUgbGlzdHkgMSBsaW5p6iB3IGTzsworICBcZkJ0LCBIb21lXGZQICAgICAgICAgICAgc2tvayBuYSBwb2N6sXRlayBsaXN0eQorICBcZkJlLCBFbmRcZlAgICAgICAgICAgICAgc2tvayBuYSBrb25pZWMgbGlzdHkKKyAgXGZCdVxmUCAgICAgICAgICAgICAgICAgIHByemVzdW5p6mNpZSBpbmZvcm1hY2ppIDEgc3Ryb27qIHcgZ/Ny6gorICBcZkJkXGZQICAgICAgICAgICAgICAgICAgcHJ6ZXN1bmnqY2llIGluZm9ybWFjamkgMSBzdHJvbuogdyBk87MKKyAgXGZCXnVcZlAgICAgICAgICAgICAgICAgIHByemVzdW5p6mNpZSBpbmZvcm1hY2ppIDEgbGluaeogdyBn83LqCisgIFxmQl5kXGZQICAgICAgICAgICAgICAgICBwcnplc3VuaepjaWUgaW5mb3JtYWNqaSAxIGxpbmnqIHcgZPOzCisgIFxmQkIsIExlZnRcLWFycm93XGZQICAgICAgcHJ6ZXN1bmnqY2llIGVrcmFudSBvIDEvMyBla3JhbnUgdyBsZXdvCisgIFxmQkYsIFJpZ2h0XC1hcnJvd1xmUCAgICAgcHJ6ZXN1bmnqY2llIGVrcmFudSBvIDEvMyBla3JhbnUgdyBwcmF3bworICBcZkJeYlxmUCAgICAgICAgICAgICAgICAgcHJ6ZXN1bmnqY2llIGVrcmFudSBvIDEgem5hayB3IGxld28KKyAgXGZCXmZcZlAgICAgICAgICAgICAgICAgIHByemVzdW5p6mNpZSBla3JhbnUgbyAxIHpuYWsgdyBwcmF3bworLnNwCisuU1MgIld5c3p1a2l3YW5pZSBpIHNvcnRvd2FuaWUiCisuc3AKK0xpc3TqIHBha2lldPN3IG1vv25hIHByemVzenVraXdh5iBwbyBuYXp3aWUgcGFraWV0dS4gTW+/bmEgdG8genJvYmnmLAorcHJ6eWNpc2tharFjIFxmQiIvIlxmUCBpIHdwaXN1arFjIHRla3N0IHd5c3p1a2l3YW5pYSwga3TzcnkgamVzdCBpbnRlcnByZXRvd2FueQoramFrbyB3eXJhv2VuaWUgcmVndWxhcm5lIFxmQnJlZ2V4XGZQKDcpLiBEb2RhbmllIFxmQiIvZCJcZlAgZG8gs2HxY3VjaGEKK3d5c3p1a2l3YW5pYSwgc3Bvd29kdWplIHByemVzenVraXdhbmllIHLzd25pZb8gb3Bpc/N3LiBEb2RhbmllIFxmQiIvaSJcZlAKK3Nwb3dvZHVqZSBpZ25vcm93YW5pZSB3aWVsa2+2Y2kgem5ha/N3IHBvZGN6YXMgd3lzenVraXdhbmlhLiBNb79uYSCzsWN6eeYgdGUKK3N1Zmlrc3ksIG5hIHByenlrs2FkIHRhazogXGZCIi9pZCJcZlAuIFBvd3Tzcm5lIHd5c3p1a2l3YW5pZSBuYXN06nB1amUgcHJ6ZXoKK3dpZWxva3JvdG5lIG5hY2lza2FuaWUga2xhd2lzenkgXGZCIm4iXGZQIGx1YiBcZkIiXGUiXGZQLCBhvyBkbyB6bmFsZXppZW5pYQorcG9zenVraXdhbmVnbyBwYWtpZXR1LiBQbyBvc2mxZ25p6mNpdSBrb/FjYSBsaXN0eSwgcG9zenVraXdhbmllIGplc3QKK2tvbnR5bnVvd2FuZSBvZCBwb2N6sXRrdSBsaXN0eS4KKy5zcAorUG9yerFkZWsgc29ydG93YW5pYSBsaXN0eSBtb79uYSB6bWllbmlh5iBwcnpleiB3aWVsb2tyb3RuZSBuYWNpc2thbmllCitrbGF3aXN6eSBcZkIibyJcZlAgaSBcZkIiTyJcZlAuCitNb79uYSB3eWJyYeYgamVkZW4geiBkemlld2nqY2l1IG5hc3TqcHVqsWN5Y2ggcG9yerFka/N3IHNvcnRvd2FuaWE6CisgYWxmYWJldHljem55ICAgICAgZG9zdOpwbnkgICAgICAgICAgICBzdGFuCisgcHJpb3J5dGV0K3Nla2NqYSAgZG9zdOpwbnkrcHJpb3J5dGV0ICBzdGFuK3ByaW9yeXRldAorIHNla2NqYStwcmlvcnl0ZXQgIGRvc3TqcG55K3Nla2NqYSAgICAgc3RhbitzZWtjamEKKy5icgorVGFtIGdkemllIG5pZSBqZXN0IHRvIHBvd3m/ZWogd3lyYbxuaWUgcG93aWVkemlhbmUsIHBvcnqxZGVrIGFsZmFiZXR5Y3pueQoramVzdCB1v3l3YW55IGpha28ga2x1Y3ogcG9kd3lzenVraXdhbmlhLgorLnNwCisuU1MgIlptaWVuaWFuaWUgd3lib3J1IHBha2lldPN3IgorLnNwCiuvsWRhbnkgc3RhbiB3eWJvcnUgaW5keXdpZHVhbG55Y2ggcGFraWV083cgbW+/bmEgem1pZW5p5goremEgcG9tb2OxIG5hc3TqcHVqsWN5Y2ggcG9sZWNl8ToKKyAgXGZCKywgSW5zZXJ0XGZQICAgIGluc3RhbGFjamEgbHViIGFrdHVhbGl6YWNqYQorICBcZkI9LCBIXGZQICAgICAgICAgd3N0cnp5bWFuaWUgcGFraWV0dSB3IG9iZWNueW0gc3RhbmllIGkgd2Vyc2ppCisgIFxmQjosIEdcZlAgICAgICAgICB6YXByemVzdGFuaWUgd3N0cnp5bWFuaWE6IGFrdHVhbGl6YWNqYSBwYWtpZXR1IGx1YiBwb3pvc3Rhd2llbmllIGdvIGpha28gbmllemFpbnN0YWxvd2FuZWdvCisgIFxmQlwtLCBEZWxldGVcZlAgICAgdXN1bmnqY2llLCBhbGUgeiB6b3N0YXdpZW5pZW0gcGxpa/N3IGtvbmZpZ3VyYWN5am55Y2gKKyAgXGZCX1xmUCAgICAgICAgICAgIHVzdW5p6mNpZSB6IHd5Y3p5c3pjemVuaWVtIHBsaWvzdyBrb25maWd1cmFjeWpueWNoCisuc3AKK0tpZWR5IHcgd3luaWt1IHptaWFuIHBvd3N0YWqxIGplZG5hIGx1YiB3aepjZWogbmllc3Bls25pb255Y2ggemFsZb9ub7ZjaQorYWxibyBrb25mbGlrdHksIFxmQmRzZWxlY3RcZlAgd3m2d2lldGxhIHW/eXRrb3duaWtvd2kgZWtyYW4gcm96d2mxenl3YW5pYQoremFsZb9ub7ZjaS4gQupkemllIG9uIG9iamG2bmlvbnkgbmllY28gcPO8bmllai4KKy5zcAorUG93eb9zemUgcG9sZWNlbmlhIG1vv25hIHphc3Rvc293YeYgcvN3bmllvyBkbyBncnVwIHBha2lldPN3IFwtIHByemV6Cit1c3Rhd2llbmllIHBhc2thIGt1cnNvcmEgbmEgbmFns/N3a3UgZ3J1cHkuIFNwb3PzYiBncnVwb3dhbmlhIHBha2lldPN3Cit6YWxlv3kgb2QgdXN0YXdpZfEgc29ydG93YW5pYSBsaXN0eSBwYWtpZXTzdy4KKy5zcAorTmFsZb95IHphY2hvd2HmIG5hbGW/eXSxIG9zdHJvv25vtuYsIHptaWVuaWFqsWMgZHW/ZSBncnVweSBwYWtpZXTzdywKK3Bvbmlld2G/IG1vv2UgdG8gb3puYWN6YeYgbmF0eWNobWlhc3Rvd2UgdXR3b3J6ZW5pZSBkdb9laiBsaWN6YnkKK25pZXNwZbNuaW9ueWNoIHphbGW/bm+2Y2kgaSBrb25mbGlrdPN3LCBiYXJkem8gdHJ1ZG5laiBkbyByb3p3abF6YW5pYS4gVworcHJha3R5Y2UgdHlsa28gb3BlcmFjamUgd3N0cnp5bWFuaWEgaSB6YXByemVzdGFuaWEgd3N0cnp5bWFuaWEgc7Egdb95dGVjem5lCit3IG9kbmllc2llbml1IGRvIGdydXAgcGFraWV083cuCisuc3AKKy5TUyAiUm96d2mxenl3YW5pZSB6YWxlv25vtmNpIGkga29uZmxpa3TzdyIKKy5zcAorS2llZHkgdyB3eW5pa3Ugem1pYW4gcG93c3RharEgamVkbmEgbHViIHdp6mNlaiBuaWVzcGWzbmlvbnljaCB6YWxlv25vtmNpCithbGJvIGtvbmZsaWt0eSwgXGZCZHNlbGVjdFxmUCB3ebZ3aWV0bGEgdb95dGtvd25pa293aSBla3JhbiByb3p3abF6eXdhbmlhCit6YWxlv25vtmNpLiBOYWpwaWVydywgamVkbmFrv2UsIHd5tndpZXRsYW55IGplc3QgZWtyYW4gcG9tb2N5LgorLnNwCitXIGfzcm5laiBwb7Nvd2llIGVrcmFudSByb3p3abF6eXdhbmlhIHphbGW/bm+2Y2kgd3m2d2lldGxvbmUgc7Egd3N6eXN0a2llIHRlCitwYWtpZXR5LCBrdPNyZSB3IHd5bmlrdSB6YXN0b3Nvd2FuaWEgv7FkYW55Y2ggcHJ6ZXogdb95dGtvd25pa2Egem1pYW4KK21pYbN5Ynkgbmllc3Bls25pb25lIHphbGW/bm+2Y2kgYWxibyBrb25mbGlrdHksIG9yYXogd3N6eXN0a2llIHRlIHBha2lldHksCitrdPNyeWNoIGluc3RhbGFjamEgc3Bls25ps2FieSBrdPNyZbYgeiB0eWNoIHphbGW/bm+2Y2ksIGx1YiBrdPNyeWNoCit1c3VuaepjaWUgcm96d2mxemGzb2J5IGtvbmZsaWt0eS4gVyBkb2xuZWogcG+zb3dpZSB3ebZ3aWV0bG9uZSBzsSB0ZQoremFsZb9ub7ZjaSBsdWIga29uZmxpa3R5LCBrdPNyZSBzcG93b2Rvd2GzeSwgv2Ugb2JlY25pZSB3eWJyYW55IHBha2lldAorem9zdGGzIHVtaWVzemN6b255IG5hIGxptmNpZS4KKy5zcAorV3m2d2lldGxharFjIHBvY3qxdGtvd7EgcG9kbGlzdOogcGFraWV083csIFxmQmRzZWxlY3RcZlAgbfNnsyB1c3Rhd2nmIGp1vyBwZXduZQorv7FkYW5lIHd5Ym9yeSBuaWVrdPNyeWNoIHNwb7Zy82Qgd3lsaXN0b3dhbnljaCBwYWtpZXTzdywgdyBjZWx1IHJvendpsXphbmlhCit6YWxlv25vtmNpIGx1YiBrb25mbGlrdPN3LCBrdPNyZSBiebN5IHByenljenlusSB3ebZ3aWV0bGVuaWEgZWtyYW51Cityb3p3abF6eXdhbmlhIHphbGW/bm+2Y2kuIFphend5Y3phaiBuYWpsZXBzenltIHd5arZjaWVtIGplc3QgemFzdG9zb3dhbmllCitzaeogZG8gc3VnZXN0aWkgenJvYmlvbnljaCBwcnpleiBcZkJkc2VsZWN0XGZQLgorLnNwCitNb79saXdlIGplc3QgcHJ6eXdy82NlbmllIHN0YW51IHd5Ym9y83cgd3lsaXN0b3dhbnljaCBwYWtpZXTzdyBkbworcG9wcnplZG5pY2ggdXN0YXdpZfEsIHphbmltIHpvc3Rhs3kgc3R3b3J6b25lIG5pZXJvendpsXphbmUgemFsZb9ub7ZjaSBsdWIKK2tvbmZsaWt0eSBcLSBwcnpleiBuYWNptm5p6mNpZSBrbGF3aXN6YSBcZkIiUiJcZlAuIE5hY2lza2FqsWMga2xhd2lzeiBcZkIiRCJcZlAsCitzcG93b2R1amVteSBvZHpuYWN6ZW5pZSBhdXRvbWF0eWN6bnljaCBwcm9wb3p5Y2ppIGkgamVzdCBwcnp5IHR5bQoremFjaG93eXdhbmEgem1pYW5hLCBrdPNyYSBzcG93b2Rvd2GzYSB3ebZ3aWV0bGVuaWUgZWtyYW51IHJvendpsXp5d2FuaWEKK3phbGW/bm+2Y2kuIFcga2/xY3UsIHBvIG5hY2m2bmnqY2l1IGtsYXdpc3phIFxmQiJVIlxmUCB3eWJvcnkgc7EgcG9ub3duaWUKK3VzdGF3aWFuZSBuYSBzdWdlcm93YW5lIHdhcnRvtmNpLgorLnNwCisuU1MgIlVzdGFuYXdpYW5pZSC/sWRhbnljaCB3eWJvcvN3IHBha2lldPN3IgorLnNwCitQbyBuYWNptm5p6mNpdSBrbGF3aXN6YSBcZkJlbnRlclxmUCwgb2JlY25pZSB3ebZ3aWV0bG9ueSB6YmnzciB3eWJvcvN3IHpvc3RhamUKK3phYWtjZXB0b3dhbnkuIEplv2VsaSBcZkJkc2VsZWN0XGZQIG5pZSB3eWtyeWplIG5pZXNwZbNuaW9ueWNoIHphbGW/bm+2Y2kKK3Bvd3N0YbN5Y2ggdyB3eW5pa3UgemFha2NlcHRvd2FuaWEgv7FkYW55Y2ggd3lib3LzdywgdG8gem9zdGFusSBvbmUKK3VzdGF3aW9uZS4gSmVkbmFrv2UsIGplv2VsaSBi6mSxIG5pZXJvendpsXphbmUgemFsZb9ub7ZjaSwgdG8gXGZCZHNlbGVjdFxmUAorcG9ub3duaWUgd3m2d2lldGxpIGVrcmFuIHJvendpsXp5d2FuaWEgemFsZb9ub7ZjaS4KKy5zcAorQWJ5IHptaWVuaeYgemJp83Igd3lib3Lzdywga3TzcnkgcG93b2R1amUgcG93c3RhbmllIG5pZXJvendpsXphbnljaAoremFsZb9ub7ZjaSBpIHptdXNp5iBcZkJkc2VsZWN0XGZQIGRvIHphYWtjZXB0b3dhbmlhIGdvLCBuYWxlv3kgbmFjaXNuseYga2xhd2lzegorXGZCIlEiXGZQLiBTcG93b2R1amUgdG8gYmV6d2FydW5rb3dlIHVzdGF3aWVuaWUgd3lib3LzdyBwb2RhbnljaCBwcnplegordb95dGtvd25pa2EuIE9n82xuaWUsIG5pZSBuYWxlv3kgdGVnbyByb2Jp5i4KKy5zcAorQWJ5IHV6eXNrYeYgcHJ6ZWNpd255IGVmZWt0IFwtIHd5Y29mYW5pZSBzaeogemUgd3N6eXN0a2ljaCB6bWlhbiBpIHBvd3LzY2VuaWUKK2RvIHBvcHJ6ZWRuaWVqIGxpc3R5IHd5Ym9y83csIG5hbGW/eSBuYWNpc26x5iBrbGF3aXN6ZSBcZkIiWCJcZlAgbHViCitcZkJlc2NhcGVcZlAuIFByemV6IHBvd3RhcnpharFjZSBzaeogcHJ6eWNpc2thbmllIHR5Y2gga2xhd2lzenkgbW+/bmEgd3ljb2Zh5gorc2nqIHplIHdzenlzdGtpY2ggcG90ZW5jamFsbmllIHN6a29kbGl3eWNoIHptaWFuIHcgd3lib3J6ZSBwYWtpZXTzdyBhvyBkbworb3N0YXRuaWVnbyBkb2JyZWdvIHVzdGF3aWVuaWEuCisuc3AKK0plv2VsaSBwZXduZSB1c3Rhd2llbmlhIHByemV6IHBvbXmza+ogem9zdGGzeSB3s7Fjem9uZSBpIGlzdG5pZWplIHBvdHJ6ZWJhCit3eWNvZmFuaWEgdHljaCB6bWlhbiBpIHptaWVuaWVuaWEgdXN0YXdpZfEgbmEgdGFraWUsIGpha2llIHOxIG9iZWNuaWUgdworc3lzdGVtaWUsIG5hbGW/eSB1v3nmIHByenljaXNrdSBcZkIiQyJcZlAuIEplc3QgdG8gdHJvY2jqIHBvZG9ibmUgZG8gcG9sZWNlbmlhCit1bmhvbGQgd3lkYW5lZ28gbmEgd3N6eXN0a2ljaCBwYWtpZXRhY2gsIGFsZSBkb3N0YXJjemEgYmFyZHppZWogb2N6eXdpc3RlZ28KK3Nwb3NvYnUgZHppYbNhbmlhIHcgc3l0dWFjamksIGdkeSB1v3l0a293bmlrIG5hY2lzbrGzIFxmQkVudGVyXGZQIHByemV6Citwb215s2vqLgorLnNwCisuCisuU0ggplJPRE9XSVNLTworLlRQIAorXGZCSE9NRVxmUAorSWYgc2V0LCBcZkJkc2VsZWN0XGZQIHdpbGwgdXNlIGl0IGFzIHRoZSBkaXJlY3RvcnkgZnJvbSB3aGljaCB0byByZWFkIHRoZSB1c2VyCitzcGVjaWZpYyBjb25maWd1cmF0aW9uIGZpbGUuCisuCisuU0ggQqPKRFkKK0RsYSBub3d5Y2ggdb95dGtvd25pa/N3LCBcZkJkc2VsZWN0XGZQIG1vv2UgYnnmIHRydWRueSBkbyBvcGFub3dhbmlhLiBQb2RvYm5vCit6bXVzemEgZG8gcLNhY3p1IG5hd2V0IHd5dHJhd255Y2ggd3Nw87N0d/NyY/N3IGqxZHJhIExpbnVrc2EuCisuc3AKK0Rva3VtZW50YWNqYSBqZXN0IHd5YnJha293YW5hLgorLnNwCitCcmFrIG9wY2ppICJwb21vYyIgdyBns/N3bnltIG1lbnUuCisuc3AKK05pZSBtb79uYSBvZ3JhbmljennmIGxpc3R5IGRvc3TqcG55Y2ggcGFraWV083cuCisuc3AKK1didWRvd2FuZSBtZXRvZHkgZG9zdOpwdSBuaWUgc7EgemdvZG5lIHogb2JlY255bWkgc3RhbmRhcmRhbWkKK2pha2+2Y2kuIE5hbGW/eSB1v3l3YeYgbWV0b2R5IGFwdCwga3TzcmEgbmllIHR5bGtvIG5pZSBqZXN0IHplcHN1dGEsIGFsZQordGFrv2UgamVzdCBvIHdpZWxlIGJhcmR6aWVqIGVsYXN0eWN6bmEgbmm/IG1ldG9keSB3YnVkb3dhbmUuCisuCisuU0ggIlpPQkFDWiBUQUuvRSIKK1xmQmRwa2dcZlAoMSksIFxmQmFwdFwtZ2V0XGZQKDgpLCBcZkJzb3VyY2VzLmxpc3RcZlAoNSksIFxmQmRlYlxmUCg1KS4KKy4KKy5TSCBBVVRPUlpZCitcZkJkc2VsZWN0XGZQIHdhcyB3cml0dGVuIGJ5IElhbiBKYWNrc29uIChpamFja3NvbkBnbnUuYWkubWl0LmVkdSkuIEZ1bGwgbGlzdAorb2YgY29udHJpYnV0b3JzIG1heSBiZSBmb3VuZCBpbiAnZHNlbGVjdCBcLVwtdmVyc2lvbicuCisuYnIKK1BvZHLqY3puaWsgbmFwaXNhbGkgSnVobyBWdW9yaSA8amF2dW9yaUBjYy5oZWxzaW5raS5maT4sIEpvc2lwIFJvZGluCitpIEpvb3N0IGtvb2lqLgorCisuU0ggIlSjVU1BQ1pFIgorUGlvdHIgUm9zemF0eWNraSA8ZGV4dGVyQGRlYmlhbi5vcmc+LCAxOTk5CisuYnIKK0JhcnRvc3ogRmXxc2tpIDxmZW5pb0BkZWJpYW4ub3JnPiwgMjAwNC0yMDA1CisuYnIKK1JvYmVydCBMdWJlcmRhIDxyb2JlcnRAZGViaWFuLm9yZz4sIDIwMDYtMjAwOAorLmJyCitXaWt0b3IgV2FuZGFjaG93aWN6IDxzaXJ5ZXNAZ21haWwuY29tPiwgMjAwOApkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vcGwvZHNlbGVjdC5jZmcuNSBiL2Rwa2ctMS4xNi4xLjEvbWFuL3BsL2RzZWxlY3QuY2ZnLjUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjU3NjdkMAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL3BsL2RzZWxlY3QuY2ZnLjUKQEAgLTAsMCArMSwzNyBAQAorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlwiCisuXCIgVGhpcyBmaWxlIHdhcyBnZW5lcmF0ZWQgd2l0aCBwbzRhLiBUcmFuc2xhdGUgdGhlIHNvdXJjZSBmaWxlLgorLlwiCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuVEggZHNlbGVjdC5jZmcgNSAyMDExXC0wN1wtMDMgIlByb2pla3QgRGViaWFuYSIgInW/eXRraSBkcGtnIgorLlNIIE5BWldBCitkc2VsZWN0LmNmZyBcLSBwbGlrIGtvbmZpZ3VyYWN5am55IHByb2dyYW11IGRzZWxlY3QKKy4KKy5TSCBPUElTCitUaGlzIGZpbGUgY29udGFpbnMgZGVmYXVsdCBvcHRpb25zIGZvciBkc2VsZWN0LiBFYWNoIGxpbmUgY29udGFpbnMgYSBzaW5nbGUKK29wdGlvbiB3aGljaCBpcyBleGFjdGx5IHRoZSBzYW1lIGFzIGEgbm9ybWFsIGNvbW1hbmQgbGluZSBvcHRpb24gZm9yIGRzZWxlY3QKK2V4Y2VwdCBmb3IgdGhlIGxlYWRpbmcgZGFzaGVzIHdoaWNoIGFyZSBub3QgdXNlZCBoZXJlLiBRdW90ZXMgc3Vycm91bmRpbmcKK29wdGlvbiB2YWx1ZXMgYXJlIHN0cmlwcGVkLiBDb21tZW50cyBhcmUgYWxsb3dlZCBieSBzdGFydGluZyBhIGxpbmUgd2l0aCBhCitoYXNoIHNpZ24gKCJcZkIjXGZQIikuCisuCisuU0ggUExJS0kKK1xmSS9ldGMvZHBrZy9kc2VsZWN0LmNmZy5kL1swXC05YVwtekFcLVpfXC1dKlxmUAorLmJyCitcZkkvZXRjL2Rwa2cvZHNlbGVjdC5jZmdcZlAKKy5icgorXGZJfi8uZHNlbGVjdC5jZmdcZlAKKy4KKy5TSCBBVVRPUgorUGF0cnogcGxpayBcZkkvdXNyL3NoYXJlL2RvYy9kcGtnL1RIQU5LUy5nelxmUCB6YXdpZXJharFjeSBsaXN06iBvc/NiLCBrdPNyZQorcHJ6eWN6eW5ps3kgc2nqIGRvIHJvendvanUgcHJvZ3JhbXUgXGZCZHNlbGVjdFxmUC4KKy4KKy5TSCAiWk9CQUNaIFRBS69FIgorXGZCZHNlbGVjdFxmUCgxKS4KKy5TSCAiVKNVTUFDWkUiCitQaW90ciBSb3N6YXR5Y2tpIDxkZXh0ZXJAZGViaWFuLm9yZz4sIDE5OTkKKy5icgorQmFydG9zeiBGZfFza2kgPGZlbmlvQGRlYmlhbi5vcmc+LCAyMDA0LTIwMDUKKy5icgorUm9iZXJ0IEx1YmVyZGEgPHJvYmVydEBkZWJpYW4ub3JnPiwgMjAwNi0yMDA4CisuYnIKK1dpa3RvciBXYW5kYWNob3dpY3ogPHNpcnllc0BnbWFpbC5jb20+LCAyMDA4CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9wbC91cGRhdGUtYWx0ZXJuYXRpdmVzLjggYi9kcGtnLTEuMTYuMS4xL21hbi9wbC91cGRhdGUtYWx0ZXJuYXRpdmVzLjgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzRkNWNkNAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL3BsL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuOApAQCAtMCwwICsxLDQxNyBAQAorLlwiIHVwZGF0ZVwtYWx0ZXJuYXRpdmVzLjgKKy5cIiBUaGlzIG1hbiBwYWdlIGlzIGNvcHlyaWdodCAxOTk3IENoYXJsZXMgQnJpc2NvZS1TbWl0aAorLlwiIFRoaXMgaXMgZnJlZSBkb2N1bWVudGF0aW9uOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisuXCIgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQKKy5cIiBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorLlwiIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uICBUaGVyZSBpcyBOTyBXQVJSQU5UWS4gIFlvdSBjYW4KKy5cIiBmaW5kIHRoZSBHTlUgR1BMIGluIC91c3Ivc2hhcmUvY29tbW9uLWxpY2Vuc2VzL0dQTCBvbiBhbnkgRGViaWFuIHN5c3RlbS4KKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlRIIHVwZGF0ZVwtYWx0ZXJuYXRpdmVzIDggMjAxMVwtMDhcLTE0ICJQcm9qZWt0IERlYmlhbmEiICJwcm9ncmFteSBwb21vY25pY3plIGRwa2ciCisuU0ggTkFaV0EKK3VwZGF0ZVwtYWx0ZXJuYXRpdmVzIFwtIHphcnqxZHphbmllIGRvd2mxemFuaWFtaSBzeW1ib2xpY3pueW1pIG9rcmW2bGFqsWN5bWkKK2RvbXm2bG5lIHBvbGVjZW5pYQorLgorLlNIIFNLo0FETklBCitcZkJ1cGRhdGVcLWFsdGVybmF0aXZlc1xmUCBbXGZJb3B0aW9uXGZQLi4uXSBcZkljb21tYW5kXGZQCisuCisuU0ggT1BJUworXGZCdXBkYXRlXC1hbHRlcm5hdGl2ZXNcZlAgdHdvcnp5LCB1c3V3YSwgd3m2d2lldGxhIGluZm9ybWFjamUgbyBkb3dpsXphbmlhY2gKK3N5bWJvbGljem55Y2ggc2uzYWRharFjeWNoIHNp6iBuYSBzeXN0ZW0gYWx0ZXJuYXR5dyBEZWJpYW5hIG9yYXogbmltaQoremFyerFkemEuCisuUFAKK0tpbGthIHByb2dyYW3zdyBtYWqxY3ljaCB06iBzYW2xIGx1YiBwb2RvYm6xIGZ1bmtjam9uYWxub7bmIG1vv2Ugem9zdGHmCit6YWluc3RhbG93YW55Y2ggdyBzeXN0ZW1pZSB3IHR5bSBzYW15bSBjemFzaWUuIE5hIHByenlrs2FkIHcgd2llbHUgc3lzdGVtYWNoCitqZXN0IHphaW5zdGFsb3dhbnljaCBqZWRub2N6ZbZuaWUga2lsa2EgZWR5dG9y83cgdGVrc3R1LiBTdGFub3dpIHRvCit1s2F0d2llbmllIGRsYSB1v3l0a293bmlr83cgdGFraWVnbyBzeXN0ZW11LCB6IGt083J5Y2gga2G/ZHkgbW+/ZSB1cnVjaG9taeYKK2lubnkgZWR5dG9yLCBqZbZsaSBtYSBuYSB0byBvY2hvdOouIFogZHJ1Z2llaiBzdHJvbnkgamVzdCB0byBqZWRuYWsKK3V0cnVkbmllbmllIGRsYSBwcm9ncmFt83cgY2hjsWN5Y2ggcG9karHmIHezYbZjaXexIGRlY3l6auosIGt083J5IGVkeXRvcgordXJ1Y2hvbWnmLCBqZb9lbGkgdb95dGtvd25payBuaWUgb2tyZbZsabMgc3dvaWNoIHByZWZlcmVuY2ppIGNvIGRvIGVkeXRvcmEuCisuUFAKK0NlbGVtIHN5c3RlbXUgYWx0ZXJuYXR5dyBEZWJpYW5hIGplc3Qgcm96d2mxemFuaWUgdGVnbyBwcm9ibGVtdS4gT2fzbG5hCituYXp3YSB3IHN5c3RlbWllIHBsaWvzdyBqZXN0IHdzcPOzZHppZWxvbmEgcHJ6ZXogd3N6eXN0a2llIHBsaWtpCitkb3N0YXJjemFqsWNlIHptaWVuaWFqsWOxIHNp6iBmdW5rY2pvbmFsbm+25i4gU3lzdGVtIGFsdGVybmF0eXcgb3JhegorYWRtaW5pc3RyYXRvciBzeXN0ZW11IG9rcmW2bGFqsSwgZG8ga3TzcmVnbyBvYmVjbmVnbyBwbGlrdSBwcm93YWR6aSB0YQorb2fzbG5hIG5hendhLiBOYSBwcnp5a7NhZCwgamW/ZWxpIHphaW5zdGFsb3dhbm8gemFy83dubyBlZHl0b3IgXGZCZWRcZlAoMSkgamFrCitpIFxmQm52aVxmUCgxKSwgdG8gc3lzdGVtIGFsdGVybmF0eXcgc3Bvd29kdWplLCC/ZSBuYXp3YSBvZ/NsbmEKK1xmSS91c3IvYmluL2VkaXRvclxmUCBi6mR6aWUgc2nqIG9kbm9zaeYgZG8gXGZJL3Vzci9iaW4vbnZpXGZQLiBBZG1pbmlzdHJhdG9yCitzeXN0ZW11IG1vv2Ugem1pZW5p5iB0byB1c3Rhd2llbmllIG5hIFxmSS91c3IvYmluL2VkXGZQLCBhIHN5c3RlbSBhbHRlcm5hdHl3Cit0ZWdvIG5pZSB6bWllbmksIGNoeWJhIL9lIGFkbWluaXN0cmF0b3Iga2G/ZSBtdSB0YWsgenJvYmnmLgorLlBQCitOYXp3YSBvZ/NsbmEgbmllIGplc3QgYmV6cG+2cmVkbmltIGRvd2mxemFuaWVtIHN5bWJvbGljem55bSBkbyB3eWJyYW5lagorYWx0ZXJuYXR5d3ksIGFsZSBqZXN0IGRvd2mxemFuaWVtIGRvIHBsaWt1IHcgXGZJa2F0YWxvZ3VcZlAgXGZJYWx0ZXJuYXR5d1xmUCwKK2t083JlIHoga29sZWkgamVzdCBkb3dpsXphbmllbSBkbyB3s2G2Y2l3ZWdvIHBsaWt1LiBKZXN0IHRhayB6cm9iaW9uZQorZGxhdGVnbywgv2VieSB6bWlhbnkgd3Byb3dhZHphbmUgcHJ6ZXogYWRtaW5pc3RyYXRvcmEgc3lzdGVtdSBiebN5CitvZ3Jhbmljem9uZSBkbyBrYXRhbG9ndSBcZkkvZXRjXGZQOiBzdGFuZGFyZCBGSFMgd3ltaWVuaWEgcG93b2R5LCBhYnkgdGFrCit6cm9iaeYuCisuUFAKK0tpZWR5IHBha2lldCBkb3N0YXJjemFqsWN5IHBsaWt1IG8gb2tyZbZsb25laiBmdW5rY2pvbmFsbm+2Y2kgamVzdAoraW5zdGFsb3dhbnksIHptaWVuaWFueSBsdWIgdXN1d2FueSwgd3l3b7N5d2FueSBqZXN0IHByb2dyYW0KK1xmQnVwZGF0ZVwtYWx0ZXJuYXRpdmVzXGZQLCBhYnkgemFrdHVhbGl6b3dh5iBpbmZvcm1hY2plIG8gdHltIHBsaWt1IHcgc3lzdGVtaWUKK2FsdGVybmF0eXcuIFxmQnVwZGF0ZVwtYWx0ZXJuYXRpdmVzXGZQIGplc3QgemF6d3ljemFqIHd5d2+zeXdhbnkgemUgc2tyeXB083cKK1xmQnBvc3RpbnN0XGZQIChjb25maWd1cmUpIGx1YiBcZkJwcmVybVxmUCAoaW5zdGFsbCkgdyBwYWtpZXRhY2ggRGViaWFuYS4KKy5QUAorQ3rqc3RvIHW/eXRlY3puZSBqZXN0LCBhYnkgcGV3bmEgbGljemJhIGFsdGVybmF0eXcgYnmzYSB6c3luY2hyb25pem93YW5hLAordGFrIL9lYnkgYnmzYSB6bWllbmlhbmEgamFrbyBncnVwYS4gTmEgcHJ6eWuzYWQgamW/ZWxpIGplc3QgemFpbnN0YWxvd2FuZQora2lsa2Egd2Vyc2ppIGVkeXRvcmEgXGZCdmlcZlAoMSksIHRvIHN0cm9uYSBwb2Ry6mN6bmlrYQorXGZJL3Vzci9zaGFyZS9tYW4vbWFuMS92aS4xXGZQIHBvd2lubmEgb2Rwb3dpYWRh5iB3ZXJzamkgcHJvZ3JhbXUKK3phaW5zdGFsb3dhbmVnbyBqYWtvIFxmSS91c3IvYmluL3ZpXGZQLiBcZkJ1cGRhdGVcLWFsdGVybmF0aXZlc1xmUCBvYnOzdWd1amUgdG8KK3ByenkgcG9tb2N5IGRvd2mxemHxIFxmSWez83dueWNoXGZQIGkgXGZJcG9kcnrqZG55Y2hcZlAgXC0gem1pYW5hIGRvd2mxemFuaWEKK2ez83duZWdvIHBvd29kdWplIHptaWFu6iBza29qYXJ6b255Y2ggZG93abF6YfEgcG9kcnrqZG55Y2guIERvd2mxemFuaWUKK2ez83duZSBpIHNrb2phcnpvbmUgeiBuaW0gZG93abF6YW5pYSBwb2RyeupkbmUgdHdvcnqxIFxmSWdydXDqXGZQIFxmSWRvd2mxemHxXGZQLgorLlBQCitLYb9kYSBncnVwYSBkb3dpsXph8SBqZXN0IHphd3N6ZSB3IGplZG55bSB6IGR382NoIHRyeWLzdzogYXV0b21hdHljem55bSBsdWIKK3LqY3pueW0uIFcgdHJ5YmllIGF1dG9tYXR5Y3pueW0gcG9kY3phcyBpbnN0YWxhY2ppIGx1YiB1c3V3YW5pYSBwYWtpZXR1CitzeXN0ZW0gYWx0ZXJuYXR5dyBhdXRvbWF0eWN6bmllIHpkZWN5ZHVqZSwgY3p5IGkgamFrIGFrdHVhbGl6b3dh5gorZG93abF6YW5pYS4gVyB0cnliaWUgcupjem55bSBzeXN0ZW0gYWx0ZXJuYXR5dyBuaWUgYupkemllIHptaWVuaWGzIGRvd2mxemHxCitpIHpvc3Rhd2kgd3N6eXN0a2llIGRlY3l6amUgYWRtaW5pc3RyYXRvcm93aSBzeXN0ZW11LgorLlBQCitHcnVwYSBkb3dpsXph8SBqZXN0IHRyeWJpZSBhdXRvbWF0eWN6bnltLCBraWVkeSBqZXN0IHBvIHJheiBwaWVyd3N6eQord3Byb3dhZHphbmEgZG8gc3lzdGVtdS4gSmW/ZWxpIGFkbWluaXN0cmF0b3Igc3lzdGVtdSB3cHJvd2Fkemkgem1pYW55IGRvCithdXRvbWF0eWN6bnljaCB1c3Rhd2ll8SwgYupksSBvbmUgd3pp6nRlIHBvZCB1d2Fn6iBwb2RjemFzIG5hc3TqcG5lZ28KK3VydWNob21pZW5pYSBcZkJ1cGRhdGVcLWFsdGVybmF0aXZlc1xmUCBuYSB0YWtpZWogem1pZW5pb25laiBncnVwaWUgZG93abF6YfEsIGEKK2dydXBhIHRhIGF1dG9tYXR5Y3puaWUgcHJ6ZWpkemllIHcgdHJ5YiBy6mN6bnkuCisuUFAKK1oga2G/ZLEgYWx0ZXJuYXR5d7Egc2tvamFyem9ueSBqZXN0IFxmSXByaW9yeXRldFxmUC4gSmW/ZWxpIGdydXBhIGRvd2mxemHxIGplc3QKK3cgdHJ5YmllIGF1dG9tYXR5Y3pueW0sIHRvIHd5YnJhbrEgYWx0ZXJuYXR5d7EgYupkemllIHRhLCBrdPNyYSBtYSBuYWp3eb9zenkKK3ByaW9yeXRldC4KKy5QUAorV2hlbiB1c2luZyB0aGUgXGZCXC1cLWNvbmZpZ1xmUCBvcHRpb24sIFxmQnVwZGF0ZVwtYWx0ZXJuYXRpdmVzXGZQIHdpbGwgbGlzdCBhbGwgb2YKK3RoZSBjaG9pY2VzIGZvciB0aGUgbGluayBncm91cCBvZiB3aGljaCBnaXZlbiBcZkluYW1lXGZQIGlzIHRoZSBtYXN0ZXIKK2FsdGVybmF0aXZlIG5hbWUuIFRoZSBjdXJyZW50IGNob2ljZSBpcyBtYXJrZWQgd2l0aCBhICcqJy4gIFlvdSB3aWxsIHRoZW4gYmUKK3Byb21wdGVkIGZvciB5b3VyIGNob2ljZSByZWdhcmRpbmcgdGhpcyBsaW5rIGdyb3VwLiAgRGVwZW5kaW5nIG9uIHRoZSBjaG9pY2UKK21hZGUsIHRoZSBsaW5rIGdyb3VwIG1pZ2h0IG5vIGxvbmdlciBiZSBpbiBcZklhdXRvXGZQIG1vZGUuIFlvdSB3aWxsIG5lZWQgdG8KK3VzZSB0aGUgXGZCXC1cLWF1dG9cZlAgb3B0aW9uIGluIG9yZGVyIHRvIHJldHVybiB0byB0aGUgYXV0b21hdGljIG1vZGUgKG9yIHlvdQorY2FuIHJlcnVuIFxmQlwtXC1jb25maWdcZlAgYW5kIHNlbGVjdCB0aGUgZW50cnkgbWFya2VkIGFzIGF1dG9tYXRpYykuCisuUFAKK0lmIHlvdSB3YW50IHRvIGNvbmZpZ3VyZSBub25cLWludGVyYWN0aXZlbHkgeW91IGNhbiB1c2UgdGhlIFxmQlwtXC1zZXRcZlAgb3B0aW9uCitpbnN0ZWFkIChzZWUgYmVsb3cpLgorLlBQCitS879uZSBwYWtpZXR5IGRvc3RhcmN6YWqxY2UgdHljaCBzYW15Y2ggcGxpa/N3IHBvd2lubnkgXGZCd3Nw87NwcmFjb3dh5lxmUCB6ZQorc29isSB3IHR5bSB6YWtyZXNpZS4gT3puYWN6YSB0bywgv2Ugdb95d2FuaWUgcHJvZ3JhbXUgXGZCdXBkYXRlXC1hbHRlcm5hdGl2ZXNcZlAKK2plc3QgXGZCb2Jvd2mxemtvd2VcZlAgZGxhIHdzenlzdGtpY2ggdGFraWNoIHBha2lldPN3IFwtIG5pZSBqZXN0IG1vv2xpd2UKK25hZHBpc2FuaWUgcGV3bnljaCBwbGlr83cgdyBwYWtpZWNpZSwga3TzcnkgbmllIHW/eXdhIG1lY2hhbml6bXUKK1xmQnVwZGF0ZVwtYWx0ZXJuYXRpdmVzXGZQLgorLgorLlNIIFRFUk1JTk9MT0dJQQorUG9uaWV3Yb8gb3BlcmFjamUgcHJvZ3JhbXUgXGZCdXBkYXRlXC1hbHRlcm5hdGl2ZXNcZlAgc7EgZG+25iB6s2+/b25lLCBwb25pv2VqCitwb2RhbmUgc7EgdGVybWlueSwga3TzcmUgcG9tb2exIGplIHpyb3p1bWll5i4KKy5UUCAKK25hendhIG9n82xuYSAobHViIGRvd2mxemFuaWUgYWx0ZXJuYXR5d3kpCitOYXp3YSwgdGFrYSBqYWsgXGZJL3Vzci9iaW4vZWRpdG9yXGZQLCBrdPNyYSBvZG5vc2kgc2nqIHByemV6IHN5c3RlbSBhbHRlcm5hdHl3CitkbyBqZWRuZWdvIHoga2lsa3UgcGxpa/N3IG8gcG9kb2JuZWogZnVua2Nqb25hbG5vtmNpLgorLlRQIAorbmF6d2EgYWx0ZXJuYXR5d3kKK05hendhIGRvd2mxemFuaWEgc3ltYm9saWN6bmVnbyB3IGthdGFsb2d1IGFsdGVybmF0eXcuCisuVFAgCithbHRlcm5hdHl3YSAobHViILZjaWW/a2EgYWx0ZXJuYXR5d3kpCitOYXp3YSBva3JltmxvbmVnbyBwbGlrdSB3IHN5c3RlbWllIHBsaWvzdywga3TzcnkgdyBzeXN0ZW1pZSBhbHRlcm5hdHl3IG1vv2UKK2J55iBkb3N06nBueSBwcnpleiBuYXp36iBvZ/NsbrEuCisuVFAgCitrYXRhbG9nIGFsdGVybmF0eXcKK0thdGFsb2cgemF3aWVyYWqxY3kgZG93abF6YW5pYSBzeW1ib2xpY3puZSwgZG9tebZsbmllIFxmSS9ldGMvYWx0ZXJuYXRpdmVzXGZQLgorLlRQIAora2F0YWxvZyBhZG1pbmlzdHJhY3lqbnkKK0thdGFsb2cgemF3aWVyYWqxY3kgaW5mb3JtYWNqZSBvIHN0YW5pZSBcZkJ1cGRhdGVcLWFsdGVybmF0aXZlc1xmUCwgZG9tebZsbmllCitcZkkvdmFyL2xpYi9kcGtnL2FsdGVybmF0aXZlc1xmUC4KKy5UUCAKK2dydXBhIGRvd2mxemHxCitaYmnzciBwb3dpsXphbnljaCBkb3dpsXph8SBzeW1ib2xpY3pueWNoLCB6YXJ6sWR6YW55IGpha28gZ3J1cGEuCisuVFAgCitkb3dpsXphbmllIGez83duZQorRG93abF6YW5pZSBhbHRlcm5hdHl3eSB3IGdydXBpZSBkb3dpsXph8Swga3TzcmUgb2tyZbZsYSBzcG9z82IKK2tvbmZpZ3Vyb3dhbmlhIGlubnljaCBkb3dpsXph8SB6IHRlaiBncnVweS4KKy5UUCAKK2Rvd2mxemFuaWUgcG9kcnrqZG5lCitEb3dpsXphbmllIGFsdGVybmF0eXd5IHcgZ3J1cGllIGRvd2mxemHxLCBrdPNyZSBqZXN0IGtvbnRyb2xvd2FuZSBwcnplegordXN0YXdpZW5pZSBns/N3bmVnbyBkb3dpsXphbmlhLgorLlRQIAordHJ5YiBhdXRvbWF0eWN6bnkKK0tpZWR5IGdydXBhIGRvd2mxemHxIGplc3QgdyB0cnliaWUgYXV0b21hdHljem55bSwgc3lzdGVtIGFsdGVybmF0eXcgemFwZXduaSwKK79lIGRvd2mxemFuaWEgeiB0ZWogZ3J1cHkgd3NrYXp1arEgbmEgYWx0ZXJuYXR5d+ogbyBuYWp3eb9zenltIHByaW9yeXRlY2llLgorLlRQIAordHJ5YiBy6mN6bnkKK0tpZWR5IGdydXBhIGRvd2mxemHxIGplc3QgdyB0cnliaWUgcupjem55bSwgc3lzdGVtIGFsdGVybmF0eXcgbmljIG5pZSB6bWllbmkKK3cgdXN0YXdpZW5pYWNoIHdwcm93YWR6b255Y2ggcHJ6ZXogYWRtaW5pc3RyYXRvcmEgc3lzdGVtdS4KKy4KKy5TSCBQT0xFQ0VOSUEKKy5UUCAKK1xmQlwtXC1pbnN0YWxsXGZQIFxmSWRvd2mxemFuaWUgbmF6d2EgtmNpZb9rYSBwcmlvcnl0ZXRcZlAgW1xmQlwtXC1zbGF2ZVxmUCBcZklkb3dpsXphbmllIG5hendhILZjaWW/a2FcZlBdLi4uCitEb2RhamUgZ3J1cOogYWx0ZXJuYXR5dyBkbyBzeXN0ZW11LiBcZklkb3dpsXphbmllXGZQIGplc3Qgb2fzbG6xIG5henexIGez83duZWdvCitkb3dpsXphbmlhLCBcZkluYXp3YVxmUCBqZXN0IG5henexIGRvd2mxemFuaWEgc3ltYm9saWN6bmVnbyB3IGthdGFsb2d1CithbHRlcm5hdHl3LCBhIFxmSbZjaWW/a2FcZlAgamVzdCB3cHJvd2FkemFusSBhbHRlcm5hdHl3sSBkbGEgZ7Pzd25lZ28KK2Rvd2mxemFuaWEuIEFyZ3VtZW50YW1pIG9wY2ppIFxmQlwtXC1zbGF2ZVxmUCBzsSBuYXp3YSBvZ/NsbmEsIG5hendhIGRvd2mxemFuaWEKK3N5bWJvbGljem5lZ28gdyBrYXRhbG9ndSBhbHRlcm5hdHl3IGkgtmNpZb9rYSBhbHRlcm5hdHl3eSBkbGEgZG93abF6YW5pYQorcG9kcnrqZG5lZ28uIE1vv25hIHBvZGHmIHplcm8gbHViIHdp6mNlaiBvcGNqaSBcZkJcLVwtc2xhdmVcZlAsIHBvIGthv2RlaiBtdXN6sQorbmFzdOpwb3dh5iBqZWogdHJ6eSBhcmd1bWVudHkuIE5hbGW/eSB6YXV3Yb955iwgv2UgZ7Pzd25hIGFsdGVybmF0eXdhIG11c2kKK2lzdG5pZeYsIGluYWN6ZWogd3l3b7NhbmllIHNp6iBuaWUgcG93aWVkemllLiBKZWRuYWsgamW2bGkgbmllIGLqZHppZQoraXN0bmll5iBwb2RyeupkbmEgYWx0ZXJuYXR5d2EsIG9kcG93aWVkbmllIGRvd2mxemFuaWUgcG9kcnrqZG5lIHBvIHByb3N0dQorbmllIHpvc3RhbmllIHphaW5zdGFsb3dhbmUgKGFsZSBuYWRhbCBi6mR6aWUgd3m2d2lldGxhbmUgb3N0cnplv2VuaWUpLiBKZbZsaQordyBtaWVqc2N1IGdkemllIHBvd2lubm8gYnnmIHphaW5zdGFsb3dhbmUgZG93abF6YW5pZSBhbHRlcm5hdHl3eSBpc3RuaWVqZQorcnplY3p5d2lzdHkgcGxpaywgamVzdCBvbiB6YWNob3d5d2FueSwgY2h5YmEgv2Ugdb95dGEgamVzdCBvcGNqYSBcZkJcLVwtZm9yY2VcZlAuCisuSVAKK0plv2VsaSBva3JltmxvbmEgbmF6d2EgYWx0ZXJuYXR5d3kganW/IGlzdG5pZWplIHcgc3lzdGVtaWUgYWx0ZXJuYXR5dywgdG8KK3BvZGFuYSBpbmZvcm1hY2phIGLqZHppZSBkb2RhbmEgamFrbyBub3d5IHpiafNyIGFsdGVybmF0eXcgZGxhIHRlaiBncnVweS4gVworcHJ6ZWNpd255bSB3eXBhZGt1IHpvc3RhbmllIHV0d29yem9uYSBub3dhIGdydXBhLCB1c3Rhd2lvbmEgdyB0cnliCithdXRvbWF0eWN6bnkuIEplv2VsaSBncnVwYSBqZXN0IHcgdHJ5YmllIGF1dG9tYXR5Y3pueW0sIGEgcHJpb3J5dGV0IG5vd28KK2RvZGF3YW55Y2ggYWx0ZXJuYXR5dyBqZXN0IHdp6mtzenkgb2QgcHJpb3J5dGV0dSBrYb9kZWogeiBpbm55Y2gKK3phaW5zdGFsb3dhbnljaCBhbHRlcm5hdHl3IHcgdGVqIGdydXBpZSwgdG8gZG93abF6YW5pYSBzeW1ib2xpY3puZSBi6mSxCit6YWt0dWFsaXpvd2FuZSB0YWssIL9lYnkgcHJvd2FkemmzeSBkbyBub3dvIGRvZGFueWNoIGFsdGVybmF0eXcuCisuVFAgCitcZkJcLVwtc2V0XGZQIFxmSW5hendhILZjaWW/a2FcZlAKK1NldCB0aGUgcHJvZ3JhbSBcZklwYXRoXGZQIGFzIGFsdGVybmF0aXZlIGZvciBcZkluYW1lLlxmUCBUaGlzIGlzIGVxdWl2YWxlbnQgdG8KK1xmQlwtXC1jb25maWdcZlAgYnV0IGlzIG5vblwtaW50ZXJhY3RpdmUgYW5kIHRodXMgc2NyaXB0YWJsZS4KKy5UUCAKK1xmQlwtXC1yZW1vdmVcZlAgXGZJbmF6d2EgtmNpZb9rYVxmUAorVXN1d2EgYWx0ZXJuYXR5d+ogaSB3c3p5c3RraWUgZG93abF6YW5pYSBwb2RyeupkbmUgeiBuabEKK3Nrb2phcnpvbmUuIFxmSW5hendhXGZQIGplc3QgbmF6d7EgdyBrYXRhbG9ndSBhbHRlcm5hdHl3LCBcZkm2Y2llv2thXGZQIGplc3QKK2Fic29sdXRusSBuYXp3sSBwbGlrdSwgZG8ga3TzcmVqIFxmSW5hendhXGZQIG1vZ7NhYnkgYnnmIGRvd2mxemFuaWVtLiBKZb9lbGkKK1xmSW5hendhXGZQIHJ6ZWN6eXdptmNpZSBqZXN0IGRvd2mxemFuaWVtIGRvIFxmSbZjaWW/a2lcZlAsIHRvIFxmSW5hendhXGZQIHpvc3RhbmllCit6YWt0dWFsaXpvd2FuYSwgdGFrIL9lYnkgd3NrYXp5d2GzYSBuYSBpbm6xIG9kcG93aWVkbmmxIGFsdGVybmF0eXfqICh6YbYKK2dydXBhIGplc3QgdXN0YXdpYW5hIHBvbm93bmllIHcgdHJ5YiBhdXRvbWF0eWN6bnkpLCBhbGJvIHpvc3RhbmllIHVzdW5p6nRhCitqZb9lbGkgbmllIHBvem9zdGFuaWUgYW5pIGplZG5hIGFsdGVybmF0eXdhLiBTa29qYXJ6b25lIGRvd2mxemFuaWEgcG9kcnrqZG5lCit6b3N0YW6xIG9kcG93aWVkbmlvIHpha3R1YWxpem93YW5lIGx1YiB1c3Vuaep0ZS4gSmW/ZWxpIGRvd2mxemFuaWUgbmllCitwcm93YWR6aSBvYmVjbmllIGRvIFxmSbZjaWW/a2lcZlAsIHRvIL9hZG5lIGRvd2mxemFuaWEgbmllIGLqZLEgYWt0dWFsaXpvd2FuZTsKK3pvc3RhbmllIHR5bGtvIHVzdW5p6nRhIGluZm9ybWFjamEgbyBhbHRlcm5hdHl3aWUuCisuVFAgCitcZkJcLVwtcmVtb3ZlXC1hbGxcZlAgXGZJbmF6d2FcZlAKK1VzdXdhIHdzenlzdGtpZSBkb3dpsXphbmlhIGFsdGVybmF0eXcgaSB3c3p5c3RraWUgc2tvamFyem9uZSB6IG5pbWkKK2Rvd2mxemFuaWEgcG9kcnrqZG5lLiBcZkluYXp3YVxmUCBqZXN0IG5henexIHcga2F0YWxvZ3UgYWx0ZXJuYXR5dy4KKy5UUCAKK1xmQlwtXC1hbGxcZlAKK1d5d2+zdWplIFxmQlwtXC1jb25maWdcZlAgZGxhIHdzenlzdGtpY2ggYWx0ZXJuYXR5dy4gTW+/bmEgdG8gdb95dGVjem5pZSBwb7OxY3p55goreiBcZkJcLVwtc2tpcFwtYXV0b1xmUCBhYnkgcHJ6ZWpyemXmIGkgc2tvbmZpZ3Vyb3dh5iB3c3p5c3RraWUgYWx0ZXJuYXR5d3ksIGt083JlCituaWUgc7Egc2tvbmZpZ3Vyb3dhbmUgdyB0cnliIGF1dG9tYXR5Y3pueS4gV3m2d2lldGxhbmUgc7EgcvN3bmllvworbmllYWt0dWFsbmUgYWx0ZXJuYXR5d3kuIERsYXRlZ28gcHJvc3R5bSBzcG9zb2JlbSBuYXByYXdpZW5pYSB1c3prb2R6b255Y2gKK2FsdGVybmF0eXcgamVzdCB3eXdvs2FuaWUgXGZCeWVzIFxbYXFdXFthcV0gfCB1cGRhdGVcLWFsdGVybmF0aXZlcyBcLVwtZm9yY2UKK1wtXC1hbGxcZlAuCisuVFAgCitcZkJcLVwtYXV0b1xmUCBcZkluYXp3YVxmUAorUHJ6ZbOxY3phIGdydXDqIGRvd2mxemHxIGRsYSBhbHRlcm5hdHl3eSB3IHRyeWIgYXV0b21hdHljem55LiBQb2RjemFzIHRlZ28KK3Byb2Nlc3UsIGez83duZSBkb3dpsXphbmllIHdyYXogeiBqZWdvIGRvd2mxemFuaWFtaSBwb2RyeupkbnltaSBi6mSxCit6YWt0dWFsaXpvd2FuZSB0YWssIGFieSB3c2thenl3YeYgbmEgYWx0ZXJuYXR5d+ogbyBuYWp3eb9zenltIHByaW9yeXRlY2llLgorLlRQIAorXGZCXC1cLWRpc3BsYXlcZlAgXGZJbmF6d2FcZlAKK1d5tndpZXRsYSBpbmZvcm1hY2plIG8gZ3J1cGllIGRvd2mxemHxLiBJbmZvcm1hY2plIHRlIHphd2llcmFqsSB0cnliIGdydXB5CisoYXV0b21hdHljem55IGx1YiBy6mN6bnkpLCBva3JltmxharEgbmEga3TzcrEgYWx0ZXJuYXR5d+ogb2JlY25pZSB3c2thenVqZQorZG93abF6YW5pZSBns/N3bmUsIGpha2llIHOxIGlubmUgZG9zdOpwbmUgYWx0ZXJuYXR5d3kgKGkgb2Rwb3dpYWRharFjZSBpbQorYWx0ZXJuYXR5d3kgcG9kcnrqZG5lKSBvcmF6IG9iZWNuaWUgemFpbnN0YWxvd2FusSBhbHRlcm5hdHl36iBvIG5hand5v3N6eW0KK3ByaW9yeXRlY2llLgorLlRQIAorXGZCXC1cLWdldFwtc2VsZWN0aW9uc1xmUAorV3m2d2lldGxhIHdzenlzdGtpZSBuYXp3eSBns/N3bnljaCBhbHRlcm5hdHl3IChrb250cm9sdWqxY3ljaCBncnVw6gorZG93abF6YfEpIG9yYXogaWNoIHN0YXR1cy4gS2G/ZGEgbGluaWEgemF3aWVyYSBkbyAzIHDzbCAocm96ZHppZWxvbnljaCBjbworbmFqbW5pZWogamVkbrEgc3BhY2qxKS4gUGllcndzemUgcG9sZSBva3JltmxhIG5henexIGFsdGVybmF0eXd5LCBkcnVnaWUgcG9sZQordG8gc3RhdHVzICgiYXV0byIgbHViICJtYW51YWwiKSwgemG2IG9zdGF0bmllIHBvbGUgemF3aWVyYSBiaWW/sWN5IHd5YvNyIGRsYQorYWx0ZXJuYXR5d3kgKHV3YWdhOiBqZXN0IHRvIG5hendhIHBsaWt1IGkgbW+/ZSB6YXdpZXJh5iB6bmFraSBzcGFjamkpLgorLlRQIAorXGZCXC1cLXNldFwtc2VsZWN0aW9uc1xmUAorV2N6eXR1amUga29uZmlndXJhY2rqIGFsdGVybmF0eXcgemUgc3RhbmRhcmRvd2VnbyB3ZWq2Y2lhIHcgZm9ybWFjaWUKK3d5Z2VuZXJvd2FueW0gcHJ6ZXogXGZCdXBkYXRlXC1hbHRlcm5hdGl2ZXMgXC1cLWdldFwtc2VsZWN0aW9uc1xmUCBpIG9kcG93aWVkbmlvIGplCityZWtvbmZpZ3VydWplLgorLlRQIAorXGZCXC1cLXF1ZXJ5XGZQIFxmSW5hendhXGZQCitXebZ3aWV0bGEgaW5mb3JtYWNq6iBvIGdydXBpZSBkb3dpsXph8SB0YWsgamFrIFwtXC1kaXNwbGF5LCBhbGUgdyBzcG9z82IKK29kcG93aWVkbmkgZGxhIG1hc3p5bm93ZWdvIHBhcnNvd2FuaWEgKGRva7NhZG5pZWpzenkgb3BpcyBwb25pv2VqLCB3IHNla2NqaQorXGZCRk9STUFUIFpBUFlUQU5JQVxmUCkuCisuVFAgCitcZkJcLVwtbGlzdFxmUCBcZkluYXp3YVxmUAorV3m2d2lldGxhIHdzenlzdGtpZSBjZWxlIHcgZ3J1cGllIGRvd2mxemHxLgorLlRQIAorXGZCXC1cLWNvbmZpZ1xmUCBcZkluYXp3YVxmUAorV3m2d2lldGxhIGRvc3TqcG5lIGFsdGVybmF0eXd5IHcgZ3J1cGllIGRvd2mxemHxIGkgcG96d2FsYSB1v3l0a293bmlrb3dpCitpbnRlcmFrY3lqbmllIHd5YnJh5iwga3TzcmVqIG5hbGW/eSB1v3nmLiBHcnVwYSBkb3dpsXph8SB6b3N0YW5pZQorb2Rwb3dpZWRuaW8gemFrdHVhbGl6b3dhbmEuCisuVFAgCitcZkJcLVwtaGVscFxmUAorV3m2d2lldGxhIGluZm9ybWFjauogbyB1v3l0a293YW5pdSBpIGtv8WN6eSBkemlhs2FuaWUuCisuVFAgCitcZkJcLVwtdmVyc2lvblxmUAorV3m2d2lldGxhIGluZm9ybWFjauogbyB3ZXJzamkgaSBwb215tmxuaWUga2/xY3p5IGR6aWGzYW5pZS4KKy4KKy5TSCBPUENKRQorLlRQIAorXGZCXC1cLWFsdGRpclxmUFxmSSBrYXRhbG9nXGZQCitPa3JltmxhIGthdGFsb2cgYWx0ZXJuYXR5dywgamW/ZWxpIG1hIGJ55iBpbm55IG5pvyBkb215tmxueS4KKy5UUCAKK1xmQlwtXC1hZG1pbmRpclxmUFxmSSBrYXRhbG9nXGZQCitPa3JltmxhIGthdGFsb2cgYWRtaW5pc3RyYWN5am55LCBqZb9lbGkgbWEgYnnmIGlubnkgbmm/IGRvbXm2bG55LgorLlRQIAorXGZCXC1cLWxvZ1xmUFxmSSBwbGlrXGZQCitTcGVjaWZpZXMgdGhlIGxvZyBmaWxlLCB3aGVuIHRoaXMgaXMgdG8gYmUgZGlmZmVyZW50IGZyb20gdGhlIGRlZmF1bHQKKygvdmFyL2xvZy9hbHRlcm5hdGl2ZXMubG9nKS4KKy5UUCAKK1xmQlwtXC1mb3JjZVxmUAorTGV0IFxmQnVwZGF0ZVwtYWx0ZXJuYXRpdmVzXGZQIHJlcGxhY2Ugb3IgZHJvcCBhbnkgcmVhbCBmaWxlIHRoYXQgaXMgaW5zdGFsbGVkCit3aGVyZSBhbiBhbHRlcm5hdGl2ZSBsaW5rIGhhcyB0byBiZSBpbnN0YWxsZWQgb3IgcmVtb3ZlZC4KKy5UUCAKK1xmQlwtXC1za2lwXC1hdXRvXGZQCitQb21pamEgcHl0YW5pYSBvIGtvbmZpZ3VyYWNq6iBhbHRlcm5hdHl3LCBrdPNyZSBzsSB3s2G2Y2l3aWUgc2tvbmZpZ3Vyb3dhbmUKK3cgdHJ5YmllIGF1dG9tYXR5Y3pueW0uIFRhIG9wY2phIG1hIHpuYWN6ZW5pZSB0eWxrbyBwcnp5IFxmQlwtXC1jb25maWdcZlAgbHViCitcZkJcLVwtYWxsXGZQLgorLlRQIAorXGZCXC1cLXZlcmJvc2VcZlAKK1BvZGFqZSB3aepjZWogaW5mb3JtYWNqaSBvIHByemViaWVndSB3eWtvbnl3YW5pYSBcZkJ1cGRhdGVcLWFsdGVybmF0aXZlc1xmUC4KKy5UUCAKK1xmQlwtXC1xdWlldFxmUAorTmllIHd5tndpZXRsYSC/YWRueWNoIGtvbWVudGFyenksIGNoeWJhIL9lIHd5c3SxcGkgYrOxZC4KKy4KKy5TSCCmUk9ET1dJU0tPCisuVFAgCitcZkJEUEtHX0FETUlORElSXGZQCitJZiBzZXQgYW5kIHRoZSBcZkJcLVwtYWRtaW5kaXJcZlAgb3B0aW9uIGhhcyBub3QgYmVlbiBzcGVjaWZpZWQsIGl0IHdpbGwgYmUgdXNlZAorYXMgdGhlIGJhc2UgYWRtaW5pc3RyYXRpdmUgZGlyZWN0b3J5LgorLgorLlNIIFBMSUtJCisuVFAgCitcZkkvZXRjL2FsdGVybmF0aXZlcy9cZlAKK0RvbXm2bG55IGthdGFsb2cgYWx0ZXJuYXR5dy4gTW+/bmEgZ28gem1pZW5p5iBvcGNqsSBcZkJcLWFsdGRpclxmUC4KKy5UUCAKK1xmSS92YXIvbGliL2Rwa2cvYWx0ZXJuYXRpdmVzL1xmUAorRG9tebZsbnkga2F0YWxvZyBhZG1pbmlzdHJhY3lqbnkuIE1vv25hIGdvIHptaWVuaeYgb3BjarEgXGZCXC1hZG1pbmRpclxmUC4KKy4KKy5TSCAiS09EIFdZSqZDSUEiCisuVFAgCitcZkIwXGZQCitBa2NqYSB6YWtv8WN6ebNhIHNp6iBwb3dvZHplbmllbS4KKy5UUCAKK1xmQjJcZlAKK1d5c3SxcGmzeSBwcm9ibGVteSBwb2RjemFzIHByemV0d2FyemFuaWEgbGluaWkgcG9sZWNl8SBsdWIgd3lrb255d2FuaWEKK2FrY2ppLgorLgorLlNIICJGT1JNQVQgWkFQWVRBTklBIgorVGhlIFxmQnVwZGF0ZVwtYWx0ZXJuYXRpdmVzIFwtXC1xdWVyeVxmUCBmb3JtYXQgaXMgdXNpbmcgYW4gUkZDODIyXC1saWtlIGZsYXQKK2Zvcm1hdC4gSXQncyBtYWRlIG9mIFxmSW5cZlAgKyAxIGJsb2NrcyB3aGVyZSBcZkluXGZQIGlzIHRoZSBudW1iZXIgb2YKK2FsdGVybmF0aXZlcyBhdmFpbGFibGUgaW4gdGhlIHF1ZXJpZWQgbGluayBncm91cC4gVGhlIGZpcnN0IGJsb2NrIGNvbnRhaW5zCit0aGUgZm9sbG93aW5nIGZpZWxkczoKKy5UUCAKK1xmQkxpbms6XGZQXGZJIGxpbmtcZlAKK05hendhIG9n82xuYSBhbHRlcm5hdHl3eS4KKy5UUCAKK1xmQlN0YXR1czpcZlBcZkkgc3RhdHVzXGZQCitTdGF0dXMgYWx0ZXJuYXR5d3kgKFxmQmF1dG9cZlAgbHViIFxmQm1hbnVhbFxmUCkuCisuVFAgCitcZkJCZXN0OlxmUFxmSSBiZXN0XC1jaG9pY2VcZlAKK6ZjaWW/a2EgbmFqbGVwc3plaiBhbHRlcm5hdHl3eSBkbGEgdGVqIGdydXB5IGRvd2mxemHxLiBOaWUgamVzdCB3ebZ3aWV0bGFuYSwKK2pltmxpIG5pZSBtYSBkb3N06nBueWNoIL9hZG55Y2ggYWx0ZXJuYXR5dy4KKy5UUCAKK1xmQlZhbHVlOlxmUFxmSSBjdXJyZW50bHlcLXNlbGVjdGVkXC1hbHRlcm5hdGl2ZVxmUAorpmNpZb9rYSBha3R1YWxuaWUgd3licmFuZWogYWx0ZXJuYXR5d3kuIE1vv2UgcvN3bmllvyBwcnp5am1vd2HmIHNwZWNqYWxusQord2FydG+25iBcZkJub25lXGZQIFwtIGplc3Qgb25hIHW/eXdhbmEgamW2bGkgZG93abF6YW5pZSBuaWUgaXN0bmllamUuCisuVFAgCisuVFAgCitJbm5lIGJsb2tpIG9waXN1arEgZG9zdOpwbmUgYWx0ZXJuYXR5d3kgdyBncnVwaWUgZG93abF6YfEsIGRvIGt083JlaiBvZG5vc2kgc2nqIHphcHl0YW5pZToKKy5UUCAKK1xmQkFsdGVybmF0aXZlOlxmUFxmSSBwYXRoXC1vZlwtdGhpc1wtYWx0ZXJuYXRpdmVcZlAKK6ZjaWW/a2EgZG8gYWx0ZXJuYXR5d3kgb3Bpc3l3YW5laiB3IHR5bSBibG9rdS4KKy5UUCAKK1xmQlByaW9yaXR5OlxmUFxmSSBwcmlvcml0eVwtdmFsdWVcZlAKK1dhcnRvtuYgcHJpb3J5dGV0dSBhbHRlcm5hdHl3eS4KKy5UUCAKK1xmQlNsYXZlczpcZlBcZkkgbGlzdFwtb2ZcLXNsYXZlc1xmUAorR2R5IG9iZWNueSBqZXN0IHRlbiBuYWez83dlaywgXGZCbmFzdOpwbmVcZlAgbGluaWUgemF3aWVyYWqxIHdzenlzdGtpZQorcG9kcnrqZG5lIGFsdGVybmF0eXd5IHp3abF6YW5lIHogZ7Pzd255bSBkb3dpsXphbmllbSBhbHRlcm5hdHl3eS4gVyBrYb9kZWoKK2xpbmlpIHBvZGFuYSBqZXN0IGplZG5hIHBvZHJ66mRuYSBhbHRlcm5hdHl3YS4gS2G/ZGEgbGluaWEgemF3aWVyYSBqZWRusQorc3BhY2rqLCBvZ/NsbrEgbmF6d+ogYWx0ZXJuYXR5d3kgcG9kcnrqZG5laiwga29sZWpusSBzcGFjauogaSB3IGtv8WN1Ciu2Y2llv2vqIGRvIGFsdGVybmF0eXd5IHBvZHJ66mRuZWouCisuCisuVFAgCitcZkJQcnp5a7NhZFxmUAorLm5mCiskIHVwZGF0ZVwtYWx0ZXJuYXRpdmVzIFwtXC1xdWVyeSBlZGl0b3IKK0xpbms6IGVkaXRvcgorU3RhdHVzOiBhdXRvCitCZXN0OiAvdXNyL2Jpbi92aW0uZ3RrCitWYWx1ZTogL3Vzci9iaW4vdmltLmd0aworCitBbHRlcm5hdGl2ZTogL2Jpbi9lZAorUHJpb3JpdHk6IFwtMTAwCitTbGF2ZXM6CisgZWRpdG9yLjEuZ3ogL3Vzci9zaGFyZS9tYW4vbWFuMS9lZC4xLmd6CisKK0FsdGVybmF0aXZlOiAvdXNyL2Jpbi92aW0uZ3RrCitQcmlvcml0eTogNTAKK1NsYXZlczoKKyBlZGl0b3IuMS5neiAvdXNyL3NoYXJlL21hbi9tYW4xL3ZpbS4xLmd6CisgZWRpdG9yLnJ1LjEuZ3ogL3Vzci9zaGFyZS9tYW4vcnUvbWFuMS92aW0uMS5negorIGVkaXRvci5wbC5JU084ODU5XC0yLjEuZ3ogL3Vzci9zaGFyZS9tYW4vcGwuSVNPODg1OVwtMi9tYW4xL3ZpbS4xLmd6CisgZWRpdG9yLml0LklTTzg4NTlcLTEuMS5neiAvdXNyL3NoYXJlL21hbi9pdC5JU084ODU5XC0xL21hbjEvdmltLjEuZ3oKKyBlZGl0b3IucGwuVVRGXC04LjEuZ3ogL3Vzci9zaGFyZS9tYW4vcGwuVVRGXC04L21hbjEvdmltLjEuZ3oKKyBlZGl0b3IuaXQuMS5neiAvdXNyL3NoYXJlL21hbi9pdC9tYW4xL3ZpbS4xLmd6CisgZWRpdG9yLmZyLlVURlwtOC4xLmd6IC91c3Ivc2hhcmUvbWFuL2ZyLlVURlwtOC9tYW4xL3ZpbS4xLmd6CisgZWRpdG9yLmZyLjEuZ3ogL3Vzci9zaGFyZS9tYW4vZnIvbWFuMS92aW0uMS5negorIGVkaXRvci5pdC5VVEZcLTguMS5neiAvdXNyL3NoYXJlL21hbi9pdC5VVEZcLTgvbWFuMS92aW0uMS5negorIGVkaXRvci5wbC4xLmd6IC91c3Ivc2hhcmUvbWFuL3BsL21hbjEvdmltLjEuZ3oKKyBlZGl0b3IuZnIuSVNPODg1OVwtMS4xLmd6IC91c3Ivc2hhcmUvbWFuL2ZyLklTTzg4NTlcLTEvbWFuMS92aW0uMS5negorLmZpCisuCisuU0ggRElBR05PU1RZS0EKK1dpdGggXGZCXC1cLXZlcmJvc2VcZlAgXGZCdXBkYXRlXC1hbHRlcm5hdGl2ZXNcZlAgY2hhdHRlcnMgaW5jZXNzYW50bHkgYWJvdXQgaXRzCithY3Rpdml0aWVzIG9uIGl0cyBzdGFuZGFyZCBvdXRwdXQgY2hhbm5lbC4gIElmIHByb2JsZW1zIG9jY3VyLAorXGZCdXBkYXRlXC1hbHRlcm5hdGl2ZXNcZlAgb3V0cHV0cyBlcnJvciBtZXNzYWdlcyBvbiBpdHMgc3RhbmRhcmQgZXJyb3IgY2hhbm5lbAorYW5kIHJldHVybnMgYW4gZXhpdCBzdGF0dXMgb2YgMi4gIFRoZXNlIGRpYWdub3N0aWNzIHNob3VsZCBiZQorc2VsZlwtZXhwbGFuYXRvcnk7IGlmIHlvdSBkbyBub3QgZmluZCB0aGVtIHNvLCBwbGVhc2UgcmVwb3J0IHRoaXMgYXMgYSBidWcuCisuCisuU0ggUFJaWUujQURZCitJc3RuaWVqZSBrbGlrYSBwYWtpZXTzdywga3TzcmUgZG9zdGFyY3pharEgZWR5dG9yYSB0ZWtzdHUga29tcGF0eWJpbG5lZ28gegorZWR5dG9yZW0gXGZCdmlcZlAsIG5hIHByenlrs2FkIFxmQm52aVxmUCBpIFxmQnZpbVxmUC4gVG8sIGt083J5IHBha2lldCBi6mR6aWUKK3W/eXdhbnksIGtvbnRyb2xvd2FuZSBqZXN0IHByemV6IGdydXDqIGRvd2mxemHxIFxmQnZpXGZQLCB6YXdpZXJharFjsQorZG93abF6YW5pYSBkbyBzYW1lZ28gcHJvZ3JhbXUgaSBvZHBvd2lhZGFqsWN5Y2ggbXUgc3Ryb24gcG9kcupjem5pa2EuCisuUFAKK1RvIGRpc3BsYXkgdGhlIGF2YWlsYWJsZSBwYWNrYWdlcyB3aGljaCBwcm92aWRlIFxmQnZpXGZQIGFuZCB0aGUgY3VycmVudAorc2V0dGluZyBmb3IgaXQsIHVzZSB0aGUgXGZCXC1cLWRpc3BsYXlcZlAgYWN0aW9uOgorLlJTCisuUFAKK1xmQnVwZGF0ZVwtYWx0ZXJuYXRpdmVzIFwtXC1kaXNwbGF5IHZpXGZQCisuUkUKKy5QUAorQWJ5IHd5YnJh5iBva3JltmxvbrEgaW1wbGVtZW50YWNq6iBlZHl0b3JhIFxmQnZpXGZQLCBuYWxlv3kgdb955iB0ZWdvIHBvbGVjZW5pYQoramFrbyB1v3l0a293bmlrIHJvb3QgaSB3eWJyYeYgbGljemLqIHogbGlzdHk6CisuUlMKKy5QUAorXGZCdXBkYXRlXC1hbHRlcm5hdGl2ZXMgXC1cLWNvbmZpZyB2aVxmUAorLlJFCisuUFAKK0FieSBwcnp5d3LzY2nmIGF1dG9tYXR5Y3puZSB3eWJpZXJhbmllIGltcGxlbWVudGFjamkgcHJvZ3JhbXUgXGZCdmlcZlAsIG5hbGW/eQoramFrbyB1v3l0a293bmlrIHJvb3Qgd3lrb25h5joKKy5SUworLlBQCitcZkJ1cGRhdGVcLWFsdGVybmF0aXZlcyBcLVwtYXV0byB2aVxmUAorLlJFCisuCisuU0ggQqPKRFkKK1cgcmF6aWUgem5hbGV6aWVuaWEgYrPqZHUsIHByb3NpbXkgbyBqZWdvIHpns29zemVuaWUsIHW/eXdharFjIHN5c3RlbXUKK7ZsZWR6ZW5pYSBis+pk83cgRGViaWFuYS4KKy5QUAorUm96Ymllv25vtmNpIHBvbWnqZHp5IGR6aWGzYW5pZW0gXGZCdXBkYXRlXC1hbHRlcm5hdGl2ZXNcZlAgYSB0sSBzdHJvbrEKK3BvZHLqY3puaWthIHN0YW5vd2mxIGFsYm8gYrOxZCB3IGltcGxlbWVudGFjamksIGFsYm8gdyBkb2t1bWVudGFjamkuIFcgcmF6aWUKK3puYWxlemllbmlhIGpha2ljaGtvbHdpZWsgcm96Ymllv25vtmNpLCBwcm9zaW15IG8gaWNoIHpns29zemVuaWUuCisuCisuU0ggQVVUT1JaWQorQ29weXJpZ2h0IFwoY28gMTk5NSBJYW4gSmFja3NvbgorLmJyCitDb3B5cmlnaHQgXChjbyAyMDA5IFJhcGhhXFs6ZV1sIEhlcnR6b2cKKy5zcAorTmluaWVqc3p5IHByb2dyYW0gamVzdCBvcHJvZ3JhbW93YW5pZW0gd29sbnltLCBzcHJhd2S8IFBvd3N6ZWNobrEgTGljZW5jauoKK1B1YmxpY3pusSBHTlUgdyB3ZXJzamkgZHJ1Z2llaiBsdWIgcPO8bmllanN6ZWosIGJ5IGRvd2llZHppZeYgc2nqIG8KK3dhcnVua2FjaCBkeXN0cnlidWNqaS4gQnJhayBKQUtJRUpLT0xXSUVLIGd3YXJhbmNqaS4KKy5QUAorQ29weXJpZ2h0IHRlaiBzdHJvbnkgcG9kcupjem5pa2E6IDE5OTcsMTk5OCBDaGFybGVzIEJyaXNjb2VcLVNtaXRoIGkgaW5uaS4KKy5zcAorVG8gamVzdCB3b2xuYSBkb2t1bWVudGFjamEsIHNwcmF3ZLwgUG93c3plY2husSBMaWNlbmNq6iBQdWJsaWN6brEgR05VIHcKK3dlcnNqaSBkcnVnaWVqIGx1YiBw87xuaWVqc3plaiwgYnkgZG93aWVkemll5iBzaeogbyB3YXJ1bmthY2gKK2R5c3RyeWJ1Y2ppLiBCcmFrIEpBS0lFSktPTFdJRUsgZ3dhcmFuY2ppLgorLgorLlNIICJaT0JBQ1ogVEFLr0UiCitcZkJsblxmUCgxKSwgRkhTIFwtIHN0YW5kYXJkIGhpZXJhcmNoaWkgc3lzdGVtdSBwbGlr83cuCisuU0ggIlSjVU1BQ1pFIgorUGlvdHIgUm9zemF0eWNraSA8ZGV4dGVyQGRlYmlhbi5vcmc+LCAxOTk5CisuYnIKK0JhcnRvc3ogRmXxc2tpIDxmZW5pb0BkZWJpYW4ub3JnPiwgMjAwNC0yMDA1CisuYnIKK1JvYmVydCBMdWJlcmRhIDxyb2JlcnRAZGViaWFuLm9yZz4sIDIwMDYtMjAwOAorLmJyCitXaWt0b3IgV2FuZGFjaG93aWN6IDxzaXJ5ZXNAZ21haWwuY29tPiwgMjAwOApkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vcG8vQ2hhbmdlTG9nLm9sZCBiL2Rwa2ctMS4xNi4xLjEvbWFuL3BvL0NoYW5nZUxvZy5vbGQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzAzOTVlYwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL3BvL0NoYW5nZUxvZy5vbGQKQEAgLTAsMCArMSwxMTg2IEBACisyMDA5LTAzLTAyICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBwby9kcGtnLW1hbi5wb3Q6IFJlZ2VuZXJhdGVkLgorCSogcG8vKi5wbzogTWVyZ2VkIHdpdGggZHBrZy1tYW4ucG90LgorCisyMDA5LTAyLTA1ICBXaWt0b3IgV2FuZGFjaG93aWN6ICA8c2lyeWVzQGdtYWlsLmNvbT4KKworCSogcG8vcGwucG86IFVwZGF0ZWQgdG8gMTA2MXQuCisKKzIwMDgtMTEtMTggIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHBvL2VzLnBvOiBVbmZ1enp5IHRoZSBjb250cm9sIG1zZ2lkLgorCSogcG8vaHUucG86IExpa2V3aXNlLgorCSogcG8vcHRfQlIucG86IExpa2V3aXNlLgorCisyMDA4LTExLTE4ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBwby9lcy5wbzogQWRkIGEgcHJvcGVyIGhlYWRlciBjb21tZW50LgorCSogcG8vaHUucG86IExpa2V3aXNlLgorCSogcG8vcHRfQlIucG86IExpa2V3aXNlLgorCisyMDA4LTExLTExICBIZWxnZSBLcmV1dHptYW5uICA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CisKKwkqIHBvL2RlLnBvOiBVcGRhdGVkIHRvIDE2MDF0MGYwdS4KKworMjAwOC0wOS0wNSAgU3ZlbiBKb2FjaGltICA8c3ZlbmpvYWNAZ214LmRlPgorCisJKiBwby9zdi5wbzogQWRkIG1pc3NpbmcgXG4gaW4gaGVhZGVyLgorCisyMDA4LTA2LTA0ICBQZXRlciBLcmVmdGluZyAgPHBldGVya0BkZWJpYW4ub3JnPgorCisJKiBwby9zdi5wbzogVXBkYXRlZCB0byAxNjAxdC4KKwkqIHBvL3N2LmFkZDogVXBkYXRlZCBteSBzdXJuYW1lLgorCisyMDA4LTA4LTIyICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBwby9mci5wbzogVXBkYXRlZCB0byAxNjAxdC4gUmVwbGFjZWQgImTDqWNsZW5jaGVtZW50IiB3aXRoCisJImFjdGlvbiBkaWZmw6lyw6llIiBldmVyeXdoZXJlLiBGaXhlZCBtYW55IHJlbGF0ZWQgdHJhbnNsYXRpb25zLgorCisyMDA4LTA4LTE4ICBIZWxnZSBLcmV1dHptYW5uICA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CisKKwkqIHBvL2RlLnBvOiBVcGRhdGVkIHRvIDE1OTV0MGY2dS4KKworMjAwOC0wOC0xNyAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogcG8vZHBrZy1tYW4ucG90OiBSZWdlbmVyYXRlZC4KKwkqIHBvLyoucG86IE1lcmdlZCB3aXRoIGRwa2ctbWFuLnBvdC4KKworMjAwOC0wOC0xMSAgSGVsZ2UgS3JldXR6bWFubiAgPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorCisJKiBwby9kZS5wbzogTWVudGlvbiAoaW4gY29tbWVudCkgdGhlIGNvcHlyaWdodCBvZiBTdmVuIGFzIHdlbGwuCisKKzIwMDgtMDctMjIgIEhlbGdlIEtyZXV0em1hbm4gIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KKworCSogcG8vZGUucG86IFVuaWZ5IHRyYW5zbGF0aW9uIG9mICJkaXZlcnNpb24iLiBVcGRhdGUgdG8gMTU5NHQwZjd1LgorCisyMDA4LTA2LTI4ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBwby9kcGtnLW1hbi5wb3Q6IFJlZ2VuZXJhdGVkLgorCSogcG8vKi5wbzogTWVyZ2VkIHdpdGggZHBrZy1tYW4ucG90LgorCisyMDA4LTA3LTIyICBIZWxnZSBLcmV1dHptYW5uICA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CisKKwkqIHBvL2RlLnBvOiBVbmlmeSB0cmFuc2xhdGlvbiBvZiAiZGl2ZXJzaW9uIi4gVXBkYXRlIHRvIDE1OTR0MGY3dS4KKworMjAwOC0wNi0yMiAgRmxvcmVudCBVU1NFSUwgIDxzd2lpcDgxQGZyZWUuZnI+CisKKwkqIHBvL2ZyLnBvOiBVcGRhdGVkIHRvIDE2MDF0LgorCisyMDA4LTA2LTEwICBXaWt0b3IgV2FuZGFjaG93aWN6ICA8c2lyeWVzQGdtYWlsLmNvbT4KKworCSogcG8vcGwuYWRkOiBVcGRhdGUuCisKKzIwMDgtMDYtMDcgIFdpa3RvciBXYW5kYWNob3dpY3ogIDxzaXJ5ZXNAZ21haWwuY29tPgorCisJKiBwby9wbC5wbzogQWNrIHR5cG8gZml4LgorCSogcG8vcGwuYWRkOiBBZGQgY29uZW50cy4KKworMjAwOC0wNi0wNiAgV2lrdG9yIFdhbmRhY2hvd2ljeiAgPHNpcnllc0BnbWFpbC5jb20+CisKKwkqIHBvL3BsLnBvOiBVcGRhdGVkIHRvIDE2MDF0LgorCisyMDA4LTA2LTA0ICBQZXRlciBLYXJsc3NvbiAgPHBldGVya0BkZWJpYW4ub3JnPgorCisJKiBwby9zdi5wbzogVXBkYXRlZCB0byAxNjAxdC4KKworMjAwOC0wNi0wMyAgSGVsZ2UgS3JldXR6bWFubiAgPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorCisJKiBwby9kcGtnLW1hbi5wb3Q6IFJlZ2VuZXJhdGVkLgorCSogcG8vKi5wbzogTWVyZ2VkIHdpdGggZHBrZy1tYW4ucG90LgorCSogcG8vZGUuYWRkOiBBZGQgU3ZlbiwgaGUgdHJhbnNsYXRlZCBzb21lIHBhcmFncmFwaHMgYXMgd2VsbC4KKwkqIHBvL2RlLnBvOiBUYWtlIHRyYW5zbGF0aW9uIGZpeCBmcm9tCisJRnJhbmsgTGljaHRlbmhlbGQgPGRqcGlnQGRlYmlhbi5vcmc+IGZyb20gdGhlIG1hc3Rlci4KKworMjAwOC0wNS0yNyAgUGV0ZXIgS2FybHNzb24gIDxwZXRlcmtAZGViaWFuLm9yZz4KKworCSogcG8vc3YucG86IFVwZGF0ZWQgdG8gMTYwMHQuCisKKzIwMDgtMDUtMjUgIEhlbGdlIEtyZXV0em1hbm4gIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KKworCSogcG8vZGUucG86IFVwZGF0ZWQgdG8gMTU5MXQwZjl1IGFuZCBmdXJ0aGVyIGZpeGVzIGZvdW5kL0ZJWE1FcworCXJlbW92ZWQuCisKKzIwMDgtMDUtMjMgIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKwkqIHBvLyoucG86IEZpeCBhbGwgdGhlIGZpbGVuYW1lcyB0byBhdm9pZCBmdXp6eWluZyB0cmFuc2xhdGlvbnMuCisKKzIwMDgtMDUtMjIgIEhlbGdlIEtyZXV0em1hbm4gIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KKworCSogcG8vZGUucG86IFVwZGF0ZWQgdG8gMTU5MHQwZjEwdSBhbmQgb25lIGltcHJvdmVtZW50ICh0aGFua3MgU3ZlbikuCisKKzIwMDgtMDUtMTkgIEhlbGdlIEtyZXV0em1hbm4gIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KKworCSogcG8vZGUucG86IFVwZGF0ZWQgdG8gMTU4OXQwZjExdSBhbmQgbW9yZSBmaXhlcyAodGhhbmtzIFN2ZW4pLgorCisyMDA4LTA1LTE4ICBIZWxnZSBLcmV1dHptYW5uICA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CisKKwkqIHBvL2RlLnBvOiBVcGRhdGVkIHRvIDE1ODh0MGYxMnUgYW5kIHRob3JvdWdoIHByb29mIHJlYWRpbmcuCisKKzIwMDgtMDUtMTMgIFBldGVyIEthcmxzc29uICA8cGV0ZXJrQGRlYmlhbi5vcmc+CisKKwkqIHBvL3N2LnBvOiBVcGRhdGVkIHRvIDE2MDB0LgorCisyMDA4LTA1LTEzICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBwby9kcGtnLW1hbi5wb3Q6IFJlZ2VuZXJhdGVkLgorCSogcG8vKi5wbzogTWVyZ2VkIHdpdGggZHBrZy1tYW4ucG90LgorCisyMDA4LTA1LTEzICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBwby9kcGtnLW1hbi5wb3Q6IFJlZ2VuZXJhdGVkLgorCSogcG8vKi5wbzogTWVyZ2VkIHdpdGggZHBrZy1tYW4ucG90IGFuZCB1bmZ1enp5IHRyYW5zbGF0aW9ucy4KKworMjAwOC0wNS0xMiAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogcG8vZHBrZy1tYW4ucG90OiBSZWdlbmVyYXRlZC4KKwkqIHBvLyoucG86IE1lcmdlZCB3aXRoIGRwa2ctbWFuLnBvdC4KKworMjAwOC0wNS0xMCAgU3ZlbiBKb2FjaGltICA8c3ZlbmpvYWNAZ214LmRlPgorCisJKiBwby9kZS5wbzogRml4IHR5cG9zLgorCisyMDA4LTA1LTA5ICBIZWxnZSBLcmV1dHptYW5uICA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CisKKwkqIHBvL2RlLnBvOiBVcGRhdGVkIHRvIDE1ODR0MGYxN3UuCisKKzIwMDgtMDUtMDkgIFBldGVyIEthcmxzc29uICA8cGV0ZXJrQGRlYmlhbi5vcmc+CisKKwkqIHBvL3N2LnBvOiBVcGRhdGVkIHRvIDE2MDF0LgorCisyMDA4LTA0LTIxICBIZWxnZSBLcmV1dHptYW5uICA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CisKKwkqIHBvL2Rwa2ctbWFuLnBvdDogUmVnZW5lcmF0ZWQuCisJKiBwby8qLnBvOiBNZXJnZWQgd2l0aCBkcGtnLW1hbi5wb3QuCisJKiBwby9kZS5wbzogVXBkYXRlZCB0byAxNTgzdDBmMTh1LiAoYW5kIGNvcnJlY3QgbWlzdGFrZXMpCisKKzIwMDgtMDUtMDUgIFdpa3RvciBXYW5kYWNob3dpY3ogIDxzaXJ5ZXNAZ21haWwuY29tPgorCisJKiBwbC5wbzogVXBkYXRlZCB0byAxNTQzdDU4dS4KKworMjAwOC0wNC0yMSAgSGVsZ2UgS3JldXR6bWFubiAgPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorCisJKiBwby9kZS5wbzogVXBkYXRlZCB0byAxNTgzdDBmMTh1LgorCisyMDA4LTA0LTI5ICBQZXRlciBLYXJsc3NvbiAgPHBldGVya0BkZWJpYW4ub3JnPgorCisJKiBwby9zdi5wbzogVXBkYXRlZCB0byAxNjAxdC4KKworMjAwOC0wNC0yOSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogcG8vZHBrZy1tYW4ucG90OiBSZWdlbmVyYXRlZC4KKwkqIHBvLyoucG86IE1lcmdlZCB3aXRoIGRwa2ctbWFuLnBvdC4KKworMjAwOC0wNC0yNSAgUGV0ZXIgS2FybHNzb24gIDxwZXRlcmtAZGViaWFuLm9yZz4KKworCSogcG8vc3YucG86IFVwZGF0ZWQgdG8gMTYwMHQuCisKKzIwMDgtMDQtMjEgIEhlbGdlIEtyZXV0em1hbm4gIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KKworCSogcG8vZGUucG86IFVwZGF0ZWQgdG8gMTU4MXQwZjE5dS4KKworMjAwOC0wNC0yMSAgSGVsZ2UgS3JldXR6bWFubiAgPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorCisJKiBwby9kZS5wbzogVXBkYXRlZCB0byAxNTgwdDBmMjB1LgorCisyMDA4LTA0LTExICBIZWxnZSBLcmV1dHptYW5uICA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CisKKwkqIHBvL2RlLnBvOiBVcGRhdGVkIHRvIDE1NTJ0MGY0OHUuCisKKzIwMDgtMDQtMTAgIEhlbGdlIEtyZXV0em1hbm4gIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KKworCSogcG8vZGUucG86IFVwZGF0ZWQgdG8gMTUzOHQwZjYydS4KKworMjAwOC0wNC0wOSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogcG8vZHBrZy1tYW4ucG90OiBSZWdlbmVyYXRlZC4KKwkqIHBvLyoucG86IE1lcmdlZCB3aXRoIGRwa2ctbWFuLnBvdC4KKworMjAwOC0wNC0wOCAgSGVsZ2UgS3JldXR6bWFubiAgPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorCisJKiBwby9kZS5wbzogVXBkYXRlZCB0byAxNTIzdDFmNzR1LgorCisyMDA4LTA0LTA4ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBwby9kcGtnLW1hbi5wb3Q6IFJlZ2VuZXJhdGVkLgorCSogcG8vKi5wbzogTWVyZ2VkIHdpdGggZHBrZy1tYW4ucG90LgorCisyMDA4LTA0LTA4ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBwby9wbzRhLmNmZzogQWRkICdkZWItdHJpZ2dlcnMuNScgYW5kICdkcGtnLXRyaWdnZXIuMScuCisKKzIwMDgtMDQtMDggIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHBvL3N2LnBvOiBBZGQgbWlzc2luZyB0ZXJtaW5hdGluZyAnPicuCisKKzIwMDgtMDQtMDcgIEhlbGdlIEtyZXV0em1hbm4gIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KKworCSogcG8vZGUucG86IFVwZGF0ZWQgdG8gMTQ5NHQxZjU5dS4KKworMjAwOC0wNC0wMyAgUGV0ZXIgS2FybHNzb24gIDxwZXRlcmtAZGViaWFuLm9yZz4KKworCSogcG8vc3YucG86IFVwZGF0ZWQgdG8gMTU1NXQuCisKKzIwMDgtMDQtMDEgIEhlbGdlIEtyZXV0em1hbm4gIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KKworCSogcG8vZGUucG86IFVwZGF0ZWQgdG8gMTQ4NHQxZjY5dS4KKworMjAwOC0wMy0zMCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogcG8vZHBrZy1tYW4ucG90OiBSZWdlbmVyYXRlZC4KKwkqIHBvLyoucG86IE1lcmdlZCB3aXRoIGRwa2ctbWFuLnBvdC4KKworMjAwOC0wMy0xMSAgSGVsZ2UgS3JldXR6bWFubiAgPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorCisJKiBwby9kZS5wbzogVXBkYXRlZCB0byAxNDAxdDRmNTZ1LgorCisyMDA4LTAzLTEzICBIZWxnZSBLcmV1dHptYW5uICA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CisKKwkqIHBvL2RlLnBvOiBVcGRhdGVkIHRvIDE0MzF0MGYzMHUuCisKKzIwMDgtMDMtMDkgIFJvYmVydCBMdWJlcmRhICA8cm9iZXJ0QGRlYmlhbi5vcmc+CisKKwkqIHBvL3BsLnBvOiBVcGRhdGVkIHRvIDEzNTZ0MTNmOTN1LiBDb25zaXN0ZW50bHkgdXNlIFBvbGlzaCBxdW90YXRpb24KKwltYXJrcyBpbiB0cmFuc2xhdGlvbnMuCisJKiBwby9kZS5wbywgcG8vaHUucG8sIHBvL3N2LnBvOiBGaXggYSBmZXcgYnJva2VuIG1lc3NhZ2VzLCB0aGF0CisJY2F1c2VkIHRoZSBuZXdlc3QgcG80YSB0byBkaWUgd2l0aCB0aGUgYFVua25vd24gJzwnIG9yICc+JyBzZXF1ZW5jZScKKwllcnJvci4KKworMjAwOC0wMi0yNiAgUGV0ZXIgS2FybHNzb24gIDxwZXRlcmtAZGViaWFuLm9yZz4KKworCSogcG8vc3YucG86IFVwZGF0ZWQgdG8gMTQ2MXQuCisKKzIwMDgtMDItMjQgIFJvYmVydCBMdWJlcmRhICA8cm9iZXJ0QGRlYmlhbi5vcmc+CisKKwkqIHBvL3BsLnBvOiBSZWNvZGVkIHRvIFVURi04LiBVcGRhdGVkIHRvIDEzNDR0MTNmMTAzdS4KKworMjAwOC0wMi0yMiAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogcG8vcG80YS5jZmc6IEFkZCBkZWItc3ltYm9scy41IGluIHRoZSBsaXN0IG9mIG1hbnVhbCBwYWdlcyB0bworCXRyYW5zbGF0ZS4KKworMjAwOC0wMi0xNyAgRnJhbmsgTGljaHRlbmhlbGQgIDxkanBpZ0BkZWJpYW4ub3JnPgorCisJKiBwby9kcGtnLW1hbi5wb3Q6IFJlZ2VuZXJhdGVkLgorCSogcG8vKi5wbzogTWVyZ2VkIHdpdGggZHBrZy1tYW4ucG90LgorCisyMDA4LTAxLTIyICBQZXRlciBLYXJsc3NvbiAgPHBldGVya0BkZWJpYW4ub3JnPgorCisJKiBwby9zdi5wbzogVXBkYXRlZCB0byAxNDIydC4KKworMjAwOC0wMS0yMiAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogcG8vKi5wbzogVXBkYXRlIGFsbCB0cmFuc2xhdGlvbnMgYWNjb3JkaW5nbHkuCisKKzIwMDgtMDEtMjIgIEhlbGdlIEtyZXV0em1hbm4gIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KKworCSogcG8vZGUucG86IFVwZGF0ZWQgdG8gMTM4OXQwZjMzdS4KKworMjAwOC0wMS0yMSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogcG8vZHBrZy1tYW4ucG90OiBSZWdlbmVyYXRlZC4KKwkqIHBvLyoucG86IE1lcmdlZCB3aXRoIGRwa2ctbWFuLnBvdC4KKworMjAwOC0wMS0xMiAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogcG8vKi5wbzogRml4IGEgdHlwbyB0byBhdm9pZCBmdXp6eSBzdHJpbmdzLgorCisyMDA4LTAxLTEyICBIZWxnZSBLcmV1dHptYW5uICA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CisKKwkqIHBvL2RlLnBvOiBVcGRhdGVkIHRvIDEzNTJ0MGYzNHUuCisKKzIwMDgtMDEtMTAgIENocmlzdGlhbiBQZXJyaWVyICA8YnVidWxsZUBkZWJpYW4ub3JnPgorCisJKiBwby9mci5wbzogRml4IHR5cG8KKworMjAwOC0wMS0wNyAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogcG8vZHBrZy1tYW4ucG90OiBSZWdlbmVyYXRlZC4KKwkqIHBvLyoucG86IE1lcmdlZCB3aXRoIGRwa2ctbWFuLnBvdC4KKworMjAwOC0wMS0wMiAgQ2hyaXN0aWFuIFBlcnJpZXIgIDxidWJ1bGxlQGRlYmlhbi5vcmc+CisKKwkqIHBvL2ZyLnBvOiBDb252ZXJ0ZWQgdG8gVVRGLTguIFVwZGF0ZWQgdG8gMTE3MXQxMzlmNzR1LgorCisyMDA3LTEyLTMwICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBwby8qLnBvOiBGaXggdHlwb3MgaW4gdHJhbnNsYXRpb25zIGFzIHdlbGwgdG8gYXZvaWQgZnV6enkKKwlzdHJpbmdzLgorCisyMDA3LTEyLTI5ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBwby9zdi5wbzogTWVyZ2VkIHdpdGggZHBrZy1tYW4ucG90LgorCisyMDA3LTEyLTI3ICBQZXRlciBLYXJsc3NvbiAgPHBldGVya0BkZWJpYW4ub3JnPgorCisJKiBwby9zdi5wbzogVXBkYXRlZCB0byAxMzg0dC4KKworMjAwNy0xMi0yNyAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogcG8vZHBrZy1tYW4ucG90OiBSZWdlbmVyYXRlZC4KKwkqIHBvLyoucG86IE1lcmdlZCB3aXRoIGRwa2ctbWFuLnBvdC4KKworMjAwNy0xMi0yMiAgSGVsZ2UgS3JldXR6bWFubiAgPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorCisJKiBwby9kZS5wbzogVXBkYXRlZCB0byAxMzQ3dDBmMzZ1LgorCisyMDA3LTExLTAyICBQZXRlciBLYXJsc3NvbiAgPHBldGVya0BkZWJpYW4ub3JnPgorCisJKiBwby9zdi5wbzogVXBkYXRlZCB0byAxMzgzdC4KKworMjAwNy0xMi0xNyAgSGVsZ2UgS3JldXR6bWFubiAgPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorCisJKiBwby9kZS5wbzogVXBkYXRlZCB0byAxMzQydDBmNDF1LgorCisyMDA3LTExLTE5ICBIZWxnZSBLcmV1dHptYW5uICA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CisKKwkqIHBvL2RlLnBvOiBVcGRhdGVkIHRvIDEzMzV0MGY0OHUuCisKKzIwMDctMTItMDQgIEZyYW5rIExpY2h0ZW5oZWxkICA8ZGpwaWdAZGViaWFuLm9yZz4KKworCSogcG8vcG80YS5jZmc6IEFkZCBkZWItdmVyc2lvbi41LgorCSogcG8vZHBrZy1tYW4ucG90OiBSZWdlbmVyYXRlZC4KKwkqIHBvLyoucG86IE1lcmdlZCB3aXRoIGRwa2ctbWFuLnBvdC4KKworCSogcG8vc3YucG86IEZpeCBhIHR5cG8gJyknIHZzICc+JyB3aGljaCBsZWFkIHRvCisJYnVpbGQgZXJyb3JzLgorCisyMDA3LTExLTAyICBQZXRlciBLYXJsc3NvbiAgPHBldGVya0BkZWJpYW4ub3JnPgorCisJKiBwby9zdi5wbzogVXBkYXRlZCB0byAxMzU0dC4KKworMjAwNy0xMS0yOSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogcG8vZHBrZy1tYW4ucG90OiBSZWdlbmVyYXRlZC4KKwkqIHBvLyoucG86IE1lcmdlZCB3aXRoIGRwa2ctbWFuLnBvdC4KKworMjAwNy0xMS0wMiAgUGV0ZXIgS2FybHNzb24gIDxwZXRlcmtAZGViaWFuLm9yZz4KKworCSogcG8vc3YucG86IFVwZGF0ZWQgdG8gMTM0NHQuCisKKzIwMDctMTEtMTkgIEhlbGdlIEtyZXV0em1hbm4gIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KKworCSogcG8vZGUucG86IFVwZGF0ZWQgdG8gMTMwM3QwZjQxdS4KKworMjAwNy0xMS0xOSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogcG8vZHBrZy1tYW4ucG90OiBSZWdlbmVyYXRlZC4KKwkqIHBvLyoucG86IE1lcmdlZCB3aXRoIGRwa2ctbWFuLnBvdC4KKworMjAwNy0xMS0wNCAgUm9iZXJ0IEx1YmVyZGEgIDxyb2JlcnRAZGViaWFuLm9yZz4KKworCSogcG8vcGwucG86IFVwZGF0ZSB0byAxMjU4dDEwZjc3dSwgZml4IHR5cG9zIGluIGV4aXN0aW5nCisJdHJhbnNsYXRpb25zLgorCisyMDA3LTExLTEwICBIZWxnZSBLcmV1dHptYW5uICA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CisKKwkqIHBvL2RlLnBvOiBTcGVsbGNoZWNrZWQuCisKKzIwMDctMTEtMDQgIFJvYmVydCBMdWJlcmRhICA8cm9iZXJ0QGRlYmlhbi5vcmc+CisKKwkqIHBvL3BsLnBvOiBVcGRhdGUgdG8gMTIyMXQxNmYxMDh1LgorCisyMDA3LTExLTA0ICBIZWxnZSBLcmV1dHptYW5uICA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CisKKwkqIHBvL2RlLnBvOiBVcGRhdGVkIHRvIDEzMDB0MGY0NXUuCisKKzIwMDctMTEtMDIgIFBldGVyIEthcmxzc29uICA8cGV0ZXJrQGRlYmlhbi5vcmc+CisKKwkqIHBvL2Rwa2ctbWFuLnBvdDogUmVnZW5lcmF0ZWQuCisJKiBwby8qLnBvOiBNZXJnZWQgd2l0aCBkcGtnLW1hbi5wb3QuCisJKiBwby9zdi5wbzogVXBkYXRlZCB0byAxMzQ1dDBmMHUuCisKKzIwMDctMTAtMjYgIFBldGVyIEthcmxzc29uICA8cGV0ZXJrQHNvZnR3b2x2ZXMucHAuc2U+CisKKwkqIHBvL3N2LnBvOiBVcGRhdGVkIHRvIDEzNDN0MGYwdS4KKworMjAwNy0xMC0yNCAgUGV0ZXIgS2FybHNzb24gIDxwZXRlcmtAc29mdHdvbHZlcy5wcC5zZT4KKworCSogcG8vc3YucG86IFVwZGF0ZWQgdG8gMTMzOHQwZjV1LgorCisyMDA3LTEwLTEzICBIZWxnZSBLcmV1dHptYW5uICA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CisKKwkqIHBvL2RlLnBvOiBVcGRhdGVkIHRvIDEyODB0MGY2M3UuCisKKzIwMDctMTAtMTIgIEhlbGdlIEtyZXV0em1hbm4gIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KKworCSogcG8vZGUucG86IFVwZGF0ZWQgdG8gMTI4MHQwZjYzdSwgYWRkIGxvdHMgb2YgZml4ZXMgZnJvbQorCUZyYW5rIExpY2h0ZW5oZWxkLCB0aGFua3MhCisKKzIwMDctMTAtMTEgIEhlbGdlIEtyZXV0em1hbm4gIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KKworCSogcG8vZGUucG86IFVwZGF0ZWQgdG8gMTI3OXQwZjY0dS4KKworMjAwNy0xMC0xMSAgRnJhbmsgTGljaHRlbmhlbGQgIDxkanBpZ0BkZWJpYW4ub3JnPgorCisJKiBwby9kcGtnLW1hbi5wb3Q6IFJlZ2VuZXJhdGVkLgorCSogcG8vKi5wbzogTWVyZ2VkIHdpdGggZHBrZy1tYW4ucG90LgorCisyMDA3LTEwLTA4ICBSb2JlcnQgTHViZXJkYSAgPHJvYmVydEBkZWJpYW4ub3JnPgorCisJKiBwby9wbC5wbzogVXBkYXRlIHRvIDExODN0MTlmMTAxdS4KKworMjAwNy0xMC0wOCAgSGVsZ2UgS3JldXR6bWFubiAgPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorCisJKiBwby9kZS5wbzogVXBkYXRlZCB0byAxMjQ5dDBmNTR1LiBSZW1vdmUgdGhlIEZJWE1FcyBsZWZ0IGJ5IGFjY2lkZW50LgorCisyMDA3LTEwLTA4ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBwby9kcGtnLW1hbi5wb3Q6IFJlZ2VuZXJhdGVkLgorCSogcG8vKi5wbzogTWVyZ2VkIHdpdGggZHBrZy1tYW4ucG90LgorCisyMDA3LTEwLTA3ICBIZWxnZSBLcmV1dHptYW5uICA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CisKKwkqIHBvL2RlLnBvOiBVcGRhdGVkIHRvIDEyMzh0MGY1MnUuCisKKzIwMDctMDktMjggIFBldGVyIEthcmxzc29uICA8cGV0ZXJrQGRlYmlhbi5vcmc+CisKKwkqIHBvL3N2LnBvOiBVcGRhdGVkIHRvIDEyOTB0LgorCisyMDA3LTA5LTIzICBQZXRlciBLYXJsc3NvbiAgPHBldGVya0BkZWJpYW4ub3JnPgorCisJKiBwby9zdi5hZGQ6IEZpeGVkIHR5cG8uCisKKzIwMDctMDktMTUgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHBvL2Rwa2ctbWFuLnBvdDogUmVnZW5lcmF0ZWQuCisJKiBwby8qLnBvOiBNZXJnZWQgd2l0aCBkcGtnLW1hbi5wb3QuCisKKzIwMDctMDktMDkgIEhlbGdlIEtyZXV0em1hbm4gIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KKworCSogcG8vZGUucG86IFVwZGF0ZWQgdG8gMTI1NHQxMzV1LgorCisyMDA3LTA5LTA1ICBQZXRlciBLYXJsc3NvbiAgPHBldGVya0BkZWJpYW4ub3JnPgorCisJKiBwby9zdi5wbzogVXBkYXRlZCB0byAxMjg5dC4KKworMjAwNy0wOS0wNSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogcG8vZHBrZy1tYW4ucG90OiBSZWdlbmVyYXRlZC4KKwkqIHBvLyoucG86IE1lcmdlZCB3aXRoIGRwa2ctbWFuLnBvdC4KKworMjAwNy0wOC0yNSAgUGV0ZXIgS2FybHNzb24gIDxwZXRlcmtAZGViaWFuLm9yZz4KKworCSogcG8vc3YucG86IFVwZGF0ZWQgdG8gMTI4NXQuCisKKzIwMDctMDgtMTggIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHBvL2Rwa2ctbWFuLnBvdDogUmVnZW5lcmF0ZWQuCisJKiBwby8qLnBvOiBNZXJnZWQgd2l0aCBkcGtnLW1hbi5wb3QuCisKKzIwMDctMDgtMTQgIFJvYmVydCBMdWJlcmRhICA8cm9iZXJ0QGRlYmlhbi5vcmc+CisKKwkqIHBvL3BsLnBvOiBVcGRhdGUgdG8gMTAwMnQxNGYyNjl1LgorCisyMDA3LTA4LTA1ICBQZXRlciBLYXJsc3NvbiAgPHBldGVya0BkZWJpYW4ub3JnPgorCisJKiBwby9zdi5wbzogVXBkYXRlZCB0byAxMjgydC4KKworMjAwNy0wOC0wNSAgSGVsZ2UgS3JldXR6bWFubiAgPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorCisJKiBwby9kZS5wbzogVXBkYXRlZCB0byAxMTExdDZmMTY1dS4KKworMjAwNy0wNy0zMSAgUGV0ZXIgS2FybHNzb24gIDxwZXRlcmtAZGViaWFuLm9yZz4KKworCSogcG8vc3YucG8sIHBvL3N2LmFkZDogVXBkYXRlZCB0byA5OTF0MjkxdS4KKworMjAwNy0wNy0yMSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogcG8vZHBrZy1tYW4ucG90OiBSZWdlbmVyYXRlZC4KKwkqIHBvLyoucG86IE1lcmdlZCB3aXRoIGRwa2ctbWFuLnBvdC4KKworMjAwNy0wNy0wOCAgSGVsZ2UgS3JldXR6bWFubiAgPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorCisJKiBwby9kZS5wbzogVXBkYXRlZCB0byAxMDYxdDFmMjE5dS4KKworMjAwNy0wNy0wMiAgRnJhbmsgTGljaHRlbmhlbGQgIDxkanBpZ0BkZWJpYW4ub3JnPgorCisJKiBwby9kcGtnLW1hbi5wb3Q6IFJlZ2VuZXJhdGVkLgorCSogcG8vKi5wbzogTWVyZ2VkIHdpdGggZHBrZy1kZXYucG90LgorCisyMDA3LTA2LTIzICBKb2FjaGltIEJyZWl0bmVyICA8bm9tZWF0YUBkZWJpYW4ub3JnPgorCisJKiBwby9kZS5wbzogRml4IHR5cG8gKCd3aXInIC0+ICd3aXJkJykuCisKKzIwMDctMDYtMDkgIEhlbGdlIEtyZXV0em1hbm4gIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KKworCSogcG8vZGUucG86IFVwZGF0ZWQgdG8gMTAxOXQxNmYyNDd1LgorCisyMDA3LTA2LTAyICBOaWNvbGFzIEZyYW5jb2lzICA8bmljb2xhcy5mcmFuY29pc0BjZW50cmFsaWVucy5uZXQ+CisKKwkqIHBvL2ZyLnBvOiBVcGRhdGVkIHRvIDEyODJ0LgorCisyMDA3LTA1LTI0ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBwby9mci5wbzogTWVyZ2VkIHdpdGggZHBrZy1tYW4ucG90LgorCisyMDA3LTA1LTE3ICBOaWNvbGFzIEZyYW5jb2lzICA8bmljb2xhcy5mcmFuY29pc0BjZW50cmFsaWVucy5uZXQ+CisKKwkqIHBvL2ZyLnBvOiBVcGRhdGVkIHRvIDEyNTR0MjZmMnUuCisKKzIwMDctMDUtMTUgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHBvL2Rwa2ctbWFuLnBvdDogUmVnZW5lcmF0ZWQuCisJKiBwby8qLnBvOiBNZXJnZWQgd2l0aCBkcGtnLW1hbi5wb3QuCisKKzIwMDctMDUtMDggIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHBvL3BsLnBvOiBNZXJnZWQgd2l0aCBkcGtnLW1hbi5wb3QuCisKKzIwMDctMDUtMDggIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHBvL2FkZF9kZS8qOiBNb3ZlIGNvbnRlbnRzIHRvIC4uLgorCSogcG8vZGUuYWRkOiAuLi4gaGVyZS4KKwkqIHBvL2FkZF9lcy8qOiBNb3ZlIGNvbnRlbnRzIHRvIC4uLgorCSogcG8vZXMuYWRkOiAuLi4gaGVyZS4KKwkqIHBvL2FkZF9mci8qOiBNb3ZlIGNvbnRlbnRzIHRvIC4uLgorCSogcG8vZnIuYWRkOiAuLi4gaGVyZS4KKwkqIHBvL2FkZF9odS8qOiBNb3ZlIGNvbnRlbnRzIHRvIC4uLgorCSogcG8vaHUuYWRkOiAuLi4gaGVyZS4KKwkqIHBvL2FkZF9qYS8qOiBNb3ZlIGNvbnRlbnRzIHRvIC4uLgorCSogcG8vamEuYWRkOiAuLi4gaGVyZS4KKwkqIHBvL2FkZF9wbC8qOiBNb3ZlIGNvbnRlbnRzIHRvIC4uLgorCSogcG8vcGwuYWRkOiAuLi4gaGVyZS4KKwkqIHBvL2FkZF9wdF9CUi8qOiBNb3ZlIGNvbnRlbnRzIHRvIC4uLgorCSogcG8vcHRfQlIuYWRkOiAuLi4gaGVyZS4KKwkqIHBvL2FkZF9ydS8qOiBNb3ZlIGNvbnRlbnRzIHRvIC4uLgorCSogcG8vcnUuYWRkOiAuLi4gaGVyZS4KKwkqIHBvL2FkZF9zdi8qOiBNb3ZlIGNvbnRlbnRzIHRvIC4uLgorCSogcG8vc3YuYWRkOiAuLi4gaGVyZS4KKwkqIHBvL3BvNGEuY2ZnOiBDaGFuZ2UgYWRkZW5kYSBwYXRocyB0byAnJChzcmNkaXIpL3BvLyRsYW5nLmFkZCcuCisKKzIwMDctMDUtMDQgIFJvYmVydCBMdWJlcmRhICA8cm9iZXJ0QGRlYmlhbi5vcmc+CisKKwkqIHBvL3BsLnBvOiBVcGRhdGUgdG8gOTk3dDEyZjI2OXUuCisKKzIwMDctMDUtMDIgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHBvL2FkZF9kZS9kZWItc2hsaWJzLjUuZGUuYWRkOiBOZXcgZHVtbXkgZmlsZS4KKwkqIHBvL2FkZF9kZS9kcGtnLWRpc3RhZGRmaWxlLjEuZGUuYWRkOiBMaWtld2lzZS4KKwkqIHBvL2RlLnBvOiBNZXJnZWQgZnJvbSBtYXN0ZXIgZmlsZXMuCisKKzIwMDctMDMtMjYgIE1hcnRpbiBXZWlzICA8TWFydGluLldlaXMubmV3c2FkcmVzc0BnbXguZGU+CisKKwkqIHBvL2RlLnBvOiBGaXggdHlwbyAoJ1Bha2V0ZScgLT4gJ0RhdGVpZW4nKS4KKworMjAwNy0wMy0yMSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogcG8vZHBrZy1tYW4ucG90OiBSZWdlbmVyYXRlZC4KKwkqIHBvLyoucG86IE1lcmdlZCB3aXRoIGRwa2ctbWFuLnBvdC4KKworMjAwNy0wMy0yMCAgUm9iZXJ0IEx1YmVyZGEgIDxyb2JlcnRAZGViaWFuLm9yZz4KKworCSogcG8vcGwucG86IFVwZGF0ZSB0byA5NzR0MThmMjg2dS4KKworMjAwNy0wMy0xOCAgUm9iZXJ0IEx1YmVyZGEgIDxyb2JlcnRAZGViaWFuLm9yZz4KKworCSogcG8vcGwucG86IFVwZGF0ZSB0byA4Nzh0OTJmMzA4dS4KKworMjAwNy0wMy0xMyAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogcG8vYWRkX2RlL2Rwa2ctc2NhbnBhY2thZ2VzLjEuZGUuYWRkOiBDb3B5IHRvIC4uLgorCSogcG8vYWRkX2RlL2RlYi1vdmVycmlkZS41LmRlLmFkZDogLi4uIGhlcmUuCisJKiBwby9hZGRfZXMvZHBrZy1zY2FucGFja2FnZXMuMS5lcy5hZGQ6IENvcHkgdG8gLi4uCisJKiBwby9hZGRfZXMvZGViLW92ZXJyaWRlLjUuZXMuYWRkOiAuLi4gaGVyZS4KKwkqIHBvL2FkZF9mci9kcGtnLXNjYW5wYWNrYWdlcy4xLmZyLmFkZDogQ29weSB0byAuLi4KKwkqIHBvL2FkZF9mci9kZWItb3ZlcnJpZGUuNS5mci5hZGQ6IC4uLiBoZXJlLgorCSogcG8vYWRkX2phL2Rwa2ctc2NhbnBhY2thZ2VzLjEuamEuYWRkOiBDb3B5IHRvIC4uLgorCSogcG8vYWRkX2phL2RlYi1vdmVycmlkZS41LmphLmFkZDogLi4uIGhlcmUuCisKKzIwMDctMDMtMTIgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHBvL3BvNGEuY2ZnOiBBZGQgc3RhbnphcyBmb3IgZGViLXNobGlicy41LCBkZWItc3Vic3R2YXJzLjUsCisJZHBrZy1idWlsZHBhY2thZ2UuMSwgZHBrZy1kaXN0YWRkZmlsZS4xLCBkcGtnLWdlbmNoYW5nZXMuMSwKKwlkcGtnLWdlbmNvbnRyb2wuMSwgZHBrZy1wYXJzZWNoYW5nZWxvZy4xIGFuZCBkcGtnLXNobGliZGVwcy4xLgorCSogcG8vYWRkX2ZyL2Rwa2ctc291cmNlLjEuZnIuYWRkOiBDb3B5IHRvIC4uLgorCSogcG8vYWRkX2ZyL2RlYi1zaGxpYnMuNS5mci5hZGQ6IC4uLiBoZXJlIGFuZCAuLi4KKwkqIHBvL2FkZF9mci9kZWItc3Vic3R2YXJzLjUuZnIuYWRkOiAuLi4gaGVyZSBhbmQgLi4uCisJKiBwby9hZGRfZnIvZHBrZy1idWlsZHBhY2thZ2UuMS5mci5hZGQ6IC4uLiBoZXJlIGFuZCAuLi4KKwkqIHBvL2FkZF9mci9kcGtnLWRpc3RhZGRmaWxlLjEuZnIuYWRkOiAuLi4gaGVyZSBhbmQgLi4uCisJKiBwby9hZGRfZnIvZHBrZy1nZW5jaGFuZ2VzLjEuZnIuYWRkOiAuLi4gaGVyZSBhbmQgLi4uCisJKiBwby9hZGRfZnIvZHBrZy1nZW5jb250cm9sLjEuZnIuYWRkOiAuLi4gaGVyZSBhbmQgLi4uCisJKiBwby9hZGRfZnIvZHBrZy1wYXJzZWNoYW5nZWxvZy4xLmZyLmFkZDogLi4uIGhlcmUgYW5kIC4uLgorCSogcG8vYWRkX2ZyL2Rwa2ctc2hsaWJkZXBzLjEuZnIuYWRkOiAuLi4gaGVyZS4KKwkqIHBvL2FkZF9lcy9kcGtnLXNvdXJjZS4xLmVzLmFkZDogQ29weSB0byAuLi4KKwkqIHBvL2FkZF9lcy9kZWItc2hsaWJzLjUuZXMuYWRkOiAuLi4gaGVyZSBhbmQgLi4uCisJKiBwby9hZGRfZXMvZGViLXN1YnN0dmFycy41LmVzLmFkZDogLi4uIGhlcmUgYW5kIC4uLgorCSogcG8vYWRkX2VzL2Rwa2ctYnVpbGRwYWNrYWdlLjEuZXMuYWRkOiAuLi4gaGVyZSBhbmQgLi4uCisJKiBwby9hZGRfZXMvZHBrZy1kaXN0YWRkZmlsZS4xLmVzLmFkZDogLi4uIGhlcmUgYW5kIC4uLgorCSogcG8vYWRkX2VzL2Rwa2ctZ2VuY2hhbmdlcy4xLmVzLmFkZDogLi4uIGhlcmUgYW5kIC4uLgorCSogcG8vYWRkX2VzL2Rwa2ctZ2VuY29udHJvbC4xLmVzLmFkZDogLi4uIGhlcmUgYW5kIC4uLgorCSogcG8vYWRkX2VzL2Rwa2ctcGFyc2VjaGFuZ2Vsb2cuMS5lcy5hZGQ6IC4uLiBoZXJlIGFuZCAuLi4KKwkqIHBvL2FkZF9lcy9kcGtnLXNobGliZGVwcy4xLmVzLmFkZDogLi4uIGhlcmUuCisKKzIwMDctMDMtMTIgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHBvL3BvNGEuY2ZnOiBBZGQgYSBzdGFuemEgZm9yIGRlYi1vdmVycmlkZS41LgorCisyMDA3LTAxLTE2ICBOaWNvbGFzIEZyYW5jb2lzICA8bmljb2xhcy5mcmFuY29pc0BjZW50cmFsaWVucy5uZXQ+CisKKwkqIHBvL2FkZF9mci9kc2VsZWN0LmNmZy41LmZyLmFkZDogTmV3IHRyYW5zbGF0ZWQgbWFuIHBhZ2UuCisKKzIwMDctMDEtMTYgIE5pY29sYXMgRnJhbmNvaXMgIDxuaWNvbGFzLmZyYW5jb2lzQGNlbnRyYWxpZW5zLm5ldD4KKworCSogcG8vOiBOZXcgZGlyZWN0b3J5LgorCSogcG8vZHBrZy1tYW4ucG90LCBwby9kZS5wbywgcG8vZXMucG8sIHBvL2ZyLnBvLCBwby9odS5wbywKKwlwby9qYS5wbywgcG8vcGwucG8sIHBvL3B0X0JSLnBvLCBwby9ydS5wbywgcG8vc3YucG86IE1lcmdlIHRoZSBQT3MKKwl3aGljaCB1c2VkIHRvIGJlIGluIHBvNGEvLiBXaGVuIG11bHRpcGxlIHRyYW5zbGF0aW9ucyBhcHBlYXJlZCBmb3IKKwlhIHN0cmluZywgdGhlIHN0cmluZyB3YXMgbWFya2VkIGFzIGZ1enp5LiBBbHNvIHRoZSBQT3Mgbm93IGNvbnRhaW4KKwl0aGUgc3RyaW5ncyBvZiBhbGwgdGhlIG1hbiBwYWdlcy4KKwkqIHBvL2FkZF9kZS8sIHBvL2FkZF9lcywgcG8vYWRkX2ZyLCBwby9hZGRfaHUsIHBvL2FkZF9qYSwKKwlwby9hZGRfcGwsIHBvL2FkZF9wdF9CUiwgcG8vYWRkX3J1LCBwby9hZGRfc3Y6IE1vdmUgdGhlIGFkZF88bGFuZz4KKwlkaXJlY3RvcmllcyBmcm9tIHBvNGEvIHRvIHBvLy4KKwkqIHBvNGEvOiBSZW1vdmVkLgorCSogZGUvTWFrZWZpbGUuYW0gZXMvTWFrZWZpbGUuYW0sIGZyL01ha2VmaWxlLmFtLCBodS9NYWtlZmlsZS5hbSwKKwlqYS9NYWtlZmlsZS5hbSwgcGwvTWFrZWZpbGUuYW0sIHB0X0JSL01ha2VmaWxlLmFtLCBydS9NYWtlZmlsZS5hbSwKKwlzdi9NYWtlZmlsZS5hbTogVGhlIGxhbmd1YWdlcyBtYWtlZmlsZXMgYXJlIG5vIG1vcmUgbmVlZGVkLgorCUFsc28gcmVtb3ZlIHRoZSBsYW5ndWFnZSBkaXJlY3Rvcmllcy4KKworMjAwNi0xMC0wNyAgTmljb2xhcyBGcmFuY29pcyAgPG5pY29sYXMuZnJhbmNvaXNAY2VudHJhbGllbnMubmV0PgorCisJKiBwbzRhL2Rwa2ctZGViLjEvZHBrZy1kZWIuMS5jZmc6IFRoZSBQTyBhcmUgbm93IGluIFVURi04LCBzcGVjaWZ5IHRoZQorCWVuY29kaW5nIG9mIHRoZSBnZW5lcmF0ZWQgbWFucGFnZXMgKGFuZCBhZGRlbmRhKSBpbiB0aGUgY29uZmlnIGZpbGUuCisJKiBwbzRhL2RlYi1jb250cm9sLjUvZGViLWNvbnRyb2wuNS5jZmc6IExpa2V3aXNlLgorCSogcG80YS9kc2VsZWN0LmNmZy41L2RzZWxlY3QuY2ZnLjUuY2ZnOiBMaWtld2lzZS4KKwkqIHBvNGEvZHBrZy5jZmcuNS9kcGtnLmNmZy41LmNmZzogTGlrZXdpc2UuCisJKiBwbzRhL2Rwa2cuY2ZnLjUvZHBrZy5jZmcuNS5jZmc6IEFjdGl2YXRlIHRoZSBGcmVuY2ggdHJhbnNsYXRpb24uCisJKiBwbzRhL2FkZF9mci9kcGtnLmNmZy41LmZyLmFkZDogQWRkIHRoZSBtaXNzaW5nIEZyZW5jaCBhZGRlbmR1bS4KKwkqIHBvNGEvODIyLWRhdGUuMS9wby9mci5wbzogTmV3IHRyYW5zbGF0aW9uLgorCSogcG80YS9kcGtnLXNjYW5zb3VyY2VzLjEvcG8vZnIucG86IExpa2V3aXNlLgorCSogcG80YS9hZGRfZnIvODIyLWRhdGUuMS5mci5hZGQ6IEFkZGVuZHVtIGZvciB0aGUgbmV3IHRyYW5zbGF0aW9uLgorCSogcG80YS9hZGRfZnIvZHBrZy1zY2Fuc291cmNlcy4xLmZyLmFkZDogTGlrZXdpc2UuCisJKiBwbzRhLzgyMi1kYXRlLjEvODIyLWRhdGUuMS5jZmc6IEFkZCB0aGUgYGZyJyBsYW5ndWFnZS4KKwkqIHBvNGEvZHBrZy1zY2Fuc291cmNlcy4xL2Rwa2ctc2NhbnNvdXJjZXMuMS5jZmc6IExpa2V3aXNlLgorCisyMDA2LTEwLTA2ICBTWkVSVsOBQyBBdHRpbGEgIDxzYXNAMzIxLmh1PgorCisJKiBwbzRhL2Rwa2cuY2ZnLjUvcG8vaHUucG86IFVwZGF0ZWQgYW5kIHN3aXRjaCB0byBVVEYtOC4KKwkqIHBvNGEvZHNlbGVjdC5jZmcuNS9wby9odS5wbzogTGlrZXdpc2UuCisJKiBwbzRhL2RlYi1jb250cm9sLjUvcG8vaHUucG86IExpa2V3aXNlLgorCSogcG80YS9kcGtnLWRlYi4xL3BvL2h1LnBvOiBMaWtld2lzZS4KKworMjAwNi0wOS0zMCAgSGVsZ2UgS3JldXR6bWFubiAgPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorCisJKiBwbzRhL2Rwa2ctc2NhbnNvdXJjZXMuMS9wby9kZS5wbzogVXBkYXRlZCB0cmFuc2xhdGlvbi4KKworMjAwNi0wOS0yOSAgTmljb2xhcyBGcmFuY29pcyAgPG5pY29sYXMuZnJhbmNvaXNAY2VudHJhbGllbnMubmV0PgorCisJKiBwbzRhL2Rwa2ctc2NhbnNvdXJjZXMuMS9wby9kcGtnLXNjYW5zb3VyY2VzLjEucG90OiBSZWdlbmVyYXRlZC4KKwkqIHBvNGEvZHBrZy1zY2Fuc291cmNlcy4xL3BvLyoucG86IE1lcmdlIHdpdGggcG90IGZpbGUuCisKKzIwMDYtMDktMjcgIE5pY29sYXMgRnJhbmNvaXMgIDxuaWNvbGFzLmZyYW5jb2lzQGNlbnRyYWxpZW5zLm5ldD4KKworCSogcG80YS9kcGtnLXNjYW5zb3VyY2VzLjEvcG8vZGUucG86IEZpeCBhIHR5cG8uCisKKzIwMDYtMDktMjMgIE5pY29sYXMgRnJhbmNvaXMgIDxuaWNvbGFzLmZyYW5jb2lzQGNlbnRyYWxpZW5zLm5ldD4KKworCSogcG80YS9zdGFydC1zdG9wLWRhZW1vbi44L3BvL2ZyLnBvOiBVcGRhdGVkIHRyYW5zbGF0aW9uLgorCUFuZCB0YWtpbmcgb3ZlciB0aGUgRnJlbmNoIHRyYW5zbGF0aW9uIG9mIHRoZSBkcGtnIG1hbnBhZ2VzICh3aXRoCisJdGhlIHByZXZpb3VzIG1haW50YWluZXIgYWdyZWVtZW50KS4KKworMjAwNi0wOS0yMyAgS0lTRSBIaXJvc2hpICA8a2lzZUBmdXl1bmVrby5qcD4KKworCSogcG80YS9kcGtnLXF1ZXJ5LjEvcG8vamEucG86IEZpeCB0eXBvcy4KKwkqIHBvNGEvZHBrZy4xL3BvL2phLnBvOiBMaWtld2lzZS4KKwkqIHBvNGEvdXBkYXRlLWFsdGVybmF0aXZlcy44L3BvL2phLnBvOiBMaWtld2lzZS4KKwkqIHBvNGEvZHNlbGVjdC4xL3BvL2phLnBvOiBGaXggYSB0eXBvIGluIHRoZSBoZWFkZXIuCisJKiBwbzRhLzgyMi1kYXRlLjEvcG8vamEucG86IExpa2V3aXNlLgorCSogcG80YS9jbGVhbnVwLWluZm8uOC9wby9qYS5wbzogTGlrZXdpc2UuCisJKiBwbzRhL3N0YXJ0LXN0b3AtZGFlbW9uLjgvcG8vamEucG86IExpa2V3aXNlLgorCSogcG80YS9kcGtnLWNoZWNrYnVpbGRkZXBzLjEvcG8vamEucG86IExpa2V3aXNlLgorCSogcG80YS9kcGtnLW5hbWUuMS9wby9qYS5wbzogTGlrZXdpc2UuCisJKiBwbzRhL2Rwa2ctc2NhbnBhY2thZ2VzLjEvcG8vamEucG86IExpa2V3aXNlLgorCSogcG80YS9kcGtnLWRpdmVydC44L3BvL2phLnBvOiBMaWtld2lzZS4KKwkqIHBvNGEvZGViLjUvcG8vamEucG86IExpa2V3aXNlLgorCSogcG80YS9kcGtnLXN0YXRvdmVycmlkZS44L3BvL2phLnBvOiBMaWtld2lzZS4KKwkqIHBvNGEvaW5zdGFsbC1pbmZvLjgvcG8vamEucG86IExpa2V3aXNlLgorCSogcG80YS9kZWItb2xkLjUvcG8vamEucG86IExpa2V3aXNlLgorCisyMDA2LTA5LTExICBLSVNFIEhpcm9zaGkgIDxraXNlQGZ1eXVuZWtvLmpwPgorCisJKiBwbzRhL2FkZF9qYS9kcGtnLjEuamEuYWRkOiBSZWNvZGUgdGhlIGFkZGVuZHVtIGluIFVURi04LgorCSogcG80YS9hZGRfamEvZHNlbGVjdC4xLmphLmFkZDogTGlrZXdpc2UuCisJKiBwbzRhL2FkZF9qYS91cGRhdGUtYWx0ZXJuYXRpdmVzLjguamEuYWRkOiBMaWtld2lzZS4KKwkqIHBvNGEvYWRkX2phL2Rwa2ctZGViLjEuamEuYWRkOiBVcGRhdGVkLgorCSogcG80YS9kcGtnLjEvZHBrZy4xLmNmZzogU3BlY2lmeSB0aGUgcG80YSBvcHRpb25zIGZvciB0aGUgSmFwYW5lc2UKKwl0cmFuc2xhdGlvbi4KKwkqIHBvNGEvZHNlbGVjdC4xL2RzZWxlY3QuMS5jZmc6IExpa2V3aXNlLgorCSogcG80YS91cGRhdGUtYWx0ZXJuYXRpdmVzLjgvdXBkYXRlLWFsdGVybmF0aXZlcy44LmNmZzogTGlrZXdpc2UuCisJKiBwbzRhL2Rwa2cuMS9wby9qYS5wbzogVXBkYXRlZCB0cmFuc2xhdGlvbi4KKwkqIHBvNGEvZHNlbGVjdC4xL3BvL2phLnBvOiBMaWtld2lzZS4KKwkqIHBvNGEvdXBkYXRlLWFsdGVybmF0aXZlcy44L3BvL2phLnBvOiBMaWtld2lzZS4KKwkqIHBvNGEvZGViLWNvbnRyb2wuNS9wby9qYS5wbzogTGlrZXdpc2UuCisJKiBwbzRhL2Rwa2ctZGViLjEvcG8vamEucG86IExpa2V3aXNlLgorCSogcG80YS9zdGFydC1zdG9wLWRhZW1vbi44L3BvL2phLnBvOiBMaWtld2lzZS4KKworMjAwNi0wOS0wMiAgS0lTRSBIaXJvc2hpICA8a2lzZUBmdXl1bmVrby5qcD4KKworCSogcG80YS9hZGRfamEvZGViLWNvbnRyb2wuNS5qYS5hZGQ6IFJlY29kZSB0aGUgYWRkZW5kdW0gaW4gVVRGLTguCisJKiBwbzRhL2FkZF9qYS9kcGtnLWRlYi4xLmphLmFkZDogTGlrZXdpc2UuCisJKiBwbzRhL2FkZF9qYS9pbnN0YWxsLWluZm8uOC5qYS5hZGQ6IExpa2V3aXNlLgorCSogcG80YS9hZGRfamEvc3RhcnQtc3RvcC1kYWVtb24uOC5qYS5hZGQ6IExpa2V3aXNlLgorCSogcG80YS9kZWItY29udHJvbC41L2RlYi1jb250cm9sLjUuY2ZnOiBTcGVjaWZ5IHRoZSBwbzRhIG9wdGlvbnMKKwlmb3IgdGhlIEphcGFuZXNlIHRyYW5zbGF0aW9uLgorCSogcG80YS9kcGtnLWRlYi4xL2Rwa2ctZGViLjEuY2ZnOiBMaWtld2lzZS4KKwkqIHBvNGEvaW5zdGFsbC1pbmZvLjgvaW5zdGFsbC1pbmZvLjguY2ZnOiBMaWtld2lzZS4KKwkqIHBvNGEvc3RhcnQtc3RvcC1kYWVtb24uOC9zdGFydC1zdG9wLWRhZW1vbi44LmNmZzogTGlrZXdpc2UuCisJKiBwbzRhL2RlYi1jb250cm9sLjUvcG8vamEucG86IFVwZGF0ZWQgdHJhbnNsYXRpb24uCisJKiBwbzRhL2Rwa2ctZGViLjEvcG8vamEucG86IExpa2V3aXNlLgorCSogcG80YS9pbnN0YWxsLWluZm8uOC9wby9qYS5wbzogTGlrZXdpc2UuCisJKiBwbzRhL3N0YXJ0LXN0b3AtZGFlbW9uLjgvcG8vamEucG86IExpa2V3aXNlLgorCisyMDA2LTA4LTI2ICBLSVNFIEhpcm9zaGkgIDxraXNlQGZ1eXVuZWtvLmpwPgorCisJKiBwbzRhL2FkZF9qYS9kcGtnLWRpdmVydC44LmphLmFkZDogUmVjb2RlIHRoZSBhZGRlbmR1bSBpbiBVVEYtOC4KKwkqIHBvNGEvYWRkX2phL2Rwa2ctcXVlcnkuMS5qYS5hZGQ6IExpa2V3aXNlLgorCSogcG80YS9kcGtnLWRpdmVydC44L2Rwa2ctZGl2ZXJ0LjguY2ZnOiBTcGVjaWZ5IHRoZSBwbzRhIG9wdGlvbnMKKwlmb3IgdGhlIEphcGFuZXNlIHRyYW5zbGF0aW9uLgorCSogcG80YS9kcGtnLXF1ZXJ5LjEvZHBrZy1xdWVyeS4xLmNmZzogTGlrZXdpc2UuCisJKiBwbzRhL2Rwa2ctZGl2ZXJ0LjgvcG8vamEucG86IFVwZGF0ZWQgdHJhbnNsYXRpb24uCisJKiBwbzRhL2Rwa2ctcXVlcnkuMS9wby9qYS5wbzogTGlrZXdpc2UuCisJKiBwbzRhL2Rwa2ctc3RhdG92ZXJyaWRlLjgvcG8vamEucG86IExpa2V3aXNlLgorCSogcG80YS9kZWItb2xkLjUvcG8vamEucG86IExpa2V3aXNlLgorCSogcG80YS84MjItZGF0ZS4xL3BvL2phLnBvOiBMaWtld2lzZS4KKwkqIHBvNGEvY2xlYW51cC1pbmZvLjgvcG8vamEucG86IExpa2V3aXNlLgorCSogcG80YS9kcGtnLWNoZWNrYnVpbGRkZXBzLjEvcG8vamEucG86IExpa2V3aXNlLgorCSogcG80YS9kcGtnLW5hbWUuMS9wby9qYS5wbzogTGlrZXdpc2UuCisJKiBwbzRhL2Rwa2ctc2NhbnBhY2thZ2VzLjEvcG8vamEucG86IExpa2V3aXNlLgorCSogcG80YS9kZWIuNS9wby9qYS5wbzogTGlrZXdpc2UuCisKKzIwMDYtMDgtMTcgIFBoaWxpcHBlIEJhdGFpbGxlciAgPHBoaWxpcHBlLmJhdGFpbGxlckBmcmVlLmZyPgorCisJKiBwbzRhL2Rwa2ctc3RhdG92ZXJyaWRlLjgvcG8vZnIucG86IFVwZGF0ZWQgdHJhbnNsYXRpb24uCisJKiBwbzRhL2Rwa2ctbmFtZS4xL3BvL2ZyLnBvOiBMaWtld2lzZS4KKwkqIHBvNGEvdXBkYXRlLWFsdGVybmF0aXZlcy44L3BvL2ZyLnBvOiBMaWtld2lzZS4KKwkqIHBvNGEvc3RhcnQtc3RvcC1kYWVtb24uOC9wby9mci5wbzogTGlrZXdpc2UuCisJKiBwbzRhL2Rwa2ctc291cmNlLjEvcG8vZnIucG86IExpa2V3aXNlLgorCSogcG80YS9kcGtnLWRpdmVydC44L3BvL2ZyLnBvOiBMaWtld2lzZS4KKwkqIHBvNGEvZGViLWNvbnRyb2wuNS9wby9mci5wbzogTGlrZXdpc2UuCisJKiBwbzRhL2Rwa2cuMS9wby9mci5wbzogTGlrZXdpc2UuCisKKzIwMDYtMDgtMDcgIEtJU0UgSGlyb3NoaSAgPGtpc2VAZnV5dW5la28uanA+CisKKwkqIHBvNGEvYWRkX2phL2Rwa2ctbmFtZS4xLmphLmFkZDogUmVjb2RlIHRoZSBhZGRlbmR1bSBpbiBVVEYtOC4KKwkqIHBvNGEvYWRkX2phL2Rwa2ctc3RhdG92ZXJyaWRlLjguamEuYWRkOiBMaWtld2lzZS4KKwkqIHBvNGEvYWRkX2phL2Rwa2ctc2NhbnBhY2thZ2VzLjEuamEuYWRkOiBMaWtld2lzZS4KKwkqIHBvNGEvYWRkX2phL2NsZWFudXAtaW5mby44LmphLmFkZDogTGlrZXdpc2UuCisJKiBwbzRhL2Rwa2ctbmFtZS4xL2Rwa2ctbmFtZS4xLmNmZzogU3BlY2lmeSB0aGUgcG80YSBvcHRpb25zIGZvcgorCXRoZSBKYXBhbmVzZSB0cmFuc2xhdGlvbi4KKwkqIHBvNGEvZHBrZy1zdGF0b3ZlcnJpZGUuOC9kcGtnLXN0YXRvdmVycmlkZS44LmNmZzogTGlrZXdpc2UuCisJKiBwbzRhL2Rwa2ctc2NhbnBhY2thZ2VzLjEvZHBrZy1zY2FucGFja2FnZXMuMS5jZmc6IExpa2V3aXNlLgorCSogcG80YS9jbGVhbnVwLWluZm8uOC9jbGVhbnVwLWluZm8uOC5jZmc6IExpa2V3aXNlLgorCSogcG80YS9kcGtnLW5hbWUuMS9wby9qYS5wbzogVXBkYXRlZCB0cmFuc2xhdGlvbi4KKwkqIHBvNGEvZHBrZy1zdGF0b3ZlcnJpZGUuOC9wby9qYS5wbzogTGlrZXdpc2UuCisJKiBwbzRhL2Rwa2ctc2NhbnBhY2thZ2VzLjEvcG8vamEucG86IExpa2V3aXNlLgorCSogcG80YS9jbGVhbnVwLWluZm8uOC9wby9qYS5wbzogTGlrZXdpc2UuCisKKzIwMDYtMDgtMDUgIE5pY29sYXMgRnJhbmNvaXMgIDxuaWNvbGFzLmZyYW5jb2lzQGNlbnRyYWxpZW5zLm5ldD4KKworCSogcG80YS9kcGtnLWFyY2hpdGVjdHVyZS4xL3BvL2Rwa2ctYXJjaGl0ZWN0dXJlLjEucG90OiBSZWdlbmVyYXRlZC4KKwkqIHBvNGEvZHBrZy1hcmNoaXRlY3R1cmUuMS9wby8qLnBvOiBNZXJnZSB3aXRoIHBvdCBmaWxlLgorCSogcG80YS9kcGtnLWFyY2hpdGVjdHVyZS4xL3BvL2ZyLnBvOiBVcGRhdGUgdG8gMTE2dC4KKworMjAwNi0wOC0wNSAgSGVsZ2UgS3JldXR6bWFubiAgPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorCisJKiBwbzRhL2Rwa2ctYXJjaGl0ZWN0dXJlLjEvcG8vZGUucG86IE5ldyB0cmFuc2xhdGlvbi4KKwkqIHBvNGEvZHNlbGVjdC4xL3BvL2RlLnBvOiBJbml0aWFsaXNhdGlvbiBvZiB0aGUgR2VybWFuCisJdHJhbnNsYXRpb24uIDQ0dDg0dS4KKwkqIHBvNGEvZHBrZy1zb3VyY2UuMS9wby9kZS5wbzogTGlrZXdpc2UuIDcwdDNmMTQwdS4KKwkqIHBvNGEvZHBrZy1xdWVyeS4xL3BvL2RlLnBvOiBMaWtld2lzZS4gMTh0NDB1LgorCSogcG80YS9pbnN0YWxsLWluZm8uOC9wby9kZS5wbzogTGlrZXdpc2UuIDIydDQ3dS4KKwkqIHBvNGEvZHBrZy1kZWIuMS9wby9kZS5wbzogTGlrZXdpc2UuIDMwdDQ4dS4KKwkqIHBvNGEvZHBrZy1zcGxpdC4xL3BvL2RlLnBvOiBMaWtld2lzZS4gMzB0NTF1LgorCSogcG80YS9hZGRfZGUvZHBrZy1hcmNoaXRlY3R1cmUuMS5kZS5hZGQ6IEFkZGVuZHVtIGZvciB0aGUgbmV3CisJdHJhbnNsYXRpb24uCisJKiBwbzRhL2Rwa2ctYXJjaGl0ZWN0dXJlLjEvZHBrZy1hcmNoaXRlY3R1cmUuMS5jZmc6IEFkZCB0aGUgYGRlJworCWxhbmd1YWdlLgorCSogcG80YS9kc2VsZWN0LjEvZHNlbGVjdC4xLmNmZzogTGlrZXdpc2UuCisJKiBwbzRhL2Rwa2ctc291cmNlLjEvZHBrZy1zb3VyY2UuMS5jZmc6IExpa2V3aXNlLgorCSogcG80YS9kcGtnLXF1ZXJ5LjEvZHBrZy1xdWVyeS4xLmNmZzogTGlrZXdpc2UuCisJKiBwbzRhL2luc3RhbGwtaW5mby44L2luc3RhbGwtaW5mby44LmNmZzogTGlrZXdpc2UuCisJKiBwbzRhL2Rwa2ctZGViLjEvZHBrZy1kZWIuMS5jZmc6IExpa2V3aXNlLgorCSogcG80YS9kcGtnLXNwbGl0LjEvZHBrZy1zcGxpdC4xLmNmZzogTGlrZXdpc2UuCisKKzIwMDYtMDgtMDUgIE5pY29sYXMgRnJhbmNvaXMgIDxuaWNvbGFzLmZyYW5jb2lzQGNlbnRyYWxpZW5zLm5ldD4KKworCSogcG80YS9kcGtnLWFyY2hpdGVjdHVyZS4xL3BvL2ZyLnBvOiBOZXcgdHJhbnNsYXRpb24uCisJKiBwbzRhL2FkZF9mci9kcGtnLWFyY2hpdGVjdHVyZS4xLmZyLmFkZDogQWRkZW5kdW0gZm9yIHRoZSBuZXcKKwl0cmFuc2xhdGlvbi4KKwkqIHBvNGEvZHBrZy1hcmNoaXRlY3R1cmUuMS9kcGtnLWFyY2hpdGVjdHVyZS4xLmNmZzogQWRkIHRoZSBgZnInCisJbGFuZ3VhZ2UuCisJKiBwbzRhL2Rwa2ctc291cmNlLjEvcG8vZHBrZy1zb3VyY2UuMS5wb3Q6IFJlZ2VuZXJhdGVkLgorCSogcG80YS9kcGtnLWFyY2hpdGVjdHVyZS4xL3BvL2Rwa2ctYXJjaGl0ZWN0dXJlLjEucG90OiBMaWtld2lzZS4KKwkqIHBvNGEvZHBrZy1zb3VyY2UuMS9wby8qLnBvOiBNZXJnZSB3aXRoIHBvdCBmaWxlLgorCSogcG80YS9kcGtnLWFyY2hpdGVjdHVyZS4xL3BvLyoucG86IExpa2V3aXNlLgorCisyMDA2LTA4LTAyICBIZWxnZSBLcmV1dHptYW5uICA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CisKKwkqIHBvNGEvZHBrZy4xL2Rwa2cuMS5jZmc6IEFkZCB0aGUgYGRlJyBsYW5ndWFnZS4KKwkqIHBvNGEvZGViLWNvbnRyb2wuNS9kZWItY29udHJvbC41LmNmZzogTGlrZXdpc2UuCisJKiBwbzRhL2Rwa2ctZGl2ZXJ0LjgvZHBrZy1kaXZlcnQuOC5jZmc6IExpa2V3aXNlLgorCSogcG80YS9kcGtnLjEvcG8vZGUucG86IE5ldyB0cmFuc2xhdGlvbi4KKwkqIHBvNGEvZGViLWNvbnRyb2wuNS9wby9kZS5wbzogTGlrZXdpc2UuCisJKiBwbzRhL2Rwa2ctZGl2ZXJ0LjgvcG8vZGUucG86IExpa2V3aXNlLgorCSogcG80YS9hZGRfZGUvZHBrZy4xLmRlLmFkZDogQWRkZW5kdW0gZm9yIHRoZSBuZXcgdHJhbnNsYXRpb24uCisJKiBwbzRhL2FkZF9kZS9kZWItY29udHJvbC41LmRlLmFkZDogTGlrZXdpc2UuCisJKiBwbzRhL2FkZF9kZS9kcGtnLWRpdmVydC44LmRlLmFkZDogTGlrZXdpc2UuCisKKzIwMDYtMDgtMDIgIE5pY29sYXMgRnJhbmNvaXMgIDxuaWNvbGFzLmZyYW5jb2lzQGNlbnRyYWxpZW5zLm5ldD4KKworCSogcG80YS9kcGtnLjEvcG8vZHBrZy4xLnBvdDogUmVnZW5lcmF0ZWQuCisJKiBwbzRhL2Rwa2ctZGl2ZXJ0LjgvcG8vZHBrZy1kaXZlcnQuOC5wb3Q6IExpa2V3aXNlLgorCSogcG80YS9kZWItY29udHJvbC41L3BvL2RlYi1jb250cm9sLjUucG90OiBMaWtld2lzZS4KKwkqIHBvNGEvZHBrZy4xL3BvLyoucG86IE1lcmdlIHdpdGggcG90IGZpbGUuCisJRm9ybWVyIGNvbXBsZXRlZCB0cmFuc2xhdGlvbnMgYmVjb21lIDE5OXQxNWYKKwkqIHBvNGEvZHBrZy1kaXZlcnQuOC9wby8qLnBvOiBMaWtld2lzZS4KKwlGb3JtZXIgY29tcGxldGVkIHRyYW5zbGF0aW9ucyBiZWNvbWUgNDZ0N2YxdS4KKwkqIHBvNGEvZGViLWNvbnRyb2wuNS9wby8qLnBvOiBMaWtld2lzZS4KKwlGb3JtZXIgY29tcGxldGVkIHRyYW5zbGF0aW9ucyBiZWNvbWUgNDl0NGYuCisKKzIwMDYtMDgtMDIgIEtJU0UgSGlyb3NoaSAgPGtpc2VAZnV5dW5la28uanA+CisKKwkqIHBvNGEvYWRkX2phL2RlYi41LmphLmFkZDogUmVjb2RlIHRoZSBhZGRlbmR1bSBpbiBVVEYtOC4KKwkqIHBvNGEvYWRkX2phL2RlYi1vbGQuNS5qYS5hZGQ6IExpa2V3aXNlLgorCSogcG80YS9hZGRfamEvODIyLWRhdGUuMS5qYS5hZGQ6IExpa2V3aXNlLgorCSogcG80YS9hZGRfamEvZHBrZy1jaGVja2J1aWxkZGVwcy4xLmphLmFkZDogTGlrZXdpc2UuCisJKiBwbzRhL2RlYi41L2RlYi41LmNmZzogU3BlY2lmeSB0aGUgcG80YSBvcHRpb25zIGZvciB0aGUgSmFwYW5lc2UKKwl0cmFuc2xhdGlvbi4KKwkqIHBvNGEvZGViLW9sZC41L2RlYi1vbGQuNS5jZmc6IExpa2V3aXNlLgorCSogcG80YS84MjItZGF0ZS4xLzgyMi1kYXRlLjEuY2ZnOiBMaWtld2lzZS4KKwkqIHBvNGEvZHBrZy1jaGVja2J1aWxkZGVwcy4xL2Rwa2ctY2hlY2tidWlsZGRlcHMuMS5jZmc6IExpa2V3aXNlLgorCSogcG80YS9kZWIuNS9wby9qYS5wbzogVXBkYXRlZCB0cmFuc2xhdGlvbi4KKwkqIHBvNGEvZGViLW9sZC41L3BvL2phLnBvOiBMaWtld2lzZS4KKwkqIHBvNGEvODIyLWRhdGUuMS9wby9qYS5wbzogTGlrZXdpc2UuCisJKiBwbzRhL2Rwa2ctY2hlY2tidWlsZGRlcHMuMS9wby9qYS5wbzogTGlrZXdpc2UuCisKKzIwMDYtMDctMjkgIEhlbGdlIEtyZXV0em1hbm4gIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KKworCSogcG80YS9kcGtnLXN0YXRvdmVycmlkZS44L2Rwa2ctc3RhdG92ZXJyaWRlLjguY2ZnOiBBZGQgdGhlIGBkZScKKwlsYW5ndWFnZS4KKwkqIHBvNGEvZHBrZy1zdGF0b3ZlcnJpZGUuOC9wby9kZS5wbzogTmV3IHRyYW5zbGF0aW9uLgorCSogcG80YS9hZGRfZGUvZHBrZy1zdGF0b3ZlcnJpZGUuOC5kZS5hZGQ6IEFkZGVuZHVtIGZvciB0aGUgbmV3CisJdHJhbnNsYXRpb24uCisKKzIwMDYtMDctMjkgIE5pY29sYXMgRnJhbmNvaXMgIDxuaWNvbGFzLmZyYW5jb2lzQGNlbnRyYWxpZW5zLm5ldD4KKworCSogcG80YS9hZGRfZnIvKi5hZGQ6IEZpeCB0aGUgRGViaWFuIEZyZW5jaCB0cmFuc2xhdGlvbiB0ZWFtIGFkZHJlc3MuCisJKiBwbzRhL2Rwa2ctYXJjaGl0ZWN0dXJlLjEvcG8vZHBrZy1hcmNoaXRlY3R1cmUuMS5wb3Q6IFJlZ2VuZXJhdGVkLgorCSogcG80YS9kcGtnLXN0YXRvdmVycmlkZS44L3BvL2Rwa2ctc3RhdG92ZXJyaWRlLjgucG90OiBMaWtld2lzZS4KKwkqIHBvNGEvZHBrZy1zdGF0b3ZlcnJpZGUuOC9wby8qLnBvOiBNZXJnZSB3aXRoIHBvdCBmaWxlLgorCUZvcm1lciBjb21wbGV0ZWQgdHJhbnNsYXRpb25zIGJlY29tZSA0MnQyZi4KKwkqIHBvNGEvZHBrZy1zb3VyY2UuMS9wby9mci5wbzogTWVyZ2Ugc3RyaW5ncyB1c2VkIGluIG11bHRpcGxlIFBPcy4KKwkqIHBvNGEvZHBrZy5jZmcuNS9wby9mci5wbzogTGlrZXdpc2UuCisJKiBwbzRhL2NsZWFudXAtaW5mby44L3BvL2ZyLnBvOiBMaWtld2lzZS4KKwkqIHBvNGEvZHBrZy1xdWVyeS4xL3BvL2ZyLnBvOiBMaWtld2lzZS4KKwkqIHBvNGEvZHBrZy1jaGVja2J1aWxkZGVwcy4xL3BvL2ZyLnBvOiBMaWtld2lzZS4KKwkqIHBvNGEvZHBrZy1zY2FucGFja2FnZXMuMS9wby9mci5wbzogTGlrZXdpc2UuCisJKiBwbzRhL2Rwa2ctZGl2ZXJ0LjgvcG8vZnIucG86IExpa2V3aXNlLgorCSogcG80YS91cGRhdGUtYWx0ZXJuYXRpdmVzLjgvcG8vZnIucG86IExpa2V3aXNlLgorCSogcG80YS9kcGtnLXN0YXRvdmVycmlkZS44L3BvL2ZyLnBvOiBMaWtld2lzZS4KKwkqIHBvNGEvZGViLWNvbnRyb2wuNS9wby9mci5wbzogTGlrZXdpc2UuCisJKiBwbzRhL2Rwa2ctZGViLjEvcG8vZnIucG86IExpa2V3aXNlLgorCisyMDA2LTA3LTI5ICBIZWxnZSBLcmV1dHptYW5uICA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CisKKwkqIHBvNGEvZHBrZy1uYW1lLjEvZHBrZy1uYW1lLjEuY2ZnOiBBZGQgdGhlIGBkZScgbGFuZ3VhZ2UuCisJKiBwbzRhL2Rwa2ctbmFtZS4xL3BvL2RlLnBvOiBOZXcgdHJhbnNsYXRpb24uCisJKiBwbzRhL2FkZF9kZS9kcGtnLW5hbWUuMS5kZS5hZGQ6IEFkZGVuZHVtIGZvciB0aGUgbmV3IHRyYW5zbGF0aW9uLgorCisyMDA2LTA3LTI5ICBOaWNvbGFzIEZyYW5jb2lzICA8bmljb2xhcy5mcmFuY29pc0BjZW50cmFsaWVucy5uZXQ+CisKKwkqIHBvNGEvZHBrZy1uYW1lLjEvcG8vZHBrZy1uYW1lLjEucG90OiBSZWdlbmVyYXRlZC4KKwkqIHBvNGEvZHBrZy1uYW1lLjEvcG8vKi5wbzogTWVyZ2Ugd2l0aCBwb3QgZmlsZS4KKwlGb3JtZXIgY29tcGxldGVkIHRyYW5zbGF0aW9ucyBiZWNvbWUgMzl0M2YuCisKKzIwMDYtMDctMjggIEhlbGdlIEtyZXV0em1hbm4gIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KKworCSogcG80YS9jbGVhbnVwLWluZm8uOC9wby9kZS5wbzogVXBkYXRlZCB0cmFuc2xhdGlvbi4KKwkqIHBvNGEvZHBrZy1zY2FucGFja2FnZXMuMS9wby9kZS5wbzogTGlrZXdpc2UuCisKKzIwMDYtMDctMjcgIE5pY29sYXMgRnJhbmNvaXMgIDxuaWNvbGFzLmZyYW5jb2lzQGNlbnRyYWxpZW5zLm5ldD4KKworCSogcG80YS9hZGRfZGUvZHBrZy1zY2FucGFja2FnZXMuMS5kZS5hZGQ6IEluc3RhbGwgdGhlIGFkZGVuZHVtCisJYmVmb3JlIHRoZSBTRUUgQUxTTyBzZWN0aW9uLCBub3QgYXQgdGhlIGVuZC4KKwkqIHBvNGEvYWRkX2RlL2RlYi1vbGQuNS5kZS5hZGQ6IExpa2V3aXNlLgorCSogcG80YS9hZGRfZGUvZGViLjUuZGUuYWRkOiBMaWtld2lzZS4KKwkqIHBvNGEvY2xlYW51cC1pbmZvLjgvcG8vY2xlYW51cC1pbmZvLjgucG90OiBSZWdlbmVyYXRlZC4KKwkqIHBvNGEvZGViLjUvcG8vZGViLjUucG90OiBMaWtld2lzZS4KKwkqIHBvNGEvZHBrZy1zY2FucGFja2FnZXMuMS9wby9kcGtnLXNjYW5wYWNrYWdlcy4xLnBvdDogTGlrZXdpc2UuCisJKiBwbzRhL2Rwa2ctc2NhbnNvdXJjZXMuMS9wby9kcGtnLXNjYW5zb3VyY2VzLjEucG90OiBMaWtld2lzZS4KKwkqIHBvNGEvY2xlYW51cC1pbmZvLjgvcG8vKi5wbzogTWVyZ2Ugd2l0aCBwb3QgZmlsZS4KKwlGb3JtZXIgY29tcGxldGVkIHRyYW5zbGF0aW9ucyBiZWNvbWUgMjl0MmYuCisJKiBwbzRhL2RlYi41L3BvLyoucG86IExpa2V3aXNlLgorCVR5cG8gdW5mdXp6aWVkLgorCSogcG80YS9kcGtnLXNjYW5wYWNrYWdlcy4xL3BvLyoucG86IExpa2V3aXNlLgorCUZvcm1lciBjb21wbGV0ZWQgdHJhbnNsYXRpb25zIGJlY29tZSAyN3QyZi4KKwkqIHBvNGEvZHBrZy1zY2Fuc291cmNlcy4xL3BvLyoucG86IExpa2V3aXNlLgorCVR5cG8gdW5mdXp6aWVkLgorCSogcG80YS9kZWItb2xkLjUvcG8vZGUucG86IFJld3JhcCBsaW5lcy4KKworMjAwNi0wNy0yNSAgSGVsZ2UgS3JldXR6bWFubiAgPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorCisJKiBwbzRhL2RlYi41L3BvL2RlLnBvOiBOZXcgdHJhbnNsYXRpb24uCisJKiBwbzRhL2Rwa2ctY2hlY2tidWlsZGRlcHMuMS9wby9kZS5wbzogTGlrZXdpc2UuCisJKiBwbzRhL2Rwa2ctc2NhbnBhY2thZ2VzLjEvcG8vZGUucG86IExpa2V3aXNlLgorCSogcG80YS9kcGtnLXNjYW5zb3VyY2VzLjEvcG8vZGUucG86IExpa2V3aXNlLgorCSogcG80YS9jbGVhbnVwLWluZm8uOC9wby9kZS5wbzogTGlrZXdpc2UuCisJKiBwbzRhL2RlYi41L2RlYi41LmNmZzogQWRkZW5kdW0gZm9yIHRoZSBuZXcgdHJhbnNsYXRpb24uCisJKiBwbzRhL2Rwa2ctc2NhbnBhY2thZ2VzLjEvZHBrZy1zY2FucGFja2FnZXMuMS5jZmc6IExpa2V3aXNlLgorCSogcG80YS9kcGtnLWNoZWNrYnVpbGRkZXBzLjEvZHBrZy1jaGVja2J1aWxkZGVwcy4xLmNmZzogTGlrZXdpc2UuCisJKiBwbzRhL2Rwa2ctc2NhbnNvdXJjZXMuMS9kcGtnLXNjYW5zb3VyY2VzLjEuY2ZnOiBMaWtld2lzZS4KKwkqIHBvNGEvY2xlYW51cC1pbmZvLjgvY2xlYW51cC1pbmZvLjguY2ZnOiBMaWtld2lzZS4KKwkqIHBvNGEvYWRkX2RlL2RlYi41LmRlLmFkZDogQWRkIHRoZSBgZGUnIGxhbmd1YWdlLgorCSogcG80YS9hZGRfZGUvZHBrZy1jaGVja2J1aWxkZGVwcy4xLmRlLmFkZDogTGlrZXdpc2UuCisJKiBwbzRhL2FkZF9kZS9kcGtnLXNjYW5wYWNrYWdlcy4xLmRlLmFkZDogTGlrZXdpc2UuCisJKiBwbzRhL2FkZF9kZS9kcGtnLXNjYW5zb3VyY2VzLjEuZGUuYWRkOiBMaWtld2lzZS4KKwkqIHBvNGEvYWRkX2RlL2NsZWFudXAtaW5mby44LmRlLmFkZDogTGlrZXdpc2UuCisKKzIwMDYtMDctMjUgIE5pY29sYXMgRnJhbmNvaXMgIDxuaWNvbGFzLmZyYW5jb2lzQGNlbnRyYWxpZW5zLm5ldD4KKworCSogcG80YS84MjItZGF0ZS4xL3BvLzgyMi1kYXRlLjEucG90OiBSZWdlbmVyYXRlZC4KKwkqIHBvNGEvODIyLWRhdGUuMS9wby8qLnBvOiBNZXJnZSB3aXRoIHBvdCBmaWxlLCBhbmQgdW5mdXp6eSB0aGUKKwl0eXBvcy4KKwkqIHBvNGEubWs6IFVwZGF0ZSB0aGUgaGVscCBpbmZvcm1hdGlvbiBpbiB0aGUgaGVhZGVyLiBNb3N0bHksIHRoZQorCXBvNGFfdHJhbnNsYXRlX29wdGlvbnMgdmFyaWFibGUgaXMgbm8gbW9yZSB1c2VkLgorCisyMDA2LTA3LTIzICBIZWxnZSBLcmV1dHptYW5uICA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CisKKwkqIHBvNGEvc3RhcnQtc3RvcC1kYWVtb24uOC9wby9kZS5wbzogVXBkYXRlZCB0cmFuc2xhdGlvbiAoNjV0KS4KKwkqIHBvNGEvdXBkYXRlLWFsdGVybmF0aXZlcy44L3BvL2RlLnBvOiBMaWtld2lzZSAoMTE2dCkuCisJKiBwbzRhLzgyMi1kYXRlLjEvcG8vZGUucG86IE5ldyB0cmFuc2xhdGlvbi4KKwkqIHBvNGEvZGViLW9sZC41L3BvL2RlLnBvOiBMaWtld2lzZS4KKwkqIHBvNGEvYWRkX2RlLzgyMi1kYXRlLjEuZGUuYWRkOiBBZGRlbmR1bSBmb3IgdGhlIG5ldyB0cmFuc2xhdGlvbi4KKwkqIHBvNGEvYWRkX2RlL2RlYi1vbGQuNS5kZS5hZGQ6IExpa2V3aXNlLgorCSogcG80YS84MjItZGF0ZS4xLzgyMi1kYXRlLjEuY2ZnOiBBZGQgdGhlIGBkZScgbGFuZ3VhZ2UuCisJKiBwbzRhL2RlYi1vbGQuNS9kZWItb2xkLjUuY2ZnOiBMaWtld2lzZS4KKwkqIHBvNGEvYWRkX2RlL3N0YXJ0LXN0b3AtZGFlbW9uLjguZGUuYWRkOiBUaGUgcHJldmlvdXMgYWRkZW5kdW0KKwl3YXMgZW1wdHkuCisKKzIwMDYtMDctMjMgIE5pY29sYXMgRnJhbmNvaXMgIDxuaWNvbGFzLmZyYW5jb2lzQGNlbnRyYWxpZW5zLm5ldD4KKworCSogcG80YS9zdGFydC1zdG9wLWRhZW1vbi44L3BvL3N0YXJ0LXN0b3AtZGFlbW9uLjgucG90OiBSZWdlbmVyYXRlZC4KKwkqIHBvNGEvc3RhcnQtc3RvcC1kYWVtb24uOC9wby8qLnBvOiBNZXJnZSB3aXRoIHBvdCBmaWxlLgorCisyMDA2LTA3LTIyICBOaWNvbGFzIEZyYW5jb2lzICA8bmljb2xhcy5mcmFuY29pc0BjZW50cmFsaWVucy5uZXQ+CisKKwkqIHBvNGEvc3RhcnQtc3RvcC1kYWVtb24uOC9wby9zdGFydC1zdG9wLWRhZW1vbi44LnBvdDogUmVnZW5lcmF0ZWQuCisJRm9ybWVyIGNvbXBsZXRlZCB0cmFuc2xhdGlvbnMgYmVjb21lIDYydDNmLgorCSogcG80YS91cGRhdGUtYWx0ZXJuYXRpdmVzLjgvcG8vdXBkYXRlLWFsdGVybmF0aXZlcy44LnBvdDoKKwlMaWtld2lzZS4KKwlGb3JtZXIgY29tcGxldGVkIHRyYW5zbGF0aW9ucyBiZWNvbWUgMTEydDRmLgorCSogcG80YS9zdGFydC1zdG9wLWRhZW1vbi44L3BvLyoucG86IE1lcmdlIHdpdGggcG90IGZpbGUuCisJKiBwbzRhL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuOC9wby8qLnBvOiBMaWtld2lzZS4KKwkqIHBvNGEvZHNlbGVjdC5jZmcuNS9wby9kZS5wbzogUmVnZW5lcmF0ZWQuCisJKiBwbzRhL2Rwa2cuY2ZnLjUvcG8vZGUucG86IExpa2V3aXNlLgorCisyMDA2LTA3LTIyICBIZWxnZSBLcmV1dHptYW5uICA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CisKKwkqIHBvNGEvc3RhcnQtc3RvcC1kYWVtb24uOC9wby9kZS5wbzogVXBkYXRlZCB0cmFuc2xhdGlvbi4KKwkqIHBvNGEvdXBkYXRlLWFsdGVybmF0aXZlcy44L3BvL2RlLnBvOiBMaWtld2lzZS4KKwkqIHBvNGEvZHBrZy5jZmcuNS9wby9kZS5wbzogTmV3IHRyYW5zbGF0aW9uLgorCSogcG80YS9kc2VsZWN0LmNmZy41L3BvL2RlLnBvOiBMaWtld2lzZS4KKwkqIHBvNGEvYWRkX2RlL2Rwa2cuY2ZnLjUuZGUuYWRkOiBBZGRlbmR1bSBmb3IgdGhlIG5ldyB0cmFuc2xhdGlvbi4KKwkqIHBvNGEvYWRkX2RlL2RzZWxlY3QuY2ZnLjUuZGUuYWRkOiBMaWtld2lzZS4KKwkqIHBvNGEvYWRkX2RlL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuOC5kZS5hZGQ6IFVwZGF0ZWQgYWRkZW5kdW0uCisJKiBwbzRhL2Rwa2cuY2ZnLjUvZHBrZy5jZmcuNS5jZmc6IEFkZCB0aGUgYGRlJyBsYW5ndWFnZS4KKwkqIHBvNGEvZHNlbGVjdC5jZmcuNS9kc2VsZWN0LmNmZy41LmNmZzogTGlrZXdpc2UuCisKKzIwMDYtMDUtMjQgIFBoaWxpcHBlIEJhdGFpbGxlciAgPHBoaWxpcHBlLmJhdGFpbGxlckBmcmVlLmZyPgorCisJKiBwbzRhL2luc3RhbGwtaW5mby44L3BvL2ZyLnBvOiBVcGRhdGVkIHRyYW5zbGF0aW9uLgorCSogcG80YS9kcGtnLXN0YXRvdmVycmlkZS44L3BvL2ZyLnBvOiBsaWtld2lzZS4KKwkqIHBvNGEvdXBkYXRlLWFsdGVybmF0aXZlcy44L3BvL2ZyLnBvOiBsaWtld2lzZS4KKwkqIHBvNGEvc3RhcnQtc3RvcC1kYWVtb24uOC9wby9mci5wbzogbGlrZXdpc2UuCisJKiBwbzRhL2Rwa2ctc291cmNlLjEvcG8vZnIucG86IGxpa2V3aXNlLgorCSogcG80YS9kcGtnLWRpdmVydC44L3BvL2ZyLnBvOiBsaWtld2lzZS4KKwkqIHBvNGEvZHBrZy1xdWVyeS4xL3BvL2ZyLnBvOiBsaWtld2lzZS4KKwkqIHBvNGEvZHBrZy1jaGVja2J1aWxkZGVwcy4xL3BvL2ZyLnBvOiBsaWtld2lzZS4KKwkqIHBvNGEvZHBrZy1kZWIuMS9wby9mci5wbzogbGlrZXdpc2UKKwkqIHBvNGEvZHBrZy1jZmcuNS9wby9mci5wbzogTmV3IHRyYW5zbGF0aW9uLgorCSogcG80YS9hZGRfZnIvZHBrZy1jZmcuNS5mci5hZGQ6IGFkZGVuZHVtLgorCisyMDA2LTA2LTIxICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBwbzRhL3N0YXJ0LXN0b3AtZGFlbW9uLjgvcG8vc3RhcnQtc3RvcC1kYWVtb24uOC5wb3Q6IFJlZ2VuZXJhdGVkLgorCUZvcm1lciBjb21wbGV0ZWQgdHJhbnNsYXRpb25zIGJlY29tZSA2M3QyZi4KKwkqIHBvNGEvc3RhcnQtc3RvcC1kYWVtb24uOC9wby8qLnBvOiBNZXJnZSB3aXRoIHBvdCBmaWxlLgorCisyMDA2LTA2LTIwICBOaWNvbGFzIEZyYW5jb2lzICA8bmljb2xhcy5mcmFuY29pc0BjZW50cmFsaWVucy5uZXQ+CisKKwkqIHBvNGEvKi9wby8qLnBvdDogUmVnZW5lcmF0ZWQuCisJVGhlIHN0YXRzIG9mIHRoZSB1cCB0byBkYXRlIGxhbmd1YWdlcyBiZWNvbWU6CisJZHBrZy1jaGVja2J1aWxkZGVwcy4xIDE4dDJmMXUKKwlkcGtnLWRlYi4xICAgICAgICAgICAgNzd0MWYKKwlkcGtnLWRpdmVydC44ICAgICAgICAgNTJ0MmYKKwlkcGtnLXF1ZXJ5LjEgICAgICAgICAgNTd0MWYKKwlkcGtnLXNvdXJjZS4xICAgICAgICAgMjA3dDZmCisJZHBrZy1zdGF0b3ZlcnJpZGUuOCAgIDQwdDJmMnUKKwlpbnN0YWxsLWluZm8uOCAgICAgICAgNjh0MWYKKwl1cGRhdGUtYWx0ZXJuYXRpdmVzLjggMTEzdDJmMXUKKwlUaGUgcGF0aHMgb2YgdGhlIHJlZmVyZW5jZXMgd2VyZSBhbHNvIG1vZGlmaWVkIChmb3IgYWxsIGZpbGVzKS4KKwkqIHBvNGEvKi9wby8qLnBvOiBNZXJnZWQgd2l0aCB0aGUgcG90IGZpbGVzLgorCisyMDA2LTA2LTE2ICBSb2JlcnQgTHViZXJkYSAgPHJvYmVydEBkZWJpYW4ub3JnPgorCisJKiBwbC9kcGtnLWRlYi4xL3BvL3BsLnBvOiBVcGRhdGUgdG8gNzh0LgorCisyMDA2LTA2LTExICBQZXRlciBLYXJsc3NvbiAgPHBldGVya0BkZWJpYW4ub3JnPgorCisJKiBzdi9kc2VsZWN0LjEvcG8vc3YucG86IFVwZGF0ZWQgdHJhbnNsYXRpb24uCisJKiBzdi9kcGtnLXF1ZXJ5LjEvcG8vc3YucG86IFVwZGF0ZWQgdHJhbnNsYXRpb24uCisKKzIwMDYtMDYtMDkgIFBldGVyIEthcmxzc29uICA8cGV0ZXJrQGRlYmlhbi5vcmc+CisKKwkqIHN2L2RzZWxlY3QuMS9wby9zdi5wbzogVXBkYXRlZCB0cmFuc2xhdGlvbi4KKworMjAwNi0wNS0xNCAgc2FzLWd1ZXN0ICA8c2FzQDMyMS5odT4KKworCSogaHUvZGViLWNvbnRyb2wuNS5odS5wbzogVXBkYXRlZCB0cmFuc2xhdGlvbi4KKwkqIGh1L2Rwa2ctZGViLjEuaHUucG86IFVwZGF0ZWQgdHJhbnNsYXRpb24uCisJKiBodS9kcGtnLmNmZy41Lmh1LnBvOiBVcGRhdGVkIHRyYW5zbGF0aW9uLgorCSogaHUvZHNlbGVjdC5jZmcuNS5odS5wbzogVXBkYXRlZCB0cmFuc2xhdGlvbi4KKworMjAwNi0wNS0yMSAgTmljb2xhcyBGcmFuY29pcyAgPG5pY29sYXMuZnJhbmNvaXNAY2VudHJhbGllbnMubmV0PgorCisJKiAqLyoucG8sIEMvcG8vKi5wb3QsIHBvNGEvOiBFYXNlIHRoZSB3b3JrIG9mIGkxOG4gcm9ib3RzOiBtYWtlIGEKKwlkaXJlY3RvcnkgZm9yIGV2ZXJ5IG1hbnBhZ2UgYW5kIG1vdmUgdGhlIFBPVCBhbmQgUE9zIGZvciBhIHBhZ2UgaW4gdGhlCisJc2FtZSBkaXJlY3RvcnkuCisKKzIwMDYtMDUtMTYgIFBldGVyIEthcmxzc29uICA8cGV0ZXJrQGRlYmlhbi5vcmc+CisKKwkqIHN2L2RlYi1vbGQuNS5zdi5wbywgc3YvZHBrZy4xLnN2LnBvOiBQYXJ0aWFsIHVwZGF0ZXMuCisKKzIwMDYtMDUtMTQgIFBldGVyIEthcmxzc29uICA8cGV0ZXJrQGRlYmlhbi5vcmc+CisKKwkqIHN2LzgyMi1kYXRlLjEuc3YucG86IEJlZ2FuIHVwZGF0aW5nIHRoZSBTd2VkaXNoIHRyYW5zbGF0aW9uLgorCSogc3YvZGViLjUuc3YucG86IExpa2V3aXNlLgorCSogc3YvZGViLWNvbnRyb2wuNS5zdi5wbzogTGlrZXdpc2UuCisJKiBzdi9kZWItb2xkLjUuc3YucG86IExpa2V3aXNlLgorCSogc3YvZHBrZy4xLnN2LnBvOiBMaWtld2lzZS4KKwkqIHN2L2Rwa2cuY2ZnLjUuc3YucG86IExpa2V3aXNlLgorCSogc3YvZHBrZy1kZWIuMS5zdi5wbzogTGlrZXdpc2UuCisJKiBzdi9kcGtnLXF1ZXJ5LjEuc3YucG86IExpa2V3aXNlLgorCSogc3YvZHBrZy1zcGxpdC4xLnN2LnBvOiBMaWtld2lzZS4KKwkqIHN2L2RzZWxlY3QuMS5zdi5wbzogTGlrZXdpc2UuCisJKiBzdi9kc2VsZWN0LmNmZy41LnN2LnBvOiBMaWtld2lzZS4KKwkqIHN2L3N0YXJ0LXN0b3AtZGFlbW9uLjguc3YucG86IExpa2V3aXNlLgorCisyMDA2LTA1LTE0ICBQaGlsaXBwZSBCYXRhaWxsZXIgIDxwaGlsaXBwZS5iYXRhaWxsZXJAZnJlZS5mcj4KKworCSogZnIvZHBrZy1uYW1lLjEuZnIucG86IFVwZGF0ZWQgdHJhbnNsYXRpb24uCisJKiBmci9pbnN0YWxsLWluZm8uOC5mci5wbzogbGlrZXdpc2UuCisJKiBmci9kcGtnLXN0YXRvdmVycmlkZS44LmZyLnBvOiBsaWtld2lzZS4KKwkqIGZyL2RlYi1jb250cm9sLjUuZnIucG86IGxpa2V3aXNlLgorCSogZnIvZHBrZy1zY2FucGFja2FnZXMuMS5mci5wbzogbGlrZXdpc2UuCisJKiBmci9kcGtnLXNvdXJjZS4xLmZyLnBvOiBsaWtld2lzZS4KKwkqIGZyL2Rwa2cuMS5mci5wbzogbGlrZXdpc2UuCisJKiBmci9kcGtnLWRpdmVydC44LmZyLnBvOiBsaWtld2lzZS4KKwkqIGZyL2Rwa2ctcXVlcnkuMS5mci5wbzogbGlrZXdpc2UuCisJKiBmci9kcGtnLWNoZWNrYnVpbGRkZXBzLjEuZnIucG86IGxpa2V3aXNlLgorCSogZnIvZHBrZy1kZWIuMS5mci5wbzogbGlrZXdpc2UKKworMjAwNi0wNS0xMSAgRnJhbmsgTGljaHRlbmhlbGQgIDxkanBpZ0BkZWJpYW4ub3JnPgorCisJKiBDL3BvLyoucG90OiBVcGRhdGUuCisJKiAqLyoucG86IE1lcmdlIHdpdGggLnBvdCBmaWxlcy4KKworMjAwNi0wNS0xMCAgU3RlcGFuIEdvbG9zdW5vdiAgPHN0ZXBhbkBnb2xvc3Vub3YucHAucnU+CisKKwkqIHJ1L2Rwa2cuMS5ydS5wbzogVHlwbyBmaXggKCJ8PCIgLT4gIkk8IikuCisJKiBydS9kcGtnLWNoZWNrYnVpbGRkZXBzLjEucnUucG86IExpa2V3aXNlLgorCisyMDA2LTA1LTA0ICBSb2JlcnQgTHViZXJkYSAgPHJvYmVydEBkZWJpYW4ub3JnPgorCisJKiBwbC9kcGtnLjEucGwucG86IFVwZGF0ZWQgdG8gMjE4dCAoYWZ0ZXIgbG9jYWxseSB1cGRhdGUgdGhlIFBPVCBmaWxlKS4KKwkqIHBsL2Rwa2ctc3RhdG92ZXJyaWRlLjgucGwucG86IFVwZGF0ZWQgdG8gNDJ0IChsaWtld2lzZSkuCisJKiBwbC9kcGtnLXF1ZXJ5LjEucGwucG86IFVwZGF0ZWQgdG8gNTh0IChsaWtld2lzZSkuCisKKzIwMDYtMDQtMTEgIE5pY29sYXMgRnJhbmNvaXMgIDxuaWNvbGFzLmZyYW5jb2lzQGNlbnRyYWxpZW5zLm5ldD4KKworCSogcG80YS5tazogQWRkIGEgJChwbzRhX3RyYW5zbGF0ZV9vcHRpb25zKSB2YXJpYWJsZSB0byBhbGxvdworCWxhbmd1YWdlcyB0byBhZGQgb3B0aW9ucyB0byBwbzRhLXRyYW5zbGF0ZS4KKwkqIHJ1L01ha2VmaWxlLmFtOiBTcGVjaWZ5IHRoYXQgdGhlIFJ1c3NpYW4gbWFucGFnZXMgbXVzdCBiZQorCWdlbmVyYXRlZCBpbiB0aGUgS09JOC1SIGNoYXJzZXQgYW5kIHRoYXQgdGhlIFJ1c3NpYW4gYWRkZW5kYSBhcmUKKwlhbHJlYWR5IGVuY29kZWQgaW4gS09JOC1SLgorCSogZnIvZHBrZy1zdGF0b3ZlcnJpZGUuOC5mci5wbzogRml4IGFuIHVubWF0Y2hlZCAiPiIgb3IgIjwiLgorCSogcnUvZHBrZy4xLnJ1LnBvOiBMaWtld2lzZS4KKworMjAwNi0wNC0wOCAgWXVyaSBLb3psb3YgIDxrb3psb3YueUBnbWFpbC5jb20+CisKKwkqIHJ1LzgyMi1kYXRlLjEucnUucG86IDIwdC4KKwkqIHJ1L2RlYi1jb250cm9sLjUucnUucG86IDE5dC4KKwkqIHJ1L2Rwa2ctY2hlY2tidWlsZGRlcHMuMS5ydS5wbzogMTl0LgorCSogcnUvZHBrZy4xLnJ1LnBvOiAyMTd0LgorCSogcnUvc3RhcnQtc3RvcC1kYWVtb24uOC5ydS5wbzogNjN0LgorCisyMDA2LTAzLTI2ICBDaHJpc3RpYW4gUGVycmllciAgPGJ1YnVsbGVAZGViaWFuLm9yZz4KKworCSogZnIvZHBrZy1zb3VyY2UuMS5mci5wby5hZGRlbmR1bTogVHlwbyBjb3JyZWN0ZWQsIHRoYW5rcworCXRvIE5pY29sYXMgQm9uaWZhcyB3aG8gc3BvdHRlZCBpdC4KKwkqIGZyL2Rwa2ctc291cmNlLjEuZnIucG86IFR5cG8gY29ycmVjdGVkLCB0aGFua3MKKwl0byBOaWNvbGFzIEJvbmlmYXMgd2hvIHNwb3R0ZWQgaXQuCisKKzIwMDYtMDMtMDQgIFBoaWxpcHBlIEJhdGFpbGxlciAgPHBoaWxpcHBlLmJhdGFpbGxlckBmcmVlLmZyPgorCisJKiBmci8qOiBBcHBsaWVkIEd1aWxsZW0ncyB3b3JrIHRvIGZyZW5jaC4KKworMjAwNi0wMi0yOCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogQy9wby8qLnBvdDogVXBkYXRlLgorCSogKi8qLnBvOiBNZXJnZSB3aXRoIC5wb3QgZmlsZXMuCisKKzIwMDYtMDItMjEgIFJvYmVydCBMdWJlcmRhICA8cm9iZXJ0QGRlYmlhbi5vcmc+CisKKwkqIHBsLyo6IFVwZGF0ZS4KKworMjAwNi0wMi0yMCAgTWF0dCBLcmFhaSAgPGtyYWFpQGZ0YmZzLm9yZz4KKworCSogQy9wby9kcGtnLXNvdXJjZS4xLnBvdDogVXBkYXRlLgorCSogZXMvZHBrZy1zb3VyY2UuMS5lcy5wbzogTGlrZXdpc2UuCisJKiBmci9kcGtnLXNvdXJjZS4xLmZyLnBvOiBMaWtld2lzZS4KKworMjAwNi0wMi0xOSAgUGhpbGlwcGUgQmF0YWlsbGVyICA8cGhpbGlwcGUuYmF0YWlsbGVyQGZyZWUuZnI+CisKKwkqIGZyL2Rwa2ctc291cmNlLjEuZnIucG86IFVwZGF0ZS4KKwkqIGZyL2Rwa2cuMS5mci5wbzogTGlrZXdpc2UuCisJKiBmci9kcGtnLXF1ZXJ5LjEuZnIucG86IExpa2V3aXNlLgorCSogZnIvZHBrZy1uYW1lLjEuZnIucG86IExpa2V3aXNlLgorCisyMDA2LTAyLTE4ICBGcmFuayBMaWNodGVuaGVsZCAgPGRqcGlnQGRlYmlhbi5vcmc+CisKKwkqIEMvcG8vKi5wb3Q6IFVwZGF0ZS4KKwkqICovKi5wbzogVW5mdXp6eSBzdHJpbmdzIGZ1enppZWQgZHVlIHRvIHRoZQorCXR5cG8gZml4ZXMuCisKKzIwMDYtMDItMTcgIEZyYW5rIExpY2h0ZW5oZWxkICA8ZGpwaWdAZGViaWFuLm9yZz4KKworCSogQy9wby8qLnBvdDogVXBkYXRlLgorCSogKi8qLnBvOiBNZXJnZSB3aXRoIC5wb3QgZmlsZXMuCisKKzIwMDYtMDItMTUgIFNaRVJWw4FDIEF0dGlsYSAgPHNhc0AzMjEuaHU+CisKKwkqIGh1L2Rwa2cuY2ZnLjUuaHUucG86IEFkZGVkLgorCSogaHUvZHBrZy5jZmcuNS5odS5wby5hZGRlbmR1bTogTGlrZXdpc2UuCisJKiBodS9kc2VsZWN0LmNmZy41Lmh1LnBvOiBMaWtld2lzZS4KKwkqIGh1L2RzZWxlY3QuY2ZnLjUuaHUucG8uYWRkZW5kdW06IExpa2V3aXNlLgorCisyMDA2LTAyLTExICBQaGlsaXBwZSBCYXRhaWxsZXIgIDxwaGlsaXBwZS5iYXRhaWxsZXJAZnJlZS5mcj4KKworCSogbWFuL2ZyL2Rwa2cuMS5mci5wbzogVXBkYXRlZC4KKwkqIG1hbi9mci9kcGtnLXF1ZXJ5LjEuZnIucG86IExpa2V3aXNlLgorCSogbWFuL2ZyL2Rwa2ctc291cmNlLjEuZnIucG86IExpa2V3aXNlLgorCSogbWFuL2ZyL2Rwa2ctc3BsaXQuMS5mci5wbzogTGlrZXdpc2UuCisKKzIwMDYtMDItMTEgIE5pY29sYXMgRnJhbsOnb2lzICA8bmljb2xhcy5mcmFuY29pc0BjZW50cmFsaWVucy5uZXQ+CisKKwkqIG1hbi8qLyouYWRkZW5kdW06IFVzZSBhIGdlbmVyaWMgcG9zaXRpb24gdG8gaW5zZXJ0IHRoZSBhZGRlbmRhLAorCXdoaWNoIHNob3VsZCBhbHdheXMgZXhpc3QgaW4gYSB2YWxpZCBtYW4gcGFnZS4KKwlUcmFuc2xhdG9ycyBhcmUgZnJlZSB0byB1c2UgYW5vdGhlciBwb3NpdGlvbi4KKwkqIG1hbi8qLyouYWRkZW51bTogUmVuYW1lZCBtYW4vKi8qLmFkZGVuZHVtLgorCisyMDA2LTAyLTA4ICBQaGlsaXBwZSBCYXRhaWxsZXIgIDxwaGlsaXBwZS5iYXRhaWxsZXJAZnJlZS5mcj4KKworCSogbWFuL2ZyL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuOC5mci5wbzogVXBkYXRlZCB0cmFuc2xhdGlvbi4KKwkqIG1hbi9mci91cGRhdGUtYWx0ZXJuYXRpdmVzLjguZnIucG8uYWRkZW5kdW06IE5ldyBmaWxlLgorCitPbGRlciBjaGFuZ2VzIGFyZSBkb2N1bWVudGVkIGluIHRoZSB0b3AtbGV2ZWwgQ2hhbmdlTG9nCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9wby9kZS5hZGQgYi9kcGtnLTEuMTYuMS4xL21hbi9wby9kZS5hZGQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzY2YTRlNwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL3BvL2RlLmFkZApAQCAtMCwwICsxLDggQEAKK1BPNEEtSEVBREVSOm1vZGU9YWZ0ZXI7cG9zaXRpb249XlwuVEg7YmVnaW5ib3VuZGFyeT1eXC5TSCAiU0lFSEUgQVVDSCIKKy5TSCDDnEJFUlNFVFpVTkcKK0RpZSBkZXV0c2NoZSDDnGJlcnNldHp1bmcgd3VyZGUgMjAwNCwgMjAwNi0yMDExIHZvbiBIZWxnZSBLcmV1dHptYW5uCis8ZGViaWFuQGhlbGdlZmplbGwuZGU+LCAyMDA3IHZvbiBGbG9yaWFuIFJlaG5pc2NoIDxlaXhtYW5AZ214LmRlPiB1bmQKKzIwMDggdm9uIFN2ZW4gSm9hY2hpbSA8c3ZlbmpvYWNAZ214LmRlPgorYW5nZWZlcnRpZ3QuIERpZXNlIMOcYmVyc2V0enVuZyBpc3QgRnJlaWUgRG9rdW1lbnRhdGlvbjsgbGVzZW4gU2llIGRpZQorR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgVmVyc2lvbiAyIG9kZXIgbmV1ZXIgZsO8ciBkaWUgS29waWVyYmVkaW5ndW5nZW4uCitFcyBnaWJ0IEtFSU5FIEhBRlRVTkcuCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9wby9kZS5wbyBiL2Rwa2ctMS4xNi4xLjEvbWFuL3BvL2RlLnBvCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmM3MTI3ZmQKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9wby9kZS5wbwpAQCAtMCwwICsxLDIwOTQxIEBACisjIEdlcm1hbiB0cmFuc2xhdGlvbiBvZiB0aGUgbWFucGFnZXMgaW4gdGhlIGRwa2cgcGFja2FnZQorIyBUaGlzIGZpbGUgaXMgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIHNhbWUgbGljZW5zZSBhcyB0aGUgZHBrZyBwYWNrYWdlLgorIyAoQykgSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+LCAyMDA0LCAyMDA2LTIwMTEuCisjIChDKSBGbG9yaWFuIFJlaG5pc2NoIDxlaXhtYW5AZ214LmRlPiwgMjAwNy4KKyMgKEMpIFN2ZW4gSm9hY2hpbSA8c3ZlbmpvYWNAZ214LmRlPiwgMjAwOC4KKyMKK21zZ2lkICIiCittc2dzdHIgIiIKKyJQcm9qZWN0LUlkLVZlcnNpb246IGRwa2cgbWFuIHBhZ2VzXG4iCisiUE9ULUNyZWF0aW9uLURhdGU6IDIwMTEtMTAtMTQgMDc6MTErMDMwMFxuIgorIlBPLVJldmlzaW9uLURhdGU6IDIwMTEtMDktMTggMDk6NDIrMDIwMFxuIgorIkxhc3QtVHJhbnNsYXRvcjogSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+XG4iCisiTGFuZ3VhZ2UtVGVhbTogZGUgPGRlYmlhbi1sMTBuLWdlcm1hbkBsaXN0cy5kZWJpYW4ub3JnPlxuIgorIkxhbmd1YWdlOiBcbiIKKyJNSU1FLVZlcnNpb246IDEuMFxuIgorIkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD11dGYtOFxuIgorIkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXRcbiIKKworIy4gdHlwZTogVEgKKyM6IGRlYi41OjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkZWIiCittc2dzdHIgImRlYiIKKworIy4gdHlwZTogVEgKKyM6IGRlYi41OjEgZGViLWNvbnRyb2wuNTozIGRlYi1zcmMtY29udHJvbC41OjMgZGViLXZlcnNpb24uNTo1IGRlYi1vbGQuNToxCisjOiBkZWItb3ZlcnJpZGUuNToxNSBkZWItc3ltYm9scy41OjIgZGViLXRyaWdnZXJzLjU6MSBkcGtnLjE6MQorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxIGRwa2ctYnVpbGRwYWNrYWdlLjE6MSBkcGtnLWRlYi4xOjEgZHBrZy1kaXZlcnQuODoxCisjOiBkcGtnLWdlbmNoYW5nZXMuMToxIGRwa2ctZ2VuY29udHJvbC4xOjEgZHBrZy1nZW5zeW1ib2xzLjE6MgorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxIGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6MSBkcGtnLW5hbWUuMTo2CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MSBkcGtnLXF1ZXJ5LjE6MSBkcGtnLXNjYW5wYWNrYWdlcy4xOjE1CisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6MSBkcGtnLXNobGliZGVwcy4xOjEgZHBrZy1zb3VyY2UuMToyIGRwa2ctdHJpZ2dlci4xOjEKKyM6IGRzZWxlY3QuMToxIHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo4CisjLCBuby13cmFwCittc2dpZCAiMjAxMS0wOC0xNCIKK21zZ3N0ciAiMjAxMS0wOC0xNCIKKworIy4gdHlwZTogVEgKKyM6IGRlYi41OjEgZGViLWNvbnRyb2wuNTozIGRlYi1zcmMtY29udHJvbC41OjMgZGViLXNwbGl0LjU6MSBkZWItdmVyc2lvbi41OjUKKyM6IGRlYi1vbGQuNToxIGRlYi1vdmVycmlkZS41OjE1IGRlYi1leHRyYS1vdmVycmlkZS41OjEgZGViLXNobGlicy41OjE2CisjOiBkZWItc3Vic3R2YXJzLjU6MiBkZWItc3ltYm9scy41OjIgZGViLXRyaWdnZXJzLjU6MSBkcGtnLjE6MQorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxIGRwa2cuY2ZnLjU6MSBkcGtnLWJ1aWxkZmxhZ3MuMToxCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEgZHBrZy1jaGVja2J1aWxkZGVwcy4xOjEgZHBrZy1kaXN0YWRkZmlsZS4xOjEKKyM6IGRwa2ctZGViLjE6MSBkcGtnLWRpdmVydC44OjEgZHBrZy1nZW5jaGFuZ2VzLjE6MSBkcGtnLWdlbmNvbnRyb2wuMToxCisjOiBkcGtnLWdlbnN5bWJvbHMuMToyIGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MSBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjEKKyM6IGRwa2ctbmFtZS4xOjYgZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjEgZHBrZy1xdWVyeS4xOjEgZHBrZy1zY2FucGFja2FnZXMuMToxNQorIzogZHBrZy1zY2Fuc291cmNlcy4xOjEgZHBrZy1zaGxpYmRlcHMuMToxIGRwa2ctc291cmNlLjE6MiBkcGtnLXNwbGl0LjE6MgorIzogZHBrZy10cmlnZ2VyLjE6MSBkcGtnLXZlbmRvci4xOjEgZHNlbGVjdC4xOjEgZHNlbGVjdC5jZmcuNToxCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjEgdXBkYXRlLWFsdGVybmF0aXZlcy44OjgKKyMsIG5vLXdyYXAKK21zZ2lkICJEZWJpYW4gUHJvamVjdCIKK21zZ3N0ciAiRGViaWFuLVByb2pla3QiCisKKyMuIHR5cGU6IFRICisjOiBkZWIuNToxIGRlYi1jb250cm9sLjU6MyBkZWItc3JjLWNvbnRyb2wuNTozIGRlYi1zcGxpdC41OjEgZGViLXZlcnNpb24uNTo1CisjOiBkZWItb2xkLjU6MSBkc2VsZWN0LjE6MQorIywgbm8td3JhcAorbXNnaWQgIkRlYmlhbiIKK21zZ3N0ciAiRGViaWFuIgorCisjLiB0eXBlOiBTSAorIzogZGViLjU6MiBkZWItY29udHJvbC41OjQgZGViLXNyYy1jb250cm9sLjU6NCBkZWItc3BsaXQuNToyIGRlYi12ZXJzaW9uLjU6NgorIzogZGViLW9sZC41OjIgZGViLW92ZXJyaWRlLjU6MTYgZGViLWV4dHJhLW92ZXJyaWRlLjU6MiBkZWItc2hsaWJzLjU6MTcKKyM6IGRlYi1zdWJzdHZhcnMuNTozIGRlYi1zeW1ib2xzLjU6MyBkZWItdHJpZ2dlcnMuNToyIGRwa2cuMToyCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjIgZHBrZy5jZmcuNToyIGRwa2ctYnVpbGRmbGFncy4xOjIKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MiBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6MiBkcGtnLWRpc3RhZGRmaWxlLjE6MgorIzogZHBrZy1kZWIuMToyIGRwa2ctZGl2ZXJ0Ljg6MiBkcGtnLWdlbmNoYW5nZXMuMToyIGRwa2ctZ2VuY29udHJvbC4xOjIKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjMgZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToyIGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6MgorIzogZHBrZy1uYW1lLjE6NyBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MiBkcGtnLXF1ZXJ5LjE6MiBkcGtnLXNjYW5wYWNrYWdlcy4xOjE2CisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6MiBkcGtnLXNobGliZGVwcy4xOjIgZHBrZy1zb3VyY2UuMTozIGRwa2ctc3BsaXQuMTozCisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjIgZHBrZy10cmlnZ2VyLjE6MiBkcGtnLXZlbmRvci4xOjIgZHNlbGVjdC4xOjIKKyM6IGRzZWxlY3QuY2ZnLjU6MiBzdGFydC1zdG9wLWRhZW1vbi44OjIgdXBkYXRlLWFsdGVybmF0aXZlcy44OjkKKyMsIG5vLXdyYXAKK21zZ2lkICJOQU1FIgorbXNnc3RyICJOQU1FIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWIuNTo0Cittc2dpZCAiZGViIC0gRGViaWFuIGJpbmFyeSBwYWNrYWdlIGZvcm1hdCIKK21zZ3N0ciAiZGViIC0gRGViaWFuLUJpbsOkcnBha2V0Zm9ybWF0IgorCisjLiB0eXBlOiBTSAorIzogZGViLjU6NCBkZWItY29udHJvbC41OjcgZGViLXNyYy1jb250cm9sLjU6NyBkZWItc3BsaXQuNTo0IGRlYi12ZXJzaW9uLjU6OQorIzogZGViLW9sZC41OjUgZGViLW92ZXJyaWRlLjU6MTkgZGViLWV4dHJhLW92ZXJyaWRlLjU6NSBkZWItc3Vic3R2YXJzLjU6NgorIzogZGViLXN5bWJvbHMuNTo2IGRlYi10cmlnZ2Vycy41OjUgZHBrZy4xOjUgZHBrZy1hcmNoaXRlY3R1cmUuMTo1CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo1IGRwa2ctYnVpbGRwYWNrYWdlLjE6NSBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6NQorIzogZHBrZy1kaXN0YWRkZmlsZS4xOjUgZHBrZy1kZWIuMTo1IGRwa2ctZGl2ZXJ0Ljg6NSBkcGtnLWdlbmNoYW5nZXMuMTo1CisjOiBkcGtnLWdlbmNvbnRyb2wuMTo1IGRwa2ctZ2Vuc3ltYm9scy4xOjYgZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMTo1CisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjUgZHBrZy1uYW1lLjE6MTAgZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjUKKyM6IGRwa2ctcXVlcnkuMTo1IGRwa2ctc2NhbnBhY2thZ2VzLjE6MTkgZHBrZy1zY2Fuc291cmNlcy4xOjUKKyM6IGRwa2ctc2hsaWJkZXBzLjE6NSBkcGtnLXNvdXJjZS4xOjYgZHBrZy1zcGxpdC4xOjYgZHBrZy1zdGF0b3ZlcnJpZGUuODo1CisjOiBkcGtnLXRyaWdnZXIuMTo1IGRwa2ctdmVuZG9yLjE6NSBkc2VsZWN0LjE6NSBzdGFydC1zdG9wLWRhZW1vbi44OjUKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxMgorIywgbm8td3JhcAorbXNnaWQgIlNZTk9QU0lTIgorbXNnc3RyICLDnEJFUlNJQ0hUIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWIuNTo2IGRlYi1zcGxpdC41OjYgZGViLW9sZC41OjcKK21zZ2lkICJJPGZpbGVuYW1lPkI8LmRlYj4iCittc2dzdHIgIkk8RGF0ZWluYW1lPkI8LmRlYj4iCisKKyMuIHR5cGU6IFNICisjOiBkZWIuNTo2IGRlYi1jb250cm9sLjU6MTAgZGViLXNyYy1jb250cm9sLjU6MTAgZGViLXNwbGl0LjU6NgorIzogZGViLXZlcnNpb24uNToxMSBkZWItb2xkLjU6OCBkZWItb3ZlcnJpZGUuNToyMiBkZWItZXh0cmEtb3ZlcnJpZGUuNTo4CisjOiBkZWItc2hsaWJzLjU6MjAgZGViLXN1YnN0dmFycy41OjkgZGViLXN5bWJvbHMuNTo5IGRlYi10cmlnZ2Vycy41OjgKKyM6IGRwa2cuMToxOSBkcGtnLWFyY2hpdGVjdHVyZS4xOjEwIGRwa2cuY2ZnLjU6NSBkcGtnLWJ1aWxkZmxhZ3MuMTo5CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjkgZHBrZy1jaGVja2J1aWxkZGVwcy4xOjEwIGRwa2ctZGlzdGFkZGZpbGUuMTo5CisjOiBkcGtnLWRlYi4xOjkgZHBrZy1kaXZlcnQuODoxMCBkcGtnLWdlbmNoYW5nZXMuMToxMCBkcGtnLWdlbmNvbnRyb2wuMTo5CisjOiBkcGtnLWdlbnN5bWJvbHMuMToxMCBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjE1IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6OQorIzogZHBrZy1uYW1lLjE6MTYgZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjkgZHBrZy1xdWVyeS4xOjkKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6MjcgZHBrZy1zY2Fuc291cmNlcy4xOjEzIGRwa2ctc2hsaWJkZXBzLjE6OQorIzogZHBrZy1zb3VyY2UuMToxMCBkcGtnLXNwbGl0LjE6MTAgZHBrZy1zdGF0b3ZlcnJpZGUuODo5IGRwa2ctdHJpZ2dlci4xOjEyCisjOiBkcGtnLXZlbmRvci4xOjkgZHNlbGVjdC4xOjkgZHNlbGVjdC5jZmcuNTo1IHN0YXJ0LXN0b3AtZGFlbW9uLjg6OQorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE2CisjLCBuby13cmFwCittc2dpZCAiREVTQ1JJUFRJT04iCittc2dzdHIgIkJFU0NIUkVJQlVORyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLjU6MTIKK21zZ2lkICIiCisiVGhlIEI8LmRlYj4gZm9ybWF0IGlzIHRoZSBEZWJpYW4gYmluYXJ5IHBhY2thZ2UgZmlsZSBmb3JtYXQuIEl0IGlzICIKKyJ1bmRlcnN0b29kIGJ5IGRwa2cgMC45My43NiBhbmQgbGF0ZXIsIGFuZCBpcyBnZW5lcmF0ZWQgYnkgZGVmYXVsdCBieSBhbGwgIgorInZlcnNpb25zIG9mIGRwa2cgc2luY2UgMS4yLjAgYW5kIGFsbCBpMzg2L0VMRiB2ZXJzaW9ucyBzaW5jZSAxLjEuMWVsZi4iCittc2dzdHIgIiIKKyJEYXMgQjwuZGViPi1Gb3JtYXQgaXN0IGRhcyBEZWJpYW4tQmluw6RycGFrZXRkYXRlaWZvcm1hdC4gRXMgd2lyZCB2b24gZHBrZyAiCisiMC45My43NiB1bmQgbmV1ZXIgdmVyc3RhbmRlbiwgdW5kIHdpcmQgc3RhbmRhcmRtw6TDn2lnIHZvbiBhbGxlbiBkcGtnLSIKKyJWZXJzaW9uZW4gc2VpdCAxLjIuMCB1bmQgYWxsZW4gaTM4Ni9FTEYtVmVyc2lvbmVuIHNlaXQgMS4xLjFlbGYgZXJ6ZXVndC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi41OjE2Cittc2dpZCAiIgorIlRoZSBmb3JtYXQgZGVzY3JpYmVkIGhlcmUgaXMgdXNlZCBzaW5jZSBEZWJpYW4gMC45MzsgZGV0YWlscyBvZiB0aGUgb2xkICIKKyJmb3JtYXQgYXJlIGRlc2NyaWJlZCBpbiBCPGRlYi1vbGQ+KDUpLiIKK21zZ3N0ciAiIgorIkRhcyBoaWVyIGJlc2NocmllYmVuZSBGb3JtYXQgd2lyZCBzZWl0IERlYmlhbiAwLjkzIHZlcndlbmRldDsgRGV0YWlscyDDvGJlciAiCisiZGFzIGFsdGUgRm9ybWF0IHNpbmQgaW4gQjxkZWItb2xkPig1KSBiZXNjaHJpZWJlbi4iCisKKyMuIHR5cGU6IFNICisjOiBkZWIuNToxNiBkZWItc3BsaXQuNTo5IGRlYi1vbGQuNToxOAorIywgbm8td3JhcAorbXNnaWQgIkZPUk1BVCIKK21zZ3N0ciAiRk9STUFUIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWIuNToyMgorbXNnaWQgIiIKKyJUaGUgZmlsZSBpcyBhbiBCPGFyPiBhcmNoaXZlIHdpdGggYSBtYWdpYyB2YWx1ZSBvZiBCPCFFPGx0PmFyY2hFPGd0Pj4uICBUaGUgIgorImZpbGUgbmFtZXMgbWlnaHQgY29udGFpbiBhIHRyYWlsaW5nIHNsYXNoLiIKK21zZ3N0ciAiIgorIkRpZSBEYXRlaSBpc3QgZWluIEI8YXI+LUFyY2hpdiBtaXQgZWluZXIgbWFnaXNjaGVuIFphaGwgdm9uIEI8ISIKKyJFPGx0PmFyY2hFPGd0Pj4uIERlciBEYXRlaW5hbWUga2FubiBtaXQgZWluZW0gU2NocsOkZ3N0cmljaCBhYnNjaGxpZcOfZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWIuNToyOAorbXNnaWQgIiIKKyJUaGUgQjx0YXI+IGFyY2hpdmVzIGN1cnJlbnRseSBhbGxvd2VkIGFyZSwgdGhlIG9sZC1zdHlsZSAodjcpIGZvcm1hdCwgdGhlICIKKyJwcmUtUE9TSVggdXN0YXIgZm9ybWF0LCBhIHN1YnNldCBvZiB0aGUgR05VIGZvcm1hdCAob25seSB0aGUgbmV3IHN0eWxlIGxvbmcgIgorInBhdGhuYW1lcyBhbmQgbG9uZyBsaW5rbmFtZXMsIHN1cHBvcnRlZCBzaW5jZSBkcGtnIDEuNC4xLjE3KSwgYW5kIHRoZSBQT1NJWCAiCisidXN0YXIgZm9ybWF0IChsb25nIG5hbWVzIHN1cHBvcnRlZCBzaW5jZSBkcGtnIDEuMTUuMCkuICBVbnJlY29nbml6ZWQgdGFyICIKKyJ0eXBlZmxhZ3MgYXJlIGNvbnNpZGVyZWQgYW4gZXJyb3IuIgorbXNnc3RyICIiCisiRGVyemVpdCB3ZXJkZW4gZGllIGZvbGdlbmRlbiBCPHRhcj4tQXJjaGl2ZSBlcmxhdWJ0OiBhbHRlciBTdGlsIChWNy0pRm9ybWF0LCAiCisicHJlLVBPU0lYLXVzdGFyLUZvcm1hdCwgZWluZSBUZWlsbWVuZ2UgZGVzIEdOVS1Gb3JtYXRzIChudXIgZGVyIG5ldWUgU3RpbCAiCisibWl0IGxhbmdlbiBQZmFkbmFtZW4gdW5kIGxhbmdlbiBMaW5rbmFtZW4sIHVudGVyc3TDvHR6dCBzZWl0IERwa2cgMS40LjEuMTcpICIKKyJ1bmQgZGFzIFBPU0lYLXVzdGFyLUZvcm1hdCAobGFuZ2UgTmFtZW4gc2VpdCBEcGtnIDEuMTUuMCB1bnRlcnN0w7x0enQpLiAiCisiVW5iZWthbm50ZSBUYXItVHlwZWluc3RlbGx1bmdlbiB3ZXJkZW4gYWxzIEZlaGxlciBiZXRyYWNodGV0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLjU6MzgKK21zZ2lkICIiCisiVGhlIGZpcnN0IG1lbWJlciBpcyBuYW1lZCBCPGRlYmlhbi1iaW5hcnk+IGFuZCBjb250YWlucyBhIHNlcmllcyBvZiBsaW5lcywgIgorInNlcGFyYXRlZCBieSBuZXdsaW5lcy4gQ3VycmVudGx5IG9ubHkgb25lIGxpbmUgaXMgcHJlc2VudCwgdGhlIGZvcm1hdCAiCisidmVyc2lvbiBudW1iZXIsIEI8Mi4wPiBhdCB0aGUgdGltZSB0aGlzIG1hbnVhbCBwYWdlIHdhcyB3cml0dGVuLiAgUHJvZ3JhbXMgIgorIndoaWNoIHJlYWQgbmV3LWZvcm1hdCBhcmNoaXZlcyBzaG91bGQgYmUgcHJlcGFyZWQgZm9yIHRoZSBtaW5vciBudW1iZXIgdG8gYmUgIgorImluY3JlYXNlZCBhbmQgbmV3IGxpbmVzIHRvIGJlIHByZXNlbnQsIGFuZCBzaG91bGQgaWdub3JlIHRoZXNlIGlmIHRoaXMgaXMgIgorInRoZSBjYXNlLiIKK21zZ3N0ciAiIgorIkRhcyBlcnN0ZSBNaXRnbGllZCBoZWnDn3QgQjxkZWJpYW4tYmluYXJ5PiB1bmQgZW50aMOkbHQgZWluZSBSZWloZSB2b24gWmVpbGVuLCAiCisiZGllIGR1cmNoIFplaWxlbnVtYnLDvGNoZSBnZXRyZW5udCBzaW5kLiBEZXJ6ZWl0IGlzdCBudXIgZWluZSBaZWlsZSAiCisidm9yaGFuZGVuLCBkaWUgVmVyc2lvbnNudW1tZXIsIEI8Mi4wPiB6dW0gWmVpdHB1bmt0IHp1IGRlbSBkaWVzZSAiCisiSGFuZGJ1Y2hzZWl0ZSBnZXNjaHJpZWJlbiB3dXJkZS4gUHJvZ3JhbW1lLCBkaWUgQXJjaGl2ZSBpbSBuZXVlbiBGb3JtYXQgIgorImxlc2VuLCBzb2xsdGVuIGRhcmF1ZiB2b3JiZXJlaXRldCBzZWluLCBkYXNzIHNpY2ggZGllIE5hY2hrb21tYXphaGwgZXJow7ZodCAiCisidW5kIG5ldWUgWmVpbGVuIHZvcmhhbmRlbiBzZWluIGvDtm5uZW4sIHVuZCBzb2xsdGVuIGRpZXNlIGlnbm9yaWVyZW4sIGZhbGxzICIKKyJkaWVzIGRlciBGYWxsIGlzdC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi41OjQzCittc2dpZCAiIgorIklmIHRoZSBtYWpvciBudW1iZXIgaGFzIGNoYW5nZWQsIGFuIGluY29tcGF0aWJsZSBjaGFuZ2UgaGFzIGJlZW4gbWFkZSBhbmQgIgorInRoZSBwcm9ncmFtIHNob3VsZCBzdG9wLiBJZiBpdCBoYXMgbm90LCB0aGVuIHRoZSBwcm9ncmFtIHNob3VsZCBiZSBhYmxlIHRvICIKKyJzYWZlbHkgY29udGludWUsIHVubGVzcyBpdCBlbmNvdW50ZXJzIGFuIHVuZXhwZWN0ZWQgbWVtYmVyIGluIHRoZSBhcmNoaXZlICIKKyIoZXhjZXB0IGF0IHRoZSBlbmQpLCBhcyBkZXNjcmliZWQgYmVsb3cuIgorbXNnc3RyICIiCisiRmFsbHMgc2ljaCBkaWUgVm9ya29tbWF6YWhsIGdlw6RuZGVydCBoYXQsIHd1cmRlIGVpbmUgaW5rb21wYXRpYmxlIMOEbmRlcnVuZyAiCisiZHVyY2hnZWbDvGhydCB1bmQgZGFzIFByb2dyYW1tIHNvbGx0ZSBzaWNoIGJlZW5kZW4uIEZhbGxzIGRpZXMgbmljaHQgZGVyIEZhbGwgIgorImlzdCwgZGFubiBzb2xsdGUgZGFzIFByb2dyYW1tIHNpY2hlciBmb3J0ZmFocmVuIGvDtm5uZW4sIGVzIHNlaSBkZW5uLCBlaW4gIgorInVuZXJ3YXJ0ZXRlcyBNaXRnbGllZCBpc3QgaW0gQXJjaGl2IChhYmdlc2VoZW4gdm9tIEVuZGUpIGdlZnVuZGVuIHdvcmRlbiwgIgorIndpZSB1bnRlbiBiZXNjaHJpZWJlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi41OjUzCittc2dpZCAiIgorIlRoZSBzZWNvbmQgcmVxdWlyZWQgbWVtYmVyIGlzIG5hbWVkIEI8Y29udHJvbC50YXIuZ3o+LiAgSXQgaXMgYSBnemlwcGVkIHRhciAiCisiYXJjaGl2ZSBjb250YWluaW5nIHRoZSBwYWNrYWdlIGNvbnRyb2wgaW5mb3JtYXRpb24sIGFzIGEgc2VyaWVzIG9mIHBsYWluICIKKyJmaWxlcywgb2Ygd2hpY2ggdGhlIGZpbGUgQjxjb250cm9sPiBpcyBtYW5kYXRvcnkgYW5kIGNvbnRhaW5zIHRoZSBjb3JlICIKKyJjb250cm9sIGluZm9ybWF0aW9uLiBUaGUgY29udHJvbCB0YXJiYWxsIG1heSBvcHRpb25hbGx5IGNvbnRhaW4gYW4gZW50cnkgZm9yICIKKyJgQjwuPicsIHRoZSBjdXJyZW50IGRpcmVjdG9yeS4iCittc2dzdHIgIiIKKyJEYXMgendlaXRlIGVyZm9yZGVybGljaGUgTWl0Z2xpZWQgaGVpw590IEI8Y29udHJvbC50YXIuZ3o+LiBFcyBpc3QgZWluICIKKyJnZXppcHB0ZXMgVGFyLUFyY2hpdiwgZGFzIGRpZSBTdGV1ZXJpbmZvcm1hdGlvbmVuIGFscyBlaW5lIFJlaWhlIHZvbiAiCisibm9ybWFsZW4gRGF0ZWllbiBlbnRow6RsdCwgdm9uIGRlbmVuIGRpZSBEYXRlaSBCPGNvbnRyb2w+IHp3aW5nZW5kICIKKyJlcmZvcmRlcmxpY2ggaXN0IHVuZCBkaWUgS2Vybi1TdGV1ZXJpbmZvcm1hdGlvbmVuIGVudGjDpGx0LiBEZXIgU3RldWVyLSIKKyJUYXJiYWxsIGthbm4gb3B0aW9uYWwgZWluZW4gRWludHJhZyBmw7xyIMK7QjwuPsKrLCBkYXMgYWt0dWVsbGUgVmVyemVpY2huaXMsICIKKyJlbnRoYWx0ZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWIuNTo2MgorbXNnaWQgIiIKKyJUaGUgdGhpcmQsIGxhc3QgcmVxdWlyZWQgbWVtYmVyIGlzIG5hbWVkIEI8ZGF0YS50YXI+LiAgSXQgY29udGFpbnMgdGhlICIKKyJmaWxlc3lzdGVtIGFzIGEgdGFyIGFyY2hpdmUsIGVpdGhlciBub3QgY29tcHJlc3NlZCAoc3VwcG9ydGVkIHNpbmNlIGRwa2cgIgorIjEuMTAuMjQpLCBvciBjb21wcmVzc2VkIHdpdGggZ3ppcCAod2l0aCBCPC5nej4gZXh0ZW5zaW9uKSwgeHogKHdpdGggQjwueHo+ICIKKyJleHRlbnNpb24sIHN1cHBvcnRlZCBzaW5jZSBkcGtnIDEuMTUuNiksIGJ6aXAyICh3aXRoIEI8LmJ6Mj4gZXh0ZW5zaW9uLCAiCisic3VwcG9ydGVkIHNpbmNlIGRwa2cgMS4xMC4yNCkgb3IgbHptYSAod2l0aCBCPC5sem1hPiBleHRlbnNpb24sIHN1cHBvcnRlZCAiCisic2luY2UgZHBrZyAxLjEzLjI1KS4iCittc2dzdHIgIiIKKyJEYXMgZHJpdHRlLCBsZXR6dGUgendpbmdlbmQgYmVuw7Z0aWd0ZSBNaXRnbGllZCBoZWnDn3QgQjxkYXRhLnRhcj4uIEVzIGVudGjDpGx0ICIKKyJkYXMgRGF0ZWlzeXN0ZW0gYWxzIFRhci1BcmNoaXYsIGVudHdlZGVyIHVua29tcHJpbWllcnQgKHNlaXQgRHBrZyAxLjEwLjI0ICIKKyJ1bnRlcnN0w7x0enQpIG9kZXIgbWl0IGd6aXAgKERhdGVpZW5kdW5nIEI8Lmd6PiksIHh6IChEYXRlaWVuZHVuZyBCPC54ej4gc2VpdCAiCisiRHBrZyAxLjE1LjYgdW50ZXJzdMO8dHp0KSxiemlwMiAoRGF0ZWllbmR1bmcgQjwuYnoyPiwgc2VpdCBEcGtnIDEuMTAuMjQgIgorInVudGVyc3TDvHR6dCkgb2RlciBsem1hIChEYXRlaWVuZHVuZyBCPC5sem1hPiwgc2VpdCBEcGtnIDEuMTMuMjUgdW50ZXJzdMO8dHp0KSAiCisia29tcHJpbWllcnQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWIuNTo3MworbXNnaWQgIiIKKyJUaGVzZSBtZW1iZXJzIG11c3Qgb2NjdXIgaW4gdGhpcyBleGFjdCBvcmRlci4gQ3VycmVudCBpbXBsZW1lbnRhdGlvbnMgc2hvdWxkICIKKyJpZ25vcmUgYW55IGFkZGl0aW9uYWwgbWVtYmVycyBhZnRlciBCPGRhdGEudGFyPi4gIEZ1cnRoZXIgbWVtYmVycyBtYXkgYmUgIgorImRlZmluZWQgaW4gdGhlIGZ1dHVyZSwgYW5kIChpZiBwb3NzaWJsZSkgd2lsbCBiZSBwbGFjZWQgYWZ0ZXIgdGhlc2UgdGhyZWUuICIKKyJBbnkgYWRkaXRpb25hbCBtZW1iZXJzIHRoYXQgbWF5IG5lZWQgdG8gYmUgaW5zZXJ0ZWQgYmVmb3JlIEI8ZGF0YS50YXI+IGFuZCAiCisid2hpY2ggc2hvdWxkIGJlIHNhZmVseSBpZ25vcmVkIGJ5IG9sZGVyIHByb2dyYW1zLCB3aWxsIGhhdmUgbmFtZXMgc3RhcnRpbmcgIgorIndpdGggYW4gdW5kZXJzY29yZSwgYEI8Xz4nLiIKK21zZ3N0ciAiIgorIkRpZXNlIE1pdGdsaWVkZXIgbcO8c3NlbiBpbiBnZW5hdSBkaWVzZXIgUmVpaGVuZm9sZ2UgYXVmdGF1Y2hlbi4gQWt0dWVsbGUgIgorIkltcGxlbWVudGF0aW9uZW4gc29sbHRlbiB6dXPDpHR6bGljaGUgTWl0Z2xpZWRlciBuYWNoIEI8ZGF0YS50YXI+IGlnbm9yaWVyZW4uICIKKyJXZWl0ZXJlIE1pdGdsaWVkZXIga8O2bm50ZW4gaW4gZGVyIFp1a3VuZnQgZGVmaW5pZXJ0IHdlcmRlbiB1bmQgd2VyZGVuIChmYWxscyAiCisibcO2Z2xpY2gpIG5hY2ggZGllc2VuIGRyZWkgcGxhdHppZXJ0LiBBbGxlIHp1c8OkdHpsaWNoZW4gTWl0Z2xpZWRlciwgZGllIHZvciAiCisiQjxkYXRhLnRhcj4gZWluZ2Vmw7xndCB3ZXJkZW4ga8O2bm50ZW4gdW5kIGRpZSBwcm9ibGVtbG9zIHZvbiDDpGx0ZXJlbiAiCisiUHJvZ3JhbW1lbiBpZ25vcmllcnQgd2VyZGVuIHNvbGx0ZW4sIHdlcmRlbiBOYW1lbiBoYWJlbiwgZGllIG1pdCBlaW5lbSAiCisiVW50ZXJzdHJpY2ggwrtCPF8+wqsgYW5mYW5nZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWIuNTo3OQorbXNnaWQgIiIKKyJUaG9zZSBuZXcgbWVtYmVycyB3aGljaCB3b24ndCBiZSBhYmxlIHRvIGJlIHNhZmVseSBpZ25vcmVkIHdpbGwgYmUgaW5zZXJ0ZWQgIgorImJlZm9yZSBCPGRhdGEudGFyPiB3aXRoIG5hbWVzIHN0YXJ0aW5nIHdpdGggc29tZXRoaW5nIG90aGVyIHRoYW4gIgorInVuZGVyc2NvcmVzLCBvciB3aWxsIChtb3JlIGxpa2VseSkgY2F1c2UgdGhlIG1ham9yIHZlcnNpb24gbnVtYmVyIHRvIGJlICIKKyJpbmNyZWFzZWQuIgorbXNnc3RyICIiCisiU29sY2hlIG5ldWVuIE1pdGdsaWVkZXIsIGRpZSBuaWNodCBwcm9ibGVtbG9zIGlnbm9yaWVydCB3ZXJkZW4ga8O2bm5lbiwgIgorIndlcmRlbiB2b3IgQjxkYXRhLnRhcj4gbWl0IE5hbWVuLCBkaWUgbmljaHQgbWl0IGVpbmVtIFVudGVyc3RyaWNoIGFuZmFuZ2VuLCAiCisiZWluZ2Vmw7xndCBvZGVyIHdlcmRlbiAod2FocnNjaGVpbmxpY2hlcikgZGF6dSBmw7xocmVuLCBkYXNzIGRpZSAiCisiSGF1cHR2ZXJzaW9uc251bW1lciBlcmjDtmh0IHdpcmQuIgorCisjLiB0eXBlOiBTSAorIzogZGViLjU6NzkgZGViLWNvbnRyb2wuNToyNzEgZGViLXNyYy1jb250cm9sLjU6MzI3IGRlYi1zcGxpdC41OjQ5CisjOiBkZWItdmVyc2lvbi41OjExNiBkZWItb2xkLjU6NTEgZGViLW92ZXJyaWRlLjU6NjIgZGViLWV4dHJhLW92ZXJyaWRlLjU6MzcKKyM6IGRlYi1zaGxpYnMuNTo2MSBkZWItc3Vic3R2YXJzLjU6MTU0IGRlYi1zeW1ib2xzLjU6NjEgZGViLXRyaWdnZXJzLjU6NjcKKyM6IGRwa2cuMTo3NjggZHBrZy1hcmNoaXRlY3R1cmUuMToyOTkgZHBrZy5jZmcuNToyMyBkcGtnLWJ1aWxkcGFja2FnZS4xOjI0OQorIzogZHBrZy1kZWIuMToyNTkgZHBrZy1kaXZlcnQuODoxMzIgZHBrZy1nZW5zeW1ib2xzLjE6NDUwIGRwa2ctbmFtZS4xOjk2CisjOiBkcGtnLXF1ZXJ5LjE6MjIwIGRwa2ctc2NhbnBhY2thZ2VzLjE6MTEwIGRwa2ctc2NhbnNvdXJjZXMuMTo3MQorIzogZHBrZy1zaGxpYmRlcHMuMTozMjQgZHBrZy1zb3VyY2UuMTo3MjUgZHBrZy1zcGxpdC4xOjIxNworIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo4NCBkcGtnLXRyaWdnZXIuMTo2NiBkc2VsZWN0LjE6NDQ1IGRzZWxlY3QuY2ZnLjU6MjMKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo1MDgKKyMsIG5vLXdyYXAKK21zZ2lkICJTRUUgQUxTTyIKK21zZ3N0ciAiU0lFSEUgQVVDSCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLjU6ODIKK21zZ2lkICJCPGRlYi1vbGQ+KDUpLCBCPGRwa2ctZGViPigxKSwgQjxkZWItY29udHJvbD4oNSkuIgorbXNnc3RyICJCPGRlYi1vbGQ+KDUpLCBCPGRwa2ctZGViPigxKSwgQjxkZWItY29udHJvbD4oNSkuIgorCisjLiB0eXBlOiBUSAorIzogZGViLWNvbnRyb2wuNTozCisjLCBuby13cmFwCittc2dpZCAiZGViLWNvbnRyb2wiCittc2dzdHIgImRlYi1jb250cm9sIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjYKK21zZ2lkICJkZWItY29udHJvbCAtIERlYmlhbiBwYWNrYWdlcycgbWFzdGVyIGNvbnRyb2wgZmlsZSBmb3JtYXQiCittc2dzdHIgImRlYi1jb250cm9sIC0gRGF0ZWlmb3JtYXQgZGVyIEhhdXB0c3RldWVyZGF0ZWkgdm9uIERlYmlhbi1QYWtldGVuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjkgZGViLXNyYy1jb250cm9sLjU6OQorbXNnaWQgImNvbnRyb2wiCittc2dzdHIgImNvbnRyb2wiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MjQKK21zZ2lkICIiCisiRWFjaCBEZWJpYW4gcGFja2FnZSBjb250YWlucyB0aGUgbWFzdGVyIGBjb250cm9sJyBmaWxlLCB3aGljaCBjb250YWlucyBhICIKKyJudW1iZXIgb2YgZmllbGRzLCBvciBjb21tZW50cyB3aGVuIHRoZSBsaW5lIHN0YXJ0cyB3aXRoIEI8JyMnPi4gRWFjaCBmaWVsZCAiCisiYmVnaW5zIHdpdGggYSB0YWcsIHN1Y2ggYXMgQjxQYWNrYWdlPiBvciBCPFZlcnNpb24+IChjYXNlIGluc2Vuc2l0aXZlKSwgIgorImZvbGxvd2VkIGJ5IGEgY29sb24sIGFuZCB0aGUgYm9keSBvZiB0aGUgZmllbGQuICBGaWVsZHMgYXJlIGRlbGltaXRlZCBvbmx5ICIKKyJieSBmaWVsZCB0YWdzLiBJbiBvdGhlciB3b3JkcywgZmllbGQgdGV4dCBtYXkgYmUgbXVsdGlwbGUgbGluZXMgaW4gbGVuZ3RoLCAiCisiYnV0IHRoZSBpbnN0YWxsYXRpb24gdG9vbHMgd2lsbCBnZW5lcmFsbHkgam9pbiBsaW5lcyB3aGVuIHByb2Nlc3NpbmcgdGhlICIKKyJib2R5IG9mIHRoZSBmaWVsZCAoZXhjZXB0IGluIHRoZSBjYXNlIG9mIHRoZSBCPERlc2NyaXB0aW9uPiBmaWVsZCwgc2VlICIKKyJiZWxvdykuIgorbXNnc3RyICIiCisiSmVkZXMgRGViaWFuLVBha2V0IGVudGjDpGx0IGRpZSBIYXVwdHN0ZXVlcmRhdGVpIMK7Y29udHJvbMKrLCBkaWUgZWluZSBSZWloZSAiCisidm9uIEZlbGRlcm4gb2RlciBLb21tZW50YXJlbiAod2VubiBkaWUgWmVpbGUgbWl0IEI8wrsjwqs+IGJlZ2lubnQpIGVudGjDpGx0LiAiCisiSmVkZXMgRmVsZCBiZWdpbm50IG1pdCBlaW5lciBNYXJraWVydW5nLCB3aWUgQjxQYWNrYWdlPiBvZGVyIEI8VmVyc2lvbj4gIgorIihHcm/Dny0vS2xlaW5zY2hyZWlidW5nIGVnYWwpLCBnZWZvbGd0IHZvbiBlaW5lbSBEb3BwZWxwdW5rdCB1bmQgZGVtIEvDtnJwZXIgIgorImRlcyBGZWxkZXMuIEZlbGRlciB3ZXJkZW4gbnVyIGR1cmNoIGRpZSBGZWxkbWFya2llcnVuZ2VuIGFiZ2VncmVuenQuIE1pdCAiCisiYW5kZXJlbiBXb3J0ZW4sIEZlbGR0ZXh0ZSBrw7ZubmVuIG1laHJlcmUgWmVpbGVuIMO8YmVyc3Bhbm5lbiwgYWJlciBkaWUgIgorIkluc3RhbGxhdGlvbnN3ZXJremV1Z2Ugd2VyZGVuIGltIEFsbGdlbWVpbmVuIGRpZSBaZWlsZW4gYmVpIGRlciBWZXJhcmJlaXR1bmcgIgorImRlcyBGZWxka8O2cnBlcnMgenVzYW1tZW5mYXNzZW4gKG1pdCBBdXNuYWhtZSBkZXMgQjxEZXNjcmlwdGlvbj4tRmVsZGVzLCAiCisic2VoZW4gU2llIGRhenUgdW50ZW4pLiIKKworIy4gdHlwZTogU0gKKyM6IGRlYi1jb250cm9sLjU6MjUKKyMsIG5vLXdyYXAKK21zZ2lkICJSRVFVSVJFRCBGSUVMRFMiCittc2dzdHIgIk5PVFdFTkRJR0UgRkVMREVSIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNToyNgorIywgbm8td3JhcAorbXNnaWQgIkI8UGFja2FnZTo+STwgcGFja2FnZS1uYW1lPiIKK21zZ3N0ciAiQjxQYWNrYWdlOj5JPCBQYWtldG5hbWU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjMwCittc2dpZCAiIgorIlRoZSB2YWx1ZSBvZiB0aGlzIGZpZWxkIGRldGVybWluZXMgdGhlIHBhY2thZ2UgbmFtZSwgYW5kIGlzIHVzZWQgdG8gZ2VuZXJhdGUgIgorImZpbGUgbmFtZXMgYnkgbW9zdCBpbnN0YWxsYXRpb24gdG9vbHMuIgorbXNnc3RyICIiCisiRGVyIFdlcnQgZGllc2VzIEZlbGRlcyBiZXN0aW1tdCBkZW4gUGFrZXRuYW1lbiB1bmQgd2lyZCB2b24gZGVuIG1laXN0ZW4gIgorIkluc3RhbGxhdGlvbnN3ZXJremV1Z2VuIHZlcndlbmRldCwgdW0gRGF0ZWluYW1lbiB6dSBlcnN0ZWxsZW4uIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNTozMAorIywgbm8td3JhcAorbXNnaWQgIkI8VmVyc2lvbjo+STwgdmVyc2lvbi1zdHJpbmc+IgorbXNnc3RyICJCPFZlcnNpb246Pkk8IFZlcnNpb25zLVplaWNoZW5rZXR0ZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MzcKK21zZ2lkICIiCisiVHlwaWNhbGx5LCB0aGlzIGlzIHRoZSBvcmlnaW5hbCBwYWNrYWdlJ3MgdmVyc2lvbiBudW1iZXIgaW4gd2hhdGV2ZXIgZm9ybSAiCisidGhlIHByb2dyYW0ncyBhdXRob3IgdXNlcy4gSXQgbWF5IGFsc28gaW5jbHVkZSBhIERlYmlhbiByZXZpc2lvbiBudW1iZXIgKGZvciAiCisibm9uLW5hdGl2ZSBwYWNrYWdlcykuIFRoZSBleGFjdCBmb3JtYXQgYW5kIHNvcnRpbmcgYWxnb3JpdGhtIGFyZSBkZXNjcmliZWQgIgorImluIEI8ZGViLXZlcnNpb24+KDUpLiIKK21zZ3N0ciAiIgorIlR5cGlzY2hlcndlaXNlIGlzdCBkYXMgZGllIE9yaWdpbmFsLVBha2V0dmVyc2lvbnNudW1tZXIsIGluIGRlciBGb3JtLCBkaWUgIgorImRlciBQcm9ncmFtbWF1dG9yIHZlcndlbmRldC4gRXMga2FubiBhdWNoIGVpbmUgRGViaWFuLVJldmlzaW9uc251bW1lciAiCisiZW50aGFsdGVuIChmw7xyIG5pY2h0IGF1cyBEZWJpYW4gc3RhbW1lbmRlIFBha2V0ZSkuIERhcyBnZW5hdWUgRm9ybWF0IHVuZCBkZXIgIgorIlNvcnRpZXJhbGdvcml0aG11cyBzaW5kIGluIEI8ZGViLXZlcnNpb24+KDUpIGJlc2NocmllYmVuLiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MzcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPE1haW50YWluZXI6Pkk8IGZ1bGxuYW1lLWVtYWlsPiIKK21zZ3N0ciAiQjxNYWludGFpbmVyOj5JPCBWb2xsc3TDpG5kaWdlci1OYW1lLXVuZC1FLU1haWw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjQyCittc2dpZCAiIgorIlNob3VsZCBiZSBpbiB0aGUgZm9ybWF0IGBKb2UgQmxvZ2dzIEU8bHQ+amJsb2dnc0Bmb28uY29tRTxndD4nLCBhbmQgaXMgIgorInR5cGljYWxseSB0aGUgcGVyc29uIHdobyBjcmVhdGVkIHRoZSBwYWNrYWdlLCBhcyBvcHBvc2VkIHRvIHRoZSBhdXRob3Igb2YgIgorInRoZSBzb2Z0d2FyZSB0aGF0IHdhcyBwYWNrYWdlZC4iCittc2dzdHIgIiIKKyJTb2xsdGUgaW4gZGVtIEZvcm1hdCDCu0pvZSBCbG9nZ3MgRTxsdD5qYmxvZ2dzQGZvby5jb21FPGd0PsKrIHNlaW4gdW5kIGlzdCAiCisidHlwaXNjaGVyd2Vpc2UgZGllIFBlcnNvbiwgZGllIGRhcyBQYWtldCBlcnN0ZWxsdCBoYXQsIGltIEdlZ2Vuc2F0eiB6dW0gIgorIkF1dG9yIGRlciBTb2Z0d2FyZSwgZGllIHBha2V0aWVydCB3dXJkZS4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjQyCisjLCBuby13cmFwCittc2dpZCAiQjxEZXNjcmlwdGlvbjo+STwgc2hvcnQtZGVzY3JpcHRpb24+IgorbXNnc3RyICJCPERlc2NyaXB0aW9uOj5JPCBLdXJ6YmVzY2hyZWlidW5nPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNTo0NQorbXNnaWQgIkI8ID5JPGxvbmctZGVzY3JpcHRpb24+IgorbXNnc3RyICJCPCA+STxMYW5nYmVzY2hyZWlidW5nPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNTo1MQorbXNnaWQgIiIKKyJUaGUgZm9ybWF0IGZvciB0aGUgcGFja2FnZSBkZXNjcmlwdGlvbiBpcyBhIHNob3J0IGJyaWVmIHN1bW1hcnkgb24gdGhlIGZpcnN0ICIKKyJsaW5lIChhZnRlciB0aGUgXCJEZXNjcmlwdGlvblwiIGZpZWxkKS4gVGhlIGZvbGxvd2luZyBsaW5lcyBzaG91bGQgYmUgdXNlZCAiCisiYXMgYSBsb25nZXIsIG1vcmUgZGV0YWlsZWQgZGVzY3JpcHRpb24uIEVhY2ggbGluZSBvZiB0aGUgbG9uZyBkZXNjcmlwdGlvbiAiCisibXVzdCBiZSBwcmVjZWRlZCBieSBhIHNwYWNlLCBhbmQgYmxhbmsgbGluZXMgaW4gdGhlIGxvbmcgZGVzY3JpcHRpb24gbXVzdCAiCisiY29udGFpbiBhIHNpbmdsZSAnLicgZm9sbG93aW5nIHRoZSBwcmVjZWRpbmcgc3BhY2UuIgorbXNnc3RyICIiCisiRGFzIEZvcm1hdCBkZXIgUGFrZXRiZXNjaHJlaWJ1bmcgaXN0IGVpbmUga3VyemUga25hcHBlIFp1c2FtbWVuZmFzc3VuZyBhdWYgIgorImRlciBlcnN0ZW4gWmVpbGUgKG5hY2ggZGVtIMK7RGVzY3JpcHRpb27Cqy1GZWxkKS4gRGllIGZvbGdlbmRlbiBaZWlsZW4gc29sbHRlbiAiCisiYWxzIGzDpG5nZXJlLCBkZXRhaWxsaWVydGVyZSBCZXNjaHJlaWJ1bmcgdmVyd2VuZGV0IHdlcmRlbi4gSmVkZSBaZWlsZSBkZXIgIgorIkxhbmdiZXNjaHJlaWJ1bmcgbXVzcyB2b24gZWluZW0gTGVlcnplaWNoZW4gYmVnb25uZW4gd2VyZGVuLCB1bmQgTGVlcnplaWxlbiAiCisiaW4gZGVyIExhbmdiZXNjaHJlaWJ1bmcgbcO8c3NlbiBlaW5lbiBlaW56ZWxuZW4gwrsuwqsgaGludGVyIGRlbSBlaW5sZWl0ZW5kZW4gIgorIkxlZXJ6ZWljaGVuIGVudGhhbHRlbi4iCisKKyMuIHR5cGU6IFNICisjOiBkZWItY29udHJvbC41OjUyCisjLCBuby13cmFwCittc2dpZCAiT1BUSU9OQUwgRklFTERTIgorbXNnc3RyICJPUFRJT05BTEUgRkVMREVSIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNTo1MyBkZWItc3JjLWNvbnRyb2wuNTo5MAorIywgbm8td3JhcAorbXNnaWQgIkI8U2VjdGlvbjo+STwgc2VjdGlvbj4iCittc2dzdHIgIkI8U2VjdGlvbjo+STwgQmVyZWljaD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6NTgKK21zZ2lkICIiCisiVGhpcyBpcyBhIGdlbmVyYWwgZmllbGQgdGhhdCBnaXZlcyB0aGUgcGFja2FnZSBhIGNhdGVnb3J5IGJhc2VkIG9uIHRoZSAiCisic29mdHdhcmUgdGhhdCBpdCBpbnN0YWxscy4gU29tZSBjb21tb24gc2VjdGlvbnMgYXJlIGB1dGlscycsIGBuZXQnLCBgbWFpbCcsICIKKyJgdGV4dCcsIGB4MTEnIGV0Yy4iCittc2dzdHIgIiIKKyJEaWVzIGlzdCBlaW4gYWxsZ2VtZWluZXMgRmVsZCwgZGFzIGRlbSBQYWtldCBlaW5lIEthdGVnb3JpZSBnaWJ0LCBiYXNpZXJlbmQgIgorImF1ZiBkZXIgU29mdHdhcmUsIGRpZSBlcyBpbnN0YWxsaWVydC4gRWluaWdlIMO8YmxpY2hlIEJlcmVpY2hlIHNpbmQgwrt1dGlsc8KrLCAiCisiwrtuZXTCqywgwrttYWlswqssIMK7dGV4dMKrLCDCu3gxMcKrIHVzdy4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjU4IGRlYi1zcmMtY29udHJvbC41Ojk2CisjLCBuby13cmFwCittc2dpZCAiQjxQcmlvcml0eTo+STwgcHJpb3JpdHk+IgorbXNnc3RyICJCPFByaW9yaXR5Oj5JPCBQcmlvcml0w6R0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNTo2MgorbXNnaWQgIiIKKyJTZXRzIHRoZSBpbXBvcnRhbmNlIG9mIHRoaXMgcGFja2FnZSBpbiByZWxhdGlvbiB0byB0aGUgc3lzdGVtIGFzIGEgd2hvbGUuICAiCisiQ29tbW9uIHByaW9yaXRpZXMgYXJlIGByZXF1aXJlZCcsIGBzdGFuZGFyZCcsIGBvcHRpb25hbCcsIGBleHRyYScgZXRjLiIKK21zZ3N0ciAiIgorIlNldHp0IGRpZSBCZWRldXR1bmcgZGllc2VzIFBha2V0cyBpbiBCZXp1ZyB6dSBkZW0gR2VzYW10c3lzdGVtLiDDnGJsaWNoZSAiCisiUHJpb3JpdMOkdGVuIHNpbmQgwrtyZXF1aXJlZMKrLCDCu3N0YW5kYXJkwqssIMK7b3B0aW9uYWzCqywgwrtleHRyYcKrIHVzdy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6NzEgZGViLXNyYy1jb250cm9sLjU6MTA5Cittc2dpZCAiIgorIkluIERlYmlhbiwgdGhlIEI8U2VjdGlvbj4gYW5kIEI8UHJpb3JpdHk+IGZpZWxkcyBoYXZlIGEgZGVmaW5lZCBzZXQgb2YgIgorImFjY2VwdGVkIHZhbHVlcyBiYXNlZCBvbiB0aGUgUG9saWN5IE1hbnVhbC4gIEEgbGlzdCBvZiB0aGVzZSB2YWx1ZXMgY2FuIGJlICIKKyJvYnRhaW5lZCBmcm9tIHRoZSBsYXRlc3QgdmVyc2lvbiBvZiB0aGUgQjxkZWJpYW4tcG9saWN5PiBwYWNrYWdlLiIKK21zZ3N0ciAiIgorIkluIERlYmlhbiBoYWJlbiBkaWUgQjxTZWN0aW9uPi0gdW5kIEI8UHJpb3JpdHk+LUZlbGRlciBlaW5lbiBkZWZpbmllcnRlbiAiCisiU2F0eiBhbiBha3plcHRpZXJ0ZW4gV2VydGVuLCBiYXNpZXJlbmQgYXVmIGRlbSBSaWNodGxpbmllbi1IYW5kYnVjaC4gRWluZSAiCisiTGlzdGUgZGllc2VyIFdlcnRlIGthbm4gYXVzIGRlciBuZXVzdGVuIFZlcnNpb24gZGVzIFBha2V0cyBCPGRlYmlhbi1wb2xpY3k+ICIKKyJlcmhhbHRlbiB3ZXJkZW4uIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNTo3MSBkZWItc3JjLWNvbnRyb2wuNToyMTYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPEVzc2VudGlhbDo+IEI8eWVzPnxCPG5vPiIKK21zZ3N0ciAiQjxFc3NlbnRpYWw6PiBCPHllcz58Qjxubz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6NzgKK21zZ2lkICIiCisiVGhpcyBmaWVsZCBpcyB1c3VhbGx5IG9ubHkgbmVlZGVkIHdoZW4gdGhlIGFuc3dlciBpcyBCPHllcz4uIEl0IGRlbm90ZXMgYSAiCisicGFja2FnZSB0aGF0IGlzIHJlcXVpcmVkIGZvciBwcm9wZXIgb3BlcmF0aW9uIG9mIHRoZSBzeXN0ZW0uIERwa2cgb3IgYW55ICIKKyJvdGhlciBpbnN0YWxsYXRpb24gdG9vbCB3aWxsIG5vdCBhbGxvdyBhbiBCPEVzc2VudGlhbD4gcGFja2FnZSB0byBiZSByZW1vdmVkICIKKyIoYXQgbGVhc3Qgbm90IHdpdGhvdXQgdXNpbmcgb25lIG9mIHRoZSBmb3JjZSBvcHRpb25zKS4iCittc2dzdHIgIiIKKyJEaWVzZXMgRmVsZCB3aXJkIG5vcm1hbGVyd2Vpc2UgbnVyIGJlbsO2dGlndCwgd2VubiBkaWUgQW50d29ydCBCPHllcz4gbGF1dGV0LiAiCisiRXMgYmV6ZWljaG5ldCBlaW4gUGFrZXQsIGRhcyBmw7xyIGRlbiBvcmRudW5nc2dlbcOkw59lbiBCZXRyaWViIGRlcyBTeXN0ZW1zICIKKyJiZW7DtnRpZ3Qgd2lyZC4gRHBrZyBvZGVyIGplZGVzIGFuZGVyZSBJbnN0YWxsYXRpb25zd2Vya3pldWcgd2lyZCBlcyBuaWNodCAiCisiZXJsYXViZW4sIGVpbiBCPEVzc2VudGlhbD4tUGFrZXQgenUgZW50ZmVybmVuICh6dW1pbmRlc3RlbnMgbmljaHQgb2huZSBkaWUgIgorIlZlcndlbmR1bmcgZWluZXIgZGVyIMK7Zm9yY2XCqy1PcHRpb25lbikuIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNTo3OAorIywgbm8td3JhcAorbXNnaWQgIkI8QXJjaGl0ZWN0dXJlOj4gSTxhcmNoPnxCPGFsbD4iCittc2dzdHIgIkI8QXJjaGl0ZWN0dXJlOj4gSTxhcmNoPnxCPGFsbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6ODYKK21zZ2lkICIiCisiVGhlIGFyY2hpdGVjdHVyZSBzcGVjaWZpZXMgd2hpY2ggdHlwZSBvZiBoYXJkd2FyZSB0aGlzIHBhY2thZ2Ugd2FzIGNvbXBpbGVkICIKKyJmb3IuIENvbW1vbiBhcmNoaXRlY3R1cmVzIGFyZSBgaTM4NicsIGBtNjhrJywgYHNwYXJjJywgYGFscGhhJywgYHBvd2VycGMnICIKKyJldGMuIE5vdGUgdGhhdCB0aGUgQjxhbGw+IG9wdGlvbiBpcyBtZWFudCBmb3IgcGFja2FnZXMgdGhhdCBhcmUgYXJjaGl0ZWN0dXJlICIKKyJpbmRlcGVuZGVudC4gU29tZSBleGFtcGxlcyBvZiB0aGlzIGFyZSBzaGVsbCBhbmQgUGVybCBzY3JpcHRzLCBhbmQgIgorImRvY3VtZW50YXRpb24uIgorbXNnc3RyICIiCisiRGllIEFyY2hpdGVrdHVyIHNwZXppZml6aWVydCBkZW4gSGFyZHdhcmV0eXAgZsO8ciBkZW4gZGllc2VzIFBha2V0IGtvbXBpbGllcnQgIgorInd1cmRlLiBHZWzDpHVmaWdlIEFyY2hpdGVrdHVyZW4gc2luZCDCu2kzODbCqywgwrttNjhrwqssIMK7c3BhcmPCqywgwrthbHBoYcKrLCAiCisiwrtwb3dlcnBjwqsgdXN3LiBCZWFjaHRlbiBTaWUsIGRhc3MgZGllIE9wdGlvbiBCPGFsbD4gZsO8ciBQYWtldGUgZ2VkYWNodCBpc3QsICIKKyJkaWUgQXJjaGl0ZWt0dXItdW5hYmjDpG5naWcgc2luZC4gRWluaWdlIEJlaXNwaWVsZSBoaWVyZsO8ciBzaW5kIFNoZWxsLSB1bmQgIgorIlBlcmwtU2tyaXB0ZSB1bmQgRG9rdW1lbnRhdGlvbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41Ojg2IGRlYi1zcmMtY29udHJvbC41Ojg1CisjLCBuby13cmFwCittc2dpZCAiQjxPcmlnaW46Pkk8IG5hbWU+IgorbXNnc3RyICJCPE9yaWdpbjo+STwgTmFtZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6ODkKK21zZ2lkICJUaGUgbmFtZSBvZiB0aGUgZGlzdHJpYnV0aW9uIHRoaXMgcGFja2FnZSBpcyBvcmlnaW5hdGluZyBmcm9tLiIKK21zZ3N0ciAiRGVyIE5hbWUgZGVyIERpc3RyaWJ1dGlvbiwgYXVzIGRlciBkaWVzZXMgUGFrZXQgdXJzcHLDvG5nbGljaCBzdGFtbXQuIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNTo4OSBkZWItc3JjLWNvbnRyb2wuNTo2NgorIywgbm8td3JhcAorbXNnaWQgIkI8QnVnczo+STwgdXJsPiIKK21zZ3N0ciAiQjxCdWdzOj5JPCBVUkw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41Ojk0Cittc2dpZCAiIgorIlRoZSBJPHVybD4gb2YgdGhlIGJ1ZyB0cmFja2luZyBzeXN0ZW0gZm9yIHRoaXMgcGFja2FnZS4gVGhlIGN1cnJlbnQgdXNlZCAiCisiZm9ybWF0IGlzIEk8YnRzLXR5cGU+Qjw6Ly8+STxidHMtYWRkcmVzcz4sIGxpa2UgQjxkZWJidWdzOi8vYnVncy5kZWJpYW4ub3JnPi4iCittc2dzdHIgIiIKKyJEaWUgSTxVUkw+IGRlciBGZWhsZXJkYXRlbmJhbmsgZsO8ciBkaWVzZXMgUGFrZXQuIERhcyBkZXJ6ZWl0IHZlcndlbmRldGUgIgorIkZvcm1hdCBpc3QgSTxCVFMtQXJ0PkI8Oi8vPkk8QlRTLUFkcmVzc2U+IHdpZSBpbiBCPGRlYmJ1Z3M6Ly9idWdzLmRlYmlhbi4iCisib3JnPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41Ojk0IGRlYi1zcmMtY29udHJvbC41OjYyCisjLCBuby13cmFwCittc2dpZCAiQjxIb21lcGFnZTo+STwgdXJsPiIKK21zZ3N0ciAiQjxIb21lcGFnZTo+STwgVVJMPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNTo5NworbXNnaWQgIlRoZSB1cHN0cmVhbSBwcm9qZWN0IGhvbWUgcGFnZSBJPHVybD4uIgorbXNnc3RyICJEaWUgSTxVUkw+IGRlcyBPcmlnaW5hbC0gKFVwc3RyZWFtLSlQcm9qZWt0cy4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41Ojk3IGRlYi1zcmMtY29udHJvbC41OjIyMgorIywgbm8td3JhcAorbXNnaWQgIkI8VGFnOj5JPCB0YWctbGlzdD4iCittc2dzdHIgIkI8VGFnOj4gSTwgTGlzdGUtdm9uLU1hcmtpZXJ1bmdlbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MTAxCittc2dpZCAiIgorIkxpc3Qgb2YgdGFncyBkZXNjcmliaW5nIHRoZSBxdWFsaXRpZXMgb2YgdGhlIHBhY2thZ2UuIFRoZSBkZXNjcmlwdGlvbiBhbmQgIgorImxpc3Qgb2Ygc3VwcG9ydGVkIHRhZ3MgY2FuIGJlIGZvdW5kIGluIHRoZSBCPGRlYnRhZ3M+IHBhY2thZ2UuIgorbXNnc3RyICIiCisiTGlzdGUgZGVyIHVudGVyc3TDvHR6dGVuIE1hcmtpZXJ1bmdlbiAowrtUYWdzwqspLCBkaWUgZGllIEVpZ2Vuc2NoYWZ0ZW4gZGVzICIKKyJQYWtldHMgYmVzY2hyZWliZW4uIERpZSBCZXNjaHJlaWJ1bmcgdW5kIGRpZSBMaXN0ZSBkZXIgdW50ZXJzdMO8dHp0ZW4gIgorIk1hcmtpZXJ1bmdlbiBrYW5uIGluIGRlbSBQYWtldCBCPGRlYnRhZ3M+IGdlZnVuZGVuIHdlcmRlbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjEwMSBkZWItc3JjLWNvbnRyb2wuNToyMTkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPE11bHRpLUFyY2g6PiBCPHNhbWU+fEI8Zm9yZWlnbj58QjxhbGxvd2VkPiIKK21zZ3N0ciAiQjxNdWx0aS1BcmNoOj4gQjxzYW1lPnxCPGZvcmVpZ24+fEI8YWxsb3dlZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MTEzCittc2dpZCAiIgorIlRoaXMgZmllbGQgaXMgdXNlZCB0byBpbmRpY2F0ZSBob3cgdGhpcyBwYWNrYWdlIHNob3VsZCBiZWhhdmUgb24gYSBtdWx0aS0iCisiYXJjaCBpbnN0YWxsYXRpb25zLiBUaGUgdmFsdWUgQjxzYW1lPiBtZWFucyB0aGF0IHRoZSBwYWNrYWdlIGlzIGNvLSIKKyJpbnN0YWxsYWJsZSB3aXRoIGl0c2VsZiwgYnV0IGl0IG11c3Qgbm90IGJlIHVzZWQgdG8gc2F0aXNmeSB0aGUgZGVwZW5kZW5jeSAiCisib2YgYW55IHBhY2thZ2Ugb2YgYSBkaWZmZXJlbnQgYXJjaGl0ZWN0dXJlIGZyb20gaXRzZWxmLiBUaGUgdmFsdWUgQjxmb3JlaWduPiAiCisibWVhbnMgdGhhdCB0aGUgcGFja2FnZSBpcyBub3QgY28taW5zdGFsbGFibGUgd2l0aCBpdHNlbGYsIGJ1dCBzaG91bGQgYmUgIgorImFsbG93ZWQgdG8gc2F0aXNmeSB0aGUgZGVwZW5kZW5jeSBvZiBhIHBhY2thZ2Ugb2YgYSBkaWZmZXJlbnQgYXJjaCBmcm9tICIKKyJpdHNlbGYuIFRoZSB2YWx1ZSBCPGFsbG93ZWQ+IGFsbG93cyByZXZlcnNlLWRlcGVuZGVuY2llcyB0byBpbmRpY2F0ZSBpbiAiCisidGhlaXIgRGVwZW5kcyBmaWVsZCB0aGF0IHRoZXkgbmVlZCBhIHBhY2thZ2UgZnJvbSBhIGZvcmVpZ24gYXJjaGl0ZWN0dXJlLCAiCisiYnV0IGhhcyBubyBlZmZlY3Qgb3RoZXJ3aXNlLiBUaGlzIGZpZWxkIHNob3VsZCBub3QgYmUgcHJlc2VudCBpbiBwYWNrYWdlcyAiCisid2l0aCB0aGUgQjxBcmNoaXRlY3R1cmU6IGFsbD4gZmllbGQuIgorbXNnc3RyICIiCisiRGFzIEZlbGQgd2lyZCBkYXp1IHZlcndhbmR0LCBhbnp1Z2ViZW4sIHdpZSBzaWNoIGRpZXNlcyBQYWtldCBpbiBlaW5lciBNdWx0aS0iCisiQXJjaC1JbnN0YWxsYXRpb24gdmVyaGFsdGVuIHNvbGwuIERlciBXZXJ0IEI8c2FtZT4gYmVkZXV0ZXQsIGRhc3MgZGFzIFBha2V0ICIKKyJtaXQgc2ljaCBzZWxic3Qga29pbnN0YWxsaWVyYmFyIGlzdCwgYWJlciBuaWNodCBkYXp1IHZlcndhbmR0IHdlcmRlbiBkYXJmLCAiCisiZGllIEFiaMOkbmdpZ2tlaXQgZWluZXMgUGFrZXRzIHZvbiBlaW5lciBhbmRlcmVuIEFyY2hpdGVrdHVyIG1pdCBpaG0gc2VsYnN0ICIKKyJ6dSBlcmbDvGxsZW4uIERlciBXZXJ0IEI8Zm9yZWlnbj4gYmVkZXV0ZXQsIGRhc3MgZGFzIFBha2V0IG5pY2h0IG1pdCBzaWNoICIKKyJzZWxic3Qga29pbnN0YWxsaWVyYmFyIGlzdCwgYWJlciBlcyBlcmxhdWJ0IHNlaW4gc29sbCwgZGllIEFiaMOkbmdpZ2tlaXQgIgorImVpbmVzIFBha2V0cyB2b24gZWluZXIgYW5kZXJlbiBBcmNoaXRla3R1ciBtaXQgaWhtIHNlbGJzdCB6dSBlcmbDvGxsZW4uIERlciAiCisiV2VydCBCPGFsbG93ZWQ+IGVybGF1YnQgZXMgaW52ZXJzIEFiaMOkbmdpZ2VuIGluIGlocmVtIEZlbGQgwrtEZXBlbmRzwqsgIgorImFuenV6ZWlnZW4sIGRhc3Mgc2llIGVpbiBQYWtldCB2b24gZWluZXIgZnJlbWRlbiBBcmNoaXRla3R1ciBiZW7DtnRpZ2VuLCBoYXQgIgorImFiZXIgYW5zb25zdGVuIGtlaW5lbiBFZmZla3QuIERpZXNlcyBGZWxkIHNvbGx0ZSBpbiBQYWtldGVuIG1pdCBkZW0gRmVsZCAiCisiQjxBcmNoaXRlY3R1cmU6IGFsbD4gbmljaHQgdmVyd2FuZHQgd2VyZGVuLiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MTEzCisjLCBuby13cmFwCittc2dpZCAiQjxTb3VyY2U6Pkk8IHNvdXJjZS1uYW1lPiIKK21zZ3N0ciAiQjxTb3VyY2U6PiBJPCBRdWVsbC1OYW1lPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToxMTcKK21zZ2lkICIiCisiVGhlIG5hbWUgb2YgdGhlIHNvdXJjZSBwYWNrYWdlIHRoYXQgdGhpcyBiaW5hcnkgcGFja2FnZSBjYW1lIGZyb20sIGlmICIKKyJkaWZmZXJlbnQgdGhhbiB0aGUgbmFtZSBvZiB0aGUgcGFja2FnZSBpdHNlbGYuIgorbXNnc3RyICIiCisiRGVyIE5hbWUgZGVzIFF1ZWxscGFrZXRzLCBhdXMgZGVtIGRpZXNlcyBCaW7DpHJwYWtldCBhYnN0YW1tdCwgZmFsbHMgZXMgc2ljaCAiCisidm9tIE5hbWVuIGRpZXNlcyBQYWtldGVzIHVudGVyc2NoZWlkZXQuIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNToxMTggZGViLXNyYy1jb250cm9sLjU6MjAyCisjLCBuby13cmFwCittc2dpZCAiQjxTdWJhcmNoaXRlY3R1cmU6Pkk8IHZhbHVlPiIKK21zZ3N0ciAiQjxTdWJhcmNoaXRlY3R1cmU6PiBJPCBXZXJ0PiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MTIxIGRlYi1zcmMtY29udHJvbC41OjIwNQorIywgbm8td3JhcAorbXNnaWQgIkI8S2VybmVsLVZlcnNpb246Pkk8IHZhbHVlPiIKK21zZ3N0ciAiQjxLZXJuZWwtVmVyc2lvbjo+IEk8IFdlcnQ+IgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNToxMjQgZGViLXNyYy1jb250cm9sLjU6MjA4CisjLCBuby13cmFwCittc2dpZCAiQjxJbnN0YWxsZXItTWVudS1JdGVtOj5JPCB2YWx1ZT4iCittc2dzdHIgIkI8SW5zdGFsbGVyLU1lbnUtSXRlbTo+IEk8IFdlcnQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjEzMSBkZWItc3JjLWNvbnRyb2wuNToyMTUKK21zZ2lkICIiCisiVGhlc2UgZmllbGRzIGFyZSB1c2VkIGJ5IHRoZSBkZWJpYW4taW5zdGFsbGVyIGFuZCBhcmUgdXN1YWxseSBub3QgbmVlZGVkLiAgIgorIlNlZSAvdXNyL3NoYXJlL2RvYy9kZWJpYW4taW5zdGFsbGVyL2RldmVsL21vZHVsZXMudHh0IGZyb20gdGhlIEI8ZGViaWFuLSIKKyJpbnN0YWxsZXI+IHBhY2thZ2UgZm9yIG1vcmUgZGV0YWlscyBhYm91dCB0aGVtLiIKK21zZ3N0ciAiIgorIkRpZXNlIEZlbGRlciB3ZXJkZW4gaW0gRGViaWFuLUluc3RhbGxlciB2ZXJ3YW5kdCB1bmQgd2VyZGVuIG5vcm1hbGVyd2Vpc2UgIgorIm5pY2h0IGJlbsO2dGlndC4gTGVzZW4gU2llIC91c3Ivc2hhcmUvZG9jL2RlYmlhbi1pbnN0YWxsZXIvZGV2ZWwvbW9kdWxlcy50eHQgIgorImF1cyBkZW0gUGFrZXQgQjxkZWJpYW4taW5zdGFsbGVyPiBmw7xyIHdlaXRlcmUgSW5mb3JtYXRpb25lbiDDvGJlciBzaWUuIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNToxMzIgZGViLXNyYy1jb250cm9sLjU6MjMzCisjLCBuby13cmFwCittc2dpZCAiQjxEZXBlbmRzOj5JPCBwYWNrYWdlLWxpc3Q+IgorbXNnc3RyICJCPERlcGVuZHM6PiBJPCBQYWtldGxpc3RlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToxNDMKK21zZ2lkICIiCisiTGlzdCBvZiBwYWNrYWdlcyB0aGF0IGFyZSByZXF1aXJlZCBmb3IgdGhpcyBwYWNrYWdlIHRvIHByb3ZpZGUgYSBub24tdHJpdmlhbCAiCisiYW1vdW50IG9mIGZ1bmN0aW9uYWxpdHkuIFRoZSBwYWNrYWdlIG1haW50ZW5hbmNlIHNvZnR3YXJlIHdpbGwgbm90IGFsbG93IGEgIgorInBhY2thZ2UgdG8gYmUgaW5zdGFsbGVkIGlmIHRoZSBwYWNrYWdlcyBsaXN0ZWQgaW4gaXRzIEI8RGVwZW5kcz4gZmllbGQgIgorImFyZW4ndCBpbnN0YWxsZWQgKGF0IGxlYXN0IG5vdCB3aXRob3V0IHVzaW5nIHRoZSBmb3JjZSBvcHRpb25zKS4gIEluIGFuICIKKyJpbnN0YWxsYXRpb24sIHRoZSBwb3N0aW5zdCBzY3JpcHRzIG9mIHBhY2thZ2VzIGxpc3RlZCBpbiBEZXBlbmRzOiBmaWVsZHMgYXJlICIKKyJydW4gYmVmb3JlIHRob3NlIG9mIHRoZSBwYWNrYWdlcyB3aGljaCBkZXBlbmQgb24gdGhlbS4gT24gdGhlIG9wcG9zaXRlLCBpbiBhICIKKyJyZW1vdmFsLCB0aGUgcHJlcm0gc2NyaXB0IG9mIGEgcGFja2FnZSBpcyBydW4gYmVmb3JlIHRob3NlIG9mIHRoZSBwYWNrYWdlcyAiCisibGlzdGVkIGluIGl0cyBEZXBlbmRzOiBmaWVsZC4iCittc2dzdHIgIiIKKyJMaXN0ZSB2b24gUGFrZXRlbiwgZGllIGJlbsO2dGlndCB3ZXJkZW4sIGRhbWl0IGRpZXNlcyBQYWtldCBlaW5lIG5pY2h0LSIKKyJ0cml2aWFsZSBNZW5nZSBhbiBGdW5rdGlvbmVuIGFuYmlldGVuIGthbm4uIERpZSBQYWtldHZlcndhbHR1bmdzc29mdHdhcmUgIgorIndpcmQgZXMgbmljaHQgZXJsYXViZW4sIGRhc3MgZWluIFBha2V0IGluc3RhbGxpZXJ0IHdpcmQsIGZhbGxzIGRpZSBpbiBzZWluZW0gIgorIkI8RGVwZW5kcz4tRmVsZCBhdWZnZWbDvGhydGVuIFBha2V0ZSBuaWNodCBpbnN0YWxsaWVydCBzaW5kICh6dW1pbmRlc3RlbnMgIgorIm5pY2h0IG9obmUgVmVyd2VuZHVuZyBkZXIgwrtGb3JjZcKrLU9wdGlvbmVuKS4gQmVpIGVpbmVyIEluc3RhbGxhdGlvbiB3ZXJkZW4gIgorIlBvc3RpbnN0LVNrcmlwdGUgdm9uIFBha2V0ZW4sIGRpZSBpbSBGZWxkIMK7RGVwZW5kczrCqyBhdWZnZWbDvGhydCBzaW5kLCB2b3IgIgorImRlbiBQb3N0aW5zdC1Ta3JpcHRlbiBkZXIgZWlnZW50bGljaGVuIFBha2V0ZSBhdXNnZWbDvGhydC4gQmVpIGRlciAiCisiZ2VnZW50ZWlsaWdlbiBPcGVyYXRpb24sIGRlciBQYWtldC1FbnRmZXJudW5nLCB3aXJkIGRhcyBQcmVybS1Ta3JpcHQgZWluZXMgIgorIlBha2V0ZXMgdm9yIGRlbiBQcmVybS1Ta3JpcHRlbiBkZXIgUGFrZXRlIGF1c2dlZsO8aHJ0LCBkaWUgaW0gRmVsZCDCu0RlcGVuZHM6wqsgIgorImF1ZmdlZsO8aHJ0IHNpbmQuIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNToxNDMgZGViLXNyYy1jb250cm9sLjU6MjM2CisjLCBuby13cmFwCittc2dpZCAiQjxQcmUtRGVwZW5kczo+STwgcGFja2FnZS1saXN0PiIKK21zZ3N0ciAiQjxQcmUtRGVwZW5kczo+IEk8IFBha2V0bGlzdGU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjE1MAorbXNnaWQgIiIKKyJMaXN0IG9mIHBhY2thZ2VzIHRoYXQgbXVzdCBiZSBpbnN0YWxsZWQgQjxhbmQ+IGNvbmZpZ3VyZWQgYmVmb3JlIHRoaXMgb25lICIKKyJjYW4gYmUgaW5zdGFsbGVkLiBUaGlzIGlzIHVzdWFsbHkgdXNlZCBpbiB0aGUgY2FzZSB3aGVyZSB0aGlzIHBhY2thZ2UgIgorInJlcXVpcmVzIGFub3RoZXIgcGFja2FnZSBmb3IgcnVubmluZyBpdHMgcHJlaW5zdCBzY3JpcHQuIgorbXNnc3RyICIiCisiTGlzdGUgYW4gUGFrZXRlbiBkaWUgaW5zdGFsbGllcnQgQjx1bmQ+IGtvbmZpZ3VyaWVydCBzZWluIG3DvHNzZW4sIGJldm9yICIKKyJkaWVzZXMgUGFrZXQgaW5zdGFsbGllcnQgd2VyZGVuIGthbm4uIERpZXMgd2lyZCBub3JtYWxlcndlaXNlIGluIGRlbSBGYWxsICIKKyJ2ZXJ3ZW5kZXQsIHdvIGRpZXNlcyBQYWtldCBlaW4gYW5kZXJlcyBQYWtldCB6dW0gQXVzZsO8aHJlbiBzZWluZXMgcHJlaW5zdC0iCisiU2tyaXB0ZXMgYmVuw7Z0aWd0LiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MTUwIGRlYi1zcmMtY29udHJvbC41OjIzOQorIywgbm8td3JhcAorbXNnaWQgIkI8UmVjb21tZW5kczo+STwgcGFja2FnZS1saXN0PiIKK21zZ3N0ciAiQjxSZWNvbW1lbmRzOj4gSTwgUGFrZXRsaXN0ZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MTU3Cittc2dpZCAiIgorIkxpc3RzIHBhY2thZ2VzIHRoYXQgd291bGQgYmUgZm91bmQgdG9nZXRoZXIgd2l0aCB0aGlzIG9uZSBpbiBhbGwgYnV0IHVudXN1YWwgIgorImluc3RhbGxhdGlvbnMuIFRoZSBwYWNrYWdlIG1haW50ZW5hbmNlIHNvZnR3YXJlIHdpbGwgd2FybiB0aGUgdXNlciBpZiB0aGV5ICIKKyJpbnN0YWxsIGEgcGFja2FnZSB3aXRob3V0IHRob3NlIGxpc3RlZCBpbiBpdHMgQjxSZWNvbW1lbmRzPiBmaWVsZC4iCittc2dzdHIgIiIKKyJMaXN0ZSBhbiBQYWtldGVuLCBkaWUgaW4gYWxsZW4sIGFiZ2VzZWhlbiB2b24gdW5nZXfDtmhubGljaGVuLCBJbnN0YWxsYXRpb25lbiAiCisienVzYW1tZW4gYW5nZWZ1bmRlbiB3w7xyZGVuLiBEaWUgUGFrZXR2ZXJ3YWx0dW5nc3NvZnR3YXJlIHdpcmQgZGVuIEJlbnV0emVyICIKKyJ3YXJuZW4sIGZhbGxzIGVyIGVpbiBQYWtldCBvaG5lIGRpZSBpbSBCPFJlY29tbWVuZHM+LUZlbGQgYXVmZ2Vmw7xocnRlbiAiCisiUGFrZXRlIGluc3RhbGxpZXJ0LiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MTU3IGRlYi1zcmMtY29udHJvbC41OjI0MgorIywgbm8td3JhcAorbXNnaWQgIkI8U3VnZ2VzdHM6Pkk8IHBhY2thZ2UtbGlzdD4iCittc2dzdHIgIkI8U3VnZ2VzdHM6PiBJPCBQYWtldGxpc3RlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToxNjIKK21zZ2lkICIiCisiTGlzdHMgcGFja2FnZXMgdGhhdCBhcmUgcmVsYXRlZCB0byB0aGlzIG9uZSBhbmQgY2FuIHBlcmhhcHMgZW5oYW5jZSBpdHMgIgorInVzZWZ1bG5lc3MsIGJ1dCB3aXRob3V0IHdoaWNoIGluc3RhbGxpbmcgdGhpcyBwYWNrYWdlIGlzIHBlcmZlY3RseSAiCisicmVhc29uYWJsZS4iCittc2dzdHIgIiIKKyJMaXN0ZSBhbiBQYWtldGVuIGRpZSBlaW5lbiBCZXp1ZyB6dSBkaWVzZW0gaGFiZW4gdW5kIHZpZWxsZWljaHQgc2VpbmUgIgorIk7DvHR6bGljaGtlaXQgZXJ3ZWl0ZXJuIGvDtm5udGVuLCBhYmVyIG9obmUgZGllIGRhcyB6dSBpbnN0YWxsaWVyZW5kZSBQYWtldCAiCisicGVyZmVrdCBzaW5udm9sbCBpc3QuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjE3NAorbXNnaWQgIiIKKyJUaGUgc3ludGF4IG9mIEI8RGVwZW5kcz4sIEI8UHJlLURlcGVuZHM+LCBCPFJlY29tbWVuZHM+IGFuZCBCPFN1Z2dlc3RzPiAiCisiZmllbGRzIGlzIGEgbGlzdCBvZiBncm91cHMgb2YgYWx0ZXJuYXRpdmUgcGFja2FnZXMuIEVhY2ggZ3JvdXAgaXMgYSBsaXN0IG9mICIKKyJwYWNrYWdlcyBzZXBhcmF0ZWQgYnkgdmVydGljYWwgYmFyIChvciBgcGlwZScpIHN5bWJvbHMsIGB8Jy4gVGhlIGdyb3VwcyBhcmUgIgorInNlcGFyYXRlZCBieSBjb21tYXMuIENvbW1hcyBhcmUgdG8gYmUgcmVhZCBhcyBgQU5EJywgYW5kIHBpcGVzIGFzIGBPUicsIHdpdGggIgorInBpcGVzIGJpbmRpbmcgbW9yZSB0aWdodGx5LiBFYWNoIHBhY2thZ2UgbmFtZSBpcyBvcHRpb25hbGx5IGZvbGxvd2VkIGJ5IGEgIgorInZlcnNpb24gbnVtYmVyIHNwZWNpZmljYXRpb24gaW4gcGFyZW50aGVzZXMuIgorbXNnc3RyICIiCisiRGllIFN5bnRheCBkZXIgQjxEZXBlbmRzPiwgQjxQcmUtRGVwZW5kcz4sIEI8UmVjb21tZW5kcz4gdW5kIEI8U3VnZ2VzdHM+LSIKKyJGZWxkZXIgaXN0IGVpbmUgTGlzdGUgdm9uIEdydXBwZW4gdm9uIGFsdGVybmF0aXZlbiBQYWtldGVuLiBKZWRlIEdydXBwZSBpc3QgIgorImVpbmUgTGlzdGUgdm9uIGR1cmNoIHZlcnRpa2FsZSBTdHJpY2hlIChvZGVyIMK7UGlwZcKrLVN5bWJvbGUpIMK7fMKrIGdldHJlbm50ZSAiCisiUGFrZXRlLiBEaWUgR3J1cHBlbiB3ZXJkZW4gZHVyY2ggS29tbWF0YSBnZXRyZW5udC4gS29tbWF0YSBtw7xzc2VuIGFscyDCu1VORMKrLCAiCisidmVydGlrYWxlIFN0cmljaGUgYWxzIMK7T0RFUsKrIGdlbGVzZW4gd2VyZGVuLCB3b2JlaSBkaWUgdmVydGlrYWxlbiBTdHJpY2hlICIKKyJzdMOkcmtlciBiaW5kZW4uIEplZGVyIFBha2V0bmFtZSB3aXJkIG9wdGlvbmFsIGdlZm9sZ3Qgdm9uIGVpbmVyICIKKyJWZXJzaW9uc251bW1lci1TcGV6aWZpa2F0aW9uIGluIEtsYW1tZXJuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToxODAKK21zZ2lkICIiCisiQSB2ZXJzaW9uIG51bWJlciBtYXkgc3RhcnQgd2l0aCBhIGBFPGd0PkU8Z3Q+JywgaW4gd2hpY2ggY2FzZSBhbnkgbGF0ZXIgIgorInZlcnNpb24gd2lsbCBtYXRjaCwgYW5kIG1heSBzcGVjaWZ5IG9yIG9taXQgdGhlIERlYmlhbiBwYWNrYWdpbmcgcmV2aXNpb24gIgorIihzZXBhcmF0ZWQgYnkgYSBoeXBoZW4pLiBBY2NlcHRlZCB2ZXJzaW9uIHJlbGF0aW9uc2hpcHMgYXJlIFwiRTxndD5FPGd0PlwiICIKKyJmb3IgZ3JlYXRlciB0aGFuLCBcIkU8bHQ+RTxsdD5cIiBmb3IgbGVzcyB0aGFuLCBcIkU8Z3Q+PVwiIGZvciBncmVhdGVyIHRoYW4gIgorIm9yIGVxdWFsIHRvLCBcIkU8bHQ+PVwiIGZvciBsZXNzIHRoYW4gb3IgZXF1YWwgdG8sIGFuZCBcIj1cIiBmb3IgZXF1YWwgdG8uIgorbXNnc3RyICIiCisiRWluZSBWZXJzaW9uc251bW1lciBrYW5uIG1pdCDCu0U8Z3Q+RTxndD7CqyBiZWdpbm5lbiwgaW4gZGllc2VtIEZhbGxlIHBhc3NlbiAiCisiYWxsZSBuZXVlcmVuIFZlcnNpb25lbiwgdW5kIGthbm4gZGllIERlYmlhbi1QYWtldHJldmlzaW9uIChnZXRyZW5udCBkdXJjaCAiCisiZWluZW4gQmluZGVzdHJpY2gpIGVudGhhbHRlbiBvZGVyIGF1Y2ggbmljaHQuIEFremVwdGllcnRlICIKKyJWZXJzaW9uc2JlemllaHVuZ2VuIHNpbmQgwrtFPGd0PkU8Z3Q+wqsgZsO8ciBncsO2w59lciBhbHMsIMK7RTxsdD5FPGx0PsKrIGbDvHIgIgorImtsZWluZXIgYWxzLCDCu0U8Z3Q+PcKrIGbDvHIgZ3LDtsOfZXIgYWxzIG9kZXIgaWRlbnRpc2NoIHp1LCDCu0U8bHQ+PcKrIGbDvHIga2xlaW5lciAiCisiYWxzIG9kZXIgaWRlbnRpc2NoIHp1IHVuZCDCuz3CqyBmw7xyIGlkZW50aXNjaCB6dS4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjE4MCBkZWItc3JjLWNvbnRyb2wuNToyNDUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPEJyZWFrczo+STwgcGFja2FnZS1saXN0PiIKK21zZ3N0ciAiQjxCcmVha3M6PiBJPCBQYWtldGxpc3RlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToxODgKK21zZ2lkICIiCisiTGlzdHMgcGFja2FnZXMgdGhhdCB0aGlzIG9uZSBicmVha3MsIGZvciBleGFtcGxlIGJ5IGV4cG9zaW5nIGJ1Z3Mgd2hlbiB0aGUgIgorIm5hbWVkIHBhY2thZ2VzIHJlbHkgb24gdGhpcyBvbmUuIFRoZSBwYWNrYWdlIG1haW50ZW5hbmNlIHNvZnR3YXJlIHdpbGwgbm90ICIKKyJhbGxvdyBicm9rZW4gcGFja2FnZXMgdG8gYmUgY29uZmlndXJlZDsgZ2VuZXJhbGx5IHRoZSByZXNvbHV0aW9uIGlzIHRvICIKKyJ1cGdyYWRlIHRoZSBwYWNrYWdlcyBuYW1lZCBpbiBhIEI8QnJlYWtzPiBmaWVsZC4iCittc2dzdHIgIiIKKyJMaXN0ZSBQYWtldGVuIGF1ZiwgZGllIHZvbiBkaWVzZW0gUGFrZXQgYmVzY2jDpGRpZ3Qgd2VyZGVuLCB6dW0gQmVpc3BpZWwgaW4gIgorImRlbSBzaWUgRmVobGVyIHp1Z8OkbmdsaWNoIG1hY2hlbiwgd2VubiBzaWNoIGRhcyBhbmRlcmUgUGFrZXQgYXVmIGRpZXNlcyAiCisiUGFrZXQgdmVybMOkc3N0LiBEaWUgUGFrZXR2ZXJ3YWx0dW5nc3NvZnR3YXJlIHdpcmQgZXMgYmVzY2jDpGRpZ3RlbiBQYWtldGVuICIKKyJuaWNodCBlcmxhdWJlbiwgc2ljaCB6dSBrb25maWd1cmllcmVuOyBpbSBBbGxnZW1laW5lbiB3aXJkIGRhcyBQcm9ibGVtICIKKyJiZWhvYmVuLCBpbmRlbSBlaW4gVXBncmFkZSBkZXMgaW0gQjxCcmVha3M+LUZlbGQgYXVmZ2Vmw7xocnRlbiBQYWtldHMgIgorImR1cmNoZ2Vmw7xocnQgd2lyZC4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjE4OCBkZWItc3JjLWNvbnRyb2wuNToyNTQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPENvbmZsaWN0czo+STwgcGFja2FnZS1saXN0PiIKK21zZ3N0ciAiQjxDb25mbGljdHM6PiBJPCBQYWtldGxpc3RlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToxOTYKK21zZ2lkICIiCisiTGlzdHMgcGFja2FnZXMgdGhhdCBjb25mbGljdCB3aXRoIHRoaXMgb25lLCBmb3IgZXhhbXBsZSBieSBjb250YWluaW5nIGZpbGVzICIKKyJ3aXRoIHRoZSBzYW1lIG5hbWVzLiBUaGUgcGFja2FnZSBtYWludGVuYW5jZSBzb2Z0d2FyZSB3aWxsIG5vdCBhbGxvdyAiCisiY29uZmxpY3RpbmcgcGFja2FnZXMgdG8gYmUgaW5zdGFsbGVkIGF0IHRoZSBzYW1lIHRpbWUuIFR3byBjb25mbGljdGluZyAiCisicGFja2FnZXMgc2hvdWxkIGVhY2ggaW5jbHVkZSBhIEI8Q29uZmxpY3RzPiBsaW5lIG1lbnRpb25pbmcgdGhlIG90aGVyLiIKK21zZ3N0ciAiIgorIkxpc3RlIGFuIFBha2V0ZW4sIGRpZSBtaXQgZGllc2VtIGluIEtvbmZsaWt0IHN0ZWhlbiwgYmVpc3BpZWxzd2Vpc2UgaW5kZW0gIgorImJlaWRlIERhdGVpZW4gZGVuIGdsZWljaGVuIE5hbWVuIGVudGhhbHRlbi4gRGllIFBha2V0dmVyd2FsdHVuZ3Nzb2Z0d2FyZSAiCisid2lyZCBlcyBuaWNodCBlcmxhdWJlbiwgUGFrZXRlLCBkaWUgaW4gS29uZmxpa3Qgc3RlaGVuLCBnbGVpY2h6ZWl0aWcgenUgIgorImluc3RhbGxpZXJlbi4gWndlaSBpbiBLb25mbGlrdCBzdGVoZW5kZSBQYWtldGUgc29sbHRlbiBqZXdlaWxzIGVpbmUgIgorIkI8Q29uZmxpY3RzPi1aZWlsZSBlbnRoYWx0ZW4sIGRpZSBkYXMgYW5kZXJlIFBha2V0IGVyd8OkaG5lbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjE5NiBkZWItc3JjLWNvbnRyb2wuNToyNTEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPFJlcGxhY2VzOj5JPCBwYWNrYWdlLWxpc3Q+IgorbXNnc3RyICJCPFJlcGxhY2VzOj4gSTxQYWtldGxpc3RlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToyMDQKK21zZ2lkICIiCisiTGlzdCBvZiBwYWNrYWdlcyBmaWxlcyBmcm9tIHdoaWNoIHRoaXMgb25lIHJlcGxhY2VzLiBUaGlzIGlzIHVzZWQgZm9yICIKKyJhbGxvd2luZyB0aGlzIHBhY2thZ2UgdG8gb3ZlcndyaXRlIHRoZSBmaWxlcyBvZiBhbm90aGVyIHBhY2thZ2UgYW5kIGlzICIKKyJ1c3VhbGx5IHVzZWQgd2l0aCB0aGUgQjxDb25mbGljdHM+IGZpZWxkIHRvIGZvcmNlIHJlbW92YWwgb2YgdGhlIG90aGVyICIKKyJwYWNrYWdlLCBpZiB0aGlzIG9uZSBhbHNvIGhhcyB0aGUgc2FtZSBmaWxlcyBhcyB0aGUgY29uZmxpY3RlZCBwYWNrYWdlLiIKK21zZ3N0ciAiIgorIkxpc3RlIGFuIFBha2V0ZW4sIHZvbiBkZW5lbiBkaWVzZXMgRGF0ZWllbiBlcnNldHp0LiBEaWVzIHdpcmQgZGF6dSAiCisidmVyd2VuZGV0LCB1bSBkaWVzZW0gUGFrZXQgenUgZXJsYXViZW4sIERhdGVpZW4gdm9uIGVpbmVtIGFuZGVyZW4gUGFrZXQgenUgIgorImVyc2V0emVuIHVuZCB3aXJkIGdld8O2aG5saWNoIG1pdCBkZW0gQjxDb25mbGljdHM+LUZlbGQgdmVyd2VuZGV0LCB1bSBkaWUgIgorIkVudGZlcm51bmcgZGVzIGFuZGVyZW4gUGFrZXRlcyB6dSBlcmxhdWJlbiwgZmFsbHMgZGllc2VzIGF1Y2ggZGllIGdsZWljaGVuICIKKyJEYXRlaWVuIHdpZSBkYXMgaW0gS29uZmxpa3Qgc3RlaGVuZGUgUGFrZXQgaGF0LiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MjA0IGRlYi1zcmMtY29udHJvbC41OjI1NworIywgbm8td3JhcAorbXNnaWQgIkI8UHJvdmlkZXM6Pkk8IHBhY2thZ2UtbGlzdD4iCittc2dzdHIgIkI8UHJvdmlkZXM6PiBJPCBQYWtldGxpc3RlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToyMTQKK21zZ2lkICIiCisiVGhpcyBpcyBhIGxpc3Qgb2YgdmlydHVhbCBwYWNrYWdlcyB0aGF0IHRoaXMgb25lIHByb3ZpZGVzLiBVc3VhbGx5IHRoaXMgaXMgIgorInVzZWQgaW4gdGhlIGNhc2Ugb2Ygc2V2ZXJhbCBwYWNrYWdlcyBhbGwgcHJvdmlkaW5nIHRoZSBzYW1lIHNlcnZpY2UuICBGb3IgIgorImV4YW1wbGUsIHNlbmRtYWlsIGFuZCBleGltIGNhbiBzZXJ2ZSBhcyBhIG1haWwgc2VydmVyLCBzbyB0aGV5IHByb3ZpZGUgYSAiCisiY29tbW9uIHBhY2thZ2UgKGBtYWlsLXRyYW5zcG9ydC1hZ2VudCcpIG9uIHdoaWNoIG90aGVyIHBhY2thZ2VzIGNhbiBkZXBlbmQuICIKKyJUaGlzIHdpbGwgYWxsb3cgc2VuZG1haWwgb3IgZXhpbSB0byBzZXJ2ZSBhcyBhIHZhbGlkIG9wdGlvbiB0byBzYXRpc2Z5IHRoZSAiCisiZGVwZW5kZW5jeS4gVGhpcyBwcmV2ZW50cyB0aGUgcGFja2FnZXMgdGhhdCBkZXBlbmQgb24gYSBtYWlsIHNlcnZlciBmcm9tICIKKyJoYXZpbmcgdG8ga25vdyB0aGUgcGFja2FnZSBuYW1lcyBmb3IgYWxsIG9mIHRoZW0sIGFuZCB1c2luZyBgfCcgdG8gc2VwYXJhdGUgIgorInRoZSBsaXN0LiIKK21zZ3N0ciAiIgorIkRpZXMgaXN0IGVpbmUgTGlzdGUgdm9uIHZpcnR1ZWxsZW4gUGFrZXRlbiwgZGllIGRpZXNlcyBQYWtldCBiZXJlaXRzdGVsbHQuICIKKyJHZXfDtmhubGljaCB3aXJkIGRpZXMgdmVyd2VuZGV0LCB3ZW5uIG1laHJlcmUgUGFrZXRlIGFsbGUgZGVuIGdsZWljaGVuIERpZW5zdCAiCisiYmVyZWl0c3RlbGxlbi4gQmVpc3BpZWxzd2Vpc2Uga8O2bm5lbiBTZW5kbWFpbCB1bmQgRXhpbSBhbHMgTWFpbHNlcnZlciAiCisiZGllbmVuLCBkYWhlciBzdGVsbGVuIHNpZSBlaW4gZ2VtZWluc2FtZXMgUGFrZXQgKMK7bWFpbC10cmFuc3BvcnQtYWdlbnTCqykgIgorImJlcmVpdCwgdm9uIGRlbSBhbmRlcmUgUGFrZXRlIGFiaMOkbmdlbiBrw7ZubmVuLiBEaWVzIGVybGF1YnQgZXMgU2VuZG1haWwgb2RlciAiCisiRXhpbSBhbHMgZ8O8bHRpZ2UgT3B0aW9uZW4genVyIEVyZsO8bGx1bmcgZGVyIEFiaMOkbmdpZ2tlaXQgenUgZGllbmVuLiBEaWVzICIKKyJ2ZXJoaW5kZXJ0LCBkYXNzIFBha2V0ZSwgZGllIHZvbiBlaW5lbSBFLU1haWwtU2VydmVyIGFiaMOkbmdlbiwgYWxsZSAiCisiUGFrZXRuYW1lbiBmw7xyIGFsbGUgRS1NYWlsLVNlcnZlciB3aXNzZW4gdW5kIMK7fMKrIHp1ciBVbnRlcnRlaWx1bmcgZGVyIExpc3RlICIKKyJ2ZXJ3ZW5kZW4gbcO8c3Nlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MjMzCittc2dpZCAiIgorIlRoZSBzeW50YXggb2YgQjxCcmVha3M+LCBCPENvbmZsaWN0cz4sIEI8UmVwbGFjZXM+IGFuZCBCPFByb3ZpZGVzPiBpcyBhIGxpc3QgIgorIm9mIHBhY2thZ2UgbmFtZXMsIHNlcGFyYXRlZCBieSBjb21tYXMgKGFuZCBvcHRpb25hbCB3aGl0ZXNwYWNlKS4gIEluIHRoZSAiCisiQjxCcmVha3M+IGFuZCBCPENvbmZsaWN0cz4gZmllbGRzLCB0aGUgY29tbWEgc2hvdWxkIGJlIHJlYWQgYXMgYE9SJy4gQW4gIgorIm9wdGlvbmFsIHZlcnNpb24gY2FuIGFsc28gYmUgZ2l2ZW4gd2l0aCB0aGUgc2FtZSBzeW50YXggYXMgYWJvdmUgZm9yIHRoZSAiCisiQjxCcmVha3M+LCBCPENvbmZsaWN0cz4gYW5kIEI8UmVwbGFjZXM+IGZpZWxkcy4iCittc2dzdHIgIiIKKyJEaWUgU3ludGF4IHZvbiBCPEJyZWFrcz4sIEI8Q29uZmxpY3RzPiwgQjxSZXBsYWNlcz4gdW5kIEI8UHJvdmlkZXM+IGlzdCBlaW5lICIKKyJMaXN0ZSB2b24gUGFrZXRuYW1lbiwgZ2V0cmVubnQgZHVyY2ggS29tbWF0YSAodW5kIG9wdGlvbmFsZW4gTGVlcnplaWNoZW4pLiAiCisiSW0gQjxCcmVha3M+LSB1bmQgQjxDb25mbGljdHM+LUZlbGQgc29sbHRlIGRhcyBLb21tYSBhbHMgwrtPREVSwqsgZ2VsZXNlbiAiCisid2VyZGVuLiBFaW5lIG9wdGlvbmFsZSBWZXJzaW9uIGthbm4gYXVjaCBtaXQgZGVyIGdsZWljaGVuIFN5bnRheCB3aWUgb2JlbiAiCisiZsO8ciBkaWUgQjxCcmVha3M+LSwgQjxDb25mbGljdHM+LSB1bmQgQjxSZXBsYWNlcz4tRmVsZGVyIGFuZ2VnZWJlbiB3ZXJkZW4uIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNToyMzQgZGViLXNyYy1jb250cm9sLjU6MjYwCisjLCBuby13cmFwCittc2dpZCAiQjxCdWlsdC1Vc2luZzo+STwgcGFja2FnZS1saXN0PiIKK21zZ3N0ciAiQjxCdWlsdC1Vc2luZzo+IEk8IFBha2V0bGlzdGU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjI0NAorbXNnaWQgIiIKKyJUaGlzIGZpZWxkIGxpc3RzIGV4dHJhIHNvdXJjZSBwYWNrYWdlcyB0aGF0IHdlcmUgdXNlZCBkdXJpbmcgdGhlIGJ1aWxkIG9mICIKKyJ0aGlzIGJpbmFyeSBwYWNrYWdlLiAgVGhpcyBpcyBhbiBpbmRpY2F0aW9uIHRvIHRoZSBhcmNoaXZlIG1haW50ZW5hbmNlICIKKyJzb2Z0d2FyZSB0aGF0IHRoZXNlIGV4dHJhIHNvdXJjZSBwYWNrYWdlcyBtdXN0IGJlIGtlcHQgd2hpbHN0IHRoaXMgYmluYXJ5ICIKKyJwYWNrYWdlIGlzIG1haW50YWluZWQuICBUaGlzIGZpZWxkIG11c3QgYmUgYSBsaXN0IG9mIHNvdXJjZSBwYWNrYWdlIG5hbWVzICIKKyJ3aXRoIHN0cmljdCAoPSkgIHZlcnNpb24gcmVsYXRpb25zaGlwcy4gIE5vdGUgdGhhdCB0aGUgYXJjaGl2ZSBtYWludGVuYW5jZSAiCisic29mdHdhcmUgaXMgbGlrZWx5IHRvIHJlZnVzZSB0byBhY2NlcHQgYW4gdXBsb2FkIHdoaWNoIGRlY2xhcmVzIGEgQjxCdWlsdC0iCisiVXNpbmc+IHJlbGF0aW9uc2hpcCB3aGljaCBjYW5ub3QgYmUgc2F0aXNmaWVkIHdpdGhpbiB0aGUgYXJjaGl2ZS4iCittc2dzdHIgIiIKKyJEaWVzZXMgRmVsZCBmw7xocnQgenVzw6R0emxpY2hlIFF1ZWxscGFrZXRlIGF1ZiwgZGllIHfDpGhyZW5kIGRlcyBCYXVzIGRlcyAiCisiQmluw6RycGFrZXRzIHZlcndhbmR0IHd1cmRlbi4gRGllcyBkaWVudCBhbHMgSGlud2VpcyBmw7xyIGRpZSAiCisiQXJjaGl2dmVyd2FsdHVuZ3Nzb2Z0d2FyZSwgZGFzcyB6dXPDpHR6bGljaGUgUXVlbGxwYWtldGUgdm9yaGFuZGVuIGJsZWliZW4gIgorIm3DvHNzZW4sIHfDpGhyZW5kIGRpZXNlcyBCaW7DpHJwYWtldCBiZXRyZXV0IHdpcmQuIERpZXNlcyBGZWxkIG11c3MgZWluZSBMaXN0ZSAiCisidm9uIFF1ZWxscGFrZXRuYW1lbiBlbnRoYWx0ZW4sIGJlaSBkZW5lbiBlaW5lIHN0cmVuZ2UgVmVyc2lvbnNiZXppZWh1bmcgKD0pICIKKyJhbmdlZ2ViZW4gaXN0LiBCZWFjaHRlbiBTaWUsIGRhc3MgZGllIEFyY2hpdnZlcndhbHR1bmdzc29mdHdhcmUgIgorIndhaHJzY2hlaW5saWNoIGVpbmVuIFVwbG9hZCBhYmxlaG5lbiB3aXJkLCBiZWkgZGVtIGVpbmUgQjxCdWlsdC1Vc2luZz4tIgorIkJlemllaHVuZyBhbmdlZ2ViZW4gd3VyZGUsIGRpZSBpbm5lcmhhbGIgZGVzIEFyY2hpdnMgbmljaHQgZXJmw7xsbHQgd2VyZGVuICIKKyJrYW5uLiIKKworIy4gdHlwZTogU0gKKyM6IGRlYi1jb250cm9sLjU6MjQ1IGRlYi1zcmMtY29udHJvbC41OjI4OCBzdGFydC1zdG9wLWRhZW1vbi44OjMwMgorIywgbm8td3JhcAorbXNnaWQgIkVYQU1QTEUiCittc2dzdHIgIkJFSVNQSUVMIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjI2OAorIywgbm8td3JhcAorbXNnaWQgIiIKKyIjIENvbW1lbnRcbiIKKyJQYWNrYWdlOiBncmVwXG4iCisiRXNzZW50aWFsOiB5ZXNcbiIKKyJQcmlvcml0eTogcmVxdWlyZWRcbiIKKyJTZWN0aW9uOiBiYXNlXG4iCisiTWFpbnRhaW5lcjogV2ljaGVydCBBa2tlcm1hbiBFPGx0Pndha2tlcm1hQGRlYmlhbi5vcmdFPGd0PlxuIgorIkFyY2hpdGVjdHVyZTogc3BhcmNcbiIKKyJWZXJzaW9uOiAyLjQtMVxuIgorIlByZS1EZXBlbmRzOiBsaWJjNiAoRTxndD49IDIuMC4xMDUpXG4iCisiUHJvdmlkZXM6IHJncmVwXG4iCisiQ29uZmxpY3RzOiByZ3JlcFxuIgorIkRlc2NyaXB0aW9uOiBHTlUgZ3JlcCwgZWdyZXAgYW5kIGZncmVwLlxuIgorIiBUaGUgR05VIGZhbWlseSBvZiBncmVwIHV0aWxpdGllcyBtYXkgYmUgdGhlIFwiZmFzdGVzdCBncmVwIGluIHRoZSB3ZXN0XCIuXG4iCisiIEdOVSBncmVwIGlzIGJhc2VkIG9uIGEgZmFzdCBsYXp5LXN0YXRlIGRldGVybWluaXN0aWMgbWF0Y2hlciAoYWJvdXRcbiIKKyIgdHdpY2UgYXMgZmFzdCBhcyBzdG9jayBVbml4IGVncmVwKSBoeWJyaWRpemVkIHdpdGggYSBCb3llci1Nb29yZS1Hb3NwZXJcbiIKKyIgc2VhcmNoIGZvciBhIGZpeGVkIHN0cmluZyB0aGF0IGVsaW1pbmF0ZXMgaW1wb3NzaWJsZSB0ZXh0IGZyb20gYmVpbmdcbiIKKyIgY29uc2lkZXJlZCBieSB0aGUgZnVsbCByZWdleHAgbWF0Y2hlciB3aXRob3V0IG5lY2Vzc2FyaWx5IGhhdmluZyB0b1xuIgorIiBsb29rIGF0IGV2ZXJ5IGNoYXJhY3Rlci4gVGhlIHJlc3VsdCBpcyB0eXBpY2FsbHkgbWFueSB0aW1lcyBmYXN0ZXJcbiIKKyIgdGhhbiBVbml4IGdyZXAgb3IgZWdyZXAuIChSZWd1bGFyIGV4cHJlc3Npb25zIGNvbnRhaW5pbmcgYmFja3JlZmVyZW5jaW5nXG4iCisiIHdpbGwgcnVuIG1vcmUgc2xvd2x5LCBob3dldmVyKS5cbiIKK21zZ3N0ciAiIgorIiMgQ29tbWVudFxuIgorIlBhY2thZ2U6IGdyZXBcbiIKKyJFc3NlbnRpYWw6IHllc1xuIgorIlByaW9yaXR5OiByZXF1aXJlZFxuIgorIlNlY3Rpb246IGJhc2VcbiIKKyJNYWludGFpbmVyOiBXaWNoZXJ0IEFra2VybWFuIEU8bHQ+d2Fra2VybWFAZGViaWFuLm9yZ0U8Z3Q+XG4iCisiQXJjaGl0ZWN0dXJlOiBzcGFyY1xuIgorIlZlcnNpb246IDIuNC0xXG4iCisiUHJlLURlcGVuZHM6IGxpYmM2IChFPGd0Pj0gMi4wLjEwNSlcbiIKKyJQcm92aWRlczogcmdyZXBcbiIKKyJDb25mbGljdHM6IHJncmVwXG4iCisiRGVzY3JpcHRpb246IEdOVSBncmVwLCBlZ3JlcCB1bmQgZmdyZXAuXG4iCisiIERpZSBHTlUtRmFtaWxpZSBkZXIgR3JlcC1XZXJremV1Z2Uga8O2bm50ZSBkaWUgwrtzY2huZWxsc3RlIGltIFdlc3RlbsKrIHNlaW4uXG4iCisiIEdOVSBHcmVwIGJhc2llcnQgYXVmIGVpbmVtIHNjaGVsbGVuIMK7bGF6eS1zdGF0ZSBkZXRlcm1pbmlzdGljIG1hdGNoZXLCq1xuIgorIiAocnVuZCB6d2VpbWFsIHNvIHNjaG5lbGwgd2llIGRlciBzdGFuZGFyZG3DpMOfaWdlIFVuaXgtRWdyZXApIGh5YnJpZGlzaWVydCBcbiIKKyIgbWl0IGVpbmVyIEJveWVyLU1vb3JlLUdvc3Blci1TdWNoZSBmw7xyIGVpbmUgZmVzdGUgWmVpY2hlbmtldHRlLCBkaWVcbiIKKyIgdW5tw7ZnbGljaGVuIFRleHQgdm9uIGRlciBCZXRyYWNodHVuZyBkdXJjaCBkZW4gdm9sbGVuIMK7TWF0Y2hlcsKrIHZlcmhpbmRlcnRcbiIKKyIgb2huZSBub3R3ZW5kaWdlcndlaXNlIGplZGVzIFplaWNoZW4gYW56dXNjaGF1ZW4uIERhcyBFcmdlYm5pcyBpc3RcbiIKKyIgdHlwaXNjaGVyd2Vpc2UgdW0gZWluIG1laHJmYWNoZXMgU2NobmVsbGVyIGFscyBVbml4IEdyZXAgb2RlciBFZ3JlcC5cbiIKKyIgKFJlZ3Vsw6RyZSBBdXNkcsO8Y2tlLCBkaWUgUsO8Y2tyZWZlcmVuemllcnVuZ2VuIGVudGhhbHRlbiwgd2VyZGVuIGFsbGVyZGluZ3NcbiIKKyIgbGFuZ3NhbWVyIGxhdWZlbi4pXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6Mjc2Cittc2dpZCAiIgorIkI8ZGViPig1KSwgQjxkZWItdmVyc2lvbj4oNSksIEI8ZGVidGFncz4oMSksIEI8ZHBrZz4oMSksIEI8ZHBrZy1kZWI+KDEpLiIKK21zZ3N0ciAiIgorIkI8ZGViPig1KSwgQjxkZWItdmVyc2lvbj4oNSksIEI8ZGVidGFncz4oMSksIEI8ZHBrZz4oMSksIEI8ZHBrZy1kZWI+KDEpLiIKKworIy4gdHlwZTogVEgKKyM6IGRlYi1zcmMtY29udHJvbC41OjMKKyMsIG5vLXdyYXAKK21zZ2lkICJkZWItc3JjLWNvbnRyb2wiCittc2dzdHIgImRlYi1zcmMtY29udHJvbCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6NgorbXNnaWQgImRlYi1zcmMtY29udHJvbCAtIERlYmlhbiBzb3VyY2UgcGFja2FnZXMnIG1hc3RlciBjb250cm9sIGZpbGUgZm9ybWF0IgorbXNnc3RyICIiCisiZGViLXNyYy1jb250cm9sIC0gRGF0ZWlmb3JtYXQgZGVyIEhhdXB0c3RldWVyZGF0ZWkgdm9uIERlYmlhbi1RdWVsbHBha2V0ZW4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjI4Cittc2dpZCAiIgorIkVhY2ggRGViaWFuIHNvdXJjZSBwYWNrYWdlIGNvbnRhaW5zIHRoZSBtYXN0ZXIgXCJjb250cm9sXCIgZmlsZSwgd2hpY2ggIgorImNvbnRhaW5zIGF0IGxlYXN0IDIgcGFyYWdyYXBocywgc2VwYXJhdGVkIGJ5IGEgYmxhbmsgbGluZS4gVGhlIGZpcnN0ICIKKyJwYXJhZ3JhcGggbGlzdHMgYWxsIGluZm9ybWF0aW9uIGFib3V0IHRoZSBzb3VyY2UgcGFja2FnZSBpbiBnZW5lcmFsLCB3aGlsZSAiCisiZWFjaCBmb2xsb3dpbmcgcGFyYWdyYXBoIGRlc2NyaWJlcyBleGFjdGx5IG9uZSBiaW5hcnkgcGFja2FnZS4gRWFjaCAiCisicGFyYWdyYXBoIGNvbnNpc3RzIG9mIGF0IGxlYXN0IG9uZSBmaWVsZC4gQSBmaWVsZCBzdGFydHMgd2l0aCBhIGZpZWxkbmFtZSwgIgorInN1Y2ggYXMgQjxQYWNrYWdlPiBvciBCPFNlY3Rpb24+IChjYXNlIGluc2Vuc2l0aXZlKSwgZm9sbG93ZWQgYnkgYSBjb2xvbiwgIgorInRoZSBib2R5IG9mIHRoZSBmaWVsZCBhbmQgYSBuZXdsaW5lLiAgTXVsdGktbGluZSBmaWVsZHMgYXJlIGFsc28gYWxsb3dlZCwgIgorImJ1dCBlYWNoIHN1cHBsZW1lbnRhcnkgbGluZSwgd2l0aG91dCBhIGZpZWxkbmFtZSwgc2hvdWxkIHN0YXJ0IHdpdGggYXQgbGVhc3QgIgorIm9uZSBzcGFjZS4gVGhlIGNvbnRlbnQgb2YgdGhlIG11bHRpLWxpbmUgZmllbGRzIGlzIGdlbmVyYWxseSBqb2luZWQgdG8gYSAiCisic2luZ2xlIGxpbmUgYnkgdGhlIHRvb2xzIChleGNlcHQgaW4gdGhlIGNhc2Ugb2YgdGhlIEI8RGVzY3JpcHRpb24+IGZpZWxkLCAiCisic2VlIGJlbG93KS4gVG8gaW5zZXJ0IGVtcHR5IGxpbmVzIGludG8gYSBtdWx0aS1saW5lIGZpZWxkLCBpbnNlcnQgYSBkb3QgIgorImFmdGVyIHRoZSBzcGFjZS4gTGluZXMgc3RhcnRpbmcgd2l0aCBhIEI8JyMnPiBhcmUgdHJlYXRlZCBhcyBjb21tZW50cy4iCittc2dzdHIgIiIKKyJKZWRlcyBEZWJpYW4tUXVlbGxwYWtldCBlbmjDpGx0IGRpZSBIYXVwdHN0ZXVlcmRhdGVpIMK7Y29udHJvbMKrLCBkaWUgIgorIm1pbmRlc3RlbnMgendlaSBBYnPDpHR6ZSBlbnRow6RsdCwgZGllIGR1cmNoIGVpbmUgTGVlcnplaWxlIGdldHJlbm50IHdlcmRlbi4gIgorIkRlciBlcnN0ZSBBYnNhdHogZsO8aHJ0IGFsbGUgYWxsZ2VtZWluZW4gSW5mb3JtYXRpb25lbiDDvGJlciBkYXMgUXVlbGxwYWtldCAiCisiYXVmLCB3w6RocmVuZCBqZWRlciBmb2xnZW5kZSBBYnNhdHogZ2VuYXUgZWluIEJpbsOkcnBha2V0IGJlc2NocmVpYnQuIEplZGVyICIKKyJBYnNhdHogYmVzdGVodCBhdXMgbWluZGVzdGVucyBlaW5lbSBGZWxkLiBFaW4gRmVsZCBiZWdpbm50IG1pdCBlaW5lbSAiCisiRmVsZG5hbWVuLCB3aWUgQjxQYWNrYWdlPiBvZGVyIEI8U2VjdGlvbj4gKEdyb8OfLS9LbGVpbnNjaHJlaWJ1bmcgZWdhbCksICIKKyJnZWZvbGd0IHZvbiBlaW5lbSBEb3BwZWxwdW5rdCwgZGVtIEluaGFsdCBkZXMgRmVsZGVzIHVuZCBlaW5lbSAiCisiWmVpbGVudW1icnVjaC4gTWVocnplaWxpZ2UgRmVsZGVyIHNpbmQgYXVjaCBlcmxhdWJ0LCBhYmVyIGplZGUgZXJnw6RuemVuZGUgIgorIlplaWxlIG9obmUgRmVsZG5hbWVuIHNvbGx0ZSBtaXQgbWluZGVzdGVucyBlaW5lbSBMZWVyemVpY2hlbiBiZWdpbm5lbi4gRGVyICIKKyJJbmhhbHQgZGVzIG1laHJ6ZWlsaWdlbiBGZWxkZXMgd2lyZCBkdXJjaCBkaWUgV2Vya3pldWdlIGltIEFsbGdlbWVpbmVuIHp1ICIKKyJlaW5lciBaZWlsZSB6dXNhbW1lbmdlZsO8aHJ0IChkYXMgRmVsZCBCPERlc2NyaXB0aW9uPiBpc3QgZWluZSBBdXNuYWhtZSwgIgorInNpZWhlIHVudGVuKS4gVW0gTGVlcnplaWxlbiBpbiBlaW4gbWVocnplaWxpZ2VzIEZlbGQgZWluenVmw7xnZW4sIHZlcndlbmRlbiAiCisiU2llIGVpbmVuIFNhdHpwdW5rdCBuYWNoIGRlbSBMZWVyemVpY2hlbi4gWmVpbGVuLCBkaWUgbWl0IEI8wrsjwqs+IGJlZ2lubmVuLCAiCisid2VyZGVuIGFscyBLb21tZW50YXJlIGJldHJhY2h0ZXQuIgorCisjLiB0eXBlOiBTSAorIzogZGViLXNyYy1jb250cm9sLjU6MjkKKyMsIG5vLXdyYXAKK21zZ2lkICJTT1VSQ0UgRklFTERTIgorbXNnc3RyICJRVUVMTFBBS0VULUZFTERFUiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zcmMtY29udHJvbC41OjMwCisjLCBuby13cmFwCittc2dpZCAiQjxTb3VyY2U6PiBJPHNvdXJjZS1wYWNrYWdlLW5hbWU+IChyZXF1aXJlZCkiCittc2dzdHIgIkI8U291cmNlOj4gSTxRdWVsbHBha2V0bmFtZT4gKHZlcnBmbGljaHRlbmQpIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNTozNworbXNnaWQgIiIKKyJUaGUgdmFsdWUgb2YgdGhpcyBmaWVsZCBpcyB0aGUgbmFtZSBvZiB0aGUgc291cmNlIHBhY2thZ2UsIGFuZCBzaG91bGQgbWF0Y2ggIgorInRoZSBuYW1lIG9mIHRoZSBzb3VyY2UgcGFja2FnZSBpbiB0aGUgZGViaWFuL2NoYW5nZWxvZyBmaWxlLiBBIHBhY2thZ2UgbmFtZSAiCisibXVzdCBjb25zaXN0IG9ubHkgb2YgbG93ZXIgY2FzZSBsZXR0ZXJzIChhLXopLCBkaWdpdHMgKDAtOSksIHBsdXMgKCspIGFuZCAiCisibWludXMgKC0pIHNpZ25zLCBhbmQgcGVyaW9kcyAoLikuIFBhY2thZ2UgbmFtZXMgbXVzdCBiZSBhdCBsZWFzdCB0d28gIgorImNoYXJhY3RlcnMgbG9uZyBhbmQgbXVzdCBzdGFydCB3aXRoIGFuIGFscGhhbnVtZXJpYyBjaGFyYWN0ZXIuIgorbXNnc3RyICIiCisiRGVyIFdlcnQgZGllc2VzIEZlbGRlcyBpc3QgZGVyIE5hbWUgZGVzIFF1ZWxscGFrZXRzIHVuZCBzb2xsdGUgbWl0IGRlbSBOYW1lbiAiCisiZGVzIFF1ZWxscGFrZXRzIGluIGRlciBEYXRlaSBkZWJpYW4vY2hhbmdlbG9nIMO8YmVyZWluc3RpbW1lbi4gRWluIFBha2V0bmFtZSAiCisiZGFyZiBudXIgYXVzIEtsZWluYnVjaHN0YWJlbiAoYS16KSwgWmlmZmVybiAoMC05KSwgUGx1cy0gKCspIHVuZCAiCisiTWludXN6ZWljaGVuICgtKSB1bmQgU2F0enB1bmt0ZW4gKC4pIGJlc3RlaGVuLiBQYWtldG5hbWVuIG3DvHNzZW4gbWluZGVzdGVucyAiCisiendlaSBaZWljaGVuIGxhbmcgc2VpbiB1bmQgbWl0IGVpbmVtIGFscGhhbnVtZXJpc2NoZW4gWmVpY2hlbiBiZWdpbm5lbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3JjLWNvbnRyb2wuNTozOAorIywgbm8td3JhcAorbXNnaWQgIkI8TWFpbnRhaW5lcjo+IEk8ZnVsbG5hbWUtZW1haWw+IChyZXF1aXJlZCkiCittc2dzdHIgIkI8TWFpbnRhaW5lcjo+IEk8Vm9sbHN0w6RuZGlnZXItTmFtZS11bmQtRS1NYWlsPiAodmVycGZsaWNodGVuZCkiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjQzCittc2dpZCAiIgorIlNob3VsZCBiZSBpbiB0aGUgZm9ybWF0IFwiSm9lIEJsb2dncyBFPGx0PmpibG9nZ3NAZm9vLmNvbUU8Z3Q+XCIsIGFuZCAiCisicmVmZXJlbmNlcyB0aGUgcGVyc29uIHdobyBjdXJyZW50bHkgbWFpbnRhaW5zIHRoZSBwYWNrYWdlLCBhcyBvcHBvc2VkIHRvIHRoZSAiCisiYXV0aG9yIG9mIHRoZSBzb2Z0d2FyZSBvciB0aGUgb3JpZ2luYWwgcGFja2FnZXIuIgorbXNnc3RyICIiCisiU29sbHRlIGluIGRlbSBGb3JtYXQgwrtKb2UgQmxvZ2dzIEU8bHQ+amJsb2dnc0Bmb28uY29tRTxndD7CqyBzZWluIHVuZCAiCisidmVyd2Vpc3QgYXVmIGRpZSBQZXJzb24sIGRpZSBkZXJ6ZWl0IGRhcyBQYWtldCBiZXRyZXV0LCBpbSBHZWdlbnNhdHogenVtICIKKyJBdXRvciBkZXIgU29mdHdhcmUsIGRpZSBwYWtldGllcnQgd3VyZGUsIG9kZXIgZGVtIHVyc3Byw7xuZ2xpY2hlbiBQYWtldGllcmVyLiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zcmMtY29udHJvbC41OjQ0CisjLCBuby13cmFwCittc2dpZCAiQjxVcGxvYWRlcnM6Pkk8IGZ1bGxuYW1lLWVtYWlsPiIKK21zZ3N0ciAiQjxVcGxvYWRlcnM6Pkk8IFZvbGxzdMOkbmRpZ2VyLU5hbWUtdW5kLUUtTWFpbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjQ5Cittc2dpZCAiIgorIkxpc3RzIGFsbCB0aGUgbmFtZXMgYW5kIGVtYWlsIGFkZHJlc3NlcyBvZiBjby1tYWludGFpbmVycyBvZiB0aGUgcGFja2FnZSwgaW4gIgorInRoZSBzYW1lIGZvcm1hdCBhcyB0aGUgTWFpbnRhaW5lciBmaWVsZC4gTXVsdGlwbGUgY28tbWFpbnRhaW5lcnMgc2hvdWxkIGJlICIKKyJzZXBhcmF0ZWQgYnkgYSBjb21tYS4iCittc2dzdHIgIiIKKyJMaXN0ZXQgZGllIE5hbWVuIHVuZCBFLU1haWwtQWRyZXNzZW4gZGVyIEtvLUJldHJldWVyIGRlcyBQYWtldHMgYXVmLCBpbSAiCisiZ2xlaWNoZW4gRm9ybWF0IHdpZSBkYXMgRmVsZCDCu01haW50YWluZXLCqy4gTWVocmVyZSBLby1CZXRyZXVlciBzb2xsdGVuIGR1cmNoICIKKyJLb21tYXRhIGdldHJlbm50IHdlcmRlbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3JjLWNvbnRyb2wuNTo1MAorIywgbm8td3JhcAorbXNnaWQgIkI8U3RhbmRhcmRzLVZlcnNpb246Pkk8IHZlcnNpb24tc3RyaW5nPiIKK21zZ3N0ciAiQjxTdGFuZGFyZHMtVmVyc2lvbjo+IEk8IFZlcnNpb25zemVpY2hlbmtldHRlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6NTYKK21zZ2lkICIiCisiVGhpcyBkb2N1bWVudHMgdGhlIG1vc3QgcmVjZW50IHZlcnNpb24gb2YgdGhlIHN0YW5kYXJkcyAod2hpY2ggY29uc2lzdHMgb2YgIgorInRoZSBEZWJpYW4gUG9saWN5IE1hbnVhbCBhbmQgcmVmZXJlbmNlZCB0ZXh0cyBmcm9tIHRoZSBCPGRlYmlhbi1wb2xpY3k+ICIKKyJwYWNrYWdlKSB0aGlzIHBhY2thZ2UgY29tcGxpZXMgdG8uIgorbXNnc3RyICIiCisiRGllcyBkb2t1bWVudGllcnQgZGllIG5ldXN0ZSBWZXJzaW9uIGRlciBTdGFuZGFyZHMgKGRpZSBhdXMgZGVtIERlYmlhbi0iCisiUmljaHRsaW5pZW5oYW5kYnVjaCB1bmQgZGVuIGF1cyBkZW0gUGFrZXQgQjxkZWJpYW4tcG9saWN5PiByZWZlcmVuemllcnRlbiAiCisiVGV4dGVuIGJlc3RlaHQpLCBhbiBkZW4gc2ljaCBkYXMgUGFrZXQgaMOkbHQuIgorCisjLiB0eXBlOiBUUAorIzogZGViLXNyYy1jb250cm9sLjU6NTcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPERNLVVwbG9hZC1BbGxvd2VkOj4gQjx5ZXM+fEI8bm8+IgorbXNnc3RyICJCPERNLVVwbG9hZC1BbGxvd2VkOj4gQjx5ZXM+fEI8bm8+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNTo2MQorbXNnaWQgIiIKKyJUaGlzIGZpZWxkIGluZGljYXRlcyB3aGV0aGVyIHRoZSBwYWNrYWdlIGNhbiBiZSB1cGxvYWRlZCBieSBEZWJpYW4gIgorIk1haW50YWluZXJzIGFwcGVhcmluZyBpbiB0aGUgTWFpbnRhaW5lciBvciBVcGxvYWRlcnMgZmllbGQuIFRoZSBkZWZhdWx0ICIKKyJ2YWx1ZSBpcyBcIm5vXCIuIgorbXNnc3RyICIiCisiRGllc2VzIEZlbGQgZ2lidCBhbiwgb2IgZGFzIFBha2V0IHZvbiBlaW5lbSBEZWJpYW4tQmV0cmV1ZXIsIGRlciBpbSBGZWxkICIKKyLCu01haW50YWluZXLCqyBvZGVyIMK7VXBsb2FkZXLCqyBhdWZ0YXVjaHQsIGhvY2hnZWxhZGVuIHdlcmRlbiBrYW5uLiBEZXIgIgorIlN0YW5kYXJkd2VydCBpc3Qgwrtub8KrIChuZWluKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjY1Cittc2dpZCAiVGhlIHVwc3RyZWFtIHByb2plY3QgaG9tZSBwYWdlIFVSTC4iCittc2dzdHIgIkRpZSBVUkwgZGVzIE9yaWdpbmFsLSAoVXBzdHJlYW0tKVByb2pla3RzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6NzEKK21zZ2lkICIiCisiVGhlIEk8dXJsPiBvZiB0aGUgYnVnIHRyYWNraW5nIHN5c3RlbSBmb3IgdGhpcyBwYWNrYWdlLiBUaGUgY3VycmVudCB1c2VkICIKKyJmb3JtYXQgaXMgSTxidHMtdHlwZT5CPDovLz5JPGJ0cy1hZGRyZXNzPiwgbGlrZSBCPGRlYmJ1Z3M6Ly9idWdzLmRlYmlhbi4iCisib3JnPi4gVGhpcyBmaWVsZCBpcyB1c3VhbGx5IG5vdCBuZWVkZWQuIgorbXNnc3RyICIiCisiRGllIEk8VVJMPiBkZXIgRmVobGVyZGF0ZW5iYW5rIGbDvHIgZGllc2VzIFBha2V0LiBEYXMgZGVyemVpdCB2ZXJ3ZW5kZXRlICIKKyJGb3JtYXQgaXN0IEk8QlRTLUFydD5CPDovLz5JPEJUUy1BZHJlc3NlPiB3aWUgaW4gQjxkZWJidWdzOi8vYnVncy5kZWJpYW4uIgorIm9yZz4uIERpZXNlcyBGZWxkIHdpcmQgbm9ybWFsZXJ3ZWlzZSBuaWNodCBiZW7DtnRpZ3QuIgorCisjLiB0eXBlOiBUUAorIzogZGViLXNyYy1jb250cm9sLjU6NzIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPFZjcy0qOj5JPCB1cmw+IgorbXNnc3RyICJCPFZjcy0qOj4gSTwgVVJMPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6NzkKK21zZ2lkICIiCisiVGhlIEk8dXJsPiBvZiB0aGUgVmVyc2lvbiBDb250cm9sIFN5c3RlbSByZXBvc2l0b3J5IHVzZWQgdG8gbWFpbnRhaW4gdGhpcyAiCisicGFja2FnZS4gQ3VycmVudGx5IHN1cHBvcnRlZCBhcmUgQjxBcmNoPiwgQjxCenI+IChCYXphYXIpLCBCPEN2cz4sIEI8RGFyY3M+LCAiCisiQjxHaXQ+LCBCPEhnPiAoTWVyY3VyaWFsKSwgQjxNdG4+IChNb25vdG9uZSkgYW5kIEI8U3ZuPiAoU3VidmVyc2lvbikuICIKKyJVc3VhbGx5IHRoaXMgZmllbGQgcG9pbnRzIHRvIHRoZSBsYXRlc3QgdmVyc2lvbiBvZiB0aGUgcGFja2FnZSwgc3VjaCBhcyB0aGUgIgorIm1haW4gYnJhbmNoIG9yIHRoZSB0cnVuay4iCittc2dzdHIgIiIKKyJEaWUgSTxVUkw+IGRlcyBWZXJzaW9uc2tvbnRyb2xsc3lzdGVtLURlcG90cywgZGFzIGbDvHIgZGllIEJldHJldXVuZyBkZXMgIgorIlBha2V0cyB2ZXJ3YW5kdCB3aXJkLiBEZXJ6ZWl0IHdlcmRlbiBCPEFyY2g+LCBCPEJ6cj4gKEJhemFhciksIEI8Q3ZzPiwgIgorIkI8RGFyY3M+LCBCPEdpdD4sIEI8SGc+IChNZXJjdXJpYWwpLCBCPE10bj4gKE1vbm90b25lKSB1bmQgQjxTdm4+ICIKKyIoU3VidmVyc2lvbikgdW50ZXJzdMO8dHp0LiBOb3JtYWxlcndlaXNlIHplaWd0IGRpZXNlcyBGZWxkIGF1ZiBkaWUgbmV1c3RlICIKKyJWZXJzaW9uIGRlcyBQYWtldHMsIHdpZSBkZW4gSGF1cHR6d2VpZyBvZGVyIGRlbiBUcnVuay4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3JjLWNvbnRyb2wuNTo4MAorIywgbm8td3JhcAorbXNnaWQgIkI8VmNzLUJyb3dzZXI6Pkk8IHVybD4iCittc2dzdHIgIkI8VmNzLUJyb3dzZXI6PiBJPCBVUkw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNTo4NAorbXNnaWQgIiIKKyJUaGUgSTx1cmw+IG9mIGEgd2ViaW50ZXJmYWNlIHRvIGJyb3dzZSB0aGUgVmVyc2lvbiBDb250cm9sIFN5c3RlbSByZXBvc2l0b3J5LiIKK21zZ3N0ciAiIgorIkRpZSBJPFVSTD4gZGVyIFdlYnNjaG5pdHRzdGVsbGUsIHVtIGRhcyBWZXJzaW9uc2tvbnRyb2xsc3lzdGVtLURlcG90ICIKKyJhbnp1c2NoYXVlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41Ojg5Cittc2dpZCAiIgorIlRoZSBuYW1lIG9mIHRoZSBkaXN0cmlidXRpb24gdGhpcyBwYWNrYWdlIGlzIG9yaWdpbmF0aW5nIGZyb20uIFRoaXMgZmllbGQgaXMgIgorInVzdWFsbHkgbm90IG5lZWRlZC4iCittc2dzdHIgIiIKKyJEZXIgTmFtZSBkZXIgRGlzdHJpYnV0aW9uLCBhdXMgZGVyIGRpZXNlcyBQYWtldCB1cnNwcsO8bmdsaWNoIHN0YW1tdC4gRGllc2VzICIKKyJGZWxkIHdpcmQgbm9ybWFsZXJ3ZWlzZSBuaWNodCBiZW7DtnRpZ3QuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNTo5NQorbXNnaWQgIiIKKyJUaGlzIGlzIGEgZ2VuZXJhbCBmaWVsZCB0aGF0IGdpdmVzIHRoZSBwYWNrYWdlIGEgY2F0ZWdvcnkgYmFzZWQgb24gdGhlICIKKyJzb2Z0d2FyZSB0aGF0IGl0IGluc3RhbGxzLiBTb21lIGNvbW1vbiBzZWN0aW9ucyBhcmUgXCJ1dGlsc1wiLCBcIm5ldFwiLCAiCisiXCJtYWlsXCIsIFwidGV4dFwiLCBcIngxMVwiLCBldGMuIgorbXNnc3RyICIiCisiRGllcyBpc3QgZWluIGFsbGdlbWVpbmVzIEZlbGQsIGRhcyBkZW0gUGFrZXQgZWluZSBLYXRlZ29yaWUgZ2lidCwgYmFzaWVyZW5kICIKKyJhdWYgZGVyIFNvZnR3YXJlLCBkaWUgZXMgaW5zdGFsbGllcnQuIEVpbmlnZSDDvGJsaWNoZSBCZXJlaWNoZSBzaW5kIMK7dXRpbHPCqywgIgorIsK7bmV0wqssIMK7bWFpbMKrLCDCu3RleHTCqywgwrt4MTHCqyB1c3cuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToxMDAKK21zZ2lkICIiCisiU2V0cyB0aGUgaW1wb3J0YW5jZSBvZiB0aGlzIHBhY2thZ2UgaW4gcmVsYXRpb24gdG8gdGhlIHN5c3RlbSBhcyBhIHdob2xlLiAgIgorIkNvbW1vbiBwcmlvcml0aWVzIGFyZSBcInJlcXVpcmVkXCIsIFwic3RhbmRhcmRcIiwgXCJvcHRpb25hbFwiLCBcImV4dHJhXCIsICIKKyJldGMuIgorbXNnc3RyICIiCisiU2V0enQgZGllIEJlZGV1dHVuZyBkaWVzZXMgUGFrZXRzIGluIEJlenVnIHp1IGRlbSBHZXNhbXRzeXN0ZW0uIMOcYmxpY2hlICIKKyJQcmlvcml0w6R0ZW4gc2luZCDCu3JlcXVpcmVkwqssIMK7c3RhbmRhcmTCqywgwrtvcHRpb25hbMKrLCDCu2V4dHJhwqsgdXN3LiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zcmMtY29udHJvbC41OjExMAorIywgbm8td3JhcAorbXNnaWQgIkI8QnVpbGQtRGVwZW5kczo+STwgcGFja2FnZS1saXN0PiIKK21zZ3N0ciAiQjxCdWlsZC1EZXBlbmRzOj4gSTwgUGFrZXRsaXN0ZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjExNAorbXNnaWQgIiIKKyJBIGxpc3Qgb2YgcGFja2FnZXMgdGhhdCBuZWVkIHRvIGJlIGluc3RhbGxlZCBhbmQgY29uZmlndXJlZCB0byBiZSBhYmxlIHRvICIKKyJidWlsZCB0aGUgc291cmNlIHBhY2thZ2UuIgorbXNnc3RyICIiCisiRWluZSBMaXN0ZSBkZXIgUGFrZXRlLCBkaWUgaW5zdGFsbGllcnQgdW5kIGtvbmZpZ3VyaWVydCBzZWluIG3DvHNzZW4sIHVtIGRhcyAiCisiUXVlbGxwYWtldCB6dSBiYXVlbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3JjLWNvbnRyb2wuNToxMTUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPEJ1aWxkLURlcGVuZHMtSW5kZXA6Pkk8IHBhY2thZ2UtbGlzdD4iCittc2dzdHIgIkI8QnVpbGQtRGVwZW5kcy1JbmRlcDo+IEk8IFBha2V0bGlzdGU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToxMjAKK21zZ2lkICIiCisiU2FtZSBhcyBCPEJ1aWxkLURlcGVuZHM+LCBidXQgdGhleSBhcmUgb25seSBuZWVkZWQgd2hlbiBidWlsZGluZyB0aGUgIgorImFyY2hpdGVjdHVyZSBpbmRlcGVuZGVudCBwYWNrYWdlcy4gVGhlIEI8QnVpbGQtRGVwZW5kcz4gYXJlIGFsc28gaW5zdGFsbGVkICIKKyJpbiB0aGlzIGNhc2UuIgorbXNnc3RyICIiCisiSWRlbnRpc2NoIHp1IEI8QnVpbGQtRGVwZW5kcz4sIHdpcmQgYWJlciBudXIgenVtIEJhdSBkZXIgIgorImFyY2hpdGVrdHVydW5hYmjDpG5naWdlbiBQYWtldGUgYmVuw7Z0aWd0LiBJbiBkaWVzZW0gRmFsbCBzaW5kIGRpZSBCPEJ1aWxkLSIKKyJEZXBlbmRzPiBhdWNoIGluc3RhbGxpZXJ0LiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zcmMtY29udHJvbC41OjEyMQorIywgbm8td3JhcAorbXNnaWQgIkI8QnVpbGQtQ29uZmxpY3RzOj5JPCBwYWNrYWdlLWxpc3Q+IgorbXNnc3RyICJCPEJ1aWxkLUNvbmZsaWN0czo+IEk8IFBha2V0bGlzdGU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToxMjUKK21zZ2lkICIiCisiQSBsaXN0IG9mIHBhY2thZ2VzIHRoYXQgc2hvdWxkIG5vdCBiZSBpbnN0YWxsZWQgd2hlbiB0aGUgcGFja2FnZSBpcyBidWlsZCwgIgorImZvciBleGFtcGxlIGJlY2F1c2UgdGhleSBpbnRlcmZlcmUgd2l0aCB0aGUgdXNlZCBidWlsZCBzeXN0ZW0uIgorbXNnc3RyICIiCisiRWluZSBMaXN0ZSB2b24gUGFrZXRlbiwgZGllIGJlaW0gQmF1IGRlcyBQYWtldHMgbmljaHQgaW5zdGFsbGllcnQgc2VpbiAiCisic29sbHRlbiwgYmVpc3BpZWxzd2Vpc2UgZGEgc2llIG1pdCBkZW0gdmVyd2FuZHRlbiBCYXVzeXN0ZW0gaW4gS29uZmxpa3QgIgorImdlcmF0ZW4uIgorCisjLiB0eXBlOiBUUAorIzogZGViLXNyYy1jb250cm9sLjU6MTI2CisjLCBuby13cmFwCittc2dpZCAiQjxCdWlsZC1Db25mbGljdHMtSW5kZXA6Pkk8IHBhY2thZ2UtbGlzdD4iCittc2dzdHIgIkI8QnVpbGQtQ29uZmxpY3RzLUluZGVwOj4gSTwgUGFrZXRsaXN0ZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjEzMAorbXNnaWQgIiIKKyJTYW1lIGFzIEI8QnVpbGQtQ29uZmxpY3RzPiwgYnV0IG9ubHkgd2hlbiBidWlsZGluZyB0aGUgYXJjaGl0ZWN0dXJlICIKKyJpbmRlcGVuZGVudCBwYWNrYWdlcy4iCittc2dzdHIgIiIKKyJJZGVudGlzY2ggenUgQjxCdWlsZC1Db25mbGljdHM+LCB3aXJkIGFiZXIgbnVyIHp1bSBCYXUgZGVyICIKKyJhcmNoaXRla3R1cnVuYWJow6RuZ2lnZW4gUGFrZXRlIGJlbsO2dGlndC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjE0MQorbXNnaWQgIiIKKyJUaGUgc3ludGF4IG9mIHRoZSBCPEJ1aWxkLURlcGVuZHM+IGFuZCBCPEJ1aWxkLURlcGVuZHMtSW5kZXA+IGZpZWxkcyBpcyBhICIKKyJsaXN0IG9mIGdyb3VwcyBvZiBhbHRlcm5hdGl2ZSBwYWNrYWdlcy4gRWFjaCBncm91cCBpcyBhIGxpc3Qgb2YgcGFja2FnZXMgIgorInNlcGFyYXRlZCBieSB2ZXJ0aWNhbCBiYXIgKG9yIFwicGlwZVwiKSBzeW1ib2xzLCBcInxcIi4gVGhlIGdyb3VwcyBhcmUgIgorInNlcGFyYXRlZCBieSBjb21tYXMuIENvbW1hcyBhcmUgdG8gYmUgcmVhZCBhcyBcIkFORFwiLCBhbmQgcGlwZXMgYXMgXCJPUlwiLCAiCisid2l0aCBwaXBlcyBiaW5kaW5nIG1vcmUgdGlnaHRseS4gRWFjaCBwYWNrYWdlIG5hbWUgaXMgb3B0aW9uYWxseSBmb2xsb3dlZCBieSAiCisiYSB2ZXJzaW9uIG51bWJlciBzcGVjaWZpY2F0aW9uIGluIHBhcmVudGhlc2VzIGFuZCBhbiBhcmNoaXRlY3R1cmUgIgorInNwZWNpZmljYXRpb24gaW4gc3F1YXJlIGJyYWNrZXRzLiIKK21zZ3N0ciAiIgorIkRpZSBTeW50YXggZGVyIEZlbGRlciBCPEJ1aWxkLURlcGVuZHM+IHVuZCBCPEJ1aWxkLURlcGVuZHMtSW5kZXA+IGlzdCBlaW5lICIKKyJMaXN0ZSB2b24gR3J1cHBlbiB2b24gYWx0ZXJuYXRpdmVuIFBha2V0ZW4uIEplZGUgR3J1cHBlIGlzdCBlaW5lIExpc3RlIHZvbiAiCisiZHVyY2ggdmVydGlrYWxlIFN0cmljaGUgKG9kZXIgwrtQaXBlwqstU3ltYm9sZSkgwrt8wqsgZ2V0cmVubnRlIFBha2V0ZS4gRGllICIKKyJHcnVwcGVuIHdlcmRlbiBkdXJjaCBLb21tYXRhIGdldHJlbm50LiBLb21tYXRhIG3DvHNzZW4gYWxzIMK7VU5EwqssIHZlcnRpa2FsZSAiCisiU3RyaWNoZSBhbHMgwrtPREVSwqsgZ2VsZXNlbiB3ZXJkZW4sIHdvYmVpIGRpZSB2ZXJ0aWthbGVuIFN0cmljaGUgc3TDpHJrZXIgIgorImJpbmRlbi4gSmVkZXIgUGFrZXRuYW1lIHdpcmQgb3B0aW9uYWwgZ2Vmb2xndCB2b24gZWluZXIgVmVyc2lvbnNudW1tZXItIgorIlNwZXppZmlrYXRpb24gaW4gS2xhbW1lcm4gdW5kIGVpbmVyIEFyY2hpdGVrdHVyc3BlemlmaWthdGlvbiBpbiBlY2tpZ2VuICIKKyJLbGFtbWVybi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjE1MAorbXNnaWQgIiIKKyJUaGUgc3ludGF4IG9mIHRoZSBCPEJ1aWxkLUNvbmZsaWN0cz4gYW5kIEI8QnVpbGQtQ29uZmxpY3RzLUluZGVwPiBmaWVsZHMgaXMgIgorImEgbGlzdCBvZiBjb21tYS1zZXBhcmF0ZWQgcGFja2FnZSBuYW1lcywgd2hlcmUgdGhlIGNvbW1hIGlzIHJlYWQgYXMgYW4gXCJBTkQiCisiXCIuIFNwZWNpZnlpbmcgYWx0ZXJuYXRpdmUgcGFja2FnZXMgdXNpbmcgYSBcInBpcGVcIiBpcyBub3Qgc3VwcG9ydGVkLiAgRWFjaCAiCisicGFja2FnZSBuYW1lIGlzIG9wdGlvbmFsbHkgZm9sbG93ZWQgYnkgYSB2ZXJzaW9uIG51bWJlciBzcGVjaWZpY2F0aW9uIGluICIKKyJwYXJlbnRoZXNlcyBhbmQgYW4gYXJjaGl0ZWN0dXJlIHNwZWNpZmljYXRpb24gaW4gc3F1YXJlIGJyYWNrZXRzLiIKK21zZ3N0ciAiIgorIlN5bnRheHRpc2NoIHdlcmRlbiBkaWUgRmVsZGVyIEI8QnVpbGQtQ29uZmxpY3RzPiB1bmQgQjxCdWlsZC1Db25mbGljdHMtIgorIkluZGVwPiBkdXJjaCBlaW5lIEtvbW1hLXNlcGFyaWVydGUgTGlzdGUgdm9uIFBha2V0bmFtZW4gZGFyZ2VzdGVsbHQsIHdvYmVpICIKKyJkYXMgS29tbWEgYWxzIMK7VU5EwqsgdmVyc3RhbmRlbiB3aXJkLiBEaWUgQW5nYWJlIGFsdGVybmF0aXZlciBQYWtldGUgbWl0IGRlbSAiCisiwrtQaXBlwqstU3ltYm9sIHdpcmQgbmljaHQgdW50ZXJzdMO8dHp0LiBKZWRlbSBQYWtldG5hbWVuIGZvbGd0IG9wdGlvbmFsIGVpbmUgIgorIlZlcnNpb25udW1tZXJhbmdhYmUgaW4gS2xhbW1lcm4gdW5kIGVpbmUgQXJjaGl0ZWt0dXJzcGV6aWZpa2F0aW9uIGluIGVja2lnZW4gIgorIktsYW1tZXJuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MTU2Cittc2dpZCAiIgorIkEgdmVyc2lvbiBudW1iZXIgbWF5IHN0YXJ0IHdpdGggYSBcIkU8Z3Q+RTxndD5cIiwgaW4gd2hpY2ggY2FzZSBhbnkgbGF0ZXIgIgorInZlcnNpb24gd2lsbCBtYXRjaCwgYW5kIG1heSBzcGVjaWZ5IG9yIG9taXQgdGhlIERlYmlhbiBwYWNrYWdpbmcgcmV2aXNpb24gIgorIihzZXBhcmF0ZWQgYnkgYSBoeXBoZW4pLiBBY2NlcHRlZCB2ZXJzaW9uIHJlbGF0aW9uc2hpcHMgYXJlIFwiRTxndD5FPGd0PlwiICIKKyJmb3IgZ3JlYXRlciB0aGFuLCBcIkU8bHQ+RTxsdD5cIiBmb3IgbGVzcyB0aGFuLCBcIkU8Z3Q+PVwiIGZvciBncmVhdGVyIHRoYW4gIgorIm9yIGVxdWFsIHRvLCBcIkU8bHQ+PVwiIGZvciBsZXNzIHRoYW4gb3IgZXF1YWwgdG8sIGFuZCBcIj1cIiBmb3IgZXF1YWwgdG8uIgorbXNnc3RyICIiCisiRWluZSBWZXJzaW9uc251bW1lciBrYW5uIG1pdCDCu0U8Z3Q+RTxndD7CqyBiZWdpbm5lbiwgaW4gZGllc2VtIEZhbGxlIHBhc3NlbiAiCisiYWxsZSBuZXVlcmVuIFZlcnNpb25lbiwgdW5kIGthbm4gZGllIERlYmlhbi1QYWtldHJldmlzaW9uIChnZXRyZW5udCBkdXJjaCAiCisiZWluZW4gQmluZGVzdHJpY2gpIGVudGhhbHRlbiBvZGVyIGF1Y2ggbmljaHQuIEFremVwdGllcnRlICIKKyJWZXJzaW9uc2JlemllaHVuZ2VuIHNpbmQgwrtFPGd0PkU8Z3Q+wqsgZsO8ciBncsO2w59lciBhbHMsIMK7RTxsdD5FPGx0PsKrIGbDvHIgIgorImtsZWluZXIgYWxzLCDCu0U8Z3Q+PcKrIGbDvHIgZ3LDtsOfZXIgYWxzIG9kZXIgaWRlbnRpc2NoIHp1LCDCu0U8bHQ+PcKrIGbDvHIga2xlaW5lciAiCisiYWxzIG9kZXIgaWRlbnRpc2NoIHp1IHVuZCDCuz3CqyBmw7xyIGlkZW50aXNjaCB6dS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjE2MAorbXNnaWQgIiIKKyJBIGFyY2hpdGVjdHVyZSBzcGVjaWZpY2F0aW9uIGNvbnNpc3RzIG9mIG9uZSBvciBtb3JlIGFyY2hpdGVjdHVyZSBuYW1lcywgIgorInNlcGFyYXRlZCBieSB3aGl0ZXNwYWNlLiBFeGNsYW1hdGlvbiBtYXJrcyBtYXkgYmUgcHJlcGVuZGVkIHRvIGVhY2ggb2YgdGhlICIKKyJuYW1lcywgbWVhbmluZyBcIk5PVFwiLiIKK21zZ3N0ciAiIgorIkVpbmUgQXJjaGl0ZWt0dXJzcGV6aWZpa2F0aW9uIGJlc3RlaHQgYXVzIGVpbmVyIG9kZXIgbWVocmVyZW4gZHVyY2ggIgorIkxlZXJ6ZWljaGVuIGdldHJlbm50ZW4gQXJjaGl0ZWt0dXJuYW1lbi4gSmVkZW0gTmFtZW4gZGFyZiBlaW4gQXVzcnVmZXplaWNoZW4gIgorInZvcmFuZ2VzdGVsbHQgd2VyZGVuLCBkYXMgwrtOSUNIVMKrIGJlZGV1dGV0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MTY1Cittc2dpZCAiIgorIk5vdGUgdGhhdCBkZXBlbmRlbmNpZXMgb24gcGFja2FnZXMgaW4gdGhlIEI8YnVpbGQtZXNzZW50aWFsPiBzZXQgY2FuIGJlICIKKyJvbWl0dGVkIGFuZCB0aGF0IGRlY2xhcmluZyBidWlsZCBjb25mbGljdHMgYWdhaW5zdCB0aGVtIGlzIGltcG9zc2libGUuIEEgIgorImxpc3Qgb2YgdGhlc2UgcGFja2FnZXMgaXMgaW4gdGhlIGJ1aWxkLWVzc2VudGlhbCBwYWNrYWdlLiIKK21zZ3N0ciAiIgorIkJlYWNodGVuIFNpZSwgZGFzcyBkaWUgQWJow6RuZ2lna2VpdGVuIHZvbiBQYWtldGVuIGF1cyBkZXIgTWVuZ2UgZGVyIEI8YnVpbGQtIgorImVzc2VudGlhbD4gZW50ZmFsbGVuIGthbm4gdW5kIGRpZSBBbmdhYmUgdm9uIEJhdWtvbmZsaWt0ZW4gZ2VnZW4gc2llIG5pY2h0ICIKKyJtw7ZnbGljaCBpc3QuIEVpbmUgTGlzdGUgZGllc2VyIFBha2V0ZSBiZWZpbmRldCBzaWNoIGltIFBha2V0IGJ1aWxkLWVzc2VudGlhbC4iCisKKyMuIHR5cGU6IFNICisjOiBkZWItc3JjLWNvbnRyb2wuNToxNjcKKyMsIG5vLXdyYXAKK21zZ2lkICJCSU5BUlkgRklFTERTIgorbXNnc3RyICJCSU7DhFJQQUtFVC1GRUxERVIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjE3NgorbXNnaWQgIiIKKyJOb3RlIHRoYXQgdGhlIEI8UHJpb3JpdHk+LCBCPFNlY3Rpb24+IGFuZCBCPEhvbWVwYWdlPiBmaWVsZHMgY2FuIGFsc28gYmUgaW4gIgorImEgYmluYXJ5IHBhcmFncmFwaCB0byBvdmVycmlkZSB0aGUgZ2xvYmFsIHZhbHVlIGZyb20gdGhlIHNvdXJjZSBwYWNrYWdlLiIKK21zZ3N0ciAiIgorIkJlYWNodGVuIFNpZSwgZGFzcyBkaWUgRmVsZGVyIEI8UHJpb3JpdHk+LCBCPFNlY3Rpb24+IHVuZCBCPEhvbWVwYWdlPiBzaWNoICIKKyJhdWNoIGltIEJpbsOkcnByb2dyYW1tYWJzYXR6IGJlZmluZGVuIGvDtm5uZW4sIHVtIGRpZSBnbG9iYWxlbiBXZXJ0ZSBkZXMgIgorIlF1ZWxscGFrZXRzIHp1IMO8YmVyc2NocmVpYmVuLiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zcmMtY29udHJvbC41OjE3NworIywgbm8td3JhcAorbXNnaWQgIkI8UGFja2FnZTo+IEk8YmluYXJ5LXBhY2thZ2UtbmFtZT4gKHJlcXVpcmVkKSIKK21zZ3N0ciAiQjxQYWNrYWdlOj4gSTxCaW7DpHJwYWtldG5hbWU+ICh2ZXJwZmxpY2h0ZW5kKSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MTgxCittc2dpZCAiIgorIlRoaXMgZmllbGQgaXMgdXNlZCB0byBuYW1lIHRoZSBiaW5hcnkgcGFja2FnZSBuYW1lLiBUaGUgc2FtZSByZXN0cmljdGlvbnMgYXMgIgorInRvIGEgc291cmNlIHBhY2thZ2UgbmFtZSBhcHBseS4iCittc2dzdHIgIiIKKyJEaWVzZXMgRmVsZCB3aXJkIHp1ciBBbmdhYmUgZGVzIEJpbsOkcnBha2V0bmFtZW5zIHZlcndhbmR0LiBFcyBnZWx0ZW4gZGllICIKKyJnbGVpY2hlbiBFaW5zY2hyw6Rua3VuZ2VuIHdpZSBiZWltIFF1ZWxscGFrZXRuYW1lbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3JjLWNvbnRyb2wuNToxODIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPEFyY2hpdGVjdHVyZTo+IEk8YXJjaD58QjxhbGw+fEI8YW55PiAocmVxdWlyZWQpIgorbXNnc3RyICJCPEFyY2hpdGVjdHVyZTo+IEk8YXJjaD58QjxhbGw+fEI8YW55PiAodmVycGZsaWNodGVuZCkiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjE5NQorbXNnaWQgIiIKKyJUaGUgYXJjaGl0ZWN0dXJlIHNwZWNpZmllcyBvbiB3aGljaCB0eXBlIG9mIGhhcmR3YXJlIHRoaXMgcGFja2FnZSBydW5zLiBGb3IgIgorInBhY2thZ2VzIHRoYXQgcnVuIG9uIGFsbCBhcmNoaXRlY3R1cmVzLCB1c2UgdGhlIEI8YW55PiB2YWx1ZS4gRm9yIHBhY2thZ2VzICIKKyJ0aGF0IGFyZSBhcmNoaXRlY3R1cmUgaW5kZXBlbmRlbnQsIHN1Y2ggYXMgc2hlbGwgYW5kIFBlcmwgc2NyaXB0cyBvciAiCisiZG9jdW1lbnRhdGlvbiwgdXNlIHRoZSBCPGFsbD4gdmFsdWUuIFRvIHJlc3RyaWN0IHRoZSBwYWNrYWdlcyB0byBhIGNlcnRhaW4gIgorInNldCBvZiBhcmNoaXRlY3R1cmVzLCBzcGVjaWZ5IHRoZSBhcmNoaXRlY3R1cmUgbmFtZXMsIHNlcGFyYXRlZCBieSBhIHNwYWNlLiAiCisiSXQncyBhbHNvIHBvc3NpYmxlIHRvIHB1dCBhcmNoaXRlY3R1cmUgd2lsZGNhcmRzIGluIHRoYXQgbGlzdCAoc2VlIEI8ZHBrZy0iCisiYXJjaGl0ZWN0dXJlPigxKSAgZm9yIG1vcmUgaW5mb3JtYXRpb24gYWJvdXQgdGhlbSkuIgorbXNnc3RyICIiCisiRGllIEFyY2hpdGVrdHVyIGdpYnQgYW4sIGF1ZiB3ZWxjaGVyIEFydCB2b24gSGFyZHdhcmUgZGllc2VzIFBha2V0IGzDpHVmdC4gIgorIkJlaSBQYWtldGVuLCBkaWUgYXVmIGFsbGVuIEFyY2hpdGVrdHVyZW4gbGF1ZmVuLCB2ZXJ3ZW5kZW4gU2llIGRlbiBXZXJ0ICIKKyJCPGFueT4uIEbDvHIgUGFrZXRlLCBkaWUgYXJjaGl0ZWt0dXJ1bmFiaMOkbmdpZyBzaW5kLCB3aWUgU2hlbGwtIHVuZCBQZXJsLSIKKyJTa3JpcHRlIG9kZXIgRG9rdW1lbnRhdGlvbiwgdmVyd2VuZGVuIFNpZSBkZW4gV2VydCBCPGFsbD4uIFVtIGRhcyBQYWtldCBmw7xyICIKKyJlaW5lbiBiZXN0aW1tdGVuIFNhdHogdm9uIEFyY2hpdGVrdHVyZW4genUgYmVncmVuemVuLCBnZWJlbiBTaWUgZGllIGR1cmNoICIKKyJMZWVyemVpY2hlbiBnZXRyZW5udGVuIE5hbWVuIGRlciBBcmNoaXRla3R1cmVuIGFuLiBFcyBpc3QgYXVjaCBtw7ZnbGljaCwgIgorIlBsYXR6aGFsdGVyIGbDvHIgQXJjaGl0ZWt0dXJlbiBpbiBkaWVzZXIgTGlzdGUgYW56dWdlYmVuIChsZXNlbiBTaWUgQjxkcGtnLSIKKyJhcmNoaXRlY3R1cmU+KDEpIGbDvHIgd2VpdGVyZSBJbmZvcm1hdGlvbmVuIGRhenUpLiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zcmMtY29udHJvbC41OjE5NgorIywgbm8td3JhcAorbXNnaWQgIkI8UGFja2FnZS1UeXBlOj4gQjxkZWI+fEI8dWRlYj4iCittc2dzdHIgIkI8UGFja2FnZS1UeXBlOj4gQjxkZWI+fEI8dWRlYj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjIwMQorbXNnaWQgIiIKKyJUaGlzIGZpZWxkIGRlZmluZXMgdGhlIHR5cGUgb2YgdGhlIHBhY2thZ2UuIFwidWRlYlwiIGlzIGZvciBzaXplLWNvbnN0cmFpbmVkICIKKyJwYWNrYWdlcyB1c2VkIGJ5IHRoZSBkZWJpYW4gaW5zdGFsbGVyLiBcImRlYlwiIGlzIHRoZSBkZWZhdWx0IHZhbHVlLCBpdCdzICIKKyJhc3N1bWVkIGlmIHRoZSBmaWVsZCBpcyBhYnNlbnQuIE1vcmUgdHlwZXMgbWlnaHQgYmUgYWRkZWQgaW4gdGhlIGZ1dHVyZS4iCittc2dzdHIgIiIKKyJEaWVzZXMgRmVsZCBkZWZpbmllcnQgZGllIEFydCBkZXMgUGFrZXRzLiDCu3VkZWLCqyBpc3QgZsO8ciBncsO2w59lbmJlZ3Jlbnp0ZSAiCisiUGFrZXRlLCB3aWUgc2llIHZvbSBEZWJpYW4tSW5zdGFsbGVyIHZlcndhbmR0IHdlcmRlbi4gwrtkZWLCqyBpc3QgZGVyICIKKyJTdGFuZGFyZHdlcnQsIGVyIHdpcmQgYW5nZW5vbW1lbiwgZmFsbHMgZGFzIEZlbGQgZmVobHQuIFdlaXRlcmUgVHlwZW4gIgorImvDtm5udGVuIGluIGRlciBadWt1bmZ0IGhpbnp1Z2Vmw7xndCB3ZXJkZW4uIgorCisjLiB0eXBlOiBUUAorIzogZGViLXNyYy1jb250cm9sLjU6MjI1CisjLCBuby13cmFwCittc2dpZCAiQjxEZXNjcmlwdGlvbjo+IEk8c2hvcnQtZGVzY3JpcHRpb24+IChyZXF1aXJlZCkiCittc2dzdHIgIkI8RGVzY3JpcHRpb246PiBJPEt1cnpiZXNjaHJlaWJ1bmc+ICh2ZXJwZmxpY2h0ZW5kKSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MjMyCittc2dpZCAiIgorIlRoZXNlIGZpZWxkcyBhcmUgZGVzY3JpYmVkIGluIHRoZSBCPGRlYi1jb250cm9sPig1KSAgbWFudWFsIHBhZ2UsIGFzIHRoZXkgIgorImFyZSBjb3BpZWQgbGl0ZXJhbGx5IHRvIHRoZSBjb250cm9sIGZpbGUgb2YgdGhlIGJpbmFyeSBwYWNrYWdlLiIKK21zZ3N0ciAiIgorIkRpZXNlIEZlbGRlciBzaW5kIGluIGRlciBIYW5kYnVjaHNlaXRlIEI8ZGViLWNvbnRyb2w+KDUpIGJlc2NocmllYmVuLCBkYSBzaWUgIgorInfDtnJ0bGljaCBpbiBkaWUgU3RldWVyZGF0ZWkgZGVzIEJpbsOkcnBha2V0cyBrb3BpZXJ0IHdlcmRlbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3JjLWNvbnRyb2wuNToyNDgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPEVuaGFuY2VzOj5JPCBwYWNrYWdlLWxpc3Q+IgorbXNnc3RyICJCPEVuaGFuY2VzOj4gSTwgUGFrZXRsaXN0ZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjI3MAorbXNnaWQgIiIKKyJUaGVzZSBmaWVsZHMgZGVjbGFyZSByZWxhdGlvbnNoaXBzIGJldHdlZW4gcGFja2FnZXMuIFRoZXkgYXJlIGRpc2N1c3NlZCBpbiAiCisidGhlIEI8ZGViLWNvbnRyb2w+KDUpICBtYW5wYWdlIGFuZCBpbiB0aGUgQjxkZWJpYW4tcG9saWN5PiBwYWNrYWdlLiIKK21zZ3N0ciAiIgorIkRpZXNlIEZlbGRlciBkZWtsYXJpZXJlbiBkaWUgQmV6aWVodW5nZW4gendpc2NoZW4gUGFrZXRlbi4gU2llIHdlcmRlbiBpbiBkZXIgIgorIkhhbmRidWNoc2VpdGUgQjxkZWItY29udHJvbD4oNSkgdW5kIGltIFBha2V0IEI8ZGViaWFuLXBvbGljeT4gYmVzY2hyaWViZW4uIgorCisjLiB0eXBlOiBTSAorIzogZGViLXNyYy1jb250cm9sLjU6MjcxCisjLCBuby13cmFwCittc2dpZCAiVVNFUi1ERUZJTkVEIEZJRUxEUyIKK21zZ3N0ciAiQkVOVVRaRVJERUZJTklFUlRFIEZFTERFUiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6Mjg2Cittc2dpZCAiIgorIkl0IGlzIGFsbG93ZWQgdG8gYWRkIGFkZGl0aW9uYWwgdXNlci1kZWZpbmVkIGZpZWxkcyB0byB0aGUgY29udHJvbCBmaWxlLiBUaGUgIgorInRvb2xzIHdpbGwgaWdub3JlIHRoZXNlIGZpZWxkcy4gSWYgeW91IHdhbnQgdGhlIGZpZWxkcyB0byBiZSBjb3BpZWQgb3ZlciB0byAiCisidGhlIG91dHB1dCBmaWxlcywgc3VjaCBhcyB0aGUgYmluYXJ5IHBhY2thZ2VzLCB5b3UgbmVlZCB0byB1c2UgYSBjdXN0b20gIgorIm5hbWluZyBzY2hlbWU6IHRoZSBmaWVsZHMgc2hvdWxkIHN0YXJ0IHdpdGggYSBYLCBmb2xsb3dlZCBieSBvbmUgb3IgbW9yZSBvZiAiCisidGhlIGxldHRlcnMgQkNTIGFuZCBhIGh5cGVuLiBJZiB0aGUgbGV0dGVyIEIgaXMgdXNlZCwgdGhlIGZpZWxkIHdpbGwgYXBwZWFyICIKKyJpbiB0aGUgY29udHJvbCBmaWxlIGluIHRoZSBiaW5hcnkgcGFja2FnZSwgc2VlIEI8ZGViLWNvbnRyb2w+KDUpLCBmb3IgdGhlICIKKyJsZXR0ZXIgUyBpbiB0aGUgc291cmNlIHBhY2thZ2UgY29udHJvbCBmaWxlIGFzIGNvbnN0cnVjdGVkIGJ5IEI8ZHBrZy1zb3VyY2U+IgorIigxKSAgYW5kIGZvciB0aGUgbGV0dGVyIEMgaW4gdGhlIHVwbG9hZCBjb250cm9sICguY2hhbmdlcykgZmlsZS4gTm90ZSB0aGF0ICIKKyJ0aGUgWFtCQ1NdLSBwcmVmaXhlcyBhcmUgc3RyaXBwZWQgd2hlbiB0aGUgZmllbGRzIGFyZSBjb3BpZWQgb3ZlciB0byB0aGUgIgorIm91dHB1dCBmaWxlcy4gQSBmaWVsZCBCPFhDLUFwcHJvdmVkLUJ5PiB3aWxsIGFwcGVhciBhcyBCPEFwcHJvdmVkLUJ5PiBpbiB0aGUgIgorImNoYW5nZXMgZmlsZSBhbmQgd2lsbCBub3QgYXBwZWFyIGluIHRoZSBiaW5hcnkgb3Igc291cmNlIHBhY2thZ2UgY29udHJvbCAiCisiZmlsZXMuIgorbXNnc3RyICIiCisiRXMgaXN0IGVybGF1YnQsIHp1c8OkdHpsaWNoZSBiZW51dHplcmRlZmluaWVydGUgRmVsZGVyIHp1IGRlciBTdGV1ZXJkYXRlaSAiCisiaGluenV6dWbDvGdlbi4gRGllIFdlcmt6ZXVnZSB3ZXJkZW4gZGllc2UgRmVsZGVyIGlnbm9yaWVyZW4uIEZhbGxzIFNpZSAiCisibcO2Y2h0ZW4sIGRhc3MgZGllIEZlbGRlciBpbiBkaWUgQXVzZ2FiZWRhdGVpZW4sIHdpZSB6LkIuIGRpZSBCaW7DpHJwYWtldGUsICIKKyJrb3BpZXJ0IHdlcmRlbiwgbcO8c3NlbiBTaWUgZWluIGFuZ2VwYXNzdGVzIE5hbWVuc3NjaGVtYSB2ZXJ3ZW5kZW46IERpZSAiCisiRmVsZGVyIHNvbGx0ZW4gbWl0IGVpbmVtIFgsIGdlZm9sZ3Qgdm9uIGVpbmVtIG9kZXIgbWVociBkZXIgQnVjaHN0YWJlbiBCQ1MgIgorInVuZCBlaW5lbSBHZWRhbmtlbnN0cmljaCBiZWdpbm5lbi4gRmFsbHMgZGVyIEJ1Y2hzdGFiZSBCIGJlbnV0enQgd2lyZCwgd2lyZCAiCisiZGFzIEZlbGQgaW4gZGVyIFN0ZXVlcmRhdGVpIGRlcyBCaW7DpHJwYWtldHMgYXVmdGF1Y2hlbiwgc2llaGUgQjxkZWItY29udHJvbD4iCisiKDUpLCBiZWltIEJ1Y2hzdGFiZW4gUyBpbiBkZXIgUXVlbGxwYWtldHN0ZXVlcmRhdGVpIHdpZSBzaWUgdm9uIEI8ZHBrZy0iCisic291cmNlPigxKSBlcnN0ZWxsdCB3aXJkIHVuZCBiZWltIEJ1Y2hzdGFiZW4gQyBpbiBkZXIgaG9jaGdlbGFkZW5lbiBEYXRlaSAiCisiY29udHJvbCAoLmNoYW5nZXMpLiBCZWFjaHRlbiBTaWUsIGRhc3MgZGllIFhbQkNTXS1Wb3JzaWxiZW4gYmVpbSBLb3BpZXJlbiBpbiAiCisiZGllIEF1c2dhYmVkYXRlaWVuIGVudGZlcm50IHdlcmRlbi4gRWluIEZlbGQgQjxYQy1BcHByb3ZlZC1CeT4gd2lyZCBhbHMgIgorIkI8QXBwcm92ZWQtQnk+IGluIGRlciBEYXRlaSBjaGFuZ2VzLCBhYmVyIG5pY2h0IGluIGRlbiBTdGV1ZXJkYXRlaWVuIGRlcyAiCisiUXVlbGwtIHVuZCBCaW7DpHJwYWtldHMgYXVmdGF1Y2hlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjMwNAorIywgbm8td3JhcAorbXNnaWQgIiIKKyIjIENvbW1lbnRcbiIKKyJTb3VyY2U6IGRwa2dcbiIKKyJTZWN0aW9uOiBhZG1pblxuIgorIlByaW9yaXR5OiByZXF1aXJlZFxuIgorIk1haW50YWluZXI6IERwa2cgRGV2ZWxvcGVycyBFPGx0PmRlYmlhbi1kcGtnQGxpc3RzLmRlYmlhbi5vcmdFPGd0PlxuIgorIiMgdGhpcyBmaWVsZCBpcyBjb3BpZWQgdG8gdGhlIGJpbmFyeSBhbmQgc291cmNlIHBhY2thZ2VzXG4iCisiWEJTLVVwc3RyZWFtLVJlbGVhc2UtU3RhdHVzOiBzdGFibGVcbiIKKyJIb21lcGFnZTogaHR0cDovL3dpa2kuZGViaWFuLm9yZy9UZWFtcy9EcGtnXG4iCisiVmNzLUJyb3dzZXI6IGh0dHA6Ly9naXQuZGViaWFuLm9yZy8/cD1kcGtnL2Rwa2cuZ2l0XG4iCisiVmNzLUdpdDogZ2l0Oi8vZ2l0LmRlYmlhbi5vcmcvZ2l0L2Rwa2cvZHBrZy5naXRcbiIKKyJTdGFuZGFyZHMtVmVyc2lvbjogMy43LjNcbiIKKyJCdWlsZC1EZXBlbmRzOiBwa2ctY29uZmlnLCBkZWJoZWxwZXIgKEU8Z3Q+PSA0LjEuODEpLFxuIgorIiBsaWJzZWxpbnV4MS1kZXYgKEU8Z3Q+PSAxLjI4LTQpIFshbGludXgtYW55XVxuIgorbXNnc3RyICIiCisiIyBLb21tZW50YXJcbiIKKyJTb3VyY2U6IGRwa2dcbiIKKyJTZWN0aW9uOiBhZG1pblxuIgorIlByaW9yaXR5OiByZXF1aXJlZFxuIgorIk1haW50YWluZXI6IERwa2cgRGV2ZWxvcGVycyBFPGx0PmRlYmlhbi1kcGtnQGxpc3RzLmRlYmlhbi5vcmdFPGd0PlxuIgorIiMgZGllc2VzIEZlbGQgd2lyZCBpbiBkYXMgQmluw6RyLSB1bmQgUXVlbGxwYWtldCBrb3BpZXJ0XG4iCisiWEJTLVVwc3RyZWFtLVJlbGVhc2UtU3RhdHVzOiBzdGFibGVcbiIKKyJIb21lcGFnZTogaHR0cDovL3dpa2kuZGViaWFuLm9yZy9UZWFtcy9EcGtnXG4iCisiVmNzLUJyb3dzZXI6IGh0dHA6Ly9naXQuZGViaWFuLm9yZy8/cD1kcGtnL2Rwa2cuZ2l0XG4iCisiVmNzLUdpdDogZ2l0Oi8vZ2l0LmRlYmlhbi5vcmcvZ2l0L2Rwa2cvZHBrZy5naXRcbiIKKyJTdGFuZGFyZHMtVmVyc2lvbjogMy43LjNcbiIKKyJCdWlsZC1EZXBlbmRzOiBwa2ctY29uZmlnLCBkZWJoZWxwZXIgKEU8Z3Q+PSA0LjEuODEpLFxuIgorIiBsaWJzZWxpbnV4MS1kZXYgKEU8Z3Q+PSAxLjI4LTQpIFshbGludXgtYW55XVxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNTozMjMKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiUGFja2FnZTogZHBrZy1kZXZcbiIKKyJTZWN0aW9uOiB1dGlsc1xuIgorIlByaW9yaXR5OiBvcHRpb25hbFxuIgorIkFyY2hpdGVjdHVyZTogYWxsXG4iCisiIyB0aGlzIGlzIGEgY3VzdG9tIGZpZWxkIGluIHRoZSBiaW5hcnkgcGFja2FnZVxuIgorIlhCLU1lbnRvcmluZy1Db250YWN0OiBSYXBoYWVsIEhlcnR6b2cgRTxsdD5oZXJ0em9nQGRlYmlhbi5vcmdFPGd0PlxuIgorIkRlcGVuZHM6IGRwa2cgKEU8Z3Q+PSAxLjE0LjYpLCBwZXJsNSwgcGVybC1tb2R1bGVzLCBjcGlvIChFPGd0Pj0gMi40LjItMiksXG4iCisiIGJ6aXAyLCBsem1hLCBwYXRjaCAoRTxndD49IDIuMi0xKSwgbWFrZSwgYmludXRpbHMsIGxpYnRpbWVkYXRlLXBlcmxcbiIKKyJSZWNvbW1lbmRzOiBnY2MgfCBjLWNvbXBpbGVyLCBidWlsZC1lc3NlbnRpYWxcbiIKKyJTdWdnZXN0czogZ251cGcsIGRlYmlhbi1rZXlyaW5nXG4iCisiQ29uZmxpY3RzOiBkcGtnLWNyb3NzIChFPGx0PkU8bHQ+IDIuMC4wKSwgZGV2c2NyaXB0cyAoRTxsdD5FPGx0PiAyLjEwLjI2KVxuIgorIlJlcGxhY2VzOiBtYW5wYWdlcy1wbCAoRTxsdD49IDIwMDUxMTE3LTEpXG4iCisiRGVzY3JpcHRpb246IERlYmlhbiBwYWNrYWdlIGRldmVsb3BtZW50IHRvb2xzXG4iCisiIFRoaXMgcGFja2FnZSBwcm92aWRlcyB0aGUgZGV2ZWxvcG1lbnQgdG9vbHMgKGluY2x1ZGluZyBkcGtnLXNvdXJjZSlcbiIKKyIgcmVxdWlyZWQgdG8gdW5wYWNrLCBidWlsZCBhbmQgdXBsb2FkIERlYmlhbiBzb3VyY2UgcGFja2FnZXMuXG4iCisiIC5cbiIKKyIgTW9zdCBEZWJpYW4gc291cmNlIHBhY2thZ2VzIHdpbGwgcmVxdWlyZSBhZGRpdGlvbmFsIHRvb2xzIHRvIGJ1aWxkO1xuIgorIiBmb3IgZXhhbXBsZSwgbW9zdCBwYWNrYWdlcyBuZWVkIG1ha2UgYW5kIHRoZSBDIGNvbXBpbGVyIGdjYy5cbiIKK21zZ3N0ciAiIgorIlBhY2thZ2U6IGRwa2ctZGV2XG4iCisiU2VjdGlvbjogdXRpbHNcbiIKKyJQcmlvcml0eTogb3B0aW9uYWxcbiIKKyJBcmNoaXRlY3R1cmU6IGFsbFxuIgorIiMgZGllcyBpc3QgZWluIHNwZXppZWxsZXMgRmVsZCBpbSBCaW7DpHJwYWtldFxuIgorIlhCLU1lbnRvcmluZy1Db250YWN0OiBSYXBoYWVsIEhlcnR6b2cgRTxsdD5oZXJ0em9nQGRlYmlhbi5vcmdFPGd0PlxuIgorIkRlcGVuZHM6IGRwa2cgKEU8Z3Q+PSAxLjE0LjYpLCBwZXJsNSwgcGVybC1tb2R1bGVzLCBjcGlvIChFPGd0Pj0gMi40LjItMiksXG4iCisiIGJ6aXAyLCBsem1hLCBwYXRjaCAoRTxndD49IDIuMi0xKSwgbWFrZSwgYmludXRpbHMsIGxpYnRpbWVkYXRlLXBlcmxcbiIKKyJSZWNvbW1lbmRzOiBnY2MgfCBjLWNvbXBpbGVyLCBidWlsZC1lc3NlbnRpYWxcbiIKKyJTdWdnZXN0czogZ251cGcsIGRlYmlhbi1rZXlyaW5nXG4iCisiQ29uZmxpY3RzOiBkcGtnLWNyb3NzIChFPGx0PkU8bHQ+IDIuMC4wKSwgZGV2c2NyaXB0cyAoRTxsdD5FPGx0PiAyLjEwLjI2KVxuIgorIlJlcGxhY2VzOiBtYW5wYWdlcy1wbCAoRTxsdD49IDIwMDUxMTE3LTEpXG4iCisiRGVzY3JpcHRpb246IERlYmlhbiBwYWNrYWdlIGRldmVsb3BtZW50IHRvb2xzXG4iCisiIFRoaXMgcGFja2FnZSBwcm92aWRlcyB0aGUgZGV2ZWxvcG1lbnQgdG9vbHMgKGluY2x1ZGluZyBkcGtnLXNvdXJjZSlcbiIKKyIgcmVxdWlyZWQgdG8gdW5wYWNrLCBidWlsZCBhbmQgdXBsb2FkIERlYmlhbiBzb3VyY2UgcGFja2FnZXMuXG4iCisiIC5cbiIKKyIgTW9zdCBEZWJpYW4gc291cmNlIHBhY2thZ2VzIHdpbGwgcmVxdWlyZSBhZGRpdGlvbmFsIHRvb2xzIHRvIGJ1aWxkO1xuIgorIiBmb3IgZXhhbXBsZSwgbW9zdCBwYWNrYWdlcyBuZWVkIG1ha2UgYW5kIHRoZSBDIGNvbXBpbGVyIGdjYy5cbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MzMwCittc2dpZCAiQjxkZWItY29udHJvbD4oNSksIEI8ZGViLXZlcnNpb24+KDUpLCBCPGRwa2ctc291cmNlPigxKSIKK21zZ3N0ciAiQjxkZWItY29udHJvbD4oNSksIEI8ZGViLXZlcnNpb24+KDUpLCBCPGRwa2ctc291cmNlPigxKSIKKworIy4gdHlwZTogVEgKKyM6IGRlYi1zcGxpdC41OjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkZWItc3BsaXQiCittc2dzdHIgImRlYi1zcGxpdCIKKworIy4gdHlwZTogVEgKKyM6IGRlYi1zcGxpdC41OjEgZHBrZy1jaGVja2J1aWxkZGVwcy4xOjEgZHBrZy1kaXN0YWRkZmlsZS4xOjEgZHBrZy1zcGxpdC4xOjIKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6MSBkcGtnLXZlbmRvci4xOjEgc3RhcnQtc3RvcC1kYWVtb24uODoxCisjLCBuby13cmFwCittc2dpZCAiMjAxMS0wNy0wNCIKK21zZ3N0ciAiMjAxMS0wNy0wNCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNwbGl0LjU6NAorbXNnaWQgImRlYi1zcGxpdCAtIERlYmlhbiBtdWx0aS1wYXJ0IGJpbmFyeSBwYWNrYWdlIGZvcm1hdCIKK21zZ3N0ciAiZGViLXNwbGl0IC0gbWVocnRlaWxpZ2VzIERlYmlhbi1CaW7DpHJwYWtldGZvcm1hdCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNwbGl0LjU6OQorbXNnaWQgIiIKKyJUaGUgbXVsdGktcGFydCBCPC5kZWI+IGZvcm1hdCBpcyB1c2VkIHRvIHNwbGl0IGJpZyBwYWNrYWdlcyBpbnRvIHNtYWxsZXIgIgorInBpZWNlcyB0byBlYXNlIHRyYW5zcG9ydCBpbiBzbWFsbCBtZWRpYS4iCittc2dzdHIgIiIKKyJEYXMgbWVocnRlaWxpZ2UgQjwuZGViPi1Gb3JtYXQgd2lyZCB6dW0gQXVmdGVpbGVuIHZvbiBncm/Dn2VuIFBha2V0ZW4gaW4gIgorImtsZWluZXJlIFN0w7xja2UgenVyIEVybGVpY2h0ZXJ1bmcgZGVzIFRyYW5zcG9ydHMgYXVmIGtsZWluZW4gTWVkaWVuIHZlcndhbmR0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNwbGl0LjU6MTIKK21zZ2lkICIiCisiVGhlIGZpbGUgaXMgYW4gQjxhcj4gYXJjaGl2ZSB3aXRoIGEgbWFnaWMgdmFsdWUgb2YgQjwhRTxsdD5hcmNoRTxndD4+LiAgVGhlICIKKyJmaWxlIG5hbWVzIG1pZ2h0IGNvbnRhaW4gYSB0cmFpbGluZyBzbGFzaCAoc2luY2UgZHBrZyAxLjE1LjYpLiIKK21zZ3N0ciAiIgorIkRpZSBEYXRlaSBpc3QgZWluIEI8YXI+LUFyY2hpdiBtaXQgZWluZXIgbWFnaXNjaGVuIFphaGwgdm9uIEI8ISIKKyJFPGx0PmFyY2hFPGd0Pj4uIERlciBEYXRlaW5hbWUga2FubiAoc2VpdCBEcGtnIDEuMTUuNikgbWl0IGVpbmVtICIKKyJTY2hyw6Rnc3RyaWNoIGFic2NobGllw59lbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcGxpdC41OjE1Cittc2dpZCAiIgorIlRoZSBmaXJzdCBtZW1iZXIgaXMgbmFtZWQgQjxkZWJpYW4tc3BsaXQ+IGFuZCBjb250YWlucyBhIHNlcmllcyBvZiBsaW5lcywgIgorInNlcGFyYXRlZCBieSBuZXdsaW5lcy4gQ3VycmVudGx5IGVpZ2h0IGxpbmVzIGFyZSBwcmVzZW50OiIKK21zZ3N0ciAiIgorIkRhcyBlcnN0ZSBNaXRnbGllZCBoZWnDn3QgQjxkZWJpYW4tc3BsaXQ+IHVuZCBlbnRow6RsdCBlaW5lIFJlaWhlIHZvbiBaZWlsZW4sICIKKyJnZXRyZW5udCBkdXJjaCBMZWVyemVpbGVuLiBEZXJ6ZWl0IHNpbmQgYWNodCBaZWlsZW4gdm9yaGFuZGVuOiIKKworIy4gdHlwZTogSVAKKyM6IGRlYi1zcGxpdC41OjE1IGRlYi1zcGxpdC41OjE4IGRlYi1zcGxpdC41OjIwIGRlYi1zcGxpdC41OjIyIGRlYi1zcGxpdC41OjI0CisjOiBkZWItc3BsaXQuNToyNiBkZWItc3BsaXQuNToyOCBkZWItc3BsaXQuNTozMSBkcGtnLWdlbnN5bWJvbHMuMToyMAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjIgZHBrZy1nZW5zeW1ib2xzLjE6MjQgZHBrZy1nZW5zeW1ib2xzLjE6MjYKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjMxMSBkcGtnLWdlbnN5bWJvbHMuMTozMTcgZHBrZy1nZW5zeW1ib2xzLjE6MzUxCisjOiBkcGtnLWdlbnN5bWJvbHMuMTozNTUgZHBrZy1nZW5zeW1ib2xzLjE6MzU4CisjLCBuby13cmFwCittc2dpZCAiXFwoYnUiCittc2dzdHIgIlxcKGJ1IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3BsaXQuNToxOAorbXNnaWQgIiIKKyJUaGUgZm9ybWF0IHZlcnNpb24gbnVtYmVyLCBCPDIuMT4gYXQgdGhlIHRpbWUgdGhpcyBtYW51YWwgcGFnZSB3YXMgd3JpdHRlbi4iCittc2dzdHIgIiIKKyJEaWUgRm9ybWF0dmVyc2lvbnNudW1tZXIsIHp1bSBaZWl0cHVua3QgZGVyIEVyc3RlbGx1bmcgZGllc2VyIEhhbmRidWNoc2VpdGUgIgorImxhdXRldCBzaWUgQjwyLjE+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNwbGl0LjU6MjAKK21zZ2lkICJUaGUgcGFja2FnZSBuYW1lLiIKK21zZ3N0ciAiRGVyIFBha2V0bmFtZS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcGxpdC41OjIyCittc2dpZCAiVGhlIHBhY2thZ2UgdmVyc2lvbi4iCittc2dzdHIgIkRpZSBQYWtldHZlcnNpb24uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3BsaXQuNToyNAorbXNnaWQgIlRoZSBtZDVzdW0gb2YgdGhlIHBhY2thZ2UuIgorbXNnc3RyICJEaWUgTWQ1c3VtIGRlcyBQYWtldHMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3BsaXQuNToyNgorbXNnaWQgIlRoZSB0b3RhbCBzaXplIG9mIHRoZSBwYWNrYWdlLiIKK21zZ3N0ciAiRGllIEdlc2FtdGdyw7bDn2UgZGVzIFBha2V0cy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcGxpdC41OjI4Cittc2dpZCAiVGhlIG1heGltdW0gcGFydCBzaXplLiIKK21zZ3N0ciAiRGllIG1heGltYWxlIFRlaWxlZ3LDtsOfZSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNwbGl0LjU6MzEKK21zZ2lkICIiCisiVGhlIGN1cnJlbnQgcGFydCBudW1iZXIsIGZvbGxvd2VkIGJ5IGEgc2xhc2ggYW5kIHRoZSB0b3RhbCBhbW91bnQgb2YgcGFydHMgIgorIihhcyBpbiBcXChvcTEvMTBcXChjcSkuIgorbXNnc3RyICIiCisiRGllIGFrdHVlbGxlIFRlaWxlbnVtbWVyLCBnZWZvbGd0IHZvbiBlaW5lbSBTY2hyw6Rnc3RyaWNoIHVuZCBkZXIgIgorIkdlc2FtdGFuemFobCBhbiBUZWlsZW4gKHdpZSBpbiBcXChvcTEvMTBcXChjcSkuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3BsaXQuNTozMworbXNnaWQgIlRoZSBwYWNrYWdlIGFyY2hpdGVjdHVyZSAoc2luY2UgZHBrZyAxLjE2LjEpLiIKK21zZ3N0ciAiRGllIFBha2V0YXJjaGl0ZWt0dXIgKHNlaXQgRHBrZyAxLjE2LjEpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNwbGl0LjU6MzYKK21zZ2lkICIiCisiUHJvZ3JhbXMgd2hpY2ggcmVhZCBtdWx0aS1wYXJ0IGFyY2hpdmVzIHNob3VsZCBiZSBwcmVwYXJlZCBmb3IgYWRkaXRpb25hbCAiCisibGluZXMgdG8gYmUgcHJlc2VudCwgYW5kIHNob3VsZCBpZ25vcmUgdGhlc2UgaWYgdGhpcyBpcyB0aGUgY2FzZS4iCittc2dzdHIgIiIKKyJQcm9ncmFtbWUsIGRpZSBtZWhydGVpbGlnZSBBcmNoaXZlIGxlc2VuLCBzb2xsdGVuIGRhcmF1ZiB2b3JiZXJlaXRldCBzZWluLCAiCisiZGFzcyB6dXPDpHR6bGljaGUgWmVpbGVuIHZvcmhhbmRlbiBzZWluIGvDtm5uZW4sIHVuZCBzb2xsdGVuIGRpZXNlIGlnbm9yaWVyZW4sICIKKyJmYWxscyBkaWVzIGRlciBGYWxsIGlzdC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcGxpdC41OjQxCittc2dpZCAiIgorIklmIHRoZSB2ZXJzaW9uIG51bWJlciBoYXMgY2hhbmdlZCwgYW4gaW5jb21wYXRpYmxlIGNoYW5nZSBoYXMgYmVlbiBtYWRlIGFuZCAiCisidGhlIHByb2dyYW0gc2hvdWxkIHN0b3AuIElmIGl0IGhhcyBub3QsIHRoZW4gdGhlIHByb2dyYW0gc2hvdWxkIGJlIGFibGUgdG8gIgorInNhZmVseSBjb250aW51ZSwgdW5sZXNzIGl0IGVuY291bnRlcnMgYW4gdW5leHBlY3RlZCBtZW1iZXIgaW4gdGhlIGFyY2hpdmUgIgorIihleGNlcHQgYXQgdGhlIGVuZCksIGFzIGRlc2NyaWJlZCBiZWxvdy4iCittc2dzdHIgIiIKKyJGYWxscyBzaWNoIGRpZSBWZXJzaW9uc251bW1lciBnZcOkbmRlcnQgaGF0LCB3dXJkZSBlaW5lIGlua29tcGF0aWJsZSDDhG5kZXJ1bmcgIgorImR1cmNoZ2Vmw7xocnQgdW5kIGRhcyBQcm9ncmFtbSBzb2xsdGUgc2ljaCBiZWVuZGVuLiBGYWxscyBkaWVzIG5pY2h0IGRlciBGYWxsICIKKyJpc3QsIGRhbm4gc29sbHRlIGRhcyBQcm9ncmFtbSBzaWNoZXIgZm9ydGZhaHJlbiBrw7ZubmVuLCBlcyBzZWkgZGVubiwgZWluICIKKyJ1bmVyd2FydGV0ZXMgTWl0Z2xpZWQgaXN0IGltIEFyY2hpdiAoYWJnZXNlaGVuIHZvbSBFbmRlKSBnZWZ1bmRlbiB3b3JkZW4sICIKKyJ3aWUgdW50ZW4gYmVzY2hyaWViZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3BsaXQuNTo0NAorbXNnaWQgIiIKKyJUaGUgc2Vjb25kLCBsYXN0IHJlcXVpcmVkIG1lbWJlciBpcyBuYW1lZCBCPGRhdGEuPkk8Tj4sIHdoZXJlIEk8Tj4gZGVub3RlcyAiCisidGhlIHBhcnQgbnVtYmVyLiBJdCBjb250YWlucyB0aGUgcmF3IHBhcnQgZGF0YS4iCittc2dzdHIgIiIKKyJEYXMgendlaXRlLCBsZXR6dGUgYmVuw7Z0aWd0ZSBNaXRnbGllZCBoZWnDn3QgQjxkYXRhLj5JPE4+LCB3b2JlaSBJPE4+IGRpZSAiCisiVGVpbG51bW1lciBhbmdpYnQuIEVzIGVudGjDpGx0IGRpZSByb2hlbiBEYXRlbiBkZXMgVGVpbHMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3BsaXQuNTo0OQorbXNnaWQgIiIKKyJUaGVzZSBtZW1iZXJzIG11c3Qgb2NjdXIgaW4gdGhpcyBleGFjdCBvcmRlci4gQ3VycmVudCBpbXBsZW1lbnRhdGlvbnMgc2hvdWxkICIKKyJpZ25vcmUgYW55IGFkZGl0aW9uYWwgbWVtYmVycyBhZnRlciBCPGRhdGEuPkk8Tj4uICBGdXJ0aGVyIG1lbWJlcnMgbWF5IGJlICIKKyJkZWZpbmVkIGluIHRoZSBmdXR1cmUsIGFuZCAoaWYgcG9zc2libGUpIHdpbGwgYmUgcGxhY2VkIGFmdGVyIHRoZXNlIHR3by4iCittc2dzdHIgIiIKKyJEaWVzZSBNaXRnbGllZGVyIG3DvHNzZW4gaW4gZ2VuYXUgZGllc2VyIFJlaWhlbmZvbGdlIGF1ZnRhdWNoZW4uIEFrdHVlbGxlICIKKyJJbXBsZW1lbnRhdGlvbmVuIHNvbGx0ZW4genVzw6R0emxpY2hlIE1pdGdsaWVkZXIgbmFjaCBCPGRhdGEuPkk8Tj4gIgorImlnbm9yaWVyZW4uIFdlaXRlcmUgTWl0Z2xpZWRlciBrw7ZubnRlbiBpbiBkZXIgWnVrdW5mdCBkZWZpbmllcnQgd2VyZGVuIHVuZCAiCisid2VyZGVuIChmYWxscyBtw7ZnbGljaCkgbmFjaCBkaWVzZW4gZHJlaSBwbGF0emllcnQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3BsaXQuNTo1MQorbXNnaWQgIkI8ZGViPig1KSwgQjxkcGtnLXNwbGl0PigxKS4iCittc2dzdHIgIkI8ZGViPig1KSwgQjxkcGtnLXNwbGl0PigxKS4iCisKKyMuIHR5cGU6IFRICisjOiBkZWItdmVyc2lvbi41OjUKKyMsIG5vLXdyYXAKK21zZ2lkICJkZWItdmVyc2lvbiIKK21zZ3N0ciAiZGViLXZlcnNpb24iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6OAorbXNnaWQgImRlYi12ZXJzaW9uIC0gRGViaWFuIHBhY2thZ2UgdmVyc2lvbiBudW1iZXIgZm9ybWF0IgorbXNnc3RyICJkZWItdmVyc2lvbiAtIFZlcnNpb25zbnVtbWVyLUZvcm1hdCB2b24gRGViaWFuLVBha2V0ZW4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6MTEKK21zZ2lkICJbSTxlcG9jaD5CPDo+XUk8dXBzdHJlYW0tdmVyc2lvbj5bQjwtPkk8ZGViaWFuLXJldmlzaW9uPl0iCittc2dzdHIgIlsgSTxFcG9jaGU+Qjw6Pl1JPFVwc3RyZWFtLVZlcnNpb24+W0I8LT5JPERlYmlhbi1SZXZpc2lvbj5dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjE0Cittc2dpZCAiIgorIlZlcnNpb24gbnVtYmVycyBhcyB1c2VkIGZvciBEZWJpYW4gYmluYXJ5IGFuZCBzb3VyY2UgcGFja2FnZXMgY29uc2lzdCBvZiAiCisidGhyZWUgY29tcG9uZW50cy4gVGhlc2UgYXJlOiIKK21zZ3N0ciAiIgorIkRpZSBmw7xyIERlYmlhbiBCaW7DpHItIHVuZCBRdWVsbHBha2V0ZSB2ZXJ3ZW5kZXRlIFZlcnNpb25zbnVtbWVyIGJlc3RlaHQgYXVzICIKKyJkcmVpIEtvbXBvbmVudGVuLiBEaWVzZSBzaW5kOiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi12ZXJzaW9uLjU6MTQKKyMsIG5vLXdyYXAKK21zZ2lkICJJPGVwb2NoPiIKK21zZ3N0ciAiSTxFcG9jaGU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjIwCittc2dpZCAiIgorIlRoaXMgaXMgYSBzaW5nbGUgKGdlbmVyYWxseSBzbWFsbCkgdW5zaWduZWQgaW50ZWdlci4gIEl0IG1heSBiZSBvbWl0dGVkLCBpbiAiCisid2hpY2ggY2FzZSB6ZXJvIGlzIGFzc3VtZWQuICBJZiBpdCBpcyBvbWl0dGVkIHRoZW4gdGhlIEk8dXBzdHJlYW0tdmVyc2lvbj4gIgorIm1heSBub3QgY29udGFpbiBhbnkgY29sb25zLiIKK21zZ3N0ciAiIgorIkRpZXMgaXN0IGVpbmUgZWluemVsbmUgKHR5cGlzY2hlcndlaXNlIGtsZWluZSkgdm9yemVpY2hlbmxvc2UgZ2FuemUgWmFobC4gIgorIlNpZSBkYXJmIGVudGZhbGxlbiwgd29iZWkgZGFubiBOdWxsIGFuZ2Vub21tZW4gd2lyZC4gRmFsbHMgc2llIGVudGbDpGxsdCwgIgorImRhcmYgZGllIEk8VXBzdHJlYW0tVmVyc2lvbj4ga2VpbmUgRG9wcGVscHVua3RlIGVudGhhbHRlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6MjQKK21zZ2lkICIiCisiSXQgaXMgcHJvdmlkZWQgdG8gYWxsb3cgbWlzdGFrZXMgaW4gdGhlIHZlcnNpb24gbnVtYmVycyBvZiBvbGRlciB2ZXJzaW9ucyBvZiAiCisiYSBwYWNrYWdlLCBhbmQgYWxzbyBhIHBhY2thZ2UncyBwcmV2aW91cyB2ZXJzaW9uIG51bWJlcmluZyBzY2hlbWVzLCB0byBiZSAiCisibGVmdCBiZWhpbmQuIgorbXNnc3RyICIiCisiU2llIGV4aXN0aWVydCwgdW0gRmVobGVyIGluIGRlbiBWZXJzaW9uc251bW1lcm4gw6RsdGVyZXIgVmVyc2lvbmVuIGRlcyBQYWtldHMgIgorInp1IGVybGF1YmVuIHVuZCBhdWNoLCB1bSBkYXMgYmlzaGVyaWdlIE51bW1lcmllcnVuZ3NzY2hlbWEgZWluZXMgUGFrZXRlcyAiCisiYXVmenVnZWJlbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItdmVyc2lvbi41OjI0CisjLCBuby13cmFwCittc2dpZCAiSTx1cHN0cmVhbS12ZXJzaW9uPiIKK21zZ3N0ciAiSTxVcHN0cmVhbS1WZXJzaW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNTozNAorbXNnaWQgIiIKKyJUaGlzIGlzIHRoZSBtYWluIHBhcnQgb2YgdGhlIHZlcnNpb24gbnVtYmVyLiAgSXQgaXMgdXN1YWxseSB0aGUgdmVyc2lvbiAiCisibnVtYmVyIG9mIHRoZSBvcmlnaW5hbCAoXCJ1cHN0cmVhbVwiKSAgcGFja2FnZSBmcm9tIHdoaWNoIHRoZSBJPC5kZWI+IGZpbGUgIgorImhhcyBiZWVuIG1hZGUsIGlmIHRoaXMgaXMgYXBwbGljYWJsZS4gIFVzdWFsbHkgdGhpcyB3aWxsIGJlIGluIHRoZSBzYW1lICIKKyJmb3JtYXQgYXMgdGhhdCBzcGVjaWZpZWQgYnkgdGhlIHVwc3RyZWFtIGF1dGhvcihzKTsgaG93ZXZlciwgaXQgbWF5IG5lZWQgdG8gIgorImJlIHJlZm9ybWF0dGVkIHRvIGZpdCBpbnRvIHRoZSBwYWNrYWdlIG1hbmFnZW1lbnQgc3lzdGVtJ3MgZm9ybWF0IGFuZCAiCisiY29tcGFyaXNvbiBzY2hlbWUuIgorbXNnc3RyICIiCisiRGllcyBpc3QgZGVyIEhhdXB0dGVpbCBkZXIgVmVyc2lvbnNudW1tZXIuIE5vcm1hbGVyd2Vpc2UgaXN0IGRpZXMgZGllICIKKyJWZXJzaW9uc251bW1lciBkZXMgT3JpZ2luYWxwYWtldHMgKMK7VXBzdHJlYW3CqyksIGF1cyBkZW0gZGllIEk8LmRlYj4tRGF0ZWkgIgorImVyc3RlbGx0IHd1cmRlLCBmYWxscyBkaWVzIHp1dHJpZmZ0LiBOb3JtYWxlcndlaXNlIHdpcmQgZGllc2UgaW0gZ2xlaWNoZW4gIgorIkZvcm1hdCB2b3JsaWVnZW4sIHdpZSBzaWUgdm9uIGRlbiBPcmlnaW5hbGF1dG9yZW4gYW5nZWdlYmVuIHd1cmRlOyAiCisiYWxsZXJkaW5ncyBtYWcgZXMgbm90d2VuZGlnIHNlaW4sIHNpZSB1bXp1Zm9ybWF0aWVyZW4sIGRhbWl0IHNpZSBpbiBkYXMgIgorIkZvcm1hdCBkZXMgUGFrZXR2ZXJ3YWx0dW5nc3N5c3RlbXMgdW5kIGRlcyBWZXJnbGVpY2hzc2NoZW1hcyBwYXNzdC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6MzkKK21zZ2lkICIiCisiVGhlIGNvbXBhcmlzb24gYmVoYXZpb3Igb2YgdGhlIHBhY2thZ2UgbWFuYWdlbWVudCBzeXN0ZW0gd2l0aCByZXNwZWN0IHRvIHRoZSAiCisiSTx1cHN0cmVhbS12ZXJzaW9uPiBpcyBkZXNjcmliZWQgYmVsb3cuIFRoZSBJPHVwc3RyZWFtLXZlcnNpb24+IHBvcnRpb24gb2YgIgorInRoZSB2ZXJzaW9uIG51bWJlciBpcyBtYW5kYXRvcnkuIgorbXNnc3RyICIiCisiRGFzIFZlcmdsZWljaHN2ZXJoYWx0ZW4gZGVzIFBha2V0dmVyd2FsdHVuZ3NzeXN0ZW1zIGluIEhpbmJsaWNrIGF1ZiBkaWUgIgorIkk8VXBzdHJlYW0tVmVyc2lvbj4gd2lyZCB1bnRlbiBiZXNjaHJpZWJlbi4gRGVyIEk8VXBzdHJlYW0tVmVyc2lvbj4tQW50ZWlsICIKKyJkZXIgVmVyc2lvbm51bW1lciBtdXNzIGFuZ2VnZWJlbiB3ZXJkZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjQ4Cittc2dpZCAiIgorIlRoZSBJPHVwc3RyZWFtLXZlcnNpb24+IG1heSBjb250YWluIG9ubHkgYWxwaGFudW1lcmljcyAoXCJBLVphLXowLTlcIikgYW5kICIKKyJ0aGUgY2hhcmFjdGVycyBCPC4+IEI8Kz4gQjwtPiBCPDo+IEI8fj4gKGZ1bGwgc3RvcCwgcGx1cywgaHlwaGVuLCBjb2xvbiwgIgorInRpbGRlKSBhbmQgc2hvdWxkIHN0YXJ0IHdpdGggYSBkaWdpdC4gIElmIHRoZXJlIGlzIG5vIEk8ZGViaWFuLXJldmlzaW9uPiAiCisidGhlbiBoeXBoZW5zIGFyZSBub3QgYWxsb3dlZDsgaWYgdGhlcmUgaXMgbm8gSTxlcG9jaD4gdGhlbiBjb2xvbnMgYXJlIG5vdCAiCisiYWxsb3dlZC4iCittc2dzdHIgIiIKKyJJPFVwc3RyZWFtLVZlcnNpb24+IGRhcmYgbnVyIGFscGhhbnVtZXJpc2NoZSBaZWljaGVuICjCu0EtWmEtejAtOcKrKSB1bmQgQjwuPiAiCisiQjwrPiBCPC0+IEI8Oj4gQjx+PiAoU2F0enB1bmt0LCBQbHVzLCBCaW5kZXN0cmljaCwgRG9wcGVscHVua3QsIFRpbGRlKSAiCisiZW50aGFsdGVuIHVuZCBzb2xsdGUgbWl0IGVpbmVyIFphaGwgYmVnaW5uZW4uIEZhbGxzIGVzIGtlaW5lIEk8RGViaWFuLSIKKyJSZXZpc2lvbj4gZ2lidCwgc2luZCBCaW5kZXN0cmljaGUgbmljaHQgZXJsYXVidDsgZmFsbHMgZXMga2VpbmUgSTxFcG9jaGU+ICIKKyJnaWJ0LCBzaW5kIERvcHBlbHB1bmt0ZSBuaWNodCBlcmxhdWJ0LiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi12ZXJzaW9uLjU6NDgKKyMsIG5vLXdyYXAKK21zZ2lkICJJPGRlYmlhbi1yZXZpc2lvbj4iCittc2dzdHIgIkk8RGViaWFuLVJldmlzaW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNTo1NworbXNnaWQgIiIKKyJUaGlzIHBhcnQgb2YgdGhlIHZlcnNpb24gbnVtYmVyIHNwZWNpZmllcyB0aGUgdmVyc2lvbiBvZiB0aGUgRGViaWFuIHBhY2thZ2UgIgorImJhc2VkIG9uIHRoZSB1cHN0cmVhbSB2ZXJzaW9uLiAgSXQgbWF5IGNvbnRhaW4gb25seSBhbHBoYW51bWVyaWNzIGFuZCB0aGUgIgorImNoYXJhY3RlcnMgQjwrPiBCPC4+IEI8fj4gKHBsdXMsIGZ1bGwgc3RvcCwgdGlsZGUpIGFuZCBpcyBjb21wYXJlZCBpbiB0aGUgIgorInNhbWUgd2F5IGFzIHRoZSBJPHVwc3RyZWFtLXZlcnNpb24+IGlzLiIKK21zZ3N0ciAiIgorIkRpZXNlciBUZWlsIGRlciBWZXJzaW9uc251bW1lciBzcGV6aWZpemllcnQgZGllIFZlcnNpb24gZGVzIERlYmlhbi1QYWtldGVzLCAiCisiYmFzaWVyZW5kIGF1ZiBkZXIgVmVyc2lvbiBkZXIgT3JpZ2luYWxhdXRvcmVuLiBFciBrYW5uIG51ciBhbHBoYW51bWVyaXNjaGUgIgorIlplaWNoZW4gdW5kIEI8Kz4gQjwuPiBCPH4+IChQbHVzLCBTYXR6cHVua3QsIFRpbGRlKSBlbnRoYWx0ZW4gdW5kIHdpcmQgIgorImdlbmF1c28gd2llIGRpZSBJPFVwc3RyZWFtLVZlcnNpb24+IHZlcmdsaWNoZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjY0Cittc2dpZCAiIgorIkl0IGlzIG9wdGlvbmFsOyBpZiBpdCBpc24ndCBwcmVzZW50IHRoZW4gdGhlIEk8dXBzdHJlYW0tdmVyc2lvbj4gbWF5IG5vdCAiCisiY29udGFpbiBhIGh5cGhlbi4gIFRoaXMgZm9ybWF0IHJlcHJlc2VudHMgdGhlIGNhc2Ugd2hlcmUgYSBwaWVjZSBvZiBzb2Z0d2FyZSAiCisid2FzIHdyaXR0ZW4gc3BlY2lmaWNhbGx5IHRvIGJlIHR1cm5lZCBpbnRvIGEgRGViaWFuIHBhY2thZ2UsIGFuZCBzbyB0aGVyZSBpcyAiCisib25seSBvbmUgXCJkZWJpYW5pc2F0aW9uXCIgb2YgaXQgYW5kIHRoZXJlZm9yZSBubyByZXZpc2lvbiBpbmRpY2F0aW9uIGlzICIKKyJyZXF1aXJlZC4iCittc2dzdHIgIiIKKyJEaWVzZXIgVGVpbCBpc3Qgb3B0aW9uYWw7IGZhbGxzIGVyIG5pY2h0IHZvcmhhbmRlbiBpc3QsIGRhcmYgSTxVcHN0cmVhbS0iCisiVmVyc2lvbj4ga2VpbmVuIEJpbmRlc3RyaWNoIGVudGhhbHRlbi4gRGllc2VzIEZvcm1hdCBpc3QgZsO8ciBkZW4gRmFsbCwgZGFzcyAiCisiZWluIFN0w7xjayBTb2Z0d2FyZSBzcGV6aWVsbCBkYWbDvHIgZ2VzY2hyaWViZW4gd3VyZGUsIGVpbiBEZWJpYW4tUGFrZXQgenUgIgorIndlcmRlbiB1bmQgZXMgZGFoZXIgbnVyIGVpbmUgwrtEZWJpYW5pc2llcnVuZ8KrIGdpYnQgdW5kIHNvbWl0IGtlaW5lICIKKyJSZXZpc2lvbnNhbnplaWdlIG5vdHdlbmRpZyBpc3QuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjY4Cittc2dpZCAiIgorIkl0IGlzIGNvbnZlbnRpb25hbCB0byByZXN0YXJ0IHRoZSBJPGRlYmlhbi1yZXZpc2lvbj4gYXQgJzEnIGVhY2ggdGltZSB0aW1lICIKKyJ0aGUgSTx1cHN0cmVhbS12ZXJzaW9uPiBpcyBpbmNyZWFzZWQuIgorbXNnc3RyICIiCisiRXMgaXN0IMO8YmxpY2gsIGRpZSBJPERlYmlhbi1SZXZpc2lvbj4gamVkZXNtYWwgYmVpIMK7McKrIG5ldSB6dSBzdGFydGVuLCB3ZW5uICIKKyJkaWUgSTxVcHN0cmVhbS1WZXJzaW9uPiBlcmjDtmh0IHdpcmQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41Ojc2Cittc2dpZCAiIgorIkRwa2cgd2lsbCBicmVhayB0aGUgdmVyc2lvbiBudW1iZXIgYXBhcnQgYXQgdGhlIGxhc3QgaHlwaGVuIGluIHRoZSBzdHJpbmcgIgorIihpZiB0aGVyZSBpcyBvbmUpIHRvIGRldGVybWluZSB0aGUgSTx1cHN0cmVhbS12ZXJzaW9uPiBhbmQgSTxkZWJpYW4tIgorInJldmlzaW9uPi4gVGhlIGFic2VuY2Ugb2YgYSBJPGRlYmlhbi1yZXZpc2lvbj4gY29tcGFyZXMgZWFybGllciB0aGFuIHRoZSAiCisicHJlc2VuY2Ugb2Ygb25lIChidXQgbm90ZSB0aGF0IHRoZSBJPGRlYmlhbi1yZXZpc2lvbj4gaXMgdGhlIGxlYXN0ICIKKyJzaWduaWZpY2FudCBwYXJ0IG9mIHRoZSB2ZXJzaW9uIG51bWJlcikuIgorbXNnc3RyICIiCisiRHBrZyB3aXJkIGRpZSBWZXJzaW9uc251bW1lciBiZWltIGxldHp0ZW4gQmluZGVzdHJpY2ggaW4gZGVyIFplaWNoZW5rZXR0ZSAiCisiYXVmdHJlbm5lbiAoZmFsbHMgZGllc2VyIGV4aXN0aWVydCkgdW0gZGllIEk8VXBzdHJlYW0tVmVyc2lvbj4gdW5kIGRpZSAiCisiSTxEZWJpYW4tUmV2aXNpb24+IHp1IGJlc3RpbW1lbi4gSW0gVmVyZ2xlaWNoIGJlZmluZGV0IHNpY2ggZWluZSBmZWhsZW5kZSAiCisiSTxEZWJpYW4tUmV2aXNpb24+IHZvciBlaW5lciB2b3JoYW5kZW5lbiAoYmVhY2h0ZW4gU2llIGFiZXIsIGRhc3MgZXMgc2ljaCAiCisiYmVpIGRlciBJPERlYmlhbi1SZXZpc2lvbj4gdW0gZGVuIFRlaWwgZGVyIFZlcnNpb25zbnVtbWVyIG1pdCBkZXIgZ2VyaW5nc3RlbiAiCisiU2lnbmlmaWthbnogaGFuZGVsdCkuIgorCisjLiB0eXBlOiBTUworIzogZGViLXZlcnNpb24uNTo3NgorIywgbm8td3JhcAorbXNnaWQgIlNvcnRpbmcgQWxnb3JpdGhtIgorbXNnc3RyICJTb3J0aWVyYWxnb3JpdGhtdXMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6ODAKK21zZ2lkICIiCisiVGhlIEk8dXBzdHJlYW0tdmVyc2lvbj4gYW5kIEk8ZGViaWFuLXJldmlzaW9uPiBwYXJ0cyBhcmUgY29tcGFyZWQgYnkgdGhlICIKKyJwYWNrYWdlIG1hbmFnZW1lbnQgc3lzdGVtIHVzaW5nIHRoZSBzYW1lIGFsZ29yaXRobToiCittc2dzdHIgIiIKKyJEaWUgSTxVcHN0cmVhbS1WZXJzaW9uPi0gdW5kIEk8RGViaWFuLVJldmlzaW9uPi1UZWlsZSB3ZXJkZW4gdm9uIGRlciAiCisiUGFrZXR2ZXJ3YWx0dW5nIG5hY2ggZGVtIGdsZWljaGVuIEFsZ29yaXRobXVzIHZlcmdsaWNoZW46IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjgyCittc2dpZCAiVGhlIHN0cmluZ3MgYXJlIGNvbXBhcmVkIGZyb20gbGVmdCB0byByaWdodC4iCittc2dzdHIgIkRpZSBaZWljaGVua2V0dGVuIHdlcmRlbiB2b24gbGlua3MgbmFjaCByZWNodHMgdmVyZ2xpY2hlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6OTIKK21zZ2lkICIiCisiRmlyc3QgdGhlIGluaXRpYWwgcGFydCBvZiBlYWNoIHN0cmluZyBjb25zaXN0aW5nIGVudGlyZWx5IG9mIG5vbi1kaWdpdCAiCisiY2hhcmFjdGVycyBpcyBkZXRlcm1pbmVkLiAgVGhlc2UgdHdvIHBhcnRzIChvbmUgb2Ygd2hpY2ggbWF5IGJlIGVtcHR5KSBhcmUgIgorImNvbXBhcmVkIGxleGljYWxseS4gIElmIGEgZGlmZmVyZW5jZSBpcyBmb3VuZCBpdCBpcyByZXR1cm5lZC4gIFRoZSBsZXhpY2FsICIKKyJjb21wYXJpc29uIGlzIGEgY29tcGFyaXNvbiBvZiBBU0NJSSB2YWx1ZXMgbW9kaWZpZWQgc28gdGhhdCBhbGwgdGhlIGxldHRlcnMgIgorInNvcnQgZWFybGllciB0aGFuIGFsbCB0aGUgbm9uLWxldHRlcnMgYW5kIHNvIHRoYXQgYSB0aWxkZSBzb3J0cyBiZWZvcmUgIgorImFueXRoaW5nLCBldmVuIHRoZSBlbmQgb2YgYSBwYXJ0LiAgRm9yIGV4YW1wbGUsIHRoZSBmb2xsb3dpbmcgcGFydHMgYXJlIGluICIKKyJzb3J0ZWQgb3JkZXI6ICd+ficsICd+fmEnLCAnficsIHRoZSBlbXB0eSBwYXJ0LCAnYScuIgorbXNnc3RyICIiCisiWnVlcnN0IHdpcmQgZGVyIEFuZmFuZ3N0ZWlsIGplZGVyIFplaWNoZW5rZXR0ZSBiZXN0aW1tdCwgZGVyIGtvbXBsZXR0IGF1cyAiCisibmljaHQtWmlmZmVybi1aZWljaGVuIGJlc3RlaHQuIERpZXNlIHp3ZWkgVGVpbGUgKHZvbiBkZW5lbiBlaW5lciBsZWVyIHNlaW4gIgorImthbm4pIHdlcmRlbiBsZXhpa2FsaXNjaCB2ZXJnbGljaGVuLiBXaXJkIGVpbiBVbnRlcnNjaGllZCBnZWZ1bmRlbiwgd2lyZCAiCisiZGllc2VyIHp1csO8Y2tnZWxpZWZlcnQuIERlciBsZXhpa2FsaXNjaGUgVmVyZ2xlaWNoIGlzdCBlaW4gdmVyw6RuZGVydGVyICIKKyJWZXJnbGVpY2ggdm9uIEFTQ0lJLVdlcnRlbiwgYmVpIGRlbmVuIEJ1Y2hzdGFiZW4gdm9yIGFsbGVuIG5pY2h0LUJ1Y2hzdGFiZW4gIgorInNvcnRpZXJ0IHdlcmRlbiB1bmQgZGllIFRpbGRlIHZvciBhbGxlbSBzb3J0aWVydCB3aXJkLCBzb2dhciB2b3IgZGVtIEVuZGUgIgorImVpbmVzIFRlaWxlcy4gU28gc2luZCB6dW0gQmVpc3BpZWwgZGllIGZvbGdlbmRlbiBUZWlsZSBpbiBzb3J0aWVydGVyICIKKyJSZWloZW5mb2xnZTogwrt+fsKrLCDCu35+YcKrLCDCu37CqywgZGVyIGxlZXJlIFRlaWwsIMK7YcKrLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNToxMDAKK21zZ2lkICIiCisiVGhlbiB0aGUgaW5pdGlhbCBwYXJ0IG9mIHRoZSByZW1haW5kZXIgb2YgZWFjaCBzdHJpbmcgd2hpY2ggY29uc2lzdHMgIgorImVudGlyZWx5IG9mIGRpZ2l0IGNoYXJhY3RlcnMgaXMgZGV0ZXJtaW5lZC4gIFRoZSBudW1lcmljYWwgdmFsdWVzIG9mIHRoZXNlICIKKyJ0d28gcGFydHMgYXJlIGNvbXBhcmVkLCBhbmQgYW55IGRpZmZlcmVuY2UgZm91bmQgaXMgcmV0dXJuZWQgYXMgdGhlIHJlc3VsdCAiCisib2YgdGhlIGNvbXBhcmlzb24uICBGb3IgdGhlc2UgcHVycG9zZXMgYW4gZW1wdHkgc3RyaW5nICh3aGljaCBjYW4gb25seSBvY2N1ciAiCisiYXQgdGhlIGVuZCBvZiBvbmUgb3IgYm90aCB2ZXJzaW9uIHN0cmluZ3MgYmVpbmcgY29tcGFyZWQpIGNvdW50cyBhcyB6ZXJvLiIKK21zZ3N0ciAiIgorIkRhbm4gd2lyZCBkZXIgQW5mYW5nc3RlaWwgZGVzIFJlc3RlcyBqZWRlciBaZWljaGVua2V0dGUgYmVzdGltbXQsIGRlciAiCisia29tcGxldHQgYXVzIFppZmZlcm4gYmVzdGVodC4gRGVyIG51bWVyaXNjaGUgV2VydCBkaWVzZXIgendlaSBUZWlsZSB3aXJkICIKKyJ2ZXJnbGljaGVuLCB1bmQgamVkZXIgZ2VmdW5kZW5lIFVudGVyc2NoaWVkIHdpcmQgYWxzIEVyZ2VibmlzIGRlcyBWZXJnbGVpY2hzICIKKyJ6dXLDvGNrZ2VsaWVmZXJ0LiBGw7xyIGRpZXNlbiBad2VjayB6w6RobHQgZGllIGxlZXJlIFplaWNoZW5rZXR0ZSAoZGllIG51ciBhbSAiCisiRW5kZSBlaW5lciBvZGVyIGJlaWRlciBkZXIgenUgdmVyZ2xlaWNoZW5kZW4gVmVyc2lvbnN6ZWljaGVua2V0dGVuICIKKyJhdWZ0YXVjaGVuIGthbm4pIGFscyBOdWxsLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNToxMDQKK21zZ2lkICIiCisiVGhlc2UgdHdvIHN0ZXBzIChjb21wYXJpbmcgYW5kIHJlbW92aW5nIGluaXRpYWwgbm9uLWRpZ2l0IHN0cmluZ3MgYW5kICIKKyJpbml0aWFsIGRpZ2l0IHN0cmluZ3MpIGFyZSByZXBlYXRlZCB1bnRpbCBhIGRpZmZlcmVuY2UgaXMgZm91bmQgb3IgYm90aCAiCisic3RyaW5ncyBhcmUgZXhoYXVzdGVkLiIKK21zZ3N0ciAiIgorIkRpZXNlIHp3ZWkgU2Nocml0dGUgKFZlcmdsZWljaGVuIHVuZCBFbnRmZXJuZW4gdm9uIG5pY2h0LVppZmZlcm4tIgorIlplaWNoZW5rZXR0ZW4gdW5kIFppZmZlcm4tWmVpY2hlbmtldHRlbiBhbSBBbmZhbmcpIHdlcmRlbiB3aWVkZXJob2x0LCBiaXMgIgorImVpbiBVbnRlcnNjaGllZCBnZWZ1bmRlbiB3aXJkIG9kZXIgYmVpZGUgWmVpY2hlbmtldHRlbiBlcnNjaMO2cGZ0IHd1cmRlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6MTEyCittc2dpZCAiIgorIk5vdGUgdGhhdCB0aGUgcHVycG9zZSBvZiBlcG9jaHMgaXMgdG8gYWxsb3cgdXMgdG8gbGVhdmUgYmVoaW5kIG1pc3Rha2VzIGluICIKKyJ2ZXJzaW9uIG51bWJlcmluZywgYW5kIHRvIGNvcGUgd2l0aCBzaXR1YXRpb25zIHdoZXJlIHRoZSB2ZXJzaW9uIG51bWJlcmluZyAiCisic2NoZW1lIGNoYW5nZXMuICBJdCBpcyBCPG5vdD4gaW50ZW5kZWQgdG8gY29wZSB3aXRoIHZlcnNpb24gbnVtYmVycyAiCisiY29udGFpbmluZyBzdHJpbmdzIG9mIGxldHRlcnMgd2hpY2ggdGhlIHBhY2thZ2UgbWFuYWdlbWVudCBzeXN0ZW0gY2Fubm90ICIKKyJpbnRlcnByZXQgKHN1Y2ggYXMgJ0FMUEhBJyBvciAncHJlLScpLCBvciB3aXRoIHNpbGx5IG9yZGVyaW5ncy4iCittc2dzdHIgIiIKKyJCZWFjaHRlbiBTaWUsIGRhc3MgRXBvY2hlbiB1bnMgZXJsYXViZW4sIEZlaGxlciBpbiBkZXIgVmVyc2lvbnNudW1tZXJpZXJ1bmcgIgorInp1csO8Y2t6dWxhc3NlbiwgdW5kIG1pdCBTaXR1YXRpb25lbiB1bXp1Z2VoZW4sIGluIGRlbmVuIHNpY2ggZGFzIFNjaGVtYSBkZXIgIgorIlZlcnNpb25zbnVtbWVyaWVydW5nIMOkbmRlcnQuIFNpZSBzaW5kIEI8bmljaHQ+IGRhenUgZ2VkYWNodCwgbWl0ICIKKyJWZXJzaW9uc251bW1lcm4gdW16dWdlaGVuLCBkaWUgWmVpY2hlbmtldHRlbiBhdXMgQnVjaHN0YWJlbiBlbnRoYWx0ZW4sIGRpZSAiCisiZGFzIFBha2V0dmVyd2FsdHVuZ3NzeXN0ZW0gbmljaHQgaW50ZXJwcmV0aWVyZW4ga2FubiAod2llIMK7QUxQSEHCqyBvZGVyICIKKyLCu3ByZcKrKSBvZGVyIG1pdCB1bmtsdWdlbiBSZWloZW5mb2xnZW4uIgorCisjLiB0eXBlOiBTSAorIzogZGViLXZlcnNpb24uNToxMTIgZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjEwOQorIywgbm8td3JhcAorbXNnaWQgIkNBVkVBVFMiCittc2dzdHIgIldBUk5VTkciCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6MTE2Cittc2dpZCAiIgorIlRoZSB0aWxkZSBjaGFyYWN0ZXIgYW5kIGl0cyBzcGVjaWFsIHNvcnRpbmcgcHJvcGVydGllcyB3ZXJlIGludHJvZHVjZWQgaW4gIgorImRwa2csIHZlcnNpb24gMS4xMCBhbmQgc29tZSBwYXJ0cyBvZiBkcGtnLWRldiBvbmx5IGdhaW5lZCBzdXBwb3J0IGZvciBpdCAiCisibGF0ZXIgaW4gdGhlIDEuMTAueCBzZXJpZXMuIgorbXNnc3RyICIiCisiRGFzIFRpbGRlLVplaWNoZW4gdW5zIHNlaW5lIHNwZXppZWxsZW4gU29ydGllcmVpZ2Vuc2NoYWZ0ZW4gd3VyZGVuIGluICIKKyJWZXJzaW9uIDEuMTAgdm9uIGRwa2cgZWluZ2Vmw7xocnQgdW5kIGVpbmlnZSBUZWlsZSB2b24gZHBrZy1kZXYgaGFiZW4gZXJzdCAiCisic3DDpHRlciBpbiBkZXIgMS4xMC54LVNlcmllIFVudGVyc3TDvHR6dW5nIGRhZsO8ciBlcmhhbHRlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6MTIwCittc2dpZCAiQjxkZWItY29udHJvbD4oNSksIEI8ZGViPig1KSwgQjxkcGtnPigxKSIKK21zZ3N0ciAiQjxkZWItY29udHJvbD4oNSksIEI8ZGViPig1KSwgQjxkcGtnPigxKSIKKworIy4gdHlwZTogU0gKKyM6IGRlYi12ZXJzaW9uLjU6MTIwIGRwa2cuMTo3ODMgZHBrZy1idWlsZHBhY2thZ2UuMToyNTcgZHBrZy1kaXN0YWRkZmlsZS4xOjQ3CisjOiBkcGtnLWdlbmNoYW5nZXMuMToxNDggZHBrZy1nZW5jb250cm9sLjE6MTQyIGRwa2ctZ2Vuc3ltYm9scy4xOjQ2MAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxMjggZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjEyMworIzogZHBrZy1zaGxpYmRlcHMuMTozMjkgZHBrZy1zb3VyY2UuMTo3MzAgZHNlbGVjdC4xOjQ1MQorIzogc3RhcnQtc3RvcC1kYWVtb24uODozMjMgdXBkYXRlLWFsdGVybmF0aXZlcy44OjQ5NAorIywgbm8td3JhcAorbXNnaWQgIkFVVEhPUlMiCittc2dzdHIgIkFVVE9SRU4iCisKKyMgS29kaWVydW5nIGlzdCBoaWVyIG5pY2h0IHJpY2h0aWchCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjEyMgorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAxOTk2LDE5OTcsMTk5OCBJYW4gSmFja3NvbiBhbmQgQ2hyaXN0aWFuIFNjaHdhcnoiCittc2dzdHIgIkNvcHlyaWdodCBcXChjbyAxOTk2LDE5OTcsMTk5OCBJYW4gSmFja3NvbiBhbmQgQ2hyaXN0aWFuIFNjaHdhcnoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6MTI0IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjYzCittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMDcgRnJhbmsgTGljaHRlbmhlbGQiCittc2dzdHIgIkNvcHlyaWdodCBcXChjbyAyMDA3IEZyYW5rIExpY2h0ZW5oZWxkIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjEyNiBkZWItc3Vic3R2YXJzLjU6MTY3IGRwa2ctYnVpbGRmbGFncy4xOjI3MworIzogZHBrZy1idWlsZHBhY2thZ2UuMToyNjcgZHBrZy1jaGVja2J1aWxkZGVwcy4xOjQ0IGRwa2ctZGlzdGFkZGZpbGUuMTo1MworIzogZHBrZy1kZWIuMToyNjkgZHBrZy1kaXZlcnQuODoxMzkgZHBrZy1nZW5jaGFuZ2VzLjE6MTU0CisjOiBkcGtnLWdlbmNvbnRyb2wuMToxNTAgZHBrZy1nZW5zeW1ib2xzLjE6NDY0IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MTM5CisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjcxIGRwa2ctbmFtZS4xOjEwOCBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTMxCisjOiBkcGtnLXF1ZXJ5LjE6MjE5IGRwa2ctc2hsaWJkZXBzLjE6MzM5IGRwa2ctc291cmNlLjE6NzM4IGRwa2ctc3BsaXQuMToyMjcKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6OTEgZHBrZy12ZW5kb3IuMTo1MyB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NTAxCittc2dpZCAiIgorIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSB2ZXJzaW9uIDIgb3IgbGF0ZXIgIgorImZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIFdBUlJBTlRZLiIKK21zZ3N0ciAiIgorIkRpZXMgaXN0IEZyZWllIFNvZnR3YXJlOyBsZXNlbiBTaWUgZGllIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIFZlcnNpb24gMiAiCisib2RlciBuZXVlciBmw7xyIGRpZSBLb3BpZXJiZWRpbmd1bmdlbi4gRXMgZ2lidCBLRUlORSBIYWZ0dW5nLiIKKworIy4gdHlwZTogVEgKKyM6IGRlYi1vbGQuNToxCisjLCBuby13cmFwCittc2dpZCAiZGViLW9sZCIKK21zZ3N0ciAiZGViLW9sZCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW9sZC41OjQKK21zZ2lkICJkZWItb2xkIC0gb2xkIHN0eWxlIERlYmlhbiBiaW5hcnkgcGFja2FnZSBmb3JtYXQiCittc2dzdHIgImRlYi1vbGQgLSBEZWJpYW4gQmluw6RycGFrZXRmb3JtYXQgaW4gYWx0ZXIgQXVzZsO8aHJ1bmciCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vbGQuNToxNworbXNnaWQgIiIKKyJUaGUgQjwuZGViPiBmb3JtYXQgaXMgdGhlIERlYmlhbiBiaW5hcnkgcGFja2FnZSBmaWxlIGZvcm1hdC4gVGhpcyBtYW51YWwgIgorInBhZ2UgZGVzY3JpYmVzIHRoZSBCPG9sZD4gZm9ybWF0LCB1c2VkIGJlZm9yZSBEZWJpYW4gMC45My4gUGxlYXNlIHNlZSBCPGRlYj4iCisiKDUpICBmb3IgZGV0YWlscyBvZiB0aGUgbmV3IGZvcm1hdC4iCittc2dzdHIgIiIKKyJEYXMgQjwuZGViPi1Gb3JtYXQgaXN0IGRhcyBEZWJpYW4gQmluw6RycGFrZXRkYXRlaWZvcm1hdC4gRGllc2UgSGFuZGJ1Y2hzZWl0ZSAiCisiYmVzY2hyZWlidCBkYXMgQjxhbHRlPiBGb3JtYXQsIGRhcyB2b3IgRGViaWFuIDAuOTMgdmVyd2VuZGV0IHd1cmRlLiBCaXR0ZSAiCisibGVzZW4gU2llIEI8ZGViPig1KSBmw7xyIERldGFpbHMgw7xiZXIgZGFzIG5ldWUgRm9ybWF0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW9sZC41OjIxCittc2dpZCAiIgorIlRoZSBmaWxlIGlzIHR3byBsaW5lcyBvZiBmb3JtYXQgaW5mb3JtYXRpb24gYXMgQVNDSUkgdGV4dCwgZm9sbG93ZWQgYnkgdHdvICIKKyJjb25jYXRlbmF0ZWQgZ3ppcHBlZCB1c3RhciBmaWxlcy4iCittc2dzdHIgIiIKKyJEaWUgRGF0ZWkgYmVzdGVodCBhdXMgendlaSBaZWlsZW4gYW4gRm9ybWF0aW5mb3JtYXRpb25lbiBhbHMgQVNDSUktVGV4dCwgIgorImdlZm9sZ3Qgdm9uIHp3ZWkgYW5laW5hbmRlcmdlaMOkbmd0ZW4gdXN0YXItRGF0ZWllbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vbGQuNToyNQorbXNnaWQgIiIKKyJUaGUgZmlyc3QgbGluZSBpcyB0aGUgZm9ybWF0IHZlcnNpb24gbnVtYmVyIHBhZGRlZCB0byA4IGRpZ2l0cywgYW5kIGlzICIKKyJCPDAuOTM5MDAwPiBmb3IgYWxsIG9sZC1mb3JtYXQgYXJjaGl2ZXMuIgorbXNnc3RyICIiCisiRGllIGVyc3RlIFplaWxlIGlzdCBkaWUgRm9ybWF0dmVyc2lvbnNudW1tZXIsIGF1ZmdlZsO8bGx0IGF1ZiA4IFN0ZWxsZW4sIHVuZCAiCisiaXN0IEI8MC45MzkwMDA+IGbDvHIgYWxsZSBBcmNoaXZlIGltIGFsdGVuIEZvcm1hdC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vbGQuNToyOAorbXNnaWQgIiIKKyJUaGUgc2Vjb25kIGxpbmUgaXMgYSBkZWNpbWFsIHN0cmluZyAod2l0aG91dCBsZWFkaW5nIHplcm9lcykgZ2l2aW5nIHRoZSAiCisibGVuZ3RoIG9mIHRoZSBmaXJzdCBnemlwcGVkIHRhcmZpbGUuIgorbXNnc3RyICIiCisiRGllIHp3ZWl0ZSBaZWlsZSBpc3QgZWluZSBkZXppbWFsZSBaZWljaGVua2V0dGUgKG9obmUgZsO8aHJlbmRlIE51bGxlbiksIGRpZSAiCisiZGllIEzDpG5nZSBkZXIgZXJzdGVuIGd6aXBwdGVuIFRhci1EYXRlaSBhbmdpYnQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb2xkLjU6MzAKK21zZ2lkICJFYWNoIG9mIHRoZXNlIGxpbmVzIGlzIHRlcm1pbmF0ZWQgd2l0aCBhIHNpbmdsZSBuZXdsaW5lIGNoYXJhY3Rlci4iCittc2dzdHIgIiIKKyJKZWRlIGRpZXNlciBaZWlsZW4gd2lyZCBkdXJjaCBlaW4gZWluemVsbmVzIFplaWxlbnZvcnNjaHViemVpY2hlbiAiCisiYWJnZXNjaGxvc3Nlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vbGQuNTozNQorbXNnaWQgIiIKKyJUaGUgZmlyc3QgdGFyZmlsZSBjb250YWlucyB0aGUgY29udHJvbCBpbmZvcm1hdGlvbiwgYXMgYSBzZXJpZXMgb2Ygb3JkaW5hcnkgIgorImZpbGVzLiBUaGUgZmlsZSBCPGNvbnRyb2w+IG11c3QgYmUgcHJlc2VudCwgYXMgaXQgY29udGFpbnMgdGhlIGNvcmUgY29udHJvbCAiCisiaW5mb3JtYXRpb24uIgorbXNnc3RyICIiCisiRGllIGVyc3RlIFRhci1EYXRlaSBlbnRow6RsdCBkaWUgU3RldWVyaW5mb3JtYXRpb25lbiBhbHMgZWluZSBTZXJpZSB2b24gIgorIm5vcm1hbGVuIERhdGVpZW4uIERpZSBEYXRlaSBCPGNvbnRyb2w+IG11c3Mgdm9yaGFuZGVuIHNlaW4sIGRhIHNpZSBkaWUgS2Vybi0iCisiU3RldWVyaW5mb3JtYXRpb25lbiBlbnRow6RsdC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vbGQuNTo0NgorbXNnaWQgIiIKKyJJbiBzb21lIHZlcnkgb2xkIGFyY2hpdmVzLCB0aGUgZmlsZXMgaW4gdGhlIGNvbnRyb2wgdGFyZmlsZSBtYXkgb3B0aW9uYWxseSAiCisiYmUgaW4gYSBCPERFQklBTj4gc3ViZGlyZWN0b3J5LiBJbiB0aGF0IGNhc2UsIHRoZSBCPERFQklBTj4gc3ViZGlyZWN0b3J5ICIKKyJ3aWxsIGJlIGluIHRoZSBjb250cm9sIHRhcmZpbGUgdG9vLCBhbmQgdGhlIGNvbnRyb2wgdGFyZmlsZSB3aWxsIGhhdmUgb25seSAiCisiZmlsZXMgaW4gdGhhdCBkaXJlY3RvcnkuIE9wdGlvbmFsbHkgdGhlIGNvbnRyb2wgdGFyZmlsZSBtYXkgY29udGFpbiBhbiBlbnRyeSAiCisiZm9yIGBCPC4+JywgdGhhdCBpcywgdGhlIGN1cnJlbnQgZGlyZWN0b3J5LiIKK21zZ3N0ciAiIgorIkluIGVpbmlnZW4gc2VociBhbHRlbiBBcmNoaXZlbiBrw7ZubmVuIGRpZSBEYXRlaWVuIGluIGRlciBTdGV1ZXItVGFyLURhdGVpICIKKyJvcHRpb25hbCBpbiBlaW5lbSBCPERFQklBTj4tVW50ZXJ2ZXJ6ZWljaG5pcyBzZWluLiBJbiBkaWVzZW0gRmFsbCBpc3QgZGFzICIKKyJCPERFQklBTj4tVW50ZXJ2ZXJ6ZWljaG5pcyBhdWNoIGluIGRlciBTdGV1ZXItVGFyLURhdGVpLCB1bmQgZGllIFN0ZXVlci1UYXItIgorIkRhdGVpIGhhdCBudXIgRGF0ZWllbiBpbiBkaWVzZW0gVmVyemVpY2huaXMuIE9wdGlvbmFsIGthbm4gZGllIFN0ZXVlci1UYXItIgorIkRhdGVpIGVpbmVuIEVpbnRyYWcgZsO8ciDCu0I8Lj7CqyBlbnRoYWx0ZW4sIGQuaC4gZsO8ciBkYXMgYWt0dWVsbGUgVmVyemVpY2huaXMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb2xkLjU6NTAKK21zZ2lkICIiCisiVGhlIHNlY29uZCBnemlwcGVkIHRhcmZpbGUgaXMgdGhlIGZpbGVzeXN0ZW0gYXJjaGl2ZSwgY29udGFpbmluZyBwYXRobmFtZXMgIgorInJlbGF0aXZlIHRvIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGUgc3lzdGVtIHRvIGJlIGluc3RhbGxlZCBvbi4gVGhlICIKKyJwYXRobmFtZXMgZG8gbm90IGhhdmUgbGVhZGluZyBzbGFzaGVzLiIKK21zZ3N0ciAiIgorIkRpZSB6d2VpdGUgZ3ppcHB0ZSBUYXItRGF0ZWkgaXN0IGRhcyBEYXRlaXN5c3RlbWFyY2hpdiwgZGFzIFBmYWRuYW1lbiAiCisicmVsYXRpdiB6dW0gV3VyemVsdmVyemVpY2huaXMgZGVzIFN5c3RlbSwgYXVmIGRlbSBpbnN0YWxsaWVydCB3ZXJkZW4gc29sbCwgIgorImVudGjDpGx0LiBEaWUgUGZhZG5hbWVuIGhhYmVuIGtlaW5lIGbDvGhyZW5kZW4gU2NocsOkZ3N0cmljaGUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb2xkLjU6NTQKK21zZ2lkICJCPGRlYj4oNSksIEI8ZHBrZy1kZWI+KDEpLCBCPGRlYi1jb250cm9sPig1KS4iCittc2dzdHIgIkI8ZGViPig1KSwgQjxkcGtnLWRlYj4oMSksIEI8ZGViLWNvbnRyb2w+KDUpLiIKKworIy4gdHlwZTogVEgKKyM6IGRlYi1vdmVycmlkZS41OjE1CisjLCBuby13cmFwCittc2dpZCAiZGViLW92ZXJyaWRlIgorbXNnc3RyICJkZWItb3ZlcnJpZGUiCisKKyMuIHR5cGU6IFRICisjOiBkZWItb3ZlcnJpZGUuNToxNSBkZWItZXh0cmEtb3ZlcnJpZGUuNToxIGRlYi1zaGxpYnMuNToxNiBkZWItc3Vic3R2YXJzLjU6MgorIzogZGViLXN5bWJvbHMuNToyIGRlYi10cmlnZ2Vycy41OjEgZHBrZy1hcmNoaXRlY3R1cmUuMToxCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEgZHBrZy1jaGVja2J1aWxkZGVwcy4xOjEgZHBrZy1kaXN0YWRkZmlsZS4xOjEKKyM6IGRwa2ctZGl2ZXJ0Ljg6MSBkcGtnLWdlbmNoYW5nZXMuMToxIGRwa2ctZ2VuY29udHJvbC4xOjEgZHBrZy1nZW5zeW1ib2xzLjE6MgorIzogZHBrZy1uYW1lLjE6NiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MSBkcGtnLXNjYW5wYWNrYWdlcy4xOjE1CisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6MSBkcGtnLXNobGliZGVwcy4xOjEgZHBrZy1zb3VyY2UuMToyIGRwa2ctc3BsaXQuMToyCisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjEgc3RhcnQtc3RvcC1kYWVtb24uODoxIHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo4CisjLCBuby13cmFwCittc2dpZCAiZHBrZyB1dGlsaXRpZXMiCittc2dzdHIgImRwa2ctSGlsZnNwcm9ncmFtbWUiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vdmVycmlkZS41OjE4Cittc2dpZCAiZGViLW92ZXJyaWRlIC0gRGViaWFuIGFyY2hpdmUgb3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiZGViLW92ZXJyaWRlIC0gRGViaWFuLUFyY2hpdmUgb3ZlcnJpZGUtRGF0ZWkiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vdmVycmlkZS41OjIxIGRlYi1leHRyYS1vdmVycmlkZS41OjcKK21zZ2lkICJvdmVycmlkZSIKK21zZ3N0ciAib3ZlcnJpZGUiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vdmVycmlkZS41OjI3Cittc2dpZCAiIgorIldoaWxlIG1vc3QgaW5mb3JtYXRpb24gYWJvdXQgYSBwYWNrYWdlIGNhbiBiZSBmb3VuZCBpbiB0aGUgY29udHJvbCBmaWxlLCAiCisic29tZSBpcyBtYW5hZ2VkIGNlbnRyYWxseSBieSB0aGUgZGlzdHJpYnV0aW9uIGN6YXJzIHJhdGhlciB0aGFuIGJ5IHRoZSAiCisibWFpbnRhaW5lciBpbiBvcmRlciB0byBvZmZlciBzb21lIGdsb2JhbCBjb25zaXN0ZW5jeS4gIFRoaXMgaW5mb3JtYXRpb24gaXMgIgorImZvdW5kIGluIHRoZSBvdmVycmlkZSBmaWxlLiIKK21zZ3N0ciAiIgorIlfDpGhyZW5kIGRlciBHcm/Dn3RlaWwgZGVyIEluZm9ybWF0aW9uZW4gw7xiZXIgZWluIFBha2V0IGluIGRlciBTdGV1ZXJkYXRlaSAiCisiZ2VmdW5kZW4gd2VyZGVuIGthbm4sIHdpcmQgZWluIFRlaWwgdm9uIGRlbiBEaXN0cmlidXRpb25zemFyZW4gemVudHJhbCBzdGF0dCAiCisidm9uIGRlbiBCZXRyZXVlcm4gdmVyd2FsdGV0LCB1bSBlaW5lIGdld2lzc2UgZ2xvYmFlbCBLb25zaXN0ZW56IHp1IGJpZXRlbi4gIgorIkRpZXNlIEluZm9ybWF0aW9uZW4gZmluZGVuIHNpY2ggaW4gZGVyIG92ZXJyaWRlLURhdGVpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW92ZXJyaWRlLjU6MzEKK21zZ2lkICIiCisiVGhlIG92ZXJyaWRlIGZpbGUgaGFzIGEgc2ltcGxlIHdoaXRlc3BhY2UtZGVsaW1pdGVkIGZvcm1hdC4gQ29tbWVudHMgYXJlICIKKyJhbGxvd2VkIChkZW5vdGVkIHdpdGggYSBCPCM+KS4iCittc2dzdHIgIiIKKyJEaWUgb3ZlcnJpZGUtRGF0ZWkgaGF0IGVpbiBlaW5mYWNoZXMsIGR1cmNoIExlZXJ6ZWljaGVuIGdldHJlbm50ZXMgRm9ybWF0LiAiCisiS29tbWVudGFyZSBzaW5kIGVybGF1YnQgKGFuZ2V6ZWlndCBkdXJjaCBlaW4gQjwjPikuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb3ZlcnJpZGUuNTozNworbXNnaWQgIkk8cGFja2FnZT4gSTxwcmlvcml0eT4gSTxzZWN0aW9uPiBbSTxtYWludGFpbmVyaW5mbz5dIgorbXNnc3RyICJJPFBha2V0PiBJPFByaW9yaXTDpHQ+IEk8QmVyZWljaD4gW0k8QmV0cmV1ZXJpbmZvcm1hdGlvbj5dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb3ZlcnJpZGUuNTo0MgorbXNnaWQgIiIKKyJJPHBhY2thZ2U+IGlzIHRoZSBuYW1lIG9mIHRoZSBwYWNrYWdlLiBFbnRyaWVzIGluIHRoZSBvdmVycmlkZSBmaWxlIGZvciAiCisicGFja2FnZXMgbm90IGZvdW5kIGluIHRoZSB0cmVlIG9mIGJpbmFyeSBwYWNrYWdlcyBhcmUgaWdub3JlZC4iCittc2dzdHIgIiIKKyJJPFBha2V0PiBpc3QgZGVyIE5hbWUgZGVzIFBha2V0cy4gRWludHLDpGdlIGluIGRlciBvdmVycmlkZS1EYXRlaSBmw7xyIFBha2V0ZSwgIgorImRpZSBuaWNodCBpbSBCYXVtIHZvbiBCaW7DpHJwYWtldGVuIGdlZnVuZGVuIHdlcmRlbiBrw7ZubmVuLCB3ZXJkZW4gaWdub3JpZXJ0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW92ZXJyaWRlLjU6NDgKK21zZ2lkICIiCisiSTxwcmlvcml0eT4gYW5kIEk8c2VjdGlvbj4gY29ycmVzcG9uZCB0byB0aGUgcmVzcGVjdGl2ZSBjb250cm9sIGZpZWxkcyAiCisiYXZhaWxhYmxlIGluIHRoZSAuZGViLiBUaGUgYWxsb3dlZCB2YWx1ZXMgYXJlIGxpc3RlZCBpbiB0aGUgRGViaWFuIHBvbGljeS4iCittc2dzdHIgIiIKKyJJPFByaW9yaXTDpHQ+IHVuZCBJPEJlcmVpY2g+IGVudHNwcmVjaGVuIGRlbiBGZWxkZXJuIEk8cHJpb3JpdHk+IHVuZCAiCisiSTxzZWN0aW9uPiBkZXIgU3RldWVyZGF0ZWkgaW4gZGVtIC5kZWIuIERpZSBlcmxhdWJ0ZW4gV2VydGUgd2VyZGVuIGluIGRlbiAiCisiRGViaWFuLVJpY2h0bGluaWVuIChJPERlYmlhbiBwb2xpY3k+KSBhdWZnZWbDvGhydC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vdmVycmlkZS41OjU2Cittc2dpZCAiIgorIkk8bWFpbnRhaW5lcmluZm8+LCBpZiBwcmVzZW50LCBjYW4gYmUgZWl0aGVyIHRoZSBuYW1lIG9mIGEgbWFpbnRhaW5lciBmb3IgYW4gIgorInVuY29uZGl0aW9uYWwgb3ZlcnJpZGUsIG9yIGVsc2UgSTxvbGRtYWludGFpbmVyPiBCPD1FPGd0Pj4gSTxuZXdtYWludGFpbmVyPiAiCisidG8gcGVyZm9ybSBhIHN1YnN0aXR1dGlvbi4iCittc2dzdHIgIiIKKyJJPEJldHJldWVyaW5mb3JtYXRpb24+IGthbm4sIGZhbGxzIHZvcmhhbmRlbiwgZW50d2VkZXIgZGVyIE5hbWUgZGVzICIKKyJCZXRyZXVlcnMgZsO8ciBlaW4gYmVkaW5ndW5nc2xvc2VzIMOcYmVyc2NocmVpYmVuLCBvZGVyIGFuc29uc3RlbiAiCisiSTxBbHRlckJldHJldWVyPiBCPD1FPGd0Pj4gSTxOZXVlckJldHJldWVyPiB1bSBlaW5lIEVyc2V0enVuZyBkdXJjaHp1ZsO8aHJlbiwgIgorInNlaW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb3ZlcnJpZGUuNTo2MQorbXNnaWQgIiIKKyJUaGUgb3ZlcnJpZGUgZmlsZXMgdXNlZCB0byBtYWtlIHRoZSBvZmZpY2lhbCBQYWNrYWdlcyBsaXN0cyBtYXkgYmUgZm91bmQgaW4gIgorInRoZSBJPGluZGljZXM+IGRpcmVjdG9yeSBvbiBhbnkgRGViaWFuIG1pcnJvci4iCittc2dzdHIgIiIKKyJEaWUgb3ZlcnJpZGUtRGF0ZWllbiwgZGllIGbDvHIgZGllIEVyc3RlbGx1bmcgZGVyIG9mZml6aWVsbGVuIFBha2V0bGlzdGUgIgorInZlcndlbmRldCB3ZXJkZW4sIGvDtm5uZW4gaW0gSTxpbmRpY2VzPi1WZXJ6ZWljaG5pcyBhdWYgamVkZW0gRGViaWFuLVNwaWVnZWwgIgorImdlZnVuZGVuIHdlcmRlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vdmVycmlkZS41OjY2Cittc2dpZCAiIgorIkI8ZHBrZy1zY2FucGFja2FnZXM+KDEpLCBCPGRwa2ctc2NhbnNvdXJjZXM+KDEpLCBCPGFwdC1mdHBhcmNoaXZlPigxKSwgQjwvIgorInVzci9zaGFyZS9kb2MvZGViaWFuLXBvbGljeS9wb2xpY3kuaHRtbC9pbmRleC5odG1sPi4iCittc2dzdHIgIiIKKyJCPGRwa2ctc2NhbnBhY2thZ2VzPigxKSwgQjxkcGtnLXNjYW5zb3VyY2VzPigxKSwgQjxhcHQtZnRwYXJjaGl2ZT4oMSksIEI8LyIKKyJ1c3Ivc2hhcmUvZG9jL2RlYmlhbi1wb2xpY3kvcG9saWN5Lmh0bWwvaW5kZXguaHRtbD4uIgorCisjLiB0eXBlOiBUSAorIzogZGViLWV4dHJhLW92ZXJyaWRlLjU6MQorIywgbm8td3JhcAorbXNnaWQgImRlYi1leHRyYS1vdmVycmlkZSIKK21zZ3N0ciAiZGViLWV4dHJhLW92ZXJyaWRlIgorCisjLiB0eXBlOiBUSAorIzogZGViLWV4dHJhLW92ZXJyaWRlLjU6MQorIywgbm8td3JhcAorbXNnaWQgIjIwMDktMDgtMTYiCittc2dzdHIgIjIwMDktMDgtMTYiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1leHRyYS1vdmVycmlkZS41OjQKK21zZ2lkICJkZWItZXh0cmEtb3ZlcnJpZGUgLSBEZWJpYW4gYXJjaGl2ZSBleHRyYSBvdmVycmlkZSBmaWxlIgorbXNnc3RyICJkZWItZXh0cmEtb3ZlcnJpZGUgLSBEZWJpYW4tQXJjaGl2ZSBadXNhdHotb3ZlcnJpZGUtRGF0ZWkiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1leHRyYS1vdmVycmlkZS41OjEyCittc2dpZCAiIgorIldoaWxlIG1vc3QgaW5mb3JtYXRpb24gYWJvdXQgYSBiaW5hcnkvc291cmNlIHBhY2thZ2UgY2FuIGJlIGZvdW5kIGluIHRoZSAiCisiY29udHJvbC8uZHNjIGZpbGUsIGFsbCBvZiBpdCBjYW4gYmUgb3ZlcnJpZGRlbiB3aGVuIGl0J3MgZXhwb3J0ZWQgdG8gIgorIlBhY2thZ2VzL1NvdXJjZXMgZmlsZXMuIFRoZSBleHRyYSBvdmVycmlkZSBmaWxlIGNvbnRhaW5zIHRob3NlIG92ZXJyaWRlcy4iCittc2dzdHIgIiIKKyJXw6RocmVuZCBkZXIgR3Jvw590ZWlsIGRlciBJbmZvcm1hdGlvbmVuIMO8YmVyIGVpbiBiaW7DpHJlcyBvZGVyIFF1ZWxscGFrZXQgaW4gIgorImRlciBEYXRlaSBjb250cm9sLy5kc2MgZ2VmdW5kZW4gd2VyZGVuIGthbm4sIGthbm4gYWxsZXMgZGF2b24gw7xiZXJzY2hyaWViZW4gIgorIndlcmRlbiwgd2VubiBlcyBpbiBkaWUgRGF0ZWllbiBQYWNrYWdlcy9Tb3VyY2VzIGV4cG9ydGllcnQgd2lyZC4gRGllIFp1c2F0ei0iCisib3ZlcnJpZGUtRGF0ZWkgZW50aMOkbHQgZGllc2UgwrvDnGJlcnNjaHJlaWJ1bmdlbsKrIChlbmdsLiBvdmVycmlkZXMpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWV4dHJhLW92ZXJyaWRlLjU6MTYKK21zZ2lkICIiCisiVGhlIGV4dHJhIG92ZXJyaWRlIGZpbGUgaGFzIGEgc2ltcGxlIHdoaXRlc3BhY2UtZGVsaW1pdGVkIGZvcm1hdC4gQ29tbWVudHMgIgorImFyZSBhbGxvd2VkIChkZW5vdGVkIHdpdGggYSBCPCM+KS4iCittc2dzdHIgIiIKKyJEaWUgWnVzYXR6LW92ZXJyaWRlLURhdGVpIGhhdCBlaW4gZWluZmFjaGVzLCBkdXJjaCBMZWVyemVpY2hlbiBnZXRyZW5udGVzICIKKyJGb3JtYXQuIEtvbW1lbnRhcmUgc2luZCBlcmxhdWJ0IChhbmdlemVpZ3QgZHVyY2ggZWluIEI8Iz4pLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWV4dHJhLW92ZXJyaWRlLjU6MjEKK21zZ2lkICJJPHBhY2thZ2U+IEk8ZmllbGQtbmFtZT4gSTx2YWx1ZT4iCittc2dzdHIgIkk8UGFrZXQ+IEk8RmVsZG5hbWU+IEk8V2VydD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1leHRyYS1vdmVycmlkZS41OjI1Cittc2dpZCAiSTxwYWNrYWdlPiBpcyB0aGUgbmFtZSBvZiB0aGUgYmluYXJ5L3NvdXJjZSBwYWNrYWdlLiIKK21zZ3N0ciAiSTxQYWtldD4gaXN0IGRlciBOYW1lIGRlcyBCaW7DpHItL1F1ZWxscGFrZXRzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWV4dHJhLW92ZXJyaWRlLjU6MzEKK21zZ2lkICIiCisiSTxmaWVsZC1uYW1lPiBpcyB0aGUgbmFtZSBvZiB0aGUgZmllbGQgdGhhdCBpcyBvdmVycmlkZGVuLiAgSTx2YWx1ZT4gaXMgdGhlICIKKyJ2YWx1ZSB0byBwdXQgaW4gdGhlIGZpZWxkLiBJdCBjYW4gY29udGFpbiBzcGFjZXMgYXMgdGhlIGxpbmUgaXMgc3BsaXQgaW4gbm8gIgorIm1vcmUgdGhhbiAzIGNvbHVtbnMgd2hlbiBpdCdzIHBhcnNlZC4iCittc2dzdHIgIiIKKyJJPEZlbGRuYW1lPiBpc3QgZGVyIE5hbWUgZGVzIEZlbGRlcywgZGFzIMO8YmVyc2NocmllYmVuIHdpcmQuIEk8V2VydD4gaXN0IGRlciAiCisiaW4gZGFzIEZlbGQgenUgc2V0emVuZGUgV2VydC4gRXIga2FubiBMZWVyemVpY2hlbiBlbnRoYWx0ZW4sIGRhIGRpZSBaZWlsZSBpbiAiCisibmljaHQgbWVociBhbHMgZHJlaSBTcGFsdGVuIGF1ZmdldGVpbHQgd2lyZCwgd2VubiBzaWUgYXVzZ2V3ZXJ0ZXQgd2lyZC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1leHRyYS1vdmVycmlkZS41OjM2Cittc2dpZCAiIgorIlRoZSBleHRyYSBvdmVycmlkZSBmaWxlcyB1c2VkIHRvIG1ha2UgdGhlIG9mZmljaWFsIFBhY2thZ2VzIGxpc3RzIG1heSBiZSAiCisiZm91bmQgaW4gdGhlIEk8aW5kaWNlcz4gZGlyZWN0b3J5IG9uIGFueSBEZWJpYW4gbWlycm9yLiIKK21zZ3N0ciAiIgorIkRpZSBadXNhdHotb3ZlcnJpZGUtRGF0ZWllbiwgZGllIGbDvHIgZGllIEVyc3RlbGx1bmcgZGVyIG9mZml6aWVsbGVuICIKKyJQYWtldGxpc3RlIHZlcndlbmRldCB3ZXJkZW4sIGvDtm5uZW4gaW0gSTxpbmRpY2VzPi1WZXJ6ZWljaG5pcyBhdWYgamVkZW0gIgorIkRlYmlhbi1TcGllZ2VsIGdlZnVuZGVuIHdlcmRlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1leHRyYS1vdmVycmlkZS41OjQwCittc2dpZCAiQjxkcGtnLXNjYW5wYWNrYWdlcz4oMSksIEI8ZHBrZy1zY2Fuc291cmNlcz4oMSksIEI8YXB0LWZ0cGFyY2hpdmU+KDEpLiIKK21zZ3N0ciAiQjxkcGtnLXNjYW5wYWNrYWdlcz4oMSksIEI8ZHBrZy1zY2Fuc291cmNlcz4oMSksIEI8YXB0LWZ0cGFyY2hpdmU+KDEpLiIKKworIy4gdHlwZTogVEgKKyM6IGRlYi1zaGxpYnMuNToxNgorIywgbm8td3JhcAorbXNnaWQgImRlYi1zaGxpYnMiCittc2dzdHIgImRlYi1zaGxpYnMiCisKKyMuIHR5cGU6IFRICisjOiBkZWItc2hsaWJzLjU6MTYKKyMsIG5vLXdyYXAKK21zZ2lkICIyMDA4LTAyLTE3IgorbXNnc3RyICIyMDA4LTAyLTE3IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc2hsaWJzLjU6MTkKK21zZ2lkICJkZWItc2hsaWJzIC0gRGViaWFuIHNoYXJlZCBsaWJyYXJ5IGluZm9ybWF0aW9uIGZpbGUiCittc2dzdHIgImRlYi1zaGxpYnMgLSBEZWJpYW5zIEluZm9ybWF0aW9uc2RhdGVpIGbDvHIgTGF1ZnplaXRiaWJsaW90aGVrZW4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zaGxpYnMuNToyOQorbXNnaWQgIiIKKyJCPHNobGlicz4gZmlsZXMgbWFwIHNoYXJlZCBsaWJyYXJ5IG5hbWVzIGFuZCB2ZXJzaW9ucyAoSTxzb25hbWVzPikgIHRvICIKKyJkZXBlbmRlbmNpZXMgc3VpdGFibGUgZm9yIGEgcGFja2FnZSBjb250cm9sIGZpbGUuICBUaGVyZSBpcyBvbmUgZW50cnkgcGVyICIKKyJsaW5lLiBCbGFuayBsaW5lcyBhcmUgQjxub3Q+IGFsbG93ZWQuICBMaW5lcyBiZWdpbm5pbmcgd2l0aCBhbiBCPCM+ICIKKyJjaGFyYWN0ZXIgYXJlIGNvbnNpZGVyZWQgY29tbWVudGFyeSwgYW5kIGFyZSBpZ25vcmVkLiAgQWxsIG90aGVyIGxpbmVzIG11c3QgIgorImhhdmUgdGhlIGZvcm1hdCIKK21zZ3N0ciAiIgorIkI8c2hsaWJzPi1EYXRlaWVuIGJpbGRlbiBMYXVmemVpdGJpYmxpb3RoZWtuYW1lbiB1bmQgLXZlcnNpb25lbiAoSTxzb25hbWVzPikgIgorImF1ZiBBYmjDpG5naWdrZWl0ZW4gYWIsIGRpZSBmw7xyIGVpbmUgUGFrZXRzdGV1ZXJkYXRlaSBnZWVpZ25ldCBzaW5kLiBFcyBnaWJ0ICIKKyJlaW5lbiBFaW50cmFnIHBybyBaZWlsZS4gTGVlcnplaWxlbiBzaW5kIEI8bmljaHQ+IGVybGF1YnQuIFplaWxlbiwgZGllIG1pdCAiCisiQjwjPiBiZWdpbm5lbiwgd2VyZGVuIGFscyBLb21tZW50YXJ6ZWlsZW4gYmV0cmFjaHRldCB1bmQgaWdub3JpZXJ0LiBBbGxlICIKKyJhbmRlcmVuIFplaWxlbiBtw7xzc2VuIGRlbSBuYWNoZm9sZ2VuZGVuIEZvcm1hdCBmb2xnZW46IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc2hsaWJzLjU6MzQKK21zZ2lkICJbSTx0eXBlPkI8Oj5dIEk8bGlicmFyeT4gSTx2ZXJzaW9uPiBJPGRlcGVuZGVuY2llcz4iCittc2dzdHIgIltJPFR5cD5CPDo+XSBJPEJpYmxpb3RoZWs+IEk8VmVyc2lvbj4gSTxBYmjDpG5naWdrZWl0ZW4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc2hsaWJzLjU6MzgKK21zZ2lkICIiCisiVGhlIEk8bGlicmFyeT4gYW5kIEk8dmVyc2lvbj4gZmllbGRzIGFyZSB3aGl0ZXNwYWNlLWRlbGltaXRlZCwgYnV0IHRoZSAiCisiSTxkZXBlbmRlbmNpZXM+IGZpZWxkIGV4dGVuZHMgdG8gdGhlIGVuZCBvZiB0aGUgbGluZS4gIFRoZSBJPHR5cGU+IGZpZWxkIGlzICIKKyJvcHRpb25hbCBhbmQgbm9ybWFsbHkgbm90IG5lZWRlZC4iCittc2dzdHIgIiIKKyJEaWUgRmVsZGVyIEk8QmlibGlvdGhlaz4gdW5kIEk8VmVyc2lvbj4gd2VyZGVuIGR1cmNoIExlZXJ6ZWljaGVuIGJlZ3Jlbnp0LCAiCisiZGFzIEZlbGQgSTxBYmjDpG5naWdrZWl0ZW4+IGdlaHQgYWJlciBiaXMgenVtIEVuZGUgZGVyIFplaWxlLiBEYXMgRmVsZCBJPFR5cD4gIgorImlzdCBvcHRpb25hbCB1bmQgd2lyZCBub3JtYWxlcndlaXNlIG5pY2h0IGJlbsO2dGlndC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zaGxpYnMuNTo0MAorbXNnaWQgIlNlZSB0aGUgRGViaWFuIFBvbGljeSBNYW51YWwgZm9yIGZ1cnRoZXIgZGV0YWlscy4iCittc2dzdHIgIiIKKyJMZXNlbiBTaWUgZGFzIERlYmlhbi1SaWNodGxpbmllbmhhbmRidWNoIChEZWJpYW4gUG9saWN5IE1hbnVhbCkgZsO8ciB3ZWl0ZXJlICIKKyJEZXRhaWxzLiIKKworIy4gdHlwZTogU0gKKyM6IGRlYi1zaGxpYnMuNTo0MSBkZWItc3ltYm9scy41OjQzIGRwa2cuMTo3MTQgZHBrZy1hcmNoaXRlY3R1cmUuMToyNjIKKyM6IGRwa2ctZGl2ZXJ0Ljg6OTEgZHBrZy1uYW1lLjE6NjUgdXBkYXRlLWFsdGVybmF0aXZlcy44OjQ1OQorIywgbm8td3JhcAorbXNnaWQgIkVYQU1QTEVTIgorbXNnc3RyICJCRUlTUElFTEUiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zaGxpYnMuNTo1MAorbXNnaWQgIiIKKyJUaGUgQjxzaGxpYnM+IGZpbGUgZm9yIGEgdHlwaWNhbCBsaWJyYXJ5IHBhY2thZ2UsIG5hbWVkIEk8bGliY3J1bmNoMT4sIHRoYXQgIgorInByb3ZpZGVzIG9uZSBsaWJyYXJ5IHdob3NlIHNvbmFtZSBpcyBJPGxpYmNydW5jaC5zby4xPiwgbWlnaHQgcmVhZCIKK21zZ3N0ciAiIgorIkRpZSBCPHNobGlicz4tRGF0ZWkgZsO8ciBlaW4gdHlwaXNjaGVzIEJpYmxpb3RoZWtzcGFrZXQgbmFtZW5zIEk8bGliY3J1bmNoMT4sICIKKyJkYXMgZWluZSBCaWJsaW90aGVrIG1pdCBkZW0gU29uYW1lbiBJPGxpYmNydW5jaC5zby4xPiBiZXJlaXRzdGVsbHQsIGvDtm5udGUgIgorIndpZSBmb2xndCBsYXV0ZW46IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc2hsaWJzLjU6NTIKK21zZ2lkICJsaWJjcnVuY2ggMSBsaWJjcnVuY2gxIChFPGd0Pj0gMS4yLTEpIgorbXNnc3RyICJsaWJjcnVuY2ggMSBsaWJjcnVuY2gxIChFPGd0Pj0gMS4yLTEpIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc2hsaWJzLjU6NjAKK21zZ2lkICIiCisiVGhlIEk8ZGVwZW5kZW5jaWVzPiBtdXN0IG1lbnRpb24gdGhlIG1vc3QgcmVjZW50IHZlcnNpb24gb2YgdGhlIHBhY2thZ2UgdGhhdCAiCisiYWRkZWQgbmV3IHN5bWJvbHMgdG8gdGhlIGxpYnJhcnk6IGluIHRoZSBhYm92ZSBleGFtcGxlLCBuZXcgc3ltYm9scyB3ZXJlICIKKyJhZGRlZCB0byB2ZXJzaW9uIDEuMiBvZiBJPGxpYmNydW5jaD4uICBUaGlzIGlzIG5vdCB0aGUgb25seSByZWFzb24gdGhlICIKKyJkZXBlbmRlbmNpZXMgbWlnaHQgbmVlZCB0byBiZSB0aWdodGVuZWQ7IGFnYWluLCBzZWUgdGhlIERlYmlhbiBQb2xpY3kgTWFudWFsICIKKyJmb3IgZGV0YWlscy4iCittc2dzdHIgIiIKKyJJPEFiaMOkbmdpZ2tlaXRlbj4gbXVzcyBkaWUgbmV1c3RlIFZlcnNpb24gZGVzIFBha2V0cyBlcnfDpGhuZW4sIGRhcyBuZXVlbiAiCisiU3ltYm9sZSB6dSBkZXIgQmlibGlvdGhlayBoaW56dWdlZsO8Z3QgaGF0OiBpbSBvYmlnZW4gQmVpc3BpZWwgd3VyZGVuIG5ldWUgIgorIlN5bWJvbGUgenUgVmVyc2lvbiAxLjIgdm9uIEk8bGliY3J1bmNoPiBoaW56dWdlZsO8Z3QuIERpZXMgaXN0IG5pY2h0IGRlciAiCisiZWluemlnZSBHcnVuZCwgZGFzcyBBYmjDpG5naWdrZWl0ZW4gZW5nZXIgZ2VmYXNzdCB3ZXJkZW4gbcO8c3NlbjsgYXVjaCBoaWVyICIKKyJnaWx0OiBMZXNlbiBTaWUgZGFzIERlYmlhbi1SaWNodGxpbmllbmhhbmRidWNoIGbDvHIgRGV0YWlscy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zaGxpYnMuNTo2MworbXNnaWQgIkI8ZHBrZy1zaGxpYmRlcHM+KDEpLCBCPGRlYi1zeW1ib2xzPig1KS4iCittc2dzdHIgIkI8ZHBrZy1zaGxpYmRlcHM+KDEpLCBCPGRlYi1zeW1ib2xzPig1KS4iCisKKyMuIHR5cGU6IFRICisjOiBkZWItc3Vic3R2YXJzLjU6MgorIywgbm8td3JhcAorbXNnaWQgImRlYi1zdWJzdHZhcnMiCittc2dzdHIgImRlYi1zdWJzdHZhcnMiCisKKyMuIHR5cGU6IFRICisjOiBkZWItc3Vic3R2YXJzLjU6MgorIywgbm8td3JhcAorbXNnaWQgIjIwMDktMDctMTUiCittc2dzdHIgIjIwMDktMDctMTUiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNTo1Cittc2dpZCAiZGViLXN1YnN0dmFycyAtIERlYmlhbiBzb3VyY2Ugc3Vic3RpdHV0aW9uIHZhcmlhYmxlcyIKK21zZ3N0ciAiZGViLXN1YnN0dmFycyAtIFN1YnN0aXR1dGlvbnN2YXJpYWJsZW4gaW4gRGViaWFuLVF1ZWxsZW4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNTo4Cittc2dpZCAic3Vic3R2YXJzIgorbXNnc3RyICJzdWJzdHZhcnMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToxOQorbXNnaWQgIiIKKyJCZWZvcmUgQjxkcGtnLXNvdXJjZT4sIEI8ZHBrZy1nZW5jb250cm9sPiBhbmQgQjxkcGtnLWdlbmNoYW5nZXM+IHdyaXRlIHRoZWlyICIKKyJjb250cm9sIGluZm9ybWF0aW9uICh0byB0aGUgc291cmNlIGNvbnRyb2wgZmlsZSBCPC5kc2M+IGZvciBCPGRwa2ctc291cmNlPiAiCisiYW5kIHRvIHN0YW5kYXJkIG91dHB1dCBmb3IgQjxkcGtnLWdlbmNvbnRyb2w+IGFuZCBCPGRwa2ctZ2VuY2hhbmdlcz4pICB0aGV5ICIKKyJwZXJmb3JtIHNvbWUgdmFyaWFibGUgc3Vic3RpdHV0aW9ucyBvbiB0aGUgb3V0cHV0IGZpbGUuIgorbXNnc3RyICIiCisiQmV2b3IgQjxkcGtnLXNvdXJjZT4sIEI8ZHBrZy1nZW5jb250cm9sPiB1bmQgQjxkcGtnLWdlbmNoYW5nZXM+IGlocmUgIgorIlN0ZXVlcmluZm9ybWF0aW9uZW4gKHp1IGRlciBRdWVsbHN0ZXVlci1EYXRlaSBCPC5kc2M+IGbDvHIgQjxkcGtnLXNvdXJjZT4gdW5kICIKKyJ6dSBkZXIgU3RhbmRhcmRhdXNnYWJlIGbDvHIgQjxkcGtnLWdlbmNvbnRyb2w+IHVuZCBCPGRwa2ctZ2VuY2hhbmdlcz4pICIKKyJzY2hyZWliZW4sIGbDvGhyZW4gc2llIGVpbmlnZSBWYXJpYWJsZW5zdWJzdGl0dXRpb25lbiBpbiBkZXIgQXVzZ2FiZWRhdGVpICIKKyJkdXJjaC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToyNgorbXNnaWQgIiIKKyJBIHZhcmlhYmxlIHN1YnN0aXR1dGlvbiBoYXMgdGhlIGZvcm0gQjwkez5JPHZhcmlhYmxlLW5hbWU+Qjx9Pi4gIFZhcmlhYmxlICIKKyJuYW1lcyBjb25zaXN0IG9mIGFscGhhbnVtZXJpY3MsIGh5cGhlbnMgYW5kIGNvbG9ucyBhbmQgc3RhcnQgd2l0aCBhbiAiCisiYWxwaGFudW1lcmljLiBWYXJpYWJsZSBzdWJzdGl0dXRpb25zIGFyZSBwZXJmb3JtZWQgcmVwZWF0ZWRseSB1bnRpbCBub25lIGFyZSAiCisibGVmdDsgdGhlIGZ1bGwgdGV4dCBvZiB0aGUgZmllbGQgYWZ0ZXIgdGhlIHN1YnN0aXR1dGlvbiBpcyByZXNjYW5uZWQgdG8gbG9vayAiCisiZm9yIG1vcmUgc3Vic3RpdHV0aW9ucy4iCittc2dzdHIgIiIKKyJFaW5lIFZhcmlhYmxlbnN1YnN0aXR1dGlvbiBoYXQgZGllIEZvcm0gQjwkez5JPFZhcmlhYmxlbm5hbWU+Qjx9Pi4gIgorIlZhcmlhYmxlbm5hbWVuIGJlc3RlaGVuIGF1cyBhbHBoYW51bWVyaXNjaGVuIFplaWNoZW4gKHdvbWl0IHNpZSBhdWNoICIKKyJiZWdpbm5lbiksIEdlZGFua2Vuc3RyaWNoZW4gdW5kIERvcHBlbHB1bmt0ZW4uIFZhcmlhYmxlbnN1YnN0aXR1dGlvbmVuICIKKyJ3ZXJkZW4gd2llZGVyaG9sdCBkdXJjaGdlZsO8aHJ0LCBiaXMga2VpbmUgw7xicmlnIGdlYmxpZWJlbiBzaW5kOyBkZXIgIgorImtvbXBsZXR0ZSBUZXh0IGRlcyBGZWxkZXMgbmFjaCBkZXIgU3Vic3RpdHV0aW9uIHdpcmQgZXJuZXV0IGF1ZiB3ZWl0ZXJlICIKKyJTdWJzdGl0dXRpb25lbiBnZXByw7xmdC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNTozMworbXNnaWQgIiIKKyJBZnRlciBhbGwgdGhlIHN1YnN0aXR1dGlvbnMgaGF2ZSBiZWVuIGRvbmUgZWFjaCBvY2N1cnJlbmNlIG9mIHRoZSBzdHJpbmcgQjwiCisiJHt9PiAod2hpY2ggaXMgbm90IGEgbGVnYWwgc3Vic3RpdHV0aW9uKSBpcyByZXBsYWNlZCB3aXRoIGEgQjwkPiBzaWduLiIKK21zZ3N0ciAiIgorIk5hY2hkZW0gYWxsZSBTdWJzdGl0dXRpb25lbiBlcmZvbGd0IHNpbmQsIHdpcmQgamVkZXMgQXVmdHJldGVuIGRlciAiCisiWmVpY2hlbmtldHRlIEI8JHt9PiAoZGllIGtlaW5lIGVybGF1YnRlIFN1YnN0aXR1dGlvbiBpc3QpIGR1cmNoIGRhcyBCPCQ+LSIKKyJaZWljaGVuIGVyc2V0enQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MzgKK21zZ2lkICIiCisiV2hpbGUgdmFyaWFibGUgc3Vic3RpdHV0aW9uIGlzIGRvbmUgb24gYWxsIGNvbnRyb2wgZmllbGRzLCBzb21lIG9mIHRob3NlICIKKyJmaWVsZHMgYXJlIHVzZWQgYW5kIG5lZWRlZCBkdXJpbmcgdGhlIGJ1aWxkIHdoZW4gdGhlIHN1YnN0aXR1dGlvbiBkaWQgbm90ICIKKyJ5ZXQgb2NjdXIuIFRoYXQncyB3aHkgeW91IGNhbid0IHVzZSB2YXJpYWJsZXMgaW4gdGhlIEI8UGFja2FnZT4sIEI8U291cmNlPiAiCisiYW5kIEI8QXJjaGl0ZWN0dXJlPiBmaWVsZHMuIgorbXNnc3RyICIiCisiT2J3b2hsIGRpZSBWYXJpYWJsZW5zdWJzdGl0dXRpb24gYmVpIGFsbGVuIEZlbGRlcm4gZGVyIFN0ZXVlcmRhdGVpICIKKyJ2b3JnZW5vbW1lbiB3aXJkLCB3ZXJkZW4gZWluaWdlIGRpZXNlciBGZWxkZXIgd8OkaHJlbmQgZGVzIEJhdWVucyBiZW7DtnRpZ3QgIgorInVuZCB2ZXJ3ZW5kZXQsIHdlbm4gZGllIFN1YnN0aXR1dGlvbiBub2NoIG5pY2h0IGVyZm9sZ3QgaXN0LiBEYWhlciBrw7ZubmVuICIKKyJTaWUgVmFyaWFibGVuIG5pY2h0IGluIGRlbiBGZWxkZXJuIEI8UGFja2FnZT4sIEI8U291cmNlPiB1bmQgQjxBcmNoaXRlY3R1cmU+ICIKKyJ2ZXJ3ZW5kZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6NDUKK21zZ2lkICIiCisiVmFyaWFibGUgc3Vic3RpdHV0aW9uIGhhcHBlbnMgb24gdGhlIGNvbnRlbnQgb2YgdGhlIGZpZWxkcyBhZnRlciB0aGV5IGhhdmUgIgorImJlZW4gcGFyc2VkLCB0aHVzIGlmIHlvdSB3YW50IGEgdmFyaWFibGUgdG8gZXhwYW5kIG92ZXIgbXVsdGlwbGUgbGluZXMgeW91ICIKKyJkbyBub3QgaGF2ZSB0byBpbmNsdWRlIGEgc3BhY2UgYWZ0ZXIgdGhlIG5ld2xpbmUuIFRoaXMgaXMgZG9uZSBpbXBsaWNpdGx5ICIKKyJ3aGVuIHRoZSBmaWVsZCBpcyBvdXRwdXQuIEZvciBleGFtcGxlLCBpZiB0aGUgdmFyaWFibGUgQjwke0Rlc2NyaXB0aW9ufT4gaXMgIgorInNldCB0byBcImZvbyBpcyBiYXIuJHtOZXdsaW5lfWZvbyBpcyBncmVhdC5cIiBhbmQgaWYgeW91IGhhdmUgdGhlIGZvbGxvd2luZyAiCisiZmllbGQ6IgorbXNnc3RyICIiCisiVmFyaWFibGVuZXJzZXR6dW5nIGVyZm9sZ3QgYW0gSW5oYWx0IGRlciBGZWxkZXIsIG5hY2hkZW0gc2llIGdlcGFyc3QgIgorIihhdXNnZXdlcnRldCkgd3VyZGVuLiBGYWxscyBTaWUgZWluZSBWYXJpYWJsZSDDvGJlciBtZWhyZXJlIFplaWxlbiAiCisiZXhwYW5kaWVyZW4gbcO2Y2h0ZW4sIG3DvHNzZW4gU2llIG5hY2ggZGVtIFplaWxlbnVtYnJ1Y2ggZGFoZXIga2VpbiAiCisiTGVlcnplaWNoZW4gZWluZsO8Z2VuLiBEaWVzIHBhc3NpZXJ0IGJlaSBkZXIgQXVzZ2FiZSBkZXMgRmVsZGVzIGltcGxpeml0LiBJc3QgIgorImJlaXNwaWVsc3dlaXNlIGRpZSBWYXJpYWJsZSBCPCR7RGVzY3JpcHRpb259PiBhdWYgwrtmb28gaXN0IGJhci4ke05ld2xpbmV9Zm9vICIKKyJpc3Qgc3VwZXIuwqsgZ2VzZXR6dCB1bmQgU2llIGhhYmVuIGRhcyBmb2xnZW5kZSBGZWxkOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjUwCisjLCBuby13cmFwCittc2dpZCAiIgorIiBEZXNjcmlwdGlvbjogZm9vIGFwcGxpY2F0aW9uXG4iCisiICAke0Rlc2NyaXB0aW9ufVxuIgorIiAgLlxuIgorIiAgTW9yZSB0ZXh0LlxuIgorbXNnc3RyICIiCisiIERlc2NyaXB0aW9uOiBmb28gYXBwbGljYXRpb25cbiIKKyIgICR7RGVzY3JpcHRpb259XG4iCisiICAuXG4iCisiICBXZWl0ZXJlciBUZXh0LlxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6NTIKK21zZ2lkICJJdCB3aWxsIHJlc3VsdCBpbjoiCittc2dzdHIgIkRhbm4gd2lyZCBkaWVzIHp1IEZvbGdlbmRlbiBmw7xocmVuOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjU4CisjLCBuby13cmFwCittc2dpZCAiIgorIiBEZXNjcmlwdGlvbjogZm9vIGFwcGxpY2F0aW9uXG4iCisiICBmb28gaXMgYmFyLlxuIgorIiAgZm9vIGlzIGdyZWF0LlxuIgorIiAgLlxuIgorIiAgTW9yZSB0ZXh0LlxuIgorbXNnc3RyICIiCisiIERlc2NyaXB0aW9uOiBmb28gYXBwbGljYXRpb25cbiIKKyIgIGZvbyBpc3QgYmFyLlxuIgorIiAgZm9vIGlzdCBzdXBlci5cbiIKKyIgIC5cbiIKKyIgIFdlaXRlcmVyIFRleHQuXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNTo3MQorbXNnaWQgIiIKKyJWYXJpYWJsZXMgY2FuIGJlIHNldCB1c2luZyB0aGUgQjwtVj4gY29tbW9uIG9wdGlvbi4gVGhleSBjYW4gYmUgYWxzbyAiCisic3BlY2lmaWVkIGluIHRoZSBmaWxlIEI8ZGViaWFuL3N1YnN0dmFycz4gKG9yIHdoYXRldmVyIG90aGVyIGZpbGUgaXMgIgorInNwZWNpZmllZCB1c2luZyB0aGUgQjwtVD4gb3B0aW9uKS4gVGhpcyBmaWxlIGNvbnNpc3RzIG9mIGxpbmVzIG9mIHRoZSBmb3JtICIKKyJJPG5hbWU+Qjw9Pkk8dmFsdWU+LiAgVHJhaWxpbmcgd2hpdGVzcGFjZSBvbiBlYWNoIGxpbmUsIGJsYW5rIGxpbmVzLCBhbmQgIgorImxpbmVzIHN0YXJ0aW5nIHdpdGggYSBCPCM+IHN5bWJvbCAoY29tbWVudHMpIGFyZSBpZ25vcmVkLiIKK21zZ3N0ciAiIgorIlZhcmlhYmxlbiBrw7ZubmVuIMO8YmVyIGRpZSBhbGxnZW1laW5lIEI8LVY+LU9wdGlvbiBnZXNldHp0IHdlcmRlbi4gU2llIGvDtm5uZW4gIgorImF1Y2ggaW4gZGVyIEI8ZGViaWFuL3N1YnN0dmFycz4gKGJ6dy4gaW4gZGVyIMO8YmVyIGRpZSBPcHRpb24gQjwtVD4gZ2VzZXR6dGVuICIKKyJEYXRlaSkgYW5nZWdlYmVuIHdlcmRlbi4gRGllc2UgRGF0ZWkgYmVzdGVodCBhdWNoIFplaWxlbiBkZXIgRm9ybSAiCisiSTxOYW1lPkI8PT5JPFdlcnQ+LiBMZWVyemVpY2hlbiBhbSBaZWlsZW5lbmRlLCBsZWVyZSBaZWlsZW4gdW5kIFplaWxlbiwgZGllICIKKyJtaXQgZGVtIEI8Iz4tU3ltYm9sIHN0YXJ0ZW4gKEtvbW1lbnRhcmUpIHdlcmRlbiBpZ25vcmllcnQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6NzMKK21zZ2lkICJBZGRpdGlvbmFsbHksIHRoZSBmb2xsb3dpbmcgc3RhbmRhcmQgdmFyaWFibGVzIGFyZSBhdmFpbGFibGU6IgorbXNnc3RyICJadXPDpHR6bGljaCBzaW5kIGRpZSBmb2xnZW5kZW4gU3RhbmRhcmR2YXJpYWJsZW4gdmVyZsO8Z2JhcjoiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3Vic3R2YXJzLjU6NzMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPEFyY2g+IgorbXNnc3RyICJCPEFyY2g+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6NzcKK21zZ2lkICJUaGUgY3VycmVudCBidWlsZCBhcmNoaXRlY3R1cmUgKGZyb20gQjxkcGtnIC0tcHJpbnQtYXJjaGl0ZWN0dXJlPikuIgorbXNnc3RyICJEaWUgYWt0dWVsbGUgQmF1LUFyY2hpdGVrdHVyICh2b24gQjxkcGtnIC0tcHJpbnQtYXJjaGl0ZWN0dXJlPikuIgorCisjLiB0eXBlOiBUUAorIzogZGViLXN1YnN0dmFycy41Ojc3CisjLCBuby13cmFwCittc2dpZCAiQjxzb3VyY2U6VmVyc2lvbj4iCittc2dzdHIgIkI8c291cmNlOlZlcnNpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6ODAKK21zZ2lkICJUaGUgc291cmNlIHBhY2thZ2UgdmVyc2lvbi4iCittc2dzdHIgIkRpZSBRdWVsbHBha2V0LVZlcnNpb24uIgorCisjLiB0eXBlOiBUUAorIzogZGViLXN1YnN0dmFycy41OjgwCisjLCBuby13cmFwCittc2dpZCAiQjxzb3VyY2U6VXBzdHJlYW0tVmVyc2lvbj4iCittc2dzdHIgIkI8c291cmNlOlVwc3RyZWFtLVZlcnNpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6ODQKK21zZ2lkICIiCisiVGhlIHVwc3RyZWFtIHNvdXJjZSBwYWNrYWdlIHZlcnNpb24sIGluY2x1ZGluZyB0aGUgRGViaWFuIHZlcnNpb24gZXBvY2ggaWYgIgorImFueS4iCittc2dzdHIgIiIKKyJEaWUgUGFrZXR2ZXJzaW9uIGRlciBPcmlnaW5hbGF1dG9yZW4sIGVpbnNjaGxpZcOfbGljaCBkZXIgRXBvY2hlIGRlciBEZWJpYW4tIgorIlZlcnNpb24sIGZhbGxzIHZvcmhhbmRlbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3Vic3R2YXJzLjU6ODQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGJpbmFyeTpWZXJzaW9uPiIKK21zZ3N0ciAiQjxiaW5hcnk6VmVyc2lvbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNTo4OAorbXNnaWQgIiIKKyJUaGUgYmluYXJ5IHBhY2thZ2UgdmVyc2lvbiAod2hpY2ggbWF5IGRpZmZlciBmcm9tIHNvdXJjZTpWZXJzaW9uIGluIGEgYmluTk1VICIKKyJmb3IgZXhhbXBsZSkuIgorbXNnc3RyICIiCisiRGllIEJpbsOkcnBha2V0dmVyc2lvbiAoZGllIHouQi4gaW4gZWluZW0gYmluTk1VIHZvbiBzb3VyY2U6VmVyc2lvbiBhYndlaWNoZW4gIgorImthbm4pLiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zdWJzdHZhcnMuNTo4OAorIywgbm8td3JhcAorbXNnaWQgIkI8U291cmNlLVZlcnNpb24+IgorbXNnc3RyICJCPFNvdXJjZS1WZXJzaW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjkzCittc2dpZCAiIgorIlRoZSBzb3VyY2UgcGFja2FnZSB2ZXJzaW9uIChmcm9tIHRoZSBjaGFuZ2Vsb2cgZmlsZSkuIFRoaXMgdmFyaWFibGUgaXMgbm93ICIKKyJCPGRlcHJlY2F0ZWQ+IGFzIGl0cyBtZWFuaW5nIGlzIGRpZmZlcmVudCBmcm9tIGl0cyBmdW5jdGlvbiwgcGxlYXNlIHVzZSB0aGUgIgorIkI8c291cmNlOlZlcnNpb24+IG9yIEI8YmluYXJ5OlZlcnNpb24+IGFzIGFwcHJvcHJpYXRlLiIKK21zZ3N0ciAiIgorIkRpZSBRdWVsbHBha2V0dmVyc2lvbiAoYXVzIGRlciBjaGFuZ2Vsb2ctRGF0ZWkpLiBEaWVzZSBWYXJpYWJsZSBpc3QgamV0enQgIgorIkI8dmVyYWx0ZXQ+LCBkYSBpaHJlIEJlZGV1dHVuZyB2b24gaWhyZXIgRnVua3Rpb24gYWJ3ZWljaHQsIGJpdHRlIHZlcndlbmRlbiAiCisiU2llIEI8c291cmNlOlZlcnNpb24+IG9kZXIgQjxiaW5hcnk6VmVyc2lvbj4gd28genV0cmVmZmVuZC4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3Vic3R2YXJzLjU6OTMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPEluc3RhbGxlZC1TaXplPiIKK21zZ3N0ciAiQjxJbnN0YWxsZWQtU2l6ZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToxMDIKK21zZ2lkICIiCisiVGhlIHRvdGFsIHNpemUgb2YgdGhlIHBhY2thZ2UncyBpbnN0YWxsZWQgZmlsZXMuIFRoaXMgdmFsdWUgaXMgY29waWVkIGludG8gIgorInRoZSBjb3JyZXNwb25kaW5nIGNvbnRyb2wgZmlsZSBmaWVsZDsgc2V0dGluZyBpdCB3aWxsIG1vZGlmeSB0aGUgdmFsdWUgb2YgIgorInRoYXQgZmllbGQuIElmIHRoaXMgdmFyaWFibGUgaXNuJ3Qgc2V0IEI8ZHBrZy1nZW5jb250cm9sPiB3aWxsIHVzZSBCPGR1IC1rICIKKyJkZWJpYW4vdG1wPiB0byBmaW5kIHRoZSBkZWZhdWx0IHZhbHVlLiIKK21zZ3N0ciAiIgorIkRpZSBHZXNhbXRncsO2w59lIGRlciB2b20gUGFrZXQgaW5zdGFsbGllcnRlbiBEYXRlaWVuLiBEaWVzZXIgV2VydCB3aXJkIGluIGRhcyAiCisiZW50c3ByZWNoZW5kZSBGZWxkIGRlciDCu2NvbnRyb2zCqy1EYXRlaSBrb3BpZXJ0OyB3aXJkIGVzIGdlc2V0enQsIHZlcsOkbmRlcnQgIgorImVzIGRlbiBXZXJ0IGRpZXNlcyBGZWxkZXMuIEZhbGxzIGRpZXNlIFZhcmlhYmxlIG5pY2h0IGdlc2V0enQgaXN0LCB3aXJkICIKKyJCPGRwa2ctZ2VuY29udHJvbD4gwrtCPGR1IC1rIGRlYmlhbi90bXA+wqsgdmVyd2VuZGVuLCB1bSBkZW4gU3RhbmRhcmR3ZXJ0IHp1ICIKKyJlcm1pdHRlbG4uIgorCisjLiB0eXBlOiBUUAorIzogZGViLXN1YnN0dmFycy41OjEwMgorIywgbm8td3JhcAorbXNnaWQgIkI8RXh0cmEtU2l6ZT4iCittc2dzdHIgIkI8RXh0cmEtU2l6ZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToxMTEKK21zZ2lkICIiCisiQWRkaXRpb25hbCBkaXNrIHNwYWNlIHVzZWQgd2hlbiB0aGUgcGFja2FnZSBpcyBpbnN0YWxsZWQuIElmIHRoaXMgdmFyaWFibGUgIgorImlzIHNldCBpdHMgdmFsdWUgaXMgYWRkZWQgdG8gdGhhdCBvZiB0aGUgQjxJbnN0YWxsZWQtU2l6ZT4gdmFyaWFibGUgKHdoZXRoZXIgIgorInNldCBleHBsaWNpdGx5IG9yIHVzaW5nIHRoZSBkZWZhdWx0IHZhbHVlKSBiZWZvcmUgaXQgaXMgY29waWVkIGludG8gdGhlICIKKyJCPEluc3RhbGxlZC1TaXplPiBjb250cm9sIGZpbGUgZmllbGQuIgorbXNnc3RyICIiCisiWnVzw6R0emxpY2hlciBQbGF0dGVucGxhdHosIGRlciB2ZXJ3ZW5kZXQgd2lyZCwgd2VubiBkYXMgUGFrZXQgaW5zdGFsbGllcnQgIgorImlzdC4gRmFsbHMgZGllc2UgVmFyaWFibGUgZ2VzZXR6dCBpc3QsIHdpcmQgZGllc2VyIFdlcnQgenUgZGVyIEI8SW5zdGFsbGVkLSIKKyJTaXplPi1WYXJpYWJsZW4gaGluenVhZGRpZXJ0IChlZ2FsIG9iIHNpZSBleHBsaXppdCBnZXNldHp0IG9kZXIgZGVyICIKKyJTdGFuZGFyZHdlcnQgdmVyd2VuZGV0IHdpcmQpLCBiZXZvciBzaWUgaW4gZGFzIEZlbGQgQjxJbnN0YWxsZWQtU2l6ZT4gZGVyICIKKyLCu2NvbnRyb2zCqy1EYXRlaSBrb3BpZXJ0IHdpcmQuIgorCisjLiB0eXBlOiBUUAorIzogZGViLXN1YnN0dmFycy41OjExMQorIywgbm8td3JhcAorbXNnaWQgIkI8Rjo+STxmaWVsZG5hbWU+IgorbXNnc3RyICJCPEY6Pkk8RmVsZG5hbWU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MTE4Cittc2dpZCAiIgorIlRoZSB2YWx1ZSBvZiB0aGUgb3V0cHV0IGZpZWxkIEk8ZmllbGRuYW1lPiAod2hpY2ggbXVzdCBiZSBnaXZlbiBpbiB0aGUgIgorImNhbm9uaWNhbCBjYXBpdGFsaXNhdGlvbikuIFNldHRpbmcgdGhlc2UgdmFyaWFibGVzIGhhcyBubyBlZmZlY3Qgb3RoZXIgdGhhbiAiCisib24gcGxhY2VzIHdoZXJlIHRoZXkgYXJlIGV4cGFuZGVkIGV4cGxpY2l0bHkuIgorbXNnc3RyICIiCisiRGVyIFdlcnQgZGVzIEF1c2dhYmVmZWxkZXMgSTxGZWxkbmFtZT4gKGRlciBpbiBkZXIga2Fub25pc2NoZW4gR3Jvw58tLyIKKyJLbGVpbnNjaHJlaWJ1bmcgYW5nZWdlYmVuIHdlcmRlbiBtdXNzKS4gRGFzIFNldHplbiBkaWVzZXIgVmFyaWFibGVuIGhhdCBudXIgIgorImVpbmVuIEVmZmVrdCBhbiBkZW4gU3RlbGxlbiwgd28gZGllc2UgZXhwbGl6aXQgZXhwYW5kaWVydCB3ZXJkZW4uIgorCisjLiB0eXBlOiBUUAorIzogZGViLXN1YnN0dmFycy41OjExOAorIywgbm8td3JhcAorbXNnaWQgIkI8Rm9ybWF0PiIKK21zZ3N0ciAiQjxGb3JtYXQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MTI4Cittc2dpZCAiIgorIlRoZSBCPC5jaGFuZ2VzPiBmaWxlIGZvcm1hdCB2ZXJzaW9uIGdlbmVyYXRlZCBieSB0aGlzIHZlcnNpb24gb2YgdGhlIHNvdXJjZSAiCisicGFja2FnaW5nIHNjcmlwdHMuIElmIHlvdSBzZXQgdGhpcyB2YXJpYWJsZSB0aGUgY29udGVudHMgb2YgdGhlIEI8Rm9ybWF0PiAiCisiZmllbGQgaW4gdGhlIEI8LmNoYW5nZXM+IGZpbGUgd2lsbCBjaGFuZ2UgdG9vLiIKK21zZ3N0ciAiIgorIkRpZSBGb3JtYXR2ZXJzaW9uIGRlciBCPC5jaGFuZ2VzPi1EYXRlaSwgZGllIHZvbiBkaWVzZXIgVmVyc2lvbiBkZXIgIgorIlF1ZWxscGFrZXRpZXJza3JpcHRlIGVyc3RlbGx0IHdpcmQuIEZhbGxzIFNpZSBkaWVzZSBWYXJpYWJsZSBzZXR6ZW4sIHdlcmRlbiAiCisiZGllIEluaGFsdGUgZGVzIEI8Rm9ybWF0Pi1GZWxkZXMgaW4gZGVyIEI8LmNoYW5nZXM+LURhdGVpIGF1Y2ggZ2XDpG5kZXJ0LiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zdWJzdHZhcnMuNToxMjgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPE5ld2xpbmU+LCBCPFNwYWNlPiwgQjxUYWI+IgorbXNnc3RyICJCPE5ld2xpbmU+LCBCPFNwYWNlPiwgQjxUYWI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MTMxCittc2dpZCAiVGhlc2UgdmFyaWFibGVzIGVhY2ggaG9sZCB0aGUgY29ycmVzcG9uZGluZyBjaGFyYWN0ZXIuIgorbXNnc3RyICIiCisiRGllc2UgVmFyaWFibGVuIGVudGhhbHRlbiBkYXMgamV3ZWlscyBrb3JyZXNwb25kaWVyZW4gWmVpY2hlbiAiCisiKEI8WmVpbGVudW1icnVjaD4sIEI8TGVlcnplaWNoZW4+IHVuZCBCPFRhYnVsYXRvcj4gaW4gZGllc2VyIFJlaWhlbmZvbGdlKS4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3Vic3R2YXJzLjU6MTMxCisjLCBuby13cmFwCittc2dpZCAiQjxzaGxpYnM6Pkk8ZGVwZW5kZW5jeWZpZWxkPiIKK21zZ3N0ciAiQjxzaGxpYnM6Pkk8ZGVwZW5kZW5jeWZpZWxkPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjEzNQorbXNnaWQgIiIKKyJWYXJpYWJsZSBzZXR0aW5ncyB3aXRoIG5hbWVzIG9mIHRoaXMgZm9ybSBhcmUgZ2VuZXJhdGVkIGJ5IEI8ZHBrZy1zaGxpYmRlcHM+LiIKK21zZ3N0ciAiIgorIlZhcmlhYmxlbmVpbnN0ZWxsdW5nZW4gbWl0IE5hbWVuIGRpZXNlciBGb3JtIHdlcmRlbiB2b24gQjxkcGtnLXNobGliZGVwcz4gIgorImVyc3RlbGx0LiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zdWJzdHZhcnMuNToxMzUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGRwa2c6VXBzdHJlYW0tVmVyc2lvbj4iCittc2dzdHIgIkI8ZHBrZzpVcHN0cmVhbS1WZXJzaW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjEzOAorbXNnaWQgIlRoZSB1cHN0cmVhbSB2ZXJzaW9uIG9mIGRwa2cuIgorbXNnc3RyICJEaWUgT3JpZ2luYWwtIChVcHN0cmVhbS0pVmVyc2lvbiB2b24gRHBrZy4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3Vic3R2YXJzLjU6MTM4CisjLCBuby13cmFwCittc2dpZCAiQjxkcGtnOlZlcnNpb24+IgorbXNnc3RyICJCPGRwa2c6VmVyc2lvbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToxNDEKK21zZ2lkICJUaGUgZnVsbCB2ZXJzaW9uIG9mIGRwa2cuIgorbXNnc3RyICJEaWUga29tcGxldHRlIFZlcnNpb24gdm9uIERwa2cuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MTQ0Cittc2dpZCAiIgorIklmIGEgdmFyaWFibGUgaXMgcmVmZXJyZWQgdG8gYnV0IG5vdCBkZWZpbmVkIGl0IGdlbmVyYXRlcyBhIHdhcm5pbmcgYW5kIGFuICIKKyJlbXB0eSB2YWx1ZSBpcyBhc3N1bWVkLiIKK21zZ3N0ciAiIgorIkZhbGxzIGF1ZiBlaW5lIFZhcmlhYmxlIEJlenVnIGdlbm9tbWVuIHdpcmQsIGRpZXNlIGFiZXIgbmljaHQgZGVmaW5pZXJ0IGlzdCwgIgorIndpcmQgZXMgZWluZSBXYXJudW5nIGVyc3RlbGxlbiB1bmQgZWluIGxlZXJlciBXZXJ0IHdpcmQgYW5nZW5vbW1lbi4iCisKKyMuIHR5cGU6IFNICisjOiBkZWItc3Vic3R2YXJzLjU6MTQ1IGRwa2cuMTo2MjcgZHBrZy1hcmNoaXRlY3R1cmUuMToyODQgZHBrZy5jZmcuNToxMgorIzogZHBrZy1idWlsZGZsYWdzLjE6MTIxIGRwa2ctZGlzdGFkZGZpbGUuMTozOSBkcGtnLWRpdmVydC44OjEyMgorIzogZHBrZy1nZW5jaGFuZ2VzLjE6MTM4IGRwa2ctZ2VuY29udHJvbC4xOjEyOCBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTE1CisjOiBkcGtnLXNwbGl0LjE6MjA2IGRwa2ctc3RhdG92ZXJyaWRlLjg6NzQgZHNlbGVjdC5jZmcuNToxMgorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM2MAorIywgbm8td3JhcAorbXNnaWQgIkZJTEVTIgorbXNnc3RyICJEQVRFSUVOIgorCisjLiB0eXBlOiBUUAorIzogZGViLXN1YnN0dmFycy41OjE0NgorIywgbm8td3JhcAorbXNnaWQgIkI8ZGViaWFuL3N1YnN0dmFycz4iCittc2dzdHIgIkI8ZGViaWFuL3N1YnN0dmFycz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToxNDkKK21zZ2lkICJMaXN0IG9mIHN1YnN0aXR1dGlvbiB2YXJpYWJsZXMgYW5kIHZhbHVlcy4iCittc2dzdHIgIkxpc3RlIHZvbiBTdWJzdGl0dXRpb25zdmFyaWFibGVuIHVuZCAtd2VydGVuLiIKKworIy4gdHlwZTogU0gKKyM6IGRlYi1zdWJzdHZhcnMuNToxNTAgZHBrZy4xOjc4MCBkcGtnLWJ1aWxkcGFja2FnZS4xOjI0NCBkcGtnLWRlYi4xOjIzOAorIzogZHBrZy1uYW1lLjE6ODYgZHBrZy1zb3VyY2UuMTo3MjIgZHBrZy1zcGxpdC4xOjE5OSBkc2VsZWN0LjE6NDI5CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDg2CisjLCBuby13cmFwCittc2dpZCAiQlVHUyIKK21zZ3N0ciAiRkVITEVSIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MTUzIGRwa2ctc291cmNlLjE6NzI1Cittc2dpZCAiIgorIlRoZSBwb2ludCBhdCB3aGljaCBmaWVsZCBvdmVycmlkaW5nIG9jY3VycyBjb21wYXJlZCB0byBjZXJ0YWluIHN0YW5kYXJkICIKKyJvdXRwdXQgZmllbGQgc2V0dGluZ3MgaXMgcmF0aGVyIGNvbmZ1c2VkLiIKK21zZ3N0ciAiIgorIkRpZSBTdGVsbGUsIGFuIGRlciBkYXMgw5xiZXJzY2hyZWliZW4gdm9uIEZlbGRlcm4gcGFzc2llcnQsIHZlcmdsaWNoZW4gbWl0ICIKKyJiZXN0aW1tdGVuIFN0YW5kYXJkLUF1c2dhYmUtRmVsZGVpbnN0ZWxsdW5nZW4sIGlzdCBlaGVyIGtvbmZ1cy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToxNjAKK21zZ2lkICIiCisiQjxkcGtnPigxKSwgQjxkcGtnLWdlbmNoYW5nZXM+KDEpLCBCPGRwa2ctZ2VuY29udHJvbD4oMSksIEI8ZHBrZy1zaGxpYmRlcHM+IgorIigxKSwgQjxkcGtnLXNvdXJjZT4oMSkuIgorbXNnc3RyICIiCisiQjxkcGtnPigxKSwgQjxkcGtnLWdlbmNoYW5nZXM+KDEpLCBCPGRwa2ctZ2VuY29udHJvbD4oMSksIEI8ZHBrZy1zaGxpYmRlcHM+IgorIigxKSwgQjxkcGtnLXNvdXJjZT4oMSkuIgorCisjLiB0eXBlOiBTSAorIzogZGViLXN1YnN0dmFycy41OjE2MSBkcGtnLWFyY2hpdGVjdHVyZS4xOjMwMyBkcGtnLmNmZy41OjE5CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyNjYgZHBrZy1jaGVja2J1aWxkZGVwcy4xOjQwIGRwa2ctZGViLjE6MjY1CisjOiBkcGtnLWRpdmVydC44OjEzNSBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjY2IGRwa2ctbmFtZS4xOjEwNAorIzogZHBrZy1xdWVyeS4xOjIxNCBkcGtnLXNjYW5zb3VyY2VzLjE6NzYgZHBrZy1zcGxpdC4xOjIyMworIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo4NyBkcGtnLXZlbmRvci4xOjQ4IGRzZWxlY3QuY2ZnLjU6MTkKKyMsIG5vLXdyYXAKK21zZ2lkICJBVVRIT1IiCittc2dzdHIgIkFVVE9SIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MTYzIGRwa2ctYnVpbGRwYWNrYWdlLjE6MjU5IGRwa2ctZGlzdGFkZGZpbGUuMTo0OQorIzogZHBrZy1kZWIuMToyNjcgZHBrZy1nZW5jaGFuZ2VzLjE6MTUwIGRwa2ctZ2VuY29udHJvbC4xOjE0NAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjEyNSBkcGtnLXNobGliZGVwcy4xOjMzMSBkcGtnLXNvdXJjZS4xOjczMgorIzogZHBrZy1zcGxpdC4xOjIyNQorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAxOTk1LTE5OTYgSWFuIEphY2tzb24iCittc2dzdHIgIkNvcHlyaWdodCBcXChjbyAxOTk1LTE5OTYgSWFuIEphY2tzb24iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToxNjUgZHBrZy1idWlsZHBhY2thZ2UuMToyNjEgZHBrZy1kaXN0YWRkZmlsZS4xOjUxCisjOiBkcGtnLWdlbmNoYW5nZXMuMToxNTIgZHBrZy1nZW5jb250cm9sLjE6MTQ2IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxMjcKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MzMzIGRwa2ctc291cmNlLjE6NzM0IGRwa2ctc3RhdG92ZXJyaWRlLjg6ODkKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAwMCBXaWNoZXJ0IEFra2VybWFuIgorbXNnc3RyICJDb3B5cmlnaHQgXFwoY28gMjAwMCBXaWNoZXJ0IEFra2VybWFuIgorCisjLiB0eXBlOiBUSAorIzogZGViLXN5bWJvbHMuNToyCisjLCBuby13cmFwCittc2dpZCAiZGViLXN5bWJvbHMiCittc2dzdHIgImRlYi1zeW1ib2xzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3ltYm9scy41OjUKK21zZ2lkICJkZWItc3ltYm9scyAtIERlYmlhbidzIGV4dGVuZGVkIHNoYXJlZCBsaWJyYXJ5IGluZm9ybWF0aW9uIGZpbGUiCittc2dzdHIgIiIKKyJkZWItc3ltYm9scyAtIERlYmlhbnMgZXJ3ZWl0ZXJ0ZSBJbmZvcm1hdGlvbnNkYXRlaSB2b24gTGF1ZnplaXRiaWJsaW90aGVrZW4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6OAorbXNnaWQgInN5bWJvbHMiCittc2dzdHIgInN5bWJvbHMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6MTIKK21zZ2lkICIiCisiVGhlIGZvcm1hdCBmb3IgYW4gZXh0ZW5kZWQgc2hhcmVkIGxpYnJhcnkgZGVwZW5kZW5jeSBpbmZvcm1hdGlvbiBlbnRyeSBpbiAiCisidGhlc2UgZmlsZXMgaXM6IgorbXNnc3RyICIiCisiRGFzIEZvcm1hdCBlaW5lcyBFaW50cmFncyBmw7xyIGVpbmUgZXJ3ZWl0ZXJ0ZSBBYmjDpG5naWdrZWl0c2luZm9ybWF0aW9uIGVpbmVyICIKKyJMYXVmemVpdGJpYmxpb3RoZWsgKMK7c2hhcmVkIGxpYnJhcnnCqykgbGF1dGV0OiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNToxNAorbXNnaWQgIkk8bGlicmFyeS1zb25hbWUgbWFpbi1kZXBlbmRlbmN5LXRlbXBsYXRlPiIKK21zZ3N0ciAiSTxCaWJsaW90aGVrcy1Tb25hbWUgSGF1cHRhYmjDpG5naWdrZWl0c3ZvcmxhZ2U+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3ltYm9scy41OjE2Cittc2dpZCAiWyB8IEk8YWx0ZXJuYXRpdmUtZGVwZW5kZW5jeS10ZW1wbGF0ZT4gXSIKK21zZ3N0ciAiWyB8IEk8YWx0ZXJuYXRpdmUtQWJow6RuZ2lna2VpdHN2b3JsYWdlPiBdIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3ltYm9scy41OjE4Cittc2dpZCAiWyAuLi4gXSIKK21zZ3N0ciAiWyAuLi4gXSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNToyMAorbXNnaWQgIlsgKiBJPGZpZWxkLW5hbWU+OiBJPGZpZWxkLXZhbHVlPiBdIgorbXNnc3RyICJbICogSTxGZWxkbmFtZT46IEk8RmVsZHdlcnQ+IF0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6MjMKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiWyAuLi4gXVxuIgorIiBJPHN5bWJvbD4gSTxtaW5pbWFsLXZlcnNpb24+WyBJPGlkLW9mLWRlcGVuZGVuY3ktdGVtcGxhdGU+IF1cbiIKK21zZ3N0ciAiIgorIlsgLi4uIF1cbiIKKyIgSTxTeW1ib2w+IEk8TWluaW1hbHZlcnNpb24+WyBJPEtlbm51bmctZGVyLUFiaMOkbmdpZ2tlaXRzdm9ybGFnZT4gXVxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3ltYm9scy41OjI5Cittc2dpZCAiIgorIlRoZSBJPGxpYnJhcnktc29uYW1lPiBpcyBleGFjdGx5IHRoZSB2YWx1ZSBvZiB0aGUgU09OQU1FIGZpZWxkIGFzIGV4cG9ydGVkICIKKyJieSBCPG9iamR1bXA+KDEpLiBBIEk8ZGVwZW5kZW5jeS10ZW1wbGF0ZT4gaXMgYSBkZXBlbmRlbmN5IHdoZXJlIEk8I01JTlZFUiM+ICIKKyJpcyBkeW5hbWljYWxseSByZXBsYWNlZCBlaXRoZXIgYnkgYSB2ZXJzaW9uIGNoZWNrIGxpa2UgXCIoRTxndD49IEk8bWluaW1hbC0iCisidmVyc2lvbj4pXCIgb3IgYnkgbm90aGluZyAoaWYgYW4gdW52ZXJzaW9uZWQgZGVwZW5kZW5jeSBpcyBkZWVtZWQgIgorInN1ZmZpY2llbnQpLiIKK21zZ3N0ciAiIgorIkRlciBJPEJpYmxpb3RoZWtzLVNvbmFtZT4gaXN0IGdlbmF1IGRlciBXZXJ0IGRlcyBTT05BTUUtRmVsZGVzLCB3aWUgZXIgdm9uICIKKyJCPG9iamR1bXA+KDEpIGV4cG9ydGllcnQgd2lyZC4gRWluZSBJPEFiaMOkbmdpZ2tlaXRzdm9ybGFnZT4gaXN0IGVpbmUgIgorIkFiaMOkbmdpZ2tlaXQsIGluIGRlciBJPCNNSU5WRVIjPiBkeW5hbWlzY2ggZW50d2VkZXIgdm9uIGVpbmVyICIKKyJWZXJzaW9uc3Byw7xmdW5nIGRlciBBcnQgwrsoRTxndD49IEk8TWluaW1hbHZlcnNpb24+KcKrIG9kZXIgZHVyY2ggbmljaHRzICIKKyJlcnNldHp0IHdpcmQsIGZhbGxzIGVpbmUgbmljaHQtdmVyc2lvbmllcnRlIEFiaMOkbmdpZ2tlaXQgYWxzIGF1c3JlaWNoZW5kICIKKyJlcmFjaHRldCB3aXJkLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNTozNgorbXNnaWQgIiIKKyJFYWNoIGV4cG9ydGVkIEk8c3ltYm9sPiAobGlzdGVkIGFzIEk8bmFtZT5ASTx2ZXJzaW9uPiwgd2l0aCBJPHZlcnNpb24+IGJlaW5nICIKKyJcIkJhc2VcIiBpZiB0aGUgbGlicmFyeSBpcyBub3QgdmVyc2lvbmVkKSBpcyBhc3NvY2lhdGVkIHRvIGEgSTxtaW5pbWFsLSIKKyJ2ZXJzaW9uPiBvZiBpdHMgZGVwZW5kZW5jeSB0ZW1wbGF0ZSAodGhlIG1haW4gZGVwZW5kZW5jeSB0ZW1wbGF0ZSBpcyB1c2VkIGlmICIKKyJJPGlkLW9mLWRlcGVuZGVuY3ktdGVtcGxhdGU+IGlzIG5vdCBwcmVzZW50KS4gVGhlIGZpcnN0IGFsdGVybmF0aXZlICIKKyJkZXBlbmRlbmN5IHRlbXBsYXRlIGlzIG51bWJlcmVkIDEsIHRoZSBzZWNvbmQgb25lIDIsIGV0Yy4iCittc2dzdHIgIiIKKyJKZWRlbSBleHBvcnRpZXJ0ZW4gSTxTeW1ib2w+IChhdWZnZWbDvGhydCBhbHMgSTxOYW1lPkBJPFZlcnNpb24+LCBtaXQgIgorIkk8VmVyc2lvbj4gYWxzIMK7QmFzZcKrLCBmYWxscyBkaWUgQmlibGlvdGhlayBuaWNodCB2ZXJzaW9uaWVydCBpc3QpIHdpcmQgZWluZSAiCisiSTxNaW5pbWFsdmVyc2lvbj4gc2VpbmVyIEFiaMOkbmdpZ2tlaXRzdm9ybGFnZSB6dWdlb3JkbmV0IChkaWUgIgorIkhhdXB0YWJow6RuZ2lna2VpdHN2b3JsYWdlIHdpcmQgdmVyd2FuZHQsIGZhbGxzIGRpZSBJPEtlbm51bmctZGVyLSIKKyJBYmjDpG5naWdrZWl0c3ZvcmxhZ2U+IG5pY2h0IHZvcmhhbmRlbiBpc3QpLiBEaWUgZXJzdGUgYWx0ZXJuYXRpdmUgIgorIkFiaMOkbmdpZ2tlaXRzdm9ybGFnZSB3aXJkIG1pdCAxIG51bW1lcmllcnQsIGRpZSB6d2VpdGUgbWl0IDIgdXN3LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNTo0MworbXNnaWQgIiIKKyJFYWNoIGVudHJ5IGZvciBhIGxpYnJhcnkgY2FuIGFsc28gaGF2ZSBzb21lIGZpZWxkcyBvZiBtZXRhLWluZm9ybWF0aW9uLiAgIgorIlRob3NlIGZpZWxkcyBhcmUgc3RvcmVkIG9uIGxpbmVzIHN0YXJ0aW5nIHdpdGggYW4gYXN0ZXJpc2suIEN1cnJlbnRseSwgdGhlICIKKyJvbmx5IHZhbGlkIGZpZWxkIGlzIEk8QnVpbGQtRGVwZW5kcy1QYWNrYWdlPiwgaXQgaW5kaWNhdGVzIHRoZSBuYW1lIG9mIHRoZSAiCisiXCItZGV2XCIgcGFja2FnZSBhc3NvY2lhdGVkIHRvIHRoZSBsaWJyYXJ5IGFuZCBpcyB1c2VkIGJ5IEI8ZHBrZy1zaGxpYmRlcHM+ICIKKyJ0byBtYWtlIHN1cmUgdGhhdCB0aGUgZGVwZW5kZW5jeSBnZW5lcmF0ZWQgaXMgYXQgbGVhc3QgYXMgc3RyaWN0IGFzIHRoZSAiCisiY29ycmVzcG9uZGluZyBidWlsZCBkZXBlbmRlbmN5LiIKK21zZ3N0ciAiIgorIkplZGVyIEVpbnRyYWcgZsO8ciBlaW5lIEJpYmxpb3RoZWsga2FubiBhdWNoIGVpbmlnZSBGZWxkZXIgbWl0ICIKKyJNZXRhaW5mb3JtYXRpb25lbiBlbnRoYWx0ZW4uIERpZXNlIEZlbGRlciB3ZXJkZW4gaW4gWmVpbGVuIGdlc3BlaWNoZXJ0LCBkaWUgIgorIm1pdCBlaW5lbSBTdGVybiBiZWdpbm5lbi4gRGVyemVpdCBpc3QgSTxCdWlsZC1EZXBlbmRzLVBhY2thZ2U+IGRhcyBlaW56aWdlICIKKyJnw7xsdGlnZSBGZWxkLCBlcyBnaWJ0IGRlbiBOYW1lbiBkZXMgwrstZGV2wqstUGFrZXRzIGFuLCBkYXMgZGVyIEJpYmxpb3RoZWsgIgorInp1Z2VvcmRuZXQgaXN0LCB1bmQgd2lyZCB2b24gQjxkcGtnLXNobGliZGVwcz4gdmVyd2FuZHQsIHVtIHNpY2hlcnp1c3RlbGxlbiwgIgorImRhc3MgZGllIGVyc3RlbGx0ZSBBYmjDpG5naWdrZWl0IG1pbmRlc3RlbnMgZ2VuYXVzbyBzdHJpa3QgaXN0IHdpZSBkaWUgIgorInp1Z2Vow7ZyaWdlIEJhdS1BYmjDpG5naWdrZWl0LiIKKworIy4gdHlwZTogU1MKKyM6IGRlYi1zeW1ib2xzLjU6NDQKKyMsIG5vLXdyYXAKK21zZ2lkICJTaW1wbGUgc3ltYm9scyBmaWxlIgorbXNnc3RyICJFaW5mYWNoZSBTeW1ib2xkYXRlaSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNTo1MAorIywgbm8td3JhcAorbXNnaWQgIiIKKyJsaWJmdHAuc28uMyBsaWJmdHAzICNNSU5WRVIjXG4iCisiIERlZmF1bHROZXRidWZAQmFzZSAzLjEtMS02XG4iCisiIEZ0cEFjY2Vzc0BCYXNlIDMuMS0xLTZcbiIKKyIgWy4uLl1cbiIKK21zZ3N0ciAiIgorImxpYmZ0cC5zby4zIGxpYmZ0cDMgI01JTlZFUiNcbiIKKyIgRGVmYXVsdE5ldGJ1ZkBCYXNlIDMuMS0xLTZcbiIKKyIgRnRwQWNjZXNzQEJhc2UgMy4xLTEtNlxuIgorIiBbLi4uXVxuIgorCisjLiB0eXBlOiBTUworIzogZGViLXN5bWJvbHMuNTo1MAorIywgbm8td3JhcAorbXNnaWQgIkFkdmFuY2VkIHN5bWJvbHMgZmlsZSIKK21zZ3N0ciAiRm9ydGdlc2Nocml0dGVuZSBTeW1ib2xkYXRlaSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNTo1MworbXNnaWQgImxpYkdMLnNvLjEgbGliZ2wxIgorbXNnc3RyICJsaWJHTC5zby4xIGxpYmdsMSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNTo1NQorbXNnaWQgInwgbGliZ2wxLW1lc2EtZ2x4ICNNSU5WRVIjIgorbXNnc3RyICJ8IGxpYmdsMS1tZXNhLWdseCAjTUlOVkVSIyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNTo2MQorIywgbm8td3JhcAorbXNnaWQgIiIKKyIqIEJ1aWxkLURlcGVuZHMtUGFja2FnZTogbGliZ2wxLW1lc2EtZGV2XG4iCisiIHB1YmxpY0dsU3ltYm9sQEJhc2UgNi4zLTFcbiIKKyIgWy4uLl1cbiIKKyIgaW1wbGVtZW50YXRpb25TcGVjaWZpY1N5bWJvbEBCYXNlIDYuNS4yLTcgMVxuIgorIiBbLi4uXVxuIgorbXNnc3RyICIiCisiKiBCdWlsZC1EZXBlbmRzLVBhY2thZ2U6IGxpYmdsMS1tZXNhLWRldlxuIgorIiBwdWJsaWNHbFN5bWJvbEBCYXNlIDYuMy0xXG4iCisiIFsuLi5dXG4iCisiIGltcGxlbWVudGF0aW9uU3BlY2lmaWNTeW1ib2xAQmFzZSA2LjUuMi03IDFcbiIKKyIgWy4uLl1cbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNTo2MworbXNnaWQgIkI8aHR0cDovL3dpa2kuZGViaWFuLm9yZy9Qcm9qZWN0cy9JbXByb3ZlZERwa2dTaGxpYmRlcHM+IgorbXNnc3RyICJCPGh0dHA6Ly93aWtpLmRlYmlhbi5vcmcvUHJvamVjdHMvSW1wcm92ZWREcGtnU2hsaWJkZXBzPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNTo2NQorbXNnaWQgIkI8ZHBrZy1zaGxpYmRlcHM+KDEpLCBCPGRwa2ctZ2Vuc3ltYm9scz4oMSkuIgorbXNnc3RyICJCPGRwa2ctc2hsaWJkZXBzPigxKSwgQjxkcGtnLWdlbnN5bWJvbHM+KDEpLiIKKworIy4gdHlwZTogVEgKKyM6IGRlYi10cmlnZ2Vycy41OjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkZWItdHJpZ2dlcnMiCittc2dzdHIgImRlYi10cmlnZ2VycyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXRyaWdnZXJzLjU6NAorbXNnaWQgImRlYi10cmlnZ2VycyAtIHBhY2thZ2UgdHJpZ2dlcnMiCittc2dzdHIgImRlYi10cmlnZ2VycyAtIFBha2V0LVRyaWdnZXIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi10cmlnZ2Vycy41OjcKK21zZ2lkICJ0cmlnZ2VycyIKK21zZ3N0ciAidHJpZ2dlcnMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi10cmlnZ2Vycy41OjEyCittc2dpZCAiIgorIkEgcGFja2FnZSBkZWNsYXJlcyBpdHMgcmVsYXRpb25zaGlwIHRvIHNvbWUgdHJpZ2dlcihzKSBieSBpbmNsdWRpbmcgYSAiCisiSTx0cmlnZ2Vycz4gZmlsZSBpbiBpdHMgY29udHJvbCBhcmNoaXZlIChpLmUuIEk8REVCSUFOL3RyaWdnZXJzPiBkdXJpbmcgIgorInBhY2thZ2UgY3JlYXRpb24pLiIKK21zZ3N0ciAiIgorIkVpbiBQYWtldCBlcmtsw6RydCBzZWluZSBCZXppZWh1bmcgenUgZWluaWdlbiBUcmlnZ2VyKG4pIChkZXV0c2NoOiBBdXNsw7ZzZXJuKSAiCisiaW5kZW0gZXMgZWluZSBEYXRlaSBJPHRyaWdnZXJzPiBpbiBzZWluZW0gU3RldWVyYXJjaGl2IChkLmguIEk8REVCSUFOLyIKKyJ0cmlnZ2Vycz4gd8OkaHJlbmQgZGVyIFBha2V0ZXJzdGVsbHVuZykgaGluenVuaW1tdC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi10cmlnZ2Vycy41OjE2Cittc2dpZCAiIgorIlRoaXMgZmlsZSBjb250YWlucyBkaXJlY3RpdmVzLCBvbmUgcGVyIGxpbmUuIExlYWRpbmcgYW5kIHRyYWlsaW5nIHdoaXRlc3BhY2UgIgorImFuZCBldmVyeXRoaW5nIGFmdGVyIHRoZSBmaXJzdCBCPCM+IG9uIGFueSBsaW5lIHdpbGwgYmUgdHJpbW1lZCwgYW5kIGVtcHR5ICIKKyJsaW5lcyB3aWxsIGJlIGlnbm9yZWQuIgorbXNnc3RyICIiCisiRGllc2UgRGF0ZWkgZW50aMOkbHQgRGlyZWt0aXZlbiwgZWluZSBwcm8gWmVpbGUuIExlZXJ6ZWljaGVuIGFtIEFuZmFuZyB1bmQgIgorIkVuZGUgc293aWUgYWxsZXMgbmFjaCBkZW0gZXJzdGVuIEI8Iz4gd2VyZGVuIGluIGplZGVyIFplaWxlIGVudGZlcm50IHVuZCAiCisibGVlcmUgWmVpbGVuIHdlcmRlbiBpZ25vcmllcnQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdHJpZ2dlcnMuNToxOAorbXNnaWQgIlRoZSB0cmlnZ2VyIGNvbnRyb2wgZGlyZWN0aXZlcyBjdXJyZW50bHkgc3VwcG9ydGVkIGFyZToiCittc2dzdHIgIkRpZSBkZXJ6ZWl0IHVudGVyc3TDvHR6dGVuIFN0ZXVlcmRpcmVrdGl2ZW4gZsO8ciBUcmlnZ2VyIHNpbmQ6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdHJpZ2dlcnMuNToyMgorbXNnaWQgIkI8aW50ZXJlc3Q+IEk8dHJpZ2dlci1uYW1lPiIKK21zZ3N0ciAiQjxpbnRlcmVzdD4gSTxUcmlnZ2VyLU5hbWU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdHJpZ2dlcnMuNToyNgorbXNnaWQgIkI8aW50ZXJlc3Qtbm9hd2FpdD4gSTx0cmlnZ2VyLW5hbWU+IgorbXNnc3RyICJCPGludGVyZXN0LW5vYXdhaXQ+IEk8VHJpZ2dlci1OYW1lPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXRyaWdnZXJzLjU6MzMKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRoYXQgdGhlIHBhY2thZ2UgaXMgaW50ZXJlc3RlZCBpbiB0aGUgbmFtZWQgdHJpZ2dlci4gQWxsIHRyaWdnZXJzICIKKyJpbiB3aGljaCBhIHBhY2thZ2UgaXMgaW50ZXJlc3RlZCBtdXN0IGJlIGxpc3RlZCB1c2luZyB0aGlzIGRpcmVjdGl2ZSBpbiB0aGUgIgorInRyaWdnZXJzIGNvbnRyb2wgZmlsZS4gVGhlIFwibm9hd2FpdFwiIHZhcmlhbnQgZG9lcyBub3QgcHV0IHRoZSB0cmlnZ2VyaW5nICIKKyJwYWNrYWdlcyBpbiB0cmlnZ2Vycy1hd2FpdGVkIHN0YXRlLiBUaGlzIHNob3VsZCBiZSB1c2VkIHdoZW4gdGhlICIKKyJmdW5jdGlvbmFsaXR5IHByb3ZpZGVkIGJ5IHRoZSB0cmlnZ2VyIGlzIG5vdCBjcnVjaWFsLiIKK21zZ3N0ciAiIgorIkdpYnQgYW4sIGRhc3MgZGFzIFBha2V0IGFuIGRlbSBiZW5hbm50ZW4gVHJpZ2dlciBpbnRlcmVzc2llcnQgaXN0LiBBbGxlICIKKyJUcmlnZ2VyLCBhbiBkZW5lbiBlaW4gUGFrZXQgaW50ZXJlc3NpZXJ0IGlzdCwgbcO8c3NlbiBtaXQgZGllc2VyIERpcmVrdGl2ZSBpbiAiCisiZGVyIFRyaWdnZXItU3RldWVyZGF0ZWkgYXVmZ2Vmw7xocnQgd2VyZGVuLiBEaWUgVmFyaWFudGUgwrtub2F3YWl0wqsgc2V0enQgZGllICIKKyJ0cmlnZ2VybmRlbiBQYWtldGUgbmljaHQgaW4gZGVuIFp1c3RhbmQgwrt0cmlnZ2Vycy1hd2FpdGVkwqsuIERpZXMgc29sbHRlICIKKyJ2ZXJ3YW5kdCB3ZXJkZW4sIHdlbm4gZGllIHZvbiBkZW4gVHJpZ2dlcm4gYmVyZWl0Z2VzdGVsbHRlIEZ1bmt0aW9uYWxpdMOkdCAiCisibmljaHQgw6R1w59lcnN0IHdpY2h0aWcgaXN0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXRyaWdnZXJzLjU6MzcKK21zZ2lkICJCPGFjdGl2YXRlPiBJPHRyaWdnZXItbmFtZT4iCittc2dzdHIgIkI8YWN0aXZhdGU+IEk8VHJpZ2dlci1OYW1lPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXRyaWdnZXJzLjU6NDEKK21zZ2lkICJCPGFjdGl2YXRlLW5vYXdhaXQ+IEk8dHJpZ2dlci1uYW1lPiIKK21zZ3N0ciAiQjxhY3RpdmF0ZS1ub2F3YWl0PiBJPFRyaWdnZXItTmFtZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi10cmlnZ2Vycy41OjUwCittc2dpZCAiIgorIkFycmFuZ2VzIHRoYXQgY2hhbmdlcyB0byB0aGlzIHBhY2thZ2UncyBzdGF0ZSB3aWxsIGFjdGl2YXRlIHRoZSBzcGVjaWZpZWQgIgorInRyaWdnZXIuIFRoZSB0cmlnZ2VyIHdpbGwgYmUgYWN0aXZhdGVkIGF0IHRoZSBzdGFydCBvZiB0aGUgZm9sbG93aW5nICIKKyJvcGVyYXRpb25zOiB1bnBhY2ssIGNvbmZpZ3VyZSwgcmVtb3ZlIChpbmNsdWRpbmcgZm9yIHRoZSBiZW5lZml0IG9mIGEgIgorImNvbmZsaWN0aW5nIHBhY2thZ2UpLCBwdXJnZSBhbmQgZGVjb25maWd1cmUuICBUaGUgXCJub2F3YWl0XCIgdmFyaWFudCBkb2VzICIKKyJub3QgcHV0IHRoZSB0cmlnZ2VyaW5nIHBhY2thZ2VzIGluIHRyaWdnZXJzLWF3YWl0ZWQgc3RhdGUuIFRoaXMgc2hvdWxkIGJlICIKKyJ1c2VkIHdoZW4gdGhlIGZ1bmN0aW9uYWxpdHkgcHJvdmlkZWQgYnkgdGhlIHRyaWdnZXIgaXMgbm90IGNydWNpYWwuIgorbXNnc3RyICIiCisiU29yZ3QgZGFmw7xyLCBkYXNzIMOEbmRlcnVuZ2VuIGFuIGRlbSBadXN0YW5kIGRpZXNlcyBQYWtldHMgZWluZW4gIgorInNwZXppZml6aWVydGVuIFRyaWdnZXIgYWt0aXZpZXJ0LiBEZXIgVHJpZ2dlciB3aXJkIGFtIEJlZ2lubiBmb2xnZW5kZXIgIgorIk9wZXJhdGlvbmVuIGFrdGl2aWVydDogdW5wYWNrLCBjb25maWd1cmUsIHJlbW92ZSAoaGluenVnZWbDvGd0IHp1bSBOdXR6ZW4gdm9uICIKKyJQYWtldGVuLCBkaWUgaW0gS29uZmxpa3QgenVlaW5hbmRlciBzdGVoZW4pLCBwdXJnZSB1bmQgZGVjb25maWd1cmUuIERpZSAiCisiVmFyaWFudGUgwrtub2F3YWl0wqsgc2V0enQgZGllIHRyaWdnZXJuZGVuIFBha2V0ZSBuaWNodCBpbiBkZW4gWnVzdGFuZCAiCisiwrt0cmlnZ2Vycy1hd2FpdGVkwqsuIERpZXMgc29sbHRlIHZlcndhbmR0IHdlcmRlbiwgd2VubiBkaWUgdm9uIGRlbiBUcmlnZ2VybiAiCisiYmVyZWl0Z2VzdGVsbHRlIEZ1bmt0aW9uYWxpdMOkdCBuaWNodCDDpHXDn2Vyc3Qgd2ljaHRpZyBpc3QuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdHJpZ2dlcnMuNTo1OAorbXNnaWQgIiIKKyJJZiB0aGlzIHBhY2thZ2UgZGlzYXBwZWFycyBkdXJpbmcgdGhlIHVucGFja2luZyBvZiBhbm90aGVyIHBhY2thZ2UgdGhlICIKKyJ0cmlnZ2VyIHdpbGwgYmUgYWN0aXZhdGVkIHdoZW4gdGhlIGRpc2FwcGVhcmFuY2UgaXMgbm90ZWQgdG93YXJkcyB0aGUgZW5kIG9mICIKKyJ0aGUgdW5wYWNrLiBUcmlnZ2VyIHByb2Nlc3NpbmcsIGFuZCB0cmFuc2l0aW9uIGZyb20gdHJpZ2dlcnMtYXdhaXRlZCB0byAiCisiaW5zdGFsbGVkLCBkb2VzIG5vdCBjYXVzZSBhY3RpdmF0aW9ucy4gIEluIHRoZSBjYXNlIG9mIHVucGFjaywgdHJpZ2dlcnMgIgorIm1lbnRpb25lZCBpbiBib3RoIHRoZSBvbGQgYW5kIG5ldyB2ZXJzaW9ucyBvZiB0aGUgcGFja2FnZSB3aWxsIGJlIGFjdGl2YXRlZC4iCittc2dzdHIgIiIKKyJGYWxscyBkaWVzZXMgUGFrZXQgd8OkaHJlbmQgZGVzIEVudHBhY2tlbnMgZWluZXMgYW5kZXJlbiBQYWtldHMgdmVyc2Nod2luZGV0LCAiCisid2lyZCBkZXIgVHJpZ2dlciBha3RpdmllcnQsIHdlbm4gZGFzIFZlcnNjaHdpbmRlbiB3w6RocmVuZCBkZXMgRW5kZXMgZGVyICIKKyJ1bnBhY2stT3BlcmF0aW9uIGJlbWVya3Qgd2lyZC4gVHJpZ2dlcnZlcmFyYmVpdHVuZyB1bmQgw5xiZXJnw6RuZ2Ugdm9uIFRyaWdnZXItIgorImVyd2FydGVuZCBhdWYgaW5zdGFsbGllcnQgZsO8aHJlbiBuaWNodCB6dSBBa3RpdmllcnVuZ2VuLiBJbSBGYWxsZSB2b24gdW5wYWNrICIKKyJ3ZXJkZW4gc293b2hsIGRpZSBpbiBkZXIgYWx0ZW4gYWxzIGF1Y2ggZGllIGluIGRlciBuZXVlbiBWZXJzaW9uIGRlcyBQYWtldHMgIgorImFuZ2VnZWJlbmVuIFRyaWdnZXIgYWt0aXZpZXJ0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXRyaWdnZXJzLjU6NjEKK21zZ2lkICIiCisiVW5rbm93biBkaXJlY3RpdmVzIGFyZSBhbiBlcnJvciB3aGljaCB3aWxsIHByZXZlbnQgaW5zdGFsbGF0aW9uIG9mIHRoZSAiCisicGFja2FnZS4iCittc2dzdHIgIiIKKyJVbmJla2FubnRlIERpcmVrdGl2ZW4gc2luZCBlaW4gRmVobGVyLCBkZXIgZGllIEluc3RhbGxhdGlvbiBlaW5lcyBQYWtldHMgIgorInZlcmhpbmRlcnQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdHJpZ2dlcnMuNTo2NgorbXNnaWQgIiIKKyJUaGUgXCItbm9hd2FpdFwiIHZhcmlhbnRzIGFyZSBvbmx5IHN1cHBvcnRlZCBieSBkcGtnIDEuMTYuMSBvciBuZXdlciwgYW5kICIKKyJ3aWxsIGxlYWQgdG8gZXJyb3JzIGlmIHVzZWQgd2l0aCBhbiBvbGRlciBkcGtnLiBJdCBpcyB0aHVzIHJlY29tbWVuZGVkIHRvICIKKyJhZGQgYSBcIlByZS1EZXBlbmRzOiBkcGtnIChFPGd0Pj0gMS4xNi4xKVwiIHRvIGFueSBwYWNrYWdlIHRoYXQgd2lzaCB0byB1c2UgIgorInRob3NlIGRpcmVjdGl2ZXMuIgorbXNnc3RyICIiCisiRGllIFZhcmlhbnRlbiDCuy1ub2F3YWl0wqsgd2VyZGVuIG51ciB2b24gRHBrZyAxLjE2LjEgb2RlciBuZXVlciB1bnRlcnN0w7x0enQgIgorInVuZCB3ZXJkZW4gYmVpIMOkbHRlcmVuIERwa2cgenUgRmVobGVybiBmw7xocmVuLiBFcyB3aXJkIGRhaGVyIGVtcGZvaGxlbiwgZWluICIKKyLCu1ByZS1EZXBlbmRzOiBkcGtnIChFPGd0Pj0gMS4xNi4xKcKrIHp1IGplZGVtIFBha2V0IGhpbnp1enVmw7xnZW4sIGRhc3MgZGllc2UgIgorIkRpcmVrdGl2ZW4gbnV0emVuIG3DtmNodGUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdHJpZ2dlcnMuNTo3MAorbXNnaWQgIiIKKyJCPGRwa2ctdHJpZ2dlcj4oMSksIEI8ZHBrZz4oMSksIEI8L3Vzci9zaGFyZS9kb2MvZHBrZy1kZXYvdHJpZ2dlcnMudHh0Lmd6Pi4iCittc2dzdHIgIiIKKyJCPGRwa2ctdHJpZ2dlcj4oMSksIEI8ZHBrZz4oMSksIEI8L3Vzci9zaGFyZS9kb2MvZHBrZy1kZXYvdHJpZ2dlcnMudHh0Lmd6Pi4iCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLjE6MQorIywgbm8td3JhcAorbXNnaWQgImRwa2ciCittc2dzdHIgImRwa2ciCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLjE6MSBkcGtnLmNmZy41OjEgZHBrZy1idWlsZGZsYWdzLjE6MSBkcGtnLWRlYi4xOjEKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MSBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjEgZHBrZy1xdWVyeS4xOjEKKyM6IGRwa2ctdHJpZ2dlci4xOjEgZHBrZy12ZW5kb3IuMToxIGRzZWxlY3QuY2ZnLjU6MQorIywgbm8td3JhcAorbXNnaWQgImRwa2cgc3VpdGUiCittc2dzdHIgImRwa2ctUHJvZ3JhbW1zYW1tbHVuZyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQKK21zZ2lkICJkcGtnIC0gcGFja2FnZSBtYW5hZ2VyIGZvciBEZWJpYW4iCittc2dzdHIgImRwa2cgLSBQYWtldHZlcndhbHRlciBmw7xyIERlYmlhbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjgKK21zZ2lkICJCPGRwa2c+IFtJPG9wdGlvbj4uLi5dIEk8YWN0aW9uPiIKK21zZ3N0ciAiQjxkcGtnPiBbSTxPcHRpb24+Li4uXSBJPEFrdGlvbmVuPiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2cuMTo5CisjLCBuby13cmFwCittc2dpZCAiV0FSTklORyIKK21zZ3N0ciAiV0FSTlVORyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjEzCittc2dpZCAiIgorIlRoaXMgbWFudWFsIGlzIGludGVuZGVkIGZvciB1c2VycyB3aXNoaW5nIHRvIHVuZGVyc3RhbmQgQjxkcGtnPidzIGNvbW1hbmQgIgorImxpbmUgb3B0aW9ucyBhbmQgcGFja2FnZSBzdGF0ZXMgaW4gbW9yZSBkZXRhaWwgdGhhbiB0aGF0IHByb3ZpZGVkIGJ5IEI8ZHBrZyAiCisiLS1oZWxwPi4iCittc2dzdHIgIiIKKyJEaWVzZXMgSGFuZGJ1Y2ggaXN0IGbDvHIgQmVudXR6ZXIgZ2VkYWNodCwgZGllIGRpZSBLb21tYW5kb3plaWxlbm9wdGlvbmVuIHVuZCAiCisiUGFrZXR6dXN0w6RuZGUgdm9uIEI8ZHBrZz4gZGV0YWlsbGllcnRlciB2ZXJzdGVoZW4gd29sbGVuLCBhbHMgZHVyY2ggQjxkcGtnIC0tIgorImhlbHA+IGJlc2NocmllYmVuIGlzdC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxOAorbXNnaWQgIiIKKyJJdCBzaG91bGQgSTxub3Q+IGJlIHVzZWQgYnkgcGFja2FnZSBtYWludGFpbmVycyB3aXNoaW5nIHRvIHVuZGVyc3RhbmQgaG93ICIKKyJCPGRwa2c+IHdpbGwgaW5zdGFsbCB0aGVpciBwYWNrYWdlcy4gVGhlIGRlc2NyaXB0aW9ucyBvZiB3aGF0IEI8ZHBrZz4gZG9lcyAiCisid2hlbiBpbnN0YWxsaW5nIGFuZCByZW1vdmluZyBwYWNrYWdlcyBhcmUgcGFydGljdWxhcmx5IGluYWRlcXVhdGUuIgorbXNnc3RyICIiCisiRXMgc29sbHRlIEk8bmljaHQ+IHZvbiBQYWtldGJldHJldWVybiB2ZXJ3ZW5kZXQgd2VyZGVuLCBkaWUgdmVyc3RlaGVuICIKKyJ3b2xsZW4sIHdpZSBCPGRwa2c+IGlociBQYWtldCBpbnN0YWxsaWVyZW4gd2lyZC4gRGllIEJlc2NocmVpYnVuZyB2b24gZGVuICIKKyJUw6R0aWdrZWl0ZW4gdm9uIEI8ZHBrZz4gYmVpbSBJbnN0YWxsaWVyZW4gdW5kIEVudGZlcm5lbiB2b24gUGFrZXRlbiBpc3QgIgorImJlc29uZGVycyB1bnp1bMOkbmdsaWNoLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjI2Cittc2dpZCAiIgorIkI8ZHBrZz4gaXMgYSB0b29sIHRvIGluc3RhbGwsIGJ1aWxkLCByZW1vdmUgYW5kIG1hbmFnZSBEZWJpYW4gcGFja2FnZXMuIFRoZSAiCisicHJpbWFyeSBhbmQgbW9yZSB1c2VyLWZyaWVuZGx5IGZyb250LWVuZCBmb3IgQjxkcGtnPiBpcyBCPGFwdGl0dWRlPigxKS4gIgorIkI8ZHBrZz4gaXRzZWxmIGlzIGNvbnRyb2xsZWQgZW50aXJlbHkgdmlhIGNvbW1hbmQgbGluZSBwYXJhbWV0ZXJzLCB3aGljaCAiCisiY29uc2lzdCBvZiBleGFjdGx5IG9uZSBhY3Rpb24gYW5kIHplcm8gb3IgbW9yZSBvcHRpb25zLiBUaGUgYWN0aW9uLXBhcmFtZXRlciAiCisidGVsbHMgQjxkcGtnPiB3aGF0IHRvIGRvIGFuZCBvcHRpb25zIGNvbnRyb2wgdGhlIGJlaGF2aW9yIG9mIHRoZSBhY3Rpb24gaW4gIgorInNvbWUgd2F5LiIKK21zZ3N0ciAiIgorIkI8ZHBrZz4gaXN0IGVpbiBXZXJremV1ZywgdW0gRGViaWFuLVBha2V0ZSB6dSBpbnN0YWxsaWVyZW4sIHp1IGJhdWVuIHVuZCB6dSAiCisidmVyd2FsdGVuLiBEaWUgcHJpbcOkcmUgdW5kIGJlbnV0emVyZnJldW5kbGljaGVyZSBPYmVyZmzDpGNoZSBmw7xyIEI8ZHBrZz4gaXN0ICIKKyJCPGFwdGl0dWRlPigxKS4gQjxkcGtnPiBzZWxic3Qgd2lyZCBrb21wbGV0dCDDvGJlciBLb21tYW5kb3plaWxlbm9wdGlvbmVuICIKKyJnZXN0ZXVlcnQsIGRpZSBhdXMgZ2VuYXUgZWluZXIgQWt0aW9uIHVuZCBOdWxsIG9kZXIgbWVocmVyZW4gT3B0aW9uZW4gIgorImJlc3RlaGVuLiBEZXIgQWt0aW9uc3BhcmFtZXRlciB0ZWlsdCBCPGRwa2c+IG1pdCwgd2FzIHp1IHR1biBpc3QsIHVuZCBkaWUgIgorIk9wdGlvbmVuIHN0ZXVlcm4gZGllIEFrdGlvbmVuIGluIGlyZ2VuZGVpbmVyIFdlaXNlLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjMzCittc2dpZCAiIgorIkI8ZHBrZz4gY2FuIGFsc28gYmUgdXNlZCBhcyBhIGZyb250LWVuZCB0byBCPGRwa2ctZGViPigxKSBhbmQgQjxkcGtnLXF1ZXJ5PiIKKyIoMSkuIFRoZSBsaXN0IG9mIHN1cHBvcnRlZCBhY3Rpb25zIGNhbiBiZSBmb3VuZCBsYXRlciBvbiBpbiB0aGUgQjxBQ1RJT05TPiAiCisic2VjdGlvbi4gSWYgYW55IHN1Y2ggYWN0aW9uIGlzIGVuY291bnRlcmVkIEI8ZHBrZz4ganVzdCBydW5zIEI8ZHBrZy1kZWI+IG9yICIKKyJCPGRwa2ctcXVlcnk+IHdpdGggdGhlIHBhcmFtZXRlcnMgZ2l2ZW4gdG8gaXQsIGJ1dCBubyBzcGVjaWZpYyBvcHRpb25zIGFyZSAiCisiY3VycmVudGx5IHBhc3NlZCB0byB0aGVtLCB0byB1c2UgYW55IHN1Y2ggb3B0aW9uIHRoZSBiYWNrLWVuZHMgbmVlZCB0byBiZSAiCisiY2FsbGVkIGRpcmVjdGx5LiIKK21zZ3N0ciAiIgorIkI8ZHBrZz4ga2FubiBhdWNoIGFscyBPYmVyZmzDpGNoZSBmw7xyIEI8ZHBrZy1kZWI+KDEpIHVuZCBCPGRwa2ctcXVlcnk+KDEpICIKKyJ2ZXJ3ZW5kZXQgd2VyZGVuLiBEaWUgTGlzdGUgZGVyIHVudGVyc3TDvHR6ZW4gQWt0aW9uZW4ga2FubiBpbSBBYnNjaG5pdHQgIgorIkI8QUtUSU9ORU4+IGdlZnVuZGVuIHdlcmRlbi4gRmFsbHMgc28gZWluZSBBa3Rpb24gYW5nZXRyb2ZmZW4gd2lyZCwgZsO8aHJ0ICIKKyJCPGRwa2c+IGVpbmZhY2ggQjxkcGtnLWRlYj4gb2RlciBCPGRwa2ctcXVlcnk+IG1pdCBkZW4gw7xiZXJnZWJlbmVuICIKKyJQYXJhbWV0ZXJuIGF1cywgYWxsZXJkaW5ncyB3ZXJkZW4gZGVyemVpdCBrZWluZSBzcGV6aWZpc2NoZW4gT3B0aW9uZW4gYW4gIgorImRpZXNlIMO8YmVyZ2ViZW4uIFVtIHNvbGNoZSBPcHRpb25lbiB6dSB2ZXJ3ZW5kZW4sIG3DvHNzZW4gZGllIEJhY2tlbmRzIGRpcmVrdCAiCisiYXVmZ2VydWZlbiB3ZXJkZW4uIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy4xOjM0CisjLCBuby13cmFwCittc2dpZCAiSU5GT1JNQVRJT04gQUJPVVQgUEFDS0FHRVMiCittc2dzdHIgIklORk9STUFUSU9ORU4gw5xCRVIgUEFLRVRFIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzkKK21zZ2lkICIiCisiQjxkcGtnPiBtYWludGFpbnMgc29tZSB1c2FibGUgaW5mb3JtYXRpb24gYWJvdXQgYXZhaWxhYmxlIHBhY2thZ2VzLiBUaGUgIgorImluZm9ybWF0aW9uIGlzIGRpdmlkZWQgaW4gdGhyZWUgY2xhc3NlczogQjxzdGF0ZXM+LCBCPHNlbGVjdGlvbiBzdGF0ZXM+IGFuZCAiCisiQjxmbGFncz4uIFRoZXNlIHZhbHVlcyBhcmUgaW50ZW5kZWQgdG8gYmUgY2hhbmdlZCBtYWlubHkgd2l0aCBCPGRzZWxlY3Q+LiIKK21zZ3N0ciAiIgorIkI8ZHBrZz4gdmVyd2FsdGV0IGVpbmlnZSBuw7x0emxpY2hlIEluZm9ybWF0aW9uZW4gw7xiZXIgdmVyZsO8Z2JhcmUgUGFrZXRlLiBEaWUgIgorIkluZm9ybWF0aW9uZW4gc2luZCBpbiBkcmVpIEtsYXNzZW4gdW50ZXJ0ZWlsdDogQjxTdGF0dXM+LCBCPEF1c3dhaGxzdGF0dXM+ICIKKyJ1bmQgQjxTY2hhbHRlcj4uIERpZXNlIFdlcnRlIHNpbmQgaGF1cHRzw6RjaGxpY2ggenVyIMOEbmRlcnVuZyBkdXJjaCAiCisiQjxkc2VsZWN0PiBnZWRhY2h0LiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2cuMTozOQorIywgbm8td3JhcAorbXNnaWQgIlBBQ0tBR0UgU1RBVEVTIgorbXNnc3RyICJQQUtFVFpVU1TDhE5ERSIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo0MAorIywgbm8td3JhcAorbXNnaWQgIkI8bm90LWluc3RhbGxlZD4iCittc2dzdHIgIkI8bmljaHQtaW5zdGFsbGllcnQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDMKK21zZ2lkICJUaGUgcGFja2FnZSBpcyBub3QgaW5zdGFsbGVkIG9uIHlvdXIgc3lzdGVtLiIKK21zZ3N0ciAiRGFzIFBha2V0IGlzdCBuaWNodCBhdWYgSWhyZW0gU3lzdGVtIGluc3RhbGxpZXJ0LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo0MworIywgbm8td3JhcAorbXNnaWQgIkI8Y29uZmlnLWZpbGVzPiIKK21zZ3N0ciAiQjxDb25maWctRGF0ZWllbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0NgorbXNnaWQgIk9ubHkgdGhlIGNvbmZpZ3VyYXRpb24gZmlsZXMgb2YgdGhlIHBhY2thZ2UgZXhpc3Qgb24gdGhlIHN5c3RlbS4iCittc2dzdHIgIk51ciBkaWUgS29uZmlndXJhdGlvbnNkYXRlaWVuIGRlcyBQYWtldHMgZXhpc3RpZXJlbiBhdWYgZGVtIFN5c3RlbS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NDYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGhhbGYtaW5zdGFsbGVkPiIKK21zZ3N0ciAiQjxoYWxiLWluc3RhbGxpZXJ0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjUwCittc2dpZCAiIgorIlRoZSBpbnN0YWxsYXRpb24gb2YgdGhlIHBhY2thZ2UgaGFzIGJlZW4gc3RhcnRlZCwgYnV0IG5vdCBjb21wbGV0ZWQgZm9yIHNvbWUgIgorInJlYXNvbi4iCittc2dzdHIgIiIKKyJEaWUgSW5zdGFsbGF0aW9uIGRlcyBQYWtldGVzIHd1cmRlIGJlZ29ubmVuLCBhYmVyIGF1cyBpcmdlbmRlaW5lbSBHcnVuZCAiCisibmljaHQgYWJnZXNjaGxvc3Nlbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHVucGFja2VkPiIKK21zZ3N0ciAiQjxlbnRwYWNrdD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1MworbXNnaWQgIlRoZSBwYWNrYWdlIGlzIHVucGFja2VkLCBidXQgbm90IGNvbmZpZ3VyZWQuIgorbXNnc3RyICJEYXMgUGFrZXQgaXN0IGVudHBhY2t0LCBhYmVyIG5pY2h0IGtvbmZpZ3VyaWVydC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGhhbGYtY29uZmlndXJlZD4iCittc2dzdHIgIkI8aGFsYi1rb25maWd1cmllcnQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTcKK21zZ2lkICIiCisiVGhlIHBhY2thZ2UgaXMgdW5wYWNrZWQgYW5kIGNvbmZpZ3VyYXRpb24gaGFzIGJlZW4gc3RhcnRlZCwgYnV0IG5vdCB5ZXQgIgorImNvbXBsZXRlZCBmb3Igc29tZSByZWFzb24uIgorbXNnc3RyICIiCisiRGFzIFBha2V0IGlzdCBlbnRwYWNrdCB1bmQgZGllIEtvbmZpZ3VyYXRpb24gd3VyZGUgYmVnb25uZW4sIGFiZXIgYXVzICIKKyJpcmdlbmRlaW5lbSBHcnVuZCBuaWNodCBhYmdlc2NobG9zc2VuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo1NworIywgbm8td3JhcAorbXNnaWQgIkI8dHJpZ2dlcnMtYXdhaXRlZD4iCittc2dzdHIgIkI8dHJpZ2dlcnMtYXdhaXRlZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2MAorbXNnaWQgIlRoZSBwYWNrYWdlIGF3YWl0cyB0cmlnZ2VyIHByb2Nlc3NpbmcgYnkgYW5vdGhlciBwYWNrYWdlLiIKK21zZ3N0ciAiRGFzIFBha2V0IGVyd2FydGV0IFRyaWdnZXItVmVyYXJiZWl0dW5nIGR1cmNoIGVpbiBhbmRlcmVzIFBha2V0LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2MAorIywgbm8td3JhcAorbXNnaWQgIkI8dHJpZ2dlcnMtcGVuZGluZz4iCittc2dzdHIgIkI8dHJpZ2dlcnMtcGVuZGluZz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2MworbXNnaWQgIlRoZSBwYWNrYWdlIGhhcyBiZWVuIHRyaWdnZXJlZC4iCittc2dzdHIgIkRhcyBQYWtldCB3dXJkZSBnZXRyaWdnZXJ0LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2MworIywgbm8td3JhcAorbXNnaWQgIkI8aW5zdGFsbGVkPiIKK21zZ3N0ciAiQjxpbnN0YWxsaWVydD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2NgorbXNnaWQgIlRoZSBwYWNrYWdlIGlzIHVucGFja2VkIGFuZCBjb25maWd1cmVkIE9LLiIKK21zZ3N0ciAiRGFzIFBha2V0IGlzdCBlbnRwYWNrdCB1bmQga29uZmlndXJpZXJ0ZSBrb3JyZWt0LiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2cuMTo2NgorIywgbm8td3JhcAorbXNnaWQgIlBBQ0tBR0UgU0VMRUNUSU9OIFNUQVRFUyIKK21zZ3N0ciAiUEFLRVRBVVNXQUhMLVNUQVRVUyIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2NworIywgbm8td3JhcAorbXNnaWQgIkI8aW5zdGFsbD4iCittc2dzdHIgIkI8aW5zdGFsbGllcmU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzAKK21zZ2lkICJUaGUgcGFja2FnZSBpcyBzZWxlY3RlZCBmb3IgaW5zdGFsbGF0aW9uLiIKK21zZ3N0ciAiRGFzIFBha2V0IGlzdCB6dXIgSW5zdGFsbGF0aW9uIGF1c2dld8OkaGx0LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo3MAorIywgbm8td3JhcAorbXNnaWQgIkI8aG9sZD4iCittc2dzdHIgIkI8aGFsdGVuPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjc0Cittc2dpZCAiIgorIkEgcGFja2FnZSBtYXJrZWQgdG8gYmUgb24gQjxob2xkPiBpcyBub3QgaGFuZGxlZCBieSBCPGRwa2c+LCB1bmxlc3MgZm9yY2VkICIKKyJ0byBkbyB0aGF0IHdpdGggb3B0aW9uIEI8LS1mb3JjZS1ob2xkPi4iCittc2dzdHIgIiIKKyJFaW4gUGFrZXQsIGRhcyBtaXQgQjxoYWx0ZW4+IG1hcmtpZXJ0IGlzdCwgd2lyZCB2b24gQjxkcGtnPiBuaWNodCBiZWhhbmRlbHQsICIKKyJlcyBzZWkgZGVubiBTaWUgZXJ6d2luZ2VuIGRpZXMgbWl0IGRlciBPcHRpb24gQjwtLWZvcmNlLWhvbGQ+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo3NAorIywgbm8td3JhcAorbXNnaWQgIkI8ZGVpbnN0YWxsPiIKK21zZ3N0ciAiQjxkZWluc3RhbGxpZXJlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjc4Cittc2dpZCAiIgorIlRoZSBwYWNrYWdlIGlzIHNlbGVjdGVkIGZvciBkZWluc3RhbGxhdGlvbiAoaS5lLiB3ZSB3YW50IHRvIHJlbW92ZSBhbGwgIgorImZpbGVzLCBleGNlcHQgY29uZmlndXJhdGlvbiBmaWxlcykuIgorbXNnc3RyICIiCisiRGFzIFBha2V0IGlzdCB6dXIgRGVpbnN0YWxsYXRpb24gYXVzZ2V3w6RobHQgKGQuaC4gd2lyIHdvbGxlbiBhbGxlIERhdGVpZW4gIgorImF1w59lciBkZW4gS29uZmlndXJhdGlvbnNkYXRlaWVuIGVudGZlcm5lbikuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjc4CisjLCBuby13cmFwCittc2dpZCAiQjxwdXJnZT4iCittc2dzdHIgIkI8dm9sbHN0w6RuZGlnIGzDtnNjaGVuPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjgyCittc2dpZCAiIgorIlRoZSBwYWNrYWdlIGlzIHNlbGVjdGVkIHRvIGJlIHB1cmdlZCAoaS5lLiB3ZSB3YW50IHRvIHJlbW92ZSBldmVyeXRoaW5nIGZyb20gIgorInN5c3RlbSBkaXJlY3RvcmllcywgZXZlbiBjb25maWd1cmF0aW9uIGZpbGVzKS4iCittc2dzdHIgIiIKKyJEYXMgUGFrZXQgaXN0IHp1bSB2b2xsc3TDpG5kaWdlbiBMw7ZzY2hlbiAowrtwdXJnZcKrKSBhdXNnZXfDpGhsdCAoZC5oLiB3aXIgIgorIndvbGxlbiBhbGxlIERhdGVpZW4gYXVzIGRlbiBTeXN0ZW12ZXJ6ZWljaG5pc3NlbiBpbmtsdXNpdmUgZGVyICIKKyJLb25maWd1cmF0aW9uc2RhdGVpZW4gZW50ZmVybmVuKS4iCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLjE6ODIKKyMsIG5vLXdyYXAKK21zZ2lkICJQQUNLQUdFIEZMQUdTIgorbXNnc3RyICJQQUtFVC1TQ0hBTFRFUiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo4MworIywgbm8td3JhcAorbXNnaWQgIkI8cmVpbnN0LXJlcXVpcmVkPiIKK21zZ3N0ciAiQjxOZXVpbnN0LiBub3R3PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjg4Cittc2dpZCAiIgorIkEgcGFja2FnZSBtYXJrZWQgQjxyZWluc3QtcmVxdWlyZWQ+IGlzIGJyb2tlbiBhbmQgcmVxdWlyZXMgcmVpbnN0YWxsYXRpb24uICIKKyJUaGVzZSBwYWNrYWdlcyBjYW5ub3QgYmUgcmVtb3ZlZCwgdW5sZXNzIGZvcmNlZCB3aXRoIG9wdGlvbiBCPC0tZm9yY2UtcmVtb3ZlLSIKKyJyZWluc3RyZXE+LiIKK21zZ3N0ciAiIgorIkVpbiBtaXQgQjxOZXVpbnN0LiBub3R3PiBtYXJraWVydGVzIFBha2V0IGlzdCBkZWZla3QgdW5kIG11c3MgZXJuZXV0ICIKKyJpbnN0YWxsaWVydCB3ZXJkZW4uIERpZXNlIFBha2V0ZSBrw7ZubmVuIG5pY2h0IGVudGZlcm50IHdlcmRlbiwgZXMgc2VpIGRlbm4sICIKKyJTaWUgZXJ6d2luZ2VuIGRpZXMgbWl0IGRlciBPcHRpb24gQjwtLWZvcmNlLXJlbW92ZS1yZWluc3RyZXE+LiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2cuMTo4OSBkc2VsZWN0LjE6MTIwCisjLCBuby13cmFwCittc2dpZCAiQUNUSU9OUyIKK21zZ3N0ciAiQUtUSU9ORU4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6OTAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1pPiwgQjwtLWluc3RhbGw+IEk8cGFja2FnZS1maWxlPi4uLiIKK21zZ3N0ciAiQjwtaT4sIEI8LS1pbnN0YWxsPiBJPFBha2V0ZGF0ZWk+Li4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6OTQKK21zZ2lkICIiCisiSW5zdGFsbCB0aGUgcGFja2FnZS4gSWYgQjwtLXJlY3Vyc2l2ZT4gb3IgQjwtUj4gb3B0aW9uIGlzIHNwZWNpZmllZCwgIgorIkk8cGFja2FnZS1maWxlPiBtdXN0IHJlZmVyIHRvIGEgZGlyZWN0b3J5IGluc3RlYWQuIgorbXNnc3RyICIiCisiSW5zdGFsbGllcmUgZGFzIFBha2V0LiBGYWxscyBkaWUgQjwtLXJlY3Vyc2l2ZT4gb2RlciBCPC1SPi1PcHRpb24gYW5nZWdlYmVuICIKKyJpc3QsIG11c3Mgc2ljaCBJPFBha2V0ZGF0ZWk+IHN0YXR0ZGVzc2VuIGF1ZiBlaW4gVmVyemVpY2huaXMgYmV6aWVoZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6OTYKK21zZ2lkICJJbnN0YWxsYXRpb24gY29uc2lzdHMgb2YgdGhlIGZvbGxvd2luZyBzdGVwczoiCittc2dzdHIgIkRpZSBJbnN0YWxsYXRpb24gYmVzdGVodCBhdXMgZm9sZ2VuZGVuIFNjaHJpdHRlbjoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo5OQorbXNnaWQgIkI8MS4+IEV4dHJhY3QgdGhlIGNvbnRyb2wgZmlsZXMgb2YgdGhlIG5ldyBwYWNrYWdlLiIKK21zZ3N0ciAiQjwxLj4gRXh0cmFoaWVyZSBkaWUgU3RldWVyZGF0ZWllbiBhdXMgZGVtIG5ldWVuIFBha2V0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjEwMworbXNnaWQgIiIKKyJCPDIuPiBJZiBhbm90aGVyIHZlcnNpb24gb2YgdGhlIHNhbWUgcGFja2FnZSB3YXMgaW5zdGFsbGVkIGJlZm9yZSB0aGUgbmV3ICIKKyJpbnN0YWxsYXRpb24sIGV4ZWN1dGUgSTxwcmVybT4gc2NyaXB0IG9mIHRoZSBvbGQgcGFja2FnZS4iCittc2dzdHIgIiIKKyJCPDIuPiBGYWxscyBlaW5lIGFuZGVyZSBWZXJzaW9uIGRlcyBnbGVpY2hlbiBQYWtldHMgdm9yIGRlciBkZXIgbmV1ZW4gIgorIkluc3RhbGxhdGlvbiBpbnN0YWxsaWVydCB3YXIsIGRhbm4gZsO8aHJlIGRhcyBJPHByZXJtPi1Ta3JpcHQgZGVzIGFsdGVuICIKKyJQYWtldGVzIGF1cy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxMDYKK21zZ2lkICJCPDMuPiBSdW4gSTxwcmVpbnN0PiBzY3JpcHQsIGlmIHByb3ZpZGVkIGJ5IHRoZSBwYWNrYWdlLiIKK21zZ3N0ciAiIgorIkI8My4+IEbDvGhyZSBkYXMgSTxwcmVpbnN0Pi1Ta3JpcHQgYXVzLCBmYWxscyBkaWVzIHZvbSBQYWtldCBiZXJlaXRnZXN0ZWxsdCAiCisid2lyZC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxMTAKK21zZ2lkICIiCisiQjw0Lj4gVW5wYWNrIHRoZSBuZXcgZmlsZXMsIGFuZCBhdCB0aGUgc2FtZSB0aW1lIGJhY2sgdXAgdGhlIG9sZCBmaWxlcywgc28gIgorInRoYXQgaWYgc29tZXRoaW5nIGdvZXMgd3JvbmcsIHRoZXkgY2FuIGJlIHJlc3RvcmVkLiIKK21zZ3N0ciAiIgorIkI8NC4+IEVudHBhY2tlIGRpZSBuZXVlbiBEYXRlaWVuIHVuZCBzaWNoZXJlIGdsZWljaHplaXRpZyBkaWUgYWx0ZW4gRGF0ZWllbiwgIgorInNvIGRhc3MgZGllc2UsIGZhbGxzIGV0d2FzIHNjaGllZiBnZWh0LCB3aWVkZXJoZXJnZXN0ZWxsdCB3ZXJkZW4ga8O2bm5lbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxMTcKK21zZ2lkICIiCisiQjw1Lj4gSWYgYW5vdGhlciB2ZXJzaW9uIG9mIHRoZSBzYW1lIHBhY2thZ2Ugd2FzIGluc3RhbGxlZCBiZWZvcmUgdGhlIG5ldyAiCisiaW5zdGFsbGF0aW9uLCBleGVjdXRlIHRoZSBJPHBvc3RybT4gc2NyaXB0IG9mIHRoZSBvbGQgcGFja2FnZS4gTm90ZSB0aGF0ICIKKyJ0aGlzIHNjcmlwdCBpcyBleGVjdXRlZCBhZnRlciB0aGUgSTxwcmVpbnN0PiBzY3JpcHQgb2YgdGhlIG5ldyBwYWNrYWdlLCAiCisiYmVjYXVzZSBuZXcgZmlsZXMgYXJlIHdyaXR0ZW4gYXQgdGhlIHNhbWUgdGltZSBvbGQgZmlsZXMgYXJlIHJlbW92ZWQuIgorbXNnc3RyICIiCisiQjw1Lj4gRmFsbHMgZWluZSBhbmRlcmUgVmVyc2lvbiBkZXMgZ2xlaWNoZW4gUGFrZXRzIHZvciBkZXIgZGVyIG5ldWVuICIKKyJJbnN0YWxsYXRpb24gaW5zdGFsbGllcnQgd2FyLCBkYW5uIGbDvGhyZSBkYXMgSTxwb3N0cm0+LVNrcmlwdCBkZXMgYWx0ZW4gIgorIlBha2V0ZXMgYXVzLiBCZWFjaHRlbiBTaWUsIGRhc3MgZGllc2VzIFNrcmlwdCBuYWNoIGRlbSBJPHByZWluc3Q+LVNrcmlwdCBkZXMgIgorIm5ldWVuIFBha2V0cyBhdXNnZWbDvGhydCB3aXJkLCBkYSBuZXVlIERhdGVpZW4gemVpdGdsZWljaCB6dSBkZXIgRW50ZmVybnVuZyAiCisiYWx0ZXIgRGF0ZWllbiBnZXNjaHJpZWJlbiB3ZXJkZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTIxCittc2dpZCAiIgorIkI8Ni4+IENvbmZpZ3VyZSB0aGUgcGFja2FnZS4gU2VlIEI8LS1jb25maWd1cmU+IGZvciBkZXRhaWxlZCBpbmZvcm1hdGlvbiAiCisiYWJvdXQgaG93IHRoaXMgaXMgZG9uZS4iCittc2dzdHIgIiIKKyJCPDYuPiBLb25maWd1cmllcmUgZGFzIFBha2V0LiBMZXNlbiBTaWUgQjwtLWNvbmZpZ3VyZT4gZsO8ciBkZXRhaWxsaWVydGUgIgorIkluZm9ybWF0aW9uZW4gd2llIGRpZXMgZ2VzY2hpZWh0LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToxMjEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tdW5wYWNrID5JPHBhY2thZ2UtZmlsZT4uLi4iCittc2dzdHIgIkI8LS11bnBhY2sgPkk8UGFrZXRkYXRlaT4gLi4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTI2Cittc2dpZCAiIgorIlVucGFjayB0aGUgcGFja2FnZSwgYnV0IGRvbid0IGNvbmZpZ3VyZSBpdC4gSWYgQjwtLXJlY3Vyc2l2ZT4gb3IgQjwtUj4gIgorIm9wdGlvbiBpcyBzcGVjaWZpZWQsIEk8cGFja2FnZS1maWxlPiBtdXN0IHJlZmVyIHRvIGEgZGlyZWN0b3J5IGluc3RlYWQuIgorbXNnc3RyICIiCisiRW50cGFja2UgZGFzIFBha2V0LCBhYmVyIGtvbmZpZ3VyaWVyZSBlcyBuaWNodC4gRmFsbHMgZGllIEI8LS1yZWN1cnNpdmU+ICIKKyJvZGVyIEI8LVI+LU9wdGlvbiBhbmdlZ2ViZW4gaXN0LCBtdXNzIHNpY2ggSTxQYWtldGRhdGVpPiBzdGF0dGRlc3NlbiBhdWYgZWluICIKKyJWZXJ6ZWljaG5pcyBiZXppZWhlbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MTI2CisjLCBuby13cmFwCittc2dpZCAiQjwtLWNvbmZpZ3VyZSA+STxwYWNrYWdlPi4uLnxCPC1hPnxCPC0tcGVuZGluZz4iCittc2dzdHIgIkI8LS1jb25maWd1cmUgPkk8UGFrZXQ+IC4uLnxCPC1hPnxCPC0tcGVuZGluZz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxMzEKK21zZ2lkICIiCisiQ29uZmlndXJlIGEgcGFja2FnZSB3aGljaCBoYXMgYmVlbiB1bnBhY2tlZCBidXQgbm90IHlldCBjb25maWd1cmVkLiAgSWYgQjwtIgorImE+IG9yIEI8LS1wZW5kaW5nPiBpcyBnaXZlbiBpbnN0ZWFkIG9mIEk8cGFja2FnZT4sIGFsbCB1bnBhY2tlZCBidXQgIgorInVuY29uZmlndXJlZCBwYWNrYWdlcyBhcmUgY29uZmlndXJlZC4iCittc2dzdHIgIiIKKyJLb25maWd1cmllcnQgZWluIGVudHBhY2t0ZXMgYWJlciBub2NoIG5pY2h0IGtvbmZpZ3VyaWVydGVzIFBha2V0LiBGYWxscyBCPC0iCisiYT4gb2RlciBCPC0tcGVuZGluZz4gYW5zdGVsbGUgdm9uIEk8UGFrZXQ+IGFuZ2VnZWJlbiBpc3QsIHdlcmRlbiBhbGxlICIKKyJlbnRwYWNrdGVuIGFiZXIgbmljaHQga29uZmlndXJpZXJ0ZW4gUGFrZXRlIGtvbmZpZ3VyaWVydC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxMzUKK21zZ2lkICIiCisiVG8gcmVjb25maWd1cmUgYSBwYWNrYWdlIHdoaWNoIGhhcyBhbHJlYWR5IGJlZW4gY29uZmlndXJlZCwgdHJ5IHRoZSBCPGRwa2ctIgorInJlY29uZmlndXJlPig4KSAgY29tbWFuZCBpbnN0ZWFkLiIKK21zZ3N0ciAiIgorIlVtIGVpbiBQYWtldCB6dSByZWtvbmZpZ3VyaWVyZW4sIGRhc3MgYmVyZWl0cyBrb25maWd1cmllcnQgd3VyZGUsIHZlcndlbmRlbiAiCisiU2llIHN0YXR0ZGVzc2VuIGRlbiBCZWZlaGwgQjxkcGtnLXJlY29uZmlndXJlPig4KS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxMzcKK21zZ2lkICJDb25maWd1cmluZyBjb25zaXN0cyBvZiB0aGUgZm9sbG93aW5nIHN0ZXBzOiIKK21zZ3N0ciAiRGllIEtvbmZpZ3VyYXRpb24gYmVzdGVodCBhdXMgZm9sZ2VuZGVuIFNjaHJpdHRlbjoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxNDIKK21zZ2lkICIiCisiQjwxLj4gVW5wYWNrIHRoZSBjb25mZmlsZXMsIGFuZCBhdCB0aGUgc2FtZSB0aW1lIGJhY2sgdXAgdGhlIG9sZCBjb25mZmlsZXMsICIKKyJzbyB0aGF0IHRoZXkgY2FuIGJlIHJlc3RvcmVkIGlmIHNvbWV0aGluZyBnb2VzIHdyb25nLiIKK21zZ3N0ciAiIgorIkI8MS4+IEVudHBhY2tlIGRpZSBDb25mZmlsZXMgdW5kIHNpY2hlcmUgZ2xlaWNoemVpdGlnIGRpZSBhbHRlbiBDb25mZmlsZXMsICIKKyJzbyBkYXNzIGRpZXNlLCBmYWxscyBldHdhcyBzY2hpZWYgZ2VodCwgd2llZGVyaGVyZ2VzdGVsbHQgd2VyZGVuIGvDtm5uZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTQ1Cittc2dpZCAiQjwyLj4gUnVuIEk8cG9zdGluc3Q+IHNjcmlwdCwgaWYgcHJvdmlkZWQgYnkgdGhlIHBhY2thZ2UuIgorbXNnc3RyICIiCisiQjwyLj4gRsO8aHJlIGRhcyBJPHBvc3RpbnN0Pi1Ta3JpcHQgYXVzLCBmYWxscyBkaWVzIHZvbSBQYWtldCBiZXJlaXRnZXN0ZWxsdCAiCisid2lyZC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MTQ1CisjLCBuby13cmFwCittc2dpZCAiQjwtLXRyaWdnZXJzLW9ubHk+IEk8cGFja2FnZT4uLi58QjwtYT58QjwtLXBlbmRpbmc+IgorbXNnc3RyICJCPC0tdHJpZ2dlcnMtb25seT4gSTxQYWtldD4uLi58QjwtYT58QjwtLXBlbmRpbmc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTUyCittc2dpZCAiIgorIlByb2Nlc3NlcyBvbmx5IHRyaWdnZXJzLiBBbGwgcGVuZGluZyB0cmlnZ2VycyB3aWxsIGJlIHByb2Nlc3NlZC4gSWYgcGFja2FnZSAiCisibmFtZXMgYXJlIHN1cHBsaWVkIG9ubHkgdGhvc2UgcGFja2FnZXMnIHRyaWdnZXJzIHdpbGwgYmUgcHJvY2Vzc2VkLCBleGFjdGx5ICIKKyJvbmNlIGVhY2ggd2hlcmUgbmVjZXNzYXJ5LiBVc2Ugb2YgdGhpcyBvcHRpb24gbWF5IGxlYXZlIHBhY2thZ2VzIGluIHRoZSAiCisiaW1wcm9wZXIgQjx0cmlnZ2Vycy1hd2FpdGVkPiBhbmQgQjx0cmlnZ2Vycy1wZW5kaW5nPiBzdGF0ZXMuIFRoaXMgY2FuIGJlICIKKyJmaXhlZCBsYXRlciBieSBydW5uaW5nOiBCPGRwa2cgLS1jb25maWd1cmUgLS1wZW5kaW5nPi4iCittc2dzdHIgIiIKKyJWZXJhcmJlaXRlIG51ciBUcmlnZ2VyLiBBbGxlIGF1c3N0ZWhlbmRlbiBUcmlnZ2VyIHdlcmRlbiB2ZXJhcmJlaXRldC4gRmFsbHMgIgorIlBha2V0bmFtZW4gw7xiZXJnZWJlbiB3ZXJkZW4sIHdlcmRlbiBudXIgZGllIFRyaWdnZXIgZGllc2VyIFBha2V0ZSAiCisidmVyYXJiZWl0ZXQsIGplZGVzIGdlbmF1IGVpbm1hbCB3byBub3R3ZW5kaWcuIERpZSBWZXJ3ZW5kdW5nIGRpZXNlciBPcHRpb24gIgorImthbm4gUGFrZXRlIGluIGRpZSB1bnp1bMOkc3NpZ2VuIFN0YXRpIEI8dHJpZ2dlcnMtYXdhaXRlZD4gdW5kIEI8dHJpZ2dlcnMtIgorInBlbmRpbmc+IGJyaW5nZW4uIER1cmNoIGRpZSBBdXNmw7xocnVuZyB2b24gwrtCPGRwa2cgLS1jb25maWd1cmUgLS1wZW5kaW5nPsKrICIKKyJrYW5uIGRpZXMgc3DDpHRlciBiZWhvYmVuIHdlcmRlbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MTUyCisjLCBuby13cmFwCittc2dpZCAiQjwtcj4sIEI8LS1yZW1vdmU+LCBCPC1QPiwgQjwtLXB1cmdlID5JPHBhY2thZ2U+Li4ufEI8LWE+fEI8LS1wZW5kaW5nPiIKK21zZ3N0ciAiQjwtcj4sIEI8LS1yZW1vdmU+LCBCPC1QPiwgQjwtLXB1cmdlID5JPFBha2V0PiAuLi58QjwtYT58QjwtLXBlbmRpbmc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTY5Cittc2dpZCAiIgorIlJlbW92ZSBhbiBpbnN0YWxsZWQgcGFja2FnZS4gQjwtcj4gb3IgQjwtLXJlbW92ZT4gcmVtb3ZlIGV2ZXJ5dGhpbmcgZXhjZXB0ICIKKyJjb25mZmlsZXMuIFRoaXMgbWF5IGF2b2lkIGhhdmluZyB0byByZWNvbmZpZ3VyZSB0aGUgcGFja2FnZSBpZiBpdCBpcyAiCisicmVpbnN0YWxsZWQgbGF0ZXIuIChDb25mZmlsZXMgYXJlIGNvbmZpZ3VyYXRpb24gZmlsZXMgdGhhdCBhcmUgbGlzdGVkIGluIHRoZSAiCisiSTxERUJJQU4vY29uZmZpbGVzPiBjb250cm9sIGZpbGUpLiBCPC1QPiBvciBCPC0tcHVyZ2U+IHJlbW92ZXMgZXZlcnl0aGluZywgIgorImluY2x1ZGluZyBjb25mZmlsZXMuIElmIEI8LWE+IG9yIEI8LS1wZW5kaW5nPiBpcyBnaXZlbiBpbnN0ZWFkIG9mIGEgcGFja2FnZSAiCisibmFtZSwgdGhlbiBhbGwgcGFja2FnZXMgdW5wYWNrZWQsIGJ1dCBtYXJrZWQgdG8gYmUgcmVtb3ZlZCBvciBwdXJnZWQgaW4gZmlsZSAiCisiSTwvdmFyL2xpYi9kcGtnL3N0YXR1cz4sIGFyZSByZW1vdmVkIG9yIHB1cmdlZCwgcmVzcGVjdGl2ZWx5LiBOb3RlOiBzb21lICIKKyJjb25maWd1cmF0aW9uIGZpbGVzIG1pZ2h0IGJlIHVua25vd24gdG8gQjxkcGtnPiBiZWNhdXNlIHRoZXkgYXJlIGNyZWF0ZWQgYW5kICIKKyJoYW5kbGVkIHNlcGFyYXRlbHkgdGhyb3VnaCB0aGUgY29uZmlndXJhdGlvbiBzY3JpcHRzLiBJbiB0aGF0IGNhc2UsIEI8ZHBrZz4gIgorIndvbid0IHJlbW92ZSB0aGVtIGJ5IGl0c2VsZiwgYnV0IHRoZSBwYWNrYWdlJ3MgSTxwb3N0cm0+IHNjcmlwdCAod2hpY2ggaXMgIgorImNhbGxlZCBieSBCPGRwa2c+KSwgaGFzIHRvIHRha2UgY2FyZSBvZiB0aGVpciByZW1vdmFsIGR1cmluZyBwdXJnZS4gT2YgIgorImNvdXJzZSwgdGhpcyBvbmx5IGFwcGxpZXMgdG8gZmlsZXMgaW4gc3lzdGVtIGRpcmVjdG9yaWVzLCBub3QgY29uZmlndXJhdGlvbiAiCisiZmlsZXMgd3JpdHRlbiB0byBpbmRpdmlkdWFsIHVzZXJzJyBob21lIGRpcmVjdG9yaWVzLiIKK21zZ3N0ciAiIgorIkVudGZlcm5lIGVpbiBpbnN0YWxsaWVydGVzIFBha2V0LiBCPC1yPiBvZGVyIEI8LS1yZW1vdmU+IGVudGZlcm5lbiBhbGxlcyAiCisiYXXDn2VyIENvbmZmaWxlcy4gRGllcyBrw7ZubnRlIGRpZSBSZWtvbmZpZ3VyYXRpb24gdmVybWVpZGVuLCBmYWxscyBkYXMgUGFrZXQgIgorInNww6R0ZXIgd2llZGVyIHJlaW5zdGFsbGllcnQgd2lyZC4gKENvbmZmaWxlcyBzaW5kIGRpZSBLb25maWd1cmF0aW9uc2RhdGVpZW4sICIKKyJkaWUgaW4gZGVyIEk8ZGViaWFuL2NvbmZmaWxlcz4tU3RldWVyZGF0ZWkgYXVmZ2Vmw7xocnQgc2luZCkuIEI8LVA+IG9kZXIgQjwtLSIKKyJwdXJnZT4gZW50ZmVybnQgYWxsZXMsIGF1Y2ggQ29uZmZpbGVzLiBGYWxscyBCPC1hPiBvZGVyIEI8LS1wZW5kaW5nPiBhbnN0YXR0ICIKKyJlaW5lcyBQYWtldG5hbWVucyBhbmdlZ2ViZW4gd2VyZGVuLCBkYW5uIHdlcmRlbiBhbGxlIFBha2V0ZSwgZGllIGVudHBhY2t0ICIKKyJhYmVyIHp1ciBFbnRmZXJudW5nIG9kZXIgdm9sbHN0w6RuZGlnZW4gTMO2c2NodW5nIGluIGRlciBEYXRlaSBJPC92YXIvbGliL2Rwa2cvIgorInN0YXR1cz4gbWFya2llcnQgc2luZCwgZW50ZmVybnQgYmV6aWVodW5nc3dlaXNlIHZvbGxzdMOkbmRpZyBnZWzDtnNjaHQuICIKKyJIaW53ZWlzOiBFaW5pZ2UgS29uZmlndXJhdGlvbnNkYXRlaWVuIGvDtm5uZW4gQjxkcGtnPiBuaWNodCBiZWthbm50IHNlaW4sIGRhICIKKyJzaWUgc2VwYXJhdCBkdXJjaCBkaWUgS29uZmlndXJhdGlvbnNza3JpcHRlIGFuZ2VsZWd0IHVuZCB2ZXJ3YWx0ZXQgd2VyZGVuLiAiCisiSW4gZGllc2VtIEZhbGwgd2lyZCBCPGRwa2c+IHNpZSBuaWNodCBzZWxic3QgZW50ZmVybmVuIHNvbmRlcm4gZGFzIFNrcmlwdCAiCisiSTxwb3N0cm0+IChkYXMgdm9uIEI8ZHBrZz4gYXVmZ2VydWZlbiB3aXJkKSBkZXMgUGFrZXRzIG11c3Mgc2ljaCB3w6RocmVuZCBkZXMgIgorInZvbGxzdMOkbmRpZ2VuIEzDtnNjaGVucyB1bSBkYXMgRW50ZmVybmVuIGvDvG1tZXJuLiBOYXTDvHJsaWNoIGJldHJpZmZ0IGRpZXMgbnVyICIKKyJEYXRlaWVuIGluIGRlbiBTeXN0ZW12ZXJ6ZWljaG5pc3NlbiwgbmljaHQgS29uZmlndXJhdGlvbnNkYXRlaWVuLCBkaWUgaW4gZGllICIKKyJIb21lLVZlcnplaWNobmlzc2UgZGVyIGluZGl2aWR1ZWxsZW4gQmVudXR6ZXIgZ2VzY2hyaWViZW4gd2VyZGVuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjE3MQorbXNnaWQgIlJlbW92aW5nIG9mIGEgcGFja2FnZSBjb25zaXN0cyBvZiB0aGUgZm9sbG93aW5nIHN0ZXBzOiIKK21zZ3N0ciAiRW50ZmVybnVuZyBlaW5lcyBQYWtldGVzIGJlc3RlaHQgYXVzIGRlbiBmb2xnZW5kZW4gU2Nocml0dGU6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTc0Cittc2dpZCAiQjwxLj4gUnVuIEk8cHJlcm0+IHNjcmlwdCIKK21zZ3N0ciAiQjwxLj4gRsO8aHJlIGRhcyBJPHByZXJtPi1Ta3JpcHQgYXVzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTc3Cittc2dpZCAiQjwyLj4gUmVtb3ZlIHRoZSBpbnN0YWxsZWQgZmlsZXMiCittc2dzdHIgIkI8Mi4+IEVudGZlcm5lIGRpZSBpbnN0YWxsaWVydGVuIERhdGVpZW4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxODAKK21zZ2lkICJCPDMuPiBSdW4gSTxwb3N0cm0+IHNjcmlwdCIKK21zZ3N0ciAiQjwzLj4gRsO8aHJlIGRhcyBJPHBvc3RybT4tU2tyaXB0IGF1cyIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToxODEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tdXBkYXRlLWF2YWlsPiwgQjwtLW1lcmdlLWF2YWlsPiBJPFBhY2thZ2VzLWZpbGU+IgorbXNnc3RyICJCPC0tdXBkYXRlLWF2YWlsPiwgQjwtLW1lcmdlLWF2YWlsPiBJPFBhY2thZ2VzLURhdGVpPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjE5MAorbXNnaWQgIiIKKyJVcGRhdGUgQjxkcGtnPidzIGFuZCBCPGRzZWxlY3Q+J3MgaWRlYSBvZiB3aGljaCBwYWNrYWdlcyBhcmUgYXZhaWxhYmxlLiBXaXRoICIKKyJhY3Rpb24gQjwtLW1lcmdlLWF2YWlsPiwgb2xkIGluZm9ybWF0aW9uIGlzIGNvbWJpbmVkIHdpdGggaW5mb3JtYXRpb24gZnJvbSAiCisiSTxQYWNrYWdlcy1maWxlPi4gV2l0aCBhY3Rpb24gQjwtLXVwZGF0ZS1hdmFpbD4sIG9sZCBpbmZvcm1hdGlvbiBpcyByZXBsYWNlZCAiCisid2l0aCB0aGUgaW5mb3JtYXRpb24gaW4gdGhlIEk8UGFja2FnZXMtZmlsZT4uIFRoZSBJPFBhY2thZ2VzLWZpbGU+ICIKKyJkaXN0cmlidXRlZCB3aXRoIERlYmlhbiBpcyBzaW1wbHkgbmFtZWQgSTxQYWNrYWdlcz4uIEI8ZHBrZz4ga2VlcHMgaXRzICIKKyJyZWNvcmQgb2YgYXZhaWxhYmxlIHBhY2thZ2VzIGluIEk8L3Zhci9saWIvZHBrZy9hdmFpbGFibGU+LiIKK21zZ3N0ciAiIgorIkFrdHVhbGlzaWVyZSBCPGRwa2c+cyB1bmQgQjxkc2VsZWN0PnMgVmVyc3TDpG5kbmlzIGRhcsO8YmVyLCB3ZWxjaGUgUGFrZXRlICIKKyJ2ZXJmw7xnYmFyIHNpbmQuIE1pdCBkZXIgQWt0aW9uIEI8LS1tZXJnZS1hdmFpbD4gd2lyZCBhbHRlIEluZm9ybWF0aW9uIG1pdCAiCisiZGVyIEluZm9ybWF0aW9uIGF1cyBkZXIgSTxQYWNrYWdlcy1EYXRlaT4genVzYW1tZW5nZWbDvGhydC4gTWl0IGRlciBBa3Rpb24gIgorIkI8LS11cGRhdGUtYXZhaWw+IHdpcmQgZGllIGFsdGUgSW5mb3JtYXRpb24gZHVyY2ggZGllIEluZm9ybWF0aW9uIGF1cyBkZXIgIgorIkk8UGFja2FnZXMtRGF0ZWk+IGVyc2V0enQuIERpZSBtaXQgRGViaWFuIHZlcnRyaWViZW5lIEk8UGFja2FnZXMtRGF0ZWk+ICIKKyJoZWnDn3QgZWluZmFjaCBJPFBhY2thZ2VzPi4gQjxkcGtnPiBow6RsdCBzZWluZSBBdWZ6ZWljaG51bmdlbiDDvGJlciBkaWUgIgorInZlcmbDvGdiYXJlbiBQYWtldGUgaW4gSTwvdmFyL2xpYi9kcGtnL2F2YWlsYWJsZT4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTk1Cittc2dpZCAiIgorIkEgc2ltcGxlciBvbmUtc2hvdCBjb21tYW5kIHRvIHJldHJpZXZlIGFuZCB1cGRhdGUgdGhlIEk8YXZhaWxhYmxlPiBmaWxlIGlzICIKKyJCPGRzZWxlY3QgdXBkYXRlPi4gTm90ZSB0aGF0IHRoaXMgZmlsZSBpcyBtb3N0bHkgdXNlbGVzcyBpZiB5b3UgZG9uJ3QgdXNlICIKKyJCPGRzZWxlY3Q+IGJ1dCBhbiBBUFQtYmFzZWQgZnJvbnRlbmQ6IEFQVCBoYXMgaXRzIG93biBzeXN0ZW0gdG8ga2VlcCB0cmFjayAiCisib2YgYXZhaWxhYmxlIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorIkVpbiBlaW5mYWNoZXIgQmVmZWhsLCB1bSBkaWUgRGF0ZWkgSTxhdmFpbGFibGU+IGluIGVpbmVtIFJ1dHNjaCB6dSBob2xlbiB1bmQgIgorInp1IGFrdHVhbGlzaWVyZW4gaXN0IEI8ZHNlbGVjdCB1cGRhdGU+LiBCZWFjaHRlbiBTaWUsIGRhc3MgZGllc2UgRGF0ZWkgIgorIm5haGV6dSBudXR6bG9zIGlzdCwgZmFsbHMgU2llIG5pY2h0IEI8ZHNlbGVjdD4gc29uZGVybiBlaW5lIEFQVC1iYXNpZXJ0ZSAiCisiT2JlcmZsw6RjaGUgdmVyd2VuZGVuOiBBUFQgdmVyZsO8Z3Qgw7xiZXIgc2VpbiBlaWdlbmVzIFN5c3RlbSwgZGllIHZlcmbDvGdiYXJlbiAiCisiUGFrZXRlIHp1IMO8YmVyd2FjaGVuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToxOTUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1BPiwgQjwtLXJlY29yZC1hdmFpbD4gSTxwYWNrYWdlLWZpbGU+Li4uIgorbXNnc3RyICJCPC1BPiwgQjwtLXJlY29yZC1hdmFpbD4gSTxQYWtldGRhdGVpPiAuLi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyMDEKK21zZ2lkICIiCisiVXBkYXRlIEI8ZHBrZz4gYW5kIEI8ZHNlbGVjdD4ncyBpZGVhIG9mIHdoaWNoIHBhY2thZ2VzIGFyZSBhdmFpbGFibGUgd2l0aCAiCisiaW5mb3JtYXRpb24gZnJvbSB0aGUgcGFja2FnZSBJPHBhY2thZ2UtZmlsZT4uIElmIEI8LS1yZWN1cnNpdmU+IG9yIEI8LVI+ICIKKyJvcHRpb24gaXMgc3BlY2lmaWVkLCBJPHBhY2thZ2UtZmlsZT4gbXVzdCByZWZlciB0byBhIGRpcmVjdG9yeSBpbnN0ZWFkLiIKK21zZ3N0ciAiIgorIkFrdHVhbGlzaWVyZSBtaXQgZGVuIEluZm9ybWF0aW9uZW4gYXVzIGRlbSBQYWtldCBJPFBha2V0ZGF0ZWk+IEI8ZHBrZz5zIHVuZCAiCisiQjxkc2VsZWN0PnMgVmVyc3TDpG5kbmlzIGRhcsO8YmVyLCB3ZWxjaGUgUGFrZXRlIHZlcmbDvGdiYXIgc2luZC4gRmFsbHMgZGllIEI8LS0iCisicmVjdXJzaXZlPiBvZGVyIEI8LVI+LU9wdGlvbiBhbmdlZ2ViZW4gaXN0LCBtdXNzIHNpY2ggSTxQYWtldGRhdGVpPiAiCisic3RhdHRkZXNzZW4gYXVmIGVpbiBWZXJ6ZWljaG5pcyBiZXppZWhlbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MjAxCisjLCBuby13cmFwCittc2dpZCAiQjwtLWZvcmdldC1vbGQtdW5hdmFpbD4iCittc2dzdHIgIkI8LS1mb3JnZXQtb2xkLXVuYXZhaWw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MjA1Cittc2dpZCAiIgorIk5vdyBCPG9ic29sZXRlPiBhbmQgYSBuby1vcCBhcyBCPGRwa2c+IHdpbGwgYXV0b21hdGljYWxseSBmb3JnZXQgdW5pbnN0YWxsZWQgIgorInVuYXZhaWxhYmxlIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorIkpldHp0IEI8dmVyYWx0ZXQ+IHVuZCBvaG5lIEZ1bmt0aW9uLCBkYSBCPGRwa2c+IGF1dG9tYXRpc2NoIG5pY2h0ICIKKyJpbnN0YWxsaWVydGUgbmljaHQgdmVyZsO8Z2JhcmUgUGFrZXRlIHZlcmdpc3N0LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToyMDUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tY2xlYXItYXZhaWw+IgorbXNnc3RyICJCPC0tY2xlYXItYXZhaWw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MjA4Cittc2dpZCAiRXJhc2UgdGhlIGV4aXN0aW5nIGluZm9ybWF0aW9uIGFib3V0IHdoYXQgcGFja2FnZXMgYXJlIGF2YWlsYWJsZS4iCittc2dzdHIgIiIKKyJMw7ZzY2hlIGRpZSBleGlzdGllcmVuZGVuIEluZm9ybWF0aW9uZW4gZGFyw7xiZXIsIHdlbGNoZSBQYWtldGUgdmVyZsO8Z2JhciBzaW5kLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToyMDgKKyMsIG5vLXdyYXAKK21zZ2lkICIgQjwtQz4sIEI8LS1hdWRpdD4iCittc2dzdHIgIkI8LUM+LCBCPC0tYXVkaXQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MjEzCittc2dpZCAiIgorIlNlYXJjaGVzIGZvciBwYWNrYWdlcyB0aGF0IGhhdmUgYmVlbiBpbnN0YWxsZWQgb25seSBwYXJ0aWFsbHkgb24geW91ciAiCisic3lzdGVtLiBCPGRwa2c+IHdpbGwgc3VnZ2VzdCB3aGF0IHRvIGRvIHdpdGggdGhlbSB0byBnZXQgdGhlbSB3b3JraW5nLiIKK21zZ3N0ciAiIgorIlN1Y2hlIG5hY2ggUGFrZXRlLCBkaWUgaW4gSWhyZW0gU3lzdGVtIG51ciB0ZWlsd2Vpc2UgaW5zdGFsbGllcnQgd3VyZGVuLiAiCisiQjxkcGtnPiB3aXJkIFZvcnNjaGzDpGdlIG1hY2hlbiwgd2FzIG1pdCBpaG5lbiBnZXNjaGVoZW4gc29sbCwgdW0gc2llIGluICIKKyJGdW5rdGlvbiB6dSBicmluZ2VuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToyMTMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tZ2V0LXNlbGVjdGlvbnM+IFtJPHBhY2thZ2UtbmFtZS1wYXR0ZXJuPi4uLl0iCittc2dzdHIgIkI8LS1nZXQtc2VsZWN0aW9ucz4gW0k8UGFrZXQtTmFtZS1NdXN0ZXI+Li4uXSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjIxOAorbXNnaWQgIiIKKyJHZXQgbGlzdCBvZiBwYWNrYWdlIHNlbGVjdGlvbnMsIGFuZCB3cml0ZSBpdCB0byBzdGRvdXQuIFdpdGhvdXQgYSBwYXR0ZXJuLCAiCisibm9uLWluc3RhbGxlZCBwYWNrYWdlcyAoaS5lLiB0aG9zZSB3aGljaCBoYXZlIGJlZW4gcHJldmlvdXNseSBwdXJnZWQpICB3aWxsICIKKyJub3QgYmUgc2hvd24uIgorbXNnc3RyICIiCisiSG9sZSBMaXN0ZSB2b24gUGFrZXRhdXN3YWhsZW4gdW5kIHNjaHJlaWJlIHNpZSBhdWYgZGllIFN0YW5kYXJkYXVzZ2FiZS4gT2huZSAiCisiTXVzdGVyIHdlcmRlbiBuaWNodC1pbnN0YWxsaWVydGUgUGFrZXRlIChkLmguIHNvbGNoZSwgZGllIHZvcmhlciAiCisiwrt2b2xsc3TDpG5kaWcgZ2Vsw7ZzY2h0wqsgd3VyZGVuKSBuaWNodCBhbmdlemVpZ3QuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjIxOCB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6Mjk5CisjLCBuby13cmFwCittc2dpZCAiQjwtLXNldC1zZWxlY3Rpb25zPiIKK21zZ3N0ciAiQjwtLXNldC1zZWxlY3Rpb25zPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjIyNAorbXNnaWQgIiIKKyJTZXQgcGFja2FnZSBzZWxlY3Rpb25zIHVzaW5nIGZpbGUgcmVhZCBmcm9tIHN0ZGluLiBUaGlzIGZpbGUgc2hvdWxkIGJlIGluICIKKyJ0aGUgZm9ybWF0ICdJPHBhY2thZ2U+IEk8c3RhdGU+Jywgd2hlcmUgc3RhdGUgaXMgb25lIG9mIEI8aW5zdGFsbD4sIEI8aG9sZD4sICIKKyJCPGRlaW5zdGFsbD4gb3IgQjxwdXJnZT4uIEJsYW5rIGxpbmVzIGFuZCBjb21tZW50IGxpbmVzIGJlZ2lubmluZyB3aXRoICcjJyAiCisiYXJlIGFsc28gcGVybWl0dGVkLiIKK21zZ3N0ciAiIgorIlNldHplIGRpZSBQYWtldGF1c3dhaGwgZHVyY2ggRWlubGVzZW4gZWluZXIgRGF0ZWkgdm9uIGRlciBTdGFuZGFyZGVpbmdhYmUuICIKKyJEaWVzZSBEYXRlaSBzb2xsdGUgaW0gRm9ybWF0IMK7STxQYWtldD4gSTxadXN0YW5kPsKrIHNlaW4sIHdvYmVpIFp1c3RhbmQgZWluZXIgIgorImF1cyBCPGluc3RhbGw+LCBCPGhvbGQ+LCBCPGRlaW5zdGFsbD4gb2RlciBCPHB1cmdlPiBpc3QuIExlZXJ6ZWlsZW4gdW5kICIKKyJLb21tZW50YXJ6ZWlsZW4gKGJlZ2lubmVuZCBtaXQgwrsjwqspIHNpbmQgYXVjaCBlcmxhdWJ0LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToyMjQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tY2xlYXItc2VsZWN0aW9ucz4iCittc2dzdHIgIkI8LS1jbGVhci1zZWxlY3Rpb25zPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjIyOQorbXNnaWQgIiIKKyJTZXQgdGhlIHJlcXVlc3RlZCBzdGF0ZSBvZiBldmVyeSBub24tZXNzZW50aWFsIHBhY2thZ2UgdG8gZGVpbnN0YWxsLiAgVGhpcyAiCisiaXMgaW50ZW5kZWQgdG8gYmUgdXNlZCBpbW1lZGlhdGVseSBiZWZvcmUgLS1zZXQtc2VsZWN0aW9ucywgdG8gZGVpbnN0YWxsIGFueSAiCisicGFja2FnZXMgbm90IGluIGxpc3QgZ2l2ZW4gdG8gLS1zZXQtc2VsZWN0aW9ucy4iCittc2dzdHIgIiIKKyJTZXR6ZSBkZW4gZXJiZXRlbmVuIFp1c3RhbmQgdm9uIGplZGVtIG5pY2h0LWVzc2VuemllbGxlbiBQYWtldCBhdWYgIgorIsK7RGVpbnN0YWxsYXRpb27Cqy4gRGllcyBpc3QgZGF6dSBnZWRhY2h0LCBkaXJla3Qgdm9yIC0tc2V0LXNlbGVjdGlvbnMgIgorInZlcndlbmRldCB6dSB3ZXJkZW4sIHVtIGplZGVzIFBha2V0LCBkYXNzIG5pY2h0IGluIGRlciBMaXN0ZSB2b24gLS1zZXQtIgorInNlbGVjdGlvbnMgdm9ya29tbXQsIHp1IGRlaW5zdGFsbGllcmVuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToyMjkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0teWV0LXRvLXVucGFjaz4iCittc2dzdHIgIkI8LS15ZXQtdG8tdW5wYWNrPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjIzMworbXNnaWQgIiIKKyJTZWFyY2hlcyBmb3IgcGFja2FnZXMgc2VsZWN0ZWQgZm9yIGluc3RhbGxhdGlvbiwgYnV0IHdoaWNoIGZvciBzb21lIHJlYXNvbiAiCisic3RpbGwgaGF2ZW4ndCBiZWVuIGluc3RhbGxlZC4iCittc2dzdHIgIiIKKyJTdWNodCBuYWNoIFBha2V0ZW4gZGlyIHp1ciBJbnN0YWxsYXRpb24gYXVzZ2V3w6RobHQgd3VyZGVuLCBkaWUgYWJlciBhdXMgIgorImlyZ2VuZGVpbmVtIEdydW5kIG5vY2ggbmljaHQgaW5zdGFsbGllcnQgd3VyZGVuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToyMzQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tcHJpbnQtYXJjaGl0ZWN0dXJlPiIKK21zZ3N0ciAiQjwtLXByaW50LWFyY2hpdGVjdHVyZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyMzcKK21zZ2lkICIiCisiUHJpbnQgYXJjaGl0ZWN0dXJlIG9mIHBhY2thZ2VzIEI8ZHBrZz4gaW5zdGFsbHMgKGZvciBleGFtcGxlLCBcImkzODZcIikuIgorbXNnc3RyICIiCisiR2ViZSBkaWUgQXJjaGl0ZWt0dXIgZGVyIFBha2V0ZSBhdXMsIGRpZSBCPGRwa2c+IGluc3RhbGxpZXJ0IChiZWlzcGllbHN3ZWlzZSAiCisiwrtpMzg2wqspLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToyMzcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tY29tcGFyZS12ZXJzaW9ucyA+STx2ZXIxIG9wIHZlcjI+IgorbXNnc3RyICJCPC0tY29tcGFyZS12ZXJzaW9ucyA+STxWZXIxIE9wIFZlcjI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MjQ4Cittc2dpZCAiIgorIkNvbXBhcmUgdmVyc2lvbiBudW1iZXJzLCB3aGVyZSBJPG9wPiBpcyBhIGJpbmFyeSBvcGVyYXRvci4gQjxkcGtnPiByZXR1cm5zICIKKyJzdWNjZXNzICh6ZXJvIHJlc3VsdCkgaWYgdGhlIHNwZWNpZmllZCBjb25kaXRpb24gaXMgc2F0aXNmaWVkLCBhbmQgZmFpbHVyZSAiCisiKG5vbnplcm8gcmVzdWx0KSBvdGhlcndpc2UuIFRoZXJlIGFyZSB0d28gZ3JvdXBzIG9mIG9wZXJhdG9ycywgd2hpY2ggZGlmZmVyICIKKyJpbiBob3cgdGhleSB0cmVhdCBhbiBlbXB0eSBJPHZlcjE+IG9yIEk8dmVyMj4uIFRoZXNlIHRyZWF0IGFuIGVtcHR5IHZlcnNpb24gIgorImFzIGVhcmxpZXIgdGhhbiBhbnkgdmVyc2lvbjogQjxsdCBsZSBlcSBuZSBnZSBndD4uIFRoZXNlIHRyZWF0IGFuIGVtcHR5ICIKKyJ2ZXJzaW9uIGFzIGxhdGVyIHRoYW4gYW55IHZlcnNpb246IEI8bHQtbmwgbGUtbmwgZ2UtbmwgZ3Qtbmw+LiBUaGVzZSBhcmUgIgorInByb3ZpZGVkIG9ubHkgZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBjb250cm9sIGZpbGUgc3ludGF4OiBCPEU8bHQ+IEU8bHQ+RTxsdD4gIgorIkU8bHQ+PSA9IEU8Z3Q+PSBFPGd0PkU8Z3Q+IEU8Z3Q+Pi4iCittc2dzdHIgIiIKKyJWZXJnbGVpY2hlIFZlcnNpb25zbnVtbWVybiwgd29iZWkgSTxPcD4gZWluIGJpbsOkcmVyIE9wZXJhdG9yIGlzdC4gQjxkcGtnPiAiCisibGllZmVydCBFcmZvbGcgKE51bGxlcmdlYm5pcykgZmFsbHMgZGllIGFuZ2VnZWJlbmUgQmVkaW5ndW5nIGVyZsO8bGx0IGlzdCB1bmQgIgorImVpbmVuIEZlaGxlciAobmljaHQtTnVsbC1FcmdlYm5pcykgYW5kZXJuZmFsbHMuIEVzIGdpYnQgendlaSBHcnVwcGVuIHZvbiAiCisiT3BlcmF0b3JlbiwgZGllIHNpY2ggaW4gZGVyIEJlaGFuZGx1bmcgdm9uIGxlZXJlbiBJPFZlcjE+IG9kZXIgSTxWZXIyPiAiCisidW50ZXJzY2hlaWRlbi4gRGllIGZvbGdlbmRlbiBiZWhhbmRlbG4gbGVlcmUgVmVyc2lvbmVuIGFscyBqw7xuZ2VyIGFscyBqZWRlICIKKyJhbmRlcmUgVmVyc2lvbjogQjxsdCBsZSBlcSBuZSBnZSBndD4uIERpZSBmb2xnZW5kZW4gYmVoYW5kZWxuIGVpbmUgbGVlcmUgIgorIlZlcnNpb24gYWxzIMOkbHRlciBhbHMgamVkZSBWZXJzaW9uOiBCPGx0LW5sIGxlLW5sIGdlLW5sIGd0LW5sPi4gRGllICIKKyJmb2xnZW5kZW4gc2luZCBudXIgYXVzIEtvbXBhdGliaWxpdMOkdCBtaXQgZGVyIFN0ZXVlcmRhdGVpc3ludGF4ICIKKyJiZXJlaXRnZXN0ZWxsdDogQjxFPGx0PiBFPGx0PkU8bHQ+IEU8bHQ+PSA9IEU8Z3Q+PSBFPGd0PkU8Z3Q+IEU8Z3Q+Pi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MjQ4CisjLCBuby13cmFwCittc2dpZCAiQjwtLWNvbW1hbmQtZmQgPkk8bj4iCittc2dzdHIgIkI8LS1jb21tYW5kLWZkID5JPG4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MjUzCittc2dpZCAiIgorIkFjY2VwdCBhIHNlcmllcyBvZiBjb21tYW5kcyBvbiBpbnB1dCBmaWxlIGRlc2NyaXB0b3IgSTxuPi4gTm90ZTogYWRkaXRpb25hbCAiCisib3B0aW9ucyBzZXQgb24gdGhlIGNvbW1hbmQgbGluZSwgYW5kIHRocm91Z2ggdGhpcyBmaWxlIGRlc2NyaXB0b3IsIGFyZSBub3QgIgorInJlc2V0IGZvciBzdWJzZXF1ZW50IGNvbW1hbmRzIGV4ZWN1dGVkIGR1cmluZyB0aGUgc2FtZSBydW4uIgorbXNnc3RyICIiCisiQWt6ZXB0aWVydCBlaW5lIFJlaWhlIHZvbiBCZWZlaGxlbiBhbiBFaW5nYWJlLURhdGVpZGVza3JpcHRvciBJPG4+LiBIaW53ZWlzOiAiCisiWnVzw6R0emxpY2hlIGF1ZiBkZXIgS29tbWFuZG96ZWlsZSB1bmQgZHVyY2ggZGllc2VuIERhdGVpZGVza3JpcHRvciBnZXNldHp0ZSAiCisiT3B0aW9uZW4gd2VyZGVuIG5pY2h0IGbDvHIgbmFjaGZvbGdlbmRlIEJlZmVobGUsIGRpZSBpbSBnbGVpY2hlbiBMYXVmICIKKyJhdXNnZWbDvGhydCB3ZXJkZW4sIHp1csO8Y2tnZXNldHp0LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToyNTMgZHBrZy1hcmNoaXRlY3R1cmUuMTo2MCBkcGtnLWJ1aWxkZmxhZ3MuMTo4OSBkcGtnLWRpdmVydC44OjcxCisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjM4IGRwa2ctc2NhbnNvdXJjZXMuMTo2NiBkcGtnLXN0YXRvdmVycmlkZS44OjQ0CisjOiBkcGtnLXZlbmRvci4xOjI4IGRzZWxlY3QuMToxMTMgdXBkYXRlLWFsdGVybmF0aXZlcy44OjMxNgorIywgbm8td3JhcAorbXNnaWQgIkI8LS1oZWxwPiIKK21zZ3N0ciAiQjwtLWhlbHA+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MjU2Cittc2dpZCAiRGlzcGxheSBhIGJyaWVmIGhlbHAgbWVzc2FnZS4iCittc2dzdHIgIlplaWdlIGVpbmUga3VyemUgSGlsZmVuYWNocmljaHQgYW4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjI1NgorIywgbm8td3JhcAorbXNnaWQgIkI8LS1mb3JjZS1oZWxwPiIKK21zZ3N0ciAiQjwtLWZvcmNlLWhlbHA+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MjU5Cittc2dpZCAiR2l2ZSBoZWxwIGFib3V0IHRoZSBCPC0tZm9yY2UtPkk8dGhpbmc+IG9wdGlvbnMuIgorbXNnc3RyICJHZWJlIEhpbGZlIMO8YmVyIGRpZSBCPC0tZm9yY2UtPkk8U2FjaGU+LU9wdGlvbmVuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToyNTkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1EaD4sIEI8LS1kZWJ1Zz1oZWxwPiIKK21zZ3N0ciAiQjwtRGg+LCBCPC0tZGVidWc9aGVscD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyNjIKK21zZ2lkICJHaXZlIGhlbHAgYWJvdXQgZGVidWdnaW5nIG9wdGlvbnMuIgorbXNnc3RyICJHaWIgSGlsZmUgw7xiZXIgRGVidWdnaW5nLU9wdGlvbmVuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToyNjIgZHBrZy1hcmNoaXRlY3R1cmUuMTo2MyBkcGtnLWJ1aWxkZmxhZ3MuMTo5MgorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMjYgZHBrZy1jaGVja2J1aWxkZGVwcy4xOjM2IGRwa2ctZGlzdGFkZGZpbGUuMTozNQorIzogZHBrZy1kZWIuMToxNzUgZHBrZy1kaXZlcnQuODo3NCBkcGtnLWdlbmNoYW5nZXMuMToxMzQgZHBrZy1nZW5jb250cm9sLjE6MTI0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0NDYgZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTo0MSBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MzYKKyM6IGRwa2ctcXVlcnkuMToxMTMgZHBrZy1zY2FucGFja2FnZXMuMTo5OSBkcGtnLXNjYW5zb3VyY2VzLjE6NjgKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjE4IGRwa2ctc291cmNlLjE6OTkgZHBrZy1zcGxpdC4xOjEyOQorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo0NyBkcGtnLXRyaWdnZXIuMTozNCBkcGtnLXZlbmRvci4xOjMxIGRzZWxlY3QuMToxMTYKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMTkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tdmVyc2lvbj4iCittc2dzdHIgIkI8LS12ZXJzaW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjI2NQorbXNnaWQgIkRpc3BsYXkgQjxkcGtnPiB2ZXJzaW9uIGluZm9ybWF0aW9uLiIKK21zZ3N0ciAiWmVpZ2UgQjxkcGtnPiBWZXJzaW9uc2luZm9ybWF0aW9uZW4gYW4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjI2NQorIywgbm8td3JhcAorbXNnaWQgIkI8ZHBrZy1kZWIgYWN0aW9ucz4iCittc2dzdHIgIkI8ZHBrZy1kZWItQWt0aW9uZW4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MjY4Cittc2dpZCAiU2VlIEI8ZHBrZy1kZWI+KDEpIGZvciBtb3JlIGluZm9ybWF0aW9uIGFib3V0IHRoZSBmb2xsb3dpbmcgYWN0aW9ucy4iCittc2dzdHIgIiIKKyJMZXNlbiBTaWUgQjxkcGtnLWRlYj4oMSkgZsO8ciB3ZWl0ZXJlIEluZm9ybWF0aW9uZW4gw7xiZXIgZGllIGZvbGdlbmRlbiAiCisiQWt0aW9uZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6Mjg4CisjLCBuby13cmFwCittc2dpZCAiIgorIkI8LWI+LCBCPC0tYnVpbGQ+IEk8ZGlyZWN0b3J5PiBbSTxhcmNoaXZlPnxJPGRpcmVjdG9yeT5dXG4iCisiICAgIEJ1aWxkIGEgZGViIHBhY2thZ2UuXG4iCisiQjwtYz4sIEI8LS1jb250ZW50cz4gSTxhcmNoaXZlPlxuIgorIiAgICBMaXN0IGNvbnRlbnRzIG9mIGEgZGViIHBhY2thZ2UuXG4iCisiQjwtZT4sIEI8LS1jb250cm9sPiBJPGZpbGVuYW1lPiBbSTxkaXJlY3Rvcnk+XVxuIgorIiAgICBFeHRyYWN0IGNvbnRyb2wtaW5mb3JtYXRpb24gZnJvbSBhIHBhY2thZ2UuXG4iCisiQjwteD4sIEI8LS1leHRyYWN0PiBJPGFyY2hpdmUgZGlyZWN0b3J5PlxuIgorIiAgICBFeHRyYWN0IHRoZSBmaWxlcyBjb250YWluZWQgYnkgcGFja2FnZS5cbiIKKyJCPC1YPiwgQjwtLXZleHRyYWN0PiBJPGFyY2hpdmUgZGlyZWN0b3J5PlxuIgorIiAgICBFeHRyYWN0IGFuZCBkaXNwbGF5IHRoZSBmaWxlbmFtZXMgY29udGFpbmVkIGJ5IGFcbiIKKyIgICAgcGFja2FnZS5cbiIKKyJCPC1mPiwgQjwtLWZpZWxkPiAgSTxhcmNoaXZlPiBbSTxjb250cm9sLWZpZWxkPi4uLl1cbiIKKyIgICAgRGlzcGxheSBjb250cm9sIGZpZWxkKHMpIG9mIGEgcGFja2FnZS5cbiIKKyJCPC0tZnN5cy10YXJmaWxlPiBJPGFyY2hpdmU+XG4iCisiICAgIERpc3BsYXkgdGhlIGZpbGVzeXN0ZW0gdGFyLWZpbGUgY29udGFpbmVkIGJ5IGFcbiIKKyIgICAgRGViaWFuIHBhY2thZ2UuXG4iCisiQjwtST4sIEI8LS1pbmZvPiBJPGFyY2hpdmU+IFtJPGNvbnRyb2wtZmlsZT4uLi5dXG4iCisiICAgIFNob3cgaW5mb3JtYXRpb24gYWJvdXQgYSBwYWNrYWdlLlxuIgorbXNnc3RyICIiCisiQjwtYj4sIEI8LS1idWlsZD4gSTxWZXJ6ZWljaG5pcz4gW0k8QXJjaGl2PnxJPFZlcnplaWNobmlzPl1cbiIKKyIgICAgQmF1ZSBlaW4gZGViLVBha2V0LlxuIgorIkI8LWM+LCBCPC0tY29udGVudHM+IEk8QXJjaGl2PlxuIgorIiAgICBMaXN0ZSBkZW4gSW5oYWx0IGVpbmVzIGRlYi1QYWtldGVzIGF1Zi5cbiIKKyJCPC1lPiwgQjwtLWNvbnRyb2w+IEk8RGF0ZWluYW1lPiBbSTxWZXJ6ZWljaG5pcz5dXG4iCisiICAgIEV4dHJhaGllcmUgU3RldWVyaW5mb3JtYXRpb25lbiB2b24gZWluZW0gUGFrZXQuXG4iCisiQjwteD4sIEI8LS1leHRyYWN0PiBJPEFyY2hpdiBWZXJ6ZWljaG5pcz5cbiIKKyIgICAgRXh0cmFoaWVyZSBkaWUgdm9tIFBha2V0IGVudGhhbHRlbmVuIERhdGVpZW4uXG4iCisiQjwtZj4sIEI8LS1maWVsZD4gSTxBcmNoaXY+IFtJPFN0ZXVlcmZlbGQ+XSAuLi5cbiIKKyIgICAgWmVpZ2UgZGFzL2RpZSBTdGV1ZXJmZWxkKGVyKSBlaW5lcyBQYWtldGVzIGFuLlxuIgorIkI8LS1mc3lzLXRhcmZpbGU+IEk8QXJjaGl2PlxuIgorIiAgICBaZWlnZSBkaWUgdm9uIGVpbmVtIERlYmlhbi1QYWtldCBlbnRoYWx0ZW5lIERhdGVpc3lzdGVtLVRhcmRhdGVpIGFuLlxuIgorIkI8LUk+LCBCPC0taW5mbz4gSTxBcmNoaXY+IFtJPFN0ZXVlcmRhdGVpPl1cbiIKKyIgICAgWmVpZ2UgSW5mb3JtYXRpb25lbiDDvGJlciBlaW4gUGFrZXQuXG4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MjkwCisjLCBuby13cmFwCittc2dpZCAiQjxkcGtnLXF1ZXJ5IGFjdGlvbnM+IgorbXNnc3RyICJCPGRwa2ctcXVlcnktQWt0aW9uZW4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MjkzCittc2dpZCAiU2VlIEI8ZHBrZy1xdWVyeT4oMSkgZm9yIG1vcmUgaW5mb3JtYXRpb24gYWJvdXQgdGhlIGZvbGxvd2luZyBhY3Rpb25zLiIKK21zZ3N0ciAiIgorIkxlc2VuIFNpZSBCPGRwa2ctcXVlcnk+KDEpIGbDvHIgd2VpdGVyZSBJbmZvcm1hdGlvbmVuIMO8YmVyIGRpZSBmb2xnZW5kZW4gIgorIkFrdGlvbmVuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjMwOAorIywgbm8td3JhcAorbXNnaWQgIiIKKyJCPC1sPiwgQjwtLWxpc3Q+IEk8cGFja2FnZS1uYW1lLXBhdHRlcm4+Li4uXG4iCisiICAgIExpc3QgcGFja2FnZXMgbWF0Y2hpbmcgZ2l2ZW4gcGF0dGVybi5cbiIKKyJCPC1zPiwgQjwtLXN0YXR1cz4gSTxwYWNrYWdlLW5hbWU+Li4uXG4iCisiICAgIFJlcG9ydCBzdGF0dXMgb2Ygc3BlY2lmaWVkIHBhY2thZ2UuXG4iCisiQjwtTD4sIEI8LS1saXN0ZmlsZXM+IEk8cGFja2FnZS1uYW1lPi4uLlxuIgorIiAgICBMaXN0IGZpbGVzIGluc3RhbGxlZCB0byB5b3VyIHN5c3RlbSBmcm9tIEk8cGFja2FnZS1uYW1lPi5cbiIKKyJCPC1TPiwgQjwtLXNlYXJjaD4gSTxmaWxlbmFtZS1zZWFyY2gtcGF0dGVybj4uLi5cbiIKKyIgICAgU2VhcmNoIGZvciBhIGZpbGVuYW1lIGZyb20gaW5zdGFsbGVkIHBhY2thZ2VzLlxuIgorIkI8LXA+LCBCPC0tcHJpbnQtYXZhaWw+IEk8cGFja2FnZS1uYW1lPi4uLlxuIgorIiAgICBEaXNwbGF5IGRldGFpbHMgYWJvdXQgSTxwYWNrYWdlLW5hbWU+LCBhcyBmb3VuZCBpblxuIgorIiAgICBJPC92YXIvbGliL2Rwa2cvYXZhaWxhYmxlPi4gVXNlcnMgb2YgQVBULWJhc2VkIGZyb250ZW5kc1xuIgorIiAgICBzaG91bGQgdXNlIEI8YXB0LWNhY2hlIHNob3c+IEk8cGFja2FnZS1uYW1lPiBpbnN0ZWFkLlxuIgorbXNnc3RyICIiCisiQjwtbD4sIEI8LS1saXN0PiBJPFBha2V0bmFtZW4tTXVzdGVyPiAuLi5cbiIKKyIgICAgTGlzdGUgYXVmIGRhcyDDvGJlcmdlYmVuZSBTdWNobXVzdGVyIHBhc3NlbmRlIFBha2V0ZSBhdWYuXG4iCisiQjwtcz4sIEI8LS1zdGF0dXM+IEk8UGFrZXRuYW1lPiAuLi5cbiIKKyIgICAgQmVyaWNodGUgZGVuIFN0YXR1cyBkZXMgc3BlemlmaXppZXJ0ZW4gUGFrZXRzLlxuIgorIkI8LUw+LCBCPC0tbGlzdGZpbGVzPiBJPFBha2V0bmFtZT4gLi4uXG4iCisiICAgIExpc3RlIGRpZSBhdXMgQjxQYWtldG5hbWU+IGF1ZiBJaHJlbSBTeXN0ZW0gaW5zdGFsbGllcnRlbiBEYXRlaWVuIGF1Zi5cbiIKKyJCPC1TPiwgQjwtLXNlYXJjaD4gSTxEYXRlaW5hbWVuLVN1Y2htdXN0ZXI+IC4uLlxuIgorIiAgICBTdWNoZSBuYWNoIGVpbmVtIERhdGVpbmFtZW4gaW4gaW5zdGFsbGllcnRlbiBQYWtldGVuLlxuIgorIkI8LXA+LCBCPC0tcHJpbnQtYXZhaWw+IEk8UGFrZXRuYW1lPlxuIgorIiAgICBaZWlnZSBEZXRhaWxzIMO8YmVyIEk8UGFrZXRuYW1lPiwgd2llIGluIEk8L3Zhci9saWIvZHBrZy9hdmFpbGFibGU+XG4iCisiICAgIGdlZnVuZGVuLiBCZW51dHplciB2b24gQVBULWJhc2llcnRlbiBPYmVyZmzDpGNoZW4gc29sbHRlbiBzdGF0dGRlc3NlblxuIgorIiAgICBCPGFwdC1jYWNoZSBzaG93PiBJPFBha2V0bmFtZT4gdmVyd2VuZGVuLlxuIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy4xOjMxMCBkcGtnLWFyY2hpdGVjdHVyZS4xOjY3IGRwa2ctYnVpbGRwYWNrYWdlLjE6NTAKKyM6IGRwa2ctY2hlY2tidWlsZGRlcHMuMToxOCBkcGtnLWRpc3RhZGRmaWxlLjE6MjcgZHBrZy1kZWIuMToxNzkKKyM6IGRwa2ctZGl2ZXJ0Ljg6NDIgZHBrZy1nZW5jaGFuZ2VzLjE6MTcgZHBrZy1nZW5jb250cm9sLjE6MzcKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM2OSBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjI3IGRwa2ctbmFtZS4xOjMwCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTUgZHBrZy1xdWVyeS4xOjExNyBkcGtnLXNjYW5wYWNrYWdlcy4xOjcxCisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6NDQgZHBrZy1zaGxpYmRlcHMuMToxMDYgZHBrZy1zcGxpdC4xOjEzMworIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo1MSBkcGtnLXRyaWdnZXIuMTozOCBkcGtnLXZlbmRvci4xOjM1IGRzZWxlY3QuMTozNgorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxMDMgdXBkYXRlLWFsdGVybmF0aXZlcy44OjMyMworIywgbm8td3JhcAorbXNnaWQgIk9QVElPTlMiCittc2dzdHIgIk9QVElPTkVOIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzE2Cittc2dpZCAiIgorIkFsbCBvcHRpb25zIGNhbiBiZSBzcGVjaWZpZWQgYm90aCBvbiB0aGUgY29tbWFuZCBsaW5lIGFuZCBpbiB0aGUgQjxkcGtnPiAiCisiY29uZmlndXJhdGlvbiBmaWxlIEk8L2V0Yy9kcGtnL2Rwa2cuY2ZnPiBvciB0aGUgZmlsZXMgb24gdGhlIGNvbmZpZ3VyYXRpb24gIgorImRpcmVjdG9yeSBJPC9ldGMvZHBrZy9kcGtnLmNmZy5kLz4uIEVhY2ggbGluZSBpbiB0aGUgY29uZmlndXJhdGlvbiBmaWxlIGlzICIKKyJlaXRoZXIgYW4gb3B0aW9uIChleGFjdGx5IHRoZSBzYW1lIGFzIHRoZSBjb21tYW5kIGxpbmUgb3B0aW9uIGJ1dCB3aXRob3V0ICIKKyJsZWFkaW5nIGRhc2hlcykgb3IgYSBjb21tZW50IChpZiBpdCBzdGFydHMgd2l0aCBhIEI8Iz4pLiIKK21zZ3N0ciAiIgorIkFsbGUgT3B0aW9uZW4ga8O2bm5lbiBhdWYgZGVyIEtvbW1hbmRvemVpbGUsIGluIGRlciBCPGRwa2c+LSIKKyJLb25maWd1cmF0aW9uc2RhdGVpIEk8L2V0Yy9kcGtnL2Rwa2cuY2ZnPiBvZGVyIGluIGRlbiBEYXRlaWVuIGltICIKKyJLb25maWd1cmF0aW9uc3ZlcnplaWNobmlzIEk8L2V0Yy9kcGtnL2Rwa2cuY2ZnLmQvPiBhbmdlZ2ViZW4gd2VyZGVuLiBKZWRlICIKKyJaZWlsZSBpbiBkZXIgS29uZmlndXJhdGlvbnNkYXRlaSBpc3QgZW50d2VkZXIgZWluZSBPcHRpb24gKGV4YWt0IGRpZSBnbGVpY2hlICIKKyJ3aWUgZGllIEJlZmVobHN6ZWlsZW5vcHRpb24gbnVyIG9obmUgZsO8aHJlbmRlIEdlZGFua2Vuc3RyaWNoZSkgb2RlciBlaW4gIgorIktvbW1lbnRhciAoZmFsbHMgc2llIG1pdCBCPCM+IGJlZ2lubnQpLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTozMTcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tYWJvcnQtYWZ0ZXI9Pkk8bnVtYmVyPiIKK21zZ3N0ciAiQjwtLWFib3J0LWFmdGVyPT5JPFphaGw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzIwCittc2dpZCAiQ2hhbmdlIGFmdGVyIGhvdyBtYW55IGVycm9ycyBCPGRwa2c+IHdpbGwgYWJvcnQuIFRoZSBkZWZhdWx0IGlzIDUwLiIKK21zZ3N0ciAiIgorIsOEbmRlcmUgbmFjaCB3aWUgdmllbGVuIEZlaGxlcm4gQjxkcGtnPiBhYmJyZWNoZW4gd2lyZC4gRGVyIFN0YW5kYXJkd2VydCBpc3QgIgorIjUwLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTozMjAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1CPiwgQjwtLWF1dG8tZGVjb25maWd1cmU+IgorbXNnc3RyICJCPC1CPiwgQjwtLWF1dG8tZGVjb25maWd1cmU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzI2Cittc2dpZCAiIgorIldoZW4gYSBwYWNrYWdlIGlzIHJlbW92ZWQsIHRoZXJlIGlzIGEgcG9zc2liaWxpdHkgdGhhdCBhbm90aGVyIGluc3RhbGxlZCAiCisicGFja2FnZSBkZXBlbmRlZCBvbiB0aGUgcmVtb3ZlZCBwYWNrYWdlLiBTcGVjaWZ5aW5nIHRoaXMgb3B0aW9uIHdpbGwgY2F1c2UgIgorImF1dG9tYXRpYyBkZWNvbmZpZ3VyYXRpb24gb2YgdGhlIHBhY2thZ2Ugd2hpY2ggZGVwZW5kZWQgb24gdGhlIHJlbW92ZWQgIgorInBhY2thZ2UuIgorbXNnc3RyICIiCisiV2VubiBlaW4gUGFrZXQgZW50ZmVybnQgd2lyZCBiZXN0ZWh0IGRpZSBNw7ZnbGljaGtlaXQsIGRhc3MgZWluIGFuZGVyZXMgIgorImluc3RhbGxpZXJ0ZXMgUGFrZXQgdm9uIGRlbSBlbnRmZXJudGVuIFBha2V0IGFiaMOkbmd0LiBEaWUgQW5nYWJlIGRpZXNlciAiCisiT3B0aW9uIGbDvGhydCB6dXIgYXV0b21hdGlzY2hlbiBEZWtvbmZpZ3VyYXRpb24gZGVzIFBha2V0ZXMsIGRhcyB2b24gZGVtICIKKyJlbnRmZXJudGVuIFBha2V0IGFiaMOkbmd0LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTozMjYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1EPkk8b2N0YWw+QjwsIC0tZGVidWc9Pkk8b2N0YWw+IgorbXNnc3RyICJCPC1EPkk8T2t0YWw+QjwsIC0tZGVidWc9Pkk8T2t0YWw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzMyCittc2dpZCAiIgorIlN3aXRjaCBkZWJ1Z2dpbmcgb24uIEk8b2N0YWw+IGlzIGZvcm1lZCBieSBiaXR3aXNlLW9ycmluZyBkZXNpcmVkIHZhbHVlcyAiCisidG9nZXRoZXIgZnJvbSB0aGUgbGlzdCBiZWxvdyAobm90ZSB0aGF0IHRoZXNlIHZhbHVlcyBtYXkgY2hhbmdlIGluIGZ1dHVyZSAiCisicmVsZWFzZXMpLiBCPC1EaD4gb3IgQjwtLWRlYnVnPWhlbHA+IGRpc3BsYXkgdGhlc2UgZGVidWdnaW5nIHZhbHVlcy4iCittc2dzdHIgIiIKKyJTY2hhbHRlIERlYnVnZ2luZyBlaW4uIEk8T2t0YWw+IHdpcmQgZHVyY2ggYml0d2Vpc2UgT2Rlci1WZXJrbsO8cGZ1bmcgZGVyICIKKyJnZXfDvG5zY2h0ZW4gV2VydGUgdm9uIGRlciBuYWNoZm9sZ2VuZGVuIExpc3RlIGdlYmlsZGV0IChiZWFjaHRlbiBTaWUsIGRhc3MgIgorInNpY2ggZGllc2UgV2VydGUgaW4genVrw7xuZnRpZ2VuIFZlcsO2ZmZlbnRsaWNodW5nZW4gdmVyw6RuZGVybiBrw7ZubmVuKS4gQjwtRGg+ICIKKyJvZGVyIEI8LS1kZWJ1Zz1oZWxwPiB6ZWlnZW4gZGllc2UgRGVidWdnaW5nLVdlcnRlIGFuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjM0NworIywgbm8td3JhcAorbXNnaWQgIiIKKyIgICAgTnVtYmVyICAgRGVzY3JpcHRpb25cbiIKKyIgICAgICAgICAxICAgR2VuZXJhbGx5IGhlbHBmdWwgcHJvZ3Jlc3MgaW5mb3JtYXRpb25cbiIKKyIgICAgICAgICAyICAgSW52b2NhdGlvbiBhbmQgc3RhdHVzIG9mIG1haW50YWluZXIgc2NyaXB0c1xuIgorIiAgICAgICAgMTAgICBPdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWRcbiIKKyIgICAgICAgMTAwICAgTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWRcbiIKKyIgICAgICAgIDIwICAgT3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZVxuIgorIiAgICAgICAyMDAgICBMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGVcbiIKKyIgICAgICAgIDQwICAgRGVwZW5kZW5jaWVzIGFuZCBjb25mbGljdHNcbiIKKyIgICAgICAgNDAwICAgTG90cyBvZiBkZXBlbmRlbmNpZXMvY29uZmxpY3RzIG91dHB1dFxuIgorIiAgICAgMTAwMDAgICBUcmlnZ2VyIGFjdGl2YXRpb24gYW5kIHByb2Nlc3NpbmdcbiIKKyIgICAgIDIwMDAwICAgTG90cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzXG4iCisiICAgICA0MDAwMCAgIFNpbGx5IGFtb3VudHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2Vyc1xuIgorIiAgICAgIDEwMDAgICBMb3RzIG9mIGRyaXZlbCBhYm91dCBlLmcuIHRoZSBkcGtnL2luZm8gZGlyXG4iCisiICAgICAgMjAwMCAgIEluc2FuZSBhbW91bnRzIG9mIGRyaXZlbFxuIgorbXNnc3RyICIiCisiICBOdW1tZXIgIEJlc2NocmVpYnVuZ1xuIgorIiAgICAgIDEgICBBbGxnZW1laW4gaGlsZnJlaWNoZSBGb3J0c2Nocml0dHNpbmZvcm1hdGlvbmVuXG4iCisiICAgICAgMiAgIEF1ZnJ1ZiB1bmQgU3RhdHVzIGRlciBCZXRyZXVlcnNrcmlwdGVcbiIKKyIgICAgIDEwICAgQXVzZ2FiZSBmw7xyIGplZGUgdmVyYXJiZWl0ZXRlIERhdGVpXG4iCisiICAgIDEwMCAgIFVtZmFuZ3JlaWNoZSBBdXNnYWJlIGbDvHIgamVkZSB2ZXJhcmJlaXRldGUgRGF0ZWlcbiIKKyIgICAgIDIwICAgQXVzZ2FiZSBmw7xyIGplZGUgS29uZmlndXJhdGlvbnNkYXRlaVxuIgorIiAgICAyMDAgICBVbWZhbmdyZWljaGUgQXVzZ2FiZSBmw7xyIGplZGUgS29uZmlndXJhdGlvbnNkYXRlaVxuIgorIiAgICAgNDAgICBBYmjDpG5naWdrZWl0ZW4gdW5kIEtvbmZsaWt0ZVxuIgorIiAgICA0MDAgICBVbWZhbmdyZWljaGUgQWJow6RuZ2lna2VpdGVuL0tvbmZsaWt0ZS1BdXNnYWJlXG4iCisiICAxMDAwMCAgIFRyaWdnZXItQWt0aXZpZXJ1bmcgdW5kIC1WZXJhcmJlaXR1bmdcbiIKKyIgIDIwMDAwICAgVW1mYW5ncmVpY2hlIEF1c2dhYmUgYmV6w7xnbGljaCBUcmlnZ2VyXG4iCisiICA0MDAwMCAgIEFsYmVybmUgTWVuZ2UgYW4gQXVzZ2FiZSBiZXrDvGdsaWNoIFRyaWdnZXJcbiIKKyIgICAxMDAwICAgVW1mYW5ncmVpY2hlcyBHZWxhYmVyIGJlaXNwaWVsc3dlaXNlIMO8YmVyIGRhcyBkcGtnL2luZm8tVmVyemVpY2huaXNcbiIKKyIgICAyMDAwICAgVmVycsO8Y2t0ZSBNZW5nZW4gYW4gR2VsYWJlclxuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjM0NworIywgbm8td3JhcAorbXNnaWQgIkI8LS1mb3JjZS0+STx0aGluZ3M+LCBCPC0tbm8tZm9yY2UtPkk8dGhpbmdzPiwgQjwtLXJlZnVzZS0+STx0aGluZ3M+IgorbXNnc3RyICJCPC0tZm9yY2UtPkk8U2FjaGVuPiwgQjwtLW5vLWZvcmNlLT5JPFNhY2hlbj4sIEI8LS1yZWZ1c2UtPkk8U2FjaGVuPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjM1NAorbXNnaWQgIiIKKyJGb3JjZSBvciByZWZ1c2UgKEI8bm8tZm9yY2U+IGFuZCBCPHJlZnVzZT4gbWVhbiB0aGUgc2FtZSB0aGluZykgIHRvIGRvIHNvbWUgIgorInRoaW5ncy4gSTx0aGluZ3M+IGlzIGEgY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2YgdGhpbmdzIHNwZWNpZmllZCBiZWxvdy4gQjwtLSIKKyJmb3JjZS1oZWxwPiBkaXNwbGF5cyBhIG1lc3NhZ2UgZGVzY3JpYmluZyB0aGVtLiAgVGhpbmdzIG1hcmtlZCB3aXRoICgqKSBhcmUgIgorImZvcmNlZCBieSBkZWZhdWx0LiIKK21zZ3N0ciAiIgorIkVyendpbmdlIG9kZXIgdmVyd2VpZ2VyZSAoQjxuby1mb3JjZT4gdW5kIEI8cmVmdXNlPiBiZWRldXRlbiBkYXMgZ2xlaWNoZSkgIgorImJlc3RpbW10ZSBTYWNoZW4uIEk8U2FjaGVuPiBpc3QgZWluZSBLb21tYS1zZXBhcmllcnRlIExpc3RlIHZvbiBEaW5nZW4sIGRpZSAiCisiaW0gZm9sZ2VuZGVuIGJlc2NocmllYmVuIHNpbmQuIEI8LS1mb3JjZS1oZWxwPiB6ZWlndCBlaW5lIE5hY2hyaWNodCBhbiwgZGllICIKKyJkaWVzZSBiZXNjaHJlaWJ0LiBNaXQgKCopIG1hcmtpZXJ0ZSBEaW5nZSB3ZXJkZW4gc3RhbmRhcmRtw6TDn2lnIGVyend1bmdlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTozNTgKK21zZ2lkICIiCisiSTxXYXJuaW5nOiBUaGVzZSBvcHRpb25zIGFyZSBtb3N0bHkgaW50ZW5kZWQgdG8gYmUgdXNlZCBieSBleHBlcnRzIG9ubHkuICIKKyJVc2luZyB0aGVtIHdpdGhvdXQgZnVsbHkgdW5kZXJzdGFuZGluZyB0aGVpciBlZmZlY3RzIG1heSBicmVhayB5b3VyIHdob2xlICIKKyJzeXN0ZW0uPiIKK21zZ3N0ciAiIgorIkk8V2FybnVuZy4gRGllc2UgT3B0aW9uZW4gc2luZCBoYXVwdHPDpGNobGljaCBmw7xyIGRlbiBFaW5zYXR6IGR1cmNoIEV4cGVydGVuICIKKyJnZWRhY2h0LiBEZXIgRWluc2F0eiBvaG5lIGtvbXBsZXR0ZXMgVmVyc3TDpG5kbmlzIGRlciBFZmZla3RlIGthbm4gSWhyICIKKyJnZXNhbXRlcyBTeXN0ZW0gemVyc3TDtnJlbi4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzYxCittc2dpZCAiQjxhbGw+OiBUdXJucyBvbiAob3Igb2ZmKSBhbGwgZm9yY2Ugb3B0aW9ucy4iCittc2dzdHIgIkI8YWxsPjogU2NoYWx0ZXQgYWxsZSDCu2ZvcmNlwqstT3B0aW9uZW4gZWluIChvZGVyIGF1cykuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzY0Cittc2dpZCAiIgorIkI8ZG93bmdyYWRlPigqKTogSW5zdGFsbCBhIHBhY2thZ2UsIGV2ZW4gaWYgbmV3ZXIgdmVyc2lvbiBvZiBpdCBpcyBhbHJlYWR5ICIKKyJpbnN0YWxsZWQuIgorbXNnc3RyICIiCisiQjxkb3duZ3JhZGU+KCopOiBJbnN0YWxsaWVyZSBlaW4gUGFrZXQsIHNlbGJzdCB3ZW5uIGVpbmUgbmV1ZXJlIFZlcnNpb24gIgorImRhdm9uIGJlcmVpdHMgaW5zdGFsbGllcnQgaXN0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjM3MQorbXNnaWQgIiIKKyJJPFdhcm5pbmc6IEF0IHByZXNlbnQgZHBrZyBkb2VzIG5vdCBkbyBhbnkgZGVwZW5kZW5jeSBjaGVja2luZyBvbiBkb3duZ3JhZGVzICIKKyJhbmQgdGhlcmVmb3JlIHdpbGwgbm90IHdhcm4geW91IGlmIHRoZSBkb3duZ3JhZGUgYnJlYWtzIHRoZSBkZXBlbmRlbmN5IG9mICIKKyJzb21lIG90aGVyIHBhY2thZ2UuIFRoaXMgY2FuIGhhdmUgc2VyaW91cyBzaWRlIGVmZmVjdHMsIGRvd25ncmFkaW5nICIKKyJlc3NlbnRpYWwgc3lzdGVtIGNvbXBvbmVudHMgY2FuIGV2ZW4gbWFrZSB5b3VyIHdob2xlIHN5c3RlbSB1bnVzYWJsZS4gVXNlICIKKyJ3aXRoIGNhcmUuPiIKK21zZ3N0ciAiIgorIkk8V2FybnVuZzogRGVyemVpdCBmw7xocnQgRHBrZyBrZWluZSBBYmjDpG5naWdrZWl0c8O8YmVycHLDvGZ1bmcgYmVpIGRlciAiCisiSW5zdGFsbGF0aW9uIMOkbHRlcmVyIFZlcnNpb25lbiAoYWxzIGJlcmVpdHMgaW5zdGFsbGllcnQpIGR1cmNoIChzb2cuICIKKyJEb3duZ3JhZGUpIHVuZCB3aXJkIFNpZSBkYWhlciBuaWNodCB3YXJuZW4sIGZhbGxzIGRhZHVyY2ggZGllIEFiaMOkbmdpZ2tlaXQgIgorImVpbmVzIGFuZGVyZW4gUGFrZXRzIG5pY2h0IG1laHIgZXJmw7xsbHQgaXN0LiBEaWVzIGthbm4gZXJuc3RoYWZ0ZSAiCisiU2VpdGVuZWZmZWt0ZSBoYWJlbiwgZWluIERvd25ncmFkZSBlaW5lciBlc3NlbnppZWxsZW4gU3lzdGVta29tcG9uZW50ZSBrYW5uICIKKyJJaHIgZ2VzYW10ZXMgU3lzdGVtIHVuYnJhdWNoYmFyIG1hY2hlbi4gVmVyd2VuZGVuIFNpZSBkaWVzZSBPcHRpb24gbWl0ICIKKyJWb3JzaWNodC4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6Mzc1Cittc2dpZCAiIgorIkI8Y29uZmlndXJlLWFueT46IENvbmZpZ3VyZSBhbHNvIGFueSB1bnBhY2tlZCBidXQgdW5jb25maWd1cmVkIHBhY2thZ2VzIG9uICIKKyJ3aGljaCB0aGUgY3VycmVudCBwYWNrYWdlIGRlcGVuZHMuIgorbXNnc3RyICIiCisiQjxjb25maWd1cmUtYW55PjogS29uZmlndXJpZXJlIGF1Y2ggamVkZXMgZW50cGFja3RlLCBhYmVyIHVua29uZmlndXJpZXJ0ZSAiCisiUGFrZXQgdm9uIGRlbSBkYXMgYWt0dWVsbGUgUGFrZXQgYWJow6RuZ3QuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6Mzc4Cittc2dpZCAiQjxob2xkPjogUHJvY2VzcyBwYWNrYWdlcyBldmVuIHdoZW4gbWFya2VkIFwiaG9sZFwiLiIKK21zZ3N0ciAiQjxob2xkPjogVmVyYXJiZWl0ZSBhdWNoIFBha2V0ZSwgZGllIG1pdCDCu2hhbHRlbsKrIG1hcmtpZXJ0IHNpbmQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzgzCittc2dpZCAiIgorIkI8cmVtb3ZlLXJlaW5zdHJlcT46IFJlbW92ZSBhIHBhY2thZ2UsIGV2ZW4gaWYgaXQncyBicm9rZW4gYW5kIG1hcmtlZCB0byAiCisicmVxdWlyZSByZWluc3RhbGxhdGlvbi4gVGhpcyBtYXksIGZvciBleGFtcGxlLCBjYXVzZSBwYXJ0cyBvZiB0aGUgcGFja2FnZSB0byAiCisicmVtYWluIG9uIHRoZSBzeXN0ZW0sIHdoaWNoIHdpbGwgdGhlbiBiZSBmb3Jnb3R0ZW4gYnkgQjxkcGtnPi4iCittc2dzdHIgIiIKKyJCPHJlbW92ZS1yZWluc3RyZXE+OiBFbnRmZXJuZSBlaW4gUGFrZXQsIHNlbGJzdCBmYWxscyBlcyBkZWZla3QgaXN0IHVuZCB6dXIgIgorIk5ldWluc3RhbGxhdGlvbiBtYXJraWVydCBpc3QuIERpZXMga2FubiBiZWlzcGllbHN3ZWlzZSBkYXp1IGbDvGhyZW4sIGRhc3MgIgorIlRlaWxlIGRlcyBQYWtldHMgYXVmIGRlbSBTeXN0ZW0gYmxlaWJlbiB1bmQgdm9uIEI8ZHBrZz4gdmVyZ2Vzc2VuIHdlcmRlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTozODgKK21zZ2lkICIiCisiQjxyZW1vdmUtZXNzZW50aWFsPjogUmVtb3ZlLCBldmVuIGlmIHRoZSBwYWNrYWdlIGlzIGNvbnNpZGVyZWQgZXNzZW50aWFsLiAiCisiRXNzZW50aWFsIHBhY2thZ2VzIGNvbnRhaW4gbW9zdGx5IHZlcnkgYmFzaWMgVW5peCBjb21tYW5kcy4gUmVtb3ZpbmcgdGhlbSAiCisibWlnaHQgY2F1c2UgdGhlIHdob2xlIHN5c3RlbSB0byBzdG9wIHdvcmtpbmcsIHNvIHVzZSB3aXRoIGNhdXRpb24uIgorbXNnc3RyICIiCisiQjxyZW1vdmUtZXNzZW50aWFsPjogRW50ZmVybmUsIHNlbGJzdCBmYWxscyBkYXMgUGFrZXQgYWxzIGVzc2VuemllbGwgIgorImJldHJhY2h0ZXQgd2lyZC4gRXNzZW56aWVsbGUgUGFrZXRlIGVudGhhbHRlbiBoYXVwdHPDpGNobGljaCBzZWhyICIKKyJncnVuZGxlZ2VuZGUgVW5peC1CZWZlaGxlLiBEaWVzZSB6dSBlbnRmZXJuZW4ga2FubiBkYXp1IGbDvGhyZW4sIGRhc3MgZGFzICIKKyJnZXNhbXRlIFN5c3RlbSBuaWNodCBtZWhyIGFyYmVpdGV0IC0gdmVyd2VuZGVuIFNpZSBkaWVzZSBPcHRpb24gZGFoZXIgbWl0ICIKKyJWb3JzaWNodC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTozOTEKK21zZ2lkICJCPGRlcGVuZHM+OiBUdXJuIGFsbCBkZXBlbmRlbmN5IHByb2JsZW1zIGludG8gd2FybmluZ3MuIgorbXNnc3RyICJCPGRlcGVuZHM+OiBWZXJ3YW5kbGUgYWxsZSBBYmjDpG5naWdrZWl0c3Byb2JsZW1lIGluIFdhcm51bmdlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTozOTQKK21zZ2lkICIiCisiQjxkZXBlbmRzLXZlcnNpb24+OiBEb24ndCBjYXJlIGFib3V0IHZlcnNpb25zIHdoZW4gY2hlY2tpbmcgZGVwZW5kZW5jaWVzLiIKK21zZ3N0ciAiIgorIkI8ZGVwZW5kcy12ZXJzaW9uPjogSWdub3JpZXJlIFZlcnNpb25lbiBiZWkgZGVyIFByw7xmdW5nIHZvbiBBYmjDpG5naWdrZWl0ZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6Mzk3Cittc2dpZCAiQjxicmVha3M+OiBJbnN0YWxsLCBldmVuIGlmIHRoaXMgd291bGQgYnJlYWsgYW5vdGhlciBwYWNrYWdlLiIKK21zZ3N0ciAiIgorIkI8YnJlYWtzPjogSW5zdGFsbGllcmUsIHNlbGJzdCBmYWxscyBkaWVzIGVpbiBhbmRlcmVzIFBha2V0IGJlc2Now6RkaWd0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQwMQorbXNnaWQgIiIKKyJCPGNvbmZsaWN0cz46IEluc3RhbGwsIGV2ZW4gaWYgaXQgY29uZmxpY3RzIHdpdGggYW5vdGhlciBwYWNrYWdlLiBUaGlzIGlzICIKKyJkYW5nZXJvdXMsIGZvciBpdCB3aWxsIHVzdWFsbHkgY2F1c2Ugb3ZlcndyaXRpbmcgb2Ygc29tZSBmaWxlcy4iCittc2dzdHIgIiIKKyJCPGNvbmZsaWN0cz46IEluc3RhbGxpZXJlLCBzZWxic3Qgd2VubiBlcyBtaXQgZWluZW0gYW5kZXJlbiBQYWtldCBpbiAiCisiS29uZmxpa3Qgc3RlaHQuIERpZXMgaXN0IGdlZsOkaHJsaWNoLCBkYSBkaWVzIGdld8O2aG5saWNoIGRhenUgZsO8aHJ0LCBkYXNzICIKKyJlaW5pZ2UgRGF0ZWllbiDDvGJlcnNjaHJpZWJlbiB3ZXJkZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDA2Cittc2dpZCAiIgorIkI8Y29uZm1pc3M+OiBBbHdheXMgaW5zdGFsbCBhIG1pc3NpbmcgY29uZmZpbGUuIFRoaXMgaXMgZGFuZ2Vyb3VzLCBzaW5jZSBpdCAiCisibWVhbnMgbm90IHByZXNlcnZpbmcgYSBjaGFuZ2UgKHJlbW92aW5nKSBtYWRlIHRvIHRoZSBmaWxlLiIKK21zZ3N0ciAiIgorIkI8Y29uZm1pc3M+OiBJbnN0YWxsaWVyZSBpbW1lciBlaW4gZmVobGVuZGVzIENvbmZmaWxlLiBEaWVzIGlzdCBnZWbDpGhybGljaCwgIgorImRhIGVzIGJlZGV1dGV0LCBkYXNzIGVpbmUgw4RuZGVydW5nIChkaWUgRW50ZmVybnVuZykgYW4gZGVyIERhdGVpIG5pY2h0ICIKKyJlcmhhbHRlbiB3aXJkLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQxMQorbXNnaWQgIiIKKyJCPGNvbmZuZXc+OiBJZiBhIGNvbmZmaWxlIGhhcyBiZWVuIG1vZGlmaWVkIGFsd2F5cyBpbnN0YWxsIHRoZSBuZXcgdmVyc2lvbiAiCisid2l0aG91dCBwcm9tcHRpbmcsIHVubGVzcyB0aGUgQjwtLWZvcmNlLWNvbmZkZWY+IGlzIGFsc28gc3BlY2lmaWVkLCBpbiB3aGljaCAiCisiY2FzZSB0aGUgZGVmYXVsdCBhY3Rpb24gaXMgcHJlZmVycmVkLiIKK21zZ3N0ciAiIgorIkI8Y29uZm5ldz46IEZhbGxzIGVpbmUgQ29uZmZpbGUgbW9kaWZpemllcnQgd3VyZGUsIGluc3RhbGxpZXJlIGltbWVyIGRpZSAiCisibmV1ZSBWZXJzaW9uIG9obmUgUsO8Y2tmcmFnZSwgZXMgc2VpIGRlbm4sIEI8LS1mb3JjZS1jb25mZGVmPiBpc3QgZWJlbmZhbGxzICIKKyJhbmdlZ2ViZW4sIGluIHdlbGNoZW0gRmFsbGUgZGllIFN0YW5kYXJkYWt0aW9uIGJldm9yenVndCB3aXJkLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQxNgorbXNnaWQgIiIKKyJCPGNvbmZvbGQ+OiBJZiBhIGNvbmZmaWxlIGhhcyBiZWVuIG1vZGlmaWVkIGFsd2F5cyBrZWVwIHRoZSBvbGQgdmVyc2lvbiAiCisid2l0aG91dCBwcm9tcHRpbmcsIHVubGVzcyB0aGUgQjwtLWZvcmNlLWNvbmZkZWY+IGlzIGFsc28gc3BlY2lmaWVkLCBpbiB3aGljaCAiCisiY2FzZSB0aGUgZGVmYXVsdCBhY3Rpb24gaXMgcHJlZmVycmVkLiIKK21zZ3N0ciAiIgorIkI8Y29uZm9sZD46IEZhbGxzIGVpbmUgQ29uZmZpbGUgbW9kaWZpemllcnQgd3VyZGUsIGJlaGFsdGUgaW1tZXIgZGllIGFsdGUgIgorIlZlcnNpb24gb2huZSBSw7xja2ZyYWdlLCBlcyBzZWkgZGVubiwgQjwtLWZvcmNlLWNvbmZkZWY+IGlzdCBlYmVuZmFsbHMgIgorImFuZ2VnZWJlbiwgaW4gd2VsY2hlbSBGYWxsZSBkaWUgU3RhbmRhcmRha3Rpb24gYmV2b3J6dWd0IHdpcmQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDIyCittc2dpZCAiIgorIkI8Y29uZmRlZj46IElmIGEgY29uZmZpbGUgaGFzIGJlZW4gbW9kaWZpZWQgYWx3YXlzIGNob29zZSB0aGUgZGVmYXVsdCAiCisiYWN0aW9uLiBJZiB0aGVyZSBpcyBubyBkZWZhdWx0IGFjdGlvbiBpdCB3aWxsIHN0b3AgdG8gYXNrIHRoZSB1c2VyIHVubGVzcyAiCisiQjwtLWZvcmNlLWNvbmZuZXc+IG9yIEI8LS1mb3JjZS1jb25mb2xkPiBpcyBhbHNvIGJlZW4gZ2l2ZW4sIGluIHdoaWNoIGNhc2UgIgorIml0IHdpbGwgdXNlIHRoYXQgdG8gZGVjaWRlIHRoZSBmaW5hbCBhY3Rpb24uIgorbXNnc3RyICIiCisiQjxjb25mZGVmPjogRmFsbHMgZWluZSBDb25mZmlsZSB2ZXLDpG5kZXJ0IHd1cmRlLCB3w6RobGUgaW1tZXIgZGllICIKKyJTdGFuZGFyZGFrdGlvbi4gRmFsbHMgZXMga2VpbmUgU3RhbmRhcmRha3Rpb24gZ2lidCwgaGFsdGUgYW4gdW0gZGVuIEJlbnV0emVyICIKKyJ6dSBmcmFnZW4sIGVzIHNlaSBkZW5uLCBCPC0tZm9yY2UtY29uZm5ldz4gb2RlciBCPC0tZm9yY2UtY29uZm9sZD4gc2luZCAiCisiZWJlbmZhbGxzIGFuZ2VnZWJlbiwgaW4gd2VsY2hlbSBGYWxsZSBkaWVzIHZlcndlbmRldCB3aXJkLCB1bSBkaWUgIgorImxldHp0ZW5kbGljaGUgQWt0aW9uIHp1IGJlc3RpbW1lbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0MjkKK21zZ2lkICIiCisiQjxjb25mYXNrPjogSWYgYSBjb25mZmlsZSBoYXMgYmVlbiBtb2RpZmllZCBhbHdheXMgb2ZmZXIgdG8gcmVwbGFjZSBpdCB3aXRoICIKKyJ0aGUgdmVyc2lvbiBpbiB0aGUgcGFja2FnZSwgZXZlbiBpZiB0aGUgdmVyc2lvbiBpbiB0aGUgcGFja2FnZSBkaWQgbm90ICIKKyJjaGFuZ2UuIElmIGFueSBvZiBCPC0tZm9yY2UtY29uZm1pc3M+LCBCPC0tZm9yY2UtY29uZm5ldz4sIEI8LS1mb3JjZS0iCisiY29uZm9sZD4sIG9yIEI8LS1mb3JjZS1jb25mZGVmPiBpcyBhbHNvIGdpdmVuLCBpdCB3aWxsIGJlIHVzZWQgdG8gZGVjaWRlIHRoZSAiCisiZmluYWwgYWN0aW9uLiIKK21zZ3N0ciAiIgorIkI8Y29uZmFzaz46IEZhbGxzIGVpbmUgQ29uZmZpbGUgdmVyw6RuZGVydCB3dXJkZSwgYmlldGUgaW1tZXIgYW4sIHNpZSBkdXJjaCAiCisiZGllIFZlcnNpb24gYXVzIGRlbSBQYWtldCB6dSBlcnNldHplbiwgc2VsYnN0IGZhbGxzIHNpY2ggZGllIFZlcnNpb24gaW4gZGVtICIKKyJQYWtldCBuaWNodCBnZcOkbmRlcnQgaGF0LiBGYWxscyBhdWNoIGVpbmVyIHZvbiBCPC0tZm9yY2UtY29uZm1pc3M+LCBCPC0tIgorImZvcmNlLWNvbmZuZXc+LCBCPC0tZm9yY2UtY29uZm9sZD4gb2RlciBCPC0tZm9yY2UtY29uZmRlZj4gYW5nZWdlYmVuIHdpcmQsICIKKyJ3aXJkIHNpZSBkYXp1IHZlcndhbmR0LCBkaWUgbGV0enRlbmRsaWNoZSBBa3Rpb24genUgZXJtaXR0ZWxuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQzMgorbXNnaWQgIkI8b3ZlcndyaXRlPjogT3ZlcndyaXRlIG9uZSBwYWNrYWdlJ3MgZmlsZSB3aXRoIGFub3RoZXIncyBmaWxlLiIKK21zZ3N0ciAiIgorIkI8b3ZlcndyaXRlPjogw5xiZXJzY2hyZWliZSBkaWUgRGF0ZWkgYXVzIGVpbmVtIFBha2V0IG1pdCBlaW5lciBEYXRlaSBhdXMgIgorImVpbmVtIGFuZGVyZW4gUGFrZXQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDM1Cittc2dpZCAiQjxvdmVyd3JpdGUtZGlyPiBPdmVyd3JpdGUgb25lIHBhY2thZ2UncyBkaXJlY3Rvcnkgd2l0aCBhbm90aGVyJ3MgZmlsZS4iCittc2dzdHIgIiIKKyJCPG92ZXJ3cml0ZS1kaXI+IMOcYmVyc2NocmVpYmUgZGFzIFZlcnplaWNobmlzIGF1cyBlaW5lbSBQYWtldCBtaXQgZWluZXIgIgorIkRhdGVpIGF1cyBlaW5lbSBhbmRlcmVuIFBha2V0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQzOAorbXNnaWQgIiIKKyJCPG92ZXJ3cml0ZS1kaXZlcnRlZD46IE92ZXJ3cml0ZSBhIGRpdmVydGVkIGZpbGUgd2l0aCBhbiB1bmRpdmVydGVkIHZlcnNpb24uIgorbXNnc3RyICIiCisiQjxvdmVyd3JpdGUtZGl2ZXJ0ZWQ+OiDDnGJlcnNjaHJlaWJlIGVpbmUgdW1nZWxlaXRldGUgKMK7ZGl2ZXJ0ZWTCqykgRGF0ZWkgbWl0ICIKKyJlaW5lciBuaWNodCB1bWdlbGVpdGV0ZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDQ2Cittc2dpZCAiIgorIkI8dW5zYWZlLWlvPjogRG8gbm90IHBlcmZvcm0gc2FmZSBJL08gb3BlcmF0aW9ucyB3aGVuIHVucGFja2luZy4gQ3VycmVudGx5ICIKKyJ0aGlzIGltcGxpZXMgbm90IHBlcmZvcm1pbmcgZmlsZSBzeXN0ZW0gc3luY3MgYmVmb3JlIGZpbGUgcmVuYW1lcywgd2hpY2ggaXMgIgorImtub3duIHRvIGNhdXNlIHN1YnN0YW50aWFsIHBlcmZvcm1hbmNlIGRlZ3JhZGF0aW9uIG9uIHNvbWUgZmlsZSBzeXN0ZW1zLCAiCisidW5mb3J0dW5hdGVseSB0aGUgb25lcyB0aGF0IHJlcXVpcmUgdGhlIHNhZmUgSS9PIG9uIHRoZSBmaXJzdCBwbGFjZSBkdWUgdG8gIgorInRoZWlyIHVucmVsaWFibGUgYmVoYXZpb3VyIGNhdXNpbmcgemVyby1sZW5ndGggZmlsZXMgb24gYWJydXB0IHN5c3RlbSAiCisiY3Jhc2hlcy4iCittc2dzdHIgIiIKKyJCPHVuc2FmZS1pbz46IEJlaW0gRW50cGFja2VuIGtlaW5lIHNpY2hlcmVuIEUvQS1PcGVyYXRpb25lbiBkdXJjaGbDvGhyZW4uICIKKyJEZXJ6ZWl0IGltcGxpemllcnQgZGllcywgZGFzcyB2b3IgRGF0ZWl1bWJlbmVubnVuZ2VuIGtlaW4gU3lzdGVtc3luYyAiCisiZHVyY2hnZWbDvGhydCB3aXJkLiBEaWVzZXIgU3luYyBmw7xocnQgYmVpIGVpbmlnZW4gRGF0ZWlzeXN0ZW1lbiB6dSAiCisiZXJoZWJsaWNoZW4gTGVpc3R1bmdzZWluYnXDn2VuLCB1bmdsw7xja2xpY2hlcndlaXNlIGJlaSBzb2xjaGVuLCBkaWUgw7xiZXJoYXVwdCAiCisic2ljaGVyZSBFL0EgYXVmZ3J1bmQgaWhyZXMgdW56dXZlcmzDpHNzaWdlbiBWZXJoYWx0ZW5zIGJlbsO2dGlnZW4sIGF1ZiBkZW5lbiAiCisiYmVpIGFicnVwdGVuIFN5c3RlbWFic3TDvHJ6ZW4gRGF0ZWllbiBkZXIgTMOkbmdlIE51bGwgZW50c3RlaGVuIGvDtm5uZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDUyCittc2dpZCAiIgorIkk8Tm90ZT46IEZvciBleHQ0LCB0aGUgbWFpbiBvZmZlbmRlciwgY29uc2lkZXIgdXNpbmcgaW5zdGVhZCB0aGUgbW91bnQgIgorIm9wdGlvbiBCPG5vZGVsYWxsb2M+LCB3aGljaCB3aWxsIGZpeCBib3RoIHRoZSBwZXJmb3JtYW5jZSBkZWdyYWRhdGlvbiBhbmQgIgorInRoZSBkYXRhIHNhZmV0eSBpc3N1ZXMsIHRoZSBsYXR0ZXIgYnkgbWFraW5nIHRoZSBmaWxlIHN5c3RlbSBub3QgcHJvZHVjZSAiCisiemVyby1sZW5ndGggZmlsZXMgb24gYWJydXB0IHN5c3RlbSBjcmFzaGVzIHdpdGggYW55IHNvZnR3YXJlIG5vdCBkb2luZyBzeW5jcyAiCisiYmVmb3JlIGF0b21pYyByZW5hbWVzLiIKK21zZ3N0ciAiIgorIkk8SGlud2Vpczo+IEbDvHIgZGVuIEhhdXB0bWlzc3TDpHRlciBFeHQ0IHNvbGx0ZW4gU2llIHN0YXR0ZGVzc2VuIGRpZSAiCisiRWluaMOkbmdlb3B0aW9uIEI8bm9kZWxhbGxvYz4gdmVyd2VuZGVuLCBkaWUgc293b2hsIGRpZSBMZWlzdHVuZ3NlaW5idcOfZSAiCisidmVyaGluZGVydCBhbHMgYXVjaCBEYXRlbnNpY2hlcmhlaXRzcHJvYmxlbWUgdmVybWVpZGV0LiBMZXR6dGVyZXMgYmVkZXV0ZXQsICIKKyJkYXNzIGJlaSBhYnJ1cHRlbiBTeXN0ZW1hYnN0w7xyemVuIGJlaSBqZWRlciBTb2Z0d2FyZSwgZGllIGtlaW5lIFN5bmNzIHZvciAiCisiYXRvbWFyZW4gVW1iZW5lbm51bmdlbiBkdXJjaGbDvGhydCwga2VpbmUgRGF0ZWllbiBkZXIgTMOkbmdlIE51bGwgZ2VuZXJpZXJ0ICIKKyJ3ZXJkZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDU1Cittc2dpZCAiIgorIkk8V2FybmluZzogVXNpbmcgdGhpcyBvcHRpb24gbWlnaHQgaW1wcm92ZSBwZXJmb3JtYW5jZSBhdCB0aGUgY29zdCBvZiBsb3NpbmcgIgorImRhdGEsIHVzZSB3aXRoIGNhcmUuPiIKK21zZ3N0ciAiIgorIkk8V2FybnVuZzogRGllIFZlcndlbmR1bmcgZGllc2VyIE9wdGlvbiBrYW5uIGRpZSBMZWlzdHVuZyBlcmjDtmhlbiwgIgorImFsbGVyZGluZ3Mga8O2bm5lbiBkYWJlaSBEYXRlbiB2ZXJsb3JlbiBnZWhlbi4gVmVyd2VuZGVuIFNpZSBkaWUgT3B0aW9uICIKKyJ2b3JzaWNodGlnLj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0NTgKK21zZ2lkICJCPGFyY2hpdGVjdHVyZT46IFByb2Nlc3MgZXZlbiBwYWNrYWdlcyB3aXRoIHdyb25nIG9yIG5vIGFyY2hpdGVjdHVyZS4iCittc2dzdHIgIiIKKyJCPGFyY2hpdGVjdHVyZT46IFZlcmFyYmVpdGUgc29nYXIgUGFrZXRlIG1pdCBkZXIgZmFsc2NoZW4gb2RlciBrZWluZXIgIgorIkFyY2hpdGVrdHVyLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQ2MQorbXNnaWQgIkI8YmFkLXZlcnNpb24+OiBQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyB2ZXJzaW9ucy4iCittc2dzdHIgIkI8YmFkLXZlcnNpb24+OiBWZXJhcmJlaXRlIHNvZ2FyIFBha2V0ZSBtaXQgZmFsc2NoZW4gVmVyc2lvbmVuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQ2NAorbXNnaWQgIiIKKyJCPGJhZC1wYXRoPjogQjxQQVRIPiBpcyBtaXNzaW5nIGltcG9ydGFudCBwcm9ncmFtcywgc28gcHJvYmxlbXMgYXJlIGxpa2VseS4iCittc2dzdHIgIiIKKyJCPGJhZC1wYXRoPjogSW0gQjxQQVRIPiBmZWhsZW4gd2ljaHRpZ2UgUHJvZ3JhbW1lLCBkYWhlciBzaW5kIFByb2JsZW1lICIKKyJ3YWhyc2NoZWlubGljaC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0NjcKK21zZ2lkICJCPG5vdC1yb290PjogVHJ5IHRvIChkZSlpbnN0YWxsIHRoaW5ncyBldmVuIHdoZW4gbm90IHJvb3QuIgorbXNnc3RyICIiCisiQjxub3Qtcm9vdD46IFZlcnN1Y2hlIFNhY2hlbiB6dSAoZGUpaW5zdGFsbGllcmVuLCBzZWxic3QgZmFsbHMgbmljaHQgcm9vdC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0NzAKK21zZ2lkICJCPGJhZC12ZXJpZnk+OiBJbnN0YWxsIGEgcGFja2FnZSBldmVuIGlmIGl0IGZhaWxzIGF1dGhlbnRpY2l0eSBjaGVjay4iCittc2dzdHIgIiIKKyJCPGJhZC12ZXJpZnk+OiBJbnN0YWxsaWVyZSBlaW4gUGFrZXQgc2VsYnN0IHdlbm4gZGllIEF1dGhlbnRpeml0w6R0c3Byw7xmdW5nICIKKyJmZWhsc2NobMOkZ3QuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjQ3MQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1pZ25vcmUtZGVwZW5kcz49STxwYWNrYWdlPiwuLi4iCittc2dzdHIgIkI8LS1pZ25vcmUtZGVwZW5kcz49STxQYWtldD4sLi4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDc1Cittc2dpZCAiIgorIklnbm9yZSBkZXBlbmRlbmN5LWNoZWNraW5nIGZvciBzcGVjaWZpZWQgcGFja2FnZXMgKGFjdHVhbGx5LCBjaGVja2luZyBpcyAiCisicGVyZm9ybWVkLCBidXQgb25seSB3YXJuaW5ncyBhYm91dCBjb25mbGljdHMgYXJlIGdpdmVuLCBub3RoaW5nIGVsc2UpLiIKK21zZ3N0ciAiIgorIklnbm9yaWVyZSBBYmjDpG5naWdrZWl0c8O8YmVycHLDvGZ1bmdlbiBmw7xyIGVpbiBiZXN0aW1tdGVzIFBha2V0ICh0YXRzw6RjaGxpY2ggIgorIndpcmQgZGllIMOcYmVycHLDvGZ1bmcgZHVyY2hnZWbDvGhydCwgYWJlciBudXIgV2FybnVuZ2VuIMO8YmVyIEtvbmZsaWt0ZSB3ZXJkZW4gIgorImFuZ2V6ZWlndCwgc29uc3QgbmljaHRzKS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NDc1CisjLCBuby13cmFwCittc2dpZCAiQjwtLW5vLWFjdD4sIEI8LS1kcnktcnVuPiwgQjwtLXNpbXVsYXRlPiIKK21zZ3N0ciAiQjwtLW5vLWFjdD4sIEI8LS1kcnktcnVuPiwgQjwtLXNpbXVsYXRlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQ4MAorbXNnaWQgIiIKKyJEbyBldmVyeXRoaW5nIHdoaWNoIGlzIHN1cHBvc2VkIHRvIGJlIGRvbmUsIGJ1dCBkb24ndCB3cml0ZSBhbnkgY2hhbmdlcy4gIgorIlRoaXMgaXMgdXNlZCB0byBzZWUgd2hhdCB3b3VsZCBoYXBwZW4gd2l0aCB0aGUgc3BlY2lmaWVkIGFjdGlvbiwgd2l0aG91dCAiCisiYWN0dWFsbHkgbW9kaWZ5aW5nIGFueXRoaW5nLiIKK21zZ3N0ciAiIgorIkVybGVkaWdlIGFsbGVzLCB3YXMgZ2VtYWNodCB3ZXJkZW4gc29sbCwgYWJlciBzY2hyZWliZSBrZWluZSDDhG5kZXJ1bmdlbi4gIgorIkRpZXMgd2lyZCB2ZXJ3ZW5kZXQgdW0genUgc2VoZW4sIHdhcyBtaXQgZGVyIHNwZXppZml6aWVydGVuIMOEbmRlcnVuZyAiCisicGFzc2llcmVuIHfDvHJkZSBvaG5lIHRhdHPDpGNobGljaCBldHdhcyB6dSBtb2RpZml6aWVyZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDg1Cittc2dpZCAiIgorIkJlIHN1cmUgdG8gZ2l2ZSBCPC0tbm8tYWN0PiBiZWZvcmUgdGhlIGFjdGlvbi1wYXJhbWV0ZXIsIG9yIHlvdSBtaWdodCBlbmQgdXAgIgorIndpdGggdW5kZXNpcmFibGUgcmVzdWx0cy4gKGUuZy4gQjxkcGtnIC0tcHVyZ2UgZm9vIC0tbm8tYWN0PiB3aWxsIGZpcnN0ICIKKyJwdXJnZSBwYWNrYWdlIGZvbyBhbmQgdGhlbiB0cnkgdG8gcHVyZ2UgcGFja2FnZSAtLW5vLWFjdCwgZXZlbiB0aG91Z2ggeW91ICIKKyJwcm9iYWJseSBleHBlY3RlZCBpdCB0byBhY3R1YWxseSBkbyBub3RoaW5nKSIKK21zZ3N0ciAiIgorIlN0ZWxsZW4gU2llIHNpY2hlciwgZGFzcyBCPC0tbm8tYWN0PiB2b3IgZGVtIEFrdGlvbnMtUGFyYW1ldGVyIHN0ZWh0LCBvZGVyICIKKyJTaWUga8O2bm50ZW4gbWl0IHVuZXJ3w7xuc2NodGVuIEVyZ2Vibmlzc2VuIGVuZGVuLiAoQmVpc3BpZWxzd2Vpc2Ugd2lyZCBCPGRwa2cgIgorIi0tcHVyZ2UgZm9vIC0tbm8tYWN0PiB6dWVyc3QgZGFzIFBha2V0IGZvbyBiZXJlaW5pZ2VuIHVuZCBkYW5uIHZlcnN1Y2hlbiwgIgorImRhcyBQYWtldCAtLW5vLWFjdCB6dSBiZXJlaW5pZ2VuLCBvYndvaGwgU2llIHdhaHJzY2hlaW5saWNoIGRhdm9uIGF1c2dpbmdlbiwgIgorImRhc3MgdGF0c8OkY2hsaWNoIGdhciBuaWNodHMgcGFzc2llcmVuIHNvbGx0ZSkiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NDg1CisjLCBuby13cmFwCittc2dpZCAiQjwtUj4sIEI8LS1yZWN1cnNpdmU+IgorbXNnc3RyICJCPC1SPiwgQjwtLXJlY3Vyc2l2ZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0OTEKK21zZ2lkICIiCisiUmVjdXJzaXZlbHkgaGFuZGxlIGFsbCByZWd1bGFyIGZpbGVzIG1hdGNoaW5nIHBhdHRlcm4gQjwqLmRlYj4gZm91bmQgYXQgIgorInNwZWNpZmllZCBkaXJlY3RvcmllcyBhbmQgYWxsIG9mIGl0cyBzdWJkaXJlY3Rvcmllcy4gVGhpcyBjYW4gYmUgdXNlZCB3aXRoICIKKyJCPC1pPiwgQjwtQT4sIEI8LS1pbnN0YWxsPiwgQjwtLXVucGFjaz4gYW5kIEI8LS1hdmFpbD4gYWN0aW9ucy4iCittc2dzdHIgIiIKKyJCZWhhbmRsZSByZWt1cnNpdiBhbGxlIHJlZ3Vsw6RyZW4gRGF0ZWllbiwgZGllIGF1ZiBkYXMgTXVzdGVyIEI8Ki5kZWI+IHBhc3NlbiAiCisidW5kIGltIGFuZ2VnZWJlbiBWZXJ6ZWljaG5pcyBzb3dpZSBhbGxlbiBVbnRlcnZlcnplaWNobmlzIGxpZWdlbi4gRGllcyBrYW5uICIKKyJtaXQgZGVuIEFrdGlvbmVuIEI8LWk+LCBCPC1BPiwgQjwtLWluc3RhbGw+LCBCPC0tdW5wYWNrPiB1bmQgQjwtLWF2YWlsPiAiCisidmVyd2VuZGV0IHdlcmRlbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NDkxCisjLCBuby13cmFwCittc2dpZCAiQjwtRz4iCittc2dzdHIgIkI8LUc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDk1Cittc2dpZCAiIgorIkRvbid0IGluc3RhbGwgYSBwYWNrYWdlIGlmIGEgbmV3ZXIgdmVyc2lvbiBvZiB0aGUgc2FtZSBwYWNrYWdlIGlzIGFscmVhZHkgIgorImluc3RhbGxlZC4gVGhpcyBpcyBhbiBhbGlhcyBvZiBCPC0tcmVmdXNlLWRvd25ncmFkZT4uIgorbXNnc3RyICIiCisiSW5zdGFsbGllcmUgZWluIFBha2V0IG5pY2h0LCBmYWxscyBiZXJlaXRzIGVpbmUgbmV1ZXJlIFZlcnNpb24gZGVzIGdsZWljaGVuICIKKyJQYWtldGVzIGluc3RhbGxpZXJ0IGlzdC4gRGllcyBpc3QgZWluIEFsaWFzIGbDvHIgQjwtLXJlZnVzZS1kb3duZ3JhZGU+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo0OTUgZHBrZy1idWlsZHBhY2thZ2UuMToyMTcgZHBrZy1jaGVja2J1aWxkZGVwcy4xOjE5CisjOiBkcGtnLXF1ZXJ5LjE6MTE4IGRwa2ctc2hsaWJkZXBzLjE6MjExIGRwa2ctdHJpZ2dlci4xOjM5CisjLCBuby13cmFwCittc2dpZCAiQjwtLWFkbWluZGlyPT5JPGRpcj4iCittc2dzdHIgIkI8LS1hZG1pbmRpcj0+STxWZXJ6PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjUwMAorbXNnaWQgIiIKKyJDaGFuZ2UgZGVmYXVsdCBhZG1pbmlzdHJhdGl2ZSBkaXJlY3RvcnksIHdoaWNoIGNvbnRhaW5zIG1hbnkgZmlsZXMgdGhhdCBnaXZlICIKKyJpbmZvcm1hdGlvbiBhYm91dCBzdGF0dXMgb2YgaW5zdGFsbGVkIG9yIHVuaW5zdGFsbGVkIHBhY2thZ2VzLCBldGMuICAiCisiKERlZmF1bHRzIHRvIEk8L3Zhci9saWIvZHBrZz4pIgorbXNnc3RyICIiCisiw4RuZGVyZSBkYXMgdm9yZWluZ2VzdGVsbHRlIGFkbWluaXN0cmF0aXZlIFZlcnplaWNobmlzIChzdGFuZGFyZG3DpMOfaWcgSTwvdmFyLyIKKyJsaWIvZHBrZz4pLCBpbiBkZW0gdmllbGUgRGF0ZWllbiBsaWVnZW4sIGRpZSBJbmZvcm1hdGlvbmVuIMO8YmVyIGRlbiBTdGF0dXMgIgorInZvbiBpbnN0YWxsaWVydGVuIHVuZCBkZWluc3RhbGxpZXJ0ZW4gUGFrZXRlIHVzdy4gbGllZ2VuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo1MDAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0taW5zdGRpcj0+STxkaXI+IgorbXNnc3RyICJCPC0taW5zdGRpcj0+STxWZXJ6PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjUwNworbXNnaWQgIiIKKyJDaGFuZ2UgZGVmYXVsdCBpbnN0YWxsYXRpb24gZGlyZWN0b3J5IHdoaWNoIHJlZmVycyB0byB0aGUgZGlyZWN0b3J5IHdoZXJlICIKKyJwYWNrYWdlcyBhcmUgdG8gYmUgaW5zdGFsbGVkLiBCPGluc3RkaXI+IGlzIGFsc28gdGhlIGRpcmVjdG9yeSBwYXNzZWQgdG8gIgorIkI8Y2hyb290PigyKSBiZWZvcmUgcnVubmluZyBwYWNrYWdlJ3MgaW5zdGFsbGF0aW9uIHNjcmlwdHMsIHdoaWNoIG1lYW5zIHRoYXQgIgorInRoZSBzY3JpcHRzIHNlZSBCPGluc3RkaXI+IGFzIGEgcm9vdCBkaXJlY3RvcnkuICAoRGVmYXVsdHMgdG8gSTwvPikiCittc2dzdHIgIiIKKyLDhG5kZXJlIGRhcyB2b3JlaW5nZXN0ZWxsdGUgSW5zdGFsbGF0aW9uc3ZlcnplaWNobmlzLiBEaWVzZXMgVmVyemVpY2huaXMgZ2lidCAiCisiYW4sIHdvIFBha2V0ZSBpbnN0YWxsaWVydCB3ZXJkZW4uIEI8aW5zdGRpcj4gKHN0YW5kYXJkbcOkw59pZyBJPC8+KSBpc3QgYXVjaCAiCisiZGFzIFZlcnplaWNobmlzLCBkYXMgYW4gQjxjaHJvb3Q+KDIpIHZvciBkZW0gQXVmcnVmIGRlciBJbnN0YWxsYXRpb25zc2tyaXB0ZSAiCisiZGVzIFBha2V0ZXMgw7xiZXJnZWJlbiB3aXJkLCB3YXMgYmVkZXV0ZXQsIGRhc3MgZGllIFNrcmlwdGUgQjxpbnN0ZGlyPiBhbHMgIgorImVpbiBXdXJ6ZWx2ZXJ6ZWljaG5pcyBzZWhlbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTA3CisjLCBuby13cmFwCittc2dpZCAiQjwtLXJvb3Q9Pkk8ZGlyPiIKK21zZ3N0ciAiQjwtcm9vdD0+STxWZXJ6PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjUxMQorbXNnaWQgIiIKKyJDaGFuZ2luZyBCPHJvb3Q+IGNoYW5nZXMgQjxpbnN0ZGlyPiB0byBJPGRpcj4gYW5kIEI8YWRtaW5kaXI+IHRvIEk8ZGlyPkI8LyIKKyJ2YXIvbGliL2Rwa2c+LiIKK21zZ3N0ciAiIgorIkR1cmNoIMOEbmRlcm4gdm9uIEI8cm9vdD4gd2lyZCBCPGluc3RkaXI+IGF1ZiBJPFZlcno+IHVuZCBCPGFkbWluZGlyPiBhdWYgIgorIkk8VmVyej5CPC92YXIvbGliL2Rwa2c+IGdlw6RuZGVydC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTExCisjLCBuby13cmFwCittc2dpZCAiQjwtTz4sIEI8LS1zZWxlY3RlZC1vbmx5PiIKK21zZ3N0ciAiQjwtTz4sIEI8LS1zZWxlY3RlZC1vbmx5PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjUxNworbXNnaWQgIiIKKyJPbmx5IHByb2Nlc3MgdGhlIHBhY2thZ2VzIHRoYXQgYXJlIHNlbGVjdGVkIGZvciBpbnN0YWxsYXRpb24uIFRoZSBhY3R1YWwgIgorIm1hcmtpbmcgaXMgZG9uZSB3aXRoIEI8ZHNlbGVjdD4gb3IgYnkgQjxkcGtnPiwgd2hlbiBpdCBoYW5kbGVzIHBhY2thZ2VzLiBGb3IgIgorImV4YW1wbGUsIHdoZW4gYSBwYWNrYWdlIGlzIHJlbW92ZWQsIGl0IHdpbGwgYmUgbWFya2VkIHNlbGVjdGVkIGZvciAiCisiZGVpbnN0YWxsYXRpb24uIgorbXNnc3RyICIiCisiQmVhcmJlaXRlIG51ciBkaWUgUGFrZXRlLCBkaWUgenVyIEluc3RhbGxhdGlvbiBhdXNnZXfDpGhsdCBzaW5kLiBEaWUgIgorImVpZ2VudGxpY2hlIE1hcmtpZXJ1bmcgZXJmb2xndCBtaXQgQjxkc2VsZWN0PiBvZGVyIGR1cmNoIEI8ZHBrZz4sIHdlbm4gZXMgIgorIlBha2V0ZSBiZWFyYmVpdGV0LiBCZWlzcGllbHN3ZWlzZSB3aXJkIGVpbiBQYWtldCBiZWkgZGVyIEVudGZlcm51bmcgYWxzIMK7enVyICIKKyJEZWluc3RhbGxhdGlvbiBhdXNnZXfDpGhsdMKrIG1hcmtpZXJ0LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo1MTcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1FPiwgQjwtLXNraXAtc2FtZS12ZXJzaW9uPiIKK21zZ3N0ciAiQjwtRT4sIEI8LS1za2lwLXNhbWUtdmVyc2lvbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1MjEKK21zZ2lkICIiCisiRG9uJ3QgaW5zdGFsbCB0aGUgcGFja2FnZSBpZiB0aGUgc2FtZSB2ZXJzaW9uIG9mIHRoZSBwYWNrYWdlIGlzIGFscmVhZHkgIgorImluc3RhbGxlZC4iCittc2dzdHIgIiIKKyJJbnN0YWxsaWVyZSBkYXMgUGFrZXQgbmljaHQsIGZhbGxzIGRpZSBnbGVpY2hlIFZlcnNpb24gZGVzIFBha2V0cyBiZXJlaXRzICIKKyJpbnN0YWxsaWVydCBpc3QuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTIzCittc2dpZCAiQjwtLXByZS1pbnZva2U9Pkk8Y29tbWFuZD4iCittc2dzdHIgIkI8LS1wcmUtaW52b2tlPT5JPEJlZmVobD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1MjUKK21zZ2lkICJCPC0tcG9zdC1pbnZva2U9Pkk8Y29tbWFuZD4iCittc2dzdHIgIkI8LS1wb3N0LWludm9rZT0+STxCZWZlaGw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTM0Cittc2dpZCAiIgorIlNldCBhbiBpbnZva2UgaG9vayBJPGNvbW1hbmQ+IHRvIGJlIHJ1biB2aWEgYGBzaCAtYycnIGJlZm9yZSBvciBhZnRlciB0aGUgIgorImRwa2cgcnVuIGZvciB0aGUgSTx1bnBhY2s+LCBJPGNvbmZpZ3VyZT4sIEk8aW5zdGFsbD4sIEk8dHJpZ2dlcnMtb25seT4sICIKKyJJPHJlbW92ZT4gYW5kIEk8cHVyZ2U+IGRwa2cgYWN0aW9ucy4gVGhpcyBvcHRpb24gY2FuIGJlIHNwZWNpZmllZCBtdWx0aXBsZSAiCisidGltZXMuIFRoZSBvcmRlciB0aGUgb3B0aW9ucyBhcmUgc3BlY2lmaWVkIGlzIHByZXNlcnZlZCwgd2l0aCB0aGUgb25lcyBmcm9tICIKKyJ0aGUgY29uZmlndXJhdGlvbiBmaWxlcyB0YWtpbmcgcHJlY2VkZW5jZS4gIFRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZSAiCisiQjxEUEtHX0hPT0tfQUNUSU9OPiBpcyBzZXQgZm9yIHRoZSBob29rcyB0byB0aGUgY3VycmVudCBkcGtnIGFjdGlvbi4gTm90ZTogIgorImZyb250LWVuZHMgbWlnaHQgY2FsbCBkcGtnIHNldmVyYWwgdGltZXMgcGVyIGludm9jYXRpb24sIHdoaWNoIG1pZ2h0IHJ1biB0aGUgIgorImhvb2tzIG1vcmUgdGltZXMgdGhhbiBleHBlY3RlZC4iCittc2dzdHIgIiIKKyJTZXR6dCBlaW5lbiBBdWZydWYtSG9vayBJPEJlZmVobD4sIGRlciB2aWEgwrtzaCAtY8KrIHZvciBvZGVyIG5hY2ggZGVtIERwa2ctIgorIkF1ZnJ1ZiBkZXIgRHBrZy1Ba3Rpb25lbiBJPHVucGFjaz4sIEk8Y29uZmlndXJlPiwgSTxpbnN0YWxsPiwgSTx0cmlnZ2Vycy0iCisib25seT4sIEk8cmVtb3ZlPiB1bmQgSTxwdXJnZT4gYXVzZ2Vmw7xocnQgd2lyZC4gRGllc2UgT3B0aW9uIGthbm4gbWVocmZhY2ggIgorImFuZ2VnZWJlbiB3ZXJkZW4uIERpZSBSZWloZW5mb2xnZSBkZXIgT3B0aW9uZW4gd2lyZCBlcmhhbHRlbiwgd29iZWkgRWludHLDpGdlICIKKyJhdXMgZGVuIEtvbmZpZ3VyYXRpb25zZGF0ZWllbiBWb3JyYW5nIGVpbm5laG1lbi4gRGllIFVtZ2VidW5nc3ZhcmlhYmxlICIKKyJCPERQS0dfSE9PS19BQ1RJT04+IHdpcmQgZsO8ciBkaWUgSG9va3MgYXVmIGRpZSBha3R1ZWxsZSBEcGtnLUFrdGlvbiBnZXNldHp0LiAiCisiSGlud2VpczogT2JlcmZsw6RjaGVuIGvDtm5udGVuIERwa2cgbWVocmVyZSBNYWxlIHBybyBBdXNmw7xocnVuZyBhdWZydWZlbiwgIgorIndvZHVyY2ggZGllIEhvb2tzIMO2ZnRlciBhbHMgZXJ3YXJ0ZXQgYXVzZ2Vmw7xocnQgd2VyZGVuIGvDtm5udGVuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjUzNworbXNnaWQgIkI8LS1wYXRoLWV4Y2x1ZGU9Pkk8Z2xvYi1wYXR0ZXJuPiIKK21zZ3N0ciAiQjwtLXBhdGgtZXhjbHVkZT0+STxHbG9iLU11c3Rlcj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1MzkKK21zZ2lkICJCPC0tcGF0aC1pbmNsdWRlPT5JPGdsb2ItcGF0dGVybj4iCittc2dzdHIgIkI8LS1wYXRoLWluY2x1ZGU9Pkk8R2xvYi1NdXN0ZXI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTQyCittc2dpZCAiIgorIlNldCBJPGdsb2ItcGF0dGVybj4gYXMgYSBwYXRoIGZpbHRlciwgZWl0aGVyIGJ5IGV4Y2x1ZGluZyBvciByZS1pbmNsdWRpbmcgIgorInByZXZpb3VzbHkgZXhjbHVkZWQgcGF0aHMgbWF0Y2hpbmcgdGhlIHNwZWNpZmllZCBwYXR0ZXJucyBkdXJpbmcgaW5zdGFsbC4iCittc2dzdHIgIiIKKyJTZXR6dCBJPEdsb2ItTXVzdGVyPiBhbHMgUGZhZGZpbHRlciwgZW50d2VkZXIgZHVyY2ggQXVzc2NobHVzcyBvZGVyIGR1cmNoICIKKyJXaWVkZXJlaW5zY2hsdXNzIHZvcmhlciBhdXNnZXNjaGxvc3NlbmVyIFBmYWRlLCBkaWUgd8OkaHJlbmQgZGVyIEluc3RhbGxhdGlvbiAiCisiYXVmIGJlc3RpbW10ZSBNdXN0ZXIgcGFzc2VuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjU0NQorbXNnaWQgIiIKKyJJPFdhcm5pbmc6IHRha2UgaW50byBhY2NvdW50IHRoYXQgZGVwZW5kaW5nIG9uIHRoZSBleGNsdWRlZCBwYXRocyB5b3UgbWlnaHQgIgorImNvbXBsZXRlbHkgYnJlYWsgeW91ciBzeXN0ZW0sIHVzZSB3aXRoIGNhdXRpb24uPiIKK21zZ3N0ciAiIgorIkk8V2FybnVuZzogQmVhY2h0ZW4gU2llLCBkYXNzIGFiaMOkbmdpZyB2b24gZGVuIGF1c2dlc2NobG9zc2VuZW4gUGZhZGVuIFNpZSAiCisiSWhyIFN5c3RlbSBrb21wbGV0dCBiZXNjaMOkZGlnZW4ga8O2bm50ZW4uIFZlcndlbmRlbiBTaWUgZGllcyBkYWhlciB2b3JzaWNodGlnLiIKKyI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTU1Cittc2dpZCAiIgorIlRoZSBnbG9iIHBhdHRlcm5zIHVzZSB0aGUgc2FtZSB3aWxkY2FyZHMgdXNlZCBpbiB0aGUgc2hlbGwsIHdlcmUgJyonIG1hdGNoZXMgIgorImFueSBzZXF1ZW5jZSBvZiBjaGFyYWN0ZXJzLCBpbmNsdWRpbmcgdGhlIGVtcHR5IHN0cmluZyBhbmQgYWxzbyAnLycuIEZvciAiCisiZXhhbXBsZSwgSTwnL3Vzci8qL1JFQUQqJz4gbWF0Y2hlcyBJPCcvdXNyL3NoYXJlL2RvYy9wYWNrYWdlL1JFQURNRSc+LiAgQXMgIgorInVzdWFsLCAnPycgbWF0Y2hlcyBhbnkgc2luZ2xlIGNoYXJhY3RlciAoYWdhaW4sIGluY2x1ZGluZyAnLycpLiBBbmQgJ1snICIKKyJzdGFydHMgYSBjaGFyYWN0ZXIgY2xhc3MsIHdoaWNoIGNhbiBjb250YWluIGEgbGlzdCBvZiBjaGFyYWN0ZXJzLCByYW5nZXMgYW5kICIKKyJjb21wbGVtZW50YXRpb25zLiBTZWUgQjxnbG9iPig3KSBmb3IgZGV0YWlsZWQgaW5mb3JtYXRpb24gYWJvdXQgZ2xvYmJpbmcuICIKKyJOb3RlOiB0aGUgY3VycmVudCBpbXBsZW1lbnRhdGlvbiBtaWdodCByZS1pbmNsdWRlIG1vcmUgZGlyZWN0b3JpZXMgYW5kICIKKyJzeW1saW5rcyB0aGFuIG5lZWRlZCwgdG8gYmUgb24gdGhlIHNhZmUgc2lkZSBhbmQgYXZvaWQgcG9zc2libGUgdW5wYWNrICIKKyJmYWlsdXJlcywgZnV0dXJlIHdvcmsgbWlnaHQgZml4IHRoaXMuIgorbXNnc3RyICIiCisiRGFzIEdsb2ItTXVzdGVyIGthbm4gZGllIGdsZWljaGVuIFBsYXR6aGFsdGVyIHdpZSBpbiBkZXIgU2hlbGwgdmVyd2VuZGVuLCAiCisid29iZWkgwrsqwqsgYXVmIGVpbmUgYmVsaWViaWdlIEZvbGdlIHZvbiBaZWljaGVuLCBhdWNoIGRlbSBMZWVyemVpY2hlbiB1bmQgIgorIsK7L8KrLCBwYXNzdC4gQmVpc3BpZWxzd2Vpc2UgcGFzc3QgSTzCuy91c3IvKi9SRUFEKsKrPiBhdWYgSTzCuy91c3Ivc2hhcmUvZG9jLyIKKyJwYWNrYWdlL1JFQURNRcKrPi4gV2llIGdld8O2aG5saWNoIHBhc3N0IMK7P8KrIGF1ZiBlaW4gZWluemVsbmVzIFplaWNoZW4gKHdpZWRlciAiCisiYXVjaCBhdWYgwrsvwqspLiBVbmQgwrtbwqsgYmVnaW5udCBlaW5lIFplaWNoZW5rbGFzc2UsIGRpZSBlaW5lIExpc3RlIHZvbiAiCisiWmVpY2hlbiwgQmVyZWljaGUgdW5kIEtvbXBsZW1lbnRlIGVudGhhbHRlbiBrYW5uLiBMZXNlbiBTaWUgQjxnbG9iPig3KSBmw7xyICIKKyJkZXRhaWxsaWVydGUgSW5mb3JtYXRpb25lbiDDvGJlciBkYXMgR2xvYmJlbi4gSGlud2VpczogQWt0dWVsbGUgIgorIkltcGxlbWVudGllcnVuZ2VuIGvDtm5udGVuIG1laHIgVmVyemVpY2huaXNzZSB1bmQgc3ltYm9saXNjaGUgTGlua3MgYWxzICIKKyJiZW7DtnRpZ3Qgd2llZGVyIGVpbnNjaGxpZcOfZW4uIFVtIGF1ZiBkZXIgc2ljaGVyZW4gU2VpdGUgenUgc2VpbiB1bmQgaW4gZGVyICIKKyJadWt1bmZ0IG3DtmdsaWNoZSBFbnRwYWNrZmVobGVyIHp1IHZlcm1laWRlbiwga8O2bm50ZSBkaWVzIGR1cmNoIHp1a8O8bmZ0aWdlICIKKyJBcmJlaXRlbiBiZWhvYmVuIHdlcmRlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1NTgKK21zZ2lkICIiCisiVGhpcyBjYW4gYmUgdXNlZCB0byByZW1vdmUgYWxsIHBhdGhzIGV4Y2VwdCBzb21lIHBhcnRpY3VsYXIgb25lczsgYSB0eXBpY2FsICIKKyJjYXNlIGlzOiIKK21zZ3N0ciAiIgorIkRpZXMga2FubiBkYXp1IHZlcndhbmR0IHdlcmRlbiwgYWxsZSBQZmFkZSBhdcOfZXIgYmVzdGltbXRlbiB6dSBlbnRmZXJlbiwgZWluICIKKyJ0eXBpc2NoZXIgRmFsbCBsYXV0ZXQ6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTYyCisjLCBuby13cmFwCittc2dpZCAiIgorIkI8LS1wYXRoLWV4Y2x1ZGU9L3Vzci9zaGFyZS9kb2MvKj5cbiIKKyJCPC0tcGF0aC1pbmNsdWRlPS91c3Ivc2hhcmUvZG9jLyovY29weXJpZ2h0PlxuIgorbXNnc3RyICIiCisiQjwtLXBhdGgtZXhjbHVkZT0vdXNyL3NoYXJlL2RvYy8qPlxuIgorIkI8LS1wYXRoLWluY2x1ZGU9L3Vzci9zaGFyZS9kb2MvKi9jb3B5cmlnaHQ+XG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1NjUKK21zZ2lkICJ0byByZW1vdmUgYWxsIGRvY3VtZW50YXRpb24gZmlsZXMgZXhjZXB0IHRoZSBjb3B5cmlnaHQgZmlsZXMuIgorbXNnc3RyICIiCisiSGllcm1pdCB3ZXJkZW4gYWxsZSBEb2t1bWVudGF0aW9uc2RhdGVpZW4gKGF1w59lciBkZW4gQ29weXJpZ2h0LURhdGVpZW4pICIKKyJlbnRmZXJudC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1NjkKK21zZ2lkICIiCisiVGhlc2UgdHdvIG9wdGlvbnMgY2FuIGJlIHNwZWNpZmllZCBtdWx0aXBsZSB0aW1lcywgYW5kIGludGVybGVhdmVkIHdpdGggZWFjaCAiCisib3RoZXIuIEJvdGggYXJlIHByb2Nlc3NlZCBpbiB0aGUgZ2l2ZW4gb3JkZXIsIHdpdGggdGhlIGxhc3QgcnVsZSB0aGF0ICIKKyJtYXRjaGVzIGEgZmlsZSBuYW1lIG1ha2luZyB0aGUgZGVjaXNpb24uIgorbXNnc3RyICIiCisiRGllc2UgendlaSBPcHRpb25lbiBrw7ZubmVuIG1laHJmYWNoIGFuZ2VnZWJlbiB1bmQgbWl0ZWluYW5kZXIgdmVyc2NoYWNodGVsdCAiCisid2VyZGVuLiBCZWlkZSB3ZXJkZW4gaW4gZGVyIGFuZ2VnZWJlbmVuIFJlaWhlbmZvbGdlIGF1c2dld2VydGV0LCB3b2JlaSBkaWUgIgorImxldHp0ZSBSZWdlbCwgZGllIGF1ZiBlaW5lIERhdGVpIHBhc3N0LCBkaWUgRW50c2NoZWlkdW5nIGbDpGxsdC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTcwCisjLCBuby13cmFwCittc2dpZCAiQjwtLXN0YXR1cy1mZCA+STxuPiIKK21zZ3N0ciAiQjwtLXN0YXR1cy1mZCA+STxuPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjU3NgorbXNnaWQgIiIKKyJTZW5kIG1hY2hpbmUtcmVhZGFibGUgcGFja2FnZSBzdGF0dXMgYW5kIHByb2dyZXNzIGluZm9ybWF0aW9uIHRvIGZpbGUgIgorImRlc2NyaXB0b3IgSTxuPi4gVGhpcyBvcHRpb24gY2FuIGJlIHNwZWNpZmllZCBtdWx0aXBsZSB0aW1lcy4gVGhlICIKKyJpbmZvcm1hdGlvbiBpcyBnZW5lcmFsbHkgb25lIHJlY29yZCBwZXIgbGluZSwgaW4gb25lIG9mIHRoZSBmb2xsb3dpbmcgZm9ybXM6IgorbXNnc3RyICIiCisiU2NoaWNrZSBtYXNjaGluZW5sZXNiYXJlIFBha2V0c3RhdHVzLSB1bmQgRm9ydHNjaHJpdHRzaW5mb3JtYXRpb25lbiBhbiBkZW4gIgorIkRhdGVpZGVza3JpcHRvciBJPG4+LiBEaWVzZSBPcHRpb24ga2FubiBtZWhyZmFjaCBhbmdlZ2ViZW4gd2VyZGVuLiBEaWUgIgorIkluZm9ybWF0aW9uIGJlc3RlaHQgdHlwaXNjaGVyd2Vpc2UgYXVzIGVpbmVtIERhdGVuc2F0eiBwcm8gWmVpbGUgaW4gIgorImZvbGdlbmRlbSBGb3JtYXQ6IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjU3NworIywgbm8td3JhcAorbXNnaWQgIkI8c3RhdHVzOiA+STxwYWNrYWdlPkI8OiA+STxzdGF0dXM+IgorbXNnc3RyICJCPHN0YXR1czogPkk8UGFrZXQ+Qjw6ID5JPFN0YXR1cz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1ODAKK21zZ2lkICJQYWNrYWdlIHN0YXR1cyBjaGFuZ2VkOyBJPHN0YXR1cz4gaXMgYXMgaW4gdGhlIHN0YXR1cyBmaWxlLiIKK21zZ3N0ciAiUGFrZXRzdGF0dXMgZ2XDpG5kZXJ0OyBJPFN0YXR1cz4gZW50c3ByZWNoZW5kIGRlciBTdGF0dXNkYXRlaS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTgwCisjLCBuby13cmFwCittc2dpZCAiQjxzdGF0dXM6ID5JPHBhY2thZ2U+QjwgOiBlcnJvciA6ID5JPGV4dGVuZGVkLWVycm9yLW1lc3NhZ2U+IgorbXNnc3RyICJCPHN0YXR1czogPkk8UGFrZXQ+QjwgOiBlcnJvciA6ID5JPGF1c2bDvGhybGljaGUtRmVobGVybWVsZHVuZz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1ODQKK21zZ2lkICIiCisiQW4gZXJyb3Igb2NjdXJyZWQuIEFueSBwb3NzaWJsZSBuZXdsaW5lcyBpbiBJPGV4dGVuZGVkLWVycm9yLW1lc3NhZ2U+IHdpbGwgIgorImJlIGNvbnZlcnRlZCB0byBzcGFjZXMgYmVmb3JlIG91dHB1dC4iCittc2dzdHIgIiIKKyJFaW4gRmVobGVyIGlzdCBhdWZnZXRyZXRlbi4gQWxsZSBtw7ZnbGljaGVuIFplaWxlbnVtYnLDvGNoZSBpbiBJPGF1c2bDvGhybGljaGUtIgorIkZlaGxlcm1lbGR1bmc+IHdlcmRlbiB2b3IgZGVyIEF1c2dhYmUgaW4gTGVlcnplaWNoZW4gZ2V3YW5kZWx0LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo1ODQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHN0YXR1czogPkk8ZmlsZT5CPCA6IGNvbmZmaWxlLXByb21wdCA6ICc+STxyZWFsLW9sZD5CPCcgJz5JPHJlYWwtbmV3PkI8JyA+STx1c2VyZWRpdGVkPkI8ID5JPGRpc3RlZGl0ZWQ+IgorbXNnc3RyICJCPHN0YXR1czogPkk8RGF0ZWk+QjwgOiBjb25mZmlsZS1wcm9tcHQgOiDCuz5JPGVjaHQtYWx0PkI8wqsgwrs+STxlY2h0LW5ldT5CPMKrID5JPGJlbnV0emVyLWVkaXQ+QjwgPkk8ZGlzdC1lZGl0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjU4NworbXNnaWQgIlVzZXIgaXMgYmVpbmcgYXNrZWQgYSBjb25mZmlsZSBxdWVzdGlvbi4iCittc2dzdHIgIkRlbSBCZW51dHplciB3aXJkIGVpbmUgQ29uZmZpbGUtRnJhZ2UgZ2VzdGVsbHQuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjU4NworIywgbm8td3JhcAorbXNnaWQgIkI8cHJvY2Vzc2luZzogPkk8c3RhZ2U+Qjw6ID5JPHBhY2thZ2U+IgorbXNnc3RyICJCPHByb2Nlc3Npbmc6ID5JPFN0dWZlPkI8OiA+STxQYWtldD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1OTIKK21zZ2lkICIiCisiU2VudCBqdXN0IGJlZm9yZSBhIHByb2Nlc3Npbmcgc3RhZ2Ugc3RhcnRzLiBJPHN0YWdlPiBpcyBvbmUgb2YgQjx1cGdyYWRlPiwgIgorIkI8aW5zdGFsbD4gKGJvdGggc2VudCBiZWZvcmUgdW5wYWNraW5nKSwgQjxjb25maWd1cmU+LCBCPHRyaWdwcm9jPiwgIgorIkI8ZGlzYXBwZWFyPiwgQjxyZW1vdmU+LCBCPHB1cmdlPi4iCittc2dzdHIgIiIKKyJWZXJzYW5kdCBnZW5hdSBiZXZvciBlaW5lIFZlcmFyYmVpdHVuZ3NzdHVmZSBiZWdpbm50LiBJPFN0dWZlPiBpc3QgZWluZSBkZXIgIgorImZvbGdlbmRlbjogQjx1cGdyYWRlPiwgQjxpbnN0YWxsPiAoYmVpZGUgd2VyZGVuIHZvciBkZW0gRW50cGFja2VuIHZlcnNhbmR0KSwgIgorIkI8Y29uZmlndXJlPiwgQjx0cmlncHJvYz4sIEI8ZGlzYXBwZWFyPiwgQjxyZW1vdmU+LCBCPHB1cmdlPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTkzCisjLCBuby13cmFwCittc2dpZCAiQjwtLXN0YXR1cy1sb2dnZXI+PUk8Y29tbWFuZD4iCittc2dzdHIgIkI8LS1zdGF0dXMtbG9nZ2VyPj1JPEJlZmVobD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1OTgKK21zZ2lkICIiCisiU2VuZCBtYWNoaW5lLXJlYWRhYmxlIHBhY2thZ2Ugc3RhdHVzIGFuZCBwcm9ncmVzcyBpbmZvcm1hdGlvbiB0byB0aGUgc2hlbGwgIgorIkk8Y29tbWFuZD4ncyBzdGFuZGFyZCBpbnB1dC4gVGhpcyBvcHRpb24gY2FuIGJlIHNwZWNpZmllZCBtdWx0aXBsZSB0aW1lcy4gIgorIlRoZSBvdXRwdXQgZm9ybWF0IHVzZWQgaXMgdGhlIHNhbWUgYXMgaW4gQjwtLXN0YXR1cy1mZC4+IgorbXNnc3RyICIiCisiU2NoaWNrZSBtYXNjaGluZW5sZXNiYXJlIFBha2V0c3RhdHVzLSB1bmQgRm9ydHNjaHJpdHRzaW5mb3JtYXRpb25lbiBhbiBkaWUgIgorIlN0YW5kYXJkZWluZ2FiZSBkZXMgSTxCZWZlaGw+cyBkZXIgU2hlbGwuIERpZXNlIE9wdGlvbiBrYW5uIG1laHJmYWNoICIKKyJhbmdlZ2ViZW4gd2VyZGVuLiBEYXMgdmVyd2FuZHRlIEF1c2dhYmVmb3JtYXQgaXN0IGlkZW50aXNjaCB6dSBkZW0gaW4gQjwtLSIKKyJzdGF0dXMtZmQuPiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo1OTkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tbG9nPT5JPGZpbGVuYW1lPiIKK21zZ3N0ciAiQjwtLWxvZz0+STxEYXRlaW5hbWU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NjExCittc2dpZCAiIgorIkxvZyBzdGF0dXMgY2hhbmdlIHVwZGF0ZXMgYW5kIGFjdGlvbnMgdG8gSTxmaWxlbmFtZT4sIGluc3RlYWQgb2YgdGhlIGRlZmF1bHQgIgorIkk8L3Zhci9sb2cvZHBrZy5sb2c+LiBJZiB0aGlzIG9wdGlvbiBpcyBnaXZlbiBtdWx0aXBsZSB0aW1lcywgdGhlIGxhc3QgIgorImZpbGVuYW1lIGlzIHVzZWQuIExvZyBtZXNzYWdlcyBhcmUgb2YgdGhlIGZvcm0gYFlZWVktTU0tREQgSEg6TU06U1Mgc3RhdHVzICIKKyJJPHN0YXRlPiBJPHBrZz4gSTxpbnN0YWxsZWQtdmVyc2lvbj4nIGZvciBzdGF0dXMgY2hhbmdlIHVwZGF0ZXM7IGBZWVlZLU1NLUREICIKKyJISDpNTTpTUyBJPGFjdGlvbj4gSTxwa2c+IEk8aW5zdGFsbGVkLXZlcnNpb24+IEk8YXZhaWxhYmxlLXZlcnNpb24+JyBmb3IgIgorImFjdGlvbnMgd2hlcmUgSTxhY3Rpb24+IGlzIG9uZSBvZiBCPGluc3RhbGw+LCBCPHVwZ3JhZGU+LCBCPHJlbW92ZT4sICIKKyJCPHB1cmdlPjsgYW5kIGBZWVlZLU1NLUREIEhIOk1NOlNTIGNvbmZmaWxlIEk8ZmlsZW5hbWU+IEk8ZGVjaXNpb24+JyBmb3IgIgorImNvbmZmaWxlIGNoYW5nZXMgd2hlcmUgSTxkZWNpc2lvbj4gaXMgZWl0aGVyIEI8aW5zdGFsbD4gb3IgQjxrZWVwPi4iCittc2dzdHIgIiIKKyJQcm90b2tvbGxpZXJlIFN0YXR1c8OkbmRlcnVuZ3Nha3R1YWxpc2llcnVuZ2VuIHVuZCAtQWt0aW9uZW4gaW4gSTxEYXRlaW5hbWU+ICIKKyJhbnN0YXR0IGluIGRpZSBTdGFuZGFyZC1EYXRlaSBJPC92YXIvbG9nL2Rwa2cubG9nPi4gRmFsbHMgZGllc2UgT3B0aW9uICIKKyJtZWhyZmFjaCDDvGJlcmdlYmVuIHdpcmQsIHdpcmQgZGVyIGxldHp0ZSBEYXRlaW5hbWUgdmVyd2VuZGV0LiAiCisiUHJvdG9rb2xsbmFjaHJpY2h0ZW4gc2luZCB2b24gZGVyIEZvcm0gwrtKSkpKLU1NLVRUIEhIOk1NOlNTIHN0YXR1cyAiCisiSTxadXN0YW5kPiBJPFBrdD4gSTxpbnN0YWxsaWVydGUtVmVyc2lvbj7CqyBmw7xyICIKKyJTdGF0dXPDpG5kZXJ1bmdzYWt0dWFsaXNpZXJ1bmdlbjsgwrtKSkpKLU1NLVRUIEhIOk1NOlNTIEk8QWt0aW9uPiBJPFBrdD4gIgorIkk8aW5zdGFsbGllcnRlLVZlcnNpb24+IEk8dmVyZsO8Z2JhcmUtVmVyc2lvbj7CqyBmw7xyIEFrdGlvbmVuLCB3b2JlaSBJPEFrdGlvbj4gIgorImVudHdlZGVyIEI8aW5zdGFsbD4sIEI8dXBncmFkZT4sIEI8cmVtb3ZlPiBvZGVyIEI8cHVyZ2U+IGlzdDsgdW5kIMK7WVlZWS1NTS0iCisiREQgSEg6TU06U1MgY29uZmZpbGUgSTxEYXRlaW5hbWU+IEk8RW50c2NoZWlkdW5nPsKrIGbDvHIgQ29uZmZpbGUtw4RuZGVydW5nZW4gIgorImlzdCwgd29iZWkgSTxFbnRzY2hlaWR1bmc+IGVudHdlZGVyIEI8aW5zdGFsbD4gb2RlciBCPGtlZXA+IGlzdC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NjExCisjLCBuby13cmFwCittc2dpZCAiQjwtLW5vLWRlYnNpZz4iCittc2dzdHIgIkI8LS1uby1kZWJzaWc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NjE0Cittc2dpZCAiRG8gbm90IHRyeSB0byB2ZXJpZnkgcGFja2FnZSBzaWduYXR1cmVzLiIKK21zZ3N0ciAiVmVyc3VjaGUgbmljaHQsIFBha2V0c2lnbmF0dXJlbiB6dSDDvGJlcnByw7xmZW4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjYxNAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1uby10cmlnZ2Vycz4iCittc2dzdHIgIkI8LS1uby10cmlnZ2Vycz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2MjMKK21zZ2lkICIiCisiRG8gbm90IHJ1biBhbnkgdHJpZ2dlcnMgaW4gdGhpcyBydW4gKGFjdGl2YXRpb25zIHdpbGwgc3RpbGwgYmUgcmVjb3JkZWQpLiAgIgorIklmIHVzZWQgd2l0aCBCPC0tY29uZmlndXJlPiBJPHBhY2thZ2U+IG9yIEI8LS10cmlnZ2Vycy1vbmx5PiBJPHBhY2thZ2U+IHRoZW4gIgorInRoZSBuYW1lZCBwYWNrYWdlIHBvc3RpbnN0IHdpbGwgc3RpbGwgYmUgcnVuIGV2ZW4gaWYgb25seSBhIHRyaWdnZXJzIHJ1biBpcyAiCisibmVlZGVkLiBVc2Ugb2YgdGhpcyBvcHRpb24gbWF5IGxlYXZlIHBhY2thZ2VzIGluIHRoZSBpbXByb3BlciBCPHRyaWdnZXJzLSIKKyJhd2FpdGVkPiBhbmQgQjx0cmlnZ2Vycy1wZW5kaW5nPiBzdGF0ZXMuIFRoaXMgY2FuIGJlIGZpeGVkIGxhdGVyIGJ5IHJ1bm5pbmc6ICIKKyJCPGRwa2cgLS1jb25maWd1cmUgLS1wZW5kaW5nPi4iCittc2dzdHIgIiIKKyJGw7xocmUga2VpbmUgVHJpZ2dlciBpbiBkaWVzZW0gRHVyY2hsYXVmIGF1cyAoQWt0aXZpZXJ1bmdlbiB3ZXJkZW4gZGVubm9jaCAiCisiYXVmZ2V6ZWljaG5ldCkuIEZhbGxzIGRpZXMgbWl0IEI8LS1jb25maWd1cmU+IEk8UGFrZXQ+IG9kZXIgQjwtLXRyaWdnZXJzLSIKKyJvbmx5PiBJPFBha2V0PiB2ZXJ3YW5kdCB3aXJkLCB3aXJkIGRhcyBQb3N0aW5zdCBkZXMgYmVuYW5udGVuIFBha2V0cyBkZW5ub2NoICIKKyJhdXNnZWbDvGhydCwgc2VsYnN0IGZhbGxzIG51ciBlaW4gVHJpZ2dlci1MYXVmIG5vdHdlbmRpZyBpc3QuIERpZSBWZXJ3ZW5kdW5nICIKKyJkaWVzZXIgT3B0aW9uIGthbm4gUGFrZXRlIGluIGRpZSB1bnp1bMOkc3NpZ2VuIFN0YXRpIEI8dHJpZ2dlcnMtYXdhaXRlZD4gdW5kICIKKyJCPHRyaWdnZXJzLXBlbmRpbmc+IGJyaW5nZW4uIER1cmNoIGRpZSBBdXNmw7xocnVuZyB2b24gwrtCPGRwa2cgLS1jb25maWd1cmUgLS0iCisicGVuZGluZz7CqyBrYW5uIGRpZXMgc3DDpHRlciBiZWhvYmVuIHdlcmRlbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NjIzCisjLCBuby13cmFwCittc2dpZCAiQjwtLXRyaWdnZXJzPiIKK21zZ3N0ciAiQjwtLXRyaWdnZXJzPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjYyNgorbXNnaWQgIkNhbmNlbHMgYSBwcmV2aW91cyBCPC0tbm8tdHJpZ2dlcnM+LiIKK21zZ3N0ciAiQW5udWxsaWVydCBlaW4gdm9yaGVyaWdlcyBCPC0tbm8tdHJpZ2dlcnM+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjYyOCBkcGtnLmNmZy41OjE2CisjLCBuby13cmFwCittc2dpZCAiSTwvZXRjL2Rwa2cvZHBrZy5jZmc+IgorbXNnc3RyICJJPC9ldGMvZHBrZy9kcGtnLmNmZz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2MzEKK21zZ2lkICJDb25maWd1cmF0aW9uIGZpbGUgd2l0aCBkZWZhdWx0IG9wdGlvbnMuIgorbXNnc3RyICJLb25maWd1cmF0aW9uc2RhdGVpIG1pdCBTdGFuZGFyZGVpbnN0ZWxsdW5nZW4gZGVyIE9wdGlvbmVuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2MzEKKyMsIG5vLXdyYXAKK21zZ2lkICJJPC92YXIvbG9nL2Rwa2cubG9nPiIKK21zZ3N0ciAiSTwvdmFyL2xvZy9kcGtnLmxvZz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2MzUKK21zZ2lkICJEZWZhdWx0IGxvZyBmaWxlIChzZWUgSTwvZXRjL2Rwa2cvZHBrZy5jZmc+KDUpIGFuZCBvcHRpb24gQjwtLWxvZz4pLiIKK21zZ3N0ciAiIgorIlN0YW5kYXJkLVByb3Rva29sbGRhdGVpIChsZXNlbiBTaWUgSTwvZXRjL2Rwa2cvZHBrZy5jZmc+KDUpIHVuZCBkaWUgT3B0aW9uICIKKyJCPC0tbG9nPikuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NjM4Cittc2dpZCAiIgorIlRoZSBvdGhlciBmaWxlcyBsaXN0ZWQgYmVsb3cgYXJlIGluIHRoZWlyIGRlZmF1bHQgZGlyZWN0b3JpZXMsIHNlZSBvcHRpb24gIgorIkI8LS1hZG1pbmRpcj4gdG8gc2VlIGhvdyB0byBjaGFuZ2UgbG9jYXRpb25zIG9mIHRoZXNlIGZpbGVzLiIKK21zZ3N0ciAiIgorIkRpZSBhbmRlcmVuIHVudGVuIGF1ZmdlZsO8aHJ0ZW4gRGF0ZWllbiBzaW5kIGluIGlocmVtIFN0YW5kYXJkdmVyemVpY2huaXMsICIKKyJsZXNlbiBTaWUgZGVuIFRleHQgenVyIE9wdGlvbiBCPC0tYWRtaW5kaXI+IHVtIHp1IHNlaGVuLCB3aWUgc2llIGRlbiBPcnQgIgorImRpZXNlciBEYXRlaWVuIMOkbmRlcm4ga8O2bm5lbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NjM4CisjLCBuby13cmFwCittc2dpZCAiSTwvdmFyL2xpYi9kcGtnL2F2YWlsYWJsZT4iCittc2dzdHIgIkk8L3Zhci9saWIvZHBrZy9hdmFpbGFibGU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NjQxCittc2dpZCAiTGlzdCBvZiBhdmFpbGFibGUgcGFja2FnZXMuIgorbXNnc3RyICJMaXN0ZSBkZXIgdmVyZsO8Z2JhcmVuIFBha2V0ZS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NjQxCisjLCBuby13cmFwCittc2dpZCAiSTwvdmFyL2xpYi9kcGtnL3N0YXR1cz4iCittc2dzdHIgIkk8L3Zhci9saWIvZHBrZy9zdGF0dXM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NjQ3Cittc2dpZCAiIgorIlN0YXR1c2VzIG9mIGF2YWlsYWJsZSBwYWNrYWdlcy4gVGhpcyBmaWxlIGNvbnRhaW5zIGluZm9ybWF0aW9uIGFib3V0IHdoZXRoZXIgIgorImEgcGFja2FnZSBpcyBtYXJrZWQgZm9yIHJlbW92aW5nIG9yIG5vdCwgd2hldGhlciBpdCBpcyBpbnN0YWxsZWQgb3Igbm90LCAiCisiZXRjLiBTZWUgc2VjdGlvbiBCPElORk9STUFUSU9OIEFCT1VUIFBBQ0tBR0VTPiBmb3IgbW9yZSBpbmZvLiIKK21zZ3N0ciAiIgorIlN0YXR1c3NlIGRlciB2ZXJmw7xnYmFyZW4gUGFrZXRlLiBEaWVzZSBEYXRlaSBlbnRow6RsdCBJbmZvcm1hdGlvbmVuIGRhcsO8YmVyLCAiCisib2IgZWluIFBha2V0IHp1ciBFbnRmZXJudW5nIG1hcmtpZXJ0IGlzdCBvZGVyIG5pY2h0LCBvYiBlcyBpbnN0YWxsaWVydCBpc3QgIgorIm9kZXIgbmljaHQgdXN3LiBMZXNlbiBTaWUgZGVuIEFic2Nobml0dCBCPElORk9STUFUSU9ORU4gw5xCRVIgUEFLRVRFPiBmw7xyICIKKyJ3ZWl0ZXJlIEluZm9ybWF0aW9uZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NjUwCittc2dpZCAiIgorIlRoZSBzdGF0dXMgZmlsZSBpcyBiYWNrZWQgdXAgZGFpbHkgaW4gSTwvdmFyL2JhY2t1cHM+LiBJdCBjYW4gYmUgdXNlZnVsIGlmICIKKyJpdCdzIGxvc3Qgb3IgY29ycnVwdGVkIGR1ZSB0byBmaWxlc3lzdGVtcyB0cm91Ymxlcy4iCittc2dzdHIgIiIKKyJEaWUgU3RhdHVzZGF0ZWkgd2lyZCB0w6RnbGljaCBuYWNoIEk8L3Zhci9iYWNrdXBzPiBnZXNpY2hlcnQuIERpZXMga2FubiAiCisiaGlsZnJlaWNoIHNlaW4sIGZhbGxzIHNpZSBhdWZncnVuZCB2b24gUHJvYmxlbWVuIG1pdCBkZW0gRGF0ZWlzeXN0ZW0gIgorInZlcmxvcmVuIGdlZ2FuZ2VuIG9kZXIgYmVzY2jDpGRpZ3Qgd29yZGVuIGlzdC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2NTMKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBmaWxlcyBhcmUgY29tcG9uZW50cyBvZiBhIGJpbmFyeSBwYWNrYWdlLiBTZWUgQjxkZWI+KDUpICBmb3IgIgorIm1vcmUgaW5mb3JtYXRpb24gYWJvdXQgdGhlbToiCittc2dzdHIgIiIKKyJEaWUgZm9sZ2VuZGVuIERhdGVpZW4gc2luZCBLb21wb25lbnRlbiB2b24gQmluw6RycGFrZXRlbi4gTGVzZW4gU2llIEI8ZGViPig1KSAiCisiZsO8ciB3ZWl0ZXJlIEluZm9ybWF0aW9uZW4gw7xiZXIgc2llOiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2NTMKKyMsIG5vLXdyYXAKK21zZ2lkICJJPGNvbnRyb2w+IgorbXNnc3RyICJJPGNvbnRyb2w+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjY1NQorIywgbm8td3JhcAorbXNnaWQgIkk8Y29uZmZpbGVzPiIKK21zZ3N0ciAiSTxjb25mZmlsZXM+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjY1NworIywgbm8td3JhcAorbXNnaWQgIkk8cHJlaW5zdD4iCittc2dzdHIgIkk8cHJlaW5zdD4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NjU5CisjLCBuby13cmFwCittc2dpZCAiSTxwb3N0aW5zdD4iCittc2dzdHIgIkk8cG9zdGluc3Q+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjY2MQorIywgbm8td3JhcAorbXNnaWQgIkk8cHJlcm0+IgorbXNnc3RyICJJPHByZXJtPiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2NjMKKyMsIG5vLXdyYXAKK21zZ2lkICJJPHBvc3RybT4iCittc2dzdHIgIkk8cG9zdHJtPiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2cuMTo2NjYgZHBrZy1idWlsZGZsYWdzLjE6MTI4IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjMwIGRwa2ctZGViLjE6MjMyCisjOiBkcGtnLWRpdmVydC44OjExMiBkcGtnLXF1ZXJ5LjE6MjA0IGRwa2ctc3RhdG92ZXJyaWRlLjg6NjggZHBrZy10cmlnZ2VyLjE6NjAKKyM6IGRwa2ctdmVuZG9yLjE6NDIgZHNlbGVjdC4xOjQyMyB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzU0CisjLCBuby13cmFwCittc2dpZCAiRU5WSVJPTk1FTlQiCittc2dzdHIgIlVNR0VCVU5HIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjY2NyBkc2VsZWN0LjE6NDI0CisjLCBuby13cmFwCittc2dpZCAiQjxIT01FPiIKK21zZ3N0ciAiQjxIT01FPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjY3MQorbXNnaWQgIiIKKyJJZiBzZXQsIEI8ZHBrZz4gd2lsbCB1c2UgaXQgYXMgdGhlIGRpcmVjdG9yeSBmcm9tIHdoaWNoIHRvIHJlYWQgdGhlIHVzZXIgIgorInNwZWNpZmljIGNvbmZpZ3VyYXRpb24gZmlsZS4iCittc2dzdHIgIiIKKyJGYWxscyBnZXNldHp0IHdpcmQgQjxkcGtnPiBlcyBhbHMgZGFzIFZlcnplaWNobmlzIHZlcndlbmRlbiwgYXVzIGRlbSBkaWUgIgorImJlbnV0emVyc3BlemlmaXNjaGUgS29uZmlndXJhdGlvbnNkYXRlaSBnZWxlc2VuIHdpcmQuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjY3MSBkcGtnLWRlYi4xOjIzMworIywgbm8td3JhcAorbXNnaWQgIkI8VE1QRElSPiIKK21zZ3N0ciAiQjxUTVBESVI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6Njc1Cittc2dpZCAiIgorIklmIHNldCwgQjxkcGtnPiB3aWxsIHVzZSBpdCBhcyB0aGUgZGlyZWN0b3J5IGluIHdoaWNoIHRvIGNyZWF0ZSB0ZW1wb3JhcnkgIgorImZpbGVzIGFuZCBkaXJlY3Rvcmllcy4iCittc2dzdHIgIiIKKyJGYWxscyBnZXNldHp0IHdpcmQgQjxkcGtnPiBlcyBhbHMgZGFzIFZlcnplaWNobmlzIHZlcndlbmRlbiwgaW4gZGVtICIKKyJ0ZW1wb3LDpHJlIERhdGVpZW4gdW5kIFZlcnplaWNobmlzc2UgZXJzdGVsbHQgd2VyZGVuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2NzUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPFBBR0VSPiIKK21zZ3N0ciAiQjxQQUdFUj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2NzgKK21zZ2lkICJUaGUgcHJvZ3JhbSBCPGRwa2c+IHdpbGwgZXhlY3V0ZSB3aGVuIGRpc3BsYXlpbmcgdGhlIGNvbmZmaWxlcy4iCittc2dzdHIgIiIKKyJEYXMgUHJvZ3JhbW0sIGRhcyBCPGRwa2c+IGF1c2bDvGhyZW4gd2lyZCwgd2VubiBlcyBkaWUgQ29uZmZpbGVzIGFuemVpZ3QuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjY3OAorIywgbm8td3JhcAorbXNnaWQgIkI8U0hFTEw+IgorbXNnc3RyICJCPFNIRUxMPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjY4MQorbXNnaWQgIlRoZSBwcm9ncmFtIEI8ZHBrZz4gd2lsbCBleGVjdXRlIHdoZW4gc3RhcnRpbmcgYSBuZXcgc2hlbGwuIgorbXNnc3RyICIiCisiRGFzIFByb2dyYW1tLCBkYXMgQjxkcGtnPiBhdXNmw7xocmVuIHdpcmQsIHdlbm4gZXMgZWluZSBuZXVlIFNoZWxsIHN0YXJ0ZXQuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjY4MSBkcGtnLXF1ZXJ5LjE6MjA5CisjLCBuby13cmFwCittc2dpZCAiQjxDT0xVTU5TPiIKK21zZ3N0ciAiQjxDT0xVTU5TPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjY4NQorbXNnaWQgIiIKKyJTZXRzIHRoZSBudW1iZXIgb2YgY29sdW1ucyBCPGRwa2c+IHNob3VsZCB1c2Ugd2hlbiBkaXNwbGF5aW5nIGZvcm1hdHRlZCAiCisidGV4dC4gQ3VycmVudGx5IG9ubHkgdXNlZCBieSAtbC4iCittc2dzdHIgIiIKKyJTZXR6dCBkaWUgQW56YWhsIHZvbiBTcGFsdGVuIGRpZSBCPGRwa2c+IHZlcndlbmRlbiBzb2xsLCB3ZW5uIGVzICIKKyJmb3JtYXRpZXJ0ZW4gVGV4dCBhbnplaWd0LiBEZXJ6ZWl0IG51ciB2b24gLWwgdmVyd2VuZGV0LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2ODUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPERQS0dfU0hFTExfUkVBU09OPiIKK21zZ3N0ciAiQjxEUEtHX1NIRUxMX1JFQVNPTj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2ODkKK21zZ2lkICIiCisiRGVmaW5lZCBieSBCPGRwa2c+IG9uIHRoZSBzaGVsbCBzcGF3bmVkIG9uIHRoZSBjb25mZmlsZSBwcm9tcHQgdG8gZXhhbWluZSAiCisidGhlIHNpdHVhdGlvbi4gQ3VycmVudCB2YWxpZCB2YWx1ZTogQjxjb25mZmlsZS1wcm9tcHQ+LiIKK21zZ3N0ciAiIgorIldpcmQgdm9uIEI8ZHBrZz4gYXVmIGRlciBTaGVsbCwgZGllIHZvbiBkZXIgQ29uZmZpbGUtRWluZ2FiZWF1ZmZvcmRlcnVuZyAiCisiZ2VzdGFydGV0IHdpcmQsIHVtIGRpZSBTaXR1YXRpb24genUgYW5hbHlzaWVyZW4sIGdlc2V0enQuIERlcnplaXQgZ8O8bHRpZ2VyICIKKyJXZXJ0OiBCPGNvbmZmaWxlLXByb21wdD4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjY4OQorIywgbm8td3JhcAorbXNnaWQgIkI8RFBLR19DT05GRklMRV9PTEQ+IgorbXNnc3RyICJCPERQS0dfQ09ORkZJTEVfT0xEPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjY5MworbXNnaWQgIiIKKyJEZWZpbmVkIGJ5IEI8ZHBrZz4gb24gdGhlIHNoZWxsIHNwYXduZWQgb24gdGhlIGNvbmZmaWxlIHByb21wdCB0byBleGFtaW5lICIKKyJ0aGUgc2l0dWF0aW9uLiBDb250YWlucyB0aGUgcGF0aCB0byB0aGUgb2xkIGNvbmZmaWxlLiIKK21zZ3N0ciAiIgorIldpcmQgdm9uIEI8ZHBrZz4gYXVmIGRlciBTaGVsbCwgZGllIHZvbiBkZXIgQ29uZmZpbGUtRWluZ2FiZWF1ZmZvcmRlcnVuZyAiCisiZ2VzdGFydGV0IHdpcmQsIHVtIGRpZSBTaXR1YXRpb24genUgYW5hbHlzaWVyZW4sIGdlc2V0enQuIEVudGjDpGx0IGRlbiBQZmFkICIKKyJ6dSBkZXIgYWx0ZW4gQ29uZmZpbGUuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjY5MworIywgbm8td3JhcAorbXNnaWQgIkI8RFBLR19DT05GRklMRV9ORVc+IgorbXNnc3RyICJCPERQS0dfQ09ORkZJTEVfTkVXPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjY5NworbXNnaWQgIiIKKyJEZWZpbmVkIGJ5IEI8ZHBrZz4gb24gdGhlIHNoZWxsIHNwYXduZWQgb24gdGhlIGNvbmZmaWxlIHByb21wdCB0byBleGFtaW5lICIKKyJ0aGUgc2l0dWF0aW9uLiBDb250YWlucyB0aGUgcGF0aCB0byB0aGUgbmV3IGNvbmZmaWxlLiIKK21zZ3N0ciAiIgorIldpcmQgdm9uIEI8ZHBrZz4gYXVmIGRlciBTaGVsbCwgZGllIHZvbiBkZXIgQ29uZmZpbGUtRWluZ2FiZWF1ZmZvcmRlcnVuZyAiCisiZ2VzdGFydGV0IHdpcmQsIHVtIGRpZSBTaXR1YXRpb24genUgYW5hbHlzaWVyZW4sIGdlc2V0enQuIEVudGjDpGx0IGRlbiBQZmFkICIKKyJ6dSBkZXIgbmV1ZW4gQ29uZmZpbGUuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjY5NworIywgbm8td3JhcAorbXNnaWQgIkI8RFBLR19SVU5OSU5HX1ZFUlNJT04+IgorbXNnc3RyICJCPERQS0dfUlVOTklOR19WRVJTSU9OPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjcwMQorbXNnaWQgIiIKKyJEZWZpbmVkIGJ5IEI8ZHBrZz4gb24gdGhlIG1haW50YWluZXIgc2NyaXB0IGVudmlyb25tZW50IHRvIHRoZSB2ZXJzaW9uIG9mICIKKyJ0aGUgY3VycmVudGx5IHJ1bm5pbmcgQjxkcGtnPiBpbnN0YW5jZS4iCittc2dzdHIgIiIKKyJXaXJkIHZvbiBCPGRwa2c+IGbDvHIgZGllIEJldHJldWVyLVNrcmlwdC1VbWdlYnVuZyBhdWYgZGllIFZlcnNpb24gZGVyICIKKyJha3R1ZWxsIGxhdWZlbmRlbiBJbnN0YW56IHZvbiBCPGRwa2c+IGdlc2V0enQuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjcwMSBkcGtnLWRpdmVydC44OjExNworIywgbm8td3JhcAorbXNnaWQgIkI8RFBLR19NQUlOVFNDUklQVF9QQUNLQUdFPiIKK21zZ3N0ciAiQjxEUEtHX01BSU5UU0NSSVBUX1BBQ0tBR0U+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzA1Cittc2dpZCAiIgorIkRlZmluZWQgYnkgQjxkcGtnPiBvbiB0aGUgbWFpbnRhaW5lciBzY3JpcHQgZW52aXJvbm1lbnQgdG8gdGhlIHBhY2thZ2UgbmFtZSAiCisiYmVpbmcgaGFuZGxlZC4iCittc2dzdHIgIiIKKyJXaXJkIHZvbiBCPGRwa2c+IGbDvHIgZGllIEJldHJldWVyLVNrcmlwdC1VbWdlYnVuZyBhdWYgZGVuIGluIEFyYmVpdCAiCisiYmVmaW5kbGljaGVuIFBha2V0bmFtZW4gZ2VzZXR6dC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NzA1CisjLCBuby13cmFwCittc2dpZCAiQjxEUEtHX01BSU5UU0NSSVBUX0FSQ0g+IgorbXNnc3RyICJCPERQS0dfTUFJTlRTQ1JJUFRfQVJDSD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3MDkKK21zZ2lkICIiCisiRGVmaW5lZCBieSBCPGRwa2c+IG9uIHRoZSBtYWludGFpbmVyIHNjcmlwdCBlbnZpcm9ubWVudCB0byB0aGUgYXJjaGl0ZWN0dXJlICIKKyJ0aGUgcGFja2FnZSBnb3QgYnVpbHQgZm9yLiIKK21zZ3N0ciAiIgorIldpcmQgdm9uIEI8ZHBrZz4gZsO8ciBkaWUgQmV0cmV1ZXItU2tyaXB0LVVtZ2VidW5nIGF1ZiBkaWUgQXJjaGl0ZWt0dXIgIgorImdlc2V0enQsIGbDvHIgZGllIGRhcyBQYWtldCBnZWJhdXQgd3VyZGUuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjcwOQorIywgbm8td3JhcAorbXNnaWQgIkI8RFBLR19NQUlOVFNDUklQVF9OQU1FPiIKK21zZ3N0ciAiQjxEUEtHX01BSU5UU0NSSVBUX05BTUU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzEzCittc2dpZCAiIgorIkRlZmluZWQgYnkgQjxkcGtnPiBvbiB0aGUgbWFpbnRhaW5lciBzY3JpcHQgZW52aXJvbm1lbnQgdG8gdGhlIG5hbWUgb2YgdGhlICIKKyJzY3JpcHQgcnVubmluZyAocHJlaW5zdCwgcG9zdGluc3QsIHByZXJtLCBwb3N0cm0pLiIKK21zZ3N0ciAiIgorIldpcmQgdm9uIEI8ZHBrZz4gZsO8ciBkaWUgQmV0cmV1ZXItU2tyaXB0LVVtZ2VidW5nIGF1ZiBkZW4gTmFtZW4gZGVzICIKKyJsYXVmZW5kZW4gU2tyaXB0cyAocHJlaW5zdCwgcG9zdGluc3QsIHByZXJtLCBwb3N0cm0pIGdlc2V0enQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzE2Cittc2dpZCAiVG8gbGlzdCBwYWNrYWdlcyByZWxhdGVkIHRvIHRoZSBlZGl0b3IgQjx2aT4oMSk6IgorbXNnc3RyICJVbSBQYWtldGUgbWl0IEJlenVnIHp1bSBCPHZpPigxKS1FZGl0b3IgYXVmenVsaXN0ZW46IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzE4CisjLCBuby13cmFwCittc2dpZCAiICAgICBCPGRwa2cgLWwgXFwoYXEqdmkqXFwoYXE+XG4iCittc2dzdHIgIiAgICAgQjxkcGtnIC1sIFxcKGFxKnZpKlxcKGFxPlxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzIxCittc2dpZCAiVG8gc2VlIHRoZSBlbnRyaWVzIGluIEk8L3Zhci9saWIvZHBrZy9hdmFpbGFibGU+IG9mIHR3byBwYWNrYWdlczoiCittc2dzdHIgIiIKKyJVbSBkaWUgRWludHLDpGdlIHZvbiB6d2VpIFBha2V0ZW4gaW4gSTwvdmFyL2xpYi9kcGtnL2F2YWlsYWJsZT4genUgc2VoZW46IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzIzCisjLCBuby13cmFwCittc2dpZCAiICAgICBCPGRwa2cgLS1wcmludC1hdmFpbCBlbHZpcyB2aW0gfCBsZXNzPlxuIgorbXNnc3RyICIgICAgIEI8ZHBrZyAtLXByaW50LWF2YWlsIGVsdmlzIHZpbSB8IGxlc3M+XG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3MjYKK21zZ2lkICJUbyBzZWFyY2ggdGhlIGxpc3Rpbmcgb2YgcGFja2FnZXMgeW91cnNlbGY6IgorbXNnc3RyICJXZW5uIFNpZSBkaWUgTGlzdGUgZGVyIFBha2V0ZSBzZWxic3QgZHVyY2hzdWNoZW4gd29sbGVuOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjcyOAorIywgbm8td3JhcAorbXNnaWQgIiAgICAgQjxsZXNzIC92YXIvbGliL2Rwa2cvYXZhaWxhYmxlPlxuIgorbXNnc3RyICIgICAgIEI8bGVzcyAvdmFyL2xpYi9kcGtnL2F2YWlsYWJsZT5cbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjczMQorbXNnaWQgIlRvIHJlbW92ZSBhbiBpbnN0YWxsZWQgZWx2aXMgcGFja2FnZToiCittc2dzdHIgIlVtIGVpbiBpbnN0YWxsaWVydGVzIEVsdmlzLVBha2V0IHp1IGVudGZlcm5lbjoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3MzMKKyMsIG5vLXdyYXAKK21zZ2lkICIgICAgIEI8ZHBrZyAtciBlbHZpcz5cbiIKK21zZ3N0ciAiICAgICBCPGRwa2cgLXIgZWx2aXM+XG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3MzgKK21zZ2lkICIiCisiVG8gaW5zdGFsbCBhIHBhY2thZ2UsIHlvdSBmaXJzdCBuZWVkIHRvIGZpbmQgaXQgaW4gYW4gYXJjaGl2ZSBvciBDRFJPTS4gVGhlICIKKyJcImF2YWlsYWJsZVwiIGZpbGUgc2hvd3MgdGhhdCB0aGUgdmltIHBhY2thZ2UgaXMgaW4gc2VjdGlvbiBcImVkaXRvcnNcIjoiCittc2dzdHIgIiIKKyJVbSBlaW4gUGFrZXQgenUgaW5zdGFsbGllcmVuLCBtw7xzc2VuIFNpZSBlcyBlcnN0IGluIGVpbmVtIEFyY2hpdiBvZGVyIGF1ZiAiCisiZWluZXIgQ0QtUk9NIGZpbmRlbi4gRGllIMK7YXZhaWxhYmxlwqstRGF0ZWkgemVpZ3QsIGRhc3MgZGFzIHZpbS1QYWtldCBpbSAiCisiQmVyZWljaCDCu2VkaXRvcnPCqyBpc3Q6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzQxCisjLCBuby13cmFwCittc2dpZCAiIgorIiAgICAgQjxjZCAvbWVkaWEvY2Ryb20vcG9vbC9tYWluL3YvdmltPlxuIgorIiAgICAgQjxkcGtnIC1pIHZpbV80LjUtMy5kZWI+XG4iCittc2dzdHIgIiIKKyIgICAgIEI8Y2QgL21lZGlhL2Nkcm9tL3Bvb2wvbWFpbi92L3ZpbT5cbiIKKyIgICAgIEI8ZHBrZyAtaSB2aW1fNC41LTMuZGViPlxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzQ0Cittc2dpZCAiVG8gbWFrZSBhIGxvY2FsIGNvcHkgb2YgdGhlIHBhY2thZ2Ugc2VsZWN0aW9uIHN0YXRlczoiCittc2dzdHIgIlVtIGVpbmUgbG9rYWxlIEtvcGllIGRlciBQYWtldGF1c3dhaGwtWnVzdMOkbmRlIHp1IGVyc3RlbGxlbjoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3NDYKKyMsIG5vLXdyYXAKK21zZ2lkICIgICAgIEI8ZHBrZyAtLWdldC1zZWxlY3Rpb25zIEU8Z3Q+bXlzZWxlY3Rpb25zPlxuIgorbXNnc3RyICIgICAgIEI8ZHBrZyAtLWdldC1zZWxlY3Rpb25zIEU8Z3Q+bWVpbmVfYXVzd2FobD5cbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjc1MAorbXNnaWQgIiIKKyJZb3UgbWlnaHQgdHJhbnNmZXIgdGhpcyBmaWxlIHRvIGFub3RoZXIgY29tcHV0ZXIsIGFuZCBpbnN0YWxsIGl0IHRoZXJlIHdpdGg6IgorbXNnc3RyICIiCisiU2llIGvDtm5uZW4gZGllc2UgRGF0ZWkgenUgZWluZW0gYW5kZXJlbiBDb21wdXRlciBicmluZ2VuIHVuZCBzaWUgZG9ydCBtaXQgIgorImZvbGdlbmRlbiBCZWZlaGxlbiBpbnN0YWxsaWVyZW46IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzUzCisjLCBuby13cmFwCittc2dpZCAiIgorIiAgICAgQjxkcGtnIC0tY2xlYXItc2VsZWN0aW9ucz5cbiIKKyIgICAgIEI8ZHBrZyAtLXNldC1zZWxlY3Rpb25zIEU8bHQ+bXlzZWxlY3Rpb25zPlxuIgorbXNnc3RyICIiCisiICAgICBCPGRwa2cgLS1jbGVhci1zZWxlY3Rpb25zPlxuIgorIiAgICAgQjxkcGtnIC0tc2V0LXNlbGVjdGlvbnMgRTxsdD5tZWluZV9hdXN3YWhsPlxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzU5Cittc2dpZCAiIgorIk5vdGUgdGhhdCB0aGlzIHdpbGwgbm90IGFjdHVhbGx5IGluc3RhbGwgb3IgcmVtb3ZlIGFueXRoaW5nLCBidXQganVzdCBzZXQgIgorInRoZSBzZWxlY3Rpb24gc3RhdGUgb24gdGhlIHJlcXVlc3RlZCBwYWNrYWdlcy4gWW91IHdpbGwgbmVlZCBzb21lIG90aGVyICIKKyJhcHBsaWNhdGlvbiB0byBhY3R1YWxseSBkb3dubG9hZCBhbmQgaW5zdGFsbCB0aGUgcmVxdWVzdGVkIHBhY2thZ2VzLiBGb3IgIgorImV4YW1wbGUsIHJ1biBCPGFwdC1nZXQgZHNlbGVjdC11cGdyYWRlPi4iCittc2dzdHIgIiIKKyJCZWFjaHRlbiBTaWUsIGRhc3MgZGllcyBuaWNodHMgd2lya2xpY2ggaW5zdGFsbGllcnQgb2RlciBlbnRmZXJudCwgc29uZGVybiAiCisibGVkaWdsaWNoIGRlbiBBdXN3YWhsenVzdGFuZCBkZXIgYW5nZWZvcmRlcnRlbiBQYWtldGUgc2V0enQuIFNpZSB3ZXJkZW4gZWluZSAiCisiYW5kZXJlIEFud2VuZHVuZyBiZW7DtnRpZ2VuLCB1bSBkaWUgYW5nZWZvcmRlcnRlbiBQYWtldGUgdGF0c8OkY2hsaWNoICIKKyJoZXJ1bnRlcnp1bGFkZW4gdW5kIHp1IGluc3RhbGxpZXJlbi4gRsO8aHJlbiBTaWUgYmVpc3BpZWxzd2Vpc2UgQjxhcHQtZ2V0ICIKKyJkc2VsZWN0LXVwZ3JhZGU+IGF1cy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3NjIKK21zZ2lkICIiCisiT3JkaW5hcmlseSwgeW91IHdpbGwgZmluZCB0aGF0IEI8ZHNlbGVjdD4oMSkgcHJvdmlkZXMgYSBtb3JlIGNvbnZlbmllbnQgd2F5ICIKKyJ0byBtb2RpZnkgdGhlIHBhY2thZ2Ugc2VsZWN0aW9uIHN0YXRlcy4iCittc2dzdHIgIiIKKyJHZXfDtmhubGljaCB3ZXJkZW4gU2llIGZlc3RzdGVsbGVuLCBkYXNzIEI8ZHNlbGVjdD4oMSkgZWluZSBiZXF1ZW1lcmUgQXJ0ICIKKyJpc3QsIGRlbiBQYWtldGF1c3dhaGx6dXN0YW5kIHp1IMOkbmRlcm4uIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy4xOjc2NAorIywgbm8td3JhcAorbXNnaWQgIkFERElUSU9OQUwgRlVOQ1RJT05BTElUWSIKK21zZ3N0ciAiWlVTw4RUWkxJQ0hFIEZVTktUSU9OQUxJVMOEVCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjc2NworbXNnaWQgIiIKKyJBZGRpdGlvbmFsIGZ1bmN0aW9uYWxpdHkgY2FuIGJlIGdhaW5lZCBieSBpbnN0YWxsaW5nIGFueSBvZiB0aGUgZm9sbG93aW5nICIKKyJwYWNrYWdlczogQjxhcHQ+LCBCPGFwdGl0dWRlPiBhbmQgQjxkZWJzdW1zPi4iCittc2dzdHIgIiIKKyJadXPDpHR6bGljaGUgRnVua3Rpb25hbGl0w6R0IGthbm4gZHVyY2ggZGllIEluc3RhbGxhdGlvbiBqZWRlcyBkZXIgZm9sZ2VuZGVuICIKKyJQYWtldGUgZXJoYWx0ZW4gd2VyZGVuOiBCPGFwdD4sIEI8YXB0aXR1ZGU+IHVuZCBCPGRlYnN1bXM+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjc3OQorbXNnaWQgIiIKKyJCPGFwdGl0dWRlPigxKSwgQjxhcHQ+KDEpLCBCPGRzZWxlY3Q+KDEpLCBCPGRwa2ctZGViPigxKSwgQjxkcGtnLXF1ZXJ5PigxKSwgIgorIkI8ZGViPig1KSwgQjxkZWItY29udHJvbD4oNSksIEI8ZHBrZy5jZmc+KDUpLCBhbmQgQjxkcGtnLXJlY29uZmlndXJlPig4KS4iCittc2dzdHIgIiIKKyJCPGFwdGl0dWRlPigxKSwgQjxhcHQ+KDEpLCBCPGRzZWxlY3Q+KDEpLCBCPGRwa2ctZGViPigxKSwgQjxkcGtnLXF1ZXJ5PigxKSwgIgorIkI8ZGViPig1KSwgQjxkZWItY29udHJvbD4oNSksIEI8ZHBrZy5jZmc+KDUpIHVuZCBCPGRwa2ctcmVjb25maWd1cmU+KDgpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjc4MgorbXNnaWQgIkI8LS1uby1hY3Q+IHVzdWFsbHkgZ2l2ZXMgbGVzcyBpbmZvcm1hdGlvbiB0aGFuIG1pZ2h0IGJlIGhlbHBmdWwuIgorbXNnc3RyICIiCisiQjwtLW5vLWFjdD4gZ2lidCBnZXfDtmhubGljaCB3ZW5pZ2VyIEluZm9ybWF0aW9uZW4gYWxzIGhpbGZyZWljaCBzZWluIGvDtm5udGVuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjc4NSBkcGtnLmNmZy41OjIyCittc2dpZCAiIgorIlNlZSBJPC91c3Ivc2hhcmUvZG9jL2Rwa2cvVEhBTktTPiBmb3IgdGhlIGxpc3Qgb2YgcGVvcGxlIHdobyBoYXZlICIKKyJjb250cmlidXRlZCB0byBCPGRwa2c+LiIKK21zZ3N0ciAiIgorIkxlc2VuIFNpZSBJPC91c3Ivc2hhcmUvZG9jL2Rwa2cvVEhBTktTPiBmw7xyIGRpZSBMaXN0ZSBkZXIgTGV1dGUsIGRpZSB6dSAiCisiQjxkcGtnPiBiZWlnZXRyYWdlbiBoYWJlbi4iCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLWFyY2hpdGVjdHVyZSIKK21zZ3N0ciAiZHBrZy1hcmNoaXRlY3R1cmUiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NAorbXNnaWQgIiIKKyJkcGtnLWFyY2hpdGVjdHVyZSAtIHNldCBhbmQgZGV0ZXJtaW5lIHRoZSBhcmNoaXRlY3R1cmUgZm9yIHBhY2thZ2UgYnVpbGRpbmciCittc2dzdHIgImRwa2ctYXJjaGl0ZWN0dXJlIC0gQXJjaGl0ZWt0dXIgenVtIFBha2V0YmF1IHNldHplbiB1bmQgYmVzdGltbWVuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjgKK21zZ2lkICJCPGRwa2ctYXJjaGl0ZWN0dXJlPiBbSTxvcHRpb24+Li4uXSBbSTxjb21tYW5kPl0iCittc2dzdHIgIkI8ZHBrZy1hcmNoaXRlY3R1cmU+IFtJPE9wdGlvbj4uLi5dIFtJPEJlZmVobD5dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEzCittc2dpZCAiIgorImRwa2ctYXJjaGl0ZWN0dXJlIGRvZXMgcHJvdmlkZSBhIGZhY2lsaXR5IHRvIGRldGVybWluZSBhbmQgc2V0IHRoZSBidWlsZCBhbmQgIgorImhvc3QgYXJjaGl0ZWN0dXJlIGZvciBwYWNrYWdlIGJ1aWxkaW5nLiIKK21zZ3N0ciAiIgorImRwa2ctYXJjaGl0ZWN0dXJlIHN0ZWxsdCBlaW5lIE3DtmdsaWNoa2VpdCBiZXJlaXQsIGRpZSBSZWNobmVyLUFyY2hpdGVrdHVyICIKKyJmw7xyIGRlbiBQYWtldGJhdSB6dSBiZXN0aW1tZW4gdW5kIHp1IHNldHplbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTYKK21zZ2lkICIiCisiVGhlIGJ1aWxkIGFyY2hpdGVjdHVyZSBpcyBhbHdheXMgZGV0ZXJtaW5lZCBieSBhbiBleHRlcm5hbCBjYWxsIHRvIEI8ZHBrZz4iCisiKDEpLCBhbmQgY2FuIG5vdCBiZSBzZXQgYXQgdGhlIGNvbW1hbmQgbGluZS4iCittc2dzdHIgIiIKKyJEaWUgQmF1LUFyY2hpdGVrdHVyIHdpcmQgaW1tZXIgw7xiZXIgZWluZW4gZXh0ZXJuZW4gQXVmcnVmIGFuIEI8ZHBrZz4oMSkgIgorImJlc3RpbW10IHVuZCBrYW5uIG5pY2h0IGF1ZiBkZXIgS29tbWFuZG96ZWlsZSBnZXNldHp0IHdlcmRlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjUKK21zZ2lkICIiCisiWW91IGNhbiBzcGVjaWZ5IHRoZSBob3N0IGFyY2hpdGVjdHVyZSBieSBwcm92aWRpbmcgb25lIG9yIGJvdGggb2YgdGhlICIKKyJvcHRpb25zIEI8LWE+IGFuZCBCPC10Pi4gVGhlIGRlZmF1bHQgaXMgZGV0ZXJtaW5lZCBieSBhbiBleHRlcm5hbCBjYWxsIHRvICIKKyJCPGdjYz4oMSksIG9yIHRoZSBzYW1lIGFzIHRoZSBidWlsZCBhcmNoaXRlY3R1cmUgaWYgXFxzLTFDQ1xcczAgb3IgZ2NjIGFyZSAiCisiYm90aCBub3QgYXZhaWxhYmxlLiBPbmUgb3V0IG9mIEI8LWE+IGFuZCBCPC10PiBpcyBzdWZmaWNpZW50LCB0aGUgdmFsdWUgb2YgIgorInRoZSBvdGhlciB3aWxsIGJlIHNldCB0byBhIHVzYWJsZSBkZWZhdWx0LiBJbmRlZWQsIGl0IGlzIG9mdGVuIGJldHRlciB0byAiCisib25seSBzcGVjaWZ5IG9uZSwgYmVjYXVzZSBCPGRwa2ctYXJjaGl0ZWN0dXJlPiB3aWxsIHdhcm4geW91IGlmIHlvdXIgY2hvaWNlICIKKyJkb2VzIG5vdCBtYXRjaCB0aGUgZGVmYXVsdC4iCittc2dzdHIgIiIKKyJTaWUga8O2bm5lbiBkaWUgSG9zdC1BcmNoaXRla3R1ciAoV2lydC1BcmNoaXRla3R1cikgc3BlemlmaXppZXJlbiwgaW5kZW0gU2llICIKKyJlaW5lIG9kZXIgYmVpZGUgZGVyIE9wdGlvbmVuIEI8LWE+IG9kZXIgQjwtdD4gdmVyd2VuZGVuLiBEZXIgU3RhbmRhcmR3ZXJ0ICIKKyJ3aXJkIMO8YmVyIGVpbmVuIGV4dGVybmVuIEF1ZnJ1ZiBhbiBCPGdjYz4oMSkgZXJtaXR0ZWx0IG9kZXIgaXN0IGlkZW50aXNjaCAiCisibWl0IGRlciBCYXVhcmNoaXRla3R1ciwgZmFsbHMgc293b2hsIFxccy0xQ0NcXHMwIGFscyBhdWNoIEdjYyBuaWNodCAiCisidmVyZsO8Z2JhciBzaW5kLiBFaW5lciB2b24gQjwtYT4gb2RlciBCPC10PiBpc3QgYXVzcmVpY2hlbmQsIGRlciBXZXJ0IGRlcyAiCisiYW5kZXJlbiB3aXJkIGF1ZiBlaW5lbiBicmF1Y2hiYXJlbiBXZXJ0IGdlc2V0enQuIFRhdHPDpGNobGljaCBpc3QgZXMgb2Z0ICIKKyJiZXNzZXIsIG51ciBlaW5lbiBkZXIgYmVpZGVuIGFuenVnZWJlbiwgZGEgQjxkcGtnLWFyY2hpdGVjdHVyZT4gU2llIHdhcm5lbiAiCisid2lyZCwgZmFsbHMgSWhyZSBXYWhsIG5pY2h0IG1pdCBkZW0gU3RhbmRhcmR3ZXJ0IMO8YmVyZWluc3RpbW10LiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjYgZHBrZy1idWlsZGZsYWdzLjE6NDUgZHBrZy1kZWIuMToyNyBkcGtnLWRpdmVydC44OjI0CisjOiBkcGtnLXF1ZXJ5LjE6MTMgZHBrZy1zb3VyY2UuMToxOCBkcGtnLXNwbGl0LjE6MzEgZHBrZy1zdGF0b3ZlcnJpZGUuODoyMworIzogZHBrZy10cmlnZ2VyLjE6MjQgZHBrZy12ZW5kb3IuMToxNCBzdGFydC1zdG9wLWRhZW1vbi44OjM0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjAyCisjLCBuby13cmFwCittc2dpZCAiQ09NTUFORFMiCittc2dzdHIgIkJFRkVITEUiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI3CisjLCBuby13cmFwCittc2dpZCAiQjwtbD4iCittc2dzdHIgIkI8LWw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjMxCittc2dpZCAiIgorIlByaW50IHRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZXMsIG9uZSBlYWNoIGxpbmUsIGluIHRoZSBmb3JtYXQgIgorIkk8VkFSSUFCTEU9dmFsdWU+LiBUaGlzIGlzIHRoZSBkZWZhdWx0IGFjdGlvbi4iCittc2dzdHIgIiIKKyJaZWlnZSBkaWUgVW1nZWJ1bmdzdmFyaWFibGVuLCBlaW5lIHBybyBaZWlsZSwgaW4gZGVtIEZvcm1hdCAiCisiSTxWQVJJQUJMRT1XZXJ0Pi4gRGllcyBpc3QgZGllIFN0YW5kYXJkYWt0aW9uLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MzEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1lPkk8ZGViaWFuLWFyY2hpdGVjdHVyZT4iCittc2dzdHIgIkI8LWU+STxEZWJpYW4tQXJjaGl0ZWt0dXI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjM3Cittc2dpZCAiIgorIkNoZWNrIGZvciBlcXVhbGl0eSBvZiBhcmNoaXRlY3R1cmUuIEJ5IGRlZmF1bHQgSTxkZWJpYW4tYXJjaGl0ZWN0dXJlPiBpcyAiCisiY29tcGFyZWQgYWdhaW5zdCB0aGUgY3VycmVudCBEZWJpYW4gYXJjaGl0ZWN0dXJlLCBiZWluZyB0aGUgaG9zdC4gIFRoaXMgIgorImFjdGlvbiB3aWxsIG5vdCBleHBhbmQgdGhlIGFyY2hpdGVjdHVyZSB3aWxkY2FyZHMuIENvbW1hbmQgZmluaXNoZXMgd2l0aCBhbiAiCisiZXhpdCBzdGF0dXMgb2YgMCBpZiBtYXRjaGVkLCAxIGlmIG5vdCBtYXRjaGVkLiIKK21zZ3N0ciAiIgorIsOcYmVycHLDvGZlIGF1ZiBHbGVpY2hoZWl0IGRlciBBcmNoaXRla3R1cmVuLiBTdGFuZGFyZG3DpMOfaWcgd2lyZCBJPERlYmlhbi0iCisiQXJjaGl0ZWt0dXI+IGdlZ2VuIGRpZSBha3R1ZWxsZSBEZWJpYW4tQXJjaGl0ZWt0dXIgYXVmIGRlbSBIb3N0IGdlcHLDvGZ0LiAiCisiRGllc2UgQWt0aW9uIGV4cGFuZGllcnQgbmljaHQgZGllIEFyY2hpdGVrdHVyLVBsYXR6aGFsdGVyIChXaWxkY2FyZHMpLiBEZXIgIgorIkJlZmVobCBiZWVuZGV0IHNpY2ggbWl0IGVpbmVtIEV4aXQtU3RhdHVzIHZvbiAwLCBmYWxscyBlaW5lIMOcYmVyZWluc3RpbW11bmcgIgorImJlc3RlaHQsIGFuZGVybmZhbGxzIG1pdCAxLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MzcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1pPkk8YXJjaGl0ZWN0dXJlLXdpbGRjYXJkPiIKK21zZ3N0ciAiQjwtaT5JPEFyY2hpdGVrdHVyLVBsYXR6aGFsdGVyPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo0MworbXNnaWQgIiIKKyJDaGVjayBmb3IgaWRlbnRpdHkgb2YgYXJjaGl0ZWN0dXJlIGJ5IGV4cGFuZGluZyBJPGFyY2hpdGVjdHVyZS13aWxkY2FyZD4gYXMgIgorImFuIGFyY2hpdGVjdHVyZSB3aWxkY2FyZCBhbmQgY29tcGFyaW5nIGFnYWluc3QgdGhlIGN1cnJlbnQgRGViaWFuICIKKyJhcmNoaXRlY3R1cmUuIENvbW1hbmQgZmluaXNoZXMgd2l0aCBhbiBleGl0IHN0YXR1cyBvZiAwIGlmIG1hdGNoZWQsIDEgaWYgbm90ICIKKyJtYXRjaGVkLiIKK21zZ3N0ciAiIgorIsOcYmVycHLDvGZlIGRpZSBJZGVudGl0w6R0IGVpbmVyIEFyY2hpdGVrdHVyLCBpbmRlbSBJPEFyY2hpdGVrdHVyLVBsYXR6aGFsdGVyPiAiCisiYWxzIGVpbiBBcmNoaXRla3R1ci1QbGF0emhhbHRlciBleHBhbmRpZXJ0IHVuZCBtaXQgZGVyIGFrdHVlbGxlbiBEZWJpYW4tIgorIkFyY2hpdGVrdHVyIHZlcmdsaWNoZW4gd2lyZC4gRGVyIEJlZmVobCBlbmRldCBtaXQgZWluZW0gRXhpdC1TdGF0dXMgdm9uIDAsICIKKyJmYWxscyBlaW5lIMOcYmVyZWluc3RpbW11bmcgZ2VmdW5kZW4gd3VyZGUsIGFuc29uc3RlbiBtaXQgMS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjQzCisjLCBuby13cmFwCittc2dpZCAiQjwtcT5JPHZhcmlhYmxlLW5hbWU+IgorbXNnc3RyICJCPC1xPkk8VmFyaWFibGVubmFtZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NDYKK21zZ2lkICJQcmludCB0aGUgdmFsdWUgb2YgYSBzaW5nbGUgdmFyaWFibGUuIgorbXNnc3RyICJaZWlnZSBkZW4gV2VydCBlaW5lciBlaW56ZWxuZW4gVmFyaWFibGVuIGFuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NDYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1zPiIKK21zZ3N0ciAiQjwtcz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NTAKK21zZ2lkICIiCisiUHJpbnQgYW4gZXhwb3J0IGNvbW1hbmQuIFRoaXMgY2FuIGJlIHVzZWQgdG8gc2V0IHRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZXMgIgorInVzaW5nIGV2YWwuIgorbXNnc3RyICIiCisiWmVpZ2UgZWluZW4gRXhwb3J0LUJlZmVobC4gRGllcyBrYW5uIGRhenUgdmVyd2VuZGV0IHdlcmRlbiwgdW0gIgorIlVtZ2VidW5nc3ZhcmlhYmxlbiBtaXR0ZWxzIGV2YWwgenUgc2V0emVuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NTAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC11PiIKK21zZ3N0ciAiQjwtdT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NTMKK21zZ2lkICJQcmludCBhIHNpbWlsYXIgY29tbWFuZCB0byBCPC1zPiBidXQgdG8gdW5zZXQgYWxsIHZhcmlhYmxlcy4iCittc2dzdHIgIiIKKyLDhGhubGljaCB3aWUgQjwtcz4sIGdlYmUgZWluZW4gRXhwb3J0LUJlZmVobCBhdXMsIGRlciBhbGxlIFZhcmlhYmxlbiBsw7ZzY2h0LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NTMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1jPkk8IGNvbW1hbmQ+IgorbXNnc3RyICJCPC1jPkk8IEJlZmVobD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NTcKK21zZ2lkICIiCisiRXhlY3V0ZSBhIEk8Y29tbWFuZD4gaW4gYW4gZW52aXJvbm1lbnQgd2hpY2ggaGFzIGFsbCB2YXJpYWJsZXMgc2V0IHRvIHRoZSAiCisiZGV0ZXJtaW5lZCB2YWx1ZS4iCittc2dzdHIgIiIKKyJGw7xocmUgZWluZW4gSTxCZWZlaGw+IGluIGVpbmVyIFVtZ2VidW5nIGF1cywgaW4gZGVyIGFsbGUgVmFyaWFibGVuIGF1ZiBkaWUgIgorImZlc3RnZWxlZ3RlbiBXZXJ0ZSBnZXNldHp0IHNpbmQuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo1NworIywgbm8td3JhcAorbXNnaWQgIkI8LUw+IgorbXNnc3RyICJCPC1MPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo2MAorbXNnaWQgIlByaW50IGEgbGlzdCBvZiB2YWxpZCBhcmNoaXRlY3R1cmUgbmFtZXMuIgorbXNnc3RyICJaZWlnZSBlaW5lIExpc3RlIHZvbiBnw7xsdGlnZW4gQXJjaGl0ZWt0dXJuYW1lbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NjMgZHBrZy1idWlsZGZsYWdzLjE6OTIgZHBrZy1idWlsZHBhY2thZ2UuMToyMjYKKyM6IGRwa2ctY2hlY2tidWlsZGRlcHMuMTozNiBkcGtnLWRpc3RhZGRmaWxlLjE6MzUgZHBrZy1kZWIuMToxNzUKKyM6IGRwa2ctZGl2ZXJ0Ljg6NzQgZHBrZy1nZW5jaGFuZ2VzLjE6MTM0IGRwa2ctZ2VuY29udHJvbC4xOjEyNAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDQ2IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6NDEgZHBrZy1uYW1lLjE6NjEKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTozNiBkcGtnLXF1ZXJ5LjE6MTEzIGRwa2ctc2NhbnBhY2thZ2VzLjE6OTkKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMTo2OCBkcGtnLXNobGliZGVwcy4xOjIxOCBkcGtnLXNvdXJjZS4xOjk5CisjOiBkcGtnLXNwbGl0LjE6MTI5IGRwa2ctc3RhdG92ZXJyaWRlLjg6NDcgZHBrZy10cmlnZ2VyLjE6MzQgZHBrZy12ZW5kb3IuMTozMQorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjMxOQorbXNnaWQgIlNob3cgdGhlIHVzYWdlIG1lc3NhZ2UgYW5kIGV4aXQuIgorbXNnc3RyICJaZWlnZSBkZW4gQmVkaWVudW5nc2hpbndlaXMgdW5kIGJlZW5kZS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NjYgZHBrZy1idWlsZGZsYWdzLjE6OTUgZHBrZy1idWlsZHBhY2thZ2UuMToyMjkKKyM6IGRwa2ctY2hlY2tidWlsZGRlcHMuMTozOSBkcGtnLWRpc3RhZGRmaWxlLjE6MzggZHBrZy1kZWIuMToxNzgKKyM6IGRwa2ctZGl2ZXJ0Ljg6NzcgZHBrZy1nZW5jaGFuZ2VzLjE6MTM3IGRwa2ctZ2VuY29udHJvbC4xOjEyNworIzogZHBrZy1nZW5zeW1ib2xzLjE6NDQ5IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6NDQgZHBrZy1uYW1lLjE6NjQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTozOSBkcGtnLXF1ZXJ5LjE6MTE2IGRwa2ctc2NhbnBhY2thZ2VzLjE6MTAyCisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6NzAgZHBrZy1zaGxpYmRlcHMuMToyMjEgZHBrZy1zb3VyY2UuMToxMDIKKyM6IGRwa2ctc3BsaXQuMToxMzIgZHBrZy1zdGF0b3ZlcnJpZGUuODo1MCBkcGtnLXRyaWdnZXIuMTozNyBkcGtnLXZlbmRvci4xOjM0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzIyCittc2dpZCAiU2hvdyB0aGUgdmVyc2lvbiBhbmQgZXhpdC4iCittc2dzdHIgIkdlYmUgZGllIFZlcnNpb24gYXVzIHVuZCBiZWVuZGUgc2ljaC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjY4CisjLCBuby13cmFwCittc2dpZCAiQjwtYT5JPGRlYmlhbi1hcmNoaXRlY3R1cmU+IgorbXNnc3RyICJCPC1hPkk8RGViaWFuLUFyY2hpdGVrdHVyPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo3MQorbXNnaWQgIlNldCB0aGUgRGViaWFuIGFyY2hpdGVjdHVyZS4iCittc2dzdHIgIlNldHplIGRpZSBEZWJpYW4tQXJjaGl0ZWt0dXIuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo3MSBkcGtnLWJ1aWxkcGFja2FnZS4xOjExMAorIywgbm8td3JhcAorbXNnaWQgIkI8LXQ+STxnbnUtc3lzdGVtLXR5cGU+IgorbXNnc3RyICJCPC10Pkk8R05VLVN5c3RlbXR5cD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NzQKK21zZ2lkICJTZXQgdGhlIEdOVSBzeXN0ZW0gdHlwZS4iCittc2dzdHIgIlNldHplIGRlbiBHTlUtU3lzdGVtdHlwLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NzQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1mPiIKK21zZ3N0ciAiQjwtZj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6ODEKK21zZ2lkICIiCisiVmFsdWVzIHNldCBieSBleGlzdGluZyBlbnZpcm9ubWVudCB2YXJpYWJsZXMgd2l0aCB0aGUgc2FtZSBuYW1lIGFzIHVzZWQgYnkgIgorInRoZSBzY3JpcHRzIGFyZSBob25vcmVkIChpLmUuIHVzZWQgYnkgQjxkcGtnLWFyY2hpdGVjdHVyZT4pLCBleGNlcHQgaWYgdGhpcyAiCisiZm9yY2UgZmxhZyBpcyBwcmVzZW50LiBUaGlzIGFsbG93cyB0aGUgdXNlciB0byBvdmVycmlkZSBhIHZhbHVlIGV2ZW4gd2hlbiAiCisidGhlIGNhbGwgdG8gQjxkcGtnLWFyY2hpdGVjdHVyZT4gaXMgYnVyaWVkIGluIHNvbWUgb3RoZXIgc2NyaXB0IChmb3IgZXhhbXBsZSAiCisiQjxkcGtnLWJ1aWxkcGFja2FnZT4oMSkpLiIKK21zZ3N0ciAiIgorIkV4aXN0aWVyZW5kZSBVbWdlYnVuZ3N2YXJpYWJsZW4gbWl0IGRlbSBnbGVpY2hlbiBOYW1lbiB3aWUgdm9tIFNrcmlwdCAiCisidmVyd2VuZGV0IHdlcmRlbiBuaWNodCDDvGJlcnNjaHJpZWJlbiAoZC5oLiBzaWUgd2VyZGVuIHZvbiBCPGRwa2ctIgorImFyY2hpdGVjdHVyZT4gdmVyd2VuZGV0KSwgZXMgc2VpIGRlbm4sIGRpZSDCu2ZvcmNlwqstTWFya2llcnVuZyBpc3QgZ2VzZXR6dC4gIgorIkRpZXMgZXJsYXVidCBlcyBkZW0gQmVudXR6ZXIgZWluZW4gV2VydCB6dSDDvGJlcnNjaHJlaWJlbiwgc2VsYnN0IHdlbm4gZGVyICIKKyJBdWZydWYgdm9uIEI8ZHBrZy1hcmNoaXRlY3R1cmU+IHRpZWYgaW4gZWluZW0gYW5kZXJlbiBTa3JpcHQgdmVyc3RlY2t0IGlzdCAiCisiKGJlaXNwaWVsc3dlaXNlIEI8ZHBrZy1idWlsZHBhY2thZ2U+KDEpKS4iCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjgyCisjLCBuby13cmFwCittc2dpZCAiVEVSTVMiCittc2dzdHIgIkFVU0RSw5xDS0UiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjgzCisjLCBuby13cmFwCittc2dpZCAiYnVpbGQgbWFjaGluZSIKK21zZ3N0ciAiQmF1bWFzY2hpbmUiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6ODUKK21zZ2lkICJUaGUgbWFjaGluZSB0aGUgcGFja2FnZSBpcyBidWlsdCBvbi4iCittc2dzdHIgIkRpZSBNYXNjaGluZSwgYXVmIGRlciBkYXMgUGFrZXQgZ2ViYXV0IHdpcmQuIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo4NQorIywgbm8td3JhcAorbXNnaWQgImhvc3QgbWFjaGluZSIKK21zZ3N0ciAiSG9zdC1NYXNjaGluZSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo4NworbXNnaWQgIlRoZSBtYWNoaW5lIHRoZSBwYWNrYWdlIGlzIGJ1aWx0IGZvci4iCittc2dzdHIgIkRpZSBNYXNjaGluZSwgZsO8ciBkaWUgZGFzIFBha2V0IGdlYmF1dCBpc3QuIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo4NworIywgbm8td3JhcAorbXNnaWQgIkRlYmlhbiBhcmNoaXRlY3R1cmUiCittc2dzdHIgIkRlYmlhbi1BcmNoaXRla3R1ciIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo5MAorbXNnaWQgIiIKKyJUaGUgRGViaWFuIGFyY2hpdGVjdHVyZSBzdHJpbmcsIHdoaWNoIHNwZWNpZmllcyB0aGUgYmluYXJ5IHRyZWUgaW4gdGhlICIKKyJcXHMtMUZUUFxcczAgYXJjaGl2ZS4gRXhhbXBsZXM6IGkzODYsIHNwYXJjLCBodXJkLWkzODYuIgorbXNnc3RyICIiCisiRGllIERlYmlhbi1BcmNoaXRla3R1ci1aZWljaGVua2V0dGUsIGRpZSBkZW4gYmluw6RyZW4gQmF1bSBpbSBcXHMtMUZUUFxcczAtIgorIkFyY2hpdiBzcGV6aWZpemllcnQuIEJlaXNwaWVsZTogaTM4Niwgc3BhcmMsIGh1cmQtaTM4Ni4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjkwCisjLCBuby13cmFwCittc2dpZCAiYXJjaGl0ZWN0dXJlIHdpbGRjYXJkIgorbXNnc3RyICJBcmNoaXRla3R1ci1QbGF0emhhbHRlciIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo5NAorbXNnaWQgIiIKKyJBbiBhcmNoaXRlY3R1cmUgd2lsZGNhcmQgaXMgYSBzcGVjaWFsIGFyY2hpdGVjdHVyZSBzdHJpbmcgdGhhdCB3aWxsIG1hdGNoICIKKyJhbnkgcmVhbCBhcmNoaXRlY3R1cmUgYmVpbmcgcGFydCBvZiBpdC4gVGhlIGdlbmVyYWwgZm9ybSBpcyBFPGx0Pmtlcm5lbEU8Z3Q+LSIKKyJFPGx0PmNwdUU8Z3Q+LiAgRXhhbXBsZXM6IGxpbnV4LWFueSwgYW55LWkzODYsIGh1cmQtYW55LiIKK21zZ3N0ciAiIgorIkVpbiBBcmNoaXRla3R1ci1QbGF0emhhbHRlciBpc3QgZWluZSBzcGV6aWVsbGUgQXJjaGl0ZWt0dXItWmVpY2hlbmtldHRlLCBkaWUgIgorImF1ZiBqZWRlIHJlYWxlIEFyY2hpdGVrdHVyLCBkaWUgZWluIFRlaWwgZGF2b24gaXN0LCBwYXNzdC4gRGllIGFsbGdlbWVpbmUgIgorIkZvcm0gaXN0IEU8bHQ+S2VybkU8Z3Q+LUU8bHQ+Q1BVRTxndD4uIEJlaXNwaWVsZTogbGludXgtYW55LCBhbnktaTM4NiwgaHVyZC0iCisiYW55LiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6OTQKKyMsIG5vLXdyYXAKK21zZ2lkICJcXHMtMUdOVVxcczAgc3lzdGVtIHR5cGUiCittc2dzdHIgIlxccy0xR05VXFxzMC1TeXN0ZW10eXAiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6OTgKK21zZ2lkICIiCisiQW4gYXJjaGl0ZWN0dXJlIHNwZWNpZmljYXRpb24gc3RyaW5nIGNvbnNpc3Rpbmcgb2YgdHdvIHBhcnRzIHNlcGFyYXRlZCBieSBhICIKKyJkYXNoOiBjcHUgYW5kIHN5c3RlbS4gRXhhbXBsZXM6IGkzODYtbGludXgtZ251LCBzcGFyYy1saW51eC1nbnUsIGkzODYtZ251LCAiCisieDg2XzY0LW5ldGJzZC4iCittc2dzdHIgIiIKKyJFaW5lIEFyY2hpdGVrdHVyLVNwZXppZmlrYXRpb25zLVplaWNoZW5rZXR0ZSBiZXN0ZWh0IGF1cyB6d2VpLCBkdXJjaCBlaW5lbiAiCisiQmluZGVzdHJpY2ggZ2V0cmVubnRlbiBUZWlsZW46IENQVSB1bmQgU3lzdGVtLiBCZWlzcGllbGU6IGkzODYtbGludXgtZ251LCAiCisic3BhcmMtbGludXgtZ251LCBpMzg2LWdudSwgeDg2XzY0LW5ldGJzZC4iCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjk5CisjLCBuby13cmFwCittc2dpZCAiVkFSSUFCTEVTIgorbXNnc3RyICJWQVJJQUJMRU4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTAxCittc2dpZCAiVGhlIGZvbGxvd2luZyB2YXJpYWJsZXMgYXJlIHNldCBieSBCPGRwa2ctYXJjaGl0ZWN0dXJlPjoiCittc2dzdHIgIkRpZSBmb2xnZW5kZW4gVmFyaWFibGVuIHdlcmRlbiB2b24gQjxkcGtnLWFyY2hpdGVjdHVyZT4gZ2VzZXR6dDoiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEwMQorIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0JVSUxEX0FSQ0hcXHMwIgorbXNnc3RyICJcXHMtMURFQl9CVUlMRF9BUkNIXFxzMCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMDMKK21zZ2lkICJUaGUgRGViaWFuIGFyY2hpdGVjdHVyZSBvZiB0aGUgYnVpbGQgbWFjaGluZS4iCittc2dzdHIgIkRpZSBEZWJpYW4tQXJjaGl0ZWt0dXIgZGVyIEJhdW1hc2NoaW5lLiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTAzCisjLCBuby13cmFwCittc2dpZCAiXFxzLTFERUJfQlVJTERfQVJDSF9PU1xcczAiCittc2dzdHIgIlxccy0xREVCX0JVSUxEX0FSQ0hfT1NcXHMwIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEwNQorbXNnaWQgIlRoZSBEZWJpYW4gc3lzdGVtIG5hbWUgb2YgdGhlIGJ1aWxkIG1hY2hpbmUuIgorbXNnc3RyICJEZXIgRGViaWFuLVN5c3RlbW5hbWUgZGVyIEJhdW1hc2NoaW5lLiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTA1CisjLCBuby13cmFwCittc2dpZCAiXFxzLTFERUJfQlVJTERfQVJDSF9DUFVcXHMwIgorbXNnc3RyICJcXHMtMURFQl9CVUlMRF9BUkNIX0NQVVxcczAiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTA3Cittc2dpZCAiVGhlIERlYmlhbiBjcHUgbmFtZSBvZiB0aGUgYnVpbGQgbWFjaGluZS4iCittc2dzdHIgIkRlciBEZWJpYW4tQ1BVLU5hbWUgZGVyIEJhdW1hc2NoaW5lLiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTA3CisjLCBuby13cmFwCittc2dpZCAiXFxzLTFERUJfQlVJTERfQVJDSF9CSVRTXFxzMCIKK21zZ3N0ciAiXFxzLTFERUJfQlVJTERfQVJDSF9CSVRTXFxzMCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMDkKK21zZ2lkICJUaGUgcG9pbnRlciBzaXplIG9mIHRoZSBidWlsZCBtYWNoaW5lIChpbiBiaXRzKS4iCittc2dzdHIgIkRpZSBaZWlnZXJncsO2w59lIGRlciBCYXVtYXNjaGluZSBpbiBCaXRzLiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTA5CisjLCBuby13cmFwCittc2dpZCAiXFxzLTFERUJfQlVJTERfQVJDSF9FTkRJQU5cXHMwIgorbXNnc3RyICJcXHMtMURFQl9CVUlMRF9BUkNIX0VORElBTlxcczAiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTExCittc2dpZCAiVGhlIGVuZGlhbm5lc3Mgb2YgdGhlIGJ1aWxkIG1hY2hpbmUgKGxpdHRsZSAvIGJpZykuIgorbXNnc3RyICJEaWUgRW5kaWFubmVzcyBkZXIgQmF1bWFzY2hpbmUgKGxpdHRsZS9iaWcpLiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTExCisjLCBuby13cmFwCittc2dpZCAiXFxzLTFERUJfQlVJTERfR05VX0NQVVxcczAiCittc2dzdHIgIlxccy0xREVCX0JVSUxEX0dOVV9DUFVcXHMwIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjExMworbXNnaWQgIlRoZSBcXHMtMUNQVVxcczAgcGFydCBvZiBcXHMtMURFQl9CVUlMRF9HTlVfVFlQRVxcczAuIgorbXNnc3RyICJEZXIgXFxzLTFDUFVcXHMwLVRlaWwgdm9uIFxccy0xREVCX0JVSUxEX0dOVV9UWVBFXFxzMC4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjExMworIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0JVSUxEX0dOVV9TWVNURU1cXHMwIgorbXNnc3RyICJcXHMtMURFQl9CVUlMRF9HTlVfU1lTVEVNXFxzMCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMTUKK21zZ2lkICJUaGUgU3lzdGVtIHBhcnQgb2YgXFxzLTFERUJfQlVJTERfR05VX1RZUEVcXHMwLiIKK21zZ3N0ciAiRGVyIFN5c3RlbS1UZWlsIHZvbiBcXHMtMURFQl9CVUlMRF9HTlVfVFlQRVxcczAuIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMTUKKyMsIG5vLXdyYXAKK21zZ2lkICJcXHMtMURFQl9CVUlMRF9HTlVfVFlQRVxcczAiCittc2dzdHIgIlxccy0xREVCX0JVSUxEX0dOVV9UWVBFXFxzMCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMTcKK21zZ2lkICJUaGUgXFxzLTFHTlVcXHMwIHN5c3RlbSB0eXBlIG9mIHRoZSBidWlsZCBtYWNoaW5lLiIKK21zZ3N0ciAiRGVyIFxccy0xR05VXFxzMC1TeXN0ZW10eXAgZGVyIEJhdW1hc2NoaW5lLiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTE3CisjLCBuby13cmFwCittc2dpZCAiXFxzLTFERUJfQlVJTERfTVVMVElBUkNIXFxzMCIKK21zZ3N0ciAiXFxzLTFERUJfQlVJTERfTVVMVElBUkNIXFxzMCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMjAKK21zZ2lkICIiCisiVGhlIGNsYXJpZmllZCBcXHMtMUdOVVxcczAgc3lzdGVtIHR5cGUgb2YgdGhlIGJ1aWxkIG1hY2hpbmUsIHVzZWQgZm9yICIKKyJmaWxlc3lzdGVtIHBhdGhzLiIKK21zZ3N0ciAiIgorIkRlciBrbGFyZ2VzdGVsbHRlIFxccy0xR05VXFxzMC1TeXN0ZW10eXAgZGVyIEJhdW1hc2NoaW5lLCB3aXJkIGbDvHIgIgorIkRhdGVpc3lzdGVtcGZhZGUgYmVudXR6dC4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEyMAorIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0hPU1RfQVJDSFxcczAiCittc2dzdHIgIlxccy0xREVCX0hPU1RfQVJDSFxcczAiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTIyCittc2dpZCAiVGhlIERlYmlhbiBhcmNoaXRlY3R1cmUgb2YgdGhlIGhvc3QgbWFjaGluZS4iCittc2dzdHIgIkRpZSBEZWJpYW4tQXJjaGl0ZWt0dXIgZGVyIEhvc3QtTWFzY2hpbmUuIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMjIKKyMsIG5vLXdyYXAKK21zZ2lkICJcXHMtMURFQl9IT1NUX0FSQ0hfT1NcXHMwIgorbXNnc3RyICJcXHMtMURFQl9IT1NUX0FSQ0hfT1NcXHMwIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEyNAorbXNnaWQgIlRoZSBEZWJpYW4gc3lzdGVtIG5hbWUgb2YgdGhlIGhvc3QgbWFjaGluZS4iCittc2dzdHIgIkRlciBEZWJpYW4tU3lzdGVtbmFtZSBkZXIgSG9zdC1NYXNjaGluZS4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEyNAorIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0hPU1RfQVJDSF9DUFVcXHMwIgorbXNnc3RyICJcXHMtMURFQl9IT1NUX0FSQ0hfQ1BVXFxzMCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMjYKK21zZ2lkICJUaGUgRGViaWFuIGNwdSBuYW1lIG9mIHRoZSBob3N0IG1hY2hpbmUuIgorbXNnc3RyICJEZXIgRGViaWFuLUNQVS1OYW1lIGRlciBIb3N0LU1hc2NoaW5lLiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTI2CisjLCBuby13cmFwCittc2dpZCAiXFxzLTFERUJfSE9TVF9BUkNIX0JJVFNcXHMwIgorbXNnc3RyICJcXHMtMURFQl9IT1NUX0FSQ0hfQklUU1xcczAiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTI4Cittc2dpZCAiVGhlIHBvaW50ZXIgc2l6ZSBvZiB0aGUgaG9zdCBtYWNoaW5lIChpbiBiaXRzKS4iCittc2dzdHIgIkRpZSBaZWlnZXJncsO2w59lIGRlciBIb3N0LU1hc2NoaW5lIGluIEJpdHMuIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMjgKKyMsIG5vLXdyYXAKK21zZ2lkICJcXHMtMURFQl9IT1NUX0FSQ0hfRU5ESUFOXFxzMCIKK21zZ3N0ciAiXFxzLTFERUJfSE9TVF9BUkNIX0VORElBTlxcczAiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTMwCittc2dpZCAiVGhlIGVuZGlhbm5lc3Mgb2YgdGhlIGhvc3QgbWFjaGluZSAobGl0dGxlIC8gYmlnKS4iCittc2dzdHIgIkRpZSBFbmRpYW5uZXNzIGRlciBIb3N0LU1hc2NoaW5lIChsaXR0bGUvYmlnKS4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEzMAorIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0hPU1RfR05VX0NQVVxcczAiCittc2dzdHIgIlxccy0xREVCX0hPU1RfR05VX0NQVVxcczAiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTMyCittc2dpZCAiVGhlIFxccy0xQ1BVXFxzMCBwYXJ0IG9mIFxccy0xREVCX0hPU1RfR05VX1RZUEVcXHMwLiIKK21zZ3N0ciAiRGVyIFxccy0xQ1BVXFxzMC1UZWlsIHZvbiBcXHMtMURFQl9IT1NUX0dOVV9UWVBFXFxzMC4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEzMgorIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0hPU1RfR05VX1NZU1RFTVxcczAiCittc2dzdHIgIlxccy0xREVCX0hPU1RfR05VX1NZU1RFTVxcczAiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTM0Cittc2dpZCAiVGhlIFN5c3RlbSBwYXJ0IG9mIFxccy0xREVCX0hPU1RfR05VX1RZUEVcXHMwLiIKK21zZ3N0ciAiRGVyIFN5c3RlbS1UZWlsIHZvbiBcXHMtMURFQl9IT1NUX0dOVV9UWVBFXFxzMC4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEzNAorIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0hPU1RfR05VX1RZUEVcXHMwIgorbXNnc3RyICJcXHMtMURFQl9IT1NUX0dOVV9UWVBFXFxzMCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMzYKK21zZ2lkICJUaGUgXFxzLTFHTlVcXHMwIHN5c3RlbSB0eXBlIG9mIHRoZSBob3N0IG1hY2hpbmUuIgorbXNnc3RyICJEZXIgXFxzLTFHTlVcXHMwLVN5c3RlbXR5cCBkZXIgSG9zdC1NYXNjaGluZS4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEzNgorIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0hPU1RfTVVMVElBUkNIXFxzMCIKK21zZ3N0ciAiXFxzLTFERUJfSE9TVF9NVUxUSUFSQ0hcXHMwIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEzOQorbXNnaWQgIiIKKyJUaGUgY2xhcmlmaWVkIFxccy0xR05VXFxzMCBzeXN0ZW0gdHlwZSBvZiB0aGUgaG9zdCBtYWNoaW5lLCB1c2VkIGZvciAiCisiZmlsZXN5c3RlbSBwYXRocy4iCittc2dzdHIgIiIKKyJEZXIga2xhcmdlc3RlbGx0ZSBcXHMtMUdOVVxcczAtU3lzdGVtdHlwIGRlciBIb3N0LU1hc2NoaW5lLCB3aXJkIGbDvHIgIgorIkRhdGVpc3lzdGVtcGZhZGUgYmVudXR6dC4iCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjE0MAorIywgbm8td3JhcAorbXNnaWQgIkRFQklBTi9SVUxFUyIKK21zZ3N0ciAiREVCSUFOL1JVTEVTIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjE0OAorbXNnaWQgIiIKKyJUaGUgZW52aXJvbm1lbnQgdmFyaWFibGVzIHNldCBieSBCPGRwa2ctYXJjaGl0ZWN0dXJlPiBhcmUgcGFzc2VkIHRvIEk8ZGViaWFuLyIKKyJydWxlcz4gYXMgbWFrZSB2YXJpYWJsZXMgKHNlZSBtYWtlIGRvY3VtZW50YXRpb24pLiBIb3dldmVyLCB5b3Ugc2hvdWxkIG5vdCAiCisicmVseSBvbiB0aGVtLCBhcyB0aGlzIGJyZWFrcyBtYW51YWwgaW52b2NhdGlvbiBvZiB0aGUgc2NyaXB0LiBJbnN0ZWFkLCB5b3UgIgorInNob3VsZCBhbHdheXMgaW5pdGlhbGl6ZSB0aGVtIHVzaW5nIEI8ZHBrZy1hcmNoaXRlY3R1cmU+IHdpdGggdGhlIC1xIG9wdGlvbi4gIgorIkhlcmUgYXJlIHNvbWUgZXhhbXBsZXMsIHdoaWNoIGFsc28gc2hvdyBob3cgeW91IGNhbiBpbXByb3ZlIHRoZSBjcm9zcyAiCisiY29tcGlsYXRpb24gc3VwcG9ydCBpbiB5b3VyIHBhY2thZ2U6IgorbXNnc3RyICIiCisiRGllIFVtZ2VidW5nc3ZhcmlhYmxlbiwgZGllIHZvbiBCPGRwa2ctYXJjaGl0ZWN0dXJlPiBnZXNldHp0IHdlcmRlbiwgd2VyZGVuICIKKyJhbiBJPGRlYmlhbi9ydWxlcz4gYWxzIE1ha2UtVmFyaWFibGVuIHdlaXRlcmdlZ2ViZW4gKGxlc2VuIFNpZSBoaWVyenUgZGllICIKKyJNYWtlLURva3VtZW50YXRpb24pLiBBbGxlcmRpbmdzIHNvbGx0ZW4gU2llIHNpY2ggbmljaHQgYXVmIGRpZXNlIHZlcmxhc3NlbiwgIgorImRhIGRhbWl0IGRlciBtYW51ZWxsZSBBdWZydWYgZGVzIFNrcmlwdHMgdmVyaGluZGVydCB3aXJkLiBTdGF0dGRlc3NlbiAiCisic29sbHRlbiBTaWUgc2llIGltbWVyIG1pdCBCPGRwa2ctYXJjaGl0ZWN0dXJlPiBtaXQgZGVyIC1xLU9wdGlvbiAiCisiaW5pdGlhbGlzaWVyZW4uIEhpZXIgc2luZCBlaW5pZ2UgQmVpc3BpZWxlLCBkaWUgYXVjaCB6ZWlnZW4sIHdpZSBzaWUgZGllICIKKyJDcm9zcy1Lb21waWxpZXJ1bmdzLVVudGVyc3TDvHR6dW5nIGluIElocmVtIFBha2V0IHZlcmJlc3Nlcm4ga8O2bm5lbjoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTUxIGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTY4Cittc2dpZCAiSW5zdGVhZCBvZjoiCittc2dzdHIgIkFuc3RhdHQgdm9uOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxNTUKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiQVJDSD1cXGBkcGtnIC0tcHJpbnQtYXJjaGl0ZWN0dXJlXFxgXG4iCisiY29uZmlndXJlICQoXFxzLTFBUkNIXFxzMCktbGludXhcbiIKK21zZ3N0ciAiIgorIkFSQ0g9XFxgZHBrZyAtLXByaW50LWFyY2hpdGVjdHVyZVxcYFxuIgorImNvbmZpZ3VyZSAkKFxccy0xQVJDSFxcczApLWxpbnV4XG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTU4Cittc2dpZCAicGxlYXNlIHVzZSB0aGUgZm9sbG93aW5nOiIKK21zZ3N0ciAidmVyd2VuZGVuIFNpZSBiaXR0ZSBkYXMgZm9sZ2VuZGU6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjE2MgorIywgbm8td3JhcAorbXNnaWQgIiIKKyJcXCZcXHMtMURFQl9CVUlMRF9HTlVfVFlQRVxcczAgOj0gJChzaGVsbCBkcGtnLWFyY2hpdGVjdHVyZSAtcURFQl9CVUlMRF9HTlVfVFlQRSlcbiIKKyJcXCZcXHMtMURFQl9IT1NUX0dOVV9UWVBFXFxzMCA6PSAkKHNoZWxsIGRwa2ctYXJjaGl0ZWN0dXJlIC1xREVCX0hPU1RfR05VX1RZUEUpXG4iCittc2dzdHIgIiIKKyJcXCZcXHMtMURFQl9CVUlMRF9HTlVfVFlQRVxcczAgOj0gJChzaGVsbCBkcGtnLWFyY2hpdGVjdHVyZSAtcURFQl9CVUlMRF9HTlVfVFlQRSlcbiIKKyJcXCZcXHMtMURFQl9IT1NUX0dOVV9UWVBFXFxzMCA6PSAkKHNoZWxsIGRwa2ctYXJjaGl0ZWN0dXJlIC1xREVCX0hPU1RfR05VX1RZUEUpXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTY0CisjLCBuby13cmFwCittc2dpZCAiY29uZmlndXJlIC0tYnVpbGQ9JChcXHMtMURFQl9CVUlMRF9HTlVfVFlQRVxcczApIC0taG9zdD0kKFxccy0xREVCX0hPU1RfR05VX1RZUEVcXHMwKVxuIgorbXNnc3RyICJjb25maWd1cmUgLS1idWlsZD0kKFxccy0xREVCX0JVSUxEX0dOVV9UWVBFXFxzMCkgLS1ob3N0PSQoXFxzLTFERUJfSE9TVF9HTlVfVFlQRVxcczApXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTc0CisjLCBuby13cmFwCittc2dpZCAiIgorIkFSQ0g9XFxgZHBrZyAtLXByaW50LWFyY2hpdGVjdHVyZVxcYFxuIgorImlmZXEgKCQoXFxzLTFBUkNIXFxzMCksYWxwaGEpXG4iCisiICAuLi5cbiIKKyJlbmRpZlxuIgorbXNnc3RyICIiCisiQVJDSD1cXGBkcGtnIC0tcHJpbnQtYXJjaGl0ZWN0dXJlXFxgXG4iCisiaWZlcSAoJChcXHMtMUFSQ0hcXHMwKSxhbHBoYSlcbiIKKyIgIC4uLlxuIgorImVuZGlmXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTc3Cittc2dpZCAicGxlYXNlIHVzZToiCittc2dzdHIgImJpdHRlIHZlcndlbmRlbiBTaWU6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjE4MAorIywgbm8td3JhcAorbXNnaWQgIlxcJlxccy0xREVCX0hPU1RfQVJDSFxcczAgOj0gJChzaGVsbCBkcGtnLWFyY2hpdGVjdHVyZSAtcURFQl9IT1NUX0FSQ0gpXG4iCittc2dzdHIgIlxcJlxccy0xREVCX0hPU1RfQVJDSFxcczAgOj0gJChzaGVsbCBkcGtnLWFyY2hpdGVjdHVyZSAtcURFQl9IT1NUX0FSQ0gpXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTg0CisjLCBuby13cmFwCittc2dpZCAiIgorImlmZXEgKCQoXFxzLTFERUJfSE9TVF9BUkNIXFxzMCksYWxwaGEpXG4iCisiICAuLi5cbiIKKyJlbmRpZlxuIgorbXNnc3RyICIiCisiaWZlcSAoJChcXHMtMURFQl9IT1NUX0FSQ0hcXHMwKSxhbHBoYSlcbiIKKyIgIC4uLlxuIgorImVuZGlmXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTg4Cittc2dpZCAiIgorIm9yIGlmIHlvdSBvbmx5IG5lZWQgdG8gY2hlY2sgdGhlIENQVSBvciBPUyB0eXBlLCB1c2UgdGhlIERFQl9IT1NUX0FSQ0hfQ1BVICIKKyJvciBERUJfSE9TVF9BUkNIX09TIHZhcmlhYmxlcy4iCittc2dzdHIgIiIKKyJvZGVyLCBmYWxscyBTaWUgbnVyIGRlbiBDUFUtIG9kZXIgT1MtVHlwIMO8YmVycHLDvGZlbiBtw7xzc2VuLCB2ZXJ3ZW5kZW4gU2llICIKKyJkaWUgREVCX0hPU1RfQVJDSF9DUFUtIG9kZXIgREVCX0hPU1RfQVJDSF9PUy1WYXJpYWJsZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjE5MworbXNnaWQgIiIKKyJJbiBnZW5lcmFsLCBjYWxsaW5nIGRwa2cgaW4gdGhlIHJ1bGVzIGZpbGUgdG8gZ2V0IGFyY2hpdGVjdHVyZSBpbmZvcm1hdGlvbiAiCisiaXMgZGVwcmVjYXRlZCAodW5sZXNzIHlvdSB3YW50IHRvIHByb3ZpZGUgYmFja3dhcmQgY29tcGF0aWJpbGl0eSwgc2VlICIKKyJiZWxvdykuICBFc3BlY2lhbGx5IHRoZSAtLXByaW50LWFyY2hpdGVjdHVyZSBvcHRpb24gaXMgdW5yZWxpYWJsZSBzaW5jZSB3ZSAiCisiaGF2ZSBEZWJpYW4gYXJjaGl0ZWN0dXJlcyB3aGljaCBkb24ndCBlcXVhbCBhIHByb2Nlc3NvciBuYW1lLiIKK21zZ3N0ciAiIgorIkltIEFsbGdlbWVpbmVuIHdpcmQgZGVyIEF1ZnJ1ZiB2b24gRHBrZyBpbiBkZXIgwrtydWxlc8KrLURhdGVpLCB1bSBBcmNoaXRla3R1ci0iCisiSW5mb3JtYXRpb25lbiB6dSBlcmhhbHRlbiwgYWJnZWxlaG50IChmYWxscyBTaWUgUsO8Y2t3w6RydHNrb21wYXRpYmlsaXTDpHQgIgorImJlcmVpdHN0ZWxsZW4gd29sbGVuLCBzaWVoZSB1bnRlbikuIEluc2Jlc29uZGVyZSBkaWUgLS1wcmludC1hcmNoaXRlY3R1cmUtIgorIk9wdGlvbiBpc3QgdW56dXZlcmzDpHNzaWcsIGRhIHdpciBEZWJpYW4tQXJjaGl0ZWt0dXJlbiBoYWJlbiwgZGllIG5pY2h0IG1pdCAiCisiZWluZW0gUHJvemVzc29ybmFtZW4gw7xiZXJlaW5zdGltbWVuLiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTk0CisjLCBuby13cmFwCittc2dpZCAiQkFDS1dBUkQgQ09NUEFUSUJJTElUWSIKK21zZ3N0ciAiUsOcQ0tXw4RSVFNLT01QQVRJQklMSVTDhFQiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTk4Cittc2dpZCAiIgorIlRoZSBERUJfKl9BUkNIX0JJVFMgYW5kIERFQl8qX0FSQ0hfRU5ESUFOIHZhcmlhYmxlcyB3ZXJlIGludHJvZHVjZWQgaW4gZHBrZy0iCisiZGV2IDEuMTUuNC4gVXNpbmcgdGhlbSBpbiBJPGRlYmlhbi9ydWxlcz4gdGh1cyByZXF1aXJlcyBhIGJ1aWxkLWRlcGVuZGVuY3kgIgorIm9uIGRwa2ctZGV2IChFPGd0Pj0gMS4xNS40KS4iCittc2dzdHIgIiIKKyJEaWUgVmFyaWFibGVuIERFQl8qX0FSQ0hfQklUUyB1bmQgREVCXypfQVJDSF9FTkRJQU4gd3VyZGVuIGluIGRwa2ctZGV2ICIKKyIxLjE1LjQgZWluZ2Vmw7xocnQuIFdlcmRlbiBzaWUgaW4gSTxkZWJpYW4vcnVsZXM+IHZlcndhbmR0LCBiZW7DtnRpZ2VuIHNpZSAiCisiZGFoZXIgZWluZSBCYXVhYmjDpG5naWdrZWl0IHZvbiBkcGtnLWRldiAoRTxndD49IDEuMTUuNCkuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjIwMworbXNnaWQgIiIKKyJUaGUgREVCX0hPU1RfQVJDSF9DUFUgYW5kIERFQl9IT1NUX0FSQ0hfT1MgdmFyaWFibGVzIHdlcmUgaW50cm9kdWNlZCBpbiBkcGtnLSIKKyJkZXYgMS4xMy4yLiBCZWZvcmUgdGhpcyBJPGRlYmlhbi9ydWxlcz4gZmlsZXMgdGVuZGVkIHRvIGNoZWNrIHRoZSB2YWx1ZXMgb2YgIgorInRoZSBERUJfSE9TVF9HTlVfQ1BVIG9yIERFQl9IT1NUX0dOVV9UWVBFIHZhcmlhYmxlcyB3aGljaCBoYXZlIGJlZW4gc3ViamVjdCAiCisidG8gY2hhbmdlLiIKK21zZ3N0ciAiIgorIkRpZSBERUJfSE9TVF9BUkNIX0NQVS0gdW5kIERFQl9IT1NUX0FSQ0hfT1MtVmFyaWFibGVuIHd1cmRlbiBpbiBkcGtnLWRldiAiCisiMS4xMy4yIGVpbmdlZsO8aHJ0LiBWb3JoZXIgdGVuZGllcnRlbiBkaWUgSTxkZWJpYW4vcnVsZXM+LURhdGVpZW4gZGF6dSwgZGllICIKKyJXZXJ0ZSBkZXIgREVCX0hPU1RfR05VX0NQVS0gb2RlciBERUJfSE9TVF9HTlVfVFlQRS1WYXJpYWJsZW4genUgw7xiZXJwcsO8ZmVuLCAiCisiZGllIGFiZXIgw4RuZGVydW5nZW4gdW50ZXJsYWdlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjA4Cittc2dpZCAiIgorIldoZXJlIEk8ZGViaWFuL3J1bGVzPiBmaWxlcyBjaGVjayB0aGVzZSB2YXJpYWJsZXMgdG8gZGVjaWRlIGhvdyBvciB3aGF0IHRvICIKKyJjb21waWxlLCB0aGlzIHNob3VsZCBiZSB1cGRhdGVkIHRvIHVzZSB0aGUgbmV3IHZhcmlhYmxlcyBhbmQgdmFsdWVzLiAgWW91ICIKKyJtYXkgd2lzaCB0byByZXRhaW4gYmFja3dhcmRzIGNvbXBhdGliaWxpdHkgd2l0aCBvbGRlciB2ZXJzaW9uIG9mIGRwa2ctZGV2IGJ5ICIKKyJ1c2luZyB0aGUgZm9sbG93aW5nIGNvZGU6IgorbXNnc3RyICIiCisiV28gSTxkZWJpYW4vcnVsZXM+LURhdGVpZW4gZGllc2UgVmFyaWFibGVuIMO8YmVycHLDvGZlbiB1bSBmZXN0enVzdGVsbGVuLCB3aWUgIgorIm9kZXIgd2FzIHp1IGtvbXBpbGllcmVuIGlzdCwgc29sbHRlbiBkaWVzZSBha3R1YWxpc2llcnQgd2VyZGVuLCB1bSBkaWUgbmV1ZW4gIgorIlZhcmlhYmxlbiB1bmQgV2VydGUgenUgdmVyd2VuZGVuLiBTaWUgbcO2Y2h0ZW4gZXZlbnR1ZWxsICIKKyJSw7xja3fDpHJ0c2tvbXBhdGliaWxpdMOkdCB6dSDDpGx0ZXJlbiBWZXJzaW9uZW4gdm9uIERwa2ctZGV2IGVyaGFsdGVuLCBpbmRlbSAiCisiU2llIGRlbiBmb2xnZW5kZW4gQ29kZSB2ZXJ3ZW5kZW46IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjIxMgorIywgbm8td3JhcAorbXNnaWQgIiIKKyJERUJfSE9TVF9BUkNIX0NQVSA6PSAkKHNoZWxsIGRwa2ctYXJjaGl0ZWN0dXJlIC1xREVCX0hPU1RfQVJDSF9DUFUgMkU8Z3Q+L2Rldi9udWxsKVxuIgorIkRFQl9IT1NUX0FSQ0hfT1MgOj0gJChzaGVsbCBkcGtnLWFyY2hpdGVjdHVyZSAtcURFQl9IT1NUX0FSQ0hfT1MgMkU8Z3Q+L2Rldi9udWxsKVxuIgorbXNnc3RyICIiCisiREVCX0hPU1RfQVJDSF9DUFUgOj0gJChzaGVsbCBkcGtnLWFyY2hpdGVjdHVyZSAtcURFQl9IT1NUX0FSQ0hfQ1BVIDJFPGd0Pi9kZXYvbnVsbClcbiIKKyJERUJfSE9TVF9BUkNIX09TIDo9ICQoc2hlbGwgZHBrZy1hcmNoaXRlY3R1cmUgLXFERUJfSE9TVF9BUkNIX09TIDJFPGd0Pi9kZXYvbnVsbClcbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyMjYKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiIyBUYWtlIGFjY291bnQgb2Ygb2xkIGRwa2ctYXJjaGl0ZWN0dXJlIG91dHB1dC5cbiIKKyJpZmVxICgkKERFQl9IT1NUX0FSQ0hfQ1BVKSwpXG4iCisiICBERUJfSE9TVF9BUkNIX0NQVSA6PSAkKHNoZWxsIGRwa2ctYXJjaGl0ZWN0dXJlIC1xREVCX0hPU1RfR05VX0NQVSlcbiIKKyIgIGlmZXEgKCQoREVCX0hPU1RfQVJDSF9DUFUpLHg4Nl82NClcbiIKKyIgICAgREVCX0hPU1RfQVJDSF9DUFUgOj0gYW1kNjRcbiIKKyIgIGVuZGlmXG4iCisiZW5kaWZcbiIKKyJpZmVxICgkKERFQl9IT1NUX0FSQ0hfT1MpLClcbiIKKyIgIERFQl9IT1NUX0FSQ0hfT1MgOj0gJChzdWJzdCAtZ251LCwkKHNoZWxsIGRwa2ctYXJjaGl0ZWN0dXJlIC1xREVCX0hPU1RfR05VX1NZU1RFTSkpXG4iCisiICBpZmVxICgkKERFQl9IT1NUX0FSQ0hfT1MpLGdudSlcbiIKKyIgICAgREVCX0hPU1RfQVJDSF9PUyA6PSBodXJkXG4iCisiICBlbmRpZlxuIgorImVuZGlmXG4iCittc2dzdHIgIiIKKyIjIEJlcsO8Y2tzaWNodGlnZSBkaWUgQXVzZ2FiZSBkZXMgYWx0ZW4gRHBrZy1hcmNoaXRlY3R1cmUuXG4iCisiaWZlcSAoJChERUJfSE9TVF9BUkNIX0NQVSksKVxuIgorIiAgREVCX0hPU1RfQVJDSF9DUFUgOj0gJChzaGVsbCBkcGtnLWFyY2hpdGVjdHVyZSAtcURFQl9IT1NUX0dOVV9DUFUpXG4iCisiICBpZmVxICgkKERFQl9IT1NUX0FSQ0hfQ1BVKSx4ODZfNjQpXG4iCisiICAgIERFQl9IT1NUX0FSQ0hfQ1BVIDo9IGFtZDY0XG4iCisiICBlbmRpZlxuIgorImVuZGlmXG4iCisiaWZlcSAoJChERUJfSE9TVF9BUkNIX09TKSwpXG4iCisiICBERUJfSE9TVF9BUkNIX09TIDo9ICQoc3Vic3QgLWdudSwsJChzaGVsbCBkcGtnLWFyY2hpdGVjdHVyZSAtcURFQl9IT1NUX0dOVV9TWVNURU0pKVxuIgorIiAgaWZlcSAoJChERUJfSE9TVF9BUkNIX09TKSxnbnUpXG4iCisiICAgIERFQl9IT1NUX0FSQ0hfT1MgOj0gaHVyZFxuIgorIiAgZW5kaWZcbiIKKyJlbmRpZlxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjIyOQorbXNnaWQgIkFuZCBzaW1pbGFybHkgZm9yIERFQl9CVUlMRF9BUkNIX0NQVSBhbmQgREVCX0JVSUxEX0FSQ0hfT1MuIgorbXNnc3RyICJVbmQgw6RobmxpY2ggZsO8ciBERUJfQlVJTERfQVJDSF9DUFUgdW5kIERFQl9CVUlMRF9BUkNIX09TLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyMzIKK21zZ2lkICIiCisiSWYgeW91IHN0aWxsIHdpc2ggdG8gc3VwcG9ydCB2ZXJzaW9ucyBvZiBkcGtnLWRldiB0aGF0IGRpZCBub3QgaW5jbHVkZSAiCisiQjxkcGtnLWFyY2hpdGVjdHVyZT4sIHRoZSBmb2xsb3dpbmcgZG9lcyB0aGUgam9iOiIKK21zZ3N0ciAiIgorIkZhbGxzIFNpZSBub2NoIFZlcnNpb25lbiB2b24gRHBrZy1kZXYsIGRpZSBCPGRwa2ctYXJjaGl0ZWN0dXJlPiBuaWNodCAiCisiZW50aGllbHRlbiwgdW50ZXJzdMO8dHplbiB3b2xsZW4sIGVybGVkaWd0IGRpZXMgZm9sZ2VuZGVzOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyNDIKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiXFwmXFxzLTFERUJfQlVJTERfQVJDSFxcczAgOj0gJChzaGVsbCBkcGtnIC0tcHJpbnQtYXJjaGl0ZWN0dXJlKVxuIgorIlxcJlxccy0xREVCX0JVSUxEX0dOVV9DUFVcXHMwIDo9ICQocGF0c3Vic3QgaHVyZC0lLCUsJChcXHMtMURFQl9CVUlMRF9BUkNIXFxzMCkpXG4iCisiaWZlcSAoJChmaWx0ZXItb3V0IGh1cmQtJSwkKFxccy0xREVCX0JVSUxEX0FSQ0hcXHMwKSksKVxuIgorIiAgXFxzLTFERUJfQlVJTERfR05VX1NZU1RFTVxcczAgOj0gZ251XG4iCisiZWxzZVxuIgorIiAgXFxzLTFERUJfQlVJTERfR05VX1NZU1RFTVxcczAgOj0gbGludXgtZ251XG4iCisiZW5kaWZcbiIKKyJERUJfQlVJTERfR05VX1RZUEU9JChcXHMtMURFQl9CVUlMRF9HTlVfQ1BVXFxzMCktJChcXHMtMURFQl9CVUlMRF9HTlVfU1lTVEVNXFxzMClcbiIKK21zZ3N0ciAiIgorIlxcJlxccy0xREVCX0JVSUxEX0FSQ0hcXHMwIDo9ICQoc2hlbGwgZHBrZyAtLXByaW50LWFyY2hpdGVjdHVyZSlcbiIKKyJcXCZcXHMtMURFQl9CVUlMRF9HTlVfQ1BVXFxzMCA6PSAkKHBhdHN1YnN0IGh1cmQtJSwlLCQoXFxzLTFERUJfQlVJTERfQVJDSFxcczApKVxuIgorImlmZXEgKCQoZmlsdGVyLW91dCBodXJkLSUsJChcXHMtMURFQl9CVUlMRF9BUkNIXFxzMCkpLClcbiIKKyIgIFxccy0xREVCX0JVSUxEX0dOVV9TWVNURU1cXHMwIDo9IGdudVxuIgorImVsc2VcbiIKKyIgIFxccy0xREVCX0JVSUxEX0dOVV9TWVNURU1cXHMwIDo9IGxpbnV4LWdudVxuIgorImVuZGlmXG4iCisiREVCX0JVSUxEX0dOVV9UWVBFPSQoXFxzLTFERUJfQlVJTERfR05VX0NQVVxcczApLSQoXFxzLTFERUJfQlVJTERfR05VX1NZU1RFTVxcczApXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjQ3CisjLCBuby13cmFwCittc2dpZCAiIgorIlxcJlxccy0xREVCX0hPU1RfQVJDSFxcczAgOj0gJChcXHMtMURFQl9CVUlMRF9BUkNIXFxzMClcbiIKKyJcXCZcXHMtMURFQl9IT1NUX0dOVV9DUFVcXHMwIDo9ICQoXFxzLTFERUJfQlVJTERfR05VX0NQVVxcczApXG4iCisiXFwmXFxzLTFERUJfSE9TVF9HTlVfU1lTVEVNXFxzMCA6PSAkKFxccy0xREVCX0JVSUxEX0dOVV9TWVNURU1cXHMwKVxuIgorIlxcJlxccy0xREVCX0hPU1RfR05VX1RZUEVcXHMwIDo9ICQoXFxzLTFERUJfQlVJTERfR05VX1RZUEVcXHMwKVxuIgorbXNnc3RyICIiCisiXFwmXFxzLTFERUJfSE9TVF9BUkNIXFxzMCA6PSAkKFxccy0xREVCX0JVSUxEX0FSQ0hcXHMwKVxuIgorIlxcJlxccy0xREVCX0hPU1RfR05VX0NQVVxcczAgOj0gJChcXHMtMURFQl9CVUlMRF9HTlVfQ1BVXFxzMClcbiIKKyJcXCZcXHMtMURFQl9IT1NUX0dOVV9TWVNURU1cXHMwIDo9ICQoXFxzLTFERUJfQlVJTERfR05VX1NZU1RFTVxcczApXG4iCisiXFwmXFxzLTFERUJfSE9TVF9HTlVfVFlQRVxcczAgOj0gJChcXHMtMURFQl9CVUlMRF9HTlVfVFlQRVxcczApXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjUxCittc2dpZCAiIgorIlB1dCBhIHN1YnNldCBvZiB0aGVzZSBsaW5lcyBhdCB0aGUgdG9wIG9mIHlvdXIgZGViaWFuL3J1bGVzIGZpbGU7IHRoZXNlICIKKyJkZWZhdWx0IHZhbHVlcyB3aWxsIGJlIG92ZXJ3cml0dGVuIGlmIGRwa2ctYXJjaGl0ZWN0dXJlIGlzIHVzZWQuIgorbXNnc3RyICIiCisiU2V0emVuIFNpZSBlaW5lIFVudGVybWVuZ2UgZGllc2VyIFplaWxlbiBvYmVuIGluIElocmUgZGViaWFuL3J1bGVzLURhdGVpOyAiCisiZGllc2UgU3RhbmRhcmR3ZXJ0ZSB3ZXJkZW4gw7xiZXJzY2hyaWViZW4sIGZhbGxzIERwa2ctYXJjaGl0ZWN0dXJlIHZlcndlbmRldCAiCisid2lyZC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjU4Cittc2dpZCAiIgorIllvdSBkb24ndCBuZWVkIHRoZSBmdWxsIHNldC4gQ2hvb3NlIGEgY29uc2lzdGVudCBzZXQgd2hpY2ggY29udGFpbnMgdGhlICIKKyJ2YWx1ZXMgeW91IHVzZSBpbiB0aGUgcnVsZXMgZmlsZS4gRm9yIGV4YW1wbGUsIGlmIHlvdSBvbmx5IG5lZWQgdGhlIGhvc3QgIgorIkRlYmlhbiBhcmNoaXRlY3R1cmUsIGBERUJfSE9TVF9BUkNIPVxcYGRwa2cgLS1wcmludC1hcmNoaXRlY3R1cmVcXGAnIGlzICIKKyJzdWZmaWNpZW50ICh0aGlzIGlzIGluZGVlZCB0aGUgRGViaWFuIGFyY2hpdGVjdHVyZSBvZiB0aGUgYnVpbGQgbWFjaGluZSwgYnV0ICIKKyJyZW1lbWJlciB0aGF0IHdlIGFyZSBvbmx5IHRyeWluZyB0byBiZSBiYWNrd2FyZCBjb21wYXRpYmxlIHdpdGggbmF0aXZlICIKKyJjb21waWxhdGlvbikuIgorbXNnc3RyICIiCisiU2llIGJlbsO2dGlnZW4gbmljaHQgZGVuIGdhbnplbiBTYXR6LiBXw6RobGVuIFNpZSBlaW5lbiBrb25zaXN0ZW50ZW4gU2F0eiwgZGVyICIKKyJudXIgZGllIFdlcnRlIGVudGjDpGx0LCBkaWUgU2llIGluIGRlciBydWxlcy1EYXRlaSB2ZXJ3ZW5kZW4uIEZhbGxzIFNpZSAiCisiYmVpc3BpZWxzd2Vpc2UgbnVyIGRpZSBIb3N0LURlYmlhbi1BcmNoaXRla3R1ciBiZW7DtnRpZ2VuLCBpc3QgwrtERUJfSE9TVF9BUkNIPSIKKyJcXGBkcGtnIC0tcHJpbnQtYXJjaGl0ZWN0dXJlXFwgYXVzcmVpY2hlbmQgKGRpZXMgaXN0IGluIGRlciBUYXQgZGllIERlYmlhbi0iCisiQXJjaGl0ZWt0dXIgZGVyIEJhdW1hc2NoaW5lLCBhYmVyIGRlbmtlbiBTaWUgZGFyYW4sIGRhc3Mgd2lyIG51ciB6dXIgIgorIsK7bmF0w7xybGljaGVuwqsgS29tcGlsaWVydW5nIHLDvGNrd8OkcnRza29tcGF0aWJlbCBzZWluIHdvbGxlbikuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI2MQorbXNnaWQgIiIKKyJUaGUgQjwtZT4gYW5kIEI8LWk+IG9wdGlvbnMgd2VyZSBvbmx5IGludHJvZHVjZWQgaW4gcmVsYXRpdmVseSByZWNlbnQgIgorInZlcnNpb25zIG9mIEI8ZHBrZy1hcmNoaXRlY3R1cmU+IChzaW5jZSBkcGtnIDEuMTMuMTMpLiIKK21zZ3N0ciAiIgorIkRpZSBCPC1lPi0gdW5kIEI8LWk+LU9wdGlvbmVuIHd1cmRlbiBlcnN0IGluIHJlbGF0aXYgbmV1ZW4gVmVyc2lvbmVuIHZvbiAiCisiQjxkcGtnLWFyY2hpdGVjdHVyZT4gZWluZ2Vmw7xocnQgKHNlaXQgRHBrZyAxLjEzLjEzKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjY1Cittc2dpZCAiIgorIkI8ZHBrZy1idWlsZHBhY2thZ2U+IGFjY2VwdHMgdGhlIEI8LWE+IG9wdGlvbiBhbmQgcGFzc2VzIGl0IHRvIEI8ZHBrZy0iCisiYXJjaGl0ZWN0dXJlPi4gT3RoZXIgZXhhbXBsZXM6IgorbXNnc3RyICIiCisiQjxkcGtnLWJ1aWxkcGFja2FnZT4gYWt6ZXB0aWVydCBkaWUgQjwtYT4tT3B0aW9uIHVuZCBnaWJ0IGRpZXMgYW4gQjxkcGtnLSIKKyJhcmNoaXRlY3R1cmU+IHdlaXRlci4gV2VpdGVyZSBCZWlzcGllbGU6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI2NworbXNnaWQgIkNDPWkzODYtZ251LWdjYyBkcGtnLWFyY2hpdGVjdHVyZSAtYyBkZWJpYW4vcnVsZXMgYnVpbGQiCittc2dzdHIgIkNDPWkzODYtZ251LWdjYyBkcGtnLWFyY2hpdGVjdHVyZSAtYyBkZWJpYW4vcnVsZXMgYnVpbGQiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjY5Cittc2dpZCAiZXZhbCBcXGBkcGtnLWFyY2hpdGVjdHVyZSAtdVxcYCIKK21zZ3N0ciAiZXZhbCBcXGBkcGtnLWFyY2hpdGVjdHVyZSAtdVxcYCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyNzIKK21zZ2lkICIiCisiQ2hlY2sgaWYgYW4gYXJjaGl0ZWN0dXJlIGlzIGVxdWFsIHRvIHRoZSBjdXJyZW50IGFyY2hpdGVjdHVyZSBvciBhIGdpdmVuIG9uZToiCittc2dzdHIgIiIKKyLDnGJlcnByw7xmZSwgb2IgZWluZSBBcmNoaXRla3R1ciBpZGVudGlzY2ggenUgZGVyIGFrdHVlbGxlbiBBcmNoaXRla3R1ciBvZGVyICIKKyJlaW5lciDDvGJlcmdlYmVuZW4gaXN0OiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyNzQKK21zZ2lkICJkcGtnLWFyY2hpdGVjdHVyZSAtZWxpbnV4LWFscGhhIgorbXNnc3RyICJkcGtnLWFyY2hpdGVjdHVyZSAtZWxpbnV4LWFscGhhIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI3NgorbXNnaWQgImRwa2ctYXJjaGl0ZWN0dXJlIC1hbWlwcyAtZWxpbnV4LW1pcHMiCittc2dzdHIgImRwa2ctYXJjaGl0ZWN0dXJlIC1hbWlwcyAtZWxpbnV4LW1pcHMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6Mjc5Cittc2dpZCAiIgorIkNoZWNrIGlmIHRoZSBjdXJyZW50IGFyY2hpdGVjdHVyZSBvciBhbiBhcmNoaXRlY3R1cmUgcHJvdmlkZWQgd2l0aCAtYSBhcmUgIgorIkxpbnV4IHN5c3RlbXM6IgorbXNnc3RyICIiCisiw5xiZXJwcsO8ZmUsIG9iIGRpZSBha3R1ZWxsZSBvZGVyIGVpbmUgbWl0IC1hIMO8YmVyZ2ViZW5lIEFyY2hpdGVrdHVyIExpbnV4LSIKKyJTeXN0ZW1lIHNpbmQ6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI4MQorbXNnaWQgImRwa2ctYXJjaGl0ZWN0dXJlIC1pbGludXgtYW55IgorbXNnc3RyICJkcGtnLWFyY2hpdGVjdHVyZSAtaWxpbnV4LWFueSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyODMKK21zZ2lkICJkcGtnLWFyY2hpdGVjdHVyZSAtYWkzODYgLWlsaW51eC1hbnkiCittc2dzdHIgImRwa2ctYXJjaGl0ZWN0dXJlIC1haTM4NiAtaWxpbnV4LWFueSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyODgKK21zZ2lkICIiCisiQWxsIHRoZXNlIGZpbGVzIGhhdmUgdG8gYmUgcHJlc2VudCBmb3IgQjxkcGtnLWFyY2hpdGVjdHVyZT4gdG8gd29yay4gVGhlaXIgIgorImxvY2F0aW9uIGNhbiBiZSBvdmVycmlkZGVuIGF0IHJ1bnRpbWUgd2l0aCB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGUgIgorIkI8RFBLR19EQVRBRElSPi4iCittc2dzdHIgIiIKKyJBbGxlIGRpZXNlIERhdGVpZW4gbcO8c3NlbiB2b3JoYW5kZW4gc2VpbiwgZGFtaXQgQjxkcGtnLWFyY2hpdGVjdHVyZT4gIgorImZ1bmt0aW9uaWVydC4gSWhyIE9ydCBrYW5uIHp1ciBMYXVmemVpdCBtaXQgZGVyIFVtZ2VidW5nc3ZhcmlhYmxlICIKKyJCPERQS0dfREFUQURJUj4gw7xiZXJzY2hyaWViZW4gd2VyZGVuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6Mjg4CisjLCBuby13cmFwCittc2dpZCAiSTwvdXNyL3NoYXJlL2Rwa2cvY3B1dGFibGU+IgorbXNnc3RyICJJPC91c3Ivc2hhcmUvZHBrZy9jcHV0YWJsZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjkxCittc2dpZCAiVGFibGUgb2Yga25vd24gQ1BVIG5hbWVzIGFuZCBtYXBwaW5nIHRvIHRoZWlyIEdOVSBuYW1lLiIKK21zZ3N0ciAiVGFiZWxsZSBkZXIgYmVrYW5udGVuIENQVS1OYW1lbiB1bmQgQWJiaWxkdW5nZW4gYXVmIGlocmUgR05VLU5hbWVuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjkxCisjLCBuby13cmFwCittc2dpZCAiSTwvdXNyL3NoYXJlL2Rwa2cvb3N0YWJsZT4iCittc2dzdHIgIkk8L3Vzci9zaGFyZS9kcGtnL29zdGFibGU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI5NAorbXNnaWQgIlRhYmxlIG9mIGtub3duIG9wZXJhdGluZyBzeXN0ZW0gbmFtZXMgYW5kIG1hcHBpbmcgdG8gdGhlaXIgR05VIG5hbWUuIgorbXNnc3RyICIiCisiVGFiZWxsZSBkZXIgYmVrYW5udGVuIEJldHJpZWJzc3lzdGVtbmFtZW4gdW5kIEFiYmlsZHVuZ2VuIGF1ZiBpaHJlIEdOVS1OYW1lbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI5NAorIywgbm8td3JhcAorbXNnaWQgIkk8L3Vzci9zaGFyZS9kcGtnL3RyaXBsZXR0YWJsZT4iCittc2dzdHIgIkk8L3Vzci9zaGFyZS9kcGtnL3RyaXBsZXR0YWJsZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6Mjk4Cittc2dpZCAiIgorIk1hcHBpbmcgYmV0d2VlbiBEZWJpYW4gYXJjaGl0ZWN0dXJlIHRyaXBsZXRzIGFuZCBEZWJpYW4gYXJjaGl0ZWN0dXJlIG5hbWVzLiIKK21zZ3N0ciAiIgorIkFiYmlsZHVuZyB6d2lzY2hlbiBkZW4gRGViaWFuLUFyY2hpdGVrdHVyLVRyaXBsZXR0cyB1bmQgZGVuIERlYmlhbi0iCisiQXJjaGl0ZWt0dXJuYW1lbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MzAyCittc2dpZCAiQjxkcGtnLWJ1aWxkcGFja2FnZT4oMSksIEI8ZHBrZy1jcm9zcz4oMSkuIgorbXNnc3RyICJCPGRwa2ctYnVpbGRwYWNrYWdlPigxKSwgQjxkcGtnLWNyb3NzPigxKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MzA3Cittc2dpZCAiIgorIkI8ZHBrZy1hcmNoaXRlY3R1cmU+IGFuZCB0aGlzIG1hbiBwYWdlIHdlcmUgaW5pdGlhbGx5IHdyaXR0ZW4gYnkgTWFyY3VzICIKKyJCcmlua21hbm4gRTxsdD5icmlua21kQGRlYmlhbi5vcmdFPGd0Pi4iCittc2dzdHIgIiIKKyJCPGRwa2ctYXJjaGl0ZWN0dXJlPiB1bmQgZGllc2UgSGFuZGJ1Y2hzZWl0ZSB3dXJkZW4gdXJzcHLDvG5nbGljaCB2b24gTWFyY3VzICIKKyJCcmlua21hbm4gRTxsdD5icmlua21kQGRlYmlhbi5vcmdFPGd0PiBnZXNjaHJpZWJlbi4iCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLmNmZy41OjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLmNmZyIKK21zZ3N0ciAiZHBrZy5jZmciCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLmNmZy41OjEKKyMsIG5vLXdyYXAKK21zZ2lkICIyMDA5LTA5LTA1IgorbXNnc3RyICIyMDA5LTA5LTA1IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLmNmZy41OjQKK21zZ2lkICJkcGtnLmNmZyAtIGRwa2cgY29uZmlndXJhdGlvbiBmaWxlIgorbXNnc3RyICJkcGtnLmNmZyAtIGRwa2cgS29uZmlndXJhdGlvbnNkYXRlaSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy5jZmcuNToxMQorbXNnaWQgIiIKKyJUaGlzIGZpbGUgY29udGFpbnMgZGVmYXVsdCBvcHRpb25zIGZvciBkcGtnLiBFYWNoIGxpbmUgY29udGFpbnMgYSBzaW5nbGUgIgorIm9wdGlvbiB3aGljaCBpcyBleGFjdGx5IHRoZSBzYW1lIGFzIGEgbm9ybWFsIGNvbW1hbmQgbGluZSBvcHRpb24gZm9yIGRwa2cgIgorImV4Y2VwdCBmb3IgdGhlIGxlYWRpbmcgZGFzaGVzIHdoaWNoIGFyZSBub3QgdXNlZCBoZXJlLiBRdW90ZXMgc3Vycm91bmRpbmcgIgorIm9wdGlvbiB2YWx1ZXMgYXJlIHN0cmlwcGVkLiBDb21tZW50cyBhcmUgYWxsb3dlZCBieSBzdGFydGluZyBhIGxpbmUgd2l0aCBhICIKKyJoYXNoIHNpZ24gKFwiQjwjPlwiKS4iCittc2dzdHIgIiIKKyJEaWVzZSBEYXRlaSBlbnRow6RsdCBTdGFuZGFyZG9wdGlvbmVuIGbDvHIgZHBrZy4gSmVkZSBaZWlsZSBlbnRow6RsdCBlaW5lICIKKyJlaW56ZWxuZSBPcHRpb24sIGRpZSBleGFrdCBkaWUgZ2xlaWNoZSB3aWUgZsO8ciBkaWUgbm9ybWFsZW4gS29tbWFuZG96ZWlsZW4tIgorIk9wdGlvbiB2b24gZHBrZyBzaW5kLCBhYmdlc2VoZW4gdm9uIGRlbiBlaW5sZWl0ZW5kZW4gR2VkYW5rZW5zdHJpY2hlbiwgZGllICIKKyJoaWVyIG5pY2h0IHZlcndlbmRldCB3ZXJkZW4uIEFuZsO8aHJ1bmdzemVpY2hlbiAowrtRdW90ZXPCqykgdW0gT3B0aW9uc3dlcnRlICIKKyJ3ZXJkZW4gZW50ZmVybnQuIEtvbW1lbnRhcmUgc2luZCBkdXJjaCBFaW5sZWl0ZW4gZWluZXIgWmVpbGUgbWl0IGVpbmVtICIKKyJSYXV0ZW56ZWljaGVuIChcIkI8Iz5cIikgZXJsYXVidC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuY2ZnLjU6MTQKK21zZ2lkICJJPC9ldGMvZHBrZy9kcGtnLmNmZy5kL1swLTlhLXpBLVpfLV0qPiIKK21zZ3N0ciAiSTwvZXRjL2Rwa2cvZHBrZy5jZmcuZC9bMC05YS16QS1aXy1dKj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuY2ZnLjU6MTgKK21zZ2lkICJJPH4vLmRwa2cuY2ZnPiIKK21zZ3N0ciAiSTx+Ly5kcGtnLmNmZz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuY2ZnLjU6MjQgZHBrZy1kaXZlcnQuODoxMzQgZHBrZy1xdWVyeS4xOjIyMiBkcGtnLXN0YXRvdmVycmlkZS44Ojg2Cittc2dpZCAiQjxkcGtnPigxKS4iCittc2dzdHIgIkI8ZHBrZz4oMSkuIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1idWlsZGZsYWdzLjE6MQorIywgbm8td3JhcAorbXNnaWQgImRwa2ctYnVpbGRmbGFncyIKK21zZ3N0ciAiZHBrZy1idWlsZGZsYWdzIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1idWlsZGZsYWdzLjE6MQorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICIyMDExLTA5LTA5IgorbXNnaWQgIjIwMTEtMDktMTMiCittc2dzdHIgIjIwMTEtMDktMDkiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjQKK21zZ2lkICJkcGtnLWJ1aWxkZmxhZ3MgLSByZXR1cm5zIGJ1aWxkIGZsYWdzIHRvIHVzZSBkdXJpbmcgcGFja2FnZSBidWlsZCIKK21zZ3N0ciAiZHBrZy1idWlsZGZsYWdzIC0gbGllZmVydCBCYXVzY2hhbHRlciB6dW0gRWluc2F0eiBiZWltIFBha2V0YmF1IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo4Cittc2dpZCAiQjxkcGtnLWJ1aWxkZmxhZ3M+IFtJPG9wdGlvbj4uLi5dIFtJPGNvbW1hbmQ+XSIKK21zZ3N0ciAiQjxkcGtnLWJ1aWxkZmxhZ3M+IFtJPE9wdGlvbj4uLi5dIFtJPEJlZmVobD5dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMgorbXNnaWQgIiIKKyJCPGRwa2ctYnVpbGRmbGFncz4gaXMgYSB0b29sIHRvIHJldHJpZXZlIGNvbXBpbGF0aW9uIGZsYWdzIHRvIHVzZSBkdXJpbmcgIgorImJ1aWxkIG9mIERlYmlhbiBwYWNrYWdlcy4iCittc2dzdHIgIiIKKyJCPGRwa2ctYnVpbGRmbGFncz4gaXN0IGVpbiBXZXJremV1ZywgZGFzIHp1bSBBYmZyYWdlbiBkZXIgenUgdmVyd2VuZGVuZGVuICIKKyJLb21waWxpZXJ1bmdzc2NoYWx0ZXIgZsO8ciBkZW4gQmF1IHZvbiBEZWJpYW4tUGFrZXRlbiBlaW5nZXNldHp0IHdpcmQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNQorbXNnaWQgIiIKKyJUaGUgZGVmYXVsdCBmbGFncyBhcmUgZGVmaW5lZCBieSB0aGUgdmVuZG9yIGJ1dCB0aGV5IGNhbiBiZSBleHRlbmRlZC8iCisib3ZlcnJpZGVuIGluIHNldmVyYWwgd2F5czoiCittc2dzdHIgIiIKKyJEaWUgU3RhbmRhcmRzY2hhbHRlciB3ZXJkZW4gdm9tIExpZWZlcmFudGVuIGRlZmluaWVydCwgc2llIGvDtm5uZW4gYXVmICIKKyJtZWhyZXJlIEFydGVuIGVyd2VpdGVydC/DvGJlcnNjaHJpZWJlbiB3ZXJkZW46IgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTUKKyMsIG5vLXdyYXAKK21zZ2lkICIxLiIKK21zZ3N0ciAiMS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE3Cittc2dpZCAic3lzdGVtLXdpZGUgd2l0aCBCPC9ldGMvZHBrZy9idWlsZGZsYWdzLmNvbmY+OyIKK21zZ3N0ciAic3lzdGVtd2VpdCBtaXQgQjwvZXRjL2Rwa2cvYnVpbGRmbGFncy5jb25mPiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE3CisjLCBuby13cmFwCittc2dpZCAiMi4iCittc2dzdHIgIjIuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyMAorbXNnaWQgIiIKKyJmb3IgdGhlIGN1cnJlbnQgdXNlciB3aXRoIEI8JFhER19DT05GSUdfSE9NRS9kcGtnL2J1aWxkZmxhZ3MuY29uZj4gd2hlcmUgQjwiCisiJFhER19DT05GSUdfSE9NRT4gZGVmYXVsdHMgdG8gQjwkSE9NRS8uY29uZmlnPjsiCittc2dzdHIgIiIKKyJmw7xyIGRlbiBha3R1ZWxsZW4gQmVudXR6ZXIgbWl0IEI8JFhER19DT05GSUdfSE9NRS9kcGtnL2J1aWxkZmxhZ3MuY29uZj4sICIKKyJ3b2JlaSBCPCRYREdfQ09ORklHX0hPTUU+IHN0YW5kYXJkbcOkw59pZyBhdWYgQjwkSE9NRS8uY29uZmlnPiBnZXNldHp0IGlzdCIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjIwCisjLCBuby13cmFwCittc2dpZCAiMy4iCittc2dzdHIgIjMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyMworbXNnaWQgIiIKKyJ0ZW1wb3JhcmlseSBieSB0aGUgdXNlciB3aXRoIGVudmlyb25tZW50IHZhcmlhYmxlcyAoc2VlIHNlY3Rpb24gIgorIkI8RU5WSVJPTk1FTlQ+KTsiCittc2dzdHIgIiIKKyJ0ZW1wb3LDpHIgZHVyY2ggZGVuIEJlbnV0emVyIG1pdHRlbHMgVW1nZWJ1bmdzdmFyaWFibGVuIChzaWVoZSBBYnNjaG5pdHQgIgorIkI8VU1HRUJVTkc+KSIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjIzCisjLCBuby13cmFwCittc2dpZCAiNC4iCittc2dzdHIgIjQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyNgorbXNnaWQgIiIKKyJkeW5hbWljYWxseSBieSB0aGUgcGFja2FnZSBtYWludGFpbmVyIHdpdGggZW52aXJvbm1lbnQgdmFyaWFibGVzIHNldCB2aWEgIgorIkI8ZGViaWFuL3J1bGVzPiAoc2VlIHNlY3Rpb24gQjxFTlZJUk9OTUVOVD4pLiIKK21zZ3N0ciAiIgorImR5bmFtaXNjaCBkdXJjaCBkZW4gUGFrZXR2ZXJ3YWx0ZXIgbWl0dGVscyBVbWdlYnVuZ3N2YXJpYWJsZW4sIGRpZSDDvGJlciAiCisiQjxkZWJpYW4vcnVsZXM+IGdlc2V0enQgd3VyZGVuIChzaWVoZSBBYnNjaG5pdHQgQjxVTUdFQlVORz4pIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyOAorbXNnaWQgIlRoZSBjb25maWd1cmF0aW9uIGZpbGVzIGNhbiBjb250YWluIHR3byB0eXBlcyBvZiBkaXJlY3RpdmVzOiIKK21zZ3N0ciAiRGllIEtvbmZpZ3VyYXRpb25zZGF0ZWllbiBrw7ZubmVuIHp3ZWkgQXJ0ZW4gdm9uIERpcmVrdGl2ZW4gZW50aGFsdGVuOiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjI4CisjLCBuby13cmFwCittc2dpZCAiQjxTRVQ+STwgZmxhZyB2YWx1ZT4iCittc2dzdHIgIkI8U0VUPkk8IFNjaGFsdGVyIFdlcnQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTozMQorbXNnaWQgIk92ZXJyaWRlIHRoZSBmbGFnIG5hbWVkIEk8ZmxhZz4gdG8gaGF2ZSB0aGUgdmFsdWUgSTx2YWx1ZT4uIgorbXNnc3RyICIiCisiw5xiZXJzY2hyZWlidCBkZW4gU2NoYWx0ZXIgbmFtZW5zIEk8U2NoYWx0ZXI+LCB1bSBkZW4gV2VydCBJPFdlcnQ+IHp1ICIKKyJlcmhhbHRlbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTozMQorIywgbm8td3JhcAorbXNnaWQgIkI8U1RSSVA+STwgZmxhZyB2YWx1ZT4iCittc2dzdHIgIkI8U1RSSVA+STwgU2NoYWx0ZXIgV2VydD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjM0Cittc2dpZCAiIgorIlN0cmlwIGZyb20gdGhlIGZsYWcgbmFtZWQgSTxmbGFnPiBhbGwgdGhlIGJ1aWxkIGZsYWdzIGxpc3RlZCBpbiBJPHZhbHVlPi4iCittc2dzdHIgIiIKKyJBdXMgZGVtIFNjaGFsdGVyIG5hbWVucyBJPFNjaGFsdGVyPiBhbGxlIGluIEk8V2VydD4gYXVmZ2Vmw7xocnRlbiBCYXVzY2hhbHRlciAiCisiZW50ZmVybmVuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MzQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPEFQUEVORD5JPCBmbGFnIHZhbHVlPiIKK21zZ3N0ciAiQjxBUFBFTkQ+STwgU2NoYWx0ZXIgV2VydD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjM4Cittc2dpZCAiIgorIkV4dGVuZCB0aGUgZmxhZyBuYW1lZCBJPGZsYWc+IGJ5IGFwcGVuZGluZyB0aGUgb3B0aW9ucyBnaXZlbiBpbiBJPHZhbHVlPi4gIEEgIgorInNwYWNlIGlzIHByZXBlbmRlZCB0byB0aGUgYXBwZW5kZWQgdmFsdWUgaWYgdGhlIGZsYWcncyBjdXJyZW50IHZhbHVlIGlzIG5vbi0iCisiZW1wdHkuIgorbXNnc3RyICIiCisiRXJ3ZWl0ZXJ0IGRlbiBTY2hhbHRlciBuYW1lbnMgSTxTY2hhbHRlcj4gZHVyY2ggQW5ow6RuZ2VuIGRlciBpbiBJPFdlcnQ+ICIKKyJhbmdlZ2ViZW5lbiBPcHRpb25lbi4gRWluIExlZXJ6ZWljaGVuIHdpcmQgdm9yIGRlbiBhbmdlaMOkbmd0ZW4gV2VydCAiCisidm9yYW5nZXN0ZWxsdCwgZmFsbHMgZGVyIGRlcnplaXRpZ2UgV2VydCBuaWNodCBsZWVyIGlzdC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTozOAorIywgbm8td3JhcAorbXNnaWQgIkI8UFJFUEVORD5JPCBmbGFnIHZhbHVlPiIKK21zZ3N0ciAiQjxQUkVQRU5EPkk8IFNjaGFsdGVyIFdlcnQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo0MgorbXNnaWQgIiIKKyJFeHRlbmQgdGhlIGZsYWcgbmFtZWQgSTxmbGFnPiBieSBwcmVwZW5kaW5nIHRoZSBvcHRpb25zIGdpdmVuIGluIEk8dmFsdWU+LiAgIgorIkEgc3BhY2UgaXMgYXBwZW5kZWQgdG8gdGhlIHByZXBlbmRlZCB2YWx1ZSBpZiB0aGUgZmxhZydzIGN1cnJlbnQgdmFsdWUgaXMgIgorIm5vbi1lbXB0eS4iCittc2dzdHIgIiIKKyJFcndlaXRlcnQgZGVuIFNjaGFsdGVyIG5hbWVucyBJPFNjaGFsdGVyPiBkdXJjaCBWb3JhbnN0ZWxsZW4gZGVyIGluIEk8V2VydD4gIgorImFuZ2VnZWJlbmVuIE9wdGlvbmVuLiBFaW4gTGVlcnplaWNoZW4gd2lyZCBoaW50ZXIgZGVuIHZvcmFuZ2VzdGVsbHRlbiBXZXJ0ICIKKyJhbmdlaMOkbmd0LCBmYWxscyBkZXIgZGVyemVpdGlnZSBXZXJ0IG5pY2h0IGxlZXIgaXN0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6NDUKK21zZ2lkICIiCisiVGhlIGNvbmZpZ3VyYXRpb24gZmlsZXMgY2FuIGNvbnRhaW4gY29tbWVudHMgb24gbGluZXMgc3RhcnRpbmcgd2l0aCBhIGhhc2ggIgorIigjKS4gRW1wdHkgbGluZXMgYXJlIGFsc28gaWdub3JlZC4iCittc2dzdHIgIiIKKyJEaWUgS29uZmlndXJhdGlvbnNkYXRlaWVuIGvDtm5uZW4gS29tbWVudGFyZSBhdWYgWmVpbGVuIGVudGhhbHRlbiwgZGllIG1pdCAiCisiZWluZXIgUmF1dGUgKCMpIGJlZ2lubmVuLiBMZWVyZSBaZWlsZW4gd2VyZGVuIGF1Y2ggaWdub3JpZXJ0LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjQ2CisjLCBuby13cmFwCittc2dpZCAiQjwtLWR1bXA+IgorbXNnc3RyICJCPC0tZHVtcD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjUxCittc2dpZCAiIgorIlByaW50IHRvIHN0YW5kYXJkIG91dHB1dCBhbGwgY29tcGlsYXRpb24gZmxhZ3MgYW5kIHRoZWlyIHZhbHVlcy4gSXQgcHJpbnRzICIKKyJvbmUgZmxhZyBwZXIgbGluZSBzZXBhcmF0ZWQgZnJvbSBpdHMgdmFsdWUgYnkgYW4gZXF1YWwgc2lnbiAiCisiKFwiSTxmbGFnPj1JPHZhbHVlPlwiKS4gVGhpcyBpcyB0aGUgZGVmYXVsdCBhY3Rpb24uIgorbXNnc3RyICIiCisiQXVmIGRlciBTdGFuZGFyZGF1c2dhYmUgYWxsZSBLb21waWxpZXJzY2hhbHRlciB1bmQgaWhyZSBXZXJ0ZSBhdXNnZWJlbi4gRXMgIgorIndpcmQgZWluIFNjaGFsdGVyIHBybyBaZWlsZSBhdXNnZWdlYmVuLCB3b2JlaSBkZXIgV2VydGUgZHVyY2ggZWluICIKKyJHbGVpY2hoZWl0c3plaWNoZW4gKMK7STxTY2hhbHRlcj49STxXZXJ0PsKrKSBhYmdldHJlbm50IHdpcmQuIERpZXMgaXN0IGRpZSAiCisiU3RhbmRhcmRha3Rpb24uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6NTEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tbGlzdD4iCittc2dzdHIgIkI8LS1saXN0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6NTYKK21zZ2lkICIiCisiUHJpbnQgdGhlIGxpc3Qgb2YgZmxhZ3Mgc3VwcG9ydGVkIGJ5IHRoZSBjdXJyZW50IHZlbmRvciAob25lIHBlciBsaW5lKS4gU2VlICIKKyJ0aGUgQjxTVVBQT1JURUQgRkxBR1M+IHNlY3Rpb24gZm9yIG1vcmUgaW5mb3JtYXRpb24gYWJvdXQgdGhlbS4iCittc2dzdHIgIiIKKyJHaWJ0IGRpZSBMaXN0ZSBkZXIgdm9tIGFrdHVlbGxlbiBMaWVmZXJhbnRlbiB1bnRlcnN0w7x0emVuIFNjaGFsdGVyIChlaW5lIHBybyAiCisiWmVpbGUpIGF1cy4gTGVzZW4gU2llIGRlbiBBYnNjaG5pdHQgQjxVTlRFUlNUw5xUWlRFIFNDSEFMVEVSPiBmw7xyIHdlaXRlcmUgIgorIkluZm9ybWF0aW9uZW4gw7xiZXIgc2llLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjU2CisjLCBuby13cmFwCittc2dpZCAiQjwtLWV4cG9ydD0+STxmb3JtYXQ+IgorbXNnc3RyICJCPC0tZXhwb3J0PT5JPEZvcm1hdD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjY2Cittc2dpZCAiIgorIlByaW50IHRvIHN0YW5kYXJkIG91dHB1dCBzaGVsbCAoaWYgSTxmb3JtYXQ+IGlzIEI8c2g+KSBvciBtYWtlIChpZiBJPGZvcm1hdD4gIgorImlzIEI8bWFrZT4pIGNvbW1hbmRzIHRoYXQgY2FuIGJlIHVzZWQgdG8gZXhwb3J0IGFsbCB0aGUgY29tcGlsYXRpb24gZmxhZ3MgaW4gIgorInRoZSBlbnZpcm9ubWVudC4gSWYgSTxmb3JtYXQ+IGlzIEI8Y29uZmlndXJlPiB0aGVuIHRoZSBvdXRwdXQgY2FuIGJlIHVzZWQgb24gIgorImEgQjwuL2NvbmZpZ3VyZT4gY29tbWFuZC1saW5lLiBJZiB0aGUgSTxmb3JtYXQ+IHZhbHVlIGlzIG5vdCBnaXZlbiwgQjxzaD4gaXMgIgorImFzc3VtZWQuIE9ubHkgY29tcGlsYXRpb24gZmxhZ3Mgc3RhcnRpbmcgd2l0aCBhbiB1cHBlciBjYXNlIGNoYXJhY3RlciBhcmUgIgorImluY2x1ZGVkLCBvdGhlcnMgYXJlIGFzc3VtZWQgdG8gbm90IGJlIHN1aXRhYmxlIGZvciB0aGUgZW52aXJvbm1lbnQuIgorbXNnc3RyICIiCisiQXVmIGRlciBTdGFuZGFyZGF1c2dhYmUgU2hlbGwtIChmYWxscyBJPEZvcm1hdD4gQjxzaD4gaXN0KSBvZGVyIE1ha2UtIChmYWxscyAiCisiSTxGb3JtYXQ+IEI8bWFrZT4gaXN0KSBCZWZlaGxlIGF1c2dlYmVuLCBkaWUgZGF6dSB2ZXJ3YW5kdCB3ZXJkZW4ga8O2bm5lbiwgIgorImFsbGUgS29tcGlsaWVyc2NoYWx0ZXIgaW4gZGllIFVtZ2VidW5nIHp1IGV4cG9ydGllcmVuLiBGYWxscyBJPEZvcm1hdD4gIgorIkI8Y29uZmlndXJlPiBsYXV0ZXQsIGthbm4gZGllIEF1c2dhYmUgZsO8ciBlaW5lIEtvbW1hbmRvemVpbGUgdm9uIEI8Li8iCisiY29uZmlndXJlPiB2ZXJ3YW5kdCB3ZXJkZW4uIEZhbGxzIGRlciBXZXJ0IHZvbiBJPEZvcm1hdD4gbmljaHQgYW5nZWdlYmVuICIKKyJ3aXJkLCB3aXJkIEI8c2g+IGFuZ2Vub21tZW4uIE51ciBLb21waWxpZXJzY2hhbHRlciwgZGllIG1pdCBlaW5lbSAiCisiR3Jvw59idWNoc3RhYmVuIGJlZ2lubmVuLCB3ZXJkZW4gYXVmZ2Vub21tZW4uIEJlaSBhbGxlbiBhbmRlcmVuIHdpcmQgIgorImFuZ2Vub21tZW4sIGRhc3Mgc2llIGbDvHIgZGllIFVtZ2VidW5nIG5pY2h0IGdlZWlnbmV0IHNpbmQuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6NjYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tZ2V0Pkk8IGZsYWc+IgorbXNnc3RyICJCPC0tZ2V0Pkk8IFNjaGFsdGVyPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6NzAKK21zZ2lkICIiCisiUHJpbnQgdGhlIHZhbHVlIG9mIHRoZSBmbGFnIG9uIHN0YW5kYXJkIG91dHB1dC4gRXhpdHMgd2l0aCAwIGlmIHRoZSBmbGFnIGlzICIKKyJrbm93biBvdGhlcndpc2UgZXhpdHMgd2l0aCAxLiIKK21zZ3N0ciAiIgorIkdpYnQgZGVuIFdlcnQgZGVzIFNjaGFsdGVycyBhdWYgZGVyIFN0YW5kYXJkYXVzZ2FiZSBhdXMuIEJlZW5kZXQgc2ljaCBtaXQgMCwgIgorImZhbGxzIGRlciBTY2hhbHRlciBiZWthbm50IGlzdCwgYW5kZXJuZmFsbHMgbWl0IDEuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6NzAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tb3JpZ2luPkk8IGZsYWc+IgorbXNnc3RyICJCPC0tb3JpZ2luPkk8IFNjaGFsdGVyPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6NzUKK21zZ2lkICIiCisiUHJpbnQgdGhlIG9yaWdpbiBvZiB0aGUgdmFsdWUgdGhhdCBpcyByZXR1cm5lZCBieSBCPC0tZ2V0Pi4gRXhpdHMgd2l0aCAwIGlmICIKKyJ0aGUgZmxhZyBpcyBrbm93biBvdGhlcndpc2UgZXhpdHMgd2l0aCAxLiBUaGUgb3JpZ2luIGNhbiBiZSBvbmUgb2YgdGhlICIKKyJmb2xsb3dpbmcgdmFsdWVzOiIKK21zZ3N0ciAiIgorIkdpYnQgZGVuIFVyc3BydW5nIGRlcyB2b24gQjwtLWdldD4gZ2VsaWVmZXJ0ZW4gV2VydHMgYXVzLiBCZWVuZGV0IHNpY2ggbWl0ICIKKyIwLCBmYWxscyBkZXIgU2NoYWx0ZXIgYmVrYW5udCBpc3QsIGFuZGVybmZhbGxzIG1pdCAxLiBEZXIgVXJzcHJ1bmcga2FubiAiCisiZWluZXIgZGVyIGZvbGdlbmRlbiBXZXJ0ZSBzZWluOiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjc2CisjLCBuby13cmFwCittc2dpZCAiQjx2ZW5kb3I+IgorbXNnc3RyICJCPHZlbmRvcj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjc5Cittc2dpZCAidGhlIG9yaWdpbmFsIGZsYWcgc2V0IGJ5IHRoZSB2ZW5kb3IgaXMgcmV0dXJuZWQ7IgorbXNnc3RyICIiCisiZGVyIHVyc3Byw7xuZ2xpY2ggdm9tIExpZWZlcmFudGVuIGdlc2V0enRlIFNjaGFsdGVyIHdpcmQgenVyw7xja2dlbGllZmVydCIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjc5CisjLCBuby13cmFwCittc2dpZCAiQjxzeXN0ZW0+IgorbXNnc3RyICJCPHN5c3RlbT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjgyCittc2dpZCAidGhlIGZsYWcgaXMgc2V0L21vZGlmaWVkIGJ5IGEgc3lzdGVtLXdpZGUgY29uZmlndXJhdGlvbjsiCittc2dzdHIgIiIKKyJkZXIgU2NoYWx0ZXIgd3VyZGUgZHVyY2ggZWluZSBzeXN0ZW13ZWl0ZSBLb25maWd1cmF0aW9uIGdlc2V0enQvdmVyw6RuZGVydCIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjgyCisjLCBuby13cmFwCittc2dpZCAiQjx1c2VyPiIKK21zZ3N0ciAiQjx1c2VyPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6ODUKK21zZ2lkICJ0aGUgZmxhZyBpcyBzZXQvbW9kaWZpZWQgYnkgYSB1c2VyLXNwZWNpZmljIGNvbmZpZ3VyYXRpb247IgorbXNnc3RyICIiCisiZGVyIFNjaGFsdGVyIHd1cmRlIGR1cmNoIGVpbmUgYmVudXR6ZXJzcGV6aWZpc2NoZSBLb25maWd1cmF0aW9uIGdlc2V0enQvIgorInZlcsOkbmRlcnQiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo4NQorIywgbm8td3JhcAorbXNnaWQgIkI8ZW52PiIKK21zZ3N0ciAiQjxlbnY+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo4OAorbXNnaWQgInRoZSBmbGFnIGlzIHNldC9tb2RpZmllZCBieSBhbiBlbnZpcm9ubWVudC1zcGVjaWZpYyBjb25maWd1cmF0aW9uLiIKK21zZ3N0ciAiIgorImRlciBTY2hhbHRlciB3dXJkZSBkdXJjaCBlaW5lIHVtZ2VidW5nc3NwZXppZmlzY2hlIEtvbmZpZ3VyYXRpb24gZ2VzZXR6dC8iCisidmVyw6RuZGVydCIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjk2CisjLCBuby13cmFwCittc2dpZCAiU1VQUE9SVEVEIEZMQUdTIgorbXNnc3RyICJVTlRFUlNUw5xUWlRFIFNDSEFMVEVSIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6OTcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPENGTEFHUz4iCittc2dzdHIgIkI8Q0ZMQUdTPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTAzCittc2dpZCAiIgorIk9wdGlvbnMgZm9yIHRoZSBDIGNvbXBpbGVyLiBUaGUgZGVmYXVsdCB2YWx1ZSBzZXQgYnkgdGhlIHZlbmRvciBpbmNsdWRlcyBJPC0iCisiZz4gYW5kIHRoZSBkZWZhdWx0IG9wdGltaXphdGlvbiBsZXZlbCAoSTwtTzI+IHVzdWFsbHksIG9yIEk8LU8wPiBpZiB0aGUgIgorIkI8REVCX0JVSUxEX09QVElPTlM+IGVudmlyb25tZW50IHZhcmlhYmxlIGRlZmluZXMgSTxub29wdD4pLiIKK21zZ3N0ciAiIgorIk9wdGlvbmVuIGbDvHIgZGVuIEMtQ29tcGlsZXIuIERlciB2b20gTGllZmVyYW50ZW4gZ2VzZXR6dGUgU3RhbmRhcmR3ZXJ0ICIKKyJlbnRow6RsdCBJPC1nPiB1bmQgZGllIFN0YW5kYXJkIE9wdGltaWVydW5nc3N0dWZlIChub3JtYWxlcndlaXNlIEk8LU8yPiBvZGVyICIKKyJJPC1PMD4sIGZhbGxzIGRpZSBVbWdlYnVuZ3N2YXJpYWJsZSBCPERFQl9CVUlMRF9PUFRJT05TPiBJPG5vb3B0PiBkZWZpbmllcnQuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTAzCisjLCBuby13cmFwCittc2dpZCAiQjxDUFBGTEFHUz4iCittc2dzdHIgIkI8Q1BQRkxBR1M+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMDYKK21zZ2lkICJPcHRpb25zIGZvciB0aGUgQyBwcmVwcm9jZXNzb3IuIERlZmF1bHQgdmFsdWU6IGVtcHR5LiIKK21zZ3N0ciAiT3B0aW9uZW4gZsO8ciBkZW4gQy1QcsOkcHJvemVzc29yLiBTdGFuZGFyZHdlcnQ6IGxlZXIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMDYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPENYWEZMQUdTPiIKK21zZ3N0ciAiQjxDWFhGTEFHUz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEwOQorbXNnaWQgIk9wdGlvbnMgZm9yIHRoZSBDKysgY29tcGlsZXIuIFNhbWUgYXMgQjxDRkxBR1M+LiIKK21zZ3N0ciAiT3B0aW9uZW4gZsO8ciBkZW4gQysrLUNvbXBpbGVyLiBJZGVudGlzY2ggenUgQjxDRkxBR1M+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEwOQorIywgbm8td3JhcAorbXNnaWQgIkI8RkZMQUdTPiIKK21zZ3N0ciAiQjxGRkxBR1M+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMTIKK21zZ2lkICJPcHRpb25zIGZvciB0aGUgRm9ydHJhbiBjb21waWxlci4gU2FtZSBhcyBCPENGTEFHUz4uIgorbXNnc3RyICJPcHRpb25lbiBmw7xyIGRlbiBGb3J0cmFuLUNvbXBpbGVyLiBJZGVudGlzY2ggenUgQjxDRkxBR1M+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjExMgorIywgbm8td3JhcAorbXNnaWQgIkI8TERGTEFHUz4iCittc2dzdHIgIkI8TERGTEFHUz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEyMAorbXNnaWQgIiIKKyJPcHRpb25zIHBhc3NlZCB0byB0aGUgY29tcGlsZXIgd2hlbiBsaW5raW5nIGV4ZWN1dGFibGVzIG9yIHNoYXJlZCBvYmplY3RzICIKKyIoaWYgdGhlIGxpbmtlciBpcyBjYWxsZWQgZGlyZWN0bHksIHRoZW4gQjwtV2w+IGFuZCBCPCw+IGhhdmUgdG8gYmUgc3RyaXBwZWQgIgorImZyb20gdGhlc2Ugb3B0aW9ucykuIERlZmF1bHQgdmFsdWU6IGVtcHR5LiIKK21zZ3N0ciAiIgorIk9wdGlvbmVuIGRpZSBiZWltIExpbmtlbiB2b24gUHJvZ3JhbW1lbiBvZGVyIExhdWZ6ZWl0YmlibGlvdGhla2VuIGFuIGRlbiAiCisiQ29tcGlsZXIgd2VpdGVyZ2VnZWJlbiB3ZXJkZW4gKGZhbGxzIGRlciBMaW5rZXIgZGlyZWt0IGF1ZmdlcnVmZW4gd2lyZCwgIgorIm3DvHNzZW4gQjwtV2w+IHVuZCBCPCw+IGF1cyBkaWVzZW4gT3B0aW9uZW4gZW50ZmVybnQgd2VyZGVuKS4gU3RhbmRhcmRtw6TDn2lnICIKKyJsZWVyLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEyMgorIywgbm8td3JhcAorbXNnaWQgIkI8L2V0Yy9kcGtnL2J1aWxkZmxhZ3MuY29uZj4iCittc2dzdHIgIkI8L2V0Yy9kcGtnL2J1aWxkZmxhZ3MuY29uZj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEyNQorbXNnaWQgIlN5c3RlbSB3aWRlIGNvbmZpZ3VyYXRpb24gZmlsZS4iCittc2dzdHIgIlN5c3RlbXdlaXRlIEtvbmZpZ3VyYXRpb25zZGF0ZWkiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMjUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPCRYREdfQ09ORklHX0hPTUUvZHBrZy9idWlsZGZsYWdzLmNvbmY+IG9yIEI8JEhPTUUvLmNvbmZpZy9kcGtnL2J1aWxkZmxhZ3MuY29uZj4iCittc2dzdHIgIkI8JFhER19DT05GSUdfSE9NRS9kcGtnL2J1aWxkZmxhZ3MuY29uZj4gb2RlciBCPCRIT01FLy5jb25maWcvZHBrZy9idWlsZGZsYWdzLmNvbmY+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMjgKK21zZ2lkICJVc2VyIGNvbmZpZ3VyYXRpb24gZmlsZS4iCittc2dzdHIgIkJlbnV0emVyLUtvbmZpZ3VyYXRpb25zZGF0ZWkiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEzNQorbXNnaWQgIiIKKyJUaGVyZSBhcmUgMiBzZXRzIG9mIGVudmlyb25tZW50IHZhcmlhYmxlcyBkb2luZyB0aGUgc2FtZSBvcGVyYXRpb25zLCB0aGUgIgorImZpcnN0IG9uZSAoREVCX0k8ZmxhZz5fSTxvcD4pIHNob3VsZCBuZXZlciBiZSB1c2VkIHdpdGhpbiBCPGRlYmlhbi9ydWxlcz4uICIKKyJJdCdzIG1lYW50IGZvciBhbnkgdXNlciB0aGF0IHdhbnRzIHRvIHJlYnVpbGQgdGhlIHNvdXJjZSBwYWNrYWdlIHdpdGggIgorImRpZmZlcmVudCBidWlsZCBmbGFncy4gVGhlIHNlY29uZCBzZXQgKERFQl9JPGZsYWc+X01BSU5UX0k8b3A+KSBzaG91bGQgb25seSAiCisiYmUgdXNlZCBpbiBCPGRlYmlhbi9ydWxlcz4gYnkgcGFja2FnZSBtYWludGFpbmVycyB0byBjaGFuZ2UgdGhlIHJlc3VsdGluZyAiCisiYnVpbGQgZmxhZ3MuIgorbXNnc3RyICIiCisiRXMgZ2lidCBlaW5lbiBTYXR6IHZvbiB6d2VpIFVtZ2VidW5nc3ZhcmlhYmxlbiwgZGllIGRlbiBnbGVpY2hlbiBWb3JnYW5nICIKKyJkdXJjaGbDvGhyZW4uIERlciBlcnN0ZSAoREVCX0k8U2NoYWx0ZXI+X0k8Vm9yZz4pIHNvbGx0ZSBuaWVtYWxzIGlubmVyaGFsYiAiCisidm9uIEI8ZGViaWFuL3J1bGVzPiB2ZXJ3YW5kdCB3ZXJkZW4uIEVyIGlzdCBmw7xyIEJlbnV0emVyIGdlZGFjaHQsIGRpZSBkYXMgIgorIlF1ZWxscGFrZXQgbWl0IGFuZGVyZW4gQmF1c2NoYWx0ZXJuIGVybmV1dCBiYXVlbiBtw7ZjaHRlbi4gRGVyIHp3ZWl0ZSBTYXR6ICIKKyIoREVCX0k8U2NoYWx0ZXI+X01BSU5UX0k8Vm9yZz4pIHNvbGx0ZSBudXIgZHVyY2ggUGFrZXRiZXRyZXVlciBpbiBCPGRlYmlhbi8iCisicnVsZXM+IHZlcndhbmR0IHdlcmRlbiwgdW0gZGllIGVudHN0ZWhlbmRlbiBCYXVzY2hhbHRlciB6dSDDpG5kZXJuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEzNQorIywgbm8td3JhcAorbXNnaWQgIkI8REVCXz5JPGZsYWc+QjxfU0VUPiIKK21zZ3N0ciAiQjxERUJfPkk8U2NoYWx0ZXI+QjxfU0VUPiIKKworIy4gdHlwZTogVFEKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEzNworIywgbm8td3JhcAorbXNnaWQgIkI8REVCXz5JPGZsYWc+QjxfTUFJTlRfU0VUPiIKK21zZ3N0ciAiQjxERUJfPkk8U2NoYWx0ZXI+QjxfTUFJTlRfU0VUPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTQxCittc2dpZCAiIgorIlRoaXMgdmFyaWFibGUgY2FuIGJlIHVzZWQgdG8gZm9yY2UgdGhlIHZhbHVlIHJldHVybmVkIGZvciB0aGUgZ2l2ZW4gSTxmbGFnPi4iCittc2dzdHIgIiIKKyJEaWVzZSBWYXJpYWJsZSBrYW5uIHp1bSBFcnp3aW5nZW4gZGVzIGbDvHIgSTxTY2hhbHRlcj4genVyw7xja2dlZ2ViZW5lbiBXZXJ0cyAiCisidmVyd2FuZHQgd2VyZGVuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE0MQorIywgbm8td3JhcAorbXNnaWQgIkI8REVCXz5JPGZsYWc+QjxfU1RSSVA+IgorbXNnc3RyICJCPERFQl8+STxTY2hhbHRlcj5CPF9TVFJJUD4iCisKKyMuIHR5cGU6IFRRCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNDMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPERFQl8+STxmbGFnPkI8X01BSU5UX1NUUklQPiIKK21zZ3N0ciAiQjxERUJfPkk8U2NoYWx0ZXI+QjxfTUFJTlRfU1RSSVA+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNDgKK21zZ2lkICIiCisiVGhpcyB2YXJpYWJsZSBjYW4gYmUgdXNlZCB0byBwcm92aWRlIGEgc3BhY2Ugc2VwYXJhdGVkIGxpc3Qgb2Ygb3B0aW9ucyB0aGF0ICIKKyJ3aWxsIGJlIHN0cmlwcGVkIGZyb20gdGhlIHNldCBvZiBmbGFncyByZXR1cm5lZCBmb3IgdGhlIGdpdmVuIEk8ZmxhZz4uIgorbXNnc3RyICIiCisiRGllc2UgVmFyaWFibGUga2FubiB6dW0gQmVyZWl0c3RlbGxlbiBlaW5lciBkdXJjaCBMZWVyemVpY2hlbiBnZXRyZW5udGVuICIKKyJMaXN0ZSB2b24gT3B0aW9uZW4gdmVyd2FuZHQgd2VyZGVuLCBkaWUgYXVzIGRlbSBTYXR6IHZvbiBJPFNjaGFsdGVyPiAiCisienVyw7xja2dlbGllZmVydGVuIFNjaGFsdGVybiBlbnRmZXJudCB3ZXJkZW4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTQ4CisjLCBuby13cmFwCittc2dpZCAiQjxERUJfPkk8ZmxhZz5CPF9BUFBFTkQ+IgorbXNnc3RyICJCPERFQl8+STxTY2hhbHRlcj5CPF9BUFBFTkQ+IgorCisjLiB0eXBlOiBUUQorIzogZHBrZy1idWlsZGZsYWdzLjE6MTUwCisjLCBuby13cmFwCittc2dpZCAiQjxERUJfPkk8ZmxhZz5CPF9NQUlOVF9BUFBFTkQ+IgorbXNnc3RyICJCPERFQl8+STxTY2hhbHRlcj5CPF9NQUlOVF9BUFBFTkQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNTQKK21zZ2lkICIiCisiVGhpcyB2YXJpYWJsZSBjYW4gYmUgdXNlZCB0byBhcHBlbmQgc3VwcGxlbWVudGFyeSBvcHRpb25zIHRvIHRoZSB2YWx1ZSAiCisicmV0dXJuZWQgZm9yIHRoZSBnaXZlbiBJPGZsYWc+LiIKK21zZ3N0ciAiIgorIkRpZXNlIFZhcmlhYmxlIGthbm4genVtIEFuaMOkbmdlbiBlcmfDpG56ZW5kZXIgT3B0aW9uZW4genVtIFdlcnQsIGRlciB2b24gIgorIkk8U2NoYWx0ZXI+IHp1csO8Y2tnZWdlYmVuIHdpcmQsIHZlcndhbmR0IHdlcmRlbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNTQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPERFQl8+STxmbGFnPkI8X1BSRVBFTkQ+IgorbXNnc3RyICJCPERFQl8+STxTY2hhbHRlcj5CPF9QUkVQRU5EPiIKKworIy4gdHlwZTogVFEKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE1NgorIywgbm8td3JhcAorbXNnaWQgIkI8REVCXz5JPGZsYWc+QjxfTUFJTlRfUFJFUEVORD4iCittc2dzdHIgIkI8REVCXz5JPFNjaGFsdGVyPkI8X01BSU5UX1BSRVBFTkQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNjAKK21zZ2lkICIiCisiVGhpcyB2YXJpYWJsZSBjYW4gYmUgdXNlZCB0byBwcmVwZW5kIHN1cHBsZW1lbnRhcnkgb3B0aW9ucyB0byB0aGUgdmFsdWUgIgorInJldHVybmVkIGZvciB0aGUgZ2l2ZW4gSTxmbGFnPi4iCittc2dzdHIgIiIKKyJEaWVzZSBWYXJpYWJsZSBrYW5uIHp1bSBWb3JhbnN0ZWxsZW4gZXJnw6RuemVuZGVyIE9wdGlvbmVuIHp1bSBXZXJ0LCBkZXIgdm9uICIKKyJJPFNjaGFsdGVyPiB6dXLDvGNrZ2VnZWJlbiB3aXJkLCB2ZXJ3YW5kdCB3ZXJkZW4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTYwCisjLCBuby13cmFwCittc2dpZCAiQjxERUJfQlVJTERfTUFJTlRfT1BUSU9OUz4iCittc2dzdHIgIkI8REVCX0JVSUxEX01BSU5UX09QVElPTlM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNjUKK21zZ2lkICIiCisiVGhpcyB2YXJpYWJsZSBjYW4gYmUgdXNlZCB0byBkaXNhYmxlL2VuYWJsZSB2YXJpb3VzIGhhcmRlbmluZyBidWlsZCBmbGFncyAiCisidGhyb3VnaCB0aGUgQjxoYXJkZW5pbmc+IG9wdGlvbi4gU2VlIHRoZSBCPEhBUkRFTklORz4gc2VjdGlvbiBmb3IgZGV0YWlscy4iCittc2dzdHIgIiIKKyJEaWVzZSBWYXJpYWJsZSBrYW5uIHp1bSBEZWFrdGl2aWVyZW4gb2RlciBBa3RpdmllcmVuIHZlcnNjaGllZGVuZXIgIgorIkjDpHJ0dW5nc2JhdXNjaGFsdGVyIGR1cmNoIGRpZSBPcHRpb24gQjxoYXJkZW5pbmc+IHZlcndhbmR0IHdlcmRlbi4gTGVzZW4gU2llICIKKyJkZW4gQWJzY2huaXR0IEI8SMOEUlRVTkc+IGbDvHIgd2VpdGVyZSBEZXRhaWxzLiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE2NgorIywgbm8td3JhcAorbXNnaWQgIkhBUkRFTklORyIKK21zZ3N0ciAiSMOEUlRVTkciCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE3MQorbXNnaWQgIiIKKyJTZXZlcmFsIGNvbXBpbGUtdGltZSBvcHRpb25zIChkZXRhaWxlZCBiZWxvdykgY2FuIGJlIHVzZWQgdG8gaGVscCBoYXJkZW4gYSAiCisicmVzdWx0aW5nIGJpbmFyeSBhZ2FpbnN0IG1lbW9yeSBjb3JydXB0aW9uIGF0dGFja3MsIG9yIHByb3ZpZGUgYWRkaXRpb25hbCAiCisid2FybmluZyBtZXNzYWdlcyBkdXJpbmcgY29tcGlsYXRpb24uIEV4Y2VwdCBhcyBub3RlZCBiZWxvdywgdGhlc2UgYXJlICIKKyJlbmFibGVkIGJ5IGRlZmF1bHQgZm9yIGFyY2hpdGVjdHVyZXMgdGhhdCBzdXBwb3J0IHRoZW0uIgorbXNnc3RyICIiCisiTWVocmVyZSBLb21waWxpZXJ6ZWl0LU9wdGlvbmVuICh3ZWl0ZXIgdW50ZW4gYmVzY2hyaWViZW4pIGvDtm5uZW4gZGF6dSAiCisidmVyd2FuZHQgd2VyZGVuLCBlaW4gZXJzdGVsbHRlcyBQcm9ncmFtbSBnZWdlbiBTcGVpY2hlcnZlcmbDpGxzY2h1bmdzYW5ncmlmZmUgIgorInp1IGjDpHJ0ZW4sIG9kZXIgenVzw6R0emxpY2hlIFdhcm51bmdzbWVsZHVuZ2VuIHfDpGhyZW5kIGRlciDDnGJlcnNldHp1bmcgIgorImF1c3p1Z2ViZW4uIFNpZSB3ZXJkZW4gZsO8ciBBcmNoaXRla3R1cmVuLCBkaWUgZGllc2UgdW50ZXJzdMO8dHplbiwgIgorInN0YW5kYXJkbcOkw59pZyBha3RpdmllcnQ7IGRpZSBBdXNuYWhtZW4gc2luZCB1bnRlbiBhbmdlZ2ViZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNzcKK21zZ2lkICIiCisiRWFjaCBoYXJkZW5pbmcgZmVhdHVyZSBjYW4gYmUgZW5hYmxlZCBhbmQgZGlzYWJsZWQgaW4gdGhlICIKKyJCPERFQl9CVUlMRF9NQUlOVF9PUFRJT05TPiBlbnZpcm9ubWVudCB2YXJpYWJsZSdzIEI8aGFyZGVuaW5nPiB2YWx1ZSB3aXRoICIKKyJ0aGUgXCIrXCIgYW5kIFwiLVwiIG1vZGlmaWVyLiBGb3IgZXhhbXBsZSwgdG8gZW5hYmxlIHRoZSBcInBpZVwiIGZlYXR1cmUgYW5kICIKKyJkaXNhYmxlIHRoZSBcImZvcnRpZnlcIiBmZWF0dXJlIHlvdSBjYW4gZG8gdGhpcyBpbiBCPGRlYmlhbi9ydWxlcz46IgorbXNnc3RyICIiCisiSmVkZSBIw6RydHVuZ3NmdW5rdGlvbmFsaXTDpHQga2FubiBkdXJjaCBkZW4gZW50c3ByZWNoZW5kZW4gQjxIw6RydHVuZ3MtPi1XZXJ0ICIKKyJpbiBkZXIgVW1nZWJ1bmdzdmFyaWFibGVuIEI8REVCX0JVSUxEX01BSU5UX09QVElPTlM+IG1pdCBkZW4gwrsrwqstIHVuZCDCuy3Cqy0iCisiU2NoYWx0ZXJuIGFrdGl2aWVydCB1bmQgZGVha3RpdmllcnQgd2VyZGVuLiBTb2xsIGJlaXNwaWVsc3dlaXNlIGRpZSDCu3BpZcKrLSIKKyJGdW5rdGlvbmFsaXTDpHQgYWt0aXZpZXJ0IHVuZCBkaWUgwrtmb3J0aWZ5wqstRnVua3Rpb25hbGl0w6R0IGRlYWt0aXZpZXJ0ICIKKyJ3ZXJkZW4sIGvDtm5uZW4gU2llIEZvbGdlbmRlcyBpbiBCPGRlYmlhbi9ydWxlcz4gdmVyd2VuZGVuOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTc5CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIiAgZXhwb3J0IERFQl9CVUlMRF9NQUlOVF9PUFRJT05TPVwiaGFyZGVuaW5nPStwaWUsLWZvcnRpZnlcIlxuIgorbXNnaWQgIiAgZXhwb3J0IERFQl9CVUlMRF9NQUlOVF9PUFRJT05TPWhhcmRlbmluZz0rcGllLC1mb3J0aWZ5XG4iCittc2dzdHIgIiAgZXhwb3J0IERFQl9CVUlMRF9NQUlOVF9PUFRJT05TPVwiaGFyZGVuaW5nPStwaWUsLWZvcnRpZnlcIlxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxODMKK21zZ2lkICIiCisiVGhlIHNwZWNpYWwgZmVhdHVyZSBCPGFsbD4gY2FuIGJlIHVzZWQgdG8gZW5hYmxlIG9yIGRpc2FibGUgYWxsIGhhcmRlbmluZyAiCisiZmVhdHVyZXMgYXQgdGhlIHNhbWUgdGltZS4gVGh1cyBkaXNhYmxpbmcgZXZlcnl0aGluZyBhbmQgZW5hYmxpbmcgb25seSAiCisiXCJmb3JtYXRcIiBhbmQgXCJmb3J0aWZ5XCIgY2FuIGJlIGFjaGlldmVkIHdpdGg6IgorbXNnc3RyICIiCisiRGllIHNwZXppZWxsZSBGdW5rdGlvbmFsaXTDpHQgQjxhbGw+IGthbm4gZGF6dSB2ZXJ3YW5kdCB3ZXJkZW4sIGFsbGUgIgorIkjDpHJ0dW5nc2Z1bmt0aW9uYWxpdMOkdGVuIGF1ZiBlaW5tYWwgenUgYWt0aXZpZXJlbiBvZGVyIHp1IGRlYWt0aXZlcmVuLiBVbSAiCisiZGFoZXIgYWxsZXMgenUgZGVha3RpdmVyZW4gdW5kIG51ciDCu2Zvcm1hdMKrIHVuZCDCu2ZvcnRpZnnCqyB6dSBha3RpdmVyZW4sIGthbm4gIgorIkZvbGdlbmRlcyBlaW5nZXNldHp0IHdlcmRlbjoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE4NQorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICIgIGV4cG9ydCBERUJfQlVJTERfTUFJTlRfT1BUSU9OUz1cImhhcmRlbmluZz0tYWxsLCtmb3JtYXQsK2ZvcnRpZnlcIlxuIgorbXNnaWQgIiAgZXhwb3J0IERFQl9CVUlMRF9NQUlOVF9PUFRJT05TPWhhcmRlbmluZz0tYWxsLCtmb3JtYXQsK2ZvcnRpZnlcbiIKK21zZ3N0ciAiICBleHBvcnQgREVCX0JVSUxEX01BSU5UX09QVElPTlM9XCJoYXJkZW5pbmc9LWFsbCwrZm9ybWF0LCtmb3J0aWZ5XCJcbiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE4NgorIywgbm8td3JhcAorbXNnaWQgIkI8Zm9ybWF0PiIKK21zZ3N0ciAiQjxmb3JtYXQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxOTgKK21zZ2lkICIiCisiVGhpcyBzZXR0aW5nIChlbmFibGVkIGJ5IGRlZmF1bHQpIGFkZHMgQjwtV2Zvcm1hdCAtV2Zvcm1hdC1zZWN1cml0eSAtIgorIldlcnJvcj1mb3JtYXQtc2VjdXJpdHk+IHRvIEI8Q0ZMQUdTPiBhbmQgQjxDWFhGTEFHUz4uIFRoaXMgd2lsbCB3YXJuIGFib3V0ICIKKyJpbXByb3BlciBmb3JtYXQgc3RyaW5nIHVzZXMsIGFuZCB3aWxsIGZhaWwgd2hlbiBmb3JtYXQgZnVuY3Rpb25zIGFyZSB1c2VkIGluICIKKyJhIHdheSB0aGF0IHRoYXQgcmVwcmVzZW50IHBvc3NpYmxlIHNlY3VyaXR5IHByb2JsZW1zLiBBdCBwcmVzZW50LCB0aGlzIHdhcm5zICIKKyJhYm91dCBjYWxscyB0byBCPHByaW50Zj4gYW5kIEI8c2NhbmY+IGZ1bmN0aW9ucyB3aGVyZSB0aGUgZm9ybWF0IHN0cmluZyBpcyAiCisibm90IGEgc3RyaW5nIGxpdGVyYWwgYW5kIHRoZXJlIGFyZSBubyBmb3JtYXQgYXJndW1lbnRzLCBhcyBpbiBCPHByaW50Zihmb28pOyIKKyI+IGluc3RlYWQgb2YgQjxwcmludGYoXCIlc1wiLCBmb28pOz4gVGhpcyBtYXkgYmUgYSBzZWN1cml0eSBob2xlIGlmIHRoZSAiCisiZm9ybWF0IHN0cmluZyBjYW1lIGZyb20gdW50cnVzdGVkIGlucHV0IGFuZCBjb250YWlucyBcIiVuXCIuIgorbXNnc3RyICIiCisiRGllc2UgRWluc3RlbGx1bmcgKHN0YW5kYXJkbcOkw59pZyBha3RpdmllcnQpIGbDvGd0IEI8LVdmb3JtYXQgLVdmb3JtYXQtIgorInNlY3VyaXR5IC1XZXJyb3I9Zm9ybWF0LXNlY3VyaXR5PiB6dSBCPENGTEFHUz4gdW5kIEI8Q1hYRkxBR1M+IGhpbnp1LiBEYW1pdCAiCisid2lyZCDDvGJlciBpbmtvcnJla3RlIEZvcm1hdHplaWNoZW5rZXR0ZW52ZXJ3ZW5kdW5nZW4gZ2V3YXJudCB1bmQgenUgZWluZW0gIgorIkZlaGxlciBmw7xocmVuLCB3ZW5uIEZvcm1hdGZ1bmt0aW9uZW4gZGVhcnQgdmVyd2FuZHQgd2VyZGVuLCBkYXNzIGRhcmF1cyBlaW4gIgorIm3DtmdsaWNoZXMgU2ljaGVyaGVpdHNwcm9ibGVtIHdlcmRlbiBrw7ZubnRlLiBEZXJ6ZWl0IHdhcm50IGRpZXMgw7xiZXIgQXVmcnVmZSAiCisiYXVmIEI8cHJpbnRmPi0gdW5kIEI8c2NhbmY+LUZ1bmt0aW9uZW4sIGJlaSBkZW5lbiBkaWUgRm9ybWF0emVpY2hlbmtldHRlICIKKyJuaWNodCBlaW5lIHJlaW5lIFplaWNoZW5rZXR0ZSBpc3QgdW5kIGVzIGtlaW5lIEZvcm1hdGFyZ3VtZW50ZSBnaWJ0LCB3aWUgaW4gIgorIkI8cHJpbnRmKGZvbyk7PiBzdGF0dCBCPHByaW50ZihcIiVzXCIsIGZvbyk7Pi4gRGllcyBrw7ZubnRlIGVpbiAiCisiU2ljaGVyaGVpdHNwcm9ibGVtIHNlaW4sIGZhbGxzIGRpZSBGb3JtYXR6ZWljaGVua2V0dGUgYXVzIGVpbmVyICIKKyJ1bnZlcnRyYXVlbnN3w7xyZGlnZW4gRWluZ2FiZSBzdGFtbXQgdW5kIMK7JW7CqyBlbnRow6RsdC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxOTkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGZvcnRpZnk+IgorbXNnc3RyICJCPGZvcnRpZnk+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyMTAKK21zZ2lkICIiCisiVGhpcyBzZXR0aW5nIChlbmFibGVkIGJ5IGRlZmF1bHQpIGFkZHMgQjwtRF9GT1JUSUZZX1NPVVJDRT0yPiB0byBCPENGTEFHUz4gIgorImFuZCBCPENYWEZMQUdTPi4gRHVyaW5nIGNvZGUgZ2VuZXJhdGlvbiB0aGUgY29tcGlsZXIga25vd3MgYSBncmVhdCBkZWFsIG9mICIKKyJpbmZvcm1hdGlvbiBhYm91dCBidWZmZXIgc2l6ZXMgKHdoZXJlIHBvc3NpYmxlKSwgYW5kIGF0dGVtcHRzIHRvIHJlcGxhY2UgIgorImluc2VjdXJlIHVubGltaXRlZCBsZW5ndGggYnVmZmVyIGZ1bmN0aW9uIGNhbGxzIHdpdGggbGVuZ3RoLWxpbWl0ZWQgb25lcy4gIgorIlRoaXMgaXMgZXNwZWNpYWxseSB1c2VmdWwgZm9yIG9sZCwgY3J1ZnR5IGNvZGUuICBBZGRpdGlvbmFsbHksIGZvcm1hdCAiCisic3RyaW5ncyBpbiB3cml0YWJsZSBtZW1vcnkgdGhhdCBjb250YWluICclbicgYXJlIGJsb2NrZWQuIElmIGFuIGFwcGxpY2F0aW9uICIKKyJkZXBlbmRzIG9uIHN1Y2ggYSBmb3JtYXQgc3RyaW5nLCBpdCB3aWxsIG5lZWQgdG8gYmUgd29ya2VkIGFyb3VuZC4iCittc2dzdHIgIiIKKyJEaWVzZSBFaW5zdGVsbHVuZyAoc3RhbmRhcmRtw6TDn2lnIGFrdGl2aWVydCkgZsO8Z3QgQjwtRF9GT1JUSUZZX1NPVVJDRT0yPiB6dSAiCisiQjxDRkxBR1M+IHVuZCBCPENYWEZMQUdTPiBoaW56dS4gV8OkaHJlbmQgZGVyIENvZGUtRXJzdGVsbHVuZyBoYXQgZGVyICIKKyJDb21waWxlciB1bWZhbmdyZWljaGUgSW5mb3JtYXRpb25lbiDDvGJlciBQdWZmZXJncsO2w59lbiAod28gbcO2Z2xpY2gpIHVuZCAiCisidmVyc3VjaHQsIHVuc2ljaGVyZSB1bmJlZ3Jlbnp0ZSBQdWZmZXJmdW5rdGlvbnNhdWZydWZlIGR1cmNoIGzDpG5nZW5iZWdyZW56dGUgIgorInp1IGVyc2V0emVuLiBEYXMgaXN0IGJlc29uZGVycyBmw7xyIGFsdGVuLCB2ZXJrcmFtdGVuIENvZGUgbsO8dHpsaWNoLiAiCisiWnVzw6R0emxpY2ggd2VyZGVuIEZvcm1hdHplaWNoZW5rZXR0ZW4gaW4gc2NocmVpYmJhcmVtIFNwZWljaGVyLCBkaWUgwrslbsKrICIKKyJlbnRoYWx0ZW4sIGJsb2NraWVydC4gRmFsbHMgZWluZSBBbndlbmR1bmcgdm9uIHNvbGNoZW4gRm9ybWF0emVpY2hlbmtldHRlbiAiCisiYWJow6RuZ3QsIG3DvHNzZW4gZGFmw7xyIGFuZGVyZSBMw7ZzdW5nc23DtmdsaWNoa2VpdGVuIGdlZnVuZGVuIHdlcmRlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjIxMworbXNnaWQgIiIKKyJOb3RlIHRoYXQgZm9yIHRoaXMgb3B0aW9uIHRvIGhhdmUgYW55IGVmZmVjdCwgdGhlIHNvdXJjZSBtdXN0IGFsc28gYmUgIgorImNvbXBpbGVkIHdpdGggQjwtTzE+IG9yIGhpZ2hlci4iCittc2dzdHIgIiIKKyJCZWFjaHRlbiBTaWUsIGRhc3MgZGllIFF1ZWxsZW4gYXVjaCBtaXQgQjwtTzE+IG9kZXIgaMO2aGVyIGtvbXBpbGllcnQgd2VyZGVuICIKKyJtw7xzc2VuLCBkYW1pdCBkaWVzZSBPcHRpb24gZWluZW4gRWZmZWt0IGhhdC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyMTMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHN0YWNrcHJvdGVjdG9yPiIKK21zZ3N0ciAiQjxzdGFja3Byb3RlY3Rvcj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjIyMgorbXNnaWQgIiIKKyJUaGlzIHNldHRpbmcgKGVuYWJsZWQgYnkgZGVmYXVsdCkgYWRkcyBCPC1mc3RhY2stcHJvdGVjdG9yIC0tcGFyYW09c3NwLSIKKyJidWZmZXItc2l6ZT00PiB0byBCPENGTEFHUz4gYW5kIEI8Q1hYRkxBR1M+LiBUaGlzIGFkZHMgc2FmZXR5IGNoZWNrcyBhZ2FpbnN0ICIKKyJzdGFjayBvdmVyd3JpdGVzLiBUaGlzIHJlbmRlcnMgbWFueSBwb3RlbnRpYWwgY29kZSBpbmplY3Rpb24gYXR0YWNrcyBpbnRvICIKKyJhYm9ydGluZyBzaXR1YXRpb25zLiBJbiB0aGUgYmVzdCBjYXNlIHRoaXMgdHVybnMgY29kZSBpbmplY3Rpb24gIgorInZ1bG5lcmFiaWxpdGllcyBpbnRvIGRlbmlhbCBvZiBzZXJ2aWNlIG9yIGludG8gbm9uLWlzc3VlcyAoZGVwZW5kaW5nIG9uIHRoZSAiCisiYXBwbGljYXRpb24pLiIKK21zZ3N0ciAiIgorIkRpZXNlIEVpbnN0ZWxsdW5nIChzdGFuZGFyZG3DpMOfaWcgYWt0aXZpZXJ0KSBmw7xndCBCPC1mc3RhY2stcHJvdGVjdG9yIC0tIgorInBhcmFtPXNzcC1idWZmZXItc2l6ZT00PiB6dSBCPENGTEFHUz4gdW5kIEI8Q1hYRkxBR1M+IGhpbnp1LiBEaWVzIGbDvGd0ICIKKyJTaWNoZXJoZWl0c3Byw7xmdW5nZW4gZ2VnZW4gZGllIMOcYmVyc2NocmVpYnVuZyBkZXMgU3RhcGVsc3BlaWNoZXJzIChTdGFja3MpICIKKyJoaW56dS4gRGFtaXQgd2VyZGVuIHZpZWxlIG3DtmdsaWNoZSBDb2RlLUVpbmbDvGdlYW5ncmlmZmUgenUgIgorIkFiYnJ1Y2hzaXR1YXRpb25lbi4gSW0gYmVzdGVuIEZhbGwgd2VyZGVuIGRhbWl0IENvZGUtRWluZsO8Z3VuZ3NhbmdyaWZmZSB6dSAiCisiRGllbnN0ZXZlcndlaWdlcnVuZ3NhbmdyaWZmZW4gb2RlciB6dSBrZWluZW4gUHJvYmxlbWVuIChhYmjDpG5naWcgdm9uIGRlciAiCisiQW53ZW5kdW5nKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjIyNgorbXNnaWQgIiIKKyJUaGlzIGZlYXR1cmUgcmVxdWlyZXMgbGlua2luZyBhZ2FpbnN0IGdsaWJjIChvciBhbm90aGVyIHByb3ZpZGVyIG9mICIKKyJCPF9fc3RhY2tfY2hrX2ZhaWw+KSwgc28gbmVlZHMgdG8gYmUgZGlzYWJsZWQgd2hlbiBidWlsZGluZyB3aXRoIEI8LSIKKyJub3N0ZGxpYj4gb3IgQjwtZmZyZWVzdGFuZGluZz4gb3Igc2ltaWxhci4iCittc2dzdHIgIiIKKyJEaWVzZSBGdW5rdGlvbmFsaXTDpHQgYmVuw7Z0aWd0IGRhcyBMaW5rZW4gbWl0IEdsaWJjIChvZGVyIGVpbmVtIGFuZGVyZW4gIgorIkFuYmlldGVyIHZvbiBCPF9fc3RhY2tfY2hrX2ZhaWw+KS4gU2llIG11c3MgZGFoZXIgZGVha3RpdmllcnQgd2VyZGVuLCB3ZW5uICIKKyJtaXQgQjwtbm9zdGRsaWI+IG9kZXIgQjwtZmZyZWVzdGFuZGluZz4gb2RlciDDhGhubGljaGVtIGdlYmF1dCB3aXJkLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjIyNworIywgbm8td3JhcAorbXNnaWQgIkI8cmVscm8+IgorbXNnc3RyICJCPHJlbHJvPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjM1Cittc2dpZCAiIgorIlRoaXMgc2V0dGluZyAoZW5hYmxlZCBieSBkZWZhdWx0KSBhZGRzIEI8LVdsLC16LHJlbHJvPiB0byBCPExERkxBR1M+LiAgIgorIkR1cmluZyBwcm9ncmFtIGxvYWQsIHNldmVyYWwgRUxGIG1lbW9yeSBzZWN0aW9ucyBuZWVkIHRvIGJlIHdyaXR0ZW4gdG8gYnkgIgorInRoZSBsaW5rZXIuIFRoaXMgZmxhZ3MgdGhlIGxvYWRlciB0byB0dXJuIHRoZXNlIHNlY3Rpb25zIHJlYWQtb25seSBiZWZvcmUgIgorInR1cm5pbmcgb3ZlciBjb250cm9sIHRvIHRoZSBwcm9ncmFtLiBNb3N0IG5vdGFibHkgdGhpcyBwcmV2ZW50cyBHT1QgIgorIm92ZXJ3cml0ZSBhdHRhY2tzLiIKK21zZ3N0ciAiIgorIkRpZXNlIEVpbnN0ZWxsdW5nIChzdGFuZGFyZG3DpMOfaWcgYWt0aXZpZXJ0KSBmw7xndCBCPC1XbCwteixyZWxybz4genUgIgorIkI8TERGTEFHUz4gaGluenUuIFfDpGhyZW5kIGRlcyBMYWRlbnMgZGVzIFByb2dyYW1tcyBtw7xzc2VuIG1laHJlcmUgRUxGLSIKKyJTcGVpY2hlcmFic2Nobml0dGUgdm9tIEJpbmRlciAoTGlua2VyKSBnZXNjaHJpZWJlbiB3ZXJkZW4uIERpZXNlIEVpbnN0ZWxsdW5nICIKKyJzaWduYWxpc2llcnQgZGVtIExhZGVwcm9ncmFtbSwgZGllc2UgQWJzY2huaXR0ZSBpbiBudXItTGVzZS1adWdyaWZmIHp1ICIKKyLDpG5kZXJuLCBiZXZvciBkaWUgU3RldWVydW5nIGFuIGRhcyBQcm9ncmFtbSDDvGJlcmdlYmVuIHdpcmQuIEluc2Jlc29uZGVyZSAiCisidmVyaGluZGVydCBkaWVzIEdPVC3DnGJlcnNjaHJlaWJlYW5ncmlmZmUuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjM2CisjLCBuby13cmFwCittc2dpZCAiQjxiaW5kbm93PiIKK21zZ3N0ciAiQjxiaW5kbm93PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjQzCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJUaGlzIHNldHRpbmcgKGVuYWJsZWQgYnkgZGVmYXVsdCkgYWRkcyBCPC1XbCwteixub3c+IHRvIEI8TERGTEFHUz4uICIKKyN8ICJEdXJpbmcgcHJvZ3JhbSBsb2FkLCBhbGwgZHluYW1pYyBzeW1ib2xzIGFyZSByZXNvbHZlZCwgYWxsb3dpbmcgZm9yIHRoZSAiCisjfCAiZW50aXJlIFBMVCB0byBiZSBtYXJrZWQgcmVhZC1vbmx5IChkdWUgdG8gQjxyZWxybz4gYWJvdmUpLiIKK21zZ2lkICIiCisiVGhpcyBzZXR0aW5nIChkaXNhYmxlZCBieSBkZWZhdWx0KSBhZGRzIEI8LVdsLC16LG5vdz4gdG8gQjxMREZMQUdTPi4gRHVyaW5nICIKKyJwcm9ncmFtIGxvYWQsIGFsbCBkeW5hbWljIHN5bWJvbHMgYXJlIHJlc29sdmVkLCBhbGxvd2luZyBmb3IgdGhlIGVudGlyZSBQTFQgIgorInRvIGJlIG1hcmtlZCByZWFkLW9ubHkgKGR1ZSB0byBCPHJlbHJvPiBhYm92ZSkuIgorbXNnc3RyICIiCisiRGllc2UgRWluc3RlbGx1bmcgKHN0YW5kYXJkbcOkw59pZyBha3RpdmllcnQpIGbDvGd0IEI8LVdsLC16LG5vdz4genUgQjxMREZMQUdTPiAiCisiaGluenUuIFfDpGhyZW5kIGRlcyBMYWRlbnMgZGVzIFByb2dyYW1tcyB3ZXJkZW4gYWxsZSBkeW5hbWlzY2hlbiBTeW1ib2xlICIKKyJhdWZnZWzDtnN0LCB3b21pdCBkYXMgZ2VzYW10ZSBQTFQgbnVyLWxlc2VuZCBtYXJraWVydCB3ZXJkZW4ga2FubiAoYXVmZ3J1bmQgIgorInZvbiBCPHJlbHJvPiBvYmVuKS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyNDQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHBpZT4iCittc2dzdHIgIkI8cGllPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjU2Cittc2dpZCAiIgorIlRoaXMgc2V0dGluZyAoZGlzYWJsZWQgYnkgZGVmYXVsdCkgYWRkcyBCPC1mUElFPiB0byBCPENGTEFHUz4gYW5kICIKKyJCPENYWEZMQUdTPiwgYW5kIEI8LWZQSUUgLXBpZT4gdG8gQjxMREZMQUdTPi4gUG9zaXRpb24gSW5kZXBlbmRlbnQgIgorIkV4ZWN1dGFibGUgYXJlIG5lZWRlZCB0byB0YWtlIGFkdmFudGFnZSBvZiBBZGRyZXNzIFNwYWNlIExheW91dCAiCisiUmFuZG9taXphdGlvbiwgc3VwcG9ydGVkIGJ5IHNvbWUga2VybmVsIHZlcnNpb25zLiBXaGlsZSBBU0xSIGNhbiBhbHJlYWR5IGJlICIKKyJlbmZvcmNlZCBmb3IgZGF0YSBhcmVhcyBpbiB0aGUgc3RhY2sgYW5kIGhlYXAgKGJyayBhbmQgbW1hcCksIHRoZSBjb2RlIGFyZWFzICIKKyJtdXN0IGJlIGNvbXBpbGVkIGFzIHBvc2l0aW9uLWluZGVwZW5kZW50LiBTaGFyZWQgbGlicmFyaWVzIGFscmVhZHkgZG8gdGhpcyAoLSIKKyJmUElDKSwgc28gdGhleSBnYWluIEFTTFIgYXV0b21hdGljYWxseSwgYnV0IGJpbmFyeSAudGV4dCByZWdpb25zIG5lZWQgdG8gYmUgIgorImJ1aWxkIFBJRSB0byBnYWluIEFTTFIuIFdoZW4gdGhpcyBoYXBwZW5zLCBST1AgKFJldHVybiBPcmllbnRlZCBQcm9ncmFtbWluZykgIgorImF0dGFja3MgYXJlIG11Y2ggaGFyZGVyIHNpbmNlIHRoZXJlIGFyZSBubyBzdGF0aWMgbG9jYXRpb25zIHRvIGJvdW5jZSBvZmYgb2YgIgorImR1cmluZyBhIG1lbW9yeSBjb3JydXB0aW9uIGF0dGFjay4iCittc2dzdHIgIiIKKyJEaWVzZSBFaW5zdGVsbHVuZyAoc3RhbmRhcmRtw6TDn2lnIGRlYWt0aXZpZXJ0KSBmw7xndCBCPC1mUElFPiB6dSBCPENGTEFHUz4gdW5kICIKKyJCPENYWEZMQUdTPiBzb3dpZSBCPC1mUElFIC1waWU+IHp1IEI8TERGTEFHUz4gaGluenUuIMK7UG9zaXRpb24gSW5kZXBlbmRlbnQgIgorIkV4ZWN1dGFibGXCqyAocG9zaXRpb25zdW5hYmjDpG5naWdlIFByb2dyYW1tZSkgd2VyZGVuIGJlbsO2dGlndCwgdW0gwrtBZGRyZXNzICIKKyJTcGFjZSBMYXlvdXQgUmFuZG9taXphdGlvbsKrIChCZXJlaXRzdGVsbHVuZyBlaW5lcyB6dWbDpGxsaWdlbiAiCisiQWRyZXNzYmVyZWljaGxheW91dHMpIGF1c3p1bnV0emVuLCBkZXIgdm9uIGVpbmlnZW4gS2VybmVsdmVyc2lvbmVuICIKKyJiZXJlaXRnZXN0ZWxsdCB3aXJkLiBXw6RocmVuZCBBU0xSIGJlcmVpdHMgZsO8ciBEYXRlbmJlcmVpY2hlIGF1ZiBkZW0gU3RhcGVsICIKKyIoU3RhY2spIHVuZCBIZWFwIGVyend1bmdlbiB3ZXJkZW4ga2FubiAoYnJrIHVuZCBtbWFwKSwgbcO8c3NlbiBkaWUgIgorIkNvZGViZXJlaWNoZSBwb3NpdGlvbnN1bmFiaMOkbmdpZyDDvGJlcnNldHp0IHdlcmRlbi4gTGF1ZnplaXRiaWJsaW90aGVrZW4gIgorIm1hY2hlbiBkaWVzIGJlcmVpdHMgKC1mUElDKSwgc28gZGFzcyBzaWUgQVNMUiBhdXRvbWF0aXNjaCBlcmhhbHRlbiwgYWJlciAiCisiUHJvZ3JhbW0tLnRleHQtUmVnaW9uZW4gbcO8c3NlbiBtaXQgUElFIGdlYmF1dCB3ZXJkZW4sIHVtIEFTTFIgenUgZXJoYWx0ZW4uICIKKyJXZW5uIGRpZXMgcGFzc2llcnQsIHNpbmQgUk9QLSAoUmV0dXJuIE9yaWVudGVkIFByb2dyYW1taW5nKSBBbmdyaWZmZSBzZWhyICIKKyJ2aWVsIHNjaHdlcmVyIGR1cmNoenVmw7xocmVuLCBkYSBlcyBrZWluZSBzdGF0aXNjaGVuIE9ydGUgbWVociBnaWJ0LCB6dSBkZW5lbiAiCisid8OkaHJlbmQgZWluZXMgU3BlaWNoZXJ2ZXJmw6Rsc2NodW5nc2FuZ3JpZmZzIGhpbmdlc3BydW5nZW4gd2VyZGVuIGvDtm5udGUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyNTkKK21zZ2lkICIiCisiVGhpcyBpcyBub3QgY29tcGF0aWJsZSB3aXRoIEI8LWZQSUM+IHNvIGNhcmUgbXVzdCBiZSB0YWtlbiB3aGVuIGJ1aWxkaW5nICIKKyJzaGFyZWQgb2JqZWN0cy4iCittc2dzdHIgIiIKKyJEaWVzIGlzdCBuaWNodCBtaXQgQjwtZlBJQz4ga29tcGF0aWJlbCwgZGFoZXIgbXVzcyBiZWltIEVyc3RlbGxlbiB2b24gIgorIkxhdWZ6ZWl0YmlibGlvdGhla2VuIFZvcnNpY2h0IGFuZ2V3YW5kdCB3ZXJkZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyNjUKK21zZ2lkICIiCisiQWRkaXRpb25hbGx5LCBzaW5jZSBQSUUgaXMgaW1wbGVtZW50ZWQgdmlhIGEgZ2VuZXJhbCByZWdpc3Rlciwgc29tZSAiCisiYXJjaGl0ZWN0dXJlcyAobW9zdCBub3RhYmx5IGkzODYpIGNhbiBzZWUgcGVyZm9ybWFuY2UgbG9zc2VzIG9mIHVwIHRvIDE1JSBpbiAiCisidmVyeSB0ZXh0LXNlZ21lbnQtaGVhdnkgYXBwbGljYXRpb24gd29ya2xvYWRzOyBtb3N0IHdvcmtsb2FkcyBzZWUgbGVzcyB0aGFuICIKKyIxJS4gQXJjaGl0ZWN0dXJlcyB3aXRoIG1vcmUgZ2VuZXJhbCByZWdpc3RlcnMgKGUuZy4gYW1kNjQpICBkbyBub3Qgc2VlIGFzICIKKyJoaWdoIGEgd29yc3QtY2FzZSBwZW5hbHR5LiIKK21zZ3N0ciAiIgorIlp1c8OkdHpsaWNoIGvDtm5uZW4gYXVmIGVpbmlnZW4gQXJjaGl0ZWt0dXJlbiAoYW0gZGV1dGxpY2hzdGVuIGF1ZiBpMzY4KSAiCisiTGVpc3R1bmdzdmVybHVzdGUgdm9uIGJpcyB6dSAxNSUgaW4gc2VociB0ZXh0LVNlZ21lbnQtbGFzdGlnZW4gIgorIkFud2VuZHVuZ3Nmw6RsbGVuIGF1ZnRyZXRlbiwgZGEgUElFIMO8YmVyIGFsbGdlbWVpbmUgUmVnaXN0ZXIgaW1wbGVtZW50aWVydCAiCisiaXN0OyBpbiBkZW4gbWVpc3RlbiBBbndlbmR1bmdzZsOkbGxlbiBzaW5kIGRpZXMgd2VuaWdlciBhbHMgMSUuIEFyY2hpdGVrdHVyZW4gIgorIm1pdCBtZWhyIGFsbGdlbWVpbmVuIFJlZ2lzdGVybiAoei5CLiBBbWQ2NCkgZXJmYWhyZW4gbmljaHQgZGllc2UgIgorIlNjaGxpbW1zdGZhbGwtU3RyYWZlLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjY4Cittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMTAtMjAxMSBSYXBoYVxcWzplXWwgSGVydHpvZyIKK21zZ3N0ciAiQ29weXJpZ2h0IFxcKGNvIDIwMDctMjAxMSBSYXBoYVxcWzplXWwgSGVydHpvZyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjcwCittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMTEgS2VlcyBDb29rIgorbXNnc3RyICJDb3B5cmlnaHQgXFwoY28gMjAxMSBLZWVzIENvb2siCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLWJ1aWxkcGFja2FnZSIKK21zZ3N0ciAiZHBrZy1idWlsZHBhY2thZ2UiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NAorbXNnaWQgImRwa2ctYnVpbGRwYWNrYWdlIC0gYnVpbGQgYmluYXJ5IG9yIHNvdXJjZSBwYWNrYWdlcyBmcm9tIHNvdXJjZXMiCittc2dzdHIgImRwa2ctYnVpbGRwYWNrYWdlIC0gYmF1ZSBCaW7DpHItIG9kZXIgUXVlbGxwYWtldGUgYXVzIFF1ZWxsZW4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6OAorbXNnaWQgIkI8ZHBrZy1idWlsZHBhY2thZ2U+IFtJPG9wdGlvbj4uLi5dIgorbXNnc3RyICJCPGRwa2ctYnVpbGRwYWNrYWdlPiBbSTxPcHRpb24+Li4uXSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxMworbXNnaWQgIiIKKyJCPGRwa2ctYnVpbGRwYWNrYWdlPiBpcyBhIHByb2dyYW0gdGhhdCBhdXRvbWF0ZXMgdGhlIHByb2Nlc3Mgb2YgYnVpbGRpbmcgYSAiCisiRGViaWFuIHBhY2thZ2UuIEl0IGNvbnNpc3RzIG9mIHRoZSBmb2xsb3dpbmcgc3RlcHM6IgorbXNnc3RyICIiCisiQjxkcGtnLWJ1aWxkcGFja2FnZT4gaXN0IGVpbiBQcm9ncmFtbSwgZGFzIGRlbiBQcm96ZXNzIGRlcyBCYXVlbnMgZWluZXMgIgorIkRlYmlhbi1QYWtldGVzIGF1dG9tYXRpc2llcnQuIEVzIGJlc3RlaHQgYXVzIGRlbiBmb2xnZW5kZW4gU2Nocml0dGVuOiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPDEuPiIKK21zZ3N0ciAiQjwxLj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTcKK21zZ2lkICIiCisiSXQgcHJlcGFyZXMgdGhlIGJ1aWxkIGVudmlyb25tZW50IGJ5IHNldHRpbmcgdmFyaW91cyBlbnZpcm9ubWVudCB2YXJpYWJsZXMgIgorIihzZWUgQjxFTlZJUk9OTUVOVD4pIGFuZCBjYWxscyBCPGRwa2ctc291cmNlIC0tYmVmb3JlLWJ1aWxkPiAodW5sZXNzIEI8LVQ+ICIKKyJvciBCPC0tdGFyZ2V0PiBoYXMgYmVlbiB1c2VkKS4iCittc2dzdHIgIiIKKyJFcyBiZXJlaXRldCBkaWUgQmF1dW1nZWJ1bmcgdm9yLCBpbmRlbSB2ZXJzY2hpZWRlbmUgVW1nZWJ1bmdzdmFyaWFibGVuICIKKyJnZXNldHp0IHdlcmRlbiAoc2llaGUgQjxVTUdFQlVORz4pIHVuZCBydWZ0IEI8ZHBrZy1zb3VyY2UgLS1iZWZvcmUtYnVpbGQ+ICIKKyJhdWYgKGVzIHNlaSBkZW5uLCBCPC1UPiBvZGVyIEI8LS10YXJnZXQ+IHd1cmRlIHZlcndhbmR0KS4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE3CisjLCBuby13cmFwCittc2dpZCAiQjwyLj4iCittc2dzdHIgIkI8Mi4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIwCittc2dpZCAiIgorIkl0IGNoZWNrcyB0aGF0IHRoZSBidWlsZC1kZXBlbmRlbmNpZXMgYW5kIGJ1aWxkLWNvbmZsaWN0cyBhcmUgc2F0aXNmaWVkICIKKyIodW5sZXNzIEI8LWQ+IGlzIHNwZWNpZmllZCkuIgorbXNnc3RyICIiCisiRXMgcHLDvGZ0LCBkYXNzIEJhdWFiaMOkbmdpZ2tlaXRlbiB1bmQgLWtvbmZsaWt0ZSBlcmbDvGxsdCBzaW5kIChmYWxscyBCPC1kPiAiCisibmljaHQgYW5nZWdlYmVuIGlzdCkuIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMAorIywgbm8td3JhcAorbXNnaWQgIkI8My4+IgorbXNnc3RyICJCPDMuPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyNQorbXNnaWQgIiIKKyJJZiBhIHNwZWNpZmljIHRhcmdldCBoYXMgYmVlbiBzZWxlY3RlZCB3aXRoIHRoZSBCPC1UPiBvciBCPC0tdGFyZ2V0PiBvcHRpb24sICIKKyJpdCBjYWxscyB0aGF0IHRhcmdldCBhbmQgc3RvcHMgaGVyZS4gT3RoZXJ3aXNlIGl0IGNhbGxzIEI8ZmFrZXJvb3QgZGViaWFuLyIKKyJydWxlcyBjbGVhbj4gdG8gY2xlYW4gdGhlIGJ1aWxkLXRyZWUgKHVubGVzcyBCPC1uYz4gaXMgc3BlY2lmaWVkKS4iCittc2dzdHIgIiIKKyJGYWxscyBlaW4gc3BlemllbGxlcyBaaWVsIG1pdCBkZXIgT3B0aW9uIEI8LVQ+IG9kZXIgQjwtLXRhcmdldD4gYXVzZ2V3w6RobHQgIgorInd1cmRlLCBydWZ0IGVzIGRpZXNlIFppZWwgYXVmIHVuZCBlbmRldCBoaWVyLiBBbmRlcm5mYWxscyBydWZ0IGVzIEI8ZmFrZXJvb3QgIgorImRlYmlhbi8gcnVsZXMgY2xlYW4+IGF1ZiwgdW0gZGVuIEJhdS1CYXVtIHp1IGJlcmVpbmlnZW4gKGZhbGxzIEI8LW5jPiBuaWNodCAiCisiYW5nZWdlYmVuIGlzdCkuIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyNQorIywgbm8td3JhcAorbXNnaWQgIkI8NC4+IgorbXNnc3RyICJCPDQuPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyOQorbXNnaWQgIiIKKyJJdCBjYWxscyBCPGRwa2ctc291cmNlIC1iPiB0byBnZW5lcmF0ZSB0aGUgc291cmNlIHBhY2thZ2UgKHVubGVzcyBhIGJpbmFyeS0iCisib25seSBidWlsZCBoYXMgYmVlbiByZXF1ZXN0ZWQgd2l0aCBCPC1iPiwgQjwtQj4gb3IgQjwtQT4pLiIKK21zZ3N0ciAiIgorIkVzIHJ1ZnQgQjxkcGtnLXNvdXJjZSAtYj4gYXVmLCB1bSBkYXMgUXVlbGxwYWtldCB6dSBlcnN0ZWxsZW4gKGZhbGxzIG5pY2h0ICIKKyJtaXQgQjwtYj4sIEI8LUI+IG9kZXIgQjwtQT4gZWluIHJlaW4tYmluw6RyZXIgQmF1IGVyYmV0ZW4gd3VyZGUpLiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPDUuPiIKK21zZ3N0ciAiQjw1Lj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MzYKK21zZ2lkICIiCisiSXQgY2FsbHMgQjxkZWJpYW4vcnVsZXM+IEI8YnVpbGQ+IGZvbGxvd2VkIGJ5IEI8ZmFrZXJvb3QgZGViaWFuL3J1bGVzPiAiCisiSTxiaW5hcnktdGFyZ2V0PiAodW5sZXNzIGEgc291cmNlLW9ubHkgYnVpbGQgaGFzIGJlZW4gcmVxdWVzdGVkIHdpdGggQjwtUz4pLiAiCisiTm90ZSB0aGF0IEk8YmluYXJ5LXRhcmdldD4gaXMgZWl0aGVyIEI8YmluYXJ5PiAoZGVmYXVsdCBjYXNlLCBvciBpZiBCPC1iPiBpcyAiCisic3BlY2lmaWVkKSAgb3IgQjxiaW5hcnktYXJjaD4gKGlmIEI8LUI+IGlzIHNwZWNpZmllZCkgb3IgQjxiaW5hcnktaW5kZXA+IChpZiAiCisiQjwtQT4gaXMgc3BlY2lmaWVkKS4iCittc2dzdHIgIiIKKyJFcyBydWZ0IEI8ZGViaWFuL3J1bGVzPiBCPGJ1aWxkPiwgZ2Vmb2xndCB2b24gQjxmYWtlcm9vdCBkZWJpYW4vcnVsZXM+ICIKKyJJPEJpbsOkcnppZWw+IGF1ZiAoZmFsbHMgbmljaHQgZWluIHJlaW5lciBRdWVsbGJhdSBtaXQgQjwtUz4gZXJiZXRlbiB3dXJkZSkuICIKKyJCZWFjaHRlbiBTaWUsIGRhc3MgSTxCaW7DpHJ6aWVsPiBlbnR3ZWRlciBCPGJpbmFyeT4gKFN0YW5kYXJkZmFsbCwgb2RlciBmYWxscyAiCisiQjwtYj4gYW5nZWdlYmVuIGlzdCkgb2RlciBCPGJpbmFyeS1hcmNoPiAoZmFsbHMgQjwtQj4gYW5nZWdlYmVuIGlzdCkgb2RlciAiCisiQjxiaW5hcnktaW5kZXA+IChmYWxscyBCPC1BPiBhbmdlZ2ViZW4gaXN0KSBsYXV0ZXQuIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTozNgorIywgbm8td3JhcAorbXNnaWQgIkI8Ni4+IgorbXNnc3RyICJCPDYuPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTozOQorbXNnaWQgIiIKKyJJdCBjYWxscyBCPGdwZz4gdG8gc2lnbiB0aGUgQjwuZHNjPiBmaWxlIChpZiBhbnksIHVubGVzcyBCPC11cz4gaXMgIgorInNwZWNpZmllZCkuIgorbXNnc3RyICIiCisiRXMgcnVmdCBCPGdwZz4gYXVmLCB1bSBkaWUgQjwuZHNjPi1EYXRlaSB6dSBzaWduaWVyZW4gKGZhbGxzIHZvcmhhbmRlbiB1bmQgIgorIkI8LXVzPiBuaWNodCBhbmdlZ2ViZW4gd3VyZGUpLiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MzkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPDcuPiIKK21zZ3N0ciAiQjw3Lj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NDMKK21zZ2lkICIiCisiSXQgY2FsbHMgQjxkcGtnLWdlbmNoYW5nZXM+IHRvIGdlbmVyYXRlIGEgQjwuY2hhbmdlcz4gZmlsZS4gIE1hbnkgQjxkcGtnLSIKKyJidWlsZHBhY2thZ2U+IG9wdGlvbnMgYXJlIGZvcndhcmRlZCB0byBCPGRwa2ctZ2VuY2hhbmdlcz4uIgorbXNnc3RyICIiCisiRXMgcnVmdCBCPGRwa2ctZ2VuY2hhbmdlcz4gYXVmLCB1bSBlaW5lIEI8LmNoYW5nZXM+LURhdGVpIHp1IGVyc3RlbGxlbi4gIgorIlZpZWxlIE9wdGlvbmVuIHZvbiBCPGRwa2ctYnVpbGRwYWNrYWdlPiB3ZXJkZW4gYW4gQjxkcGtnLWdlbmNoYW5nZXM+ICIKKyJ3ZWl0ZXJnZWxlaXRldC4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjQzCisjLCBuby13cmFwCittc2dpZCAiQjw4Lj4iCittc2dzdHIgIkI8OC4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjQ2Cittc2dpZCAiIgorIkl0IGNhbGxzIEI8Z3BnPiB0byBzaWduIHRoZSBCPC5jaGFuZ2VzPiBmaWxlICh1bmxlc3MgQjwtdWM+IGlzIHNwZWNpZmllZCkuIgorbXNnc3RyICIiCisiRXMgcnVmdCBCPGdwZz4gYXVmLCB1bSBkaWUgQjwuY2hhbmdlcz4tRGF0ZWkgenUgc2lnbmllcmVuIChmYWxscyBCPC11Yz4gIgorIm5pY2h0IGFuZ2VnZWJlbiB3dXJkZSkuIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo0NgorIywgbm8td3JhcAorbXNnaWQgIkI8OS4+IgorbXNnc3RyICJCPDkuPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo0OQorbXNnaWQgIiIKKyJJZiBCPC10Yz4gaXMgc3BlY2lmaWVkLCBpdCB3aWxsIGNhbGwgQjxmYWtlcm9vdCBkZWJpYW4vcnVsZXMgY2xlYW4+IGFnYWluLiAiCisiRmluYWxseSBpdCBjYWxscyBCPGRwa2ctc291cmNlIC0tYWZ0ZXItYnVpbGQ+LiIKK21zZ3N0ciAiIgorIkZhbGxzIEI8LXRjPiBhbmdlZ2ViZW4gaXN0LCB3aXJkIEI8ZmFrZXJvb3QgZGViaWFuL3J1bGVzIGNsZWFuPiBlcm5ldXQgIgorImF1ZmdlcnVmZW4uIFNjaGxpZcOfbGljaCBydWZ0IGVzIEI8ZHBrZy1zb3VyY2UgLS1hZnRlci1idWlsZD4gYXVmLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NTEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1iPiIKK21zZ3N0ciAiQjwtYj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NTUKK21zZ2lkICIiCisiU3BlY2lmaWVzIGEgYmluYXJ5LW9ubHkgYnVpbGQsIG5vIHNvdXJjZSBmaWxlcyBhcmUgdG8gYmUgYnVpbHQgYW5kL29yICIKKyJkaXN0cmlidXRlZC4gUGFzc2VkIHRvIEI8ZHBrZy1nZW5jaGFuZ2VzPi4iCittc2dzdHIgIiIKKyJTcGV6aWZpemllcnQgZWluZW4gcmVpbiBiaW7DpHJlbiBCYXUsIGtlaW5lIFF1ZWxsZGF0ZWllbiBzb2xsZW4gZ2ViYXV0IHVuZC8iCisib2RlciB2ZXJ0cmllYmVuIChpbSBTaW5uZSB2b24gdmVydGVpbGVuKSB3ZXJkZW4uIFdpcmQgYW4gQjxkcGtnLWdlbmNoYW5nZXM+ICIKKyJ3ZWl0ZXJnZWdlYmVuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NTUgZHBrZy1jaGVja2J1aWxkZGVwcy4xOjIzCisjLCBuby13cmFwCittc2dpZCAiQjwtQj4iCittc2dzdHIgIkI8LUI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjU5Cittc2dpZCAiIgorIlNwZWNpZmllcyBhIGJpbmFyeS1vbmx5IGJ1aWxkLCBsaW1pdGVkIHRvIGFyY2hpdGVjdHVyZSBkZXBlbmRlbnQgcGFja2FnZXMuICAiCisiUGFzc2VkIHRvIEI8ZHBrZy1nZW5jaGFuZ2VzPi4iCittc2dzdHIgIiIKKyJTcGV6aWZpemllcnQgZWluZW4gcmVpbiBiaW7DpHJlbiBCYXUsIGJlc2NocsOkbmt0IGF1ZiBhcmNoaXRla3R1cmFiaMOkbmdpZ2UgIgorIlBha2V0ZS4gV2lyZCBhbiBCPGRwa2ctZ2VuY2hhbmdlcz4gd2VpdGVyZ2VnZWJlbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjU5CisjLCBuby13cmFwCittc2dpZCAiQjwtQT4iCittc2dzdHIgIkI8LUE+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjYzCittc2dpZCAiIgorIlNwZWNpZmllcyBhIGJpbmFyeS1vbmx5IGJ1aWxkLCBsaW1pdGVkIHRvIGFyY2hpdGVjdHVyZSBpbmRlcGVuZGVudCBwYWNrYWdlcy4gIgorIlBhc3NlZCB0byBCPGRwa2ctZ2VuY2hhbmdlcz4uIgorbXNnc3RyICIiCisiU3BlemlmaXppZXJ0IGVpbmVuIHJlaW4gYmluw6RyZW4gQmF1LCBiZXNjaHLDpG5rdCBhdWYgYXJjaGl0ZWt0dXJ1bmFiaMOkbmdpZ2UgIgorIlBha2V0ZS4gV2lyZCBhbiBCPGRwa2ctZ2VuY2hhbmdlcz4gd2VpdGVyZ2VnZWJlbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjYzIGRwa2ctZ2VuY2hhbmdlcy4xOjI3CisjLCBuby13cmFwCittc2dpZCAiQjwtUz4iCittc2dzdHIgIkI8LVM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjY3Cittc2dpZCAiIgorIlNwZWNpZmllcyBhIHNvdXJjZS1vbmx5IGJ1aWxkLCBubyBiaW5hcnkgcGFja2FnZXMgbmVlZCB0byBiZSBtYWRlLiAgUGFzc2VkICIKKyJ0byBCPGRwa2ctZ2VuY2hhbmdlcz4uIgorbXNnc3RyICIiCisiU3BlemlmaXppZXJ0IGVpbmVuIHJlaW5lbiBCYXUgZGVyIFF1ZWxsZW4sIGtlaW5lIEJpbsOkcnBha2V0ZSBtw7xzc2VuIGVyc3RlbGx0ICIKKyJ3ZXJkZW4uIFdpcmQgYW4gQjxkcGtnLWdlbmNoYW5nZXM+IHdlaXRlcmdlZ2ViZW4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo2NworIywgbm8td3JhcAorbXNnaWQgIkI8LUY+IgorbXNnc3RyICJCPC1GPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo3MQorbXNnaWQgIiIKKyJTcGVjaWZpZXMgYSBub3JtYWwgZnVsbCBidWlsZCwgYmluYXJ5IGFuZCBzb3VyY2UgcGFja2FnZXMgd2lsbCBiZSBidWlsdC4gICIKKyJUaGlzIGlzIHRoZSBzYW1lIGFzIHRoZSBkZWZhdWx0IGNhc2Ugd2hlbiBubyBidWlsZCBvcHRpb24gaXMgc3BlY2lmaWVkLiIKK21zZ3N0ciAiIgorIlNwZXppZml6aWVydCBlaW5lbiBub3JtYWxlbiBrb21wbGV0dGVuIEJhdSwgQmluw6RyLSB1bmQgUXVlbGxwYWtldGUgd2VyZGVuICIKKyJnZWJhdXQuIERpZXMgaXN0IGlkZW50aXNjaCB6dW0gU3RhbmRhcmRmYWxsLCB3ZW5uIGtlaW5lIEJhdW9wdGlvbiAiCisic3BlemlmaXppZXJ0IHdpcmQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjczCittc2dpZCAiQjwtLXRhcmdldD0+STx0YXJnZXQ+IgorbXNnc3RyICJCPC0tdGFyZ2V0PT5JPFppZWw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjc1Cittc2dpZCAiQjwtLXRhcmdldCA+STx0YXJnZXQ+IgorbXNnc3RyICJCPC0tdGFyZ2V0ID5JPFppZWw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjc3Cittc2dpZCAiQjwtVD5JPHRhcmdldD4iCittc2dzdHIgIkI8LVQ+STxaaWVsPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo4MworbXNnaWQgIiIKKyJDYWxscyBCPGRlYmlhbi9ydWxlcz4gSTx0YXJnZXQ+IGFmdGVyIGhhdmluZyBzZXR1cCB0aGUgYnVpbGQgZW52aXJvbm1lbnQgYW5kICIKKyJzdG9wcyB0aGUgcGFja2FnZSBidWlsZCBwcm9jZXNzIGhlcmUuIElmIEI8LS1hcy1yb290PiBpcyBhbHNvIGdpdmVuLCB0aGVuICIKKyJ0aGUgY29tbWFuZCBpcyBleGVjdXRlZCBhcyByb290IChzZWUgQjwtcj4pLiBOb3RlIHRoYXQgb2ZmaWNpYWwgdGFyZ2V0cyB0aGF0ICIKKyJhcmUgcmVxdWlyZWQgdG8gYmUgcnVuIGFzIHJvb3QgYnkgdGhlIERlYmlhbiBwb2xpY3kgZG8gbm90IG5lZWQgdGhpcyBvcHRpb24uIgorbXNnc3RyICIiCisiUnVmdCBCPGRlYmlhbi9ydWxlcz4gSTxaaWVsPiBhdWYsIG5hY2hkZW0gZGllIEJhdXVtZ2VidW5nIGVpbmdlcmljaHRldCB3dXJkZSAiCisidW5kIGJlZW5kZXQgZGVuIFBha2V0YmF1cHJvemVzcyBoaWVyLiBGYWxscyBhdWNoIEI8LS1hcy1yb290PiBhbmdlZ2ViZW4gIgorInd1cmRlLCB3aXJkIGRlciBCZWZlaGwgbWl0IHJvb3QtUmVjaHRlbiBhdXNnZWbDvGhydCAoc2llaGUgQjwtcj4pLiBCZWFjaHRlbiAiCisiU2llLCBkYXNzIG9mZml6aWVsbGUgWmllbGUsIGJlaSBkZW5lbiBkaWUgRGViaWFuLVJpY2h0bGluaWVuIHZlcmxhbmdlbiwgZGFzcyAiCisiU2llIG1pdCByb290LVJlY2h0ZW4gYXVzZ2Vmw7xocnQgd2VyZGVuLCBkaWVzZSBPcHRpb24gbmljaHQgYmVuw7Z0aWdlbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjg0CisjLCBuby13cmFwCittc2dpZCAiQjwtLWFzLXJvb3Q+IgorbXNnc3RyICJCPC0tYXMtcm9vdD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6ODgKK21zZ2lkICIiCisiT25seSBtZWFuaW5nZnVsIHRvZ2V0aGVyIHdpdGggQjwtLXRhcmdldD4uIFJlcXVpcmVzIHRoYXQgdGhlIHRhcmdldCBiZSBydW4gIgorIndpdGggcm9vdCByaWdodHMuIgorbXNnc3RyICIiCisiRXJnaWJ0IG51ciBtaXQgQjwtLXRhcmdldD4gZWluZW4gU2lubi4gRXJmb3JkZXJ0LCBkYXNzIGRhcyBaaWVsIG1pdCBSb290LSIKKyJSZWNodGVuIGF1c2dlZsO8aHJ0IHdpcmQuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo5MCBkcGtnLWdlbmNoYW5nZXMuMTozNgorIywgbm8td3JhcAorbXNnaWQgIkI8LXNpPiIKK21zZ3N0ciAiQjwtc2k+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo5MiBkcGtnLWdlbmNoYW5nZXMuMTo0MgorIywgbm8td3JhcAorbXNnaWQgIkI8LXNhPiIKK21zZ3N0ciAiQjwtc2E+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo5NCBkcGtnLWdlbmNoYW5nZXMuMTo0NQorIywgbm8td3JhcAorbXNnaWQgIkI8LXNkPiIKK21zZ3N0ciAiQjwtc2Q+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo5NiBkcGtnLWdlbmNoYW5nZXMuMTo0OSBkcGtnLWdlbmNvbnRyb2wuMTozOAorIzogZHBrZy1nZW5zeW1ib2xzLjE6Mzc3CisjLCBuby13cmFwCittc2dpZCAiQjwtdj5JPHZlcnNpb24+IgorbXNnc3RyICJCPC12Pkk8VmVyc2lvbj4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjk4IGRwa2ctZ2VuY2hhbmdlcy4xOjU0CisjLCBuby13cmFwCittc2dpZCAiQjwtQz5JPGNoYW5nZXNkZXNjcmlwdGlvbj4iCittc2dzdHIgIkI8LUM+STzDhG5kZXJ1bmdzYmVzY2hyZWlidW5nPiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTAwIGRwa2ctZ2VuY2hhbmdlcy4xOjYwCisjLCBuby13cmFwCittc2dpZCAiQjwtbT5JPG1haW50YWluZXJhZGRyZXNzPiIKK21zZ3N0ciAiQjwtbT5JPEJldHJldWVyYWRyZXNzZT4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEwMiBkcGtnLWdlbmNoYW5nZXMuMTo2NgorIywgbm8td3JhcAorbXNnaWQgIkI8LWU+STxtYWludGFpbmVyYWRkcmVzcz4iCittc2dzdHIgIkI8LWU+STxCZXRyZXVlcmFkcmVzc2U+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEwNAorbXNnaWQgIlBhc3NlZCB1bmNoYW5nZWQgdG8gQjxkcGtnLWdlbmNoYW5nZXM+LiBTZWUgaXRzIG1hbnVhbCBwYWdlLiIKK21zZ3N0ciAiIgorIldpcmQgdW52ZXLDpG5kZXJ0IGFuIEI8ZHBrZy1nZW5jaGFuZ2VzPiB3ZWl0ZXJnZWdlYmVuLiBMZXNlbiBTaWUgZGVzc2VuICIKKyJIYW5kYnVjaHNlaXRlLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTA1CisjLCBuby13cmFwCittc2dpZCAiQjwtYT5JPGFyY2hpdGVjdHVyZT4iCittc2dzdHIgIkI8LWE+STxBcmNoaXRla3R1cj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTEwCittc2dpZCAiIgorIlNwZWNpZnkgdGhlIERlYmlhbiBhcmNoaXRlY3R1cmUgd2UgYnVpbGQgZm9yLiBUaGUgYXJjaGl0ZWN0dXJlIG9mIHRoZSAiCisibWFjaGluZSB3ZSBidWlsZCBvbiBpcyBkZXRlcm1pbmVkIGF1dG9tYXRpY2FsbHksIGFuZCBpcyBhbHNvIHRoZSBkZWZhdWx0IGZvciAiCisidGhlIGhvc3QgbWFjaGluZS4iCittc2dzdHIgIiIKKyJTcGV6aWZpemllcnQgZGllIERlYmlhbi1BcmNoaXRla3R1ciwgZsO8ciBkaWUgZ2ViYXV0IHdpcmQuIERpZSBBcmNoaXRla3R1ciAiCisiZGVyIE1hc2NoaW5lLCBhdWYgZGVyIGdlYmF1dCB3aXJkLCB3aXJkIGF1dG9tYXRpc2NoIGJlc3RpbW10LCB1bmQgaXN0IGF1Y2ggIgorImRpZSBWb3JlaW5zdGVsbHVuZyBmw7xyIGRpZSBHYXN0Z2ViZXJtYXNjaGluZSAowrtob3N0IG1hY2hpbmXCqykuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjExNQorbXNnaWQgIiIKKyJTcGVjaWZ5IHRoZSBHTlUgc3lzdGVtIHR5cGUgd2UgYnVpbGQgZm9yLiBJdCBjYW4gYmUgdXNlZCBpbiBwbGFjZSBvZiAtYSBvciAiCisiYXMgYSBjb21wbGVtZW50IHRvIG92ZXJyaWRlIHRoZSBkZWZhdWx0IEdOVSBzeXN0ZW0gdHlwZSBvZiB0aGUgdGFyZ2V0IERlYmlhbiAiCisiYXJjaGl0ZWN0dXJlLiIKK21zZ3N0ciAiIgorIlNwZXppZml6aWVyZSBkZW4gR05VLVN5c3RlbXR5cCwgZsO8ciBkZW4gd2lyIGJhdWVuLiBFciBrYW5uIGFuc3RlbGxlIHZvbiAtYSAiCisib2RlciBhbHMgRXJnw6RuenVuZyB2ZXJ3YW5kdCB3ZXJkZW4sIHVtIGRlbiBTdGFuZGFyZCBHTlUtU3lzdGVtdHlwIGRlciBaaWVsLSIKKyJEZWJpYW4tQXJjaGl0ZWt0dXIgenUgw7xiZXJzY2hyZWliZW4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxMTUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1qPkk8am9icz4iCittc2dzdHIgIkI8LWo+STxBdWZ0csOkZ2U+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEyNgorbXNnaWQgIiIKKyJOdW1iZXIgb2Ygam9icyBhbGxvd2VkIHRvIGJlIHJ1biBzaW11bHRhbmVvdXNseSwgZXF1aXZhbGVudCB0byB0aGUgQjxtYWtlPiIKKyIoMSkgIG9wdGlvbiBvZiB0aGUgc2FtZSBuYW1lLiBXaWxsIGFkZCBpdHNlbGYgdG8gdGhlIE1BS0VGTEFHUyBlbnZpcm9ubWVudCAiCisidmFyaWFibGUsIHdoaWNoIHNob3VsZCBjYXVzZSBhbGwgc3Vic2VxdWVudCBtYWtlIGludm9jYXRpb25zIHRvIGluaGVyaXQgdGhlICIKKyJvcHRpb24uIEFsc28gYWRkcyBCPHBhcmFsbGVsPT5JPGpvYnM+IHRvIHRoZSBERUJfQlVJTERfT1BUSU9OUyBlbnZpcm9ubWVudCAiCisidmFyaWFibGUgd2hpY2ggYWxsb3dzIGRlYmlhbi9ydWxlcyBmaWxlcyB0byB1c2UgdGhpcyBpbmZvcm1hdGlvbiBmb3IgdGhlaXIgIgorIm93biBwdXJwb3Nlcy4gIFRoZSBCPHBhcmFsbGVsPT5JPGpvYnM+IGluIERFQl9CVUlMRF9PUFRJT05TIGVudmlyb25tZW50ICIKKyJ2YXJpYWJsZSB3aWxsIG92ZXJyaWRlIHRoZSBCPC1qPiB2YWx1ZSBpZiB0aGlzIG9wdGlvbiBpcyBnaXZlbi4iCittc2dzdHIgIiIKKyJBbnphaGwgYW4gQXVmdHLDpGdlbiwgZGllIHNpbXVsdGFuIGxhdWZlbiBkw7xyZmVuLCDDpHF1aXZhbGVudCB6dSBkZXIgT3B0aW9uICIKKyJ2b24gQjxtYWtlPigxKSBtaXQgZGVtIGdsZWljaGVuIE5hbWVuLiBGw7xndCBzaWNoIHNlbGJzdCB6dSBkZXIgIgorIlVtZ2VidW5nc3ZhcmlhYmxlbiBNQUtFRkxBR1MgaGluenUsIHdhcyBkYXp1IGbDvGhyZW4gc29sbHRlLCBkYXNzIGFsbGUgIgorImZvbGdlbmRlbiBBdWZydWZlIHZvbiBtYWtlIGRpZXNlIE9wdGlvbiBlcmJlbiB3ZXJkZW4uIEbDvGd0IGF1Y2ggIgorIkI8cGFyYWxsZWw9Pkk8QXVmdHLDpGdlPiB6dSBkZXIgVW1nZWJ1bmdzdmFyaWFibGVuIERFQl9CVUlMRF9PUFRJT05TIGhpbnp1LCAiCisid2FzIGVzIGRlYmlhbi9ydWxlcy1EYXRlaWVuIGVybGF1YnQsIGRpZXNlIEluZm9ybWF0aW9uIGbDvHIgZWlnZW5lIFp3ZWNrZSB6dSAiCisidmVyd2VuZGVuLiBEZXIgRWludHJhZyBCPHBhcmFsbGVsPT5JPEF1ZnRyw6RnZT4gaW4gZGVyIFVtZ2VidW5nc3ZhcmlhYmxlbiAiCisiREVCX0JVSUxEX09QVElPTlMgw7xiZXJzY2hyZWlidCBkZW4gV2VydCB2b24gQjwtaj4sIGZhbGxzIGRpZXNlIE9wdGlvbiAiCisiYW5nZWdlYmVuIGlzdC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEyNgorIywgbm8td3JhcAorbXNnaWQgIkI8LUQ+IgorbXNnc3RyICJCPC1EPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxMzAKK21zZ2lkICIiCisiQ2hlY2sgYnVpbGQgZGVwZW5kZW5jaWVzIGFuZCBjb25mbGljdHM7IGFib3J0IGlmIHVuc2F0aXNmaWVkLiBUaGlzIGlzIHRoZSAiCisiZGVmYXVsdCBiZWhhdmlvci4iCittc2dzdHIgIiIKKyJQcsO8ZmUgQmF1YWJow6RuZ2lna2VpdGVuIHVuZCAta29uZmxpa3RlOyBBYmJydWNoIGZhbGxzIGRpZXNlIG5pY2h0IGVyZsO8bGx0ICIKKyJzaW5kLiBEaWVzIGlzdCBkYXMgU3RhbmRhcmR2ZXJoYWx0ZW4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxMzAgZHBrZy1nZW5zeW1ib2xzLjE6NDMyCisjLCBuby13cmFwCittc2dpZCAiQjwtZD4iCittc2dzdHIgIkI8LWQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEzMworbXNnaWQgIkRvIG5vdCBjaGVjayBidWlsZCBkZXBlbmRlbmNpZXMgYW5kIGNvbmZsaWN0cy4iCittc2dzdHIgIsOcYmVycHLDvGZlIEJhdWFiaMOkbmdpZ2tlaXRlbiB1bmQgLWtvbmZsaWt0ZSBuaWNodC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEzMworIywgbm8td3JhcAorbXNnaWQgIkI8LW5jPiIKK21zZ3N0ciAiQjwtbmM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEzNworbXNnaWQgIiIKKyJEbyBub3QgY2xlYW4gdGhlIHNvdXJjZSB0cmVlIChpbXBsaWVzIEI8LWI+IGlmIG5vdGhpbmcgZWxzZSBoYXMgYmVlbiAiCisic2VsZWN0ZWQgYW1vbmcgQjwtQj4sIEI8LUE+IG9yIEI8LVM+KS4iCittc2dzdHIgIiIKKyJCZXJlaW5pZ2UgZGVuIFF1ZWxsYmF1bSBuaWNodCAoaW1wbGl6aWVydCBCPC1iPiwgZmFsbHMgYW5zb25zdGVuIG5pY2h0cyBhdXMgIgorIkI8LUI+LCBCPC1BPiBvZGVyIEI8LVM+IGdld8OkaGx0IHd1cmRlKS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEzNworIywgbm8td3JhcAorbXNnaWQgIkI8LXRjPiIKK21zZ3N0ciAiQjwtdGM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE0MworbXNnaWQgIiIKKyJDbGVhbiB0aGUgc291cmNlIHRyZWUgKHVzaW5nIEk8Z2Fpbi1yb290LWNvbW1hbmQ+IEI8ZGViaWFuL3J1bGVzIGNsZWFuPikgICIKKyJhZnRlciB0aGUgcGFja2FnZSBoYXMgYmVlbiBidWlsdC4iCittc2dzdHIgIiIKKyJEZW4gUXVlbGxiYXVtIHPDpHViZXJuICh2ZXJ3ZW5kZXQgSTxyb290LXdlcmRlLUJlZmVobD4gQjxkZWJpYW4vcnVsZXMgY2xlYW4+KSAiCisibmFjaGRlbSBkYXMgUGFrZXQgZ2ViYXV0IHd1cmRlLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTQzCisjLCBuby13cmFwCittc2dpZCAiQjwtcj5JPGdhaW4tcm9vdC1jb21tYW5kPiIKK21zZ3N0ciAiQjwtcj5JPHJvb3Qtd2VyZGUtQmVmZWhsPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxNjcKK21zZ2lkICIiCisiV2hlbiBCPGRwa2ctYnVpbGRwYWNrYWdlPiBuZWVkcyB0byBleGVjdXRlIHBhcnQgb2YgdGhlIGJ1aWxkIHByb2Nlc3MgYXMgIgorInJvb3QsIGl0IHByZWZpeGVzIHRoZSBjb21tYW5kIGl0IGV4ZWN1dGVzIHdpdGggSTxnYWluLXJvb3QtY29tbWFuZD4gaWYgb25lICIKKyJoYXMgYmVlbiBzcGVjaWZpZWQuIE90aGVyd2lzZSwgaWYgbm9uZSBoYXMgYmVlbiBzcGVjaWZpZWQsIEI8ZmFrZXJvb3Q+IHdpbGwgIgorImJlIHVzZWQgYnkgZGVmYXVsdCwgaWYgdGhlIGNvbW1hbmQgaXMgcHJlc2VudC4gIEk8Z2Fpbi1yb290LWNvbW1hbmQ+IHNob3VsZCAiCisic3RhcnQgd2l0aCB0aGUgbmFtZSBvZiBhIHByb2dyYW0gb24gdGhlIEI8UEFUSD4gYW5kIHdpbGwgZ2V0IGFzIGFyZ3VtZW50cyAiCisidGhlIG5hbWUgb2YgdGhlIHJlYWwgY29tbWFuZCB0byBydW4gYW5kIHRoZSBhcmd1bWVudHMgaXQgc2hvdWxkIHRha2UuICAiCisiSTxnYWluLXJvb3QtY29tbWFuZD4gY2FuIGluY2x1ZGUgcGFyYW1ldGVycyAodGhleSBtdXN0IGJlIHNwYWNlLXNlcGFyYXRlZCkgIgorImJ1dCBubyBzaGVsbCBtZXRhY2hhcmFjdGVycy4gIEk8Z2Fpbi1yb290LWNvbW1hbmQ+IG1pZ2h0IHR5cGljYWxseSBiZSAiCisiQjxmYWtlcm9vdD4sIEI8c3Vkbz4sIEI8c3VwZXI+IG9yIEI8cmVhbGx5Pi4gIEI8c3U+IGlzIG5vdCBzdWl0YWJsZSwgc2luY2UgIgorIml0IGNhbiBvbmx5IGludm9rZSB0aGUgdXNlcidzIHNoZWxsIHdpdGggQjwtYz4gaW5zdGVhZCBvZiBwYXNzaW5nIGFyZ3VtZW50cyAiCisiaW5kaXZpZHVhbGx5IHRvIHRoZSBjb21tYW5kIHRvIGJlIHJ1bi4iCittc2dzdHIgIiIKKyJXZW5uIEI8ZHBrZy1idWlsZHBhY2thZ2U+IGVpbmVuIFRlaWwgZGVzIEJhdXByb3plc3NlcyBhbHMgUm9vdCBhdXNmw7xocmVuICIKKyJtdXNzLCBzdGVsbHQgZXMgZGVtIGF1c3pmw7xocmVuZGVuIEJlZmVobCBkZW4gSTxyb290LXdlcmRlLUJlZmVobD4gdm9yYW4sICIKKyJmYWxscyBkaWVzZXIgYW5nZWdlYmVuIHd1cmRlLiBBbmRlcm5mYWxscyB3aXJkIHN0YW5kYXJkbcOkw59pZyBCPGZha2Vyb290PiAiCisidmVyd2VuZGV0LCBmYWxscyBlcyB2b3JoYW5kZW4gaXN0LiBEZXIgSTxyb290LXdlcmRlLUJlZmVobD4gc29sbHRlIGRlciBOYW1lICIKKyJkZXMgUHJvZ3JhbW1lcyBpbSBCPFBBVEg+IHNlaW4gdW5kIHdpcmQgYWxzIEFyZ3VtZW50ZSBkZW4gTmFtZW4gZGVzIHdpcmtsaWNoICIKKyJhdXN6dWbDvGhyZW5kZW4gQmVmZWhsZXMgdW5kIGRlc3NlbiBBcmd1bWVudGUgZXJoYWx0ZW4uIEk8cm9vdC13ZXJkZS1CZWZlaGw+ICIKKyJrYW5uIFBhcmFtZXRlciBlbnRoYWx0ZW4gKGRpZSBkdXJjaCBMZWVyemVpY2hlbiB2b25laW5hbmRlciBnZXRyZW5udCBzZWluICIKKyJtw7xzc2VuKSwgYWJlciBrZWluZSBTaGVsbC1NZXRhemVpY2hlbi4gVHlwaXNjaGVyd2Vpc2UgaXN0IGRlciBJPHJvb3Qtd2VyZGUtIgorIkJlZmVobD4gQjxmYWtlcm9vdD4sIEI8c3Vkbz4sIEI8c3VwZXI+IG9kZXIgQjxyZWFsbHk+LiBCPHN1PiBpc3QgbmljaHQgIgorImdlZWlnbmV0LCBkYSBlcyBudXIgZGllIFNoZWxsIGRlcyBCZW51dHplcnMgbWl0IEI8LWM+IGF1ZnJ1ZmVuIGthbm4sIGFuc3RhdHQgIgorIkFyZ3VtZW50ZSBpbmRpdmlkdWVsbCB6dXIgQXVzZsO8aHJ1bmcgZGVzIFByb2dyYW1tcyB6dSDDvGJlcmdlYmVuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTY3CisjLCBuby13cmFwCittc2dpZCAiQjwtUj5JPHJ1bGVzLWZpbGU+IgorbXNnc3RyICJCPC1SPkk8cnVsZXMtRGF0ZWk+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE3OAorbXNnaWQgIiIKKyJCdWlsZGluZyBhIERlYmlhbiBwYWNrYWdlIHVzdWFsbHkgaW52b2x2ZXMgaW52b2tpbmcgQjxkZWJpYW4vcnVsZXM+IGFzIGEgIgorImNvbW1hbmQgd2l0aCBzZXZlcmFsIHN0YW5kYXJkIHBhcmFtZXRlcnMuIFdpdGggdGhpcyBvcHRpb24gaXQncyBwb3NzaWJsZSB0byAiCisidXNlIGFub3RoZXIgcHJvZ3JhbSBpbnZvY2F0aW9uIHRvIGJ1aWxkIHRoZSBwYWNrYWdlIChpdCBjYW4gaW5jbHVkZSBzcGFjZSAiCisic2VwYXJhdGVkIHBhcmFtZXRlcnMpLiAgQWx0ZXJuYXRpdmVseSBpdCBjYW4gYmUgdXNlZCB0byBleGVjdXRlIHRoZSBzdGFuZGFyZCAiCisicnVsZXMgZmlsZSB3aXRoIGFub3RoZXIgbWFrZSBwcm9ncmFtIChmb3IgZXhhbXBsZSBieSB1c2luZyBCPC91c3IvbG9jYWwvYmluLyIKKyJtYWtlIC1mIGRlYmlhbi9ydWxlcz4gYXMgSTxydWxlcy1maWxlPikuIgorbXNnc3RyICIiCisiRGVyIEJhdSBlaW5lcyBEZWJpYW4tUGFrZXRzIGVyZm9sZ3QgZ2V3w7ZobmxpY2ggZHVyY2ggQXVmcnVmIHZvbiBCPGRlYmlhbi8iCisicnVsZXM+IGFscyBlaW4gQmVmZWhsIG1pdCBtZWhyZXJlbiBTdGFuZGFyZHBhcmFtZXRlcm4uIE1pdCBkaWVzZXIgT3B0aW9uIGlzdCAiCisiZXMgbcO2Z2xpY2gsIGVpbmVuIGFuZGVyZW4gUHJvZ3JhbW1hdWZydWYgenVtIEJhdSBkZXMgUGFrZXRlcyB6dSB2ZXJ3ZW5kZW4gIgorIihlcyBrw7ZubmVuIGR1cmNoIExlZXJ6ZWljaGVuIGdldHJlbm50ZSBQYXJhbWV0ZXIgYW5nZWdlYmVuIHdlcmRlbikuICIKKyJBbHRlcm5hdGl2IGthbm4gZGllIFN0YW5kYXJkLWRlYmlhbi9ydWxlcy1EYXRlaSBtaXQgZWluZW0gYW5kZXJlbiBNYWtlLSIKKyJQcm9ncmFtbSBhdXNnZWbDvGhydCB3ZXJkZW4gKHp1bSBCZWlzcGllbCBkdXJjaCBkaWUgVmVyd2VuZHVuZyB2b24gQjwvdXNyLyIKKyJsb2NhbC9iaW4vbWFrZSAtZiBkZWJpYW4vcnVsZXM+IGFscyBJPHJ1bGVzLURhdGVpPikuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxNzgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1wPkk8c2lnbi1jb21tYW5kPiIKK21zZ3N0ciAiQjwtcD5JPHNpZ25pZXItQmVmZWhsPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxODgKK21zZ2lkICIiCisiV2hlbiBCPGRwa2ctYnVpbGRwYWNrYWdlPiBuZWVkcyB0byBleGVjdXRlIEdQRyBvciBQR1AgdG8gc2lnbiBhIHNvdXJjZSAiCisiY29udHJvbCAoQjwuZHNjPikgZmlsZSBvciBhIEI8LmNoYW5nZXM+IGZpbGUgaXQgd2lsbCBydW4gSTxzaWduLWNvbW1hbmQ+ICIKKyIoc2VhcmNoaW5nIHRoZSBCPFBBVEg+IGlmIG5lY2Vzc2FyeSkgaW5zdGVhZCBvZiBCPGdwZz4uIEk8c2lnbi1jb21tYW5kPiB3aWxsICIKKyJnZXQgYWxsIHRoZSBhcmd1bWVudHMgdGhhdCBCPHBncD4gd291bGQgaGF2ZSBnb3R0ZW4uIElmIEk8c2lnbi1jb21tYW5kPiAiCisidGFrZXMgaXRzIGFyZ3VtZW50cyBpbiBHUEcgcmF0aGVyIHRoYW4gUEdQIHN0eWxlLCB5b3Ugc2hvdWxkIGdpdmUgdGhlIEI8LSIKKyJzZ3BnPiBvcHRpb24uIEk8c2lnbi1jb21tYW5kPiBzaG91bGQgbm90IGNvbnRhaW4gc3BhY2VzIG9yIGFueSBvdGhlciBzaGVsbCAiCisibWV0YWNoYXJhY3RlcnMuIgorbXNnc3RyICIiCisiV2VubiBCPGRwa2ctYnVpbGRwYWNrYWdlPiBHUEcgb2RlciBQR1AgenVtIFNpZ25pZXJlbiBlaW5lciBRdWVsbHN0ZXVlcmRhdGVpICIKKyIoKEI8LmRzYz4pKSBvZGVyIGVpbmVyIEI8LmNoYW5nZXM+LURhdGVpIGJlbsO2dGlndCwgd2lyZCBlcyBzdGF0dCBCPGdwZz4gZGVuICIKKyJJPHNpZ25pZXItQmVmZWhsPiBhdXNmw7xocmVuICh1bmQgZGFiZWkgZmFsbHMgbm90d2VuZGlnIGRlbiBCPFBBVEg+ICIKKyJkdXJjaHN1Y2hlbikuIEZhbGxzIEk8c2lnbmllci1CZWZlaGw+IHNlaW5lIEFyZ3VtZW50ZSBpbSBHUEctIHN0YXR0IGltIFBHUC0iCisiU3RpbCB2ZXJsYW5ndCwgc29sbHRlbiBTaWUgZGllIEI8LXNncGc+LU9wdGlvbiB2ZXJ3ZW5kZW4uIEk8c2lnbmllci1CZWZlaGw+ICIKKyJzb2xsdGUga2VpbmUgTGVlcnplaWNoZW4gb2RlciBhbmRlcmUgTWV0YXplaWNoZW4gZGVyIFNoZWxsIGVudGhhbHRlbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE4OAorIywgbm8td3JhcAorbXNnaWQgIkI8LWs+STxrZXktaWQ+IgorbXNnc3RyICJCPC1rPkk8U2NobMO8c3NlbC1pZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTkxCittc2dpZCAiU3BlY2lmeSBhIGtleS1JRCB0byB1c2Ugd2hlbiBzaWduaW5nIHBhY2thZ2VzLiIKK21zZ3N0ciAiR2ViZW4gU2llIGRpZSBTY2hsw7xzc2VsLUlEIHp1ciBTaWduYXR1ciB2b24gUGFrZXRlbiBhbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE5MQorIywgbm8td3JhcAorbXNnaWQgIkI8LXVzPiIKK21zZ3N0ciAiQjwtdXM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE5NAorbXNnaWQgIkRvIG5vdCBzaWduIHRoZSBzb3VyY2UgcGFja2FnZS4iCittc2dzdHIgIkRhcyBRdWVsbHBha2V0IG5pY2h0IHNpZ25pZXJlbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE5NAorIywgbm8td3JhcAorbXNnaWQgIkI8LXVjPiIKK21zZ3N0ciAiQjwtdWM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE5NworbXNnaWQgIkRvIG5vdCBzaWduIHRoZSBCPC5jaGFuZ2VzPiBmaWxlLiIKK21zZ3N0ciAiRGllIEI8LmNoYW5nZXM+LURhdGVpIG5pY2h0IHNpZ25pZXJlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTk5Cittc2dpZCAiQjwtaT5bSTxyZWdleHA+XSIKK21zZ3N0ciAiQjwtaT5bSTxSZWdleHA+XSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMDEKK21zZ2lkICJCPC1JPkk8W3BhdHRlcm5dPiIKK21zZ3N0ciAiQjwtST5JPFtNdXN0ZXJdPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMDMKK21zZ2lkICJCPC1zPltCPG5zQWt1cktVUj5dIgorbXNnc3RyICJCPC1zPltCPG5zQWt1cktVUj5dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIwNQorbXNnaWQgIkI8LXo+LCBCPC1aPiIKK21zZ3N0ciAiQjwtej4sIEI8LVo+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIwOAorbXNnaWQgIlBhc3NlZCB1bmNoYW5nZWQgdG8gQjxkcGtnLXNvdXJjZT4uIFNlZSBpdHMgbWFudWFsIHBhZ2UuIgorbXNnc3RyICIiCisiV2lyZCB1bnZlcsOkbmRlcnQgYW4gQjxkcGtnLXNvdXJjZT4gd2VpdGVyZ2VnZWJlbi4gTGVzZW4gU2llIGRlc3NlbiAiCisiSGFuZGJ1Y2hzZWl0ZS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIwOQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1zb3VyY2Utb3B0aW9uPT5JPG9wdD4iCittc2dzdHIgIkI8LS1zb3VyY2Utb3B0aW9uPT5JPE9wdD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjEyCittc2dpZCAiUGFzcyBvcHRpb24gSTxvcHQ+IHRvIEI8ZHBrZy1zb3VyY2U+LiIKK21zZ3N0ciAiT3B0aW9uIEk8T3B0PiBhbiBCPGRwa2ctc291cmNlPiB3ZWl0ZXJnZWJlbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIxMgorIywgbm8td3JhcAorbXNnaWQgIkI8LS1jaGFuZ2VzLW9wdGlvbj0+STxvcHQ+IgorbXNnc3RyICJCPC0tY2hhbmdlcy1vcHRpb249Pkk8T3B0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMTUKK21zZ2lkICJQYXNzIG9wdGlvbiBJPG9wdD4gdG8gQjxkcGtnLWdlbmNoYW5nZXM+LiIKK21zZ3N0ciAiT3B0aW9uIEk8T3B0PiBhbiBCPGRwa2ctZ2VuY2hhbmdlcz4gd2VpdGVyZ2ViZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIxOQorbXNnaWQgIkI8LS1hZG1pbmRpciA+STxkaXI+IgorbXNnc3RyICJCPC0tYWRtaW5kaXIgPkk8VmVyej4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjIyIGRwa2ctY2hlY2tidWlsZGRlcHMuMToyMyBkcGtnLXF1ZXJ5LjE6MTIyCisjOiBkcGtnLXNobGliZGVwcy4xOjIxNSBkcGtnLXRyaWdnZXIuMTo0MworbXNnaWQgIiIKKyJDaGFuZ2UgdGhlIGxvY2F0aW9uIG9mIHRoZSBCPGRwa2c+IGRhdGFiYXNlLiBUaGUgZGVmYXVsdCBsb2NhdGlvbiBpcyBJPC92YXIvIgorImxpYi9kcGtnPi4iCittc2dzdHIgIiIKKyLDhG5kZXJ0IGRlbiBBYmxhZ2VvcnQgZGVyIEI8ZHBrZz4tRGF0ZW5iYW5rLiBEZXIgU3RhbmRhcmRvcnQgaXN0IEk8L3Zhci9saWIvIgorImRwa2c+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjIzIGRwa2ctY2hlY2tidWlsZGRlcHMuMTozMyBkcGtnLWRpc3RhZGRmaWxlLjE6MzIKKyM6IGRwa2ctZGViLjE6MTcyIGRwa2ctZ2VuY2hhbmdlcy4xOjEzMSBkcGtnLWdlbmNvbnRyb2wuMToxMjEKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQ0MyBkcGtnLW5hbWUuMTo1OCBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MzMKKyM6IGRwa2ctcXVlcnkuMToxMTAgZHBrZy1zY2FucGFja2FnZXMuMTo5NiBkcGtnLXNobGliZGVwcy4xOjIxNQorIzogZHBrZy1zb3VyY2UuMTo5NiBkcGtnLXNwbGl0LjE6MTI2IGRwa2ctdHJpZ2dlci4xOjMxCisjLCBuby13cmFwCittc2dpZCAiQjwtaD4sIEI8LS1oZWxwPiIKK21zZ3N0ciAiQjwtaD4sIEI8LS1oZWxwPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMzQKK21zZ2lkICIiCisiRXZlbiBpZiBCPGRwa2ctYnVpbGRwYWNrYWdlPiBleHBvcnRzIHNvbWUgdmFyaWFibGVzLCBCPGRlYmlhbi9ydWxlcz4gc2hvdWxkICIKKyJub3QgcmVseSBvbiB0aGVpciBwcmVzZW5jZSBhbmQgc2hvdWxkIGluc3RlYWQgdXNlIHRoZSByZXNwZWN0aXZlIGludGVyZmFjZSAiCisidG8gcmV0cmlldmUgdGhlIG5lZWRlZCB2YWx1ZXMuIgorbXNnc3RyICIiCisiU2VsYnN0IGZhbGxzIEI8ZHBrZy1idWlsZHBhY2thZ2U+IGVpbmlnZSBWYXJpYWJsZW4gZXhwb3J0aWVydCwgc29sbHRlICIKKyJCPGRlYmlhbi9ydWxlcz4gc2ljaCBuaWNodCBhdWYgaWhyZSBHZWdlbndhcnQgdmVybGFzc2VuLCBzb25kZXJuIHN0YXR0ZGVzc2VuICIKKyJkaWUgZW50c3ByZWNoZW5kZSBTY2huaXR0c3RlbGxlIHZlcndlbmRlbiwgdW0gZGllIGJlbsO2dGlndGVuIFdlcnRlIHp1ICIKKyJhYnp1ZnJhZ2VuLiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjM0CisjLCBuby13cmFwCittc2dpZCAiVmFyaWFibGVzIHNldCBieSBkcGtnLWFyY2hpdGVjdHVyZSIKK21zZ3N0ciAiVm9uIGRwa2ctYXJjaGl0ZWN0dXJlIGdlc2V0enRlIFZhcmlhYmxlbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMzgKK21zZ2lkICIiCisiQjxkcGtnLWFyY2hpdGVjdHVyZT4gaXMgY2FsbGVkIHdpdGggdGhlIEI8LWE+IGFuZCBCPC10PiBwYXJhbWV0ZXJzICIKKyJmb3J3YXJkZWQuIEFueSB2YXJpYWJsZSB0aGF0IGlzIG91dHB1dCBieSBpdHMgQjwtcz4gb3B0aW9uIGlzIGludGVncmF0ZWQgaW4gIgorInRoZSBidWlsZCBlbnZpcm9ubWVudC4iCittc2dzdHIgIiIKKyJCZWltIEF1ZnJ1ZiB2b24gQjxkcGtnLWFyY2hpdGVjdHVyZT4gd2VyZGVuIGRpZSBQYXJhbWV0ZXIgdm9uIEI8LWE+IHVuZCBCPC0iCisidD4gZHVyY2hnZXJlaWNodC4gSmVkZSBWYXJpYWJsZSwgZGllIHZvbiBzZWluZXIgT3B0aW9uIEI8LXM+IGF1c2dlZ2ViZW4gIgorIndpcmQsIHdpcmQgaW4gZGllIEJhdXVtZ2VidW5nIGludGVncmllcnQuIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMzgKKyMsIG5vLXdyYXAKK21zZ2lkICJDb21waWxlciBmbGFncyBhcmUgbm8gbG9uZ2VyIGV4cG9ydGVkIgorbXNnc3RyICJLb21waWxpZXJzY2hhbHRlciB3ZXJkZW4gbmljaHQgbWVociBleHBvcnRpZXJ0IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjI0MworbXNnaWQgIiIKKyJCZXR3ZWVuIHZlcnNpb25zIDEuMTQuMTcgYW5kIDEuMTYuMSwgQjxkcGtnLWJ1aWxkcGFja2FnZT4gZXhwb3J0ZWQgY29tcGlsZXIgIgorImZsYWdzIChCPENGTEFHUz4sIEI8Q1hYRkxBR1M+LCBCPEZGTEFHUz4sIEI8Q1BQRkxBR1M+IGFuZCBCPExERkxBR1M+KSB3aXRoICIKKyJ2YWx1ZXMgYXMgcmV0dXJuZWQgYnkgQjxkcGtnLWJ1aWxkZmxhZ3M+LiBUaGlzIGlzIG5vIGxvbmdlciB0aGUgY2FzZS4iCittc2dzdHIgIiIKKyJad2lzY2hlbiBkZW4gVmVyc2lvbmVuIDEuMTQuMTcgYW5kIDEuMTYuMSBleHBvcnRpZXJ0ZSBCPGRwa2ctYnVpbGRwYWNrYWdlPiAiCisiS29tcGlsaWVyc2NoYWx0ZXIgKEI8Q0ZMQUdTPiwgQjxDWFhGTEFHUz4sIEI8RkZMQUdTPiwgQjxDUFBGTEFHUz4gdW5kICIKKyJCPExERkxBR1M+KSBtaXQgV2VydGVuLCBkaWUgdm9uIEI8ZHBrZy1idWlsZGZsYWdzPiBnZWxpZWZlcnQgd3VyZGVuLiBEaWVzICIKKyJpc3QgbmljaHQgbWVociBkZXIgRmFsbC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjQ4Cittc2dpZCAiIgorIkl0IHNob3VsZCBiZSBwb3NzaWJsZSB0byBzcGVjaWZ5IHNwYWNlcyBhbmQgc2hlbGwgbWV0YWNoYXJhY3RlcnMgaW4gYW5kICIKKyJpbml0aWFsIGFyZ3VtZW50cyBmb3IgSTxnYWluLXJvb3QtY29tbWFuZD4gYW5kIEk8c2lnbi1jb21tYW5kPi4iCittc2dzdHIgIiIKKyJFcyBzb2xsdGUgbcO2Z2xpY2ggc2VpbiwgTGVlcnplaWNoZW4gdW5kIE1ldGF6ZWljaGVuIGRlciBTaGVsbCBpbiB1bmQgIgorIkFuZmFuZ3Nhcmd1bWVudGUgZsO8ciBJPHJvb3Qtd2VyZGUtQmVmZWhsPiB1bmQgSTxzaWduaWVyLUJlZmVobD4gYW56dWdlYmVuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyNTYKK21zZ2lkICIiCisiQjxkcGtnLXNvdXJjZT4oMSksIEI8ZHBrZy1hcmNoaXRlY3R1cmU+KDEpLCBCPGRwa2ctYnVpbGRmbGFncz4oMSksIEI8ZHBrZy0iCisiZ2VuY2hhbmdlcz4oMSksIEI8ZmFrZXJvb3Q+KDEpLCBCPGdwZz4oMSkuIgorbXNnc3RyICIiCisiQjxkcGtnLXNvdXJjZT4oMSksIEI8ZHBrZy1hcmNoaXRlY3R1cmU+KDEpLCBCPGRwa2ctYnVpbGRmbGFncz4oMSksIEI8ZHBrZy0iCisiZ2VuY2hhbmdlcz4oMSksIEI8ZmFrZXJvb3Q+KDEpLCBCPGdwZz4oMSkuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjI2NQorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDA4LTIwMTAgUmFwaGFcXFs6ZV1sIEhlcnR6b2ciCittc2dzdHIgIkNvcHlyaWdodCBcXChjbyAyMDA3LTIwMTAgUmFwaGFcXFs6ZV1sIEhlcnR6b2ciCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6MQorIywgbm8td3JhcAorbXNnaWQgImRwa2ctY2hlY2tidWlsZGRlcHMiCittc2dzdHIgImRwa2ctY2hlY2tidWlsZGRlcHMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctY2hlY2tidWlsZGRlcHMuMTo0Cittc2dpZCAiZHBrZy1jaGVja2J1aWxkZGVwcyAtIGNoZWNrIGJ1aWxkIGRlcGVuZGVuY2llcyBhbmQgY29uZmxpY3RzIgorbXNnc3RyICJkcGtnLWNoZWNrYnVpbGRkZXBzIC0gw7xiZXJwcsO8ZmUgQmF1YWJow6RuZ2lna2VpdGVuIHVuZCAta29uZmxpa3RlIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6OQorbXNnaWQgIkI8ZHBrZy1jaGVja2J1aWxkZGVwcz4gW0k8b3B0aW9uPi4uLl0gW0k8Y29udHJvbC1maWxlPl0iCittc2dzdHIgIkI8ZHBrZy1jaGVja2J1aWxkZGVwcz4gW0k8T3B0aW9uPi4uLl0gW0k8QmVmZWhsc2RhdGVpPl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctY2hlY2tidWlsZGRlcHMuMToxNAorbXNnaWQgIiIKKyJUaGlzIHByb2dyYW0gY2hlY2tzIHRoZSBpbnN0YWxsZWQgcGFja2FnZXMgaW4gdGhlIHN5c3RlbSBhZ2FpbnN0IHRoZSBidWlsZCAiCisiZGVwZW5kZW5jaWVzIGFuZCBidWlsZCBjb25mbGljdHMgbGlzdGVkIGluIHRoZSBjb250cm9sIGZpbGUuIElmIGFueSBhcmUgbm90ICIKKyJtZXQsIGl0IGRpc3BsYXlzIHRoZW0gYW5kIGV4aXRzIHdpdGggYSBub256ZXJvIHJldHVybiBjb2RlLiIKK21zZ3N0ciAiIgorIkRpZXNlcyBQcm9ncmFtbSDDvGJlcnByw7xmdCBkaWUgaW0gU3lzdGVtIGluc3RhbGxpZXJ0ZW4gUGFrZXRlIGdlZ2VuIGRpZSAiCisiQmF1YWJow6RuZ2lna2VpdGVuIHVuZCBCYXVrb25mbGlrdGUsIGRpZSBpbiBkZXIgU3RldWVyZGF0ZWkgYXVmZ2Vmw7xocnQgc2luZC4gIgorIkZhbGxzIHdlbGNoZSBkYXZvbiBuaWNodCBlcmbDvGxsdCBzaW5kLCB6ZWlndCBlcyBkaWVzZSBhbiB1bmQgYmVlbmRldCBzaWNoICIKKyJtaXQgZWluZW0gdm9uIE51bGwgdmVyc2NoaWVkZW5lbiBSw7xja2dhYmV3ZXJ0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1jaGVja2J1aWxkZGVwcy4xOjE3Cittc2dpZCAiIgorIkJ5IGRlZmF1bHQsIEI8ZGViaWFuL2NvbnRyb2w+IGlzIHJlYWQsIGJ1dCBhbiBhbHRlcm5hdGUgY29udHJvbCBmaWxlbmFtZSBtYXkgIgorImJlIHNwZWNpZmllZCBvbiB0aGUgY29tbWFuZCBsaW5lLiIKK21zZ3N0ciAiIgorIlN0YW5kYXJkbcOkw59pZyB3aXJkIEI8ZGViaWFuL2NvbnRyb2w+IGdlbGVzZW4sIGFiZXIgZWluIGFsdGVybmF0aXZlciAiCisiU3RldWVyZGF0ZWluYW1lIGthbm4gYXVmIGRlciBLb21tYW5kb3plaWxlIGFuZ2VnZWJlbiB3ZXJkZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6MjcKK21zZ2lkICIiCisiSWdub3JlIEk8QnVpbGQtRGVwZW5kcy1JbmRlcD4gbGluZXMuIFVzZSB3aGVuIG5vIGFyY2gtaW5kZXAgcGFja2FnZXMgd2lsbCBiZSAiCisiYnVpbHQuIgorbXNnc3RyICIiCisiSWdub3JpZXJlIEk8QnVpbGQtRGVwZW5kcy1JbmRlcD4tWmVpbGVuLiBWZXJ3ZW5kZW4gU2llIGRpZXMsIHdlbm4ga2VpbmUgYXJjaC0iCisiaW5kZXAtUGFrZXRlIGdlYmF1dCB3ZXJkZW4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1jaGVja2J1aWxkZGVwcy4xOjI3CisjLCBuby13cmFwCittc2dpZCAiQjwtZCA+STxidWlsZC1kZXBlbmRzLXN0cmluZz4iCittc2dzdHIgIkI8LWQgPkk8WmVpY2hlbmtldHRlLWbDvHItQmF1YWJow6RuZ2lna2VpdGVuPiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctY2hlY2tidWlsZGRlcHMuMToyOQorIywgbm8td3JhcAorbXNnaWQgIkI8LWMgPkk8YnVpbGQtY29uZmxpY3RzLXN0cmluZz4iCittc2dzdHIgIkI8LWMgPkk8WmVpY2hlbmtldHRlLWbDvHItQmF1a29uZmxpa3RlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1jaGVja2J1aWxkZGVwcy4xOjMzCittc2dpZCAiIgorIlVzZSB0aGUgZ2l2ZW4gYnVpbGQgZGVwZW5kZW5jaWVzL2NvbmZsaWN0cyBpbnN0ZWFkIG9mIHRob3NlIGNvbnRhaW5lZCBpbiB0aGUgIgorIkk8ZGViaWFuL2NvbnRyb2w+IGZpbGUuIgorbXNnc3RyICIiCisiVmVyd2VuZGUgZGllIGFuZ2VnZWJlbmVuIEJhdWFiaMOkbmdpZ2tlaXRlbi8ta29uZmxpa3RlIHN0YXR0IGRlbmVuIGRlciBEYXRlaSAiCisiSTxkZWJpYW4vY29udHJvbD4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6NDIKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAwMSBKb2V5IEhlc3MiCittc2dzdHIgIkNvcHlyaWdodCBcXChjbyAyMDAxIEpvZXkgSGVzcyIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctZGlzdGFkZGZpbGUuMToxCisjLCBuby13cmFwCittc2dpZCAiZHBrZy1kaXN0YWRkZmlsZSIKK21zZ3N0ciAiZHBrZy1kaXN0YWRkZmlsZSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXN0YWRkZmlsZS4xOjQKK21zZ2lkICJkcGtnLWRpc3RhZGRmaWxlIC0gYWRkIGVudHJpZXMgdG8gZGViaWFuL2ZpbGVzIgorbXNnc3RyICJkcGtnLWRpc3RhZGRmaWxlIC0gRWludHLDpGdlIHp1IGRlYmlhbi9maWxlcyBoaW56dWbDvGdlbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXN0YWRkZmlsZS4xOjgKK21zZ2lkICJCPGRwa2ctZGlzdGFkZGZpbGU+IFtJPG9wdGlvbj4uLi5dSTwgZmlsZW5hbWUgc2VjdGlvbiBwcmlvcml0eT4iCittc2dzdHIgIkI8ZHBrZy1kaXN0YWRkZmlsZT4gW0k8T3B0aW9uPi4uLl1JPCBEYXRlaW5hbWUgQmVyZWljaCBQcmlvcml0w6R0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXN0YWRkZmlsZS4xOjEzCittc2dpZCAiQjxkcGtnLWRpc3RhZGRmaWxlPiBhZGRzIGFuIGVudHJ5IGZvciBhIG5hbWVkIGZpbGUgdG8gQjxkZWJpYW4vZmlsZXM+LiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1kaXN0YWRkZmlsZT4gZsO8Z3QgZWluZW4gRWludHJhZyBmw7xyIGVpbmUgYmVuYW5udGUgRGF0ZWkgaW4gQjxkZWJpYW4vIgorImZpbGVzPiBoaW56dS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGlzdGFkZGZpbGUuMToxOAorbXNnaWQgIiIKKyJJdCB0YWtlcyB0aHJlZSBub24tb3B0aW9uIGFyZ3VtZW50cywgdGhlIGZpbGVuYW1lIGFuZCB0aGUgc2VjdGlvbiBhbmQgIgorInByaW9yaXR5IGZvciB0aGUgQjwuY2hhbmdlcz4gZmlsZS4iCittc2dzdHIgIiIKKyJFcyBlcndhcnRldCBkcmVpIG5pY2h0LU9wdGlvbnMtQXJndW1lbnRlLCBkZW4gRGF0ZWluYW1lbiwgZGVuIEJlcmVpY2ggdW5kICIKKyJkaWUgUHJpb3JpdMOkdCBmw7xyIGRpZSBCPC5jaGFuZ2VzPi1EYXRlaS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGlzdGFkZGZpbGUuMToyNgorbXNnaWQgIiIKKyJUaGUgZmlsZW5hbWUgc2hvdWxkIGJlIHNwZWNpZmllZCByZWxhdGl2ZSB0byB0aGUgZGlyZWN0b3J5IHdoZXJlIEI8ZHBrZy0iCisiZ2VuY2hhbmdlcz4gd2lsbCBleHBlY3QgdG8gZmluZCB0aGUgZmlsZXMsIHVzdWFsbHkgQjwuLj4sIHJhdGhlciB0aGFuIGJlaW5nICIKKyJhIHBhdGhuYW1lIHJlbGF0aXZlIHRvIHRoZSBjdXJyZW50IGRpcmVjdG9yeSB3aGVuIEI8ZHBrZy1kaXN0YWRkZmlsZT4gaXMgcnVuLiIKK21zZ3N0ciAiIgorIkRlciBEYXRlaW5hbWUgc29sbHRlIHJlbGF0aXYgenVtIFZlcnplaWNobmlzIGFuZ2VnZWJlbiB3ZXJkZW4sIGluIGRlbSBCPGRwa2ctIgorImdlbmNoYW5nZXM+IGRpZSBEYXRlaWVuIGVyd2FydGV0LCBub3JtYWxlcndlaXNlIEI8Li4+LCBzdGF0dCBlaW4gcmVsYXRpdmVyICIKKyJQZmFkbmFtZSB6dSBkZW0gYWt0dWVsbGVuIFZlcnplaWNobmlzIHp1IHNlaW4sIHdlbm4gQjxkcGtnLWRpc3RhZGRmaWxlPiAiCisiYXVzZ2Vmw7xocnQgd2lyZC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRpc3RhZGRmaWxlLjE6MjggZHBrZy1nZW5jaGFuZ2VzLjE6MTAzIGRwa2ctZ2VuY29udHJvbC4xOjY5CisjLCBuby13cmFwCittc2dpZCAiQjwtZj5JPGZpbGVzbGlzdGZpbGU+IgorbXNnc3RyICJCPC1mPkk8RGF0ZWllbmxpc3REYXRlaT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGlzdGFkZGZpbGUuMTozMiBkcGtnLWdlbmNvbnRyb2wuMTo3MworbXNnaWQgIiIKKyJSZWFkIG9yIHdyaXRlIHRoZSBsaXN0IG9mIGZpbGVzIHRvIGJlIHVwbG9hZGVkIGhlcmUsIHJhdGhlciB0aGFuIHVzaW5nICIKKyJCPGRlYmlhbi9maWxlcz4uIgorbXNnc3RyICIiCisiTGVzZSBvZGVyIHNjaHJlaWJlIGRpZSBMaXN0ZSBkZXIgaG9jaHp1bGFkZW5lbiBEYXRlaWVuIGhpZXJoZXIsIHN0YXR0ICIKKyJCPGRlYmlhbi9maWxlcz4genUgdmVyd2VuZGVuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGlzdGFkZGZpbGUuMTo0MCBkcGtnLWdlbmNoYW5nZXMuMToxMzkgZHBrZy1nZW5jb250cm9sLjE6MTM0CisjLCBuby13cmFwCittc2dpZCAiQjxkZWJpYW4vZmlsZXM+IgorbXNnc3RyICJCPGRlYmlhbi9maWxlcz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGlzdGFkZGZpbGUuMTo0NgorbXNnaWQgIiIKKyJUaGUgbGlzdCBvZiBnZW5lcmF0ZWQgZmlsZXMgd2hpY2ggYXJlIHBhcnQgb2YgdGhlIHVwbG9hZCBiZWluZyBwcmVwYXJlZC4gICIKKyJCPGRwa2ctZGlzdGFkZGZpbGU+IGNhbiBiZSB1c2VkIHRvIGFkZCBhZGRpdGlvbmFsIGZpbGVzLiIKK21zZ3N0ciAiIgorIkRpZSBMaXN0ZSBkZXIgZXJ6ZXVndGVuIERhdGVpZW4sIGRpZSBUZWlsIGRlcyB2b3JiZXJlaXRldGVuIFVwbG9hZHMgc2luZC4gIgorIkI8ZHBrZy1kaXN0YWRkZmlsZT4ga2FubiBkYXp1IHZlcndlbmRldCB3ZXJkZW4sIHp1c8OkdHpsaWNoZSBEYXRlaWVuICIKKyJoaW56dXp1ZsO8Z2VuLiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctZGViLjE6MQorIywgbm8td3JhcAorbXNnaWQgImRwa2ctZGViIgorbXNnc3RyICJkcGtnLWRlYiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMTo0Cittc2dpZCAiZHBrZy1kZWIgLSBEZWJpYW4gcGFja2FnZSBhcmNoaXZlICguZGViKSBtYW5pcHVsYXRpb24gdG9vbCIKK21zZ3N0ciAiZHBrZy1kZWIgLSBEZWJpYW4tUGFrZXRhcmNoaXYgKC5kZWIpIE1hbmlwdWxhdGlvbnN3ZXJremV1ZyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMTo4Cittc2dpZCAiQjxkcGtnLWRlYj4gW0k8b3B0aW9uPi4uLl0gSTxjb21tYW5kPiIKK21zZ3N0ciAiQjxkcGtnLWRlYj4gW0k8T3B0aW9uPi4uLl0gSTxCZWZlaGw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjEyCittc2dpZCAiIgorIkI8ZHBrZy1kZWI+IHBhY2tzLCB1bnBhY2tzIGFuZCBwcm92aWRlcyBpbmZvcm1hdGlvbiBhYm91dCBEZWJpYW4gYXJjaGl2ZXMuIgorbXNnc3RyICIiCisiQjxkcGtnLWRlYj4gcGFja3QgdW5kIGVudHBhY2t0IERlYmlhbi1BcmNoaXZlIHVuZCBzdGVsbHQgSW5mb3JtYXRpb25lbiDDvGJlciAiCisic2llIGJyZWl0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxNgorbXNnaWQgIlVzZSBCPGRwa2c+IHRvIGluc3RhbGwgYW5kIHJlbW92ZSBwYWNrYWdlcyBmcm9tIHlvdXIgc3lzdGVtLiIKK21zZ3N0ciAiIgorIlZlcndlbmRlbiBTaWUgQjxkcGtnPiwgdW0gUGFrZXRlIGF1ZiBJaHJlbSBTeXN0ZW0gaGluenV6dWbDvGdlbiBvZGVyIHp1ICIKKyJlbnRmZXJuZW4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MjYKK21zZ2lkICIiCisiWW91IGNhbiBhbHNvIGludm9rZSBCPGRwa2ctZGViPiBieSBjYWxsaW5nIEI8ZHBrZz4gd2l0aCB3aGF0ZXZlciBvcHRpb25zIHlvdSAiCisid2FudCB0byBwYXNzIHRvIEI8ZHBrZy1kZWI+LiBCPGRwa2c+IHdpbGwgc3BvdCB0aGF0IHlvdSB3YW50ZWQgQjxkcGtnLWRlYj4gIgorImFuZCBydW4gaXQgZm9yIHlvdS4iCittc2dzdHIgIiIKKyJTaWUga8O2bm5lbiBCPGRwa2ctZGViPiBkdXJjaCBBdWZydWYgdm9uIEI8ZHBrZz4gbWl0IGJlbGllYmlnZW4gT3B0aW9uZW4sIGRpZSAiCisiU2llIGFuIEI8ZHBrZy1kZWI+IMO8YmVyZ2ViZW4gd29sbGVuLCBhdWZydWZlbi4gQjxkcGtnPiBlcmtlbm50LCBkYXNzIFNpZSAiCisiQjxkcGtnLWRlYj4gd29sbHRlbiB1bmQgd2lyZCBlcyBmw7xyIFNpZSBhdXNmw7xocmVuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MjgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1iPiwgQjwtLWJ1aWxkPiBJPGRpcmVjdG9yeT4gW0k8YXJjaGl2ZT58STxkaXJlY3Rvcnk+XSIKK21zZ3N0ciAiQjwtYj4sIEI8LS1idWlsZD4gSTxWZXJ6ZWljaG5pcz4gW0k8QXJjaGl2PnxJPFZlcnplaWNobmlzPl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6NDAKK21zZ2lkICIiCisiQ3JlYXRlcyBhIGRlYmlhbiBhcmNoaXZlIGZyb20gdGhlIGZpbGVzeXN0ZW0gdHJlZSBzdG9yZWQgaW4gSTxkaXJlY3Rvcnk+LiAiCisiSTxkaXJlY3Rvcnk+IG11c3QgaGF2ZSBhIEI8REVCSUFOPiBzdWJkaXJlY3RvcnksIHdoaWNoIGNvbnRhaW5zIHRoZSBjb250cm9sICIKKyJpbmZvcm1hdGlvbiBmaWxlcyBzdWNoIGFzIHRoZSBjb250cm9sIGZpbGUgaXRzZWxmLiBUaGlzIGRpcmVjdG9yeSB3aWxsICIKKyJJPG5vdD4gYXBwZWFyIGluIHRoZSBiaW5hcnkgcGFja2FnZSdzIGZpbGVzeXN0ZW0gYXJjaGl2ZSwgYnV0IGluc3RlYWQgdGhlICIKKyJmaWxlcyBpbiBpdCB3aWxsIGJlIHB1dCBpbiB0aGUgYmluYXJ5IHBhY2thZ2UncyBjb250cm9sIGluZm9ybWF0aW9uIGFyZWEuIgorbXNnc3RyICIiCisiTGVndCBlaW4gRGViaWFuLUFyY2hpdiBhdXMgZGVtIERhdGVpc3lzdGVtYmF1bSwgZGVyIGluIEk8VmVyemVpY2huaXM+ICIKKyJnZXNwZWljaGVydCBpc3QsIGFuLiBJPFZlcnplaWNobmlzPiBtdXNzIGVpbiBCPERFQklBTj4tVW50ZXJ2ZXJ6ZWljaG5pcyAiCisiYXVmd2Vpc2VuLCBkYXMgZGllIERhdGVpZW4gbWl0IFN0ZXVlcmluZm9ybWF0aW9uIHdpZSBkaWUgY29udHJvbC1EYXRlaSAiCisic2VsYnN0IGVudGjDpGx0LiBEaWVzZXMgVmVyemVpY2huaXMgd2lyZCBJPG5pY2h0PiBpbiBkZW0gRGF0ZWlzeXN0ZW1hcmNoaXYgIgorImRlcyBCaW7DpHJwYWtldHMgYXVmdGF1Y2hlbiwgc29uZGVybiBkaWUgRGF0ZWllbiBzZWxic3Qgd2VyZGVuIGluIGRlbiBTdGV1ZXItIgorIkluZm9ybWF0aW9uc2JlcmVpY2ggZGVzIEJpbsOkcnBha2V0cyBnZXBhY2t0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMTo1MgorbXNnaWQgIiIKKyJVbmxlc3MgeW91IHNwZWNpZnkgQjwtLW5vY2hlY2s+LCBCPGRwa2ctZGViPiB3aWxsIHJlYWQgQjxERUJJQU4vY29udHJvbD4gYW5kICIKKyJwYXJzZSBpdC4gSXQgd2lsbCBjaGVjayBpdCBmb3Igc3ludGF4IGVycm9ycyBhbmQgb3RoZXIgcHJvYmxlbXMsIGFuZCBkaXNwbGF5ICIKKyJ0aGUgbmFtZSBvZiB0aGUgYmluYXJ5IHBhY2thZ2UgYmVpbmcgYnVpbHQuICBCPGRwa2ctZGViPiB3aWxsIGFsc28gY2hlY2sgdGhlICIKKyJwZXJtaXNzaW9ucyBvZiB0aGUgbWFpbnRhaW5lciBzY3JpcHRzIGFuZCBvdGhlciBmaWxlcyBmb3VuZCBpbiB0aGUgQjxERUJJQU4+ICIKKyJjb250cm9sIGluZm9ybWF0aW9uIGRpcmVjdG9yeS4iCittc2dzdHIgIiIKKyJGYWxscyBTaWUgbmljaHQgQjwtLW5vY2hlY2s+IGFuZ2ViZW4sIHdpcmQgQjxkcGtnLWRlYj4gQjxERUJJQU4vY29udHJvbD4gIgorImxlc2VuIHVuZCBlcyBwYXJzZW4uIEVzIHByw7xmdCBzaWUgYXVmIFN5bnRheC1GZWhsZXIgdW5kIGFuZGVyZSBQcm9ibGVtZSB1bmQgIgorInplaWd0IGRlbiBOYW1lbiBkZXMgenUgYmF1ZW5kZW4gQmluw6RycGFrZXRzIGFuLiBCPGRwa2ctZGViPiB3aXJkIGF1Y2ggZGllICIKKyJSZWNodGUgZGVyIEJldHJldWVyLVNrcmlwdGUgdW5kIGFuZGVyZXIgRGF0ZWllbiBpbSBCPERFQklBTj4tU3RldWVyLSIKKyJJbmZvcm1hdGlvbnN2ZXJ6ZWljaG5pcyBwcsO8ZmVuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMTo1OQorbXNnaWQgIiIKKyJJZiBubyBJPGFyY2hpdmU+IGlzIHNwZWNpZmllZCB0aGVuIEI8ZHBrZy1kZWI+IHdpbGwgd3JpdGUgdGhlIHBhY2thZ2UgaW50byAiCisidGhlIGZpbGUgSTxkaXJlY3Rvcnk+QjwuZGViPi4iCittc2dzdHIgIiIKKyJGYWxscyBrZWluIEk8QXJjaGl2PiBhbmdlZ2ViZW4gaXN0LCB3aXJkIEI8ZHBrZy1kZWI+IGRhcyBQYWtldCBpbiBkaWUgRGF0ZWkgIgorIkk8VmVyemVpY2huaXM+QjwuZGViPiBzY2hyZWliZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjYxCittc2dpZCAiSWYgdGhlIGFyY2hpdmUgdG8gYmUgY3JlYXRlZCBhbHJlYWR5IGV4aXN0cyBpdCB3aWxsIGJlIG92ZXJ3cml0dGVuLiIKK21zZ3N0ciAiRmFsbHMgZGFzIGFuenVsZWdlbmRlIEFyY2hpdiBiZXJlaXRzIGV4aXN0aWVydCwgd2lyZCBlcyDDvGJlcnNjaHJpZWJlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6NzcKK21zZ2lkICIiCisiSWYgdGhlIHNlY29uZCBhcmd1bWVudCBpcyBhIGRpcmVjdG9yeSB0aGVuIEI8ZHBrZy1kZWI+IHdpbGwgd3JpdGUgdG8gdGhlICIKKyJmaWxlIEk8cGFja2FnZT5CPF8+STx2ZXJzaW9uPkI8Xz5JPGFyY2g+QjwuZGViPiwgb3IgIgorIkk8cGFja2FnZT5CPF8+STx2ZXJzaW9uPkI8LmRlYj4gaWYgbm8gQjxBcmNoaXRlY3R1cmU+IGZpZWxkIGlzIHByZXNlbnQgaW4gIgorInRoZSBwYWNrYWdlIGNvbnRyb2wgZmlsZS4gV2hlbiBhIHRhcmdldCBkaXJlY3RvcnkgaXMgc3BlY2lmaWVkLCByYXRoZXIgdGhhbiAiCisiYSBmaWxlLCB0aGUgQjwtLW5vY2hlY2s+IG9wdGlvbiBtYXkgbm90IGJlIHVzZWQgKHNpbmNlIEI8ZHBrZy1kZWI+IG5lZWRzIHRvICIKKyJyZWFkIGFuZCBwYXJzZSB0aGUgcGFja2FnZSBjb250cm9sIGZpbGUgdG8gZGV0ZXJtaW5lIHdoaWNoIGZpbGVuYW1lIHRvIHVzZSkuIgorbXNnc3RyICIiCisiRmFsbHMgZGFzIHp3ZWl0ZSBBcmd1bWVudCBlaW4gVmVyemVpY2huaXMgaXN0LCB3aXJkIEI8ZHBrZy1kZWI+IGluIGRpZSBEYXRlaSAiCisiSTxQYWtldD5CPF8+STxWZXJzaW9uPkI8Xz5JPGFyY2g+QjwuZGViPiBvZGVyIEk8UGFrZXQ+QjxfPkk8VmVyc2lvbj5CPC5kZWI+LCAiCisiZmFsbHMga2VpbiBCPEFyY2hpdGVjdHVyZT4tRmVsZCBpbiBkZXIgUGFrZXQtU3RldWVyZGF0ZWkgdm9yaGFuZGVuIGlzdCwgIgorInNjaHJlaWJlbi4gV2VubiBlaW4gWmllbHZlcnplaWNobmlzIHN0YXR0IGVpbmVyIERhdGVpIGFuZ2VnZWJlbiBpc3QsIGRhcmYgIgorImRpZSBPcHRpb24gQjwtLW5vY2hlY2s+IG5pY2h0IHZlcndlbmRldCB3ZXJkZW4gKGRhIEI8ZHBrZy1kZWI+IGRpZSAiCisiUGFrZXRzdGV1ZXJkYXRlaSBsZXNlbiB1bmQgcGFyc2VuIG11c3MsIHVtIGRlbiB6dSB2ZXJ3ZW5kZW5kZW4gRGF0ZWluYW1lbiB6dSAiCisiYmVzdGltbWVuKS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRlYi4xOjc3CisjLCBuby13cmFwCittc2dpZCAiQjwtST4sIEI8LS1pbmZvPiBJPGFyY2hpdmU+IFtJPGNvbnRyb2wtZmlsZS1uYW1lPi4uLl0iCittc2dzdHIgIkI8LUk+LCBCPC0taW5mbz4gSTxBcmNoaXY+IFtJPFN0ZXVlci1EYXRlaW5hbWU+IC4uLl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6ODAKK21zZ2lkICJQcm92aWRlcyBpbmZvcm1hdGlvbiBhYm91dCBhIGJpbmFyeSBwYWNrYWdlIGFyY2hpdmUuIgorbXNnc3RyICJTdGVsbHQgSW5mb3JtYXRpb25lbiDDvGJlciBlaW4gQmluw6RycGFrZXRhcmNoaXYgYmVyZWl0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMTo4NQorbXNnaWQgIiIKKyJJZiBubyBJPGNvbnRyb2wtZmlsZS1uYW1lPnMgYXJlIHNwZWNpZmllZCB0aGVuIGl0IHdpbGwgcHJpbnQgYSBzdW1tYXJ5IG9mICIKKyJ0aGUgY29udGVudHMgb2YgdGhlIHBhY2thZ2UgYXMgd2VsbCBhcyBpdHMgY29udHJvbCBmaWxlLiIKK21zZ3N0ciAiIgorIkZhbGxzIGtlaW5lIEk8U3RldWVyLURhdGVpbmFtZT5uIGFuZ2VnZWJlbiBzaW5kLCB3aXJkIGVzIGVpbmUgIgorIlp1c2FtbWVuZmFzc3VuZyBkZXMgSW5oYWx0cyBkZXMgUGFrZXRzIHNvd2llIGRlc3NlbiBTdGV1ZXJkYXRlaSBhdXNnZWJlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6OTMKK21zZ2lkICIiCisiSWYgYW55IEk8Y29udHJvbC1maWxlLW5hbWU+cyBhcmUgc3BlY2lmaWVkIHRoZW4gQjxkcGtnLWRlYj4gd2lsbCBwcmludCB0aGVtICIKKyJpbiB0aGUgb3JkZXIgdGhleSB3ZXJlIHNwZWNpZmllZDsgaWYgYW55IG9mIHRoZSBjb21wb25lbnRzIHdlcmVuJ3QgcHJlc2VudCAiCisiaXQgd2lsbCBwcmludCBhbiBlcnJvciBtZXNzYWdlIHRvIHN0ZGVyciBhYm91dCBlYWNoIG9uZSBhbmQgZXhpdCB3aXRoIHN0YXR1cyAiCisiMi4iCittc2dzdHIgIiIKKyJGYWxscyBJPFN0ZXVlci1EYXRlaW5hbWU+biBhbmdlZ2ViZW4gc2luZCwgd2lyZCBCPGRwa2ctZGViPiBkaWVzZSBpbiBkZXIgIgorImFuZ2VnZWJlbmVuIFJlaWhlbmZvbGdlIGF1c2dlYmVuOyBmYWxscyBlaW5pZ2UgZGVyIEtvbXBvbmVudGVuIG5pY2h0ICIKKyJ2b3JoYW5kZW4gc2luZCwgd2lyZCBlcyBlaW5lIEZlaGxlcm5hY2hyaWNodCBuYWNoIFN0ZGVyciDDvGJlciBqZWRlIGF1c2dlYmVuICIKKyJ1bmQgc2ljaCBtaXQgZGVtIFN0YXR1cyAyIGJlZW5kZW4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMTo5MworIywgbm8td3JhcAorbXNnaWQgIkI8LVc+LCBCPC0tc2hvdz4gSTxhcmNoaXZlPiIKK21zZ3N0ciAiQjwtVz4sIEI8LS1zaG93PiBJPEFyY2hpdj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTAwCittc2dpZCAiIgorIlByb3ZpZGVzIGluZm9ybWF0aW9uIGFib3V0IGEgYmluYXJ5IHBhY2thZ2UgYXJjaGl2ZSBpbiB0aGUgZm9ybWF0IHNwZWNpZmllZCAiCisiYnkgdGhlIEI8LS1zaG93Zm9ybWF0PiBhcmd1bWVudC4gVGhlIGRlZmF1bHQgZm9ybWF0IGRpc3BsYXlzIHRoZSBwYWNrYWdlJ3MgIgorIm5hbWUgYW5kIHZlcnNpb24gb24gb25lIGxpbmUsIHNlcGFyYXRlZCBieSBhIHRhYnVsYXRvci4iCittc2dzdHIgIiIKKyJTdGVsbHQgSW5mb3JtYXRpb25lbiDDvGJlciBCaW7DpHJwYWtldGFyY2hpdmUgaW0gRm9ybWF0IGRhciwgZGFzIG1pdCBkZW0gIgorIkFyZ3VtZW50IEI8LS1zaG93Zm9ybWF0PiBhbmdlZ2ViZW4gd3VyZGUuIERhcyBTdGFuZGFyZGZvcm1hdCB6ZWlndCBkZW4gIgorIlBha2V0bmFtZW4gdW5kIGRpZSBQYWtldHZlcnNpb24gaW4gZWluZXIgWmVpbGUsIGdldHJlbm50IGR1cmNoIGVpbmVuICIKKyJUYWJ1bGF0b3IuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToxMDAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1mPiwgQjwtLWZpZWxkPiBJPGFyY2hpdmU+IFtJPGNvbnRyb2wtZmllbGQtbmFtZT4uLi5dIgorbXNnc3RyICJCPC1mPiwgQjwtLWZpZWxkPiBJPEFyY2hpdj4gW0k8U3RldWVyLUZlbGRuYW1lPiAuLi5dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjEwMworbXNnaWQgIkV4dHJhY3RzIGNvbnRyb2wgZmlsZSBpbmZvcm1hdGlvbiBmcm9tIGEgYmluYXJ5IHBhY2thZ2UgYXJjaGl2ZS4iCittc2dzdHIgIiIKKyJFeHRyYWhpZXJ0IGRpZSBJbmZvcm1hdGlvbmVuIGRlciBjb250cm9sLURhdGVpIGF1cyBlaW5lbSBCaW7DpHJwYWtldGFyY2hpdi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTA3Cittc2dpZCAiIgorIklmIG5vIEI8Y29udHJvbC1maWxlLWZpZWxkPnMgYXJlIHNwZWNpZmllZCB0aGVuIGl0IHdpbGwgcHJpbnQgdGhlIHdob2xlICIKKyJjb250cm9sIGZpbGUuIgorbXNnc3RyICIiCisiRmFsbHMga2VpbmUgQjxTdGV1ZXJkYXRlaS1GZWxkPmVyIGFuZ2VnZWJlbiBzaW5kLCBnaWJ0IGVzIGRpZSBnZXNhbXRlICIKKyJjb250cm9sLURhdGVpIGF1cy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTE2Cittc2dpZCAiIgorIklmIGFueSBhcmUgc3BlY2lmaWVkIHRoZW4gQjxkcGtnLWRlYj4gd2lsbCBwcmludCB0aGVpciBjb250ZW50cywgaW4gdGhlICIKKyJvcmRlciBpbiB3aGljaCB0aGV5IGFwcGVhciBpbiB0aGUgY29udHJvbCBmaWxlLiBJZiBtb3JlIHRoYW4gb25lIEI8Y29udHJvbC0iCisiZmlsZS1maWVsZD4gaXMgc3BlY2lmaWVkIHRoZW4gQjxkcGtnLWRlYj4gd2lsbCBwcmVjZWRlIGVhY2ggd2l0aCBpdHMgZmllbGQgIgorIm5hbWUgKGFuZCBhIGNvbG9uIGFuZCBzcGFjZSkuIgorbXNnc3RyICIiCisiRmFsbHMgd2VsY2hlIGFuZ2VnZWJlbiBzaW5kLCBnaWJ0IEI8ZHBrZy1kZWI+IGlocmVuIEluaGFsdCBpbiBkZXIgIgorIlJlaWhlbmZvbGdlIGF1cywgaW4gZGVyIHNpZSBpbiBkZXIgY29udHJvbC1EYXRlaSBhbmdlZ2ViZW4gc2luZC4gRmFsbHMgbWVociAiCisiYWxzIGVpbiBCPFN0ZXVlcmRhdGVpLUZlbGQ+IGFuZ2VnZWJlbiBpc3QsIHN0ZWxsdCBCPGRwa2ctZGViPiBqZWRlbSBJbmhhbHQgIgorInNlaW5lbiBGZWxkbmFtZW4gKHVuZCBlaW5lbiBEb3BwZWxwdW5rdCBtaXQgTGVlcnplaWNoZW4pIHZvcmFuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxMTgKK21zZ2lkICJObyBlcnJvcnMgYXJlIHJlcG9ydGVkIGZvciBmaWVsZHMgcmVxdWVzdGVkIGJ1dCBub3QgZm91bmQuIgorbXNnc3RyICIiCisiRmFsbHMgYW5nZWZvcmRlcnRlIEZlbGRlciBuaWNodCBnZWZ1bmRlbiB3ZXJkZW4gd2lyZCBrZWluIEZlaGxlciBnZW1lbGRldC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRlYi4xOjExOAorIywgbm8td3JhcAorbXNnaWQgIkI8LWM+LCBCPC0tY29udGVudHM+IEk8YXJjaGl2ZT4iCittc2dzdHIgIkI8LWM+LCBCPC0tY29udGVudHM+IEk8QXJjaGl2PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxMjQKK21zZ2lkICIiCisiTGlzdHMgdGhlIGNvbnRlbnRzIG9mIHRoZSBmaWxlc3lzdGVtIHRyZWUgYXJjaGl2ZSBwb3J0aW9uIG9mIHRoZSBwYWNrYWdlICIKKyJhcmNoaXZlLiBJdCBpcyBjdXJyZW50bHkgcHJvZHVjZWQgaW4gdGhlIGZvcm1hdCBnZW5lcmF0ZWQgYnkgQjx0YXI+J3MgIgorInZlcmJvc2UgbGlzdGluZy4iCittc2dzdHIgIiIKKyJMaXN0ZXQgZGVuIEluaGFsdCBkZXMgRGF0ZWlzeXN0ZW0tQXJjaGl2YW50ZWlscyBkZXMgUGFrZXRhcmNoaXZzIGF1Zi4gRGllICIKKyJBdXNnYWJlIGVyZm9sZ3QgZGVyemVpdCBpbiBkZW0gRm9ybWF0LCBkYXMgdm9uIEI8dGFyPiBpbiBkZXIgYXVzZsO8aHJsaWNoZW4gIgorIkF1Zmxpc3R1bmcgZXJzdGVsbHQgd2lyZC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRlYi4xOjEyNAorIywgbm8td3JhcAorbXNnaWQgIkI8LXg+LCBCPC0tZXh0cmFjdD4gSTxhcmNoaXZlIGRpcmVjdG9yeT4iCittc2dzdHIgIkI8LXg+LCBCPC0tZXh0cmFjdD4gSTxBcmNoaXYtVmVyemVpY2huaXM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjEyOAorbXNnaWQgIiIKKyJFeHRyYWN0cyB0aGUgZmlsZXN5c3RlbSB0cmVlIGZyb20gYSBwYWNrYWdlIGFyY2hpdmUgaW50byB0aGUgc3BlY2lmaWVkICIKKyJkaXJlY3RvcnkuIgorbXNnc3RyICIiCisiRXh0cmFoaWVydCBkZW4gRGF0ZWlzeXN0ZW1iYXVtIGF1cyBlaW5lbSBQYWtldGFyY2hpdiBpbiBkYXMgYW5nZWdlYmVuZSAiCisiVmVyemVpY2huaXMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjEzNAorbXNnaWQgIiIKKyJOb3RlIHRoYXQgZXh0cmFjdGluZyBhIHBhY2thZ2UgdG8gdGhlIHJvb3QgZGlyZWN0b3J5IHdpbGwgSTxub3Q+IHJlc3VsdCBpbiBhICIKKyJjb3JyZWN0IGluc3RhbGxhdGlvbiEgVXNlIEI8ZHBrZz4gdG8gaW5zdGFsbCBwYWNrYWdlcy4iCittc2dzdHIgIiIKKyJCZWFjaHRlbiBTaWUsIGRhc3MgZGFzIEV4dHJhaGllcmVuIGVpbmVzIFBha2V0cyBpbiBkYXMgV3VyemVsdmVyemVpY2huaXMgIgorIkk8bmljaHQ+IHp1IGVpbmVyIGtvcnJla3RlbiBJbnN0YWxsYXRpb24gZsO8aHJ0ISBWZXJ3ZW5kZW4gU2llIEI8ZHBrZz4genVyICIKKyJQYWtldGluc3RhbGxhdGlvbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTM4Cittc2dpZCAiIgorIkk8ZGlyZWN0b3J5PiAoYnV0IG5vdCBpdHMgcGFyZW50cykgd2lsbCBiZSBjcmVhdGVkIGlmIG5lY2Vzc2FyeSwgYW5kIGl0cyAiCisicGVybWlzc2lvbnMgbW9kaWZpZWQgdG8gbWF0Y2ggdGhlIGNvbnRlbnRzIG9mIHRoZSBwYWNrYWdlLiIKK21zZ3N0ciAiIgorIkk8VmVyemVpY2huaXM+IChhYmVyIG5pY2h0IGRpZSDDvGJlcmdlb3JkbmV0ZW4pIHdpcmQgZmFsbHMgbm90d2VuZGlnICIKKyJhbmdlbGVndC4gU2VpbmUgUmVjaHRlIHdlcmRlbiBhbmdlcGFzc3QsIHVtIG1pdCBkZW0gSW5oYWx0IGRlcyBQYWtldHMgIgorIsO8YmVyZWluenVzdGltbWVuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MTM4CisjLCBuby13cmFwCittc2dpZCAiQjwtWD4sIEI8LS12ZXh0cmFjdD4gSTxhcmNoaXZlIGRpcmVjdG9yeT4iCittc2dzdHIgIkI8LVg+LCBCPC0tdmV4dHJhY3Q+IEk8QXJjaGl2LVZlcnplaWNobmlzPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxNDUKK21zZ2lkICIiCisiSXMgbGlrZSBCPC0tZXh0cmFjdD4gKEI8LXg+KSAgd2l0aCBCPC0tdmVyYm9zZT4gKEI8LXY+KSAgd2hpY2ggcHJpbnRzIGEgIgorImxpc3Rpbmcgb2YgdGhlIGZpbGVzIGV4dHJhY3RlZCBhcyBpdCBnb2VzLiIKK21zZ3N0ciAiIgorIklzdCB3aWUgQjwtLWV4dHJhY3Q+IChCPC14PikgbWl0IEI8LS12ZXJib3NlPiAoQjwtdj4pLCBkYXMgYmVpbSBBcmJlaXRlbiAiCisiZWluZSBMaXN0ZSB2b24gZXh0cmFoaWVydGVuIERhdGVpZW4gYXVzZ2lidC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRlYi4xOjE0NQorIywgbm8td3JhcAorbXNnaWQgIkI8LVI+LCBCPC0tcmF3LWV4dHJhY3Q+IEk8YXJjaGl2ZSBkaXJlY3Rvcnk+IgorbXNnc3RyICJCPC1SPiwgQjwtLXJhdy1leHRyYWN0PiBJPEFyY2hpdi1WZXJ6ZWljaG5pcz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTUwCittc2dpZCAiIgorIkV4dHJhY3RzIHRoZSBmaWxlc3lzdGVtIHRyZWUgZnJvbSBhIHBhY2thZ2UgYXJjaGl2ZSBpbnRvIGEgc3BlY2lmaWVkICIKKyJkaXJlY3RvcnksIGFuZCB0aGUgY29udHJvbCBpbmZvcm1hdGlvbiBmaWxlcyBpbnRvIGEgREVCSUFOIHN1YmRpcmVjdG9yeSBvZiAiCisidGhlIHNwZWNpZmllZCBkaXJlY3RvcnkuIgorbXNnc3RyICIiCisiRXh0cmFoaWVydCBkZW4gRGF0ZWlzeXN0ZW1iYXVtIGF1cyBlaW5lbSBQYWtldGFyY2hpdiBpbiBlaW4gYW5nZWdlYmVuZXMgIgorIlZlcnplaWNobmlzIHVuZCBkaWUgU3RldWVyaW5mb3JtYXRpb25lbnNkYXRlaWVuIGluIGRhcyBERUJJQU4tIgorIlVudGVydmVyemVpY2huaXMgZGVzIGFuZ2VnZWJlbmVuIFZlcnplaWNobmlzc2VzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxNTIgZHBrZy1kZWIuMToxNzIKK21zZ2lkICIiCisiVGhlIHRhcmdldCBkaXJlY3RvcnkgKGJ1dCBub3QgaXRzIHBhcmVudHMpIHdpbGwgYmUgY3JlYXRlZCBpZiBuZWNlc3NhcnkuIgorbXNnc3RyICIiCisiRGFzIFppZWx2ZXJ6ZWljaG5pcyAoYWJlciBuaWNodCDDvGJlcmdlb3JkbmV0ZSkgd2lyZCwgZmFsbHMgbm90d2VuZGlnLCAiCisiYW5nZWxlZ3QuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToxNTIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tZnN5cy10YXJmaWxlPiBJPGFyY2hpdmU+IgorbXNnc3RyICJCPC0tZnN5cy10YXJmaWxlPiBJPEFyY2hpdj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTYxCittc2dpZCAiIgorIkV4dHJhY3RzIHRoZSBmaWxlc3lzdGVtIHRyZWUgZGF0YSBmcm9tIGEgYmluYXJ5IHBhY2thZ2UgYW5kIHNlbmRzIGl0IHRvICIKKyJzdGFuZGFyZCBvdXRwdXQgaW4gQjx0YXI+IGZvcm1hdC4gVG9nZXRoZXIgd2l0aCBCPHRhcj4oMSkgIHRoaXMgY2FuIGJlIHVzZWQgIgorInRvIGV4dHJhY3QgYSBwYXJ0aWN1bGFyIGZpbGUgZnJvbSBhIHBhY2thZ2UgYXJjaGl2ZS4gIFRoZSBpbnB1dCBhcmNoaXZlIHdpbGwgIgorImFsd2F5cyBiZSBwcm9jZXNzZWQgc2VxdWVudGlhbGx5LiIKK21zZ3N0ciAiIgorIkV4dHJhaGllcnQgZGllIERhdGVpc3lzdGVtYmF1bS1EYXRlbiBhdXMgZWluZW0gQmluw6RycGFrZXQgdW5kIHNjaGlja3Qgc2llICIKKyJ6dXIgU3RhbmRhcmRhdXNnYWJlIGltIEI8dGFyPi1Gb3JtYXQuIERpZXMga2FubiB6dXNhbW1lbiBtaXQgQjx0YXI+KDEpICIKKyJ2ZXJ3ZW5kZXQgd2VyZGVuLCB1bSBlaW5lIGJlc3RpbW10ZSBEYXRlaSBhdXMgZWluZW0gUGFrZXRhcmNoaXYgenUgIgorImV4dHJhaGllcmVuLiBEYXMgRWluZ2FiZWFyY2hpdiB3aXJkIGltbWVyIHNlcXVlbnppZWxsIHZlcmFyYmVpdGV0LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MTYxCisjLCBuby13cmFwCittc2dpZCAiQjwtZT4sIEI8LS1jb250cm9sPiBJPGFyY2hpdmU+IFtJPGRpcmVjdG9yeT5dIgorbXNnc3RyICJCPC1lPiwgQjwtLWNvbnRyb2w+IEk8QXJjaGl2PiBbSTxWZXJ6ZWljaG5pcz5dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjE2NQorbXNnaWQgIiIKKyJFeHRyYWN0cyB0aGUgY29udHJvbCBpbmZvcm1hdGlvbiBmaWxlcyBmcm9tIGEgcGFja2FnZSBhcmNoaXZlIGludG8gdGhlICIKKyJzcGVjaWZpZWQgZGlyZWN0b3J5LiIKK21zZ3N0ciAiIgorIkV4dHJhaGllcnQgZGllIFN0ZXVlci1JbmZvcm1hdGlvbnNkYXRlaWVuIGF1cyBlaW5lbSBQYWtldGFyY2hpdiBpbiBkYXMgIgorImFuZ2VnZWJlbmUgVmVyemVpY2huaXMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjE2OQorbXNnaWQgIiIKKyJJZiBubyBkaXJlY3RvcnkgaXMgc3BlY2lmaWVkIHRoZW4gYSBzdWJkaXJlY3RvcnkgQjxERUJJQU4+IGluIHRoZSBjdXJyZW50ICIKKyJkaXJlY3RvcnkgaXMgdXNlZC4iCittc2dzdHIgIiIKKyJGYWxscyBrZWluIFZlcnplaWNobmlzIGFuZ2VnZWJlbiBpc3QsIHdpcmQgZGFzIFVudGVydmVyemVpY2huaXMgQjxERUJJQU4+IGltICIKKyJha3R1ZWxsZW4gVmVyemVpY2huaXMgdmVyd2VuZGV0LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MTgwCisjLCBuby13cmFwCittc2dpZCAiQjwtLXNob3dmb3JtYXQ9Pkk8Zm9ybWF0PiIKK21zZ3N0ciAiQjwtLXNob3dmb3JtYXQ9Pkk8Rm9ybWF0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxODUgZHBrZy1xdWVyeS4xOjEyNworbXNnaWQgIiIKKyJUaGlzIG9wdGlvbiBpcyB1c2VkIHRvIHNwZWNpZnkgdGhlIGZvcm1hdCBvZiB0aGUgb3V0cHV0IEI8LS1zaG93PiB3aWxsICIKKyJwcm9kdWNlLiBUaGUgZm9ybWF0IGlzIGEgc3RyaW5nIHRoYXQgd2lsbCBiZSBvdXRwdXQgZm9yIGVhY2ggcGFja2FnZSBsaXN0ZWQuIgorbXNnc3RyICIiCisiRGllc2UgT3B0aW9uIHdpcmQgZGF6dSB2ZXJ3ZW5kZXQsIGRhcyBGb3JtYXQgZGVyIEF1c2dhYmUgYW56dWdlYmVuLCBkYXMgQjwtLSIKKyJzaG93PiB2ZXJ3ZW5kZW4gd2lyZC4gRGFzIEZvcm1hdCBpc3QgZWluZSBaZWljaGVua2V0dGUsIGRpZSBmw7xyIGplZGVzICIKKyJhdWZnZWbDvGhydGUgUGFrZXQgYXVzZ2VnZWJlbiB3aXJkLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxOTQKK21zZ2lkICIiCisiVGhlIHN0cmluZyBtYXkgcmVmZXJlbmNlIGFueSBzdGF0dXMgZmllbGQgdXNpbmcgdGhlIFwiJHtJPGZpZWxkLW5hbWU+fVwiICIKKyJmb3JtLCBhIGxpc3Qgb2YgdGhlIHZhbGlkIGZpZWxkcyBjYW4gYmUgZWFzaWx5IHByb2R1Y2VkIHVzaW5nIEI8LUk+IG9uIHRoZSAiCisic2FtZSBwYWNrYWdlLiBBIGNvbXBsZXRlIGV4cGxhbmF0aW9uIG9mIHRoZSBmb3JtYXR0aW5nIG9wdGlvbnMgKGluY2x1ZGluZyAiCisiZXNjYXBlIHNlcXVlbmNlcyBhbmQgZmllbGQgdGFiYmluZykgY2FuIGJlIGZvdW5kIGluIHRoZSBleHBsYW5hdGlvbiBvZiB0aGUgIgorIkI8LS1zaG93Zm9ybWF0PiBvcHRpb24gaW4gQjxkcGtnLXF1ZXJ5PigxKS4iCittc2dzdHIgIiIKKyJEaWUgWmVpY2hlbmtldHRlIGRhcmYgamVkZXMgU3RhdHVzZmVsZCBpbiBkZXIgRm9ybSDCuyR7STxGZWxkbmFtZT59wqsgIgorInJlZmVyZW56aWVyZW4sIGVpbmUgTGlzdGUgZGVyIG3DtmdsaWNoZW4gRmVsZGVyIGthbm4gbGVpY2h0IG1pdHRlbHMgQjwtST4gZsO8ciAiCisiZGFzIGdsZWljaGUgUGFrZXQgZXJtaXR0ZWx0IHdlcmRlbi4gRWluZSBrb21wbGV0dGUgRXJsw6R1dGVydW5nIGRlciAiCisiRm9ybWF0aWVyb3B0aW9uZW4gKGRhcnVudGVyIGRpZSBFc2NhcGUtU2VxdWVuemVuIHVuZCBGZWxkLVRhYnVsYXRvcmVuKSBrYW5uICIKKyJpbiBkZXIgRXJrbMOkcnVuZyBkZXIgT3B0aW9uIEI8LS1zaG93Zm9ybWF0PiB2b24gQjxkcGtnLXF1ZXJ5PigxKSBnZWZ1bmRlbiAiCisid2VyZGVuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxOTYKK21zZ2lkICJUaGUgZGVmYXVsdCBmb3IgdGhpcyBmaWVsZCBpcyBcIiR7UGFja2FnZX1cXGV0JHtWZXJzaW9ufVxcZW5cIi4iCittc2dzdHIgIiIKKyJEaWUgVm9yZWluc3RlbGx1bmcgZsO8ciBkaWVzZXMgRmVsZCBpc3QgXCIke1BhY2thZ2V9XFxldCR7VmVyc2lvbn1cXGVuXCIuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToxOTYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC16Pkk8Y29tcHJlc3MtbGV2ZWw+IgorbXNnc3RyICJCPC16Pkk8S29tcHJpbWllcnN0dWZlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToyMDAKK21zZ2lkICIiCisiU3BlY2lmeSB3aGljaCBjb21wcmVzc2lvbiBsZXZlbCB0byB1c2Ugb24gdGhlIGNvbXByZXNzb3IgYmFja2VuZCwgd2hlbiAiCisiYnVpbGRpbmcgYSBwYWNrYWdlIChkZWZhdWx0IGlzIDkgZm9yIGd6aXAgYW5kIGJ6aXAyLCA2IGZvciB4eiBhbmQgbHptYSkuIgorbXNnc3RyICIiCisiR2lidCBkaWUgS29tcHJpbWllcnN0dWZlIGFuLCBkaWUgaW0gS29tcHJpbWllci1CYWNrZW5kcHJvZ3JhbW0gYmVpbSBCYXUgIgorImVpbmVzIFBha2V0cyB2ZXJ3ZW5kZXQgd2VyZGVuIHNvbGwuIFN0YW5kYXJkbcOkw59pZyBpc3QgZGllcyA5IGbDvHIgR3ppcCB1bmQgIgorIkJ6aXAyLCA2IGbDvHIgWHogdW5kIEx6bWEuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToyMDAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1aPkk8Y29tcHJlc3MtdHlwZT4iCittc2dzdHIgIkI8LVo+STxLb21wcmltaWVyYXJ0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToyMDUKK21zZ2lkICIiCisiU3BlY2lmeSB3aGljaCBjb21wcmVzc2lvbiB0eXBlIHRvIHVzZSB3aGVuIGJ1aWxkaW5nIGEgcGFja2FnZS4gQWxsb3dlZCAiCisidmFsdWVzIGFyZSBJPGd6aXA+LCBJPHh6PiwgSTxiemlwMj4sIEk8bHptYT4sIGFuZCBJPG5vbmU+IChkZWZhdWx0IGlzICIKKyJJPGd6aXA+KS4iCittc2dzdHIgIiIKKyJHaWJ0IGRpZSBBcnQgZGVyIEtvbXByaW1pZXJ1bmcgYmVpbSBCYXUgZWluZXMgUGFrZXRzIGFuLiBFcmxhdWJ0ZSBXZXJ0ZSBzaW5kICIKKyJJPGd6aXA+LCBJPHh6PiwgSTxiemlwMj4sIEk8bHptYT4gdW5kIEk8bm9uZT4gKHZvcmVpbmdlc3RlbGx0IGlzdCBJPGd6aXA+KS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRlYi4xOjIwNQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1uZXc+IgorbXNnc3RyICJCPC0tbmV3PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToyMTAKK21zZ2lkICIiCisiRW5zdXJlcyB0aGF0IEI8ZHBrZy1kZWI+IGJ1aWxkcyBhIGBuZXcnIGZvcm1hdCBhcmNoaXZlLiBUaGlzIGlzIHRoZSBkZWZhdWx0LiIKK21zZ3N0ciAiIgorIlN0ZWxsdCBzaWNoZXIsIGRhc3MgQjxkcGtnLWRlYj4gZWluIEFyY2hpdiBpbSDCu25ldWVuwqsgRm9ybWF0IGJhdXQuIERpZXMgaXN0ICIKKyJkaWUgVm9yZWluc3RlbGx1bmcuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToyMTAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tb2xkPiIKK21zZ3N0ciAiQjwtLW9sZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MjE4Cittc2dpZCAiIgorIkZvcmNlcyBCPGRwa2ctZGViPiB0byBidWlsZCBhbiBgb2xkJyBmb3JtYXQgYXJjaGl2ZS4gVGhpcyBvbGQgYXJjaGl2ZSBmb3JtYXQgIgorImlzIGxlc3MgZWFzaWx5IHBhcnNlZCBieSBub24tRGViaWFuIHRvb2xzIGFuZCBpcyBub3cgb2Jzb2xldGU7IGl0cyBvbmx5IHVzZSAiCisiaXMgd2hlbiBidWlsZGluZyBwYWNrYWdlcyB0byBiZSBwYXJzZWQgYnkgdmVyc2lvbnMgb2YgZHBrZyBvbGRlciB0aGFuICIKKyIwLjkzLjc2IChTZXB0ZW1iZXIgMTk5NSksIHdoaWNoIHdhcyByZWxlYXNlZCBhcyBpMzg2IGEub3V0IG9ubHkuIgorbXNnc3RyICIiCisiWndpbmd0IEI8ZHBrZy1kZWI+IGRhenUsIGVpbiBBcmNoaXYgaW0gwrthbHRlbsKrIEZvcm1hdCB6dSBiYXVlbi4gRGllc2VzIGFsdGUgIgorIkZvcm1hdCB3aXJkIG5pY2h0IHNvIGxlaWNodCB2b24gbmljaHQtRGViaWFuLVdlcmt6ZXVnZW4gZWluZ2VsZXNlbiB1bmQgaXN0ICIKKyJqZXR6dCB2ZXJhbHRldDsgZGVyIGVpbnppZ2UgWndlY2sgaXN0IHp1bSBCYXUgdm9uIFBha2V0ZW4sIGRpZSB2b24gRHBrZy0iCisiVmVyc2lvbmVuIGtsZWluZXIgMC45My43NiAoU2VwdGVtYmVyIDE5OTUpIGVpbmdlbGVzZW4gd2VyZGVuIHNvbGxlbi4gRGllc2UgIgorIkRwa2ctVmVyc2lvbiB3dXJkZSBudXIgYWxzIGkzODYgYS5vdXQtUHJvZ3JhbW0gdmVyw7ZmZmVudGxpY2h0LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MjE4CisjLCBuby13cmFwCittc2dpZCAiQjwtLW5vY2hlY2s+IgorbXNnc3RyICJCPC0tbm9jaGVjaz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MjI0Cittc2dpZCAiIgorIkluaGliaXRzIEI8ZHBrZy1kZWIgLS1idWlsZD4ncyB1c3VhbCBjaGVja3Mgb24gdGhlIHByb3Bvc2VkIGNvbnRlbnRzIG9mIGFuICIKKyJhcmNoaXZlLiBZb3UgY2FuIGJ1aWxkIGFueSBhcmNoaXZlIHlvdSB3YW50LCBubyBtYXR0ZXIgaG93IGJyb2tlbiwgdGhpcyB3YXkuIgorbXNnc3RyICIiCisiVW50ZXJkcsO8Y2t0IGRpZSBub3JtYWxlbiDDnGJlcnByw7xmdW5nZW4gdm9uIEI8ZHBrZy1kZWIgLS1idWlsZD4gw7xiZXIgZGllICIKKyJ2b3JnZXNjaGxhZ2VuZW4gSW5oYWx0ZSBlaW5lcyBBcmNoaXZzLiBEYW1pdCBrw7ZubmVuIFNpZSBqZWRlcyBBcmNoaXYgYmF1ZW4sICIKKyJkYXMgU2llIG3DtmNodGVuLCBlZ2FsIHdpZSBkZWZla3QgZXMgaXN0LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MjI0IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjU1CisjLCBuby13cmFwCittc2dpZCAiQjwtdj4sIEI8LS12ZXJib3NlPiIKK21zZ3N0ciAiQjwtdj4sIEI8LS12ZXJib3NlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToyMjgKK21zZ2lkICIiCisiRW5hYmxlcyB2ZXJib3NlIG91dHB1dC4gVGhpcyBjdXJyZW50bHkgb25seSBhZmZlY3RzIEI8LS1leHRyYWN0PiBtYWtpbmcgaXQgIgorImJlaGF2ZSBsaWtlIEI8LS12ZXh0cmFjdD4uIgorbXNnc3RyICIiCisiQWt0aXZpZXJ0IGF1c2bDvGhybGljaGUgQXVzZ2FiZS4gRGllcyBiZXRyaWZmdCBkZXJ6ZWl0IG51ciBCPC0tZXh0cmFjdD4sICIKKyJ3b2R1cmNoIGRpZXNlcyBzaWNoIHdpZSBCPC0tdmV4dHJhY3Q+IHZlcmjDpGx0LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MjI4CisjLCBuby13cmFwCittc2dpZCAiQjwtRD4sIEI8LS1kZWJ1Zz4iCittc2dzdHIgIkI8LUQ+LCBCPC0tZGVidWc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjIzMQorbXNnaWQgIkVuYWJsZXMgZGVidWdnaW5nIG91dHB1dC4gVGhpcyBpcyBub3QgdmVyeSBpbnRlcmVzdGluZy4iCittc2dzdHIgIiIKKyJBa3RpdmllcnQgRmVobGVyc3VjaC1BdXNnYWJlbiAowrtkZWJ1Z2dpbmfCqykuIERpZXMgaXN0IG5pY2h0IHNlaHIgaW50ZXJlc3NhbnQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjIzNworbXNnaWQgIiIKKyJJZiBzZXQsIEI8ZHBrZy1kZWI+IHdpbGwgdXNlIGl0IGFzIHRoZSBkaXJlY3RvcnkgaW4gd2hpY2ggdG8gY3JlYXRlICIKKyJ0ZW1wb3JhcnkgZmlsZXMgYW5kIGRpcmVjdG9yaWVzLiIKK21zZ3N0ciAiIgorIkZhbGxzIGdlc2V0enQgd2lyZCBCPGRwa2ctZGViPiBlcyBhbHMgZGFzIFZlcnplaWNobmlzIHZlcndlbmRlbiwgaW4gZGVtICIKKyJ0ZW1wb3LDpHJlIERhdGVpZW4gdW5kIFZlcnplaWNobmlzc2UgZXJzdGVsbHQgd2VyZGVuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToyNDMKK21zZ2lkICIiCisiQjxkcGtnLWRlYiAtST4gSTxwYWNrYWdlMT5CPC5kZWI+IEk8cGFja2FnZTI+QjwuZGViPiBkb2VzIHRoZSB3cm9uZyB0aGluZy4iCittc2dzdHIgIkI8ZHBrZy1kZWIgLUk+IEk8UGFrZXQxPkI8LmRlYj4gSTxQYWtldDI+QjwuZGViPiBtYWNodCBkYXMgRmFsc2NoZS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MjUxCittc2dpZCAiIgorIlRoZXJlIGlzIG5vIGF1dGhlbnRpY2F0aW9uIG9uIEI8LmRlYj4gZmlsZXM7IGluIGZhY3QsIHRoZXJlIGlzbid0IGV2ZW4gYSAiCisic3RyYWlnaHRmb3J3YXJkIGNoZWNrc3VtLiAgKEhpZ2hlciBsZXZlbCB0b29scyBsaWtlIEFQVCBzdXBwb3J0ICIKKyJhdXRoZW50aWNhdGluZyBCPC5kZWI+IHBhY2thZ2VzIHJldHJpZXZlZCBmcm9tIGEgZ2l2ZW4gcmVwb3NpdG9yeSwgYW5kIG1vc3QgIgorInBhY2thZ2VzIG5vd2FkYXlzIHByb3ZpZGUgYW4gbWQ1c3VtIGNvbnRyb2wgZmlsZSBnZW5lcmF0ZWQgYnkgZGViaWFuL3J1bGVzLiAiCisiVGhvdWdoIHRoaXMgaXMgbm90IGRpcmVjdGx5IHN1cHBvcnRlZCBieSB0aGUgbG93ZXIgbGV2ZWwgdG9vbHMuKSIKK21zZ3N0ciAiIgorIkI8LmRlYj4tRGF0ZWllbiB3ZXJkZW4gbmljaHQgYXV0aGVudGlmaXppZXJ0OyBpbiBkZXIgVGF0IGdpYnQgZXMgbm9jaCBuaWNodCAiCisibWFsIGVpbmUga2xhcmUgUHLDvGZzdW1tZS4gKEFic3RyYWt0ZXJlIFdlcmt6ZXVnZSB3aWUgQVBUIHVudGVyc3TDvHR6dGVuIGRpZSAiCisiQXV0aGVudGlmaXppZXJ1bmcgdm9uIEI8LmRlYj4tUGFrZXRlbiwgZGllIHZvbiBlaW5lbSB2b3JnZWdlYmVuZW4gRGVwb3QgIgorImdlaG9sdCB3dXJkZW4gdW5kIGRpZSBtZWlzdGVuIFBha2V0ZSBzdGVsbGVuIGhldXR6dXRhZ2UgZWluZSBtZDVzdW0tIgorIlN0ZXVlcmRhdGVpIGJlcmVpdCwgZGllIG1pdHRlbHMgZGViaWFuL3J1bGVzIGVyc3RlbGx0IHd1cmRlLiBBbGxlcmRpbmdzIHdpcmQgIgorImRpZXMgdm9uIGRlbiBXZXJremV1Z2VuIGF1ZiBuaWVkcmlnZXJlciBFYmVuZSBuaWNodCBkaXJla3QgdW50ZXJzdMO8dHp0LikiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MjU4Cittc2dpZCAiIgorIkRvIG5vdCBhdHRlbXB0IHRvIHVzZSBqdXN0IEI8ZHBrZy1kZWI+IHRvIGluc3RhbGwgc29mdHdhcmUhIFlvdSBtdXN0IHVzZSAiCisiQjxkcGtnPiBwcm9wZXIgdG8gZW5zdXJlIHRoYXQgYWxsIHRoZSBmaWxlcyBhcmUgY29ycmVjdGx5IHBsYWNlZCBhbmQgdGhlICIKKyJwYWNrYWdlJ3Mgc2NyaXB0cyBydW4gYW5kIGl0cyBzdGF0dXMgYW5kIGNvbnRlbnRzIHJlY29yZGVkLiIKK21zZ3N0ciAiIgorIlZlcnN1Y2hlbiBTaWUgbmljaHQsIG51ciBtaXQgQjxkcGtnLWRlYj4gU29mdHdhcmUgenUgaW5zdGFsbGllcmVuISBTaWUgIgorIm3DvHNzZW4gQjxkcGtnPiBzZWxiZXIgdmVyd2VuZGVuLCB1bSBzaWNoZXJ6dXN0ZWxsZW4sIGRhc3MgYWxsZSBEYXRlaWVuIGFuICIKKyJkZW4gcmljaHRpZ2VuIE9ydCBwbGF0emllcnQgd2VyZGVuLCBkaWUgUGFrZXRza3JpcHRlIGF1c2dlZsO8aHJ0IHdlcmRlbiB1bmQgIgorInNlaW4gU3RhdHVzIHVuZCBJbmhhbHQgYXVmZ2V6ZWljaG5ldCB3aXJkLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToyNjQKK21zZ2lkICJCPGRlYj4oNSksIEI8ZGViLWNvbnRyb2w+KDUpLCBCPGRwa2c+KDEpLCBCPGRzZWxlY3Q+KDEpLiIKK21zZ3N0ciAiQjxkZWI+KDUpLCBCPGRlYi1jb250cm9sPig1KSwgQjxkcGtnPigxKSwgQjxkc2VsZWN0PigxKS4iCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLWRpdmVydC44OjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLWRpdmVydCIKK21zZ3N0ciAiZHBrZy1kaXZlcnQiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6NAorbXNnaWQgImRwa2ctZGl2ZXJ0IC0gb3ZlcnJpZGUgYSBwYWNrYWdlJ3MgdmVyc2lvbiBvZiBhIGZpbGUiCittc2dzdHIgImRwa2ctZGl2ZXJ0IC0gSGlud2Vnc2V0emVuIMO8YmVyIGRpZSBQYWtldHZlcnNpb24gZWluZXIgRGF0ZWkiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6OQorbXNnaWQgIkI8ZHBrZy1kaXZlcnQ+IFtJPG9wdGlvbj4uLi5dIEk8Y29tbWFuZD4iCittc2dzdHIgIkI8ZHBrZy1kaXZlcnQ+IFtJPE9wdGlvbj4uLi5dIEk8QmVmZWhsPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODoxMworbXNnaWQgIiIKKyJCPGRwa2ctZGl2ZXJ0PiBpcyB0aGUgdXRpbGl0eSB1c2VkIHRvIHNldCB1cCBhbmQgdXBkYXRlIHRoZSBsaXN0IG9mICIKKyJkaXZlcnNpb25zLiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1kaXZlcnQ+IGlzdCBlaW4gSGlsZnN3ZXJremV1ZywgdW0gZGllIExpc3RlIGRlciBVbWxlaXR1bmdlbiAiCisiZWluenVyaWNodGVuIHVuZCB6dSBha3R1YWxpc2llcmVuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODoyMworbXNnaWQgIiIKKyJGaWxlIEk8ZGl2ZXJzaW9ucz4gYXJlIGEgd2F5IG9mIGZvcmNpbmcgQjxkcGtnPigxKSAgbm90IHRvIGluc3RhbGwgYSBmaWxlICIKKyJpbnRvIGl0cyBsb2NhdGlvbiwgYnV0IHRvIGEgSTxkaXZlcnRlZD4gbG9jYXRpb24uIERpdmVyc2lvbnMgY2FuIGJlIHVzZWQgIgorInRocm91Z2ggdGhlIERlYmlhbiBwYWNrYWdlIHNjcmlwdHMgdG8gbW92ZSBhIGZpbGUgYXdheSB3aGVuIGl0IGNhdXNlcyBhICIKKyJjb25mbGljdC4gU3lzdGVtIGFkbWluaXN0cmF0b3JzIGNhbiBhbHNvIHVzZSBpdCB0byBvdmVycmlkZSBzb21lIHBhY2thZ2UncyAiCisiY29uZmlndXJhdGlvbiBmaWxlLCBvciB3aGVuZXZlciBzb21lIGZpbGVzICh3aGljaCBhcmVuJ3QgbWFya2VkIGFzICIKKyInY29uZmZpbGVzJykgbmVlZCB0byBiZSBwcmVzZXJ2ZWQgYnkgZHBrZywgd2hlbiBpbnN0YWxsaW5nIGEgbmV3ZXIgdmVyc2lvbiAiCisib2YgYSBwYWNrYWdlIHdoaWNoIGNvbnRhaW5zIHRob3NlIGZpbGVzLiIKK21zZ3N0ciAiIgorIkRhdGVpLUk8RGl2ZXJzaW9uZW4+IChVbWxlaXR1bmdlbikgc2luZCBlaW5lIE3DtmdsaWNoa2VpdCwgQjxkcGtnPigxKSBkYXp1IHp1ICIKKyJ6d2luZ2VuLCBlaW5lIERhdGVpIG5pY2h0IGFuIGlocmVuIFN0YW5kYXJkcGxhdHosIHNvbmRlcm4gYW4gZWluZW0gIgorIkk8dW1nZWxlaXRldGVuPiBPcnQgenUgaW5zdGFsbGllcmVuLiBVbWxlaXR1bmdlbiBrw7ZubmVuIGlubmVyaGFsYiBkZXIgRGViaWFuLSIKKyJQYWtldHNrcmlwdGUgdmVyd2VuZGV0IHdlcmRlbiwgdW0gZWluZSBEYXRlaSBiZWlzZWl0ZXp1c2NoaWViZW4sIHdlbm4gc2llICIKKyJlaW5lbiBLb25mbGlrdCBhdXNsw7ZzdC4gU3lzdGVtYWRtaW5pc3RyYXRvcmVuIGvDtm5uZW4gc2llIGF1Y2ggdmVyd2VuZGVuLCB1bSAiCisic2ljaCDDvGJlciBkaWUgS29uZmlndXJhdGlvbnNkYXRlaWVuIGVpbmlnZXIgUGFrZXRlIGhpbndlZ3p1c2V0emVuLCBvZGVyIHdhbm4gIgorImltbWVyIGVpbmlnZSBEYXRlaWVuIChkaWUgbmljaHQgYWxzIMK7Q29uZmZpbGVzwqsgbWFya2llcnQgc2luZCkgdm9uIERwa2cgIgorImVyaGFsdGVuIHdlcmRlbiBtw7xzc2VuLCB3ZW5uIGVpbmUgbmV1ZXJlIFZlcnNpb24gZWluZXMgUGFrZXRlcywgZGllIGRpZXNlICIKKyJEYXRlaWVuIGVudGjDpGx0LCBpbnN0YWxsaWVydCB3aXJkLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGl2ZXJ0Ljg6MjUKKyMsIG5vLXdyYXAKK21zZ2lkICJbQjwtLWFkZD5dIEk8ZmlsZT4iCittc2dzdHIgIltCPC0tYWRkPl0gSTxEYXRlaT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6MjgKK21zZ2lkICJBZGQgYSBkaXZlcnNpb24gZm9yIEk8ZmlsZT4uIgorbXNnc3RyICJGw7xndCBlaW5lIFVtbGVpdHVuZyBmw7xyIEk8RGF0ZWk+IGhpbnp1LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGl2ZXJ0Ljg6MjggZHBrZy1zdGF0b3ZlcnJpZGUuODozNQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1yZW1vdmU+STwgZmlsZT4iCittc2dzdHIgIkI8LS1yZW1vdmU+STwgRGF0ZWk+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjMxCittc2dpZCAiUmVtb3ZlIGEgZGl2ZXJzaW9uIGZvciBJPGZpbGU+LiIKK21zZ3N0ciAiRW50ZmVybmUgZWluZSBVbWxlaXR1bmcgZsO8ciBJPERhdGVpPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRpdmVydC44OjMxCisjLCBuby13cmFwCittc2dpZCAiQjwtLWxpc3Q+STwgZ2xvYi1wYXR0ZXJuPiIKK21zZ3N0ciAiQjwtLWxpc3Q+STwgR2xvYi1NdXN0ZXI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjM0Cittc2dpZCAiTGlzdCBkaXZlcnNpb25zIG1hdGNoaW5nIEk8Z2xvYi1wYXR0ZXJuPi4iCittc2dzdHIgIkxpc3RlIFVtbGVpdHVuZ2VuIGF1ZiwgZGllIGF1ZiBJPEdsb2ItTXVzdGVyPiBwYXNzZW4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kaXZlcnQuODozNAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1saXN0cGFja2FnZT5JPCBmaWxlPiIKK21zZ3N0ciAiQjwtLWxpc3RwYWNrYWdlPkk8IERhdGVpPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODozOAorbXNnaWQgIiIKKyJQcmludCB0aGUgbmFtZSBvZiB0aGUgcGFja2FnZSB0aGF0IGRpdmVydHMgSTxmaWxlPi4gIFByaW50cyBMT0NBTCBpZiBJPGZpbGU+ICIKKyJpcyBsb2NhbGx5IGRpdmVydGVkIGFuZCBub3RoaW5nIGlmIEk8ZmlsZT4gaXMgbm90IGRpdmVydGVkLiIKK21zZ3N0ciAiIgorIkdpYnQgZGVuIE5hbWVuIGRlcyBQYWtldHMgYXVzLCBkaWUgSTxEYXRlaT4gdW1sZWl0ZXQuIEdpYnQgTE9DQUwgYXVzLCBmYWxscyAiCisiZGllIERhdGVpIGxva2FsIHVtZ2VsZWl0ZXQgd3VyZGUgdW5kIG5pY2h0cywgZmFsbHMgSTxEYXRlaT4gbmljaHQgdW1nZWxlaXRldCAiCisid3VyZGUuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kaXZlcnQuODozOAorIywgbm8td3JhcAorbXNnaWQgIkI8LS10cnVlbmFtZT5JPCBmaWxlPiIKK21zZ3N0ciAiQjwtLXRydWVuYW1lPkk8IERhdGVpPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo0MQorbXNnaWQgIlByaW50IHRoZSByZWFsIG5hbWUgZm9yIGEgZGl2ZXJ0ZWQgZmlsZS4iCittc2dzdHIgIlplaWdlIGRlbiBlY2h0ZW4gTmFtZW4gZsO8ciBlaW5lIHVtZ2VsZWl0ZXRlIERhdGVpIGFuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGl2ZXJ0Ljg6NDMgZHBrZy1zdGF0b3ZlcnJpZGUuODo1MiBkc2VsZWN0LjE6NDQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMjgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tYWRtaW5kaXI+STwgZGlyZWN0b3J5PiIKK21zZ3N0ciAiQjwtLWFkbWluZGlyPkk8IFZlcnplaWNobmlzPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo0NgorbXNnaWQgIiIKKyJTZXQgdGhlIGRwa2cgZGF0YSBkaXJlY3RvcnkgdG8gSTxkaXJlY3Rvcnk+IChkZWZhdWx0OiBJPC92YXIvbGliL2Rwa2c+KS4iCittc2dzdHIgIiIKKyJTZXR6ZSBkYXMgRHBrZy1EYXRlbnZlcnplaWNobmlzIGF1ZiBJPFZlcnplaWNobmlzPiAoU3RhbmRhcmQ6IEk8L3Zhci9saWIvIgorImRwa2c+KS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRpdmVydC44OjQ2CisjLCBuby13cmFwCittc2dpZCAiQjwtLWRpdmVydD5JPCBkaXZlcnQtdG8+IgorbXNnc3RyICJCPC0tZGl2ZXJ0Pkk8IFVtbGVpdHppZWw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjUwCittc2dpZCAiIgorIkk8ZGl2ZXJ0LXRvPiBpcyB0aGUgbG9jYXRpb24gd2hlcmUgdGhlIHZlcnNpb25zIG9mIEk8ZmlsZT4sIGFzIHByb3ZpZGVkIGJ5ICIKKyJvdGhlciBwYWNrYWdlcywgd2lsbCBiZSBkaXZlcnRlZC4iCittc2dzdHIgIiIKKyJJPFVtbGVpdHppZWw+IGlzdCBkZXIgWmllbG9ydCwgd28gZGllIFZlcnNpb25lbiBkZXIgSTxEYXRlaT4sIHdpZSBzaWUgdm9uICIKKyJhbmRlcmVuIFBha2V0ZW4gYmVyZWl0Z2VzdGVsbHQgd2lyZCwgaGluIHVtZ2VsZWl0ZXQgd2VyZGVuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGl2ZXJ0Ljg6NTAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tbG9jYWw+IgorbXNnc3RyICJCPC0tbG9jYWw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjU2Cittc2dpZCAiIgorIlNwZWNpZmllcyB0aGF0IGFsbCBwYWNrYWdlcycgdmVyc2lvbnMgb2YgdGhpcyBmaWxlIGFyZSBkaXZlcnRlZC4gIFRoaXMgIgorIm1lYW5zLCB0aGF0IHRoZXJlIGFyZSBubyBleGNlcHRpb25zLCBhbmQgd2hhdGV2ZXIgcGFja2FnZSBpcyBpbnN0YWxsZWQsIHRoZSAiCisiZmlsZSBpcyBkaXZlcnRlZC4gVGhpcyBjYW4gYmUgdXNlZCBieSBhbiBhZG1pbiB0byBpbnN0YWxsIGEgbG9jYWxseSBtb2RpZmllZCAiCisidmVyc2lvbi4iCittc2dzdHIgIiIKKyJHaWJ0IGFuLCBkYXNzIGFsbGUgVmVyc2lvbmVuIGRpZXNlciBEYXRlaSB1bWdlbGVpdGV0IHNpbmQuIERpZXMgYmVkZXV0ZXQsICIKKyJkYXNzIGVzIGtlaW5lIEF1c25haG1lbiBnaWJ0LCB1bmQgZWdhbCB3YXMgZsO8ciBlaW4gUGFrZXQgYXVjaCBpbnN0YWxsaWVydCAiCisiaXN0LCBkaWUgRGF0ZWkgaXN0IHVtZ2VsZWl0ZXQuIERpZXMga2FubiB2b20gQWRtaW5pc3RyYXRvciB2ZXJ3ZW5kZXQgd2VyZGVuLCAiCisidW0gZWluZSBsb2thbCBnZcOkbmRlcnRlIFZlcnNpb24genUgaW5zdGFsbGllcmVuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGl2ZXJ0Ljg6NTYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tcGFja2FnZT5JPCBwYWNrYWdlPiIKK21zZ3N0ciAiQjwtLXBhY2thZ2U+STwgUGFrZXQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjYxCittc2dpZCAiIgorIkk8cGFja2FnZT4gaXMgdGhlIG5hbWUgb2YgYSBwYWNrYWdlIHdob3NlIGNvcHkgb2YgSTxmaWxlPiB3aWxsIG5vdCBiZSAiCisiZGl2ZXJ0ZWQuIGkuZS4gSTxmaWxlPiB3aWxsIGJlIGRpdmVydGVkIGZvciBhbGwgcGFja2FnZXMgZXhjZXB0IEk8cGFja2FnZT4uIgorbXNnc3RyICIiCisiSTxQYWtldD4gaXN0IGRlciBOYW1lIGRlcyBQYWtldHMsIGRlc3NlbiBLb3BpZSB2b24gSTxEYXRlaT4gbmljaHQgdW1nZWxlaXRldCAiCisid2lyZCwgZC5oLiBJPERhdGVpPiB3aXJkIGbDvHIgYWxsZSBQYWtldGUgYXXDn2VyIEk8UGFrZXQ+IHVtZ2VsZWl0ZXQuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kaXZlcnQuODo2MSBkcGtnLXN0YXRvdmVycmlkZS44OjY0IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozNTAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tcXVpZXQ+IgorbXNnc3RyICJCPC0tcXVpZXQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjY0Cittc2dpZCAiUXVpZXQgbW9kZSwgaS5lLiBubyB2ZXJib3NlIG91dHB1dC4iCittc2dzdHIgIlJ1aGlnZXIgTW9kdXMsIGQuaC4ga2VpbmUgbGFuZ2F0bWlnZSBBdXNnYWJlLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGl2ZXJ0Ljg6NjQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tcmVuYW1lPiIKK21zZ3N0ciAiQjwtLXJlbmFtZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6NjgKK21zZ2lkICIiCisiQWN0dWFsbHkgbW92ZSB0aGUgZmlsZSBhc2lkZSAob3IgYmFjaykuIEI8ZHBrZy1kaXZlcnQ+IHdpbGwgYWJvcnQgb3BlcmF0aW9uICIKKyJpbiBjYXNlIHRoZSBkZXN0aW5hdGlvbiBmaWxlIGFscmVhZHkgZXhpc3RzLiIKK21zZ3N0ciAiIgorIlNjaGllYmUgZGllIERhdGVpZW4gdGF0c8OkY2hsaWNoIGJlaXNlaXRlIChvZGVyIHp1csO8Y2spLiBCPGRwa2ctZGl2ZXJ0PiB3aXJkICIKKyJkZW4gQXJiZWl0c3ZvcmdhbmcgYWJicmVjaGVuLCBmYWxscyBkaWUgWmllbGRhdGVpIGJlcmVpdHMgZXhpc3RpZXJ0LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGl2ZXJ0Ljg6NjgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tdGVzdD4iCittc2dzdHIgIkI8LS10ZXN0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo3MQorbXNnaWQgIlRlc3QgbW9kZSwgaS5lLiBkb24ndCBhY3R1YWxseSBwZXJmb3JtIGFueSBjaGFuZ2VzLCBqdXN0IGRlbW9uc3RyYXRlLiIKK21zZ3N0ciAiIgorIlRlc3Rtb2R1cywgZC5oLiBmw7xocmUga2VpbmUgw4RuZGVydW5nZW4gZHVyY2gsIHNvbmRlcm4gemVpZ2Ugc2llIGxlZGlnbGljaC4iCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLWRpdmVydC44Ojc4CisjLCBuby13cmFwCittc2dpZCAiTk9URVMiCittc2dzdHIgIkJFTUVSS1VOR0VOIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjgyCittc2dpZCAiIgorIldoZW4gYWRkaW5nLCBkZWZhdWx0IGlzIEI8LS1sb2NhbD4gYW5kIEI8LS1kaXZlcnQ+IEk8b3JpZ2luYWw+QjwuZGlzdHJpYj4uICIKKyJXaGVuIHJlbW92aW5nLCBCPC0tcGFja2FnZT4gb3IgQjwtLWxvY2FsPiBhbmQgQjwtLWRpdmVydD4gbXVzdCBtYXRjaCBpZiAiCisic3BlY2lmaWVkLiIKK21zZ3N0ciAiIgorIkJlaW0gSGluenVmw7xnZW4gaXN0IGRpZSBTdGFuZGFyZGVpbnN0ZWxsdW5nIEI8LS1sb2NhbD4gdW5kIEI8LS1kaXZlcnQ+ICIKKyJJPE9yaWdpbmFsbmFtZT4uQjxkaXN0cmliPi4gQmVpbSBFbnRmZXJuZW4gbcO8c3NlbiwgZmFsbHMgYW5nZWdlYmVuLCBCPC0tIgorInBhY2thZ2U+IG9kZXIgQjwtLWxvY2FsPiB1bmQgQjwtLWRpdmVydD4gw7xiZXJlaW5zdGltbWVuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo4NAorbXNnaWQgIkRpcmVjdG9yaWVzIGNhbid0IGJlIGRpdmVydGVkIHdpdGggQjxkcGtnLWRpdmVydD4uIgorbXNnc3RyICJWZXJ6ZWljaG5pc3NlIGvDtm5uZW4gbWl0IEI8ZHBrZy1kaXZlcnQ+IG5pY2h0IHVtZ2VsZWl0ZXQgd2VyZGVuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo5MAorbXNnaWQgIiIKKyJDYXJlIHNob3VsZCBiZSB0YWtlbiB3aGVuIGRpdmVydGluZyBzaGFyZWQgbGlicmFyaWVzLCBCPGxkY29uZmlnPig4KSAgIgorImNyZWF0ZXMgYSBzeW1ib2xpYyBsaW5rIGJhc2VkIG9uIHRoZSBEVF9TT05BTUUgZmllbGQgZW1iZWRkZWQgaW4gdGhlICIKKyJsaWJyYXJ5LiAgQmVjYXVzZSBsZGNvbmZpZyBkb2Vzbid0IGhvbm91ciBkaXZlcnRzIChvbmx5IGRwa2cgZG9lcyksIHRoZSAiCisic3ltbGluayBtYXkgZW5kIHVwIHBvaW50aW5nIGF0IHRoZSBkaXZlcnRlZCBsaWJyYXJ5LCBpZiBhIGRpdmVydGVkIGxpYnJhcnkgIgorImhhcyB0aGUgc2FtZSBTT05BTUUgYXMgdGhlIHVuZGl2ZXJ0ZWQgb25lLiIKK21zZ3N0ciAiIgorIlZvcnNpY2h0IHNvbGx0ZSBiZWltIFVtbGVpdGVuIHZvbiBMYXVmemVpdC1CaWJsaW90aGVrZW4gd2FsdGVuIGdlbGFzc2VuICIKKyJ3ZXJkZW4sIGRhIEI8bGRjb25maWc+KDgpIGVpbmVuIHN5bWJvbGlzY2hlbiBMaW5rLCBiYXNpZXJlbmQgYXVmIGRlbSBpbiBkZXIgIgorIkJpYmxpb3RoZWsgZWluZ2ViZXR0ZXRlbiBEVF9TT05BTUUtRmVsZCwgYW5sZWd0LiBEYSBsZGNvbmZpZyBrZWluZSAiCisiVW1sZWl0dW5nZW4gYW5lcmtlbm50IChudXIgRHBrZyB0dXQgZGllcyksIGthbm4gZGVyIFN5bWxpbmsgYW0gRW5kZSBhdWYgZGllICIKKyJ1bWdlbGVpdGV0ZSBCaWJsaW90aGVrIHplaWdlbiwgZmFsbHMgZGllIHVtZ2VsZWl0ZXRlIEJpYmxpb3RoZWsgZGVuIGdsZWljaGVuICIKKyJTT05BTUUgd2llIGRpZSBuaWNodCB1bWdlbGVpdGV0ZSBoYXQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44Ojk1Cittc2dpZCAiIgorIlRvIGRpdmVydCBhbGwgY29waWVzIG9mIGEgSTwvdXNyL2Jpbi9leGFtcGxlPiB0byBJPC91c3IvYmluL2V4YW1wbGUuZm9vPiwgaS4iCisiZS4gZGlyZWN0cyBhbGwgcGFja2FnZXMgcHJvdmlkaW5nIEk8L3Vzci9iaW4vZXhhbXBsZT4gdG8gaW5zdGFsbCBpdCBhcyBJPC8iCisidXNyL2Jpbi9leGFtcGxlLmZvbz4sIHBlcmZvcm1pbmcgdGhlIHJlbmFtZSBpZiByZXF1aXJlZDoiCittc2dzdHIgIiIKKyJVbSBhbGxlIEtvcGllbiB2b24gSTwvdXNyL2Jpbi9leGFtcGxlPiBhdWYgSTwvdXNyL2Jpbi9leGFtcGxlLmZvbz4gIgorInVtenVsZWl0ZW4sIGQuaC4gYWxsZSBQYWtldGUsIGRpZSBJPC91c3IvYmluL2V4YW1wbGU+IHp1ciBWZXJmw7xndW5nIHN0ZWxsZW4sICIKKyJkYXp1IGFuenVsZWl0ZW4sIGRpZXNlIERhdGVpIHN0YXR0ZGVzc2VuIGFscyBJPC91c3IvYmluL2V4YW1wbGUuZm9vPiB6dSAiCisiaW5zdGFsbGllcmVuIHVuZCBkaWUgVW1iZW5lbm51bmcsIGZhbGxzIG5vdHdlbmRpZywgZHVyY2h6dWbDvGhyZW46IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44Ojk3Cittc2dpZCAiZHBrZy1kaXZlcnQgLS1kaXZlcnQgL3Vzci9iaW4vZXhhbXBsZS5mb28gLS1yZW5hbWUgL3Vzci9iaW4vZXhhbXBsZSIKK21zZ3N0ciAiZHBrZy1kaXZlcnQgLS1kaXZlcnQgL3Vzci9iaW4vZXhhbXBsZS5mb28gLS1yZW5hbWUgL3Vzci9iaW4vZXhhbXBsZSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo5OSBkcGtnLWRpdmVydC44OjEwOQorbXNnaWQgIlRvIHJlbW92ZSB0aGF0IGRpdmVyc2lvbjoiCittc2dzdHIgIlVtIGRpZXNlIFVtbGVpdHVuZyB6dSBlbnRmZXJuZW46IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjEwMQorbXNnaWQgImRwa2ctZGl2ZXJ0IC0tcmVuYW1lIC0tcmVtb3ZlIC91c3IvYmluL2V4YW1wbGUiCittc2dzdHIgImRwa2ctZGl2ZXJ0IC0tcmVuYW1lIC0tcmVtb3ZlIC91c3IvYmluL2V4YW1wbGUiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6MTA1Cittc2dpZCAiIgorIlRvIGRpdmVydCBhbnkgcGFja2FnZSB0cnlpbmcgdG8gaW5zdGFsbCBJPC91c3IvYmluL2V4YW1wbGU+IHRvIEk8L3Vzci9iaW4vIgorImV4YW1wbGUuZm9vPiwgZXhjZXB0IHlvdXIgb3duIEk8d2liYmxlPiBwYWNrYWdlOiIKK21zZ3N0ciAiIgorIlVtIGbDvHIgamVkZXMgUGFrZXQgLSBhdcOfZXIgSWhyZW0gZWlnZW5lbiBJPHdpYmJsZT4tUGFrZXQgLSwgZGFzIHZlcnN1Y2h0LCBJPC8iCisidXNyL2Jpbi9leGFtcGxlPiB6dSBpbnN0YWxsaWVyZW4sIGRpZXNlcyBhdWYgSTwvdXNyL2Jpbi9leGFtcGxlLmZvbz4gIgorInVtenVsZWl0ZW46IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjEwNworbXNnaWQgIiIKKyJkcGtnLWRpdmVydCAtLXBhY2thZ2Ugd2liYmxlIC0tZGl2ZXJ0IC91c3IvYmluL2V4YW1wbGUuZm9vIC0tcmVuYW1lIC91c3IvYmluLyIKKyJleGFtcGxlIgorbXNnc3RyICIiCisiZHBrZy1kaXZlcnQgLS1wYWNrYWdlIHdpYmJsZSAtLWRpdmVydCAvdXNyL2Jpbi9leGFtcGxlLmZvbyAtLXJlbmFtZSAvdXNyL2Jpbi8iCisiZXhhbXBsZSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODoxMTEKK21zZ2lkICJkcGtnLWRpdmVydCAtLXBhY2thZ2Ugd2liYmxlIC0tcmVuYW1lIC0tcmVtb3ZlIC91c3IvYmluL2V4YW1wbGUiCittc2dzdHIgImRwa2ctZGl2ZXJ0IC0tcGFja2FnZSB3aWJibGUgLS1yZW5hbWUgLS1yZW1vdmUgL3Vzci9iaW4vZXhhbXBsZSIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGl2ZXJ0Ljg6MTEzIGRwa2ctcXVlcnkuMToyMDUgZHBrZy1zdGF0b3ZlcnJpZGUuODo2OSBkcGtnLXRyaWdnZXIuMTo2MQorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM1NQorIywgbm8td3JhcAorbXNnaWQgIkI8RFBLR19BRE1JTkRJUj4iCittc2dzdHIgIkI8RFBLR19BRE1JTkRJUj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6MTE3IGRwa2ctcXVlcnkuMToyMDkgZHBrZy1zdGF0b3ZlcnJpZGUuODo3MyBkcGtnLXRyaWdnZXIuMTo2NQorbXNnaWQgIiIKKyJJZiBzZXQgYW5kIHRoZSBCPC0tYWRtaW5kaXI+IG9wdGlvbiBoYXMgbm90IGJlZW4gc3BlY2lmaWVkLCBpdCB3aWxsIGJlIHVzZWQgIgorImFzIHRoZSBkcGtnIGRhdGEgZGlyZWN0b3J5LiIKK21zZ3N0ciAiIgorIkZhbGxzIGdlc2V0enQgdW5kIGRpZSBPcHRpb24gQjwtLWFkbWluZGlyPiBuaWNodCB2ZXJ3YW5kdCB3dXJkZSwgd2lyZCBkaWVzICIKKyJhbHMgRGF0ZW52ZXJ6ZWljaG5pcyB2b24gRHBrZyB2ZXJ3YW5kdC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6MTIxCittc2dpZCAiIgorIklmIHNldCBhbmQgdGhlIEI8LS1sb2NhbD4gYW5kIEI8LS1wYWNrYWdlPiBvcHRpb25zIGhhdmUgbm90IGJlZW4gc3BlY2lmaWVkLCAiCisiQjxkcGtnLWRpdmVydD4gd2lsbCB1c2UgaXQgYXMgdGhlIHBhY2thZ2UgbmFtZS4iCittc2dzdHIgIiIKKyJGYWxscyBnZXNldHp0IHVuZCBkaWUgT3B0aW9uZW4gQjwtLWxvY2FsPiB1bmQgQjwtLXBhY2thZ2U+IG5pY2h0IHZlcndhbmR0ICIKKyJ3dXJkZW4sIHdpcmQgQjxkcGtnLWRpdmVydD4gZGllcyBhbHMgUGFrZXRuYW1lbiB2ZXJ3ZW5kZW4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kaXZlcnQuODoxMjMKKyMsIG5vLXdyYXAKK21zZ2lkICJJPC92YXIvbGliL2Rwa2cvZGl2ZXJzaW9ucz4iCittc2dzdHIgIkk8L3Zhci9saWIvZHBrZy9kaXZlcnNpb25zPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODoxMjgKK21zZ2lkICIiCisiRmlsZSB3aGljaCBjb250YWlucyB0aGUgY3VycmVudCBsaXN0IG9mIGRpdmVyc2lvbnMgb2YgdGhlIHN5c3RlbS4gSXQgaXMgIgorImxvY2F0ZWQgaW4gdGhlIGRwa2cgYWRtaW5pc3RyYXRpb24gZGlyZWN0b3J5LCBhbG9uZyB3aXRoIG90aGVyIGZpbGVzICIKKyJpbXBvcnRhbnQgdG8gZHBrZywgc3VjaCBhcyBJPHN0YXR1cz4gb3IgSTxhdmFpbGFibGU+LiIKK21zZ3N0ciAiIgorIkRhdGVpLCBkaWUgZGllIGFrdHVlbGxlIExpc3RlIHZvbiBVbWxlaXR1bmdlbiBkZXMgU3lzdGVtcyBlbnRow6RsdC4gU2llICIKKyJiZWZpbmRldCBzaWNoIGltIERwa2ctQWRtaW5pc3RyYXRpb25zdmVyemVpY2huaXMsIHp1c2FtbWVuIG1pdCBhbmRlcmVuIGbDvHIgIgorIkRwa2cgd2ljaHRpZ2VuIERhdGVpZW4sIHdpZSBJPHN0YXR1cz4gb2RlciBJPGF2YWlsYWJsZT4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjEzMQorbXNnaWQgIiIKKyJOb3RlOiBCPGRwa2ctZGl2ZXJ0PiBwcmVzZXJ2ZXMgdGhlIG9sZCBjb3B5IG9mIHRoaXMgZmlsZSwgd2l0aCBleHRlbnNpb24gSTwtIgorIm9sZD4sIGJlZm9yZSByZXBsYWNpbmcgaXQgd2l0aCB0aGUgbmV3IG9uZS4iCittc2dzdHIgIiIKKyJIaW53ZWlzOiBCPGRwa2ctZGl2ZXJ0PiBlcmjDpGx0IGRpZSBhbHRlIEtvcGllIGRpZXNlciBEYXRlaSwgbWl0IGRlciBFbmR1bmcgIgorIkk8LW9sZD4sIGJldm9yIGVzIHNpZSBtaXQgZGVyIG5ldWVuIGVyc2V0enQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjEzNyB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDk2Cittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDE5OTUgSWFuIEphY2tzb24iCittc2dzdHIgIkNvcHlyaWdodCBcXChjbyAxOTk1IElhbiBKYWNrc29uIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6MQorIywgbm8td3JhcAorbXNnaWQgImRwa2ctZ2VuY2hhbmdlcyIKK21zZ3N0ciAiZHBrZy1nZW5jaGFuZ2VzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMTo0Cittc2dpZCAiZHBrZy1nZW5jaGFuZ2VzIC0gZ2VuZXJhdGUgRGViaWFuIC5jaGFuZ2VzIGZpbGVzIgorbXNnc3RyICJkcGtnLWRwa2ctZ2VuY2hhbmdlcyAtIGVyc3RlbGxlIERlYmlhbiAuY2hhbmdlcy1EYXRlaWVuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMTo4Cittc2dpZCAiQjxkcGtnLWdlbmNoYW5nZXM+IFtJPG9wdGlvbj4uLi5dIgorbXNnc3RyICJCPGRwa2ctZ2VuY2hhbmdlcz4gW0k8T3B0aW9uPi4uLl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjE2Cittc2dpZCAiIgorIkI8ZHBrZy1nZW5jaGFuZ2VzPiByZWFkcyBpbmZvcm1hdGlvbiBmcm9tIGFuIHVucGFja2VkIGFuZCBidWlsdCBEZWJpYW4gIgorInNvdXJjZSB0cmVlIGFuZCBmcm9tIHRoZSBmaWxlcyBpdCBoYXMgZ2VuZXJhdGVkIGFuZCBnZW5lcmF0ZXMgYSBEZWJpYW4gIgorInVwbG9hZCBjb250cm9sIGZpbGUgKEI8LmNoYW5nZXM+IGZpbGUpLiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1nZW5jaGFuZ2VzPiBsaWVzdCBJbmZvcm1hdGlvbmVuIGF1cyBlaW5lbSBlbnRwYWNrdGVuIHVuZCBnZWJhdXRlbiAiCisiRGViaWFuLVF1ZWxsY29kZWJhdW0gdW5kIGF1cyBkZW4gZGFyaW4gZXJ6ZXVndGVuIERhdGVpZW4gdW5kIGVyemV1Z3QgZWluZSAiCisiRGViaWFuLVN0ZXVlcmRhdGVpIGbDvHIgZGFzIEhvY2hsYWRlbiAoZGllIEI8LmNoYW5nZXM+LURhdGVpKS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbmNoYW5nZXMuMToxOAorIywgbm8td3JhcAorbXNnaWQgIkI8LWI+LCBCPC1CPiwgQjwtQT4iCittc2dzdHIgIkI8LWI+LCBCPC1CPiwgQjwtQT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjI3Cittc2dpZCAiIgorIlNwZWNpZmllcyB0aGF0IGEgYmluYXJ5LW9ubHkgYnVpbGQgaXMgdGFraW5nIHBsYWNlIChubyBzb3VyY2UgZmlsZXMgYXJlIHRvICIKKyJiZSBpbmNsdWRlZCkuIFRoZXJlJ3Mgbm8gZGlzdGluY3Rpb24gYmV0d2VlbiBCPC1iPiwgQjwtQj4gYW5kIEI8LUE+LCB0aGUgIgorInByb2R1Y2VkIEI8LmNoYW5nZXM+IGZpbGUgd2lsbCBpbmNsdWRlIHdoYXRldmVyIGZpbGVzIHdlcmUgY3JlYXRlZCBieSB0aGUgIgorIkI8YmluYXJ5LSo+IHRhcmdldChzKSBvZiB0aGUgcGFja2FnZSBiZWluZyBidWlsdC4iCittc2dzdHIgIiIKKyJHaWJ0IGFuLCBkYXMgZWluIHJlaW4tYmluw6RyZXIgQmF1IHN0YXR0ZmluZGV0IChrZWluZSBRdWVsbGRhdGVpZW4gc29sbGVuICIKKyJlaW5nZXNjaGxvc3NlbiB3ZXJkZW4pLiBFcyBnaWJ0IHp3aXNjaGVuIEI8LWI+LCBCPC1CPiB1bmQgQjwtQT4ga2VpbmVuICIKKyJVbnRlcnNjaGllZCwgZGllIGVyc3RlbGx0ZSBEYXRlaSBCPC5jaGFuZ2VzPiBiZWluaGFsdGV0IGFsbGUgRGF0ZWllbiwgZGllICIKKyJ2b24gZGVuIEI8YmluYXJ5LSo+LVppZWxlbiBkZXIgenUgYmF1ZW5kZW4gUGFrZXRlIGVyc3RlbGx0IHdlcmRlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjMxCittc2dpZCAiIgorIlNwZWNpZmllcyB0aGF0IG9ubHkgdGhlIHNvdXJjZSBzaG91bGQgYmUgdXBsb2FkZWQgKG5vIGJpbmFyeSBwYWNrYWdlcyB3aWxsICIKKyJiZSBpbmNsdWRlZCkuIgorbXNnc3RyICIiCisiR2lidCBhbiwgZGFzcyBudXIgZGllIFF1ZWxsZW4gaG9jaGdlbGFkZW4gd2VyZGVuIHNvbGxlbiAoa2VpbmUgQmluw6RycGFrZXRlICIKKyJ3ZXJkZW4gZW50aGFsdGVuIHNlaW4pLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6MzYKK21zZ2lkICIiCisiVGhlIEI8LXM+STx4PiBvcHRpb25zIGNvbnRyb2wgd2hldGhlciB0aGUgb3JpZ2luYWwgc291cmNlIGFyY2hpdmUgaXMgIgorImluY2x1ZGVkIGluIHRoZSB1cGxvYWQgaWYgYW55IHNvdXJjZSBpcyBiZWluZyBnZW5lcmF0ZWQgKGkuZS4gIEI8LWI+IG9yIEI8LSIKKyJCPiBoYXZlbid0IGJlZW4gdXNlZCkuIgorbXNnc3RyICIiCisiRGllIEI8LXM+STx4PiBPcHRpb25lbiBzdGV1ZXJuLCBvYiBkYXMgT3JpZ2luYWwtUXVlbGxhcmNoaXYgZGVtIFVwbG9hZCAiCisiaGluenVnZWbDvGd0IHdpcmQsIGZhbGxzIGRpZSBRdWVsbGVuIGVyemV1Z3Qgd2VyZGVuIChkLmguIEI8LWI+IG9kZXIgQjwtQj4gIgorIm5pY2h0IHZlcndlbmRldCB3dXJkZW4pLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6NDIKK21zZ2lkICIiCisiQnkgZGVmYXVsdCwgb3IgaWYgc3BlY2lmaWVkLCB0aGUgb3JpZ2luYWwgc291cmNlIHdpbGwgYmUgaW5jbHVkZWQgb25seSBpZiAiCisidGhlIHVwc3RyZWFtIHZlcnNpb24gbnVtYmVyICh0aGUgdmVyc2lvbiB3aXRob3V0IGVwb2NoIGFuZCB3aXRob3V0IERlYmlhbiAiCisicmV2aXNpb24pIGRpZmZlcnMgZnJvbSB0aGUgdXBzdHJlYW0gdmVyc2lvbiBudW1iZXIgb2YgdGhlIHByZXZpb3VzIGNoYW5nZWxvZyAiCisiZW50cnkuIgorbXNnc3RyICIiCisiU3RhbmRhcmRtw6TDn2lnLCBvZGVyIGZhbGxzIGFuZ2VnZWJlbiwgd2VyZGVuIGRpZSBPcmlnaW5hbHF1ZWxsZW4gbnVyICIKKyJoaW56dWdlZsO8Z3QsIGZhbGxzIHNpY2ggZGllIFZlcnNpb25zbnVtbWVyIGRlciBPcmlnaW5hbGF1dG9yZW4gKGRpZSBWZXJzaW9uICIKKyJvaG5lIEVwb2NoZSB1bmQgb2huZSBkaWUgRGViaWFuLVJldmlzaW9uKSB2b24gZGVyIFZlcnNpb25zbnVtbWVyIGRlciAiCisiT3JpZ2luYWxhdXRvcmVuIGluIGRlbSBsZXR6dGVuIENoYW5nbG9nLUVpbnRyYWcgdW50ZXJzY2hlaWRldC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjQ1Cittc2dpZCAiRm9yY2VzIHRoZSBpbmNsdXNpb24gb2YgdGhlIG9yaWdpbmFsIHNvdXJjZS4iCittc2dzdHIgIkVyendpbmd0IGRpZSBIaW56dW5haG1lIGRlciBPcmlnaW5hbHF1ZWxsZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMTo0OAorbXNnaWQgIkZvcmNlcyB0aGUgZXhjbHVzaW9uIG9mIHRoZSBvcmlnaW5hbCBzb3VyY2UgYW5kIGluY2x1ZGVzIG9ubHkgdGhlIGRpZmYuIgorbXNnc3RyICIiCisiRXJ6d2luZ3QgZGVuIEF1c3NjaGx1c3MgZGVyIE9yaWdpbmFscXVlbGxlbiB1bmQgZsO8Z3QgbnVyIGRlbiBEaWZmIGhpbnp1LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6NTQKK21zZ2lkICIiCisiQ2F1c2VzIGNoYW5nZWxvZyBpbmZvcm1hdGlvbiBmcm9tIGFsbCB2ZXJzaW9ucyBzdHJpY3RseSBsYXRlciB0aGFuICIKKyJJPHZlcnNpb24+IHRvIGJlIHVzZWQuIgorbXNnc3RyICIiCisiRGllcyBmw7xocnQgZGF6dSwgZGFzcyDCu2NoYW5nZWxvZ8KrLUluZm9ybWF0aW9uZW4gdm9uIGFsbGVuIFZlcnNpb25lbiwgZGllICIKKyJzdHJpa3QgbmV1ZXIgYWxzIEk8VmVyc2lvbj4gc2luZCwgdmVyd2VuZGV0IHdlcmRlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjYwCittc2dpZCAiIgorIlJlYWQgdGhlIGRlc2NyaXB0aW9uIG9mIHRoZSBjaGFuZ2VzIGZyb20gdGhlIGZpbGUgSTxjaGFuZ2VzZGVzY3JpcHRpb24+ICIKKyJyYXRoZXIgdGhhbiB1c2luZyB0aGUgaW5mb3JtYXRpb24gZnJvbSB0aGUgc291cmNlIHRyZWUncyBjaGFuZ2Vsb2cgZmlsZS4iCittc2dzdHIgIiIKKyJMZXNlIGRpZSBCZXNjaHJlaWJ1bmcgZGVyIMOEbmRlcnVuZ2VuIGF1cyBkZXIgRGF0ZWkgSTzDhG5kZXJ1bmdzYmVzY2hyZWlidW5nPiAiCisiYW5zdGF0dCBkaWUgSW5mb3JtYXRpb25lbiBhdXMgZGVtIGNoYW5nZWxvZy1EYXRlaSBkZXMgUXVlbGxiYXVtcyB6dSAiCisidmVyd2VuZGVuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6NjYKK21zZ2lkICIiCisiVXNlIEk8bWFpbnRhaW5lcmFkZHJlc3M+IGFzIHRoZSBuYW1lIGFuZCBlbWFpbCBhZGRyZXNzIG9mIHRoZSBtYWludGFpbmVyIGZvciAiCisidGhpcyBwYWNrYWdlLCByYXRoZXIgdGhhbiB1c2luZyB0aGUgaW5mb3JtYXRpb24gZnJvbSB0aGUgc291cmNlIHRyZWUncyAiCisiY29udHJvbCBmaWxlLiIKK21zZ3N0ciAiIgorIlZlcndlbmRlIEk8QmV0cmV1ZXJhZHJlc3NlPiBhbHMgTmFtZW4gdW5kIEUtTWFpbC1BZHJlc3NlIGRlcyBCZXRyZXVlcnMgIgorImRpZXNlcyBQYWtldGVzLCBhbnN0YXR0IGRpZSBJbmZvcm1hdGlvbmVuIGF1cyBkZXIgwrtjb250cm9swqstRGF0ZWkgZGVzICIKKyJRdWVsbGJhdW1zIHp1IHZlcndlbmRlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjcyCittc2dpZCAiIgorIlVzZSBJPG1haW50YWluZXJhZGRyZXNzPiBhcyB0aGUgbmFtZSBhbmQgZW1haWwgYWRkcmVzcyBvZiB0aGUgbWFpbnRhaW5lciBmb3IgIgorInRoaXMgdXBsb2FkLCByYXRoZXIgdGhhbiB1c2luZyB0aGUgaW5mb3JtYXRpb24gZnJvbSB0aGUgc291cmNlIHRyZWUncyAiCisiY2hhbmdlbG9nLiIKK21zZ3N0ciAiIgorIlZlcndlbmRlIEk8QmV0cmV1ZXJhZHJlc3NlPiBhbHMgTmFtZW4gdW5kIEUtTWFpbC1BZHJlc3NlIGRlcyBCZXRyZXVlcnMgZsO8ciAiCisiZGllc2VuIFVwbG9hZCwgYW5zdGF0dCBkaWUgSW5mb3JtYXRpb25lbiBhdXMgZGVtIMK7Y2hhbmdlbG9nwqsgZGVzIFF1ZWxsYmF1bXMgIgorInp1IHZlcndlbmRlbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbmNoYW5nZXMuMTo3MiBkcGtnLWdlbmNvbnRyb2wuMTo0MSBkcGtnLXNvdXJjZS4xOjEyNworIywgbm8td3JhcAorbXNnaWQgIkI8LVY+STxuYW1lPkI8PT5JPHZhbHVlPiIKK21zZ3N0ciAiQjwtVj5JPE5hbWU+Qjw9Pkk8V2VydD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjc2IGRwa2ctc291cmNlLjE6MTMxCittc2dpZCAiIgorIlNldCBhbiBvdXRwdXQgc3Vic3RpdHV0aW9uIHZhcmlhYmxlLiAgU2VlIEI8ZGViLXN1YnN0dmFycz4oNSkgZm9yIGEgIgorImRpc2N1c3Npb24gb2Ygb3V0cHV0IHN1YnN0aXR1dGlvbi4iCittc2dzdHIgIiIKKyJTZXR6dCBlaW5lIEF1c2dhYmVzdWJzdGl0dXRpb25zdmFyaWFibGUuIExlc2VuIFNpZSBCPGRlYi1zdWJzdHZhcnM+KDUpIGbDvHIgIgorImVpbmUgQmVzcHJlY2h1bmcgZGVzIEF1c2dhYmVzdWJzdGl0dXRpb24uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6NzYgZHBrZy1nZW5jb250cm9sLjE6NDUgZHBrZy1zaGxpYmRlcHMuMToxNjkKKyM6IGRwa2ctc291cmNlLjE6MTMxCisjLCBuby13cmFwCittc2dpZCAiQjwtVD5JPHN1YnN0dmFyc2ZpbGU+IgorbXNnc3RyICJCPC1UPkk8c3Vic3R2YXJkYXRlaT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjg2Cittc2dpZCAiIgorIlJlYWQgc3Vic3RpdHV0aW9uIHZhcmlhYmxlcyBpbiBJPHN1YnN0dmFyc2ZpbGU+OyB0aGUgZGVmYXVsdCBpcyBCPGRlYmlhbi8iCisic3Vic3R2YXJzPi4gIE5vIHZhcmlhYmxlIHN1YnN0aXR1dGlvbiBpcyBkb25lIG9uIGFueSBvZiB0aGUgZmllbGRzIHRoYXQgYXJlICIKKyJvdXRwdXQsIGhvd2V2ZXIgdGhlIHNwZWNpYWwgdmFyaWFibGUgSTxGb3JtYXQ+IHdpbGwgb3ZlcnJpZGUgdGhlIGZpZWxkIG9mICIKKyJ0aGUgc2FtZSBuYW1lLiBUaGlzIG9wdGlvbiBjYW4gYmUgdXNlZCBtdWx0aXBsZSB0aW1lcyB0byByZWFkIHN1YnN0aXR1dGlvbiAiCisidmFyaWFibGVzIGZyb20gbXVsdGlwbGUgZmlsZXMuIgorbXNnc3RyICIiCisiTGVzZSBkaWUgU3Vic3RpdHV0aW9uc3ZhcmlhYmxlbiBhdXMgSTxzdWJzdHZhcmRhdGVpPjsgc3RhbmRhcmRtw6TDn2lnIEI8ZGViaWFuLyIKKyJzdWJzdHZhcnM+LiBCZWkgZGVuIGF1c2dlZ2ViZW4gRmVsZGVybiBlcmZvbGd0IGtlaW5lIFZhcmlhYmxlbnN1YnN0aXR1dGlvbiwgIgorImRpZSBiZXNvbmRlcmUgVmFyaWFibGUgSTxGb3JtYXQ+IHdpcmQgYWxsZXJkaW5ncyBkYXMgRmVsZCBtaXQgZGVtIGdsZWljaGVuICIKKyJOYW1lbiDDvGJlcnNjaHJlaWJlbi4gRGllc2UgT3B0aW9uIGthbm4gbWVocmZhY2ggdmVyd2FuZHQgd2VyZGVuLCB1bSAiCisiU3Vic3RpdHV0aW9uc3ZhcmlhYmxlbiBhdXMgbWVocmVyZW4gRGF0ZWllbiBlaW56dWxlc2VuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjg3IGRwa2ctZ2VuY29udHJvbC4xOjUzIGRwa2ctc291cmNlLjE6MTM3CisjLCBuby13cmFwCittc2dpZCAiQjwtRD5JPGZpZWxkPkI8PT5JPHZhbHVlPiIKK21zZ3N0ciAiQjwtRD5JPEZlbGQ+Qjw9Pkk8V2VydD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjkwIGRwa2ctZ2VuY29udHJvbC4xOjU2IGRwa2ctc291cmNlLjE6MTQwCittc2dpZCAiT3ZlcnJpZGUgb3IgYWRkIGFuIG91dHB1dCBjb250cm9sIGZpbGUgZmllbGQuIgorbXNnc3RyICLDnGJlcnNjaHJlaWJlIG9kZXIgZXJnw6RuemUgZWluIEF1c2dhYmUtU3RldWVyZGF0ZWktRmVsZC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbmNoYW5nZXMuMTo5MCBkcGtnLWdlbmNvbnRyb2wuMTo1NiBkcGtnLXNvdXJjZS4xOjE0MAorIywgbm8td3JhcAorbXNnaWQgIkI8LVU+STxmaWVsZD4iCittc2dzdHIgIkI8LVU+STxmaWVsZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjkzIGRwa2ctZ2VuY29udHJvbC4xOjU5IGRwa2ctc291cmNlLjE6MTQzCittc2dpZCAiUmVtb3ZlIGFuIG91dHB1dCBjb250cm9sIGZpbGUgZmllbGQuIgorbXNnc3RyICJFbnRmZXJuZSBlaW4gQXVzZ2FiZS1TdGV1ZXJkYXRlaS1GZWxkLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjkzIGRwa2ctZ2VuY29udHJvbC4xOjU5IGRwa2ctc291cmNlLjE6MTA0CisjLCBuby13cmFwCittc2dpZCAiQjwtYz5JPGNvbnRyb2xmaWxlPiIKK21zZ3N0ciAiQjwtYz5JPFN0ZXVlcmRhdGVpPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6OTggZHBrZy1nZW5jb250cm9sLjE6NjQKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRoZSBtYWluIHNvdXJjZSBjb250cm9sIGZpbGUgdG8gcmVhZCBpbmZvcm1hdGlvbiBmcm9tLiBUaGUgZGVmYXVsdCAiCisiaXMgQjxkZWJpYW4vY29udHJvbD4uIgorbXNnc3RyICIiCisiR2lidCBkaWUgSGF1cHQtU3RldWVyZGF0ZWkgYW4sIGF1cyBkZXIgSW5mb3JtYXRpb25lbiBnZWxlc2VuIHdlcmRlbiBzb2xsZW4uICIKKyJTdGFuZGFyZG3DpMOfaWcgQjxkZWJpYW4vY29udHJvbD4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6OTggZHBrZy1nZW5jb250cm9sLjE6NjQgZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjE2CisjOiBkcGtnLXNvdXJjZS4xOjExMQorIywgbm8td3JhcAorbXNnaWQgIkI8LWw+STxjaGFuZ2Vsb2dmaWxlPiIKK21zZ3N0ciAiQjwtbD5JPENoYW5nZWxvZy1EYXRlaT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjEwMyBkcGtnLWdlbmNvbnRyb2wuMTo2OSBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MjEKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRoZSBjaGFuZ2UgbG9nIGZpbGUgdG8gcmVhZCBpbmZvcm1hdGlvbiBmcm9tLiBUaGUgZGVmYXVsdCBpcyAiCisiQjxkZWJpYW4vY2hhbmdlbG9nPi4iCittc2dzdHIgIiIKKyJHaWJ0IGRpZSDDhG5kZXJ1bmdzcHJvdG9rb2xsZGF0ZWkgYW4sIGF1cyBkZXIgSW5mb3JtYXRpb25lbiBnZWxlc2VuIHdlcmRlbiAiCisic29sbGVuLiBTdGFuZGFyZG3DpMOfaWcgQjxkZWJpYW4vY2hhbmdlbG9nPi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjEwNworbXNnaWQgIiIKKyJSZWFkIHRoZSBsaXN0IG9mIGZpbGVzIHRvIGJlIHVwbG9hZGVkIGhlcmUsIHJhdGhlciB0aGFuIHVzaW5nIEI8ZGViaWFuLyIKKyJmaWxlcz4uIgorbXNnc3RyICIiCisiTGVzZSBkaWUgTGlzdGUgZGVyIGhvY2h6dWxhZGVuZW4gRGF0ZWllbiB2b24gaGllciwgc3RhdHQgQjxkZWJpYW4vZmlsZXM+IHp1ICIKKyJ2ZXJ3ZW5kZW4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6MTA3IGRwa2ctZ2VuY29udHJvbC4xOjczIGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToyMQorIzogZHBrZy1zb3VyY2UuMToxMTgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1GPkk8Y2hhbmdlbG9nZm9ybWF0PiIKK21zZ3N0ciAiQjwtRj5JPENoYW5nZWxvZy1Gb3JtYXQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMToxMTIgZHBrZy1nZW5jb250cm9sLjE6NzggZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjI2CisjOiBkcGtnLXNvdXJjZS4xOjEyMworbXNnaWQgIiIKKyJTcGVjaWZpZXMgdGhlIGZvcm1hdCBvZiB0aGUgY2hhbmdlbG9nLiBCeSBkZWZhdWx0IHRoZSBmb3JtYXQgaXMgcmVhZCBmcm9tIGEgIgorInNwZWNpYWwgbGluZSBuZWFyIHRoZSBib3R0b20gb2YgdGhlIGNoYW5nZWxvZyBvciBmYWlsaW5nIHRoYXQgZGVmYXVsdHMgdG8gIgorInRoZSBkZWJpYW4gc3RhbmRhcmQgZm9ybWF0LiIKK21zZ3N0ciAiIgorIkdpYnQgZGFzIEZvcm1hdCBkZXIgw4RuZGVydW5nc3Byb3Rva29sbGRhdGVpIGFuLiBTdGFuZGFyZG3DpMOfaWcgd2lyZCBkYXMgIgorIkZvcm1hdCBhdXMgZWluZXIgc3BlemllbGxlbiBaZWlsZSBpbiBkZXIgTsOkaGUgZGVzIEVuZGVzIGRlciAiCisiw4RuZGVydW5nc3Byb3Rva29sbGRhdGVpIGdlbGVzZW4gb2RlciwgZmFsbHMgZGllcyBmZWhsc2NobMOkZ3QsIHdpcmQgZGFzICIKKyJEZWJpYW4tU3RhbmRhcmRmb3JtYXQgYW5nZW5vbW1lbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbmNoYW5nZXMuMToxMTIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC11Pkk8dXBsb2FkZmlsZXNkaXI+IgorbXNnc3RyICJCPC11Pkk8SG9jaGxhZGVkYXRlaXZlcnplaWNobmlzPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6MTIzCittc2dpZCAiIgorIkxvb2sgZm9yIHRoZSBmaWxlcyB0byBiZSB1cGxvYWRlZCBpbiBJPHVwbG9hZGZpbGVzZGlyPiByYXRoZXIgdGhhbiBCPC4uPiAiCisiKEI8ZHBrZy1nZW5jaGFuZ2VzPiBuZWVkcyB0byBmaW5kIHRoZXNlIGZpbGVzIHNvIHRoYXQgaXQgY2FuIGluY2x1ZGUgdGhlaXIgIgorInNpemVzIGFuZCBjaGVja3N1bXMgaW4gdGhlIEI8LmNoYW5nZXM+IGZpbGUpLiIKK21zZ3N0ciAiIgorIlN1Y2hlIG5hY2ggRGF0ZWllbiwgZGllIGhvY2hnZWxhZGVuIHdlcmRlbiBzb2xsZW4sIGluICIKKyJJPEhvY2hsYWRlZGF0ZWl2ZXJ6ZWljaG5pcz4gc3RhdHQgaW4gQjwuLj4gKEI8ZHBrZy1nZW5jaGFuZ2VzPiBtdXNzIGRpZXNlICIKKyJEYXRlaWVuIGZpbmRlbiwgc28gZGFzcyBlcyBpaHJlIEdyw7bDn2VuIHVuZCBQcsO8ZnN1bW1lbiBpbiBkaWUgQjwuY2hhbmdlcz4tIgorIkRhdGVpIGF1Zm5laG1lbiBrYW5uLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjEyMyBkcGtnLWdlbnN5bWJvbHMuMTo0MjEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1xPiIKK21zZ3N0ciAiQjwtcT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjEzMQorbXNnaWQgIiIKKyJVc3VhbGx5IEI8ZHBrZy1nZW5jaGFuZ2VzPiB3aWxsIHByb2R1Y2UgaW5mb3JtYXRpdmUgbWVzc2FnZXMgb24gc3RhbmRhcmQgIgorImVycm9yLCBmb3IgZXhhbXBsZSBhYm91dCBob3cgbWFueSBvZiB0aGUgcGFja2FnZSdzIHNvdXJjZSBmaWxlcyBhcmUgYmVpbmcgIgorInVwbG9hZGVkLiAgQjwtcT4gc3VwcHJlc3NlcyB0aGVzZSBtZXNzYWdlcy4iCittc2dzdHIgIiIKKyJOb3JtYWxlcndlaXNlIHNjaHJlaWJ0IEI8ZHBrZy1nZW5jaGFuZ2VzPiBpbmZvcm1hdGl2ZSBNZWxkdW5nZW4gYXVmIGRpZSAiCisiU3RhbmRhcmQtRmVobGVyYXVzZ2FiZSwgYmVpc3BpZWxzd2Vpc2Ugd2llIHZpZWxlIFF1ZWxsZGF0ZWllbiBkZXMgUGFrZXRzICIKKyJob2NoZ2VsYWRlbiB3ZXJkZW4uIEI8LXE+IHVudGVyZHLDvGNrdCBkaWVzZSBNZWxkdW5nZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMToxNDcKK21zZ2lkICIiCisiVGhlIGxpc3Qgb2YgZ2VuZXJhdGVkIGZpbGVzIHdoaWNoIGFyZSBwYXJ0IG9mIHRoZSB1cGxvYWQgYmVpbmcgcHJlcGFyZWQuICAiCisiQjxkcGtnLWdlbmNoYW5nZXM+IHJlYWRzIHRoZSBkYXRhIGhlcmUgd2hlbiBwcm9kdWNpbmcgYSBCPC5jaGFuZ2VzPiBmaWxlLiIKK21zZ3N0ciAiIgorIkRpZSBMaXN0ZSBkZXIgZXJzdGVsbHRlbiBEYXRlaWVuLCBkaWUgVGVpbCBkZXIgenVtIEhvY2hsYWRlbiB2b3JiZXJlaXRldGVuICIKKyJEYXRlaWVuIHNpbmQuIEI8ZHBrZy1nZW5jaGFuZ2VzPiBsaWVzdCBoaWVyIGRpZSBEYXRlbiwgd2VubiBlcyBkaWUgRGF0ZWkgQjwuIgorImNoYW5nZXM+IGVyc3RlbGx0LiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLWdlbmNvbnRyb2wiCittc2dzdHIgImRwa2ctZ2VuY29udHJvbCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jb250cm9sLjE6NAorbXNnaWQgImRwa2ctZ2VuY29udHJvbCAtIGdlbmVyYXRlIERlYmlhbiBjb250cm9sIGZpbGVzIgorbXNnc3RyICJkcGtnLWdlbmNvbnRyb2wgLSBlcnN0ZWxsZSBEZWJpYW4gY29udHJvbC1EYXRlaWVuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMTo4Cittc2dpZCAiQjxkcGtnLWdlbmNvbnRyb2w+IFtJPG9wdGlvbj4uLi5dIgorbXNnc3RyICJCPGRwa2ctZ2VuY29udHJvbD4gW0k8T3B0aW9uPi4uLl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjE0Cittc2dpZCAiIgorIkI8ZHBrZy1nZW5jb250cm9sPiByZWFkcyBpbmZvcm1hdGlvbiBmcm9tIGFuIHVucGFja2VkIERlYmlhbiBzb3VyY2UgdHJlZSBhbmQgIgorImdlbmVyYXRlcyBhIGJpbmFyeSBwYWNrYWdlIGNvbnRyb2wgZmlsZSAod2hpY2ggZGVmYXVsdHMgdG8gZGViaWFuL3RtcC9ERUJJQU4vIgorImNvbnRyb2wpOyBkdXJpbmcgdGhpcyBwcm9jZXNzIGl0IHdpbGwgc2ltcGxpZnkgdGhlIHJlbGF0aW9uIGZpZWxkcy4iCittc2dzdHIgIiIKKyJCPGRwa2ctZ2VuY29udHJvbD4gbGllc3QgSW5mb3JtYXRpb25lbiBhdXMgZWluZW0gZW50cGFja3RlbiBEZWJpYW4tIgorIlF1ZWxsY29kZWJhdW0gdW5kIGVyemV1Z3QgZWluZSBiaW7DpHJlIFBha2V0c3RldWVyZGF0ZWkgKHN0YW5kYXJkbcOkw59pZyBkZWJpYW4vIgorInRtcC9ERUJJQU4vY29udHJvbCk7IGRhYmVpIHZlcmVpbmZhY2h0IGVzIGRpZSBGZWxkZXIgbWl0IFBha2V0YmV6aWVodW5nZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMToyNworbXNnaWQgIiIKKyJUaHVzIEk8UHJlLURlcGVuZHM+LCBJPERlcGVuZHM+LCBJPFJlY29tbWVuZHM+IGFuZCBJPFN1Z2dlc3RzPiBhcmUgIgorInNpbXBsaWZpZWQgaW4gdGhpcyBvcmRlciBieSByZW1vdmluZyBkZXBlbmRlbmNpZXMgd2hpY2ggYXJlIGtub3duIHRvIGJlIHRydWUgIgorImFjY29yZGluZyB0byB0aGUgc3Ryb25nZXIgZGVwZW5kZW5jaWVzIGFscmVhZHkgcGFyc2VkLiBJdCB3aWxsIGFsc28gcmVtb3ZlICIKKyJhbnkgc2VsZi1kZXBlbmRlbmN5IChpbiBmYWN0IGl0IHdpbGwgcmVtb3ZlIGFueSBkZXBlbmRlbmN5IHdoaWNoIGV2YWx1YXRlcyAiCisidG8gdHJ1ZSBnaXZlbiB0aGUgY3VycmVudCB2ZXJzaW9uIG9mIHRoZSBwYWNrYWdlIGFzIGluc3RhbGxlZCkuIExvZ2ljYWxseSBpdCAiCisia2VlcHMgdGhlIGludGVyc2VjdGlvbiBvZiBtdWx0aXBsZSBkZXBlbmRlbmNpZXMgb24gdGhlIHNhbWUgcGFja2FnZS4gVGhlICIKKyJvcmRlciBvZiBkZXBlbmRlbmNpZXMgaXMgcHJlc2VydmVkIGFzIGJlc3QgYXMgcG9zc2libGU6IGlmIGFueSBkZXBlbmRlbmN5ICIKKyJtdXN0IGJlIGRpc2NhcmRlZCBkdWUgdG8gYW5vdGhlciBkZXBlbmRlbmN5IGFwcGVhcmluZyBmdXJ0aGVyIGluIHRoZSBmaWVsZCwgIgorInRoZSBzdXBlcnNlZGluZyBkZXBlbmRlbmN5IHdpbGwgdGFrZSB0aGUgcGxhY2Ugb2YgdGhlIGRpc2NhcmRlZCBvbmUuIgorbXNnc3RyICIiCisiRGFoZXIgd2VyZGVuIEk8UHJlLURlcGVuZHM+LCBJPERlcGVuZHM+LCBJPFJlY29tbWVuZHM+IHVuZCBJPFN1Z2dlc3RzPiBpbiAiCisiZGllc2VyIFJlaWhlbmZvbGdlIHZlcmVpbmZhY2h0LCBpbmRlbSBBYmjDpG5naWdrZWl0ZW4sIGRpZSBhdWZncnVuZCBkZXIgIgorImpld2VpbHMgZXJtaXR0ZWx0ZW4gc3TDpHJrZXJlbiBBYmjDpG5naWdrZWl0IGJlcmVpdHMgZXJmw7xsbHQgc2luZCwgZW50ZmVybnQgIgorIndlcmRlbi4gRXMgd2lyZCBhdWNoIGFsbGUgU2VsYnN0YWJow6RuZ2lna2VpdGVuIGVudGZlcm5lbiAodGF0c8OkY2hsaWNoIHdlcmRlbiAiCisiYWxsZSBBYmjDpG5naWdrZWl0ZW4gZW50ZmVybnQsIGRpZSBhdWZncnVuZCBkZXIgaW5zdGFsbGllcnRlbiBWZXJzaW9uIGRlcyAiCisiYWt0dWVsbGVuIFBha2V0cyBhdXRvbWF0aXNjaCBlcmbDvGxsdCB3ZXJkZW4pLiBMb2dpc2NoIGJldHJhY2h0ZXQgYmVow6RsdCBlcyAiCisiZGVuIER1cmNoc2Nobml0dCB2b24gbWVocmZhY2hlbiBBYmjDpG5naWdrZWl0ZW4gYXVmIGRhcyBnbGVpY2hlIFBha2V0LiBEaWUgIgorIlJlaWhlbmZvbGdlIGRlciBBYmjDpG5naWdrZWl0ZW4gd2lyZCBzbyBndXQgd2llIG3DtmdsaWNoIGJlaWJlaGFsdGVuOiBmYWxscyAiCisiZWluZSBBYmjDpG5naWdrZWl0IGF1ZmdydW5kIGVpbmVyIHdlaXRlciBoaW50ZW4gaW0gRmVsZCBhdWZ0YXVjaGVuZGVuICIKKyJ3ZWl0ZXJlbiBBYmjDpG5naWdrZWl0IGdlc3RyaWNoZW4gd2VyZGVuIG11c3MsIHNvIMO8YmVybmltbXQgZGllIGxldHp0ZXJlICIKKyJBYmjDpG5naWdrZWl0IGRlbiBQbGF0eiBkZXIgZ2VzdHJpY2hlbmVuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jb250cm9sLjE6MzIKK21zZ2lkICIiCisiVGhlIG90aGVyIHJlbGF0aW9uIGZpZWxkcyAoSTxFbmhhbmNlcz4sIEk8Q29uZmxpY3RzPiwgSTxCcmVha3M+LCBJPFJlcGxhY2VzPiAiCisiYW5kIEk8UHJvdmlkZXM+KSAgYXJlIGFsc28gc2ltcGxpZmllZCBpbmRpdmlkdWFsbHkgYnkgY29tcHV0aW5nIHRoZSB1bmlvbiBvZiAiCisidGhlIHZhcmlvdXMgZGVwZW5kZW5jaWVzIHdoZW4gYSBwYWNrYWdlIGlzIGxpc3RlZCBtdWx0aXBsZSB0aW1lcyBpbiB0aGUgIgorImZpZWxkLiIKK21zZ3N0ciAiIgorIkRpZSBhbmRlcmVuIFBha2V0YmV6aWVodW5nc2ZlbGRlciAoSTxFbmhhbmNlcz4sIEk8Q29uZmxpY3RzPiwgSTxCcmVha3M+LCAiCisiSTxSZXBsYWNlcz4gdW5kIEk8UHJvdmlkZXM+KSB3ZXJkZW4gYXVjaCBpbmRpdmlkdWVsbCB2ZXJlaW5mYWNodCwgaW5kZW0gZGllICIKKyJWZXJlaW5pZ3VuZyBkZXIgdmVyc2NoaWVkZW5lbiBBYmjDpG5naWdrZWl0ZW4gYmVyZWNobmV0IHdpcmQsIHdlbm4gZWluIFBha2V0ICIKKyJtZWhyZmFjaCBpbiBkZW0gRmVsZCBhdWZnZWbDvGhydCBpc3QuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMTozNgorbXNnaWQgIiIKKyJCPGRwa2ctZ2VuY29udHJvbD4gYWxzbyBhZGRzIGFuIGVudHJ5IGZvciB0aGUgYmluYXJ5IHBhY2thZ2UgdG8gQjxkZWJpYW4vIgorImZpbGVzPi4iCittc2dzdHIgIiIKKyJCPGRwa2ctZ2VuY29udHJvbD4gZsO8Z3QgYXVjaCBlaW5lbiBFaW50cmFnIGbDvHIgZGFzIEJpbsOkcnBha2V0IGluIEI8ZGViaWFuLyIKKyJmaWxlcz4gaGluenUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMTo0MQorbXNnaWQgIlNldHMgdGhlIHZlcnNpb24gbnVtYmVyIG9mIHRoZSBiaW5hcnkgcGFja2FnZSB3aGljaCB3aWxsIGJlIGdlbmVyYXRlZC4iCittc2dzdHIgIlNldHp0IGRpZSBWZXJzaW9uc251bW1lciBkZXMgenUgZXJzdGVsbGVuZGVuIEJpbsOkcnBha2V0ZXMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMTo0NQorbXNnaWQgIiIKKyJTZXQgYW4gb3V0cHV0IHN1YnN0aXR1dGlvbiB2YXJpYWJsZS4gU2VlIEI8ZGViLXN1YnN0dmFycz4oNSkgZm9yIGRpc2N1c3Npb24gIgorIm9mIG91dHB1dCBzdWJzdGl0dXRpb24uIgorbXNnc3RyICIiCisiU2V0enQgZWluZSBBdXNnYWJlc3Vic3RpdHV0aW9uc3ZhcmlhYmxlLiBMZXNlbiBTaWUgQjxkZWItc3Vic3R2YXJzPig1KSBmw7xyICIKKyJlaW5lIEJlc3ByZWNodW5nIGRlciBBdXNnYWJlc3Vic3RpdHV0aW9uLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jb250cm9sLjE6NTMKK21zZ2lkICIiCisiUmVhZCBzdWJzdGl0dXRpb24gdmFyaWFibGVzIGluIEk8c3Vic3R2YXJzZmlsZT47IHRoZSBkZWZhdWx0IGlzIEI8ZGViaWFuLyIKKyJzdWJzdHZhcnM+LiAgVGhpcyBvcHRpb24gY2FuIGJlIHVzZWQgbXVsdGlwbGUgdGltZXMgdG8gcmVhZCBzdWJzdGl0dXRpb24gIgorInZhcmlhYmxlcyBmcm9tIG11bHRpcGxlIGZpbGVzLiIKK21zZ3N0ciAiIgorIkxlc2UgZGllIFN1YnN0aXR1dGlvbnN2YXJpYWJsZW4gYXVzIEk8c3Vic3R2YXJkYXRlaT47IHN0YW5kYXJkbcOkw59pZyBCPGRlYmlhbi8iCisic3Vic3R2YXJzPi4gRGllc2UgT3B0aW9uIGthbm4gbWVocmZhY2ggdmVyd2FuZHQgd2VyZGVuLCB1bSAiCisiU3Vic3RpdHV0aW9uc3ZhcmlhYmxlbiBhdXMgbWVocmVyZW4gRGF0ZWllbiBlaW56dWxlc2VuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjc4IGRwa2ctZ2Vuc3ltYm9scy4xOjM3MworIywgbm8td3JhcAorbXNnaWQgIkI8LXA+STxwYWNrYWdlPiIKK21zZ3N0ciAiQjwtcD5JPFBha2V0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jb250cm9sLjE6ODUKK21zZ2lkICIiCisiR2VuZXJhdGUgaW5mb3JtYXRpb24gZm9yIHRoZSBiaW5hcnkgcGFja2FnZSBJPHBhY2thZ2U+LiAgSWYgdGhlIHNvdXJjZSAiCisiY29udHJvbCBmaWxlIGxpc3RzIG9ubHkgb25lIGJpbmFyeSBwYWNrYWdlIHRoZW4gdGhpcyBvcHRpb24gbWF5IGJlIG9taXR0ZWQ7ICIKKyJvdGhlcndpc2UgaXQgaXMgZXNzZW50aWFsIHRvIHNlbGVjdCB3aGljaCBiaW5hcnkgcGFja2FnZSdzIGluZm9ybWF0aW9uIHRvICIKKyJnZW5lcmF0ZS4iCittc2dzdHIgIiIKKyJFcnN0ZWxsdCBJbmZvcm1hdGlvbmVuIGbDvHIgZGFzIEJpbsOkcnBha2V0IEk8UGFrZXQ+LiBGYWxscyBkaWUgU3RldWVyZGF0ZWkgIgorImRlciBRdWVsbGVuIG51ciBlaW4gQmluw6RycGFrZXRlIGF1ZmbDvGhydCwga2FubiBkaWVzZSBPcHRpb24gd2VnZ2VsYXNzZW4gIgorIndlcmRlbjsgYW5kZXJuZmFsbHMgaXN0IHNpZSBub3R3ZW5kaWcsIHVtIGZlc3R6dWxlZ2VuLCB2b24gd2VsY2hlbiAiCisiQmluw6RycGFrZXRlbiBkaWUgSW5mb3JtYXRpb25lbiBlcnN0ZWxsdCB3ZXJkZW4gc29sbGVuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjg1CisjLCBuby13cmFwCittc2dpZCAiQjwtbj5JPGZpbGVuYW1lPiIKK21zZ3N0ciAiQjwtbj5JPERhdGVpbmFtZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjkwCittc2dpZCAiIgorIkFzc3VtZSB0aGUgZmlsZW5hbWUgb2YgdGhlIHBhY2thZ2Ugd2lsbCBiZSBJPGZpbGVuYW1lPiBpbnN0ZWFkIG9mIHRoZSBub3JtYWwgIgorInBhY2thZ2VfdmVyc2lvbl9hcmNoLmRlYiBmaWxlbmFtZS4iCittc2dzdHIgIiIKKyJHZWhlIGRhdm9uIGF1cywgZGFzIGRlciBEYXRlaW5hbWUgZGVzIFBha2V0cyBJPERhdGVpbmFtZT4gc2VpbiB3aXJkLCBzdGF0dCAiCisiZGVzIG5vcm1hbGVuIERhdGVpbmFtZW5zIFBha2V0X1ZlcnNpb25fQXJjaGl0ZWt0dXIuZGViLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjkwCisjLCBuby13cmFwCittc2dpZCAiQjwtaXM+LCBCPC1pcD4sIEI8LWlzcD4iCittc2dzdHIgIkI8LWlzPiwgQjwtaXA+LCBCPC1pc3A+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMTo5OQorbXNnaWQgIiIKKyJUaGVzZSBvcHRpb25zIGFyZSBpZ25vcmVkIGZvciBjb21wYXRpYmlsaXR5IHdpdGggb2xkZXIgdmVyc2lvbnMgb2YgZHBrZy1kZXYgIgorImJ1dCBhcmUgbm93IGRlcHJlY2F0ZWQuIFByZXZpb3VzbHkgdGhleSB3ZXJlIHVzZWQgdG8gdGVsbCBkcGtnLWdlbmNvbnRyb2wgdG8gIgorImluY2x1ZGUgdGhlIFNlY3Rpb24gYW5kIFByaW9yaXR5IGZpZWxkcyBpbiB0aGUgY29udHJvbCBmaWxlLiBUaGlzIGlzIG5vdyB0aGUgIgorImRlZmF1bHQgYmVoYXZpb3VyLiBJZiB5b3Ugd2FudCB0byBnZXQgdGhlIG9sZCBiZWhhdmlvdXIgeW91IGNhbiB1c2UgdGhlIEI8LSIKKyJVPiBvcHRpb24gdG8gZGVsZXRlIHRoZSBmaWVsZHMgZnJvbSB0aGUgY29udHJvbCBmaWxlLiIKK21zZ3N0ciAiIgorIkRpZXNlIE9wdGlvbmVuIHdlcmRlbiBhdWZncnVuZCBkZXIgS29tcGF0aWJpbGl0w6R0IG1pdCDDpGx0ZXJlbiBWZXJzaW9uZW4gdm9uICIKKyJkcGtnLWRldiBpZ25vcmllcnQsIHNpbmQgYWJlciBqZXR6dCB2ZXJhbHRldC4gQmlzaGVyIHd1cmRlbiBzaWUgdmVyd2VuZGV0LCAiCisidW0gZHBrZy1nZW5jb250cm9sIG1pdHp1dGVpbGVuLCBkaWUgRmVsZGVyIMK7U2VjdGlvbsKrIHVuZCDCu1ByaW9yaXR5wqsgaW4gZGllICIKKyJTdGV1ZXJkYXRlaSBtaXQgYXVmenVuZWhtZW4uIERpZXMgcGFzc2llcnQgamV0enQgc3RhbmRhcmRtw6TDn2lnLiBGYWxscyBTaWUgIgorImRhcyBhbHRlIFZlcmhhbHRlbiBlcnJlaWNoZW4gbcO2Y2h0ZW4sIGvDtm5uZW4gU2llIGRpZSBPcHRpb24gQjwtVT4gdmVyd2VuZGVuLCAiCisidW0gRmVsZGVyIGF1cyBkZXIgU3RldWVyZGF0ZWkgenUgZW50ZmVybmVuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjk5CisjLCBuby13cmFwCittc2dpZCAiQjwtUD5JPHBhY2thZ2VidWlsZGRpcj4iCittc2dzdHIgIkI8LVA+STxQYWtldGJhdXZlcnplaWNobmlzPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jb250cm9sLjE6MTEyCittc2dpZCAiIgorIlRlbGxzIEI8ZHBrZy1zb3VyY2U+IHRoYXQgdGhlIHBhY2thZ2UgaXMgYmVpbmcgYnVpbHQgaW4gSTxwYWNrYWdlYnVpbGRkaXI+ICIKKyJpbnN0ZWFkIG9mIEI8ZGViaWFuL3RtcD4uICBUaGlzIHZhbHVlIGlzIHVzZWQgdG8gZmluZCB0aGUgZGVmYXVsdCB2YWx1ZSBvZiAiCisidGhlIEI8SW5zdGFsbGVkLVNpemU+IHN1YnN0aXR1dGlvbiB2YXJpYWJsZSBhbmQgY29udHJvbCBmaWxlIGZpZWxkICh1c2luZyAiCisiQjxkdT4pLCBhbmQgZm9yIHRoZSBkZWZhdWx0IGxvY2F0aW9uIG9mIHRoZSBvdXRwdXQgZmlsZS4iCittc2dzdHIgIiIKKyJUZWlsdCBCPGRwa2ctc291cmNlPiBtaXQsIGRhc3MgZGFzIFBha2V0IGluIEk8UGFrZXRiYXV2ZXJ6ZWljaG5pcz4gc3RhdHQgaW4gIgorIkI8ZGViaWFuL3RtcD4gZ2ViYXV0IHdpcmQuIERpZXNlciBXZXJ0IHdpcmQgZGF6dSB2ZXJ3ZW5kZXQsIGRlbiBTdGFuZGFyZHdlcnQgIgorImRlciBTdWJzdGl0dXRpb25zdmFyaWFibGVuIEI8SW5zdGFsbGVkLVNpemU+IHVuZCBkZXMgRmVsZGVzIGRlciBTdGV1ZXJkYXRlaSAiCisiKG1pdHRlbHMgQjxkdT4pIHp1IGZpbmRlbiwgdW5kIGbDvHIgZGVuIFN0YW5kYXJkLUFibGFnZXBsYXR6IGRlciBBdXNnYWJlZGF0ZWkuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5jb250cm9sLjE6MTEyIGRwa2ctZ2Vuc3ltYm9scy4xOjM5MSBkcGtnLXNobGliZGVwcy4xOjE1MAorIywgbm8td3JhcAorbXNnaWQgIkI8LU8+IgorbXNnc3RyICJCPC1PPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jb250cm9sLjE6MTIxCittc2dpZCAiIgorIlByaW50IHRoZSBjb250cm9sIGZpbGUgdG8gc3RhbmRhcmQgb3V0cHV0LCByYXRoZXIgdGhhbiB0byBCPGRlYmlhbi90bXAvIgorIkRFQklBTi9jb250cm9sPiAob3IgSTxwYWNrYWdlYnVpbGRkaXI+QjwvREVCSUFOL2NvbnRyb2w+IGlmIEI8LVA+IHdhcyB1c2VkKS4iCittc2dzdHIgIiIKKyJHZWJlIGRpZSBTdGV1ZXJkYXRlaSBpbiBkaWUgU3RhbmRhcmRhdXNnYWJlIHN0YXR0IG5hY2ggQjxkZWJpYW4vdG1wL0RFQklBTi8iCisiY29udHJvbD4gKG9kZXIgSTxQYWtldGJhdXZlcnplaWNobmlzPkI8L0RFQklBTi9jb250cm9sPiBmYWxscyBCPC1QPiAiCisidmVyd2VuZGV0IHdvcmRlbiBpc3QpIGF1cy4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbmNvbnRyb2wuMToxMjkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGRlYmlhbi9jb250cm9sPiIKK21zZ3N0ciAiQjxkZWJpYW4vY29udHJvbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjEzNAorbXNnaWQgIiIKKyJUaGUgbWFpbiBzb3VyY2UgY29udHJvbCBpbmZvcm1hdGlvbiBmaWxlLCBnaXZpbmcgdmVyc2lvbi1pbmRlcGVuZGVudCAiCisiaW5mb3JtYXRpb24gYWJvdXQgdGhlIHNvdXJjZSBwYWNrYWdlIGFuZCB0aGUgYmluYXJ5IHBhY2thZ2VzIGl0IGNhbiBwcm9kdWNlLiIKK21zZ3N0ciAiIgorIkRpZSBIYXVwdC1TdGV1ZXItSW5mb3JtYXRpb25zZGF0ZWkgZsO8ciBkaWUgUXVlbGxlbi4gU2llIGdpYnQgIgorInZlcnNpb25zdW5hYmjDpG5naWdlIEluZm9ybWF0aW9uZW4gw7xiZXIgZGFzIFF1ZWxscGFrZXQgdW5kIGRpZSBCaW7DpHJwYWtldGUsICIKKyJkaWUgc2llIGVyc3RlbGxlbiBrYW5uLCBhbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjE0MQorbXNnaWQgIiIKKyJUaGUgbGlzdCBvZiBnZW5lcmF0ZWQgZmlsZXMgd2hpY2ggYXJlIHBhcnQgb2YgdGhlIHVwbG9hZCBiZWluZyBwcmVwYXJlZC4gICIKKyJCPGRwa2ctZ2VuY29udHJvbD4gYWRkcyB0aGUgcHJlc3VtZWQgZmlsZW5hbWVzIG9mIGJpbmFyeSBwYWNrYWdlcyB3aG9zZSAiCisiY29udHJvbCBmaWxlcyBpdCBnZW5lcmF0ZXMgaGVyZS4iCittc2dzdHIgIiIKKyJEaWUgTGlzdGUgZGVyIGVyc3RlbGx0ZW4gRGF0ZWllbiwgZGllIFRlaWwgZGVzIFVwbG9hZHMgc2luZCwgZGVyIHZvcmJlcmVpdGV0ICIKKyJ3aXJkLiBCPGRwa2ctZ2VuY29udHJvbD4gZsO8Z3QgZGllIHZlcm11dGV0ZW4gRGF0ZWluYW1lbiB2b24gQmluw6RycGFrZXRlbiAiCisiaGluenUsIGRlcmVuIFN0ZXVlcmRhdGVpZW4gZXMgaGllciBnZW5lcmllcnQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMToxNDggZHBrZy1zaGxpYmRlcHMuMTozMzcKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAwNy0yMDA4IFJhcGhhXFxbOmVdbCBIZXJ0em9nIgorbXNnc3RyICJDb3B5cmlnaHQgXFwoY28gMjAwNy0yMDA4IFJhcGhhXFxbOmVdbCBIZXJ0em9nIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MgorIywgbm8td3JhcAorbXNnaWQgImRwa2ctZ2Vuc3ltYm9scyIKK21zZ3N0ciAiZHBrZy1nZW5zeW1ib2xzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo1Cittc2dpZCAiIgorImRwa2ctZ2Vuc3ltYm9scyAtIGdlbmVyYXRlIHN5bWJvbHMgZmlsZXMgKHNoYXJlZCBsaWJyYXJ5IGRlcGVuZGVuY3kgIgorImluZm9ybWF0aW9uKSIKK21zZ3N0ciAiIgorImRwa2ctZ2Vuc3ltYm9scyAtIGVyc3RlbGxlIFN5bWJvbGRhdGVpZW4gKEFiaMOkbmdpZ2tlaXRzaW5mb3JtYXRpb25lbiBmw7xyICIKKyJMYXVmemVpdGJpYmxpb3RoZWtlbikiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjkKK21zZ2lkICJCPGRwa2ctZ2Vuc3ltYm9scz4gW0k8b3B0aW9uPi4uLl0iCittc2dzdHIgIkI8ZHBrZy1nZW5zeW1ib2xzPiBbSTxPcHRpb24+Li4uXSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTYKK21zZ2lkICIiCisiQjxkcGtnLWdlbnN5bWJvbHM+IHNjYW5zIGEgdGVtcG9yYXJ5IGJ1aWxkIHRyZWUgKGRlYmlhbi90bXAgYnkgZGVmYXVsdCkgIgorImxvb2tpbmcgZm9yIGxpYnJhcmllcyBhbmQgZ2VuZXJhdGUgYSBJPHN5bWJvbHM+IGZpbGUgZGVzY3JpYmluZyB0aGVtLiBUaGlzICIKKyJmaWxlLCBpZiBub24tZW1wdHksIGlzIHRoZW4gaW5zdGFsbGVkIGluIHRoZSBERUJJQU4gc3ViZGlyZWN0b3J5IG9mIHRoZSAiCisiYnVpbGQgdHJlZSBzbyB0aGF0IGl0IGVuZHMgdXAgaW5jbHVkZWQgaW4gdGhlIGNvbnRyb2wgaW5mb3JtYXRpb24gb2YgdGhlICIKKyJwYWNrYWdlLiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1nZW5zeW1ib2xzPiBkdXJjaHN1Y2h0IGVpbmVuIHRlbXBvcsOkcmVuIEJhdWJhdW0gKHN0YW5kYXJkbcOkw59pZyBkZWJpYW4vIgorInRtcCksIHN1Y2h0IG5hY2ggQmlibGlvdGhla2VuIHVuZCBlcnN0ZWxsdCBlaW5lIERhdGVpIEk8c3ltYm9scz4sIGRpZSBkaWVzZSAiCisiYmVzY2hyZWlidC4gRGllc2UgRGF0ZWkgd2lyZCwgZmFsbHMgc2llIG5pY2h0IGxlZXIgaXN0LCBpbiBkYXMgIgorIlVudGVydmVyemVpY2huaXMgREVCSUFOIGRlcyBCYXViYXVtcyBpbnN0YWxsaWVydCwgc28gZGFzcyBzaWUgc2NobHVzc2VuZGxpY2ggIgorImluIGRlciBTdGV1ZXJpbmZvcm1hdGlvbiBkZXMgUGFrZXRzIGF1ZnRhdWNodC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjIwCittc2dpZCAiIgorIldoZW4gZ2VuZXJhdGluZyB0aG9zZSBmaWxlcywgaXQgdXNlcyBhcyBpbnB1dCBzb21lIHN5bWJvbHMgZmlsZXMgcHJvdmlkZWQgYnkgIgorInRoZSBtYWludGFpbmVyLiBJdCBsb29rcyBmb3IgdGhlIGZvbGxvd2luZyBmaWxlcyAoYW5kIHVzZSB0aGUgZmlyc3QgdGhhdCBpcyAiCisiZm91bmQpOiIKK21zZ3N0ciAiIgorIkJlaW0gRXJzdGVsbGVuIGRpZXNlciBEYXRlaWVuIHZlcndlbmRldCBlcyBhbHMgRWluZ2FiZSBlaW5pZ2Ugdm9tIEJldHJldWVyICIKKyJiZXJlaXRnZXN0ZWxsdGUgU3ltYm9sZGF0ZWllbi4gRXMgc3VjaHQgbmFjaCBkZW4gZm9sZ2VuZGVuIERhdGVpZW4gKHVuZCAiCisidmVyd2VuZGV0IGRpZSBlcnN0ZSwgZGllIGdlZnVuZGVuIHdpcmQpOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjIKK21zZ2lkICJkZWJpYW4vSTxwYWNrYWdlPi5zeW1ib2xzLkk8YXJjaD4iCittc2dzdHIgImRlYmlhbi9JPFBha2V0Pi5zeW1ib2xzLkk8QXJjaGl0ZWt0dXI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyNAorbXNnaWQgImRlYmlhbi9zeW1ib2xzLkk8YXJjaD4iCittc2dzdHIgImRlYmlhbi9zeW1ib2xzLkk8QXJjaGl0ZWt0dXI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyNgorbXNnaWQgImRlYmlhbi9JPHBhY2thZ2U+LnN5bWJvbHMiCittc2dzdHIgImRlYmlhbi9JPFBha2V0Pi5zeW1ib2xzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyOAorbXNnaWQgImRlYmlhbi9zeW1ib2xzIgorbXNnc3RyICJkZWJpYW4vc3ltYm9scyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzYKK21zZ2lkICIiCisiVGhlIG1haW4gaW50ZXJlc3Qgb2YgdGhvc2UgZmlsZXMgaXMgdG8gcHJvdmlkZSB0aGUgbWluaW1hbCB2ZXJzaW9uICIKKyJhc3NvY2lhdGVkIHRvIGVhY2ggc3ltYm9sIHByb3ZpZGVkIGJ5IHRoZSBsaWJyYXJpZXMuIFVzdWFsbHkgaXQgY29ycmVzcG9uZHMgIgorInRvIHRoZSBmaXJzdCB2ZXJzaW9uIG9mIHRoYXQgcGFja2FnZSB0aGF0IHByb3ZpZGVkIHRoZSBzeW1ib2wsIGJ1dCBpdCBjYW4gYmUgIgorIm1hbnVhbGx5IGluY3JlbWVudGVkIGJ5IHRoZSBtYWludGFpbmVyIGlmIHRoZSBBQkkgb2YgdGhlIHN5bWJvbCBpcyBleHRlbmRlZCAiCisid2l0aG91dCBicmVha2luZyBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eS4gSXQncyB0aGUgcmVzcG9uc2liaWxpdHkgb2YgdGhlICIKKyJtYWludGFpbmVyIHRvIGtlZXAgdGhvc2UgZmlsZXMgdXAtdG8tZGF0ZSBhbmQgYWNjdXJhdGUsIGJ1dCBCPGRwa2ctIgorImdlbnN5bWJvbHM+IGhlbHBzIGhpbS4iCittc2dzdHIgIiIKKyJEZXIgSGF1cHR6d2VjayBkaWVzZXIgRGF0ZWllbiBiZXN0ZWh0IGRhcmluLCBkaWUgbWluaW1hbGUgVmVyc2lvbiAiCisiYmVyZWl0enVzdGVsbGVuLCBkaWUgbWl0IGplZGVtIHZvbiBkZXIgQmlibGlvdGhlayBiZXJlaXRnZXN0ZWxsdGVuIFN5bWJvbCAiCisidmVya27DvHBmdCBpc3QuIE5vcm1hbGVyd2Vpc2UgZW50c3ByaWNodCBkaWVzIGRlciBlcnN0ZW4gVmVyc2lvbiBkZXMgUGFrZXRzLCAiCisiZGllIGRpZXNlcyBTeW1ib2wgYmVyZWl0Z2VzdGVsbHQgaGF0LCBrYW5uIGFiZXIgdm9tIEJldHJldWVyIGVyaMO2aHQgd2VyZGVuLCAiCisiZmFsbHMgZGllIEFCSSBkZXMgU3ltYm9scyBvaG5lIEJyZWNoZW4gZGVyIFLDvGNrd8OkcnRza29tcGF0aWJpbGl0w6R0IGVyd2VpdGVydCAiCisid3VyZGUuIEVzIGxpZWd0IGluIGRlciBWZXJ3YW50d29ydHVuZyBkZXMgQmV0cmV1ZXJzLCBkaWVzZSBEYXRlaWVuIGFrdHVlbGwgIgorInp1IGhhbHRlbiwgYWJlciBCPGRwa2ctZ2Vuc3ltYm9scz4gaGlsZnQgaWhtLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDIKK21zZ2lkICIiCisiV2hlbiB0aGUgZ2VuZXJhdGVkIHN5bWJvbHMgZmlsZXMgZGlmZmVyIGZyb20gdGhlIG1haW50YWluZXIgc3VwcGxpZWQgb25lLCAiCisiQjxkcGtnLWdlbnN5bWJvbHM+IHdpbGwgcHJpbnQgYSBkaWZmIGJldHdlZW4gdGhlIHR3byB2ZXJzaW9ucy4gIEZ1cnRoZXJtb3JlICIKKyJpZiB0aGUgZGlmZmVyZW5jZSBpcyB0b28gc2lnbmlmaWNhbnQsIGl0IHdpbGwgZXZlbiBmYWlsICh5b3UgY2FuIGN1c3RvbWl6ZSAiCisiaG93IG11Y2ggZGlmZmVyZW5jZSB5b3UgY2FuIHRvbGVyYXRlLCBzZWUgdGhlIEI8LWM+IG9wdGlvbikuIgorbXNnc3RyICIiCisiV2VubiBkaWUgZXJzdGVsbHRlbiBTeW1ib2xkYXRlaWVuIHNpY2ggdm9uIGRlbmVuLCBkaWUgZGVyIEJldHJldWVyICIKKyJiZXJlaXRnZXN0ZWxsdCBoYXQsIHVudGVyc2NoZWlkZW4sIHdpcmQgQjxkcGtnLWdlbnN5bWJvbHM+IGVpbiBEaWZmIHp3aXNjaGVuICIKKyJkZW4gendlaSBWZXJzaW9uZW4gYW56ZWlnZW4uIEZhbGxzIGRpZSBVbnRlcnNjaGllZGUgZGVzd2VpdGVyZW4genUgIgorImdyYXZpZXJlbmQgc2luZCwgd2lyZCBlcyBzb2dhciBmZWhsc2NobGFnZW4gKFNpZSBrw7ZubmVuIGVpbnN0ZWxsZW4sIHdpZSAiCisiZ3Jvw59lIFVudGVyc2NoaWVkZSBTaWUgdG9sZXJpZXJlbiBrw7ZubmVuLCBzZWhlbiBTaWUgaGllcnp1IGRpZSBPcHRpb24gQjwtYz4pLiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQyCisjLCBuby13cmFwCittc2dpZCAiTUFJTlRBSU5JTkcgU1lNQk9MUyBGSUxFUyIKK21zZ3N0ciAiU1lNQk9MREFURUlFTiBQRkxFR0VOIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo1NQorbXNnaWQgIiIKKyJUaGUgc3ltYm9scyBmaWxlcyBhcmUgcmVhbGx5IHVzZWZ1bCBvbmx5IGlmIHRoZXkgcmVmbGVjdCB0aGUgZXZvbHV0aW9uIG9mICIKKyJ0aGUgcGFja2FnZSB0aHJvdWdoIHNldmVyYWwgcmVsZWFzZXMuIFRodXMgdGhlIG1haW50YWluZXIgaGFzIHRvIHVwZGF0ZSB0aGVtICIKKyJldmVyeSB0aW1lIHRoYXQgYSBuZXcgc3ltYm9sIGlzIGFkZGVkIHNvIHRoYXQgaXRzIGFzc29jaWF0ZWQgbWluaW1hbCB2ZXJzaW9uICIKKyJtYXRjaGVzIHJlYWxpdHkuIFRvIGRvIHRoaXMgcHJvcGVybHkgaGUgY2FuIHVzZSB0aGUgZGlmZnMgY29udGFpbmVkIGluIHRoZSAiCisiYnVpbGQgbG9ncy4gSW4gbW9zdCBjYXNlcywgdGhlIGRpZmYgYXBwbGllcyBkaXJlY3RseSB0byBoaXMgZGViaWFuLyIKKyJJPHBhY2thZ2U+LnN5bWJvbHMgZmlsZS4gVGhhdCBzYWlkLCBmdXJ0aGVyIHR3ZWFrcyBhcmUgdXN1YWxseSBuZWVkZWQ6IGl0J3MgIgorInJlY29tbWVuZGVkIGZvciBleGFtcGxlIHRvIGRyb3AgdGhlIERlYmlhbiByZXZpc2lvbiBmcm9tIHRoZSBtaW5pbWFsIHZlcnNpb24gIgorInNvIHRoYXQgYmFja3BvcnRzIHdpdGggYSBsb3dlciB2ZXJzaW9uIG51bWJlciBidXQgdGhlIHNhbWUgdXBzdHJlYW0gdmVyc2lvbiAiCisic3RpbGwgc2F0aXNmeSB0aGUgZ2VuZXJhdGVkIGRlcGVuZGVuY2llcy4gIElmIHRoZSBEZWJpYW4gcmV2aXNpb24gY2FuJ3QgYmUgIgorImRyb3BwZWQgYmVjYXVzZSB0aGUgc3ltYm9sIHJlYWxseSBnb3QgYWRkZWQgYnkgdGhlIERlYmlhbiBzcGVjaWZpYyBjaGFuZ2UsICIKKyJ0aGVuIG9uZSBzaG91bGQgc3VmZml4IHRoZSB2ZXJzaW9uIHdpdGggXCJ+XCIuIgorbXNnc3RyICIiCisiRGllIFN5bWJvbGRhdGVpZW4gc2luZCBudXIgd2lya2xpY2ggbsO8dHpsaWNoLCBmYWxscyBzaWUgZGllIEVudHdpY2tsdW5nICIKKyJlaW5lcyBQYWtldGVzIMO8YmVyIG1laHJlcmUgVmVyw7ZmZmVudGxpY2h1bmdlbiBoaW53ZWcgd2llZGVyZ2ViZW4uIERhaGVyIG11c3MgIgorImRlciBCZXRyZXVlciBzaWUgaW1tZXIgYWt0dWFsaXNpZXJlbiwgd2VubiBlaW5lIG5ldWVzIFN5bWJvbCBoaW56dWdlZsO8Z3QgIgorIndpcmQsIHNvIGRhc3MgZGllIHp1Z2VvcmRuZXRlIG1pbmltYWxlIFZlcnNpb24gZGVyIFJlYWxpdMOkdCBlbnRzcHJpY2h0LiBVbSAiCisiZGllcyB2ZXJuw7xuZnRpZyBkdXJjaHp1ZsO8aHJlbiwga2FubiBlciBEaWZmcyBhdXMgZGVuIEJhdXByb3Rva29sbGUgIgorInZlcndlbmRlbi4gTWVpc3RlbnMga2FubiBkZXIgRGlmZiBkaXJla3QgYXVmIGRpZSBEYXRlaSBkZWJpYW4vSTxQYWtldD4uIgorInN5bWJvbHMgYW5nZXdhbmR0IHdlcmRlbi4gQWxsZXJkaW5ncyB3ZXJkZW4gbm9ybWFsZXJ3ZWlzZSB3ZWl0ZXJlICIKKyJBbnBhc3N1bmdlbiBub3R3ZW5kaWc6IGVzIHdpcmQgYmVpc3BpZWxzd2Vpc2UgZW1wZm9obGVuLCBkaWUgRGViaWFuLVJldmlzaW9uICIKKyJ2b24gZGVyIG1pbmltYWxlbiBWZXJzaW9uIHp1IGVudGZlcm5lbiwgc28gZGFzcyBCYWNrcG9ydHMgbWl0IGVpbmVyICIKKyJuaWVkcmlnZXJlbiBWZXJzaW9uc251bW1lciBhYmVyIGRlciBnbGVpY2hlbiBWZXJzaW9uIGRlciBPcmlnaW5hbGF1dG9yZW4gIgorImltbWVyIG5vY2ggZGllIGVyc3RlbGx0ZW4gQWJow6RuZ2lna2VpdGVuIGVyZsO8bGxlbi4gRmFsbHMgZGllIERlYmlhbi1SZXZpc2lvbiAiCisibmljaHQgZW50ZmVybnQgd2VyZGVuIGthbm4sIGRhIGRhcyBTeW1ib2wgd2lya2xpY2ggdm9uIGRlciBEZWJpYW4tIgorInNwZXppZmlzY2hlbiDDhG5kZXJ1bmcgaGluenVnZWbDvGd0IHd1cmRlLCBkYW5uIHNvbGx0ZSBkZXIgVmVyc2lvbiDCu37CqyAiCisiYW5nZWjDpG5ndCB3ZXJkZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo1OQorbXNnaWQgIiIKKyJCZWZvcmUgYXBwbHlpbmcgYW55IHBhdGNoIHRvIHRoZSBzeW1ib2xzIGZpbGUsIHRoZSBtYWludGFpbmVyIHNob3VsZCBkb3VibGUtIgorImNoZWNrIHRoYXQgaXQncyBzYW5lLiBQdWJsaWMgc3ltYm9scyBhcmUgbm90IHN1cHBvc2VkIHRvIGRpc2FwcGVhciwgc28gdGhlICIKKyJwYXRjaCBzaG91bGQgaWRlYWxseSBvbmx5IGFkZCBuZXcgbGluZXMuIgorbXNnc3RyICIiCisiQmV2b3IgaXJnZW5kZWluIFBhdGNoIGF1ZiBkaWUgU3ltYm9sZGF0ZWkgYW5nZXdlbmRldCB3aXJkLCBzb2xsdGUgZGVyICIKKyJCZXRyZXVlciB6d2VpbWFsIHByw7xmZW4sIGRhc3MgZGVyIFBhdGNoIHZlcm7DvG5mdGlnIGlzdC4gw5ZmZmVudGxpY2hlIFN5bWJvbGUgIgorInNvbGx0ZW4gbmljaHQgdmVyc2Nod2luZGVuLCBkYWhlciBzb2xsdGUgZGVyIFBhdGNoIGlkZWFsZXJ3ZWlzZSBudXIgbmV1ZSAiCisiWmVpbGVuIGhpbnp1ZsO8Z2VuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NjQKK21zZ2lkICIiCisiTm90ZSB0aGF0IHlvdSBjYW4gcHV0IGNvbW1lbnRzIGluIHN5bWJvbHMgZmlsZXM6IGFueSBsaW5lIHdpdGggJyMnIGFzIHRoZSAiCisiZmlyc3QgY2hhcmFjdGVyIGlzIGEgY29tbWVudCBleGNlcHQgaWYgaXQgc3RhcnRzIHdpdGggJyNpbmNsdWRlJyAoc2VlICIKKyJzZWN0aW9uIEI8VXNpbmcgaW5jbHVkZXM+KS4gTGluZXMgc3RhcnRpbmcgd2l0aCAnI01JU1NJTkc6JyBhcmUgc3BlY2lhbCAiCisiY29tbWVudHMgZG9jdW1lbnRpbmcgc3ltYm9scyB0aGF0IGhhdmUgZGlzYXBwZWFyZWQuIgorbXNnc3RyICIiCisiQmVhY2h0ZW4gU2llLCBkYXNzIFNpZSBpbiBTeW1ib2xkYXRlaWVuIEtvbW1lbnRhcmUgZWluZsO8Z2VuIGvDtm5uZW46IGplZGUgIgorIlplaWxlLCBkaWUgbWl0IMK7I8KrIGFscyBlcnN0ZW4gWmVpY2hlbiBiZWdpbm50LCBpc3QgZWluIEtvbW1lbnRhcmUsIGZhbGxzIHNpZSAiCisibmljaHQgbWl0IMK7I2luY2x1ZGXCqyBiZWdpbm50IChzaWVoZSBBYnNjaG5pdHQgQjxJbmNsdWRlcyB2ZXJ3ZW5kZW4+KS4gIgorIlplaWxlbiwgZGllIG1pdCDCuyNNSVNTSU5HOsKrIGFuZmFuZ2VuLCBzaW5kIGJlc29uZGVyZSBLb21tZW50YXJlLCBkaWUgIgorInZlcnNjaHd1bmRlbmUgU3ltYm9sZSBkb2t1bWVudGllcmVuLiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjY0CisjLCBuby13cmFwCittc2dpZCAiVXNpbmcgI1BBQ0tBR0UjIHN1YnN0aXR1dGlvbiIKK21zZ3N0ciAiVmVyd2VuZHVuZyBkZXIgI1BBQ0tBR0UjLUVyc2V0enVuZyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NzIKK21zZ2lkICIiCisiSW4gc29tZSByYXJlIGNhc2VzLCB0aGUgbmFtZSBvZiB0aGUgbGlicmFyeSB2YXJpZXMgYmV0d2VlbiBhcmNoaXRlY3R1cmVzLiAgIgorIlRvIGF2b2lkIGhhcmRjb2RpbmcgdGhlIG5hbWUgb2YgdGhlIHBhY2thZ2UgaW4gdGhlIHN5bWJvbHMgZmlsZSwgeW91IGNhbiB1c2UgIgorInRoZSBtYXJrZXIgSTwjUEFDS0FHRSM+LiBJdCB3aWxsIGJlIHJlcGxhY2VkIGJ5IHRoZSByZWFsIHBhY2thZ2UgbmFtZSBkdXJpbmcgIgorImluc3RhbGxhdGlvbiBvZiB0aGUgc3ltYm9scyBmaWxlcy4gQ29udHJhcnkgdG8gdGhlIEk8I01JTlZFUiM+IG1hcmtlciwgIgorIkk8I1BBQ0tBR0UjPiB3aWxsIG5ldmVyIGFwcGVhciBpbiBhIHN5bWJvbHMgZmlsZSBpbnNpZGUgYSBiaW5hcnkgcGFja2FnZS4iCittc2dzdHIgIiIKKyJJbiBlaW5pZ2VuIHNlbHRlbmVuIEbDpGxsZW4gdW50ZXJzY2hlaWRldCBzaWNoIGRlciBOYW1lIGRlciBCaWJsaW90aGVrIGF1ZiAiCisidmVyc2NoaWVkZW5lbiBBcmNoaXRla3R1cmVuLiBVbSB6dSB2ZXJtZWlkZW4sIGRhc3MgZGVyIFBha2V0bmFtZSBpbiBkZXIgIgorIlN5bWJvbGRhdGVpIGZlc3Qga29kaWVydCB3aXJkLCBrw7ZubmVuIFNpZSBkaWUgTWFya2llcnVuZyBJPCNQQUNLQUdFIz4gIgorInZlcndlbmRlbi4gV8OkaHJlbmQgZGVyIEluc3RhbGxhdGlvbiBkZXIgU3ltYm9sZGF0ZWkgd2lyZCBzaWUgZHVyY2ggZGVuICIKKyJlY2h0ZW4gUGFrZXRuYW1lbiBlcnNldHp0LiBBbmRlcnMgYWxzIGRpZSBNYXJraWVydW5nIEk8I01JTlZFUiM+IHdpcmQgIgorIkk8I1BBQ0tBR0UjPiBuaWUgaW4gZGVyIFN5bWJvbGRhdGVpIGlubmVyaGFsYiBlaW5lcyBCaW7DpHJwYWtldHMgYXVmdGF1Y2hlbi4iCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLWdlbnN5bWJvbHMuMTo3MgorIywgbm8td3JhcAorbXNnaWQgIlVzaW5nIHN5bWJvbCB0YWdzIgorbXNnc3RyICJWZXJ3ZW5kdW5nIHZvbiBTeW1ib2xrZW5uemVpY2hudW5nZW4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjc5Cittc2dpZCAiIgorIlN5bWJvbCB0YWdnaW5nIGlzIHVzZWZ1bCBmb3IgbWFya2luZyBzeW1ib2xzIHRoYXQgYXJlIHNwZWNpYWwgaW4gc29tZSB3YXkuICAiCisiQW55IHN5bWJvbCBjYW4gaGF2ZSBhbiBhcmJpdHJhcnkgbnVtYmVyIG9mIHRhZ3MgYXNzb2NpYXRlZCB3aXRoIGl0LiBXaGlsZSAiCisiYWxsIHRhZ3MgYXJlIHBhcnNlZCBhbmQgc3RvcmVkLCBvbmx5IGEgc29tZSBvZiB0aGVtIGFyZSB1bmRlcnN0b29kIGJ5IEI8ZHBrZy0iCisiZ2Vuc3ltYm9scz4gYW5kIHRyaWdnZXIgc3BlY2lhbCBoYW5kbGluZyBvZiB0aGUgc3ltYm9scy4gU2VlIHN1YnNlY3Rpb24gIgorIkI8U3RhbmRhcmQgc3ltYm9sIHRhZ3M+IGZvciByZWZlcmVuY2Ugb2YgdGhlc2UgdGFncy4iCittc2dzdHIgIiIKKyJTeW1ib2xrZW5uemVpY2hudW5nZW4gc2luZCBuw7x0emxpY2gsIHVtIFN5bWJvbGUgenUgbWFya2llcmVuLCBkaWUgaW4gIgorImlyZ2VuZGVpbmVyIFdlaXNlIGJlc29uZGVycyBzaW5kLiBKZWRlcyBTeW1ib2wga2FubiBlaW5lIGJlbGllYmlnZSBBbnphaGwgIgorInp1Z2VvcmRuZXRlciBLZW5uemVpY2hudW5nZW4gYmVzaXR6ZW4uIFfDpGhyZW5kIGFsbGUgS2VubnplaWNobnVuZ2VuICIKKyJhdXNnZXdlcnRldCB1bmQgZ2VzcGVpY2hlcnQgd2VyZGVuLCB3ZXJkZW4gbnVyIGVpbmlnZSB2b24gQjxkcGtnLWdlbnN5bWJvbHM+ICIKKyJ2ZXJzdGFuZGVuIHVuZCBsw7ZzZW4gZWluZSBTcGV6aWFsYmVoYW5kbHVuZyBkZXIgU3ltYm9sZSBhdXMuIExlc2VuIFNpZSBkZW4gIgorIlVudGVyYWJzY2huaXQgQjxTdGFuZGFyZHN5bWJvbGtlbm56ZWljaG51bmdlbj4gZsO8ciBlaW5lIFJlZmVyZW56IGRpZXNlciAiCisiS2VubnplaWNobnVuZ2VuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6OTEKK21zZ2lkICIiCisiVGFnIHNwZWNpZmljYXRpb24gY29tZXMgcmlnaHQgYmVmb3JlIHRoZSBzeW1ib2wgbmFtZSAobm8gd2hpdGVzcGFjZSBpcyAiCisiYWxsb3dlZCBpbiBiZXR3ZWVuKS4gSXQgYWx3YXlzIHN0YXJ0cyB3aXRoIGFuIG9wZW5pbmcgYnJhY2tldCBCPCg+LCBlbmRzICIKKyJ3aXRoIGEgY2xvc2luZyBicmFja2V0IEI8KT4gYW5kIG11c3QgY29udGFpbiBhdCBsZWFzdCBvbmUgdGFnLiBNdWx0aXBsZSB0YWdzICIKKyJhcmUgc2VwYXJhdGVkIGJ5IHRoZSBCPHw+IGNoYXJhY3Rlci4gRWFjaCB0YWcgY2FuIG9wdGlvbmFsbHkgaGF2ZSBhIHZhbHVlICIKKyJ3aGljaCBpcyBzZXBhcmF0ZWQgZm9ybSB0aGUgdGFnIG5hbWUgYnkgdGhlIEI8PT4gY2hhcmFjdGVyLiBUYWcgbmFtZXMgYW5kICIKKyJ2YWx1ZXMgY2FuIGJlIGFyYml0cmFyeSBzdHJpbmdzIGV4Y2VwdCB0aGV5IGNhbm5vdCBjb250YWluIGFueSBvZiB0aGUgIgorInNwZWNpYWwgQjwpPiBCPHw+IEI8PT4gY2hhcmFjdGVycy4gU3ltYm9sIG5hbWVzIGZvbGxvd2luZyBhIHRhZyAiCisic3BlY2lmaWNhdGlvbiBjYW4gb3B0aW9uYWxseSBiZSBxdW90ZWQgd2l0aCBlaXRoZXIgQjwnPiBvciBCPFwiPiBjaGFyYWN0ZXJzICIKKyJ0byBhbGxvdyB3aGl0ZXNwYWNlcyBpbiB0aGVtLiBIb3dldmVyLCBpZiB0aGVyZSBhcmUgbm8gdGFncyBzcGVjaWZpZWQgZm9yICIKKyJ0aGUgc3ltYm9sLCBxdW90ZXMgYXJlIHRyZWF0ZWQgYXMgcGFydCBvZiB0aGUgc3ltYm9sIG5hbWUgd2hpY2ggY29udGludWVzIHVwICIKKyJ1bnRpbCB0aGUgZmlyc3Qgc3BhY2UuIgorbXNnc3RyICIiCisiS2VubnplaWNobnVuZ3NzcGV6aWZpa2F0aW9uZW4ga29tbWVuIGRpcmVrdCB2b3IgZGVtIFN5bWJvbG5hbWVuIChkYXp3aXNjaGVuICIKKyJzaW5kIGtlaW5lIExlZXJ6ZWljaGVuIGVybGF1YnQpLiBTaWUgYmVnaW5uZW4gaW1tZXIgbWl0IGVpbmVyIMO2ZmZuZW5kZW4gIgorIktsYW1tZXIgQjwoPiwgZW5kZW4gbWl0IGVpbmVyIHNjaGxpZcOfZW5kZW4gS2xhbW1lciBCPCk+IHVuZCBtw7xzc2VuICIKKyJtaW5kZXN0ZW5zIGVpbmUgS2VubnplaWNobnVuZyBlbnRoYWx0ZW4uIE1laHJlcmUgS2VubnplaWNobnVuZ2VuIHdlcmRlbiAiCisiZHVyY2ggZGFzIFplaWNoZW4gQjx8PiBnZXRyZW5udC4gSmVkZSBLZW5uemVpY2hudW5nZW4ga2FubiBvcHRpb25hbCBlaW5lbiAiCisiV2VydCBlbnRoYWx0ZW4sIGRlciB2b24gZGVyIEtlbm56ZWljaG51bmcgZHVyY2ggZGFzIFplaWNoZW4gQjw9PiBnZXRyZW5udCAiCisid2lyZC4gS2VubnplaWNoZW5uYW1lbiB1bmQgLXdlcnRlIGvDtm5uZW4gYmVsaWViaWdlIFplaWNoZW5rZXR0ZW4gc2Vpbiwgc2llICIKKyJkw7xyZmVuIGFsbGVyZGluZ3Mga2VpbmUgZGVyIGRlciBiZXNvbmRlcmVuIFplaWNoZW4gQjwpPiBCPHw+IEI8PT4gZW50aGFsdGVuLiAiCisiU3ltYm9sbmFtZW4sIGRpZSBlaW5lciBLZW5uemVpY2hudW5nc3NwZXppZmlrYXRpb24gZm9sZ2VuLCBrw7ZubmVuIG9wdGlvbmFsICIKKyJtaXQgZGVuIFplaWNoZW4gQjwnPiBvZGVyIEI8XCI+IHppdGllcnQgd2VyZGVuLCB1bSBMZWVyemVpY2hlbiBkYXJpbiB6dSAiCisiZXJsYXViZW4uIEZhbGxzIGtlaW5lIEtlbm56ZWljaG51bmdlbiBmw7xyIGRhcyBTeW1ib2wgc3BlemlmaXppZXJ0IHNpbmQsICIKKyJ3ZXJkZW4gWml0YXR6ZWljaGVuIGFscyBUZWlsIGRlcyBTeW1ib2xuYW1lbnMgYmVoYW5kZWx0LCBkZXIgYmlzIHp1bSBlcnN0ZW4gIgorIkxlZXJ6ZWljaGVuIGdlaHQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo5NQorIywgbm8td3JhcAorbXNnaWQgIiIKKyIgKHRhZzE9aSBhbSBtYXJrZWR8dGFnIG5hbWUgd2l0aCBzcGFjZSlcInRhZ2dlZCBxdW90ZWQgc3ltYm9sXCJAQmFzZSAxLjBcbiIKKyIgKG9wdGlvbmFsKXRhZ2dlZF91bnF1b3RlZF9zeW1ib2xAQmFzZSAxLjAgMVxuIgorIiB1bnRhZ2dlZF9zeW1ib2xAQmFzZSAxLjBcbiIKK21zZ3N0ciAiIgorIiAoS2VubnoxPWJpbiBtYXJraWVydHxOYW1lIG1pdCBMZWVycmF1bSlcInppdGllcnRlcyBnZWtlbm56IFN5bWJvbFwiQEJhc2UgMS4wXG4iCisiIChvcHRpb25hbClnZWtlbm56ZWljaG5ldF91bnppdGllcnRlc19TeW1ib2xAQmFzZSAxLjAgMVxuIgorIiB1bmdla2VubnplaWNobmV0ZXNfU3ltYm9sQEJhc2UgMS4wXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjEwMQorbXNnaWQgIiIKKyJUaGUgZmlyc3Qgc3ltYm9sIGluIHRoZSBleGFtcGxlIGlzIG5hbWVkIEk8dGFnZ2VkIHF1b3RlZCBzeW1ib2w+IGFuZCBoYXMgdHdvICIKKyJ0YWdzOiBJPHRhZzE+IHdpdGggdmFsdWUgSTxpIGFtIG1hcmtlZD4gYW5kIEk8dGFnIG5hbWUgd2l0aCBzcGFjZT4gdGhhdCBoYXMgIgorIm5vIHZhbHVlLiBUaGUgc2Vjb25kIHN5bWJvbCBuYW1lZCBJPHRhZ2dlZF91bnF1b3RlZF9zeW1ib2w+IGlzIG9ubHkgdGFnZ2VkICIKKyJ3aXRoIHRoZSB0YWcgbmFtZWQgSTxvcHRpb25hbD4uIFRoZSBsYXN0IHN5bWJvbCBpcyBhbiBleGFtcGxlIG9mIHRoZSBub3JtYWwgIgorInVudGFnZ2VkIHN5bWJvbC4iCittc2dzdHIgIiIKKyJEYXMgZXJzdGUgU3ltYm9sIGltIEJlaXNwaWVsIGhlacOfdCBJPHppdGllcnRlcyBnZWtlbm56IFN5bWJvbD4gdW5kIGhhdCB6d2VpICIKKyJLZW5uemVpY2hudW5nZW46IEk8S2VubnoxPiBtaXQgZGVtIFdlcnQgSTxiaW4gbWFya2llcnQ+IHVuZCBJPE5hbWUgbWl0ICIKKyJMZWVycmF1bT4gb2huZSBXZXJ0LiBEYXMgendlaXRlIFN5bWJvbCBoZWnDn3QgIgorIkk8Z2VrZW5uemVpY2huZXRfdW56aXRpZXJ0ZXNfU3ltYm9sPiB1bmQgaXN0IG51ciBtaXQgZGVtIEtlbm56ZWljaGVuIG5hbWVucyAiCisiSTxvcHRpb25hbD4gZ2VrZW5uemVpY2huZXQuIERhcyBsZXR6dGUgU3ltYm9sIGlzdCBlaW4gQmVpc3BpZWwgZWluZXMgIgorIm5vcm1hbGVuLCBuaWNodCBnZWtlbm56ZWljaG5ldGVuIFN5bWJvbHMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToxMTMKK21zZ2lkICIiCisiU2luY2Ugc3ltYm9sIHRhZ3MgYXJlIGFuIGV4dGVuc2lvbiBvZiB0aGUgSTxkZWItc3ltYm9scyg1KT4gZm9ybWF0LCB0aGV5IGNhbiAiCisib25seSBiZSBwYXJ0IG9mIHRoZSBzeW1ib2xzIGZpbGVzIHVzZWQgaW4gc291cmNlIHBhY2thZ2VzICh0aG9zZSBmaWxlcyAiCisic2hvdWxkIHRoZW4gYmUgc2VlbiBhcyB0ZW1wbGF0ZXMgdXNlZCB0byBidWlsZCB0aGUgc3ltYm9scyBmaWxlcyB0aGF0IGFyZSAiCisiZW1iZWRkZWQgaW4gYmluYXJ5IHBhY2thZ2VzKS4gV2hlbiBCPGRwa2ctZ2Vuc3ltYm9scz4gaXMgY2FsbGVkIHdpdGhvdXQgdGhlICIKKyJJPC10PiBvcHRpb24sIGl0IHdpbGwgb3V0cHV0IHN5bWJvbHMgZmlsZXMgY29tcGF0aWJsZSB0byB0aGUgSTxkZWItc3ltYm9scyg1KSIKKyI+IGZvcm1hdDogaXQgZnVsbHkgcHJvY2Vzc2VzIHN5bWJvbHMgYWNjb3JkaW5nIHRvIHRoZSByZXF1aXJlbWVudHMgb2YgdGhlaXIgIgorInN0YW5kYXJkIHRhZ3MgYW5kIHN0cmlwcyBhbGwgdGFncyBmcm9tIHRoZSBvdXRwdXQuIE9uIHRoZSBjb250cmFyeSwgaW4gIgorInRlbXBsYXRlIG1vZGUgKEk8LXQ+KSBhbGwgc3ltYm9scyBhbmQgdGhlaXIgdGFncyAoYm90aCBzdGFuZGFyZCBhbmQgdW5rbm93biAiCisib25lcykgIGFyZSBrZXB0IGluIHRoZSBvdXRwdXQgYW5kIGFyZSB3cml0dGVuIGluIHRoZWlyIG9yaWdpbmFsIGZvcm0gYXMgdGhleSAiCisid2VyZSBsb2FkZWQuIgorbXNnc3RyICIiCisiRGEgU3ltYm9sa2VubnplaWNobnVuZ2VuIGVpbmUgRXJ3ZWl0ZXJ1bmcgZGVzIEZvcm1hdHMgSTxkZWItc3ltYm9scyg1KT4gIgorInNpbmQsIGvDtm5uZW4gc2llIG51ciBUZWlsIGRlciBpbiBRdWVsbHBha2V0ZW4gdmVyd2FuZHRlbiBTeW1ib2xkYXRlaWVuIHNlaW4gIgorIihkaWVzZSBEYXRlaWVuIHNvbGx0ZW4gZGFubiBhbHMgVm9ybGFnZW4genVtIEJhdSBkZXIgU3ltYm9sZGF0ZWllbiwgZGllIGluICIKKyJCaW7DpHJwYWtldGUgZWluZ2ViZXR0ZXQgd2VyZGVuLCBnZXNlaGVuIHdlcmRlbikuIFdlbm4gQjxkcGtnLWdlbnN5bWJvbHM+ICIKKyJvaG5lIGRpZSBPcHRpb24gSTwtdD4gYXVmZ2VydWZlbiB3aXJkLCB3aXJkIGVzIGFsbGUgU3ltYm9sZSBhdXNnZWJlbiwgZGllICIKKyJ6dW0gRm9ybWF0IEk8ZGViLXN5bWJvbHMoNSk+IGtvbXBhdGliZWwgc2luZDogRXMgdmVyYXJiZWl0ZXQgZGllIFN5bWJvbGUgIgorImVudHNwcmVjaGVuZCBkZXIgQW5mb3JkZXJ1bmdlbiBpaHJlciBTdGFuZGFyZGtlbm56ZWljaG51bmdlbiB1bmQgZW50ZmVybnQgIgorImFsbGUgS2VubnplaWNobnVuZ2VuIGF1cyBkZXIgQXVzZ2FiZS4gSW0gR2VnZW5zYXR6IGRhenUgd2VyZGVuIGFsbGUgU3ltYm9sZSAiCisidW5kIGlocmUgS2VubnplaWNobnVuZ2VuIChzb3dvaGwgZGllIFN0YW5kYXJka2VubnplaWNobnVuZ2VuIGFscyBhdWNoIGRpZSAiCisidW5iZWthbm50ZW4pIGltIFZvcmxhZ2VubW9kdXMgKEk8LXQ+KSBpbiBkZXIgQXVzZ2FiZSBiZWliZWhhbHRlbiB1bmQgaW4gIgorImlocmVyIE9yaWdpbmFsZm9ybSB3aWUgc2llIGdlbGFkZW4gd3VyZGVuIGF1Y2ggZ2VzY2hyaWViZW4uIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1nZW5zeW1ib2xzLjE6MTEzCisjLCBuby13cmFwCittc2dpZCAiU3RhbmRhcmQgc3ltYm9sIHRhZ3MiCittc2dzdHIgIlN0YW5kYXJkLVN5bWJvbGtlbm56ZWljaG51bmdlbiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjExNAorIywgbm8td3JhcAorbXNnaWQgIkI8b3B0aW9uYWw+IgorbXNnc3RyICJCPG9wdGlvbmFsPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTI0Cittc2dpZCAiIgorIkEgc3ltYm9sIG1hcmtlZCBhcyBvcHRpb25hbCBjYW4gZGlzYXBwZWFyIGZyb20gdGhlIGxpYnJhcnkgYXQgYW55IHRpbWUgYW5kICIKKyJ0aGF0IHdpbGwgbmV2ZXIgY2F1c2UgQjxkcGtnLWdlbnN5bWJvbHM+IHRvIGZhaWwuIEhvd2V2ZXIsIGRpc2FwcGVhcmVkICIKKyJvcHRpb25hbCBzeW1ib2xzIHdpbGwgY29udGludW91c2x5IGFwcGVhciBhcyBNSVNTSU5HIGluIHRoZSBkaWZmIGluIGVhY2ggbmV3ICIKKyJwYWNrYWdlIHJldmlzaW9uLiAgVGhpcyBiZWhhdmlvdXIgc2VydmVzIGFzIGEgcmVtaW5kZXIgZm9yIHRoZSBtYWludGFpbmVyICIKKyJ0aGF0IHN1Y2ggYSBzeW1ib2wgbmVlZHMgdG8gYmUgcmVtb3ZlZCBmcm9tIHRoZSBzeW1ib2wgZmlsZSBvciByZWFkZGVkIHRvICIKKyJ0aGUgbGlicmFyeS4gV2hlbiB0aGUgb3B0aW9uYWwgc3ltYm9sLCB3aGljaCB3YXMgcHJldmlvdXNseSBkZWNsYXJlZCBhcyAiCisiTUlTU0lORywgc3VkZGVubHkgcmVhcHBlYXJzIGluIHRoZSBuZXh0IHJldmlzaW9uLCBpdCB3aWxsIGJlIHVwZ3JhZGVkIGJhY2sgIgorInRvIHRoZSBcImV4aXN0aW5nXCIgc3RhdHVzIHdpdGggaXRzIG1pbmltdW0gdmVyc2lvbiB1bmNoYW5nZWQuIgorbXNnc3RyICIiCisiRWluIGFscyDCu29wdGlvbmFswqsgZ2VrZW5uemVpY2huZXRlcyBTeW1ib2wga2FubiBqZWRlcnplaXQgdm9uIGRlciBCaWJsaW90aGVrICIKKyJ2ZXJzY2h3aW5kZW4gdW5kIHdpcmQgbmllIHp1bSBGZWhsc2NobGFnIHZvbiBCPGRwa2ctZ2Vuc3ltYm9scz4gZsO8aHJlbi4gIgorIlZlcnNjaHd1bmRlbmUgb3B0aW9uYWxlIFN5bWJvbGUgd2VyZGVuIGtvbnRpbnVpZXJsaWNoIGFscyBNSVNTSU5HIChGZWhsZW5kKSAiCisiaW4gZGVtIERpZmYgaW4gamVkZXIgbmV1ZW4gUGFrZXR2ZXJzaW9uIGF1ZnRhdWNoZW4uIERpZXNlcyBWZXJoYWx0ZW4gZGllbnQgIgorImFscyBFcmlubmVydW5nIGbDvHIgZGVuIEJldHJldWVyLCBkYXNzIHNvIGVpbiBTeW1ib2wgYXVzIGRlciBTeW1ib2xkYXRlaSAiCisiZW50ZmVybnQgb2RlciB3aWVkZXIgZGVyIEJpYmxpb3RoZWsgaGluenVnZWbDvGd0IHdlcmRlbiBtdXNzLiBXZW5uIGRhcyAiCisib3B0aW9uYWxlIFN5bWJvbCwgZGFzcyBiaXNoZXIgYWxzIE1JU1NJTkcgYmV6ZWljaG5ldCBnZXdlc2VuIHdhciwgcGzDtnR6bGljaCAiCisiaW4gZGVyIG7DpGNoc3RlbiBWZXJzaW9uIHdpZWRlciBhdWZ0YXVjaHQsIHdpcmQgZXMgd2llZGVyIGF1ZiBkZW4gU3RhdHVzICIKKyLCu2V4aXN0aW5nwqsgKGV4aXN0aWVyZW5kKSBnZWJyYWNodCwgd29iZWkgZGllIG1pbmltYWxlIFZlcnNpb24gdW52ZXLDpG5kZXJ0ICIKKyJibGVpYnQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToxMjkKK21zZ2lkICIiCisiVGhpcyB0YWcgaXMgdXNlZnVsIGZvciBzeW1ib2xzIHdoaWNoIGFyZSBwcml2YXRlIHdoZXJlIHRoZWlyIGRpc2FwcGVhcmFuY2UgIgorImRvIG5vdCBjYXVzZSBBQkkgYnJlYWthZ2UuIEZvciBleGFtcGxlLCBtb3N0IG9mIEMrKyB0ZW1wbGF0ZSBpbnN0YW50aWF0aW9ucyAiCisiZmFsbCBpbnRvIHRoaXMgY2F0ZWdvcnkuIExpa2UgYW55IG90aGVyIHRhZywgdGhpcyBvbmUgbWF5IGFsc28gaGF2ZSBhbiAiCisiYXJiaXRyYXJ5IHZhbHVlOiBpdCBjb3VsZCBiZSB1c2VkIHRvIGluZGljYXRlIHdoeSB0aGUgc3ltYm9sIGlzIGNvbnNpZGVyZWQgIgorIm9wdGlvbmFsLiIKK21zZ3N0ciAiIgorIkRpZXNlIE1hcmtpZXJ1bmcgaXN0IGbDvHIgcHJpdmF0ZSBTeW1ib2xlIG7DvHR6bGljaCwgZGVyZW4gVmVyc2Nod2luZGVuIGtlaW5lbiAiCisiQUJJLUJydWNoIGF1c2zDtnN0LiBCZWlzcGllbHN3ZWlzZSBmYWxsZW4gZGllIG1laXN0ZW4gQysrLVRlbXBsYXRlLSIKKyJJbnN0YW56aWllcnVuZ2VuIGluIGRpZXNlIEthdGVnb3JpZS4gV2llIGplZGUgYW5kZXJlIE1hcmtpZXJ1bmcga2FubiBhdWNoICIKKyJkaWVzZSBlaW5lbiBiZWxpZWJpZ2VuIFdlcnQgaGFiZW46IHNpZSBrw7ZubnRlIGFuZ2ViZW4sIHdhcnVtIGRpZXNlcyBTeW1ib2wgIgorImFscyBvcHRpb25hbCBiZXRyYWNodGV0IHdpcmQuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTI5CisjLCBuby13cmFwCittc2dpZCAiQjxhcmNoPT5JPGFyY2hpdGVjdHVyZSBsaXN0PiIKK21zZ3N0ciAiQjxhcmNoPT5JPEFyY2hpdGVrdHVybGlzdGU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToxNDIKK21zZ2lkICIiCisiVGhpcyB0YWcgYWxsb3dzIG9uZSB0byByZXN0cmljdCB0aGUgc2V0IG9mIGFyY2hpdGVjdHVyZXMgd2hlcmUgdGhlIHN5bWJvbCBpcyAiCisic3VwcG9zZWQgdG8gZXhpc3QuIFdoZW4gdGhlIHN5bWJvbHMgbGlzdCBpcyB1cGRhdGVkIHdpdGggdGhlIHN5bWJvbHMgIgorImRpc2NvdmVyZWQgaW4gdGhlIGxpYnJhcnksIGFsbCBhcmNoLXNwZWNpZmljIHN5bWJvbHMgd2hpY2ggZG8gbm90IGNvbmNlcm4gIgorInRoZSBjdXJyZW50IGhvc3QgYXJjaGl0ZWN0dXJlIGFyZSB0cmVhdGVkIGFzIGlmIHRoZXkgZGlkIG5vdCBleGlzdC4gSWYgYW4gIgorImFyY2gtc3BlY2lmaWMgc3ltYm9sIG1hdGNoaW5nIHRoZSBjdXJyZW50IGhvc3QgYXJjaGl0ZWN0dXJlIGRvZXMgbm90IGV4aXN0ICIKKyJpbiB0aGUgbGlicmFyeSwgbm9ybWFsIHByb2NlZHVyZXMgZm9yIG1pc3Npbmcgc3ltYm9scyBhcHBseSBhbmQgaXQgbWF5IGNhdXNlICIKKyJCPGRwa2ctZ2Vuc3ltYm9scz4gdG8gZmFpbC4gT24gdGhlIG90aGVyIGhhbmQsIGlmIHRoZSBhcmNoLXNwZWNpZmljIHN5bWJvbCAiCisiaXMgZm91bmQgd2hlbiBpdCB3YXMgbm90IHN1cHBvc2VkIHRvIGV4aXN0IChiZWNhdXNlIHRoZSBjdXJyZW50IGhvc3QgIgorImFyY2hpdGVjdHVyZSBpcyBub3QgbGlzdGVkIGluIHRoZSB0YWcpLCBpdCBpcyBtYWRlIGFyY2ggbmV1dHJhbCAoaS5lLiB0aGUgIgorImFyY2ggdGFnIGlzIGRyb3BwZWQgYW5kIHRoZSBzeW1ib2wgd2lsbCBhcHBlYXIgaW4gdGhlIGRpZmYgZHVlIHRvIHRoaXMgIgorImNoYW5nZSksIGJ1dCBpdCBpcyBub3QgY29uc2lkZXJlZCBhcyBuZXcuIgorbXNnc3RyICIiCisiRGllIE1hcmtpZXJ1bmcgZXJsYXVidCBlcywgZGVuIFNhdHogYW4gQXJjaGl0ZWt0dXJlbiBlaW56dWdyZW56ZW4sIGF1ZiBkZW5lbiAiCisiZGFzIFN5bWJvbCBleGlzdGllcmVuIHNvbGx0ZS4gV2VubiBkaWUgU3ltYm9sbGlzdGUgbWl0IGRlbiBpbiBkZXIgQmlibGlvdGhlayAiCisiZW50ZGVja3RlbiBTeW1ib2xlbiBha3R1YWxpc2llcnQgd2lyZCwgd2VyZGVuIGFsbGUgYXJjaGl0ZWt0dXJzcGV6aWZpc2NoZW4gIgorIlN5bWJvbGUsIGRpZSBuaWNodCBhdWYgZGllIGFrdHVlbGxlIEhvc3QtQXJjaGl0ZWt0dXIgcGFzc2VuLCBzbyBiZWhhbmRlbHQsICIKKyJhbHMgb2Igc2llIG5pY2h0IGV4aXN0aWVydGVuLiBGYWxscyBlaW4gYXJjaGl0ZWt0dXJzcGV6aWZpc2NoZXMgU3ltYm9sLCBkYXMgIgorImF1ZiBkaWUgYWt0dWVsbGUgSG9zdC1BcmNoaXRla3R1ciBwYXNzdCwgaW4gZGVyIEJpYmxpb3RoZWsgbmljaHQgZXhpc3RpZXJ0LCAiCisid2VyZGVuIGRpZSBub3JtYWxlbiBSZWdlbG4gZsO8ciBmZWhsZW5kZSBTeW1ib2xlIGFuZ2V3YW5kdCB1bmQgQjxkcGtnLSIKKyJnZW5zeW1ib2xzPiBrw7ZubnRlIGRhZHVyY2ggZmVobHNjaGxhZ2VuLiBBdWYgZGVyIGFuZGVyZW4gU2VpdGUsIGZhbGxzIGRhcyAiCisiYXJjaGl0ZWt0dXJzcGV6aWZpc2NoZSBTeW1ib2wgZ2VmdW5kZW4gd3VyZGUsIHdlbm4gZXMgbmljaHQgZXhpc3RpZXJlbiAiCisic29sbHRlIChkYSBkaWUgYWt0dWVsbGUgSG9zdC1BcmNoaXRla3R1ciBuaWNodCBpbiBkZXIgTWFya2llcnVuZyBhdWZnZWbDvGhydCAiCisiaXN0KSwgd2lyZCBzaWUgYXJjaGl0ZWt0dXJuZXV0cmFsIGdlbWFjaHQgKGQuaC4gZGllIEFyY2hpdGVrdHVybWFya2llcnVuZyAiCisid2lyZCBlbnRmZXJudCB1bmQgZGFzIFN5bWJvbCB3aXJkIGltIERpZmYgYXVmZ3J1bmQgZGllc2VyIMOEbmRlcnVuZyAiCisiYXVmdGF1Y2hlbiksIGFiZXIgZXMgd2lyZCBuaWNodCBhbHMgbmV1IGJldHJhY2h0ZXQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToxNDgKK21zZ2lkICIiCisiV2hlbiBvcGVyYXRpbmcgaW4gdGhlIGRlZmF1bHQgbm9uLXRlbXBsYXRlIG1vZGUsIGFtb25nIGFyY2gtc3BlY2lmaWMgc3ltYm9scyAiCisib25seSB0aG9zZSB0aGF0IG1hdGNoIHRoZSBjdXJyZW50IGhvc3QgYXJjaGl0ZWN0dXJlIGFyZSB3cml0dGVuIHRvIHRoZSAiCisic3ltYm9scyBmaWxlLiBPbiB0aGUgY29udHJhcnksIGFsbCBhcmNoLXNwZWNpZmljIHN5bWJvbHMgKGluY2x1ZGluZyB0aG9zZSAiCisiZnJvbSBmb3JlaWduIGFyY2hlcykgYXJlIGFsd2F5cyB3cml0dGVuIHRvIHRoZSBzeW1ib2wgZmlsZSB3aGVuIG9wZXJhdGluZyBpbiAiCisidGVtcGxhdGUgbW9kZS4iCittc2dzdHIgIiIKKyJCZWltIEJldHJpZWIgaW0gc3RhbmRhcmRtw6TDn2lnZW4gbmljaHQtVm9ybGFnZW4tTW9kdXMgd2VyZGVuIHVudGVyIGRlbiAiCisiYXJjaGl0ZWt0dXJzcGV6aWZpc2NoZW4gU3ltYm9sZW4gbnVyIGRpZSBpbiBkaWUgU3ltYm9sZGF0ZWkgZ2VzY2hyaWViZW4sIGRpZSAiCisiYXVmIGRpZSBha3R1ZWxsZSBIb3N0LUFyY2hpdGVrdHVyIHBhc3Nlbi4gQXVmIGRlciBhbmRlcmVuIFNlaXRlIHdlcmRlbiBiZWltICIKKyJCZXRyaWViIGltIFZvcmxhZ2VubW9kdXMgYWxsZSBhcmNoaXRla3R1cnNwZXppZmlzY2hlbiBTeW1ib2xlIChkYXJ1bnRlciBhdWNoICIKKyJkaWUgdm9uIGZyZW1kZW4gQXJjaGl0ZWt0dXJlbikgaW1tZXIgaW4gZGllIFN5bWJvbGRhdGVpIGdlc2NocmllYmVuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTU0Cittc2dpZCAiIgorIlRoZSBmb3JtYXQgb2YgSTxhcmNoaXRlY3R1cmUgbGlzdD4gaXMgdGhlIHNhbWUgYXMgdGhlIG9uZSB1c2VkIGluIHRoZSAiCisiSTxCdWlsZC1EZXBlbmRzPiBmaWVsZCBvZiBJPGRlYmlhbi9jb250cm9sPiAoZXhjZXB0IHRoZSBlbmNsb3Npbmcgc3F1YXJlICIKKyJicmFja2V0cyBbXSkuIEZvciBleGFtcGxlLCB0aGUgZmlyc3Qgc3ltYm9sIGZyb20gdGhlIGxpc3QgYmVsb3cgd2lsbCBiZSAiCisiY29uc2lkZXJlZCBvbmx5IG9uIGFscGhhLCBhbWQ2NCwga2ZyZWVic2QtYW1kNjQgYW5kIGlhNjQgYXJjaGl0ZWN0dXJlcyB3aGlsZSAiCisidGhlIHNlY29uZCBvbmUgYW55d2hlcmUgZXhjZXB0IG9uIGFybWVsLiIKK21zZ3N0ciAiIgorIkRhcyBGb3JtYXQgZGVyIEk8QXJjaGl0ZWt0dXJsaXN0ZT4gaXN0IGRhcyBnbGVpY2hlIHdpZSBkYXMgZGVzIEZlbGRlcyAiCisiSTxCdWlsZC1EZXBlbmRzPiBpbiBJPGRlYmlhbi9jb250cm9sPiAoYXXDn2VyIGRlbiBlaW5zY2hsaWXDn2VuZGVuIGVja2lnZW4gIgorIktsYW1tZXJuIFtdKS4gQmVpc3BpZWxzd2Vpc2Ugd2lyZCBkYXMgZXJzdGUgU3ltYm9sIGF1cyBkZXIgZm9sZ2VuZGVuIExpc3RlICIKKyJudXIgYXVmIGRlbiBBcmNoaXRla3R1cmVuIEFscGhhLCBBbWQ2NCwga0ZyZWVic2QtYW1kNjQgdW5kIElhNjQgYmV0cmFjaHRldCwgIgorInfDpGhyZW5kIGRhcyB6d2VpdGUgw7xiZXJhbGwgYXXDn2VyIGF1ZiBBcm1lbCBiZXRyYWNodGV0IHdpcmQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToxNTcKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiIChhcmNoPWFscGhhIGFtZDY0IGtmcmVlYnNkLWFtZDY0IGlhNjQpYV82NGJpdF9zcGVjaWZpY19zeW1ib2xAQmFzZSAxLjBcbiIKKyIgKGFyY2g9IWFybWVsKXN5bWJvbF9hcm1lbF9kb2VzX25vdF9oYXZlQEJhc2UgMS4wXG4iCittc2dzdHIgIiIKKyIgKGFyY2g9YWxwaGEgYW1kNjQga2ZyZWVic2QtYW1kNjQgaWE2NCllaW5fNjRiaXRfc3BlemlmaXNjaGVzX1N5bWJvbEBCYXNlIDEuMFxuIgorIiAoYXJjaD0hYXJtZWwpU3ltYm9sX2hhdF9Bcm1lbF9uaWNodEBCYXNlIDEuMFxuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTU3CisjLCBuby13cmFwCittc2dpZCAiQjxpZ25vcmUtYmxhY2tsaXN0PiIKK21zZ3N0ciAiQjxpZ25vcmUtYmxhY2tsaXN0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTY1Cittc2dpZCAiIgorImRwa2ctZ2Vuc3ltYm9scyBoYXMgYW4gaW50ZXJuYWwgYmxhY2tsaXN0IG9mIHN5bWJvbHMgdGhhdCBzaG91bGQgbm90IGFwcGVhciAiCisiaW4gc3ltYm9scyBmaWxlcyBhcyB0aGV5IGFyZSB1c3VhbGx5IG9ubHkgc2lkZS1lZmZlY3RzIG9mIGltcGxlbWVudGF0aW9uICIKKyJkZXRhaWxzIG9mIHRoZSB0b29sY2hhaW4uIElmIGZvciBzb21lIHJlYXNvbiwgeW91IHJlYWxseSB3YW50IG9uZSBvZiB0aG9zZSAiCisic3ltYm9scyB0byBiZSBpbmNsdWRlZCBpbiB0aGUgc3ltYm9scyBmaWxlLCB5b3Ugc2hvdWxkIHRhZyB0aGUgc3ltYm9sIHdpdGggIgorIkI8aWdub3JlLWJsYWNrbGlzdD4uIEl0IGNhbiBiZSBuZWNlc3NhcnkgZm9yIHNvbWUgbG93IGxldmVsIHRvb2xjaGFpbiAiCisibGlicmFyaWVzIGxpa2UgbGliZ2NjLiIKK21zZ3N0ciAiIgorImRwa2ctZ2Vuc3ltYm9scyB2ZXJmw7xndCDDvGJlciBlaW5lIGludGVybmUgQXVzc2NodcOfbGlzdGUgKMK7YmxhY2tsaXN0wqspIHZvbiAiCisiU3ltYm9sZW4sIGRpZSBuaWNodCBpbiBTeW1ib2xkYXRlaWVuIGF1ZnRhdWNoZW4gc29sbHRlbiwgZGEgc2llICIKKyJub3JtYWxlcndlaXNlIG51ciBTZWl0ZW5lZmZla3RlIHZvbiBJbXBsZW1lbnRpZXJ1bmdzZGV0YWlscyBpbiBkZXIgIgorIldlcmt6ZXVna2V0dGUgZGFyc3RlbGxlbi4gRmFsbHMgU2llIGF1cyBpcmdlbmRlaW5lbSBHcnVuZCB3b2xsZW4sIGRhc3MgZGllc2UgIgorIlN5bWJvbGUgaW4gZGVyIFN5bWJvbGRhdGVpIGF1Zmdlbm9tbWVuIHdlcmRlbiwgc29sbHRlbiBTaWUgZGFzIFN5bWJvbCBtaXQgIgorIkI8aWdub3JlLWJsYWNrbGlzdD4ga2VubnplaWNobmVuLiBEaWVzIGthbm4gZsO8ciBlaW5pZ2UgZ3J1bmRsZWdlbmRlICIKKyJCaWJsaW90aGVrZW4gZGVyIFdlcmt6ZXVna2V0dGUgd2llIGxpYmdjYyBub3R3ZW5kaWcgc2Vpbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbnN5bWJvbHMuMToxNjUgZHBrZy1nZW5zeW1ib2xzLjE6MjAyCisjLCBuby13cmFwCittc2dpZCAiQjxjKys+IgorbXNnc3RyICJCPGMrKz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjE2OQorbXNnaWQgIiIKKyJEZW5vdGVzIEk8YysrPiBzeW1ib2wgcGF0dGVybi4gU2VlIEI8VXNpbmcgc3ltYm9sIHBhdHRlcm5zPiBzdWJzZWN0aW9uIGJlbG93LiIKK21zZ3N0ciAiIgorIkdpYnQgSTxjKys+LVN5bWJvbG11c3RlciBhbi4gTGVzZW4gU2llIGRlbiBVbnRlcmFic2Nobml0dCBCPFZlcndlbmR1bmcgdm9uICIKKyJTeW1ib2xtdXN0ZXI+IHVudGVuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjE2OSBkcGtnLWdlbnN5bWJvbHMuMToyMzMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHN5bXZlcj4iCittc2dzdHIgIkI8c3ltdmVyPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTczCittc2dpZCAiIgorIkRlbm90ZXMgSTxzeW12ZXI+IChzeW1ib2wgdmVyc2lvbikgc3ltYm9sIHBhdHRlcm4uIFNlZSBCPFVzaW5nIHN5bWJvbCAiCisicGF0dGVybnM+IHN1YnNlY3Rpb24gYmVsb3cuIgorbXNnc3RyICIiCisiR2lidCBJPHN5bXZlcj4gKFN5bWJvbHZlcnNpb24pLVN5bWJvbG11c3RlciBhbi4gTGVzZW4gU2llIGRlbiBVbnRlcmFic2Nobml0dCAiCisiQjxWZXJ3ZW5kdW5nIHZvbiBTeW1ib2xtdXN0ZXI+IHVudGVuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjE3MyBkcGtnLWdlbnN5bWJvbHMuMToyNTgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHJlZ2V4PiIKK21zZ3N0ciAiQjxyZWdleD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjE3NworbXNnaWQgIiIKKyJEZW5vdGVzIEk8cmVnZXg+IHN5bWJvbCBwYXR0ZXJuLiBTZWUgQjxVc2luZyBzeW1ib2wgcGF0dGVybnM+IHN1YnNlY3Rpb24gIgorImJlbG93LiIKK21zZ3N0ciAiIgorIkdpYnQgSTxyZWdleD4tU3ltYm9sbXVzdGVyIGFuLiBMZXNlbiBTaWUgZGVuIFVudGVyYWJzY2huaXR0IEI8VmVyd2VuZHVuZyB2b24gIgorIlN5bWJvbG11c3Rlcj4gdW50ZW4uIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1nZW5zeW1ib2xzLjE6MTc3CisjLCBuby13cmFwCittc2dpZCAiVXNpbmcgc3ltYm9sIHBhdHRlcm5zIgorbXNnc3RyICJWZXJ3ZW5kdW5nIHZvbiBTeW1ib2xtdXN0ZXJuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToxODUKK21zZ2lkICIiCisiVW5saWtlIGEgc3RhbmRhcmQgc3ltYm9sIHNwZWNpZmljYXRpb24sIGEgcGF0dGVybiBtYXkgY292ZXIgbXVsdGlwbGUgcmVhbCAiCisic3ltYm9scyBmcm9tIHRoZSBsaWJyYXJ5LiBCPGRwa2ctZ2Vuc3ltYm9scz4gd2lsbCBhdHRlbXB0IHRvIG1hdGNoIGVhY2ggIgorInBhdHRlcm4gYWdhaW5zdCBlYWNoIHJlYWwgc3ltYm9sIHRoYXQgZG9lcyBJPG5vdD4gaGF2ZSBhIHNwZWNpZmljIHN5bWJvbCAiCisiY291bnRlcnBhcnQgZGVmaW5lZCBpbiB0aGUgc3ltYm9sIGZpbGUuIFdoZW5ldmVyIHRoZSBmaXJzdCBtYXRjaGluZyBwYXR0ZXJuICIKKyJpcyBmb3VuZCwgYWxsIGl0cyB0YWdzIGFuZCBwcm9wZXJ0aWVzIHdpbGwgYmUgdXNlZCBhcyBhIGJhc2lzIHNwZWNpZmljYXRpb24gIgorIm9mIHRoZSBzeW1ib2wuIElmIG5vbmUgb2YgdGhlIHBhdHRlcm5zIG1hdGNoZXMsIHRoZSBzeW1ib2wgd2lsbCBiZSAiCisiY29uc2lkZXJlZCBhcyBuZXcuIgorbXNnc3RyICIiCisiQW5kZXJzIGFscyBkaWUgU3RhbmRhcmRzeW1ib2xzcGV6aWZpa2F0aW9uIGthbm4gZWluIE11c3RlciBtZWhyZXJlIHJlYWxlICIKKyJTeW1ib2xlIGF1cyBkZXIgQmlibGlvdGhlayBhYmRlY2tlbi4gQjxkcGtnLWdlbnN5bWJvbHM+IHdpcmQgdmVyc3VjaGVuLCAiCisiamVkZXMgTXVzdGVyIGF1ZiBqZWRlcyByZWFsZSBTeW1ib2wsIGbDvHIgZGFzIEk8a2Vpbj4gc3BlemlmaXNjaGVzICIKKyJTeW1ib2xnZWdlbnN0w7xjayBpbiBkZXIgU3ltYm9sZGF0ZWkgZGVmaW5pZXJ0IGlzdCwgenUgcGFzc2VuLiBXYW5uIGltbWVyIGRhcyAiCisiZXJzdGUgcGFzc2VuZGUgTXVzdGVyIGdlZnVuZGVuIHd1cmRlLCB3ZXJkZW4gYWxsZSBLZW5uemVpY2hudW5nZW4gdW5kICIKKyJFaWdlbnNjaGFmdGVuIGFscyBCYXNpc3NwZXppZmlrYXRpb24gZGVzIFN5bWJvbHMgdmVyd2FuZHQuIEZhbGxzIGtlaW5lcyBkZXIgIgorIk11c3RlciBwYXNzdCwgd2lyZCBkYXMgU3ltYm9sIGFscyBuZXUgYmV0cmFjaHRldC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjE5MworbXNnaWQgIiIKKyJBIHBhdHRlcm4gaXMgY29uc2lkZXJlZCBsb3N0IGlmIGl0IGRvZXMgbm90IG1hdGNoIGFueSBzeW1ib2wgaW4gdGhlIGxpYnJhcnkuICIKKyJCeSBkZWZhdWx0IHRoaXMgd2lsbCB0cmlnZ2VyIGEgQjxkcGtnLWdlbnN5bWJvbHM+IGZhaWx1cmUgdW5kZXIgSTwtYzE+IG9yICIKKyJoaWdoZXIgbGV2ZWwuIEhvd2V2ZXIsIGlmIHRoZSBmYWlsdXJlIGlzIHVuZGVzaXJlZCwgdGhlIHBhdHRlcm4gbWF5IGJlICIKKyJtYXJrZWQgd2l0aCB0aGUgSTxvcHRpb25hbD4gdGFnLiBUaGVuIGlmIHRoZSBwYXR0ZXJuIGRvZXMgbm90IG1hdGNoICIKKyJhbnl0aGluZywgaXQgd2lsbCBvbmx5IGFwcGVhciBpbiB0aGUgZGlmZiBhcyBNSVNTSU5HLiBNb3Jlb3ZlciwgbGlrZSBhbnkgIgorInN5bWJvbCwgdGhlIHBhdHRlcm4gbWF5IGJlIGxpbWl0ZWQgdG8gdGhlIHNwZWNpZmljIGFyY2hpdGVjdHVyZXMgd2l0aCB0aGUgIgorIkk8YXJjaD4gdGFnLiBQbGVhc2UgcmVmZXIgdG8gQjxTdGFuZGFyZCBzeW1ib2wgdGFncz4gc3Vic2VjdGlvbiBhYm92ZSBmb3IgIgorIm1vcmUgaW5mb3JtYXRpb24uIgorbXNnc3RyICIiCisiRWluIE11c3RlciB3aXJkIGFscyB2ZXJsb3JlbiBiZXRyYWNodGV0LCBmYWxscyBlcyBhdWYga2VpbiBTeW1ib2wgaW4gZGVyICIKKyJCaWJsaW90aGVrIHBhc3N0LiBTdGFuZGFyZG3DpMOfaWcgd2lyZCBkaWVzIGVpbiBWZXJzYWdlbiB2b24gQjxkcGtnLSIKKyJnZW5zeW1ib2xzPiBpbiBkZXIgU3R1ZmUgSTwtYzE+IG9kZXIgaMO2aGVyIGF1c2zDtnNlbi4gRmFsbHMgZGVyIEZlaGxzY2hsYWcgIgorImFsbGVyZGluZ3MgdW5lcnfDvG5zY2h0IGlzdCwga2FubiBkYXMgTXVzdGVyIG1pdCBkZXIgS2VubnplaWNobnVuZyAiCisiSTxvcHRpb25hbD4gbWFya2llcnQgd2VyZGVuLiBGYWxscyBkYXMgTXVzdGVyIGRhbm4gYXVmIG5pY2h0cyBwYXNzdCB3aXJkIGVzICIKKyJpbSBEaWZmIG51ciBhbHMgTUlTU0lORyAoZmVobGVuZCkgYXVmdGF1Y2hlbi4gRGVzd2VpdGVyZW4ga2FubiBkYXMgTXVzdGVyICIKKyJ3aWUgamVkZXMgU3ltYm9sIGF1ZiBkaWUgc3BlemllbGxlIEFyY2hpdGVrdHVyIG1pdCBkZXIgS2VubnplaWNobnVuZyBJPGFyY2g+ICIKKyJiZXNjaHLDpG5rdCB3ZXJkZW4uIEJpdHRlIGxlc2VuIFNpZSBkZW4gVW50ZXJhYnNjaG5pdHQgQjxTdGFuZGFyZCAiCisiU3ltYm9sa2VubnplaWNobnVuZ2VuPiBvYmVuIGbDvHIgd2VpdGVyZSBJbmZvcm1hdGlvbmVuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjAwCittc2dpZCAiIgorIlBhdHRlcm5zIGFyZSBhbiBleHRlbnNpb24gb2YgdGhlIEk8ZGViLXN5bWJvbHMoNSk+IGZvcm1hdCBoZW5jZSB0aGV5IGFyZSAiCisib25seSB2YWxpZCBpbiBzeW1ib2wgZmlsZSB0ZW1wbGF0ZXMuIFBhdHRlcm4gc3BlY2lmaWNhdGlvbiBzeW50YXggaXMgbm90IGFueSAiCisiZGlmZmVyZW50IGZyb20gdGhlIG9uZSBvZiBhIHNwZWNpZmljIHN5bWJvbC4gSG93ZXZlciwgc3ltYm9sIG5hbWUgcGFydCBvZiAiCisidGhlIHNwZWNpZmljYXRpb24gc2VydmVzIGFzIGFuIGV4cHJlc3Npb24gdG8gYmUgbWF0Y2hlZCBhZ2FpbnN0ICIKKyJJPG5hbWVAdmVyc2lvbj4gb2YgdGhlIHJlYWwgc3ltYm9sLiBJbiBvcmRlciB0byBkaXN0aW5ndWlzaCBhbW9uZyBkaWZmZXJlbnQgIgorInBhdHRlcm4gdHlwZXMsIGEgcGF0dGVybiB3aWxsIHR5cGljYWxseSBiZSB0YWdnZWQgd2l0aCBhIHNwZWNpYWwgdGFnLiIKK21zZ3N0ciAiIgorIk11c3RlciBzaW5kIGVpbmUgRXJ3ZWl0ZXJ1bmcgZGVzIEZvcm1hdHMgSTxkZWItc3ltYm9scyg1KT47IHNpZSBzaW5kIGRhaGVyICIKKyJudXIgaW4gU3ltYm9sZGF0ZWktVm9ybGFnZW4gZ8O8bHRpZy4gRGllIE11c3RlcnNwZXppZmlrYXRpb25zc3ludGF4ICIKKyJ1bnRlcnNjaGVpZGV0IHNpY2ggbmljaHQgdm9uIGRlciBlaW5lcyBzcGV6aWZpc2NoZW4gU3ltYm9scy4gQWxsZXJkaW5ncyAiCisiZGllbnQgZGVyIFN5bWJvbG5hbWVudGVpbCBkZXIgU3BlemlmaWthdGlvbiBhbHMgQXVzZHJ1Y2ssIGRlciBnZWdlbiAiCisiSTxOYW1lQFZlcnNpb24+IGVpbmVzIHJlYWxlbiBTeW1ib2xzIGdlcGFzc3Qgd2lyZC4gVW0gendpc2NoZW4gZGVuICIKKyJ2ZXJzY2hpZWRlbmVuIE11c3RlcnR5cGVuIHp1IHVudGVyc2NoZWlkZW4sIHdpcmQgZXMgdHlwaXNjaGVyd2Vpc2UgbWl0IGVpbmVyICIKKyJzcGV6aWVsbGVuIEtlbm56ZWljaG51bmcgZ2VrZW5uemVpY2huZXQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyMDIKK21zZ2lkICJBdCB0aGUgbW9tZW50LCBCPGRwa2ctZ2Vuc3ltYm9scz4gc3VwcG9ydHMgdGhyZWUgYmFzaWMgcGF0dGVybiB0eXBlczoiCittc2dzdHIgIkRlcnplaXQgdW50ZXJzdMO8dHp0IEI8ZHBrZy1nZW5zeW1ib2xzPiBkcmVpIGdydW5kbGVnZW5lIE11c3RlcnR5cGVuOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjE0Cittc2dpZCAiIgorIlRoaXMgcGF0dGVybiBpcyBkZW5vdGVkIGJ5IHRoZSBJPGMrKz4gdGFnLiBJdCBtYXRjaGVzIG9ubHkgQysrIHN5bWJvbHMgYnkgIgorInRoZWlyIGRlbWFuZ2xlZCBzeW1ib2wgbmFtZSAoYXMgZW1pdHRlZCBieSBCPGMrK2ZpbHQ+KDEpIHV0aWxpdHkpLiBUaGlzICIKKyJwYXR0ZXJuIGlzIHZlcnkgaGFuZHkgZm9yIG1hdGNoaW5nIHN5bWJvbHMgd2hpY2ggbWFuZ2xlZCBuYW1lcyBtaWdodCB2YXJ5ICIKKyJhY3Jvc3MgZGlmZmVyZW50IGFyY2hpdGVjdHVyZXMgd2hpbGUgdGhlaXIgZGVtYW5nbGVkIG5hbWVzIHJlbWFpbiB0aGUgc2FtZS4gIgorIk9uZSBncm91cCBvZiBzdWNoIHN5bWJvbHMgaXMgSTxub24tdmlydHVhbCB0aHVua3M+IHdoaWNoIGhhdmUgYXJjaGl0ZWN0dXJlICIKKyJzcGVjaWZpYyBvZmZzZXRzIGVtYmVkZGVkIGluIHRoZWlyIG1hbmdsZWQgbmFtZXMuIEEgY29tbW9uIGluc3RhbmNlIG9mIHRoaXMgIgorImNhc2UgaXMgYSB2aXJ0dWFsIGRlc3RydWN0b3Igd2hpY2ggdW5kZXIgZGlhbW9uZCBpbmhlcml0YW5jZSBuZWVkcyBhIG5vbi0iCisidmlydHVhbCB0aHVuayBzeW1ib2wuIEZvciBleGFtcGxlLCBldmVuIGlmIF9aVGhuOF9OM05TQjZDbGFzc0REMUV2QEJhc2Ugb24gIgorIjMyYml0IGFyY2hpdGVjdHVyZXMgd2lsbCBwcm9iYWJseSBiZSBfWlRobjE2X04zTlNCNkNsYXNzREQxRXZAQmFzZSBvbiA2NGJpdCAiCisib25lcywgaXQgY2FuIGJlIG1hdGNoZWQgd2l0aCBhIHNpbmdsZSBJPGMrKz4gcGF0dGVybjoiCittc2dzdHIgIiIKKyJEaWVzZXMgTXVzdGVyIHdpcmQgZHVyY2ggZGllIEtlbm56ZWljaG51bmcgSTxjKys+IHZlcnplaWNobmV0LiBFcyBwYXNzdCBudXIgIgorImF1ZiBkaWUgZW50d29ycmVuZW4gKMK7ZGVtYW5nbGVkwqspIFN5bWJvbG5hbWVuICh3aWUgc2llIHZvbSBIaWxmc3dlcmt6ZXVnIEI8YysiCisiK2ZpbHQ+KDEpIGF1c2dlZ2ViZW4gd2VyZGVuKS4gRGllc2VzIE11c3RlciBpc3Qgc2VociBoaWxmcmVpY2ggdW0gYXVmICIKKyJTeW1ib2xlIHp1IHBhc3NlbiwgYmVpIGRlbSBkaWUgdmVyd29ycmVuZW4gKMK7bWFuZ2xlZMKrKSBOYW1lbiBzaWNoIGF1ZiAiCisidmVyc2NoaWVkZW5lbiBBcmNoaXRla3R1cmVuIHVudGVyc2NoZWlkZW4gd8OkaHJlbmQgZGllIGVudHdvcnJlbmVuIGRpZSAiCisiZ2xlaWNoZW4gYmxlaWJlbi4gRWluZSBHcnVwcGUgc29sY2hlciBTeW1ib2xlIGlzdCBJPG5vbi12aXJ0dWFsIHRodW5rcz4sIGRpZSAiCisiZWluZW4gYXJjaGl0ZWt0dXJzcGV6aWZpc2NoZW4gVmVyc2F0eiBpbiBpaHJlbiB2ZXJ3b3JyZW5lbiBOYW1lbiBlaW5nZWJldHRldCAiCisiaGFiZW4uIEVpbmUgaMOkdWZpZ2UgSW5zdGFueiBkaWVzZXMgRmFsbGVzIGlzdCBlaW4gdmlydHVlbGxlciBEZXN0cnVrdHVyLCBkZXIgIgorInVudGVyIHJhdXRlbmbDtnJtaWdlciBWZXJlcmJ1bmcgZWluIG5pY2h0LXZpcnR1ZWxsZXMgVGh1bmstU3ltYm9sIGJlbsO2dGlndC4gIgorIlNlbGJzdCB3ZW5uIGJlaXNwaWVsc3dlaXNlIF9aVGhuOF9OM05TQjZDbGFzc0REMUV2QEJhc2UgYXVmIDMyIEJpdC0iCisiQXJjaGl0ZWt0dXJlbiBfWlRobjE2X04zTlNCNkNsYXNzREQxRXZAQmFzZSBhdWYgNjQgQml0LUFyY2hpdGVrdHVyZW4gaXN0LCAiCisia2FubiBlcyBtaXQgZWluZW0gZWluemlnZW4gSTxjKys+LU11c3RlciBnZXBhc3N0IHdlcmRlbjoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjIyMAorIywgbm8td3JhcAorbXNnaWQgIiIKKyJsaWJkdW1teS5zby4xIGxpYmR1bW15MSAjTUlOVkVSI1xuIgorIiBbLi4uXVxuIgorIiAoYysrKVwibm9uLXZpcnR1YWwgdGh1bmsgdG8gTlNCOjpDbGFzc0Q6On5DbGFzc0QoKUBCYXNlXCIgMS4wXG4iCisiIFsuLi5dXG4iCittc2dzdHIgIiIKKyJsaWJkdW1teS5zby4xIGxpYmR1bW15MSAjTUlOVkVSI1xuIgorIiBbLi4uXVxuIgorIiAoYysrKVwibm9uLXZpcnR1YWwgdGh1bmsgdG8gTlNCOjpDbGFzc0Q6On5DbGFzc0QoKUBCYXNlXCIgMS4wXG4iCisiIFsuLi5dXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjIyMgorbXNnaWQgIiIKKyJUaGUgZGVtYW5nbGVkIG5hbWUgYWJvdmUgY2FuIGJlIG9idGFpbmVkIGJ5IGV4ZWN1dGluZyB0aGUgZm9sbG93aW5nIGNvbW1hbmQ6IgorbXNnc3RyICIiCisiRGVyIGVudHdvcnJlbmUgTmFtZSBvYmVuIGthbm4gZHVyY2ggQXVzZsO8aHJ1bmcgZm9sZ2VuZGVuIEJlZmVobHMgZXJoYWx0ZW4gIgorIndlcmRlbjoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjIyNAorIywgbm8td3JhcAorbXNnaWQgIiAkIGVjaG8gJ19aVGhuOF9OM05TQjZDbGFzc0REMUV2QEJhc2UnIHwgYysrZmlsdFxuIgorbXNnc3RyICIgJCBlY2hvICdfWlRobjhfTjNOU0I2Q2xhc3NERDFFdkBCYXNlJyB8IGMrK2ZpbHRcbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjMyCittc2dpZCAiIgorIlBsZWFzZSBub3RlIHRoYXQgd2hpbGUgbWFuZ2xlZCBuYW1lIGlzIHVuaXF1ZSBpbiB0aGUgbGlicmFyeSBieSBkZWZpbml0aW9uLCAiCisidGhpcyBpcyBub3QgbmVjZXNzYXJpbHkgdHJ1ZSBmb3IgZGVtYW5nbGVkIG5hbWVzLiBBIGNvdXBsZSBvZiBkaXN0aW5jdCByZWFsICIKKyJzeW1ib2xzIG1heSBoYXZlIHRoZSBzYW1lIGRlbWFuZ2xlZCBuYW1lLiBGb3IgZXhhbXBsZSwgdGhhdCdzIHRoZSBjYXNlIHdpdGggIgorIm5vbi12aXJ0dWFsIHRodW5rIHN5bWJvbHMgaW4gY29tcGxleCBpbmhlcml0YW5jZSBjb25maWd1cmF0aW9ucyBvciB3aXRoIG1vc3QgIgorImNvbnN0cnVjdG9ycyBhbmQgZGVzdHJ1Y3RvcnMgKHNpbmNlIGcrKyB0eXBpY2FsbHkgZ2VuZXJhdGVzIHR3byByZWFsIHN5bWJvbHMgIgorImZvciB0aGVtKS4gSG93ZXZlciwgYXMgdGhlc2UgY29sbGlzaW9ucyBoYXBwZW4gb24gdGhlIEFCSSBsZXZlbCwgdGhleSBzaG91bGQgIgorIm5vdCBkZWdyYWRlIHF1YWxpdHkgb2YgdGhlIHN5bWJvbCBmaWxlLiIKK21zZ3N0ciAiIgorIkJpdHRlIGJlYWNodGVuIFNpZSwgZGFzcyBwZXIgRGVmaW5pdGlvbiB6d2FyIGRlciB2ZXJ3b3JyZW5lIE5hbWUgaW4gZGVyICIKKyJCaWJsaW90aGVrIGVpbmRldXRpZyBpc3QsIGRpZSBhYmVyIG5pY2h0IG5vdHdlbmRpZ2Vyd2Vpc2UgZsO8ciBkaWUgIgorImVudHdvcnJlbmVuIE5hbWVuIHp1dHJpZmZ0LiBFaW4gU2F0eiB2b24gdW50ZXJzY2hpZWRsaWNoZW4gcmVhbGVuIFN5bWJvbGVuICIKKyJrw7ZubmVuIGRlbiBnbGVpY2hlbiBlbnR3b3JyZW5lbiBOYW1lbiBoYWJlbi4gQmVpc3BpZWxzd2Vpc2UgaXN0IGRhcyBkZXIgRmFsbCAiCisiYmVpIG5pY2h0LXZpcnR1ZWxsZW4gVGh1bmstU3ltYm9sZW4gaW4ga29tcGxleGVuIFZlcmVyYnVuZ3Nrb25maWd1cmF0aW9uZW4gIgorIm9kZXIgYmVpIGRlbiBtZWlzdGVuIEtvbnN0cnVrdG9yZW4gdW5kIERlc3RydWt0b3JlbiAoZGEgZysrIHR5cGlzY2hlcndlaXNlICIKKyJ6d2VpIHJlYWxlIFN5bWJvbGUgZsO8ciBzaWUgZ2VuZXJpZXJ0KS4gRGEgZGllc2UgS29sbGlzaW9uZW4gYWJlciBhdWYgZGVtIEFCSS0iCisiTml2ZWF1IHBhc3NpZXJlbiwgc29sbHRlbiBzaWUgbmljaHQgZGllIFF1YWxpdMOkdCBkZXIgU3ltYm9sZGF0ZWkgcmVkdXppZXJlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjIzOQorbXNnaWQgIiIKKyJUaGlzIHBhdHRlcm4gaXMgZGVub3RlZCBieSB0aGUgSTxzeW12ZXI+IHRhZy4gV2VsbCBtYWludGFpbmVkIGxpYnJhcmllcyBoYXZlICIKKyJ2ZXJzaW9uZWQgc3ltYm9scyB3aGVyZSBlYWNoIHZlcnNpb24gY29ycmVzcG9uZHMgdG8gdGhlIHVwc3RyZWFtIHZlcnNpb24gIgorIndoZXJlIHRoZSBzeW1ib2wgZ290IGFkZGVkLiBJZiB0aGF0J3MgdGhlIGNhc2UsIHlvdSBjYW4gdXNlIGEgSTxzeW12ZXI+ICIKKyJwYXR0ZXJuIHRvIG1hdGNoIGFueSBzeW1ib2wgYXNzb2NpYXRlZCB0byB0aGUgc3BlY2lmaWMgdmVyc2lvbi4gRm9yIGV4YW1wbGU6IgorbXNnc3RyICIiCisiRGllc2VzIE11c3RlciB3aXJkIGR1cmNoIGRpZSBLZW5uemVpY2hudW5nIEk8c3ltdmVyPiB2ZXJ6ZWljaG5ldC4gR3V0ICIKKyJiZXRyZXV0ZSBCaWJsaW90aGVrZW4gdmVyZsO8Z2VuIMO8YmVyIHZlcnNpb25pZXJ0ZSBTeW1ib2xlLCB3b2JlaSBqZWRlIFZlcnNpb24gIgorInp1IGRlciBWZXJzaW9uIGRlciBPcmlnaW5hbGF1dG9yZW4gcGFzc3QsIGluIGRlciBkaWVzZXMgU3ltYm9sIGhpbnp1Z2Vmw7xndCAiCisid3VyZGUuIEZhbGxzIGRhcyBkZXIgRmFsbCBpc3QsIGvDtm5uZW4gU0llIGVpbiBJPHN5bXZlcj4tTXVzdGVyIHZlcndlbmRlbiwgdW0gIgorImF1ZiBqZWRlcyB6dSBlaW5lciBzcGV6aWZpemllcnRlbiBWZXJzaW9uIHp1Z2VvcmRuZXRlIFN5bWJvbCB6dSBwYXNzZW4uICIKKyJCZWlzcGllbDoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjI0NgorIywgbm8td3JhcAorbXNnaWQgIiIKKyJsaWJjLnNvLjYgbGliYzYgI01JTlZFUiNcbiIKKyIgKHN5bXZlcilHTElCQ18yLjAgMi4wXG4iCisiIFsuLi5dXG4iCisiIChzeW12ZXIpR0xJQkNfMi43IDIuN1xuIgorIiBhY2Nlc3NAR0xJQkNfMi4wIDIuMlxuIgorbXNnc3RyICIiCisibGliYy5zby42IGxpYmM2ICNNSU5WRVIjXG4iCisiIChzeW12ZXIpR0xJQkNfMi4wIDIuMFxuIgorIiBbLi4uXVxuIgorIiAoc3ltdmVyKUdMSUJDXzIuNyAyLjdcbiIKKyIgYWNjZXNzQEdMSUJDXzIuMCAyLjJcbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjUyCittc2dpZCAiIgorIkFsbCBzeW1ib2xzIGFzc29jaWF0ZWQgd2l0aCB2ZXJzaW9ucyBHTElCQ18yLjAgYW5kIEdMSUJDXzIuNyB3aWxsIGxlYWQgdG8gIgorIm1pbmltYWwgdmVyc2lvbiBvZiAyLjAgYW5kIDIuNyByZXNwZWN0aXZlbHkgd2l0aCB0aGUgZXhjZXB0aW9uIG9mIHRoZSBzeW1ib2wgIgorImFjY2Vzc0BHTElCQ18yLjAuIFRoZSBsYXR0ZXIgd2lsbCBsZWFkIHRvIGEgbWluaW1hbCBkZXBlbmRlbmN5IG9uIGxpYmM2ICIKKyJ2ZXJzaW9uIDIuMiBkZXNwaXRlIGJlaW5nIGluIHRoZSBzY29wZSBvZiB0aGUgXCIoc3ltdmVyKUdMSUJDXzIuMFwiIHBhdHRlcm4gIgorImJlY2F1c2Ugc3BlY2lmaWMgc3ltYm9scyB0YWtlIHByZWNlZGVuY2Ugb3ZlciBwYXR0ZXJucy4iCittc2dzdHIgIiIKKyJBbGxlIFZlcnNpb24gR0xJQkNfMi4wIHVuZCBHTElCQ18yLjcgenVnZW9yZG5ldGVuIFN5bWJvbGUgd2VyZGVuIHp1IGVpbmVyICIKKyJtaW5pbWFsZW4gVmVyc2lvbiAyLjAgYnp3LiAyLjcgZsO8aHJlbiwgd29iZWkgZGFzIFN5bWJvbCBhY2Nlc3NAR0xJQkNfMi4wIGRpZSAiCisiQXVzbmFobWUgZGFyc3RlbGx0LiBFcyB3aXJkIHp1IGVpbmVyIG1pbmltYWxlbiBBYmjDpG5naWdrZWl0IGF1ZiBsaWJjNiAiCisiVmVyc2lvbiAyLjIgZsO8aHJlbiwgb2J3b2hsIGVzIGltIEdlbHR1bmdzYmVyZWljaCBkZXMgTXVzdGVycyDCuyhzeW12ZXIpIgorIkdMSUJDXzIuMMKrIHBhc3N0LCBkYSBzcGV6aWVsbGUgU3ltYm9sZSB2b3IgTXVzdGVybiBWb3JyYW5nIGhhYmVuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjU3Cittc2dpZCAiIgorIlBsZWFzZSBub3RlIHRoYXQgd2hpbGUgb2xkIHN0eWxlIHdpbGRjYXJkIHBhdHRlcm5zIChkZW5vdGVkIGJ5IFwiKkB2ZXJzaW9uXCIgIgorImluIHRoZSBzeW1ib2wgbmFtZSBmaWVsZCkgYXJlIHN0aWxsIHN1cHBvcnRlZCwgdGhleSBoYXZlIGJlZW4gZGVwcmVjYXRlZCBieSAiCisibmV3IHN0eWxlIHN5bnRheCBcIihzeW12ZXJ8b3B0aW9uYWwpdmVyc2lvblwiLiBGb3IgZXhhbXBsZSwgXCIqQEdMSUJDXzIuMCAiCisiMi4wXCIgc2hvdWxkIGJlIHdyaXR0ZW4gYXMgXCIoc3ltdmVyfG9wdGlvbmFsKUdMSUJDXzIuMCAyLjBcIiBpZiB0aGUgc2FtZSAiCisiYmVoYXZpb3VyIGlzIG5lZWRlZC4iCittc2dzdHIgIiIKKyJCaXR0ZSBiZWFjaHRlbiBTaWUsIGRhc3MgUGxhdHpoYWx0ZXJtdXN0ZXIgaW0gYWx0ZW4gRm9ybWF0IChhbmdlemVpZ3QgZHVyY2ggIgorIsK7KkB2ZXJzaW9uwqsgaW0gU3ltYm9sbmFtZW5mZWxkKSB6d2FyIG5vY2ggdW50ZXJzdMO8dHp0IHdlcmRlbiwgc2llIGFiZXIgZHVyY2ggIgorImRpZSBTeW50YXggaW0gbmV1ZW4gRm9ybWF0IMK7KHN5bXZlcnxvcHRpb25hbCl2ZXJzaW9uwqsgYWJnZWzDtnN0IHd1cmRlbi4gIgorIkJlaXNwaWVsc3dlaXNlIHNvbGx0ZSDCuypAR0xJQkNfMi4wIDIuMMKrIGFscyDCuyhzeW12ZXJ8b3B0aW9uYWwpR0xJQkNfMi4wIDIuMMKrICIKKyJnZXNjaHJpZWJlbiB3ZXJkZW4sIGZhbGxzIGRhcyBnbGVpY2hlIFZlcmhhbHRlbiBiZW7DtnRpZ3Qgd2lyZC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjI2NQorbXNnaWQgIiIKKyJSZWd1bGFyIGV4cHJlc3Npb24gcGF0dGVybnMgYXJlIGRlbm90ZWQgYnkgdGhlIEk8cmVnZXg+IHRhZy4gVGhleSBtYXRjaCBieSAiCisidGhlIHBlcmwgcmVndWxhciBleHByZXNzaW9uIHNwZWNpZmllZCBpbiB0aGUgc3ltYm9sIG5hbWUgZmllbGQuIEEgcmVndWxhciAiCisiZXhwcmVzc2lvbiBpcyBtYXRjaGVkIGFzIGl0IGlzLCB0aGVyZWZvcmUgZG8gbm90IGZvcmdldCB0byBzdGFydCBpdCB3aXRoIHRoZSAiCisiSTxePiBjaGFyYWN0ZXIgb3IgaXQgbWF5IG1hdGNoIGFueSBwYXJ0IG9mIHRoZSByZWFsIHN5bWJvbCBJPG5hbWVAdmVyc2lvbj4gIgorInN0cmluZy4gRm9yIGV4YW1wbGU6IgorbXNnc3RyICIiCisiTXVzdGVyIG1pdCByZWd1bMOkcmVuIEF1c2Ryw7xja2VuIHdlcmRlbiBkdXJjaCBkaWUgS2VubnplaWNobnVuZyBJPHJlZ2V4PiAiCisidmVyemVpY2huZXQuIFNpZSBwYXNzZW4gYXVmIGRlbiByZWd1bMOkcmVuIEF1c2RydWNrIHZvbiBQZXJsLCBkZXIgaW0gIgorIlN5bWJvbG5hbWVuZmVsZCBhbmdlZ2ViZW4gaXN0LiBFaW4gcmVndWzDpHJlciBBdXNkcnVjayB3aXJkIHdpZSBlciBpc3QgIgorImdlcGFzc3QuIERlbmtlbiBTaWUgZGFoZXIgZGFyYW4sIGlobiBtaXQgZGVtIFplaWNoZW4gSTxePiB6dSBiZWdpbm5lbiwgZGEgZXIgIgorImFuc29uc3RlbiBhdWYgamVkZW4gVGVpbCBkZXIgWmVpY2hlbmtldHRlIGRlcyByZWFsZW4gU3ltYm9scyBJPG5hbWVAdmVyc2lvbj4gIgorInBhc3N0LiBCZWlzcGllbDoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjI3MAorIywgbm8td3JhcAorbXNnaWQgIiIKKyJsaWJkdW1teS5zby4xIGxpYmR1bW15MSAjTUlOVkVSI1xuIgorIiAocmVnZXgpXCJebXlzdGFja18uKkBCYXNlJFwiIDEuMFxuIgorIiAocmVnZXh8b3B0aW9uYWwpXCJwcml2YXRlXCIgMS4wXG4iCittc2dzdHIgIiIKKyJsaWJkdW1teS5zby4xIGxpYmR1bW15MSAjTUlOVkVSI1xuIgorIiAocmVnZXgpXCJebXlzdGFja18uKkBCYXNlJFwiIDEuMFxuIgorIiAocmVnZXh8b3B0aW9uYWwpXCJwcml2YXRlXCIgMS4wXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjI3NQorbXNnaWQgIiIKKyJTeW1ib2xzIGxpa2UgXCJteXN0YWNrX25ld0BCYXNlXCIsIFwibXlzdGFja19wdXNoQEJhc2VcIiwgXCJteXN0YWNrX3BvcEBCYXNlIgorIlwiIGV0Yy4gIHdpbGwgYmUgbWF0Y2hlZCBieSB0aGUgZmlyc3QgcGF0dGVybiB3aGlsZSBlLmcuICIKKyJcIm5nX215c3RhY2tfbmV3QEJhc2VcIiB3b24ndC4gIFRoZSBzZWNvbmQgcGF0dGVybiB3aWxsIG1hdGNoIGFsbCBzeW1ib2xzICIKKyJoYXZpbmcgdGhlIHN0cmluZyBcInByaXZhdGVcIiBpbiB0aGVpciBuYW1lcyBhbmQgbWF0Y2hlcyB3aWxsIGluaGVyaXQgIgorIkk8b3B0aW9uYWw+IHRhZyBmcm9tIHRoZSBwYXR0ZXJuLiIKK21zZ3N0ciAiIgorIlN5bWJvbGUgd2llIMK7bXlzdGFja19uZXdAQmFzZcKrLCDCu215c3RhY2tfcHVzaEBCYXNlwqssIMK7bXlzdGFja19wb3BAQmFzZcKrIHVzdy4gIgorIndlcmRlbiB2b20gZXJzdGVuIE11c3RlciBnZXBhc3N0LCB3w6RocmVuZCBkaWVzIHouQi4gZsO8ciAiCisiwrtuZ19teXN0YWNrX25ld0BCYXNlwqsgbmljaHQgZGVyIEZhbGwgaXN0LiBEYXMgendlaXRlIE11c3RlciB3aXJkIGF1ZiBhbGxlICIKKyJTeW1ib2xlLCBkaWUgZGllIFplaWNoZW5rZXR0ZSDCu3ByaXZhdGXCqyBpbiBpaHJlbiBOYW1lbiBlbnRoYWx0ZW4sIHBhc3NlbiB1bmQgIgorImRpZSBnZXBhc3N0ZW4gU3ltYm9sZSBlcmJlbiBkaWUgS2VubnplaWNobnVuZyBJPG9wdGlvbmFsPiB2b20gTXVzdGVyLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjgwCittc2dpZCAiIgorIkJhc2ljIHBhdHRlcm5zIGxpc3RlZCBhYm92ZSBjYW4gYmUgY29tYmluZWQgd2hlcmUgaXQgbWFrZXMgc2Vuc2UuIEluIHRoYXQgIgorImNhc2UsIHRoZXkgYXJlIHByb2Nlc3NlZCBpbiB0aGUgb3JkZXIgaW4gd2hpY2ggdGhlIHRhZ3MgYXJlIHNwZWNpZmllZC4gRm9yICIKKyJleGFtcGxlLCBib3RoIgorbXNnc3RyICIiCisiRGllIG9iZW4gYXVmZ2Vmw7xocnRlbiBncnVuZGxlZ2VuZGVuIE11c3RlciBrw7ZubmVuIC0gd28gZXMgU2lubiBlcmdpYnQgLSAiCisia29tYmluaWVydCB3ZXJkZW4uIEluIGRpZXNlbSBGYWxsIHdlcmRlbiBzaWUgaW4gZGVyIFJlaWhlbmZvbGdlIHZlcmFyYmVpdGV0LCAiCisiaW4gZGVyIGRpZSBLZW5uemVpY2hudW5nZW4gYW5nZWdlYmVuIHNpbmQuIEltIEJlaXNwaWVsIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyODMKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiIChjKyt8cmVnZXgpXCJeTlNBOjpDbGFzc0E6OlByaXZhdGU6OnByaXZtZXRob2RcXGVkXFxlKGludFxcZSlAQmFzZVwiIDEuMFxuIgorIiAocmVnZXh8YysrKU4zTlNBNkNsYXNzQTdQcml2YXRlMTFwcml2bWV0aG9kXFxlZEVpQEJhc2UgMS4wXG4iCittc2dzdHIgIiIKKyIgKGMrK3xyZWdleClcIl5OU0E6OkNsYXNzQTo6UHJpdmF0ZTo6cHJpdm1ldGhvZFxcZWRcXGUoaW50XFxlKUBCYXNlXCIgMS4wXG4iCisiIChyZWdleHxjKyspTjNOU0E2Q2xhc3NBN1ByaXZhdGUxMXByaXZtZXRob2RcXGVkRWlAQmFzZSAxLjBcbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjkzCittc2dpZCAiIgorIndpbGwgbWF0Y2ggc3ltYm9scyBcIl9aTjNOU0E2Q2xhc3NBN1ByaXZhdGUxMXByaXZtZXRob2QxRWlAQmFzZVwiIGFuZCAiCisiXCJfWk4zTlNBNkNsYXNzQTdQcml2YXRlMTFwcml2bWV0aG9kMkVpQEJhc2VcIi4gV2hlbiBtYXRjaGluZyB0aGUgZmlyc3QgIgorInBhdHRlcm4sIHRoZSByYXcgc3ltYm9sIGlzIGZpcnN0IGRlbWFuZ2xlZCBhcyBDKysgc3ltYm9sLCB0aGVuIHRoZSBkZW1hbmdsZWQgIgorIm5hbWUgaXMgbWF0Y2hlZCBhZ2FpbnN0IHRoZSByZWd1bGFyIGV4cHJlc3Npb24uIE9uIHRoZSBvdGhlciBoYW5kLCB3aGVuICIKKyJtYXRjaGluZyB0aGUgc2Vjb25kIHBhdHRlcm4sIHJlZ3VsYXIgZXhwcmVzc2lvbiBpcyBtYXRjaGVkIGFnYWluc3QgdGhlIHJhdyAiCisic3ltYm9sIG5hbWUsIHRoZW4gdGhlIHN5bWJvbCBpcyB0ZXN0ZWQgaWYgaXQgaXMgQysrIG9uZSBieSBhdHRlbXB0aW5nIHRvICIKKyJkZW1hbmdsZSBpdC4gQSBmYWlsdXJlIG9mIGFueSBiYXNpYyBwYXR0ZXJuIHdpbGwgcmVzdWx0IGluIHRoZSBmYWlsdXJlIG9mICIKKyJ0aGUgd2hvbGUgcGF0dGVybi4gIFRoZXJlZm9yZSwgZm9yIGV4YW1wbGUsICIKKyJcIl9fTjNOU0E2Q2xhc3NBN1ByaXZhdGUxMXByaXZtZXRob2RcXGVkRWlAQmFzZVwiIHdpbGwgbm90IG1hdGNoIGVpdGhlciBvZiAiCisidGhlIHBhdHRlcm5zIGJlY2F1c2UgaXQgaXMgbm90IGEgdmFsaWQgQysrIHN5bWJvbC4iCittc2dzdHIgIiIKKyJ3ZXJkZW4gZGllIFN5bWJvbGUgwrtfWk4zTlNBNkNsYXNzQTdQcml2YXRlMTFwcml2bWV0aG9kMUVpQEJhc2XCqyB1bmQgIgorIsK7X1pOM05TQTZDbGFzc0E3UHJpdmF0ZTExcHJpdm1ldGhvZDJFaUBCYXNlwqsgZ2VwYXNzdC4gQmVpbSBQYXNzZW4gZGVyIGVyc3RlbiAiCisiTXVzdGVycyB3aXJkIGRhcyByb2hlIFN5bWJvbCBlcnN0IGFscyBDKystU3ltYm9sIGVudHdvcnJlbiwgZGFubiB3aXJkIGRlciAiCisiZW50d29ycmVuZGUgTmFtZSBnZWdlbiBkZW4gcmVndWzDpHJlbiBBdXNkcnVjayBnZXBhc3N0LiBBdWYgZGVyIGFuZGVyZW4gU2VpdGUgIgorIndpcmQgYmVpbSBQYXNzZW4gZGVzIHp3ZWl0ZW4gTXVzdGVycyBkZXIgcmVndWzDpHJlIEF1c2RydWNrIGdlZ2VuIGRlbiByb2hlbiAiCisiU3ltYm9sbmFtZW4gZ2VwYXNzdCwgZGFubiB3aXJkIGRhcyBTeW1ib2wgw7xiZXJwcsO8ZnQsIG9iIGVzIGVpbiBDKystU3ltYm9sICIKKyJpc3QsIGluZGVtIGRhcyBFbnR3aXJyZW4gdmVyc3VjaHQgd2lyZC4gRWluIEZlaGxzY2hsYWcgZWluZXMgZWluZmFjaGVuICIKKyJNdXN0ZXJzIHdpcmQgenVtIEZlaGxzY2hsYWcgZGVzIGdlc2FtdGVuIE11c3RlcnMgZsO8aHJlbi4gRGFoZXIgd2lyZCAiCisiYmVpc3BpZWxzd2Vpc2UgwrtfX04zTlNBNkNsYXNzQTdQcml2YXRlMTFwcml2bWV0aG9kXFxlZEVpQEJhc2XCqyBrZWluZXMgZGVyICIKKyJNdXN0ZXIgcGFzc2VuLCBkYSBlcyBrZWluIGfDvGx0aWdlcyBDKystU3ltYm9sIGlzdC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjI5OQorbXNnaWQgIiIKKyJJbiBnZW5lcmFsLCBhbGwgcGF0dGVybnMgYXJlIGRpdmlkZWQgaW50byB0d28gZ3JvdXBzOiBhbGlhc2VzIChiYXNpYyBJPGMrKz4gIgorImFuZCBJPHN5bXZlcj4pIGFuZCBnZW5lcmljIHBhdHRlcm5zIChJPHJlZ2V4PiwgYWxsIGNvbWJpbmF0aW9ucyBvZiBtdWx0aXBsZSAiCisiYmFzaWMgcGF0dGVybnMpLiBNYXRjaGluZyBvZiBiYXNpYyBhbGlhcy1iYXNlZCBwYXR0ZXJucyBpcyBmYXN0IChPKDEpKSAgIgorIndoaWxlIGdlbmVyaWMgcGF0dGVybnMgYXJlIE8oTikgKE4gLSBnZW5lcmljIHBhdHRlcm4gY291bnQpIGZvciBlYWNoICIKKyJzeW1ib2wuICBUaGVyZWZvcmUsIGl0IGlzIHJlY29tbWVuZGVkIG5vdCB0byBvdmVydXNlIGdlbmVyaWMgcGF0dGVybnMuIgorbXNnc3RyICIiCisiSW0gQWxsZ2VtZWluZW4gd2VyZGVuIGRpZSBNdXN0ZXIgaW4gendlaSBLYXRlZ29yaWVuIGVpbmdldGVpbHQ6IEFsaWFzZSAiCisiKGdydW5kbGVnZW5kZSBJPGMrKz4tIHVuZCBJPHN5bXZlcj4tTXVzdGVyKSB1bmQgZ2VuZXJpc2NoZSBNdXN0ZXIgKEk8cmVnZXg+ICIKKyJ1bmQgYWxsZSBLb21iaW5hdGlvbmVuIGdydW5kbGVnZW5kZXIgTXVzdGVyKS4gUGFzc2VuIHZvbiBncnVuZGxlZ2VuZGVuIGFsaWFzLSIKKyJiYXNpZXJlbmRlbiBNdXN0ZXJuIGlzdCBzY2huZWxsIChPKDEpKSwgd8OkaHJlbmQgZ2VuZXJpc2NoZSBNdXN0ZXIgTyhOKSAiCisiKHdvYmVpIE4gZGllIEFuemFobCBkZXIgZ2VuZXJpc2NoZW4gTXVzdGVyIGlzdCkgZsO8ciBqZWRlcyBTeW1ib2wgaXN0LiBEYWhlciAiCisid2lyZCBlbXBmb2hsZW4sIGdlbmVyaXNjaGUgTXVzdGVyIG5pY2h0IHp1IHZpZWwgenUgdmVyd2VuZGVuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzA2Cittc2dpZCAiIgorIldoZW4gbXVsdGlwbGUgcGF0dGVybnMgbWF0Y2ggdGhlIHNhbWUgcmVhbCBzeW1ib2wsIGFsaWFzZXMgKGZpcnN0IEk8YysrPiwgIgorInRoZW4gSTxzeW12ZXI+KSBhcmUgcHJlZmVycmVkIG92ZXIgZ2VuZXJpYyBwYXR0ZXJucy4gR2VuZXJpYyBwYXR0ZXJucyBhcmUgIgorIm1hdGNoZWQgaW4gdGhlIG9yZGVyIHRoZXkgYXJlIGZvdW5kIGluIHRoZSBzeW1ib2wgZmlsZSB0ZW1wbGF0ZSB1bnRpbCB0aGUgIgorImZpcnN0IHN1Y2Nlc3MuICBQbGVhc2Ugbm90ZSwgaG93ZXZlciwgdGhhdCBtYW51YWwgcmVvcmRlcmluZyBvZiB0ZW1wbGF0ZSAiCisiZmlsZSBlbnRyaWVzIGlzIG5vdCByZWNvbW1lbmRlZCBiZWNhdXNlIEI8ZHBrZy1nZW5zeW1ib2xzPiBnZW5lcmF0ZXMgZGlmZnMgIgorImJhc2VkIG9uIHRoZSBhbHBoYW51bWVyaWNhbCBvcmRlciBvZiB0aGVpciBuYW1lcy4iCittc2dzdHIgIiIKKyJXZW5uIG1laHJlcmUgTXVzdGVyIGF1ZiBkYXMgZ2xlaWNoZSBTeW1ib2wgcGFzc2VuLCB3ZXJkZW4gQWxpYXNlICh6dWVyc3QgSTxjKyIKKyIrPiwgZGFubiBJPHN5bXZlcj4pIGdlZ2Vuw7xiZXIgZGVuIGdlbmVyaXNjaGVuIE11c3Rlcm4gYmV2b3J6dWd0LiBHZW5lcmlzY2hlICIKKyJNdXN0ZXIgd2VyZGVuIGluIGRlciBSZWloZW5mb2xnZSwgaW4gZGVyIHNpZSBpbiBkZXIgU3ltYm9sZGF0ZWl2b3JsYWdlICIKKyJnZWZ1bmRlbiB3ZXJkZW4sIGdlcGFzc3QsIGJpcyB6dW0gZXJzdGVuIEVyZm9sZy4gQmVhY2h0ZW4gU2llIGFiZXIsIGRhc3MgZGFzICIKKyJtYW51ZWxsZSBBbm9yZG5lbiBkZXIgVm9ybGFnZW5kYXRlaWVpbnRyw6RnZSBuaWNodCBlbXBmb2hsZW4gd2lyZCwgZGEgQjxkcGtnLSIKKyJnZW5zeW1ib2xzPiBEaWZmcyBiYXNpZXJlbmQgYXVmIGRlciBhbHBoYW51bWVyaXNjaGVuIFJlaWhlbmZvbGdlIGlocmVyIE5hbWVuICIKKyJlcnN0ZWxsdC4iCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLWdlbnN5bWJvbHMuMTozMDYKKyMsIG5vLXdyYXAKK21zZ2lkICJVc2luZyBpbmNsdWRlcyIKK21zZ3N0ciAiSW5jbHVkZXMgdmVyd2VuZGVuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozMTEKK21zZ2lkICIiCisiV2hlbiB0aGUgc2V0IG9mIGV4cG9ydGVkIHN5bWJvbHMgZGlmZmVyIGJldHdlZW4gYXJjaGl0ZWN0dXJlcywgaXQgbWF5IGJlY29tZSAiCisiaW5lZmZpY2llbnQgdG8gdXNlIGEgc2luZ2xlIHN5bWJvbCBmaWxlLiBJbiB0aG9zZSBjYXNlcywgYW4gaW5jbHVkZSAiCisiZGlyZWN0aXZlIG1heSBwcm92ZSB0byBiZSB1c2VmdWwgaW4gYSBjb3VwbGUgb2Ygd2F5czoiCittc2dzdHIgIiIKKyJXZW5uIGRlciBTYXR6IGRlciBleHBvcnRpZXJ0ZW4gU3ltYm9sZW4gc2ljaCB6d2lzY2hlbiBBcmNoaXRla3R1cmVuICIKKyJ1bnRlcnNjaGVpZGV0LCBrYW5uIGVzIGluZWZmaXppZW50IHdlcmRlbiwgZWluZSBlaW56aWdlIFN5bWJvbGRhdGVpIHp1ICIKKyJ2ZXJ3ZW5kZW4uIEluIGRpZXNlbiBGw6RsbGVuIGthbm4gc2ljaCBlaW5lIEluY2x1ZGUtRGlyZWt0aXZlIGluIGVpbmVyIFJlaWhlICIKKyJ2b24gQXJ0ZW4gYWxzIG7DvHR6bGljaCBlcndlaXNlbjoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjMxNQorbXNnaWQgIiIKKyJZb3UgY2FuIGZhY3Rvcml6ZSB0aGUgY29tbW9uIHBhcnQgaW4gc29tZSBleHRlcm5hbCBmaWxlIGFuZCBpbmNsdWRlIHRoYXQgIgorImZpbGUgaW4geW91ciBJPHBhY2thZ2U+LnN5bWJvbHMuSTxhcmNoPiBmaWxlIGJ5IHVzaW5nIGFuIGluY2x1ZGUgZGlyZWN0aXZlICIKKyJsaWtlIHRoaXM6IgorbXNnc3RyICIiCisiU2llIGvDtm5uZW4gZGVuIGdlbWVpbnNhbWVuIFRlaWwgaW4gZWluZSBleHRlcm5lIERhdGVpIGF1c2xhZ2VybiB1bmQgZGllc2UgIgorIkRhdGVpIGRhbm4gaW4gSWhyZSBJPFBha2V0Pi5zeW1ib2xzLkk8QXJjaD4tRGF0ZWkgbWl0IGVpbmVyIGluY2x1ZGUtIgorIkRpcmVrdGl2ZSB3aWUgZm9sZ3QgZWluYmluZGVuOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzE3Cittc2dpZCAiI2luY2x1ZGUgXCJJPHBhY2thZ2VzPi5zeW1ib2xzLmNvbW1vblwiIgorbXNnc3RyICIjaW5jbHVkZSBcIkk8UGFrZXRlPi5zeW1ib2xzLmNvbW1vblwiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozMTkKK21zZ2lkICJUaGUgaW5jbHVkZSBkaXJlY3RpdmUgbWF5IGFsc28gYmUgdGFnZ2VkIGxpa2UgYW55IHN5bWJvbDoiCittc2dzdHIgIiIKKyJEaWUgSW5jbHVkZS1EaXJla3RpdmUga2FubiBhdWNoIHdpZSBqZWRlcyBTeW1ib2wgZ2VrZW5uemVpY2huZXQgd2VyZGVuOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzIxCittc2dpZCAiKHRhZ3wuLnx0YWdOKSNpbmNsdWRlIFwiZmlsZS10by1pbmNsdWRlXCIiCittc2dzdHIgIihLZW5uemVpY2hlbnwuLi58S2VubnplaWNoZW5OKSNpbmNsdWRlIFwiZWluenViaW5kZW5kZS1EYXRlaVwiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozMjYKK21zZ2lkICIiCisiQXMgYSByZXN1bHQsIGFsbCBzeW1ib2xzIGluY2x1ZGVkIGZyb20gSTxmaWxlLXRvLWluY2x1ZGU+IHdpbGwgYmUgY29uc2lkZXJlZCAiCisidG8gYmUgdGFnZ2VkIHdpdGggSTx0YWc+IC4uIEk8dGFnTj4gYnkgZGVmYXVsdC4gWW91IGNhbiB1c2UgdGhpcyBmZWF0dXJlIHRvICIKKyJjcmVhdGUgYSBjb21tb24gSTxwYWNrYWdlPi5zeW1ib2xzIGZpbGUgd2hpY2ggaW5jbHVkZXMgYXJjaGl0ZWN0dXJlIHNwZWNpZmljICIKKyJzeW1ib2wgZmlsZXM6IgorbXNnc3RyICIiCisiQWxzIEVyZ2VibmlzIHdlcmRlbiBhbGxlIFN5bWJvbGUgYXVzIEk8ZWluenViaW5kZW5kZS1EYXRlaT4gc3RhbmRhcmRtw6TDn2lnICIKKyJhbHMgbWl0IEk8S2VubnplaWNoZW4+IC4uLiBJPEtlbm56ZWljaGVuTj4gZ2VrZW5uemVpY2huZXQgYmV0cmFjaHRldC4gU2llICIKKyJrw7ZubmVuIGRpZXNlIEZ1bmt0aW9uYWxpdMOkdCBiZW51dHplbiwgdW0gZWluZSBnZW1laW5zYW1lIERhdGVpIEk8UGFrZXQ+LiIKKyJzeW1ib2xzIHp1IGVyc3RlbGxlbiwgZGllIGFyY2hpdGVrdHVyc3BlemlmaXNjaGUgU3ltYm9sZGF0ZWllbiBlaW5iaW5kZXQ6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozMzEKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiICBjb21tb25fc3ltYm9sMUBCYXNlIDEuMFxuIgorIiAoYXJjaD1hbWQ2NCBpYTY0IGFscGhhKSNpbmNsdWRlIFwicGFja2FnZS5zeW1ib2xzLjY0Yml0XCJcbiIKKyIgKGFyY2g9IWFtZDY0ICFpYTY0ICFhbHBoYSkjaW5jbHVkZSBcInBhY2thZ2Uuc3ltYm9scy4zMmJpdFwiXG4iCisiICBjb21tb25fc3ltYm9sMkBCYXNlIDEuMFxuIgorbXNnc3RyICIiCisiICBjb21tb25fc3ltYm9sMUBCYXNlIDEuMFxuIgorIiAoYXJjaD1hbWQ2NCBpYTY0IGFscGhhKSNpbmNsdWRlIFwiUGFrZXQuc3ltYm9scy42NGJpdFwiXG4iCisiIChhcmNoPSFhbWQ2NCAhaWE2NCAhYWxwaGEpI2luY2x1ZGUgXCJQYWtldC5zeW1ib2xzLjMyYml0XCJcbiIKKyIgIGNvbW1vbl9zeW1ib2wyQEJhc2UgMS4wXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM0MAorbXNnaWQgIiIKKyJUaGUgc3ltYm9scyBmaWxlcyBhcmUgcmVhZCBsaW5lIGJ5IGxpbmUsIGFuZCBpbmNsdWRlIGRpcmVjdGl2ZXMgYXJlICIKKyJwcm9jZXNzZWQgYXMgc29vbiBhcyB0aGV5IGFyZSBlbmNvdW50ZXJlZC4gVGhpcyBtZWFucyB0aGF0IHRoZSBjb250ZW50IG9mICIKKyJ0aGUgaW5jbHVkZWQgZmlsZSBjYW4gb3ZlcnJpZGUgYW55IGNvbnRlbnQgdGhhdCBhcHBlYXJlZCBiZWZvcmUgdGhlIGluY2x1ZGUgIgorImRpcmVjdGl2ZSBhbmQgdGhhdCBhbnkgY29udGVudCBhZnRlciB0aGUgZGlyZWN0aXZlIGNhbiBvdmVycmlkZSBhbnl0aGluZyAiCisiY29udGFpbmVkIGluIHRoZSBpbmNsdWRlZCBmaWxlLiBBbnkgc3ltYm9sIChvciBldmVuIGFub3RoZXIgI2luY2x1ZGUgIgorImRpcmVjdGl2ZSkgaW4gdGhlIGluY2x1ZGVkIGZpbGUgY2FuIHNwZWNpZnkgYWRkaXRpb25hbCB0YWdzIG9yIG92ZXJyaWRlICIKKyJ2YWx1ZXMgb2YgdGhlIGluaGVyaXRlZCB0YWdzIGluIGl0cyB0YWcgc3BlY2lmaWNhdGlvbi4gSG93ZXZlciwgdGhlcmUgaXMgbm8gIgorIndheSBmb3IgdGhlIHN5bWJvbCB0byByZW1vdmUgYW55IG9mIHRoZSBpbmhlcml0ZWQgdGFncy4iCittc2dzdHIgIiIKKyJEaWUgU3ltYm9sZGF0ZWllbiB3ZXJkZW4gWmVpbGUgZsO8ciBaZWlsZSBnZWxlc2VuIHVuZCBpbmNsdWRlLURpcmVrdGl2ZW4gIgorIndlcmRlbiBiZWFyYmVpdGV0LCBzb2JhbGQgc2llIGVya2FubnQgd2VyZGVuLiBEYXMgYmVkZXV0ZXQsIGRhc3MgZGVyIEluaGFsdCAiCisiZGVyIEluY2x1ZGUtRGF0ZWkgamVkZW4gSW5oYWx0IMO8YmVyc2NocmVpYmVuIGthbm4sIGRlciB2b3IgZGVyIEluY2x1ZGUtIgorIkRpcmVrdGl2ZSBhdWZnZXRhdWNodCBpc3QgdW5kIEluaGFsdCBuYWNoIGRlciBEaXJla3RpdmUgYWxsZXMgYXVzIGRlciAiCisiSW5jbHVkZS1EYXRlaSDDvGJlcnNjaHJlaWJlbiBrYW5uLiBKZWRlcyBTeW1ib2wgKG9kZXIgc29nYXIgd2VpdGVyZSAjaW5jbHVkZS0iCisiRGlyZWt0aXZlbikgaW4gZGVyIEluY2x1ZGUtRGF0ZWkga2FubiB6dXPDpHR6bGljaGUgS2VubnplaWNobnVuZ2VuICIKKyJzcGV6aWZpemllcmVuIG9kZXIgV2VydGUgZGVyIHZlcmVyYnRnZW4gS2VubnplaWNobnVuZ2VuIGluIGlocmVyICIKKyJLZW5uemVpY2hudW5nc3NwZXppZmlrYXRpb24gw7xiZXJzY2hyZWliZW4uIEFsbGVyZGluZ3MgZ2lidCBlcyBrZWluZSAiCisiTcO2Z2xpY2hrZWl0IGbDvHIgZWluIFN5bWJvbCwgZGllIGVyZXJidGVuIEtlbm56ZWljaG51bmdlbiB6dSDDvGJlcnNjaHJlaWJlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM0NQorbXNnaWQgIiIKKyJBbiBpbmNsdWRlZCBmaWxlIGNhbiByZXBlYXQgdGhlIGhlYWRlciBsaW5lIGNvbnRhaW5pbmcgdGhlIFNPTkFNRSBvZiB0aGUgIgorImxpYnJhcnkuIEluIHRoYXQgY2FzZSwgaXQgb3ZlcnJpZGVzIGFueSBoZWFkZXIgbGluZSBwcmV2aW91c2x5IHJlYWQuICAiCisiSG93ZXZlciwgaW4gZ2VuZXJhbCBpdCdzIGJlc3QgdG8gYXZvaWQgZHVwbGljYXRpbmcgaGVhZGVyIGxpbmVzLiBPbmUgd2F5IHRvICIKKyJkbyBpdCBpcyB0aGUgZm9sbG93aW5nOiIKK21zZ3N0ciAiIgorIkVpbmUgZWluZ2VidW5kZW5lIERhdGVpIGthbm4gZGllIEtvcGZ6ZWlsZSB3aWVkZXJob2xlbiwgZGllIGRlbiBTT05BTUUgZGVyICIKKyJCaWJsaW90aGVrIGVudGjDpGx0LiBJbiBkaWVzZW0gRmFsbCDDvGJlcnNjaHJlaWJ0IHNpZSBqZWRlIHZvcmhlciBnZWxlc2VuZSAiCisiS29wZnplaWxlLiBBbGxlcmRpbmdzIGlzdCBlcyBpbSBBbGxnZW1laW5lbiBhbSBCZXN0ZW4sIGRpZSBXaWVkZXJob2x1bmcgdm9uICIKKyJLb3BmemVpbGVuIHp1IHZlcm1laWRlbi4gRWluIFdlZyBkaWVzIHp1IGVycmVpY2hlbiwgaXN0IHdpZSBmb2xndDoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM0OAorIywgbm8td3JhcAorbXNnaWQgIiIKKyIjaW5jbHVkZSBcImxpYnNvbWV0aGluZzEuc3ltYm9scy5jb21tb25cIlxuIgorIiBhcmNoX3NwZWNpZmljX3N5bWJvbEBCYXNlIDEuMFxuIgorbXNnc3RyICIiCisiI2luY2x1ZGUgXCJsaWJpcmdlbmR3YXMxLnN5bWJvbHMuY29tbW9uXCJcbiIKKyIgYXJjaF9zcGV6aWZpc2NoZXNfU3ltYm9sQEJhc2UgMS4wXG4iCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLWdlbnN5bWJvbHMuMTozNDgKKyMsIG5vLXdyYXAKK21zZ2lkICJHb29kIGxpYnJhcnkgbWFuYWdlbWVudCIKK21zZ3N0ciAiR3V0ZSBCaWJsaW90aGVrc3ZlcndhbHR1bmciCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM1MQorbXNnaWQgIkEgd2VsbC1tYWludGFpbmVkIGxpYnJhcnkgaGFzIHRoZSBmb2xsb3dpbmcgZmVhdHVyZXM6IgorbXNnc3RyICJFaW5lIGd1dCB2ZXJ3YWx0ZXRlIEJpYmxpb3RoZWsgaGF0IGRpZSBmb2xnZW5kZW4gRWlnZW5zY2hhZnRlbjoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM1NQorbXNnaWQgIiIKKyJpdHMgQVBJIGlzIHN0YWJsZSAocHVibGljIHN5bWJvbHMgYXJlIG5ldmVyIGRyb3BwZWQsIG9ubHkgbmV3IHB1YmxpYyBzeW1ib2xzICIKKyJhcmUgYWRkZWQpIGFuZCBjaGFuZ2VzIGluIGluY29tcGF0aWJsZSB3YXlzIG9ubHkgd2hlbiB0aGUgU09OQU1FIGNoYW5nZXM7IgorbXNnc3RyICIiCisic2VpbmUgQVBJIGlzdCBzdGFiaWwgKMO2ZmZlbnRsaWNoZSBTeW1ib2xlIGVudGZhbGxlbiBuaWUsIG51ciBuZXVlICIKKyLDtmZmZW50bGljaGUgU3ltYm9sZSB3ZXJkZW4gaGluenVnZWbDvGd0KSB1bmQgaW5rb21wYXRpYmxlIMOEbmRlcnVuZ2VuIGVyZm9sZ2VuICIKKyJudXIsIHdlbm4gc2ljaCBkZXIgU09OQU1FIMOkbmRlcnQsIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozNTgKK21zZ2lkICIiCisiaWRlYWxseSwgaXQgdXNlcyBzeW1ib2wgdmVyc2lvbmluZyB0byBhY2hpZXZlIEFCSSBzdGFiaWxpdHkgZGVzcGl0ZSBpbnRlcm5hbCAiCisiY2hhbmdlcyBhbmQgQVBJIGV4dGVuc2lvbjsiCittc2dzdHIgIiIKKyJpZGVhbGVyd2Vpc2UgdmVyd2VuZGV0IHNpZSBTeW1ib2x2ZXJzaW9uaWVydW5nLCB1bSBBQkktU3RhYmlsaXTDpHQgdHJvdHogIgorImludGVybmVyIMOEbmRlcnVuZ2VuIHVuZCBBUEktRXJ3ZWl0ZXJ1bmdlbiB6dSBlcnJlaWNoZW4sIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozNjEKK21zZ2lkICIiCisiaXQgZG9lc24ndCBleHBvcnQgcHJpdmF0ZSBzeW1ib2xzIChzdWNoIHN5bWJvbHMgY2FuIGJlIHRhZ2dlZCBvcHRpb25hbCBhcyAiCisid29ya2Fyb3VuZCkuIgorbXNnc3RyICIiCisic2llIGV4cG9ydGllcnQgbmllIHByaXZhdGUgU3ltYm9sZSAoYWxzIEhpbGZzbMO2c3VuZyBrw7ZubmVuIGRpZXNlIGFscyAiCisib3B0aW9uYWwgZ2VrZW5uemVpY2huZXQgd2VyZGVuKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM2OQorbXNnaWQgIiIKKyJXaGlsZSBtYWludGFpbmluZyB0aGUgc3ltYm9scyBmaWxlLCBpdCdzIGVhc3kgdG8gbm90aWNlIGFwcGVhcmFuY2UgYW5kICIKKyJkaXNhcHBlYXJhbmNlIG9mIHN5bWJvbHMuIEJ1dCBpdCdzIG1vcmUgZGlmZmljdWx0IHRvIGNhdGNoIGluY29tcGF0aWJsZSBBUEkgIgorImFuZCBBQkkgY2hhbmdlLiBUaHVzIHRoZSBtYWludGFpbmVyIHNob3VsZCByZWFkIHRob3JvdWdobHkgdGhlIHVwc3RyZWFtICIKKyJjaGFuZ2Vsb2cgbG9va2luZyBmb3IgY2FzZXMgd2hlcmUgdGhlIHJ1bGVzIG9mIGdvb2QgbGlicmFyeSBtYW5hZ2VtZW50IGhhdmUgIgorImJlZW4gYnJva2VuLiBJZiBwb3RlbnRpYWwgcHJvYmxlbXMgYXJlIGRpc2NvdmVyZWQsIHRoZSB1cHN0cmVhbSBhdXRob3IgIgorInNob3VsZCBiZSBub3RpZmllZCBhcyBhbiB1cHN0cmVhbSBmaXggaXMgYWx3YXlzIGJldHRlciB0aGFuIGEgRGViaWFuICIKKyJzcGVjaWZpYyB3b3JrLWFyb3VuZC4iCittc2dzdHIgIiIKKyJCZWkgZGVyIFZlcndhbHR1bmcgZGVyIFN5bWJvbGRhdGVpIGthbm4gZGFzIEF1ZnRhdWNoZW4gdW5kIFZlcnNjaHdpbmRlbiB2b24gIgorIlN5bWJvbGVuIGxlaWNodCBiZW1lcmt0IHdlcmRlbi4gRXMgaXN0IGFiZXIgc2Nod2llcmlnZXIsIGlua29tcGF0YmlsZSBBUEktICIKKyJ1bmQgQUJJLcOEbmRlcnVuZ2VuIHp1IGJlbWVya2VuLiBEYWhlciBzb2xsdGUgZGVyIEJldHJldWVyIGludGVuc2l2IGRpZSAiCisiQ2hhbmdlbG9nLUVpbnRyw6RnZSBkdXJjaHNjaGF1ZW4gdW5kIG5hY2ggRsOkbGxlbiBzdWNoZW4sIGluIGRlbmVuIGRpZSBSZWdlbG4gIgorImRlciBndXRlbiBCaWJsaW90aGVrc3ZlcndhbHR1bmcgZ2Vicm9jaGVuIHd1cmRlbi4gRmFsbHMgbcO2Z2xpY2hlIFByb2JsZW1lICIKKyJlbnRkZWNrdCB3dXJkZW4sIHNvbGx0ZW4gZGVyIE9yaWdpbmFsYXV0b3IgaW5mb3JtaWVydCB3ZXJkZW4sIGRhIGVpbmUgIgorIktvcnJla3R1ciB2b20gT3JpZ2luYWxhdXRvciBpbW1lciBiZXNzZXIgYWxzIGVpbmUgRGViaWFuLXNwZXppZmlzY2hlICIKKyJIaWxmc2zDtnN1bmcgaXN0LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM3MAorIywgbm8td3JhcAorbXNnaWQgIkI8LVA+STxwYWNrYWdlLWJ1aWxkLWRpcj4iCittc2dzdHIgIkI8LVA+STxQYWtldGJhdXZlcnplaWNobmlzPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzczCittc2dpZCAiU2NhbiBJPHBhY2thZ2UtYnVpbGQtZGlyPiBpbnN0ZWFkIG9mIGRlYmlhbi90bXAuIgorbXNnc3RyICJTdWNoZSBuYWNoIEk8UGFrZXRiYXV2ZXJ6ZWljaG5pcz4gc3RhdHQgbmFjaCBkZWJpYW4vdG1wLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6Mzc3Cittc2dpZCAiIgorIkRlZmluZSB0aGUgcGFja2FnZSBuYW1lLiBSZXF1aXJlZCBpZiBtb3JlIHRoYW4gb25lIGJpbmFyeSBwYWNrYWdlIGlzIGxpc3RlZCAiCisiaW4gZGViaWFuL2NvbnRyb2wgKG9yIGlmIHRoZXJlJ3Mgbm8gZGViaWFuL2NvbnRyb2wgZmlsZSkuIgorbXNnc3RyICIiCisiRGVmaW5pZXJ0IGRlbiBQYWtldG5hbWVuLiBCZW7DtnRpZ3QsIGZhbGxzIG1laHIgYWxzIGVpbiBiaW7DpHJlcyBQYWtldCBpbiAiCisiZGViaWFuL2NvbnRyb2wgYXVmZ2Vmw7xocnQgaXN0IChvZGVyIGZhbGxzIGVzIGtlaW5lIERhdGVpIGRlYmlhbi9jb250cm9sICIKKyJnaWJ0KS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM4MQorbXNnaWQgIiIKKyJEZWZpbmUgdGhlIHBhY2thZ2UgdmVyc2lvbi4gRGVmYXVsdHMgdG8gdGhlIHZlcnNpb24gZXh0cmFjdGVkIGZyb20gZGViaWFuLyIKKyJjaGFuZ2Vsb2cuIFJlcXVpcmVkIGlmIGNhbGxlZCBvdXRzaWRlIG9mIGEgc291cmNlIHBhY2thZ2UgdHJlZS4iCittc2dzdHIgIiIKKyJEZWZpbmllcnQgZGllIFBha2V0dmVyc2lvbi4gU3RhbmRhcmRtw6TDn2lnIHdpcmQgZWllIFZlcnNpb24gYXVzIGRlYmlhbi8iCisiY2hhbmdlbG9nIGF1c2dlbGVzZW4uIEJlbsO2dGlndCwgZmFsbHMgZGVyIEF1ZnJ1ZiBhdcOfZXJoYWxiIGRlcyAiCisiUXVlbGxwYWtldGJhdW1zIGVyZm9sZ3QuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzgxCisjLCBuby13cmFwCittc2dpZCAiQjwtZT5JPGxpYnJhcnktZmlsZT4iCittc2dzdHIgIkI8LWU+STxCaWJsaW90aGVrc2RhdGVpPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6Mzg3Cittc2dpZCAiIgorIk9ubHkgYW5hbHl6ZSBsaWJyYXJpZXMgZXhwbGljaXRseSBsaXN0ZWQgaW5zdGVhZCBvZiBmaW5kaW5nIGFsbCBwdWJsaWMgIgorImxpYnJhcmllcy4gWW91IGNhbiB1c2UgYSByZWd1bGFyIGV4cHJlc3Npb24gaW4gSTxsaWJyYXJ5LWZpbGU+IHRvIG1hdGNoICIKKyJtdWx0aXBsZSBsaWJyYXJpZXMgd2l0aCBhIHNpbmdsZSBhcmd1bWVudCAob3RoZXJ3aXNlIHlvdSBuZWVkIG11bHRpcGxlIEI8LSIKKyJlPikuIgorbXNnc3RyICIiCisiTnVyIGRpZSBleHBsaXppdCBhdWZnZWbDvGhydGVuIEJpYmxpb3RoZWtlbiB1bnRlcnN1Y2hlbiBzdGF0dCBhbGxlICIKKyLDtmZmZW50bGljaGVuIEJpYmxpb3RoZWtlbiB6dSBmaW5kZW4uIFNpZSBrw7ZubmVuIGVpbmVuIHJlZ3Vsw6RyZW4gQXVzZHJ1Y2sgaW4gIgorIkk8QmlibGlvdGhla3NkYXRlaT4gdmVyd2VuZGVuLCB1bSBtZWhyZXJlIEJpYmxpb3RoZWtlbiBtaXQgZWluZW0gZWluemVsbmVuICIKKyJBcmd1bWVudCB6dSBwYXNzZW4gKGFuZGVybmZhbGxzIGJlbsO2dGlnZW4gU2llIG1laHJlcmUgQjwtZT4pLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM4NworIywgbm8td3JhcAorbXNnaWQgIkI8LUk+STxmaWxlbmFtZT4iCittc2dzdHIgIkI8LUk+STxEYXRlaW5hbWU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozOTEKK21zZ2lkICIiCisiVXNlIEk8ZmlsZW5hbWU+IGFzIHJlZmVyZW5jZSBmaWxlIHRvIGdlbmVyYXRlIHRoZSBzeW1ib2xzIGZpbGUgdGhhdCBpcyAiCisiaW50ZWdyYXRlZCBpbiB0aGUgcGFja2FnZSBpdHNlbGYuIgorbXNnc3RyICIiCisiVmVyd2VuZGUgSTxEYXRlaW5hbWU+IGFscyBSZWZlcmVuemRhdGVpLCB1bSBkaWUgU3ltYm9sZGF0ZWkgenUgZXJzdGVsbGVuLCAiCisiZGllIGRhbm4gaW0gUGFrZXQgc2VsYnN0IGludGVncmllcnQgd2lyZC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM5NQorbXNnaWQgIiIKKyJQcmludCB0aGUgZ2VuZXJhdGVkIHN5bWJvbHMgZmlsZSB0byBzdGFuZGFyZCBvdXRwdXQsIHJhdGhlciB0aGFuIGJlaW5nICIKKyJzdG9yZWQgaW4gdGhlIHBhY2thZ2UgYnVpbGQgdHJlZS4iCittc2dzdHIgIiIKKyJHZWJlIGRpZSBlcnN0ZWxsdGUgU3ltYm9sZGF0ZWkgaW4gZGllIFN0YW5kYXJkYXVzZ2FiZSBhdXMgc3RhdHQgc2llIGltICIKKyJQYWtldGJhdWJhdW0genUgc3BlaWNoZXJuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM5NQorIywgbm8td3JhcAorbXNnaWQgIkI8LU8+STxmaWxlbmFtZT4iCittc2dzdHIgIkI8LU8+STxEYXRlaW5hbWU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0MDEKK21zZ2lkICIiCisiU3RvcmUgdGhlIGdlbmVyYXRlZCBzeW1ib2xzIGZpbGUgYXMgSTxmaWxlbmFtZT4uIElmIEk8ZmlsZW5hbWU+IGlzIHByZS0iCisiZXhpc3RpbmcsIGl0cyBjb250ZW50IGlzIHVzZWQgYXMgYmFzaXMgZm9yIHRoZSBnZW5lcmF0ZWQgc3ltYm9scyBmaWxlLiAgWW91ICIKKyJjYW4gdXNlIHRoaXMgZmVhdHVyZSB0byB1cGRhdGUgYSBzeW1ib2xzIGZpbGUgc28gdGhhdCBpdCBtYXRjaGVzIGEgbmV3ZXIgIgorInVwc3RyZWFtIHZlcnNpb24gb2YgeW91ciBsaWJyYXJ5LiIKK21zZ3N0ciAiIgorIlNwZWljaGVyZSBkaWUgZXJzdGVsbHRlIFN5bWJvbGRhdGVpIHVudGVyIEk8RGF0ZWluYW1lPi4gRmFsbHMgSTxEYXRlaW5hbWU+ICIKKyJiZXJlaXRzIGV4aXN0aWVydCwgd2lyZCBkZXJlbiBJbmhhbHQgYWxzIEdydW5kbGFnZSBmw7xyIGRpZSBlcnN0ZWxsdGUgIgorIlN5bWJvbGRhdGVpIHZlcndhbmR0LiBTaWUga8O2bm5lbiBkaWVzZSBGdW5rdGlvbmFsaXTDpHQgYmVudXR6ZW4sIHVtIGVpbmUgIgorIlN5bWJvbGRhdGVpIHp1IGFrdHVhbGlzaWVyZW4sIHNvIGRhc3Mgc2llIHp1IGVpbmVyIG5ldWVyZW4gVmVyc2lvbiBkZXIgIgorIk9yaWdpbmFsYXV0b3JlbiBJaHJlciBCaWJsaW90aGVrIHBhc3N0LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQwMQorIywgbm8td3JhcAorbXNnaWQgIkI8LXQ+IgorbXNnc3RyICJCPC10PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDEwCittc2dpZCAiIgorIldyaXRlIHRoZSBzeW1ib2wgZmlsZSBpbiB0ZW1wbGF0ZSBtb2RlIHJhdGhlciB0aGFuIHRoZSBmb3JtYXQgY29tcGF0aWJsZSAiCisid2l0aCBJPGRlYi1zeW1ib2xzKDUpPi4gVGhlIG1haW4gZGlmZmVyZW5jZSBpcyB0aGF0IGluIHRoZSB0ZW1wbGF0ZSBtb2RlICIKKyJzeW1ib2wgbmFtZXMgYW5kIHRhZ3MgYXJlIHdyaXR0ZW4gaW4gdGhlaXIgb3JpZ2luYWwgZm9ybSBjb250cmFyeSB0byB0aGUgIgorInBvc3QtcHJvY2Vzc2VkIHN5bWJvbCBuYW1lcyB3aXRoIHRhZ3Mgc3RyaXBwZWQgaW4gdGhlIGNvbXBhdGliaWxpdHkgbW9kZS4gICIKKyJNb3Jlb3Zlciwgc29tZSBzeW1ib2xzIG1pZ2h0IGJlIG9taXR0ZWQgd2hlbiB3cml0aW5nIGEgc3RhbmRhcmQgSTxkZWItc3ltYm9scyIKKyIoNSk+IGZpbGUgKGFjY29yZGluZyB0byB0aGUgdGFnIHByb2Nlc3NpbmcgcnVsZXMpIHdoaWxlIGFsbCBzeW1ib2xzIGFyZSAiCisiYWx3YXlzIHdyaXR0ZW4gdG8gdGhlIHN5bWJvbCBmaWxlIHRlbXBsYXRlLiIKK21zZ3N0ciAiIgorIlNjaHJlaWJlIGRpZSBTeW1ib2xkYXRlaSBpbSBWb3JsYWdlbm1vZHVzIHN0YXR0IGltIHp1IEk8ZGViLXN5bWJvbHMoNSk+ICIKKyJrb21wYXRpYmxlbiBGb3JtYXQuIERlciBIYXVwdHVudGVyc2NoaWVkIGJlc3RlaHQgZGFyaW4sIGRhc3MgaW0gIgorIlZvcmxhZ2VubW9kdXMgZGllIFN5bWJvbG5hbWVuIHVuZCBLZW5uemVpY2hudW5nZW4gaW4gaWhyZXIgT3JpZ2luYWxmb3JtICIKKyJnZXNjaHJpZWJlbiB3ZXJkZW4sIGltIEdlZ2Vuc2F0eiB6dSBkZW4gdmVyYXJiZWl0ZXRlbiBTeW1ib2xuYW1lbiBtaXQgIgorImVudGZlcm5lbiBLZW5uemVpY2hudW5nZW4gaW0gS29tcGF0aWJpbGl0w6R0c21vZHVzLiBEZXN3ZWl0ZXJlbiBrw7ZubnRlbiAiCisiZWluaWdlIFN5bWJvbGUgYmVpbSBTY2hyZWliZW4gZWluZXIgU3RhbmRhcmQgSTxkZWItc3ltYm9scyg1KT4tRGF0ZWkgIgorImVudGZlcm50IHdlcmRlbiAoZ2Vtw6TDnyBkZXIgVmVyYXJiZWl0dW5nc3JlZ2VsbiBmw7xyIEtlbm56ZWljaGVuKSwgd8OkaHJlbmQgaW4gIgorImRlciBTeW1ib2xkYXRlaXZvcmxhZ2UgaW1tZXIgYWxsZSBTeW1ib2xlIGdlc2NocmllYmVuIHdlcmRlbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0MTAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1jPkk8WzAtNF0+IgorbXNnc3RyICJCPC1jPkk8WzAtNF0+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0MTgKK21zZ2lkICIiCisiRGVmaW5lIHRoZSBjaGVja3MgdG8gZG8gd2hlbiBjb21wYXJpbmcgdGhlIGdlbmVyYXRlZCBzeW1ib2xzIGZpbGUgd2l0aCB0aGUgIgorInRlbXBsYXRlIGZpbGUgdXNlZCBhcyBzdGFydGluZyBwb2ludC4gQnkgZGVmYXVsdCB0aGUgbGV2ZWwgaXMgMS4gSW5jcmVhc2luZyAiCisibGV2ZWxzIGRvIG1vcmUgY2hlY2tzIGFuZCBpbmNsdWRlIGFsbCBjaGVja3Mgb2YgbG93ZXIgbGV2ZWxzLiBMZXZlbCAwIG5ldmVyICIKKyJmYWlscy4gTGV2ZWwgMSBmYWlscyBpZiBzb21lIHN5bWJvbHMgaGF2ZSBkaXNhcHBlYXJlZC4gTGV2ZWwgMiBmYWlscyBpZiBzb21lICIKKyJuZXcgc3ltYm9scyBoYXZlIGJlZW4gaW50cm9kdWNlZC4gTGV2ZWwgMyBmYWlscyBpZiBzb21lIGxpYnJhcmllcyBoYXZlICIKKyJkaXNhcHBlYXJlZC4gTGV2ZWwgNCBmYWlscyBpZiBzb21lIGxpYnJhcmllcyBoYXZlIGJlZW4gaW50cm9kdWNlZC4iCittc2dzdHIgIiIKKyJEZWZpbmllcnQgZGllIFByw7xmdW5nZW4sIGRpZSBiZWltIFZlcmdsZWljaCBkZXIgZXJzdGVsbHRlbiBTeW1ib2xkYXRlaSBtaXQgIgorImRlciBWb3JsYWdlbmRhdGVpIGFscyBTdGFydHB1bmt0IGVyZm9sZ2VuIHNvbGxlbi4gU3RhbmRhcmRhcmRzdHVmZSBpc3QgMS4gIgorIlp1bmVobWVuZGUgU3R1ZmVuIGbDvGhyZW4gbWVociBQcsO8ZnVuZ2VuIGR1cmNoIHVuZCBlbnRoYWx0ZW4gYWxsZSBQcsO8ZnVuZ2VuICIKKyJkZXIgbmllZHJpZ2VyZW4gU3R1ZmVuLiBTdHVmZSAwIHNjaGzDpGd0IG5pZSBmZWhsLiBTdHVmZSAxIHNjaGzDpGd0IGZlaGwsIHdlbm4gIgorImVpbmlnZSBTeW1ib2xlIHZlcnNjaHd1bmRlbiBzaW5kLiBTdHVmZSAyIHNjaGzDpGd0IGZlaGx0LCBmYWxscyBlaW5pZ2UgbmV1ZSAiCisiU3ltYm9sZSBlaW5nZWbDvGhydCB3dXJkZW4uIFN0dWZlIDMgc2NobMOkZ3QgZmVobCwgZmFsbHMgZWluaWdlIEJpYmxpb3RoZWtlbiAiCisidmVyc2Nod3VuZGVuIHNpbmQuIFN0dWZlIDQgc2NobMOkZ3QgZmVobCwgZmFsbHMgZWluaWdlIEJpYmxpb3RoZWtlbiAiCisiaGluenVnZWtvbW1lbiBzaW5kLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDIxCittc2dpZCAiIgorIlRoaXMgdmFsdWUgY2FuIGJlIG92ZXJyaWRkZW4gYnkgdGhlIGVudmlyb25tZW50IHZhcmlhYmxlICIKKyJEUEtHX0dFTlNZTUJPTFNfQ0hFQ0tfTEVWRUwuIgorbXNnc3RyICIiCisiRGllc2VyIFdlcnQga2FubiB2b24gZGVyIFVtZ2VidW5nc3ZhcmlhYmxlbiBEUEtHX0dFTlNZTUJPTFNfQ0hFQ0tfTEVWRUwgIgorIsO8YmVyc2NocmllYmVuIHdlcmRlbi4iCisKKyMgb2RlciAtPiB1bmQgdm9yIFplaWxlICJrZWluZSBXYXJudW5nIgorIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDI3Cittc2dpZCAiIgorIktlZXAgcXVpZXQgYW5kIG5ldmVyIGdlbmVyYXRlIGEgZGlmZiBiZXR3ZWVuIGdlbmVyYXRlZCBzeW1ib2xzIGZpbGUgYW5kIHRoZSAiCisidGVtcGxhdGUgZmlsZSB1c2VkIGFzIHN0YXJ0aW5nIHBvaW50IG9yIHNob3cgYW55IHdhcm5pbmdzIGFib3V0IG5ldy9sb3N0ICIKKyJsaWJyYXJpZXMgb3IgbmV3L2xvc3Qgc3ltYm9scy4gVGhpcyBvcHRpb24gb25seSBkaXNhYmxlcyBpbmZvcm1hdGlvbmFsICIKKyJvdXRwdXQgYnV0IG5vdCB0aGUgY2hlY2tzIHRoZW1zZWx2ZXMgKHNlZSBJPC1jPiBvcHRpb24pLiIKK21zZ3N0ciAiIgorIlJ1aGlnIHZlcmhhbHRlbiB1bmQgbmllIGVpbmVuIERpZmYgendpc2NoZW4gZGVyIGVyc3RlbGx0ZW4gU3ltYm9sZGF0ZWkgdW5kICIKKyJkZXIgYWxzIFN0YXJ0cHVua3QgdmVyd2FuZHRlbiBWb3JsYWdlbmRhdGVpIGVyc3RlbGxlbiBvZGVyIGtlaW5lIFdhcm51bmdlbiAiCisiYmV6w7xnbGljaCBuZXVlci92ZXJsb3JlbmRlciBCaWJsaW90aGVrZW4gb2RlciBuZXVlci92ZXJsb3JlbmRlciBTeW1ib2xlICIKKyJhdXNnZWJlbi4gRGllc2UgT3B0aW9uIGRlYWt0aXZpZXJ0IG51ciBkaWUgaW5mb3JtYXRpdmUgQXVzZ2FiZSBhYmVyIG5pY2h0ICIKKyJkaWUgUHLDvGZ1bmdlbiBzZWxic3QgKHNlaGVuIFNpZSBoaWVyenUgZGllIE9wdGlvbiBJPC1jPikuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDI3CisjLCBuby13cmFwCittc2dpZCAiQjwtYT5JPGFyY2g+IgorbXNnc3RyICJCPC1hPkk8QXJjaGl0ZWt0dXI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0MzIKK21zZ2lkICIiCisiQXNzdW1lIEk8YXJjaD4gYXMgaG9zdCBhcmNoaXRlY3R1cmUgd2hlbiBwcm9jZXNzaW5nIHN5bWJvbCBmaWxlcy4gVXNlIHRoaXMgIgorIm9wdGlvbiB0byBnZW5lcmF0ZSBhIHN5bWJvbCBmaWxlIG9yIGRpZmYgZm9yIGFueSBhcmNoaXRlY3R1cmUgcHJvdmlkZWQgaXRzICIKKyJiaW5hcmllcyBhcmUgYWxyZWFkeSBhdmFpbGFibGUuIgorbXNnc3RyICIiCisiTmVobWUgSTxBcmNoPiBhbHMgSG9zdC1BcmNoaXRla3R1ciBiZWltIFZlcmFyYmVpdGVuIGRlciBTeW1ib2xkYXRlaWVuIGFuLiAiCisiVmVyd2VuZGVuIFNpZSBkaWVzZSBPcHRpb24sIHVtIFN5bWJvbGRhdGVpZW4gb2RlciBEaWZmcyBmw7xyIGJlbGllYmlnZSAiCisiQXJjaGl0ZWt0dXJlbiB6dSBlcnN0ZWxsZW4sIHZvcmF1c2dlc2V0enQsIGRpZSBCaW7DpHJwcm9ncmFtbWUgc2luZCBiZXJlaXRzICIKKyJ2ZXJmw7xnYmFyLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDM3Cittc2dpZCAiIgorIkVuYWJsZSBkZWJ1ZyBtb2RlLiBOdW1lcm91cyBtZXNzYWdlcyBhcmUgZGlzcGxheWVkIHRvIGV4cGxhaW4gd2hhdCBCPGRwa2ctIgorImdlbnN5bWJvbHM+IGRvZXMuIgorbXNnc3RyICIiCisiRGVidWctTW9kdXMgYWt0aXZpZXJlbi4gRWluZSBWaWVsemFobCB2b24gTmFjaHJpY2h0ZW4gd2lyZCBhbmdlemVpZ3QsIHVtIHp1ICIKKyJlcmtsw6RyZW4sIHdhcyBCPGRwa2ctZ2Vuc3ltYm9scz4gZHVyY2hmw7xocnQuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDM3CisjLCBuby13cmFwCittc2dpZCAiQjwtVj4iCittc2dzdHIgIkI8LVY+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0NDMKK21zZ2lkICIiCisiRW5hYmxlIHZlcmJvc2UgbW9kZS4gVGhlIGdlbmVyYXRlZCBzeW1ib2xzIGZpbGUgY29udGFpbnMgZGVwcmVjYXRlZCBzeW1ib2xzICIKKyJhcyBjb21tZW50cy4gRnVydGhlcm1vcmUgaW4gdGVtcGxhdGUgbW9kZSwgcGF0dGVybiBzeW1ib2xzIGFyZSBmb2xsb3dlZCBieSAiCisiY29tbWVudHMgbGlzdGluZyByZWFsIHN5bWJvbHMgdGhhdCBoYXZlIG1hdGNoZWQgdGhlIHBhdHRlcm4uIgorbXNnc3RyICIiCisiQXVzZsO8aHJsaWNoZW4gTW9kdXMgYWt0aXZpZXJlbi4gRGllIGVyc3RlbGx0ZSBTeW1ib2xkYXRlaSBlbnRow6RsdCB2ZXJhbHRldGUgIgorIlN5bWJvbGUgYWxzIEtvbW1lbnRhcmUuIEltIFZvcmxhZ2VubW9kdXMgd2VyZGVuIE11c3RlcnN5bWJvbGUgZGVzd2VpdGVyZW4gIgorInZvbiBLb21tZW50YXJlbiBnZWZvbGd0LCBkaWUgZGllIGVjaHRlbiBTeW1ib2xlIGF1ZmbDvGhyZW4sIGRpZSBhdWYgZGllc2VzICIKKyJNdXN0ZXIgcGFzc2VuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDUyCittc2dpZCAiQjxodHRwOi8vcGVvcGxlLnJlZGhhdC5jb20vZHJlcHBlci9zeW1ib2wtdmVyc2lvbmluZz4iCittc2dzdHIgIkI8aHR0cDovL3Blb3BsZS5yZWRoYXQuY29tL2RyZXBwZXIvc3ltYm9sLXZlcnNpb25pbmc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0NTQKK21zZ2lkICJCPGh0dHA6Ly9wZW9wbGUucmVkaGF0LmNvbS9kcmVwcGVyL2dvb2RwcmFjdGljZS5wZGY+IgorbXNnc3RyICJCPGh0dHA6Ly9wZW9wbGUucmVkaGF0LmNvbS9kcmVwcGVyL2dvb2RwcmFjdGljZS5wZGY+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0NTYKK21zZ2lkICJCPGh0dHA6Ly9wZW9wbGUucmVkaGF0LmNvbS9kcmVwcGVyL2Rzb2hvd3RvLnBkZj4iCittc2dzdHIgIkI8aHR0cDovL3Blb3BsZS5yZWRoYXQuY29tL2RyZXBwZXIvZHNvaG93dG8ucGRmPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDU5Cittc2dpZCAiQjxkZWItc3ltYm9scz4oNSksIEI8ZHBrZy1zaGxpYmRlcHM+KDEpLiIKK21zZ3N0ciAiQjxkZWItc3ltYm9scz4oNSksIEI8ZHBrZy1zaGxpYmRlcHM+KDEpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDYyCittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMDctMjAwOSBSYXBoYVxcWzplXWwgSGVydHpvZyIKK21zZ3N0ciAiQ29weXJpZ2h0IFxcKGNvIDIwMDctMjAwOSBSYXBoYVxcWzplXWwgSGVydHpvZyIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MQorIywgbm8td3JhcAorbXNnaWQgImRwa2ctbWFpbnRzY3JpcHQtaGVscGVyIgorbXNnc3RyICJkcGtnLW1haW50c2NyaXB0LWhlbHBlciIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMTo0Cittc2dpZCAiIgorImRwa2ctbWFpbnRzY3JpcHQtaGVscGVyIC0gd29ya3MgYXJvdW5kIGtub3duIGRwa2cgbGltaXRhdGlvbnMgaW4gbWFpbnRhaW5lciAiCisic2NyaXB0cyIKK21zZ3N0ciAiIgorImRwa2ctbWFpbnRzY3JpcHQtaGVscGVyIC0gQmVrYW5udGUgRWluc2NocsOkbmt1bmdlbiBpbiBEcGtnIGluICIKKyJCZXRyZXVlcnNrcmlwdGVuIHVtZ2VoZW4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6OAorbXNnaWQgIiIKKyJCPGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyPiBJPGNvbW1hbmQ+IFtJPHBhcmFtZXRlcj4uLi5dIEI8LS0+IEk8bWFpbnQtc2NyaXB0LSIKKyJwYXJhbWV0ZXI+Li4uIgorbXNnc3RyICIiCisiQjxkcGtnLW1haW50c2NyaXB0LWhlbHBlcj4gSTxCZWZlaGw+IFtJPFBhcmFtZXRlcj4uLi5dIEI8LS0+IEk8QmV0ci1Ta3JpcHQtIgorIlBhcmFtZXRlcj4uLi4iCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjkKKyMsIG5vLXdyYXAKK21zZ2lkICJDT01NQU5EUyBBTkQgUEFSQU1FVEVSUyIKK21zZ3N0ciAiQkVGRUhMRSBVTkQgUEFSQU1FVEVSIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjEyCittc2dpZCAiQjxybV9jb25mZmlsZT4gSTxjb25mZmlsZT4gW0k8bGFzdHZlcnNpb24+IFtJPHBhY2thZ2U+XV0iCittc2dzdHIgIkI8cm1fY29uZmZpbGU+IEk8Q29uZmZpbGU+IFtJPGxldHp0ZVZlcnNpb24+IFtJPFBha2V0Pl1dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjE0Cittc2dpZCAiIgorIkI8bXZfY29uZmZpbGU+IEk8b2xkY29uZmZpbGU+IEk8bmV3Y29uZmZpbGU+IFtJPGxhc3R2ZXJzaW9uPiBbSTxwYWNrYWdlPl1dIgorbXNnc3RyICIiCisiQjxtdl9jb25mZmlsZT4gSTxBbHRlQ29uZmZpbGU+IEk8TmV1ZUNvbmZmaWxlPiBbSTxsZXR6dGVWZXJzaW9uPiBbSTxQYWtldD5dXSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToyMAorbXNnaWQgIiIKKyJUaGlzIHByb2dyYW0gaXMgZGVzaWduZWQgdG8gYmUgcnVuIHdpdGhpbiBtYWludGFpbmVyIHNjcmlwdHMgdG8gYWNoaWV2ZSBzb21lICIKKyJ0YXNrcyB0aGF0IGRwa2cgY2FuJ3QgKHlldCkgaGFuZGxlIG5hdGl2ZWx5IGVpdGhlciBiZWNhdXNlIG9mIGRlc2lnbiAiCisiZGVjaXNpb25zIG9yIGR1ZSB0byBjdXJyZW50IGxpbWl0YXRpb25zLiIKK21zZ3N0ciAiIgorIkRpZXNlcyBQcm9ncmFtbSB3dXJkZSBzbyBlbnR3b3JmZW4sIGRhc3MgZXMgaW4gQmV0cmV1ZXJza3JpcHRlbiBhdXNnZWbDvGhydCAiCisid2VyZGVuIGthbm4sIHVtIGVpbmlnZSBBdWZnYWJlbiB6dSBlcmxlZGlnZW4sIGRpZSBEcGtnIChub2NoKSBuaWNodCBzZWxic3QgIgorImVybGVkaWdlbiBrYW5uLCBlbnR3ZWRlciBhdWZncnVuZCB2b24gRGVzaWduLUVudHNjaGVpZHVuZ2VuIG9kZXIgYXVmZ3J1bmQgIgorImFrdHVlbGxlciBFaW5zY2hyw6Rua3VuZ2VuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToyNworbXNnaWQgIiIKKyJNYW55IG9mIHRob3NlIHRhc2tzIHJlcXVpcmUgY29vcmRpbmF0ZWQgYWN0aW9ucyBmcm9tIHNldmVyYWwgbWFpbnRhaW5lciAiCisic2NyaXB0cyAoQjxwcmVpbnN0PiwgQjxwb3N0aW5zdD4sIEI8cHJlcm0+LCBCPHBvc3RybT4pLiBUbyBhdm9pZCBtaXN0YWtlcyAiCisidGhlIHNhbWUgY2FsbCBzaW1wbHkgbmVlZHMgdG8gYmUgcHV0IGluIGFsbCBzY3JpcHRzIGFuZCB0aGUgcHJvZ3JhbSB3aWxsICIKKyJhdXRvbWF0aWNhbGx5IGFkYXB0IGl0cyBiZWhhdmlvdXIgYmFzZWQgb24gdGhlIGVudmlyb25tZW50IHZhcmlhYmxlICIKKyJCPERQS0dfTUFJTlRTQ1JJUFRfTkFNRT4gYW5kIG9uIHRoZSBtYWludGFpbmVyIHNjcmlwdHMgYXJndW1lbnRzIHRoYXQgeW91ICIKKyJoYXZlIHRvIGZvcndhcmQgYWZ0ZXIgYSBkb3VibGUgZGFzaC4iCittc2dzdHIgIiIKKyJWaWVsZSBkaWVzZXIgQXVmZ2FiZW4gYmVuw7Z0aWdlbiBrb29yZGluaWVydGUgQWt0aW9uZW4gYXVzIG1laHJlcmVuICIKKyJCZXRyZXVlcnNrcmlwdGVuIChCPHByZWluc3Q+LCBCPHBvc3RpbnN0PiwgQjxwcmVybT4sIEI8cG9zdHJtPikuIFVtIEZlaGxlciAiCisienUgdmVybWVpZGVuLCB3aXJkIGRlciBnbGVpY2hlIEF1ZnJ1ZiBlaW5mYWNoIGluIGFsbGUgU2tyaXB0ZSBlaW5nZWbDvGd0IHVuZCAiCisiZGFzIFByb2dyYW1tIHdpcmQgc2VpbiBWZXJoYWx0ZW4gYXV0b21hdGlzY2ggYWJow6RuZ2lnIHZvbiBkZXIgVmFyaWFibGUgIgorIkI8RFBLR19NQUlOVFNDUklQVF9OQU1FPiB1bmQgZGVuIEFyZ3VtZW50ZW4gaW0gQmV0cmV1ZXJza3JpcHQsIGRpZSBTaWUgbmFjaCAiCisiZWluZW0gZG9wcGVsdGVuIFNjaHLDpGdzdHJpY2ggw7xiZXJnZWJlbiBtw7xzc2VuLCBhbnBhc3Nlbi4iCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjI4CisjLCBuby13cmFwCittc2dpZCAiQ09ORkZJTEUgUkVMQVRFRCBUQVNLUyIKK21zZ3N0ciAiQ09ORkZJTEUtQkVaT0dFTkUgQVVGR0FCRU4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MzgKK21zZ2lkICIiCisiV2hlbiB1cGdyYWRpbmcgYSBwYWNrYWdlLCBkcGtnIHdpbGwgbm90IGF1dG9tYXRpY2FsbHkgcmVtb3ZlIGEgY29uZmZpbGUgKGEgIgorImNvbmZpZ3VyYXRpb24gZmlsZSBmb3Igd2hpY2ggZHBrZyBzaG91bGQgcHJlc2VydmUgdXNlciBjaGFuZ2VzKSBpZiBpdCBpcyBub3QgIgorInByZXNlbnQgaW4gdGhlIG5ld2VyIHZlcnNpb24uIFRoZXJlIGFyZSB0d28gcHJpbmNpcGFsIHJlYXNvbnMgZm9yIHRoaXM7IHRoZSAiCisiZmlyc3QgaXMgdGhhdCB0aGUgY29uZmZpbGUgY291bGQndmUgYmVlbiBkcm9wcGVkIGJ5IGFjY2lkZW50IGFuZCB0aGUgbmV4dCAiCisidmVyc2lvbiBjb3VsZCByZXN0b3JlIGl0LCB1c2VycyB3b3VsZG4ndCB3YW50IHRoZWlyIGNoYW5nZXMgdGhyb3duIGF3YXkuIFRoZSAiCisic2Vjb25kIGlzIHRvIGFsbG93IHBhY2thZ2VzIHRvIHRyYW5zaXRpb24gZmlsZXMgZnJvbSBhIGRwa2ctbWFpbnRhaW5lZCAiCisiY29uZmZpbGUgdG8gYSBmaWxlIG1haW50YWluZWQgYnkgdGhlIHBhY2thZ2UncyBtYWludGFpbmVyIHNjcmlwdHMsIHVzdWFsbHkgIgorIndpdGggYSB0b29sIGxpa2UgZGViY29uZiBvciB1Y2YuIgorbXNnc3RyICIiCisiQmVpbSBVcGdyYWRlIGVpbmVzIFBha2V0cyB3aXJkIERwa2cgZWluIENvbmZmaWxlIChlaW5lIEtvbmZpZ3VyYXRpb25zZGF0ZWksICIKKyJiZWkgZGVyIERwa2cgZGllIMOEbmRlcnVuZ2VuIGRlcyBCZW51dHplcnMgZXJoYWx0ZW4gc29sbCkgbmljaHQgYXV0b21hdGlzY2hlbiAiCisiZW50ZmVybmVuLCBmYWxscyBzaWUgbmljaHQgaW4gZGVyIG5ldWVyZW4gVmVyc2lvbiBlbnRoYWx0ZW4gaXN0LiBFcyBnaWJ0ICIKKyJ6d2VpIEhhdXB0Z3LDvG5kZSBkYWbDvHI7IGRlciBlcnN0ZSBpc3QsIGRhc3MgZGllIENvbmZmaWxlIHZlcnNlaGVudGxpY2ggIgorImVudGZhbGxlbiBzZWluIHVuZCBkaWUgbsOkY2hzdGUgVmVyc2lvbiBzaWUgd2llZGVyIGhlcnN0ZWxsZW4ga8O2bm50ZSB1bmQgZGllICIKKyJCZW51dHplciBkaWUgw4RuZGVydW5nIG5pY2h0IHdlZ2dld29yZmVuIHNlaGVuIHdvbGxlbi4gRGVyIHp3ZWl0ZSBiZXN0ZWh0ICIKKyJkYXJpbiwgZGFzcyBQYWtldGVuIGVybGF1YnQgd2VyZGVuIHNvbGwsIHZvbiBlaW5lciBEcGtnLWJldHJldXRlbiBDb25mZmlsZSAiCisiYXVmIGVpbmUgRGF0ZWksIGRpZSB2b24gZGVuIEJldHJldWVyc2tyaXB0ZW4gZGVzIFBha2V0cywgbm9ybWFsZXJ3ZWlzZSBtaXQgIgorImVpbmVtIFdlcmt6ZXVnIHdpZSBEZWJjb25mIG9kZXIgVWNmLCB2ZXJ3YWx0ZXQgd2lyZCwgdW16dXN0ZWxsZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjQzCittc2dpZCAiIgorIlRoaXMgbWVhbnMgdGhhdCBpZiBhIHBhY2thZ2UgaXMgaW50ZW5kZWQgdG8gcmVuYW1lIG9yIHJlbW92ZSBhIGNvbmZmaWxlLCBpdCAiCisibXVzdCBleHBsaWNpdGx5IGRvIHNvIGFuZCBCPGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyPiBjYW4gYmUgdXNlZCB0byAiCisiaW1wbGVtZW50IGdyYWNlZnVsIGRlbGV0aW9uIGFuZCBtb3Zpbmcgb2YgY29uZmZpbGVzIHdpdGhpbiBtYWludGFpbmVyICIKKyJzY3JpcHRzLiIKK21zZ3N0ciAiIgorIkRhcyBiZWRldXRldCwgZmFsbHMgZWluIFBha2V0IGVpbmUgQ29uZmZpbGUgdW1iZW5lbm5lbiBvZGVyIGVudGZlcm5lbiBzb2xsLCAiCisibXVzcyBlcyBkaWVzIGV4cGxpeml0IGR1cmNoZsO8aHJlbiB1bmQgQjxkcGtnLW1haW50c2NyaXB0LWhlbHBlcj4ga2FubiBkYXp1ICIKKyJ2ZXJ3YW5kdCB3ZXJkZW4sIGVpbmUgc2FuZnRlIEzDtnNjaHVuZyB1bmQgVmVyc2NoaWVidW5nIHZvbiBDb25mZmlsZXMgIgorImlubmVyaGFsYiB2b24gQmV0cmV1ZXJza3JpcHRlbiBkdXJjaHp1ZsO8aHJlbi4iCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjQ0CisjLCBuby13cmFwCittc2dpZCAiUkVNT1ZJTkcgQSBDT05GRklMRSIKK21zZ3N0ciAiRUlORSBDT05GRklMRSBFTlRGRVJORU4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6NTAKK21zZ2lkICIiCisiSWYgYSBjb25mZmlsZSBpcyBjb21wbGV0ZWx5IHJlbW92ZWQsIGl0IHNob3VsZCBiZSByZW1vdmVkIGZyb20gZGlzaywgdW5sZXNzICIKKyJ0aGUgdXNlciBoYXMgbW9kaWZpZWQgaXQuIElmIHRoZXJlIGFyZSBsb2NhbCBtb2RpZmljYXRpb25zLCB0aGV5IHNob3VsZCBiZSAiCisicHJlc2VydmVkLiBJZiB0aGUgcGFja2FnZSB1cGdyYWRlcyBhYm9ydHMsIHRoZSBuZXdseSBvYnNvbGV0ZSBjb25mZmlsZSAiCisic2hvdWxkIG5vdCBkaXNhcHBlYXIuIgorbXNnc3RyICIiCisiRmFsbHMgZWluZSBDb25mZmlsZSBrb21wbGV0dCBlbnRmZXJudCB3aXJkLCBzb2xsdGUgc2llIHZvbiBkZXIgUGxhdHRlICIKKyJlbnRmZXJudCB3ZXJkZW4sIGZhbGxzIGRlciBCZW51dHplciBzaWUgbmljaHQgdmVyw6RuZGVydCBoYXQuIEZhbGxzIGVzIGxva2FsZSAiCisiQW5wYXNzdW5nZW4gZ2lidCwgc29sbHRlbiBkaWVzZSBlcmhhbHRlbiB3ZXJkZW4uIEZhbGxzIGRhcyBVcGdyYWRlIGRlcyAiCisiUGFrZXRzIGFiZ2Vicm9jaGVuIHdpcmQsIHNvbGx0ZSBkaWUgbmV1ZXJkaW5ncyB2ZXJhbHRldGUgQ29uZmZpbGUgbmljaHQgIgorInZlcnNjaHdpbmRlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6NTMKK21zZ2lkICIiCisiQWxsIG9mIHRoaXMgaXMgaW1wbGVtZW50ZWQgYnkgcHV0dGluZyB0aGUgZm9sbG93aW5nIHNoZWxsIHNuaXBwZXQgaW4gdGhlICIKKyJCPHByZWluc3Q+LCBCPHBvc3RpbnN0PiBhbmQgQjxwb3N0cm0+IG1haW50YWluZXIgc2NyaXB0czoiCittc2dzdHIgIiIKKyJBbGwgZGllcyB3aXJkIGR1cmNoIEVpbnNldHplbiBkZXIgZm9sZ2VuZGVuIFNoZWxsLVNjaG5pcHNlbCBpbiBkaWUgIgorIkJldHJldWVyc2tyaXB0ZSBCPHByZWluc3Q+LCBCPHBvc3RpbnN0PiB1bmQgQjxwb3N0cm0+IGltcGxlbWVudGllcnQ6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjU2CisjLCBuby13cmFwCittc2dpZCAiIgorIiAgICBkcGtnLW1haW50c2NyaXB0LWhlbHBlciBybV9jb25mZmlsZSBcXGVcbiIKKyIgICAgICAgIEk8Y29uZmZpbGU+IEk8bGFzdHZlcnNpb24+IEk8cGFja2FnZT4gLS0gXCIkQFwiXG4iCittc2dzdHIgIiIKKyIgICAgZHBrZy1tYWludHNjcmlwdC1oZWxwZXIgcm1fY29uZmZpbGUgXFxlXG4iCisiICAgICAgICBJPENvbmZmaWxlPiBJPGxldHp0ZVZlcnNpb24+IEk8UGFrZXQ+IC0tIFwiJEBcIlxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjY2Cittc2dpZCAiIgorIkk8Y29uZmZpbGU+IGlzIHRoZSBmaWxlbmFtZSBvZiB0aGUgY29uZmZpbGUgdG8gcmVtb3ZlLiAgSTxsYXN0dmVyc2lvbj4gaXMgIgorInRoZSBsYXN0IHZlcnNpb24gb2YgdGhlIHBhY2thZ2UgdGhhdCBjb250YWluZWQgdGhlIGNvbmZmaWxlIChvciB0aGUgbGFzdCAiCisidmVyc2lvbiBvZiB0aGUgcGFja2FnZSB0aGF0IGRpZCBub3QgdGFrZSBjYXJlIHRvIHJlbW92ZSB0aGUgb2Jzb2xldGUgIgorImNvbmZmaWxlIGlmIHRoaXMgd2FzIG5vdCBpbW1lZGlhdGVseSBpbXBsZW1lbnRlZCkuICBJZiBJPGxhc3R2ZXJzaW9uPiBpcyAiCisiZW1wdHkgb3Igb21pdHRlZCwgdGhlbiB0aGUgb3BlcmF0aW9uIGlzIHRyaWVkIG9uIGV2ZXJ5IHVwZ3JhZGUuIEk8cGFja2FnZT4gIgorImlzIHRoZSBwYWNrYWdlIG5hbWUsIGl0J3Mgb3B0aW9uYWwgYXMgaXQgd2lsbCBkZWZhdWx0IHRvICIKKyIkRFBLR19NQUlOVFNDUklQVF9QQUNLQUdFICh0aGlzIHZhcmlhYmxlIGlzIHNldCBieSBkcGtnIHRvIHRoZSBuYW1lIG9mIHRoZSAiCisicGFja2FnZSBhY3RlZCB1cG9uKS4gQWxsIHRoZSBwYXJhbWV0ZXJzIG9mIHRoZSBtYWludGFpbmVyIHNjcmlwdHMgaGF2ZSB0byBiZSAiCisiZm9yd2FyZGVkIHRvIHRoZSBwcm9ncmFtIGFmdGVyIFwiLS1cIi4iCittc2dzdHIgIiIKKyJJPENvbmZmaWxlPiBpc3QgZGVyIERhdGVpbmFtZSBkZXIgenUgZW50ZmVybmVuZGVuIENvbmZmaWxlLiBJPGxldHp0ZVZlcnNpb24+ICIKKyJpc3QgZGllIGxldHp0ZSBWZXJzaW9uIGRlcyBQYWtldHMsIGRhcyBkaWUgQ29uZmZpbGUgZW50aGllbHQgKG9kZXIgZGllICIKKyJsZXR6dGUgVmVyc2lvbiBkZXMgUGFrZXRzLCBkYXMgc2ljaCBuaWNodCBkYXJ1bSBrw7xtbWVydGUsIGRpZSB2ZXJhbHRldGUgIgorIkNvbmZmaWxlIHp1IGzDtnNjaGVuLCBmYWxscyBkaWVzIG5pY2h0IHNvZm9ydCBpbXBsZW1lbnRpZXJ0IHd1cmRlKS4gRmFsbHMgIgorIkk8bGV0enRlVmVyc2lvbj4gbGVlciBvZGVyIGVudGZhbGxlbiBpc3Qgd2lyZCBkaWUgRHVyY2hmw7xocnVuZyBiZWkgamVkZW0gIgorIlVwZ3JhZGUgdmVyc3VjaHQuIEk8UGFrZXQ+IGlzdCBkZXIgUGFrZXRuYW1lLiBFciBpc3Qgb3B0aW9uYWwsIGRhIGVyICIKKyJzdGFuZGFyZG3DpMOfaWcgbWl0ICREUEtHX01BSU5UU0NSSVBUX1BBQ0tBR0UgYmVsZWd0IGlzdCAoZGllc2UgVmFyaWFibGUgd2lyZCAiCisidm9uIERwa2cgYXVmIGRlbiBOYW1lbiBkZXMgbW9tZW50YW4gaW4gQmVhcmJlaXR1bmcgYmVmaW5kbGljaGVuIFBha2V0cyAiCisiZ2VzZXR6dCkuIEFsbGUgUGFyYW1ldGVyIGRlcyBCZXRyZXVlcnNrcmlwdHMgbcO8c3NlbiBuYWNoIMK7LS3CqyBhbiBkYXMgIgorIlByb2dyYW1tIHdlaXRlcmdlbGVpdGV0IHdlcmRlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6NzUKK21zZ2lkICIiCisiQ3VycmVudCBpbXBsZW1lbnRhdGlvbjogaW4gdGhlIEI8cHJlaW5zdD4sIGl0IGNoZWNrcyBpZiB0aGUgY29uZmZpbGUgd2FzICIKKyJtb2RpZmllZCBhbmQgcmVuYW1lcyBpdCBlaXRoZXIgdG8gSTxjb25mZmlsZT5CPC5kcGtnLXJlbW92ZT4gKGlmIG5vdCAiCisibW9kaWZpZWQpIG9yIHRvIEk8Y29uZmZpbGU+QjwuZHBrZy1iYWNrdXA+IChpZiBtb2RpZmllZCkuIEluIHRoZSAiCisiQjxwb3N0aW5zdD4sIHRoZSBsYXR0ZXIgZmlsZSBpcyByZW5hbWVkIHRvIEk8Y29uZmZpbGU+QjwuZHBrZy1iYWs+IGFuZCBrZXB0ICIKKyJmb3IgcmVmZXJlbmNlIGFzIGl0IGNvbnRhaW5zIHVzZXIgbW9kaWZpY2F0aW9ucyBidXQgdGhlIGZvcm1lciB3aWxsIGJlICIKKyJyZW1vdmVkLiBJZiB0aGUgcGFja2FnZSB1cGdyYWRlIGFib3J0cywgdGhlIEI8cG9zdHJtPiByZWluc3RhbGxzIHRoZSAiCisib3JpZ2luYWwgY29uZmZpbGUuIER1cmluZyBwdXJnZSwgdGhlIEI8cG9zdHJtPiB3aWxsIGFsc28gZGVsZXRlIHRoZSBCPC5kcGtnLSIKKyJiYWs+IGZpbGUga2VwdCB1cCB0byBub3cuIgorbXNnc3RyICIiCisiQWt0dWVsbGUgSW1wbGVtZW50aWVydW5nOiBpbSBCPHByZWluc3Q+IHdpcmQgZ2VwcsO8ZnQsIG9iIGRpZSBDb25mZmlsZSAiCisiZ2XDpG5kZXJ0IHd1cmRlLiBEYW5uIHdpcmQgc2llIGVudHdlZGVyIGluIEk8Q29uZmZpbGU+QjwuZHBrZy1yZW1vdmU+IChmYWxscyAiCisic2llIG5pY2h0IGdlw6RuZGVydCB3dXJkZSkgb2RlciBpbiBJPENvbmZmaWxlPkI8LmRwa2ctYmFja3VwPiAoZmFsbHMgc2llICIKKyJnZcOkbmRlcnQgd3VyZGUpIHVtYmVuYW5udC4gSW0gQjxwb3N0aW5zdD4gd2lyZCBsZXR6dGVyZSBpbiBJPENvbmZmaWxlPkI8LiIKKyJkcGtnLWJhaz4gdW1iZW5hbm50IHVuZCBhbHMgUmVmZXJlbnogYmVoYWx0ZW4sIGRhIHNpZSBCZW51dHplcsOkbmRlcnVuZ2VuICIKKyJlbnRow6RsdCwgd8OkaHJlbmQgZXJzdGVyZSBlbnRmZXJudCB3aXJkLiBGYWxscyBkYXMgVXBncmFkZSBkZXMgUGFrZXRzICIKKyJhYmdlYnJvY2hlbiB3aXJkLCByZWluc3RhbGxpZXJ0IEI8cG9zdHJtPiBkaWUgdXJzcHLDvG5nbGljaGUgQ29uZmZpbGUuICIKKyJXw6RocmVuZCBkZXMgdm9sbHN0w6RuZGlnZW4gTMO2c2NoZW5zIHdpcmQgQjxwb3N0cm0+IGF1Y2ggZGllIGJpc2hlciBiZWhhbHRlbmUgIgorIkRhdGVpIEI8LmRwa2ctYmFrPiBlbnRmZXJuZW4uIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMTo3NgorIywgbm8td3JhcAorbXNnaWQgIlJFTkFNSU5HIEEgQ09ORkZJTEUiCittc2dzdHIgIkVJTkUgQ09ORkZJTEUgVU1CRU5FTk5FTiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMTo4MworbXNnaWQgIiIKKyJJZiBhIGNvbmZmaWxlIGlzIG1vdmVkIGZyb20gb25lIGxvY2F0aW9uIHRvIGFub3RoZXIsIHlvdSBuZWVkIHRvIG1ha2Ugc3VyZSAiCisieW91IG1vdmUgYWNyb3NzIGFueSBjaGFuZ2VzIHRoZSB1c2VyIGhhcyBtYWRlLiBUaGlzIG1heSBzZWVtIGEgc2ltcGxlIGNoYW5nZSAiCisidG8gdGhlIEI8cHJlaW5zdD4gc2NyaXB0IGF0IGZpcnN0LCBob3dldmVyIHRoYXQgd2lsbCByZXN1bHQgaW4gdGhlIHVzZXIgIgorImJlaW5nIHByb21wdGVkIGJ5IGRwa2cgdG8gYXBwcm92ZSB0aGUgY29uZmZpbGUgZWRpdHMgZXZlbiB0aG91Z2ggdGhleSBhcmUgIgorIm5vdCByZXNwb25zaWJsZSBvZiB0aGVtLiIKK21zZ3N0ciAiIgorIkZhbGxzIGVpbmUgQ29uZmZpbGUgdm9uIGVpbmVtIE9ydCB6dSBlaW5lbSBhbmRlcmVuIHZlcnNjaG9iZW4gd2lyZCwgbcO8c3NlbiAiCisiU2llIHNpY2hlcnN0ZWxsZW4sIGRhc3MgU2llIGF1Y2ggYWxsZSDDhG5kZXJ1bmdlbiBkZXMgQmVudXR6ZXJzIG1pdCAiCisiw7xiZXJuZWhtZW4uIEFuZsOkbmdsaWNoIGVyc2NoZWludCBkaWVzIGFscyBlaW5mYWNoZSDDhG5kZXJ1bmcgYW0gU2tyaXB0ICIKKyJCPHByZWluc3Q+LCBhbGxlcmRpbmdzIHdpcmQgZGllcyBkYXp1IGbDvGhyZW4sIGRhc3MgZGVyIEJlbnV0emVyIHZvbiBEcGtnICIKKyJhdWZnZWZvcmRlcnQgd2lyZCwgZGllIEJlYXJiZWl0dW5nIGRlciBDb25mZmlsZSB6dSBiZXN0w6R0aWdlbiwgb2J3b2hsIHNpZSAiCisiZsO8ciBkaWVzZSBnYXIgbmljaHQgdmVyYW50d29ydGxpY2ggc2luZC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6ODcKK21zZ2lkICIiCisiR3JhY2VmdWwgcmVuYW1pbmcgY2FuIGJlIGltcGxlbWVudGVkIGJ5IHB1dHRpbmcgdGhlIGZvbGxvd2luZyBzaGVsbCBzbmlwcGV0ICIKKyJpbiB0aGUgQjxwcmVpbnN0PiwgQjxwb3N0aW5zdD4gYW5kIEI8cG9zdHJtPiBtYWludGFpbmVyIHNjcmlwdHM6IgorbXNnc3RyICIiCisiU2FuZnRlIFVtYmVuZW5udW5nIGthbm4gZHVyY2ggRWluc2V0emVuIGRlciBmb2xnZW5kZW4gU2hlbGwtU2Nobmlwc2VsIGluIGRpZSAiCisiQmV0cmV1ZXJza3JpcHRlIEI8cHJlaW5zdD4sIEI8cG9zdGluc3Q+IHVuZCBCPHBvc3RybT4gaW1wbGVtZW50aWVydCB3ZXJkZW46IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjkwCisjLCBuby13cmFwCittc2dpZCAiIgorIiAgICBkcGtnLW1haW50c2NyaXB0LWhlbHBlciBtdl9jb25mZmlsZSBcXGVcbiIKKyIgICAgICAgIEk8b2xkY29uZmZpbGU+IEk8bmV3Y29uZmZpbGU+IEk8bGFzdHZlcnNpb24+IEk8cGFja2FnZT4gLS0gXCIkQFwiXG4iCittc2dzdHIgIiIKKyIgICAgZHBrZy1tYWludHNjcmlwdC1oZWxwZXIgbXZfY29uZmZpbGUgXFxlXG4iCisiICAgICAgICBJPGFsdGVDb25mZmlsZT4gSTxuZXVlQ29uZmZpbGU+IEk8bGV0enRlVmVyc2lvbj4gSTxQYWtldD4gLS0gXCIkQFwiXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MTAwCittc2dpZCAiIgorIkk8b2xkY29uZmZpbGU+IGFuZCBJPG5ld2NvbmZmaWxlPiBhcmUgdGhlIG9sZCBhbmQgbmV3IG5hbWUgb2YgdGhlIGNvbmZmaWxlICIKKyJ0byByZW5hbWUuIEk8bGFzdHZlcnNpb24+IGlzIHRoZSBsYXN0IHZlcnNpb24gb2YgdGhlIHBhY2thZ2UgdGhhdCBjb250YWluZWQgIgorInRoZSBjb25mZmlsZSB3aXRoIHRoZSBvbGQgbmFtZS4gSWYgSTxsYXN0dmVyc2lvbj4gaXMgZW1wdHkgb3Igb21pdHRlZCwgdGhlbiAiCisidGhlIG9wZXJhdGlvbiBpcyB0cmllZCBvbiBldmVyeSB1cGdyYWRlIChub3RlOiBpdCdzIHNhZmVyIHRvIGdpdmUgdGhlICIKKyJ2ZXJzaW9uIGFuZCBoYXZlIHRoZSBvcGVyYXRpb24gdHJpZWQgb25seSBvbmNlKS4gSTxwYWNrYWdlPiBpcyB0aGUgcGFja2FnZSAiCisibmFtZSwgaXQncyBvcHRpb25hbCBhcyBpdCB3aWxsIGRlZmF1bHQgdG8gJERQS0dfTUFJTlRTQ1JJUFRfUEFDS0FHRSAodGhpcyAiCisidmFyaWFibGUgaXMgc2V0IGJ5IGRwa2cgdG8gdGhlIG5hbWUgb2YgdGhlIHBhY2thZ2UgYWN0ZWQgdXBvbikuIEFsbCB0aGUgIgorInBhcmFtZXRlcnMgb2YgdGhlIG1haW50YWluZXIgc2NyaXB0cyBoYXZlIHRvIGJlIGZvcndhcmRlZCB0byB0aGUgcHJvZ3JhbSAiCisiYWZ0ZXIgXCItLVwiLiIKK21zZ3N0ciAiIgorIkk8YWx0ZUNvbmZmaWxlPiB1bmQgSTxuZXVlQ29uZmZpbGU+IHNpbmQgZGVyIGFsdGUgdW5kIGRlciBuZXVlIE5hbWUgZGVyICIKKyJ1bXp1YmVuZW5uZW5kZW4gQ29uZmZpbGUuIEk8bGV0enRlVmVyc2lvbj4gaXN0IGRpZSBsZXR6dGUgVmVyc2lvbiBkZXMgIgorIlBha2V0cywgZGllIGRpZSBDb25mZmlsZSBtaXQgZGVtIGFsdGVuIE5hbWVuIGVudGhpZWx0LiBGYWxscyAiCisiSTxsZXR6dGVWZXJzaW9uPiBsZWVyIG9kZXIgZW50ZmFsbGVuIGlzdCwgd2lyZCBkaWUgRHVyY2hmw7xocnVuZyBiZWkgamVkZW0gIgorIlVwZ3JhZGUgdmVyc3VjaHQgKEhpbndlaXM6IEVzIGlzdCBzaWNoZXJlciwgZGllIFZlcnNpb24gYW56dWdlYmVuIHVuZCBkaWUgIgorIkR1cmNoZsO8aHJ1bmcgbnVyIGVpbm1hbCB2ZXJzdWNoZW4genUgbGFzc2VuKS4gSTxQYWtldD4gaXN0IGRlciBQYWtldG5hbWUuIEVyICIKKyJpc3Qgb3B0aW9uYWwsIGRhIGVyIHN0YW5kYXJkbcOkw59pZyBtaXQgJERQS0dfTUFJTlRTQ1JJUFRfUEFDS0FHRSBiZWxlZ3QgaXN0ICIKKyIoZGllc2UgVmFyaWFibGUgd2lyZCB2b24gRHBrZyBhdWYgZGVuIE5hbWVuIGRlcyBtb21lbnRhbiBpbiBCZWFyYmVpdHVuZyAiCisiYmVmaW5kbGljaGVuIFBha2V0cyBnZXNldHp0KS4gQWxsZSBQYXJhbWV0ZXIgZGVzIEJldHJldWVyc2tyaXB0cyBtw7xzc2VuIG5hY2ggIgorIsK7LS3CqyBhbiBkYXMgUHJvZ3JhbW0gd2VpdGVyZ2VsZWl0ZXQgd2VyZGVuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxMDgKK21zZ2lkICIiCisiQ3VycmVudCBpbXBsZW1lbnRhdGlvbjogdGhlIEI8cHJlaW5zdD4gY2hlY2tzIGlmIHRoZSBjb25mZmlsZSBoYXMgYmVlbiAiCisibW9kaWZpZWQsIGlmIHllcyBpdCdzIGxlZnQgb24gcGxhY2Ugb3RoZXJ3aXNlIGl0J3MgcmVuYW1lZCB0byAiCisiSTxvbGRjb25mZmlsZT5CPC5kcGtnLXJlbW92ZT4uIE9uIGNvbmZpZ3VyYXRpb24sIHRoZSBCPHBvc3RpbnN0PiByZW1vdmVzICIKKyJJPG9sZGNvbmZmaWxlPkI8LmRwa2ctcmVtb3ZlPiBhbmQgcmVuYW1lcyBJPG9sZGNvbmZmaWxlPiB0byBJPG5ld2NvbmZmaWxlPiAiCisiaWYgSTxvbGRjb25mZmlsZT4gaXMgc3RpbGwgYXZhaWxhYmxlLiBPbiBhYm9ydC11cGdyYWRlL2Fib3J0LWluc3RhbGwsIHRoZSAiCisiQjxwb3N0cm0+IHJlbmFtZXMgSTxvbGRjb25mZmlsZT5CPC5kcGtnLXJlbW92ZT4gYmFjayB0byBJPG9sZGNvbmZmaWxlPiBpZiAiCisicmVxdWlyZWQuIgorbXNnc3RyICIiCisiQWt0dWVsbGUgSW1wbGVtZW50aWVydW5nOiBkYXMgQjxwcmVpbnN0PiDDvGJlcnByw7xmdCwgb2IgZGllIENvbmZmaWxlICIKKyJ2ZXLDpG5kZXJ0IHd1cmRlLCBmYWxscyBqYSwgdmVyYmxlaWJ0IHNpZSBhbSBQbGF0eiwgYW5kZXJuZmFsbHMgd2lyZCBzaWUgaW4gIgorIkk8YWx0ZUNvbmZmaWxlPkI8LmRwa2ctcmVtb3ZlPiB1bWJlbmFubnQuIEJlaSBkZXIgS29uZmlndXJhdGlvbiBlbnRmZXJudCBkYXMgIgorIkI8cG9zdGluc3Q+IEk8YWx0ZUNvbmZmaWxlPkI8LmRwa2ctcmVtb3ZlPiB1bmQgYmVubmVudCBJPGFsdGVDb25mZmlsZT4gaW4gIgorIkk8bmV1ZUNvbmZmaWxlPiB1bSwgZmFsbHMgSTxhbHRlQ29uZmZpbGU+IG5vY2ggZXhpc3RpZXJ0LiBGYWxscyBhYm9ydC0iCisidXBncmFkZS9hYm9ydC1pbnN0YWxsIGVpbnRyaXR0LCBiZW5lbm50IGRhcyBCPHBvc3RybT4gd2llZGVyICIKKyJJPGFsdGVDb25mZmlsZT5CPC5kcGtnLXJlbW92ZT4gaW4gSTxhbHRlQ29uZmZpbGU+IHp1csO8Y2ssIGZhbGxzIG5vdHdlbmRpZy4iCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjEwOQorIywgbm8td3JhcAorbXNnaWQgIklOVEVHUkFUSU9OIElOIFBBQ0tBR0VTIgorbXNnc3RyICJJTlRFR1JBVElPTiBJTiBQQUtFVEUiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MTE2Cittc2dpZCAiIgorIkdpdmVuIHRoYXQgQjxkcGtnLW1haW50c2NyaXB0LWhlbHBlcj4gaXMgdXNlZCBpbiB0aGUgQjxwcmVpbnN0PiwgdXNpbmcgaXQgIgorInVuY29uZGl0aW9uYWxseSByZXF1aXJlcyBhIHByZS1kZXBlbmRlbmN5IHRvIGVuc3VyZSB0aGF0IHRoZSByZXF1aXJlZCAiCisidmVyc2lvbiBvZiBkcGtnIGhhcyBiZWVuIHVucGFja2VkIGJlZm9yZS4gVGhlIHJlcXVpcmVkIHZlcnNpb24gZGVwZW5kcyBvbiAiCisidGhlIGNvbW1hbmQgdXNlZCwgZm9yIEI8cm1fY29uZmZpbGU+IGFuZCBCPG12X2NvbmZmaWxlPiBpdCBpcyAxLjE1LjcuMjoiCittc2dzdHIgIiIKKyJEYSBCPGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyPiBpbSBCPHByZWluc3Q+IHZlcndhbmR0IHdpcmQsIGJlbsO2dGlndCBkZXIgIgorImJlZGluZ3VuZ3Nsb3NlIEVpbnNhdHogZWluZSBwcmUtQWJow6RuZ2lna2VpdCAoSTxwcmUtZGVwZW5kZW5jeT4pLCB1bSAiCisic2ljaGVyenVzdGVsbGVuLCBkYXNzIGRpZSBNaW5kZXN0dmVyc2lvbiB2b24gRHBrZyBicmVpdHMgZW50cGFja3Qgd3VyZGUuIERpZSAiCisiYmVuw7Z0aWd0ZSBWZXJzaW9uIGjDpG5ndCB2b20gdmVyd2FuZHRlbiBCZWZlaGwgYWIsIGbDvHIgQjxybV9jb25mZmlsZT4gdW5kICIKKyJCPG12X2NvbmZmaWxlPiBsYXV0ZXQgc2llIDEuMTUuNy4yOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxMTgKKyMsIG5vLXdyYXAKK21zZ2lkICIgICAgQjxQcmUtRGVwZW5kczo+IGRwa2cgKEU8Z3Q+PSAxLjE1LjcuMilcbiIKK21zZ3N0ciAiICAgIEI8UHJlLURlcGVuZHM6PiBkcGtnIChFPGd0Pj0gMS4xNS43LjIpXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MTIzCittc2dpZCAiIgorIkJ1dCBpbiBtYW55IGNhc2VzIHRoZSBvcGVyYXRpb24gZG9uZSBieSB0aGUgcHJvZ3JhbSBpcyBub3QgY3JpdGljYWwgZm9yIHRoZSAiCisicGFja2FnZSwgYW5kIGluc3RlYWQgb2YgdXNpbmcgYSBwcmUtZGVwZW5kZW5jeSB3ZSBjYW4gY2FsbCB0aGUgcHJvZ3JhbSBvbmx5ICIKKyJpZiB3ZSBrbm93IHRoYXQgdGhlIHJlcXVpcmVkIGNvbW1hbmQgaXMgc3VwcG9ydGVkIGJ5IHRoZSBjdXJyZW50bHkgaW5zdGFsbGVkICIKKyJkcGtnOiIKK21zZ3N0ciAiIgorIkluIHZpZWxlbiBGw6RsbGVuIHNpbmQgYWJlciBkaWUgQXVzZsO8aHJ1bmdlbiBkZXMgUHJvZ3JhbW1zIGbDvHIgZGFzIFBha2V0ICIKKyJuaWNodCBrcml0aXNjaCB1bmQgc3RhdHQgZWluZXIgcHJlLUFiaMOkbmdpZ2tlaXQgc29sbCBkYXMgUHJvZ3JhbW0gbnVyICIKKyJhdWZnZXJ1ZmVuIHdlcmRlbiwgZmFsbHMgYmVrYW5udCBpc3QsIGRhc3MgZGVyIGJlbsO2dGlndGUgQmVmZWhsIHZvbSBkZXJ6ZWl0ICIKKyJpbnN0YWxsaWVydGVuIERwa2cgdW50ZXJzdMO8dHp0IHdpcmQ6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjEyNworIywgbm8td3JhcAorbXNnaWQgIiIKKyIgICAgaWYgZHBrZy1tYWludHNjcmlwdC1oZWxwZXIgc3VwcG9ydHMgSTxjb21tYW5kPjsgdGhlblxuIgorIiAgICAgICAgZHBrZy1tYWludHNjcmlwdC1oZWxwZXIgSTxjb21tYW5kPiAuLi5cbiIKKyIgICAgZmlcbiIKK21zZ3N0ciAiIgorIiAgICBpZiBkcGtnLW1haW50c2NyaXB0LWhlbHBlciBzdXBwb3J0cyBJPGNvbW1hbmQ+OyB0aGVuXG4iCisiICAgICAgICBkcGtnLW1haW50c2NyaXB0LWhlbHBlciBJPGNvbW1hbmQ+IC4uLlxuIgorIiAgICBmaVxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjEzMAorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDEwIFJhcGhhXFxbOmVdbCBIZXJ0em9nIgorbXNnc3RyICJDb3B5cmlnaHQgXFwoY28gMjAxMCBSYXBoYVxcWzplXWwgSGVydHpvZyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxMzIKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAwOCBKb2V5IEhlc3MiCittc2dzdHIgIkNvcHlyaWdodCBcXChjbyAyMDA4IEpvZXkgSGVzcyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxMzQKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAwNyBHdWlsbGVtIEpvdmVyIgorbXNnc3RyICJDb3B5cmlnaHQgXFwoY28gMjAwNyBHdWlsbGVtIEpvdmVyIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjEzNgorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDA1IFNjb3R0IEphbWVzIFJlbW5hbnQiCittc2dzdHIgIkNvcHlyaWdodCBcXChjbyAyMDA1IFNjb3R0IEphbWVzIFJlbW5hbnQiCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLW1lcmdlY2hhbmdlbG9ncyIKK21zZ3N0ciAiZHBrZy1tZXJnZWNoYW5nZWxvZ3MiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6NAorbXNnaWQgImRwa2ctbWVyZ2VjaGFuZ2Vsb2dzIC0gMy13YXkgbWVyZ2Ugb2YgZGViaWFuL2NoYW5nZWxvZyBmaWxlcyIKK21zZ3N0ciAiIgorImRwa2ctbWVyZ2VjaGFuZ2Vsb2dzIC0gMy1XZWdlLVp1c2FtbWVuZsO8aHJ1bmcgdm9uIGRlYmlhbi9jaGFuZ2Vsb2ctRGF0ZWllbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTo4Cittc2dpZCAiIgorIkI8ZHBrZy1tZXJnZWNoYW5nZWxvZ3M+IFtJPG9wdGlvbj4uLi5dIEk8b2xkPiBJPG5ldy1hPiBJPG5ldy1iPiBbSTxvdXQ+XSIKK21zZ3N0ciAiIgorIkI8ZHBrZy1tZXJnZWNoYW5nZWxvZ3M+IFtJPE9wdGlvbj4uLi5dIEk8YWx0PiBJPG5ldS1hPiBJPG5ldS1iPiBbSTxBdXNnYWJlPl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6MTUKK21zZ2lkICIiCisiVGhpcyBwcm9ncmFtIHdpbGwgdXNlIHRoZSAzIHByb3ZpZGVkIHZlcnNpb25zIG9mIHRoZSBEZWJpYW4gY2hhbmdlbG9nIHRvICIKKyJnZW5lcmF0ZSBhIG1lcmdlZCBjaGFuZ2Vsb2cgZmlsZS4gVGhlIHJlc3VsdGluZyBjaGFuZ2Vsb2cgaXMgc3RvcmVkIGluIHRoZSAiCisiZmlsZSBJPG91dD4gb3Igb3V0cHV0IHRvIHRoZSBzdGFuZGFyZCBvdXRwdXQgaWYgdGhhdCBwYXJhbWV0ZXIgaXMgbm90IGdpdmVuLiIKK21zZ3N0ciAiIgorIkRpZXNlcyBQcm9ncmFtbSB3aXJkIGRpZSBkcmVpIGJlcmVpdGdlc3RlbGx0ZW4gVmVyc2lvbmVuIGRlcyBEZWJpYW4tIgorIkNoYW5nZWxvZ3MgdmVyd2VuZGVuLCB1bSBlaW5lIHp1c2FtbWVuZ2Vmw7xocnRlIENoYW5nZWxvZy1EYXRlaSB6dSBlcnN0ZWxsZW4uICIKKyJEYXMgcmVzdWx0aWVyZW5kZSBDaGFuZ2Vsb2cgd2lyZCBpbiBkZXIgRGF0ZWkgSTxBdXNnYWJlPiBnZXNwZWljaGVydCBvZGVyIGFuICIKKyJkaWUgU3RhbmRhcmRhdXNnYWJlIGF1c2dlZ2ViZW4sIGZhbGxzIGRpZXNlciBQYXJhbWV0ZXIgZmVobHQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjI2Cittc2dpZCAiIgorIkVhY2ggZW50cnkgaXMgaWRlbnRpZmllZCBieSBpdHMgdmVyc2lvbiBudW1iZXIgYW5kIHRoZXkgYXJlIGFzc3VtZWQgdG8gYmUgIgorIm5vdCBjb25mbGljdGluZywgdGhleSBhcmUgc2ltcGx5IG1lcmdlZCBpbiB0aGUgcmlnaHQgb3JkZXIgKGJ5IGRlY3JlYXNpbmcgIgorInZlcnNpb24gbnVtYmVyKS4gV2hlbiBCPC0tbWVyZ2UtcHJlcmVsZWFzZXM+IGlzIHVzZWQsIHRoZSBwYXJ0IG9mIHRoZSAiCisidmVyc2lvbiBudW1iZXIgYWZ0ZXIgdGhlIGxhc3QgdGlsZGUgaXMgZHJvcHBlZCBzbyB0aGF0IDEuMC0xfmV4cDEgYW5kICIKKyIxLjAtMX5leHA1IGFyZSBjb25zaWRlcmVkIHRvIGJlIHRoZSBzYW1lIGVudHJ5LiBXaGVuIHRoZSBzYW1lIHZlcnNpb24gaXMgIgorImF2YWlsYWJsZSBpbiBib3RoIEk8bmV3LWE+IGFuZCBJPG5ldy1iPiwgYSBzdGFuZGFyZCBsaW5lLWJhc2VkIDMtd2F5IG1lcmdlICIKKyJpcyBhdHRlbXB0ZWQgKHByb3ZpZGVkIHRoYXQgdGhlIG1vZHVsZSBBbGdvcml0aG06Ok1lcmdlIGlzIGF2YWlsYWJsZSBcXFtlbV0gIgorIml0J3MgcGFydCBvZiB0aGUgcGFja2FnZSBsaWJhbGdvcml0aG0tbWVyZ2UtcGVybCBcXFtlbV0gb3RoZXJ3aXNlIHlvdSBnZXQgYSAiCisiZ2xvYmFsIGNvbmZsaWN0IG9uIHRoZSBjb250ZW50IG9mIHRoZSBlbnRyeSkuIgorbXNnc3RyICIiCisiSmVkZXIgRWludHJhZyB3aXJkIGR1cmNoIHNlaW5lIFZlcnNpb25zbnVtbWVyIGlkZW50aWZpemllcnQgdW5kIGVzIHdpcmQgIgorImFuZ2Vub21tZW4sIGRhc3Mgc2llIG5pY2h0IGltIEtvbmZsaWt0IHN0ZWhlbiwgc2llIHdlcmRlbiBlaW5mYWNoIGluIGRlciAiCisicmljaHRpZ2VuIFJlaWhlbmZvbGdlIGVpbmdlbWlzY2h0IChpbiBhYnN0ZWlnZW5kZXIgUmVpaGVuZm9sZ2UpLiBXZW5uIEI8LS0iCisibWVyZ2UtcHJlcmVsZWFzZXM+IHZlcndhbmR0IHdpcmQsIHdpcmQgZGVyIEFudGVpbCBkZXIgVmVyc2lvbnNudW1tZXIgbmFjaCAiCisiZGVyIGxldHp0ZW4gVGlsZGUgZW50ZmVybnQsIHNvIGRhc3MgMS4wLTF+ZXhwMSB1bmQgMS4wLTF+ZXhwNSBhbHMgZ2xlaWNoZXIgIgorIkVpbnRyYWcgYW5nZW5vbW1lbiB3ZXJkZW4uIFdlbm4gZGllIGdsZWljaGUgVmVyc2lvbiBzb3dvaGwgaW4gSTxuZXUtYT4gYWxzICIKKyJhdWNoIGluIEk8bmV1LWI+IHZlcmbDvGdiYXIgaXN0LCB3aXJkIGVpbmUgbm9ybWFsZSwgemVpbGVuYmFzaWVydGUgMy1XZWdlLSIKKyJadXNhbW1lbmbDvGhydW5nIHZlcnN1Y2h0ICh2b3JhdXNnZXNldHp0LCBkYXNzIGRhcyBNb2R1bCBBbGdvcml0aG06Ok1lcmdlICIKKyJ2ZXJmw7xnYmFyIGlzdCBcXFtlbV0gZXMgaXN0IFRlaWwgZGVzIFBha2V0cyBsaWJhbGdvcml0aG0tbWVyZ2UtcGVybCBcXFtlbV0gIgorImFuZGVybmZhbGxzIGVyaGFsdGVuIFNpZSBlaW5lbiBnbG9iYWxlbiBLb25mbGlrdCBpbSBJbmhhbHQgZGVzIEVpbnRyYWdzKS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjI4CisjLCBuby13cmFwCittc2dpZCAiQjwtLW1lcmdlLXByZXJlbGVhc2VzPiwgQjwtbT4iCittc2dzdHIgIkI8LS1tZXJnZS1wcmVyZWxlYXNlcz4sIEI8LW0+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjMzCittc2dpZCAiIgorIkRyb3AgdGhlIHBhcnQgYWZ0ZXIgdGhlIGxhc3QgdGlsZGUgaW4gdGhlIHZlcnNpb24gbnVtYmVyIHdoZW4gZG9pbmcgdmVyc2lvbiAiCisiY29tcGFyaXNvbiB0byBpZGVudGlmeSBpZiB0d28gZW50cmllcyBhcmUgc3VwcG9zZWQgdG8gYmUgdGhlIHNhbWUgb3Igbm90LiIKK21zZ3N0ciAiIgorIkVudGZlcm50IGRlbiBUZWlsIG5hY2ggZGVyIGxldHp0ZW4gVGlsZGUgaW4gZGVyIFZlcnNpb25zbnVtbWVyIGJlaW0gIgorIlZlcnNpb25zdmVyZ2xlaWNoLCB1bSBmZXN0enVzdGVsbGVuLCBvYiB6d2VpIEVpbnRyw6RnZSBpZGVudGlzY2ggc2VpbiBzb2xsZW4gIgorIm9kZXIgbmljaHQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjM4Cittc2dpZCAiIgorIlRoaXMgaXMgdXNlZnVsIHdoZW4geW91IGtlZXAgdXNpbmcgdGhlIHNhbWUgY2hhbmdlbG9nIGVudHJ5IGJ1dCB5b3UgaW5jcmVhc2UgIgorIml0cyB2ZXJzaW9uIG51bWJlciByZWd1bGFybHkuIEZvciBpbnN0YW5jZSwgeW91IG1pZ2h0IGhhdmUgMi4zLTF+ZXhwMSwgIgorIjIuMy0xfmV4cDIsIC4uLiB1bnRpbCB0aGUgb2ZmaWNpYWwgcmVsZWFzZSAyLjMtMSBhbmQgdGhleSBhcmUgYWxsIHRoZSBzYW1lICIKKyJjaGFuZ2Vsb2cgZW50cnkgdGhhdCBoYXMgZXZvbHZlZCBvdmVyIHRpbWUuIgorbXNnc3RyICIiCisiRGllcyBpc3QgbsO8dHpsaWNoLCB3ZW5uIFNpZSBkZW4gZ2xlaWNoZW4gQ2hhbmdlbG9nLUVpbnRyYWcgYmVpYmVoYWx0ZW4sIGFiZXIgIgorInJlZ2VsbcOkw59pZyBkaWUgVmVyc2lvbnNudW1tZXIgZXJow7ZoZW4uIEJlaXNwaWVsc3dlaXNlIGvDtm5udGVuIFNpZSAiCisiMi4zLTF+ZXhwMSwgMi4zLTF+ZXhwMiwgLi4uIGJpcyB6dXIgb2ZmaXppZWxsZW4gVmVyw7ZmZmVudGxpY2h1bmcgMi4zLTEgIgorInZlcndlbmRlbiB1bmQgYWxsZSBlbnRoYWx0ZW4gZGVuIGdsZWljaGVuIENoYW5nZWxvZy1FaW50cmFnLCBkZXIgc2ljaCBpbSAiCisiTGF1ZmUgZGVyIFplaXQgZW50d2lja2VsdCBoYXQuIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTo0NQorIywgbm8td3JhcAorbXNnaWQgIkxJTUlUQVRJT05TIgorbXNnc3RyICJFSU5TQ0hSw4ROS1VOR0VOIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjUwCittc2dpZCAiIgorIkFueXRoaW5nIHRoYXQgaXMgbm90IHBhcnNlZCBieSBEcGtnOjpDaGFuZ2Vsb2cgaXMgbG9zdCBkdXJpbmcgdGhlIG1lcmdlLiAgIgorIlRoaXMgbWlnaHQgaW5jbHVkZSBzdHVmZiBsaWtlIHZpbSBtb2RlbGluZXMsIGNvbW1lbnRzIHdoaWNoIHdlcmUgbm90ICIKKyJzdXBwb3NlZCB0byBiZSB0aGVyZSwgZXRjLiIKK21zZ3N0ciAiIgorIkFsbGVzLCB3YXMgbmljaHQgdm9uIERwa2c6OkNoYW5nZWxvZyBhdXNnZXdlcnRldCB3ZXJkZW4ga2FubiwgZ2VodCBiZWltICIKKyJadXNhbW1lbmbDvGhyZW4gdmVybG9yZW4uIERpZXMgYmV0cmlmZnQgWmV1ZyB3aWUgTW9kZWxpbmVzIHZvbiBWaW0sICIKKyJLb21tZW50YXJlLCBkaWUgZWlnZW50bGljaCBuaWNodCBkYSBzZWluIHNvbGx0ZW4sIHVzdy4iCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjUxCisjLCBuby13cmFwCittc2dpZCAiSU5URUdSQVRJT04gV0lUSCBHSVQiCittc2dzdHIgIklOVEVHUkFUSU9OIE1JVCBHSVQiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6NTYKK21zZ2lkICIiCisiSWYgeW91IHdhbnQgdG8gdXNlIHRoaXMgcHJvZ3JhbSB0byBtZXJnZSBEZWJpYW4gY2hhbmdlbG9nIGZpbGVzIGluIGEgZ2l0ICIKKyJyZXBvc2l0b3J5LCB5b3UgaGF2ZSBmaXJzdCB0byByZWdpc3RlciBhIG5ldyBtZXJnZSBkcml2ZXIgaW4gQjwuZ2l0L2NvbmZpZz4gIgorIm9yIEI8fi8uZ2l0Y29uZmlnPjoiCittc2dzdHIgIiIKKyJGYWxscyBTaWUgZGllc2VzIFByb2dyYW1tIGRhenUgdmVyd2VuZGVuIG3DtmNodGVuLCBEZWJpYW4tQ2hhbmdlbG9nLURhdGVpZW4gIgorImluIGVpbmVtIEdpdC1EZXBvdCB6dXNhbW1lbnp1ZsO8aHJlbiwgbcO8c3NlbiBTaWUgenVlcnN0IGVpbmVuIG5ldWVuIE1lcmdlLSIKKyJEcml2ZXIgaW4gQjwuZ2l0L2NvbmZpZz4gb2RlciBpbiBCPH4vLmdpdGNvbmZpZz4gcmVnaXN0cmllcmVuOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTo2MAorIywgbm8td3JhcAorbXNnaWQgIiIKKyIgW21lcmdlIFwiZHBrZy1tZXJnZWNoYW5nZWxvZ3NcIl1cbiIKKyIgICAgIG5hbWUgPSBkZWJpYW4vY2hhbmdlbG9nIG1lcmdlIGRyaXZlclxuIgorIiAgICAgZHJpdmVyID0gZHBrZy1tZXJnZWNoYW5nZWxvZ3MgLW0gJU8gJUEgJUIgJUFcbiIKK21zZ3N0ciAiIgorIiBbbWVyZ2UgXCJkcGtnLW1lcmdlY2hhbmdlbG9nc1wiXVxuIgorIiAgICAgbmFtZSA9IGRlYmlhbi9jaGFuZ2Vsb2cgbWVyZ2UgZHJpdmVyXG4iCisiICAgICBkcml2ZXIgPSBkcGtnLW1lcmdlY2hhbmdlbG9ncyAtbSAlTyAlQSAlQiAlQVxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjY0Cittc2dpZCAiIgorIlRoZW4geW91IGhhdmUgdG8gc2V0dXAgdGhlIG1lcmdlIGF0dHJpYnV0ZSBmb3IgdGhlIGRlYmlhbi9jaGFuZ2Vsb2cgZmlsZSAiCisiZWl0aGVyIGluIEI8LmdpdGF0dHJpYnV0ZXM+IGluIHRoZSByZXBvc2l0b3J5IGl0c2VsZiwgb3IgaW4gQjwuZ2l0L2luZm8vIgorImF0dHJpYnV0ZXM+OiIKK21zZ3N0ciAiIgorIkRhbm4gbcO8c3NlbiBTaWUgZW50d2VkZXIgaW4gQjwuZ2l0YXR0cmlidXRlcz4gaW0gRGVwb3Qgc2VsYnN0IG9kZXIgaW4gQjwuZ2l0LyIKKyJpbmZvL2F0dHJpYnV0ZXM+IGRhcyBNZXJnZS1BdHRyaWJ1dCBmw7xyIGRpZSBEYXRlaSBkZWJpYW4vY2hhbmdlbG9nICIKKyJlaW5yaWNodGVuOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTo2NgorIywgbm8td3JhcAorbXNnaWQgIiBkZWJpYW4vY2hhbmdlbG9nIG1lcmdlPWRwa2ctbWVyZ2VjaGFuZ2Vsb2dzXG4iCittc2dzdHIgIiBkZWJpYW4vY2hhbmdlbG9nIG1lcmdlPWRwa2ctbWVyZ2VjaGFuZ2Vsb2dzXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6NjgKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAwOS0yMDEwIFJhcGhhXFxbOmVdbCBIZXJ0em9nIgorbXNnc3RyICJDb3B5cmlnaHQgXFwoY28gMjAwOS0yMDEwIFJhcGhhXFxbOmVdbCBIZXJ0em9nIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1uYW1lLjE6NgorIywgbm8td3JhcAorbXNnaWQgImRwa2ctbmFtZSIKK21zZ3N0ciAiZHBrZy1uYW1lIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW5hbWUuMTo5Cittc2dpZCAiZHBrZy1uYW1lIC0gcmVuYW1lIERlYmlhbiBwYWNrYWdlcyB0byBmdWxsIHBhY2thZ2UgbmFtZXMiCittc2dzdHIgImRwa2ctbmFtZSAtIERlYmlhbi1QYWtldGUgenUgdm9sbGVuIFBha2V0bmFtZW4gdW1iZW5lbm5lbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6MTUKK21zZ2lkICJCPGRwa2ctbmFtZT4gW0k8b3B0aW9uPi4uLl0gW0I8LS0+XSBJPGZpbGU+Li4uIgorbXNnc3RyICJCPGRwa2ctbmFtZT4gW0k8T3B0aW9uPi4uLl0gW0I8LS0+XSBJPERhdGVpPi4uLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6MjkKK21zZ2lkICIiCisiVGhpcyBtYW51YWwgcGFnZSBkb2N1bWVudHMgdGhlIEI8ZHBrZy1uYW1lPiBwcm9ncmFtIHdoaWNoIHByb3ZpZGVzIGFuIGVhc3kgIgorIndheSB0byByZW5hbWUgQjxEZWJpYW4+IHBhY2thZ2VzIGludG8gdGhlaXIgZnVsbCBwYWNrYWdlIG5hbWVzLiBBIGZ1bGwgIgorInBhY2thZ2UgbmFtZSBjb25zaXN0cyBvZiBJPHBhY2thZ2U+QjxfPkk8dmVyc2lvbj5CPF8+STxhcmNoaXRlY3R1cmU+QjwuIgorIj5JPHBhY2thZ2UtdHlwZT4gYXMgc3BlY2lmaWVkIGluIHRoZSBjb250cm9sIGZpbGUgb2YgdGhlIHBhY2thZ2UuIFRoZSAiCisiSTx2ZXJzaW9uPiBwYXJ0IG9mIHRoZSBmaWxlbmFtZSBjb25zaXN0cyBvZiB0aGUgdXBzdHJlYW0gdmVyc2lvbiBpbmZvcm1hdGlvbiAiCisib3B0aW9uYWxseSBmb2xsb3dlZCBieSBhIGh5cGhlbiBhbmQgdGhlIHJldmlzaW9uIGluZm9ybWF0aW9uLiBUaGUgSTxwYWNrYWdlLSIKKyJ0eXBlPiBwYXJ0IGNvbWVzIGZyb20gdGhhdCBmaWVsZCBpZiBwcmVzZW50IG9yIGZhbGxiYWNrcyB0byBCPGRlYj4uIgorbXNnc3RyICIiCisiRGllc2UgSGFuZGJ1Y2hzZWl0ZSBkb2t1bWVudGllcnQgZGFzIEI8ZHBrZy1uYW1lPi1Qcm9ncmFtbSwgZGFzIGVpbmUgIgorImVpbmZhY2hlIE3DtmdsaWNoa2VpdCBiZXJlaXRzdGVsbHQsIEI8RGViaWFuPi1QYWtldGUgaW4gaWhyZW4gdm9sbGVuICIKKyJQYWtldG5hbWVuIHVtenViZW5lbm5lbi4gRWluIHZvbGxlciBQYWtldG5hbWUgYmVzdGVodCBhdXMgIgorIkk8UGFrZXQ+QjxfPkk8VmVyc2lvbj5CPF8+STxBcmNoaXRla3R1cj5CPC4+STxQYWtldHR5cD4gd2llIGluIGRlciAiCisiU3RldWVyZGF0ZWkgZGVzIFBha2V0cyBzcGV6aWZpemllcnQuIERlciBJPFZlcnNpb24+LVRlaWwgZGVzIERhdGVpbmFtZW5zICIKKyJiZXN0ZWh0IGF1cyBkZXIgVmVyc2lvbnNpbmZvcm1hdGlvbiBkZXIgT3JpZ2luYWxhdXRvcmVuIG9wdGlvbmFsIGdlZm9sZ3Qgdm9uICIKKyJlaW5lbSBHZWRhbmtlbnN0cmljaCB1bmQgZGVyIFJldmlzaW9uc2luZm9ybWF0aW9uLiBEZXIgSTxQYWtldHR5cD4tVGVpbCAiCisiZW50c3RhbW10IGRlbSBGZWxkIEk8cGFja2FnZV90eXBlPiAoZmFsbHMgdm9yaGFuZGVuKSBvZGVyIHdpcmQgYXVmIEI8ZGViPiAiCisiZ2VzZXR6dC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLW5hbWUuMTozMQorIywgbm8td3JhcAorbXNnaWQgIkI8LWE+LCBCPC0tbm8tYXJjaGl0ZWN0dXJlPiIKK21zZ3N0ciAiQjwtYT4sIEI8LS1uby1hcmNoaXRlY3R1cmU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW5hbWUuMTozNAorbXNnaWQgIlRoZSBkZXN0aW5hdGlvbiBmaWxlbmFtZSB3aWxsIG5vdCBoYXZlIHRoZSBhcmNoaXRlY3R1cmUgaW5mb3JtYXRpb24uIgorbXNnc3RyICJEZXIgWmllbGRhdGVpbmFtZSB3aXJkIGtlaW5lIEFyY2hpdGVrdHVyaW5mb3JtYXRpb24gZW50aGFsdGVuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctbmFtZS4xOjM0CisjLCBuby13cmFwCittc2dpZCAiQjwtaz4sIEI8LS1zeW1saW5rPiIKK21zZ3N0ciAiQjwtaz4sIEI8LS1zeW1saW5rPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6MzcKK21zZ2lkICJDcmVhdGUgYSBzeW1saW5rLCBpbnN0ZWFkIG9mIG1vdmluZy4iCittc2dzdHIgIkxlZ2UgZWluZW4gU3ltbGluayBhbiwgYW5zdGF0dCB6dSB2ZXJzY2hpZWJlbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLW5hbWUuMTozNworIywgbm8td3JhcAorbXNnaWQgIkI8LW8+LCBCPC0tb3ZlcndyaXRlPiIKK21zZ3N0ciAiQjwtbz4sIEI8LS1vdmVyd3JpdGU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW5hbWUuMTo0MQorbXNnaWQgIiIKKyJFeGlzdGluZyBmaWxlcyB3aWxsIGJlIG92ZXJ3cml0dGVuIGlmIHRoZXkgaGF2ZSB0aGUgc2FtZSBuYW1lIGFzIHRoZSAiCisiZGVzdGluYXRpb24gZmlsZW5hbWUuIgorbXNnc3RyICIiCisiRXhpc3RpZXJlbmRlIERhdGVpZW4gd2VyZGVuIMO8YmVyc2NocmllYmVuLCBmYWxscyBzaWUgZGVuIGdsZWljaGVuIE5hbWVuIHdpZSAiCisiZGVyIFppZWxkYXRlaW5hbWUgaGFiZW4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1uYW1lLjE6NDEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1zPiwgQjwtLXN1YmRpcj4gW0k8ZGlyPl0iCittc2dzdHIgIkI8LXM+LCBCPC0tc3ViZGlyPiBbSTxWZXJ6ZWljaG5pcz5dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW5hbWUuMTo1MworbXNnaWQgIiIKKyJGaWxlcyB3aWxsIGJlIG1vdmVkIGludG8gYSBzdWJkaXJlY3RvcnkuIElmIHRoZSBkaXJlY3RvcnkgZ2l2ZW4gYXMgYXJndW1lbnQgIgorImV4aXN0cyB0aGUgZmlsZXMgd2lsbCBiZSBtb3ZlZCBpbnRvIHRoYXQgZGlyZWN0b3J5IG90aGVyd2lzZSB0aGUgbmFtZSBvZiB0aGUgIgorInRhcmdldCBkaXJlY3RvcnkgaXMgZXh0cmFjdGVkIGZyb20gdGhlIHNlY3Rpb24gZmllbGQgaW4gdGhlIGNvbnRyb2wgcGFydCBvZiAiCisidGhlIHBhY2thZ2UuIFRoZSB0YXJnZXQgZGlyZWN0b3J5IHdpbGwgYmUgYHVuc3RhYmxlL2JpbmFyeS1JPGFyY2hpdGVjdHVyZT4vIgorIkk8c2VjdGlvbj4nLiBJZiB0aGUgc2VjdGlvbiBpcyBub3QgZm91bmQgaW4gdGhlIGNvbnRyb2wsIHRoZW4gYG5vLXNlY3Rpb24nICIKKyJpcyBhc3N1bWVkLCBhbmQgaW4gdGhpcyBjYXNlLCBhcyB3ZWxsIGFzIGZvciBzZWN0aW9ucyBgbm9uLWZyZWUnIGFuZCAiCisiYGNvbnRyaWInIHRoZSB0YXJnZXQgZGlyZWN0b3J5IGlzIGBJPHNlY3Rpb24+L2JpbmFyeS1JPGFyY2hpdGVjdHVyZT4nLiBUaGUgIgorInNlY3Rpb24gZmllbGQgaXNuJ3QgcmVxdWlyZWQgc28gYSBsb3Qgb2YgcGFja2FnZXMgd2lsbCBmaW5kIHRoZWlyIHdheSB0byB0aGUgIgorImBuby1zZWN0aW9uJyBhcmVhLiBVc2UgdGhpcyBvcHRpb24gd2l0aCBjYXJlLCBpdCdzIG1lc3N5LiIKK21zZ3N0ciAiIgorIkRhdGVpZW4gd2VyZGVuIGluIGVpbiBVbnRlcnZlcnplaWNobmlzIHZlcnNjaG9iZW4uIEZhbGxzIGRhcyBhbHMgQXJndW1lbnQgIgorImV4aXN0aWVyZW5kZSBWZXJ6ZWljaG5pcyBleGlzdGllcnQsIGRhbm4gd2VyZGVuIGRpZSBEYXRlaWVuIGluIGRhcyAiCisiVmVyemVpY2huaXMgdmVyc2Nob2JlbiwgYW5kZXJuZmFsbHMgd2lyZCBkYXMgWmllbHZlcnplaWNobmlzIGF1cyBkZW0gIgorIsK7c2VjdGlvbsKrLUZlbGQgZGVzIFN0ZXVlcnRlaWxzIGRlcyBQYWtldHMgZXh0cmFoaWVydC4gRGFzIFppZWx2ZXJ6ZWljaG5pcyAiCisid2lyZCDCu3Vuc3RhYmxlL2JpbmFyeS1JPEFyY2hpdGVrdHVyPi9JPEJlcmVpY2g+wqsgc2Vpbi4gRmFsbHMgZGVyIEJlcmVpY2ggIgorIm5pY2h0IGluIGRlciBTdGV1ZXJkYXRlaSBnZWZ1bmRlbiB3ZXJkZW4ga2FubiwgZGFubiB3aXJkIMK7bm8tc2VjdGlvbsKrICIKKyJhbmdlbm9tbWVuLCB1bmQgaW4gZGllc2VtIEZhbGwsIHdpZSBhdWNoIGbDvHIgZGllIEJlcmVpY2hlIMK7bm9uLWZyZWXCqyB1bmQgIgorIsK7Y29udHJpYsKrIGlzdCBkYXMgWmllbHZlcnplaWNobmlzIMK7STxCZXJlaWNoPi9iaW5hcnktSTxBcmNoaXRla3R1cj7Cqy4gRGFzICIKKyJCZXJlaWNoc2ZlbGQgbXVzcyBuaWNodCBhbmdlZ2ViZW4gd2VyZGVuLCBkYWhlciB3ZXJkZW4gdmllbGUgUGFrZXRlIGlocmVuICIKKyJXZWcgaW4gZGFzIMK7bm8tc2VjdGlvbsKrLUdlYmlldCBmaW5kZW4uIFZlcndlbmRlbiBTaWUgZGllc2UgT3B0aW9uIG1pdCAiCisiVm9yc2ljaHQsIHNpZSBpc3QgdW5vcmRlbnRsaWNoLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctbmFtZS4xOjUzCisjLCBuby13cmFwCittc2dpZCAiQjwtYz4sIEI8LS1jcmVhdGUtZGlyPiIKK21zZ3N0ciAiQjwtYz4sIEI8LS1jcmVhdGUtZGlyPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6NTgKK21zZ2lkICIiCisiVGhpcyBvcHRpb24gY2FuIHVzZWQgdG9nZXRoZXIgd2l0aCB0aGUgLXMgb3B0aW9uLiBJZiBhIHRhcmdldCBkaXJlY3RvcnkgIgorImlzbid0IGZvdW5kIGl0IHdpbGwgYmUgY3JlYXRlZCBhdXRvbWF0aWNhbGx5LiAgQjxVc2UgdGhpcyBvcHRpb24gd2l0aCBjYXJlLj4iCittc2dzdHIgIiIKKyJEaWVzZSBPcHRpb24ga2FubiB6dXNhbW1lbiBtaXQgZGVyIE9wdGlvbiAtcyB2ZXJ3ZW5kZXQgd2VyZGVuLiBGYWxscyBkYXMgIgorIlppZWx2ZXJ6ZWljaG5pcyBuaWNodCBnZWZ1bmRlbiB3ZXJkZW4ga2Fubiwgd2lyZCBlcyBhdXRvbWF0aXNjaCBhbmdlbGVndC4gIgorIkI8VmVyd2VuZGVuIFNpZSBkaWVzZSBPcHRpb24gbWl0IFZvcnNpY2h0Lj4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLW5hbWUuMTo2MQorIywgbm8td3JhcAorbXNnaWQgIkI8LXY+LCBCPC0tdmVyc2lvbj4iCittc2dzdHIgIkI8LXY+LCBCPC0tdmVyc2lvbj4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLW5hbWUuMTo2NgorIywgbm8td3JhcAorbXNnaWQgIkI8ZHBrZy1uYW1lIGJhci1mb28uZGViPiIKK21zZ3N0ciAiQjxkcGtnLW5hbWUgYmFyLWZvby5kZWI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW5hbWUuMTo3MQorbXNnaWQgIiIKKyJUaGUgZmlsZSBgYmFyLWZvby5kZWInIHdpbGwgYmUgcmVuYW1lZCB0byBiYXItZm9vXzEuMC0yX2kzODYuZGViIG9yICIKKyJzb21ldGhpbmcgc2ltaWxhciAoZGVwZW5kaW5nIG9uIHdoYXRldmVyIGluZm9ybWF0aW9uIGlzIGluIHRoZSBjb250cm9sIHBhcnQgIgorIm9mIGBiYXItZm9vLmRlYicpLiIKK21zZ3N0ciAiIgorIkRpZSBEYXRlaSDCu2Jhci1mb28uZGViwqsgd2lyZCBpbiBiYXItZm9vXzEuMC0yX2kzODYuZGViIG9kZXIgZXR3YXMgw6RobmxpY2hlcyAiCisiKGFiaMOkbmdpZyB2b24gZGVyIEluZm9ybWF0aW9uLCBkaWUgaW4gZGVtIFN0ZXVlcnRlaWwgdm9uIMK7YmFyLWZvby5kZWLCqyBpc3QpICIKKyJ1bWJlbmFubnQuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1uYW1lLjE6NzEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGZpbmQgL3Jvb3QvZGViaWFuLyAtbmFtZSBcXChhcSouZGViXFwoYXEgfCB4YXJncyAtbiAxIGRwa2ctbmFtZSAtYT4iCittc2dzdHIgIkI8ZmluZCAvcm9vdC9kZWJpYW4vIC1uYW1lIFxcKGFxKi5kZWJcXChhcSB8IHhhcmdzIC1uIDEgZHBrZy1uYW1lIC1hPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6NzYKK21zZ2lkICIiCisiQWxsIGZpbGVzIHdpdGggdGhlIGV4dGVuc2lvbiBgZGViJyBpbiB0aGUgZGlyZWN0b3J5IC9yb290L2RlYmlhbiBhbmQgaXRzICIKKyJzdWJkaXJlY3RvcnkncyB3aWxsIGJlIHJlbmFtZWQgYnkgZHBrZy1uYW1lIGlmIHJlcXVpcmVkIGludG8gbmFtZXMgd2l0aCBubyAiCisiYXJjaGl0ZWN0dXJlIGluZm9ybWF0aW9uLiIKK21zZ3N0ciAiIgorIkFsbGUgRGF0ZWllbiBtaXQgZGVyIEVuZHVuZyDCu2RlYsKrIGltIFZlcnplaWNobmlzIC9yb290L2RlYmlhbiB1bmQgc2VpbmVyICIKKyJVbnRlcnZlcnplaWNobmlzc2Ugd2VyZGVuIHZvbiBkcGtnLW5hbWUgLSBmYWxscyBub3R3ZW5kaWcgLSBvaG5lICIKKyJBcmNoaXRla3R1cmluZm9ybWF0aW9uIHVtYmVuYW5udC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLW5hbWUuMTo3NgorIywgbm8td3JhcAorbXNnaWQgIkI8ZmluZCAtbmFtZSBcXChhcSouZGViXFwoYXEgfCB4YXJncyAtbiAxIGRwa2ctbmFtZSAtYSAtbyAtcyAtYz4iCittc2dzdHIgIkI8ZmluZCAtbmFtZSBcXChhcSouZGViXFwoYXEgfCB4YXJncyAtbiAxIGRwa2ctbmFtZSAtYSAtbyAtcyAtYz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbmFtZS4xOjgyCittc2dpZCAiIgorIkI8RG9uJ3QgZG8gdGhpcy4+IFlvdXIgYXJjaGl2ZSB3aWxsIGJlIG1lc3NlZCB1cCBjb21wbGV0ZWx5IGJlY2F1c2UgYSBsb3Qgb2YgIgorInBhY2thZ2VzIGRvbid0IGNvbWUgd2l0aCBzZWN0aW9uIGluZm9ybWF0aW9uLiAgQjxEb24ndCBkbyB0aGlzLj4iCittc2dzdHIgIiIKKyJCPE1hY2hlbiBTaWUgZGllcyBuaWNodC4+IElociBBcmNoaXYgd2lyZCBlaW5lIGtvbXBsZXR0ZSBTY2h3ZWluZXJlaSB3ZXJkZW4sICIKKyJkYSB2aWVsZSBQYWtldGUgbmljaHQgbWl0IEJlcmVpY2hzaW5mb3JtYXRpb25lbiBrb21tZW4uIEI8TWFjaGVuIFNpZSBkaWVzICIKKyJuaWNodC4+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1uYW1lLjE6ODIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGRwa2cgLS1idWlsZCBkZWJpYW4tdG1wICYmIGRwa2ctbmFtZSAtbyAtcyAuLiBkZWJpYW4tdG1wLmRlYj4iCittc2dzdHIgIkI8ZHBrZyAtLWJ1aWxkIGRlYmlhbi10bXAgJiYgZHBrZy1uYW1lIC1vIC1zIC4uIGRlYmlhbi10bXAuZGViPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6ODUKK21zZ2lkICJUaGlzIGNhbiBiZSB1c2VkIHdoZW4gYnVpbGRpbmcgbmV3IHBhY2thZ2VzLiIKK21zZ3N0ciAiRGllcyBrYW5uIGJlaW0gQmF1IG5ldWVyIFBha2V0ZSB2ZXJ3ZW5kZXQgd2VyZGVuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6OTUKK21zZ2lkICIiCisiU29tZSBwYWNrYWdlcyBkb24ndCBmb2xsb3cgdGhlIG5hbWUgc3RydWN0dXJlICIKKyJJPHBhY2thZ2U+QjxfPkk8dmVyc2lvbj5CPF8+STxhcmNoaXRlY3R1cmU+QjwuZGViPi4gIFBhY2thZ2VzIHJlbmFtZWQgYnkgIgorImRwa2ctbmFtZSB3aWxsIGZvbGxvdyB0aGlzIHN0cnVjdHVyZS4gR2VuZXJhbGx5IHRoaXMgd2lsbCBoYXZlIG5vIGltcGFjdCBvbiAiCisiaG93IHBhY2thZ2VzIGFyZSBpbnN0YWxsZWQgYnkgQjxkc2VsZWN0PigxKS9CPGRwa2c+KDEpLCBidXQgb3RoZXIgIgorImluc3RhbGxhdGlvbiB0b29scyBtaWdodCBkZXBlbmQgb24gdGhpcyBuYW1pbmcgc3RydWN0dXJlLiIKK21zZ3N0ciAiIgorIkVpbmlnZSBQYWtldGUgZm9sZ2VuIG5pY2h0IGRlciBOYW1lbnNzdHJ1a3R1ciAiCisiSTxQYWtldD5CPF8+STxWZXJzaW9uPkI8Xz5JPEFyY2hpdGVrdHVyPkI8LmRlYj4uIFBha2V0ZSwgZGllIHZvbiBkcGtnLW5hbWUgIgorInVtYmVuYW5udCB3dXJkZW4sIGZvbGdlbiBkaWVzZXIgU3RydWt0dXIuIEltIEFsbGdlbWVpbmVuIGhhdCBkaWVzZSBrZWluZW4gIgorIkVpbmZsdXNzIGRhcmF1Ziwgd2llIFBha2V0ZSB2b24gQjxkc2VsZWN0PigxKS9CPGRwa2c+KDEpIGluc3RhbGxpZXJ0IHdlcmRlbiwgIgorImFiZXIgYW5kZXJlIEluc3RhbGxhdGlvbnN3ZXJremV1Z2Uga8O2bm5lbiB2b24gZGllc2VyIEJlbmVubnVuZ3NzdHJ1a3R1ciAiCisiYWJow6RuZ2VuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6MTAzCittc2dpZCAiIgorIkI8ZGViPig1KSwgQjxkZWItY29udHJvbD4oNSksIEI8ZHBrZz4oMSksIEI8ZHBrZy1kZWI+KDEpLCBCPGZpbmQ+KDEpLCAiCisiQjx4YXJncz4oMSkuIgorbXNnc3RyICIiCisiQjxkZWI+KDUpLCBCPGRlYi1jb250cm9sPig1KSwgQjxkcGtnPigxKSwgQjxkcGtnLWRlYj4oMSksIEI8ZmluZD4oMSksICIKKyJCPHhhcmdzPigxKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbmFtZS4xOjEwNgorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAxOTk1LDE5OTYgRXJpY2sgQnJhbmRlcmhvcnN0IgorbXNnc3RyICJDb3B5cmlnaHQgXFwoY28gMTk5NSwxOTk2IEVyaWNrIEJyYW5kZXJob3JzdCIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxCisjLCBuby13cmFwCittc2dpZCAiZHBrZy1wYXJzZWNoYW5nZWxvZyIKK21zZ3N0ciAiZHBrZy1wYXJzZWNoYW5nZWxvZyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjQKK21zZ2lkICJkcGtnLXBhcnNlY2hhbmdlbG9nIC0gcGFyc2UgRGViaWFuIGNoYW5nZWxvZyBmaWxlcyIKK21zZ3N0ciAiZHBrZy1wYXJzZWNoYW5nZWxvZyAtIGF1c3dlcnRlbiB2b24gRGViaWFuIGNoYW5nZWxvZy1EYXRlaWVuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6OAorbXNnaWQgIkI8ZHBrZy1wYXJzZWNoYW5nZWxvZz4gW0k8b3B0aW9uPi4uLl0iCittc2dzdHIgIkI8ZHBrZy1wYXJzZWNoYW5nZWxvZz4gW0k8T3B0aW9uPi4uLl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxNAorbXNnaWQgIiIKKyJCPGRwa2ctcGFyc2VjaGFuZ2Vsb2c+IHJlYWRzIGFuZCBwYXJzZXMgdGhlIGNoYW5nZWxvZyBvZiBhbiB1bnBhY2tlZCBEZWJpYW4gIgorInNvdXJjZSB0cmVlIGFuZCBvdXRwdXRzIHRoZSBpbmZvcm1hdGlvbiBpbiBpdCB0byBzdGFuZGFyZCBvdXRwdXQgaW4gYSAiCisibWFjaGluZS1yZWFkYWJsZSBmb3JtLiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1wYXJzZWNoYW5nZWxvZz4gbGllc3QgZGFzIMOEbmRlcnVuZ3Nwcm90b2tvbGwgKMK7Y2hhbmdlbG9nwqspIGVpbmVzICIKKyJlbnRwYWNrdGVuIERlYmlhbi1RdWVsbGNvZGViYXVtcyBlaW4sIHdlcnRldCBkaWVzZSBhdXMgdW5kIGdpYnQgZGllICIKKyJJbmZvcm1hdGlvbmVuIGluIGRlciBTdGFuZGFyZC1BdXNnYWJlIGluIG1hc2NoaW5lbmxlc2JhcmVyIEZvcm0gYXVzLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToyNgorIywgbm8td3JhcAorbXNnaWQgIkI8LUw+STxsaWJkaXI+IgorbXNnc3RyICJCPC1MPkk8bGlidmVyemVpY2huaXM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MzMKK21zZ2lkICIiCisiU3BlY2lmeSBhbiBhZGRpdGlvbmFsIGRpcmVjdG9yeSB0byBzZWFyY2ggZm9yIHBhcnNlciBzY3JpcHRzLiAgVGhpcyAiCisiZGlyZWN0b3J5IGlzIHNlYXJjaGVkIGJlZm9yZSB0aGUgZGVmYXVsdCBkaXJlY3RvcmllcyB3aGljaCBhcmUgY3VycmVudGx5IEI8LyIKKyJ1c3IvbG9jYWwvbGliL2Rwa2cvcGFyc2VjaGFuZ2Vsb2c+IGFuZCBCPC91c3IvbGliL2Rwa2cvcGFyc2VjaGFuZ2Vsb2c+LiIKK21zZ3N0ciAiIgorIlNwZXppZml6aWVyZSBlaW4genVzw6R0emxpY2hlcyBWZXJ6ZWljaG5pcywgZGFzcyBuYWNoIFBhcnNlci1Ta3JpcHRlbiAiCisiZHVyY2hzdWNodCB3ZXJkZW4gc29sbC4gRGllc2UgVmVyemVpY2huaXMgd2lyZCB2b3IgZGVuICIKKyJTdGFuZGFyZHZlcnplaWNobmlzc2VuIChkZXJ6ZWl0IEI8L3Vzci9sb2NhbC9saWIvZHBrZy9wYXJzZWNoYW5nZWxvZz4gdW5kIEI8LyIKKyJ1c3IvbGliL2Rwa2cvcGFyc2VjaGFuZ2Vsb2c+KSBkdXJjaHN1Y2h0LiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTozOQorIywgbm8td3JhcAorbXNnaWQgIlBhcnNlciBPcHRpb25zIgorbXNnc3RyICJQYXJzZXItT3B0aW9uZW46IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6NDQKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBvcHRpb25zIGNhbiBiZSB1c2VkIHRvIGluZmx1ZW5jZSB0aGUgb3V0cHV0IG9mIHRoZSBjaGFuZ2Vsb2cgIgorInBhcnNlciwgZS5nLiB0aGUgcmFuZ2Ugb2YgZW50cmllcyBvciB0aGUgZm9ybWF0IG9mIHRoZSBvdXRwdXQuIFRoZXkgbmVlZCB0byAiCisiYmUgc3VwcG9ydGVkIGJ5IHRoZSBwYXJzZXIgc2NyaXB0IGluIHF1ZXN0aW9uLiBTZWUgYWxzbyBCPENBVkVBVFM+LiIKK21zZ3N0ciAiIgorIkRpZSBmb2xnZW5kZW4gT3B0aW9uZW4ga8O2bm5lbiB2ZXJ3ZW5kZXQgd2VyZGVuLCB1bSBkaWUgQXVzZ2FiZSBkZXMgQ2hhbmdlbG9nLSIKKyJQYXJzZXJzIHp1IGJlaW5mbHVzc2VuLCB6LkIuIGRlbiBCZXJlaWNoIGRlciBFaW50csOkZ2Ugb2RlciBkYXMgRm9ybWF0IGRlciAiCisiQXVzZ2FiZS4gU2llIG3DvHNzZW4gdm9tIGluIEZyYWdlIGtvbW1lbmRlbiBQYXJzZXItU2tyaXB0IHVudGVyc3TDvHR6dCB3ZXJkZW4uICIKKyJMZXNlbiBTaWUgYXVjaCBCPFdBUk5VTkdFTj4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjQ0CisjLCBuby13cmFwCittc2dpZCAiQjwtLWZvcm1hdD5JPCBvdXRwdXRmb3JtYXQ+IgorbXNnc3RyICJCPC0tZm9ybWF0Pkk8IEF1c2dhYmVmb3JtYXQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6NTMKK21zZ2lkICIiCisiU2V0IHRoZSBvdXRwdXQgZm9ybWF0LiBDdXJyZW50bHkgc3VwcG9ydGVkIHZhbHVlcyBhcmUgSTxkcGtnPiBhbmQgIgorIkk8cmZjODIyPi4gIEk8ZHBrZz4gaXMgdGhlIGNsYXNzaWMgb3V0cHV0IGZvcm1hdCAoZnJvbSBiZWZvcmUgdGhpcyBvcHRpb24gIgorImV4aXN0ZWQpIGFuZCB0aGUgZGVmYXVsdC4gSXQgY29uc2lzdHMgb2Ygb25lIHBhcmFncmFwaCBpbiBEZWJpYW4gY29udHJvbCAiCisiZm9ybWF0IChzZWUgQjxkZWItY29udHJvbD4oNSkpLiBJZiBtb3JlIHRoYW4gb25lIGVudHJ5IGlzIHJlcXVlc3RlZCwgdGhlbiAiCisibW9zdCBmaWVsZHMgYXJlIHRha2VuIGZyb20gdGhlIGxhdGVzdCBlbnRyeSwgZXhjZXB0IG90aGVyd2lzZSBzdGF0ZWQ6IgorbXNnc3RyICIiCisiU2V0emUgZGFzIEF1c2dhYmVmb3JtYXQuIERlcnplaXQgd2VyZGVuIGRpZSBXZXJ0ZSBJPGRwa2c+IHVuZCBJPHJmYzgyMj4gIgorInVudGVyc3TDvHR6dC4gSTxkcGtnPiBpc3QgZGFzIGtsYXNzaXNjaGUgQXVzZ2FiZWZvcm1hdCAoZXMgZXhpc3RpZXJ0IGzDpG5nZXIgIgorImFscyBkaWVzZSBPcHRpb24pLCBkYXMgdm9yZWluZ2VzdGVsbHQgaXN0LiBFcyBiZXN0ZWh0IGF1cyBlaW5lbSBBYnNhdHogaW0gIgorIkRlYmlhbi1TdGV1ZXJmb3JtYXQgKGxlc2VuIFNpZSBCPGRlYi1jb250cm9sPig1KSkuIEZhbGxzIG1laHIgYWxzIGVpbiAiCisiRWludHJhZyBhbmdlZm9yZGVydCB3aXJkLCBkYW5uIHdlcmRlbiBkaWUgbWVpc3RlbiBGZWxkZXIgYXVzIGRlbSBsZXR6dGVuICIKKyJFaW50cmFnIHZlcndlbmRldCwgZmFsbHMgZGllcyBuaWNodCBhbmRlcnMgYW5nZWdlYmVuIHdpcmQ6IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjU0CisjLCBuby13cmFwCittc2dpZCAiQjxTb3VyY2U6Pkk8IHBrZy1uYW1lPiIKK21zZ3N0ciAiQjxTb3VyY2U6Pkk8IFBha2V0bmFtZT4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6NTYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPFZlcnNpb246Pkk8IHZlcnNpb24+IgorbXNnc3RyICJCPFZlcnNpb246Pkk8IFZlcnNpb24+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjU4CisjLCBuby13cmFwCittc2dpZCAiQjxEaXN0cmlidXRpb246Pkk8IHRhcmdldC1kaXN0cmlidXRpb24+IgorbXNnc3RyICJCPERpc3RyaWJ1dGlvbjo+STwgWmllbC1EaXN0cmlidXRpb24+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjYwCisjLCBuby13cmFwCittc2dpZCAiQjxVcmdlbmN5Oj5JPCB1cmdlbmN5PiIKK21zZ3N0ciAiQjxVcmdlbmN5Oj5JPCBEcmluZ2xpY2hrZWl0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjYzCittc2dpZCAiVGhlIGhpZ2hlc3QgdXJnZW5jeSBvZiBhbGwgaW5jbHVkZWQgZW50cmllcyBpcyB1c2VkLiIKK21zZ3N0ciAiRGllIGjDtmNoc3RlIERyaW5nbGljaGtlaXQgYWxsZXIgZW50aGFsdGVuZW4gRWludHLDpGdlIHdpcmQgdmVyd2VuZGV0LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo2MworIywgbm8td3JhcAorbXNnaWQgIkI8TWFpbnRhaW5lcjo+STwgYXV0aG9yPiIKK21zZ3N0ciAiQjxNYWludGFpbmVyOj5JPCBBdXRvcj4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6NjUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPERhdGU6Pkk8IGRhdGU+IgorbXNnc3RyICJCPERhdGU6Pkk8IERhdHVtPiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo2NworIywgbm8td3JhcAorbXNnaWQgIkI8Q2xvc2VzOj5JPCBidWctbnVtYmVyPiIKK21zZ3N0ciAiQjxDbG9zZXM6Pkk8IEZlaGxlcm51bW1lcj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo3MAorbXNnaWQgIlRoZSBDbG9zZXMgZmllbGRzIG9mIGFsbCBpbmNsdWRlZCBlbnRyaWVzIGFyZSBtZXJnZWQuIgorbXNnc3RyICJEaWUgRmVsZGVyIMK7Q2xvc2VzwqsgYWxsZXIgZW50aGFsdGVuZW4gRWludHLDpGdlIHdlcmRlbiB6dXNhbW1lbmdlZmFzc3QuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjcwCisjLCBuby13cmFwCittc2dpZCAiQjxDaGFuZ2VzOj5JPCBjaGFuZ2Vsb2ctZW50cmllcz4iCittc2dzdHIgIkI8Q2hhbmdlczo+STwgQ2hhbmdlbG9nLUVpbnRyw6RnZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo3NworbXNnaWQgIiIKKyJUaGUgdGV4dCBvZiBhbGwgY2hhbmdlbG9nIGVudHJpZXMgaXMgY29uY2F0ZW5hdGVkLiBUbyBtYWtlIHRoaXMgZmllbGQgYSAiCisidmFsaWQgRGViaWFuIGNvbnRyb2wgZm9ybWF0IG11bHRpbGluZSBmaWVsZCBlbXB0eSBsaW5lcyBhcmUgcmVwbGFjZWQgd2l0aCBhICIKKyJzaW5nbGUgZnVsbCBzdG9wIGFuZCBhbGwgbGluZXMgaXMgaW50ZW5kZWQgYnkgb25lIHNwYWNlIGNoYXJhY3Rlci4gVGhlIGV4YWN0ICIKKyJjb250ZW50IGRlcGVuZHMgb24gdGhlIGNoYW5nZWxvZyBmb3JtYXQuIgorbXNnc3RyICIiCisiRGVyIFRleHQgYWxsZXIgQ2hhbmdlbG9nLUVpbnRyw6RnZSB3aXJkIGFuZWluYW5kZXJnZWjDpG5ndC4gVW0gYXVzIGRpZXNlbSBGZWxkICIKKyJlaW4gZ8O8bHRpZ2VzIG1laHJ6ZWlsaWdlcyBGZWxkIGltIERlYmlhbiBTdGV1ZXItRm9ybWF0IHp1IGJla29tZW4sIHdlcmRlbiAiCisibGVlcmUgWmVpbGVuIG1pdCBlaW5lbSBlaW56ZWxuZW4gU2F0enB1bmt0IGVyc2V0enQgdW5kIGFsbGUgWmVpbGVuIGR1cmNoIGVpbiAiCisiTGVlcnplaWNoZW4gZWluZ2Vyw7xja3QuIERlciBnZW5hdWUgSW5oYWx0IGjDpG5ndCB2b20gQ2hhbmdlbG9nLUZvcm1hdCBhYi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo4MAorbXNnaWQgIlRoZXJlIG1pZ2h0IGJlIGFkZGl0aW9uYWwgdXNlci1kZWZpbmVkIGZpZWxkcyBwcmVzZW50LiIKK21zZ3N0ciAiRXMga8O2bm5lbiB6dXPDpHR6bGljaGUgYmVudXR6ZXJkZWZpbmllcnRlIEZlbGRlciB2b3JoYW5kZW4gc2Vpbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo4NAorbXNnaWQgIiIKKyJUaGUgQjxyZmM4MjI+IGZvcm1hdCB1c2VzIHRoZSBzYW1lIGZpZWxkcyBidXQgb3V0cHV0cyBhIHNlcGFyYXRlIHBhcmFncmFwaCAiCisiZm9yIGVhY2ggY2hhbmdlbG9nIGVudHJ5IHNvIHRoYXQgYWxsIG1ldGFkYXRhIGZvciBlYWNoIGVudHJ5IGlzIHByZXNlcnZlZC4iCittc2dzdHIgIiIKKyJEYXMgQjxyZmM4MjI+LUZvcm1hdCB2ZXJ3ZW5kZXQgZGllIGdsZWljaGVuIEZlbGRlciwgZ2lidCBhYmVyIGVpbnplbG5lICIKKyJBYnPDpHR6ZSBmw7xyIGplZGVuIENoYW5nZWxvZy1FaW50cmFnIGF1cywgc28gZGFzcyBhbGxlIE1ldGFkYXRlbiBmw7xyIGplZGVuICIKKyJFaW50cmFnIGVyaGFsdGVuIGJsZWliZW4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjg0CisjLCBuby13cmFwCittc2dpZCAiQjwtLXNpbmNlPiBJPHZlcnNpb24+LCBCPC1zPkk8dmVyc2lvbj4sQjwgLXY+STx2ZXJzaW9uPiIKK21zZ3N0ciAiQjwtLXNpbmNlPiBJPFZlcnNpb24+LCBCPC1zPkk8VmVyc2lvbj4sQjwgLXY+STxWZXJzaW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjg3Cittc2dpZCAiaW5jbHVkZSBhbGwgY2hhbmdlcyBsYXRlciB0aGFuIEk8dmVyc2lvbj4uIgorbXNnc3RyICJmw7xnZSBhbGxlIMOEbmRlcnVuZ2VuIG5ldWVyIGFscyBhdXMgSTxWZXJzaW9uPiBoaW56dS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6ODcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tdW50aWw+IEk8dmVyc2lvbj4sIEI8LXU+STx2ZXJzaW9uPiIKK21zZ3N0ciAiQjwtLXVudGlsPiBJPFZlcnNpb24+LCBCPC11Pkk8VmVyc2lvbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo5MAorbXNnaWQgImluY2x1ZGUgYWxsIGNoYW5nZXMgZWFybGllciB0aGFuIEk8dmVyc2lvbj4uIgorbXNnc3RyICJmw7xnZSBhbGxlIMOEbmRlcnVuZ2VuIMOkbHRlciBhbHMgYXVzIEk8VmVyc2lvbj4gaGluenUuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjkwCisjLCBuby13cmFwCittc2dpZCAiQjwtLWZyb20+IEk8dmVyc2lvbj4sIEI8LWY+STx2ZXJzaW9uPiIKK21zZ3N0ciAiQjwtLWZyb20+IEk8VmVyc2lvbj4sIEI8LWY+STxWZXJzaW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjkzCittc2dpZCAiaW5jbHVkZSBhbGwgY2hhbmdlcyBlcXVhbCBvciBsYXRlciB0aGFuIEk8dmVyc2lvbj4uIgorbXNnc3RyICJmw7xnZSBhbGxlIMOEbmRlcnVuZ2VuIGF1cyBvZGVyIG5ldWVyIGFscyBhdXMgSTxWZXJzaW9uPiBoaW56dS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6OTMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tdG8+IEk8dmVyc2lvbj4sIEI8LXQ+STx2ZXJzaW9uPiIKK21zZ3N0ciAiQjwtLXRvPiBJPFZlcnNpb24+LCBCPC10Pkk8VmVyc2lvbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo5NgorbXNnaWQgImluY2x1ZGUgYWxsIGNoYW5nZXMgdXAgdG8gb3IgZXF1YWwgdGhhbiBJPHZlcnNpb24+LiIKK21zZ3N0ciAiZsO8Z2UgYWxsZSDDhG5kZXJ1bmdlbiBhdXMgb2RlciDDpGx0ZXIgYWxzIGF1cyBJPFZlcnNpb24+IGhpbnp1LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo5NgorIywgbm8td3JhcAorbXNnaWQgIkI8LS1jb3VudD4gSTxudW1iZXI+LCBCPC1jPkk8bnVtYmVyPiwgQjwtbj5JPG51bWJlcj4iCittc2dzdHIgIkI8LS1jb3VudD4gSTxBbnphaGw+LCBCPC1jPkk8QW56YWhsPiwgQjwtbj5JPEFuemFobD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxMDAKK21zZ2lkICIiCisiaW5jbHVkZSBJPG51bWJlcj4gZW50cmllcyBmcm9tIHRoZSB0b3AgKG9yIHRoZSB0YWlsIGlmIEk8bnVtYmVyPiBpcyBsb3dlciAiCisidGhhbiAwKS4iCittc2dzdHIgIiIKKyJmw7xnZSBJPEFuemFobD4gRWludHLDpGdlIHZvbSBLb3BmIChvZGVyIHZvbSBGdcOfLCBmYWxscyBJPEFuemFobD4gbmVnYXRpdiBpc3QpICIKKyJoaW56dS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTAwCisjLCBuby13cmFwCittc2dpZCAiQjwtLW9mZnNldD4gSTxudW1iZXI+LCBCPC1vPkk8bnVtYmVyPiIKK21zZ3N0ciAiQjwtLW9mZnNldD4gSTxaYWhsPiwgQjwtbz5JPFphaGw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTA0Cittc2dpZCAiIgorImNoYW5nZSB0aGUgc3RhcnRpbmcgcG9pbnQgZm9yIC0tY291bnQsIGNvdW50ZWQgZnJvbSB0aGUgdG9wIChvciB0aGUgdGFpbCBpZiAiCisiSTxudW1iZXI+IGlzIGxvd2VyIHRoYW4gMCkuIgorbXNnc3RyICIiCisiw6RuZGVyZSBkZW4gU3RhcnRwdW5rdCBmw7xyIC0tY291bnQsIGdlesOkaGx0IHZvbSBLb3BmIChvZGVyIEZ1w58gZmFsbHMsIGZhbGxzICIKKyJJPFphaGw+IG5lZ2F0aXYgaXN0KS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTA0IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyNjgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tYWxsPiIKK21zZ3N0ciAiQjwtLWFsbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxMDgKK21zZ2lkICIiCisiaW5jbHVkZSBhbGwgY2hhbmdlcy4gTm90ZTogb3RoZXIgb3B0aW9ucyBoYXZlIG5vIGVmZmVjdCB3aGVuIHRoaXMgaXMgaW4gdXNlLiIKK21zZ3N0ciAiIgorImFsbGUgw4RuZGVydW5nZW4gYXVmbmVobWVuLiBIaW53ZWlzOiBBbmRlcmUgT3B0aW9uZW4gaGFiZW4ga2VpbmUgV2lya3VuZywgIgorIndlbm4gZGllc2UgdmVyd2FuZHQgd2lyZC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxMTQKK21zZ2lkICIiCisiQWxsIEI8UGFyc2VyIE9wdGlvbnM+IGV4Y2VwdCBmb3IgLXYgYXJlIG9ubHkgc3VwcG9ydGVkIGluIEI8ZHBrZz4sIHZlcnNpb24gIgorIjEuMTQuMTYgYW5kIGxhdGVyLiBUaGlyZCBwYXJ0eSBwYXJzZXJzIGZvciBjaGFuZ2Vsb2cgZm9ybWF0cyBvdGhlciB0aGFuICIKKyJJPGRlYmlhbj4gbWlnaHQgbm90IHN1cHBvcnQgYWxsIG9wdGlvbnMuIgorbXNnc3RyICIiCisiQWxsZSBCPFBhcnNlci1PcHRpb25lbj4gYXXDn2VyIC12IHdlcmRlbiBudXIgdm9uIEI8ZHBrZz4gVmVyc2lvbiAxLjE0LjE2IG9kZXIgIgorIm5ldWVyIHVudGVyc3TDvHR6dC4gUGFyc2VyIHZvbiBEcml0dGVuIGbDvHIgQ2hhbmdlbG9nLUZvcm1hdGUgYXXDn2VyIEk8ZGViaWFuPiAiCisia8O2bm50ZW4gbmljaHQgYWxsZSBPcHRpb25lbiB1bnRlcnN0w7x0emVuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxMTYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGRlYmlhbi9jaGFuZ2Vsb2c+IgorbXNnc3RyICJCPGRlYmlhbi9jaGFuZ2Vsb2c+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTIyCittc2dpZCAiIgorIlRoZSBjaGFuZ2Vsb2cgZmlsZSwgdXNlZCB0byBvYnRhaW4gdmVyc2lvbi1kZXBlbmRlbnQgaW5mb3JtYXRpb24gYWJvdXQgdGhlICIKKyJzb3VyY2UgcGFja2FnZSwgc3VjaCBhcyB0aGUgdXJnZW5jeSBhbmQgZGlzdHJpYnV0aW9uIG9mIGFuIHVwbG9hZCwgdGhlICIKKyJjaGFuZ2VzIG1hZGUgc2luY2UgYSBwYXJ0aWN1bGFyIHJlbGVhc2UsIGFuZCB0aGUgc291cmNlIHZlcnNpb24gbnVtYmVyICIKKyJpdHNlbGYuIgorbXNnc3RyICIiCisiRGllIGNoYW5nZWxvZy1EYXRlaSB3aXJkIHZlcndlbmRldCwgdW0gdmVyc2lvbnNhYmjDpG5naWdlIEluZm9ybWF0aW9uZW4gw7xiZXIgIgorImRhcyBRdWVsbHBha2V0LCB3aWUgYmVpc3BpZWxzd2Vpc2UgZGllIERyaW5nbGljaGtlaXQgKMK7dXJnZW5jecKrKSB1bmQgZGllICIKKyJEaXN0cmlidXRpb24gZGVzIFVwbG9hZHMsIGRpZSDDhG5kZXJ1bmdlbiBzZWl0IGVpbmVyIGJlc3RpbW10ZW4gIgorIlZlcsO2ZmZlbnRsaWNodW5nIHVuZCBkaWUgUXVlbGx2ZXJzaW9uc251bW1lciBzZWxic3QgenUgZXJoYWx0ZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTI5Cittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMDcsIDIwMDggRnJhbmsgTGljaHRlbmhlbGQiCittc2dzdHIgIkNvcHlyaWdodCBcXChjbyAyMDA3LCAyMDA4IEZyYW5rIExpY2h0ZW5oZWxkIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1xdWVyeS4xOjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLXF1ZXJ5IgorbXNnc3RyICJkcGtnLXF1ZXJ5IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6NAorbXNnaWQgImRwa2ctcXVlcnkgLSBhIHRvb2wgdG8gcXVlcnkgdGhlIGRwa2cgZGF0YWJhc2UiCittc2dzdHIgImRwa2ctcXVlcnkgLSBlaW4gV2Vya3pldWcsIHVtIGRpZSBkcGtnLURhdGVuYmFuayBhYnp1ZnJhZ2VuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6OAorbXNnaWQgIkI8ZHBrZy1xdWVyeT4gW0k8b3B0aW9uPi4uLl0gSTxjb21tYW5kPiIKK21zZ3N0ciAiQjxkcGtnLXF1ZXJ5PiBbSTxPcHRpb24+Li4uXSBJPEJlZmVobD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMToxMgorbXNnaWQgIiIKKyJCPGRwa2ctcXVlcnk+IGlzIGEgdG9vbCB0byBzaG93IGluZm9ybWF0aW9uIGFib3V0IHBhY2thZ2VzIGxpc3RlZCBpbiB0aGUgIgorIkI8ZHBrZz4gZGF0YWJhc2UuIgorbXNnc3RyICIiCisiQjxkcGtnLXF1ZXJ5PiBpc3QgZWluIFdlcmt6ZXVnLCB1bSBJbmZvcm1hdGlvbmVuIMO8YmVyIFBha2V0ZSB6dSB6ZWlnZW4sIGRpZSAiCisiaW4gZGVyIEI8ZHBrZz4tRGF0ZW5iYW5rIGF1ZmdlZsO8aHJ0IHNpbmQuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1xdWVyeS4xOjE0CisjLCBuby13cmFwCittc2dpZCAiQjwtbD4sIEI8LS1saXN0PiBbSTxwYWNrYWdlLW5hbWUtcGF0dGVybj4uLi5dIgorbXNnc3RyICJCPC1sPiwgQjwtLWxpc3Q+IFtJPFBha2V0bmFtZS1NdXN0ZXI+IC4uLl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMToyNAorbXNnaWQgIiIKKyJMaXN0IHBhY2thZ2VzIG1hdGNoaW5nIGdpdmVuIHBhdHRlcm4uIElmIG5vIEk8cGFja2FnZS1uYW1lLXBhdHRlcm4+IGlzICIKKyJnaXZlbiwgbGlzdCBhbGwgcGFja2FnZXMgaW4gSTwvdmFyL2xpYi9kcGtnL3N0YXR1cz4sIGV4Y2x1ZGluZyB0aGUgb25lcyAiCisibWFya2VkIGFzIG5vdC1pbnN0YWxsZWQgKGkuZS4gdGhvc2Ugd2hpY2ggaGF2ZSBiZWVuIHByZXZpb3VzbHkgcHVyZ2VkKS4gIgorIk5vcm1hbCBzaGVsbCB3aWxkY2hhcnMgYXJlIGFsbG93ZWQgaW4gSTxwYWNrYWdlLW5hbWUtcGF0dGVybj4uIFBsZWFzZSBub3RlICIKKyJ5b3Ugd2lsbCBwcm9iYWJseSBoYXZlIHRvIHF1b3RlIEk8cGFja2FnZS1uYW1lLXBhdHRlcm4+IHRvIHByZXZlbnQgdGhlIHNoZWxsICIKKyJmcm9tIHBlcmZvcm1pbmcgZmlsZW5hbWUgZXhwYW5zaW9uLiBGb3IgZXhhbXBsZSB0aGlzIHdpbGwgbGlzdCBhbGwgcGFja2FnZSAiCisibmFtZXMgc3RhcnRpbmcgd2l0aCBgYGxpYmM2Jyc6IgorbXNnc3RyICIiCisiTGlzdGUgUGFrZXRlIGF1ZiwgZGVyZW4gTmFtZW4gYXVmIGVpbiBiZXN0aW1tdGVzIE11c3RlciBwYXNzdC4gRmFsbHMga2VpbiAiCisiSTxQYWtldG5hbWUtTXVzdGVyPiBhbmdlZ2ViZW4gaXN0LCBsaXN0ZSBhbGxlIFBha2V0ZSBpbiBJPC92YXIvbGliL2Rwa2cvIgorInN0YXR1cz4gYXVmLiBEYWJlaSB3ZXJkZW4gYWxsZSBQYWtldGUgYXVzZ2VzY2hsb3NzZW4sIGRpZSBhbHMgwrtuaWNodC0iCisiaW5zdGFsbGllcnQgbWFya2llcnQgc2luZCAoZC5oLiBmcsO8aGVyIGVuZGfDvGx0aWcgZW50ZmVybnQgd3VyZGVuKS4gQmVhY2h0ZW4gIgorIlNpZSwgZGFzcyBTaWUgd2FocnNjaGVpbmxpY2ggSTxQYWtldG5hbWUtTXVzdGVyPiBkdXJjaCBBbmbDvGhydW5nc3plaWNoZW4gIgorInNjaMO8dHplbiBtw7xzc2VuLCB1bSBkaWUgU2hlbGwgYW4gZGVyIERhdGVpbmFtZW4tRXhwYW5zaW9uIHp1IGhpbmRlcm4uICIKKyJGb2xnZW5kZXIgQmVmZWhsIGxpc3RldCBiZWlzcGllbHN3ZWlzZSBhbGxlIFBha2V0bmFtZW4sIGRpZSBtaXQgwrtsaWJjNsKrICIKKyJiZWdpbm5lbiwgYXVmOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjI3CisjLCBuby13cmFwCittc2dpZCAiICBCPGRwa2ctcXVlcnkgLWwgXFwoYXFsaWJjNipcXChhcT5cbiIKK21zZ3N0ciAiICBCPGRwa2ctcXVlcnkgLWwgXFwoYXFsaWJjNipcXChhcT5cbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjMxCittc2dpZCAiIgorIlRoZSBmaXJzdCB0aHJlZSBjb2x1bW5zIG9mIHRoZSBvdXRwdXQgc2hvdyB0aGUgZGVzaXJlZCBhY3Rpb24sIHRoZSBwYWNrYWdlICIKKyJzdGF0dXMsIGFuZCBlcnJvcnMsIGluIHRoYXQgb3JkZXIuIgorbXNnc3RyICIiCisiRGllIGVyc3RlbiBkcmVpIFNwYWx0ZW4gZGVyIEF1c2dhYmUgemVpZ2VuIGRpZSBnZXfDvG5zY2h0ZSBBa3Rpb24sIGRlbiAiCisiUGFrZXRzdGF0dXMgdW5kIEZlaGxlciwgaW4gZGllc2VyIFJlaWhlbmZvbGdlLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjMzCittc2dpZCAiRGVzaXJlZCBhY3Rpb246IgorbXNnc3RyICJHZXfDvG5zY2h0ZSBBa3Rpb246IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6MzkKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiICB1ID0gVW5rbm93blxuIgorIiAgaSA9IEluc3RhbGxcbiIKKyIgIGggPSBIb2xkXG4iCisiICByID0gUmVtb3ZlXG4iCisiICBwID0gUHVyZ2VcbiIKK21zZ3N0ciAiIgorIiAgdSA9IFVuYmVrYW5udFxuIgorIiAgaSA9IEluc3RhbGxpZXJlblxuIgorIiAgaCA9IEhhbHRlblxuIgorIiAgciA9IEVudGZlcm5lblxuIgorIiAgcCA9IFZvbGxzdMOkbmRpZyBMw7ZzY2hlblxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6NDIKK21zZ2lkICJQYWNrYWdlIHN0YXR1czoiCittc2dzdHIgIlBha2V0c3RhdHVzOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjUxCisjLCBuby13cmFwCittc2dpZCAiIgorIiAgbiA9IE5vdC1pbnN0YWxsZWRcbiIKKyIgIGMgPSBDb25maWctZmlsZXNcbiIKKyIgIEggPSBIYWxmLWluc3RhbGxlZFxuIgorIiAgVSA9IFVucGFja2VkXG4iCisiICBGID0gSGFsZi1jb25maWd1cmVkXG4iCisiICBXID0gVHJpZ2dlcnMtYXdhaXRpbmdcbiIKKyIgIHQgPSBUcmlnZ2Vycy1wZW5kaW5nXG4iCisiICBpID0gSW5zdGFsbGVkXG4iCittc2dzdHIgIiIKKyIgIG4gPSBOaWNodCBpbnN0YWxsaWVydFxuIgorIiAgYyA9IENvbmZpZy1EYXRlaVxuIgorIiAgSCA9IEhhbGIgaW5zdGFsbGllcnRcbiIKKyIgIFUgPSBFbnRwYWNrdFxuIgorIiAgRiA9IEZlaGxnZXNjaGwuIEtvbmZpZ3VyYXRpb25cbiIKKyIgIFcgPSBUcmlnZ2VyIGVyV2FydGV0XG4iCisiICB0ID0gVHJpZ2dlciBhbmjDpG5naWdcbiIKKyIgIGkgPSBJbnN0YWxsaWVydFxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6NTQKK21zZ2lkICJFcnJvciBmbGFnczoiCittc2dzdHIgIkZlaGxlci1TY2hhbHRlcjoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMTo1NworIywgbm8td3JhcAorbXNnaWQgIiIKKyIgIEU8bHQ+ZW1wdHlFPGd0PiA9IChub25lKVxuIgorIiAgUiA9IFJlaW5zdC1yZXF1aXJlZFxuIgorbXNnc3RyICIiCisiICBFPGx0PmxlZXJFPGd0PiA9IChrZWluKVxuIgorIiAgUiA9IE5ldWluc3RhbGxhdGlvbiBub3R3ZW5kaWdcbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjYyCittc2dpZCAiIgorIkFuIHVwcGVyY2FzZSBzdGF0dXMgb3IgZXJyb3IgbGV0dGVyIGluZGljYXRlcyB0aGUgcGFja2FnZSBpcyBsaWtlbHkgdG8gY2F1c2UgIgorInNldmVyZSBwcm9ibGVtcy4gUGxlYXNlIHJlZmVyIHRvIEI8ZHBrZz4oMSkgZm9yIGluZm9ybWF0aW9uIGFib3V0IHRoZSBhYm92ZSAiCisic3RhdGVzIGFuZCBmbGFncy4iCittc2dzdHIgIiIKKyJFaW4gR3Jvw59idWNoc3RhYmUgYWxzIFN0YXR1cyBvZGVyIEZlaGxlciB6ZWlndCBhbiwgZGFzcyBkYXMgUGFrZXQgIgorIndhaHJzY2hlaW5saWNoIHNjaHdlcmUgRmVobGVyIHZlcnVyc2FjaGVuIHdpcmQuIEJpdHRlIGxlc2VuIFNpZSBCPGRwa2c+KDEpICIKKyLDvGJlciBkaWUgb2JlbiBnZW5hbm50ZW4gWnVzdMOkbmRlIHVuZCBTY2hhbHRlci4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMTo2NworbXNnaWQgIiIKKyJUaGUgb3V0cHV0IGZvcm1hdCBvZiB0aGlzIG9wdGlvbiBpcyBub3QgY29uZmlndXJhYmxlLCBidXQgdmFyaWVzICIKKyJhdXRvbWF0aWNhbGx5IHRvIGZpdCB0aGUgdGVybWluYWwgd2lkdGguIEl0IGlzIGludGVuZGVkIGZvciBodW1hbiByZWFkZXJzLCAiCisiYW5kIGlzIG5vdCBlYXNpbHkgbWFjaGluZS1yZWFkYWJsZS4gU2VlIEI8LVc+IChCPC0tc2hvdz4pICBhbmQgQjwtLSIKKyJzaG93Zm9ybWF0PiBmb3IgYSB3YXkgdG8gY29uZmlndXJlIHRoZSBvdXRwdXQgZm9ybWF0LiIKK21zZ3N0ciAiIgorIkRhcyBBdXNnYWJlZm9ybWF0IGRpZXNlciBPcHRpb24ga2FubiBuaWNodCBrb25maWd1cmllcnQgd2VyZGVuLCB2YXJpaWVydCAiCisiYWJlciBhdXRvbWF0aXNjaCBtaXQgZGVyIFRlcm1pbmFsYnJlaXRlLiBEaWUgQXVzZ2FiZSBpc3QgZsO8ciBtZW5zY2hsaWNoZSAiCisiTGVzZXIgZ2VkYWNodCB1bmQgbmljaHQgbGVpY2h0IG1hc2NoaW5lbmxlc2Jhci4gTGVzZW4gU2llIMO8YmVyIGRpZSBPcHRpb25lbiAiCisiQjwtVz4gKEI8LS1zaG93PikgdW5kIEI8LS1zaG93Zm9ybWF0PiwgdW0gZGFzIEF1c2dhYmVmb3JtYXQgenUga29uZmlndXJpZXJlbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXF1ZXJ5LjE6NjcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1XPiwgQjwtLXNob3c+IFtJPHBhY2thZ2UtbmFtZS1wYXR0ZXJuPi4uLl0iCittc2dzdHIgIkI8LVc+LCBCPC0tc2hvdz4gW0k8UGFrZXRuYW1lLU11c3Rlcj4gLi4uXSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjc0Cittc2dpZCAiIgorIkp1c3QgbGlrZSB0aGUgQjwtLWxpc3Q+IG9wdGlvbiB0aGlzIHdpbGwgbGlzdCBhbGwgcGFja2FnZXMgbWF0Y2hpbmcgdGhlICIKKyJnaXZlbiBwYXR0ZXJuLiBIb3dldmVyIHRoZSBvdXRwdXQgY2FuIGJlIGN1c3RvbWl6ZWQgdXNpbmcgdGhlIEI8LS0iCisic2hvd2Zvcm1hdD4gb3B0aW9uLiAgVGhlIGRlZmF1bHQgb3V0cHV0IGZvcm1hdCBnaXZlcyBvbmUgbGluZSBwZXIgbWF0Y2hpbmcgIgorInBhY2thZ2UsIGVhY2ggbGluZSBoYXZpbmcgdGhlIG5hbWUgYW5kIGluc3RhbGxlZCB2ZXJzaW9uIG9mIHRoZSBwYWNrYWdlLCAiCisic2VwYXJhdGVkIGJ5IGEgdGFiLiIKK21zZ3N0ciAiIgorIkdlbmF1IHdpZSBkaWUgQjwtLWxpc3Q+LU9wdGlvbiB3aXJkIGRpZXMgYWxsZSBQYWtldGUsIGRpZSBhdWYgZGFzIGFuZ2VnZWJlbmUgIgorIk11c3RlciBwYXNzZW4sIGF1ZmbDvGhyZW4uIEFsbGVyZGluZ3Mga2FubiBkaWUgQXVzZ2FiZSBtaXQgZGVyIEI8LS0iCisic2hvd2Zvcm1hdD4tT3B0aW9uIGFuZ2VwYXNzdCB3ZXJkZW4uIEltIFN0YW5kYXJkYXVzZ2FiZWZvcm1hdCB3aXJkIGVpbmUgIgorIlplaWxlIHBybyBwYXNzZW5kZW0gUGFrZXQgYXVzZ2VnZWJlbiwgd29iZWkgaW4gamVkZXIgWmVpbGUgTmFtZSB1bmQgIgorImluc3RhbGxpZXJ0ZSBWZXJzaW9uIGRlcyBQYWtldHMgZ2V0cmVubnQgZHVyY2ggZWluZW4gVGFidWxhdG9yIGVudGhhbHRlbiAiCisic2luZC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXF1ZXJ5LjE6NzQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1zPiwgQjwtLXN0YXR1cz4gSTxwYWNrYWdlLW5hbWU+Li4uIgorbXNnc3RyICJCPC1zPiwgQjwtLXN0YXR1cz4gSTxQYWtldG5hbWU+IC4uLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjc5Cittc2dpZCAiIgorIlJlcG9ydCBzdGF0dXMgb2Ygc3BlY2lmaWVkIHBhY2thZ2UuIFRoaXMganVzdCBkaXNwbGF5cyB0aGUgZW50cnkgaW4gdGhlICIKKyJpbnN0YWxsZWQgcGFja2FnZSBzdGF0dXMgZGF0YWJhc2UuIFdoZW4gbXVsdGlwbGUgSTxwYWNrYWdlLW5hbWU+IGFyZSBsaXN0ZWQsICIKKyJ0aGUgcmVxdWVzdGVkIHN0YXR1cyBlbnRyaWVzIGFyZSBzZXBhcmF0ZWQgYnkgYW4gZW1wdHkgbGluZS4iCittc2dzdHIgIiIKKyJCZXJpY2h0ZSBadXN0YW5kIGRlcyBhbmdlZ2ViZW5lbiBQYWtldGVzLiBEaWVzIHplaWd0IG51ciBkZW4gRWludHJhZyBpbiBkZXIgIgorIkRhdGVuYmFuayBkZXIgWnVzdMOkbmRlIGRlciBpbnN0YWxsaWVydGVuIFBha2V0ZS4gV2VubiBtZWhyZXJlIEk8UGFrZXRuYW1lPiAiCisiYXVmZ2Vmw7xocnQgc2luZCwgd2VyZGVuIGRpZSBhbmdlZm9yZGVydGVuIFN0YXR1c2VpbnRyw6RnZSBkdXJjaCBMZWVyemVpbGVuICIKKyJnZXRyZW5udC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXF1ZXJ5LjE6NzkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1MPiwgQjwtLWxpc3RmaWxlcz4gSTxwYWNrYWdlLW5hbWU+Li4uIgorbXNnc3RyICJCPC1MPiwgQjwtLWxpc3RmaWxlcz4gSTxQYWtldG5hbWU+IC4uLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjg1Cittc2dpZCAiIgorIkxpc3QgZmlsZXMgaW5zdGFsbGVkIHRvIHlvdXIgc3lzdGVtIGZyb20gSTxwYWNrYWdlLW5hbWU+LiBXaGVuIG11bHRpcGxlICIKKyJJPHBhY2thZ2UtbmFtZT4gYXJlIGxpc3RlZCwgdGhlIHJlcXVlc3RlZCBsaXN0cyBvZiBmaWxlcyBhcmUgc2VwYXJhdGVkIGJ5IGFuICIKKyJlbXB0eSBsaW5lLiBIb3dldmVyLCBub3RlIHRoYXQgZmlsZXMgY3JlYXRlZCBieSBwYWNrYWdlLXNwZWNpZmljICIKKyJpbnN0YWxsYXRpb24tc2NyaXB0cyBhcmUgbm90IGxpc3RlZC4iCittc2dzdHIgIiIKKyJBdWZmw7xocmVuIHZvbiBEYXRlaWVuLCBkaWUgZHVyY2ggSTxQYWtldG5hbWU+IGluc3RhbGxpZXJ0IHd1cmRlbi4gV2VubiAiCisibWVocmVyZSBJPFBha2V0bmFtZT4gYXVmZ2Vmw7xocnQgc2luZCwgd2VyZGVuIGRpZSBhbmdlZm9yZGVydGVuIERhdGVpbGlzdGVuICIKKyJkdXJjaCBMZWVyemVpbGVuIGdldHJlbm50LiBCZWFjaHRlbiBTaWUgYWJlciwgZGFzcyBEYXRlaWVuLCBkaWUgZHVyY2ggUGFrZXQtIgorInNwZXppZmlzY2hlIEluc3RhbGxhdGlvbnNza3JpcHRlIGFuZ2VsZWd0IHd1cmRlbiwgbmljaHQgYXVmZ2Vmw7xocnQgd2VyZGVuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcXVlcnkuMTo4NQorIywgbm8td3JhcAorbXNnaWQgIkI8LWM+LCBCPC0tY29udHJvbC1wYXRoPiBJPHBhY2thZ2UtbmFtZT4gW0k8Y29udHJvbC1maWxlPl0iCittc2dzdHIgIkI8LWM+LCBCPC0tY29udHJvbC1wYXRoPiBJPFBha2V0bmFtZT4gW0k8U3RldWVyZGF0ZWk+XSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjkzCittc2dpZCAiIgorIkxpc3QgcGF0aHMgZm9yIGNvbnRyb2wgZmlsZXMgaW5zdGFsbGVkIHRvIHlvdXIgc3lzdGVtIGZyb20gSTxwYWNrYWdlLW5hbWU+LiAgIgorIklmIEk8Y29udHJvbC1maWxlPiBpcyBzcGVjaWZpZWQgdGhlbiBvbmx5IGxpc3QgdGhlIHBhdGggZm9yIHRoYXQgY29udHJvbCAiCisiZmlsZSBpZiBpdCBpcyBwcmVzZW50LiBCPFdhcm5pbmc+OiB0aGlzIGNvbW1hbmQgaXMgc2VtaS1wdWJsaWMsIGl0IHNob3VsZCBiZSAiCisidXNlZCBvbmx5IGFzIGEgbGFzdCByZXNvcnQgc29sdXRpb24sIGFuZCBpZiBubyBvdGhlciBpbnRlcmZhY2UgaXMgYXZhaWxhYmxlLiAiCisiSXQgbWlnaHQgZ2V0IGRlcHJlY2F0ZWQgbGF0ZXIgb24gaWYgYmV0dGVyIGludGVyZmFjZXMgb3IgdGhlIGN1cnJlbnQgIgorImFyY2hpdGVjdHVyYWwgZGVmaWNpZW5jaWVzIGhhdmUgYmVlbiBzb2x2ZWQuIgorbXNnc3RyICIiCisiTGlzdGV0IGRpZSBQZmFkZSBmw7xyIFN0ZXVlcmRhdGVpZW4gYXVmLCBkaWUgdm9uIEk8UGFrZXRuYW1lPiBhdWYgSWhyZW0gIgorIlN5c3RlbSBpbnN0YWxsaWVydCB3dXJkZW4uIEZhbGxzIEk8U3RldWVyZGF0ZWk+IGFuZ2VnZWJlbiB3dXJkZSwgbGlzdGUgbnVyICIKKyJkZW4gUGZhZCBmw7xyIGRpZXNlIFN0ZXVlcmRhdGVpIGF1ZiwgZmFsbHMgc2llIGV4aXN0aWVydC4gQjxXYXJudW5nOj46IERpZXNlciAiCisiQmVmZWhsIGlzdCBoYWxiLcO2ZmZlbnRsaWNoLCBlciBzb2xsdGUgbnVyIGFscyBsZXR6dGVyIFJldHR1bmdzYW5rZXIgdmVyd2FuZHQgIgorIndlcmRlbiwgZmFsbHMga2VpbmUgd2VpdGVyZSBTY2huaXR0c3RlbGxlIHZlcmbDvGdiYXIgaXN0LiBFciBrw7ZubnRlIHNww6R0ZXIgIgorInZlcmFsdGV0IHdlcmRlbiwgZmFsbHMgYmVzc2VyZSBTY2huaXR0c3RlbGxlbiBvZGVyIGRpZSBha3R1ZWxsZW4sICIKKyJBcmNoaXRla3R1ci1iZWRpbmd0ZW4gRGVmaXppdGUgZ2Vsw7ZzdCB3dXJkZW4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1xdWVyeS4xOjkzCisjLCBuby13cmFwCittc2dpZCAiQjwtUz4sIEI8LS1zZWFyY2g+IEk8ZmlsZW5hbWUtc2VhcmNoLXBhdHRlcm4+Li4uIgorbXNnc3RyICJCPC1TPiwgQjwtLXNlYXJjaD4gSTxEYXRlaW5hbWUtU3VjaG11c3Rlcj4gLi4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6OTkKK21zZ2lkICIiCisiU2VhcmNoIGZvciBwYWNrYWdlcyB0aGF0IG93biBmaWxlcyBjb3JyZXNwb25kaW5nIHRvIHRoZSBnaXZlbiBwYXR0ZXJuLiAgIgorIlN0YW5kYXJkIHNoZWxsIHdpbGRjaGFycyBjYW4gYmUgdXNlZCBpbiB0aGUgcGF0dGVybi4gIFRoaXMgY29tbWFuZCB3aWxsIG5vdCAiCisibGlzdCBleHRyYSBmaWxlcyBjcmVhdGVkIGJ5IG1haW50YWluZXIgc2NyaXB0cywgbm9yIHdpbGwgaXQgbGlzdCAiCisiYWx0ZXJuYXRpdmVzLiIKK21zZ3N0ciAiIgorIlN1Y2hlIG5hY2ggUGFrZXRlbiwgZGVuZW4gUGFrZXRlbiwgZGllIGF1ZiBlaW4gYmVzdGltbXRlcyBNdXN0ZXIgcGFzc2VuLCAiCisiZ2Vow7ZyZW4uIERpZSBub3JtYWxlbiBKb2tlcnplaWNoZW4gKMK7d2lsZGNhcmRzwqspIGRlciBTaGVsbCBrw7ZubmVuIGluIGRpZXNlbSAiCisiTXVzdGVyIHZlcndhbmR0IHdlcmRlbi4gRGllc2VyIEJlZmVobCB3aXJkIHdlZGVyIGRpZSB6dXPDpHR6bGljaGVuIERhdGVpZW4sICIKKyJkaWUgZHVyY2ggQmV0cmV1ZXItU2tyaXB0ZSBhbmdlbGVndCB3dXJkZW4sIG5vY2ggQWx0ZXJuYXRpdmVuIGF1ZmbDvGhyZW4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1xdWVyeS4xOjk5CisjLCBuby13cmFwCittc2dpZCAiQjwtcD4sIEI8LS1wcmludC1hdmFpbD4gSTxwYWNrYWdlLW5hbWU+Li4uIgorbXNnc3RyICJCPC1wPiwgQjwtLXByaW50LWF2YWlsPiBJPFBha2V0bmFtZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMToxMDUKK21zZ2lkICIiCisiRGlzcGxheSBkZXRhaWxzIGFib3V0IEk8cGFja2FnZS1uYW1lPiwgYXMgZm91bmQgaW4gSTwvdmFyL2xpYi9kcGtnLyIKKyJhdmFpbGFibGU+LiBXaGVuIG11bHRpcGxlIEk8cGFja2FnZS1uYW1lPiBhcmUgbGlzdGVkLCB0aGUgcmVxdWVzdGVkICIKKyJJPGF2YWlsYWJsZT4gZW50cmllcyBhcmUgc2VwYXJhdGVkIGJ5IGFuIGVtcHR5IGxpbmUuIgorbXNnc3RyICIiCisiWmVpZ2UgRGV0YWlscyDDvGJlciBJPFBha2V0bmFtZT4gYW4sIHdpZSBkaWVzZSBpbiBJPC92YXIvbGliL2Rwa2cvYXZhaWxhYmxlPiAiCisidm9ybGllZ2VuLiBXZW5uIG1laHJlcmUgSTxQYWtldG5hbWU+IGF1ZmdlZsO8aHJ0IHNpbmQsIHdlcmRlbiBkaWUgIgorImFuZ2Vmb3JkZXJ0ZW4gSTxhdmFpbGFibGU+LUVpbnRyw6RnZSBkdXJjaCBMZWVyemVpbGVuIGdldHJlbm50LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjExMAorbXNnaWQgIiIKKyJVc2VycyBvZiBBUFQtYmFzZWQgZnJvbnRlbmRzIHNob3VsZCB1c2UgQjxhcHQtY2FjaGUgc2hvdz4gSTxwYWNrYWdlLW5hbWU+ICIKKyJpbnN0ZWFkIGFzIHRoZSBJPGF2YWlsYWJsZT4gZmlsZSBpcyBvbmx5IGtlcHQgdXAtdG8tZGF0ZSB3aGVuIHVzaW5nICIKKyJCPGRzZWxlY3Q+LiIKK21zZ3N0ciAiIgorIkJlbnV0emVyIEFQVC1iYXNpZXJ0ZXIgT2JlcmZsw6RjaGVuIHNvbGx0ZW4gQjxhcHQtY2FjaGUgc2hvdz4gSTxQYWtldG5hbWU+ICIKKyJ2ZXJ3ZW5kZW4sIGRhIGRpZSBEYXRlaSBJPGF2YWlsYWJsZT4gbnVyIGJlaSBkZXIgQmVudXR6dW5nIHZvbiBCPGRzZWxlY3Q+ICIKKyJha3R1ZWxsIGJsZWlidC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXF1ZXJ5LjE6MTIyCisjLCBuby13cmFwCittc2dpZCAiQjwtZj4sIEI8LS1zaG93Zm9ybWF0PT5JPGZvcm1hdD4iCittc2dzdHIgIkI8LWY+LCBCPC0tc2hvd2Zvcm1hdD0+STxGb3JtYXQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6MTI5Cittc2dpZCAiSW4gdGhlIGZvcm1hdCBzdHJpbmcsIFxcKGxxQjxcXGU+XFwocnEgaW50cm9kdWNlcyBlc2NhcGVzOiIKK21zZ3N0ciAiIgorIkluIGRlciBGb3JtYXR6ZWljaGVua2V0dGUgbGVpdGV0IFxcKGxxQjxcXGU+XFwocnEgRXNjYXBlLVNlcXVlbnplbiBlaW46IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6MTM0CisjLCBuby13cmFwCittc2dpZCAiIgorIiAgICBCPFxcZW4+ICBuZXdsaW5lXG4iCisiICAgIEI8XFxlcj4gIGNhcnJpYWdlIHJldHVyblxuIgorIiAgICBCPFxcZXQ+ICB0YWJcbiIKK21zZ3N0ciAiIgorIiAgICBCPFxcZW4+ICBaZWlsZW51bWJydWNoXG4iCisiICAgIEI8XFxlcj4gIFdhZ2VucsO8Y2tsYXVmXG4iCisiICAgIEI8XFxldD4gIFRhYnVsYXRvclxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6MTM5Cittc2dpZCAiIgorIlxcKGxxQjxcXGU+XFwocnEgYmVmb3JlIGFueSBvdGhlciBjaGFyYWN0ZXIgc3VwcHJlc3NlcyBhbnkgc3BlY2lhbCBtZWFuaW5nICIKKyJvZiB0aGUgZm9sbG93aW5nIGNoYXJhY3Rlciwgd2hpY2ggaXMgdXNlZnVsIGZvciBcXChscUI8XFxlPlxcKHJxIGFuZCBcXChscUI8IgorIiQ+XFwocnEuIgorbXNnc3RyICIiCisiXFwobHFCPFxcZT5cXChycSB2b3IgZWluZW0gYW5kZXJlbiBaZWljaGVuIHVudGVyZHLDvGNrdCBqZWRlIHNwZXppZWxsZSAiCisiQmVkZXV0dW5nIGRlcyBmb2xnZW5kZW4gWmVpY2hlbnMuIERpZXMgaXN0IGbDvHIgXFwobHFCPFxcZT5cXChycSB1bmQgXFwobHFCPCQ+IgorIlxcKHJxIG7DvHR6bGljaC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMToxNDcKK21zZ2lkICIiCisiUGFja2FnZSBpbmZvcm1hdGlvbiBjYW4gYmUgaW5jbHVkZWQgYnkgaW5zZXJ0aW5nIHZhcmlhYmxlIHJlZmVyZW5jZXMgdG8gIgorInBhY2thZ2UgZmllbGRzIHVzaW5nIHRoZSBzeW50YXggXFwobHFCPCR7Pkk8ZmllbGQ+W0I8Oz5JPHdpZHRoPl1CPH0+XFwocnEuICIKKyJGaWVsZHMgYXJlIHByaW50ZWQgcmlnaHQtYWxpZ25lZCB1bmxlc3MgdGhlIHdpZHRoIGlzIG5lZ2F0aXZlIGluIHdoaWNoIGNhc2UgIgorImxlZnQgYWxpZ25tZW50IHdpbGwgYmUgdXNlZC4gVGhlIGZvbGxvd2luZyBJPGZpZWxkPnMgYXJlIHJlY29nbmlzZWQgYnV0IHRoZXkgIgorImFyZSBub3QgbmVjZXNzYXJpbHkgYXZhaWxhYmxlIGluIHRoZSBzdGF0dXMgZmlsZSAob25seSBpbnRlcm5hbCBmaWVsZHMgb3IgIgorImZpZWxkcyBzdG9yZWQgaW4gdGhlIGJpbmFyeSBwYWNrYWdlIGVuZCB1cCBpbiBpdCk6IgorbXNnc3RyICIiCisiUGFrZXRpbmZvcm1hdGlvbmVuIGvDtm5uZW4gZWluYmV6b2dlbiB3ZXJkZW4sIGluZGVtIFZhcmlhYmxlbnJlZmVyZW56ZW4gYXVmICIKKyJQYWtldGZlbGRlciBlaW5nZWbDvGd0IHdlcmRlbi4gSGllcmJlaSB3aXJkIGZvbGdlbmRlIFN5bnRheCB2ZXJ3ZW5kZXQ6IFxcKGxxQjwiCisiJHs+STxGZWxkPltCPDs+STxCcmVpdGU+XUI8fT5cXChycS4gRmVsZGVyIHdlcmRlbiByZWNodHNiw7xuZGlnIGF1c2dlZ2ViZW4sICIKKyJmYWxscyBkaWUgQnJlaXRlIG5pY2h0IG5lZ2F0aXYgaXN0IHVuZCBzb21pdCBsaW5rc2LDvG5kaWdlIEF1c2dhYmUgZXJmb2xndC4gIgorIkRpZSBmb2xnZW5kZW4gSTxGZWxkPmVyIHdlcmRlbiB2ZXJzdGFuZGVuLCBzaW5kIGFiZXIgbmljaHQgbm90d2VuZGlnZXJ3ZWlzZSAiCisiaW4gZGVyIFN0YXR1cy1EYXRlaSB2ZXJmw7xnYmFyIChudXIgaW50ZXJuZSBGZWxkZXIgb2RlciBGZWxkZXIsIGRpZSBpbSAiCisiQmluw6RycGFrZXQgYWJnZXNwZWljaGVydCBzaW5kLCBsYW5kZW4gZG9ydCk6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6MTgyCisjLCBuby13cmFwCittc2dpZCAiIgorIiAgICBCPEFyY2hpdGVjdHVyZT5cbiIKKyIgICAgQjxCdWdzPlxuIgorIiAgICBCPENvbmZmaWxlcz4gKGludGVybmFsKVxuIgorIiAgICBCPENvbmZpZy1WZXJzaW9uPiAoaW50ZXJuYWwpXG4iCisiICAgIEI8Q29uZmxpY3RzPlxuIgorIiAgICBCPEJyZWFrcz5cbiIKKyIgICAgQjxEZXBlbmRzPlxuIgorIiAgICBCPERlc2NyaXB0aW9uPlxuIgorIiAgICBCPEVuaGFuY2VzPlxuIgorIiAgICBCPEVzc2VudGlhbD5cbiIKKyIgICAgQjxGaWxlbmFtZT4gKGludGVybmFsLCBmcm9udC1lbmQgcmVsYXRlZClcbiIKKyIgICAgQjxIb21lcGFnZT5cbiIKKyIgICAgQjxJbnN0YWxsZWQtU2l6ZT5cbiIKKyIgICAgQjxNRDVzdW0+IChpbnRlcm5hbCwgZnJvbnQtZW5kIHJlbGF0ZWQpXG4iCisiICAgIEI8TVNET1MtRmlsZW5hbWU+IChpbnRlcm5hbCwgZnJvbnQtZW5kIHJlbGF0ZWQpXG4iCisiICAgIEI8TWFpbnRhaW5lcj5cbiIKKyIgICAgQjxPcmlnaW4+XG4iCisiICAgIEI8UGFja2FnZT5cbiIKKyIgICAgQjxQcmUtRGVwZW5kcz5cbiIKKyIgICAgQjxQcmlvcml0eT5cbiIKKyIgICAgQjxQcm92aWRlcz5cbiIKKyIgICAgQjxSZWNvbW1lbmRzPlxuIgorIiAgICBCPFJlcGxhY2VzPlxuIgorIiAgICBCPFJldmlzaW9uPiAob2Jzb2xldGUpXG4iCisiICAgIEI8U2VjdGlvbj5cbiIKKyIgICAgQjxTaXplPiAoaW50ZXJuYWwsIGZyb250LWVuZCByZWxhdGVkKVxuIgorIiAgICBCPFNvdXJjZT5cbiIKKyIgICAgQjxTdGF0dXM+IChpbnRlcm5hbClcbiIKKyIgICAgQjxTdWdnZXN0cz5cbiIKKyIgICAgQjxUYWc+ICh1c3VhbGx5IG5vdCBpbiB0aGUgLmRlYiBidXQgaW4gdGhlIHJlcG9zaXRvcnkgUGFja2FnZXMgZmlsZXMpXG4iCisiICAgIEI8VHJpZ2dlcnMtQXdhaXRlZD4gKGludGVybmFsKVxuIgorIiAgICBCPFRyaWdnZXJzLVBlbmRpbmc+IChpbnRlcm5hbClcbiIKKyIgICAgQjxWZXJzaW9uPlxuIgorbXNnc3RyICIiCisiICAgIEI8QXJjaGl0ZWN0dXJlPlxuIgorIiAgICBCPEJ1Z3M+XG4iCisiICAgIEI8Q29uZmZpbGVzPiAoaW50ZXJuKVxuIgorIiAgICBCPENvbmZpZy1WZXJzaW9uPiAoaW50ZXJuKVxuIgorIiAgICBCPENvbmZsaWN0cz5cbiIKKyIgICAgQjxCcmVha3M+XG4iCisiICAgIEI8RGVwZW5kcz5cbiIKKyIgICAgQjxEZXNjcmlwdGlvbj5cbiIKKyIgICAgQjxFbmhhbmNlcz5cbiIKKyIgICAgQjxFc3NlbnRpYWw+XG4iCisiICAgIEI8RmlsZW5hbWU+IChpbnRlcm4sIE9iZXJmbMOkY2hlbi1iZXpvZ2VuKVxuIgorIiAgICBCPEhvbWVwYWdlPlxuIgorIiAgICBCPEluc3RhbGxlZC1TaXplPlxuIgorIiAgICBCPE1ENXN1bT4gKGludGVybiwgT2JlcmZsw6RjaGVuLWJlem9nZW4pXG4iCisiICAgIEI8TVNET1MtRmlsZW5hbWU+IChpbnRlcm4sIE9iZXJmbMOkY2hlbi1iZXpvZ2VuKVxuIgorIiAgICBCPE1haW50YWluZXI+XG4iCisiICAgIEI8T3JpZ2luPlxuIgorIiAgICBCPFBhY2thZ2U+XG4iCisiICAgIEI8UHJlLURlcGVuZHM+XG4iCisiICAgIEI8UHJpb3JpdHk+XG4iCisiICAgIEI8UHJvdmlkZXM+XG4iCisiICAgIEI8UmVjb21tZW5kcz5cbiIKKyIgICAgQjxSZXBsYWNlcz5cbiIKKyIgICAgQjxSZXZpc2lvbj4gKHZlcmFsdGV0KVxuIgorIiAgICBCPFNlY3Rpb24+XG4iCisiICAgIEI8U2l6ZT4gKGludGVybiwgT2JlcmZsw6RjaGVuLWJlem9nZW4pXG4iCisiICAgIEI8U291cmNlPlxuIgorIiAgICBCPFN0YXR1cz4gKGludGVybilcbiIKKyIgICAgQjxTdWdnZXN0cz5cbiIKKyIgICAgQjxUYWc+IChub3JtYWxlcndlaXNlIG5pY2h0IGluIGRlbSAuZGViIHNvbmRlcm4gaW4gZGVuIFBhY2thZ2VzLURhdGVpZW4gZGVzIERlcG90c1xuIgorIiAgICBCPFRyaWdnZXJzLUF3YWl0ZWQ+IChpbnRlcm4pXG4iCisiICAgIEI8VHJpZ2dlcnMtUGVuZGluZz4gKGludGVybilcbiIKKyIgICAgQjxWZXJzaW9uPlxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6MTkwCittc2dpZCAiIgorIlRoZSBkZWZhdWx0IGZvcm1hdCBzdHJpbmcgaXMgXFwobHFCPCR7UGFja2FnZX1cXGV0JHtWZXJzaW9ufVxcZW4+XFwocnEuICAiCisiQWN0dWFsbHksIGFsbCBvdGhlciBmaWVsZHMgZm91bmQgaW4gdGhlIHN0YXR1cyBmaWxlIChpLmUuIHVzZXIgZGVmaW5lZCAiCisiZmllbGRzKSBjYW4gYmUgcmVxdWVzdGVkLCB0b28uIFRoZXkgd2lsbCBiZSBwcmludGVkIGFzLWlzLCB0aG91Z2gsIG5vICIKKyJjb252ZXJzaW9uIG5vciBlcnJvciBjaGVja2luZyBpcyBkb25lIG9uIHRoZW0uICBUbyBnZXQgdGhlIG5hbWUgb2YgdGhlIGRwa2cgIgorIm1haW50YWluZXIgYW5kIHRoZSBpbnN0YWxsZWQgdmVyc2lvbiwgeW91IGNvdWxkIHJ1bjoiCittc2dzdHIgIiIKKyJEaWUgU3RhbmRhcmQtRm9ybWF0emVpY2hlbmtldHRlIGlzdCBcXChscUI8JHtQYWNrYWdlfVxcZXQke1ZlcnNpb259XFxlbj4iCisiXFwocnEuIFRhdHPDpGNobGljaCBrw7ZubmVuIGF1Y2ggYWxsZSBhbmRlcmVuIEZlbGRlciwgZGllIGluIGRlciBTdGF0dXNkYXRlaSAiCisiZ2VmdW5kZW4gd2VyZGVuIGvDtm5uZW4gKGQuaC4gYmVudXR6ZXJkZWZpbmllcnRlIEZlbGRlciksIGFiZ2VmcmFndCB3ZXJkZW4uICIKKyJTaWUgd2VyZGVuIHNvIGRhcmdlc3RlbGx0LCB3aWUgc2llIGdlZnVuZGVuIHdlcmRlbiwgZXMgZXJmb2xndCBrZWluZSAiCisiVW13YW5kbHVuZyBvZGVyIEZlaGxlcsO8YmVycHLDvGZ1bmcuIFVtIGRlbiBOYW1lbiBkZXMgRHBrZy1CZXRyZXVlcnMgdW5kIGRpZSAiCisiaW5zdGFsbGllcnRlIFZlcnNpb24genUgZXJoYWx0ZW4sIGvDtm5udGVuIFNpZSBmb2xnZW5kZXMgYXVzZsO8aHJlbjoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMToxOTMKKyMsIG5vLXdyYXAKK21zZ2lkICIgIEI8ZHBrZy1xdWVyeSAtVyAtZj1cXChhcSR7UGFja2FnZX0gJHtWZXJzaW9ufVxcZXQke01haW50YWluZXJ9XFxlblxcKGFxIGRwa2c+XG4iCittc2dzdHIgIiAgQjxkcGtnLXF1ZXJ5IC1XIC1mPVxcKGFxJHtQYWNrYWdlfSAke1ZlcnNpb259XFxldCR7TWFpbnRhaW5lcn1cXGVuXFwoYXEgZHBrZz5cbiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctcXVlcnkuMToxOTUgZHBrZy1zcGxpdC4xOjE3OSBzdGFydC1zdG9wLWRhZW1vbi44OjI1OQorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM3NAorIywgbm8td3JhcAorbXNnaWQgIkVYSVQgU1RBVFVTIgorbXNnc3RyICJSw5xDS0dBQkVXRVJUIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1xdWVyeS4xOjE5NiBkcGtnLXNwbGl0LjE6MTgwIHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjYwCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjI4OSB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6Mzc1CisjLCBuby13cmFwCittc2dpZCAiQjwwPiIKK21zZ3N0ciAiQjwwPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjE5OQorbXNnaWQgIlRoZSByZXF1ZXN0ZWQgcXVlcnkgd2FzIHN1Y2Nlc3NmdWxseSBwZXJmb3JtZWQuIgorbXNnc3RyICJEaWUgYW5nZWZvcmRlcnRlIEFiZnJhZ2Ugd3VyZGUgZXJmb2xncmVpY2ggYXVzZ2Vmw7xocnQuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1xdWVyeS4xOjE5OSBkcGtnLXNwbGl0LjE6MTg2IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjcwCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjI5MgorIywgbm8td3JhcAorbXNnaWQgIkI8MT4iCittc2dzdHIgIkI8MT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMToyMDMKK21zZ2lkICIiCisiUHJvYmxlbXMgd2VyZSBlbmNvdW50ZXJlZCB3aGlsZSBwYXJzaW5nIHRoZSBjb21tYW5kIGxpbmUgb3IgcGVyZm9ybWluZyB0aGUgIgorInF1ZXJ5LCBpbmNsdWRpbmcgbm8gZmlsZSBvciBwYWNrYWdlIGJlaW5nIGZvdW5kIChleGNlcHQgZm9yIC0tY29udHJvbC1wYXRoKS4iCittc2dzdHIgIiIKKyJCZWltIExlc2VuIGRlciBLb21tYW5kb3plaWxlIG9kZXIgYmVpbSBBdXNmw7xocmVuIGRlciBBYmZyYWdlIHRyYXRlbiBQcm9ibGVtZSAiCisiYXVmLiBEYXp1IGdlaMO2cmVuIGF1Y2gga2VpbmUgRGF0ZWkgb2RlciBQYWtldCBnZWZ1bmRlbiAoYXXDn2VyIGbDvHIgLS1jb250cm9sLSIKKyJwYXRoKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMToyMTMKK21zZ2lkICIiCisiVGhpcyBzZXR0aW5nIGluZmx1ZW5jZXMgdGhlIG91dHB1dCBvZiB0aGUgQjwtLWxpc3Q+IG9wdGlvbiBieSBjaGFuZ2luZyB0aGUgIgorIndpZHRoIG9mIGl0cyBvdXRwdXQuIgorbXNnc3RyICIiCisiRGllc2UgRWluc3RlbGx1bmcgYmVlaW5mbHVzc3QgZGllIEF1c2dhYmUgZGVyIEI8LS1saXN0Pi1PcHRpb24gZHVyY2ggIgorIlZlcsOkbmRlcm4gZGVyIEJyZWl0ZSBpaHJlciBBdXNnYWJlLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjIxNgorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDAxIFdpY2hlcnQgQWtrZXJtYW4iCittc2dzdHIgIkNvcHlyaWdodCBcXChjbyAyMDAxIFdpY2hlcnQgQWtrZXJtYW4iCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjE1CisjLCBuby13cmFwCittc2dpZCAiZHBrZy1zY2FucGFja2FnZXMiCittc2dzdHIgImRwa2ctc2NhbnBhY2thZ2VzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjE4Cittc2dpZCAiZHBrZy1zY2FucGFja2FnZXMgLSBjcmVhdGUgUGFja2FnZXMgaW5kZXggZmlsZXMiCittc2dzdHIgImRwa2ctc2NhbnBhY2thZ2VzIC0gZXJzdGVsbGUgUGFja2FnZXMtSW5kZXgtRGF0ZWllbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2FucGFja2FnZXMuMToyNgorbXNnaWQgIiIKKyJCPGRwa2ctc2NhbnBhY2thZ2VzPiBbSTxvcHRpb24+Li4uXSBJPGJpbmFyeS1kaXI+IFtJPG92ZXJyaWRlLWZpbGU+IFtJPHBhdGgtIgorInByZWZpeD5dXSBCPEU8Z3Q+PiBJPFBhY2thZ2VzPiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1zY2FucGFja2FnZXM+IFtJPE9wdGlvbj4uLi5dIEk8Qmluw6RyLVZlcno+IFtJPG92ZXJyaWRlLURhdGVpPiBbSTxQZmFkLSIKKyJQcsOkZml4Pl1dIEI8RTxndD4+IEk8UGFrZXRlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2FucGFja2FnZXMuMTozOQorbXNnaWQgIiIKKyJCPGRwa2ctc2NhbnBhY2thZ2VzPiBzb3J0cyB0aHJvdWdoIGEgdHJlZSBvZiBEZWJpYW4gYmluYXJ5IHBhY2thZ2VzIGFuZCAiCisiY3JlYXRlcyBhIFBhY2thZ2VzIGZpbGUsIHVzZWQgYnkgQjxhcHQ+KDgpLCBCPGRzZWxlY3Q+KDEpLCBldGMsIHRvIHRlbGwgdGhlICIKKyJ1c2VyIHdoYXQgcGFja2FnZXMgYXJlIGF2YWlsYWJsZSBmb3IgaW5zdGFsbGF0aW9uLiBUaGVzZSBQYWNrYWdlcyBmaWxlcyBhcmUgIgorInRoZSBzYW1lIGFzIHRob3NlIGZvdW5kIG9uIERlYmlhbiBhcmNoaXZlIHNpdGVzIGFuZCBDRC1ST01zLiBZb3UgbWlnaHQgdXNlICIKKyJCPGRwa2ctc2NhbnBhY2thZ2VzPiB5b3Vyc2VsZiBpZiBtYWtpbmcgYSBkaXJlY3Rvcnkgb2YgbG9jYWwgcGFja2FnZXMgdG8gIgorImluc3RhbGwgb24gYSBjbHVzdGVyIG9mIG1hY2hpbmVzLiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1zY2FucGFja2FnZXM+IHNjaGF1dCBkdXJjaCBlaW5lbiBCYXVtIHZvbiBEZWJpYW4tQmluw6RycGFrZXRlbiB1bmQgIgorImVyc3RlbGx0IGVpbmUgUGFja2FnZXMtRGF0ZWksIGRpZSB2b24gQjxhcHQ+KDgpLCBCPGRzZWxlY3Q+KDEpIHVzdy4gIgorInZlcndlbmRldCB3aXJkLCB1bSBkZW0gQmVudXR6ZXIgenUgZXJ6w6RobGVuLCB3ZWxjaGUgUGFrZXRlIHp1ciBJbnN0YWxsYXRpb24gIgorInZlcmbDvGdiYXIgc2luZC4gRGllc2UgUGFja2FnZXMtRGF0ZWllbiBzaW5kIGRpZSBnbGVpY2hlbiwgZGllIGF1Y2ggYXVmIGRlbiAiCisiRGViaWFuLUFyY2hpdi1TaXRlcyB1bmQgQ0QtUk9NcyB2b3JsaWVnZW4uIFNpZSBrw7ZubmVuIHNlbGJzdCBCPGRwa2ctIgorInNjYW5wYWNrYWdlcz4gdmVyd2VuZGVuLCBmYWxscyBTaWUgZWluIFZlcnplaWNobmlzIHZvbiBsb2thbGVuIFBha2V0ZW4genVyICIKKyJJbnN0YWxsYXRpb24gYXVmIGVpbmVtIENsdXN0ZXIgdm9uIE1hc2NoaW5lbiBhbmxlZ2VuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2FucGFja2FnZXMuMTo1MQorbXNnaWQgIiIKKyJCPE5vdGU6PiBJZiB5b3Ugd2FudCB0byBhY2Nlc3MgdGhlIGdlbmVyYXRlZCBQYWNrYWdlcyBmaWxlIHdpdGggQjxhcHQ+IHlvdSAiCisid2lsbCBwcm9iYWJseSBuZWVkIHRvIGNvbXByZXNzIHRoZSBmaWxlIHdpdGggQjxiemlwMj4oMSkgIChnZW5lcmF0aW5nIGEgIgorIlBhY2thZ2VzLmJ6MiBmaWxlKSBvciBCPGd6aXA+KDEpICAoZ2VuZXJhdGluZyBhIFBhY2thZ2VzLmd6IGZpbGUpLiBhcHQgIgorImlnbm9yZXMgdW5jb21wcmVzc2VkIFBhY2thZ2VzIGZpbGVzIGV4Y2VwdCBvbiBsb2NhbCBhY2Nlc3MgKGkuZS4gIEI8ZmlsZTovLz4gIgorInNvdXJjZXMpLiIKK21zZ3N0ciAiIgorIkI8SGlud2Vpczo+IEZhbGxzIFNpZSBhdWYgZGllIGVyemV1Z3RlIFBhY2thZ2VzLURhdGVpIG1pdCBCPGFwdD4genVncmVpZmVuICIKKyJ3b2xsZW4sIHdlcmRlbiBTaWUgd2FocnNjaGVpbmxpY2ggZGllIERhdGVpIG1pdCBCPGJ6aXAyPigxKSBrb21wcmltaWVyZW4gIgorIm3DvHNzZW4gKHVuZCBkYW1pdCBlaW4gUGFja2FnZXMuYnoyLURhdGVpIGVyc3RlbGxlbikuIEFwdCBpZ25vcmllcnQgLSAiCisiYWJnZXNlaGVuIHZvbiBsb2thbGVtIFp1Z3JpZmYgKGQuaC4gw7xiZXIgQjxmaWxlOi8vPi1RdWVsbGVuKSAtICIKKyJ1bmtvbXByaW1pZXJ0ZSBQYWNrYWdlcy1EYXRlaWVuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2FucGFja2FnZXMuMTo1OAorbXNnaWQgIiIKKyJJPGJpbmFyeWRpcj4gaXMgdGhlIG5hbWUgb2YgdGhlIHRyZWUgb2YgdGhlIGJpbmFyeSBwYWNrYWdlcyB0byBwcm9jZXNzIChmb3IgIgorImV4YW1wbGUsIEI8Y29udHJpYi9iaW5hcnktaTM4Nj4pLiAgSXQgaXMgYmVzdCB0byBtYWtlIHRoaXMgcmVsYXRpdmUgdG8gdGhlICIKKyJyb290IG9mIHRoZSBEZWJpYW4gYXJjaGl2ZSwgYmVjYXVzZSBldmVyeSBGaWxlbmFtZSBmaWVsZCBpbiB0aGUgbmV3IFBhY2thZ2VzICIKKyJmaWxlIHdpbGwgc3RhcnQgd2l0aCB0aGlzIHN0cmluZy4iCittc2dzdHIgIiIKKyJJPEJpbsOkci1WZXJ6PiBpc3QgZGVyIE5hbWUgZGVzIHp1IHZlcmFyYmVpdGVuZGVuIEJhdW1zIHZvbiBCaW7DpHJwYWtldGVuICIKKyIoYmVpc3BpZWxzd2Vpc2UgQjxjb250cmliL2JpbmFyeS1pMzg2PikuIEFtIGJlc3RlbiB3aXJkIGRpZXMgcmVsYXRpdiB6dXIgIgorIld1cnplbCBkZXMgRGViaWFuLUFyY2hpdnMgZXJzdGVsbHQsIGRhIGplZGVzIEZpbGVuYW1lLUZlbGQgaW4gZGVyIG5ldWVuICIKKyJQYWNrYWdlcy1EYXRlaSBtaXQgZGllc2VyIFplaWNoZW5rZXR0ZSBiZWdpbm5lbiB3aXJkLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2FucGFja2FnZXMuMTo2MworbXNnaWQgIiIKKyJJPG92ZXJyaWRlZmlsZT4gaXMgdGhlIG5hbWUgb2YgYSBmaWxlIHRvIHJlYWQgd2hpY2ggY29udGFpbnMgaW5mb3JtYXRpb24gIgorImFib3V0IGhvdyB0aGUgcGFja2FnZSBmaXRzIGludG8gdGhlIGRpc3RyaWJ1dGlvbiAoaXQgY2FuIGJlIGEgY29tcHJlc3NlZCAiCisiZmlsZSk7IHNlZSBCPGRlYi1vdmVycmlkZT4oNSkuIgorbXNnc3RyICIiCisiSTxvdmVycmlkZS1EYXRlaT4gaXN0IGRlciBOYW1lIGVpbmVyIGVpbnp1bGVzZW5kZW4gRGF0ZWksIGRpZSBJbmZvcm1hdGlvbmVuICIKKyJkYXLDvGJlciBlbnRow6RsdCwgd2llIGRhcyBQYWtldCBpbiBkaWUgRGlzdHJpYnV0aW9uIHBhc3N0IChzaWUga2FubiBlaW5lICIKKyJrb21wcmltaWVydGUgRGF0ZWkgc2Vpbik7IHNpZWhlIEI8ZGViLW92ZXJyaWRlPig1KS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6NjYKK21zZ2lkICIiCisiSTxwYXRocHJlZml4PiBpcyBhbiBvcHRpb25hbCBzdHJpbmcgdG8gYmUgcHJlcGVuZGVkIHRvIHRoZSBGaWxlbmFtZSBmaWVsZHMuIgorbXNnc3RyICIiCisiSTxQZmFkLVByw6RmaXg+IGlzdCBlaW5lIG9wdGlvbmFsZSBaZWljaGVua2V0dGUsIGRpZSB2b3IgZGFzIERhdGVpbmFtZW5mZWxkICIKKyJnZWjDpG5ndCB3ZXJkZW4gc29sbC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6NzAKK21zZ2lkICIiCisiSWYgbW9yZSB0aGFuIG9uZSB2ZXJzaW9uIG9mIGEgcGFja2FnZSBpcyBmb3VuZCBvbmx5IHRoZSBuZXdlc3Qgb25lIGlzICIKKyJpbmNsdWRlZCBpbiB0aGUgb3V0cHV0LiBJZiB0aGV5IGhhdmUgdGhlIHNhbWUgdmVyc2lvbiBhbmQgb25seSBkaWZmZXIgaW4gIgorImFyY2hpdGVjdHVyZSBvbmx5IHRoZSBmaXJzdCBvbmUgZm91bmQgaXMgdXNlZC4iCittc2dzdHIgIiIKKyJGYWxscyBtZWhyIGFscyBlaW5lIFZlcnNpb24gZWluZXMgUGFrZXRlcyBnZWZ1bmRlbiB3aXJkLCB3aXJkIG51ciBkYXMgbmV1c3RlICIKKyJpbiBkaWUgQXVzZ2FiZSBhdWZnZW5vbW1lbi4gRmFsbHMgc2llIGRpZSBnbGVpY2hlIFZlcnNpb24gaGFiZW4gdW5kIHNpY2ggbnVyICIKKyJpbiBkZXIgQXJjaGl0ZWt0dXIgdW50ZXJzY2hlaWRlbiwgd2lyZCBkYXMgenVlcnN0IGdlZnVuZGVuZSB2ZXJ3ZW5kZXQuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zY2FucGFja2FnZXMuMTo3MgorIywgbm8td3JhcAorbXNnaWQgIkI8LXQ+LCBCPC0tdHlwZT4gSTx0eXBlPiIKK21zZ3N0ciAiQjwtdD4sIEI8LS10eXBlPiBJPFR5cD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6NzUKK21zZ2lkICJTY2FuIGZvciAqLkk8dHlwZT4gcGFja2FnZXMsIGluc3RlYWQgb2YgKi5kZWIuIgorbXNnc3RyICJTdWNoZSBuYWNoICouSTxUeXA+IHN0YXR0ICouZGViLVBha2V0ZW4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zY2FucGFja2FnZXMuMTo3NQorIywgbm8td3JhcAorbXNnaWQgIkI8LXU+LCBCPC0tdWRlYj4iCittc2dzdHIgIkI8LXU+LCBCPC0tdWRlYj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6NzgKK21zZ2lkICJCPE9ic29sZXRlPiBhbGlhcyBmb3IgQjwtdHVkZWI+LiIKK21zZ3N0ciAiQjxWZXJhbHRldGVyPiBBbGlhcyBmw7xyIEI8LXR1ZGViPi4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjc4IGRwa2ctc2NhbnNvdXJjZXMuMTo0OQorIywgbm8td3JhcAorbXNnaWQgIkI8LWU+LCBCPC0tZXh0cmEtb3ZlcnJpZGU+IEk8ZmlsZT4iCittc2dzdHIgIkI8LWU+LCBCPC0tZXh0cmEtb3ZlcnJpZGU+IEk8RGF0ZWk+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjg0IGRwa2ctc2NhbnNvdXJjZXMuMTo1NAorbXNnaWQgIiIKKyJTY2FuIEk8ZmlsZT4gdG8gZmluZCBzdXBwbGVtZW50YXJ5IG92ZXJyaWRlcyAodGhlIGZpbGUgY2FuIGJlIGNvbXByZXNzZWQpLiAiCisiU2VlIEI8ZGViLWV4dHJhLW92ZXJyaWRlPig1KSAgZm9yIG1vcmUgaW5mb3JtYXRpb24gb24gaXRzIGZvcm1hdC4iCittc2dzdHIgIiIKKyJEdXJjaHN1Y2hlIEk8RGF0ZWk+LCB1bSB6dXPDpHR6bGljaGUgT3ZlcnJpZGVzIHp1IGZpbmRlbiAoZGllIERhdGVpIGthbm4gIgorImtvbXByaW1pZXJ0IHNlaW4pLiBMZXNlbiBTaWUgQjxkZWItZXh0cmEtb3ZlcnJpZGU+KDUpIGbDvHIgd2VpdGVyZSAiCisiSW5mb3JtYXRpb25lbiDDvGJlciBkZXJlbiBGb3JtYXQuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zY2FucGFja2FnZXMuMTo4NAorIywgbm8td3JhcAorbXNnaWQgIkI8LWE+LCBCPC0tYXJjaD4gSTxhcmNoPiIKK21zZ3N0ciAiQjwtYT4sIEI8LS1hcmNoPiBJPGFyY2g+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjg4Cittc2dpZCAiIgorIlVzZSBhIHBhdHRlcm4gY29uc2lzdGluZyBvZiBJPCpfYWxsLmRlYj4gYW5kIEk8Kl9hcmNoLmRlYj4gaW5zdGVhZCBvZiAiCisic2Nhbm5pbmcgZm9yIGFsbCBkZWJzLiIKK21zZ3N0ciAiIgorIlZlcndlbmRlIGVpbiBNdXN0ZXIsIGRhcyBhdXMgSTwqX2FsbC5kZWI+IHVuZCBJPCpfYXJjaC5kZWI+IGJlc3RlaHQsIHN0YXR0ICIKKyJuYWNoIGFsbGVuIERlYnMgenUgc3VjaGVuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6ODgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1tPiwgQjwtLW11bHRpdmVyc2lvbj4iCittc2dzdHIgIkI8LW0+LCBCPC0tbXVsdGl2ZXJzaW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2FucGFja2FnZXMuMTo5MQorbXNnaWQgIkluY2x1ZGUgYWxsIGZvdW5kIHBhY2thZ2VzIGluIHRoZSBvdXRwdXQuIgorbXNnc3RyICJOaW1tIGFsbGUgZ2VmdW5kZW5lbiBQYWtldGUgaW4gZGVyIEF1c2dhYmUgYXVmLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6OTEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1NPiwgQjwtLW1lZGl1bT4gSTxpZC1zdHJpbmc+IgorbXNnc3RyICJCPC1NPiwgQjwtLW1lZGl1bT4gSTxJRC1aZWljaGVua2V0dGU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjk2Cittc2dpZCAiIgorIkFkZCBhbiBYLU1lZGl1bSBmaWVsZCBjb250YWluaW5nIHRoZSB2YWx1ZSBJPGlkLXN0cmluZz4uIFRoaXMgZmllbGQgaXMgIgorInJlcXVpcmVkIGlmIHlvdSB3YW50IHRvIGdlbmVyYXRlIEI8UGFja2FnZXMuY2Q+IGZpbGVzIGZvciB1c2UgYnkgdGhlIG11bHRpY2QgIgorImFjY2VzcyBtZXRob2Qgb2YgZHNlbGVjdC4iCittc2dzdHIgIiIKKyJGw7xnZSBlaW4gRmVsZCBYLU1lZGl1bSBoaW56dSwgZGFzIGRlbiBXZXJ0IHZvbiBJPElELVplaWNoZW5rZXR0ZT4gZW50aMOkbHQuICIKKyJEaWVzZXMgRmVsZCB3aXJkIGJlbsO2dGlndCwgZmFsbHMgU2llIGRpZSBEYXRlaWVuIEI8UGFja2FnZXMuY2Q+IGbDvHIgZGVuICIKKyJFaW5zYXR6IG1pdCBkZXIgTXVsdGljZC1adWdyaWZmc21ldGhvZGUgdm9uIERzZWxlY3QgZXJzdGVsbGVuIHdvbGxlbi4iCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjEwMyB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDQ4CisjLCBuby13cmFwCittc2dpZCAiRElBR05PU1RJQ1MiCittc2dzdHIgIkRJQUdOT1NFIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjEwOQorbXNnaWQgIiIKKyJCPGRwa2ctc2NhbnBhY2thZ2VzPiBvdXRwdXRzIHRoZSB1c3VhbCBzZWxmLWV4cGxhbmF0b3J5IGVycm9ycy4gSXQgYWxzbyAiCisid2FybnMgYWJvdXQgcGFja2FnZXMgdGhhdCBhcmUgaW4gdGhlIHdyb25nIHN1YmRpcmVjdG9yeSwgYXJlIGR1cGxpY2F0ZWQsICIKKyJoYXZlIGEgRmlsZW5hbWUgZmllbGQgaW4gdGhlaXIgY29udHJvbCBmaWxlLCBhcmUgbWlzc2luZyBmcm9tIHRoZSBvdmVycmlkZSAiCisiZmlsZSwgb3IgaGF2ZSBtYWludGFpbmVyIHN1YnN0aXR1dGlvbnMgd2hpY2ggZG8gbm90IHRha2UgZWZmZWN0LiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1zY2FucGFja2FnZXM+IGdpYnQgZGllIGdld8O2aG5saWNoZW4gc2VsYnN0ZXJrbMOkcmVuZGVuIEZlaGxlciBhdXMuIEVzICIKKyJ3YXJudCBhdWNoIMO8YmVyIFBha2V0ZSwgZGllIGltIGZhbHNjaGVuIFVudGVydmVyemVpY2huaXMgc2luZCwgZG9wcGVsdCAiCisidm9ya29tbWVuLCBlaW4gRmlsZW5hbWUtRmVsZCBpbiBpaHJlciBTdGV1ZXJkYXRlaSBoYWJlbiwgaW4gZGVyIE92ZXJyaWRlLSIKKyJEYXRlaSBmZWhsZW4gb2RlciBmw7xyIGRpZSBCZXRyZXVlci1TdWJzdGl0dXRpb25lbiB2b3JsaWVnZW4sIGRpZSBrZWluZW4gIgorIkVmZmVrdCBoYWJlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6MTE1Cittc2dpZCAiIgorIkI8ZHBrZz4oMSksIEI8ZHNlbGVjdD4oMSksIEI8ZGViLW92ZXJyaWRlPig1KSwgQjxkZWItZXh0cmEtb3ZlcnJpZGU+KDUpLCAiCisiQjxkcGtnLXNjYW5zb3VyY2VzPigxKS4iCittc2dzdHIgIiIKKyJCPGRwa2c+KDEpLCBCPGRzZWxlY3Q+KDEpLCBCPGRlYi1vdmVycmlkZT4oNSksIEI8ZGViLWV4dHJhLW92ZXJyaWRlPig1KSwgIgorIkI8ZHBrZy1zY2Fuc291cmNlcz4oMSkuIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1zY2Fuc291cmNlcy4xOjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLXNjYW5zb3VyY2VzIgorbXNnc3RyICJkcGtnLXNjYW5zb3VyY2VzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6NAorbXNnaWQgImRwa2ctc2NhbnNvdXJjZXMgLSBjcmVhdGUgU291cmNlcyBpbmRleCBmaWxlcyIKK21zZ3N0ciAiZHBrZy1zY2FucGFja2FnZXMgLSBlcnN0ZWxsZSBRdWVsbC1JbmRleC1EYXRlaWVuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6MTIKK21zZ2lkICIiCisiQjxkcGtnLXNjYW5zb3VyY2VzPiBbSTxvcHRpb24+Li4uXSBJPGJpbmFyeS1kaXI+IFtJPG92ZXJyaWRlLWZpbGU+IFtJPHBhdGgtIgorInByZWZpeD5dXSBCPEU8Z3Q+PiBJPFNvdXJjZXM+IgorbXNnc3RyICIiCisiQjxkcGtnLXNjYW5zb3VyY2VzPiBbSTxPcHRpb24+Li4uXSBJPEJpbsOkci1WZXJ6PiBbSTxvdmVycmlkZS1EYXRlaT4gW0k8UGZhZC0iCisiUHJlZml4Pl1dIEI8RTxndD4+IEk8U291cmNlcz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMToxNworbXNnaWQgIiIKKyJCPGRwa2ctc2NhbnNvdXJjZXM+IHNjYW5zIHRoZSBnaXZlbiBJPGJpbmFyeS1kaXI+IGZvciBJPC5kc2M+IGZpbGVzLiAgVGhlc2UgIgorImFyZSB1c2VkIHRvIGNyZWF0ZSBhIERlYmlhbiBzb3VyY2UgaW5kZXgsIHdoaWNoIGlzIG91dHB1dCB0byBzdGRvdXQuIgorbXNnc3RyICIiCisiQjxkcGtnLXNjYW5zb3VyY2VzPiBkdXJjaHN1Y2h0IGRhcyDDvGJlcmdlYmVuZSBJPEJpbsOkci1WZXJ6PiBuYWNoIEk8LmRzYz4tIgorIkRhdGVpZW4uIERpZXNlIHdlcmRlbiB2ZXJ3ZW5kZXQsIHVtIGVpbmVuIERlYmlhbi1RdWVsbC1JbmRleCB6dSBlcnN0ZWxsZW4sICIKKyJkZXIgYXVmIGRlciBTdGFuZGFyZGF1c2dhYmUgYXVzZ2VnZWJlbiB3aXJkLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2Fuc291cmNlcy4xOjI4Cittc2dpZCAiIgorIlRoZSBJPG92ZXJyaWRlLWZpbGU+LCBpZiBnaXZlbiwgaXMgdXNlZCB0byBzZXQgcHJpb3JpdGllcyBpbiB0aGUgcmVzdWx0aW5nICIKKyJpbmRleCByZWNvcmRzIGFuZCB0byBvdmVycmlkZSB0aGUgbWFpbnRhaW5lciBmaWVsZCBnaXZlbiBpbiB0aGUgSTwuZHNjPiAiCisiZmlsZXMuIFRoZSBmaWxlIGNhbiBiZSBjb21wcmVzc2VkLiBTZWUgQjxkZWItb3ZlcnJpZGU+KDUpICBmb3IgdGhlIGZvcm1hdCBvZiAiCisidGhpcyBmaWxlLiBcXHMtMU5COlxcczAgU2luY2UgdGhlIG92ZXJyaWRlIGZpbGUgaXMgaW5kZXhlZCBieSBiaW5hcnksIG5vdCAiCisic291cmNlLCBwYWNrYWdlcywgdGhlcmUncyBhIGJpdCBvZiBhIHByb2JsZW0gaGVyZS4gVGhlIGN1cnJlbnQgIgorImltcGxlbWVudGF0aW9uIHVzZXMgdGhlIGhpZ2hlc3QgcHJpb3JpdHkgb2YgYWxsIHRoZSBiaW5hcnkgcGFja2FnZXMgcHJvZHVjZWQgIgorImJ5IGEgSTwuZHNjPiBmaWxlIGZvciB0aGUgcHJpb3JpdHkgb2YgdGhlIHNvdXJjZSBwYWNrYWdlLCBhbmQgdGhlIG92ZXJyaWRlICIKKyJlbnRyeSBmb3IgdGhlIGZpcnN0IGJpbmFyeSBwYWNrYWdlIGxpc3RlZCBpbiB0aGUgSTwuZHNjPiBmaWxlIHRvIG1vZGlmeSAiCisibWFpbnRhaW5lciBpbmZvcm1hdGlvbi4gVGhpcyBtaWdodCBjaGFuZ2UuIgorbXNnc3RyICIiCisiRGllIEk8b3ZlcnJpZGUtRGF0ZWk+IHdpcmQsIGZhbGxzIGFuZ2VnZWJlbiwgdmVyd2VuZGV0LCB1bSBkaWUgUHJpb3JpdMOkdGVuICIKKyJpbiBkZW4gZXJnZWJlbmVuIEluZGV4LURhdGVuc8OkdHplbiB6dSBzZXR6ZW4gdW5kIHNpY2ggw7xiZXIgZGFzIEJldHJldWVyLUZlbGQgIgorImluIGRlbiBJPC5kc2M+LURhdGVpZW4gaGlud2VnenVzZXR6ZW4uIERpZXNlIERhdGVpIGthbm4ga29tcHJpbWllcnQgc2Vpbi4gIgorIkxlc2VuIFNpZSBCPGRwa2ctc2NhbnBhY2thZ2VzPigxKSBmw7xyIGRhcyBGb3JtYXQgZGllc2VyIERhdGVpLiBcXHMtMUJlYWNodGVuICIKKyJTaWVcXHMwOiBEYSBkaWUgb3ZlcnJpZGUtRGF0ZWkgbmFjaCBCaW7DpHItIHVuZCBuaWNodCBRdWVsbHBha2V0ZW4gaW5kaXppZXJ0ICIKKyJ3aXJkLCBnaWJ0IGVzIGhpZXIgZWluIGtsZWluZXMgUHJvYmxlbS4gRGllIGFrdHVlbGxlIEltcGxlbWVudGllcnVuZyAiCisidmVyd2VuZGV0IGRpZSBow7ZjaHN0ZSBQcmlvcml0w6R0IGFsbGVyIHZvbiBlaW5lciBJPC5kc2M+LURhdGVpIGVyemV1Z3RlbiAiCisiQmluw6RycGFrZXRlIGbDvHIgZGllIFByaW9yaXTDpHQgZGVzIFF1ZWxscGFrZXRzLCB1bmQgZGVuIEluaGFsdCBmw7xyIGRhcyAiCisiSGlud2Vnc2V0emVuIMO8YmVyIGRpZSBCZXRyZXVlci1JbmZvcm1hdGlvbiBhdXMgZGVtIEVpbnRyYWcgZsO8ciBkYXMgZXJzdGUgaW4gIgorImRlciBJPC5kc2M+LURhdGVpIGF1ZmdlZsO8aHJ0ZSBCaW7DpHJwYWtldC4gRGllcyBrw7ZubnRlIHNpY2ggw6RuZGVybi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMTozMgorbXNnaWQgIiIKKyJUaGUgSTxwYXRoLXByZWZpeD4sIGlmIGdpdmVuLCBpcyBwcmVwZW5kZWQgdG8gdGhlIGRpcmVjdG9yeSBmaWVsZCBpbiB0aGUgIgorImdlbmVyYXRlZCBzb3VyY2UgaW5kZXguIFlvdSBnZW5lcmFsbHkgdXNlIHRoaXMgdG8gbWFrZSB0aGUgZGlyZWN0b3J5IGZpZWxkcyAiCisiY29udGFpbiB0aGUgcGF0aCBmcm9tIHRoZSB0b3Agb2YgdGhlIERlYmlhbiBhcmNoaXZlIGhpZXJhcmNoeS4iCittc2dzdHIgIiIKKyJEZXIgSTxQZmFkLVByw6RmaXg+IHdpcmQsIGZhbGxzIGFuZ2VnZWJlbiwgdm9yIGRhcyBEaXJlY3RvcnktRmVsZCBpbiBkZW0gIgorImVyemV1Z3RlbiBRdWVsbC1JbmRleCB2b3Jhbmdlc3RlbGx0LiBTaWUgdmVyd2VuZGVuIGRpZXMgaW0gQWxsZ2VtZWluZW4sICIKKyJkYW1pdCBkYXMgRGlyZWN0b3J5LUZlbGQgZGVuIFBmYWQgdm9uIGRlciBTcGl0emUgZGVyIERlYmlhbi1IaWVyYXJjaGllICIKKyJlbnRow6RsdC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMTo0MworbXNnaWQgIiIKKyJCPE5vdGU6PiBJZiB5b3Ugd2FudCB0byBhY2Nlc3MgdGhlIGdlbmVyYXRlZCBTb3VyY2VzIGZpbGUgd2l0aCBCPGFwdD4oOCkgICIKKyJ5b3Ugd2lsbCBwcm9iYWJseSBuZWVkIHRvIGNvbXByZXNzIHRoZSBmaWxlIHdpdGggQjxnemlwPigxKSAgKGdlbmVyYXRpbmcgYSAiCisiU291cmNlcy5neiBmaWxlKS4gYXB0IGlnbm9yZXMgdW5jb21wcmVzc2VkIFNvdXJjZXMgZmlsZXMgZXhjZXB0IG9uIGxvY2FsICIKKyJhY2Nlc3MgKGkuZS4gIEI8ZmlsZTovLz4gc291cmNlcykuIgorbXNnc3RyICIiCisiQjxIaW53ZWlzOj4gRmFsbHMgU2llIGF1ZiBkaWUgZXJ6ZXVndGUgU291cmNlcy1EYXRlaSBtaXQgQjxhcHQ+KDgpIHp1Z3JlaWZlbiAiCisid29sbGVuLCB3ZXJkZW4gU2llIHdhaHJzY2hlaW5saWNoIGRpZSBEYXRlaSBtaXQgQjxnemlwPigxKSBrb21wcmltaWVyZW4gIgorIm3DvHNzZW4gKHVuZCBkYW1pdCBlaW4gU291cmNlcy5nei1EYXRlaSBlcnN0ZWxsZW4pLiBBcHQgaWdub3JpZXJ0IC0gYWJnZXNlaGVuICIKKyJ2b24gbG9rYWxlbSBadWdyaWZmIChkLmguIMO8YmVyIEI8ZmlsZTovLz4tUXVlbGxlbikgLSB1bmtvbXByaW1pZXJ0ZSBTb3VyY2VzLSIKKyJEYXRlaWVuLiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMTo0NQorIywgbm8td3JhcAorbXNnaWQgIkI8LW4+LCBCPC0tbm8tc29ydD4iCittc2dzdHIgIkI8LW4+LCBCPC0tbm8tc29ydD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMTo0OAorbXNnaWQgIiIKKyJEb24ndCBzb3J0IHRoZSBpbmRleCByZWNvcmRzLiBOb3JtYWxseSB0aGV5IGFyZSBzb3J0ZWQgYnkgc291cmNlIHBhY2thZ2UgIgorIm5hbWUuIgorbXNnc3RyICIiCisiU29ydGllcmUgZGllIEluZGV4LURhdGVuc8OkdHplIG5pY2h0LiBOb3JtYWxlcndlaXNlIHdlcmRlbiBzaWUgbmFjaCAiCisiUXVlbGxwYWtldG5hbWVuIHNvcnRpZXJ0LiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMTo1NAorIywgbm8td3JhcAorbXNnaWQgIkI8LXM+LCBCPC0tc291cmNlLW92ZXJyaWRlPiBJPGZpbGU+IgorbXNnc3RyICJCPC1zPiwgQjwtLXNvdXJjZS1vdmVycmlkZT4gSTxEYXRlaT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMTo1OAorbXNnaWQgIiIKKyJVc2UgSTxmaWxlPiBhcyB0aGUgc291cmNlIG92ZXJyaWRlIGZpbGUgKHRoZSBmaWxlIGNhbiBiZSBjb21wcmVzc2VkKS4gIFRoZSAiCisiZGVmYXVsdCBpcyB0aGUgbmFtZSBvZiB0aGUgb3ZlcnJpZGUgZmlsZSB5b3Ugc3BlY2lmaWVkIHdpdGggSTwuc3JjPiBhcHBlbmRlZC4iCittc2dzdHIgIiIKKyJWZXJ3ZW5kZW4gU2llIEk8RGF0ZWk+IGFscyBRdWVsbC1vdmVycmlkZS1EYXRlaSAoZGllIERhdGVpIGthbm4ga29tcHJpbWllcnQgIgorInNlaW4pLiBEaWUgU3RhbmRhcmRlaW5zdGVsbHVuZyBpc3QgZGVyIE5hbWUgZGVyIG92ZXJyaWRlLURhdGVpLCBkaWUgU2llICIKKyJhbmdlZ2ViZW4gaGFiZW4sIHVtIEk8LnNyYz4gZXJnw6RuenQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6NjQKK21zZ2lkICIiCisiVGhlIHNvdXJjZSBvdmVycmlkZSBmaWxlIGlzIGluIGEgZGlmZmVyZW50IGZvcm1hdCBmcm9tIHRoZSBiaW5hcnkgb3ZlcnJpZGUgIgorImZpbGUuIEl0IGNvbnRhaW5zIG9ubHkgdHdvIHdoaXRlc3BhY2Ugc2VwYXJhdGVkIGZpZWxkcywgdGhlIGZpcnN0IGlzIHRoZSAiCisic291cmNlIHBhY2thZ2UgbmFtZSBhbmQgdGhlIHNlY29uZCBpcyB0aGUgc2VjdGlvbi4gQmxhbmsgbGluZXMgYW5kIGNvbW1lbnQgIgorImxpbmVzIGFyZSBpZ25vcmVkIGluIHRoZSBub3JtYWwgbWFubmVyLiBJZiBhIHBhY2thZ2UgYXBwZWFycyBpbiBib3RoIGZpbGVzICIKKyJ0aGUgc291cmNlIG92ZXJyaWRlIHRha2VzIHByZWNlZGVuY2UgZm9yIHNldHRpbmcgdGhlIHNlY3Rpb24uIgorbXNnc3RyICIiCisiRGllIFF1ZWxsLW92ZXJyaWRlLURhdGVpIGhhdCBlaW4gYW5kZXJlcyBGb3JtYXQgYWxzIGRpZSBCaW7DpHItb3ZlcnJpZGUtRGF0ZWkuIgorIlNpZSBlbnRow6RsdCBudXIgendlaSwgZHVyY2ggTGVlcnplaWNoZW4gc2VwYXJpZXJ0ZSBGZWxkZXIsIGRlciBlcnN0ZSBpc3QgZGVyICIKKyJRdWVsbHBha2V0bmFtZSB1bmQgZGVyIHp3ZWl0ZSBkZXIgQmVyZWljaC4gTGVlcnplaWxlbiB1bmQgS29tbWVudGFyemVpbGVuICIKKyJ3ZXJkZW4gaW4gbm9ybWFsZXIgQXJ0IHVuZCBXZWlzZSBpZ25vcmllcnQuIEZhbGxzIGVpbiBQYWtldCBpbiBiZWlkZW4gIgorIkRhdGVpZW4gYXVmdGF1Y2h0LCBkYW5uIG5pbW10IGRpZSBRdWVsbC1vdmVycmlkZSBWb3JyYW5nIGbDvHIgZGllIEVpbnN0ZWxsdW5nICIKKyJkZXMgQmVyZWljaHMuIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1zY2Fuc291cmNlcy4xOjY0CisjLCBuby13cmFwCittc2dpZCAiQjwtLWRlYnVnPiIKK21zZ3N0ciAiQjwtLWRlYnVnPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2Fuc291cmNlcy4xOjY2Cittc2dpZCAiVHVybiBkZWJ1Z2dpbmcgb24uIgorbXNnc3RyICJTY2hhbHRlIERlYnVnZ2luZyBlaW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6NzUKK21zZ2lkICJCPGRlYi1vdmVycmlkZT4oNSksIEI8ZGViLWV4dHJhLW92ZXJyaWRlPig1KSwgQjxkcGtnLXNjYW5wYWNrYWdlcz4oMSkuIgorbXNnc3RyICJCPGRlYi1vdmVycmlkZT4oNSksIEI8ZGViLWV4dHJhLW92ZXJyaWRlPig1KSwgQjxkcGtnLXNjYW5wYWNrYWdlcz4oMSkuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6NzcKK21zZ2lkICJSb2RlcmljayBTY2hlcnRsZXIgRTxsdD5yb2Rlcmlja0Bhcmdvbi5vcmdFPGd0PiIKK21zZ3N0ciAiUm9kZXJpY2sgU2NoZXJ0bGVyIEU8bHQ+cm9kZXJpY2tAYXJnb24ub3JnRTxndD4iCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLXNobGliZGVwcy4xOjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLXNobGliZGVwcyIKK21zZ3N0ciAiZHBrZy1zaGxpYmRlcHMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6NAorbXNnaWQgImRwa2ctc2hsaWJkZXBzIC0gZ2VuZXJhdGUgc2hhcmVkIGxpYnJhcnkgc3Vic3R2YXIgZGVwZW5kZW5jaWVzIgorbXNnc3RyICIiCisiZHBrZy1zaGxpYmRlcHMgLSBlcnN0ZWxsZSBTdWJzdHZhci1BYmjDpG5naWdrZWl0ZW4gZsO8ciBMYXVmemVpdGJpYmxpb3RoZWtlbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTo4Cittc2dpZCAiQjxkcGtnLXNobGliZGVwcz4gW0k8b3B0aW9uPi4uLl0gW0I8LWU+XUk8ZXhlY3V0YWJsZT4gW0k8b3B0aW9uPi4uLl0iCittc2dzdHIgIkI8ZHBrZy1zaGxpYmRlcHM+IFtJPE9wdGlvbj4uLi5dIFtCPC1lPl1JPFByb2dyYW1tPiBbSTxPcHRpb24+Li4uXSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToyMgorbXNnaWQgIiIKKyJCPGRwa2ctc2hsaWJkZXBzPiBjYWxjdWxhdGVzIHNoYXJlZCBsaWJyYXJ5IGRlcGVuZGVuY2llcyBmb3IgZXhlY3V0YWJsZXMgIgorIm5hbWVkIGluIGl0cyBhcmd1bWVudHMuIFRoZSBkZXBlbmRlbmNpZXMgYXJlIGFkZGVkIHRvIHRoZSBzdWJzdGl0dXRpb24gIgorInZhcmlhYmxlcyBmaWxlIEI8ZGViaWFuL3N1YnN0dmFycz4gYXMgdmFyaWFibGUgbmFtZXMgQjxzaGxpYnM6IgorIj5JPGRlcGVuZGVuY3lmaWVsZD4gd2hlcmUgSTxkZXBlbmRlbmN5ZmllbGQ+IGlzIGEgZGVwZW5kZW5jeSBmaWVsZCBuYW1lLiBBbnkgIgorIm90aGVyIHZhcmlhYmxlcyBzdGFydGluZyB3aXRoIEI8c2hsaWJzOj4gYXJlIHJlbW92ZWQgZnJvbSB0aGUgZmlsZS4iCittc2dzdHIgIiIKKyJCPGRwa2ctc2hsaWJkZXBzPiBiZXJlY2huZXQgQWJow6RuZ2lna2VpdGVuIHZvbiBMYXVmemVpdGJpYmxpb3RoZWtlbiBmw7xyICIKKyJQcm9ncmFtbWUsIGRlcmVuIE5hbWUgYWxzIEFyZ3VtZW50IMO8YmVyZ2ViZW4gd2VyZGVuLiBEaWUgQWJow6RuZ2lna2VpdGVuICIKKyJ3ZXJkZW4genUgZGVyIERhdGVpIGRlciBTdWJzdGl0dXRpb25zdmFyaWFibGVuIEI8ZGViaWFuL3N1YnN0dmFycz4gYWxzICIKKyJWYXJpYWJsZW5uYW1lbiBCPHNobGliczo+STxBYmjDpG5naWdrZWl0c2ZlbGQ+IGhpbnp1Z2Vmw7xndCwgd29iZWkgIgorIkk8QWJow6RuZ2lna2VpdHNmZWxkPiBkZXIgRmVsZG5hbWUgZWluZXIgQWJow6RuZ2lna2VpdCBpc3QuIEFsbGUgYW5kZXJlbiAiCisiVmFyaWFibGVuLCBkaWUgbWl0IEI8c2hsaWJzOj4gYmVnaW5uZW4sIHdlcmRlbiBhdXMgZGVyIERhdGVpIGVudGZlcm50LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTo0NQorbXNnaWQgIiIKKyJCPGRwa2ctc2hsaWJkZXBzPiBoYXMgdHdvIHBvc3NpYmxlIHNvdXJjZXMgb2YgaW5mb3JtYXRpb24gdG8gZ2VuZXJhdGUgIgorImRlcGVuZGVuY3kgaW5mb3JtYXRpb24uIEVpdGhlciBJPHN5bWJvbHM+IGZpbGVzIG9yIEk8c2hsaWJzPiBmaWxlcy4gRm9yIGVhY2ggIgorImJpbmFyeSB0aGF0IEI8ZHBrZy1zaGxpYmRlcHM+IGFuYWx5emVzLCBpdCBmaW5kcyBvdXQgdGhlIGxpc3Qgb2YgbGlicmFyaWVzICIKKyJ0aGF0IGl0J3MgbGlua2VkIHdpdGguICBUaGVuLCBmb3IgZWFjaCBsaWJyYXJ5LCBpdCBsb29rcyB1cCBlaXRoZXIgdGhlICIKKyJJPHN5bWJvbHM+IGZpbGUsIG9yIHRoZSBJPHNobGlicz4gZmlsZSAoaWYgdGhlIGZvcm1lciBkb2Vzbid0IGV4aXN0IG9yIGlmICIKKyJkZWJpYW4vc2hsaWJzLmxvY2FsIGNvbnRhaW5zIHRoZSByZWxldmFudCBkZXBlbmRlbmN5KS4gQm90aCBmaWxlcyBhcmUgIgorInN1cHBvc2VkIHRvIGJlIHByb3ZpZGVkIGJ5IHRoZSBsaWJyYXJ5IHBhY2thZ2UgYW5kIHNob3VsZCB0aHVzIGJlIGF2YWlsYWJsZSAiCisiYXMgL3Zhci9saWIvZHBrZy9pbmZvL0k8cGFja2FnZT4uSTxzeW1ib2xzPiBvciAvdmFyL2xpYi9kcGtnL2luZm8vSTxwYWNrYWdlPi4iCisiSTxzaGxpYnM+LiBUaGUgcGFja2FnZSBuYW1lIGlzIGlkZW50aWZpZWQgaW4gdHdvIHN0ZXBzOiBmaW5kIHRoZSBsaWJyYXJ5ICIKKyJmaWxlIG9uIHRoZSBzeXN0ZW0gKGxvb2tpbmcgaW4gdGhlIHNhbWUgZGlyZWN0b3JpZXMgdGhhdCBCPGxkLnNvPiB3b3VsZCAiCisidXNlKSwgdGhlbiB1c2UgQjxkcGtnIC1TID5JPGxpYnJhcnktZmlsZT4gdG8gbG9va3VwIHRoZSBwYWNrYWdlIHByb3ZpZGluZyAiCisidGhlIGxpYnJhcnkuIgorbXNnc3RyICIiCisiQjxkcGtnLXNobGliZGVwcz4gaGF0IHp3ZWkgbcO2Z2xpY2hlIEluZm9ybWF0aW9uc3F1ZWxsZW4genVyIEVyc3RlbGx1bmcgZGVyICIKKyJBYmjDpG5naWdrZWl0c2luZm9ybWF0aW9uZW4uIEVudHdlZGVyIEk8U3ltYm9sPi0gb2RlciBJPFNobGlicz4tRGF0ZWllbi4gIgorIkI8ZHBrZy1zaGxpYmRlcHM+IGZpbmRldCBmw7xyIGplZGVzIFByb2dyYW1tLCBkYXMgZXMgYW5hbHlzaWVydCwgZGllICIKKyJCaWJsaW90aGVrZW4gaGVyYXVzLCBnZWdlbiBkaWUgZXMgZ2VsaW5rdCBpc3QuIEJlaSBqZWRlciBCaWJsaW90aGVrIHNjaGF1dCAiCisiZXMgZW50d2VkZXIgaW4gZGllIEk8U3ltYm9sPi0gb2RlciBpbiBpbiBJPFNobGlicz4tRGF0ZWkgKGZhbGxzIGVyc3RlcmUgIgorIm5pY2h0IGV4aXN0aWVydCBvZHIgZmFsbHMgZGViaWFuL3NobGlicy5sb2NhbCBkaWUgcmVsZXZhbnRlbiBBYmjDpG5naWdrZWl0ZW4gIgorImVudGjDpGx0KS4gQmVpZGUgRGF0ZWllbiBzb2xsdGVuIHZvbiBkZW0gQmlibGlvdGhla3NwYWtldCBiZXJlaXRnZXN0ZWxsdCAiCisid2VyZGVuIHVuZCBzb2xsdGVuIGRhaGVyIGFscyAvdmFyL2xpYi9kcGtnL2luZm8vSTxQYWtldD4uSTxTeW1ib2w+IG9kZXIgL3Zhci8iCisibGliL2Rwa2cvaW5mby9JPFBha2V0Pi5JPFNobGlicz4gdmVyZsO8Z2JhciBzZWluLiBEZXIgUGFrZXRuYW1lIHdpcmQgaW4gendlaSAiCisiU2Nocml0dGVuIGlkZW50aWZpemllcnQ6IHp1ZXJzdCB3aXJkIGRpZSBCaWJsaW90aGVrc2RhdGVpIGF1ZiBkZW0gU3lzdGVtICIKKyJnZWZ1bmRlbiAoZHVyY2ggUHLDvGZ1bmcgZGVyIGdsZWljaGVuIFZlcnplaWNobmlzc2Ugd2llIGJlaSBCPGxkLnNvPiksIGRhbm4gIgorIndpcmQgQjxkcGtnIC1TID5JPEJpYmxpb3RoZWtzZGF0ZWk+IHZlcndlbmRldCwgdW0gZGFzIFBha2V0LCBkYXMgZGllICIKKyJCaWJsaW90aGVrIGJlcmVpdHN0ZWxsdCwgenUgZXJtaXR0ZWxuLiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc2hsaWJkZXBzLjE6NDUKKyMsIG5vLXdyYXAKK21zZ2lkICJTeW1ib2xzIGZpbGVzIgorbXNnc3RyICJTeW1ib2xkYXRlaWVuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjUwCittc2dpZCAiIgorIlN5bWJvbHMgZmlsZXMgY29udGFpbiBmaW5lci1ncmFpbmVkIGRlcGVuZGVuY3kgaW5mb3JtYXRpb24gYnkgcHJvdmlkaW5nIHRoZSAiCisibWluaW11bSBkZXBlbmRlbmN5IGZvciBlYWNoIHN5bWJvbCB0aGF0IHRoZSBsaWJyYXJ5IGV4cG9ydHMuIFRoZSBzY3JpcHQgIgorInRyaWVzIHRvIGZpbmQgYSBzeW1ib2xzIGZpbGUgYXNzb2NpYXRlZCB0byBhIGxpYnJhcnkgcGFja2FnZSBpbiB0aGUgIgorImZvbGxvd2luZyBwbGFjZXMgKGZpcnN0IG1hdGNoIGlzIHVzZWQpOiIKK21zZ3N0ciAiIgorIlN5bWJvbGRhdGVpZW4gZW50aGFsdGVuIGZlaW5lci1ncmFudWxhcmUgQWJow6RuZ2lna2VpdHNpbmZvcm1hdGlvbmVuLCBpbmRlbSAiCisic2llIGRpZSBNaW5pbWFsYWJow6RuZ2lna2VpdCBmw7xyIGplZGVzIHZvbiBkZXIgQmlibGlvdGhlayBleHBvcnRpZXJ0ZSBTeW1ib2wgIgorImJlc2NocmVpYmVuLiBEYXMgU2tyaXB0IHZlcnN1Y2h0LCBlaW5lIFN5bWJvbGRhdGVpIGRpZSB6dSBkZW0gIgorIkJpYmxpb3RoZWtzcGFrZXQgZ2Vow7ZydCwgYW4gZGVuIGZvbGdlbmRlbiBPcnRlbiB6dXp1b3JkbmVuIChkZXIgZXJzdGUgIgorIlRyZWZmZXIgd2lyZCB2ZXJ3ZW5kZXQpOiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6NTAKKyMsIG5vLXdyYXAKK21zZ2lkICJkZWJpYW4vKi9ERUJJQU4vc3ltYm9scyIKK21zZ3N0ciAiZGViaWFuLyovREVCSUFOL3N5bWJvbHMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6NTgKK21zZ2lkICIiCisiU2hhcmVkIGxpYnJhcnkgaW5mb3JtYXRpb24gZ2VuZXJhdGVkIGJ5IHRoZSBjdXJyZW50IGJ1aWxkIHByb2Nlc3MgdGhhdCBhbHNvICIKKyJpbnZva2VkIEI8ZHBrZy1zaGxpYmRlcHM+LiAgVGhleSBhcmUgZ2VuZXJhdGVkIGJ5IEI8ZHBrZy1nZW5zeW1ib2xzPigxKS4gICIKKyJUaGV5IGFyZSBvbmx5IHVzZWQgaWYgdGhlIGxpYnJhcnkgaXMgZm91bmQgaW4gYSBwYWNrYWdlJ3MgYnVpbGQgdHJlZS4gVGhlICIKKyJzeW1ib2xzIGZpbGUgaW4gdGhhdCBidWlsZCB0cmVlIHRha2VzIHByZWNlZGVuY2Ugb3ZlciBzeW1ib2xzIGZpbGVzIGZyb20gIgorIm90aGVyIGJpbmFyeSBwYWNrYWdlcy4iCittc2dzdHIgIiIKKyJJbmZvcm1hdGlvbmVuIMO8YmVyIExhdWZ6ZWl0YmlibGlvdGhla2VuLCBkaWUgdm9tIGFrdHVlbGxlbiBCYXVwcm96ZXNzICIKKyJlcnN0ZWxsdCB3ZXJkZW4sIGRlciBhdWNoIEI8ZHBrZy1zaGxpYmRlcHM+IGF1ZnJ1ZnQuIFNpZSB3ZXJkZW4gdm9uIEI8ZHBrZy0iCisiZ2Vuc3ltYm9scz4oMSkgZXJzdGVsbHQuIFNpZSB3ZXJkZW4gbnVyIHZlcndlbmRldCwgZmFsbHMgZGllIEJpYmxpb3RoZWsgaW0gIgorIkJhdS1CYXVtIGRlcyBQYWtldHMgZ2VmdW5kZW4gd2lyZC4gRGllIFN5bWJvbGRhdGVpIGltIEJhdS1CYXVtIGhhdCBWb3JyYW5nICIKKyJnZWdlbsO8YmVyIFN5bWJvbGRhdGVpZW4gYXVzIGFuZGVyZW4gQmluw6RycGFrZXRlbi4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLXNobGliZGVwcy4xOjU4CisjLCBuby13cmFwCittc2dpZCAiL2V0Yy9kcGtnL3N5bWJvbHMvSTxwYWNrYWdlPi5zeW1ib2xzLkk8YXJjaD4iCittc2dzdHIgIi9ldGMvZHBrZy9zeW1ib2xzL0k8UGFrZXQ+LnN5bWJvbHMuSTxBcmNoaXRla3R1cj4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLXNobGliZGVwcy4xOjU5CisjLCBuby13cmFwCittc2dpZCAiL2V0Yy9kcGtnL3N5bWJvbHMvSTxwYWNrYWdlPi5zeW1ib2xzIgorbXNnc3RyICIvZXRjL2Rwa2cvc3ltYm9scy9JPFBha2V0Pi5zeW1ib2xzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjYzCittc2dpZCAiIgorIlBlci1zeXN0ZW0gb3ZlcnJpZGluZyBzaGFyZWQgbGlicmFyeSBkZXBlbmRlbmN5IGluZm9ybWF0aW9uLiAgSTxhcmNoPiBpcyB0aGUgIgorImFyY2hpdGVjdHVyZSBvZiB0aGUgY3VycmVudCBzeXN0ZW0gKG9idGFpbmVkIGJ5IEI8ZHBrZy1hcmNoaXRlY3R1cmUgLSIKKyJxREVCX0hPU1RfQVJDSD4pLiIKK21zZ3N0ciAiIgorIlN5c3RlbWFiaMOkbmdpZ2Ugw5xiZXJzY2hyZWlidW5nIGRlciBBYmjDpG5naWdrZWl0c2luZm9ybWF0aW9uZW4gdm9uICIKKyJMYXVmemVpdGJpYmxpb3RoZWtlbi4gSTxBcmNoaXRla3R1cj4gaXN0IGRpZSBBcmNoaXRla3R1ciBkZXMgYWt0dWVsbGVuICIKKyJTeXN0ZW1zIChlcm1pdHRlbHQgZHVyY2ggQjxkcGtnLWFyY2hpdGVjdHVyZSAtcURFQl9IT1NUX0FSQ0g+KS4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLXNobGliZGVwcy4xOjYzCisjLCBuby13cmFwCittc2dpZCAiT3V0cHV0IGZyb20gXFwobHFCPGRwa2ctcXVlcnkgLS1jb250cm9sLXBhdGg+IEk8cGFja2FnZT4gc3ltYm9sc1xcKHJxIgorbXNnc3RyICJBdXNnYWJlIHZvbiBcXChscUI8ZHBrZy1xdWVyeSAtLWNvbnRyb2wtcGF0aD4gSTxQYWtldD4gc3ltYm9sc1xcKHJxIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjY2IGRwa2ctc2hsaWJkZXBzLjE6MTAwCittc2dpZCAiIgorIlBhY2thZ2UtcHJvdmlkZWQgc2hhcmVkIGxpYnJhcnkgZGVwZW5kZW5jeSBpbmZvcm1hdGlvbi4gIFVubGVzcyBvdmVycmlkZGVuICIKKyJieSAtLWFkbWluZGlyLCB0aG9zZSBmaWxlcyBhcmUgbG9jYXRlZCBpbiAvdmFyL2xpYi9kcGtnLiIKK21zZ3N0ciAiIgorIlZvbSBQYWtldCBiZXJlaXRnZXN0ZWxsdGUgQWJow6RuZ2lna2VpdHNpbmZvcm1hdGlvbmVuIGbDvHIgIgorIkxhdWZ6ZWl0YmlibGlvdGhla2VuLiBGYWxscyBuaWNodCBkdXJjaCAtLWFkbWluZGlyIMO8YmVyc2NocmllYmVuLCBiZWZpbmRlbiAiCisic2ljaCBzb2xjaGUgRGF0ZWllbiB1bnRlciAvdmFyL2xpYi9kcGtnLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTo3MworbXNnaWQgIiIKKyJXaGlsZSBzY2FubmluZyB0aGUgc3ltYm9scyB1c2VkIGJ5IGFsbCBiaW5hcmllcywgQjxkcGtnLXNobGliZGVwcz4gcmVtZW1iZXJzICIKKyJ0aGUgKGJpZ2dlc3QpIG1pbmltYWwgdmVyc2lvbiBuZWVkZWQgZm9yIGVhY2ggbGlicmFyeS4gQXQgdGhlIGVuZCBvZiB0aGUgIgorInByb2Nlc3MsIGl0IGlzIGFibGUgdG8gd3JpdGUgb3V0IHRoZSBtaW5pbWFsIGRlcGVuZGVuY3kgZm9yIGV2ZXJ5IGxpYnJhcnkgIgorInVzZWQgKHByb3ZpZGVkIHRoYXQgdGhlIGluZm9ybWF0aW9uIG9mIHRoZSBJPHN5bWJvbHM+IGZpbGVzIGFyZSBhY2N1cmF0ZSkuIgorbXNnc3RyICIiCisiV8OkaHJlbmQgZGVzIER1cmNoc3VjaGVucyBhbGxlciB2b20gUHJvZ3JhbW0gdmVyd2VuZGV0ZW4gU3ltYm9sZSBlcmlubmVydCAiCisic2ljaCBCPGRwa2ctc2hsaWJkZXBzPiBhbiBkaWUgZ3LDtsOfdGUgTWluaW1hbHZlcnNpb24sIGRpZSB2b24gamVkZXIgIgorIkJpYmxpb3RoZWsgYmVuw7Z0aWd0IHdpcmQuIEFtIEVuZGUgZGVzIFByb3plc3NlcyBpc3QgZXMgaW4gZGVyIExhZ2UsIGRpZSAiCisibWluaW1hbGUgQWJow6RuZ2lna2VpdCBmw7xyIGplZGUgZWluZ2VzZXR6dGUgQmlibGlvdGhlayB6dSBzY2hyZWliZW4gIgorIih2b3JhdXNnZXNldHp0LCBkaWUgSW5mb3JtYXRpb25lbiBpbiBkZW4gSTxTeW1ib2w+LURhdGVpZW4gc2luZCBrb3JyZWt0KS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6ODAKK21zZ2lkICIiCisiQXMgYSBzYWZlLWd1YXJkIG1lYXN1cmUsIGEgc3ltYm9scyBmaWxlIGNhbiBwcm92aWRlIGEgSTxCdWlsZC1EZXBlbmRzLSIKKyJQYWNrYWdlPiBtZXRhLWluZm9ybWF0aW9uIGZpZWxkIGFuZCBCPGRwa2ctc2hsaWJkZXBzPiB3aWxsIGV4dHJhY3QgdGhlICIKKyJtaW5pbWFsIHZlcnNpb24gcmVxdWlyZWQgYnkgdGhlIGNvcnJlc3BvbmRpbmcgcGFja2FnZSBpbiB0aGUgQnVpbGQtRGVwZW5kcyAiCisiZmllbGQgYW5kIHVzZSB0aGlzIHZlcnNpb24gaWYgaXQncyBoaWdoZXIgdGhhbiB0aGUgbWluaW1hbCB2ZXJzaW9uIGNvbXB1dGVkICIKKyJieSBzY2FubmluZyBzeW1ib2xzLiIKK21zZ3N0ciAiIgorIkFscyBTaWNoZXJoZWl0c21hw59uYWhtZSBrYW5uIGVpbmUgU3ltYm9scy1EYXRlaSBlaW4gTWV0YS1JbmZvcm1hdGlvbnNmZWxkICIKKyJJPEJ1aWxkLURlcGVuZHMtUGFja2FnZT4gZW50aGFsdGVuLiBCPGRwa2ctc2hsaWJkZXBzPiBleHRyYWhpZXJ0IGRhbm4gZGllICIKKyJtaW5pbWFsZSBWZXJzaW9uLCBkaWUgdm9uIGRlbSBrb3JyZXNwb25kaWVyZW5kZW4gUGFrZXQgaW0gRmVsZCBCdWlsZC1EZXBlbmRzICIKKyJiZW7DtnRpZ3Qgd2lyZCwgdW5kIHZlcndlbmRldCBkaWVzZSBWZXJzaW9uLCBmYWxscyBzaWUgaMO2aGVyIGlzdCBhbHMgZGllICIKKyJtaW5pbWFsZSBWZXJzaW9uLCBkaWUgYmVpbSBEdXJjaHN1Y2hlbiBkZXIgU3ltYm9sZSBlcm1pdHRlbHQgd3VyZGUuIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zaGxpYmRlcHMuMTo4MAorIywgbm8td3JhcAorbXNnaWQgIlNobGlicyBmaWxlcyIKK21zZ3N0ciAiU2hsaWJzLURhdGVpZW4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6ODQKK21zZ2lkICIiCisiU2hsaWJzIGZpbGVzIGFzc29jaWF0ZSBkaXJlY3RseSBhIGxpYnJhcnkgdG8gYSBkZXBlbmRlbmN5ICh3aXRob3V0IGxvb2tpbmcgIgorImF0IHRoZSBzeW1ib2xzKS4gSXQncyB0aHVzIG9mdGVuIHN0cm9uZ2VyIHRoYW4gcmVhbGx5IG5lZWRlZCBidXQgdmVyeSBzYWZlICIKKyJhbmQgZWFzeSB0byBoYW5kbGUuIgorbXNnc3RyICIiCisiU2hsaWJzLURhdGVpZW4gb3JkbmVuIEJpYmxpb3RoZWtlbiBkaXJla3QgQWJow6RuZ2lna2VpdGVuIHp1IChvaG5lIGF1ZiBkaWUgIgorIlN5bWJvbGUgenUgc2NoYXVlbikuIERhaGVyIGlzdCBkaWVzIG9mdCBzdMOkcmtlciBhbHMgYmVuw7Z0aWd0LCBhYmVyIGRhZsO8ciAiCisic2ljaGVyIHVuZCBsZWljaHQgenUgaGFuZGhhYmVuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTo4NworbXNnaWQgIiIKKyJUaGUgZGVwZW5kZW5jaWVzIGZvciBhIGxpYnJhcnkgYXJlIGxvb2tlZCB1cCBpbiBzZXZlcmFsIHBsYWNlcy4gVGhlIGZpcnN0ICIKKyJmaWxlIHByb3ZpZGluZyBpbmZvcm1hdGlvbiBmb3IgdGhlIGxpYnJhcnkgb2YgaW50ZXJlc3QgaXMgdXNlZDoiCittc2dzdHIgIiIKKyJEaWUgQWJow6RuZ2lna2VpdGVuIGbDvHIgZWluZSBCaWJsaW90aGVrIHdpcmQgYW4gdmVyc2NoaWVkZW5lbiBTdGVsbGVuICIKKyJuYWNoZ2VzY2hsYWdlbi4gRGllIGVyc3RlIERhdGVpLCBkaWUgSW5mb3JtYXRpb25lbiBmw7xyIGRpZSBiZXRyYWNodGV0ZSAiCisiQmlibGlvdGhlayBiZXJlaXRzdGVsbHQsIHdpcmQgdmVyd2VuZGV0OiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6ODcKKyMsIG5vLXdyYXAKK21zZ2lkICJkZWJpYW4vc2hsaWJzLmxvY2FsIgorbXNnc3RyICJkZWJpYW4vc2hsaWJzLmxvY2FsIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjg5Cittc2dpZCAiUGFja2FnZS1sb2NhbCBvdmVycmlkaW5nIHNoYXJlZCBsaWJyYXJ5IGRlcGVuZGVuY3kgaW5mb3JtYXRpb24uIgorbXNnc3RyICIiCisiUGFrZXQtYmVzY2hyw6Rua3RlIMOcYmVyc2NocmVpYnVuZyBkZXIgQWJow6RuZ2lna2VpdHNpbmZvcm1hdGlvbmVuIHZvbiAiCisiTGF1ZnplaXRiaWJsaW90aGVrZW4uIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1zaGxpYmRlcHMuMTo4OQorIywgbm8td3JhcAorbXNnaWQgIi9ldGMvZHBrZy9zaGxpYnMub3ZlcnJpZGUiCittc2dzdHIgIi9ldGMvZHBrZy9zaGxpYnMub3ZlcnJpZGUiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6OTEKK21zZ2lkICJQZXItc3lzdGVtIG92ZXJyaWRpbmcgc2hhcmVkIGxpYnJhcnkgZGVwZW5kZW5jeSBpbmZvcm1hdGlvbi4iCittc2dzdHIgIiIKKyJTeXN0ZW1hYmjDpG5naWdlIMOcYmVyc2NocmVpYnVuZyBkZXIgQWJow6RuZ2lna2VpdHNpbmZvcm1hdGlvbmVuIHZvbiAiCisiTGF1ZnplaXRiaWJsaW90aGVrZW4uIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1zaGxpYmRlcHMuMTo5MQorIywgbm8td3JhcAorbXNnaWQgImRlYmlhbi8qL0RFQklBTi9zaGxpYnMiCittc2dzdHIgImRlYmlhbi8qL0RFQklBTi9zaGxpYnMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6OTcKK21zZ2lkICIiCisiU2hhcmVkIGxpYnJhcnkgaW5mb3JtYXRpb24gZ2VuZXJhdGVkIGJ5IHRoZSBjdXJyZW50IGJ1aWxkIHByb2Nlc3MgdGhhdCBhbHNvICIKKyJpbnZva2VkIEI8ZHBrZy1zaGxpYmRlcHM+LiAgVGhleSBhcmUgb25seSB1c2VkIGlmIHRoZSBsaWJyYXJ5IGlzIGZvdW5kIGluIGEgIgorInBhY2thZ2UncyBidWlsZCB0cmVlLiBUaGUgc2hsaWJzIGZpbGUgaW4gdGhhdCBidWlsZCB0cmVlIHRha2VzIHByZWNlZGVuY2UgIgorIm92ZXIgc2hsaWJzIGZpbGVzIGZyb20gb3RoZXIgYmluYXJ5IHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorIkluZm9ybWF0aW9uZW4gw7xiZXIgTGF1ZnplaXRiaWJsaW90aGVrZW4sIGRpZSB2b20gYWt0dWVsbGVuIEJhdXByb3plc3MgIgorImVyc3RlbGx0IHdlcmRlbiwgZGVyIGF1Y2ggQjxkcGtnLXNobGliZGVwcz4gYXVmcnVmdC4gU2llIHdlcmRlbiBudXIgIgorInZlcndlbmRldCwgZmFsbHMgZGllIEJpYmxpb3RoZWsgaW0gQmF1LVZlcnplaWNobmlzIGVpbmVzIFBha2V0cyBnZWZ1bmRlbiAiCisid2lyZC4gRGllIFNobGlicy1EYXRlaSBpbiBkaWVzZW0gQmF1LVZlcnplaWNobmlzIGhhdCBnZWdlbsO8YmVyIFNobGlicy0iCisiRGF0ZWllbiB2b24gYW5kZXJlbiBCaW7DpHJwYWtldGVuIFZvcnJhbmcuIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1zaGxpYmRlcHMuMTo5NworIywgbm8td3JhcAorbXNnaWQgIk91dHB1dCBmcm9tIFxcKGxxQjxkcGtnLXF1ZXJ5IC0tY29udHJvbC1wYXRoPiBJPHBhY2thZ2U+IHNobGlic1xcKHJxIgorbXNnc3RyICJBdXNnYWJlIHZvbiBcXChscUI8ZHBrZy1xdWVyeSAtLWNvbnRyb2wtcGF0aD4gSTxQYWtldD4gc2hsaWJzXFwocnEiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLXNobGliZGVwcy4xOjEwMAorIywgbm8td3JhcAorbXNnaWQgIi9ldGMvZHBrZy9zaGxpYnMuZGVmYXVsdCIKK21zZ3N0ciAiL2V0Yy9kcGtnL3NobGlicy5kZWZhdWx0IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjEwMgorbXNnaWQgIlBlci1zeXN0ZW0gZGVmYXVsdCBzaGFyZWQgbGlicmFyeSBkZXBlbmRlbmN5IGluZm9ybWF0aW9uLiIKK21zZ3N0ciAiIgorIlN5c3RlbWFiaMOkbmdpZ2UgVm9yZ2FiZW4gZsO8ciBBYmjDpG5naWdrZWl0c2luZm9ybWF0aW9uZW4gdm9uICIKKyJMYXVmemVpdGJpYmxpb3RoZWtlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTA2Cittc2dpZCAiIgorIlRoZSBleHRyYWN0ZWQgZGVwZW5kZW5jaWVzIGFyZSB0aGVuIGRpcmVjdGx5IHVzZWQgKGV4Y2VwdCBpZiB0aGV5IGFyZSAiCisiZmlsdGVyZWQgb3V0IGJlY2F1c2UgdGhleSBoYXZlIGJlZW4gaWRlbnRpZmllZCBhcyBkdXBsaWNhdGUsIG9yIGFzIHdlYWtlciAiCisidGhhbiBhbm90aGVyIGRlcGVuZGVuY3kpLiIKK21zZ3N0ciAiIgorIkRpZSBleHRyYWhpZXJ0ZW4gQWJow6RuZ2lna2VpdGVuIHdlcmRlbiBkaXJla3QgdmVyd2VuZGV0IChlcyBzZWkgZGVuLCBzaWUgIgorIndlcmRlbiBhbHMgRHVibGV0dGVuIGhlcmF1c2dlZmlsdGVydCBvZGVyIHNpZSBzaW5kIHNjaHfDpGNoZXIgYWxzIGVpbmUgYW5kZXJlICIKKyJBYmjDpG5naWdrZWl0KS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTExCittc2dpZCAiIgorIkI8ZHBrZy1zaGxpYmRlcHM+IGludGVycHJldHMgbm9uLW9wdGlvbiBhcmd1bWVudHMgYXMgZXhlY3V0YWJsZSBuYW1lcywganVzdCAiCisiYXMgaWYgdGhleSdkIGJlZW4gc3VwcGxpZWQgYXMgQjwtZT5JPGV4ZWN1dGFibGU+LiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1zaGxpYmRlcHM+IGludGVycHJldGllcnQgbmljaHQtT3B0aW9ucy1Bcmd1bWVudGUgYWxzIE5hbWVuIHZvbiAiCisiYXVzZsO8aHJiYXJlbiBQcm9ncmFtbWVuLCBhbHMgb2IgZGllc2UgbWl0IEI8LWU+STxQcm9ncmFtbT4gw7xiZXJnZWJlbiB3b3JkZW4gIgorInfDpHJlbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNobGliZGVwcy4xOjExMQorIywgbm8td3JhcAorbXNnaWQgIkI8LWU+STxleGVjdXRhYmxlPiIKK21zZ3N0ciAiQjwtZT5JPFByb2dyYW1tPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToxMTUKK21zZ2lkICIiCisiSW5jbHVkZSBkZXBlbmRlbmNpZXMgYXBwcm9wcmlhdGUgZm9yIHRoZSBzaGFyZWQgbGlicmFyaWVzIHJlcXVpcmVkIGJ5ICIKKyJJPGV4ZWN1dGFibGU+LiIKK21zZ3N0ciAiIgorIkFiaMOkbmdpZ2tlaXRlbiBhdWZuZWhtZW4sIGRpZSBmw7xyIHZvbiBJPFByb2dyYW1tPiBiZW7DtnRpZ3RlICIKKyJMYXVmemVpdGJpYmxpb3RoZWtlbiBhbmdlbWVzc2VuIHNpbmQuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zaGxpYmRlcHMuMToxMTUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1kPkk8ZGVwZW5kZW5jeWZpZWxkPiIKK21zZ3N0ciAiQjwtZD5JPEFiaMOkbmdpZ2tlaXRzZmVsZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTIxCittc2dpZCAiIgorIkFkZCBkZXBlbmRlbmNpZXMgdG8gYmUgYWRkZWQgdG8gdGhlIGNvbnRyb2wgZmlsZSBkZXBlbmRlbmN5IGZpZWxkICIKKyJJPGRlcGVuZGVuY3lmaWVsZD4uICAoVGhlIGRlcGVuZGVuY2llcyBmb3IgdGhpcyBmaWVsZCBhcmUgcGxhY2VkIGluIHRoZSAiCisidmFyaWFibGUgQjxzaGxpYnM6Pkk8ZGVwZW5kZW5jeWZpZWxkPi4pIgorbXNnc3RyICIiCisiRsO8Z2UgQWJow6RuZ2lna2VpdGVuIGhpbnp1LCBkaWUgenVtIEFiaMOkbmdpZ2tlaXRzZmVsZCBJPEFiaMOkbmdpZ2tlaXRzZmVsZD4gIgorImRlciBTdGV1ZXJkYXRlaSBoaW56dWdlZsO8Z3Qgd2VyZGVuIHNvbGxlbi4gKERpZSBBYmjDpG5naWdrZWl0ZW4gZsO8ciBkaWVzZXMgIgorIkZlbGQgd2VyZGVuIGluIGRpZSBWYXJpYWJsZSBCPHNobGliczo+STxBYmjDpG5naWdrZWl0c2ZlbGQ+IGdlc2NocmllYmVuLikiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTMxCittc2dpZCAiIgorIlRoZSBCPC1kPkk8ZGVwZW5kZW5jeWZpZWxkPiBvcHRpb24gdGFrZXMgZWZmZWN0IGZvciBhbGwgZXhlY3V0YWJsZXMgYWZ0ZXIgIgorInRoZSBvcHRpb24sIHVudGlsIHRoZSBuZXh0IEI8LWQ+STxkZXBlbmRlbmN5ZmllbGQ+LiAgVGhlIGRlZmF1bHQgIgorIkk8ZGVwZW5kZW5jeWZpZWxkPiBpcyBCPERlcGVuZHM+LiIKK21zZ3N0ciAiIgorIkRpZSBPcHRpb24gQjwtZD5JPEFiaMOkbmdpZ2tlaXRzZmVsZD4gYmV0cmlmZnQgYWxsZSBQcm9ncmFtbWUsIGRpZSBkYW5hY2ggIgorImFuZ2VnZWJlbiB3ZXJkZW4sIGJpcyB6dW0gbsOkY2hzdGVuIEI8LWQ+STxBYmjDpG5naWdrZWl0c2ZlbGQ+LiBEZXIgIgorIlN0YW5kYXJkd2VydCBmw7xyIEk8QWJow6RuZ2lna2VpdHNmZWxkPiBpc3QgQjxEZXBlbmRzPi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTM5Cittc2dpZCAiIgorIklmIHRoZSBzYW1lIGRlcGVuZGVuY3kgZW50cnkgKG9yIHNldCBvZiBhbHRlcm5hdGl2ZXMpIGFwcGVhcnMgaW4gbW9yZSB0aGFuICIKKyJvbmUgb2YgdGhlIHJlY29nbmlzZWQgZGVwZW5kZW5jeSBmaWVsZCBuYW1lcyBCPFByZS1EZXBlbmRzPiwgQjxEZXBlbmRzPiwgIgorIkI8UmVjb21tZW5kcz4sIEI8RW5oYW5jZXM+IG9yIEI8U3VnZ2VzdHM+IHRoZW4gQjxkcGtnLXNobGliZGVwcz4gd2lsbCAiCisiYXV0b21hdGljYWxseSByZW1vdmUgdGhlIGRlcGVuZGVuY3kgZnJvbSBhbGwgZmllbGRzIGV4Y2VwdCB0aGUgb25lICIKKyJyZXByZXNlbnRpbmcgdGhlIG1vc3QgaW1wb3J0YW50IGRlcGVuZGVuY2llcy4iCittc2dzdHIgIiIKKyJGYWxscyBkZXIgZ2xlaWNoZSBBYmjDpG5naWdrZWl0c2VpbnRyYWcgKG9kZXIgZWluIFNhdHogdm9uIEFsdGVybmF0aXZlbikgbWVociAiCisiYWxzIGVpbm1hbCBpbiBkZW4gZXJrYW5udGVuIEFiaMOkbmdpZ2tlaXRzZmVsZG5hbWVuIEI8UHJlLURlcGVuZHM+LCAiCisiQjxEZXBlbmRzPiwgQjxSZWNvbW1lbmRzPiwgQjxFbmhhbmNlcz4gb2RlciBCPFN1Z2dlc3RzPiBhdWZ0YXVjaHQsIHdpcmQgIgorIkI8ZHBrZy1zaGxpYmRlcHM+IGRpZSBBYmjDpG5naWdrZWl0IHZvbiBhbGxlbiBGZWxkZXJuIGF1w59lciBkZW0sIGRhcyBkaWUgIgorIndpY2h0aWdzdGVuIEFiaMOkbmdpZ2tlaXRlbiByZXByw6RzZW50aWVydCwgZW50ZmVybmVuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTM5CisjLCBuby13cmFwCittc2dpZCAiQjwtcD5JPHZhcm5hbWVwcmVmaXg+IgorbXNnc3RyICJCPC1wPkk8VmFyaWFibGVubmFtZXByw6RmaXg+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjE1MAorbXNnaWQgIiIKKyJTdGFydCBzdWJzdGl0dXRpb24gdmFyaWFibGVzIHdpdGggSTx2YXJuYW1lcHJlZml4PkI8Oj4gaW5zdGVhZCBvZiBCPHNobGliczoiCisiPi4gIExpa2V3aXNlLCBhbnkgZXhpc3Rpbmcgc3Vic3RpdHV0aW9uIHZhcmlhYmxlcyBzdGFydGluZyB3aXRoICIKKyJJPHZhcm5hbWVwcmVmaXg+Qjw6PiAocmF0aGVyIHRoYW4gQjxzaGxpYnM6PikgIGFyZSByZW1vdmVkIGZyb20gdGhlIHRoZSAiCisic3Vic3RpdHV0aW9uIHZhcmlhYmxlcyBmaWxlLiIKK21zZ3N0ciAiIgorIkJlZ2lubiBkaWUgU3Vic3RpdHV0aW9uc3ZhcmlhYmxlbiBtaXQgSTxWYXJpYWJsZW5uYW1lcHLDpGZpeD5CPDo+IHN0YXR0IG1pdCAiCisiQjxzaGxpYnM6Pi4gRW50c3ByZWNoZW5kIHdlcmRlbiBhbGxlIFN1YnN0aXR1dGlvbnN2YXJpYWJsZW4sIGRpZSBtaXQgIgorIkk8VmFyaWFibGVubmFtZXByw6RmaXg+Qjw6PiAoc3RhdHQgbWl0IEI8c2hsaWJzOj4pIGJlZ2lubmVuLCBhdXMgZGVuICIKKyJTdWJzdGl0dXRpb25zdmFyaWFibGVuIGVudGZlcm50LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToxNTYKK21zZ2lkICIiCisiUHJpbnQgc3Vic3RpdHV0aW9uIHZhcmlhYmxlIHNldHRpbmdzIHRvIHN0YW5kYXJkIG91dHB1dCwgcmF0aGVyIHRoYW4gYmVpbmcgIgorImFkZGVkIHRvIHRoZSBzdWJzdGl0dXRpb24gdmFyaWFibGVzIGZpbGUgKEI8ZGViaWFuL3N1YnN0dmFycz4gYnkgZGVmYXVsdCkuIgorbXNnc3RyICIiCisiR2ViZSBkaWUgVmFyaWFibGVuZWluc3RlbGx1bmcgaW4gZGllIFN0YW5kYXJkYXVzZ2FiZSBhdXMsIHN0YXR0IHNpZSB6dSBkZXIgIgorIlN1YnN0aXR1dGlvbnN2YXJpYWJsZW5kYXRlaSAoc3RhbmRhcmRtw6TDn2lnIChCPGRlYmlhbi9zdWJzdHZhcnM+KSAiCisiaGluenV6dWbDvGdlbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNobGliZGVwcy4xOjE1NgorIywgbm8td3JhcAorbXNnaWQgIkI8LXQ+STx0eXBlPiIKK21zZ3N0ciAiQjwtdD5JPFR5cD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTYzCittc2dpZCAiIgorIlByZWZlciBzaGFyZWQgbGlicmFyeSBkZXBlbmRlbmN5IGluZm9ybWF0aW9uIHRhZ2dlZCBmb3IgdGhlIGdpdmVuIHBhY2thZ2UgIgorInR5cGUuIElmIG5vIHRhZ2dlZCBpbmZvcm1hdGlvbiBpcyBhdmFpbGFibGUsIGZhbGxzIGJhY2sgdG8gdW50YWdnZWQgIgorImluZm9ybWF0aW9uLiBUaGUgZGVmYXVsdCBwYWNrYWdlIHR5cGUgaXMgXCJkZWJcIi4gU2hhcmVkIGxpYnJhcnkgZGVwZW5kZW5jeSAiCisiaW5mb3JtYXRpb24gaXMgdGFnZ2VkIGZvciBhIGdpdmVuIHR5cGUgYnkgcHJlZml4aW5nIGl0IHdpdGggdGhlIG5hbWUgb2YgdGhlICIKKyJ0eXBlLCBhIGNvbG9uLCBhbmQgd2hpdGVzcGFjZS4iCittc2dzdHIgIiIKKyJCZXZvcnp1Z2UgQWJow6RuZ2lna2VpdHNpbmZvcm1hdGlvbmVuIGbDvHIgTGF1ZnplaXRiaWJsaW90aGVrZW4sIGRpZSBmw7xyIGVpbiAiCisidm9yZ2VnZWJlbmVzIFBha2V0IG1hcmtpZXJ0IHNpbmQuIEZhbGxzIGtlaW5lIE1hcmtpZXJ1bmdzaW5mb3JtYXRpb24gIgorInZlcmbDvGdiYXIgaXN0LCBmw6RsbHQgZGllcyBhdWYgdW5tYXJraWVydGUgSW5mb3JtYXRpb25lbiB6dXLDvGNrLiBEZXIgU3RhbmRhcmQtIgorIlBha2V0dHlwIGlzdCDCu2RlYsKrLiBBYmjDpG5naWdrZWl0c2luZm9ybWF0aW9uZW4gZsO8ciBMYXVmemVpdGJpYmxpb3RoZWtlbiAiCisid2VyZGVuIGbDvHIgZWluZW4gdm9yZ2VnZWJlbmVuIFR5cCBtYXJraWVydCwgaW5kZW0gdm9yIHNpZSBkZXIgTmFtZW4gZGVzICIKKyJUeXBzLCBlaW4gRG9wcGVscHVua3QgdW5kIGVpbiBMZWVyemVpY2hlbiBnZXNldHp0IHdpcmQuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zaGxpYmRlcHMuMToxNjMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1MPkk8bG9jYWxzaGxpYnNmaWxlPiIKK21zZ3N0ciAiQjwtTD5JPGxva2Fsc2hsaWJzZGF0ZWk+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjE2OQorbXNnaWQgIiIKKyJSZWFkIG92ZXJyaWRpbmcgc2hhcmVkIGxpYnJhcnkgZGVwZW5kZW5jeSBpbmZvcm1hdGlvbiBmcm9tICIKKyJJPGxvY2Fsc2hsaWJzZmlsZT4gaW5zdGVhZCBvZiBCPGRlYmlhbi9zaGxpYnMubG9jYWw+LiIKK21zZ3N0ciAiIgorIkxlc2UgZGllIEhpbndlZ3NldHotQWJow6RuZ2lna2VpdGVuIHZvbiBMYXVmemVpdGJpYmxpb3RoZWtlbiBhdXMgIgorIkk8bG9rYWxzaGxpYnNkYXRlaT4gc3RhdHQgYXVzIEI8ZGViaWFuL3NobGlicy5sb2NhbD4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjE3NQorbXNnaWQgIiIKKyJXcml0ZSBzdWJzdGl0dXRpb24gdmFyaWFibGVzIGluIEk8c3Vic3R2YXJzZmlsZT47IHRoZSBkZWZhdWx0IGlzIEI8ZGViaWFuLyIKKyJzdWJzdHZhcnM+LiIKK21zZ3N0ciAiIgorIlNjaHJlaWJlIFN1YnN0aXR1dGlvbnN2YXJpYWJsZW4gaW4gSTxTdWJzdHZhcmRhdGVpPjsgc3RhbmRhcmRtw6TDn2lnIEI8ZGViaWFuLyIKKyJzdWJzdHZhcnM+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTc1CisjLCBuby13cmFwCittc2dpZCAiQjwtdj4iCittc2dzdHIgIkI8LXY+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjE4MAorbXNnaWQgIiIKKyJFbmFibGUgdmVyYm9zZSBtb2RlLiBOdW1lcm91cyBtZXNzYWdlcyBhcmUgZGlzcGxheWVkIHRvIGV4cGxhaW4gd2hhdCBCPGRwa2ctIgorInNobGliZGVwcz4gZG9lcy4iCittc2dzdHIgIiIKKyJBa3RpdmllcmUgYXVzZsO8aHJsaWNoZW4gTW9kdXMuIEVpbmUgVmllbHphaGwgdm9uIE5hY2hyaWNodGVuIHdpcmQgYW5nZXplaWd0LCAiCisidW0genUgZXJrbMOkcmVuLCB3YXMgQjxkcGtnLXNobGliZGVwcz4gZHVyY2hmw7xocnQuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zaGxpYmRlcHMuMToxODAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC14Pkk8cGFja2FnZT4iCittc2dzdHIgIkI8LXg+STxQYWtldD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTg3Cittc2dpZCAiIgorIkV4Y2x1ZGUgdGhlIHBhY2thZ2UgZnJvbSB0aGUgZ2VuZXJhdGVkIGRlcGVuZGVuY2llcy4gVGhpcyBpcyB1c2VmdWwgdG8gYXZvaWQgIgorInNlbGYtZGVwZW5kZW5jaWVzIGZvciBwYWNrYWdlcyB3aGljaCBwcm92aWRlIEVMRiBiaW5hcmllcyAoZXhlY3V0YWJsZXMgb3IgIgorImxpYnJhcnkgcGx1Z2lucykgdXNpbmcgYSBsaWJyYXJ5IGNvbnRhaW5lZCBpbiB0aGUgc2FtZSBwYWNrYWdlLiBUaGlzIG9wdGlvbiAiCisiY2FuIGJlIHVzZWQgbXVsdGlwbGUgdGltZXMgdG8gZXhjbHVkZSBzZXZlcmFsIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorIlNjaGxpZcOfZSBkYXMgUGFrZXQgdm9uIGRlbiBnZW5lcmllcnRlbiBBYmjDpG5naWdrZWl0ZW4gYXVzLiBEaWVzIGlzdCBmw7xyICIKKyJQYWtldGUgbsO8dHpsaWNoLCBkaWUgRUxGLVByb2dyYW1tZGF0ZWllbiAoUHJvZ3JhbW1lIG9kZXIgIgorIkJpYmxpb3RoZWtzZXJ3ZWl0ZXJ1bmdlbikgYmVyZWl0c3RlbGxlbiwgZGllIGVpbmUgQmlibGlvdGhlayBpbSBnbGVpY2hlbiAiCisiUGFrZXQgdmVyd2VuZGVuLCB1bSBzZWxic3QtQWJow6RuZ2lna2VpdGVuIHp1IHZlcm1laWRlbi4gRGllc2UgT3B0aW9uIGthbm4gIgorIm1laHJmYWNoIHZlcndlbmRldCB3ZXJkZW4sIHVtIG1laHJlcmUgUGFrZXRlIGF1c3p1c2NobGllw59lbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNobGliZGVwcy4xOjE4NworIywgbm8td3JhcAorbXNnaWQgIkI8LVM+STxwa2didWlsZGRpcj4iCittc2dzdHIgIkI8LVM+STxQYWtldGJhdXZlcnplaWNobmlzPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToxOTQKK21zZ2lkICIiCisiTG9vayBpbnRvIEk8cGtnYnVpbGRkaXI+IGZpcnN0IHdoZW4gdHJ5aW5nIHRvIGZpbmQgYSBsaWJyYXJ5LiBUaGlzIGlzIHVzZWZ1bCAiCisid2hlbiB0aGUgc291cmNlIHBhY2thZ2UgYnVpbGRzIG11bHRpcGxlIGZsYXZvcnMgb2YgdGhlIHNhbWUgbGlicmFyeSBhbmQgeW91ICIKKyJ3YW50IHRvIGVuc3VyZSB0aGF0IHlvdSBnZXQgdGhlIGRlcGVuZGVuY3kgZnJvbSBhIGdpdmVuIGJpbmFyeSBwYWNrYWdlLiBZb3UgIgorImNhbiB1c2UgdGhpcyBvcHRpb24gbXVsdGlwbGUgdGltZXM6IGRpcmVjdG9yaWVzIHdpbGwgYmUgdHJpZWQgaW4gdGhlIHNhbWUgIgorIm9yZGVyIGJlZm9yZSBkaXJlY3RvcmllcyBvZiBvdGhlciBiaW5hcnkgcGFja2FnZXMuIgorbXNnc3RyICIiCisiU2NoYXVlIGJlaW0gVmVyc3VjaCwgZWluZSBCaWJsaW90aGVrIHp1IGZpbmRlbiwgenVlcnN0IGluICIKKyJJPFBha2V0YmF1dmVyemVpY2huaXM+LiBEaWVzIGlzdCBuw7x0emxpY2gsIHdlbm4gZGFzIFF1ZWxscGFrZXQgbWVocmVyZSAiCisiU3BpZWxhcnRlbiBkZXIgZ2xlaWNoZW4gQmlibGlvdGhlayBiYXV0IHVuZCBTaWUgc2ljaGVyc3RlbGxlbiB3b2xsZW4sIGRhc3MgIgorIlNpZSBkaWUgQWJow6RuZ2lna2VpdCBhdXMgZWluZW0gYmVzdGltbXRlbiBCaW7DpHJwYWtldCBlcmhhbHRlbi4gU2llIGvDtm5uZW4gIgorImRpZXNlIE9wdGlvbiBtZWhyZmFjaCB2ZXJ3ZW5kZW46IFZlcnplaWNobmlzc2Ugd2VyZGVuIGluIGRlciBnbGVpY2hlbiAiCisiUmVpaGVuZm9sZ2Ugdm9yIFZlcnplaWNobmlzc2VuIGFuZGVyZXIgQmluw6RycGFrZXRlIHByb2JpZXJ0LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTk0CisjLCBuby13cmFwCittc2dpZCAiQjwtLWlnbm9yZS1taXNzaW5nLWluZm8+IgorbXNnc3RyICJCPC0taWdub3JlLW1pc3NpbmctaW5mbz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjAwCittc2dpZCAiIgorIkRvIG5vdCBmYWlsIGlmIGRlcGVuZGVuY3kgaW5mb3JtYXRpb24gY2FuJ3QgYmUgZm91bmQgZm9yIGEgc2hhcmVkIGxpYnJhcnkuICAiCisiVXNhZ2Ugb2YgdGhpcyBvcHRpb24gaXMgZGlzY291cmFnZWQsIGFsbCBsaWJyYXJpZXMgc2hvdWxkIHByb3ZpZGUgZGVwZW5kZW5jeSAiCisiaW5mb3JtYXRpb24gKGVpdGhlciB3aXRoIHNobGlicyBmaWxlcywgb3Igd2l0aCBzeW1ib2xzIGZpbGVzKSAgZXZlbiBpZiB0aGV5ICIKKyJhcmUgbm90IHlldCB1c2VkIGJ5IG90aGVyIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorIkZhbGxzIGtlaW5lIEFiaMOkbmdpZ2tlaXRzaW5mb3JtYXRpb25lbiBmw7xyIGRpZSBMYXVmemVpdGJpYmxpb3RoZWsgZ2VmdW5kZW4gIgorIndlcmRlbiBrYW5uLCBlcmZvbGd0IGtlaW4gRmVobHNjaGxhZy4gVm9uIGRlciBWZXJ3ZW5kdW5nIGRpZXNlciBPcHRpb24gd2lyZCAiCisiYWJnZWFydGVuLCBkYSBhbGxlIEJpYmxpb3RoZWtlbiBBYmjDpG5naWdrZWl0c2luZm9ybWF0aW9uZW4gYmVyZWl0c3RlbGxlbiAiCisic29sbHRlbiAoZW50d2VkZXIgw7xiZXIgc2hsaWJzLURhdGVpZW4gb2RlciDDvGJlciBzeW1ib2xzLURhdGVpZW4pLCBzZWxic3QgIgorImZhbGxzIGRpZXNlIG5vY2ggbmljaHQgdm9uIGFuZGVyZW4gUGFrZXRlbiB2ZXJ3ZW5kZXQgd2VyZGVuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjAwCisjLCBuby13cmFwCittc2dpZCAiQjwtLXdhcm5pbmdzPT5JPHZhbHVlPiIKK21zZ3N0ciAiQjwtLXdhcm5pbmdzPT5JPFdlcnQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjIxMQorbXNnaWQgIiIKKyJJPHZhbHVlPiBpcyBhIGJpdCBmaWVsZCBkZWZpbmluZyB0aGUgc2V0IG9mIHdhcm5pbmdzIHRoYXQgY2FuIGJlIGVtaXR0ZWQgYnkgIgorIkI8ZHBrZy1zaGxpYmRlcHM+LiAgQml0IDAgKHZhbHVlPTEpIGVuYWJsZXMgdGhlIHdhcm5pbmcgXCJzeW1ib2wgSTxzeW0+IHVzZWQgIgorImJ5IEk8YmluYXJ5PiBmb3VuZCBpbiBub25lIG9mIHRoZSBsaWJyYXJpZXNcIiwgYml0IDEgKHZhbHVlPTIpIGVuYWJsZXMgdGhlICIKKyJ3YXJuaW5nIFwiZGVwZW5kZW5jeSBvbiBJPGxpYnJhcnk+IGNvdWxkIGJlIGF2b2lkZWRcIiBhbmQgYml0IDIgKHZhbHVlPTQpICAiCisiZW5hYmxlcyB0aGUgd2FybmluZyBcIkk8YmluYXJ5PiBzaG91bGRuJ3QgYmUgbGlua2VkIHdpdGggSTxsaWJyYXJ5PlwiLiAgVGhlICIKKyJkZWZhdWx0IEk8dmFsdWU+IGlzIDM6IHRoZSBmaXJzdCB0d28gd2FybmluZ3MgYXJlIGFjdGl2ZSBieSBkZWZhdWx0LCB0aGUgIgorImxhc3Qgb25lIGlzIG5vdC4gU2V0IEk8dmFsdWU+IHRvIDcgaWYgeW91IHdhbnQgYWxsIHdhcm5pbmdzIHRvIGJlIGFjdGl2ZS4iCittc2dzdHIgIiIKKyJJPFdlcnQ+IGlzdCBlaW4gQml0ZmVsZCwgZGFzIGRlbiBTYXR6IGFuIFdhcm51bmdlbiBkZWZpbmllcnQsIGRpZSB2b24gQjxkcGtnLSIKKyJzaGxpYmRlcHM+IGF1c2dlZ2ViZW4gd2VyZGVuIGvDtm5uZW4uIEJpdCAwIChXZXJ0PTEpIGFrdGl2aWVydCBkaWUgV2FybnVuZyAiCisiwrtTeW1ib2wgSTxTeW0+LCB2ZXJ3ZW5kZXQgdm9uIEk8UHJvZ3JhbW0+LCBpbiBrZWluZXIgZGVyIEJpYmxpb3RoZWtlbiAiCisiZ2VmdW5kZW4uwqssIEJpdCAxIChXZXJ0PTIpIGFrdGl2aWVydCBkaWUgV2FybnVuZyDCu0FiaMOkbmdpZ2tlaXQgdm9uICIKKyJJPEJpYmxpb3RoZWs+IGvDtm5udGUgdmVybWllZGVuIHdlcmRlbsKrIHVuZCBCaXQgMiAoV2VydD00KSBha3RpdmllcnQgZGllICIKKyJXYXJudW5nIMK7STxQcm9ncmFtbT4gc29sbHRlIG5pY2h0IGdlZ2VuIEk8QmlibGlvdGhlaz4gZ2VsaW5rdCB3ZXJkZW7Cqy4gIgorIlN0YW5kYXJkbcOkw59pZyBpc3QgSTxXZXJ0PiAzOiBkaWUgZXJzdGVuIHp3ZWkgV2FybnVuZ2VuIHNpbmQgc3RhbmRhcmRtw6TDn2lnICIKKyJha3RpdiwgZGllIGxldHp0ZSBuaWNodC4gU2V0enRlbiBTaWUgSTxXZXJ0PiBhdWYgNywgZmFsbHMgU2llIG3DtmNodGVuLCBkYXNzICIKKyJhbGxlIFdhcm51bmdlbiBha3RpdiBzZWluIHNvbGxlbi4iCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLXNobGliZGVwcy4xOjIyMgorIywgbm8td3JhcAorbXNnaWQgIldBUk5JTkdTIgorbXNnc3RyICJXQVJOVU5HRU4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjMwCittc2dpZCAiIgorIlNpbmNlIEI8ZHBrZy1zaGxpYmRlcHM+IGFuYWx5emVzIHRoZSBzZXQgb2Ygc3ltYm9scyB1c2VkIGJ5IGVhY2ggYmluYXJ5IG9mICIKKyJ0aGUgZ2VuZXJhdGVkIHBhY2thZ2UsIGl0IGlzIGFibGUgdG8gZW1pdCB3YXJuaW5ncyBpbiBzZXZlcmFsIGNhc2VzLiBUaGV5ICIKKyJpbmZvcm0geW91IG9mIHRoaW5ncyB0aGF0IGNhbiBiZSBpbXByb3ZlZCBpbiB0aGUgcGFja2FnZS4gSW4gbW9zdCBjYXNlcywgIgorInRob3NlIGltcHJvdmVtZW50cyBjb25jZXJuIHRoZSB1cHN0cmVhbSBzb3VyY2VzIGRpcmVjdGx5LiBCeSBvcmRlciBvZiAiCisiZGVjcmVhc2luZyBpbXBvcnRhbmNlLCBoZXJlIGFyZSB0aGUgdmFyaW91cyB3YXJuaW5ncyB0aGF0IHlvdSBjYW4gZW5jb3VudGVyOiIKK21zZ3N0ciAiIgorIkRhIEI8ZHBrZy1zaGxpYmRlcHM+IGRlbiBTeW1ib2xzYXR6LCBkZXIgdm9uIGplZGVtIFByb2dyYW1tIGRlcyBlcnN0ZWxsdGVuICIKKyJQYWtldHMgdmVyd2VuZGV0IHdpcmQsIGFuYWx5c2llcnQsIGlzdCBlcyBpbiBtZWhyZXJlbiBGw6RsbGVuIGluIGRlciBMYWdlLCAiCisiV2FybnVuZ2VuIGF1c3p1Z2ViZW4uIFNpZSBpbmZvcm1pZXJlbiBTaWUgw7xiZXIgRGluZ2UsIGRpZSBpbSBQYWtldCAiCisidmVyYmVzc2VydCB3ZXJkZW4ga8O2bm5lbi4gTWVpc3RlbnMgYmV0cmVmZmVuIGRpZXNlIFZlcmJlc3NlcnVuZ2VuIGRpcmVrdCBkaWUgIgorIlF1ZWxsZW4gZGVyIE9yaWdpbmFsYXV0b3Jlbi4gSW4gZGVyIFJlaWhlbmZvbGdlIGFibmVobWVuZGVyIFdpY2h0aWdrZWl0ICIKKyJmb2xnZW4gaGllciBkaWUgcmVsZXZhbnRlbiBXYXJudW5nZW4sIGRpZSBhdWZ0YXVjaGVuIGvDtm5udGVuOiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjMwCisjLCBuby13cmFwCittc2dpZCAiQjxzeW1ib2w+STwgc3ltPkI8IHVzZWQgYnkgPkk8YmluYXJ5PkI8IGZvdW5kIGluIG5vbmUgb2YgdGhlIGxpYnJhcmllcy4+IgorbXNnc3RyICJCPFN5bWJvbD4gSTwgU3ltYm9sPkI8LCB2ZXJ3ZW5kZXQgdm9uID5JPFByb2dyYW1tPkI8LCBpbiBrZWluZXIgZGVyIEJpYmxpb3RoZWtlbiBnZWZ1bmRlbi4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjIzNgorbXNnaWQgIiIKKyJUaGUgaW5kaWNhdGVkIHN5bWJvbCBoYXMgbm90IGJlZW4gZm91bmQgaW4gdGhlIGxpYnJhcmllcyBsaW5rZWQgd2l0aCB0aGUgIgorImJpbmFyeS4gVGhlIEk8YmluYXJ5PiBpcyBtb3N0IGxpa2VseSBhIGxpYnJhcnkgYW5kIGl0IG5lZWRzIHRvIGJlIGxpbmtlZCAiCisid2l0aCBhbiBhZGRpdGlvbmFsIGxpYnJhcnkgZHVyaW5nIHRoZSBidWlsZCBwcm9jZXNzIChvcHRpb24gQjwtbD5JPGxpYnJhcnk+ICIKKyJvZiB0aGUgbGlua2VyKS4iCittc2dzdHIgIiIKKyJEYXMgYW5nZWdlYmVuZSBTeW1ib2wgd3VyZGUgbmljaHQgaW4gZGVuIEJpYmxpb3RoZWtlbiBnZWZ1bmRlbiwgZ2VnZW4gZGllICIKKyJkYXMgUHJvZ3JhbW0gZ2VsaW5rdCB3dXJkZS4gSTxQcm9ncmFtbT4gaXN0IGjDtmNoc3R3YWhyc2NoZWlubGljaCBlaW5lICIKKyJCaWJsaW90aGVrIHVuZCBtdXNzIG1pdCB6dXPDpHR6bGljaGVuIEJpYmxpb3RoZWtlbiB3w6RocmVuZCBkZXMgQmF1LVByb3plc3NlcyAiCisiZ2VsaW5rdCB3ZXJkZW4gKE9wdGlvbiBCPC1sPkk8QmlibGlvdGhlaz4gZGVzIExpbmtlcnMpLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjM2CisjLCBuby13cmFwCittc2dpZCAiSTxiaW5hcnk+QjwgY29udGFpbnMgYW4gdW5yZXNvbHZhYmxlIHJlZmVyZW5jZSB0byBzeW1ib2wgPkk8c3ltPkI8OiBpdCdzIHByb2JhYmx5IGEgcGx1Z2luPiIKK21zZ3N0ciAiSTxQcm9ncmFtbT5CPCBlbnRow6RsdCBlaW5lIG5pY2h0LWF1ZmzDtnNiYXJlIFJlZmVyZW56IGF1ZiBTeW1ib2wgPkk8U3ltPkI8OiB3YWhyc2NoZWlubGljaCBlaW5lIEVyd2VpdGVydW5nPi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjQ5Cittc2dpZCAiIgorIlRoZSBpbmRpY2F0ZWQgc3ltYm9sIGhhcyBub3QgYmVlbiBmb3VuZCBpbiB0aGUgbGlicmFyaWVzIGxpbmtlZCB3aXRoIHRoZSAiCisiYmluYXJ5LiBUaGUgSTxiaW5hcnk+IGlzIG1vc3QgbGlrZWx5IGEgcGx1Z2luIGFuZCB0aGUgc3ltYm9sIGlzIHByb2JhYmx5ICIKKyJwcm92aWRlZCBieSB0aGUgcHJvZ3JhbSB0aGF0IGxvYWRzIHRoaXMgcGx1Z2luLiBJbiB0aGVvcnkgYSBwbHVnaW4gZG9lc24ndCAiCisiaGF2ZSBhbnkgU09OQU1FIGJ1dCB0aGlzIGJpbmFyeSBkb2VzIGhhdmUgb25lIGFuZCBhcyBzdWNoIGl0IGNvdWxkIG5vdCBiZSAiCisiY2xlYXJseSBpZGVudGlmaWVkIGFzIHN1Y2guIEhvd2V2ZXIgdGhlIGZhY3QgdGhhdCB0aGUgYmluYXJ5IGlzIHN0b3JlZCBpbiBhICIKKyJub24tcHVibGljIGRpcmVjdG9yeSBpcyBhIHN0cm9uZyBpbmRpY2F0aW9uIHRoYXQncyBpdCdzIG5vdCBhIG5vcm1hbCBzaGFyZWQgIgorImxpYnJhcnkuIElmIHRoZSBiaW5hcnkgaXMgcmVhbGx5IGEgcGx1Z2luLCB0aGVuIGRpc3JlZ2FyZCB0aGlzIHdhcm5pbmcuIEJ1dCAiCisidGhlcmUncyBhbHdheXMgdGhlIHBvc3NpYmlsaXR5IHRoYXQgaXQncyBhIHJlYWwgbGlicmFyeSBhbmQgdGhhdCBwcm9ncmFtcyAiCisibGlua2luZyB0byBpdCBhcmUgdXNpbmcgYW4gUlBBVEggc28gdGhhdCB0aGUgZHluYW1pYyBsb2FkZXIgZmluZHMgaXQuIEluICIKKyJ0aGF0IGNhc2UsIHRoZSBsaWJyYXJ5IGlzIGJyb2tlbiBhbmQgbmVlZHMgdG8gYmUgZml4ZWQuIgorbXNnc3RyICIiCisiRGFzIGFuZ2VnZWJlbmUgU3ltYm9sIHd1cmRlIG5pY2h0IGluIGRlbiBCaWJsaW90aGVrZW4gZ2VmdW5kZW4sIGRpZSBtaXQgIgorImRpZXNlbSBQcm9ncmFtbSB2ZXJsaW5rdCBzaW5kLiBEYXMgSTxQcm9nYW1tPiBpc3QgaMO2Y2hzdHdhaHJzY2hlaW5saWNoIGVpbmUgIgorIkVyd2VpdGVydW5nIHVuZCBkYXMgU3ltYm9sIHdpcmQgdm9uIGRlbSBQcm9ncmFtbSBiZXJlaXRnZXN0ZWxsdCwgZGFzIGRpZXNlICIKKyJFcndlaXRlcnVuZyBsw6RkdC4gVGhlb3JldGlzY2ggdmVyZsO8Z3QgZWluZSBFcndlaXRlcnVuZyBuaWNodCDDvGJlciBlaW5lbiAiCisiU09OQU1FbiwgYWxsZXJkaW5ncyBpc3QgZGllcyBiZWkgZGllc2VtIFByb2dyYW1tIGRlciBGYWxsIHVuZCBkYWhlciBrb25udGUgIgorImVzIG5pY2h0IGVpbmRldXRpZyBhbHMgRXJ3ZWl0ZXJ1bmcgZXJrYW5udCB3ZXJkZW4uIERpZSBUYXRzYWNoZSwgZGFzcyBkaWVzZXMgIgorIlByb2dyYW1tIGluIGVpbmVtIG5pY2h0LcO2ZmZlbnRsaWNoZW4gVmVyemVpY2huaXMgZ2VzcGVpY2hlcnQgd2lyZCBpc3QgIgorImFsbGVyZGluZ3MgZWluIHN0YXJrZXMgQW56ZWljaGVuIGRhZsO8ciwgZGFzcyBlcyBrZWluZSBub3JtYWxlIGdlbWVpbnNhbSAiCisiYmVudXR6dGUgQmlibGlvdGhlayBpc3QuIEZhbGxzIGRpZXNlcyBQcm9ncmFtbSB0YXRzw6RjaGxpY2ggZWluZSBFcndlaXRlcnVuZyAiCisiaXN0LCBpZ25vcmllcmVuIFNpZSBkaWUgV2FybnVuZy4gQWxsZXJkaW5ncyBiZXN0ZWh0IGltbWVyIGRpZSBNw7ZnbGljaGtlaXQsICIKKyJkYXNzIGVzIGVpbmUgZWNodGUgQmlibGlvdGhlayBpc3QgdW5kIGRhc3MgUHJvZ3JhbW1lLCBkaWUgZGFtaXQgdmVybGlua2VuLCAiCisiZWluZW4gUlBBVEggdmVyd2VuZGVuLCBzbyBkYXNzIGRlciBkeW5hbWlzY2hlIExhZGVyIHNpZSBmaW5kZXQuIEluIGRpZXNlbSAiCisiRmFsbCBpc3QgZGllIEJpYmxpb3RoZWsgYmVzY2jDpGRpZ3QgdW5kIG11c3MgcmVwYXJpZXJ0IHdlcmRlbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNobGliZGVwcy4xOjI0OQorIywgbm8td3JhcAorbXNnaWQgIkI8ZGVwZW5kZW5jeSBvbiA+STxsaWJyYXJ5PkI8IGNvdWxkIGJlIGF2b2lkZWQgaWYgPkk8YmluYXJpZXM+Qjwgd2VyZSBub3QgdXNlbGVzc2x5IGxpbmtlZCBhZ2FpbnN0IGl0ICh0aGV5IHVzZSBub25lIG9mIGl0cyBzeW1ib2xzKS4+IgorbXNnc3RyICJCPEFiaMOkbmdpZ2tlaXQgdm9uID5JPEJpYmxpb3RoZWs+Qjwga8O2bm50ZSB2ZXJtaWVkZW4gd2VyZGVuLCBmYWxscyA+STxQcm9ncmFtbT5CPCBuaWNodCB1bm7DtnRpZ2Vyd2Vpc2UgZGFnZWdlbiBnZWxpbmt0IHfDpHJlIChlcyB2ZXJ3ZW5kZXQga2VpbmVzIHNlaW5lciBTeW1ib2xlLj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjU1Cittc2dpZCAiIgorIk5vbmUgb2YgdGhlIEk8YmluYXJpZXM+IHRoYXQgYXJlIGxpbmtlZCB3aXRoIEk8bGlicmFyeT4gdXNlIGFueSBvZiB0aGUgIgorInN5bWJvbHMgcHJvdmlkZWQgYnkgdGhlIGxpYnJhcnkuIEJ5IGZpeGluZyBhbGwgdGhlIGJpbmFyaWVzLCB5b3Ugd291bGQgYXZvaWQgIgorInRoZSBkZXBlbmRlbmN5IGFzc29jaWF0ZWQgdG8gdGhpcyBsaWJyYXJ5ICh1bmxlc3MgdGhlIHNhbWUgZGVwZW5kZW5jeSBpcyAiCisiYWxzbyBnZW5lcmF0ZWQgYnkgYW5vdGhlciBsaWJyYXJ5IHRoYXQgaXMgcmVhbGx5IHVzZWQpLiIKK21zZ3N0ciAiIgorIktlaW5lcyBkZXIgSTxQcm9ncmFtbWU+IGRpZSBnZWdlbiBJPEJpYmxpb3RoZWs+IGdlbGlua3Qgc2luZCB2ZXJ3ZW5kZXQgZWluZXMgIgorImRlciB2b24gZGVyIEJpYmxpb3RoZWsgYmVyZWl0Z2VzdGVsbHRlbiBTeW1ib2xlLiBJbmRlbSBTaWUgZGllIFByb2dyYW1tZSAiCisia29ycmlnaWVydGVuLCB2ZXJtaWVkZW4gU2llIGRpZSBBYmjDpG5naWdrZWl0LCBkaWUgbWl0IGRpZXNlciBCaWJsaW90aGVrICIKKyJ2ZXJidW5kZW4gaXN0IChlcyBzZWkgZGVubiwgZGllIEFiaMOkbmdpZ2tlaXQgd2lyZCBhdWNoIGR1cmNoIGVpbmUgYW5kZXJlICIKKyJCaWJsaW90aGVrIGdlbmVyaWVydCwgZGllIGRpZXNlIEJpYmxpb3RoZWsgd2lya2xpY2ggdmVyd2VuZGV0KS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNobGliZGVwcy4xOjI1NQorIywgbm8td3JhcAorbXNnaWQgIkk8YmluYXJ5PkI8IHNob3VsZG4ndCBiZSBsaW5rZWQgd2l0aCA+STxsaWJyYXJ5PkI8IChpdCB1c2VzIG5vbmUgb2YgaXRzIHN5bWJvbHMpLj4iCittc2dzdHIgIkk8UHJvZ3JhbW0+Qjwgc29sbHRlIG5pY2h0IGdlZ2VuID5JPEJpYmxpb3RoZWs+QjwgZ2VsaW5rdCB3ZXJkZW4gKGVzIHZlcndlbmRldCBrZWluZXMgaWhyZXIgU3ltYm9sZSkuPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToyNjIKK21zZ2lkICIiCisiVGhlIEk8YmluYXJ5PiBpcyBsaW5rZWQgdG8gYSBsaWJyYXJ5IHRoYXQgaXQgZG9lc24ndCBuZWVkLiBJdCdzIG5vdCBhICIKKyJwcm9ibGVtIGJ1dCBzb21lIHNtYWxsIHBlcmZvcm1hbmNlIGltcHJvdmVtZW50cyBpbiBiaW5hcnkgbG9hZCB0aW1lIGNhbiBiZSAiCisib2J0YWluZWQgYnkgbm90IGxpbmtpbmcgdGhpcyBsaWJyYXJ5IHRvIHRoaXMgYmluYXJ5LiBUaGlzIHdhcm5pbmcgY2hlY2tzIHRoZSAiCisic2FtZSBpbmZvcm1hdGlvbiB0aGFuIHRoZSBwcmV2aW91cyBvbmUgYnV0IGRvZXMgaXQgZm9yIGVhY2ggYmluYXJ5IGluc3RlYWQgIgorIm9mIGRvaW5nIHRoZSBjaGVjayBnbG9iYWxseSBvbiBhbGwgYmluYXJpZXMgYW5hbHl6ZWQuIgorbXNnc3RyICIiCisiRGFzIEk8UHJvZ3JhbW0+IGlzdCBnZWdlbiBlaW5lIEJpYmxpb3RoZWsgZ2VsaW5rdCwgZGllIGVzIG5pY2h0IGJlbsO2dGlndC4gIgorIkRhcyBpc3Qga2VpbiBQcm9ibGVtLCBhYmVyIGJlaSBkZXIgTGFkZXplaXQga8O2bm5lbiBrbGVpbmUgIgorIkxlaXN0dW5nc3ZlcmJlc3NlcnVuZ2VuIGVycmVpY2h0IHdlcmRlbiwgaW5kZW0gZGllc2UgQmlibGlvdGhlayBuaWNodCBpbiBkYXMgIgorIlByb2dyYW1tIGdlbGlua3Qgd2lyZC4gRGllc2UgV2FybnVuZyDDvGJlcnByw7xmdCBkaWUgZ2xlaWNoZW4gSW5mb3JtYXRpb25lbiAiCisid2llIGRpZSB2b3JoZXJnZWhlbmRlLCBhbGxlcmRpbmdzIGbDvHIgamVkZXMgUHJvZ3JhbW0gc3RhdHQgZ2xvYmFsIGbDvHIgYWxsZSAiCisiw7xiZXJwcsO8ZnRlbiBQcm9ncmFtbWUuIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1zaGxpYmRlcHMuMToyNjIKKyMsIG5vLXdyYXAKK21zZ2lkICJFUlJPUlMiCittc2dzdHIgIkZFSExFUiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToyNjkKK21zZ2lkICIiCisiQjxkcGtnLXNobGliZGVwcz4gd2lsbCBmYWlsIGlmIGl0IGNhbid0IGZpbmQgYSBwdWJsaWMgbGlicmFyeSB1c2VkIGJ5IGEgIgorImJpbmFyeSBvciBpZiB0aGlzIGxpYnJhcnkgaGFzIG5vIGFzc29jaWF0ZWQgZGVwZW5kZW5jeSBpbmZvcm1hdGlvbiAoZWl0aGVyICIKKyJzaGxpYnMgZmlsZSBvciBzeW1ib2xzIGZpbGUpLiBBIHB1YmxpYyBsaWJyYXJ5IGhhcyBhIFNPTkFNRSBhbmQgaXMgdmVyc2lvbmVkICIKKyIobGlic29tZXRoaW5nLnNvLkk8WD4pLiBBIHByaXZhdGUgbGlicmFyeSAobGlrZSBhIHBsdWdpbikgc2hvdWxkIG5vdCBoYXZlIGEgIgorIlNPTkFNRSBhbmQgZG9lc24ndCBuZWVkIHRvIGJlIHZlcnNpb25lZC4iCittc2dzdHIgIiIKKyJCPGRwa2ctc2hsaWJkZXBzPiB3aXJkIGZlaGxzY2hsYWdlbiwgZmFsbHMgZXMgZWluZSB2b20gUHJvZ3JhbW0gdmVyd2VuZGV0ZSAiCisiw7ZmZmVudGxpY2hlIEJpYmxpb3RoZWsgbmljaHQgZmluZGVuIGthbm4gb2RlciBmYWxscyBkaWVzZSBCaWJsaW90aGVrIGtlaW5lICIKKyJ6dWdlb3JkbmV0ZW4gQWJow6RuZ2lna2VpdHNpbmZvcm1hdGlvbmVuIGhhdCAoZW50d2VkZXIgZWluZSBTaGxpYnMtIG9kZXIgIgorIlN5bWJvbHMtRGF0ZWkpLiBFaW5lIMO2ZmZlbnRsaWNoZSBCaWJsaW90aGVrIGhhdCBlaW5lbiBTT05BTUUgdW5kIGlzdCAiCisidmVyc2lvbmllcnQgKGxpYmlyZ2VuZHdhcy5zby5JPFg+KS4gRWluZSBwcml2YXRlIEJpYmxpb3RoZWsgKHdpZSB6LkIuIGVpbiAiCisiRXJ3ZWl0ZXJ1bmcpIHNvbGx0ZSBrZWluZW4gU09OQU1FIGhhYmVuIHVuZCBicmF1Y2h0IG5pY2h0IHZlcnNpb25pZXJ0IHp1ICIKKyJzZWluLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjY5CisjLCBuby13cmFwCittc2dpZCAiQjxjb3VsZG4ndCBmaW5kIGxpYnJhcnkgPkk8bGlicmFyeS1zb25hbWU+QjwgbmVlZGVkIGJ5ID5JPGJpbmFyeT5CPCAoaXRzIFJQQVRIIGlzICc+STxycGF0aD5CPCcpPiIKK21zZ3N0ciAiQjxrb25udGUgQmlibGlvdGhlayA+STxTT05BTUUtZGVyLUJpYmxpb3RoZWs+QjwgYmVuw7Z0aWd0IHZvbiA+STxQcm9ncmFtbT5CPCBuaWNodCBmaW5kZW4gKGlociBSUEFUSCBpc3Qgwrs+STxycGF0aD5CPMKrKS4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjI4NQorbXNnaWQgIiIKKyJUaGUgSTxiaW5hcnk+IHVzZXMgYSBsaWJyYXJ5IGNhbGxlZCBJPGxpYnJhcnktc29uYW1lPiBidXQgQjxkcGtnLXNobGliZGVwcz4gIgorImhhcyBiZWVuIHVuYWJsZSB0byBmaW5kIHRoZSBsaWJyYXJ5LiAgQjxkcGtnLXNobGliZGVwcz4gY3JlYXRlcyBhIGxpc3Qgb2YgIgorImRpcmVjdG9yaWVzIHRvIGNoZWNrIGFzIGZvbGxvd2luZzogZGlyZWN0b3JpZXMgbGlzdGVkIGluIHRoZSBSUEFUSCBvZiB0aGUgIgorImJpbmFyeSwgZGlyZWN0b3JpZXMgbGlzdGVkIGluIC9ldGMvbGQuc28uY29uZiwgZGlyZWN0b3JpZXMgbGlzdGVkIGluIHRoZSAiCisiTERfTElCUkFSWV9QQVRIIGVudmlyb25tZW50IHZhcmlhYmxlLCBhbmQgc3RhbmRhcmQgcHVibGljIGRpcmVjdG9yaWVzICgvIgorImxpYiwgL3Vzci9saWIsIC9saWIzMiwgL3Vzci9saWIzMiwgL2xpYjY0LCAvdXNyL2xpYjY0KS4gVGhlbiBpdCBjaGVja3MgdGhvc2UgIgorImRpcmVjdG9yaWVzIGluIHRoZSBwYWNrYWdlJ3MgYnVpbGQgdHJlZSBvZiB0aGUgYmluYXJ5IGJlaW5nIGFuYWx5emVkLCBpbiB0aGUgIgorInBhY2thZ2VzJyBidWlsZCB0cmVlcyBpbmRpY2F0ZWQgd2l0aCB0aGUgLVMgY29tbWFuZC1saW5lIG9wdGlvbiwgaW4gb3RoZXIgIgorInBhY2thZ2VzJyBidWlsZCB0cmVlcyB0aGF0IGNvbnRhaW5zIGEgREVCSUFOL3NobGlicyBvciBERUJJQU4vc3ltYm9scyBmaWxlICIKKyJhbmQgZmluYWxseSBpbiB0aGUgcm9vdCBkaXJlY3RvcnkuICBJZiB0aGUgbGlicmFyeSBpcyBub3QgZm91bmQgaW4gYW55IG9mICIKKyJ0aG9zZSBkaXJlY3RvcmllcywgdGhlbiB5b3UgZ2V0IHRoaXMgZXJyb3IuIgorbXNnc3RyICIiCisiRGFzIEk8UHJvZ3JhbW0+IHZlcndlbmRldCBlaW5lIEJpYmxpb3RoZWsgbWl0IE5hbWVuIEk8U09OQU1FLWRlci0iCisiQmlibGlvdGhlaz4sIGFiZXIgQjxkcGtnLXNobGliZGVwcz4ga29ubnRlIGRpZXNlIEJpYmxpb3RoZWsgbmljaHQgZmluZGVuLiAiCisiQjxkcGtnLXNobGliZGVwcz4gZXJzdGVsbHQgZm9sZ2VuZGVybWHDn2VuIGVpbmUgTGlzdGUgZGVyIHp1IHByw7xmZW5kZW4gIgorIlZlcnplaWNobmlzc2U6IGltIFJQQVRIIGRlcyBQcm9ncmFtbXMgYXVmZ2Vmw7xocnRlIFZlcnplaWNobmlzc2UsIGluIC9ldGMvbGQuIgorInNvLmNvbmYgYXVmZ2Vmw7xocnRlIFZlcnplaWNobmlzc2UsIGluIGRlciBVbWdlYnVuZ3N2YXJpYWJsZSBMRF9MSUJSQVJZX1BBVEggIgorImF1ZmdlZsO8aHJ0ZSBWZXJ6ZWljaG5pc3NlIHVuZCBzdGFuZGFyZG3DpMOfaWdlIMO2ZmZlbnRsaWNoZSBWZXJ6ZWljaG5pc3NlICgvIgorImxpYiwgL3Vzci9saWIsIC9saWIzMiwgL3Vzci9saWIzMiwgL2xpYjY0LCAvdXNyL2xpYjY0KS4gRGFubiBwcsO8ZnQgZXMgZGllc2UgIgorIlZlcnplaWNobmlzc2UgaW0gQmF1LUJhdW0gZGVzIGFuYWx5c2llcnRlbiBQYWtldHMsIGluIGRlbiBtaXQgZGVyICIKKyJLb21tYW5kb3plaWxlbm9wdGlvbiAtUyBhbmdlZ2ViZW5lbiBQYWtldGJhdXZlcnplaWNobmlzc2UsIGluIGFuZGVyZW4gIgorIlBha2V0YmF1LULDpHVtZW4sIGRpZSBlaW5lIERFQklBTi9zaGxpYnMtIG9kZXIgREVCSUFOL3N5bWJvbHMtRGF0ZWkgZW50aGFsdGVuICIKKyJ1bmQgc2NobGllw59saWNoIGltIFd1cnplbHZlcnplaWNobmlzLiBGYWxscyBkaWUgQmlibGlvdGhlayBuaWNodCBpbiBlaW5lbSAiCisiZGllc2VyIFZlcnplaWNobmlzc2UgZ2VmdW5kZW4gd2lyZCwgZXJoYWx0ZW4gU2llIGRpZXNlbiBGZWhsZXIuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjI5MQorbXNnaWQgIiIKKyJJZiB0aGUgbGlicmFyeSBub3QgZm91bmQgaXMgaW4gYSBwcml2YXRlIGRpcmVjdG9yeSBvZiB0aGUgc2FtZSBwYWNrYWdlLCB0aGVuICIKKyJ5b3Ugd2FudCB0byBhZGQgdGhlIGRpcmVjdG9yeSB0byBMRF9MSUJSQVJZX1BBVEguIElmIGl0J3MgaW4gYW5vdGhlciBiaW5hcnkgIgorInBhY2thZ2UgYmVpbmcgYnVpbHQsIHlvdSB3YW50IHRvIG1ha2Ugc3VyZSB0aGF0IHRoZSBzaGxpYnMvc3ltYm9scyBmaWxlIG9mICIKKyJ0aGlzIHBhY2thZ2UgaXMgYWxyZWFkeSBjcmVhdGVkIGFuZCB0aGF0IExEX0xJQlJBUllfUEFUSCBjb250YWlucyB0aGUgIgorImFwcHJvcHJpYXRlIGRpcmVjdG9yeSBpZiBpdCBhbHNvIGlzIGluIGEgcHJpdmF0ZSBkaXJlY3RvcnkuIgorbXNnc3RyICIiCisiRmFsbHMgc2ljaCBkaWUgbmljaHQgZ2VmdW5kZW5lIEJpYmxpb3RoZWsgaW4gZWluZW0gcHJpdmF0ZW4gVmVyemVpY2huaXMgZGVzICIKKyJnbGVpY2hlbiBQYWtldHMgYmVmaW5kZXQsIG3DvHNzZW4gU2llIGRhcyBWZXJ6ZWljaG5pcyB6dSBMRF9MSUJSQVJZX1BBVEggIgorImhpbnp1ZsO8Z2VuLiBGYWxscyBzaWUgc2ljaCBpbiBlaW5lbSBhbmRlcmVuIGdlcmFkZSB6dSBiYXVlbmRlbiBQYWtldCAiCisiYmVmaW5kZXQsIG3DvHNzZW4gU2llIHNpY2hlcnN0ZWxsZW4sIGRhc3MgZGllIMK7c2hsaWJzL3N5bWJvbHPCqy1EYXRlaSBkaWVzZXMgIgorIlBha2V0cyBiZXJlaXRzIGFuZ2VsZWd0IGlzdCB1bmQgZGFzcyBMRF9MSUJSQVJZX1BBVEggZGFzIGdlZWlnbmV0ZSAiCisiVmVyemVpY2huaXMgZW50aMOkbHQsIGZhbGxzIGRpZSBCaWJsaW90aGVrIHp1ZGVtIGluIGVpbmVtIHByaXZhdGVuICIKKyJWZXJ6ZWljaG5pcyBsaWVndC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNobGliZGVwcy4xOjI5MQorIywgbm8td3JhcAorbXNnaWQgIkI8bm8gZGVwZW5kZW5jeSBpbmZvcm1hdGlvbiBmb3VuZCBmb3IgPkk8bGlicmFyeS1maWxlPkI8ICh1c2VkIGJ5ID5JPGJpbmFyeT5CPCkuPiIKK21zZ3N0ciAiQjxLZWluZSBBYmjDpG5naWdrZWl0c2luZm9ybWF0aW9uZW4gZsO8ciA+STxCaWJsaW90aGVrc2RhdGVpPkI8ICh2ZXJ3ZW5kZXQgdm9uID5JPFByb2dyYW1tPkI8KSBnZWZ1bmRlbi4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjMwNAorbXNnaWQgIiIKKyJUaGUgbGlicmFyeSBuZWVkZWQgYnkgSTxiaW5hcnk+IGhhcyBiZWVuIGZvdW5kIGJ5IEI8ZHBrZy1zaGxpYmRlcHM+IGluICIKKyJJPGxpYnJhcnktZmlsZT4gYnV0IEI8ZHBrZy1zaGxpYmRlcHM+IGhhcyBiZWVuIHVuYWJsZSB0byBmaW5kIGFueSBkZXBlbmRlbmN5ICIKKyJpbmZvcm1hdGlvbiBmb3IgdGhhdCBsaWJyYXJ5LiBUbyBmaW5kIG91dCB0aGUgZGVwZW5kZW5jeSwgaXQgaGFzIHRyaWVkIHRvICIKKyJtYXAgdGhlIGxpYnJhcnkgdG8gYSBEZWJpYW4gcGFja2FnZSB3aXRoIHRoZSBoZWxwIG9mIEI8ZHBrZyAtUyA+STxsaWJyYXJ5LSIKKyJmaWxlPi4gIFRoZW4gaXQgY2hlY2tlZCB0aGUgY29ycmVzcG9uZGluZyBzaGxpYnMgYW5kIHN5bWJvbHMgZmlsZXMgaW4gL3Zhci8iCisibGliL2Rwa2cvaW5mby8sIGFuZCBpbiB0aGUgdmFyaW91cyBwYWNrYWdlJ3MgYnVpbGQgdHJlZXMgKGRlYmlhbi8qL0RFQklBTi8pLiIKK21zZ3N0ciAiIgorIkRpZSB2b24gSTxQcm9ncmFtbT4gYmVuw7Z0aWd0ZSBCaWJsaW90aGVrIHd1cmRlIHZvbiBCPGRwa2ctc2hsaWJkZXBzPiBpbiAiCisiSTxCaWJsaW90aGVrc2RhdGVpPiBnZWZ1bmRlbiwgYWxsZXJkaW5ncyBrb25udGUgQjxkcGtnLXNobGliZGVwcz4ga2VpbmUgIgorIkFiaMOkbmdpZ2tlaXRzaW5mb3JtYXRpb25lbiBmw7xyIGRpZXNlIEJpYmxpb3RoZWsgZXJtaXR0ZWxuLiBVbSBkaWUgIgorIkFiaMOkbmdpZ2tlaXQgaGVyYXVzenVmaW5kZW4sIGhhdCBlcyB2ZXJzdWNodCwgZGllIEJpYmxpb3RoZWsgbWl0dGVscyBCPGRwa2cgLSIKKyJTID5JPEJpYmxpb3RoZWtzZGF0ZWk+IGF1ZiBlaW4gRGViaWFuLVBha2V0IGFienViaWxkZW4uIERhbm4gw7xiZXJwcsO8ZnRlIGVzICIKKyJkaWUgenVnZWjDtnJpZ2VuIFNobGlicy0gdW5kIFN5bWJvbGRhdGVpZW4gaW4gL3Zhci9saWIvZHBrZy9pbmZvLyB1bmQgZGllICIKKyJ2ZXJzY2hpZWRlbmVuIFBha2V0YmF1YsOkdW1lICgoZGViaWFuLyovREVCSUFOLykuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjMxOAorbXNnaWQgIiIKKyJUaGlzIGZhaWx1cmUgY2FuIGJlIGNhdXNlZCBieSBhIGJhZCBvciBtaXNzaW5nIHNobGlicyBvciBzeW1ib2xzIGZpbGUgaW4gdGhlICIKKyJwYWNrYWdlIG9mIHRoZSBsaWJyYXJ5LiBJdCBtaWdodCBhbHNvIGhhcHBlbiBpZiB0aGUgbGlicmFyeSBpcyBidWlsdCB3aXRoaW4gIgorInRoZSBzYW1lIHNvdXJjZSBwYWNrYWdlIGFuZCBpZiB0aGUgc2hsaWJzIGZpbGVzIGhhcyBub3QgeWV0IGJlZW4gY3JlYXRlZCAoaW4gIgorIndoaWNoIGNhc2UgeW91IG11c3QgZml4IGRlYmlhbi9ydWxlcyB0byBjcmVhdGUgdGhlIHNobGlicyBiZWZvcmUgY2FsbGluZyAiCisiQjxkcGtnLXNobGliZGVwcz4pLiBCYWQgUlBBVEggY2FuIGFsc28gbGVhZCB0byB0aGUgbGlicmFyeSBiZWluZyBmb3VuZCB1bmRlciAiCisiYSBub24tY2Fub25pY2FsIG5hbWUgKGV4YW1wbGU6IC91c3IvbGliL29wZW5vZmZpY2Uub3JnLy4uL2xpYi9saWJzc2wuIgorInNvLjAuOS44IGluc3RlYWQgb2YgL3Vzci9saWIvbGlic3NsLnNvLjAuOS44KSB0aGF0J3Mgbm90IGFzc29jaWF0ZWQgdG8gYW55ICIKKyJwYWNrYWdlLCBCPGRwa2ctc2hsaWJkZXBzPiB0cmllcyB0byB3b3JrIGFyb3VuZCB0aGlzIGJ5IHRyeWluZyB0byBmYWxsYmFjayAiCisib24gYSBjYW5vbmljYWwgbmFtZSAodXNpbmcgQjxyZWFscGF0aD4oMykpICBidXQgaXQgbWlnaHQgbm90IGFsd2F5cyB3b3JrLiAiCisiSXQncyBhbHdheXMgYmVzdCB0byBjbGVhbiB1cCB0aGUgUlBBVEggb2YgdGhlIGJpbmFyeSB0byBhdm9pZCBwcm9ibGVtcy4iCittc2dzdHIgIiIKKyJEaWVzZXIgRmVobHNjaGxhZyBrYW5uIGR1cmNoIGRlZmVrdGUgb2RlciBmZWhsZW5kZSBTaGxpYnMtIG9kZXIgIgorIlN5bWJvbGRhdGVpZW4gaW0gUGFrZXQgZGVyIEJpYmxpb3RoZWsgYXVzZ2Vsw7ZzdCB3ZXJkZW4uIEVyIGvDtm5udGUgYXVjaCAiCisiYXVmdHJldGVuLCBmYWxscyBkaWUgQmlibGlvdGhlayBpbSBnbGVpY2hlbiBRdWVsbHBha2V0IGdlYmF1dCB3aXJkIHVuZCBkaWUgIgorIlNobGlicy1EYXRlaSBub2NoIG5pY2h0IGFuZ2VsZWd0IHd1cmRlICh3b2JlaSBTaWUgaW4gZGllc2VtIEZhbGwgZGViaWFuLyIKKyJydWxlcyBrb3JyaWdpZXJlbiBtw7xzc2VuLCBkYW1pdCBkaWUgU2hsaWJzLURhdGVpIGVyc3RlbGx0IHdpcmQgYmV2b3IgQjxkcGtnLSIKKyJzaGxpYmRlcHM+IGF1ZmdlcnVmZW4gd2lyZCkuIERlZmVrdGUgUlBBVEgga8O2bm5lbiBhdWNoIGRhenUgZsO8aHJlbiwgZGFzcyBkaWUgIgorIkJpYmxpb3RoZWsgdW50ZXIgbmljaHQta2Fub25pc2NoZW4gTmFtZW4gZ2VmdW5kZW4gd2lyZCAoYmVpc3BpZWxzd2Vpc2UgL3Vzci8iCisibGliL29wZW5vZmZpY2Uub3JnLy4uL2xpYi9saWJzc2wuc28uMC45Ljggc3RhdHQgL3Vzci9saWIvbGlic3NsLnNvLjAuOS44KSwgIgorInNvIGRhc3MgZGFubiBkaWVzZSBrZWluZW0gUGFrZXQgenVnZW9yZG5ldCBpc3Q7IEI8ZHBrZy1zaGxpYmRlcHM+IHZlcnN1Y2h0ICIKKyJkaWVzIHp1IHVtZ2VoZW4sIGluZGVtIGVzIGF1ZiBlaW5lbiBrYW5vbmlzY2hlbiBOYW1lbiAobWl0dGVscyBCPHJlYWxwYXRoPiIKKyIoMykpIHp1csO8Y2tmw6RsbHQsIGFsbGVyZGluZ3Mga8O2bm50ZSBkaWVzIG1hbmNobWFsIG5pY2h0IGZ1bmt0aW9uaWVyZW4uIEVzICIKKyJpc3QgaW1tZXIgYW0gYmVzdGVuLCBkZW4gUlBBVEggenUgYmVyZWluaWdlbiwgdW0gUHJvYmxlbWUgenUgdmVybWVpZGVuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTozMjQKK21zZ2lkICIiCisiQ2FsbGluZyBCPGRwa2ctc2hsaWJkZXBzPiBpbiB2ZXJib3NlIG1vZGUgKC12KSB3aWxsIHByb3ZpZGUgbXVjaCBtb3JlICIKKyJpbmZvcm1hdGlvbiBhYm91dCB3aGVyZSBpdCB0cmllZCB0byBmaW5kIHRoZSBkZXBlbmRlbmN5IGluZm9ybWF0aW9uLiBUaGlzICIKKyJtaWdodCBiZSB1c2VmdWwgaWYgeW91IGRvbid0IHVuZGVyc3RhbmQgd2h5IGl0J3MgZ2l2aW5nIHlvdSB0aGlzIGVycm9yLiIKK21zZ3N0ciAiIgorIlZpZWxlIHdlaXRlcmUgSW5mb3JtYXRpb25lbiBkYXLDvGJlciwgd28gbmFjaCBBYmjDpG5naWdrZWl0c2luZm9ybWF0aW9uZW4gIgorImdlc3VjaHQgd2lyZCwga8O2bm5lbiBkdXJjaCBlaW5lbiBBdWZydWYgdm9uIEI8ZHBrZy1zaGxpYmRlcHM+IGltICIKKyJnZXNjaHfDpHR6aWdlbiBNb2R1cyAoLXYpIGVyaGFsdGVuIHdlcmRlbi4gRGllcyBrYW5uIG7DvHR6bGljaCBzZWluLCBmYWxscyBTaWUgIgorIm5pY2h0IHZlcnN0ZWhlbiwgd2FydW0gZXMgSWhuZW4gZGllc2VuIEZlaGxlciBtZWxkZXQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjMyOAorbXNnaWQgIkI8ZGViLXNobGlicz4oNSksIEI8ZGViLXN5bWJvbHM+KDUpLCBCPGRwa2ctZ2Vuc3ltYm9scz4oMSkuIgorbXNnc3RyICJCPGRlYi1zaGxpYnM+KDUpLCBCPGRlYi1zeW1ib2xzPig1KSwgQjxkcGtnLWdlbnN5bWJvbHM+KDEpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTozMzUKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAwNiBGcmFuayBMaWNodGVuaGVsZCIKK21zZ3N0ciAiQ29weXJpZ2h0IFxcKGNvIDIwMDYgRnJhbmsgTGljaHRlbmhlbGQiCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLXNvdXJjZS4xOjIKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLXNvdXJjZSIKK21zZ3N0ciAiZHBrZy1zb3VyY2UiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NQorbXNnaWQgImRwa2ctc291cmNlIC0gRGViaWFuIHNvdXJjZSBwYWNrYWdlICguZHNjKSBtYW5pcHVsYXRpb24gdG9vbCIKK21zZ3N0ciAiZHBrZy1zb3VyY2UgLSBEZWJpYW4gUXVlbGxwYWtldC0gKC5kc2MpIE1hbmlwdWxhdGlvbnMtV2Vya3pldWdlIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjkKK21zZ2lkICJCPGRwa2ctc291cmNlPiBbSTxvcHRpb24+Li4uXSBJPGNvbW1hbmQ+IgorbXNnc3RyICJCPGRwa2ctc291cmNlPiBbSTxPcHRpb24+Li4uXSBJPEJlZmVobD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MTMKK21zZ2lkICJCPGRwa2ctc291cmNlPiBwYWNrcyBhbmQgdW5wYWNrcyBEZWJpYW4gc291cmNlIGFyY2hpdmVzLiIKK21zZ3N0ciAiQjxkcGtnLXNvdXJjZT4gcGFja3QgdW5kIGVudHBhY2t0IERlYmlhbiBRdWVsbGFyY2hpdmUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjE3Cittc2dpZCAiIgorIk5vbmUgb2YgdGhlc2UgY29tbWFuZHMgYWxsb3cgbXVsdGlwbGUgb3B0aW9ucyB0byBiZSBjb21iaW5lZCBpbnRvIG9uZSwgYW5kICIKKyJ0aGV5IGRvIG5vdCBhbGxvdyB0aGUgdmFsdWUgZm9yIGFuIG9wdGlvbiB0byBiZSBzcGVjaWZpZWQgaW4gYSBzZXBhcmF0ZSAiCisiYXJndW1lbnQuIgorbXNnc3RyICIiCisiS2VpbmVyIGRpZXNlciBCZWZlaGxlIGVybGF1YnQgZXMsIG1laHJlcmUgT3B0aW9uZW4genUgZWluZXIgenUga29tYmluaWVyZW4sICIKKyJ1bmQgc2llIGVybGF1YmVuIGVzIG5pY2h0LCBkZW4gV2VydCBlaW5lciBPcHRpb24gaW4gZWluZW0gc2VwYXJhdGVuIEFyZ3VtZW50ICIKKyJ6dSBzcGVpY2hlcm4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMToxOQorIywgbm8td3JhcAorbXNnaWQgIkI8LXggPkk8ZmlsZW5hbWU+QjwuZHNjID5bSTxvdXRwdXQtZGlyZWN0b3J5Pl0iCittc2dzdHIgIkI8LXggPkk8RGF0ZWluYW1lPkI8LmRzYz4gW0k8QXVzZ2FiZS1WZXJ6ZWljaG5pcz5dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjI5Cittc2dpZCAiIgorIkV4dHJhY3QgYSBzb3VyY2UgcGFja2FnZS4gT25lIG5vbi1vcHRpb24gYXJndW1lbnQgbXVzdCBiZSBzdXBwbGllZCwgdGhlIG5hbWUgIgorIm9mIHRoZSBEZWJpYW4gc291cmNlIGNvbnRyb2wgZmlsZSAoQjwuZHNjPikuICBBbiBvcHRpb25hbCBzZWNvbmQgbm9uLW9wdGlvbiAiCisiYXJndW1lbnQgbWF5IGJlIHN1cHBsaWVkIHRvIHNwZWNpZnkgdGhlIGRpcmVjdG9yeSB0byBleHRyYWN0IHRoZSBzb3VyY2UgIgorInBhY2thZ2UgdG8sIHRoaXMgbXVzdCBub3QgZXhpc3QuIElmIG5vIG91dHB1dCBkaXJlY3RvcnkgaXMgc3BlY2lmaWVkLCB0aGUgIgorInNvdXJjZSBwYWNrYWdlIGlzIGV4dHJhY3RlZCBpbnRvIGEgZGlyZWN0b3J5IG5hbWVkIEk8c291cmNlPi1JPHZlcnNpb24+ICIKKyJ1bmRlciB0aGUgY3VycmVudCB3b3JraW5nIGRpcmVjdG9yeS4iCittc2dzdHIgIiIKKyJFeHRyYWhpZXJlIGVpbiBRdWVsbHBha2V0LiBFaW4gbmljaHQtT3B0aW9ucy1Bcmd1bWVudCBtdXNzIGFuZ2VnZWJlbiB3ZXJkZW4sICIKKyJkZXIgTmFtZSBkZXIgRGViaWFuIFF1ZWxsLVN0ZXVlci1EYXRlaSAoQjwuZHNjPikuIE9wdGlvbmFsIGthbm4gZWluIHp3ZWl0ZXMgIgorIm5pY2h0LU9wdGlvbnMtQXJndW1lbnQgYW5nZWdlYmVuIHdlcmRlbiwgdW0gZGFzIFZlcnplaWNobmlzIGFuenVnZWJlbiwgaW4gIgorImRhcyBkYXMgUXVlbGxwYWtldCBleHRyYWhpZXJ0IHdlcmRlbiBzb2xsLiBEaWVzZXMgVmVyemVpY2hpcyBkYXJmIGRhbm4gbmljaHQgIgorImV4aXN0aWVyZW4uIEZhbGxzIGtlaW4gQXVzZ2FiZXZlcnplaWNobmlzIGFuZ2VnZWJlbiBpc3QsIHdpcmQgZGFzIFF1ZWxscGFrZXQgIgorImluIGRhcyBWZXJ6ZWljaG5pcyBuYW1lbnMgSTxRdWVsbGU+LUk8VmVyc2lvbj4gdW50ZXJoYWxiIGRlcyBha3R1ZWxsZW4gIgorIkFyYmVpdHN2ZXJ6ZWljaG5pc3NlcyBleHRyYWhpZXJ0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTozNQorbXNnaWQgIiIKKyJCPGRwa2ctc291cmNlPiB3aWxsIHJlYWQgdGhlIG5hbWVzIG9mIHRoZSBvdGhlciBmaWxlKHMpIG1ha2luZyB1cCB0aGUgc291cmNlICIKKyJwYWNrYWdlIGZyb20gdGhlIGNvbnRyb2wgZmlsZTsgdGhleSBhcmUgYXNzdW1lZCB0byBiZSBpbiB0aGUgc2FtZSBkaXJlY3RvcnkgIgorImFzIHRoZSBCPC5kc2M+LiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1zb3VyY2U+IHdpcmQgZGllIE5hbWVuIGRlciBhbmRlcmVuIERhdGVpKGVuKSBhdXMgZGVyIFN0ZXVlcmRhdGVpICIKKyJlaW5sZXNlbiwgZGllIGRhcyBRdWVsbHBha2V0IGVyZ2ViZW47IGVzIHdpcmQgYW5nZW5vbW1lbiwgZGFzcyBkaWVzZSBpbSAiCisiZ2xlaWNoZW4gVmVyemVpY2huaXMgd2llIGRpZSBCPC5kc2M+IGxpZWdlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NDMKK21zZ2lkICIiCisiVGhlIGZpbGVzIGluIHRoZSBleHRyYWN0ZWQgcGFja2FnZSB3aWxsIGhhdmUgdGhlaXIgcGVybWlzc2lvbnMgYW5kICIKKyJvd25lcnNoaXBzIHNldCB0byB0aG9zZSB3aGljaCB3b3VsZCBoYXZlIGJlZW4gZXhwZWN0ZWQgaWYgdGhlIGZpbGVzIGFuZCAiCisiZGlyZWN0b3JpZXMgaGFkIHNpbXBseSBiZWVuIGNyZWF0ZWQgLSBkaXJlY3RvcmllcyBhbmQgZXhlY3V0YWJsZSBmaWxlcyB3aWxsICIKKyJiZSAwNzc3IGFuZCBwbGFpbiBmaWxlcyB3aWxsIGJlIDA2NjYsIGJvdGggbW9kaWZpZWQgYnkgdGhlIGV4dHJhY3RvcnMnICIKKyJ1bWFzazsgaWYgdGhlIHBhcmVudCBkaXJlY3RvcnkgaXMgc2V0Z2lkIHRoZW4gdGhlIGV4dHJhY3RlZCBkaXJlY3RvcmllcyB3aWxsICIKKyJiZSB0b28sIGFuZCBhbGwgdGhlIGZpbGVzIGFuZCBkaXJlY3RvcmllcyB3aWxsIGluaGVyaXQgaXRzIGdyb3VwIG93bmVyc2hpcC4iCittc2dzdHIgIiIKKyJEaWUgRGF0ZWllbiBpbiBkZW0gZXh0cmFoaWVydGVuIFBha2V0IHdlcmRlbiBkaWUgUmVjaHRlIHVuZCBFaWdlbnTDvG1lciAiCisiaGFiZW4sIGRpZSBlcndhcnRldCB3w7xyZGVuLCBmYWxscyBkaWUgRGF0ZWllbiB1bmQgVmVyemVpY2huaXNzZSBlaW5mYWNoICIKKyJhbmdlbGVndCB3b3JkZW4gd8OkcmVuIC0gVmVyemVpY2huaXNzZSB1bmQgUHJvZ3JhbW1kYXRlaWVuIHdlcmRlbiAwNzc3IHVuZCAiCisiZWluZmFjaGUgRGF0ZWllbiAwNjY2LCBiZWlkZSBkdXJjaCBkaWUgdW1hc2sgZGVyIFBlcnNvbiwgZGllIGV4dHJhaGllcnQsICIKKyJlbnRzcHJlY2hlbmQgYW5nZXBhc3N0OyBmYWxscyBkYXMgw7xiZXJnZW9yZG5ldGUgVmVyemVpY2huaXMgc2V0Z2lkIGlzdCwgIgorIndlcmRlbiBkaWVzIGRpZSBleHRyYWhpZXJ0ZW4gVmVyemVpY2huaXNzZSBhdWNoIHNlaW4sIHVuZCBhbGxlIERhdGVpZW4gdW5kICIKKyJWZXJ6ZWljaG5pc3NlIHdlcmRlbiBkaWUgR3J1cHBlbmVpZ2VudMO8bWVyc2NoYWZ0IGVyYmVuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo0OAorbXNnaWQgIiIKKyJJZiB0aGUgc291cmNlIHBhY2thZ2UgdXNlcyBhIG5vbi1zdGFuZGFyZCBmb3JtYXQgKGN1cnJlbnRseSB0aGlzIG1lYW5zIGFsbCAiCisiZm9ybWF0cyBleGNlcHQgXCIxLjBcIiksIGl0cyBuYW1lIHdpbGwgYmUgc3RvcmVkIGluIEI8ZGViaWFuL3NvdXJjZS9mb3JtYXQ+ICIKKyJzbyB0aGF0IHRoZSBmb2xsb3dpbmcgYnVpbGRzIG9mIHRoZSBzb3VyY2UgcGFja2FnZSB1c2UgdGhlIHNhbWUgZm9ybWF0IGJ5ICIKKyJkZWZhdWx0LiIKK21zZ3N0ciAiIgorIkZhbGxzIGRhcyBRdWVsbHBha2V0IGVpbiBuaWNodC1TdGFuZGFyZC1Gb3JtYXQgdmVyd2VuZGV0IChkZXJ6ZWl0IGJlZGV1dGV0ICIKKyJzaW5kIGRpZXMgYWxsZSBGb3JtYXRlIGF1w59lciDCuzEuMMKrKSB3aXJkIHNlaW4gTmFtZSBpbiBCPGRlYmlhbi9zb3VyY2UvIgorImZvcm1hdD4gZ2VzcGVpY2hlcnQsIHNvIGRhc3MgYWxsZSBmb2xnZW5kZW4gQmF1dmVyc3VjaGVuIGRlcyBRdWVsbHBha2V0cyAiCisic3RhbmRhcmRtw6TDn2lnIGRhcyBnbGVpY2hlIEZvcm1hdCB2ZXJ3ZW5kZW4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTo0OQorIywgbm8td3JhcAorbXNnaWQgIkI8LWI+IEk8ZGlyZWN0b3J5PiBbSTxmb3JtYXQtc3BlY2lmaWMtcGFyYW1ldGVycz5dIgorbXNnc3RyICJCPC1iPiBJPFZlcnplaWNobmlzPiBbSTxGb3JtYXQtYWJow6RuZ2lnZS1QYXJhbWV0ZXI+XSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1NgorbXNnaWQgIiIKKyJCdWlsZCBhIHNvdXJjZSBwYWNrYWdlLiBUaGUgZmlyc3Qgbm9uLW9wdGlvbiBhcmd1bWVudCBpcyB0YWtlbiBhcyB0aGUgbmFtZSAiCisib2YgdGhlIGRpcmVjdG9yeSBjb250YWluaW5nIHRoZSBkZWJpYW5pemVkIHNvdXJjZSB0cmVlIChpLmUuIHdpdGggYSBkZWJpYW4gIgorInN1Yi1kaXJlY3RvcnkgYW5kIG1heWJlIGNoYW5nZXMgdG8gdGhlIG9yaWdpbmFsIGZpbGVzKS4gIERlcGVuZGluZyBvbiB0aGUgIgorInNvdXJjZSBwYWNrYWdlIGZvcm1hdCB1c2VkIHRvIGJ1aWxkIHRoZSBwYWNrYWdlLCBhZGRpdGlvbmFsIHBhcmFtZXRlcnMgbWlnaHQgIgorImJlIGFjY2VwdGVkLiIKK21zZ3N0ciAiIgorIkJhdWUgZWluIFF1ZWxscGFrZXQuIERhcyBlcnN0ZSBuaWNodC1PcHRpb25zLUFyZ3VtZW50IHdpcmQgYWxzIE5hbWUgZGVzICIKKyJWZXJ6ZWljaG5pc3NlcyB2ZXJ3YW5kdCwgZGFzIGRlbiBkZWJpYW5pc2llcnRlbiAoZC5oLiBtaXQgZWluZW0gIgorIlVudGVydmVyemVpY2huaXMgZGViaWFuIHVuZCBnZ2YuIMOEbmRlcnVuZ2VuIGFuIGRlbiBPcmlnaW5hbGRhdGVpZW4gIgorInZlcnNlaGVuZW4pIFF1ZWxsYmF1bSBlbnRow6RsdC4gQWJow6RuZ2lnIHZvbSBkZW0genVtIEJhdSB2ZXJ3YW5kdGVuICIKKyJRdWVsbHBha2V0Zm9ybWF0IGvDtm5udGVuIHp1c8OkdHpsaWNoZSBQYXJhbWV0ZXIgYWt6ZXB0aWVydCB3ZXJkZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjY1Cittc2dpZCAiIgorIkI8ZHBrZy1zb3VyY2U+IHdpbGwgYnVpbGQgdGhlIHNvdXJjZSBwYWNrYWdlIHdpdGggdGhlIGZpcnN0IGZvcm1hdCBmb3VuZCBpbiAiCisidGhpcyBvcmRlcmVkIGxpc3Q6IHRoZSBmb3JtYXQgaW5kaWNhdGVkIHdpdGggdGhlIEk8LS1mb3JtYXQ+IGNvbW1hbmQgbGluZSAiCisib3B0aW9uLCB0aGUgZm9ybWF0IGluZGljYXRlZCBpbiBCPGRlYmlhbi9zb3VyY2UvZm9ybWF0PiwgXCIxLjBcIi4gVGhlICIKKyJmYWxsYmFjayB0byBcIjEuMFwiIGlzIGRlcHJlY2F0ZWQgYW5kIHdpbGwgYmUgcmVtb3ZlZCBhdCBzb21lIHBvaW50IGluIHRoZSAiCisiZnV0dXJlLCB5b3Ugc2hvdWxkIGFsd2F5cyBkb2N1bWVudCB0aGUgZGVzaXJlZCBzb3VyY2UgZm9ybWF0IGluIEI8ZGViaWFuLyIKKyJzb3VyY2UvZm9ybWF0Pi4gU2VlIHNlY3Rpb24gQjxTT1VSQ0UgUEFDS0FHRSBGT1JNQVRTPiBmb3IgYW4gZXh0ZW5zaXZlICIKKyJkZXNjcmlwdGlvbiBvZiB0aGUgdmFyaW91cyBzb3VyY2UgcGFja2FnZSBmb3JtYXRzLiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1zb3VyY2U+IHdpcmQgZGFzIFF1ZWxscGFrZXQgbWl0IGRlbSBlcnN0ZW4gZ2VmdW5kZW5lbiBGb3JtYXQgYXVzIGRlciAiCisiZm9sZ2VuZGVuIGdlb3JkbmV0ZW4gTGlzdGUgYmF1ZW46IGRlbSBtaXQgZGVyIEtvbW1hbmRvemVpbGVub3B0aW9uKGVuKSBJPC0tIgorImZvcm1hdD4gYW5nZWdlYmVuIEZvcm1hdCwgZGVtIGluIEI8ZGViaWFuL3NvdXJjZS9mb3JtYXQ+IGFuZ2VnZWJlbmVuIEZvcm1hdCwgIgorIsK7MS4wwqsuIERpZSBSw7xja2ZhbGxvcHRpb24gwrsxLjDCqyBpc3QgdmVyYWx0ZXQgdW5kIHdpcmQgaXJnZW5kd2FubiBpbiBkZXIgIgorIlp1a3VuZnQgZW50ZmVybnQgd2VyZGVuLCBTaWUgc29sbHRlbiBkYXMgZ2V3w7xuc2NodGUgUXVlbGxmb3JtYXQgaW1tbWVyIGluICIKKyJCPGRlYmlhbi9zb3VyY2UvZm9ybWF0PiBkb2t1bWVudGllcmVuLiBEaWUgdmVyc2NoaWVkZW5lbiBRdWVsbHBha2V0Zm9ybWF0ZSAiCisid2VyZGVuIGltIEFic2Nobml0dCBCPFFVRUxMUEFLRVQtRk9STUFURT4gYXVzZsO8aHJsaWNoIGJlc2NocmllYmVuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NjYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tcHJpbnQtZm9ybWF0PiBJPGRpcmVjdG9yeT4iCittc2dzdHIgIkI8LS1wcmludC1mb3JtYXQ+IEk8VmVyemVpY2huaXM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjcxCittc2dpZCAiIgorIlByaW50IHRoZSBzb3VyY2UgZm9ybWF0IHRoYXQgd291bGQgYmUgdXNlZCB0byBidWlsZCB0aGUgc291cmNlIHBhY2thZ2UgaWYgIgorIkI8ZHBrZy1zb3VyY2UgLWIgPkk8ZGlyZWN0b3J5PiB3YXMgY2FsbGVkIChpbiB0aGUgc2FtZSBjb25kaXRpb25zIGFuZCB3aXRoICIKKyJ0aGUgc2FtZSBwYXJhbWV0ZXJzKS4iCittc2dzdHIgIiIKKyJHaWJ0IGRhcyBRdWVsbGZvcm1hdCBhdXMsIGRhc3MgenVtIEJhdSBkZXMgUXVlbGxwYWtldHMgdmVyd2FuZHQgd8O8cmRlLCBmYWxscyAiCisiQjxkcGtnLXNvdXJjZSAtYiA+STxWZXJ6ZWljaG5pcz4gYXVmZ2VydWZlbiB3w7xyZGUgKHVudGVyIGRlbiBnbGVpY2hlbiAiCisiQmVkaW5ndW5nZW4gdW5kIG1pdCBkZW4gZ2xlaWNoZW4gUGFyYW1ldGVybikuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTo3MgorIywgbm8td3JhcAorbXNnaWQgIkI8LS1iZWZvcmUtYnVpbGQ+IEk8ZGlyZWN0b3J5PiIKK21zZ3N0ciAiQjwtLWJlZm9yZS1idWlsZD4gSTxWZXJ6ZWljaG5pcz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6ODEKK21zZ2lkICIiCisiUnVuIHRoZSBjb3JyZXNwb25kaW5nIGhvb2sgb2YgdGhlIHNvdXJjZSBwYWNrYWdlIGZvcm1hdC4gVGhpcyBob29rIGlzIGNhbGxlZCAiCisiYmVmb3JlIGFueSBidWlsZCBvZiB0aGUgcGFja2FnZSAoQjxkcGtnLWJ1aWxkcGFja2FnZT4gY2FsbHMgaXQgdmVyeSBlYXJseSAiCisiZXZlbiBiZWZvcmUgQjxkZWJpYW4vcnVsZXMgY2xlYW4+KS4gVGhpcyBjb21tYW5kIGlzIGlkZW1wb3RlbnQgYW5kIGNhbiBiZSAiCisiY2FsbGVkIG11bHRpcGxlIHRpbWVzLiBOb3QgYWxsIHNvdXJjZSBmb3JtYXRzIGltcGxlbWVudCBzb21ldGhpbmcgaW4gdGhpcyAiCisiaG9vaywgYW5kIHRob3NlIHRoYXQgZG8gdXN1YWxseSBwcmVwYXJlIHRoZSBzb3VyY2UgdHJlZSBmb3IgdGhlIGJ1aWxkIGZvciAiCisiZXhhbXBsZSBieSBlbnN1cmluZyB0aGF0IHRoZSBEZWJpYW4gcGF0Y2hlcyBhcmUgYXBwbGllZC4iCittc2dzdHIgIiIKKyJEZXIgZW50c3ByZWNoZW5kZSBIb29rIGRlc3MgUXVlbGxwYWtldGZvcm1hdHMgc29sbCBhdXNnZWbDvGhydCB3ZXJkZW4uIERpZXNlciAiCisiSG9vayB3aXJkIHZvciBqZWRlbSBCYXUgZGVzIFBha2V0cyBhdWZnZXJ1ZmVuIChCPGRwa2ctYnVpbGRwYWNrYWdlPiBydWZ0IGlobiAiCisic2VociBmcsO8aCwgc29nYXIgdm9yIEI8ZGViaWFuL3J1bGVzIGNsZWFuPiBhdWYpLiBEaWVzZXIgQmVmZWhsIGlzdCAiCisiaWRlbXBvdGVudCB1bmQga2FubiBtZWhyZmFjaCBhdWZnZXJ1ZmVuIHdlcmRlbi4gTmljaHQgYWxsZSBRdWVsbGZvcm1hdGUgIgorImltcGxlbWVudGllcmVuIGluIGRpZXNlbSBIb29rIGV0d2FzIHVuZCB3ZW5uIGRpZXMgZXJmb2xndCwgZGFubiBnZXfDtmhubGljaCAiCisienVyIFZvcmJlcmVpdHVuZyBkZXMgUXVlbGxiYXVtcyBmw7xyIGRlbiBCYXUsIGluIGRlbSBiZWlzcGllbHN3ZWlzZSAiCisic2ljaGVyZ2VzdGVsbHQgd2lyZCwgZGFzcyBhbGxlIERlYmlhbi1QYXRjaGVzIGFuZ2V3YW5kdCBzaW5kLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6ODIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tYWZ0ZXItYnVpbGQ+IEk8ZGlyZWN0b3J5PiIKK21zZ3N0ciAiQjwtLWFmdGVyLWJ1aWxkPiBJPFZlcnplaWNobmlzPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo4OQorbXNnaWQgIiIKKyJSdW4gdGhlIGNvcnJlc3BvbmRpbmcgaG9vayBvZiB0aGUgc291cmNlIHBhY2thZ2UgZm9ybWF0LiBUaGlzIGhvb2sgaXMgY2FsbGVkICIKKyJhZnRlciBhbnkgYnVpbGQgb2YgdGhlIHBhY2thZ2UgKEI8ZHBrZy1idWlsZHBhY2thZ2U+IGNhbGxzIGl0IGxhc3QpLiBUaGlzICIKKyJjb21tYW5kIGlzIGlkZW1wb3RlbnQgYW5kIGNhbiBiZSBjYWxsZWQgbXVsdGlwbGUgdGltZXMuIE5vdCBhbGwgc291cmNlICIKKyJmb3JtYXRzIGltcGxlbWVudCBzb21ldGhpbmcgaW4gdGhpcyBob29rLCBhbmQgdGhvc2UgdGhhdCBkbyB1c3VhbGx5IHVzZSBpdCAiCisidG8gdW5kbyB3aGF0IEI8LS1iZWZvcmUtYnVpbGQ+IGhhcyBkb25lLiIKK21zZ3N0ciAiIgorIkRlciBlbnRzcHJlY2hlbmRlIEhvb2sgZGVzcyBRdWVsbHBha2V0Zm9ybWF0cyBzb2xsIGF1c2dlZsO8aHJ0IHdlcmRlbi4gRGllc2VyICIKKyJIb29rIHdpcmQgbmFjaCBqZWRlbSBCYXUgZGVzIFBha2V0cyBhdWZnZXJ1ZmVuIChCPGRwa2ctYnVpbGRwYWNrYWdlPiBydWZ0ICIKKyJhbHMgbGV0enRlcyBhdWYpLiBEaWVzZXIgQmVmZWhsIGlzdCBpZGVtcG90ZW50IHVuZCBrYW5uIG1laHJmYWNoIGF1ZmdlcnVmZW4gIgorIndlcmRlbi4gTmljaHQgYWxsZSBRdWVsbGZvcm1hdGUgaW1wbGVtZW50aWVyZW4gaW4gZGllc2VtIEhvb2sgZXR3YXMgdW5kIHdlbm4gIgorImRpZXMgZXJmb2xndCwgZGFubiBnZXfDtmhubGljaCB1bSByw7xja2fDpG5naWcgenUgbWFjaGVuLCB3YXMgQjwtLWJlZm9yZS1idWlsZD4gIgorImR1cmNoZ2Vmw7xocnQgaGF0LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6OTAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tY29tbWl0PiBbSTxkaXJlY3Rvcnk+XSAuLi4iCittc2dzdHIgIkI8LS1jb21taXQ+IFtJPFZlcnplaWNobmlzPl0gLi4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjk1Cittc2dpZCAiIgorIlJlY29yZCBjaGFuZ2VzIGluIHRoZSBzb3VyY2UgdHJlZSB1bnBhY2tlZCBpbiBJPGRpcmVjdG9yeT4uIFRoaXMgY29tbWFuZCBjYW4gIgorInRha2Ugc3VwcGxlbWVudGFyeSBwYXJhbWV0ZXJzIGRlcGVuZGluZyBvbiB0aGUgc291cmNlIGZvcm1hdC4gIEl0IHdpbGwgZXJyb3IgIgorIm91dCBmb3IgZm9ybWF0cyB3aGVyZSB0aGlzIG9wZXJhdGlvbiBkb2Vzbid0IG1lYW4gYW55dGhpbmcuIgorbXNnc3RyICIiCisiWmVpY2huZXQgw4RuZGVydW5nZW4gYW0gaW4gSTxWZXJ6ZWljaG5pcz4gZW50cGFja3RlbiBRdWVsbGJhdW0gYXVmLiBEaWVzZXIgIgorIkJlZmVobCBrYW5uIHp1c8OkdHpsaWNoZSBQYXJhbWV0ZXIgYWt6ZXB0aWVyZW4sIGFiaMOkbmdpZyB2b20gUXVlbGxmb3JtYXQuIEVyICIKKyJ3aXJkIHp1IGVpbmVyIEZlaGxlcm1lbGR1bmcgYmVpIEZvcm1hdGVuLCBmw7xyIGRlbmVuIGRpZXNlciBWb3JnYW5nIGtlaW5lICIKKyJCZWRldXR1bmcgaGF0LCBmw7xocmVuLiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctc291cmNlLjE6MTAzCisjLCBuby13cmFwCittc2dpZCAiR0VORVJJQyBCVUlMRCBPUFRJT05TIgorbXNnc3RyICJHRU5FUklTQ0hFIEJBVU9QVElPTkVOIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjExMQorbXNnaWQgIiIKKyJTcGVjaWZpZXMgdGhlIG1haW4gc291cmNlIGNvbnRyb2wgZmlsZSB0byByZWFkIGluZm9ybWF0aW9uIGZyb20uIFRoZSBkZWZhdWx0ICIKKyJpcyBCPGRlYmlhbi9jb250cm9sPi4gIElmIGdpdmVuIHdpdGggcmVsYXRpdmUgcGF0aG5hbWUgdGhpcyBpcyBpbnRlcnByZXRlZCAiCisic3RhcnRpbmcgYXQgdGhlIHNvdXJjZSB0cmVlJ3MgdG9wIGxldmVsIGRpcmVjdG9yeS4iCittc2dzdHIgIiIKKyJCZXN0aW1tdCBkaWUgSGF1cHRxdWVsbC3Cu2NvbnRyb2zCqy1EYXRlaSwgYXVzIGRlciBJbmZvcm1hdGlvbmVuIGF1c2dlbGVzZW4gIgorIndlcmRlbiBzb2xsZW4uIERlciBTdGFuZGFyZHdlcnQgaXN0IEI8ZGViaWFuL2NvbnRyb2w+LiBGYWxscyBkZXIgUGZhZG5hbWUgIgorInJlbGF0aXYgaXN0LCB3aXJkIGRpZXNlciByZWxhdGl2IHp1bSBvYmVyc3RlbiBWZXJ6ZWljaG5pcyBkZXMgUXVlbGxiYXVtcyAiCisiaW50ZXJwcmV0aWVydC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MTE4Cittc2dpZCAiIgorIlNwZWNpZmllcyB0aGUgY2hhbmdlIGxvZyBmaWxlIHRvIHJlYWQgaW5mb3JtYXRpb24gZnJvbS4gVGhlIGRlZmF1bHQgaXMgIgorIkI8ZGViaWFuL2NoYW5nZWxvZz4uICBJZiBnaXZlbiB3aXRoIHJlbGF0aXZlIHBhdGhuYW1lIHRoaXMgaXMgaW50ZXJwcmV0ZWQgIgorInN0YXJ0aW5nIGF0IHRoZSBzb3VyY2UgdHJlZSdzIHRvcCBsZXZlbCBkaXJlY3RvcnkuIgorbXNnc3RyICIiCisiQmVzdGltbXQgZGllIMK7Y2hhbmdlIGxvZ8KrLURhdGVpLCBhdXMgZGVyIEluZm9ybWF0aW9uZW4gYXVzZ2VsZXNlbiB3ZXJkZW4gIgorInNvbGxlbi4gRGVyIFN0YW5kYXJkd2VydCBpc3QgQjxkZWJpYW4vY2hhbmdlbG9nPi4gRmFsbHMgZGVyIFBmYWRuYW1lIHJlbGF0aXYgIgorImlzdCwgd2lyZCBkaWVzZXIgcmVsYXRpdiB6dW0gb2JlcnN0ZW4gVmVyemVpY2huaXMgZGVzIFF1ZWxsYmF1bXMgIgorImludGVycHJldGllcnQuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMToxMjMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tZm9ybWF0PT5JPHZhbHVlPiIKK21zZ3N0ciAiQjwtLWZvcm1hdD0+STxXZXJ0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToxMjcKK21zZ2lkICIiCisiVXNlIHRoZSBnaXZlbiBmb3JtYXQgZm9yIGJ1aWxkaW5nIHRoZSBzb3VyY2UgcGFja2FnZS4gSXQgZG9lcyBvdmVycmlkZSBhbnkgIgorImZvcm1hdCBnaXZlbiBpbiBCPGRlYmlhbi9zb3VyY2UvZm9ybWF0Pi4iCittc2dzdHIgIiIKKyJWZXJ3ZW5kZSBkYXMgYW5nZWdlYmVuZSBGb3JtYXQgenVtIEJhdSBkZXMgUXVlbGxwYWtldHMuIEVzIMO8YmVyc2NocmVpYnQgIgorImplZGVzIGluIEI8ZGViaWFuL3NvdXJjZS9mb3JtYXQ+IGFuZ2VnZWJlbmUgRm9ybWF0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToxMzcKK21zZ2lkICIiCisiUmVhZCBzdWJzdGl0dXRpb24gdmFyaWFibGVzIGluIEk8c3Vic3R2YXJzZmlsZT47IHRoZSBkZWZhdWx0IGlzIHRvIG5vdCByZWFkICIKKyJhbnkgZmlsZS4gVGhpcyBvcHRpb24gY2FuIGJlIHVzZWQgbXVsdGlwbGUgdGltZXMgdG8gcmVhZCBzdWJzdGl0dXRpb24gIgorInZhcmlhYmxlcyBmcm9tIG11bHRpcGxlIGZpbGVzLiIKK21zZ3N0ciAiIgorIkxlc2UgU3Vic3RpdHV0aW9uc3ZhcmlhYmxlbiBhdXMgSTxzdWJzdHZhcmRhdGVpPjsgc3RhbmRhcmRtw6TDn2lnIHdpcmQga2VpbmUgIgorIkRhdGVpIGdlbGVzZW4uIERpZXNlIE9wdGlvbiBrYW5uIG1laHJmYWNoIHZlcndhbmR0IHdlcmRlbiwgdW0gIgorIlN1YnN0aXR1dGlvbnN2YXJpYWJsZW4gYXVzIG1laHJlcmVuIERhdGVpZW4gZWluenVsZXNlbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjE0MworIywgbm8td3JhcAorbXNnaWQgIkI8LVo+STxjb21wcmVzc2lvbj4sIEI8LS1jb21wcmVzc2lvbj49STxjb21wcmVzc2lvbj4iCittc2dzdHIgIkI8LVo+STxLb21wcmltaWVydW5nPiwgQjwtLWNvbXByZXNzaW9uPj1JPEtvbXByaW1pZXJ1bmc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjE1MQorbXNnaWQgIiIKKyJTcGVjaWZ5IHRoZSBjb21wcmVzc2lvbiB0byB1c2UgZm9yIGNyZWF0ZWQgZmlsZXMgKHRhcmJhbGxzIGFuZCBkaWZmcykuICBOb3RlICIKKyJ0aGF0IHRoaXMgb3B0aW9uIHdpbGwgbm90IGNhdXNlIGV4aXN0aW5nIHRhcmJhbGxzIHRvIGJlIHJlY29tcHJlc3NlZCwgaXQgIgorIm9ubHkgYWZmZWN0cyBuZXcgZmlsZXMuIFN1cHBvcnRlZCB2YWx1ZXMgYXJlOiBJPGd6aXA+LCBJPGJ6aXAyPiwgSTxsem1hPiBhbmQgIgorIkk8eHo+LiAgSTxnemlwPiBpcyB0aGUgZGVmYXVsdC4gSTx4ej4gaXMgb25seSBzdXBwb3J0ZWQgc2luY2UgZHBrZy1kZXYgIgorIjEuMTUuNS4iCittc2dzdHIgIiIKKyJHaWJ0IGRpZSBLb21wcmltaWVydW5nIGFuLCBkaWUgZsO8ciBkaWUgYW5nZWxlZ3RlIERhdGVpZW4gKFRhcmLDpGxsZSB1bmQgIgorIkRpZmZzKSB2ZXJ3ZW5kZXQgd2lyZC4gQmVhY2h0ZW4gU2llLCBkYXNzIGRpZXNlIE9wdGlvbiBuaWNodCBkYXp1IGbDvGhydCwgIgorImRhc3MgZXhpc3RpZXJlbmRlIFRhcmLDpGxsZSByZWtvbXByaW1pZXJ0IHdlcmRlbiwgc2llIGJldHJpZmZ0IG51ciBuZXVlICIKKyJEYXRlaWVuLiBVbnRlcnN0w7x0enRlIFdlcnRlIHNpbmQgSTxnemlwPiwgSTxiemlwMj4sIEk8bHptYT4gdW5kIEk8eHo+LiAiCisiSTxnemlwPiBpc3Qgdm9yZWluZ2VzdGVsbHQuIEk8eHo+IHdpcmQgZXJzdCBzZWl0IERwa2ctZGV2IDEuMTUuNSB1bnRlcnN0w7x0enQuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMToxNTEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC16Pkk8bGV2ZWw+LCBCPC0tY29tcHJlc3Npb24tbGV2ZWw+PUk8bGV2ZWw+IgorbXNnc3RyICJCPC16Pkk8U3R1ZmU+LCBCPC0tY29tcHJlc3Npb24tbGV2ZWw+PUk8U3R1ZmU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjE1NworbXNnaWQgIiIKKyJDb21wcmVzc2lvbiBsZXZlbCB0byB1c2UuIEFzIHdpdGggQjwtWj4gaXQgb25seSBhZmZlY3RzIG5ld2x5IGNyZWF0ZWQgZmlsZXMuICIKKyJTdXBwb3J0ZWQgdmFsdWVzIGFyZTogSTwxPiB0byBJPDk+LCBJPGJlc3Q+LCBhbmQgSTxmYXN0Pi4gIFRoZSBkZWZhdWx0IGlzICIKKyJJPDk+IGZvciBnemlwIGFuZCBiemlwMiwgSTw2PiBmb3IgeHogYW5kIGx6bWEuIgorbXNnc3RyICIiCisiWnUgdmVyd2VuZGVuZGUgS29tcHJpbWllcnN0dWZlLiBXaWUgYmVpIEI8LVo+IGJldHJpZmZ0IGRpZXMgbnVyIG5ldSAiCisiYW5nZWxlZ3RlIERhdGVpZW4uIFVudGVyc3TDvHR6dGUgV2VydGUgc2luZCBJPDE+IGJpcyBJPDk+LCBJPGJlc3Q+IChhbSAiCisiYmVzdGVuKSB1bmQgSTxmYXN0PiAoc2NobmVsbCkuIERlciBTdGFuZGFyZHdlcnQgaXN0IEk8OT4gZsO8ciBHemlwIHVuZCBCemlwMiwgIgorIkk8Nj4gZsO8ciBYeiB1bmQgTHptYS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjE1NworIywgbm8td3JhcAorbXNnaWQgIkI8LWk+W0k8cmVnZXhwPl0sIEI8LS1kaWZmLWlnbm9yZT5bPUk8cmVnZXhwPl0iCittc2dzdHIgIkI8LWk+W0k8cmVnZXhwPl0sIEI8LS1kaWZmLWlnbm9yZT5bPUk8cmVnZXhwPl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MTY5Cittc2dpZCAiIgorIllvdSBtYXkgc3BlY2lmeSBhIHBlcmwgcmVndWxhciBleHByZXNzaW9uIHRvIG1hdGNoIGZpbGVzIHlvdSB3YW50IGZpbHRlcmVkICIKKyJvdXQgb2YgdGhlIGxpc3Qgb2YgZmlsZXMgZm9yIHRoZSBkaWZmLiAoVGhpcyBsaXN0IGlzIGdlbmVyYXRlZCBieSBhIGZpbmQgIgorImNvbW1hbmQuKSAoSWYgdGhlIHNvdXJjZSBwYWNrYWdlIGlzIGJlaW5nIGJ1aWx0IGFzIGEgdmVyc2lvbiAzIHNvdXJjZSAiCisicGFja2FnZSB1c2luZyBhIFZDUywgdGhpcyBjYW4gYmUgdXNlZCB0byBpZ25vcmUgdW5jb21taXRlZCBjaGFuZ2VzIG9uICIKKyJzcGVjaWZpYyBmaWxlcy4gVXNpbmcgLWkuKiB3aWxsIGlnbm9yZSBhbGwgb2YgdGhlbS4pICBCPC1pPiBieSBpdHNlbGYgIgorImVuYWJsZXMgdGhlIG9wdGlvbiwgd2l0aCBhIGRlZmF1bHQgcmVnZXhwIHRoYXQgd2lsbCBmaWx0ZXIgb3V0IGNvbnRyb2wgZmlsZXMgIgorImFuZCBkaXJlY3RvcmllcyBvZiB0aGUgbW9zdCBjb21tb24gcmV2aXNpb24gY29udHJvbCBzeXN0ZW1zLCBiYWNrdXAgYW5kIHN3YXAgIgorImZpbGVzIGFuZCBMaWJ0b29sIGJ1aWxkIG91dHB1dCBkaXJlY3Rvcmllcy4gVGhlcmUgY2FuIG9ubHkgYmUgb25lIGFjdGl2ZSAiCisicmVnZXhwLCBvZiBtdWx0aXBsZSBCPC1pPiBvcHRpb25zIG9ubHkgdGhlIGxhc3Qgb25lIHdpbGwgdGFrZSBlZmZlY3QuIgorbXNnc3RyICIiCisiU2llIGvDtm5uZW4gZWluZW4gcmVndWzDpHJlbiBQZXJsLUF1c2RydWNrIGFuZ2ViZW4sIGRlciBhdWYgRGF0ZWllbiBwYXNzdCwgZGllICIKKyJTaWUgYXVzIGRlciBMaXN0ZSBkZXIgRGF0ZWllbiBmw7xyIGRlbiBEaWZmIGVudGZlcm5lbiBtw7ZjaHRlbjsgZGllc2UgTGlzdGUgIgorIndpcmQgdm9uIGVpbmVtIEZpbmQtQmVmZWhsIGdlbmVyaWVydC4gRmFsbHMgZGFzIFF1ZWxscGFrZXQgYWxzIFZlcnNpb24gMy0iCisiUXVlbGxwYWtldCBtaXR0ZWxzIGVpbmVzIFZDUyBnZWJhdXQgd2lyZCwgaWdub3JpZXJ0IGRpZXMgc3RhdHRkZXNzZW4gIgorIsOEbmRlcnVuZ2VuIGFuIGJlc3RpbW10ZW4gRGF0ZWllbiwgZGllIG5vY2ggbmljaHQgw7xiZXJ0cmFnZW4gKMK7Y29tbWl0dGVkwqspICIKKyJ3dXJkZW4gKG1pdCAtaS4qIHdlcmRlbiBhbGxlIGRhdm9uIGlnbm9yaWVydCkuIEI8LWk+IGFrdGl2aWVydCBkaWVzZSBPcHRpb24gIgorIm1pdCBlaW5lbSB2b3JlaW5nZXN0ZWxsdGVuIHJlZ3Vsw6RyZW4gQXVzZHJ1Y2ssIGRlciBTdGV1ZXJkYXRlaWVuIHVuZCAtIgorIlZlcnplaWNobmlzc2UgZGVyIGjDpHVmaWdzdGVuIFJldmlzaW9uc2tvbnRyb2xsc3lzdGVtZSwgQmFja3VwcywgU3dhcC1EYXRlaWVuICIKKyJ1bmQgQmF1LUF1c2dhYmV2ZXJ6ZWljaG5pc3NlIHZvbiBMaWJ0b29sIGhlcmF1c2dlZmlsdGVydC4gRXMga2FubiBudXIgZWluZW4gIgorImFrdGl2ZW4gcmVndWzDpHJlbiBBdXNkcnVjayBnZWJlbiwgdm9uIG1laHJmYWNoIGFuZ2VnZWJlbmVuIEI8LWk+LU9wdGlvbmVuICIKKyJ3aXJkIG51ciBkaWUgbGV0enRlIGJlcsO8Y2tzaWNodGlndC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MTc5Cittc2dpZCAiIgorIlRoaXMgaXMgdmVyeSBoZWxwZnVsIGluIGN1dHRpbmcgb3V0IGV4dHJhbmVvdXMgZmlsZXMgdGhhdCBnZXQgaW5jbHVkZWQgaW4gIgorInRoZSBkaWZmLCBlLmcuIGlmIHlvdSBtYWludGFpbiB5b3VyIHNvdXJjZSBpbiBhIHJldmlzaW9uIGNvbnRyb2wgc3lzdGVtIGFuZCAiCisid2FudCB0byB1c2UgYSBjaGVja291dCB0byBidWlsZCBhIHNvdXJjZSBwYWNrYWdlIHdpdGhvdXQgaW5jbHVkaW5nIHRoZSAiCisiYWRkaXRpb25hbCBmaWxlcyBhbmQgZGlyZWN0b3JpZXMgdGhhdCBpdCB3aWxsIHVzdWFsbHkgY29udGFpbiAoZS5nLiBDVlMvLCAuIgorImN2c2lnbm9yZSwgLnN2bi8pLiBUaGUgZGVmYXVsdCByZWdleHAgaXMgYWxyZWFkeSB2ZXJ5IGV4aGF1c3RpdmUsIGJ1dCBpZiB5b3UgIgorIm5lZWQgdG8gcmVwbGFjZSBpdCwgcGxlYXNlIG5vdGUgdGhhdCBieSBkZWZhdWx0IGl0IGNhbiBtYXRjaCBhbnkgcGFydCBvZiBhICIKKyJwYXRoLCBzbyBpZiB5b3Ugd2FudCB0byBtYXRjaCB0aGUgYmVnaW4gb2YgYSBmaWxlbmFtZSBvciBvbmx5IGZ1bGwgIgorImZpbGVuYW1lcywgeW91IHdpbGwgbmVlZCB0byBwcm92aWRlIHRoZSBuZWNlc3NhcnkgYW5jaG9ycyAoZS5nLiAnKF58LyknLCAiCisiJygkfC8pJykgeW91cnNlbGYuIgorbXNnc3RyICIiCisiRGllcyBpc3Qgc2VociBoaWxmcmVpY2gsIHVtIGlycmVsZXZhbnRlIERhdGVpZW4sIGRpZSBpbSBEaWZmIGF1Zmdlbm9tbWVuICIKKyJ3ZXJkZW4sIHp1IGVudGZlcm5lbi4gRmFsbHMgU2llIHp1bSBCZWlzcGllbCBJaHJlIFF1ZWxsZW4gaW4gZWluZW0gIgorIlJldmlzaW9uc2tvbnRyb2xsc3lzdGVtIHNwZWljaGVybiB1bmQgwrtDaGVja291dMKrIHZlcndlbmRlbiBtw7ZjaHRlbiwgdW0gSWhyICIKKyJRdWVsbHBha2V0IHp1IGJhdWVuLCBvaG5lIGRpZSB6dXPDpHR6bGljaGVuIERhdGVpZW4gdW5kIFZlcnplaWNobmlzc2UsIGRpZSAiCisiZGFyaW4gdHlwaXNjaGVyd2Vpc2UgZW50aGFsdGVuIHNpbmQgKHouQi4gQ1ZTLywgLmN2c2lnbm9yZSwgLnN2bi8pLCBtaXQgIgorImF1Znp1bmVobWVuLiBEZXIgdm9yZWluZ2VzdGVsbHRlIHJlZ3Vsw6RyZSBBdXNkcnVjayBpc3QgYmVyZWl0cyBzZWhyICIKKyJlcnNjaMO2cGZlbmQsIGFiZXIgZmFsbHMgU2llIGlobiBlcnNldHplbiBtw7xzc2VuLCBiZWFjaHRlbiBTaWUsIGRhc3MgZXIgIgorInN0YW5kYXJkbcOkw59pZyBhdWYgYWxsZSBUZWlsZSBkZXMgUGZhZGVzIHBhc3NlbiBrYW5uLiBGYWxscyBTaWUgZGFoZXIgbnVyIGRlbiAiCisiQW5mYW5nIGVpbmVzIFBmYWRlcyBvZGVyIGtvbXBsZXR0ZSBEYXRlaW5hbWVuIHZlcmdsZWljaGVuIHdvbGxlbiwgbcO8c3NlbiBTaWUgIgorImRpZSBub3R3ZW5kaWdlbiBBbmtlciAoei5CLiDCuyhefC8pwqssIMK7KCR8LynCqykgc2VsYnN0IGJlcmVpdHN0ZWxsZW4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMToxNzkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tZXh0ZW5kLWRpZmYtaWdub3JlPj1JPHJlZ2V4cD4iCittc2dzdHIgIkI8LS1leHRlbmQtZGlmZi1pZ25vcmU+PUk8cmVnZXhwPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToxODYKK21zZ2lkICIiCisiVGhlIHBlcmwgcmVndWxhciBleHByZXNzaW9uIHNwZWNpZmllZCB3aWxsIGV4dGVuZCB0aGUgZGVmYXVsdCB2YWx1ZSBvZiBCPC0tIgorImRpZmYtaWdub3JlPiBhbmQgaXRzIGN1cnJlbnQgdmFsdWUgKGlmIHNldCkuIEl0IGRvZXMgdGhpcyBieSBjb25jYXRlbmF0aW5nICIKKyJcIkI8fD5JPHJlZ2V4cD5cIiB0byB0aGUgZXhpc3RpbmcgdmFsdWUuICBUaGlzIG9wdGlvbiBpcyBjb252ZW5pZW50IHRvIHVzZSAiCisiaW4gQjxkZWJpYW4vc291cmNlL29wdGlvbnM+IHRvIGV4Y2x1ZGUgc29tZSBhdXRvLWdlbmVyYXRlZCBmaWxlcyBmcm9tIHRoZSAiCisiYXV0b21hdGljIHBhdGNoIGdlbmVyYXRpb24uIgorbXNnc3RyICIiCisiRGVyIGFuZ2VnZWJlbmUgcmVndWzDpHJlIEF1c2RydWNrIChQZXJsLUZvcm1hdCkgd2lyZCBkZW4gc3RhbmRhcmRtw6TDn2lnZW4gV2VydCAiCisidm9uIEI8LS1kaWZmLWlnbm9yZT4gYW5kIGRlc3NlbiBha3R1ZWxsZW4gV2VydCAoZmFsbHMgZ2VzZXR6dCkgZXJ3ZWl0ZXJlbi4gIgorIkRpZXMgZXJmb2xndCwgaW5kZW0gwrtCPHw+STxyZWdleHA+wqsgYW4gZGVuIGV4aXN0aWVyZW5kZW4gV2VydCBhbmdlaMOkbmd0ICIKKyJ3aXJkLiBEaWVzZSBPcHRpb24gaXN0IGJlcXVlbSBpbiBCPGRlYmlhbi9zb3VyY2Uvb3B0aW9ucz4genUgbnV0emVuLCB1bSAiCisiZWluaWdlIGF1dG9tYXRpc2NoIGVyc3RlbGx0ZW4gRGF0ZWllbiB2b24gZGVyIGF1dG9tYXRpc2NoZW4gUGF0Y2gtRXJ6ZXVndW5nICIKKyJhdXN6dXNjaGxpZcOfZW4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMToxODYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1JPltJPGZpbGUtcGF0dGVybj5dLCBCPC0tdGFyLWlnbm9yZT5bPUk8ZmlsZS1wYXR0ZXJuPl0iCittc2dzdHIgIkI8LUk+W0k8RGF0ZWltdXN0ZXI+XSwgQjwtLXRhci1pZ25vcmU+Wz1JPERhdGVpbXVzdGVyPl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MTk1Cittc2dpZCAiIgorIklmIHRoaXMgb3B0aW9uIGlzIHNwZWNpZmllZCwgdGhlIHBhdHRlcm4gd2lsbCBiZSBwYXNzZWQgdG8gQjx0YXI+KDEpJ3MgLS0iCisiZXhjbHVkZSBvcHRpb24gd2hlbiBpdCBpcyBjYWxsZWQgdG8gZ2VuZXJhdGUgYSAub3JpZy50YXIgb3IgLnRhciBmaWxlLiBGb3IgIgorImV4YW1wbGUsIC1JQ1ZTIHdpbGwgbWFrZSB0YXIgc2tpcCBvdmVyIENWUyBkaXJlY3RvcmllcyB3aGVuIGdlbmVyYXRpbmcgYSAuIgorInRhci5neiBmaWxlLiBUaGUgb3B0aW9uIG1heSBiZSByZXBlYXRlZCBtdWx0aXBsZSB0aW1lcyB0byBsaXN0IG11bHRpcGxlICIKKyJwYXR0ZXJucyB0byBleGNsdWRlLiIKK21zZ3N0ciAiIgorIkZhbGxzIGRpZXNlIE9wdGlvbiBhbmdlZ2ViZW4gd2lyZCwgd2lyZCBkZXIgRGF0ZWluYW1lIGFuIGRpZSAtLWV4Y2x1ZGUtIgorIk9wdGlvbiB2b24gQjx0YXI+KDEpIHdlaXRlcmdlZ2ViZW4sIHdlbm4gZXMgenVyIEVyc3RlbGx1bmcgZGVyIERhdGVpIC5vcmlnLiIKKyJ0YXIgb2RlciAudGFyIGF1ZmdlcnVmZW4gd2lyZC4gWnVtIEJlaXNwaWVsIGbDvGhydCAtSUNWUyBkYXp1LCBkYXNzIHRhciDDvGJlciAiCisiQ1ZTLVZlcnplaWNobmlzc2UgaGlud2VnZ2VodCwgd2VubiBlcyBlaW5lIC50YXItRGF0ZWkgZXJzdGVsbHQuIERpZXNlIE9wdGlvbiAiCisia2FubiBtZWhyZmFjaCB3aWVkZXJob2x0IHdlcmRlbiwgdW0gbWVocmVyZSBNdXN0ZXIgYXVmenVmw7xocmVuLCBkaWUgIgorImF1c2dlc2NobG9zc2VuIHdlcmRlbiBzb2xsZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjIwMAorbXNnaWQgIiIKKyJCPC1JPiBieSBpdHNlbGYgYWRkcyBkZWZhdWx0IC0tZXhjbHVkZSBvcHRpb25zIHRoYXQgd2lsbCBmaWx0ZXIgb3V0IGNvbnRyb2wgIgorImZpbGVzIGFuZCBkaXJlY3RvcmllcyBvZiB0aGUgbW9zdCBjb21tb24gcmV2aXNpb24gY29udHJvbCBzeXN0ZW1zLCBiYWNrdXAgIgorImFuZCBzd2FwIGZpbGVzIGFuZCBMaWJ0b29sIGJ1aWxkIG91dHB1dCBkaXJlY3Rvcmllcy4iCittc2dzdHIgIiIKKyJCPC1JPiBmw7xndCBzdGFuZGFyZG3DpMOfaWcgdm9uIHNlbGJzdCAtLWV4Y2x1ZGUtT3B0aW9uZW4gaGluenUsIGRpZSBkaWUgIgorIlN0ZXVlcmRhdGVpZW4gdW5kIC1WZXJ6ZWljaG5pc3NlIGRlciBow6R1Zmlnc3RlbiBSZXZpc2lvbnNrb250cm9sbHN5c3RlbWUsICIKKyJCYWNrdXBzLCBTd2FwLURhdGVpZW4gdW5kIEJhdS1BdXNnYWJldmVyemVpY2huaXNzZSB2b24gTGlidG9vbCBoZXJhdXNmaWx0ZXJuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToyMTIKK21zZ2lkICIiCisiQjxOb3RlOj4gV2hpbGUgdGhleSBoYXZlIHNpbWlsYXIgcHVycG9zZXMsIEI8LWk+IGFuZCBCPC1JPiBoYXZlIHZlcnkgIgorImRpZmZlcmVudCBzeW50YXggYW5kIHNlbWFudGljcy4gQjwtaT4gY2FuIG9ubHkgYmUgc3BlY2lmaWVkIG9uY2UgYW5kIHRha2VzIGEgIgorInBlcmwgY29tcGF0aWJsZSByZWd1bGFyIGV4cHJlc3Npb24gd2hpY2ggaXMgbWF0Y2hlZCBhZ2FpbnN0IHRoZSBmdWxsICIKKyJyZWxhdGl2ZSBwYXRoIG9mIGVhY2ggZmlsZS4gQjwtST4gY2FuIHNwZWNpZmllZCBtdWx0aXBsZSB0aW1lcyBhbmQgdGFrZXMgYSAiCisiZmlsZW5hbWUgcGF0dGVybiB3aXRoIHNoZWxsIHdpbGRjYXJkcy4gIFRoZSBwYXR0ZXJuIGlzIGFwcGxpZWQgdG8gdGhlIGZ1bGwgIgorInJlbGF0aXZlIHBhdGggYnV0IGFsc28gdG8gZWFjaCBwYXJ0IG9mIHRoZSBwYXRoIGluZGl2aWR1YWxseS4gVGhlIGV4YWN0ICIKKyJzZW1hbnRpYyBvZiB0YXIncyAtLWV4Y2x1ZGUgb3B0aW9uIGlzIHNvbWV3aGF0IGNvbXBsaWNhdGVkLCBzZWUgaHR0cDovL3d3dy4iCisiZ251Lm9yZy9zb2Z0d2FyZS90YXIvbWFudWFsL3Rhci5odG1sI3dpbGRjYXJkcyBmb3IgYSBmdWxsIGRvY3VtZW50YXRpb24uIgorbXNnc3RyICIiCisiQjxIaW53ZWlzOj4gT2J3b2hsIHNpZSDDpGhubGljaGUgWndlY2tlIHZlcmZvbGdlbiwgaGFiZW4gQjwtaT4gdW5kIEI8LUk+IGVpbmUgIgorInNlaHIgdmVyc2NoaWVkZW5lIFN5bnRheCB1bmQgU2VtYW50aWsuIEI8LWk+IGthbm4gbnVyIGVpbm1hbCBhbmdlZ2ViZW4gIgorIndlcmRlbiB1bmQgbmltbXQgZWluZW4gcmVndWzDpHJlbiBQZXJsYXVzZHJ1Y2sgYW4sIGRlciBnZWdlbiBkZW4gdm9sbGVuICIKKyJyZWxhdGl2ZW4gUGZhZCBqZWRlciBEYXRlaSBnZXByw7xmdCB3aXJkLiBCPC1JPiBrYW5uIG1laHJmYWNoIGFuZ2VnZWJlbiAiCisid2VyZGVuIHVuZCBuaW1tdCBlaW4gRGF0ZWluYW1lbi1NdXN0ZXIgbWl0IFNoZWxsLUpva2VyemVpY2hlbiBhbi4gRGFzIE11c3RlciAiCisid2lyZCBnZWdlbiBkZW4gdm9sbGVuIHJlbGF0aXZlbiBQZmFkIGFiZXIgYXVjaCBpbmRpdmlkdWVsbCBnZWdlbiBqZWRlbiBUZWlsICIKKyJkZXMgUGZhZGVzIGFuZ2V3ZW5kZXQuIERpZSBleGFrdGUgU3ltYW50aWsgZGVyIE9wdGlvbiAtLWV4Y2x1ZGUgaXN0IGV0d2FzICIKKyJrb21wbGl6aWVydCwgbGVzZW4gU2llIGh0dHA6Ly93d3cuZ251Lm9yZy9zb2Z0d2FyZS90YXIvbWFudWFsL3Rhci4iCisiaHRtbCN3aWxkY2FyZHMgZsO8ciBlaW5lIGtvbXBsZXR0ZSBEb2t1bWVudGF0aW9uLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToyMTUKK21zZ2lkICIiCisiVGhlIGRlZmF1bHQgcmVnZXhwIGFuZCBwYXR0ZXJucyBmb3IgYm90aCBvcHRpb25zIGNhbiBiZSBzZWVuIGluIHRoZSBvdXRwdXQgIgorIm9mIHRoZSBCPC0taGVscD4gY29tbWFuZC4iCittc2dzdHIgIiIKKyJEZXIgdm9yZWluZ2VzdGVsbHRlIHJlZ3Vsw6RyZSBBdXNkcnVjayB1bmQgTXVzdGVyIGbDvHIgYmVpZGUgT3B0aW9uZW4ga8O2bm5lbiAiCisiaW4gZGVyIEF1c2dhYmUgZGVzIEJlZmVobHMgQjwtLWhlbHA+IGdlc2VoZW4gd2VyZGVuLiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctc291cmNlLjE6MjE1CisjLCBuby13cmFwCittc2dpZCAiR0VORVJJQyBFWFRSQUNUIE9QVElPTlMiCittc2dzdHIgIkdFTkVSSVNDSEUgRVhUUkFISUVSVU5HU09QVElPTkVOIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMToyMTYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tbm8tY29weT4iCittc2dzdHIgIkI8LS1uby1jb3B5PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToyMTkKK21zZ2lkICJEbyBub3QgY29weSBvcmlnaW5hbCB0YXJiYWxscyBuZWFyIHRoZSBleHRyYWN0ZWQgc291cmNlIHBhY2thZ2UuIgorbXNnc3RyICIiCisiS29waWVyZSBkaWUgT3JpZ2luYWwtVGFyYsOkbGxlIGluIGRpZSBOw6RoZSBkZXMgZXh0cmFoaWVydGVuIFF1ZWxscGFrZXRzLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6MjE5CisjLCBuby13cmFwCittc2dpZCAiQjwtLW5vLWNoZWNrPiIKK21zZ3N0ciAiQjwtLW5vLWNoZWNrPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToyMjIKK21zZ2lkICJEbyBub3QgY2hlY2sgc2lnbmF0dXJlcyBhbmQgY2hlY2tzdW1zIGJlZm9yZSB1bnBhY2tpbmcuIgorbXNnc3RyICJQcsO8ZmUgU2lnbmF0dXJlbiB1bmQgUHLDvGZzdW1tZW4gdm9yIGRlbSBFbnRwYWNrZW4gbmljaHQuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMToyMjIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tcmVxdWlyZS12YWxpZC1zaWduYXR1cmU+IgorbXNnc3RyICJCPC0tcmVxdWlyZS12YWxpZC1zaWduYXR1cmU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjIzMAorbXNnaWQgIiIKKyJSZWZ1c2UgdG8gdW5wYWNrIHRoZSBzb3VyY2UgcGFja2FnZSBpZiBpdCBkb2Vzbid0IGNvbnRhaW4gYW4gT3BlblBHUCAiCisic2lnbmF0dXJlIHRoYXQgY2FuIGJlIHZlcmlmaWVkIGVpdGhlciB3aXRoIHRoZSB1c2VyJ3MgSTx0cnVzdGVka2V5cy5ncGc+ICIKKyJrZXlyaW5nLCBvbmUgb2YgdGhlIHZlbmRvci1zcGVjaWZpYyBrZXlyaW5ncywgb3Igb25lIG9mIHRoZSBvZmZpY2lhbCBEZWJpYW4gIgorImtleXJpbmdzIChJPC91c3Ivc2hhcmUva2V5cmluZ3MvZGViaWFuLWtleXJpbmcuZ3BnPiBhbmQgSTwvdXNyL3NoYXJlLyIKKyJrZXlyaW5ncy9kZWJpYW4tbWFpbnRhaW5lcnMuZ3BnPikuIgorbXNnc3RyICIiCisiRW50cGFja2VuIGRlcyBRdWVsbHBha2V0cyBhYmxlaG5lbiwgZmFsbHMgZXMga2VpbmUgT3BlblBHUC1TaWduYXR1ciBlbnRow6RsdCwgIgorImRpZSBlbnR3ZWRlciBtaXQgZGVtIEk8dHJ1c3RlZGtleXMuZ3BnPi1TY2hsw7xzc2VscmluZyBkZXMgQmVudXR6ZXJzLCBtaXQgIgorImVpbmVtIGRlciBTY2hsw7xzc2VscmluZ2VuIGRlcyBMaWVmZXJhbnRlbiBvZGVyIG1pdCBlaW5lbSBkZXIgb2ZmaXppZWxsZW4gIgorIkRlYmlhbi1TY2jDvHNzZWxyaW5nZSAoSTwvdXNyL3NoYXJlL2tleXJpbmdzL2RlYmlhbi1rZXlyaW5nLmdwZz4gdW5kIEk8L3Vzci8iCisic2hhcmUva2V5cmluZ3MvZGViaWFuLW1haW50YWluZXJzLmdwZz4pIMO8YmVycHLDvGZ0IHdlcmRlbiBrYW5uLiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctc291cmNlLjE6MjMxCisjLCBuby13cmFwCittc2dpZCAiU09VUkNFIFBBQ0tBR0UgRk9STUFUUyIKK21zZ3N0ciAiUVVFTExQQUtFVC1GT1JNQVRFIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjIzNgorbXNnaWQgIiIKKyJJZiB5b3UgZG9uJ3Qga25vdyB3aGF0IHNvdXJjZSBmb3JtYXQgdG8gdXNlLCB5b3Ugc2hvdWxkIHByb2JhYmx5IHBpY2sgZWl0aGVyICIKKyJcIjMuMCAocXVpbHQpXCIgb3IgXCIzLjAgKG5hdGl2ZSlcIi4gU2VlIGh0dHA6Ly93aWtpLmRlYmlhbi5vcmcvUHJvamVjdHMvIgorIkRlYlNyYzMuMCBmb3IgaW5mb3JtYXRpb24gb24gdGhlIGRlcGxveW1lbnQgb2YgdGhvc2UgZm9ybWF0cyB3aXRoaW4gRGViaWFuLiIKK21zZ3N0ciAiIgorIkZhbGxzIFNpZSBuaWNodCB3aXNzZW4sIHdlbGNoZXMgUXVlbGxmb3JtYXQgU2llIHZlcndlbmRlbiBzb2xsZW4sIHZlcndlbmRlbiAiCisiU2llIHdhaHJzY2hlaW5saWNoIGFtIGJlc3RlbiBlbnR3ZWRlciDCuzMuMCAocXVpbHQpwqsgb2RlciDCuzMuMCAobmF0aXZlKcKrLiAiCisiTGVzZW4gU2llIGh0dHA6Ly93aWtpLmRlYmlhbi5vcmcvUHJvamVjdHMvRGViU3JjMy4wIGbDvHIgSW5mb3JtYXRpb25lbiDDvGJlciAiCisiZGVuIEVpbnNhdHogZGllc2VyIEZvcm1hdGUgaW5uZXJoYWxiIHZvbiBEZWJpYW4uIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMToyMzcKKyMsIG5vLXdyYXAKK21zZ2lkICJGb3JtYXQ6IDEuMCIKK21zZ3N0ciAiRm9ybWF0OiAxLjAiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MjQxCittc2dpZCAiIgorIkEgc291cmNlIHBhY2thZ2UgaW4gdGhpcyBmb3JtYXQgY29uc2lzdHMgZWl0aGVyIG9mIGEgQjwub3JpZy50YXIuZ3o+ICIKKyJhc3NvY2lhdGVkIHRvIGEgQjwuZGlmZi5nej4gb3IgYSBzaW5nbGUgQjwudGFyLmd6PiAoaW4gdGhhdCBjYXNlIHRoZSBwYWNrYWdlICIKKyJpcyBzYWlkIHRvIGJlIEk8bmF0aXZlPikuIgorbXNnc3RyICIiCisiRWluIFF1ZWxscGFrZXQgaW4gZGllc2VtIEZvcm1hdCBiZXN0ZWh0IGVudHdlZGVyIGF1cyBlaW5lbSBCPC5vcmlnLnRhci5nej4gIgorIm1pdCB6dWdlaMO2cmlnZW0gQjwuZGlmZi5nej4gb2RlciBlaW5lbSBlaW56ZWxuZW4gQjwudGFyLmd6PiAoaW4gZGllc2VtIEZhbGwgIgorIndpcmQgZGFzIFBha2V0IGFscyBJPG5hdGl2PiBiZXplaWNobmV0KS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MjQzIGRwa2ctc291cmNlLjE6NDExIGRwa2ctc291cmNlLjE6NTg2IGRwa2ctc291cmNlLjE6NjI1Cittc2dpZCAiQjxFeHRyYWN0aW5nPiIKK21zZ3N0ciAiQjxFeHRyYWhpZXJlbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MjUzCittc2dpZCAiIgorIkV4dHJhY3RpbmcgYSBuYXRpdmUgcGFja2FnZSBpcyBhIHNpbXBsZSBleHRyYWN0aW9uIG9mIHRoZSBzaW5nbGUgdGFyYmFsbCBpbiAiCisidGhlIHRhcmdldCBkaXJlY3RvcnkuIEV4dHJhY3RpbmcgYSBub24tbmF0aXZlIHBhY2thZ2UgaXMgZG9uZSBieSBmaXJzdCAiCisidW5wYWNraW5nIHRoZSBCPC5vcmlnLnRhci5nej4gYW5kIHRoZW4gYXBwbHlpbmcgdGhlIHBhdGNoIGNvbnRhaW5lZCBpbiB0aGUgIgorIkI8LmRpZmYuZ3o+IGZpbGUuIFRoZSB0aW1lc3RhbXAgb2YgYWxsIHBhdGNoZWQgZmlsZXMgaXMgcmVzZXQgdG8gdGhlICIKKyJleHRyYWN0aW9uIHRpbWUgb2YgdGhlIHNvdXJjZSBwYWNrYWdlICh0aGlzIGF2b2lkcyB0aW1lc3RhbXAgc2tld3MgbGVhZGluZyAiCisidG8gcHJvYmxlbXMgd2hlbiBhdXRvZ2VuZXJhdGVkIGZpbGVzIGFyZSBwYXRjaGVkKS4gVGhlIGRpZmYgY2FuIGNyZWF0ZSBuZXcgIgorImZpbGVzICh0aGUgd2hvbGUgZGViaWFuIGRpcmVjdG9yeSBpcyBjcmVhdGVkIHRoYXQgd2F5KSBidXQgY2FuJ3QgcmVtb3ZlICIKKyJmaWxlcyAoZW1wdHkgZmlsZXMgd2lsbCBiZSBsZWZ0IG92ZXIpLiIKK21zZ3N0ciAiIgorIkV4dHJhaGllcmVuIGVpbmVzIG5hdGl2ZW4gUGFrZXRzIGlzdCBlaW4gZWluZmFjaGVzIEV4dHJhaGllcmVuIGVpbmVzICIKKyJlaW56ZWxuZW4gVGFyYmFsbHMgaW4gZGFzIFppZWx2ZXJ6ZWljaG5pcy4gRXh0cmFoaWVyZW4gZWluZXMgbmljaHQtbmF0aXZlbiAiCisiUGFrZXRzIGVyZm9sZ3QgenVlcnN0IGR1cmNoIEVudHBhY2tlbiBkZXMgQjwub3JpZy50YXIuZ3o+IHVuZCBkYW5uIGR1cmNoICIKKyJBbndlbmR1bmcgZGVzIFBhdGNoZXMgYXVzIGRlciBCPC5kaWZmLmd6Pi1EYXRlaS4gRGVyIFplaXRzdGVtcGVsIGFsbGVyICIKKyJnZXBhdGNodGVuIERhdGVpZW4gd2lyZCBhdWYgZGVuIFplaXRwdW5rdCBkZXIgRXh0cmFoaWVydW5nIGRlcyBRdWVsbHBha2V0cyAiCisienVyw7xja2dlc2V0enQgKGRhcyB2ZXJtZWlkZXQgWmVpdHN0ZW1wZWx2ZXJzw6R0emUsIGRpZSB6dSBQcm9ibGVtZW4gZsO8aHJlbiwgIgorIndlbm4gYXV0b2dlbmVyaWVydGUgRGF0ZWllbiBnZXBhdGNodCB3ZXJkZW4pLiBEZXIgRGlmZiBrYW5uIG5ldWUgRGF0ZWllbiAiCisiYW5sZWdlbiAoZGFzIGdlc2FtdGUgRGViaWFuLVZlcnplaWNobmlzIHdpcmQgYXVmIGRpZXNlIFdlaXNlIGVyc3RlbGx0KSwga2FubiAiCisiYWJlciBrZWluZSBEYXRlaWVuIGVudGZlcm5lbiAobGVlcmUgRGF0ZWllbiBibGVpYmVuIHp1csO8Y2spLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToyNTUgZHBrZy1zb3VyY2UuMTo0MzkgZHBrZy1zb3VyY2UuMTo1OTcgZHBrZy1zb3VyY2UuMTo2MzAKK21zZ2lkICJCPEJ1aWxkaW5nPiIKK21zZ3N0ciAiQjxCYXVlbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MjYxCittc2dpZCAiIgorIkJ1aWxkaW5nIGEgbmF0aXZlIHBhY2thZ2UgaXMganVzdCBjcmVhdGluZyBhIHNpbmdsZSB0YXJiYWxsIHdpdGggdGhlIHNvdXJjZSAiCisiZGlyZWN0b3J5LiBCdWlsZGluZyBhIG5vbi1uYXRpdmUgcGFja2FnZSBpbnZvbHZlcyBleHRyYWN0aW5nIHRoZSBvcmlnaW5hbCAiCisidGFyYmFsbCBpbiBhIHNlcGFyYXRlIFwiLm9yaWdcIiBkaXJlY3RvcnkgYW5kIHJlZ2VuZXJhdGluZyB0aGUgQjwuZGlmZi5nej4gIgorImJ5IGNvbXBhcmluZyB0aGUgc291cmNlIHBhY2thZ2UgSTxkaXJlY3Rvcnk+IHdpdGggdGhlIC5vcmlnIGRpcmVjdG9yeS4iCittc2dzdHIgIiIKKyJCYXVlbiBlaW5lcyBuYXRpdmVuIFBha2V0IGJlc3RlaHQgbnVyIGF1cyBkZW0gRXJzdGVsbGVuIGVpbmVzIGVpbnppZ2VuICIKKyJUYXJiYWxscyBtaXQgZGVtIFF1ZWxsdmVyemVpY2huaXMuIEJhdWVuIGVpbmVzIG5pY2h0LW5hdGl2ZW4gUGFrZXRzIHNjaGxpZcOfdCAiCisiZGFzIEV4dHJhaGllcmVuIGRlcyBPcmlnaW5hbC1UYXJiYWxscyBpbiBlaW4gc2VwYXJhdGVzIFZlcnplaWNobmlzIMK7Lm9yaWfCqyAiCisidW5kIGRpZSBOZXVlcnN0ZWxsdW5nIGRlcyBCPC5kaWZmLmd6PiBkdXJjaCBWZXJnbGVpY2ggZGVzIFF1ZWxscGFrZXQtIgorIkk8VmVyemVpY2huaXNzZXM+IG1pdCBkZW0gVmVyemVpY2huaXMgLm9yaWcgZWluLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6MjYyCisjLCBuby13cmFwCittc2dpZCAiQjxCdWlsZCBvcHRpb25zICh3aXRoIC1iKTo+IgorbXNnc3RyICJCPEJhdS1PcHRpb25lbiAobWl0IC1iKTo+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjI3NQorbXNnaWQgIiIKKyJJZiBhIHNlY29uZCBub24tb3B0aW9uIGFyZ3VtZW50IGlzIHN1cHBsaWVkIGl0IHNob3VsZCBiZSB0aGUgbmFtZSBvZiB0aGUgIgorIm9yaWdpbmFsIHNvdXJjZSBkaXJlY3Rvcnkgb3IgdGFyZmlsZSBvciB0aGUgZW1wdHkgc3RyaW5nIGlmIHRoZSBwYWNrYWdlIGlzIGEgIgorIkRlYmlhbi1zcGVjaWZpYyBvbmUgYW5kIHNvIGhhcyBubyBEZWJpYW5pc2F0aW9uIGRpZmZzLiBJZiBubyBzZWNvbmQgYXJndW1lbnQgIgorImlzIHN1cHBsaWVkIHRoZW4gQjxkcGtnLXNvdXJjZT4gd2lsbCBsb29rIGZvciB0aGUgb3JpZ2luYWwgc291cmNlIHRhcmZpbGUgIgorIkk8cGFja2FnZT5CPF8+STx1cHN0cmVhbS12ZXJzaW9uPkI8Lm9yaWcudGFyLmd6PiBvciB0aGUgb3JpZ2luYWwgc291cmNlICIKKyJkaXJlY3RvcnkgSTxkaXJlY3Rvcnk+Qjwub3JpZz4gZGVwZW5kaW5nIG9uIHRoZSBCPC1zWD4gYXJndW1lbnRzLiIKK21zZ3N0ciAiIgorIkZhbGxzIGVpbiB6d2VpdGVzIG5pY2h0LU9wdGlvbnMtQXJndW1lbnQgYW5nZWdlYmVuIGlzdCwgc29sbHRlIGVzIGRlciBOYW1lbiAiCisiZGVzIE9yaWdpbmFscXVlbGx2ZXJ6ZWljaG5pc3NlcyBvZGVyIGRlciBUYXJkYXRlaSBzZWluLiBGYWxscyBkYXMgUGFrZXQgIgorIkRlYmlhbi1zcGV6aWZpc2NoIGlzdCwgZGFubiBzb2xsdGUgZGllc2VzIEFyZ3VtZW50IGRpZSBsZWVyZSBaZWljaGVua2V0dGUgIgorInNlaW4sIGRhIGVzIGtlaW4gRGViaWFuaXNpZXJ1bmdzLURpZmYgZ2lidC4gRmFsbHMga2VpbiB6d2VpdGVzIEFyZ3VtZW50ICIKKyLDvGJlcmdlYmVuIHdpcmQsIGRhbm4gc2NoYXV0IEI8ZHBrZy1zb3VyY2U+IG5hY2ggZGVyIHVyc3Byw7xuZ2xpY2hlbiBUYXJkYXRlaSAiCisiSTxQYWtldD5CPF8+STxVcHN0cmVhbS1WZXJzaW9uPkI8Lm9yaWcudGFyLj5JPEVyd2VpdGVydW5nPiBvZGVyIGRlbSAiCisidXJzcHLDvG5nbGljaGVuIFF1ZWxsdmVyemVpY2huaXMgSTxWZXJ6ZWljaG5pcz5CPC5vcmlnPiwgYWJow6RuZ2lnIHZvbiBkZW4gQjwtIgorInNYPi1Bcmd1bWVudGVuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToyODEKK21zZ2lkICIiCisiQjwtc2E+LCBCPC1zcD4sIEI8LXNrPiwgQjwtc3U+IGFuZCBCPC1zcj4gd2lsbCBub3Qgb3ZlcndyaXRlIGV4aXN0aW5nICIKKyJ0YXJmaWxlcyBvciBkaXJlY3Rvcmllcy4gSWYgdGhpcyBpcyBkZXNpcmVkIHRoZW4gQjwtc0E+LCBCPC1zUD4sIEI8LXNLPiwgQjwtIgorInNVPiBhbmQgQjwtc1I+IHNob3VsZCBiZSB1c2VkIGluc3RlYWQuIgorbXNnc3RyICIiCisiQjwtc2E+LCBCPC1zcD4sIEI8LXNrPiwgQjwtc3U+IHVuZCBCPC1zcj4gd2VyZGVuIGtlaW5lIGV4aXN0aWVyZW5kZW4gIgorIlRhcmRhdGVpZW4gb2RlciBWZXJ6ZWljaG5pc3NlIMO8YmVyc2NocmVpYmVuLiBGYWxscyBkaWVzIGdld8O8bnNjaHQgaXN0LCAiCisic29sbHRlbiBzdGF0dGRlc3NlbiBCPC1zQT4sIEI8LXNQPiwgQjwtc0s+LCBCPC1zVT4gdW5kIEI8LXNSPiB2ZXJ3ZW5kZXQgIgorIndlcmRlbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjI4MQorIywgbm8td3JhcAorbXNnaWQgIkI8LXNrPiIKK21zZ3N0ciAiQjwtc2s+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjI5MAorbXNnaWQgIiIKKyJTcGVjaWZpZXMgdG8gZXhwZWN0IHRoZSBvcmlnaW5hbCBzb3VyY2UgYXMgYSB0YXJmaWxlLCBieSBkZWZhdWx0ICIKKyJJPHBhY2thZ2U+QjxfPkk8dXBzdHJlYW0tdmVyc2lvbj5CPC5vcmlnLnRhci4+STxleHRlbnNpb24+LiAgSXQgd2lsbCBsZWF2ZSAiCisidGhpcyBvcmlnaW5hbCBzb3VyY2UgaW4gcGxhY2UgYXMgYSB0YXJmaWxlLCBvciBjb3B5IGl0IHRvIHRoZSBjdXJyZW50ICIKKyJkaXJlY3RvcnkgaWYgaXQgaXNuJ3QgYWxyZWFkeSB0aGVyZS4gVGhlIHRhcmJhbGwgd2lsbCBiZSB1bnBhY2tlZCBpbnRvICIKKyJJPGRpcmVjdG9yeT5CPC5vcmlnPiBmb3IgdGhlIGdlbmVyYXRpb24gb2YgdGhlIGRpZmYuIgorbXNnc3RyICIiCisiR2lidCBhbiwgZGFzcyBkaWUgT3JpZ2luYWxxdWVsbGVuIGFscyBUYXJkYXRlaSBlcndhcnRldCB3ZXJkZW4gc29sbGVuLCAiCisic3RhbmRhcmRtw6TDn2lnIEk8UGFrZXQ+QjxfPkk8VXJzcHJ1bmdzdmVyc2lvbj5CPC5vcmlnLnRhcj5JPEVyd2VpdGVydW5nPi4gRXMgIgorIndpcmQgZGllc2UgT3JpZ2luYWxxdWVsbGVuIGFscyBUYXJkYXRlaSBhbSBQbGF0eiBiZWxhc3Nlbiwgb2RlciBzaWUgaW4gZGFzICIKKyJha3R1ZWxsZSBWZXJ6ZWljaG5pcyBrb3BpZXJlbiwgZmFsbHMgc2llIGRvcnQgbm9jaCBuaWNodCBzaW5kLiBEZXIgVGFyYmFsbCAiCisid2lyZCBuYWNoIEk8VmVyemVpY2huaXM+Qjwub3JpZz4gZsO8ciBkaWUgRXJzdGVsbHVuZyBkZXMgRGlmZnMgZW50cGFja3QuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMToyOTAgZHBrZy1zb3VyY2UuMTozNTkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1zcD4iCittc2dzdHIgIkI8LXNwPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToyOTUKK21zZ2lkICJMaWtlIEI8LXNrPiBidXQgd2lsbCByZW1vdmUgdGhlIGRpcmVjdG9yeSBhZ2FpbiBhZnRlcndhcmRzLiIKK21zZ3N0ciAiV2llIEI8LXNrPiwgYWJlciBkYXMgVmVyemVpY2huaXMgd2lyZCBkYW5hY2ggZW50ZmVybnQuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMToyOTUgZHBrZy1zb3VyY2UuMTozNjUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1zdT4iCittc2dzdHIgIkI8LXN1PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTozMDMKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRoYXQgdGhlIG9yaWdpbmFsIHNvdXJjZSBpcyBleHBlY3RlZCBhcyBhIGRpcmVjdG9yeSwgYnkgZGVmYXVsdCAiCisiSTxwYWNrYWdlPkI8LT5JPHVwc3RyZWFtLXZlcnNpb24+Qjwub3JpZz4gYW5kIEI8ZHBrZy1zb3VyY2U+IHdpbGwgY3JlYXRlIGEgIgorIm5ldyBvcmlnaW5hbCBzb3VyY2UgYXJjaGl2ZSBmcm9tIGl0LiIKK21zZ3N0ciAiIgorIkdpYnQgYW4sIGRhc3MgZGllIE9yaWdpbmFscXVlbGxlbiBhbHMgVmVyemVpY2huaXMgZXJ3YXJ0ZXQgd2VyZGVuLCAiCisic3RhbmRhcmRtw6TDn2lnIEk8UGFrZXQ+QjwtPkk8VXJzcHJ1bmdzdmVyc2lvbj5CPC5vcmlnPi4gQjxkcGtnLXNvdXJjZT4gd2lyZCAiCisiZGFyYXVzIGVpbiBuZXVlcyBPcmlnaW5hbC1RdWVsbGFyY2hpdiBlcnN0ZWxsZW4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTozMDMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1zcj4iCittc2dzdHIgIkI8LXNyPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTozMDgKK21zZ2lkICJMaWtlIEI8LXN1PiBidXQgd2lsbCByZW1vdmUgdGhhdCBkaXJlY3RvcnkgYWZ0ZXIgaXQgaGFzIGJlZW4gdXNlZC4iCittc2dzdHIgIldpZSBCPC1zdT4sIGFiZXIgZGFzIFZlcnplaWNobmlzIHdpcmQgbmFjaCBkZXIgVmVyd2VuZHVuZyBlbnRmZXJudC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjMwOAorIywgbm8td3JhcAorbXNnaWQgIkI8LXNzPiIKK21zZ3N0ciAiQjwtc3M+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjMxNgorbXNnaWQgIiIKKyJTcGVjaWZpZXMgdGhhdCB0aGUgb3JpZ2luYWwgc291cmNlIGlzIGF2YWlsYWJsZSBib3RoIGFzIGEgZGlyZWN0b3J5IGFuZCBhcyBhICIKKyJ0YXJmaWxlLiBkcGtnLXNvdXJjZSB3aWxsIHVzZSB0aGUgZGlyZWN0b3J5IHRvIGNyZWF0ZSB0aGUgZGlmZiwgYnV0IHRoZSAiCisidGFyZmlsZSB0byBjcmVhdGUgdGhlIEI8LmRzYz4uICBUaGlzIG9wdGlvbiBtdXN0IGJlIHVzZWQgd2l0aCBjYXJlIC0gaWYgdGhlICIKKyJkaXJlY3RvcnkgYW5kIHRhcmZpbGUgZG8gbm90IG1hdGNoIGEgYmFkIHNvdXJjZSBhcmNoaXZlIHdpbGwgYmUgZ2VuZXJhdGVkLiIKK21zZ3N0ciAiIgorIkdpYnQgYW4sIGRhc3MgZGllIE9yaWdpbmFscXVlbGxlbiBzb3dvaGwgYWxzIFZlcnplaWNobmlzIGFscyBhdWNoIGFscyAiCisiVGFyZGF0ZWkgdmVyZsO8Z2JhciBzaW5kLiBkcGtnLXNvdXJjZSB3aXJkIGRhcyBWZXJ6ZWljaG5pcyB6dXIgRXJzdGVsbHVuZyBkZXMgIgorIkRpZmZzIHZlcndlbmRlbiwgYWJlciBkaWUgVGFyZGF0ZWkgZsO8ciBkaWUgQjwuZHNjPi4gRGllc2UgT3B0aW9uIG11c3MgbWl0ICIKKyJWb3JzaWNodCB2ZXJ3ZW5kZXQgd2VyZGVuIC0gZmFsbHMgZGFzIFZlcnplaWNobmlzIHVuZCBkaWUgVGFyZGF0ZWkgbmljaHQgIgorInp1c2FtbWVuIHBhc3Nlbiwgd2lyZCBlaW4gZmVobGVyaGFmdGVzIFF1ZWxsYXJjaGl2IGVyc3RlbGx0LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6MzE2IGRwa2ctc291cmNlLjE6MzY4CisjLCBuby13cmFwCittc2dpZCAiQjwtc24+IgorbXNnc3RyICJCPC1zbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MzIyCittc2dpZCAiIgorIlNwZWNpZmllcyB0byBub3QgbG9vayBmb3IgYW55IG9yaWdpbmFsIHNvdXJjZSwgYW5kIHRvIG5vdCBnZW5lcmF0ZSBhIGRpZmYuICAiCisiVGhlIHNlY29uZCBhcmd1bWVudCwgaWYgc3VwcGxpZWQsIG11c3QgYmUgdGhlIGVtcHR5IHN0cmluZy4gVGhpcyBpcyB1c2VkIGZvciAiCisiRGViaWFuLXNwZWNpZmljIHBhY2thZ2VzIHdoaWNoIGRvIG5vdCBoYXZlIGEgc2VwYXJhdGUgdXBzdHJlYW0gc291cmNlIGFuZCAiCisidGhlcmVmb3JlIGhhdmUgbm8gZGViaWFuaXNhdGlvbiBkaWZmcy4iCittc2dzdHIgIiIKKyJHaWJ0IGFuLCBkYXNzIG5pY2h0IG5hY2ggT3JpZ2luYWxxdWVsbGVuIGdlc2NoYXV0IHVuZCBrZWluIERpZmYgZXJzdGVsbHQgIgorIndlcmRlbiBzb2xsLiBEYXMgendlaXRlIEFyZ3VtZW50LCBmYWxscyBhbmdlZ2ViZW4sIG11c3MgZGllIGxlZXJlICIKKyJaZWljaGVua2V0dGUgc2Vpbi4gRGllcyB3aXJkIGbDvHIgRGViaWFuLXNwZXppZmlzY2hlIFBha2V0ZSB2ZXJ3ZW5kZXQsIGRpZSAiCisia2VpbmUgUXVlbGxlbiB2b24gT3JpZ2luYWxhdXRvcmVuIHVuZCBzb21pdCBrZWluIERlYmlhbmlzaWVydW5ncy1EaWZmIGhhYmVuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6MzIyCisjLCBuby13cmFwCittc2dpZCAiQjwtc2E+IG9yIEI8LXNBPiIKK21zZ3N0ciAiQjwtc2E+IG9kZXIgQjwtc0E+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjM0OAorbXNnaWQgIiIKKyJTcGVjaWZpZXMgdG8gbG9vayBmb3IgdGhlIG9yaWdpbmFsIHNvdXJjZSBhcmNoaXZlIGFzIGEgdGFyZmlsZSBvciBhcyBhICIKKyJkaXJlY3RvcnkgLSB0aGUgc2Vjb25kIGFyZ3VtZW50LCBpZiBhbnksIG1heSBiZSBlaXRoZXIsIG9yIHRoZSBlbXB0eSBzdHJpbmcgIgorIih0aGlzIGlzIGVxdWl2YWxlbnQgdG8gdXNpbmcgQjwtc24+KS4gIElmIGEgdGFyZmlsZSBpcyBmb3VuZCBpdCB3aWxsIHVucGFjayAiCisiaXQgdG8gY3JlYXRlIHRoZSBkaWZmIGFuZCByZW1vdmUgaXQgYWZ0ZXJ3YXJkcyAodGhpcyBpcyBlcXVpdmFsZW50IHRvIEI8LSIKKyJzcD4pOyBpZiBhIGRpcmVjdG9yeSBpcyBmb3VuZCBpdCB3aWxsIHBhY2sgaXQgdG8gY3JlYXRlIHRoZSBvcmlnaW5hbCBzb3VyY2UgIgorImFuZCByZW1vdmUgaXQgYWZ0ZXJ3YXJkcyAodGhpcyBpcyBlcXVpdmFsZW50IHRvIEI8LXNyPik7IGlmIG5laXRoZXIgaXMgZm91bmQgIgorIml0IHdpbGwgYXNzdW1lIHRoYXQgdGhlIHBhY2thZ2UgaGFzIG5vIGRlYmlhbmlzYXRpb24gZGlmZnMsIG9ubHkgYSAiCisic3RyYWlnaHRmb3J3YXJkIHNvdXJjZSBhcmNoaXZlICh0aGlzIGlzIGVxdWl2YWxlbnQgdG8gQjwtc24+KS4gIElmIGJvdGggYXJlICIKKyJmb3VuZCB0aGVuIEI8ZHBrZy1zb3VyY2U+IHdpbGwgaWdub3JlIHRoZSBkaXJlY3RvcnksIG92ZXJ3cml0aW5nIGl0LCBpZiBCPC0iCisic0E+IHdhcyBzcGVjaWZpZWQgKHRoaXMgaXMgZXF1aXZhbGVudCB0byBCPC1zUD4pICBvciByYWlzZSBhbiBlcnJvciBpZiBCPC0iCisic2E+IHdhcyBzcGVjaWZpZWQuICBCPC1zQT4gaXMgdGhlIGRlZmF1bHQuIgorbXNnc3RyICIiCisiR2lidCBhbiwgZGFzcyBuYWNoIGRlbSBPcmlnaW5hbC1RdWVsbGFyY2hpdiBhbHMgVGFyZGF0ZWkgb2RlciBhbHMgIgorIlZlcnplaWNobmlzIGdlc3VjaHQgd2VyZGVuIHNvbGwgLSBkYXMgendlaXRlIEFyZ3VtZW50LCBmYWxscyB2b3JoYW5kZW4sIGthbm4gIgorImVpbmVzIHZvbiBiZWlkZW4gc2Vpbiwgb2RlciBkaWUgbGVlcmUgWmVpY2hlbmtldHRlIChkaWVzIGlzdCDDpHF1aXZhbGVudCB6dXIgIgorIlZlcndlbmR1bmcgdm9uIEI8LXNuPikuIEZhbGxzIGVpbmUgVGFyZGF0ZWkgZ2VmdW5kZW4gd2lyZCwgd2lyZCBkaWVzZSB6dXIgIgorIkVyc3RlbGx1bmcgZWluZXMgRGlmZnMgZW50cGFja3QgdW5kIGRhbmFjaCBlbnRmZXJudCAoZGllcyBpc3Qgw6RxdWl2YWxlbnQgenUgIgorIkI8LXNwPik7IGZhbGxzIGVpbiBWZXJ6ZWljaG5pcyBnZWZ1bmRlbiB3aXJkLCB3aXJkIGRpZXNlcyBnZXBhY2t0LCB1bSBkaWUgIgorIk9yaWdpbmFscXVlbGxlbiB6dSBlcnN0ZWxsZW4gdW5kIGRhbmFjaCBlbnRmZXJudCAoZGllcyBpc3Qgw6RxdWl2YWxlbnQgenUgQjwtIgorInNyPik7IGZhbGxzIGtlaW5lcyB2b24gYmVpZGVuIGdlZnVuZGVuIHdpcmQsIHdpcmQgYW5nZW5vbW1lbiwgZGFzcyBkYXMgUGFrZXQgIgorImtlaW4gRGViaWFuaXNpZXJ1bmdzLURpZmYgc29uZGVybiBudXIgZWluIGRpcmVrdGVzIFF1ZWxsYXJjaGl2IChkaWVzIGlzdCAiCisiw6RxdWl2YWxlbnQgenUgQjwtc24+KS4gRmFsbHMgc293b2hsIGVpbiBWZXJ6ZWljaG5pcyBhbHMgYXVjaCBlaW5lIFRhci1EYXRlaSAiCisiZ2VmdW5kZW4gd2VyZGVuLCBkYW5uIGlnbm9yaWVydCBCPGRwa2ctc291cmNlPiBkYXMgVmVyemVpY2huaXMsIHVuZCAiCisiw7xiZXJzY2hyZWlidCBlcywgZmFsbHMgQjwtc0E+IGFuZ2VnZWJlbiB3dXJkZSAoZGllcyBpc3Qgw6RxdWl2YWxlbnQgenUgQjwtIgorInNQPikgb2RlciBsw7ZzdCBlaW5lbiBGZWhsZXIgYXVzLCBmYWxscyBCPC1zYT4gYW5nZWdlYmVuIHd1cmRlLiBCPC1zQT4gaXN0ICIKKyJkaWUgVm9yZWluc3RlbGx1bmcuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTozNDggZHBrZy1zb3VyY2UuMTo1NDEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tYWJvcnQtb24tdXBzdHJlYW0tY2hhbmdlcz4iCittc2dzdHIgIkI8LS1hYm9ydC1vbi11cHN0cmVhbS1jaGFuZ2VzPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTozNTQKK21zZ2lkICIiCisiVGhlIHByb2Nlc3MgZmFpbHMgaWYgdGhlIGdlbmVyYXRlZCBkaWZmIGNvbnRhaW5zIGNoYW5nZXMgdG8gZmlsZXMgb3V0c2lkZSBvZiAiCisidGhlIGRlYmlhbiBzdWItZGlyZWN0b3J5LiBUaGlzIG9wdGlvbiBpcyBub3QgYWxsb3dlZCBpbiBCPGRlYmlhbi9zb3VyY2UvIgorIm9wdGlvbnM+IGJ1dCBjYW4gYmUgdXNlZCBpbiBCPGRlYmlhbi9zb3VyY2UvbG9jYWwtb3B0aW9ucz4uIgorbXNnc3RyICIiCisiRGVyIFByb3plc3Mgc2NobMOkZ3QgZmVobCwgZmFsbHMgZGFzIGVyc3RlbGx0ZSBEaWZmIMOEbmRlcnVuZ2VuIGFuIERhdGVpZW4gIgorImF1w59lcmhhbGIgZGVzIFVudGVydmVyemVpY2huaXNzZXMgwrtkZWJpYW7CqyBlbnRow6RsdC4gRGllc2UgT3B0aW9uIGlzdCBpbiAiCisiQjxkZWJpYW4vc291cmNlL29wdGlvbnM+IG5pY2h0IGVybGF1YnQsIGthbm4gYWJlciBpbiBCPGRlYmlhbi9zb3VyY2UvbG9jYWwtIgorIm9wdGlvbnM+IHZlcndhbmR0IHdlcmRlbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjM1NQorIywgbm8td3JhcAorbXNnaWQgIkI8RXh0cmFjdCBvcHRpb25zICh3aXRoIC14KTo+IgorbXNnc3RyICJCPEV4dHJhaGllcnVuZ3MtT3B0aW9uZW4gKG1pdCAteCk6PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTozNTkKK21zZ2lkICJJbiBhbGwgY2FzZXMgYW55IGV4aXN0aW5nIG9yaWdpbmFsIHNvdXJjZSB0cmVlIHdpbGwgYmUgcmVtb3ZlZC4iCittc2dzdHIgIkluIGFsbGVuIEbDpGxsZW4gd2VyZGVuIGRpZSBPcmlnaW5hbHF1ZWxsYsOkdW1lIGVudGZlcm50LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTozNjUKK21zZ2lkICIiCisiVXNlZCB3aGVuIGV4dHJhY3RpbmcgdGhlbiB0aGUgb3JpZ2luYWwgc291cmNlIChpZiBhbnkpIHdpbGwgYmUgbGVmdCBhcyBhICIKKyJ0YXJmaWxlLiBJZiBpdCBpcyBub3QgYWxyZWFkeSBsb2NhdGVkIGluIHRoZSBjdXJyZW50IGRpcmVjdG9yeSBvciBpZiBhbiAiCisiZXhpc3RpbmcgYnV0IGRpZmZlcmVudCBmaWxlIGlzIHRoZXJlIGl0IHdpbGwgYmUgY29waWVkIHRoZXJlLiAgKEI8VGhpcyBpcyAiCisidGhlIGRlZmF1bHQ+KS4iCittc2dzdHIgIiIKKyJWZXJ3ZW5kZXQgYmVpbSBFeHRyYWhpZXJlbi4gRGllIE9yaWdpbmFscXVlbGxlbiAoZmFsbHMgdm9yaGFuZGVuKSB3ZXJkZW4gYWxzICIKKyJUYXItRGF0ZWkgYmVsYXNzZW4uIEZhbGxzIGRpZXNlIHNpY2ggbmljaHQgaW0gYWt0dWVsbGVuIFZlcnplaWNobmlzIGJlZmluZGVuICIKKyJvZGVyIGZhbGxzIGVpbmUgZXhpc3RpZXJlbmRlLCBhYmVyIGRhdm9uIHZlcnNjaGllZGVuZSBEYXRlaSBiZXJlaXRzICIKKyJ2b3JoYW5kZW4gaXN0LCB3aXJkIHNpZSBkb3J0IGhpbiBrb3BpZXJ0LiAoQjxEaWVzIGlzdCBkaWUgVm9yZWluc3RlbGx1bmcuPikiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MzY4Cittc2dpZCAiVW5wYWNrcyB0aGUgb3JpZ2luYWwgc291cmNlIHRyZWUuIgorbXNnc3RyICJFbnRwYWNrdCBkZW4gT3JpZ2luYWxxdWVsbGJhdW0uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjM3MworbXNnaWQgIiIKKyJFbnN1cmVzIHRoYXQgdGhlIG9yaWdpbmFsIHNvdXJjZSBpcyBuZWl0aGVyIGNvcGllZCB0byB0aGUgY3VycmVudCBkaXJlY3RvcnkgIgorIm5vciB1bnBhY2tlZC4gQW55IG9yaWdpbmFsIHNvdXJjZSB0cmVlIHRoYXQgd2FzIGluIHRoZSBjdXJyZW50IGRpcmVjdG9yeSBpcyAiCisic3RpbGwgcmVtb3ZlZC4iCittc2dzdHIgIiIKKyJTdGVsbHQgc2ljaGVyLCBkYXNzIGRpZSBPcmlnaW5hbHF1ZWxsZW4gd2VkZXIgaW4gZGFzIGFrdHVlbGxlIFZlcnplaWNobmlzICIKKyJrb3BpZXJ0IG5vY2ggZW50cGFja3Qgd2VyZGVuLiBKZWRlciBPcmlnaW5hbHF1ZWxsYmF1bSwgZGVyIGltIGFrdHVlbGxlbiAiCisiVmVyemVpY2huaXMgd2FyLCB3aXJkIGRlbm5vY2ggZW50ZmVybnQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjM3OAorbXNnaWQgIiIKKyJBbGwgdGhlIEI8LXM+STxYPiBvcHRpb25zIGFyZSBtdXR1YWxseSBleGNsdXNpdmUuIElmIHlvdSBzcGVjaWZ5IG1vcmUgdGhhbiAiCisib25lIG9ubHkgdGhlIGxhc3Qgb25lIHdpbGwgYmUgdXNlZC4iCittc2dzdHIgIiIKKyJBbGxlIEI8LXM+STxYPi1PcHRpb25lbiBzY2hsaWXDn2VuIHNpY2ggcGFhcndlaXNlIGF1cy4gRmFsbHMgU2llIG1laHIgYWxzICIKKyJlaW5lIGFuZ2ViZW4sIHdpcmQgbnVyIGRpZSBsZXR6dGUgdmVyd2VuZGV0LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6Mzc4IGRwa2ctc291cmNlLjE6NTU1CisjLCBuby13cmFwCittc2dpZCAiQjwtLXNraXAtZGViaWFuaXphdGlvbj4iCittc2dzdHIgIkI8LS1za2lwLWRlYmlhbml6YXRpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjM4MQorbXNnaWQgIlNraXBzIGFwcGxpY2F0aW9uIG9mIHRoZSBkZWJpYW4gZGlmZiBvbiB0b3Agb2YgdGhlIHVwc3RyZWFtIHNvdXJjZXMuIgorbXNnc3RyICIiCisiw5xiZXJzcHJpbmd0IGRpZSBBbndlbmR1bmcgZGVzIERlYmlhbi1EaWZmcyBhdWYgZGllIFF1ZWxsZW4gZGVyICIKKyJPcmlnaW5hbGF1dG9yZW4uIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTozODIKKyMsIG5vLXdyYXAKK21zZ2lkICJGb3JtYXQ6IDIuMCIKK21zZ3N0ciAiRm9ybWF0OiAyLjAiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6Mzg2Cittc2dpZCAiIgorIkFsc28ga25vd24gYXMgd2lnJnBlbi4gVGhpcyBmb3JtYXQgaXMgbm90IHJlY29tbWVuZGVkIGZvciB3aWRlLXNwcmVhZCB1c2FnZSwgIgorInRoZSBmb3JtYXQgXCIzLjAgKHF1aWx0KVwiIHJlcGxhY2VzIGl0LiBXaWcmcGVuIHdhcyB0aGUgZmlyc3Qgc3BlY2lmaWNhdGlvbiAiCisib2YgYSBuZXctZ2VuZXJhdGlvbiBzb3VyY2UgcGFja2FnZSBmb3JtYXQuIgorbXNnc3RyICIiCisiQXVjaCBhbHMgwrt3aWcmcGVuwqsgYmVrYW5udC4gRGllc2VzIEZvcm1hdCB3aXJkIG5pY2h0IGbDvHIgZGVuIGJyZWl0ZW4gRWluc2F0eiAiCisiZW1wZm9obGVuLCBlcyB3aXJkIGR1cmNoIGRhcyBGb3JtYXQgwrszLjAgKHF1aWx0KcKrIGVyc2V0enQuIFdpZyZwZW4gd2FyIGRpZSAiCisiZXJzdGUgU3BlemlmaWthdGlvbiBlaW5lcyBQYWtldGZvcm1hdHMgZGVyIG7DpGNoc3RlbiBHZW5lcmF0aW9uLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTozOTEKK21zZ2lkICIiCisiVGhlIGJlaGF2aW91ciBvZiB0aGlzIGZvcm1hdCBpcyB0aGUgc2FtZSBhcyB0aGUgXCIzLjAgKHF1aWx0KVwiIGZvcm1hdCAiCisiZXhjZXB0IHRoYXQgaXQgZG9lc24ndCB1c2UgYW4gZXhwbGljaXQgbGlzdCBvZiBwYXRjaGVzLiBBbGwgZmlsZXMgaW4gIgorIkI8ZGViaWFuL3BhdGNoZXMvPiBtYXRjaGluZyB0aGUgcGVybCByZWd1bGFyIGV4cHJlc3Npb24gQjxbXFxldy1dKz4gbXVzdCBiZSAiCisidmFsaWQgcGF0Y2hlczogdGhleSBhcmUgYXBwbGllZCBhdCBleHRyYWN0aW9uIHRpbWUuIgorbXNnc3RyICIiCisiRGFzIFZlcmhhbHRlbiBkaWVzZXMgRm9ybWF0cyBpc3QgaWRlbnRpc2NoIHp1bSBGb3JtYXQgwrszLjAgKHF1aWx0KcKrLCAiCisiYWJnZXNlaGVuIGRhdm9uLCBkYXNzIGVzIGtlaW5lIGV4cGxpeml0ZSBMaXN0ZSB2b24gUGF0Y2hlcyB2ZXJ3ZW5kZXQuIEFsbGUgIgorIkRhdGVpZW4gaW4gQjxkZWJpYW4vcGF0Y2hlcy8+LCBkaWUgYXVmIGRlbiByZWd1bMOkcmVuIFBlcmxhdXNkcnVjayBCPCIKKyJbXFxldy1dKz4gcGFzc2VuLCBtw7xzc2VuIGfDvGx0aWdlIFBhdGNoZXMgc2Vpbjogc2llIHdlcmRlbiB6dW0gWmVpdHB1bmt0IGRlciAiCisiRXh0cmFoaWVydW5nIGFuZ2V3YW5kdC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6Mzk0Cittc2dpZCAiIgorIldoZW4gYnVpbGRpbmcgYSBuZXcgc291cmNlIHBhY2thZ2UsIGFueSBjaGFuZ2UgdG8gdGhlIHVwc3RyZWFtIHNvdXJjZSBpcyAiCisic3RvcmVkIGluIGEgcGF0Y2ggbmFtZWQgQjx6el9kZWJpYW4tZGlmZi1hdXRvPi4iCittc2dzdHIgIiIKKyJXZW5uIGVpbiBuZXVlcyBRdWVsbHBha2V0IGdlYmF1dCB3aXJkLCB3ZXJkZW4gYWxsZSDDhG5kZXJ1bmdlbiBhbiBkZW4gUXVlbGxlbiAiCisiZGVyIE9yaWdpbmFsYXV0b3JlbiBpbiBlaW5lbSBQYXRjaCBtaXQgTmFtZW4gQjx6el9kZWJpYW4tZGlmZi1hdXRvPiAiCisiZ2VzcGVpY2hlcnQuIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTozOTUKKyMsIG5vLXdyYXAKK21zZ2lkICJGb3JtYXQ6IDMuMCAobmF0aXZlKSIKK21zZ3N0ciAiRm9ybWF0OiAzLjAgKG5hdGl2ZSkiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NDAxCittc2dpZCAiIgorIlRoaXMgZm9ybWF0IGlzIGFuIGV4dGVuc2lvbiBvZiB0aGUgbmF0aXZlIHBhY2thZ2UgZm9ybWF0IGFzIGRlZmluZWQgaW4gdGhlICIKKyIxLjAgZm9ybWF0LiBJdCBzdXBwb3J0cyBhbGwgY29tcHJlc3Npb24gbWV0aG9kcyBhbmQgd2lsbCBpZ25vcmUgYnkgZGVmYXVsdCAiCisiYW55IFZDUyBzcGVjaWZpYyBmaWxlcyBhbmQgZGlyZWN0b3JpZXMgYXMgd2VsbCBhcyBtYW55IHRlbXBvcmFyeSBmaWxlcyAoc2VlICIKKyJkZWZhdWx0IHZhbHVlIGFzc29jaWF0ZWQgdG8gQjwtST4gb3B0aW9uIGluIHRoZSBCPC0taGVscD4gb3V0cHV0KS4iCittc2dzdHIgIiIKKyJEaWVzZXMgRm9ybWF0IGlzdCBlaW5lIEVyd2VpdGVydW5nIGRlcyBuYXRpdmVuIFBha2V0Zm9ybWF0cyB3aWUgZXMgaW0gMS4wLSIKKyJGb3JtYXQgZGVmaW5pZXJ0IGlzdC4gRXMgdW50ZXJzdMO8dHp0IGFsbGUgS29tcHJlc3Npb25zbWV0aG9kZW4gdW5kIGlnbm9yaWVydCAiCisic3RhbmRhcmRtw6TDn2lnIGFsbGUgVkNTLXNwZXppZmlzY2hlbiBEYXRlaWVuIHVuZCBWZXJ6ZWljaG5pc3NlIHNvd2llIHZpZWxlICIKKyJ0ZW1wb3LDpHJlIERhdGVpZW4gKGxlc2VuIFNpZSBkZW4gU3RhbmRhcmR3ZXJ0IGRlciBPcHRpb24gQjwtST4gYmVpIGRlciAiCisiQXVzZ2FiZSB2b24gQjwtLWhlbHA+KS4iCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjQwMgorIywgbm8td3JhcAorbXNnaWQgIkZvcm1hdDogMy4wIChxdWlsdCkiCittc2dzdHIgIkZvcm1hdDogMy4wIChxdWlsdCkiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NDA5Cittc2dpZCAiIgorIkEgc291cmNlIHBhY2thZ2UgaW4gdGhpcyBmb3JtYXQgY29udGFpbnMgYXQgbGVhc3QgYW4gb3JpZ2luYWwgdGFyYmFsbCAoQjwuIgorIm9yaWcudGFyLj5JPGV4dD4gd2hlcmUgSTxleHQ+IGNhbiBiZSBCPGd6PiwgQjxiejI+LCBCPGx6bWE+IGFuZCBCPHh6PikgYW5kIGEgIgorImRlYmlhbiB0YXJiYWxsIChCPC5kZWJpYW4udGFyLj5JPGV4dD4pLiBJdCBjYW4gYWxzbyBjb250YWluIGFkZGl0aW9uYWwgIgorIm9yaWdpbmFsIHRhcmJhbGxzIChCPC5vcmlnLT5JPGNvbXBvbmVudD5CPC50YXIuPkk8ZXh0PikuICBJPGNvbXBvbmVudD4gY2FuICIKKyJvbmx5IGNvbnRhaW4gYWxwaGFudW1lcmljIGNoYXJhY3RlcnMgYW5kIGRhc2hlcyAoXCItXCIpLiIKK21zZ3N0ciAiIgorIkVpbiBRdWVsbHBha2V0IGluIGRpZXNlbSBGb3JtYXQgZW50aMOkbHQgbWluZGVzdGVucyBlaW5lbiBPcmlnaW5hbC1UYXJiYWxsICIKKyIoQjwub3JpZy50YXIuPkk8ZXJ3Piwgd29iZWkgSTxlcnc+IEI8Z3o+LCBCPGJ6Mj4sIEI8bHptYT4gdW5kIEI8eHo+IHNlaW4gIgorImthbm4pIHVuZCBlaW5lbiBEZWJpYW4tVGFyYmFsbCAoQjwuZGViaWFuLnRhci4+STxlcnc+KS4gRXMga2FubiBhdWNoICIKKyJ6dXPDpHR6bGljaGUgT3JpZ2luYWwtVGFyYsOkbGxlIChCPC5vcmlnLT5JPEtvbXBvbmVudGU+QjwudGFyLj5JPGVydz4pKSAiCisiZW50aGFsdGVuLiBJPEtvbXBvbmVudGU+IGthbm4gbnVyIGFscGhhbnVtZXJpc2NoZSBaZWljaGVuIHVuZCAiCisiR2VkYW5rZW5zdHJpY2hlICjCuy3CqykgZW50aGFsdGVuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo0MjAKK21zZ2lkICIiCisiVGhlIG1haW4gb3JpZ2luYWwgdGFyYmFsbCBpcyBleHRyYWN0ZWQgZmlyc3QsIHRoZW4gYWxsIGFkZGl0aW9uYWwgb3JpZ2luYWwgIgorInRhcmJhbGxzIGFyZSBleHRyYWN0ZWQgaW4gc3ViZGlyZWN0b3JpZXMgbmFtZWQgYWZ0ZXIgdGhlIEk8Y29tcG9uZW50PiBwYXJ0ICIKKyJvZiB0aGVpciBmaWxlbmFtZSAoYW55IHByZS1leGlzdGluZyBkaXJlY3RvcnkgaXMgcmVwbGFjZWQpLiBUaGUgZGViaWFuICIKKyJ0YXJiYWxsIGlzIGV4dHJhY3RlZCBvbiB0b3Agb2YgdGhlIHNvdXJjZSBkaXJlY3RvcnkgYWZ0ZXIgcHJpb3IgcmVtb3ZhbCBvZiAiCisiYW55IHByZS1leGlzdGluZyBCPGRlYmlhbj4gZGlyZWN0b3J5LiBOb3RlIHRoYXQgdGhlIGRlYmlhbiB0YXJiYWxsIG11c3QgIgorImNvbnRhaW4gYSBCPGRlYmlhbj4gc3ViLWRpcmVjdG9yeSBidXQgaXQgY2FuIGFsc28gY29udGFpbiBiaW5hcnkgZmlsZXMgIgorIm91dHNpZGUgb2YgdGhhdCBkaXJlY3RvcnkgKHNlZSBCPC0taW5jbHVkZS1iaW5hcmllcz4gb3B0aW9uKS4iCittc2dzdHIgIiIKKyJEZXIgSGF1cHQtT3JpZ2luYWx0YXJiYWxsIHdpcmQgenVlcnN0IGV4dHJhaGllcnQsIGRhbm4gd2VyZGVuIGFsbGUgIgorInp1c8OkdHpsaWNoZW4gT3JpZ2luYWx0YXJiw6RsbGUgaW4gVW50ZXJ2ZXJ6ZWljaG5pc3NlIGV4dHJhaGllcnQsIGRpZSBuYWNoIGRlbSAiCisiSTxLb21wb25lbnRlPm4tVGVpbCBpaHJlcyBEYXRlaW5hbWVucyBiZW5hbm50IHdlcmRlbiAoamVkZXMgYmVyZWl0cyAiCisiZXhpc3RpZXJlbmRlIFZlcnplaWNobmlzIHdpcmQgZXJzZXR6dCkuIERlciBEZWJpYW4tVGFyYmFsbCB3aXJkIGF1ZiBkYXMgIgorIlF1ZWxsdmVyemVpY2huaXMgZXh0cmFoaWVydCwgbmFjaGRlbSBqZWRlcyBiZXJlaXRzIGV4aXN0aWVyZW5kZSBCPGRlYmlhbj4tIgorIlZlcnplaWNobmlzIGVudGZlcm50IHd1cmRlLiBCZWFjaHRlbiBTaWUsIGRhc3MgZGVyIERlYmlhbi1UYXJiYWxsIGVpbiAiCisiQjxkZWJpYW4+LVVudGVydmVyemVpY2huaXMgZW50aGFsdGVuIG11c3MsIGVyIGFiZXIgYXVjaCBCaW7DpHJkYXRlaWVuICIKKyJhdcOfZXJoYWxiIGRpZXNlcyBWZXJ6ZWljaG5pc3NlcyBlbnRoYWx0ZW4gZGFyZiAoc2VoZW4gU2llIGhpZXJ6dSBkaWUgT3B0aW9uICIKKyJCPC0taW5jbHVkZS1iaW5hcmllcz4pLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo0MzIKK21zZ2lkICIiCisiQWxsIHBhdGNoZXMgbGlzdGVkIGluIEI8ZGViaWFuL3BhdGNoZXMvZGViaWFuLnNlcmllcz4gb3IgQjxkZWJpYW4vcGF0Y2hlcy8iCisic2VyaWVzPiBhcmUgdGhlbiBhcHBsaWVkLiAgSWYgdGhlIGZvcm1lciBmaWxlIGlzIHVzZWQgYW5kIHRoZSBsYXR0ZXIgb25lICIKKyJkb2Vzbid0IGV4aXN0IChvciBpcyBhIHN5bWxpbmspLCB0aGVuIHRoZSBsYXR0ZXIgaXMgcmVwbGFjZWQgd2l0aCBhIHN5bWxpbmsgIgorInRvIHRoZSBmb3JtZXIuIFRoaXMgaXMgbWVhbnQgdG8gc2ltcGxpZnkgdXNhZ2Ugb2YgcXVpbHQgdG8gbWFuYWdlIHRoZSBzZXQgb2YgIgorInBhdGNoZXMuIE5vdGUgaG93ZXZlciB0aGF0IHdoaWxlIEI8ZHBrZy1zb3VyY2U+IHBhcnNlcyBjb3JyZWN0bHkgc2VyaWVzICIKKyJmaWxlcyB3aXRoIGV4cGxpY2l0IG9wdGlvbnMgdXNlZCBmb3IgcGF0Y2ggYXBwbGljYXRpb24gKHN0b3JlZCBvbiBlYWNoIGxpbmUgIgorImFmdGVyIHRoZSBwYXRjaCBmaWxlbmFtZSBhbmQgb25lIG9yIG1vcmUgc3BhY2VzKSwgaXQgZG9lcyBpZ25vcmUgdGhvc2UgIgorIm9wdGlvbnMgYW5kIGFsd2F5cyBleHBlY3QgcGF0Y2hlcyB0aGF0IGNhbiBiZSBhcHBsaWVkIHdpdGggdGhlIEI8LXAxPiBvcHRpb24gIgorIm9mIEI8cGF0Y2g+LiBJdCB3aWxsIHRodXMgZW1pdCBhIHdhcm5pbmcgd2hlbiBpdCBlbmNvdW50ZXJzIHN1Y2ggb3B0aW9ucywgIgorImFuZCB0aGUgYnVpbGQgaXMgbGlrZWx5IHRvIGZhaWwuIgorbXNnc3RyICIiCisiRGFubiB3ZXJkZW4gYWxsZSBpbiBCPGRlYmlhbi9wYXRjaGVzL2RlYmlhbi5zZXJpZXM+IG9kZXIgQjxkZWJpYW4vcGF0Y2hlcy8iCisic2VyaWVzPiBhdWZnZWbDvGhydGVuIFBhdGNoZXMgYW5nZXdhbmR0LiBGYWxscyBkaWUgZXJzdGVyZSBEYXRlaSB2ZXJ3YW5kdCAiCisid2lyZCB1bmQgZGllIGxldHp0ZXJlIG5pY2h0IGV4aXN0aWVydCAob2RlciBlaW4gU3ltbGluayBpc3QpLCBkYW5uIHdpcmQgZGllICIKKyJsZXR6dGVyZSBtaXQgZWluZW0gU3ltbGluayB6dSBlcnN0ZXJlciBlcnNldHp0LiBEaWVzIGlzdCB6dXIgVmVyZWluZmFjaHVuZyAiCisiZGVyIFZlcndlbmR1bmcgdm9uIFF1aWx0IGdlZGFjaHQsIHVtIGRlbiBTYXR6IGFuIFBhdGNoZXMgenUgdmVyd2FsdGVuLiAiCisiQmVhY2h0ZW4gU2llIGFsbGVyZGluZ3MsIGRhc3MgQjxkcGtnLXNvdXJjZT4gendhciBTZXJpZW5kYXRlaWVuIGF1c3dlcnRldCwgIgorImluIGRlbmVuIGV4cGxpeml0ZSBPcHRpb25lbiBmw7xyIGRpZSBBbndlbmR1bmcgZGVyIFBhdGNoZXMgdmVyd2FuZHQgd2VyZGVuICIKKyIoZGllc2Ugd2VyZGVuIGF1ZiBqZWRlIFplaWxlIG5hY2ggZGVtIFBhdGNoLURhdGVpbmFtZW4gdW5kIGVpbmVtIG9kZXIgIgorIm1laHJlcmVuIExlZXJ6ZWljaGVuIGdlc3BlaWNoZXJ0KSwgZGllc2UgT3B0aW9uZW4gZGFubiBhYmVyIGlnbm9yaWVydCB1bmQgIgorImltbWVyIGVyd2FydGV0LCBkYXNzIGRpZSBQYXRjaGVzIG1pdCBkZXIgT3B0aW9uIEI8LXAxPiB2b24gQjxwYXRjaD4gIgorImFuZ2V3YW5kdCB3ZXJkZW4ga8O2bm5lbi4gRXMgd2lyZCBkYWhlciBlaW5lIFdhcm51bmcgYXVzZ2ViZW4sIHdlbm4gZXMgYXVmICIKKyJzb2xjaGUgT3B0aW9uZW4gdHJpZmZ0LCB1bmQgZGVyIEJhdSB3aXJkIHdhaHJzY2hlaW5saWNoIGZlaGxzY2hsYWdlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NDM0Cittc2dpZCAiIgorIlNpbWlsYXJseSB0byBxdWlsdCdzIGRlZmF1bHQgYmVoYXZpb3VyLCB0aGUgcGF0Y2hlcyBjYW4gcmVtb3ZlIGZpbGVzIHRvby4iCittc2dzdHIgIsOEaG5saWNoIHdpZSBiZWkgUXVpbHQga8O2bm5lbiBQYXRjaGVzIGF1Y2ggRGF0ZWllbiBlbnRmZXJuZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjQzNworbXNnaWQgIiIKKyJUaGUgZmlsZSBCPC5wYy9hcHBsaWVkLXBhdGNoZXM+IGlzIGNyZWF0ZWQgaWYgc29tZSBwYXRjaGVzIGhhdmUgYmVlbiBhcHBsaWVkICIKKyJkdXJpbmcgdGhlIGV4dHJhY3Rpb24uIgorbXNnc3RyICIiCisiRGllIERhdGVpIEI8LnBjL2FwcGxpZWQtcGF0Y2hlcz4gd2lyZCBhbmdlbGVndCwgZmFsbHMgZWluaWdlIFBhdGNoZXMgd8OkaHJlbmQgIgorImRlciBFeHRyYWhpZXJ1bmcgYW5nZXdhbmR0IHd1cmRlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NDUxCittc2dpZCAiIgorIkFsbCBvcmlnaW5hbCB0YXJiYWxscyBmb3VuZCBpbiB0aGUgY3VycmVudCBkaXJlY3RvcnkgYXJlIGV4dHJhY3RlZCBpbiBhICIKKyJ0ZW1wb3JhcnkgZGlyZWN0b3J5IGJ5IGZvbGxvd2luZyB0aGUgc2FtZSBsb2dpYyBhcyBmb3IgdGhlIHVucGFjaywgdGhlICIKKyJkZWJpYW4gZGlyZWN0b3J5IGlzIGNvcGllZCBvdmVyIGluIHRoZSB0ZW1wb3JhcnkgZGlyZWN0b3J5LCBhbmQgYWxsIHBhdGNoZXMgIgorImV4Y2VwdCB0aGUgYXV0b21hdGljIHBhdGNoIChCPGRlYmlhbi1jaGFuZ2VzLT5JPHZlcnNpb24+IG9yIEI8ZGViaWFuLSIKKyJjaGFuZ2VzPiwgZGVwZW5kaW5nIG9uIEI8LS1zaW5nbGUtZGViaWFuLXBhdGNoPikgYXJlIGFwcGxpZWQuIFRoZSB0ZW1wb3JhcnkgIgorImRpcmVjdG9yeSBpcyBjb21wYXJlZCB0byB0aGUgc291cmNlIHBhY2thZ2UgZGlyZWN0b3J5LiBXaGVuIHRoZSBkaWZmIGlzIG5vbi0iCisiZW1wdHksIHRoZSBidWlsZCBmYWlscyB1bmxlc3MgQjwtLXNpbmdsZS1kZWJpYW4tcGF0Y2g+IG9yIEI8LS1hdXRvLWNvbW1pdD4gIgorImhhcyBiZWVuIHVzZWQsIGluIHdoaWNoIGNhc2UgdGhlIGRpZmYgaXMgc3RvcmVkIGluIHRoZSBhdXRvbWF0aWMgcGF0Y2guICBJZiAiCisidGhlIGF1dG9tYXRpYyBwYXRjaCBpcyBjcmVhdGVkL2RlbGV0ZWQsIGl0J3MgYWRkZWQvcmVtb3ZlZCBmcm9tIHRoZSBzZXJpZXMgIgorImZpbGUgYW5kIGZyb20gdGhlIHF1aWx0IG1ldGFkYXRhLiIKK21zZ3N0ciAiIgorIkFsbGUgaW0gYWt0dWVsbGVuIFZlcnplaWNobmlzIGdlZnVuZGVuZW4gT3JpZ2luYWwtVGFyYsOkbGxlIHdlcmRlbiBpbiBlaW4gIgorInRlbXBvcsOkcmVzIFZlcnplaWNobmlzIGVudHBhY2t0LiBIaWVyYmVpIHdpcmQgZGllIGdsZWljaGUgTG9naWsgd2llIGbDvHIgZGFzICIKKyJFbnRwYWNrZW4gdmVyd2FuZHQsIGRhcyBkZWJpYW4tVmVyemVpY2huaXMgd2lyZCBpbiBkYXMgdGVtcG9yw6RyZSBWZXJ6ZWljaG5pcyAiCisia29waWVydCB1bmQgYWxsZSBQYXRjaGVzIGF1w59lciBkZW0gYXV0b21hdGlzY2hlbiBQYXRjaCAoQjxkZWJpYW4tY2hhbmdlcy0iCisiPkk8VmVyc2lvbj4gb2RlciBCPGRlYmlhbi1jaGFuZ2VzPiwgYWJow6RuZ2lnIHZvbiBCPC0tc2luZ2xlLWRlYmlhbi1wYXRjaD4pICIKKyJ3ZXJkZW4gYW5nZXdhbmR0LiBEYXMgdGVtcG9yw6RyZSBWZXJ6ZWljaG5pcyB3aXJkIG1pdCBkZW0gIgorIlF1ZWxscGFrZXR2ZXJ6ZWljaG5pcyB2ZXJnbGljaGVuLiBXZW5uIGRlciBEaWZmIG5pY2h0IGxlZXIgaXN0LCBzY2hsw6RndCBkZXIgIgorIkJhdSBmZWhsLCBmYWxscyBuaWNodCBCPC0tc2luZ2xlLWRlYmlhbi1wYXRjaD4gb2RlciBCPC0tYXV0by1jb21taXQ+ICIKKyJ2ZXJ3YW5kdCB3dXJkZTsgaW4gZGllc2VtIEZhbGwgd2lyZCBkZXIgRGlmZiBpbSBhdXRvbWF0aXNjaGVuIFBhdGNoICIKKyJnZXNwZWljaGVydC4gRmFsbHMgZGVyIGF1dG9tYXRpc2NoZSBQYXRjaCBlcnpldWd0L2dlbMO2c2NodCB3aXJkLCB3aXJkIGVyIHp1ICIKKyJkZXIgRGF0ZWkgc2VyaWVzIHVuZCBkZW4gUXVpbHQtTWV0YWRhdGVuIGhpbnp1Z2Vmw7xndCBiencuIGF1cyBkaWVzZW4gIgorImdlbMO2c2NodC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NDU5Cittc2dpZCAiIgorIkFueSBjaGFuZ2Ugb24gYSBiaW5hcnkgZmlsZSBpcyBub3QgcmVwcmVzZW50YWJsZSBpbiBhIGRpZmYgYW5kIHdpbGwgdGh1cyAiCisibGVhZCB0byBhIGZhaWx1cmUgdW5sZXNzIHRoZSBtYWludGFpbmVyIGRlbGliZXJhdGVseSBkZWNpZGVkIHRvIGluY2x1ZGUgdGhhdCAiCisibW9kaWZpZWQgYmluYXJ5IGZpbGUgaW4gdGhlIGRlYmlhbiB0YXJiYWxsIChieSBsaXN0aW5nIGl0IGluIEI8ZGViaWFuL3NvdXJjZS8iCisiaW5jbHVkZS1iaW5hcmllcz4pLiBUaGUgYnVpbGQgd2lsbCBhbHNvIGZhaWwgaWYgaXQgZmluZHMgYmluYXJ5IGZpbGVzIGluIHRoZSAiCisiZGViaWFuIHN1Yi1kaXJlY3RvcnkgdW5sZXNzIHRoZXkgaGF2ZSBiZWVuIHdoaXRlbGlzdGVkIHRocm91Z2ggQjxkZWJpYW4vIgorInNvdXJjZS9pbmNsdWRlLWJpbmFyaWVzPi4iCittc2dzdHIgIiIKKyLDhG5kZXJ1bmdlbiBhbiBCaW7DpHJkYXRlaWVuIGvDtm5uZW4gaW4gZWluZW0gRGlmZiBuaWNodCBkYXJnZXN0ZWxsdCB3ZXJkZW4gdW5kICIKKyJmw7xocmVuIGRhaGVyIHp1IGVpbmVtIEZlaGxzY2hsYWcsIGVzIHNlaSBkZW5uLCBkZXIgQmV0cmV1ZXIgaGF0IHNpY2ggIgorImFic2ljaHRsaWNoIGRhenUgZW50c2NobG9zc2VuLCBkaWUgdmVyw6RuZGVydGUgQmluw6RyZGF0ZWkgZGVtIERlYmlhbi1UYXJiYWxsICIKKyJoaW56dXp1ZsO8Z2VuIChpbmRlbSBlciBzaWUgaW4gQjxkZWJpYW4vc291cmNlL2luY2x1ZGUtYmluYXJpZXM+IGF1ZmdlZsO8aHJ0ICIKKyJoYXQpLiBEZXIgQmF1IHdpcmQgYXVjaCBmZWhsc2NobGFnZW4sIGZhbGxzIGVyIEJpbsOkcmRhdGVpZW4gaW0gZGViaWFuLSIKKyJVbnRlcnZlcnplaWNobmlzIGZpbmRldCwgZGllIG5pY2h0IMO8YmVyIEI8ZGViaWFuL3NvdXJjZS9pbmNsdWRlLWJpbmFyaWVzPiAiCisiZnJlaWdlZ2ViZW4gd3VyZGVuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo0NjIKK21zZ2lkICIiCisiVGhlIHVwZGF0ZWQgZGViaWFuIGRpcmVjdG9yeSBhbmQgdGhlIGxpc3Qgb2YgbW9kaWZpZWQgYmluYXJpZXMgaXMgdGhlbiB1c2VkICIKKyJ0byBnZW5lcmF0ZSB0aGUgZGViaWFuIHRhcmJhbGwuIgorbXNnc3RyICIiCisiRGFzIGFrdHVhbGlzaWVydGUgZGViaWFuLVZlcnplaWNobmlzIHVuZCBkaWUgTGlzdGUgZGVyIHZlcsOkbmRlcnRlbiBQcm9ncmFtbWUgIgorIndpcmQgZGFubiB6dXIgRXJzdGVsbHVuZyBkZXMgRGViaWFuLVRhcmJhbGxzIHZlcndhbmR0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo0NjgKK21zZ2lkICIiCisiVGhlIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGRpZmYgZG9lc24ndCBpbmNsdWRlIGNoYW5nZXMgb24gVkNTIHNwZWNpZmljICIKKyJmaWxlcyBhcyB3ZWxsIGFzIG1hbnkgdGVtcG9yYXJ5IGZpbGVzIChzZWUgZGVmYXVsdCB2YWx1ZSBhc3NvY2lhdGVkIHRvIEI8LWk+ICIKKyJvcHRpb24gaW4gdGhlIEI8LS1oZWxwPiBvdXRwdXQpLiBJbiBwYXJ0aWN1bGFyLCB0aGUgQjwucGM+IGRpcmVjdG9yeSB1c2VkIGJ5ICIKKyJxdWlsdCBpcyBpZ25vcmVkIGR1cmluZyBnZW5lcmF0aW9uIG9mIHRoZSBhdXRvbWF0aWMgcGF0Y2guIgorbXNnc3RyICIiCisiRGVyIGF1dG9tYXRpc2NoIGVyc3RlbGx0ZSBEaWZmIGVudGjDpGx0IGtlaW5lIMOEbmRlcnVuZ2VuIGFuIFZDUy1zcGV6aWZpc2NoZW4gIgorInNvd2llIHZpZWxlbiB0ZW1wb3LDpHJlbiBEYXRlaWVuIChsZXNlbiBTaWUgaGllcnp1IGRlbiB6dXIgT3B0aW9uIEI8LWk+ICIKKyJ6dWdlb3JkbmV0ZW4gU3RhbmRhcmR3ZXJ0IGluIGRlciBBdXNnYWJlIHZvbiBCPC0taGVscD4pLiBJbnNiZXNvbmRlcmUgd2lyZCAiCisiZGFzIHZvbiBRdWlsdCB2ZXJ3YW5kdGUgQjwucGM+LVZlcnplaWNobmlzIHfDpGhyZW5kIGRlciBFcnN0ZWxsdW5nIGRlcyAiCisiYXV0b21hdGlzY2hlbiBQYXRjaGVzIGlnbm9yaWVydC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NDc3Cittc2dpZCAiIgorIk5vdGU6IEI8ZHBrZy1zb3VyY2U+IEI8LS1iZWZvcmUtYnVpbGQ+IChhbmQgQjwtYj4pIHdpbGwgZW5zdXJlIHRoYXQgYWxsICIKKyJwYXRjaGVzIGxpc3RlZCBpbiB0aGUgc2VyaWVzIGZpbGUgYXJlIGFwcGxpZWQgc28gdGhhdCBhIHBhY2thZ2UgYnVpbGQgYWx3YXlzICIKKyJoYXMgYWxsIHBhdGNoZXMgYXBwbGllZC4gSXQgZG9lcyB0aGlzIGJ5IGZpbmRpbmcgdW5hcHBsaWVkIHBhdGNoZXMgKHRoZXkgYXJlICIKKyJsaXN0ZWQgaW4gdGhlIEI8c2VyaWVzPiBmaWxlIGJ1dCBub3QgaW4gQjwucGMvYXBwbGllZC1wYXRjaGVzPiksIGFuZCBpZiB0aGUgIgorImZpcnN0IHBhdGNoIGluIHRoYXQgc2V0IGNhbiBiZSBhcHBsaWVkIHdpdGhvdXQgZXJyb3JzLCBpdCB3aWxsIGFwcGx5IHRoZW0gIgorImFsbC4gVGhlIG9wdGlvbiBCPC0tbm8tcHJlcGFyYXRpb24+IGNhbiBiZSB1c2VkIHRvIGRpc2FibGUgdGhpcyBiZWhhdmlvci4iCittc2dzdHIgIiIKKyJIaW53ZWlzOiBCPGRwa2ctc291cmNlPiBCPC0tYmVmb3JlLWJ1aWxkPiAodW5kIEI8LWI+KSBzdGVsbGVuIHNpY2hlciwgZGFzcyAiCisiYWxsZSBpbiBkZXIgU2VyaWVzLURhdGVpIGF1ZmdlZsO8aHJ0ZW4gUGF0Y2hlcyBhbmdld2VuZGV0IHNpbmQsIHNvIGRzcyBlaW4gIgorIlBha2V0YmF1IGltbWVyIG1pdCBhbGxlbiBhbmdld2FuZHRlbiBQYXRjaGVzIGR1cmNoZ2Vmw7xocnQgd2lyZC4gRGllcyAiCisiZXJmb2xndCwgaW5kZW0gbmljaHQgYW5nZXdhbmR0ZSBQYXRjaGVzIGVybWl0dGVsdCB3ZXJkZW4gKHNpZSBzaW5kIGluIGRlciAiCisiRGF0ZWkgQjxzZXJpZXM+LCBhYmVyIG5pY2h0IGluIGRlciBEYXRlaSBCPC5wYy9hcHBsaWVkLXBhdGNoZXM+IGF1ZmdlZsO8aHJ0KSAiCisidW5kIHdlbm4gZGVyIGVyc3RlIFBhdGNoIGluIGRlbSBTYXR6IG9obmUgRmVobGVyIGFuZ2V3YW5kdCB3ZXJkZW4ga2FubiwgIgorIndlcmRlbiBzaWUgYWxsZSBhbmdld2FuZHQuIERpZSBPcHRpb24gQjwtLW5vLXByZXBhcmF0aW9uPiBrYW5uIHp1bSAiCisiQWJzY2hhbHRlbiBkaWVzZXMgVmVyaGFsdGVucyB2ZXJ3YW5kdCB3ZXJkZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjQ4MAorbXNnaWQgIkI8UmVjb3JkaW5nIGNoYW5nZXM+IgorbXNnc3RyICJCPMOEbmRlcnVuZ2VuIGF1ZnplaWNobmVuPiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NDgwCisjLCBuby13cmFwCittc2dpZCAiQjwtLWNvbW1pdD4gW0k8ZGlyZWN0b3J5Pl0gW0k8cGF0Y2gtbmFtZT5dIFtJPHBhdGNoLWZpbGU+XSIKK21zZ3N0ciAiQjwtLWNvbW1pdD4gW0k8VmVyemVpY2huaXM+XSBbSTxQYXRjaC1OYW1lPl0gW0k8UGF0Y2gtRGF0ZWk+XSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo0OTAKK21zZ2lkICIiCisiR2VuZXJhdGVzIGEgcGF0Y2ggY29ycmVzcG9uZGluZyB0byB0aGUgbG9jYWwgY2hhbmdlcyB0aGF0IGFyZSBub3QgbWFuYWdlZCBieSAiCisidGhlIHF1aWx0IHBhdGNoIHN5c3RlbSBhbmQgaW50ZWdyYXRlcyBpdCBpbiB0aGUgcGF0Y2ggc3lzdGVtIHVuZGVyIHRoZSBuYW1lICIKKyJJPHBhdGNoLW5hbWU+LiBJZiB0aGUgbmFtZSBpcyBtaXNzaW5nLCBpdCB3aWxsIGJlIGFza2VkIGludGVyYWN0aXZlbHkuIElmICIKKyJJPHBhdGNoLWZpbGU+IGlzIGdpdmVuLCBpdCBpcyB1c2VkIGFzIHRoZSBwYXRjaCBjb3JyZXNwb25kaW5nIHRvIHRoZSBsb2NhbCAiCisiY2hhbmdlcyB0byBpbnRlZ3JhdGUuIFRoaXMgaXMgbWFpbmx5IHVzZWZ1bCBhZnRlciBhIGJ1aWxkIGZhaWx1cmUgdGhhdCBwcmUtIgorImdlbmVyYXRlZCB0aGlzIGZpbGUuIE9uY2UgaW50ZWdyYXRlZCwgYW4gZWRpdG9yIGlzIGxhdW5jaGVkIHNvIHRoYXQgeW91IGNhbiAiCisiZWRpdCB0aGUgbWV0YS1pbmZvcm1hdGlvbiBpbiB0aGUgcGF0Y2ggaGVhZGVyLiIKK21zZ3N0ciAiIgorIkVyc3RlbGx0IGVpbmVuIFBhdGNoLCBkZXIgZGVuIGxva2FsZW4gw4RuZGVydW5nZW4gZW50c3ByaWNodCwgZGllIG5pY2h0IHZvbSAiCisiUXVpbHQtUGF0Y2gtU3lzdGVtIHZlcndhbHRldCB3ZXJkZW4gdW5kIGludGVncmllcnQgZXMgdW50ZXIgZGVtIE5hbWVuICIKKyJJPFBhdGNoLU5hbWU+IGluIGRhcyBQYXRjaC1TeXN0ZW0uIEZhbGxzIGRlciBOYW1lIGZlaGx0LCB3aXJkIGVyIGludGVyYWt0aXYgIgorImVyZnJhZ3QuIEZhbGxzIEk8UGF0Y2gtRGF0ZWk+IGFuZ2VnZWJlbiBpc3QsIHdpcmQgZXIgYWxzIFBhdGNoLCBkZXIgenUgZGVuICIKKyJsb2thbGVuIMOEbmRlcnVuZ2VuLCBkaWUgaW50ZWdyaWVydCB3ZXJkZW4gc29sbGVuLCBnZWjDtnJ0LCB2ZXJ3YW5kdC4gRGllcyBpc3QgIgorInByaW3DpHIgbmFjaCBlaW5lbSBCYXVmZWhsZXIgbsO8dHpsaWNoLCBkZXIgZGllc2UgRGF0ZWkgdm9yZ2VuZXJpZXJ0ZS4gU29iYWxkICIKKyJkaWUgUGF0Y2ggaW50ZWdyaWVydCB3dXJkZSwgd2lyZCBlaW4gRWRpdG9yIGdlc3RhcnRldCwgc28gZGFzcyBTaWUgZGllICIKKyJNZXRhaW5mb3JtYXRpb25lbiBpbiBkZW4gS29wZnplaWxlbiBkZXMgUGF0Y2hlcyBlaW5mw7xnZW4ga8O2bm5lbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NDkzIGRwa2ctc291cmNlLjE6NTY3IGRwa2ctc291cmNlLjE6NjA2Cittc2dpZCAiQjxCdWlsZCBvcHRpb25zPiIKK21zZ3N0ciAiQjxCYXUtT3B0aW9uZW4+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTo0OTMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tYWxsb3ctdmVyc2lvbi1vZi1xdWlsdC1kYj0+STx2ZXJzaW9uPiIKK21zZ3N0ciAiQjwtLWFsbG93LXZlcnNpb24tb2YtcXVpbHQtZGI9Pkk8VmVyc2lvbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTAxCittc2dpZCAiIgorIkFsbG93IEI8ZHBrZy1zb3VyY2U+IHRvIGJ1aWxkIHRoZSBzb3VyY2UgcGFja2FnZSBpZiB0aGUgdmVyc2lvbiBvZiB0aGUgcXVpbHQgIgorIm1ldGFkYXRhIGlzIHRoZSBvbmUgc3BlY2lmaWVkLCBldmVuIGlmIEI8ZHBrZy1zb3VyY2U+IGRvZXNuJ3Qga25vdyBhYm91dCBpdC4gIgorIkVmZmVjdGl2ZWx5IHRoaXMgc2F5cyB0aGF0IHRoZSBnaXZlbiB2ZXJzaW9uIG9mIHRoZSBxdWlsdCBtZXRhZGF0YSBpcyAiCisiY29tcGF0aWJsZSB3aXRoIHRoZSB2ZXJzaW9uIDIgdGhhdCBCPGRwa2ctc291cmNlPiBjdXJyZW50bHkgc3VwcG9ydHMuIFRoZSAiCisidmVyc2lvbiBvZiB0aGUgcXVpbHQgbWV0YWRhdGEgaXMgc3RvcmVkIGluIEI8LnBjLy52ZXJzaW9uPi4iCittc2dzdHIgIiIKKyJFcmxhdWJ0IGVzIEI8ZHBrZy1zb3VyY2U+LCBlaW4gUXVlbGxwYWtldCB6dSBiYXVlbiwgZmFsbHMgZGllIFZlcnNpb24gZGVyICIKKyJRdWlsdC1NZXRhZGF0ZW4gZGllIGFuZ2VnZWJlbmUgaXN0LCBzZWxic3QgZmFsbHMgQjxkcGtnLXNvdXJjZT4gbmljaHRzIGRhdm9uICIKKyJ3ZWnDny4gRWZmZWt0aXYgdGVpbHQgZGllcyBtaXQsIGRhc3MgZGllIGFuZ2VnZWJlbmUgVmVyc2lvbiBkZXIgUXVpbHQtIgorIk1ldGFkYXRlbiB6dSBWZXJzaW9uIDIsIGRpZSBCPGRwa2ctc291cmNlPiBkZXJ6ZWl0IHVudGVyc3TDvHR6dCwga29tcGF0aWJlbCAiCisiaXN0LiBEaWUgVmVyc2lvbiBkZXIgUXVpbHQtTWV0YWRhdGVuIHdpcmQgaW4gQjwucGMvLnZlcnNpb24+IGdlc3BlaWNoZXJ0LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NTAxCisjLCBuby13cmFwCittc2dpZCAiQjwtLWluY2x1ZGUtcmVtb3ZhbD4iCittc2dzdHIgIkI8LS1pbmNsdWRlLXJlbW92YWw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjUwNQorbXNnaWQgIiIKKyJEbyBub3QgaWdub3JlIHJlbW92ZWQgZmlsZXMgYW5kIGluY2x1ZGUgdGhlbSBpbiB0aGUgYXV0b21hdGljYWxseSBnZW5lcmF0ZWQgIgorInBhdGNoLiIKK21zZ3N0ciAiIgorIklnbm9yaWVyZSBlbnRmZXJudGUgRGF0ZWllbiBuaWNodCB1bmQgZsO8Z2Ugc2llIHp1IGRlbSBhdXRvbWF0aXNjaCAiCisiZ2VuZXJpZXJ0ZW4gUGF0Y2ggaGluenUuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTo1MDUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0taW5jbHVkZS10aW1lc3RhbXA+IgorbXNnc3RyICJCPC0taW5jbHVkZS10aW1lc3RhbXA+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjUwOAorbXNnaWQgIkluY2x1ZGUgdGltZXN0YW1wIGluIHRoZSBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlZCBwYXRjaC4iCittc2dzdHIgIkbDvGdlIFplaXRzdGVtcGVsIHp1IGRlbSBhdXRvbWF0aXNjaCBnZW5lcmllcnRlbiBQYXRjaCBoaW56dS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjUwOAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1pbmNsdWRlLWJpbmFyaWVzPiIKK21zZ3N0ciAiQjwtLWluY2x1ZGUtYmluYXJpZXM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjUxMworbXNnaWQgIiIKKyJBZGQgYWxsIG1vZGlmaWVkIGJpbmFyaWVzIGluIHRoZSBkZWJpYW4gdGFyYmFsbC4gQWxzbyBhZGQgdGhlbSB0byBCPGRlYmlhbi8iCisic291cmNlL2luY2x1ZGUtYmluYXJpZXM+OiB0aGV5IHdpbGwgYmUgYWRkZWQgYnkgZGVmYXVsdCBpbiBzdWJzZXF1ZW50IGJ1aWxkcyAiCisiYW5kIHRoaXMgb3B0aW9uIGlzIHRodXMgbm8gbW9yZSBuZWVkZWQuIgorbXNnc3RyICIiCisiRsO8Z2UgYWxsZSB2ZXLDpG5kZXJ0ZW4gUHJvZ3JhbW1lIHp1IGRlbSBkZWJpYW4tVGFyYmFsbCBoaW56dS4gRsO8Z2Ugc2llIGF1Y2ggIgorImluIEI8ZGViaWFuL3NvdXJjZS9pbmNsdWRlLWJpbmFyaWVzPjogc2llIHdlcmRlbiBpbiBmb2xnZW5kZW4gQmF1dGVuICIKKyJzdGFuZGFyZG3DpMOfaWcgaGluenVnZWbDvGd0IHVuZCBkaWVzZSBPcHRpb24gd2lyZCBkYWhlciBkYW5uIG5pY2h0IG1laHIgIgorImJlbsO2dGlndC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjUxMworIywgbm8td3JhcAorbXNnaWQgIkI8LS1uby1wcmVwYXJhdGlvbj4iCittc2dzdHIgIkI8LS1uby1wcmVwYXJhdGlvbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTE3Cittc2dpZCAiIgorIkRvIG5vdCB0cnkgdG8gcHJlcGFyZSB0aGUgYnVpbGQgdHJlZSBieSBhcHBseWluZyBwYXRjaGVzIHdoaWNoIGFyZSAiCisiYXBwYXJlbnRseSB1bmFwcGxpZWQuIgorbXNnc3RyICIiCisiVmVyc3VjaGUgbmljaHQgZGVuIEJhdS1CYXVtIGR1cmNoIEFud2VuZGVuIGFsbGVyIGRlcnplaXQgbmljaHQgYW5nZXdhbmR0ZW4gIgorIlBhdGNoZXMgdm9yenVicmVpdGVuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NTE3CisjLCBuby13cmFwCittc2dpZCAiQjwtLXNpbmdsZS1kZWJpYW4tcGF0Y2g+IgorbXNnc3RyICJCPC0tc2luZ2xlLWRlYmlhbi1wYXRjaD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTI4Cittc2dpZCAiIgorIlVzZSBCPGRlYmlhbi9wYXRjaGVzL2RlYmlhbi1jaGFuZ2VzPiBpbnN0ZWFkIG9mIEI8ZGViaWFuL3BhdGNoZXMvZGViaWFuLSIKKyJjaGFuZ2VzLT5JPHZlcnNpb24+IGZvciB0aGUgbmFtZSBvZiB0aGUgYXV0b21hdGljIHBhdGNoIGdlbmVyYXRlZCBkdXJpbmcgIgorImJ1aWxkLiBUaGlzIG9wdGlvbiBpcyBwYXJ0aWN1bGFybHkgdXNlZnVsIHdoZW4gdGhlIHBhY2thZ2UgaXMgbWFpbnRhaW5lZCBpbiAiCisiYSBWQ1MgYW5kIGEgcGF0Y2ggc2V0IGNhbid0IHJlbGlhYmx5IGJlIGdlbmVyYXRlZC4gSW5zdGVhZCB0aGUgY3VycmVudCBkaWZmICIKKyJ3aXRoIHVwc3RyZWFtIHNob3VsZCBiZSBzdG9yZWQgaW4gYSBzaW5nbGUgcGF0Y2guIFRoZSBvcHRpb24gd291bGQgYmUgcHV0IGluICIKKyJCPGRlYmlhbi9zb3VyY2UvbG9jYWwtb3B0aW9ucz4gYW5kIHdvdWxkIGJlIGFjY29tcGFuaWVkIGJ5IGEgQjxkZWJpYW4vc291cmNlLyIKKyJsb2NhbC1wYXRjaC1oZWFkZXI+IGZpbGUgZXhwbGFpbmluZyBob3cgdGhlIERlYmlhbiBjaGFuZ2VzIGNhbiBiZSBiZXN0ICIKKyJyZXZpZXdlZCwgZm9yIGV4YW1wbGUgaW4gdGhlIFZDUyB0aGF0IGlzIHVzZWQuIgorbXNnc3RyICIiCisiVmVyd2VuZGUgQjxkZWJpYW4vcGF0Y2hlcy9kZWJpYW4tY2hhbmdlcz4gc3RhdHQgQjxkZWJpYW4vcGF0Y2hlcy9kZWJpYW4tIgorImNoYW5nZXMtPkk8VmVyc2lvbj4gYWxzIE5hbWVuIGbDvHIgZGVuIHfDpGhyZW5kIGRlcyBCYXVzIGF1dG9tYXRpc2NoICIKKyJnZW5lcmllcnRlbiBQYXRjaC4gRGllc2UgT3B0aW9uIGlzdCBpbnNiZXNvbmRlcmUgbsO8dHpsaWNoLCB3ZW5uIGRhcyBQYWtldCBpbiAiCisiZWluZW0gVkNTIGJldHJldXQgd2lyZCB1bmQgZWluIFBhdGNoLVNhdHogbmljaHQgenV2ZXJsw6Rzc2lnIGVyc3RlbGx0IHdlcmRlbiAiCisia2Fubi4gU3RhdHRkZXNzZW4gc29sbHRlIGRlciBha3R1ZWxsZSBEaWZmIHp1IGRlbiBRdWVsbGVuIGRlciAiCisiT3JpZ2luYWxhdXRvcmVuIGluIGVpbmVtIGVpbnplbG5lbiBQYXRjaCBnZXNwZWljaGVydCB3ZXJkZW4uIERpZXNlIE9wdGlvbiAiCisic29sbHRlIGluIEI8ZGViaWFuL3NvdXJjZS9sb2NhbC1vcHRpb25zPiBlaW5nZXN0ZWxsdCB3ZXJkZW4gdW5kIHfDvHJkZSBkYW5uICIKKyJ2b24gZWluZXIgRGF0ZWkgQjxkZWJpYW4vc291cmNlL2xvY2FsLXBhdGNoLWhlYWRlcj4gYmVnbGVpdGV0LCBpbiBkZXIgIgorImVya2zDpHJ0IHdpcmQsIHdpZSBkaWUgRGViaWFuLcOEbmRlcnVuZ2VuIGFtIGJlc3RlbiBiZWd1dGFjaHRldCB3ZXJkZW4ga8O2bm5lbiwgIgorImJlaXNwaWVsc3dlaXNlIGltIGVpbmdlc2V0enRlbiBWQ1MuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTo1MjgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tY3JlYXRlLWVtcHR5LW9yaWc+IgorbXNnc3RyICJCPC0tY3JlYXRlLWVtcHR5LW9yaWc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjUzNAorbXNnaWQgIiIKKyJBdXRvbWF0aWNhbGx5IGNyZWF0ZSB0aGUgbWFpbiBvcmlnaW5hbCB0YXJiYWxsIGFzIGVtcHR5IGlmIGl0J3MgbWlzc2luZyBhbmQgIgorImlmIHRoZXJlIGFyZSBzdXBwbGVtZW50YXJ5IG9yaWdpbmFsIHRhcmJhbGxzLiBUaGlzIG9wdGlvbiBpcyBtZWFudCB0byBiZSAiCisidXNlZCB3aGVuIHRoZSBzb3VyY2UgcGFja2FnZSBpcyBqdXN0IGEgYnVuZGxlIG9mIG11bHRpcGxlIHVwc3RyZWFtIHNvZnR3YXJlICIKKyJhbmQgd2hlcmUgdGhlcmUncyBubyBcIm1haW5cIiBzb2Z0d2FyZS4iCittc2dzdHIgIiIKKyJFcnN0ZWxsZSBkZW4gSGF1cHRvcmlnaW5hbC1UYXJiYWxsIGF1dG9tYXRpc2NoIGFscyBsZWVyIGZhbGxzIGVyIGZlaGx0IHVuZCAiCisiZmFsbHMgZXMgZXJnw6RuemVuZGUgT3JpZ2luYWwtVGFyYsOkbGxlIGdpYnQuIERpZXNlIE9wdGlvbiBpc3QgZGFmw7xyIGdlZGFjaHQsICIKKyJ3ZW5uIGRhcyBRdWVsbHBha2V0IG51ciBlaW5lIFNhbW1sdW5nIHZvbiBtZWhyZXJlbiBTb2Z0d2FyZW4gZGVyICIKKyJPcmlnaW5hbGF1dG9yZW4gaXN0IHVuZCBlcyBrZWluZSDCu0hhdXB0wqstU29mdHdhcmUgZ2lidC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjUzNAorIywgbm8td3JhcAorbXNnaWQgIkI8LS11bmFwcGx5LXBhdGNoZXM+IgorbXNnc3RyICJCPC0tdW5hcHBseS1wYXRjaGVzPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1NDEKK21zZ2lkICIiCisiVW5hcHBseSB0aGUgcGF0Y2hlcyBpbiB0aGUgQjwtLWFmdGVyLWJ1aWxkPiBob29rLiBZb3UgdXN1YWxseSBkb24ndCBuZWVkICIKKyJ0aGlzIG9wdGlvbiBhcyBkcGtnLXNvdXJjZSB3aWxsIGF1dG9tYXRpY2FsbHkgdW5hcHBseSB0aGUgcGF0Y2hlcyBpZiBpdCBkaWQgIgorImFwcGx5IHRoZW0gZHVyaW5nIEI8LS1iZWZvcmUtYnVpbGQ+LiBUaGlzIG9wdGlvbiBpcyBvbmx5IGFsbG93ZWQgaW4gQjxkZWJpYW4vIgorInNvdXJjZS9sb2NhbC1vcHRpb25zPiBzbyB0aGF0IGFsbCBnZW5lcmF0ZWQgc291cmNlIHBhY2thZ2VzIGhhdmUgdGhlIHNhbWUgIgorImJlaGF2aW9yIGJ5IGRlZmF1bHQuIgorbXNnc3RyICIiCisiRW50ZmVybnQgZGllIFBhdGNoZXMgaW0gSG9vayBCPC0tYWZ0ZXItYnVpbGQ+LiBOb3JtYWxlcndlaXNlIGJlbsO2dGlnZW4gU2llICIKKyJkaWVzZSBPcHRpb24gbmljaHQsIGRhIERwa2ctc291cmNlIGFsbGUgUGF0Y2hlcyBhdXRvbWF0aXNjaCBlbnRmZXJuZW4gd2lyZCwgIgorIndlbm4gZXMgc2llIHfDpGhyZW5kIEI8LS1iZWZvcmUtYnVpbGQ+IGFuZ2V3YW5kdCBoYXR0ZS4gRGllc2UgT3B0aW9uIGlzdCBudXIgIgorImluIEI8ZGViaWFuL3NvdXJjZS9sb2NhbC1vcHRpb25zPiBlcmxhdWJ0LCBzbyBkYXNzIGFsbGUgZXJzdGVsbHRlbiAiCisiUXVlbGxwYWtldGUgc3RhbmRhcmRtw6TDn2lnIGRhcyBnbGVpY2hlIFZlcmhhbHRlbiB6ZWlnZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjU0OAorbXNnaWQgIiIKKyJUaGUgcHJvY2VzcyBmYWlscyBpZiBhbiBhdXRvbWF0aWMgcGF0Y2ggaGFzIGJlZW4gZ2VuZXJhdGVkLiBUaGlzIG9wdGlvbiBjYW4gIgorImJlIHVzZWQgdG8gZW5zdXJlIHRoYXQgYWxsIGNoYW5nZXMgd2VyZSBwcm9wZXJseSByZWNvcmRlZCBpbiBzZXBhcmF0ZSBxdWlsdCAiCisicGF0Y2hlcyBwcmlvciB0byB0aGUgc291cmNlIHBhY2thZ2UgYnVpbGQuIFRoaXMgb3B0aW9uIGlzIG5vdCBhbGxvd2VkIGluICIKKyJCPGRlYmlhbi9zb3VyY2Uvb3B0aW9ucz4gYnV0IGNhbiBiZSB1c2VkIGluIEI8ZGViaWFuL3NvdXJjZS9sb2NhbC1vcHRpb25zPi4iCittc2dzdHIgIiIKKyJEaWVzZXIgUHJvemVzcyBzY2hsw6RndCBmZWhsLCBmYWxscyBlaW4gYXV0b21hdGlzY2hlciBQYXRjaCBlcnN0ZWxsdCB3dXJkZS4gIgorIkRpZXNlIE9wdGlvbiBrYW5uIGRhenUgdmVyd2FuZHQgd2VyZGVuLCBzaWNoZXJ6dXN0ZWxsZW4sIGRhc3MgYWxsZSAiCisiw4RuZGVydW5nZW4ga29ycmVrdCBpbiBzZXBhcmF0ZW4gUXVpbHQtUGF0Y2hlcyBhdWZnZXplaWNobmV0IHd1cmRlbiwgYmV2b3IgIgorImRhcyBQYWtldCBnZWJhdXQgd3VyZGUuIERpZXNlIE9wdGlvbiBpc3QgaW4gQjxkZWJpYW4vc291cmNlL29wdGlvbnM+IG5pY2h0ICIKKyJlcmxhdWJ0LCBrYW5uIGFiZXIgaW4gQjxkZWJpYW4vc291cmNlL2xvY2FsLW9wdGlvbnM+IHZlcndhbmR0IHdlcmRlbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjU0OAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1hdXRvLWNvbW1pdD4iCittc2dzdHIgIkI8LS1hdXRvLWNvbW1pdD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTUyCittc2dpZCAiIgorIlRoZSBwcm9jZXNzIGRvZXNuJ3QgZmFpbCBpZiBhbiBhdXRvbWF0aWMgcGF0Y2ggaGFzIGJlZW4gZ2VuZXJhdGVkLCBpbnN0ZWFkICIKKyJpdCdzIGltbWVkaWF0ZWx5IHJlY29yZGVkIGluIHRoZSBxdWlsdCBzZXJpZXMuIgorbXNnc3RyICIiCisiRGVyIFZvcmdhbmcgc2NobMOkZ3QgbmljaHQgZmVobCwgZmFsbHMgZWluIGF1dG9tYXRpc2NoZXIgUGF0Y2ggZXJzdGVsbHQgIgorInd1cmRlLCBzdGF0dGRlc3NlbiB3aXJkIGRpZXNlciBzb2ZvcnQgaW4gZGllIFF1aWx0LVNlcmllIGF1Zmdlbm9tbWVuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1NTUKK21zZ2lkICJCPEV4dHJhY3Qgb3B0aW9ucz4iCittc2dzdHIgIkI8RXh0cmFoaWVydW5ncy1PcHRpb25lbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTU4Cittc2dpZCAiU2tpcHMgZXh0cmFjdGlvbiBvZiB0aGUgZGViaWFuIHRhcmJhbGwgb24gdG9wIG9mIHRoZSB1cHN0cmVhbSBzb3VyY2VzLiIKK21zZ3N0ciAiIgorIsOcYmVyc3ByaW5ndCBkYXMgRW50cGFja2VuIGRlcyBEZWJpYW4tVGFyYmFsbHMgYXVmIGRpZSBRdWVsbGVuIGRlciAiCisiT3JpZ2luYWxhdXRvcmVuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NTU4CisjLCBuby13cmFwCittc2dpZCAiQjwtLXNraXAtcGF0Y2hlcz4iCittc2dzdHIgIkI8LS1za2lwLXBhdGNoZXM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjU2MQorbXNnaWQgIkRvIG5vdCBhcHBseSBwYXRjaGVzIGF0IHRoZSBlbmQgb2YgdGhlIGV4dHJhY3Rpb24uIgorbXNnc3RyICJXZW5kZSBhbSBFbmRlIGRlciBFeHRyYWhpZXJ1bmcga2VpbmUgUGF0Y2hlcyBhbi4iCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjU2MgorIywgbm8td3JhcAorbXNnaWQgIkZvcm1hdDogMy4wIChjdXN0b20pIgorbXNnc3RyICJGb3JtYXQ6IDMuMCAoY3VzdG9tKSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1NjUKK21zZ2lkICIiCisiVGhpcyBmb3JtYXQgaXMgc3BlY2lhbC4gSXQgZG9lc24ndCByZXByZXNlbnQgYSByZWFsIHNvdXJjZSBwYWNrYWdlIGZvcm1hdCAiCisiYnV0IGNhbiBiZSB1c2VkIHRvIGNyZWF0ZSBzb3VyY2UgcGFja2FnZXMgd2l0aCBhcmJpdHJhcnkgZmlsZXMuIgorbXNnc3RyICIiCisiRGllc2VzIEZvcm1hdCBpc3QgYmVzb25kZXJzLiBFcyBzdGVsbHQga2VpbiBlY2h0ZXMgUXVlbGxwYWtldCBkYXIsIGthbm4gYWJlciAiCisienVyIEVyc3RlbGx1bmcgZWluZXMgUXVlbGxwYWtldHMgbWl0IGJlbGllYmlnZW4gRGF0ZWllbiB2ZXJ3YW5kdCB3ZXJkZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjU3MQorbXNnaWQgIiIKKyJBbGwgbm9uLW9wdGlvbiBhcmd1bWVudHMgYXJlIHRha2VuIGFzIGZpbGVzIHRvIGludGVncmF0ZSBpbiB0aGUgZ2VuZXJhdGVkICIKKyJzb3VyY2UgcGFja2FnZS4gVGhleSBtdXN0IGV4aXN0IGFuZCBhcmUgcHJlZmVyYWJseSBpbiB0aGUgY3VycmVudCBkaXJlY3RvcnkuICIKKyJBdCBsZWFzdCBvbmUgZmlsZSBtdXN0IGJlIGdpdmVuLiIKK21zZ3N0ciAiIgorIkFsbGUgQXJndW1lbnRlLCBkaWUga2VpbmUgT3B0aW9uZW4gc2luZCwgd2VyZGVuIGFscyBEYXRlaWVuIHZlcnN0YW5kZW4sIGRpZSAiCisiaW4gZGFzIGdlbmVyaWVydGUgUXVlbGxwYWtldCBpbnRlZ3JpZXJ0IHdlcmRlbiBzb2xsZW4uIFNpZSBtw7xzc2VuIGV4aXN0aWVyZW4gIgorInVuZCBzaWNoIGJldm9yenVndCBpbSBha3R1ZWxsZW4gVmVyemVpY2huaXMgYmVmaW5kZW4uIE1pbmRlc3RlbnMgZWluZSBEYXRlaSAiCisibXVzcyBhbmdlZ2ViZW4gd2VyZGVuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NTcxCisjLCBuby13cmFwCittc2dpZCAiQjwtLXRhcmdldC1mb3JtYXQ9Pkk8dmFsdWU+IgorbXNnc3RyICJCPC0tdGFyZ2V0LWZvcm1hdD0+STxXZXJ0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1NzYKK21zZ2lkICIiCisiQjxSZXF1aXJlZD4uIERlZmluZXMgdGhlIHJlYWwgZm9ybWF0IG9mIHRoZSBnZW5lcmF0ZWQgc291cmNlIHBhY2thZ2UuICBUaGUgIgorImdlbmVyYXRlZCAuZHNjIGZpbGUgd2lsbCBjb250YWluIHRoaXMgdmFsdWUgaW4gaXRzIEk8Rm9ybWF0PiBmaWVsZCBhbmQgbm90ICIKKyJcIjMuMCAoY3VzdG9tKVwiLiIKK21zZ3N0ciAiIgorIkI8Tm90d2VuZGlnPi4gRGVmaW5pZXJ0IGRhcyBlY2h0ZSBGb3JtYXQgZGVzIGdlbmVyaWVydGVuIFF1ZWxscGFrZXRzLiBEaWUgIgorImdlbmVyaWVydGUgLmRzYy1EYXRlaSB3aXJkIGRpZXNlbiBXZXJ0IHVuZCBuaWNodCDCuzMuMCAoY3VzdG9tKcKrIGluIGlocmVtICIKKyJJPEZvcm1hdD4tRmVsZCBlbnRoYWx0ZW4uIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo1NzcKKyMsIG5vLXdyYXAKK21zZ2lkICJGb3JtYXQ6IDMuMCAoZ2l0KSIKK21zZ3N0ciAiRm9ybWF0OiAzLjAgKGdpdCkiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTc5Cittc2dpZCAiVGhpcyBmb3JtYXQgaXMgZXhwZXJpbWVudGFsLiIKK21zZ3N0ciAiRGllc2VzIEZvcm1hdCBpc3QgZXhwZXJpbWVudGVsbC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTg0Cittc2dpZCAiIgorIkEgc291cmNlIHBhY2thZ2UgaW4gdGhpcyBmb3JtYXQgY29uc2lzdHMgb2YgYSBzaW5nbGUgYnVuZGxlIG9mIGEgZ2l0ICIKKyJyZXBvc2l0b3J5IEI8LmdpdD4gdG8gaG9sZCB0aGUgc291cmNlIG9mIGEgcGFja2FnZS4gIFRoZXJlIG1heSBhbHNvIGJlIGEgQjwuIgorImdpdHNoYWxsb3c+IGZpbGUgbGlzdGluZyByZXZpc2lvbnMgZm9yIGEgc2hhbGxvdyBnaXQgY2xvbmUuIgorbXNnc3RyICIiCisiRWluIFF1ZWxscGFrZXQgaW4gZGllc2VtIEZvcm1hdCBiZXN0ZWh0IGF1cyBlaW5lbSBlaW56ZWxuZW4gQsO8bmRlbCBlaW5lcyBHaXQtIgorIkRlcG90cyBCPC5naXQ+LCB1bSBkaWUgUXVlbGxlbiBkZXMgUGFrZXRzIHp1IHZlcndhaHJlbi4gRXMga2FubiBhdWNoIGVpbmUgIgorIkRhdGVpIEI8LmdpdHNoYWxsb3c+IGdlYmVuLCBkaWUgZGllIFJldmlzaW9uZW4gZsO8ciBlaW5lbiBmbGFjaGVuIEdpdC1DbG9uZSAiCisiYXVmZsO8aHJ0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1OTAKK21zZ2lkICIiCisiVGhlIGJ1bmRsZSBpcyBjbG9uZWQgYXMgYSBnaXQgcmVwb3NpdG9yeSB0byB0aGUgdGFyZ2V0IGRpcmVjdG9yeS4gIElmIHRoZXJlICIKKyJpcyBhIGdpdHNoYWxsb3cgZmlsZSwgaXQgaXMgaW5zdGFsbGVkIGFzIGAuZ2l0L3NoYWxsb3dgIGluc2lkZSB0aGUgY2xvbmVkICIKKyJnaXQgcmVwb3NpdG9yeS4iCittc2dzdHIgIiIKKyJEYXMgQsO8bmRlbCB3aXJkIGFscyBHaXQtRGVwb3QgaW4gZGFzIFppZWx2ZXJ6ZWljaG5pcyBnZWtsb250LiBGYWxscyBlcyBlaW5lICIKKyJEYXRlaSBnaXRzaGFsbG93IGdpYnQsIHdpcmQgZGllc2UgYWxzIMK7LmdpdC9zaGFsbG93wqsgaW5uZXJoYWxiIGRlcyBnZWtsb250ZW4gIgorIkdpdC1EZXBvdHMgaW5zdGFsbGllcnQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjU5NQorbXNnaWQgIiIKKyJOb3RlIHRoYXQgYnkgZGVmYXVsdCB0aGUgbmV3IHJlcG9zaXRvcnkgd2lsbCBoYXZlIHRoZSBzYW1lIGJyYW5jaCBjaGVja2VkICIKKyJvdXQgdGhhdCB3YXMgY2hlY2tlZCBvdXQgaW4gdGhlIG9yaWdpbmFsIHNvdXJjZS4gKFR5cGljYWxseSBcIm1hc3RlclwiLCBidXQgIgorIml0IGNvdWxkIGJlIGFueXRoaW5nLikgQW55IG90aGVyIGJyYW5jaGVzIHdpbGwgYmUgYXZhaWxhYmxlIHVuZGVyIGByZW1vdGVzLyIKKyJvcmlnaW4vYC4iCittc2dzdHIgIiIKKyJCZWFjaHRlbiBTaWUsIGRhc3Mgc3RhbmRhcmRtw6TDn2lnIGltIG5ldWVuIERlcG90IGRlciBnbGVpY2hlIFp3ZWlnICIKKyJhdXNnZWNoZWNrdCBpc3QsIGRlciBhdWNoIGluIGRlciB1cnNwcsO8bmdsaWNoZW4gUXVlbGxlIGF1c2dlY2hlY2t0IHdhciAiCisiKHR5cGlzY2hlcndlaXNlIMK7bWFzdGVywqssIGVzIGvDtm5udGUgYWJlciBhdWNoIHdhcyBiZWxpZWJpZyBhbmRlcmVzIHNlaW4pLiAiCisiQWxsZSBhbmRlcmVuIFp3ZWlnZSBzaW5kIHVudGVyIMK7cmVtb3Rlcy9vcmlnaW4vwqsgdmVyZsO8Z2Jhci4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NjAwIGRwa2ctc291cmNlLjE6NjMzCittc2dpZCAiIgorIkJlZm9yZSBnb2luZyBhbnkgZnVydGhlciwgc29tZSBjaGVja3MgYXJlIGRvbmUgdG8gZW5zdXJlIHRoYXQgd2UgZG9uJ3QgaGF2ZSAiCisiYW55IG5vbi1pZ25vcmVkIHVuY29tbWl0dGVkIGNoYW5nZXMuIgorbXNnc3RyICIiCisiQmV2b3IgZm9ydGdlZmFocmVuIHdpcmQsIHdlcmRlbiBlaW5pZ2Ugw5xiZXJwcsO8ZnVuZ2VuIGF1c2dlZsO8aHJ0LCB1bSAiCisic2ljaGVyenVzdGVsbGVuLCBkYXNzIGtlaW5lIG5pY2h0LWlnbm9yaWVydGVuLCBuaWNodC3DvGJlcnRyYWdlbmUgIgorIijCu3VuY29tbWl0dGVkwqspIMOEbmRlcnVuZ2VuIHZvcmxpZWdlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NjA0Cittc2dpZCAiIgorIkI8Z2l0LWJ1bmRsZT4oMSkgaXMgdXNlZCB0byBnZW5lcmF0ZSBhIGJ1bmRsZSBvZiB0aGUgZ2l0IHJlcG9zaXRvcnkuICBCeSAiCisiZGVmYXVsdCwgYWxsIGJyYW5jaGVzIGFuZCB0YWdzIGluIHRoZSByZXBvc2l0b3J5IGFyZSBpbmNsdWRlZCBpbiB0aGUgYnVuZGxlLiIKK21zZ3N0ciAiIgorIkI8Z2l0LWJ1bmRsZT4oMSkgd2lyZCB6dXIgRXJzdGVsbHVuZyBkZXMgQsO8bmRlbHMgZGVzIEdpdC1EZXBvdHMgdmVyd2FuZHQuICIKKyJTdGFuZGFyZG3DpMOfaWcgd2VyZGVuIGFsbGUgWndlaWdlIHVuZCBNYXJraWVydW5nZW4gaW0gRGVwb3QgaW0gQsO8bmRlbCAiCisiZWluYmV6b2dlbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjYwNgorIywgbm8td3JhcAorbXNnaWQgIkI8LS1naXQtcmVmPT5JPHJlZj4iCittc2dzdHIgIkI8LS1naXQtcmVmPT5JPFJlZmVyZW56PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2MTYKK21zZ2lkICIiCisiQWxsb3dzIHNwZWNpZnlpbmcgYSBnaXQgcmVmIHRvIGluY2x1ZGUgaW4gdGhlIGdpdCBidW5kbGUuIFVzZSBkaXNhYmxlcyB0aGUgIgorImRlZmF1bHQgYmVoYXZpb3Igb2YgaW5jbHVkaW5nIGFsbCBicmFuY2hlcyBhbmQgdGFncy4gTWF5IGJlIHNwZWNpZmllZCAiCisibXVsdGlwbGUgdGltZXMuIFRoZSBJPHJlZj4gY2FuIGJlIHRoZSBuYW1lIG9mIGEgYnJhbmNoIG9yIHRhZyB0byBpbmNsdWRlLiBJdCAiCisibWF5IGFsc28gYmUgYW55IHBhcmFtZXRlciB0aGF0IGNhbiBiZSBwYXNzZWQgdG8gQjxnaXQtcmV2LWxpc3Q+KDEpLiBGb3IgIgorImV4YW1wbGUsIHRvIGluY2x1ZGUgb25seSB0aGUgbWFzdGVyIGJyYW5jaCwgdXNlIC0tZ2l0LXJlZj1tYXN0ZXIuIFRvIGluY2x1ZGUgIgorImFsbCB0YWdzIGFuZCBicmFuY2hlcywgZXhjZXB0IGZvciB0aGUgcHJpdmF0ZSBicmFuY2gsIHVzZSAtLWdpdC1yZWY9LS1hbGwgLS0iCisiZ2l0LXJlZj1ecHJpdmF0ZSIKK21zZ3N0ciAiIgorIkVybGF1YnQgZGllIEFuZ2FiZSBlaW5lciBHaXQtUmVmZXJlbnogenVyIEF1Zm5haG1lIGluIGRlbSBHaXQtQsO8bmRlbC4gRGllICIKKyJWZXJ3ZW5kdW5nIGRlYWt0aXZpZXJ0IGRhcyBzdGFuZGFyZG3DpMOfaWdlIFZlcmhhbHRlbiwgYWxsZSBad2VpZ2UgdW5kICIKKyJNYXJraWVydW5nZW4gYXVmenVuZWhtZW4uIEthbm4gbWVocmZhY2ggYW5nZWdlYmVuIHdlcmRlbi4gSTxSZWZlcmVuej4ga2FubiAiCisiZGVyIE5hbWUgZWluZXMgWndlaWdlcyBvZGVyIGVpbmVyIE1hcmtpZXJ1bmcsIGRlci9kaWUgYXVmZ2Vub21tZW4gd2VyZGVuICIKKyJzb2xsLCBzZWluLiBFcyBrYW5uIGF1Y2ggZWluIFBhcmFtZXRlciBzZWluLCBkZXIgYW4gQjxnaXQtcmV2LWxpc3Q+KDEpICIKKyLDvGJlcmdlYmVuIHdlcmRlbiBrYW5uLiBWZXJ3ZW5kZW4gU2llIGJlaXNwaWVsc3dlaXNlIMK7LS1naXQtcmVmPW1hc3RlcsKrLCB1bSAiCisibnVyIGRlbiBNYXN0ZXItWndlaWcgYXVmenVuZWhtZW4uIFVtIGFsbGUgTWFya2llcnVuZ2VuIHVuZCBad2VpZ2UgYXXDn2VyIGRlbSAiCisiWndlaWcgwrtwcml2YXRlwqsgYXVmenVuZWhtZW4sIHZlcndlbmRlbiBTaWUgwrstLWdpdC1yZWY9LS1hbGwgLS1naXQtIgorInJlZj1ecHJpdmF0ZS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjYxNgorIywgbm8td3JhcAorbXNnaWQgIkI8LS1naXQtZGVwdGg9Pkk8bnVtYmVyPiIKK21zZ3N0ciAiQjwtLWdpdC1kZXB0aD0+STxaYWhsPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2MjAKK21zZ2lkICIiCisiQ3JlYXRlcyBhIHNoYWxsb3cgY2xvbmUgd2l0aCBhIGhpc3RvcnkgdHJ1bmNhdGVkIHRvIHRoZSBzcGVjaWZpZWQgbnVtYmVyIG9mICIKKyJyZXZpc2lvbnMuIgorbXNnc3RyICIiCisiRXJzdGVsbHQgZWluZW4gc2VpY2h0ZW4gS2xvbiBtaXQgZWluZW0gVmVybGF1ZiwgZGVyIGJlaSBkZXIgYW5nZWdlYmVuZW4gIgorIkFuemFobCBhbiBSZXZpc2lvbmVuIGFiZ2VzY2huaXR0ZW4gd2lyZC4iCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjYyMAorIywgbm8td3JhcAorbXNnaWQgIkZvcm1hdDogMy4wIChienIpIgorbXNnc3RyICJGb3JtYXQ6IDMuMCAoYnpyKSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2MjMKK21zZ2lkICIiCisiVGhpcyBmb3JtYXQgaXMgZXhwZXJpbWVudGFsLiBJdCBnZW5lcmF0ZXMgYSBzaW5nbGUgdGFyYmFsbCBjb250YWluaW5nIHRoZSAiCisiYnpyIHJlcG9zaXRvcnkuIgorbXNnc3RyICIiCisiRGllc2VzIEZvcm1hdGUgaXN0IGV4cGVyaW1lbnRlbGwuIEVzIGVyc3RlbGx0IGVpbmVuIGVpbnppZ2VuIFRhcmJhbGwsIGRlciAiCisiZGFzIEJ6ci1EZXBvdCBlbnRow6RsdC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NjI4Cittc2dpZCAiIgorIlRoZSB0YXJiYWxsIGlzIHVucGFja2VkIGFuZCB0aGVuIGJ6ciBpcyB1c2VkIHRvIGNoZWNrb3V0IHRoZSBjdXJyZW50IGJyYW5jaC4iCittc2dzdHIgIiIKKyJEZXIgVGFyYmFsbCB3aXJkIGVudHBhY2t0IHVuZCBkYW5uIHdpcmQgQnpyIHZlcndhbmR0LCB1bSBkZW4gYWt0dWVsbGVuIFp3ZWlnICIKKyJhdXN6dWNoZWNrZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjYzNworbXNnaWQgIiIKKyJUaGVuIHRoZSBWQ1Mgc3BlY2lmaWMgcGFydCBvZiB0aGUgc291cmNlIGRpcmVjdG9yeSBpcyBjb3BpZWQgb3ZlciB0byBhICIKKyJ0ZW1wb3JhcnkgZGlyZWN0b3J5LiBCZWZvcmUgdGhpcyB0ZW1wb3JhcnkgZGlyZWN0b3J5IGlzIHBhY2tlZCBpbiBhIHRhcmJhbGwsICIKKyJ2YXJpb3VzIGNsZWFudXAgYXJlIGRvbmUgdG8gc2F2ZSBzcGFjZS4iCittc2dzdHIgIiIKKyJEYW5uIHdpcmQgZGVyIFZDUy1zcGV6aWZpc2NoZSBUZWlsIGRlcyBRdWVsbHBha2V0cyBpbiBlaW4gdGVtcG9yw6RyZXMgIgorIlZlcnplaWNobmlzIGtvcGllcnQuIEJldm9yIGRpZXNlcyB0ZW1wb3LDpHJlIFZlcnplaWNobmlzIGluIGVpbmVuIFRhcmJhbGwgIgorImdlcGFja3Qgd2lyZCwgd2VyZGVuIHZlcnNjaGllZGVuZSBCZXJlaW5pZ3VuZ2VuIGR1cmNoZ2Vmw7xocnQsIHVtIFBsYXR6IHp1ICIKKyJzcGFyZW4uIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1zb3VyY2UuMTo2MzcKKyMsIG5vLXdyYXAKK21zZ2lkICJXQVJOSU5HUyBBTkQgRVJST1JTIgorbXNnc3RyICJXQVJOVU5HRU4gVU5EIEZFSExFUiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6NjM4CisjLCBuby13cmFwCittc2dpZCAibm8gc291cmNlIGZvcm1hdCBzcGVjaWZpZWQgaW4gZGViaWFuL3NvdXJjZS9mb3JtYXQiCittc2dzdHIgImtlaW4gUXVlbGxmb3JtYXQgaW4gZGViaWFuL3NvdXJjZS9mb3JtYXQgYW5nZWdlYmVuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjY0NAorbXNnaWQgIiIKKyJUaGUgZmlsZSBCPGRlYmlhbi9zb3VyY2UvZm9ybWF0PiBzaG91bGQgYWx3YXlzIGV4aXN0IGFuZCBpbmRpY2F0ZSB0aGUgIgorImRlc2lyZWQgc291cmNlIGZvcm1hdC4gRm9yIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5LCBmb3JtYXQgXCIxLjBcIiBpcyAiCisiYXNzdW1lZCB3aGVuIHRoZSBmaWxlIGRvZXNuJ3QgZXhpc3QgYnV0IHlvdSBzaG91bGQgbm90IHJlbHkgb24gdGhpczogYXQgc29tZSAiCisicG9pbnQgaW4gdGhlIGZ1dHVyZSBkcGtnLXNvdXJjZSB3aWxsIGJlIG1vZGlmaWVkIHRvIGZhaWwgd2hlbiB0aGF0IGZpbGUgIgorImRvZXNuJ3QgZXhpc3QuIgorbXNnc3RyICIiCisiRGllIERhdGVpIEI8ZGViaWFuL3NvdXJjZS9mb3JtYXQ+IHNvbGx0ZSBpbW1lciBleGlzdGllcmVuIHVuZCBkYXMgZ2V3w7xuc2NodGUgIgorIlF1ZWxsZm9ybWF0IGFuZ2ViZW4uIEbDvHIgUsO8Y2t3w6RydHNrb21wYXRpYmlsaXTDpHQgd2lyZCBkYXMgRm9ybWF0IMK7MS4wwqsgIgorImFuZ2Vub21tZW4sIHdlbm4gZGllIERhdGVpIG5pY2h0IGV4aXN0aWVydCwgYWJlciBTaWUgc29sbHRlbiBzaWNoIG5pY2h0ICIKKyJkYXJhdWYgdmVybGFzc2VuOiBJcmdlbmR3YW5uIGluIGRlciBadWt1bmZ0IHdpcmQgZHBrZy1zb3VyY2UgdmVyw6RuZGVydCB1bmQgIgorImRhbm4gZmVobHNjaGxhZ2VuLCB3ZW5uIGRpZXNlIERhdGVpIG5pY2h0IGV4aXN0aWVydC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NjUwCittc2dpZCAiIgorIlRoZSByYXRpb25hbGUgaXMgdGhhdCBmb3JtYXQgXCIxLjBcIiBpcyBubyBsb25nZXIgdGhlIHJlY29tbWVuZGVkIGZvcm1hdCwgIgorInlvdSBzaG91bGQgdXN1YWxseSBwaWNrIG9uZSBvZiB0aGUgbmV3ZXIgZm9ybWF0cyAoXCIzLjAgKHF1aWx0KVwiLCBcIjMuMCAiCisiKG5hdGl2ZSlcIikgYnV0IEI8ZHBrZy1zb3VyY2U+IHdpbGwgbm90IGRvIHRoaXMgYXV0b21hdGljYWxseSBmb3IgeW91LiAgSWYgIgorInlvdSB3YW50IHRvIGNvbnRpbnVlIHVzaW5nIHRoZSBvbGQgZm9ybWF0LCB5b3Ugc2hvdWxkIGJlIGV4cGxpY2l0IGFib3V0IGl0ICIKKyJhbmQgcHV0IFwiMS4wXCIgaW4gQjxkZWJpYW4vc291cmNlL2Zvcm1hdD4uIgorbXNnc3RyICIiCisiRGllIEJlZ3LDvG5kdW5nIGxpZWd0IGRhcmluLCBkYXNzIMK7MS4wwqsgbmljaHQgbWVociBkYXMgZW1wZm9obGVuZSBGb3JtYXQgaXN0LCAiCisiU2llIHNvbGx0ZW4gbm9ybWFsZXJ3ZWlzZSBlaW5lcyBkZXIgbmV1ZXJlbiBGb3JtYXRlICjCuzMuMCAocXVpbHQpwqssIMK7My4wICIKKyIobmF0aXZlKcKrKSBhdXN3w6RobGVuLCBhYmVyIEI8ZHBrZy1zb3VyY2U+IHdpcmQgZGllcyBuaWNodCBmw7xyIFNpZSAiCisiYXV0b21hdGlzY2ggdm9ybmVobWVuLiBGYWxscyBTaWUgd2VpdGVyaGluIGRhcyBhbHRlIEZvcm1hdCB2ZXJ3ZW5kZW4gIgorIm3DtmNodGVuLCBzb2xsdGVuIFNpZSBkaWVzIGV4cGxpeml0IGFuZ2ViZW4gdW5kIMK7MS4wwqsgaW4gQjxkZWJpYW4vc291cmNlLyIKKyJmb3JtYXQ+IGVpbnRyYWdlbi4iCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjY1MAorIywgbm8td3JhcAorbXNnaWQgInRoZSBkaWZmIG1vZGlmaWVzIHRoZSBmb2xsb3dpbmcgdXBzdHJlYW0gZmlsZXMiCittc2dzdHIgImRlciBEaWZmIHZlcsOkbmRlcnQgZGllIGZvbGdlbmRlbiBEYXRlaWVuIGRlciBPcmlnaW5hbGF1dG9yZW4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NjU3Cittc2dpZCAiIgorIldoZW4gdXNpbmcgc291cmNlIGZvcm1hdCBcIjEuMFwiIGl0IGlzIHVzdWFsbHkgYSBiYWQgaWRlYSB0byBtb2RpZnkgdXBzdHJlYW0gIgorImZpbGVzIGRpcmVjdGx5IGFzIHRoZSBjaGFuZ2VzIGVuZCB1cCBoaWRkZW4gYW5kIG1vc3RseSB1bmRvY3VtZW50ZWQgaW4gdGhlIC4iCisiZGlmZi5neiBmaWxlLiBJbnN0ZWFkIHlvdSBzaG91bGQgc3RvcmUgeW91ciBjaGFuZ2VzIGFzIHBhdGNoZXMgaW4gdGhlIGRlYmlhbiAiCisiZGlyZWN0b3J5IGFuZCBhcHBseSB0aGVtIGF0IGJ1aWxkLXRpbWUuIFRvIGF2b2lkIHRoaXMgY29tcGxleGl0eSB5b3UgY2FuICIKKyJhbHNvIHVzZSB0aGUgZm9ybWF0IFwiMy4wIChxdWlsdClcIiB0aGF0IG9mZmVycyB0aGlzIG5hdGl2ZWx5LiIKK21zZ3N0ciAiIgorIkJlaW0gRWluc2F0eiBkZXMgUXVlbGxmb3JtYXRzIMK7MS4wwqsgaXN0IGVzIG5vcm1hbGVyd2Vpc2Uga2VpbmUgZ3V0ZSBJZGVlLCAiCisiZGllIERhdGVpZW4gZGVyIE9yaWdpbmFsYXV0b3JlbiBkaXJla3QgenUgdmVyw6RuZGVybiwgZGEgZGllIMOEbmRlcnVuZ2VuICIKKyJncsO2w590ZW50ZWlscyB2ZXJzdGVja3QgdW5kIHVuZG9rdW1lbnRpZXJ0IGluIGRlciBkaWZmLmd6LURhdGVpIHZlcnNjaHdpbmRlbi4gIgorIlN0YXR0ZGVzc2VuIHNvbGx0ZW4gU2llIElocmUgw4RuZGVydW5nZW4gYWxzIFBhdGNoZXMgaW0gZGViaWFuLVZlcnplaWNobmlzICIKKyJzcGVpY2hlcm4gdW5kIHfDpGhyZW5kIGRlcyBCYXVzIGFud2VuZGVuLiBVbSBkaWVzZSBLb21wbGV4aXTDpHQgenUgdmVybWVpZGVuLCAiCisia8O2bm5lbiBTaWUgYXVjaCBkYXMgRm9ybWF0IMK7My4wIChxdWlsdCnCqyB2ZXJ3ZW5kZW4sIGRhcyBkaWVzIHZvbiBzaWNoIGF1cyAiCisiYW5iaWV0ZXQuIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo2NTcKKyMsIG5vLXdyYXAKK21zZ2lkICJjYW5ub3QgcmVwcmVzZW50IGNoYW5nZSB0byBJPGZpbGU+IgorbXNnc3RyICJrYW5uIMOEbmRlcnVuZ2VuIGFuIEk8RGF0ZWk+IG5pY2h0IGRhcnN0ZWxsZW4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NjYzCittc2dpZCAiIgorIkNoYW5nZXMgdG8gdXBzdHJlYW0gc291cmNlcyBhcmUgdXN1YWxseSBzdG9yZWQgd2l0aCBwYXRjaCBmaWxlcywgYnV0IG5vdCBhbGwgIgorImNoYW5nZXMgY2FuIGJlIHJlcHJlc2VudGVkIHdpdGggcGF0Y2hlczogdGhleSBjYW4gb25seSBhbHRlciB0aGUgY29udGVudCBvZiAiCisicGxhaW4gdGV4dCBmaWxlcy4gSWYgeW91IHRyeSByZXBsYWNpbmcgYSBmaWxlIHdpdGggc29tZXRoaW5nIG9mIGEgZGlmZmVyZW50ICIKKyJ0eXBlIChmb3IgZXhhbXBsZSByZXBsYWNpbmcgYSBwbGFpbiBmaWxlIHdpdGggYSBzeW1saW5rIG9yIGEgZGlyZWN0b3J5KSwgeW91ICIKKyJ3aWxsIGdldCB0aGlzIGVycm9yIG1lc3NhZ2UuIgorbXNnc3RyICIiCisiw4RuZGVydW5nZW4gYW4gZGVuIFF1ZWxsZW4gZGVyIE9yaWdpbmFsYXV0b3JlbiB3ZXJkZW4gbm9ybWFsZXJ3ZWlzZSBhbHMgUGF0Y2gtIgorIkRhdGVpZW4gZ2VzcGVpY2hlcnQsIGFiZXIgbmljaHQgYWxsZSDDhG5kZXJ1bmdlbiBrw7ZubmVuIGFscyBQYXRjaGVzICIKKyJkYXJnZXN0ZWxsdCB3ZXJkZW46IFNpZSBrw7ZubmVuIG51ciDDhG5kZXJ1bmdlbiBhbSBJbmhhbHQgZWluZmFjaGVyICIKKyJUZXh0ZGF0ZWllbiB2b3JuZWhtZW4uIEZhbGxzIFNpZSB2ZXJzdWNoZW4sIGVpbmUgRGF0ZWkgbWl0IGV0d2FzIGVpbmVzICIKKyJhbmRlcmVuIFR5cHMgenUgZXJzZXR6ZW4gKGJlaXNwaWVsc3dlaXNlIGVpbmUgZWluZmFjaGUgRGF0ZWkgbWl0IGVpbmVtICIKKyJTeW1saW5rIG9kZXIgZWluZW0gVmVyemVpY2huaXMpLCB3ZXJkZW4gU2llIGRpZXNlIEZlaGxlcm1lbGR1bmcgZXJoYWx0ZW4uIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo2NjMKKyMsIG5vLXdyYXAKK21zZ2lkICJuZXdseSBjcmVhdGVkIGVtcHR5IGZpbGUgSTxmaWxlPiB3aWxsIG5vdCBiZSByZXByZXNlbnRlZCBpbiBkaWZmIgorbXNnc3RyICJuZXUgYW5nZWxlZ3RlIGxlZXJlIERhdGVpIEk8RGF0ZWk+IHdpcmQgaW0gRGlmZiBuaWNodCBkYXJnZXN0ZWxsdCB3ZXJkZW4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NjY2Cittc2dpZCAiIgorIkVtcHR5IGZpbGVzIGNhbid0IGJlIGNyZWF0ZWQgd2l0aCBwYXRjaCBmaWxlcy4gVGh1cyB0aGlzIGNoYW5nZSBpcyBub3QgIgorInJlY29yZGVkIGluIHRoZSBzb3VyY2UgcGFja2FnZSBhbmQgeW91IGFyZSB3YXJuZWQgYWJvdXQgaXQuIgorbXNnc3RyICIiCisiTGVlcmUgRGF0ZWllbiBrw7ZubmVuIG5pY2h0IG1pdCBQYXRjaGRhdGVpZW4gZXJzdGVsbHQgd2VyZGVuLiBEYWhlciB3aXJkICIKKyJkaWVzZSDDhG5kZXJ1bmcgbmljaHQgaW0gUXVlbGxwYWtldCBhdWZnZXplaWNobmV0IHVuZCBTaWUgZXJoYWx0ZW4gZGF6dSBkaWVzZSAiCisiV2FybnVuZy4iCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjY2NgorIywgbm8td3JhcAorbXNnaWQgImV4ZWN1dGFibGUgbW9kZSBJPHBlcm1zPiBvZiBJPGZpbGU+IHdpbGwgbm90IGJlIHJlcHJlc2VudGVkIGluIGRpZmYiCittc2dzdHIgImF1c2bDvGhyYmFyZXIgTW9kdXMgSTxSZWNodGU+IHZvbiBJPERhdGVpPiB3aXJkIG5pY2h0IGltIERpZmYgZGFyZ2VzdGVsbHQgd2VyZGVuIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo2NjcKKyMsIG5vLXdyYXAKK21zZ2lkICJzcGVjaWFsIG1vZGUgSTxwZXJtcz4gb2YgSTxmaWxlPiB3aWxsIG5vdCBiZSByZXByZXNlbnRlZCBpbiBkaWZmIgorbXNnc3RyICJiZXNvbmRlcmVyIE1vZHVzIEk8UmVjaHRlPiB2b24gSTxEYXRlaT4gd2lyZCBuaWNodCBpbSBEaWZmIGRhcmdlc3RlbGx0IHdlcmRlbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2NzEKK21zZ2lkICIiCisiUGF0Y2ggZmlsZXMgZG8gbm90IHJlY29yZCBwZXJtaXNzaW9ucyBvZiBmaWxlcyBhbmQgdGh1cyBtb2RpZmllZCBwZXJtaXNzaW9ucyAiCisiYXJlIG5vdCBzdG9yZWQgaW4gdGhlIHNvdXJjZSBwYWNrYWdlLiBUaGlzIHdhcm5pbmcgcmVtaW5kcyB5b3Ugb2YgdGhhdCBmYWN0LiIKK21zZ3N0ciAiIgorIlBhdGNoLURhdGVpZW4gc3BlaWNoZXJuIG5pY2h0IGRpZSBSZWNodGUgdm9uIERhdGVpZW4gdW5kIGRhaGVyIHdlcmRlbiAiCisiZ2XDpG5kZXJ0ZSBSZWNodGUgbmljaHQgaW0gUXVlbGxwYWtldCBnZXNwZWljaGVydC4gRGllc2UgV2FybnVuZyBlcmlubmVydCBTaWUgIgorImFuIGRpZXNlIFRhdHNhY2hlLiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctc291cmNlLjE6NjcxCisjLCBuby13cmFwCittc2dpZCAiRklMRSBGT1JNQVRTIgorbXNnc3RyICJEQVRFSUZPUk1BVEUiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjY3MgorIywgbm8td3JhcAorbXNnaWQgImRlYmlhbi9zb3VyY2UvZm9ybWF0IgorbXNnc3RyICJkZWJpYW4vc291cmNlL2Zvcm1hdCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2NzYKK21zZ2lkICIiCisiVGhpcyBmaWxlIGNvbnRhaW5zIG9uIGEgc2luZ2xlIGxpbmUgdGhlIGZvcm1hdCB0aGF0IHNob3VsZCBiZSB1c2VkIHRvIGJ1aWxkICIKKyJ0aGUgc291cmNlIHBhY2thZ2UgKHBvc3NpYmxlIGZvcm1hdHMgYXJlIGRlc2NyaWJlZCBhYm92ZSkuIE5vIGxlYWRpbmcgb3IgIgorInRyYWlsaW5nIHNwYWNlcyBhcmUgYWxsb3dlZC4iCittc2dzdHIgIiIKKyJEaWVzZSBEYXRlaSBlbnRow6RsdCBhdWYgZWluZXIgZWluemVsbmVuIFplaWxlIGRhcyBGb3JtYXQsIGRhcyB6dW0gQmF1IGRlcyAiCisiUXVlbGxwYWtldHMgdmVyd2FuZHQgd2VyZGVuIHNvbGwgKG3DtmdsaWNoZSBGb3JtYXRlIHNpbmQgb2JlbiBiZXNjaHJpZWJlbikuICIKKyJMZWVyemVpY2hlbiBhbSBaZWlsZW5hbmZhbmcgb2RlciAtZW5kZSBzaW5kIG5pY2h0IGVybGF1YnQuIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo2NzYKKyMsIG5vLXdyYXAKK21zZ2lkICJkZWJpYW4vc291cmNlL2luY2x1ZGUtYmluYXJpZXMiCittc2dzdHIgImRlYmlhbi9zb3VyY2UvaW5jbHVkZS1iaW5hcmllcyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2ODAKK21zZ2lkICIiCisiVGhpcyBmaWxlIGNvbnRhaW5zIGEgbGlzdCBvZiBiaW5hcnkgZmlsZXMgKG9uZSBwZXIgbGluZSkgdGhhdCBzaG91bGQgYmUgIgorImluY2x1ZGVkIGluIHRoZSBkZWJpYW4gdGFyYmFsbC4gTGVhZGluZyBhbmQgdHJhaWxpbmcgc3BhY2VzIGFyZSBzdHJpcHBlZC4gICIKKyJMaW5lcyBzdGFydGluZyB3aXRoIFwiI1wiIGFyZSBjb21tZW50cyBhbmQgYXJlIHNraXBwZWQuIEVtcHR5IGxpbmVzIGFyZSAiCisiaWdub3JlZC4iCittc2dzdHIgIiIKKyJEaWVzZSBEYXRlaSBlbnRow6RsdCBlaW5lIExpc3RlIHZvbiBCaW7DpHJkYXRlaWVuIChlaW5lIHBybyBaZWlsZSksIGRpZSBpbiBkZW4gIgorIkRlYmlhbi1UYXJiYWxsIGF1Zmdlbm9tbWVuIHdlcmRlbiBzb2xsZW4uIExlZXJ6ZWljaGVuIGFtIEFuZmFuZyB1bmQgRW5kZSBkZXIgIgorIlplaWxlIHdlcmRlbiBlbnRmZXJudC4gWmVpbGVuLCBkaWUgbWl0IMK7I8KrIGFuZmFuZ2VuLCBzaW5kIEtvbW1lbnRhcmUgdW5kICIKKyJ3ZXJkZW4gw7xiZXJzcHJ1bmdlbi4gTGVlcmUgWmVpbGVuIHdlcmRlbiBpZ25vcmllcnQuIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo2ODAKKyMsIG5vLXdyYXAKK21zZ2lkICJkZWJpYW4vc291cmNlL29wdGlvbnMiCittc2dzdHIgImRlYmlhbi9zb3VyY2Uvb3B0aW9ucyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2ODYKK21zZ2lkICIiCisiVGhpcyBmaWxlIGNvbnRhaW5zIGEgbGlzdCBvZiBsb25nIG9wdGlvbnMgdGhhdCBzaG91bGQgYmUgYXV0b21hdGljYWxseSAiCisicHJlcGVuZGVkIHRvIHRoZSBzZXQgb2YgY29tbWFuZCBsaW5lIG9wdGlvbnMgb2YgYSBCPGRwa2ctc291cmNlIC1iPiBvciAiCisiQjxkcGtnLXNvdXJjZSAtLXByaW50LWZvcm1hdD4gY2FsbC4gT3B0aW9ucyBsaWtlIEI8LS1jb21wcmVzc2lvbj4gYW5kIEI8LS0iCisiY29tcHJlc3Npb24tbGV2ZWw+IGFyZSB3ZWxsIHN1aXRlZCBmb3IgdGhpcyBmaWxlLiIKK21zZ3N0ciAiIgorIkRpZXNlIERhdGVpIGVuaMOkbHQgZWluZSBMaXN0ZSBhbiBPcHRpb25lbiwgZGllIGF1dG9tYXRpc2NoIHZvciBkZW4gU2F0eiBhbiAiCisiQmVmZWhsc3plaWxlbm9wdGlvbmVuIGJlaSBlaW5lbSBBdWZydWYgQjxkcGtnLXNvdXJjZSAtYj4gb2RlciBCPGRwa2ctc291cmNlICIKKyItLXByaW50LWZvcm1hdD4gZ2VzZXR6dCB3ZXJkZW4gc29sbGVuLiBPcHRpb25lbiB3aWUgQjwtY29tcHJlc3Npb24+IHVuZCBCPC0tIgorImNvbXByZXNzaW9uLWxldmVsPiBzaW5kIGbDvHIgZGllc2UgRGF0ZWkgZ3V0IGdlZWlnbmV0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2OTIKK21zZ2lkICIiCisiRWFjaCBvcHRpb24gc2hvdWxkIGJlIHB1dCBvbiBhIHNlcGFyYXRlIGxpbmUuIEVtcHR5IGxpbmVzIGFuZCBsaW5lcyBzdGFydGluZyAiCisid2l0aCBcIiNcIiBhcmUgaWdub3JlZC4gVGhlIGxlYWRpbmcgXCItLVwiIHNob3VsZCBiZSBzdHJpcHBlZCBhbmQgc2hvcnQgIgorIm9wdGlvbnMgYXJlIG5vdCBhbGxvd2VkLiBPcHRpb25hbCBzcGFjZXMgYXJlIGFsbG93ZWQgYXJvdW5kIHRoZSBcIj1cIiBzeW1ib2wgIgorImFuZCBvcHRpb25hbCBxdW90ZXMgYXJlIGFsbG93ZWQgYXJvdW5kIHRoZSB2YWx1ZS4gIEhlcmUncyBhbiBleGFtcGxlIG9mIHN1Y2ggIgorImEgZmlsZToiCittc2dzdHIgIiIKKyJKZWRlIE9wdGlvbiBzb2xsdGUgYXVmIGVpbmVyIHNlcGFyYXRlbiBaZWlsZSBzdGVoZW4uIExlZXJ6ZWlsZW4gdW5kIFplaWxlbiwgIgorImRpZSBtaXQgwrsjwqsgYmVnaW5uZW4sIHdlcmRlbiBpZ25vcmllcnQuIERhcyBlaW5sZWl0ZW5kZSDCuy0twqsgc29sbHRlIGVudGZlcm50ICIKKyJ3ZXJkZW4gdW5kIGt1cnplIE9wdGlvbmVuIHNpbmQgbmljaHQgZXJsYXVidC4gT3B0aW9uYWxlIExlZXJ6ZWljaGVuIHVtIGRhcyAiCisiwrs9wqstU3ltYm9sIHNvd2llIG9wdGlvbmFsZSBBbmbDvGhydW5nc3plaWNoZW4gdW0gZGVuIFdlcnQgc2luZCBlcmxhdWJ0LiBIaWVyICIKKyJpc3QgZWluIEJlaXNwaWVsIGbDvHIgc28gZWluZSBEYXRlaToiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NzAwCisjLCBuby13cmFwCittc2dpZCAiIgorIiAgIyBsZXQgZHBrZy1zb3VyY2UgY3JlYXRlIGEgZGViaWFuLnRhci5iejIgd2l0aCBtYXhpbWFsIGNvbXByZXNzaW9uXG4iCisiICBjb21wcmVzc2lvbiA9IFwiYnppcDJcIlxuIgorIiAgY29tcHJlc3Npb24tbGV2ZWwgPSA5XG4iCisiICAjIHVzZSBkZWJpYW4vcGF0Y2hlcy9kZWJpYW4tY2hhbmdlcyBhcyBhdXRvbWF0aWMgcGF0Y2hcbiIKKyIgIHNpbmdsZS1kZWJpYW4tcGF0Y2hcbiIKKyIgICMgaWdub3JlIGNoYW5nZXMgb24gY29uZmlnLntzdWIsZ3Vlc3N9XG4iCisiICBleHRlbmQtZGlmZi1pZ25vcmUgPSBcIihefC8pKGNvbmZpZy5zdWJ8Y29uZmlnLmd1ZXNzKSRcIlxuIgorbXNnc3RyICIiCisiICAjIGxhc3MgZHBrZy1zb3VyY2UgZWluIGRlYmlhbi50YXIuYnoyIG1pdCBtYXhpbWFsZXIgS29tcHJpbWllcnVuZ1xuIgorIiAgIyBlcnN0ZWxsZW5cbiIKKyIgIGNvbXByZXNzaW9uID0gXCJiemlwMlwiXG4iCisiICBjb21wcmVzc2lvbi1sZXZlbCA9IDlcbiIKKyIgICMgdmVyd2VuZGUgZGViaWFuL3BhdGNoZXMvZGViaWFuLWNoYW5nZXMgYWxzIGF1dG9tYXRpc2NoZW4gUGF0Y2hcbiIKKyIgIHNpbmdsZS1kZWJpYW4tcGF0Y2hcbiIKKyIgICMgaWdub3JpZXJlIMOEbmRlcnVuZ2VuIHZvbiBjb25maWcue3N1YixndWVzc31cbiIKKyIgIGV4dGVuZC1kaWZmLWlnbm9yZSA9IFwiKF58LykoY29uZmlnLnN1Ynxjb25maWcuZ3Vlc3MpJFwiXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NzAzCittc2dpZCAiIgorIk5vdGU6IEI8Zm9ybWF0PiBvcHRpb25zIGFyZSBub3QgYWNjZXB0ZWQgaW4gdGhpcyBmaWxlLCB5b3Ugc2hvdWxkIHVzZSAiCisiQjxkZWJpYW4vc291cmNlL2Zvcm1hdD4gaW5zdGVhZC4iCittc2dzdHIgIiIKKyJIaW53ZWlzOiBCPC0tZm9ybWF0Pi1PcHRpb25lbiB3ZXJkZW4gaW4gZGllc2VyIERhdGVpIG5pY2h0IGFremVwdGllcnQsIFNpZSAiCisic29sbHRlbiBzdGF0dGRlc3NlbiBCPGRlYmlhbi9zb3VyY2UvZm9ybWF0PiB2ZXJ3ZW5kZW4uIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo3MDMKKyMsIG5vLXdyYXAKK21zZ2lkICJkZWJpYW4vc291cmNlL2xvY2FsLW9wdGlvbnMiCittc2dzdHIgImRlYmlhbi9zb3VyY2UvbG9jYWwtb3B0aW9ucyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo3MDgKK21zZ2lkICIiCisiRXhhY3RseSBsaWtlIEI8ZGViaWFuL3NvdXJjZS9vcHRpb25zPiBleGNlcHQgdGhhdCB0aGUgZmlsZSBpcyBub3QgaW5jbHVkZWQgIgorImluIHRoZSBnZW5lcmF0ZWQgc291cmNlIHBhY2thZ2UuIEl0IGNhbiBiZSB1c2VmdWwgdG8gc3RvcmUgYSBwcmVmZXJlbmNlIHRpZWQgIgorInRvIHRoZSBtYWludGFpbmVyIG9yIHRvIHRoZSBWQ1MgcmVwb3NpdG9yeSB3aGVyZSB0aGUgc291cmNlIHBhY2thZ2UgaXMgIgorIm1haW50YWluZWQuIgorbXNnc3RyICIiCisiR2VuYXUgd2llIEI8ZGViaWFuL3NvdXJjZS9vcHRpb25zPiwgYXXDn2VyIGRhcyBkaWUgRGF0ZWkgbmljaHQgaW4gZGFzICIKKyJlcnN0ZWxsdGUgUXVlbGxwYWtldCBhdWZnZW5vbW1lbiB3aXJkLiBEaWVzIGthbm4gbsO8dHpsaWNoIHNlaW4sIHVtICIKKyJWb3JlaW5zdGVsbHVuZ2VuIHp1IHNwZWljaGVybiwgZGllIGFuIGVpbmVuIGJlc3RpbW10ZW4gQmV0cmV1ZXIgb2RlciBhbiBlaW4gIgorImJlc3RpbW10ZXMgVkNTLCBpbiBkZW0gZGFzIFBha2V0IGdld2FydGV0IHdpcmQsIGdlYnVuZGVuIHNpbmQuIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo3MDgKKyMsIG5vLXdyYXAKK21zZ2lkICJkZWJpYW4vc291cmNlL2xvY2FsLXBhdGNoLWhlYWRlciIKK21zZ3N0ciAiZGViaWFuL3NvdXJjZS9sb2NhbC1wYXRjaC1oZWFkZXIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjcwOQorIywgbm8td3JhcAorbXNnaWQgImRlYmlhbi9zb3VyY2UvcGF0Y2gtaGVhZGVyIgorbXNnc3RyICJkZWJpYW4vc291cmNlL3BhdGNoLWhlYWRlciIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo3MTMKK21zZ2lkICIiCisiRnJlZSBmb3JtIHRleHQgdGhhdCBpcyBwdXQgb24gdG9wIG9mIHRoZSBhdXRvbWF0aWMgcGF0Y2ggZ2VuZXJhdGVkIGluICIKKyJmb3JtYXRzIFwiMi4wXCIgb3IgXCIzLjAgKHF1aWx0KVwiLiBCPGxvY2FsLXBhdGNoLWhlYWRlcj4gaXMgbm90IGluY2x1ZGVkIGluICIKKyJ0aGUgZ2VuZXJhdGVkIHNvdXJjZSBwYWNrYWdlIHdoaWxlIEI8cGF0Y2gtaGVhZGVyPiBpcy4iCittc2dzdHIgIiIKKyJGb3JtbG9zZXIgVGV4dCwgZGVyIGFuIGRlbiBBbmZhbmcgZGVzIGluIGRlbiBGb3JtYXRlbiDCuzIuMMKrIHVuZCDCuzMuMCAiCisiKHF1aWx0KcKrIGdlbmVyaWVydGVuIGF1dG9tYXRpc2NoZW4gUGF0Y2hlcyBnZXN0ZWxsdCB3aXJkLiBCPGxvY2FsLXBhdGNoLSIKKyJoZWFkZXI+IHdpcmQgZGVtIGVyc3RlbGxlbiBRdWVsbHBha2V0IG5pY2h0IGhpbnp1Z2Vmw7xndCwgQjxwYXRjaC1oZWFkZXI+ICIKKyJkYWdlZ2VuIHNjaG9uLiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6NzEzCisjLCBuby13cmFwCittc2dpZCAiZGViaWFuL3BhdGNoZXMvc2VyaWVzIgorbXNnc3RyICJkZWJpYW4vcGF0Y2hlcy9zZXJpZXMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NzIyCittc2dpZCAiIgorIlRoaXMgZmlsZSBsaXN0cyBhbGwgcGF0Y2hlcyB0aGF0IGhhdmUgdG8gYmUgYXBwbGllZCAoaW4gdGhlIGdpdmVuIG9yZGVyKSAgb24gIgorInRvcCBvZiB0aGUgdXBzdHJlYW0gc291cmNlIHBhY2thZ2UuIExlYWRpbmcgYW5kIHRyYWlsaW5nIHNwYWNlcyBhcmUgIgorInN0cmlwcGVkLiBMaW5lcyBzdGFydGluZyB3aXRoIFwiI1wiIGFyZSBjb21tZW50cyBhbmQgYXJlIHNraXBwZWQuIEVtcHR5ICIKKyJsaW5lcyBhcmUgaWdub3JlZC4gUmVtYWluaW5nIGxpbmVzIHN0YXJ0IHdpdGggYSBwYXRjaCBmaWxlbmFtZSAocmVsYXRpdmUgdG8gIgorInRoZSBCPGRlYmlhbi9wYXRjaGVzLz4gZGlyZWN0b3J5KSB1cCB0byB0aGUgZmlyc3Qgc3BhY2UgY2hhcmFjdGVyIG9yIHRoZSBlbmQgIgorIm9mIGxpbmUuIE9wdGlvbmFsIHF1aWx0IG9wdGlvbnMgY2FuIGZvbGxvdyB1cCB0byB0aGUgZW5kIG9mIGxpbmUgb3IgdGhlICIKKyJmaXJzdCBcIiNcIiBwcmVjZWRlZCBieSBvbmUgb3IgbW9yZSBzcGFjZXMgKHdoaWNoIG1hcmtzIHRoZSBzdGFydCBvZiBhICIKKyJjb21tZW50IHVwIHRvIHRoZSBlbmQgb2YgbGluZSkuIgorbXNnc3RyICIiCisiRGllc2UgRGF0ZWkgZsO8aHJ0IGFsbGUgUGF0Y2hlcyBhdWYsIGRpZSAoaW4gZGVyIGFuZ2VnZWJlbmVuIFJlaWhlbmZvbGdlKSBhdWYgIgorImRhcyBRdWVsbHBha2V0IGRlciBPcmlnaW5hbGF1dG9yZW4gYW5nZXdhbmR0IHdlcmRlbiBtw7xzc2VuLiBMZWVyemVpY2hlbiBhbSAiCisiQW5mYW5nIHVuZCBFbmRlIHdlcmRlbiBlbnRmZXJudC4gWmVpbGVuLCBkaWUgbWl0IMK7I8KrIGFuZmFuZ2VuLCBzaW5kICIKKyJLb21tZW50YXJlIHVuZCB3ZXJkZW4gw7xiZXJzcHJ1bmdlbi4gTGVlcmUgWmVpbGVuIHdlcmRlbiBpZ25vcmllcnQuIERpZSAiCisidmVyYmxlaWJlbmVuIFplaWxlbiBiZWdpbm5lbiBtaXQgZGVtIERhdGVpbmFtZW4gZWluZXMgUGF0Y2hlcyAocmVsYXRpdiB6dW0gIgorIlZlcnplaWNobmlzIEI8ZGViaWFuL3BhdGNoZXMvPikgYmlzIHp1bSBlcnN0ZW4gTGVlcnplaWNoZW4gb2RlciBiaXMgenVtICIKKyJaZWlsZW5lbmRlLiBCaXMgenVtIEVuZGUgZGVyIFplaWxlIG9kZXIgYmlzIHp1bSBlcnN0ZW4gwrsjwqsgZ2Vmb2xndCB2b24gZWluZW0gIgorIm9kZXIgbWVocmVyZW4gTGVlcnplaWNoZW4gKGRpZXMgbWFya2llcnQgZGVuIEJlZ2lubiBlaW5lcyBLb21tZW50YXJzLCBkZXIgIgorImJpcyB6dW0gWmVpbGVuZW5kZSBnZWh0KSBrw7ZubmVuIG9wdGlvbmFsZSBRdWlsdC1CZWZlaGxlIGZvbGdlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NzI5Cittc2dpZCAiQjxkcGtnLWRlYj4oMSksIEI8ZHBrZz4oMSksIEI8ZHNlbGVjdD4oMSkuIgorbXNnc3RyICJCPGRwa2ctZGViPigxKSwgQjxkcGtnPigxKSwgQjxkc2VsZWN0PigxKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NzM2Cittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMDgtMjAxMSBSYXBoYVxcWzplXWwgSGVydHpvZyIKK21zZ3N0ciAiQ29weXJpZ2h0IFxcKGNvIDIwMDgtMjAxMSBSYXBoYVxcWzplXWwgSGVydHpvZyIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctc3BsaXQuMToyCisjLCBuby13cmFwCittc2dpZCAiZHBrZy1zcGxpdCIKK21zZ3N0ciAiZHBrZy1zcGxpdCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjUKK21zZ2lkICJkcGtnLXNwbGl0IC0gRGViaWFuIHBhY2thZ2UgYXJjaGl2ZSBzcGxpdC9qb2luIHRvb2wiCittc2dzdHIgImRwa2ctc3BsaXQgLSBEZWJpYW4tUGFrZXRhcmNoaXYgVGVpbHVuZ3MtIHVuZCBadXNhbW1lbnNldHp3ZXJremV1ZyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjkKK21zZ2lkICJCPGRwa2ctc3BsaXQ+IFtJPG9wdGlvbj4uLi5dIEk8Y29tbWFuZD4iCittc2dzdHIgIkI8ZHBrZy1zcGxpdD4gW0k8T3B0aW9uPi4uLl0gSTxCZWZlaGw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTUKK21zZ2lkICIiCisiQjxkcGtnLXNwbGl0PiBzcGxpdHMgRGViaWFuIGJpbmFyeSBwYWNrYWdlIGZpbGVzIGludG8gc21hbGxlciBwYXJ0cyBhbmQgIgorInJlYXNzZW1ibGVzIHRoZW0gYWdhaW4sIHRvIHN1cHBvcnQgdGhlIHN0b3JhZ2Ugb2YgbGFyZ2UgcGFja2FnZSBmaWxlcyBvbiAiCisic21hbGwgbWVkaWEgc3VjaCBhcyBmbG9wcHkgZGlza3MuIgorbXNnc3RyICIiCisiQjxkcGtnLXNwbGl0PiB6ZXJ0ZWlsdCBEZWJpYW4tQmluw6RycGFrZXRkYXRlaWVuIGluIGtsZWluZXJlIFRlaWxlIHVuZCBzZXR6dCAiCisiZGllc2Ugd2llZGVyIHp1c2FtbWVuLCB1bSBkaWUgTGFnZXJ1bmcgdm9uIGdyb8OfZW4gUGFrZXRkYXRlaWVuIGF1ZiBrbGVpbmVuICIKKyJNZWRpZW4gd2llIERpc2tldHRlbiB6dSBlcm3DtmdsaWNoZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTkKK21zZ2lkICIiCisiSXQgY2FuIGJlIG9wZXJhdGVkIG1hbnVhbGx5IHVzaW5nIHRoZSBCPC0tc3BsaXQ+LCBCPC0tam9pbj4gYW5kIEI8LS1pbmZvPiAiCisib3B0aW9ucy4iCittc2dzdHIgIiIKKyJFcyBrYW5uIG1hbnVlbGwgbWl0IGRlbiBPcHRpb25lbiBCPC0tc3BsaXQ+LCBCPC0tam9pbj4gdW5kIEI8LS1pbmZvPiAiCisidmVyd2VuZGV0IHdlcmRlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToyNworbXNnaWQgIiIKKyJJdCBhbHNvIGhhcyBhbiBhdXRvbWF0aWMgbW9kZSwgaW52b2tlZCB1c2luZyB0aGUgQjwtLWF1dG8+IG9wdGlvbiwgd2hlcmUgaXQgIgorIm1haW50YWlucyBhIHF1ZXVlIG9mIHBhcnRzIHNlZW4gYnV0IG5vdCB5ZXQgcmVhc3NlbWJsZWQgYW5kIHJlYXNzZW1ibGVzIGEgIgorInBhY2thZ2UgZmlsZSB3aGVuIGl0IGhhcyBzZWVuIGFsbCBvZiBpdHMgcGFydHMuIFRoZSBCPC0tbGlzdHE+IGFuZCBCPC0tIgorImRpc2NhcmQ+IG9wdGlvbnMgYWxsb3cgdGhlIG1hbmFnZW1lbnQgb2YgdGhlIHF1ZXVlLiIKK21zZ3N0ciAiIgorIkVzIGhhdCBhdWNoIGVpbmVuIGF1dG9tYXRpc2NoZW4gTW9kdXMsIGRlciDDvGJlciBkaWUgQjwtLWF1dG8+LU9wdGlvbiAiCisiYXVmZ2VydWZlbiB3aXJkLCB3byBlcyBlaW5lIExpc3RlIHZvbiBUZWlsZW4sIGRpZSBiZXJlaXRzIGdlc2VoZW4sIGFiZXIgbm9jaCAiCisibmljaHQgd2llZGVyIHp1c2FtbWVuZ2VzZXR6dCB3dXJkZW4sIHZlcndhbHRldC4gU29iYWxkIGFsbGUgVGVpbGUgZ2VzZWhlbiAiCisid3VyZGVuLCB3aXJkIGRhbm4gZGllIERhdGVpIHdpZWRlciB6dXNhbW1lbmdlc2V0enQuIERpZSBPcHRpb25lbiBCPC0tbGlzdHE+ICIKKyJ1bmQgQjwtLWRpc2NhcmQ+IGVybGF1YmVuIGRpZSBWZXJ3YWx0dW5nIGRpZXNlciBMaXN0ZS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMTozMAorbXNnaWQgIiIKKyJBbGwgc3BsaXR0aW5nLCBqb2luaW5nIGFuZCBxdWV1ZWluZyBvcGVyYXRpb25zIHByb2R1Y2UgaW5mb3JtYXRpdmUgbWVzc2FnZXMgIgorIm9uIHN0YW5kYXJkIG91dHB1dDsgdGhlc2UgbWF5IHNhZmVseSBiZSBpZ25vcmVkLiIKK21zZ3N0ciAiIgorIkFsbGUgVGVpbHVuZ3MtLCBWZXJlaW5pZ3VuZ3MtIHVuZCBXYXJ0ZW9wZXJhdGlvbmVuIGVyemV1Z2VuIGluZm9ybWF0aXZlICIKKyJOYWNocmljaHRlbiBhdWYgZGVyIFN0YW5kYXJkYXVzZ2FiZTsgZGllc2Uga8O2bm5lbiBvaG5lIFJpc2lrbyBpZ25vcmllcnQgIgorIndlcmRlbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNwbGl0LjE6MzIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1zPiwgQjwtLXNwbGl0PiBJPGNvbXBsZXRlLWFyY2hpdmU+IFtJPHByZWZpeD5dIgorbXNnc3RyICJCPC1zPiwgQjwtLXNwbGl0PiBJPEtvbXBsZXR0YXJjaGl2PiBbSTxQcsOkZml4Pl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMTozNQorbXNnaWQgIlNwbGl0cyBhIHNpbmdsZSBEZWJpYW4gYmluYXJ5IHBhY2thZ2UgaW50byBzZXZlcmFsIHBhcnRzLiIKK21zZ3N0ciAiVGVpbHQgZWluIGVpbnplbG5lcyBEZWJpYW4tQmluw6RycGFrZXQgaW4gbWVocmVyZSBUZWlsZS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMTo0MworbXNnaWQgIiIKKyJUaGUgcGFydHMgYXJlIG5hbWVkIEk8cHJlZml4PkI8Lj5JPE4+QjxvZj5JPE0+QjwuZGViPiB3aGVyZSBJPE4+IGlzIHRoZSBwYXJ0ICIKKyJudW1iZXIsIHN0YXJ0aW5nIGF0IDEsIGFuZCBJPE0+IGlzIHRoZSB0b3RhbCBudW1iZXIgb2YgcGFydHMgKGJvdGggaW4gIgorImRlY2ltYWwpLiIKK21zZ3N0ciAiIgorIkRpZSBUZWlsZSB3ZXJkZW4gSTxQcsOkZml4PkI8Lj5JPE4+QjxvZj5JPE0+QjwuZGViPiBiZW5hbm50LCB3b2JlaSBJPE4+IGRpZSAiCisiYmVpIDEgYmVnaW5uZW5kZSBUZWlsbnVtbWVyIHVuZCBJPE0+IGRpZSBHZXNhbXR6YWhsIGRlciBUZWlsZSBpc3QgKGJlaWRlICIKKyJBbmdhYmVuIGRlemltYWwpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjUxCittc2dpZCAiIgorIklmIG5vIEk8cHJlZml4PiBpcyBzdXBwbGllZCB0aGVuIHRoZSBJPGNvbXBsZXRlLWFyY2hpdmU+IGZpbGVuYW1lIGlzIHRha2VuLCAiCisiaW5jbHVkaW5nIGRpcmVjdG9yeSwgd2l0aCBhbnkgdHJhaWxpbmcgQjwuZGViPiByZW1vdmVkLiIKK21zZ3N0ciAiIgorIkZhbGxzIGtlaW4gSTxQcsOkZml4PiBiZXJlaXRnZXN0ZWxsdCB3aXJkLCB3aXJkIGRlciBEYXRlaW5hbWUgdm9uICIKKyJJPEtvbXBsZXR0YXJjaGl2PiBnZW5vbW1lbiwgZWluc2NobGllw59saWNoIFZlcnplaWNobmlzLCB3b2JlaSBkYXMgIgorImFic2NobGllw59lbmRlIEI8LmRlYj4gZW50ZmVybnQgd2lyZC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNwbGl0LjE6NTEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1qPiwgQjwtLWpvaW4+IEk8cGFydD4uLi4iCittc2dzdHIgIkI8LWo+LCBCPC0tam9pbj4gSTxUZWlsPi4uLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjU1Cittc2dpZCAiIgorIkpvaW5zIHRoZSBwYXJ0cyBvZiBhIHBhY2thZ2UgZmlsZSB0b2dldGhlciwgcmVhc3NlbWJsaW5nIHRoZSBvcmlnaW5hbCBmaWxlICIKKyJhcyBpdCB3YXMgYmVmb3JlIGl0IHdhcyBzcGxpdC4iCittc2dzdHIgIiIKKyJWZXJlaW50IGRpZSBUZWlsZSBlaW5lciBQYWtldGRhdGVpLCB1bmQgYmF1dCBkYW1pdCBkaWUgT3JpZ2luYWxkYXRlaSB3aWVkZXIgIgorInp1c2FtbWVuLCB3aWUgc2llIHZvciBkZW0gQXVmdGVpbGVuIHdhci4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMTo1OQorbXNnaWQgIiIKKyJUaGUgcGFydCBmaWxlcyBnaXZlbiBhcyBhcmd1bWVudHMgbXVzdCBiZSBhbGwgdGhlIHBhcnRzIG9mIGV4YWN0bHkgdGhlIHNhbWUgIgorIm9yaWdpbmFsIGJpbmFyeSBmaWxlLiBFYWNoIHBhcnQgbXVzdCBvY2N1ciBleGFjdGx5IG9uY2UgaW4gdGhlIGFyZ3VtZW50ICIKKyJsaXN0LCB0aG91Z2ggdGhlIHBhcnRzIHRvIG5vdCBuZWVkIHRvIGJlIGxpc3RlZCBpbiBvcmRlci4iCittc2dzdHIgIiIKKyJEaWUgVGVpbGRhdGVpZW4sIGRpZSBhbHMgQXJndW1lbnQgw7xiZXJnZWJlbiB3ZXJkZW4sIG3DvHNzZW4gYWxsZSBUZWlsZSBkZXIgIgorImdsZWljaGVuIE9yaWdpbmFsZGF0ZWkgc2Vpbi4gSmVkZXIgVGVpbCBtdXNzIGdlbmF1IGVpbm1hbCBpbiBkZXIgIgorIkFyZ3VtZW50bGlzdGUgYXVmdGF1Y2hlbiwgYWxsZXJkaW5ncyBtw7xzc2VuIGRpZSBUZWlsZSBuaWNodCBpbiBpaHJlciAiCisiUmVpaGVuZm9sZ2UgYXVmZ2Vmw7xocnQgd2VyZGVuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjY0Cittc2dpZCAiIgorIlRoZSBwYXJ0cyBtdXN0IG9mIGNvdXJzZSBhbGwgaGF2ZSBiZWVuIGdlbmVyYXRlZCB3aXRoIHRoZSBzYW1lIHBhcnQgc2l6ZSAiCisic3BlY2lmaWVkIGF0IHNwbGl0IHRpbWUsIHdoaWNoIG1lYW5zIHRoYXQgdGhleSBtdXN0IHVzdWFsbHkgaGF2ZSBiZWVuICIKKyJnZW5lcmF0ZWQgYnkgdGhlIHNhbWUgaW52b2NhdGlvbiBvZiBCPGRwa2ctc3BsaXQgLS1zcGxpdD4uIgorbXNnc3RyICIiCisiRGllIFRlaWxlIG3DvHNzZW4gbmF0w7xybGljaCBhbGxlIG1pdCBkZXIgZ2xlaWNoZW4genVyIFplaXQgZGVzIEF1ZnRlaWxlbnMgIgorImFuZ2VnZWJlbiBUZWlsLUdyw7bDn2UgZ2VuZXJpZXJ0IHdvcmRlbiBzZWluLiBEaWVzIGJlZGV1dGV0LCBkYXNzIHNpZSBmw7xyICIKKyJnZXfDtmhubGljaCB2b24gZGVtIGdsZWljaGVuIEF1ZnJ1ZiB2b24gQjxkcGtnLXNwbGl0IC0tc3BsaXQ+IGVyemV1Z3Qgd29yZGVuICIKKyJzZWluIG3DvHNzZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6NjYKK21zZ2lkICJUaGUgcGFydHMnIGZpbGVuYW1lcyBhcmUgbm90IHNpZ25pZmljYW50IGZvciB0aGUgcmVhc3NlbWJseSBwcm9jZXNzLiIKK21zZ3N0ciAiIgorIkRpZSBEYXRlaW5hbWVuIGRlciBUZWlsZSBzaW5kIGbDvHIgZGVuIFByb3plc3MgZGVzIFdpZWRlcnp1c2FtbWVuYmF1ZW5zIG5pY2h0ICIKKyJyZWxldmFudC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMTo2OQorbXNnaWQgIiIKKyJCeSBkZWZhdWx0IHRoZSBvdXRwdXQgZmlsZSBpcyBjYWxsZWQgSTxwYWNrYWdlPkI8Xz5JPHZlcnNpb24+QjxfPkk8YXJjaD5CPC4iCisiZGViPi4iCittc2dzdHIgIiIKKyJTdGFuZGFyZG3DpMOfaWcgd2lyZCBkaWUgQXVzZ2FiZWRhdGVpIEk8UGFrZXQ+QjwtPkk8VmVyc2lvbj5CPF8+STxBcmNoPkI8LmRlYj4gIgorImdlbmFubnQuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zcGxpdC4xOjcwCisjLCBuby13cmFwCittc2dpZCAiQjwtST4sIEI8LS1pbmZvPiBJPHBhcnQ+Li4uIgorbXNnc3RyICJCPC1JPiwgQjwtLWluZm8+IEk8VGVpbD4uLi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMTo3NQorbXNnaWQgIiIKKyJQcmludHMgaW5mb3JtYXRpb24sIGluIGEgaHVtYW4tcmVhZGFibGUgZm9ybWF0LCBhYm91dCB0aGUgcGFydCBmaWxlKHMpICAiCisic3BlY2lmaWVkLiBBcmd1bWVudHMgd2hpY2ggYXJlIG5vdCBiaW5hcnkgcGFja2FnZSBwYXJ0cyBwcm9kdWNlIGEgbWVzc2FnZSAiCisic2F5aW5nIHNvIGluc3RlYWQgKGJ1dCBzdGlsbCBvbiBzdGFuZGFyZCBvdXRwdXQpLiIKK21zZ3N0ciAiIgorIkdpYnQgSW5mb3JtYXRpb25lbiDDvGJlciBkaWUgYW5nZWdlYmVuZW4gVGVpbGRhdGVpKGVuKSBpbiBtZW5zY2hlbmxlc2JhcmVtICIKKyJGb3JtYXQgYXVzLiBBcmd1bWVudGUsIGRpZSBrZWluZSBCaW7DpHJwYWtldGRhdGVpZW4gc2luZCwgZsO8aHJlbiB6dSBlaW5lciAiCisiZW50c3ByZWNoZW5kZW4gTmFjaHJpY2h0IChhbGxlcmRpbmdzIGF1Y2ggaW4gZGVyIFN0YW5kYXJkYXVzZ2FiZSkuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zcGxpdC4xOjc1CisjLCBuby13cmFwCittc2dpZCAiQjwtYT4sIEI8LS1hdXRvIC1vPiBJPGNvbXBsZXRlLW91dHB1dCBwYXJ0PiIKK21zZ3N0ciAiQjwtYT4sIEI8LS1hdXRvIC1vPiBJPCBLb21wbGV0dGF1c2dhYmUgVGVpbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMTo3OAorbXNnaWQgIkF1dG9tYXRpY2FsbHkgcXVldWUgcGFydHMgYW5kIHJlYXNzZW1ibGUgYSBwYWNrYWdlIGlmIHBvc3NpYmxlLiIKK21zZ3N0ciAiIgorIlJlaWh0IFRlaWxlIGF1dG9tYXRpc2NoIGluIGRpZSBXYXJ0ZXNjaGxhbmdlIHVuZCBzZXR6dCwgZmFsbHMgbcO2Z2xpY2gsIGVpbiAiCisiUGFrZXQgd2llZGVyIHp1c2FtbWVuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjgzCittc2dpZCAiIgorIlRoZSBJPHBhcnQ+IHNwZWNpZmllZCBpcyBleGFtaW5lZCwgYW5kIGNvbXBhcmVkIHdpdGggb3RoZXIgcGFydHMgb2YgdGhlIHNhbWUgIgorInBhY2thZ2UgKGlmIGFueSkgaW4gdGhlIHF1ZXVlIG9mIHBhY2thZ2VzIGZpbGUgcGFydHMuIgorbXNnc3RyICIiCisiRGVyIGFuZ2VnZWJlbmUgSTxUZWlsPiB3aXJkIHVudGVyc3VjaHQgdW5kIG1pdCBhbmRlcmVuIFRlaWxlbiBkZXNzZWxiZW4gIgorIlBha2V0ZXMgKGZhbGxzIHZvcmhhbmRlbikgaW4gZGVyIFdhcnRlc2NobGFuZ2UgZGVyIFBha2V0ZGF0ZWktVGVpbGUgIgorInZlcmdsaWNoZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6OTAKK21zZ2lkICIiCisiSWYgYWxsIHBhcnRzIG9mIHRoZSBwYWNrYWdlIGZpbGUgb2Ygd2hpY2ggSTxwYXJ0PiBpcyBhIHBhcnQgYXJlIGF2YWlsYWJsZSAiCisidGhlbiB0aGUgcGFja2FnZSBpcyByZWFzc2VtYmxlZCBhbmQgd3JpdHRlbiB0byBJPGNvbXBsZXRlLW91dHB1dD4gKHdoaWNoICIKKyJzaG91bGQgbm90IHVzdWFsbHkgYWxyZWFkeSBleGlzdCwgdGhvdWdoIHRoaXMgaXMgbm90IGFuIGVycm9yKS4iCittc2dzdHIgIiIKKyJGYWxscyBhbGxlIFRlaWxlIGRlciBQYWtldGRhdGVpLCB2b24gZGVyIEk8VGVpbD4gZWluIFRlaWwgaXN0LCB2ZXJmw7xnYmFyICIKKyJzaW5kLCBkYW5uIHdpcmQgZGFzIFBha2V0IHdpZWRlciB6dXNhbW1lbmdlc2V0enQgdW5kIG5hY2ggSTxLb21wbGV0dGF1c2dhYmU+ICIKKyJnZXNjaHJpZWJlbiAod2VsY2hlIGbDvHIgZ2V3w7ZobmxpY2ggbm9jaCBuaWNodCBleGlzdGllcmVuIHNvbGx0ZSwgb2JnbGVpY2ggIgorImRpZXMga2VpbiBGZWhsZXIgaXN0KS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMTo5NgorbXNnaWQgIiIKKyJJZiBub3QgdGhlbiB0aGUgSTxwYXJ0PiBpcyBjb3BpZWQgaW50byB0aGUgcXVldWUgYW5kIEk8Y29tcGxldGUtb3V0cHV0PiBpcyAiCisibm90IGNyZWF0ZWQuIgorbXNnc3RyICIiCisiRmFsbHMgbmljaHQsIHdpcmQgSTxUZWlsPiBpbiBkaWUgV2FydGVzY2hsYW5nZSBrb3BpZXJ0IHVuZCAiCisiSTxLb21wbGV0dGF1c2dhYmU+IHdpcmQgbmljaHQgZXJ6ZXVndC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxMDMKK21zZ2lkICIiCisiSWYgSTxwYXJ0PiBpcyBub3QgYSBzcGxpdCBiaW5hcnkgcGFja2FnZSBwYXJ0IHRoZW4gQjxkcGtnLXNwbGl0PiB3aWxsIGV4aXQgIgorIndpdGggc3RhdHVzIEI8MT47IGlmIHNvbWUgb3RoZXIgdHJvdWJsZSBvY2N1cnMgdGhlbiBpdCB3aWxsIGV4aXQgd2l0aCBzdGF0dXMgIgorIkI8Mj4uIgorbXNnc3RyICIiCisiRmFsbHMgSTxUZWlsPiBrZWluIFRlaWwgZWluZXMgYXVmZ2V0ZWlsdGVuIEJpbsOkcnBha2V0ZXMgaXN0LCBkYW5uIGJlZW5kZXQgIgorInNpY2ggSTxkcGtnLXNwbGl0PiBtaXQgUsO8Y2tnYWJlY29kZSBCPDE+OyBmYWxscyBpcmdlbmR3ZWxjaGUgYW5kZXJlbiAiCisiUHJvYmxlbWUgYXVmdHJldGVuIGxhdXRldCBkZXIgUsO8Y2tnYWJlY29kZSBCPDI+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjExMAorbXNnaWQgIiIKKyJUaGUgQjwtLW91dHB1dD4gb3IgQjwtbz4gb3B0aW9uIG11c3QgYmUgc3VwcGxpZWQgd2hlbiB1c2luZyBCPC0tYXV0bz4uICAoSWYgIgorInRoaXMgd2VyZSBub3QgbWFuZGF0b3J5IHRoZSBjYWxsaW5nIHByb2dyYW0gd291bGQgbm90IGtub3cgd2hhdCBvdXRwdXQgZmlsZSAiCisidG8gZXhwZWN0LikiCittc2dzdHIgIiIKKyJEaWUgT3B0aW9uIEI8LS1vdXRwdXQ+IG9kZXIgQjwtbz4gbXVzcyBiZWkgVmVyd2VuZGVuIHZvbiBCPC0tYXV0bz4gYW5nZWdlYmVuICIKKyJ3ZXJkZW4uIChGYWxscyBkaWVzIG5pY2h0IG9ibGlnYXRvcmlzY2ggd8OkcmUsIHfDvHNzdGUgZGFzIFByb2dyYW1tIG5pY2h0LCAiCisid2VsY2hlIEF1c2dhYmVkYXRlaSBlcyB6dSBlcndhcnRlbiBow6R0dGUuKSIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc3BsaXQuMToxMTAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1sPiwgQjwtLWxpc3RxPiIKK21zZ3N0ciAiQjwtbD4sIEI8LS1saXN0cT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxMTMKK21zZ2lkICJMaXN0cyB0aGUgY29udGVudHMgb2YgdGhlIHF1ZXVlIG9mIHBhY2thZ2VzIHRvIGJlIHJlYXNzZW1ibGVkLiIKK21zZ3N0ciAiIgorIkxpc3RldCBkZW4gSW5oYWx0IGRlciBXYXJ0ZXNjaGxhbmdlIGRlciB3aWVkZXIgenVzYW1tZW56dWJhdWVuZGVuIFBha2V0ZSBhdWYuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTE3Cittc2dpZCAiIgorIkZvciBlYWNoIHBhY2thZ2UgZmlsZSBvZiB3aGljaCBwYXJ0cyBhcmUgaW4gdGhlIHF1ZXVlIHRoZSBvdXRwdXQgZ2l2ZXMgdGhlICIKKyJuYW1lIG9mIHRoZSBwYWNrYWdlLCB0aGUgcGFydHMgaW4gdGhlIHF1ZXVlLCBhbmQgdGhlIHRvdGFsIG51bWJlciBvZiBieXRlcyAiCisic3RvcmVkIGluIHRoZSBxdWV1ZS4iCittc2dzdHIgIiIKKyJGw7xyIGplZGUgUGFrZXRkYXRlaSwgdm9uIGRlciBUZWlsZSBpbiBkZXIgV2FydGVzY2hsYW5nZSBzaW5kLCBlbnRow6RsdCBkaWUgIgorIkF1c2dhYmUgZGVuIE5hbWVuIGRlcyBQYWtldGVzLCBkaWUgVGVpbGUgaW4gZGVyIFdhcnRlc2NobGFuZ2Ugc293aWUgZGllICIKKyJHZXNhbXRhbnphaGwgZ2VzcGVpY2hlcnRlciBCeXRlcyBpbiBkZXIgV2FydGVzY2hsYW5nZS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNwbGl0LjE6MTE3CisjLCBuby13cmFwCittc2dpZCAiQjwtZD4sIEI8LS1kaXNjYXJkPiBbSTxwYWNrYWdlPi4uLl0iCittc2dzdHIgIkI8LWQ+LCBCPC0tZGlzY2FyZD4gW0k8UGFrZXQ+Li4uXSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjEyMQorbXNnaWQgIiIKKyJUaGlzIGRpc2NhcmRzIHBhcnRzIGZyb20gdGhlIHF1ZXVlIG9mIHRob3NlIHdhaXRpbmcgZm9yIHRoZSByZW1haW5pbmcgcGFydHMgIgorIm9mIHRoZWlyIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorIkRpZXMgbMO2c2NodCBUZWlsZSBhdXMgZGVyIFdhcnRlc2NobGFuZ2UgZGVyZXIsIGRpZSBhdWYgZGllIHZlcmJsZWliZW5kZW4gIgorIlRlaWxlIGlocmVyIFBha2V0ZSB3YXJ0ZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTI2Cittc2dpZCAiIgorIklmIG5vIEk8cGFja2FnZT4gaXMgc3BlY2lmaWVkIHRoZW4gdGhlIHF1ZXVlIGlzIGNsZWFyZWQgY29tcGxldGVseTsgaWYgYW55ICIKKyJhcmUgc3BlY2lmaWVkIHRoZW4gb25seSBwYXJ0cyBvZiB0aGUgcmVsZXZhbnQgcGFja2FnZShzKSBhcmUgZGVsZXRlZC4iCittc2dzdHIgIiIKKyJGYWxscyBrZWluIEk8UGFrZXQ+IGFnZWdlYmVuIHdpcmQsIHdpcmQgZGllIFdhcnRlc2NobGFuZ2Uga29tcGxldHQgZ2VsZWVydDsgIgorImZhbGxzIGlyZ2VuZHdlbGNoZSBhbmdlZ2ViZW4gc2luZCwgd2VyZGVuIG51ciBkaWUgVGVpbGUgZGVzL2RlciBwYXNzZW5kZW4gIgorIlBha2V0ZShzKSBnZWzDtnNjaHQuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zcGxpdC4xOjEzNAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1kZXBvdGRpcj5JPCBkaXJlY3Rvcnk+IgorbXNnc3RyICJCPC0tZGVwb3RkaXI+STwgVmVyemVpY2huaXM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTM5Cittc2dpZCAiIgorIlNwZWNpZmllcyBhbiBhbHRlcm5hdGl2ZSBkaXJlY3RvcnkgZm9yIHRoZSBxdWV1ZSBvZiBwYXJ0cyBhd2FpdGluZyBhdXRvbWF0aWMgIgorInJlYXNzZW1ibHkuIFRoZSBkZWZhdWx0IGlzIEI8L3Zhci9saWIvZHBrZz4uIgorbXNnc3RyICIiCisiR2lidCBlaW4gYWx0ZXJuYXRpdmVzIFZlcnplaWNobmlzIGbDvHIgZGllIFdhcnRlc2NobGFuZ2Ugdm9uIFRlaWxlbiwgZGllIGF1ZiAiCisiYXV0b21hdGlzY2hlcyBXaWVkZXJ6dXNhbW1lbmbDvGhyZW4gd2FydGVuLCBhbi4gU3RhbmRhcmRtw6TDn2lnIGlzdCBkaWVzIEI8L3Zhci8iCisibGliL2Rwa2c+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc3BsaXQuMToxMzkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1TPiwgQjwtLXBhcnRzaXplPiBJPGtpYmlieXRlcz4iCittc2dzdHIgIkI8LVM+LCBCPC0tcGFydHNpemU+IEk8a2liaWJ5dGVzPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjE0MworbXNnaWQgIiIKKyJTcGVjaWZpZXMgdGhlIG1heGltdW0gcGFydCBzaXplIHdoZW4gc3BsaXR0aW5nLCBpbiBraWJpYnl0ZXMgKDEwMjQgYnl0ZXMpLiAiCisiVGhlIGRlZmF1bHQgaXMgNDUwIEtpQi4iCittc2dzdHIgIiIKKyJHaWJ0IGRpZSBtYXhpbWFsZSBUZWlsZ3LDtsOfZSBpbiBraWJpYnl0ZXMgKDEwMjQgYnl0ZXMpIGJlaW0gQXVmdGVpbGVuIGFuLiAiCisiU3RhbmRhcmRtw6TDn2lnIGlzdCBkaWVzIDQ1MCBraUIuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zcGxpdC4xOjE0MworIywgbm8td3JhcAorbXNnaWQgIkI8LW8+LCBCPC0tb3V0cHV0PiBJPGNvbXBsZXRlLW91dHB1dD4iCittc2dzdHIgIkI8LW8+LCBCPC0tb3V0cHV0PiBJPEtvbXBsZXR0YXVzZ2FiZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxNDYKK21zZ2lkICJTcGVjaWZpZXMgdGhlIG91dHB1dCBmaWxlIG5hbWUgZm9yIGEgcmVhc3NlbWJseS4iCittc2dzdHIgIkdpYnQgZGVuIEF1c2dhYmUtRGF0ZWluYW1lbiBmw7xyIGVpbiBXaWVkZXJ6dXNhbW1lbmJhdWVuIGFuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjE1MQorbXNnaWQgIiIKKyJUaGlzIG92ZXJyaWRlcyB0aGUgZGVmYXVsdCBmb3IgYSBtYW51YWwgcmVhc3NlbWJseSAoQjwtLWpvaW4+KSAgYW5kIGlzICIKKyJtYW5kYXRvcnkgZm9yIGFuIGF1dG9tYXRpYyBxdWV1ZS1vci1yZWFzc2VtYmxlIChCPC0tYXV0bz4pLiIKK21zZ3N0ciAiIgorIkRpZXMgaGVidCBkaWUgVm9yZWluc3RlbGx1bmcgZsO8ciBlaW4gbWFudWVsbGVzIFdpZWRlcnp1c2FtbWVuYmF1ZW4gYXVmIChCPC0tIgorImpvaW4+KSB1bmQgaXN0IHp3aW5nZW5kIGbDvHIgZWluIGF1dG9tYXRpc2NoZXMgRWlucmVpaGVuLW9kZXItWnVzYW1tZW5iYXVlbiAiCisiKEI8LS1hdXRvPikgbm90d2VuZGlnLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc3BsaXQuMToxNTEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1RPiwgQjwtLW5wcXVpZXQ+IgorbXNnc3RyICJCPC1RPiwgQjwtLW5wcXVpZXQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTYyCittc2dpZCAiIgorIldoZW4gZG9pbmcgYXV0b21hdGljIHF1ZXVlLW9yLXJlYXNzZW1ibHkgQjxkcGtnLXNwbGl0PiB1c3VhbGx5IHByaW50cyBhICIKKyJtZXNzYWdlIGlmIGl0IGlzIGdpdmVuIGEgSTxwYXJ0PiB0aGF0IGlzIG5vdCBhIGJpbmFyeSBwYWNrYWdlIHBhcnQuIFRoaXMgIgorIm9wdGlvbiBzdXBwcmVzc2VzIHRoaXMgbWVzc2FnZSwgdG8gYWxsb3cgcHJvZ3JhbXMgc3VjaCBhcyBCPGRwa2c+IHRvIGNvcGUgIgorIndpdGggYm90aCBzcGxpdCBhbmQgdW5zcGxpdCBwYWNrYWdlcyB3aXRob3V0IHByb2R1Y2luZyBzcHVyaW91cyBtZXNzYWdlcy4iCittc2dzdHIgIiIKKyJGYWxscyBTaWUgZWluIGF1dG9tYXRpc2NoZXMgRWlucmVpaGVuIG9kZXIgV2llZGVyenVzYW1tZW5zZXR6ZW4gZHVyY2hmw7xocmVuLCAiCisiZ2lidCBCPGRwa2ctc3BsaXQ+IG5vcm1hbGVyd2Vpc2UgZWluZSBNZWxkdW5nIGF1cywgZmFsbHMgZWluIMO8YmVyZ2ViZW5lciAiCisiSTxUZWlsPiBrZWluIEJpbsOkcnBha2V0dGVpbCBpc3QuIERpZXNlIE9wdGlvbiB1bnRlcmRyw7xja3QgZGllc2UgTWVsZHVuZyB1bSAiCisiUHJvZ3JhbW1lbiB3aWUgQjxkcGtnPiB6dSBlcmxhdWJlbiwgc293b2hsIG1pdCBnZXRlaWx0ZW4gYWxzIGF1Y2ggIgorInVuZ2V0ZWlsdGVuIFBha2V0ZW4gdW16dWdlaGVuLCBvaG5lIHN0w7ZyZW5kZSBNZWxkdW5nZW4genUgZXJ6ZXVnZW4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zcGxpdC4xOjE2MgorIywgbm8td3JhcAorbXNnaWQgIkI8LS1tc2Rvcz4iCittc2dzdHIgIkI8LS1tc2Rvcz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxNjcKK21zZ2lkICIiCisiRm9yY2VzIHRoZSBvdXRwdXQgZmlsZW5hbWVzIGdlbmVyYXRlZCBieSBCPC0tc3BsaXQ+IHRvIGJlIG1zZG9zLWNvbXBhdGlibGUuIgorbXNnc3RyICIiCisiRXJ6d2luZ3QsIGRhc3MgZGllIHZvbiBCPC0tc3BsaXQ+IGVyemV1Z3RlbiBBdXNnYWJlLURhdGVpbmFtZW4gTVNET1MtIgorImtvbXBhdGliZWwgc2luZC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxNzMKK21zZ2lkICIiCisiVGhpcyBtYW5nbGVzIHRoZSBwcmVmaXggLSBlaXRoZXIgdGhlIGRlZmF1bHQgZGVyaXZlZCBmcm9tIHRoZSBpbnB1dCBmaWxlbmFtZSAiCisib3IgdGhlIG9uZSBzdXBwbGllZCBhcyBhbiBhcmd1bWVudDogYWxwaGFudW1lcmljcyBhcmUgbG93ZXJjYXNlZCwgcGx1cyBzaWducyAiCisiYXJlIHJlcGxhY2VkIGJ5IEI8eD4ncyBhbmQgYWxsIG90aGVyIGNoYXJhY3RlcnMgYXJlIGRpc2NhcmRlZC4iCittc2dzdHIgIiIKKyJEaWVzIHZlcnN0w7xtbWVsdCBkZW4gUHLDpGZpeCAtIGVudHdlZGVyIGRlbiB2b3JlaW5nZXN0ZWxsdGVuIGF1cyBkZW0gRWluZ2FiZS0iCisiRGF0ZWluYW1lbiBhYmdlbGVpdGV0ZW4gb2RlciBkZW4gYWxzIEFyZ3VtZW50IMO8YmVyZ2ViZW5lbjogYWxwaGFudW1tZXJpc2NoZSAiCisiWmVpY2hlbiB3ZXJkZW4ga2xlaW4gZ2VzY2hyaWViZW4sIFBsdXN6ZWljaGVuIHdlcmRlbiBkdXJjaCBCPHg+IGVyc2V0enQgdW5kICIKKyJhbGxlIGFuZGVyZW4gWmVpY2hlbiB3ZXJkZW4gZW50ZmVybnQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTc4Cittc2dpZCAiIgorIlRoZSByZXN1bHQgaXMgdGhlbiB0cnVuY2F0ZWQgYXMgbXVjaCBhcyBpcyBuZWNlc3NhcnksIGFuZCBmaWxlbmFtZXMgb2YgdGhlICIKKyJmb3JtIEk8cHJlZml4Tj5CPG9mPkk8TT5CPC5kZWI+IGFyZSBnZW5lcmF0ZWQuIgorbXNnc3RyICIiCisiRGFzIEVyZ2VibmlzIHdpcmQgZGFubiBzb3dlaXQgd2llIG7DtnRpZyBhYmdlc2Nobml0dGVuLCB1bmQgRGF0ZWluYW1lbiBkZXIgIgorIkZvcm0gSTxQcsOkZml4Tj5CPG9mPkk8TT5CPC5kZWI+IHdlcmRlbiBnZW5lcmllcnQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTg2Cittc2dpZCAiIgorIlRoZSByZXF1ZXN0ZWQgc3BsaXQsIG1lcmdlLCBvciBvdGhlciBjb21tYW5kIHN1Y2NlZWRlZC4gIEI8LS1pbmZvPiBjb21tYW5kcyAiCisiY291bnQgYXMgc3VjY2Vzc2Z1bCBldmVuIGlmIHRoZSBmaWxlcyBhcmUgbm90IGJpbmFyeSBwYWNrYWdlIHBhcnRzLiIKK21zZ3N0ciAiIgorIkRhcyBhbmdlZm9yZGVydGUgQXVmdGVpbGVuLCBadXNhbW1lbmbDvGdlbiBvZGVyIGVpbiBhbmRlcmVyIEJlZmVobCB3YXIgIgorImVyZm9sZ3JlaWNoLiBCPC0taW5mbz4tQmVmZWhsZSB3ZXJkZW4gYWxzIGVyZm9sZ3JlaWNoIGdld2VydGV0LCBzb2dhciBmYWxscyAiCisiZGllIERhdGVpZW4ga2VpbmUgVGVpbGUgZWluZXMgQmluw6RycGFrZXRlcyB3YXJlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxOTMKK21zZ2lkICIiCisiT25seSBvY2N1cnMgd2l0aCBCPC0tYXV0bz4gYW5kIGluZGljYXRlcyB0aGF0IHRoZSBJPHBhcnQ+IGZpbGUgd2FzIG5vdCBhICIKKyJiaW5hcnkgcGFja2FnZSBwYXJ0LiIKK21zZ3N0ciAiIgorIlRyaXR0IG51ciBiZWkgQjwtLWF1dG8+IGF1ZiB1bmQgemVpZ3QgYW4sIGRhc3MgZGllIERhdGVpIEk8VGVpbD4ga2VpbiBUZWlsICIKKyJlaW5lcyBCaW7DpHJwcm9ncmFtbXMgd2FyLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc3BsaXQuMToxOTMgc3RhcnQtc3RvcC1kYWVtb24uODoyNzUgdXBkYXRlLWFsdGVybmF0aXZlcy44OjM3OAorIywgbm8td3JhcAorbXNnaWQgIkI8Mj4iCittc2dzdHIgIkI8Mj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxOTgKK21zZ2lkICIiCisiU29tZSBraW5kIG9mIHRyb3VibGUgaGFwcGVuZWQsIHN1Y2ggYXMgYSBzeXN0ZW0gY2FsbCBmYWlsdXJlLCBhIGZpbGUgdGhhdCAiCisibG9va2VkIGxpa2UgYSBwYWNrYWdlIHBhcnQgZmlsZSBidXQgd2FzIGNvcnJ1cHRlZCwgYSB1c2FnZSBlcnJvciBvciBzb21lICIKKyJvdGhlciBwcm9ibGVtLiIKK21zZ3N0ciAiIgorIkVpbmUgYmVzdGltbXRlIEdhdHR1bmcgdm9uIFByb2JsZW1lbiB0cmF0IGF1Ziwgd2llIHp1bSBCZWlzcGllbCBlaW4gIgorIkZlaGxzY2hsYWcgZWluZXMgU3lzdGVtYXVmcnVmcywgZWluZSBEYXRlaSwgZGllIHdpZSBlaW4gUGFrZXR0ZWlsIGF1c3NhaCAiCisiYWJlciBiZXNjaMOkZGlndCB3YXIsIGVpbiBCZW51dHp1bmdzZmVobGVyIG9kZXIgZWluaWdlIGFuZGVyZSBQcm9ibGVtZS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToyMDIKK21zZ2lkICIiCisiRnVsbCBkZXRhaWxzIG9mIHRoZSBwYWNrYWdlcyBpbiB0aGUgcXVldWUgYXJlIGltcG9zc2libGUgdG8gZ2V0IHdpdGhvdXQgIgorImRpZ2dpbmcgaW50byB0aGUgcXVldWUgZGlyZWN0b3J5IHlvdXJzZWxmLiIKK21zZ3N0ciAiIgorIlZvbGxlIERldGFpbHMgw7xiZXIgZGllIFBha2V0ZSBpbiBkZXIgV2FydGVzY2hsYW5nZSBzaW5kIG5pY2h0IHp1IGVyaGFsdGVuLCAiCisib2huZSBzZWxic3QgaW0gV2FydGVzY2hsYW5nZW52ZXJ6ZWljaG5pcyB6dSB3w7xobGVuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjIwNQorbXNnaWQgIiIKKyJUaGVyZSBpcyBubyBlYXN5IHdheSB0byB0ZXN0IHdoZXRoZXIgYSBmaWxlIHRoYXQgbWF5IGJlIGEgYmluYXJ5IHBhY2thZ2UgIgorInBhcnQgaXMgb25lLiIKK21zZ3N0ciAiIgorIkVzIGdpYnQga2VpbmUgZWluZmFjaGUgQXJ0IHp1IHRlc3Rlbiwgb2IgZWluZSBEYXRlaSwgZGllIGVpbiBUZWlsIGVpbmVzICIKKyJCaW7DpHJwYWtldGVzIHNlaW4ga8O2bm50ZSwgZWluZXMgaXN0LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc3BsaXQuMToyMDcKKyMsIG5vLXdyYXAKK21zZ2lkICJJPC92YXIvbGliL2Rwa2cvcGFydHM+IgorbXNnc3RyICJJPC92YXIvbGliL2Rwa2cvcGFydHM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MjExCittc2dpZCAiIgorIlRoZSBkZWZhdWx0IHF1ZXVlIGRpcmVjdG9yeSBmb3IgcGFydCBmaWxlcyBhd2FpdGluZyBhdXRvbWF0aWMgcmVhc3NlbWJseS4iCittc2dzdHIgIiIKKyJEYXMgdm9yZWluZ2VzdGVsbHRlIFZlcnplaWNobmlzIGbDvHIgZGllIFdhcnRlc2NobGFuZ2UgZGVyIFRlaWwtRGF0ZWllbiwgZGllICIKKyJhdWYgYXV0b21hdGlzY2hlcyBadXNhbW1lbmbDvGdlbiB3YXJ0ZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MjE2Cittc2dpZCAiIgorIlRoZSBmaWxlbmFtZXMgdXNlZCBpbiB0aGlzIGRpcmVjdG9yeSBhcmUgaW4gYSBmb3JtYXQgaW50ZXJuYWwgdG8gQjxkcGtnLSIKKyJzcGxpdD4gYW5kIGFyZSB1bmxpa2VseSB0byBiZSB1c2VmdWwgdG8gb3RoZXIgcHJvZ3JhbXMsIGFuZCBpbiBhbnkgY2FzZSB0aGUgIgorImZpbGVuYW1lIGZvcm1hdCBzaG91bGQgbm90IGJlIHJlbGllZCB1cG9uLiIKK21zZ3N0ciAiIgorIkRpZSBpbiBkaWVzZW0gVmVyemVpY2huaXMgYmVudXR6dGVuIERhdGVpbmFtZW4gbGllZ2VuIGluIGVpbmVtIGludGVybiBCPGRwa2ctIgorInNwbGl0Pi1Gb3JtYXQgdm9yIHVuZCBzaW5kIHNlaHIgd2FocnNjaGVpbmxpY2ggZsO8ciBhbmRlcmUgUHJvZ3JhbW1lIG5pY2h0ICIKKyJuw7x0emxpY2gsIHVuZCBpbiBrZWluZW0gRmFsbCBzb2xsdGUgc2ljaCBhdWYgZGFzIEZvcm1hdCBkZXIgRGF0ZWluYW1lbiAiCisidmVybGFzc2VuIHdlcmRlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToyMjIKK21zZ2lkICJCPGRlYj4oNSksIEI8ZGViLWNvbnRyb2w+KDUpLCBCPGRwa2ctZGViPigxKSwgQjxkcGtnPigxKS4iCittc2dzdHIgIkI8ZGViPig1KSwgQjxkZWItY29udHJvbD4oNSksIEI8ZHBrZy1kZWI+KDEpLCBCPGRwa2c+KDEpLiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6MQorIywgbm8td3JhcAorbXNnaWQgImRwa2ctc3RhdG92ZXJyaWRlIgorbXNnc3RyICJkcGtnLXN0YXRvdmVycmlkZSIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6MQorIywgbm8td3JhcAorbXNnaWQgIkRlYmlhbiBwcm9qZWN0IgorbXNnc3RyICJEZWJpYW4tUHJvamVrdCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo0Cittc2dpZCAiZHBrZy1zdGF0b3ZlcnJpZGUgLSBvdmVycmlkZSBvd25lcnNoaXAgYW5kIG1vZGUgb2YgZmlsZXMiCittc2dzdHIgIiIKKyJkcGtnLXN0YXRvdmVycmlkZSAtIMO8YmVyIEVpZ2VudMO8bWVyc2NoYWZ0IHVuZCBNb2R1cyB2b24gRGF0ZWllbiBoaW53ZWdzZXR6ZW4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6OAorbXNnaWQgIkI8ZHBrZy1zdGF0b3ZlcnJpZGU+IFtJPG9wdGlvbj4uLi5dIEk8Y29tbWFuZD4iCittc2dzdHIgIkI8ZHBrZy1zdGF0b3ZlcnJpZGU+IFtJPE9wdGlvbj4uLi5dIEk8QmVmZWhsPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODoxOAorbXNnaWQgIiIKKyJgQjxzdGF0IG92ZXJyaWRlcz4nIGFyZSBhIHdheSB0byB0ZWxsIEI8ZHBrZz4oMSkgIHRvIHVzZSBhIGRpZmZlcmVudCBvd25lciAiCisib3IgbW9kZSBmb3IgYSBmaWxlIHdoZW4gYSBwYWNrYWdlIGlzIGluc3RhbGxlZC4gKG5vdGU6IEkgdXNlIHRoZSB3b3JkIGBmaWxlJyAiCisiaGVyZSwgYnV0IGluIHJlYWxpdHkgdGhpcyBjYW4gYmUgYW55IGZpbGVzeXN0ZW0gb2JqZWN0IHRoYXQgZHBrZyBoYW5kbGVzLCAiCisiaW5jbHVkaW5nIGRpcmVjdG9yaWVzLCBkZXZpY2VzLCBldGMuKS4gVGhpcyBjYW4gYmUgdXNlZCB0byBmb3JjZSBwcm9ncmFtcyAiCisidGhhdCBhcmUgbm9ybWFsbHkgc2V0dWlkIHRvIGJlIGluc3RhbGwgd2l0aG91dCBhIHNldHVpZCBmbGFnLCBvciBvbmx5ICIKKyJleGVjdXRhYmxlIGJ5IGEgY2VydGFpbiBncm91cC4iCittc2dzdHIgIiIKKyLCu0I8U3RhdC1IaW53ZWdzZXR6dW5nZW4+wqsgc2luZCBlaW5lIE3DtmdsaWNoa2VpdCBCPGRwa2c+KDEpIHp1IGJlcmljaHRlbiwgIgorImVpbmVuIGFuZGVyZW4gRWlnZW50w7xtZXIgb2RlciBNb2R1cyBmw7xyIGVpbmUgRGF0ZWkgenUgdmVyd2VuZGVuLCB3ZW5uIGVpbiAiCisiUGFrZXQgaW5zdGFsbGllcnQgd2lyZC4gKEhpbndlaXM6IEljaCB2ZXJ3ZW5kZSBkYXMgV29ydCDCu0RhdGVpwqsgaGllciwgYWJlciAiCisidGF0c8OkY2hsaWNoIGthbm4gZGllcyBqZWRlcyBEYXRlaXN5c3RlbW9iamVrdCBzZWluLCBkYXMgRHBrZyBoYW5kaGFidCwgIgorImRhcnVudGVyIFZlcnplaWNobmlzc2UsIEdlcsOkdGUsIHVzdy4pLiBEaWVzIGthbm4gZGF6dSB2ZXJ3ZW5kZXQgd2VyZGVuLCAiCisiUHJvZ3JhbW1lLCBkaWUgbm9ybWFsZXJ3ZWlzZSBzZXR1aWQgc2luZCwgZGF6dSB6dSB6d2luZ2VuLCBvaG5lIHNldHVpZC0iCisiTWFya2llcnVuZyB6dSBpbnN0YWxsaWVyZW4sIG9kZXIgbnVyIHZvbiBlaW5lciBiZXN0aW1tdGVuIEdydXBwZSBhdXNmw7xocmJhciAiCisienUgc2Vpbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6MjIKK21zZ2lkICIiCisiQjxkcGtnLXN0YXRvdmVycmlkZT4gaXMgYSB1dGlsaXR5IHRvIG1hbmFnZSB0aGUgbGlzdCBvZiBzdGF0IG92ZXJyaWRlcy4gSXQgIgorImhhcyB0aHJlZSBiYXNpYyBmdW5jdGlvbnM6IGFkZGluZywgcmVtb3ZpbmcgYW5kIGxpc3Rpbmcgb3ZlcnJpZGVzLiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1zdGF0b3ZlcnJpZGU+IGlzdCBlaW4gSGlsZnN3ZXJremV1ZyB1bSBkaWUgTGlzdGUgZGVyIFN0YXR1cy0iCisiSGlud2Vnc2V0enVuZ2VuIHp1IHZlcndhbHRlbi4gRXMgaGF0IGRyZWkgZ3J1bmRsZWdlbmRlIEZ1bmt0aW9uZW46ICIKKyJIaW56dWbDvGdlbiwgRW50ZmVybmVuIHVuZCBBdWZsaXN0ZW4gdm9uIEhpbndlZ3NldHp1bmdlbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjI0CisjLCBuby13cmFwCittc2dpZCAiQjwtLWFkZD5JPCB1c2VyIGdyb3VwIG1vZGUgZmlsZT4iCittc2dzdHIgIkI8LS1hZGQ+STwgQmVudXR6ZXIgR3J1cHBlIE1vZHVzIERhdGVpPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODozMgorbXNnaWQgIiIKKyJBZGQgYW4gb3ZlcnJpZGUgZm9yIEk8ZmlsZT4uIEk8ZmlsZT4gZG9lcyBub3QgbmVlZCB0byBleGlzdCB3aGVuIHRoaXMgIgorImNvbW1hbmQgaXMgdXNlZDsgdGhlIG92ZXJyaWRlIHdpbGwgYmUgc3RvcmVkIGFuZCB1c2VkIGxhdGVyLiAgVXNlcnMgYW5kICIKKyJncm91cHMgY2FuIGJlIHNwZWNpZmllZCBieSB0aGVpciBuYW1lIChmb3IgZXhhbXBsZSBCPHJvb3Q+IG9yIEI8bm9ib2R5PiksIG9yICIKKyJieSB0aGVpciBudW1iZXIgYnkgcHJlcGVuZGluZyB0aGUgbnVtYmVyIHdpdGggYSBgQjwjPicgKGZvciBleGFtcGxlIEI8IzA+IG9yICIKKyJCPCM2NTUzND4pLiBUaGUgSTxtb2RlPiBuZWVkcyB0byBiZSBzcGVjaWZpZWQgaW4gb2N0YWwuIgorbXNnc3RyICIiCisiRsO8Z2UgZWluZSBIaW53ZWdzZXR6dW5nIGbDvHIgSTxEYXRlaT4gaGluenUuIEk8RGF0ZWk+IG11c3Mgbm9jaCBuaWNodCAiCisiZXhpc3RpZXJlbiB3ZW5uIGRpZXNlciBCZWZlaGwgdmVyd2VuZGV0IHdpcmQ7IGRpZSBIaW53ZWdzZXR6dW5nIHdpcmQgIgorImF1ZmJld2FocnQgdW5kIHNww6R0ZXIgdmVyd2VuZGV0LiBCZW51dHplciB1bmQgR3J1cHBlbiBrw7ZubmVuIMO8YmVyIGlocmVuICIKKyJOYW1lbiAoYmVpc3BpZWxzd2Vpc2UgQjxyb290PiBvZGVyIEI8bm9ib2R5Pikgc3BlemlmaXppZXJ0IHdlcmRlbiwgb2RlciDDvGJlciAiCisiaWhyZSBOdW1tZXIgbWl0IHZvcmFuZ2VzdGVsbHRlbSDCu0I8Iz7CqyAoYmVpc3BpZWxzd2Vpc2UgQjwjMD4gb2RlciAiCisiQjwjNjU1MzQ+KS4gRGVyIEk8TW9kdXM+IG11c3Mgb2t0YWwgYW5nZWdlYmVuIHdlcmRlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6MzUKK21zZ2lkICIiCisiSWYgLS11cGRhdGUgaXMgc3BlY2lmaWVkIGFuZCBJPGZpbGU+IGV4aXN0cywgaXQgaXMgaW1tZWRpYXRlbHkgc2V0IHRvIHRoZSAiCisibmV3IG93bmVyIGFuZCBtb2RlLiIKK21zZ3N0ciAiIgorIkZhbGxzIC0tdXBkYXRlIGFuZ2VnZWJlbiBpc3QgdW5kIGRpZSBJPERhdGVpPiBleGlzdGllcnQsIGRhbm4gd2lyZCBkaWVzZSAiCisic29mb3J0IGF1ZiBkZW4gbmV1ZW4gRWlnZW50w7xtZXIgdW5kIE1vZHVzIGVpbmdlc3RlbGx0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODozOQorbXNnaWQgIiIKKyJSZW1vdmUgYW4gb3ZlcnJpZGUgZm9yIEk8ZmlsZT4sIHRoZSBzdGF0dXMgb2YgSTxmaWxlPiBpcyBsZWZ0IHVuY2hhbmdlZCBieSAiCisidGhpcyBjb21tYW5kLiIKK21zZ3N0ciAiIgorIkVudGZlcm50IGVpbmUgSGlud2Vnc2V0enVuZyBmw7xyIEk8RGF0ZWk+LCBkZXIgU3RhdHVzIHZvbiBJPERhdGVpPiBibGVpYnQgIgorImR1cmNoIGRpZXNlbiBCZWZlaGwgdW52ZXLDpG5kZXJ0LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6MzkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tbGlzdD4gW0k8Z2xvYi1wYXR0ZXJuPl0iCittc2dzdHIgIkI8LS1saXN0PiBbSTxHbG9iLU11c3Rlcj5dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjQ0Cittc2dpZCAiIgorIkxpc3QgYWxsIG92ZXJyaWRlcy4gSWYgYSBnbG9iIHBhdHRlcm4gaXMgc3BlY2lmaWVkIHJlc3RyaWN0IHRoZSBvdXRwdXQgdG8gIgorIm92ZXJyaWRlcyB3aGljaCBtYXRjaCB0aGUgZ2xvYi4gSWYgdGhlcmUgYXJlIG5vIG92ZXJyaWRlcyBvciBub25lIG1hdGNoIHRoZSAiCisiZ2xvYiBCPGRwa2ctc3RhdG92ZXJyaWRlPiB3aWxsIGV4aXQgd2l0aCBhbiBleGl0Y29kZSBvZiAxLiIKK21zZ3N0ciAiIgorIkxpc3RlIGFsbGUgSGlud2Vnc2V0enVuZ2VuIGF1Zi4gRmFsbHMgZWluIEdsb2ItTXVzdGVyIHNwZXppZml6aWVydCB3dXJkZSwgIgorImJlZ3JlbnplIGRpZSBBdXNnYWJlIGF1ZiBIaW53ZWdzZXR6dW5nZW4sIGRpZSBhdWYgZGVuIEdsb2IgcGFzc2VuLiBGYWxsZXMgZXMgIgorImtlaW5lIEhpbndlZ3NldHp1bmdlbiBnaWJ0IG9kZXIga2VpbmUgYXVmIGRlbiBHbG9iIHBhc3N0LCB3aXJkIHNpY2ggQjxkcGtnLSIKKyJzdGF0b3ZlcnJpZGU+IG1pdCBlaW5lbSBFeGl0LVdlcnQgdm9uIDEgYmVlbmRlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6NTYKK21zZ2lkICIiCisiQ2hhbmdlIHRoZSBJPGRpcmVjdG9yeT4gb2YgdGhlIGRwa2cgZGF0YWJhc2Ugd2hlcmUgdGhlIHN0YXRvdmVycmlkZSBmaWxlIGlzICIKKyJhbHNvIHN0b3JlZC4gRGVmYXVsdHMgdG8gSTwvdmFyL2xpYi9kcGtnPi4iCittc2dzdHIgIiIKKyJXZWNoc2xlIGRhcyBJPFZlcnplaWNobmlzPiBkZXIgRHBrZy1EYXRlbmJhbmssIHdvIGF1Y2ggZGllIHN0YXRvdmVycmlkZS0iCisiRGF0ZWkgZ2VsYWdlcnQgaXN0LiBEZXIgU3RhbmRhcmQgaXN0IEk8L3Zhci9saWIvZHBrZz4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo1NiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzM2CisjLCBuby13cmFwCittc2dpZCAiQjwtLWZvcmNlPiIKK21zZ3N0ciAiQjwtLWZvcmNlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo2MAorbXNnaWQgIiIKKyJGb3JjZSBhbiBhY3Rpb24sIGV2ZW4gaWYgYSBzYW5pdHkgY2hlY2sgd291bGQgb3RoZXJ3aXNlIHByb2hpYml0IGl0LiAgVGhpcyAiCisiaXMgbmVjZXNzYXJ5IHRvIG92ZXJyaWRlIGFuIGV4aXN0aW5nIG92ZXJyaWRlLiIKK21zZ3N0ciAiIgorIkVyendpbmdlIGVpbmUgQWt0aW9uLCBzZWxic3Qgd2VubiBlaW5lIFNpbm4tw5xiZXJwcsO8ZnVuZyBkaWVzZSBub3JtYWxlcndlaXNlICIKKyJ2ZXJiw7Z0ZS4gRGllcyBpc3Qgbm90d2VuZGlnLCB1bSBzaWNoIMO8YmVyIGVpbmUgZXhpc3RpZXJlbmRlIEhpbndlZ3NldHp1bmcgIgorImhpbndlZ3p1c2V0emVuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6NjAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tdXBkYXRlPiIKK21zZ3N0ciAiQjwtLXVwZGF0ZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6NjQKK21zZ2lkICIiCisiSW1tZWRpYXRlbHkgdHJ5IHRvIGNoYW5nZSB0aGUgZmlsZSB0byB0aGUgbmV3IG93bmVyIGFuZCBtb2RlIGlmIGl0IGV4aXN0cy4iCittc2dzdHIgIiIKKyJWZXJzdWNoZSBkaWUgRGF0ZWkgc29mb3J0IGF1ZiBkZW4gbmV1ZW4gRWlnZW50w7xtZXIgdW5kIG5ldWVuIE1vZHVzIHp1ICIKKyLDpG5kZXJuLCBmYWxscyBzaWUgZXhpc3RpZXJ0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo2NworbXNnaWQgIkJlIGxlc3MgdmVyYm9zZSBhYm91dCB3aGF0IHdlIGRvLiIKK21zZ3N0ciAiU2VpIG5pY2h0IHNvIGF1c2bDvGhybGljaCBkYXLDvGJlciwgd2FzIHdpciBtYWNoZW4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo3NQorIywgbm8td3JhcAorbXNnaWQgIkk8L3Zhci9saWIvZHBrZy9zdGF0b3ZlcnJpZGU+IgorbXNnc3RyICJJPC92YXIvbGliL2Rwa2cvc3RhdG92ZXJyaWRlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo4MAorbXNnaWQgIiIKKyJGaWxlIHdoaWNoIGNvbnRhaW5zIHRoZSBjdXJyZW50IGxpc3Qgb2Ygc3RhdCBvdmVycmlkZXMgb2YgdGhlIHN5c3RlbS4gSXQgaXMgIgorImxvY2F0ZWQgaW4gdGhlIGRwa2cgYWRtaW5pc3RyYXRpb24gZGlyZWN0b3J5LCBhbG9uZyB3aXRoIG90aGVyIGZpbGVzICIKKyJpbXBvcnRhbnQgdG8gZHBrZywgc3VjaCBhcyBgc3RhdHVzJyBvciBgYXZhaWxhYmxlJy4iCittc2dzdHIgIiIKKyJEYXRlaSwgZGllIGRpZSBha3R1ZWxsZSBMaXN0ZSBkZXIgSGlud2Vnc2V0enVuZ2VuIGF1ZiBkZW0gU3lzdGVtIGVudGjDpGx0LiAiCisiU2llIGJlZmluZGV0IHNpY2ggaW0gRHBrZy1BZG1pbmlzdHJhdGlvbnN2ZXJ6ZWljaG5pcywgenVzYW1tZW4gbWl0IGFuZGVyZW4gIgorImbDvHIgRHBrZyB3aWNodGlnZW4gRGF0ZWllbiwgd2llIMK7c3RhdHVzwqsgb2RlciDCu2F2YWlsYWJsZcKrLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo4MworbXNnaWQgIiIKKyJOb3RlOiBCPGRwa2ctc3RhdG92ZXJyaWRlPiBwcmVzZXJ2ZXMgdGhlIG9sZCBjb3B5IG9mIHRoaXMgZmlsZSwgd2l0aCAiCisiZXh0ZW5zaW9uIFwiLW9sZFwiLCBiZWZvcmUgcmVwbGFjaW5nIGl0IHdpdGggdGhlIG5ldyBvbmUuIgorbXNnc3RyICIiCisiSGlud2VpczogQjxkcGtnLXN0YXRvdmVycmlkZT4gZXJow6RsdCBkaWUgYWx0ZSBLb3BpZSBkaWVzZXIgRGF0ZWkgbWl0IGRlciAiCisiRW5kdW5nIMK7LW9sZMKrIGJldm9yIGVzIHNpZSBtaXQgZWluZXIgbmV1ZW4gZXJzZXR6dC4iCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLXRyaWdnZXIuMToxCisjLCBuby13cmFwCittc2dpZCAiZHBrZy10cmlnZ2VyIgorbXNnc3RyICJkcGtnLXRyaWdnZXIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctdHJpZ2dlci4xOjQKK21zZ2lkICJkcGtnLXRyaWdnZXIgLSBhIHBhY2thZ2UgdHJpZ2dlciB1dGlsaXR5IgorbXNnc3RyICJkcGtnLXRyaWdnZXIgLSBlaW4gUGFrZXQtVHJpZ2dlci1IaWxmc3dlcmt6ZXVnIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXRyaWdnZXIuMTo4Cittc2dpZCAiQjxkcGtnLXRyaWdnZXI+IFtJPG9wdGlvbj4uLi5dIEk8dHJpZ2dlci1uYW1lPiIKK21zZ3N0ciAiQjxkcGtnLXRyaWdnZXI+IFtJPE9wdGlvbj4uLi5dIEk8VHJpZ2dlci1OYW1lPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy10cmlnZ2VyLjE6MTEKK21zZ2lkICJCPGRwa2ctdHJpZ2dlcj4gW0k8b3B0aW9uPi4uLl0gSTxjb21tYW5kPiIKK21zZ3N0ciAiQjxkcGtnLXRyaWdnZXI+IFtJPE9wdGlvbj4uLi5dIEk8QmVmZWhsPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy10cmlnZ2VyLjE6MTUKK21zZ2lkICIiCisiQjxkcGtnLXRyaWdnZXI+IGlzIGEgdG9vbCB0byBleHBsaWNpdGx5IGFjdGl2YXRlIHRyaWdnZXJzIGFuZCBjaGVjayBmb3IgaXRzICIKKyJzdXBwb3J0IG9uIHRoZSBydW5uaW5nIEI8ZHBrZz4uIgorbXNnc3RyICIiCisiQjxkcGtnLXRyaWdnZXI+IGlzdCBlaW4gV2Vya3pldWcsIHVtIFRyaWdnZXIgKGRldXRzY2g6IEF1c2zDtnNlcikgZXhwbGl6aXQgenUgIgorImFrdGl2aWVyZW4gdW5kIGRlbiBsYXVmZW5kZW4gQjxkcGtnPiBhdWYgZGVyZW4gVW50ZXJzdMO8dHp1bmcgaGluIHp1ICIKKyLDvGJlcnByw7xmZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXRyaWdnZXIuMToyMQorbXNnaWQgIiIKKyJUaGlzIGNhbiBiZSB1c2VkIGJ5IG1haW50YWluZXIgc2NyaXB0cyBpbiBjb21wbGV4IGFuZCBjb25kaXRpb25hbCBzaXR1YXRpb25zICIKKyJ3aGVyZSB0aGUgZmlsZSB0cmlnZ2Vycywgb3IgdGhlIGRlY2xhcmF0aXZlIEI8YWN0aXZhdGU+IHRyaWdnZXJzIGNvbnRyb2wgIgorImZpbGUgZGlyZWN0aXZlLCBhcmUgaW5zdWZmaWNpZW50bHkgcmljaC4gSXQgY2FuIGFsc28gYmUgdXNlZCBmb3IgdGVzdGluZyBhbmQgIgorImJ5IHN5c3RlbSBhZG1pbmlzdHJhdG9ycyAoYnV0IG5vdGUgdGhhdCB0aGUgdHJpZ2dlcnMgd29uJ3QgYWN0dWFsbHkgYmUgcnVuICIKKyJieSBCPGRwa2ctdHJpZ2dlcj4pLiIKK21zZ3N0ciAiIgorIkRpZXMga2FubiB2b24gQmV0cmV1ZXJza3JpcHRlbiBpbiBrb21wbGV4ZW4gdW5kIGlmLXRoZW4tZWxzZS1TaXR1YXRpb25lbiAiCisidmVyd2FuZHQgd2VyZGVuLCB3byBkaWUgRGF0ZWktVHJpZ2dlciBvZGVyIGRpZSBTdGV1ZXJ1bmcgdm9uIERhdGVpZGlyZWt0aXZlbiAiCisiZHVyY2ggZXhwbGl6aXRlIEI8YWN0aXZhdGU+LVRyaWdnZXIgbmljaHQgYXVzcmVpY2hlbi4gRXMga2FubiBhdWNoIHp1bSAiCisiVGVzdGVuIHVuZCB2b24gU3lzdGVtYWRtaW5pc3RyYXRvcmVuIHZlcndhbmR0IHdlcmRlbiAoYmVhY2h0ZW4gU2llIGFiZXIsICIKKyJkYXNzIFRyaWdnZXIgbmljaHQgdGF0c8OkY2hsaWNoIGR1cmNoIEI8ZHBrZy10cmlnZ2VyPiBhdXNnZWbDvGhydCB3ZXJkZW4pLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy10cmlnZ2VyLjE6MjMKK21zZ2lkICJVbnJlY29nbmlzZWQgdHJpZ2dlciBuYW1lIHN5bnRheGVzIGFyZSBhbiBlcnJvciBmb3IgQjxkcGtnLXRyaWdnZXI+LiIKK21zZ3N0ciAiIgorIk5pY2h0IGVya2FubnRlIFRyaWdnZXJuYW1lbi1TeW50YXhlbiBzaW5kIGbDvHIgQjxkcGtnLXRyaWdnZXI+IGVpbiBGZWhsZXIuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy10cmlnZ2VyLjE6MjUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tY2hlY2stc3VwcG9ydGVkPiIKK21zZ3N0ciAiQjwtLWNoZWNrLXN1cHBvcnRlZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctdHJpZ2dlci4xOjMxCittc2dpZCAiIgorIkNoZWNrIGlmIHRoZSBydW5uaW5nIEI8ZHBrZz4gc3VwcG9ydHMgdHJpZ2dlcnMgKHVzdWFsbHkgY2FsbGVkIGZyb20gYSAiCisicG9zdGluc3QpLiBXaWxsIGV4aXQgQjwwPiBpZiBhIHRyaWdnZXJzLWNhcGFibGUgQjxkcGtnPiBoYXMgcnVuLCBvciBCPDE+ICIKKyJ3aXRoIGFuIGVycm9yIG1lc3NhZ2UgdG8gc3RkZXJyIGlmIG5vdC4gTm9ybWFsbHksIGhvd2V2ZXIsIGl0IGlzIGJldHRlciBqdXN0ICIKKyJ0byBhY3RpdmF0ZSB0aGUgZGVzaXJlZCB0cmlnZ2VyIHdpdGggQjxkcGtnLXRyaWdnZXI+LiIKK21zZ3N0ciAiIgorIsOcYmVycHLDvGZlLCBvYiBkZXIgbGF1ZmVuZGUgQjxkcGtnPiBUcmlnZ2VyIHVudGVyc3TDvHR6dCAobm9ybWFsZXJ3ZWlzZSB2b20gIgorIlBvc3RpbnN0IGF1ZmdlcnVmZW4pLiBFbmRldCBtaXQgQjwwPiwgZmFsbHMgZWluIFRyaWdnZXItZsOkaGlnZXIgQjxkcGtnPiAiCisiYXVzZ2Vmw7xocnQgd3VyZGUsIG9kZXIgbWl0IEI8MT4gdW5kIGVpbmVyIEZlaGxlcm1lbGR1bmcgbmFjaCBTdGRlcnIsIGZhbGxzICIKKyJuaWNodC4gTm9ybWFsZXJ3ZWlzZSBpc3QgZXMgYWxsZXJkaW5ncyBiZXNzZXIsIGVpbmZhY2ggZGVuIGdld8O8bnNjaHRlbiAiCisiVHJpZ2dlciBtaXQgQjxkcGtnLXRyaWdnZXI+IHp1IGFrdGl2aWVyZW4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy10cmlnZ2VyLjE6NDMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tYnktcGFja2FnZT0+STxwYWNrYWdlPiIKK21zZ3N0ciAiQjwtLWJ5LXBhY2thZ2U9Pkk8UGFrZXQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXRyaWdnZXIuMTo0OQorbXNnaWQgIiIKKyJPdmVycmlkZSB0cmlnZ2VyIGF3YWl0ZXIgKG5vcm1hbGx5IHNldCBieSBCPGRwa2c+IHRocm91Z2ggdGhlICIKKyJCPERQS0dfTUFJTlRTQ1JJUFRfUEFDS0FHRT4gZW52aXJvbm1lbnQgdmFyaWFibGUgb2YgdGhlIG1haW50YWluZXIgc2NyaXB0cywgIgorIm5hbWluZyB0aGUgcGFja2FnZSB0byB3aGljaCB0aGUgc2NyaXB0IGJlbG9uZ3MsIGFuZCB0aGlzIHdpbGwgYmUgdXNlZCBieSAiCisiZGVmYXVsdCkuIgorbXNnc3RyICIiCisiw5xiZXJzY2hyZWliZSBkZW4gVHJpZ2dlci1FcndhcnRlbmRlbiAobm9ybWFsZXJ3ZWlzZSB3aXJkIGRpZXMgdm9uIEI8ZHBrZz4gIgorImR1cmNoIGRpZSBVbWdlYnVuZ3N2YXJpYWJsZSBCPERQS0dfTUFJTlRTQ1JJUFRfUEFDS0FHRT4gZGVyIEJldHJldWVyc2tyaXB0ZSAiCisiZ2VzZXR6dCwgd29iZWkgZGFzIFBha2V0IGJlbmFubnQgd2lyZCwgenUgZGVtIGRhcyBTa3JpcHQgZ2Vow7ZydCB1bmQgZGllcyAiCisid2lyZCBzdGFuZGFyZG3DpMOfaWcgdmVyd2FuZHQpLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctdHJpZ2dlci4xOjQ5CisjLCBuby13cmFwCittc2dpZCAiQjwtLW5vLWF3YWl0PiIKK21zZ3N0ciAiQjwtLW5vLWF3YWl0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy10cmlnZ2VyLjE6NTYKK21zZ2lkICIiCisiVGhpcyBvcHRpb24gYXJyYW5nZXMgdGhhdCB0aGUgY2FsbGluZyBwYWNrYWdlIFQgKGlmIGFueSkgbmVlZCBub3QgYXdhaXQgdGhlICIKKyJwcm9jZXNzaW5nIG9mIHRoaXMgdHJpZ2dlcjsgdGhlIGludGVyZXN0ZWQgcGFja2FnZShzKSBJLCB3aWxsIG5vdCBiZSBhZGRlZCAiCisidG8gVCdzIHRyaWdnZXIgcHJvY2Vzc2luZyBhd2FpdGVkIGxpc3QgYW5kIFQncyBzdGF0dXMgaXMgdW5jaGFuZ2VkLiAgVCBtYXkgIgorImJlIGNvbnNpZGVyZWQgaW5zdGFsbGVkIGV2ZW4gdGhvdWdoIEkgbWF5IG5vdCB5ZXQgaGF2ZSBwcm9jZXNzZWQgdGhlIHRyaWdnZXIuIgorbXNnc3RyICIiCisiRGllc2UgT3B0aW9uIGFycmFuZ2llcnQsIGRhc3MgZGFzIGF1ZnJ1ZmVuZGUgUGFrZXQgVCAoZmFsbHMgenV0cmVmZmVuZCkgIgorIm5pY2h0IGF1ZiBkaWUgQWJhcmJlaXR1bmcgZGVzIFRyaWdnZXJzIHdhcnRlbiBtdXNzLCBkYXMgYnp3LiBkaWUgIgorImludGVyZXNzaWVydGUobikgUGFrZXQoZSkgSSB3ZXJkZW4gbmljaHQgenUgZGVyIExpc3RlIGRlciBhdWYgQmVhcmJlaXR1bmcgIgorIndhcnRlbmRlbiBUcmlnZ2VyIHZvbiBUIGhpbnp1Z2Vmw7xndCB1bmQgZGVyIFN0YXR1cyB2b24gVCBibGVpYnQgdW52ZXLDpG5kZXJ0LiAiCisiVCBrYW5uIGFscyBpbnN0YWxsaWVydCBiZXRyYWNodGV0IHdlcmRlbiwgb2J3b2hsIEkgZGVuIFRyaWdnZXIgbm9jaCBuaWNodCAiCisidmVyYXJiZWl0ZXQgaGFiZW4ga8O2bm50ZS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXRyaWdnZXIuMTo1NgorIywgbm8td3JhcAorbXNnaWQgIkI8LS1uby1hY3Q+IgorbXNnc3RyICJCPC0tbm8tYWN0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy10cmlnZ2VyLjE6NTkKK21zZ2lkICJKdXN0IHRlc3QsIGRvIG5vdCBhY3R1YWxseSBjaGFuZ2UgYW55dGhpbmcuIgorbXNnc3RyICJOdXIgdGVzdGVuLCBuaWNodHMgdGF0c8OkY2hsaWNoIMOkbmRlcm4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXRyaWdnZXIuMTo2OQorbXNnaWQgIiIKKyJCPGRwa2c+KDEpLCBCPGRlYi10cmlnZ2Vycz4oNSksIEI8L3Vzci9zaGFyZS9kb2MvZHBrZy1kZXYvdHJpZ2dlcnMudHh0Lmd6Pi4iCittc2dzdHIgIiIKKyJCPGRwa2c+KDEpLCBCPGRlYi10cmlnZ2Vycz4oNSksIEI8L3Vzci9zaGFyZS9kb2MvZHBrZy1kZXYvdHJpZ2dlcnMudHh0Lmd6Pi4iCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLXZlbmRvci4xOjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLXZlbmRvciIKK21zZ3N0ciAiZHBrZy12ZW5kb3IiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctdmVuZG9yLjE6NAorbXNnaWQgImRwa2ctdmVuZG9yIC0gcXVlcmllcyBpbmZvcm1hdGlvbiBhYm91dCBkaXN0cmlidXRpb24gdmVuZG9ycyIKK21zZ3N0ciAiZHBrZy12ZW5kb3IgLSBmcmFndCBJbmZvcm1hdGlvbmVuIMO8YmVyIGRlbiBEaXN0cmlidXRpb25zbGllZmVyYW50ZW4gYWIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctdmVuZG9yLjE6OAorbXNnaWQgIkI8ZHBrZy12ZW5kb3I+IFtJPG9wdGlvbj4uLi5dIEk8Y29tbWFuZD4iCittc2dzdHIgIkI8ZHBrZy12ZW5kb3I+IFtJPE9wdGlvbj4uLi5dIEk8QmVmZWhsPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy12ZW5kb3IuMToxMworbXNnaWQgIiIKKyJCPGRwa2ctdmVuZG9yPiBpcyBhIHRvb2wgdG8gcXVlcnkgaW5mb3JtYXRpb24gYWJvdXQgdmVuZG9ycyBsaXN0ZWQgaW4gQjwvZXRjLyIKKyJkcGtnL29yaWdpbnM+LiBCPC9ldGMvZHBrZy9vcmlnaW5zL2RlZmF1bHQ+IGNvbnRhaW5zIGluZm9ybWF0aW9uIGFib3V0IHRoZSAiCisiY3VycmVudCB2ZW5kb3IuIgorbXNnc3RyICIiCisiQjxkcGtnLXZlbmRvcj4gaXN0IGVpbiBXZXJremV1ZywgdW0gSW5mb3JtYXRpb25lbiDDvGJlciBpbiBCPC9ldGMvZHBrZy8iCisib3JpZ2lucz4gYXVmZ2Vmw7xocnRlIExpZWZlcmFudGVuIChlbmdsLiDCu3ZlbmRvcsKrKSBhYnp1ZnJhZ2VuLiBCPC9ldGMvZHBrZy8iCisib3JpZ2lucy9kZWZhdWx0PiBlbnRow6RsdCBJbmZvcm1hdGlvbmVuIMO8YmVyIGRlbiBha3R1ZWxsZW4gTGllZmVyYW50ZW4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy12ZW5kb3IuMToxNQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1pcz5JPCB2ZW5kb3I+IgorbXNnc3RyICJCPC0taXM+STwgTGllZmVyYW50PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy12ZW5kb3IuMToxOQorbXNnaWQgIiIKKyJFeGl0cyB3aXRoIEI8MD4gaWYgdGhlIGN1cnJlbnQgdmVuZG9yIGlzIEk8dmVuZG9yPi4gT3RoZXJ3aXNlIGV4aXRzIHdpdGggbm9uLSIKKyJ6ZXJvLiIKK21zZ3N0ciAiIgorIkJlZW5kZXQgc2ljaCBtaXQgQjwwPiwgZmFsbHMgZGVyIGFrdHVlbGxlIExpZWZlcmFudCBJPExpZWZlcmFudD4gaXN0LCAiCisiYW5zb25zdGVuIG1pdCBlaW5lbSB2b24gTnVsbCB2ZXJzY2hpZWRlbmVuIFdlcnQuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy12ZW5kb3IuMToxOQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1kZXJpdmVzLWZyb20+STwgdmVuZG9yPiIKK21zZ3N0ciAiQjwtLWRlcml2ZXMtZnJvbT5JPCBMaWVmZXJhbnQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXZlbmRvci4xOjI0Cittc2dpZCAiIgorIkV4aXRzIHdpdGggQjwwPiBpZiB0aGUgY3VycmVudCB2ZW5kb3IgZGlzdHJpYnV0aW9uIGlzIGEgZGVyaXZhdGl2ZSBvZiAiCisiSTx2ZW5kb3I+LCBvdGhlcndpc2UgZXhpdHMgd2l0aCBub24temVyby4gSXQgdXNlcyB0aGUgXCJQYXJlbnRcIiBmaWVsZCB0byAiCisiYnJvd3NlIGFsbCBhbmNlc3RvcnMgb2YgdGhlIGN1cnJlbnQgdmVuZG9yLiIKK21zZ3N0ciAiIgorIkJlZW5kZXQgc2ljaCBtaXQgQjwwPiwgZmFsbHMgZGllIGFrdHVlbGxlIExpZWZlcmFudC1EaXN0cmlidXRpb24gdm9uICIKKyJJPExpZWZlcmFudD4gYWJnZWxlaXRldCBpc3QsIGFuc29uc3RlbiBtaXQgZWluZW0gdm9uIE51bGwgdmVyc2NoaWVkZW5lbiAiCisiV2VydC4gRXMgdmVyd2VuZGV0IGRhcyBGZWxkIMK7UGFyZW50wqssIHVtIGFsbGUgVm9yZmFocmVuIGRlcyBha3R1ZWxsZW4gIgorIkxpZWZlcmFudGVuIHp1IGVybWl0dGVsbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXZlbmRvci4xOjI0CisjLCBuby13cmFwCittc2dpZCAiQjwtLXF1ZXJ5Pkk8IGZpZWxkPiIKK21zZ3N0ciAiQjwtLXF1ZXJ5Pkk8IEZlbGQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXZlbmRvci4xOjI4Cittc2dpZCAiIgorIlByaW50IG9uIHN0YW5kYXJkIG91dHB1dCB0aGUgdmFsdWUgb2YgdGhlIHZlbmRvci1zcGVjaWZpYyBJPGZpZWxkPiBmb3IgdGhlICIKKyJjdXJyZW50IHZlbmRvci4iCittc2dzdHIgIiIKKyJHaWJ0IGF1ZiBkZXIgU3RhbmRhcmRhdXNnYWJlIGRlbiBXZXJ0IGRlcyBMaWVmZXJhbnRlbi1zcGV6aWZpc2NoZW4gSTxGZWxkPmVzICIKKyJmw7xyIGRlbiBha3R1ZWxsZW4gTGllZmVyYW50ZW4gYXVzLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctdmVuZG9yLjE6MzYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tdmVuZG9yPkk8IHZlbmRvcj4iCittc2dzdHIgIkI8LS12ZW5kb3I+STwgTGllZmVyYW50PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy12ZW5kb3IuMTo0MQorbXNnaWQgIiIKKyJBc3N1bWVzIHRoZSBjdXJyZW50IHZlbmRvciBpcyBJPHZlbmRvcj4gaW5zdGVhZCBvZiBkaXNjb3ZlcmluZyBpdCB3aXRoIHRoZSAiCisiQjxERUJfVkVORE9SPiBlbnZpcm9ubWVudCB2YXJpYWJsZSBvciBCPC9ldGMvZHBrZy9vcmlnaW5zL2RlZmF1bHQ+LiIKK21zZ3N0ciAiIgorIk5pbW10IGFuLCBkYXNzIGRlciBha3R1ZWxsZSBMaWVmZXJhbnQgSTxMaWVmZXJhbnQ+IGlzdCwgc3RhdHQgaWhuIMO8YmVyIGRpZSAiCisiVW1nZWJ1bmdzdmFyaWFibGUgQjxERUJfVkVORE9SPiBvZGVyIGF1cyBCPC9ldGMvZHBrZy9vcmlnaW5zL2RlZmF1bHQ+IHp1ICIKKyJlcm1pdHRlbG4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy12ZW5kb3IuMTo0MworIywgbm8td3JhcAorbXNnaWQgIkI8REVCX1ZFTkRPUj4iCittc2dzdHIgIkI8REVCX1ZFTkRPUj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctdmVuZG9yLjE6NDcKK21zZ2lkICIiCisiVGhpcyBzZXR0aW5nIGRlZmluZXMgdGhlIGN1cnJlbnQgdmVuZG9yLiBJZiBub3Qgc2V0LCBpdCB3aWxsIGRpc2NvdmVyIHRoZSAiCisiY3VycmVudCB2ZW5kb3IgYnkgcmVhZGluZyBCPC9ldGMvZHBrZy9vcmlnaW5zL2RlZmF1bHQ+LiIKK21zZ3N0ciAiIgorIkRpZXNlIEVpbnN0ZWxsdW5nIGRlZmluaWVydCBkZW4gYWt0dWVsbGVuIExpZWZlcmFudGVuLiBGYWxscyBuaWNodCBnZXNldHp0LCAiCisid2lyZCBlciBhdXMgQjwvZXRjL2Rwa2cvb3JpZ2lucy9kZWZhdWx0PiBlcm1pdHRlbHQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXZlbmRvci4xOjUwIHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0OTgKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAwOSBSYXBoYVxcWzplXWwgSGVydHpvZyIKK21zZ3N0ciAiQ29weXJpZ2h0IFxcKGNvIDIwMDkgUmFwaGFcXFs6ZV1sIEhlcnR6b2ciCisKKyMuIHR5cGU6IFRICisjOiBkc2VsZWN0LjE6MQorIywgbm8td3JhcAorbXNnaWQgImRzZWxlY3QiCittc2dzdHIgImRzZWxlY3QiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0Cittc2dpZCAiZHNlbGVjdCAtIERlYmlhbiBwYWNrYWdlIG1hbmFnZW1lbnQgZnJvbnRlbmQiCittc2dzdHIgImRzZWxlY3QgLSBEZWJpYW4tUGFrZXR2ZXJ3YWx0dW5nc29iZXJmbMOkY2hlIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6OAorbXNnaWQgIkI8ZHNlbGVjdD4gW0k8b3B0aW9uPi4uLl0gW0k8YWN0aW9uPl0iCittc2dzdHIgIkI8ZHNlbGVjdD4gW0k8T3B0aW9uPi4uLl0gSTxBa3Rpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTcKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiQjxkc2VsZWN0PlxuIgorImlzIG9uZSBvZiB0aGUgcHJpbWFyeSB1c2VyIGludGVyZmFjZXMgZm9yIG1hbmFnaW5nIHBhY2thZ2VzIG9uIGEgRGViaWFuXG4iCisic3lzdGVtLiBBdCB0aGUgQjxkc2VsZWN0PiBtYWluIG1lbnUsIHRoZSBzeXN0ZW0gYWRtaW5pc3RyYXRvciBjYW46XG4iCisiIC0gVXBkYXRlIHRoZSBsaXN0IG9mIGF2YWlsYWJsZSBwYWNrYWdlIHZlcnNpb25zLFxuIgorIiAtIFZpZXcgdGhlIHN0YXR1cyBvZiBpbnN0YWxsZWQgYW5kIGF2YWlsYWJsZSBwYWNrYWdlcyxcbiIKKyIgLSBBbHRlciBwYWNrYWdlIHNlbGVjdGlvbnMgYW5kIG1hbmFnZSBkZXBlbmRlbmNpZXMsXG4iCisiIC0gSW5zdGFsbCBuZXcgcGFja2FnZXMgb3IgdXBncmFkZSB0byBuZXdlciB2ZXJzaW9ucy5cbiIKK21zZ3N0ciAiIgorIkI8ZHNlbGVjdD5cbiIKKyJpc3QgZWluZSBkZXIgcHJpbcOkcmVuIEJlbnV0emVyc2Nobml0dHN0ZWxsZW4genVyIFZlcndhbHR1bmcgdm9uIFBha2V0ZW4gYXVmXG4iCisiZWluZW0gRGViaWFuLVN5c3RlbS4gSW0gQmFzaXMtTWVuw7wgdm9uIEI8ZHNlbGVjdD4ga2FubiBkZXIgU3lzdGVtYWRtaW5pc3RyYXRvcjpcbiIKKyIgLSBEaWUgTGlzdGUgZGVyIHZlcmbDvGdiYXJlbiBQYWtldHZlcnNpb25lbiBha3R1YWxpc2llcmVuLFxuIgorIiAtIERlbiBTdGF0dXMgZGVyIGluc3RhbGxpZXJ0ZW4gdW5kIHZlcmbDvGdiYXJlbiBQYWtldGUgYmV0cmFjaHRlbixcbiIKKyIgLSBEaWUgUGFrZXRhdXN3YWhsIMOkbmRlcm4gdW5kIEFiaMOkbmdpZ2tlaXRlbiB2ZXJ3YWx0ZW4sXG4iCisiIC0gTmV1ZSBQYWtldGUgaW5zdGFsbGllcmVuIG9kZXIgZWluIFVwZ3JhZGUgYXVmIG5ldWVyZSBWZXJzaW9uZW4gZHVyY2hmw7xocmVuLlxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MjkKK21zZ2lkICIiCisiQjxkc2VsZWN0PiBvcGVyYXRlcyBhcyBhIGZyb250LWVuZCB0byBCPGRwa2c+KDEpLCB0aGUgbG93LWxldmVsIGRlYmlhbiAiCisicGFja2FnZSBoYW5kbGluZyB0b29sLiBJdCBmZWF0dXJlcyBhIGZ1bGwtc2NyZWVuIHBhY2thZ2Ugc2VsZWN0aW9ucyBtYW5hZ2VyICIKKyJ3aXRoIHBhY2thZ2UgZGVwZW5kcyBhbmQgY29uZmxpY3RzIHJlc29sdmVyLiBXaGVuIHJ1biB3aXRoIGFkbWluaXN0cmF0b3IgIgorInByaXZpbGVnZXMsIHBhY2thZ2VzIGNhbiBiZSBpbnN0YWxsZWQsIHVwZ3JhZGVkIGFuZCByZW1vdmVkLiBWYXJpb3VzIGFjY2VzcyAiCisibWV0aG9kcyBjYW4gYmUgY29uZmlndXJlZCB0byByZXRyaWV2ZSBhdmFpbGFibGUgcGFja2FnZSB2ZXJzaW9uIGluZm9ybWF0aW9uICIKKyJhbmQgaW5zdGFsbGFibGUgcGFja2FnZXMgZnJvbSBwYWNrYWdlIHJlcG9zaXRvcmllcy4gIERlcGVuZGluZyBvbiB0aGUgdXNlZCAiCisiYWNjZXNzIG1ldGhvZCwgdGhlc2UgcmVwb3NpdG9yaWVzIGNhbiBiZSBwdWJsaWMgYXJjaGl2ZSBzZXJ2ZXJzIG9uIHRoZSAiCisiaW50ZXJuZXQsIGxvY2FsIGFyY2hpdmUgc2VydmVycyBvciBjZHJvbXMuICBUaGUgcmVjb21tZW5kZWQgYWNjZXNzIG1ldGhvZCBpcyAiCisiSTxhcHQ+LCB3aGljaCBpcyBwcm92aWRlZCBieSB0aGUgcGFja2FnZSBCPGFwdD4uIgorbXNnc3RyICIiCisiQjxkc2VsZWN0PiBhcmJlaXRldCBhbHMgT2JlcmZsw6RjaGUgdm9uIEI8ZHBrZz4oMSksIGRlbSBzeXN0ZW1uYWhlbiBEZWJpYW4tIgorIlBha2V0LUhhbmRoYWJ1bmdzd2Vya3pldWcuIEVzIGJpZXRldCBlaW5lbiBWb2xsYmlsZHNjaGlybS1QYWtldGF1c3dhaGwtIgorIlZlcndhbHRlciBtaXQgZWluZW0gUGFrZXRlYWJow6RuZ2lna2VpdHMtIHVuZCAta29uZmxpa3Rsw7ZzZXIuIEJlaSBBdWZydWYgbWl0ICIKKyJBZG1pbmlzdHJhdG9ycHJpdmlsZWdpZW4ga8O2bm5lbiBQYWtldGUgaW5zdGFsbGllcnQgdW5kIGVudGZlcm50IHNvd2llICIKKyJVcGdyYWRlcyBkdXJjaGdlZsO8aHJ0IHdlcmRlbi4gVmVyc2NoaWVkZW5lIFp1Z3JpZmZzbWV0aG9kZW4ga8O2bm5lbiAiCisia29uZmlndXJpZXJ0IHdlcmRlbiB1bSB2ZXJmw7xnYmFyZSBQYWtldGluZm9ybWF0aW9uZW4gdW5kIGluc3RhbGxpZXJiYXJlICIKKyJQYWtldGUgYXVzIFBha2V0ZGVwb3RzIHp1IGhvbGVuLiBBYmjDpG5naWcgdm9uIGRlciB2ZXJ3ZW5kZXRlbiAiCisiWnVncmlmZnNtZXRob2RlIGvDtm5uZW4gZGllc2UgRGVwb3RzIMO2ZmZlbnRsaWNoZSBBcmNoaXYtU2VydmVyIGltIEludGVybmV0LCAiCisibG9rYWxlIEFyY2hpdi1TZXJ2ZXIgb2RlciBDRC1ST01zIHNlaW4uIERpZSBlbXBmb2hsZW5lIFp1Z3JpZmZzbWV0aG9kZSBpc3QgIgorIkk8YXB0PiwgZGllIHZvbSBQYWtldCBCPGFwdD4gYmVyZWl0Z2VzdGVsbHQgd2lyZC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTozNQorbXNnaWQgIiIKKyJOb3JtYWxseSBCPGRzZWxlY3Q+IGlzIGludm9rZWQgd2l0aG91dCBwYXJhbWV0ZXJzLiBBbiBpbnRlcmFjdGl2ZSBtZW51IGlzICIKKyJwcmVzZW50ZWQsIG9mZmVyaW5nIHRoZSB1c2VyIGEgbGlzdCBvZiBhY3Rpb25zLiBJZiBhbiBhY3Rpb24gaXMgZ2l2ZW4gYXMgIgorImFyZ3VtZW50LCB0aGVuIHRoYXQgYWN0aW9uIGlzIHN0YXJ0ZWQgaW1tZWRpYXRlbHkuIFNldmVyYWwgY29tbWFuZCBsaW5lICIKKyJwYXJhbWV0ZXJzIGFyZSBzdGlsbCBhdmFpbGFibGUgdG8gbW9kaWZ5IHRoZSBydW5uaW5nIGJlaGF2aW91ciBvZiBCPGRzZWxlY3Q+ICIKKyJvciBzaG93IGFkZGl0aW9uYWwgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHByb2dyYW0uIgorbXNnc3RyICIiCisiTm9ybWFsZXJ3ZWlzZSB3aXJkIEI8ZHNlbGVjdD4gb2huZSBQYXJhbWV0ZXIgYXVmZ2VydWZlbi4gRXMgd2lyZCBlaW4gIgorImludGVyYWt0aXZlcyBNZW7DvCBwcsOkc2VudGllcnQsIGRhcyBkZW0gQmVudXR6ZXIgZWluZSBMaXN0ZSB2b24gQWt0aW9uZW4gIgorImFuYmlldGV0LiBGYWxscyBlaW5lIEFrdGlvbiBhbHMgQXJndW1lbnQgw7xiZXJnZWJlbiB3aXJkLCB3aXJkIGRpZXNlIEFrdGlvbiAiCisic29mb3J0IGJlZ29ubmVuLiBFcyBzaW5kIG5vY2ggbWVocmVyZSBLb21tYW5kb3plaWxlbnBhcmFtZXRlciB2b3JoYW5kZW4sIHVtICIKKyJkYXMgTGF1ZnplaXR2ZXJoYWx0ZW4gdm9uIEI8ZHNlbGVjdD4genUgdmVyw6RuZGVybiBvZGVyIHp1c8OkdHpsaWNoZSAiCisiSW5mb3JtYXRpb25lbiDDvGJlciBkYXMgUHJvZ3JhbW0gYW56dXplaWdlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0MworbXNnaWQgIiIKKyJBbGwgb3B0aW9ucyBjYW4gYmUgc3BlY2lmaWVkIGJvdGggb24gdGhlIGNvbW1hbmQgbGluZSBhbmQgaW4gdGhlIEI8ZHNlbGVjdD4gIgorImNvbmZpZ3VyYXRpb24gZmlsZSBJPC9ldGMvZHBrZy9kc2VsZWN0LmNmZz4gb3IgdGhlIGZpbGVzIG9uIHRoZSAiCisiY29uZmlndXJhdGlvbiBkaXJlY3RvcnkgSTwvZXRjL2Rwa2cvZHNlbGVjdC5jZmcuZC8+LiBFYWNoIGxpbmUgaW4gdGhlICIKKyJjb25maWd1cmF0aW9uIGZpbGUgaXMgZWl0aGVyIGFuIG9wdGlvbiAoZXhhY3RseSB0aGUgc2FtZSBhcyB0aGUgY29tbWFuZCBsaW5lICIKKyJvcHRpb24gYnV0IHdpdGhvdXQgbGVhZGluZyBkYXNoZXMpIG9yIGEgY29tbWVudCAoaWYgaXQgc3RhcnRzIHdpdGggYSBCPCM+KS4iCittc2dzdHIgIiIKKyJBbGxlIE9wdGlvbmVuIGvDtm5uZW4gc293b2hsIGF1ZiBkZXIgS29tbWFuZG96ZWlsZSBhbHMgYXVjaCBpbiBkZXIgIgorIktvbmZpZ3VyYXRpb25zZGF0ZWkgSTwvZXRjL2Rwa2cvZHNlbGVjdC5jZmc+IG9kZXIgaW4gZGVuIERhdGVpZW4gaW0gIgorIktvbmZpZ3VyYXRpb25zdmVyemVpY2huaXMgSTwvZXRjL2Rwa2cvZHNlbGVjdC5jZmcuZC8+IHZvbiBCPGRzZWxlY3Q+ICIKKyJhbmdlZ2ViZW4gd2VyZGVuLiBKZWRlIFplaWxlIGluIGRlciBLb25maWd1cmF0aW9uc2RhdGVpIGlzdCBlbnR3ZWRlciBlaW5lICIKKyJPcHRpb24gKGV4YWt0IGlkZW50aXNjaCBtaXQgZGVyIEtvbW1hbmRvemVpbGVub3B0aW9uLCBudXIgb2huZSBlaW5sZWl0ZW5kZSAiCisiR2VkYW5rZW5zdHJpY2hlKSBvZGVyIGVpbiBLb21tZW50YXIgKGZhbGxzIHNpZSBtaXQgQjwjPiBiZWdpbm50KS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0OQorbXNnaWQgIiIKKyJDaGFuZ2VzIHRoZSBkaXJlY3Rvcnkgd2hlcmUgdGhlIGRwa2cgYEk8c3RhdHVzPicsIGBJPGF2YWlsYWJsZT4nIGFuZCBzaW1pbGFyICIKKyJmaWxlcyBhcmUgbG9jYXRlZC4gVGhpcyBkZWZhdWx0cyB0byBJPC92YXIvbGliL2Rwa2c+IGFuZCBub3JtYWxseSB0aGVyZSAiCisic2hvdWxkbid0IGJlIGFueSBuZWVkIHRvIGNoYW5nZSBpdC4iCittc2dzdHIgIiIKKyLDhG5kZXJ0IGRhcyBWZXJ6ZWljaG5pcywgaW4gZGVtIGRpZSBEYXRlaWVuIMK7STxzdGF0dXM+wqssIMK7STxhdmFpbGFibGU+wqsgdW5kICIKKyLDpGhubGljaGUgRGF0ZWllbiB2b24gRHBrZyBsaWVnZW4uIFN0YW5kYXJkbcOkw59pZyBpc3QgZGllcyBJPC92YXIvbGliL2Rwa2c+ICIKKyJ1bmQgbm9ybWFsZXJ3ZWlzZSBzb2xsdGUgZXMga2VpbmVuIEdydW5kIGdlYmVuLCBkaWVzZXMgenUgw6RuZGVybi4iCisKKyMuIHR5cGU6IFRQCisjOiBkc2VsZWN0LjE6NDkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tZGVidWc+STwgZmlsZSA+fEk8ID5CPC1EPkk8ZmlsZT4iCittc2dzdHIgIkI8LS1kZWJ1Zz5JPCBEYXRlaT58STwgPkI8LUQ+STxEYXRlaT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo1MgorbXNnaWQgIlR1cm4gb24gZGVidWdnaW5nLiBEZWJ1Z2dpbmcgaW5mb3JtYXRpb24gaXMgc2VudCB0byBJPGZpbGU+LiIKK21zZ3N0ciAiIgorIkFrdGl2aWVyZSBEZWJ1Z2dpbmcuIERlYnVnLUluZm9ybWF0aW9uZW4gd2VyZGVuIG5hY2ggSTxEYXRlaT4gZ2VzZW5kZXQuIgorCisjLiB0eXBlOiBUUAorIzogZHNlbGVjdC4xOjUyCisjLCBuby13cmFwCittc2dpZCAiQjwtLWV4cGVydD4iCittc2dzdHIgIkI8LS1leHBlcnQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NTYKK21zZ2lkICIiCisiVHVybnMgb24gZXhwZXJ0IG1vZGUsIGkuZS4gZG9lc24ndCBkaXNwbGF5IHBvc3NpYmx5IGFubm95aW5nIGhlbHAgbWVzc2FnZXMuIgorbXNnc3RyICIiCisiQWt0aXZpZXJ0IGRlbiBFeHBlcnRlbm1vZHVzLCBkLmguIHplaWd0IGtlaW5lIG3DtmdsaWNoZXJ3ZWlzZSBuZXJ2ZW5kZW4gIgorIkhpbGZlaW5mb3JtYXRpb25lbiBhbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkc2VsZWN0LjE6NTYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tY29sb3VyPnxCPC0tY29sb3I+IEk8c2NyZWVucGFydDo+W0k8Zm9yZWdyb3VuZD5dLFtJPGJhY2tncm91bmQ+XVtJPDphdHRyPltJPCthdHRyKy4uPl1dIgorbXNnc3RyICJbQjwtLWNvbG91cj58QjwtLWNvbG9yPiBJPEJpbGRzY2hpcm10ZWlsOj5bSTxWb3JkZXJncnVuZD5dLFtJPEhpbnRlcmdydW5kPl1bSTw6QXR0cj5bSTwrQXR0cisuLj5dXV0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo2MworbXNnaWQgIiIKKyJDb25maWd1cmVzIHNjcmVlbiBjb2xvcnMuIFRoaXMgd29ya3Mgb25seSBpZiB5b3VyIGRpc3BsYXkgc3VwcG9ydHMgY29sb3JzLiAgIgorIlRoaXMgb3B0aW9uIG1heSBiZSB1c2VkIG11bHRpcGxlIHRpbWVzIChhbmQgaXMgYmVzdCB1c2VkIGluIEk8ZHNlbGVjdC5jZmc+KS4gIgorIkVhY2ggdXNlIGNoYW5nZXMgdGhlIGNvbG9yIChhbmQgb3B0aW9uYWxseSwgb3RoZXIgYXR0cmlidXRlcykgb2Ygb25lIHBhcnQgb2YgIgorInRoZSBzY3JlZW4uICBUaGUgcGFydHMgb2YgdGhlIHNjcmVlbiAoZnJvbSB0b3AgdG8gYm90dG9tKSBhcmU6IgorbXNnc3RyICIiCisiS29uZmlndXJpZXJ0IGRpZSBCaWxkc2NoaXJtZmFyYmVuLiBEaWVzIGZ1bmt0aW9uaWVydCBudXIsIGZhbGxzIElociAiCisiQmlsZHNjaGlybSBGYXJiZW4gdW50ZXJzdMO8dHp0LiBEaWVzZSBPcHRpb24ga2FubiBtZWhyZmFjaCB2ZXJ3ZW5kZXQgd2VyZGVuICIKKyIodW5kIHdpcmQgYW0gYmVzdGVuIGluIEk8ZHNlbGVjdC5jZmc+IHZlcndlbmRldCkuIEplZGUgVmVyd2VuZHVuZyDDpG5kZXJ0IGRpZSAiCisiRmFyYmVuICh1bmQgb3B0aW9uYWwgYW5kZXJlIEF0dHJpYnV0ZSkgZWluZXMgVGVpbHMgZGVzIEJpbGRzY2hpcm1zLiBEaWUgIgorIlRlaWxlIGRlcyBCaWxkc2NoaXJtcyAodm9uIG9iZW4gbmFjaCB1bnRlbikgc2luZDoiCisKKyMuIHR5cGU6IFRQCisjOiBkc2VsZWN0LjE6NjQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHRpdGxlPiIKK21zZ3N0ciAiQjx0aXRsZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo2NworbXNnaWQgIlRoZSBzY3JlZW4gdGl0bGUuIgorbXNnc3RyICJEZXIgQmlsZHNjaGlybS1UaXRlbC4iCisKKyMuIHR5cGU6IFRQCisjOiBkc2VsZWN0LjE6NjcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGxpc3RoZWFkPiIKK21zZ3N0ciAiQjxsaXN0aGVhZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo3MAorbXNnaWQgIlRoZSBoZWFkZXIgbGluZSBhYm92ZSB0aGUgbGlzdCBvZiBwYWNrYWdlcy4iCittc2dzdHIgIkRpZSBLb3BmemVpbGUgw7xiZXIgZGVyIFBha2V0bGlzdGUuIgorCisjLiB0eXBlOiBUUAorIzogZHNlbGVjdC4xOjcwCisjLCBuby13cmFwCittc2dpZCAiQjxsaXN0PiIKK21zZ3N0ciAiQjxsaXN0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjczCittc2dpZCAiVGhlIHNjcm9sbGluZyBsaXN0IG9mIHBhY2thZ2VzIChhbmQgYWxzbyBzb21lIGhlbHAgdGV4dCkuIgorbXNnc3RyICJEaWUgc2Nyb2xsZW5kZSBMaXN0ZSB2b24gUGFrZXRlbiAodW5kIGF1Y2ggZXR3YXMgSGlsZmV0ZXh0KS4iCisKKyMuIHR5cGU6IFRQCisjOiBkc2VsZWN0LjE6NzMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGxpc3RzZWw+IgorbXNnc3RyICJCPGxpc3RzZWw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NzYKK21zZ2lkICJUaGUgc2VsZWN0ZWQgaXRlbSBpbiB0aGUgbGlzdC4iCittc2dzdHIgIkRlciBhdXNnZXfDpGhsdGUgRWludHJhZyBpbiBkZXIgTGlzdGUuIgorCisjLiB0eXBlOiBUUAorIzogZHNlbGVjdC4xOjc2CisjLCBuby13cmFwCittc2dpZCAiQjxwa2dzdGF0ZT4iCittc2dzdHIgIkI8cGtnc3RhdGU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6ODAKK21zZ2lkICIiCisiSW4gdGhlIGxpc3Qgb2YgcGFja2FnZXMsIHRoZSB0ZXh0IGluZGljYXRpbmcgdGhlIGN1cnJlbnQgc3RhdGUgb2YgZWFjaCAiCisicGFja2FnZS4iCittc2dzdHIgIiIKKyJJbiBkZXIgTGlzdGUgZGVyIFBha2V0ZSwgZGVyIFRleHQsIGRlciBkZW4gYWt0dWVsbGVuIFp1c3RhbmQgamVkZXMgUGFrZXRzICIKKyJhbnplaWd0LiIKKworIy4gdHlwZTogVFAKKyM6IGRzZWxlY3QuMTo4MAorIywgbm8td3JhcAorbXNnaWQgIkI8cGtnc3RhdGVzZWw+IgorbXNnc3RyICJCPHBrZ3N0YXRlc2VsPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjg0Cittc2dpZCAiIgorIkluIHRoZSBsaXN0IG9mIHBhY2thZ2VzLCB0aGUgdGV4dCBpbmRpY2F0aW5nIHRoZSBjdXJyZW50IHN0YXRlIG9mIHRoZSAiCisiY3VycmVudGx5IHNlbGVjdGVkIHBhY2thZ2UuIgorbXNnc3RyICIiCisiSW4gZGVyIExpc3RlIGRlciBQYWtldGUsIGRlciBUZXh0LCBkZXIgZGVuIGFrdHVlbGxlbiBadXN0YW5kIGRlcyBha3R1ZWxsICIKKyJhdXNnZXfDpGhsdGVuIFBha2V0ZXMgYW56ZWlndC4iCisKKyMuIHR5cGU6IFRQCisjOiBkc2VsZWN0LjE6ODQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGluZm9oZWFkPiIKK21zZ3N0ciAiQjxpbmZvaGVhZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo4NworbXNnaWQgIiIKKyJUaGUgaGVhZGVyIGxpbmUgdGhhdCBkaXNwbGF5cyB0aGUgc3RhdGUgb2YgdGhlIGN1cnJlbnRseSBzZWxlY3RlZCBwYWNrYWdlLiIKK21zZ3N0ciAiIgorIkRpZSBLb3BmemVpbGUsIGRpZSBkZW4gWnVzdGFuZCBkZXMgYWt0dWVsbCBhdXNnZXfDpGhsdGVuIFBha2V0ZXMgYW56ZWlndC4iCisKKyMuIHR5cGU6IFRQCisjOiBkc2VsZWN0LjE6ODcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGluZm9kZXNjPiIKK21zZ3N0ciAiQjxpbmZvZGVzYz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo5MAorbXNnaWQgIlRoZSBwYWNrYWdlJ3Mgc2hvcnQgZGVzY3JpcHRpb24uIgorbXNnc3RyICJEaWUgS3VyemJlc2NocmVpYnVuZyBkZXMgUGFrZXRzLiIKKworIy4gdHlwZTogVFAKKyM6IGRzZWxlY3QuMTo5MAorIywgbm8td3JhcAorbXNnaWQgIkI8aW5mbz4iCittc2dzdHIgIkI8aW5mbz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo5MworbXNnaWQgIlVzZWQgdG8gZGlzcGxheSBwYWNrYWdlIGluZm8gc3VjaCBhcyB0aGUgcGFja2FnZSdzIGRlc2NyaXB0aW9uLiIKK21zZ3N0ciAiVmVyd2VuZGV0IHVtIFBha2V0aW5mb3JtYXRpb25lbiB3aWUgZGllIFBha2V0YmVzY2hyZWlidW5nIGFuenV6ZWlnZW4uIgorCisjLiB0eXBlOiBUUAorIzogZHNlbGVjdC4xOjkzCisjLCBuby13cmFwCittc2dpZCAiQjxpbmZvZm9vdD4iCittc2dzdHIgIkI8aW5mb2Zvb3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6OTYKK21zZ2lkICJUaGUgbGFzdCBsaW5lIG9mIHRoZSBzY3JlZW4gd2hlbiBzZWxlY3RpbmcgcGFja2FnZXMuIgorbXNnc3RyICJEaWUgdW50ZXJzdGUgWmVpbGUgZGVzIEJpbGRzY2hpcm1zIGJlaSBkZXIgUGFrZXRhdXN3YWhsLiIKKworIy4gdHlwZTogVFAKKyM6IGRzZWxlY3QuMTo5NgorIywgbm8td3JhcAorbXNnaWQgIkI8cXVlcnk+IgorbXNnc3RyICJCPHF1ZXJ5PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjk5Cittc2dpZCAiVXNlZCB0byBkaXNwbGF5IHF1ZXJ5IGxpbmVzIgorbXNnc3RyICJWZXJ3ZW5kZXQgenVtIEFuemVpZ2VuIHZvbiBBYmZyYWdlemVpbGVuIgorCisjLiB0eXBlOiBUUAorIzogZHNlbGVjdC4xOjk5CisjLCBuby13cmFwCittc2dpZCAiQjxoZWxwc2NyZWVuPiIKK21zZ3N0ciAiQjxoZWxwc2NyZWVuPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjEwMgorbXNnaWQgIkNvbG9yIG9mIGhlbHAgc2NyZWVucy4iCittc2dzdHIgIkZhcmJlIGRlciBIaWxmZWJpbGRzY2hpcm1lLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjEwNworbXNnaWQgIiIKKyJBZnRlciB0aGUgcGFydCBvZiB0aGUgc2NyZWVuIGNvbWVzIGEgY29sb24gYW5kIHRoZSBjb2xvciBzcGVjaWZpY2F0aW9uLiBZb3UgIgorImNhbiBzcGVjaWZ5IGVpdGhlciB0aGUgZm9yZWdyb3VuZCBjb2xvciwgdGhlIGJhY2tncm91bmQgY29sb3IsIG9yIGJvdGgsICIKKyJvdmVycmlkaW5nIHRoZSBjb21waWxlZC1pbiBjb2xvcnMuIFVzZSBzdGFuZGFyZCBjdXJzZXMgY29sb3IgbmFtZXMuIgorbXNnc3RyICIiCisiTmFjaCBkZW0gVGVpbCBkZXMgQmlsZHNjaGlybXMga29tbXQgZWluIERvcHBlbHB1bmt0IHVuZCBkaWUgRmFyYmFuZ2FiZS4gU2llICIKKyJrw7ZubmVuIGVudHdlZGVyIGRpZSBWb3JkZXJncnVuZGZhcmJlLCBkaWUgSGludGVyZ3J1bmRmYXJiZSBvZGVyIGJlaWRlICIKKyJhbmdlYmVuIHVuZCBkYW1pdCBkaWUgZWluZ2ViYXV0ZW4gV2VydGUgw7xiZXJzY2hyZWliZW4uIFZlcndlbmRlbiBTaWUgZGllICIKKyJTdGFuZGFyZC1GYXJibmFtZW4gdm9uIEN1cnNlcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxMTMKK21zZ2lkICIiCisiT3B0aW9uYWxseSwgYWZ0ZXIgdGhlIGNvbG9yIHNwZWNpZmljYXRpb24gaXMgYW5vdGhlciBjb2xvbiwgYW5kIGFuIGF0dHJpYnV0ZSAiCisic3BlY2lmaWNhdGlvbi4gVGhpcyBpcyBhIGxpc3Qgb2Ygb25lIG9yIG1vcmUgYXR0cmlidXRlcywgc2VwYXJhdGVkIGJ5IHBsdXMgIgorIihcIitcIikgY2hhcmFjdGVycy4gQXZhaWxhYmxlIGF0dHJpYnV0ZXMgaW5jbHVkZSAobm90IGFsbCBvZiB0aGVzZSB3aWxsIHdvcmsgIgorIm9uIGFsbCB0ZXJtaW5hbHMpOiBub3JtYWwsIHN0YW5kb3V0LCB1bmRlcmxpbmUsIHJldmVyc2UsIGJsaW5rLCBicmlnaHQsIGRpbSwgIgorImJvbGQiCittc2dzdHIgIiIKKyJPcHRpb25hbCBrYW5uIG5hY2ggZGVyIEZhcmJhbmdhYmUgZWluIHdlaXRlcmVyIERvcHBlbHB1bmt0IHVuZCBlaW5lIEF0dHJpYnV0LSIKKyJBbmdhYmUgZm9sZ2VuLiBEaWVzIGlzdCBlaW5lIExpc3RlIHZvbiBlaW5lbSBvZGVyIG1laHJlcmVuIEF0dHJpYnV0KGVuKSwgIgorImdldHJlbm50IGR1cmNoIFBsdXMtWmVpY2hlbiAowrsrwqspLiBGb2xnZW5kZSBBdHRyaWJ1dGUgc2luZCB2ZXJmw7xnYmFyIChhYmVyICIKKyJuaWNodCBhbGxlIGZ1bmt0aW9uaWVyZW4gaW4gYWxsZW4gVGVybWluYWxzKTogbm9ybWFsLCBzdGFuZG91dCwgdW5kZXJsaW5lLCAiCisicmV2ZXJzZSwgYmxpbmssIGJyaWdodCwgZGltLCBib2xkIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTE2Cittc2dpZCAiUHJpbnQgYSBicmllZiBoZWxwIHRleHQgYW5kIGV4aXQgc3VjY2Vzc2Z1bGx5LiIKK21zZ3N0ciAiR2liIGVpbmVuIGt1cnplbiBIaWxmZXRleHQgYXVzIHVuZCBiZWVuZGUgc2ljaCBlcmZvbGdyZWljaC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxMTkKK21zZ2lkICJQcmludCB2ZXJzaW9uIGluZm9ybWF0aW9uIGFuZCBleGl0IHN1Y2Nlc3NmdWxseS4iCittc2dzdHIgIkdlYmUgVmVyc2lvbnNpbmZvcm1hdGlvbmVuIGF1cyB1bmQgYmVlbmRlIHNpY2ggZXJmb2xncmVpY2guIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTI2Cittc2dpZCAiIgorIldoZW4gQjxkc2VsZWN0PiBpcyBzdGFydGVkIGl0IGNhbiBwZXJmb3JtIHRoZSBmb2xsb3dpbmcgYWN0aW9ucywgZWl0aGVyICIKKyJkaXJlY3RseSBpZiBpdCB3YXMgc3BlY2lmaWVkIG9uIHRoZSBjb21tYW5kIGxpbmUgb3IgYnkgcHJvbXB0aW5nIHRoZSB1c2VyICIKKyJ3aXRoIGEgbWVudSBvZiBhdmFpbGFibGUgYWN0aW9ucyBpZiBydW5uaW5nIGludGVyYWN0aXZlbHk6IgorbXNnc3RyICIiCisiV2VubiBCPERzZWxlY3Q+IGdlc3RhcnRldCB3aXJkLCBrYW5uIGVzIGRpZSBmb2xnZW5kZW4gQWt0aW9uZW4gZHVyY2hmw7xocmVuLCAiCisiZW50d2VkZXIgZGlyZWt0LCBmYWxscyBzaWUgYXVmIGRlciBLb21tYW5kb3plaWxlIGFuZ2VnZWJlbiB3dXJkZSBvZGVyIGluZGVtICIKKyJkZW0gQmVudXR6ZXIgZWluIE1lbsO8IGRlciB2ZXJmw7xnYmFyZW4gQWt0aW9uZW4gYmVpIGludGVya2F0aXZlbiBCZXRyaWViICIKKyJhbmdlemVpZ3Qgd2lyZDoiCisKKyMuIHR5cGU6IFNTCisjOiBkc2VsZWN0LjE6MTI2CisjLCBuby13cmFwCittc2dpZCAiYWNjZXNzIgorbXNnc3RyICJadWdyaWZmIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTI4Cittc2dpZCAiQ2hvb3NlIGFuZCBjb25maWd1cmUgYW4gYWNjZXNzIG1ldGhvZCB0byBhY2Nlc3MgcGFja2FnZSByZXBvc2l0b3JpZXMuIgorbXNnc3RyICJXw6RobGUgdW5kIGtvbmZpZ3VyaWVyZSBlaW5lIFp1Z3JpZmZzbWV0aG9kZSBmw7xyIFBha2V0ZGVwb3RzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjEzNAorbXNnaWQgIiIKKyJCeSBkZWZhdWx0LCBCPGRzZWxlY3Q+IHByb3ZpZGVzIHNldmVyYWwgbWV0aG9kcyBzdWNoIGFzIEk8Y2Ryb20+LCAiCisiSTxtdWx0aV9jZD4sIEk8bmZzPiwgSTxtdWx0aV9uZnM+LCBJPGhhcmRkaXNrPiwgSTxtb3VudGVkPiwgSTxtdWx0aV9tb3VudD4sICIKKyJJPGZsb3BweT4gb3IgSTxmdHA+LCBidXQgb3RoZXIgcGFja2FnZXMgbWF5IHByb3ZpZGUgYWRkaXRpb25hbCBtZXRob2RzLCBlZy4gIgorInRoZSBJPGFwdD4gYWNjZXNzIG1ldGhvZCBwcm92aWRlZCBieSB0aGUgQjxhcHQ+IHBhY2thZ2UuIgorbXNnc3RyICIiCisiU3RhbmRhcmRtw6TDn2lnIHN0ZWxsdCBCPGRzZWxlY3Q+IG1laHJlcmUgTWV0aG9kZW4gd2llIEk8Y2Ryb20+LCBJPG11bHRpX2NkPiwgIgorIkk8bmZzPiwgSTxtdWx0aV9uZnM+LCBJPGhhcmRkaXNrPiwgSTxtb3VudGVkPiwgSTxtdWx0aV9tb3VudD4sIEk8ZmxvcHB5PiAiCisib2RlciBJPGZ0cD4genVyIFZlcmbDvGd1bmcsIGFiZXIgYW5kZXJlIFBha2V0ZSBrw7ZubmVuIHp1c8OkdHpsaWNoZSBNZXRob2RlbiAiCisiYmVyZWl0c3RlbGxlbiwgei5CLiBzdGVsbHQgZGFzIEI8YXB0Pi1QYWtldCBkaWUgSTxhcHQ+LVp1Z3JpZmZzbWV0aG9kZSAiCisiYmVyZWl0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjEzNgorbXNnaWQgIlRoZSB1c2Ugb2YgdGhlIEk8YXB0PiBhY2Nlc3MgbWV0aG9kIGlzIHN0cm9uZ2x5IHJlY29tbWVuZGVkLiIKK21zZ3N0ciAiIgorIkRpZSBWZXJ3ZW5kdW5nIGRlciBJPGFwdD4tWnVncmlmZnNtZXRob2RlIHdpcmQgbmFjaGRyw7xja2xpY2ggZW1wZm9obGVuLiIKKworIyBBa3R1YWxpc2llcmVuIHfDpHJlIGJlc3NlciBhbHMgRXJuZXVlcm4sIGFiZXIgZGFzIG3DvHNzdGUgaWNoIGltIE1lbsO8IGRhbm4KKyMgYWJrw7xyemVuLiBTdmVuCisjIEhLOiBEYWhlciBoaWVyIHVudHlwaXNjaGUgw5xiZXJzZXR6dW5nIQorIy4gdHlwZTogU1MKKyM6IGRzZWxlY3QuMToxMzcKKyMsIG5vLXdyYXAKK21zZ2lkICJ1cGRhdGUiCittc2dzdHIgIkVybmV1ZXJuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTM5Cittc2dpZCAiUmVmcmVzaCB0aGUgYXZhaWxhYmxlIHBhY2thZ2VzIGRhdGFiYXNlLiIKK21zZ3N0ciAiRGllIHZlcmbDvGdiYXJlIFBha2V0ZGF0ZW5iYW5rIGF1ZmZyaXNjaGVuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjE0NgorbXNnaWQgIiIKKyJSZXRyaWV2ZXMgYSBsaXN0IG9mIGF2YWlsYWJsZSBwYWNrYWdlIHZlcnNpb25zIGZyb20gdGhlIHBhY2thZ2UgcmVwb3NpdG9yeSwgIgorImNvbmZpZ3VyZWQgZm9yIHRoZSBjdXJyZW50IGFjY2VzcyBtZXRob2QsIGFuZCB1cGRhdGUgdGhlIGRwa2cgZGF0YWJhc2UuIFRoZSAiCisicGFja2FnZSBsaXN0cyBhcmUgY29tbW9ubHkgcHJvdmlkZWQgYnkgdGhlIHJlcG9zaXRvcnkgYXMgZmlsZXMgbmFtZWQgIgorIkk8UGFja2FnZXM+IG9yIEk8UGFja2FnZXMuZ3o+LiAgVGhlc2UgZmlsZXMgY2FuIGJlIGdlbmVyYXRlZCBieSByZXBvc2l0b3J5ICIKKyJtYWludGFpbmVycywgdXNpbmcgdGhlIHByb2dyYW0gQjxkcGtnLXNjYW5wYWNrYWdlcz4oMSkuIgorbXNnc3RyICIiCisiSG9sdCBkaWUgTGlzdGUgZGVyIHZlcmbDvGdiYXJlbiBQYWtldHZlcnNpb25lbiBhdXMgZGVtIFBha2V0LURlcG90LCBkYXMgZsO8ciAiCisiZGllIGFrdHVlbGxlIFp1Z3JpZmZzbWV0aG9kZSBrb25maWd1cmllcnQgaXN0LCB1bmQgYWt0dWFsaXNpZXJ0IGRpZSAiCisiRGF0ZW5iYW5rIHZvbiBkcGtnLiBEaWUgUGFrZXRsaXN0ZSB3aXJkIGltIERlcG90IHR5cGlzY2hlcndlaXNlIGluIERhdGVpZW4gIgorIm1pdCBkZW4gTmFtZW4gSTxQYWNrYWdlcz4gb2RlciBJPFBhY2thZ2VzLmd6PiBiZXJlaXRnZXN0ZWxsdC4gRGllc2UgRGF0ZWllbiAiCisia8O2bm5lbiB2b24gZGVuIEJldHJldWVybiBkZXMgRGVwb3RzIG1pdCBkZW0gUHJvZ3JhbW0gQjxkcGtnLXNjYW5wYWNrYWdlcz4oMSkgIgorImVyc3RlbGx0IHdlcmRlbi4iCisKKyMgSEs6IMK7RXJuZXVlcm7CqyBzLm8uCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTQ5Cittc2dpZCAiIgorIkRldGFpbHMgb2YgdGhlIHVwZGF0ZSBhY3Rpb24gZGVwZW5kIG9uIHRoZSBhY2Nlc3MgbWV0aG9kJ3MgaW1wbGVtZW50YXRpb24uICAiCisiTm9ybWFsbHkgdGhlIHByb2Nlc3MgaXMgc3RyYWlnaHRmb3J3YXJkIGFuZCByZXF1aXJlcyBubyB1c2VyIGludGVyYWN0aW9uLiIKK21zZ3N0ciAiIgorIkRpZSBEZXRhaWxzIGRlciBBa3Rpb24gwrtFcm5ldWVybsKrIGjDpG5nZW4gdm9uIGRlciBJbXBsZW1lbnRpZXJ1bmcgZGVyICIKKyJadWdyaWZmc21ldGhvZGUgYWIuIE5vcm1hbGVyd2Vpc2UgaXN0IGRlciBQcm96ZXNzIHVua29tcGxpemllcnQgdW5kIHZlcmxhbmd0ICIKKyJrZWluZSBCZW51dHplcmludGVyYWt0aW9uZW4uIgorCisjLiB0eXBlOiBTUworIzogZHNlbGVjdC4xOjE1MAorIywgbm8td3JhcAorbXNnaWQgInNlbGVjdCIKK21zZ3N0ciAiQXVzd8OkaGxlbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjE1MgorbXNnaWQgIlZpZXcgb3IgbWFuYWdlIHBhY2thZ2Ugc2VsZWN0aW9ucyBhbmQgZGVwZW5kZW5jaWVzLiIKK21zZ3N0ciAiUGFrZXRhdXN3YWhsZW4gb2RlciAtYWJow6RuZ2lna2VpdGVuIGJldHJhY2h0ZW4gb2RlciB2ZXJ3YWx0ZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTU4Cittc2dpZCAiIgorIlRoaXMgaXMgdGhlIG1haW4gZnVuY3Rpb24gb2YgQjxkc2VsZWN0Pi4gSW4gdGhlIHNlbGVjdCBzY3JlZW4sIHRoZSB1c2VyIGNhbiAiCisicmV2aWV3IGEgbGlzdCBvZiBhbGwgYXZhaWxhYmxlIGFuZCBpbnN0YWxsZWQgcGFja2FnZXMuIFdoZW4gcnVuIHdpdGggIgorImFkbWluaXN0cmF0b3IgcHJpdmlsZWdlcywgaXQgaXMgYWxzbyBwb3NzaWJsZSB0byBpbnRlcmFjdGl2ZWx5IGNoYW5nZSAiCisicGFja2FnZXMgc2VsZWN0aW9uIHN0YXRlLiBCPGRzZWxlY3Q+IHRyYWNrcyB0aGUgaW1wbGljYXRpb25zIG9mIHRoZXNlICIKKyJjaGFuZ2VzIHRvIG90aGVyIGRlcGVuZGluZyBvciBjb25mbGljdGluZyBwYWNrYWdlcy4iCittc2dzdHIgIiIKKyJEaWVzIGlzdCBkaWUgSGF1cHRmdW5rdGlvbmFsaXTDpHQgdm9uIEI8ZHNlbGVjdD4uIEltIEF1c3dhaGxiaWxkc2NoaXJtIGthbm4gIgorImRlciBCZW51dHplciBkaWUgTGlzdGUgZGVyIHZlcmbDvGdiYXJlbiB1bmQgaW5zdGFsbGllcnRlbiBQYWtldGUgYmVndXRhY2h0ZW4uICIKKyJXZW5uIEI8ZHNlbGVjdD4gbWl0IGFkbWluaXN0cmF0aXZlbiBSZWNodGVuIGF1c2dlZsO8aHJ0IHdpcmQgaXN0IGVzIGF1Y2ggIgorIm3DtmdsaWNoLCBkZW4gUGFrZXRhdXN3YWhsenVzdGFuZCBpbnRlcmFrdGl2IHp1IHZlcsOkbmRlcm4uIEI8ZHNlbGVjdD4gIgorInZlcmZvbGd0IGRpZSBBdXN3aXJrdW5nZW4gZGllc2VyIMOEbmRlcnVuZ2VuIGF1ZiBhbmRlcmUgYWJow6RuZ2lnZSBvZGVyIGltICIKKyJLb25mbGlrdCBzdGVoZW5kZSBQYWtldGUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTY1Cittc2dpZCAiIgorIldoZW4gYSBjb25mbGljdCBvciBmYWlsZWQgZGVwZW5kcyBpcyBkZXRlY3RlZCwgYSBkZXBlbmRlbmN5IHJlc29sdXRpb24gIgorInN1YnNjcmVlbiBpcyBwcm9tcHRlZCB0byB0aGUgdXNlci4gSW4gdGhpcyBzY3JlZW4sIGEgbGlzdCBvZiBjb25mbGljdGluZyBvciAiCisiZGVwZW5kaW5nIHBhY2thZ2VzIGlzIHNob3duLCBhbmQgZm9yIGVhY2ggcGFja2FnZSBsaXN0ZWQsIHRoZSByZWFzb24gZm9yIGl0cyAiCisibGlzdGluZyBpcyBzaG93bi4gVGhlIHVzZXIgbWF5IGFwcGx5IHRoZSBzdWdnZXN0aW9ucyBwcm9wb3NlZCBieSBCPGRzZWxlY3Q+LCAiCisib3ZlcnJpZGUgdGhlbSwgb3IgYmFjayBvdXQgYWxsIHRoZSBjaGFuZ2VzLCBpbmNsdWRpbmcgdGhlIG9uZXMgdGhhdCBjcmVhdGVkICIKKyJ0aGUgdW5yZXNvbHZlZCBkZXBlbmRzIG9yIGNvbmZsaWN0cy4iCittc2dzdHIgIiIKKyJXZW5uIGVpbiBLb25mbGlrdCBvZGVyIGVpbmUgZmVobGdlc2NobGFnZW5lIEFiaMOkbmdpZ2tlaXQgZXJrYW5udCB3aXJkLCB3aXJkICIKKyJkZW0gQmVudXR6ZXIgZWluIFVudGVyYmlsZHNjaGlybSBtaXQgZWluZXIgTMO2c3VuZyBkZXIgIgorIkFiaMOkbmdpZ2tlaXRzcHJvYmxlbWF0aWsgYW5nZWJvdGVuLiBBdWYgZGllc2VtIEJpbGRzY2hpcm0gd2lyZCBlaW5lIExpc3RlICIKKyJkZXIgaW0gS29uZmxpa3Qgc3RlaGVuZGVuIG9kZXIgYWJow6RuZ2lnZW4gUGFrZXRlIGdlemVpZ3QsIHdvYmVpIGbDvHIgamVkZXMgIgorImF1ZmdlZsO8aHJ0ZSBQYWtldCBkZXIgR3J1bmQgZWJlbmZhbGxzIGFuZ2VnZWJlbiBpc3QuIERlciBCZW51dHplciBrYW5uIGRpZSAiCisiVm9yc2NobMOkZ2Ugdm9uIEI8ZHNlbGVjdD4gYW5uZWhtZW4sIHNpY2ggw7xiZXIgc2llIGhpbndlZ3NldHplbiBvZGVyIGFsbGUgIgorIsOEbmRlcnVuZ2VuIHp1csO8Y2tuZWhtZW4sIGRhcnVudGVyIGRpZWplbmlnZW4sIGRpZSB6dSBkZW4gdW5lcmbDvGxsdGVuICIKKyJBYmjDpG5naWdrZWl0ZW4gb2RlciBLb25mbGlrdGVuIGbDvGhydGVuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjE2OAorbXNnaWQgIiIKKyJUaGUgdXNlIG9mIHRoZSBpbnRlcmFjdGl2ZSBwYWNrYWdlIHNlbGVjdGlvbnMgbWFuYWdlbWVudCBzY3JlZW4gaXMgZXhwbGFpbmVkICIKKyJpbiBtb3JlIGRldGFpbCBiZWxvdy4iCittc2dzdHIgIiIKKyJEaWUgVmVyd2VuZHVuZyBkZXMgaW50ZXJha3RpdmVuIFBha2V0YXVzd2FobGJpbGRzY2hpcm1zIHdpcmQgdW50ZW4gIgorImRldGFpbGxpZXJ0ZXIgYmVzY2hyaWViZW4uIgorCisjLiB0eXBlOiBTUworIzogZHNlbGVjdC4xOjE2OQorIywgbm8td3JhcAorbXNnaWQgImluc3RhbGwiCittc2dzdHIgIkluc3RhbGxpZXJlbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjE3MQorbXNnaWQgIkluc3RhbGxzIHNlbGVjdGVkIHBhY2thZ2VzLiIKK21zZ3N0ciAiSW5zdGFsbGllcnQgYXVzZ2V3w6RobHRlIFBha2V0ZS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxNzcKK21zZ2lkICIiCisiVGhlIGNvbmZpZ3VyZWQgYWNjZXNzIG1ldGhvZCB3aWxsIGZldGNoIGluc3RhbGxhYmxlIG9yIHVwZ3JhZGFibGUgcGFja2FnZXMgIgorImZyb20gdGhlIHJlbGV2YW50IHJlcG9zaXRvcmllcyBhbmQgaW5zdGFsbCB0aGVzZSB1c2luZyBCPGRwa2c+LiAgRGVwZW5kaW5nICIKKyJvbiB0aGUgaW1wbGVtZW50YXRpb24gb2YgdGhlIGFjY2VzcyBtZXRob2QsIGFsbCBwYWNrYWdlcyBjYW4gYmUgcHJlZmV0Y2hlZCAiCisiYmVmb3JlIGluc3RhbGxhdGlvbiwgb3IgZmV0Y2hlZCB3aGVuIG5lZWRlZC4gIFNvbWUgYWNjZXNzIG1ldGhvZHMgbWF5IGFsc28gIgorInJlbW92ZSBwYWNrYWdlcyB0aGF0IHdlcmUgbWFya2VkIGZvciByZW1vdmFsLiIKK21zZ3N0ciAiIgorIkRpZSBrb25maWd1cmllcnRlIFp1Z3JpZmZzbWV0aG9kZSB3aXJkIGluc3RhbGxpZXJiYXJlIG9kZXIgZsO8ciBlaW4gVXBncmFkZSAiCisidmVyZsO8Z2JhcmUgUGFrZXRlIGF1cyBkZW4gcmVsZXZhbnRlbiBEZXBvdHMgaG9sZW4gdW5kIGRhbm4gbWl0dGVscyBCPGRwa2c+ICIKKyJpbnN0YWxsaWVyZW4uIEFiaMOkbmdpZyB2b24gZGVyIEltcGxlbWVudGF0aW9uIGRlciBadWdyaWZmc21ldGhvZGUga8O2bm5lbiAiCisiYWxsZSBQYWtldGUgdm9yIGRlciBJbnN0YWxsYXRpb24gYmVyZWl0cyBnZWhvbHQgd2VyZGVuLCBvZGVyIGJlaSBCZWRhcmYgIgorImdlaG9sdCB3ZXJkZW4uIEJlaSBlaW5pZ2VuIFp1Z3JpZmZzbWV0aG9kZW4gd2VyZGVuIGF1Y2ggUGFrZXRlIGVudGZlcm50LCBkaWUgIgorInp1ciBFbnRmZXJudW5nIG1hcmtpZXJ0IHd1cmRlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxODUKK21zZ2lkICIiCisiSWYgYW4gZXJyb3Igb2NjdXJyZWQgZHVyaW5nIGluc3RhbGwsIGl0IGlzIHVzdWFsbHkgYWR2aXNhYmxlIHRvIHJ1biBpbnN0YWxsICIKKyJhZ2Fpbi4gSW4gbW9zdCBjYXNlcywgdGhlIHByb2JsZW1zIHdpbGwgZGlzYXBwZWFyIG9yIGJlIHNvbHZlZC4gIElmIHByb2JsZW1zICIKKyJwZXJzaXN0IG9yIHRoZSBpbnN0YWxsYXRpb24gcGVyZm9ybWVkIHdhcyBpbmNvcnJlY3QsIHBsZWFzZSBpbnZlc3RpZ2F0ZSBpbnRvICIKKyJ0aGUgY2F1c2VzIGFuZCBjaXJjdW1zdGFuY2VzLCBhbmQgZmlsZSBhIGJ1ZyBpbiB0aGUgRGViaWFuIGJ1ZyB0cmFja2luZyAiCisic3lzdGVtLiBJbnN0cnVjdGlvbnMgb24gaG93IHRvIGRvIHRoaXMgY2FuIGJlIGZvdW5kIGF0IGh0dHA6Ly9idWdzLmRlYmlhbi4iCisib3JnLyBvciBieSByZWFkaW5nIHRoZSBkb2N1bWVudGF0aW9uIGZvciBCPGJ1Zz4oMSkgb3IgQjxyZXBvcnRidWc+KDEpLCBpZiAiCisidGhlc2UgYXJlIGluc3RhbGxlZC4iCittc2dzdHIgIiIKKyJGYWxscyB3w6RocmVuZCBkZXIgSW5zdGFsbGF0aW9uIGVpbiBGZWhsZXIgYXVmdHJhdCBpc3QgZXMgbm9ybWFsZXJ3ZWlzZSAiCisiZW1wZmVobGVuc3dlcnQsIGRpZSBJbnN0YWxsYXRpb24gZXJuZXV0IGR1cmNoenVmw7xocmVuLiBJbiBkZW4gbWVpc3RlbiBGw6RsbGVuICIKKyJ3aXJkIGRhcyBQcm9ibGVtIHZlcnNjaHdpbmRlbiBvZGVyIGdlbMO2c3Qgd2VyZGVuLiBGYWxscyBQcm9ibGVtZSBibGVpYmVuICIKKyJvZGVyIGRpZSBkdXJjaGdlZsO8aHJ0ZSBJbnN0YWxsYXRpb24gbmljaHQga29ycmVrdCB3YXIsIHVudGVyc3VjaGVuIFNpZSBiaXR0ZSAiCisiZGVuIEdydW5kIHVuZCBkaWUgVW1zdMOkbmRlIHVuZCByZWljaGVuIFNpZSBlaW5lbiBGZWhsZXIgaW4gZGVyICIKKyJGZWhsZXJkYXRlbmJhbmsgdm9uIERlYmlhbiBlaW4uIEFubGVpdHVuZ2VuIHdpZSBkaWVzIGVyZm9sZ2VuIGthbm4sIHNpbmQgYXVmICIKKyJodHRwOi8vYnVncy5kZWJpYW4ub3JnLyB2ZXJmw7xnYmFyIG9kZXIga8O2bm5lbiBkdXJjaCBMZXNlbiBkZXIgRG9rdW1lbnRhdGlvbiAiCisiZsO8ciBCPGJ1Zz4oMSkgb2RlciBCPHJlcG9ydGJ1Zz4oMSkgKGZhbGxzIGRpZXNlIGluc3RhbGxpZXJ0IHNpbmQpIGVyaGFsdGVuICIKKyJ3ZXJkZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTkyCittc2dpZCAiIgorIkRldGFpbHMgb2YgdGhlIGluc3RhbGwgYWN0aW9uIGRlcGVuZCBvbiB0aGUgYWNjZXNzIG1ldGhvZCdzIGltcGxlbWVudGF0aW9uLiAgIgorIlRoZSB1c2VyJ3MgYXR0ZW50aW9uIGFuZCBpbnB1dCBtYXkgYmUgcmVxdWlyZWQgZHVyaW5nIGluc3RhbGxhdGlvbiwgIgorImNvbmZpZ3VyYXRpb24gb3IgcmVtb3ZhbCBvZiBwYWNrYWdlcy4gVGhpcyBkZXBlbmRzIG9uIHRoZSBtYWludGFpbmVyIHNjcmlwdHMgIgorImluIHRoZSBwYWNrYWdlLiBTb21lIHBhY2thZ2VzIG1ha2UgdXNlIG9mIHRoZSBCPGRlYmNvbmY+KDEpICBsaWJyYXJ5LCAiCisiYWxsb3dpbmcgZm9yIG1vcmUgZmxleGlibGUgb3IgZXZlbiBhdXRvbWF0ZWQgaW5zdGFsbGF0aW9uIHNldHVwcy4iCittc2dzdHIgIiIKKyJEZXRhaWxzIGRlciBJbnN0YWxsYXRpb25zYWt0aW9uIGjDpG5nZW4gdm9uIGRlciBJbXBsZW1lbnRpZXJ1bmcgZGVyICIKKyJadWdyaWZmc21ldGhvZGUgYWIuIERpZSBBdWZtZXJrc2Fta2VpdCB1bmQgRWluZ2FiZSBkZXMgQmVudXR6ZXJzIGvDtm5udGVuICIKKyJ3w6RocmVuZCBkZXIgSW5zdGFsbGF0aW9uLCBLb25maWd1cmF0aW9uIG9kZXIgZGVtIEVudGZlcm5lbiB2b24gUGFrZXRlbiAiCisibm90d2VuZGlnIHNlaW4uIERpZXMgaMOkbmd0IHZvbiBkZW4gQmV0cmV1ZXJza3JpcHRlbiBpbSBQYWtldCBhYi4gRWluaWdlICIKKyJQYWtldGUgdmVyd2VuZGVuIGRpZSBCaWJsaW90aGVrIEI8ZGViY29uZj4oMSksIGRpZSBmbGV4aWJsZXJlIG9kZXIgc29nYXIgIgorImF1dG9tYXRpc2llcnRlIEluc3RhbGxhdGlvbnNlaW5yaWNodHVuZ2VuIGVybGF1YnQuIgorCisjLiB0eXBlOiBTUworIzogZHNlbGVjdC4xOjE5MworIywgbm8td3JhcAorbXNnaWQgImNvbmZpZyIKK21zZ3N0ciAiS29uZmlnIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTk1Cittc2dpZCAiQ29uZmlndXJlcyBhbnkgcHJldmlvdXNseSBpbnN0YWxsZWQsIGJ1dCBub3QgZnVsbHkgY29uZmlndXJlZCBwYWNrYWdlcy4iCittc2dzdHIgIiIKKyJLb25maWd1cmllcnQgYWxsZSBiaXNoZXIgaW5zdGFsbGllcnRlbiwgYWJlciBub2NoIG5pY2h0IHZvbGwga29uZmlndXJpZXJ0ZW4gIgorIlBha2V0ZS4iCisKKyMuIHR5cGU6IFNTCisjOiBkc2VsZWN0LjE6MTk2CisjLCBuby13cmFwCittc2dpZCAicmVtb3ZlIgorbXNnc3RyICJMw7ZzY2hlbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjE5OAorbXNnaWQgIlJlbW92ZXMgb3IgcHVyZ2VzIGluc3RhbGxlZCBwYWNrYWdlcywgdGhhdCBhcmUgbWFya2VkIGZvciByZW1vdmFsLiIKK21zZ3N0ciAiIgorIkzDtnNjaHQgb2RlciBlbnRmZXJudCBpbnN0YWxsaWVydGUgUGFrZXRlIHZvbGxzdMOkbmRpZywgZGllIHp1bSBMw7ZzY2hlbiAiCisibWFya2llcnQgc2luZC4iCisKKyMuIHR5cGU6IFNTCisjOiBkc2VsZWN0LjE6MTk5CisjLCBuby13cmFwCittc2dpZCAicXVpdCIKK21zZ3N0ciAiQmVlbmRlbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjIwMQorbXNnaWQgIlF1aXQgQjxkc2VsZWN0PiIKK21zZ3N0ciAiQjxEc2VsZWN0PiBiZWVuZGVuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MjAzCittc2dpZCAiRXhpdHMgdGhlIHByb2dyYW0gd2l0aCB6ZXJvIChzdWNjZXNzZnVsKSBlcnJvcmNvZGUuIgorbXNnc3RyICJCZWVuZGV0IGRhcyBQcm9ncmFtbSBtaXQgZGVtIEZlaGxlcmNvZGUgTnVsbCAoZXJmb2xncmVpY2gpLiIKKworIy4gdHlwZTogU0gKKyM6IGRzZWxlY3QuMToyMDUKKyMsIG5vLXdyYXAKK21zZ2lkICJQYWNrYWdlIHNlbGVjdGlvbnMgbWFuYWdlbWVudCIKK21zZ3N0ciAiUGFrZXRhdXN3YWhsdmVyd2FsdHVuZyIKKworIy4gdHlwZTogU1MKKyM6IGRzZWxlY3QuMToyMDcKKyMsIG5vLXdyYXAKK21zZ2lkICJJbnRyb2R1Y3Rpb24iCittc2dzdHIgIkVpbmbDvGhydW5nIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MjIzCittc2dpZCAiIgorIkI8ZHNlbGVjdD4gZGlyZWN0bHkgZXhwb3NlcyB0aGUgYWRtaW5pc3RyYXRvciB0byBzb21lIG9mIHRoZSBjb21wbGV4aXRpZXMgIgorImludm9sdmVkIHdpdGggbWFuYWdpbmcgbGFyZ2Ugc2V0cyBvZiBwYWNrYWdlcyB3aXRoIG1hbnkgaW50ZXJkZXBlbmRlbmNpZXMuICIKKyJGb3IgYSB1c2VyIHdobyBpcyB1bmZhbWlsaWFyIHdpdGggdGhlIGNvbmNlcHRzIGFuZCB0aGUgd2F5cyBvZiB0aGUgZGViaWFuICIKKyJwYWNrYWdlIG1hbmFnZW1lbnQgc3lzdGVtLCBpdCBjYW4gYmUgcXVpdGUgb3ZlcndoZWxtaW5nLiBBbHRob3VnaCBCPGRzZWxlY3Q+ICIKKyJpcyBhaW1lZCBhdCBlYXNpbmcgcGFja2FnZSBtYW5hZ2VtZW50IGFuZCBhZG1pbmlzdHJhdGlvbiwgaXQgaXMgb25seSAiCisiaW5zdHJ1bWVudGFsIGluIGRvaW5nIHNvIGFuZCBjYW4gbm90IGJlIGFzc3VtZWQgdG8gYmUgYSBzdWZmaWNpZW50ICIKKyJzdWJzdGl0dXRlIGZvciBhZG1pbmlzdHJhdG9yIHNraWxsIGFuZCB1bmRlcnN0YW5kaW5nLiBUaGUgdXNlciBpcyByZXF1aXJlZCAiCisidG8gYmUgZmFtaWxpYXIgd2l0aCB0aGUgY29uY2VwdHMgdW5kZXJseWluZyB0aGUgRGViaWFuIHBhY2thZ2luZyBzeXN0ZW0uICBJbiAiCisiY2FzZSBvZiBkb3VidCwgY29uc3VsdCB0aGUgQjxkcGtnPigxKSBtYW5wYWdlIGFuZCB0aGUgRGViaWFuIFBvbGljeSBtYW51YWwsICIKKyJjb250YWluZWQgaW4gdGhlIEI8ZGViaWFuLXBvbGljeT4gcGFja2FnZS4iCittc2dzdHIgIiIKKyJCPGRzZWxlY3Q+IHNldHp0IGRlbiBBZG1pbmlzdHJhdG9yIGRpcmVrdCBlaW5pZ2VuIEtvbXBsZXhpdMOkdGVuIGF1cywgZGllICIKKyJiZWltIFZlcndhbHRlbiBncm/Dn2VyIFBha2V0bWVuZ2VuIG1pdCB2aWVsZW4gQWJow6RuZ2lna2VpdGVuIHVudGVyZWluYW5kZXIgIgorImF1ZnRyZXRlbi4gRsO8ciBlaW5lbiBCZW51dHplciwgZGVyIHNpY2ggbWl0IGRlbiBLb256ZXB0ZW4gdW5kIGRlbiBBcnRlbiBkZXMgIgorIkRlYmlhbi1QYWt0dmVyd2FsdHVuZ3NzeXN0ZW1zIG5pY2h0IGF1c2tlbm50IGthbm4gZGllcyByZWNodCDDvGJlcnfDpGx0aWdlbmQgIgorInNlaW4uIE9id29obCBCPGRzZWxlY3Q+IGRhcmF1ZiBhYnppZWx0LCBkaWUgUGFrZXR2ZXJ3YWx0dW5nIHVuZCAtIgorImFkbWluaXN0cmF0aW9uIHp1IHZlcmVpbmZhY2hlbiwga2FubiBlcyBkYXp1IG51ciBlaW4gV2Vya3pldWcgc2VpbiB1bmQgc29taXQgIgorIm5pY2h0IGF1c3JlaWNoZW5kZSBBZG1pbmlzdHJhdG9yZsOkaGlna2VpdGVuIHVuZCBBZG1pbmlzdHJhdG9ydmVyc3TDpG5kbmlzICIKKyJlcnNldHplbi4gRXMgd2lyZCB2b20gQmVudXR6ZXIgZXJ3YXJ0ZXQsIGRhc3MgZXIgbWl0IGRlbiBLb256ZXB0ZW4gZGVzICIKKyJ1bnRlcmxpZWdlbmRlbiBEZWJpYW4tUGFrZXRzeXN0ZW1zIHZlcnRyYXV0IGlzdC4gSW0gWndlaWZlbHNmYWxsIHppZWhlbiBTaWUgIgorImRpZSBIYW5kYnVjaHNlaXRlIEI8ZHBrZz4oMSkgdW5kIGRhcyBEZWJpYW4tUmljaHRsaW5pZW4tSGFuZGJ1Y2ggenUgUmF0ZS4gIgorIkxldHp0ZXJlcyBpc3QgYXVmIEVuZ2xpc2NoIGltIFBha2V0IEI8ZGViaWFuLXBvbGljeT4gZW50aGFsdGVuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjIyOQorbXNnaWQgIiIKKyJVbmxlc3MgQjxkc2VsZWN0PiBpcyBydW4gaW4gZXhwZXJ0IG9yIGltbWVkaWF0ZSBtb2RlLCBhIGhlbHAgc2NyZWVuIGlzIGZpcnN0ICIKKyJkaXNwbGF5ZWQgd2hlbiBjaG9vc2luZyB0aGlzIGFjdGlvbiBmcm9tIHRoZSBtZW51LiBUaGUgdXNlciBpcyBJPHN0cm9uZ2x5PiAiCisiYWR2aXNlZCB0byBzdHVkeSBhbGwgb2YgdGhlIGluZm9ybWF0aW9uIHByZXNlbnRlZCBpbiB0aGUgb25saW5lIGhlbHAgIgorInNjcmVlbnMsIHdoZW4gb25lIHBvcHMgdXAuICBUaGUgb25saW5lIGhlbHAgc2NyZWVucyBjYW4gYXQgYW55IHRpbWUgYmUgIgorImludm9rZWQgd2l0aCB0aGUgQjwnPyc+IGtleS4iCittc2dzdHIgIiIKKyJGYWxscyBCPGRzZWxlY3Q+IG5pY2h0IGltIEV4cGVydGVuLSBvZGVyIGRpcmVrdGVuIE1vZHVzIGzDpHVmdCB3aXJkIHp1ZXJzdCAiCisiZWluIEhpbGZlYmlsZHNjaGlybSBhbmdlemVpZ3QsIHdlbm4gZGllc2UgQWt0aW9uIHZvbSBNZW7DvCBhdXNnZXfDpGhsdCB3aXJkLiAiCisiRGVtIEJlbnV0emVyIHdpcmQgSTxuYWNoZHLDvGNrbGljaD4gZW1wZm9obGVuLCBkaWUgZ2VzYW10ZW4gaW4gZGVyIE9ubGluZS0iCisiSGlsZmUgYW5nZXplaWd0ZW4gSW5mb3JtYXRpb25lbiB6dSBwcsO8ZmVuLCB3ZW5uIGRpZXNlIGFuZ2V6ZWlndCB3ZXJkZW4uIERpZSAiCisiT25saW5lLUhpbGZlYmlsZHNjaGlybWUga8O2bm5lbiBqZWRlcnplaXQgbWl0IGRlciBUYXN0ZSBCPMK7P8KrPiBhdWZnZXJ1ZmVuICIKKyJ3ZXJkZW4uIgorCisjLiB0eXBlOiBTUworIzogZHNlbGVjdC4xOjIzMAorIywgbm8td3JhcAorbXNnaWQgIlNjcmVlbiBsYXlvdXQiCittc2dzdHIgIkJpbGRzY2hpcm1sYXlvdXQiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToyMzgKK21zZ2lkICIiCisiVGhlIHNlbGVjdCBzY3JlZW4gaXMgYnkgZGVmYXVsdCBzcGxpdCBpbiBhIHRvcCBhbmQgYSBib3R0b20gaGFsZi4gIFRoZSB0b3AgIgorImhhbGYgc2hvd3MgYSBsaXN0IG9mIHBhY2thZ2VzLiBBIGN1cnNvciBiYXIgY2FuIHNlbGVjdCBhbiBpbmRpdmlkdWFsICIKKyJwYWNrYWdlLCBvciBhIGdyb3VwIG9mIHBhY2thZ2VzLCBpZiBhcHBsaWNhYmxlLCBieSBzZWxlY3RpbmcgdGhlIGdyb3VwICIKKyJoZWFkZXIuIFRoZSBib3R0b20gaGFsZiBvZiB0aGUgc2NyZWVuIHNob3dzIHNvbWUgZGV0YWlscyBhYm91dCB0aGUgcGFja2FnZSAiCisiY3VycmVudGx5IHNlbGVjdGVkIGluIHRoZSB0b3AgaGFsZiBvZiB0aGUgc2NyZWVuLiAgVGhlIHR5cGUgb2YgZGV0YWlsIHRoYXQgIgorImlzIGRpc3BsYXllZCBjYW4gYmUgdmFyaWVkLiIKK21zZ3N0ciAiIgorIkRlciBBdXN3YWhsYmlsZHNjaGlybSBpc3Qgc3RhbmRhcmRtw6TDn2lnIGluIGVpbmUgb2JlcmUgdW5kIGVpbmUgdW50ZXJlIEjDpGxmdGUgIgorImdldGVpbHQuIERpZSBvYmVyZSBIw6RsZnQgemVpZ3QgZWluZSBMaXN0ZSB2b24gUGFrZXRlbi4gRWluIEN1cnNvcmJhbGtlbiAiCisid8OkaGx0IGluZGl2aWR1ZWxsZSBQYWtldGUgb2RlciwgZmFsbHMgenV0cmVmZmVuZCwgZWluZSBHcnVwcGUgdm9uIFBha2V0ZW4gIgorImR1cmNoIEF1c3dhaGwgZGVyIEdydXBwZW5rb3BmemVpbGUgYXVzLiBEaWUgdW50ZXJlIEjDpGxmdGUgZGVzIEJpbGRzY2hpcm1zICIKKyJ6ZWlndCBlaW5pZ2UgRGV0YWlscyDDvGJlciBkYXMgZGVyemVpdCBpbiBkZXIgb2JlcmVuIEjDpGxmdGUgZGVzIEJpbGRzY2hpcm1zICIKKyJhdXNnZXfDpGhsdGUgUGFrZXQgYW4uIERpZSBBcnQgZGVyIGFuZ2V6ZWlndGVuIERldGFpbHMga2FubiB2YXJpaWVydCB3ZXJkZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MjQxCittc2dpZCAiIgorIlByZXNzaW5nIHRoZSBCPCdJJz4ga2V5IHRvZ2dsZXMgYSBmdWxsLXNjcmVlbiBkaXNwbGF5IG9mIHRoZSBwYWNrYWdlcyBsaXN0LCAiCisiYW4gZW5sYXJnZWQgdmlldyBvZiB0aGUgcGFja2FnZSBkZXRhaWxzLCBvciB0aGUgZXF1YWxseSBzcGxpdCBzY3JlZW4uIgorbXNnc3RyICIiCisiRHLDvGNrZW4gZGVyIFRhc3RlIEI8wrtJwqs+IHNjaGFsdGV0IHp3aXNjaGVuIGRlciBWb2xsYmlsZGRhcnN0ZWxsdW5nIGRlciAiCisiUGFrZXRsaXN0ZSwgZWluZXIgdmVyZ3LDtsOfZXJ0ZW4gRGFyc3RlbGx1bmcgZGVyIFBha2V0ZGV0YWlscyB1bmQgZGVtICIKKyJnbGVpY2htw6TDn2lnIGdldGVpbHRlbiBCaWxkc2NoaXJtIHVtLiIKKworIy4gdHlwZTogU1MKKyM6IGRzZWxlY3QuMToyNDIKKyMsIG5vLXdyYXAKK21zZ2lkICJQYWNrYWdlIGRldGFpbHMgdmlldyIKK21zZ3N0ciAiUGFrZXQtRGV0YWlsYmV0cmFjaHR1bmciCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToyNTEKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiVGhlIHBhY2thZ2UgZGV0YWlscyB2aWV3IGJ5IGRlZmF1bHQgc2hvd3MgdGhlIGV4dGVuZGVkIHBhY2thZ2UgZGVzY3JpcHRpb25cbiIKKyJmb3IgdGhlIHBhY2thZ2UgdGhhdCBpcyBjdXJyZW50bHkgc2VsZWN0ZWQgaW4gdGhlIHBhY2thZ2VzIHN0YXR1cyBsaXN0LlxuIgorIlRoZSB0eXBlIG9mIGRldGFpbCBjYW4gYmUgdG9nZ2xlZCBieSBwcmVzc2luZyB0aGUgQjwnaSc+IGtleS4gVGhpc1xuIgorImFsdGVybmF0ZXMgYmV0d2VlbjpcbiIKKyIgLSB0aGUgZXh0ZW5kZWQgZGVzY3JpcHRpb25cbiIKKyIgLSB0aGUgY29udHJvbCBpbmZvcm1hdGlvbiBmb3IgdGhlIGluc3RhbGxlZCB2ZXJzaW9uXG4iCisiIC0gdGhlIGNvbnRyb2wgaW5mb3JtYXRpb24gZm9yIHRoZSBhdmFpbGFibGUgdmVyc2lvblxuIgorbXNnc3RyICIiCisiU3RhbmRhcmRtw6TDn2lnIHplaWd0IGRpZSBQYWtldC1EZXRhaWxiZXRyYWNodHVuZyBkaWUgYXVzZsO8aHJsaWNoZVxuIgorIlBha2V0YmVzY2hyZWlidW5nIGRlcyBkZXJ6ZWl0IGluIGRlciBQYWtldHN0YXR1c2xpc3RlIGF1c2dld8OkaGx0ZW4gUGFrZXRzLlxuIgorIkRpZSBBcnQgZGVyIERldGFpbHMga2FubiBkdXJjaCBEcsO8Y2tlbiBkZXIgVGFzdGUgQjzCu2nCqz4gdW1nZXNjaGFsdGV0IHdlcmRlbi5cbiIKKyJEaWVzZSB3ZWNoc2VsbiB6d2lzY2hlbjpcbiIKKyIgLSBkZXIgYXVzZsO8aHJsaWNoZW4gQmVzY2hyZWlidW5nXG4iCisiIC0gZGVyIFN0ZXVlcmluZm9ybWF0aW9uIGbDvHIgZGllIGluc3RhbGxpZXJ0ZSBWZXJzaW9uXG4iCisiIC0gZGVyIFN0ZXVlcmluZm9ybWF0aW9uIGbDvHIgZGllIHZlcmbDvGdiYXJlIFZlcnNpb25cbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjI1NQorbXNnaWQgIiIKKyJJbiBhIGRlcGVuZGVuY3kgcmVzb2x1dGlvbiBzY3JlZW4sIHRoZXJlIGlzIGFsc28gdGhlIHBvc3NpYmlsaXR5IG9mIHZpZXdpbmcgIgorInRoZSBzcGVjaWZpYyB1bnJlc29sdmVkIGRlcGVuZHMgb3IgY29uZmxpY3RzIHJlbGF0ZWQgdG8gdGhlIHBhY2thZ2UgYW5kICIKKyJjYXVzaW5nIGl0IHRvIGJlIGxpc3RlZC4iCittc2dzdHIgIiIKKyJJbSBCaWxkc2NoaXJtIGRlciBBYmjDpG5naWdrZWl0c2F1ZmzDtnN1bmcgZ2lidCBlcyBhdWNoIGRpZSBNw7ZnbGljaGtlaXQsIGRpZSAiCisic3BlemlmaXppZXJ0ZW4gbmljaHQgYXVmZ2Vsw7ZzdGVuIEFiaMOkbmdpZ2tlaXRlbiBvZGVyIEtvbmZsaWt0ZSBtaXQgQmV6dWcgenUgIgorImRlbSBQYWtldCBhbnp1c2NoYXVlbiB1bmQgZGVyZW4gQXVmbGlzdHVuZyB6dSBlcnJlaWNoZW4uIgorCisjLiB0eXBlOiBTUworIzogZHNlbGVjdC4xOjI1NgorIywgbm8td3JhcAorbXNnaWQgIlBhY2thZ2VzIHN0YXR1cyBsaXN0IgorbXNnc3RyICJQYWtldHN0YXR1c2xpc3RlIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MjYxCittc2dpZCAiIgorIlRoZSBtYWluIHNlbGVjdCBzY3JlZW4gZGlzcGxheXMgYSBsaXN0IG9mIGFsbCBwYWNrYWdlcyBrbm93biB0byB0aGUgZGViaWFuICIKKyJwYWNrYWdlIG1hbmFnZW1lbnQgc3lzdGVtLiBUaGlzIGluY2x1ZGVzIHBhY2thZ2VzIGluc3RhbGxlZCBvbiB0aGUgc3lzdGVtICIKKyJhbmQgcGFja2FnZXMga25vd24gZnJvbSB0aGUgYXZhaWxhYmxlIHBhY2thZ2VzIGRhdGFiYXNlLiIKK21zZ3N0ciAiIgorIkRlciBIYXVwdGF1c3dhaGxiaWxkc2NoaXJtIHplaWd0IGVpbmUgTGlzdGUgYWxsZXIgUGFrZXRlLCBkaWUgZGVtIERlYmlhbi0iCisiUGFrZXR2ZXJ3YWx0dW5nc3N5c3RlbSBiZWthbm50IHNpbmQuIERpZXMgYmVpbmhhbHRldCBhbGxlIGF1ZiBkZW0gU3lzdGVtICIKKyJpbnN0YWxsaWVydGVuIFBha2V0ZSB1bmQgUGFrZXRlLCBkaWUgYXVzIGRlbiB2ZXJmw7xnYmFyZW4gUGFrZXRkYXRlbmJhbmtlbiAiCisiYmVrYW5udCBzaW5kLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjI2OQorbXNnaWQgIiIKKyJGb3IgZXZlcnkgcGFja2FnZSwgdGhlIGxpc3Qgc2hvd3MgdGhlIHBhY2thZ2UncyBzdGF0dXMsIHByaW9yaXR5LCBzZWN0aW9uLCAiCisiaW5zdGFsbGVkIGFuZCBhdmFpbGFibGUgdmVyc2lvbnMsIHRoZSBwYWNrYWdlIG5hbWUgYW5kIGl0cyBzaG9ydCAiCisiZGVzY3JpcHRpb24sIGFsbCBpbiBvbmUgbGluZS4gQnkgcHJlc3NpbmcgdGhlIEI8J1YnPiBrZXksIHRoZSBkaXNwbGF5IG9mIHRoZSAiCisiaW5zdGFsbGVkIGFuZCBhdmFpbGFibGUgdmVyc2lvbiBjYW4gYmUgdG9nZ2xlZCBiZXR3ZWVuIG9uIGFuIG9mZi4gQnkgIgorInByZXNzaW5nIHRoZSBCPCd2Jz4ga2V5LCB0aGUgcGFja2FnZSBzdGF0dXMgZGlzcGxheSBpcyB0b2dnbGVkIGJldHdlZW4gIgorInZlcmJvc2UgYW5kIHNob3J0aGFuZC4gIFNob3J0aGFuZCBkaXNwbGF5IGlzIHRoZSBkZWZhdWx0LiIKK21zZ3N0ciAiIgorIkbDvHIgamVkZXMgUGFrZXQgemVpZ3QgZGllIExpc3RlIGRlbiBQYWtldHN0YXR1cywgZGllIFByaW9yaXTDpHQsIGRlbiBCZXJlaWNoLCAiCisiaW5zdGFsbGllcnRlIHVuZCB2ZXJmw7xnYmFyZSBWZXJzaW9uZW4sIGRlbiBOYW1lbiB1bmQgZGllIEt1cnpiZXNjaHJlaWJ1bmcgIgorImRlcyBQYWtldGVzLCBhbGxlcyBpbiBlaW5lciBaZWlsZS4gRHVyY2ggRHLDvGNrZW4gZGVyIFRhc3RlIEI8wrtWwqs+IGthbm4gZGllICIKKyJBbnplaWdlIGRlciBpbnN0YWxsaWVydGVuIHVuZCB2ZXJmw7xnYmFyZW4gVmVyc2lvbiB6d2lzY2hlbiBlaW4gdW5kIGF1cyAiCisidW1nZXNjaGFsdGV0IHdlcmRlbi4gRHVyY2ggRHLDvGNrZW4gZGVyIFRhc3RlIEI8wrt2wqs+IHdpcmQgZGllIEFuemVpZ2UgZGVzICIKKyJQYWtldHN0YXR1cyB6d2lzY2hlbiBhdXNmw7xocmxpY2ggdW5kIHZlcmvDvHJ6dCB1bWdlc2NoYWx0ZXQuIERpZSB2ZXJrw7xyenRlICIKKyJBbnplaWdlIGlzdCB2b3JlaW5nZXN0ZWxsdC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToyNzUKK21zZ2lkICIiCisiVGhlIHNob3J0aGFuZCBzdGF0dXMgaW5kaWNhdGlvbiBjb25zaXN0cyBvZiBmb3VyIHBhcnRzOiBhbiBlcnJvciBmbGFnLCB3aGljaCAiCisic2hvdWxkIG5vcm1hbGx5IGJlIGNsZWFyLCB0aGUgY3VycmVudCBzdGF0dXMsIHRoZSBsYXN0IHNlbGVjdGlvbiBzdGF0ZSBhbmQgIgorInRoZSBjdXJyZW50IHNlbGVjdGlvbiBzdGF0ZS4gIFRoZSBmaXJzdCB0d28gcmVsYXRlIHRvIHRoZSBhY3R1YWwgc3RhdGUgb2YgIgorInRoZSBwYWNrYWdlLCB0aGUgc2Vjb25kIHBhaXIgYXJlIGFib3V0IHRoZSBzZWxlY3Rpb25zIHNldCBieSB0aGUgdXNlci4iCittc2dzdHIgIiIKKyJEaWUgS3VyenN0YXR1c2FuZ2FiZSBiZXN0ZWh0IGF1cyB2aWVyIFRlaWxlbjogZWluZXIgRmVobGVybWFya2llcnVuZywgZGllICIKKyJub3JtYWxlcndlaXNlIGxlZXIgc2VpbiBzb2xsdGUsIGRlbSBha3R1ZWxsZW4gU3RhdHVzLCBkZW0gbGV0enRlbiAiCisiQXVzd2FobHN0YXR1cyB1bmQgZGVtIGFrdHVlbGxlbiBBdXN3YWhsc3RhdHVzLiBEaWUgZXJzdGVuIHp3ZWkgYmV6aWVoZW4gc2ljaCAiCisiYXVmIGRlbiBkZXJ6ZWl0aWdlbiBTdGF0dXMgZGVzIFBha2V0cywgZGFzIHp3ZWl0ZSBQYWFyIGJlaGFuZGVsbiBkaWUgdm9tICIKKyJCZW51dHplciBnZXNldHp0ZSBBdXN3YWhsLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjI5MworIywgbm8td3JhcAorbXNnaWQgIiIKKyJUaGVzZSBhcmUgdGhlIG1lYW5pbmdzIG9mIHRoZSBzaG9ydGhhbmQgcGFja2FnZSBzdGF0dXMgaW5kaWNhdG9yIGNvZGVzOlxuIgorIiBFcnJvciBmbGFnOlxuIgorIiAgSTxlbXB0eT4gICBubyBlcnJvclxuIgorIiAgQjxSPiAgICAgICBzZXJpb3VzIGVycm9yLCBuZWVkcyByZWluc3RhbGxhdGlvbjtcbiIKKyIgSW5zdGFsbGVkIHN0YXRlOlxuIgorIiAgSTxlbXB0eT4gICBub3QgaW5zdGFsbGVkO1xuIgorIiAgQjwqPiAgICAgICBmdWxseSBpbnN0YWxsZWQgYW5kIGNvbmZpZ3VyZWQ7XG4iCisiICBCPC0+ICAgICAgIG5vdCBpbnN0YWxsZWQgYnV0IHNvbWUgY29uZmlnIGZpbGVzIG1heSByZW1haW47XG4iCisiICBCPFU+ICAgICAgIHVucGFja2VkIGJ1dCBub3QgeWV0IGNvbmZpZ3VyZWQ7XG4iCisiICBCPEM+ICAgICAgIGhhbGYtY29uZmlndXJlZCAoYW4gZXJyb3IgaGFwcGVuZWQpO1xuIgorIiAgQjxJPiAgICAgICBoYWxmLWluc3RhbGxlZCAoYW4gZXJyb3IgaGFwcGVuZWQpLlxuIgorIiBDdXJyZW50IGFuZCByZXF1ZXN0ZWQgc2VsZWN0aW9uczpcbiIKKyIgIEI8Kj4gICAgICAgbWFya2VkIGZvciBpbnN0YWxsYXRpb24gb3IgdXBncmFkZTtcbiIKKyIgIEI8LT4gICAgICAgbWFya2VkIGZvciByZW1vdmFsLCBjb25maWd1cmF0aW9uIGZpbGVzIHJlbWFpbjtcbiIKKyIgIEI8PT4gICAgICAgb24gaG9sZDogcGFja2FnZSB3aWxsIG5vdCBiZSBwcm9jZXNzZWQgYXQgYWxsO1xuIgorIiAgQjxfPiAgICAgICBtYXJrZWQgZm9yIHB1cmdlLCBhbHNvIHJlbW92ZSBjb25maWd1cmF0aW9uO1xuIgorIiAgQjxuPiAgICAgICBwYWNrYWdlIGlzIG5ldyBhbmQgaGFzIHlldCB0byBiZSBtYXJrZWQuXG4iCittc2dzdHIgIiIKKyJEaWVzIHNpbmQgZGllIEJlZGV1dHVuZ2VuIGRlciBrdXJ6ZW4gUGFrZXRzdGF0dXMtQW56ZWlnZS1Db2RlczpcbiIKKyIgRmVobGVybWFya2llcnVuZzpcbiIKKyIgIEk8bGVlcj4gICAga2VpbiBGZWhsZXJcbiIKKyIgIEI8Uj4gICAgICAgc2Nod2Vyd2llZ2VuZGVyIEZlaGxlciwgTmV1aW5zdGFsbGF0aW9uIG5vdHdlbmRpZztcbiIKKyIgSW5zdGFsbGllcnRlciBTdGF0dXM6XG4iCisiICBJPGxlZXI+ICAgIG5pY2h0IGluc3RhbGxpZXJ0O1xuIgorIiAgQjwqPiAgICAgICB2b2xsc3TDpG5kaWcgaW5zdGFsbGllcnQgdW5kIGtvbmZpZ3VyaWVydDtcbiIKKyIgIEI8LT4gICAgICAgbmljaHQgaW5zdGFsbGllcnQsIGFiZXIgZWluaWdlIEtvbmZpZ3VyYXRpb25zZGF0ZWllbiBrw7ZubnRlbiBibGVpYmVuO1xuIgorIiAgQjxVPiAgICAgICBlbnRwYWNrdCwgYWJlciBub2NoIG5pY2h0IGtvbmZpZ3VyaWVydDtcbiIKKyIgIEI8Qz4gICAgICAgaGFsYiBrb25maWd1cmllcnQgKGVpbiBGZWhsZXIgaXN0IGF1ZmdldHJldGVuKTtcbiIKKyIgIEI8ST4gICAgICAgaGFsYiBpbnN0YWxsaWVydCAoZWluIEZlaGxlciBpc3QgYXVmZ2V0cmV0ZW4pLlxuIgorIiBBa3R1ZWxsZSB1bmQgYW5nZWZvcmRlcnRlIEF1c3dhaGxlbjpcbiIKKyIgIEI8Kj4gICAgICAgbWFya2llcnQgenVyIEluc3RhbGxhdGlvbiBvZGVyIFVwZ3JhZGU7XG4iCisiICBCPC0+ICAgICAgIG1hcmtpZXJ0IHp1ciBFbnRmZXJudW5nLCBLb25maWd1cmF0aW9uc2RhdGVpZW4gYmxlaWJlbjtcbiIKKyIgIEI8PT4gICAgICAgYXVmIMK7aGFsdGVuwqs6IFBha2V0IHdpcmQgw7xiZXJoYXVwdCBuaWNodCB2ZXJhcmJlaXRldCB3ZXJkZW47XG4iCisiICBCPF8+ICAgICAgIG1hcmtpZXJ0IHp1bSB2b2xsc3TDpG5kaWdlbiBMw7ZzY2hlbiwgYXVjaCBkZXIgS29uZmlndXJhdGlvbjtcbiIKKyIgIEI8bj4gICAgICAgUGFrZXQgaXN0IG5ldSB1bmQgbXVzcyBlcnN0IG5vY2ggbWFya2llcnQgd2VyZGVuLlxuIgorCisjLiB0eXBlOiBTUworIzogZHNlbGVjdC4xOjI5NAorIywgbm8td3JhcAorbXNnaWQgIkN1cnNvciBhbmQgc2NyZWVuIG1vdmVtZW50IgorbXNnc3RyICJDdXJzb3ItIHVuZCBCaWxkc2NoaXJtLUJld2VndW5nIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6Mjk5Cittc2dpZCAiIgorIlRoZSBwYWNrYWdlIHNlbGVjdGlvbiBsaXN0IGFuZCB0aGUgZGVwZW5kZW5jeSBjb25mbGljdCByZXNvbHV0aW9uIHNjcmVlbnMgIgorImNhbiBiZSBuYXZpZ2F0ZWQgdXNpbmcgbW90aW9uIGNvbW1hbmRzIG1hcHBlZCB0byB0aGUgZm9sbG93aW5nIGtleXM6IgorbXNnc3RyICIiCisiRGllIFBha2V0YXVzd2FobGxpc3RlbiB1bmQgZGllIEFiaMOkbmdpZ2tlaXRza29uZmxpa3RlLUzDtnN1bmdzYmlsZHNjaGlybWUgIgorImvDtm5uZW4gbWl0IGRlbiBCZXdlZ3VuZ3NiZWZlaGxlbiBuYXZpZ2llcnQgd2VyZGVuLCBkaWUgYXVmIGRpZSBmb2xnZW5kZW4gIgorIlRhc3RlbiBhYmdlYmlsZGV0IHNpbmQ6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MzE2CisjLCBuby13cmFwCittc2dpZCAiIgorIiAgQjxwLCBVcCwgaz4gICAgICAgICAgIG1vdmUgY3Vyc29yIGJhciB1cFxuIgorIiAgQjxuLCBEb3duLCBqPiAgICAgICAgIG1vdmUgY3Vyc29yIGJhciBkb3duXG4iCisiICBCPFAsIFBndXAsIEJhY2tzcGFjZT4gc2Nyb2xsIGxpc3QgMSBwYWdlIHVwXG4iCisiICBCPE4sIFBnZG4sIFNwYWNlPiAgICAgc2Nyb2xsIGxpc3QgMSBwYWdlIGRvd25cbiIKKyIgIEI8XnA+ICAgICAgICAgICAgICAgICBzY3JvbGwgbGlzdCAxIGxpbmUgdXBcbiIKKyIgIEI8Xm4+ICAgICAgICAgICAgICAgICBzY3JvbGwgbGlzdCAxIGxpbmUgZG93blxuIgorIiAgQjx0LCBIb21lPiAgICAgICAgICAgIGp1bXAgdG8gdG9wIG9mIGxpc3RcbiIKKyIgIEI8ZSwgRW5kPiAgICAgICAgICAgICBqdW1wIHRvIGVuZCBvZiBsaXN0XG4iCisiICBCPHU+ICAgICAgICAgICAgICAgICAgc2Nyb2xsIGluZm8gMSBwYWdlIHVwXG4iCisiICBCPGQ+ICAgICAgICAgICAgICAgICAgc2Nyb2xsIGluZm8gMSBwYWdlIGRvd25cbiIKKyIgIEI8XnU+ICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyAxIGxpbmUgdXBcbiIKKyIgIEI8XmQ+ICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyAxIGxpbmUgZG93blxuIgorIiAgQjxCLCBMZWZ0LWFycm93PiAgICAgIHBhbiBkaXNwbGF5IDEvMyBzY3JlZW4gbGVmdFxuIgorIiAgQjxGLCBSaWdodC1hcnJvdz4gICAgIHBhbiBkaXNwbGF5IDEvMyBzY3JlZW4gcmlnaHRcbiIKKyIgIEI8XmI+ICAgICAgICAgICAgICAgICBwYW4gZGlzcGxheSAxIGNoYXJhY3RlciBsZWZ0XG4iCisiICBCPF5mPiAgICAgICAgICAgICAgICAgcGFuIGRpc3BsYXkgMSBjaGFyYWN0ZXIgcmlnaHRcbiIKK21zZ3N0ciAiIgorIiAgQjxwLCBIb2NoLCBrPiAgICAgICAgICAgICAgICBiZXdlZ2UgQ3Vyc29yLUJhbGtlbiBob2NoXG4iCisiICBCPG4sIFJ1bnRlciwgaj4gICAgICAgICAgICAgIGJld2VnZSBDdXJzb3ItQmFsa2VuIHJ1bnRlclxuIgorIiAgQjxQLCBCaWxkIGhvY2gsIFLDvGNrc2Nocml0dD4gc2Nyb2xsZSBMaXN0ZSBlaW5lIFNlaXRlIGhvY2hcbiIKKyIgIEI8TiwgQmlsZCBydW50ZXIsIExlZXJ0YXN0ZT4gc2Nyb2xsZSBMaXN0ZSBlaW5lIFNlaXRlIHJ1bnRlclxuIgorIiAgQjxecD4gICAgICAgICAgICAgICAgICAgICAgICBzY3JvbGxlIExpc3RlIGVpbmUgWmVpbGUgaG9jaFxuIgorIiAgQjxebj4gICAgICAgICAgICAgICAgICAgICAgICBzY3JvbGxlIExpc3RlIGVpbmUgWmVpbGUgcnVudGVyXG4iCisiICBCPHQsIFBvcyAxPiAgICAgICAgICAgICAgICAgIHNwcmluZ2UgenVtIExpc3Rlbi1BbmZhbmdcbiIKKyIgIEI8ZSwgRW5kZT4gICAgICAgICAgICAgICAgICAgc3ByaW5nZSB6dW0gTGlzdGVuLUVuZGVcbiIKKyIgIEI8dT4gICAgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsZSBJbmZvIGVpbmUgU2VpdGUgaG9jaFxuIgorIiAgQjxkPiAgICAgICAgICAgICAgICAgICAgICAgICBzY3JvbGxlIEluZm8gZWluZSBTZWl0ZSBydW50ZXJcbiIKKyIgIEI8XnU+ICAgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsZSBJbmZvIGVpbmUgWmVpbGUgaG9jaFxuIgorIiAgQjxeZD4gICAgICAgICAgICAgICAgICAgICAgICBzY3JvbGxlIEluZm8gZWluZSBaZWlsZSBydW50ZXJcbiIKKyIgIEI8QiwgTGlua2VyIFBmZWlsPiAgICAgICAgICAgYmV3ZWdlIEJpbGRzY2hpcm0gMS8zLUJpbGRzY2hpcm1icmVpdGUgbGlua3NcbiIKKyIgIEI8RiwgUmVjaHRlciBQZmVpbD4gICAgICAgICAgYmV3ZWdlIEJpbGRzY2hpcm0gMS8zLUJpbGRzY2hpcm1icmVpdGUgcmVjaHRzXG4iCisiICBCPF5iPiAgICAgICAgICAgICAgICAgICAgICAgIGJld2VnZSBCaWxkc2NoaXJtIGVpbiBaZWljaGVuIG5hY2ggbGlua3NcbiIKKyIgIEI8XmY+ICAgICAgICAgICAgICAgICAgICAgICAgYmV3ZWdlIEJpbGRzY2hpcm0gZWluIFplaWNoZW4gbmFjaCByZWNodHNcbiIKKworIy4gdHlwZTogU1MKKyM6IGRzZWxlY3QuMTozMTcKKyMsIG5vLXdyYXAKK21zZ2lkICJTZWFyY2hpbmcgYW5kIHNvcnRpbmciCittc2dzdHIgIlN1Y2hlbiB1bmQgU29ydGllcmVuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MzMxCittc2dpZCAiIgorIlRoZSBsaXN0IG9mIHBhY2thZ2VzIGNhbiBiZSBzZWFyY2hlZCBieSBwYWNrYWdlIG5hbWUuIFRoaXMgaXMgZG9uZSBieSAiCisicHJlc3NpbmcgQjwnLyc+LCBhbmQgdHlwaW5nIGEgc2ltcGxlIHNlYXJjaCBzdHJpbmcuIFRoZSBzdHJpbmcgaXMgIgorImludGVycHJldGVkIGFzIGEgQjxyZWdleD4oNykgIHJlZ3VsYXIgZXhwcmVzc2lvbi4gIElmIHlvdSBhZGQgQjwnL2QnPiB0byB0aGUgIgorInNlYXJjaCBleHByZXNzaW9uLCBkc2VsZWN0IHdpbGwgYWxzbyBzZWFyY2ggaW4gZGVzY3JpcHRpb25zLiBJZiB5b3UgYWRkIEI8Jy8iCisiaSc+IHRoZSBzZWFyY2ggd2lsbCBiZSBjYXNlIGluc2Vuc2l0aXZlLiAgWW91IG1heSBjb21iaW5lIHRoZXNlIHR3byBzdWZmaXhlcyAiCisibGlrZSB0aGlzOiBCPCcvaWQnPi4gIFJlcGVhdGVkIHNlYXJjaGluZyBpcyBhY2NvbXBsaXNoZWQgYnkgcmVwZWF0ZWRseSAiCisicHJlc3NpbmcgdGhlIEI8J24nPiBvciBCPCdcXGUnPiBrZXlzLCB1bnRpbCB0aGUgd2FudGVkIHBhY2thZ2UgaXMgZm91bmQuICBJZiAiCisidGhlIHNlYXJjaCByZWFjaGVzIHRoZSBib3R0b20gb2YgdGhlIGxpc3QsIGl0IHdyYXBzIHRvIHRoZSB0b3AgYW5kIGNvbnRpbnVlcyAiCisic2VhcmNoaW5nIGZyb20gdGhlcmUuIgorbXNnc3RyICIiCisiRGllIExpc3RlIGRlciBQYWtldGUga2FubiBuYWNoIFBha2V0bmFtZW4gZHVyY2hzdWNodCB3ZXJkZW4uIERpZXMgZXJmb2xndCAiCisiZHVyY2ggRHLDvGNrZW4gdm9uIEI8wrsvwqs+IHVuZCBkZXIgRWluZ2FiZSBlaW5lciBlaW5mYWNoZW4gU3VjaHplaWNoZW5rZXR0ZS4gIgorIkRpZSBaZWljaGVua2V0dGUgd2lyZCBhbHMgcmVndWzDpHJlciBBdXNkcnVjayBnZW3DpMOfIEI8cmVnZXg+KDcpICIKKyJpbnRlcnByZXRpZXJ0LiBGYWxscyBTaWUgenUgZGVtIFN1Y2hhdXNkcnVjayBCPMK7L2TCqz4gaGluenVmw7xnZW4gd2lyZCBEc2VsZWN0ICIKKyJhdWNoIGluIEJlc2NocmVpYnVuZ2VuIHN1Y2hlbi4gRmFsbHMgU2llIEI8wrsvacKrPiBoaW56dWbDvGdlbiwgd2lyZCBHcm/Dny0vIgorIktsZWluc2NocmVpYnVuZyBpZ25vcmllcnQuIFNpZSBrw7ZubmVuIGRpZSBTdWZmaXhlIHdpZSBmb2xndCBrb21iaW5pZXJlbjogQjzCuy8iCisiaWTCqz4uIFdpZWRlcmhvbHRlcyBTdWNoZW4gd2lyZCBkdXJjaCBEcsO8Y2tlbiB2b24gQjzCu27Cqz4gb2RlciBCPMK7XFxlwqs+ICIKKyJlcnJlaWNodCwgYmlzIGRhcyBnZXfDvG5zY2h0ZSBQYWtldCBnZWZ1bmRlbiB3dXJkZS4gRmFsbHMgZGllIFN1Y2hlIGRhcyBFbmRlICIKKyJkZXIgTGlzdGUgZXJyZWljaHQsIHNwcmluZ3Qgc2llIHp1bSBBbmZhbmcgdW5kIGbDpGhydCB2b24gZG9ydCBmb3J0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjMzOAorIywgbm8td3JhcAorbXNnaWQgIiIKKyJUaGUgbGlzdCBzb3J0IG9yZGVyIGNhbiBiZSB2YXJpZWQgYnkgcHJlc3NpbmdcbiIKKyJ0aGUgQjwnbyc+IGFuZCBCPCdPJz4ga2V5cyByZXBlYXRlZGx5LlxuIgorIlRoZSBmb2xsb3dpbmcgbmluZSBzb3J0IG9yZGVyaW5ncyBjYW4gYmUgc2VsZWN0ZWQ6XG4iCisiIGFscGhhYmV0ICAgICAgICAgIGF2YWlsYWJsZSAgICAgICAgICAgc3RhdHVzXG4iCisiIHByaW9yaXR5K3NlY3Rpb24gIGF2YWlsYWJsZStwcmlvcml0eSAgc3RhdHVzK3ByaW9yaXR5XG4iCisiIHNlY3Rpb24rcHJpb3JpdHkgIGF2YWlsYWJsZStzZWN0aW9uICAgc3RhdHVzK3NlY3Rpb25cbiIKK21zZ3N0ciAiIgorIkRpZSBMaXN0LVNvcnRpZXJyZWloZW5mb2xnZSBrYW5uIGR1cmNoIHdpZWRlcmhvbHRlc1xuIgorIkRyw7xja2VuIGRlciBUYXN0ZW4gQjzCu2/Cqz4gYW5kIEI8wrtPwqs+IHZlcsOkbmRlcnQgd2VyZGVuLlxuIgorIkRpZSBmb2xnZW5kZW4gU29ydGllcnJlaWhlbmZvbGdlbiBrw7ZubmVuIGF1c2dld8OkaGx0IHdlcmRlbjpcbiIKKyIgYWxwaGFiZXRpc2NoICAgICAgdmVyZsO8Z2JhciAgICAgICAgICAgU3RhdHVzXG4iCisiIFByaW9yaXTDpHQrQmVyZWljaCB2ZXJmw7xnYmFyK1ByaW9yaXTDpHQgU3RhdHVzK1ByaW9yaXTDpHRcbiIKKyIgQmVyZWljaCtQcmlvcml0w6R0IHZlcmbDvGdiYXIrQmVyZWljaCAgIFN0YXR1cytCZXJlaWNoXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTozNDEKK21zZ2lkICIiCisiV2hlcmUgbm90IGxpc3RlZCBhYm92ZSBleHBsaWNpdGx5LCBhbHBoYWJldGljIG9yZGVyIGlzIHVzZWQgYXMgdGhlIGZpbmFsICIKKyJzdWJvcmRlcmluZyBzb3J0IGtleS4iCittc2dzdHIgIiIKKyJXbyBkaWVzIG9iZW4gbmljaHQgZXhwbGl6aXQgYXVmZ2Vmw7xocnQgaXN0LCB3aXJkIGFscGhhYmV0aXNjaGUgUmVpaGVuZm9sZ2UgIgorImFscyBhYnNjaGxpZcOfZW5kZXIgVW50ZXJvcmRudW5ncy1Tb3J0aWVyc2NobMO8c3NlbCB2ZXJ3ZW5kZXQuIgorCisjLiB0eXBlOiBTUworIzogZHNlbGVjdC4xOjM0MgorIywgbm8td3JhcAorbXNnaWQgIkFsdGVyaW5nIHNlbGVjdGlvbnMiCittc2dzdHIgIkF1c3dhaGxlbiDDpG5kZXJuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MzUxCisjLCBuby13cmFwCittc2dpZCAiIgorIlRoZSByZXF1ZXN0ZWQgc2VsZWN0aW9uIHN0YXRlIG9mIGluZGl2aWR1YWwgcGFja2FnZXMgbWF5IGJlXG4iCisiYWx0ZXJlZCB3aXRoIHRoZSBmb2xsb3dpbmcgY29tbWFuZHM6XG4iCisiICBCPCssIEluc2VydD4gICAgaW5zdGFsbCBvciB1cGdyYWRlXG4iCisiICBCPD0sIEg+ICAgICAgICAgaG9sZCBpbiBwcmVzZW50IHN0YXRlIGFuZCB2ZXJzaW9uXG4iCisiICBCPDosIEc+ICAgICAgICAgdW5ob2xkOiB1cGdyYWRlIG9yIGxlYXZlIHVuaW5zdGFsbGVkXG4iCisiICBCPC0sIERlbGV0ZT4gICAgcmVtb3ZlLCBidXQgbGVhdmUgY29uZmlndXJhdGlvblxuIgorIiAgQjxfPiAgICAgICAgICAgIHJlbW92ZSAmIHB1cmdlIGNvbmZpZ3VyYXRpb25cbiIKK21zZ3N0ciAiIgorIkRlciBhbmdlZm9yZGVydGUgQXVzd2FobHN0YXR1cyBpbmRpdmlkdWVsbGVyIFBha2V0ZSBrYW5uIG1pdFxuIgorImRlbiBmb2xnZW5kZW4gQmVmZWhsZW4gZ2XDpG5kZXJ0IHdlcmRlbjpcbiIKKyIgIEI8KywgRWluZmc+ICAgICBJbnN0YWxsaWVyZW4gb2RlciBVcGdyYWRlIGR1cmNoZsO8aHJlblxuIgorIiAgQjw9LCBIPiAgICAgICAgIGdlZ2Vud8OkcnRpZ2VuIFN0YXR1cyB1bmQgVmVyc2lvbiBiZWliZWhhbHRlblxuIgorIiAgQjw6LCBHPiAgICAgICAgIExvc2xhc3NlbjogVXBncmFkIGR1cmNoZsO8aHJlbiBvZGVyIHVuaW5zdGFsbGllcnQgbGFzc2VuXG4iCisiICBCPC0sIEVudGY+ICAgICAgRW50ZmVybmVuLCBhYmVyIEtvbmZpZ3VyYXRpb24gYmVoYWx0ZW5cbiIKKyIgIEI8Xz4gICAgICAgICAgICBFbnRmZXJuZW4gdW5kIEtvbmZpZ3VyYXRpb24gbMO2c2NoZW5cbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjM1NQorbXNnaWQgIiIKKyJXaGVuIHRoZSBjaGFuZ2UgcmVxdWVzdCByZXN1bHRzIGluIG9uZSBvciBtb3JlIHVuc2F0aXNmaWVkIGRlcGVuZHMgb3IgIgorImNvbmZsaWN0cywgQjxkc2VsZWN0PiBwcm9tcHRzIHRoZSB1c2VyIHdpdGggYSBkZXBlbmRlbmN5IHJlc29sdXRpb24gc2NyZWVuLiAiCisiVGhpcyB3aWxsIGJlIGZ1cnRoZXIgZXhwbGFpbmVkIGJlbG93LiIKK21zZ3N0ciAiIgorIldlbm4gc2ljaCBhdXMgZGVyIMOEbmRlcnVuZ3NhbmZvcmRlcnVuZyBlaW5lIG9kZXIgbWVocmVyZSB1bmVyZsO8bGx0ZSAiCisiQWJow6RuZ2lna2VpdGVuIG9kZXIgS29uZmxpa3RlIGVyZ2ViZW4sIGJpZXRldCBCPGRzZWxlY3Q+IGRlbSBCZW51dHplciBlaW5lbiAiCisiQmlsZHNjaGlybSB6dSBBYmjDpG5naWdrZWl0c2F1ZmzDtnN1bmcgYW4uIERpZXNlciB3aXJkIHdlaXRlciB1bnRlbiAiCisiZGV0YWlsbGllcnRlciBiZXNjaHJpZWJlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTozNjAKK21zZ2lkICIiCisiSXQgaXMgYWxzbyBwb3NzaWJsZSB0byBhcHBseSB0aGVzZSBjb21tYW5kcyB0byBncm91cHMgb2YgcGFja2FnZSBzZWxlY3Rpb25zLCAiCisiYnkgcG9pbnRpbmcgdGhlIGN1cnNvciBiYXIgb250byBhIGdyb3VwIGhlYWRlci4gVGhlIGV4YWN0IGdyb3VwaW5nIG9mICIKKyJwYWNrYWdlcyBpcyBkZXBlbmRlbnQgb24gdGhlIGN1cnJlbnQgbGlzdCBvcmRlcmluZyBzZXR0aW5ncy4iCittc2dzdHIgIiIKKyJFcyBpc3QgYXVjaCBtw7ZnbGljaCwgZGllIEJlZmVobGUgYXVmIEdydXBwZW4gdm9uIFBha2V0YXVzd2FobGVuIGFuenV3ZW5kZW4sICIKKyJpbmRlbSBtaXQgZGVtIEN1cnNvci1CYWxrZW4gZGllIEdydXBwZW4tw5xiZXJzY2hyaWZ0IGF1c2dld8OkaGx0IHdpcmQuIERpZSAiCisiZ2VuYXVlIEdydXBwaWVydW5nIGRlciBQYWtldGUgaMOkbmd0IHZvbiBkZW4gRWluc3RlbGx1bmdlbiBkZXIgYWt0dWVsbGVuICIKKyJMaXN0ZW5zb3J0aWVydW5nIGFiLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjM2NgorbXNnaWQgIiIKKyJQcm9wZXIgY2FyZSBzaG91bGQgYmUgdGFrZW4gd2hlbiBhbHRlcmluZyBsYXJnZSBncm91cHMgb2Ygc2VsZWN0aW9ucywgIgorImJlY2F1c2UgdGhpcyBjYW4gaW5zdGFudGFuZW91c2x5IGNyZWF0ZSBsYXJnZSBudW1iZXJzIG9mIHVucmVzb2x2ZWQgZGVwZW5kcyAiCisib3IgY29uZmxpY3RzLCBhbGwgb2Ygd2hpY2ggd2lsbCBiZSBsaXN0ZWQgaW4gb25lIGRlcGVuZGVuY3kgcmVzb2x1dGlvbiAiCisic2NyZWVuLCBtYWtpbmcgdGhlbSB2ZXJ5IGhhcmQgdG8gaGFuZGxlLiBJbiBwcmFjdGljZSwgb25seSBob2xkIGFuZCB1bmhvbGQgIgorIm9wZXJhdGlvbnMgYXJlIHVzZWZ1bCB3aGVuIGFwcGxpZWQgdG8gZ3JvdXBzLiIKK21zZ3N0ciAiIgorIlZlcsOkbmRlcnVuZ2VuIHZvbiBncm/Dn2VuIEdydXBwZW4gdm9uIEF1c3dhaGxlbiBzb2xsdGVuIHZvcnNpY2h0aWcgIgorImR1cmNoZ2Vmw7xocnQgd2VyZGVuLCBkYSBkaWVzIHNvZm9ydCB6dSBlaW5lciBncm/Dn2VuIEFuemFobCBhbiBuaWNodC0iCisiYXVmZ2Vsw7ZzdGVuIEFiaMOkbmdpZ2tlaXRlbiBvZGVyIEtvbmZsaWt0ZW4gZsO8aHJlbiBrYW5uLCBkaWUgZGFubiBhbGxlIGltICIKKyJCaWxkc2NoaXJtIGRlciBBYmjDpG5naWdrZWl0c2F1ZmzDtnN1bmcgZGFyZ2VzdGVsbHQgd2VyZGVuLiBEaWVzIGthbm4gZGFubiAiCisic2Nod2VyIHp1IGhhbmRoYWJlbiBzZWluLiBJbiBkZXIgUHJheGlzIHNpbmQgbnVyIGRpZSBPcGVyYXRpb25lbiBIYWx0ZW4gdW5kICIKKyJMb3NsYXNzZW4gbsO8dHpsaWNoLCB3ZW5uIHNpZSBhdWYgR3J1cHBlbiBhbmdld2FuZHQgd2VyZGVuLiIKKworIy4gdHlwZTogU1MKKyM6IGRzZWxlY3QuMTozNjcKKyMsIG5vLXdyYXAKK21zZ2lkICJSZXNvbHZpbmcgZGVwZW5kcyBhbmQgY29uZmxpY3RzIgorbXNnc3RyICJBYmjDpG5naWdrZWl0ZW4gdW5kIEtvbmZsaWt0ZSBhdWZsw7ZzZW4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTozNzIKK21zZ2lkICIiCisiV2hlbiB0aGUgY2hhbmdlIHJlcXVlc3QgcmVzdWx0cyBpbiBvbmUgb3IgbW9yZSB1bnNhdGlzZmllZCBkZXBlbmRzIG9yICIKKyJjb25mbGljdHMsIEI8ZHNlbGVjdD4gcHJvbXB0cyB0aGUgdXNlciB3aXRoIGEgZGVwZW5kZW5jeSByZXNvbHV0aW9uIHNjcmVlbi4gIgorIkZpcnN0IGhvd2V2ZXIsIGFuIGluZm9ybWF0aXZlIGhlbHAgc2NyZWVuIGlzIGRpc3BsYXllZC4iCittc2dzdHIgIiIKKyJXZW5uIHNpY2ggYXVzIGRlciDDhG5kZXJ1bmdzYW5mb3JkZXJ1bmcgZWluZSBvZGVyIG1laHJlcmUgdW5lcmbDvGxsdGUgIgorIkFiaMOkbmdpZ2tlaXRlbiBvZGVyIEtvbmZsaWt0ZSBlcmdlYmVuLCBiaWV0ZXQgQjxkc2VsZWN0PiBkZW0gQmVudXR6ZXIgZWluZW4gIgorIkJpbGRzY2hpcm0genUgQWJow6RuZ2lna2VpdHNhdWZsw7ZzdW5nIGFuLiBadWVyc3Qgd2lyZCBhbGxlcmRpbmdzIGVpbiAiCisiSGlsZmViaWxkc2NoaXJtIGFuZ2V6ZWlndC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTozNzkKK21zZ2lkICIiCisiVGhlIHRvcCBoYWxmIG9mIHRoaXMgc2NyZWVuIGxpc3RzIGFsbCB0aGUgcGFja2FnZXMgdGhhdCB3aWxsIGhhdmUgdW5yZXNvbHZlZCAiCisiZGVwZW5kcyBvciBjb25mbGljdHMsIGFzIGEgcmVzdWx0IG9mIHRoZSByZXF1ZXN0ZWQgY2hhbmdlLCBhbmQgYWxsIHRoZSAiCisicGFja2FnZXMgd2hvc2UgaW5zdGFsbGF0aW9uIGNhbiByZXNvbHZlIGFueSBvZiB0aGVzZSBkZXBlbmRzIG9yIHdob3NlICIKKyJyZW1vdmFsIGNhbiByZXNvbHZlIGFueSBvZiB0aGUgY29uZmxpY3RzLiAgVGhlIGJvdHRvbSBoYWxmIGRlZmF1bHRzIHRvIHNob3cgIgorInRoZSBkZXBlbmRzIG9yIGNvbmZsaWN0cyB0aGF0IGNhdXNlIHRoZSBjdXJyZW50bHkgc2VsZWN0ZWQgcGFja2FnZSB0byBiZSAiCisibGlzdGVkLiIKK21zZ3N0ciAiIgorIkRpZSBvYmVyZSBIw6RsZnRlIGRpZXNlcyBCaWxkc2NoaXJtcyBmw7xocnQgYWxsZSBQYWtldGUgYXVmLCBkaWUgYXVmIEdydW5kIGRlciAiCisiYW5nZWZvcmRlcnRlbiDDhG5kZXJ1bmcgdW5lcmbDvGxsdGUgQWJow6RuZ2lna2VpdGVuIG9kZXIgS29uZmxpa3RlIGhhYmVuIHVuZCAiCisiYWxsZSBQYWtldGUsIGRlcmVuIEluc3RhbGxhdGlvbiAoZWluaWdlKSBkaWVzZXIgQWJow6RuZ2lna2VpdGVuIGVyZsO8bGxlbiBvZGVyICIKKyJkZXJlbiBFbnRmZXJudW5nIChlaW5pZ2UpIGRlciBLb25mbGlrdGUgYmVzZWl0aWdlbiBrYW5uLiBEaWUgdW50ZXJlIEjDpGxmdGUgIgorInplaWd0IHN0YW5kYXJkbcOkw59pZyBkaWUgQWJow6RuZ2lna2VpdGVuIG9kZXIgS29uZmxpa3RlLCBkaWUgenUgZGVyIEF1Zmxpc3R1bmcgIgorImRlcyBkZXJ6ZWl0IGF1c2dld8OkaGx0ZSBQYWtldGVzIGdlZsO8aHJ0IGhhYmVuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjM4NQorbXNnaWQgIiIKKyJXaGVuIHRoZSBzdWJsaXN0IG9mIHBhY2thZ2VzIGlzIGRpc3BsYXllZCBpbml0aWFsbHksIEI8ZHNlbGVjdD4gbWF5IGhhdmUgIgorImFscmVhZHkgc2V0IHRoZSByZXF1ZXN0ZWQgc2VsZWN0aW9uIHN0YXR1cyBvZiBzb21lIG9mIHRoZSBsaXN0ZWQgcGFja2FnZXMsICIKKyJpbiBvcmRlciB0byByZXNvbHZlIHRoZSBkZXBlbmRzIG9yIGNvbmZsaWN0cyB0aGF0IGNhdXNlZCB0aGUgZGVwZW5kZW5jeSAiCisicmVzb2x1dGlvbiBzY3JlZW4gdG8gYmUgZGlzcGxheWVkLiBVc3VhbGx5LCBpdCBpcyBiZXN0IHRvIGZvbGxvdyB1cCB0aGUgIgorInN1Z2dlc3Rpb25zIG1hZGUgYnkgQjxkc2VsZWN0Pi4iCittc2dzdHIgIiIKKyJXZW5uIGFuZsOkbmdsaWNoIGVpbmUgVGVpbGxpc3RlIHZvbiBQYWtldGVuIGRhcmdlc3RlbGx0IHdpcmQsIGvDtm5udGUgIgorIkI8ZHNlbGVjdD4gYmVyZWl0cyBkZW4gZXJiZXRlbmVuIEF1c3dhaGxzdGF0dXMgdm9uIGVpbmlnZW4gZGVyIGF1ZmdlZsO8aHJ0ZW4gIgorIlBha2V0ZSBnZXNldHp0IGhhYmVuLCB1bSBkaWUgQWJow6RuZ2lna2VpdGVuIG9kZXIgS29uZmxpa3RlIGF1Znp1bMO2c2VuLCBkaWUgIgorImRhenUgZ2Vmw7xocnQgaGF0dGVuLCBkYXNzIGRlciBCaWxkc2NoaXJtIHp1IEFiaMOkbmdpZ2tlaXRzYXVmbMO2c3VuZyBhbmdlemVpZ3QgIgorInd1cmRlLiBOb3JtYWxlcndlaXNlIGlzdCBlcyBhbSBiZXN0ZW4sIGRlbiBWb3JzY2hsw6RnZW4gdm9uIEI8ZHNlbGVjdD4genUgIgorImZvbGdlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTozOTMKK21zZ2lkICIiCisiVGhlIGxpc3RlZCBwYWNrYWdlcycgc2VsZWN0aW9uIHN0YXRlIG1heSBiZSByZXZlcnRlZCB0byB0aGUgb3JpZ2luYWwgIgorInNldHRpbmdzLCBhcyB0aGV5IHdlcmUgYmVmb3JlIHRoZSB1bnJlc29sdmVkIGRlcGVuZHMgb3IgY29uZmxpY3RzIHdlcmUgIgorImNyZWF0ZWQsIGJ5IHByZXNzaW5nIHRoZSBCPCdSJz4ga2V5LiBCeSBwcmVzc2luZyB0aGUgQjwnRCc+IGtleSwgdGhlICIKKyJhdXRvbWF0aWMgc3VnZ2VzdGlvbnMgYXJlIHJlc2V0LCBidXQgdGhlIGNoYW5nZSB0aGF0IGNhdXNlZCB0aGUgZGVwZW5kZW5jeSAiCisicmVzb2x1dGlvbiBzY3JlZW4gdG8gYmUgcHJvbXB0ZWQgaXMga2VwdCBhcyByZXF1ZXN0ZWQuICBGaW5hbGx5LCBieSBwcmVzc2luZyAiCisiQjwnVSc+LCB0aGUgc2VsZWN0aW9ucyBhcmUgYWdhaW4gc2V0IHRvIHRoZSBhdXRvbWF0aWMgc3VnZ2VzdGlvbiB2YWx1ZXMuIgorbXNnc3RyICIiCisiRHVyY2ggRHLDvGNrZW4gZGVyIFRhc3RlIEI8wrtSwqs+IGthbm4gZGVyIEF1c3dhaGx6dXN0YW5kIGRlciBhdWZnZWbDvGhydGVuICIKKyJQYWtldGUgenUgZGVuIE9yaWdpbmFsZWluc3RlbGx1bmdlbiB6dXLDvGNrZ2VzZXR6dCB3ZXJkZW4sIHdpZSBlciB2b3IgZGVuICIKKyJ1bmF1ZmdlbMO2c3RlbiBBYmjDpG5naWdrZWl0ZW4gb2RlciBLb25mbGlrdGVuIHdhci4gRHVyY2ggRHLDvGNrZW4gZGVyIFRhc3RlICIKKyJCPMK7RMKrPiB3ZXJkZW4gZGllIGF1dG9tYXRpc2NoZW4gVm9yc2NobMOkZ2UgenVyw7xja2dlc2V0enQsIGFiZXIgZGllICIKKyLDhG5kZXJ1bmdlbiwgZGllIHp1IGRlciBBbnplaWdlIGRlcyBBYmjDpG5naWdrZWl0c2F1ZmzDtnN1bmdzYmlsZHNjaGlybXMgIgorImdlZsO8aHJ0IGhhdHRlbiwgd2VyZGVuIHdpZSBnZWJldGVuIGJlaWJlaGFsdGVuLiBTY2hsaWXDn2xpY2ggd2VyZGVuIGR1cmNoICIKKyJEcsO8Y2tlbiBkZXIgVGFzdGUgQjzCu1XCqz4gZGllIEF1c3dhaGxlbiB3aWVkZXIgYXVmIGRpZSBhdXRvbWF0aXNjaGVuICIKKyJBdXN3YWhsd2VydGUgZ2VzZXR6dC4iCisKKyMuIHR5cGU6IFNTCisjOiBkc2VsZWN0LjE6Mzk0CisjLCBuby13cmFwCittc2dpZCAiRXN0YWJsaXNoaW5nIHRoZSByZXF1ZXN0ZWQgc2VsZWN0aW9ucyIKK21zZ3N0ciAiRGllIGFuZ2Vmb3JkZXJ0ZW4gQXVzd2FobGVuIGVpbnJpY2h0ZW4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0MDEKK21zZ2lkICIiCisiQnkgcHJlc3NpbmcgQjxlbnRlcj4sIHRoZSBjdXJyZW50bHkgZGlzcGxheWVkIHNldCBvZiBzZWxlY3Rpb25zIGlzIGFjY2VwdGVkLiAiCisiSWYgQjxkc2VsZWN0PiBkZXRlY3RzIG5vIHVucmVzb2x2ZWQgZGVwZW5kcyBhcyBhIHJlc3VsdCBvZiB0aGUgcmVxdWVzdGVkICIKKyJzZWxlY3Rpb25zLCB0aGUgbmV3IHNlbGVjdGlvbnMgd2lsbCBiZSBzZXQuICBIb3dldmVyLCBpZiB0aGVyZSBhcmUgYW55ICIKKyJ1bnJlc29sdmVkIGRlcGVuZHMsIEI8ZHNlbGVjdD4gd2lsbCBhZ2FpbiBwcm9tcHQgdGhlIHVzZXIgd2l0aCBhIGRlcGVuZGVuY3kgIgorInJlc29sdXRpb24gc2NyZWVuLiIKK21zZ3N0ciAiIgorIkR1cmNoIERyw7xja2VuIHZvbiBCPEVudGVyPiB3aXJkIGRpZSBkZXJ6ZWl0IGFuZ2V6ZWlndGUgQXVzd2FobGdydXBwZSAiCisiYWt6ZXB0aWVydC4gRmFsbHMgQjxkc2VsZWN0PiBrZWluZSB1bmF1ZmdlbMO2c3RlbiBBYmjDpG5naWdrZWl0IGFscyBFcmdlYm5pcyAiCisiZGVyIGFuZ2Vmb3JkZXJ0ZW4gQXVzd2FobCBlbnRkZWNrdCwgd2lyZCBkaWUgbmV1ZSBBdXN3YWhsIGdlc2V0enQuIEZhbGxzIGVzICIKKyJhbGxlcmRpbmdzIHVuYXVmZ2Vsw7ZzdGUgQWJow6RuZ2lna2VpdGVuIGdpYnQsIHdpcmQgQjxkc2VsZWN0PiBkZW0gQmVudXR6ZXIgIgorImVybmV1dCBkZW4gQmlsZHNjaGlybSBtaXQgZGVyIEFiaMOkbmdpZ2tlaXRzYXVmbMO2c3VuZyBhbnplaWdlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0MDcKK21zZ2lkICIiCisiVG8gYWx0ZXIgYSBzZXQgb2Ygc2VsZWN0aW9ucyB0aGF0IGNyZWF0ZXMgdW5yZXNvbHZlZCBkZXBlbmRzIG9yIGNvbmZsaWN0cyAiCisiYW5kIGZvcmNpbmcgQjxkc2VsZWN0PiB0byBhY2NlcHQgaXQsIHByZXNzIHRoZSBCPCdRJz4ga2V5LiBUaGlzIHNldHMgdGhlICIKKyJzZWxlY3Rpb25zIGFzIHNwZWNpZmllZCBieSB0aGUgdXNlciwgdW5jb25kaXRpb25hbGx5LiBHZW5lcmFsbHksIGRvbid0IGRvICIKKyJ0aGlzIHVubGVzcyB5b3UndmUgcmVhZCB0aGUgZmluZSBwcmludC4iCittc2dzdHIgIiIKKyJVbSBkaWUgTWVuZ2UgZGVyIEF1c3dhaGxlbiB6dSDDpG5kZXJuLCBkaWUgdW5hdWZnZWzDtnN0ZSBBYmjDpG5naWdrZWl0ZW4gb2RlciAiCisiS29uZmxpa3RlIGVyemV1Z3QgdW5kIEI8ZHNlbGVjdD4genUgendpbmdlbiwgZGllc2UgenUgYWt6ZXB0aWVyZW4sIGRyw7xja2VuICIKKyJTaWUgZGllIFRhc3RlIEI8wrtRwqs+LiBEaWVzIHNldHp0IGRpZSBBdXN3YWhsIHdpZSB2b20gQmVudXR6ZXIgYW5nZWdlYmVuLCAiCisib2huZSBCZWRpbmd1bmdlbi4gTWFjaGVuIFNpZSBkaWVzIG51ciwgd2VubiBTaWUgc2ljaCDDvGJlciBkaWUgS29uc2VxdWVuemVuICIKKyJpbSBLbGFyZW4gc2luZC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0MTQKK21zZ2lkICIiCisiVGhlIG9wcG9zaXRlIGVmZmVjdCwgdG8gYmFjayBvdXQgYW55IHNlbGVjdGlvbnMgY2hhbmdlIHJlcXVlc3RzIGFuZCBnbyBiYWNrICIKKyJ0byB0aGUgcHJldmlvdXMgbGlzdCBvZiBzZWxlY3Rpb25zLCBpcyBhdHRhaW5lZCBieSBwcmVzc2luZyB0aGUgQjwnWCc+IG9yICIKKyJCPGVzY2FwZT4ga2V5cy4gQnkgcmVwZWF0ZWRseSBwcmVzc2luZyB0aGVzZSBrZXlzLCBhbnkgcG9zc2libHkgZGV0cmltZW50YWwgIgorImNoYW5nZXMgdG8gdGhlIHJlcXVlc3RlZCBwYWNrYWdlIHNlbGVjdGlvbnMgY2FuIGJlIGJhY2tlZCBvdXQgY29tcGxldGVseSB0byAiCisidGhlIGxhc3QgZXN0YWJsaXNoZWQgc2V0dGluZ3MuIgorbXNnc3RyICIiCisiRGVyIGdlZ2VudGVpbGlnZSBFZmZla3QsIHVtIGFsbGUgQXVzd2FobMOkbmRlcnVuZ2VuIHp1csO8Y2t6dXNldHplbiB1bmQgenVyw7xjayAiCisiYXVmIGRpZSB2b3JoZXJpZ2UgQXVzd2FobGxpc3RlIHp1IGdlaGVuLCB3aXJkIGR1cmNoIERyw7xja2VuIGRlciBUYXN0ZW4gIgorIkI8wrtYwqs+IG9kZXIgQjzCu0VzY8KrPiBlcnJlaWNodC4gRHVyY2ggd2llZGVyaG9sdGVzIERyw7xja2VuIGRpZXNlciBUYXN0ZW4gIgorImvDtm5uZW4gbcO2Z2xpY2hlcndlaXNlIHNjaMOkZGxpY2hlIMOEbmRlcnVuZ2VuIGFuIGRlciBhbmdlZm9yZGVydGVuICIKKyJQYWtldGF1c3dhaGwga29tcGxldHQgYXVmIGRpZSBsZXR6dGVuIGJlc3RlaGVuZGVuIEVpbnN0ZWxsdW5nZW4gIgorInp1csO8Y2tnZXNldHp0IHdlcmRlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0MjEKK21zZ2lkICIiCisiSWYgeW91IG1pc3Rha2VubHkgZXN0YWJsaXNoIHNvbWUgc2V0dGluZ3MgYW5kIHdpc2ggdG8gcmV2ZXJ0IGFsbCB0aGUgIgorInNlbGVjdGlvbnMgdG8gd2hhdCBpcyBjdXJyZW50bHkgaW5zdGFsbGVkIG9uIHRoZSBzeXN0ZW0sIHByZXNzIHRoZSBCPCdDJz4gIgorImtleS4gIFRoaXMgaXMgc29tZXdoYXQgc2ltaWxhciB0byB1c2luZyB0aGUgdW5ob2xkIGNvbW1hbmQgb24gYWxsIHBhY2thZ2VzLCAiCisiYnV0IHByb3ZpZGVzIGEgbW9yZSBvYnZpb3VzIHBhbmljIGJ1dHRvbiBpbiBjYXNlcyB3aGVyZSB0aGUgdXNlciBwcmVzc2VkICIKKyJCPGVudGVyPiBieSBhY2NpZGVudC4iCittc2dzdHIgIiIKKyJGYWxscyBTaWUgYmVzdGltbXRlIEVpbnN0ZWxsdW5nZW4gYXVzIFZlcnNlaGVuIHZvcm5laG1lbiB1bmQgYWxsZSBBdXN3YWhsZW4gIgorInNvIHp1csO8Y2tzZXR6ZW4gd29sbGVuLCBkYXNzIGRpZXNlIGRlbiBiZXJlaXRzIGF1ZiBkZW0gU3lzdGVtIGluc3RhbGxpZXJ0ZW4gIgorIlBha2V0ZW4gZW50c3ByZWNoZW4sIGRhbm4gZHLDvGNrZW4gU2llIGRpZSBUYXN0ZSBCPMK7Q8KrPi4gRGllcyDDpGhuZWx0IGV0d2FzICIKKyJkZXIgVmVyd2VuZHVuZyBkZXMgQmVmZWhscyBMb3NsYXNzZW4sIGFuZ2V3ZW5kZXQgYXVmIGFsbGUgUGFrZXRlLCBiaWV0ZXQgIgorImFiZXIgZWluZW4gZXR3YXMgZGV1dGxpY2hlcmVuIFBhbmlra25vcGYsIGZhbGxzIGRlciBCZW51dHplciBhdXMgVmVyc2VoZW4gIgorImRpZSBCPEVpbmdhYmV0YXN0ZT4gZ2VkcsO8Y2t0IGhhdC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0MjgKK21zZ2lkICIiCisiSWYgc2V0LCBCPGRzZWxlY3Q+IHdpbGwgdXNlIGl0IGFzIHRoZSBkaXJlY3RvcnkgZnJvbSB3aGljaCB0byByZWFkIHRoZSB1c2VyICIKKyJzcGVjaWZpYyBjb25maWd1cmF0aW9uIGZpbGUuIgorbXNnc3RyICIiCisiRmFsbHMgZ2VzZXR6dCB3aXJkIEI8ZHNlbGVjdD4gZXMgYWxzIGRhcyBWZXJ6ZWljaG5pcyB2ZXJ3ZW5kZW4sIGF1cyBkZW0gZGllICIKKyJiZW51dHplcnNwZXppZmlzY2hlIEtvbmZpZ3VyYXRpb25zZGF0ZWkgZ2VsZXNlbiB3aXJkLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjQzNAorbXNnaWQgIiIKKyJUaGUgQjxkc2VsZWN0PiBwYWNrYWdlIHNlbGVjdGlvbiBpbnRlcmZhY2UgaXMgY29uZnVzaW5nIHRvIHNvbWUgbmV3IHVzZXJzLiAgIgorIlJlcG9ydGVkbHksIGl0IGV2ZW4gbWFrZXMgc2Vhc29uZWQga2VybmVsIGRldmVsb3BlcnMgY3J5LiIKK21zZ3N0ciAiIgorIkRpZSBQYWtldGF1c3dhaGwtU2Nobml0dHN0ZWxsZSB2b24gQjxEc2VsZWN0PiBicmluZ3QgZWluaWdlIG5ldWUgQmVudXR6ZXIgIgorImR1cmNoZWluYW5kZXIuIEdlcsO8Y2h0ZXdlaXNlIGJyaW5ndCBzaWUgc29nYXIgZXJmYWhyZW5lIEtlcm5lbGVudHdpY2tsZXIgenVtICIKKyJIZXVsZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NDM2Cittc2dpZCAiVGhlIGRvY3VtZW50YXRpb24gaXMgbGFja2luZy4iCittc2dzdHIgIkRpZSBEb2t1bWVudGF0aW9uIGlzdCB2ZXJiZXNzZXJ1bmdzd8O8cmRpZy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0MzgKK21zZ2lkICJUaGVyZSBpcyBubyBoZWxwIG9wdGlvbiBpbiB0aGUgbWFpbiBtZW51LiIKK21zZ3N0ciAiRXMgZ2lidCBrZWluZSBIaWxmZS1PcHRpb24gaW0gSGF1cHRtZW7DvC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0NDAKK21zZ2lkICJUaGUgdmlzaWJsZSBsaXN0IG9mIGF2YWlsYWJsZSBwYWNrYWdlcyBjYW5ub3QgYmUgcmVkdWNlZC4iCittc2dzdHIgIiIKKyJEaWUgc2ljaHRiYXJlIExpc3RlIHZvbiB2ZXJmw7xnYmFyZW4gUGFrZXRlbiBrYW5uIG5pY2h0IHZlcmtsZWluZXJ0IHdlcmRlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0NDQKK21zZ2lkICIiCisiVGhlIGJ1aWx0IGluIGFjY2VzcyBtZXRob2RzIGNhbiBubyBsb25nZXIgc3RhbmQgdXAgdG8gY3VycmVudCBxdWFsaXR5ICIKKyJzdGFuZGFyZHMuIFVzZSB0aGUgYWNjZXNzIG1ldGhvZCBwcm92aWRlZCBieSBhcHQsIGl0IGlzIG5vdCBvbmx5IG5vdCBicm9rZW4sICIKKyJpdCBpcyBhbHNvIG11Y2ggbW9yZSBmbGV4aWJsZSB0aGFuIHRoZSBidWlsdCBpbiBhY2Nlc3MgbWV0aG9kcy4iCittc2dzdHIgIiIKKyJEaWUgZWluZ2ViYXV0ZW4gWnVncmlmZnNtZXRob2RlbiBrw7ZubmVuIHNpY2ggbmljaHQgbWVociBtaXQgYWt0dWVsbGVuICIKKyJRdWFsaXTDpHRzc3RhbmRhcmRzIG1lc3Nlbi4gVmVyd2VuZGVuIFNpZSBkaWUgdm9uIGFwdCBiZXJlaXRnZXN0ZWxsdGUgIgorIlp1Z3JpZmZzbWV0aG9kZSwgc2llIGZ1bmt0aW9uaWVydCBuaWNodCBudXIsIHNvbmRlcm4gaXN0IHNvZ2FyIGZsZXhpYmxlciBhbHMgIgorImRpZSBlaW5nZWJhdXRlbiBadWdyaWZmc21ldGhvZGVuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjQ1MAorbXNnaWQgIkI8ZHBrZz4oMSksIEI8YXB0LWdldD4oOCksIEI8c291cmNlcy5saXN0Pig1KSwgQjxkZWI+KDUpLiIKK21zZ3N0ciAiQjxkcGtnPigxKSwgQjxhcHQtZ2V0Pig4KSwgQjxzb3VyY2VzLmxpc3Q+KDUpLCBCPGRlYj4oNSkuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NDU1Cittc2dpZCAiIgorIkI8ZHNlbGVjdD4gd2FzIHdyaXR0ZW4gYnkgSWFuIEphY2tzb24gKGlqYWNrc29uQGdudS5haS5taXQuZWR1KS4gRnVsbCBsaXN0ICIKKyJvZiBjb250cmlidXRvcnMgbWF5IGJlIGZvdW5kIGluICdkc2VsZWN0IC0tdmVyc2lvbicuIgorbXNnc3RyICIiCisiQjxEc2VsZWN0PiB3dXJkZSB2b24gSWFuIEphY2tzb24gKGlqYWNrc29uQGdudS5haS5taXQuZWR1KSBnZXNjaHJpZWJlbi4gRGllICIKKyJrb21wbGV0dGUgTGlzdGUgZGVyIEJlaXRyYWdlbmRlbiBrYW5uIG1pdHRlbHMgwrtkc2VsZWN0IC0tdmVyc2lvbsKrICIKKyJoZXJhdXNnZWZ1bmRlbiB3ZXJkZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NDU4Cittc2dpZCAiIgorIlRoaXMgbWFudWFsIHBhZ2Ugd2FzIHdyaXR0ZW4gYnkgSnVobyBWdW9yaSBFPGx0PmphdnVvcmlAY2MuaGVsc2lua2kuZmlFPGd0PiwgIgorIkpvc2lwIFJvZGluIGFuZCBKb29zdCBrb29pai4iCittc2dzdHIgIiIKKyJEaWVzZSBIYW5kYnVjaHNlaXRlIHd1cmRlIHZvbiBKdWhvIFZ1b3JpIEU8bHQ+amF2dW9yaUBjYy5oZWxzaW5raS5maUU8Z3Q+LCAiCisiSm9zaXAgUm9kaW4gdW5kIEpvb3N0IGtvb2lqIGdlc2NocmllYmVuLiIKKworIy4gdHlwZTogVEgKKyM6IGRzZWxlY3QuY2ZnLjU6MQorIywgbm8td3JhcAorbXNnaWQgImRzZWxlY3QuY2ZnIgorbXNnc3RyICJkc2VsZWN0LmNmZyIKKworIy4gdHlwZTogVEgKKyM6IGRzZWxlY3QuY2ZnLjU6MQorIywgbm8td3JhcAorbXNnaWQgIjIwMTEtMDctMDMiCittc2dzdHIgIjIwMTEtMDctMDMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuY2ZnLjU6NAorbXNnaWQgImRzZWxlY3QuY2ZnIC0gZHNlbGVjdCBjb25maWd1cmF0aW9uIGZpbGUiCittc2dzdHIgImRzZWxlY3QuY2ZnIC0gZHNlbGVjdCBLb25maWd1cmF0aW9uc2RhdGVpIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LmNmZy41OjExCittc2dpZCAiIgorIlRoaXMgZmlsZSBjb250YWlucyBkZWZhdWx0IG9wdGlvbnMgZm9yIGRzZWxlY3QuIEVhY2ggbGluZSBjb250YWlucyBhIHNpbmdsZSAiCisib3B0aW9uIHdoaWNoIGlzIGV4YWN0bHkgdGhlIHNhbWUgYXMgYSBub3JtYWwgY29tbWFuZCBsaW5lIG9wdGlvbiBmb3IgZHNlbGVjdCAiCisiZXhjZXB0IGZvciB0aGUgbGVhZGluZyBkYXNoZXMgd2hpY2ggYXJlIG5vdCB1c2VkIGhlcmUuIFF1b3RlcyBzdXJyb3VuZGluZyAiCisib3B0aW9uIHZhbHVlcyBhcmUgc3RyaXBwZWQuIENvbW1lbnRzIGFyZSBhbGxvd2VkIGJ5IHN0YXJ0aW5nIGEgbGluZSB3aXRoIGEgIgorImhhc2ggc2lnbiAoXCJCPCM+XCIpLiIKK21zZ3N0ciAiIgorIkRpZXNlIERhdGVpIGVudGjDpGx0IFN0YW5kYXJkb3B0aW9uZW4gZsO8ciBkc2VsZWN0LiBKZWRlIFplaWxlIGVudGjDpGx0IGVpbmUgIgorImVpbnplbG5lIE9wdGlvbiwgZGllIGV4YWt0IGRpZSBnbGVpY2hlIHdpZSBmw7xyIGRpZSBub3JtYWxlbiBLb21tYW5kb3plaWxlbi0iCisiT3B0aW9uIHZvbiBkc2VsZWN0IHNpbmQsIGFiZ2VzZWhlbiB2b24gZGVuIGVpbmxlaXRlbmRlbiBHZWRhbmtlbnN0cmljaGVuLCAiCisiZGllIGhpZXIgbmljaHQgdmVyd2VuZGV0IHdlcmRlbi4gQW5mw7xocnVuZ3N6ZWljaGVuICjCu1F1b3Rlc8KrKSB1bSAiCisiT3B0aW9uc3dlcnRlIHdlcmRlbiBlbnRmZXJudC4gS29tbWVudGFyZSBzaW5kIGR1cmNoIEVpbmxlaXRlbiBlaW5lciBaZWlsZSAiCisibWl0IGVpbmVtIFJhdXRlbnplaWNoZW4gKMK7QjwjPsKrKSBlcmxhdWJ0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC5jZmcuNToxNAorbXNnaWQgIkk8L2V0Yy9kcGtnL2RzZWxlY3QuY2ZnLmQvWzAtOWEtekEtWl8tXSo+IgorbXNnc3RyICJJPC9ldGMvZHBrZy9kc2VsZWN0LmNmZy5kL1swLTlhLXpBLVpfLV0qPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC5jZmcuNToxNgorbXNnaWQgIkk8L2V0Yy9kcGtnL2RzZWxlY3QuY2ZnPiIKK21zZ3N0ciAiSTwvZXRjL2Rwa2cvZHNlbGVjdC5jZmc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LmNmZy41OjE4Cittc2dpZCAiSTx+Ly5kc2VsZWN0LmNmZz4iCittc2dzdHIgIkk8fi8uZHNlbGVjdC5jZmc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LmNmZy41OjIyCittc2dpZCAiIgorIlNlZSBJPC91c3Ivc2hhcmUvZG9jL2Rwa2cvVEhBTktTPiBmb3IgdGhlIGxpc3Qgb2YgcGVvcGxlIHdobyBoYXZlICIKKyJjb250cmlidXRlZCB0byBCPGRzZWxlY3Q+LiIKK21zZ3N0ciAiIgorIkxlc2VuIFNpZSBJPC91c3Ivc2hhcmUvZG9jL2Rwa2cvVEhBTktTPiBmw7xyIGRpZSBMaXN0ZSBkZXIgTGV1dGUsIGRpZSB6dSAiCisiQjxkc2VsZWN0PiBiZWlnZXRyYWdlbiBoYWJlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuY2ZnLjU6MjQKK21zZ2lkICJCPGRzZWxlY3Q+KDEpLiIKK21zZ3N0ciAiQjxkc2VsZWN0PigxKS4iCisKKyMuIHR5cGU6IFRICisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjEKKyMsIG5vLXdyYXAKK21zZ2lkICJzdGFydC1zdG9wLWRhZW1vbiIKK21zZ3N0ciAic3RhcnQtc3RvcC1kYWVtb24iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6NAorbXNnaWQgInN0YXJ0LXN0b3AtZGFlbW9uIC0gc3RhcnQgYW5kIHN0b3Agc3lzdGVtIGRhZW1vbiBwcm9ncmFtcyIKK21zZ3N0ciAic3RhcnQtc3RvcC1kYWVtb24gLSBzdGFydGV0IHVuZCBzdG9wcHQgU3lzdGVtLURhZW1vbi1Qcm9ncmFtbWUiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6OAorbXNnaWQgIkI8c3RhcnQtc3RvcC1kYWVtb24+IFtJPG9wdGlvbj4uLi5dIEk8Y29tbWFuZD4iCittc2dzdHIgIkI8c3RhcnQtc3RvcC1kYWVtb24+IFtJPE9wdGlvbj4uLi5dIEk8QmVmZWhsPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxNAorbXNnaWQgIiIKKyJCPHN0YXJ0LXN0b3AtZGFlbW9uPiBpcyB1c2VkIHRvIGNvbnRyb2wgdGhlIGNyZWF0aW9uIGFuZCB0ZXJtaW5hdGlvbiBvZiAiCisic3lzdGVtLWxldmVsIHByb2Nlc3Nlcy4gIFVzaW5nIG9uZSBvZiB0aGUgbWF0Y2hpbmcgb3B0aW9ucywgQjxzdGFydC1zdG9wLSIKKyJkYWVtb24+IGNhbiBiZSBjb25maWd1cmVkIHRvIGZpbmQgZXhpc3RpbmcgaW5zdGFuY2VzIG9mIGEgcnVubmluZyBwcm9jZXNzLiIKK21zZ3N0ciAiIgorIkI8c3RhcnQtc3RvcC1kYWVtb24+IHdpcmQgenVyIFN0ZXVlcnVuZyBkZXIgRXJ6ZXVndW5nIHVuZCBCZWVuZGlndW5nIHZvbiAiCisiUHJvemVzc2VuIGF1ZiBTeXN0ZW1lYmVuZSB2ZXJ3ZW5kZXQuIER1cmNoIGRpZSBWZXJ3ZW5kdW5nIGVpbmVyIGRlciBBYmdsZWljaC0iCisiT3B0aW9uZW4ga2FubiBCPHN0YXJ0LXN0b3AtZGFlbW9uPiBzbyBrb25maWd1cmllcnQgd2VyZGVuLCBkYXNzIGVyICIKKyJleGlzdGllcmVuZGUgSW5zdGFuemVuIHZvbiBlaW5lbSBsYXVmZW5kZW4gUHJvemVzcyBmaW5kZW4ga2Fubi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MzMKK21zZ2lkICIiCisiTm90ZTogdW5sZXNzIEI8LS1waWRmaWxlPiBpcyBzcGVjaWZpZWQsIEI8c3RhcnQtc3RvcC1kYWVtb24+IGJlaGF2ZXMgc2ltaWxhciAiCisidG8gQjxraWxsYWxsPigxKS4gIEI8c3RhcnQtc3RvcC1kYWVtb24+IHdpbGwgc2NhbiB0aGUgcHJvY2VzcyB0YWJsZSBsb29raW5nICIKKyJmb3IgYW55IHByb2Nlc3NlcyB3aGljaCBtYXRjaCB0aGUgcHJvY2VzcyBuYW1lLCB1aWQsIGFuZC9vciBnaWQgKGlmICIKKyJzcGVjaWZpZWQpLiBBbnkgbWF0Y2hpbmcgcHJvY2VzcyB3aWxsIHByZXZlbnQgQjwtLXN0YXJ0PiBmcm9tIHN0YXJ0aW5nIHRoZSAiCisiZGFlbW9uLiBBbGwgbWF0Y2hpbmcgcHJvY2Vzc2VzIHdpbGwgYmUgc2VudCB0aGUgVEVSTSBzaWduYWwgKG9yIHRoZSBvbmUgIgorInNwZWNpZmllZCB2aWEgQjwtLXNpZ25hbD4gb3IgQjwtLXJldHJ5PikgaWYgQjwtLXN0b3A+IGlzIHNwZWNpZmllZC4gRm9yICIKKyJkYWVtb25zIHdoaWNoIGhhdmUgbG9uZy1saXZlZCBjaGlsZHJlbiB3aGljaCBuZWVkIHRvIGxpdmUgdGhyb3VnaCBhIEI8LS0iCisic3RvcD4sIHlvdSBtdXN0IHNwZWNpZnkgYSBwaWRmaWxlLiIKK21zZ3N0ciAiIgorIkhpbndlaXM6IEZhbGxzIEI8LS1waWRmaWxlPiBuaWNodCBhbmdlZ2ViZW4gaXN0LCB2ZXJow6RsdCBzaWNoIEI8c3RhcnQtc3RvcC0iCisiZGFlbW9uPiDDpGhubGljaCB6dSBCPGtpbGxhbGw+KDEpLiBCPHN0YXJ0LXN0b3AtZGFlbW9uPiB3aXJkIGRpZSAiCisiUHJvemVzc3RhYmVsbGUgbmFjaCBQcm96ZXNzZW4gZHVyY2hzdWNoZW4sIGRpZSBhdWYgZGVuIFByb3plc3NuYW1lbiwgdWlkIHVuZC8iCisib2RlciBnaWQgKGZhbGxzIGFuZ2VnZWJlbikgcGFzc2VuLiBKZWRlciBwYXNzZW5kZSBQcm96ZXNzIHdpcmQgQjwtLXN0YXJ0PiAiCisiZGFyYW4gaGluZGVybiwgZGVuIERhZW1vbiB6dSBzdGFydGVuLiBBbGxlbiBwYXNzZW5kZW4gUHJvemVzc2VuIHdpcmQgZGFzICIKKyJURVJNLVNpZ25hbCAob2RlciBkYXMgbWl0IEI8LS1zaWduYWw+IG9kZXIgQjwtLXJldHJ5PiBhbmdlZ2ViZW5lKSBnZXNjaGlja3QsICIKKyJmYWxscyBCPC0tc3RvcD4gYW5nZWdlYmVuIGlzdC4gRsO8ciBEYWVtb25zIGRpZSBsYW5nbGViaWdlIEtpbmRlciBoYWJlbiwgZGllICIKKyJlaW4gQjwtLXN0b3A+IMO8YmVybGViZW4gbcO8c3NlbiwgbcO8c3NlbiBTaWUgZWluZSBQSUQtRGF0ZWkgYW5nZWJlbi4iCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjM1CisjLCBuby13cmFwCittc2dpZCAiQjwtUz4sIEI8LS1zdGFydD4gW0I8LS0+XSBJPGFyZ3VtZW50cz4iCittc2dzdHIgIkI8LVM+LCBCPC0tc3RhcnQ+IFtCPC0tPl0gSTxBcmd1bWVudGU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjUyCittc2dpZCAiIgorIkNoZWNrIGZvciB0aGUgZXhpc3RlbmNlIG9mIGEgc3BlY2lmaWVkIHByb2Nlc3MuICBJZiBzdWNoIGEgcHJvY2VzcyBleGlzdHMsICIKKyJCPHN0YXJ0LXN0b3AtZGFlbW9uPiBkb2VzIG5vdGhpbmcsIGFuZCBleGl0cyB3aXRoIGVycm9yIHN0YXR1cyAxICgwIGlmIEI8LS0iCisib2tub2RvPiBpcyBzcGVjaWZpZWQpLiAgSWYgc3VjaCBhIHByb2Nlc3MgZG9lcyBub3QgZXhpc3QsIGl0IHN0YXJ0cyBhbiAiCisiaW5zdGFuY2UsIHVzaW5nIGVpdGhlciB0aGUgZXhlY3V0YWJsZSBzcGVjaWZpZWQgYnkgQjwtLWV4ZWM+IG9yLCBpZiAiCisic3BlY2lmaWVkLCBieSBCPC0tc3RhcnRhcz4uICBBbnkgYXJndW1lbnRzIGdpdmVuIGFmdGVyIEI8LS0+IG9uIHRoZSBjb21tYW5kICIKKyJsaW5lIGFyZSBwYXNzZWQgdW5tb2RpZmllZCB0byB0aGUgcHJvZ3JhbSBiZWluZyBzdGFydGVkLiIKK21zZ3N0ciAiIgorIlByw7xmZSBhdWYgRXhpc3RlbnogZWluZXMgYW5nZWdlYmVuZW4gUHJvemVzc2VzLiBGYWxscyBlaW4gc29sY2hlciBQcm96ZXNzICIKKyJleGlzdGllcnQgZsO8aHJ0IEI8c3RhcnQtc3RvcC1kYWVtb24+IG5pY2h0cyBhdXMgdW5kIGJlZW5kZXQgc2ljaCBtaXQgIgorIkZlaGxlcnN0YXR1cyAxICgwLCBmYWxscyBCPC0tb2tub2RvPiBhbmdlZ2ViZW4gd3VyZGUpLiBGYWxscyBlaW4gc29sY2hlciAiCisiUHJvemVzcyBuaWNodCBleGlzdGllcnQsIGRhbm4gc3RhcnRldCBlcyBlaW5lIEluc3RhbnosIGVudHdlZGVyIHVudGVyICIKKyJWZXJ3ZW5kdW5nIGRlcyBhdXNmw7xocmJhcmVuIFByb2dyYW1tcywgZGFzIG1pdHRlbHMgQjwtLWV4ZWM+IChvZGVyLCBmYWxscyAiCisiYW5nZWdlYmVuLCBtaXR0ZWxzIEI8LS1zdGFydGFzPikgc3BlemlmaXppZXJ0IHd1cmRlLiBKZWRlcyB3ZWl0ZXJlIGF1ZiBkZXIgIgorIktvbW1hbmRvemVpbGUgbmFjaCBCPC0tPiBhbmdlZ2ViZW5lIEFyZ3VtZW50IHdpcmQgdW52ZXLDpG5kZXJ0IGFuIGRhcyB6dSAiCisic3RhcnRlbmRlIFByb2dyYW1tIHdlaXRlcmdlZ2ViZW4uIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo1MgorIywgbm8td3JhcAorbXNnaWQgIkI8LUs+LCBCPC0tc3RvcD4iCittc2dzdHIgIkI8LUs+LCBCPC0tc3RvcD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6NzAKK21zZ2lkICIiCisiQ2hlY2tzIGZvciB0aGUgZXhpc3RlbmNlIG9mIGEgc3BlY2lmaWVkIHByb2Nlc3MuICBJZiBzdWNoIGEgcHJvY2VzcyBleGlzdHMsICIKKyJCPHN0YXJ0LXN0b3AtZGFlbW9uPiBzZW5kcyBpdCB0aGUgc2lnbmFsIHNwZWNpZmllZCBieSBCPC0tc2lnbmFsPiwgYW5kIGV4aXRzICIKKyJ3aXRoIGVycm9yIHN0YXR1cyAwLiAgSWYgc3VjaCBhIHByb2Nlc3MgZG9lcyBub3QgZXhpc3QsIEI8c3RhcnQtc3RvcC1kYWVtb24+ICIKKyJleGl0cyB3aXRoIGVycm9yIHN0YXR1cyAxICgwIGlmIEI8LS1va25vZG8+IGlzIHNwZWNpZmllZCkuIElmIEI8LS1yZXRyeT4gaXMgIgorInNwZWNpZmllZCwgdGhlbiBCPHN0YXJ0LXN0b3AtZGFlbW9uPiB3aWxsIGNoZWNrIHRoYXQgdGhlIHByb2Nlc3MoZXMpIGhhdmUgIgorInRlcm1pbmF0ZWQuIgorbXNnc3RyICIiCisiw5xiZXJwcsO8ZnQgYXVmIGRpZSBFeGlzdGVueiBlaW5lcyBzcGV6aWVsbGVuIFByb3plc3Nlcy4gRmFsbHMgZWluIHNvbGNoZXIgIgorIlByb3plc3MgZXhpc3RpZXJ0LCBkYW5uIHNlbmRldCBCPHN0YXJ0LXN0b3AtZGFlbW9uPiBkYXMgZHVyY2ggQjwtLXNpZ25hbD4gIgorImFuZ2VnZWJlbmUgU2lnbmFsIHVuZCBiZWVuZGV0IHNpY2ggbWl0IEZlaGxlcnN0YXR1cyAwLiBGYWxscyBrZWluIHNvbGNoZXIgIgorIlByb3plc3MgZXhpc3RpZXJ0LCBkYW5uIGJlZW5kZXQgc2ljaCBCPHN0YXJ0LXN0b3AtZGFlbW9uPiBtaXQgRmVobGVyc3RhdHVzIDEgIgorIigwIGZhbGxzIEI8LS1va25vZG8+IGFuZ2VnZWJlbiBpc3QpLiBGYWxscyBCPC0tcmV0cnk+IGFuZ2VnZWJlbiB3dXJkZSwgd2lyZCAiCisiQjxzdGFydC1zdG9wLWRhZW1vbj4gw7xiZXJwcsO8ZmVuLCBvYiBkZXIvZGllIFByb3plc3MoZSkgYmVlbmRldCB3dXJkZW4uIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo3MAorIywgbm8td3JhcAorbXNnaWQgIkI8LVQ+LCBCPC0tc3RhdHVzPiIKK21zZ3N0ciAiQjwtVD4sIEI8LS1zdGF0dXM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44Ojc0Cittc2dpZCAiIgorIkNoZWNrIGZvciB0aGUgZXhpc3RlbmNlIG9mIGEgc3BlY2lmaWVkIHByb2Nlc3MsIGFuZCByZXR1cm5zIGFuIGV4aXQgc3RhdHVzICIKKyJjb2RlLCBhY2NvcmRpbmcgdG8gdGhlIExTQiBJbml0IFNjcmlwdCBBY3Rpb25zLiIKK21zZ3N0ciAiIgorIsOcYmVycHLDvGZ0IGF1ZiBkaWUgRXhpc3RlbnogZWluZXMgYmVzdGltbXRlbiBQcm96ZXNzZXMgdW5kIGxpZWZlcnQgZGVuIEV4aXQtIgorIlN0YXR1cy1Db2RlIGVudHNwcmVjaGVuZCBkZXIgwrtMU0IgSW5pdCBTY3JpcHQgQWN0aW9uc8KrIHp1csO8Y2suIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo3NAorIywgbm8td3JhcAorbXNnaWQgIkI8LUg+LCBCPC0taGVscD4iCittc2dzdHIgIkI8LUg+LCBCPC0taGVscD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6NzcKK21zZ2lkICJTaG93IHVzYWdlIGluZm9ybWF0aW9uIGFuZCBleGl0LiIKK21zZ3N0ciAiWmVpZ2UgQmVkaWVudW5nc2luZm9ybWF0aW9uZW4gdW5kIGJlZW5kZXQgc2ljaC4iCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44Ojc3CisjLCBuby13cmFwCittc2dpZCAiQjwtVj4sIEI8LS12ZXJzaW9uPiIKK21zZ3N0ciAiQjwtVj4sIEI8LS12ZXJzaW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo4MAorbXNnaWQgIlNob3cgdGhlIHByb2dyYW0gdmVyc2lvbiBhbmQgZXhpdC4iCittc2dzdHIgIlplaWdlIGRpZSBQcm9ncmFtbXZlcnNpb24gdW5kIGJlZW5kZXQgc2ljaC4iCisKKyMuIHR5cGU6IFNICisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjgxCisjLCBuby13cmFwCittc2dpZCAiTUFUQ0hJTkcgT1BUSU9OUyIKK21zZ3N0ciAiQUJHTEVJQ0gtT1BUSU9ORU4iCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjgyCisjLCBuby13cmFwCittc2dpZCAiQjwtcD4sIEI8LS1waWRmaWxlPiBJPHBpZC1maWxlPiIKK21zZ3N0ciAiQjwtcD4sIEI8LS1waWRmaWxlPiBJPHBpZC1EYXRlaT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6ODYKK21zZ2lkICJDaGVjayB3aGV0aGVyIGEgcHJvY2VzcyBoYXMgY3JlYXRlZCB0aGUgZmlsZSBJPHBpZC1maWxlPi4iCittc2dzdHIgIsOcYmVycHLDvGZlLCBvYiBlaW4gUHJvemVzcyBkaWUgRGF0ZWkgSTxwaWQtRGF0ZWk+IGFuZ2VsZWd0IGhhdC4iCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44Ojg2CisjLCBuby13cmFwCittc2dpZCAiQjwteD4sIEI8LS1leGVjPiBJPGV4ZWN1dGFibGU+IgorbXNnc3RyICJCPC14PiwgQjwtLWV4ZWM+IEk8UHJvZ3JhbW0+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjkwCittc2dpZCAiIgorIkNoZWNrIGZvciBwcm9jZXNzZXMgdGhhdCBhcmUgaW5zdGFuY2VzIG9mIHRoaXMgZXhlY3V0YWJsZSAoYWNjb3JkaW5nIHRvIEI8LyIKKyJwcm9jLz5JPHBpZD5CPC9leGU+KS4iCittc2dzdHIgIiIKKyLDnGJlcnByw7xmZSBhdWYgUHJvemVzc2UgZGllIChsYXV0IEI8L3Byb2MvPkk8cGlkPkI8L2V4ZT4pIEluc3RhbnplbiB2b24gIgorImRpZXNlbSBQcm9ncmFtbSBzaW5kLiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6OTAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1uPiwgQjwtLW5hbWU+IEk8cHJvY2Vzcy1uYW1lPiIKK21zZ3N0ciAiQjwtbj4sIEI8LS1uYW1lPiBJPFByb3plc3NuYW1lPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo5NgorbXNnaWQgIiIKKyJDaGVjayBmb3IgcHJvY2Vzc2VzIHdpdGggdGhlIG5hbWUgSTxwcm9jZXNzLW5hbWU+IChhY2NvcmRpbmcgdG8gQjwvcHJvYy8iCisiPkk8cGlkPkI8L3N0YXQ+KS4iCittc2dzdHIgIiIKKyLDnGJlcnByw7xmZSAobGF1dCBCPC9wcm9jLz5JPHBpZD5CPC9zdGF0PikgYXVmIFByb3plc3NlIG1pdCBkZW0gTmFtZW4gIgorIkk8UHJvemVzc25hbWU+LiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6OTYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC11PiwgQjwtLXVzZXI+IEk8dXNlcm5hbWU+fEk8dWlkPiIKK21zZ3N0ciAiQjwtdT4sIEI8LS11c2VyPiBJPEJlbnV0emVybmFtZT58STx1aWQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjEwMgorbXNnaWQgIiIKKyJDaGVjayBmb3IgcHJvY2Vzc2VzIG93bmVkIGJ5IHRoZSB1c2VyIHNwZWNpZmllZCBieSBJPHVzZXJuYW1lPiBvciBJPHVpZD4uIgorbXNnc3RyICIiCisiw5xiZXJwcsO8ZmUgYXVmIFByb3plc3NlIGRpZSBkZW0gbWl0IEk8QmVudXR6ZXJuYW1lPiBvZGVyIEk8dWlkPiAiCisic3BlemlmaXppZXJ0ZW4gQmVudXR6ZXIgZ2Vow7ZyZW4uIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxMDQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1nPiwgQjwtLWdyb3VwPiBJPGdyb3VwPnxJPGdpZD4iCittc2dzdHIgIkI8LWc+LCBCPC0tZ3JvdXA+IEk8R3J1cHBlPnxJPGdpZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTA3Cittc2dpZCAiQ2hhbmdlIHRvIEk8Z3JvdXA+IG9yIEk8Z2lkPiB3aGVuIHN0YXJ0aW5nIHRoZSBwcm9jZXNzLiIKK21zZ3N0ciAiV2VjaHNsZSB6dW0gU3RhcnRlbiBkZXMgUHJvemVzc2VzIHp1ciBJPEdydXBwZT4gb2RlciBJPGdpZD4uIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxMDcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1zPiwgQjwtLXNpZ25hbD4gSTxzaWduYWw+IgorbXNnc3RyICJCPC1zPiwgQjwtLXNpZ25hbD4gSTxTaWduYWw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjExMgorbXNnaWQgIiIKKyJXaXRoIEI8LS1zdG9wPiwgc3BlY2lmaWVzIHRoZSBzaWduYWwgdG8gc2VuZCB0byBwcm9jZXNzZXMgYmVpbmcgc3RvcHBlZCAiCisiKGRlZmF1bHQgVEVSTSkuIgorbXNnc3RyICIiCisiTWl0IEI8LS1zdG9wPiB3aXJkIGRhcyBhbiBkZW4genUgYmVlbmRlbmRlbiBQcm96ZXNzIHp1IHNlbmRlbmRlIFNpZ25hbCAiCisic3BlemlmaXppZXJ0IChzdGFuZGFyZG3DpMOfaWcgVEVSTSkuIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxMTIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1SPiwgQjwtLXJldHJ5PiBJPHRpbWVvdXQ+fEk8c2NoZWR1bGU+IgorbXNnc3RyICJCPC1SPiwgQjwtLXJldHJ5PiBJPFplaXTDvGJlcnNjaHJlaXR1bmc+fEk8UGxhbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTIyCittc2dpZCAiIgorIldpdGggQjwtLXN0b3A+LCBzcGVjaWZpZXMgdGhhdCBCPHN0YXJ0LXN0b3AtZGFlbW9uPiBpcyB0byBjaGVjayB3aGV0aGVyIHRoZSAiCisicHJvY2VzcyhlcykgIGRvIGZpbmlzaC4gSXQgd2lsbCBjaGVjayByZXBlYXRlZGx5IHdoZXRoZXIgYW55IG1hdGNoaW5nICIKKyJwcm9jZXNzZXMgYXJlIHJ1bm5pbmcsIHVudGlsIG5vbmUgYXJlLiBJZiB0aGUgcHJvY2Vzc2VzIGRvIG5vdCBleGl0IGl0IHdpbGwgIgorInRoZW4gdGFrZSBmdXJ0aGVyIGFjdGlvbiBhcyBkZXRlcm1pbmVkIGJ5IHRoZSBzY2hlZHVsZS4iCittc2dzdHIgIiIKKyJNaXQgQjwtLXN0b3A+IHNwZXppZml6aWVydCwgZGFzcyBCPHN0YXJ0LXN0b3AtZGFlbW9uPiDDvGJlcnByw7xmZW4gc29sbCwgb2IgIgorImRlciBQcm96ZXNzIChkaWUgUHJvemVzc2UpIHNpY2ggYmVlbmRlbi4gRXMgw7xiZXJwcsO8ZnQgd2llZGVyaG9sdCwgb2IgIgorInBhc3NlbmRlIFByb3plc3NlIGxhdWZlbiwgYmlzIGRpZXMgbmljaHQgbWVociBkZXIgRmFsbCBpc3QuIEZhbGxzIHNpY2ggZGllICIKKyJQcm96ZXNzZSBuaWNodCBiZWVuZGVuLCB3ZXJkZW4gd2VpdGVyZSBpbSDCu1BsYW7CqyBhbmdlZ2ViZW5lIEFrdGlvbmVuICIKKyJkdXJjaGdlZsO8aHJ0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxMzMKK21zZ2lkICIiCisiSWYgSTx0aW1lb3V0PiBpcyBzcGVjaWZpZWQgaW5zdGVhZCBvZiBJPHNjaGVkdWxlPiwgdGhlbiB0aGUgc2NoZWR1bGUgIgorIkk8c2lnbmFsPkI8Lz5JPHRpbWVvdXQ+QjwvS0lMTC8+STx0aW1lb3V0PiBpcyB1c2VkLCB3aGVyZSBJPHNpZ25hbD4gaXMgdGhlICIKKyJzaWduYWwgc3BlY2lmaWVkIHdpdGggQjwtLXNpZ25hbD4uIgorbXNnc3RyICIiCisiRmFsbHMgSTxaZWl0w7xiZXJzY2hyZWl0dW5nPiBhbnN0ZWxsZSB2b24gSTxQbGFuPiBzcGV6aWZpemllcnQgd2lyZCwgZGFubiAiCisid2lyZCBkZXIgUGxhbiBJPFNpZ25hbD5CPC8+STxaZWl0w7xiZXJzY2hyZWl0dW5nPkI8L0tJTEwvIgorIj5JPFplaXTDvGJlcnNjaHJlaXR1bmc+IHZlcndlbmRldCwgd29iZWkgSTxTaWduYWw+IGRhcyBtaXQgQjwtLXNpZ25hbD4gIgorInNwZXppZml6aWVydGUgU2lnbmFsIGlzdC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTQ5Cittc2dpZCAiIgorIkk8c2NoZWR1bGU+IGlzIGEgbGlzdCBvZiBhdCBsZWFzdCB0d28gaXRlbXMgc2VwYXJhdGVkIGJ5IHNsYXNoZXMgKEI8Lz4pOyAiCisiZWFjaCBpdGVtIG1heSBiZSBCPC0+STxzaWduYWwtbnVtYmVyPiBvciBbQjwtPl1JPHNpZ25hbC1uYW1lPiwgd2hpY2ggbWVhbnMgIgorInRvIHNlbmQgdGhhdCBzaWduYWwsIG9yIEk8dGltZW91dD4sIHdoaWNoIG1lYW5zIHRvIHdhaXQgdGhhdCBtYW55IHNlY29uZHMgIgorImZvciBwcm9jZXNzZXMgdG8gZXhpdCwgb3IgQjxmb3JldmVyPiwgd2hpY2ggbWVhbnMgdG8gcmVwZWF0IHRoZSByZXN0IG9mIHRoZSAiCisic2NoZWR1bGUgZm9yZXZlciBpZiBuZWNlc3NhcnkuIgorbXNnc3RyICIiCisiSTxQbGFuPiBpc3QgZWluZSBMaXN0ZSB2b24gbWluZGVzdGVucyB6d2VpIGR1cmNoIFNjaHLDpGdzdHJpY2hlIChCPC8+KSAgIgorImdldHJlbm50ZW4gUHVua3RlbjsgamVkZXIgUHVua3Qga2FubiBhdXMgQjwtPkk8U2lnbmFsbnVtbWVyPiBvZGVyIFtCPC0+XSIKKyJJPFNpZ25hbG5hbWU+IGJlc3RlaGVuLCB3YXMgYmVkZXV0ZXQsIGRhc3MgZGllc2VzIFNpZ25hbCBnZXNlbmRldCB3ZXJkZW4gIgorInNvbGwsIG9kZXIgYXVzIEk8WmVpdMO8YmVyc2NocmVpdHVuZz4sIHdhcyBiZWRldXRldCwgZGFzcyBzb3ZpZWxlIFNla3VuZGVuICIKKyJhdWYgZGFzIEJlZW5kZW4gdm9uIFByb3plc3NlbiBnZXdhcnRldCB3ZXJkZW4gc29sbCwgb2RlciBhdXMgQjxmb3JldmVyPiB3YXMgIgorImJlZGV1dGV0LCBkZW4gUmVzdCBkZXMgUGxhbnMgZmFsbHMgbm90d2VuZGlnIGbDvHIgaW1tZXIgenUgd2llZGVyaG9sZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjE1OQorbXNnaWQgIiIKKyJJZiB0aGUgZW5kIG9mIHRoZSBzY2hlZHVsZSBpcyByZWFjaGVkIGFuZCBCPGZvcmV2ZXI+IGlzIG5vdCBzcGVjaWZpZWQsIHRoZW4gIgorIkI8c3RhcnQtc3RvcC1kYWVtb24+IGV4aXRzIHdpdGggZXJyb3Igc3RhdHVzIDIuICBJZiBhIHNjaGVkdWxlIGlzIHNwZWNpZmllZCwgIgorInRoZW4gYW55IHNpZ25hbCBzcGVjaWZpZWQgd2l0aCBCPC0tc2lnbmFsPiBpcyBpZ25vcmVkLiIKK21zZ3N0ciAiIgorIkZhbGxzIGRhcyBFbmRlIGRlcyBQbGFucyBlcnJlaWNodCB3aXJkIHVuZCBCPGZvcmV2ZXI+IG5pY2h0IHNwZXppZml6aWVydCAiCisid3VyZGUsIGRhbm4gYmVlbmRldCBzaWNoIGRlciBCPHN0YXJ0LXN0b3AtZGFlbW9uPiBtaXQgZGVtIEZlaGxlcnN0YXR1cyAyLiAiCisiRmFsbHMgZWluIFBsYW4gc3BlemlmaXppZXJ0IHd1cmRlLCBkYW5uIHdpcmQgamVkZXMgbWl0IEI8LS1zaWduYWw+ICIKKyJzcGV6aWZpemllcnRlIFNpZ25hbCBpZ25vcmllcnQuIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxNTkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1hPiwgQjwtLXN0YXJ0YXM+IEk8cGF0aG5hbWU+IgorbXNnc3RyICJCPC1hPiwgQjwtLXN0YXJ0YXM+IEk8UGZhZG5hbWU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjE2NworbXNnaWQgIiIKKyJXaXRoIEI8LS1zdGFydD4sIHN0YXJ0IHRoZSBwcm9jZXNzIHNwZWNpZmllZCBieSBJPHBhdGhuYW1lPi4gIElmIG5vdCAiCisic3BlY2lmaWVkLCBkZWZhdWx0cyB0byB0aGUgYXJndW1lbnQgZ2l2ZW4gdG8gQjwtLWV4ZWM+LiIKK21zZ3N0ciAiIgorIk1pdCBCPC0tc3RhcnQ+IHdpcmQgZGVyIMO8YmVyIEk8UGZhZG5hbWU+IHNwZXppZml6aWVydGUgUHJvemVzcyBnZXN0YXJ0ZXQuICIKKyJGYWxscyBuaWNodCBhbmdlZ2ViZW4sIHdlcmRlbiBzdGFuZGFyZG3DpMOfaWcgZGllIGFuIEI8LS1leGVjPiDDvGJlcmdlYmVuZW4gIgorIkFyZ3VtZW50ZSB2ZXJ3ZW5kZXQuIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxNjcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC10PiwgQjwtLXRlc3Q+IgorbXNnc3RyICJCPC10PiwgQjwtLXRlc3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjE3MQorbXNnaWQgIiIKKyJQcmludCBhY3Rpb25zIHRoYXQgd291bGQgYmUgdGFrZW4gYW5kIHNldCBhcHByb3ByaWF0ZSByZXR1cm4gdmFsdWUsIGJ1dCB0YWtlICIKKyJubyBhY3Rpb24uIgorbXNnc3RyICIiCisiR2ViZSBkaWUgQWt0aW9uZW4gYXVzLCBkaWUgZXJsZWRpZ3Qgd8O8cmRlbiB1bmQgc2V0emUgZGllIGVudHNwcmVjaGVuZGVuICIKKyJSw7xja2dhYmV3ZXJ0ZSwgZsO8aHJlIGFiZXIga2VpbmUgQWt0aW9uZW4gZHVyY2guIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxNzEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1vPiwgQjwtLW9rbm9kbz4iCittc2dzdHIgIkI8LW8+LCBCPC0tb2tub2RvPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxNzQKK21zZ2lkICJSZXR1cm4gZXhpdCBzdGF0dXMgMCBpbnN0ZWFkIG9mIDEgaWYgbm8gYWN0aW9ucyBhcmUgKHdvdWxkIGJlKSB0YWtlbi4iCittc2dzdHIgIiIKKyJMaWVmZXJ0IGRlbiBSw7xja2dhYmV3ZXJ0IDAgYW5zdGF0dCAxIGZhbGxzIGtlaW5lIEFrdGlvbmVuIGF1c2dlZsO8aHJ0IHd1cmRlbiAiCisiKHfDvHJkZW4pLiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTc0CisjLCBuby13cmFwCittc2dpZCAiQjwtcT4sIEI8LS1xdWlldD4iCittc2dzdHIgIkI8LXE+LCBCPC0tcXVpZXQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjE3NworbXNnaWQgIkRvIG5vdCBwcmludCBpbmZvcm1hdGlvbmFsIG1lc3NhZ2VzOyBvbmx5IGRpc3BsYXkgZXJyb3IgbWVzc2FnZXMuIgorbXNnc3RyICJHZWJlIGtlaW5lIGluZm9ybWF0aXZlbiBNZWxkdW5nZW4gYXVzLCB6ZWlnZSBudXIgRmVobGVybWVsZHVuZ2VuIGFuLiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTc3CisjLCBuby13cmFwCittc2dpZCAiQjwtYz4sIEI8LS1jaHVpZD4gSTx1c2VybmFtZT58STx1aWQ+W0I8Oj5JPGdyb3VwPnxJPGdpZD5dIgorbXNnc3RyICJCPC1jID4sIEI8IC0tY2h1aWQgPkk8QmVudXR6ZXJuYW1lPnxJPHVpZD5bQjw6Pkk8R3J1cHBlPnxJPGdpZD5dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjE5NQorbXNnaWQgIiIKKyJDaGFuZ2UgdG8gdGhpcyB1c2VybmFtZS91aWQgYmVmb3JlIHN0YXJ0aW5nIHRoZSBwcm9jZXNzLiBZb3UgY2FuIGFsc28gIgorInNwZWNpZnkgYSBncm91cCBieSBhcHBlbmRpbmcgYSBCPDo+LCB0aGVuIHRoZSBncm91cCBvciBnaWQgaW4gdGhlIHNhbWUgd2F5ICIKKyJhcyB5b3Ugd291bGQgZm9yIHRoZSBgY2hvd24nIGNvbW1hbmQgKEk8dXNlcj5CPDo+STxncm91cD4pLiAgSWYgYSB1c2VyIGlzICIKKyJzcGVjaWZpZWQgd2l0aG91dCBhIGdyb3VwLCB0aGUgcHJpbWFyeSBHSUQgZm9yIHRoYXQgdXNlciBpcyB1c2VkLiAgV2hlbiAiCisidXNpbmcgdGhpcyBvcHRpb24geW91IG11c3QgcmVhbGl6ZSB0aGF0IHRoZSBwcmltYXJ5IGFuZCBzdXBwbGVtZW50YWwgZ3JvdXBzICIKKyJhcmUgc2V0IGFzIHdlbGwsIGV2ZW4gaWYgdGhlIEI8LS1ncm91cD4gb3B0aW9uIGlzIG5vdCBzcGVjaWZpZWQuIFRoZSBCPC0tIgorImdyb3VwPiBvcHRpb24gaXMgb25seSBmb3IgZ3JvdXBzIHRoYXQgdGhlIHVzZXIgaXNuJ3Qgbm9ybWFsbHkgYSBtZW1iZXIgb2YgIgorIihsaWtlIGFkZGluZyBwZXIgcHJvY2VzcyBncm91cCBtZW1iZXJzaGlwIGZvciBnZW5lcmljIHVzZXJzIGxpa2UgQjxub2JvZHk+KS4iCittc2dzdHIgIiIKKyJXZWNoc2VsZSB2b3IgZGVtIFN0YXJ0IGRlcyBQcm96ZXNzZXMgenUgZGllc2VtIEJlbnV0emVybmFtZS91aWQuIFNpZSBrw7ZubmVuICIKKyJkdXJjaCBBbmjDpG5nZW4gdm9uIEI8Oj4gYXVjaCBkaWUgR3J1cHBlIHNwZXppZml6aWVyZW4sIGluIGRpZXNlbSBGYWxsIHdpcmQgIgorImRpZSBHcnVwcGUgb2RlciBnaWQgd2llIGJlaSBkZW0gwrtjaG93bsKrLUJlZmVobCAoSTxCZW51dHplcj5CPDo+STxHcnVwcGU+KSAiCisiYW5nZWdlYmVuLiBGYWxscyBlaW4gQmVudXR6ZXIgb2huZSBHcnVwcGUgYW5nZWdlYmVuIGlzdCwgd2lyZCBkaWUgcHJpbcOkcmUgIgorIkdJRCBmw7xyIGRpZXNlbiBCZW51dHplciB2ZXJ3YW5kdC4gV2VubiBTaWUgZGllc2UgT3B0aW9uIHZlcndlbmRlbiwgbcO8c3NlbiAiCisiU2llIGRhcmFuIGRlbmtlbiwgZGFzcyBkaWUgcHJpbcOkcmUgdW5kIHp1c8OkdHpsaWNoZSBHcnVwcGVuIGF1Y2ggZ2VzZXR6dCAiCisid2VyZGVuLCBzZWxic3Qgd2VubiBkaWUgT3B0aW9uIEI8LS1ncm91cD4gbmljaHQgYW5nZWdlYmVuIHdpcmQuIERpZSBPcHRpb24gIgorIkI8LS1ncm91cD4gaXN0IG51ciBmw7xyIEdydXBwZW4sIGluIGRlbmVuIGRlciBCZW51dHplciBub3JtYWxlcndlaXNlIGtlaW4gIgorIk1pdGdsaWVkIGlzdCAod2llIGRhcyBIaW56dWbDvGdlbiB2b24gcHJvLVByb3plc3MgR3J1cHBlbm1pdGdsaWVkc2NoYWZ0ZW4gZsO8ciAiCisiZ2VuZXJpc2NoZSBCZW51dHplciB3aWUgQjxub2JvZHk+KS4iCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjE5NQorIywgbm8td3JhcAorbXNnaWQgIkI8LXI+LCBCPC0tY2hyb290PiBJPHJvb3Q+IgorbXNnc3RyICJCPC1yPiwgQjwtLWNocm9vdD4gSTxXdXJ6ZWw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjIwMQorbXNnaWQgIiIKKyJDaGRpciBhbmQgY2hyb290IHRvIEk8cm9vdD4gYmVmb3JlIHN0YXJ0aW5nIHRoZSBwcm9jZXNzLiBQbGVhc2Ugbm90ZSB0aGF0ICIKKyJ0aGUgcGlkZmlsZSBpcyBhbHNvIHdyaXR0ZW4gYWZ0ZXIgdGhlIGNocm9vdC4iCittc2dzdHIgIiIKKyJDaGRpciB1bmQgY2hyb290IHZvciBkZW0gU3RhcnQgZGVzIFByb3plc3NlIHp1IEk8V3VyemVsPi4gQml0dGUgYmVhY2h0ZW4gIgorIlNpZSwgZGFzcyBkaWUgUElELURhdGVpIGF1Y2ggbmFjaCBkZW0gY2hyb290IGdlc2NocmllYmVuIHdpcmQuIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyMDEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1kPiwgQjwtLWNoZGlyPiBJPHBhdGg+IgorbXNnc3RyICJCPC1kPiwgQjwtLWNoZGlyPiBJPFBmYWQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjIwOQorbXNnaWQgIiIKKyJDaGRpciB0byBJPHBhdGg+IGJlZm9yZSBzdGFydGluZyB0aGUgcHJvY2Vzcy4gVGhpcyBpcyBkb25lIGFmdGVyIHRoZSBjaHJvb3QgIgorImlmIHRoZSBCPC1yPnxCPC0tY2hyb290PiBvcHRpb24gaXMgc2V0LiBXaGVuIG5vdCBzcGVjaWZpZWQsIHN0YXJ0LXN0b3AtIgorImRhZW1vbiB3aWxsIGNoZGlyIHRvIHRoZSByb290IGRpcmVjdG9yeSBiZWZvcmUgc3RhcnRpbmcgdGhlIHByb2Nlc3MuIgorbXNnc3RyICIiCisiQ2hkaXIgdm9yIGRlbSBTdGFydGVuIGRlcyBQcm96ZXNzZXMgenUgSTxQZmFkPi4gRGllcyB3aXJkLCBmYWxscyBkaWUgQjwtcj58IgorIkI8LS1jaHJvb3Q+IE9wdGlvbiBnZXNldHp0IGlzdCwgbmFjaCBkZW0gY2hyb290IGR1cmNoZ2Vmw7xocnQuIEZhbGxzIG5pY2h0ICIKKyJhbmdlZ2ViZW4sIHdpcmQgc3RhcnQtc3RvcC1kYWVtb24gdm9yIGRlbSBQcm96ZXNzLVN0YXJ0IGluIGRhcyAiCisiV3VyemVsdmVyemVpY2huaXMgd2VjaHNlbG4uIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyMDkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1iPiwgQjwtLWJhY2tncm91bmQ+IgorbXNnc3RyICJCPC1iPiwgQjwtLWJhY2tncm91bmQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjIyMQorbXNnaWQgIiIKKyJUeXBpY2FsbHkgdXNlZCB3aXRoIHByb2dyYW1zIHRoYXQgZG9uJ3QgZGV0YWNoIG9uIHRoZWlyIG93bi4gVGhpcyBvcHRpb24gIgorIndpbGwgZm9yY2UgQjxzdGFydC1zdG9wLWRhZW1vbj4gdG8gZm9yayBiZWZvcmUgc3RhcnRpbmcgdGhlIHByb2Nlc3MsIGFuZCAiCisiZm9yY2UgaXQgaW50byB0aGUgYmFja2dyb3VuZC4gIEI8V0FSTklORzogc3RhcnQtc3RvcC1kYWVtb24+IGNhbm5vdCBjaGVjayAiCisidGhlIGV4aXQgc3RhdHVzIGlmIHRoZSBwcm9jZXNzIGZhaWxzIHRvIGV4ZWN1dGUgZm9yIEI8YW55PiByZWFzb24uIFRoaXMgaXMgYSAiCisibGFzdCByZXNvcnQsIGFuZCBpcyBvbmx5IG1lYW50IGZvciBwcm9ncmFtcyB0aGF0IGVpdGhlciBtYWtlIG5vIHNlbnNlICIKKyJmb3JraW5nIG9uIHRoZWlyIG93biwgb3Igd2hlcmUgaXQncyBub3QgZmVhc2libGUgdG8gYWRkIHRoZSBjb2RlIGZvciB0aGVtIHRvICIKKyJkbyB0aGlzIHRoZW1zZWx2ZXMuIgorbXNnc3RyICIiCisiVHlwaXNjaGVyd2Vpc2UgdmVyd2VuZGV0IGbDvHIgUHJvZ3JhbW1lLCBkaWUgc2ljaCBuaWNodCBzZWxic3TDpG5kaWcgYWJsw7ZzZW4uICIKKyJEaWVzZSBPcHRpb24gendpbmd0IEI8c3RhcnQtc3RvcC1kYWVtb24+IHZvciBkZW0gU3RhcnQgZGVzIFByb3plc3NlcyBlaW5lbiAiCisiRm9yayBkdXJjaHp1ZsO8aHJlbiwgdW5kIHp3aW5ndCBkaWVzZW4gZGFubiBpbiBkZW4gSGludGVyZ3J1bmQuIEI8V0FSTlVORzogIgorInN0YXJ0LXN0b3AtZGFlbW9uPiBrYW5uIG5pY2h0IGRlbiBSw7xja2dhYmV3ZXJ0IMO8YmVycHLDvGZlbiwgZmFsbHMgZGVyIFByb3plc3MgIgorImF1cyBCPGlyZ2VuZGVpbmVtPiBHcnVuZCBuaWNodCBzdGFydGV0LiBEaWVzIGlzdCBlaW4gbGV0enRlcyBNaXR0ZWwgdW5kIGlzdCAiCisibnVyIGbDvHIgUHJvZ3JhbW1lIGdlZGFjaHQsIGJlaSBkZW5lbiBkYXMgc2VsYnN0c3TDpG5kaWdlIEZvcmtlbiBrZWluZW4gU2lubiAiCisiZXJnaWJ0IG9kZXIgd28gZXMgbmljaHQgc2lubnZvbGwgaXN0LCBkZW4gQ29kZSBoaWVyZsO8ciBoaW56dXp1ZsO8Z2VuLiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjIxCisjLCBuby13cmFwCittc2dpZCAiQjwtTj4sIEI8LS1uaWNlbGV2ZWw+IEk8aW50PiIKK21zZ3N0ciAiQjwtTj4sIEI8LS1uaWNlbGV2ZWw+IEk8R2FuenphaGw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjIyNAorbXNnaWQgIlRoaXMgYWx0ZXJzIHRoZSBwcmlvcml0eSBvZiB0aGUgcHJvY2VzcyBiZWZvcmUgc3RhcnRpbmcgaXQuIgorbXNnc3RyICJEaWVzIMOkbmRlcnQgZGllIFByaW9yaXTDpHQgZGVzIFByb3plc3NlcyBiZXZvciBlciBnZXN0YXJ0ZXQgd2lyZC4iCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjIyNAorIywgbm8td3JhcAorbXNnaWQgIkI8LVA+LCBCPC0tcHJvY3NjaGVkPiBJPHBvbGljeT5CPDo+STxwcmlvcml0eT4iCittc2dzdHIgIkI8LVA+LCBCPC0tcHJvY3NjaGVkPiBJPFN0cmF0ZWdpZT5CPDo+STxQcmlvcml0w6R0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyMzAKK21zZ2lkICIiCisiVGhpcyBhbHRlcnMgdGhlIHByb2Nlc3Mgc2NoZWR1bGVyIHBvbGljeSBhbmQgcHJpb3JpdHkgb2YgdGhlIHByb2Nlc3MgYmVmb3JlICIKKyJzdGFydGluZyBpdC4gVGhlIHByaW9yaXR5IGNhbiBiZSBvcHRpb25hbGx5IHNwZWNpZmllZCBieSBhcHBlbmRpbmcgYSBCPDo+ICIKKyJmb2xsb3dlZCBieSB0aGUgdmFsdWUuIFRoZSBkZWZhdWx0IEk8cHJpb3JpdHk+IGlzIDAuIFRoZSBjdXJyZW50bHkgc3VwcG9ydGVkICIKKyJwb2xpY3kgdmFsdWVzIGFyZSBCPG90aGVyPiwgQjxmaWZvPiBhbmQgQjxycj4uIgorbXNnc3RyICIiCisiRGllcyDDpG5kZXJ0IGRpZSBQcm96ZXNzc3RldWVyc3RyYXRlZ2llICjCu3Byb2Nlc3Mgc2NoZWR1bGVyIHBvbGljecKrKSB1bmQgZGllICIKKyJQcmlvcml0w6R0IGRlcyBQcm96ZXNzZXMsIGJldm9yIGRpZXNlciBnZXN0YXJ0ZXQgd2lyZC4gRGllIFByaW9yaXTDpHQga2FubiAiCisib3B0aW9uYWwgZmVzdGdlbGVndCB3ZXJkZW4sIGluZGVtIGVpbiBCPDo+IGdlZm9sZ3Qgdm9uIGVpbmVtIFdlcnQgYW5nZWdlYmVuICIKKyJ3aXJkLiBEaWUgU3RhbmRhcmQtSTxQcmlvcml0w6R0PiBiZXRyw6RndCAwLiBEaWUgZGVyemVpdCB1bnRlcnN0w7x0enRlbiBXZXJ0ZSAiCisiZsO8ciBkaWUgU3RyYXRlZ2llIGxhdXRlbiBCPG90aGVyPiwgQjxmaWZvPiB1bmQgQjxycj4uIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyMzAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1JPiwgQjwtLWlvc2NoZWQ+IEk8Y2xhc3M+Qjw6Pkk8cHJpb3JpdHk+IgorbXNnc3RyICJCPC1JPiwgQjwtLWlvc2NoZWQ+IEk8S2xhc3NlPkI8Oj5JPFByaW9yaXTDpHQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjIzNworbXNnaWQgIiIKKyJUaGlzIGFsdGVycyB0aGUgSU8gc2NoZWR1bGVyIGNsYXNzIGFuZCBwcmlvcml0eSBvZiB0aGUgcHJvY2VzcyBiZWZvcmUgIgorInN0YXJ0aW5nIGl0LiBUaGUgcHJpb3JpdHkgY2FuIGJlIG9wdGlvbmFsbHkgc3BlY2lmaWVkIGJ5IGFwcGVuZGluZyBhIEI8Oj4gIgorImZvbGxvd2VkIGJ5IHRoZSB2YWx1ZS4gVGhlIGRlZmF1bHQgSTxwcmlvcml0eT4gaXMgNCwgdW5sZXNzIEk8Y2xhc3M+IGlzICIKKyJCPGlkbGU+LCB0aGVuIEk8cHJpb3JpdHk+IHdpbGwgYWx3YXlzIGJlIDcuIFRoZSBjdXJyZW50bHkgc3VwcG9ydGVkIHZhbHVlcyAiCisiZm9yIEk8Y2xhc3M+IGFyZSBCPGlkbGU+LCBCPGJlc3QtZWZmb3J0PiBhbmQgQjxyZWFsLXRpbWU+LiIKK21zZ3N0ciAiIgorIkRpZXMgw6RuZGVydCBkaWUgSU8tU3RldWVya2xhc3NlICjCu0lPIHNjaGVkdWxlciBjbGFzc8KrKSB1bmQgZGllIFByaW9yaXTDpHQgZGVzICIKKyJQcm96ZXNzZXMsIGJldm9yIGRpZXNlciBnZXN0YXJ0ZXQgd2lyZC4gRGllIFByaW9yaXTDpHQga2FubiBvcHRpb25hbCAiCisiZmVzdGdlbGVndCB3ZXJkZW4sIGluZGVtIGVpbiBCPDo+IGdlZm9sZ3Qgdm9uIGVpbmVtIFdlcnQgYW5nZWdlYmVuIHdpcmQuIERpZSAiCisiU3RhbmRhcmQtSTxQcmlvcml0w6R0PiBiZXRyw6RndCA0LCBhdcOfZXIgSTxLbGFzc2U+IGxhdXRldCBCPGlkbGU+LCBkYW5uICIKKyJiZXRyw6RndCBzaWUgaW1tZXIgNy4gRGllIGRlcnplaXQgdW50ZXJzdMO8dHp0ZW4gV2VydGUgZsO8ciBkaWUgSTxLbGFzc2U+ICIKKyJsYXV0ZW4gQjxpZGxlPiwgQjxiZXN0LWVmZm9ydD4gdW5kIEI8cmVhbC10aW1lPi4iCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjIzNworIywgbm8td3JhcAorbXNnaWQgIkI8LWs+LCBCPC0tdW1hc2s+IEk8bWFzaz4iCittc2dzdHIgIkI8LWs+LCBCPC0tdW1hc2s+IEk8TWFza2U+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjI0MAorbXNnaWQgIlRoaXMgc2V0cyB0aGUgdW1hc2sgb2YgdGhlIHByb2Nlc3MgYmVmb3JlIHN0YXJ0aW5nIGl0LiIKK21zZ3N0ciAiRGllcyBzZXR6dCBkaWUgdW1hc2sgZGVzIFByb3plc3NlcyBiZXZvciBlciBnZXN0YXJ0ZXQgd2lyZC4iCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjI0MAorIywgbm8td3JhcAorbXNnaWQgIkI8LW0+LCBCPC0tbWFrZS1waWRmaWxlPiIKK21zZ3N0ciAiQjwtbT4sIEI8LS1tYWtlLXBpZGZpbGU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjI1NQorbXNnaWQgIiIKKyJVc2VkIHdoZW4gc3RhcnRpbmcgYSBwcm9ncmFtIHRoYXQgZG9lcyBub3QgY3JlYXRlIGl0cyBvd24gcGlkIGZpbGUuIFRoaXMgIgorIm9wdGlvbiB3aWxsIG1ha2UgQjxzdGFydC1zdG9wLWRhZW1vbj4gY3JlYXRlIHRoZSBmaWxlIHJlZmVyZW5jZWQgd2l0aCBCPC0tIgorInBpZGZpbGU+IGFuZCBwbGFjZSB0aGUgcGlkIGludG8gaXQganVzdCBiZWZvcmUgZXhlY3V0aW5nIHRoZSBwcm9jZXNzLiBOb3RlLCAiCisidGhlIGZpbGUgd2lsbCBub3QgYmUgcmVtb3ZlZCB3aGVuIHN0b3BwaW5nIHRoZSBwcm9ncmFtLiAgQjxOT1RFOj4gVGhpcyAiCisiZmVhdHVyZSBtYXkgbm90IHdvcmsgaW4gYWxsIGNhc2VzLiBNb3N0IG5vdGFibHkgd2hlbiB0aGUgcHJvZ3JhbSBiZWluZyAiCisiZXhlY3V0ZWQgZm9ya3MgZnJvbSBpdHMgbWFpbiBwcm9jZXNzLiBCZWNhdXNlIG9mIHRoaXMsIGl0IGlzIHVzdWFsbHkgb25seSAiCisidXNlZnVsIHdoZW4gY29tYmluZWQgd2l0aCB0aGUgQjwtLWJhY2tncm91bmQ+IG9wdGlvbi4iCittc2dzdHIgIiIKKyJWZXJ3ZW5kZXQsIHdlbm4gZWluIFByb2dyYW1tIGdlc3RhcnRldCB3aXJkLCBkYXMga2VpbmUgZWlnZW5lIFBJRC1EYXRlaSAiCisiYW5sZWd0LiBEaWVzZSBPcHRpb24gc29yZ3QgZGFmw7xyLCBkYXNzIEI8c3RhcnQtc3RvcC1kYWVtb24+IGRpZSBtaXQgQjwtLSIKKyJwaWRmaWxlPiByZWZlcmVuemllcnRlIERhdGVpIGFubGVndCB1bmQgZGllIFBJRCBrdXJ6IHZvciBkZXIgQXVzZsO8aHJ1bmcgZGVzICIKKyJQcm96ZXNzZSBoaW5laW5sZWd0LiBCZWFjaHRlbiBTaWUsIGRhc3MgZGllIERhdGVpIG5pY2h0IGVudGZlcm50IHdpcmQsIHdlbm4gIgorImRhcyBQcm9ncmFtbSBiZWVuZGV0IHdpcmQuIEI8SElOV0VJUzo+IERpZXNlIEZ1bmt0aW9uIGvDtm5udGUgaW4gbmljaHQgYWxsZW4gIgorIkbDpGxsZW4gZnVua3Rpb25pZXJlbi4gSW5zYmVzb25kZXJlIHdlbm4gZGFzIGF1c3p1ZsO8aHJlbmRlIFByb2dyYW1tIHNpY2ggdm9tICIKKyJIYXVwdHByb3plc3MgZm9ya3QuIERlc2hhbGIgaXN0IGRpZXNlIE9wdGlvbiBub3JtYWxlcndlaXNlIG51ciBpbiAiCisiS29tYmluYXRpb24gbWl0IGRlciBPcHRpb24gQjwtLWJhY2tncm91bmQ+IHNpbm52b2xsLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyNTgKK21zZ2lkICJQcmludCB2ZXJib3NlIGluZm9ybWF0aW9uYWwgbWVzc2FnZXMuIgorbXNnc3RyICJHaWJ0IGF1c2bDvGhybGljaGUgaW5mb3JtYXRpdmUgTWVsZHVuZ2VuIGF1cy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjcwCittc2dpZCAiIgorIlRoZSByZXF1ZXN0ZWQgYWN0aW9uIHdhcyBwZXJmb3JtZWQuIElmIEI8LS1va25vZG8+IHdhcyBzcGVjaWZpZWQsIGl0J3MgYWxzbyAiCisicG9zc2libGUgdGhhdCBub3RoaW5nIGhhZCB0byBiZSBkb25lLiAgVGhpcyBjYW4gaGFwcGVuIHdoZW4gQjwtLXN0YXJ0PiB3YXMgIgorInNwZWNpZmllZCBhbmQgYSBtYXRjaGluZyBwcm9jZXNzIHdhcyBhbHJlYWR5IHJ1bm5pbmcsIG9yIHdoZW4gQjwtLXN0b3A+IHdhcyAiCisic3BlY2lmaWVkIGFuZCB0aGVyZSB3ZXJlIG5vIG1hdGNoaW5nIHByb2Nlc3Nlcy4iCittc2dzdHIgIiIKKyJEaWUgYW5nZWZvcmRlcnRlIEFrdGlvbiB3dXJkZSBkdXJjaGdlZsO8aHJ0LiBGYWxscyBCPC0tb2tub2RvPiBhbmdlZ2ViZW4gIgorInd1cmRlLCBrYW5uIGVzIGF1Y2ggc2VpbiwgZGFzcyBuaWNodCBkdXJjaGdlZsO8aHJ0IHd1cmRlLiBEYXMga2FubiBwYXNzaWVyZW4sICIKKyJ3ZW5uIEI8LS1zdGFydD4gYW5nZWdlYmVuIHd1cmRlIHVuZCBkZXIgcGFzc2VuZGUgUHJvemVzcyBiZXJlaXRzIGxpZWYgb2RlciAiCisid2VubiBCPC0tc3RvcD4gYW5nZWdlYmVuIHd1cmRlIHVuZCBlcyBrZWluZW4gcGFzc2VuZGVuIFByb3plc3MgZ2FiLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyNzUKK21zZ2lkICJJZiBCPC0tb2tub2RvPiB3YXMgbm90IHNwZWNpZmllZCBhbmQgbm90aGluZyB3YXMgZG9uZS4iCittc2dzdHIgIkZhbGxzIEI8LS1va25vZG8+IG5pY2h0IGFuZ2VnZWJlbiB3YXIgdW5kIG5pY2h0cyBkdXJjaGdlZsO8aHJ0IHd1cmRlLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyODMKK21zZ2lkICIiCisiSWYgQjwtLXN0b3A+IGFuZCBCPC0tcmV0cnk+IHdlcmUgc3BlY2lmaWVkLCBidXQgdGhlIGVuZCBvZiB0aGUgc2NoZWR1bGUgd2FzICIKKyJyZWFjaGVkIGFuZCB0aGUgcHJvY2Vzc2VzIHdlcmUgc3RpbGwgcnVubmluZy4iCittc2dzdHIgIiIKKyJGYWxscyBCPC0tc3RvcD4gdW5kIEI8LS1yZXRyeT4gYW5nZWdlYmVuIHdhcmVuLCBhYmVyIGRhcyBFbmRlIGRlcyBQbGFucyAiCisiZXJyZWljaHQgd3VyZGUgdW5kIGRpZSBQcm96ZXNzZSBub2NoIGxpZWZlbi4iCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjI4MyBzdGFydC1zdG9wLWRhZW1vbi44OjI5NQorIywgbm8td3JhcAorbXNnaWQgIkI8Mz4iCittc2dzdHIgIkI8Mz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6Mjg2Cittc2dpZCAiQW55IG90aGVyIGVycm9yLiIKK21zZ3N0ciAiSmVkZXIgYW5kZXJlIEZlaGxlci4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6Mjg5Cittc2dpZCAiIgorIldoZW4gdXNpbmcgdGhlIEI8LS1zdGF0dXM+IGNvbW1hbmQsIHRoZSBmb2xsb3dpbmcgc3RhdHVzIGNvZGVzIGFyZSByZXR1cm5lZDoiCittc2dzdHIgIiIKKyJCZWkgZGVyIFZlcndlbmR1bmcgZGVzIEJlZmVobHMgQjwtLXN0YXR1cz4gd2VyZGVuIGRpZSBmb2xnZW5kZW4gU3RhdHVzY29kZXMgIgorInp1csO8Y2tnZWxpZWZlcnQ6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjI5MgorbXNnaWQgIlByb2dyYW0gaXMgcnVubmluZy4iCittc2dzdHIgIlByb2dyYW1tIGzDpHVmdC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6Mjk1Cittc2dpZCAiUHJvZ3JhbSBpcyBub3QgcnVubmluZyBhbmQgdGhlIHBpZCBmaWxlIGV4aXN0cy4iCittc2dzdHIgIlByb2dyYW1tIGzDpHVmdCBuaWNodCB1bmQgZGllIFBJRC1EYXRlaSBleGlzdGllcnQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjI5OAorbXNnaWQgIlByb2dyYW0gaXMgbm90IHJ1bm5pbmcuIgorbXNnc3RyICJQcm9ncmFtbSBsw6R1ZnQgbmljaHQuIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyOTgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPDQ+IgorbXNnc3RyICJCPDQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjMwMQorbXNnaWQgIlVuYWJsZSB0byBkZXRlcm1pbmUgcHJvZ3JhbSBzdGF0dXMuIgorbXNnc3RyICJQcm9ncmFtbXN0YXR1cyBrYW5uIG5pY2h0IGJlc3RpbW10IHdlcmRlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MzA1Cittc2dpZCAiIgorIlN0YXJ0IHRoZSBCPGZvb2Q+IGRhZW1vbiwgdW5sZXNzIG9uZSBpcyBhbHJlYWR5IHJ1bm5pbmcgKGEgcHJvY2VzcyBuYW1lZCAiCisiZm9vZCwgcnVubmluZyBhcyB1c2VyIGZvb2QsIHdpdGggcGlkIGluIGZvb2QucGlkKToiCittc2dzdHIgIiIKKyJTdGFydGUgZGVuIERhZW1vbiBCPGZvb2Q+IGZhbGxzIG5vY2gga2VpbmVyIGzDpHVmdCAoZWluIFByb3plc3MgbWl0IE5hbWVuICIKKyJmb29kLCBkZXIgYWxzIEJlbnV0emVyIGZvb2QgbWl0IFBJRCBpbiBmb29kLnBpZCBsw6R1ZnQpOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODozMDgKKyMsIG5vLXdyYXAKK21zZ2lkICJzdGFydC1zdG9wLWRhZW1vbiAtLXN0YXJ0IC0tb2tub2RvIC0tdXNlciBmb29kIC0tbmFtZSBmb29kIC0tcGlkZmlsZSAvdmFyL3J1bi9mb29kLnBpZCAtLXN0YXJ0YXMgL3Vzci9zYmluL2Zvb2QgLS1jaHVpZCBmb29kIC0tIC0tZGFlbW9uXG4iCittc2dzdHIgInN0YXJ0LXN0b3AtZGFlbW9uIC0tc3RhcnQgLS1va25vZG8gLS11c2VyIGZvb2QgLS1uYW1lIGZvb2QgLS1waWRmaWxlIC92YXIvcnVuL2Zvb2QucGlkIC0tc3RhcnRhcyAvdXNyL3NiaW4vZm9vZCAtLWNodWlkIGZvb2QgLS0gLS1kYWVtb25cbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODozMTEKK21zZ2lkICJTZW5kIEI8U0lHVEVSTT4gdG8gQjxmb29kPiBhbmQgd2FpdCB1cCB0byA1IHNlY29uZHMgZm9yIGl0IHRvIHN0b3A6IgorbXNnc3RyICIiCisiU2NoaWNrZSBCPFNJR1RFUk0+IGFuIEI8Zm9vZD4gdW5kIHdhcnRlIGJpcyB6dSBmw7xuZiBTZWt1bmRlbiBhdWYgc2VpbiAiCisiQmVlbmRlbjoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MzE0CisjLCBuby13cmFwCittc2dpZCAic3RhcnQtc3RvcC1kYWVtb24gLS1zdG9wIC0tb2tub2RvIC0tdXNlciBmb29kIC0tbmFtZSBmb29kIC0tcGlkZmlsZSAvdmFyL3J1bi9mb29kLnBpZCAtLXJldHJ5IDVcbiIKK21zZ3N0ciAic3RhcnQtc3RvcC1kYWVtb24gLS1zdG9wIC0tb2tub2RvIC0tdXNlciBmb29kIC0tbmFtZSBmb29kIC0tcGlkZmlsZSAvdmFyL3J1bi9mb29kLnBpZCAtLXJldHJ5IDVcbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODozMTcKK21zZ2lkICJEZW1vbnN0cmF0aW9uIG9mIGEgY3VzdG9tIHNjaGVkdWxlIGZvciBzdG9wcGluZyBCPGZvb2Q+OiIKK21zZ3N0ciAiVm9yZsO8aHJ1bmcgZWluZXMgYW5nZXBhc3N0ZW4gUGxhbnMgenVtIEJlZW5kZW4gdm9uIEI8Zm9vZD46IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjMyMAorIywgbm8td3JhcAorbXNnaWQgInN0YXJ0LXN0b3AtZGFlbW9uIC0tc3RvcCAtLW9rbm9kbyAtLXVzZXIgZm9vZCAtLW5hbWUgZm9vZCAtLXBpZGZpbGUgL3Zhci9ydW4vZm9vZC5waWQgLS1yZXRyeT1URVJNLzMwL0tJTEwvNVxuIgorbXNnc3RyICJzdGFydC1zdG9wLWRhZW1vbiAtLXN0b3AgLS1va25vZG8gLS11c2VyIGZvb2QgLS1uYW1lIGZvb2QgLS1waWRmaWxlIC92YXIvcnVuL2Zvb2QucGlkIC0tcmV0cnk9VEVSTS8zMC9LSUxMLzVcbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODozMjYKK21zZ2lkICIiCisiTWFyZWsgTWljaGFsa2lld2ljeiBFPGx0Pm1hcmVrbUBpMTdsaW51eGIuaXN0cy5wd3Iud3JvYy5wbEU8Z3Q+IGJhc2VkIG9uIGEgIgorInByZXZpb3VzIHZlcnNpb24gYnkgSWFuIEphY2tzb24gRTxsdD5pYW5AY2hpYXJrLmdyZWVuZW5kLm9yZy51a0U8Z3Q+LiIKK21zZ3N0ciAiIgorIk1hcmVrIE1pY2hhbGtpZXdpY3ogRTxsdD5tYXJla21AaTE3bGludXhiLmlzdHMucHdyLndyb2MucGxFPGd0PiBiYXNpZXJlbmQgIgorImF1ZiBlaW5lciB2b3JoZXJpZ2VuIFZlcnNpb24gdm9uIElhbiBKYWNrc29uIEU8bHQ+aWFuQGNoaWFyay5ncmVlbmVuZC5vcmcuIgorInVrRTxndD4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjMyOAorbXNnaWQgIiIKKyJNYW51YWwgcGFnZSBieSBLbGVlIERpZW5lcyBFPGx0PmtsZWVAbWl0LmVkdUU8Z3Q+LCBwYXJ0aWFsbHkgcmVmb3JtYXR0ZWQgYnkgIgorIklhbiBKYWNrc29uLiIKK21zZ3N0ciAiIgorIkhhbmRidWNoc2VpdGUgdm9uIEtsZWUgRGllbmVzIEU8bHQ+a2xlZUBtaXQuZWR1RTxndD4sIHRlaWx3ZWlzZSB2b24gSWFuICIKKyJKYWNrc29uIHVtZm9ybWF0aWVydC4iCisKKyMuIHR5cGU6IFRICisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6OAorIywgbm8td3JhcAorbXNnaWQgInVwZGF0ZS1hbHRlcm5hdGl2ZXMiCittc2dzdHIgInVwZGF0ZS1hbHRlcm5hdGl2ZXMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxMQorbXNnaWQgIiIKKyJ1cGRhdGUtYWx0ZXJuYXRpdmVzIC0gbWFpbnRhaW4gc3ltYm9saWMgbGlua3MgZGV0ZXJtaW5pbmcgZGVmYXVsdCBjb21tYW5kcyIKK21zZ3N0ciAiIgorInVwZGF0ZS1hbHRlcm5hdGl2ZXMgLSBWZXJ3YWx0dW5nIHN5bWJvbGlzY2hlciBMaW5rcyB6dXIgQmVzdGltbXVuZyB2b24gIgorIlN0YW5kYXJkd2VydGVuIGbDvHIgQmVmZWhsZSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE1Cittc2dpZCAiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBbSTxvcHRpb24+Li4uXSBJPGNvbW1hbmQ+IgorbXNnc3RyICJCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IFtJPE9wdGlvbj4uLi5dIEk8QmVmZWhsPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjIwCittc2dpZCAiIgorIkI8dXBkYXRlLWFsdGVybmF0aXZlcz4gY3JlYXRlcywgcmVtb3ZlcywgbWFpbnRhaW5zIGFuZCBkaXNwbGF5cyBpbmZvcm1hdGlvbiAiCisiYWJvdXQgdGhlIHN5bWJvbGljIGxpbmtzIGNvbXByaXNpbmcgdGhlIERlYmlhbiBhbHRlcm5hdGl2ZXMgc3lzdGVtLiIKK21zZ3N0ciAiIgorIkI8dXBkYXRlLWFsdGVybmF0aXZlcz4gZXJ6ZXVndCwgZW50ZmVybnQsIHZlcndhbHRldCB1bmQgemVpZ3QgZGllICIKKyJJbmZvcm1hdGlvbmVuIMO8YmVyIGRpZSBzeW1ib2xpc2NoZW4gTGlua3MsIGRpZSBkYXMgwrtEZWJpYW4gQWx0ZXJuYXRpdi0iCisiU3lzdGVtwqsgYmlsZGVuLCBhbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyOAorbXNnaWQgIiIKKyJJdCBpcyBwb3NzaWJsZSBmb3Igc2V2ZXJhbCBwcm9ncmFtcyBmdWxmaWxsaW5nIHRoZSBzYW1lIG9yIHNpbWlsYXIgZnVuY3Rpb25zICIKKyJ0byBiZSBpbnN0YWxsZWQgb24gYSBzaW5nbGUgc3lzdGVtIGF0IHRoZSBzYW1lIHRpbWUuICBGb3IgZXhhbXBsZSwgbWFueSAiCisic3lzdGVtcyBoYXZlIHNldmVyYWwgdGV4dCBlZGl0b3JzIGluc3RhbGxlZCBhdCBvbmNlLiAgVGhpcyBnaXZlcyBjaG9pY2UgdG8gIgorInRoZSB1c2VycyBvZiBhIHN5c3RlbSwgYWxsb3dpbmcgZWFjaCB0byB1c2UgYSBkaWZmZXJlbnQgZWRpdG9yLCBpZiBkZXNpcmVkLCAiCisiYnV0IG1ha2VzIGl0IGRpZmZpY3VsdCBmb3IgYSBwcm9ncmFtIHRvIG1ha2UgYSBnb29kIGNob2ljZSBmb3IgYW4gZWRpdG9yIHRvICIKKyJpbnZva2UgaWYgdGhlIHVzZXIgaGFzIG5vdCBzcGVjaWZpZWQgYSBwYXJ0aWN1bGFyIHByZWZlcmVuY2UuIgorbXNnc3RyICIiCisiRXMgaXN0IG3DtmdsaWNoLCBtZWhyZXJlIFByb2dyYW1tZSwgZGllIGRpZSBnbGVpY2hlIG9kZXIgw6RobmxpY2hlICIKKyJGdW5rdGlvbmFsaXTDpHQgYmVyZWl0c3RlbGxlbiwgZ2xlaWNoemVpdGlnIGF1ZiBlaW5lbSBTeXN0ZW0genUgaW5zdGFsbGllcmVuLiAiCisiQmVpc3BpZWxzd2Vpc2Ugc2luZCBhdWYgdmllbGVuIFN5c3RlbWVuIG1laHJlcmUgVGV4dGVkaXRvcmVuIGdsZWljaHplaXRpZyAiCisiaW5zdGFsbGllcnQuIERpZXMgZ2lidCBkZW4gQmVudXR6ZXJuIGVpbmVzIFN5c3RlbXMgZGllIE3DtmdsaWNoa2VpdCwgZmFsbHMgIgorImdld8O8bnNjaHQsIGpld2VpbHMgZWluZW4gYW5kZXJlbiBFZGl0b3IgenUgdmVyd2VuZGVuLCBhbGxlcmRpbmdzIHdpcmQgZXMgIgorImRhbWl0IGbDvHIgZWluIFByb2dyYW1tIHNjaHdpZXJpZywgZWluZW4gZ3V0ZW4gV2FobCBmw7xyIGVpbmVuIEVkaXRvciB6dW0gIgorIlN0YXJ0ZW4genUgdHJlZmZlbiwgZmFsbHMgZGVyIEJlbnV0emVyIGtlaW5lIHNwZXppZWxsZSBXYWhsIGdldHJvZmZlbiBoYXQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NTAKK21zZ2lkICIiCisiRGViaWFuJ3MgYWx0ZXJuYXRpdmVzIHN5c3RlbSBhaW1zIHRvIHNvbHZlIHRoaXMgcHJvYmxlbS4gIEEgZ2VuZXJpYyBuYW1lIGluICIKKyJ0aGUgZmlsZXN5c3RlbSBpcyBzaGFyZWQgYnkgYWxsIGZpbGVzIHByb3ZpZGluZyBpbnRlcmNoYW5nZWFibGUgIgorImZ1bmN0aW9uYWxpdHkuICBUaGUgYWx0ZXJuYXRpdmVzIHN5c3RlbSBhbmQgdGhlIHN5c3RlbSBhZG1pbmlzdHJhdG9yICIKKyJ0b2dldGhlciBkZXRlcm1pbmUgd2hpY2ggYWN0dWFsIGZpbGUgaXMgcmVmZXJlbmNlZCBieSB0aGlzIGdlbmVyaWMgbmFtZS4gICIKKyJGb3IgZXhhbXBsZSwgaWYgdGhlIHRleHQgZWRpdG9ycyBCPGVkPigxKSAgYW5kIEI8bnZpPigxKSAgYXJlIGJvdGggaW5zdGFsbGVkICIKKyJvbiB0aGUgc3lzdGVtLCB0aGUgYWx0ZXJuYXRpdmVzIHN5c3RlbSB3aWxsIGNhdXNlIHRoZSBnZW5lcmljIG5hbWUgSTwvdXNyLyIKKyJiaW4vZWRpdG9yPiB0byByZWZlciB0byBJPC91c3IvYmluL252aT4gYnkgZGVmYXVsdC4gVGhlIHN5c3RlbSBhZG1pbmlzdHJhdG9yICIKKyJjYW4gb3ZlcnJpZGUgdGhpcyBhbmQgY2F1c2UgaXQgdG8gcmVmZXIgdG8gSTwvdXNyL2Jpbi9lZD4gaW5zdGVhZCwgYW5kIHRoZSAiCisiYWx0ZXJuYXRpdmVzIHN5c3RlbSB3aWxsIG5vdCBhbHRlciB0aGlzIHNldHRpbmcgdW50aWwgZXhwbGljaXRseSByZXF1ZXN0ZWQgIgorInRvIGRvIHNvLiIKK21zZ3N0ciAiIgorIkRlYmlhbnMgQWx0ZXJuYXRpdi1TeXN0ZW0gaGF0IGRhcyBaaWVsLCBkaWVzZXMgUHJvYmxlbSB6dSBsw7ZzZW4uIEVpbiAiCisiZ2VuZXJpc2NoZXIgTmFtZSBpbSBEYXRlaXN5c3RlbSB3aXJkIHZvbiBhbGxlbiBEYXRlaWVuLCBkaWUgYXVzdGF1c2NoYmFyZSAiCisiRnVua3Rpb25hbGl0w6R0IGJlcmVpdHN0ZWxsZW4sIHZlcndlbmRldC4gRGFzIEFsdGVybmF0aXYtU3lzdGVtIGJlc3RpbW10ICIKKyJ6dXNhbW1lbiBtaXQgZGVtIFN5c3RlbWFkbWluaXN0cmF0b3Igd2VsY2hlIERhdGVpIHRhdHPDpGNobGljaCBkdXJjaCBkaWVzZW4gIgorImdlbmVyaXNjaGVuIE5hbWVuIHJlZmVyZW56aWVydCB3aXJkLiBGYWxscyBiZWlzcGllbHN3ZWlzZSBzb3dvaGwgZGVyICIKKyJUZXh0ZWRpdG9yIEI8ZWQ+KDEpIGFscyBhdWNoIEI8bnZpPigxKSBpbSBTeXN0ZW0gaW5zdGFsbGllcnQgc2luZCwgd2lyZCBkYXMgIgorIkFsdGVybmF0aXYtU3lzdGVtIGRhZsO8ciBzb3JnZW4sIGRhc3MgZGVyIGdlbmVyaXNjaGUgTmFtZSBJPC91c3IvYmluL2VkaXRvcj4gIgorInN0YW5kYXJkbcOkw59pZyBhdWYgSTwvdXNyL2Jpbi9udmk+IHplaWd0LiBEZXIgU3lzdGVtYWRtaW5pc3RyYXRvciBrYW5uIGRpZXMgIgorIsOEbmRlcm4gdW5kIGRhZsO8ciBzb3JnZW4sIGRhc3MgZXIgc3RhdHRkZXNzZW4gYXVmIEk8L3Vzci9iaW4vZWQ+IHplaWd0LCB1bmQgIgorImRhcyBBbHRlcm5hdGl2LVN5c3RlbSB3aXJkIGRpZXNlIEVpbnN0ZWxsdW5nIG5pY2h0IHZlcsOkbmRlcm4sIGJpcyBlcyAiCisiZXhwbGl6aXQgZGF6dSBhdWZnZWZvcmRlcnQgd2lyZC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo2MAorbXNnaWQgIiIKKyJUaGUgZ2VuZXJpYyBuYW1lIGlzIG5vdCBhIGRpcmVjdCBzeW1ib2xpYyBsaW5rIHRvIHRoZSBzZWxlY3RlZCBhbHRlcm5hdGl2ZS4gICIKKyJJbnN0ZWFkLCBpdCBpcyBhIHN5bWJvbGljIGxpbmsgdG8gYSBuYW1lIGluIHRoZSBJPGFsdGVybmF0aXZlcz4gIgorIkk8ZGlyZWN0b3J5Piwgd2hpY2ggaW4gdHVybiBpcyBhIHN5bWJvbGljIGxpbmsgdG8gdGhlIGFjdHVhbCBmaWxlICIKKyJyZWZlcmVuY2VkLiAgVGhpcyBpcyBkb25lIHNvIHRoYXQgdGhlIHN5c3RlbSBhZG1pbmlzdHJhdG9yJ3MgY2hhbmdlcyBjYW4gYmUgIgorImNvbmZpbmVkIHdpdGhpbiB0aGUgSTwvZXRjPiBkaXJlY3Rvcnk6IHRoZSBGSFMgKHEudi4pIGdpdmVzIHJlYXNvbnMgd2h5IHRoaXMgIgorImlzIGEgR29vZCBUaGluZy4iCittc2dzdHIgIiIKKyJEZXIgZ2VuZXJpc2NoZSBOYW1lIGlzdCBuaWNodCBlaW4gZGlyZWt0ZXIgc3ltYm9saXNjaGVyIExpbmsgYXVmIGRpZSAiCisiYXVzZ2V3w6RobHRlIEFsdGVybmF0aXZlLiBTdGF0dGRlc3NlbiBpc3QgZXMgZWluIHN5bWJvbGlzY2hlciBMaW5rIGF1ZiBlaW5lbiAiCisiTmFtZW4gaW0gSTxBbHRlcm5hdGl2LVZlcnplaWNobmlzPiwgd2VsY2hlcyB3aWVkZXJ1bSBlaW4gc3ltYm9saXNjaGVyIExpbmsgIgorImF1ZiBkaWUgdGF0c8OkY2hsaWNoIHJlZmVyZW56aWVydGUgRGF0ZWkgaXN0LiBEaWVzIGlzdCBzbyByZWFsaXNpZXJ0LCBkYW1pdCAiCisiZGllIMOEbmRlcnVuZ2VuIGRlcyBTeXN0ZW1hZG1pbmlzdHJhdG9ycyBhdWYgZGFzIEk8L2V0Yz4gVmVyemVpY2huaXMgIgorImJlc2NocsOkbmt0IGJsZWliZW46IGRlciBGSFMgKHNpZWhlIGRvcnQpIGVya2zDpHJ0IHdhcnVtIGRpZXMgZWluZSBHdXRlIElkZWUgIgorImlzdC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo3MgorbXNnaWQgIiIKKyJXaGVuIGVhY2ggcGFja2FnZSBwcm92aWRpbmcgYSBmaWxlIHdpdGggYSBwYXJ0aWN1bGFyIGZ1bmN0aW9uYWxpdHkgaXMgIgorImluc3RhbGxlZCwgY2hhbmdlZCBvciByZW1vdmVkLCBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IGlzIGNhbGxlZCB0byB1cGRhdGUgIgorImluZm9ybWF0aW9uIGFib3V0IHRoYXQgZmlsZSBpbiB0aGUgYWx0ZXJuYXRpdmVzIHN5c3RlbS4gIEI8dXBkYXRlLSIKKyJhbHRlcm5hdGl2ZXM+IGlzIHVzdWFsbHkgY2FsbGVkIGZyb20gdGhlIEI8cG9zdGluc3Q+IChjb25maWd1cmUpIG9yIEI8cHJlcm0+ICIKKyIoaW5zdGFsbCkgc2NyaXB0cyBpbiBEZWJpYW4gcGFja2FnZXMuIgorbXNnc3RyICIiCisiRsO8ciBqZWRlcyBQYWtldCwgZGFzIGVpbmUgRGF0ZWkgbWl0IGVpbmVyIGJlc3RpbW10ZW4gRnVua3Rpb25hbGl0w6R0ICIKKyJiZXJlaXRzdGVsbHQsIHdpcmQgYmVpIGRlciBJbnN0YWxsYXRpb24sIGRlciDDhG5kZXJ1bmcgb2RlciBkZXIgRW50ZmVybnVuZyAiCisiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBhdWZnZXJ1ZmVuLCB1bSBkaWUgSW5mb3JtYXRpb25lbiDDvGJlciBkaWVzZSBEYXRlaSBpbSAiCisiQWx0ZXJuYXRpdi1TeXN0ZW0genUgYWt0dWFsaXNpZXJlbi4gQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiB3aXJkIGdld8O2aG5saWNoICIKKyJ2b20gU2tyaXB0IEI8cG9zdGluc3Q+IChjb25maWd1cmUpIG9kZXIgQjxwcmVybT4gKGluc3RhbGwpIGVpbmVzIERlYmlhbi0iCisiUGFrZXRlcyBhdWZnZXJ1ZmVuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjkxCittc2dpZCAiIgorIkl0IGlzIG9mdGVuIHVzZWZ1bCBmb3IgYSBudW1iZXIgb2YgYWx0ZXJuYXRpdmVzIHRvIGJlIHN5bmNocm9uaXNlZCwgc28gdGhhdCAiCisidGhleSBhcmUgY2hhbmdlZCBhcyBhIGdyb3VwOyBmb3IgZXhhbXBsZSwgd2hlbiBzZXZlcmFsIHZlcnNpb25zIG9mIHRoZSBCPHZpPiIKKyIoMSkgIGVkaXRvciBhcmUgaW5zdGFsbGVkLCB0aGUgbWFuIHBhZ2UgcmVmZXJlbmNlZCBieSBJPC91c3Ivc2hhcmUvbWFuL21hbjEvIgorInZpLjE+IHNob3VsZCBjb3JyZXNwb25kIHRvIHRoZSBleGVjdXRhYmxlIHJlZmVyZW5jZWQgYnkgSTwvdXNyL2Jpbi92aT4uICAiCisiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBoYW5kbGVzIHRoaXMgYnkgbWVhbnMgb2YgSTxtYXN0ZXI+IGFuZCBJPHNsYXZlPiAiCisibGlua3M7IHdoZW4gdGhlIG1hc3RlciBpcyBjaGFuZ2VkLCBhbnkgYXNzb2NpYXRlZCBzbGF2ZXMgYXJlIGNoYW5nZWQgdG9vLiAgQSAiCisibWFzdGVyIGxpbmsgYW5kIGl0cyBhc3NvY2lhdGVkIHNsYXZlcyBtYWtlIHVwIGEgSTxsaW5rPiBJPGdyb3VwPi4iCittc2dzdHIgIiIKKyJFcyBpc3Qgb2Z0IHNpbm52b2xsLCBkYXNzIGVpbmUgUmVpaGUgdm9uIEFsdGVybmF0aXZlbiBzeW5jaHJvbmlzaWVydCB3ZXJkZW4sICIKKyJzbyBkYXNzIHNpZSBhbHMgR3J1cHBlIGdlw6RuZGVydCB3ZXJkZW47IHdlbm4gYmVpc3BpZWxzd2Vpc2UgbWVocmVyZSAiCisiVmVyc2lvbmVuIGRlcyBCPHZpPigxKSBFZGl0b3JzIGluc3RhbGxpZXJ0IHNpbmQsIHNvbGx0ZSBkaWUgSGFuZGJ1Y2hzZWl0ZSwgIgorImRpZSBkdXJjaCBJPC91c3Ivc2hhcmUvbWFuL21hbjEvdmkuMT4gcmVmZXJlbnppZXJ0IHdpcmQsIHp1IGRlbSBhdXNmw7xocmJhcmVuICIKKyJQcm9ncmFtbSwgZGFzcyBkdXJjaCBJPC91c3IvYmluL3ZpPiByZWZlcmVuemllcnQgd2lyZCwgZ2Vow7ZyZW4uIEI8dXBkYXRlLSIKKyJhbHRlcm5hdGl2ZXM+IGVybGVkaWd0IGRpZXMgbWl0IEhpbGZlIHZvbiBJPE1hc3Rlci0+IHVuZCBJPFNsYXZlLUxpbmtzPjsgIgorIndpcmQgZGVyIE1hc3Rlci1MaW5rIGdlw6RuZGVydCwgd2lyZCBhdWNoIGplZGVyIHp1Z2Vow7ZyaWdlIFNsYXZlLUxpbmsgIgorImdlw6RuZGVydC4gRWluIE1hc3Rlci1MaW5rIHVuZCBzZWluZSB6dWdlaMO2cmlnZW4gU2xhdmUtTGlua3MgYmlsZGVuIHp1c2FtbWVuICIKKyJlaW5lIEk8TGluay1HcnVwcGU+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjEwMAorbXNnaWQgIiIKKyJFYWNoIGxpbmsgZ3JvdXAgaXMsIGF0IGFueSBnaXZlbiB0aW1lLCBpbiBvbmUgb2YgdHdvIG1vZGVzOiBhdXRvbWF0aWMgb3IgIgorIm1hbnVhbC4gIFdoZW4gYSBncm91cCBpcyBpbiBhdXRvbWF0aWMgbW9kZSwgdGhlIGFsdGVybmF0aXZlcyBzeXN0ZW0gd2lsbCAiCisiYXV0b21hdGljYWxseSBkZWNpZGUsIGFzIHBhY2thZ2VzIGFyZSBpbnN0YWxsZWQgYW5kIHJlbW92ZWQsIHdoZXRoZXIgYW5kIGhvdyAiCisidG8gdXBkYXRlIHRoZSBsaW5rcy4gIEluIG1hbnVhbCBtb2RlLCB0aGUgYWx0ZXJuYXRpdmVzIHN5c3RlbSB3aWxsIHJldGFpbiAiCisidGhlIGNob2ljZSBvZiB0aGUgYWRtaW5pc3RyYXRvciBhbmQgYXZvaWQgY2hhbmdpbmcgdGhlIGxpbmtzIChleGNlcHQgd2hlbiAiCisic29tZXRoaW5nIGlzIGJyb2tlbikuIgorbXNnc3RyICIiCisiRWluZSBMaW5rZ3J1cHBlIGlzdCB6dSBqZWRlciBaZWl0IGluIGVpbmVtIGRlciBiZWlkZW4gTW9kaTogYXV0b21hdGlzY2ggb2RlciAiCisibWFudWVsbC4gSXN0IGVpbmUgR3J1cHBlIGltIGF1dG9tYXRpc2NoZW4gTW9kdXMsIGRhbm4gd2lyZCBkYXMgQWx0ZXJuYXRpdi0iCisiU3lzdGVtIGJlaSBkZXIgUGFrZXRpbnN0YWxsYXRpb24gdW5kIC1lbnRmZXJudW5nIGF1dG9tYXRpc2NoIGVudHNjaGVpZGVuLCBvYiAiCisidW5kIHdpZSBkaWUgTGlua3MgYWt0dWFsaXNpZXJ0IHdlcmRlbi4gSW0gbWFudWVsbGVuIE1vZHVzIHdpcmQgZGFzICIKKyJBbHRlcm5hdGl2LVN5c3RlbSBkaWUgV2FobCBkZXMgQWRtaW5pc3RyYXRvcnMgYmVpYmVoYWx0ZW4gdW5kIMOEbmRlcnVuZ2VuIGRlciAiCisiTGlua3MgdmVybWVpZGVuIChhdcOfZXIgaXJnZW5kZXR3YXMgaXN0IGRlZmVrdCkuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTA5Cittc2dpZCAiIgorIkxpbmsgZ3JvdXBzIGFyZSBpbiBhdXRvbWF0aWMgbW9kZSB3aGVuIHRoZXkgYXJlIGZpcnN0IGludHJvZHVjZWQgdG8gdGhlICIKKyJzeXN0ZW0uICBJZiB0aGUgc3lzdGVtIGFkbWluaXN0cmF0b3IgbWFrZXMgY2hhbmdlcyB0byB0aGUgc3lzdGVtJ3MgYXV0b21hdGljICIKKyJzZXR0aW5ncywgdGhpcyB3aWxsIGJlIG5vdGljZWQgdGhlIG5leHQgdGltZSBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IGlzIHJ1biAiCisib24gdGhlIGNoYW5nZWQgbGluaydzIGdyb3VwLCBhbmQgdGhlIGdyb3VwIHdpbGwgYXV0b21hdGljYWxseSBiZSBzd2l0Y2hlZCB0byAiCisibWFudWFsIG1vZGUuIgorbXNnc3RyICIiCisiQmVpbSBlcnN0bWFsaWdlbiBFaW5mw7xocmVuIGluIGRhcyBTeXN0ZW0gYmVmaW5kZXQgc2ljaCBlaW5lIExpbmtncnVwcGUgaW0gIgorImF1dG9tYXRpc2NoZW4gTW9kdXMuIEbDvGhydCBkZXIgU3lzdGVtYWRtaW5pc3RyYXRvciDDhG5kZXJ1bmdlbiBhbiBkZW4gIgorImF1dG9tYXRpc2NoZW4gRWluc3RlbGx1bmdlbiBkZXMgU3lzdGVtcyBkdXJjaCwgd2lyZCBkaWVzIGJlaW0gbsOkY2hzdGVuICIKKyJBdWZydWYgdm9uIEI8dXBkYXRlLWFsdGVybmF0aXZlcz4gYXVmIGRpZSBMaW5rZ3J1cHBlIGJlbWVya3QgdW5kIGRpZSBHcnVwcGUgIgorIndpcmQgYXV0b21hdGlzY2ggaW4gZGVuIG1hbnVlbGxlbiBNb2R1cyB1bWdlc2NoYWx0ZXQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTE2Cittc2dpZCAiIgorIkVhY2ggYWx0ZXJuYXRpdmUgaGFzIGEgSTxwcmlvcml0eT4gYXNzb2NpYXRlZCB3aXRoIGl0LiAgV2hlbiBhIGxpbmsgZ3JvdXAgaXMgIgorImluIGF1dG9tYXRpYyBtb2RlLCB0aGUgYWx0ZXJuYXRpdmVzIHBvaW50ZWQgdG8gYnkgbWVtYmVycyBvZiB0aGUgZ3JvdXAgd2lsbCAiCisiYmUgdGhvc2Ugd2hpY2ggaGF2ZSB0aGUgaGlnaGVzdCBwcmlvcml0eS4iCittc2dzdHIgIiIKKyJKZWRlIEFsdGVybmF0aXZlIGhhdCBlaW5lIGlociB6dWdlb3JkbmV0ZSBJPFByaW9yaXTDpHQ+LiBCZWZpbmRldCBzaWNoIGVpbmUgIgorIkxpbmtncnVwcGUgaW0gYXV0b21hdGlzY2hlbiBNb2R1cywgemVpZ2VuIGRpZSBNaXRnbGllZGVyIGVpbmVyIEdydXBwZSBhdWYgIgorImRpZSBBbHRlcm5hdGl2ZSBtaXQgZGVyIGjDtmNoc3RlbiBQcmlvcml0w6R0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjEzMworbXNnaWQgIiIKKyJXaGVuIHVzaW5nIHRoZSBCPC0tY29uZmlnPiBvcHRpb24sIEI8dXBkYXRlLWFsdGVybmF0aXZlcz4gd2lsbCBsaXN0IGFsbCBvZiAiCisidGhlIGNob2ljZXMgZm9yIHRoZSBsaW5rIGdyb3VwIG9mIHdoaWNoIGdpdmVuIEk8bmFtZT4gaXMgdGhlIG1hc3RlciAiCisiYWx0ZXJuYXRpdmUgbmFtZS4gVGhlIGN1cnJlbnQgY2hvaWNlIGlzIG1hcmtlZCB3aXRoIGEgJyonLiAgWW91IHdpbGwgdGhlbiBiZSAiCisicHJvbXB0ZWQgZm9yIHlvdXIgY2hvaWNlIHJlZ2FyZGluZyB0aGlzIGxpbmsgZ3JvdXAuICBEZXBlbmRpbmcgb24gdGhlIGNob2ljZSAiCisibWFkZSwgdGhlIGxpbmsgZ3JvdXAgbWlnaHQgbm8gbG9uZ2VyIGJlIGluIEk8YXV0bz4gbW9kZS4gWW91IHdpbGwgbmVlZCB0byAiCisidXNlIHRoZSBCPC0tYXV0bz4gb3B0aW9uIGluIG9yZGVyIHRvIHJldHVybiB0byB0aGUgYXV0b21hdGljIG1vZGUgKG9yIHlvdSAiCisiY2FuIHJlcnVuIEI8LS1jb25maWc+IGFuZCBzZWxlY3QgdGhlIGVudHJ5IG1hcmtlZCBhcyBhdXRvbWF0aWMpLiIKK21zZ3N0ciAiIgorIldpcmQgZGllIEI8LS1jb25maWc+LU9wdGlvbiB2ZXJ3ZW5kZXQsIGRhbm4gemVpZ3QgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiAiCisiYWxsZSBBdXN3YWhsbcO2Z2xpY2hrZWl0ZW4gZsO8ciBkaWUgTGluay1HcnVwcGUgYW4sIGbDvHIgZGllIGRlciBnZWdlYmVuZSAiCisiSTxOYW1lPiBkZXIgTWFzdGVyLUFsdGVybmF0aXZlLU5hbWUgaXN0LiBEaWUgYWt0dWVsbGUgQXVzd2FobCBpc3QgbWl0IMK7KsKrICIKKyJtYXJraWVydC4gU2llIHdlcmRlbiBkYW5uIGF1ZmdlZm9yZGVydCwgSWhyZSBBdXN3YWhsIGJlesO8Z2xpY2ggZGVyICIKKyJMaW5rZ3J1cHBlIGFuenVnZWJlbi4gQWJow6RuZ2lnIHZvbiBkZXIgZ2V0cm9mZmVuZW4gQXVzd2FobCBrw7ZubnRlIHNpY2ggZGllICIKKyJMaW5rLUdydXBwZSBuaWNodCBtZWhyIGltIEk8YXV0b21hdGlzY2hlbj4gTW9kdXMgYmVmaW5kZW4uIFNpZSBtw7xzc2VuIGRhbm4gIgorImRpZSBPcHRpb24gQjwtLWF1dG8+IHZlcndlbmRlbiwgdW0gd2llZGVyIGluIGRlbiBhdXRvbWF0aXNjaGVuIFp1c3RhbmQgIgorInp1csO8Y2t6dWtlaHJlbiAob2RlciBTaWUga8O2bm5lbiBCPC0tY29uZmlnPiBlcm5ldXQgYXVzZsO8aHJlbiB1bmQgZGVuIGFscyAiCisiYXV0b21hdGlzY2ggbWFya2llcnRlbiBFaW50cmFnIGF1c3fDpGhsZW4pLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjEzNworbXNnaWQgIiIKKyJJZiB5b3Ugd2FudCB0byBjb25maWd1cmUgbm9uLWludGVyYWN0aXZlbHkgeW91IGNhbiB1c2UgdGhlIEI8LS1zZXQ+IG9wdGlvbiAiCisiaW5zdGVhZCAoc2VlIGJlbG93KS4iCittc2dzdHIgIiIKKyJGYWxscyBTaWUgbmljaHQtaW50ZXJha3RpdiBrb25maWd1cmllcmVuIG3DtmNodGVuLCBrw7ZubmVuIFNpZSBzdGF0dGRlc3NlbiBkaWUgIgorIkI8LS1zZXQ+IE9wdGlvbiB2ZXJ3ZW5kZW4gKHNpZWhlIHVudGVuKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNDgKK21zZ2lkICIiCisiRGlmZmVyZW50IHBhY2thZ2VzIHByb3ZpZGluZyB0aGUgc2FtZSBmaWxlIG5lZWQgdG8gZG8gc28gQjxjb29wZXJhdGl2ZWx5Pi4gICIKKyJJbiBvdGhlciB3b3JkcywgdGhlIHVzYWdlIG9mIEI8dXBkYXRlLWFsdGVybmF0aXZlcz4gaXMgQjxtYW5kYXRvcnk+IGZvciBhbGwgIgorImludm9sdmVkIHBhY2thZ2VzIGluIHN1Y2ggY2FzZS4gSXQgaXMgbm90IHBvc3NpYmxlIHRvIG92ZXJyaWRlIHNvbWUgZmlsZSBpbiAiCisiYSBwYWNrYWdlIHRoYXQgZG9lcyBub3QgZW1wbG95IHRoZSBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IG1lY2hhbmlzbS4iCittc2dzdHIgIiIKKyJWZXJzY2hpZWRlbmUgUGFrZXRlLCBkaWUgZGllIGdsZWljaGUgRGF0ZWkgYmVyZWl0c3RlbGxlbiwgbcO8c3NlbiBkaWVzICIKKyJCPGtvb3BlcmF0aXY+IGR1cmNoZsO8aHJlbi4gQW5kZXJzIGdlc2FndCBpc3QgaW4gZGllc2VtIEZhbGwgZGllIFZlcndlbmR1bmcgIgorInZvbiBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IGbDvHIgYWxsZSBiZXRlaWxpZ3RlbiBQYWtldGUgQjx6d2luZ2VuZD4uIEVzIGlzdCAiCisibmljaHQgbcO2Z2xpY2gsIHNpY2ggw7xiZXIgZWluZSBEYXRlaSBpbiBlaW5lbSBQYWtldCBoaW53ZWd6dXNldHplbiwgd2VsY2hlcyAiCisiZGVuIEI8dXBkYXRlLWFsdGVybmF0aXZlcz4tTWVjaGFuaXNtdXMgbmljaHQgdmVyd2VuZGV0LiIKKworIy4gdHlwZTogU0gKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNDkKKyMsIG5vLXdyYXAKK21zZ2lkICJURVJNSU5PTE9HWSIKK21zZ3N0ciAiQkVHUklGRkUiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNTQKK21zZ2lkICIiCisiU2luY2UgdGhlIGFjdGl2aXRpZXMgb2YgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBhcmUgcXVpdGUgaW52b2x2ZWQsIHNvbWUgIgorInNwZWNpZmljIHRlcm1zIHdpbGwgaGVscCB0byBleHBsYWluIGl0cyBvcGVyYXRpb24uIgorbXNnc3RyICIiCisiRGEgZGllIFTDpHRpZ2tlaXRlbiB2b24gQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiByZWNodCBrb21wbGV4IHNpbmQsIHNvbGxlbiAiCisiZWluaWdlIHNwZXppZWxsZSBCZWdyaWZmZSBoZWxmZW4sIHNlaW5lIFZvcmdlaGVuc3dlaXNlIHp1IGVybMOkdXRlcm4uIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE1NAorIywgbm8td3JhcAorbXNnaWQgImdlbmVyaWMgbmFtZSAob3IgYWx0ZXJuYXRpdmUgbGluaykiCittc2dzdHIgImdlbmVyaXNjaGVyIE5hbWUgKG9kZXIgQWx0ZXJuYXRpdi1MaW5rKSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE2MAorbXNnaWQgIiIKKyJBIG5hbWUsIGxpa2UgSTwvdXNyL2Jpbi9lZGl0b3I+LCB3aGljaCByZWZlcnMsIHZpYSB0aGUgYWx0ZXJuYXRpdmVzIHN5c3RlbSwgIgorInRvIG9uZSBvZiBhIG51bWJlciBvZiBmaWxlcyBvZiBzaW1pbGFyIGZ1bmN0aW9uLiIKK21zZ3N0ciAiIgorIkVpbiBOYW1lIHdpZSBJPC91c3IvYmluL2VkaXRvcj4sIGRlciBzaWNoIMO8YmVyIGRhcyBBbHRlcm5hdGl2LVN5c3RlbSBhdWYgIgorImVpbmUgUmVpaGUgdm9uIERhdGVpZW4gbWl0IMOkaG5saWNoZXIgRnVua3Rpb25hbGl0w6R0IGJlemllaHQuIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE2MAorIywgbm8td3JhcAorbXNnaWQgImFsdGVybmF0aXZlIG5hbWUiCittc2dzdHIgIkFsdGVybmF0aXYtTmFtZSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE2MworbXNnaWQgIlRoZSBuYW1lIG9mIGEgc3ltYm9saWMgbGluayBpbiB0aGUgYWx0ZXJuYXRpdmVzIGRpcmVjdG9yeS4iCittc2dzdHIgIkRlciBOYW1lIGVpbmVzIHN5bWJvbGlzY2hlbiBMaW5rcyBpbSBBbHRlcm5hdGl2LVZlcnplaWNobmlzLiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNjMKKyMsIG5vLXdyYXAKK21zZ2lkICJhbHRlcm5hdGl2ZSAob3IgYWx0ZXJuYXRpdmUgcGF0aCkiCittc2dzdHIgIkFsdGVybmF0aXZlIChvZGVyIEFsdGVybmF0aXYtUGZhZCkiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNjcKK21zZ2lkICIiCisiVGhlIG5hbWUgb2YgYSBzcGVjaWZpYyBmaWxlIGluIHRoZSBmaWxlc3lzdGVtLCB3aGljaCBtYXkgYmUgbWFkZSBhY2Nlc3NpYmxlICIKKyJ2aWEgYSBnZW5lcmljIG5hbWUgdXNpbmcgdGhlIGFsdGVybmF0aXZlcyBzeXN0ZW0uIgorbXNnc3RyICIiCisiRGVyIE5hbWUgZWluZXIgc3BlemllbGxlbiBEYXRlaSBpbSBEYXRlaXN5c3RlbSwgZGllIG1pdHRlbHMgZWluZXMgIgorImdlbmVyaXNjaGVuIE5hbWVucyDDvGJlciBkYXMgQWx0ZXJuYXRpdi1TeXN0ZW0genVncmVpZmJhciBnZW1hY2h0IHdlcmRlbiBrYW5uLiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNjcKKyMsIG5vLXdyYXAKK21zZ2lkICJhbHRlcm5hdGl2ZXMgZGlyZWN0b3J5IgorbXNnc3RyICJBbHRlcm5hdGl2LVZlcnplaWNobmlzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTcyCittc2dpZCAiQSBkaXJlY3RvcnksIGJ5IGRlZmF1bHQgSTwvZXRjL2FsdGVybmF0aXZlcz4sIGNvbnRhaW5pbmcgdGhlIHN5bWxpbmtzLiIKK21zZ3N0ciAiIgorIkVpbiBWZXJ6ZWljaG5pcywgc3RhbmRhcmRtw6TDn2lnIEk8L2V0Yy9hbHRlcm5hdGl2ZXM+LCBkYXMgZGllIFN5bWxpbmtzICIKKyJlbnRow6RsdC4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTcyCisjLCBuby13cmFwCittc2dpZCAiYWRtaW5pc3RyYXRpdmUgZGlyZWN0b3J5IgorbXNnc3RyICJhZG1pbmlzdHJhdGl2ZXMgVmVyemVpY2huaXMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNzkKK21zZ2lkICIiCisiQSBkaXJlY3RvcnksIGJ5IGRlZmF1bHQgSTwvdmFyL2xpYi9kcGtnL2FsdGVybmF0aXZlcz4sIGNvbnRhaW5pbmcgQjx1cGRhdGUtIgorImFsdGVybmF0aXZlcz4nIHN0YXRlIGluZm9ybWF0aW9uLiIKK21zZ3N0ciAiIgorIkVpbiBWZXJ6ZWljaG5pcywgc3RhbmRhcmRtw6TDn2lnIEk8L3Zhci9saWIvZHBrZy9hbHRlcm5hdGl2ZXM+LCBkYXMgZGllICIKKyJCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IFp1c3RhbmRzaW5mb3JtYXRpb25lbiBlbnRow6RsdC4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTc5CisjLCBuby13cmFwCittc2dpZCAibGluayBncm91cCIKK21zZ3N0ciAiTGlua2dydXBwZSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE4MgorbXNnaWQgIkEgc2V0IG9mIHJlbGF0ZWQgc3ltbGlua3MsIGludGVuZGVkIHRvIGJlIHVwZGF0ZWQgYXMgYSBncm91cC4iCittc2dzdHIgIiIKKyJFaW4gU2F0eiB6dXNhbW1lbmdlaMO2cmVuZGVyIFN5bWxpbmtzLCBkaWUgYWxzIEdydXBwZSBha3R1YWxpc2llcnQgd2VyZGVuICIKKyJzb2xsZW4uIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE4MgorIywgbm8td3JhcAorbXNnaWQgIm1hc3RlciBsaW5rIgorbXNnc3RyICJNYXN0ZXItTGluayIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE4NgorbXNnaWQgIiIKKyJUaGUgYWx0ZXJuYXRpdmUgbGluayBpbiBhIGxpbmsgZ3JvdXAgd2hpY2ggZGV0ZXJtaW5lcyBob3cgdGhlIG90aGVyIGxpbmtzIGluICIKKyJ0aGUgZ3JvdXAgYXJlIGNvbmZpZ3VyZWQuIgorbXNnc3RyICIiCisiRGVyIEFsdGVybmF0aXYtTGluayBpbiBlaW5lciBMaW5rZ3J1cHBlIGRlciBiZXN0aW1tdCwgd2llIGRpZSBhbmRlcmVuIExpbmtzICIKKyJpbiBkZXIgR3J1cHBlIGtvbmZpZ3VyaWVydCB3ZXJkZW4uIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE4NgorIywgbm8td3JhcAorbXNnaWQgInNsYXZlIGxpbmsiCittc2dzdHIgIlNsYXZlLUxpbmsiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxOTAKK21zZ2lkICIiCisiQW4gYWx0ZXJuYXRpdmUgbGluayBpbiBhIGxpbmsgZ3JvdXAgd2hpY2ggaXMgY29udHJvbGxlZCBieSB0aGUgc2V0dGluZyBvZiAiCisidGhlIG1hc3RlciBsaW5rLiIKK21zZ3N0ciAiIgorIkVpbiBBbHRlcm5hdGl2LUxpbmsgaW4gZWluZXIgTGlua2dydXBwZSwgZGVyIGR1cmNoIGRpZSBFaW5zdGVsbHVuZyBkZXMgIgorIk1hc3Rlci1MaW5rcyBnZXN0ZXVlcnQgd2lyZC4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTkwCisjLCBuby13cmFwCittc2dpZCAiYXV0b21hdGljIG1vZGUiCittc2dzdHIgImF1dG9tYXRpc2NoZXIgTW9kdXMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxOTYKK21zZ2lkICIiCisiV2hlbiBhIGxpbmsgZ3JvdXAgaXMgaW4gYXV0b21hdGljIG1vZGUsIHRoZSBhbHRlcm5hdGl2ZXMgc3lzdGVtIGVuc3VyZXMgdGhhdCAiCisidGhlIGxpbmtzIGluIHRoZSBncm91cCBwb2ludCB0byB0aGUgaGlnaGVzdCBwcmlvcml0eSBhbHRlcm5hdGl2ZSBhcHByb3ByaWF0ZSAiCisiZm9yIHRoZSBncm91cC4iCittc2dzdHIgIiIKKyJJc3QgZWluZSBMaW5rZ3J1cHBlIGltIGF1dG9tYXRpc2NoZW4gTW9kdXMsIGRhbm4gc29yZ3QgZGFzIEFsdGVybmF0aXYtU3lzdGVtICIKKyJkYWbDvHIsIGRhc3MgZGllIExpbmtzIGluIGRlciBHcnVwcGUgYXVmIGRpZSBmw7xyIGRpZSBHcnVwcGUgcGFzc2VuZGUgIgorIkFsdGVybmF0aXZlIG1pdCBkZXIgaMO2Y2hzdGVuIFByaW9yaXTDpHQgemVpZ2VuLiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxOTYKKyMsIG5vLXdyYXAKK21zZ2lkICJtYW51YWwgbW9kZSIKK21zZ3N0ciAibWFudWVsbGVyIE1vZHVzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjAxCittc2dpZCAiIgorIldoZW4gYSBsaW5rIGdyb3VwIGlzIGluIG1hbnVhbCBtb2RlLCB0aGUgYWx0ZXJuYXRpdmVzIHN5c3RlbSB3aWxsIG5vdCBtYWtlICIKKyJhbnkgY2hhbmdlcyB0byB0aGUgc3lzdGVtIGFkbWluaXN0cmF0b3IncyBzZXR0aW5ncy4iCittc2dzdHIgIiIKKyJJc3QgZWluZSBMaW5rZ3J1cHBlIGltIG1hbnVlbGxlbiBNb2R1cywgZGFubiBmw7xocnQgZGFzIEFsdGVybmF0aXYtU3lzdGVtICIKKyJrZWluZSDDhG5kZXJ1bmdlbiBhbiBkZW4gRWluc3RlbGx1bmdlbiBkZXMgU3lzdGVtYWRtaW5pc3RyYXRvcnMgZHVyY2guIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjIwMworIywgbm8td3JhcAorbXNnaWQgIkI8LS1pbnN0YWxsPiBJPGxpbmsgbmFtZSBwYXRoIHByaW9yaXR5PiBbQjwtLXNsYXZlPiBJPGxpbmsgbmFtZSBwYXRoPl0uLi4iCittc2dzdHIgIkI8LS1pbnN0YWxsPiBJPExpbmsgTmFtZSBQZmFkIFByaW9yaXTDpHQ+IFtCPC0tc2xhdmU+IEk8TGluayBOYW1lIFBmYWQ+XSAuLi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyMjIKK21zZ2lkICIiCisiQWRkIGEgZ3JvdXAgb2YgYWx0ZXJuYXRpdmVzIHRvIHRoZSBzeXN0ZW0uICBJPGxpbms+IGlzIHRoZSBnZW5lcmljIG5hbWUgZm9yICIKKyJ0aGUgbWFzdGVyIGxpbmssIEk8bmFtZT4gaXMgdGhlIG5hbWUgb2YgaXRzIHN5bWxpbmsgaW4gdGhlIGFsdGVybmF0aXZlcyAiCisiZGlyZWN0b3J5LCBhbmQgSTxwYXRoPiBpcyB0aGUgYWx0ZXJuYXRpdmUgYmVpbmcgaW50cm9kdWNlZCBmb3IgdGhlIG1hc3RlciAiCisibGluay4gIFRoZSBhcmd1bWVudHMgYWZ0ZXIgQjwtLXNsYXZlPiBhcmUgdGhlIGdlbmVyaWMgbmFtZSwgc3ltbGluayBuYW1lIGluICIKKyJ0aGUgYWx0ZXJuYXRpdmVzIGRpcmVjdG9yeSBhbmQgdGhlIGFsdGVybmF0aXZlIHBhdGggZm9yIGEgc2xhdmUgbGluay4gIFplcm8gIgorIm9yIG1vcmUgQjwtLXNsYXZlPiBvcHRpb25zLCBlYWNoIGZvbGxvd2VkIGJ5IHRocmVlIGFyZ3VtZW50cywgbWF5IGJlICIKKyJzcGVjaWZpZWQuIE5vdGUgdGhhdCB0aGUgbWFzdGVyIGFsdGVybmF0aXZlIG11c3QgZXhpc3Qgb3IgdGhlIGNhbGwgd2lsbCAiCisiZmFpbC4gSG93ZXZlciBpZiBhIHNsYXZlIGFsdGVybmF0aXZlIGRvZXNuJ3QgZXhpc3QsIHRoZSBjb3JyZXNwb25kaW5nIHNsYXZlICIKKyJhbHRlcm5hdGl2ZSBsaW5rIHdpbGwgc2ltcGx5IG5vdCBiZSBpbnN0YWxsZWQgKGEgd2FybmluZyB3aWxsIHN0aWxsIGJlICIKKyJkaXNwbGF5ZWQpLiBJZiBzb21lIHJlYWwgZmlsZSBpcyBpbnN0YWxsZWQgd2hlcmUgYW4gYWx0ZXJuYXRpdmUgbGluayBoYXMgdG8gIgorImJlIGluc3RhbGxlZCwgaXQgaXMga2VwdCB1bmxlc3MgQjwtLWZvcmNlPiBpcyB1c2VkLiIKK21zZ3N0ciAiIgorIkbDvGdlIGVpbmUgR3J1cHBlIHZvbiBBbHRlcm5hdGl2ZW4genVtIFN5c3RlbSBoaW56dS4gSTxMaW5rPiBpc3QgZGVyICIKKyJnZW5lcmlzY2hlIE5hbWUgZGVzIE1hc3Rlci1MaW5rcywgSTxOYW1lPiBpc3QgZGVyIE5hbWUgc2VpbmVzIFN5bWxpbmtzIGltICIKKyJBbHRlcm5hdGl2LVZlcnplaWNobmlzIHVuZCBJPFBmYWQ+IGlzdCBkaWUgQWx0ZXJuYXRpdmUsIGRpZSBmw7xyIGRlbiBNYXN0ZXItIgorIkxpbmsgZWluZ2Vmw7xocnQgd2lyZC4gRGllIEFyZ3VtZW50ZSBuYWNoIEI8LS1zbGF2ZT4gc2luZCBkZXIgZ2VuZXJpc2NoZSAiCisiTmFtZSwgU3ltbGluay1OYW1lIGluIGRlbSBBbHRlcm5hdGl2LVZlcnplaWNobmlzIHVuZCBkZXIgQWx0ZXJuYXRpdi1QZmFkIGbDvHIgIgorImRlbiBTbGF2ZS1MaW5rLiBOdWxsIG9kZXIgbWVocmVyZSBCPC0tc2xhdmU+LU9wdGlvbmVuLCBqZWRlIHZvbiBkcmVpICIKKyJBcmd1bWVudGVuIGdlZm9sZ3QsIGvDtm5uZW4gc3BlemlmaXppZXJ0IHdlcmRlbi4gQmVhY2h0ZW4gU2llLCBkYXNzIGRpZSAiCisiTWFzdGVyLUFsdGVybmF0aXZlIGV4aXN0aWVyZW4gbXVzcywgYW5zb25zdGVuIHNjaGzDpGd0IGRlciBBdWZydWYgZmVobC4gRmFsbHMgIgorImFsbGVyZGluZ3MgZWluZSBTbGF2ZS1BbHRlcm5hdGl2ZSBuaWNodCBleGlzdGllcnQgd2lyZCBkZXIgenVnZWjDtnJpZ2UgU2xhdmUtIgorIkFsdGVybmF0aXZlLUxpbmsgZWluZmFjaCBuaWNodCBpbnN0YWxsaWVydCAoZXMgd2lyZCBub2NoIGVpbmUgV2FybnVuZyAiCisiYXVzZ2VnZWJlbikuIEZhbGxzIGVpbmUgZWNodGUgRGF0ZWkgYW4gZWluZXIgU3RlbGxlIGluc3RhbGxpZXJ0IHdpcmQsIGFuIGRlciAiCisiZWluIEFsdGVybmF0aXYtTGluayBpbnN0YWxsaWVydCB3ZXJkZW4gbXVzcywgd2lyZCBkaWVzZSBiZWliZWhhbHRlbiwgc29sYW5nZSAiCisiQjwtLWZvcmNlPiBuaWNodCB2ZXJ3YW5kdCB3aXJkLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjIzMworbXNnaWQgIiIKKyJJZiB0aGUgYWx0ZXJuYXRpdmUgbmFtZSBzcGVjaWZpZWQgZXhpc3RzIGFscmVhZHkgaW4gdGhlIGFsdGVybmF0aXZlcyAiCisic3lzdGVtJ3MgcmVjb3JkcywgdGhlIGluZm9ybWF0aW9uIHN1cHBsaWVkIHdpbGwgYmUgYWRkZWQgYXMgYSBuZXcgc2V0IG9mICIKKyJhbHRlcm5hdGl2ZXMgZm9yIHRoZSBncm91cC4gIE90aGVyd2lzZSwgYSBuZXcgZ3JvdXAsIHNldCB0byBhdXRvbWF0aWMgbW9kZSwgIgorIndpbGwgYmUgYWRkZWQgd2l0aCB0aGlzIGluZm9ybWF0aW9uLiAgSWYgdGhlIGdyb3VwIGlzIGluIGF1dG9tYXRpYyBtb2RlLCBhbmQgIgorInRoZSBuZXdseSBhZGRlZCBhbHRlcm5hdGl2ZXMnIHByaW9yaXR5IGlzIGhpZ2hlciB0aGFuIGFueSBvdGhlciBpbnN0YWxsZWQgIgorImFsdGVybmF0aXZlcyBmb3IgdGhpcyBncm91cCwgdGhlIHN5bWxpbmtzIHdpbGwgYmUgdXBkYXRlZCB0byBwb2ludCB0byB0aGUgIgorIm5ld2x5IGFkZGVkIGFsdGVybmF0aXZlcy4iCittc2dzdHIgIiIKKyJGYWxscyBkZXIgYW5nZWdlYmVuZSBBbHRlcm5hdGl2LU5hbWUgYmVyZWl0cyBpbiBkZW4gQXVmemVpY2hudW5nZW4gZGVzICIKKyJBbHRlcm5hdGl2LVN5c3RlbXMgZXhpc3RpZXJ0LCB3ZXJkZW4gZGllIGFuZ2VnZWJlbmVuIEluZm9ybWF0aW9uZW4gYWxzIG5ldWVyICIKKyJTYXR6IHZvbiBBbHRlcm5hdGl2ZW4gZsO8ciBkaWUgR3J1cHBlIGhpbnp1Z2Vmw7xndC4gQW5kZXJuZmFsbHMgd2lyZCBlaW5lIG5ldWUgIgorIkdydXBwZSwgZWluZ2VzdGVsbHQgaW0gYXV0b21hdGlzY2hlbiBNb2R1cywgbWl0IGRpZXNlciBJbmZvcm1hdGlvbiAiCisiaGluenVnZWbDvGd0LiBGYWxscyBkaWUgR3J1cHBlIHNpY2ggaW0gYXV0b21hdGlzY2hlbiBNb2R1cyBiZWZpbmRldCB1bmQgZGllICIKKyJQcmlvcml0w6R0IGRlciBuZXUgaGluenVnZWbDvGd0ZW4gQWx0ZXJuYXRpdmUgaMO2aGVyIGlzdCBhbHMgZGllIGplZGVyIGFuZGVyZW4gIgorImluc3RhbGxpZXJ0ZW4gQWx0ZXJuYXRpdmUgZsO8ciBkaWVzZSBHcnVwcGUgd2VyZGVuIGRpZSBTeW1saW5rcyBha3R1YWxpc2llcnQsICIKKyJzbyBkYXNzIHNpZSBhdWYgZGllIG5ldSBoaW56dWdlZsO8Z3RlIEFsdGVybmF0aXZlIHplaWdlbi4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjMzCisjLCBuby13cmFwCittc2dpZCAiQjwtLXNldD4gSTxuYW1lIHBhdGg+IgorbXNnc3RyICJCPC0tc2V0PiBJPE5hbWUgUGZhZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyNDIKK21zZ2lkICIiCisiU2V0IHRoZSBwcm9ncmFtIEk8cGF0aD4gYXMgYWx0ZXJuYXRpdmUgZm9yIEk8bmFtZS4+IFRoaXMgaXMgZXF1aXZhbGVudCB0byAiCisiQjwtLWNvbmZpZz4gYnV0IGlzIG5vbi1pbnRlcmFjdGl2ZSBhbmQgdGh1cyBzY3JpcHRhYmxlLiIKK21zZ3N0ciAiIgorIlNldHp0IGRhcyBQcm9ncmFtbSBJPFBmYWQ+IGFscyBBbHRlcm5hdGl2ZSBmw7xyIEk8TmFtZT4uIERpZXMgaXN0IMOkcXVpdmFsZW50ICIKKyJ6dSBCPC0tY29uZmlnPiwgaXN0IGFiZXIgbmljaHQgaW50ZXJha3RpdiB1bmQga2FubiBzb21pdCBnZXNrcmlwdGV0IHdlcmRlbi4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjQyCisjLCBuby13cmFwCittc2dpZCAiQjwtLXJlbW92ZT4gSTxuYW1lIHBhdGg+IgorbXNnc3RyICJCPC0tcmVtb3ZlPiBJPE5hbWUgUGZhZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyNjMKK21zZ2lkICIiCisiUmVtb3ZlIGFuIGFsdGVybmF0aXZlIGFuZCBhbGwgb2YgaXRzIGFzc29jaWF0ZWQgc2xhdmUgbGlua3MuICBJPG5hbWU+IGlzIGEgIgorIm5hbWUgaW4gdGhlIGFsdGVybmF0aXZlcyBkaXJlY3RvcnksIGFuZCBJPHBhdGg+IGlzIGFuIGFic29sdXRlIGZpbGVuYW1lIHRvICIKKyJ3aGljaCBJPG5hbWU+IGNvdWxkIGJlIGxpbmtlZC4gSWYgSTxuYW1lPiBpcyBpbmRlZWQgbGlua2VkIHRvIEk8cGF0aD4sICIKKyJJPG5hbWU+IHdpbGwgYmUgdXBkYXRlZCB0byBwb2ludCB0byBhbm90aGVyIGFwcHJvcHJpYXRlIGFsdGVybmF0aXZlIChhbmQgdGhlICIKKyJncm91cCBpcyBwdXQgYmFjayBpbiBhdXRvbWF0aWMgbW9kZSksIG9yIHJlbW92ZWQgaWYgdGhlcmUgaXMgbm8gc3VjaCAiCisiYWx0ZXJuYXRpdmUgbGVmdC4gIEFzc29jaWF0ZWQgc2xhdmUgbGlua3Mgd2lsbCBiZSB1cGRhdGVkIG9yIHJlbW92ZWQsICIKKyJjb3JyZXNwb25kaW5nbHkuICBJZiB0aGUgbGluayBpcyBub3QgY3VycmVudGx5IHBvaW50aW5nIHRvIEk8cGF0aD4sIG5vIGxpbmtzICIKKyJhcmUgY2hhbmdlZDsgb25seSB0aGUgaW5mb3JtYXRpb24gYWJvdXQgdGhlIGFsdGVybmF0aXZlIGlzIHJlbW92ZWQuIgorbXNnc3RyICIiCisiRW50ZmVybmUgZWluZSBBbHRlcm5hdGl2ZSB1bmQgYWxsZSB6dWdlaMO2cmlnZW4gU2xhdmUtTGlua3MuIEk8TmFtZT4gaXN0IGVpbiAiCisiTmFtZSBpbSBBbHRlcm5hdGl2LVZlcnplaWNobmlzLCB1bmQgSTxQZmFkPiBpc3QgZWluIGFic29sdXRlciBEYXRlaW5hbWUgenUgIgorImRlbSBJPE5hbWU+IGdlbGlua3Qgd2VyZGVuIGvDtm5udGUuIEZhbGxzIEk8TmFtZT4gdGF0c8OkY2hsaWNoIG5hY2ggSTxQZmFkPiAiCisiZ2VsaW5rdCBpc3QsIGRhbm4gd2lyZCBJPE5hbWU+IGFrdHVhbGlzaWVydCwgdW0gYXVmIGVpbmUgYW5kZXJlIGdlZWlnbmV0ZSAiCisiQWx0ZXJuYXRpdmUgenUgemVpZ2VuICh1bmQgZGllIEdydXBwZSB3aXJkIHdpZWRlciBpbiBkZW4gYXV0b21hdGlzY2hlbiBNb2R1cyAiCisidmVyc2V0enQpIG9kZXIgZW50ZmVybnQsIGZhbGxzIGtlaW5lIHNvbGNoZSBBbHRlcm5hdGl2ZSDDvGJyaWcgYmxlaWJ0LiAiCisiWnVnZWjDtnJpZ2UgU2xhdmUtTGlua3Mgd2VyZGVuIGVudHNwcmVjaGVuZCBha3R1YWxpc2llcnQgb2RlciBlbnRmZXJudC4gRmFsbHMgIgorImRlciBMaW5rIGRlcnplaXQgbmljaHQgYXVmIEk8UGZhZD4gemVpZ3QsIHdlcmRlbiBrZWluZSBMaW5rcyBnZcOkbmRlcnQ7IG51ciAiCisiZGllIEluZm9ybWF0aW9uIMO8YmVyIGRpZSBBbHRlcm5hdGl2ZSB3aXJkIGVudGZlcm50LiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyNjMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tcmVtb3ZlLWFsbD4gSTxuYW1lPiIKK21zZ3N0ciAiQjwtLXJlbW92ZS1hbGw+IEk8TmFtZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyNjgKK21zZ2lkICIiCisiUmVtb3ZlIGFsbCBhbHRlcm5hdGl2ZXMgYW5kIGFsbCBvZiB0aGVpciBhc3NvY2lhdGVkIHNsYXZlIGxpbmtzLiAgSTxuYW1lPiBpcyAiCisiYSBuYW1lIGluIHRoZSBhbHRlcm5hdGl2ZXMgZGlyZWN0b3J5LiIKK21zZ3N0ciAiIgorIkVudGZlcm5lIGFsbGUgQWx0ZXJuYXRpdmVuIHVuZCBkZXJlbiB6dWdlaMO2cmlnZSBTbGF2ZS1MaW5rcy4gSTxOYW1lPiBpc3QgZWluICIKKyJOYW1lIGltIEFsdGVybmF0aXYtVmVyemVpY2huaXMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6Mjc1Cittc2dpZCAiIgorIkNhbGwgQjwtLWNvbmZpZz4gb24gYWxsIGFsdGVybmF0aXZlcy4gSXQgY2FuIGJlIHVzZWZ1bGx5IGNvbWJpbmVkIHdpdGggQjwtLSIKKyJza2lwLWF1dG8+IHRvIHJldmlldyBhbmQgY29uZmlndXJlIGFsbCBhbHRlcm5hdGl2ZXMgd2hpY2ggYXJlIG5vdCBjb25maWd1cmVkICIKKyJpbiBhdXRvbWF0aWMgbW9kZS4gQnJva2VuIGFsdGVybmF0aXZlcyBhcmUgYWxzbyBkaXNwbGF5ZWQuICBUaHVzIGEgc2ltcGxlICIKKyJ3YXkgdG8gZml4IGFsbCBicm9rZW4gYWx0ZXJuYXRpdmVzIGlzIHRvIGNhbGwgQjx5ZXMgXFxbYXFdXFxbYXFdIHwgdXBkYXRlLSIKKyJhbHRlcm5hdGl2ZXMgLS1mb3JjZSAtLWFsbD4uIgorbXNnc3RyICIiCisiUnVmdCBCPC0tY29uZmlnPiBmw7xyIGFsbGUgQWx0ZXJuYXRpdmVuIGF1Zi4gSW4gZGVyIEtvbWJpbmF0aW9uIG1pdCBCPC0tc2tpcC0iCisiYXV0bz4ga2FubiBkaWVzIG7DvHR6bGljaCBzZWluLCB1bSBhbGxlIEFsdGVybmF0aXZlbiB6dSBwcsO8ZmVuIHVuZCB6dSAiCisia29uZmlndXJpZXJlbiwgZGllIHNpY2ggbmljaHQgaW0gYXV0b21hdGlzY2hlbiBNb2R1cyBiZWZpbmRlbi4gRGVmZWt0ZSAiCisiQWx0ZXJuYXRpdmVuIHdlcmRlbiBhdWNoIGFuZ2V6ZWlndC4gVW0gYWxsZSBkZWZla3RlbiBBbHRlcm5hdGl2ZW4genUgIgorInJlcGFyaWVyZW4gZGllbnQgZGFoZXIgZWluIGVpbmZhY2hlciBBdWZydWYgdm9uIEI8eWVzIFxcW2FxXVxcW2FxXSB8IHVwZGF0ZS0iCisiYWx0ZXJuYXRpdmVzIC0tZm9yY2UgLS1hbGw+LiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyNzUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tYXV0bz4gSTxuYW1lPiIKK21zZ3N0ciAiQjwtLWF1dG8+IEk8TmFtZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyODIKK21zZ2lkICIiCisiU3dpdGNoIHRoZSBsaW5rIGdyb3VwIGJlaGluZCB0aGUgYWx0ZXJuYXRpdmUgZm9yIEk8bmFtZT4gdG8gYXV0b21hdGljIG1vZGUuICAiCisiSW4gdGhlIHByb2Nlc3MsIHRoZSBtYXN0ZXIgc3ltbGluayBhbmQgaXRzIHNsYXZlcyBhcmUgdXBkYXRlZCB0byBwb2ludCB0byAiCisidGhlIGhpZ2hlc3QgcHJpb3JpdHkgaW5zdGFsbGVkIGFsdGVybmF0aXZlcy4iCittc2dzdHIgIiIKKyLDnGJlcmbDvGhydCBkaWUgTGlua2dydXBwZSBoaW50ZXIgZGVyIEFsdGVybmF0aXZlIG1pdCBOYW1lIEk8TmFtZT4gaW4gZGVuICIKKyJhdXRvbWF0aXNjaGVuIE1vZHVzLiBCZWkgZGllc2VtIFByb3plc3Mgd2VyZGVuIGRlciBNYXN0ZXItU3ltbGluayB1bmQgc2VpbmUgIgorIlNsYXZlLUxpbmtzIGFrdHVhbGlzaWVydCwgdW0gYXVmIGRpZSBpbnN0YWxsaWVydGUgQWx0ZXJuYXRpdmUgbWl0IGjDtmNoc3RlciAiCisiUHJpb3JpdMOkdCB6dSB6ZWlnZW4uIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjI4MgorIywgbm8td3JhcAorbXNnaWQgIkI8LS1kaXNwbGF5PiBJPG5hbWU+IgorbXNnc3RyICJCPC0tZGlzcGxheT4gSTxOYW1lPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjI5MQorbXNnaWQgIiIKKyJEaXNwbGF5IGluZm9ybWF0aW9uIGFib3V0IHRoZSBsaW5rIGdyb3VwLiAgSW5mb3JtYXRpb24gZGlzcGxheWVkIGluY2x1ZGVzICIKKyJ0aGUgZ3JvdXAncyBtb2RlIChhdXRvIG9yIG1hbnVhbCksIHdoaWNoIGFsdGVybmF0aXZlIHRoZSBtYXN0ZXIgbGluayAiCisiY3VycmVudGx5IHBvaW50cyB0bywgd2hhdCBvdGhlciBhbHRlcm5hdGl2ZXMgYXJlIGF2YWlsYWJsZSAoYW5kIHRoZWlyICIKKyJjb3JyZXNwb25kaW5nIHNsYXZlIGFsdGVybmF0aXZlcyksIGFuZCB0aGUgaGlnaGVzdCBwcmlvcml0eSBhbHRlcm5hdGl2ZSAiCisiY3VycmVudGx5IGluc3RhbGxlZC4iCittc2dzdHIgIiIKKyJaZWlnZSBJbmZvcm1hdGlvbmVuIMO8YmVyIGRpZSBMaW5rZ3J1cHBlIGFuLiBEaWUgYW5nZXplaWd0ZW4gSW5mb3JtYXRpb25lbiAiCisiZW50aGFsdGVuIGRlbiBNb2R1cyBkZXIgR3J1cHBlIChhdXRvbWF0aXNjaCBvZGVyIG1hbnVlbGwpLCBhdWYgd2VsY2hlICIKKyJBbHRlcm5hdGl2ZSBkZXIgTWFzdGVyLUxpbmsgZGVyemVpdCB6ZWlndCwgd2VsY2hlIHdlaXRlcmVuIEFsdGVybmF0aXZlbiB6dXIgIgorIlZlcmbDvGd1bmcgc3RlaGVuICh1bmQgaWhyZSB6dWdlaMO2cmlnZW4gU2xhdmUtQWx0ZXJuYXRpdmVuKSwgdW5kIGRpZSAiCisiaW5zdGFsbGllcnRlIEFsdGVybmF0aXZlIG1pdCBkZXIgaMO2Y2hzdGVuIFByaW9yaXTDpHQuIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjI5MQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1nZXQtc2VsZWN0aW9ucz4iCittc2dzdHIgIkI8LS1nZXQtc2VsZWN0aW9ucz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyOTkKK21zZ2lkICIiCisiTGlzdCBhbGwgbWFzdGVyIGFsdGVybmF0aXZlIG5hbWVzICh0aG9zZSBjb250cm9sbGluZyBhIGxpbmsgZ3JvdXApICBhbmQgIgorInRoZWlyIHN0YXR1cy4gRWFjaCBsaW5lIGNvbnRhaW5zIHVwIHRvIDMgZmllbGRzIChzZXBhcmF0ZWQgYnkgb25lIG9yIG1vcmUgIgorInNwYWNlcykuIFRoZSBmaXJzdCBmaWVsZCBpcyB0aGUgYWx0ZXJuYXRpdmUgbmFtZSwgdGhlIHNlY29uZCBvbmUgaXMgdGhlICIKKyJzdGF0dXMgKGVpdGhlciBcImF1dG9cIiBvciBcIm1hbnVhbFwiKSwgYW5kIHRoZSBsYXN0IG9uZSBjb250YWlucyB0aGUgIgorImN1cnJlbnQgY2hvaWNlIGluIHRoZSBhbHRlcm5hdGl2ZSAoYmV3YXJlOiBpdCdzIGEgZmlsZW5hbWUgYW5kIHRodXMgbWlnaHQgIgorImNvbnRhaW4gc3BhY2VzKS4iCittc2dzdHIgIiIKKyJGw7xocmUgYWxsZSBNYXN0ZXItQWx0ZXJuYXRpdi1OYW1lbiAoZGllIGVpbmUgTGlua2dydXBwZSBzdGV1ZXJuKSBtaXQgaWhyZW0gIgorIlN0YXR1cyBhdWYuIEplZGUgWmVpbGUgZW50aMOkbHQgYmlzIHp1IDMgRmVsZGVyIChnZXRyZW5udCBkdXJjaCBtaW5kZXN0ZW5zICIKKyJlaW4gTGVlcnplaWNoZW4pLiBJbSBlcnN0ZW4gRmVsZCBzdGVodCBkZXIgQWx0ZXJuYXRpdi1OYW1lLCBpbSB6d2VpdGVuIGRlciAiCisiU3RhdHVzIChlbnR3ZWRlciDCu2F1dG/CqyBvZGVyIMK7bWFudWFswqspIHVuZCBpbSBsZXR6dGVuIGRpZSBkZXJ6ZWl0aWdlIFdhaGwgIgorImRlciBBbHRlcm5hdGl2ZSAoQWNodHVuZzogRGllcyBpc3QgZWluIERhdGVpbmFtZSwgZGVyIExlZXJ6ZWljaGVuIGVudGhhbHRlbiAiCisia2FubikuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzA0Cittc2dpZCAiIgorIlJlYWQgY29uZmlndXJhdGlvbiBvZiBhbHRlcm5hdGl2ZXMgb24gc3RhbmRhcmQgaW5wdXQgaW4gdGhlIGZvcm1hdCBnZW5lcmF0ZWQgIgorImJ5IEI8dXBkYXRlLWFsdGVybmF0aXZlcyAtLWdldC1zZWxlY3Rpb25zPiBhbmQgcmVjb25maWd1cmUgdGhlbSBhY2NvcmRpbmdseS4iCittc2dzdHIgIiIKKyJMZXNlIGVpbmUgS29uZmlndXJhdGlvbiB2b24gQWx0ZXJuYXRpdmVuIMO8YmVyIGRpZSBTdGFuZGFyZGVpbmdhYmUgaW0gdm9uICIKKyJCPHVwZGF0ZS1hbHRlcm5hdGl2ZXMgLS1nZXQtc2VsZWN0aW9ucz4gZ2VuZXJpZXJ0ZW4gRm9ybWF0IHVuZCBrb25maWd1cmllcmUgIgorImRpZSBBbHRlcm5hdGl2ZW4gZW50c3ByZWNoZW5kIG5ldS4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzA0CisjLCBuby13cmFwCittc2dpZCAiQjwtLXF1ZXJ5PiBJPG5hbWU+IgorbXNnc3RyICJCPC0tcXVlcnk+IEk8TmFtZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMDkKK21zZ2lkICIiCisiRGlzcGxheSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgbGluayBncm91cCBsaWtlIC0tZGlzcGxheSBkb2VzLCBidXQgaW4gYSAiCisibWFjaGluZSBwYXJzZWFibGUgd2F5IChzZWUgc2VjdGlvbiBCPFFVRVJZIEZPUk1BVD4gYmVsb3cpLiIKK21zZ3N0ciAiIgorIlplaWdlIGFsbGUgSW5mb3JtYXRpb25lbiDDvGJlciBkaWUgTGlua2dydXBwZSBhbiwgd2llIGRpZXMgYXVjaCB2b24gLS1kaXNwbGF5ICIKKyJlcmZvbGd0LCBhbGxlcmRpbmdzIGluIGVpbmVtIG1hc2NoaW5lbmxlc2JhcmVuIEZvcm1hdCAoc2llaGUgQWJzY2huaXR0ICIKKyJCPEFCRlJBR0UtRk9STUFUPiB1bnRlbikuIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjMwOQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1saXN0PiBJPG5hbWU+IgorbXNnc3RyICJCPC0tbGlzdD4gSTxOYW1lPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjMxMgorbXNnaWQgIkRpc3BsYXkgYWxsIHRhcmdldHMgb2YgdGhlIGxpbmsgZ3JvdXAuIgorbXNnc3RyICJaZWlnZSBhbGxlIFppZWxlIGRlciBMaW5rZ3J1cHBlIGFuLiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMTIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tY29uZmlnPiBJPG5hbWU+IgorbXNnc3RyICJCPC0tY29uZmlnPiBJPE5hbWU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzE2Cittc2dpZCAiIgorIlNob3cgYXZhaWxhYmxlIGFsdGVybmF0aXZlcyBmb3IgYSBsaW5rIGdyb3VwIGFuZCBhbGxvdyB0aGUgdXNlciB0byAiCisiaW50ZXJhY3RpdmVseSBzZWxlY3Qgd2hpY2ggb25lIHRvIHVzZS4gVGhlIGxpbmsgZ3JvdXAgaXMgdXBkYXRlZC4iCittc2dzdHIgIiIKKyJaZWlnZSBkaWUgdmVyZsO8Z2JhcmVuIEFsdGVybmF0aXZlbiBmw7xyIGVpbmUgTGlua2dydXBwZSBhbiB1bmQgZXJsYXViZSBlcyBkZW0gIgorIkJlbnV0emVyIGludGVyYWt0aXYgYXVzenV3w6RobGVuLCB3ZWxjaGUgenUgYmVudXR6ZW4gaXN0LiBEaWUgTGlua2dydXBwZSB3aXJkICIKKyJha3R1YWxpc2llcnQuIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjMyNAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1hbHRkaXI+STwgZGlyZWN0b3J5PiIKK21zZ3N0ciAiQjwtLWFsdGRpcj5JPCBWZXJ6ZWljaG5pcz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMjgKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRoZSBhbHRlcm5hdGl2ZXMgZGlyZWN0b3J5LCB3aGVuIHRoaXMgaXMgdG8gYmUgZGlmZmVyZW50IGZyb20gdGhlICIKKyJkZWZhdWx0LiIKK21zZ3N0ciAiIgorIlNwZXppZml6aWVydCBkYXMgQWx0ZXJuYXRpdi1WZXJ6ZWljaG5pcywgd2VubiBzaWNoIGRpZXNlcyB2b24gZGVyICIKKyJTdGFuZGFyZGVpbnN0ZWxsdW5nIHVudGVyc2NoZWlkZW4gc29sbC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMzIKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRoZSBhZG1pbmlzdHJhdGl2ZSBkaXJlY3RvcnksIHdoZW4gdGhpcyBpcyB0byBiZSBkaWZmZXJlbnQgZnJvbSAiCisidGhlIGRlZmF1bHQuIgorbXNnc3RyICIiCisiU3BlemlmaXppZXJ0IGRhcyBhZG1pbmlzdHJhdGl2ZSBWZXJ6ZWljaG5pcywgd2VubiBzaWNoIGRpZXNlcyB2b24gZGVyICIKKyJTdGFuZGFyZGVpbnN0ZWxsdW5nIHVudGVyc2NoZWlkZW4gc29sbC4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzMyCisjLCBuby13cmFwCittc2dpZCAiQjwtLWxvZz5JPCBmaWxlPiIKK21zZ3N0ciAiQjwtLWxvZz5JPCBEYXRlaT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMzYKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRoZSBsb2cgZmlsZSwgd2hlbiB0aGlzIGlzIHRvIGJlIGRpZmZlcmVudCBmcm9tIHRoZSBkZWZhdWx0ICgvdmFyLyIKKyJsb2cvYWx0ZXJuYXRpdmVzLmxvZykuIgorbXNnc3RyICIiCisiR2lidCBkaWUgUHJvdG9rb2xsZGF0ZWkgYW4sIHdlbm4gZGllc2Ugc2ljaCB2b24gZGVyIFZvcmdhYmUgKC92YXIvbG9nLyIKKyJhbHRlcm5hdGl2ZXMubG9nKSB1bnRlcnNjaGVpZGVuIHNvbGwuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzQwCittc2dpZCAiIgorIkxldCBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IHJlcGxhY2Ugb3IgZHJvcCBhbnkgcmVhbCBmaWxlIHRoYXQgaXMgaW5zdGFsbGVkICIKKyJ3aGVyZSBhbiBhbHRlcm5hdGl2ZSBsaW5rIGhhcyB0byBiZSBpbnN0YWxsZWQgb3IgcmVtb3ZlZC4iCittc2dzdHIgIiIKKyJMw6Rzc3QgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBhbGxlIGVjaHRlbiBEYXRlaWVuIGVyc2V0emVuIG9kZXIgZW50ZmVybmVuLCAiCisiZGllIHNpY2ggYW4gU3RlbGxlbiBiZWZpbmRlbiwgYW4gZGVuZW4gZWluIEFsdGVybmF0aXYtTGluayBpbnN0YWxsaWVydCAiCisid2VyZGVuIG11c3MuIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM0MAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1za2lwLWF1dG8+IgorbXNnc3RyICJCPC0tc2tpcC1hdXRvPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM0NQorbXNnaWQgIiIKKyJTa2lwIGNvbmZpZ3VyYXRpb24gcHJvbXB0IGZvciBhbHRlcm5hdGl2ZXMgd2hpY2ggYXJlIHByb3Blcmx5IGNvbmZpZ3VyZWQgaW4gIgorImF1dG9tYXRpYyBtb2RlLiBUaGlzIG9wdGlvbiBpcyBvbmx5IHJlbGV2YW50IHdpdGggQjwtLWNvbmZpZz4gb3IgQjwtLWFsbD4uIgorbXNnc3RyICIiCisiw5xiZXJzcHJpbmd0IGRpZSBLb25maWd1cmF0aW9uc2FiZnJhZ2UgZsO8ciBBbHRlcm5hdGl2ZW4sIGRpZSBrb3JyZWt0IGltICIKKyJhdXRvbWF0aXNjaGUgTW9kdXMga29uZmlndXJpZXJ0IHNpbmQuIERpZXNlIE9wdGlvbiBpc3QgbnVyIG1pdCBCPC0tY29uZmlnPiAiCisib2RlciBCPC0tYWxsPiByZWxldmFudC4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzQ1CisjLCBuby13cmFwCittc2dpZCAiQjwtLXZlcmJvc2U+IgorbXNnc3RyICJCPC0tdmVyYm9zZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozNTAKK21zZ2lkICJHZW5lcmF0ZSBtb3JlIGNvbW1lbnRzIGFib3V0IHdoYXQgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBpcyBkb2luZy4iCittc2dzdHIgIkVyemV1Z3QgbWVociBLb21tZW50YXJlIMO8YmVyIGRpZSBUw6R0aWdrZWl0IHZvbiBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM1MworbXNnaWQgIkRvbid0IGdlbmVyYXRlIGFueSBjb21tZW50cyB1bmxlc3MgZXJyb3JzIG9jY3VyLiIKK21zZ3N0ciAiRXJ6ZXVnZSBrZWluZSBLb21tZW50YXJlLCBlcyBzZWkgZGVubiwgZWluIEZlaGxlciB0cml0dCBhdWYuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzU5Cittc2dpZCAiIgorIklmIHNldCBhbmQgdGhlIEI8LS1hZG1pbmRpcj4gb3B0aW9uIGhhcyBub3QgYmVlbiBzcGVjaWZpZWQsIGl0IHdpbGwgYmUgdXNlZCAiCisiYXMgdGhlIGJhc2UgYWRtaW5pc3RyYXRpdmUgZGlyZWN0b3J5LiIKK21zZ3N0ciAiIgorIkZhbGxzIGdlc2V0enQgdW5kIGRpZSBPcHRpb24gQjwtLWFkbWluZGlyPiBuaWNodCBhbmdlZ2ViZW4gd3VyZGUsIHdpcmQgZGllcyAiCisiYWxzIEJhc2lzLUFkbWluaXN0cmF0aW9uc3ZlcnplaWNobmlzIHZlcndhbmR0LiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozNjEKKyMsIG5vLXdyYXAKK21zZ2lkICJJPC9ldGMvYWx0ZXJuYXRpdmVzLz4iCittc2dzdHIgIkk8L2V0Yy9hbHRlcm5hdGl2ZXMvPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM2NworbXNnaWQgIiIKKyJUaGUgZGVmYXVsdCBhbHRlcm5hdGl2ZXMgZGlyZWN0b3J5LiAgQ2FuIGJlIG92ZXJyaWRkZW4gYnkgdGhlIEI8LS1hbHRkaXI+ICIKKyJvcHRpb24uIgorbXNnc3RyICIiCisiRGFzIHN0YW5kYXJkbcOkw59pZ2UgQWx0ZXJuYXRpdi1WZXJ6ZWljaG5pcy4gS2FubiBtaXR0ZWxzIGRlciBPcHRpb24gQjwtLSIKKyJhbHRkaXI+IGdlw6RuZGVydCB3ZXJkZW4uIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM2NworIywgbm8td3JhcAorbXNnaWQgIkk8L3Zhci9saWIvZHBrZy9hbHRlcm5hdGl2ZXMvPiIKK21zZ3N0ciAiSTwvdmFyL2xpYi9kcGtnL2FsdGVybmF0aXZlcy8+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzczCittc2dpZCAiIgorIlRoZSBkZWZhdWx0IGFkbWluaXN0cmF0aW9uIGRpcmVjdG9yeS4gIENhbiBiZSBvdmVycmlkZGVuIGJ5IHRoZSBCPC0tIgorImFkbWluZGlyPiBvcHRpb24uIgorbXNnc3RyICIiCisiRGFzIHN0YW5kYXJkbcOkw59pZ2UgYWRtaW5pc3RyYXRpdmUgVmVyemVpY2huaXMuIEthbm4gbWl0dGVscyBkZXIgQjwtLSIKKyJhZG1pbmRpcj4gT3B0aW9uIGdlw6RuZGVydCB3ZXJkZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6Mzc4Cittc2dpZCAiVGhlIHJlcXVlc3RlZCBhY3Rpb24gd2FzIHN1Y2Nlc3NmdWxseSBwZXJmb3JtZWQuIgorbXNnc3RyICJEaWUgYW5nZWZvcmRlcnRlIEFrdGlvbiB3dXJkZSBlcmZvbGdyZWljaCBhdXNnZWbDvGhydC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozODIKK21zZ2lkICIiCisiUHJvYmxlbXMgd2VyZSBlbmNvdW50ZXJlZCB3aGlsc3QgcGFyc2luZyB0aGUgY29tbWFuZCBsaW5lIG9yIHBlcmZvcm1pbmcgdGhlICIKKyJhY3Rpb24uIgorbXNnc3RyICIiCisiQmVpbSBMZXNlbiBkZXIgS29tbWFuZG96ZWlsZSBvZGVyIGJlaW0gQXVzZsO8aHJlbiBkZXIgQWt0aW9uIHRyYXRlbiBQcm9ibGVtZSAiCisiYXVmLiIKKworIy4gdHlwZTogU0gKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozODMKKyMsIG5vLXdyYXAKK21zZ2lkICJRVUVSWSBGT1JNQVQiCittc2dzdHIgIkFCRlJBR0UtRk9STUFUIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6Mzg4Cittc2dpZCAiIgorIlRoZSBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXMgLS1xdWVyeT4gZm9ybWF0IGlzIHVzaW5nIGFuIFJGQzgyMi1saWtlIGZsYXQgIgorImZvcm1hdC4gSXQncyBtYWRlIG9mIEk8bj4gKyAxIGJsb2NrcyB3aGVyZSBJPG4+IGlzIHRoZSBudW1iZXIgb2YgIgorImFsdGVybmF0aXZlcyBhdmFpbGFibGUgaW4gdGhlIHF1ZXJpZWQgbGluayBncm91cC4gVGhlIGZpcnN0IGJsb2NrIGNvbnRhaW5zICIKKyJ0aGUgZm9sbG93aW5nIGZpZWxkczoiCittc2dzdHIgIiIKKyJEYXMgRm9ybWF0IHZvbiBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXMgLS1xdWVyeT4gaXN0IGVpbiBSRkM4MjItYXJ0aWdlcywgIgorImZsYWNoZXMgRm9ybWF0LiBFcyBiZXN0ZWh0IGF1cyBJPG4+KzEgQmzDtmNrZW4sIHdvYmVpIEk8bj4gZGllIEFuemFobCBkZXIgaW4gIgorImVpbmVyIGFiZ2VmcmFndGVuIExpbmtncnVwcGUgdmVyZsO8Z2JhcmVuIEFsdGVybmF0aXZlbiBpc3QuIERlciBlcnN0ZSBCbG9jayAiCisiZW50aMOkbHQgZGllIGZvbGdlbmRlbiBGZWxkZXI6IgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM4OAorIywgbm8td3JhcAorbXNnaWQgIkI8TGluazo+STwgbGluaz4iCittc2dzdHIgIkI8TGluazo+STwgTGluaz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozOTEKK21zZ2lkICJUaGUgZ2VuZXJpYyBuYW1lIG9mIHRoZSBhbHRlcm5hdGl2ZS4iCittc2dzdHIgIkRlciBnZW5lcmlzY2hlIE5hbWUgZGVyIEFsdGVybmF0aXZlLiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozOTEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPFN0YXR1czo+STwgc3RhdHVzPiIKK21zZ3N0ciAiQjxTdGF0dXM6Pkk8IFN0YXR1cz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozOTQKK21zZ2lkICJUaGUgc3RhdHVzIG9mIHRoZSBhbHRlcm5hdGl2ZSAoQjxhdXRvPiBvciBCPG1hbnVhbD4pLiIKK21zZ3N0ciAiRGVyIFN0YXR1cyBkZXIgQWx0ZXJuYXRpdmUgKEI8YXV0bz4gb2RlciBCPG1hbnVhbD4pLiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozOTQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPEJlc3Q6Pkk8IGJlc3QtY2hvaWNlPiIKK21zZ3N0ciAiQjxCZXN0Oj5JPCBiZXN0ZS1XYWhsPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM5OAorbXNnaWQgIiIKKyJUaGUgcGF0aCBvZiB0aGUgYmVzdCBhbHRlcm5hdGl2ZSBmb3IgdGhpcyBsaW5rIGdyb3VwLiBOb3QgcHJlc2VudCBpZiB0aGVyZSAiCisiaXMgbm8gYWx0ZXJuYXRpdmVzIGF2YWlsYWJsZS4iCittc2dzdHIgIiIKKyJEZXIgUGZhZCBkZXIgYmVzdGVuIEFsdGVybmF0aXZlIGbDvHIgZGllc2UgTGlua2dydXBwZS4gTmljaHQgdm9yaGFuZGVuLCBmYWxscyAiCisia2VpbmUgQWx0ZXJuYXRpdmUgdmVyZsO8Z2JhciBpc3QuIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM5OAorIywgbm8td3JhcAorbXNnaWQgIkI8VmFsdWU6Pkk8IGN1cnJlbnRseS1zZWxlY3RlZC1hbHRlcm5hdGl2ZT4iCittc2dzdHIgIkI8VmFsdWU6Pkk8IGRlcnplaXQtYXVzZ2V3w6RobHRlLUFsdGVybmF0aXZlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQwMgorbXNnaWQgIiIKKyJUaGUgcGF0aCBvZiB0aGUgY3VycmVudGx5IHNlbGVjdGVkIGFsdGVybmF0aXZlLiBJdCBjYW4gYWxzbyB0YWtlIHRoZSBtYWdpYyAiCisidmFsdWUgQjxub25lPi4gSXQgaXMgdXNlZCBpZiB0aGUgbGluayBkb2Vzbid0IGV4aXN0LiIKK21zZ3N0ciAiIgorIkRlciBQZmFkIGRlciBkZXJ6ZWl0IGF1c2dld8OkaGx0ZW4gQWx0ZXJuYXRpdmUuIEVzIGFremVwdGllcnQgYXVjaCBkZW4gIgorIm1hZ2lzY2hlbiBXZXJ0IEI8bm9uZT4sIGRlciB2ZXJ3YW5kdCB3aXJkLCBmYWxscyBkZXIgTGluayBuaWNodCBleGlzdGllcnQuIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQwMworIywgbm8td3JhcAorbXNnaWQgIlRoZSBvdGhlciBibG9ja3MgZGVzY3JpYmUgdGhlIGF2YWlsYWJsZSBhbHRlcm5hdGl2ZXMgaW4gdGhlIHF1ZXJpZWQgbGluayBncm91cDoiCittc2dzdHIgIkRpZSBhbmRlcmVuIEJsw7Zja2UgYmVzY2hyZWliZW4gZGllIHZlcmbDvGdiYXJlbiBBbHRlcm5hdGl2ZW4gaW4gZGVyIGFiZ2VmcmFndGVuIExpbmtncnVwcGU6IgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQwNQorIywgbm8td3JhcAorbXNnaWQgIkI8QWx0ZXJuYXRpdmU6Pkk8IHBhdGgtb2YtdGhpcy1hbHRlcm5hdGl2ZT4iCittc2dzdHIgIkI8QWx0ZXJuYXRpdmU6Pkk8IFBmYWQtZGllc2VyLUFsdGVybmF0aXZlbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0MDgKK21zZ2lkICJQYXRoIHRvIHRoaXMgYmxvY2sncyBhbHRlcm5hdGl2ZS4iCittc2dzdHIgIlBmYWQgenVtIEJsb2NrIGRpZXNlciBBbHRlcm5hdGl2ZW4uIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQwOAorIywgbm8td3JhcAorbXNnaWQgIkI8UHJpb3JpdHk6Pkk8IHByaW9yaXR5LXZhbHVlPiIKK21zZ3N0ciAiQjxQcmlvcml0eTo+STwgUHJpb3JpdMOkdHN3ZXJ0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQxMQorbXNnaWQgIlZhbHVlIG9mIHRoZSBwcmlvcml0eSBvZiB0aGlzIGFsdGVybmF0aXZlLiIKK21zZ3N0ciAiV2VydCBkZXIgUHJpb3JpdMOkdCBkaWVzZXIgQWx0ZXJuYXRpdmVuLiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0MTEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPFNsYXZlczo+STwgbGlzdC1vZi1zbGF2ZXM+IgorbXNnc3RyICJCPFNsYXZlczo+STwgTGlzdGUtdm9uLVNsYXZlcz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0MTcKK21zZ2lkICIiCisiV2hlbiB0aGlzIGhlYWRlciBpcyBwcmVzZW50LCB0aGUgQjxuZXh0PiBsaW5lcyBob2xkIGFsbCBzbGF2ZSBhbHRlcm5hdGl2ZXMgIgorImFzc29jaWF0ZWQgdG8gdGhlIG1hc3RlciBsaW5rIG9mIHRoZSBhbHRlcm5hdGl2ZS4gVGhlcmUgaXMgb25lIHNsYXZlIHBlciAiCisibGluZS4gRWFjaCBsaW5lIGNvbnRhaW5zIG9uZSBzcGFjZSwgdGhlIGdlbmVyaWMgbmFtZSBvZiB0aGUgc2xhdmUgIgorImFsdGVybmF0aXZlLCBhbm90aGVyIHNwYWNlLCBhbmQgdGhlIHBhdGggdG8gdGhlIHNsYXZlIGFsdGVybmF0aXZlLiIKK21zZ3N0ciAiIgorIldlbm4gZGllc2UgS29wZnplaWxlIHZvcmhhbmRlbiBpc3QgZW50aMOkbHQgZGllIEI8bsOkY2hzdGU+IFplaWxlIGFsbGUgU2xhdmUtIgorIkFsdGVybmF0aXZlbiwgZGllIGRlbSBNYXN0ZXJsaW5rIGRpZXNlciBBbHRlcm5hdGl2ZW4genVnZW9yZG5ldCBzaW5kLiBQcm8gIgorIlplaWxlIHdpcmQgZWluIFNsYXZlIGF1ZmdlZsO8aHJ0LiBKZWRlIFplaWxlIGVudGjDpGx0IGVpbiBMZWVyemVpY2hlbiwgZGVuICIKKyJnZW5lcmlzY2hlbiBOYW1lbiBkZXMgU2xhdmVzLCBlaW4gd2VpdGVyZXMgTGVlcnplaWNoZW4gdW5kIGRlbiBQZmFkIHp1IGRlciAiCisiU2xhdmUtQWx0ZXJuYXRpdmUuIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQxOAorIywgbm8td3JhcAorbXNnaWQgIkI8RXhhbXBsZT4iCittc2dzdHIgIkI8QmVpc3BpZWw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDI2CisjLCBuby13cmFwCittc2dpZCAiIgorIiQgdXBkYXRlLWFsdGVybmF0aXZlcyAtLXF1ZXJ5IGVkaXRvclxuIgorIkxpbms6IGVkaXRvclxuIgorIlN0YXR1czogYXV0b1xuIgorIkJlc3Q6IC91c3IvYmluL3ZpbS5ndGtcbiIKKyJWYWx1ZTogL3Vzci9iaW4vdmltLmd0a1xuIgorbXNnc3RyICIiCisiJCB1cGRhdGUtYWx0ZXJuYXRpdmVzIC0tcXVlcnkgZWRpdG9yXG4iCisiTGluazogZWRpdG9yXG4iCisiU3RhdHVzOiBhdXRvXG4iCisiQmVzdDogL3Vzci9iaW4vdmltLmd0a1xuIgorIlZhbHVlOiAvdXNyL2Jpbi92aW0uZ3RrXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0MzEKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiQWx0ZXJuYXRpdmU6IC9iaW4vZWRcbiIKKyJQcmlvcml0eTogLTEwMFxuIgorIlNsYXZlczpcbiIKKyIgZWRpdG9yLjEuZ3ogL3Vzci9zaGFyZS9tYW4vbWFuMS9lZC4xLmd6XG4iCittc2dzdHIgIiIKKyJBbHRlcm5hdGl2ZTogL2Jpbi9lZFxuIgorIlByaW9yaXR5OiAtMTAwXG4iCisiU2xhdmVzOlxuIgorIiBlZGl0b3IuMS5neiAvdXNyL3NoYXJlL21hbi9tYW4xL2VkLjEuZ3pcbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQ0NgorIywgbm8td3JhcAorbXNnaWQgIiIKKyJBbHRlcm5hdGl2ZTogL3Vzci9iaW4vdmltLmd0a1xuIgorIlByaW9yaXR5OiA1MFxuIgorIlNsYXZlczpcbiIKKyIgZWRpdG9yLjEuZ3ogL3Vzci9zaGFyZS9tYW4vbWFuMS92aW0uMS5nelxuIgorIiBlZGl0b3IucnUuMS5neiAvdXNyL3NoYXJlL21hbi9ydS9tYW4xL3ZpbS4xLmd6XG4iCisiIGVkaXRvci5wbC5JU084ODU5LTIuMS5neiAvdXNyL3NoYXJlL21hbi9wbC5JU084ODU5LTIvbWFuMS92aW0uMS5nelxuIgorIiBlZGl0b3IuaXQuSVNPODg1OS0xLjEuZ3ogL3Vzci9zaGFyZS9tYW4vaXQuSVNPODg1OS0xL21hbjEvdmltLjEuZ3pcbiIKKyIgZWRpdG9yLnBsLlVURi04LjEuZ3ogL3Vzci9zaGFyZS9tYW4vcGwuVVRGLTgvbWFuMS92aW0uMS5nelxuIgorIiBlZGl0b3IuaXQuMS5neiAvdXNyL3NoYXJlL21hbi9pdC9tYW4xL3ZpbS4xLmd6XG4iCisiIGVkaXRvci5mci5VVEYtOC4xLmd6IC91c3Ivc2hhcmUvbWFuL2ZyLlVURi04L21hbjEvdmltLjEuZ3pcbiIKKyIgZWRpdG9yLmZyLjEuZ3ogL3Vzci9zaGFyZS9tYW4vZnIvbWFuMS92aW0uMS5nelxuIgorIiBlZGl0b3IuaXQuVVRGLTguMS5neiAvdXNyL3NoYXJlL21hbi9pdC5VVEYtOC9tYW4xL3ZpbS4xLmd6XG4iCisiIGVkaXRvci5wbC4xLmd6IC91c3Ivc2hhcmUvbWFuL3BsL21hbjEvdmltLjEuZ3pcbiIKKyIgZWRpdG9yLmZyLklTTzg4NTktMS4xLmd6IC91c3Ivc2hhcmUvbWFuL2ZyLklTTzg4NTktMS9tYW4xL3ZpbS4xLmd6XG4iCittc2dzdHIgIiIKKyJBbHRlcm5hdGl2ZTogL3Vzci9iaW4vdmltLmd0a1xuIgorIlByaW9yaXR5OiA1MFxuIgorIlNsYXZlczpcbiIKKyIgZWRpdG9yLjEuZ3ogL3Vzci9zaGFyZS9tYW4vbWFuMS92aW0uMS5nelxuIgorIiBlZGl0b3IucnUuMS5neiAvdXNyL3NoYXJlL21hbi9ydS9tYW4xL3ZpbS4xLmd6XG4iCisiIGVkaXRvci5wbC5JU084ODU5LTIuMS5neiAvdXNyL3NoYXJlL21hbi9wbC5JU084ODU5LTIvbWFuMS92aW0uMS5nelxuIgorIiBlZGl0b3IuaXQuSVNPODg1OS0xLjEuZ3ogL3Vzci9zaGFyZS9tYW4vaXQuSVNPODg1OS0xL21hbjEvdmltLjEuZ3pcbiIKKyIgZWRpdG9yLnBsLlVURi04LjEuZ3ogL3Vzci9zaGFyZS9tYW4vcGwuVVRGLTgvbWFuMS92aW0uMS5nelxuIgorIiBlZGl0b3IuaXQuMS5neiAvdXNyL3NoYXJlL21hbi9pdC9tYW4xL3ZpbS4xLmd6XG4iCisiIGVkaXRvci5mci5VVEYtOC4xLmd6IC91c3Ivc2hhcmUvbWFuL2ZyLlVURi04L21hbjEvdmltLjEuZ3pcbiIKKyIgZWRpdG9yLmZyLjEuZ3ogL3Vzci9zaGFyZS9tYW4vZnIvbWFuMS92aW0uMS5nelxuIgorIiBlZGl0b3IuaXQuVVRGLTguMS5neiAvdXNyL3NoYXJlL21hbi9pdC5VVEYtOC9tYW4xL3ZpbS4xLmd6XG4iCisiIGVkaXRvci5wbC4xLmd6IC91c3Ivc2hhcmUvbWFuL3BsL21hbjEvdmltLjEuZ3pcbiIKKyIgZWRpdG9yLmZyLklTTzg4NTktMS4xLmd6IC91c3Ivc2hhcmUvbWFuL2ZyLklTTzg4NTktMS9tYW4xL3ZpbS4xLmd6XG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0NTgKK21zZ2lkICIiCisiV2l0aCBCPC0tdmVyYm9zZT4gQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBjaGF0dGVycyBpbmNlc3NhbnRseSBhYm91dCBpdHMgIgorImFjdGl2aXRpZXMgb24gaXRzIHN0YW5kYXJkIG91dHB1dCBjaGFubmVsLiAgSWYgcHJvYmxlbXMgb2NjdXIsIEI8dXBkYXRlLSIKKyJhbHRlcm5hdGl2ZXM+IG91dHB1dHMgZXJyb3IgbWVzc2FnZXMgb24gaXRzIHN0YW5kYXJkIGVycm9yIGNoYW5uZWwgYW5kICIKKyJyZXR1cm5zIGFuIGV4aXQgc3RhdHVzIG9mIDIuICBUaGVzZSBkaWFnbm9zdGljcyBzaG91bGQgYmUgc2VsZi1leHBsYW5hdG9yeTsgIgorImlmIHlvdSBkbyBub3QgZmluZCB0aGVtIHNvLCBwbGVhc2UgcmVwb3J0IHRoaXMgYXMgYSBidWcuIgorbXNnc3RyICIiCisiTWl0IEI8LS12ZXJib3NlPiBxdWF0c2NodCBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IG9obmUgVW50ZXJsYXNzIMO8YmVyIHNlaW5lICIKKyJBa3Rpdml0w6R0ZW4gYXVmIHNlaW5lbSBTdGFuZGFyZGF1c2dhYmVrYW5hbC4gRmFsbHMgUHJvYmxlbWUgYXVmdHJldGVuLCBnaWJ0ICIKKyJCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IGVpbmUgRmVobGVybWVsZHVuZyBhdWYgc2VpbmVtIFN0YW5kYXJkZmVobGVya2FuYWwgYXVzICIKKyJ1bmQgYmVlbmRldCBzaWNoIG1pdCBkZW0gRXhpdC1TdGF0dXMgMi4gRGllIERpYWdub3N0aWtlbiBzb2xsdGVuICIKKyJzZWxic3Rlcmtsw6RyZW5kIHNlaW47IGZhbGxzIFNpZSBkaWVzIG5pY2h0IHNvIGVtcGZpbmRlbiwgbWVsZGVuIFNpZSBkaWVzICIKKyJiaXR0ZSBhbHMgRmVobGVyLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQ2NAorbXNnaWQgIiIKKyJUaGVyZSBhcmUgc2V2ZXJhbCBwYWNrYWdlcyB3aGljaCBwcm92aWRlIGEgdGV4dCBlZGl0b3IgY29tcGF0aWJsZSB3aXRoICIKKyJCPHZpPiwgZm9yIGV4YW1wbGUgQjxudmk+IGFuZCBCPHZpbT4uIFdoaWNoIG9uZSBpcyB1c2VkIGlzIGNvbnRyb2xsZWQgYnkgdGhlICIKKyJsaW5rIGdyb3VwIEI8dmk+LCB3aGljaCBpbmNsdWRlcyBsaW5rcyBmb3IgdGhlIHByb2dyYW0gaXRzZWxmIGFuZCB0aGUgIgorImFzc29jaWF0ZWQgbWFucGFnZS4iCittc2dzdHIgIiIKKyJFcyBnaWJ0IG1laHJlcmUgUGFrZXRlLCBkaWUgZWluZW4genVtIEI8dmk+LWtvbXBhdGlibGVuIFRleHRlZGl0b3IgIgorImJlcmVpdHN0ZWxsZW4sIGJlaXNwaWVsc3dlaXNlIEI8bnZpPiB1bmQgQjx2aW0+LiBXZWxjaGVyIGJlbnV0enQgd2lyZCwgd2lyZCAiCisiZHVyY2ggZGllIExpbmtncnVwcGUgQjx2aT4gZWluZ2VzdGVsbHQsIHdlbGNoZSBMaW5rcyBmw7xyIGRhcyBQcm9ncmFtbSBzZWxiZXIgIgorInVuZCBkaWUgenVnZWjDtnJpZ2UgSGFuZGJ1Y2hzZWl0ZSBiZWluaGFsdGV0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQ2NworbXNnaWQgIiIKKyJUbyBkaXNwbGF5IHRoZSBhdmFpbGFibGUgcGFja2FnZXMgd2hpY2ggcHJvdmlkZSBCPHZpPiBhbmQgdGhlIGN1cnJlbnQgIgorInNldHRpbmcgZm9yIGl0LCB1c2UgdGhlIEI8LS1kaXNwbGF5PiBhY3Rpb246IgorbXNnc3RyICIiCisiVW0gYWxsZSB2ZXJmw7xnYmFyZW4gUHJvZ3JhbW1lIGFuenV6ZWlnZW4sIGRpZSBCPHZpPiBiZXJlaXRzdGVsbGVuLCB1bmQgZGllICIKKyJkYXp1IGdlaMO2cmlnZW4gRWluc3RlbGx1bmdlbiwgYmVudXR6ZW4gU2llIGRpZSBBa3Rpb24gQjwtLWRpc3BsYXk+OiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQ3MAorbXNnaWQgIkI8dXBkYXRlLWFsdGVybmF0aXZlcyAtLWRpc3BsYXkgdmk+IgorbXNnc3RyICJCPHVwZGF0ZS1hbHRlcm5hdGl2ZXMgLS1kaXNwbGF5IHZpPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQ3NAorbXNnaWQgIiIKKyJUbyBjaG9vc2UgYSBwYXJ0aWN1bGFyIEI8dmk+IGltcGxlbWVudGF0aW9uLCB1c2UgdGhpcyBjb21tYW5kIGFzIHJvb3QgYW5kICIKKyJ0aGVuIHNlbGVjdCBhIG51bWJlciBmcm9tIHRoZSBsaXN0OiIKK21zZ3N0ciAiIgorIlVtIGVpbmUgYmVzdGltbXRlIEI8dmk+LUltcGxlbWVudGF0aW9uIGF1c3p1d8OkaGxlbiwgYmVudXR6ZW4gU2llIGFscyBSb290ICIKKyJkZW4gZm9sZ2VuZGVuIEJlZmVobCB1bmQgd8OkaGxlbiBkYW5uIGVpbmUgWmFobCBhdXMgZGVyIExpc3RlIGF1czoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0NzcKK21zZ2lkICJCPHVwZGF0ZS1hbHRlcm5hdGl2ZXMgLS1jb25maWcgdmk+IgorbXNnc3RyICJCPHVwZGF0ZS1hbHRlcm5hdGl2ZXMgLS1jb25maWcgdmk+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDgxCittc2dpZCAiIgorIlRvIGdvIGJhY2sgdG8gaGF2aW5nIHRoZSBCPHZpPiBpbXBsZW1lbnRhdGlvbiBjaG9zZW4gYXV0b21hdGljYWxseSwgZG8gdGhpcyAiCisiYXMgcm9vdDoiCittc2dzdHIgIiIKKyJVbSB6dXIgYXV0b21hdGlzY2hlbiBBdXN3YWhsIGRlciBCPHZpPi1JbXBsZW1lbnRhdGlvbiB6dXLDvGNrenVrZWhyZW4sIGbDvGhyZW4gIgorIlNpZSBmb2xnZW5kZXMgYWxzIFJvb3QgYXVzOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQ4NAorbXNnaWQgIkI8dXBkYXRlLWFsdGVybmF0aXZlcyAtLWF1dG8gdmk+IgorbXNnc3RyICJCPHVwZGF0ZS1hbHRlcm5hdGl2ZXMgLS1hdXRvIHZpPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQ4OAorbXNnaWQgIiIKKyJJZiB5b3UgZmluZCBhIGJ1ZywgcGxlYXNlIHJlcG9ydCBpdCB1c2luZyB0aGUgRGViaWFuIGJ1Zy10cmFja2luZyBzeXN0ZW0uIgorbXNnc3RyICIiCisiRmFsbHMgU2llIGVpbmVuIEZlaGxlciBmaW5kZW4sIG1lbGRlbiBTaWUgaWhuIGJpdHRlIMO8YmVyIGRpZSBGZWhsZXJkYXRlbmJhbmsgIgorInZvbiBEZWJpYW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDkzCittc2dpZCAiIgorIklmIHlvdSBmaW5kIGFueSBkaXNjcmVwYW5jeSBiZXR3ZWVuIHRoZSBvcGVyYXRpb24gb2YgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiAiCisiYW5kIHRoaXMgbWFudWFsIHBhZ2UsIGl0IGlzIGEgYnVnLCBlaXRoZXIgaW4gdGhlIGltcGxlbWVudGF0aW9uIG9yIHRoZSAiCisiZG9jdW1lbnRhdGlvbjsgcGxlYXNlIHJlcG9ydCBpdC4iCittc2dzdHIgIiIKKyJGYWxscyBTaWUgZWluZW4gVW50ZXJzY2hpZWQgendpc2NoZW4gZGVyIEltcGxlbWVudGF0aW9uIHZvbiBCPHVwZGF0ZS0iCisiYWx0ZXJuYXRpdmVzPiB1bmQgZGllc2VyIEhhbmRidWNoc2VpdGUgZmluZGVuLCBpc3QgZGllcyBlaW4gRmVobGVyLCBlbnR3ZWRlciAiCisiaW4gZGVyIEltcGxlbWVudGF0aW9uIG9kZXIgaW4gZGVyIERva3VtZW50YXRpb247IGJpdHRlIG1lbGRlbiBTaWUgZGllcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo1MDQKK21zZ2lkICIiCisiVGhpcyBtYW51YWwgcGFnZSBpcyBjb3B5cmlnaHQgMTk5NywxOTk4IENoYXJsZXMgQnJpc2NvZS1TbWl0aCBhbmQgb3RoZXJzLiIKK21zZ3N0ciAiIgorIkRpZXNlIEhhbmRidWNoc2VpdGUgaXN0IENvcHlyaWdodCAxOTk3LDE5OTggZHVyY2ggQ2hhcmxlcyBCcmlzY29lLVNtaXRoIHVuZCAiCisiYW5kZXJlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo1MDcKK21zZ2lkICIiCisiVGhpcyBpcyBmcmVlIGRvY3VtZW50YXRpb247IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgdmVyc2lvbiAyIG9yICIKKyJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyBXQVJSQU5UWS4iCittc2dzdHIgIiIKKyJEaWVzIGlzdCBGcmVpZSBEb2t1bWVudGF0aW9uOyBsZXNlbiBTaWUgZGllIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlICIKKyJWZXJzaW9uIDIgb2RlciBuZXVlciBmw7xyIGRpZSBLb3BpZXJiZWRpbmd1bmdlbi4gRXMgZ2lidCBLRUlORSBIYWZ0dW5nLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjUxMAorbXNnaWQgIkI8bG4+KDEpLCBGSFMsIHRoZSBGaWxlc3lzdGVtIEhpZXJhcmNoeSBTdGFuZGFyZC4iCittc2dzdHIgIiIKKyJCPGxuPigxKSwgRkhTLCBkZXIgRGF0ZWlzeXN0ZW0gSGllcmFyY2hpZS1TdGFuZGFyZCAoRmlsZXN5c3RlbSBIaWVyYXJjaHkgIgorIlN0YW5kYXJkKS4iCisKKyN+IG1zZ2lkICJCPEJ1aWxkLUZlYXR1cmVzOj5JPCBmZWF0dXJlcy1saXN0PiIKKyN+IG1zZ3N0ciAiQjxCdWlsZC1GZWF0dXJlczo+IEk8IEZ1bmt0aW9uYWxpdMOkdHNsaXN0ZT4iCisKKyN+IG1zZ2lkICIiCisjfiAiQSBjb21tYS1zZXBhcmF0ZWQgbGlzdCBvZiBuYW1lcyBvZiBidWlsZC10aW1lIGZlYXR1cmVzIHRoYXQgYXJlIHN1cHBvcnRlZCAiCisjfiAiYnkgdGhlIHNvdXJjZSBwYWNrYWdlLiBDdXJyZW50bHksIHRoZSBvbmx5IHN1cHBvcnRlZCBmZWF0dXJlIGlzIEI8YnVpbGQtIgorI34gImFyY2g+LiBJdCBhbGxvd3MgZHBrZy1idWlsZHBhY2thZ2UgdG8gY2FsbCB0aGUgSTxidWlsZC1hcmNoPiBvciBJPGJ1aWxkLSIKKyN+ICJpbmRlcD4gdGFyZ2V0cyBpbiBwbGFjZSBvZiBJPGJ1aWxkPi4iCisjfiBtc2dzdHIgIiIKKyN+ICJFaW5lIGR1cmNoIEtvbW1hIHNlcGFyaWVydGUgTGlzdGUgdm9uIEZ1bmt0aW9uYWxpdMOkdHNuYW1lbiwgZGllIHZvbSAiCisjfiAiUXVlbGxwYWtldCBmw7xyIGRlbiBQYWtldGJhdSB1bnRlcnN0w7x0enQgd2VyZGVuLiBEZXJ6ZWl0IGlzdCBkaWUgZWluemlnZSAiCisjfiAidW50ZXJzdMO8dHp0ZSBGdW5rdGlvbmFsaXTDpHQgQjxidWlsZC1hcmNoPi4gRGllcyBlcmxhdWJ0IGVzIERwa2ctIgorI34gImJ1aWxkcGFja2FnZSwgZGllIFppZWxlIEk8YnVpbGQtYXJjaD4gb2RlciBJPGJ1aWxkLWluZGVwPiBhbnN0ZWxsZSB2b24gIgorI34gIkk8YnVpbGQ+IGF1Znp1cnVmZW4uIgorCisjfiBtc2dpZCAiIgorI34gImJ5IHRoZSBwYWNrYWdlIG1haW50YWluZXIgd2l0aCBvbmUgb2YgdGhlIGZvbGxvd2luZyBmaWxlcyAodGhlIGZpcnN0ICIKKyN+ICJmb3VuZCBpcyB1c2VkKTogQjxkZWJpYW4vYnVpbGRmbGFncy4+STxhcmNoPiwgQjxkZWJpYW4vYnVpbGRmbGFncy4+STxvcz4sICIKKyN+ICJCPGRlYmlhbi9idWlsZGZsYWdzPi4gVGhlIEk8YXJjaD4gc3Vic3RpdHV0aW9uIGNvcnJlc3BvbmRzIHRvIHRoZSAiCisjfiAiREVCX0hPU1RfQVJDSCB2YXJpYWJsZSByZXR1cm5lZCBieSBCPGRwa2ctYXJjaGl0ZWN0dXJlPiB3aGlsZSBJPG9zPiAiCisjfiAiY29ycmVzcG9uZHMgdG8gREVCX0hPU1RfQVJDSF9PUy4iCisjfiBtc2dzdHIgIiIKKyN+ICJkdXJjaCBkZW4gUGFrZXRiZXRyZXVlciBtaXR0ZWxzIGVpbmVyIGRlciBmb2xnZW5kZW4gRGF0ZWllbiAoZGllIHp1ZXJzdCAiCisjfiAiZ2VmdW5kZW5lIHdpcmQgdmVyd2FuZHQpOiBCPGRlYmlhbi9idWlsZGZsYWdzLj5JPEFyY2g+LCBCPGRlYmlhbi8iCisjfiAiYnVpbGRmbGFncy4+STxPUz4sIEI8ZGViaWFuL2J1aWxkZmxhZ3M+LiBEaWUgRXJzZXR6dW5nIEk8QXJjaD4gZW50c3ByaWNodCAiCisjfiAiZGVyIHZvbiBCPGRwa2ctYXJjaGl0ZWN0dXJlPiB6dXLDvGNrZ2VsaWVmZXJ0ZW4gVmFyaWFibGVuIERFQl9IT1NUX0FSQ0gsICIKKyN+ICJ3w6RocmVuZCBJPE9TPiBERUJfSE9TVF9BUkNIX09TIGVudHNwcmljaHQuIgorCisjfiBtc2dpZCAiIgorI34gIkI8ZGViaWFuL2J1aWxkZmxhZ3MuPkk8YXJjaD5CPCwgZGViaWFuL2J1aWxkZmxhZ3MuPkk8b3M+QjwsIGRlYmlhbi8iCisjfiAiYnVpbGRmbGFncz4iCisjfiBtc2dzdHIgIiIKKyN+ICJCPGRlYmlhbi9idWlsZGZsYWdzLj5JPEFyY2g+QjwsIGRlYmlhbi9idWlsZGZsYWdzLj5JPE9TPkI8LCBkZWJpYW4vIgorI34gImJ1aWxkZmxhZ3M+IgorCisjfiBtc2dpZCAiUGFja2FnZSBtYWludGFpbmVyIGNvbmZpZ3VyYXRpb24gZmlsZS4iCisjfiBtc2dzdHIgIktvbmZpZ3VyYXRpb25zZGF0ZWkgZGVzIFBha2V0dmVyd2FsdGVycyIKKworI34gbXNnaWQgIiIKKyN+ICJUaG9zZSBlbnZpcm9ubWVudCB2YXJpYWJsZXMgc2hvdWxkIG5vdCBiZSBzZXQgYnkgb2ZmaWNpYWwgcGFja2FnZXMsIHRoZXkgIgorI34gImFyZSBtZWFudCBmb3IgdXNlcnMgd2hvIGFyZSByZWNvbXBpbGluZyBhIERlYmlhbiBwYWNrYWdlIGFuZCB3b3VsZCBsaWtlICIKKyN+ICJ0byBjaGFuZ2UgdGhlIGNvbXBpbGF0aW9uIGZsYWdzLiIKKyN+IG1zZ3N0ciAiIgorI34gIkRpZXNlIFVtZ2VidW5nc3ZhcmlhYmxlbiBzb2xsdGVuIHZvbiBvZmZpemllbGxlbiBQYWtldGVuIG5pY2h0IGdlc2V0enQgIgorI34gIndlcmRlbiwgc2llIHNpbmQgZsO8ciBCZW51dHplciBnZWRhY2h0LCBkaWUgZWluIERlYmlhbi1QYWtldCBuZXUgIgorI34gIsO8YmVyc2V0emVuIHVuZCBkaWUgw5xiZXJzZXR6dW5nc3NjaGFsdGVyIMOkbmRlcm4gd29sbGVuLiIKKworI34gbXNnaWQgIjIwMTAtMDctMjkiCisjfiBtc2dzdHIgIjIwMTAtMDctMjkiCisKKyN+IG1zZ2lkICJDb21waWxlciBmbGFncyIKKyN+IG1zZ3N0ciAiQ29tcGlsZXItU2NoYWx0ZXIiCisKKyN+IG1zZ2lkICIiCisjfiAiVGhlIEI8Q0ZMQUdTPiwgQjxDWFhGTEFHUz4sIEI8RkZMQUdTPiwgQjxDUFBGTEFHUz4gYW5kIEI8TERGTEFHUz4gIgorI34gImVudmlyb25tZW50IHZhcmlhYmxlcyBhcmUgc2V0IHRvIHRoZSB2YWx1ZXMgdGhhdCBCPGRwa2ctYnVpbGRmbGFncz4gIgorI34gInJldHVybmVkLiBTZWUgaXRzIG1hbnVhbCBwYWdlIGZvciBtb3JlIGluZm9ybWF0aW9uLiIKKyN+IG1zZ3N0ciAiIgorI34gIkRpZSBVbWdlYnVuZ3N2YXJpYWJsZW4gQjxDRkxBR1M+LCBCPENYWEZMQUdTPiwgQjxGRkxBR1M+LCBCPENQUEZMQUdTPiB1bmQgIgorI34gIkI8TERGTEFHUz4gd2VyZGVuIGF1ZiBkaWUgV2VydGUgZ2VzZXR6dCwgZGllIEI8ZHBrZy1idWlsZGZsYWdzPiAiCisjfiAienVyw7xja2xpZWZlcnQuIExlc2VuIFNpZSBkaWUgSGFuZGJ1Y2hzZWl0ZSBmw7xyIHdlaXRlcmUgSW5mb3JtYXRpb25lbi4iCisKKyN+IG1zZ2lkICJCPFBhY2thZ2U6PiBFPGx0PnBhY2thZ2UgbmFtZUU8Z3Q+IgorI34gbXNnc3RyICJCPFBhY2thZ2U6PiBFPGx0PlBha2V0bmFtZUU8Z3Q+IgorCisjfiBtc2dpZCAiQjxNdWx0aS1BcmNoOj4gRTxsdD5zYW1lfGZvcmVpZ258YWxsb3dlZEU8Z3Q+ICIKKyN+IG1zZ3N0ciAiQjxNdWx0aS1BcmNoOj4gRTxsdD5zYW1lfGZvcmVpZ258YWxsb3dlZEU8Z3Q+ICIKKworI34gbXNnaWQgIjIwMTEtMDQtMTUiCisjfiBtc2dzdHIgIjIwMTEtMDQtMTUiCisKKyN+IG1zZ2lkICIyMDA4LTA4LTE4IgorI34gbXNnc3RyICIyMDA4LTA4LTE4IgorCisjfiBtc2dpZCAiMjAwOS0wOC0xNSIKKyN+IG1zZ3N0ciAiMjAwOS0wOC0xNSIKKworI34gbXNnaWQgIjIwMDktMTEtMjEiCisjfiBtc2dzdHIgIjIwMDktMTEtMjEiCisKKyN+IG1zZ2lkICIyMDExLTA0LTI2IgorI34gbXNnc3RyICIyMDExLTA0LTI2IgorCisjfiBtc2dpZCAiMjAxMC0xMC0xMiIKKyN+IG1zZ3N0ciAiMjAxMC0xMC0xMiIKKworI34gbXNnaWQgIjIwMDktMDgtMDciCisjfiBtc2dzdHIgIjIwMDktMDgtMDciCisKKyN+IG1zZ2lkICIyMDEwLTA0LTE2IgorI34gbXNnc3RyICIyMDEwLTA0LTE2IgorCisjfiBtc2dpZCAiMjAwOS0wNS0xOSIKKyN+IG1zZ3N0ciAiMjAwOS0wNS0xOSIKKworI34gbXNnaWQgIjIwMTEtMDQtMjgiCisjfiBtc2dzdHIgIjIwMTEtMDQtMjgiCisKKyN+IG1zZ2lkICIyMDA5LTEwLTAxIgorI34gbXNnc3RyICIyMDA5LTEwLTAxIgorCisjfiBtc2dpZCAiMjAwOS0wNi0yNiIKKyN+IG1zZ3N0ciAiMjAwOS0wNi0yNiIKKworI34gbXNnaWQgIjIwMDktMDUtMTAiCisjfiBtc2dzdHIgIjIwMDktMDUtMTAiCisKKyN+IG1zZ2lkICIyMDEwLTAzLTA3IgorI34gbXNnc3RyICIyMDEwLTAzLTA3IgorCisjfiBtc2dpZCAiIgorI34gIkI8ZHNlbGVjdD4gW0I8LS1hZG1pbmRpcj4gSTxFPGx0PmRpcmVjdG9yeUU8Z3Q+Pl0gW0I8LS1oZWxwPl0gW0I8LS0iCisjfiAidmVyc2lvbj5dIFtCPC0tZXhwZXJ0Pl0gW0I8LS1kZWJ1Zz58QjwtRD5JPEU8bHQ+ZmlsZUU8Z3Q+Pl0gIgorI34gIltJPEU8bHQ+YWN0aW9uRTxndD4+XSBbQjwtLWNvbG91cj58QjwtLWNvbG9yPiBJPHNjcmVlbnBhcnQ6PiIKKyN+ICJbSTxmb3JlZ3JvdW5kPl0sW0k8YmFja2dyb3VuZD5dW0k8OmF0dHI+W0k8K2F0dHIrLi4+XV1dIgorI34gbXNnc3RyICIiCisjfiAiQjxkc2VsZWN0PiBbQjwtLWFkbWluZGlyPiBJPEU8bHQ+VmVyemVpY2huaXNFPGd0Pj5dIFtCPC0taGVscD5dIFtCPC0tIgorI34gInZlcnNpb24+XSBbQjwtLWV4cGVydD5dIFtCPC0tZGVidWc+fEI8LUQ+STxFPGx0PkRhdGVpRTxndD4+XSAiCisjfiAiW0k8RTxsdD5Ba3Rpb25FPGd0Pj5dIFtCPC0tY29sb3VyPnxCPC0tY29sb3I+IEk8QmlsZHNjaGlybXRlaWw6PiIKKyN+ICJbSTxWb3JkZXJncnVuZD5dLFtJPEhpbnRlcmdydW5kPl1bSTw6QXR0cj5bSTwrQXR0cisuLj5dXV0iCisKKyN+IG1zZ2lkICJCPC0tYWRtaW5kaXI+STwgRTxsdD5kaXJlY3RvcnlFPGd0Pj4iCisjfiBtc2dzdHIgIkI8LS1hZG1pbmRpcj5JPCBFPGx0PlZlcnplaWNobmlzRTxndD4+IgorCisjfiBtc2dpZCAiVVNBR0UiCisjfiBtc2dzdHIgIlZFUldFTkRVTkciCisKKyN+IG1zZ2lkICIiCisjfiAiTm90ZTogQjxkcGtnLXNvdXJjZT4gZXhwZWN0cyB0aGUgc291cmNlIHRyZWUgdG8gaGF2ZSBhbGwgcGF0Y2hlcyBsaXN0ZWQgIgorI34gImluIHRoZSBzZXJpZXMgZmlsZSBhcHBsaWVkIHdoZW4geW91IGdlbmVyYXRlIHRoZSBzb3VyY2UgcGFja2FnZS4gIFRoaXMgaXMgIgorI34gIm5vdCB0aGUgY2FzZSB3aGVuIHRoZSBzb3VyY2UgdHJlZSBoYXMgYmVlbiBvYnRhaW5lZCBieSB1bnBhY2tpbmcgYSBzb3VyY2UgIgorI34gInBhY2thZ2UgdXNpbmcgdGhlIEZvcm1hdDogMS4wIGZvciBpbnN0YW5jZS4gVG8gbWl0aWdhdGUgdGhlIHByb2JsZW0sICIKKyN+ICJCPGRwa2ctc291cmNlPiB3aWxsIGFwcGx5IHRoZSBwYXRjaGVzIGJ5IGl0c2VsZiBpZiBpdCBiZWxpZXZlcyB0aGF0IHRoZXkgIgorI34gImhhdmUgbm90IHlldCBiZWVuIGFwcGxpZWQuIFRvIGRldGVjdCB0aGlzIHNpdHVhdGlvbiwgaXQgdXNlcyB0aGUgIgorI34gImZvbGxvd2luZyBoZXVyaXN0aWM6IGl0IGZpbmRzIHRoZSBsaXN0IG9mIHN1cHBvc2VkbHkgdW5hcHBsaWVkIHBhdGNoZXMgIgorI34gIih0aGV5IGFyZSBsaXN0ZWQgaW4gdGhlIEI8c2VyaWVzPiBmaWxlIGJ1dCBub3QgaW4gQjwucGMvYXBwbGllZC0iCisjfiAicGF0Y2hlcz4pLCBhbmQgaWYgdGhlIGZpcnN0IHBhdGNoIGluIHRoYXQgc2V0IGNhbiBiZSBhcHBsaWVkIHdpdGhvdXQgIgorI34gImVycm9ycywgaXQgd2lsbCBhcHBseSB0aGVtIGFsbC4gIFRoZSBvcHRpb24gQjwtLW5vLXByZXBhcmF0aW9uPiBjYW4gYmUgIgorI34gInVzZWQgdG8gZGlzYWJsZSB0aGlzIGJlaGF2aW91ci4gVGhpcyBvcGVyYXRpb24gaXMgdXN1YWxseSBkb25lIGFzIHBhcnQgb2YgIgorI34gInRoZSBCPC0tcHJlcGFyZS1idWlsZD4gY29tbWFuZC4iCisjfiBtc2dzdHIgIiIKKyN+ICJIaW53ZWlzOiBCPGRwa2ctc291cmNlPiBlcndhcnRldCwgZGFzcyBhbGxlIFBhdGNoZXMgYXVzIGRlciBTZXJpZXMtRGF0ZWkgIgorI34gImF1ZiBkZW0gUXVlbGxiYXVtIGFuZ2V3YW5kdCB3dXJkZW4sIHdlbm4gU2llIGRhcyBRdWVsbHBha2V0IGVyc3RlbGxlbi4gIgorI34gIkRpZXMgaXN0IHouQi4gbmljaHQgZGVyIEZhbGwsIHdlbm4gZGVyIFF1ZWxsYmF1bSBkdXJjaCBFbnRwYWNrZW4gZWluZXMgIgorI34gIlF1ZWxscGFrZXRzIGltIEZvcm1hdDogMS4wIGVyaGFsdGVuIHd1cmRlLiBVbSBkYXMgUHJvYmxlbSB6dSBlbnRzY2jDpHJmZW4sICIKKyN+ICJ3aXJkIEI8ZHBrZy1zb3VyY2U+IGRpZSBQYXRjaGVzIHNlbGJzdCBhbndlbmRlbiwgZmFsbHMgZXMgZ2xhdWJ0LCBkYXNzICIKKyN+ICJzaWUgbm9jaCBuaWNodCBhbmdld2FuZHQgd3VyZGVuLiBVbSBkaWVzZSBTaXR1YXRpb24genUgZXJrZW5uZW4sICIKKyN+ICJ2ZXJ3ZW5kZXQgZXMgZGllIGZvbGdlbmRlIEhldXJpc3RpazogRXMgZmluZGV0IGRpZSBMaXN0ZSBkZXIgdmVybXV0bGljaCAiCisjfiAibm9jaCBuaWNodCBhbmdld2FuZHRlbiBQYXRjaGVzIChzaWUgc2luZCBpbiBkZXIgRGF0ZWkgQjxzZXJpZXM+LCBhYmVyICIKKyN+ICJuaWNodCBpbiBkZXIgRGF0ZWkgQjwucGMvYXBwbGllZC1wYXRjaGVzPiBhdWZnZWbDvGhydCkgdW5kIHdlbm4gZGVyIGVyc3RlICIKKyN+ICJQYXRjaCBpbiBkZW0gU2F0eiBvaG5lIEZlaGxlciBhbmdld2FuZHQgd2VyZGVuIGthbm4sIHdlcmRlbiBzaWUgYWxsZSAiCisjfiAiYW5nZXdhbmR0LiBEaWUgT3B0aW9uIEI8LS1uby1wcmVwYXJhdGlvbj4ga2FubiB6dW0gQWJzY2hhbHRlbiBkaWVzZXMgIgorI34gIlZlcmhhbHRlbnMgdmVyd2FuZHQgd2VyZGVuLiBEaWVzZXIgQWJsYXVmIHBhc3NpZXJ0IG5vcm1hbGVyd2Vpc2UgYWxzIFRlaWwgIgorI34gImRlcyBCZWZlaGxzIEI8LS1wcmVwYXJlLWJ1aWxkPi4iCisKKyN+IG1zZ2lkICIyMDEwLTExLTIyIgorI34gbXNnc3RyICIyMDEwLTExLTIyIgorCisjfiBtc2dpZCAiMjAxMS0wMi0wNSIKKyN+IG1zZ3N0ciAiMjAxMS0wMi0wNSIKKworI34gbXNnaWQgIiIKKyN+ICJCPGRwa2c+IGNhbiBhbHNvIGJlIHVzZWQgYXMgYSBmcm9udC1lbmQgdG8gQjxkcGtnLWRlYj4oMSkuICBUaGUgZm9sbG93aW5nICIKKyN+ICJhcmUgQjxkcGtnLWRlYj4gYWN0aW9ucywgYW5kIGlmIHRoZXkgYXJlIGVuY291bnRlcmVkLCBCPGRwa2c+IGp1c3QgcnVucyAiCisjfiAiQjxkcGtnLWRlYj4gd2l0aCB0aGUgcGFyYW1ldGVycyBnaXZlbiB0byBpdDoiCisjfiBtc2dzdHIgIiIKKyN+ICJCPGRwa2c+IGthbm4gYXVjaCBhbHMgT2JlcmZsw6RjaGUgZsO8ciBCPGRwa2ctZGViPigxKSB2ZXJ3ZW5kZXQgd2VyZGVuLiBEaWUgIgorI34gImZvbGdlbmRlbiBBa3Rpb25lbiBnZWjDtnJlbiB6dSBCPGRwa2ctZGViPiwgdW5kIHdlbm4gc2llIGFuZ2V0cm9mZmVuICIKKyN+ICJ3ZXJkZW4sIHN0YXJ0ZXQgQjxkcGtnPiBlaW5mYWNoIEI8ZHBrZy1kZWI+IG1pdCBkZW4gw7xiZXJnZWJlbmVuICIKKyN+ICJQYXJhbWV0ZXJuOiIKKworI34gbXNnaWQgIiIKKyN+ICIgICAgQjwtYj4sIEI8LS1idWlsZD4sXG4iCisjfiAiICAgIEI8LWM+LCBCPC0tY29udGVudHM+LFxuIgorI34gIiAgICBCPC1JPiwgQjwtLWluZm8+LFxuIgorI34gIiAgICBCPC1mPiwgQjwtLWZpZWxkPixcbiIKKyN+ICIgICAgQjwtZT4sIEI8LS1jb250cm9sPixcbiIKKyN+ICIgICAgQjwteD4sIEI8LS1leHRyYWN0PixcbiIKKyN+ICIgICAgQjwtWD4sIEI8LS12ZXh0cmFjdD4sIGFuZFxuIgorI34gIiAgICBCPC0tZnN5cy10YXJmaWxlPi5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIiAgICBCPC1iPiwgQjwtLWJ1aWxkPixcbiIKKyN+ICIgICAgQjwtYz4sIEI8LS1jb250ZW50cz4sXG4iCisjfiAiICAgIEI8LUk+LCBCPC0taW5mbz4sXG4iCisjfiAiICAgIEI8LWY+LCBCPC0tZmllbGQ+LFxuIgorI34gIiAgICBCPC1lPiwgQjwtLWNvbnRyb2w+LFxuIgorI34gIiAgICBCPC14PiwgQjwtLWV4dHJhY3Q+LFxuIgorI34gIiAgICBCPC1YPiwgQjwtLXZleHRyYWN0PiB1bmRcbiIKKyN+ICIgICAgQjwtLWZzeXMtdGFyZmlsZT4uXG4iCisKKyN+IG1zZ2lkICJQbGVhc2UgcmVmZXIgdG8gQjxkcGtnLWRlYj4oMSkgZm9yIGluZm9ybWF0aW9uIGFib3V0IHRoZXNlIGFjdGlvbnMuIgorI34gbXNnc3RyICIiCisjfiAiQml0dGUgbGVzZW4gU2llIEI8ZHBrZy1kZWI+KDEpIGbDvHIgd2VpdGVyZSBJbmZvcm1hdGlvbmVuIMO8YmVyIGRpZXNlICIKKyN+ICJBa3Rpb25lbi4iCisKKyN+IG1zZ2lkICJCPC0tbmV3PiwgQjwtLW9sZD4iCisjfiBtc2dzdHIgIkI8LS1uZXc+LCBCPC0tb2xkPiIKKworI34gbXNnaWQgIiIKKyN+ICJTZWxlY3QgbmV3IG9yIG9sZCBiaW5hcnkgcGFja2FnZSBmb3JtYXQuIFRoaXMgaXMgYSBCPGRwa2ctZGViPigxKSAgb3B0aW9uLiIKKyN+IG1zZ3N0ciAiIgorI34gIlfDpGhsZSBkYXMgYWx0ZSBvZGVyIG5ldWUgQmluw6RycGFrZXRmb3JtYXQuIERpZXMgaXN0IGVpbmUgQjxkcGtnLWRlYj4oMSktIgorI34gIk9wdGlvbi4iCisKKyN+IG1zZ2lkICIiCisjfiAiRG9uJ3QgcmVhZCBvciBjaGVjayBjb250ZW50cyBvZiBjb250cm9sIGZpbGUgd2hpbGUgYnVpbGRpbmcgYSBwYWNrYWdlLiAgIgorI34gIlRoaXMgaXMgYSBCPGRwa2ctZGViPigxKSBvcHRpb24uIgorI34gbXNnc3RyICIiCisjfiAiTGVzZSBvZGVyIMO8YmVycHLDvGZlIGRlbiBJbmhhbHQgZGVyIFN0ZXVlcmRhdGVpIGJlaW0gUGFrZXRiYXUgbmljaHQuIERpZXMgIgorI34gImlzdCBlaW5lIEI8ZHBrZy1kZWI+KDEpLU9wdGlvbi4iCisKKyN+IG1zZ2lkICIyMDExLTA0LTIwIgorI34gbXNnc3RyICIyMDExLTA0LTIwIgorCisjfiBtc2dpZCAiMCIKKyN+IG1zZ3N0ciAiMCIKKworI34gbXNnaWQgIjEiCisjfiBtc2dzdHIgIjEiCisKKyN+IG1zZ2lkICIiCisjfiAiQjxzdGFydC1zdG9wLWRhZW1vbj4gcmV0dXJucyAwIGlmIHRoZSByZXF1ZXN0ZWQgYWN0aW9uIHdhcyBwZXJmb3JtZWQsIG9yICIKKyN+ICJpZiBCPC0tb2tub2RvPiBpcyBzcGVjaWZpZWQgYW5kIGVpdGhlciBCPC0tc3RhcnQ+IHdhcyBzcGVjaWZpZWQgYW5kIGEgIgorI34gIm1hdGNoaW5nIHByb2Nlc3Mgd2FzIGFscmVhZHkgcnVubmluZywgb3IgQjwtLXN0b3A+IHdhcyBzcGVjaWZpZWQgYW5kICIKKyN+ICJ0aGVyZSB3ZXJlIG5vIG1hdGNoaW5nIHByb2Nlc3Nlcy4gSWYgQjwtLW9rbm9kbz4gd2FzIG5vdCBzcGVjaWZpZWQgYW5kICIKKyN+ICJub3RoaW5nIHdhcyBkb25lLCAxIGlzIHJldHVybmVkLiBJZiBCPC0tc3RvcD4gYW5kIEI8LS1yZXRyeT4gd2VyZSAiCisjfiAic3BlY2lmaWVkLCBidXQgdGhlIGVuZCBvZiB0aGUgc2NoZWR1bGUgd2FzIHJlYWNoZWQgYW5kIHRoZSBwcm9jZXNzZXMgd2VyZSAiCisjfiAic3RpbGwgcnVubmluZywgdGhlIGVycm9yIHZhbHVlIGlzIDIuIEZvciBhbGwgb3RoZXIgZXJyb3JzLCB0aGUgc3RhdHVzIGlzICIKKyN+ICIzLiIKKyN+IG1zZ3N0ciAiIgorI34gIkI8c3RhcnQtc3RvcC1kYWVtb24+IGxpZWZlcnQgMCwgZmFsbHMgZGllIGFuZ2Vmb3JkZXJ0ZSBBa3Rpb24gYXVzZ2Vmw7xocnQgIgorI34gInd1cmRlIG9kZXIgQjwtLW9rbm9kbz4gYW5nZWdlYmVuIHVuZCBlbnR3ZWRlciBCPC0tc3RhcnQ+IGFuZ2VnZWJlbiB3dXJkZSAiCisjfiAidW5kIGVpbiBwYXNzZW5kZXIgUHJvemVzcyBsaWVmIGJlcmVpdHMgb2RlciBCPC0tc3RvcD4gYW5nZWJlYmVuIHd1cmRlIHVuZCAiCisjfiAiZXMgZ2FiIGtlaW5lbiBwYXNzZW5kZW4gUHJvemVzcy4gRmFsbHMgQjwtLW9rbm9kbz4gbmljaHQgYW5nZWdlYmVuIHd1cmRlICIKKyN+ICJ1bmQgbmljaHRzIGVyZm9sZ3RlLCB3aXJkIDEgenVyw7xja2dlbGllZmVydC4gRmFsbHMgQjwtLXN0b3A+IHVuZCBCPC0tIgorI34gInJldHJ5PiBhbmdlZ2ViZW4gd3VyZGVuLCBhYmVyIGRhcyBFbmRlIGRlcyBQbGFucyBlcnJyZWljaHQgd3VyZGUgdW5kIGRlciAiCisjfiAiUHJvemVzcyBub2NoIGzDpHVmdCwgbGF1dGV0IGRlciBGZWhsZXJ3ZXJ0IDIuIEJlaSBhbGxlbiBhbmRlcmVuIEZlaGxlcm4gIgorI34gImlzdCBkZXIgU3RhdHVzIDMuIgorCisjfiBtc2dpZCAiMiIKKyN+IG1zZ3N0ciAiMiIKKworI34gbXNnaWQgIiIKKyN+ICJCPGRwa2ctc3BsaXQ+IHVzZXMgc29tZSByYXRoZXIgb3V0LW9mLWRhdGUgY29udmVudGlvbnMgZm9yIHRoZSB0aGUgIgorI34gImZpbGVuYW1lcyBvZiBEZWJpYW4gcGFja2FnZXMuIgorI34gbXNnc3RyICIiCisjfiAiQjxkcGtnLXNwbGl0PiBiZW51dHp0IGVpbmlnZSB6aWVtbGljaCB2ZXJhbHRldGUgS29udmVudGlvbmVuIGbDvHIgZGllICIKKyN+ICJEYXRlaW5hbWVuIHZvbiBEZWJpYW4tUGFrZXRlbi4iCisKKyN+IG1zZ2lkICIiCisjfiAiVGhlIGFyY2hpdGVjdHVyZSBpcyBub3QgcmVwcmVzZW50ZWQgaW4gdGhlIHBhcnQgZmlsZXMnIGhlYWRlciwgb25seSBpbiAiCisjfiAidGhlIGNvbnRyb2wgaW5mb3JtYXRpb24gb2YgdGhlIGNvbnRhaW5lZCBiaW5hcnkgcGFja2FnZSBmaWxlLCBhbmQgaXQgaXMgIgorI34gIm5vdCBwcmVzZW50IGluIHRoZSBmaWxlbmFtZXMgZ2VuZXJhdGVkLiIKKyN+IG1zZ3N0ciAiIgorI34gIkRpZSBBcmNoaXRla3R1ciB3aXJkIG5pY2h0IGltIEtvcGYgZGVyIFRlaWwtRGF0ZWllbiBkYXJnZXN0ZWxsdCwgbnVyIGluICIKKyN+ICJkZW4gU3RldWVyLUluZm9ybWF0aW9uZW4gZGVyIGVudGhhbHRlbmVuIEJpbsOkcnBha2V0LURhdGVpLCB1bmQgc2llIGlzdCAiCisjfiAibmljaHQgaW4gZGVuIGVyemV1Z3RlbiBEYXRlaW5hbWVuIHdpZWRlcmdlZ2ViZW4uIgorCisjfiBtc2dpZCAiMjAxMC0wMS0yOCIKKyN+IG1zZ3N0ciAiMjAxMC0wMS0yOCIKKworI34gbXNnaWQgIiIKKyN+ICJUaGUgZmlyc3QgbWVtYmVyIGlzIG5hbWVkIEI8ZGViaWFuLXNwbGl0PiBhbmQgY29udGFpbnMgYSBzZXJpZXMgb2YgbGluZXMsICIKKyN+ICJzZXBhcmF0ZWQgYnkgbmV3bGluZXMuIEN1cnJlbnRseSBzZXZlbiBsaW5lcyBhcmUgcHJlc2VudC4gIFRoZSBmaXJzdCBpcyAiCisjfiAidGhlIGZvcm1hdCB2ZXJzaW9uIG51bWJlciwgQjwyLjE+IGF0IHRoZSB0aW1lIHRoaXMgbWFudWFsIHBhZ2Ugd2FzICIKKyN+ICJ3cml0dGVuLiBUaGUgc2Vjb25kIGlzIHRoZSBwYWNrYWdlIG5hbWUuIFRoZSB0aGlyZCBpcyB0aGUgcGFja2FnZSAiCisjfiAidmVyc2lvbi4gVGhlIGZvdXJ0aCBpcyB0aGUgbWQ1c3VtIG9mIHRoZSBwYWNrYWdlLiAgVGhlIGZpZnRoIGlzIHRoZSB0b3RhbCAiCisjfiAic2l6ZSBvZiB0aGUgcGFja2FnZS4gVGhlIHNpeHRoIGlzIHRoZSBtYXhpbXVtIHBhcnQgc2l6ZS4gVGhlIHNldmVudGggaXMgIgorI34gInRoZSBjdXJyZW50IHBhcnQgbnVtYmVyLCBmb2xsb3dlZCBieSBhIHNsYXNoIGFuZCB0aGUgdG90YWwgYW1vdW50IG9mICIKKyN+ICJwYXJ0cyAoYXMgaW4gXFwob3ExLzEwXFwoY3EpLiIKKyN+IG1zZ3N0ciAiIgorI34gIkRhcyBlcnN0ZSBNaXRnbGllZCBoZWnDn3QgQjxkZWJpYW4tc3BsaXQ+IHVuZCBlbnRow6RsdCBlaW5lIFJlaWhlIHZvbiAiCisjfiAiWmVpbGVuLCBkaWUgZHVyY2ggWmVpbGVudW1icsO8Y2hlIGdldHJlbm50IHNpbmQuIERlcnplaXQgc2luZCBzaWViZW4gWmVpbGUgIgorI34gInZvcmhhbmRlbi4gRGllIGVyc3RlIGlzdCBkaWUgRm9ybWF0dmVyc2lvbnNudW1tZXIsIEI8Mi4xPiB6dW0gWmVpdHB1bmt0ICIKKyN+ICJ6dSBkZW0gZGllc2UgSGFuZGJ1Y2hzZWl0ZSBnZXNjaHJpZWJlbiB3dXJkZS4gRGllIFp3ZWl0ZSBpc3QgZGVyICIKKyN+ICJQYWtldG5hbWUuIERpZSBEcml0dGUgZGllIFBha2V0dmVyc2lvbi4gRGllIFZpZXJ0ZSBpc3QgZGllIE1kNXN1bSBkZXMgIgorI34gIlBha2V0cy4gRGllIEbDvG5mdGUgaXN0IGRpZSBHZXNhbXRncsO2w59lIGRlcyBQYWtldHMuIERpZSBTZWNoc3RlIGlzdCBkaWUgIgorI34gIm1heGltYWxlIFRlaWxncsO2w59lLiBEaWUgU2llYnRlIGlzdCBkaWUgYWt0dWVsbGUgVGVpbG51bW1lciwgZ2Vmb2xndCB2b24gIgorI34gImVpbmVtIFNjaHLDpGdzdHJpY2ggdW5kIGRlciBHZXNhbXRhbnphaGwgdm9uIFRlaWxlbiAod2llIGluICIKKyN+ICJcXChvcTEvMTBcXChjcSkuIgorCisjfiBtc2dpZCAiMjAwOS0wMy0wOCIKKyN+IG1zZ3N0ciAiMjAwOS0wMy0wOCIKKworI34gbXNnaWQgIkZpbGUiCisjfiBtc2dzdHIgIkRhdGVpIgorCisjfiBtc2dpZCAiMjAwOS0xMS0xMSIKKyN+IG1zZ3N0ciAiMjAwOS0xMS0xMSIKKworI34gbXNnaWQgIjIwMDktMDItMjYiCisjfiBtc2dzdHIgIjIwMDktMDItMjYiCisKKyN+IG1zZ2lkICIyMDA5LTA0LTEzIgorI34gbXNnc3RyICIyMDA5LTA0LTEzIgorCisjfiBtc2dpZCAiSTxhZG1pbmRpcj4vaW5mby9JPHBhY2thZ2U+LnN5bWJvbHMiCisjfiBtc2dzdHIgIkk8YWRtaW52ZXJ6Pi9pbmZvL0k8UGFrZXQ+LnN5bWJvbHMiCisKKyN+IG1zZ2lkICJJPGFkbWluZGlyPi9pbmZvL0k8cGFja2FnZT4uc2hsaWJzIgorI34gbXNnc3RyICJJPEFkbWludmVyej4vaW5mby9JPFBha2V0Pi5zaGxpYnMiCisKKyN+IG1zZ2lkICIyMDEwLTExLTA1IgorI34gbXNnc3RyICIyMDEwLTExLTA1IgorCisjfiBtc2dpZCAiIgorI34gIkFuIGVycm9yIG9jY3VycmVkLiBVbmZvcnR1bmF0ZWx5IGF0IHRoZSB0aW1lIG9mIHdyaXRpbmcgSTxleHRlbmRlZC1lcnJvci0iCisjfiAibWVzc2FnZT4gY2FuIGNvbnRhaW4gbmV3bGluZXMsIGFsdGhvdWdoIGluIGxvY2FsZXMgd2hlcmUgdGhlIHRyYW5zbGF0b3JzICIKKyN+ICJoYXZlIG5vdCBtYWRlIG1pc3Rha2VzIGV2ZXJ5IG5ld2xpbmUgaXMgZm9sbG93ZWQgYnkgYXQgbGVhc3Qgb25lIHNwYWNlLiIKKyN+IG1zZ3N0ciAiIgorI34gIkVpbiBGZWhsZXIgaXN0IGF1ZmdldHJldGVuLiBVbmdsw7xja2xpY2hlcndlaXNlIGthbm4genVtIFplaXRwdW5rdCBkZXIgIgorI34gIkVyc3RlbGx1bmcgZGllc2VyIEluZm9ybWF0aW9uZW4gSTxhdXNmw7xocmxpY2hlLUZlaGxlcm1lbGR1bmc+ICIKKyN+ICJaZWlsZW51bWJyw7xjaGUgZW50aGFsdGVuLiBJbiBTdGFuZG9ydGVpbnN0ZWxsdW5nZW4gKMK7bG9jYWxlc8KrKSwgaW4gZGVuZW4gIgorI34gIsOcYmVyc2V0emVyIHNvcmdmw6RsdGlnIGdlYXJiZWl0ZXQgaGFiZW4sIHdpcmQgYWxsZXJkaW5ncyBqZWRlciAiCisjfiAiWmVpbGVudW1icnVjaCB2b24gZWluZW0gTGVlcnplaWNoZW4gZ2Vmb2xndC4iCisKKyN+IG1zZ2lkICIiCisjfiAiVGhpcyBmb3JtYXQgaXMgZXhwZXJpbWVudGFsLiBJdCB1c2VzIGEgYnVuZGxlIG9mIGEgZ2l0IHJlcG9zaXRvcnkgdG8gaG9sZCAiCisjfiAidGhlIHNvdXJjZSBvZiBhIHBhY2thZ2UuIgorI34gbXNnc3RyICIiCisjfiAiRGllc2VzIEZvcm1hdCBpc3QgZXhwZXJpbWVudGVsbC4gRXMgdmVyd2VuZGV0IGVpbiBCw7xuZGVsIGVpbmVzIEdpdC0iCisjfiAiRGVwb3RzLCB1bSBkaWUgUXVlbGxlbiBlaW5lcyBQYWtldGVzIHp1IHZlcndhaHJlbi4iCisKKyN+IG1zZ2lkICJUaGUgYnVuZGxlIGlzIGNsb25lZCB0byBhIG5ldyBnaXQgcmVwb3NpdG9yeS4iCisjfiBtc2dzdHIgIkRhcyBCw7xuZGVsIHdpcmQgaW4gZWluIG5ldWVzIEdpdC1EZXBvdCBnZWtsb250LiIKKworI34gbXNnaWQgIjIwMDctMTAtMDgiCisjfiBtc2dzdHIgIjIwMDctMTAtMDgiCisKKyN+IG1zZ2lkICIyMDEwLTA0LTExIgorI34gbXNnc3RyICIyMDEwLTA0LTExIgorCisjfiBtc2dpZCAiIgorI34gIkRlZmluZWQgYnkgQjxkcGtnPiBvbiB0aGUgbWFpbnRhaW5lciBzY3JpcHQgZW52aXJvbm1lbnQgdG8gdGhlIHByaXZhdGUgIgorI34gImxpYnJhcnkgZGlyZWN0b3J5IG9mIHRoZSBjdXJyZW50bHkgcnVubmluZyBCPGRwa2c+IGluc3RhbmNlLiIKKyN+IG1zZ3N0ciAiIgorI34gIldpcmQgdm9uIEI8ZHBrZz4gZsO8ciBkaWUgQmV0cmV1ZXItU2tyaXB0LVVtZ2VidW5nIGF1ZiBkYXMgcHJpdmF0ZSAiCisjfiAiQmlibGlvdGhla3N2ZXJ6ZWljaG5pcyBkZXIgYWt0dWVsbCBsYXVmZW5kZW4gSW5zdGFueiB2b24gQjxkcGtnPiBnZXNldHp0LiIKKworI34gbXNnaWQgIkZvcm1hdDogMy4wIChnaXQpIGFuZCAzLjAgKGJ6cikiCisjfiBtc2dzdHIgIkZvcm1hdDogMy4wIChnaXQpIHVuZCAzLjAgKGJ6cikiCisKKyN+IG1zZ2lkICIiCisjfiAiSTxwcmlvcml0eT4gYW5kIEk8c2VjdGlvbj4gcGxhY2UgdGhlIHBhY2thZ2Ugd2l0aGluIHRoZSByZWxlYXNlIHRyZWU7ICIKKyN+ICJ0aGVzZSBvdWdodCBub3QgdG8gYmUgZm91bmQgaW4gdGhlIGNvbnRyb2wgZmlsZS4gSWYgdGhlIHBhY2thZ2UgaXMgZm91bmQgIgorI34gImluIGEgc3ViZGlyZWN0b3J5IG9mIEk8YmluYXJ5ZGlyPiwgdGhhdCB3aWxsIGJlIGNoZWNrZWQgYWdhaW5zdCAiCisjfiAiSTxzZWN0aW9uPi4iCisjfiBtc2dzdHIgIiIKKyN+ICJJPFByaW9yaXTDpHQ+IHVuZCBJPEJlcmVpY2g+IHBsYXR6aWVyZW4gZGFzIFBha2V0IGlubmVyaGFsYiBkZXMgIgorI34gIlZlcsO2ZmZlbnRsaWNodW5ncy1CYXVtczsgZGllc2Ugc29sbHRlbiBuaWNodCBpbiBkZXIgU3RldWVyZGF0ZWkgZ2VmdW5kZW4gIgorI34gIndlcmRlbi4gRmFsbHMgZGFzIFBha2V0IGluIGVpbmVtIFVudGVydmVyemVpY2huaXMgZGVzIEk8Qmluw6RyLVZlcno+ICIKKyN+ICJnZWZ1bmRlbiB3aXJkLCBkYW5uIHdpcmQgZGllcyBtaXQgSTxCZXJlaWNoPiDDvGJlcnByw7xmdC4iCisKKyN+IG1zZ2lkICJmb3IgdGhlIGN1cnJlbnQgdXNlciB3aXRoIEI8fi8uY29uZmlnL2Rwa2ctYnVpbGRmbGFncy5jb25mPjsiCisjfiBtc2dzdHIgImbDvHIgZGVuIGFrdHVlbGxlbiBCZW51dHplciBtaXQgQjx+Ly5jb25maWcvZHBrZy1idWlsZGZsYWdzLmNvbmY+IgorCisjfiBtc2dpZCAiQjx+Ly5jb25maWcvZHBrZy1idWlsZGZsYWdzLmNvbmY+IgorI34gbXNnc3RyICJCPH4vLmNvbmZpZy9kcGtnLWJ1aWxkZmxhZ3MuY29uZj4iCisKKyN+IG1zZ2lkICIiCisjfiAiSXQgcHJlcGFyZXMgdGhlIGJ1aWxkIGVudmlyb25tZW50IGJ5IHNldHRpbmcgdmFyaW91cyBlbnZpcm9ubWVudCAiCisjfiAidmFyaWFibGVzIChzZWUgQjxFTlZJUk9OTUVOVD4pLiIKKyN+IG1zZ3N0ciAiIgorI34gIkVzIGJlcmVpdGV0IGRpZSBCYXV1bWdlYnVuZyB2b3IsIGluZGVtIHZlcnNjaGllZGVuZSBVbWdlYnVuZ3N2YXJpYWJsZW4gIgorI34gImdlc2V0enQgd2VyZGVuIChzaWVoZSBCPFVNR0VCVU5HPikuIgorCisjfiBtc2dpZCAiIgorI34gIkl0IGNhbGxzIEI8ZHBrZy1zb3VyY2U+IHRvIGdlbmVyYXRlIHRoZSBzb3VyY2UgcGFja2FnZSAodW5sZXNzIGEgYmluYXJ5LSIKKyN+ICJvbmx5IGJ1aWxkIGhhcyBiZWVuIHJlcXVlc3RlZCB3aXRoIEI8LWI+LCBCPC1CPiBvciBCPC1BPikuIgorI34gbXNnc3RyICIiCisjfiAiRXMgcnVmdCBCPGRwa2ctc291cmNlPiBhdWYsIHVtIGRhcyBRdWVsbHBha2V0IHp1IGVyc3RlbGxlbiAoZmFsbHMgbmljaHQgIgorI34gIm1pdCBCPC1iPiwgQjwtQj4gb2RlciBCPC1BPiBlaW4gcmVpbi1iaW7DpHJlciBCYXUgZXJiZXRlbiB3dXJkZSkuIgorCisjfiBtc2dpZCAiIgorI34gIklmIEI8LXRjPiBpcyBzcGVjaWZpZWQsIGl0IHdpbGwgY2FsbCBCPGZha2Vyb290IGRlYmlhbi9ydWxlcyBjbGVhbj4gYWdhaW4uIgorI34gbXNnc3RyICIiCisjfiAiRmFsbHMgQjwtdGM+IGFuZ2VnZWJlbiBpc3QsIHdpcmQgQjxmYWtlcm9vdCBkZWJpYW4vcnVsZXMgY2xlYW4+IGVybmV1dCAiCisjfiAiYXVmZ2VydWZlbi4iCisKKyN+IG1zZ2lkICIiCisjfiAiSWYgdGhlIGhvc3QgYXJjaGl0ZWN0dXJlIGRpZmZlcnMgZnJvbSB0aGUgYnVpbGQgYXJjaGl0ZWN0dXJlIChhcyBpcyB0aGUgIgorI34gImNhc2UgZm9yIGEgY3Jvc3MtY29tcGlsYXRpb24pLCBhbmQgaWYgdGhlIGVudmlyb25tZW50IHZhcmlhYmxlICIKKyN+ICJCPFBLR19DT05GSUdfTElCRElSPiBpcyBub3Qgc2V0LCB0aGVuIGl0IGlzIHNldCB0byBhIHZhbHVlIHN1aXRhYmxlIGZvciAiCisjfiAiY3Jvc3MtY29tcGlsYXRpb24gKFwiL3Vzci9JPGdudS1zeXN0ZW0tdHlwZT4vbGliL3BrZ2NvbmZpZy86L3Vzci9zaGFyZS8iCisjfiAicGtnY29uZmlnXCIpLiIKKyN+IG1zZ3N0ciAiIgorI34gIkZhbGxzIHNpY2ggZGllIEhvc3QtQXJjaGl0ZWt0dXIgdm9uIGRlciBCYXUtQXJjaGl0ZWt0dXIgdW50ZXJzY2hlaWRldCAiCisjfiAiKHdpZSBkaWVzZSBiZWkgQ3Jvc3MtS29tcGlsaWVydW5nIGRlciBGYWxsIGlzdCkgdW5kIGZhbGxzIGRpZSAiCisjfiAiVW1nZWJ1bmdzdmFyaWFibGUgQjxQS0dfQ09ORklHX0xJQkRJUj4gbmljaHQgZ2VzZXR6dCBpc3QsIGRhbm4gd2lyZCBzaWUgIgorI34gImF1ZiBlaW5lbiBXZXJ0IGdlc2V0enQsIGRlciBmw7xyIENyb3NzLUtvbXBpbGllcnVuZyBnZWVpZ25ldCBpc3QgKMK7L3Vzci8iCisjfiAiSTxnbnUtc3lzdGVtLXR5cGU+L2xpYi9wa2djb25maWcvOi91c3Ivc2hhcmUvcGtnY29uZmlnwqspLiIKKworI34gbXNnaWQgIltJPHRhZzo+XSBJPGxpYnJhcnk+IEk8dmVyc2lvbj4gSTxkZXBlbmRlbmNpZXM+IgorI34gbXNnc3RyICJbSTxNYXJraWVydW5nOj5dIEk8QmlibGlvdGhlaz4gSTxWZXJzaW9uPiBJPEFiaMOkbmdpZ2tlaXRlbj4iCisKKyN+IG1zZ2lkICIiCisjfiAiU29tZSBlbnZpcm9ubWVudCB2YXJpYWJsZXMgZGVmaW5pbmcgY29tcGlsZXIgYW5kIGxpbmtlciBvcHRpb25zIGFyZSBzZXQgIgorI34gInRvIGRlZmF1bHQgdmFsdWVzIHVubGVzcyBhbHJlYWR5IHByZXNlbnQgaW4gdGhlIGVudmlyb25tZW50LiBOb3RlIHRoYXQgIgorI34gInRoaXMgbWVjaGFuaXNtIHdhcyBvbmx5IGludHJvZHVjZWQgaW4gdmVyc2lvbiAxLjE0LjE3IG9mIGRwa2ctZGV2IGFuZCBub3QgIgorI34gImFsbCBJPHJ1bGVzPiBmaWxlcyBhbmQgYnVpbGQgdG9vbHMgd2lsbCBob25vdXIgdGhlc2UgdmFyaWFibGVzLCB5ZXQuIgorI34gbXNnc3RyICIiCisjfiAiRWluaWdlIFVtZ2VidW5nc3ZhcmlhYmxlbiBmw7xyIEVpbnN0ZWxsdW5nZW4gZGVyIE9wdGlvbmVuIGRlcyBDb21waWxlcnMgIgorI34gInVuZCBMaW5rZXJzIHdlcmRlbiBhdWYgU3RhbmRhcmR3ZXJ0ZSBnZXNldHp0LCBmYWxscyBzaWUgbm9jaCBuaWNodCBpbiBkZXIgIgorI34gIlVtZ2VidW5nIGdlc2V0enQgd3VyZGVuLiBCZWFjaHRlbiBTaWUsIGRhc3MgZGllc2VyIE1lY2hhbmlzbXVzIGVyc3QgaW4gIgorI34gImRwa2ctZGV2IFZlcnNpb24gMS4xNC4xNyBlaW5nZWbDvGhydCB3dXJkZSB1bmQgbm9jaCBuaWNodCBhbGxlIEk8cnVsZXM+LSIKKyN+ICJEYXRlaWVuIHVuZCBCYXV3ZXJremV1Z2UgZGllc2UgVmFyaWFibGVuIGJlcsO8Y2tzaWNodGlnZW4uIgorCisjfiBtc2dpZCAiIgorI34gIk9wdGltaXphdGlvbiBvcHRpb25zIHdoaWNoIGFyZSBwYXNzZWQgdG8gdGhlIERlYmlhbiBidWlsZCBzeXN0ZW0gYW5kIGNhbi8iCisjfiAic2hvdWxkIGJlIG92ZXJyaWRkZW4gYnkgdGhlIHBhY2thZ2UgYnVpbGQgaWYgbmVlZGVkIChkZWZhdWx0IHZhbHVlOiBCPC1nIC0iCisjfiAiTzI+LCBvciBCPC1nXFwgLU8wPiBpZiBCPG5vb3B0PiBpcyBzcGVjaWZpZWQgaW4gREVCX0JVSUxEX09QVElPTlMpLiAiCisjfiAiT3ZlcnJpZGluZyBvcHRpb25zIGNhbiBiZSB1c2VkIHRvIGV4cGxpY2l0bHkgc2V0IGEgaGlnaGVyIG9wdGltaXphdGlvbiAiCisjfiAibGV2ZWwsIG9yIHdvcmsgYXJvdW5kIGNvbXBpbGVyIGJ1Z3MsIHdoaWNoIG9ubHkgY2FuIGJlIHNlZW4gd2l0aCBzb21lICIKKyN+ICJvcHRpbWl6YXRpb24gbGV2ZWxzICh0aGUgbGFzdCBvcHQgbGV2ZWwgXCJ3aW5zXCIpLiIKKyN+IG1zZ3N0ciAiIgorI34gIk9wdGltaWVydW5ncy1PcHRpb25lbiwgZGllIGFuIGRhcyBEZWJpYW4tQmF1c3lzdGVtIHdlaXRlcmdlZ2ViZW4gdW5kIHZvbSAiCisjfiAiUGFrZXRiYXVzeXN0ZW0gYmVpIEJlZGFyZiDDvGJlcnNjaHJpZWJlbiB3ZXJkZW4ga8O2bm5lbi9zb2xsdGVuICIKKyN+ICIoVm9yZ2FiZXdlcnQ6IEI8LWcgLU8yPiBvZGVyIEI8LWdcXCAtTzA+IGZhbGxzIEI8bm9vcHQ+IGluICIKKyN+ICJERUJfQlVJTERfT1BUSU9OUyBhbmdlZ2ViZW4gaXN0KS4gRGFzIMOcYmVyc2NocmVpYmVuIGRlciBPcHRpb25lbiBrYW5uICIKKyN+ICJkYXp1IHZlcndlbmRldCB3ZXJkZW4sIGV4cGxpeml0IGVpbmUgaMO2aGVyZSBPcHRpbWllcnVuZ3NzdHVmZSB6dSBzZXR6ZW4gIgorI34gIm9kZXIgdW0gQ29tcGlsZXItRmVobGVyIHp1IHVtZ2VoZW4sIGRpZSBudXIgYmVpIGVpbmlnZW4gIgorI34gIk9wdGltaWVydW5nc3N0dWZlbiBhdWZ0cmV0ZW4gKGRpZSBsZXR6dGUgT3B0aW1pZXJ1bmdzc3R1ZmUgwrtnZXdpbm50wqspLiIKKworI34gbXNnaWQgIkI8Q0ZMQUdTX0FQUEVORD4iCisjfiBtc2dzdHIgIkI8Q0ZMQUdTX0FQUEVORD4iCisKKyN+IG1zZ2lkICIiCisjfiAiT3B0aW1pemF0aW9uIG9wdGlvbnMgYXBwZW5kZWQgdG8gdGhlIGNvbXBpbGVyIGZsYWdzLCB3aGljaCBtdXN0IG5vdCBiZSAiCisjfiAib3ZlcndyaXR0ZW4gYnkgdGhlIHBhY2thZ2UgKG1vc3RseSB1c2VkIHRvIGZvciB0ZXN0IGJ1aWxkcykuIERlZmF1bHQgIgorI34gInZhbHVlOiBlbXB0eS4iCisjfiBtc2dzdHIgIiIKKyN+ICJPcHRpbWllcnVuZ3NvcHRpb25lbiwgZGllIGFuIGRpZSBDb21waWxlci1TY2hhbHRlciBhbmdlaMOkbmd0IHdlcmRlbiwgZGllICIKKyN+ICJuaWNodCB2b20gUGFrZXQgw7xiZXJzY2hyaWViZW4gd2VyZGVuIGTDvHJmZW4gKGhhdXB0c8OkY2hsaWNoIHp1bSBUZXN0ZW4pLiAiCisjfiAiU3RhbmRhcmRtw6TDn2lnIGxlZXIuIgorCisjfiBtc2dpZCAiU2FtZSBhcyBCPENGTEFHUz4gZm9yIEMrKyBzb3VyY2VzLiIKKyN+IG1zZ3N0ciAiSWRlbnRpc2NoIHp1IEI8Q0ZMQUdTPiBmw7xyIEMrKy1RdWVsbGVuLiIKKworI34gbXNnaWQgIkI8Q1hYRkxBR1NfQVBQRU5EPiIKKyN+IG1zZ3N0ciAiQjxDWFhGTEFHU19BUFBFTkQ+IgorCisjfiBtc2dpZCAiU2FtZSBhcyBCPENGTEFHU19BUFBFTkQ+IGZvciBDKysgc291cmNlcy4iCisjfiBtc2dzdHIgIklkZW50aXNjaCB6dSBCPENGTEFHU19BUFBFTkQ+IGbDvHIgQysrLVF1ZWxsZW4uIgorCisjfiBtc2dpZCAiU2FtZSBhcyBCPENGTEFHUz4gZm9yIEZvcnRyYW4gc291cmNlcy4iCisjfiBtc2dzdHIgIklkZW50aXNjaCB6dSBCPENGTEFHUz4gZsO8ciBGb3J0cmFuLVF1ZWxsZW4uIgorCisjfiBtc2dpZCAiQjxGRkxBR1NfQVBQRU5EPiIKKyN+IG1zZ3N0ciAiQjxGRkxBR1NfQVBQRU5EPiIKKworI34gbXNnaWQgIlNhbWUgYXMgQjxDRkxBR1NfQVBQRU5EPiBmb3IgRm9ydHJhbiBzb3VyY2VzLiIKKyN+IG1zZ3N0ciAiSWRlbnRpc2NoIHp1IEI8Q0ZMQUdTX0FQUEVORD4gZsO8ciBGb3J0cmFuLVF1ZWxsZW4uIgorCisjfiBtc2dpZCAiIgorI34gIlByZXByb2Nlc3NvciBmbGFncyB3aGljaCBhcmUgcGFzc2VkIHRvIHRoZSBEZWJpYW4gYnVpbGQgc3lzdGVtIGFuZCBjYW4vIgorI34gInNob3VsZCBiZSBvdmVycmlkZGVuIGJ5IHRoZSBwYWNrYWdlIGJ1aWxkIGlmIG5lZWRlZCAoZGVmYXVsdDogZW1wdHkpLiAiCisjfiAiVGhpcyBtYWNybyBpcyBzZWxkb20gdXNlZCAobW9zdCBidWlsZCBzeXN0ZW1zIGp1c3QgdXNlIEI8Q0ZMQUdTPiBpbnN0ZWFkICIKKyN+ICJvZiBCPENQUEZMQUdTPikuIgorI34gbXNnc3RyICIiCisjfiAiUHLDpHByb3plc3Nvci1TY2hhbHRlciwgZGllIGFuIGRhcyBEZWJpYW4tQmF1c3lzdGVtIHdlaXRlcmdlZ2ViZW4gdW5kIHZvbSAiCisjfiAiUGFrZXRiYXVzeXN0ZW0gYmVpIEJlZGFyZiDDvGJlcnNjaHJpZWJlbiB3ZXJkZW4ga8O2bm5lbi9zb2xsdGVuICIKKyN+ICIoVm9yZ2FiZXdlcnQ6IGxlZXIpLiBEaWVzZXMgTWFrcm8gd2lyZCBzZWx0ZW4gYmVudXR6dCAoZGllIG1laXN0ZW4gIgorI34gIkJhdXN5c3RlbWUgdmVyd2VuZGVuIGVpbmZhY2ggQjxDRkxBR1M+IHN0YXR0IEI8Q1BQRkxBR1M+KS4iCisKKyN+IG1zZ2lkICJCPENQUEZMQUdTX0FQUEVORD4iCisjfiBtc2dzdHIgIkI8Q1BQRkxBR1NfQVBQRU5EPiIKKworI34gbXNnaWQgIiIKKyN+ICJQcmVwcm9jZXNzb3IgZmxhZ3MgYXBwZW5kZWQgdG8gdGhlIHByZXByb2Nlc3NvciBmbGFncywgd2hpY2ggbXVzdCBub3QgYmUgIgorI34gIm92ZXJ3cml0dGVuIGJ5IHRoZSBwYWNrYWdlIChtb3N0bHkgdXNlZCB0byBmb3IgdGVzdCBidWlsZHMpLiBEZWZhdWx0ICIKKyN+ICJ2YWx1ZTogZW1wdHkuIgorI34gbXNnc3RyICIiCisjfiAiUHLDpHByb3plc3Nvci1TY2hhbHRlciwgZGllIGFuIGRpZSBQcsOkcHJvemVzc29yLVNjaGFsdGVyIGFuZ2Vow6RuZ3Qgd2VyZGVuLCAiCisjfiAiZGllIG5pY2h0IHZvbSBQYWtldCDDvGJlcnNjaHJpZWJlbiB3ZXJkZW4gZMO8cmZlbiAoaGF1cHRzw6RjaGxpY2ggenVtICIKKyN+ICJUZXN0ZW4pLiBTdGFuZGFyZG3DpMOfaWcgbGVlci4iCisKKyN+IG1zZ2lkICJCPExERkxBR1NfQVBQRU5EPiIKKyN+IG1zZ3N0ciAiQjxMREZMQUdTX0FQUEVORD4iCisKKyN+IG1zZ2lkICIiCisjfiAiT3B0aW1pemF0aW9uIG9wdGlvbnMgYXBwZW5kZWQgdG8gdGhlIGNvbXBpbGVyIGZsYWdzIHdoZW4gbGlua2luZyBjb2RlLCAiCisjfiAid2hpY2ggbXVzdCBub3QgYmUgb3ZlcndyaXR0ZW4gYnkgdGhlIHBhY2thZ2UgKG1vc3RseSB1c2VkIHRvIGZvciB0ZXN0ICIKKyN+ICJidWlsZHMpLiBEZWZhdWx0IHZhbHVlOiBlbXB0eS4iCisjfiBtc2dzdHIgIiIKKyN+ICJPcHRpbWllcnVuZ3MtT3B0aW9uZW4sIGRpZSBhbiBkZW4gQ29tcGlsZXIgYmVpbSBMaW5rZW4gdm9uIENvZGUgYW5nZWjDpG5ndCAiCisjfiAid2VyZGVuIHVuZCBkaWUgbmljaHQgdm9tIFBha2V0IMO8YmVyc2NocmllYmVuIHdlcmRlbiBkw7xyZmVuIChoYXVwdHPDpGNobGljaCAiCisjfiAienVtIFRlc3RlbikuIFN0YW5kYXJkbcOkw59pZyBsZWVyLiIKKworI34gbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDA4IFJhcGhhXFxbOmVdbCBIZXJ0em9nIgorI34gbXNnc3RyICJDb3B5cmlnaHQgXFwoY28gMjAwOCBSYXBoYVxcWzplXWwgSGVydHpvZyIKKworI34gbXNnaWQgImluY2x1ZGUgYWxsIGNoYW5nZXMuIgorI34gbXNnc3RyICJmw7xnZSBhbGxlIMOEbmRlcnVuZ2VuIGhpbnp1LiIKKworI34gbXNnaWQgIiIKKyN+ICJCPGRwa2ctc291cmNlPiB3aWxsIGJ1aWxkIHRoZSBzb3VyY2UgcGFja2FnZSB3aXRoIHRoZSBmaXJzdCBmb3JtYXQgZm91bmQgIgorI34gImluIHRoaXMgb3JkZXJlZCBsaXN0OiB0aGUgZm9ybWF0IGluZGljYXRlZCB3aXRoIHRoZSBJPC0tZm9ybWF0PiBjb21tYW5kLSIKKyN+ICJsaW5lIG9wdGlvbiwgdGhlIGZvcm1hdCBpbmRpY2F0ZWQgaW4gQjxkZWJpYW4vc291cmNlL2Zvcm1hdD4sIFwiMS4wXCIuICIKKyN+ICJTZWUgc2VjdGlvbiBCPFNPVVJDRSBQQUNLQUdFIEZPUk1BVFM+IGZvciBhbiBleHRlbnNpdmUgZGVzY3JpcHRpb24gb2YgdGhlICIKKyN+ICJ2YXJpb3VzIHNvdXJjZSBwYWNrYWdlIGZvcm1hdHMuIgorI34gbXNnc3RyICIiCisjfiAiQjxkcGtnLXNvdXJjZT4gd2lyZCBkYXMgUXVlbGxwYWtldCBtaXQgZGVtIGVyc3RlbiBnZWZ1bmRlbmVuIEZvcm1hdCBhdXMgIgorI34gImRlciBmb2xnZW5kZW4gZ2VvcmRuZXRlbiBMaXN0ZSBiYXVlbjogZGVtIG1pdCBkZXIgS29tbWFuZG96ZWlsZW5vcHRpb24iCisjfiAiKGVuKSBJPC0tZm9ybWF0PiBhbmdlZ2ViZW4gRm9ybWF0LCBkZW0gaW4gQjxkZWJpYW4vc291cmNlL2Zvcm1hdD4gIgorI34gImFuZ2VnZWJlbmVuIEZvcm1hdCwgwrsxLjDCqy4gRGllIHZlcnNjaGllZGVuZW4gUXVlbGxwYWtldGZvcm1hdGUgd2VyZGVuIGltICIKKyN+ICJBYnNjaG5pdHQgQjxRVUVMTFBBS0VULUZPUk1BVEU+IGF1c2bDvGhybGljaCBiZXNjaHJpZWJlbi4iCisKKyN+IG1zZ2lkICIiCisjfiAiSWYgeW91IGRvbid0IGtub3cgd2hhdCBzb3VyY2UgZm9ybWF0IHlvdSBzaG91bGQgdXNlLCB5b3Ugc2hvdWxkIHByb2JhYmx5ICIKKyN+ICJwaWNrIGVpdGhlciBcIjMuMCAocXVpbHQpXCIgb3IgXCIzLjAgKG5hdGl2ZSlcIi4gVGhleSB3aWxsIGJlY29tZSB0aGUgIgorI34gImRlZmF1bHQgZm9ybWF0cyBpbiB0aGUgbmVhciBmdXR1cmUuIFNlZSBodHRwOi8vd2lraS5kZWJpYW4ub3JnL1Byb2plY3RzLyIKKyN+ICJEZWJTcmMzLjAgZm9yIGluZm9ybWF0aW9uIG9uIHRoZSBkZXBsb3ltZW50IG9mIHRob3NlIGZvcm1hdHMgd2l0aGluICIKKyN+ICJEZWJpYW4uIgorI34gbXNnc3RyICIiCisjfiAiRmFsbHMgU2llIG5pY2h0IHdpc3Nlbiwgd2VsY2hlcyBRdWVsbGZvcm1hdCBTaWUgdmVyd2VuZGVuIHNvbGxlbiwgIgorI34gInZlcndlbmRlbiBTaWUgd2FocnNjaGVpbmxpY2ggYW0gYmVzdGVuIGVudHdlZGVyIMK7My4wIChxdWlsdCnCqyBvZGVyIMK7My4wICIKKyN+ICIobmF0aXZlKcKrLiBTaWUgd2VyZGVuIGluIGRlciBuYWhlbiBadWt1bmZ0IGRpZSBTdGFuZGFyZGZvcm1hdGUgd2VyZGVuLiAiCisjfiAiTGVzZW4gU2llIGh0dHA6Ly93aWtpLmRlYmlhbi5vcmcvUHJvamVjdHMvRGViU3JjMy4wIGbDvHIgSW5mb3JtYXRpb25lbiAiCisjfiAiw7xiZXIgZGVuIEVpbnNhdHogZGllc2VyIEZvcm1hdGUgaW5uZXJoYWxiIHZvbiBEZWJpYW4uIgorCisjfiBtc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMDgtMjAwOSBSYXBoYVxcWzplXWwgSGVydHpvZyIKKyN+IG1zZ3N0ciAiQ29weXJpZ2h0IFxcKGNvIDIwMDctMjAwOSBSYXBoYVxcWzplXWwgSGVydHpvZyIKKworI34gbXNnaWQgIkVOVklST05NRU5UIFZBUklBQkxFUyIKKyN+IG1zZ3N0ciAiVU1HRUJVTkdTVkFSSUFCTEVOIgorCisjfiBtc2dpZCAiMjAwOS0wNi0xMyIKKyN+IG1zZ3N0ciAiMjAwOS0wNi0xMyIKKworI34gbXNnaWQgIjIwMDktMDEtMDciCisjfiBtc2dzdHIgIjIwMDktMDEtMDciCisKKyN+IG1zZ2lkICIyMDA5LTA5LTA2IgorI34gbXNnc3RyICIyMDA5LTA5LTE2IgorCisjfiBtc2dpZCAiIgorI34gIlByaW50IHRoZSBzb3VyY2UgZm9ybWF0IHRoYXQgd291bGQgYmUgdXNlZCB0byBidWlsZCB0aGUgc291cmNlIHBhY2thZ2UgaWYgIgorI34gIkI8ZHBrZy1zb3VyY2UgLWIgPkk8ZGlyZWN0b3J5PiB3YXMgY2FsbGVkIChpbiB0aGUgc2FtZSBjb25kaXRpb25zIGFuZCAiCisjfiAid2l0aCB0aGUgc2FtZSBwYXJhbWV0ZXJzKS4gSW4gcGFydGljdWxhciBpdCdzIGltcG9ydGFudCB0aGF0IHRoZSB1cHN0cmVhbSAiCisjfiAidGFyYmFsbCAoaWYgYW55KSBjYW4gYmUgZm91bmQgaW4gdGhlIGN1cnJlbnQgZGlyZWN0b3J5LiIKKyN+IG1zZ3N0ciAiIgorI34gIkdpYnQgZGFzIFF1ZWxsZm9ybWF0IGF1cywgZGFzcyB6dW0gQmF1IGRlcyBRdWVsbHBha2V0cyB2ZXJ3YW5kdCB3w7xyZGUsICIKKyN+ICJmYWxscyBCPGRwa2ctc291cmNlIC1iID5JPFZlcnplaWNobmlzPiBhdWZnZXJ1ZmVuIHfDvHJkZSAodW50ZXIgZGVuICIKKyN+ICJnbGVpY2hlbiBCZWRpbmd1bmdlbiB1bmQgbWl0IGRlbiBnbGVpY2hlbiBPcHRpb25lbikuIEluc2Jlc29uZGVyZSBpc3QgZXMgIgorI34gIndpY2h0aWcsIGRhc3MgZGVyIFRhcmJhbGwgZGVyIE9yaWdpbmFsYXV0b3JlbiAoZmFsbHMgdm9yaGFuZGVuKSBpbSAiCisjfiAiYWt0dWVsbGVuIFZlcnplaWNobmlzIGdlZnVuZGVuIHdlcmRlbiBrYW5uLiIKKworI34gbXNnaWQgIjIwMDktMDgtMjAiCisjfiBtc2dzdHIgIjIwMDktMDgtMjAiCisKKyN+IG1zZ2lkICIyMDA5LTExLTEyIgorI34gbXNnc3RyICIyMDA5LTExLTEyIgorCisjfiBtc2dpZCAiQjwtLWxpY2VuY2U+LCBCPC0tbGljZW5zZT4iCisjfiBtc2dzdHIgIkI8LS1saWNlbmNlPiwgQjwtLWxpY2Vuc2U+IgorCisjfiBtc2dpZCAiRGlzcGxheSBCPGRwa2c+IGxpY2VuY2UuIgorI34gbXNnc3RyICJaZWlnZSBkaWUgQjxkcGtnPi1MaXplbnogYW4uIgorCisjfiBtc2dpZCAiQjxEUEtHX05PX1RTVFA+IgorI34gbXNnc3RyICJCPERQS0dfTk9fVFNUUD4iCisKKyN+IG1zZ2lkICIiCisjfiAiRGVmaW5lIHRoaXMgdG8gc29tZXRoaW5nIGlmIHlvdSBwcmVmZXIgQjxkcGtnPiBzdGFydGluZyBhIG5ldyBzaGVsbCAiCisjfiAicmF0aGVyIHRoYW4gc3VzcGVuZGluZyBpdHNlbGYsIHdoaWxlIGRvaW5nIGEgc2hlbGwgZXNjYXBlLiIKKyN+IG1zZ3N0ciAiIgorI34gIkRlZmluaWVyZW4gc2llIGRpZXNlIHp1IGlyZ2VuZGV0d2FzLCBmYWxscyBTaWUgZXMgYmV2b3J6dWdlbiwgZGFzcyAiCisjfiAiQjxkcGtnPiBlaW5lIG5ldWUgU2hlbGwgc3RhcnRldCBzdGF0dCBzaWNoIHNlbGJlciB6dSBzdXNwZW5kaWVyZW4sICIKKyN+ICJ3w6RocmVuZCBlcyBlaW5lbiDCu1NoZWxsLUVzY2FwZcKrIGR1cmNoZsO8aHJ0LiIKKworI34gbXNnaWQgIkI8LS1saWNlbnNlPiwgQjwtLWxpY2VuY2U+IgorI34gbXNnc3RyICJCPC0tbGljZW5jZT4sIEI8LS1saWNlbnNlPiIKKworI34gbXNnaWQgIlNob3cgdGhlIGNvcHlyaWdodCBsaWNlbnNpbmcgdGVybXMgYW5kIGV4aXQuIgorI34gbXNnc3RyICJaZWlndCBkaWUgS29waWVyLUxpemVuemllcnVuZ3NiZWRpbmd1bmdlbiB1bmQgYmVlbmRldCBzaWNoLiIKKworI34gbXNnaWQgIiIKKyN+ICJSZWFkIHN1YnN0aXR1dGlvbiB2YXJpYWJsZXMgaW4gSTxzdWJzdHZhcnNmaWxlPjsgdGhlIGRlZmF1bHQgaXMgQjxkZWJpYW4vIgorI34gInN1YnN0dmFycz4uIgorI34gbXNnc3RyICIiCisjfiAiTGVzZSBTdWJzdGl0dXRpb25zdmFyaWFibGVuIGF1cyBJPHN1YnN0dmFyZGF0ZWk+OyBzdGFuZGFyZG3DpMOfaWcgaXN0IGRpZXMgIgorI34gIkI8ZGViaWFuL3N1YnN0dmFycz4uIgorCisjfiBtc2dpZCAiQjwtbD4sIEI8LS1saWNlbnNlPiIKKyN+IG1zZ3N0ciAiQjwtbD4sIEI8LS1saWNlbnNlPiIKKworI34gbXNnaWQgIkI8LUk+W0k8ZmlsZS1wYXR0ZXJuPl0iCisjfiBtc2dzdHIgIkI8LUk+W0k8RGF0ZWltdXN0ZXI+XSIKKworI34gbXNnaWQgIkI8LS1saWNlbmNlPnxCPC0tbGljZW5zZT4iCisjfiBtc2dzdHIgIkI8LS1saWNlbmNlPnxCPC0tbGljZW5zZT4iCisKKyN+IG1zZ2lkICIiCisjfiAiRGlzcGxheXMgdGhlIEI8ZHNlbGVjdD4gY29weXJpZ2h0IGFuZCBsaWNlbnNlIGluZm9ybWF0aW9uIGFuZCBleGl0cyAiCisjfiAic3VjY2Vzc2Z1bGx5LiIKKyN+IG1zZ3N0ciAiIgorI34gIlplaWdlIGRpZSBDb3B5cmlnaHQtIHVuZCBMaXplbnppbmZvcm1hdGlvbmVuIHZvbiBCPGRzZWxlY3Q+IHVuZCBiZWVuZGUgIgorI34gInNpY2ggZXJmb2xncmVpY2guIgorCisjfiBtc2dpZCAiMjAwOS0xMi0zMSIKKyN+IG1zZ3N0ciAiMjAwOS0xMi0zMSIKKworI34gbXNnaWQgIiIKKyN+ICJUaGUgZmlsZSBpcyBhbiBCPGFyPiBhcmNoaXZlIHdpdGggYSBtYWdpYyB2YWx1ZSBvZiBCPCFFPGx0PmFyY2hFPGd0Pj4uIgorI34gbXNnc3RyICIiCisjfiAiRGllIERhdGVpIGlzdCBlaW4gQjxhcj4tQXJjaGl2IG1pdCBlaW5lciBtYWdpc2NoZW4gWmFobCB2b24gQjwhIgorI34gIkU8bHQ+YXJjaEU8Z3Q+Pi4iCisKKyN+IG1zZ2lkICJCPC1oPiIKKyN+IG1zZ3N0ciAiQjwtaD4iCisKKyN+IG1zZ2lkICIiCisjfiAiVGhlIGZpbGUgQjxkZWJpYW4vcGF0Y2hlcy8uZHBrZy1zb3VyY2UtYXBwbGllZD4gaXMgY3JlYXRlZCBpZiBzb21lICIKKyN+ICJwYXRjaGVzIGhhdmUgYmVlbiBhcHBsaWVkIGR1cmluZyB0aGUgZXh0cmFjdGlvbi4iCisjfiBtc2dzdHIgIiIKKyN+ICJEaWUgRGF0ZWkgQjxkZWJpYW4vcGF0Y2hlcy8uZHBrZy1zb3VyY2UtYXBwbGllZD4gd2lyZCBhbmdlbGVndCwgZmFsbHMgIgorI34gImVpbmlnZSBQYXRjaGVzIHfDpGhyZW5kIGRlciBFeHRyYWhpZXJ1bmcgYW5nZXdhbmR0IHd1cmRlbi4iCisKKyN+IG1zZ2lkICIiCisjfiAiQWxsIG9yaWdpbmFsIHRhcmJhbGxzIGZvdW5kIGluIHRoZSBjdXJyZW50IGRpcmVjdG9yeSBhcmUgZXh0cmFjdGVkIGluIGEgIgorI34gInRlbXBvcmFyeSBkaXJlY3RvcnkgYnkgZm9sbG93aW5nIHRoZSBzYW1lIGxvZ2ljIGFzIGZvciB0aGUgdW5wYWNrLCB0aGUgIgorI34gImRlYmlhbiBkaXJlY3RvcnkgaXMgY29waWVkIG92ZXIgaW4gdGhlIHRlbXBvcmFyeSBkaXJlY3RvcnksIGFuZCBhbGwgIgorI34gInBhdGNoZXMgZXhjZXB0IEI8ZGViaWFuLWNoYW5nZXMtPkk8dmVyc2lvbj4gYXJlIGFwcGxpZWQuICBUaGUgdGVtcG9yYXJ5ICIKKyN+ICJkaXJlY3RvcnkgaXMgY29tcGFyZWQgdG8gdGhlIHNvdXJjZSBwYWNrYWdlIGRpcmVjdG9yeSBhbmQgdGhlIGRpZmYgKGlmICIKKyN+ICJub24tZW1wdHkpIGlzIHN0b3JlZCBpbiBCPGRlYmlhbi9wYXRjaGVzL2RlYmlhbi1jaGFuZ2VzLT5JPHZlcnNpb24+LiBBbnkgIgorI34gImNoYW5nZSBvbiBhIGJpbmFyeSBmaWxlIGlzIG5vdCByZXByZXNlbnRhYmxlIGluIGEgZGlmZiBhbmQgd2lsbCB0aHVzIGxlYWQgIgorI34gInRvIGEgZmFpbHVyZSB1bmxlc3MgdGhlIG1haW50YWluZXIgZGVsaWJlcmF0ZWx5IGRlY2lkZWQgdG8gaW5jbHVkZSB0aGF0ICIKKyN+ICJtb2RpZmllZCBiaW5hcnkgZmlsZSBpbiB0aGUgZGViaWFuIHRhcmJhbGwgKGJ5IGxpc3RpbmcgaXQgaW4gQjxkZWJpYW4vIgorI34gInNvdXJjZS9pbmNsdWRlLWJpbmFyaWVzPikuIFRoZSBidWlsZCB3aWxsIGFsc28gZmFpbCBpZiBpdCBmaW5kcyBiaW5hcnkgIgorI34gImZpbGVzIGluIHRoZSBkZWJpYW4gc3ViLWRpcmVjdG9yeSB1bmxlc3MgdGhleSBoYXZlIGJlZW4gd2hpdGVsaXN0ZWQgIgorI34gInRocm91Z2ggQjxkZWJpYW4vc291cmNlL2luY2x1ZGUtYmluYXJpZXM+LiIKKyN+IG1zZ3N0ciAiIgorI34gIkFsbGUgaW0gYWt0dWVsbGVuIFZlcnplaWNobmlzIGdlZnVuZGVuZW4gT3JpZ2luYWwtVGFyYsOkbGxlIHdlcmRlbiBpbiBlaW4gIgorI34gInRlbXBvcsOkcmVzIFZlcnplaWNobmlzIGVudHBhY2t0LiBIaWVyYmVpIHdpcmQgZGllIGdsZWljaGUgTG9naWsgd2llIGbDvHIgIgorI34gImRhcyBFbnRwYWNrZW4gdmVyd2FuZHQsIGRhcyBkZWJpYW4tVmVyemVpY2huaXMgd2lyZCBpbiBkYXMgdGVtcG9yw6RyZSAiCisjfiAiVmVyemVpY2huaXMga29waWVydCB1bmQgYWxsZSBQYXRjaGVzIGF1w59lciBCPGRlYmlhbi1jaGFuZ2VzLT5JPFZlcnNpb24+ICIKKyN+ICJ3ZXJkZW4gYW5nZXdhbmR0LiDDhG5kZXJ1bmdlbiBhbiBCaW7DpHJkYXRlaWVuIGvDtm5uZW4gaW4gZWluZW0gRGlmZiBuaWNodCAiCisjfiAiZGFyZ2VzdGVsbHQgd2VyZGVuIHVuZCBmw7xocmVuIGRhaGVyIHp1IGVpbmVtIEZlaGxzY2hsYWcsIGVzIHNlaSBkZW5uLCBkZXIgIgorI34gIkJldHJldWVyIGhhdCBzaWNoIGFic2ljaHRsaWNoIGRhenUgZW50c2NobG9zc2VuLCBkaWUgdmVyw6RuZGVydGUgIgorI34gIkJpbsOkcmRhdGVpIGRlbSBEZWJpYW4tVGFyYmFsbCBoaW56dXp1ZsO8Z2VuIChpbmRlbSBlciBzaWUgaW4gQjxkZWJpYW4vIgorI34gInNvdXJjZS9pbmNsdWRlLWJpbmFyaWVzPiBhdWZnZWbDvGhydCBoYXQpLiBEZXIgQmF1IHdpcmQgYXVjaCBmZWhsc2NobGFnZW4sICIKKyN+ICJmYWxscyBlciBCaW7DpHJkYXRlaWVuIGltIGRlYmlhbi1VbnRlcnZlcnplaWNobmlzIGZpbmRldCwgZGllIG5pY2h0IMO8YmVyICIKKyN+ICJCPGRlYmlhbi9zb3VyY2UvaW5jbHVkZS1iaW5hcmllcz4gZnJlaWdlZ2ViZW4gd3VyZGVuLiIKKworI34gbXNnaWQgIiIKKyN+ICJOb3RlOiBCPGRwa2ctc291cmNlPiBleHBlY3RzIHRoZSBzb3VyY2UgdHJlZSB0byBoYXZlIGFsbCBwYXRjaGVzIGxpc3RlZCAiCisjfiAiaW4gdGhlIHNlcmllcyBmaWxlIGFwcGxpZWQgd2hlbiB5b3UgZ2VuZXJhdGUgdGhlIHNvdXJjZSBwYWNrYWdlLiAgVGhpcyBpcyAiCisjfiAibm90IHRoZSBjYXNlIHdoZW4gdGhlIHNvdXJjZSB0cmVlIGhhcyBiZWVuIG9idGFpbmVkIGJ5IHVucGFja2luZyBhIHNvdXJjZSAiCisjfiAicGFja2FnZSB1c2luZyB0aGUgRm9ybWF0OiAxLjAgZm9yIGluc3RhbmNlLiBUbyBtaXRpZ2F0ZSB0aGUgcHJvYmxlbSwgIgorI34gIkI8ZHBrZy1zb3VyY2U+IHdpbGwgYXBwbHkgdGhlIHBhdGNoZXMgYnkgaXRzZWxmIGlmIGl0IGJlbGlldmVzIHRoYXQgdGhleSAiCisjfiAiaGF2ZSBub3QgeWV0IGJlZW4gYXBwbGllZC4gVG8gZGV0ZWN0IHRoaXMgc2l0dWF0aW9uLCBpdCB1c2VzIHRoZSAiCisjfiAiZm9sbG93aW5nIGhldXJpc3RpYzogaWYgYSBCPC5wYz4gc3ViZGlyZWN0b3J5IGlzIGRldGVjdGVkLCBpdCB3aWxsIGNhbGwgIgorI34gIkI8cXVpbHQgdW5hcHBsaWVkPiB0byBmaW5kIG91dCBpZiBzb21lIHBhdGNoZXMgYXJlIG5vdCBhcHBsaWVkLiBBZnRlciAiCisjfiAidGhhdCwgaXQgd2lsbCB0YWtlIHRoZSBmaXJzdCBwYXRjaCBvZiB0aGUgc2VyaWVzIChvciB0aGUgZmlyc3QgdW5hcHBsaWVkICIKKyN+ICJwYXRjaCByZXR1cm5lZCBieSBCPHF1aWx0IHVuYXBwbGllZD4sIGlmIGFueSkgYW5kIHZlcmlmeSBpZiBpdCBjYW4gYmUgIgorI34gImFwcGxpZWQgd2l0aG91dCBlcnJvcnMuIElmIHRoZSB2ZXJpZmljYXRpb24gc3VjY2VlZHMsIGl0IGNvbmNsdWRlcyB0aGF0ICIKKyN+ICJwYXRjaGVzIGhhdmUgbm90IGJlZW4gYXBwbGllZCBhbmQgd2lsbCBhcHBseSB0aGVtIGFsbC4gIFRoZSBvcHRpb24gQjwtLW5vLSIKKyN+ICJwcmVwYXJhdGlvbj4gY2FuIGJlIHVzZWQgdG8gZGlzYWJsZSB0aGlzIGJlaGF2aW91ci4iCisjfiBtc2dzdHIgIiIKKyN+ICJIaW53ZWlzOiBCPGRwa2ctc291cmNlPiBlcndhcnRldCwgZGFzcyBhbGxlIFBhdGNoZXMgYXVzIGRlciBTZXJpZXMtRGF0ZWkgIgorI34gImF1ZiBkZW0gUXVlbGxiYXVtIGFuZ2V3YW5kdCB3dXJkZW4sIHdlbm4gU2llIGRhcyBRdWVsbHBha2V0IGVyc3RlbGxlbi4gIgorI34gIkRpZXMgaXN0IHouQi4gbmljaHQgZGVyIEZhbGwsIHdlbm4gZGVyIFF1ZWxsYmF1bSBkdXJjaCBFbnRwYWNrZW4gZWluZXMgIgorI34gIlF1ZWxscGFrZXRzIGltIEZvcm1hdDogMS4wIGVyaGFsdGVuIHd1cmRlLiBVbSBkYXMgUHJvYmxlbSB6dSBlbnRzY2jDpHJmZW4sICIKKyN+ICJ3aXJkIEI8ZHBrZy1zb3VyY2U+IGRpZSBQYXRjaGVzIHNlbGJzdCBhbndlbmRlbiwgZmFsbHMgZXMgZ2xhdWJ0LCBkYXNzICIKKyN+ICJzaWUgbm9jaCBuaWNodCBhbmdld2FuZHQgd3VyZGVuLiBVbSBkaWVzZSBTaXR1YXRpb24genUgZXJrZW5uZW4sICIKKyN+ICJ2ZXJ3ZW5kZXQgZXMgZGllIGZvbGdlbmRlIEhldXJpc3RpazogRmFsbHMgZWluIFVudGVydmVyemVpY2huaXMgQjwucGM+ICIKKyN+ICJlcmthbm50IHdpcmQsIHdpcmQgQjxxdWlsdCB1bmFwcGxpZWQ+IGF1ZmdlcnVmZW4sIHVtIGhlcmF1c3p1ZmluZGVuLCBvYiAiCisjfiAiZWluaWdlIFBhdGNoZXMgbm9jaCBuaWNodCBhbmdld2FuZHQgd3VyZGVuLiBEYW5hY2ggd2lyZCBlcyBkZW4gZXJzdGVuICIKKyN+ICJQYXRjaCBkZXIgU2VyaWUgKG9kZXIgLSBmYWxscyB2b3JoYW5kZW5kZW4gLSBkZW4gZXJzdGVuIHZvbiBCPHF1aWx0ICIKKyN+ICJ1bmFwcGxpZWQ+IHp1csO8Y2tnZWxpZWZlcnRlbiBuaWNodCBhbmdld2FuZHRlbiBQYXRjaCkgYW53ZW5kZW4gdW5kICIKKyN+ICLDvGJlcnByw7xmZW4sIGRhc3MgZXIgb2huZSBGZWhsZXIgYW5nZXdhbmR0IHdlcmRlbiBrYW5uLiBGYWxscyBkaWVzZSAiCisjfiAiw5xiZXJwcsO8ZnVuZyBnZWxpbmd0IHNjaGxpZcOfdCBlcywgZGFzcyBkaWUgUGF0Y2hlcyBub2NoIG5pY2h0IGFuZ2V3YW5kdCAiCisjfiAid3VyZGVuIHVuZCB3ZW5kZXQgc2llIGFsbGUgYW4uIERpZSBPcHRpb24gQjwtLW5vLXByZXBhcmF0aW9uPiBrYW5uIHp1bSAiCisjfiAiQWJzY2hhbHRlbiBkaWVzZXMgVmVyaGFsdGVucyB2ZXJ3YW5kdCB3ZXJkZW4uIgorCisjfiBtc2dpZCAiQjwtLXdpdGhvdXQtcXVpbHQ+IgorI34gbXNnc3RyICJCPC0td2l0aG91dC1xdWlsdD4iCisKKyN+IG1zZ2lkICIiCisjfiAiRG9uJ3QgdXNlIHF1aWx0IHRvIGFwcGx5IHBhdGNoZXMgYnV0IGRwa2ctc291cmNlJ3Mgb3duIGNvZGUuIEl0IHdvbid0IGJlICIKKyN+ICJwb3NzaWJsZSB0byB1c2UgcXVpbHQgZGlyZWN0bHkgb24gdGhlIHVucGFja2VkIGRpcmVjdG9yeSBidXQgaXQgd2lsbCBiZSAiCisjfiAiZnJlZSBvZiBxdWlsdCdzIHRlbXBvcmFyeSBmaWxlcyBhcyB3ZWxsLiIKKyN+IG1zZ3N0ciAiIgorI34gIlZlcndlbmRlIHp1ciBBbndlbmR1bmcgZGVyIFBhdGNoZXMgbmljaHQgUXVpbHQsIHNvbmRlcm4gZGVuIENvZGUgdm9uIGRwa2ctIgorI34gInNvdXJjZS4gQXVmIGRlbSBlbnRwYWNrdGVuIFZlcnplaWNobmlzIGthbm4gUXVpbHQgbmljaHQgZGlyZWt0IHZlcndhbmR0ICIKKyN+ICJ3ZXJkZW4sIGFiZXIgZXMgd2lyZCBhdWNoIGZyZWkgdm9uIFF1aWx0cyB0ZW1wb3LDpHJlbiBEYXRlaWVuIHNlaW4uIgorCisjfiBtc2dpZCAiIgorI34gIiAgIyBsZXQgZHBrZy1zb3VyY2UgY3JlYXRlIGEgZGViaWFuLnRhci5iejIgd2l0aCBtYXhpbWFsIGNvbXByZXNzaW9uXG4iCisjfiAiICBjb21wcmVzc2lvbiA9IFwiYnppcDJcIlxuIgorI34gIiAgY29tcHJlc3Npb24tbGV2ZWwgPSA5XG4iCisjfiBtc2dzdHIgIiIKKyN+ICIgICMgbGFzcyBkcGtnLXNvdXJjZSBlaW4gZGViaWFuLnRhci5iejIgbWl0IG1heGltYWxlciBLb21wcmltaWVydW5nXG4iCisjfiAiICAjIGVyc3RlbGxlblxuIgorI34gIiAgY29tcHJlc3Npb24gPSBcImJ6aXAyXCJcbiIKKyN+ICIgIGNvbXByZXNzaW9uLWxldmVsID0gOVxuIgorCisjfiBtc2dpZCAiMjAwOC0wNC0wOSIKKyN+IG1zZ3N0ciAiMjAwOC0wNC0wOSIKKworI34gbXNnaWQgIjIwMDctMDMtMDYiCisjfiBtc2dzdHIgIjIwMDctMDMtMDYiCisKKyN+IG1zZ2lkICIyMDA3LTA2LTEyIgorI34gbXNnc3RyICIyMDA3LTA2LTEyIgorCisjfiBtc2dpZCAiQjwtWj5JPGNvbXByZXNzaW9uPiIKKyN+IG1zZ3N0ciAiQjwtWj5JPEtvbXByaW1pZXJ1bmc+IgorCisjfiBtc2dpZCAiQjwtej5JPGxldmVsPiIKKyN+IG1zZ3N0ciAiQjwtej5JPFN0dWZlPiIKKworI34gbXNnaWQgIjIwMDktMDEtMDQiCisjfiBtc2dzdHIgIjIwMDktMDEtMDQiCisKKyN+IG1zZ2lkICIyMDA5LTAyLTE4IgorI34gbXNnc3RyICIyMDA5LTAyLTE4IgorCisjfiBtc2dpZCAiIgorI34gIkk8b3ZlcnJpZGVmaWxlPiBpcyB0aGUgbmFtZSBvZiBhIGZpbGUgdG8gcmVhZCB3aGljaCBjb250YWlucyBpbmZvcm1hdGlvbiAiCisjfiAiYWJvdXQgaG93IHRoZSBwYWNrYWdlIGZpdHMgaW50byB0aGUgZGlzdHJpYnV0aW9uOyBzZWUgQjxkZWItb3ZlcnJpZGU+KDUpLiIKKyN+IG1zZ3N0ciAiIgorI34gIkk8b3ZlcnJpZGUtRGF0ZWk+IGlzdCBkZXIgTmFtZSBlaW5lciBlaW56dWxlc2VuZGVuIERhdGVpLCBkaWUgIgorI34gIkluZm9ybWF0aW9uZW4gZGFyw7xiZXIgZW50aMOkbHQsIHdpZSBkYXMgUGFrZXQgaW4gZGllIERpc3RyaWJ1dGlvbiBwYXNzdDsgIgorI34gInNpZWhlIEI8ZGViLW92ZXJyaWRlPig1KS4iCisKKyN+IG1zZ2lkICIiCisjfiAiU2NhbiBJPGZpbGU+IHRvIGZpbmQgc3VwcGxlbWVudGFyeSBvdmVycmlkZXMuIFNlZSBCPGRlYi1leHRyYS1vdmVycmlkZT4iCisjfiAiKDUpICBmb3IgbW9yZSBpbmZvcm1hdGlvbiBvbiBpdHMgZm9ybWF0LiIKKyN+IG1zZ3N0ciAiIgorI34gIkR1cmNoc3VjaGUgSTxEYXRlaT4sIHVtIHp1c8OkdHpsaWNoZSBPdmVycmlkZXMgenUgZmluZGVuLiBMZXNlbiBTaWUgQjxkZWItIgorI34gImV4dHJhLW92ZXJyaWRlPig1KSBmw7xyIHdlaXRlcmUgSW5mb3JtYXRpb25lbiDDvGJlciBkZXJlbiBGb3JtYXQuIgorCisjfiBtc2dpZCAiIgorI34gIlRoZSBJPG92ZXJyaWRlLWZpbGU+LCBpZiBnaXZlbiwgaXMgdXNlZCB0byBzZXQgcHJpb3JpdGllcyBpbiB0aGUgIgorI34gInJlc3VsdGluZyBpbmRleCByZWNvcmRzIGFuZCB0byBvdmVycmlkZSB0aGUgbWFpbnRhaW5lciBmaWVsZCBnaXZlbiBpbiB0aGUgIgorI34gIkk8LmRzYz4gZmlsZXMuIFNlZSBCPGRwa2ctc2NhbnBhY2thZ2VzPigxKSAgZm9yIHRoZSBmb3JtYXQgb2YgdGhpcyBmaWxlLiAiCisjfiAiXFxzLTFOQjpcXHMwIFNpbmNlIHRoZSBvdmVycmlkZSBmaWxlIGlzIGluZGV4ZWQgYnkgYmluYXJ5LCBub3Qgc291cmNlLCAiCisjfiAicGFja2FnZXMsIHRoZXJlJ3MgYSBiaXQgb2YgYSBwcm9ibGVtIGhlcmUuIFRoZSBjdXJyZW50IGltcGxlbWVudGF0aW9uICIKKyN+ICJ1c2VzIHRoZSBoaWdoZXN0IHByaW9yaXR5IG9mIGFsbCB0aGUgYmluYXJ5IHBhY2thZ2VzIHByb2R1Y2VkIGJ5IGEgSTwuIgorI34gImRzYz4gZmlsZSBmb3IgdGhlIHByaW9yaXR5IG9mIHRoZSBzb3VyY2UgcGFja2FnZSwgYW5kIHRoZSBvdmVycmlkZSBlbnRyeSAiCisjfiAiZm9yIHRoZSBmaXJzdCBiaW5hcnkgcGFja2FnZSBsaXN0ZWQgaW4gdGhlIEk8LmRzYz4gZmlsZSB0byBtb2RpZnkgIgorI34gIm1haW50YWluZXIgaW5mb3JtYXRpb24uIFRoaXMgbWlnaHQgY2hhbmdlLiIKKyN+IG1zZ3N0ciAiIgorI34gIkRpZSBJPG92ZXJyaWRlLURhdGVpPiB3aXJkLCBmYWxscyBhbmdlZ2ViZW4sIHZlcndlbmRldCwgdW0gZGllICIKKyN+ICJQcmlvcml0w6R0ZW4gaW4gZGVuIGVyZ2ViZW5lbiBJbmRleC1EYXRlbnPDpHR6ZW4genUgc2V0emVuIHVuZCBzaWNoIMO8YmVyICIKKyN+ICJkYXMgQmV0cmV1ZXItRmVsZCBpbiBkZW4gSTwuZHNjPi1EYXRlaWVuIGhpbndlZ3p1c2V0emVuLiBMZXNlbiBTaWUgQjxkcGtnLSIKKyN+ICJzY2FucGFja2FnZXM+KDEpIGbDvHIgZGFzIEZvcm1hdCBkaWVzZXIgRGF0ZWkuIFxccy0xQmVhY2h0ZW4gU2llXFxzMDogRGEgIgorI34gImRpZSBvdmVycmlkZS1EYXRlaSBuYWNoIEJpbsOkci0gdW5kIG5pY2h0IFF1ZWxscGFrZXRlbiBpbmRpemllcnQgd2lyZCwgIgorI34gImdpYnQgZXMgZWluIGhpZXIga2xlaW5lcyBQcm9ibGVtLiBEaWUgYWt0dWVsbGUgSW1wbGVtZW50aWVydW5nIHZlcndlbmRldCAiCisjfiAiZGllIGjDtmNoc3RlIFByaW9yaXTDpHQgYWxsZXIgdm9uIGVpbmVyIEk8LmRzYz4tRGF0ZWkgZXJ6ZXVndGVuIEJpbsOkcnBha2V0ZSAiCisjfiAiZsO8ciBkaWUgUHJpb3JpdMOkdCBkZXMgUXVlbGxwYWtldHMsIHVuZCBkZW4gSW5oYWx0IGbDvHIgZGFzIEhpbndlZ3NldHplbiAiCisjfiAiw7xiZXIgZGllIEJldHJldWVyLUluZm9ybWF0aW9uIGF1cyBkZW0gRWludHJhZyBmw7xyIGRhcyBlcnN0ZSBpbiBkZXIgSTwuIgorI34gImRzYz4tRGF0ZWkgYXVmZ2Vmw7xocnRlIEJpbsOkcnBha2V0LiBEaWVzIGvDtm5udGUgc2ljaCDDpG5kZXJuLiIKKworI34gbXNnaWQgIiIKKyN+ICJVc2UgSTxmaWxlPiBhcyB0aGUgc291cmNlIG92ZXJyaWRlIGZpbGUuIFRoZSBkZWZhdWx0IGlzIHRoZSBuYW1lIG9mIHRoZSAiCisjfiAib3ZlcnJpZGUgZmlsZSB5b3Ugc3BlY2lmaWVkIHdpdGggSTwuc3JjPiBhcHBlbmRlZC4iCisjfiBtc2dzdHIgIiIKKyN+ICJWZXJ3ZW5kZW4gU2llIEk8RGF0ZWk+IGFscyBRdWVsbC1vdmVycmlkZS1EYXRlaS4gRGllIFN0YW5kYXJkZWluc3RlbGx1bmcgIgorI34gImlzdCBkZXIgTmFtZSBkZXIgb3ZlcnJpZGUtRGF0ZWksIGRpZSBTaWUgYW5nZWdlYmVuIGhhYmVuLCB1bSBJPC5zcmM+ICIKKyN+ICJlcmfDpG56dC4iCisKKyN+IG1zZ2lkICIiCisjfiAiU3BlY2lmeSB0aGUgY29tcHJlc3Npb24gdG8gdXNlIGZvciBjcmVhdGVkIGZpbGVzICh0YXJiYWxscyBhbmQgZGlmZnMpLiAgIgorI34gIk5vdGUgdGhhdCB0aGlzIG9wdGlvbiB3aWxsIG5vdCBjYXVzZSBleGlzdGluZyB0YXJiYWxscyB0byBiZSAiCisjfiAicmVjb21wcmVzc2VkLCBpdCBvbmx5IGFmZmVjdHMgbmV3IGZpbGVzLiBTdXBwb3J0ZWQgdmFsdWVzIGFyZTogSTxnemlwPiwgIgorI34gIkk8YnppcDI+LCBhbmQgSTxsem1hPi4gIEk8Z3ppcD4gaXMgdGhlIGRlZmF1bHQuIgorI34gbXNnc3RyICIiCisjfiAiR2lidCBkaWUgS29tcHJpbWllcnVuZyBhbiwgZGllIGbDvHIgZGllIGFuZ2VsZWd0ZSBEYXRlaWVuIChUYXJiw6RsbGUgdW5kICIKKyN+ICJEaWZmcykgdmVyd2VuZGV0IHdpcmQuIEJlYWNodGVuIFNpZSwgZGFzcyBkaWVzZSBPcHRpb24gbmljaHQgZGF6dSBmw7xocnQsICIKKyN+ICJkYXNzIGV4aXN0aWVyZW5kZSBUYXJiw6RsbGUgcmVrb21wcmltaWVydCB3ZXJkZW4sIHNpZSBiZXRyaWZmdCBudXIgbmV1ZSAiCisjfiAiRGF0ZWllbi4gVW50ZXJzdMO8dHp0ZSBXZXJ0ZSBzaW5kIEk8Z3ppcD4sIEk8YnppcDI+IHVuZCBJPGx6bWE+LiBJPGd6aXA+ICIKKyN+ICJpc3Qgdm9yZWluZ2VzdGVsbHQuIgorCisjfiBtc2dpZCAiIgorI34gIkEgc291cmNlIHBhY2thZ2UgaW4gdGhpcyBmb3JtYXQgY29udGFpbnMgYXQgbGVhc3QgYW4gb3JpZ2luYWwgdGFyYmFsbCAoQjwuIgorI34gIm9yaWcudGFyLj5JPGV4dD4gd2hlcmUgSTxleHQ+IGNhbiBiZSBCPGd6PiwgQjxiejI+IGFuZCBCPGx6bWE+KSBhbmQgYSAiCisjfiAiZGViaWFuIHRhcmJhbGwgKEI8LmRlYmlhbi50YXIuPkk8ZXh0PikuIEl0IGNhbiBhbHNvIGNvbnRhaW4gYWRkaXRpb25hbCAiCisjfiAib3JpZ2luYWwgdGFyYmFsbHMgKEI8Lm9yaWctPkk8Y29tcG9uZW50PkI8LnRhci4+STxleHQ+KS4gIEk8Y29tcG9uZW50PiAiCisjfiAiY2FuIG9ubHkgY29udGFpbiBhbHBoYW51bWVyaWMgY2hhcmFjdGVycyBhbmQgZGFzaGVzIChcIi1cIikuIgorI34gbXNnc3RyICIiCisjfiAiRWluIFF1ZWxscGFrZXQgaW4gZGllc2VtIEZvcm1hdCBlbnRow6RsdCBtaW5kZXN0ZW5zIGVpbmVuIE9yaWdpbmFsLVRhcmJhbGwgIgorI34gIihCPC5vcmlnLnRhci4+STxlcnc+LCB3b2JlaSBJPGVydz4gQjxnej4sIEI8YnoyPiB1bmQgQjxsem1hPiBzZWluIGthbm4pICIKKyN+ICJ1bmQgZWluZW4gRGViaWFuLVRhcmJhbGwgKEI8LmRlYmlhbi50YXIuPkk8ZXJ3PikuIEVzIGthbm4gYXVjaCAiCisjfiAienVzw6R0emxpY2hlIE9yaWdpbmFsLVRhcmLDpGxsZSAoQjwub3JpZy0+STxLb21wb25lbnRlPkI8LnRhci4+STxlcnc+KSkgIgorI34gImVudGhhbHRlbi4gSTxLb21wb25lbnRlPiBrYW5uIG51ciBhbHBoYW51bWVyaXNjaGUgWmVpY2hlbiB1bmQgIgorI34gIkdlZGFua2Vuc3RyaWNoZSAowrstwqspIGVudGhhbHRlbi4iCisKKyN+IG1zZ2lkICIyMDA4LTA0LTA2IgorI34gbXNnc3RyICIyMDA4LTA0LTA2IgorCisjfiBtc2dpZCAiIgorI34gIkFsbCBvcHRpb25zIGNhbiBiZSBzcGVjaWZpZWQgYm90aCBvbiB0aGUgY29tbWFuZCBsaW5lIGFuZCBpbiB0aGUgQjxkcGtnPiAiCisjfiAiY29uZmlndXJhdGlvbiBmaWxlIEk8L2V0Yy9kcGtnL2Rwa2cuY2ZnPi4gRWFjaCBsaW5lIGluIHRoZSBjb25maWd1cmF0aW9uICIKKyN+ICJmaWxlIGlzIGVpdGhlciBhbiBvcHRpb24gKGV4YWN0bHkgdGhlIHNhbWUgYXMgdGhlIGNvbW1hbmQgbGluZSBvcHRpb24gYnV0ICIKKyN+ICJ3aXRob3V0IGxlYWRpbmcgZGFzaGVzKSBvciBhIGNvbW1lbnQgKGlmIGl0IHN0YXJ0cyB3aXRoIGEgQjwjPikuIgorI34gbXNnc3RyICIiCisjfiAiQWxsZSBPcHRpb25lbiBrw7ZubmVuIGF1ZiBkZXIgS29tbWFuZG96ZWlsZSBvZGVyIGluIGRlciBCPGRwa2c+LSIKKyN+ICJLb25maWd1cmF0aW9uc2RhdGVpIEk8L2V0Yy9kcGtnL2Rwa2cuY2ZnPiBhbmdlZ2ViZW4gd2VyZGVuLiBKZWRlIFplaWxlIGluICIKKyN+ICJkZXIgS29uZmlndXJhdGlvbnNkYXRlaSBpc3QgZW50d2VkZXIgZWluZSBPcHRpb24gKGV4YWt0IGRpZSBnbGVpY2hlIHdpZSAiCisjfiAiZGllIEJlZmVobHN6ZWlsZW5vcHRpb24gbnVyIG9obmUgZsO8aHJlbmRlIEdlZGFua2Vuc3RyaWNoZSkgb2RlciBlaW4gIgorI34gIktvbW1lbnRhciAoZmFsbHMgc2llIG1pdCBCPCM+IGJlZ2lubnQpLiIKKworI34gbXNnaWQgIiIKKyN+ICJUaGUgREVCX0hPU1RfQVJDSF9DUFUgYW5kIERFQl9IT1NUX0FSQ0hfT1MgdmFyaWFibGVzIHdlcmUgb25seSBpbnRyb2R1Y2VkICIKKyN+ICJpbiByZWxhdGl2ZWx5IHJlY2VudCB2ZXJzaW9ucyBvZiBCPGRwa2ctYXJjaGl0ZWN0dXJlPiAoc2luY2UgZHBrZyAiCisjfiAiMS4xMy4yKSwgYmVmb3JlIHRoaXMgSTxkZWJpYW4vcnVsZXM+IGZpbGVzIHRlbmRlZCB0byBjaGVjayB0aGUgdmFsdWVzIG9mICIKKyN+ICJ0aGUgREVCX0hPU1RfR05VX0NQVSBvciBERUJfSE9TVF9HTlVfVFlQRSB2YXJpYWJsZXMgd2hpY2ggaGF2ZSBiZWVuICIKKyN+ICJzdWJqZWN0IHRvIGNoYW5nZS4iCisjfiBtc2dzdHIgIiIKKyN+ICJEaWUgREVCX0hPU1RfQVJDSF9DUFUtIHVuZCBERUJfSE9TVF9BUkNIX09TLVZhcmlhYmxlbiB3dXJkZW4gZXJzdCBpbiAiCisjfiAiZWluZXIgcmVsYXRpdiBuZXVlbiBWZXJzaW9uIHZvbiBCPGRwa2ctYXJjaGl0ZWN0dXJlPiBlaW5nZWbDvGhydCAoc2VpdCAiCisjfiAiRHBrZyAxLjEzLjIpLCB2b3JoZXIgdGVuZGllcnRlbiBkaWUgSTxkZWJpYW4vcnVsZXM+LURhdGVpZW4gZGF6dSwgZGllICIKKyN+ICJXZXJ0ZSBkZXIgREVCX0hPU1RfR05VX0NQVS0gb2RlciBERUJfSE9TVF9HTlVfVFlQRS1WYXJpYWJsZW4genUgIgorI34gIsO8YmVycHLDvGZlbiwgZGllIGFiZXIgw4RuZGVydW5nZW4gdW50ZXJsYWdlbi4iCisKKyN+IG1zZ2lkICIiCisjfiAiU2NhbiBJPGZpbGU+IHRvIGZpbmQgc3VwcGxlbWVudGFyeSBvdmVycmlkZXMuIEVhY2ggbGluZSBjb250YWlucyAzIHNwYWNlICIKKyN+ICJzZXBhcmF0ZWQgZmllbGRzOiBwYWNrYWdlIG5hbWUsIGZpZWxkIG5hbWUgdG8gb3ZlcnJpZGUsIG5ldyBmaWVsZCB2YWx1ZS4iCisjfiBtc2dzdHIgIiIKKyN+ICJEdXJjaHN1Y2hlIEk8RGF0ZWk+IHVtIHp1c8OkdHpsaWNoZSBPdmVycmlkZXMgenUgZmluZGVuLiBKZWRlIFplaWxlICIKKyN+ICJlbnRow6RsdCBkcmVpIGR1cmNoIExlZXJ6ZWljaGVuIGdldHJlbm50ZSBGZWxkZXI6IFBha2V0bmFtZSwgenUgIgorI34gIsO8YmVyc2NocmVpYmVuZGVyIEZlbGRuYW1lIHVuZCBuZXVlciBGZWxkd2VydC4iCisKKyN+IG1zZ2lkICIiCisjfiAiQjxkcGtnPigxKSwgQjxkc2VsZWN0PigxKSwgQjxkZWItb3ZlcnJpZGU+KDUpLCBCPGRwa2ctc2NhbnNvdXJjZXM+KDEpLiIKKyN+IG1zZ3N0ciAiIgorI34gIkI8ZHBrZz4oMSksIEI8ZHNlbGVjdD4oMSksIEI8ZGViLW92ZXJyaWRlPig1KSwgQjxkcGtnLXNjYW5zb3VyY2VzPigxKS4iCisKKyN+IG1zZ2lkICJCPGRlYi1vdmVycmlkZT4oNSksIEI8ZHBrZy1zY2FucGFja2FnZXM+KDEpLiIKKyN+IG1zZ3N0ciAiQjxkZWItb3ZlcnJpZGU+KDUpLCBCPGRwa2ctc2NhbnBhY2thZ2VzPigxKS4iCisKKyN+IG1zZ2lkICIiCisjfiAiQjxkcGtnLXNvdXJjZT4gd2lsbCBidWlsZCB0aGUgc291cmNlIHBhY2thZ2Ugd2l0aCB0aGUgZmlyc3QgZm9ybWF0IHRoYXQgIgorI34gIndvcmtzIGZyb20gdGhpcyBvcmRlcmVkIGxpc3Q6IHRoZSBmb3JtYXQocykgaW5kaWNhdGVkIHdpdGggdGhlIEk8LS0iCisjfiAiZm9ybWF0PiBjb21tYW5kLWxpbmUgb3B0aW9uKHMpLCB0aGUgZm9ybWF0IGluZGljYXRlZCBpbiBCPGRlYmlhbi9zb3VyY2UvIgorI34gImZvcm1hdD4sIFwiMS4wXCIsIFwiMy4wIChuYXRpdmUpXCIuIFNlZSBiZWxvdyBmb3IgYW4gZXh0ZW5zaXZlICIKKyN+ICJkZXNjcmlwdGlvbiBvZiB2YXJpb3VzIHNvdXJjZSBwYWNrYWdlIGZvcm1hdHMuIgorI34gbXNnc3RyICIiCisjfiAiQjxkcGtnLXNvdXJjZT4gd2lyZCBkYXMgUXVlbGxwYWtldCBtaXQgZGVtIGVyc3RlbiBGb3JtYXQgYXVzIGRlciAiCisjfiAiZm9sZ2VuZGVuIGdlb3JkbmV0ZW4gTGlzdGUgYmF1ZW4sIGRhcyBmdW5rdGlvbmllcnQ6IGRlbiBGb3JtYXQoZW4pLCBkaWUgIgorI34gIm1pdCBkZW4gS29tbWFuZG96ZWlsZW5vcHRpb24oZW4pIEk8LS1mb3JtYXQ+IGFuZ2VnZWJlbiBzaW5kLCBkYXMgaW4gIgorI34gIkI8ZGViaWFuL3NvdXJjZS9mb3JtYXQ+IGJlemVpY2huZXRlIEZvcm1hdCwgwrsxLjDCqywgwrszLjAgKG5hdGl2ZSnCqy4gRGllICIKKyN+ICJ2ZXJzY2hpZWRlbmVuIFF1ZWxscGFrZXRmb3JtYXRlIHNpbmQgd2VpdGVyIHVudGVuIGF1c2bDvGhybGljaCBiZXNjaHJpZWJlbi4iCisKKyN+IG1zZ2lkICIiCisjfiAiQWxsIG9wdGlvbnMgY2FuIGJlIHNwZWNpZmllZCBib3RoIG9uIHRoZSBjb21tYW5kbGluZSBhbmQgaW4gdGhlICIKKyN+ICJCPGRzZWxlY3Q+IGNvbmZpZ3VyYXRpb24gZmlsZSBJPC9ldGMvZHBrZy9kc2VsZWN0LmNmZz4uIEVhY2ggbGluZSBpbiB0aGUgIgorI34gImNvbmZpZ3VyYXRpb24gZmlsZSBpcyBlaXRoZXIgYW4gb3B0aW9uIChleGFjdGx5IHRoZSBzYW1lIGFzIHRoZSAiCisjfiAiY29tbWFuZGxpbmUgb3B0aW9uIGJ1dCB3aXRob3V0IGxlYWRpbmcgZGFzaGVzKSBvciBhIGNvbW1lbnQgKGlmIGl0IHN0YXJ0cyAiCisjfiAid2l0aCBhIEI8Iz4pLiIKKyN+IG1zZ3N0ciAiIgorI34gIkFsbGUgT3B0aW9uZW4ga8O2bm5lbiBzb3dvaGwgYXVmIGRlciBLb21tYW5kb3plaWxlIGFscyBhdWNoIGluIGRlciAiCisjfiAiS29uZmlndXJhdGlvbnNkYXRlaSBJPC9ldGMvZHBrZy9kc2VsZWN0LmNmZz4gdm9uIEI8ZHNlbGVjdD4gYW5nZWdlYmVuICIKKyN+ICJ3ZXJkZW4uIEplZGUgWmVpbGUgaW4gZGVyIEtvbmZpZ3VyYXRpb25zZGF0ZWkgaXN0IGVudHdlZGVyIGVpbmUgT3B0aW9uICIKKyN+ICIoZXhha3QgaWRlbnRpc2NoIG1pdCBkZXIgS29tbWFuZG96ZWlsZW5vcHRpb24sIG51ciBvaG5lIGVpbmxlaXRlbmRlICIKKyN+ICJHZWRhbmtlbnN0cmljaGUpIG9kZXIgZWluIEtvbW1lbnRhciAoZmFsbHMgc2llIG1pdCBCPCM+IGJlZ2lubnQpLiIKKworI34gbXNnaWQgIkZvcmdldCBhYm91dCB1bmluc3RhbGxlZCB1bmF2YWlsYWJsZSBwYWNrYWdlcy4iCisjfiBtc2dzdHIgIiIKKyN+ICJWZXJnaXNzIEluZm9ybWF0aW9uZW4gw7xiZXIgbmljaHQgaW5zdGFsbGllcnRlLCBuaWNodCB2ZXJmw7xnYmFyZSBQYWtldGUuIgorCisjfiBtc2dpZCAiaW5zdGFsbC1pbmZvIgorI34gbXNnc3RyICJpbnN0YWxsLWluZm8iCisKKyN+IG1zZ2lkICJpbnN0YWxsLWluZm8gLSBjcmVhdGUgb3IgdXBkYXRlIGVudHJ5IGluIEluZm8gZGlyIGZpbGUiCisjfiBtc2dzdHIgIiIKKyN+ICJpbnN0YWxsLWluZm8gLSBFcnpldWdlIG9kZXIgYWt0dWFsaXNpZXJlIEVpbnRyw6RnZSBpbiBkZXIgSW5mby0iCisjfiAiVmVyemVpY2huaXNkYXRlaSIKKworI34gbXNnaWQgIiIKKyN+ICJCPGluc3RhbGwtaW5mbz4gW0I8LS12ZXJzaW9uPl0gW0I8LS1oZWxwPl0gW0I8LS1kZWJ1Zz5dIFtCPC0tIgorI34gIm1heHdpZHRoPT5JPG5ubj5dIFtCPC0tc2VjdGlvbiA+STxyZWdleHA+QjwgPkk8dGl0bGU+XSBbQjwtLSIKKyN+ICJpbmZvZGlyPT5JPHh4eD5dIFtCPC0tYWxpZ249Pkk8bm5uPl0gW0I8LS1xdWlldD5dIFtCPC0tbWVudWVudHJ5PT5JPHh4eD5dICIKKyN+ICJbQjwtLWRlc2NyaXB0aW9uPT5JPHh4eD5dIFtCPC0tcmVtb3ZlPnxCPC0tcmVtb3ZlLWV4YWN0bHk+XSBbQjwtLT5dICIKKyN+ICJJPGZpbGVuYW1lPiIKKyN+IG1zZ3N0ciAiIgorI34gIkI8aW5zdGFsbC1pbmZvPiBbQjwtLXZlcnNpb24+XSBbQjwtLWhlbHA+XSBbQjwtLWRlYnVnPl0gW0I8LS0iCisjfiAibWF4d2lkdGg9Pkk8bm5uPl0gW0I8LS1zZWN0aW9uID5JPFJlZ2V4cD5CPCA+STxUaXRlbD5dIFtCPC0tIgorI34gImluZm9kaXI9Pkk8eHh4Pl0gW0I8LS1hbGlnbj0+STxubm4+XSBbQjwtLXF1aWV0Pl0gW0I8LS1tZW51ZW50cnk9Pkk8eHh4Pl0gIgorI34gIltCPC0tZGVzY3JpcHRpb249Pkk8eHh4Pl0gW0I8LS1yZW1vdmU+fEI8LS1yZW1vdmUtZXhhY3RseT5dIFtCPC0tPl0gIgorI34gIkk8RGF0ZWluYW1lPiIKKworI34gbXNnaWQgIiIKKyN+ICJCPGluc3RhbGwtaW5mbz4gY3JlYXRlcywgdXBkYXRlcyBvciByZW1vdmVzIGVudHJpZXMgaW4gdGhlIEluZm8gQjxkaXI+ICIKKyN+ICJmaWxlLiBXaGVuIHVwZGF0aW5nIG9yIGNyZWF0aW5nIGVudHJpZXMsIGlmIG5vIGRlc2NyaXB0aW9uIGlzIHNwZWNpZmllZCAiCisjfiAib24gdGhlIGNvbW1hbmQgbGluZSBvciBpbiB0aGUgSW5mbyBmaWxlLCBpdCBhdHRlbXB0cyB0byBndWVzcyBhICIKKyN+ICJkZXNjcmlwdGlvbiBmcm9tIHRoZSBjb250ZW50cyBvZiB0aGUgZmlsZS4iCisjfiBtc2dzdHIgIiIKKyN+ICJCPGluc3RhbGwtaW5mbz4gZXJzdGVsbHQsIGFrdHVhbGlzaWVydCBvZGVyIGVudGZlcm50IEVpbnRyw6RnZSBpbiBkZXIgIgorI34gIkI8ZGlyPi1EYXRlaSB2b24gSW5mby4gQmVpbSBBa3R1YWxpc2llcmVuIG9kZXIgRWluZsO8Z2VuIHZvbiBFaW50csOkZ2VuICIKKyN+ICJ2ZXJzdWNodCBlcyBkaWUgQmVzY2hyZWlidW5nIHZvbSBJbmhhbHQgZGVyIERhdGVpIHp1IHJhdGVuLCBmYWxscyBrZWluZSAiCisjfiAiQmVzY2hyZWlidW5nIGF1ZiBkZXIgQmVmZWhsc3plaWxlIG9kZXIgaW4gZGVyIEluZm8tRGF0ZWkgYW5nZWdlYmVuIHdpcmQuIgorCisjfiBtc2dpZCAiIgorI34gIlNlZSB0aGUgZGVzY3JpcHRpb24gb2YgdGhlIEI8LS1zZWN0aW9uPiBvcHRpb24gZm9yIGRldGFpbHMgb2Ygd2hlcmUgdGhlICIKKyN+ICJlbnRyeSB3aWxsIGJlIHBsYWNlZCBhbmQgYSBkZXNjcmlwdGlvbiBvZiB0aGUgZXhwZWN0ZWQgZm9ybWF0IG9mIHRoZSAiCisjfiAiQjxkaXI+IGZpbGUuIgorI34gbXNnc3RyICIiCisjfiAiU2llaGUgZGllIEJlc2NocmVpYnVuZyBkZXIgT3B0aW9uIEI8LS1zZWN0aW9uPiB6dSBEZXRhaWxzIHdvIGRlciBFaW50cmFnICIKKyN+ICJwbGF0emllcnQgd2lyZCB1bmQgZWluZXIgQmVzY2hyZWlidW5nIGRlcyBlcndhcnRldGVuIEZvcm1hdHMgZGVyIERhdGVpICIKKyN+ICJCPGRpcj4uIgorCisjfiBtc2dpZCAiQjxbLS1dID5JPGZpbGVuYW1lPiIKKyN+IG1zZ3N0ciAiQjxbLS1dID5JPERhdGVpbmFtZT4iCisKKyN+IG1zZ2lkICIiCisjfiAiR2l2ZXMgdGhlIGZpbGVuYW1lIG9mIHRoZSBJbmZvIGZpbGUgd2hvc2UgbWVudSBlbnRyeSBpcyB0byBiZSBjcmVhdGVkLCAiCisjfiAidXBkYXRlZCBvciByZW1vdmVkLiBJZiBCPC0tcmVtb3ZlLWV4YWN0bHk+IGlzIHNwZWNpZmllZCwgdGhlbiBJPGZpbGVuYW1lPiAiCisjfiAic2hvdWxkIGJlIHRoZSBleGFjdCBlbnRyeSBuYW1lIHRvIGJlIHJlbW92ZWQgKGUuZy4gXCJlbWFjcy0yMC9lbWFjc1wiIG9yICIKKyN+ICJcImdjY1wiKSwgb3RoZXJ3aXNlIHRoZSBiYXNlbmFtZSBvZiB0aGlzIGZpbGVuYW1lIGlzIHVzZWQgYXMgdGhlIHJlZmVyZW50ICIKKyN+ICJvZiB0aGUgbWVudSBlbnRyeSB3aGljaCBpcyBjcmVhdGVkLCB1bmxlc3MgdGhlcmUncyBhbiBvdmVycmlkaW5nIFNUQVJULSIKKyN+ICJJTkZPLURJUiBlbnRyeSBpbnNpZGUgdGhlIGdpdmVuIGZpbGUuIFRoaXMgZmlsZSBtdXN0IHRoZXJlZm9yZSBleGlzdCAob3IgIgorI34gImJlIGFib3V0IHRvIGJlIGluc3RhbGxlZCwgb3IgaGF2ZSBwcmV2aW91c2x5IGV4aXN0ZWQgd2hlbiByZW1vdmluZyBhbiAiCisjfiAiZW50cnkpIGluIHRoZSBzYW1lIGRpcmVjdG9yeSBhcyB0aGUgQjxkaXI+IGZpbGUgKHNlZSB0aGUgQjwtLWluZm9kaXI+ICIKKyN+ICJvcHRpb24pLiIKKyN+IG1zZ3N0ciAiIgorI34gIkdpYnQgZGVuIERhdGVpbmFtZW4gZGVyIEluZm8tRGF0ZWkgYW4sIGRlcmVuIE1lbsO8ZWludHJhZyBlcnN0ZWxsdCwgIgorI34gImFrdHVhbGlzaWVydCBvZGVyIGVudGZlcm50IHdlcmRlbiBzb2xsLiBGYWxscyBCPC0tcmVtb3ZlLWV4YWN0bHk+ICIKKyN+ICJhbmdlZ2ViZW4gd2lyZCwgZGFubiBzb2xsdGUgSTxEYXRlaW5hbWU+IGRlciBleGFrdGUgRWludHJhZ3NuYW1lIHNlaW4sICIKKyN+ICJkZXIgZW50ZmVybnQgd2VyZGVuIHNvbGwgKHouQi4gwrtlbWFjcy0yMC9lbWFjc8KrIG9kZXIgwrtnY2PCqyksIGFuZGVybmZhbGxzICIKKyN+ICJ3aXJkIGRlciBCYXNpc25hbWUgZGVzIERhdGVpbmFtZW5zIGFscyBSZWZlcmVuemllcmVuZGVyIGRlcyB6dSAiCisjfiAiZXJzdGVsbGVuZGVuIE1lbsO8ZWludHJhZ3MgdmVyd2VuZGV0LCBlcyBzZWkgZGVubiwgZXMgZ2lidCBlaW5lbiAiCisjfiAiw7xiZXJzY2hyZWliZW5kZW4gU1RBUlQtSU5GTy1ESVItRWludHJhZyBpbm5lcmhhbGIgZGVyIMO8YmVyZ2ViZW5lbiBEYXRlaS4gIgorI34gIkRpZXNlIERhdGVpIG11c3MgZGFoZXIgaW0gZ2xlaWNoZW4gVmVyemVpY2huaXMgd2llIGRpZSBCPGRpcj4tRGF0ZWkgIgorI34gImV4aXN0aWVyZW4gKG9kZXIgZ2VyYWRlIGluc3RhbGxpZXJ0IHdlcmRlbiwgb2RlciBtdXNzIGZyw7xoZXIgZXhpc3RpZXJ0ICIKKyN+ICJoYWJlbiwgd2VubiBlaW4gRWludHJhZyBlbnRmZXJudCB3aXJkKSAobGVzZW4gU2llIGRpZSBJbmZvcm1hdGlvbmVuIHp1ICIKKyN+ICJkZXIgT3B0aW9uIEI8LS1pbmZvZGlyPikuIgorCisjfiBtc2dpZCAiIgorI34gIklmIEk8ZmlsZW5hbWU+IGVuZHMgaW4gQjwuZ3o+LCBpdCBpcyB0YWtlbiB0byByZWZlciB0byBhIGZpbGUgY29tcHJlc3NlZCAiCisjfiAid2l0aCBCPGd6aXA+OyBpZiBpdCBkb2Vzbid0IGV4aXN0LCBidXQgYSBjb3JyZXNwb25kaW5nIEk8ZmlsZW5hbWU+QjwuZ3o+ICIKKyN+ICJkb2VzLCB0aGUgbGF0dGVyIGlzIHVzZWQgaW5zdGVhZC4iCisjfiBtc2dzdHIgIiIKKyN+ICJGYWxscyBJPERhdGVpbmFtZT4gYXVmIEI8Lmd6PiBlbmRldCwgd2lyZCBlciBhbHMgVmVyd2VpcyBhdWYgZWluZSBtaXQgIgorI34gIkI8Z3ppcD4ga29tcHJpbWllcnRlIERhdGVpIGdlbm9tbWVuOyBmYWxscyBlciBuaWNodCBleGlzdGllcnQsIGFiZXIgZWluZSAiCisjfiAiZW50c3ByZWNoZW5kZSBJPERhdGVpbmFtZT5CPC5nej4gZXhpc3RpZXJ0LCB3aXJkIHN0YXR0ZGVzc2VuIGxldHp0ZXJlICIKKyN+ICJiZW51dHp0LiIKKworI34gbXNnaWQgIiIKKyN+ICJXaGVuIGFkZGluZyBvciB1cGRhdGluZyBlbnRyaWVzLCB0aGUgZmlsZSBtdXN0IGV4aXN0IGF0IHRoZSBwYXRoICIKKyN+ICJzcGVjaWZpZWQgKHBvc3NpYmx5IHdpdGggYW4gYWRkaXRpb25hbCBCPC5nej4gZXh0ZW5zaW9uKS4iCisjfiBtc2dzdHIgIiIKKyN+ICJCZWltIEhpbnp1ZsO8Z2VuIG9kZXIgQWt0dWFsaXNpZXJlbiB2b24gRWludHLDpGdlbiBtdXNzIGRpZSBEYXRlaSBhbiBkZW0gIgorI34gImFuZ2VnZWJlbmVuIFBmYWQgZXhpc3RpZXJlbiAobcO2Z2xpY2hlcndlaXNlIG1pdCBlaW5lciB6dXPDpHR6bGljaGVuIEI8Lmd6Pi0iCisjfiAiRW5kdW5nKS4iCisKKyN+IG1zZ2lkICJCPC0tcmVtb3ZlPiIKKyN+IG1zZ3N0ciAiQjwtLXJlbW92ZT4iCisKKyN+IG1zZ2lkICIiCisjfiAiU3BlY2lmaWVzIHRoYXQgdGhlIGVudHJ5IGZvciB0aGUgZmlsZSBJPGZpbGVuYW1lPiBpcyB0byBiZSByZW1vdmVkOyBieSAiCisjfiAiZGVmYXVsdCBlbnRyaWVzIGFyZSBjcmVhdGVkIG9yIHVwZGF0ZWQuIgorI34gbXNnc3RyICIiCisjfiAiU3BlemlmaXppZXJ0LCBkYXNzIGRlciBFaW50cmFnIGbDvHIgZGllIERhdGVpIEk8RGF0ZWluYW1lPiBlbnRmZXJudCB3ZXJkZW4gIgorI34gInNvbGw7IHN0YW5kYXJkbcOkw59pZyB3ZXJkZW4gRWludHLDpGdlIGVyc3RlbGx0IG9kZXIgYWt0dWFsaXNpZXJ0LiIKKworI34gbXNnaWQgIiIKKyN+ICJJZiB0aGUgcmVtb3ZhbCByZXN1bHRzIGluIGEgc2VjdGlvbiBiZWNvbWluZyBlbXB0eSwgdGhlIHNlY3Rpb24gaGVhZGluZyAiCisjfiAiKGFuZCB0aGUgc3BhcmUgYmxhbmsgbGluZSkgd2lsbCBiZSByZW1vdmVkIGFzIHdlbGwsIHVubGVzcyB0aGlzIGlzIHRoZSAiCisjfiAibGFzdCBzZWN0aW9uIGluIHRoZSBmaWxlIG9yIEI8LS1rZWVwLW9sZD4gaXMgc3BlY2lmaWVkLiBTZWUgdGhlIEI8LS0iCisjfiAic2VjdGlvbj4gb3B0aW9uIGZvciBkZXRhaWxzIGFib3V0IHRoZSBleHBlY3RlZCBmb3JtYXQgb2YgdGhlIEI8ZGlyPiBmaWxlLiIKKyN+IG1zZ3N0ciAiIgorI34gIkZhbGxzIGRpZSBFbnRmZXJudW5nIGRhenUgZsO8aHJ0LCBkYXNzIGVpbiBBYnNjaG5pdHQgbGVlciB3aXJkLCB3aXJkIGF1Y2ggIgorI34gImRpZSBBYnNjaG5pdHRzw7xiZXJzY2hyaWZ0ICh1bmQgZGllIMO8YmVyZmzDvHNzaWdlIExlZXJ6ZWlsZSkgZW50ZmVybnQsICIKKyN+ICJmYWxscyBkaWVzIG5pY2h0IGRlciBsZXR6dGUgQWJzY2huaXR0IGluIGRlciBEYXRlaSBpc3Qgb2RlciBCPC0ta2VlcC1vbGQ+ICIKKyN+ICJhbmdlZ2ViZW4gd2lyZC4gTGVzZW4gU2llIGhpZXJ6dSBhdWNoIMO8YmVyIGRpZSBCPC0tc2VjdGlvbj4tT3B0aW9uIGbDvHIgIgorI34gIkRldGFpbHMgw7xiZXIgZGFzIGVyd2FydGV0ZSBGb3JtYXQgZGVyIEI8ZGlyPi1EYXRlaS4iCisKKyN+IG1zZ2lkICIiCisjfiAiSWYgdGhlcmUgYXJlIHNldmVyYWwgc3VpdGFibGUgZW50cmllcyBpbiB0aGUgQjxkaXI+IGZpbGUsIG9ubHkgdGhvc2UgaW4gIgorI34gInRoZSBmaXJzdCBtYXRjaGluZyBjb250aWd1b3VzIGdyb3VwIHdpbGwgYmUgcmVtb3ZlZCBhbmQgdGhlIG90aGVycyAiCisjfiAic2lsZW50bHkgaWdub3JlZC4iCisjfiBtc2dzdHIgIiIKKyN+ICJGYWxscyBlcyBtZWhyZXJlIHBhc3NlbmRlIEVpbnRyw6RnZSBpbiBCPFZlcno+IGdpYnQsIHdlcmRlbiBudXIgZGllIGluIGRlciAiCisjfiAiZXJzdGVuIHBhc3NlbmRlbiB6dXNhbW1lbmjDpG5nZW5kZW4gR3J1cHBlIGVudGZlcm50LCBkaWUgYW5kZXJlbiB3ZXJkZW4gIgorI34gIm9obmUgUsO8Y2ttZWxkdW5nIGlnbm9yaWVydC4iCisKKyN+IG1zZ2lkICIiCisjfiAiSXQgaXMgbm90IGFuIGVycm9yIGZvciBubyBzdWl0YWJsZSBlbnRyeSB0byBiZSBmb3VuZCwgdGhvdWdoIEI8aW5zdGFsbC0iCisjfiAiaW5mbz4gd2lsbCBpc3N1ZSBhIHdhcm5pbmcgdW5sZXNzIHRoZSBCPC0tcXVpZXQ+IG9wdGlvbiB3YXMgc3BlY2lmaWVkLiIKKyN+IG1zZ3N0ciAiIgorI34gIkVzIGlzdCBrZWluIEZlaGxlciwgd2VubiBrZWluIHBhc3NlbmRlciBFaW50cmFnIGdlZnVuZGVuIHdpcmQsIGplZG9jaCAiCisjfiAiZ2lidCBCPGluc3RhbGwtaW5mbz4gZWluZSBXYXJudW5nIGF1cy4gRGllc2UgV2FybnVuZyBrYW5uIGR1cmNoIEFuZ2FiZSAiCisjfiAiZGVyIE9wdGlvbiBCPC0tcXVpZXQ+IHVudGVyZHLDvGNrdCB3ZXJkZW4uIgorCisjfiBtc2dpZCAiIgorI34gIldoZW4gQjwtLXJlbW92ZT4gaXMgc3BlY2lmaWVkIHRoZSBCPC0tbWF4d2lkdGg+LCBCPC0tYWxpZ24+IGFuZCBCPC0tIgorI34gImNhbGlnbj4gZm9ybWF0dGluZyBvcHRpb25zIGFyZSBzaWxlbnRseSBpZ25vcmVkLiIKKyN+IG1zZ3N0ciAiIgorI34gIldlbm4gQjwtLXJlbW92ZT4gYW5nZWdlYmVuIHdpcmQsIHdlcmRlbiBkaWUgRm9ybWF0aWVydW5nc29wdGlvbmVuIEI8LS0iCisjfiAibWF4d2lkdGg+LCBCPC0tYWxpZ24+IHVuZCBCPC0tY2FsaWduPiBvaG5lIFLDvGNrbWVsZHVuZyBpZ25vcmllcnQuIgorCisjfiBtc2dpZCAiQjwtLXJlbW92ZS1leGFjdGx5PiIKKyN+IG1zZ3N0ciAiQjwtLXJlbW92ZS1leGFjdGx5PiIKKworI34gbXNnaWQgIiIKKyN+ICJUaGlzIG9wdGlvbiBpcyBlc3NlbnRpYWxseSB0aGUgc2FtZSBhcyBCPC0tcmVtb3ZlPiBleGNlcHQgdGhhdCAiCisjfiAiSTxmaWxlbmFtZT4gaXMgdGFrZW4gYXMgdGhlIGV4YWN0IGVudHJ5IHRvIGJlIHJlbW92ZWQsIHJhdGhlciB0aGFuIGFzIHRoZSAiCisjfiAibmFtZSBvZiBhbiBleGlzdGluZyBmaWxlLiBUaGlzIGNhbiBiZSBpbXBvcnRhbnQgd2hlbiB0cnlpbmcgdG8gcmVtb3ZlICIKKyN+ICJlbnRyaWVzIHRoYXQgcmVmZXIgdG8gaW5mbyBmaWxlcyBpbiBzdWJkaXJlY3RvcmllcyAoZS5nLiBcImVtYWNzLTIwL2VtYWNzIgorI34gIlwiKSBiZWNhdXNlIEI8LS1yZW1vdmU+IHdpbGwgb3BlcmF0ZSBvbiB0aGUgYmFzZW5hbWUgb2YgdGhlIGdpdmVuICIKKyN+ICJJPGZpbGVuYW1lPiByYXRoZXIgdGhhbiB0aGUgZXhhY3QgbmFtZSBnaXZlbi4gKGkuZS4gIEI8LS1yZW1vdmU+ICIKKyN+ICJcImVtYWNzLTIwL2VtYWNzXCIgd291bGQgY2F1c2UgQjxpbnN0YWxsLWluZm8+IHRvIGxvb2sgZm9yIFwiZW1hY3NcIiwgbm90ICIKKyN+ICJcImVtYWNzLTIwL2VtYWNzXCIpLiIKKyN+IG1zZ3N0ciAiIgorI34gIkRpZXNlIE9wdGlvbiBpc3QgaW0gUHJpbnppcCBkaWUgZ2xlaWNoZSB3aWUgQjwtLXJlbW92ZT4sIGFiZ2VzZWhlbiBkYXZvbiwgIgorI34gImRhc3MgSTxEYXRlaW5hbWU+IGFscyBleGFrdGVyIEVpbnRyYWcgYW5nZXNlaGVuIHdpcmQsIGRlciBlbnRmZXJudCB3ZXJkZW4gIgorI34gInNvbGwsIHN0YXR0IGFscyBOYW1lIGVpbmVyIGV4aXN0aWVyZW5kZW4gRGF0ZWkuIERpZXMga2FubiB3aWNodGlnIHNlaW4sICIKKyN+ICJ3ZW5uIEVpbnRyw6RnZSBlbnRmZXJudCB3ZXJkZW4gc29sbGVuLCBkaWUgc2ljaCBhdWYgSW5mby1EYXRlaWVuIGluICIKKyN+ICJVbnRlcnZlcnplaWNobmlzc2VuIGJlemllaGVuICh6LkIuIMK7ZW1hY3MtMjAvZW1hY3PCqyksIGRhIEI8LS1yZW1vdmU+IG1pdCAiCisjfiAiZGVtIEJhc2lzbmFtZW4gKMK7YmFzZW5hbWXCqykgZGVzIMO8YmVyZ2ViZW5lbiBJPERhdGVpbmFtZT5ucywgc3RhdHQgZGVzICIKKyN+ICJleGFrdGVuIE5hbWVucywgYXJiZWl0ZW4gd2lyZCAoZC5oLiBCPC0tcmVtb3ZlPiDCu2VtYWNzLTIwL2VtYWNzwqsgd8O8cmRlICIKKyN+ICJkYXp1IGbDvGhyZW4sIGRhc3MgQjxpbnN0YWxsLWluZm8+IG5hY2ggwrtlbWFjc8KrIHVuZCBuaWNodCDCu2VtYWNzLTIwL2VtYWNzwqsgIgorI34gInN1Y2h0KS4iCisKKyN+IG1zZ2lkICJCPC0tc2VjdGlvbiA+STxyZWdleHAgdGl0bGU+IgorI34gbXNnc3RyICJCPC0tc2VjdGlvbiA+STxSZWdleHAgVGl0ZWw+IgorCisjfiBtc2dpZCAiIgorI34gIlNwZWNpZmllcyB0aGF0IGlmIGEgbmV3IGVudHJ5IGlzIHRvIGJlIG1hZGUsIGl0IHNob3VsZCBiZSBwbGFjZWQgaW4gYSAiCisjfiAic2VjdGlvbiBvZiB0aGUgQjxkaXI+IGZpbGUgd2hvc2UgdGl0bGUgbWF0Y2hlcyBJPHJlZ2V4cD4uICBJZiBubyBzdWNoICIKKyN+ICJzZWN0aW9uIGV4aXN0cywgb25lIHdpbGwgYmUgY3JlYXRlZCBhcyB0aGUgc2Vjb25kIHRvIGxhc3Qgc2VjdGlvbiBpbiB0aGUgIgorI34gImZpbGUgKHNlZSBiZWxvdykgd2l0aCB0aXRsZSBJPHRpdGxlPi4gIEEgc2VjdGlvbiBpcyBhIHBhcnQgb2YgdGhlIEI8ZGlyPiAiCisjfiAibWVudSBkZWxpbWl0ZWQgYnkgYmxhbmsgbGluZXM7IHRoZSBmaXJzdCBsaW5lIGlzIGFzc3VtZWQgdG8gYmUgdGhlIHRpdGxlLiIKKyN+IG1zZ3N0ciAiIgorI34gIkdpYnQgYW4sIGRhc3MsIGZhbGxzIGVpbiBuZXVlciBFaW50cmFnIGVyZm9sZ2VuIHNvbGwsIGRpZXNlciBpbiBlaW5lbSAiCisjfiAiQWJzY2huaXR0IGRlciBEYXRlaSBCPGRpcj4gcGxhdHppZXJ0IHdlcmRlbiBzb2xsLCBkZXNzZW4gVGl0ZWwgYXVmICIKKyN+ICJJPFJlZ2V4cD4gcGFzc3QuIEZhbGxzIGVpbiBzb2xjaGVyIEFic2Nobml0dCBuaWNodCBleGlzdGllcnQsIHdpcmQgZXIgYWxzICIKKyN+ICJkZXIgdm9ybGV0enRlIGluIGRlciBEYXRlaSAoc2llaGUgdW50ZW4pIG1pdCBkZW0gVGl0ZWwgSTxUaXRlbD4gZXJ6ZXVndC4gIgorI34gIkVpbiBBYnNjaG5pdHQgaXN0IGVpbiBkdXJjaCBMZWVyemVpbGVuIGJlZ3Jlbnp0ZXIgVGVpbCBkZXMgTWVuw7xzIEI8ZGlyPjsgIgorI34gInZvbiBkZXIgZXJzdGVuIFplaWxlIHdpcmQgYW5nZW5vbW1lbiwgZGFzcyBzaWUgZGVyIFRpdGVsIGlzdC4iCisKKyN+IG1zZ2lkICIiCisjfiAiSWYgYSBuZXcgZW50cnkgaXMgdG8gYmUgY3JlYXRlZCwgQjxpbnN0YWxsLWluZm8+IHdpbGwgYXR0ZW1wdCB0byBpbnNlcnQgIgorI34gIml0IHdpdGhpbiB0aGUgc2VjdGlvbiBpbiBhbHBoYWJldGljIG9yZGVyLiBJZiB0aGUgZW50cmllcyBpbiB0aGUgc2VjdGlvbiAiCisjfiAiYXJlbid0IGFscmVhZHkgc29ydGVkLCB0aGUgbmV3IGxvY2F0aW9uIHdpdGhpbiB0aGUgc2VjdGlvbiB3aWxsIGJlICIKKyN+ICJ1bnByZWRpY3RhYmxlLiBUaGUgb3JkZXIgb2YgZXhpc3RpbmcgZW50cmllcyB3aWxsIG5vdCBiZSBjaGFuZ2VkLiIKKyN+IG1zZ3N0ciAiIgorI34gIkZhbGxzIGVpbiBuZXVlciBFaW50cmFnIGVyc3RlbGx0IHdlcmRlbiBzb2xsLCB3aXJkIEI8aW5zdGFsbC1pbmZvPiAiCisjfiAidmVyc3VjaGVuLCBkaWVzZW4gaW5uZXJoYWxiIGRlcyBBYnNjaG5pdHRzIGluIGFscGhhYmV0aXNjaGVyIFJlaWhlbmZvbGdlICIKKyN+ICJlaW56dWbDvGdlbi4gRmFsbHMgZGllIEVpbnRyw6RnZSBub2NoIG5pY2h0IGFscGhhYmV0aXNjaCBzb3J0aWVydCBzaW5kLCAiCisjfiAia2FubiBkZXIgUGxhdHogaW5uZXJoYWxiIGRlcyBBYnNjaG5pdHRzIG5pY2h0IHZvcmhlcmdlc2FndCB3ZXJkZW4uIERpZSAiCisjfiAiUmVpaGVuZm9sZ2UgZGVyIGV4aXN0aWVyZW5kZW4gRWludHLDpGdlIHdpcmQgbmljaHQgZ2XDpG5kZXJ0LiIKKworI34gbXNnaWQgIiIKKyN+ICJJZiB0aGUgQjwtLXNlY3Rpb24+IG9wdGlvbiBpcyBub3Qgc3BlY2lmaWVkLCBCPGluc3RhbGwtaW5mbz4gd2lsbCBsb29rICIKKyN+ICJmb3IgYSB0aXRsZSBpbiB0aGUgSW5mbyBmaWxlIGl0c2VsZiBieSBsb29raW5nIGZvciBhbiBlbnRyeSBvZiB0aGUgZm9ybSIKKyN+IG1zZ3N0ciAiIgorI34gIkZhbGxzIGRpZSBPcHRpb24gQjwtLXNlY3Rpb24+IG5pY2h0IGFuZ2VnZWJlbiBpc3QsIHdpcmQgQjxpbnN0YWxsLWluZm8+ICIKKyN+ICJuYWNoIGVpbmVtIFRpdGVsIGluIGRlciBJbmZvLURhdGVpIHNlbGJzdCBzdWNoZW4sIGluZGVtIGVzIG5hY2ggZWluZW0gIgorI34gIkVpbnRyYWcgZGVyIGZvbGdlbmRlbiBGb3JtIHNjaGF1dDoiCisKKyN+IG1zZ2lkICJCPElORk8tRElSLVNFQ1RJT04+STwgdGl0bGU+IgorI34gbXNnc3RyICJCPElORk8tRElSLVNFQ1RJT04+STwgVGl0ZWw+IgorCisjfiBtc2dpZCAiIgorI34gIklmIG5vIHNlY3Rpb24gdGl0bGUgaXMgZm91bmQsIHRoZSBkZWZhdWx0IGlzIHRvIGFwcGVuZCBuZXcgZW50cmllcyB0byB0aGUgIgorI34gImVuZCBvZiB0aGUgZmlsZS4gVGhlIGxhc3Qgc2VjdGlvbiAoZXZlbiBpZiBpdCBvbmx5IGNvbnNpc3RzIG9mIHRoZSB0aXRsZSAiCisjfiAibGluZSkgc2hvdWxkIGFsd2F5cyBleGlzdCB0byBlbnN1cmUgdGhhdCBuZXcgc2VjdGlvbnMgYXJlIGNyZWF0ZWQgaW4gdGhlICIKKyN+ICJyaWdodCBwbGFjZS4gVGhlIGZpbmFsIHNlY3Rpb24gc2hvdWxkIGJlIHRpdGxlZCB0byByZWZsZWN0IHRoZSBmYWN0IHRoYXQgIgorI34gIkluZm8gZmlsZXMgd2l0aCBubyBiZXR0ZXIgc3BlY2lmaWVkIGxvY2F0aW9uIGFyZSBhcHBlbmRlZCB0byBpdC4iCisjfiBtc2dzdHIgIiIKKyN+ICJGYWxscyBrZWluIEFic2Nobml0dHN0aXRlbCBnZWZ1bmRlbiB3aXJkLCBpc3QgZGllIFZvcmVpbnN0ZWxsdW5nLCBuZXVlICIKKyN+ICJFaW50csOkZ2UgYW4gZGFzIEVuZGUgZGVyIERhdGVpIGFuenVow6RuZ2VuLiBEZXIgbGV0enRlIEFic2Nobml0dCAoc2VsYnN0ICIKKyN+ICJmYWxscyBkaWVzZXIgbnVyIGF1cyBkZXIgVGl0ZWx6ZWlsZSBiZXN0ZWh0KSBzb2xsdGUgaW1tZXIgZXhpc3RpZXJlbiwgdW0gIgorI34gInNpY2hlcnp1c3RlbGxlbiwgZGFzcyBuZXVlIEFic2Nobml0dGUgYW0gcmljaHRpZ2VuIE9ydCBlcnN0ZWxsdCB3ZXJkZW4uICIKKyN+ICJEZXIgbGV0enRlIEFic2Nobml0dCBzb2xsdGUgc28gbWl0IGVpbmVtIFRpdGVsIGJlbmFubnQgd2VyZGVuLCBkYXNzIGRpZSAiCisjfiAiVGF0c2FjaGUgYXVzZ2VkcsO8Y2t0IHdpcmQsIGRhc3MgSW5mby1EYXRlaWVuIG9obmUgYmVzc2VyZW4gT3J0IGhpZXIgIgorI34gImFuZ2Vow6RuZ3Qgd2VyZGVuLiIKKworI34gbXNnaWQgIiIKKyN+ICJJZiB0aGVyZSBpcyBhbHJlYWR5IGFuIGVudHJ5IGZvciB0aGUgSW5mbyBmaWxlIGJlaW5nIGluc3RhbGxlZCwgaXQgaXMgIgorI34gInJlcGxhY2VkIGluIHNpdHUgd2l0aCB0aGUgbmV3IGVudHJ5LiIKKyN+IG1zZ3N0ciAiIgorI34gIkZhbGxzIGVzIGJlcmVpdHMgZWluZW4gRWludHJhZyBmw7xyIGRpZSB6dSBpbnN0YWxsaWVyZW5kZSBJbmZvZGF0ZWkgZ2lidCwgIgorI34gIndpcmQgZGllc2VyIGluIHNpdHUgZHVyY2ggZGVuIG5ldWVuIEVpbnRyYWcgZXJzZXR6dC4iCisKKyN+IG1zZ2lkICIiCisjfiAiSWYgYSBzZWN0aW9uIGlzIHNwZWNpZmllZCB3aGVuIHJlbW92aW5nIGFuIGVudHJ5LCB0aGUgc2VjdGlvbiBpcyBpZ25vcmVkICIKKyN+ICJhbmQgYSB3YXJuaW5nIGlzIGlzc3VlZC4iCisjfiBtc2dzdHIgIiIKKyN+ICJGYWxscyBiZWltIEVudGZlcm5lbiBlaW5lcyBFaW50cmFncyBlaW4gQWJzY2huaXR0IGFuZ2VnZWJlbiB3aXJkLCB3aXJkICIKKyN+ICJkZXIgQWJzY2huaXR0IGlnbm9yaWVydCB1bmQgZWluZSBXYXJudW5nIGF1c2dlZ2ViZW4uIgorCisjfiBtc2dpZCAiIgorI34gIklmIGEgc2VjdGlvbiBpcyByZXF1ZXN0ZWQgd2hlbiBhZGRpbmcgYW4gZW50cnksIGJ1dCB0aGUgZmlsZSBjb250YWlucyBubyAiCisjfiAic2VjdGlvbiBoZWFkaW5ncyBhdCBhbGwsIHRoZW4gQjxpbnN0YWxsLWluZm8+IHdpbGwgY3JlYXRlIGJvdGggdGhlICIKKyN+ICJyZXF1ZXN0ZWQgc2VjdGlvbiBhbmQgYSBNaXNjZWxsYW5lb3VzIHNlY3Rpb24gYXQgdGhlIGVuZCBvZiB0aGUgZmlsZS4iCisjfiBtc2dzdHIgIiIKKyN+ICJGYWxscyBiZWltIEhpbnp1ZsO8Z2VuIGVpbmVzIEVpbnRyYWdzIGVpbiBBYnNjaG5pdHQgYW5nZWZvcmRlcnQgd2lyZCwgYWJlciAiCisjfiAiZGllIERhdGVpIMO8YmVyaGF1cHQga2VpbmUgQWJzY2huaXR0c8O8YmVyc2NocmlmdGVuIGVudGjDpGx0LCBlcnpldWd0ICIKKyN+ICJCPGluc3RhbGwtaW5mbz4gc293b2hsIGRlbiBhbmdlZm9yZGVydGVuIGFscyBhdWNoIGVpbmVuIEFic2Nobml0dCBmw7xyICIKKyN+ICJWZXJzY2hpZWRlbmVzIGFtIEVuZGUgZGVyIERhdGVpLiIKKworI34gbXNnaWQgIkI8LS1pbmZvZGlyPT5JPGluZm9kaXI+IgorI34gbXNnc3RyICJCPC0taW5mb2Rpcj0+STxJbmZvdmVyej4iCisKKyN+IG1zZ2lkICIiCisjfiAiU3BlY2lmaWVzIHRoYXQgdGhlIEI8ZGlyPiBmaWxlIGlzLCBhbmQgdGhlIGluc3RhbGxlZCBjb3B5IG9mIHRoZSBuZXcgSW5mbyAiCisjfiAiZmlsZSB3YXMsIGlzIG9yIHdpbGwgYmUgbG9jYXRlZCBpbiBJPGluZm9kaXI+LiAgVGhlIGRlZmF1bHQgaXMgQjwvdXNyLyIKKyN+ICJzaGFyZS9pbmZvLz4uIgorI34gbXNnc3RyICIiCisjfiAiR2lidCBhbiwgZGFzIGRpZSBEYXRlaSBCPGRpcj4gc2ljaCBpbiBJPEluZm92ZXJ6PiBiZWZpbmRldCBvZGVyIGJlZmluZGVuICIKKyN+ICJ3aXJkLCB3byBhdWNoIGRpZSBpbnN0YWxsaWVydGUgS29waWUgZGVyIG5ldWVuIEluZm9kYXRlaSB3YXIuIERlciAiCisjfiAiU3RhbmRhcmR3ZXJ0IGlzdCBCPC91c3Ivc2hhcmUvaW5mby8+LiIKKworI34gbXNnaWQgIkI8LS1hbGlnbj0+STxubm4+QjwgW2RlcHJlY2F0ZWRdPiIKKyN+IG1zZ3N0ciAiQjwtLWFsaWduPT5JPG5ubj4gQjwgW3ZlcmFsdGV0XT4iCisKKyN+IG1zZ2lkICIiCisjfiAiU3BlY2lmaWVzIHRoYXQgdGhlIGZpcnN0IGxpbmUgb2YgdGhlIGRlc2NyaXB0aW9uIHNob3VsZCBiZSBpbmRlbnRlZCBhdCAiCisjfiAibGVhc3QgSTxubm4+IGNoYXJhY3RlcnM7IGV4dHJhIHNwYWNlcyB3aWxsIGJlIGFkZGVkIGFzIHJlcXVpcmVkLiBJZiAiCisjfiAibmVjZXNzYXJ5IGJlY2F1c2Ugb2YgdGhlIGxlbmd0aCBvZiB0aGUgQjxkaXI+IG1lbnUgZW50cnkgZGV0YWlscywgaXQgbWF5ICIKKyN+ICJiZSBvZmZzZXQgbW9yZS4gVGhlIGRlZmF1bHQgaXMgMjcuIgorI34gbXNnc3RyICIiCisjfiAiQmVzdGltbXQsIGRhc3MgZGllIGVyc3RlIFplaWxlIGRlciBCZXNjaHJlaWJ1bmcgbWluZGVzdGVucyBJPG5ubj4tWmVpY2hlbiAiCisjfiAid2VpdCBlaW5nZXpvZ2VuIHdlcmRlbiBzb2xsOyB6dXPDpHR6bGljaGUgWmVpY2hlbiB3ZXJkZW4gbmFjaCBCZWRhcmYgIgorI34gImhpbnp1Z2Vmw7xndC4gRmFsbHMgbm90d2VuZGlnIGF1ZmdydW5kIGRlciBMw6RuZ2UgZGVzIERldGFpbHMgZGVzIEI8ZGlyPi0iCisjfiAiTWVuw7xlaW50cmFnZXMsIGvDtm5udGUgZGVyIEF1c2dsZWljaCBncsO2w59lciBzZWluLiBEZXIgU3RhbmRhcmR3ZXJ0IGJldHLDpGd0ICIKKyN+ICIyNy4iCisKKyN+IG1zZ2lkICJCPC0tY2FsaWduPT5JPG5ubj5CPCBbZGVwcmVjYXRlZF0+IgorI34gbXNnc3RyICJCPC0tY2FsaWduPT5JPG5ubj5CPCBbdmVyYWx0ZXRdPiIKKworI34gbXNnaWQgIiIKKyN+ICJTcGVjaWZpZXMgdGhhdCB0aGUgc2Vjb25kIGFuZCBzdWJzZXF1ZW50IGxpbmVzIG9mIHRoZSBkZXNjcmlwdGlvbiBzaG91bGQgIgorI34gImJlIGluZGVudGVkIGF0IGxlYXN0IEk8bm5uPiBjaGFyYWN0ZXJzLiBUaGUgZGVmYXVsdCBpcyAyOS4iCisjfiBtc2dzdHIgIiIKKyN+ICJHaWJ0IGFuLCBkYXNzIGRpZSB6d2VpdGUgdW5kIGZvbGdlbmRlIFplaWxlbiBkZXIgQmVzY2hyZWlidW5nIG1pbmRlc3RlbnMgIgorI34gInVtIEk8bm5uPi1aZWljaGVuIGVpbmdlcsO8Y2t0IHdlcmRlbiBzb2xsZW4uIERlciBTdGFuZGFyZHdlcnQgYmV0csOkZ3QgMjkuIgorCisjfiBtc2dpZCAiQjwtLW1heHdpZHRoPT5JPG5ubj5CPCBbZGVwcmVjYXRlZF0+IgorI34gbXNnc3RyICJCPC0tbWF4d2lkdGg9Pkk8bm5uPkI8IFt2ZXJhbHRldF0+IgorCisjfiBtc2dpZCAiIgorI34gIlNwZWNpZmllcyB0aGF0IHRoZSBtYXhpbXVtIHdpZHRoIGZvciB0aGUgSW5mbyBmaWxlIGlzIEk8bm5uPi4gIFRoaXMgaXMgIgorI34gInVzZWQgd2hlbiB3b3JkLXdyYXBwaW5nIHRoZSBkZXNjcmlwdGl2ZSB0ZXh0LiAgVGhlIGRlZmF1bHQgaXMgNzkuIgorI34gbXNnc3RyICIiCisjfiAiU3BlemlmaXppZXJ0LCBkYXNzIGRpZSBtYXhpbWFsZSBCcmVpdGUgZsO8ciBkaWUgSW5mby1EYXRlaSBJPG5ubj4gYmV0csOkZ3QuICIKKyN+ICJEaWVzIHdpcmQgdmVyd2VuZGV0LCBmYWxscyBkaWUgQmVzY2hyZWlidW5nIHVtZ2Vicm9jaGVuIHdlcmRlbiBtdXNzLiBEZXIgIgorI34gIlN0YW5kYXJkd2VydCBpcyA3OS4iCisKKyN+IG1zZ2lkICIiCisjfiAiUHJldmVudHMgdGhlIHVzdWFsIGRpc3BsYXkgb2YgdGhlIG5ldyBtZW51IGVudHJ5IGp1c3QgYmVmb3JlIGl0IGlzICIKKyN+ICJpbnNlcnRlZCBhbmQgb2YgdGhlIG1lc3NhZ2VzIGFubm91bmNpbmcgdGhlIHJlcGxhY2VtZW50IGFuZCByZW1vdmFsIG9mICIKKyN+ICJleGlzdGluZyBlbnRyaWVzIGFuZCB0aGUgY3JlYXRpb24gYW5kIGRlbGV0aW9uIG9mIHNlY3Rpb25zLiIKKyN+IG1zZ3N0ciAiIgorI34gIlVudGVyZHLDvGNrdCBkaWUgZ2V3w7ZobmxpY2hlIEFuemVpZ2UgZGVzIG5ldWVuIE1lbsO8ZWludHJhZ3MgYmV2b3IgZXIgIgorI34gImVpbmdlZsO8Z3Qgd2lyZCB1bmQgdm9uIE5hY2hyaWNodGVuLCBkaWUgZGFzIEVyc2V0emVuIHVuZCBFbnRmZXJuZW4gIgorI34gImV4aXN0aWVyZW5kZXIgRWludHLDpGdlIHVuZCBkYXMgRXJ6ZXVnZW4gdW5kIEzDtnNjaGVuIHZvbiBBYnNjaG5pdHRlbiAiCisjfiAiYW5rw7xuZGlnZW4uIgorCisjfiBtc2dpZCAiQ2F1c2VzIEI8aW5zdGFsbC1pbmZvPiB0byBkaXNwbGF5IGl0cyB1c2FnZSBpbmZvcm1hdGlvbiBhbmQgZXhpdC4iCisjfiBtc2dzdHIgIiIKKyN+ICJCcmluZ3QgQjxpbnN0YWxsLWluZm8+IGRhenUsIHNlaW5lbiBHZWJyYXVjaHNoaW53ZWlzIGF1c3p1Z2ViZW4gdW5kIHNpY2ggIgorI34gInp1IGJlZW5kZW4uIgorCisjfiBtc2dpZCAiIgorI34gIkNhdXNlcyBCPGluc3RhbGwtaW5mbz4gdG8gZGlzcGxheSBpdHMgdmVyc2lvbiBhbmQgY29weXJpZ2h0IGluZm9ybWF0aW9uICIKKyN+ICJhbmQgZXhpdC4iCisjfiBtc2dzdHIgIiIKKyN+ICJCcmluZ3QgQjxpbnN0YWxsLWluZm8+IGRhenUsIHNlaW5lIFZlcnNpb24gdW5kIENvcHlyaWdodGluZm9ybWF0aW9uZW4gIgorI34gImF1c3p1Z2ViZW4gdW5kIHNpY2ggenUgYmVlbmRlbi4iCisKKyN+IG1zZ2lkICIiCisjfiAiU3BlY2lmaWVzIHRoYXQgdGhlIGRlc2NyaXB0aW9uIHRvIHVzZSBhZnRlciB0aGUgbWVudSBlbnRyeSBpbiBuZXcgb3IgIgorI34gInVwZGF0ZWQgZW50cmllcyBiZSBJPHh4eD4uICBUaGUgZGVmYXVsdCBpcyB0byB1c2UgdGhlIHRoZSB2YWx1ZSBzcGVjaWZpZWQgIgorI34gImluIHRoZSBJbmZvIGZpbGUgaXRzZWxmOyB0aGlzIGlzIGZvdW5kIGJ5IHNlYXJjaGluZyBmb3IgYSBzZWN0aW9uIG9mIHRoZSAiCisjfiAiZm9ybSIKKyN+IG1zZ3N0ciAiIgorI34gIkdpYnQgZGllIG5hY2ggZGVtIE1lbsO8LUVpbnRyYWcgaW4gbmV1ZW4gb2RlciBha3R1YWxpc2llcnRlbiBFaW50csOkZ2VuIHp1ICIKKyN+ICJiZW51dHplbmRlIEJlc2NocmVpYnVuZyBJPHh4eD4gYW4uIERpZSBWb3JlaW5zdGVsbHVuZyBpc3QgZGVuIGluIGRlciAiCisjfiAiSW5mb2RhdGVpIHNlbGJzdCBhbmdlZ2ViZW5lbiBXZXJ0IHp1IGJlbnV0emVuOyBkaWVzZXIgd2lyZCBnZWZ1bmRlbiwgIgorI34gImluZGVtIG5hY2ggZWluZW0gQWJzY2huaXR0IGRlciBmb2xnZW5kZW4gRm9ybSBnZXN1Y2h0IHdpcmQ6IgorCisjfiBtc2dpZCAiQjxTVEFSVC1JTkZPLURJUi1FTlRSWT4iCisjfiBtc2dzdHIgIkI8U1RBUlQtSU5GTy1ESVItRU5UUlk+IgorCisjfiBtc2dpZCAiQjwqIEF1dG8tUEdQOiAoYXV0by1wZ3ApLiBQR1AgdW5kZXIgR05VIEVtYWNzLj4iCisjfiBtc2dzdHIgIkI8KiBBdXRvLVBHUDogKGF1dG8tcGdwKS4gUEdQIHVuZGVyIEdOVSBFbWFjcy4+IgorCisjfiBtc2dpZCAiQjxFTkQtSU5GTy1ESVItRU5UUlk+IgorI34gbXNnc3RyICJCPEVORC1JTkZPLURJUi1FTlRSWT4iCisKKyN+IG1zZ2lkICIiCisjfiAiSWYgdGhlIGVudHJ5IGZvdW5kIGluIHRoZSBJbmZvIGZpbGUgaXRzZWxmIGV4dGVuZHMgYWNyb3NzIHNldmVyYWwgbGluZXMsICIKKyN+ICJlYWNoIGdpdmluZyBhIG1lbnUgZW50cnksIHRoZSB0ZXh0IGZvdW5kIGluIHRoZSBmaWxlIGlzIHVzZWQgdmVyYmF0aW0uIEluICIKKyN+ICJ0aGlzIGNhc2UsIHRoZSBhbHBoYWJldGljIG9yZGVyaW5nIHNjaGVtZSBpcyB0dXJuZWQgb2ZmLCBhbmQgdGhlIGVudHJpZXMgIgorI34gImFyZSBpbnNlcnRlZCBhdCB0aGUgdG9wIG9mIHNlY3Rpb24gaW4gcXVlc3Rpb24uIEluIHRoaXMgY2FzZSwgdGhlIEI8LS0iCisjfiAibWVudWVudHJ5PiwgQjwtLW1heHdpZHRoPiwgQjwtLWFsaWduPiwgQjwtLWNhbGlnbj4gYW5kIEI8LS1tZW51ZW50cnk+ICIKKyN+ICJvcHRpb25zIGFyZSBpZ25vcmVkLiIKKyN+IG1zZ3N0ciAiIgorI34gIkZhbGxzIGRlciBFaW50cmFnLCBkZXIgaW4gZGVyIEluZm8tRGF0ZWkgc2VsYnN0IGdlZnVuZGVuIHdpcmQsIHNpY2ggw7xiZXIgIgorI34gIm1laHJlcmUgWmVpbGVuIGF1c2RlaG50LCB3b2JlaSBqZWRlIFplaWxlIGVpbmVuIE1lbsO8ZWludHJhZyBhbmdpYnQsIHdpcmQgIgorI34gImRlciBpbiBkZXIgRGF0ZWkgZ2VmdW5kZW5lIFRleHQgd8O2cnRsaWNoIMO8YmVybm9tbWVuLiBJbiBkaWVzZW0gRmFsbCB3aXJkICIKKyN+ICJkYXMgYWxwaGFiZXRpc2NoZSBTb3J0aWVyc2NoZW1hIGFiZ2VzY2hhbHRldCB1bmQgZGllIEVpbnRyw6RnZSB3ZXJkZW4gYW0gIgorI34gIkFuZmFuZyBkZXMgaW4gRnJhZ2Uga29tbWVuZGVuIEFic2Nobml0dHMgZWluZ2Vmw7xndC4gSW4gZGllc2VtIEZhbGwgd2VyZGVuICIKKyN+ICJkaWUgT3B0aW9uZW4gQjwtLW1lbnVlbnRyeT4sIEI8LS1tYXh3aWR0aD4sIEI8LS1hbGlnbj4sIEI8LS1jYWxpZ24+IHVuZCAiCisjfiAiQjwtLW1lbnVlbnRyeT4gaWdub3JpZXJ0LiIKKworI34gbXNnaWQgIiIKKyN+ICJJZiB0aGVyZSBpcyBubyBCPGRpcj4gZW50cnkgaW4gdGhlIGZpbGUsIHRoZSBwcm9ncmFtIHdpbGwgdHJ5IHRvIGZpbmQgYSAiCisjfiAicGFyYWdyYXBoIGVhcmx5IGluIHRoZSBmaWxlIHN0YXJ0aW5nIEI8dGhpcyBmaWxlIGRvY3VtZW50cz4uICBJdCB3aWxsICIKKyN+ICJjYXBpdGFsaXNlIHRoZSBmaXJzdCBjaGFyYWN0ZXIgb2YgdGhlIHJlbWFpbmRlciwgYW5kIHVzZSB0aGF0LiIKKyN+IG1zZ3N0ciAiIgorI34gIkZhbGxzIGVzIGluIGRlciBEYXRlaSBrZWluZW4gQjxkaXI+LUVpbnRyYWcgZ2lidCwgdmVyc3VjaHQgZGFzIFByb2dyYW1tICIKKyN+ICJpbSBBbmZhbmdzYmVyZWljaCBkZXIgRGF0ZWkgZWluZW4gQWJzYXR6IHp1IGZpbmRlbiwgZGVyIG1pdCBCPHRoaXMgZmlsZSAiCisjfiAiZG9jdW1lbnRzPiBiZWdpbm50LiBFcyBtYWNodCBhdXMgZGVtIGVyc3RlbiBaZWljaGVuIGRlcyBGb2xnZW5kZW4gZWluZW4gIgorI34gIkdyb8OfYnVjaHN0YWJlbiB1bmQgdmVyd2VuZGV0IGRpZXNlcy4iCisKKyN+IG1zZ2lkICJJdCBpcyBhbiBlcnJvciBmb3Igbm9uZSBvZiB0aGVzZSBtZXRob2RzIHRvIHlpZWxkIGEgZGVzY3JpcHRpb24uIgorI34gbXNnc3RyICIiCisjfiAiRXMgaXN0IGVpbiBGZWhsZXIsIHdlbm4ga2VpbmUgZGllc2VyIE1ldGhvZGVuIGVpbmUgQmVzY2hyZWlidW5nIGVyZ2lidC4iCisKKyN+IG1zZ2lkICIiCisjfiAiSWYgYSBkZXNjcmlwdGlvbiBhcmd1bWVudCBpcyBnaXZlbiB3aGVuIEI8LS1yZW1vdmU+IGlzIHNwZWNpZmllZCwgaXQgaXMgIgorI34gImlnbm9yZWQgYW5kIGEgd2FybmluZyBpcyBpc3N1ZWQuIgorI34gbXNnc3RyICIiCisjfiAiRmFsbHMgZWluZSBCZXNjaHJlaWJ1bmdzLUFyZ3VtZW50IHp1c2FtbWVuIG1pdCBCPC0tcmVtb3ZlPiBhbmdlZ2ViZW4gaXN0LCAiCisjfiAid2lyZCBkaWVzZXMgaWdub3JpZXJ0IHVuZCBlaW5lIFdhcm51bmcgYXVzZ2VnZWJlbi4iCisKKyN+IG1zZ2lkICJCPC0tbWVudWVudHJ5PT5JPHh4eD4iCisjfiBtc2dzdHIgIkI8LS1tZW51ZW50cnk9Pkk8eHh4PiIKKworI34gbXNnaWQgIiIKKyN+ICJTcGVjaWZpZXMgdGhhdCB0aGUgZW50cnkgaW4gdGhlIG1lbnUgc2hvdWxkIGJlIEk8eHh4Pi4gIFRoZSBkZWZhdWx0IGlzIHRvICIKKyN+ICJ1c2UgdGhlIHRoZSB2YWx1ZSBzcGVjaWZpZWQgaW4gdGhlIEluZm8gZmlsZSBpdHNlbGYuICBJZiB0aGlzIGlzIG5vdCAiCisjfiAicHJlc2VudCwgdGhlIGJhc2VuYW1lIG9mIHRoZSBJbmZvIGZpbGUgaXMgdXNlZCAoYW55IEI8LmluZm8gPmlzIGRlbGV0ZWQsICIKKyN+ICJhbmQgdGhlIGVudHJ5IGlzIG1hZGUgbWl4ZWQgY2FzZSkuICBTZWUgYWJvdmUgZm9yIGRldGFpbHMgb2YgdGhlIGZvcm1hdCAiCisjfiAiZXhwZWN0ZWQgZm9yIHRoZSBtZW51IGVudHJ5IGluIHRoZSBJbmZvIGZpbGUuIgorI34gbXNnc3RyICIiCisjfiAiR2lidCBhbiwgZGFzcyBkZXIgRWludHJhZyBpbSBNZW7DvCBJPHh4eD4gc2VpbiBzb2xsLiBEaWUgVm9yZWluc3RlbGx1bmcgIgorI34gImlzdCwgZGVuIGluIGRlciBJbmZvLURhdGVpIHNlbGJzdCBhbmdlZ2ViZW5lbiBXZXJ0IHp1IGJlbnV0emVuLiBGYWxscyAiCisjfiAiZGllc2VyIG5pY2h0IHZvcmhhbmRlbiBpc3QsIHdpcmQgZGVyIEJhc2lzbmFtZSBkZXIgSW5mby1EYXRlaSBiZW51dHp0ICIKKyN+ICIoamVnbGljaGVzIEI8LmluZm8+IHdpcmQgZ2Vsw7ZzY2h0LCB1bmQgZGVyIEVpbnRyYWcgd2lyZCBpbiBnZW1pc2NodGUgR3Jvw58tIgorI34gIktsZWluLVNjaHJlaWJ1bmcgw7xiZXJmw7xocnQpLiBGw7xyIERldGFpbHMgw7xiZXIgZGFzIGVyd2FydGV0ZSBGb3JtYXQgZGVzICIKKyN+ICJNZW7DvGVpbnRyYWdzIGluIGRlciBJbmZvLURhdGVpIHNpZWhlIG9iZW4uIgorCisjfiBtc2dpZCAiIgorI34gIldoZW4gcmVtb3ZpbmcgZW50cmllcywgdGhlIHZhbHVlIG9mIHRoZSBCPC0tbWVudWVudHJ5PiBvcHRpb24gbXVzdCBtYXRjaCAiCisjfiAidGhlIGFjdHVhbCBtZW51IGVudHJ5IGZpZWxkIGluIHRoZSBtZW51IGl0ZW0gdG8gYmUgcmVtb3ZlZCAoY2FzZSBub3QgIgorI34gInNpZ25pZmljYW50KS4gSWYgQjwtLW1lbnVlbnRyeT4gaXMgb21pdHRlZCwgbm8gY2hlY2sgb24gdGhlIG1lbnUgZW50cnkgaXMgIgorI34gImRvbmUuIgorI34gbXNnc3RyICIiCisjfiAiQmVpbSBFbnRmZXJuZW4gdm9uIEVpbnRyw6RnZW4gbXVzcyBkaWUgT3B0aW9uIEI8LS1tZW51ZW50cnk+IGF1ZiBkYXMgIgorI34gInRhdHPDpGNobGljaGUgTWVuw7xlaW50cmFnc2ZlbGQgaW0gTWVuw7xlaW50cmFnIHBhc3NlbiwgZGFzIGVudGZlcm50IHdlcmRlbiAiCisjfiAic29sbCAoR3Jvw58tL0tsZWluc2NocmVpYnVuZyBpc3QgbmljaHQgcmVsZXZhbnQpLiBGYWxscyBCPC0tbWVudWVudHJ5PiAiCisjfiAibmljaHQgYW5nZWdlYmVuIHdpcmQsIGVyZm9sZ3Qga2VpbmUgUHLDvGZ1bmcgZGVzIE1lbsO8ZWludHJhZ3MuIgorCisjfiBtc2dpZCAiQjwtLWtlZXAtb2xkPiIKKyN+IG1zZ3N0ciAiQjwtLWtlZXAtb2xkPiIKKworI34gbXNnaWQgIiIKKyN+ICJJbmhpYml0cyB0aGUgcmVwbGFjZW1lbnQgb2YgZXhpc3RpbmcgZW50cmllcyBhbmQgdGhlIHJlbW92YWwgb2YgZW1wdHkgIgorI34gInNlY3Rpb25zLiIKKyN+IG1zZ3N0ciAiIgorI34gIlZlcmhpbmRlcnQgZGllIEVyc2V0enVuZyBleGlzdGllcmVuZGVyIEVpbnRyw6RnZSB1bmQgZGFzIEVudGZlcm5lbiBsZWVyZXIgIgorI34gIkFic2Nobml0dGUuIgorCisjfiBtc2dpZCAiIgorI34gIklmIHRoZSBmaWxlIGJlaW5nIGluc3RhbGxlZCBhbHJlYWR5IGhhcyBhbiBlbnRyeSBpbiB0aGUgSW5mbyBCPGRpcj4gZmlsZSwgIgorI34gInRoZSBvbGQgZW50cnkgd2lsbCBiZSBsZWZ0IGFsb25lIGluc3RlYWQgb2YgYmVpbmcgcmVwbGFjZWQ7IHRoZSBkZWZhdWx0ICIKKyN+ICJpcyB0byBvdmVyd3JpdGUgYW55IG9sZCBlbnRyeSBmb3VuZCB3aXRoIHRoZSBuZXdseSBnZW5lcmF0ZWQgb25lLiIKKyN+IG1zZ3N0ciAiIgorI34gIkZhbGxzIGRpZSB6dSBpbnN0YWxsaWVyZW5kZSBEYXRlaSBiZXJlaXRzIGVpbmVuIEVpbnRyYWcgaW4gZGVyIEI8ZGlyPi0iCisjfiAiRGF0ZWkgaGF0LCB3aXJkIGRlciBhbHRlIEVpbnRyYWcgdW52ZXLDpG5kZXJ0IGdlbGFzc2VuIHVuZCBuaWNodCBlcnNldHp0OyAiCisjfiAic3RhbmRhcmRtw6TDn2lnIHdlcmRlbiBnZWZ1bmRlbmUgYWx0ZSBFaW50csOkZ2UgbWl0IGRlbiBuZXUgZ2VuZXJpZXJ0ZW4gIgorI34gIsO8YmVyc2NocmllYmVuLiIKKworI34gbXNnaWQgIiIKKyN+ICJJZiBCPC0tcmVtb3ZlPiBpcyBzcGVjaWZpZWQsIEI8LS1rZWVwLW9sZD4gd2lsbCBwcmV2ZW50IHRoZSByZW1vdmFsIG9mICIKKyN+ICJ0aGUgc2VjdGlvbiBoZWFkaW5nIHdoaWNoIHdvdWxkIG90aGVyd2lzZSBoYXBwZW4gaWYgdGhlIHNlY3Rpb24gaXMgbWFkZSAiCisjfiAiZW1wdHkgYnkgdGhlIHJlbW92YWwuIgorI34gbXNnc3RyICIiCisjfiAiRmFsbHMgQjwtLXJlbW92ZT4gYW5nZWdlYmVuIGlzdCwgdmVyaGluZGVydCBCPC0ta2VlcC1vbGQ+IGRhcyBFbnRmZXJuZW4gIgorI34gImRlciBBYnNjaG5pdHRzw7xiZXJzY2hyaWZ0LCB3YXMgYW5kZXJuZmFsbHMgcGFzc2llcmVuIHfDvHJkZSwgZmFsbHMgZGVyICIKKyN+ICJBYnNjaG5pdHQgZHVyY2ggZGFzIEVudGZlcm5lbiBsZWVyIHdlcmRlbiB3w7xyZGUuIgorCisjfiBtc2dpZCAiIgorI34gIkVuYWJsZXMgdGVzdCBtb2RlLCB3aGljaCBpbmhpYml0cyB0aGUgdXBkYXRlIG9mIHRoZSBJbmZvIEI8ZGlyPiBmaWxlLiIKKyN+IG1zZ3N0ciAiIgorI34gIkFrdGl2aWVydCBkZW4gVGVzdG1vZHVzLCBpbiBkZW0gZGFzIEFrdHVhbGlzaWVyZW4gZGVyIEluZm8gQjxkaXI+LURhdGVpICIKKyN+ICJ2ZXJoaW5kZXJ0IHdpcmQuIgorCisjfiBtc2dpZCAiIgorI34gIkVuYWJsZXMgZGVidWdnaW5nIG1vZGUsIGluIHdoaWNoIHRoZSByZXN1bHRzIG9mIHNvbWUgaW50ZXJuYWwgcHJvY2Vzc2luZyAiCisjfiAic3RlcHMgYXJlIHNob3duLiIKKyN+IG1zZ3N0ciAiIgorI34gIkFrdGl2aWVydCBkZW4gRmVobGVyc3VjaGUtTW9kdXMsIGJlaSBkZW0gZGllIEVyZ2Vibmlzc2UgZWluaWdlciBpbnRlcm5lciAiCisjfiAiQmVhcmJlaXR1bmdzc2Nocml0dGUgYW5nZXplaWd0IHdlcmRlbi4iCisKKyN+IG1zZ2lkICJCPGVtYWNzPigxKSwgQjxpbmZvPigxKSwgQjxnemlwKDEpLj4iCisjfiBtc2dzdHIgIkI8ZW1hY3M+KDEpLCBCPGluZm8+KDEpLCBCPGd6aXAoMSkuPiIKKworI34gbXNnaWQgIkNvcHlyaWdodCBcXChjbyAxOTk0IElhbiBKYWNrc29uIgorI34gbXNnc3RyICJDb3B5cmlnaHQgXFwoY28gMTk5NCBJYW4gSmFja3NvbiIKKworI34gbXNnaWQgIjgyMi1kYXRlIgorI34gbXNnc3RyICI4MjItZGF0ZSIKKworI34gbXNnaWQgIjIwMDctMDEtMjQiCisjfiBtc2dzdHIgIjIwMDctMDEtMjQiCisKKyN+IG1zZ2lkICI4MjItZGF0ZSAtIFByaW50IGRhdGUgYW5kIHRpbWUgaW4gUkZDMjgyMiBmb3JtYXQiCisjfiBtc2dzdHIgIjgyMi1kYXRlIC0gRGF0dW0gdW5kIFVocnplaXQgaW0gUkZDMjgyMi1Gb3JtYXQgYXVzZ2ViZW4iCisKKyN+IG1zZ2lkICJCPDgyMi1kYXRlPiIKKyN+IG1zZ3N0ciAiQjw4MjItZGF0ZT4iCisKKyN+IG1zZ2lkICIiCisjfiAiQjw4MjItZGF0ZT4gZGlzcGxheXMgdGhlIGN1cnJlbnQgZGF0ZSBhbmQgdGltZSBpbiB0aGUgZm9ybWF0IGRlc2NyaWJlZCBpbiAiCisjfiAiUkZDMjgyMi4gIEl0IGRvZXMgc28gYnkgc2ltcGx5IGNhbGxpbmcgQjxkYXRlPigxKSAgd2l0aCB0aGUgQjwtUj4gb3B0aW9uLiIKKyN+IG1zZ3N0ciAiIgorI34gIkI8ODIyLWRhdGU+IHplaWd0IGRhcyBha3R1ZWxsZSBEYXR1bSB1bmQgVWhyemVpdCBhbiwgd2llIGVzIGltIFJGQzI4MjIgIgorI34gImJlc2NocmllYmVuZW4gaXN0LiBEaWVzIGVyZm9sZ3QgZWluZmFjaCBkdXJjaCBBdWZydWYgdm9uIEI8ZGF0ZT4oMSkgbWl0ICIKKyN+ICJkZXIgQjwtUj4tT3B0aW9uLiIKKworI34gbXNnaWQgIiIKKyN+ICJCPFVzaW5nIDgyMi1kYXRlIGlzIGRlcHJlY2F0ZWQgc2luY2U+IEI8ZGF0ZT4oMSkgIHByb3ZpZGVzIHRoZSBzYW1lICIKKyN+ICJmdW5jdGlvbmFsaXR5IHdoZW4gY2FsbGVkIHdpdGggdGhlIEI8LVI+LiIKKyN+IG1zZ3N0ciAiIgorI34gIkI8RGVyIEVpbnNhdHogdm9uIDgyMi1kYXRlIHdpcmQgbmljaHQgbWVociBlbXBmb2hsZW4sIGRhPiBCPGRhdGU+KDEpIGRpZSAiCisjfiAiZ2xlaWNoZSBGdW5rdGlvbmFsaXTDpHQgYmlldGV0LCB3ZW5uIGVzIG1pdCBCPC1SPiBhdWZnZXJ1ZmVuIHdpcmQuIgorCisjfiBtc2dpZCAiQjw4MjItZGF0ZT4gZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnRzIG9yIG9wdGlvbnMuIgorI34gbXNnc3RyICJCPDgyMi1kYXRlPiBuaW1tdCBrZWluZSBBcmd1bWVudGUgb2RlciBPcHRpb25lbiBhbi4iCisKKyN+IG1zZ2lkICJUaGlzIGZhY2lsaXR5IHJlYWxseSBvdWdodCB0byBiZSBwYXJ0IG9mIEI8ZGF0ZT4oMSkuIgorI34gbXNnc3RyICJEaWVzZSBBbmxhZ2Ugc29sbHRlIHdpcmtsaWNoIGVpbiBUZWlsIHZvbiBCPGRhdGU+KDEpIHNlaW4uIgorCisjfiBtc2dpZCAiSTxJbnRlcm5ldCBNZXNzYWdlIEZvcm1hdD4gKFJGQzI4MjIpLCBCPGRhdGU+KDEpLiIKKyN+IG1zZ3N0ciAiSTxJbnRlcm5ldCBNZXNzYWdlIEZvcm1hdD4gKFJGQzI4MjIpLCBCPGRhdGU+KDEpLiIKKworI34gbXNnaWQgIiIKKyN+ICJCPDgyMi1kYXRlPiBpcyBhIHJlYWxseSBzaW1wbGUgd3JhcHBlciBhcm91bmQgQjxkYXRlPigxKS4gIEJ5IGl0cyAiCisjfiAic2ltcGxpY2l0eSwgdGhlIGNvZGUgaXMgcHJvYmFibHkgbm90IGNvcHlyaWdodGFibGUgYW5kIHNob3VsZCBiZSAiCisjfiAiY29uc2lkZXJlZCB0byBiZSBpbiB0aGUgcHVibGljIGRvbWFpbi4gVGhpcyBtYW4gcGFnZSB3YXMgd3JpdHRlbiBieSBGcmFuayAiCisjfiAiTGljaHRlbmhlbGQgYmFzZWQgb24gYW4gZWFybGllciB2ZXJzaW9uIGJ5IElhbiBKYWNrc29uIGFuZCB3YXMgYWxzbyBwdXQgIgorI34gImluIHRoZSBwdWJsaWMgZG9tYWluLiIKKyN+IG1zZ3N0ciAiIgorI34gIkI8ODIyLWRhdGU+IGlzdCB0YXRzw6RjaGxpY2ggZWluZSB3aXJrbGljaCBlaW5mYWNoZSBBdWZydWZow7xsbGUgdW0gQjxkYXRlPiIKKyN+ICIoMSkuIEF1ZmdydW5kIHNlaW5lciBFaW5mYWNoaGVpdCBrYW5uIGRlciBDb2RlIHdhaHJzY2hlaW5saWNoIG5pY2h0ICIKKyN+ICJ1cmhlYmVycmVjaHRsaWNoIGdlc2Now7x0enQgd2VyZGVuIHVuZCBzb2xsdGUgYWxzIFRlaWwgZGVzIMK7UHVibGljIERvbWFpbsKrICIKKyN+ICJiZXRyYWNodGV0IHdlcmRlbi4gRGllc2UgSGFuZGJ1Y2hzZWl0ZSB3dXJkZSB2b24gRnJhbmsgTGljaHRlbmhlbGQgIgorI34gImdlc2NocmllYmVuIHVuZCBiYXNpZXJ0IGF1ZiBlaW5lciBmcsO8aGVyZW4gVmVyc2lvbiB2b24gSWFuIEphY2tzb24gZGllICIKKyN+ICJhdWNoIGltIFB1YmxpYyBEb21haW4gbGllZ3QuIgorCisjfiBtc2dpZCAiRG8gbm90IGNsZWFuIHRoZSBzb3VyY2UgdHJlZSAoaW1wbGllcyBCPC1iPikuIgorI34gbXNnc3RyICJEZW4gUXVlbGxiYXVtIG5pY2h0IHPDpHViZXJuIChpbXBsaXppZXJ0IEI8LWI+KS4iCisKKyN+IG1zZ2lkICJWZW5kb3IgaWRlbnRpZmljYXRpb24iCisjfiBtc2dzdHIgIklkZW50aWZ6aWVydW5nIGRlcyBMaWVmZXJhbnRlbiIKKworI34gbXNnaWQgIiIKKyN+ICJUaGUgdmFyaWFibGUgQjxERUJfVkVORE9SPiB3aWxsIGJlIHNldCB0byB0aGUgbmFtZSBvZiB0aGUgY3VycmVudCB2ZW5kb3IgIgorI34gImlmIEk8L2V0Yy9kcGtnL29yaWdpbnMvZGVmYXVsdD4gZXhpc3RzIGFuZCBjYW4gYmUgdXNlZCB0byBsb29rIHVwIHRoZSAiCisjfiAidmVuZG9yIG5hbWUuIElmIHRoZSB2YXJpYWJsZSBhbHJlYWR5IGV4aXN0cywgYW5kIGNvbnRhaW5zIHRoZSBuYW1lIG9mIGFuICIKKyN+ICJleGlzdGluZyB2ZW5kb3IgaW4gSTwvZXRjL2Rwa2cvb3JpZ2lucz4sIGl0IHdpbGwgYmUga2VwdDsgb3RoZXJ3aXNlIHRoZSAiCisjfiAidmFyaWFibGUgaXMgdW5zZXQuIgorI34gbXNnc3RyICIiCisjfiAiRGllIFZhcmlhYmxlIEI8REVCX1ZFTkRPUj4gd2lyZCBhdWYgZGVuIE5hbWVuIGRlcyBkZXJ6ZWl0aWdlbiBMaWVmZXJhbnRlbiAiCisjfiAiKGVuZ2xpc2NoOiDCu3ZlbmRvcsKrKSBnZXNldHp0LCBmYWxscyBJPC9ldGMvZHBrZy9vcmlnaW5zL2RlZmF1bHQ+ICIKKyN+ICJleGlzdGllcnQgdW5kIHp1bSBOYWNoc2NobGFnZW4gZGVzIExpZWZlcmFudGVuIGdlbnV0enQgd2VyZGVuIGthbm4uIEZhbGxzICIKKyN+ICJkaWUgVmFyaWFibGUgYmVyZWl0cyBleGlzdGllcnQgdW5kIGRlbiBOYW1lbiBlaW5lcyBleGlzdGllcmVuZGVuICIKKyN+ICJMaWVmZXJhbnRlbiBpbiBJPC9ldGMvZHBrZy9vcmlnaW5zPiBlbnRow6RsdCwgd2lyZCBkaWVzZSBiZWliZWhhbHRlbjsgIgorI34gImFuZGVybmZhbGxzIHdpcmQgZGllIFZhcmlhYmxlIHp1csO8Y2tnZXNldHp0IChkLmguIHNpZSBpc3QgaW0gQmF1cHJvemVzcyAiCisjfiAibmljaHQgZ2VzZXR6dCkuIgorCisjfiBtc2dpZCAiIgorI34gIkI8RGVwcmVjYXRlZD4uIFNldCBhbiBvdXRwdXQgc3Vic3RpdHV0aW9uIHZhcmlhYmxlLiAgU2VlIEI8ZGViLXN1YnN0dmFycz4iCisjfiAiKDUpIGZvciBhIGRpc2N1c3Npb24gb2Ygb3V0cHV0IHN1YnN0aXR1dGlvbi4iCisjfiBtc2dzdHIgIiIKKyN+ICJCPFZlcmFsdGV0Pi4gU2V0enQgZWluZSBBdXNnYWJlc3Vic3RpdHV0aW9uc3ZhcmlhYmxlLiBMZXNlbiBTaWUgQjxkZWItIgorI34gInN1YnN0dmFycz4oNSkgZsO8ciBlaW5lIEJlc3ByZWNodW5nIGRlciBBdXNnYWJlc3Vic3RpdHV0aW9uLiIKKworI34gbXNnaWQgImNsZWFudXAtaW5mbyIKKyN+IG1zZ3N0ciAiY2xlYW51cC1pbmZvIgorCisjfiBtc2dpZCAiIgorI34gImNsZWFudXAtaW5mbyAtIGNsZWFuIHVwIHRoZSBtZXNzIHRoYXQgYm9ndXMgaW5zdGFsbC1pbmZvIG1heSBoYXZlIGRvbmUiCisjfiBtc2dzdHIgImNsZWFudXAtaW5mbyAtIHLDpHVtdCBkZW4gTcO8bGwgdm9uIHNjaHdpbmRlbGhhZnRlbiBpbnN0YWxsLWluZm8gYXVmIgorCisjfiBtc2dpZCAiQjxjbGVhbnVwLWluZm8+IFtJPG9wdGlvbnM+XSBbQjwtLT5dIFtJPGRpcm5hbWU+XSIKKyN+IG1zZ3N0ciAiQjxjbGVhbnVwLWluZm8+IFtJPE9wdGlvbmVuPl0gW0I8LS0+XSBbSTxWZXJ6ZWljaG5pc25hbWU+XSIKKworI34gbXNnaWQgIiIKKyN+ICJCPGNsZWFudXAtaW5mbz4gaXMgYSBQZXJsIHNjcmlwdCB0aGF0IHRyaWVzIHRvIGNsZWFuIHVwIHRoZSBtZXNzIHRoYXQgIgorI34gImJvZ3VzIEI8aW5zdGFsbC1pbmZvPig4KSAgbWF5IGhhdmUgZG9uZS4gIEl0IGdhdGhlcnMgYWxsIHNlY3Rpb25zIHdpdGggIgorI34gInRoZSBzYW1lIGhlYWRpbmcgaW50byBhIHNpbmdsZSBvbmUuICBJdCB0cmllcyB0byBiZSBzbWFydCBhYm91dCBjYXNlcyBhbmQgIgorI34gInRyYWlsaW5nIGNvbG9uL3NwYWNlcy4iCisjfiBtc2dzdHIgIiIKKyN+ICJCPGNsZWFudXAtaW5mbz4gaXN0IGVpbiBQZXJsLVNrcmlwdCBkYXMgdmVyc3VjaHQsIGRlbiBNw7xsbCBhdWZ6dXLDpHVtZW4sICIKKyN+ICJkZW4gZWluIHNjaHdpbmRlbGhhZnRlcyBCPGluc3RhbGwtaW5mbz4oOCkgaGludGVybGFzc2VuIGhhYmVuIGvDtm5udGUuIEVzICIKKyN+ICJzYW1tZWx0IGFsbGUgQmVyZWljaGUgbWl0IGRlciBnbGVpY2hlbiDDnGJlcnNjaHJpZnQgaW4gZWluZW4gZWluemVsbmVuICIKKyN+ICJ6dXNhbW1lbi4gRXMgdmVyc3VjaHQsIHBmaWZmaWcgw7xiZXIgR3Jvw58tL0tsZWluc2NocmVpYnVuZyB1bmQgYW5nZWjDpG5ndGUgIgorI34gIkRvcHBlbHB1bmt0ZS9MZWVyemVpY2hlbiB6dSBzZWluLiIKKworI34gbXNnaWQgIiIKKyN+ICJPdGhlciBjbGVhbi11cHMgaW5jbHVkZSByZW1vdmluZyBvZiBlbXB0eSBzZWN0aW9ucywgYW5kIHNxdWVlemluZyB0aGUgIgorI34gImJsYW5rIGxpbmVzIChpbiBlbnRyaWVzIHBhcnQgb25seSkuIgorI34gbXNnc3RyICIiCisjfiAiV2VpdGVyZSBBdWZyw6R1bWFyYmVpdGVuIGJlaW5oYWx0ZW4gZGllIEVudGZlcm51bmcgbGVlcmVyIEJlcmVpY2hlIHVuZCBkYXMgIgorI34gIlp1c2FtbWVucXVldHNjaGVuIGxlZXJlciBaZWlsZW4gKG51ciBpbSBCZXJlaWNoIGRlciBFaW50csOkZ2UpLiIKKworI34gbXNnaWQgIiIKKyN+ICJPcmRlciBvZiBzZWN0aW9ucyBpcyBwcmVzZXJ2ZWQgKHRoZSBmaXJzdCBlbmNvdW50ZXJlZCBzZWN0aW9uIGNvdW50cykuICAiCisjfiAiT3JkZXIgb2YgZW50cmllcyB3aXRoaW4gYSBzZWN0aW9uIGlzIHByZXNlcnZlZC4iCisjfiBtc2dzdHIgIiIKKyN+ICJEaWUgUmVpaGVuZm9sZ2UgZGVyIEJlcmVpY2hlIHdpcmQgZXJoYWx0ZW4gKGRlciBlcnN0ZSBhdWZnZXRyZXRlbmUgIgorI34gIkJlcmVpY2ggesOkaGx0KS4gRGllIFJlaWhlbmZvbGdlIGRlciBFaW50csOkZ2UgaW5uZXJoYWxiIGVpbmVzIEJlcmVpY2hzICIKKyN+ICJ3aXJkIGVyaGFsdGVuLiIKKworI34gbXNnaWQgIiIKKyN+ICJQbGVhc2UgYmUgQjxleHRyZW1lbHkgY2FyZWZ1bD4gd2hlbiB1c2luZyB0aGlzIHV0aWxpdHkgLSBpdCBtaWdodCBub3QgYmUgIgorI34gIjEwMCUgc2FmZS4gY2xlYW51cC1pbmZvIHRyaWVzIHRvIGJlIGNhcmVmdWwgd2l0aCB5b3VyIGluZm8gZGlyIGZpbGUsIGJ1dCAiCisjfiAib25seSB1bnRpbCBpdCB3cml0ZXMgaXQuIFlvdSBzaG91bGQgYmFjayB0aGUgZmlsZSB1cCBwcmlvciB0byB1c2luZyB0aGlzICIKKyN+ICJzY3JpcHQuIgorI34gbXNnc3RyICIiCisjfiAiQml0dGUgc2VpZW4gU2llIEI8ZXh0cmVtIHZvcnNpY2h0aWc+IGJlaSBkZXIgVmVyd2VuZHVuZyBkaWVzZXMgIgorI34gIkhpbGZzd2Vya3pldWdlcyAtIGVzIGvDtm5udGUgbmljaHQgMTAwICUgc2ljaGVyIHNlaW4uIGNsZWFudXAtaW5mbyAiCisjfiAidmVyc3VjaHQgdm9yc2ljaHRpZyBtaXQgSWhyZXIgSW5mby1EaXItRGF0ZWkgenUgc2VpbiwgYWJlciBudXIgYmlzIGVzIHNpZSAiCisjfiAic2NocmVpYnQuIFNpZSBzb2xsdGVuIGVpbmUgU2ljaGVyaGVpdHNrb3BpZSBhbmxlZ2VuLCBiZXZvciBzaWUgZGllcyAiCisjfiAiU2tyaXB0IHZlcndlbmRlbi4iCisKKyN+IG1zZ2lkICJCPC0tdW5zYWZlPiIKKyN+IG1zZ3N0ciAiQjwtLXVuc2FmZT4iCisKKyN+IG1zZ2lkICJTZXQgc29tZSBhZGRpdGlvbmFsIHBvc3NpYmx5IHVzZWZ1bCBvcHRpb25zLiIKKyN+IG1zZ3N0ciAiU3RlbGxlIGVpbmlnZSB6dXPDpHR6bGljaGUgbcO2Z2xpY2hlcndlaXNlIG7DvHR6bGljaGUgT3B0aW9uZW4gZWluLiIKKworI34gbXNnaWQgIiIKKyN+ICJCPFdhcm5pbmc6IHRoZSBgLS11bnNhZmUnIG9wdGlvbiBtYXkgZ2FyYmxlIGFuIG90aGVyd2lzZSBjb3JyZWN0IGZpbGUhPiIKKyN+IG1zZ3N0ciAiIgorI34gIkI8V2FybnVuZzogZGllIMK7LS11bnNhZmXCqy1PcHRpb24ga2FubiBlaW5lIGFuc29uc3RlbiBrb3JyZWt0ZSBEYXRlaSAiCisjfiAidmVyc3TDvG1tZWxuIT4iCisKKyN+IG1zZ2lkICJJPC91c3IvaW5mby9kaXI+IG9yIEk8RTxsdD5kaXJuYW1lRTxndD4vZGlyPiIKKyN+IG1zZ3N0ciAiSTwvdXNyL2luZm8vZGlyPiBvZGVyIEk8RTxsdD5WZXJ6ZWljaG5pc25hbWVFPGd0Pi9kaXI+IgorCisjfiBtc2dpZCAiIgorI34gIlRoZSBpbmZvIGRpcmVjdG9yeSBmaWxlLiBUaGUgbG9jayBmaWxlIGlzIG5hbWVkIHRoZSBzYW1lLCB3aXRoIFwiLmxvY2tcIiAiCisjfiAic3VmZml4LiIKKyN+IG1zZ3N0ciAiIgorI34gIkRpZSBpbmZvLVZlcnplaWNobmlzZGF0ZWkuIERpZSBMb2NrLURhdGVpIGhlacOfdCBnZW5hdXNvLCBtaXQgZGVtIMK7LmxvY2vCqy0iCisjfiAiU3VmZml4LiIKKworI34gbXNnaWQgIlByb2JhYmx5IG1hbnkuIgorI34gbXNnc3RyICJXYWhyc2NoZWlubGljaCB2aWVsZS4iCisKKyN+IG1zZ2lkICJCPGluc3RhbGwtaW5mbz4oOCksIEI8aW5mbz4oMSkuIgorI34gbXNnc3RyICJCPGluc3RhbGwtaW5mbz4oOCksIEI8aW5mbz4oMSkuIgorCisjfiBtc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDE5OTYgS2ltLU1pbmggS2FwbGFuIgorI34gbXNnc3RyICJDb3B5cmlnaHQgXFwoY28gMTk5NiBLaW0tTWluaCBLYXBsYW4iCisKKyN+IG1zZ2lkICIiCisjfiAiVGhlIHRoaXJkLCBsYXN0IHJlcXVpcmVkIG1lbWJlciBpcyBuYW1lZCBCPGRhdGEudGFyLmd6Pi4gIEl0IGNvbnRhaW5zIHRoZSAiCisjfiAiZmlsZXN5c3RlbSBhcmNoaXZlIGFzIGEgZ3ppcHBlZCB0YXIgYXJjaGl2ZS4iCisjfiBtc2dzdHIgIiIKKyN+ICJEYXMgZHJpdHRlLCBsZXR6dGUgYmVuw7Z0aWd0ZSBNaXRnbGllZCBoZWnDn3QgQjxkYXRhLnRhci5nej4uIEVzIGVudGjDpGx0ICIKKyN+ICJkYXMgRGF0ZWlzeXN0ZW1hcmNoaXYgYWxzIGdlemlwcHRlcyBUYXItQXJjaGl2LiIKKworI34gbXNnaWQgIjIwMDgtMDEtMzAiCisjfiBtc2dzdHIgIjIwMDgtMDEtMzAiCisKKyN+IG1zZ2lkICJnZW5lcmljIG5hbWUiCisjfiBtc2dzdHIgImdlbmVyaXNjaGVyIE5hbWUiCisKKyN+IG1zZ2lkICJzeW1saW5rIgorI34gbXNnc3RyICJTeW1saW5rIgorCisjfiBtc2dpZCAiIgorI34gIldpdGhvdXQgYW55IGZ1cnRoZXIgcXVhbGlmaWNhdGlvbiwgdGhpcyBtZWFucyBhIHN5bWJvbGljIGxpbmsgaW4gdGhlICIKKyN+ICJhbHRlcm5hdGl2ZXMgZGlyZWN0b3J5OiBvbmUgd2hpY2ggdGhlIHN5c3RlbSBhZG1pbmlzdHJhdG9yIGlzIGV4cGVjdGVkIHRvICIKKyN+ICJhZGp1c3QuIgorI34gbXNnc3RyICIiCisjfiAiT2huZSB3ZWl0ZXJlIEFuZ2FiZSBiZWRldXRldCBkaWVzIGVpbiBzeW1ib2xpc2NoZXIgTGluayBpbSBBbHRlcm5hdGl2LSIKKyN+ICJWZXJ6ZWljaG5pczogZWluZXIgZGVyZXIsIGRpZSB2b20gU3lzdGVtYWRtaW5pc3RyYXRvciBhbmdlcGFzc3Qgd2VyZGVuICIKKyN+ICJzb2xsZW4uIgorCisjfiBtc2dpZCAiQ2FsbCBCPC0tY29uZmlnPiBvbiBhbGwgYWx0ZXJuYXRpdmVzLiIKKyN+IG1zZ3N0ciAiUnVmZSBCPC0tY29uZmlnPiBmw7xyIGFsbGUgQWx0ZXJuYXRpdmVuIGF1Zi4iCisKKyN+IG1zZ2lkICJCPEVycm9yOj4gRTxsdD5lcnJvciBkZXRhaWxzRTxndD4iCisjfiBtc2dzdHIgIkI8RXJyb3I6PiBFPGx0PkZlaGxlcmRldGFpbHNFPGd0PiIKKworI34gbXNnaWQgIm1haWx0bzpqb2V5aEBkZWJpYW4ub3JnIgorI34gbXNnc3RyICJtYWlsdG86am9leWhAZGViaWFuLm9yZyIKKworI34gbXNnaWQgIkU8bHQ+am9leWhAZGViaWFuLm9yZ0U8Z3Q+IgorI34gbXNnc3RyICJFPGx0PmpvZXloQGRlYmlhbi5vcmdFPGd0PiIKKworI34gbXNnaWQgIm1haWx0bzp3YWtrZXJtYUBkZWJpYW4ub3JnIgorI34gbXNnc3RyICJtYWlsdG86d2Fra2VybWFAZGViaWFuLm9yZyIKKworI34gbXNnaWQgIkU8bHQ+d2Fra2VybWFAZGViaWFuLm9yZ0U8Z3Q+IgorI34gbXNnc3RyICJFPGx0Pndha2tlcm1hQGRlYmlhbi5vcmdFPGd0PiIKKworI34gbXNnaWQgIjIwMDctMDctMTgiCisjfiBtc2dzdHIgIjIwMDctMDctMTgiCisKKyN+IG1zZ2lkICIyMDA3LTEwLTA2IgorI34gbXNnc3RyICIyMDA3LTEwLTA2IgorCisjfiBtc2dpZCAiMjAwOC0wMy0xNCIKKyN+IG1zZ3N0ciAiMjAwOC0wMy0xNCIKKworI34gbXNnaWQgIiIKKyN+ICJCPGRwa2ctYnVpbGRwYWNrYWdlPiBpcyBhIGNvbnRyb2wgc2NyaXB0IHdoaWNoIGNhbiBiZSB1c2VkIHRvIGhlbHAgIgorI34gImF1dG9tYXRlIHRoZSBidWlsZGluZyBvZiBhIHBhY2thZ2UuIgorI34gbXNnc3RyICIiCisjfiAiQjxkcGtnLWJ1aWxkcGFja2FnZT4gaXN0IGVpbiBTdGV1ZXJza3JpcHQsIGRhcyB6dSBBdXRvbWF0aXNpZXJ1bmcgZGVzICIKKyN+ICJCYXVlbnMgdm9uIFBha2V0ZW4gdmVyd2VuZGV0IHdlcmRlbiBrYW5uLiIKKworI34gbXNnaWQgIiIKKyN+ICJUaGUgQjwtcz5JPHg+IG9wdGlvbnMgY29udHJvbCB3aGV0aGVyIHRoZSBvcmlnaW5hbCBzb3VyY2UgYXJjaGl2ZSBpcyAiCisjfiAiaW5jbHVkZWQgaW4gdGhlIHVwbG9hZCBpZiBhbnkgc291cmNlIGlzIGJlaW5nIGdlbmVyYXRlZCAoaS5lLiAgQjwtYj4sIEI8LSIKKyN+ICJCPiBvciBCPC1BPiBoYXZlbid0IGJlZW4gdXNlZCkuIgorI34gbXNnc3RyICIiCisjfiAiRGllIEI8LXM+STx4Pi1PcHRpb25lbiBzdGV1ZXJuLCBvYiBkYXMgT3JpZ2luYWwtUXVlbGxhcmNoaXYgZGVtIFVwbG9hZCAiCisjfiAiaGluenVnZWbDvGd0IHdpcmQsIGZhbGxzIGlyZ2VuZHdlbGNoZSBRdWVsbGVuIGVyemV1Z3Qgd2VyZGVuIChkLmguIEI8LWI+LCAiCisjfiAiQjwtQj4gb2RlciBCPC1BPiBuaWNodCB2ZXJ3ZW5kZXQgd3VyZGVuKS4iCisKKyN+IG1zZ2lkICIiCisjfiAiQnkgZGVmYXVsdCwgb3IgaWYgc3BlY2lmaWVkLCB0aGUgb3JpZ2luYWwgc291cmNlIHdpbGwgYmUgaW5jbHVkZWQgaWYgdGhlICIKKyN+ICJ2ZXJzaW9uIG51bWJlciBlbmRzIGluIEI8LTA+IG9yIEI8LTE+LCBpLmUuIGlmIHRoZSBEZWJpYW4gcmV2aXNpb24gcGFydCAiCisjfiAib2YgdGhlIHZlcnNpb24gbnVtYmVyIGlzIEI8MD4gb3IgQjwxPi4iCisjfiBtc2dzdHIgIiIKKyN+ICJTdGFuZGFyZG3DpMOfaWcsIG9kZXIgZmFsbHMgYW5nZWdlYmVuIHdpcmQsIHdlcmRlbiBkaWUgT3JpZ2luYWxxdWVsbGVuICIKKyN+ICJoaW56dWdlZsO8Z3QsIGZhbGxzIGRpZSBWZXJzaW9uc251bW1lciBhdWYgQjwtMD4gb2RlciBCPC0xPiBlbmRldCwgZC5oLiAiCisjfiAiZGVyIERlYmlhbi1SZXZpc2lvbnNhbnRlaWwgZGVyIFZlcnNpb25zbnVtbWVyIEI8MD4gb2RlciBCPDE+IGlzdC4iCisKKyN+IG1zZ2lkICIiCisjfiAiVXNlIGNoYW5nZWxvZyBpbmZvcm1hdGlvbiBmcm9tIGFsbCB2ZXJzaW9ucyBzdHJpY3RseSBsYXRlciB0aGFuICIKKyN+ICJJPHZlcnNpb24+LiIKKyN+IG1zZ3N0ciAiIgorI34gIlZlcndlbmRlIMK7Y2hhbmdlbG9nwqstSW5mb3JtYXRpb25lbiB2b24gYWxsZW4gVmVyc2lvbmVuLCBkaWUgc3RyaWt0IG5ldWVyICIKKyN+ICJhbHMgSTxWZXJzaW9uPiBzaW5kLiIKKworI34gbXNnaWQgIkI8LUU+IgorI34gbXNnc3RyICJCPC1FPiIKKworI34gbXNnaWQgIiIKKyN+ICJUdXJuIGNlcnRhaW4gd2FybmluZ3MgaW50byBlcnJvcnMuIE9ubHkgQjxkcGtnLXNvdXJjZT4gdXNlcyB0aGlzLCBidXQgIgorI34gIkI8ZHBrZy1idWlsZHBhY2thZ2U+IHJlY29nbml6ZXMgaXQsIGFuZCBwYXNzZXMgaXQgdGhydSB0byBCPGRwa2ctc291cmNlPi4iCisjfiBtc2dzdHIgIiIKKyN+ICJWZXJ3YW5kbGUgYmVzdGltbWUgV2FybnVuZ2VuIGluIEZlaGxlci4gTnVyIEI8ZHBrZy1zb3VyY2U+IHZlcndlbmRldCAiCisjfiAiZGllcywgYWJlciBCPGRwa2ctYnVpbGRwYWNrYWdlPiBlcmtlbm50IGVzIHVuZCBsZWl0ZXQgZXMgYW4gQjxkcGtnLSIKKyN+ICJzb3VyY2U+IHdlaXRlci4iCisKKyN+IG1zZ2lkICJCPC1XPiIKKyN+IG1zZ3N0ciAiQjwtVz4iCisKKyN+IG1zZ2lkICIiCisjfiAiTmVnYXRlcyBhIHByZXZpb3VzbHkgc2V0IEI8LUU+LiAgT25seSBCPGRwa2ctc291cmNlPiB1c2VzIHRoaXMsIGJ1dCAiCisjfiAiQjxkcGtnLWJ1aWxkcGFja2FnZT4gcmVjb2duaXplcyBpdCwgYW5kIHBhc3NlcyBpdCB0aHJ1IHRvIEI8ZHBrZy1zb3VyY2U+LiIKKyN+IG1zZ3N0ciAiIgorI34gIlZlcm5laW50IGVpbiB2b3JoZXIgZ2VzZXR6dGUgQjwtRT4uIE51ciBCPGRwa2ctc291cmNlPiB2ZXJ3ZW5kZXQgZGllcywgIgorI34gImFiZXIgQjxkcGtnLWJ1aWxkcGFja2FnZT4gZXJrZW5udCBlcyB1bmQgbGVpdGV0IGVzIGFuIEI8ZHBrZy1zb3VyY2U+ICIKKyN+ICJ3ZWl0ZXIuIgorCisjfiBtc2dpZCAiMjAwNy0wOS0wOCIKKyN+IG1zZ3N0ciAiMjAwNy0wOS0wOCIKKworI34gbXNnaWQgIiIKKyN+ICJUaGVyZSBpcyBubyBhdXRoZW50aWNhdGlvbiBvbiBCPC5kZWI+IGZpbGVzOyBpbiBmYWN0LCB0aGVyZSBpc24ndCBldmVuIGEgIgorI34gInN0cmFpZ2h0Zm9yd2FyZCBjaGVja3N1bS4iCisjfiBtc2dzdHIgIiIKKyN+ICJFcyBnaWJ0IGtlaW5lIEF1dGhlbnRpZml6aWVydW5nIHZvbiBCPC5kZWI+LURhdGVpZW47IGluIGRlciBUYXQgZ2lidCBlcyAiCisjfiAic29nYXIgbm9jaCBuaWNodCBtYWwgZWluZSBkaXJla3RlIFByw7xmc3VtbWUuIgorCisjfiBtc2dpZCAiMjAwOC0wMy0wMiIKKyN+IG1zZ3N0ciAiMjAwOC0wMy0wMiIKKworI34gbXNnaWQgIjIwMDgtMDEtMTMiCisjfiBtc2dzdHIgIjIwMDgtMDEtMTMiCisKKyN+IG1zZ2lkICIyMDA4LTAzLTI1IgorI34gbXNnc3RyICIyMDA4LTAzLTI1IgorCisjfiBtc2dpZCAiMjAwOC0wMy0xNiIKKyN+IG1zZ3N0ciAiMjAwOC0wMy0xNiIKKworI34gbXNnaWQgIjIwMDgtMDQtMDgiCisjfiBtc2dzdHIgIjIwMDgtMDQtMDgiCisKKyN+IG1zZ2lkICIiCisjfiAiQSBzaW1wbGVyIG9uZS1zaG90IGNvbW1hbmQgdG8gcmV0cmlldmUgYW5kIHVwZGF0ZSB0aGUgSTxhdmFpbGFibGU+IGZpbGUgIgorI34gImlzIEI8ZHNlbGVjdCB1cGRhdGU+LiIKKyN+IG1zZ3N0ciAiIgorI34gIkVpbiBlaW5mYWNoZXJlciBCZWZlaGwsIHVtIGRpZSBJPGF2YWlsYWJsZT4tRGF0ZWkgaW4gZWluZW0gQXVmcnVmICIKKyN+ICJhYnp1cnVmZW4gdW5kIHp1IGFrdHVhbGlzaWVyZW4gaXN0IEI8ZHNlbGVjdCB1cGRhdGU+LiIKKworI34gbXNnaWQgIiIKKyN+ICJEaXNwbGF5IGRldGFpbHMgYWJvdXQgSTxwYWNrYWdlLW5hbWU+LCBhcyBmb3VuZCBpbiBJPC92YXIvbGliL2Rwa2cvIgorI34gImF2YWlsYWJsZT4uIgorI34gbXNnc3RyICIiCisjfiAiWmVpZ2UgRGV0YWlscyDDvGJlciBJPFBha2V0bmFtZT4gYW4sIHdpZSBzaWUgaW4gSTwvdmFyL2xpYi9kcGtnL2F2YWlsYWJsZT4gIgorI34gImVudGhhbHRlbiBzaW5kLiIKKworI34gbXNnaWQgIiIKKyN+ICJUaGlzIGlzIGEgdmFyaWFudCBvZiB0aGUgMi4wIGZvcm1hdC4gVGhlIGRpZmZlcmVuY2VzIGNvbmNlcm4gdGhlICIKKyN+ICJtYW5hZ2VtZW50IG9mIHRoZSBwYXRjaGVzLiBUaGlzIGZvcm1hdCB1c2VzIGFuIGV4cGxpY2l0IGxpc3Qgb2YgcGF0Y2hlcyAiCisjfiAiY29udGFpbmVkIGluIEI8ZGViaWFuL3BhdGNoZXMvZGViaWFuLnNlcmllcz4gb3IgQjxkZWJpYW4vcGF0Y2hlcy9zZXJpZXM+LiIKKyN+IG1zZ3N0ciAiIgorI34gIkRpZXMgaXN0IGVpbmUgVmFyaWFudGUgZGVzIDIuMC1Gb3JtYXRzLiBEaWUgVW50ZXJzY2hpZWRlIGJldHJlZmZlbiBkaWUgIgorI34gIlZlcndhbHR1bmcgZGVyIFBhdGNoZXMuIERpZXNlcyBGb3JtYXQgdmVyd2VuZGV0IGVpbmUgZXhwbGl6aXRlIExpc3RlIHZvbiAiCisjfiAiUGF0Y2hlcywgZGllIGluIEI8ZGViaWFuL3BhdGNoZXMvZGViaWFuLnNlcmllcz4gb2RlciBCPGRlYmlhbi9wYXRjaGVzLyIKKyN+ICJzZXJpZXM+IGVudGhhbHRlbiBzaW5kLiIKKworI34gbXNnaWQgIlVucGFja2luZyBvZiB0YXJiYWxscyBpcyBkb25lIGV4YWN0bHkgbGlrZSBpbiB0aGUgMi4wIGZvcm1hdC4iCisjfiBtc2dzdHIgIkRhcyBFbnRwYWNrZW4gZGVzIFRhcmJhbGxzIGVyZm9sZ3QgZXhha3Qgd2llIGltIDIuMC1Gb3JtYXQuIgorCisjfiBtc2dpZCAiIgorI34gIlRoZSBCPC5wYz4gZGlyZWN0b3J5IHVzZWQgYnkgcXVpbHQgaXMgaWdub3JlZCBkdXJpbmcgZ2VuZXJhdGlvbiBvZiB0aGUgIgorI34gImF1dG9tYXRpYyBwYXRjaC4iCisjfiBtc2dzdHIgIiIKKyN+ICJEYXMgdm9uIFF1aWx0IHZlcndhbmR0ZSBCPC5wYz4tVmVyemVpY2huaXMgd2lyZCB3w6RocmVuZCBkZXIgRXJzdGVsbHVuZyAiCisjfiAiZGVzIGF1dG9tYXRpc2NoZW4gUGF0Y2hlcyBpZ25vcmllcnQuIgorCisjfiBtc2dpZCAiSXQgc3VwcG9ydHMgYWxsIHRoZSBvcHRpb25zIG9mIHRoZSAyLjAgZm9ybWF0LiIKKyN+IG1zZ3N0ciAiRXMgdW50ZXJzdMO8dHp0IGFsbGUgT3B0aW9uZW4gZGVzIDIuMC1Gb3JtYXRzLiIKKworI34gbXNnaWQgIiIKKyN+ICJTZW5kIHBhY2thZ2Ugc3RhdHVzIGluZm8gdG8gZmlsZSBkZXNjcmlwdG9yIEk8RTxsdD5uRTxndD4+LiBUaGlzIGNhbiBiZSAiCisjfiAiZ2l2ZW4gbXVsdGlwbGUgdGltZXMuIFN0YXR1cyB1cGRhdGVzIGFyZSBvZiB0aGUgZm9ybSBgc3RhdHVzOiAiCisjfiAiRTxsdD5wa2dFPGd0PjogRTxsdD5wa2cgc3RhdGVFPGd0PicuICBFcnJvcnMgYXJlIHJlcG9ydGVkIGFzIGBzdGF0dXM6ICIKKyN+ICJFPGx0PnBrZ0U8Z3Q+OiBlcnJvcjogZXh0ZW5kLWVycm9yLW1lc3NhZ2UnLiAgQ29uZmlndXJhdGlvbiBmaWxlICIKKyN+ICJjb25mbGljdHMgYXJlIHJlcG9ydGVkIGFzIGBzdGF0dXM6IGNvbmZmaWxlLXByb21wdDogY29uZmZpbGUgOiAnY3VycmVudC0iCisjfiAiY29uZmZpbGUnICduZXctY29uZmZpbGUnIHVzZXJlZGl0ZWQgZGlzdGVkaXRlZCcuIgorI34gbXNnc3RyICIiCisjfiAiU2VuZGUgUGFrZXRzdGF0dXNpbmZvcm1hdGlvbmVuIGFuIGRlbiBEYXRlaWRlc2tyaXB0b3IgSTxFPGx0Pm5FPGd0Pj4uICIKKyN+ICJEaWVzZSBPcHRpb24ga2FubiBtZWhyZmFjaCBhbmdlZ2ViZW4gd2VyZGVuLiBTdGF0dXNha3R1YWxpc2llcnVuZ2VuIHNpbmQgIgorI34gInZvbiBkZXIgRm9ybTogwrtzdGF0dXM6IEU8bHQ+UGt0RTxndD46IEU8bHQ+UGt0IFN0YXR1c0U8Z3Q+wqsuIEZlaGxlciAiCisjfiAid2VyZGVuIGFscyDCu3N0YXR1czogRTxsdD5Qa3RFPGd0PjogZXJyb3I6IEF1c2bDvGhybGljaGUtRmVobGVybWVsZHVuZ8KrICIKKyN+ICJiZXJpY2h0ZXQuIEtvbmZpZ3VyYXRpb25zZGF0ZWlrb25mbGlrdGUgd2VyZGVuIGFscyDCu3N0YXR1czogQ29uZmZpbGUtIgorI34gIkVpbmdhYmVhdWZmb3JkZXJ1bmc6IGNvbmZmaWxlIDogwrtha3R1ZWxsZS1jb25mZmlsZcKrIMK7bmV1ZS1jb25mZmlsZcKrICIKKyN+ICJ1c2VyZWRpdGVkIGRpc3RlZGl0ZWTCqyBiZXJpY2h0ZXQuIgorCisjfiBtc2dpZCAiMjAwOC0wMS0wMyIKKyN+IG1zZ3N0ciAiMjAwOC0wMS0wMyIKKworI34gbXNnaWQgIiIKKyN+ICJGdXJ0aGVybW9yZSwgaW4gc29tZSBjYXNlcywgdGhpcyB3aWxsIGxlYWQgdG8gYSBub24tdmVyc2lvbmVkIGRlcGVuZGVuY3kgIgorI34gIm9uIHRoZSBsaWJyYXJ5IHRoYXQgY291bGQgaGF2ZSBiZWVuIGF2b2lkZWQgaWYgdGhlIGJpbmFyeSB3YXMgb25seSBsaW5rZWQgIgorI34gImFnYWluc3QgbGlicmFyaWVzIHRoYXQgaXQgcmVhbGx5IHVzZXMuIFRoZSBleGNlcHRpb24gdG8gdGhpcyBydWxlIGlzIHdoZW4gIgorI34gInNldmVyYWwgYmluYXJpZXMgYXJlIGxpbmtlZCBhZ2FpbnN0IHRoZSBzYW1lIHNldCBvZiBsaWJyYXJpZXMgYnV0IGVhY2ggIgorI34gImJpbmFyeSBvbmx5IHVzZXMgYSBzdWJzZXQgb2YgdGhvc2UuIFlvdSB3aWxsIGhhdmUgd2FybmluZ3Mgb24gaW5kaXZpZHVhbCAiCisjfiAiYmluYXJpZXMsIGJ1dCB0aGUgc2V0IG9mIGxpYnJhcmllcyBuZWVkZWQgYXQgdGhlIHBhY2thZ2UgbGV2ZWwgaXMgdGhlICIKKyN+ICJzYW1lIHdoZXRoZXIgeW91IGZpeCB0aGUgYmluYXJpZXMgb3Igbm90LiIKKyN+IG1zZ3N0ciAiIgorI34gIkRlc3dlaXRlcmVuIGbDvGhydCBkaWVzIGluIGVpbmlnZW4gRsOkbGxlbiB6dSBlaW5lciB1bnZlcnNpb25pZXJ0ZW4gIgorI34gIkFiaMOkbmdpZ2tlaXQgYXVmIGRpZXNlIEJpYmxpb3RoZWssIGRpZSB2ZXJtaWVkZW4gd2VyZGVuIGvDtm5udGUsIGZhbGxzIGRhcyAiCisjfiAiUHJvZ3JhbW0gbnVyIGdlZ2VuIEJpYmxpb3RoZWtlbiBnZWxpbmt0IHfDpHJlLCBkaWUgZXMgd2lya2xpY2ggdmVyd2VuZGV0LiAiCisjfiAiRGllIEF1c25haG1lIGRpZXNlciBSZWdlbCBsaWVndCBkYW5uIHZvciwgd2VubiBtZWhyZXJlIFByb2dyYW1tZSBnZWdlbiAiCisjfiAiZGVuIGdsZWljaGVuIFNhdHogYW4gQmlibGlvdGhla2VuIGdlbGlua3Qgc2luZCwgYWJlciBqZWRlcyBQcm9ncmFtbSBudXIgIgorI34gImVpbmUgVGVpbG1lbmdlIGRhdm9uIHZlcndlbmRldC4gU2llIHdlcmRlbiBmw7xyIGRpZSBlaW56ZWxuZW4gUHJvZ3JhbW1lICIKKyN+ICJpbmRpdmlkdWVsbGUgV2FybnVuZ2VuIGVyaGFsdGVuLCBhYmVyIGRlciBiZW7DtnRpZ3RlIFNhdHogYW4gQmlibGlvdGhla2VuICIKKyN+ICJpc3QgYXVmIGRlciBQYWtldGViZW5lIGlkZW50aXNjaCwgb2Igc2llIGRpZSBQcm9ncmFtbWUga29ycmlnaWVyZW4gb2RlciAiCisjfiAibmljaHQuIgorCisjfiBtc2dpZCAiQjwtYj4gSTxkaXJlY3Rvcnk+IFtJPG9yaWctZGlyZWN0b3J5PnxJPG9yaWctdGFyZ3o+fFxcKGFxXFwoYXFdIgorI34gbXNnc3RyICJCPC1iPiBJPFZlcnplaWNobmlzPiBbSTxPcmlnLVZlcnplaWNobmlzPnxJPE9yaWctdGFyZ3o+fFxcKGFxXFwoYXFdIgorCisjfiBtc2dpZCAiVGhpcyBvcHRpb24gdHVybnMgY2VydGFpbiB3YXJuaW5ncyBpbnRvIGVycm9ycy4iCisjfiBtc2dzdHIgIkRpZXNlIE9wdGlvbiDDpG5kZXJ0IGJlc3RpbW10ZSBXYXJudW5nZW4gaW4gRmVobGVyLiIKKworI34gbXNnaWQgIlRoaXMgb3B0aW9uIG5lZ2F0ZXMgYSBwcmV2aW91c2x5IHNldCBCPC1FPi4iCisjfiBtc2dzdHIgIkRpZXNlIE9wdGlvbiB2ZXJuZWludCBlaW4gdm9yaGVyIGdlc2V0enRlcyBCPC1FPi4iCisKKyN+IG1zZ2lkICIiCisjfiAiVGhlIGJpbmFyeSBwYWNrYWdlIGVudHJpZXMgaW4gdGhlIEI8ZGViaWFuL2ZpbGVzPiBmaWxlIHdpbGwgYmUgcGFzc2VkICIKKyN+ICJ0aHJvdWdoIHZhcmlhYmxlIHN1YnN0aXR1dGlvbiB0d2ljZS4gVGhpcyBzaG91bGQgbm90IG1hdHRlciwgc2luY2UgQjwkPiwgIgorI34gIkI8ez4gYW5kIEI8fT4gYXJlIG5vdCBsZWdhbCBpbiBwYWNrYWdlIG5hbWVzIG9yIHZlcnNpb24gbnVtYmVycy4iCisjfiBtc2dzdHIgIiIKKyN+ICJEaWUgQmluw6RycGFrZXRlaW50csOkZ2UgaW4gZGVyIERhdGVpIEI8ZGViaWFuL2ZpbGVzPiBkdXJjaGxhdWZlbiB6d2VpbWFsICIKKyN+ICJkaWUgVmFyaWFibGVuc3Vic3RpdHV0aW9uLiBEaWVzIHNvbGx0ZSBlZ2FsIHNlaW4sIGRhIEI8JD4sIEI8ez4gYW5kIEI8fT4gIgorI34gImluIFBha2V0bmFtZW4gb2RlciBWZXJzaW9uc251bW1lcm4ga2VpbmUgZ8O8bHRpZ2VuIFplaWNoZW4gc2luZC4iCisKKyN+IG1zZ2lkICJzaGxpYnMiCisjfiBtc2dzdHIgInNobGlicyIKKworI34gbXNnaWQgIkZJWE1FIG5vdCB1c2VkIGluIHRoZSBzb3VyY2UhPyIKKyN+IG1zZ3N0ciAiRklYTUUgd2lyZCBpbiBkZW4gUXVlbGxlbiBuaWNodCB2ZXJ3ZW5kZXQhPyIKKworI34gbXNnaWQgIiIKKyN+ICJEb24ndCBhY3R1YWxseSBkbyBhbnl0aGluZywganVzdCBzYXkgd2hhdCB3b3VsZCBiZSBkb25lLiAgVGhpcyBvcHRpb24gaXMgIgorI34gIm5vdCB5ZXQgaW1wbGVtZW50ZWQuIgorI34gbXNnc3RyICIiCisjfiAiRsO8aHJlIG5pY2h0cyBkdXJjaCwgc29uZGVybiB0ZWlsZSBudXIgbWl0LCB3YXMgZ2V0YW4gd8O8cmRlLiBEaWVzZSBPcHRpb24gIgorI34gImlzdCBub2NoIG5pY2h0IGltcGxlbWVudGllcnQuIgorCisjfiBtc2dpZCAiIgorI34gIlNoYXJlZCBsaWJyYXJ5IGluZm9ybWF0aW9uIGdlbmVyYXRlZCBieSB0aGUgY3VycmVudCBidWlsZCBwcm9jZXNzIHRoYXQgIgorI34gImFsc28gaW52b2tlZCBCPGRwa2ctc2hsaWJkZXBzPi4iCisjfiBtc2dzdHIgIiIKKyN+ICJMYXVmemVpdGJpYmxpb3RoZWtzaW5mb3JtYXRpb25lbiwgZGllIHZvbSBha3R1ZWxsZW4gQmF1cHJvemVzcyBlcnN0ZWxsdCAiCisjfiAid2VyZGVuLCBkZXIgYXVjaCBCPGRwa2ctc2hsaWJkZXBzPiBhdWZydWZ0LiIKKworI34gbXNnaWQgIiIKKyN+ICJTZWUgSTwvdXNyL3NoYXJlL2RvYy9kcGtnL1RIQU5LUz4gZm9yIHRoZSBsaXN0IG9mIHBlb3BsZSB3aG8gaGF2ZVxuIgorI34gImNvbnRyaWJ1dGVkIHRvIEI8ZHBrZz4uXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJMZXNlbiBTaWUgSTwvdXNyL3NoYXJlL2RvYy9kcGtnL1RIQU5LUz4gZsO8ciBkaWUgTGlzdGUgZGVyIExldXRlLCBkaWUgenVcbiIKKyN+ICJCPGRwa2c+IGJlaWdldHJhZ2VuIGhhYmVuLlxuIgorCisjfiBtc2dpZCAiIgorI34gIlRoaXMgaXMgdmVyeSBoZWxwZnVsIGluIGN1dHRpbmcgb3V0IGV4dHJhbmVvdXMgZmlsZXMgdGhhdCBnZXQgaW5jbHVkZWQgaW4gIgorI34gInRoZSAuZGlmZi5neiwgKGVnOiBcImRlYmlhbi9CVUdTX1RPRE8vKlwiIG9yIFwiZGViaWFuL1JDUy8qLHZcIikuIEZvciAiCisjfiAiaW5zdGFuY2UsIGlmIHlvdSBtYWludGFpbiBhIHBhY2thZ2UgdGhhdCB5b3UgdHJhY2sgdmlhIHJlbW90ZSBDVlMsIHdoZXJlICIKKyN+ICJ5b3UgZG9uJ3QgaGF2ZSBhY2Nlc3MgcGVybWlzc2lvbnMgZm9yIGNvbW1pdHRpbmcgdGhlIGRlYmlhbiBjb250cm9sIGZpbGVzICIKKyN+ICJhbmQgbWFraW5nIHRhZ3MgZm9yIEk8Y3ZzLWJ1aWxkcGFja2FnZSgxKT4sIGl0IGlzIG5lY2Vzc2FyeSB0byBwZXJmb3JtIGFuICIKKyN+ICJleHRyYSBjaGVja291dC91cGRhdGUgaW50byBhIGRpcmVjdG9yeSB5b3Uga2VlcCBwcmlzdGluZSwgdG8gZ2VuZXJhdGUgIgorI34gInRoZSAub3JpZy50YXIuZ3ogZnJvbS4gVGhhdCBkaXJlY3Rvcnkgd2lsbCBoYXZlIENWUy9FbnRyaWVzIGZpbGVzIGluIGl0ICIKKyN+ICJ0aGF0IHdpbGwgY29udGFpbiB0aW1lc3RhbXBzIHRoYXQgZGlmZmVyIGZyb20gdGhlIG9uZXMgaW4geW91ciB3b3JraW5nICIKKyN+ICJkaXJlY3RvcnksIHRodXMgY2F1c2luZyB0aGVtIHRvIGJlIHVubmVjZXNzYXJpbHkgaW5jbHVkZWQgaW4gZXZlcnkgLmRpZmYuIgorI34gImd6LCB1bmxlc3MgeW91IHVzZSB0aGUgQjwtaT4gc3dpdGNoLiIKKyN+IG1zZ3N0ciAiIgorI34gIkRpZXMgaXN0IHNlaHIgaGlsZnJlaWNoLCB1bSB6dXPDpHR6bGljaGUgRGF0ZWllbiBoZXJhdXN6dXNjaG5laWRlbiwgZGllIGluICIKKyN+ICJkZW4gLmRpZmYuZ3ogYXVmZ2Vub21tZW4gd2VyZGVuICh6LkIuIMK7ZGViaWFuL0JVR1NfVE9ETy8qwqsgb2RlciDCu2RlYmlhbi8iCisjfiAiUkNTLyosdsKrKS4gRmFsbHMgU2llIHp1bSBCZWlzcGllbCBlaW4gUGFrZXQgYmV0cmV1ZW4sIGRhcyBTaWUgw7xiZXIgIgorI34gImVudGZlcm50ZXMgQ1ZTIG5hY2h2ZXJmb2xnZW4sIGluIGRlbSBTaWUga2VpbmUgQmVyZWNodGlndW5nIGhhYmVuLCBkaWUgIgorI34gIkRlYmlhbiBTdGV1ZXItRGF0ZWllbiBlaW56dXJlaWNoZW4gdW5kIE1hcmtpZXJ1bmdlbiBmw7xyIEk8Y3ZzLWJ1aWxkcGFja2FnZSIKKyN+ICIoMSk+IHZvcnp1bmVobWVuIGlzdCBlcyBub3R3ZW5kaWcsIGVpbiB6dXPDpHR6bGljaGVzIENoZWNrb3V0L1VwZGF0ZSBpbiAiCisjfiAiZWluIFZlcnplaWNobmlzIHZvcnp1bmVobWVuLCBkYXMgc2llIHVyc3Byw7xuZ2xpY2ggaGFsdGVuLiBEaWVzZXMgIgorI34gIlZlcnplaWNobmlzIHdpcmQgQ1ZTL0VudHJpZXMtRGF0ZWllbiBiZWluaGFsdGVuLCBkaWUgYmVzdGltbXRlICIKKyN+ICJaZWl0c3RlbXBlbCBlbnRoYWx0ZW4sIGRpZSBzaWNoIHZvbSBha3R1ZWxsZW4gVmVyemVpY2huaXMgdW50ZXJzY2hlaWRlbiAiCisjfiAidW5kIGRhaGVyIGRhenUgZsO8aHJlbiwgZGFzcyBkaWVzZSB1bm7DtnRpZ2Vyd2Vpc2UgaW4gamVkZW0gLmRpZmYuZ3ogIgorI34gImVyc2NoZWluZW4sIGZhbGxzIFNpZSBuaWNodCBkZW4gU2NoYWx0ZXIgQjwtaT4gdmVyd2VuZGVuLiIKKworI34gbXNnaWQgIiIKKyN+ICJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgdmVyc2lvbiAyIG9yICIKKyN+ICJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS4iCisjfiBtc2dzdHIgIiIKKyN+ICJEaWVzIGlzdCBGcmVpZSBTb2Z0d2FyZTsgbGVzZW4gU2llIGRpZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBWZXJzaW9uICIKKyN+ICIyIG9kZXIgbmV1ZXIgZsO8ciBkaWUgS29waWVyYmVkaW5ndW5nZW4uIEVzIGdpYnQgS0VJTkUgSGFmdHVuZy4iCisKKyN+IG1zZ2lkICJUaGUgdXRpbGl0aWVzIGFuZCB0aGlzIG1hbnBhZ2Ugd2VyZSB3cml0dGVuIGJ5IElhbiBKYWNrc29uLiIKKyN+IG1zZ3N0ciAiIgorI34gIkRpZXNlIEhpbGZzcHJvZ3JhbW1lIHVuZCBkaWVzZSBIYW5kYnVjaHNlaXRlIHd1cmRlbiB2b24gSWFuIEphY2tzb24gIgorI34gImdlc2NocmllYmVuLiIKKworI34gbXNnaWQgIkI8LS1yb290PT5JPGRpcj4gfCBCPC0tYWRtaW5kaXI9Pkk8ZGlyPiB8IEI8LS1pbnN0ZGlyPT5JPGRpcj4iCisjfiBtc2dzdHIgIkI8LS1yb290PT5JPFZlcno+IHwgQjwtLWFkbWluZGlyPT5JPFZlcno+IHwgQjwtLWluc3RkaXI9Pkk8VmVyej4iCisKKyN+IG1zZ2lkICIiCisjfiAiVGhlc2Ugb3B0aW9ucyBjb250cm9sIHdoZXRoZXIgdGhlIG9yaWdpbmFsIHNvdXJjZSBhcmNoaXZlIGlzIGluY2x1ZGVkIGluICIKKyN+ICJ0aGUgdXBsb2FkIGdlbmVyYXRlZCBieSBCPGRwa2ctYnVpbGRwYWNrYWdlPiBpZiBhbnkgc291cmNlIGlzIGJlaW5nICIKKyN+ICJnZW5lcmF0ZWQgKGkuZS4sIEI8LWI+IG9yIEI8LUI+IGhhdmVuJ3QgYmVlbiB1c2VkKS4iCisjfiBtc2dzdHIgIiIKKyN+ICJEaWVzZSBPcHRpb25lbiBzdGV1ZXJuLCBvYiBkYXMgT3JpZ2luYWwtUXVlbGxhcmNoaXYgZGVtIGR1cmNoIEI8ZHBrZy0iCisjfiAiYnVpbGRwYWNrYWdlPiBnZW5lcmllcnRlbiBVcGxvYWQgaGluenVnZWbDvGd0IHdpcmQsIGZhbGxzIGRpZSBRdWVsbGVuICIKKyN+ICJlcnpldWd0IHdlcmRlbiAoZC5oLiBCPC1iPiBvciBCPC1CPiBuaWNodCB2ZXJ3ZW5kZXQgd3VyZGVuKS4iCisKKyN+IG1zZ2lkICIiCisjfiAiSW5jbHVkZSB0aGUgb3JpZ2luYWwgc291cmNlIGlmIHRoZSB2ZXJzaW9uIG51bWJlciBlbmRzIGluIEI8LTA+IG9yIEI8LTE+LCAiCisjfiAiaS5lLiBpZiB0aGUgRGViaWFuIHJldmlzaW9uIHBhcnQgb2YgdGhlIHZlcnNpb24gbnVtYmVyIGlzIEI8MD4gb3IgQjwxPi4gICIKKyN+ICJCPFRoaXMgaXMgdGhlIGRlZmF1bHQuPiIKKyN+IG1zZ3N0ciAiIgorI34gIk5laG1lIGRpZSBPcmlnaW5hbHF1ZWxsZW4gaGluenUsIGZhbGxzIGRpZSBWZXJzaW9uc251bW1lciBhdWYgQjwtMD4gb2RlciAiCisjfiAiQjwtMT4gZW5kZXQsIGQuaC4gZmFsbHMgZGVyIERlYmlhbi1SZXZpc2lvbnNhbnRlaWwgZGVyIFZlcnNpb25zbnVtbWVyICIKKyN+ICJCPDA+IG9kZXIgQjwxPiBsYXV0ZXQuIEI8RGllcyBpc3QgZGllIFN0YW5kYXJkZWluc3RlbGx1bmcuPiIKKworI34gbXNnaWQgIiIKKyN+ICJCPGRwa2ctZGViPiBhbmQgdGhpcyBtYW5wYWdlIHdlcmUgd3JpdHRlbiBieSBJYW4gSmFja3Nvbi4gIFRoZXkgYXJlICIKKyN+ICJDb3B5cmlnaHQgKEMpIDE5OTUtMTk5NiBieSBoaW0gYW5kIHJlbGVhc2VkIHVuZGVyIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgIgorI34gIkxpY2VuY2UgdmVyc2lvbiAyIG9yIGxhdGVyOyB0aGVyZSBpcyBOTyBXQVJSQU5UWS4gU2VlIEk8L3Vzci9zaGFyZS9kb2MvIgorI34gImRwa2cvY29weXJpZ2h0PiBhbmQgSTwvdXNyL3NoYXJlL2NvbW1vbi1saWNlbnNlcy9HUEw+IGZvciBkZXRhaWxzLiIKKyN+IG1zZ3N0ciAiIgorI34gIkI8ZHBrZy1kZWI+IHVuZCBkaWVzZSBIYW5kYnVjaHNlaXRlIHd1cmRlbiB2b24gSWFuIEphY2tzb24gZ2VzY2hyaWViZW4uICIKKyN+ICJTaWUgdW50ZXJsaWVnZW4gZGVtIENvcHlyaWdodCAoQykgMTk5NS0xOTk2IHZvbiBpaG0gdW5kIHNpbmQgdW50ZXIgZGVyICIKKyN+ICJHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBWZXJzaW9uIDIgb2RlciBuZXVlciB2ZXLDtmZmZW50bGljaHQ7IGVzIGdpYnQgIgorI34gIktFSU5FIEhBRlRVTkcuIExlc2VuIFNpZSBJPC91c3Ivc2hhcmUvZG9jL2Rwa2cvY29weXJpZ2h0PiB1bmQgSTwvdXNyLyIKKyN+ICJzaGFyZS9jb21tb24tbGljZW5zZXMvR1BMPiBmw7xyIERldGFpbHMuIgorCisjfiBtc2dpZCAiIgorI34gIkI8LXNhPiBmb3JjZXMgdGhlIGluY2x1c2lvbiBvZiB0aGUgb3JpZ2luYWwgc291cmNlOyBCPC1zZD4gZm9yY2VzIGl0cyAiCisjfiAiZXhjbHVzaW9uIGFuZCBpbmNsdWRlcyBvbmx5IHRoZSBkaWZmLiIKKyN+IG1zZ3N0ciAiIgorI34gIkI8LXNhPiBlcnp3aW5ndCBkaWUgSGluenVuYWhtZSBkZXIgT3JpZ2luYWxxdWVsbGVuOyBCPC1zZD4gZXJ6d2luZ3QgZGVyZW4gIgorI34gIkZvcnRsYXNzdW5nIHVuZCBlbnRow6RsdCBudXIgZGVuIERpZmYuIgorCisjfiBtc2dpZCAiIgorI34gIkNvcHlyaWdodCAxOTk1LDE5OTYgRXJpY2sgQnJhbmRlcmhvcnN0LiAgQjxkcGtnLW5hbWU+IGlzIGZyZWUgc29mdHdhcmU7ICIKKyN+ICJzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbmNlIHZlcnNpb24gMiBvciBsYXRlciBmb3IgY29weWluZyAiCisjfiAiY29uZGl0aW9ucy4gVGhlcmUgaXMgQjxubz4gd2FycmFudHkuIgorI34gbXNnc3RyICIiCisjfiAiQ29weXJpZ2h0IDE5OTUsMTk5NiBFcmljayBCcmFuZGVyaG9yc3QuIEI8ZHBrZy1uYW1lPiBpc3QgRnJlaWUgU29mdHdhcmU7ICIKKyN+ICJsZXNlbiBTaWUgZGllIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIFZlcnNpb24gMiBvZGVyIG5ldWVyIGbDvHIgZGllICIKKyN+ICJLb3BpZXJiZWRpbmd1bmdlbi4gRXMgZ2lidCBCPGtlaW5lPiBIYWZ0dW5nLiIKKworI34gbXNnaWQgIiIKKyN+ICJCPGRwa2ctc3BsaXQ+IGFuZCB0aGlzIG1hbnBhZ2Ugd2VyZSB3cml0dGVuIGJ5IElhbiBKYWNrc29uLiBUaGV5IGFyZSAiCisjfiAiQ29weXJpZ2h0IChDKSAxOTk1LTE5OTYgYnkgaGltIGFuZCByZWxlYXNlZCB1bmRlciB0aGUgR05VIEdlbmVyYWwgUHVibGljICIKKyN+ICJMaWNlbmNlIHZlcnNpb24gMiBvciBsYXRlcjsgdGhlcmUgaXMgTk8gV0FSUkFOVFkuIFNlZSBJPC91c3Ivc2hhcmUvZG9jLyIKKyN+ICJkcGtnL2NvcHlyaWdodD4gYW5kIEk8L3Vzci9zaGFyZS9jb21tb24tbGljZW5zZXMvR1BMPiBmb3IgZGV0YWlscy4iCisjfiBtc2dzdHIgIiIKKyN+ICJCPGRwa2ctc3BsaXQ+IHVuZCBkaWVzZSBIYW5kYnVjaHNlaXRlIHd1cmRlbiB2b24gSWFuIEphY2tzb24gZ2VzY2hyaWViZW4uICIKKyN+ICJTaWUgdW50ZXJsaWVnZW4gZGVtIENvcHlyaWdodCAoQykgMTk5NS0xOTk2IHZvbiBpaG0gdW5kIHNpbmQgdW50ZXIgZGVyICIKKyN+ICJHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBWZXJzaW9uIDIgb2RlciBuZXVlciB2ZXLDtmZmZW50bGljaHQ7IGVzIGdpYnQgIgorI34gIktFSU5FIEhBRlRVTkcuIExlc2VuIFNpZSBJPC91c3Ivc2hhcmUvZG9jL2Rwa2cvY29weXJpZ2h0PiB1bmQgSTwvdXNyLyIKKyN+ICJzaGFyZS9jb21tb24tbGljZW5zZXMvR1BMPiBmw7xyIERldGFpbHMuIgorCisjfiBtc2dpZCAiIgorI34gIkNvcHlyaWdodCAxOTk0LCBJYW4gSmFja3Nvbi4gIEI8aW5zdGFsbC1pbmZvPiBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlICIKKyN+ICJHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSB2ZXJzaW9uIDIgb3IgbGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gIgorI34gIlRoZXJlIGlzIEk8bm8+IHdhcnJhbnR5LiIKKyN+IG1zZ3N0ciAiIgorI34gIkNvcHlyaWdodCAxOTk0LCBJYW4gSmFja3Nvbi4gQjxpbnN0YWxsLWluZm8+IGlzdCBGcmVpZSBTb2Z0d2FyZTsgbGVzZW4gIgorI34gIlNpZSBkaWUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgVmVyc2lvbiAyIG9kZXIgbmV1ZXIgZsO8ciBkaWUgIgorI34gIktvcGllcmJlZGluZ3VuZ2VuLiBFcyBnaWJ0IEk8a2VpbmU+IEhhZnR1bmcuIgorCisjfiBtc2dpZCAiIgorI34gIkRlYmlhbiB1cGRhdGUtYWx0ZXJuYXRpdmVzIGlzIGNvcHlyaWdodCAxOTk1IElhbiBKYWNrc29uLiBJdCBpcyBmcmVlICIKKyN+ICJzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSB2ZXJzaW9uIDIgb3IgbGF0ZXIgZm9yICIKKyN+ICJjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LiIKKyN+IG1zZ3N0ciAiIgorI34gIkRlYmlhbiB1cGRhdGUtYWx0ZXJuYXRpdmVzIHVudGVybGllZ3QgZGVtIENvcHlyaWdodCAxOTk1IHZvbiBJYW4gSmFja3Nvbi4gIgorI34gIkVzIGlzdCBGcmVpZSBTb2Z0d2FyZTsgbGVzZW4gU2llIGRpZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBWZXJzaW9uIDIgIgorI34gIm9kZXIgbmV1ZXIgZsO8ciBkaWUgS29waWVyYmVkaW5ndW5nZW4uIEVzIGdpYnQgS0VJTkUgSEFGVFVORy4iCisKKyN+IG1zZ2lkICIiCisjfiAiVGhpcyBtYW51YWwgcGFnZSBpcyBjb3B5cmlnaHQgMTk5Ny85OCBDaGFybGVzIEJyaXNjb2UtU21pdGguICBUaGlzIGlzICIKKyN+ICJmcmVlIGRvY3VtZW50YXRpb247IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgdmVyc2lvbiAyIG9yIGxhdGVyICIKKyN+ICJmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyBXQVJSQU5UWS4iCisjfiBtc2dzdHIgIiIKKyN+ICJEaWVzZSBIYW5kYnVjaHNlaXRlIHVudGVybGllZ3QgZGVtIENvcHlyaWdodCAxOTk3Lzk4IHZvbiBDaGFybGVzIEJyaXNjb2UtIgorI34gIlNtaXRoLiBEaWVzIGlzdCBGcmVpZSBEb2t1bWVudGF0aW9uOyBsZXNlbiBTaWUgZGllIEdOVSBHZW5lcmFsIFB1YmxpYyAiCisjfiAiTGljZW5zZSBWZXJzaW9uIDIgb2RlciBuZXVlciBmw7xyIGRpZSBLb3BpZXJiZWRpbmd1bmdlbi4gRXMgZ2lidCBLRUlORSAiCisjfiAiSEFGVFVORy4iCisKKyN+IG1zZ2lkICIiCisjfiAiWW91IGNhbiBmaW5kIHRoZSBHTlUgR1BMIGluIC91c3Ivc2hhcmUvY29tbW9uLWxpY2Vuc2VzL0dQTCBvbiBhbnkgRGViaWFuICIKKyN+ICJzeXN0ZW0uIgorI34gbXNnc3RyICIiCisjfiAiU2llIGvDtm5uZW4gZGllIEdOVSBHUEwgYXVmIERlYmlhbi1TeXN0ZW1lbiB1bnRlciAvdXNyL3NoYXJlL2NvbW1vbi0iCisjfiAibGljZW5zZXMvR1BMIGZpbmRlbi4iCisKKyN+IG1zZ2lkICIiCisjfiAiZHBrZy1zY2Fuc291cmNlcyAtIHNlYXJjaCBmb3IgJy5kc2MnIGZpbGVzIGFuZCBidWlsZCB0aGUgJ1NvdXJjZXMnIGluZGV4IgorI34gbXNnc3RyICIiCisjfiAiZHBrZy1zY2Fuc291cmNlcyAtIHN1Y2hlIG5hY2ggwrsuZHNjwqstRGF0ZWllbiB1bmQgYmF1ZSBkZW4gwrtTb3VyY2VzwqstSW5kZXgiCisKKyN+IG1zZ2lkICJJPFN0YW5kYXJkIGZvciB0aGUgRm9ybWF0IG9mIEFSUEEgSW50ZXJuZXQgVGV4dCBNZXNzYWdlcz4gKFJGQzgyMiksIgorI34gbXNnc3RyICJJPFN0YW5kYXJkIGZvciB0aGUgRm9ybWF0IG9mIEFSUEEgSW50ZXJuZXQgVGV4dCBNZXNzYWdlcz4gKFJGQzgyMiksIgorCisjfiBtc2dpZCAiIgorI34gIkk8UmVxdWlyZW1lbnRzIGZvciBJbnRlcm5ldCBIb3N0cyAtLSBBcHBsaWNhdGlvbiBhbmQgU3VwcG9ydD4gKFJGQzExMjMpICIKKyN+ICJzZWN0aW9uIDUuMi4xNCwiCisjfiBtc2dzdHIgIiIKKyN+ICJJPFJlcXVpcmVtZW50cyBmb3IgSW50ZXJuZXQgSG9zdHMgLS0gQXBwbGljYXRpb24gYW5kIFN1cHBvcnQ+IChSRkMxMTIzKSAiCisjfiAiQWJzY2huaXR0IDUuMi4xNCwiCisKKyN+IG1zZ2lkICIiCisjfiAiQjw4MjItZGF0ZT4gYW5kIHRoaXMgbWFucGFnZSB3ZXJlIHdyaXR0ZW4gYnkgSWFuIEphY2tzb24uIFRoZXkgYXJlIGhlcmVieSAiCisjfiAicGxhY2VkIGJ5IGhpbSBpbnRvIHRoZSBwdWJsaWMgZG9tYWluLiIKKyN+IG1zZ3N0ciAiIgorI34gIkI8ODIyLWRhdGU+IHVuZCBkaWVzZSBIYW5kYnVjaHNlaXRlIHd1cmRlbiB2b24gSWFuIEphY2tzb24gZ2VzY2hyaWViZW4uICIKKyN+ICJTaWUgd2VyZGVuIGhpZXJtaXQgdm9uIGlobSBsaXplbnpmcmVpIHp1ciBWZXJmw7xndW5nIGdlc3RlbGx0LiIKKworI34gbXNnaWQgIiIKKyN+ICJCPGNsZWFudXAtaW5mbz4gW0I8LS1oZWxwPl0gW0I8LS11bnNhZmU+XSBbQjwtLXZlcnNpb24+XSBbQjwtLT5dICIKKyN+ICJbSTxFPGx0PmRpcm5hbWVFPGd0Pj5dIgorI34gbXNnc3RyICIiCisjfiAiQjxjbGVhbnVwLWluZm8+IFtCPC0taGVscD5dIFtCPC0tdW5zYWZlPl0gW0I8LS12ZXJzaW9uPl0gW0I8LS0+XSAiCisjfiAiW0k8RTxsdD5WZXJ6ZWljaG5pc25hbWU8Z3Q+Pl0iCisKKyN+IG1zZ2lkICJPdXRwdXQgdGhlIGhlbHAgc2NyZWVuIGFuZCBleGl0IHN1Y2Nlc3NmdWxseS4iCisjfiBtc2dzdHIgIkdlYmUgZGVuIEhpbGZlYmlsZHNjaGlybSBhdXMgdW5kIGJlZW5kZSBzaWNoIGVyZm9sZ3JlaWNoLiIKKworI34gbXNnaWQgIk91dHB1dCB2ZXJzaW9uIGFuZCBleGl0IHN1Y2Nlc3NmdWxseS4iCisjfiBtc2dzdHIgIkdlYmUgZGllIFZlcnNpb24gYXVzIHVuZCBiZWVuZGUgc2ljaCBlcmZvbGdyZWljaCIKKworI34gbXNnaWQgIlByaW50IGEgdXNhZ2UgbWVzc2FnZS4iCisjfiBtc2dzdHIgIkdlYmUgZWluZW4gQmVkaWVudW5nc2hpbndlaXMgYXVzLlxuIgorCisjfiBtc2dpZCAiUHJpbnQgcHJvZ3JhbSB2ZXJzaW9uLiIKKyN+IG1zZ3N0ciAiWmVpZ2UgZGllIFByb2dyYW1tLVZlcnNpb24uIgorCisjfiBtc2dpZCAiQjxkcGtnLWRlYj4gQjwtVz58QjwtLXNob3c+IFtCPC0tc2hvd2Zvcm1hdD49STxmb3JtYXQ+XSBJPGFyY2hpdmU+IgorI34gbXNnc3RyICJCPGRwa2ctZGViPiBCPC1XPnxCPC0tc2hvdz4gW0I8LS1zaG93Zm9ybWF0Pj1JPEZvcm1hdD5dIEk8QXJjaGl2PiIKKworI34gbXNnaWQgIiIKKyN+ICJCPGRwa2ctZGViPiBCPC14PnxCPC0tZXh0cmFjdD58QjwtWD58QjwtLXZleHRyYWN0PiBJPGFyY2hpdmUgZGlyZWN0b3J5PiIKKyN+IG1zZ3N0ciAiIgorI34gIkI8ZHBrZy1kZWI+IEI8LXg+fEI8LS1leHRyYWN0PnxCPC1YPnxCPC0tdmV4dHJhY3Q+IEk8QXJjaGl2LVZlcnplaWNobmlzPiIKKworI34gbXNnaWQgIiIKKyN+ICJQcmludHMgQjxkcGtnLWRlYj4ncyB1c2FnZSBtZXNzYWdlLCBnaXZpbmcgYSBzdW1tYXJ5IG9mIGl0cyBvcHRpb25zIGFuZCAiCisjfiAidGhlaXIgdXNlcy4iCisjfiBtc2dzdHIgIiIKKyN+ICJHaWJ0IGVpbmVuIEJlZGllbnVuZ3NoaW53ZWlzLCBtaXQgZWluZXIgWnVzYW1tZW5mYXNzdW5nIHNlaW5lciBPcHRpb25lbiAiCisjfiAidW5kIGRlcmVuIFZlcndlbmR1bmdlbiwgYXVzLiIKKworI34gbXNnaWQgIlByaW50cyBCPGRwa2ctZGViPidzIHZlcnNpb24gbnVtYmVyLiIKKyN+IG1zZ3N0ciAiR2lidCBCPGRwa2ctZGViPidzIFZlcnNpb25zbnVtbWVyIGF1cy4iCisKKyN+IG1zZ2lkICJCPGRwa2ctZGl2ZXJ0PiBbSTxvcHRpb25zPl0gQjwtLXJlbW92ZT4gSTxFPGx0PmZpbGVFPGd0Pj4iCisjfiBtc2dzdHIgIkI8ZHBrZy1kaXZlcnQ+IFtJPE9wdGlvbmVuPl0gQjwtLXJlbW92ZT4gSTxFPGx0PkRhdGVpRTxndD4+IgorCisjfiBtc2dpZCAiQjxkcGtnLWRpdmVydD4gW0k8b3B0aW9ucz5dIEI8LS1saXN0PiBJPEU8bHQ+Z2xvYi1wYXR0ZXJuRTxndD4+IgorI34gbXNnc3RyICJCPGRwa2ctZGl2ZXJ0PiBbSTxPcHRpb25lbj5dIEI8LS1saXN0PiBJPEU8bHQ+R2xvYi1NdXN0ZXJFPGd0Pj4iCisKKyN+IG1zZ2lkICJCPGRwa2ctZGl2ZXJ0PiBbSTxvcHRpb25zPl0gQjwtLXRydWVuYW1lPiBJPEU8bHQ+ZmlsZUU8Z3Q+PiIKKyN+IG1zZ3N0ciAiQjxkcGtnLWRpdmVydD4gW0k8T3B0aW9uZW4+XSBCPC0tdHJ1ZW5hbWU+IEk8RTxsdD5EYXRlaUU8Z3Q+PiIKKworI34gbXNnaWQgIiIKKyN+ICJCPGRwa2ctZGl2ZXJ0PiBpcyB0aGUgdXRpbGl0eSB1c2VkIHRvIHNldCB1cCBhbmQgdXBkYXRlIHRoZSBsaXN0IG9mICIKKyN+ICJkaXZlcnNpb25zLiBJdCBmdW5jdGlvbnMgaW4gdGhyZWUgYmFzaWMgbW9kZXMgLSBhZGRpbmcsIHJlbW92aW5nLCBhbmQgIgorI34gImxpc3RpbmcgZGl2ZXJzaW9ucy4gIFRoZSBvcHRpb25zIGFyZSBCPC0tYWRkPiwgQjwtLXJlbW92ZT4sIGFuZCBCPC0tIgorI34gImxpc3Q+LCByZXNwZWN0aXZlbHkuIEFkZGl0aW9uYWxseSwgaXQgY2FuIHByaW50IG91dCB0aGUgcmVhbCBuYW1lIGZvciBhICIKKyN+ICJkaXZlcnRlZCBmaWxlIHdpdGggQjwtLXRydWVuYW1lPi4gT3RoZXIgb3B0aW9ucyAobGlzdGVkIGJlbG93KSBtYXkgYWxzbyAiCisjfiAiYmUgc3BlY2lmaWVkLiIKKyN+IG1zZ3N0ciAiIgorI34gIkI8ZHBrZy1kaXZlcnQ+IGlzdCBkYXMgSGlsZnN3ZXJremV1ZywgZGFzIGRhenUgdmVyd2VuZGV0IHdpcmQsIGRpZSBMaXN0ZSAiCisjfiAiZGVyIFVtbGVpdHVuZ2VuIHp1IGVyc3RlbGxlbiB1bmQgenUgYWt0dWFsaXNpZXJlbi4gRXMgZnVua3Rpb25pZXJ0IGluICIKKyN+ICJkcmVpIGdydW5kbGVnZW5kZW4gTW9kaTogSGluenVmw7xnZW4sIEVudGZlcm5lbiB1bmQgQXVmbGlzdGVuIHZvbiAiCisjfiAiVW1sZWl0dW5nZW4uIERpZSBPcHRpb25lbiBzaW5kIHJlc3Bla3RpdmUgQjwtLWFkZD4sIEI8LS1yZW1vdmU+IHVuZCBCPC0tIgorI34gImxpc3Q+LiBadXPDpHR6bGljaCBrYW5uIGVzIGRlbiBlY2h0ZW4gTmFtZW4gZsO8ciBlaW5lIHVtZ2VsZWl0ZXRlIERhdGVpIG1pdCAiCisjfiAiQjwtLXRydWVuYW1lPiBhdXNnZWJlbi4gQW5kZXJlIE9wdGlvbmVuICh1bnRlbiBhdWZnZWbDvGhydCkga8O2bm5lbiBhdWNoICIKKyN+ICJhbmdlZ2ViZW4gd2VyZGVuLiIKKworI34gbXNnaWQgIk91dHB1dCBzaG9ydCB1c2FnZSBpbnN0cnVjdGlvbnMsIGFuZCBleGl0IHN1Y2Nlc3NmdWxseS4iCisjfiBtc2dzdHIgIkdlYmUga3VyemUgQmVkaWVudW5nc2Fud2Vpc3VuZ2VuIGF1cyB1bmQgYmVlbmRlIHNpY2ggZXJmb2xncmVpY2guIgorCisjfiBtc2dpZCAiT3V0cHV0IHByb2dyYW0gbmFtZSBhbmQgdmVyc2lvbiBhbmQgZXhpdCBzdWNjZXNzZnVsbHkuIgorI34gbXNnc3RyICJHaWJ0IFByb2dyYW1tbmFtZW4gdW5kIFZlcnNpb24gYXVzIHVuZCBiZWVuZGUgc2ljaCBlcmZvbGdyZWljaCIKKworI34gbXNnaWQgIiIKKyN+ICJCPGRwa2ctbmFtZT4gW0I8LWE+fEI8LS1uby1hcmNoaXRlY3R1cmU+XSBbQjwtbz58QjwtLW92ZXJ3cml0ZT5dIFtCPC1zPnwiCisjfiAiQjwtLXN1YmRpcj4gW0k8ZGlyPl1dIFtCPC1jPnxCPC0tY3JlYXRlLWRpcj5dIFtCPC1oPnxCPC0taGVscD5dIFtCPC12PnwiCisjfiAiQjwtLXZlcnNpb24+XSBbQjwtbD58QjwtLWxpY2Vuc2U+XSBbQjwtaz58QjwtLXN5bWxpbms+XSBbQjwtLT5dIFtJPGZpbGVzPl0iCisjfiBtc2dzdHIgIiIKKyN+ICJCPGRwa2ctbmFtZT4gW0I8LWE+fEI8LS1uby1hcmNoaXRlY3R1cmU+XSBbQjwtbz58QjwtLW92ZXJ3cml0ZT5dIFtCPC1zPnwiCisjfiAiQjwtLXN1YmRpcj4gW0k8VmVyemVpY2huaXM+XV0gW0I8LWM+fEI8LS1jcmVhdGUtZGlyPl0gW0I8LWg+fEI8LS1oZWxwPl0gIgorI34gIltCPC12PnxCPC0tdmVyc2lvbj5dIFtCPC1sPnxCPC0tbGljZW5zZT5dIFtCPC1rPnxCPC0tc3ltbGluaz5dIFtCPC0tPl0gIgorI34gIltJPERhdGVpZW4+XSIKKworI34gbXNnaWQgIlByaW50IGEgdXNhZ2UgbWVzc2FnZSBhbmQgZXhpdCBzdWNjZXNzZnVsbHkuIgorI34gbXNnc3RyICJHZWJlIGVpbmVuIEJlZGllbnVuZ3NoaW53ZWlzIGF1cyB1bmQgYmVlbmRlIHNpY2ggZXJmb2xncmVpY2guIgorCisjfiBtc2dpZCAiIgorI34gIlByaW50IGNvcHlyaWdodCBpbmZvcm1hdGlvbiBhbmQgKGEgcmVmZXJlbmNlIHRvIEdOVSkgbGljZW5zZSBpbmZvcm1hdGlvbiAiCisjfiAiYW5kIGV4aXQgc3VjY2Vzc2Z1bGx5LiIKKyN+IG1zZ3N0ciAiIgorI34gIkdlYmUgQ29weXJpZ2h0LUluZm9ybWF0aW9uZW4gYXVzIHVuZCAoZWluZSBSZWZlcmVueiBhdWYgR05VLSkiCisjfiAiTGl6ZW56aW5mb3JtYXRpb25lbiB1bmQgYmVlbmRlIHNpY2ggZXJmb2xncmVpY2guIgorCisjfiBtc2dpZCAiRGlzcGxheSBsaWNlbmNlIGFuZCBjb3B5cmlnaHQgaW5mb3JtYXRpb24uIgorI34gbXNnc3RyICJHZWJlIExpemVuei0gdW5kIENvcHlyaWdodC1JbmZvcm1hdGlvbmVuIGF1cy4iCisKKyN+IG1zZ2lkICJEaXNwbGF5IHZlcnNpb24gaW5mb3JtYXRpb24uIgorI34gbXNnc3RyICJHaWJ0IFZlcnNpb25zaW5mb3JtYXRpb25lbiBhdXMuIgorCisjfiBtc2dpZCAiIgorI34gIkI8ZHBrZy1zY2FucGFja2FnZXM+IFtCPC11Pl0gW0I8LWE+IEk8RTxsdD5hcmNoRTxndD4+IF0gW0I8LW0+XSAiCisjfiAiSTxiaW5hcnlkaXI+IEk8b3ZlcnJpZGVmaWxlPiBbSTxwYXRocHJlZml4Pl0gQjxFPGd0Pj4gSTxQYWNrYWdlcz4iCisjfiBtc2dzdHIgIiIKKyN+ICJCPGRwa2ctc2NhbnBhY2thZ2VzPiBbQjwtdT5dIFtCPC1hPiBJPEU8bHQ+QXJjaEU8Z3Q+PiBdIFtCPC1tPl0gSTxCaW7DpHItIgorI34gIlZlcno+IEk8T3ZlcnJpZGUtRGF0ZWk+IFtJPFBmYWQtUHLDpGZpeD5dIEI8RTxndD4+IEk8UGFja2FnZXM+IgorCisjfiBtc2dpZCAiIgorI34gIldoZW4gQjwtYT5JPEU8bHQ+YXJjaEU8Z3Q+PiBpcyBzcGVjaWZpZWQsIHRoZW4gaW5zdGVhZCBvZiBzY2FubmluZyBmb3IgIgorI34gImFsbCBkZWJzLCBhIHBhdHRlcm4gY29uc2lzdGluZyBvZiAqX2FsbC5kZWIgYW5kICpfYXJjaC5kZWIgaXMgdXNlZC4iCisjfiBtc2dzdHIgIiIKKyN+ICJXZW5uIEI8LWE+STxFPGx0PkFyY2hFPGd0Pj4gYW5nZWdlYmVuIGlzdCwgZGFubiB3aXJkIGVpbiBNdXN0ZXIgYmVzdGVoZW5kICIKKyN+ICJhdXMgKl9hbGwuZGViIHVuZCAqX2FyY2guZGViIHZlcndlbmRldCwgYW5zdGF0dCBuYWNoIGFsbGVuIERlYnMgenUgc3VjaGVuLiIKKworI34gbXNnaWQgIlRIRSBPVkVSUklERSBGSUxFIgorI34gbXNnc3RyICJESUUgT1ZFUlJJREUtREFURUkiCisKKyN+IG1zZ2lkICIiCisjfiAiZHBrZy1zb3VyY2UsIGRwa2ctZ2VuY29udHJvbCwgZHBrZy1zaGxpYmRlcHMsIGRwa2ctZ2VuY2hhbmdlcywgZHBrZy0iCisjfiAiYnVpbGRwYWNrYWdlLCBkcGtnLWRpc3RhZGRmaWxlLCBkcGtnLXBhcnNlY2hhbmdlbG9nIC0gRGViaWFuIHNvdXJjZSAiCisjfiAicGFja2FnZSB0b29scyIKKyN+IG1zZ3N0ciAiIgorI34gImRwa2ctc291cmNlLCBkcGtnLWdlbmNvbnRyb2wsIGRwa2ctc2hsaWJkZXBzLCBkcGtnLWdlbmNoYW5nZXMsIGRwa2ctIgorI34gImJ1aWxkcGFja2FnZSwgZHBrZy1kaXN0YWRkZmlsZSwgZHBrZy1wYXJzZWNoYW5nZWxvZyAtIERlYmlhbiBRdWVsbHBha2V0LSIKKyN+ICJXZXJremV1Z2UiCisKKyN+IG1zZ2lkICJDT01NT04gT1BUSU9OUyIKKyN+IG1zZ3N0ciAiR0VNRUlOU0FNRSBPUFRJT05FTiIKKworI34gbXNnaWQgIiIKKyN+ICJNYW55IG9mIHRoZXNlIHByb2dyYW1zIHNoYXJlIG9wdGlvbnM7IHRoZXNlIGFyZSBkZXNjcmliZWQgaGVyZSwgdG9nZXRoZXIgIgorI34gIndpdGggdGhlIHByb2dyYW1zIHRoYXQgYWNjZXB0IHRoZW0uIgorI34gbXNnc3RyICIiCisjfiAiVmllbGUgZGllc2VyIFByb2dyYW1tZSBoYWJlbiBPcHRpb25lbiBnZW1laW5zYW07IGRpZXNlIHNpbmQgaGllciAiCisjfiAiYmVzY2hyaWViZW4sIHp1c2FtbWVuIG1pdCBkZW4gUHJvZ3JhbW1lbiwgZGllIGRpZXNlIGFremVwdGllcmVuLiIKKworI34gbXNnaWQgIiIKKyN+ICJEaXNwbGF5IHRoZSBwYXJ0aWN1bGFyIHByb2dyYW0ncyB1c2FnZSBtZXNzYWdlLCBpbmNsdWRpbmcgYSBzeW5vcHNpcyBvZiAiCisjfiAidGhlIG9wdGlvbnMgaXQgdW5kZXJzdGFuZHMuICBUaGlzIG9wdGlvbiBpcyB1bmRlcnN0b29kIGJ5IGFsbCB0aGUgc291cmNlICIKKyN+ICJwYWNrYWdlIHRvb2xzLiIKKyN+IG1zZ3N0ciAiIgorI34gIlppZWdlIGRlbiBHZWJyYXVjaHNoaW53ZWlzIGbDvHIgZGFzIGJlc3RpbW10ZSBQcm9ncmFtbSBhbiwgZGFydW50ZXIgZWluZSAiCisjfiAiw5xiZXJzaWNodCBkZXIgT3B0aW9uZW4sIGRpZSBlcyB2ZXJzdGVodC4gRGllc2UgT3B0aW9uIHdpcmQgdm9uIGFsbGVuICIKKyN+ICJXZXJremV1Z2VuIGbDvHIgUXVlbGxwYWtldGUgdmVyc3RhbmRlbi4iCisKKyN+IG1zZ2lkICIiCisjfiAiRGlzcGxheSB0aGUgcGFydGljdWxhciBwcm9ncmFtJ3MgdmVyc2lvbiwgaW5jbHVkaW5nIGNvcHlyaWdodCBhbmQgbGljZW5zZSAiCisjfiAiaW5mb3JtYXRpb24uICBUaGlzIG9wdGlvbiBpcyB1bmRlcnN0b29kIGJ5IGFsbCB0aGUgc291cmNlIHBhY2thZ2UgdG9vbHMuIgorI34gbXNnc3RyICIiCisjfiAiWmVpZ2UgZGllIFZlcnNpb24gZGFzIGJlc3RpbW10ZSBQcm9ncmFtbSBhbiwgZGFydW50ZXIgQ29weXJpZ2h0IHVuZCAiCisjfiAiTGl6ZW56LUluZm9ybWF0aW9uZW4uIERpZXNlIE9wdGlvbiB3aXJkIHZvbiBhbGxlbiBXZXJremV1Z2VuIGbDvHIgIgorI34gIlF1ZWxscGFrZXRlIHZlcnN0YW5kZW4uIgorCisjfiBtc2dpZCAiIgorI34gIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSB2ZXJzaW9uIDIgb3IgIgorI34gImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIFdBUlJBTlRZLiBTZWUgQjwvdXNyL3NoYXJlL2RvYy8iCisjfiAiZHBrZy9jb3B5cmlnaHQ+IGFuZCBCPC91c3Ivc2hhcmUvY29tbW9uLWxpY2Vuc2VzL0dQTD4gZm9yIGRldGFpbHMuIgorI34gbXNnc3RyICIiCisjfiAiRGllcyBpc3QgRnJlaWUgU29mdHdhcmU7IGxlc2VuIFNpZSBkaWUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgVmVyc2lvbiAiCisjfiAiMiBvZGVyIG5ldWVyIGbDvHIgZGllIEtvcGllcmJlZGluZ3VuZ2VuLiBFcyBnaWJ0IEtFSU5FIEhBRlRVTkcuIExlc2VuIFNpZSAiCisjfiAiQjwvdXNyL3NoYXJlL2RvYy9kcGtnL2NvcHlyaWdodD4gdW5kIEI8L3Vzci9zaGFyZS9jb21tb24tbGljZW5zZXMvR1BMPiAiCisjfiAiZsO8ciBEZXRhaWxzLiIKKworI34gbXNnaWQgIiIKKyN+ICJQcmludHMgQjxkcGtnLXNwbGl0PidzIHVzYWdlIG1lc3NhZ2UsIGdpdmluZyBhIHN1bW1hcnkgb2YgaXRzIG9wdGlvbnMgYW5kICIKKyN+ICJ0aGVpciB1c2VzLiIKKyN+IG1zZ3N0ciAiIgorI34gIkdpYnQgQjxkcGtnLXNwbGl0PnMgQmVkaWVudW5nc2hpbndlaXMgbWl0IGVpbmVyIFp1c2FtbWVuZmFzc3VuZyBzZWluZXIgIgorI34gIk9wdGlvbmVuIHVuZCBkZXJlbiBWZXJ3ZW5kdW5nZW4gYXVzLiIKKworI34gbXNnaWQgIlByaW50cyBCPGRwa2ctc3BsaXQ+J3MgdmVyc2lvbiBudW1iZXIuIgorI34gbXNnc3RyICJHaWJ0IEI8ZHBrZy1zcGxpdD5zIFZlcnNpb25zbnVtbWVyIGF1cy4iCisKKyN+IG1zZ2lkICIiCisjfiAiQjxkcGtnLXN0YXRvdmVycmlkZT4gW0k8b3B0aW9ucz5dIEI8LS1hZGQ+STwgRTxsdD51c2VyRTxndD4gIgorI34gIkU8bHQ+Z3JvdXBFPGd0PiBFPGx0Pm1vZGVFPGd0PiBFPGx0PmZpbGVFPGd0Pj4iCisjfiBtc2dzdHIgIiIKKyN+ICJCPGRwa2ctc3RhdG92ZXJyaWRlPiBbSTxPcHRpb25lbj5dIEI8LS1hZGQ+STwgRTxsdD5CZW51dHplckU8Z3Q+ICIKKyN+ICJFPGx0PkdydXBwZUU8Z3Q+IEU8bHQ+TW9kdXNFPGd0PiBFPGx0PkRhdGVpRTxndD4+IgorCisjfiBtc2dpZCAiQjxkcGtnLXN0YXRvdmVycmlkZT4gW0k8b3B0aW9ucz5dIEI8LS1yZW1vdmU+STwgRTxsdD5maWxlRTxndD4+IgorI34gbXNnc3RyICJCPGRwa2ctc3RhdG92ZXJyaWRlPiBbSTxPcHRpb25lbj5dIEI8LS1yZW1vdmU+STwgRTxsdD5EYXRlaUU8Z3Q+PiIKKworI34gbXNnaWQgIiIKKyN+ICJCPGRwa2ctc3RhdG92ZXJyaWRlPiBbSTxvcHRpb25zPl0gQjwtLWxpc3Q+IFtJPEU8bHQ+Z2xvYi1wYXR0ZXJuRTxndD4+XSIKKyN+IG1zZ3N0ciAiIgorI34gIkI8ZHBrZy1zdGF0b3ZlcnJpZGU+IFtJPE9wdGlvbmVuPl0gQjwtLWxpc3Q+IFtJPEU8bHQ+R2xvYi1NdXN0ZXJFPGd0Pj5dIgorCisjfiBtc2dpZCAiUHJpbnQgaGVscCBpbmZvcm1hdGlvbjsgdGhlbiBleGl0LiIKKyN+IG1zZ3N0ciAiR2lidCBIaWxmZWluZm9ybWF0aW9uZW4gYXVzIHVuZCBiZWVuZGV0IHNpY2ggZGFubi4iCisKKyN+IG1zZ2lkICJQcmludCB2ZXJzaW9uIGluZm9ybWF0aW9uOyB0aGVuIGV4aXQuIgorI34gbXNnc3RyICJHaWJ0IFZlcnNpb25zaW5mb3JtYXRpb25lbiBhdXMgdW5kIGJlZW5kZXQgc2ljaCBkYW5uLiIKKworI34gbXNnaWQgIiIKKyN+ICJCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IFtJPG9wdGlvbnM+XSBCPC0taW5zdGFsbD4gSTxnZW5uYW1lIHN5bWxpbmsgYWx0ZXJuICIKKyN+ICJwcmlvcml0eT4gW0I8LS1zbGF2ZT4gSTxnZW5uYW1lIHN5bWxpbms+IEk8YWx0ZXJuPl0uLi4iCisjfiBtc2dzdHIgIiIKKyN+ICJCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IFtJPE9wdGlvbmVuPl0gQjwtLWluc3RhbGw+IEk8R2VubmFtZSBTeW1saW5rICIKKyN+ICJBbHRlcm4gUHJpb3JpdMOkdD4gW0I8LS1zbGF2ZT4gSTxHZW5uYW1lIFN5bWxpbms+IEk8QWx0ZXJuPl0uLi4iCisKKyN+IG1zZ2lkICJCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IFtJPG9wdGlvbnM+XSBCPC0tcmVtb3ZlPiBJPG5hbWUgcGF0aD4iCisjfiBtc2dzdHIgIkI8dXBkYXRlLWFsdGVybmF0aXZlcz4gW0k8T3B0aW9uZW4+XSBCPC0tcmVtb3ZlPiBJPE5hbWUgUGZhZD4iCisKKyN+IG1zZ2lkICJCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IFtJPG9wdGlvbnM+XSBCPC0tcmVtb3ZlLWFsbD4gSTxuYW1lPiIKKyN+IG1zZ3N0ciAiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBbSTxPcHRpb25lbj5dIEI8LS1yZW1vdmUtYWxsPiBJPE5hbWU+IgorCisjfiBtc2dpZCAiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBbSTxvcHRpb25zPl0gQjwtLWRpc3BsYXk+IEk8bmFtZT4iCisjfiBtc2dzdHIgIkI8dXBkYXRlLWFsdGVybmF0aXZlcz4gW0k8T3B0aW9uZW4+XSBCPC0tZGlzcGxheT4gSTxOYW1lPiIKKworI34gbXNnaWQgIkI8dXBkYXRlLWFsdGVybmF0aXZlcz4gW0k8b3B0aW9ucz5dIEI8LS1saXN0PiBJPG5hbWU+IgorI34gbXNnc3RyICJCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IFtJPE9wdGlvbmVuPl0gQjwtLWxpc3Q+IEk8TmFtZT4iCisKKyN+IG1zZ2lkICJCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IFtJPG9wdGlvbnM+XSBCPC0tY29uZmlnPiBJPG5hbWU+IgorI34gbXNnc3RyICJCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IFtJPE9wdGlvbmVuPl0gQjwtLWNvbmZpZz4gSTxOYW1lPiIKKworI34gbXNnaWQgIkI8dXBkYXRlLWFsdGVybmF0aXZlcz4gW0k8b3B0aW9ucz5dIEI8LS1zZXQ+IEk8bmFtZSBwYXRoPiIKKyN+IG1zZ3N0ciAiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBbSTxPcHRpb25lbj5dIEI8LS1zZXQ+IEk8TmFtZSBQZmFkPiIKKworI34gbXNnaWQgIiIKKyN+ICJFeGFjdGx5IG9uZSBhY3Rpb24gbXVzdCBiZSBzcGVjaWZpZWQgaWYgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBpcyB0byAiCisjfiAicGVyZm9ybSBhbnkgbWVhbmluZ2Z1bCB0YXNrLiAgQW55IG51bWJlciBvZiB0aGUgY29tbW9uIG9wdGlvbnMgbWF5IGJlICIKKyN+ICJzcGVjaWZpZWQgdG9nZXRoZXIgd2l0aCBhbnkgYWN0aW9uLiIKKyN+IG1zZ3N0ciAiIgorI34gIkdlbmF1IGVpbmUgQWt0aW9uIG11c3MgYW5nZWdlYmVuIHdlcmRlbiwgZmFsbHMgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiAiCisjfiAiZWluZSBzaW5udm9sbGUgQXVmZ2FiZSBlcmbDvGxsZW4gc29sbC4gRWluZSBiZWxpZWJpZ2UgQW56YWhsIHZvbiAiCisjfiAiYWxsZ2VtZWluZW4gT3B0aW9uZW4ga2FubiB6dXNhbW1lbiBtaXQgamVkZXIgQWt0aW9uIHNwZXppZml6aWVydCB3ZXJkZW4uIgorCisjfiBtc2dpZCAiR2l2ZSBzb21lIHVzYWdlIGluZm9ybWF0aW9uLiIKKyN+IG1zZ3N0ciAiR2ViZSBCZW51dHp1bmdzaGlud2Vpc2UiCisKKyN+IG1zZ2lkICJUZWxsIHdoaWNoIHZlcnNpb24gb2YgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiB0aGlzIGlzLiIKKyN+IG1zZ3N0ciAiR2ViZSBkaWUgVmVyc2lvbiB2b24gQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBhdXMuIgorCisjfiBtc2dpZCAiSTxFPGx0PmRpdmVydC10b0U8Z3Q+PiBpcyB0aGUgbmFtZSB1c2VkIGJ5IG90aGVyIHBhY2thZ2VzJyB2ZXJzaW9ucy4iCisjfiBtc2dzdHIgIiIKKyN+ICJJPEU8bHQ+dW16dWxlaXRlbmRlPGd0Pj4gaXN0IGRlciBOYW1lIGRlciBEYXRlaSwgZGVyIHZvbiBWZXJzaW9uZW4gIgorI34gImFuZGVyZXIgUGFrZXRlIGJlbnV0enQgd2lyZC4iCisKKyN+IG1zZ2lkICJTcGVjaWZpZXMgdGhhdCBhbGwgcGFja2FnZXMnIHZlcnNpb25zIGFyZSBkaXZlcnRlZC4iCisjfiBtc2dzdHIgIkdpYnQgYW4sIGRhc3MgZGllIFZlcnNpb25lbiBhdXMgYWxsZW4gUGFrZXRlbiB1bWdlbGVpdGV0IHNpbmQuIgorCisjfiBtc2dpZCAiIgorI34gIkdpdmUgc29tZSB1c2FnZSBpbmZvcm1hdGlvbiAoYW5kIHNheSB3aGljaCB2ZXJzaW9uIG9mIEI8dXBkYXRlLSIKKyN+ICJhbHRlcm5hdGl2ZXM+IHRoaXMgaXMpLiIKKyN+IG1zZ3N0ciAiIgorI34gIkdpYmUgSGlud2Vpc2UgenVyIEJlbnV0enVuZyAodW5kIGVyesOkaGxlLCB3ZWxjaGUgVmVyc2lvbiB2b24gQjx1cGRhdGUtIgorI34gImFsdGVybmF0aXZlcyk+IGRpZXMgaXN0LiIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL3BvL2Rwa2ctbWFuLnBvdCBiL2Rwa2ctMS4xNi4xLjEvbWFuL3BvL2Rwa2ctbWFuLnBvdApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wZDg0NzI5Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vcG8vZHBrZy1tYW4ucG90CkBAIC0wLDAgKzEsMTQ2MzAgQEAKKyMgU09NRSBERVNDUklQVElWRSBUSVRMRQorIyBDb3B5cmlnaHQgKEMpIFlFQVIgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCisjIFRoaXMgZmlsZSBpcyBkaXN0cmlidXRlZCB1bmRlciB0aGUgc2FtZSBsaWNlbnNlIGFzIHRoZSBQQUNLQUdFIHBhY2thZ2UuCisjIEZJUlNUIEFVVEhPUiA8RU1BSUxAQUREUkVTUz4sIFlFQVIuCisjCisjLCBmdXp6eQorbXNnaWQgIiIKK21zZ3N0ciAiIgorIlByb2plY3QtSWQtVmVyc2lvbjogUEFDS0FHRSBWRVJTSU9OXG4iCisiUE9ULUNyZWF0aW9uLURhdGU6IDIwMTEtMDktMjMgMDM6MzgrMDMwMFxuIgorIlBPLVJldmlzaW9uLURhdGU6IFlFQVItTU8tREEgSE86TUkrWk9ORVxuIgorIkxhc3QtVHJhbnNsYXRvcjogRlVMTCBOQU1FIDxFTUFJTEBBRERSRVNTPlxuIgorIkxhbmd1YWdlLVRlYW06IExBTkdVQUdFIDxMTEBsaS5vcmc+XG4iCisiTGFuZ3VhZ2U6IFxuIgorIk1JTUUtVmVyc2lvbjogMS4wXG4iCisiQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PUNIQVJTRVRcbiIKKyJDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiA4Yml0XG4iCisKKyMuIHR5cGU6IFRICisjOiBkZWIuNToxCisjLCBuby13cmFwCittc2dpZCAiZGViIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRICisjOiBkZWIuNToxIGRlYi1jb250cm9sLjU6MyBkZWItc3JjLWNvbnRyb2wuNTozIGRlYi12ZXJzaW9uLjU6NSBkZWItb2xkLjU6MSBkZWItb3ZlcnJpZGUuNToxNSBkZWItc3ltYm9scy41OjIgZGViLXRyaWdnZXJzLjU6MSBkcGtnLjE6MSBkcGtnLWFyY2hpdGVjdHVyZS4xOjEgZHBrZy1idWlsZHBhY2thZ2UuMToxIGRwa2ctZGViLjE6MSBkcGtnLWRpdmVydC44OjEgZHBrZy1nZW5jaGFuZ2VzLjE6MSBkcGtnLWdlbmNvbnRyb2wuMToxIGRwa2ctZ2Vuc3ltYm9scy4xOjIgZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxIGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6MSBkcGtnLW5hbWUuMTo2IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxIGRwa2ctcXVlcnkuMToxIGRwa2ctc2NhbnBhY2thZ2VzLjE6MTUgZHBrZy1zY2Fuc291cmNlcy4xOjEgZHBrZy1zaGxpYmRlcHMuMToxIGRwa2ctc291cmNlLjE6MiBkcGtnLXRyaWdnZXIuMToxIGRzZWxlY3QuMToxIHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo4CisjLCBuby13cmFwCittc2dpZCAiMjAxMS0wOC0xNCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUSAorIzogZGViLjU6MSBkZWItY29udHJvbC41OjMgZGViLXNyYy1jb250cm9sLjU6MyBkZWItc3BsaXQuNToxIGRlYi12ZXJzaW9uLjU6NSBkZWItb2xkLjU6MSBkZWItb3ZlcnJpZGUuNToxNSBkZWItZXh0cmEtb3ZlcnJpZGUuNToxIGRlYi1zaGxpYnMuNToxNiBkZWItc3Vic3R2YXJzLjU6MiBkZWItc3ltYm9scy41OjIgZGViLXRyaWdnZXJzLjU6MSBkcGtnLjE6MSBkcGtnLWFyY2hpdGVjdHVyZS4xOjEgZHBrZy5jZmcuNToxIGRwa2ctYnVpbGRmbGFncy4xOjEgZHBrZy1idWlsZHBhY2thZ2UuMToxIGRwa2ctY2hlY2tidWlsZGRlcHMuMToxIGRwa2ctZGlzdGFkZGZpbGUuMToxIGRwa2ctZGViLjE6MSBkcGtnLWRpdmVydC44OjEgZHBrZy1nZW5jaGFuZ2VzLjE6MSBkcGtnLWdlbmNvbnRyb2wuMToxIGRwa2ctZ2Vuc3ltYm9scy4xOjIgZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxIGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6MSBkcGtnLW5hbWUuMTo2IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxIGRwa2ctcXVlcnkuMToxIGRwa2ctc2NhbnBhY2thZ2VzLjE6MTUgZHBrZy1zY2Fuc291cmNlcy4xOjEgZHBrZy1zaGxpYmRlcHMuMToxIGRwa2ctc291cmNlLjE6MiBkcGtnLXNwbGl0LjE6MiBkcGtnLXRyaWdnZXIuMToxIGRwa2ctdmVuZG9yLjE6MSBkc2VsZWN0LjE6MSBkc2VsZWN0LmNmZy41OjEgc3RhcnQtc3RvcC1kYWVtb24uODoxIHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo4CisjLCBuby13cmFwCittc2dpZCAiRGViaWFuIFByb2plY3QiCittc2dzdHIgIiIKKworIy4gdHlwZTogVEgKKyM6IGRlYi41OjEgZGViLWNvbnRyb2wuNTozIGRlYi1zcmMtY29udHJvbC41OjMgZGViLXNwbGl0LjU6MSBkZWItdmVyc2lvbi41OjUgZGViLW9sZC41OjEgZHNlbGVjdC4xOjEKKyMsIG5vLXdyYXAKK21zZ2lkICJEZWJpYW4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRlYi41OjIgZGViLWNvbnRyb2wuNTo0IGRlYi1zcmMtY29udHJvbC41OjQgZGViLXNwbGl0LjU6MiBkZWItdmVyc2lvbi41OjYgZGViLW9sZC41OjIgZGViLW92ZXJyaWRlLjU6MTYgZGViLWV4dHJhLW92ZXJyaWRlLjU6MiBkZWItc2hsaWJzLjU6MTcgZGViLXN1YnN0dmFycy41OjMgZGViLXN5bWJvbHMuNTozIGRlYi10cmlnZ2Vycy41OjIgZHBrZy4xOjIgZHBrZy1hcmNoaXRlY3R1cmUuMToyIGRwa2cuY2ZnLjU6MiBkcGtnLWJ1aWxkZmxhZ3MuMToyIGRwa2ctYnVpbGRwYWNrYWdlLjE6MiBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6MiBkcGtnLWRpc3RhZGRmaWxlLjE6MiBkcGtnLWRlYi4xOjIgZHBrZy1kaXZlcnQuODoyIGRwa2ctZ2VuY2hhbmdlcy4xOjIgZHBrZy1nZW5jb250cm9sLjE6MiBkcGtnLWdlbnN5bWJvbHMuMTozIGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjIgZHBrZy1uYW1lLjE6NyBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MiBkcGtnLXF1ZXJ5LjE6MiBkcGtnLXNjYW5wYWNrYWdlcy4xOjE2IGRwa2ctc2NhbnNvdXJjZXMuMToyIGRwa2ctc2hsaWJkZXBzLjE6MiBkcGtnLXNvdXJjZS4xOjMgZHBrZy1zcGxpdC4xOjMgZHBrZy1zdGF0b3ZlcnJpZGUuODoyIGRwa2ctdHJpZ2dlci4xOjIgZHBrZy12ZW5kb3IuMToyIGRzZWxlY3QuMToyIGRzZWxlY3QuY2ZnLjU6MiBzdGFydC1zdG9wLWRhZW1vbi44OjIgdXBkYXRlLWFsdGVybmF0aXZlcy44OjkKKyMsIG5vLXdyYXAKK21zZ2lkICJOQU1FIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi41OjQKK21zZ2lkICJkZWIgLSBEZWJpYW4gYmluYXJ5IHBhY2thZ2UgZm9ybWF0IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkZWIuNTo0IGRlYi1jb250cm9sLjU6NyBkZWItc3JjLWNvbnRyb2wuNTo3IGRlYi1zcGxpdC41OjQgZGViLXZlcnNpb24uNTo5IGRlYi1vbGQuNTo1IGRlYi1vdmVycmlkZS41OjE5IGRlYi1leHRyYS1vdmVycmlkZS41OjUgZGViLXN1YnN0dmFycy41OjYgZGViLXN5bWJvbHMuNTo2IGRlYi10cmlnZ2Vycy41OjUgZHBrZy4xOjUgZHBrZy1hcmNoaXRlY3R1cmUuMTo1IGRwa2ctYnVpbGRmbGFncy4xOjUgZHBrZy1idWlsZHBhY2thZ2UuMTo1IGRwa2ctY2hlY2tidWlsZGRlcHMuMTo1IGRwa2ctZGlzdGFkZGZpbGUuMTo1IGRwa2ctZGViLjE6NSBkcGtnLWRpdmVydC44OjUgZHBrZy1nZW5jaGFuZ2VzLjE6NSBkcGtnLWdlbmNvbnRyb2wuMTo1IGRwa2ctZ2Vuc3ltYm9scy4xOjYgZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMTo1IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6NSBkcGtnLW5hbWUuMToxMCBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6NSBkcGtnLXF1ZXJ5LjE6NSBkcGtnLXNjYW5wYWNrYWdlcy4xOjE5IGRwa2ctc2NhbnNvdXJjZXMuMTo1IGRwa2ctc2hsaWJkZXBzLjE6NSBkcGtnLXNvdXJjZS4xOjYgZHBrZy1zcGxpdC4xOjYgZHBrZy1zdGF0b3ZlcnJpZGUuODo1IGRwa2ctdHJpZ2dlci4xOjUgZHBrZy12ZW5kb3IuMTo1IGRzZWxlY3QuMTo1IHN0YXJ0LXN0b3AtZGFlbW9uLjg6NSB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTIKKyMsIG5vLXdyYXAKK21zZ2lkICJTWU5PUFNJUyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWIuNTo2IGRlYi1zcGxpdC41OjYgZGViLW9sZC41OjcKK21zZ2lkICJJPGZpbGVuYW1lPkI8LmRlYj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRlYi41OjYgZGViLWNvbnRyb2wuNToxMCBkZWItc3JjLWNvbnRyb2wuNToxMCBkZWItc3BsaXQuNTo2IGRlYi12ZXJzaW9uLjU6MTEgZGViLW9sZC41OjggZGViLW92ZXJyaWRlLjU6MjIgZGViLWV4dHJhLW92ZXJyaWRlLjU6OCBkZWItc2hsaWJzLjU6MjAgZGViLXN1YnN0dmFycy41OjkgZGViLXN5bWJvbHMuNTo5IGRlYi10cmlnZ2Vycy41OjggZHBrZy4xOjE5IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTAgZHBrZy5jZmcuNTo1IGRwa2ctYnVpbGRmbGFncy4xOjkgZHBrZy1idWlsZHBhY2thZ2UuMTo5IGRwa2ctY2hlY2tidWlsZGRlcHMuMToxMCBkcGtnLWRpc3RhZGRmaWxlLjE6OSBkcGtnLWRlYi4xOjkgZHBrZy1kaXZlcnQuODoxMCBkcGtnLWdlbmNoYW5nZXMuMToxMCBkcGtnLWdlbmNvbnRyb2wuMTo5IGRwa2ctZ2Vuc3ltYm9scy4xOjEwIGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MTUgZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTo5IGRwa2ctbmFtZS4xOjE2IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo5IGRwa2ctcXVlcnkuMTo5IGRwa2ctc2NhbnBhY2thZ2VzLjE6MjcgZHBrZy1zY2Fuc291cmNlcy4xOjEzIGRwa2ctc2hsaWJkZXBzLjE6OSBkcGtnLXNvdXJjZS4xOjEwIGRwa2ctc3BsaXQuMToxMCBkcGtnLXN0YXRvdmVycmlkZS44OjkgZHBrZy10cmlnZ2VyLjE6MTIgZHBrZy12ZW5kb3IuMTo5IGRzZWxlY3QuMTo5IGRzZWxlY3QuY2ZnLjU6NSBzdGFydC1zdG9wLWRhZW1vbi44OjkgdXBkYXRlLWFsdGVybmF0aXZlcy44OjE2CisjLCBuby13cmFwCittc2dpZCAiREVTQ1JJUFRJT04iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLjU6MTIKK21zZ2lkICIiCisiVGhlIEI8LmRlYj4gZm9ybWF0IGlzIHRoZSBEZWJpYW4gYmluYXJ5IHBhY2thZ2UgZmlsZSBmb3JtYXQuIEl0IGlzICIKKyJ1bmRlcnN0b29kIGJ5IGRwa2cgMC45My43NiBhbmQgbGF0ZXIsIGFuZCBpcyBnZW5lcmF0ZWQgYnkgZGVmYXVsdCBieSBhbGwgIgorInZlcnNpb25zIG9mIGRwa2cgc2luY2UgMS4yLjAgYW5kIGFsbCBpMzg2L0VMRiB2ZXJzaW9ucyBzaW5jZSAxLjEuMWVsZi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLjU6MTYKK21zZ2lkICIiCisiVGhlIGZvcm1hdCBkZXNjcmliZWQgaGVyZSBpcyB1c2VkIHNpbmNlIERlYmlhbiAwLjkzOyBkZXRhaWxzIG9mIHRoZSBvbGQgIgorImZvcm1hdCBhcmUgZGVzY3JpYmVkIGluIEI8ZGViLW9sZD4oNSkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkZWIuNToxNiBkZWItc3BsaXQuNTo5IGRlYi1vbGQuNToxOAorIywgbm8td3JhcAorbXNnaWQgIkZPUk1BVCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWIuNToyMgorbXNnaWQgIiIKKyJUaGUgZmlsZSBpcyBhbiBCPGFyPiBhcmNoaXZlIHdpdGggYSBtYWdpYyB2YWx1ZSBvZiBCPCFFPGx0PmFyY2hFPGd0Pj4uICBUaGUgIgorImZpbGUgbmFtZXMgbWlnaHQgY29udGFpbiBhIHRyYWlsaW5nIHNsYXNoLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWIuNToyOAorbXNnaWQgIiIKKyJUaGUgQjx0YXI+IGFyY2hpdmVzIGN1cnJlbnRseSBhbGxvd2VkIGFyZSwgdGhlIG9sZC1zdHlsZSAodjcpIGZvcm1hdCwgdGhlICIKKyJwcmUtUE9TSVggdXN0YXIgZm9ybWF0LCBhIHN1YnNldCBvZiB0aGUgR05VIGZvcm1hdCAob25seSB0aGUgbmV3IHN0eWxlIGxvbmcgIgorInBhdGhuYW1lcyBhbmQgbG9uZyBsaW5rbmFtZXMsIHN1cHBvcnRlZCBzaW5jZSBkcGtnIDEuNC4xLjE3KSwgYW5kIHRoZSBQT1NJWCAiCisidXN0YXIgZm9ybWF0IChsb25nIG5hbWVzIHN1cHBvcnRlZCBzaW5jZSBkcGtnIDEuMTUuMCkuICBVbnJlY29nbml6ZWQgdGFyICIKKyJ0eXBlZmxhZ3MgYXJlIGNvbnNpZGVyZWQgYW4gZXJyb3IuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi41OjM4Cittc2dpZCAiIgorIlRoZSBmaXJzdCBtZW1iZXIgaXMgbmFtZWQgQjxkZWJpYW4tYmluYXJ5PiBhbmQgY29udGFpbnMgYSBzZXJpZXMgb2YgbGluZXMsICIKKyJzZXBhcmF0ZWQgYnkgbmV3bGluZXMuIEN1cnJlbnRseSBvbmx5IG9uZSBsaW5lIGlzIHByZXNlbnQsIHRoZSBmb3JtYXQgIgorInZlcnNpb24gbnVtYmVyLCBCPDIuMD4gYXQgdGhlIHRpbWUgdGhpcyBtYW51YWwgcGFnZSB3YXMgd3JpdHRlbi4gIFByb2dyYW1zICIKKyJ3aGljaCByZWFkIG5ldy1mb3JtYXQgYXJjaGl2ZXMgc2hvdWxkIGJlIHByZXBhcmVkIGZvciB0aGUgbWlub3IgbnVtYmVyIHRvIGJlICIKKyJpbmNyZWFzZWQgYW5kIG5ldyBsaW5lcyB0byBiZSBwcmVzZW50LCBhbmQgc2hvdWxkIGlnbm9yZSB0aGVzZSBpZiB0aGlzIGlzICIKKyJ0aGUgY2FzZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLjU6NDMKK21zZ2lkICIiCisiSWYgdGhlIG1ham9yIG51bWJlciBoYXMgY2hhbmdlZCwgYW4gaW5jb21wYXRpYmxlIGNoYW5nZSBoYXMgYmVlbiBtYWRlIGFuZCAiCisidGhlIHByb2dyYW0gc2hvdWxkIHN0b3AuIElmIGl0IGhhcyBub3QsIHRoZW4gdGhlIHByb2dyYW0gc2hvdWxkIGJlIGFibGUgdG8gIgorInNhZmVseSBjb250aW51ZSwgdW5sZXNzIGl0IGVuY291bnRlcnMgYW4gdW5leHBlY3RlZCBtZW1iZXIgaW4gdGhlIGFyY2hpdmUgIgorIihleGNlcHQgYXQgdGhlIGVuZCksIGFzIGRlc2NyaWJlZCBiZWxvdy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLjU6NTMKK21zZ2lkICIiCisiVGhlIHNlY29uZCByZXF1aXJlZCBtZW1iZXIgaXMgbmFtZWQgQjxjb250cm9sLnRhci5nej4uICBJdCBpcyBhIGd6aXBwZWQgdGFyICIKKyJhcmNoaXZlIGNvbnRhaW5pbmcgdGhlIHBhY2thZ2UgY29udHJvbCBpbmZvcm1hdGlvbiwgYXMgYSBzZXJpZXMgb2YgcGxhaW4gIgorImZpbGVzLCBvZiB3aGljaCB0aGUgZmlsZSBCPGNvbnRyb2w+IGlzIG1hbmRhdG9yeSBhbmQgY29udGFpbnMgdGhlIGNvcmUgIgorImNvbnRyb2wgaW5mb3JtYXRpb24uIFRoZSBjb250cm9sIHRhcmJhbGwgbWF5IG9wdGlvbmFsbHkgY29udGFpbiBhbiBlbnRyeSBmb3IgIgorImBCPC4+JywgdGhlIGN1cnJlbnQgZGlyZWN0b3J5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWIuNTo2MgorbXNnaWQgIiIKKyJUaGUgdGhpcmQsIGxhc3QgcmVxdWlyZWQgbWVtYmVyIGlzIG5hbWVkIEI8ZGF0YS50YXI+LiAgSXQgY29udGFpbnMgdGhlICIKKyJmaWxlc3lzdGVtIGFzIGEgdGFyIGFyY2hpdmUsIGVpdGhlciBub3QgY29tcHJlc3NlZCAoc3VwcG9ydGVkIHNpbmNlIGRwa2cgIgorIjEuMTAuMjQpLCBvciBjb21wcmVzc2VkIHdpdGggZ3ppcCAod2l0aCBCPC5nej4gZXh0ZW5zaW9uKSwgeHogKHdpdGggQjwueHo+ICIKKyJleHRlbnNpb24sIHN1cHBvcnRlZCBzaW5jZSBkcGtnIDEuMTUuNiksIGJ6aXAyICh3aXRoIEI8LmJ6Mj4gZXh0ZW5zaW9uLCAiCisic3VwcG9ydGVkIHNpbmNlIGRwa2cgMS4xMC4yNCkgb3IgbHptYSAod2l0aCBCPC5sem1hPiBleHRlbnNpb24sIHN1cHBvcnRlZCAiCisic2luY2UgZHBrZyAxLjEzLjI1KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLjU6NzMKK21zZ2lkICIiCisiVGhlc2UgbWVtYmVycyBtdXN0IG9jY3VyIGluIHRoaXMgZXhhY3Qgb3JkZXIuIEN1cnJlbnQgaW1wbGVtZW50YXRpb25zIHNob3VsZCAiCisiaWdub3JlIGFueSBhZGRpdGlvbmFsIG1lbWJlcnMgYWZ0ZXIgQjxkYXRhLnRhcj4uICBGdXJ0aGVyIG1lbWJlcnMgbWF5IGJlICIKKyJkZWZpbmVkIGluIHRoZSBmdXR1cmUsIGFuZCAoaWYgcG9zc2libGUpIHdpbGwgYmUgcGxhY2VkIGFmdGVyIHRoZXNlICIKKyJ0aHJlZS4gQW55IGFkZGl0aW9uYWwgbWVtYmVycyB0aGF0IG1heSBuZWVkIHRvIGJlIGluc2VydGVkIGJlZm9yZSAiCisiQjxkYXRhLnRhcj4gYW5kIHdoaWNoIHNob3VsZCBiZSBzYWZlbHkgaWdub3JlZCBieSBvbGRlciBwcm9ncmFtcywgd2lsbCBoYXZlICIKKyJuYW1lcyBzdGFydGluZyB3aXRoIGFuIHVuZGVyc2NvcmUsIGBCPF8+Jy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLjU6NzkKK21zZ2lkICIiCisiVGhvc2UgbmV3IG1lbWJlcnMgd2hpY2ggd29uJ3QgYmUgYWJsZSB0byBiZSBzYWZlbHkgaWdub3JlZCB3aWxsIGJlIGluc2VydGVkICIKKyJiZWZvcmUgQjxkYXRhLnRhcj4gd2l0aCBuYW1lcyBzdGFydGluZyB3aXRoIHNvbWV0aGluZyBvdGhlciB0aGFuICIKKyJ1bmRlcnNjb3Jlcywgb3Igd2lsbCAobW9yZSBsaWtlbHkpIGNhdXNlIHRoZSBtYWpvciB2ZXJzaW9uIG51bWJlciB0byBiZSAiCisiaW5jcmVhc2VkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZGViLjU6NzkgZGViLWNvbnRyb2wuNToyNzEgZGViLXNyYy1jb250cm9sLjU6MzI3IGRlYi1zcGxpdC41OjQ5IGRlYi12ZXJzaW9uLjU6MTE2IGRlYi1vbGQuNTo1MSBkZWItb3ZlcnJpZGUuNTo2MiBkZWItZXh0cmEtb3ZlcnJpZGUuNTozNyBkZWItc2hsaWJzLjU6NjEgZGViLXN1YnN0dmFycy41OjE1NCBkZWItc3ltYm9scy41OjYxIGRlYi10cmlnZ2Vycy41OjY3IGRwa2cuMTo3NjggZHBrZy1hcmNoaXRlY3R1cmUuMToyOTkgZHBrZy5jZmcuNToyMyBkcGtnLWJ1aWxkcGFja2FnZS4xOjI0OSBkcGtnLWRlYi4xOjI1OSBkcGtnLWRpdmVydC44OjEzMiBkcGtnLWdlbnN5bWJvbHMuMTo0NTAgZHBrZy1uYW1lLjE6OTYgZHBrZy1xdWVyeS4xOjIyMCBkcGtnLXNjYW5wYWNrYWdlcy4xOjExMCBkcGtnLXNjYW5zb3VyY2VzLjE6NzEgZHBrZy1zaGxpYmRlcHMuMTozMjQgZHBrZy1zb3VyY2UuMTo3MjUgZHBrZy1zcGxpdC4xOjIxNyBkcGtnLXN0YXRvdmVycmlkZS44Ojg0IGRwa2ctdHJpZ2dlci4xOjY2IGRzZWxlY3QuMTo0NDUgZHNlbGVjdC5jZmcuNToyMyB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NTA4CisjLCBuby13cmFwCittc2dpZCAiU0VFIEFMU08iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLjU6ODIKK21zZ2lkICJCPGRlYi1vbGQ+KDUpLCBCPGRwa2ctZGViPigxKSwgQjxkZWItY29udHJvbD4oNSkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRICisjOiBkZWItY29udHJvbC41OjMKKyMsIG5vLXdyYXAKK21zZ2lkICJkZWItY29udHJvbCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjYKK21zZ2lkICJkZWItY29udHJvbCAtIERlYmlhbiBwYWNrYWdlcycgbWFzdGVyIGNvbnRyb2wgZmlsZSBmb3JtYXQiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNTo5IGRlYi1zcmMtY29udHJvbC41OjkKK21zZ2lkICJjb250cm9sIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MjQKK21zZ2lkICIiCisiRWFjaCBEZWJpYW4gcGFja2FnZSBjb250YWlucyB0aGUgbWFzdGVyIGBjb250cm9sJyBmaWxlLCB3aGljaCBjb250YWlucyBhICIKKyJudW1iZXIgb2YgZmllbGRzLCBvciBjb21tZW50cyB3aGVuIHRoZSBsaW5lIHN0YXJ0cyB3aXRoIEI8JyMnPi4gRWFjaCBmaWVsZCAiCisiYmVnaW5zIHdpdGggYSB0YWcsIHN1Y2ggYXMgQjxQYWNrYWdlPiBvciBCPFZlcnNpb24+IChjYXNlIGluc2Vuc2l0aXZlKSwgIgorImZvbGxvd2VkIGJ5IGEgY29sb24sIGFuZCB0aGUgYm9keSBvZiB0aGUgZmllbGQuICBGaWVsZHMgYXJlIGRlbGltaXRlZCBvbmx5ICIKKyJieSBmaWVsZCB0YWdzLiBJbiBvdGhlciB3b3JkcywgZmllbGQgdGV4dCBtYXkgYmUgbXVsdGlwbGUgbGluZXMgaW4gbGVuZ3RoLCAiCisiYnV0IHRoZSBpbnN0YWxsYXRpb24gdG9vbHMgd2lsbCBnZW5lcmFsbHkgam9pbiBsaW5lcyB3aGVuIHByb2Nlc3NpbmcgdGhlICIKKyJib2R5IG9mIHRoZSBmaWVsZCAoZXhjZXB0IGluIHRoZSBjYXNlIG9mIHRoZSBCPERlc2NyaXB0aW9uPiBmaWVsZCwgc2VlICIKKyJiZWxvdykuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkZWItY29udHJvbC41OjI1CisjLCBuby13cmFwCittc2dpZCAiUkVRVUlSRUQgRklFTERTIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjI2CisjLCBuby13cmFwCittc2dpZCAiQjxQYWNrYWdlOj5JPCBwYWNrYWdlLW5hbWU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MzAKK21zZ2lkICIiCisiVGhlIHZhbHVlIG9mIHRoaXMgZmllbGQgZGV0ZXJtaW5lcyB0aGUgcGFja2FnZSBuYW1lLCBhbmQgaXMgdXNlZCB0byBnZW5lcmF0ZSAiCisiZmlsZSBuYW1lcyBieSBtb3N0IGluc3RhbGxhdGlvbiB0b29scy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MzAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPFZlcnNpb246Pkk8IHZlcnNpb24tc3RyaW5nPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjM3Cittc2dpZCAiIgorIlR5cGljYWxseSwgdGhpcyBpcyB0aGUgb3JpZ2luYWwgcGFja2FnZSdzIHZlcnNpb24gbnVtYmVyIGluIHdoYXRldmVyIGZvcm0gIgorInRoZSBwcm9ncmFtJ3MgYXV0aG9yIHVzZXMuIEl0IG1heSBhbHNvIGluY2x1ZGUgYSBEZWJpYW4gcmV2aXNpb24gbnVtYmVyIChmb3IgIgorIm5vbi1uYXRpdmUgcGFja2FnZXMpLiBUaGUgZXhhY3QgZm9ybWF0IGFuZCBzb3J0aW5nIGFsZ29yaXRobSBhcmUgZGVzY3JpYmVkICIKKyJpbiBCPGRlYi12ZXJzaW9uPig1KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MzcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPE1haW50YWluZXI6Pkk8IGZ1bGxuYW1lLWVtYWlsPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjQyCittc2dpZCAiIgorIlNob3VsZCBiZSBpbiB0aGUgZm9ybWF0IGBKb2UgQmxvZ2dzIEU8bHQ+amJsb2dnc0Bmb28uY29tRTxndD4nLCBhbmQgaXMgIgorInR5cGljYWxseSB0aGUgcGVyc29uIHdobyBjcmVhdGVkIHRoZSBwYWNrYWdlLCBhcyBvcHBvc2VkIHRvIHRoZSBhdXRob3Igb2YgIgorInRoZSBzb2Z0d2FyZSB0aGF0IHdhcyBwYWNrYWdlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6NDIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPERlc2NyaXB0aW9uOj5JPCBzaG9ydC1kZXNjcmlwdGlvbj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNTo0NQorbXNnaWQgIkI8ID5JPGxvbmctZGVzY3JpcHRpb24+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6NTEKK21zZ2lkICIiCisiVGhlIGZvcm1hdCBmb3IgdGhlIHBhY2thZ2UgZGVzY3JpcHRpb24gaXMgYSBzaG9ydCBicmllZiBzdW1tYXJ5IG9uIHRoZSBmaXJzdCAiCisibGluZSAoYWZ0ZXIgdGhlIFwiRGVzY3JpcHRpb25cIiBmaWVsZCkuIFRoZSBmb2xsb3dpbmcgbGluZXMgc2hvdWxkIGJlIHVzZWQgIgorImFzIGEgbG9uZ2VyLCBtb3JlIGRldGFpbGVkIGRlc2NyaXB0aW9uLiBFYWNoIGxpbmUgb2YgdGhlIGxvbmcgZGVzY3JpcHRpb24gIgorIm11c3QgYmUgcHJlY2VkZWQgYnkgYSBzcGFjZSwgYW5kIGJsYW5rIGxpbmVzIGluIHRoZSBsb25nIGRlc2NyaXB0aW9uIG11c3QgIgorImNvbnRhaW4gYSBzaW5nbGUgJy4nIGZvbGxvd2luZyB0aGUgcHJlY2VkaW5nIHNwYWNlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZGViLWNvbnRyb2wuNTo1MgorIywgbm8td3JhcAorbXNnaWQgIk9QVElPTkFMIEZJRUxEUyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNTo1MyBkZWItc3JjLWNvbnRyb2wuNTo5MAorIywgbm8td3JhcAorbXNnaWQgIkI8U2VjdGlvbjo+STwgc2VjdGlvbj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNTo1OAorbXNnaWQgIiIKKyJUaGlzIGlzIGEgZ2VuZXJhbCBmaWVsZCB0aGF0IGdpdmVzIHRoZSBwYWNrYWdlIGEgY2F0ZWdvcnkgYmFzZWQgb24gdGhlICIKKyJzb2Z0d2FyZSB0aGF0IGl0IGluc3RhbGxzLiBTb21lIGNvbW1vbiBzZWN0aW9ucyBhcmUgYHV0aWxzJywgYG5ldCcsIGBtYWlsJywgIgorImB0ZXh0JywgYHgxMScgZXRjLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNTo1OCBkZWItc3JjLWNvbnRyb2wuNTo5NgorIywgbm8td3JhcAorbXNnaWQgIkI8UHJpb3JpdHk6Pkk8IHByaW9yaXR5PiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjYyCittc2dpZCAiIgorIlNldHMgdGhlIGltcG9ydGFuY2Ugb2YgdGhpcyBwYWNrYWdlIGluIHJlbGF0aW9uIHRvIHRoZSBzeXN0ZW0gYXMgYSB3aG9sZS4gICIKKyJDb21tb24gcHJpb3JpdGllcyBhcmUgYHJlcXVpcmVkJywgYHN0YW5kYXJkJywgYG9wdGlvbmFsJywgYGV4dHJhJyBldGMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6NzEgZGViLXNyYy1jb250cm9sLjU6MTA5Cittc2dpZCAiIgorIkluIERlYmlhbiwgdGhlIEI8U2VjdGlvbj4gYW5kIEI8UHJpb3JpdHk+IGZpZWxkcyBoYXZlIGEgZGVmaW5lZCBzZXQgb2YgIgorImFjY2VwdGVkIHZhbHVlcyBiYXNlZCBvbiB0aGUgUG9saWN5IE1hbnVhbC4gIEEgbGlzdCBvZiB0aGVzZSB2YWx1ZXMgY2FuIGJlICIKKyJvYnRhaW5lZCBmcm9tIHRoZSBsYXRlc3QgdmVyc2lvbiBvZiB0aGUgQjxkZWJpYW4tcG9saWN5PiBwYWNrYWdlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNTo3MSBkZWItc3JjLWNvbnRyb2wuNToyMTYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPEVzc2VudGlhbDo+IEI8eWVzPnxCPG5vPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41Ojc4Cittc2dpZCAiIgorIlRoaXMgZmllbGQgaXMgdXN1YWxseSBvbmx5IG5lZWRlZCB3aGVuIHRoZSBhbnN3ZXIgaXMgQjx5ZXM+LiBJdCBkZW5vdGVzIGEgIgorInBhY2thZ2UgdGhhdCBpcyByZXF1aXJlZCBmb3IgcHJvcGVyIG9wZXJhdGlvbiBvZiB0aGUgc3lzdGVtLiBEcGtnIG9yIGFueSAiCisib3RoZXIgaW5zdGFsbGF0aW9uIHRvb2wgd2lsbCBub3QgYWxsb3cgYW4gQjxFc3NlbnRpYWw+IHBhY2thZ2UgdG8gYmUgcmVtb3ZlZCAiCisiKGF0IGxlYXN0IG5vdCB3aXRob3V0IHVzaW5nIG9uZSBvZiB0aGUgZm9yY2Ugb3B0aW9ucykuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41Ojc4CisjLCBuby13cmFwCittc2dpZCAiQjxBcmNoaXRlY3R1cmU6PiBJPGFyY2g+fEI8YWxsPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41Ojg2Cittc2dpZCAiIgorIlRoZSBhcmNoaXRlY3R1cmUgc3BlY2lmaWVzIHdoaWNoIHR5cGUgb2YgaGFyZHdhcmUgdGhpcyBwYWNrYWdlIHdhcyBjb21waWxlZCAiCisiZm9yLiBDb21tb24gYXJjaGl0ZWN0dXJlcyBhcmUgYGkzODYnLCBgbTY4aycsIGBzcGFyYycsIGBhbHBoYScsIGBwb3dlcnBjJyAiCisiZXRjLiBOb3RlIHRoYXQgdGhlIEI8YWxsPiBvcHRpb24gaXMgbWVhbnQgZm9yIHBhY2thZ2VzIHRoYXQgYXJlIGFyY2hpdGVjdHVyZSAiCisiaW5kZXBlbmRlbnQuIFNvbWUgZXhhbXBsZXMgb2YgdGhpcyBhcmUgc2hlbGwgYW5kIFBlcmwgc2NyaXB0cywgYW5kICIKKyJkb2N1bWVudGF0aW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNTo4NiBkZWItc3JjLWNvbnRyb2wuNTo4NQorIywgbm8td3JhcAorbXNnaWQgIkI8T3JpZ2luOj5JPCBuYW1lPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41Ojg5Cittc2dpZCAiVGhlIG5hbWUgb2YgdGhlIGRpc3RyaWJ1dGlvbiB0aGlzIHBhY2thZ2UgaXMgb3JpZ2luYXRpbmcgZnJvbS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6ODkgZGViLXNyYy1jb250cm9sLjU6NjYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPEJ1Z3M6Pkk8IHVybD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNTo5NAorbXNnaWQgIiIKKyJUaGUgSTx1cmw+IG9mIHRoZSBidWcgdHJhY2tpbmcgc3lzdGVtIGZvciB0aGlzIHBhY2thZ2UuIFRoZSBjdXJyZW50IHVzZWQgIgorImZvcm1hdCBpcyBJPGJ0cy10eXBlPkI8Oi8vPkk8YnRzLWFkZHJlc3M+LCBsaWtlICIKKyJCPGRlYmJ1Z3M6Ly9idWdzLmRlYmlhbi5vcmc+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNTo5NCBkZWItc3JjLWNvbnRyb2wuNTo2MgorIywgbm8td3JhcAorbXNnaWQgIkI8SG9tZXBhZ2U6Pkk8IHVybD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNTo5NworbXNnaWQgIlRoZSB1cHN0cmVhbSBwcm9qZWN0IGhvbWUgcGFnZSBJPHVybD4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41Ojk3IGRlYi1zcmMtY29udHJvbC41OjIyMgorIywgbm8td3JhcAorbXNnaWQgIkI8VGFnOj5JPCB0YWctbGlzdD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToxMDEKK21zZ2lkICIiCisiTGlzdCBvZiB0YWdzIGRlc2NyaWJpbmcgdGhlIHF1YWxpdGllcyBvZiB0aGUgcGFja2FnZS4gVGhlIGRlc2NyaXB0aW9uIGFuZCAiCisibGlzdCBvZiBzdXBwb3J0ZWQgdGFncyBjYW4gYmUgZm91bmQgaW4gdGhlIEI8ZGVidGFncz4gcGFja2FnZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MTAxIGRlYi1zcmMtY29udHJvbC41OjIxOQorIywgbm8td3JhcAorbXNnaWQgIkI8TXVsdGktQXJjaDo+IEI8c2FtZT58Qjxmb3JlaWduPnxCPGFsbG93ZWQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MTEzCittc2dpZCAiIgorIlRoaXMgZmllbGQgaXMgdXNlZCB0byBpbmRpY2F0ZSBob3cgdGhpcyBwYWNrYWdlIHNob3VsZCBiZWhhdmUgb24gYSAiCisibXVsdGktYXJjaCBpbnN0YWxsYXRpb25zLiBUaGUgdmFsdWUgQjxzYW1lPiBtZWFucyB0aGF0IHRoZSBwYWNrYWdlIGlzICIKKyJjby1pbnN0YWxsYWJsZSB3aXRoIGl0c2VsZiwgYnV0IGl0IG11c3Qgbm90IGJlIHVzZWQgdG8gc2F0aXNmeSB0aGUgIgorImRlcGVuZGVuY3kgb2YgYW55IHBhY2thZ2Ugb2YgYSBkaWZmZXJlbnQgYXJjaGl0ZWN0dXJlIGZyb20gaXRzZWxmLiBUaGUgdmFsdWUgIgorIkI8Zm9yZWlnbj4gbWVhbnMgdGhhdCB0aGUgcGFja2FnZSBpcyBub3QgY28taW5zdGFsbGFibGUgd2l0aCBpdHNlbGYsIGJ1dCAiCisic2hvdWxkIGJlIGFsbG93ZWQgdG8gc2F0aXNmeSB0aGUgZGVwZW5kZW5jeSBvZiBhIHBhY2thZ2Ugb2YgYSBkaWZmZXJlbnQgYXJjaCAiCisiZnJvbSBpdHNlbGYuIFRoZSB2YWx1ZSBCPGFsbG93ZWQ+IGFsbG93cyByZXZlcnNlLWRlcGVuZGVuY2llcyB0byBpbmRpY2F0ZSBpbiAiCisidGhlaXIgRGVwZW5kcyBmaWVsZCB0aGF0IHRoZXkgbmVlZCBhIHBhY2thZ2UgZnJvbSBhIGZvcmVpZ24gYXJjaGl0ZWN0dXJlLCAiCisiYnV0IGhhcyBubyBlZmZlY3Qgb3RoZXJ3aXNlLiBUaGlzIGZpZWxkIHNob3VsZCBub3QgYmUgcHJlc2VudCBpbiBwYWNrYWdlcyAiCisid2l0aCB0aGUgQjxBcmNoaXRlY3R1cmU6IGFsbD4gZmllbGQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjExMworIywgbm8td3JhcAorbXNnaWQgIkI8U291cmNlOj5JPCBzb3VyY2UtbmFtZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToxMTcKK21zZ2lkICIiCisiVGhlIG5hbWUgb2YgdGhlIHNvdXJjZSBwYWNrYWdlIHRoYXQgdGhpcyBiaW5hcnkgcGFja2FnZSBjYW1lIGZyb20sIGlmICIKKyJkaWZmZXJlbnQgdGhhbiB0aGUgbmFtZSBvZiB0aGUgcGFja2FnZSBpdHNlbGYuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjExOCBkZWItc3JjLWNvbnRyb2wuNToyMDIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPFN1YmFyY2hpdGVjdHVyZTo+STwgdmFsdWU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjEyMSBkZWItc3JjLWNvbnRyb2wuNToyMDUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPEtlcm5lbC1WZXJzaW9uOj5JPCB2YWx1ZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MTI0IGRlYi1zcmMtY29udHJvbC41OjIwOAorIywgbm8td3JhcAorbXNnaWQgIkI8SW5zdGFsbGVyLU1lbnUtSXRlbTo+STwgdmFsdWU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MTMxIGRlYi1zcmMtY29udHJvbC41OjIxNQorbXNnaWQgIiIKKyJUaGVzZSBmaWVsZHMgYXJlIHVzZWQgYnkgdGhlIGRlYmlhbi1pbnN0YWxsZXIgYW5kIGFyZSB1c3VhbGx5IG5vdCBuZWVkZWQuICAiCisiU2VlIC91c3Ivc2hhcmUvZG9jL2RlYmlhbi1pbnN0YWxsZXIvZGV2ZWwvbW9kdWxlcy50eHQgZnJvbSB0aGUgIgorIkI8ZGViaWFuLWluc3RhbGxlcj4gcGFja2FnZSBmb3IgbW9yZSBkZXRhaWxzIGFib3V0IHRoZW0uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjEzMiBkZWItc3JjLWNvbnRyb2wuNToyMzMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPERlcGVuZHM6Pkk8IHBhY2thZ2UtbGlzdD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToxNDMKK21zZ2lkICIiCisiTGlzdCBvZiBwYWNrYWdlcyB0aGF0IGFyZSByZXF1aXJlZCBmb3IgdGhpcyBwYWNrYWdlIHRvIHByb3ZpZGUgYSBub24tdHJpdmlhbCAiCisiYW1vdW50IG9mIGZ1bmN0aW9uYWxpdHkuIFRoZSBwYWNrYWdlIG1haW50ZW5hbmNlIHNvZnR3YXJlIHdpbGwgbm90IGFsbG93IGEgIgorInBhY2thZ2UgdG8gYmUgaW5zdGFsbGVkIGlmIHRoZSBwYWNrYWdlcyBsaXN0ZWQgaW4gaXRzIEI8RGVwZW5kcz4gZmllbGQgIgorImFyZW4ndCBpbnN0YWxsZWQgKGF0IGxlYXN0IG5vdCB3aXRob3V0IHVzaW5nIHRoZSBmb3JjZSBvcHRpb25zKS4gIEluIGFuICIKKyJpbnN0YWxsYXRpb24sIHRoZSBwb3N0aW5zdCBzY3JpcHRzIG9mIHBhY2thZ2VzIGxpc3RlZCBpbiBEZXBlbmRzOiBmaWVsZHMgYXJlICIKKyJydW4gYmVmb3JlIHRob3NlIG9mIHRoZSBwYWNrYWdlcyB3aGljaCBkZXBlbmQgb24gdGhlbS4gT24gdGhlIG9wcG9zaXRlLCBpbiBhICIKKyJyZW1vdmFsLCB0aGUgcHJlcm0gc2NyaXB0IG9mIGEgcGFja2FnZSBpcyBydW4gYmVmb3JlIHRob3NlIG9mIHRoZSBwYWNrYWdlcyAiCisibGlzdGVkIGluIGl0cyBEZXBlbmRzOiBmaWVsZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MTQzIGRlYi1zcmMtY29udHJvbC41OjIzNgorIywgbm8td3JhcAorbXNnaWQgIkI8UHJlLURlcGVuZHM6Pkk8IHBhY2thZ2UtbGlzdD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToxNTAKK21zZ2lkICIiCisiTGlzdCBvZiBwYWNrYWdlcyB0aGF0IG11c3QgYmUgaW5zdGFsbGVkIEI8YW5kPiBjb25maWd1cmVkIGJlZm9yZSB0aGlzIG9uZSAiCisiY2FuIGJlIGluc3RhbGxlZC4gVGhpcyBpcyB1c3VhbGx5IHVzZWQgaW4gdGhlIGNhc2Ugd2hlcmUgdGhpcyBwYWNrYWdlICIKKyJyZXF1aXJlcyBhbm90aGVyIHBhY2thZ2UgZm9yIHJ1bm5pbmcgaXRzIHByZWluc3Qgc2NyaXB0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNToxNTAgZGViLXNyYy1jb250cm9sLjU6MjM5CisjLCBuby13cmFwCittc2dpZCAiQjxSZWNvbW1lbmRzOj5JPCBwYWNrYWdlLWxpc3Q+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MTU3Cittc2dpZCAiIgorIkxpc3RzIHBhY2thZ2VzIHRoYXQgd291bGQgYmUgZm91bmQgdG9nZXRoZXIgd2l0aCB0aGlzIG9uZSBpbiBhbGwgYnV0IHVudXN1YWwgIgorImluc3RhbGxhdGlvbnMuIFRoZSBwYWNrYWdlIG1haW50ZW5hbmNlIHNvZnR3YXJlIHdpbGwgd2FybiB0aGUgdXNlciBpZiB0aGV5ICIKKyJpbnN0YWxsIGEgcGFja2FnZSB3aXRob3V0IHRob3NlIGxpc3RlZCBpbiBpdHMgQjxSZWNvbW1lbmRzPiBmaWVsZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MTU3IGRlYi1zcmMtY29udHJvbC41OjI0MgorIywgbm8td3JhcAorbXNnaWQgIkI8U3VnZ2VzdHM6Pkk8IHBhY2thZ2UtbGlzdD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToxNjIKK21zZ2lkICIiCisiTGlzdHMgcGFja2FnZXMgdGhhdCBhcmUgcmVsYXRlZCB0byB0aGlzIG9uZSBhbmQgY2FuIHBlcmhhcHMgZW5oYW5jZSBpdHMgIgorInVzZWZ1bG5lc3MsIGJ1dCB3aXRob3V0IHdoaWNoIGluc3RhbGxpbmcgdGhpcyBwYWNrYWdlIGlzIHBlcmZlY3RseSAiCisicmVhc29uYWJsZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToxNzQKK21zZ2lkICIiCisiVGhlIHN5bnRheCBvZiBCPERlcGVuZHM+LCBCPFByZS1EZXBlbmRzPiwgQjxSZWNvbW1lbmRzPiBhbmQgQjxTdWdnZXN0cz4gIgorImZpZWxkcyBpcyBhIGxpc3Qgb2YgZ3JvdXBzIG9mIGFsdGVybmF0aXZlIHBhY2thZ2VzLiBFYWNoIGdyb3VwIGlzIGEgbGlzdCBvZiAiCisicGFja2FnZXMgc2VwYXJhdGVkIGJ5IHZlcnRpY2FsIGJhciAob3IgYHBpcGUnKSBzeW1ib2xzLCBgfCcuIFRoZSBncm91cHMgYXJlICIKKyJzZXBhcmF0ZWQgYnkgY29tbWFzLiBDb21tYXMgYXJlIHRvIGJlIHJlYWQgYXMgYEFORCcsIGFuZCBwaXBlcyBhcyBgT1InLCB3aXRoICIKKyJwaXBlcyBiaW5kaW5nIG1vcmUgdGlnaHRseS4gRWFjaCBwYWNrYWdlIG5hbWUgaXMgb3B0aW9uYWxseSBmb2xsb3dlZCBieSBhICIKKyJ2ZXJzaW9uIG51bWJlciBzcGVjaWZpY2F0aW9uIGluIHBhcmVudGhlc2VzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjE4MAorbXNnaWQgIiIKKyJBIHZlcnNpb24gbnVtYmVyIG1heSBzdGFydCB3aXRoIGEgYEU8Z3Q+RTxndD4nLCBpbiB3aGljaCBjYXNlIGFueSBsYXRlciAiCisidmVyc2lvbiB3aWxsIG1hdGNoLCBhbmQgbWF5IHNwZWNpZnkgb3Igb21pdCB0aGUgRGViaWFuIHBhY2thZ2luZyByZXZpc2lvbiAiCisiKHNlcGFyYXRlZCBieSBhIGh5cGhlbikuIEFjY2VwdGVkIHZlcnNpb24gcmVsYXRpb25zaGlwcyBhcmUgXCJFPGd0PkU8Z3Q+XCIgIgorImZvciBncmVhdGVyIHRoYW4sIFwiRTxsdD5FPGx0PlwiIGZvciBsZXNzIHRoYW4sIFwiRTxndD49XCIgZm9yIGdyZWF0ZXIgdGhhbiAiCisib3IgZXF1YWwgdG8sIFwiRTxsdD49XCIgZm9yIGxlc3MgdGhhbiBvciBlcXVhbCB0bywgYW5kIFwiPVwiIGZvciBlcXVhbCB0by4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MTgwIGRlYi1zcmMtY29udHJvbC41OjI0NQorIywgbm8td3JhcAorbXNnaWQgIkI8QnJlYWtzOj5JPCBwYWNrYWdlLWxpc3Q+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MTg4Cittc2dpZCAiIgorIkxpc3RzIHBhY2thZ2VzIHRoYXQgdGhpcyBvbmUgYnJlYWtzLCBmb3IgZXhhbXBsZSBieSBleHBvc2luZyBidWdzIHdoZW4gdGhlICIKKyJuYW1lZCBwYWNrYWdlcyByZWx5IG9uIHRoaXMgb25lLiBUaGUgcGFja2FnZSBtYWludGVuYW5jZSBzb2Z0d2FyZSB3aWxsIG5vdCAiCisiYWxsb3cgYnJva2VuIHBhY2thZ2VzIHRvIGJlIGNvbmZpZ3VyZWQ7IGdlbmVyYWxseSB0aGUgcmVzb2x1dGlvbiBpcyB0byAiCisidXBncmFkZSB0aGUgcGFja2FnZXMgbmFtZWQgaW4gYSBCPEJyZWFrcz4gZmllbGQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjE4OCBkZWItc3JjLWNvbnRyb2wuNToyNTQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPENvbmZsaWN0czo+STwgcGFja2FnZS1saXN0PiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjE5NgorbXNnaWQgIiIKKyJMaXN0cyBwYWNrYWdlcyB0aGF0IGNvbmZsaWN0IHdpdGggdGhpcyBvbmUsIGZvciBleGFtcGxlIGJ5IGNvbnRhaW5pbmcgZmlsZXMgIgorIndpdGggdGhlIHNhbWUgbmFtZXMuIFRoZSBwYWNrYWdlIG1haW50ZW5hbmNlIHNvZnR3YXJlIHdpbGwgbm90IGFsbG93ICIKKyJjb25mbGljdGluZyBwYWNrYWdlcyB0byBiZSBpbnN0YWxsZWQgYXQgdGhlIHNhbWUgdGltZS4gVHdvIGNvbmZsaWN0aW5nICIKKyJwYWNrYWdlcyBzaG91bGQgZWFjaCBpbmNsdWRlIGEgQjxDb25mbGljdHM+IGxpbmUgbWVudGlvbmluZyB0aGUgb3RoZXIuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjE5NiBkZWItc3JjLWNvbnRyb2wuNToyNTEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPFJlcGxhY2VzOj5JPCBwYWNrYWdlLWxpc3Q+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MjA0Cittc2dpZCAiIgorIkxpc3Qgb2YgcGFja2FnZXMgZmlsZXMgZnJvbSB3aGljaCB0aGlzIG9uZSByZXBsYWNlcy4gVGhpcyBpcyB1c2VkIGZvciAiCisiYWxsb3dpbmcgdGhpcyBwYWNrYWdlIHRvIG92ZXJ3cml0ZSB0aGUgZmlsZXMgb2YgYW5vdGhlciBwYWNrYWdlIGFuZCBpcyAiCisidXN1YWxseSB1c2VkIHdpdGggdGhlIEI8Q29uZmxpY3RzPiBmaWVsZCB0byBmb3JjZSByZW1vdmFsIG9mIHRoZSBvdGhlciAiCisicGFja2FnZSwgaWYgdGhpcyBvbmUgYWxzbyBoYXMgdGhlIHNhbWUgZmlsZXMgYXMgdGhlIGNvbmZsaWN0ZWQgcGFja2FnZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MjA0IGRlYi1zcmMtY29udHJvbC41OjI1NworIywgbm8td3JhcAorbXNnaWQgIkI8UHJvdmlkZXM6Pkk8IHBhY2thZ2UtbGlzdD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToyMTQKK21zZ2lkICIiCisiVGhpcyBpcyBhIGxpc3Qgb2YgdmlydHVhbCBwYWNrYWdlcyB0aGF0IHRoaXMgb25lIHByb3ZpZGVzLiBVc3VhbGx5IHRoaXMgaXMgIgorInVzZWQgaW4gdGhlIGNhc2Ugb2Ygc2V2ZXJhbCBwYWNrYWdlcyBhbGwgcHJvdmlkaW5nIHRoZSBzYW1lIHNlcnZpY2UuICBGb3IgIgorImV4YW1wbGUsIHNlbmRtYWlsIGFuZCBleGltIGNhbiBzZXJ2ZSBhcyBhIG1haWwgc2VydmVyLCBzbyB0aGV5IHByb3ZpZGUgYSAiCisiY29tbW9uIHBhY2thZ2UgKGBtYWlsLXRyYW5zcG9ydC1hZ2VudCcpIG9uIHdoaWNoIG90aGVyIHBhY2thZ2VzIGNhbiAiCisiZGVwZW5kLiBUaGlzIHdpbGwgYWxsb3cgc2VuZG1haWwgb3IgZXhpbSB0byBzZXJ2ZSBhcyBhIHZhbGlkIG9wdGlvbiB0byAiCisic2F0aXNmeSB0aGUgZGVwZW5kZW5jeS4gVGhpcyBwcmV2ZW50cyB0aGUgcGFja2FnZXMgdGhhdCBkZXBlbmQgb24gYSBtYWlsICIKKyJzZXJ2ZXIgZnJvbSBoYXZpbmcgdG8ga25vdyB0aGUgcGFja2FnZSBuYW1lcyBmb3IgYWxsIG9mIHRoZW0sIGFuZCB1c2luZyBgfCcgIgorInRvIHNlcGFyYXRlIHRoZSBsaXN0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjIzMworbXNnaWQgIiIKKyJUaGUgc3ludGF4IG9mIEI8QnJlYWtzPiwgQjxDb25mbGljdHM+LCBCPFJlcGxhY2VzPiBhbmQgQjxQcm92aWRlcz4gaXMgYSBsaXN0ICIKKyJvZiBwYWNrYWdlIG5hbWVzLCBzZXBhcmF0ZWQgYnkgY29tbWFzIChhbmQgb3B0aW9uYWwgd2hpdGVzcGFjZSkuICBJbiB0aGUgIgorIkI8QnJlYWtzPiBhbmQgQjxDb25mbGljdHM+IGZpZWxkcywgdGhlIGNvbW1hIHNob3VsZCBiZSByZWFkIGFzIGBPUicuIEFuICIKKyJvcHRpb25hbCB2ZXJzaW9uIGNhbiBhbHNvIGJlIGdpdmVuIHdpdGggdGhlIHNhbWUgc3ludGF4IGFzIGFib3ZlIGZvciB0aGUgIgorIkI8QnJlYWtzPiwgQjxDb25mbGljdHM+IGFuZCBCPFJlcGxhY2VzPiBmaWVsZHMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjIzNCBkZWItc3JjLWNvbnRyb2wuNToyNjAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPEJ1aWx0LVVzaW5nOj5JPCBwYWNrYWdlLWxpc3Q+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MjQ0Cittc2dpZCAiIgorIlRoaXMgZmllbGQgbGlzdHMgZXh0cmEgc291cmNlIHBhY2thZ2VzIHRoYXQgd2VyZSB1c2VkIGR1cmluZyB0aGUgYnVpbGQgb2YgIgorInRoaXMgYmluYXJ5IHBhY2thZ2UuICBUaGlzIGlzIGFuIGluZGljYXRpb24gdG8gdGhlIGFyY2hpdmUgbWFpbnRlbmFuY2UgIgorInNvZnR3YXJlIHRoYXQgdGhlc2UgZXh0cmEgc291cmNlIHBhY2thZ2VzIG11c3QgYmUga2VwdCB3aGlsc3QgdGhpcyBiaW5hcnkgIgorInBhY2thZ2UgaXMgbWFpbnRhaW5lZC4gIFRoaXMgZmllbGQgbXVzdCBiZSBhIGxpc3Qgb2Ygc291cmNlIHBhY2thZ2UgbmFtZXMgIgorIndpdGggc3RyaWN0ICg9KSAgdmVyc2lvbiByZWxhdGlvbnNoaXBzLiAgTm90ZSB0aGF0IHRoZSBhcmNoaXZlIG1haW50ZW5hbmNlICIKKyJzb2Z0d2FyZSBpcyBsaWtlbHkgdG8gcmVmdXNlIHRvIGFjY2VwdCBhbiB1cGxvYWQgd2hpY2ggZGVjbGFyZXMgYSAiCisiQjxCdWlsdC1Vc2luZz4gcmVsYXRpb25zaGlwIHdoaWNoIGNhbm5vdCBiZSBzYXRpc2ZpZWQgd2l0aGluIHRoZSBhcmNoaXZlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZGViLWNvbnRyb2wuNToyNDUgZGViLXNyYy1jb250cm9sLjU6Mjg4IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MzAyCisjLCBuby13cmFwCittc2dpZCAiRVhBTVBMRSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjI2OAorIywgbm8td3JhcAorbXNnaWQgIiIKKyIjIENvbW1lbnRcbiIKKyJQYWNrYWdlOiBncmVwXG4iCisiRXNzZW50aWFsOiB5ZXNcbiIKKyJQcmlvcml0eTogcmVxdWlyZWRcbiIKKyJTZWN0aW9uOiBiYXNlXG4iCisiTWFpbnRhaW5lcjogV2ljaGVydCBBa2tlcm1hbiBFPGx0Pndha2tlcm1hQGRlYmlhbi5vcmdFPGd0PlxuIgorIkFyY2hpdGVjdHVyZTogc3BhcmNcbiIKKyJWZXJzaW9uOiAyLjQtMVxuIgorIlByZS1EZXBlbmRzOiBsaWJjNiAoRTxndD49IDIuMC4xMDUpXG4iCisiUHJvdmlkZXM6IHJncmVwXG4iCisiQ29uZmxpY3RzOiByZ3JlcFxuIgorIkRlc2NyaXB0aW9uOiBHTlUgZ3JlcCwgZWdyZXAgYW5kIGZncmVwLlxuIgorIiBUaGUgR05VIGZhbWlseSBvZiBncmVwIHV0aWxpdGllcyBtYXkgYmUgdGhlIFwiZmFzdGVzdCBncmVwIGluIHRoZSB3ZXN0XCIuXG4iCisiIEdOVSBncmVwIGlzIGJhc2VkIG9uIGEgZmFzdCBsYXp5LXN0YXRlIGRldGVybWluaXN0aWMgbWF0Y2hlciAoYWJvdXRcbiIKKyIgdHdpY2UgYXMgZmFzdCBhcyBzdG9jayBVbml4IGVncmVwKSBoeWJyaWRpemVkIHdpdGggYSBCb3llci1Nb29yZS1Hb3NwZXJcbiIKKyIgc2VhcmNoIGZvciBhIGZpeGVkIHN0cmluZyB0aGF0IGVsaW1pbmF0ZXMgaW1wb3NzaWJsZSB0ZXh0IGZyb20gYmVpbmdcbiIKKyIgY29uc2lkZXJlZCBieSB0aGUgZnVsbCByZWdleHAgbWF0Y2hlciB3aXRob3V0IG5lY2Vzc2FyaWx5IGhhdmluZyB0b1xuIgorIiBsb29rIGF0IGV2ZXJ5IGNoYXJhY3Rlci4gVGhlIHJlc3VsdCBpcyB0eXBpY2FsbHkgbWFueSB0aW1lcyBmYXN0ZXJcbiIKKyIgdGhhbiBVbml4IGdyZXAgb3IgZWdyZXAuIChSZWd1bGFyIGV4cHJlc3Npb25zIGNvbnRhaW5pbmcgYmFja3JlZmVyZW5jaW5nXG4iCisiIHdpbGwgcnVuIG1vcmUgc2xvd2x5LCBob3dldmVyKS5cbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjI3NgorbXNnaWQgIkI8ZGViPig1KSwgQjxkZWItdmVyc2lvbj4oNSksIEI8ZGVidGFncz4oMSksIEI8ZHBrZz4oMSksIEI8ZHBrZy1kZWI+KDEpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUSAorIzogZGViLXNyYy1jb250cm9sLjU6MworIywgbm8td3JhcAorbXNnaWQgImRlYi1zcmMtY29udHJvbCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNTo2Cittc2dpZCAiZGViLXNyYy1jb250cm9sIC0gRGViaWFuIHNvdXJjZSBwYWNrYWdlcycgbWFzdGVyIGNvbnRyb2wgZmlsZSBmb3JtYXQiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MjgKK21zZ2lkICIiCisiRWFjaCBEZWJpYW4gc291cmNlIHBhY2thZ2UgY29udGFpbnMgdGhlIG1hc3RlciBcImNvbnRyb2xcIiBmaWxlLCB3aGljaCAiCisiY29udGFpbnMgYXQgbGVhc3QgMiBwYXJhZ3JhcGhzLCBzZXBhcmF0ZWQgYnkgYSBibGFuayBsaW5lLiBUaGUgZmlyc3QgIgorInBhcmFncmFwaCBsaXN0cyBhbGwgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHNvdXJjZSBwYWNrYWdlIGluIGdlbmVyYWwsIHdoaWxlICIKKyJlYWNoIGZvbGxvd2luZyBwYXJhZ3JhcGggZGVzY3JpYmVzIGV4YWN0bHkgb25lIGJpbmFyeSBwYWNrYWdlLiBFYWNoICIKKyJwYXJhZ3JhcGggY29uc2lzdHMgb2YgYXQgbGVhc3Qgb25lIGZpZWxkLiBBIGZpZWxkIHN0YXJ0cyB3aXRoIGEgZmllbGRuYW1lLCAiCisic3VjaCBhcyBCPFBhY2thZ2U+IG9yIEI8U2VjdGlvbj4gKGNhc2UgaW5zZW5zaXRpdmUpLCBmb2xsb3dlZCBieSBhIGNvbG9uLCAiCisidGhlIGJvZHkgb2YgdGhlIGZpZWxkIGFuZCBhIG5ld2xpbmUuICBNdWx0aS1saW5lIGZpZWxkcyBhcmUgYWxzbyBhbGxvd2VkLCAiCisiYnV0IGVhY2ggc3VwcGxlbWVudGFyeSBsaW5lLCB3aXRob3V0IGEgZmllbGRuYW1lLCBzaG91bGQgc3RhcnQgd2l0aCBhdCBsZWFzdCAiCisib25lIHNwYWNlLiBUaGUgY29udGVudCBvZiB0aGUgbXVsdGktbGluZSBmaWVsZHMgaXMgZ2VuZXJhbGx5IGpvaW5lZCB0byBhICIKKyJzaW5nbGUgbGluZSBieSB0aGUgdG9vbHMgKGV4Y2VwdCBpbiB0aGUgY2FzZSBvZiB0aGUgQjxEZXNjcmlwdGlvbj4gZmllbGQsICIKKyJzZWUgYmVsb3cpLiBUbyBpbnNlcnQgZW1wdHkgbGluZXMgaW50byBhIG11bHRpLWxpbmUgZmllbGQsIGluc2VydCBhIGRvdCAiCisiYWZ0ZXIgdGhlIHNwYWNlLiBMaW5lcyBzdGFydGluZyB3aXRoIGEgQjwnIyc+IGFyZSB0cmVhdGVkIGFzIGNvbW1lbnRzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZGViLXNyYy1jb250cm9sLjU6MjkKKyMsIG5vLXdyYXAKK21zZ2lkICJTT1VSQ0UgRklFTERTIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3JjLWNvbnRyb2wuNTozMAorIywgbm8td3JhcAorbXNnaWQgIkI8U291cmNlOj4gSTxzb3VyY2UtcGFja2FnZS1uYW1lPiAocmVxdWlyZWQpIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjM3Cittc2dpZCAiIgorIlRoZSB2YWx1ZSBvZiB0aGlzIGZpZWxkIGlzIHRoZSBuYW1lIG9mIHRoZSBzb3VyY2UgcGFja2FnZSwgYW5kIHNob3VsZCBtYXRjaCAiCisidGhlIG5hbWUgb2YgdGhlIHNvdXJjZSBwYWNrYWdlIGluIHRoZSBkZWJpYW4vY2hhbmdlbG9nIGZpbGUuIEEgcGFja2FnZSBuYW1lICIKKyJtdXN0IGNvbnNpc3Qgb25seSBvZiBsb3dlciBjYXNlIGxldHRlcnMgKGEteiksIGRpZ2l0cyAoMC05KSwgcGx1cyAoKykgYW5kICIKKyJtaW51cyAoLSkgc2lnbnMsIGFuZCBwZXJpb2RzICguKS4gUGFja2FnZSBuYW1lcyBtdXN0IGJlIGF0IGxlYXN0IHR3byAiCisiY2hhcmFjdGVycyBsb25nIGFuZCBtdXN0IHN0YXJ0IHdpdGggYW4gYWxwaGFudW1lcmljIGNoYXJhY3Rlci4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zcmMtY29udHJvbC41OjM4CisjLCBuby13cmFwCittc2dpZCAiQjxNYWludGFpbmVyOj4gSTxmdWxsbmFtZS1lbWFpbD4gKHJlcXVpcmVkKSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNTo0MworbXNnaWQgIiIKKyJTaG91bGQgYmUgaW4gdGhlIGZvcm1hdCBcIkpvZSBCbG9nZ3MgRTxsdD5qYmxvZ2dzQGZvby5jb21FPGd0PlwiLCBhbmQgIgorInJlZmVyZW5jZXMgdGhlIHBlcnNvbiB3aG8gY3VycmVudGx5IG1haW50YWlucyB0aGUgcGFja2FnZSwgYXMgb3Bwb3NlZCB0byB0aGUgIgorImF1dGhvciBvZiB0aGUgc29mdHdhcmUgb3IgdGhlIG9yaWdpbmFsIHBhY2thZ2VyLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLXNyYy1jb250cm9sLjU6NDQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPFVwbG9hZGVyczo+STwgZnVsbG5hbWUtZW1haWw+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjQ5Cittc2dpZCAiIgorIkxpc3RzIGFsbCB0aGUgbmFtZXMgYW5kIGVtYWlsIGFkZHJlc3NlcyBvZiBjby1tYWludGFpbmVycyBvZiB0aGUgcGFja2FnZSwgaW4gIgorInRoZSBzYW1lIGZvcm1hdCBhcyB0aGUgTWFpbnRhaW5lciBmaWVsZC4gTXVsdGlwbGUgY28tbWFpbnRhaW5lcnMgc2hvdWxkIGJlICIKKyJzZXBhcmF0ZWQgYnkgYSBjb21tYS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zcmMtY29udHJvbC41OjUwCisjLCBuby13cmFwCittc2dpZCAiQjxTdGFuZGFyZHMtVmVyc2lvbjo+STwgdmVyc2lvbi1zdHJpbmc+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjU2Cittc2dpZCAiIgorIlRoaXMgZG9jdW1lbnRzIHRoZSBtb3N0IHJlY2VudCB2ZXJzaW9uIG9mIHRoZSBzdGFuZGFyZHMgKHdoaWNoIGNvbnNpc3RzIG9mICIKKyJ0aGUgRGViaWFuIFBvbGljeSBNYW51YWwgYW5kIHJlZmVyZW5jZWQgdGV4dHMgZnJvbSB0aGUgQjxkZWJpYW4tcG9saWN5PiAiCisicGFja2FnZSkgdGhpcyBwYWNrYWdlIGNvbXBsaWVzIHRvLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLXNyYy1jb250cm9sLjU6NTcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPERNLVVwbG9hZC1BbGxvd2VkOj4gQjx5ZXM+fEI8bm8+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjYxCittc2dpZCAiIgorIlRoaXMgZmllbGQgaW5kaWNhdGVzIHdoZXRoZXIgdGhlIHBhY2thZ2UgY2FuIGJlIHVwbG9hZGVkIGJ5IERlYmlhbiAiCisiTWFpbnRhaW5lcnMgYXBwZWFyaW5nIGluIHRoZSBNYWludGFpbmVyIG9yIFVwbG9hZGVycyBmaWVsZC4gVGhlIGRlZmF1bHQgIgorInZhbHVlIGlzIFwibm9cIi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6NjUKK21zZ2lkICJUaGUgdXBzdHJlYW0gcHJvamVjdCBob21lIHBhZ2UgVVJMLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNTo3MQorbXNnaWQgIiIKKyJUaGUgSTx1cmw+IG9mIHRoZSBidWcgdHJhY2tpbmcgc3lzdGVtIGZvciB0aGlzIHBhY2thZ2UuIFRoZSBjdXJyZW50IHVzZWQgIgorImZvcm1hdCBpcyBJPGJ0cy10eXBlPkI8Oi8vPkk8YnRzLWFkZHJlc3M+LCBsaWtlICIKKyJCPGRlYmJ1Z3M6Ly9idWdzLmRlYmlhbi5vcmc+LiBUaGlzIGZpZWxkIGlzIHVzdWFsbHkgbm90IG5lZWRlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zcmMtY29udHJvbC41OjcyCisjLCBuby13cmFwCittc2dpZCAiQjxWY3MtKjo+STwgdXJsPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNTo3OQorbXNnaWQgIiIKKyJUaGUgSTx1cmw+IG9mIHRoZSBWZXJzaW9uIENvbnRyb2wgU3lzdGVtIHJlcG9zaXRvcnkgdXNlZCB0byBtYWludGFpbiB0aGlzICIKKyJwYWNrYWdlLiBDdXJyZW50bHkgc3VwcG9ydGVkIGFyZSBCPEFyY2g+LCBCPEJ6cj4gKEJhemFhciksIEI8Q3ZzPiwgQjxEYXJjcz4sICIKKyJCPEdpdD4sIEI8SGc+IChNZXJjdXJpYWwpLCBCPE10bj4gKE1vbm90b25lKSBhbmQgQjxTdm4+ICIKKyIoU3VidmVyc2lvbikuIFVzdWFsbHkgdGhpcyBmaWVsZCBwb2ludHMgdG8gdGhlIGxhdGVzdCB2ZXJzaW9uIG9mIHRoZSAiCisicGFja2FnZSwgc3VjaCBhcyB0aGUgbWFpbiBicmFuY2ggb3IgdGhlIHRydW5rLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLXNyYy1jb250cm9sLjU6ODAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPFZjcy1Ccm93c2VyOj5JPCB1cmw+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41Ojg0Cittc2dpZCAiIgorIlRoZSBJPHVybD4gb2YgYSB3ZWJpbnRlcmZhY2UgdG8gYnJvd3NlIHRoZSBWZXJzaW9uIENvbnRyb2wgU3lzdGVtICIKKyJyZXBvc2l0b3J5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNTo4OQorbXNnaWQgIiIKKyJUaGUgbmFtZSBvZiB0aGUgZGlzdHJpYnV0aW9uIHRoaXMgcGFja2FnZSBpcyBvcmlnaW5hdGluZyBmcm9tLiBUaGlzIGZpZWxkIGlzICIKKyJ1c3VhbGx5IG5vdCBuZWVkZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41Ojk1Cittc2dpZCAiIgorIlRoaXMgaXMgYSBnZW5lcmFsIGZpZWxkIHRoYXQgZ2l2ZXMgdGhlIHBhY2thZ2UgYSBjYXRlZ29yeSBiYXNlZCBvbiB0aGUgIgorInNvZnR3YXJlIHRoYXQgaXQgaW5zdGFsbHMuIFNvbWUgY29tbW9uIHNlY3Rpb25zIGFyZSBcInV0aWxzXCIsIFwibmV0XCIsICIKKyJcIm1haWxcIiwgXCJ0ZXh0XCIsIFwieDExXCIsIGV0Yy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MTAwCittc2dpZCAiIgorIlNldHMgdGhlIGltcG9ydGFuY2Ugb2YgdGhpcyBwYWNrYWdlIGluIHJlbGF0aW9uIHRvIHRoZSBzeXN0ZW0gYXMgYSB3aG9sZS4gICIKKyJDb21tb24gcHJpb3JpdGllcyBhcmUgXCJyZXF1aXJlZFwiLCBcInN0YW5kYXJkXCIsIFwib3B0aW9uYWxcIiwgXCJleHRyYVwiLCAiCisiZXRjLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLXNyYy1jb250cm9sLjU6MTEwCisjLCBuby13cmFwCittc2dpZCAiQjxCdWlsZC1EZXBlbmRzOj5JPCBwYWNrYWdlLWxpc3Q+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjExNAorbXNnaWQgIiIKKyJBIGxpc3Qgb2YgcGFja2FnZXMgdGhhdCBuZWVkIHRvIGJlIGluc3RhbGxlZCBhbmQgY29uZmlndXJlZCB0byBiZSBhYmxlIHRvICIKKyJidWlsZCB0aGUgc291cmNlIHBhY2thZ2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3JjLWNvbnRyb2wuNToxMTUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPEJ1aWxkLURlcGVuZHMtSW5kZXA6Pkk8IHBhY2thZ2UtbGlzdD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MTIwCittc2dpZCAiIgorIlNhbWUgYXMgQjxCdWlsZC1EZXBlbmRzPiwgYnV0IHRoZXkgYXJlIG9ubHkgbmVlZGVkIHdoZW4gYnVpbGRpbmcgdGhlICIKKyJhcmNoaXRlY3R1cmUgaW5kZXBlbmRlbnQgcGFja2FnZXMuIFRoZSBCPEJ1aWxkLURlcGVuZHM+IGFyZSBhbHNvIGluc3RhbGxlZCAiCisiaW4gdGhpcyBjYXNlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLXNyYy1jb250cm9sLjU6MTIxCisjLCBuby13cmFwCittc2dpZCAiQjxCdWlsZC1Db25mbGljdHM6Pkk8IHBhY2thZ2UtbGlzdD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MTI1Cittc2dpZCAiIgorIkEgbGlzdCBvZiBwYWNrYWdlcyB0aGF0IHNob3VsZCBub3QgYmUgaW5zdGFsbGVkIHdoZW4gdGhlIHBhY2thZ2UgaXMgYnVpbGQsICIKKyJmb3IgZXhhbXBsZSBiZWNhdXNlIHRoZXkgaW50ZXJmZXJlIHdpdGggdGhlIHVzZWQgYnVpbGQgc3lzdGVtLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLXNyYy1jb250cm9sLjU6MTI2CisjLCBuby13cmFwCittc2dpZCAiQjxCdWlsZC1Db25mbGljdHMtSW5kZXA6Pkk8IHBhY2thZ2UtbGlzdD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MTMwCittc2dpZCAiIgorIlNhbWUgYXMgQjxCdWlsZC1Db25mbGljdHM+LCBidXQgb25seSB3aGVuIGJ1aWxkaW5nIHRoZSBhcmNoaXRlY3R1cmUgIgorImluZGVwZW5kZW50IHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToxNDEKK21zZ2lkICIiCisiVGhlIHN5bnRheCBvZiB0aGUgQjxCdWlsZC1EZXBlbmRzPiBhbmQgQjxCdWlsZC1EZXBlbmRzLUluZGVwPiBmaWVsZHMgaXMgYSAiCisibGlzdCBvZiBncm91cHMgb2YgYWx0ZXJuYXRpdmUgcGFja2FnZXMuIEVhY2ggZ3JvdXAgaXMgYSBsaXN0IG9mIHBhY2thZ2VzICIKKyJzZXBhcmF0ZWQgYnkgdmVydGljYWwgYmFyIChvciBcInBpcGVcIikgc3ltYm9scywgXCJ8XCIuIFRoZSBncm91cHMgYXJlICIKKyJzZXBhcmF0ZWQgYnkgY29tbWFzLiBDb21tYXMgYXJlIHRvIGJlIHJlYWQgYXMgXCJBTkRcIiwgYW5kIHBpcGVzIGFzIFwiT1JcIiwgIgorIndpdGggcGlwZXMgYmluZGluZyBtb3JlIHRpZ2h0bHkuIEVhY2ggcGFja2FnZSBuYW1lIGlzIG9wdGlvbmFsbHkgZm9sbG93ZWQgYnkgIgorImEgdmVyc2lvbiBudW1iZXIgc3BlY2lmaWNhdGlvbiBpbiBwYXJlbnRoZXNlcyBhbmQgYW4gYXJjaGl0ZWN0dXJlICIKKyJzcGVjaWZpY2F0aW9uIGluIHNxdWFyZSBicmFja2V0cy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MTUwCittc2dpZCAiIgorIlRoZSBzeW50YXggb2YgdGhlIEI8QnVpbGQtQ29uZmxpY3RzPiBhbmQgQjxCdWlsZC1Db25mbGljdHMtSW5kZXA+IGZpZWxkcyBpcyAiCisiYSBsaXN0IG9mIGNvbW1hLXNlcGFyYXRlZCBwYWNrYWdlIG5hbWVzLCB3aGVyZSB0aGUgY29tbWEgaXMgcmVhZCBhcyBhbiAiCisiXCJBTkRcIi4gU3BlY2lmeWluZyBhbHRlcm5hdGl2ZSBwYWNrYWdlcyB1c2luZyBhIFwicGlwZVwiIGlzIG5vdCBzdXBwb3J0ZWQuICAiCisiRWFjaCBwYWNrYWdlIG5hbWUgaXMgb3B0aW9uYWxseSBmb2xsb3dlZCBieSBhIHZlcnNpb24gbnVtYmVyIHNwZWNpZmljYXRpb24gIgorImluIHBhcmVudGhlc2VzIGFuZCBhbiBhcmNoaXRlY3R1cmUgc3BlY2lmaWNhdGlvbiBpbiBzcXVhcmUgYnJhY2tldHMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjE1NgorbXNnaWQgIiIKKyJBIHZlcnNpb24gbnVtYmVyIG1heSBzdGFydCB3aXRoIGEgXCJFPGd0PkU8Z3Q+XCIsIGluIHdoaWNoIGNhc2UgYW55IGxhdGVyICIKKyJ2ZXJzaW9uIHdpbGwgbWF0Y2gsIGFuZCBtYXkgc3BlY2lmeSBvciBvbWl0IHRoZSBEZWJpYW4gcGFja2FnaW5nIHJldmlzaW9uICIKKyIoc2VwYXJhdGVkIGJ5IGEgaHlwaGVuKS4gQWNjZXB0ZWQgdmVyc2lvbiByZWxhdGlvbnNoaXBzIGFyZSBcIkU8Z3Q+RTxndD5cIiAiCisiZm9yIGdyZWF0ZXIgdGhhbiwgXCJFPGx0PkU8bHQ+XCIgZm9yIGxlc3MgdGhhbiwgXCJFPGd0Pj1cIiBmb3IgZ3JlYXRlciB0aGFuICIKKyJvciBlcXVhbCB0bywgXCJFPGx0Pj1cIiBmb3IgbGVzcyB0aGFuIG9yIGVxdWFsIHRvLCBhbmQgXCI9XCIgZm9yIGVxdWFsIHRvLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToxNjAKK21zZ2lkICIiCisiQSBhcmNoaXRlY3R1cmUgc3BlY2lmaWNhdGlvbiBjb25zaXN0cyBvZiBvbmUgb3IgbW9yZSBhcmNoaXRlY3R1cmUgbmFtZXMsICIKKyJzZXBhcmF0ZWQgYnkgd2hpdGVzcGFjZS4gRXhjbGFtYXRpb24gbWFya3MgbWF5IGJlIHByZXBlbmRlZCB0byBlYWNoIG9mIHRoZSAiCisibmFtZXMsIG1lYW5pbmcgXCJOT1RcIi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MTY1Cittc2dpZCAiIgorIk5vdGUgdGhhdCBkZXBlbmRlbmNpZXMgb24gcGFja2FnZXMgaW4gdGhlIEI8YnVpbGQtZXNzZW50aWFsPiBzZXQgY2FuIGJlICIKKyJvbWl0dGVkIGFuZCB0aGF0IGRlY2xhcmluZyBidWlsZCBjb25mbGljdHMgYWdhaW5zdCB0aGVtIGlzIGltcG9zc2libGUuIEEgIgorImxpc3Qgb2YgdGhlc2UgcGFja2FnZXMgaXMgaW4gdGhlIGJ1aWxkLWVzc2VudGlhbCBwYWNrYWdlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZGViLXNyYy1jb250cm9sLjU6MTY3CisjLCBuby13cmFwCittc2dpZCAiQklOQVJZIEZJRUxEUyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToxNzYKK21zZ2lkICIiCisiTm90ZSB0aGF0IHRoZSBCPFByaW9yaXR5PiwgQjxTZWN0aW9uPiBhbmQgQjxIb21lcGFnZT4gZmllbGRzIGNhbiBhbHNvIGJlIGluICIKKyJhIGJpbmFyeSBwYXJhZ3JhcGggdG8gb3ZlcnJpZGUgdGhlIGdsb2JhbCB2YWx1ZSBmcm9tIHRoZSBzb3VyY2UgcGFja2FnZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zcmMtY29udHJvbC41OjE3NworIywgbm8td3JhcAorbXNnaWQgIkI8UGFja2FnZTo+IEk8YmluYXJ5LXBhY2thZ2UtbmFtZT4gKHJlcXVpcmVkKSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToxODEKK21zZ2lkICIiCisiVGhpcyBmaWVsZCBpcyB1c2VkIHRvIG5hbWUgdGhlIGJpbmFyeSBwYWNrYWdlIG5hbWUuIFRoZSBzYW1lIHJlc3RyaWN0aW9ucyBhcyAiCisidG8gYSBzb3VyY2UgcGFja2FnZSBuYW1lIGFwcGx5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLXNyYy1jb250cm9sLjU6MTgyCisjLCBuby13cmFwCittc2dpZCAiQjxBcmNoaXRlY3R1cmU6PiBJPGFyY2g+fEI8YWxsPnxCPGFueT4gKHJlcXVpcmVkKSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToxOTUKK21zZ2lkICIiCisiVGhlIGFyY2hpdGVjdHVyZSBzcGVjaWZpZXMgb24gd2hpY2ggdHlwZSBvZiBoYXJkd2FyZSB0aGlzIHBhY2thZ2UgcnVucy4gRm9yICIKKyJwYWNrYWdlcyB0aGF0IHJ1biBvbiBhbGwgYXJjaGl0ZWN0dXJlcywgdXNlIHRoZSBCPGFueT4gdmFsdWUuIEZvciBwYWNrYWdlcyAiCisidGhhdCBhcmUgYXJjaGl0ZWN0dXJlIGluZGVwZW5kZW50LCBzdWNoIGFzIHNoZWxsIGFuZCBQZXJsIHNjcmlwdHMgb3IgIgorImRvY3VtZW50YXRpb24sIHVzZSB0aGUgQjxhbGw+IHZhbHVlLiBUbyByZXN0cmljdCB0aGUgcGFja2FnZXMgdG8gYSBjZXJ0YWluICIKKyJzZXQgb2YgYXJjaGl0ZWN0dXJlcywgc3BlY2lmeSB0aGUgYXJjaGl0ZWN0dXJlIG5hbWVzLCBzZXBhcmF0ZWQgYnkgYSAiCisic3BhY2UuIEl0J3MgYWxzbyBwb3NzaWJsZSB0byBwdXQgYXJjaGl0ZWN0dXJlIHdpbGRjYXJkcyBpbiB0aGF0IGxpc3QgKHNlZSAiCisiQjxkcGtnLWFyY2hpdGVjdHVyZT4oMSkgIGZvciBtb3JlIGluZm9ybWF0aW9uIGFib3V0IHRoZW0pLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLXNyYy1jb250cm9sLjU6MTk2CisjLCBuby13cmFwCittc2dpZCAiQjxQYWNrYWdlLVR5cGU6PiBCPGRlYj58Qjx1ZGViPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToyMDEKK21zZ2lkICIiCisiVGhpcyBmaWVsZCBkZWZpbmVzIHRoZSB0eXBlIG9mIHRoZSBwYWNrYWdlLiBcInVkZWJcIiBpcyBmb3Igc2l6ZS1jb25zdHJhaW5lZCAiCisicGFja2FnZXMgdXNlZCBieSB0aGUgZGViaWFuIGluc3RhbGxlci4gXCJkZWJcIiBpcyB0aGUgZGVmYXVsdCB2YWx1ZSwgaXQncyAiCisiYXNzdW1lZCBpZiB0aGUgZmllbGQgaXMgYWJzZW50LiBNb3JlIHR5cGVzIG1pZ2h0IGJlIGFkZGVkIGluIHRoZSBmdXR1cmUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3JjLWNvbnRyb2wuNToyMjUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPERlc2NyaXB0aW9uOj4gSTxzaG9ydC1kZXNjcmlwdGlvbj4gKHJlcXVpcmVkKSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToyMzIKK21zZ2lkICIiCisiVGhlc2UgZmllbGRzIGFyZSBkZXNjcmliZWQgaW4gdGhlIEI8ZGViLWNvbnRyb2w+KDUpICBtYW51YWwgcGFnZSwgYXMgdGhleSAiCisiYXJlIGNvcGllZCBsaXRlcmFsbHkgdG8gdGhlIGNvbnRyb2wgZmlsZSBvZiB0aGUgYmluYXJ5IHBhY2thZ2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3JjLWNvbnRyb2wuNToyNDgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPEVuaGFuY2VzOj5JPCBwYWNrYWdlLWxpc3Q+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjI3MAorbXNnaWQgIiIKKyJUaGVzZSBmaWVsZHMgZGVjbGFyZSByZWxhdGlvbnNoaXBzIGJldHdlZW4gcGFja2FnZXMuIFRoZXkgYXJlIGRpc2N1c3NlZCBpbiAiCisidGhlIEI8ZGViLWNvbnRyb2w+KDUpICBtYW5wYWdlIGFuZCBpbiB0aGUgQjxkZWJpYW4tcG9saWN5PiBwYWNrYWdlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZGViLXNyYy1jb250cm9sLjU6MjcxCisjLCBuby13cmFwCittc2dpZCAiVVNFUi1ERUZJTkVEIEZJRUxEUyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToyODYKK21zZ2lkICIiCisiSXQgaXMgYWxsb3dlZCB0byBhZGQgYWRkaXRpb25hbCB1c2VyLWRlZmluZWQgZmllbGRzIHRvIHRoZSBjb250cm9sIGZpbGUuIFRoZSAiCisidG9vbHMgd2lsbCBpZ25vcmUgdGhlc2UgZmllbGRzLiBJZiB5b3Ugd2FudCB0aGUgZmllbGRzIHRvIGJlIGNvcGllZCBvdmVyIHRvICIKKyJ0aGUgb3V0cHV0IGZpbGVzLCBzdWNoIGFzIHRoZSBiaW5hcnkgcGFja2FnZXMsIHlvdSBuZWVkIHRvIHVzZSBhIGN1c3RvbSAiCisibmFtaW5nIHNjaGVtZTogdGhlIGZpZWxkcyBzaG91bGQgc3RhcnQgd2l0aCBhIFgsIGZvbGxvd2VkIGJ5IG9uZSBvciBtb3JlIG9mICIKKyJ0aGUgbGV0dGVycyBCQ1MgYW5kIGEgaHlwZW4uIElmIHRoZSBsZXR0ZXIgQiBpcyB1c2VkLCB0aGUgZmllbGQgd2lsbCBhcHBlYXIgIgorImluIHRoZSBjb250cm9sIGZpbGUgaW4gdGhlIGJpbmFyeSBwYWNrYWdlLCBzZWUgQjxkZWItY29udHJvbD4oNSksIGZvciB0aGUgIgorImxldHRlciBTIGluIHRoZSBzb3VyY2UgcGFja2FnZSBjb250cm9sIGZpbGUgYXMgY29uc3RydWN0ZWQgYnkgIgorIkI8ZHBrZy1zb3VyY2U+KDEpICBhbmQgZm9yIHRoZSBsZXR0ZXIgQyBpbiB0aGUgdXBsb2FkIGNvbnRyb2wgKC5jaGFuZ2VzKSAiCisiZmlsZS4gTm90ZSB0aGF0IHRoZSBYW0JDU10tIHByZWZpeGVzIGFyZSBzdHJpcHBlZCB3aGVuIHRoZSBmaWVsZHMgYXJlIGNvcGllZCAiCisib3ZlciB0byB0aGUgb3V0cHV0IGZpbGVzLiBBIGZpZWxkIEI8WEMtQXBwcm92ZWQtQnk+IHdpbGwgYXBwZWFyIGFzICIKKyJCPEFwcHJvdmVkLUJ5PiBpbiB0aGUgY2hhbmdlcyBmaWxlIGFuZCB3aWxsIG5vdCBhcHBlYXIgaW4gdGhlIGJpbmFyeSBvciAiCisic291cmNlIHBhY2thZ2UgY29udHJvbCBmaWxlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MzA0CisjLCBuby13cmFwCittc2dpZCAiIgorIiMgQ29tbWVudFxuIgorIlNvdXJjZTogZHBrZ1xuIgorIlNlY3Rpb246IGFkbWluXG4iCisiUHJpb3JpdHk6IHJlcXVpcmVkXG4iCisiTWFpbnRhaW5lcjogRHBrZyBEZXZlbG9wZXJzIEU8bHQ+ZGViaWFuLWRwa2dAbGlzdHMuZGViaWFuLm9yZ0U8Z3Q+XG4iCisiIyB0aGlzIGZpZWxkIGlzIGNvcGllZCB0byB0aGUgYmluYXJ5IGFuZCBzb3VyY2UgcGFja2FnZXNcbiIKKyJYQlMtVXBzdHJlYW0tUmVsZWFzZS1TdGF0dXM6IHN0YWJsZVxuIgorIkhvbWVwYWdlOiBodHRwOi8vd2lraS5kZWJpYW4ub3JnL1RlYW1zL0Rwa2dcbiIKKyJWY3MtQnJvd3NlcjogaHR0cDovL2dpdC5kZWJpYW4ub3JnLz9wPWRwa2cvZHBrZy5naXRcbiIKKyJWY3MtR2l0OiBnaXQ6Ly9naXQuZGViaWFuLm9yZy9naXQvZHBrZy9kcGtnLmdpdFxuIgorIlN0YW5kYXJkcy1WZXJzaW9uOiAzLjcuM1xuIgorIkJ1aWxkLURlcGVuZHM6IHBrZy1jb25maWcsIGRlYmhlbHBlciAoRTxndD49IDQuMS44MSksXG4iCisiIGxpYnNlbGludXgxLWRldiAoRTxndD49IDEuMjgtNCkgWyFsaW51eC1hbnldXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MzIzCisjLCBuby13cmFwCittc2dpZCAiIgorIlBhY2thZ2U6IGRwa2ctZGV2XG4iCisiU2VjdGlvbjogdXRpbHNcbiIKKyJQcmlvcml0eTogb3B0aW9uYWxcbiIKKyJBcmNoaXRlY3R1cmU6IGFsbFxuIgorIiMgdGhpcyBpcyBhIGN1c3RvbSBmaWVsZCBpbiB0aGUgYmluYXJ5IHBhY2thZ2VcbiIKKyJYQi1NZW50b3JpbmctQ29udGFjdDogUmFwaGFlbCBIZXJ0em9nIEU8bHQ+aGVydHpvZ0BkZWJpYW4ub3JnRTxndD5cbiIKKyJEZXBlbmRzOiBkcGtnIChFPGd0Pj0gMS4xNC42KSwgcGVybDUsIHBlcmwtbW9kdWxlcywgY3BpbyAoRTxndD49IDIuNC4yLTIpLFxuIgorIiBiemlwMiwgbHptYSwgcGF0Y2ggKEU8Z3Q+PSAyLjItMSksIG1ha2UsIGJpbnV0aWxzLCBsaWJ0aW1lZGF0ZS1wZXJsXG4iCisiUmVjb21tZW5kczogZ2NjIHwgYy1jb21waWxlciwgYnVpbGQtZXNzZW50aWFsXG4iCisiU3VnZ2VzdHM6IGdudXBnLCBkZWJpYW4ta2V5cmluZ1xuIgorIkNvbmZsaWN0czogZHBrZy1jcm9zcyAoRTxsdD5FPGx0PiAyLjAuMCksIGRldnNjcmlwdHMgKEU8bHQ+RTxsdD4gMi4xMC4yNilcbiIKKyJSZXBsYWNlczogbWFucGFnZXMtcGwgKEU8bHQ+PSAyMDA1MTExNy0xKVxuIgorIkRlc2NyaXB0aW9uOiBEZWJpYW4gcGFja2FnZSBkZXZlbG9wbWVudCB0b29sc1xuIgorIiBUaGlzIHBhY2thZ2UgcHJvdmlkZXMgdGhlIGRldmVsb3BtZW50IHRvb2xzIChpbmNsdWRpbmcgZHBrZy1zb3VyY2UpXG4iCisiIHJlcXVpcmVkIHRvIHVucGFjaywgYnVpbGQgYW5kIHVwbG9hZCBEZWJpYW4gc291cmNlIHBhY2thZ2VzLlxuIgorIiAuXG4iCisiIE1vc3QgRGViaWFuIHNvdXJjZSBwYWNrYWdlcyB3aWxsIHJlcXVpcmUgYWRkaXRpb25hbCB0b29scyB0byBidWlsZDtcbiIKKyIgZm9yIGV4YW1wbGUsIG1vc3QgcGFja2FnZXMgbmVlZCBtYWtlIGFuZCB0aGUgQyBjb21waWxlciBnY2MuXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MzMwCittc2dpZCAiQjxkZWItY29udHJvbD4oNSksIEI8ZGViLXZlcnNpb24+KDUpLCBCPGRwa2ctc291cmNlPigxKSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUSAorIzogZGViLXNwbGl0LjU6MQorIywgbm8td3JhcAorbXNnaWQgImRlYi1zcGxpdCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUSAorIzogZGViLXNwbGl0LjU6MSBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6MSBkcGtnLWRpc3RhZGRmaWxlLjE6MSBkcGtnLXNwbGl0LjE6MiBkcGtnLXN0YXRvdmVycmlkZS44OjEgZHBrZy12ZW5kb3IuMToxIHN0YXJ0LXN0b3AtZGFlbW9uLjg6MQorIywgbm8td3JhcAorbXNnaWQgIjIwMTEtMDctMDQiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNwbGl0LjU6NAorbXNnaWQgImRlYi1zcGxpdCAtIERlYmlhbiBtdWx0aS1wYXJ0IGJpbmFyeSBwYWNrYWdlIGZvcm1hdCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3BsaXQuNTo5Cittc2dpZCAiIgorIlRoZSBtdWx0aS1wYXJ0IEI8LmRlYj4gZm9ybWF0IGlzIHVzZWQgdG8gc3BsaXQgYmlnIHBhY2thZ2VzIGludG8gc21hbGxlciAiCisicGllY2VzIHRvIGVhc2UgdHJhbnNwb3J0IGluIHNtYWxsIG1lZGlhLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3BsaXQuNToxMgorbXNnaWQgIiIKKyJUaGUgZmlsZSBpcyBhbiBCPGFyPiBhcmNoaXZlIHdpdGggYSBtYWdpYyB2YWx1ZSBvZiBCPCFFPGx0PmFyY2hFPGd0Pj4uICBUaGUgIgorImZpbGUgbmFtZXMgbWlnaHQgY29udGFpbiBhIHRyYWlsaW5nIHNsYXNoIChzaW5jZSBkcGtnIDEuMTUuNikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcGxpdC41OjE1Cittc2dpZCAiIgorIlRoZSBmaXJzdCBtZW1iZXIgaXMgbmFtZWQgQjxkZWJpYW4tc3BsaXQ+IGFuZCBjb250YWlucyBhIHNlcmllcyBvZiBsaW5lcywgIgorInNlcGFyYXRlZCBieSBuZXdsaW5lcy4gQ3VycmVudGx5IGVpZ2h0IGxpbmVzIGFyZSBwcmVzZW50OiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZGViLXNwbGl0LjU6MTUgZGViLXNwbGl0LjU6MTggZGViLXNwbGl0LjU6MjAgZGViLXNwbGl0LjU6MjIgZGViLXNwbGl0LjU6MjQgZGViLXNwbGl0LjU6MjYgZGViLXNwbGl0LjU6MjggZGViLXNwbGl0LjU6MzEgZHBrZy1nZW5zeW1ib2xzLjE6MjAgZHBrZy1nZW5zeW1ib2xzLjE6MjIgZHBrZy1nZW5zeW1ib2xzLjE6MjQgZHBrZy1nZW5zeW1ib2xzLjE6MjYgZHBrZy1nZW5zeW1ib2xzLjE6MzExIGRwa2ctZ2Vuc3ltYm9scy4xOjMxNyBkcGtnLWdlbnN5bWJvbHMuMTozNTEgZHBrZy1nZW5zeW1ib2xzLjE6MzU1IGRwa2ctZ2Vuc3ltYm9scy4xOjM1OAorIywgbm8td3JhcAorbXNnaWQgIlxcKGJ1IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcGxpdC41OjE4Cittc2dpZCAiVGhlIGZvcm1hdCB2ZXJzaW9uIG51bWJlciwgQjwyLjE+IGF0IHRoZSB0aW1lIHRoaXMgbWFudWFsIHBhZ2Ugd2FzIHdyaXR0ZW4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcGxpdC41OjIwCittc2dpZCAiVGhlIHBhY2thZ2UgbmFtZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNwbGl0LjU6MjIKK21zZ2lkICJUaGUgcGFja2FnZSB2ZXJzaW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3BsaXQuNToyNAorbXNnaWQgIlRoZSBtZDVzdW0gb2YgdGhlIHBhY2thZ2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcGxpdC41OjI2Cittc2dpZCAiVGhlIHRvdGFsIHNpemUgb2YgdGhlIHBhY2thZ2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcGxpdC41OjI4Cittc2dpZCAiVGhlIG1heGltdW0gcGFydCBzaXplLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3BsaXQuNTozMQorbXNnaWQgIiIKKyJUaGUgY3VycmVudCBwYXJ0IG51bWJlciwgZm9sbG93ZWQgYnkgYSBzbGFzaCBhbmQgdGhlIHRvdGFsIGFtb3VudCBvZiBwYXJ0cyAiCisiKGFzIGluIFxcKG9xMS8xMFxcKGNxKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNwbGl0LjU6MzMKK21zZ2lkICJUaGUgcGFja2FnZSBhcmNoaXRlY3R1cmUgKHNpbmNlIGRwa2cgMS4xNi4xKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNwbGl0LjU6MzYKK21zZ2lkICIiCisiUHJvZ3JhbXMgd2hpY2ggcmVhZCBtdWx0aS1wYXJ0IGFyY2hpdmVzIHNob3VsZCBiZSBwcmVwYXJlZCBmb3IgYWRkaXRpb25hbCAiCisibGluZXMgdG8gYmUgcHJlc2VudCwgYW5kIHNob3VsZCBpZ25vcmUgdGhlc2UgaWYgdGhpcyBpcyB0aGUgY2FzZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNwbGl0LjU6NDEKK21zZ2lkICIiCisiSWYgdGhlIHZlcnNpb24gbnVtYmVyIGhhcyBjaGFuZ2VkLCBhbiBpbmNvbXBhdGlibGUgY2hhbmdlIGhhcyBiZWVuIG1hZGUgYW5kICIKKyJ0aGUgcHJvZ3JhbSBzaG91bGQgc3RvcC4gSWYgaXQgaGFzIG5vdCwgdGhlbiB0aGUgcHJvZ3JhbSBzaG91bGQgYmUgYWJsZSB0byAiCisic2FmZWx5IGNvbnRpbnVlLCB1bmxlc3MgaXQgZW5jb3VudGVycyBhbiB1bmV4cGVjdGVkIG1lbWJlciBpbiB0aGUgYXJjaGl2ZSAiCisiKGV4Y2VwdCBhdCB0aGUgZW5kKSwgYXMgZGVzY3JpYmVkIGJlbG93LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3BsaXQuNTo0NAorbXNnaWQgIiIKKyJUaGUgc2Vjb25kLCBsYXN0IHJlcXVpcmVkIG1lbWJlciBpcyBuYW1lZCBCPGRhdGEuPkk8Tj4sIHdoZXJlIEk8Tj4gZGVub3RlcyAiCisidGhlIHBhcnQgbnVtYmVyLiBJdCBjb250YWlucyB0aGUgcmF3IHBhcnQgZGF0YS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNwbGl0LjU6NDkKK21zZ2lkICIiCisiVGhlc2UgbWVtYmVycyBtdXN0IG9jY3VyIGluIHRoaXMgZXhhY3Qgb3JkZXIuIEN1cnJlbnQgaW1wbGVtZW50YXRpb25zIHNob3VsZCAiCisiaWdub3JlIGFueSBhZGRpdGlvbmFsIG1lbWJlcnMgYWZ0ZXIgQjxkYXRhLj5JPE4+LiAgRnVydGhlciBtZW1iZXJzIG1heSBiZSAiCisiZGVmaW5lZCBpbiB0aGUgZnV0dXJlLCBhbmQgKGlmIHBvc3NpYmxlKSB3aWxsIGJlIHBsYWNlZCBhZnRlciB0aGVzZSB0d28uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcGxpdC41OjUxCittc2dpZCAiQjxkZWI+KDUpLCBCPGRwa2ctc3BsaXQ+KDEpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUSAorIzogZGViLXZlcnNpb24uNTo1CisjLCBuby13cmFwCittc2dpZCAiZGViLXZlcnNpb24iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNTo4Cittc2dpZCAiZGViLXZlcnNpb24gLSBEZWJpYW4gcGFja2FnZSB2ZXJzaW9uIG51bWJlciBmb3JtYXQiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNToxMQorbXNnaWQgIltJPGVwb2NoPkI8Oj5dSTx1cHN0cmVhbS12ZXJzaW9uPltCPC0+STxkZWJpYW4tcmV2aXNpb24+XSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjE0Cittc2dpZCAiIgorIlZlcnNpb24gbnVtYmVycyBhcyB1c2VkIGZvciBEZWJpYW4gYmluYXJ5IGFuZCBzb3VyY2UgcGFja2FnZXMgY29uc2lzdCBvZiAiCisidGhyZWUgY29tcG9uZW50cy4gVGhlc2UgYXJlOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLXZlcnNpb24uNToxNAorIywgbm8td3JhcAorbXNnaWQgIkk8ZXBvY2g+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6MjAKK21zZ2lkICIiCisiVGhpcyBpcyBhIHNpbmdsZSAoZ2VuZXJhbGx5IHNtYWxsKSB1bnNpZ25lZCBpbnRlZ2VyLiAgSXQgbWF5IGJlIG9taXR0ZWQsIGluICIKKyJ3aGljaCBjYXNlIHplcm8gaXMgYXNzdW1lZC4gIElmIGl0IGlzIG9taXR0ZWQgdGhlbiB0aGUgSTx1cHN0cmVhbS12ZXJzaW9uPiAiCisibWF5IG5vdCBjb250YWluIGFueSBjb2xvbnMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6MjQKK21zZ2lkICIiCisiSXQgaXMgcHJvdmlkZWQgdG8gYWxsb3cgbWlzdGFrZXMgaW4gdGhlIHZlcnNpb24gbnVtYmVycyBvZiBvbGRlciB2ZXJzaW9ucyBvZiAiCisiYSBwYWNrYWdlLCBhbmQgYWxzbyBhIHBhY2thZ2UncyBwcmV2aW91cyB2ZXJzaW9uIG51bWJlcmluZyBzY2hlbWVzLCB0byBiZSAiCisibGVmdCBiZWhpbmQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItdmVyc2lvbi41OjI0CisjLCBuby13cmFwCittc2dpZCAiSTx1cHN0cmVhbS12ZXJzaW9uPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjM0Cittc2dpZCAiIgorIlRoaXMgaXMgdGhlIG1haW4gcGFydCBvZiB0aGUgdmVyc2lvbiBudW1iZXIuICBJdCBpcyB1c3VhbGx5IHRoZSB2ZXJzaW9uICIKKyJudW1iZXIgb2YgdGhlIG9yaWdpbmFsIChcInVwc3RyZWFtXCIpICBwYWNrYWdlIGZyb20gd2hpY2ggdGhlIEk8LmRlYj4gZmlsZSAiCisiaGFzIGJlZW4gbWFkZSwgaWYgdGhpcyBpcyBhcHBsaWNhYmxlLiAgVXN1YWxseSB0aGlzIHdpbGwgYmUgaW4gdGhlIHNhbWUgIgorImZvcm1hdCBhcyB0aGF0IHNwZWNpZmllZCBieSB0aGUgdXBzdHJlYW0gYXV0aG9yKHMpOyBob3dldmVyLCBpdCBtYXkgbmVlZCB0byAiCisiYmUgcmVmb3JtYXR0ZWQgdG8gZml0IGludG8gdGhlIHBhY2thZ2UgbWFuYWdlbWVudCBzeXN0ZW0ncyBmb3JtYXQgYW5kICIKKyJjb21wYXJpc29uIHNjaGVtZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNTozOQorbXNnaWQgIiIKKyJUaGUgY29tcGFyaXNvbiBiZWhhdmlvciBvZiB0aGUgcGFja2FnZSBtYW5hZ2VtZW50IHN5c3RlbSB3aXRoIHJlc3BlY3QgdG8gdGhlICIKKyJJPHVwc3RyZWFtLXZlcnNpb24+IGlzIGRlc2NyaWJlZCBiZWxvdy4gVGhlIEk8dXBzdHJlYW0tdmVyc2lvbj4gcG9ydGlvbiBvZiAiCisidGhlIHZlcnNpb24gbnVtYmVyIGlzIG1hbmRhdG9yeS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNTo0OAorbXNnaWQgIiIKKyJUaGUgSTx1cHN0cmVhbS12ZXJzaW9uPiBtYXkgY29udGFpbiBvbmx5IGFscGhhbnVtZXJpY3MgKFwiQS1aYS16MC05XCIpIGFuZCAiCisidGhlIGNoYXJhY3RlcnMgQjwuPiBCPCs+IEI8LT4gQjw6PiBCPH4+IChmdWxsIHN0b3AsIHBsdXMsIGh5cGhlbiwgY29sb24sICIKKyJ0aWxkZSkgYW5kIHNob3VsZCBzdGFydCB3aXRoIGEgZGlnaXQuICBJZiB0aGVyZSBpcyBubyBJPGRlYmlhbi1yZXZpc2lvbj4gIgorInRoZW4gaHlwaGVucyBhcmUgbm90IGFsbG93ZWQ7IGlmIHRoZXJlIGlzIG5vIEk8ZXBvY2g+IHRoZW4gY29sb25zIGFyZSBub3QgIgorImFsbG93ZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItdmVyc2lvbi41OjQ4CisjLCBuby13cmFwCittc2dpZCAiSTxkZWJpYW4tcmV2aXNpb24+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6NTcKK21zZ2lkICIiCisiVGhpcyBwYXJ0IG9mIHRoZSB2ZXJzaW9uIG51bWJlciBzcGVjaWZpZXMgdGhlIHZlcnNpb24gb2YgdGhlIERlYmlhbiBwYWNrYWdlICIKKyJiYXNlZCBvbiB0aGUgdXBzdHJlYW0gdmVyc2lvbi4gIEl0IG1heSBjb250YWluIG9ubHkgYWxwaGFudW1lcmljcyBhbmQgdGhlICIKKyJjaGFyYWN0ZXJzIEI8Kz4gQjwuPiBCPH4+IChwbHVzLCBmdWxsIHN0b3AsIHRpbGRlKSBhbmQgaXMgY29tcGFyZWQgaW4gdGhlICIKKyJzYW1lIHdheSBhcyB0aGUgSTx1cHN0cmVhbS12ZXJzaW9uPiBpcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNTo2NAorbXNnaWQgIiIKKyJJdCBpcyBvcHRpb25hbDsgaWYgaXQgaXNuJ3QgcHJlc2VudCB0aGVuIHRoZSBJPHVwc3RyZWFtLXZlcnNpb24+IG1heSBub3QgIgorImNvbnRhaW4gYSBoeXBoZW4uICBUaGlzIGZvcm1hdCByZXByZXNlbnRzIHRoZSBjYXNlIHdoZXJlIGEgcGllY2Ugb2Ygc29mdHdhcmUgIgorIndhcyB3cml0dGVuIHNwZWNpZmljYWxseSB0byBiZSB0dXJuZWQgaW50byBhIERlYmlhbiBwYWNrYWdlLCBhbmQgc28gdGhlcmUgaXMgIgorIm9ubHkgb25lIFwiZGViaWFuaXNhdGlvblwiIG9mIGl0IGFuZCB0aGVyZWZvcmUgbm8gcmV2aXNpb24gaW5kaWNhdGlvbiBpcyAiCisicmVxdWlyZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6NjgKK21zZ2lkICIiCisiSXQgaXMgY29udmVudGlvbmFsIHRvIHJlc3RhcnQgdGhlIEk8ZGViaWFuLXJldmlzaW9uPiBhdCAnMScgZWFjaCB0aW1lIHRpbWUgIgorInRoZSBJPHVwc3RyZWFtLXZlcnNpb24+IGlzIGluY3JlYXNlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNTo3NgorbXNnaWQgIiIKKyJEcGtnIHdpbGwgYnJlYWsgdGhlIHZlcnNpb24gbnVtYmVyIGFwYXJ0IGF0IHRoZSBsYXN0IGh5cGhlbiBpbiB0aGUgc3RyaW5nICIKKyIoaWYgdGhlcmUgaXMgb25lKSB0byBkZXRlcm1pbmUgdGhlIEk8dXBzdHJlYW0tdmVyc2lvbj4gYW5kICIKKyJJPGRlYmlhbi1yZXZpc2lvbj4uIFRoZSBhYnNlbmNlIG9mIGEgSTxkZWJpYW4tcmV2aXNpb24+IGNvbXBhcmVzIGVhcmxpZXIgIgorInRoYW4gdGhlIHByZXNlbmNlIG9mIG9uZSAoYnV0IG5vdGUgdGhhdCB0aGUgSTxkZWJpYW4tcmV2aXNpb24+IGlzIHRoZSBsZWFzdCAiCisic2lnbmlmaWNhbnQgcGFydCBvZiB0aGUgdmVyc2lvbiBudW1iZXIpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZGViLXZlcnNpb24uNTo3NgorIywgbm8td3JhcAorbXNnaWQgIlNvcnRpbmcgQWxnb3JpdGhtIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6ODAKK21zZ2lkICIiCisiVGhlIEk8dXBzdHJlYW0tdmVyc2lvbj4gYW5kIEk8ZGViaWFuLXJldmlzaW9uPiBwYXJ0cyBhcmUgY29tcGFyZWQgYnkgdGhlICIKKyJwYWNrYWdlIG1hbmFnZW1lbnQgc3lzdGVtIHVzaW5nIHRoZSBzYW1lIGFsZ29yaXRobToiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNTo4MgorbXNnaWQgIlRoZSBzdHJpbmdzIGFyZSBjb21wYXJlZCBmcm9tIGxlZnQgdG8gcmlnaHQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6OTIKK21zZ2lkICIiCisiRmlyc3QgdGhlIGluaXRpYWwgcGFydCBvZiBlYWNoIHN0cmluZyBjb25zaXN0aW5nIGVudGlyZWx5IG9mIG5vbi1kaWdpdCAiCisiY2hhcmFjdGVycyBpcyBkZXRlcm1pbmVkLiAgVGhlc2UgdHdvIHBhcnRzIChvbmUgb2Ygd2hpY2ggbWF5IGJlIGVtcHR5KSBhcmUgIgorImNvbXBhcmVkIGxleGljYWxseS4gIElmIGEgZGlmZmVyZW5jZSBpcyBmb3VuZCBpdCBpcyByZXR1cm5lZC4gIFRoZSBsZXhpY2FsICIKKyJjb21wYXJpc29uIGlzIGEgY29tcGFyaXNvbiBvZiBBU0NJSSB2YWx1ZXMgbW9kaWZpZWQgc28gdGhhdCBhbGwgdGhlIGxldHRlcnMgIgorInNvcnQgZWFybGllciB0aGFuIGFsbCB0aGUgbm9uLWxldHRlcnMgYW5kIHNvIHRoYXQgYSB0aWxkZSBzb3J0cyBiZWZvcmUgIgorImFueXRoaW5nLCBldmVuIHRoZSBlbmQgb2YgYSBwYXJ0LiAgRm9yIGV4YW1wbGUsIHRoZSBmb2xsb3dpbmcgcGFydHMgYXJlIGluICIKKyJzb3J0ZWQgb3JkZXI6ICd+ficsICd+fmEnLCAnficsIHRoZSBlbXB0eSBwYXJ0LCAnYScuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6MTAwCittc2dpZCAiIgorIlRoZW4gdGhlIGluaXRpYWwgcGFydCBvZiB0aGUgcmVtYWluZGVyIG9mIGVhY2ggc3RyaW5nIHdoaWNoIGNvbnNpc3RzICIKKyJlbnRpcmVseSBvZiBkaWdpdCBjaGFyYWN0ZXJzIGlzIGRldGVybWluZWQuICBUaGUgbnVtZXJpY2FsIHZhbHVlcyBvZiB0aGVzZSAiCisidHdvIHBhcnRzIGFyZSBjb21wYXJlZCwgYW5kIGFueSBkaWZmZXJlbmNlIGZvdW5kIGlzIHJldHVybmVkIGFzIHRoZSByZXN1bHQgIgorIm9mIHRoZSBjb21wYXJpc29uLiAgRm9yIHRoZXNlIHB1cnBvc2VzIGFuIGVtcHR5IHN0cmluZyAod2hpY2ggY2FuIG9ubHkgb2NjdXIgIgorImF0IHRoZSBlbmQgb2Ygb25lIG9yIGJvdGggdmVyc2lvbiBzdHJpbmdzIGJlaW5nIGNvbXBhcmVkKSBjb3VudHMgYXMgemVyby4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNToxMDQKK21zZ2lkICIiCisiVGhlc2UgdHdvIHN0ZXBzIChjb21wYXJpbmcgYW5kIHJlbW92aW5nIGluaXRpYWwgbm9uLWRpZ2l0IHN0cmluZ3MgYW5kICIKKyJpbml0aWFsIGRpZ2l0IHN0cmluZ3MpIGFyZSByZXBlYXRlZCB1bnRpbCBhIGRpZmZlcmVuY2UgaXMgZm91bmQgb3IgYm90aCAiCisic3RyaW5ncyBhcmUgZXhoYXVzdGVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjExMgorbXNnaWQgIiIKKyJOb3RlIHRoYXQgdGhlIHB1cnBvc2Ugb2YgZXBvY2hzIGlzIHRvIGFsbG93IHVzIHRvIGxlYXZlIGJlaGluZCBtaXN0YWtlcyBpbiAiCisidmVyc2lvbiBudW1iZXJpbmcsIGFuZCB0byBjb3BlIHdpdGggc2l0dWF0aW9ucyB3aGVyZSB0aGUgdmVyc2lvbiBudW1iZXJpbmcgIgorInNjaGVtZSBjaGFuZ2VzLiAgSXQgaXMgQjxub3Q+IGludGVuZGVkIHRvIGNvcGUgd2l0aCB2ZXJzaW9uIG51bWJlcnMgIgorImNvbnRhaW5pbmcgc3RyaW5ncyBvZiBsZXR0ZXJzIHdoaWNoIHRoZSBwYWNrYWdlIG1hbmFnZW1lbnQgc3lzdGVtIGNhbm5vdCAiCisiaW50ZXJwcmV0IChzdWNoIGFzICdBTFBIQScgb3IgJ3ByZS0nKSwgb3Igd2l0aCBzaWxseSBvcmRlcmluZ3MuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkZWItdmVyc2lvbi41OjExMiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTA5CisjLCBuby13cmFwCittc2dpZCAiQ0FWRUFUUyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjExNgorbXNnaWQgIiIKKyJUaGUgdGlsZGUgY2hhcmFjdGVyIGFuZCBpdHMgc3BlY2lhbCBzb3J0aW5nIHByb3BlcnRpZXMgd2VyZSBpbnRyb2R1Y2VkIGluICIKKyJkcGtnLCB2ZXJzaW9uIDEuMTAgYW5kIHNvbWUgcGFydHMgb2YgZHBrZy1kZXYgb25seSBnYWluZWQgc3VwcG9ydCBmb3IgaXQgIgorImxhdGVyIGluIHRoZSAxLjEwLnggc2VyaWVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjEyMAorbXNnaWQgIkI8ZGViLWNvbnRyb2w+KDUpLCBCPGRlYj4oNSksIEI8ZHBrZz4oMSkiCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRlYi12ZXJzaW9uLjU6MTIwIGRwa2cuMTo3ODMgZHBrZy1idWlsZHBhY2thZ2UuMToyNTcgZHBrZy1kaXN0YWRkZmlsZS4xOjQ3IGRwa2ctZ2VuY2hhbmdlcy4xOjE0OCBkcGtnLWdlbmNvbnRyb2wuMToxNDIgZHBrZy1nZW5zeW1ib2xzLjE6NDYwIGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MTI4IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxMjMgZHBrZy1zaGxpYmRlcHMuMTozMjkgZHBrZy1zb3VyY2UuMTo3MzAgZHNlbGVjdC4xOjQ1MSBzdGFydC1zdG9wLWRhZW1vbi44OjMyMyB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDk0CisjLCBuby13cmFwCittc2dpZCAiQVVUSE9SUyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjEyMgorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAxOTk2LDE5OTcsMTk5OCBJYW4gSmFja3NvbiBhbmQgQ2hyaXN0aWFuIFNjaHdhcnoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNToxMjQgZHBrZy1idWlsZHBhY2thZ2UuMToyNjMKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAwNyBGcmFuayBMaWNodGVuaGVsZCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjEyNiBkZWItc3Vic3R2YXJzLjU6MTY3IGRwa2ctYnVpbGRmbGFncy4xOjI3MyBkcGtnLWJ1aWxkcGFja2FnZS4xOjI2NyBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6NDQgZHBrZy1kaXN0YWRkZmlsZS4xOjUzIGRwa2ctZGViLjE6MjY5IGRwa2ctZGl2ZXJ0Ljg6MTM5IGRwa2ctZ2VuY2hhbmdlcy4xOjE1NCBkcGtnLWdlbmNvbnRyb2wuMToxNTAgZHBrZy1nZW5zeW1ib2xzLjE6NDY0IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MTM5IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6NzEgZHBrZy1uYW1lLjE6MTA4IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxMzEgZHBrZy1xdWVyeS4xOjIxOSBkcGtnLXNobGliZGVwcy4xOjMzOSBkcGtnLXNvdXJjZS4xOjczOCBkcGtnLXNwbGl0LjE6MjI3IGRwa2ctc3RhdG92ZXJyaWRlLjg6OTEgZHBrZy12ZW5kb3IuMTo1MyB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NTAxCittc2dpZCAiIgorIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSB2ZXJzaW9uIDIgb3IgbGF0ZXIgIgorImZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIFdBUlJBTlRZLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUSAorIzogZGViLW9sZC41OjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkZWItb2xkIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vbGQuNTo0Cittc2dpZCAiZGViLW9sZCAtIG9sZCBzdHlsZSBEZWJpYW4gYmluYXJ5IHBhY2thZ2UgZm9ybWF0IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vbGQuNToxNworbXNnaWQgIiIKKyJUaGUgQjwuZGViPiBmb3JtYXQgaXMgdGhlIERlYmlhbiBiaW5hcnkgcGFja2FnZSBmaWxlIGZvcm1hdC4gVGhpcyBtYW51YWwgIgorInBhZ2UgZGVzY3JpYmVzIHRoZSBCPG9sZD4gZm9ybWF0LCB1c2VkIGJlZm9yZSBEZWJpYW4gMC45My4gUGxlYXNlIHNlZSAiCisiQjxkZWI+KDUpICBmb3IgZGV0YWlscyBvZiB0aGUgbmV3IGZvcm1hdC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW9sZC41OjIxCittc2dpZCAiIgorIlRoZSBmaWxlIGlzIHR3byBsaW5lcyBvZiBmb3JtYXQgaW5mb3JtYXRpb24gYXMgQVNDSUkgdGV4dCwgZm9sbG93ZWQgYnkgdHdvICIKKyJjb25jYXRlbmF0ZWQgZ3ppcHBlZCB1c3RhciBmaWxlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW9sZC41OjI1Cittc2dpZCAiIgorIlRoZSBmaXJzdCBsaW5lIGlzIHRoZSBmb3JtYXQgdmVyc2lvbiBudW1iZXIgcGFkZGVkIHRvIDggZGlnaXRzLCBhbmQgaXMgIgorIkI8MC45MzkwMDA+IGZvciBhbGwgb2xkLWZvcm1hdCBhcmNoaXZlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW9sZC41OjI4Cittc2dpZCAiIgorIlRoZSBzZWNvbmQgbGluZSBpcyBhIGRlY2ltYWwgc3RyaW5nICh3aXRob3V0IGxlYWRpbmcgemVyb2VzKSBnaXZpbmcgdGhlICIKKyJsZW5ndGggb2YgdGhlIGZpcnN0IGd6aXBwZWQgdGFyZmlsZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW9sZC41OjMwCittc2dpZCAiRWFjaCBvZiB0aGVzZSBsaW5lcyBpcyB0ZXJtaW5hdGVkIHdpdGggYSBzaW5nbGUgbmV3bGluZSBjaGFyYWN0ZXIuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vbGQuNTozNQorbXNnaWQgIiIKKyJUaGUgZmlyc3QgdGFyZmlsZSBjb250YWlucyB0aGUgY29udHJvbCBpbmZvcm1hdGlvbiwgYXMgYSBzZXJpZXMgb2Ygb3JkaW5hcnkgIgorImZpbGVzLiBUaGUgZmlsZSBCPGNvbnRyb2w+IG11c3QgYmUgcHJlc2VudCwgYXMgaXQgY29udGFpbnMgdGhlIGNvcmUgY29udHJvbCAiCisiaW5mb3JtYXRpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vbGQuNTo0NgorbXNnaWQgIiIKKyJJbiBzb21lIHZlcnkgb2xkIGFyY2hpdmVzLCB0aGUgZmlsZXMgaW4gdGhlIGNvbnRyb2wgdGFyZmlsZSBtYXkgb3B0aW9uYWxseSAiCisiYmUgaW4gYSBCPERFQklBTj4gc3ViZGlyZWN0b3J5LiBJbiB0aGF0IGNhc2UsIHRoZSBCPERFQklBTj4gc3ViZGlyZWN0b3J5ICIKKyJ3aWxsIGJlIGluIHRoZSBjb250cm9sIHRhcmZpbGUgdG9vLCBhbmQgdGhlIGNvbnRyb2wgdGFyZmlsZSB3aWxsIGhhdmUgb25seSAiCisiZmlsZXMgaW4gdGhhdCBkaXJlY3RvcnkuIE9wdGlvbmFsbHkgdGhlIGNvbnRyb2wgdGFyZmlsZSBtYXkgY29udGFpbiBhbiBlbnRyeSAiCisiZm9yIGBCPC4+JywgdGhhdCBpcywgdGhlIGN1cnJlbnQgZGlyZWN0b3J5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb2xkLjU6NTAKK21zZ2lkICIiCisiVGhlIHNlY29uZCBnemlwcGVkIHRhcmZpbGUgaXMgdGhlIGZpbGVzeXN0ZW0gYXJjaGl2ZSwgY29udGFpbmluZyBwYXRobmFtZXMgIgorInJlbGF0aXZlIHRvIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGUgc3lzdGVtIHRvIGJlIGluc3RhbGxlZCBvbi4gVGhlICIKKyJwYXRobmFtZXMgZG8gbm90IGhhdmUgbGVhZGluZyBzbGFzaGVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb2xkLjU6NTQKK21zZ2lkICJCPGRlYj4oNSksIEI8ZHBrZy1kZWI+KDEpLCBCPGRlYi1jb250cm9sPig1KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVEgKKyM6IGRlYi1vdmVycmlkZS41OjE1CisjLCBuby13cmFwCittc2dpZCAiZGViLW92ZXJyaWRlIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRICisjOiBkZWItb3ZlcnJpZGUuNToxNSBkZWItZXh0cmEtb3ZlcnJpZGUuNToxIGRlYi1zaGxpYnMuNToxNiBkZWItc3Vic3R2YXJzLjU6MiBkZWItc3ltYm9scy41OjIgZGViLXRyaWdnZXJzLjU6MSBkcGtnLWFyY2hpdGVjdHVyZS4xOjEgZHBrZy1idWlsZHBhY2thZ2UuMToxIGRwa2ctY2hlY2tidWlsZGRlcHMuMToxIGRwa2ctZGlzdGFkZGZpbGUuMToxIGRwa2ctZGl2ZXJ0Ljg6MSBkcGtnLWdlbmNoYW5nZXMuMToxIGRwa2ctZ2VuY29udHJvbC4xOjEgZHBrZy1nZW5zeW1ib2xzLjE6MiBkcGtnLW5hbWUuMTo2IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxIGRwa2ctc2NhbnBhY2thZ2VzLjE6MTUgZHBrZy1zY2Fuc291cmNlcy4xOjEgZHBrZy1zaGxpYmRlcHMuMToxIGRwa2ctc291cmNlLjE6MiBkcGtnLXNwbGl0LjE6MiBkcGtnLXN0YXRvdmVycmlkZS44OjEgc3RhcnQtc3RvcC1kYWVtb24uODoxIHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo4CisjLCBuby13cmFwCittc2dpZCAiZHBrZyB1dGlsaXRpZXMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW92ZXJyaWRlLjU6MTgKK21zZ2lkICJkZWItb3ZlcnJpZGUgLSBEZWJpYW4gYXJjaGl2ZSBvdmVycmlkZSBmaWxlIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vdmVycmlkZS41OjIxIGRlYi1leHRyYS1vdmVycmlkZS41OjcKK21zZ2lkICJvdmVycmlkZSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb3ZlcnJpZGUuNToyNworbXNnaWQgIiIKKyJXaGlsZSBtb3N0IGluZm9ybWF0aW9uIGFib3V0IGEgcGFja2FnZSBjYW4gYmUgZm91bmQgaW4gdGhlIGNvbnRyb2wgZmlsZSwgIgorInNvbWUgaXMgbWFuYWdlZCBjZW50cmFsbHkgYnkgdGhlIGRpc3RyaWJ1dGlvbiBjemFycyByYXRoZXIgdGhhbiBieSB0aGUgIgorIm1haW50YWluZXIgaW4gb3JkZXIgdG8gb2ZmZXIgc29tZSBnbG9iYWwgY29uc2lzdGVuY3kuICBUaGlzIGluZm9ybWF0aW9uIGlzICIKKyJmb3VuZCBpbiB0aGUgb3ZlcnJpZGUgZmlsZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW92ZXJyaWRlLjU6MzEKK21zZ2lkICIiCisiVGhlIG92ZXJyaWRlIGZpbGUgaGFzIGEgc2ltcGxlIHdoaXRlc3BhY2UtZGVsaW1pdGVkIGZvcm1hdC4gQ29tbWVudHMgYXJlICIKKyJhbGxvd2VkIChkZW5vdGVkIHdpdGggYSBCPCM+KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW92ZXJyaWRlLjU6MzcKK21zZ2lkICJJPHBhY2thZ2U+IEk8cHJpb3JpdHk+IEk8c2VjdGlvbj4gW0k8bWFpbnRhaW5lcmluZm8+XSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb3ZlcnJpZGUuNTo0MgorbXNnaWQgIiIKKyJJPHBhY2thZ2U+IGlzIHRoZSBuYW1lIG9mIHRoZSBwYWNrYWdlLiBFbnRyaWVzIGluIHRoZSBvdmVycmlkZSBmaWxlIGZvciAiCisicGFja2FnZXMgbm90IGZvdW5kIGluIHRoZSB0cmVlIG9mIGJpbmFyeSBwYWNrYWdlcyBhcmUgaWdub3JlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW92ZXJyaWRlLjU6NDgKK21zZ2lkICIiCisiSTxwcmlvcml0eT4gYW5kIEk8c2VjdGlvbj4gY29ycmVzcG9uZCB0byB0aGUgcmVzcGVjdGl2ZSBjb250cm9sIGZpZWxkcyAiCisiYXZhaWxhYmxlIGluIHRoZSAuZGViLiBUaGUgYWxsb3dlZCB2YWx1ZXMgYXJlIGxpc3RlZCBpbiB0aGUgRGViaWFuIHBvbGljeS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW92ZXJyaWRlLjU6NTYKK21zZ2lkICIiCisiSTxtYWludGFpbmVyaW5mbz4sIGlmIHByZXNlbnQsIGNhbiBiZSBlaXRoZXIgdGhlIG5hbWUgb2YgYSBtYWludGFpbmVyIGZvciBhbiAiCisidW5jb25kaXRpb25hbCBvdmVycmlkZSwgb3IgZWxzZSBJPG9sZG1haW50YWluZXI+IEI8PUU8Z3Q+PiBJPG5ld21haW50YWluZXI+ICIKKyJ0byBwZXJmb3JtIGEgc3Vic3RpdHV0aW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb3ZlcnJpZGUuNTo2MQorbXNnaWQgIiIKKyJUaGUgb3ZlcnJpZGUgZmlsZXMgdXNlZCB0byBtYWtlIHRoZSBvZmZpY2lhbCBQYWNrYWdlcyBsaXN0cyBtYXkgYmUgZm91bmQgaW4gIgorInRoZSBJPGluZGljZXM+IGRpcmVjdG9yeSBvbiBhbnkgRGViaWFuIG1pcnJvci4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW92ZXJyaWRlLjU6NjYKK21zZ2lkICIiCisiQjxkcGtnLXNjYW5wYWNrYWdlcz4oMSksIEI8ZHBrZy1zY2Fuc291cmNlcz4oMSksIEI8YXB0LWZ0cGFyY2hpdmU+KDEpLCAiCisiQjwvdXNyL3NoYXJlL2RvYy9kZWJpYW4tcG9saWN5L3BvbGljeS5odG1sL2luZGV4Lmh0bWw+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUSAorIzogZGViLWV4dHJhLW92ZXJyaWRlLjU6MQorIywgbm8td3JhcAorbXNnaWQgImRlYi1leHRyYS1vdmVycmlkZSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUSAorIzogZGViLWV4dHJhLW92ZXJyaWRlLjU6MQorIywgbm8td3JhcAorbXNnaWQgIjIwMDktMDgtMTYiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWV4dHJhLW92ZXJyaWRlLjU6NAorbXNnaWQgImRlYi1leHRyYS1vdmVycmlkZSAtIERlYmlhbiBhcmNoaXZlIGV4dHJhIG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWV4dHJhLW92ZXJyaWRlLjU6MTIKK21zZ2lkICIiCisiV2hpbGUgbW9zdCBpbmZvcm1hdGlvbiBhYm91dCBhIGJpbmFyeS9zb3VyY2UgcGFja2FnZSBjYW4gYmUgZm91bmQgaW4gdGhlICIKKyJjb250cm9sLy5kc2MgZmlsZSwgYWxsIG9mIGl0IGNhbiBiZSBvdmVycmlkZGVuIHdoZW4gaXQncyBleHBvcnRlZCB0byAiCisiUGFja2FnZXMvU291cmNlcyBmaWxlcy4gVGhlIGV4dHJhIG92ZXJyaWRlIGZpbGUgY29udGFpbnMgdGhvc2Ugb3ZlcnJpZGVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItZXh0cmEtb3ZlcnJpZGUuNToxNgorbXNnaWQgIiIKKyJUaGUgZXh0cmEgb3ZlcnJpZGUgZmlsZSBoYXMgYSBzaW1wbGUgd2hpdGVzcGFjZS1kZWxpbWl0ZWQgZm9ybWF0LiBDb21tZW50cyAiCisiYXJlIGFsbG93ZWQgKGRlbm90ZWQgd2l0aCBhIEI8Iz4pLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItZXh0cmEtb3ZlcnJpZGUuNToyMQorbXNnaWQgIkk8cGFja2FnZT4gSTxmaWVsZC1uYW1lPiBJPHZhbHVlPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItZXh0cmEtb3ZlcnJpZGUuNToyNQorbXNnaWQgIkk8cGFja2FnZT4gaXMgdGhlIG5hbWUgb2YgdGhlIGJpbmFyeS9zb3VyY2UgcGFja2FnZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWV4dHJhLW92ZXJyaWRlLjU6MzEKK21zZ2lkICIiCisiSTxmaWVsZC1uYW1lPiBpcyB0aGUgbmFtZSBvZiB0aGUgZmllbGQgdGhhdCBpcyBvdmVycmlkZGVuLiAgSTx2YWx1ZT4gaXMgdGhlICIKKyJ2YWx1ZSB0byBwdXQgaW4gdGhlIGZpZWxkLiBJdCBjYW4gY29udGFpbiBzcGFjZXMgYXMgdGhlIGxpbmUgaXMgc3BsaXQgaW4gbm8gIgorIm1vcmUgdGhhbiAzIGNvbHVtbnMgd2hlbiBpdCdzIHBhcnNlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWV4dHJhLW92ZXJyaWRlLjU6MzYKK21zZ2lkICIiCisiVGhlIGV4dHJhIG92ZXJyaWRlIGZpbGVzIHVzZWQgdG8gbWFrZSB0aGUgb2ZmaWNpYWwgUGFja2FnZXMgbGlzdHMgbWF5IGJlICIKKyJmb3VuZCBpbiB0aGUgSTxpbmRpY2VzPiBkaXJlY3Rvcnkgb24gYW55IERlYmlhbiBtaXJyb3IuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1leHRyYS1vdmVycmlkZS41OjQwCittc2dpZCAiQjxkcGtnLXNjYW5wYWNrYWdlcz4oMSksIEI8ZHBrZy1zY2Fuc291cmNlcz4oMSksIEI8YXB0LWZ0cGFyY2hpdmU+KDEpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUSAorIzogZGViLXNobGlicy41OjE2CisjLCBuby13cmFwCittc2dpZCAiZGViLXNobGlicyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUSAorIzogZGViLXNobGlicy41OjE2CisjLCBuby13cmFwCittc2dpZCAiMjAwOC0wMi0xNyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc2hsaWJzLjU6MTkKK21zZ2lkICJkZWItc2hsaWJzIC0gRGViaWFuIHNoYXJlZCBsaWJyYXJ5IGluZm9ybWF0aW9uIGZpbGUiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNobGlicy41OjI5Cittc2dpZCAiIgorIkI8c2hsaWJzPiBmaWxlcyBtYXAgc2hhcmVkIGxpYnJhcnkgbmFtZXMgYW5kIHZlcnNpb25zIChJPHNvbmFtZXM+KSAgdG8gIgorImRlcGVuZGVuY2llcyBzdWl0YWJsZSBmb3IgYSBwYWNrYWdlIGNvbnRyb2wgZmlsZS4gIFRoZXJlIGlzIG9uZSBlbnRyeSBwZXIgIgorImxpbmUuIEJsYW5rIGxpbmVzIGFyZSBCPG5vdD4gYWxsb3dlZC4gIExpbmVzIGJlZ2lubmluZyB3aXRoIGFuIEI8Iz4gIgorImNoYXJhY3RlciBhcmUgY29uc2lkZXJlZCBjb21tZW50YXJ5LCBhbmQgYXJlIGlnbm9yZWQuICBBbGwgb3RoZXIgbGluZXMgbXVzdCAiCisiaGF2ZSB0aGUgZm9ybWF0IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zaGxpYnMuNTozNAorbXNnaWQgIltJPHR5cGU+Qjw6Pl0gSTxsaWJyYXJ5PiBJPHZlcnNpb24+IEk8ZGVwZW5kZW5jaWVzPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc2hsaWJzLjU6MzgKK21zZ2lkICIiCisiVGhlIEk8bGlicmFyeT4gYW5kIEk8dmVyc2lvbj4gZmllbGRzIGFyZSB3aGl0ZXNwYWNlLWRlbGltaXRlZCwgYnV0IHRoZSAiCisiSTxkZXBlbmRlbmNpZXM+IGZpZWxkIGV4dGVuZHMgdG8gdGhlIGVuZCBvZiB0aGUgbGluZS4gIFRoZSBJPHR5cGU+IGZpZWxkIGlzICIKKyJvcHRpb25hbCBhbmQgbm9ybWFsbHkgbm90IG5lZWRlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNobGlicy41OjQwCittc2dpZCAiU2VlIHRoZSBEZWJpYW4gUG9saWN5IE1hbnVhbCBmb3IgZnVydGhlciBkZXRhaWxzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZGViLXNobGlicy41OjQxIGRlYi1zeW1ib2xzLjU6NDMgZHBrZy4xOjcxNCBkcGtnLWFyY2hpdGVjdHVyZS4xOjI2MiBkcGtnLWRpdmVydC44OjkxIGRwa2ctbmFtZS4xOjY1IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0NTkKKyMsIG5vLXdyYXAKK21zZ2lkICJFWEFNUExFUyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc2hsaWJzLjU6NTAKK21zZ2lkICIiCisiVGhlIEI8c2hsaWJzPiBmaWxlIGZvciBhIHR5cGljYWwgbGlicmFyeSBwYWNrYWdlLCBuYW1lZCBJPGxpYmNydW5jaDE+LCB0aGF0ICIKKyJwcm92aWRlcyBvbmUgbGlicmFyeSB3aG9zZSBzb25hbWUgaXMgSTxsaWJjcnVuY2guc28uMT4sIG1pZ2h0IHJlYWQiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNobGlicy41OjUyCittc2dpZCAibGliY3J1bmNoIDEgbGliY3J1bmNoMSAoRTxndD49IDEuMi0xKSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc2hsaWJzLjU6NjAKK21zZ2lkICIiCisiVGhlIEk8ZGVwZW5kZW5jaWVzPiBtdXN0IG1lbnRpb24gdGhlIG1vc3QgcmVjZW50IHZlcnNpb24gb2YgdGhlIHBhY2thZ2UgdGhhdCAiCisiYWRkZWQgbmV3IHN5bWJvbHMgdG8gdGhlIGxpYnJhcnk6IGluIHRoZSBhYm92ZSBleGFtcGxlLCBuZXcgc3ltYm9scyB3ZXJlICIKKyJhZGRlZCB0byB2ZXJzaW9uIDEuMiBvZiBJPGxpYmNydW5jaD4uICBUaGlzIGlzIG5vdCB0aGUgb25seSByZWFzb24gdGhlICIKKyJkZXBlbmRlbmNpZXMgbWlnaHQgbmVlZCB0byBiZSB0aWdodGVuZWQ7IGFnYWluLCBzZWUgdGhlIERlYmlhbiBQb2xpY3kgTWFudWFsICIKKyJmb3IgZGV0YWlscy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNobGlicy41OjYzCittc2dpZCAiQjxkcGtnLXNobGliZGVwcz4oMSksIEI8ZGViLXN5bWJvbHM+KDUpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUSAorIzogZGViLXN1YnN0dmFycy41OjIKKyMsIG5vLXdyYXAKK21zZ2lkICJkZWItc3Vic3R2YXJzIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRICisjOiBkZWItc3Vic3R2YXJzLjU6MgorIywgbm8td3JhcAorbXNnaWQgIjIwMDktMDctMTUiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjUKK21zZ2lkICJkZWItc3Vic3R2YXJzIC0gRGViaWFuIHNvdXJjZSBzdWJzdGl0dXRpb24gdmFyaWFibGVzIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNTo4Cittc2dpZCAic3Vic3R2YXJzIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToxOQorbXNnaWQgIiIKKyJCZWZvcmUgQjxkcGtnLXNvdXJjZT4sIEI8ZHBrZy1nZW5jb250cm9sPiBhbmQgQjxkcGtnLWdlbmNoYW5nZXM+IHdyaXRlIHRoZWlyICIKKyJjb250cm9sIGluZm9ybWF0aW9uICh0byB0aGUgc291cmNlIGNvbnRyb2wgZmlsZSBCPC5kc2M+IGZvciBCPGRwa2ctc291cmNlPiAiCisiYW5kIHRvIHN0YW5kYXJkIG91dHB1dCBmb3IgQjxkcGtnLWdlbmNvbnRyb2w+IGFuZCBCPGRwa2ctZ2VuY2hhbmdlcz4pICB0aGV5ICIKKyJwZXJmb3JtIHNvbWUgdmFyaWFibGUgc3Vic3RpdHV0aW9ucyBvbiB0aGUgb3V0cHV0IGZpbGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToyNgorbXNnaWQgIiIKKyJBIHZhcmlhYmxlIHN1YnN0aXR1dGlvbiBoYXMgdGhlIGZvcm0gQjwkez5JPHZhcmlhYmxlLW5hbWU+Qjx9Pi4gIFZhcmlhYmxlICIKKyJuYW1lcyBjb25zaXN0IG9mIGFscGhhbnVtZXJpY3MsIGh5cGhlbnMgYW5kIGNvbG9ucyBhbmQgc3RhcnQgd2l0aCBhbiAiCisiYWxwaGFudW1lcmljLiBWYXJpYWJsZSBzdWJzdGl0dXRpb25zIGFyZSBwZXJmb3JtZWQgcmVwZWF0ZWRseSB1bnRpbCBub25lIGFyZSAiCisibGVmdDsgdGhlIGZ1bGwgdGV4dCBvZiB0aGUgZmllbGQgYWZ0ZXIgdGhlIHN1YnN0aXR1dGlvbiBpcyByZXNjYW5uZWQgdG8gbG9vayAiCisiZm9yIG1vcmUgc3Vic3RpdHV0aW9ucy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjMzCittc2dpZCAiIgorIkFmdGVyIGFsbCB0aGUgc3Vic3RpdHV0aW9ucyBoYXZlIGJlZW4gZG9uZSBlYWNoIG9jY3VycmVuY2Ugb2YgdGhlIHN0cmluZyAiCisiQjwke30+ICh3aGljaCBpcyBub3QgYSBsZWdhbCBzdWJzdGl0dXRpb24pIGlzIHJlcGxhY2VkIHdpdGggYSBCPCQ+IHNpZ24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNTozOAorbXNnaWQgIiIKKyJXaGlsZSB2YXJpYWJsZSBzdWJzdGl0dXRpb24gaXMgZG9uZSBvbiBhbGwgY29udHJvbCBmaWVsZHMsIHNvbWUgb2YgdGhvc2UgIgorImZpZWxkcyBhcmUgdXNlZCBhbmQgbmVlZGVkIGR1cmluZyB0aGUgYnVpbGQgd2hlbiB0aGUgc3Vic3RpdHV0aW9uIGRpZCBub3QgIgorInlldCBvY2N1ci4gVGhhdCdzIHdoeSB5b3UgY2FuJ3QgdXNlIHZhcmlhYmxlcyBpbiB0aGUgQjxQYWNrYWdlPiwgQjxTb3VyY2U+ICIKKyJhbmQgQjxBcmNoaXRlY3R1cmU+IGZpZWxkcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjQ1Cittc2dpZCAiIgorIlZhcmlhYmxlIHN1YnN0aXR1dGlvbiBoYXBwZW5zIG9uIHRoZSBjb250ZW50IG9mIHRoZSBmaWVsZHMgYWZ0ZXIgdGhleSBoYXZlICIKKyJiZWVuIHBhcnNlZCwgdGh1cyBpZiB5b3Ugd2FudCBhIHZhcmlhYmxlIHRvIGV4cGFuZCBvdmVyIG11bHRpcGxlIGxpbmVzIHlvdSAiCisiZG8gbm90IGhhdmUgdG8gaW5jbHVkZSBhIHNwYWNlIGFmdGVyIHRoZSBuZXdsaW5lLiBUaGlzIGlzIGRvbmUgaW1wbGljaXRseSAiCisid2hlbiB0aGUgZmllbGQgaXMgb3V0cHV0LiBGb3IgZXhhbXBsZSwgaWYgdGhlIHZhcmlhYmxlIEI8JHtEZXNjcmlwdGlvbn0+IGlzICIKKyJzZXQgdG8gXCJmb28gaXMgYmFyLiR7TmV3bGluZX1mb28gaXMgZ3JlYXQuXCIgYW5kIGlmIHlvdSBoYXZlIHRoZSBmb2xsb3dpbmcgIgorImZpZWxkOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6NTAKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiIERlc2NyaXB0aW9uOiBmb28gYXBwbGljYXRpb25cbiIKKyIgICR7RGVzY3JpcHRpb259XG4iCisiICAuXG4iCisiICBNb3JlIHRleHQuXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjUyCittc2dpZCAiSXQgd2lsbCByZXN1bHQgaW46IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNTo1OAorIywgbm8td3JhcAorbXNnaWQgIiIKKyIgRGVzY3JpcHRpb246IGZvbyBhcHBsaWNhdGlvblxuIgorIiAgZm9vIGlzIGJhci5cbiIKKyIgIGZvbyBpcyBncmVhdC5cbiIKKyIgIC5cbiIKKyIgIE1vcmUgdGV4dC5cbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6NzEKK21zZ2lkICIiCisiVmFyaWFibGVzIGNhbiBiZSBzZXQgdXNpbmcgdGhlIEI8LVY+IGNvbW1vbiBvcHRpb24uIFRoZXkgY2FuIGJlIGFsc28gIgorInNwZWNpZmllZCBpbiB0aGUgZmlsZSBCPGRlYmlhbi9zdWJzdHZhcnM+IChvciB3aGF0ZXZlciBvdGhlciBmaWxlIGlzICIKKyJzcGVjaWZpZWQgdXNpbmcgdGhlIEI8LVQ+IG9wdGlvbikuIFRoaXMgZmlsZSBjb25zaXN0cyBvZiBsaW5lcyBvZiB0aGUgZm9ybSAiCisiSTxuYW1lPkI8PT5JPHZhbHVlPi4gIFRyYWlsaW5nIHdoaXRlc3BhY2Ugb24gZWFjaCBsaW5lLCBibGFuayBsaW5lcywgYW5kICIKKyJsaW5lcyBzdGFydGluZyB3aXRoIGEgQjwjPiBzeW1ib2wgKGNvbW1lbnRzKSBhcmUgaWdub3JlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjczCittc2dpZCAiQWRkaXRpb25hbGx5LCB0aGUgZm9sbG93aW5nIHN0YW5kYXJkIHZhcmlhYmxlcyBhcmUgYXZhaWxhYmxlOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLXN1YnN0dmFycy41OjczCisjLCBuby13cmFwCittc2dpZCAiQjxBcmNoPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6NzcKK21zZ2lkICJUaGUgY3VycmVudCBidWlsZCBhcmNoaXRlY3R1cmUgKGZyb20gQjxkcGtnIC0tcHJpbnQtYXJjaGl0ZWN0dXJlPikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3Vic3R2YXJzLjU6NzcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHNvdXJjZTpWZXJzaW9uPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6ODAKK21zZ2lkICJUaGUgc291cmNlIHBhY2thZ2UgdmVyc2lvbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zdWJzdHZhcnMuNTo4MAorIywgbm8td3JhcAorbXNnaWQgIkI8c291cmNlOlVwc3RyZWFtLVZlcnNpb24+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNTo4NAorbXNnaWQgIiIKKyJUaGUgdXBzdHJlYW0gc291cmNlIHBhY2thZ2UgdmVyc2lvbiwgaW5jbHVkaW5nIHRoZSBEZWJpYW4gdmVyc2lvbiBlcG9jaCBpZiAiCisiYW55LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLXN1YnN0dmFycy41Ojg0CisjLCBuby13cmFwCittc2dpZCAiQjxiaW5hcnk6VmVyc2lvbj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41Ojg4Cittc2dpZCAiIgorIlRoZSBiaW5hcnkgcGFja2FnZSB2ZXJzaW9uICh3aGljaCBtYXkgZGlmZmVyIGZyb20gc291cmNlOlZlcnNpb24gaW4gYSBiaW5OTVUgIgorImZvciBleGFtcGxlKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zdWJzdHZhcnMuNTo4OAorIywgbm8td3JhcAorbXNnaWQgIkI8U291cmNlLVZlcnNpb24+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNTo5MworbXNnaWQgIiIKKyJUaGUgc291cmNlIHBhY2thZ2UgdmVyc2lvbiAoZnJvbSB0aGUgY2hhbmdlbG9nIGZpbGUpLiBUaGlzIHZhcmlhYmxlIGlzIG5vdyAiCisiQjxkZXByZWNhdGVkPiBhcyBpdHMgbWVhbmluZyBpcyBkaWZmZXJlbnQgZnJvbSBpdHMgZnVuY3Rpb24sIHBsZWFzZSB1c2UgdGhlICIKKyJCPHNvdXJjZTpWZXJzaW9uPiBvciBCPGJpbmFyeTpWZXJzaW9uPiBhcyBhcHByb3ByaWF0ZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zdWJzdHZhcnMuNTo5MworIywgbm8td3JhcAorbXNnaWQgIkI8SW5zdGFsbGVkLVNpemU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToxMDIKK21zZ2lkICIiCisiVGhlIHRvdGFsIHNpemUgb2YgdGhlIHBhY2thZ2UncyBpbnN0YWxsZWQgZmlsZXMuIFRoaXMgdmFsdWUgaXMgY29waWVkIGludG8gIgorInRoZSBjb3JyZXNwb25kaW5nIGNvbnRyb2wgZmlsZSBmaWVsZDsgc2V0dGluZyBpdCB3aWxsIG1vZGlmeSB0aGUgdmFsdWUgb2YgIgorInRoYXQgZmllbGQuIElmIHRoaXMgdmFyaWFibGUgaXNuJ3Qgc2V0IEI8ZHBrZy1nZW5jb250cm9sPiB3aWxsIHVzZSBCPGR1IC1rICIKKyJkZWJpYW4vdG1wPiB0byBmaW5kIHRoZSBkZWZhdWx0IHZhbHVlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLXN1YnN0dmFycy41OjEwMgorIywgbm8td3JhcAorbXNnaWQgIkI8RXh0cmEtU2l6ZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjExMQorbXNnaWQgIiIKKyJBZGRpdGlvbmFsIGRpc2sgc3BhY2UgdXNlZCB3aGVuIHRoZSBwYWNrYWdlIGlzIGluc3RhbGxlZC4gSWYgdGhpcyB2YXJpYWJsZSAiCisiaXMgc2V0IGl0cyB2YWx1ZSBpcyBhZGRlZCB0byB0aGF0IG9mIHRoZSBCPEluc3RhbGxlZC1TaXplPiB2YXJpYWJsZSAod2hldGhlciAiCisic2V0IGV4cGxpY2l0bHkgb3IgdXNpbmcgdGhlIGRlZmF1bHQgdmFsdWUpIGJlZm9yZSBpdCBpcyBjb3BpZWQgaW50byB0aGUgIgorIkI8SW5zdGFsbGVkLVNpemU+IGNvbnRyb2wgZmlsZSBmaWVsZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zdWJzdHZhcnMuNToxMTEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPEY6Pkk8ZmllbGRuYW1lPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MTE4Cittc2dpZCAiIgorIlRoZSB2YWx1ZSBvZiB0aGUgb3V0cHV0IGZpZWxkIEk8ZmllbGRuYW1lPiAod2hpY2ggbXVzdCBiZSBnaXZlbiBpbiB0aGUgIgorImNhbm9uaWNhbCBjYXBpdGFsaXNhdGlvbikuIFNldHRpbmcgdGhlc2UgdmFyaWFibGVzIGhhcyBubyBlZmZlY3Qgb3RoZXIgdGhhbiAiCisib24gcGxhY2VzIHdoZXJlIHRoZXkgYXJlIGV4cGFuZGVkIGV4cGxpY2l0bHkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3Vic3R2YXJzLjU6MTE4CisjLCBuby13cmFwCittc2dpZCAiQjxGb3JtYXQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToxMjgKK21zZ2lkICIiCisiVGhlIEI8LmNoYW5nZXM+IGZpbGUgZm9ybWF0IHZlcnNpb24gZ2VuZXJhdGVkIGJ5IHRoaXMgdmVyc2lvbiBvZiB0aGUgc291cmNlICIKKyJwYWNrYWdpbmcgc2NyaXB0cy4gSWYgeW91IHNldCB0aGlzIHZhcmlhYmxlIHRoZSBjb250ZW50cyBvZiB0aGUgQjxGb3JtYXQ+ICIKKyJmaWVsZCBpbiB0aGUgQjwuY2hhbmdlcz4gZmlsZSB3aWxsIGNoYW5nZSB0b28uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3Vic3R2YXJzLjU6MTI4CisjLCBuby13cmFwCittc2dpZCAiQjxOZXdsaW5lPiwgQjxTcGFjZT4sIEI8VGFiPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MTMxCittc2dpZCAiVGhlc2UgdmFyaWFibGVzIGVhY2ggaG9sZCB0aGUgY29ycmVzcG9uZGluZyBjaGFyYWN0ZXIuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3Vic3R2YXJzLjU6MTMxCisjLCBuby13cmFwCittc2dpZCAiQjxzaGxpYnM6Pkk8ZGVwZW5kZW5jeWZpZWxkPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MTM1Cittc2dpZCAiIgorIlZhcmlhYmxlIHNldHRpbmdzIHdpdGggbmFtZXMgb2YgdGhpcyBmb3JtIGFyZSBnZW5lcmF0ZWQgYnkgIgorIkI8ZHBrZy1zaGxpYmRlcHM+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLXN1YnN0dmFycy41OjEzNQorIywgbm8td3JhcAorbXNnaWQgIkI8ZHBrZzpVcHN0cmVhbS1WZXJzaW9uPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MTM4Cittc2dpZCAiVGhlIHVwc3RyZWFtIHZlcnNpb24gb2YgZHBrZy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zdWJzdHZhcnMuNToxMzgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGRwa2c6VmVyc2lvbj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjE0MQorbXNnaWQgIlRoZSBmdWxsIHZlcnNpb24gb2YgZHBrZy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjE0NAorbXNnaWQgIiIKKyJJZiBhIHZhcmlhYmxlIGlzIHJlZmVycmVkIHRvIGJ1dCBub3QgZGVmaW5lZCBpdCBnZW5lcmF0ZXMgYSB3YXJuaW5nIGFuZCBhbiAiCisiZW1wdHkgdmFsdWUgaXMgYXNzdW1lZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRlYi1zdWJzdHZhcnMuNToxNDUgZHBrZy4xOjYyNyBkcGtnLWFyY2hpdGVjdHVyZS4xOjI4NCBkcGtnLmNmZy41OjEyIGRwa2ctYnVpbGRmbGFncy4xOjEyMSBkcGtnLWRpc3RhZGRmaWxlLjE6MzkgZHBrZy1kaXZlcnQuODoxMjIgZHBrZy1nZW5jaGFuZ2VzLjE6MTM4IGRwa2ctZ2VuY29udHJvbC4xOjEyOCBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTE1IGRwa2ctc3BsaXQuMToyMDYgZHBrZy1zdGF0b3ZlcnJpZGUuODo3NCBkc2VsZWN0LmNmZy41OjEyIHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozNjAKKyMsIG5vLXdyYXAKK21zZ2lkICJGSUxFUyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLXN1YnN0dmFycy41OjE0NgorIywgbm8td3JhcAorbXNnaWQgIkI8ZGViaWFuL3N1YnN0dmFycz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjE0OQorbXNnaWQgIkxpc3Qgb2Ygc3Vic3RpdHV0aW9uIHZhcmlhYmxlcyBhbmQgdmFsdWVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZGViLXN1YnN0dmFycy41OjE1MCBkcGtnLjE6NzgwIGRwa2ctYnVpbGRwYWNrYWdlLjE6MjQ0IGRwa2ctZGViLjE6MjM4IGRwa2ctbmFtZS4xOjg2IGRwa2ctc291cmNlLjE6NzIyIGRwa2ctc3BsaXQuMToxOTkgZHNlbGVjdC4xOjQyOSB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDg2CisjLCBuby13cmFwCittc2dpZCAiQlVHUyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MTUzIGRwa2ctc291cmNlLjE6NzI1Cittc2dpZCAiIgorIlRoZSBwb2ludCBhdCB3aGljaCBmaWVsZCBvdmVycmlkaW5nIG9jY3VycyBjb21wYXJlZCB0byBjZXJ0YWluIHN0YW5kYXJkICIKKyJvdXRwdXQgZmllbGQgc2V0dGluZ3MgaXMgcmF0aGVyIGNvbmZ1c2VkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MTYwCittc2dpZCAiIgorIkI8ZHBrZz4oMSksIEI8ZHBrZy1nZW5jaGFuZ2VzPigxKSwgQjxkcGtnLWdlbmNvbnRyb2w+KDEpLCAiCisiQjxkcGtnLXNobGliZGVwcz4oMSksIEI8ZHBrZy1zb3VyY2U+KDEpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZGViLXN1YnN0dmFycy41OjE2MSBkcGtnLWFyY2hpdGVjdHVyZS4xOjMwMyBkcGtnLmNmZy41OjE5IGRwa2ctYnVpbGRmbGFncy4xOjI2NiBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6NDAgZHBrZy1kZWIuMToyNjUgZHBrZy1kaXZlcnQuODoxMzUgZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTo2NiBkcGtnLW5hbWUuMToxMDQgZHBrZy1xdWVyeS4xOjIxNCBkcGtnLXNjYW5zb3VyY2VzLjE6NzYgZHBrZy1zcGxpdC4xOjIyMyBkcGtnLXN0YXRvdmVycmlkZS44Ojg3IGRwa2ctdmVuZG9yLjE6NDggZHNlbGVjdC5jZmcuNToxOQorIywgbm8td3JhcAorbXNnaWQgIkFVVEhPUiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MTYzIGRwa2ctYnVpbGRwYWNrYWdlLjE6MjU5IGRwa2ctZGlzdGFkZGZpbGUuMTo0OSBkcGtnLWRlYi4xOjI2NyBkcGtnLWdlbmNoYW5nZXMuMToxNTAgZHBrZy1nZW5jb250cm9sLjE6MTQ0IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxMjUgZHBrZy1zaGxpYmRlcHMuMTozMzEgZHBrZy1zb3VyY2UuMTo3MzIgZHBrZy1zcGxpdC4xOjIyNQorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAxOTk1LTE5OTYgSWFuIEphY2tzb24iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjE2NSBkcGtnLWJ1aWxkcGFja2FnZS4xOjI2MSBkcGtnLWRpc3RhZGRmaWxlLjE6NTEgZHBrZy1nZW5jaGFuZ2VzLjE6MTUyIGRwa2ctZ2VuY29udHJvbC4xOjE0NiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTI3IGRwa2ctc2hsaWJkZXBzLjE6MzMzIGRwa2ctc291cmNlLjE6NzM0IGRwa2ctc3RhdG92ZXJyaWRlLjg6ODkKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAwMCBXaWNoZXJ0IEFra2VybWFuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRICisjOiBkZWItc3ltYm9scy41OjIKKyMsIG5vLXdyYXAKK21zZ2lkICJkZWItc3ltYm9scyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3ltYm9scy41OjUKK21zZ2lkICJkZWItc3ltYm9scyAtIERlYmlhbidzIGV4dGVuZGVkIHNoYXJlZCBsaWJyYXJ5IGluZm9ybWF0aW9uIGZpbGUiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNTo4Cittc2dpZCAic3ltYm9scyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3ltYm9scy41OjEyCittc2dpZCAiIgorIlRoZSBmb3JtYXQgZm9yIGFuIGV4dGVuZGVkIHNoYXJlZCBsaWJyYXJ5IGRlcGVuZGVuY3kgaW5mb3JtYXRpb24gZW50cnkgaW4gIgorInRoZXNlIGZpbGVzIGlzOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3ltYm9scy41OjE0Cittc2dpZCAiSTxsaWJyYXJ5LXNvbmFtZSBtYWluLWRlcGVuZGVuY3ktdGVtcGxhdGU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6MTYKK21zZ2lkICJbIHwgSTxhbHRlcm5hdGl2ZS1kZXBlbmRlbmN5LXRlbXBsYXRlPiBdIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6MTgKK21zZ2lkICJbIC4uLiBdIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6MjAKK21zZ2lkICJbICogSTxmaWVsZC1uYW1lPjogSTxmaWVsZC12YWx1ZT4gXSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3ltYm9scy41OjIzCisjLCBuby13cmFwCittc2dpZCAiIgorIlsgLi4uIF1cbiIKKyIgSTxzeW1ib2w+IEk8bWluaW1hbC12ZXJzaW9uPlsgSTxpZC1vZi1kZXBlbmRlbmN5LXRlbXBsYXRlPiBdXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNToyOQorbXNnaWQgIiIKKyJUaGUgSTxsaWJyYXJ5LXNvbmFtZT4gaXMgZXhhY3RseSB0aGUgdmFsdWUgb2YgdGhlIFNPTkFNRSBmaWVsZCBhcyBleHBvcnRlZCAiCisiYnkgQjxvYmpkdW1wPigxKS4gQSBJPGRlcGVuZGVuY3ktdGVtcGxhdGU+IGlzIGEgZGVwZW5kZW5jeSB3aGVyZSBJPCNNSU5WRVIjPiAiCisiaXMgZHluYW1pY2FsbHkgcmVwbGFjZWQgZWl0aGVyIGJ5IGEgdmVyc2lvbiBjaGVjayBsaWtlIFwiKEU8Z3Q+PSAiCisiSTxtaW5pbWFsLXZlcnNpb24+KVwiIG9yIGJ5IG5vdGhpbmcgKGlmIGFuIHVudmVyc2lvbmVkIGRlcGVuZGVuY3kgaXMgZGVlbWVkICIKKyJzdWZmaWNpZW50KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNTozNgorbXNnaWQgIiIKKyJFYWNoIGV4cG9ydGVkIEk8c3ltYm9sPiAobGlzdGVkIGFzIEk8bmFtZT5ASTx2ZXJzaW9uPiwgd2l0aCBJPHZlcnNpb24+IGJlaW5nICIKKyJcIkJhc2VcIiBpZiB0aGUgbGlicmFyeSBpcyBub3QgdmVyc2lvbmVkKSBpcyBhc3NvY2lhdGVkIHRvIGEgIgorIkk8bWluaW1hbC12ZXJzaW9uPiBvZiBpdHMgZGVwZW5kZW5jeSB0ZW1wbGF0ZSAodGhlIG1haW4gZGVwZW5kZW5jeSB0ZW1wbGF0ZSAiCisiaXMgdXNlZCBpZiBJPGlkLW9mLWRlcGVuZGVuY3ktdGVtcGxhdGU+IGlzIG5vdCBwcmVzZW50KS4gVGhlIGZpcnN0ICIKKyJhbHRlcm5hdGl2ZSBkZXBlbmRlbmN5IHRlbXBsYXRlIGlzIG51bWJlcmVkIDEsIHRoZSBzZWNvbmQgb25lIDIsIGV0Yy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNTo0MworbXNnaWQgIiIKKyJFYWNoIGVudHJ5IGZvciBhIGxpYnJhcnkgY2FuIGFsc28gaGF2ZSBzb21lIGZpZWxkcyBvZiBtZXRhLWluZm9ybWF0aW9uLiAgIgorIlRob3NlIGZpZWxkcyBhcmUgc3RvcmVkIG9uIGxpbmVzIHN0YXJ0aW5nIHdpdGggYW4gYXN0ZXJpc2suIEN1cnJlbnRseSwgdGhlICIKKyJvbmx5IHZhbGlkIGZpZWxkIGlzIEk8QnVpbGQtRGVwZW5kcy1QYWNrYWdlPiwgaXQgaW5kaWNhdGVzIHRoZSBuYW1lIG9mIHRoZSAiCisiXCItZGV2XCIgcGFja2FnZSBhc3NvY2lhdGVkIHRvIHRoZSBsaWJyYXJ5IGFuZCBpcyB1c2VkIGJ5IEI8ZHBrZy1zaGxpYmRlcHM+ICIKKyJ0byBtYWtlIHN1cmUgdGhhdCB0aGUgZGVwZW5kZW5jeSBnZW5lcmF0ZWQgaXMgYXQgbGVhc3QgYXMgc3RyaWN0IGFzIHRoZSAiCisiY29ycmVzcG9uZGluZyBidWlsZCBkZXBlbmRlbmN5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZGViLXN5bWJvbHMuNTo0NAorIywgbm8td3JhcAorbXNnaWQgIlNpbXBsZSBzeW1ib2xzIGZpbGUiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNTo1MAorIywgbm8td3JhcAorbXNnaWQgIiIKKyJsaWJmdHAuc28uMyBsaWJmdHAzICNNSU5WRVIjXG4iCisiIERlZmF1bHROZXRidWZAQmFzZSAzLjEtMS02XG4iCisiIEZ0cEFjY2Vzc0BCYXNlIDMuMS0xLTZcbiIKKyIgWy4uLl1cbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZGViLXN5bWJvbHMuNTo1MAorIywgbm8td3JhcAorbXNnaWQgIkFkdmFuY2VkIHN5bWJvbHMgZmlsZSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3ltYm9scy41OjUzCittc2dpZCAibGliR0wuc28uMSBsaWJnbDEiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNTo1NQorbXNnaWQgInwgbGliZ2wxLW1lc2EtZ2x4ICNNSU5WRVIjIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6NjEKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiKiBCdWlsZC1EZXBlbmRzLVBhY2thZ2U6IGxpYmdsMS1tZXNhLWRldlxuIgorIiBwdWJsaWNHbFN5bWJvbEBCYXNlIDYuMy0xXG4iCisiIFsuLi5dXG4iCisiIGltcGxlbWVudGF0aW9uU3BlY2lmaWNTeW1ib2xAQmFzZSA2LjUuMi03IDFcbiIKKyIgWy4uLl1cbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3ltYm9scy41OjYzCittc2dpZCAiQjxodHRwOi8vd2lraS5kZWJpYW4ub3JnL1Byb2plY3RzL0ltcHJvdmVkRHBrZ1NobGliZGVwcz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNTo2NQorbXNnaWQgIkI8ZHBrZy1zaGxpYmRlcHM+KDEpLCBCPGRwa2ctZ2Vuc3ltYm9scz4oMSkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRICisjOiBkZWItdHJpZ2dlcnMuNToxCisjLCBuby13cmFwCittc2dpZCAiZGViLXRyaWdnZXJzIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi10cmlnZ2Vycy41OjQKK21zZ2lkICJkZWItdHJpZ2dlcnMgLSBwYWNrYWdlIHRyaWdnZXJzIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi10cmlnZ2Vycy41OjcKK21zZ2lkICJ0cmlnZ2VycyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdHJpZ2dlcnMuNToxMgorbXNnaWQgIiIKKyJBIHBhY2thZ2UgZGVjbGFyZXMgaXRzIHJlbGF0aW9uc2hpcCB0byBzb21lIHRyaWdnZXIocykgYnkgaW5jbHVkaW5nIGEgIgorIkk8dHJpZ2dlcnM+IGZpbGUgaW4gaXRzIGNvbnRyb2wgYXJjaGl2ZSAoaS5lLiBJPERFQklBTi90cmlnZ2Vycz4gZHVyaW5nICIKKyJwYWNrYWdlIGNyZWF0aW9uKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXRyaWdnZXJzLjU6MTYKK21zZ2lkICIiCisiVGhpcyBmaWxlIGNvbnRhaW5zIGRpcmVjdGl2ZXMsIG9uZSBwZXIgbGluZS4gTGVhZGluZyBhbmQgdHJhaWxpbmcgd2hpdGVzcGFjZSAiCisiYW5kIGV2ZXJ5dGhpbmcgYWZ0ZXIgdGhlIGZpcnN0IEI8Iz4gb24gYW55IGxpbmUgd2lsbCBiZSB0cmltbWVkLCBhbmQgZW1wdHkgIgorImxpbmVzIHdpbGwgYmUgaWdub3JlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXRyaWdnZXJzLjU6MTgKK21zZ2lkICJUaGUgdHJpZ2dlciBjb250cm9sIGRpcmVjdGl2ZXMgY3VycmVudGx5IHN1cHBvcnRlZCBhcmU6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi10cmlnZ2Vycy41OjIyCittc2dpZCAiQjxpbnRlcmVzdD4gSTx0cmlnZ2VyLW5hbWU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi10cmlnZ2Vycy41OjI2Cittc2dpZCAiQjxpbnRlcmVzdC1ub2F3YWl0PiBJPHRyaWdnZXItbmFtZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXRyaWdnZXJzLjU6MzMKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRoYXQgdGhlIHBhY2thZ2UgaXMgaW50ZXJlc3RlZCBpbiB0aGUgbmFtZWQgdHJpZ2dlci4gQWxsIHRyaWdnZXJzICIKKyJpbiB3aGljaCBhIHBhY2thZ2UgaXMgaW50ZXJlc3RlZCBtdXN0IGJlIGxpc3RlZCB1c2luZyB0aGlzIGRpcmVjdGl2ZSBpbiB0aGUgIgorInRyaWdnZXJzIGNvbnRyb2wgZmlsZS4gVGhlIFwibm9hd2FpdFwiIHZhcmlhbnQgZG9lcyBub3QgcHV0IHRoZSB0cmlnZ2VyaW5nICIKKyJwYWNrYWdlcyBpbiB0cmlnZ2Vycy1hd2FpdGVkIHN0YXRlLiBUaGlzIHNob3VsZCBiZSB1c2VkIHdoZW4gdGhlICIKKyJmdW5jdGlvbmFsaXR5IHByb3ZpZGVkIGJ5IHRoZSB0cmlnZ2VyIGlzIG5vdCBjcnVjaWFsLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdHJpZ2dlcnMuNTozNworbXNnaWQgIkI8YWN0aXZhdGU+IEk8dHJpZ2dlci1uYW1lPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdHJpZ2dlcnMuNTo0MQorbXNnaWQgIkI8YWN0aXZhdGUtbm9hd2FpdD4gSTx0cmlnZ2VyLW5hbWU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi10cmlnZ2Vycy41OjUwCittc2dpZCAiIgorIkFycmFuZ2VzIHRoYXQgY2hhbmdlcyB0byB0aGlzIHBhY2thZ2UncyBzdGF0ZSB3aWxsIGFjdGl2YXRlIHRoZSBzcGVjaWZpZWQgIgorInRyaWdnZXIuIFRoZSB0cmlnZ2VyIHdpbGwgYmUgYWN0aXZhdGVkIGF0IHRoZSBzdGFydCBvZiB0aGUgZm9sbG93aW5nICIKKyJvcGVyYXRpb25zOiB1bnBhY2ssIGNvbmZpZ3VyZSwgcmVtb3ZlIChpbmNsdWRpbmcgZm9yIHRoZSBiZW5lZml0IG9mIGEgIgorImNvbmZsaWN0aW5nIHBhY2thZ2UpLCBwdXJnZSBhbmQgZGVjb25maWd1cmUuICBUaGUgXCJub2F3YWl0XCIgdmFyaWFudCBkb2VzICIKKyJub3QgcHV0IHRoZSB0cmlnZ2VyaW5nIHBhY2thZ2VzIGluIHRyaWdnZXJzLWF3YWl0ZWQgc3RhdGUuIFRoaXMgc2hvdWxkIGJlICIKKyJ1c2VkIHdoZW4gdGhlIGZ1bmN0aW9uYWxpdHkgcHJvdmlkZWQgYnkgdGhlIHRyaWdnZXIgaXMgbm90IGNydWNpYWwuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi10cmlnZ2Vycy41OjU4Cittc2dpZCAiIgorIklmIHRoaXMgcGFja2FnZSBkaXNhcHBlYXJzIGR1cmluZyB0aGUgdW5wYWNraW5nIG9mIGFub3RoZXIgcGFja2FnZSB0aGUgIgorInRyaWdnZXIgd2lsbCBiZSBhY3RpdmF0ZWQgd2hlbiB0aGUgZGlzYXBwZWFyYW5jZSBpcyBub3RlZCB0b3dhcmRzIHRoZSBlbmQgb2YgIgorInRoZSB1bnBhY2suIFRyaWdnZXIgcHJvY2Vzc2luZywgYW5kIHRyYW5zaXRpb24gZnJvbSB0cmlnZ2Vycy1hd2FpdGVkIHRvICIKKyJpbnN0YWxsZWQsIGRvZXMgbm90IGNhdXNlIGFjdGl2YXRpb25zLiAgSW4gdGhlIGNhc2Ugb2YgdW5wYWNrLCB0cmlnZ2VycyAiCisibWVudGlvbmVkIGluIGJvdGggdGhlIG9sZCBhbmQgbmV3IHZlcnNpb25zIG9mIHRoZSBwYWNrYWdlIHdpbGwgYmUgYWN0aXZhdGVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdHJpZ2dlcnMuNTo2MQorbXNnaWQgIiIKKyJVbmtub3duIGRpcmVjdGl2ZXMgYXJlIGFuIGVycm9yIHdoaWNoIHdpbGwgcHJldmVudCBpbnN0YWxsYXRpb24gb2YgdGhlICIKKyJwYWNrYWdlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdHJpZ2dlcnMuNTo2NgorbXNnaWQgIiIKKyJUaGUgXCItbm9hd2FpdFwiIHZhcmlhbnRzIGFyZSBvbmx5IHN1cHBvcnRlZCBieSBkcGtnIDEuMTYuMSBvciBuZXdlciwgYW5kICIKKyJ3aWxsIGxlYWQgdG8gZXJyb3JzIGlmIHVzZWQgd2l0aCBhbiBvbGRlciBkcGtnLiBJdCBpcyB0aHVzIHJlY29tbWVuZGVkIHRvICIKKyJhZGQgYSBcIlByZS1EZXBlbmRzOiBkcGtnIChFPGd0Pj0gMS4xNi4xKVwiIHRvIGFueSBwYWNrYWdlIHRoYXQgd2lzaCB0byB1c2UgIgorInRob3NlIGRpcmVjdGl2ZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi10cmlnZ2Vycy41OjcwCittc2dpZCAiQjxkcGtnLXRyaWdnZXI+KDEpLCBCPGRwa2c+KDEpLCBCPC91c3Ivc2hhcmUvZG9jL2Rwa2ctZGV2L3RyaWdnZXJzLnR4dC5nej4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLjE6MQorIywgbm8td3JhcAorbXNnaWQgImRwa2ciCittc2dzdHIgIiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2cuMToxIGRwa2cuY2ZnLjU6MSBkcGtnLWJ1aWxkZmxhZ3MuMToxIGRwa2ctZGViLjE6MSBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjEgZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMToxIGRwa2ctcXVlcnkuMToxIGRwa2ctdHJpZ2dlci4xOjEgZHBrZy12ZW5kb3IuMToxIGRzZWxlY3QuY2ZnLjU6MQorIywgbm8td3JhcAorbXNnaWQgImRwa2cgc3VpdGUiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQKK21zZ2lkICJkcGtnIC0gcGFja2FnZSBtYW5hZ2VyIGZvciBEZWJpYW4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjgKK21zZ2lkICJCPGRwa2c+IFtJPG9wdGlvbj4uLi5dIEk8YWN0aW9uPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy4xOjkKKyMsIG5vLXdyYXAKK21zZ2lkICJXQVJOSU5HIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxMworbXNnaWQgIiIKKyJUaGlzIG1hbnVhbCBpcyBpbnRlbmRlZCBmb3IgdXNlcnMgd2lzaGluZyB0byB1bmRlcnN0YW5kIEI8ZHBrZz4ncyBjb21tYW5kICIKKyJsaW5lIG9wdGlvbnMgYW5kIHBhY2thZ2Ugc3RhdGVzIGluIG1vcmUgZGV0YWlsIHRoYW4gdGhhdCBwcm92aWRlZCBieSBCPGRwa2cgIgorIi0taGVscD4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxOAorbXNnaWQgIiIKKyJJdCBzaG91bGQgSTxub3Q+IGJlIHVzZWQgYnkgcGFja2FnZSBtYWludGFpbmVycyB3aXNoaW5nIHRvIHVuZGVyc3RhbmQgaG93ICIKKyJCPGRwa2c+IHdpbGwgaW5zdGFsbCB0aGVpciBwYWNrYWdlcy4gVGhlIGRlc2NyaXB0aW9ucyBvZiB3aGF0IEI8ZHBrZz4gZG9lcyAiCisid2hlbiBpbnN0YWxsaW5nIGFuZCByZW1vdmluZyBwYWNrYWdlcyBhcmUgcGFydGljdWxhcmx5IGluYWRlcXVhdGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyNgorbXNnaWQgIiIKKyJCPGRwa2c+IGlzIGEgdG9vbCB0byBpbnN0YWxsLCBidWlsZCwgcmVtb3ZlIGFuZCBtYW5hZ2UgRGViaWFuIHBhY2thZ2VzLiBUaGUgIgorInByaW1hcnkgYW5kIG1vcmUgdXNlci1mcmllbmRseSBmcm9udC1lbmQgZm9yIEI8ZHBrZz4gaXMgIgorIkI8YXB0aXR1ZGU+KDEpLiBCPGRwa2c+IGl0c2VsZiBpcyBjb250cm9sbGVkIGVudGlyZWx5IHZpYSBjb21tYW5kIGxpbmUgIgorInBhcmFtZXRlcnMsIHdoaWNoIGNvbnNpc3Qgb2YgZXhhY3RseSBvbmUgYWN0aW9uIGFuZCB6ZXJvIG9yIG1vcmUgIgorIm9wdGlvbnMuIFRoZSBhY3Rpb24tcGFyYW1ldGVyIHRlbGxzIEI8ZHBrZz4gd2hhdCB0byBkbyBhbmQgb3B0aW9ucyBjb250cm9sICIKKyJ0aGUgYmVoYXZpb3Igb2YgdGhlIGFjdGlvbiBpbiBzb21lIHdheS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjMzCittc2dpZCAiIgorIkI8ZHBrZz4gY2FuIGFsc28gYmUgdXNlZCBhcyBhIGZyb250LWVuZCB0byBCPGRwa2ctZGViPigxKSBhbmQgIgorIkI8ZHBrZy1xdWVyeT4oMSkuIFRoZSBsaXN0IG9mIHN1cHBvcnRlZCBhY3Rpb25zIGNhbiBiZSBmb3VuZCBsYXRlciBvbiBpbiB0aGUgIgorIkI8QUNUSU9OUz4gc2VjdGlvbi4gSWYgYW55IHN1Y2ggYWN0aW9uIGlzIGVuY291bnRlcmVkIEI8ZHBrZz4ganVzdCBydW5zICIKKyJCPGRwa2ctZGViPiBvciBCPGRwa2ctcXVlcnk+IHdpdGggdGhlIHBhcmFtZXRlcnMgZ2l2ZW4gdG8gaXQsIGJ1dCBubyAiCisic3BlY2lmaWMgb3B0aW9ucyBhcmUgY3VycmVudGx5IHBhc3NlZCB0byB0aGVtLCB0byB1c2UgYW55IHN1Y2ggb3B0aW9uIHRoZSAiCisiYmFjay1lbmRzIG5lZWQgdG8gYmUgY2FsbGVkIGRpcmVjdGx5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy4xOjM0CisjLCBuby13cmFwCittc2dpZCAiSU5GT1JNQVRJT04gQUJPVVQgUEFDS0FHRVMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjM5Cittc2dpZCAiIgorIkI8ZHBrZz4gbWFpbnRhaW5zIHNvbWUgdXNhYmxlIGluZm9ybWF0aW9uIGFib3V0IGF2YWlsYWJsZSBwYWNrYWdlcy4gVGhlICIKKyJpbmZvcm1hdGlvbiBpcyBkaXZpZGVkIGluIHRocmVlIGNsYXNzZXM6IEI8c3RhdGVzPiwgQjxzZWxlY3Rpb24gc3RhdGVzPiBhbmQgIgorIkI8ZmxhZ3M+LiBUaGVzZSB2YWx1ZXMgYXJlIGludGVuZGVkIHRvIGJlIGNoYW5nZWQgbWFpbmx5IHdpdGggQjxkc2VsZWN0Pi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2cuMTozOQorIywgbm8td3JhcAorbXNnaWQgIlBBQ0tBR0UgU1RBVEVTIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NDAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPG5vdC1pbnN0YWxsZWQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0MworbXNnaWQgIlRoZSBwYWNrYWdlIGlzIG5vdCBpbnN0YWxsZWQgb24geW91ciBzeXN0ZW0uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NDMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGNvbmZpZy1maWxlcz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQ2Cittc2dpZCAiT25seSB0aGUgY29uZmlndXJhdGlvbiBmaWxlcyBvZiB0aGUgcGFja2FnZSBleGlzdCBvbiB0aGUgc3lzdGVtLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjQ2CisjLCBuby13cmFwCittc2dpZCAiQjxoYWxmLWluc3RhbGxlZD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjUwCittc2dpZCAiIgorIlRoZSBpbnN0YWxsYXRpb24gb2YgdGhlIHBhY2thZ2UgaGFzIGJlZW4gc3RhcnRlZCwgYnV0IG5vdCBjb21wbGV0ZWQgZm9yIHNvbWUgIgorInJlYXNvbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo1MAorIywgbm8td3JhcAorbXNnaWQgIkI8dW5wYWNrZWQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1MworbXNnaWQgIlRoZSBwYWNrYWdlIGlzIHVucGFja2VkLCBidXQgbm90IGNvbmZpZ3VyZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGhhbGYtY29uZmlndXJlZD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjU3Cittc2dpZCAiIgorIlRoZSBwYWNrYWdlIGlzIHVucGFja2VkIGFuZCBjb25maWd1cmF0aW9uIGhhcyBiZWVuIHN0YXJ0ZWQsIGJ1dCBub3QgeWV0ICIKKyJjb21wbGV0ZWQgZm9yIHNvbWUgcmVhc29uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjU3CisjLCBuby13cmFwCittc2dpZCAiQjx0cmlnZ2Vycy1hd2FpdGVkPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NjAKK21zZ2lkICJUaGUgcGFja2FnZSBhd2FpdHMgdHJpZ2dlciBwcm9jZXNzaW5nIGJ5IGFub3RoZXIgcGFja2FnZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2MAorIywgbm8td3JhcAorbXNnaWQgIkI8dHJpZ2dlcnMtcGVuZGluZz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjYzCittc2dpZCAiVGhlIHBhY2thZ2UgaGFzIGJlZW4gdHJpZ2dlcmVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjYzCisjLCBuby13cmFwCittc2dpZCAiQjxpbnN0YWxsZWQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2NgorbXNnaWQgIlRoZSBwYWNrYWdlIGlzIHVucGFja2VkIGFuZCBjb25maWd1cmVkIE9LLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy4xOjY2CisjLCBuby13cmFwCittc2dpZCAiUEFDS0FHRSBTRUxFQ1RJT04gU1RBVEVTIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NjcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGluc3RhbGw+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3MAorbXNnaWQgIlRoZSBwYWNrYWdlIGlzIHNlbGVjdGVkIGZvciBpbnN0YWxsYXRpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NzAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGhvbGQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3NAorbXNnaWQgIiIKKyJBIHBhY2thZ2UgbWFya2VkIHRvIGJlIG9uIEI8aG9sZD4gaXMgbm90IGhhbmRsZWQgYnkgQjxkcGtnPiwgdW5sZXNzIGZvcmNlZCAiCisidG8gZG8gdGhhdCB3aXRoIG9wdGlvbiBCPC0tZm9yY2UtaG9sZD4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NzQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGRlaW5zdGFsbD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjc4Cittc2dpZCAiIgorIlRoZSBwYWNrYWdlIGlzIHNlbGVjdGVkIGZvciBkZWluc3RhbGxhdGlvbiAoaS5lLiB3ZSB3YW50IHRvIHJlbW92ZSBhbGwgIgorImZpbGVzLCBleGNlcHQgY29uZmlndXJhdGlvbiBmaWxlcykuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NzgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHB1cmdlPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6ODIKK21zZ2lkICIiCisiVGhlIHBhY2thZ2UgaXMgc2VsZWN0ZWQgdG8gYmUgcHVyZ2VkIChpLmUuIHdlIHdhbnQgdG8gcmVtb3ZlIGV2ZXJ5dGhpbmcgZnJvbSAiCisic3lzdGVtIGRpcmVjdG9yaWVzLCBldmVuIGNvbmZpZ3VyYXRpb24gZmlsZXMpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy4xOjgyCisjLCBuby13cmFwCittc2dpZCAiUEFDS0FHRSBGTEFHUyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjgzCisjLCBuby13cmFwCittc2dpZCAiQjxyZWluc3QtcmVxdWlyZWQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo4OAorbXNnaWQgIiIKKyJBIHBhY2thZ2UgbWFya2VkIEI8cmVpbnN0LXJlcXVpcmVkPiBpcyBicm9rZW4gYW5kIHJlcXVpcmVzICIKKyJyZWluc3RhbGxhdGlvbi4gVGhlc2UgcGFja2FnZXMgY2Fubm90IGJlIHJlbW92ZWQsIHVubGVzcyBmb3JjZWQgd2l0aCBvcHRpb24gIgorIkI8LS1mb3JjZS1yZW1vdmUtcmVpbnN0cmVxPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2cuMTo4OSBkc2VsZWN0LjE6MTIwCisjLCBuby13cmFwCittc2dpZCAiQUNUSU9OUyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjkwCisjLCBuby13cmFwCittc2dpZCAiQjwtaT4sIEI8LS1pbnN0YWxsPiBJPHBhY2thZ2UtZmlsZT4uLi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjk0Cittc2dpZCAiIgorIkluc3RhbGwgdGhlIHBhY2thZ2UuIElmIEI8LS1yZWN1cnNpdmU+IG9yIEI8LVI+IG9wdGlvbiBpcyBzcGVjaWZpZWQsICIKKyJJPHBhY2thZ2UtZmlsZT4gbXVzdCByZWZlciB0byBhIGRpcmVjdG9yeSBpbnN0ZWFkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6OTYKK21zZ2lkICJJbnN0YWxsYXRpb24gY29uc2lzdHMgb2YgdGhlIGZvbGxvd2luZyBzdGVwczoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjk5Cittc2dpZCAiQjwxLj4gRXh0cmFjdCB0aGUgY29udHJvbCBmaWxlcyBvZiB0aGUgbmV3IHBhY2thZ2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxMDMKK21zZ2lkICIiCisiQjwyLj4gSWYgYW5vdGhlciB2ZXJzaW9uIG9mIHRoZSBzYW1lIHBhY2thZ2Ugd2FzIGluc3RhbGxlZCBiZWZvcmUgdGhlIG5ldyAiCisiaW5zdGFsbGF0aW9uLCBleGVjdXRlIEk8cHJlcm0+IHNjcmlwdCBvZiB0aGUgb2xkIHBhY2thZ2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxMDYKK21zZ2lkICJCPDMuPiBSdW4gSTxwcmVpbnN0PiBzY3JpcHQsIGlmIHByb3ZpZGVkIGJ5IHRoZSBwYWNrYWdlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTEwCittc2dpZCAiIgorIkI8NC4+IFVucGFjayB0aGUgbmV3IGZpbGVzLCBhbmQgYXQgdGhlIHNhbWUgdGltZSBiYWNrIHVwIHRoZSBvbGQgZmlsZXMsIHNvICIKKyJ0aGF0IGlmIHNvbWV0aGluZyBnb2VzIHdyb25nLCB0aGV5IGNhbiBiZSByZXN0b3JlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjExNworbXNnaWQgIiIKKyJCPDUuPiBJZiBhbm90aGVyIHZlcnNpb24gb2YgdGhlIHNhbWUgcGFja2FnZSB3YXMgaW5zdGFsbGVkIGJlZm9yZSB0aGUgbmV3ICIKKyJpbnN0YWxsYXRpb24sIGV4ZWN1dGUgdGhlIEk8cG9zdHJtPiBzY3JpcHQgb2YgdGhlIG9sZCBwYWNrYWdlLiBOb3RlIHRoYXQgIgorInRoaXMgc2NyaXB0IGlzIGV4ZWN1dGVkIGFmdGVyIHRoZSBJPHByZWluc3Q+IHNjcmlwdCBvZiB0aGUgbmV3IHBhY2thZ2UsICIKKyJiZWNhdXNlIG5ldyBmaWxlcyBhcmUgd3JpdHRlbiBhdCB0aGUgc2FtZSB0aW1lIG9sZCBmaWxlcyBhcmUgcmVtb3ZlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjEyMQorbXNnaWQgIiIKKyJCPDYuPiBDb25maWd1cmUgdGhlIHBhY2thZ2UuIFNlZSBCPC0tY29uZmlndXJlPiBmb3IgZGV0YWlsZWQgaW5mb3JtYXRpb24gIgorImFib3V0IGhvdyB0aGlzIGlzIGRvbmUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MTIxCisjLCBuby13cmFwCittc2dpZCAiQjwtLXVucGFjayA+STxwYWNrYWdlLWZpbGU+Li4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxMjYKK21zZ2lkICIiCisiVW5wYWNrIHRoZSBwYWNrYWdlLCBidXQgZG9uJ3QgY29uZmlndXJlIGl0LiBJZiBCPC0tcmVjdXJzaXZlPiBvciBCPC1SPiAiCisib3B0aW9uIGlzIHNwZWNpZmllZCwgSTxwYWNrYWdlLWZpbGU+IG11c3QgcmVmZXIgdG8gYSBkaXJlY3RvcnkgaW5zdGVhZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToxMjYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tY29uZmlndXJlID5JPHBhY2thZ2U+Li4ufEI8LWE+fEI8LS1wZW5kaW5nPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTMxCittc2dpZCAiIgorIkNvbmZpZ3VyZSBhIHBhY2thZ2Ugd2hpY2ggaGFzIGJlZW4gdW5wYWNrZWQgYnV0IG5vdCB5ZXQgY29uZmlndXJlZC4gIElmICIKKyJCPC1hPiBvciBCPC0tcGVuZGluZz4gaXMgZ2l2ZW4gaW5zdGVhZCBvZiBJPHBhY2thZ2U+LCBhbGwgdW5wYWNrZWQgYnV0ICIKKyJ1bmNvbmZpZ3VyZWQgcGFja2FnZXMgYXJlIGNvbmZpZ3VyZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxMzUKK21zZ2lkICIiCisiVG8gcmVjb25maWd1cmUgYSBwYWNrYWdlIHdoaWNoIGhhcyBhbHJlYWR5IGJlZW4gY29uZmlndXJlZCwgdHJ5IHRoZSAiCisiQjxkcGtnLXJlY29uZmlndXJlPig4KSAgY29tbWFuZCBpbnN0ZWFkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTM3Cittc2dpZCAiQ29uZmlndXJpbmcgY29uc2lzdHMgb2YgdGhlIGZvbGxvd2luZyBzdGVwczoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjE0MgorbXNnaWQgIiIKKyJCPDEuPiBVbnBhY2sgdGhlIGNvbmZmaWxlcywgYW5kIGF0IHRoZSBzYW1lIHRpbWUgYmFjayB1cCB0aGUgb2xkIGNvbmZmaWxlcywgIgorInNvIHRoYXQgdGhleSBjYW4gYmUgcmVzdG9yZWQgaWYgc29tZXRoaW5nIGdvZXMgd3JvbmcuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxNDUKK21zZ2lkICJCPDIuPiBSdW4gSTxwb3N0aW5zdD4gc2NyaXB0LCBpZiBwcm92aWRlZCBieSB0aGUgcGFja2FnZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToxNDUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tdHJpZ2dlcnMtb25seT4gSTxwYWNrYWdlPi4uLnxCPC1hPnxCPC0tcGVuZGluZz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjE1MgorbXNnaWQgIiIKKyJQcm9jZXNzZXMgb25seSB0cmlnZ2Vycy4gQWxsIHBlbmRpbmcgdHJpZ2dlcnMgd2lsbCBiZSBwcm9jZXNzZWQuIElmIHBhY2thZ2UgIgorIm5hbWVzIGFyZSBzdXBwbGllZCBvbmx5IHRob3NlIHBhY2thZ2VzJyB0cmlnZ2VycyB3aWxsIGJlIHByb2Nlc3NlZCwgZXhhY3RseSAiCisib25jZSBlYWNoIHdoZXJlIG5lY2Vzc2FyeS4gVXNlIG9mIHRoaXMgb3B0aW9uIG1heSBsZWF2ZSBwYWNrYWdlcyBpbiB0aGUgIgorImltcHJvcGVyIEI8dHJpZ2dlcnMtYXdhaXRlZD4gYW5kIEI8dHJpZ2dlcnMtcGVuZGluZz4gc3RhdGVzLiBUaGlzIGNhbiBiZSAiCisiZml4ZWQgbGF0ZXIgYnkgcnVubmluZzogQjxkcGtnIC0tY29uZmlndXJlIC0tcGVuZGluZz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MTUyCisjLCBuby13cmFwCittc2dpZCAiQjwtcj4sIEI8LS1yZW1vdmU+LCBCPC1QPiwgQjwtLXB1cmdlID5JPHBhY2thZ2U+Li4ufEI8LWE+fEI8LS1wZW5kaW5nPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTY5Cittc2dpZCAiIgorIlJlbW92ZSBhbiBpbnN0YWxsZWQgcGFja2FnZS4gQjwtcj4gb3IgQjwtLXJlbW92ZT4gcmVtb3ZlIGV2ZXJ5dGhpbmcgZXhjZXB0ICIKKyJjb25mZmlsZXMuIFRoaXMgbWF5IGF2b2lkIGhhdmluZyB0byByZWNvbmZpZ3VyZSB0aGUgcGFja2FnZSBpZiBpdCBpcyAiCisicmVpbnN0YWxsZWQgbGF0ZXIuIChDb25mZmlsZXMgYXJlIGNvbmZpZ3VyYXRpb24gZmlsZXMgdGhhdCBhcmUgbGlzdGVkIGluIHRoZSAiCisiSTxERUJJQU4vY29uZmZpbGVzPiBjb250cm9sIGZpbGUpLiBCPC1QPiBvciBCPC0tcHVyZ2U+IHJlbW92ZXMgZXZlcnl0aGluZywgIgorImluY2x1ZGluZyBjb25mZmlsZXMuIElmIEI8LWE+IG9yIEI8LS1wZW5kaW5nPiBpcyBnaXZlbiBpbnN0ZWFkIG9mIGEgcGFja2FnZSAiCisibmFtZSwgdGhlbiBhbGwgcGFja2FnZXMgdW5wYWNrZWQsIGJ1dCBtYXJrZWQgdG8gYmUgcmVtb3ZlZCBvciBwdXJnZWQgaW4gZmlsZSAiCisiSTwvdmFyL2xpYi9kcGtnL3N0YXR1cz4sIGFyZSByZW1vdmVkIG9yIHB1cmdlZCwgcmVzcGVjdGl2ZWx5LiBOb3RlOiBzb21lICIKKyJjb25maWd1cmF0aW9uIGZpbGVzIG1pZ2h0IGJlIHVua25vd24gdG8gQjxkcGtnPiBiZWNhdXNlIHRoZXkgYXJlIGNyZWF0ZWQgYW5kICIKKyJoYW5kbGVkIHNlcGFyYXRlbHkgdGhyb3VnaCB0aGUgY29uZmlndXJhdGlvbiBzY3JpcHRzLiBJbiB0aGF0IGNhc2UsIEI8ZHBrZz4gIgorIndvbid0IHJlbW92ZSB0aGVtIGJ5IGl0c2VsZiwgYnV0IHRoZSBwYWNrYWdlJ3MgSTxwb3N0cm0+IHNjcmlwdCAod2hpY2ggaXMgIgorImNhbGxlZCBieSBCPGRwa2c+KSwgaGFzIHRvIHRha2UgY2FyZSBvZiB0aGVpciByZW1vdmFsIGR1cmluZyBwdXJnZS4gT2YgIgorImNvdXJzZSwgdGhpcyBvbmx5IGFwcGxpZXMgdG8gZmlsZXMgaW4gc3lzdGVtIGRpcmVjdG9yaWVzLCBub3QgY29uZmlndXJhdGlvbiAiCisiZmlsZXMgd3JpdHRlbiB0byBpbmRpdmlkdWFsIHVzZXJzJyBob21lIGRpcmVjdG9yaWVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTcxCittc2dpZCAiUmVtb3Zpbmcgb2YgYSBwYWNrYWdlIGNvbnNpc3RzIG9mIHRoZSBmb2xsb3dpbmcgc3RlcHM6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxNzQKK21zZ2lkICJCPDEuPiBSdW4gSTxwcmVybT4gc2NyaXB0IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxNzcKK21zZ2lkICJCPDIuPiBSZW1vdmUgdGhlIGluc3RhbGxlZCBmaWxlcyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTgwCittc2dpZCAiQjwzLj4gUnVuIEk8cG9zdHJtPiBzY3JpcHQiCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToxODEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tdXBkYXRlLWF2YWlsPiwgQjwtLW1lcmdlLWF2YWlsPiBJPFBhY2thZ2VzLWZpbGU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxOTAKK21zZ2lkICIiCisiVXBkYXRlIEI8ZHBrZz4ncyBhbmQgQjxkc2VsZWN0PidzIGlkZWEgb2Ygd2hpY2ggcGFja2FnZXMgYXJlIGF2YWlsYWJsZS4gV2l0aCAiCisiYWN0aW9uIEI8LS1tZXJnZS1hdmFpbD4sIG9sZCBpbmZvcm1hdGlvbiBpcyBjb21iaW5lZCB3aXRoIGluZm9ybWF0aW9uIGZyb20gIgorIkk8UGFja2FnZXMtZmlsZT4uIFdpdGggYWN0aW9uIEI8LS11cGRhdGUtYXZhaWw+LCBvbGQgaW5mb3JtYXRpb24gaXMgcmVwbGFjZWQgIgorIndpdGggdGhlIGluZm9ybWF0aW9uIGluIHRoZSBJPFBhY2thZ2VzLWZpbGU+LiBUaGUgSTxQYWNrYWdlcy1maWxlPiAiCisiZGlzdHJpYnV0ZWQgd2l0aCBEZWJpYW4gaXMgc2ltcGx5IG5hbWVkIEk8UGFja2FnZXM+LiBCPGRwa2c+IGtlZXBzIGl0cyAiCisicmVjb3JkIG9mIGF2YWlsYWJsZSBwYWNrYWdlcyBpbiBJPC92YXIvbGliL2Rwa2cvYXZhaWxhYmxlPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjE5NQorbXNnaWQgIiIKKyJBIHNpbXBsZXIgb25lLXNob3QgY29tbWFuZCB0byByZXRyaWV2ZSBhbmQgdXBkYXRlIHRoZSBJPGF2YWlsYWJsZT4gZmlsZSBpcyAiCisiQjxkc2VsZWN0IHVwZGF0ZT4uIE5vdGUgdGhhdCB0aGlzIGZpbGUgaXMgbW9zdGx5IHVzZWxlc3MgaWYgeW91IGRvbid0IHVzZSAiCisiQjxkc2VsZWN0PiBidXQgYW4gQVBULWJhc2VkIGZyb250ZW5kOiBBUFQgaGFzIGl0cyBvd24gc3lzdGVtIHRvIGtlZXAgdHJhY2sgIgorIm9mIGF2YWlsYWJsZSBwYWNrYWdlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToxOTUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1BPiwgQjwtLXJlY29yZC1hdmFpbD4gSTxwYWNrYWdlLWZpbGU+Li4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyMDEKK21zZ2lkICIiCisiVXBkYXRlIEI8ZHBrZz4gYW5kIEI8ZHNlbGVjdD4ncyBpZGVhIG9mIHdoaWNoIHBhY2thZ2VzIGFyZSBhdmFpbGFibGUgd2l0aCAiCisiaW5mb3JtYXRpb24gZnJvbSB0aGUgcGFja2FnZSBJPHBhY2thZ2UtZmlsZT4uIElmIEI8LS1yZWN1cnNpdmU+IG9yIEI8LVI+ICIKKyJvcHRpb24gaXMgc3BlY2lmaWVkLCBJPHBhY2thZ2UtZmlsZT4gbXVzdCByZWZlciB0byBhIGRpcmVjdG9yeSBpbnN0ZWFkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjIwMQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1mb3JnZXQtb2xkLXVuYXZhaWw+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyMDUKK21zZ2lkICIiCisiTm93IEI8b2Jzb2xldGU+IGFuZCBhIG5vLW9wIGFzIEI8ZHBrZz4gd2lsbCBhdXRvbWF0aWNhbGx5IGZvcmdldCB1bmluc3RhbGxlZCAiCisidW5hdmFpbGFibGUgcGFja2FnZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MjA1CisjLCBuby13cmFwCittc2dpZCAiQjwtLWNsZWFyLWF2YWlsPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MjA4Cittc2dpZCAiRXJhc2UgdGhlIGV4aXN0aW5nIGluZm9ybWF0aW9uIGFib3V0IHdoYXQgcGFja2FnZXMgYXJlIGF2YWlsYWJsZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToyMDgKKyMsIG5vLXdyYXAKK21zZ2lkICIgQjwtQz4sIEI8LS1hdWRpdD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjIxMworbXNnaWQgIiIKKyJTZWFyY2hlcyBmb3IgcGFja2FnZXMgdGhhdCBoYXZlIGJlZW4gaW5zdGFsbGVkIG9ubHkgcGFydGlhbGx5IG9uIHlvdXIgIgorInN5c3RlbS4gQjxkcGtnPiB3aWxsIHN1Z2dlc3Qgd2hhdCB0byBkbyB3aXRoIHRoZW0gdG8gZ2V0IHRoZW0gd29ya2luZy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToyMTMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tZ2V0LXNlbGVjdGlvbnM+IFtJPHBhY2thZ2UtbmFtZS1wYXR0ZXJuPi4uLl0iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjIxOAorbXNnaWQgIiIKKyJHZXQgbGlzdCBvZiBwYWNrYWdlIHNlbGVjdGlvbnMsIGFuZCB3cml0ZSBpdCB0byBzdGRvdXQuIFdpdGhvdXQgYSBwYXR0ZXJuLCAiCisibm9uLWluc3RhbGxlZCBwYWNrYWdlcyAoaS5lLiB0aG9zZSB3aGljaCBoYXZlIGJlZW4gcHJldmlvdXNseSBwdXJnZWQpICB3aWxsICIKKyJub3QgYmUgc2hvd24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MjE4IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyOTkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tc2V0LXNlbGVjdGlvbnM+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyMjQKK21zZ2lkICIiCisiU2V0IHBhY2thZ2Ugc2VsZWN0aW9ucyB1c2luZyBmaWxlIHJlYWQgZnJvbSBzdGRpbi4gVGhpcyBmaWxlIHNob3VsZCBiZSBpbiAiCisidGhlIGZvcm1hdCAnSTxwYWNrYWdlPiBJPHN0YXRlPicsIHdoZXJlIHN0YXRlIGlzIG9uZSBvZiBCPGluc3RhbGw+LCBCPGhvbGQ+LCAiCisiQjxkZWluc3RhbGw+IG9yIEI8cHVyZ2U+LiBCbGFuayBsaW5lcyBhbmQgY29tbWVudCBsaW5lcyBiZWdpbm5pbmcgd2l0aCAnIycgIgorImFyZSBhbHNvIHBlcm1pdHRlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToyMjQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tY2xlYXItc2VsZWN0aW9ucz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjIyOQorbXNnaWQgIiIKKyJTZXQgdGhlIHJlcXVlc3RlZCBzdGF0ZSBvZiBldmVyeSBub24tZXNzZW50aWFsIHBhY2thZ2UgdG8gZGVpbnN0YWxsLiAgVGhpcyAiCisiaXMgaW50ZW5kZWQgdG8gYmUgdXNlZCBpbW1lZGlhdGVseSBiZWZvcmUgLS1zZXQtc2VsZWN0aW9ucywgdG8gZGVpbnN0YWxsIGFueSAiCisicGFja2FnZXMgbm90IGluIGxpc3QgZ2l2ZW4gdG8gLS1zZXQtc2VsZWN0aW9ucy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToyMjkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0teWV0LXRvLXVucGFjaz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjIzMworbXNnaWQgIiIKKyJTZWFyY2hlcyBmb3IgcGFja2FnZXMgc2VsZWN0ZWQgZm9yIGluc3RhbGxhdGlvbiwgYnV0IHdoaWNoIGZvciBzb21lIHJlYXNvbiAiCisic3RpbGwgaGF2ZW4ndCBiZWVuIGluc3RhbGxlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToyMzQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tcHJpbnQtYXJjaGl0ZWN0dXJlPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MjM3Cittc2dpZCAiUHJpbnQgYXJjaGl0ZWN0dXJlIG9mIHBhY2thZ2VzIEI8ZHBrZz4gaW5zdGFsbHMgKGZvciBleGFtcGxlLCBcImkzODZcIikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MjM3CisjLCBuby13cmFwCittc2dpZCAiQjwtLWNvbXBhcmUtdmVyc2lvbnMgPkk8dmVyMSBvcCB2ZXIyPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MjQ4Cittc2dpZCAiIgorIkNvbXBhcmUgdmVyc2lvbiBudW1iZXJzLCB3aGVyZSBJPG9wPiBpcyBhIGJpbmFyeSBvcGVyYXRvci4gQjxkcGtnPiByZXR1cm5zICIKKyJzdWNjZXNzICh6ZXJvIHJlc3VsdCkgaWYgdGhlIHNwZWNpZmllZCBjb25kaXRpb24gaXMgc2F0aXNmaWVkLCBhbmQgZmFpbHVyZSAiCisiKG5vbnplcm8gcmVzdWx0KSBvdGhlcndpc2UuIFRoZXJlIGFyZSB0d28gZ3JvdXBzIG9mIG9wZXJhdG9ycywgd2hpY2ggZGlmZmVyICIKKyJpbiBob3cgdGhleSB0cmVhdCBhbiBlbXB0eSBJPHZlcjE+IG9yIEk8dmVyMj4uIFRoZXNlIHRyZWF0IGFuIGVtcHR5IHZlcnNpb24gIgorImFzIGVhcmxpZXIgdGhhbiBhbnkgdmVyc2lvbjogQjxsdCBsZSBlcSBuZSBnZSBndD4uIFRoZXNlIHRyZWF0IGFuIGVtcHR5ICIKKyJ2ZXJzaW9uIGFzIGxhdGVyIHRoYW4gYW55IHZlcnNpb246IEI8bHQtbmwgbGUtbmwgZ2UtbmwgZ3Qtbmw+LiBUaGVzZSBhcmUgIgorInByb3ZpZGVkIG9ubHkgZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBjb250cm9sIGZpbGUgc3ludGF4OiBCPEU8bHQ+IEU8bHQ+RTxsdD4gIgorIkU8bHQ+PSA9IEU8Z3Q+PSBFPGd0PkU8Z3Q+IEU8Z3Q+Pi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToyNDgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tY29tbWFuZC1mZCA+STxuPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MjUzCittc2dpZCAiIgorIkFjY2VwdCBhIHNlcmllcyBvZiBjb21tYW5kcyBvbiBpbnB1dCBmaWxlIGRlc2NyaXB0b3IgSTxuPi4gTm90ZTogYWRkaXRpb25hbCAiCisib3B0aW9ucyBzZXQgb24gdGhlIGNvbW1hbmQgbGluZSwgYW5kIHRocm91Z2ggdGhpcyBmaWxlIGRlc2NyaXB0b3IsIGFyZSBub3QgIgorInJlc2V0IGZvciBzdWJzZXF1ZW50IGNvbW1hbmRzIGV4ZWN1dGVkIGR1cmluZyB0aGUgc2FtZSBydW4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MjUzIGRwa2ctYXJjaGl0ZWN0dXJlLjE6NjAgZHBrZy1idWlsZGZsYWdzLjE6ODkgZHBrZy1kaXZlcnQuODo3MSBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjM4IGRwa2ctc2NhbnNvdXJjZXMuMTo2NiBkcGtnLXN0YXRvdmVycmlkZS44OjQ0IGRwa2ctdmVuZG9yLjE6MjggZHNlbGVjdC4xOjExMyB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzE2CisjLCBuby13cmFwCittc2dpZCAiQjwtLWhlbHA+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyNTYKK21zZ2lkICJEaXNwbGF5IGEgYnJpZWYgaGVscCBtZXNzYWdlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjI1NgorIywgbm8td3JhcAorbXNnaWQgIkI8LS1mb3JjZS1oZWxwPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MjU5Cittc2dpZCAiR2l2ZSBoZWxwIGFib3V0IHRoZSBCPC0tZm9yY2UtPkk8dGhpbmc+IG9wdGlvbnMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MjU5CisjLCBuby13cmFwCittc2dpZCAiQjwtRGg+LCBCPC0tZGVidWc9aGVscD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjI2MgorbXNnaWQgIkdpdmUgaGVscCBhYm91dCBkZWJ1Z2dpbmcgb3B0aW9ucy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToyNjIgZHBrZy1hcmNoaXRlY3R1cmUuMTo2MyBkcGtnLWJ1aWxkZmxhZ3MuMTo5MiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIyNiBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6MzYgZHBrZy1kaXN0YWRkZmlsZS4xOjM1IGRwa2ctZGViLjE6MTc1IGRwa2ctZGl2ZXJ0Ljg6NzQgZHBrZy1nZW5jaGFuZ2VzLjE6MTM0IGRwa2ctZ2VuY29udHJvbC4xOjEyNCBkcGtnLWdlbnN5bWJvbHMuMTo0NDYgZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTo0MSBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MzYgZHBrZy1xdWVyeS4xOjExMyBkcGtnLXNjYW5wYWNrYWdlcy4xOjk5IGRwa2ctc2NhbnNvdXJjZXMuMTo2OCBkcGtnLXNobGliZGVwcy4xOjIxOCBkcGtnLXNvdXJjZS4xOjk5IGRwa2ctc3BsaXQuMToxMjkgZHBrZy1zdGF0b3ZlcnJpZGUuODo0NyBkcGtnLXRyaWdnZXIuMTozNCBkcGtnLXZlbmRvci4xOjMxIGRzZWxlY3QuMToxMTYgdXBkYXRlLWFsdGVybmF0aXZlcy44OjMxOQorIywgbm8td3JhcAorbXNnaWQgIkI8LS12ZXJzaW9uPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MjY1Cittc2dpZCAiRGlzcGxheSBCPGRwa2c+IHZlcnNpb24gaW5mb3JtYXRpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MjY1CisjLCBuby13cmFwCittc2dpZCAiQjxkcGtnLWRlYiBhY3Rpb25zPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MjY4Cittc2dpZCAiU2VlIEI8ZHBrZy1kZWI+KDEpIGZvciBtb3JlIGluZm9ybWF0aW9uIGFib3V0IHRoZSBmb2xsb3dpbmcgYWN0aW9ucy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjI4OAorIywgbm8td3JhcAorbXNnaWQgIiIKKyJCPC1iPiwgQjwtLWJ1aWxkPiBJPGRpcmVjdG9yeT4gW0k8YXJjaGl2ZT58STxkaXJlY3Rvcnk+XVxuIgorIiAgICBCdWlsZCBhIGRlYiBwYWNrYWdlLlxuIgorIkI8LWM+LCBCPC0tY29udGVudHM+IEk8YXJjaGl2ZT5cbiIKKyIgICAgTGlzdCBjb250ZW50cyBvZiBhIGRlYiBwYWNrYWdlLlxuIgorIkI8LWU+LCBCPC0tY29udHJvbD4gSTxmaWxlbmFtZT4gW0k8ZGlyZWN0b3J5Pl1cbiIKKyIgICAgRXh0cmFjdCBjb250cm9sLWluZm9ybWF0aW9uIGZyb20gYSBwYWNrYWdlLlxuIgorIkI8LXg+LCBCPC0tZXh0cmFjdD4gSTxhcmNoaXZlIGRpcmVjdG9yeT5cbiIKKyIgICAgRXh0cmFjdCB0aGUgZmlsZXMgY29udGFpbmVkIGJ5IHBhY2thZ2UuXG4iCisiQjwtWD4sIEI8LS12ZXh0cmFjdD4gSTxhcmNoaXZlIGRpcmVjdG9yeT5cbiIKKyIgICAgRXh0cmFjdCBhbmQgZGlzcGxheSB0aGUgZmlsZW5hbWVzIGNvbnRhaW5lZCBieSBhXG4iCisiICAgIHBhY2thZ2UuXG4iCisiQjwtZj4sIEI8LS1maWVsZD4gIEk8YXJjaGl2ZT4gW0k8Y29udHJvbC1maWVsZD4uLi5dXG4iCisiICAgIERpc3BsYXkgY29udHJvbCBmaWVsZChzKSBvZiBhIHBhY2thZ2UuXG4iCisiQjwtLWZzeXMtdGFyZmlsZT4gSTxhcmNoaXZlPlxuIgorIiAgICBEaXNwbGF5IHRoZSBmaWxlc3lzdGVtIHRhci1maWxlIGNvbnRhaW5lZCBieSBhXG4iCisiICAgIERlYmlhbiBwYWNrYWdlLlxuIgorIkI8LUk+LCBCPC0taW5mbz4gSTxhcmNoaXZlPiBbSTxjb250cm9sLWZpbGU+Li4uXVxuIgorIiAgICBTaG93IGluZm9ybWF0aW9uIGFib3V0IGEgcGFja2FnZS5cbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjI5MAorIywgbm8td3JhcAorbXNnaWQgIkI8ZHBrZy1xdWVyeSBhY3Rpb25zPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MjkzCittc2dpZCAiU2VlIEI8ZHBrZy1xdWVyeT4oMSkgZm9yIG1vcmUgaW5mb3JtYXRpb24gYWJvdXQgdGhlIGZvbGxvd2luZyBhY3Rpb25zLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzA4CisjLCBuby13cmFwCittc2dpZCAiIgorIkI8LWw+LCBCPC0tbGlzdD4gSTxwYWNrYWdlLW5hbWUtcGF0dGVybj4uLi5cbiIKKyIgICAgTGlzdCBwYWNrYWdlcyBtYXRjaGluZyBnaXZlbiBwYXR0ZXJuLlxuIgorIkI8LXM+LCBCPC0tc3RhdHVzPiBJPHBhY2thZ2UtbmFtZT4uLi5cbiIKKyIgICAgUmVwb3J0IHN0YXR1cyBvZiBzcGVjaWZpZWQgcGFja2FnZS5cbiIKKyJCPC1MPiwgQjwtLWxpc3RmaWxlcz4gSTxwYWNrYWdlLW5hbWU+Li4uXG4iCisiICAgIExpc3QgZmlsZXMgaW5zdGFsbGVkIHRvIHlvdXIgc3lzdGVtIGZyb20gSTxwYWNrYWdlLW5hbWU+LlxuIgorIkI8LVM+LCBCPC0tc2VhcmNoPiBJPGZpbGVuYW1lLXNlYXJjaC1wYXR0ZXJuPi4uLlxuIgorIiAgICBTZWFyY2ggZm9yIGEgZmlsZW5hbWUgZnJvbSBpbnN0YWxsZWQgcGFja2FnZXMuXG4iCisiQjwtcD4sIEI8LS1wcmludC1hdmFpbD4gSTxwYWNrYWdlLW5hbWU+Li4uXG4iCisiICAgIERpc3BsYXkgZGV0YWlscyBhYm91dCBJPHBhY2thZ2UtbmFtZT4sIGFzIGZvdW5kIGluXG4iCisiICAgIEk8L3Zhci9saWIvZHBrZy9hdmFpbGFibGU+LiBVc2VycyBvZiBBUFQtYmFzZWQgZnJvbnRlbmRzXG4iCisiICAgIHNob3VsZCB1c2UgQjxhcHQtY2FjaGUgc2hvdz4gSTxwYWNrYWdlLW5hbWU+IGluc3RlYWQuXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2cuMTozMTAgZHBrZy1hcmNoaXRlY3R1cmUuMTo2NyBkcGtnLWJ1aWxkcGFja2FnZS4xOjUwIGRwa2ctY2hlY2tidWlsZGRlcHMuMToxOCBkcGtnLWRpc3RhZGRmaWxlLjE6MjcgZHBrZy1kZWIuMToxNzkgZHBrZy1kaXZlcnQuODo0MiBkcGtnLWdlbmNoYW5nZXMuMToxNyBkcGtnLWdlbmNvbnRyb2wuMTozNyBkcGtnLWdlbnN5bWJvbHMuMTozNjkgZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMToyNyBkcGtnLW5hbWUuMTozMCBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTUgZHBrZy1xdWVyeS4xOjExNyBkcGtnLXNjYW5wYWNrYWdlcy4xOjcxIGRwa2ctc2NhbnNvdXJjZXMuMTo0NCBkcGtnLXNobGliZGVwcy4xOjEwNiBkcGtnLXNwbGl0LjE6MTMzIGRwa2ctc3RhdG92ZXJyaWRlLjg6NTEgZHBrZy10cmlnZ2VyLjE6MzggZHBrZy12ZW5kb3IuMTozNSBkc2VsZWN0LjE6MzYgc3RhcnQtc3RvcC1kYWVtb24uODoxMDMgdXBkYXRlLWFsdGVybmF0aXZlcy44OjMyMworIywgbm8td3JhcAorbXNnaWQgIk9QVElPTlMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjMxNgorbXNnaWQgIiIKKyJBbGwgb3B0aW9ucyBjYW4gYmUgc3BlY2lmaWVkIGJvdGggb24gdGhlIGNvbW1hbmQgbGluZSBhbmQgaW4gdGhlIEI8ZHBrZz4gIgorImNvbmZpZ3VyYXRpb24gZmlsZSBJPC9ldGMvZHBrZy9kcGtnLmNmZz4gb3IgdGhlIGZpbGVzIG9uIHRoZSBjb25maWd1cmF0aW9uICIKKyJkaXJlY3RvcnkgSTwvZXRjL2Rwa2cvZHBrZy5jZmcuZC8+LiBFYWNoIGxpbmUgaW4gdGhlIGNvbmZpZ3VyYXRpb24gZmlsZSBpcyAiCisiZWl0aGVyIGFuIG9wdGlvbiAoZXhhY3RseSB0aGUgc2FtZSBhcyB0aGUgY29tbWFuZCBsaW5lIG9wdGlvbiBidXQgd2l0aG91dCAiCisibGVhZGluZyBkYXNoZXMpIG9yIGEgY29tbWVudCAoaWYgaXQgc3RhcnRzIHdpdGggYSBCPCM+KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTozMTcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tYWJvcnQtYWZ0ZXI9Pkk8bnVtYmVyPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzIwCittc2dpZCAiQ2hhbmdlIGFmdGVyIGhvdyBtYW55IGVycm9ycyBCPGRwa2c+IHdpbGwgYWJvcnQuIFRoZSBkZWZhdWx0IGlzIDUwLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjMyMAorIywgbm8td3JhcAorbXNnaWQgIkI8LUI+LCBCPC0tYXV0by1kZWNvbmZpZ3VyZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjMyNgorbXNnaWQgIiIKKyJXaGVuIGEgcGFja2FnZSBpcyByZW1vdmVkLCB0aGVyZSBpcyBhIHBvc3NpYmlsaXR5IHRoYXQgYW5vdGhlciBpbnN0YWxsZWQgIgorInBhY2thZ2UgZGVwZW5kZWQgb24gdGhlIHJlbW92ZWQgcGFja2FnZS4gU3BlY2lmeWluZyB0aGlzIG9wdGlvbiB3aWxsIGNhdXNlICIKKyJhdXRvbWF0aWMgZGVjb25maWd1cmF0aW9uIG9mIHRoZSBwYWNrYWdlIHdoaWNoIGRlcGVuZGVkIG9uIHRoZSByZW1vdmVkICIKKyJwYWNrYWdlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjMyNgorIywgbm8td3JhcAorbXNnaWQgIkI8LUQ+STxvY3RhbD5CPCwgLS1kZWJ1Zz0+STxvY3RhbD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjMzMgorbXNnaWQgIiIKKyJTd2l0Y2ggZGVidWdnaW5nIG9uLiBJPG9jdGFsPiBpcyBmb3JtZWQgYnkgYml0d2lzZS1vcnJpbmcgZGVzaXJlZCB2YWx1ZXMgIgorInRvZ2V0aGVyIGZyb20gdGhlIGxpc3QgYmVsb3cgKG5vdGUgdGhhdCB0aGVzZSB2YWx1ZXMgbWF5IGNoYW5nZSBpbiBmdXR1cmUgIgorInJlbGVhc2VzKS4gQjwtRGg+IG9yIEI8LS1kZWJ1Zz1oZWxwPiBkaXNwbGF5IHRoZXNlIGRlYnVnZ2luZyB2YWx1ZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTozNDcKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiICAgIE51bWJlciAgIERlc2NyaXB0aW9uXG4iCisiICAgICAgICAgMSAgIEdlbmVyYWxseSBoZWxwZnVsIHByb2dyZXNzIGluZm9ybWF0aW9uXG4iCisiICAgICAgICAgMiAgIEludm9jYXRpb24gYW5kIHN0YXR1cyBvZiBtYWludGFpbmVyIHNjcmlwdHNcbiIKKyIgICAgICAgIDEwICAgT3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkXG4iCisiICAgICAgIDEwMCAgIExvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkXG4iCisiICAgICAgICAyMCAgIE91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGVcbiIKKyIgICAgICAgMjAwICAgTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggY29uZmlndXJhdGlvbiBmaWxlXG4iCisiICAgICAgICA0MCAgIERlcGVuZGVuY2llcyBhbmQgY29uZmxpY3RzXG4iCisiICAgICAgIDQwMCAgIExvdHMgb2YgZGVwZW5kZW5jaWVzL2NvbmZsaWN0cyBvdXRwdXRcbiIKKyIgICAgIDEwMDAwICAgVHJpZ2dlciBhY3RpdmF0aW9uIGFuZCBwcm9jZXNzaW5nXG4iCisiICAgICAyMDAwMCAgIExvdHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2Vyc1xuIgorIiAgICAgNDAwMDAgICBTaWxseSBhbW91bnRzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnNcbiIKKyIgICAgICAxMDAwICAgTG90cyBvZiBkcml2ZWwgYWJvdXQgZS5nLiB0aGUgZHBrZy9pbmZvIGRpclxuIgorIiAgICAgIDIwMDAgICBJbnNhbmUgYW1vdW50cyBvZiBkcml2ZWxcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjM0NworIywgbm8td3JhcAorbXNnaWQgIkI8LS1mb3JjZS0+STx0aGluZ3M+LCBCPC0tbm8tZm9yY2UtPkk8dGhpbmdzPiwgQjwtLXJlZnVzZS0+STx0aGluZ3M+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTozNTQKK21zZ2lkICIiCisiRm9yY2Ugb3IgcmVmdXNlIChCPG5vLWZvcmNlPiBhbmQgQjxyZWZ1c2U+IG1lYW4gdGhlIHNhbWUgdGhpbmcpICB0byBkbyBzb21lICIKKyJ0aGluZ3MuIEk8dGhpbmdzPiBpcyBhIGNvbW1hIHNlcGFyYXRlZCBsaXN0IG9mIHRoaW5ncyBzcGVjaWZpZWQgIgorImJlbG93LiBCPC0tZm9yY2UtaGVscD4gZGlzcGxheXMgYSBtZXNzYWdlIGRlc2NyaWJpbmcgdGhlbS4gIFRoaW5ncyBtYXJrZWQgIgorIndpdGggKCopIGFyZSBmb3JjZWQgYnkgZGVmYXVsdC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjM1OAorbXNnaWQgIiIKKyJJPFdhcm5pbmc6IFRoZXNlIG9wdGlvbnMgYXJlIG1vc3RseSBpbnRlbmRlZCB0byBiZSB1c2VkIGJ5IGV4cGVydHMgIgorIm9ubHkuIFVzaW5nIHRoZW0gd2l0aG91dCBmdWxseSB1bmRlcnN0YW5kaW5nIHRoZWlyIGVmZmVjdHMgbWF5IGJyZWFrIHlvdXIgIgorIndob2xlIHN5c3RlbS4+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTozNjEKK21zZ2lkICJCPGFsbD46IFR1cm5zIG9uIChvciBvZmYpIGFsbCBmb3JjZSBvcHRpb25zLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzY0Cittc2dpZCAiIgorIkI8ZG93bmdyYWRlPigqKTogSW5zdGFsbCBhIHBhY2thZ2UsIGV2ZW4gaWYgbmV3ZXIgdmVyc2lvbiBvZiBpdCBpcyBhbHJlYWR5ICIKKyJpbnN0YWxsZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTozNzEKK21zZ2lkICIiCisiSTxXYXJuaW5nOiBBdCBwcmVzZW50IGRwa2cgZG9lcyBub3QgZG8gYW55IGRlcGVuZGVuY3kgY2hlY2tpbmcgb24gZG93bmdyYWRlcyAiCisiYW5kIHRoZXJlZm9yZSB3aWxsIG5vdCB3YXJuIHlvdSBpZiB0aGUgZG93bmdyYWRlIGJyZWFrcyB0aGUgZGVwZW5kZW5jeSBvZiAiCisic29tZSBvdGhlciBwYWNrYWdlLiBUaGlzIGNhbiBoYXZlIHNlcmlvdXMgc2lkZSBlZmZlY3RzLCBkb3duZ3JhZGluZyAiCisiZXNzZW50aWFsIHN5c3RlbSBjb21wb25lbnRzIGNhbiBldmVuIG1ha2UgeW91ciB3aG9sZSBzeXN0ZW0gdW51c2FibGUuIFVzZSAiCisid2l0aCBjYXJlLj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjM3NQorbXNnaWQgIiIKKyJCPGNvbmZpZ3VyZS1hbnk+OiBDb25maWd1cmUgYWxzbyBhbnkgdW5wYWNrZWQgYnV0IHVuY29uZmlndXJlZCBwYWNrYWdlcyBvbiAiCisid2hpY2ggdGhlIGN1cnJlbnQgcGFja2FnZSBkZXBlbmRzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6Mzc4Cittc2dpZCAiQjxob2xkPjogUHJvY2VzcyBwYWNrYWdlcyBldmVuIHdoZW4gbWFya2VkIFwiaG9sZFwiLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzgzCittc2dpZCAiIgorIkI8cmVtb3ZlLXJlaW5zdHJlcT46IFJlbW92ZSBhIHBhY2thZ2UsIGV2ZW4gaWYgaXQncyBicm9rZW4gYW5kIG1hcmtlZCB0byAiCisicmVxdWlyZSByZWluc3RhbGxhdGlvbi4gVGhpcyBtYXksIGZvciBleGFtcGxlLCBjYXVzZSBwYXJ0cyBvZiB0aGUgcGFja2FnZSB0byAiCisicmVtYWluIG9uIHRoZSBzeXN0ZW0sIHdoaWNoIHdpbGwgdGhlbiBiZSBmb3Jnb3R0ZW4gYnkgQjxkcGtnPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjM4OAorbXNnaWQgIiIKKyJCPHJlbW92ZS1lc3NlbnRpYWw+OiBSZW1vdmUsIGV2ZW4gaWYgdGhlIHBhY2thZ2UgaXMgY29uc2lkZXJlZCAiCisiZXNzZW50aWFsLiBFc3NlbnRpYWwgcGFja2FnZXMgY29udGFpbiBtb3N0bHkgdmVyeSBiYXNpYyBVbml4ICIKKyJjb21tYW5kcy4gUmVtb3ZpbmcgdGhlbSBtaWdodCBjYXVzZSB0aGUgd2hvbGUgc3lzdGVtIHRvIHN0b3Agd29ya2luZywgc28gdXNlICIKKyJ3aXRoIGNhdXRpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTozOTEKK21zZ2lkICJCPGRlcGVuZHM+OiBUdXJuIGFsbCBkZXBlbmRlbmN5IHByb2JsZW1zIGludG8gd2FybmluZ3MuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTozOTQKK21zZ2lkICJCPGRlcGVuZHMtdmVyc2lvbj46IERvbid0IGNhcmUgYWJvdXQgdmVyc2lvbnMgd2hlbiBjaGVja2luZyBkZXBlbmRlbmNpZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTozOTcKK21zZ2lkICJCPGJyZWFrcz46IEluc3RhbGwsIGV2ZW4gaWYgdGhpcyB3b3VsZCBicmVhayBhbm90aGVyIHBhY2thZ2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0MDEKK21zZ2lkICIiCisiQjxjb25mbGljdHM+OiBJbnN0YWxsLCBldmVuIGlmIGl0IGNvbmZsaWN0cyB3aXRoIGFub3RoZXIgcGFja2FnZS4gVGhpcyBpcyAiCisiZGFuZ2Vyb3VzLCBmb3IgaXQgd2lsbCB1c3VhbGx5IGNhdXNlIG92ZXJ3cml0aW5nIG9mIHNvbWUgZmlsZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0MDYKK21zZ2lkICIiCisiQjxjb25mbWlzcz46IEFsd2F5cyBpbnN0YWxsIGEgbWlzc2luZyBjb25mZmlsZS4gVGhpcyBpcyBkYW5nZXJvdXMsIHNpbmNlIGl0ICIKKyJtZWFucyBub3QgcHJlc2VydmluZyBhIGNoYW5nZSAocmVtb3ZpbmcpIG1hZGUgdG8gdGhlIGZpbGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0MTEKK21zZ2lkICIiCisiQjxjb25mbmV3PjogSWYgYSBjb25mZmlsZSBoYXMgYmVlbiBtb2RpZmllZCBhbHdheXMgaW5zdGFsbCB0aGUgbmV3IHZlcnNpb24gIgorIndpdGhvdXQgcHJvbXB0aW5nLCB1bmxlc3MgdGhlIEI8LS1mb3JjZS1jb25mZGVmPiBpcyBhbHNvIHNwZWNpZmllZCwgaW4gd2hpY2ggIgorImNhc2UgdGhlIGRlZmF1bHQgYWN0aW9uIGlzIHByZWZlcnJlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQxNgorbXNnaWQgIiIKKyJCPGNvbmZvbGQ+OiBJZiBhIGNvbmZmaWxlIGhhcyBiZWVuIG1vZGlmaWVkIGFsd2F5cyBrZWVwIHRoZSBvbGQgdmVyc2lvbiAiCisid2l0aG91dCBwcm9tcHRpbmcsIHVubGVzcyB0aGUgQjwtLWZvcmNlLWNvbmZkZWY+IGlzIGFsc28gc3BlY2lmaWVkLCBpbiB3aGljaCAiCisiY2FzZSB0aGUgZGVmYXVsdCBhY3Rpb24gaXMgcHJlZmVycmVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDIyCittc2dpZCAiIgorIkI8Y29uZmRlZj46IElmIGEgY29uZmZpbGUgaGFzIGJlZW4gbW9kaWZpZWQgYWx3YXlzIGNob29zZSB0aGUgZGVmYXVsdCAiCisiYWN0aW9uLiBJZiB0aGVyZSBpcyBubyBkZWZhdWx0IGFjdGlvbiBpdCB3aWxsIHN0b3AgdG8gYXNrIHRoZSB1c2VyIHVubGVzcyAiCisiQjwtLWZvcmNlLWNvbmZuZXc+IG9yIEI8LS1mb3JjZS1jb25mb2xkPiBpcyBhbHNvIGJlZW4gZ2l2ZW4sIGluIHdoaWNoIGNhc2UgIgorIml0IHdpbGwgdXNlIHRoYXQgdG8gZGVjaWRlIHRoZSBmaW5hbCBhY3Rpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0MjkKK21zZ2lkICIiCisiQjxjb25mYXNrPjogSWYgYSBjb25mZmlsZSBoYXMgYmVlbiBtb2RpZmllZCBhbHdheXMgb2ZmZXIgdG8gcmVwbGFjZSBpdCB3aXRoICIKKyJ0aGUgdmVyc2lvbiBpbiB0aGUgcGFja2FnZSwgZXZlbiBpZiB0aGUgdmVyc2lvbiBpbiB0aGUgcGFja2FnZSBkaWQgbm90ICIKKyJjaGFuZ2UuIElmIGFueSBvZiBCPC0tZm9yY2UtY29uZm1pc3M+LCBCPC0tZm9yY2UtY29uZm5ldz4sICIKKyJCPC0tZm9yY2UtY29uZm9sZD4sIG9yIEI8LS1mb3JjZS1jb25mZGVmPiBpcyBhbHNvIGdpdmVuLCBpdCB3aWxsIGJlIHVzZWQgdG8gIgorImRlY2lkZSB0aGUgZmluYWwgYWN0aW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDMyCittc2dpZCAiQjxvdmVyd3JpdGU+OiBPdmVyd3JpdGUgb25lIHBhY2thZ2UncyBmaWxlIHdpdGggYW5vdGhlcidzIGZpbGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0MzUKK21zZ2lkICJCPG92ZXJ3cml0ZS1kaXI+IE92ZXJ3cml0ZSBvbmUgcGFja2FnZSdzIGRpcmVjdG9yeSB3aXRoIGFub3RoZXIncyBmaWxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDM4Cittc2dpZCAiQjxvdmVyd3JpdGUtZGl2ZXJ0ZWQ+OiBPdmVyd3JpdGUgYSBkaXZlcnRlZCBmaWxlIHdpdGggYW4gdW5kaXZlcnRlZCB2ZXJzaW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDQ2Cittc2dpZCAiIgorIkI8dW5zYWZlLWlvPjogRG8gbm90IHBlcmZvcm0gc2FmZSBJL08gb3BlcmF0aW9ucyB3aGVuIHVucGFja2luZy4gQ3VycmVudGx5ICIKKyJ0aGlzIGltcGxpZXMgbm90IHBlcmZvcm1pbmcgZmlsZSBzeXN0ZW0gc3luY3MgYmVmb3JlIGZpbGUgcmVuYW1lcywgd2hpY2ggaXMgIgorImtub3duIHRvIGNhdXNlIHN1YnN0YW50aWFsIHBlcmZvcm1hbmNlIGRlZ3JhZGF0aW9uIG9uIHNvbWUgZmlsZSBzeXN0ZW1zLCAiCisidW5mb3J0dW5hdGVseSB0aGUgb25lcyB0aGF0IHJlcXVpcmUgdGhlIHNhZmUgSS9PIG9uIHRoZSBmaXJzdCBwbGFjZSBkdWUgdG8gIgorInRoZWlyIHVucmVsaWFibGUgYmVoYXZpb3VyIGNhdXNpbmcgemVyby1sZW5ndGggZmlsZXMgb24gYWJydXB0IHN5c3RlbSAiCisiY3Jhc2hlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQ1MgorbXNnaWQgIiIKKyJJPE5vdGU+OiBGb3IgZXh0NCwgdGhlIG1haW4gb2ZmZW5kZXIsIGNvbnNpZGVyIHVzaW5nIGluc3RlYWQgdGhlIG1vdW50ICIKKyJvcHRpb24gQjxub2RlbGFsbG9jPiwgd2hpY2ggd2lsbCBmaXggYm90aCB0aGUgcGVyZm9ybWFuY2UgZGVncmFkYXRpb24gYW5kICIKKyJ0aGUgZGF0YSBzYWZldHkgaXNzdWVzLCB0aGUgbGF0dGVyIGJ5IG1ha2luZyB0aGUgZmlsZSBzeXN0ZW0gbm90IHByb2R1Y2UgIgorInplcm8tbGVuZ3RoIGZpbGVzIG9uIGFicnVwdCBzeXN0ZW0gY3Jhc2hlcyB3aXRoIGFueSBzb2Z0d2FyZSBub3QgZG9pbmcgc3luY3MgIgorImJlZm9yZSBhdG9taWMgcmVuYW1lcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQ1NQorbXNnaWQgIiIKKyJJPFdhcm5pbmc6IFVzaW5nIHRoaXMgb3B0aW9uIG1pZ2h0IGltcHJvdmUgcGVyZm9ybWFuY2UgYXQgdGhlIGNvc3Qgb2YgbG9zaW5nICIKKyJkYXRhLCB1c2Ugd2l0aCBjYXJlLj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQ1OAorbXNnaWQgIkI8YXJjaGl0ZWN0dXJlPjogUHJvY2VzcyBldmVuIHBhY2thZ2VzIHdpdGggd3Jvbmcgb3Igbm8gYXJjaGl0ZWN0dXJlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDYxCittc2dpZCAiQjxiYWQtdmVyc2lvbj46IFByb2Nlc3MgZXZlbiBwYWNrYWdlcyB3aXRoIHdyb25nIHZlcnNpb25zLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDY0Cittc2dpZCAiQjxiYWQtcGF0aD46IEI8UEFUSD4gaXMgbWlzc2luZyBpbXBvcnRhbnQgcHJvZ3JhbXMsIHNvIHByb2JsZW1zIGFyZSBsaWtlbHkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0NjcKK21zZ2lkICJCPG5vdC1yb290PjogVHJ5IHRvIChkZSlpbnN0YWxsIHRoaW5ncyBldmVuIHdoZW4gbm90IHJvb3QuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0NzAKK21zZ2lkICJCPGJhZC12ZXJpZnk+OiBJbnN0YWxsIGEgcGFja2FnZSBldmVuIGlmIGl0IGZhaWxzIGF1dGhlbnRpY2l0eSBjaGVjay4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo0NzEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0taWdub3JlLWRlcGVuZHM+PUk8cGFja2FnZT4sLi4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0NzUKK21zZ2lkICIiCisiSWdub3JlIGRlcGVuZGVuY3ktY2hlY2tpbmcgZm9yIHNwZWNpZmllZCBwYWNrYWdlcyAoYWN0dWFsbHksIGNoZWNraW5nIGlzICIKKyJwZXJmb3JtZWQsIGJ1dCBvbmx5IHdhcm5pbmdzIGFib3V0IGNvbmZsaWN0cyBhcmUgZ2l2ZW4sIG5vdGhpbmcgZWxzZSkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NDc1CisjLCBuby13cmFwCittc2dpZCAiQjwtLW5vLWFjdD4sIEI8LS1kcnktcnVuPiwgQjwtLXNpbXVsYXRlPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDgwCittc2dpZCAiIgorIkRvIGV2ZXJ5dGhpbmcgd2hpY2ggaXMgc3VwcG9zZWQgdG8gYmUgZG9uZSwgYnV0IGRvbid0IHdyaXRlIGFueSAiCisiY2hhbmdlcy4gVGhpcyBpcyB1c2VkIHRvIHNlZSB3aGF0IHdvdWxkIGhhcHBlbiB3aXRoIHRoZSBzcGVjaWZpZWQgYWN0aW9uLCAiCisid2l0aG91dCBhY3R1YWxseSBtb2RpZnlpbmcgYW55dGhpbmcuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0ODUKK21zZ2lkICIiCisiQmUgc3VyZSB0byBnaXZlIEI8LS1uby1hY3Q+IGJlZm9yZSB0aGUgYWN0aW9uLXBhcmFtZXRlciwgb3IgeW91IG1pZ2h0IGVuZCB1cCAiCisid2l0aCB1bmRlc2lyYWJsZSByZXN1bHRzLiAoZS5nLiBCPGRwa2cgLS1wdXJnZSBmb28gLS1uby1hY3Q+IHdpbGwgZmlyc3QgIgorInB1cmdlIHBhY2thZ2UgZm9vIGFuZCB0aGVuIHRyeSB0byBwdXJnZSBwYWNrYWdlIC0tbm8tYWN0LCBldmVuIHRob3VnaCB5b3UgIgorInByb2JhYmx5IGV4cGVjdGVkIGl0IHRvIGFjdHVhbGx5IGRvIG5vdGhpbmcpIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NDg1CisjLCBuby13cmFwCittc2dpZCAiQjwtUj4sIEI8LS1yZWN1cnNpdmU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0OTEKK21zZ2lkICIiCisiUmVjdXJzaXZlbHkgaGFuZGxlIGFsbCByZWd1bGFyIGZpbGVzIG1hdGNoaW5nIHBhdHRlcm4gQjwqLmRlYj4gZm91bmQgYXQgIgorInNwZWNpZmllZCBkaXJlY3RvcmllcyBhbmQgYWxsIG9mIGl0cyBzdWJkaXJlY3Rvcmllcy4gVGhpcyBjYW4gYmUgdXNlZCB3aXRoICIKKyJCPC1pPiwgQjwtQT4sIEI8LS1pbnN0YWxsPiwgQjwtLXVucGFjaz4gYW5kIEI8LS1hdmFpbD4gYWN0aW9ucy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo0OTEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1HPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDk1Cittc2dpZCAiIgorIkRvbid0IGluc3RhbGwgYSBwYWNrYWdlIGlmIGEgbmV3ZXIgdmVyc2lvbiBvZiB0aGUgc2FtZSBwYWNrYWdlIGlzIGFscmVhZHkgIgorImluc3RhbGxlZC4gVGhpcyBpcyBhbiBhbGlhcyBvZiBCPC0tcmVmdXNlLWRvd25ncmFkZT4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NDk1IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjE3IGRwa2ctY2hlY2tidWlsZGRlcHMuMToxOSBkcGtnLXF1ZXJ5LjE6MTE4IGRwa2ctc2hsaWJkZXBzLjE6MjExIGRwa2ctdHJpZ2dlci4xOjM5CisjLCBuby13cmFwCittc2dpZCAiQjwtLWFkbWluZGlyPT5JPGRpcj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjUwMAorbXNnaWQgIiIKKyJDaGFuZ2UgZGVmYXVsdCBhZG1pbmlzdHJhdGl2ZSBkaXJlY3RvcnksIHdoaWNoIGNvbnRhaW5zIG1hbnkgZmlsZXMgdGhhdCBnaXZlICIKKyJpbmZvcm1hdGlvbiBhYm91dCBzdGF0dXMgb2YgaW5zdGFsbGVkIG9yIHVuaW5zdGFsbGVkIHBhY2thZ2VzLCBldGMuICAiCisiKERlZmF1bHRzIHRvIEk8L3Zhci9saWIvZHBrZz4pIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTAwCisjLCBuby13cmFwCittc2dpZCAiQjwtLWluc3RkaXI9Pkk8ZGlyPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTA3Cittc2dpZCAiIgorIkNoYW5nZSBkZWZhdWx0IGluc3RhbGxhdGlvbiBkaXJlY3Rvcnkgd2hpY2ggcmVmZXJzIHRvIHRoZSBkaXJlY3Rvcnkgd2hlcmUgIgorInBhY2thZ2VzIGFyZSB0byBiZSBpbnN0YWxsZWQuIEI8aW5zdGRpcj4gaXMgYWxzbyB0aGUgZGlyZWN0b3J5IHBhc3NlZCB0byAiCisiQjxjaHJvb3Q+KDIpIGJlZm9yZSBydW5uaW5nIHBhY2thZ2UncyBpbnN0YWxsYXRpb24gc2NyaXB0cywgd2hpY2ggbWVhbnMgdGhhdCAiCisidGhlIHNjcmlwdHMgc2VlIEI8aW5zdGRpcj4gYXMgYSByb290IGRpcmVjdG9yeS4gIChEZWZhdWx0cyB0byBJPC8+KSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjUwNworIywgbm8td3JhcAorbXNnaWQgIkI8LS1yb290PT5JPGRpcj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjUxMQorbXNnaWQgIiIKKyJDaGFuZ2luZyBCPHJvb3Q+IGNoYW5nZXMgQjxpbnN0ZGlyPiB0byBJPGRpcj4gYW5kIEI8YWRtaW5kaXI+IHRvICIKKyJJPGRpcj5CPC92YXIvbGliL2Rwa2c+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjUxMQorIywgbm8td3JhcAorbXNnaWQgIkI8LU8+LCBCPC0tc2VsZWN0ZWQtb25seT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjUxNworbXNnaWQgIiIKKyJPbmx5IHByb2Nlc3MgdGhlIHBhY2thZ2VzIHRoYXQgYXJlIHNlbGVjdGVkIGZvciBpbnN0YWxsYXRpb24uIFRoZSBhY3R1YWwgIgorIm1hcmtpbmcgaXMgZG9uZSB3aXRoIEI8ZHNlbGVjdD4gb3IgYnkgQjxkcGtnPiwgd2hlbiBpdCBoYW5kbGVzIHBhY2thZ2VzLiBGb3IgIgorImV4YW1wbGUsIHdoZW4gYSBwYWNrYWdlIGlzIHJlbW92ZWQsIGl0IHdpbGwgYmUgbWFya2VkIHNlbGVjdGVkIGZvciAiCisiZGVpbnN0YWxsYXRpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTE3CisjLCBuby13cmFwCittc2dpZCAiQjwtRT4sIEI8LS1za2lwLXNhbWUtdmVyc2lvbj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjUyMQorbXNnaWQgIiIKKyJEb24ndCBpbnN0YWxsIHRoZSBwYWNrYWdlIGlmIHRoZSBzYW1lIHZlcnNpb24gb2YgdGhlIHBhY2thZ2UgaXMgYWxyZWFkeSAiCisiaW5zdGFsbGVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTIzCittc2dpZCAiQjwtLXByZS1pbnZva2U9Pkk8Y29tbWFuZD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjUyNQorbXNnaWQgIkI8LS1wb3N0LWludm9rZT0+STxjb21tYW5kPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTM0Cittc2dpZCAiIgorIlNldCBhbiBpbnZva2UgaG9vayBJPGNvbW1hbmQ+IHRvIGJlIHJ1biB2aWEgYGBzaCAtYycnIGJlZm9yZSBvciBhZnRlciB0aGUgIgorImRwa2cgcnVuIGZvciB0aGUgSTx1bnBhY2s+LCBJPGNvbmZpZ3VyZT4sIEk8aW5zdGFsbD4sIEk8dHJpZ2dlcnMtb25seT4sICIKKyJJPHJlbW92ZT4gYW5kIEk8cHVyZ2U+IGRwa2cgYWN0aW9ucy4gVGhpcyBvcHRpb24gY2FuIGJlIHNwZWNpZmllZCBtdWx0aXBsZSAiCisidGltZXMuIFRoZSBvcmRlciB0aGUgb3B0aW9ucyBhcmUgc3BlY2lmaWVkIGlzIHByZXNlcnZlZCwgd2l0aCB0aGUgb25lcyBmcm9tICIKKyJ0aGUgY29uZmlndXJhdGlvbiBmaWxlcyB0YWtpbmcgcHJlY2VkZW5jZS4gIFRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZSAiCisiQjxEUEtHX0hPT0tfQUNUSU9OPiBpcyBzZXQgZm9yIHRoZSBob29rcyB0byB0aGUgY3VycmVudCBkcGtnIGFjdGlvbi4gTm90ZTogIgorImZyb250LWVuZHMgbWlnaHQgY2FsbCBkcGtnIHNldmVyYWwgdGltZXMgcGVyIGludm9jYXRpb24sIHdoaWNoIG1pZ2h0IHJ1biB0aGUgIgorImhvb2tzIG1vcmUgdGltZXMgdGhhbiBleHBlY3RlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjUzNworbXNnaWQgIkI8LS1wYXRoLWV4Y2x1ZGU9Pkk8Z2xvYi1wYXR0ZXJuPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTM5Cittc2dpZCAiQjwtLXBhdGgtaW5jbHVkZT0+STxnbG9iLXBhdHRlcm4+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1NDIKK21zZ2lkICIiCisiU2V0IEk8Z2xvYi1wYXR0ZXJuPiBhcyBhIHBhdGggZmlsdGVyLCBlaXRoZXIgYnkgZXhjbHVkaW5nIG9yIHJlLWluY2x1ZGluZyAiCisicHJldmlvdXNseSBleGNsdWRlZCBwYXRocyBtYXRjaGluZyB0aGUgc3BlY2lmaWVkIHBhdHRlcm5zIGR1cmluZyBpbnN0YWxsLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTQ1Cittc2dpZCAiIgorIkk8V2FybmluZzogdGFrZSBpbnRvIGFjY291bnQgdGhhdCBkZXBlbmRpbmcgb24gdGhlIGV4Y2x1ZGVkIHBhdGhzIHlvdSBtaWdodCAiCisiY29tcGxldGVseSBicmVhayB5b3VyIHN5c3RlbSwgdXNlIHdpdGggY2F1dGlvbi4+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1NTUKK21zZ2lkICIiCisiVGhlIGdsb2IgcGF0dGVybnMgdXNlIHRoZSBzYW1lIHdpbGRjYXJkcyB1c2VkIGluIHRoZSBzaGVsbCwgd2VyZSAnKicgbWF0Y2hlcyAiCisiYW55IHNlcXVlbmNlIG9mIGNoYXJhY3RlcnMsIGluY2x1ZGluZyB0aGUgZW1wdHkgc3RyaW5nIGFuZCBhbHNvICcvJy4gRm9yICIKKyJleGFtcGxlLCBJPCcvdXNyLyovUkVBRConPiBtYXRjaGVzIEk8Jy91c3Ivc2hhcmUvZG9jL3BhY2thZ2UvUkVBRE1FJz4uICBBcyAiCisidXN1YWwsICc/JyBtYXRjaGVzIGFueSBzaW5nbGUgY2hhcmFjdGVyIChhZ2FpbiwgaW5jbHVkaW5nICcvJykuIEFuZCAnWycgIgorInN0YXJ0cyBhIGNoYXJhY3RlciBjbGFzcywgd2hpY2ggY2FuIGNvbnRhaW4gYSBsaXN0IG9mIGNoYXJhY3RlcnMsIHJhbmdlcyBhbmQgIgorImNvbXBsZW1lbnRhdGlvbnMuIFNlZSBCPGdsb2I+KDcpIGZvciBkZXRhaWxlZCBpbmZvcm1hdGlvbiBhYm91dCAiCisiZ2xvYmJpbmcuIE5vdGU6IHRoZSBjdXJyZW50IGltcGxlbWVudGF0aW9uIG1pZ2h0IHJlLWluY2x1ZGUgbW9yZSBkaXJlY3RvcmllcyAiCisiYW5kIHN5bWxpbmtzIHRoYW4gbmVlZGVkLCB0byBiZSBvbiB0aGUgc2FmZSBzaWRlIGFuZCBhdm9pZCBwb3NzaWJsZSB1bnBhY2sgIgorImZhaWx1cmVzLCBmdXR1cmUgd29yayBtaWdodCBmaXggdGhpcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjU1OAorbXNnaWQgIiIKKyJUaGlzIGNhbiBiZSB1c2VkIHRvIHJlbW92ZSBhbGwgcGF0aHMgZXhjZXB0IHNvbWUgcGFydGljdWxhciBvbmVzOyBhIHR5cGljYWwgIgorImNhc2UgaXM6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1NjIKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiQjwtLXBhdGgtZXhjbHVkZT0vdXNyL3NoYXJlL2RvYy8qPlxuIgorIkI8LS1wYXRoLWluY2x1ZGU9L3Vzci9zaGFyZS9kb2MvKi9jb3B5cmlnaHQ+XG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjU2NQorbXNnaWQgInRvIHJlbW92ZSBhbGwgZG9jdW1lbnRhdGlvbiBmaWxlcyBleGNlcHQgdGhlIGNvcHlyaWdodCBmaWxlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjU2OQorbXNnaWQgIiIKKyJUaGVzZSB0d28gb3B0aW9ucyBjYW4gYmUgc3BlY2lmaWVkIG11bHRpcGxlIHRpbWVzLCBhbmQgaW50ZXJsZWF2ZWQgd2l0aCBlYWNoICIKKyJvdGhlci4gQm90aCBhcmUgcHJvY2Vzc2VkIGluIHRoZSBnaXZlbiBvcmRlciwgd2l0aCB0aGUgbGFzdCBydWxlIHRoYXQgIgorIm1hdGNoZXMgYSBmaWxlIG5hbWUgbWFraW5nIHRoZSBkZWNpc2lvbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo1NzAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tc3RhdHVzLWZkID5JPG4+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1NzYKK21zZ2lkICIiCisiU2VuZCBtYWNoaW5lLXJlYWRhYmxlIHBhY2thZ2Ugc3RhdHVzIGFuZCBwcm9ncmVzcyBpbmZvcm1hdGlvbiB0byBmaWxlICIKKyJkZXNjcmlwdG9yIEk8bj4uIFRoaXMgb3B0aW9uIGNhbiBiZSBzcGVjaWZpZWQgbXVsdGlwbGUgdGltZXMuIFRoZSAiCisiaW5mb3JtYXRpb24gaXMgZ2VuZXJhbGx5IG9uZSByZWNvcmQgcGVyIGxpbmUsIGluIG9uZSBvZiB0aGUgZm9sbG93aW5nIGZvcm1zOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjU3NworIywgbm8td3JhcAorbXNnaWQgIkI8c3RhdHVzOiA+STxwYWNrYWdlPkI8OiA+STxzdGF0dXM+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1ODAKK21zZ2lkICJQYWNrYWdlIHN0YXR1cyBjaGFuZ2VkOyBJPHN0YXR1cz4gaXMgYXMgaW4gdGhlIHN0YXR1cyBmaWxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjU4MAorIywgbm8td3JhcAorbXNnaWQgIkI8c3RhdHVzOiA+STxwYWNrYWdlPkI8IDogZXJyb3IgOiA+STxleHRlbmRlZC1lcnJvci1tZXNzYWdlPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTg0Cittc2dpZCAiIgorIkFuIGVycm9yIG9jY3VycmVkLiBBbnkgcG9zc2libGUgbmV3bGluZXMgaW4gSTxleHRlbmRlZC1lcnJvci1tZXNzYWdlPiB3aWxsICIKKyJiZSBjb252ZXJ0ZWQgdG8gc3BhY2VzIGJlZm9yZSBvdXRwdXQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTg0CisjLCBuby13cmFwCittc2dpZCAiIgorIkI8c3RhdHVzOiA+STxmaWxlPkI8IDogY29uZmZpbGUtcHJvbXB0IDogJz5JPHJlYWwtb2xkPkI8JyAnPkk8cmVhbC1uZXc+QjwnICIKKyI+STx1c2VyZWRpdGVkPkI8ID5JPGRpc3RlZGl0ZWQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1ODcKK21zZ2lkICJVc2VyIGlzIGJlaW5nIGFza2VkIGEgY29uZmZpbGUgcXVlc3Rpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTg3CisjLCBuby13cmFwCittc2dpZCAiQjxwcm9jZXNzaW5nOiA+STxzdGFnZT5CPDogPkk8cGFja2FnZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjU5MgorbXNnaWQgIiIKKyJTZW50IGp1c3QgYmVmb3JlIGEgcHJvY2Vzc2luZyBzdGFnZSBzdGFydHMuIEk8c3RhZ2U+IGlzIG9uZSBvZiBCPHVwZ3JhZGU+LCAiCisiQjxpbnN0YWxsPiAoYm90aCBzZW50IGJlZm9yZSB1bnBhY2tpbmcpLCBCPGNvbmZpZ3VyZT4sIEI8dHJpZ3Byb2M+LCAiCisiQjxkaXNhcHBlYXI+LCBCPHJlbW92ZT4sIEI8cHVyZ2U+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjU5MworIywgbm8td3JhcAorbXNnaWQgIkI8LS1zdGF0dXMtbG9nZ2VyPj1JPGNvbW1hbmQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1OTgKK21zZ2lkICIiCisiU2VuZCBtYWNoaW5lLXJlYWRhYmxlIHBhY2thZ2Ugc3RhdHVzIGFuZCBwcm9ncmVzcyBpbmZvcm1hdGlvbiB0byB0aGUgc2hlbGwgIgorIkk8Y29tbWFuZD4ncyBzdGFuZGFyZCBpbnB1dC4gVGhpcyBvcHRpb24gY2FuIGJlIHNwZWNpZmllZCBtdWx0aXBsZSAiCisidGltZXMuIFRoZSBvdXRwdXQgZm9ybWF0IHVzZWQgaXMgdGhlIHNhbWUgYXMgaW4gQjwtLXN0YXR1cy1mZC4+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTk5CisjLCBuby13cmFwCittc2dpZCAiQjwtLWxvZz0+STxmaWxlbmFtZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjYxMQorbXNnaWQgIiIKKyJMb2cgc3RhdHVzIGNoYW5nZSB1cGRhdGVzIGFuZCBhY3Rpb25zIHRvIEk8ZmlsZW5hbWU+LCBpbnN0ZWFkIG9mIHRoZSBkZWZhdWx0ICIKKyJJPC92YXIvbG9nL2Rwa2cubG9nPi4gSWYgdGhpcyBvcHRpb24gaXMgZ2l2ZW4gbXVsdGlwbGUgdGltZXMsIHRoZSBsYXN0ICIKKyJmaWxlbmFtZSBpcyB1c2VkLiBMb2cgbWVzc2FnZXMgYXJlIG9mIHRoZSBmb3JtIGBZWVlZLU1NLUREIEhIOk1NOlNTIHN0YXR1cyAiCisiSTxzdGF0ZT4gSTxwa2c+IEk8aW5zdGFsbGVkLXZlcnNpb24+JyBmb3Igc3RhdHVzIGNoYW5nZSB1cGRhdGVzOyBgWVlZWS1NTS1ERCAiCisiSEg6TU06U1MgSTxhY3Rpb24+IEk8cGtnPiBJPGluc3RhbGxlZC12ZXJzaW9uPiBJPGF2YWlsYWJsZS12ZXJzaW9uPicgZm9yICIKKyJhY3Rpb25zIHdoZXJlIEk8YWN0aW9uPiBpcyBvbmUgb2YgQjxpbnN0YWxsPiwgQjx1cGdyYWRlPiwgQjxyZW1vdmU+LCAiCisiQjxwdXJnZT47IGFuZCBgWVlZWS1NTS1ERCBISDpNTTpTUyBjb25mZmlsZSBJPGZpbGVuYW1lPiBJPGRlY2lzaW9uPicgZm9yICIKKyJjb25mZmlsZSBjaGFuZ2VzIHdoZXJlIEk8ZGVjaXNpb24+IGlzIGVpdGhlciBCPGluc3RhbGw+IG9yIEI8a2VlcD4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NjExCisjLCBuby13cmFwCittc2dpZCAiQjwtLW5vLWRlYnNpZz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjYxNAorbXNnaWQgIkRvIG5vdCB0cnkgdG8gdmVyaWZ5IHBhY2thZ2Ugc2lnbmF0dXJlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2MTQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tbm8tdHJpZ2dlcnM+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2MjMKK21zZ2lkICIiCisiRG8gbm90IHJ1biBhbnkgdHJpZ2dlcnMgaW4gdGhpcyBydW4gKGFjdGl2YXRpb25zIHdpbGwgc3RpbGwgYmUgcmVjb3JkZWQpLiAgIgorIklmIHVzZWQgd2l0aCBCPC0tY29uZmlndXJlPiBJPHBhY2thZ2U+IG9yIEI8LS10cmlnZ2Vycy1vbmx5PiBJPHBhY2thZ2U+IHRoZW4gIgorInRoZSBuYW1lZCBwYWNrYWdlIHBvc3RpbnN0IHdpbGwgc3RpbGwgYmUgcnVuIGV2ZW4gaWYgb25seSBhIHRyaWdnZXJzIHJ1biBpcyAiCisibmVlZGVkLiBVc2Ugb2YgdGhpcyBvcHRpb24gbWF5IGxlYXZlIHBhY2thZ2VzIGluIHRoZSBpbXByb3BlciAiCisiQjx0cmlnZ2Vycy1hd2FpdGVkPiBhbmQgQjx0cmlnZ2Vycy1wZW5kaW5nPiBzdGF0ZXMuIFRoaXMgY2FuIGJlIGZpeGVkIGxhdGVyICIKKyJieSBydW5uaW5nOiBCPGRwa2cgLS1jb25maWd1cmUgLS1wZW5kaW5nPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2MjMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tdHJpZ2dlcnM+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2MjYKK21zZ2lkICJDYW5jZWxzIGEgcHJldmlvdXMgQjwtLW5vLXRyaWdnZXJzPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjYyOCBkcGtnLmNmZy41OjE2CisjLCBuby13cmFwCittc2dpZCAiSTwvZXRjL2Rwa2cvZHBrZy5jZmc+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2MzEKK21zZ2lkICJDb25maWd1cmF0aW9uIGZpbGUgd2l0aCBkZWZhdWx0IG9wdGlvbnMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NjMxCisjLCBuby13cmFwCittc2dpZCAiSTwvdmFyL2xvZy9kcGtnLmxvZz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjYzNQorbXNnaWQgIkRlZmF1bHQgbG9nIGZpbGUgKHNlZSBJPC9ldGMvZHBrZy9kcGtnLmNmZz4oNSkgYW5kIG9wdGlvbiBCPC0tbG9nPikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2MzgKK21zZ2lkICIiCisiVGhlIG90aGVyIGZpbGVzIGxpc3RlZCBiZWxvdyBhcmUgaW4gdGhlaXIgZGVmYXVsdCBkaXJlY3Rvcmllcywgc2VlIG9wdGlvbiAiCisiQjwtLWFkbWluZGlyPiB0byBzZWUgaG93IHRvIGNoYW5nZSBsb2NhdGlvbnMgb2YgdGhlc2UgZmlsZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NjM4CisjLCBuby13cmFwCittc2dpZCAiSTwvdmFyL2xpYi9kcGtnL2F2YWlsYWJsZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjY0MQorbXNnaWQgIkxpc3Qgb2YgYXZhaWxhYmxlIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjY0MQorIywgbm8td3JhcAorbXNnaWQgIkk8L3Zhci9saWIvZHBrZy9zdGF0dXM+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2NDcKK21zZ2lkICIiCisiU3RhdHVzZXMgb2YgYXZhaWxhYmxlIHBhY2thZ2VzLiBUaGlzIGZpbGUgY29udGFpbnMgaW5mb3JtYXRpb24gYWJvdXQgd2hldGhlciAiCisiYSBwYWNrYWdlIGlzIG1hcmtlZCBmb3IgcmVtb3Zpbmcgb3Igbm90LCB3aGV0aGVyIGl0IGlzIGluc3RhbGxlZCBvciBub3QsICIKKyJldGMuIFNlZSBzZWN0aW9uIEI8SU5GT1JNQVRJT04gQUJPVVQgUEFDS0FHRVM+IGZvciBtb3JlIGluZm8uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2NTAKK21zZ2lkICIiCisiVGhlIHN0YXR1cyBmaWxlIGlzIGJhY2tlZCB1cCBkYWlseSBpbiBJPC92YXIvYmFja3Vwcz4uIEl0IGNhbiBiZSB1c2VmdWwgaWYgIgorIml0J3MgbG9zdCBvciBjb3JydXB0ZWQgZHVlIHRvIGZpbGVzeXN0ZW1zIHRyb3VibGVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NjUzCittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgZmlsZXMgYXJlIGNvbXBvbmVudHMgb2YgYSBiaW5hcnkgcGFja2FnZS4gU2VlIEI8ZGViPig1KSAgZm9yICIKKyJtb3JlIGluZm9ybWF0aW9uIGFib3V0IHRoZW06IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NjUzCisjLCBuby13cmFwCittc2dpZCAiSTxjb250cm9sPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjY1NQorIywgbm8td3JhcAorbXNnaWQgIkk8Y29uZmZpbGVzPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjY1NworIywgbm8td3JhcAorbXNnaWQgIkk8cHJlaW5zdD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2NTkKKyMsIG5vLXdyYXAKK21zZ2lkICJJPHBvc3RpbnN0PiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjY2MQorIywgbm8td3JhcAorbXNnaWQgIkk8cHJlcm0+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NjYzCisjLCBuby13cmFwCittc2dpZCAiSTxwb3N0cm0+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLjE6NjY2IGRwa2ctYnVpbGRmbGFncy4xOjEyOCBkcGtnLWJ1aWxkcGFja2FnZS4xOjIzMCBkcGtnLWRlYi4xOjIzMiBkcGtnLWRpdmVydC44OjExMiBkcGtnLXF1ZXJ5LjE6MjA0IGRwa2ctc3RhdG92ZXJyaWRlLjg6NjggZHBrZy10cmlnZ2VyLjE6NjAgZHBrZy12ZW5kb3IuMTo0MiBkc2VsZWN0LjE6NDIzIHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozNTQKKyMsIG5vLXdyYXAKK21zZ2lkICJFTlZJUk9OTUVOVCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjY2NyBkc2VsZWN0LjE6NDI0CisjLCBuby13cmFwCittc2dpZCAiQjxIT01FPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NjcxCittc2dpZCAiIgorIklmIHNldCwgQjxkcGtnPiB3aWxsIHVzZSBpdCBhcyB0aGUgZGlyZWN0b3J5IGZyb20gd2hpY2ggdG8gcmVhZCB0aGUgdXNlciAiCisic3BlY2lmaWMgY29uZmlndXJhdGlvbiBmaWxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjY3MSBkcGtnLWRlYi4xOjIzMworIywgbm8td3JhcAorbXNnaWQgIkI8VE1QRElSPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6Njc1Cittc2dpZCAiIgorIklmIHNldCwgQjxkcGtnPiB3aWxsIHVzZSBpdCBhcyB0aGUgZGlyZWN0b3J5IGluIHdoaWNoIHRvIGNyZWF0ZSB0ZW1wb3JhcnkgIgorImZpbGVzIGFuZCBkaXJlY3Rvcmllcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2NzUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPFBBR0VSPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6Njc4Cittc2dpZCAiVGhlIHByb2dyYW0gQjxkcGtnPiB3aWxsIGV4ZWN1dGUgd2hlbiBkaXNwbGF5aW5nIHRoZSBjb25mZmlsZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6Njc4CisjLCBuby13cmFwCittc2dpZCAiQjxTSEVMTD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjY4MQorbXNnaWQgIlRoZSBwcm9ncmFtIEI8ZHBrZz4gd2lsbCBleGVjdXRlIHdoZW4gc3RhcnRpbmcgYSBuZXcgc2hlbGwuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NjgxIGRwa2ctcXVlcnkuMToyMDkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPENPTFVNTlM+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2ODUKK21zZ2lkICIiCisiU2V0cyB0aGUgbnVtYmVyIG9mIGNvbHVtbnMgQjxkcGtnPiBzaG91bGQgdXNlIHdoZW4gZGlzcGxheWluZyBmb3JtYXR0ZWQgIgorInRleHQuIEN1cnJlbnRseSBvbmx5IHVzZWQgYnkgLWwuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6Njg1CisjLCBuby13cmFwCittc2dpZCAiQjxEUEtHX1NIRUxMX1JFQVNPTj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjY4OQorbXNnaWQgIiIKKyJEZWZpbmVkIGJ5IEI8ZHBrZz4gb24gdGhlIHNoZWxsIHNwYXduZWQgb24gdGhlIGNvbmZmaWxlIHByb21wdCB0byBleGFtaW5lICIKKyJ0aGUgc2l0dWF0aW9uLiBDdXJyZW50IHZhbGlkIHZhbHVlOiBCPGNvbmZmaWxlLXByb21wdD4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6Njg5CisjLCBuby13cmFwCittc2dpZCAiQjxEUEtHX0NPTkZGSUxFX09MRD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjY5MworbXNnaWQgIiIKKyJEZWZpbmVkIGJ5IEI8ZHBrZz4gb24gdGhlIHNoZWxsIHNwYXduZWQgb24gdGhlIGNvbmZmaWxlIHByb21wdCB0byBleGFtaW5lICIKKyJ0aGUgc2l0dWF0aW9uLiBDb250YWlucyB0aGUgcGF0aCB0byB0aGUgb2xkIGNvbmZmaWxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjY5MworIywgbm8td3JhcAorbXNnaWQgIkI8RFBLR19DT05GRklMRV9ORVc+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2OTcKK21zZ2lkICIiCisiRGVmaW5lZCBieSBCPGRwa2c+IG9uIHRoZSBzaGVsbCBzcGF3bmVkIG9uIHRoZSBjb25mZmlsZSBwcm9tcHQgdG8gZXhhbWluZSAiCisidGhlIHNpdHVhdGlvbi4gQ29udGFpbnMgdGhlIHBhdGggdG8gdGhlIG5ldyBjb25mZmlsZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2OTcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPERQS0dfUlVOTklOR19WRVJTSU9OPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzAxCittc2dpZCAiIgorIkRlZmluZWQgYnkgQjxkcGtnPiBvbiB0aGUgbWFpbnRhaW5lciBzY3JpcHQgZW52aXJvbm1lbnQgdG8gdGhlIHZlcnNpb24gb2YgIgorInRoZSBjdXJyZW50bHkgcnVubmluZyBCPGRwa2c+IGluc3RhbmNlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjcwMSBkcGtnLWRpdmVydC44OjExNworIywgbm8td3JhcAorbXNnaWQgIkI8RFBLR19NQUlOVFNDUklQVF9QQUNLQUdFPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzA1Cittc2dpZCAiIgorIkRlZmluZWQgYnkgQjxkcGtnPiBvbiB0aGUgbWFpbnRhaW5lciBzY3JpcHQgZW52aXJvbm1lbnQgdG8gdGhlIHBhY2thZ2UgbmFtZSAiCisiYmVpbmcgaGFuZGxlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo3MDUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPERQS0dfTUFJTlRTQ1JJUFRfQVJDSD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjcwOQorbXNnaWQgIiIKKyJEZWZpbmVkIGJ5IEI8ZHBrZz4gb24gdGhlIG1haW50YWluZXIgc2NyaXB0IGVudmlyb25tZW50IHRvIHRoZSBhcmNoaXRlY3R1cmUgIgorInRoZSBwYWNrYWdlIGdvdCBidWlsdCBmb3IuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NzA5CisjLCBuby13cmFwCittc2dpZCAiQjxEUEtHX01BSU5UU0NSSVBUX05BTUU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3MTMKK21zZ2lkICIiCisiRGVmaW5lZCBieSBCPGRwa2c+IG9uIHRoZSBtYWludGFpbmVyIHNjcmlwdCBlbnZpcm9ubWVudCB0byB0aGUgbmFtZSBvZiB0aGUgIgorInNjcmlwdCBydW5uaW5nIChwcmVpbnN0LCBwb3N0aW5zdCwgcHJlcm0sIHBvc3RybSkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3MTYKK21zZ2lkICJUbyBsaXN0IHBhY2thZ2VzIHJlbGF0ZWQgdG8gdGhlIGVkaXRvciBCPHZpPigxKToiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjcxOAorIywgbm8td3JhcAorbXNnaWQgIiAgICAgQjxkcGtnIC1sIFxcKGFxKnZpKlxcKGFxPlxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3MjEKK21zZ2lkICJUbyBzZWUgdGhlIGVudHJpZXMgaW4gSTwvdmFyL2xpYi9kcGtnL2F2YWlsYWJsZT4gb2YgdHdvIHBhY2thZ2VzOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzIzCisjLCBuby13cmFwCittc2dpZCAiICAgICBCPGRwa2cgLS1wcmludC1hdmFpbCBlbHZpcyB2aW0gfCBsZXNzPlxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3MjYKK21zZ2lkICJUbyBzZWFyY2ggdGhlIGxpc3Rpbmcgb2YgcGFja2FnZXMgeW91cnNlbGY6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3MjgKKyMsIG5vLXdyYXAKK21zZ2lkICIgICAgIEI8bGVzcyAvdmFyL2xpYi9kcGtnL2F2YWlsYWJsZT5cbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzMxCittc2dpZCAiVG8gcmVtb3ZlIGFuIGluc3RhbGxlZCBlbHZpcyBwYWNrYWdlOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzMzCisjLCBuby13cmFwCittc2dpZCAiICAgICBCPGRwa2cgLXIgZWx2aXM+XG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjczOAorbXNnaWQgIiIKKyJUbyBpbnN0YWxsIGEgcGFja2FnZSwgeW91IGZpcnN0IG5lZWQgdG8gZmluZCBpdCBpbiBhbiBhcmNoaXZlIG9yIENEUk9NLiBUaGUgIgorIlwiYXZhaWxhYmxlXCIgZmlsZSBzaG93cyB0aGF0IHRoZSB2aW0gcGFja2FnZSBpcyBpbiBzZWN0aW9uIFwiZWRpdG9yc1wiOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzQxCisjLCBuby13cmFwCittc2dpZCAiIgorIiAgICAgQjxjZCAvbWVkaWEvY2Ryb20vcG9vbC9tYWluL3YvdmltPlxuIgorIiAgICAgQjxkcGtnIC1pIHZpbV80LjUtMy5kZWI+XG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjc0NAorbXNnaWQgIlRvIG1ha2UgYSBsb2NhbCBjb3B5IG9mIHRoZSBwYWNrYWdlIHNlbGVjdGlvbiBzdGF0ZXM6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3NDYKKyMsIG5vLXdyYXAKK21zZ2lkICIgICAgIEI8ZHBrZyAtLWdldC1zZWxlY3Rpb25zIEU8Z3Q+bXlzZWxlY3Rpb25zPlxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3NTAKK21zZ2lkICJZb3UgbWlnaHQgdHJhbnNmZXIgdGhpcyBmaWxlIHRvIGFub3RoZXIgY29tcHV0ZXIsIGFuZCBpbnN0YWxsIGl0IHRoZXJlIHdpdGg6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3NTMKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiICAgICBCPGRwa2cgLS1jbGVhci1zZWxlY3Rpb25zPlxuIgorIiAgICAgQjxkcGtnIC0tc2V0LXNlbGVjdGlvbnMgRTxsdD5teXNlbGVjdGlvbnM+XG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjc1OQorbXNnaWQgIiIKKyJOb3RlIHRoYXQgdGhpcyB3aWxsIG5vdCBhY3R1YWxseSBpbnN0YWxsIG9yIHJlbW92ZSBhbnl0aGluZywgYnV0IGp1c3Qgc2V0ICIKKyJ0aGUgc2VsZWN0aW9uIHN0YXRlIG9uIHRoZSByZXF1ZXN0ZWQgcGFja2FnZXMuIFlvdSB3aWxsIG5lZWQgc29tZSBvdGhlciAiCisiYXBwbGljYXRpb24gdG8gYWN0dWFsbHkgZG93bmxvYWQgYW5kIGluc3RhbGwgdGhlIHJlcXVlc3RlZCBwYWNrYWdlcy4gRm9yICIKKyJleGFtcGxlLCBydW4gQjxhcHQtZ2V0IGRzZWxlY3QtdXBncmFkZT4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3NjIKK21zZ2lkICIiCisiT3JkaW5hcmlseSwgeW91IHdpbGwgZmluZCB0aGF0IEI8ZHNlbGVjdD4oMSkgcHJvdmlkZXMgYSBtb3JlIGNvbnZlbmllbnQgd2F5ICIKKyJ0byBtb2RpZnkgdGhlIHBhY2thZ2Ugc2VsZWN0aW9uIHN0YXRlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2cuMTo3NjQKKyMsIG5vLXdyYXAKK21zZ2lkICJBRERJVElPTkFMIEZVTkNUSU9OQUxJVFkiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjc2NworbXNnaWQgIiIKKyJBZGRpdGlvbmFsIGZ1bmN0aW9uYWxpdHkgY2FuIGJlIGdhaW5lZCBieSBpbnN0YWxsaW5nIGFueSBvZiB0aGUgZm9sbG93aW5nICIKKyJwYWNrYWdlczogQjxhcHQ+LCBCPGFwdGl0dWRlPiBhbmQgQjxkZWJzdW1zPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjc3OQorbXNnaWQgIiIKKyJCPGFwdGl0dWRlPigxKSwgQjxhcHQ+KDEpLCBCPGRzZWxlY3Q+KDEpLCBCPGRwa2ctZGViPigxKSwgQjxkcGtnLXF1ZXJ5PigxKSwgIgorIkI8ZGViPig1KSwgQjxkZWItY29udHJvbD4oNSksIEI8ZHBrZy5jZmc+KDUpLCBhbmQgQjxkcGtnLXJlY29uZmlndXJlPig4KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjc4MgorbXNnaWQgIkI8LS1uby1hY3Q+IHVzdWFsbHkgZ2l2ZXMgbGVzcyBpbmZvcm1hdGlvbiB0aGFuIG1pZ2h0IGJlIGhlbHBmdWwuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3ODUgZHBrZy5jZmcuNToyMgorbXNnaWQgIiIKKyJTZWUgSTwvdXNyL3NoYXJlL2RvYy9kcGtnL1RIQU5LUz4gZm9yIHRoZSBsaXN0IG9mIHBlb3BsZSB3aG8gaGF2ZSAiCisiY29udHJpYnV0ZWQgdG8gQjxkcGtnPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MQorIywgbm8td3JhcAorbXNnaWQgImRwa2ctYXJjaGl0ZWN0dXJlIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NAorbXNnaWQgImRwa2ctYXJjaGl0ZWN0dXJlIC0gc2V0IGFuZCBkZXRlcm1pbmUgdGhlIGFyY2hpdGVjdHVyZSBmb3IgcGFja2FnZSBidWlsZGluZyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjgKK21zZ2lkICJCPGRwa2ctYXJjaGl0ZWN0dXJlPiBbSTxvcHRpb24+Li4uXSBbSTxjb21tYW5kPl0iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMworbXNnaWQgIiIKKyJkcGtnLWFyY2hpdGVjdHVyZSBkb2VzIHByb3ZpZGUgYSBmYWNpbGl0eSB0byBkZXRlcm1pbmUgYW5kIHNldCB0aGUgYnVpbGQgYW5kICIKKyJob3N0IGFyY2hpdGVjdHVyZSBmb3IgcGFja2FnZSBidWlsZGluZy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxNgorbXNnaWQgIiIKKyJUaGUgYnVpbGQgYXJjaGl0ZWN0dXJlIGlzIGFsd2F5cyBkZXRlcm1pbmVkIGJ5IGFuIGV4dGVybmFsIGNhbGwgdG8gIgorIkI8ZHBrZz4oMSksIGFuZCBjYW4gbm90IGJlIHNldCBhdCB0aGUgY29tbWFuZCBsaW5lLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI1Cittc2dpZCAiIgorIllvdSBjYW4gc3BlY2lmeSB0aGUgaG9zdCBhcmNoaXRlY3R1cmUgYnkgcHJvdmlkaW5nIG9uZSBvciBib3RoIG9mIHRoZSAiCisib3B0aW9ucyBCPC1hPiBhbmQgQjwtdD4uIFRoZSBkZWZhdWx0IGlzIGRldGVybWluZWQgYnkgYW4gZXh0ZXJuYWwgY2FsbCB0byAiCisiQjxnY2M+KDEpLCBvciB0aGUgc2FtZSBhcyB0aGUgYnVpbGQgYXJjaGl0ZWN0dXJlIGlmIFxccy0xQ0NcXHMwIG9yIGdjYyBhcmUgIgorImJvdGggbm90IGF2YWlsYWJsZS4gT25lIG91dCBvZiBCPC1hPiBhbmQgQjwtdD4gaXMgc3VmZmljaWVudCwgdGhlIHZhbHVlIG9mICIKKyJ0aGUgb3RoZXIgd2lsbCBiZSBzZXQgdG8gYSB1c2FibGUgZGVmYXVsdC4gSW5kZWVkLCBpdCBpcyBvZnRlbiBiZXR0ZXIgdG8gIgorIm9ubHkgc3BlY2lmeSBvbmUsIGJlY2F1c2UgQjxkcGtnLWFyY2hpdGVjdHVyZT4gd2lsbCB3YXJuIHlvdSBpZiB5b3VyIGNob2ljZSAiCisiZG9lcyBub3QgbWF0Y2ggdGhlIGRlZmF1bHQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI2IGRwa2ctYnVpbGRmbGFncy4xOjQ1IGRwa2ctZGViLjE6MjcgZHBrZy1kaXZlcnQuODoyNCBkcGtnLXF1ZXJ5LjE6MTMgZHBrZy1zb3VyY2UuMToxOCBkcGtnLXNwbGl0LjE6MzEgZHBrZy1zdGF0b3ZlcnJpZGUuODoyMyBkcGtnLXRyaWdnZXIuMToyNCBkcGtnLXZlbmRvci4xOjE0IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MzQgdXBkYXRlLWFsdGVybmF0aXZlcy44OjIwMgorIywgbm8td3JhcAorbXNnaWQgIkNPTU1BTkRTIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI3CisjLCBuby13cmFwCittc2dpZCAiQjwtbD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTozMQorbXNnaWQgIiIKKyJQcmludCB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGVzLCBvbmUgZWFjaCBsaW5lLCBpbiB0aGUgZm9ybWF0ICIKKyJJPFZBUklBQkxFPXZhbHVlPi4gVGhpcyBpcyB0aGUgZGVmYXVsdCBhY3Rpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjMxCisjLCBuby13cmFwCittc2dpZCAiQjwtZT5JPGRlYmlhbi1hcmNoaXRlY3R1cmU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MzcKK21zZ2lkICIiCisiQ2hlY2sgZm9yIGVxdWFsaXR5IG9mIGFyY2hpdGVjdHVyZS4gQnkgZGVmYXVsdCBJPGRlYmlhbi1hcmNoaXRlY3R1cmU+IGlzICIKKyJjb21wYXJlZCBhZ2FpbnN0IHRoZSBjdXJyZW50IERlYmlhbiBhcmNoaXRlY3R1cmUsIGJlaW5nIHRoZSBob3N0LiAgVGhpcyAiCisiYWN0aW9uIHdpbGwgbm90IGV4cGFuZCB0aGUgYXJjaGl0ZWN0dXJlIHdpbGRjYXJkcy4gQ29tbWFuZCBmaW5pc2hlcyB3aXRoIGFuICIKKyJleGl0IHN0YXR1cyBvZiAwIGlmIG1hdGNoZWQsIDEgaWYgbm90IG1hdGNoZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjM3CisjLCBuby13cmFwCittc2dpZCAiQjwtaT5JPGFyY2hpdGVjdHVyZS13aWxkY2FyZD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo0MworbXNnaWQgIiIKKyJDaGVjayBmb3IgaWRlbnRpdHkgb2YgYXJjaGl0ZWN0dXJlIGJ5IGV4cGFuZGluZyBJPGFyY2hpdGVjdHVyZS13aWxkY2FyZD4gYXMgIgorImFuIGFyY2hpdGVjdHVyZSB3aWxkY2FyZCBhbmQgY29tcGFyaW5nIGFnYWluc3QgdGhlIGN1cnJlbnQgRGViaWFuICIKKyJhcmNoaXRlY3R1cmUuIENvbW1hbmQgZmluaXNoZXMgd2l0aCBhbiBleGl0IHN0YXR1cyBvZiAwIGlmIG1hdGNoZWQsIDEgaWYgbm90ICIKKyJtYXRjaGVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo0MworIywgbm8td3JhcAorbXNnaWQgIkI8LXE+STx2YXJpYWJsZS1uYW1lPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjQ2Cittc2dpZCAiUHJpbnQgdGhlIHZhbHVlIG9mIGEgc2luZ2xlIHZhcmlhYmxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo0NgorIywgbm8td3JhcAorbXNnaWQgIkI8LXM+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NTAKK21zZ2lkICIiCisiUHJpbnQgYW4gZXhwb3J0IGNvbW1hbmQuIFRoaXMgY2FuIGJlIHVzZWQgdG8gc2V0IHRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZXMgIgorInVzaW5nIGV2YWwuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjUwCisjLCBuby13cmFwCittc2dpZCAiQjwtdT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo1MworbXNnaWQgIlByaW50IGEgc2ltaWxhciBjb21tYW5kIHRvIEI8LXM+IGJ1dCB0byB1bnNldCBhbGwgdmFyaWFibGVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo1MworIywgbm8td3JhcAorbXNnaWQgIkI8LWM+STwgY29tbWFuZD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo1NworbXNnaWQgIiIKKyJFeGVjdXRlIGEgSTxjb21tYW5kPiBpbiBhbiBlbnZpcm9ubWVudCB3aGljaCBoYXMgYWxsIHZhcmlhYmxlcyBzZXQgdG8gdGhlICIKKyJkZXRlcm1pbmVkIHZhbHVlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo1NworIywgbm8td3JhcAorbXNnaWQgIkI8LUw+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NjAKK21zZ2lkICJQcmludCBhIGxpc3Qgb2YgdmFsaWQgYXJjaGl0ZWN0dXJlIG5hbWVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjYzIGRwa2ctYnVpbGRmbGFncy4xOjkyIGRwa2ctYnVpbGRwYWNrYWdlLjE6MjI2IGRwa2ctY2hlY2tidWlsZGRlcHMuMTozNiBkcGtnLWRpc3RhZGRmaWxlLjE6MzUgZHBrZy1kZWIuMToxNzUgZHBrZy1kaXZlcnQuODo3NCBkcGtnLWdlbmNoYW5nZXMuMToxMzQgZHBrZy1nZW5jb250cm9sLjE6MTI0IGRwa2ctZ2Vuc3ltYm9scy4xOjQ0NiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjQxIGRwa2ctbmFtZS4xOjYxIGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTozNiBkcGtnLXF1ZXJ5LjE6MTEzIGRwa2ctc2NhbnBhY2thZ2VzLjE6OTkgZHBrZy1zY2Fuc291cmNlcy4xOjY4IGRwa2ctc2hsaWJkZXBzLjE6MjE4IGRwa2ctc291cmNlLjE6OTkgZHBrZy1zcGxpdC4xOjEyOSBkcGtnLXN0YXRvdmVycmlkZS44OjQ3IGRwa2ctdHJpZ2dlci4xOjM0IGRwa2ctdmVuZG9yLjE6MzEgdXBkYXRlLWFsdGVybmF0aXZlcy44OjMxOQorbXNnaWQgIlNob3cgdGhlIHVzYWdlIG1lc3NhZ2UgYW5kIGV4aXQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NjYgZHBrZy1idWlsZGZsYWdzLjE6OTUgZHBrZy1idWlsZHBhY2thZ2UuMToyMjkgZHBrZy1jaGVja2J1aWxkZGVwcy4xOjM5IGRwa2ctZGlzdGFkZGZpbGUuMTozOCBkcGtnLWRlYi4xOjE3OCBkcGtnLWRpdmVydC44Ojc3IGRwa2ctZ2VuY2hhbmdlcy4xOjEzNyBkcGtnLWdlbmNvbnRyb2wuMToxMjcgZHBrZy1nZW5zeW1ib2xzLjE6NDQ5IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6NDQgZHBrZy1uYW1lLjE6NjQgZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjM5IGRwa2ctcXVlcnkuMToxMTYgZHBrZy1zY2FucGFja2FnZXMuMToxMDIgZHBrZy1zY2Fuc291cmNlcy4xOjcwIGRwa2ctc2hsaWJkZXBzLjE6MjIxIGRwa2ctc291cmNlLjE6MTAyIGRwa2ctc3BsaXQuMToxMzIgZHBrZy1zdGF0b3ZlcnJpZGUuODo1MCBkcGtnLXRyaWdnZXIuMTozNyBkcGtnLXZlbmRvci4xOjM0IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMjIKK21zZ2lkICJTaG93IHRoZSB2ZXJzaW9uIGFuZCBleGl0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo2OAorIywgbm8td3JhcAorbXNnaWQgIkI8LWE+STxkZWJpYW4tYXJjaGl0ZWN0dXJlPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjcxCittc2dpZCAiU2V0IHRoZSBEZWJpYW4gYXJjaGl0ZWN0dXJlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo3MSBkcGtnLWJ1aWxkcGFja2FnZS4xOjExMAorIywgbm8td3JhcAorbXNnaWQgIkI8LXQ+STxnbnUtc3lzdGVtLXR5cGU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NzQKK21zZ2lkICJTZXQgdGhlIEdOVSBzeXN0ZW0gdHlwZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NzQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1mPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjgxCittc2dpZCAiIgorIlZhbHVlcyBzZXQgYnkgZXhpc3RpbmcgZW52aXJvbm1lbnQgdmFyaWFibGVzIHdpdGggdGhlIHNhbWUgbmFtZSBhcyB1c2VkIGJ5ICIKKyJ0aGUgc2NyaXB0cyBhcmUgaG9ub3JlZCAoaS5lLiB1c2VkIGJ5IEI8ZHBrZy1hcmNoaXRlY3R1cmU+KSwgZXhjZXB0IGlmIHRoaXMgIgorImZvcmNlIGZsYWcgaXMgcHJlc2VudC4gVGhpcyBhbGxvd3MgdGhlIHVzZXIgdG8gb3ZlcnJpZGUgYSB2YWx1ZSBldmVuIHdoZW4gIgorInRoZSBjYWxsIHRvIEI8ZHBrZy1hcmNoaXRlY3R1cmU+IGlzIGJ1cmllZCBpbiBzb21lIG90aGVyIHNjcmlwdCAoZm9yIGV4YW1wbGUgIgorIkI8ZHBrZy1idWlsZHBhY2thZ2U+KDEpKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6ODIKKyMsIG5vLXdyYXAKK21zZ2lkICJURVJNUyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo4MworIywgbm8td3JhcAorbXNnaWQgImJ1aWxkIG1hY2hpbmUiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo4NQorbXNnaWQgIlRoZSBtYWNoaW5lIHRoZSBwYWNrYWdlIGlzIGJ1aWx0IG9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo4NQorIywgbm8td3JhcAorbXNnaWQgImhvc3QgbWFjaGluZSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjg3Cittc2dpZCAiVGhlIG1hY2hpbmUgdGhlIHBhY2thZ2UgaXMgYnVpbHQgZm9yLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo4NworIywgbm8td3JhcAorbXNnaWQgIkRlYmlhbiBhcmNoaXRlY3R1cmUiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo5MAorbXNnaWQgIiIKKyJUaGUgRGViaWFuIGFyY2hpdGVjdHVyZSBzdHJpbmcsIHdoaWNoIHNwZWNpZmllcyB0aGUgYmluYXJ5IHRyZWUgaW4gdGhlICIKKyJcXHMtMUZUUFxcczAgYXJjaGl2ZS4gRXhhbXBsZXM6IGkzODYsIHNwYXJjLCBodXJkLWkzODYuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjkwCisjLCBuby13cmFwCittc2dpZCAiYXJjaGl0ZWN0dXJlIHdpbGRjYXJkIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6OTQKK21zZ2lkICIiCisiQW4gYXJjaGl0ZWN0dXJlIHdpbGRjYXJkIGlzIGEgc3BlY2lhbCBhcmNoaXRlY3R1cmUgc3RyaW5nIHRoYXQgd2lsbCBtYXRjaCAiCisiYW55IHJlYWwgYXJjaGl0ZWN0dXJlIGJlaW5nIHBhcnQgb2YgaXQuIFRoZSBnZW5lcmFsIGZvcm0gaXMgIgorIkU8bHQ+a2VybmVsRTxndD4tRTxsdD5jcHVFPGd0Pi4gIEV4YW1wbGVzOiBsaW51eC1hbnksIGFueS1pMzg2LCBodXJkLWFueS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6OTQKKyMsIG5vLXdyYXAKK21zZ2lkICJcXHMtMUdOVVxcczAgc3lzdGVtIHR5cGUiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo5OAorbXNnaWQgIiIKKyJBbiBhcmNoaXRlY3R1cmUgc3BlY2lmaWNhdGlvbiBzdHJpbmcgY29uc2lzdGluZyBvZiB0d28gcGFydHMgc2VwYXJhdGVkIGJ5IGEgIgorImRhc2g6IGNwdSBhbmQgc3lzdGVtLiBFeGFtcGxlczogaTM4Ni1saW51eC1nbnUsIHNwYXJjLWxpbnV4LWdudSwgaTM4Ni1nbnUsICIKKyJ4ODZfNjQtbmV0YnNkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo5OQorIywgbm8td3JhcAorbXNnaWQgIlZBUklBQkxFUyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEwMQorbXNnaWQgIlRoZSBmb2xsb3dpbmcgdmFyaWFibGVzIGFyZSBzZXQgYnkgQjxkcGtnLWFyY2hpdGVjdHVyZT46IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEwMQorIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0JVSUxEX0FSQ0hcXHMwIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTAzCittc2dpZCAiVGhlIERlYmlhbiBhcmNoaXRlY3R1cmUgb2YgdGhlIGJ1aWxkIG1hY2hpbmUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEwMworIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0JVSUxEX0FSQ0hfT1NcXHMwIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTA1Cittc2dpZCAiVGhlIERlYmlhbiBzeXN0ZW0gbmFtZSBvZiB0aGUgYnVpbGQgbWFjaGluZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTA1CisjLCBuby13cmFwCittc2dpZCAiXFxzLTFERUJfQlVJTERfQVJDSF9DUFVcXHMwIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTA3Cittc2dpZCAiVGhlIERlYmlhbiBjcHUgbmFtZSBvZiB0aGUgYnVpbGQgbWFjaGluZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTA3CisjLCBuby13cmFwCittc2dpZCAiXFxzLTFERUJfQlVJTERfQVJDSF9CSVRTXFxzMCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEwOQorbXNnaWQgIlRoZSBwb2ludGVyIHNpemUgb2YgdGhlIGJ1aWxkIG1hY2hpbmUgKGluIGJpdHMpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMDkKKyMsIG5vLXdyYXAKK21zZ2lkICJcXHMtMURFQl9CVUlMRF9BUkNIX0VORElBTlxcczAiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMTEKK21zZ2lkICJUaGUgZW5kaWFubmVzcyBvZiB0aGUgYnVpbGQgbWFjaGluZSAobGl0dGxlIC8gYmlnKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTExCisjLCBuby13cmFwCittc2dpZCAiXFxzLTFERUJfQlVJTERfR05VX0NQVVxcczAiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMTMKK21zZ2lkICJUaGUgXFxzLTFDUFVcXHMwIHBhcnQgb2YgXFxzLTFERUJfQlVJTERfR05VX1RZUEVcXHMwLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMTMKKyMsIG5vLXdyYXAKK21zZ2lkICJcXHMtMURFQl9CVUlMRF9HTlVfU1lTVEVNXFxzMCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjExNQorbXNnaWQgIlRoZSBTeXN0ZW0gcGFydCBvZiBcXHMtMURFQl9CVUlMRF9HTlVfVFlQRVxcczAuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjExNQorIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0JVSUxEX0dOVV9UWVBFXFxzMCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjExNworbXNnaWQgIlRoZSBcXHMtMUdOVVxcczAgc3lzdGVtIHR5cGUgb2YgdGhlIGJ1aWxkIG1hY2hpbmUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjExNworIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0JVSUxEX01VTFRJQVJDSFxcczAiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMjAKK21zZ2lkICIiCisiVGhlIGNsYXJpZmllZCBcXHMtMUdOVVxcczAgc3lzdGVtIHR5cGUgb2YgdGhlIGJ1aWxkIG1hY2hpbmUsIHVzZWQgZm9yICIKKyJmaWxlc3lzdGVtIHBhdGhzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMjAKKyMsIG5vLXdyYXAKK21zZ2lkICJcXHMtMURFQl9IT1NUX0FSQ0hcXHMwIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTIyCittc2dpZCAiVGhlIERlYmlhbiBhcmNoaXRlY3R1cmUgb2YgdGhlIGhvc3QgbWFjaGluZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTIyCisjLCBuby13cmFwCittc2dpZCAiXFxzLTFERUJfSE9TVF9BUkNIX09TXFxzMCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEyNAorbXNnaWQgIlRoZSBEZWJpYW4gc3lzdGVtIG5hbWUgb2YgdGhlIGhvc3QgbWFjaGluZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTI0CisjLCBuby13cmFwCittc2dpZCAiXFxzLTFERUJfSE9TVF9BUkNIX0NQVVxcczAiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMjYKK21zZ2lkICJUaGUgRGViaWFuIGNwdSBuYW1lIG9mIHRoZSBob3N0IG1hY2hpbmUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEyNgorIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0hPU1RfQVJDSF9CSVRTXFxzMCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEyOAorbXNnaWQgIlRoZSBwb2ludGVyIHNpemUgb2YgdGhlIGhvc3QgbWFjaGluZSAoaW4gYml0cykuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEyOAorIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0hPU1RfQVJDSF9FTkRJQU5cXHMwIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTMwCittc2dpZCAiVGhlIGVuZGlhbm5lc3Mgb2YgdGhlIGhvc3QgbWFjaGluZSAobGl0dGxlIC8gYmlnKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTMwCisjLCBuby13cmFwCittc2dpZCAiXFxzLTFERUJfSE9TVF9HTlVfQ1BVXFxzMCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEzMgorbXNnaWQgIlRoZSBcXHMtMUNQVVxcczAgcGFydCBvZiBcXHMtMURFQl9IT1NUX0dOVV9UWVBFXFxzMC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTMyCisjLCBuby13cmFwCittc2dpZCAiXFxzLTFERUJfSE9TVF9HTlVfU1lTVEVNXFxzMCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEzNAorbXNnaWQgIlRoZSBTeXN0ZW0gcGFydCBvZiBcXHMtMURFQl9IT1NUX0dOVV9UWVBFXFxzMC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTM0CisjLCBuby13cmFwCittc2dpZCAiXFxzLTFERUJfSE9TVF9HTlVfVFlQRVxcczAiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMzYKK21zZ2lkICJUaGUgXFxzLTFHTlVcXHMwIHN5c3RlbSB0eXBlIG9mIHRoZSBob3N0IG1hY2hpbmUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEzNgorIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0hPU1RfTVVMVElBUkNIXFxzMCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEzOQorbXNnaWQgIiIKKyJUaGUgY2xhcmlmaWVkIFxccy0xR05VXFxzMCBzeXN0ZW0gdHlwZSBvZiB0aGUgaG9zdCBtYWNoaW5lLCB1c2VkIGZvciAiCisiZmlsZXN5c3RlbSBwYXRocy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTQwCisjLCBuby13cmFwCittc2dpZCAiREVCSUFOL1JVTEVTIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTQ4Cittc2dpZCAiIgorIlRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZXMgc2V0IGJ5IEI8ZHBrZy1hcmNoaXRlY3R1cmU+IGFyZSBwYXNzZWQgdG8gIgorIkk8ZGViaWFuL3J1bGVzPiBhcyBtYWtlIHZhcmlhYmxlcyAoc2VlIG1ha2UgZG9jdW1lbnRhdGlvbikuIEhvd2V2ZXIsIHlvdSAiCisic2hvdWxkIG5vdCByZWx5IG9uIHRoZW0sIGFzIHRoaXMgYnJlYWtzIG1hbnVhbCBpbnZvY2F0aW9uIG9mIHRoZSAiCisic2NyaXB0LiBJbnN0ZWFkLCB5b3Ugc2hvdWxkIGFsd2F5cyBpbml0aWFsaXplIHRoZW0gdXNpbmcgIgorIkI8ZHBrZy1hcmNoaXRlY3R1cmU+IHdpdGggdGhlIC1xIG9wdGlvbi4gSGVyZSBhcmUgc29tZSBleGFtcGxlcywgd2hpY2ggYWxzbyAiCisic2hvdyBob3cgeW91IGNhbiBpbXByb3ZlIHRoZSBjcm9zcyBjb21waWxhdGlvbiBzdXBwb3J0IGluIHlvdXIgcGFja2FnZToiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxNTEgZHBrZy1hcmNoaXRlY3R1cmUuMToxNjgKK21zZ2lkICJJbnN0ZWFkIG9mOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjE1NQorIywgbm8td3JhcAorbXNnaWQgIiIKKyJBUkNIPVxcYGRwa2cgLS1wcmludC1hcmNoaXRlY3R1cmVcXGBcbiIKKyJjb25maWd1cmUgJChcXHMtMUFSQ0hcXHMwKS1saW51eFxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTU4Cittc2dpZCAicGxlYXNlIHVzZSB0aGUgZm9sbG93aW5nOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjE2MgorIywgbm8td3JhcAorbXNnaWQgIiIKKyJcXCZcXHMtMURFQl9CVUlMRF9HTlVfVFlQRVxcczAgOj0gJChzaGVsbCBkcGtnLWFyY2hpdGVjdHVyZSAiCisiLXFERUJfQlVJTERfR05VX1RZUEUpXG4iCisiXFwmXFxzLTFERUJfSE9TVF9HTlVfVFlQRVxcczAgOj0gJChzaGVsbCBkcGtnLWFyY2hpdGVjdHVyZSAiCisiLXFERUJfSE9TVF9HTlVfVFlQRSlcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjE2NAorIywgbm8td3JhcAorbXNnaWQgIiIKKyJjb25maWd1cmUgLS1idWlsZD0kKFxccy0xREVCX0JVSUxEX0dOVV9UWVBFXFxzMCkgIgorIi0taG9zdD0kKFxccy0xREVCX0hPU1RfR05VX1RZUEVcXHMwKVxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTc0CisjLCBuby13cmFwCittc2dpZCAiIgorIkFSQ0g9XFxgZHBrZyAtLXByaW50LWFyY2hpdGVjdHVyZVxcYFxuIgorImlmZXEgKCQoXFxzLTFBUkNIXFxzMCksYWxwaGEpXG4iCisiICAuLi5cbiIKKyJlbmRpZlxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTc3Cittc2dpZCAicGxlYXNlIHVzZToiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxODAKKyMsIG5vLXdyYXAKK21zZ2lkICJcXCZcXHMtMURFQl9IT1NUX0FSQ0hcXHMwIDo9ICQoc2hlbGwgZHBrZy1hcmNoaXRlY3R1cmUgLXFERUJfSE9TVF9BUkNIKVxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTg0CisjLCBuby13cmFwCittc2dpZCAiIgorImlmZXEgKCQoXFxzLTFERUJfSE9TVF9BUkNIXFxzMCksYWxwaGEpXG4iCisiICAuLi5cbiIKKyJlbmRpZlxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTg4Cittc2dpZCAiIgorIm9yIGlmIHlvdSBvbmx5IG5lZWQgdG8gY2hlY2sgdGhlIENQVSBvciBPUyB0eXBlLCB1c2UgdGhlIERFQl9IT1NUX0FSQ0hfQ1BVICIKKyJvciBERUJfSE9TVF9BUkNIX09TIHZhcmlhYmxlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxOTMKK21zZ2lkICIiCisiSW4gZ2VuZXJhbCwgY2FsbGluZyBkcGtnIGluIHRoZSBydWxlcyBmaWxlIHRvIGdldCBhcmNoaXRlY3R1cmUgaW5mb3JtYXRpb24gIgorImlzIGRlcHJlY2F0ZWQgKHVubGVzcyB5b3Ugd2FudCB0byBwcm92aWRlIGJhY2t3YXJkIGNvbXBhdGliaWxpdHksIHNlZSAiCisiYmVsb3cpLiAgRXNwZWNpYWxseSB0aGUgLS1wcmludC1hcmNoaXRlY3R1cmUgb3B0aW9uIGlzIHVucmVsaWFibGUgc2luY2Ugd2UgIgorImhhdmUgRGViaWFuIGFyY2hpdGVjdHVyZXMgd2hpY2ggZG9uJ3QgZXF1YWwgYSBwcm9jZXNzb3IgbmFtZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTk0CisjLCBuby13cmFwCittc2dpZCAiQkFDS1dBUkQgQ09NUEFUSUJJTElUWSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjE5OAorbXNnaWQgIiIKKyJUaGUgREVCXypfQVJDSF9CSVRTIGFuZCBERUJfKl9BUkNIX0VORElBTiB2YXJpYWJsZXMgd2VyZSBpbnRyb2R1Y2VkIGluICIKKyJkcGtnLWRldiAxLjE1LjQuIFVzaW5nIHRoZW0gaW4gSTxkZWJpYW4vcnVsZXM+IHRodXMgcmVxdWlyZXMgYSAiCisiYnVpbGQtZGVwZW5kZW5jeSBvbiBkcGtnLWRldiAoRTxndD49IDEuMTUuNCkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjAzCittc2dpZCAiIgorIlRoZSBERUJfSE9TVF9BUkNIX0NQVSBhbmQgREVCX0hPU1RfQVJDSF9PUyB2YXJpYWJsZXMgd2VyZSBpbnRyb2R1Y2VkIGluICIKKyJkcGtnLWRldiAxLjEzLjIuIEJlZm9yZSB0aGlzIEk8ZGViaWFuL3J1bGVzPiBmaWxlcyB0ZW5kZWQgdG8gY2hlY2sgdGhlICIKKyJ2YWx1ZXMgb2YgdGhlIERFQl9IT1NUX0dOVV9DUFUgb3IgREVCX0hPU1RfR05VX1RZUEUgdmFyaWFibGVzIHdoaWNoIGhhdmUgIgorImJlZW4gc3ViamVjdCB0byBjaGFuZ2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjA4Cittc2dpZCAiIgorIldoZXJlIEk8ZGViaWFuL3J1bGVzPiBmaWxlcyBjaGVjayB0aGVzZSB2YXJpYWJsZXMgdG8gZGVjaWRlIGhvdyBvciB3aGF0IHRvICIKKyJjb21waWxlLCB0aGlzIHNob3VsZCBiZSB1cGRhdGVkIHRvIHVzZSB0aGUgbmV3IHZhcmlhYmxlcyBhbmQgdmFsdWVzLiAgWW91ICIKKyJtYXkgd2lzaCB0byByZXRhaW4gYmFja3dhcmRzIGNvbXBhdGliaWxpdHkgd2l0aCBvbGRlciB2ZXJzaW9uIG9mIGRwa2ctZGV2IGJ5ICIKKyJ1c2luZyB0aGUgZm9sbG93aW5nIGNvZGU6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjEyCisjLCBuby13cmFwCittc2dpZCAiIgorIkRFQl9IT1NUX0FSQ0hfQ1BVIDo9ICQoc2hlbGwgZHBrZy1hcmNoaXRlY3R1cmUgLXFERUJfSE9TVF9BUkNIX0NQVSAiCisiMkU8Z3Q+L2Rldi9udWxsKVxuIgorIkRFQl9IT1NUX0FSQ0hfT1MgOj0gJChzaGVsbCBkcGtnLWFyY2hpdGVjdHVyZSAtcURFQl9IT1NUX0FSQ0hfT1MgIgorIjJFPGd0Pi9kZXYvbnVsbClcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjIyNgorIywgbm8td3JhcAorbXNnaWQgIiIKKyIjIFRha2UgYWNjb3VudCBvZiBvbGQgZHBrZy1hcmNoaXRlY3R1cmUgb3V0cHV0LlxuIgorImlmZXEgKCQoREVCX0hPU1RfQVJDSF9DUFUpLClcbiIKKyIgIERFQl9IT1NUX0FSQ0hfQ1BVIDo9ICQoc2hlbGwgZHBrZy1hcmNoaXRlY3R1cmUgLXFERUJfSE9TVF9HTlVfQ1BVKVxuIgorIiAgaWZlcSAoJChERUJfSE9TVF9BUkNIX0NQVSkseDg2XzY0KVxuIgorIiAgICBERUJfSE9TVF9BUkNIX0NQVSA6PSBhbWQ2NFxuIgorIiAgZW5kaWZcbiIKKyJlbmRpZlxuIgorImlmZXEgKCQoREVCX0hPU1RfQVJDSF9PUyksKVxuIgorIiAgREVCX0hPU1RfQVJDSF9PUyA6PSAkKHN1YnN0IC1nbnUsLCQoc2hlbGwgZHBrZy1hcmNoaXRlY3R1cmUgIgorIi1xREVCX0hPU1RfR05VX1NZU1RFTSkpXG4iCisiICBpZmVxICgkKERFQl9IT1NUX0FSQ0hfT1MpLGdudSlcbiIKKyIgICAgREVCX0hPU1RfQVJDSF9PUyA6PSBodXJkXG4iCisiICBlbmRpZlxuIgorImVuZGlmXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyMjkKK21zZ2lkICJBbmQgc2ltaWxhcmx5IGZvciBERUJfQlVJTERfQVJDSF9DUFUgYW5kIERFQl9CVUlMRF9BUkNIX09TLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjIzMgorbXNnaWQgIiIKKyJJZiB5b3Ugc3RpbGwgd2lzaCB0byBzdXBwb3J0IHZlcnNpb25zIG9mIGRwa2ctZGV2IHRoYXQgZGlkIG5vdCBpbmNsdWRlICIKKyJCPGRwa2ctYXJjaGl0ZWN0dXJlPiwgdGhlIGZvbGxvd2luZyBkb2VzIHRoZSBqb2I6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjQyCisjLCBuby13cmFwCittc2dpZCAiIgorIlxcJlxccy0xREVCX0JVSUxEX0FSQ0hcXHMwIDo9ICQoc2hlbGwgZHBrZyAtLXByaW50LWFyY2hpdGVjdHVyZSlcbiIKKyJcXCZcXHMtMURFQl9CVUlMRF9HTlVfQ1BVXFxzMCA6PSAkKHBhdHN1YnN0ICIKKyJodXJkLSUsJSwkKFxccy0xREVCX0JVSUxEX0FSQ0hcXHMwKSlcbiIKKyJpZmVxICgkKGZpbHRlci1vdXQgaHVyZC0lLCQoXFxzLTFERUJfQlVJTERfQVJDSFxcczApKSwpXG4iCisiICBcXHMtMURFQl9CVUlMRF9HTlVfU1lTVEVNXFxzMCA6PSBnbnVcbiIKKyJlbHNlXG4iCisiICBcXHMtMURFQl9CVUlMRF9HTlVfU1lTVEVNXFxzMCA6PSBsaW51eC1nbnVcbiIKKyJlbmRpZlxuIgorIkRFQl9CVUlMRF9HTlVfVFlQRT0kKFxccy0xREVCX0JVSUxEX0dOVV9DUFVcXHMwKS0kKFxccy0xREVCX0JVSUxEX0dOVV9TWVNURU1cXHMwKVxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjQ3CisjLCBuby13cmFwCittc2dpZCAiIgorIlxcJlxccy0xREVCX0hPU1RfQVJDSFxcczAgOj0gJChcXHMtMURFQl9CVUlMRF9BUkNIXFxzMClcbiIKKyJcXCZcXHMtMURFQl9IT1NUX0dOVV9DUFVcXHMwIDo9ICQoXFxzLTFERUJfQlVJTERfR05VX0NQVVxcczApXG4iCisiXFwmXFxzLTFERUJfSE9TVF9HTlVfU1lTVEVNXFxzMCA6PSAkKFxccy0xREVCX0JVSUxEX0dOVV9TWVNURU1cXHMwKVxuIgorIlxcJlxccy0xREVCX0hPU1RfR05VX1RZUEVcXHMwIDo9ICQoXFxzLTFERUJfQlVJTERfR05VX1RZUEVcXHMwKVxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjUxCittc2dpZCAiIgorIlB1dCBhIHN1YnNldCBvZiB0aGVzZSBsaW5lcyBhdCB0aGUgdG9wIG9mIHlvdXIgZGViaWFuL3J1bGVzIGZpbGU7IHRoZXNlICIKKyJkZWZhdWx0IHZhbHVlcyB3aWxsIGJlIG92ZXJ3cml0dGVuIGlmIGRwa2ctYXJjaGl0ZWN0dXJlIGlzIHVzZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjU4Cittc2dpZCAiIgorIllvdSBkb24ndCBuZWVkIHRoZSBmdWxsIHNldC4gQ2hvb3NlIGEgY29uc2lzdGVudCBzZXQgd2hpY2ggY29udGFpbnMgdGhlICIKKyJ2YWx1ZXMgeW91IHVzZSBpbiB0aGUgcnVsZXMgZmlsZS4gRm9yIGV4YW1wbGUsIGlmIHlvdSBvbmx5IG5lZWQgdGhlIGhvc3QgIgorIkRlYmlhbiBhcmNoaXRlY3R1cmUsIGBERUJfSE9TVF9BUkNIPVxcYGRwa2cgLS1wcmludC1hcmNoaXRlY3R1cmVcXGAnIGlzICIKKyJzdWZmaWNpZW50ICh0aGlzIGlzIGluZGVlZCB0aGUgRGViaWFuIGFyY2hpdGVjdHVyZSBvZiB0aGUgYnVpbGQgbWFjaGluZSwgYnV0ICIKKyJyZW1lbWJlciB0aGF0IHdlIGFyZSBvbmx5IHRyeWluZyB0byBiZSBiYWNrd2FyZCBjb21wYXRpYmxlIHdpdGggbmF0aXZlICIKKyJjb21waWxhdGlvbikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjYxCittc2dpZCAiIgorIlRoZSBCPC1lPiBhbmQgQjwtaT4gb3B0aW9ucyB3ZXJlIG9ubHkgaW50cm9kdWNlZCBpbiByZWxhdGl2ZWx5IHJlY2VudCAiCisidmVyc2lvbnMgb2YgQjxkcGtnLWFyY2hpdGVjdHVyZT4gKHNpbmNlIGRwa2cgMS4xMy4xMykuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjY1Cittc2dpZCAiIgorIkI8ZHBrZy1idWlsZHBhY2thZ2U+IGFjY2VwdHMgdGhlIEI8LWE+IG9wdGlvbiBhbmQgcGFzc2VzIGl0IHRvICIKKyJCPGRwa2ctYXJjaGl0ZWN0dXJlPi4gT3RoZXIgZXhhbXBsZXM6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjY3Cittc2dpZCAiQ0M9aTM4Ni1nbnUtZ2NjIGRwa2ctYXJjaGl0ZWN0dXJlIC1jIGRlYmlhbi9ydWxlcyBidWlsZCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI2OQorbXNnaWQgImV2YWwgXFxgZHBrZy1hcmNoaXRlY3R1cmUgLXVcXGAiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyNzIKK21zZ2lkICIiCisiQ2hlY2sgaWYgYW4gYXJjaGl0ZWN0dXJlIGlzIGVxdWFsIHRvIHRoZSBjdXJyZW50IGFyY2hpdGVjdHVyZSBvciBhIGdpdmVuICIKKyJvbmU6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6Mjc0Cittc2dpZCAiZHBrZy1hcmNoaXRlY3R1cmUgLWVsaW51eC1hbHBoYSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI3NgorbXNnaWQgImRwa2ctYXJjaGl0ZWN0dXJlIC1hbWlwcyAtZWxpbnV4LW1pcHMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyNzkKK21zZ2lkICIiCisiQ2hlY2sgaWYgdGhlIGN1cnJlbnQgYXJjaGl0ZWN0dXJlIG9yIGFuIGFyY2hpdGVjdHVyZSBwcm92aWRlZCB3aXRoIC1hIGFyZSAiCisiTGludXggc3lzdGVtczoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyODEKK21zZ2lkICJkcGtnLWFyY2hpdGVjdHVyZSAtaWxpbnV4LWFueSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI4MworbXNnaWQgImRwa2ctYXJjaGl0ZWN0dXJlIC1haTM4NiAtaWxpbnV4LWFueSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI4OAorbXNnaWQgIiIKKyJBbGwgdGhlc2UgZmlsZXMgaGF2ZSB0byBiZSBwcmVzZW50IGZvciBCPGRwa2ctYXJjaGl0ZWN0dXJlPiB0byB3b3JrLiBUaGVpciAiCisibG9jYXRpb24gY2FuIGJlIG92ZXJyaWRkZW4gYXQgcnVudGltZSB3aXRoIHRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZSAiCisiQjxEUEtHX0RBVEFESVI+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyODgKKyMsIG5vLXdyYXAKK21zZ2lkICJJPC91c3Ivc2hhcmUvZHBrZy9jcHV0YWJsZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyOTEKK21zZ2lkICJUYWJsZSBvZiBrbm93biBDUFUgbmFtZXMgYW5kIG1hcHBpbmcgdG8gdGhlaXIgR05VIG5hbWUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI5MQorIywgbm8td3JhcAorbXNnaWQgIkk8L3Vzci9zaGFyZS9kcGtnL29zdGFibGU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6Mjk0Cittc2dpZCAiVGFibGUgb2Yga25vd24gb3BlcmF0aW5nIHN5c3RlbSBuYW1lcyBhbmQgbWFwcGluZyB0byB0aGVpciBHTlUgbmFtZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6Mjk0CisjLCBuby13cmFwCittc2dpZCAiSTwvdXNyL3NoYXJlL2Rwa2cvdHJpcGxldHRhYmxlPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI5OAorbXNnaWQgIk1hcHBpbmcgYmV0d2VlbiBEZWJpYW4gYXJjaGl0ZWN0dXJlIHRyaXBsZXRzIGFuZCBEZWJpYW4gYXJjaGl0ZWN0dXJlIG5hbWVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjMwMgorbXNnaWQgIkI8ZHBrZy1idWlsZHBhY2thZ2U+KDEpLCBCPGRwa2ctY3Jvc3M+KDEpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjMwNworbXNnaWQgIiIKKyJCPGRwa2ctYXJjaGl0ZWN0dXJlPiBhbmQgdGhpcyBtYW4gcGFnZSB3ZXJlIGluaXRpYWxseSB3cml0dGVuIGJ5IE1hcmN1cyAiCisiQnJpbmttYW5uIEU8bHQ+YnJpbmttZEBkZWJpYW4ub3JnRTxndD4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLmNmZy41OjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLmNmZyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy5jZmcuNToxCisjLCBuby13cmFwCittc2dpZCAiMjAwOS0wOS0wNSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLmNmZy41OjQKK21zZ2lkICJkcGtnLmNmZyAtIGRwa2cgY29uZmlndXJhdGlvbiBmaWxlIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuY2ZnLjU6MTEKK21zZ2lkICIiCisiVGhpcyBmaWxlIGNvbnRhaW5zIGRlZmF1bHQgb3B0aW9ucyBmb3IgZHBrZy4gRWFjaCBsaW5lIGNvbnRhaW5zIGEgc2luZ2xlICIKKyJvcHRpb24gd2hpY2ggaXMgZXhhY3RseSB0aGUgc2FtZSBhcyBhIG5vcm1hbCBjb21tYW5kIGxpbmUgb3B0aW9uIGZvciBkcGtnICIKKyJleGNlcHQgZm9yIHRoZSBsZWFkaW5nIGRhc2hlcyB3aGljaCBhcmUgbm90IHVzZWQgaGVyZS4gUXVvdGVzIHN1cnJvdW5kaW5nICIKKyJvcHRpb24gdmFsdWVzIGFyZSBzdHJpcHBlZC4gQ29tbWVudHMgYXJlIGFsbG93ZWQgYnkgc3RhcnRpbmcgYSBsaW5lIHdpdGggYSAiCisiaGFzaCBzaWduIChcIkI8Iz5cIikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuY2ZnLjU6MTQKK21zZ2lkICJJPC9ldGMvZHBrZy9kcGtnLmNmZy5kL1swLTlhLXpBLVpfLV0qPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLmNmZy41OjE4Cittc2dpZCAiSTx+Ly5kcGtnLmNmZz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy5jZmcuNToyNCBkcGtnLWRpdmVydC44OjEzNCBkcGtnLXF1ZXJ5LjE6MjIyIGRwa2ctc3RhdG92ZXJyaWRlLjg6ODYKK21zZ2lkICJCPGRwa2c+KDEpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1idWlsZGZsYWdzLjE6MQorIywgbm8td3JhcAorbXNnaWQgImRwa2ctYnVpbGRmbGFncyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1idWlsZGZsYWdzLjE6MQorIywgbm8td3JhcAorbXNnaWQgIjIwMTEtMDktMTMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6NAorbXNnaWQgImRwa2ctYnVpbGRmbGFncyAtIHJldHVybnMgYnVpbGQgZmxhZ3MgdG8gdXNlIGR1cmluZyBwYWNrYWdlIGJ1aWxkIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjgKK21zZ2lkICJCPGRwa2ctYnVpbGRmbGFncz4gW0k8b3B0aW9uPi4uLl0gW0k8Y29tbWFuZD5dIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEyCittc2dpZCAiIgorIkI8ZHBrZy1idWlsZGZsYWdzPiBpcyBhIHRvb2wgdG8gcmV0cmlldmUgY29tcGlsYXRpb24gZmxhZ3MgdG8gdXNlIGR1cmluZyAiCisiYnVpbGQgb2YgRGViaWFuIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNQorbXNnaWQgIiIKKyJUaGUgZGVmYXVsdCBmbGFncyBhcmUgZGVmaW5lZCBieSB0aGUgdmVuZG9yIGJ1dCB0aGV5IGNhbiBiZSAiCisiZXh0ZW5kZWQvb3ZlcnJpZGVuIGluIHNldmVyYWwgd2F5czoiCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE1CisjLCBuby13cmFwCittc2dpZCAiMS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTcKK21zZ2lkICJzeXN0ZW0td2lkZSB3aXRoIEI8L2V0Yy9kcGtnL2J1aWxkZmxhZ3MuY29uZj47IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNworIywgbm8td3JhcAorbXNnaWQgIjIuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjIwCittc2dpZCAiIgorImZvciB0aGUgY3VycmVudCB1c2VyIHdpdGggQjwkWERHX0NPTkZJR19IT01FL2Rwa2cvYnVpbGRmbGFncy5jb25mPiB3aGVyZSAiCisiQjwkWERHX0NPTkZJR19IT01FPiBkZWZhdWx0cyB0byBCPCRIT01FLy5jb25maWc+OyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjAKKyMsIG5vLXdyYXAKK21zZ2lkICIzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyMworbXNnaWQgIiIKKyJ0ZW1wb3JhcmlseSBieSB0aGUgdXNlciB3aXRoIGVudmlyb25tZW50IHZhcmlhYmxlcyAoc2VlIHNlY3Rpb24gIgorIkI8RU5WSVJPTk1FTlQ+KTsiCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjIzCisjLCBuby13cmFwCittc2dpZCAiNC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjYKK21zZ2lkICIiCisiZHluYW1pY2FsbHkgYnkgdGhlIHBhY2thZ2UgbWFpbnRhaW5lciB3aXRoIGVudmlyb25tZW50IHZhcmlhYmxlcyBzZXQgdmlhICIKKyJCPGRlYmlhbi9ydWxlcz4gKHNlZSBzZWN0aW9uIEI8RU5WSVJPTk1FTlQ+KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjgKK21zZ2lkICJUaGUgY29uZmlndXJhdGlvbiBmaWxlcyBjYW4gY29udGFpbiB0d28gdHlwZXMgb2YgZGlyZWN0aXZlczoiCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjI4CisjLCBuby13cmFwCittc2dpZCAiQjxTRVQ+STwgZmxhZyB2YWx1ZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MzEKK21zZ2lkICJPdmVycmlkZSB0aGUgZmxhZyBuYW1lZCBJPGZsYWc+IHRvIGhhdmUgdGhlIHZhbHVlIEk8dmFsdWU+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MzEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPFNUUklQPkk8IGZsYWcgdmFsdWU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjM0Cittc2dpZCAiU3RyaXAgZnJvbSB0aGUgZmxhZyBuYW1lZCBJPGZsYWc+IGFsbCB0aGUgYnVpbGQgZmxhZ3MgbGlzdGVkIGluIEk8dmFsdWU+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MzQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPEFQUEVORD5JPCBmbGFnIHZhbHVlPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTozOAorbXNnaWQgIiIKKyJFeHRlbmQgdGhlIGZsYWcgbmFtZWQgSTxmbGFnPiBieSBhcHBlbmRpbmcgdGhlIG9wdGlvbnMgZ2l2ZW4gaW4gSTx2YWx1ZT4uICBBICIKKyJzcGFjZSBpcyBwcmVwZW5kZWQgdG8gdGhlIGFwcGVuZGVkIHZhbHVlIGlmIHRoZSBmbGFnJ3MgY3VycmVudCB2YWx1ZSBpcyAiCisibm9uLWVtcHR5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MzgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPFBSRVBFTkQ+STwgZmxhZyB2YWx1ZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6NDIKK21zZ2lkICIiCisiRXh0ZW5kIHRoZSBmbGFnIG5hbWVkIEk8ZmxhZz4gYnkgcHJlcGVuZGluZyB0aGUgb3B0aW9ucyBnaXZlbiBpbiBJPHZhbHVlPi4gICIKKyJBIHNwYWNlIGlzIGFwcGVuZGVkIHRvIHRoZSBwcmVwZW5kZWQgdmFsdWUgaWYgdGhlIGZsYWcncyBjdXJyZW50IHZhbHVlIGlzICIKKyJub24tZW1wdHkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjQ1Cittc2dpZCAiIgorIlRoZSBjb25maWd1cmF0aW9uIGZpbGVzIGNhbiBjb250YWluIGNvbW1lbnRzIG9uIGxpbmVzIHN0YXJ0aW5nIHdpdGggYSBoYXNoICIKKyIoIykuIEVtcHR5IGxpbmVzIGFyZSBhbHNvIGlnbm9yZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo0NgorIywgbm8td3JhcAorbXNnaWQgIkI8LS1kdW1wPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo1MQorbXNnaWQgIiIKKyJQcmludCB0byBzdGFuZGFyZCBvdXRwdXQgYWxsIGNvbXBpbGF0aW9uIGZsYWdzIGFuZCB0aGVpciB2YWx1ZXMuIEl0IHByaW50cyAiCisib25lIGZsYWcgcGVyIGxpbmUgc2VwYXJhdGVkIGZyb20gaXRzIHZhbHVlIGJ5IGFuIGVxdWFsIHNpZ24gIgorIihcIkk8ZmxhZz49STx2YWx1ZT5cIikuIFRoaXMgaXMgdGhlIGRlZmF1bHQgYWN0aW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6NTEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tbGlzdD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6NTYKK21zZ2lkICIiCisiUHJpbnQgdGhlIGxpc3Qgb2YgZmxhZ3Mgc3VwcG9ydGVkIGJ5IHRoZSBjdXJyZW50IHZlbmRvciAob25lIHBlciBsaW5lKS4gU2VlICIKKyJ0aGUgQjxTVVBQT1JURUQgRkxBR1M+IHNlY3Rpb24gZm9yIG1vcmUgaW5mb3JtYXRpb24gYWJvdXQgdGhlbS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjU2CisjLCBuby13cmFwCittc2dpZCAiQjwtLWV4cG9ydD0+STxmb3JtYXQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjY2Cittc2dpZCAiIgorIlByaW50IHRvIHN0YW5kYXJkIG91dHB1dCBzaGVsbCAoaWYgSTxmb3JtYXQ+IGlzIEI8c2g+KSBvciBtYWtlIChpZiBJPGZvcm1hdD4gIgorImlzIEI8bWFrZT4pIGNvbW1hbmRzIHRoYXQgY2FuIGJlIHVzZWQgdG8gZXhwb3J0IGFsbCB0aGUgY29tcGlsYXRpb24gZmxhZ3MgaW4gIgorInRoZSBlbnZpcm9ubWVudC4gSWYgSTxmb3JtYXQ+IGlzIEI8Y29uZmlndXJlPiB0aGVuIHRoZSBvdXRwdXQgY2FuIGJlIHVzZWQgb24gIgorImEgQjwuL2NvbmZpZ3VyZT4gY29tbWFuZC1saW5lLiBJZiB0aGUgSTxmb3JtYXQ+IHZhbHVlIGlzIG5vdCBnaXZlbiwgQjxzaD4gaXMgIgorImFzc3VtZWQuIE9ubHkgY29tcGlsYXRpb24gZmxhZ3Mgc3RhcnRpbmcgd2l0aCBhbiB1cHBlciBjYXNlIGNoYXJhY3RlciBhcmUgIgorImluY2x1ZGVkLCBvdGhlcnMgYXJlIGFzc3VtZWQgdG8gbm90IGJlIHN1aXRhYmxlIGZvciB0aGUgZW52aXJvbm1lbnQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo2NgorIywgbm8td3JhcAorbXNnaWQgIkI8LS1nZXQ+STwgZmxhZz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6NzAKK21zZ2lkICIiCisiUHJpbnQgdGhlIHZhbHVlIG9mIHRoZSBmbGFnIG9uIHN0YW5kYXJkIG91dHB1dC4gRXhpdHMgd2l0aCAwIGlmIHRoZSBmbGFnIGlzICIKKyJrbm93biBvdGhlcndpc2UgZXhpdHMgd2l0aCAxLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6NzAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tb3JpZ2luPkk8IGZsYWc+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjc1Cittc2dpZCAiIgorIlByaW50IHRoZSBvcmlnaW4gb2YgdGhlIHZhbHVlIHRoYXQgaXMgcmV0dXJuZWQgYnkgQjwtLWdldD4uIEV4aXRzIHdpdGggMCBpZiAiCisidGhlIGZsYWcgaXMga25vd24gb3RoZXJ3aXNlIGV4aXRzIHdpdGggMS4gVGhlIG9yaWdpbiBjYW4gYmUgb25lIG9mIHRoZSAiCisiZm9sbG93aW5nIHZhbHVlczoiCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjc2CisjLCBuby13cmFwCittc2dpZCAiQjx2ZW5kb3I+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjc5Cittc2dpZCAidGhlIG9yaWdpbmFsIGZsYWcgc2V0IGJ5IHRoZSB2ZW5kb3IgaXMgcmV0dXJuZWQ7IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo3OQorIywgbm8td3JhcAorbXNnaWQgIkI8c3lzdGVtPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo4MgorbXNnaWQgInRoZSBmbGFnIGlzIHNldC9tb2RpZmllZCBieSBhIHN5c3RlbS13aWRlIGNvbmZpZ3VyYXRpb247IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo4MgorIywgbm8td3JhcAorbXNnaWQgIkI8dXNlcj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6ODUKK21zZ2lkICJ0aGUgZmxhZyBpcyBzZXQvbW9kaWZpZWQgYnkgYSB1c2VyLXNwZWNpZmljIGNvbmZpZ3VyYXRpb247IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo4NQorIywgbm8td3JhcAorbXNnaWQgIkI8ZW52PiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo4OAorbXNnaWQgInRoZSBmbGFnIGlzIHNldC9tb2RpZmllZCBieSBhbiBlbnZpcm9ubWVudC1zcGVjaWZpYyBjb25maWd1cmF0aW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1idWlsZGZsYWdzLjE6OTYKKyMsIG5vLXdyYXAKK21zZ2lkICJTVVBQT1JURUQgRkxBR1MiCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjk3CisjLCBuby13cmFwCittc2dpZCAiQjxDRkxBR1M+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEwMworbXNnaWQgIiIKKyJPcHRpb25zIGZvciB0aGUgQyBjb21waWxlci4gVGhlIGRlZmF1bHQgdmFsdWUgc2V0IGJ5IHRoZSB2ZW5kb3IgaW5jbHVkZXMgIgorIkk8LWc+IGFuZCB0aGUgZGVmYXVsdCBvcHRpbWl6YXRpb24gbGV2ZWwgKEk8LU8yPiB1c3VhbGx5LCBvciBJPC1PMD4gaWYgdGhlICIKKyJCPERFQl9CVUlMRF9PUFRJT05TPiBlbnZpcm9ubWVudCB2YXJpYWJsZSBkZWZpbmVzIEk8bm9vcHQ+KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEwMworIywgbm8td3JhcAorbXNnaWQgIkI8Q1BQRkxBR1M+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEwNgorbXNnaWQgIk9wdGlvbnMgZm9yIHRoZSBDIHByZXByb2Nlc3Nvci4gRGVmYXVsdCB2YWx1ZTogZW1wdHkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMDYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPENYWEZMQUdTPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMDkKK21zZ2lkICJPcHRpb25zIGZvciB0aGUgQysrIGNvbXBpbGVyLiBTYW1lIGFzIEI8Q0ZMQUdTPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEwOQorIywgbm8td3JhcAorbXNnaWQgIkI8RkZMQUdTPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMTIKK21zZ2lkICJPcHRpb25zIGZvciB0aGUgRm9ydHJhbiBjb21waWxlci4gU2FtZSBhcyBCPENGTEFHUz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMTIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPExERkxBR1M+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEyMAorbXNnaWQgIiIKKyJPcHRpb25zIHBhc3NlZCB0byB0aGUgY29tcGlsZXIgd2hlbiBsaW5raW5nIGV4ZWN1dGFibGVzIG9yIHNoYXJlZCBvYmplY3RzICIKKyIoaWYgdGhlIGxpbmtlciBpcyBjYWxsZWQgZGlyZWN0bHksIHRoZW4gQjwtV2w+IGFuZCBCPCw+IGhhdmUgdG8gYmUgc3RyaXBwZWQgIgorImZyb20gdGhlc2Ugb3B0aW9ucykuIERlZmF1bHQgdmFsdWU6IGVtcHR5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTIyCisjLCBuby13cmFwCittc2dpZCAiQjwvZXRjL2Rwa2cvYnVpbGRmbGFncy5jb25mPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMjUKK21zZ2lkICJTeXN0ZW0gd2lkZSBjb25maWd1cmF0aW9uIGZpbGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMjUKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiQjwkWERHX0NPTkZJR19IT01FL2Rwa2cvYnVpbGRmbGFncy5jb25mPiBvciAiCisiQjwkSE9NRS8uY29uZmlnL2Rwa2cvYnVpbGRmbGFncy5jb25mPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMjgKK21zZ2lkICJVc2VyIGNvbmZpZ3VyYXRpb24gZmlsZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTM1Cittc2dpZCAiIgorIlRoZXJlIGFyZSAyIHNldHMgb2YgZW52aXJvbm1lbnQgdmFyaWFibGVzIGRvaW5nIHRoZSBzYW1lIG9wZXJhdGlvbnMsIHRoZSAiCisiZmlyc3Qgb25lIChERUJfSTxmbGFnPl9JPG9wPikgc2hvdWxkIG5ldmVyIGJlIHVzZWQgd2l0aGluICIKKyJCPGRlYmlhbi9ydWxlcz4uIEl0J3MgbWVhbnQgZm9yIGFueSB1c2VyIHRoYXQgd2FudHMgdG8gcmVidWlsZCB0aGUgc291cmNlICIKKyJwYWNrYWdlIHdpdGggZGlmZmVyZW50IGJ1aWxkIGZsYWdzLiBUaGUgc2Vjb25kIHNldCAoREVCX0k8ZmxhZz5fTUFJTlRfSTxvcD4pICIKKyJzaG91bGQgb25seSBiZSB1c2VkIGluIEI8ZGViaWFuL3J1bGVzPiBieSBwYWNrYWdlIG1haW50YWluZXJzIHRvIGNoYW5nZSB0aGUgIgorInJlc3VsdGluZyBidWlsZCBmbGFncy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEzNQorIywgbm8td3JhcAorbXNnaWQgIkI8REVCXz5JPGZsYWc+QjxfU0VUPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUQorIzogZHBrZy1idWlsZGZsYWdzLjE6MTM3CisjLCBuby13cmFwCittc2dpZCAiQjxERUJfPkk8ZmxhZz5CPF9NQUlOVF9TRVQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE0MQorbXNnaWQgIlRoaXMgdmFyaWFibGUgY2FuIGJlIHVzZWQgdG8gZm9yY2UgdGhlIHZhbHVlIHJldHVybmVkIGZvciB0aGUgZ2l2ZW4gSTxmbGFnPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE0MQorIywgbm8td3JhcAorbXNnaWQgIkI8REVCXz5JPGZsYWc+QjxfU1RSSVA+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRRCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNDMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPERFQl8+STxmbGFnPkI8X01BSU5UX1NUUklQPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNDgKK21zZ2lkICIiCisiVGhpcyB2YXJpYWJsZSBjYW4gYmUgdXNlZCB0byBwcm92aWRlIGEgc3BhY2Ugc2VwYXJhdGVkIGxpc3Qgb2Ygb3B0aW9ucyB0aGF0ICIKKyJ3aWxsIGJlIHN0cmlwcGVkIGZyb20gdGhlIHNldCBvZiBmbGFncyByZXR1cm5lZCBmb3IgdGhlIGdpdmVuIEk8ZmxhZz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNDgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPERFQl8+STxmbGFnPkI8X0FQUEVORD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFEKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE1MAorIywgbm8td3JhcAorbXNnaWQgIkI8REVCXz5JPGZsYWc+QjxfTUFJTlRfQVBQRU5EPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNTQKK21zZ2lkICIiCisiVGhpcyB2YXJpYWJsZSBjYW4gYmUgdXNlZCB0byBhcHBlbmQgc3VwcGxlbWVudGFyeSBvcHRpb25zIHRvIHRoZSB2YWx1ZSAiCisicmV0dXJuZWQgZm9yIHRoZSBnaXZlbiBJPGZsYWc+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTU0CisjLCBuby13cmFwCittc2dpZCAiQjxERUJfPkk8ZmxhZz5CPF9QUkVQRU5EPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUQorIzogZHBrZy1idWlsZGZsYWdzLjE6MTU2CisjLCBuby13cmFwCittc2dpZCAiQjxERUJfPkk8ZmxhZz5CPF9NQUlOVF9QUkVQRU5EPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNjAKK21zZ2lkICIiCisiVGhpcyB2YXJpYWJsZSBjYW4gYmUgdXNlZCB0byBwcmVwZW5kIHN1cHBsZW1lbnRhcnkgb3B0aW9ucyB0byB0aGUgdmFsdWUgIgorInJldHVybmVkIGZvciB0aGUgZ2l2ZW4gSTxmbGFnPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE2MAorIywgbm8td3JhcAorbXNnaWQgIkI8REVCX0JVSUxEX01BSU5UX09QVElPTlM+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE2NQorbXNnaWQgIiIKKyJUaGlzIHZhcmlhYmxlIGNhbiBiZSB1c2VkIHRvIGRpc2FibGUvZW5hYmxlIHZhcmlvdXMgaGFyZGVuaW5nIGJ1aWxkIGZsYWdzICIKKyJ0aHJvdWdoIHRoZSBCPGhhcmRlbmluZz4gb3B0aW9uLiBTZWUgdGhlIEI8SEFSREVOSU5HPiBzZWN0aW9uIGZvciBkZXRhaWxzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTY2CisjLCBuby13cmFwCittc2dpZCAiSEFSREVOSU5HIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE3MQorbXNnaWQgIiIKKyJTZXZlcmFsIGNvbXBpbGUtdGltZSBvcHRpb25zIChkZXRhaWxlZCBiZWxvdykgY2FuIGJlIHVzZWQgdG8gaGVscCBoYXJkZW4gYSAiCisicmVzdWx0aW5nIGJpbmFyeSBhZ2FpbnN0IG1lbW9yeSBjb3JydXB0aW9uIGF0dGFja3MsIG9yIHByb3ZpZGUgYWRkaXRpb25hbCAiCisid2FybmluZyBtZXNzYWdlcyBkdXJpbmcgY29tcGlsYXRpb24uIEV4Y2VwdCBhcyBub3RlZCBiZWxvdywgdGhlc2UgYXJlICIKKyJlbmFibGVkIGJ5IGRlZmF1bHQgZm9yIGFyY2hpdGVjdHVyZXMgdGhhdCBzdXBwb3J0IHRoZW0uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE3NworbXNnaWQgIiIKKyJFYWNoIGhhcmRlbmluZyBmZWF0dXJlIGNhbiBiZSBlbmFibGVkIGFuZCBkaXNhYmxlZCBpbiB0aGUgIgorIkI8REVCX0JVSUxEX01BSU5UX09QVElPTlM+IGVudmlyb25tZW50IHZhcmlhYmxlJ3MgQjxoYXJkZW5pbmc+IHZhbHVlIHdpdGggIgorInRoZSBcIitcIiBhbmQgXCItXCIgbW9kaWZpZXIuIEZvciBleGFtcGxlLCB0byBlbmFibGUgdGhlIFwicGllXCIgZmVhdHVyZSBhbmQgIgorImRpc2FibGUgdGhlIFwiZm9ydGlmeVwiIGZlYXR1cmUgeW91IGNhbiBkbyB0aGlzIGluIEI8ZGViaWFuL3J1bGVzPjoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTc5CisjLCBuby13cmFwCittc2dpZCAiICBleHBvcnQgREVCX0JVSUxEX01BSU5UX09QVElPTlM9XCJoYXJkZW5pbmc9K3BpZSwtZm9ydGlmeVwiXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTgzCittc2dpZCAiIgorIlRoZSBzcGVjaWFsIGZlYXR1cmUgQjxhbGw+IGNhbiBiZSB1c2VkIHRvIGVuYWJsZSBvciBkaXNhYmxlIGFsbCBoYXJkZW5pbmcgIgorImZlYXR1cmVzIGF0IHRoZSBzYW1lIHRpbWUuIFRodXMgZGlzYWJsaW5nIGV2ZXJ5dGhpbmcgYW5kIGVuYWJsaW5nIG9ubHkgIgorIlwiZm9ybWF0XCIgYW5kIFwiZm9ydGlmeVwiIGNhbiBiZSBhY2hpZXZlZCB3aXRoOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxODUKKyMsIG5vLXdyYXAKK21zZ2lkICIgIGV4cG9ydCBERUJfQlVJTERfTUFJTlRfT1BUSU9OUz1cImhhcmRlbmluZz0tYWxsLCtmb3JtYXQsK2ZvcnRpZnlcIlxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxODYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGZvcm1hdD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTk4Cittc2dpZCAiIgorIlRoaXMgc2V0dGluZyAoZW5hYmxlZCBieSBkZWZhdWx0KSBhZGRzIEI8LVdmb3JtYXQgLVdmb3JtYXQtc2VjdXJpdHkgIgorIi1XZXJyb3I9Zm9ybWF0LXNlY3VyaXR5PiB0byBCPENGTEFHUz4gYW5kIEI8Q1hYRkxBR1M+LiBUaGlzIHdpbGwgd2FybiBhYm91dCAiCisiaW1wcm9wZXIgZm9ybWF0IHN0cmluZyB1c2VzLCBhbmQgd2lsbCBmYWlsIHdoZW4gZm9ybWF0IGZ1bmN0aW9ucyBhcmUgdXNlZCBpbiAiCisiYSB3YXkgdGhhdCB0aGF0IHJlcHJlc2VudCBwb3NzaWJsZSBzZWN1cml0eSBwcm9ibGVtcy4gQXQgcHJlc2VudCwgdGhpcyB3YXJucyAiCisiYWJvdXQgY2FsbHMgdG8gQjxwcmludGY+IGFuZCBCPHNjYW5mPiBmdW5jdGlvbnMgd2hlcmUgdGhlIGZvcm1hdCBzdHJpbmcgaXMgIgorIm5vdCBhIHN0cmluZyBsaXRlcmFsIGFuZCB0aGVyZSBhcmUgbm8gZm9ybWF0IGFyZ3VtZW50cywgYXMgaW4gIgorIkI8cHJpbnRmKGZvbyk7PiBpbnN0ZWFkIG9mIEI8cHJpbnRmKFwiJXNcIiwgZm9vKTs+IFRoaXMgbWF5IGJlIGEgc2VjdXJpdHkgIgorImhvbGUgaWYgdGhlIGZvcm1hdCBzdHJpbmcgY2FtZSBmcm9tIHVudHJ1c3RlZCBpbnB1dCBhbmQgY29udGFpbnMgXCIlblwiLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTk5CisjLCBuby13cmFwCittc2dpZCAiQjxmb3J0aWZ5PiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyMTAKK21zZ2lkICIiCisiVGhpcyBzZXR0aW5nIChlbmFibGVkIGJ5IGRlZmF1bHQpIGFkZHMgQjwtRF9GT1JUSUZZX1NPVVJDRT0yPiB0byBCPENGTEFHUz4gIgorImFuZCBCPENYWEZMQUdTPi4gRHVyaW5nIGNvZGUgZ2VuZXJhdGlvbiB0aGUgY29tcGlsZXIga25vd3MgYSBncmVhdCBkZWFsIG9mICIKKyJpbmZvcm1hdGlvbiBhYm91dCBidWZmZXIgc2l6ZXMgKHdoZXJlIHBvc3NpYmxlKSwgYW5kIGF0dGVtcHRzIHRvIHJlcGxhY2UgIgorImluc2VjdXJlIHVubGltaXRlZCBsZW5ndGggYnVmZmVyIGZ1bmN0aW9uIGNhbGxzIHdpdGggbGVuZ3RoLWxpbWl0ZWQgIgorIm9uZXMuIFRoaXMgaXMgZXNwZWNpYWxseSB1c2VmdWwgZm9yIG9sZCwgY3J1ZnR5IGNvZGUuICBBZGRpdGlvbmFsbHksIGZvcm1hdCAiCisic3RyaW5ncyBpbiB3cml0YWJsZSBtZW1vcnkgdGhhdCBjb250YWluICclbicgYXJlIGJsb2NrZWQuIElmIGFuIGFwcGxpY2F0aW9uICIKKyJkZXBlbmRzIG9uIHN1Y2ggYSBmb3JtYXQgc3RyaW5nLCBpdCB3aWxsIG5lZWQgdG8gYmUgd29ya2VkIGFyb3VuZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjEzCittc2dpZCAiIgorIk5vdGUgdGhhdCBmb3IgdGhpcyBvcHRpb24gdG8gaGF2ZSBhbnkgZWZmZWN0LCB0aGUgc291cmNlIG11c3QgYWxzbyBiZSAiCisiY29tcGlsZWQgd2l0aCBCPC1PMT4gb3IgaGlnaGVyLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjEzCisjLCBuby13cmFwCittc2dpZCAiQjxzdGFja3Byb3RlY3Rvcj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjIyCittc2dpZCAiIgorIlRoaXMgc2V0dGluZyAoZW5hYmxlZCBieSBkZWZhdWx0KSBhZGRzIEI8LWZzdGFjay1wcm90ZWN0b3IgIgorIi0tcGFyYW09c3NwLWJ1ZmZlci1zaXplPTQ+IHRvIEI8Q0ZMQUdTPiBhbmQgQjxDWFhGTEFHUz4uIFRoaXMgYWRkcyBzYWZldHkgIgorImNoZWNrcyBhZ2FpbnN0IHN0YWNrIG92ZXJ3cml0ZXMuIFRoaXMgcmVuZGVycyBtYW55IHBvdGVudGlhbCBjb2RlIGluamVjdGlvbiAiCisiYXR0YWNrcyBpbnRvIGFib3J0aW5nIHNpdHVhdGlvbnMuIEluIHRoZSBiZXN0IGNhc2UgdGhpcyB0dXJucyBjb2RlIGluamVjdGlvbiAiCisidnVsbmVyYWJpbGl0aWVzIGludG8gZGVuaWFsIG9mIHNlcnZpY2Ugb3IgaW50byBub24taXNzdWVzIChkZXBlbmRpbmcgb24gdGhlICIKKyJhcHBsaWNhdGlvbikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjIyNgorbXNnaWQgIiIKKyJUaGlzIGZlYXR1cmUgcmVxdWlyZXMgbGlua2luZyBhZ2FpbnN0IGdsaWJjIChvciBhbm90aGVyIHByb3ZpZGVyIG9mICIKKyJCPF9fc3RhY2tfY2hrX2ZhaWw+KSwgc28gbmVlZHMgdG8gYmUgZGlzYWJsZWQgd2hlbiBidWlsZGluZyB3aXRoICIKKyJCPC1ub3N0ZGxpYj4gb3IgQjwtZmZyZWVzdGFuZGluZz4gb3Igc2ltaWxhci4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjIyNworIywgbm8td3JhcAorbXNnaWQgIkI8cmVscm8+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjIzNQorbXNnaWQgIiIKKyJUaGlzIHNldHRpbmcgKGVuYWJsZWQgYnkgZGVmYXVsdCkgYWRkcyBCPC1XbCwteixyZWxybz4gdG8gQjxMREZMQUdTPi4gICIKKyJEdXJpbmcgcHJvZ3JhbSBsb2FkLCBzZXZlcmFsIEVMRiBtZW1vcnkgc2VjdGlvbnMgbmVlZCB0byBiZSB3cml0dGVuIHRvIGJ5ICIKKyJ0aGUgbGlua2VyLiBUaGlzIGZsYWdzIHRoZSBsb2FkZXIgdG8gdHVybiB0aGVzZSBzZWN0aW9ucyByZWFkLW9ubHkgYmVmb3JlICIKKyJ0dXJuaW5nIG92ZXIgY29udHJvbCB0byB0aGUgcHJvZ3JhbS4gTW9zdCBub3RhYmx5IHRoaXMgcHJldmVudHMgR09UICIKKyJvdmVyd3JpdGUgYXR0YWNrcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjIzNgorIywgbm8td3JhcAorbXNnaWQgIkI8YmluZG5vdz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjQzCittc2dpZCAiIgorIlRoaXMgc2V0dGluZyAoZGlzYWJsZWQgYnkgZGVmYXVsdCkgYWRkcyBCPC1XbCwteixub3c+IHRvIEI8TERGTEFHUz4uIER1cmluZyAiCisicHJvZ3JhbSBsb2FkLCBhbGwgZHluYW1pYyBzeW1ib2xzIGFyZSByZXNvbHZlZCwgYWxsb3dpbmcgZm9yIHRoZSBlbnRpcmUgUExUICIKKyJ0byBiZSBtYXJrZWQgcmVhZC1vbmx5IChkdWUgdG8gQjxyZWxybz4gYWJvdmUpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjQ0CisjLCBuby13cmFwCittc2dpZCAiQjxwaWU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjI1NgorbXNnaWQgIiIKKyJUaGlzIHNldHRpbmcgKGRpc2FibGVkIGJ5IGRlZmF1bHQpIGFkZHMgQjwtZlBJRT4gdG8gQjxDRkxBR1M+IGFuZCAiCisiQjxDWFhGTEFHUz4sIGFuZCBCPC1mUElFIC1waWU+IHRvIEI8TERGTEFHUz4uIFBvc2l0aW9uIEluZGVwZW5kZW50ICIKKyJFeGVjdXRhYmxlIGFyZSBuZWVkZWQgdG8gdGFrZSBhZHZhbnRhZ2Ugb2YgQWRkcmVzcyBTcGFjZSBMYXlvdXQgIgorIlJhbmRvbWl6YXRpb24sIHN1cHBvcnRlZCBieSBzb21lIGtlcm5lbCB2ZXJzaW9ucy4gV2hpbGUgQVNMUiBjYW4gYWxyZWFkeSBiZSAiCisiZW5mb3JjZWQgZm9yIGRhdGEgYXJlYXMgaW4gdGhlIHN0YWNrIGFuZCBoZWFwIChicmsgYW5kIG1tYXApLCB0aGUgY29kZSBhcmVhcyAiCisibXVzdCBiZSBjb21waWxlZCBhcyBwb3NpdGlvbi1pbmRlcGVuZGVudC4gU2hhcmVkIGxpYnJhcmllcyBhbHJlYWR5IGRvIHRoaXMgIgorIigtZlBJQyksIHNvIHRoZXkgZ2FpbiBBU0xSIGF1dG9tYXRpY2FsbHksIGJ1dCBiaW5hcnkgLnRleHQgcmVnaW9ucyBuZWVkIHRvICIKKyJiZSBidWlsZCBQSUUgdG8gZ2FpbiBBU0xSLiBXaGVuIHRoaXMgaGFwcGVucywgUk9QIChSZXR1cm4gT3JpZW50ZWQgIgorIlByb2dyYW1taW5nKSBhdHRhY2tzIGFyZSBtdWNoIGhhcmRlciBzaW5jZSB0aGVyZSBhcmUgbm8gc3RhdGljIGxvY2F0aW9ucyB0byAiCisiYm91bmNlIG9mZiBvZiBkdXJpbmcgYSBtZW1vcnkgY29ycnVwdGlvbiBhdHRhY2suIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjI1OQorbXNnaWQgIiIKKyJUaGlzIGlzIG5vdCBjb21wYXRpYmxlIHdpdGggQjwtZlBJQz4gc28gY2FyZSBtdXN0IGJlIHRha2VuIHdoZW4gYnVpbGRpbmcgIgorInNoYXJlZCBvYmplY3RzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyNjUKK21zZ2lkICIiCisiQWRkaXRpb25hbGx5LCBzaW5jZSBQSUUgaXMgaW1wbGVtZW50ZWQgdmlhIGEgZ2VuZXJhbCByZWdpc3Rlciwgc29tZSAiCisiYXJjaGl0ZWN0dXJlcyAobW9zdCBub3RhYmx5IGkzODYpIGNhbiBzZWUgcGVyZm9ybWFuY2UgbG9zc2VzIG9mIHVwIHRvIDE1JSBpbiAiCisidmVyeSB0ZXh0LXNlZ21lbnQtaGVhdnkgYXBwbGljYXRpb24gd29ya2xvYWRzOyBtb3N0IHdvcmtsb2FkcyBzZWUgbGVzcyB0aGFuICIKKyIxJS4gQXJjaGl0ZWN0dXJlcyB3aXRoIG1vcmUgZ2VuZXJhbCByZWdpc3RlcnMgKGUuZy4gYW1kNjQpICBkbyBub3Qgc2VlIGFzICIKKyJoaWdoIGEgd29yc3QtY2FzZSBwZW5hbHR5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyNjgKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAxMC0yMDExIFJhcGhhXFxbOmVdbCBIZXJ0em9nIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjI3MAorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDExIEtlZXMgQ29vayIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxCisjLCBuby13cmFwCittc2dpZCAiZHBrZy1idWlsZHBhY2thZ2UiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo0Cittc2dpZCAiZHBrZy1idWlsZHBhY2thZ2UgLSBidWlsZCBiaW5hcnkgb3Igc291cmNlIHBhY2thZ2VzIGZyb20gc291cmNlcyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjgKK21zZ2lkICJCPGRwa2ctYnVpbGRwYWNrYWdlPiBbSTxvcHRpb24+Li4uXSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEzCittc2dpZCAiIgorIkI8ZHBrZy1idWlsZHBhY2thZ2U+IGlzIGEgcHJvZ3JhbSB0aGF0IGF1dG9tYXRlcyB0aGUgcHJvY2VzcyBvZiBidWlsZGluZyBhICIKKyJEZWJpYW4gcGFja2FnZS4gSXQgY29uc2lzdHMgb2YgdGhlIGZvbGxvd2luZyBzdGVwczoiCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPDEuPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE3Cittc2dpZCAiIgorIkl0IHByZXBhcmVzIHRoZSBidWlsZCBlbnZpcm9ubWVudCBieSBzZXR0aW5nIHZhcmlvdXMgZW52aXJvbm1lbnQgdmFyaWFibGVzICIKKyIoc2VlIEI8RU5WSVJPTk1FTlQ+KSBhbmQgY2FsbHMgQjxkcGtnLXNvdXJjZSAtLWJlZm9yZS1idWlsZD4gKHVubGVzcyBCPC1UPiAiCisib3IgQjwtLXRhcmdldD4gaGFzIGJlZW4gdXNlZCkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE3CisjLCBuby13cmFwCittc2dpZCAiQjwyLj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMAorbXNnaWQgIiIKKyJJdCBjaGVja3MgdGhhdCB0aGUgYnVpbGQtZGVwZW5kZW5jaWVzIGFuZCBidWlsZC1jb25mbGljdHMgYXJlIHNhdGlzZmllZCAiCisiKHVubGVzcyBCPC1kPiBpcyBzcGVjaWZpZWQpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMAorIywgbm8td3JhcAorbXNnaWQgIkI8My4+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjUKK21zZ2lkICIiCisiSWYgYSBzcGVjaWZpYyB0YXJnZXQgaGFzIGJlZW4gc2VsZWN0ZWQgd2l0aCB0aGUgQjwtVD4gb3IgQjwtLXRhcmdldD4gb3B0aW9uLCAiCisiaXQgY2FsbHMgdGhhdCB0YXJnZXQgYW5kIHN0b3BzIGhlcmUuIE90aGVyd2lzZSBpdCBjYWxscyBCPGZha2Vyb290ICIKKyJkZWJpYW4vcnVsZXMgY2xlYW4+IHRvIGNsZWFuIHRoZSBidWlsZC10cmVlICh1bmxlc3MgQjwtbmM+IGlzIHNwZWNpZmllZCkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjI1CisjLCBuby13cmFwCittc2dpZCAiQjw0Lj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyOQorbXNnaWQgIiIKKyJJdCBjYWxscyBCPGRwa2ctc291cmNlIC1iPiB0byBnZW5lcmF0ZSB0aGUgc291cmNlIHBhY2thZ2UgKHVubGVzcyBhICIKKyJiaW5hcnktb25seSBidWlsZCBoYXMgYmVlbiByZXF1ZXN0ZWQgd2l0aCBCPC1iPiwgQjwtQj4gb3IgQjwtQT4pLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyOQorIywgbm8td3JhcAorbXNnaWQgIkI8NS4+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MzYKK21zZ2lkICIiCisiSXQgY2FsbHMgQjxkZWJpYW4vcnVsZXM+IEI8YnVpbGQ+IGZvbGxvd2VkIGJ5IEI8ZmFrZXJvb3QgZGViaWFuL3J1bGVzPiAiCisiSTxiaW5hcnktdGFyZ2V0PiAodW5sZXNzIGEgc291cmNlLW9ubHkgYnVpbGQgaGFzIGJlZW4gcmVxdWVzdGVkIHdpdGggIgorIkI8LVM+KS4gTm90ZSB0aGF0IEk8YmluYXJ5LXRhcmdldD4gaXMgZWl0aGVyIEI8YmluYXJ5PiAoZGVmYXVsdCBjYXNlLCBvciBpZiAiCisiQjwtYj4gaXMgc3BlY2lmaWVkKSAgb3IgQjxiaW5hcnktYXJjaD4gKGlmIEI8LUI+IGlzIHNwZWNpZmllZCkgb3IgIgorIkI8YmluYXJ5LWluZGVwPiAoaWYgQjwtQT4gaXMgc3BlY2lmaWVkKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MzYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPDYuPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjM5Cittc2dpZCAiIgorIkl0IGNhbGxzIEI8Z3BnPiB0byBzaWduIHRoZSBCPC5kc2M+IGZpbGUgKGlmIGFueSwgdW5sZXNzIEI8LXVzPiBpcyAiCisic3BlY2lmaWVkKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MzkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPDcuPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjQzCittc2dpZCAiIgorIkl0IGNhbGxzIEI8ZHBrZy1nZW5jaGFuZ2VzPiB0byBnZW5lcmF0ZSBhIEI8LmNoYW5nZXM+IGZpbGUuICBNYW55ICIKKyJCPGRwa2ctYnVpbGRwYWNrYWdlPiBvcHRpb25zIGFyZSBmb3J3YXJkZWQgdG8gQjxkcGtnLWdlbmNoYW5nZXM+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo0MworIywgbm8td3JhcAorbXNnaWQgIkI8OC4+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NDYKK21zZ2lkICJJdCBjYWxscyBCPGdwZz4gdG8gc2lnbiB0aGUgQjwuY2hhbmdlcz4gZmlsZSAodW5sZXNzIEI8LXVjPiBpcyBzcGVjaWZpZWQpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo0NgorIywgbm8td3JhcAorbXNnaWQgIkI8OS4+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NDkKK21zZ2lkICIiCisiSWYgQjwtdGM+IGlzIHNwZWNpZmllZCwgaXQgd2lsbCBjYWxsIEI8ZmFrZXJvb3QgZGViaWFuL3J1bGVzIGNsZWFuPiAiCisiYWdhaW4uIEZpbmFsbHkgaXQgY2FsbHMgQjxkcGtnLXNvdXJjZSAtLWFmdGVyLWJ1aWxkPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NTEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1iPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjU1Cittc2dpZCAiIgorIlNwZWNpZmllcyBhIGJpbmFyeS1vbmx5IGJ1aWxkLCBubyBzb3VyY2UgZmlsZXMgYXJlIHRvIGJlIGJ1aWx0IGFuZC9vciAiCisiZGlzdHJpYnV0ZWQuIFBhc3NlZCB0byBCPGRwa2ctZ2VuY2hhbmdlcz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjU1IGRwa2ctY2hlY2tidWlsZGRlcHMuMToyMworIywgbm8td3JhcAorbXNnaWQgIkI8LUI+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NTkKK21zZ2lkICIiCisiU3BlY2lmaWVzIGEgYmluYXJ5LW9ubHkgYnVpbGQsIGxpbWl0ZWQgdG8gYXJjaGl0ZWN0dXJlIGRlcGVuZGVudCBwYWNrYWdlcy4gICIKKyJQYXNzZWQgdG8gQjxkcGtnLWdlbmNoYW5nZXM+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo1OQorIywgbm8td3JhcAorbXNnaWQgIkI8LUE+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NjMKK21zZ2lkICIiCisiU3BlY2lmaWVzIGEgYmluYXJ5LW9ubHkgYnVpbGQsIGxpbWl0ZWQgdG8gYXJjaGl0ZWN0dXJlIGluZGVwZW5kZW50ICIKKyJwYWNrYWdlcy4gUGFzc2VkIHRvIEI8ZHBrZy1nZW5jaGFuZ2VzPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NjMgZHBrZy1nZW5jaGFuZ2VzLjE6MjcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1TPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjY3Cittc2dpZCAiIgorIlNwZWNpZmllcyBhIHNvdXJjZS1vbmx5IGJ1aWxkLCBubyBiaW5hcnkgcGFja2FnZXMgbmVlZCB0byBiZSBtYWRlLiAgUGFzc2VkICIKKyJ0byBCPGRwa2ctZ2VuY2hhbmdlcz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjY3CisjLCBuby13cmFwCittc2dpZCAiQjwtRj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo3MQorbXNnaWQgIiIKKyJTcGVjaWZpZXMgYSBub3JtYWwgZnVsbCBidWlsZCwgYmluYXJ5IGFuZCBzb3VyY2UgcGFja2FnZXMgd2lsbCBiZSBidWlsdC4gICIKKyJUaGlzIGlzIHRoZSBzYW1lIGFzIHRoZSBkZWZhdWx0IGNhc2Ugd2hlbiBubyBidWlsZCBvcHRpb24gaXMgc3BlY2lmaWVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjczCittc2dpZCAiQjwtLXRhcmdldD0+STx0YXJnZXQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NzUKK21zZ2lkICJCPC0tdGFyZ2V0ID5JPHRhcmdldD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo3NworbXNnaWQgIkI8LVQ+STx0YXJnZXQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6ODMKK21zZ2lkICIiCisiQ2FsbHMgQjxkZWJpYW4vcnVsZXM+IEk8dGFyZ2V0PiBhZnRlciBoYXZpbmcgc2V0dXAgdGhlIGJ1aWxkIGVudmlyb25tZW50IGFuZCAiCisic3RvcHMgdGhlIHBhY2thZ2UgYnVpbGQgcHJvY2VzcyBoZXJlLiBJZiBCPC0tYXMtcm9vdD4gaXMgYWxzbyBnaXZlbiwgdGhlbiAiCisidGhlIGNvbW1hbmQgaXMgZXhlY3V0ZWQgYXMgcm9vdCAoc2VlIEI8LXI+KS4gTm90ZSB0aGF0IG9mZmljaWFsIHRhcmdldHMgdGhhdCAiCisiYXJlIHJlcXVpcmVkIHRvIGJlIHJ1biBhcyByb290IGJ5IHRoZSBEZWJpYW4gcG9saWN5IGRvIG5vdCBuZWVkIHRoaXMgb3B0aW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo4NAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1hcy1yb290PiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjg4Cittc2dpZCAiIgorIk9ubHkgbWVhbmluZ2Z1bCB0b2dldGhlciB3aXRoIEI8LS10YXJnZXQ+LiBSZXF1aXJlcyB0aGF0IHRoZSB0YXJnZXQgYmUgcnVuICIKKyJ3aXRoIHJvb3QgcmlnaHRzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo5MCBkcGtnLWdlbmNoYW5nZXMuMTozNgorIywgbm8td3JhcAorbXNnaWQgIkI8LXNpPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo5MiBkcGtnLWdlbmNoYW5nZXMuMTo0MgorIywgbm8td3JhcAorbXNnaWQgIkI8LXNhPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo5NCBkcGtnLWdlbmNoYW5nZXMuMTo0NQorIywgbm8td3JhcAorbXNnaWQgIkI8LXNkPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo5NiBkcGtnLWdlbmNoYW5nZXMuMTo0OSBkcGtnLWdlbmNvbnRyb2wuMTozOCBkcGtnLWdlbnN5bWJvbHMuMTozNzcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC12Pkk8dmVyc2lvbj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6OTggZHBrZy1nZW5jaGFuZ2VzLjE6NTQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1DPkk8Y2hhbmdlc2Rlc2NyaXB0aW9uPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxMDAgZHBrZy1nZW5jaGFuZ2VzLjE6NjAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1tPkk8bWFpbnRhaW5lcmFkZHJlc3M+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEwMiBkcGtnLWdlbmNoYW5nZXMuMTo2NgorIywgbm8td3JhcAorbXNnaWQgIkI8LWU+STxtYWludGFpbmVyYWRkcmVzcz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxMDQKK21zZ2lkICJQYXNzZWQgdW5jaGFuZ2VkIHRvIEI8ZHBrZy1nZW5jaGFuZ2VzPi4gU2VlIGl0cyBtYW51YWwgcGFnZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTA1CisjLCBuby13cmFwCittc2dpZCAiQjwtYT5JPGFyY2hpdGVjdHVyZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxMTAKK21zZ2lkICIiCisiU3BlY2lmeSB0aGUgRGViaWFuIGFyY2hpdGVjdHVyZSB3ZSBidWlsZCBmb3IuIFRoZSBhcmNoaXRlY3R1cmUgb2YgdGhlICIKKyJtYWNoaW5lIHdlIGJ1aWxkIG9uIGlzIGRldGVybWluZWQgYXV0b21hdGljYWxseSwgYW5kIGlzIGFsc28gdGhlIGRlZmF1bHQgZm9yICIKKyJ0aGUgaG9zdCBtYWNoaW5lLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjExNQorbXNnaWQgIiIKKyJTcGVjaWZ5IHRoZSBHTlUgc3lzdGVtIHR5cGUgd2UgYnVpbGQgZm9yLiBJdCBjYW4gYmUgdXNlZCBpbiBwbGFjZSBvZiAtYSBvciAiCisiYXMgYSBjb21wbGVtZW50IHRvIG92ZXJyaWRlIHRoZSBkZWZhdWx0IEdOVSBzeXN0ZW0gdHlwZSBvZiB0aGUgdGFyZ2V0IERlYmlhbiAiCisiYXJjaGl0ZWN0dXJlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxMTUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1qPkk8am9icz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxMjYKK21zZ2lkICIiCisiTnVtYmVyIG9mIGpvYnMgYWxsb3dlZCB0byBiZSBydW4gc2ltdWx0YW5lb3VzbHksIGVxdWl2YWxlbnQgdG8gdGhlICIKKyJCPG1ha2U+KDEpICBvcHRpb24gb2YgdGhlIHNhbWUgbmFtZS4gV2lsbCBhZGQgaXRzZWxmIHRvIHRoZSBNQUtFRkxBR1MgIgorImVudmlyb25tZW50IHZhcmlhYmxlLCB3aGljaCBzaG91bGQgY2F1c2UgYWxsIHN1YnNlcXVlbnQgbWFrZSBpbnZvY2F0aW9ucyB0byAiCisiaW5oZXJpdCB0aGUgb3B0aW9uLiBBbHNvIGFkZHMgQjxwYXJhbGxlbD0+STxqb2JzPiB0byB0aGUgREVCX0JVSUxEX09QVElPTlMgIgorImVudmlyb25tZW50IHZhcmlhYmxlIHdoaWNoIGFsbG93cyBkZWJpYW4vcnVsZXMgZmlsZXMgdG8gdXNlIHRoaXMgaW5mb3JtYXRpb24gIgorImZvciB0aGVpciBvd24gcHVycG9zZXMuICBUaGUgQjxwYXJhbGxlbD0+STxqb2JzPiBpbiBERUJfQlVJTERfT1BUSU9OUyAiCisiZW52aXJvbm1lbnQgdmFyaWFibGUgd2lsbCBvdmVycmlkZSB0aGUgQjwtaj4gdmFsdWUgaWYgdGhpcyBvcHRpb24gaXMgZ2l2ZW4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEyNgorIywgbm8td3JhcAorbXNnaWQgIkI8LUQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTMwCittc2dpZCAiIgorIkNoZWNrIGJ1aWxkIGRlcGVuZGVuY2llcyBhbmQgY29uZmxpY3RzOyBhYm9ydCBpZiB1bnNhdGlzZmllZC4gVGhpcyBpcyB0aGUgIgorImRlZmF1bHQgYmVoYXZpb3IuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEzMCBkcGtnLWdlbnN5bWJvbHMuMTo0MzIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1kPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEzMworbXNnaWQgIkRvIG5vdCBjaGVjayBidWlsZCBkZXBlbmRlbmNpZXMgYW5kIGNvbmZsaWN0cy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTMzCisjLCBuby13cmFwCittc2dpZCAiQjwtbmM+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTM3Cittc2dpZCAiIgorIkRvIG5vdCBjbGVhbiB0aGUgc291cmNlIHRyZWUgKGltcGxpZXMgQjwtYj4gaWYgbm90aGluZyBlbHNlIGhhcyBiZWVuICIKKyJzZWxlY3RlZCBhbW9uZyBCPC1CPiwgQjwtQT4gb3IgQjwtUz4pLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxMzcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC10Yz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxNDMKK21zZ2lkICIiCisiQ2xlYW4gdGhlIHNvdXJjZSB0cmVlICh1c2luZyBJPGdhaW4tcm9vdC1jb21tYW5kPiBCPGRlYmlhbi9ydWxlcyBjbGVhbj4pICAiCisiYWZ0ZXIgdGhlIHBhY2thZ2UgaGFzIGJlZW4gYnVpbHQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE0MworIywgbm8td3JhcAorbXNnaWQgIkI8LXI+STxnYWluLXJvb3QtY29tbWFuZD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxNjcKK21zZ2lkICIiCisiV2hlbiBCPGRwa2ctYnVpbGRwYWNrYWdlPiBuZWVkcyB0byBleGVjdXRlIHBhcnQgb2YgdGhlIGJ1aWxkIHByb2Nlc3MgYXMgIgorInJvb3QsIGl0IHByZWZpeGVzIHRoZSBjb21tYW5kIGl0IGV4ZWN1dGVzIHdpdGggSTxnYWluLXJvb3QtY29tbWFuZD4gaWYgb25lICIKKyJoYXMgYmVlbiBzcGVjaWZpZWQuIE90aGVyd2lzZSwgaWYgbm9uZSBoYXMgYmVlbiBzcGVjaWZpZWQsIEI8ZmFrZXJvb3Q+IHdpbGwgIgorImJlIHVzZWQgYnkgZGVmYXVsdCwgaWYgdGhlIGNvbW1hbmQgaXMgcHJlc2VudC4gIEk8Z2Fpbi1yb290LWNvbW1hbmQ+IHNob3VsZCAiCisic3RhcnQgd2l0aCB0aGUgbmFtZSBvZiBhIHByb2dyYW0gb24gdGhlIEI8UEFUSD4gYW5kIHdpbGwgZ2V0IGFzIGFyZ3VtZW50cyAiCisidGhlIG5hbWUgb2YgdGhlIHJlYWwgY29tbWFuZCB0byBydW4gYW5kIHRoZSBhcmd1bWVudHMgaXQgc2hvdWxkIHRha2UuICAiCisiSTxnYWluLXJvb3QtY29tbWFuZD4gY2FuIGluY2x1ZGUgcGFyYW1ldGVycyAodGhleSBtdXN0IGJlIHNwYWNlLXNlcGFyYXRlZCkgIgorImJ1dCBubyBzaGVsbCBtZXRhY2hhcmFjdGVycy4gIEk8Z2Fpbi1yb290LWNvbW1hbmQ+IG1pZ2h0IHR5cGljYWxseSBiZSAiCisiQjxmYWtlcm9vdD4sIEI8c3Vkbz4sIEI8c3VwZXI+IG9yIEI8cmVhbGx5Pi4gIEI8c3U+IGlzIG5vdCBzdWl0YWJsZSwgc2luY2UgIgorIml0IGNhbiBvbmx5IGludm9rZSB0aGUgdXNlcidzIHNoZWxsIHdpdGggQjwtYz4gaW5zdGVhZCBvZiBwYXNzaW5nIGFyZ3VtZW50cyAiCisiaW5kaXZpZHVhbGx5IHRvIHRoZSBjb21tYW5kIHRvIGJlIHJ1bi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTY3CisjLCBuby13cmFwCittc2dpZCAiQjwtUj5JPHJ1bGVzLWZpbGU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTc4Cittc2dpZCAiIgorIkJ1aWxkaW5nIGEgRGViaWFuIHBhY2thZ2UgdXN1YWxseSBpbnZvbHZlcyBpbnZva2luZyBCPGRlYmlhbi9ydWxlcz4gYXMgYSAiCisiY29tbWFuZCB3aXRoIHNldmVyYWwgc3RhbmRhcmQgcGFyYW1ldGVycy4gV2l0aCB0aGlzIG9wdGlvbiBpdCdzIHBvc3NpYmxlIHRvICIKKyJ1c2UgYW5vdGhlciBwcm9ncmFtIGludm9jYXRpb24gdG8gYnVpbGQgdGhlIHBhY2thZ2UgKGl0IGNhbiBpbmNsdWRlIHNwYWNlICIKKyJzZXBhcmF0ZWQgcGFyYW1ldGVycykuICBBbHRlcm5hdGl2ZWx5IGl0IGNhbiBiZSB1c2VkIHRvIGV4ZWN1dGUgdGhlIHN0YW5kYXJkICIKKyJydWxlcyBmaWxlIHdpdGggYW5vdGhlciBtYWtlIHByb2dyYW0gKGZvciBleGFtcGxlIGJ5IHVzaW5nICIKKyJCPC91c3IvbG9jYWwvYmluL21ha2UgLWYgZGViaWFuL3J1bGVzPiBhcyBJPHJ1bGVzLWZpbGU+KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTc4CisjLCBuby13cmFwCittc2dpZCAiQjwtcD5JPHNpZ24tY29tbWFuZD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxODgKK21zZ2lkICIiCisiV2hlbiBCPGRwa2ctYnVpbGRwYWNrYWdlPiBuZWVkcyB0byBleGVjdXRlIEdQRyBvciBQR1AgdG8gc2lnbiBhIHNvdXJjZSAiCisiY29udHJvbCAoQjwuZHNjPikgZmlsZSBvciBhIEI8LmNoYW5nZXM+IGZpbGUgaXQgd2lsbCBydW4gSTxzaWduLWNvbW1hbmQ+ICIKKyIoc2VhcmNoaW5nIHRoZSBCPFBBVEg+IGlmIG5lY2Vzc2FyeSkgaW5zdGVhZCBvZiBCPGdwZz4uIEk8c2lnbi1jb21tYW5kPiB3aWxsICIKKyJnZXQgYWxsIHRoZSBhcmd1bWVudHMgdGhhdCBCPHBncD4gd291bGQgaGF2ZSBnb3R0ZW4uIElmIEk8c2lnbi1jb21tYW5kPiAiCisidGFrZXMgaXRzIGFyZ3VtZW50cyBpbiBHUEcgcmF0aGVyIHRoYW4gUEdQIHN0eWxlLCB5b3Ugc2hvdWxkIGdpdmUgdGhlICIKKyJCPC1zZ3BnPiBvcHRpb24uIEk8c2lnbi1jb21tYW5kPiBzaG91bGQgbm90IGNvbnRhaW4gc3BhY2VzIG9yIGFueSBvdGhlciAiCisic2hlbGwgbWV0YWNoYXJhY3RlcnMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE4OAorIywgbm8td3JhcAorbXNnaWQgIkI8LWs+STxrZXktaWQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTkxCittc2dpZCAiU3BlY2lmeSBhIGtleS1JRCB0byB1c2Ugd2hlbiBzaWduaW5nIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxOTEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC11cz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxOTQKK21zZ2lkICJEbyBub3Qgc2lnbiB0aGUgc291cmNlIHBhY2thZ2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE5NAorIywgbm8td3JhcAorbXNnaWQgIkI8LXVjPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE5NworbXNnaWQgIkRvIG5vdCBzaWduIHRoZSBCPC5jaGFuZ2VzPiBmaWxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE5OQorbXNnaWQgIkI8LWk+W0k8cmVnZXhwPl0iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMDEKK21zZ2lkICJCPC1JPkk8W3BhdHRlcm5dPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIwMworbXNnaWQgIkI8LXM+W0I8bnNBa3VyS1VSPl0iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMDUKK21zZ2lkICJCPC16PiwgQjwtWj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMDgKK21zZ2lkICJQYXNzZWQgdW5jaGFuZ2VkIHRvIEI8ZHBrZy1zb3VyY2U+LiBTZWUgaXRzIG1hbnVhbCBwYWdlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMDkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tc291cmNlLW9wdGlvbj0+STxvcHQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjEyCittc2dpZCAiUGFzcyBvcHRpb24gSTxvcHQ+IHRvIEI8ZHBrZy1zb3VyY2U+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMTIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tY2hhbmdlcy1vcHRpb249Pkk8b3B0PiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIxNQorbXNnaWQgIlBhc3Mgb3B0aW9uIEk8b3B0PiB0byBCPGRwa2ctZ2VuY2hhbmdlcz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjE5Cittc2dpZCAiQjwtLWFkbWluZGlyID5JPGRpcj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMjIgZHBrZy1jaGVja2J1aWxkZGVwcy4xOjIzIGRwa2ctcXVlcnkuMToxMjIgZHBrZy1zaGxpYmRlcHMuMToyMTUgZHBrZy10cmlnZ2VyLjE6NDMKK21zZ2lkICIiCisiQ2hhbmdlIHRoZSBsb2NhdGlvbiBvZiB0aGUgQjxkcGtnPiBkYXRhYmFzZS4gVGhlIGRlZmF1bHQgbG9jYXRpb24gaXMgIgorIkk8L3Zhci9saWIvZHBrZz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIyMyBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6MzMgZHBrZy1kaXN0YWRkZmlsZS4xOjMyIGRwa2ctZGViLjE6MTcyIGRwa2ctZ2VuY2hhbmdlcy4xOjEzMSBkcGtnLWdlbmNvbnRyb2wuMToxMjEgZHBrZy1nZW5zeW1ib2xzLjE6NDQzIGRwa2ctbmFtZS4xOjU4IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTozMyBkcGtnLXF1ZXJ5LjE6MTEwIGRwa2ctc2NhbnBhY2thZ2VzLjE6OTYgZHBrZy1zaGxpYmRlcHMuMToyMTUgZHBrZy1zb3VyY2UuMTo5NiBkcGtnLXNwbGl0LjE6MTI2IGRwa2ctdHJpZ2dlci4xOjMxCisjLCBuby13cmFwCittc2dpZCAiQjwtaD4sIEI8LS1oZWxwPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIzNAorbXNnaWQgIiIKKyJFdmVuIGlmIEI8ZHBrZy1idWlsZHBhY2thZ2U+IGV4cG9ydHMgc29tZSB2YXJpYWJsZXMsIEI8ZGViaWFuL3J1bGVzPiBzaG91bGQgIgorIm5vdCByZWx5IG9uIHRoZWlyIHByZXNlbmNlIGFuZCBzaG91bGQgaW5zdGVhZCB1c2UgdGhlIHJlc3BlY3RpdmUgaW50ZXJmYWNlICIKKyJ0byByZXRyaWV2ZSB0aGUgbmVlZGVkIHZhbHVlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjM0CisjLCBuby13cmFwCittc2dpZCAiVmFyaWFibGVzIHNldCBieSBkcGtnLWFyY2hpdGVjdHVyZSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIzOAorbXNnaWQgIiIKKyJCPGRwa2ctYXJjaGl0ZWN0dXJlPiBpcyBjYWxsZWQgd2l0aCB0aGUgQjwtYT4gYW5kIEI8LXQ+IHBhcmFtZXRlcnMgIgorImZvcndhcmRlZC4gQW55IHZhcmlhYmxlIHRoYXQgaXMgb3V0cHV0IGJ5IGl0cyBCPC1zPiBvcHRpb24gaXMgaW50ZWdyYXRlZCBpbiAiCisidGhlIGJ1aWxkIGVudmlyb25tZW50LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMzgKKyMsIG5vLXdyYXAKK21zZ2lkICJDb21waWxlciBmbGFncyBhcmUgbm8gbG9uZ2VyIGV4cG9ydGVkIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjQzCittc2dpZCAiIgorIkJldHdlZW4gdmVyc2lvbnMgMS4xNC4xNyBhbmQgMS4xNi4xLCBCPGRwa2ctYnVpbGRwYWNrYWdlPiBleHBvcnRlZCBjb21waWxlciAiCisiZmxhZ3MgKEI8Q0ZMQUdTPiwgQjxDWFhGTEFHUz4sIEI8RkZMQUdTPiwgQjxDUFBGTEFHUz4gYW5kIEI8TERGTEFHUz4pIHdpdGggIgorInZhbHVlcyBhcyByZXR1cm5lZCBieSBCPGRwa2ctYnVpbGRmbGFncz4uIFRoaXMgaXMgbm8gbG9uZ2VyIHRoZSBjYXNlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjI0OAorbXNnaWQgIiIKKyJJdCBzaG91bGQgYmUgcG9zc2libGUgdG8gc3BlY2lmeSBzcGFjZXMgYW5kIHNoZWxsIG1ldGFjaGFyYWN0ZXJzIGluIGFuZCAiCisiaW5pdGlhbCBhcmd1bWVudHMgZm9yIEk8Z2Fpbi1yb290LWNvbW1hbmQ+IGFuZCBJPHNpZ24tY29tbWFuZD4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjU2Cittc2dpZCAiIgorIkI8ZHBrZy1zb3VyY2U+KDEpLCBCPGRwa2ctYXJjaGl0ZWN0dXJlPigxKSwgQjxkcGtnLWJ1aWxkZmxhZ3M+KDEpLCAiCisiQjxkcGtnLWdlbmNoYW5nZXM+KDEpLCBCPGZha2Vyb290PigxKSwgQjxncGc+KDEpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjI2NQorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDA4LTIwMTAgUmFwaGFcXFs6ZV1sIEhlcnR6b2ciCittc2dzdHIgIiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctY2hlY2tidWlsZGRlcHMuMToxCisjLCBuby13cmFwCittc2dpZCAiZHBrZy1jaGVja2J1aWxkZGVwcyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6NAorbXNnaWQgImRwa2ctY2hlY2tidWlsZGRlcHMgLSBjaGVjayBidWlsZCBkZXBlbmRlbmNpZXMgYW5kIGNvbmZsaWN0cyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6OQorbXNnaWQgIkI8ZHBrZy1jaGVja2J1aWxkZGVwcz4gW0k8b3B0aW9uPi4uLl0gW0k8Y29udHJvbC1maWxlPl0iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1jaGVja2J1aWxkZGVwcy4xOjE0Cittc2dpZCAiIgorIlRoaXMgcHJvZ3JhbSBjaGVja3MgdGhlIGluc3RhbGxlZCBwYWNrYWdlcyBpbiB0aGUgc3lzdGVtIGFnYWluc3QgdGhlIGJ1aWxkICIKKyJkZXBlbmRlbmNpZXMgYW5kIGJ1aWxkIGNvbmZsaWN0cyBsaXN0ZWQgaW4gdGhlIGNvbnRyb2wgZmlsZS4gSWYgYW55IGFyZSBub3QgIgorIm1ldCwgaXQgZGlzcGxheXMgdGhlbSBhbmQgZXhpdHMgd2l0aCBhIG5vbnplcm8gcmV0dXJuIGNvZGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctY2hlY2tidWlsZGRlcHMuMToxNworbXNnaWQgIiIKKyJCeSBkZWZhdWx0LCBCPGRlYmlhbi9jb250cm9sPiBpcyByZWFkLCBidXQgYW4gYWx0ZXJuYXRlIGNvbnRyb2wgZmlsZW5hbWUgbWF5ICIKKyJiZSBzcGVjaWZpZWQgb24gdGhlIGNvbW1hbmQgbGluZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1jaGVja2J1aWxkZGVwcy4xOjI3Cittc2dpZCAiIgorIklnbm9yZSBJPEJ1aWxkLURlcGVuZHMtSW5kZXA+IGxpbmVzLiBVc2Ugd2hlbiBubyBhcmNoLWluZGVwIHBhY2thZ2VzIHdpbGwgYmUgIgorImJ1aWx0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1jaGVja2J1aWxkZGVwcy4xOjI3CisjLCBuby13cmFwCittc2dpZCAiQjwtZCA+STxidWlsZC1kZXBlbmRzLXN0cmluZz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctY2hlY2tidWlsZGRlcHMuMToyOQorIywgbm8td3JhcAorbXNnaWQgIkI8LWMgPkk8YnVpbGQtY29uZmxpY3RzLXN0cmluZz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1jaGVja2J1aWxkZGVwcy4xOjMzCittc2dpZCAiIgorIlVzZSB0aGUgZ2l2ZW4gYnVpbGQgZGVwZW5kZW5jaWVzL2NvbmZsaWN0cyBpbnN0ZWFkIG9mIHRob3NlIGNvbnRhaW5lZCBpbiB0aGUgIgorIkk8ZGViaWFuL2NvbnRyb2w+IGZpbGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctY2hlY2tidWlsZGRlcHMuMTo0MgorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDAxIEpvZXkgSGVzcyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1kaXN0YWRkZmlsZS4xOjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLWRpc3RhZGRmaWxlIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGlzdGFkZGZpbGUuMTo0Cittc2dpZCAiZHBrZy1kaXN0YWRkZmlsZSAtIGFkZCBlbnRyaWVzIHRvIGRlYmlhbi9maWxlcyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpc3RhZGRmaWxlLjE6OAorbXNnaWQgIkI8ZHBrZy1kaXN0YWRkZmlsZT4gW0k8b3B0aW9uPi4uLl1JPCBmaWxlbmFtZSBzZWN0aW9uIHByaW9yaXR5PiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpc3RhZGRmaWxlLjE6MTMKK21zZ2lkICJCPGRwa2ctZGlzdGFkZGZpbGU+IGFkZHMgYW4gZW50cnkgZm9yIGEgbmFtZWQgZmlsZSB0byBCPGRlYmlhbi9maWxlcz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGlzdGFkZGZpbGUuMToxOAorbXNnaWQgIiIKKyJJdCB0YWtlcyB0aHJlZSBub24tb3B0aW9uIGFyZ3VtZW50cywgdGhlIGZpbGVuYW1lIGFuZCB0aGUgc2VjdGlvbiBhbmQgIgorInByaW9yaXR5IGZvciB0aGUgQjwuY2hhbmdlcz4gZmlsZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXN0YWRkZmlsZS4xOjI2Cittc2dpZCAiIgorIlRoZSBmaWxlbmFtZSBzaG91bGQgYmUgc3BlY2lmaWVkIHJlbGF0aXZlIHRvIHRoZSBkaXJlY3Rvcnkgd2hlcmUgIgorIkI8ZHBrZy1nZW5jaGFuZ2VzPiB3aWxsIGV4cGVjdCB0byBmaW5kIHRoZSBmaWxlcywgdXN1YWxseSBCPC4uPiwgcmF0aGVyIHRoYW4gIgorImJlaW5nIGEgcGF0aG5hbWUgcmVsYXRpdmUgdG8gdGhlIGN1cnJlbnQgZGlyZWN0b3J5IHdoZW4gQjxkcGtnLWRpc3RhZGRmaWxlPiAiCisiaXMgcnVuLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kaXN0YWRkZmlsZS4xOjI4IGRwa2ctZ2VuY2hhbmdlcy4xOjEwMyBkcGtnLWdlbmNvbnRyb2wuMTo2OQorIywgbm8td3JhcAorbXNnaWQgIkI8LWY+STxmaWxlc2xpc3RmaWxlPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpc3RhZGRmaWxlLjE6MzIgZHBrZy1nZW5jb250cm9sLjE6NzMKK21zZ2lkICIiCisiUmVhZCBvciB3cml0ZSB0aGUgbGlzdCBvZiBmaWxlcyB0byBiZSB1cGxvYWRlZCBoZXJlLCByYXRoZXIgdGhhbiB1c2luZyAiCisiQjxkZWJpYW4vZmlsZXM+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kaXN0YWRkZmlsZS4xOjQwIGRwa2ctZ2VuY2hhbmdlcy4xOjEzOSBkcGtnLWdlbmNvbnRyb2wuMToxMzQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGRlYmlhbi9maWxlcz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXN0YWRkZmlsZS4xOjQ2Cittc2dpZCAiIgorIlRoZSBsaXN0IG9mIGdlbmVyYXRlZCBmaWxlcyB3aGljaCBhcmUgcGFydCBvZiB0aGUgdXBsb2FkIGJlaW5nIHByZXBhcmVkLiAgIgorIkI8ZHBrZy1kaXN0YWRkZmlsZT4gY2FuIGJlIHVzZWQgdG8gYWRkIGFkZGl0aW9uYWwgZmlsZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLWRlYi4xOjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLWRlYiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjQKK21zZ2lkICJkcGtnLWRlYiAtIERlYmlhbiBwYWNrYWdlIGFyY2hpdmUgKC5kZWIpIG1hbmlwdWxhdGlvbiB0b29sIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6OAorbXNnaWQgIkI8ZHBrZy1kZWI+IFtJPG9wdGlvbj4uLi5dIEk8Y29tbWFuZD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxMgorbXNnaWQgIkI8ZHBrZy1kZWI+IHBhY2tzLCB1bnBhY2tzIGFuZCBwcm92aWRlcyBpbmZvcm1hdGlvbiBhYm91dCBEZWJpYW4gYXJjaGl2ZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTYKK21zZ2lkICJVc2UgQjxkcGtnPiB0byBpbnN0YWxsIGFuZCByZW1vdmUgcGFja2FnZXMgZnJvbSB5b3VyIHN5c3RlbS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToyNgorbXNnaWQgIiIKKyJZb3UgY2FuIGFsc28gaW52b2tlIEI8ZHBrZy1kZWI+IGJ5IGNhbGxpbmcgQjxkcGtnPiB3aXRoIHdoYXRldmVyIG9wdGlvbnMgeW91ICIKKyJ3YW50IHRvIHBhc3MgdG8gQjxkcGtnLWRlYj4uIEI8ZHBrZz4gd2lsbCBzcG90IHRoYXQgeW91IHdhbnRlZCBCPGRwa2ctZGViPiAiCisiYW5kIHJ1biBpdCBmb3IgeW91LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToyOAorIywgbm8td3JhcAorbXNnaWQgIkI8LWI+LCBCPC0tYnVpbGQ+IEk8ZGlyZWN0b3J5PiBbSTxhcmNoaXZlPnxJPGRpcmVjdG9yeT5dIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6NDAKK21zZ2lkICIiCisiQ3JlYXRlcyBhIGRlYmlhbiBhcmNoaXZlIGZyb20gdGhlIGZpbGVzeXN0ZW0gdHJlZSBzdG9yZWQgaW4gIgorIkk8ZGlyZWN0b3J5Pi4gSTxkaXJlY3Rvcnk+IG11c3QgaGF2ZSBhIEI8REVCSUFOPiBzdWJkaXJlY3RvcnksIHdoaWNoICIKKyJjb250YWlucyB0aGUgY29udHJvbCBpbmZvcm1hdGlvbiBmaWxlcyBzdWNoIGFzIHRoZSBjb250cm9sIGZpbGUgaXRzZWxmLiBUaGlzICIKKyJkaXJlY3Rvcnkgd2lsbCBJPG5vdD4gYXBwZWFyIGluIHRoZSBiaW5hcnkgcGFja2FnZSdzIGZpbGVzeXN0ZW0gYXJjaGl2ZSwgYnV0ICIKKyJpbnN0ZWFkIHRoZSBmaWxlcyBpbiBpdCB3aWxsIGJlIHB1dCBpbiB0aGUgYmluYXJ5IHBhY2thZ2UncyBjb250cm9sICIKKyJpbmZvcm1hdGlvbiBhcmVhLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjUyCittc2dpZCAiIgorIlVubGVzcyB5b3Ugc3BlY2lmeSBCPC0tbm9jaGVjaz4sIEI8ZHBrZy1kZWI+IHdpbGwgcmVhZCBCPERFQklBTi9jb250cm9sPiBhbmQgIgorInBhcnNlIGl0LiBJdCB3aWxsIGNoZWNrIGl0IGZvciBzeW50YXggZXJyb3JzIGFuZCBvdGhlciBwcm9ibGVtcywgYW5kIGRpc3BsYXkgIgorInRoZSBuYW1lIG9mIHRoZSBiaW5hcnkgcGFja2FnZSBiZWluZyBidWlsdC4gIEI8ZHBrZy1kZWI+IHdpbGwgYWxzbyBjaGVjayB0aGUgIgorInBlcm1pc3Npb25zIG9mIHRoZSBtYWludGFpbmVyIHNjcmlwdHMgYW5kIG90aGVyIGZpbGVzIGZvdW5kIGluIHRoZSBCPERFQklBTj4gIgorImNvbnRyb2wgaW5mb3JtYXRpb24gZGlyZWN0b3J5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjU5Cittc2dpZCAiIgorIklmIG5vIEk8YXJjaGl2ZT4gaXMgc3BlY2lmaWVkIHRoZW4gQjxkcGtnLWRlYj4gd2lsbCB3cml0ZSB0aGUgcGFja2FnZSBpbnRvICIKKyJ0aGUgZmlsZSBJPGRpcmVjdG9yeT5CPC5kZWI+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjYxCittc2dpZCAiSWYgdGhlIGFyY2hpdmUgdG8gYmUgY3JlYXRlZCBhbHJlYWR5IGV4aXN0cyBpdCB3aWxsIGJlIG92ZXJ3cml0dGVuLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjc3Cittc2dpZCAiIgorIklmIHRoZSBzZWNvbmQgYXJndW1lbnQgaXMgYSBkaXJlY3RvcnkgdGhlbiBCPGRwa2ctZGViPiB3aWxsIHdyaXRlIHRvIHRoZSAiCisiZmlsZSBJPHBhY2thZ2U+QjxfPkk8dmVyc2lvbj5CPF8+STxhcmNoPkI8LmRlYj4sIG9yICIKKyJJPHBhY2thZ2U+QjxfPkk8dmVyc2lvbj5CPC5kZWI+IGlmIG5vIEI8QXJjaGl0ZWN0dXJlPiBmaWVsZCBpcyBwcmVzZW50IGluICIKKyJ0aGUgcGFja2FnZSBjb250cm9sIGZpbGUuIFdoZW4gYSB0YXJnZXQgZGlyZWN0b3J5IGlzIHNwZWNpZmllZCwgcmF0aGVyIHRoYW4gIgorImEgZmlsZSwgdGhlIEI8LS1ub2NoZWNrPiBvcHRpb24gbWF5IG5vdCBiZSB1c2VkIChzaW5jZSBCPGRwa2ctZGViPiBuZWVkcyB0byAiCisicmVhZCBhbmQgcGFyc2UgdGhlIHBhY2thZ2UgY29udHJvbCBmaWxlIHRvIGRldGVybWluZSB3aGljaCBmaWxlbmFtZSB0byB1c2UpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMTo3NworIywgbm8td3JhcAorbXNnaWQgIkI8LUk+LCBCPC0taW5mbz4gSTxhcmNoaXZlPiBbSTxjb250cm9sLWZpbGUtbmFtZT4uLi5dIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6ODAKK21zZ2lkICJQcm92aWRlcyBpbmZvcm1hdGlvbiBhYm91dCBhIGJpbmFyeSBwYWNrYWdlIGFyY2hpdmUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6ODUKK21zZ2lkICIiCisiSWYgbm8gSTxjb250cm9sLWZpbGUtbmFtZT5zIGFyZSBzcGVjaWZpZWQgdGhlbiBpdCB3aWxsIHByaW50IGEgc3VtbWFyeSBvZiAiCisidGhlIGNvbnRlbnRzIG9mIHRoZSBwYWNrYWdlIGFzIHdlbGwgYXMgaXRzIGNvbnRyb2wgZmlsZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMTo5MworbXNnaWQgIiIKKyJJZiBhbnkgSTxjb250cm9sLWZpbGUtbmFtZT5zIGFyZSBzcGVjaWZpZWQgdGhlbiBCPGRwa2ctZGViPiB3aWxsIHByaW50IHRoZW0gIgorImluIHRoZSBvcmRlciB0aGV5IHdlcmUgc3BlY2lmaWVkOyBpZiBhbnkgb2YgdGhlIGNvbXBvbmVudHMgd2VyZW4ndCBwcmVzZW50ICIKKyJpdCB3aWxsIHByaW50IGFuIGVycm9yIG1lc3NhZ2UgdG8gc3RkZXJyIGFib3V0IGVhY2ggb25lIGFuZCBleGl0IHdpdGggc3RhdHVzICIKKyIyLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMTo5MworIywgbm8td3JhcAorbXNnaWQgIkI8LVc+LCBCPC0tc2hvdz4gSTxhcmNoaXZlPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjEwMAorbXNnaWQgIiIKKyJQcm92aWRlcyBpbmZvcm1hdGlvbiBhYm91dCBhIGJpbmFyeSBwYWNrYWdlIGFyY2hpdmUgaW4gdGhlIGZvcm1hdCBzcGVjaWZpZWQgIgorImJ5IHRoZSBCPC0tc2hvd2Zvcm1hdD4gYXJndW1lbnQuIFRoZSBkZWZhdWx0IGZvcm1hdCBkaXNwbGF5cyB0aGUgcGFja2FnZSdzICIKKyJuYW1lIGFuZCB2ZXJzaW9uIG9uIG9uZSBsaW5lLCBzZXBhcmF0ZWQgYnkgYSB0YWJ1bGF0b3IuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRlYi4xOjEwMAorIywgbm8td3JhcAorbXNnaWQgIkI8LWY+LCBCPC0tZmllbGQ+IEk8YXJjaGl2ZT4gW0k8Y29udHJvbC1maWVsZC1uYW1lPi4uLl0iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxMDMKK21zZ2lkICJFeHRyYWN0cyBjb250cm9sIGZpbGUgaW5mb3JtYXRpb24gZnJvbSBhIGJpbmFyeSBwYWNrYWdlIGFyY2hpdmUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTA3Cittc2dpZCAiIgorIklmIG5vIEI8Y29udHJvbC1maWxlLWZpZWxkPnMgYXJlIHNwZWNpZmllZCB0aGVuIGl0IHdpbGwgcHJpbnQgdGhlIHdob2xlICIKKyJjb250cm9sIGZpbGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTE2Cittc2dpZCAiIgorIklmIGFueSBhcmUgc3BlY2lmaWVkIHRoZW4gQjxkcGtnLWRlYj4gd2lsbCBwcmludCB0aGVpciBjb250ZW50cywgaW4gdGhlICIKKyJvcmRlciBpbiB3aGljaCB0aGV5IGFwcGVhciBpbiB0aGUgY29udHJvbCBmaWxlLiBJZiBtb3JlIHRoYW4gb25lICIKKyJCPGNvbnRyb2wtZmlsZS1maWVsZD4gaXMgc3BlY2lmaWVkIHRoZW4gQjxkcGtnLWRlYj4gd2lsbCBwcmVjZWRlIGVhY2ggd2l0aCAiCisiaXRzIGZpZWxkIG5hbWUgKGFuZCBhIGNvbG9uIGFuZCBzcGFjZSkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTE4Cittc2dpZCAiTm8gZXJyb3JzIGFyZSByZXBvcnRlZCBmb3IgZmllbGRzIHJlcXVlc3RlZCBidXQgbm90IGZvdW5kLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToxMTgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1jPiwgQjwtLWNvbnRlbnRzPiBJPGFyY2hpdmU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTI0Cittc2dpZCAiIgorIkxpc3RzIHRoZSBjb250ZW50cyBvZiB0aGUgZmlsZXN5c3RlbSB0cmVlIGFyY2hpdmUgcG9ydGlvbiBvZiB0aGUgcGFja2FnZSAiCisiYXJjaGl2ZS4gSXQgaXMgY3VycmVudGx5IHByb2R1Y2VkIGluIHRoZSBmb3JtYXQgZ2VuZXJhdGVkIGJ5IEI8dGFyPidzICIKKyJ2ZXJib3NlIGxpc3RpbmcuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRlYi4xOjEyNAorIywgbm8td3JhcAorbXNnaWQgIkI8LXg+LCBCPC0tZXh0cmFjdD4gSTxhcmNoaXZlIGRpcmVjdG9yeT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxMjgKK21zZ2lkICIiCisiRXh0cmFjdHMgdGhlIGZpbGVzeXN0ZW0gdHJlZSBmcm9tIGEgcGFja2FnZSBhcmNoaXZlIGludG8gdGhlIHNwZWNpZmllZCAiCisiZGlyZWN0b3J5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjEzNAorbXNnaWQgIiIKKyJOb3RlIHRoYXQgZXh0cmFjdGluZyBhIHBhY2thZ2UgdG8gdGhlIHJvb3QgZGlyZWN0b3J5IHdpbGwgSTxub3Q+IHJlc3VsdCBpbiBhICIKKyJjb3JyZWN0IGluc3RhbGxhdGlvbiEgVXNlIEI8ZHBrZz4gdG8gaW5zdGFsbCBwYWNrYWdlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxMzgKK21zZ2lkICIiCisiSTxkaXJlY3Rvcnk+IChidXQgbm90IGl0cyBwYXJlbnRzKSB3aWxsIGJlIGNyZWF0ZWQgaWYgbmVjZXNzYXJ5LCBhbmQgaXRzICIKKyJwZXJtaXNzaW9ucyBtb2RpZmllZCB0byBtYXRjaCB0aGUgY29udGVudHMgb2YgdGhlIHBhY2thZ2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRlYi4xOjEzOAorIywgbm8td3JhcAorbXNnaWQgIkI8LVg+LCBCPC0tdmV4dHJhY3Q+IEk8YXJjaGl2ZSBkaXJlY3Rvcnk+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTQ1Cittc2dpZCAiIgorIklzIGxpa2UgQjwtLWV4dHJhY3Q+IChCPC14PikgIHdpdGggQjwtLXZlcmJvc2U+IChCPC12PikgIHdoaWNoIHByaW50cyBhICIKKyJsaXN0aW5nIG9mIHRoZSBmaWxlcyBleHRyYWN0ZWQgYXMgaXQgZ29lcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MTQ1CisjLCBuby13cmFwCittc2dpZCAiQjwtUj4sIEI8LS1yYXctZXh0cmFjdD4gSTxhcmNoaXZlIGRpcmVjdG9yeT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxNTAKK21zZ2lkICIiCisiRXh0cmFjdHMgdGhlIGZpbGVzeXN0ZW0gdHJlZSBmcm9tIGEgcGFja2FnZSBhcmNoaXZlIGludG8gYSBzcGVjaWZpZWQgIgorImRpcmVjdG9yeSwgYW5kIHRoZSBjb250cm9sIGluZm9ybWF0aW9uIGZpbGVzIGludG8gYSBERUJJQU4gc3ViZGlyZWN0b3J5IG9mICIKKyJ0aGUgc3BlY2lmaWVkIGRpcmVjdG9yeS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxNTIgZHBrZy1kZWIuMToxNzIKK21zZ2lkICJUaGUgdGFyZ2V0IGRpcmVjdG9yeSAoYnV0IG5vdCBpdHMgcGFyZW50cykgd2lsbCBiZSBjcmVhdGVkIGlmIG5lY2Vzc2FyeS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MTUyCisjLCBuby13cmFwCittc2dpZCAiQjwtLWZzeXMtdGFyZmlsZT4gSTxhcmNoaXZlPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjE2MQorbXNnaWQgIiIKKyJFeHRyYWN0cyB0aGUgZmlsZXN5c3RlbSB0cmVlIGRhdGEgZnJvbSBhIGJpbmFyeSBwYWNrYWdlIGFuZCBzZW5kcyBpdCB0byAiCisic3RhbmRhcmQgb3V0cHV0IGluIEI8dGFyPiBmb3JtYXQuIFRvZ2V0aGVyIHdpdGggQjx0YXI+KDEpICB0aGlzIGNhbiBiZSB1c2VkICIKKyJ0byBleHRyYWN0IGEgcGFydGljdWxhciBmaWxlIGZyb20gYSBwYWNrYWdlIGFyY2hpdmUuICBUaGUgaW5wdXQgYXJjaGl2ZSB3aWxsICIKKyJhbHdheXMgYmUgcHJvY2Vzc2VkIHNlcXVlbnRpYWxseS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MTYxCisjLCBuby13cmFwCittc2dpZCAiQjwtZT4sIEI8LS1jb250cm9sPiBJPGFyY2hpdmU+IFtJPGRpcmVjdG9yeT5dIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTY1Cittc2dpZCAiIgorIkV4dHJhY3RzIHRoZSBjb250cm9sIGluZm9ybWF0aW9uIGZpbGVzIGZyb20gYSBwYWNrYWdlIGFyY2hpdmUgaW50byB0aGUgIgorInNwZWNpZmllZCBkaXJlY3RvcnkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTY5Cittc2dpZCAiIgorIklmIG5vIGRpcmVjdG9yeSBpcyBzcGVjaWZpZWQgdGhlbiBhIHN1YmRpcmVjdG9yeSBCPERFQklBTj4gaW4gdGhlIGN1cnJlbnQgIgorImRpcmVjdG9yeSBpcyB1c2VkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToxODAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tc2hvd2Zvcm1hdD0+STxmb3JtYXQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTg1IGRwa2ctcXVlcnkuMToxMjcKK21zZ2lkICIiCisiVGhpcyBvcHRpb24gaXMgdXNlZCB0byBzcGVjaWZ5IHRoZSBmb3JtYXQgb2YgdGhlIG91dHB1dCBCPC0tc2hvdz4gd2lsbCAiCisicHJvZHVjZS4gVGhlIGZvcm1hdCBpcyBhIHN0cmluZyB0aGF0IHdpbGwgYmUgb3V0cHV0IGZvciBlYWNoIHBhY2thZ2UgbGlzdGVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjE5NAorbXNnaWQgIiIKKyJUaGUgc3RyaW5nIG1heSByZWZlcmVuY2UgYW55IHN0YXR1cyBmaWVsZCB1c2luZyB0aGUgXCIke0k8ZmllbGQtbmFtZT59XCIgIgorImZvcm0sIGEgbGlzdCBvZiB0aGUgdmFsaWQgZmllbGRzIGNhbiBiZSBlYXNpbHkgcHJvZHVjZWQgdXNpbmcgQjwtST4gb24gdGhlICIKKyJzYW1lIHBhY2thZ2UuIEEgY29tcGxldGUgZXhwbGFuYXRpb24gb2YgdGhlIGZvcm1hdHRpbmcgb3B0aW9ucyAoaW5jbHVkaW5nICIKKyJlc2NhcGUgc2VxdWVuY2VzIGFuZCBmaWVsZCB0YWJiaW5nKSBjYW4gYmUgZm91bmQgaW4gdGhlIGV4cGxhbmF0aW9uIG9mIHRoZSAiCisiQjwtLXNob3dmb3JtYXQ+IG9wdGlvbiBpbiBCPGRwa2ctcXVlcnk+KDEpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjE5NgorbXNnaWQgIlRoZSBkZWZhdWx0IGZvciB0aGlzIGZpZWxkIGlzIFwiJHtQYWNrYWdlfVxcZXQke1ZlcnNpb259XFxlblwiLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToxOTYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC16Pkk8Y29tcHJlc3MtbGV2ZWw+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MjAwCittc2dpZCAiIgorIlNwZWNpZnkgd2hpY2ggY29tcHJlc3Npb24gbGV2ZWwgdG8gdXNlIG9uIHRoZSBjb21wcmVzc29yIGJhY2tlbmQsIHdoZW4gIgorImJ1aWxkaW5nIGEgcGFja2FnZSAoZGVmYXVsdCBpcyA5IGZvciBnemlwIGFuZCBiemlwMiwgNiBmb3IgeHogYW5kIGx6bWEpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToyMDAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1aPkk8Y29tcHJlc3MtdHlwZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToyMDUKK21zZ2lkICIiCisiU3BlY2lmeSB3aGljaCBjb21wcmVzc2lvbiB0eXBlIHRvIHVzZSB3aGVuIGJ1aWxkaW5nIGEgcGFja2FnZS4gQWxsb3dlZCAiCisidmFsdWVzIGFyZSBJPGd6aXA+LCBJPHh6PiwgSTxiemlwMj4sIEk8bHptYT4sIGFuZCBJPG5vbmU+IChkZWZhdWx0IGlzICIKKyJJPGd6aXA+KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MjA1CisjLCBuby13cmFwCittc2dpZCAiQjwtLW5ldz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToyMTAKK21zZ2lkICJFbnN1cmVzIHRoYXQgQjxkcGtnLWRlYj4gYnVpbGRzIGEgYG5ldycgZm9ybWF0IGFyY2hpdmUuIFRoaXMgaXMgdGhlIGRlZmF1bHQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRlYi4xOjIxMAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1vbGQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MjE4Cittc2dpZCAiIgorIkZvcmNlcyBCPGRwa2ctZGViPiB0byBidWlsZCBhbiBgb2xkJyBmb3JtYXQgYXJjaGl2ZS4gVGhpcyBvbGQgYXJjaGl2ZSBmb3JtYXQgIgorImlzIGxlc3MgZWFzaWx5IHBhcnNlZCBieSBub24tRGViaWFuIHRvb2xzIGFuZCBpcyBub3cgb2Jzb2xldGU7IGl0cyBvbmx5IHVzZSAiCisiaXMgd2hlbiBidWlsZGluZyBwYWNrYWdlcyB0byBiZSBwYXJzZWQgYnkgdmVyc2lvbnMgb2YgZHBrZyBvbGRlciB0aGFuICIKKyIwLjkzLjc2IChTZXB0ZW1iZXIgMTk5NSksIHdoaWNoIHdhcyByZWxlYXNlZCBhcyBpMzg2IGEub3V0IG9ubHkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRlYi4xOjIxOAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1ub2NoZWNrPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjIyNAorbXNnaWQgIiIKKyJJbmhpYml0cyBCPGRwa2ctZGViIC0tYnVpbGQ+J3MgdXN1YWwgY2hlY2tzIG9uIHRoZSBwcm9wb3NlZCBjb250ZW50cyBvZiBhbiAiCisiYXJjaGl2ZS4gWW91IGNhbiBidWlsZCBhbnkgYXJjaGl2ZSB5b3Ugd2FudCwgbm8gbWF0dGVyIGhvdyBicm9rZW4sIHRoaXMgd2F5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToyMjQgc3RhcnQtc3RvcC1kYWVtb24uODoyNTUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC12PiwgQjwtLXZlcmJvc2U+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MjI4Cittc2dpZCAiIgorIkVuYWJsZXMgdmVyYm9zZSBvdXRwdXQuIFRoaXMgY3VycmVudGx5IG9ubHkgYWZmZWN0cyBCPC0tZXh0cmFjdD4gbWFraW5nIGl0ICIKKyJiZWhhdmUgbGlrZSBCPC0tdmV4dHJhY3Q+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToyMjgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1EPiwgQjwtLWRlYnVnPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjIzMQorbXNnaWQgIkVuYWJsZXMgZGVidWdnaW5nIG91dHB1dC4gVGhpcyBpcyBub3QgdmVyeSBpbnRlcmVzdGluZy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToyMzcKK21zZ2lkICIiCisiSWYgc2V0LCBCPGRwa2ctZGViPiB3aWxsIHVzZSBpdCBhcyB0aGUgZGlyZWN0b3J5IGluIHdoaWNoIHRvIGNyZWF0ZSAiCisidGVtcG9yYXJ5IGZpbGVzIGFuZCBkaXJlY3Rvcmllcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToyNDMKK21zZ2lkICJCPGRwa2ctZGViIC1JPiBJPHBhY2thZ2UxPkI8LmRlYj4gSTxwYWNrYWdlMj5CPC5kZWI+IGRvZXMgdGhlIHdyb25nIHRoaW5nLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjI1MQorbXNnaWQgIiIKKyJUaGVyZSBpcyBubyBhdXRoZW50aWNhdGlvbiBvbiBCPC5kZWI+IGZpbGVzOyBpbiBmYWN0LCB0aGVyZSBpc24ndCBldmVuIGEgIgorInN0cmFpZ2h0Zm9yd2FyZCBjaGVja3N1bS4gIChIaWdoZXIgbGV2ZWwgdG9vbHMgbGlrZSBBUFQgc3VwcG9ydCAiCisiYXV0aGVudGljYXRpbmcgQjwuZGViPiBwYWNrYWdlcyByZXRyaWV2ZWQgZnJvbSBhIGdpdmVuIHJlcG9zaXRvcnksIGFuZCBtb3N0ICIKKyJwYWNrYWdlcyBub3dhZGF5cyBwcm92aWRlIGFuIG1kNXN1bSBjb250cm9sIGZpbGUgZ2VuZXJhdGVkIGJ5ICIKKyJkZWJpYW4vcnVsZXMuIFRob3VnaCB0aGlzIGlzIG5vdCBkaXJlY3RseSBzdXBwb3J0ZWQgYnkgdGhlIGxvd2VyIGxldmVsICIKKyJ0b29scy4pIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MjU4Cittc2dpZCAiIgorIkRvIG5vdCBhdHRlbXB0IHRvIHVzZSBqdXN0IEI8ZHBrZy1kZWI+IHRvIGluc3RhbGwgc29mdHdhcmUhIFlvdSBtdXN0IHVzZSAiCisiQjxkcGtnPiBwcm9wZXIgdG8gZW5zdXJlIHRoYXQgYWxsIHRoZSBmaWxlcyBhcmUgY29ycmVjdGx5IHBsYWNlZCBhbmQgdGhlICIKKyJwYWNrYWdlJ3Mgc2NyaXB0cyBydW4gYW5kIGl0cyBzdGF0dXMgYW5kIGNvbnRlbnRzIHJlY29yZGVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjI2NAorbXNnaWQgIkI8ZGViPig1KSwgQjxkZWItY29udHJvbD4oNSksIEI8ZHBrZz4oMSksIEI8ZHNlbGVjdD4oMSkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLWRpdmVydC44OjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLWRpdmVydCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjQKK21zZ2lkICJkcGtnLWRpdmVydCAtIG92ZXJyaWRlIGEgcGFja2FnZSdzIHZlcnNpb24gb2YgYSBmaWxlIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6OQorbXNnaWQgIkI8ZHBrZy1kaXZlcnQ+IFtJPG9wdGlvbj4uLi5dIEk8Y29tbWFuZD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODoxMworbXNnaWQgIiIKKyJCPGRwa2ctZGl2ZXJ0PiBpcyB0aGUgdXRpbGl0eSB1c2VkIHRvIHNldCB1cCBhbmQgdXBkYXRlIHRoZSBsaXN0IG9mICIKKyJkaXZlcnNpb25zLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjIzCittc2dpZCAiIgorIkZpbGUgSTxkaXZlcnNpb25zPiBhcmUgYSB3YXkgb2YgZm9yY2luZyBCPGRwa2c+KDEpICBub3QgdG8gaW5zdGFsbCBhIGZpbGUgIgorImludG8gaXRzIGxvY2F0aW9uLCBidXQgdG8gYSBJPGRpdmVydGVkPiBsb2NhdGlvbi4gRGl2ZXJzaW9ucyBjYW4gYmUgdXNlZCAiCisidGhyb3VnaCB0aGUgRGViaWFuIHBhY2thZ2Ugc2NyaXB0cyB0byBtb3ZlIGEgZmlsZSBhd2F5IHdoZW4gaXQgY2F1c2VzIGEgIgorImNvbmZsaWN0LiBTeXN0ZW0gYWRtaW5pc3RyYXRvcnMgY2FuIGFsc28gdXNlIGl0IHRvIG92ZXJyaWRlIHNvbWUgcGFja2FnZSdzICIKKyJjb25maWd1cmF0aW9uIGZpbGUsIG9yIHdoZW5ldmVyIHNvbWUgZmlsZXMgKHdoaWNoIGFyZW4ndCBtYXJrZWQgYXMgIgorIidjb25mZmlsZXMnKSBuZWVkIHRvIGJlIHByZXNlcnZlZCBieSBkcGtnLCB3aGVuIGluc3RhbGxpbmcgYSBuZXdlciB2ZXJzaW9uICIKKyJvZiBhIHBhY2thZ2Ugd2hpY2ggY29udGFpbnMgdGhvc2UgZmlsZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRpdmVydC44OjI1CisjLCBuby13cmFwCittc2dpZCAiW0I8LS1hZGQ+XSBJPGZpbGU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6MjgKK21zZ2lkICJBZGQgYSBkaXZlcnNpb24gZm9yIEk8ZmlsZT4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRpdmVydC44OjI4IGRwa2ctc3RhdG92ZXJyaWRlLjg6MzUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tcmVtb3ZlPkk8IGZpbGU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6MzEKK21zZ2lkICJSZW1vdmUgYSBkaXZlcnNpb24gZm9yIEk8ZmlsZT4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRpdmVydC44OjMxCisjLCBuby13cmFwCittc2dpZCAiQjwtLWxpc3Q+STwgZ2xvYi1wYXR0ZXJuPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjM0Cittc2dpZCAiTGlzdCBkaXZlcnNpb25zIG1hdGNoaW5nIEk8Z2xvYi1wYXR0ZXJuPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGl2ZXJ0Ljg6MzQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tbGlzdHBhY2thZ2U+STwgZmlsZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODozOAorbXNnaWQgIiIKKyJQcmludCB0aGUgbmFtZSBvZiB0aGUgcGFja2FnZSB0aGF0IGRpdmVydHMgSTxmaWxlPi4gIFByaW50cyBMT0NBTCBpZiBJPGZpbGU+ICIKKyJpcyBsb2NhbGx5IGRpdmVydGVkIGFuZCBub3RoaW5nIGlmIEk8ZmlsZT4gaXMgbm90IGRpdmVydGVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kaXZlcnQuODozOAorIywgbm8td3JhcAorbXNnaWQgIkI8LS10cnVlbmFtZT5JPCBmaWxlPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjQxCittc2dpZCAiUHJpbnQgdGhlIHJlYWwgbmFtZSBmb3IgYSBkaXZlcnRlZCBmaWxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kaXZlcnQuODo0MyBkcGtnLXN0YXRvdmVycmlkZS44OjUyIGRzZWxlY3QuMTo0NCB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzI4CisjLCBuby13cmFwCittc2dpZCAiQjwtLWFkbWluZGlyPkk8IGRpcmVjdG9yeT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo0NgorbXNnaWQgIlNldCB0aGUgZHBrZyBkYXRhIGRpcmVjdG9yeSB0byBJPGRpcmVjdG9yeT4gKGRlZmF1bHQ6IEk8L3Zhci9saWIvZHBrZz4pLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kaXZlcnQuODo0NgorIywgbm8td3JhcAorbXNnaWQgIkI8LS1kaXZlcnQ+STwgZGl2ZXJ0LXRvPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjUwCittc2dpZCAiIgorIkk8ZGl2ZXJ0LXRvPiBpcyB0aGUgbG9jYXRpb24gd2hlcmUgdGhlIHZlcnNpb25zIG9mIEk8ZmlsZT4sIGFzIHByb3ZpZGVkIGJ5ICIKKyJvdGhlciBwYWNrYWdlcywgd2lsbCBiZSBkaXZlcnRlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGl2ZXJ0Ljg6NTAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tbG9jYWw+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6NTYKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRoYXQgYWxsIHBhY2thZ2VzJyB2ZXJzaW9ucyBvZiB0aGlzIGZpbGUgYXJlIGRpdmVydGVkLiAgVGhpcyAiCisibWVhbnMsIHRoYXQgdGhlcmUgYXJlIG5vIGV4Y2VwdGlvbnMsIGFuZCB3aGF0ZXZlciBwYWNrYWdlIGlzIGluc3RhbGxlZCwgdGhlICIKKyJmaWxlIGlzIGRpdmVydGVkLiBUaGlzIGNhbiBiZSB1c2VkIGJ5IGFuIGFkbWluIHRvIGluc3RhbGwgYSBsb2NhbGx5IG1vZGlmaWVkICIKKyJ2ZXJzaW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kaXZlcnQuODo1NgorIywgbm8td3JhcAorbXNnaWQgIkI8LS1wYWNrYWdlPkk8IHBhY2thZ2U+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6NjEKK21zZ2lkICIiCisiSTxwYWNrYWdlPiBpcyB0aGUgbmFtZSBvZiBhIHBhY2thZ2Ugd2hvc2UgY29weSBvZiBJPGZpbGU+IHdpbGwgbm90IGJlICIKKyJkaXZlcnRlZC4gaS5lLiBJPGZpbGU+IHdpbGwgYmUgZGl2ZXJ0ZWQgZm9yIGFsbCBwYWNrYWdlcyBleGNlcHQgSTxwYWNrYWdlPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGl2ZXJ0Ljg6NjEgZHBrZy1zdGF0b3ZlcnJpZGUuODo2NCB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzUwCisjLCBuby13cmFwCittc2dpZCAiQjwtLXF1aWV0PiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjY0Cittc2dpZCAiUXVpZXQgbW9kZSwgaS5lLiBubyB2ZXJib3NlIG91dHB1dC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGl2ZXJ0Ljg6NjQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tcmVuYW1lPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjY4Cittc2dpZCAiIgorIkFjdHVhbGx5IG1vdmUgdGhlIGZpbGUgYXNpZGUgKG9yIGJhY2spLiBCPGRwa2ctZGl2ZXJ0PiB3aWxsIGFib3J0IG9wZXJhdGlvbiAiCisiaW4gY2FzZSB0aGUgZGVzdGluYXRpb24gZmlsZSBhbHJlYWR5IGV4aXN0cy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGl2ZXJ0Ljg6NjgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tdGVzdD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo3MQorbXNnaWQgIlRlc3QgbW9kZSwgaS5lLiBkb24ndCBhY3R1YWxseSBwZXJmb3JtIGFueSBjaGFuZ2VzLCBqdXN0IGRlbW9uc3RyYXRlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1kaXZlcnQuODo3OAorIywgbm8td3JhcAorbXNnaWQgIk5PVEVTIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6ODIKK21zZ2lkICIiCisiV2hlbiBhZGRpbmcsIGRlZmF1bHQgaXMgQjwtLWxvY2FsPiBhbmQgQjwtLWRpdmVydD4gIgorIkk8b3JpZ2luYWw+QjwuZGlzdHJpYj4uIFdoZW4gcmVtb3ZpbmcsIEI8LS1wYWNrYWdlPiBvciBCPC0tbG9jYWw+IGFuZCAiCisiQjwtLWRpdmVydD4gbXVzdCBtYXRjaCBpZiBzcGVjaWZpZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6ODQKK21zZ2lkICJEaXJlY3RvcmllcyBjYW4ndCBiZSBkaXZlcnRlZCB3aXRoIEI8ZHBrZy1kaXZlcnQ+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjkwCittc2dpZCAiIgorIkNhcmUgc2hvdWxkIGJlIHRha2VuIHdoZW4gZGl2ZXJ0aW5nIHNoYXJlZCBsaWJyYXJpZXMsIEI8bGRjb25maWc+KDgpICAiCisiY3JlYXRlcyBhIHN5bWJvbGljIGxpbmsgYmFzZWQgb24gdGhlIERUX1NPTkFNRSBmaWVsZCBlbWJlZGRlZCBpbiB0aGUgIgorImxpYnJhcnkuICBCZWNhdXNlIGxkY29uZmlnIGRvZXNuJ3QgaG9ub3VyIGRpdmVydHMgKG9ubHkgZHBrZyBkb2VzKSwgdGhlICIKKyJzeW1saW5rIG1heSBlbmQgdXAgcG9pbnRpbmcgYXQgdGhlIGRpdmVydGVkIGxpYnJhcnksIGlmIGEgZGl2ZXJ0ZWQgbGlicmFyeSAiCisiaGFzIHRoZSBzYW1lIFNPTkFNRSBhcyB0aGUgdW5kaXZlcnRlZCBvbmUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6OTUKK21zZ2lkICIiCisiVG8gZGl2ZXJ0IGFsbCBjb3BpZXMgb2YgYSBJPC91c3IvYmluL2V4YW1wbGU+IHRvIEk8L3Vzci9iaW4vZXhhbXBsZS5mb28+LCAiCisiaS5lLiBkaXJlY3RzIGFsbCBwYWNrYWdlcyBwcm92aWRpbmcgSTwvdXNyL2Jpbi9leGFtcGxlPiB0byBpbnN0YWxsIGl0IGFzICIKKyJJPC91c3IvYmluL2V4YW1wbGUuZm9vPiwgcGVyZm9ybWluZyB0aGUgcmVuYW1lIGlmIHJlcXVpcmVkOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44Ojk3Cittc2dpZCAiZHBrZy1kaXZlcnQgLS1kaXZlcnQgL3Vzci9iaW4vZXhhbXBsZS5mb28gLS1yZW5hbWUgL3Vzci9iaW4vZXhhbXBsZSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44Ojk5IGRwa2ctZGl2ZXJ0Ljg6MTA5Cittc2dpZCAiVG8gcmVtb3ZlIHRoYXQgZGl2ZXJzaW9uOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjEwMQorbXNnaWQgImRwa2ctZGl2ZXJ0IC0tcmVuYW1lIC0tcmVtb3ZlIC91c3IvYmluL2V4YW1wbGUiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODoxMDUKK21zZ2lkICIiCisiVG8gZGl2ZXJ0IGFueSBwYWNrYWdlIHRyeWluZyB0byBpbnN0YWxsIEk8L3Vzci9iaW4vZXhhbXBsZT4gdG8gIgorIkk8L3Vzci9iaW4vZXhhbXBsZS5mb28+LCBleGNlcHQgeW91ciBvd24gSTx3aWJibGU+IHBhY2thZ2U6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6MTA3Cittc2dpZCAiIgorImRwa2ctZGl2ZXJ0IC0tcGFja2FnZSB3aWJibGUgLS1kaXZlcnQgL3Vzci9iaW4vZXhhbXBsZS5mb28gLS1yZW5hbWUgIgorIi91c3IvYmluL2V4YW1wbGUiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODoxMTEKK21zZ2lkICJkcGtnLWRpdmVydCAtLXBhY2thZ2Ugd2liYmxlIC0tcmVuYW1lIC0tcmVtb3ZlIC91c3IvYmluL2V4YW1wbGUiCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGl2ZXJ0Ljg6MTEzIGRwa2ctcXVlcnkuMToyMDUgZHBrZy1zdGF0b3ZlcnJpZGUuODo2OSBkcGtnLXRyaWdnZXIuMTo2MSB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzU1CisjLCBuby13cmFwCittc2dpZCAiQjxEUEtHX0FETUlORElSPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjExNyBkcGtnLXF1ZXJ5LjE6MjA5IGRwa2ctc3RhdG92ZXJyaWRlLjg6NzMgZHBrZy10cmlnZ2VyLjE6NjUKK21zZ2lkICIiCisiSWYgc2V0IGFuZCB0aGUgQjwtLWFkbWluZGlyPiBvcHRpb24gaGFzIG5vdCBiZWVuIHNwZWNpZmllZCwgaXQgd2lsbCBiZSB1c2VkICIKKyJhcyB0aGUgZHBrZyBkYXRhIGRpcmVjdG9yeS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODoxMjEKK21zZ2lkICIiCisiSWYgc2V0IGFuZCB0aGUgQjwtLWxvY2FsPiBhbmQgQjwtLXBhY2thZ2U+IG9wdGlvbnMgaGF2ZSBub3QgYmVlbiBzcGVjaWZpZWQsICIKKyJCPGRwa2ctZGl2ZXJ0PiB3aWxsIHVzZSBpdCBhcyB0aGUgcGFja2FnZSBuYW1lLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kaXZlcnQuODoxMjMKKyMsIG5vLXdyYXAKK21zZ2lkICJJPC92YXIvbGliL2Rwa2cvZGl2ZXJzaW9ucz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODoxMjgKK21zZ2lkICIiCisiRmlsZSB3aGljaCBjb250YWlucyB0aGUgY3VycmVudCBsaXN0IG9mIGRpdmVyc2lvbnMgb2YgdGhlIHN5c3RlbS4gSXQgaXMgIgorImxvY2F0ZWQgaW4gdGhlIGRwa2cgYWRtaW5pc3RyYXRpb24gZGlyZWN0b3J5LCBhbG9uZyB3aXRoIG90aGVyIGZpbGVzICIKKyJpbXBvcnRhbnQgdG8gZHBrZywgc3VjaCBhcyBJPHN0YXR1cz4gb3IgSTxhdmFpbGFibGU+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjEzMQorbXNnaWQgIiIKKyJOb3RlOiBCPGRwa2ctZGl2ZXJ0PiBwcmVzZXJ2ZXMgdGhlIG9sZCBjb3B5IG9mIHRoaXMgZmlsZSwgd2l0aCBleHRlbnNpb24gIgorIkk8LW9sZD4sIGJlZm9yZSByZXBsYWNpbmcgaXQgd2l0aCB0aGUgbmV3IG9uZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODoxMzcgdXBkYXRlLWFsdGVybmF0aXZlcy44OjQ5NgorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAxOTk1IElhbiBKYWNrc29uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLWdlbmNoYW5nZXMuMToxCisjLCBuby13cmFwCittc2dpZCAiZHBrZy1nZW5jaGFuZ2VzIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjQKK21zZ2lkICJkcGtnLWdlbmNoYW5nZXMgLSBnZW5lcmF0ZSBEZWJpYW4gLmNoYW5nZXMgZmlsZXMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6OAorbXNnaWQgIkI8ZHBrZy1nZW5jaGFuZ2VzPiBbSTxvcHRpb24+Li4uXSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMToxNgorbXNnaWQgIiIKKyJCPGRwa2ctZ2VuY2hhbmdlcz4gcmVhZHMgaW5mb3JtYXRpb24gZnJvbSBhbiB1bnBhY2tlZCBhbmQgYnVpbHQgRGViaWFuICIKKyJzb3VyY2UgdHJlZSBhbmQgZnJvbSB0aGUgZmlsZXMgaXQgaGFzIGdlbmVyYXRlZCBhbmQgZ2VuZXJhdGVzIGEgRGViaWFuICIKKyJ1cGxvYWQgY29udHJvbCBmaWxlIChCPC5jaGFuZ2VzPiBmaWxlKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjE4CisjLCBuby13cmFwCittc2dpZCAiQjwtYj4sIEI8LUI+LCBCPC1BPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMToyNworbXNnaWQgIiIKKyJTcGVjaWZpZXMgdGhhdCBhIGJpbmFyeS1vbmx5IGJ1aWxkIGlzIHRha2luZyBwbGFjZSAobm8gc291cmNlIGZpbGVzIGFyZSB0byAiCisiYmUgaW5jbHVkZWQpLiBUaGVyZSdzIG5vIGRpc3RpbmN0aW9uIGJldHdlZW4gQjwtYj4sIEI8LUI+IGFuZCBCPC1BPiwgdGhlICIKKyJwcm9kdWNlZCBCPC5jaGFuZ2VzPiBmaWxlIHdpbGwgaW5jbHVkZSB3aGF0ZXZlciBmaWxlcyB3ZXJlIGNyZWF0ZWQgYnkgdGhlICIKKyJCPGJpbmFyeS0qPiB0YXJnZXQocykgb2YgdGhlIHBhY2thZ2UgYmVpbmcgYnVpbHQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjMxCittc2dpZCAiIgorIlNwZWNpZmllcyB0aGF0IG9ubHkgdGhlIHNvdXJjZSBzaG91bGQgYmUgdXBsb2FkZWQgKG5vIGJpbmFyeSBwYWNrYWdlcyB3aWxsICIKKyJiZSBpbmNsdWRlZCkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjM2Cittc2dpZCAiIgorIlRoZSBCPC1zPkk8eD4gb3B0aW9ucyBjb250cm9sIHdoZXRoZXIgdGhlIG9yaWdpbmFsIHNvdXJjZSBhcmNoaXZlIGlzICIKKyJpbmNsdWRlZCBpbiB0aGUgdXBsb2FkIGlmIGFueSBzb3VyY2UgaXMgYmVpbmcgZ2VuZXJhdGVkIChpLmUuICBCPC1iPiBvciAiCisiQjwtQj4gaGF2ZW4ndCBiZWVuIHVzZWQpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMTo0MgorbXNnaWQgIiIKKyJCeSBkZWZhdWx0LCBvciBpZiBzcGVjaWZpZWQsIHRoZSBvcmlnaW5hbCBzb3VyY2Ugd2lsbCBiZSBpbmNsdWRlZCBvbmx5IGlmICIKKyJ0aGUgdXBzdHJlYW0gdmVyc2lvbiBudW1iZXIgKHRoZSB2ZXJzaW9uIHdpdGhvdXQgZXBvY2ggYW5kIHdpdGhvdXQgRGViaWFuICIKKyJyZXZpc2lvbikgZGlmZmVycyBmcm9tIHRoZSB1cHN0cmVhbSB2ZXJzaW9uIG51bWJlciBvZiB0aGUgcHJldmlvdXMgY2hhbmdlbG9nICIKKyJlbnRyeS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6NDUKK21zZ2lkICJGb3JjZXMgdGhlIGluY2x1c2lvbiBvZiB0aGUgb3JpZ2luYWwgc291cmNlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMTo0OAorbXNnaWQgIkZvcmNlcyB0aGUgZXhjbHVzaW9uIG9mIHRoZSBvcmlnaW5hbCBzb3VyY2UgYW5kIGluY2x1ZGVzIG9ubHkgdGhlIGRpZmYuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjU0Cittc2dpZCAiIgorIkNhdXNlcyBjaGFuZ2Vsb2cgaW5mb3JtYXRpb24gZnJvbSBhbGwgdmVyc2lvbnMgc3RyaWN0bHkgbGF0ZXIgdGhhbiAiCisiSTx2ZXJzaW9uPiB0byBiZSB1c2VkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMTo2MAorbXNnaWQgIiIKKyJSZWFkIHRoZSBkZXNjcmlwdGlvbiBvZiB0aGUgY2hhbmdlcyBmcm9tIHRoZSBmaWxlIEk8Y2hhbmdlc2Rlc2NyaXB0aW9uPiAiCisicmF0aGVyIHRoYW4gdXNpbmcgdGhlIGluZm9ybWF0aW9uIGZyb20gdGhlIHNvdXJjZSB0cmVlJ3MgY2hhbmdlbG9nIGZpbGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjY2Cittc2dpZCAiIgorIlVzZSBJPG1haW50YWluZXJhZGRyZXNzPiBhcyB0aGUgbmFtZSBhbmQgZW1haWwgYWRkcmVzcyBvZiB0aGUgbWFpbnRhaW5lciBmb3IgIgorInRoaXMgcGFja2FnZSwgcmF0aGVyIHRoYW4gdXNpbmcgdGhlIGluZm9ybWF0aW9uIGZyb20gdGhlIHNvdXJjZSB0cmVlJ3MgIgorImNvbnRyb2wgZmlsZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6NzIKK21zZ2lkICIiCisiVXNlIEk8bWFpbnRhaW5lcmFkZHJlc3M+IGFzIHRoZSBuYW1lIGFuZCBlbWFpbCBhZGRyZXNzIG9mIHRoZSBtYWludGFpbmVyIGZvciAiCisidGhpcyB1cGxvYWQsIHJhdGhlciB0aGFuIHVzaW5nIHRoZSBpbmZvcm1hdGlvbiBmcm9tIHRoZSBzb3VyY2UgdHJlZSdzICIKKyJjaGFuZ2Vsb2cuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbmNoYW5nZXMuMTo3MiBkcGtnLWdlbmNvbnRyb2wuMTo0MSBkcGtnLXNvdXJjZS4xOjEyNworIywgbm8td3JhcAorbXNnaWQgIkI8LVY+STxuYW1lPkI8PT5JPHZhbHVlPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMTo3NiBkcGtnLXNvdXJjZS4xOjEzMQorbXNnaWQgIiIKKyJTZXQgYW4gb3V0cHV0IHN1YnN0aXR1dGlvbiB2YXJpYWJsZS4gIFNlZSBCPGRlYi1zdWJzdHZhcnM+KDUpIGZvciBhICIKKyJkaXNjdXNzaW9uIG9mIG91dHB1dCBzdWJzdGl0dXRpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbmNoYW5nZXMuMTo3NiBkcGtnLWdlbmNvbnRyb2wuMTo0NSBkcGtnLXNobGliZGVwcy4xOjE2OSBkcGtnLXNvdXJjZS4xOjEzMQorIywgbm8td3JhcAorbXNnaWQgIkI8LVQ+STxzdWJzdHZhcnNmaWxlPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMTo4NgorbXNnaWQgIiIKKyJSZWFkIHN1YnN0aXR1dGlvbiB2YXJpYWJsZXMgaW4gSTxzdWJzdHZhcnNmaWxlPjsgdGhlIGRlZmF1bHQgaXMgIgorIkI8ZGViaWFuL3N1YnN0dmFycz4uICBObyB2YXJpYWJsZSBzdWJzdGl0dXRpb24gaXMgZG9uZSBvbiBhbnkgb2YgdGhlIGZpZWxkcyAiCisidGhhdCBhcmUgb3V0cHV0LCBob3dldmVyIHRoZSBzcGVjaWFsIHZhcmlhYmxlIEk8Rm9ybWF0PiB3aWxsIG92ZXJyaWRlIHRoZSAiCisiZmllbGQgb2YgdGhlIHNhbWUgbmFtZS4gVGhpcyBvcHRpb24gY2FuIGJlIHVzZWQgbXVsdGlwbGUgdGltZXMgdG8gcmVhZCAiCisic3Vic3RpdHV0aW9uIHZhcmlhYmxlcyBmcm9tIG11bHRpcGxlIGZpbGVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6ODcgZHBrZy1nZW5jb250cm9sLjE6NTMgZHBrZy1zb3VyY2UuMToxMzcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1EPkk8ZmllbGQ+Qjw9Pkk8dmFsdWU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjkwIGRwa2ctZ2VuY29udHJvbC4xOjU2IGRwa2ctc291cmNlLjE6MTQwCittc2dpZCAiT3ZlcnJpZGUgb3IgYWRkIGFuIG91dHB1dCBjb250cm9sIGZpbGUgZmllbGQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbmNoYW5nZXMuMTo5MCBkcGtnLWdlbmNvbnRyb2wuMTo1NiBkcGtnLXNvdXJjZS4xOjE0MAorIywgbm8td3JhcAorbXNnaWQgIkI8LVU+STxmaWVsZD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6OTMgZHBrZy1nZW5jb250cm9sLjE6NTkgZHBrZy1zb3VyY2UuMToxNDMKK21zZ2lkICJSZW1vdmUgYW4gb3V0cHV0IGNvbnRyb2wgZmlsZSBmaWVsZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjkzIGRwa2ctZ2VuY29udHJvbC4xOjU5IGRwa2ctc291cmNlLjE6MTA0CisjLCBuby13cmFwCittc2dpZCAiQjwtYz5JPGNvbnRyb2xmaWxlPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMTo5OCBkcGtnLWdlbmNvbnRyb2wuMTo2NAorbXNnaWQgIiIKKyJTcGVjaWZpZXMgdGhlIG1haW4gc291cmNlIGNvbnRyb2wgZmlsZSB0byByZWFkIGluZm9ybWF0aW9uIGZyb20uIFRoZSBkZWZhdWx0ICIKKyJpcyBCPGRlYmlhbi9jb250cm9sPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjk4IGRwa2ctZ2VuY29udHJvbC4xOjY0IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxNiBkcGtnLXNvdXJjZS4xOjExMQorIywgbm8td3JhcAorbXNnaWQgIkI8LWw+STxjaGFuZ2Vsb2dmaWxlPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMToxMDMgZHBrZy1nZW5jb250cm9sLjE6NjkgZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjIxCittc2dpZCAiIgorIlNwZWNpZmllcyB0aGUgY2hhbmdlIGxvZyBmaWxlIHRvIHJlYWQgaW5mb3JtYXRpb24gZnJvbS4gVGhlIGRlZmF1bHQgaXMgIgorIkI8ZGViaWFuL2NoYW5nZWxvZz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjEwNworbXNnaWQgIiIKKyJSZWFkIHRoZSBsaXN0IG9mIGZpbGVzIHRvIGJlIHVwbG9hZGVkIGhlcmUsIHJhdGhlciB0aGFuIHVzaW5nICIKKyJCPGRlYmlhbi9maWxlcz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbmNoYW5nZXMuMToxMDcgZHBrZy1nZW5jb250cm9sLjE6NzMgZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjIxIGRwa2ctc291cmNlLjE6MTE4CisjLCBuby13cmFwCittc2dpZCAiQjwtRj5JPGNoYW5nZWxvZ2Zvcm1hdD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6MTEyIGRwa2ctZ2VuY29udHJvbC4xOjc4IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToyNiBkcGtnLXNvdXJjZS4xOjEyMworbXNnaWQgIiIKKyJTcGVjaWZpZXMgdGhlIGZvcm1hdCBvZiB0aGUgY2hhbmdlbG9nLiBCeSBkZWZhdWx0IHRoZSBmb3JtYXQgaXMgcmVhZCBmcm9tIGEgIgorInNwZWNpYWwgbGluZSBuZWFyIHRoZSBib3R0b20gb2YgdGhlIGNoYW5nZWxvZyBvciBmYWlsaW5nIHRoYXQgZGVmYXVsdHMgdG8gIgorInRoZSBkZWJpYW4gc3RhbmRhcmQgZm9ybWF0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6MTEyCisjLCBuby13cmFwCittc2dpZCAiQjwtdT5JPHVwbG9hZGZpbGVzZGlyPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMToxMjMKK21zZ2lkICIiCisiTG9vayBmb3IgdGhlIGZpbGVzIHRvIGJlIHVwbG9hZGVkIGluIEk8dXBsb2FkZmlsZXNkaXI+IHJhdGhlciB0aGFuIEI8Li4+ICIKKyIoQjxkcGtnLWdlbmNoYW5nZXM+IG5lZWRzIHRvIGZpbmQgdGhlc2UgZmlsZXMgc28gdGhhdCBpdCBjYW4gaW5jbHVkZSB0aGVpciAiCisic2l6ZXMgYW5kIGNoZWNrc3VtcyBpbiB0aGUgQjwuY2hhbmdlcz4gZmlsZSkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbmNoYW5nZXMuMToxMjMgZHBrZy1nZW5zeW1ib2xzLjE6NDIxCisjLCBuby13cmFwCittc2dpZCAiQjwtcT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6MTMxCittc2dpZCAiIgorIlVzdWFsbHkgQjxkcGtnLWdlbmNoYW5nZXM+IHdpbGwgcHJvZHVjZSBpbmZvcm1hdGl2ZSBtZXNzYWdlcyBvbiBzdGFuZGFyZCAiCisiZXJyb3IsIGZvciBleGFtcGxlIGFib3V0IGhvdyBtYW55IG9mIHRoZSBwYWNrYWdlJ3Mgc291cmNlIGZpbGVzIGFyZSBiZWluZyAiCisidXBsb2FkZWQuICBCPC1xPiBzdXBwcmVzc2VzIHRoZXNlIG1lc3NhZ2VzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMToxNDcKK21zZ2lkICIiCisiVGhlIGxpc3Qgb2YgZ2VuZXJhdGVkIGZpbGVzIHdoaWNoIGFyZSBwYXJ0IG9mIHRoZSB1cGxvYWQgYmVpbmcgcHJlcGFyZWQuICAiCisiQjxkcGtnLWdlbmNoYW5nZXM+IHJlYWRzIHRoZSBkYXRhIGhlcmUgd2hlbiBwcm9kdWNpbmcgYSBCPC5jaGFuZ2VzPiBmaWxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1nZW5jb250cm9sLjE6MQorIywgbm8td3JhcAorbXNnaWQgImRwa2ctZ2VuY29udHJvbCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMTo0Cittc2dpZCAiZHBrZy1nZW5jb250cm9sIC0gZ2VuZXJhdGUgRGViaWFuIGNvbnRyb2wgZmlsZXMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jb250cm9sLjE6OAorbXNnaWQgIkI8ZHBrZy1nZW5jb250cm9sPiBbSTxvcHRpb24+Li4uXSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMToxNAorbXNnaWQgIiIKKyJCPGRwa2ctZ2VuY29udHJvbD4gcmVhZHMgaW5mb3JtYXRpb24gZnJvbSBhbiB1bnBhY2tlZCBEZWJpYW4gc291cmNlIHRyZWUgYW5kICIKKyJnZW5lcmF0ZXMgYSBiaW5hcnkgcGFja2FnZSBjb250cm9sIGZpbGUgKHdoaWNoIGRlZmF1bHRzIHRvICIKKyJkZWJpYW4vdG1wL0RFQklBTi9jb250cm9sKTsgZHVyaW5nIHRoaXMgcHJvY2VzcyBpdCB3aWxsIHNpbXBsaWZ5IHRoZSAiCisicmVsYXRpb24gZmllbGRzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMToyNworbXNnaWQgIiIKKyJUaHVzIEk8UHJlLURlcGVuZHM+LCBJPERlcGVuZHM+LCBJPFJlY29tbWVuZHM+IGFuZCBJPFN1Z2dlc3RzPiBhcmUgIgorInNpbXBsaWZpZWQgaW4gdGhpcyBvcmRlciBieSByZW1vdmluZyBkZXBlbmRlbmNpZXMgd2hpY2ggYXJlIGtub3duIHRvIGJlIHRydWUgIgorImFjY29yZGluZyB0byB0aGUgc3Ryb25nZXIgZGVwZW5kZW5jaWVzIGFscmVhZHkgcGFyc2VkLiBJdCB3aWxsIGFsc28gcmVtb3ZlICIKKyJhbnkgc2VsZi1kZXBlbmRlbmN5IChpbiBmYWN0IGl0IHdpbGwgcmVtb3ZlIGFueSBkZXBlbmRlbmN5IHdoaWNoIGV2YWx1YXRlcyAiCisidG8gdHJ1ZSBnaXZlbiB0aGUgY3VycmVudCB2ZXJzaW9uIG9mIHRoZSBwYWNrYWdlIGFzIGluc3RhbGxlZCkuIExvZ2ljYWxseSBpdCAiCisia2VlcHMgdGhlIGludGVyc2VjdGlvbiBvZiBtdWx0aXBsZSBkZXBlbmRlbmNpZXMgb24gdGhlIHNhbWUgcGFja2FnZS4gVGhlICIKKyJvcmRlciBvZiBkZXBlbmRlbmNpZXMgaXMgcHJlc2VydmVkIGFzIGJlc3QgYXMgcG9zc2libGU6IGlmIGFueSBkZXBlbmRlbmN5ICIKKyJtdXN0IGJlIGRpc2NhcmRlZCBkdWUgdG8gYW5vdGhlciBkZXBlbmRlbmN5IGFwcGVhcmluZyBmdXJ0aGVyIGluIHRoZSBmaWVsZCwgIgorInRoZSBzdXBlcnNlZGluZyBkZXBlbmRlbmN5IHdpbGwgdGFrZSB0aGUgcGxhY2Ugb2YgdGhlIGRpc2NhcmRlZCBvbmUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjMyCittc2dpZCAiIgorIlRoZSBvdGhlciByZWxhdGlvbiBmaWVsZHMgKEk8RW5oYW5jZXM+LCBJPENvbmZsaWN0cz4sIEk8QnJlYWtzPiwgSTxSZXBsYWNlcz4gIgorImFuZCBJPFByb3ZpZGVzPikgIGFyZSBhbHNvIHNpbXBsaWZpZWQgaW5kaXZpZHVhbGx5IGJ5IGNvbXB1dGluZyB0aGUgdW5pb24gb2YgIgorInRoZSB2YXJpb3VzIGRlcGVuZGVuY2llcyB3aGVuIGEgcGFja2FnZSBpcyBsaXN0ZWQgbXVsdGlwbGUgdGltZXMgaW4gdGhlICIKKyJmaWVsZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jb250cm9sLjE6MzYKK21zZ2lkICIiCisiQjxkcGtnLWdlbmNvbnRyb2w+IGFsc28gYWRkcyBhbiBlbnRyeSBmb3IgdGhlIGJpbmFyeSBwYWNrYWdlIHRvICIKKyJCPGRlYmlhbi9maWxlcz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjQxCittc2dpZCAiU2V0cyB0aGUgdmVyc2lvbiBudW1iZXIgb2YgdGhlIGJpbmFyeSBwYWNrYWdlIHdoaWNoIHdpbGwgYmUgZ2VuZXJhdGVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMTo0NQorbXNnaWQgIiIKKyJTZXQgYW4gb3V0cHV0IHN1YnN0aXR1dGlvbiB2YXJpYWJsZS4gU2VlIEI8ZGViLXN1YnN0dmFycz4oNSkgZm9yIGRpc2N1c3Npb24gIgorIm9mIG91dHB1dCBzdWJzdGl0dXRpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjUzCittc2dpZCAiIgorIlJlYWQgc3Vic3RpdHV0aW9uIHZhcmlhYmxlcyBpbiBJPHN1YnN0dmFyc2ZpbGU+OyB0aGUgZGVmYXVsdCBpcyAiCisiQjxkZWJpYW4vc3Vic3R2YXJzPi4gIFRoaXMgb3B0aW9uIGNhbiBiZSB1c2VkIG11bHRpcGxlIHRpbWVzIHRvIHJlYWQgIgorInN1YnN0aXR1dGlvbiB2YXJpYWJsZXMgZnJvbSBtdWx0aXBsZSBmaWxlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjc4IGRwa2ctZ2Vuc3ltYm9scy4xOjM3MworIywgbm8td3JhcAorbXNnaWQgIkI8LXA+STxwYWNrYWdlPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMTo4NQorbXNnaWQgIiIKKyJHZW5lcmF0ZSBpbmZvcm1hdGlvbiBmb3IgdGhlIGJpbmFyeSBwYWNrYWdlIEk8cGFja2FnZT4uICBJZiB0aGUgc291cmNlICIKKyJjb250cm9sIGZpbGUgbGlzdHMgb25seSBvbmUgYmluYXJ5IHBhY2thZ2UgdGhlbiB0aGlzIG9wdGlvbiBtYXkgYmUgb21pdHRlZDsgIgorIm90aGVyd2lzZSBpdCBpcyBlc3NlbnRpYWwgdG8gc2VsZWN0IHdoaWNoIGJpbmFyeSBwYWNrYWdlJ3MgaW5mb3JtYXRpb24gdG8gIgorImdlbmVyYXRlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5jb250cm9sLjE6ODUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1uPkk8ZmlsZW5hbWU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjkwCittc2dpZCAiIgorIkFzc3VtZSB0aGUgZmlsZW5hbWUgb2YgdGhlIHBhY2thZ2Ugd2lsbCBiZSBJPGZpbGVuYW1lPiBpbnN0ZWFkIG9mIHRoZSBub3JtYWwgIgorInBhY2thZ2VfdmVyc2lvbl9hcmNoLmRlYiBmaWxlbmFtZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjkwCisjLCBuby13cmFwCittc2dpZCAiQjwtaXM+LCBCPC1pcD4sIEI8LWlzcD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jb250cm9sLjE6OTkKK21zZ2lkICIiCisiVGhlc2Ugb3B0aW9ucyBhcmUgaWdub3JlZCBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIG9sZGVyIHZlcnNpb25zIG9mIGRwa2ctZGV2ICIKKyJidXQgYXJlIG5vdyBkZXByZWNhdGVkLiBQcmV2aW91c2x5IHRoZXkgd2VyZSB1c2VkIHRvIHRlbGwgZHBrZy1nZW5jb250cm9sIHRvICIKKyJpbmNsdWRlIHRoZSBTZWN0aW9uIGFuZCBQcmlvcml0eSBmaWVsZHMgaW4gdGhlIGNvbnRyb2wgZmlsZS4gVGhpcyBpcyBub3cgdGhlICIKKyJkZWZhdWx0IGJlaGF2aW91ci4gSWYgeW91IHdhbnQgdG8gZ2V0IHRoZSBvbGQgYmVoYXZpb3VyIHlvdSBjYW4gdXNlIHRoZSAiCisiQjwtVT4gb3B0aW9uIHRvIGRlbGV0ZSB0aGUgZmllbGRzIGZyb20gdGhlIGNvbnRyb2wgZmlsZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjk5CisjLCBuby13cmFwCittc2dpZCAiQjwtUD5JPHBhY2thZ2VidWlsZGRpcj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jb250cm9sLjE6MTEyCittc2dpZCAiIgorIlRlbGxzIEI8ZHBrZy1zb3VyY2U+IHRoYXQgdGhlIHBhY2thZ2UgaXMgYmVpbmcgYnVpbHQgaW4gSTxwYWNrYWdlYnVpbGRkaXI+ICIKKyJpbnN0ZWFkIG9mIEI8ZGViaWFuL3RtcD4uICBUaGlzIHZhbHVlIGlzIHVzZWQgdG8gZmluZCB0aGUgZGVmYXVsdCB2YWx1ZSBvZiAiCisidGhlIEI8SW5zdGFsbGVkLVNpemU+IHN1YnN0aXR1dGlvbiB2YXJpYWJsZSBhbmQgY29udHJvbCBmaWxlIGZpZWxkICh1c2luZyAiCisiQjxkdT4pLCBhbmQgZm9yIHRoZSBkZWZhdWx0IGxvY2F0aW9uIG9mIHRoZSBvdXRwdXQgZmlsZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjExMiBkcGtnLWdlbnN5bWJvbHMuMTozOTEgZHBrZy1zaGxpYmRlcHMuMToxNTAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1PPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMToxMjEKK21zZ2lkICIiCisiUHJpbnQgdGhlIGNvbnRyb2wgZmlsZSB0byBzdGFuZGFyZCBvdXRwdXQsIHJhdGhlciB0aGFuIHRvICIKKyJCPGRlYmlhbi90bXAvREVCSUFOL2NvbnRyb2w+IChvciBJPHBhY2thZ2VidWlsZGRpcj5CPC9ERUJJQU4vY29udHJvbD4gaWYgIgorIkI8LVA+IHdhcyB1c2VkKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjEyOQorIywgbm8td3JhcAorbXNnaWQgIkI8ZGViaWFuL2NvbnRyb2w+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjEzNAorbXNnaWQgIiIKKyJUaGUgbWFpbiBzb3VyY2UgY29udHJvbCBpbmZvcm1hdGlvbiBmaWxlLCBnaXZpbmcgdmVyc2lvbi1pbmRlcGVuZGVudCAiCisiaW5mb3JtYXRpb24gYWJvdXQgdGhlIHNvdXJjZSBwYWNrYWdlIGFuZCB0aGUgYmluYXJ5IHBhY2thZ2VzIGl0IGNhbiBwcm9kdWNlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMToxNDEKK21zZ2lkICIiCisiVGhlIGxpc3Qgb2YgZ2VuZXJhdGVkIGZpbGVzIHdoaWNoIGFyZSBwYXJ0IG9mIHRoZSB1cGxvYWQgYmVpbmcgcHJlcGFyZWQuICAiCisiQjxkcGtnLWdlbmNvbnRyb2w+IGFkZHMgdGhlIHByZXN1bWVkIGZpbGVuYW1lcyBvZiBiaW5hcnkgcGFja2FnZXMgd2hvc2UgIgorImNvbnRyb2wgZmlsZXMgaXQgZ2VuZXJhdGVzIGhlcmUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjE0OCBkcGtnLXNobGliZGVwcy4xOjMzNworbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDA3LTIwMDggUmFwaGFcXFs6ZV1sIEhlcnR6b2ciCittc2dzdHIgIiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjIKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLWdlbnN5bWJvbHMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NQorbXNnaWQgIiIKKyJkcGtnLWdlbnN5bWJvbHMgLSBnZW5lcmF0ZSBzeW1ib2xzIGZpbGVzIChzaGFyZWQgbGlicmFyeSBkZXBlbmRlbmN5ICIKKyJpbmZvcm1hdGlvbikiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6OQorbXNnaWQgIkI8ZHBrZy1nZW5zeW1ib2xzPiBbSTxvcHRpb24+Li4uXSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToxNgorbXNnaWQgIiIKKyJCPGRwa2ctZ2Vuc3ltYm9scz4gc2NhbnMgYSB0ZW1wb3JhcnkgYnVpbGQgdHJlZSAoZGViaWFuL3RtcCBieSBkZWZhdWx0KSAiCisibG9va2luZyBmb3IgbGlicmFyaWVzIGFuZCBnZW5lcmF0ZSBhIEk8c3ltYm9scz4gZmlsZSBkZXNjcmliaW5nIHRoZW0uIFRoaXMgIgorImZpbGUsIGlmIG5vbi1lbXB0eSwgaXMgdGhlbiBpbnN0YWxsZWQgaW4gdGhlIERFQklBTiBzdWJkaXJlY3Rvcnkgb2YgdGhlICIKKyJidWlsZCB0cmVlIHNvIHRoYXQgaXQgZW5kcyB1cCBpbmNsdWRlZCBpbiB0aGUgY29udHJvbCBpbmZvcm1hdGlvbiBvZiB0aGUgIgorInBhY2thZ2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjIwCittc2dpZCAiIgorIldoZW4gZ2VuZXJhdGluZyB0aG9zZSBmaWxlcywgaXQgdXNlcyBhcyBpbnB1dCBzb21lIHN5bWJvbHMgZmlsZXMgcHJvdmlkZWQgYnkgIgorInRoZSBtYWludGFpbmVyLiBJdCBsb29rcyBmb3IgdGhlIGZvbGxvd2luZyBmaWxlcyAoYW5kIHVzZSB0aGUgZmlyc3QgdGhhdCBpcyAiCisiZm91bmQpOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyMgorbXNnaWQgImRlYmlhbi9JPHBhY2thZ2U+LnN5bWJvbHMuSTxhcmNoPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyNAorbXNnaWQgImRlYmlhbi9zeW1ib2xzLkk8YXJjaD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjYKK21zZ2lkICJkZWJpYW4vSTxwYWNrYWdlPi5zeW1ib2xzIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjI4Cittc2dpZCAiZGViaWFuL3N5bWJvbHMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzYKK21zZ2lkICIiCisiVGhlIG1haW4gaW50ZXJlc3Qgb2YgdGhvc2UgZmlsZXMgaXMgdG8gcHJvdmlkZSB0aGUgbWluaW1hbCB2ZXJzaW9uICIKKyJhc3NvY2lhdGVkIHRvIGVhY2ggc3ltYm9sIHByb3ZpZGVkIGJ5IHRoZSBsaWJyYXJpZXMuIFVzdWFsbHkgaXQgY29ycmVzcG9uZHMgIgorInRvIHRoZSBmaXJzdCB2ZXJzaW9uIG9mIHRoYXQgcGFja2FnZSB0aGF0IHByb3ZpZGVkIHRoZSBzeW1ib2wsIGJ1dCBpdCBjYW4gYmUgIgorIm1hbnVhbGx5IGluY3JlbWVudGVkIGJ5IHRoZSBtYWludGFpbmVyIGlmIHRoZSBBQkkgb2YgdGhlIHN5bWJvbCBpcyBleHRlbmRlZCAiCisid2l0aG91dCBicmVha2luZyBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eS4gSXQncyB0aGUgcmVzcG9uc2liaWxpdHkgb2YgdGhlICIKKyJtYWludGFpbmVyIHRvIGtlZXAgdGhvc2UgZmlsZXMgdXAtdG8tZGF0ZSBhbmQgYWNjdXJhdGUsIGJ1dCAiCisiQjxkcGtnLWdlbnN5bWJvbHM+IGhlbHBzIGhpbS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDIKK21zZ2lkICIiCisiV2hlbiB0aGUgZ2VuZXJhdGVkIHN5bWJvbHMgZmlsZXMgZGlmZmVyIGZyb20gdGhlIG1haW50YWluZXIgc3VwcGxpZWQgb25lLCAiCisiQjxkcGtnLWdlbnN5bWJvbHM+IHdpbGwgcHJpbnQgYSBkaWZmIGJldHdlZW4gdGhlIHR3byB2ZXJzaW9ucy4gIEZ1cnRoZXJtb3JlICIKKyJpZiB0aGUgZGlmZmVyZW5jZSBpcyB0b28gc2lnbmlmaWNhbnQsIGl0IHdpbGwgZXZlbiBmYWlsICh5b3UgY2FuIGN1c3RvbWl6ZSAiCisiaG93IG11Y2ggZGlmZmVyZW5jZSB5b3UgY2FuIHRvbGVyYXRlLCBzZWUgdGhlIEI8LWM+IG9wdGlvbikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0MgorIywgbm8td3JhcAorbXNnaWQgIk1BSU5UQUlOSU5HIFNZTUJPTFMgRklMRVMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NTUKK21zZ2lkICIiCisiVGhlIHN5bWJvbHMgZmlsZXMgYXJlIHJlYWxseSB1c2VmdWwgb25seSBpZiB0aGV5IHJlZmxlY3QgdGhlIGV2b2x1dGlvbiBvZiAiCisidGhlIHBhY2thZ2UgdGhyb3VnaCBzZXZlcmFsIHJlbGVhc2VzLiBUaHVzIHRoZSBtYWludGFpbmVyIGhhcyB0byB1cGRhdGUgdGhlbSAiCisiZXZlcnkgdGltZSB0aGF0IGEgbmV3IHN5bWJvbCBpcyBhZGRlZCBzbyB0aGF0IGl0cyBhc3NvY2lhdGVkIG1pbmltYWwgdmVyc2lvbiAiCisibWF0Y2hlcyByZWFsaXR5LiBUbyBkbyB0aGlzIHByb3Blcmx5IGhlIGNhbiB1c2UgdGhlIGRpZmZzIGNvbnRhaW5lZCBpbiB0aGUgIgorImJ1aWxkIGxvZ3MuIEluIG1vc3QgY2FzZXMsIHRoZSBkaWZmIGFwcGxpZXMgZGlyZWN0bHkgdG8gaGlzICIKKyJkZWJpYW4vSTxwYWNrYWdlPi5zeW1ib2xzIGZpbGUuIFRoYXQgc2FpZCwgZnVydGhlciB0d2Vha3MgYXJlIHVzdWFsbHkgIgorIm5lZWRlZDogaXQncyByZWNvbW1lbmRlZCBmb3IgZXhhbXBsZSB0byBkcm9wIHRoZSBEZWJpYW4gcmV2aXNpb24gZnJvbSB0aGUgIgorIm1pbmltYWwgdmVyc2lvbiBzbyB0aGF0IGJhY2twb3J0cyB3aXRoIGEgbG93ZXIgdmVyc2lvbiBudW1iZXIgYnV0IHRoZSBzYW1lICIKKyJ1cHN0cmVhbSB2ZXJzaW9uIHN0aWxsIHNhdGlzZnkgdGhlIGdlbmVyYXRlZCBkZXBlbmRlbmNpZXMuICBJZiB0aGUgRGViaWFuICIKKyJyZXZpc2lvbiBjYW4ndCBiZSBkcm9wcGVkIGJlY2F1c2UgdGhlIHN5bWJvbCByZWFsbHkgZ290IGFkZGVkIGJ5IHRoZSBEZWJpYW4gIgorInNwZWNpZmljIGNoYW5nZSwgdGhlbiBvbmUgc2hvdWxkIHN1ZmZpeCB0aGUgdmVyc2lvbiB3aXRoIFwiflwiLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo1OQorbXNnaWQgIiIKKyJCZWZvcmUgYXBwbHlpbmcgYW55IHBhdGNoIHRvIHRoZSBzeW1ib2xzIGZpbGUsIHRoZSBtYWludGFpbmVyIHNob3VsZCAiCisiZG91YmxlLWNoZWNrIHRoYXQgaXQncyBzYW5lLiBQdWJsaWMgc3ltYm9scyBhcmUgbm90IHN1cHBvc2VkIHRvIGRpc2FwcGVhciwgIgorInNvIHRoZSBwYXRjaCBzaG91bGQgaWRlYWxseSBvbmx5IGFkZCBuZXcgbGluZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjY0Cittc2dpZCAiIgorIk5vdGUgdGhhdCB5b3UgY2FuIHB1dCBjb21tZW50cyBpbiBzeW1ib2xzIGZpbGVzOiBhbnkgbGluZSB3aXRoICcjJyBhcyB0aGUgIgorImZpcnN0IGNoYXJhY3RlciBpcyBhIGNvbW1lbnQgZXhjZXB0IGlmIGl0IHN0YXJ0cyB3aXRoICcjaW5jbHVkZScgKHNlZSAiCisic2VjdGlvbiBCPFVzaW5nIGluY2x1ZGVzPikuIExpbmVzIHN0YXJ0aW5nIHdpdGggJyNNSVNTSU5HOicgYXJlIHNwZWNpYWwgIgorImNvbW1lbnRzIGRvY3VtZW50aW5nIHN5bWJvbHMgdGhhdCBoYXZlIGRpc2FwcGVhcmVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1nZW5zeW1ib2xzLjE6NjQKKyMsIG5vLXdyYXAKK21zZ2lkICJVc2luZyAjUEFDS0FHRSMgc3Vic3RpdHV0aW9uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjcyCittc2dpZCAiIgorIkluIHNvbWUgcmFyZSBjYXNlcywgdGhlIG5hbWUgb2YgdGhlIGxpYnJhcnkgdmFyaWVzIGJldHdlZW4gYXJjaGl0ZWN0dXJlcy4gICIKKyJUbyBhdm9pZCBoYXJkY29kaW5nIHRoZSBuYW1lIG9mIHRoZSBwYWNrYWdlIGluIHRoZSBzeW1ib2xzIGZpbGUsIHlvdSBjYW4gdXNlICIKKyJ0aGUgbWFya2VyIEk8I1BBQ0tBR0UjPi4gSXQgd2lsbCBiZSByZXBsYWNlZCBieSB0aGUgcmVhbCBwYWNrYWdlIG5hbWUgZHVyaW5nICIKKyJpbnN0YWxsYXRpb24gb2YgdGhlIHN5bWJvbHMgZmlsZXMuIENvbnRyYXJ5IHRvIHRoZSBJPCNNSU5WRVIjPiBtYXJrZXIsICIKKyJJPCNQQUNLQUdFIz4gd2lsbCBuZXZlciBhcHBlYXIgaW4gYSBzeW1ib2xzIGZpbGUgaW5zaWRlIGEgYmluYXJ5IHBhY2thZ2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLWdlbnN5bWJvbHMuMTo3MgorIywgbm8td3JhcAorbXNnaWQgIlVzaW5nIHN5bWJvbCB0YWdzIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjc5Cittc2dpZCAiIgorIlN5bWJvbCB0YWdnaW5nIGlzIHVzZWZ1bCBmb3IgbWFya2luZyBzeW1ib2xzIHRoYXQgYXJlIHNwZWNpYWwgaW4gc29tZSB3YXkuICAiCisiQW55IHN5bWJvbCBjYW4gaGF2ZSBhbiBhcmJpdHJhcnkgbnVtYmVyIG9mIHRhZ3MgYXNzb2NpYXRlZCB3aXRoIGl0LiBXaGlsZSAiCisiYWxsIHRhZ3MgYXJlIHBhcnNlZCBhbmQgc3RvcmVkLCBvbmx5IGEgc29tZSBvZiB0aGVtIGFyZSB1bmRlcnN0b29kIGJ5ICIKKyJCPGRwa2ctZ2Vuc3ltYm9scz4gYW5kIHRyaWdnZXIgc3BlY2lhbCBoYW5kbGluZyBvZiB0aGUgc3ltYm9scy4gU2VlICIKKyJzdWJzZWN0aW9uIEI8U3RhbmRhcmQgc3ltYm9sIHRhZ3M+IGZvciByZWZlcmVuY2Ugb2YgdGhlc2UgdGFncy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6OTEKK21zZ2lkICIiCisiVGFnIHNwZWNpZmljYXRpb24gY29tZXMgcmlnaHQgYmVmb3JlIHRoZSBzeW1ib2wgbmFtZSAobm8gd2hpdGVzcGFjZSBpcyAiCisiYWxsb3dlZCBpbiBiZXR3ZWVuKS4gSXQgYWx3YXlzIHN0YXJ0cyB3aXRoIGFuIG9wZW5pbmcgYnJhY2tldCBCPCg+LCBlbmRzICIKKyJ3aXRoIGEgY2xvc2luZyBicmFja2V0IEI8KT4gYW5kIG11c3QgY29udGFpbiBhdCBsZWFzdCBvbmUgdGFnLiBNdWx0aXBsZSB0YWdzICIKKyJhcmUgc2VwYXJhdGVkIGJ5IHRoZSBCPHw+IGNoYXJhY3Rlci4gRWFjaCB0YWcgY2FuIG9wdGlvbmFsbHkgaGF2ZSBhIHZhbHVlICIKKyJ3aGljaCBpcyBzZXBhcmF0ZWQgZm9ybSB0aGUgdGFnIG5hbWUgYnkgdGhlIEI8PT4gY2hhcmFjdGVyLiBUYWcgbmFtZXMgYW5kICIKKyJ2YWx1ZXMgY2FuIGJlIGFyYml0cmFyeSBzdHJpbmdzIGV4Y2VwdCB0aGV5IGNhbm5vdCBjb250YWluIGFueSBvZiB0aGUgIgorInNwZWNpYWwgQjwpPiBCPHw+IEI8PT4gY2hhcmFjdGVycy4gU3ltYm9sIG5hbWVzIGZvbGxvd2luZyBhIHRhZyAiCisic3BlY2lmaWNhdGlvbiBjYW4gb3B0aW9uYWxseSBiZSBxdW90ZWQgd2l0aCBlaXRoZXIgQjwnPiBvciBCPFwiPiBjaGFyYWN0ZXJzICIKKyJ0byBhbGxvdyB3aGl0ZXNwYWNlcyBpbiB0aGVtLiBIb3dldmVyLCBpZiB0aGVyZSBhcmUgbm8gdGFncyBzcGVjaWZpZWQgZm9yICIKKyJ0aGUgc3ltYm9sLCBxdW90ZXMgYXJlIHRyZWF0ZWQgYXMgcGFydCBvZiB0aGUgc3ltYm9sIG5hbWUgd2hpY2ggY29udGludWVzIHVwICIKKyJ1bnRpbCB0aGUgZmlyc3Qgc3BhY2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjk1CisjLCBuby13cmFwCittc2dpZCAiIgorIiAodGFnMT1pIGFtIG1hcmtlZHx0YWcgbmFtZSB3aXRoIHNwYWNlKVwidGFnZ2VkIHF1b3RlZCBzeW1ib2xcIkBCYXNlIDEuMFxuIgorIiAob3B0aW9uYWwpdGFnZ2VkX3VucXVvdGVkX3N5bWJvbEBCYXNlIDEuMCAxXG4iCisiIHVudGFnZ2VkX3N5bWJvbEBCYXNlIDEuMFxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjEwMQorbXNnaWQgIiIKKyJUaGUgZmlyc3Qgc3ltYm9sIGluIHRoZSBleGFtcGxlIGlzIG5hbWVkIEk8dGFnZ2VkIHF1b3RlZCBzeW1ib2w+IGFuZCBoYXMgdHdvICIKKyJ0YWdzOiBJPHRhZzE+IHdpdGggdmFsdWUgSTxpIGFtIG1hcmtlZD4gYW5kIEk8dGFnIG5hbWUgd2l0aCBzcGFjZT4gdGhhdCBoYXMgIgorIm5vIHZhbHVlLiBUaGUgc2Vjb25kIHN5bWJvbCBuYW1lZCBJPHRhZ2dlZF91bnF1b3RlZF9zeW1ib2w+IGlzIG9ubHkgdGFnZ2VkICIKKyJ3aXRoIHRoZSB0YWcgbmFtZWQgSTxvcHRpb25hbD4uIFRoZSBsYXN0IHN5bWJvbCBpcyBhbiBleGFtcGxlIG9mIHRoZSBub3JtYWwgIgorInVudGFnZ2VkIHN5bWJvbC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTEzCittc2dpZCAiIgorIlNpbmNlIHN5bWJvbCB0YWdzIGFyZSBhbiBleHRlbnNpb24gb2YgdGhlIEk8ZGViLXN5bWJvbHMoNSk+IGZvcm1hdCwgdGhleSBjYW4gIgorIm9ubHkgYmUgcGFydCBvZiB0aGUgc3ltYm9scyBmaWxlcyB1c2VkIGluIHNvdXJjZSBwYWNrYWdlcyAodGhvc2UgZmlsZXMgIgorInNob3VsZCB0aGVuIGJlIHNlZW4gYXMgdGVtcGxhdGVzIHVzZWQgdG8gYnVpbGQgdGhlIHN5bWJvbHMgZmlsZXMgdGhhdCBhcmUgIgorImVtYmVkZGVkIGluIGJpbmFyeSBwYWNrYWdlcykuIFdoZW4gQjxkcGtnLWdlbnN5bWJvbHM+IGlzIGNhbGxlZCB3aXRob3V0IHRoZSAiCisiSTwtdD4gb3B0aW9uLCBpdCB3aWxsIG91dHB1dCBzeW1ib2xzIGZpbGVzIGNvbXBhdGlibGUgdG8gdGhlICIKKyJJPGRlYi1zeW1ib2xzKDUpPiBmb3JtYXQ6IGl0IGZ1bGx5IHByb2Nlc3NlcyBzeW1ib2xzIGFjY29yZGluZyB0byB0aGUgIgorInJlcXVpcmVtZW50cyBvZiB0aGVpciBzdGFuZGFyZCB0YWdzIGFuZCBzdHJpcHMgYWxsIHRhZ3MgZnJvbSB0aGUgb3V0cHV0LiBPbiAiCisidGhlIGNvbnRyYXJ5LCBpbiB0ZW1wbGF0ZSBtb2RlIChJPC10PikgYWxsIHN5bWJvbHMgYW5kIHRoZWlyIHRhZ3MgKGJvdGggIgorInN0YW5kYXJkIGFuZCB1bmtub3duIG9uZXMpICBhcmUga2VwdCBpbiB0aGUgb3V0cHV0IGFuZCBhcmUgd3JpdHRlbiBpbiB0aGVpciAiCisib3JpZ2luYWwgZm9ybSBhcyB0aGV5IHdlcmUgbG9hZGVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1nZW5zeW1ib2xzLjE6MTEzCisjLCBuby13cmFwCittc2dpZCAiU3RhbmRhcmQgc3ltYm9sIHRhZ3MiCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjExNAorIywgbm8td3JhcAorbXNnaWQgIkI8b3B0aW9uYWw+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjEyNAorbXNnaWQgIiIKKyJBIHN5bWJvbCBtYXJrZWQgYXMgb3B0aW9uYWwgY2FuIGRpc2FwcGVhciBmcm9tIHRoZSBsaWJyYXJ5IGF0IGFueSB0aW1lIGFuZCAiCisidGhhdCB3aWxsIG5ldmVyIGNhdXNlIEI8ZHBrZy1nZW5zeW1ib2xzPiB0byBmYWlsLiBIb3dldmVyLCBkaXNhcHBlYXJlZCAiCisib3B0aW9uYWwgc3ltYm9scyB3aWxsIGNvbnRpbnVvdXNseSBhcHBlYXIgYXMgTUlTU0lORyBpbiB0aGUgZGlmZiBpbiBlYWNoIG5ldyAiCisicGFja2FnZSByZXZpc2lvbi4gIFRoaXMgYmVoYXZpb3VyIHNlcnZlcyBhcyBhIHJlbWluZGVyIGZvciB0aGUgbWFpbnRhaW5lciAiCisidGhhdCBzdWNoIGEgc3ltYm9sIG5lZWRzIHRvIGJlIHJlbW92ZWQgZnJvbSB0aGUgc3ltYm9sIGZpbGUgb3IgcmVhZGRlZCB0byAiCisidGhlIGxpYnJhcnkuIFdoZW4gdGhlIG9wdGlvbmFsIHN5bWJvbCwgd2hpY2ggd2FzIHByZXZpb3VzbHkgZGVjbGFyZWQgYXMgIgorIk1JU1NJTkcsIHN1ZGRlbmx5IHJlYXBwZWFycyBpbiB0aGUgbmV4dCByZXZpc2lvbiwgaXQgd2lsbCBiZSB1cGdyYWRlZCBiYWNrICIKKyJ0byB0aGUgXCJleGlzdGluZ1wiIHN0YXR1cyB3aXRoIGl0cyBtaW5pbXVtIHZlcnNpb24gdW5jaGFuZ2VkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToxMjkKK21zZ2lkICIiCisiVGhpcyB0YWcgaXMgdXNlZnVsIGZvciBzeW1ib2xzIHdoaWNoIGFyZSBwcml2YXRlIHdoZXJlIHRoZWlyIGRpc2FwcGVhcmFuY2UgIgorImRvIG5vdCBjYXVzZSBBQkkgYnJlYWthZ2UuIEZvciBleGFtcGxlLCBtb3N0IG9mIEMrKyB0ZW1wbGF0ZSBpbnN0YW50aWF0aW9ucyAiCisiZmFsbCBpbnRvIHRoaXMgY2F0ZWdvcnkuIExpa2UgYW55IG90aGVyIHRhZywgdGhpcyBvbmUgbWF5IGFsc28gaGF2ZSBhbiAiCisiYXJiaXRyYXJ5IHZhbHVlOiBpdCBjb3VsZCBiZSB1c2VkIHRvIGluZGljYXRlIHdoeSB0aGUgc3ltYm9sIGlzIGNvbnNpZGVyZWQgIgorIm9wdGlvbmFsLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTI5CisjLCBuby13cmFwCittc2dpZCAiQjxhcmNoPT5JPGFyY2hpdGVjdHVyZSBsaXN0PiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToxNDIKK21zZ2lkICIiCisiVGhpcyB0YWcgYWxsb3dzIG9uZSB0byByZXN0cmljdCB0aGUgc2V0IG9mIGFyY2hpdGVjdHVyZXMgd2hlcmUgdGhlIHN5bWJvbCBpcyAiCisic3VwcG9zZWQgdG8gZXhpc3QuIFdoZW4gdGhlIHN5bWJvbHMgbGlzdCBpcyB1cGRhdGVkIHdpdGggdGhlIHN5bWJvbHMgIgorImRpc2NvdmVyZWQgaW4gdGhlIGxpYnJhcnksIGFsbCBhcmNoLXNwZWNpZmljIHN5bWJvbHMgd2hpY2ggZG8gbm90IGNvbmNlcm4gIgorInRoZSBjdXJyZW50IGhvc3QgYXJjaGl0ZWN0dXJlIGFyZSB0cmVhdGVkIGFzIGlmIHRoZXkgZGlkIG5vdCBleGlzdC4gSWYgYW4gIgorImFyY2gtc3BlY2lmaWMgc3ltYm9sIG1hdGNoaW5nIHRoZSBjdXJyZW50IGhvc3QgYXJjaGl0ZWN0dXJlIGRvZXMgbm90IGV4aXN0ICIKKyJpbiB0aGUgbGlicmFyeSwgbm9ybWFsIHByb2NlZHVyZXMgZm9yIG1pc3Npbmcgc3ltYm9scyBhcHBseSBhbmQgaXQgbWF5IGNhdXNlICIKKyJCPGRwa2ctZ2Vuc3ltYm9scz4gdG8gZmFpbC4gT24gdGhlIG90aGVyIGhhbmQsIGlmIHRoZSBhcmNoLXNwZWNpZmljIHN5bWJvbCAiCisiaXMgZm91bmQgd2hlbiBpdCB3YXMgbm90IHN1cHBvc2VkIHRvIGV4aXN0IChiZWNhdXNlIHRoZSBjdXJyZW50IGhvc3QgIgorImFyY2hpdGVjdHVyZSBpcyBub3QgbGlzdGVkIGluIHRoZSB0YWcpLCBpdCBpcyBtYWRlIGFyY2ggbmV1dHJhbCAoaS5lLiB0aGUgIgorImFyY2ggdGFnIGlzIGRyb3BwZWQgYW5kIHRoZSBzeW1ib2wgd2lsbCBhcHBlYXIgaW4gdGhlIGRpZmYgZHVlIHRvIHRoaXMgIgorImNoYW5nZSksIGJ1dCBpdCBpcyBub3QgY29uc2lkZXJlZCBhcyBuZXcuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjE0OAorbXNnaWQgIiIKKyJXaGVuIG9wZXJhdGluZyBpbiB0aGUgZGVmYXVsdCBub24tdGVtcGxhdGUgbW9kZSwgYW1vbmcgYXJjaC1zcGVjaWZpYyBzeW1ib2xzICIKKyJvbmx5IHRob3NlIHRoYXQgbWF0Y2ggdGhlIGN1cnJlbnQgaG9zdCBhcmNoaXRlY3R1cmUgYXJlIHdyaXR0ZW4gdG8gdGhlICIKKyJzeW1ib2xzIGZpbGUuIE9uIHRoZSBjb250cmFyeSwgYWxsIGFyY2gtc3BlY2lmaWMgc3ltYm9scyAoaW5jbHVkaW5nIHRob3NlICIKKyJmcm9tIGZvcmVpZ24gYXJjaGVzKSBhcmUgYWx3YXlzIHdyaXR0ZW4gdG8gdGhlIHN5bWJvbCBmaWxlIHdoZW4gb3BlcmF0aW5nIGluICIKKyJ0ZW1wbGF0ZSBtb2RlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToxNTQKK21zZ2lkICIiCisiVGhlIGZvcm1hdCBvZiBJPGFyY2hpdGVjdHVyZSBsaXN0PiBpcyB0aGUgc2FtZSBhcyB0aGUgb25lIHVzZWQgaW4gdGhlICIKKyJJPEJ1aWxkLURlcGVuZHM+IGZpZWxkIG9mIEk8ZGViaWFuL2NvbnRyb2w+IChleGNlcHQgdGhlIGVuY2xvc2luZyBzcXVhcmUgIgorImJyYWNrZXRzIFtdKS4gRm9yIGV4YW1wbGUsIHRoZSBmaXJzdCBzeW1ib2wgZnJvbSB0aGUgbGlzdCBiZWxvdyB3aWxsIGJlICIKKyJjb25zaWRlcmVkIG9ubHkgb24gYWxwaGEsIGFtZDY0LCBrZnJlZWJzZC1hbWQ2NCBhbmQgaWE2NCBhcmNoaXRlY3R1cmVzIHdoaWxlICIKKyJ0aGUgc2Vjb25kIG9uZSBhbnl3aGVyZSBleGNlcHQgb24gYXJtZWwuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjE1NworIywgbm8td3JhcAorbXNnaWQgIiIKKyIgKGFyY2g9YWxwaGEgYW1kNjQga2ZyZWVic2QtYW1kNjQgaWE2NClhXzY0Yml0X3NwZWNpZmljX3N5bWJvbEBCYXNlIDEuMFxuIgorIiAoYXJjaD0hYXJtZWwpc3ltYm9sX2FybWVsX2RvZXNfbm90X2hhdmVAQmFzZSAxLjBcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTU3CisjLCBuby13cmFwCittc2dpZCAiQjxpZ25vcmUtYmxhY2tsaXN0PiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToxNjUKK21zZ2lkICIiCisiZHBrZy1nZW5zeW1ib2xzIGhhcyBhbiBpbnRlcm5hbCBibGFja2xpc3Qgb2Ygc3ltYm9scyB0aGF0IHNob3VsZCBub3QgYXBwZWFyICIKKyJpbiBzeW1ib2xzIGZpbGVzIGFzIHRoZXkgYXJlIHVzdWFsbHkgb25seSBzaWRlLWVmZmVjdHMgb2YgaW1wbGVtZW50YXRpb24gIgorImRldGFpbHMgb2YgdGhlIHRvb2xjaGFpbi4gSWYgZm9yIHNvbWUgcmVhc29uLCB5b3UgcmVhbGx5IHdhbnQgb25lIG9mIHRob3NlICIKKyJzeW1ib2xzIHRvIGJlIGluY2x1ZGVkIGluIHRoZSBzeW1ib2xzIGZpbGUsIHlvdSBzaG91bGQgdGFnIHRoZSBzeW1ib2wgd2l0aCAiCisiQjxpZ25vcmUtYmxhY2tsaXN0Pi4gSXQgY2FuIGJlIG5lY2Vzc2FyeSBmb3Igc29tZSBsb3cgbGV2ZWwgdG9vbGNoYWluICIKKyJsaWJyYXJpZXMgbGlrZSBsaWJnY2MuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbnN5bWJvbHMuMToxNjUgZHBrZy1nZW5zeW1ib2xzLjE6MjAyCisjLCBuby13cmFwCittc2dpZCAiQjxjKys+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjE2OQorbXNnaWQgIiIKKyJEZW5vdGVzIEk8YysrPiBzeW1ib2wgcGF0dGVybi4gU2VlIEI8VXNpbmcgc3ltYm9sIHBhdHRlcm5zPiBzdWJzZWN0aW9uICIKKyJiZWxvdy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjE2OSBkcGtnLWdlbnN5bWJvbHMuMToyMzMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHN5bXZlcj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTczCittc2dpZCAiIgorIkRlbm90ZXMgSTxzeW12ZXI+IChzeW1ib2wgdmVyc2lvbikgc3ltYm9sIHBhdHRlcm4uIFNlZSBCPFVzaW5nIHN5bWJvbCAiCisicGF0dGVybnM+IHN1YnNlY3Rpb24gYmVsb3cuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbnN5bWJvbHMuMToxNzMgZHBrZy1nZW5zeW1ib2xzLjE6MjU4CisjLCBuby13cmFwCittc2dpZCAiQjxyZWdleD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTc3Cittc2dpZCAiIgorIkRlbm90ZXMgSTxyZWdleD4gc3ltYm9sIHBhdHRlcm4uIFNlZSBCPFVzaW5nIHN5bWJvbCBwYXR0ZXJucz4gc3Vic2VjdGlvbiAiCisiYmVsb3cuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLWdlbnN5bWJvbHMuMToxNzcKKyMsIG5vLXdyYXAKK21zZ2lkICJVc2luZyBzeW1ib2wgcGF0dGVybnMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTg1Cittc2dpZCAiIgorIlVubGlrZSBhIHN0YW5kYXJkIHN5bWJvbCBzcGVjaWZpY2F0aW9uLCBhIHBhdHRlcm4gbWF5IGNvdmVyIG11bHRpcGxlIHJlYWwgIgorInN5bWJvbHMgZnJvbSB0aGUgbGlicmFyeS4gQjxkcGtnLWdlbnN5bWJvbHM+IHdpbGwgYXR0ZW1wdCB0byBtYXRjaCBlYWNoICIKKyJwYXR0ZXJuIGFnYWluc3QgZWFjaCByZWFsIHN5bWJvbCB0aGF0IGRvZXMgSTxub3Q+IGhhdmUgYSBzcGVjaWZpYyBzeW1ib2wgIgorImNvdW50ZXJwYXJ0IGRlZmluZWQgaW4gdGhlIHN5bWJvbCBmaWxlLiBXaGVuZXZlciB0aGUgZmlyc3QgbWF0Y2hpbmcgcGF0dGVybiAiCisiaXMgZm91bmQsIGFsbCBpdHMgdGFncyBhbmQgcHJvcGVydGllcyB3aWxsIGJlIHVzZWQgYXMgYSBiYXNpcyBzcGVjaWZpY2F0aW9uICIKKyJvZiB0aGUgc3ltYm9sLiBJZiBub25lIG9mIHRoZSBwYXR0ZXJucyBtYXRjaGVzLCB0aGUgc3ltYm9sIHdpbGwgYmUgIgorImNvbnNpZGVyZWQgYXMgbmV3LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToxOTMKK21zZ2lkICIiCisiQSBwYXR0ZXJuIGlzIGNvbnNpZGVyZWQgbG9zdCBpZiBpdCBkb2VzIG5vdCBtYXRjaCBhbnkgc3ltYm9sIGluIHRoZSAiCisibGlicmFyeS4gQnkgZGVmYXVsdCB0aGlzIHdpbGwgdHJpZ2dlciBhIEI8ZHBrZy1nZW5zeW1ib2xzPiBmYWlsdXJlIHVuZGVyICIKKyJJPC1jMT4gb3IgaGlnaGVyIGxldmVsLiBIb3dldmVyLCBpZiB0aGUgZmFpbHVyZSBpcyB1bmRlc2lyZWQsIHRoZSBwYXR0ZXJuICIKKyJtYXkgYmUgbWFya2VkIHdpdGggdGhlIEk8b3B0aW9uYWw+IHRhZy4gVGhlbiBpZiB0aGUgcGF0dGVybiBkb2VzIG5vdCBtYXRjaCAiCisiYW55dGhpbmcsIGl0IHdpbGwgb25seSBhcHBlYXIgaW4gdGhlIGRpZmYgYXMgTUlTU0lORy4gTW9yZW92ZXIsIGxpa2UgYW55ICIKKyJzeW1ib2wsIHRoZSBwYXR0ZXJuIG1heSBiZSBsaW1pdGVkIHRvIHRoZSBzcGVjaWZpYyBhcmNoaXRlY3R1cmVzIHdpdGggdGhlICIKKyJJPGFyY2g+IHRhZy4gUGxlYXNlIHJlZmVyIHRvIEI8U3RhbmRhcmQgc3ltYm9sIHRhZ3M+IHN1YnNlY3Rpb24gYWJvdmUgZm9yICIKKyJtb3JlIGluZm9ybWF0aW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyMDAKK21zZ2lkICIiCisiUGF0dGVybnMgYXJlIGFuIGV4dGVuc2lvbiBvZiB0aGUgSTxkZWItc3ltYm9scyg1KT4gZm9ybWF0IGhlbmNlIHRoZXkgYXJlICIKKyJvbmx5IHZhbGlkIGluIHN5bWJvbCBmaWxlIHRlbXBsYXRlcy4gUGF0dGVybiBzcGVjaWZpY2F0aW9uIHN5bnRheCBpcyBub3QgYW55ICIKKyJkaWZmZXJlbnQgZnJvbSB0aGUgb25lIG9mIGEgc3BlY2lmaWMgc3ltYm9sLiBIb3dldmVyLCBzeW1ib2wgbmFtZSBwYXJ0IG9mICIKKyJ0aGUgc3BlY2lmaWNhdGlvbiBzZXJ2ZXMgYXMgYW4gZXhwcmVzc2lvbiB0byBiZSBtYXRjaGVkIGFnYWluc3QgIgorIkk8bmFtZUB2ZXJzaW9uPiBvZiB0aGUgcmVhbCBzeW1ib2wuIEluIG9yZGVyIHRvIGRpc3Rpbmd1aXNoIGFtb25nIGRpZmZlcmVudCAiCisicGF0dGVybiB0eXBlcywgYSBwYXR0ZXJuIHdpbGwgdHlwaWNhbGx5IGJlIHRhZ2dlZCB3aXRoIGEgc3BlY2lhbCB0YWcuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjIwMgorbXNnaWQgIkF0IHRoZSBtb21lbnQsIEI8ZHBrZy1nZW5zeW1ib2xzPiBzdXBwb3J0cyB0aHJlZSBiYXNpYyBwYXR0ZXJuIHR5cGVzOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyMTQKK21zZ2lkICIiCisiVGhpcyBwYXR0ZXJuIGlzIGRlbm90ZWQgYnkgdGhlIEk8YysrPiB0YWcuIEl0IG1hdGNoZXMgb25seSBDKysgc3ltYm9scyBieSAiCisidGhlaXIgZGVtYW5nbGVkIHN5bWJvbCBuYW1lIChhcyBlbWl0dGVkIGJ5IEI8YysrZmlsdD4oMSkgdXRpbGl0eSkuIFRoaXMgIgorInBhdHRlcm4gaXMgdmVyeSBoYW5keSBmb3IgbWF0Y2hpbmcgc3ltYm9scyB3aGljaCBtYW5nbGVkIG5hbWVzIG1pZ2h0IHZhcnkgIgorImFjcm9zcyBkaWZmZXJlbnQgYXJjaGl0ZWN0dXJlcyB3aGlsZSB0aGVpciBkZW1hbmdsZWQgbmFtZXMgcmVtYWluIHRoZSAiCisic2FtZS4gT25lIGdyb3VwIG9mIHN1Y2ggc3ltYm9scyBpcyBJPG5vbi12aXJ0dWFsIHRodW5rcz4gd2hpY2ggaGF2ZSAiCisiYXJjaGl0ZWN0dXJlIHNwZWNpZmljIG9mZnNldHMgZW1iZWRkZWQgaW4gdGhlaXIgbWFuZ2xlZCBuYW1lcy4gQSBjb21tb24gIgorImluc3RhbmNlIG9mIHRoaXMgY2FzZSBpcyBhIHZpcnR1YWwgZGVzdHJ1Y3RvciB3aGljaCB1bmRlciBkaWFtb25kICIKKyJpbmhlcml0YW5jZSBuZWVkcyBhIG5vbi12aXJ0dWFsIHRodW5rIHN5bWJvbC4gRm9yIGV4YW1wbGUsIGV2ZW4gaWYgIgorIl9aVGhuOF9OM05TQjZDbGFzc0REMUV2QEJhc2Ugb24gMzJiaXQgYXJjaGl0ZWN0dXJlcyB3aWxsIHByb2JhYmx5IGJlICIKKyJfWlRobjE2X04zTlNCNkNsYXNzREQxRXZAQmFzZSBvbiA2NGJpdCBvbmVzLCBpdCBjYW4gYmUgbWF0Y2hlZCB3aXRoIGEgc2luZ2xlICIKKyJJPGMrKz4gcGF0dGVybjoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjIwCisjLCBuby13cmFwCittc2dpZCAiIgorImxpYmR1bW15LnNvLjEgbGliZHVtbXkxICNNSU5WRVIjXG4iCisiIFsuLi5dXG4iCisiIChjKyspXCJub24tdmlydHVhbCB0aHVuayB0byBOU0I6OkNsYXNzRDo6fkNsYXNzRCgpQEJhc2VcIiAxLjBcbiIKKyIgWy4uLl1cbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyMjIKK21zZ2lkICJUaGUgZGVtYW5nbGVkIG5hbWUgYWJvdmUgY2FuIGJlIG9idGFpbmVkIGJ5IGV4ZWN1dGluZyB0aGUgZm9sbG93aW5nIGNvbW1hbmQ6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjIyNAorIywgbm8td3JhcAorbXNnaWQgIiAkIGVjaG8gJ19aVGhuOF9OM05TQjZDbGFzc0REMUV2QEJhc2UnIHwgYysrZmlsdFxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjIzMgorbXNnaWQgIiIKKyJQbGVhc2Ugbm90ZSB0aGF0IHdoaWxlIG1hbmdsZWQgbmFtZSBpcyB1bmlxdWUgaW4gdGhlIGxpYnJhcnkgYnkgZGVmaW5pdGlvbiwgIgorInRoaXMgaXMgbm90IG5lY2Vzc2FyaWx5IHRydWUgZm9yIGRlbWFuZ2xlZCBuYW1lcy4gQSBjb3VwbGUgb2YgZGlzdGluY3QgcmVhbCAiCisic3ltYm9scyBtYXkgaGF2ZSB0aGUgc2FtZSBkZW1hbmdsZWQgbmFtZS4gRm9yIGV4YW1wbGUsIHRoYXQncyB0aGUgY2FzZSB3aXRoICIKKyJub24tdmlydHVhbCB0aHVuayBzeW1ib2xzIGluIGNvbXBsZXggaW5oZXJpdGFuY2UgY29uZmlndXJhdGlvbnMgb3Igd2l0aCBtb3N0ICIKKyJjb25zdHJ1Y3RvcnMgYW5kIGRlc3RydWN0b3JzIChzaW5jZSBnKysgdHlwaWNhbGx5IGdlbmVyYXRlcyB0d28gcmVhbCBzeW1ib2xzICIKKyJmb3IgdGhlbSkuIEhvd2V2ZXIsIGFzIHRoZXNlIGNvbGxpc2lvbnMgaGFwcGVuIG9uIHRoZSBBQkkgbGV2ZWwsIHRoZXkgc2hvdWxkICIKKyJub3QgZGVncmFkZSBxdWFsaXR5IG9mIHRoZSBzeW1ib2wgZmlsZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjM5Cittc2dpZCAiIgorIlRoaXMgcGF0dGVybiBpcyBkZW5vdGVkIGJ5IHRoZSBJPHN5bXZlcj4gdGFnLiBXZWxsIG1haW50YWluZWQgbGlicmFyaWVzIGhhdmUgIgorInZlcnNpb25lZCBzeW1ib2xzIHdoZXJlIGVhY2ggdmVyc2lvbiBjb3JyZXNwb25kcyB0byB0aGUgdXBzdHJlYW0gdmVyc2lvbiAiCisid2hlcmUgdGhlIHN5bWJvbCBnb3QgYWRkZWQuIElmIHRoYXQncyB0aGUgY2FzZSwgeW91IGNhbiB1c2UgYSBJPHN5bXZlcj4gIgorInBhdHRlcm4gdG8gbWF0Y2ggYW55IHN5bWJvbCBhc3NvY2lhdGVkIHRvIHRoZSBzcGVjaWZpYyB2ZXJzaW9uLiBGb3IgZXhhbXBsZToiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjQ2CisjLCBuby13cmFwCittc2dpZCAiIgorImxpYmMuc28uNiBsaWJjNiAjTUlOVkVSI1xuIgorIiAoc3ltdmVyKUdMSUJDXzIuMCAyLjBcbiIKKyIgWy4uLl1cbiIKKyIgKHN5bXZlcilHTElCQ18yLjcgMi43XG4iCisiIGFjY2Vzc0BHTElCQ18yLjAgMi4yXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjUyCittc2dpZCAiIgorIkFsbCBzeW1ib2xzIGFzc29jaWF0ZWQgd2l0aCB2ZXJzaW9ucyBHTElCQ18yLjAgYW5kIEdMSUJDXzIuNyB3aWxsIGxlYWQgdG8gIgorIm1pbmltYWwgdmVyc2lvbiBvZiAyLjAgYW5kIDIuNyByZXNwZWN0aXZlbHkgd2l0aCB0aGUgZXhjZXB0aW9uIG9mIHRoZSBzeW1ib2wgIgorImFjY2Vzc0BHTElCQ18yLjAuIFRoZSBsYXR0ZXIgd2lsbCBsZWFkIHRvIGEgbWluaW1hbCBkZXBlbmRlbmN5IG9uIGxpYmM2ICIKKyJ2ZXJzaW9uIDIuMiBkZXNwaXRlIGJlaW5nIGluIHRoZSBzY29wZSBvZiB0aGUgXCIoc3ltdmVyKUdMSUJDXzIuMFwiIHBhdHRlcm4gIgorImJlY2F1c2Ugc3BlY2lmaWMgc3ltYm9scyB0YWtlIHByZWNlZGVuY2Ugb3ZlciBwYXR0ZXJucy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjU3Cittc2dpZCAiIgorIlBsZWFzZSBub3RlIHRoYXQgd2hpbGUgb2xkIHN0eWxlIHdpbGRjYXJkIHBhdHRlcm5zIChkZW5vdGVkIGJ5IFwiKkB2ZXJzaW9uXCIgIgorImluIHRoZSBzeW1ib2wgbmFtZSBmaWVsZCkgYXJlIHN0aWxsIHN1cHBvcnRlZCwgdGhleSBoYXZlIGJlZW4gZGVwcmVjYXRlZCBieSAiCisibmV3IHN0eWxlIHN5bnRheCBcIihzeW12ZXJ8b3B0aW9uYWwpdmVyc2lvblwiLiBGb3IgZXhhbXBsZSwgXCIqQEdMSUJDXzIuMCAiCisiMi4wXCIgc2hvdWxkIGJlIHdyaXR0ZW4gYXMgXCIoc3ltdmVyfG9wdGlvbmFsKUdMSUJDXzIuMCAyLjBcIiBpZiB0aGUgc2FtZSAiCisiYmVoYXZpb3VyIGlzIG5lZWRlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjY1Cittc2dpZCAiIgorIlJlZ3VsYXIgZXhwcmVzc2lvbiBwYXR0ZXJucyBhcmUgZGVub3RlZCBieSB0aGUgSTxyZWdleD4gdGFnLiBUaGV5IG1hdGNoIGJ5ICIKKyJ0aGUgcGVybCByZWd1bGFyIGV4cHJlc3Npb24gc3BlY2lmaWVkIGluIHRoZSBzeW1ib2wgbmFtZSBmaWVsZC4gQSByZWd1bGFyICIKKyJleHByZXNzaW9uIGlzIG1hdGNoZWQgYXMgaXQgaXMsIHRoZXJlZm9yZSBkbyBub3QgZm9yZ2V0IHRvIHN0YXJ0IGl0IHdpdGggdGhlICIKKyJJPF4+IGNoYXJhY3RlciBvciBpdCBtYXkgbWF0Y2ggYW55IHBhcnQgb2YgdGhlIHJlYWwgc3ltYm9sIEk8bmFtZUB2ZXJzaW9uPiAiCisic3RyaW5nLiBGb3IgZXhhbXBsZToiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjcwCisjLCBuby13cmFwCittc2dpZCAiIgorImxpYmR1bW15LnNvLjEgbGliZHVtbXkxICNNSU5WRVIjXG4iCisiIChyZWdleClcIl5teXN0YWNrXy4qQEJhc2UkXCIgMS4wXG4iCisiIChyZWdleHxvcHRpb25hbClcInByaXZhdGVcIiAxLjBcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyNzUKK21zZ2lkICIiCisiU3ltYm9scyBsaWtlIFwibXlzdGFja19uZXdAQmFzZVwiLCBcIm15c3RhY2tfcHVzaEBCYXNlXCIsICIKKyJcIm15c3RhY2tfcG9wQEJhc2VcIiBldGMuICB3aWxsIGJlIG1hdGNoZWQgYnkgdGhlIGZpcnN0IHBhdHRlcm4gd2hpbGUgIgorImUuZy4gXCJuZ19teXN0YWNrX25ld0BCYXNlXCIgd29uJ3QuICBUaGUgc2Vjb25kIHBhdHRlcm4gd2lsbCBtYXRjaCBhbGwgIgorInN5bWJvbHMgaGF2aW5nIHRoZSBzdHJpbmcgXCJwcml2YXRlXCIgaW4gdGhlaXIgbmFtZXMgYW5kIG1hdGNoZXMgd2lsbCAiCisiaW5oZXJpdCBJPG9wdGlvbmFsPiB0YWcgZnJvbSB0aGUgcGF0dGVybi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjgwCittc2dpZCAiIgorIkJhc2ljIHBhdHRlcm5zIGxpc3RlZCBhYm92ZSBjYW4gYmUgY29tYmluZWQgd2hlcmUgaXQgbWFrZXMgc2Vuc2UuIEluIHRoYXQgIgorImNhc2UsIHRoZXkgYXJlIHByb2Nlc3NlZCBpbiB0aGUgb3JkZXIgaW4gd2hpY2ggdGhlIHRhZ3MgYXJlIHNwZWNpZmllZC4gRm9yICIKKyJleGFtcGxlLCBib3RoIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjI4MworIywgbm8td3JhcAorbXNnaWQgIiIKKyIgKGMrK3xyZWdleClcIl5OU0E6OkNsYXNzQTo6UHJpdmF0ZTo6cHJpdm1ldGhvZFxcZWRcXGUoaW50XFxlKUBCYXNlXCIgMS4wXG4iCisiIChyZWdleHxjKyspTjNOU0E2Q2xhc3NBN1ByaXZhdGUxMXByaXZtZXRob2RcXGVkRWlAQmFzZSAxLjBcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyOTMKK21zZ2lkICIiCisid2lsbCBtYXRjaCBzeW1ib2xzIFwiX1pOM05TQTZDbGFzc0E3UHJpdmF0ZTExcHJpdm1ldGhvZDFFaUBCYXNlXCIgYW5kICIKKyJcIl9aTjNOU0E2Q2xhc3NBN1ByaXZhdGUxMXByaXZtZXRob2QyRWlAQmFzZVwiLiBXaGVuIG1hdGNoaW5nIHRoZSBmaXJzdCAiCisicGF0dGVybiwgdGhlIHJhdyBzeW1ib2wgaXMgZmlyc3QgZGVtYW5nbGVkIGFzIEMrKyBzeW1ib2wsIHRoZW4gdGhlIGRlbWFuZ2xlZCAiCisibmFtZSBpcyBtYXRjaGVkIGFnYWluc3QgdGhlIHJlZ3VsYXIgZXhwcmVzc2lvbi4gT24gdGhlIG90aGVyIGhhbmQsIHdoZW4gIgorIm1hdGNoaW5nIHRoZSBzZWNvbmQgcGF0dGVybiwgcmVndWxhciBleHByZXNzaW9uIGlzIG1hdGNoZWQgYWdhaW5zdCB0aGUgcmF3ICIKKyJzeW1ib2wgbmFtZSwgdGhlbiB0aGUgc3ltYm9sIGlzIHRlc3RlZCBpZiBpdCBpcyBDKysgb25lIGJ5IGF0dGVtcHRpbmcgdG8gIgorImRlbWFuZ2xlIGl0LiBBIGZhaWx1cmUgb2YgYW55IGJhc2ljIHBhdHRlcm4gd2lsbCByZXN1bHQgaW4gdGhlIGZhaWx1cmUgb2YgIgorInRoZSB3aG9sZSBwYXR0ZXJuLiAgVGhlcmVmb3JlLCBmb3IgZXhhbXBsZSwgIgorIlwiX19OM05TQTZDbGFzc0E3UHJpdmF0ZTExcHJpdm1ldGhvZFxcZWRFaUBCYXNlXCIgd2lsbCBub3QgbWF0Y2ggZWl0aGVyIG9mICIKKyJ0aGUgcGF0dGVybnMgYmVjYXVzZSBpdCBpcyBub3QgYSB2YWxpZCBDKysgc3ltYm9sLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyOTkKK21zZ2lkICIiCisiSW4gZ2VuZXJhbCwgYWxsIHBhdHRlcm5zIGFyZSBkaXZpZGVkIGludG8gdHdvIGdyb3VwczogYWxpYXNlcyAoYmFzaWMgSTxjKys+ICIKKyJhbmQgSTxzeW12ZXI+KSBhbmQgZ2VuZXJpYyBwYXR0ZXJucyAoSTxyZWdleD4sIGFsbCBjb21iaW5hdGlvbnMgb2YgbXVsdGlwbGUgIgorImJhc2ljIHBhdHRlcm5zKS4gTWF0Y2hpbmcgb2YgYmFzaWMgYWxpYXMtYmFzZWQgcGF0dGVybnMgaXMgZmFzdCAoTygxKSkgICIKKyJ3aGlsZSBnZW5lcmljIHBhdHRlcm5zIGFyZSBPKE4pIChOIC0gZ2VuZXJpYyBwYXR0ZXJuIGNvdW50KSBmb3IgZWFjaCAiCisic3ltYm9sLiAgVGhlcmVmb3JlLCBpdCBpcyByZWNvbW1lbmRlZCBub3QgdG8gb3ZlcnVzZSBnZW5lcmljIHBhdHRlcm5zLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozMDYKK21zZ2lkICIiCisiV2hlbiBtdWx0aXBsZSBwYXR0ZXJucyBtYXRjaCB0aGUgc2FtZSByZWFsIHN5bWJvbCwgYWxpYXNlcyAoZmlyc3QgSTxjKys+LCAiCisidGhlbiBJPHN5bXZlcj4pIGFyZSBwcmVmZXJyZWQgb3ZlciBnZW5lcmljIHBhdHRlcm5zLiBHZW5lcmljIHBhdHRlcm5zIGFyZSAiCisibWF0Y2hlZCBpbiB0aGUgb3JkZXIgdGhleSBhcmUgZm91bmQgaW4gdGhlIHN5bWJvbCBmaWxlIHRlbXBsYXRlIHVudGlsIHRoZSAiCisiZmlyc3Qgc3VjY2Vzcy4gIFBsZWFzZSBub3RlLCBob3dldmVyLCB0aGF0IG1hbnVhbCByZW9yZGVyaW5nIG9mIHRlbXBsYXRlICIKKyJmaWxlIGVudHJpZXMgaXMgbm90IHJlY29tbWVuZGVkIGJlY2F1c2UgQjxkcGtnLWdlbnN5bWJvbHM+IGdlbmVyYXRlcyBkaWZmcyAiCisiYmFzZWQgb24gdGhlIGFscGhhbnVtZXJpY2FsIG9yZGVyIG9mIHRoZWlyIG5hbWVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1nZW5zeW1ib2xzLjE6MzA2CisjLCBuby13cmFwCittc2dpZCAiVXNpbmcgaW5jbHVkZXMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzExCittc2dpZCAiIgorIldoZW4gdGhlIHNldCBvZiBleHBvcnRlZCBzeW1ib2xzIGRpZmZlciBiZXR3ZWVuIGFyY2hpdGVjdHVyZXMsIGl0IG1heSBiZWNvbWUgIgorImluZWZmaWNpZW50IHRvIHVzZSBhIHNpbmdsZSBzeW1ib2wgZmlsZS4gSW4gdGhvc2UgY2FzZXMsIGFuIGluY2x1ZGUgIgorImRpcmVjdGl2ZSBtYXkgcHJvdmUgdG8gYmUgdXNlZnVsIGluIGEgY291cGxlIG9mIHdheXM6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjMxNQorbXNnaWQgIiIKKyJZb3UgY2FuIGZhY3Rvcml6ZSB0aGUgY29tbW9uIHBhcnQgaW4gc29tZSBleHRlcm5hbCBmaWxlIGFuZCBpbmNsdWRlIHRoYXQgIgorImZpbGUgaW4geW91ciBJPHBhY2thZ2U+LnN5bWJvbHMuSTxhcmNoPiBmaWxlIGJ5IHVzaW5nIGFuIGluY2x1ZGUgZGlyZWN0aXZlICIKKyJsaWtlIHRoaXM6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjMxNworbXNnaWQgIiNpbmNsdWRlIFwiSTxwYWNrYWdlcz4uc3ltYm9scy5jb21tb25cIiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozMTkKK21zZ2lkICJUaGUgaW5jbHVkZSBkaXJlY3RpdmUgbWF5IGFsc28gYmUgdGFnZ2VkIGxpa2UgYW55IHN5bWJvbDoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzIxCittc2dpZCAiKHRhZ3wuLnx0YWdOKSNpbmNsdWRlIFwiZmlsZS10by1pbmNsdWRlXCIiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzI2Cittc2dpZCAiIgorIkFzIGEgcmVzdWx0LCBhbGwgc3ltYm9scyBpbmNsdWRlZCBmcm9tIEk8ZmlsZS10by1pbmNsdWRlPiB3aWxsIGJlIGNvbnNpZGVyZWQgIgorInRvIGJlIHRhZ2dlZCB3aXRoIEk8dGFnPiAuLiBJPHRhZ04+IGJ5IGRlZmF1bHQuIFlvdSBjYW4gdXNlIHRoaXMgZmVhdHVyZSB0byAiCisiY3JlYXRlIGEgY29tbW9uIEk8cGFja2FnZT4uc3ltYm9scyBmaWxlIHdoaWNoIGluY2x1ZGVzIGFyY2hpdGVjdHVyZSBzcGVjaWZpYyAiCisic3ltYm9sIGZpbGVzOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozMzEKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiICBjb21tb25fc3ltYm9sMUBCYXNlIDEuMFxuIgorIiAoYXJjaD1hbWQ2NCBpYTY0IGFscGhhKSNpbmNsdWRlIFwicGFja2FnZS5zeW1ib2xzLjY0Yml0XCJcbiIKKyIgKGFyY2g9IWFtZDY0ICFpYTY0ICFhbHBoYSkjaW5jbHVkZSBcInBhY2thZ2Uuc3ltYm9scy4zMmJpdFwiXG4iCisiICBjb21tb25fc3ltYm9sMkBCYXNlIDEuMFxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM0MAorbXNnaWQgIiIKKyJUaGUgc3ltYm9scyBmaWxlcyBhcmUgcmVhZCBsaW5lIGJ5IGxpbmUsIGFuZCBpbmNsdWRlIGRpcmVjdGl2ZXMgYXJlICIKKyJwcm9jZXNzZWQgYXMgc29vbiBhcyB0aGV5IGFyZSBlbmNvdW50ZXJlZC4gVGhpcyBtZWFucyB0aGF0IHRoZSBjb250ZW50IG9mICIKKyJ0aGUgaW5jbHVkZWQgZmlsZSBjYW4gb3ZlcnJpZGUgYW55IGNvbnRlbnQgdGhhdCBhcHBlYXJlZCBiZWZvcmUgdGhlIGluY2x1ZGUgIgorImRpcmVjdGl2ZSBhbmQgdGhhdCBhbnkgY29udGVudCBhZnRlciB0aGUgZGlyZWN0aXZlIGNhbiBvdmVycmlkZSBhbnl0aGluZyAiCisiY29udGFpbmVkIGluIHRoZSBpbmNsdWRlZCBmaWxlLiBBbnkgc3ltYm9sIChvciBldmVuIGFub3RoZXIgI2luY2x1ZGUgIgorImRpcmVjdGl2ZSkgaW4gdGhlIGluY2x1ZGVkIGZpbGUgY2FuIHNwZWNpZnkgYWRkaXRpb25hbCB0YWdzIG9yIG92ZXJyaWRlICIKKyJ2YWx1ZXMgb2YgdGhlIGluaGVyaXRlZCB0YWdzIGluIGl0cyB0YWcgc3BlY2lmaWNhdGlvbi4gSG93ZXZlciwgdGhlcmUgaXMgbm8gIgorIndheSBmb3IgdGhlIHN5bWJvbCB0byByZW1vdmUgYW55IG9mIHRoZSBpbmhlcml0ZWQgdGFncy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzQ1Cittc2dpZCAiIgorIkFuIGluY2x1ZGVkIGZpbGUgY2FuIHJlcGVhdCB0aGUgaGVhZGVyIGxpbmUgY29udGFpbmluZyB0aGUgU09OQU1FIG9mIHRoZSAiCisibGlicmFyeS4gSW4gdGhhdCBjYXNlLCBpdCBvdmVycmlkZXMgYW55IGhlYWRlciBsaW5lIHByZXZpb3VzbHkgcmVhZC4gICIKKyJIb3dldmVyLCBpbiBnZW5lcmFsIGl0J3MgYmVzdCB0byBhdm9pZCBkdXBsaWNhdGluZyBoZWFkZXIgbGluZXMuIE9uZSB3YXkgdG8gIgorImRvIGl0IGlzIHRoZSBmb2xsb3dpbmc6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM0OAorIywgbm8td3JhcAorbXNnaWQgIiIKKyIjaW5jbHVkZSBcImxpYnNvbWV0aGluZzEuc3ltYm9scy5jb21tb25cIlxuIgorIiBhcmNoX3NwZWNpZmljX3N5bWJvbEBCYXNlIDEuMFxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLWdlbnN5bWJvbHMuMTozNDgKKyMsIG5vLXdyYXAKK21zZ2lkICJHb29kIGxpYnJhcnkgbWFuYWdlbWVudCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozNTEKK21zZ2lkICJBIHdlbGwtbWFpbnRhaW5lZCBsaWJyYXJ5IGhhcyB0aGUgZm9sbG93aW5nIGZlYXR1cmVzOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozNTUKK21zZ2lkICIiCisiaXRzIEFQSSBpcyBzdGFibGUgKHB1YmxpYyBzeW1ib2xzIGFyZSBuZXZlciBkcm9wcGVkLCBvbmx5IG5ldyBwdWJsaWMgc3ltYm9scyAiCisiYXJlIGFkZGVkKSBhbmQgY2hhbmdlcyBpbiBpbmNvbXBhdGlibGUgd2F5cyBvbmx5IHdoZW4gdGhlIFNPTkFNRSBjaGFuZ2VzOyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozNTgKK21zZ2lkICIiCisiaWRlYWxseSwgaXQgdXNlcyBzeW1ib2wgdmVyc2lvbmluZyB0byBhY2hpZXZlIEFCSSBzdGFiaWxpdHkgZGVzcGl0ZSBpbnRlcm5hbCAiCisiY2hhbmdlcyBhbmQgQVBJIGV4dGVuc2lvbjsiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzYxCittc2dpZCAiIgorIml0IGRvZXNuJ3QgZXhwb3J0IHByaXZhdGUgc3ltYm9scyAoc3VjaCBzeW1ib2xzIGNhbiBiZSB0YWdnZWQgb3B0aW9uYWwgYXMgIgorIndvcmthcm91bmQpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozNjkKK21zZ2lkICIiCisiV2hpbGUgbWFpbnRhaW5pbmcgdGhlIHN5bWJvbHMgZmlsZSwgaXQncyBlYXN5IHRvIG5vdGljZSBhcHBlYXJhbmNlIGFuZCAiCisiZGlzYXBwZWFyYW5jZSBvZiBzeW1ib2xzLiBCdXQgaXQncyBtb3JlIGRpZmZpY3VsdCB0byBjYXRjaCBpbmNvbXBhdGlibGUgQVBJICIKKyJhbmQgQUJJIGNoYW5nZS4gVGh1cyB0aGUgbWFpbnRhaW5lciBzaG91bGQgcmVhZCB0aG9yb3VnaGx5IHRoZSB1cHN0cmVhbSAiCisiY2hhbmdlbG9nIGxvb2tpbmcgZm9yIGNhc2VzIHdoZXJlIHRoZSBydWxlcyBvZiBnb29kIGxpYnJhcnkgbWFuYWdlbWVudCBoYXZlICIKKyJiZWVuIGJyb2tlbi4gSWYgcG90ZW50aWFsIHByb2JsZW1zIGFyZSBkaXNjb3ZlcmVkLCB0aGUgdXBzdHJlYW0gYXV0aG9yICIKKyJzaG91bGQgYmUgbm90aWZpZWQgYXMgYW4gdXBzdHJlYW0gZml4IGlzIGFsd2F5cyBiZXR0ZXIgdGhhbiBhIERlYmlhbiAiCisic3BlY2lmaWMgd29yay1hcm91bmQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbnN5bWJvbHMuMTozNzAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1QPkk8cGFja2FnZS1idWlsZC1kaXI+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM3MworbXNnaWQgIlNjYW4gSTxwYWNrYWdlLWJ1aWxkLWRpcj4gaW5zdGVhZCBvZiBkZWJpYW4vdG1wLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozNzcKK21zZ2lkICIiCisiRGVmaW5lIHRoZSBwYWNrYWdlIG5hbWUuIFJlcXVpcmVkIGlmIG1vcmUgdGhhbiBvbmUgYmluYXJ5IHBhY2thZ2UgaXMgbGlzdGVkICIKKyJpbiBkZWJpYW4vY29udHJvbCAob3IgaWYgdGhlcmUncyBubyBkZWJpYW4vY29udHJvbCBmaWxlKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzgxCittc2dpZCAiIgorIkRlZmluZSB0aGUgcGFja2FnZSB2ZXJzaW9uLiBEZWZhdWx0cyB0byB0aGUgdmVyc2lvbiBleHRyYWN0ZWQgZnJvbSAiCisiZGViaWFuL2NoYW5nZWxvZy4gUmVxdWlyZWQgaWYgY2FsbGVkIG91dHNpZGUgb2YgYSBzb3VyY2UgcGFja2FnZSB0cmVlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzgxCisjLCBuby13cmFwCittc2dpZCAiQjwtZT5JPGxpYnJhcnktZmlsZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6Mzg3Cittc2dpZCAiIgorIk9ubHkgYW5hbHl6ZSBsaWJyYXJpZXMgZXhwbGljaXRseSBsaXN0ZWQgaW5zdGVhZCBvZiBmaW5kaW5nIGFsbCBwdWJsaWMgIgorImxpYnJhcmllcy4gWW91IGNhbiB1c2UgYSByZWd1bGFyIGV4cHJlc3Npb24gaW4gSTxsaWJyYXJ5LWZpbGU+IHRvIG1hdGNoICIKKyJtdWx0aXBsZSBsaWJyYXJpZXMgd2l0aCBhIHNpbmdsZSBhcmd1bWVudCAob3RoZXJ3aXNlIHlvdSBuZWVkIG11bHRpcGxlICIKKyJCPC1lPikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbnN5bWJvbHMuMTozODcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1JPkk8ZmlsZW5hbWU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM5MQorbXNnaWQgIiIKKyJVc2UgSTxmaWxlbmFtZT4gYXMgcmVmZXJlbmNlIGZpbGUgdG8gZ2VuZXJhdGUgdGhlIHN5bWJvbHMgZmlsZSB0aGF0IGlzICIKKyJpbnRlZ3JhdGVkIGluIHRoZSBwYWNrYWdlIGl0c2VsZi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6Mzk1Cittc2dpZCAiIgorIlByaW50IHRoZSBnZW5lcmF0ZWQgc3ltYm9scyBmaWxlIHRvIHN0YW5kYXJkIG91dHB1dCwgcmF0aGVyIHRoYW4gYmVpbmcgIgorInN0b3JlZCBpbiB0aGUgcGFja2FnZSBidWlsZCB0cmVlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5zeW1ib2xzLjE6Mzk1CisjLCBuby13cmFwCittc2dpZCAiQjwtTz5JPGZpbGVuYW1lPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0MDEKK21zZ2lkICIiCisiU3RvcmUgdGhlIGdlbmVyYXRlZCBzeW1ib2xzIGZpbGUgYXMgSTxmaWxlbmFtZT4uIElmIEk8ZmlsZW5hbWU+IGlzICIKKyJwcmUtZXhpc3RpbmcsIGl0cyBjb250ZW50IGlzIHVzZWQgYXMgYmFzaXMgZm9yIHRoZSBnZW5lcmF0ZWQgc3ltYm9scyBmaWxlLiAgIgorIllvdSBjYW4gdXNlIHRoaXMgZmVhdHVyZSB0byB1cGRhdGUgYSBzeW1ib2xzIGZpbGUgc28gdGhhdCBpdCBtYXRjaGVzIGEgbmV3ZXIgIgorInVwc3RyZWFtIHZlcnNpb24gb2YgeW91ciBsaWJyYXJ5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDAxCisjLCBuby13cmFwCittc2dpZCAiQjwtdD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDEwCittc2dpZCAiIgorIldyaXRlIHRoZSBzeW1ib2wgZmlsZSBpbiB0ZW1wbGF0ZSBtb2RlIHJhdGhlciB0aGFuIHRoZSBmb3JtYXQgY29tcGF0aWJsZSAiCisid2l0aCBJPGRlYi1zeW1ib2xzKDUpPi4gVGhlIG1haW4gZGlmZmVyZW5jZSBpcyB0aGF0IGluIHRoZSB0ZW1wbGF0ZSBtb2RlICIKKyJzeW1ib2wgbmFtZXMgYW5kIHRhZ3MgYXJlIHdyaXR0ZW4gaW4gdGhlaXIgb3JpZ2luYWwgZm9ybSBjb250cmFyeSB0byB0aGUgIgorInBvc3QtcHJvY2Vzc2VkIHN5bWJvbCBuYW1lcyB3aXRoIHRhZ3Mgc3RyaXBwZWQgaW4gdGhlIGNvbXBhdGliaWxpdHkgbW9kZS4gICIKKyJNb3Jlb3Zlciwgc29tZSBzeW1ib2xzIG1pZ2h0IGJlIG9taXR0ZWQgd2hlbiB3cml0aW5nIGEgc3RhbmRhcmQgIgorIkk8ZGViLXN5bWJvbHMoNSk+IGZpbGUgKGFjY29yZGluZyB0byB0aGUgdGFnIHByb2Nlc3NpbmcgcnVsZXMpIHdoaWxlIGFsbCAiCisic3ltYm9scyBhcmUgYWx3YXlzIHdyaXR0ZW4gdG8gdGhlIHN5bWJvbCBmaWxlIHRlbXBsYXRlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDEwCisjLCBuby13cmFwCittc2dpZCAiQjwtYz5JPFswLTRdPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0MTgKK21zZ2lkICIiCisiRGVmaW5lIHRoZSBjaGVja3MgdG8gZG8gd2hlbiBjb21wYXJpbmcgdGhlIGdlbmVyYXRlZCBzeW1ib2xzIGZpbGUgd2l0aCB0aGUgIgorInRlbXBsYXRlIGZpbGUgdXNlZCBhcyBzdGFydGluZyBwb2ludC4gQnkgZGVmYXVsdCB0aGUgbGV2ZWwgaXMgMS4gSW5jcmVhc2luZyAiCisibGV2ZWxzIGRvIG1vcmUgY2hlY2tzIGFuZCBpbmNsdWRlIGFsbCBjaGVja3Mgb2YgbG93ZXIgbGV2ZWxzLiBMZXZlbCAwIG5ldmVyICIKKyJmYWlscy4gTGV2ZWwgMSBmYWlscyBpZiBzb21lIHN5bWJvbHMgaGF2ZSBkaXNhcHBlYXJlZC4gTGV2ZWwgMiBmYWlscyBpZiBzb21lICIKKyJuZXcgc3ltYm9scyBoYXZlIGJlZW4gaW50cm9kdWNlZC4gTGV2ZWwgMyBmYWlscyBpZiBzb21lIGxpYnJhcmllcyBoYXZlICIKKyJkaXNhcHBlYXJlZC4gTGV2ZWwgNCBmYWlscyBpZiBzb21lIGxpYnJhcmllcyBoYXZlIGJlZW4gaW50cm9kdWNlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDIxCittc2dpZCAiIgorIlRoaXMgdmFsdWUgY2FuIGJlIG92ZXJyaWRkZW4gYnkgdGhlIGVudmlyb25tZW50IHZhcmlhYmxlICIKKyJEUEtHX0dFTlNZTUJPTFNfQ0hFQ0tfTEVWRUwuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQyNworbXNnaWQgIiIKKyJLZWVwIHF1aWV0IGFuZCBuZXZlciBnZW5lcmF0ZSBhIGRpZmYgYmV0d2VlbiBnZW5lcmF0ZWQgc3ltYm9scyBmaWxlIGFuZCB0aGUgIgorInRlbXBsYXRlIGZpbGUgdXNlZCBhcyBzdGFydGluZyBwb2ludCBvciBzaG93IGFueSB3YXJuaW5ncyBhYm91dCBuZXcvbG9zdCAiCisibGlicmFyaWVzIG9yIG5ldy9sb3N0IHN5bWJvbHMuIFRoaXMgb3B0aW9uIG9ubHkgZGlzYWJsZXMgaW5mb3JtYXRpb25hbCAiCisib3V0cHV0IGJ1dCBub3QgdGhlIGNoZWNrcyB0aGVtc2VsdmVzIChzZWUgSTwtYz4gb3B0aW9uKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQyNworIywgbm8td3JhcAorbXNnaWQgIkI8LWE+STxhcmNoPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0MzIKK21zZ2lkICIiCisiQXNzdW1lIEk8YXJjaD4gYXMgaG9zdCBhcmNoaXRlY3R1cmUgd2hlbiBwcm9jZXNzaW5nIHN5bWJvbCBmaWxlcy4gVXNlIHRoaXMgIgorIm9wdGlvbiB0byBnZW5lcmF0ZSBhIHN5bWJvbCBmaWxlIG9yIGRpZmYgZm9yIGFueSBhcmNoaXRlY3R1cmUgcHJvdmlkZWQgaXRzICIKKyJiaW5hcmllcyBhcmUgYWxyZWFkeSBhdmFpbGFibGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQzNworbXNnaWQgIiIKKyJFbmFibGUgZGVidWcgbW9kZS4gTnVtZXJvdXMgbWVzc2FnZXMgYXJlIGRpc3BsYXllZCB0byBleHBsYWluIHdoYXQgIgorIkI8ZHBrZy1nZW5zeW1ib2xzPiBkb2VzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDM3CisjLCBuby13cmFwCittc2dpZCAiQjwtVj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDQzCittc2dpZCAiIgorIkVuYWJsZSB2ZXJib3NlIG1vZGUuIFRoZSBnZW5lcmF0ZWQgc3ltYm9scyBmaWxlIGNvbnRhaW5zIGRlcHJlY2F0ZWQgc3ltYm9scyAiCisiYXMgY29tbWVudHMuIEZ1cnRoZXJtb3JlIGluIHRlbXBsYXRlIG1vZGUsIHBhdHRlcm4gc3ltYm9scyBhcmUgZm9sbG93ZWQgYnkgIgorImNvbW1lbnRzIGxpc3RpbmcgcmVhbCBzeW1ib2xzIHRoYXQgaGF2ZSBtYXRjaGVkIHRoZSBwYXR0ZXJuLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0NTIKK21zZ2lkICJCPGh0dHA6Ly9wZW9wbGUucmVkaGF0LmNvbS9kcmVwcGVyL3N5bWJvbC12ZXJzaW9uaW5nPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0NTQKK21zZ2lkICJCPGh0dHA6Ly9wZW9wbGUucmVkaGF0LmNvbS9kcmVwcGVyL2dvb2RwcmFjdGljZS5wZGY+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQ1NgorbXNnaWQgIkI8aHR0cDovL3Blb3BsZS5yZWRoYXQuY29tL2RyZXBwZXIvZHNvaG93dG8ucGRmPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0NTkKK21zZ2lkICJCPGRlYi1zeW1ib2xzPig1KSwgQjxkcGtnLXNobGliZGVwcz4oMSkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQ2MgorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDA3LTIwMDkgUmFwaGFcXFs6ZV1sIEhlcnR6b2ciCittc2dzdHIgIiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MQorIywgbm8td3JhcAorbXNnaWQgImRwa2ctbWFpbnRzY3JpcHQtaGVscGVyIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6NAorbXNnaWQgIiIKKyJkcGtnLW1haW50c2NyaXB0LWhlbHBlciAtIHdvcmtzIGFyb3VuZCBrbm93biBkcGtnIGxpbWl0YXRpb25zIGluIG1haW50YWluZXIgIgorInNjcmlwdHMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMTo4Cittc2dpZCAiIgorIkI8ZHBrZy1tYWludHNjcmlwdC1oZWxwZXI+IEk8Y29tbWFuZD4gW0k8cGFyYW1ldGVyPi4uLl0gQjwtLT4gIgorIkk8bWFpbnQtc2NyaXB0LXBhcmFtZXRlcj4uLi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6OQorIywgbm8td3JhcAorbXNnaWQgIkNPTU1BTkRTIEFORCBQQVJBTUVURVJTIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MTIKK21zZ2lkICJCPHJtX2NvbmZmaWxlPiBJPGNvbmZmaWxlPiBbSTxsYXN0dmVyc2lvbj4gW0k8cGFja2FnZT5dXSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjE0Cittc2dpZCAiQjxtdl9jb25mZmlsZT4gSTxvbGRjb25mZmlsZT4gSTxuZXdjb25mZmlsZT4gW0k8bGFzdHZlcnNpb24+IFtJPHBhY2thZ2U+XV0iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToyMAorbXNnaWQgIiIKKyJUaGlzIHByb2dyYW0gaXMgZGVzaWduZWQgdG8gYmUgcnVuIHdpdGhpbiBtYWludGFpbmVyIHNjcmlwdHMgdG8gYWNoaWV2ZSBzb21lICIKKyJ0YXNrcyB0aGF0IGRwa2cgY2FuJ3QgKHlldCkgaGFuZGxlIG5hdGl2ZWx5IGVpdGhlciBiZWNhdXNlIG9mIGRlc2lnbiAiCisiZGVjaXNpb25zIG9yIGR1ZSB0byBjdXJyZW50IGxpbWl0YXRpb25zLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjI3Cittc2dpZCAiIgorIk1hbnkgb2YgdGhvc2UgdGFza3MgcmVxdWlyZSBjb29yZGluYXRlZCBhY3Rpb25zIGZyb20gc2V2ZXJhbCBtYWludGFpbmVyICIKKyJzY3JpcHRzIChCPHByZWluc3Q+LCBCPHBvc3RpbnN0PiwgQjxwcmVybT4sIEI8cG9zdHJtPikuIFRvIGF2b2lkIG1pc3Rha2VzICIKKyJ0aGUgc2FtZSBjYWxsIHNpbXBseSBuZWVkcyB0byBiZSBwdXQgaW4gYWxsIHNjcmlwdHMgYW5kIHRoZSBwcm9ncmFtIHdpbGwgIgorImF1dG9tYXRpY2FsbHkgYWRhcHQgaXRzIGJlaGF2aW91ciBiYXNlZCBvbiB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGUgIgorIkI8RFBLR19NQUlOVFNDUklQVF9OQU1FPiBhbmQgb24gdGhlIG1haW50YWluZXIgc2NyaXB0cyBhcmd1bWVudHMgdGhhdCB5b3UgIgorImhhdmUgdG8gZm9yd2FyZCBhZnRlciBhIGRvdWJsZSBkYXNoLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToyOAorIywgbm8td3JhcAorbXNnaWQgIkNPTkZGSUxFIFJFTEFURUQgVEFTS1MiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMTozOAorbXNnaWQgIiIKKyJXaGVuIHVwZ3JhZGluZyBhIHBhY2thZ2UsIGRwa2cgd2lsbCBub3QgYXV0b21hdGljYWxseSByZW1vdmUgYSBjb25mZmlsZSAoYSAiCisiY29uZmlndXJhdGlvbiBmaWxlIGZvciB3aGljaCBkcGtnIHNob3VsZCBwcmVzZXJ2ZSB1c2VyIGNoYW5nZXMpIGlmIGl0IGlzIG5vdCAiCisicHJlc2VudCBpbiB0aGUgbmV3ZXIgdmVyc2lvbi4gVGhlcmUgYXJlIHR3byBwcmluY2lwYWwgcmVhc29ucyBmb3IgdGhpczsgdGhlICIKKyJmaXJzdCBpcyB0aGF0IHRoZSBjb25mZmlsZSBjb3VsZCd2ZSBiZWVuIGRyb3BwZWQgYnkgYWNjaWRlbnQgYW5kIHRoZSBuZXh0ICIKKyJ2ZXJzaW9uIGNvdWxkIHJlc3RvcmUgaXQsIHVzZXJzIHdvdWxkbid0IHdhbnQgdGhlaXIgY2hhbmdlcyB0aHJvd24gYXdheS4gVGhlICIKKyJzZWNvbmQgaXMgdG8gYWxsb3cgcGFja2FnZXMgdG8gdHJhbnNpdGlvbiBmaWxlcyBmcm9tIGEgZHBrZy1tYWludGFpbmVkICIKKyJjb25mZmlsZSB0byBhIGZpbGUgbWFpbnRhaW5lZCBieSB0aGUgcGFja2FnZSdzIG1haW50YWluZXIgc2NyaXB0cywgdXN1YWxseSAiCisid2l0aCBhIHRvb2wgbGlrZSBkZWJjb25mIG9yIHVjZi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMTo0MworbXNnaWQgIiIKKyJUaGlzIG1lYW5zIHRoYXQgaWYgYSBwYWNrYWdlIGlzIGludGVuZGVkIHRvIHJlbmFtZSBvciByZW1vdmUgYSBjb25mZmlsZSwgaXQgIgorIm11c3QgZXhwbGljaXRseSBkbyBzbyBhbmQgQjxkcGtnLW1haW50c2NyaXB0LWhlbHBlcj4gY2FuIGJlIHVzZWQgdG8gIgorImltcGxlbWVudCBncmFjZWZ1bCBkZWxldGlvbiBhbmQgbW92aW5nIG9mIGNvbmZmaWxlcyB3aXRoaW4gbWFpbnRhaW5lciAiCisic2NyaXB0cy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6NDQKKyMsIG5vLXdyYXAKK21zZ2lkICJSRU1PVklORyBBIENPTkZGSUxFIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6NTAKK21zZ2lkICIiCisiSWYgYSBjb25mZmlsZSBpcyBjb21wbGV0ZWx5IHJlbW92ZWQsIGl0IHNob3VsZCBiZSByZW1vdmVkIGZyb20gZGlzaywgdW5sZXNzICIKKyJ0aGUgdXNlciBoYXMgbW9kaWZpZWQgaXQuIElmIHRoZXJlIGFyZSBsb2NhbCBtb2RpZmljYXRpb25zLCB0aGV5IHNob3VsZCBiZSAiCisicHJlc2VydmVkLiBJZiB0aGUgcGFja2FnZSB1cGdyYWRlcyBhYm9ydHMsIHRoZSBuZXdseSBvYnNvbGV0ZSBjb25mZmlsZSAiCisic2hvdWxkIG5vdCBkaXNhcHBlYXIuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6NTMKK21zZ2lkICIiCisiQWxsIG9mIHRoaXMgaXMgaW1wbGVtZW50ZWQgYnkgcHV0dGluZyB0aGUgZm9sbG93aW5nIHNoZWxsIHNuaXBwZXQgaW4gdGhlICIKKyJCPHByZWluc3Q+LCBCPHBvc3RpbnN0PiBhbmQgQjxwb3N0cm0+IG1haW50YWluZXIgc2NyaXB0czoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMTo1NgorIywgbm8td3JhcAorbXNnaWQgIiIKKyIgICAgZHBrZy1tYWludHNjcmlwdC1oZWxwZXIgcm1fY29uZmZpbGUgXFxlXG4iCisiICAgICAgICBJPGNvbmZmaWxlPiBJPGxhc3R2ZXJzaW9uPiBJPHBhY2thZ2U+IC0tIFwiJEBcIlxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6NjYKK21zZ2lkICIiCisiSTxjb25mZmlsZT4gaXMgdGhlIGZpbGVuYW1lIG9mIHRoZSBjb25mZmlsZSB0byByZW1vdmUuICBJPGxhc3R2ZXJzaW9uPiBpcyAiCisidGhlIGxhc3QgdmVyc2lvbiBvZiB0aGUgcGFja2FnZSB0aGF0IGNvbnRhaW5lZCB0aGUgY29uZmZpbGUgKG9yIHRoZSBsYXN0ICIKKyJ2ZXJzaW9uIG9mIHRoZSBwYWNrYWdlIHRoYXQgZGlkIG5vdCB0YWtlIGNhcmUgdG8gcmVtb3ZlIHRoZSBvYnNvbGV0ZSAiCisiY29uZmZpbGUgaWYgdGhpcyB3YXMgbm90IGltbWVkaWF0ZWx5IGltcGxlbWVudGVkKS4gIElmIEk8bGFzdHZlcnNpb24+IGlzICIKKyJlbXB0eSBvciBvbWl0dGVkLCB0aGVuIHRoZSBvcGVyYXRpb24gaXMgdHJpZWQgb24gZXZlcnkgdXBncmFkZS4gSTxwYWNrYWdlPiAiCisiaXMgdGhlIHBhY2thZ2UgbmFtZSwgaXQncyBvcHRpb25hbCBhcyBpdCB3aWxsIGRlZmF1bHQgdG8gIgorIiREUEtHX01BSU5UU0NSSVBUX1BBQ0tBR0UgKHRoaXMgdmFyaWFibGUgaXMgc2V0IGJ5IGRwa2cgdG8gdGhlIG5hbWUgb2YgdGhlICIKKyJwYWNrYWdlIGFjdGVkIHVwb24pLiBBbGwgdGhlIHBhcmFtZXRlcnMgb2YgdGhlIG1haW50YWluZXIgc2NyaXB0cyBoYXZlIHRvIGJlICIKKyJmb3J3YXJkZWQgdG8gdGhlIHByb2dyYW0gYWZ0ZXIgXCItLVwiLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjc1Cittc2dpZCAiIgorIkN1cnJlbnQgaW1wbGVtZW50YXRpb246IGluIHRoZSBCPHByZWluc3Q+LCBpdCBjaGVja3MgaWYgdGhlIGNvbmZmaWxlIHdhcyAiCisibW9kaWZpZWQgYW5kIHJlbmFtZXMgaXQgZWl0aGVyIHRvIEk8Y29uZmZpbGU+QjwuZHBrZy1yZW1vdmU+IChpZiBub3QgIgorIm1vZGlmaWVkKSBvciB0byBJPGNvbmZmaWxlPkI8LmRwa2ctYmFja3VwPiAoaWYgbW9kaWZpZWQpLiBJbiB0aGUgIgorIkI8cG9zdGluc3Q+LCB0aGUgbGF0dGVyIGZpbGUgaXMgcmVuYW1lZCB0byBJPGNvbmZmaWxlPkI8LmRwa2ctYmFrPiBhbmQga2VwdCAiCisiZm9yIHJlZmVyZW5jZSBhcyBpdCBjb250YWlucyB1c2VyIG1vZGlmaWNhdGlvbnMgYnV0IHRoZSBmb3JtZXIgd2lsbCBiZSAiCisicmVtb3ZlZC4gSWYgdGhlIHBhY2thZ2UgdXBncmFkZSBhYm9ydHMsIHRoZSBCPHBvc3RybT4gcmVpbnN0YWxscyB0aGUgIgorIm9yaWdpbmFsIGNvbmZmaWxlLiBEdXJpbmcgcHVyZ2UsIHRoZSBCPHBvc3RybT4gd2lsbCBhbHNvIGRlbGV0ZSB0aGUgIgorIkI8LmRwa2ctYmFrPiBmaWxlIGtlcHQgdXAgdG8gbm93LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMTo3NgorIywgbm8td3JhcAorbXNnaWQgIlJFTkFNSU5HIEEgQ09ORkZJTEUiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMTo4MworbXNnaWQgIiIKKyJJZiBhIGNvbmZmaWxlIGlzIG1vdmVkIGZyb20gb25lIGxvY2F0aW9uIHRvIGFub3RoZXIsIHlvdSBuZWVkIHRvIG1ha2Ugc3VyZSAiCisieW91IG1vdmUgYWNyb3NzIGFueSBjaGFuZ2VzIHRoZSB1c2VyIGhhcyBtYWRlLiBUaGlzIG1heSBzZWVtIGEgc2ltcGxlIGNoYW5nZSAiCisidG8gdGhlIEI8cHJlaW5zdD4gc2NyaXB0IGF0IGZpcnN0LCBob3dldmVyIHRoYXQgd2lsbCByZXN1bHQgaW4gdGhlIHVzZXIgIgorImJlaW5nIHByb21wdGVkIGJ5IGRwa2cgdG8gYXBwcm92ZSB0aGUgY29uZmZpbGUgZWRpdHMgZXZlbiB0aG91Z2ggdGhleSBhcmUgIgorIm5vdCByZXNwb25zaWJsZSBvZiB0aGVtLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjg3Cittc2dpZCAiIgorIkdyYWNlZnVsIHJlbmFtaW5nIGNhbiBiZSBpbXBsZW1lbnRlZCBieSBwdXR0aW5nIHRoZSBmb2xsb3dpbmcgc2hlbGwgc25pcHBldCAiCisiaW4gdGhlIEI8cHJlaW5zdD4sIEI8cG9zdGluc3Q+IGFuZCBCPHBvc3RybT4gbWFpbnRhaW5lciBzY3JpcHRzOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjkwCisjLCBuby13cmFwCittc2dpZCAiIgorIiAgICBkcGtnLW1haW50c2NyaXB0LWhlbHBlciBtdl9jb25mZmlsZSBcXGVcbiIKKyIgICAgICAgIEk8b2xkY29uZmZpbGU+IEk8bmV3Y29uZmZpbGU+IEk8bGFzdHZlcnNpb24+IEk8cGFja2FnZT4gLS0gXCIkQFwiXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxMDAKK21zZ2lkICIiCisiSTxvbGRjb25mZmlsZT4gYW5kIEk8bmV3Y29uZmZpbGU+IGFyZSB0aGUgb2xkIGFuZCBuZXcgbmFtZSBvZiB0aGUgY29uZmZpbGUgIgorInRvIHJlbmFtZS4gSTxsYXN0dmVyc2lvbj4gaXMgdGhlIGxhc3QgdmVyc2lvbiBvZiB0aGUgcGFja2FnZSB0aGF0IGNvbnRhaW5lZCAiCisidGhlIGNvbmZmaWxlIHdpdGggdGhlIG9sZCBuYW1lLiBJZiBJPGxhc3R2ZXJzaW9uPiBpcyBlbXB0eSBvciBvbWl0dGVkLCB0aGVuICIKKyJ0aGUgb3BlcmF0aW9uIGlzIHRyaWVkIG9uIGV2ZXJ5IHVwZ3JhZGUgKG5vdGU6IGl0J3Mgc2FmZXIgdG8gZ2l2ZSB0aGUgIgorInZlcnNpb24gYW5kIGhhdmUgdGhlIG9wZXJhdGlvbiB0cmllZCBvbmx5IG9uY2UpLiBJPHBhY2thZ2U+IGlzIHRoZSBwYWNrYWdlICIKKyJuYW1lLCBpdCdzIG9wdGlvbmFsIGFzIGl0IHdpbGwgZGVmYXVsdCB0byAkRFBLR19NQUlOVFNDUklQVF9QQUNLQUdFICh0aGlzICIKKyJ2YXJpYWJsZSBpcyBzZXQgYnkgZHBrZyB0byB0aGUgbmFtZSBvZiB0aGUgcGFja2FnZSBhY3RlZCB1cG9uKS4gQWxsIHRoZSAiCisicGFyYW1ldGVycyBvZiB0aGUgbWFpbnRhaW5lciBzY3JpcHRzIGhhdmUgdG8gYmUgZm9yd2FyZGVkIHRvIHRoZSBwcm9ncmFtICIKKyJhZnRlciBcIi0tXCIuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MTA4Cittc2dpZCAiIgorIkN1cnJlbnQgaW1wbGVtZW50YXRpb246IHRoZSBCPHByZWluc3Q+IGNoZWNrcyBpZiB0aGUgY29uZmZpbGUgaGFzIGJlZW4gIgorIm1vZGlmaWVkLCBpZiB5ZXMgaXQncyBsZWZ0IG9uIHBsYWNlIG90aGVyd2lzZSBpdCdzIHJlbmFtZWQgdG8gIgorIkk8b2xkY29uZmZpbGU+QjwuZHBrZy1yZW1vdmU+LiBPbiBjb25maWd1cmF0aW9uLCB0aGUgQjxwb3N0aW5zdD4gcmVtb3ZlcyAiCisiSTxvbGRjb25mZmlsZT5CPC5kcGtnLXJlbW92ZT4gYW5kIHJlbmFtZXMgSTxvbGRjb25mZmlsZT4gdG8gSTxuZXdjb25mZmlsZT4gIgorImlmIEk8b2xkY29uZmZpbGU+IGlzIHN0aWxsIGF2YWlsYWJsZS4gT24gYWJvcnQtdXBncmFkZS9hYm9ydC1pbnN0YWxsLCB0aGUgIgorIkI8cG9zdHJtPiByZW5hbWVzIEk8b2xkY29uZmZpbGU+QjwuZHBrZy1yZW1vdmU+IGJhY2sgdG8gSTxvbGRjb25mZmlsZT4gaWYgIgorInJlcXVpcmVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxMDkKKyMsIG5vLXdyYXAKK21zZ2lkICJJTlRFR1JBVElPTiBJTiBQQUNLQUdFUyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjExNgorbXNnaWQgIiIKKyJHaXZlbiB0aGF0IEI8ZHBrZy1tYWludHNjcmlwdC1oZWxwZXI+IGlzIHVzZWQgaW4gdGhlIEI8cHJlaW5zdD4sIHVzaW5nIGl0ICIKKyJ1bmNvbmRpdGlvbmFsbHkgcmVxdWlyZXMgYSBwcmUtZGVwZW5kZW5jeSB0byBlbnN1cmUgdGhhdCB0aGUgcmVxdWlyZWQgIgorInZlcnNpb24gb2YgZHBrZyBoYXMgYmVlbiB1bnBhY2tlZCBiZWZvcmUuIFRoZSByZXF1aXJlZCB2ZXJzaW9uIGRlcGVuZHMgb24gIgorInRoZSBjb21tYW5kIHVzZWQsIGZvciBCPHJtX2NvbmZmaWxlPiBhbmQgQjxtdl9jb25mZmlsZT4gaXQgaXMgMS4xNS43LjI6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MTE4CisjLCBuby13cmFwCittc2dpZCAiICAgIEI8UHJlLURlcGVuZHM6PiBkcGtnIChFPGd0Pj0gMS4xNS43LjIpXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxMjMKK21zZ2lkICIiCisiQnV0IGluIG1hbnkgY2FzZXMgdGhlIG9wZXJhdGlvbiBkb25lIGJ5IHRoZSBwcm9ncmFtIGlzIG5vdCBjcml0aWNhbCBmb3IgdGhlICIKKyJwYWNrYWdlLCBhbmQgaW5zdGVhZCBvZiB1c2luZyBhIHByZS1kZXBlbmRlbmN5IHdlIGNhbiBjYWxsIHRoZSBwcm9ncmFtIG9ubHkgIgorImlmIHdlIGtub3cgdGhhdCB0aGUgcmVxdWlyZWQgY29tbWFuZCBpcyBzdXBwb3J0ZWQgYnkgdGhlIGN1cnJlbnRseSBpbnN0YWxsZWQgIgorImRwa2c6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MTI3CisjLCBuby13cmFwCittc2dpZCAiIgorIiAgICBpZiBkcGtnLW1haW50c2NyaXB0LWhlbHBlciBzdXBwb3J0cyBJPGNvbW1hbmQ+OyB0aGVuXG4iCisiICAgICAgICBkcGtnLW1haW50c2NyaXB0LWhlbHBlciBJPGNvbW1hbmQ+IC4uLlxuIgorIiAgICBmaVxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MTMwCittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMTAgUmFwaGFcXFs6ZV1sIEhlcnR6b2ciCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxMzIKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAwOCBKb2V5IEhlc3MiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxMzQKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAwNyBHdWlsbGVtIEpvdmVyIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MTM2Cittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMDUgU2NvdHQgSmFtZXMgUmVtbmFudCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMToxCisjLCBuby13cmFwCittc2dpZCAiZHBrZy1tZXJnZWNoYW5nZWxvZ3MiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTo0Cittc2dpZCAiZHBrZy1tZXJnZWNoYW5nZWxvZ3MgLSAzLXdheSBtZXJnZSBvZiBkZWJpYW4vY2hhbmdlbG9nIGZpbGVzIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6OAorbXNnaWQgIkI8ZHBrZy1tZXJnZWNoYW5nZWxvZ3M+IFtJPG9wdGlvbj4uLi5dIEk8b2xkPiBJPG5ldy1hPiBJPG5ldy1iPiBbSTxvdXQ+XSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjE1Cittc2dpZCAiIgorIlRoaXMgcHJvZ3JhbSB3aWxsIHVzZSB0aGUgMyBwcm92aWRlZCB2ZXJzaW9ucyBvZiB0aGUgRGViaWFuIGNoYW5nZWxvZyB0byAiCisiZ2VuZXJhdGUgYSBtZXJnZWQgY2hhbmdlbG9nIGZpbGUuIFRoZSByZXN1bHRpbmcgY2hhbmdlbG9nIGlzIHN0b3JlZCBpbiB0aGUgIgorImZpbGUgSTxvdXQ+IG9yIG91dHB1dCB0byB0aGUgc3RhbmRhcmQgb3V0cHV0IGlmIHRoYXQgcGFyYW1ldGVyIGlzIG5vdCBnaXZlbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMToyNgorbXNnaWQgIiIKKyJFYWNoIGVudHJ5IGlzIGlkZW50aWZpZWQgYnkgaXRzIHZlcnNpb24gbnVtYmVyIGFuZCB0aGV5IGFyZSBhc3N1bWVkIHRvIGJlICIKKyJub3QgY29uZmxpY3RpbmcsIHRoZXkgYXJlIHNpbXBseSBtZXJnZWQgaW4gdGhlIHJpZ2h0IG9yZGVyIChieSBkZWNyZWFzaW5nICIKKyJ2ZXJzaW9uIG51bWJlcikuIFdoZW4gQjwtLW1lcmdlLXByZXJlbGVhc2VzPiBpcyB1c2VkLCB0aGUgcGFydCBvZiB0aGUgIgorInZlcnNpb24gbnVtYmVyIGFmdGVyIHRoZSBsYXN0IHRpbGRlIGlzIGRyb3BwZWQgc28gdGhhdCAxLjAtMX5leHAxIGFuZCAiCisiMS4wLTF+ZXhwNSBhcmUgY29uc2lkZXJlZCB0byBiZSB0aGUgc2FtZSBlbnRyeS4gV2hlbiB0aGUgc2FtZSB2ZXJzaW9uIGlzICIKKyJhdmFpbGFibGUgaW4gYm90aCBJPG5ldy1hPiBhbmQgSTxuZXctYj4sIGEgc3RhbmRhcmQgbGluZS1iYXNlZCAzLXdheSBtZXJnZSAiCisiaXMgYXR0ZW1wdGVkIChwcm92aWRlZCB0aGF0IHRoZSBtb2R1bGUgQWxnb3JpdGhtOjpNZXJnZSBpcyBhdmFpbGFibGUgXFxbZW1dICIKKyJpdCdzIHBhcnQgb2YgdGhlIHBhY2thZ2UgbGliYWxnb3JpdGhtLW1lcmdlLXBlcmwgXFxbZW1dIG90aGVyd2lzZSB5b3UgZ2V0IGEgIgorImdsb2JhbCBjb25mbGljdCBvbiB0aGUgY29udGVudCBvZiB0aGUgZW50cnkpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMToyOAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1tZXJnZS1wcmVyZWxlYXNlcz4sIEI8LW0+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6MzMKK21zZ2lkICIiCisiRHJvcCB0aGUgcGFydCBhZnRlciB0aGUgbGFzdCB0aWxkZSBpbiB0aGUgdmVyc2lvbiBudW1iZXIgd2hlbiBkb2luZyB2ZXJzaW9uICIKKyJjb21wYXJpc29uIHRvIGlkZW50aWZ5IGlmIHR3byBlbnRyaWVzIGFyZSBzdXBwb3NlZCB0byBiZSB0aGUgc2FtZSBvciBub3QuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6MzgKK21zZ2lkICIiCisiVGhpcyBpcyB1c2VmdWwgd2hlbiB5b3Uga2VlcCB1c2luZyB0aGUgc2FtZSBjaGFuZ2Vsb2cgZW50cnkgYnV0IHlvdSBpbmNyZWFzZSAiCisiaXRzIHZlcnNpb24gbnVtYmVyIHJlZ3VsYXJseS4gRm9yIGluc3RhbmNlLCB5b3UgbWlnaHQgaGF2ZSAyLjMtMX5leHAxLCAiCisiMi4zLTF+ZXhwMiwgLi4uIHVudGlsIHRoZSBvZmZpY2lhbCByZWxlYXNlIDIuMy0xIGFuZCB0aGV5IGFyZSBhbGwgdGhlIHNhbWUgIgorImNoYW5nZWxvZyBlbnRyeSB0aGF0IGhhcyBldm9sdmVkIG92ZXIgdGltZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6NDUKKyMsIG5vLXdyYXAKK21zZ2lkICJMSU1JVEFUSU9OUyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjUwCittc2dpZCAiIgorIkFueXRoaW5nIHRoYXQgaXMgbm90IHBhcnNlZCBieSBEcGtnOjpDaGFuZ2Vsb2cgaXMgbG9zdCBkdXJpbmcgdGhlIG1lcmdlLiAgIgorIlRoaXMgbWlnaHQgaW5jbHVkZSBzdHVmZiBsaWtlIHZpbSBtb2RlbGluZXMsIGNvbW1lbnRzIHdoaWNoIHdlcmUgbm90ICIKKyJzdXBwb3NlZCB0byBiZSB0aGVyZSwgZXRjLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTo1MQorIywgbm8td3JhcAorbXNnaWQgIklOVEVHUkFUSU9OIFdJVEggR0lUIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6NTYKK21zZ2lkICIiCisiSWYgeW91IHdhbnQgdG8gdXNlIHRoaXMgcHJvZ3JhbSB0byBtZXJnZSBEZWJpYW4gY2hhbmdlbG9nIGZpbGVzIGluIGEgZ2l0ICIKKyJyZXBvc2l0b3J5LCB5b3UgaGF2ZSBmaXJzdCB0byByZWdpc3RlciBhIG5ldyBtZXJnZSBkcml2ZXIgaW4gQjwuZ2l0L2NvbmZpZz4gIgorIm9yIEI8fi8uZ2l0Y29uZmlnPjoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTo2MAorIywgbm8td3JhcAorbXNnaWQgIiIKKyIgW21lcmdlIFwiZHBrZy1tZXJnZWNoYW5nZWxvZ3NcIl1cbiIKKyIgICAgIG5hbWUgPSBkZWJpYW4vY2hhbmdlbG9nIG1lcmdlIGRyaXZlclxuIgorIiAgICAgZHJpdmVyID0gZHBrZy1tZXJnZWNoYW5nZWxvZ3MgLW0gJU8gJUEgJUIgJUFcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjY0Cittc2dpZCAiIgorIlRoZW4geW91IGhhdmUgdG8gc2V0dXAgdGhlIG1lcmdlIGF0dHJpYnV0ZSBmb3IgdGhlIGRlYmlhbi9jaGFuZ2Vsb2cgZmlsZSAiCisiZWl0aGVyIGluIEI8LmdpdGF0dHJpYnV0ZXM+IGluIHRoZSByZXBvc2l0b3J5IGl0c2VsZiwgb3IgaW4gIgorIkI8LmdpdC9pbmZvL2F0dHJpYnV0ZXM+OiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjY2CisjLCBuby13cmFwCittc2dpZCAiIGRlYmlhbi9jaGFuZ2Vsb2cgbWVyZ2U9ZHBrZy1tZXJnZWNoYW5nZWxvZ3NcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjY4Cittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMDktMjAxMCBSYXBoYVxcWzplXWwgSGVydHpvZyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1uYW1lLjE6NgorIywgbm8td3JhcAorbXNnaWQgImRwa2ctbmFtZSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW5hbWUuMTo5Cittc2dpZCAiZHBrZy1uYW1lIC0gcmVuYW1lIERlYmlhbiBwYWNrYWdlcyB0byBmdWxsIHBhY2thZ2UgbmFtZXMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6MTUKK21zZ2lkICJCPGRwa2ctbmFtZT4gW0k8b3B0aW9uPi4uLl0gW0I8LS0+XSBJPGZpbGU+Li4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbmFtZS4xOjI5Cittc2dpZCAiIgorIlRoaXMgbWFudWFsIHBhZ2UgZG9jdW1lbnRzIHRoZSBCPGRwa2ctbmFtZT4gcHJvZ3JhbSB3aGljaCBwcm92aWRlcyBhbiBlYXN5ICIKKyJ3YXkgdG8gcmVuYW1lIEI8RGViaWFuPiBwYWNrYWdlcyBpbnRvIHRoZWlyIGZ1bGwgcGFja2FnZSBuYW1lcy4gQSBmdWxsICIKKyJwYWNrYWdlIG5hbWUgY29uc2lzdHMgb2YgIgorIkk8cGFja2FnZT5CPF8+STx2ZXJzaW9uPkI8Xz5JPGFyY2hpdGVjdHVyZT5CPC4+STxwYWNrYWdlLXR5cGU+IGFzIHNwZWNpZmllZCAiCisiaW4gdGhlIGNvbnRyb2wgZmlsZSBvZiB0aGUgcGFja2FnZS4gVGhlIEk8dmVyc2lvbj4gcGFydCBvZiB0aGUgZmlsZW5hbWUgIgorImNvbnNpc3RzIG9mIHRoZSB1cHN0cmVhbSB2ZXJzaW9uIGluZm9ybWF0aW9uIG9wdGlvbmFsbHkgZm9sbG93ZWQgYnkgYSBoeXBoZW4gIgorImFuZCB0aGUgcmV2aXNpb24gaW5mb3JtYXRpb24uIFRoZSBJPHBhY2thZ2UtdHlwZT4gcGFydCBjb21lcyBmcm9tIHRoYXQgZmllbGQgIgorImlmIHByZXNlbnQgb3IgZmFsbGJhY2tzIHRvIEI8ZGViPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctbmFtZS4xOjMxCisjLCBuby13cmFwCittc2dpZCAiQjwtYT4sIEI8LS1uby1hcmNoaXRlY3R1cmU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbmFtZS4xOjM0Cittc2dpZCAiVGhlIGRlc3RpbmF0aW9uIGZpbGVuYW1lIHdpbGwgbm90IGhhdmUgdGhlIGFyY2hpdGVjdHVyZSBpbmZvcm1hdGlvbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctbmFtZS4xOjM0CisjLCBuby13cmFwCittc2dpZCAiQjwtaz4sIEI8LS1zeW1saW5rPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW5hbWUuMTozNworbXNnaWQgIkNyZWF0ZSBhIHN5bWxpbmssIGluc3RlYWQgb2YgbW92aW5nLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1uYW1lLjE6MzcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1vPiwgQjwtLW92ZXJ3cml0ZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6NDEKK21zZ2lkICIiCisiRXhpc3RpbmcgZmlsZXMgd2lsbCBiZSBvdmVyd3JpdHRlbiBpZiB0aGV5IGhhdmUgdGhlIHNhbWUgbmFtZSBhcyB0aGUgIgorImRlc3RpbmF0aW9uIGZpbGVuYW1lLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1uYW1lLjE6NDEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1zPiwgQjwtLXN1YmRpcj4gW0k8ZGlyPl0iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6NTMKK21zZ2lkICIiCisiRmlsZXMgd2lsbCBiZSBtb3ZlZCBpbnRvIGEgc3ViZGlyZWN0b3J5LiBJZiB0aGUgZGlyZWN0b3J5IGdpdmVuIGFzIGFyZ3VtZW50ICIKKyJleGlzdHMgdGhlIGZpbGVzIHdpbGwgYmUgbW92ZWQgaW50byB0aGF0IGRpcmVjdG9yeSBvdGhlcndpc2UgdGhlIG5hbWUgb2YgdGhlICIKKyJ0YXJnZXQgZGlyZWN0b3J5IGlzIGV4dHJhY3RlZCBmcm9tIHRoZSBzZWN0aW9uIGZpZWxkIGluIHRoZSBjb250cm9sIHBhcnQgb2YgIgorInRoZSBwYWNrYWdlLiBUaGUgdGFyZ2V0IGRpcmVjdG9yeSB3aWxsIGJlICIKKyJgdW5zdGFibGUvYmluYXJ5LUk8YXJjaGl0ZWN0dXJlPi9JPHNlY3Rpb24+Jy4gSWYgdGhlIHNlY3Rpb24gaXMgbm90IGZvdW5kIGluICIKKyJ0aGUgY29udHJvbCwgdGhlbiBgbm8tc2VjdGlvbicgaXMgYXNzdW1lZCwgYW5kIGluIHRoaXMgY2FzZSwgYXMgd2VsbCBhcyBmb3IgIgorInNlY3Rpb25zIGBub24tZnJlZScgYW5kIGBjb250cmliJyB0aGUgdGFyZ2V0IGRpcmVjdG9yeSBpcyAiCisiYEk8c2VjdGlvbj4vYmluYXJ5LUk8YXJjaGl0ZWN0dXJlPicuIFRoZSBzZWN0aW9uIGZpZWxkIGlzbid0IHJlcXVpcmVkIHNvIGEgIgorImxvdCBvZiBwYWNrYWdlcyB3aWxsIGZpbmQgdGhlaXIgd2F5IHRvIHRoZSBgbm8tc2VjdGlvbicgYXJlYS4gVXNlIHRoaXMgIgorIm9wdGlvbiB3aXRoIGNhcmUsIGl0J3MgbWVzc3kuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLW5hbWUuMTo1MworIywgbm8td3JhcAorbXNnaWQgIkI8LWM+LCBCPC0tY3JlYXRlLWRpcj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6NTgKK21zZ2lkICIiCisiVGhpcyBvcHRpb24gY2FuIHVzZWQgdG9nZXRoZXIgd2l0aCB0aGUgLXMgb3B0aW9uLiBJZiBhIHRhcmdldCBkaXJlY3RvcnkgIgorImlzbid0IGZvdW5kIGl0IHdpbGwgYmUgY3JlYXRlZCBhdXRvbWF0aWNhbGx5LiAgQjxVc2UgdGhpcyBvcHRpb24gd2l0aCBjYXJlLj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctbmFtZS4xOjYxCisjLCBuby13cmFwCittc2dpZCAiQjwtdj4sIEI8LS12ZXJzaW9uPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1uYW1lLjE6NjYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGRwa2ctbmFtZSBiYXItZm9vLmRlYj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6NzEKK21zZ2lkICIiCisiVGhlIGZpbGUgYGJhci1mb28uZGViJyB3aWxsIGJlIHJlbmFtZWQgdG8gYmFyLWZvb18xLjAtMl9pMzg2LmRlYiBvciAiCisic29tZXRoaW5nIHNpbWlsYXIgKGRlcGVuZGluZyBvbiB3aGF0ZXZlciBpbmZvcm1hdGlvbiBpcyBpbiB0aGUgY29udHJvbCBwYXJ0ICIKKyJvZiBgYmFyLWZvby5kZWInKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctbmFtZS4xOjcxCisjLCBuby13cmFwCittc2dpZCAiQjxmaW5kIC9yb290L2RlYmlhbi8gLW5hbWUgXFwoYXEqLmRlYlxcKGFxIHwgeGFyZ3MgLW4gMSBkcGtnLW5hbWUgLWE+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbmFtZS4xOjc2Cittc2dpZCAiIgorIkFsbCBmaWxlcyB3aXRoIHRoZSBleHRlbnNpb24gYGRlYicgaW4gdGhlIGRpcmVjdG9yeSAvcm9vdC9kZWJpYW4gYW5kIGl0cyAiCisic3ViZGlyZWN0b3J5J3Mgd2lsbCBiZSByZW5hbWVkIGJ5IGRwa2ctbmFtZSBpZiByZXF1aXJlZCBpbnRvIG5hbWVzIHdpdGggbm8gIgorImFyY2hpdGVjdHVyZSBpbmZvcm1hdGlvbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctbmFtZS4xOjc2CisjLCBuby13cmFwCittc2dpZCAiQjxmaW5kIC1uYW1lIFxcKGFxKi5kZWJcXChhcSB8IHhhcmdzIC1uIDEgZHBrZy1uYW1lIC1hIC1vIC1zIC1jPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW5hbWUuMTo4MgorbXNnaWQgIiIKKyJCPERvbid0IGRvIHRoaXMuPiBZb3VyIGFyY2hpdmUgd2lsbCBiZSBtZXNzZWQgdXAgY29tcGxldGVseSBiZWNhdXNlIGEgbG90IG9mICIKKyJwYWNrYWdlcyBkb24ndCBjb21lIHdpdGggc2VjdGlvbiBpbmZvcm1hdGlvbi4gIEI8RG9uJ3QgZG8gdGhpcy4+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLW5hbWUuMTo4MgorIywgbm8td3JhcAorbXNnaWQgIkI8ZHBrZyAtLWJ1aWxkIGRlYmlhbi10bXAgJiYgZHBrZy1uYW1lIC1vIC1zIC4uIGRlYmlhbi10bXAuZGViPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW5hbWUuMTo4NQorbXNnaWQgIlRoaXMgY2FuIGJlIHVzZWQgd2hlbiBidWlsZGluZyBuZXcgcGFja2FnZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbmFtZS4xOjk1Cittc2dpZCAiIgorIlNvbWUgcGFja2FnZXMgZG9uJ3QgZm9sbG93IHRoZSBuYW1lIHN0cnVjdHVyZSAiCisiSTxwYWNrYWdlPkI8Xz5JPHZlcnNpb24+QjxfPkk8YXJjaGl0ZWN0dXJlPkI8LmRlYj4uICBQYWNrYWdlcyByZW5hbWVkIGJ5ICIKKyJkcGtnLW5hbWUgd2lsbCBmb2xsb3cgdGhpcyBzdHJ1Y3R1cmUuIEdlbmVyYWxseSB0aGlzIHdpbGwgaGF2ZSBubyBpbXBhY3Qgb24gIgorImhvdyBwYWNrYWdlcyBhcmUgaW5zdGFsbGVkIGJ5IEI8ZHNlbGVjdD4oMSkvQjxkcGtnPigxKSwgYnV0IG90aGVyICIKKyJpbnN0YWxsYXRpb24gdG9vbHMgbWlnaHQgZGVwZW5kIG9uIHRoaXMgbmFtaW5nIHN0cnVjdHVyZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6MTAzCittc2dpZCAiIgorIkI8ZGViPig1KSwgQjxkZWItY29udHJvbD4oNSksIEI8ZHBrZz4oMSksIEI8ZHBrZy1kZWI+KDEpLCBCPGZpbmQ+KDEpLCAiCisiQjx4YXJncz4oMSkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbmFtZS4xOjEwNgorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAxOTk1LDE5OTYgRXJpY2sgQnJhbmRlcmhvcnN0IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MQorIywgbm8td3JhcAorbXNnaWQgImRwa2ctcGFyc2VjaGFuZ2Vsb2ciCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjQKK21zZ2lkICJkcGtnLXBhcnNlY2hhbmdlbG9nIC0gcGFyc2UgRGViaWFuIGNoYW5nZWxvZyBmaWxlcyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6OAorbXNnaWQgIkI8ZHBrZy1wYXJzZWNoYW5nZWxvZz4gW0k8b3B0aW9uPi4uLl0iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjE0Cittc2dpZCAiIgorIkI8ZHBrZy1wYXJzZWNoYW5nZWxvZz4gcmVhZHMgYW5kIHBhcnNlcyB0aGUgY2hhbmdlbG9nIG9mIGFuIHVucGFja2VkIERlYmlhbiAiCisic291cmNlIHRyZWUgYW5kIG91dHB1dHMgdGhlIGluZm9ybWF0aW9uIGluIGl0IHRvIHN0YW5kYXJkIG91dHB1dCBpbiBhICIKKyJtYWNoaW5lLXJlYWRhYmxlIGZvcm0uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MjYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1MPkk8bGliZGlyPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MzMKK21zZ2lkICIiCisiU3BlY2lmeSBhbiBhZGRpdGlvbmFsIGRpcmVjdG9yeSB0byBzZWFyY2ggZm9yIHBhcnNlciBzY3JpcHRzLiAgVGhpcyAiCisiZGlyZWN0b3J5IGlzIHNlYXJjaGVkIGJlZm9yZSB0aGUgZGVmYXVsdCBkaXJlY3RvcmllcyB3aGljaCBhcmUgY3VycmVudGx5ICIKKyJCPC91c3IvbG9jYWwvbGliL2Rwa2cvcGFyc2VjaGFuZ2Vsb2c+IGFuZCBCPC91c3IvbGliL2Rwa2cvcGFyc2VjaGFuZ2Vsb2c+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjM5CisjLCBuby13cmFwCittc2dpZCAiUGFyc2VyIE9wdGlvbnMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjQ0Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgb3B0aW9ucyBjYW4gYmUgdXNlZCB0byBpbmZsdWVuY2UgdGhlIG91dHB1dCBvZiB0aGUgY2hhbmdlbG9nICIKKyJwYXJzZXIsIGUuZy4gdGhlIHJhbmdlIG9mIGVudHJpZXMgb3IgdGhlIGZvcm1hdCBvZiB0aGUgb3V0cHV0LiBUaGV5IG5lZWQgdG8gIgorImJlIHN1cHBvcnRlZCBieSB0aGUgcGFyc2VyIHNjcmlwdCBpbiBxdWVzdGlvbi4gU2VlIGFsc28gQjxDQVZFQVRTPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo0NAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1mb3JtYXQ+STwgb3V0cHV0Zm9ybWF0PiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6NTMKK21zZ2lkICIiCisiU2V0IHRoZSBvdXRwdXQgZm9ybWF0LiBDdXJyZW50bHkgc3VwcG9ydGVkIHZhbHVlcyBhcmUgSTxkcGtnPiBhbmQgIgorIkk8cmZjODIyPi4gIEk8ZHBrZz4gaXMgdGhlIGNsYXNzaWMgb3V0cHV0IGZvcm1hdCAoZnJvbSBiZWZvcmUgdGhpcyBvcHRpb24gIgorImV4aXN0ZWQpIGFuZCB0aGUgZGVmYXVsdC4gSXQgY29uc2lzdHMgb2Ygb25lIHBhcmFncmFwaCBpbiBEZWJpYW4gY29udHJvbCAiCisiZm9ybWF0IChzZWUgQjxkZWItY29udHJvbD4oNSkpLiBJZiBtb3JlIHRoYW4gb25lIGVudHJ5IGlzIHJlcXVlc3RlZCwgdGhlbiAiCisibW9zdCBmaWVsZHMgYXJlIHRha2VuIGZyb20gdGhlIGxhdGVzdCBlbnRyeSwgZXhjZXB0IG90aGVyd2lzZSBzdGF0ZWQ6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6NTQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPFNvdXJjZTo+STwgcGtnLW5hbWU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6NTYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPFZlcnNpb246Pkk8IHZlcnNpb24+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6NTgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPERpc3RyaWJ1dGlvbjo+STwgdGFyZ2V0LWRpc3RyaWJ1dGlvbj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo2MAorIywgbm8td3JhcAorbXNnaWQgIkI8VXJnZW5jeTo+STwgdXJnZW5jeT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjYzCittc2dpZCAiVGhlIGhpZ2hlc3QgdXJnZW5jeSBvZiBhbGwgaW5jbHVkZWQgZW50cmllcyBpcyB1c2VkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjYzCisjLCBuby13cmFwCittc2dpZCAiQjxNYWludGFpbmVyOj5JPCBhdXRob3I+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6NjUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPERhdGU6Pkk8IGRhdGU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6NjcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPENsb3Nlczo+STwgYnVnLW51bWJlcj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjcwCittc2dpZCAiVGhlIENsb3NlcyBmaWVsZHMgb2YgYWxsIGluY2x1ZGVkIGVudHJpZXMgYXJlIG1lcmdlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo3MAorIywgbm8td3JhcAorbXNnaWQgIkI8Q2hhbmdlczo+STwgY2hhbmdlbG9nLWVudHJpZXM+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo3NworbXNnaWQgIiIKKyJUaGUgdGV4dCBvZiBhbGwgY2hhbmdlbG9nIGVudHJpZXMgaXMgY29uY2F0ZW5hdGVkLiBUbyBtYWtlIHRoaXMgZmllbGQgYSAiCisidmFsaWQgRGViaWFuIGNvbnRyb2wgZm9ybWF0IG11bHRpbGluZSBmaWVsZCBlbXB0eSBsaW5lcyBhcmUgcmVwbGFjZWQgd2l0aCBhICIKKyJzaW5nbGUgZnVsbCBzdG9wIGFuZCBhbGwgbGluZXMgaXMgaW50ZW5kZWQgYnkgb25lIHNwYWNlIGNoYXJhY3Rlci4gVGhlIGV4YWN0ICIKKyJjb250ZW50IGRlcGVuZHMgb24gdGhlIGNoYW5nZWxvZyBmb3JtYXQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo4MAorbXNnaWQgIlRoZXJlIG1pZ2h0IGJlIGFkZGl0aW9uYWwgdXNlci1kZWZpbmVkIGZpZWxkcyBwcmVzZW50LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6ODQKK21zZ2lkICIiCisiVGhlIEI8cmZjODIyPiBmb3JtYXQgdXNlcyB0aGUgc2FtZSBmaWVsZHMgYnV0IG91dHB1dHMgYSBzZXBhcmF0ZSBwYXJhZ3JhcGggIgorImZvciBlYWNoIGNoYW5nZWxvZyBlbnRyeSBzbyB0aGF0IGFsbCBtZXRhZGF0YSBmb3IgZWFjaCBlbnRyeSBpcyBwcmVzZXJ2ZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6ODQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tc2luY2U+IEk8dmVyc2lvbj4sIEI8LXM+STx2ZXJzaW9uPixCPCAtdj5JPHZlcnNpb24+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo4NworbXNnaWQgImluY2x1ZGUgYWxsIGNoYW5nZXMgbGF0ZXIgdGhhbiBJPHZlcnNpb24+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjg3CisjLCBuby13cmFwCittc2dpZCAiQjwtLXVudGlsPiBJPHZlcnNpb24+LCBCPC11Pkk8dmVyc2lvbj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjkwCittc2dpZCAiaW5jbHVkZSBhbGwgY2hhbmdlcyBlYXJsaWVyIHRoYW4gSTx2ZXJzaW9uPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo5MAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1mcm9tPiBJPHZlcnNpb24+LCBCPC1mPkk8dmVyc2lvbj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjkzCittc2dpZCAiaW5jbHVkZSBhbGwgY2hhbmdlcyBlcXVhbCBvciBsYXRlciB0aGFuIEk8dmVyc2lvbj4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6OTMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tdG8+IEk8dmVyc2lvbj4sIEI8LXQ+STx2ZXJzaW9uPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6OTYKK21zZ2lkICJpbmNsdWRlIGFsbCBjaGFuZ2VzIHVwIHRvIG9yIGVxdWFsIHRoYW4gSTx2ZXJzaW9uPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo5NgorIywgbm8td3JhcAorbXNnaWQgIkI8LS1jb3VudD4gSTxudW1iZXI+LCBCPC1jPkk8bnVtYmVyPiwgQjwtbj5JPG51bWJlcj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjEwMAorbXNnaWQgIiIKKyJpbmNsdWRlIEk8bnVtYmVyPiBlbnRyaWVzIGZyb20gdGhlIHRvcCAob3IgdGhlIHRhaWwgaWYgSTxudW1iZXI+IGlzIGxvd2VyICIKKyJ0aGFuIDApLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjEwMAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1vZmZzZXQ+IEk8bnVtYmVyPiwgQjwtbz5JPG51bWJlcj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjEwNAorbXNnaWQgIiIKKyJjaGFuZ2UgdGhlIHN0YXJ0aW5nIHBvaW50IGZvciAtLWNvdW50LCBjb3VudGVkIGZyb20gdGhlIHRvcCAob3IgdGhlIHRhaWwgaWYgIgorIkk8bnVtYmVyPiBpcyBsb3dlciB0aGFuIDApLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjEwNCB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjY4CisjLCBuby13cmFwCittc2dpZCAiQjwtLWFsbD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjEwOAorbXNnaWQgImluY2x1ZGUgYWxsIGNoYW5nZXMuIE5vdGU6IG90aGVyIG9wdGlvbnMgaGF2ZSBubyBlZmZlY3Qgd2hlbiB0aGlzIGlzIGluIHVzZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjExNAorbXNnaWQgIiIKKyJBbGwgQjxQYXJzZXIgT3B0aW9ucz4gZXhjZXB0IGZvciAtdiBhcmUgb25seSBzdXBwb3J0ZWQgaW4gQjxkcGtnPiwgdmVyc2lvbiAiCisiMS4xNC4xNiBhbmQgbGF0ZXIuIFRoaXJkIHBhcnR5IHBhcnNlcnMgZm9yIGNoYW5nZWxvZyBmb3JtYXRzIG90aGVyIHRoYW4gIgorIkk8ZGViaWFuPiBtaWdodCBub3Qgc3VwcG9ydCBhbGwgb3B0aW9ucy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxMTYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGRlYmlhbi9jaGFuZ2Vsb2c+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxMjIKK21zZ2lkICIiCisiVGhlIGNoYW5nZWxvZyBmaWxlLCB1c2VkIHRvIG9idGFpbiB2ZXJzaW9uLWRlcGVuZGVudCBpbmZvcm1hdGlvbiBhYm91dCB0aGUgIgorInNvdXJjZSBwYWNrYWdlLCBzdWNoIGFzIHRoZSB1cmdlbmN5IGFuZCBkaXN0cmlidXRpb24gb2YgYW4gdXBsb2FkLCB0aGUgIgorImNoYW5nZXMgbWFkZSBzaW5jZSBhIHBhcnRpY3VsYXIgcmVsZWFzZSwgYW5kIHRoZSBzb3VyY2UgdmVyc2lvbiBudW1iZXIgIgorIml0c2VsZi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjEyOQorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDA3LCAyMDA4IEZyYW5rIExpY2h0ZW5oZWxkIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLXF1ZXJ5LjE6MQorIywgbm8td3JhcAorbXNnaWQgImRwa2ctcXVlcnkiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjQKK21zZ2lkICJkcGtnLXF1ZXJ5IC0gYSB0b29sIHRvIHF1ZXJ5IHRoZSBkcGtnIGRhdGFiYXNlIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMTo4Cittc2dpZCAiQjxkcGtnLXF1ZXJ5PiBbSTxvcHRpb24+Li4uXSBJPGNvbW1hbmQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMToxMgorbXNnaWQgIiIKKyJCPGRwa2ctcXVlcnk+IGlzIGEgdG9vbCB0byBzaG93IGluZm9ybWF0aW9uIGFib3V0IHBhY2thZ2VzIGxpc3RlZCBpbiB0aGUgIgorIkI8ZHBrZz4gZGF0YWJhc2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXF1ZXJ5LjE6MTQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1sPiwgQjwtLWxpc3Q+IFtJPHBhY2thZ2UtbmFtZS1wYXR0ZXJuPi4uLl0iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjI0Cittc2dpZCAiIgorIkxpc3QgcGFja2FnZXMgbWF0Y2hpbmcgZ2l2ZW4gcGF0dGVybi4gSWYgbm8gSTxwYWNrYWdlLW5hbWUtcGF0dGVybj4gaXMgIgorImdpdmVuLCBsaXN0IGFsbCBwYWNrYWdlcyBpbiBJPC92YXIvbGliL2Rwa2cvc3RhdHVzPiwgZXhjbHVkaW5nIHRoZSBvbmVzICIKKyJtYXJrZWQgYXMgbm90LWluc3RhbGxlZCAoaS5lLiB0aG9zZSB3aGljaCBoYXZlIGJlZW4gcHJldmlvdXNseSAiCisicHVyZ2VkKS4gTm9ybWFsIHNoZWxsIHdpbGRjaGFycyBhcmUgYWxsb3dlZCBpbiAiCisiSTxwYWNrYWdlLW5hbWUtcGF0dGVybj4uIFBsZWFzZSBub3RlIHlvdSB3aWxsIHByb2JhYmx5IGhhdmUgdG8gcXVvdGUgIgorIkk8cGFja2FnZS1uYW1lLXBhdHRlcm4+IHRvIHByZXZlbnQgdGhlIHNoZWxsIGZyb20gcGVyZm9ybWluZyBmaWxlbmFtZSAiCisiZXhwYW5zaW9uLiBGb3IgZXhhbXBsZSB0aGlzIHdpbGwgbGlzdCBhbGwgcGFja2FnZSBuYW1lcyBzdGFydGluZyB3aXRoICIKKyJgYGxpYmM2Jyc6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMToyNworIywgbm8td3JhcAorbXNnaWQgIiAgQjxkcGtnLXF1ZXJ5IC1sIFxcKGFxbGliYzYqXFwoYXE+XG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjMxCittc2dpZCAiIgorIlRoZSBmaXJzdCB0aHJlZSBjb2x1bW5zIG9mIHRoZSBvdXRwdXQgc2hvdyB0aGUgZGVzaXJlZCBhY3Rpb24sIHRoZSBwYWNrYWdlICIKKyJzdGF0dXMsIGFuZCBlcnJvcnMsIGluIHRoYXQgb3JkZXIuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMTozMworbXNnaWQgIkRlc2lyZWQgYWN0aW9uOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6MzkKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiICB1ID0gVW5rbm93blxuIgorIiAgaSA9IEluc3RhbGxcbiIKKyIgIGggPSBIb2xkXG4iCisiICByID0gUmVtb3ZlXG4iCisiICBwID0gUHVyZ2VcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6NDIKK21zZ2lkICJQYWNrYWdlIHN0YXR1czoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjUxCisjLCBuby13cmFwCittc2dpZCAiIgorIiAgbiA9IE5vdC1pbnN0YWxsZWRcbiIKKyIgIGMgPSBDb25maWctZmlsZXNcbiIKKyIgIEggPSBIYWxmLWluc3RhbGxlZFxuIgorIiAgVSA9IFVucGFja2VkXG4iCisiICBGID0gSGFsZi1jb25maWd1cmVkXG4iCisiICBXID0gVHJpZ2dlcnMtYXdhaXRpbmdcbiIKKyIgIHQgPSBUcmlnZ2Vycy1wZW5kaW5nXG4iCisiICBpID0gSW5zdGFsbGVkXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjU0Cittc2dpZCAiRXJyb3IgZmxhZ3M6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMTo1NworIywgbm8td3JhcAorbXNnaWQgIiIKKyIgIEU8bHQ+ZW1wdHlFPGd0PiA9IChub25lKVxuIgorIiAgUiA9IFJlaW5zdC1yZXF1aXJlZFxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMTo2MgorbXNnaWQgIiIKKyJBbiB1cHBlcmNhc2Ugc3RhdHVzIG9yIGVycm9yIGxldHRlciBpbmRpY2F0ZXMgdGhlIHBhY2thZ2UgaXMgbGlrZWx5IHRvIGNhdXNlICIKKyJzZXZlcmUgcHJvYmxlbXMuIFBsZWFzZSByZWZlciB0byBCPGRwa2c+KDEpIGZvciBpbmZvcm1hdGlvbiBhYm91dCB0aGUgYWJvdmUgIgorInN0YXRlcyBhbmQgZmxhZ3MuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMTo2NworbXNnaWQgIiIKKyJUaGUgb3V0cHV0IGZvcm1hdCBvZiB0aGlzIG9wdGlvbiBpcyBub3QgY29uZmlndXJhYmxlLCBidXQgdmFyaWVzICIKKyJhdXRvbWF0aWNhbGx5IHRvIGZpdCB0aGUgdGVybWluYWwgd2lkdGguIEl0IGlzIGludGVuZGVkIGZvciBodW1hbiByZWFkZXJzLCAiCisiYW5kIGlzIG5vdCBlYXNpbHkgbWFjaGluZS1yZWFkYWJsZS4gU2VlIEI8LVc+IChCPC0tc2hvdz4pICBhbmQgIgorIkI8LS1zaG93Zm9ybWF0PiBmb3IgYSB3YXkgdG8gY29uZmlndXJlIHRoZSBvdXRwdXQgZm9ybWF0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1xdWVyeS4xOjY3CisjLCBuby13cmFwCittc2dpZCAiQjwtVz4sIEI8LS1zaG93PiBbSTxwYWNrYWdlLW5hbWUtcGF0dGVybj4uLi5dIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMTo3NAorbXNnaWQgIiIKKyJKdXN0IGxpa2UgdGhlIEI8LS1saXN0PiBvcHRpb24gdGhpcyB3aWxsIGxpc3QgYWxsIHBhY2thZ2VzIG1hdGNoaW5nIHRoZSAiCisiZ2l2ZW4gcGF0dGVybi4gSG93ZXZlciB0aGUgb3V0cHV0IGNhbiBiZSBjdXN0b21pemVkIHVzaW5nIHRoZSAiCisiQjwtLXNob3dmb3JtYXQ+IG9wdGlvbi4gIFRoZSBkZWZhdWx0IG91dHB1dCBmb3JtYXQgZ2l2ZXMgb25lIGxpbmUgcGVyICIKKyJtYXRjaGluZyBwYWNrYWdlLCBlYWNoIGxpbmUgaGF2aW5nIHRoZSBuYW1lIGFuZCBpbnN0YWxsZWQgdmVyc2lvbiBvZiB0aGUgIgorInBhY2thZ2UsIHNlcGFyYXRlZCBieSBhIHRhYi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcXVlcnkuMTo3NAorIywgbm8td3JhcAorbXNnaWQgIkI8LXM+LCBCPC0tc3RhdHVzPiBJPHBhY2thZ2UtbmFtZT4uLi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjc5Cittc2dpZCAiIgorIlJlcG9ydCBzdGF0dXMgb2Ygc3BlY2lmaWVkIHBhY2thZ2UuIFRoaXMganVzdCBkaXNwbGF5cyB0aGUgZW50cnkgaW4gdGhlICIKKyJpbnN0YWxsZWQgcGFja2FnZSBzdGF0dXMgZGF0YWJhc2UuIFdoZW4gbXVsdGlwbGUgSTxwYWNrYWdlLW5hbWU+IGFyZSBsaXN0ZWQsICIKKyJ0aGUgcmVxdWVzdGVkIHN0YXR1cyBlbnRyaWVzIGFyZSBzZXBhcmF0ZWQgYnkgYW4gZW1wdHkgbGluZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcXVlcnkuMTo3OQorIywgbm8td3JhcAorbXNnaWQgIkI8LUw+LCBCPC0tbGlzdGZpbGVzPiBJPHBhY2thZ2UtbmFtZT4uLi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjg1Cittc2dpZCAiIgorIkxpc3QgZmlsZXMgaW5zdGFsbGVkIHRvIHlvdXIgc3lzdGVtIGZyb20gSTxwYWNrYWdlLW5hbWU+LiBXaGVuIG11bHRpcGxlICIKKyJJPHBhY2thZ2UtbmFtZT4gYXJlIGxpc3RlZCwgdGhlIHJlcXVlc3RlZCBsaXN0cyBvZiBmaWxlcyBhcmUgc2VwYXJhdGVkIGJ5IGFuICIKKyJlbXB0eSBsaW5lLiBIb3dldmVyLCBub3RlIHRoYXQgZmlsZXMgY3JlYXRlZCBieSBwYWNrYWdlLXNwZWNpZmljICIKKyJpbnN0YWxsYXRpb24tc2NyaXB0cyBhcmUgbm90IGxpc3RlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcXVlcnkuMTo4NQorIywgbm8td3JhcAorbXNnaWQgIkI8LWM+LCBCPC0tY29udHJvbC1wYXRoPiBJPHBhY2thZ2UtbmFtZT4gW0k8Y29udHJvbC1maWxlPl0iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjkzCittc2dpZCAiIgorIkxpc3QgcGF0aHMgZm9yIGNvbnRyb2wgZmlsZXMgaW5zdGFsbGVkIHRvIHlvdXIgc3lzdGVtIGZyb20gSTxwYWNrYWdlLW5hbWU+LiAgIgorIklmIEk8Y29udHJvbC1maWxlPiBpcyBzcGVjaWZpZWQgdGhlbiBvbmx5IGxpc3QgdGhlIHBhdGggZm9yIHRoYXQgY29udHJvbCAiCisiZmlsZSBpZiBpdCBpcyBwcmVzZW50LiBCPFdhcm5pbmc+OiB0aGlzIGNvbW1hbmQgaXMgc2VtaS1wdWJsaWMsIGl0IHNob3VsZCBiZSAiCisidXNlZCBvbmx5IGFzIGEgbGFzdCByZXNvcnQgc29sdXRpb24sIGFuZCBpZiBubyBvdGhlciBpbnRlcmZhY2UgaXMgIgorImF2YWlsYWJsZS4gSXQgbWlnaHQgZ2V0IGRlcHJlY2F0ZWQgbGF0ZXIgb24gaWYgYmV0dGVyIGludGVyZmFjZXMgb3IgdGhlICIKKyJjdXJyZW50IGFyY2hpdGVjdHVyYWwgZGVmaWNpZW5jaWVzIGhhdmUgYmVlbiBzb2x2ZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXF1ZXJ5LjE6OTMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1TPiwgQjwtLXNlYXJjaD4gSTxmaWxlbmFtZS1zZWFyY2gtcGF0dGVybj4uLi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjk5Cittc2dpZCAiIgorIlNlYXJjaCBmb3IgcGFja2FnZXMgdGhhdCBvd24gZmlsZXMgY29ycmVzcG9uZGluZyB0byB0aGUgZ2l2ZW4gcGF0dGVybi4gICIKKyJTdGFuZGFyZCBzaGVsbCB3aWxkY2hhcnMgY2FuIGJlIHVzZWQgaW4gdGhlIHBhdHRlcm4uICBUaGlzIGNvbW1hbmQgd2lsbCBub3QgIgorImxpc3QgZXh0cmEgZmlsZXMgY3JlYXRlZCBieSBtYWludGFpbmVyIHNjcmlwdHMsIG5vciB3aWxsIGl0IGxpc3QgIgorImFsdGVybmF0aXZlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcXVlcnkuMTo5OQorIywgbm8td3JhcAorbXNnaWQgIkI8LXA+LCBCPC0tcHJpbnQtYXZhaWw+IEk8cGFja2FnZS1uYW1lPi4uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6MTA1Cittc2dpZCAiIgorIkRpc3BsYXkgZGV0YWlscyBhYm91dCBJPHBhY2thZ2UtbmFtZT4sIGFzIGZvdW5kIGluICIKKyJJPC92YXIvbGliL2Rwa2cvYXZhaWxhYmxlPi4gV2hlbiBtdWx0aXBsZSBJPHBhY2thZ2UtbmFtZT4gYXJlIGxpc3RlZCwgdGhlICIKKyJyZXF1ZXN0ZWQgSTxhdmFpbGFibGU+IGVudHJpZXMgYXJlIHNlcGFyYXRlZCBieSBhbiBlbXB0eSBsaW5lLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6MTEwCittc2dpZCAiIgorIlVzZXJzIG9mIEFQVC1iYXNlZCBmcm9udGVuZHMgc2hvdWxkIHVzZSBCPGFwdC1jYWNoZSBzaG93PiBJPHBhY2thZ2UtbmFtZT4gIgorImluc3RlYWQgYXMgdGhlIEk8YXZhaWxhYmxlPiBmaWxlIGlzIG9ubHkga2VwdCB1cC10by1kYXRlIHdoZW4gdXNpbmcgIgorIkI8ZHNlbGVjdD4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXF1ZXJ5LjE6MTIyCisjLCBuby13cmFwCittc2dpZCAiQjwtZj4sIEI8LS1zaG93Zm9ybWF0PT5JPGZvcm1hdD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjEyOQorbXNnaWQgIkluIHRoZSBmb3JtYXQgc3RyaW5nLCBcXChscUI8XFxlPlxcKHJxIGludHJvZHVjZXMgZXNjYXBlczoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjEzNAorIywgbm8td3JhcAorbXNnaWQgIiIKKyIgICAgQjxcXGVuPiAgbmV3bGluZVxuIgorIiAgICBCPFxcZXI+ICBjYXJyaWFnZSByZXR1cm5cbiIKKyIgICAgQjxcXGV0PiAgdGFiXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjEzOQorbXNnaWQgIiIKKyJcXChscUI8XFxlPlxcKHJxIGJlZm9yZSBhbnkgb3RoZXIgY2hhcmFjdGVyIHN1cHByZXNzZXMgYW55IHNwZWNpYWwgbWVhbmluZyAiCisib2YgdGhlIGZvbGxvd2luZyBjaGFyYWN0ZXIsIHdoaWNoIGlzIHVzZWZ1bCBmb3IgXFwobHFCPFxcZT5cXChycSBhbmQgIgorIlxcKGxxQjwkPlxcKHJxLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6MTQ3Cittc2dpZCAiIgorIlBhY2thZ2UgaW5mb3JtYXRpb24gY2FuIGJlIGluY2x1ZGVkIGJ5IGluc2VydGluZyB2YXJpYWJsZSByZWZlcmVuY2VzIHRvICIKKyJwYWNrYWdlIGZpZWxkcyB1c2luZyB0aGUgc3ludGF4ICIKKyJcXChscUI8JHs+STxmaWVsZD5bQjw7Pkk8d2lkdGg+XUI8fT5cXChycS4gRmllbGRzIGFyZSBwcmludGVkIHJpZ2h0LWFsaWduZWQgIgorInVubGVzcyB0aGUgd2lkdGggaXMgbmVnYXRpdmUgaW4gd2hpY2ggY2FzZSBsZWZ0IGFsaWdubWVudCB3aWxsIGJlIHVzZWQuIFRoZSAiCisiZm9sbG93aW5nIEk8ZmllbGQ+cyBhcmUgcmVjb2duaXNlZCBidXQgdGhleSBhcmUgbm90IG5lY2Vzc2FyaWx5IGF2YWlsYWJsZSBpbiAiCisidGhlIHN0YXR1cyBmaWxlIChvbmx5IGludGVybmFsIGZpZWxkcyBvciBmaWVsZHMgc3RvcmVkIGluIHRoZSBiaW5hcnkgcGFja2FnZSAiCisiZW5kIHVwIGluIGl0KToiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjE4MgorIywgbm8td3JhcAorbXNnaWQgIiIKKyIgICAgQjxBcmNoaXRlY3R1cmU+XG4iCisiICAgIEI8QnVncz5cbiIKKyIgICAgQjxDb25mZmlsZXM+IChpbnRlcm5hbClcbiIKKyIgICAgQjxDb25maWctVmVyc2lvbj4gKGludGVybmFsKVxuIgorIiAgICBCPENvbmZsaWN0cz5cbiIKKyIgICAgQjxCcmVha3M+XG4iCisiICAgIEI8RGVwZW5kcz5cbiIKKyIgICAgQjxEZXNjcmlwdGlvbj5cbiIKKyIgICAgQjxFbmhhbmNlcz5cbiIKKyIgICAgQjxFc3NlbnRpYWw+XG4iCisiICAgIEI8RmlsZW5hbWU+IChpbnRlcm5hbCwgZnJvbnQtZW5kIHJlbGF0ZWQpXG4iCisiICAgIEI8SG9tZXBhZ2U+XG4iCisiICAgIEI8SW5zdGFsbGVkLVNpemU+XG4iCisiICAgIEI8TUQ1c3VtPiAoaW50ZXJuYWwsIGZyb250LWVuZCByZWxhdGVkKVxuIgorIiAgICBCPE1TRE9TLUZpbGVuYW1lPiAoaW50ZXJuYWwsIGZyb250LWVuZCByZWxhdGVkKVxuIgorIiAgICBCPE1haW50YWluZXI+XG4iCisiICAgIEI8T3JpZ2luPlxuIgorIiAgICBCPFBhY2thZ2U+XG4iCisiICAgIEI8UHJlLURlcGVuZHM+XG4iCisiICAgIEI8UHJpb3JpdHk+XG4iCisiICAgIEI8UHJvdmlkZXM+XG4iCisiICAgIEI8UmVjb21tZW5kcz5cbiIKKyIgICAgQjxSZXBsYWNlcz5cbiIKKyIgICAgQjxSZXZpc2lvbj4gKG9ic29sZXRlKVxuIgorIiAgICBCPFNlY3Rpb24+XG4iCisiICAgIEI8U2l6ZT4gKGludGVybmFsLCBmcm9udC1lbmQgcmVsYXRlZClcbiIKKyIgICAgQjxTb3VyY2U+XG4iCisiICAgIEI8U3RhdHVzPiAoaW50ZXJuYWwpXG4iCisiICAgIEI8U3VnZ2VzdHM+XG4iCisiICAgIEI8VGFnPiAodXN1YWxseSBub3QgaW4gdGhlIC5kZWIgYnV0IGluIHRoZSByZXBvc2l0b3J5IFBhY2thZ2VzIGZpbGVzKVxuIgorIiAgICBCPFRyaWdnZXJzLUF3YWl0ZWQ+IChpbnRlcm5hbClcbiIKKyIgICAgQjxUcmlnZ2Vycy1QZW5kaW5nPiAoaW50ZXJuYWwpXG4iCisiICAgIEI8VmVyc2lvbj5cbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6MTkwCittc2dpZCAiIgorIlRoZSBkZWZhdWx0IGZvcm1hdCBzdHJpbmcgaXMgXFwobHFCPCR7UGFja2FnZX1cXGV0JHtWZXJzaW9ufVxcZW4+XFwocnEuICAiCisiQWN0dWFsbHksIGFsbCBvdGhlciBmaWVsZHMgZm91bmQgaW4gdGhlIHN0YXR1cyBmaWxlIChpLmUuIHVzZXIgZGVmaW5lZCAiCisiZmllbGRzKSBjYW4gYmUgcmVxdWVzdGVkLCB0b28uIFRoZXkgd2lsbCBiZSBwcmludGVkIGFzLWlzLCB0aG91Z2gsIG5vICIKKyJjb252ZXJzaW9uIG5vciBlcnJvciBjaGVja2luZyBpcyBkb25lIG9uIHRoZW0uICBUbyBnZXQgdGhlIG5hbWUgb2YgdGhlIGRwa2cgIgorIm1haW50YWluZXIgYW5kIHRoZSBpbnN0YWxsZWQgdmVyc2lvbiwgeW91IGNvdWxkIHJ1bjoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjE5MworIywgbm8td3JhcAorbXNnaWQgIiIKKyIgIEI8ZHBrZy1xdWVyeSAtVyAtZj1cXChhcSR7UGFja2FnZX0gJHtWZXJzaW9ufVxcZXQke01haW50YWluZXJ9XFxlblxcKGFxICIKKyJkcGtnPlxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLXF1ZXJ5LjE6MTk1IGRwa2ctc3BsaXQuMToxNzkgc3RhcnQtc3RvcC1kYWVtb24uODoyNTkgdXBkYXRlLWFsdGVybmF0aXZlcy44OjM3NAorIywgbm8td3JhcAorbXNnaWQgIkVYSVQgU1RBVFVTIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXF1ZXJ5LjE6MTk2IGRwa2ctc3BsaXQuMToxODAgc3RhcnQtc3RvcC1kYWVtb24uODoyNjAgc3RhcnQtc3RvcC1kYWVtb24uODoyODkgdXBkYXRlLWFsdGVybmF0aXZlcy44OjM3NQorIywgbm8td3JhcAorbXNnaWQgIkI8MD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjE5OQorbXNnaWQgIlRoZSByZXF1ZXN0ZWQgcXVlcnkgd2FzIHN1Y2Nlc3NmdWxseSBwZXJmb3JtZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXF1ZXJ5LjE6MTk5IGRwa2ctc3BsaXQuMToxODYgc3RhcnQtc3RvcC1kYWVtb24uODoyNzAgc3RhcnQtc3RvcC1kYWVtb24uODoyOTIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPDE+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMToyMDMKK21zZ2lkICIiCisiUHJvYmxlbXMgd2VyZSBlbmNvdW50ZXJlZCB3aGlsZSBwYXJzaW5nIHRoZSBjb21tYW5kIGxpbmUgb3IgcGVyZm9ybWluZyB0aGUgIgorInF1ZXJ5LCBpbmNsdWRpbmcgbm8gZmlsZSBvciBwYWNrYWdlIGJlaW5nIGZvdW5kIChleGNlcHQgZm9yIC0tY29udHJvbC1wYXRoKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjIxMworbXNnaWQgIiIKKyJUaGlzIHNldHRpbmcgaW5mbHVlbmNlcyB0aGUgb3V0cHV0IG9mIHRoZSBCPC0tbGlzdD4gb3B0aW9uIGJ5IGNoYW5naW5nIHRoZSAiCisid2lkdGggb2YgaXRzIG91dHB1dC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjIxNgorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDAxIFdpY2hlcnQgQWtrZXJtYW4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6MTUKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLXNjYW5wYWNrYWdlcyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjE4Cittc2dpZCAiZHBrZy1zY2FucGFja2FnZXMgLSBjcmVhdGUgUGFja2FnZXMgaW5kZXggZmlsZXMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2FucGFja2FnZXMuMToyNgorbXNnaWQgIiIKKyJCPGRwa2ctc2NhbnBhY2thZ2VzPiBbSTxvcHRpb24+Li4uXSBJPGJpbmFyeS1kaXI+IFtJPG92ZXJyaWRlLWZpbGU+ICIKKyJbSTxwYXRoLXByZWZpeD5dXSBCPEU8Z3Q+PiBJPFBhY2thZ2VzPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjM5Cittc2dpZCAiIgorIkI8ZHBrZy1zY2FucGFja2FnZXM+IHNvcnRzIHRocm91Z2ggYSB0cmVlIG9mIERlYmlhbiBiaW5hcnkgcGFja2FnZXMgYW5kICIKKyJjcmVhdGVzIGEgUGFja2FnZXMgZmlsZSwgdXNlZCBieSBCPGFwdD4oOCksIEI8ZHNlbGVjdD4oMSksIGV0YywgdG8gdGVsbCB0aGUgIgorInVzZXIgd2hhdCBwYWNrYWdlcyBhcmUgYXZhaWxhYmxlIGZvciBpbnN0YWxsYXRpb24uIFRoZXNlIFBhY2thZ2VzIGZpbGVzIGFyZSAiCisidGhlIHNhbWUgYXMgdGhvc2UgZm91bmQgb24gRGViaWFuIGFyY2hpdmUgc2l0ZXMgYW5kIENELVJPTXMuIFlvdSBtaWdodCB1c2UgIgorIkI8ZHBrZy1zY2FucGFja2FnZXM+IHlvdXJzZWxmIGlmIG1ha2luZyBhIGRpcmVjdG9yeSBvZiBsb2NhbCBwYWNrYWdlcyB0byAiCisiaW5zdGFsbCBvbiBhIGNsdXN0ZXIgb2YgbWFjaGluZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6NTEKK21zZ2lkICIiCisiQjxOb3RlOj4gSWYgeW91IHdhbnQgdG8gYWNjZXNzIHRoZSBnZW5lcmF0ZWQgUGFja2FnZXMgZmlsZSB3aXRoIEI8YXB0PiB5b3UgIgorIndpbGwgcHJvYmFibHkgbmVlZCB0byBjb21wcmVzcyB0aGUgZmlsZSB3aXRoIEI8YnppcDI+KDEpICAoZ2VuZXJhdGluZyBhICIKKyJQYWNrYWdlcy5iejIgZmlsZSkgb3IgQjxnemlwPigxKSAgKGdlbmVyYXRpbmcgYSBQYWNrYWdlcy5neiBmaWxlKS4gYXB0ICIKKyJpZ25vcmVzIHVuY29tcHJlc3NlZCBQYWNrYWdlcyBmaWxlcyBleGNlcHQgb24gbG9jYWwgYWNjZXNzIChpLmUuICBCPGZpbGU6Ly8+ICIKKyJzb3VyY2VzKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2FucGFja2FnZXMuMTo1OAorbXNnaWQgIiIKKyJJPGJpbmFyeWRpcj4gaXMgdGhlIG5hbWUgb2YgdGhlIHRyZWUgb2YgdGhlIGJpbmFyeSBwYWNrYWdlcyB0byBwcm9jZXNzIChmb3IgIgorImV4YW1wbGUsIEI8Y29udHJpYi9iaW5hcnktaTM4Nj4pLiAgSXQgaXMgYmVzdCB0byBtYWtlIHRoaXMgcmVsYXRpdmUgdG8gdGhlICIKKyJyb290IG9mIHRoZSBEZWJpYW4gYXJjaGl2ZSwgYmVjYXVzZSBldmVyeSBGaWxlbmFtZSBmaWVsZCBpbiB0aGUgbmV3IFBhY2thZ2VzICIKKyJmaWxlIHdpbGwgc3RhcnQgd2l0aCB0aGlzIHN0cmluZy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2FucGFja2FnZXMuMTo2MworbXNnaWQgIiIKKyJJPG92ZXJyaWRlZmlsZT4gaXMgdGhlIG5hbWUgb2YgYSBmaWxlIHRvIHJlYWQgd2hpY2ggY29udGFpbnMgaW5mb3JtYXRpb24gIgorImFib3V0IGhvdyB0aGUgcGFja2FnZSBmaXRzIGludG8gdGhlIGRpc3RyaWJ1dGlvbiAoaXQgY2FuIGJlIGEgY29tcHJlc3NlZCAiCisiZmlsZSk7IHNlZSBCPGRlYi1vdmVycmlkZT4oNSkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6NjYKK21zZ2lkICJJPHBhdGhwcmVmaXg+IGlzIGFuIG9wdGlvbmFsIHN0cmluZyB0byBiZSBwcmVwZW5kZWQgdG8gdGhlIEZpbGVuYW1lIGZpZWxkcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2FucGFja2FnZXMuMTo3MAorbXNnaWQgIiIKKyJJZiBtb3JlIHRoYW4gb25lIHZlcnNpb24gb2YgYSBwYWNrYWdlIGlzIGZvdW5kIG9ubHkgdGhlIG5ld2VzdCBvbmUgaXMgIgorImluY2x1ZGVkIGluIHRoZSBvdXRwdXQuIElmIHRoZXkgaGF2ZSB0aGUgc2FtZSB2ZXJzaW9uIGFuZCBvbmx5IGRpZmZlciBpbiAiCisiYXJjaGl0ZWN0dXJlIG9ubHkgdGhlIGZpcnN0IG9uZSBmb3VuZCBpcyB1c2VkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zY2FucGFja2FnZXMuMTo3MgorIywgbm8td3JhcAorbXNnaWQgIkI8LXQ+LCBCPC0tdHlwZT4gSTx0eXBlPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjc1Cittc2dpZCAiU2NhbiBmb3IgKi5JPHR5cGU+IHBhY2thZ2VzLCBpbnN0ZWFkIG9mICouZGViLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zY2FucGFja2FnZXMuMTo3NQorIywgbm8td3JhcAorbXNnaWQgIkI8LXU+LCBCPC0tdWRlYj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2FucGFja2FnZXMuMTo3OAorbXNnaWQgIkI8T2Jzb2xldGU+IGFsaWFzIGZvciBCPC10dWRlYj4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjc4IGRwa2ctc2NhbnNvdXJjZXMuMTo0OQorIywgbm8td3JhcAorbXNnaWQgIkI8LWU+LCBCPC0tZXh0cmEtb3ZlcnJpZGU+IEk8ZmlsZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2FucGFja2FnZXMuMTo4NCBkcGtnLXNjYW5zb3VyY2VzLjE6NTQKK21zZ2lkICIiCisiU2NhbiBJPGZpbGU+IHRvIGZpbmQgc3VwcGxlbWVudGFyeSBvdmVycmlkZXMgKHRoZSBmaWxlIGNhbiBiZSAiCisiY29tcHJlc3NlZCkuIFNlZSBCPGRlYi1leHRyYS1vdmVycmlkZT4oNSkgIGZvciBtb3JlIGluZm9ybWF0aW9uIG9uIGl0cyAiCisiZm9ybWF0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zY2FucGFja2FnZXMuMTo4NAorIywgbm8td3JhcAorbXNnaWQgIkI8LWE+LCBCPC0tYXJjaD4gSTxhcmNoPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjg4Cittc2dpZCAiIgorIlVzZSBhIHBhdHRlcm4gY29uc2lzdGluZyBvZiBJPCpfYWxsLmRlYj4gYW5kIEk8Kl9hcmNoLmRlYj4gaW5zdGVhZCBvZiAiCisic2Nhbm5pbmcgZm9yIGFsbCBkZWJzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zY2FucGFja2FnZXMuMTo4OAorIywgbm8td3JhcAorbXNnaWQgIkI8LW0+LCBCPC0tbXVsdGl2ZXJzaW9uPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjkxCittc2dpZCAiSW5jbHVkZSBhbGwgZm91bmQgcGFja2FnZXMgaW4gdGhlIG91dHB1dC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6OTEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1NPiwgQjwtLW1lZGl1bT4gSTxpZC1zdHJpbmc+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6OTYKK21zZ2lkICIiCisiQWRkIGFuIFgtTWVkaXVtIGZpZWxkIGNvbnRhaW5pbmcgdGhlIHZhbHVlIEk8aWQtc3RyaW5nPi4gVGhpcyBmaWVsZCBpcyAiCisicmVxdWlyZWQgaWYgeW91IHdhbnQgdG8gZ2VuZXJhdGUgQjxQYWNrYWdlcy5jZD4gZmlsZXMgZm9yIHVzZSBieSB0aGUgbXVsdGljZCAiCisiYWNjZXNzIG1ldGhvZCBvZiBkc2VsZWN0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1zY2FucGFja2FnZXMuMToxMDMgdXBkYXRlLWFsdGVybmF0aXZlcy44OjQ0OAorIywgbm8td3JhcAorbXNnaWQgIkRJQUdOT1NUSUNTIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6MTA5Cittc2dpZCAiIgorIkI8ZHBrZy1zY2FucGFja2FnZXM+IG91dHB1dHMgdGhlIHVzdWFsIHNlbGYtZXhwbGFuYXRvcnkgZXJyb3JzLiBJdCBhbHNvICIKKyJ3YXJucyBhYm91dCBwYWNrYWdlcyB0aGF0IGFyZSBpbiB0aGUgd3Jvbmcgc3ViZGlyZWN0b3J5LCBhcmUgZHVwbGljYXRlZCwgIgorImhhdmUgYSBGaWxlbmFtZSBmaWVsZCBpbiB0aGVpciBjb250cm9sIGZpbGUsIGFyZSBtaXNzaW5nIGZyb20gdGhlIG92ZXJyaWRlICIKKyJmaWxlLCBvciBoYXZlIG1haW50YWluZXIgc3Vic3RpdHV0aW9ucyB3aGljaCBkbyBub3QgdGFrZSBlZmZlY3QuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6MTE1Cittc2dpZCAiIgorIkI8ZHBrZz4oMSksIEI8ZHNlbGVjdD4oMSksIEI8ZGViLW92ZXJyaWRlPig1KSwgQjxkZWItZXh0cmEtb3ZlcnJpZGU+KDUpLCAiCisiQjxkcGtnLXNjYW5zb3VyY2VzPigxKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMToxCisjLCBuby13cmFwCittc2dpZCAiZHBrZy1zY2Fuc291cmNlcyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6NAorbXNnaWQgImRwa2ctc2NhbnNvdXJjZXMgLSBjcmVhdGUgU291cmNlcyBpbmRleCBmaWxlcyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6MTIKK21zZ2lkICIiCisiQjxkcGtnLXNjYW5zb3VyY2VzPiBbSTxvcHRpb24+Li4uXSBJPGJpbmFyeS1kaXI+IFtJPG92ZXJyaWRlLWZpbGU+ICIKKyJbSTxwYXRoLXByZWZpeD5dXSBCPEU8Z3Q+PiBJPFNvdXJjZXM+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMToxNworbXNnaWQgIiIKKyJCPGRwa2ctc2NhbnNvdXJjZXM+IHNjYW5zIHRoZSBnaXZlbiBJPGJpbmFyeS1kaXI+IGZvciBJPC5kc2M+IGZpbGVzLiAgVGhlc2UgIgorImFyZSB1c2VkIHRvIGNyZWF0ZSBhIERlYmlhbiBzb3VyY2UgaW5kZXgsIHdoaWNoIGlzIG91dHB1dCB0byBzdGRvdXQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMToyOAorbXNnaWQgIiIKKyJUaGUgSTxvdmVycmlkZS1maWxlPiwgaWYgZ2l2ZW4sIGlzIHVzZWQgdG8gc2V0IHByaW9yaXRpZXMgaW4gdGhlIHJlc3VsdGluZyAiCisiaW5kZXggcmVjb3JkcyBhbmQgdG8gb3ZlcnJpZGUgdGhlIG1haW50YWluZXIgZmllbGQgZ2l2ZW4gaW4gdGhlIEk8LmRzYz4gIgorImZpbGVzLiBUaGUgZmlsZSBjYW4gYmUgY29tcHJlc3NlZC4gU2VlIEI8ZGViLW92ZXJyaWRlPig1KSAgZm9yIHRoZSBmb3JtYXQgb2YgIgorInRoaXMgZmlsZS4gXFxzLTFOQjpcXHMwIFNpbmNlIHRoZSBvdmVycmlkZSBmaWxlIGlzIGluZGV4ZWQgYnkgYmluYXJ5LCBub3QgIgorInNvdXJjZSwgcGFja2FnZXMsIHRoZXJlJ3MgYSBiaXQgb2YgYSBwcm9ibGVtIGhlcmUuIFRoZSBjdXJyZW50ICIKKyJpbXBsZW1lbnRhdGlvbiB1c2VzIHRoZSBoaWdoZXN0IHByaW9yaXR5IG9mIGFsbCB0aGUgYmluYXJ5IHBhY2thZ2VzIHByb2R1Y2VkICIKKyJieSBhIEk8LmRzYz4gZmlsZSBmb3IgdGhlIHByaW9yaXR5IG9mIHRoZSBzb3VyY2UgcGFja2FnZSwgYW5kIHRoZSBvdmVycmlkZSAiCisiZW50cnkgZm9yIHRoZSBmaXJzdCBiaW5hcnkgcGFja2FnZSBsaXN0ZWQgaW4gdGhlIEk8LmRzYz4gZmlsZSB0byBtb2RpZnkgIgorIm1haW50YWluZXIgaW5mb3JtYXRpb24uIFRoaXMgbWlnaHQgY2hhbmdlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6MzIKK21zZ2lkICIiCisiVGhlIEk8cGF0aC1wcmVmaXg+LCBpZiBnaXZlbiwgaXMgcHJlcGVuZGVkIHRvIHRoZSBkaXJlY3RvcnkgZmllbGQgaW4gdGhlICIKKyJnZW5lcmF0ZWQgc291cmNlIGluZGV4LiBZb3UgZ2VuZXJhbGx5IHVzZSB0aGlzIHRvIG1ha2UgdGhlIGRpcmVjdG9yeSBmaWVsZHMgIgorImNvbnRhaW4gdGhlIHBhdGggZnJvbSB0aGUgdG9wIG9mIHRoZSBEZWJpYW4gYXJjaGl2ZSBoaWVyYXJjaHkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMTo0MworbXNnaWQgIiIKKyJCPE5vdGU6PiBJZiB5b3Ugd2FudCB0byBhY2Nlc3MgdGhlIGdlbmVyYXRlZCBTb3VyY2VzIGZpbGUgd2l0aCBCPGFwdD4oOCkgICIKKyJ5b3Ugd2lsbCBwcm9iYWJseSBuZWVkIHRvIGNvbXByZXNzIHRoZSBmaWxlIHdpdGggQjxnemlwPigxKSAgKGdlbmVyYXRpbmcgYSAiCisiU291cmNlcy5neiBmaWxlKS4gYXB0IGlnbm9yZXMgdW5jb21wcmVzc2VkIFNvdXJjZXMgZmlsZXMgZXhjZXB0IG9uIGxvY2FsICIKKyJhY2Nlc3MgKGkuZS4gIEI8ZmlsZTovLz4gc291cmNlcykuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6NDUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1uPiwgQjwtLW5vLXNvcnQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMTo0OAorbXNnaWQgIiIKKyJEb24ndCBzb3J0IHRoZSBpbmRleCByZWNvcmRzLiBOb3JtYWxseSB0aGV5IGFyZSBzb3J0ZWQgYnkgc291cmNlIHBhY2thZ2UgIgorIm5hbWUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6NTQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1zPiwgQjwtLXNvdXJjZS1vdmVycmlkZT4gSTxmaWxlPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6NTgKK21zZ2lkICIiCisiVXNlIEk8ZmlsZT4gYXMgdGhlIHNvdXJjZSBvdmVycmlkZSBmaWxlICh0aGUgZmlsZSBjYW4gYmUgY29tcHJlc3NlZCkuICBUaGUgIgorImRlZmF1bHQgaXMgdGhlIG5hbWUgb2YgdGhlIG92ZXJyaWRlIGZpbGUgeW91IHNwZWNpZmllZCB3aXRoIEk8LnNyYz4gIgorImFwcGVuZGVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6NjQKK21zZ2lkICIiCisiVGhlIHNvdXJjZSBvdmVycmlkZSBmaWxlIGlzIGluIGEgZGlmZmVyZW50IGZvcm1hdCBmcm9tIHRoZSBiaW5hcnkgb3ZlcnJpZGUgIgorImZpbGUuIEl0IGNvbnRhaW5zIG9ubHkgdHdvIHdoaXRlc3BhY2Ugc2VwYXJhdGVkIGZpZWxkcywgdGhlIGZpcnN0IGlzIHRoZSAiCisic291cmNlIHBhY2thZ2UgbmFtZSBhbmQgdGhlIHNlY29uZCBpcyB0aGUgc2VjdGlvbi4gQmxhbmsgbGluZXMgYW5kIGNvbW1lbnQgIgorImxpbmVzIGFyZSBpZ25vcmVkIGluIHRoZSBub3JtYWwgbWFubmVyLiBJZiBhIHBhY2thZ2UgYXBwZWFycyBpbiBib3RoIGZpbGVzICIKKyJ0aGUgc291cmNlIG92ZXJyaWRlIHRha2VzIHByZWNlZGVuY2UgZm9yIHNldHRpbmcgdGhlIHNlY3Rpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6NjQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tZGVidWc+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMTo2NgorbXNnaWQgIlR1cm4gZGVidWdnaW5nIG9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6NzUKK21zZ2lkICJCPGRlYi1vdmVycmlkZT4oNSksIEI8ZGViLWV4dHJhLW92ZXJyaWRlPig1KSwgQjxkcGtnLXNjYW5wYWNrYWdlcz4oMSkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMTo3NworbXNnaWQgIlJvZGVyaWNrIFNjaGVydGxlciBFPGx0PnJvZGVyaWNrQGFyZ29uLm9yZ0U8Z3Q+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLXNobGliZGVwcy4xOjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLXNobGliZGVwcyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjQKK21zZ2lkICJkcGtnLXNobGliZGVwcyAtIGdlbmVyYXRlIHNoYXJlZCBsaWJyYXJ5IHN1YnN0dmFyIGRlcGVuZGVuY2llcyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjgKK21zZ2lkICJCPGRwa2ctc2hsaWJkZXBzPiBbSTxvcHRpb24+Li4uXSBbQjwtZT5dSTxleGVjdXRhYmxlPiBbSTxvcHRpb24+Li4uXSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjIyCittc2dpZCAiIgorIkI8ZHBrZy1zaGxpYmRlcHM+IGNhbGN1bGF0ZXMgc2hhcmVkIGxpYnJhcnkgZGVwZW5kZW5jaWVzIGZvciBleGVjdXRhYmxlcyAiCisibmFtZWQgaW4gaXRzIGFyZ3VtZW50cy4gVGhlIGRlcGVuZGVuY2llcyBhcmUgYWRkZWQgdG8gdGhlIHN1YnN0aXR1dGlvbiAiCisidmFyaWFibGVzIGZpbGUgQjxkZWJpYW4vc3Vic3R2YXJzPiBhcyB2YXJpYWJsZSBuYW1lcyAiCisiQjxzaGxpYnM6Pkk8ZGVwZW5kZW5jeWZpZWxkPiB3aGVyZSBJPGRlcGVuZGVuY3lmaWVsZD4gaXMgYSBkZXBlbmRlbmN5IGZpZWxkICIKKyJuYW1lLiBBbnkgb3RoZXIgdmFyaWFibGVzIHN0YXJ0aW5nIHdpdGggQjxzaGxpYnM6PiBhcmUgcmVtb3ZlZCBmcm9tIHRoZSAiCisiZmlsZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTo0NQorbXNnaWQgIiIKKyJCPGRwa2ctc2hsaWJkZXBzPiBoYXMgdHdvIHBvc3NpYmxlIHNvdXJjZXMgb2YgaW5mb3JtYXRpb24gdG8gZ2VuZXJhdGUgIgorImRlcGVuZGVuY3kgaW5mb3JtYXRpb24uIEVpdGhlciBJPHN5bWJvbHM+IGZpbGVzIG9yIEk8c2hsaWJzPiBmaWxlcy4gRm9yIGVhY2ggIgorImJpbmFyeSB0aGF0IEI8ZHBrZy1zaGxpYmRlcHM+IGFuYWx5emVzLCBpdCBmaW5kcyBvdXQgdGhlIGxpc3Qgb2YgbGlicmFyaWVzICIKKyJ0aGF0IGl0J3MgbGlua2VkIHdpdGguICBUaGVuLCBmb3IgZWFjaCBsaWJyYXJ5LCBpdCBsb29rcyB1cCBlaXRoZXIgdGhlICIKKyJJPHN5bWJvbHM+IGZpbGUsIG9yIHRoZSBJPHNobGlicz4gZmlsZSAoaWYgdGhlIGZvcm1lciBkb2Vzbid0IGV4aXN0IG9yIGlmICIKKyJkZWJpYW4vc2hsaWJzLmxvY2FsIGNvbnRhaW5zIHRoZSByZWxldmFudCBkZXBlbmRlbmN5KS4gQm90aCBmaWxlcyBhcmUgIgorInN1cHBvc2VkIHRvIGJlIHByb3ZpZGVkIGJ5IHRoZSBsaWJyYXJ5IHBhY2thZ2UgYW5kIHNob3VsZCB0aHVzIGJlIGF2YWlsYWJsZSAiCisiYXMgL3Zhci9saWIvZHBrZy9pbmZvL0k8cGFja2FnZT4uSTxzeW1ib2xzPiBvciAiCisiL3Zhci9saWIvZHBrZy9pbmZvL0k8cGFja2FnZT4uSTxzaGxpYnM+LiBUaGUgcGFja2FnZSBuYW1lIGlzIGlkZW50aWZpZWQgaW4gIgorInR3byBzdGVwczogZmluZCB0aGUgbGlicmFyeSBmaWxlIG9uIHRoZSBzeXN0ZW0gKGxvb2tpbmcgaW4gdGhlIHNhbWUgIgorImRpcmVjdG9yaWVzIHRoYXQgQjxsZC5zbz4gd291bGQgdXNlKSwgdGhlbiB1c2UgQjxkcGtnIC1TID5JPGxpYnJhcnktZmlsZT4gdG8gIgorImxvb2t1cCB0aGUgcGFja2FnZSBwcm92aWRpbmcgdGhlIGxpYnJhcnkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNobGliZGVwcy4xOjQ1CisjLCBuby13cmFwCittc2dpZCAiU3ltYm9scyBmaWxlcyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjUwCittc2dpZCAiIgorIlN5bWJvbHMgZmlsZXMgY29udGFpbiBmaW5lci1ncmFpbmVkIGRlcGVuZGVuY3kgaW5mb3JtYXRpb24gYnkgcHJvdmlkaW5nIHRoZSAiCisibWluaW11bSBkZXBlbmRlbmN5IGZvciBlYWNoIHN5bWJvbCB0aGF0IHRoZSBsaWJyYXJ5IGV4cG9ydHMuIFRoZSBzY3JpcHQgIgorInRyaWVzIHRvIGZpbmQgYSBzeW1ib2xzIGZpbGUgYXNzb2NpYXRlZCB0byBhIGxpYnJhcnkgcGFja2FnZSBpbiB0aGUgIgorImZvbGxvd2luZyBwbGFjZXMgKGZpcnN0IG1hdGNoIGlzIHVzZWQpOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1zaGxpYmRlcHMuMTo1MAorIywgbm8td3JhcAorbXNnaWQgImRlYmlhbi8qL0RFQklBTi9zeW1ib2xzIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6NTgKK21zZ2lkICIiCisiU2hhcmVkIGxpYnJhcnkgaW5mb3JtYXRpb24gZ2VuZXJhdGVkIGJ5IHRoZSBjdXJyZW50IGJ1aWxkIHByb2Nlc3MgdGhhdCBhbHNvICIKKyJpbnZva2VkIEI8ZHBrZy1zaGxpYmRlcHM+LiAgVGhleSBhcmUgZ2VuZXJhdGVkIGJ5IEI8ZHBrZy1nZW5zeW1ib2xzPigxKS4gICIKKyJUaGV5IGFyZSBvbmx5IHVzZWQgaWYgdGhlIGxpYnJhcnkgaXMgZm91bmQgaW4gYSBwYWNrYWdlJ3MgYnVpbGQgdHJlZS4gVGhlICIKKyJzeW1ib2xzIGZpbGUgaW4gdGhhdCBidWlsZCB0cmVlIHRha2VzIHByZWNlZGVuY2Ugb3ZlciBzeW1ib2xzIGZpbGVzIGZyb20gIgorIm90aGVyIGJpbmFyeSBwYWNrYWdlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6NTgKKyMsIG5vLXdyYXAKK21zZ2lkICIvZXRjL2Rwa2cvc3ltYm9scy9JPHBhY2thZ2U+LnN5bWJvbHMuSTxhcmNoPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1zaGxpYmRlcHMuMTo1OQorIywgbm8td3JhcAorbXNnaWQgIi9ldGMvZHBrZy9zeW1ib2xzL0k8cGFja2FnZT4uc3ltYm9scyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjYzCittc2dpZCAiIgorIlBlci1zeXN0ZW0gb3ZlcnJpZGluZyBzaGFyZWQgbGlicmFyeSBkZXBlbmRlbmN5IGluZm9ybWF0aW9uLiAgSTxhcmNoPiBpcyB0aGUgIgorImFyY2hpdGVjdHVyZSBvZiB0aGUgY3VycmVudCBzeXN0ZW0gKG9idGFpbmVkIGJ5IEI8ZHBrZy1hcmNoaXRlY3R1cmUgIgorIi1xREVCX0hPU1RfQVJDSD4pLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1zaGxpYmRlcHMuMTo2MworIywgbm8td3JhcAorbXNnaWQgIk91dHB1dCBmcm9tIFxcKGxxQjxkcGtnLXF1ZXJ5IC0tY29udHJvbC1wYXRoPiBJPHBhY2thZ2U+IHN5bWJvbHNcXChycSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjY2IGRwa2ctc2hsaWJkZXBzLjE6MTAwCittc2dpZCAiIgorIlBhY2thZ2UtcHJvdmlkZWQgc2hhcmVkIGxpYnJhcnkgZGVwZW5kZW5jeSBpbmZvcm1hdGlvbi4gIFVubGVzcyBvdmVycmlkZGVuICIKKyJieSAtLWFkbWluZGlyLCB0aG9zZSBmaWxlcyBhcmUgbG9jYXRlZCBpbiAvdmFyL2xpYi9kcGtnLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjczCittc2dpZCAiIgorIldoaWxlIHNjYW5uaW5nIHRoZSBzeW1ib2xzIHVzZWQgYnkgYWxsIGJpbmFyaWVzLCBCPGRwa2ctc2hsaWJkZXBzPiByZW1lbWJlcnMgIgorInRoZSAoYmlnZ2VzdCkgbWluaW1hbCB2ZXJzaW9uIG5lZWRlZCBmb3IgZWFjaCBsaWJyYXJ5LiBBdCB0aGUgZW5kIG9mIHRoZSAiCisicHJvY2VzcywgaXQgaXMgYWJsZSB0byB3cml0ZSBvdXQgdGhlIG1pbmltYWwgZGVwZW5kZW5jeSBmb3IgZXZlcnkgbGlicmFyeSAiCisidXNlZCAocHJvdmlkZWQgdGhhdCB0aGUgaW5mb3JtYXRpb24gb2YgdGhlIEk8c3ltYm9scz4gZmlsZXMgYXJlIGFjY3VyYXRlKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTo4MAorbXNnaWQgIiIKKyJBcyBhIHNhZmUtZ3VhcmQgbWVhc3VyZSwgYSBzeW1ib2xzIGZpbGUgY2FuIHByb3ZpZGUgYSAiCisiSTxCdWlsZC1EZXBlbmRzLVBhY2thZ2U+IG1ldGEtaW5mb3JtYXRpb24gZmllbGQgYW5kIEI8ZHBrZy1zaGxpYmRlcHM+IHdpbGwgIgorImV4dHJhY3QgdGhlIG1pbmltYWwgdmVyc2lvbiByZXF1aXJlZCBieSB0aGUgY29ycmVzcG9uZGluZyBwYWNrYWdlIGluIHRoZSAiCisiQnVpbGQtRGVwZW5kcyBmaWVsZCBhbmQgdXNlIHRoaXMgdmVyc2lvbiBpZiBpdCdzIGhpZ2hlciB0aGFuIHRoZSBtaW5pbWFsICIKKyJ2ZXJzaW9uIGNvbXB1dGVkIGJ5IHNjYW5uaW5nIHN5bWJvbHMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNobGliZGVwcy4xOjgwCisjLCBuby13cmFwCittc2dpZCAiU2hsaWJzIGZpbGVzIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6ODQKK21zZ2lkICIiCisiU2hsaWJzIGZpbGVzIGFzc29jaWF0ZSBkaXJlY3RseSBhIGxpYnJhcnkgdG8gYSBkZXBlbmRlbmN5ICh3aXRob3V0IGxvb2tpbmcgIgorImF0IHRoZSBzeW1ib2xzKS4gSXQncyB0aHVzIG9mdGVuIHN0cm9uZ2VyIHRoYW4gcmVhbGx5IG5lZWRlZCBidXQgdmVyeSBzYWZlICIKKyJhbmQgZWFzeSB0byBoYW5kbGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6ODcKK21zZ2lkICIiCisiVGhlIGRlcGVuZGVuY2llcyBmb3IgYSBsaWJyYXJ5IGFyZSBsb29rZWQgdXAgaW4gc2V2ZXJhbCBwbGFjZXMuIFRoZSBmaXJzdCAiCisiZmlsZSBwcm92aWRpbmcgaW5mb3JtYXRpb24gZm9yIHRoZSBsaWJyYXJ5IG9mIGludGVyZXN0IGlzIHVzZWQ6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLXNobGliZGVwcy4xOjg3CisjLCBuby13cmFwCittc2dpZCAiZGViaWFuL3NobGlicy5sb2NhbCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjg5Cittc2dpZCAiUGFja2FnZS1sb2NhbCBvdmVycmlkaW5nIHNoYXJlZCBsaWJyYXJ5IGRlcGVuZGVuY3kgaW5mb3JtYXRpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLXNobGliZGVwcy4xOjg5CisjLCBuby13cmFwCittc2dpZCAiL2V0Yy9kcGtnL3NobGlicy5vdmVycmlkZSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjkxCittc2dpZCAiUGVyLXN5c3RlbSBvdmVycmlkaW5nIHNoYXJlZCBsaWJyYXJ5IGRlcGVuZGVuY3kgaW5mb3JtYXRpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLXNobGliZGVwcy4xOjkxCisjLCBuby13cmFwCittc2dpZCAiZGViaWFuLyovREVCSUFOL3NobGlicyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjk3Cittc2dpZCAiIgorIlNoYXJlZCBsaWJyYXJ5IGluZm9ybWF0aW9uIGdlbmVyYXRlZCBieSB0aGUgY3VycmVudCBidWlsZCBwcm9jZXNzIHRoYXQgYWxzbyAiCisiaW52b2tlZCBCPGRwa2ctc2hsaWJkZXBzPi4gIFRoZXkgYXJlIG9ubHkgdXNlZCBpZiB0aGUgbGlicmFyeSBpcyBmb3VuZCBpbiBhICIKKyJwYWNrYWdlJ3MgYnVpbGQgdHJlZS4gVGhlIHNobGlicyBmaWxlIGluIHRoYXQgYnVpbGQgdHJlZSB0YWtlcyBwcmVjZWRlbmNlICIKKyJvdmVyIHNobGlicyBmaWxlcyBmcm9tIG90aGVyIGJpbmFyeSBwYWNrYWdlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6OTcKKyMsIG5vLXdyYXAKK21zZ2lkICJPdXRwdXQgZnJvbSBcXChscUI8ZHBrZy1xdWVyeSAtLWNvbnRyb2wtcGF0aD4gSTxwYWNrYWdlPiBzaGxpYnNcXChycSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1zaGxpYmRlcHMuMToxMDAKKyMsIG5vLXdyYXAKK21zZ2lkICIvZXRjL2Rwa2cvc2hsaWJzLmRlZmF1bHQiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToxMDIKK21zZ2lkICJQZXItc3lzdGVtIGRlZmF1bHQgc2hhcmVkIGxpYnJhcnkgZGVwZW5kZW5jeSBpbmZvcm1hdGlvbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToxMDYKK21zZ2lkICIiCisiVGhlIGV4dHJhY3RlZCBkZXBlbmRlbmNpZXMgYXJlIHRoZW4gZGlyZWN0bHkgdXNlZCAoZXhjZXB0IGlmIHRoZXkgYXJlICIKKyJmaWx0ZXJlZCBvdXQgYmVjYXVzZSB0aGV5IGhhdmUgYmVlbiBpZGVudGlmaWVkIGFzIGR1cGxpY2F0ZSwgb3IgYXMgd2Vha2VyICIKKyJ0aGFuIGFub3RoZXIgZGVwZW5kZW5jeSkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTExCittc2dpZCAiIgorIkI8ZHBrZy1zaGxpYmRlcHM+IGludGVycHJldHMgbm9uLW9wdGlvbiBhcmd1bWVudHMgYXMgZXhlY3V0YWJsZSBuYW1lcywganVzdCAiCisiYXMgaWYgdGhleSdkIGJlZW4gc3VwcGxpZWQgYXMgQjwtZT5JPGV4ZWN1dGFibGU+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zaGxpYmRlcHMuMToxMTEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1lPkk8ZXhlY3V0YWJsZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToxMTUKK21zZ2lkICIiCisiSW5jbHVkZSBkZXBlbmRlbmNpZXMgYXBwcm9wcmlhdGUgZm9yIHRoZSBzaGFyZWQgbGlicmFyaWVzIHJlcXVpcmVkIGJ5ICIKKyJJPGV4ZWN1dGFibGU+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zaGxpYmRlcHMuMToxMTUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1kPkk8ZGVwZW5kZW5jeWZpZWxkPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjEyMQorbXNnaWQgIiIKKyJBZGQgZGVwZW5kZW5jaWVzIHRvIGJlIGFkZGVkIHRvIHRoZSBjb250cm9sIGZpbGUgZGVwZW5kZW5jeSBmaWVsZCAiCisiSTxkZXBlbmRlbmN5ZmllbGQ+LiAgKFRoZSBkZXBlbmRlbmNpZXMgZm9yIHRoaXMgZmllbGQgYXJlIHBsYWNlZCBpbiB0aGUgIgorInZhcmlhYmxlIEI8c2hsaWJzOj5JPGRlcGVuZGVuY3lmaWVsZD4uKSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjEzMQorbXNnaWQgIiIKKyJUaGUgQjwtZD5JPGRlcGVuZGVuY3lmaWVsZD4gb3B0aW9uIHRha2VzIGVmZmVjdCBmb3IgYWxsIGV4ZWN1dGFibGVzIGFmdGVyICIKKyJ0aGUgb3B0aW9uLCB1bnRpbCB0aGUgbmV4dCBCPC1kPkk8ZGVwZW5kZW5jeWZpZWxkPi4gIFRoZSBkZWZhdWx0ICIKKyJJPGRlcGVuZGVuY3lmaWVsZD4gaXMgQjxEZXBlbmRzPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToxMzkKK21zZ2lkICIiCisiSWYgdGhlIHNhbWUgZGVwZW5kZW5jeSBlbnRyeSAob3Igc2V0IG9mIGFsdGVybmF0aXZlcykgYXBwZWFycyBpbiBtb3JlIHRoYW4gIgorIm9uZSBvZiB0aGUgcmVjb2duaXNlZCBkZXBlbmRlbmN5IGZpZWxkIG5hbWVzIEI8UHJlLURlcGVuZHM+LCBCPERlcGVuZHM+LCAiCisiQjxSZWNvbW1lbmRzPiwgQjxFbmhhbmNlcz4gb3IgQjxTdWdnZXN0cz4gdGhlbiBCPGRwa2ctc2hsaWJkZXBzPiB3aWxsICIKKyJhdXRvbWF0aWNhbGx5IHJlbW92ZSB0aGUgZGVwZW5kZW5jeSBmcm9tIGFsbCBmaWVsZHMgZXhjZXB0IHRoZSBvbmUgIgorInJlcHJlc2VudGluZyB0aGUgbW9zdCBpbXBvcnRhbnQgZGVwZW5kZW5jaWVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zaGxpYmRlcHMuMToxMzkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1wPkk8dmFybmFtZXByZWZpeD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToxNTAKK21zZ2lkICIiCisiU3RhcnQgc3Vic3RpdHV0aW9uIHZhcmlhYmxlcyB3aXRoIEk8dmFybmFtZXByZWZpeD5CPDo+IGluc3RlYWQgb2YgIgorIkI8c2hsaWJzOj4uICBMaWtld2lzZSwgYW55IGV4aXN0aW5nIHN1YnN0aXR1dGlvbiB2YXJpYWJsZXMgc3RhcnRpbmcgd2l0aCAiCisiSTx2YXJuYW1lcHJlZml4PkI8Oj4gKHJhdGhlciB0aGFuIEI8c2hsaWJzOj4pICBhcmUgcmVtb3ZlZCBmcm9tIHRoZSB0aGUgIgorInN1YnN0aXR1dGlvbiB2YXJpYWJsZXMgZmlsZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToxNTYKK21zZ2lkICIiCisiUHJpbnQgc3Vic3RpdHV0aW9uIHZhcmlhYmxlIHNldHRpbmdzIHRvIHN0YW5kYXJkIG91dHB1dCwgcmF0aGVyIHRoYW4gYmVpbmcgIgorImFkZGVkIHRvIHRoZSBzdWJzdGl0dXRpb24gdmFyaWFibGVzIGZpbGUgKEI8ZGViaWFuL3N1YnN0dmFycz4gYnkgZGVmYXVsdCkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNobGliZGVwcy4xOjE1NgorIywgbm8td3JhcAorbXNnaWQgIkI8LXQ+STx0eXBlPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjE2MworbXNnaWQgIiIKKyJQcmVmZXIgc2hhcmVkIGxpYnJhcnkgZGVwZW5kZW5jeSBpbmZvcm1hdGlvbiB0YWdnZWQgZm9yIHRoZSBnaXZlbiBwYWNrYWdlICIKKyJ0eXBlLiBJZiBubyB0YWdnZWQgaW5mb3JtYXRpb24gaXMgYXZhaWxhYmxlLCBmYWxscyBiYWNrIHRvIHVudGFnZ2VkICIKKyJpbmZvcm1hdGlvbi4gVGhlIGRlZmF1bHQgcGFja2FnZSB0eXBlIGlzIFwiZGViXCIuIFNoYXJlZCBsaWJyYXJ5IGRlcGVuZGVuY3kgIgorImluZm9ybWF0aW9uIGlzIHRhZ2dlZCBmb3IgYSBnaXZlbiB0eXBlIGJ5IHByZWZpeGluZyBpdCB3aXRoIHRoZSBuYW1lIG9mIHRoZSAiCisidHlwZSwgYSBjb2xvbiwgYW5kIHdoaXRlc3BhY2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNobGliZGVwcy4xOjE2MworIywgbm8td3JhcAorbXNnaWQgIkI8LUw+STxsb2NhbHNobGlic2ZpbGU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTY5Cittc2dpZCAiIgorIlJlYWQgb3ZlcnJpZGluZyBzaGFyZWQgbGlicmFyeSBkZXBlbmRlbmN5IGluZm9ybWF0aW9uIGZyb20gIgorIkk8bG9jYWxzaGxpYnNmaWxlPiBpbnN0ZWFkIG9mIEI8ZGViaWFuL3NobGlicy5sb2NhbD4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTc1Cittc2dpZCAiIgorIldyaXRlIHN1YnN0aXR1dGlvbiB2YXJpYWJsZXMgaW4gSTxzdWJzdHZhcnNmaWxlPjsgdGhlIGRlZmF1bHQgaXMgIgorIkI8ZGViaWFuL3N1YnN0dmFycz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNobGliZGVwcy4xOjE3NQorIywgbm8td3JhcAorbXNnaWQgIkI8LXY+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTgwCittc2dpZCAiIgorIkVuYWJsZSB2ZXJib3NlIG1vZGUuIE51bWVyb3VzIG1lc3NhZ2VzIGFyZSBkaXNwbGF5ZWQgdG8gZXhwbGFpbiB3aGF0ICIKKyJCPGRwa2ctc2hsaWJkZXBzPiBkb2VzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zaGxpYmRlcHMuMToxODAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC14Pkk8cGFja2FnZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToxODcKK21zZ2lkICIiCisiRXhjbHVkZSB0aGUgcGFja2FnZSBmcm9tIHRoZSBnZW5lcmF0ZWQgZGVwZW5kZW5jaWVzLiBUaGlzIGlzIHVzZWZ1bCB0byBhdm9pZCAiCisic2VsZi1kZXBlbmRlbmNpZXMgZm9yIHBhY2thZ2VzIHdoaWNoIHByb3ZpZGUgRUxGIGJpbmFyaWVzIChleGVjdXRhYmxlcyBvciAiCisibGlicmFyeSBwbHVnaW5zKSB1c2luZyBhIGxpYnJhcnkgY29udGFpbmVkIGluIHRoZSBzYW1lIHBhY2thZ2UuIFRoaXMgb3B0aW9uICIKKyJjYW4gYmUgdXNlZCBtdWx0aXBsZSB0aW1lcyB0byBleGNsdWRlIHNldmVyYWwgcGFja2FnZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNobGliZGVwcy4xOjE4NworIywgbm8td3JhcAorbXNnaWQgIkI8LVM+STxwa2didWlsZGRpcj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToxOTQKK21zZ2lkICIiCisiTG9vayBpbnRvIEk8cGtnYnVpbGRkaXI+IGZpcnN0IHdoZW4gdHJ5aW5nIHRvIGZpbmQgYSBsaWJyYXJ5LiBUaGlzIGlzIHVzZWZ1bCAiCisid2hlbiB0aGUgc291cmNlIHBhY2thZ2UgYnVpbGRzIG11bHRpcGxlIGZsYXZvcnMgb2YgdGhlIHNhbWUgbGlicmFyeSBhbmQgeW91ICIKKyJ3YW50IHRvIGVuc3VyZSB0aGF0IHlvdSBnZXQgdGhlIGRlcGVuZGVuY3kgZnJvbSBhIGdpdmVuIGJpbmFyeSBwYWNrYWdlLiBZb3UgIgorImNhbiB1c2UgdGhpcyBvcHRpb24gbXVsdGlwbGUgdGltZXM6IGRpcmVjdG9yaWVzIHdpbGwgYmUgdHJpZWQgaW4gdGhlIHNhbWUgIgorIm9yZGVyIGJlZm9yZSBkaXJlY3RvcmllcyBvZiBvdGhlciBiaW5hcnkgcGFja2FnZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNobGliZGVwcy4xOjE5NAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1pZ25vcmUtbWlzc2luZy1pbmZvPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjIwMAorbXNnaWQgIiIKKyJEbyBub3QgZmFpbCBpZiBkZXBlbmRlbmN5IGluZm9ybWF0aW9uIGNhbid0IGJlIGZvdW5kIGZvciBhIHNoYXJlZCBsaWJyYXJ5LiAgIgorIlVzYWdlIG9mIHRoaXMgb3B0aW9uIGlzIGRpc2NvdXJhZ2VkLCBhbGwgbGlicmFyaWVzIHNob3VsZCBwcm92aWRlIGRlcGVuZGVuY3kgIgorImluZm9ybWF0aW9uIChlaXRoZXIgd2l0aCBzaGxpYnMgZmlsZXMsIG9yIHdpdGggc3ltYm9scyBmaWxlcykgIGV2ZW4gaWYgdGhleSAiCisiYXJlIG5vdCB5ZXQgdXNlZCBieSBvdGhlciBwYWNrYWdlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjAwCisjLCBuby13cmFwCittc2dpZCAiQjwtLXdhcm5pbmdzPT5JPHZhbHVlPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjIxMQorbXNnaWQgIiIKKyJJPHZhbHVlPiBpcyBhIGJpdCBmaWVsZCBkZWZpbmluZyB0aGUgc2V0IG9mIHdhcm5pbmdzIHRoYXQgY2FuIGJlIGVtaXR0ZWQgYnkgIgorIkI8ZHBrZy1zaGxpYmRlcHM+LiAgQml0IDAgKHZhbHVlPTEpIGVuYWJsZXMgdGhlIHdhcm5pbmcgXCJzeW1ib2wgSTxzeW0+IHVzZWQgIgorImJ5IEk8YmluYXJ5PiBmb3VuZCBpbiBub25lIG9mIHRoZSBsaWJyYXJpZXNcIiwgYml0IDEgKHZhbHVlPTIpIGVuYWJsZXMgdGhlICIKKyJ3YXJuaW5nIFwiZGVwZW5kZW5jeSBvbiBJPGxpYnJhcnk+IGNvdWxkIGJlIGF2b2lkZWRcIiBhbmQgYml0IDIgKHZhbHVlPTQpICAiCisiZW5hYmxlcyB0aGUgd2FybmluZyBcIkk8YmluYXJ5PiBzaG91bGRuJ3QgYmUgbGlua2VkIHdpdGggSTxsaWJyYXJ5PlwiLiAgVGhlICIKKyJkZWZhdWx0IEk8dmFsdWU+IGlzIDM6IHRoZSBmaXJzdCB0d28gd2FybmluZ3MgYXJlIGFjdGl2ZSBieSBkZWZhdWx0LCB0aGUgIgorImxhc3Qgb25lIGlzIG5vdC4gU2V0IEk8dmFsdWU+IHRvIDcgaWYgeW91IHdhbnQgYWxsIHdhcm5pbmdzIHRvIGJlIGFjdGl2ZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjIyCisjLCBuby13cmFwCittc2dpZCAiV0FSTklOR1MiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToyMzAKK21zZ2lkICIiCisiU2luY2UgQjxkcGtnLXNobGliZGVwcz4gYW5hbHl6ZXMgdGhlIHNldCBvZiBzeW1ib2xzIHVzZWQgYnkgZWFjaCBiaW5hcnkgb2YgIgorInRoZSBnZW5lcmF0ZWQgcGFja2FnZSwgaXQgaXMgYWJsZSB0byBlbWl0IHdhcm5pbmdzIGluIHNldmVyYWwgY2FzZXMuIFRoZXkgIgorImluZm9ybSB5b3Ugb2YgdGhpbmdzIHRoYXQgY2FuIGJlIGltcHJvdmVkIGluIHRoZSBwYWNrYWdlLiBJbiBtb3N0IGNhc2VzLCAiCisidGhvc2UgaW1wcm92ZW1lbnRzIGNvbmNlcm4gdGhlIHVwc3RyZWFtIHNvdXJjZXMgZGlyZWN0bHkuIEJ5IG9yZGVyIG9mICIKKyJkZWNyZWFzaW5nIGltcG9ydGFuY2UsIGhlcmUgYXJlIHRoZSB2YXJpb3VzIHdhcm5pbmdzIHRoYXQgeW91IGNhbiBlbmNvdW50ZXI6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNobGliZGVwcy4xOjIzMAorIywgbm8td3JhcAorbXNnaWQgIkI8c3ltYm9sPkk8IHN5bT5CPCB1c2VkIGJ5ID5JPGJpbmFyeT5CPCBmb3VuZCBpbiBub25lIG9mIHRoZSBsaWJyYXJpZXMuPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjIzNgorbXNnaWQgIiIKKyJUaGUgaW5kaWNhdGVkIHN5bWJvbCBoYXMgbm90IGJlZW4gZm91bmQgaW4gdGhlIGxpYnJhcmllcyBsaW5rZWQgd2l0aCB0aGUgIgorImJpbmFyeS4gVGhlIEk8YmluYXJ5PiBpcyBtb3N0IGxpa2VseSBhIGxpYnJhcnkgYW5kIGl0IG5lZWRzIHRvIGJlIGxpbmtlZCAiCisid2l0aCBhbiBhZGRpdGlvbmFsIGxpYnJhcnkgZHVyaW5nIHRoZSBidWlsZCBwcm9jZXNzIChvcHRpb24gQjwtbD5JPGxpYnJhcnk+ICIKKyJvZiB0aGUgbGlua2VyKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjM2CisjLCBuby13cmFwCittc2dpZCAiIgorIkk8YmluYXJ5PkI8IGNvbnRhaW5zIGFuIHVucmVzb2x2YWJsZSByZWZlcmVuY2UgdG8gc3ltYm9sID5JPHN5bT5CPDogaXQncyAiCisicHJvYmFibHkgYSBwbHVnaW4+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjQ5Cittc2dpZCAiIgorIlRoZSBpbmRpY2F0ZWQgc3ltYm9sIGhhcyBub3QgYmVlbiBmb3VuZCBpbiB0aGUgbGlicmFyaWVzIGxpbmtlZCB3aXRoIHRoZSAiCisiYmluYXJ5LiBUaGUgSTxiaW5hcnk+IGlzIG1vc3QgbGlrZWx5IGEgcGx1Z2luIGFuZCB0aGUgc3ltYm9sIGlzIHByb2JhYmx5ICIKKyJwcm92aWRlZCBieSB0aGUgcHJvZ3JhbSB0aGF0IGxvYWRzIHRoaXMgcGx1Z2luLiBJbiB0aGVvcnkgYSBwbHVnaW4gZG9lc24ndCAiCisiaGF2ZSBhbnkgU09OQU1FIGJ1dCB0aGlzIGJpbmFyeSBkb2VzIGhhdmUgb25lIGFuZCBhcyBzdWNoIGl0IGNvdWxkIG5vdCBiZSAiCisiY2xlYXJseSBpZGVudGlmaWVkIGFzIHN1Y2guIEhvd2V2ZXIgdGhlIGZhY3QgdGhhdCB0aGUgYmluYXJ5IGlzIHN0b3JlZCBpbiBhICIKKyJub24tcHVibGljIGRpcmVjdG9yeSBpcyBhIHN0cm9uZyBpbmRpY2F0aW9uIHRoYXQncyBpdCdzIG5vdCBhIG5vcm1hbCBzaGFyZWQgIgorImxpYnJhcnkuIElmIHRoZSBiaW5hcnkgaXMgcmVhbGx5IGEgcGx1Z2luLCB0aGVuIGRpc3JlZ2FyZCB0aGlzIHdhcm5pbmcuIEJ1dCAiCisidGhlcmUncyBhbHdheXMgdGhlIHBvc3NpYmlsaXR5IHRoYXQgaXQncyBhIHJlYWwgbGlicmFyeSBhbmQgdGhhdCBwcm9ncmFtcyAiCisibGlua2luZyB0byBpdCBhcmUgdXNpbmcgYW4gUlBBVEggc28gdGhhdCB0aGUgZHluYW1pYyBsb2FkZXIgZmluZHMgaXQuIEluICIKKyJ0aGF0IGNhc2UsIHRoZSBsaWJyYXJ5IGlzIGJyb2tlbiBhbmQgbmVlZHMgdG8gYmUgZml4ZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNobGliZGVwcy4xOjI0OQorIywgbm8td3JhcAorbXNnaWQgIiIKKyJCPGRlcGVuZGVuY3kgb24gPkk8bGlicmFyeT5CPCBjb3VsZCBiZSBhdm9pZGVkIGlmID5JPGJpbmFyaWVzPkI8IHdlcmUgbm90ICIKKyJ1c2VsZXNzbHkgbGlua2VkIGFnYWluc3QgaXQgKHRoZXkgdXNlIG5vbmUgb2YgaXRzIHN5bWJvbHMpLj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToyNTUKK21zZ2lkICIiCisiTm9uZSBvZiB0aGUgSTxiaW5hcmllcz4gdGhhdCBhcmUgbGlua2VkIHdpdGggSTxsaWJyYXJ5PiB1c2UgYW55IG9mIHRoZSAiCisic3ltYm9scyBwcm92aWRlZCBieSB0aGUgbGlicmFyeS4gQnkgZml4aW5nIGFsbCB0aGUgYmluYXJpZXMsIHlvdSB3b3VsZCBhdm9pZCAiCisidGhlIGRlcGVuZGVuY3kgYXNzb2NpYXRlZCB0byB0aGlzIGxpYnJhcnkgKHVubGVzcyB0aGUgc2FtZSBkZXBlbmRlbmN5IGlzICIKKyJhbHNvIGdlbmVyYXRlZCBieSBhbm90aGVyIGxpYnJhcnkgdGhhdCBpcyByZWFsbHkgdXNlZCkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNobGliZGVwcy4xOjI1NQorIywgbm8td3JhcAorbXNnaWQgIiIKKyJJPGJpbmFyeT5CPCBzaG91bGRuJ3QgYmUgbGlua2VkIHdpdGggPkk8bGlicmFyeT5CPCAoaXQgdXNlcyBub25lIG9mIGl0cyAiCisic3ltYm9scykuPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjI2MgorbXNnaWQgIiIKKyJUaGUgSTxiaW5hcnk+IGlzIGxpbmtlZCB0byBhIGxpYnJhcnkgdGhhdCBpdCBkb2Vzbid0IG5lZWQuIEl0J3Mgbm90IGEgIgorInByb2JsZW0gYnV0IHNvbWUgc21hbGwgcGVyZm9ybWFuY2UgaW1wcm92ZW1lbnRzIGluIGJpbmFyeSBsb2FkIHRpbWUgY2FuIGJlICIKKyJvYnRhaW5lZCBieSBub3QgbGlua2luZyB0aGlzIGxpYnJhcnkgdG8gdGhpcyBiaW5hcnkuIFRoaXMgd2FybmluZyBjaGVja3MgdGhlICIKKyJzYW1lIGluZm9ybWF0aW9uIHRoYW4gdGhlIHByZXZpb3VzIG9uZSBidXQgZG9lcyBpdCBmb3IgZWFjaCBiaW5hcnkgaW5zdGVhZCAiCisib2YgZG9pbmcgdGhlIGNoZWNrIGdsb2JhbGx5IG9uIGFsbCBiaW5hcmllcyBhbmFseXplZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjYyCisjLCBuby13cmFwCittc2dpZCAiRVJST1JTIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjY5Cittc2dpZCAiIgorIkI8ZHBrZy1zaGxpYmRlcHM+IHdpbGwgZmFpbCBpZiBpdCBjYW4ndCBmaW5kIGEgcHVibGljIGxpYnJhcnkgdXNlZCBieSBhICIKKyJiaW5hcnkgb3IgaWYgdGhpcyBsaWJyYXJ5IGhhcyBubyBhc3NvY2lhdGVkIGRlcGVuZGVuY3kgaW5mb3JtYXRpb24gKGVpdGhlciAiCisic2hsaWJzIGZpbGUgb3Igc3ltYm9scyBmaWxlKS4gQSBwdWJsaWMgbGlicmFyeSBoYXMgYSBTT05BTUUgYW5kIGlzIHZlcnNpb25lZCAiCisiKGxpYnNvbWV0aGluZy5zby5JPFg+KS4gQSBwcml2YXRlIGxpYnJhcnkgKGxpa2UgYSBwbHVnaW4pIHNob3VsZCBub3QgaGF2ZSBhICIKKyJTT05BTUUgYW5kIGRvZXNuJ3QgbmVlZCB0byBiZSB2ZXJzaW9uZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNobGliZGVwcy4xOjI2OQorIywgbm8td3JhcAorbXNnaWQgIiIKKyJCPGNvdWxkbid0IGZpbmQgbGlicmFyeSA+STxsaWJyYXJ5LXNvbmFtZT5CPCBuZWVkZWQgYnkgPkk8YmluYXJ5PkI8IChpdHMgIgorIlJQQVRIIGlzICc+STxycGF0aD5CPCcpPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjI4NQorbXNnaWQgIiIKKyJUaGUgSTxiaW5hcnk+IHVzZXMgYSBsaWJyYXJ5IGNhbGxlZCBJPGxpYnJhcnktc29uYW1lPiBidXQgQjxkcGtnLXNobGliZGVwcz4gIgorImhhcyBiZWVuIHVuYWJsZSB0byBmaW5kIHRoZSBsaWJyYXJ5LiAgQjxkcGtnLXNobGliZGVwcz4gY3JlYXRlcyBhIGxpc3Qgb2YgIgorImRpcmVjdG9yaWVzIHRvIGNoZWNrIGFzIGZvbGxvd2luZzogZGlyZWN0b3JpZXMgbGlzdGVkIGluIHRoZSBSUEFUSCBvZiB0aGUgIgorImJpbmFyeSwgZGlyZWN0b3JpZXMgbGlzdGVkIGluIC9ldGMvbGQuc28uY29uZiwgZGlyZWN0b3JpZXMgbGlzdGVkIGluIHRoZSAiCisiTERfTElCUkFSWV9QQVRIIGVudmlyb25tZW50IHZhcmlhYmxlLCBhbmQgc3RhbmRhcmQgcHVibGljIGRpcmVjdG9yaWVzICgvbGliLCAiCisiL3Vzci9saWIsIC9saWIzMiwgL3Vzci9saWIzMiwgL2xpYjY0LCAvdXNyL2xpYjY0KS4gVGhlbiBpdCBjaGVja3MgdGhvc2UgIgorImRpcmVjdG9yaWVzIGluIHRoZSBwYWNrYWdlJ3MgYnVpbGQgdHJlZSBvZiB0aGUgYmluYXJ5IGJlaW5nIGFuYWx5emVkLCBpbiB0aGUgIgorInBhY2thZ2VzJyBidWlsZCB0cmVlcyBpbmRpY2F0ZWQgd2l0aCB0aGUgLVMgY29tbWFuZC1saW5lIG9wdGlvbiwgaW4gb3RoZXIgIgorInBhY2thZ2VzJyBidWlsZCB0cmVlcyB0aGF0IGNvbnRhaW5zIGEgREVCSUFOL3NobGlicyBvciBERUJJQU4vc3ltYm9scyBmaWxlICIKKyJhbmQgZmluYWxseSBpbiB0aGUgcm9vdCBkaXJlY3RvcnkuICBJZiB0aGUgbGlicmFyeSBpcyBub3QgZm91bmQgaW4gYW55IG9mICIKKyJ0aG9zZSBkaXJlY3RvcmllcywgdGhlbiB5b3UgZ2V0IHRoaXMgZXJyb3IuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjkxCittc2dpZCAiIgorIklmIHRoZSBsaWJyYXJ5IG5vdCBmb3VuZCBpcyBpbiBhIHByaXZhdGUgZGlyZWN0b3J5IG9mIHRoZSBzYW1lIHBhY2thZ2UsIHRoZW4gIgorInlvdSB3YW50IHRvIGFkZCB0aGUgZGlyZWN0b3J5IHRvIExEX0xJQlJBUllfUEFUSC4gSWYgaXQncyBpbiBhbm90aGVyIGJpbmFyeSAiCisicGFja2FnZSBiZWluZyBidWlsdCwgeW91IHdhbnQgdG8gbWFrZSBzdXJlIHRoYXQgdGhlIHNobGlicy9zeW1ib2xzIGZpbGUgb2YgIgorInRoaXMgcGFja2FnZSBpcyBhbHJlYWR5IGNyZWF0ZWQgYW5kIHRoYXQgTERfTElCUkFSWV9QQVRIIGNvbnRhaW5zIHRoZSAiCisiYXBwcm9wcmlhdGUgZGlyZWN0b3J5IGlmIGl0IGFsc28gaXMgaW4gYSBwcml2YXRlIGRpcmVjdG9yeS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjkxCisjLCBuby13cmFwCittc2dpZCAiIgorIkI8bm8gZGVwZW5kZW5jeSBpbmZvcm1hdGlvbiBmb3VuZCBmb3IgPkk8bGlicmFyeS1maWxlPkI8ICh1c2VkIGJ5ICIKKyI+STxiaW5hcnk+QjwpLj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTozMDQKK21zZ2lkICIiCisiVGhlIGxpYnJhcnkgbmVlZGVkIGJ5IEk8YmluYXJ5PiBoYXMgYmVlbiBmb3VuZCBieSBCPGRwa2ctc2hsaWJkZXBzPiBpbiAiCisiSTxsaWJyYXJ5LWZpbGU+IGJ1dCBCPGRwa2ctc2hsaWJkZXBzPiBoYXMgYmVlbiB1bmFibGUgdG8gZmluZCBhbnkgZGVwZW5kZW5jeSAiCisiaW5mb3JtYXRpb24gZm9yIHRoYXQgbGlicmFyeS4gVG8gZmluZCBvdXQgdGhlIGRlcGVuZGVuY3ksIGl0IGhhcyB0cmllZCB0byAiCisibWFwIHRoZSBsaWJyYXJ5IHRvIGEgRGViaWFuIHBhY2thZ2Ugd2l0aCB0aGUgaGVscCBvZiBCPGRwa2cgLVMgIgorIj5JPGxpYnJhcnktZmlsZT4uICBUaGVuIGl0IGNoZWNrZWQgdGhlIGNvcnJlc3BvbmRpbmcgc2hsaWJzIGFuZCBzeW1ib2xzICIKKyJmaWxlcyBpbiAvdmFyL2xpYi9kcGtnL2luZm8vLCBhbmQgaW4gdGhlIHZhcmlvdXMgcGFja2FnZSdzIGJ1aWxkIHRyZWVzICIKKyIoZGViaWFuLyovREVCSUFOLykuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MzE4Cittc2dpZCAiIgorIlRoaXMgZmFpbHVyZSBjYW4gYmUgY2F1c2VkIGJ5IGEgYmFkIG9yIG1pc3Npbmcgc2hsaWJzIG9yIHN5bWJvbHMgZmlsZSBpbiB0aGUgIgorInBhY2thZ2Ugb2YgdGhlIGxpYnJhcnkuIEl0IG1pZ2h0IGFsc28gaGFwcGVuIGlmIHRoZSBsaWJyYXJ5IGlzIGJ1aWx0IHdpdGhpbiAiCisidGhlIHNhbWUgc291cmNlIHBhY2thZ2UgYW5kIGlmIHRoZSBzaGxpYnMgZmlsZXMgaGFzIG5vdCB5ZXQgYmVlbiBjcmVhdGVkIChpbiAiCisid2hpY2ggY2FzZSB5b3UgbXVzdCBmaXggZGViaWFuL3J1bGVzIHRvIGNyZWF0ZSB0aGUgc2hsaWJzIGJlZm9yZSBjYWxsaW5nICIKKyJCPGRwa2ctc2hsaWJkZXBzPikuIEJhZCBSUEFUSCBjYW4gYWxzbyBsZWFkIHRvIHRoZSBsaWJyYXJ5IGJlaW5nIGZvdW5kIHVuZGVyICIKKyJhIG5vbi1jYW5vbmljYWwgbmFtZSAoZXhhbXBsZTogIgorIi91c3IvbGliL29wZW5vZmZpY2Uub3JnLy4uL2xpYi9saWJzc2wuc28uMC45LjggaW5zdGVhZCBvZiAiCisiL3Vzci9saWIvbGlic3NsLnNvLjAuOS44KSB0aGF0J3Mgbm90IGFzc29jaWF0ZWQgdG8gYW55IHBhY2thZ2UsICIKKyJCPGRwa2ctc2hsaWJkZXBzPiB0cmllcyB0byB3b3JrIGFyb3VuZCB0aGlzIGJ5IHRyeWluZyB0byBmYWxsYmFjayBvbiBhICIKKyJjYW5vbmljYWwgbmFtZSAodXNpbmcgQjxyZWFscGF0aD4oMykpICBidXQgaXQgbWlnaHQgbm90IGFsd2F5cyB3b3JrLiBJdCdzICIKKyJhbHdheXMgYmVzdCB0byBjbGVhbiB1cCB0aGUgUlBBVEggb2YgdGhlIGJpbmFyeSB0byBhdm9pZCBwcm9ibGVtcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTozMjQKK21zZ2lkICIiCisiQ2FsbGluZyBCPGRwa2ctc2hsaWJkZXBzPiBpbiB2ZXJib3NlIG1vZGUgKC12KSB3aWxsIHByb3ZpZGUgbXVjaCBtb3JlICIKKyJpbmZvcm1hdGlvbiBhYm91dCB3aGVyZSBpdCB0cmllZCB0byBmaW5kIHRoZSBkZXBlbmRlbmN5IGluZm9ybWF0aW9uLiBUaGlzICIKKyJtaWdodCBiZSB1c2VmdWwgaWYgeW91IGRvbid0IHVuZGVyc3RhbmQgd2h5IGl0J3MgZ2l2aW5nIHlvdSB0aGlzIGVycm9yLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjMyOAorbXNnaWQgIkI8ZGViLXNobGlicz4oNSksIEI8ZGViLXN5bWJvbHM+KDUpLCBCPGRwa2ctZ2Vuc3ltYm9scz4oMSkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MzM1Cittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMDYgRnJhbmsgTGljaHRlbmhlbGQiCittc2dzdHIgIiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctc291cmNlLjE6MgorIywgbm8td3JhcAorbXNnaWQgImRwa2ctc291cmNlIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NQorbXNnaWQgImRwa2ctc291cmNlIC0gRGViaWFuIHNvdXJjZSBwYWNrYWdlICguZHNjKSBtYW5pcHVsYXRpb24gdG9vbCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjkKK21zZ2lkICJCPGRwa2ctc291cmNlPiBbSTxvcHRpb24+Li4uXSBJPGNvbW1hbmQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MTMKK21zZ2lkICJCPGRwa2ctc291cmNlPiBwYWNrcyBhbmQgdW5wYWNrcyBEZWJpYW4gc291cmNlIGFyY2hpdmVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjE3Cittc2dpZCAiIgorIk5vbmUgb2YgdGhlc2UgY29tbWFuZHMgYWxsb3cgbXVsdGlwbGUgb3B0aW9ucyB0byBiZSBjb21iaW5lZCBpbnRvIG9uZSwgYW5kICIKKyJ0aGV5IGRvIG5vdCBhbGxvdyB0aGUgdmFsdWUgZm9yIGFuIG9wdGlvbiB0byBiZSBzcGVjaWZpZWQgaW4gYSBzZXBhcmF0ZSAiCisiYXJndW1lbnQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjE5CisjLCBuby13cmFwCittc2dpZCAiQjwteCA+STxmaWxlbmFtZT5CPC5kc2MgPltJPG91dHB1dC1kaXJlY3Rvcnk+XSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjI5Cittc2dpZCAiIgorIkV4dHJhY3QgYSBzb3VyY2UgcGFja2FnZS4gT25lIG5vbi1vcHRpb24gYXJndW1lbnQgbXVzdCBiZSBzdXBwbGllZCwgdGhlIG5hbWUgIgorIm9mIHRoZSBEZWJpYW4gc291cmNlIGNvbnRyb2wgZmlsZSAoQjwuZHNjPikuICBBbiBvcHRpb25hbCBzZWNvbmQgbm9uLW9wdGlvbiAiCisiYXJndW1lbnQgbWF5IGJlIHN1cHBsaWVkIHRvIHNwZWNpZnkgdGhlIGRpcmVjdG9yeSB0byBleHRyYWN0IHRoZSBzb3VyY2UgIgorInBhY2thZ2UgdG8sIHRoaXMgbXVzdCBub3QgZXhpc3QuIElmIG5vIG91dHB1dCBkaXJlY3RvcnkgaXMgc3BlY2lmaWVkLCB0aGUgIgorInNvdXJjZSBwYWNrYWdlIGlzIGV4dHJhY3RlZCBpbnRvIGEgZGlyZWN0b3J5IG5hbWVkIEk8c291cmNlPi1JPHZlcnNpb24+ICIKKyJ1bmRlciB0aGUgY3VycmVudCB3b3JraW5nIGRpcmVjdG9yeS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTozNQorbXNnaWQgIiIKKyJCPGRwa2ctc291cmNlPiB3aWxsIHJlYWQgdGhlIG5hbWVzIG9mIHRoZSBvdGhlciBmaWxlKHMpIG1ha2luZyB1cCB0aGUgc291cmNlICIKKyJwYWNrYWdlIGZyb20gdGhlIGNvbnRyb2wgZmlsZTsgdGhleSBhcmUgYXNzdW1lZCB0byBiZSBpbiB0aGUgc2FtZSBkaXJlY3RvcnkgIgorImFzIHRoZSBCPC5kc2M+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjQzCittc2dpZCAiIgorIlRoZSBmaWxlcyBpbiB0aGUgZXh0cmFjdGVkIHBhY2thZ2Ugd2lsbCBoYXZlIHRoZWlyIHBlcm1pc3Npb25zIGFuZCAiCisib3duZXJzaGlwcyBzZXQgdG8gdGhvc2Ugd2hpY2ggd291bGQgaGF2ZSBiZWVuIGV4cGVjdGVkIGlmIHRoZSBmaWxlcyBhbmQgIgorImRpcmVjdG9yaWVzIGhhZCBzaW1wbHkgYmVlbiBjcmVhdGVkIC0gZGlyZWN0b3JpZXMgYW5kIGV4ZWN1dGFibGUgZmlsZXMgd2lsbCAiCisiYmUgMDc3NyBhbmQgcGxhaW4gZmlsZXMgd2lsbCBiZSAwNjY2LCBib3RoIG1vZGlmaWVkIGJ5IHRoZSBleHRyYWN0b3JzJyAiCisidW1hc2s7IGlmIHRoZSBwYXJlbnQgZGlyZWN0b3J5IGlzIHNldGdpZCB0aGVuIHRoZSBleHRyYWN0ZWQgZGlyZWN0b3JpZXMgd2lsbCAiCisiYmUgdG9vLCBhbmQgYWxsIHRoZSBmaWxlcyBhbmQgZGlyZWN0b3JpZXMgd2lsbCBpbmhlcml0IGl0cyBncm91cCBvd25lcnNoaXAuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NDgKK21zZ2lkICIiCisiSWYgdGhlIHNvdXJjZSBwYWNrYWdlIHVzZXMgYSBub24tc3RhbmRhcmQgZm9ybWF0IChjdXJyZW50bHkgdGhpcyBtZWFucyBhbGwgIgorImZvcm1hdHMgZXhjZXB0IFwiMS4wXCIpLCBpdHMgbmFtZSB3aWxsIGJlIHN0b3JlZCBpbiBCPGRlYmlhbi9zb3VyY2UvZm9ybWF0PiAiCisic28gdGhhdCB0aGUgZm9sbG93aW5nIGJ1aWxkcyBvZiB0aGUgc291cmNlIHBhY2thZ2UgdXNlIHRoZSBzYW1lIGZvcm1hdCBieSAiCisiZGVmYXVsdC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NDkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1iPiBJPGRpcmVjdG9yeT4gW0k8Zm9ybWF0LXNwZWNpZmljLXBhcmFtZXRlcnM+XSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjU2Cittc2dpZCAiIgorIkJ1aWxkIGEgc291cmNlIHBhY2thZ2UuIFRoZSBmaXJzdCBub24tb3B0aW9uIGFyZ3VtZW50IGlzIHRha2VuIGFzIHRoZSBuYW1lICIKKyJvZiB0aGUgZGlyZWN0b3J5IGNvbnRhaW5pbmcgdGhlIGRlYmlhbml6ZWQgc291cmNlIHRyZWUgKGkuZS4gd2l0aCBhIGRlYmlhbiAiCisic3ViLWRpcmVjdG9yeSBhbmQgbWF5YmUgY2hhbmdlcyB0byB0aGUgb3JpZ2luYWwgZmlsZXMpLiAgRGVwZW5kaW5nIG9uIHRoZSAiCisic291cmNlIHBhY2thZ2UgZm9ybWF0IHVzZWQgdG8gYnVpbGQgdGhlIHBhY2thZ2UsIGFkZGl0aW9uYWwgcGFyYW1ldGVycyBtaWdodCAiCisiYmUgYWNjZXB0ZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NjUKK21zZ2lkICIiCisiQjxkcGtnLXNvdXJjZT4gd2lsbCBidWlsZCB0aGUgc291cmNlIHBhY2thZ2Ugd2l0aCB0aGUgZmlyc3QgZm9ybWF0IGZvdW5kIGluICIKKyJ0aGlzIG9yZGVyZWQgbGlzdDogdGhlIGZvcm1hdCBpbmRpY2F0ZWQgd2l0aCB0aGUgSTwtLWZvcm1hdD4gY29tbWFuZCBsaW5lICIKKyJvcHRpb24sIHRoZSBmb3JtYXQgaW5kaWNhdGVkIGluIEI8ZGViaWFuL3NvdXJjZS9mb3JtYXQ+LCBcIjEuMFwiLiBUaGUgIgorImZhbGxiYWNrIHRvIFwiMS4wXCIgaXMgZGVwcmVjYXRlZCBhbmQgd2lsbCBiZSByZW1vdmVkIGF0IHNvbWUgcG9pbnQgaW4gdGhlICIKKyJmdXR1cmUsIHlvdSBzaG91bGQgYWx3YXlzIGRvY3VtZW50IHRoZSBkZXNpcmVkIHNvdXJjZSBmb3JtYXQgaW4gIgorIkI8ZGViaWFuL3NvdXJjZS9mb3JtYXQ+LiBTZWUgc2VjdGlvbiBCPFNPVVJDRSBQQUNLQUdFIEZPUk1BVFM+IGZvciBhbiAiCisiZXh0ZW5zaXZlIGRlc2NyaXB0aW9uIG9mIHRoZSB2YXJpb3VzIHNvdXJjZSBwYWNrYWdlIGZvcm1hdHMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjY2CisjLCBuby13cmFwCittc2dpZCAiQjwtLXByaW50LWZvcm1hdD4gSTxkaXJlY3Rvcnk+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NzEKK21zZ2lkICIiCisiUHJpbnQgdGhlIHNvdXJjZSBmb3JtYXQgdGhhdCB3b3VsZCBiZSB1c2VkIHRvIGJ1aWxkIHRoZSBzb3VyY2UgcGFja2FnZSBpZiAiCisiQjxkcGtnLXNvdXJjZSAtYiA+STxkaXJlY3Rvcnk+IHdhcyBjYWxsZWQgKGluIHRoZSBzYW1lIGNvbmRpdGlvbnMgYW5kIHdpdGggIgorInRoZSBzYW1lIHBhcmFtZXRlcnMpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTo3MgorIywgbm8td3JhcAorbXNnaWQgIkI8LS1iZWZvcmUtYnVpbGQ+IEk8ZGlyZWN0b3J5PiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjgxCittc2dpZCAiIgorIlJ1biB0aGUgY29ycmVzcG9uZGluZyBob29rIG9mIHRoZSBzb3VyY2UgcGFja2FnZSBmb3JtYXQuIFRoaXMgaG9vayBpcyBjYWxsZWQgIgorImJlZm9yZSBhbnkgYnVpbGQgb2YgdGhlIHBhY2thZ2UgKEI8ZHBrZy1idWlsZHBhY2thZ2U+IGNhbGxzIGl0IHZlcnkgZWFybHkgIgorImV2ZW4gYmVmb3JlIEI8ZGViaWFuL3J1bGVzIGNsZWFuPikuIFRoaXMgY29tbWFuZCBpcyBpZGVtcG90ZW50IGFuZCBjYW4gYmUgIgorImNhbGxlZCBtdWx0aXBsZSB0aW1lcy4gTm90IGFsbCBzb3VyY2UgZm9ybWF0cyBpbXBsZW1lbnQgc29tZXRoaW5nIGluIHRoaXMgIgorImhvb2ssIGFuZCB0aG9zZSB0aGF0IGRvIHVzdWFsbHkgcHJlcGFyZSB0aGUgc291cmNlIHRyZWUgZm9yIHRoZSBidWlsZCBmb3IgIgorImV4YW1wbGUgYnkgZW5zdXJpbmcgdGhhdCB0aGUgRGViaWFuIHBhdGNoZXMgYXJlIGFwcGxpZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjgyCisjLCBuby13cmFwCittc2dpZCAiQjwtLWFmdGVyLWJ1aWxkPiBJPGRpcmVjdG9yeT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo4OQorbXNnaWQgIiIKKyJSdW4gdGhlIGNvcnJlc3BvbmRpbmcgaG9vayBvZiB0aGUgc291cmNlIHBhY2thZ2UgZm9ybWF0LiBUaGlzIGhvb2sgaXMgY2FsbGVkICIKKyJhZnRlciBhbnkgYnVpbGQgb2YgdGhlIHBhY2thZ2UgKEI8ZHBrZy1idWlsZHBhY2thZ2U+IGNhbGxzIGl0IGxhc3QpLiBUaGlzICIKKyJjb21tYW5kIGlzIGlkZW1wb3RlbnQgYW5kIGNhbiBiZSBjYWxsZWQgbXVsdGlwbGUgdGltZXMuIE5vdCBhbGwgc291cmNlICIKKyJmb3JtYXRzIGltcGxlbWVudCBzb21ldGhpbmcgaW4gdGhpcyBob29rLCBhbmQgdGhvc2UgdGhhdCBkbyB1c3VhbGx5IHVzZSBpdCAiCisidG8gdW5kbyB3aGF0IEI8LS1iZWZvcmUtYnVpbGQ+IGhhcyBkb25lLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTo5MAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1jb21taXQ+IFtJPGRpcmVjdG9yeT5dIC4uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjk1Cittc2dpZCAiIgorIlJlY29yZCBjaGFuZ2VzIGluIHRoZSBzb3VyY2UgdHJlZSB1bnBhY2tlZCBpbiBJPGRpcmVjdG9yeT4uIFRoaXMgY29tbWFuZCBjYW4gIgorInRha2Ugc3VwcGxlbWVudGFyeSBwYXJhbWV0ZXJzIGRlcGVuZGluZyBvbiB0aGUgc291cmNlIGZvcm1hdC4gIEl0IHdpbGwgZXJyb3IgIgorIm91dCBmb3IgZm9ybWF0cyB3aGVyZSB0aGlzIG9wZXJhdGlvbiBkb2Vzbid0IG1lYW4gYW55dGhpbmcuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLXNvdXJjZS4xOjEwMworIywgbm8td3JhcAorbXNnaWQgIkdFTkVSSUMgQlVJTEQgT1BUSU9OUyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjExMQorbXNnaWQgIiIKKyJTcGVjaWZpZXMgdGhlIG1haW4gc291cmNlIGNvbnRyb2wgZmlsZSB0byByZWFkIGluZm9ybWF0aW9uIGZyb20uIFRoZSBkZWZhdWx0ICIKKyJpcyBCPGRlYmlhbi9jb250cm9sPi4gIElmIGdpdmVuIHdpdGggcmVsYXRpdmUgcGF0aG5hbWUgdGhpcyBpcyBpbnRlcnByZXRlZCAiCisic3RhcnRpbmcgYXQgdGhlIHNvdXJjZSB0cmVlJ3MgdG9wIGxldmVsIGRpcmVjdG9yeS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToxMTgKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRoZSBjaGFuZ2UgbG9nIGZpbGUgdG8gcmVhZCBpbmZvcm1hdGlvbiBmcm9tLiBUaGUgZGVmYXVsdCBpcyAiCisiQjxkZWJpYW4vY2hhbmdlbG9nPi4gIElmIGdpdmVuIHdpdGggcmVsYXRpdmUgcGF0aG5hbWUgdGhpcyBpcyBpbnRlcnByZXRlZCAiCisic3RhcnRpbmcgYXQgdGhlIHNvdXJjZSB0cmVlJ3MgdG9wIGxldmVsIGRpcmVjdG9yeS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6MTIzCisjLCBuby13cmFwCittc2dpZCAiQjwtLWZvcm1hdD0+STx2YWx1ZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToxMjcKK21zZ2lkICIiCisiVXNlIHRoZSBnaXZlbiBmb3JtYXQgZm9yIGJ1aWxkaW5nIHRoZSBzb3VyY2UgcGFja2FnZS4gSXQgZG9lcyBvdmVycmlkZSBhbnkgIgorImZvcm1hdCBnaXZlbiBpbiBCPGRlYmlhbi9zb3VyY2UvZm9ybWF0Pi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToxMzcKK21zZ2lkICIiCisiUmVhZCBzdWJzdGl0dXRpb24gdmFyaWFibGVzIGluIEk8c3Vic3R2YXJzZmlsZT47IHRoZSBkZWZhdWx0IGlzIHRvIG5vdCByZWFkICIKKyJhbnkgZmlsZS4gVGhpcyBvcHRpb24gY2FuIGJlIHVzZWQgbXVsdGlwbGUgdGltZXMgdG8gcmVhZCBzdWJzdGl0dXRpb24gIgorInZhcmlhYmxlcyBmcm9tIG11bHRpcGxlIGZpbGVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMToxNDMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1aPkk8Y29tcHJlc3Npb24+LCBCPC0tY29tcHJlc3Npb24+PUk8Y29tcHJlc3Npb24+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MTUxCittc2dpZCAiIgorIlNwZWNpZnkgdGhlIGNvbXByZXNzaW9uIHRvIHVzZSBmb3IgY3JlYXRlZCBmaWxlcyAodGFyYmFsbHMgYW5kIGRpZmZzKS4gIE5vdGUgIgorInRoYXQgdGhpcyBvcHRpb24gd2lsbCBub3QgY2F1c2UgZXhpc3RpbmcgdGFyYmFsbHMgdG8gYmUgcmVjb21wcmVzc2VkLCBpdCAiCisib25seSBhZmZlY3RzIG5ldyBmaWxlcy4gU3VwcG9ydGVkIHZhbHVlcyBhcmU6IEk8Z3ppcD4sIEk8YnppcDI+LCBJPGx6bWE+IGFuZCAiCisiSTx4ej4uICBJPGd6aXA+IGlzIHRoZSBkZWZhdWx0LiBJPHh6PiBpcyBvbmx5IHN1cHBvcnRlZCBzaW5jZSBkcGtnLWRldiAiCisiMS4xNS41LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMToxNTEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC16Pkk8bGV2ZWw+LCBCPC0tY29tcHJlc3Npb24tbGV2ZWw+PUk8bGV2ZWw+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MTU3Cittc2dpZCAiIgorIkNvbXByZXNzaW9uIGxldmVsIHRvIHVzZS4gQXMgd2l0aCBCPC1aPiBpdCBvbmx5IGFmZmVjdHMgbmV3bHkgY3JlYXRlZCAiCisiZmlsZXMuIFN1cHBvcnRlZCB2YWx1ZXMgYXJlOiBJPDE+IHRvIEk8OT4sIEk8YmVzdD4sIGFuZCBJPGZhc3Q+LiAgVGhlICIKKyJkZWZhdWx0IGlzIEk8OT4gZm9yIGd6aXAgYW5kIGJ6aXAyLCBJPDY+IGZvciB4eiBhbmQgbHptYS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6MTU3CisjLCBuby13cmFwCittc2dpZCAiQjwtaT5bSTxyZWdleHA+XSwgQjwtLWRpZmYtaWdub3JlPls9STxyZWdleHA+XSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjE2OQorbXNnaWQgIiIKKyJZb3UgbWF5IHNwZWNpZnkgYSBwZXJsIHJlZ3VsYXIgZXhwcmVzc2lvbiB0byBtYXRjaCBmaWxlcyB5b3Ugd2FudCBmaWx0ZXJlZCAiCisib3V0IG9mIHRoZSBsaXN0IG9mIGZpbGVzIGZvciB0aGUgZGlmZi4gKFRoaXMgbGlzdCBpcyBnZW5lcmF0ZWQgYnkgYSBmaW5kICIKKyJjb21tYW5kLikgKElmIHRoZSBzb3VyY2UgcGFja2FnZSBpcyBiZWluZyBidWlsdCBhcyBhIHZlcnNpb24gMyBzb3VyY2UgIgorInBhY2thZ2UgdXNpbmcgYSBWQ1MsIHRoaXMgY2FuIGJlIHVzZWQgdG8gaWdub3JlIHVuY29tbWl0ZWQgY2hhbmdlcyBvbiAiCisic3BlY2lmaWMgZmlsZXMuIFVzaW5nIC1pLiogd2lsbCBpZ25vcmUgYWxsIG9mIHRoZW0uKSAgQjwtaT4gYnkgaXRzZWxmICIKKyJlbmFibGVzIHRoZSBvcHRpb24sIHdpdGggYSBkZWZhdWx0IHJlZ2V4cCB0aGF0IHdpbGwgZmlsdGVyIG91dCBjb250cm9sIGZpbGVzICIKKyJhbmQgZGlyZWN0b3JpZXMgb2YgdGhlIG1vc3QgY29tbW9uIHJldmlzaW9uIGNvbnRyb2wgc3lzdGVtcywgYmFja3VwIGFuZCBzd2FwICIKKyJmaWxlcyBhbmQgTGlidG9vbCBidWlsZCBvdXRwdXQgZGlyZWN0b3JpZXMuIFRoZXJlIGNhbiBvbmx5IGJlIG9uZSBhY3RpdmUgIgorInJlZ2V4cCwgb2YgbXVsdGlwbGUgQjwtaT4gb3B0aW9ucyBvbmx5IHRoZSBsYXN0IG9uZSB3aWxsIHRha2UgZWZmZWN0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjE3OQorbXNnaWQgIiIKKyJUaGlzIGlzIHZlcnkgaGVscGZ1bCBpbiBjdXR0aW5nIG91dCBleHRyYW5lb3VzIGZpbGVzIHRoYXQgZ2V0IGluY2x1ZGVkIGluICIKKyJ0aGUgZGlmZiwgZS5nLiBpZiB5b3UgbWFpbnRhaW4geW91ciBzb3VyY2UgaW4gYSByZXZpc2lvbiBjb250cm9sIHN5c3RlbSBhbmQgIgorIndhbnQgdG8gdXNlIGEgY2hlY2tvdXQgdG8gYnVpbGQgYSBzb3VyY2UgcGFja2FnZSB3aXRob3V0IGluY2x1ZGluZyB0aGUgIgorImFkZGl0aW9uYWwgZmlsZXMgYW5kIGRpcmVjdG9yaWVzIHRoYXQgaXQgd2lsbCB1c3VhbGx5IGNvbnRhaW4gKGUuZy4gQ1ZTLywgIgorIi5jdnNpZ25vcmUsIC5zdm4vKS4gVGhlIGRlZmF1bHQgcmVnZXhwIGlzIGFscmVhZHkgdmVyeSBleGhhdXN0aXZlLCBidXQgaWYgIgorInlvdSBuZWVkIHRvIHJlcGxhY2UgaXQsIHBsZWFzZSBub3RlIHRoYXQgYnkgZGVmYXVsdCBpdCBjYW4gbWF0Y2ggYW55IHBhcnQgb2YgIgorImEgcGF0aCwgc28gaWYgeW91IHdhbnQgdG8gbWF0Y2ggdGhlIGJlZ2luIG9mIGEgZmlsZW5hbWUgb3Igb25seSBmdWxsICIKKyJmaWxlbmFtZXMsIHlvdSB3aWxsIG5lZWQgdG8gcHJvdmlkZSB0aGUgbmVjZXNzYXJ5IGFuY2hvcnMgKGUuZy4gJyhefC8pJywgIgorIicoJHwvKScpIHlvdXJzZWxmLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMToxNzkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tZXh0ZW5kLWRpZmYtaWdub3JlPj1JPHJlZ2V4cD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToxODYKK21zZ2lkICIiCisiVGhlIHBlcmwgcmVndWxhciBleHByZXNzaW9uIHNwZWNpZmllZCB3aWxsIGV4dGVuZCB0aGUgZGVmYXVsdCB2YWx1ZSBvZiAiCisiQjwtLWRpZmYtaWdub3JlPiBhbmQgaXRzIGN1cnJlbnQgdmFsdWUgKGlmIHNldCkuIEl0IGRvZXMgdGhpcyBieSAiCisiY29uY2F0ZW5hdGluZyBcIkI8fD5JPHJlZ2V4cD5cIiB0byB0aGUgZXhpc3RpbmcgdmFsdWUuICBUaGlzIG9wdGlvbiBpcyAiCisiY29udmVuaWVudCB0byB1c2UgaW4gQjxkZWJpYW4vc291cmNlL29wdGlvbnM+IHRvIGV4Y2x1ZGUgc29tZSBhdXRvLWdlbmVyYXRlZCAiCisiZmlsZXMgZnJvbSB0aGUgYXV0b21hdGljIHBhdGNoIGdlbmVyYXRpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjE4NgorIywgbm8td3JhcAorbXNnaWQgIkI8LUk+W0k8ZmlsZS1wYXR0ZXJuPl0sIEI8LS10YXItaWdub3JlPls9STxmaWxlLXBhdHRlcm4+XSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjE5NQorbXNnaWQgIiIKKyJJZiB0aGlzIG9wdGlvbiBpcyBzcGVjaWZpZWQsIHRoZSBwYXR0ZXJuIHdpbGwgYmUgcGFzc2VkIHRvIEI8dGFyPigxKSdzICIKKyItLWV4Y2x1ZGUgb3B0aW9uIHdoZW4gaXQgaXMgY2FsbGVkIHRvIGdlbmVyYXRlIGEgLm9yaWcudGFyIG9yIC50YXIgZmlsZS4gRm9yICIKKyJleGFtcGxlLCAtSUNWUyB3aWxsIG1ha2UgdGFyIHNraXAgb3ZlciBDVlMgZGlyZWN0b3JpZXMgd2hlbiBnZW5lcmF0aW5nIGEgIgorIi50YXIuZ3ogZmlsZS4gVGhlIG9wdGlvbiBtYXkgYmUgcmVwZWF0ZWQgbXVsdGlwbGUgdGltZXMgdG8gbGlzdCBtdWx0aXBsZSAiCisicGF0dGVybnMgdG8gZXhjbHVkZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToyMDAKK21zZ2lkICIiCisiQjwtST4gYnkgaXRzZWxmIGFkZHMgZGVmYXVsdCAtLWV4Y2x1ZGUgb3B0aW9ucyB0aGF0IHdpbGwgZmlsdGVyIG91dCBjb250cm9sICIKKyJmaWxlcyBhbmQgZGlyZWN0b3JpZXMgb2YgdGhlIG1vc3QgY29tbW9uIHJldmlzaW9uIGNvbnRyb2wgc3lzdGVtcywgYmFja3VwICIKKyJhbmQgc3dhcCBmaWxlcyBhbmQgTGlidG9vbCBidWlsZCBvdXRwdXQgZGlyZWN0b3JpZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MjEyCittc2dpZCAiIgorIkI8Tm90ZTo+IFdoaWxlIHRoZXkgaGF2ZSBzaW1pbGFyIHB1cnBvc2VzLCBCPC1pPiBhbmQgQjwtST4gaGF2ZSB2ZXJ5ICIKKyJkaWZmZXJlbnQgc3ludGF4IGFuZCBzZW1hbnRpY3MuIEI8LWk+IGNhbiBvbmx5IGJlIHNwZWNpZmllZCBvbmNlIGFuZCB0YWtlcyBhICIKKyJwZXJsIGNvbXBhdGlibGUgcmVndWxhciBleHByZXNzaW9uIHdoaWNoIGlzIG1hdGNoZWQgYWdhaW5zdCB0aGUgZnVsbCAiCisicmVsYXRpdmUgcGF0aCBvZiBlYWNoIGZpbGUuIEI8LUk+IGNhbiBzcGVjaWZpZWQgbXVsdGlwbGUgdGltZXMgYW5kIHRha2VzIGEgIgorImZpbGVuYW1lIHBhdHRlcm4gd2l0aCBzaGVsbCB3aWxkY2FyZHMuICBUaGUgcGF0dGVybiBpcyBhcHBsaWVkIHRvIHRoZSBmdWxsICIKKyJyZWxhdGl2ZSBwYXRoIGJ1dCBhbHNvIHRvIGVhY2ggcGFydCBvZiB0aGUgcGF0aCBpbmRpdmlkdWFsbHkuIFRoZSBleGFjdCAiCisic2VtYW50aWMgb2YgdGFyJ3MgLS1leGNsdWRlIG9wdGlvbiBpcyBzb21ld2hhdCBjb21wbGljYXRlZCwgc2VlICIKKyJodHRwOi8vd3d3LmdudS5vcmcvc29mdHdhcmUvdGFyL21hbnVhbC90YXIuaHRtbCN3aWxkY2FyZHMgZm9yIGEgZnVsbCAiCisiZG9jdW1lbnRhdGlvbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToyMTUKK21zZ2lkICIiCisiVGhlIGRlZmF1bHQgcmVnZXhwIGFuZCBwYXR0ZXJucyBmb3IgYm90aCBvcHRpb25zIGNhbiBiZSBzZWVuIGluIHRoZSBvdXRwdXQgIgorIm9mIHRoZSBCPC0taGVscD4gY29tbWFuZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctc291cmNlLjE6MjE1CisjLCBuby13cmFwCittc2dpZCAiR0VORVJJQyBFWFRSQUNUIE9QVElPTlMiCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6MjE2CisjLCBuby13cmFwCittc2dpZCAiQjwtLW5vLWNvcHk+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MjE5Cittc2dpZCAiRG8gbm90IGNvcHkgb3JpZ2luYWwgdGFyYmFsbHMgbmVhciB0aGUgZXh0cmFjdGVkIHNvdXJjZSBwYWNrYWdlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMToyMTkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tbm8tY2hlY2s+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MjIyCittc2dpZCAiRG8gbm90IGNoZWNrIHNpZ25hdHVyZXMgYW5kIGNoZWNrc3VtcyBiZWZvcmUgdW5wYWNraW5nLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMToyMjIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tcmVxdWlyZS12YWxpZC1zaWduYXR1cmU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MjMwCittc2dpZCAiIgorIlJlZnVzZSB0byB1bnBhY2sgdGhlIHNvdXJjZSBwYWNrYWdlIGlmIGl0IGRvZXNuJ3QgY29udGFpbiBhbiBPcGVuUEdQICIKKyJzaWduYXR1cmUgdGhhdCBjYW4gYmUgdmVyaWZpZWQgZWl0aGVyIHdpdGggdGhlIHVzZXIncyBJPHRydXN0ZWRrZXlzLmdwZz4gIgorImtleXJpbmcsIG9uZSBvZiB0aGUgdmVuZG9yLXNwZWNpZmljIGtleXJpbmdzLCBvciBvbmUgb2YgdGhlIG9mZmljaWFsIERlYmlhbiAiCisia2V5cmluZ3MgKEk8L3Vzci9zaGFyZS9rZXlyaW5ncy9kZWJpYW4ta2V5cmluZy5ncGc+IGFuZCAiCisiSTwvdXNyL3NoYXJlL2tleXJpbmdzL2RlYmlhbi1tYWludGFpbmVycy5ncGc+KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctc291cmNlLjE6MjMxCisjLCBuby13cmFwCittc2dpZCAiU09VUkNFIFBBQ0tBR0UgRk9STUFUUyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjIzNgorbXNnaWQgIiIKKyJJZiB5b3UgZG9uJ3Qga25vdyB3aGF0IHNvdXJjZSBmb3JtYXQgdG8gdXNlLCB5b3Ugc2hvdWxkIHByb2JhYmx5IHBpY2sgZWl0aGVyICIKKyJcIjMuMCAocXVpbHQpXCIgb3IgXCIzLjAgKG5hdGl2ZSlcIi4gU2VlICIKKyJodHRwOi8vd2lraS5kZWJpYW4ub3JnL1Byb2plY3RzL0RlYlNyYzMuMCBmb3IgaW5mb3JtYXRpb24gb24gdGhlIGRlcGxveW1lbnQgIgorIm9mIHRob3NlIGZvcm1hdHMgd2l0aGluIERlYmlhbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6MjM3CisjLCBuby13cmFwCittc2dpZCAiRm9ybWF0OiAxLjAiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToyNDEKK21zZ2lkICIiCisiQSBzb3VyY2UgcGFja2FnZSBpbiB0aGlzIGZvcm1hdCBjb25zaXN0cyBlaXRoZXIgb2YgYSBCPC5vcmlnLnRhci5nej4gIgorImFzc29jaWF0ZWQgdG8gYSBCPC5kaWZmLmd6PiBvciBhIHNpbmdsZSBCPC50YXIuZ3o+IChpbiB0aGF0IGNhc2UgdGhlIHBhY2thZ2UgIgorImlzIHNhaWQgdG8gYmUgSTxuYXRpdmU+KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToyNDMgZHBrZy1zb3VyY2UuMTo0MTEgZHBrZy1zb3VyY2UuMTo1ODYgZHBrZy1zb3VyY2UuMTo2MjUKK21zZ2lkICJCPEV4dHJhY3Rpbmc+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MjUzCittc2dpZCAiIgorIkV4dHJhY3RpbmcgYSBuYXRpdmUgcGFja2FnZSBpcyBhIHNpbXBsZSBleHRyYWN0aW9uIG9mIHRoZSBzaW5nbGUgdGFyYmFsbCBpbiAiCisidGhlIHRhcmdldCBkaXJlY3RvcnkuIEV4dHJhY3RpbmcgYSBub24tbmF0aXZlIHBhY2thZ2UgaXMgZG9uZSBieSBmaXJzdCAiCisidW5wYWNraW5nIHRoZSBCPC5vcmlnLnRhci5nej4gYW5kIHRoZW4gYXBwbHlpbmcgdGhlIHBhdGNoIGNvbnRhaW5lZCBpbiB0aGUgIgorIkI8LmRpZmYuZ3o+IGZpbGUuIFRoZSB0aW1lc3RhbXAgb2YgYWxsIHBhdGNoZWQgZmlsZXMgaXMgcmVzZXQgdG8gdGhlICIKKyJleHRyYWN0aW9uIHRpbWUgb2YgdGhlIHNvdXJjZSBwYWNrYWdlICh0aGlzIGF2b2lkcyB0aW1lc3RhbXAgc2tld3MgbGVhZGluZyAiCisidG8gcHJvYmxlbXMgd2hlbiBhdXRvZ2VuZXJhdGVkIGZpbGVzIGFyZSBwYXRjaGVkKS4gVGhlIGRpZmYgY2FuIGNyZWF0ZSBuZXcgIgorImZpbGVzICh0aGUgd2hvbGUgZGViaWFuIGRpcmVjdG9yeSBpcyBjcmVhdGVkIHRoYXQgd2F5KSBidXQgY2FuJ3QgcmVtb3ZlICIKKyJmaWxlcyAoZW1wdHkgZmlsZXMgd2lsbCBiZSBsZWZ0IG92ZXIpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjI1NSBkcGtnLXNvdXJjZS4xOjQzOSBkcGtnLXNvdXJjZS4xOjU5NyBkcGtnLXNvdXJjZS4xOjYzMAorbXNnaWQgIkI8QnVpbGRpbmc+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MjYxCittc2dpZCAiIgorIkJ1aWxkaW5nIGEgbmF0aXZlIHBhY2thZ2UgaXMganVzdCBjcmVhdGluZyBhIHNpbmdsZSB0YXJiYWxsIHdpdGggdGhlIHNvdXJjZSAiCisiZGlyZWN0b3J5LiBCdWlsZGluZyBhIG5vbi1uYXRpdmUgcGFja2FnZSBpbnZvbHZlcyBleHRyYWN0aW5nIHRoZSBvcmlnaW5hbCAiCisidGFyYmFsbCBpbiBhIHNlcGFyYXRlIFwiLm9yaWdcIiBkaXJlY3RvcnkgYW5kIHJlZ2VuZXJhdGluZyB0aGUgQjwuZGlmZi5nej4gIgorImJ5IGNvbXBhcmluZyB0aGUgc291cmNlIHBhY2thZ2UgSTxkaXJlY3Rvcnk+IHdpdGggdGhlIC5vcmlnIGRpcmVjdG9yeS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6MjYyCisjLCBuby13cmFwCittc2dpZCAiQjxCdWlsZCBvcHRpb25zICh3aXRoIC1iKTo+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6Mjc1Cittc2dpZCAiIgorIklmIGEgc2Vjb25kIG5vbi1vcHRpb24gYXJndW1lbnQgaXMgc3VwcGxpZWQgaXQgc2hvdWxkIGJlIHRoZSBuYW1lIG9mIHRoZSAiCisib3JpZ2luYWwgc291cmNlIGRpcmVjdG9yeSBvciB0YXJmaWxlIG9yIHRoZSBlbXB0eSBzdHJpbmcgaWYgdGhlIHBhY2thZ2UgaXMgYSAiCisiRGViaWFuLXNwZWNpZmljIG9uZSBhbmQgc28gaGFzIG5vIERlYmlhbmlzYXRpb24gZGlmZnMuIElmIG5vIHNlY29uZCBhcmd1bWVudCAiCisiaXMgc3VwcGxpZWQgdGhlbiBCPGRwa2ctc291cmNlPiB3aWxsIGxvb2sgZm9yIHRoZSBvcmlnaW5hbCBzb3VyY2UgdGFyZmlsZSAiCisiSTxwYWNrYWdlPkI8Xz5JPHVwc3RyZWFtLXZlcnNpb24+Qjwub3JpZy50YXIuZ3o+IG9yIHRoZSBvcmlnaW5hbCBzb3VyY2UgIgorImRpcmVjdG9yeSBJPGRpcmVjdG9yeT5CPC5vcmlnPiBkZXBlbmRpbmcgb24gdGhlIEI8LXNYPiBhcmd1bWVudHMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MjgxCittc2dpZCAiIgorIkI8LXNhPiwgQjwtc3A+LCBCPC1zaz4sIEI8LXN1PiBhbmQgQjwtc3I+IHdpbGwgbm90IG92ZXJ3cml0ZSBleGlzdGluZyAiCisidGFyZmlsZXMgb3IgZGlyZWN0b3JpZXMuIElmIHRoaXMgaXMgZGVzaXJlZCB0aGVuIEI8LXNBPiwgQjwtc1A+LCBCPC1zSz4sICIKKyJCPC1zVT4gYW5kIEI8LXNSPiBzaG91bGQgYmUgdXNlZCBpbnN0ZWFkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMToyODEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1zaz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToyOTAKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRvIGV4cGVjdCB0aGUgb3JpZ2luYWwgc291cmNlIGFzIGEgdGFyZmlsZSwgYnkgZGVmYXVsdCAiCisiSTxwYWNrYWdlPkI8Xz5JPHVwc3RyZWFtLXZlcnNpb24+Qjwub3JpZy50YXIuPkk8ZXh0ZW5zaW9uPi4gIEl0IHdpbGwgbGVhdmUgIgorInRoaXMgb3JpZ2luYWwgc291cmNlIGluIHBsYWNlIGFzIGEgdGFyZmlsZSwgb3IgY29weSBpdCB0byB0aGUgY3VycmVudCAiCisiZGlyZWN0b3J5IGlmIGl0IGlzbid0IGFscmVhZHkgdGhlcmUuIFRoZSB0YXJiYWxsIHdpbGwgYmUgdW5wYWNrZWQgaW50byAiCisiSTxkaXJlY3Rvcnk+Qjwub3JpZz4gZm9yIHRoZSBnZW5lcmF0aW9uIG9mIHRoZSBkaWZmLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMToyOTAgZHBrZy1zb3VyY2UuMTozNTkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1zcD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToyOTUKK21zZ2lkICJMaWtlIEI8LXNrPiBidXQgd2lsbCByZW1vdmUgdGhlIGRpcmVjdG9yeSBhZ2FpbiBhZnRlcndhcmRzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMToyOTUgZHBrZy1zb3VyY2UuMTozNjUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1zdT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTozMDMKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRoYXQgdGhlIG9yaWdpbmFsIHNvdXJjZSBpcyBleHBlY3RlZCBhcyBhIGRpcmVjdG9yeSwgYnkgZGVmYXVsdCAiCisiSTxwYWNrYWdlPkI8LT5JPHVwc3RyZWFtLXZlcnNpb24+Qjwub3JpZz4gYW5kIEI8ZHBrZy1zb3VyY2U+IHdpbGwgY3JlYXRlIGEgIgorIm5ldyBvcmlnaW5hbCBzb3VyY2UgYXJjaGl2ZSBmcm9tIGl0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTozMDMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1zcj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTozMDgKK21zZ2lkICJMaWtlIEI8LXN1PiBidXQgd2lsbCByZW1vdmUgdGhhdCBkaXJlY3RvcnkgYWZ0ZXIgaXQgaGFzIGJlZW4gdXNlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6MzA4CisjLCBuby13cmFwCittc2dpZCAiQjwtc3M+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MzE2Cittc2dpZCAiIgorIlNwZWNpZmllcyB0aGF0IHRoZSBvcmlnaW5hbCBzb3VyY2UgaXMgYXZhaWxhYmxlIGJvdGggYXMgYSBkaXJlY3RvcnkgYW5kIGFzIGEgIgorInRhcmZpbGUuIGRwa2ctc291cmNlIHdpbGwgdXNlIHRoZSBkaXJlY3RvcnkgdG8gY3JlYXRlIHRoZSBkaWZmLCBidXQgdGhlICIKKyJ0YXJmaWxlIHRvIGNyZWF0ZSB0aGUgQjwuZHNjPi4gIFRoaXMgb3B0aW9uIG11c3QgYmUgdXNlZCB3aXRoIGNhcmUgLSBpZiB0aGUgIgorImRpcmVjdG9yeSBhbmQgdGFyZmlsZSBkbyBub3QgbWF0Y2ggYSBiYWQgc291cmNlIGFyY2hpdmUgd2lsbCBiZSBnZW5lcmF0ZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjMxNiBkcGtnLXNvdXJjZS4xOjM2OAorIywgbm8td3JhcAorbXNnaWQgIkI8LXNuPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjMyMgorbXNnaWQgIiIKKyJTcGVjaWZpZXMgdG8gbm90IGxvb2sgZm9yIGFueSBvcmlnaW5hbCBzb3VyY2UsIGFuZCB0byBub3QgZ2VuZXJhdGUgYSBkaWZmLiAgIgorIlRoZSBzZWNvbmQgYXJndW1lbnQsIGlmIHN1cHBsaWVkLCBtdXN0IGJlIHRoZSBlbXB0eSBzdHJpbmcuIFRoaXMgaXMgdXNlZCBmb3IgIgorIkRlYmlhbi1zcGVjaWZpYyBwYWNrYWdlcyB3aGljaCBkbyBub3QgaGF2ZSBhIHNlcGFyYXRlIHVwc3RyZWFtIHNvdXJjZSBhbmQgIgorInRoZXJlZm9yZSBoYXZlIG5vIGRlYmlhbmlzYXRpb24gZGlmZnMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjMyMgorIywgbm8td3JhcAorbXNnaWQgIkI8LXNhPiBvciBCPC1zQT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTozNDgKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRvIGxvb2sgZm9yIHRoZSBvcmlnaW5hbCBzb3VyY2UgYXJjaGl2ZSBhcyBhIHRhcmZpbGUgb3IgYXMgYSAiCisiZGlyZWN0b3J5IC0gdGhlIHNlY29uZCBhcmd1bWVudCwgaWYgYW55LCBtYXkgYmUgZWl0aGVyLCBvciB0aGUgZW1wdHkgc3RyaW5nICIKKyIodGhpcyBpcyBlcXVpdmFsZW50IHRvIHVzaW5nIEI8LXNuPikuICBJZiBhIHRhcmZpbGUgaXMgZm91bmQgaXQgd2lsbCB1bnBhY2sgIgorIml0IHRvIGNyZWF0ZSB0aGUgZGlmZiBhbmQgcmVtb3ZlIGl0IGFmdGVyd2FyZHMgKHRoaXMgaXMgZXF1aXZhbGVudCB0byAiCisiQjwtc3A+KTsgaWYgYSBkaXJlY3RvcnkgaXMgZm91bmQgaXQgd2lsbCBwYWNrIGl0IHRvIGNyZWF0ZSB0aGUgb3JpZ2luYWwgIgorInNvdXJjZSBhbmQgcmVtb3ZlIGl0IGFmdGVyd2FyZHMgKHRoaXMgaXMgZXF1aXZhbGVudCB0byBCPC1zcj4pOyBpZiBuZWl0aGVyICIKKyJpcyBmb3VuZCBpdCB3aWxsIGFzc3VtZSB0aGF0IHRoZSBwYWNrYWdlIGhhcyBubyBkZWJpYW5pc2F0aW9uIGRpZmZzLCBvbmx5IGEgIgorInN0cmFpZ2h0Zm9yd2FyZCBzb3VyY2UgYXJjaGl2ZSAodGhpcyBpcyBlcXVpdmFsZW50IHRvIEI8LXNuPikuICBJZiBib3RoIGFyZSAiCisiZm91bmQgdGhlbiBCPGRwa2ctc291cmNlPiB3aWxsIGlnbm9yZSB0aGUgZGlyZWN0b3J5LCBvdmVyd3JpdGluZyBpdCwgaWYgIgorIkI8LXNBPiB3YXMgc3BlY2lmaWVkICh0aGlzIGlzIGVxdWl2YWxlbnQgdG8gQjwtc1A+KSAgb3IgcmFpc2UgYW4gZXJyb3IgaWYgIgorIkI8LXNhPiB3YXMgc3BlY2lmaWVkLiAgQjwtc0E+IGlzIHRoZSBkZWZhdWx0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTozNDggZHBrZy1zb3VyY2UuMTo1NDEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tYWJvcnQtb24tdXBzdHJlYW0tY2hhbmdlcz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTozNTQKK21zZ2lkICIiCisiVGhlIHByb2Nlc3MgZmFpbHMgaWYgdGhlIGdlbmVyYXRlZCBkaWZmIGNvbnRhaW5zIGNoYW5nZXMgdG8gZmlsZXMgb3V0c2lkZSBvZiAiCisidGhlIGRlYmlhbiBzdWItZGlyZWN0b3J5LiBUaGlzIG9wdGlvbiBpcyBub3QgYWxsb3dlZCBpbiAiCisiQjxkZWJpYW4vc291cmNlL29wdGlvbnM+IGJ1dCBjYW4gYmUgdXNlZCBpbiBCPGRlYmlhbi9zb3VyY2UvbG9jYWwtb3B0aW9ucz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjM1NQorIywgbm8td3JhcAorbXNnaWQgIkI8RXh0cmFjdCBvcHRpb25zICh3aXRoIC14KTo+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MzU5Cittc2dpZCAiSW4gYWxsIGNhc2VzIGFueSBleGlzdGluZyBvcmlnaW5hbCBzb3VyY2UgdHJlZSB3aWxsIGJlIHJlbW92ZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MzY1Cittc2dpZCAiIgorIlVzZWQgd2hlbiBleHRyYWN0aW5nIHRoZW4gdGhlIG9yaWdpbmFsIHNvdXJjZSAoaWYgYW55KSB3aWxsIGJlIGxlZnQgYXMgYSAiCisidGFyZmlsZS4gSWYgaXQgaXMgbm90IGFscmVhZHkgbG9jYXRlZCBpbiB0aGUgY3VycmVudCBkaXJlY3Rvcnkgb3IgaWYgYW4gIgorImV4aXN0aW5nIGJ1dCBkaWZmZXJlbnQgZmlsZSBpcyB0aGVyZSBpdCB3aWxsIGJlIGNvcGllZCB0aGVyZS4gIChCPFRoaXMgaXMgIgorInRoZSBkZWZhdWx0PikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MzY4Cittc2dpZCAiVW5wYWNrcyB0aGUgb3JpZ2luYWwgc291cmNlIHRyZWUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MzczCittc2dpZCAiIgorIkVuc3VyZXMgdGhhdCB0aGUgb3JpZ2luYWwgc291cmNlIGlzIG5laXRoZXIgY29waWVkIHRvIHRoZSBjdXJyZW50IGRpcmVjdG9yeSAiCisibm9yIHVucGFja2VkLiBBbnkgb3JpZ2luYWwgc291cmNlIHRyZWUgdGhhdCB3YXMgaW4gdGhlIGN1cnJlbnQgZGlyZWN0b3J5IGlzICIKKyJzdGlsbCByZW1vdmVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjM3OAorbXNnaWQgIiIKKyJBbGwgdGhlIEI8LXM+STxYPiBvcHRpb25zIGFyZSBtdXR1YWxseSBleGNsdXNpdmUuIElmIHlvdSBzcGVjaWZ5IG1vcmUgdGhhbiAiCisib25lIG9ubHkgdGhlIGxhc3Qgb25lIHdpbGwgYmUgdXNlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6Mzc4IGRwa2ctc291cmNlLjE6NTU1CisjLCBuby13cmFwCittc2dpZCAiQjwtLXNraXAtZGViaWFuaXphdGlvbj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTozODEKK21zZ2lkICJTa2lwcyBhcHBsaWNhdGlvbiBvZiB0aGUgZGViaWFuIGRpZmYgb24gdG9wIG9mIHRoZSB1cHN0cmVhbSBzb3VyY2VzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTozODIKKyMsIG5vLXdyYXAKK21zZ2lkICJGb3JtYXQ6IDIuMCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjM4NgorbXNnaWQgIiIKKyJBbHNvIGtub3duIGFzIHdpZyZwZW4uIFRoaXMgZm9ybWF0IGlzIG5vdCByZWNvbW1lbmRlZCBmb3Igd2lkZS1zcHJlYWQgdXNhZ2UsICIKKyJ0aGUgZm9ybWF0IFwiMy4wIChxdWlsdClcIiByZXBsYWNlcyBpdC4gV2lnJnBlbiB3YXMgdGhlIGZpcnN0IHNwZWNpZmljYXRpb24gIgorIm9mIGEgbmV3LWdlbmVyYXRpb24gc291cmNlIHBhY2thZ2UgZm9ybWF0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjM5MQorbXNnaWQgIiIKKyJUaGUgYmVoYXZpb3VyIG9mIHRoaXMgZm9ybWF0IGlzIHRoZSBzYW1lIGFzIHRoZSBcIjMuMCAocXVpbHQpXCIgZm9ybWF0ICIKKyJleGNlcHQgdGhhdCBpdCBkb2Vzbid0IHVzZSBhbiBleHBsaWNpdCBsaXN0IG9mIHBhdGNoZXMuIEFsbCBmaWxlcyBpbiAiCisiQjxkZWJpYW4vcGF0Y2hlcy8+IG1hdGNoaW5nIHRoZSBwZXJsIHJlZ3VsYXIgZXhwcmVzc2lvbiBCPFtcXGV3LV0rPiBtdXN0IGJlICIKKyJ2YWxpZCBwYXRjaGVzOiB0aGV5IGFyZSBhcHBsaWVkIGF0IGV4dHJhY3Rpb24gdGltZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTozOTQKK21zZ2lkICIiCisiV2hlbiBidWlsZGluZyBhIG5ldyBzb3VyY2UgcGFja2FnZSwgYW55IGNoYW5nZSB0byB0aGUgdXBzdHJlYW0gc291cmNlIGlzICIKKyJzdG9yZWQgaW4gYSBwYXRjaCBuYW1lZCBCPHp6X2RlYmlhbi1kaWZmLWF1dG8+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTozOTUKKyMsIG5vLXdyYXAKK21zZ2lkICJGb3JtYXQ6IDMuMCAobmF0aXZlKSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjQwMQorbXNnaWQgIiIKKyJUaGlzIGZvcm1hdCBpcyBhbiBleHRlbnNpb24gb2YgdGhlIG5hdGl2ZSBwYWNrYWdlIGZvcm1hdCBhcyBkZWZpbmVkIGluIHRoZSAiCisiMS4wIGZvcm1hdC4gSXQgc3VwcG9ydHMgYWxsIGNvbXByZXNzaW9uIG1ldGhvZHMgYW5kIHdpbGwgaWdub3JlIGJ5IGRlZmF1bHQgIgorImFueSBWQ1Mgc3BlY2lmaWMgZmlsZXMgYW5kIGRpcmVjdG9yaWVzIGFzIHdlbGwgYXMgbWFueSB0ZW1wb3JhcnkgZmlsZXMgKHNlZSAiCisiZGVmYXVsdCB2YWx1ZSBhc3NvY2lhdGVkIHRvIEI8LUk+IG9wdGlvbiBpbiB0aGUgQjwtLWhlbHA+IG91dHB1dCkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjQwMgorIywgbm8td3JhcAorbXNnaWQgIkZvcm1hdDogMy4wIChxdWlsdCkiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo0MDkKK21zZ2lkICIiCisiQSBzb3VyY2UgcGFja2FnZSBpbiB0aGlzIGZvcm1hdCBjb250YWlucyBhdCBsZWFzdCBhbiBvcmlnaW5hbCB0YXJiYWxsICIKKyIoQjwub3JpZy50YXIuPkk8ZXh0PiB3aGVyZSBJPGV4dD4gY2FuIGJlIEI8Z3o+LCBCPGJ6Mj4sIEI8bHptYT4gYW5kIEI8eHo+KSAiCisiYW5kIGEgZGViaWFuIHRhcmJhbGwgKEI8LmRlYmlhbi50YXIuPkk8ZXh0PikuIEl0IGNhbiBhbHNvIGNvbnRhaW4gYWRkaXRpb25hbCAiCisib3JpZ2luYWwgdGFyYmFsbHMgKEI8Lm9yaWctPkk8Y29tcG9uZW50PkI8LnRhci4+STxleHQ+KS4gIEk8Y29tcG9uZW50PiBjYW4gIgorIm9ubHkgY29udGFpbiBhbHBoYW51bWVyaWMgY2hhcmFjdGVycyBhbmQgZGFzaGVzIChcIi1cIikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NDIwCittc2dpZCAiIgorIlRoZSBtYWluIG9yaWdpbmFsIHRhcmJhbGwgaXMgZXh0cmFjdGVkIGZpcnN0LCB0aGVuIGFsbCBhZGRpdGlvbmFsIG9yaWdpbmFsICIKKyJ0YXJiYWxscyBhcmUgZXh0cmFjdGVkIGluIHN1YmRpcmVjdG9yaWVzIG5hbWVkIGFmdGVyIHRoZSBJPGNvbXBvbmVudD4gcGFydCAiCisib2YgdGhlaXIgZmlsZW5hbWUgKGFueSBwcmUtZXhpc3RpbmcgZGlyZWN0b3J5IGlzIHJlcGxhY2VkKS4gVGhlIGRlYmlhbiAiCisidGFyYmFsbCBpcyBleHRyYWN0ZWQgb24gdG9wIG9mIHRoZSBzb3VyY2UgZGlyZWN0b3J5IGFmdGVyIHByaW9yIHJlbW92YWwgb2YgIgorImFueSBwcmUtZXhpc3RpbmcgQjxkZWJpYW4+IGRpcmVjdG9yeS4gTm90ZSB0aGF0IHRoZSBkZWJpYW4gdGFyYmFsbCBtdXN0ICIKKyJjb250YWluIGEgQjxkZWJpYW4+IHN1Yi1kaXJlY3RvcnkgYnV0IGl0IGNhbiBhbHNvIGNvbnRhaW4gYmluYXJ5IGZpbGVzICIKKyJvdXRzaWRlIG9mIHRoYXQgZGlyZWN0b3J5IChzZWUgQjwtLWluY2x1ZGUtYmluYXJpZXM+IG9wdGlvbikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NDMyCittc2dpZCAiIgorIkFsbCBwYXRjaGVzIGxpc3RlZCBpbiBCPGRlYmlhbi9wYXRjaGVzL2RlYmlhbi5zZXJpZXM+IG9yICIKKyJCPGRlYmlhbi9wYXRjaGVzL3Nlcmllcz4gYXJlIHRoZW4gYXBwbGllZC4gIElmIHRoZSBmb3JtZXIgZmlsZSBpcyB1c2VkIGFuZCAiCisidGhlIGxhdHRlciBvbmUgZG9lc24ndCBleGlzdCAob3IgaXMgYSBzeW1saW5rKSwgdGhlbiB0aGUgbGF0dGVyIGlzIHJlcGxhY2VkICIKKyJ3aXRoIGEgc3ltbGluayB0byB0aGUgZm9ybWVyLiBUaGlzIGlzIG1lYW50IHRvIHNpbXBsaWZ5IHVzYWdlIG9mIHF1aWx0IHRvICIKKyJtYW5hZ2UgdGhlIHNldCBvZiBwYXRjaGVzLiBOb3RlIGhvd2V2ZXIgdGhhdCB3aGlsZSBCPGRwa2ctc291cmNlPiBwYXJzZXMgIgorImNvcnJlY3RseSBzZXJpZXMgZmlsZXMgd2l0aCBleHBsaWNpdCBvcHRpb25zIHVzZWQgZm9yIHBhdGNoIGFwcGxpY2F0aW9uICIKKyIoc3RvcmVkIG9uIGVhY2ggbGluZSBhZnRlciB0aGUgcGF0Y2ggZmlsZW5hbWUgYW5kIG9uZSBvciBtb3JlIHNwYWNlcyksIGl0ICIKKyJkb2VzIGlnbm9yZSB0aG9zZSBvcHRpb25zIGFuZCBhbHdheXMgZXhwZWN0IHBhdGNoZXMgdGhhdCBjYW4gYmUgYXBwbGllZCB3aXRoICIKKyJ0aGUgQjwtcDE+IG9wdGlvbiBvZiBCPHBhdGNoPi4gSXQgd2lsbCB0aHVzIGVtaXQgYSB3YXJuaW5nIHdoZW4gaXQgIgorImVuY291bnRlcnMgc3VjaCBvcHRpb25zLCBhbmQgdGhlIGJ1aWxkIGlzIGxpa2VseSB0byBmYWlsLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjQzNAorbXNnaWQgIlNpbWlsYXJseSB0byBxdWlsdCdzIGRlZmF1bHQgYmVoYXZpb3VyLCB0aGUgcGF0Y2hlcyBjYW4gcmVtb3ZlIGZpbGVzIHRvby4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo0MzcKK21zZ2lkICIiCisiVGhlIGZpbGUgQjwucGMvYXBwbGllZC1wYXRjaGVzPiBpcyBjcmVhdGVkIGlmIHNvbWUgcGF0Y2hlcyBoYXZlIGJlZW4gYXBwbGllZCAiCisiZHVyaW5nIHRoZSBleHRyYWN0aW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjQ1MQorbXNnaWQgIiIKKyJBbGwgb3JpZ2luYWwgdGFyYmFsbHMgZm91bmQgaW4gdGhlIGN1cnJlbnQgZGlyZWN0b3J5IGFyZSBleHRyYWN0ZWQgaW4gYSAiCisidGVtcG9yYXJ5IGRpcmVjdG9yeSBieSBmb2xsb3dpbmcgdGhlIHNhbWUgbG9naWMgYXMgZm9yIHRoZSB1bnBhY2ssIHRoZSAiCisiZGViaWFuIGRpcmVjdG9yeSBpcyBjb3BpZWQgb3ZlciBpbiB0aGUgdGVtcG9yYXJ5IGRpcmVjdG9yeSwgYW5kIGFsbCBwYXRjaGVzICIKKyJleGNlcHQgdGhlIGF1dG9tYXRpYyBwYXRjaCAoQjxkZWJpYW4tY2hhbmdlcy0+STx2ZXJzaW9uPiBvciAiCisiQjxkZWJpYW4tY2hhbmdlcz4sIGRlcGVuZGluZyBvbiBCPC0tc2luZ2xlLWRlYmlhbi1wYXRjaD4pIGFyZSBhcHBsaWVkLiBUaGUgIgorInRlbXBvcmFyeSBkaXJlY3RvcnkgaXMgY29tcGFyZWQgdG8gdGhlIHNvdXJjZSBwYWNrYWdlIGRpcmVjdG9yeS4gV2hlbiB0aGUgIgorImRpZmYgaXMgbm9uLWVtcHR5LCB0aGUgYnVpbGQgZmFpbHMgdW5sZXNzIEI8LS1zaW5nbGUtZGViaWFuLXBhdGNoPiBvciAiCisiQjwtLWF1dG8tY29tbWl0PiBoYXMgYmVlbiB1c2VkLCBpbiB3aGljaCBjYXNlIHRoZSBkaWZmIGlzIHN0b3JlZCBpbiB0aGUgIgorImF1dG9tYXRpYyBwYXRjaC4gIElmIHRoZSBhdXRvbWF0aWMgcGF0Y2ggaXMgY3JlYXRlZC9kZWxldGVkLCBpdCdzICIKKyJhZGRlZC9yZW1vdmVkIGZyb20gdGhlIHNlcmllcyBmaWxlIGFuZCBmcm9tIHRoZSBxdWlsdCBtZXRhZGF0YS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo0NTkKK21zZ2lkICIiCisiQW55IGNoYW5nZSBvbiBhIGJpbmFyeSBmaWxlIGlzIG5vdCByZXByZXNlbnRhYmxlIGluIGEgZGlmZiBhbmQgd2lsbCB0aHVzICIKKyJsZWFkIHRvIGEgZmFpbHVyZSB1bmxlc3MgdGhlIG1haW50YWluZXIgZGVsaWJlcmF0ZWx5IGRlY2lkZWQgdG8gaW5jbHVkZSB0aGF0ICIKKyJtb2RpZmllZCBiaW5hcnkgZmlsZSBpbiB0aGUgZGViaWFuIHRhcmJhbGwgKGJ5IGxpc3RpbmcgaXQgaW4gIgorIkI8ZGViaWFuL3NvdXJjZS9pbmNsdWRlLWJpbmFyaWVzPikuIFRoZSBidWlsZCB3aWxsIGFsc28gZmFpbCBpZiBpdCBmaW5kcyAiCisiYmluYXJ5IGZpbGVzIGluIHRoZSBkZWJpYW4gc3ViLWRpcmVjdG9yeSB1bmxlc3MgdGhleSBoYXZlIGJlZW4gd2hpdGVsaXN0ZWQgIgorInRocm91Z2ggQjxkZWJpYW4vc291cmNlL2luY2x1ZGUtYmluYXJpZXM+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjQ2MgorbXNnaWQgIiIKKyJUaGUgdXBkYXRlZCBkZWJpYW4gZGlyZWN0b3J5IGFuZCB0aGUgbGlzdCBvZiBtb2RpZmllZCBiaW5hcmllcyBpcyB0aGVuIHVzZWQgIgorInRvIGdlbmVyYXRlIHRoZSBkZWJpYW4gdGFyYmFsbC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo0NjgKK21zZ2lkICIiCisiVGhlIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGRpZmYgZG9lc24ndCBpbmNsdWRlIGNoYW5nZXMgb24gVkNTIHNwZWNpZmljICIKKyJmaWxlcyBhcyB3ZWxsIGFzIG1hbnkgdGVtcG9yYXJ5IGZpbGVzIChzZWUgZGVmYXVsdCB2YWx1ZSBhc3NvY2lhdGVkIHRvIEI8LWk+ICIKKyJvcHRpb24gaW4gdGhlIEI8LS1oZWxwPiBvdXRwdXQpLiBJbiBwYXJ0aWN1bGFyLCB0aGUgQjwucGM+IGRpcmVjdG9yeSB1c2VkIGJ5ICIKKyJxdWlsdCBpcyBpZ25vcmVkIGR1cmluZyBnZW5lcmF0aW9uIG9mIHRoZSBhdXRvbWF0aWMgcGF0Y2guIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NDc3Cittc2dpZCAiIgorIk5vdGU6IEI8ZHBrZy1zb3VyY2U+IEI8LS1iZWZvcmUtYnVpbGQ+IChhbmQgQjwtYj4pIHdpbGwgZW5zdXJlIHRoYXQgYWxsICIKKyJwYXRjaGVzIGxpc3RlZCBpbiB0aGUgc2VyaWVzIGZpbGUgYXJlIGFwcGxpZWQgc28gdGhhdCBhIHBhY2thZ2UgYnVpbGQgYWx3YXlzICIKKyJoYXMgYWxsIHBhdGNoZXMgYXBwbGllZC4gSXQgZG9lcyB0aGlzIGJ5IGZpbmRpbmcgdW5hcHBsaWVkIHBhdGNoZXMgKHRoZXkgYXJlICIKKyJsaXN0ZWQgaW4gdGhlIEI8c2VyaWVzPiBmaWxlIGJ1dCBub3QgaW4gQjwucGMvYXBwbGllZC1wYXRjaGVzPiksIGFuZCBpZiB0aGUgIgorImZpcnN0IHBhdGNoIGluIHRoYXQgc2V0IGNhbiBiZSBhcHBsaWVkIHdpdGhvdXQgZXJyb3JzLCBpdCB3aWxsIGFwcGx5IHRoZW0gIgorImFsbC4gVGhlIG9wdGlvbiBCPC0tbm8tcHJlcGFyYXRpb24+IGNhbiBiZSB1c2VkIHRvIGRpc2FibGUgdGhpcyBiZWhhdmlvci4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo0ODAKK21zZ2lkICJCPFJlY29yZGluZyBjaGFuZ2VzPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTo0ODAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tY29tbWl0PiBbSTxkaXJlY3Rvcnk+XSBbSTxwYXRjaC1uYW1lPl0gW0k8cGF0Y2gtZmlsZT5dIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NDkwCittc2dpZCAiIgorIkdlbmVyYXRlcyBhIHBhdGNoIGNvcnJlc3BvbmRpbmcgdG8gdGhlIGxvY2FsIGNoYW5nZXMgdGhhdCBhcmUgbm90IG1hbmFnZWQgYnkgIgorInRoZSBxdWlsdCBwYXRjaCBzeXN0ZW0gYW5kIGludGVncmF0ZXMgaXQgaW4gdGhlIHBhdGNoIHN5c3RlbSB1bmRlciB0aGUgbmFtZSAiCisiSTxwYXRjaC1uYW1lPi4gSWYgdGhlIG5hbWUgaXMgbWlzc2luZywgaXQgd2lsbCBiZSBhc2tlZCBpbnRlcmFjdGl2ZWx5LiBJZiAiCisiSTxwYXRjaC1maWxlPiBpcyBnaXZlbiwgaXQgaXMgdXNlZCBhcyB0aGUgcGF0Y2ggY29ycmVzcG9uZGluZyB0byB0aGUgbG9jYWwgIgorImNoYW5nZXMgdG8gaW50ZWdyYXRlLiBUaGlzIGlzIG1haW5seSB1c2VmdWwgYWZ0ZXIgYSBidWlsZCBmYWlsdXJlIHRoYXQgIgorInByZS1nZW5lcmF0ZWQgdGhpcyBmaWxlLiBPbmNlIGludGVncmF0ZWQsIGFuIGVkaXRvciBpcyBsYXVuY2hlZCBzbyB0aGF0IHlvdSAiCisiY2FuIGVkaXQgdGhlIG1ldGEtaW5mb3JtYXRpb24gaW4gdGhlIHBhdGNoIGhlYWRlci4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo0OTMgZHBrZy1zb3VyY2UuMTo1NjcgZHBrZy1zb3VyY2UuMTo2MDYKK21zZ2lkICJCPEJ1aWxkIG9wdGlvbnM+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjQ5MworIywgbm8td3JhcAorbXNnaWQgIkI8LS1hbGxvdy12ZXJzaW9uLW9mLXF1aWx0LWRiPT5JPHZlcnNpb24+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTAxCittc2dpZCAiIgorIkFsbG93IEI8ZHBrZy1zb3VyY2U+IHRvIGJ1aWxkIHRoZSBzb3VyY2UgcGFja2FnZSBpZiB0aGUgdmVyc2lvbiBvZiB0aGUgcXVpbHQgIgorIm1ldGFkYXRhIGlzIHRoZSBvbmUgc3BlY2lmaWVkLCBldmVuIGlmIEI8ZHBrZy1zb3VyY2U+IGRvZXNuJ3Qga25vdyBhYm91dCAiCisiaXQuIEVmZmVjdGl2ZWx5IHRoaXMgc2F5cyB0aGF0IHRoZSBnaXZlbiB2ZXJzaW9uIG9mIHRoZSBxdWlsdCBtZXRhZGF0YSBpcyAiCisiY29tcGF0aWJsZSB3aXRoIHRoZSB2ZXJzaW9uIDIgdGhhdCBCPGRwa2ctc291cmNlPiBjdXJyZW50bHkgc3VwcG9ydHMuIFRoZSAiCisidmVyc2lvbiBvZiB0aGUgcXVpbHQgbWV0YWRhdGEgaXMgc3RvcmVkIGluIEI8LnBjLy52ZXJzaW9uPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NTAxCisjLCBuby13cmFwCittc2dpZCAiQjwtLWluY2x1ZGUtcmVtb3ZhbD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1MDUKK21zZ2lkICIiCisiRG8gbm90IGlnbm9yZSByZW1vdmVkIGZpbGVzIGFuZCBpbmNsdWRlIHRoZW0gaW4gdGhlIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkICIKKyJwYXRjaC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NTA1CisjLCBuby13cmFwCittc2dpZCAiQjwtLWluY2x1ZGUtdGltZXN0YW1wPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjUwOAorbXNnaWQgIkluY2x1ZGUgdGltZXN0YW1wIGluIHRoZSBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlZCBwYXRjaC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NTA4CisjLCBuby13cmFwCittc2dpZCAiQjwtLWluY2x1ZGUtYmluYXJpZXM+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTEzCittc2dpZCAiIgorIkFkZCBhbGwgbW9kaWZpZWQgYmluYXJpZXMgaW4gdGhlIGRlYmlhbiB0YXJiYWxsLiBBbHNvIGFkZCB0aGVtIHRvICIKKyJCPGRlYmlhbi9zb3VyY2UvaW5jbHVkZS1iaW5hcmllcz46IHRoZXkgd2lsbCBiZSBhZGRlZCBieSBkZWZhdWx0IGluICIKKyJzdWJzZXF1ZW50IGJ1aWxkcyBhbmQgdGhpcyBvcHRpb24gaXMgdGh1cyBubyBtb3JlIG5lZWRlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NTEzCisjLCBuby13cmFwCittc2dpZCAiQjwtLW5vLXByZXBhcmF0aW9uPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjUxNworbXNnaWQgIiIKKyJEbyBub3QgdHJ5IHRvIHByZXBhcmUgdGhlIGJ1aWxkIHRyZWUgYnkgYXBwbHlpbmcgcGF0Y2hlcyB3aGljaCBhcmUgIgorImFwcGFyZW50bHkgdW5hcHBsaWVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTo1MTcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tc2luZ2xlLWRlYmlhbi1wYXRjaD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1MjgKK21zZ2lkICIiCisiVXNlIEI8ZGViaWFuL3BhdGNoZXMvZGViaWFuLWNoYW5nZXM+IGluc3RlYWQgb2YgIgorIkI8ZGViaWFuL3BhdGNoZXMvZGViaWFuLWNoYW5nZXMtPkk8dmVyc2lvbj4gZm9yIHRoZSBuYW1lIG9mIHRoZSBhdXRvbWF0aWMgIgorInBhdGNoIGdlbmVyYXRlZCBkdXJpbmcgYnVpbGQuIFRoaXMgb3B0aW9uIGlzIHBhcnRpY3VsYXJseSB1c2VmdWwgd2hlbiB0aGUgIgorInBhY2thZ2UgaXMgbWFpbnRhaW5lZCBpbiBhIFZDUyBhbmQgYSBwYXRjaCBzZXQgY2FuJ3QgcmVsaWFibHkgYmUgIgorImdlbmVyYXRlZC4gSW5zdGVhZCB0aGUgY3VycmVudCBkaWZmIHdpdGggdXBzdHJlYW0gc2hvdWxkIGJlIHN0b3JlZCBpbiBhICIKKyJzaW5nbGUgcGF0Y2guIFRoZSBvcHRpb24gd291bGQgYmUgcHV0IGluIEI8ZGViaWFuL3NvdXJjZS9sb2NhbC1vcHRpb25zPiBhbmQgIgorIndvdWxkIGJlIGFjY29tcGFuaWVkIGJ5IGEgQjxkZWJpYW4vc291cmNlL2xvY2FsLXBhdGNoLWhlYWRlcj4gZmlsZSAiCisiZXhwbGFpbmluZyBob3cgdGhlIERlYmlhbiBjaGFuZ2VzIGNhbiBiZSBiZXN0IHJldmlld2VkLCBmb3IgZXhhbXBsZSBpbiB0aGUgIgorIlZDUyB0aGF0IGlzIHVzZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjUyOAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1jcmVhdGUtZW1wdHktb3JpZz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1MzQKK21zZ2lkICIiCisiQXV0b21hdGljYWxseSBjcmVhdGUgdGhlIG1haW4gb3JpZ2luYWwgdGFyYmFsbCBhcyBlbXB0eSBpZiBpdCdzIG1pc3NpbmcgYW5kICIKKyJpZiB0aGVyZSBhcmUgc3VwcGxlbWVudGFyeSBvcmlnaW5hbCB0YXJiYWxscy4gVGhpcyBvcHRpb24gaXMgbWVhbnQgdG8gYmUgIgorInVzZWQgd2hlbiB0aGUgc291cmNlIHBhY2thZ2UgaXMganVzdCBhIGJ1bmRsZSBvZiBtdWx0aXBsZSB1cHN0cmVhbSBzb2Z0d2FyZSAiCisiYW5kIHdoZXJlIHRoZXJlJ3Mgbm8gXCJtYWluXCIgc29mdHdhcmUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjUzNAorIywgbm8td3JhcAorbXNnaWQgIkI8LS11bmFwcGx5LXBhdGNoZXM+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTQxCittc2dpZCAiIgorIlVuYXBwbHkgdGhlIHBhdGNoZXMgaW4gdGhlIEI8LS1hZnRlci1idWlsZD4gaG9vay4gWW91IHVzdWFsbHkgZG9uJ3QgbmVlZCAiCisidGhpcyBvcHRpb24gYXMgZHBrZy1zb3VyY2Ugd2lsbCBhdXRvbWF0aWNhbGx5IHVuYXBwbHkgdGhlIHBhdGNoZXMgaWYgaXQgZGlkICIKKyJhcHBseSB0aGVtIGR1cmluZyBCPC0tYmVmb3JlLWJ1aWxkPi4gVGhpcyBvcHRpb24gaXMgb25seSBhbGxvd2VkIGluICIKKyJCPGRlYmlhbi9zb3VyY2UvbG9jYWwtb3B0aW9ucz4gc28gdGhhdCBhbGwgZ2VuZXJhdGVkIHNvdXJjZSBwYWNrYWdlcyBoYXZlICIKKyJ0aGUgc2FtZSBiZWhhdmlvciBieSBkZWZhdWx0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjU0OAorbXNnaWQgIiIKKyJUaGUgcHJvY2VzcyBmYWlscyBpZiBhbiBhdXRvbWF0aWMgcGF0Y2ggaGFzIGJlZW4gZ2VuZXJhdGVkLiBUaGlzIG9wdGlvbiBjYW4gIgorImJlIHVzZWQgdG8gZW5zdXJlIHRoYXQgYWxsIGNoYW5nZXMgd2VyZSBwcm9wZXJseSByZWNvcmRlZCBpbiBzZXBhcmF0ZSBxdWlsdCAiCisicGF0Y2hlcyBwcmlvciB0byB0aGUgc291cmNlIHBhY2thZ2UgYnVpbGQuIFRoaXMgb3B0aW9uIGlzIG5vdCBhbGxvd2VkIGluICIKKyJCPGRlYmlhbi9zb3VyY2Uvb3B0aW9ucz4gYnV0IGNhbiBiZSB1c2VkIGluIEI8ZGViaWFuL3NvdXJjZS9sb2NhbC1vcHRpb25zPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NTQ4CisjLCBuby13cmFwCittc2dpZCAiQjwtLWF1dG8tY29tbWl0PiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjU1MgorbXNnaWQgIiIKKyJUaGUgcHJvY2VzcyBkb2Vzbid0IGZhaWwgaWYgYW4gYXV0b21hdGljIHBhdGNoIGhhcyBiZWVuIGdlbmVyYXRlZCwgaW5zdGVhZCAiCisiaXQncyBpbW1lZGlhdGVseSByZWNvcmRlZCBpbiB0aGUgcXVpbHQgc2VyaWVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjU1NQorbXNnaWQgIkI8RXh0cmFjdCBvcHRpb25zPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjU1OAorbXNnaWQgIlNraXBzIGV4dHJhY3Rpb24gb2YgdGhlIGRlYmlhbiB0YXJiYWxsIG9uIHRvcCBvZiB0aGUgdXBzdHJlYW0gc291cmNlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NTU4CisjLCBuby13cmFwCittc2dpZCAiQjwtLXNraXAtcGF0Y2hlcz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1NjEKK21zZ2lkICJEbyBub3QgYXBwbHkgcGF0Y2hlcyBhdCB0aGUgZW5kIG9mIHRoZSBleHRyYWN0aW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo1NjIKKyMsIG5vLXdyYXAKK21zZ2lkICJGb3JtYXQ6IDMuMCAoY3VzdG9tKSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjU2NQorbXNnaWQgIiIKKyJUaGlzIGZvcm1hdCBpcyBzcGVjaWFsLiBJdCBkb2Vzbid0IHJlcHJlc2VudCBhIHJlYWwgc291cmNlIHBhY2thZ2UgZm9ybWF0ICIKKyJidXQgY2FuIGJlIHVzZWQgdG8gY3JlYXRlIHNvdXJjZSBwYWNrYWdlcyB3aXRoIGFyYml0cmFyeSBmaWxlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1NzEKK21zZ2lkICIiCisiQWxsIG5vbi1vcHRpb24gYXJndW1lbnRzIGFyZSB0YWtlbiBhcyBmaWxlcyB0byBpbnRlZ3JhdGUgaW4gdGhlIGdlbmVyYXRlZCAiCisic291cmNlIHBhY2thZ2UuIFRoZXkgbXVzdCBleGlzdCBhbmQgYXJlIHByZWZlcmFibHkgaW4gdGhlIGN1cnJlbnQgIgorImRpcmVjdG9yeS4gQXQgbGVhc3Qgb25lIGZpbGUgbXVzdCBiZSBnaXZlbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NTcxCisjLCBuby13cmFwCittc2dpZCAiQjwtLXRhcmdldC1mb3JtYXQ9Pkk8dmFsdWU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTc2Cittc2dpZCAiIgorIkI8UmVxdWlyZWQ+LiBEZWZpbmVzIHRoZSByZWFsIGZvcm1hdCBvZiB0aGUgZ2VuZXJhdGVkIHNvdXJjZSBwYWNrYWdlLiAgVGhlICIKKyJnZW5lcmF0ZWQgLmRzYyBmaWxlIHdpbGwgY29udGFpbiB0aGlzIHZhbHVlIGluIGl0cyBJPEZvcm1hdD4gZmllbGQgYW5kIG5vdCAiCisiXCIzLjAgKGN1c3RvbSlcIi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6NTc3CisjLCBuby13cmFwCittc2dpZCAiRm9ybWF0OiAzLjAgKGdpdCkiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1NzkKK21zZ2lkICJUaGlzIGZvcm1hdCBpcyBleHBlcmltZW50YWwuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTg0Cittc2dpZCAiIgorIkEgc291cmNlIHBhY2thZ2UgaW4gdGhpcyBmb3JtYXQgY29uc2lzdHMgb2YgYSBzaW5nbGUgYnVuZGxlIG9mIGEgZ2l0ICIKKyJyZXBvc2l0b3J5IEI8LmdpdD4gdG8gaG9sZCB0aGUgc291cmNlIG9mIGEgcGFja2FnZS4gIFRoZXJlIG1heSBhbHNvIGJlIGEgIgorIkI8LmdpdHNoYWxsb3c+IGZpbGUgbGlzdGluZyByZXZpc2lvbnMgZm9yIGEgc2hhbGxvdyBnaXQgY2xvbmUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTkwCittc2dpZCAiIgorIlRoZSBidW5kbGUgaXMgY2xvbmVkIGFzIGEgZ2l0IHJlcG9zaXRvcnkgdG8gdGhlIHRhcmdldCBkaXJlY3RvcnkuICBJZiB0aGVyZSAiCisiaXMgYSBnaXRzaGFsbG93IGZpbGUsIGl0IGlzIGluc3RhbGxlZCBhcyBgLmdpdC9zaGFsbG93YCBpbnNpZGUgdGhlIGNsb25lZCAiCisiZ2l0IHJlcG9zaXRvcnkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTk1Cittc2dpZCAiIgorIk5vdGUgdGhhdCBieSBkZWZhdWx0IHRoZSBuZXcgcmVwb3NpdG9yeSB3aWxsIGhhdmUgdGhlIHNhbWUgYnJhbmNoIGNoZWNrZWQgIgorIm91dCB0aGF0IHdhcyBjaGVja2VkIG91dCBpbiB0aGUgb3JpZ2luYWwgc291cmNlLiAoVHlwaWNhbGx5IFwibWFzdGVyXCIsIGJ1dCAiCisiaXQgY291bGQgYmUgYW55dGhpbmcuKSBBbnkgb3RoZXIgYnJhbmNoZXMgd2lsbCBiZSBhdmFpbGFibGUgdW5kZXIgIgorImByZW1vdGVzL29yaWdpbi9gLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjYwMCBkcGtnLXNvdXJjZS4xOjYzMworbXNnaWQgIiIKKyJCZWZvcmUgZ29pbmcgYW55IGZ1cnRoZXIsIHNvbWUgY2hlY2tzIGFyZSBkb25lIHRvIGVuc3VyZSB0aGF0IHdlIGRvbid0IGhhdmUgIgorImFueSBub24taWdub3JlZCB1bmNvbW1pdHRlZCBjaGFuZ2VzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjYwNAorbXNnaWQgIiIKKyJCPGdpdC1idW5kbGU+KDEpIGlzIHVzZWQgdG8gZ2VuZXJhdGUgYSBidW5kbGUgb2YgdGhlIGdpdCByZXBvc2l0b3J5LiAgQnkgIgorImRlZmF1bHQsIGFsbCBicmFuY2hlcyBhbmQgdGFncyBpbiB0aGUgcmVwb3NpdG9yeSBhcmUgaW5jbHVkZWQgaW4gdGhlIGJ1bmRsZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NjA2CisjLCBuby13cmFwCittc2dpZCAiQjwtLWdpdC1yZWY9Pkk8cmVmPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjYxNgorbXNnaWQgIiIKKyJBbGxvd3Mgc3BlY2lmeWluZyBhIGdpdCByZWYgdG8gaW5jbHVkZSBpbiB0aGUgZ2l0IGJ1bmRsZS4gVXNlIGRpc2FibGVzIHRoZSAiCisiZGVmYXVsdCBiZWhhdmlvciBvZiBpbmNsdWRpbmcgYWxsIGJyYW5jaGVzIGFuZCB0YWdzLiBNYXkgYmUgc3BlY2lmaWVkICIKKyJtdWx0aXBsZSB0aW1lcy4gVGhlIEk8cmVmPiBjYW4gYmUgdGhlIG5hbWUgb2YgYSBicmFuY2ggb3IgdGFnIHRvIGluY2x1ZGUuIEl0ICIKKyJtYXkgYWxzbyBiZSBhbnkgcGFyYW1ldGVyIHRoYXQgY2FuIGJlIHBhc3NlZCB0byBCPGdpdC1yZXYtbGlzdD4oMSkuIEZvciAiCisiZXhhbXBsZSwgdG8gaW5jbHVkZSBvbmx5IHRoZSBtYXN0ZXIgYnJhbmNoLCB1c2UgLS1naXQtcmVmPW1hc3Rlci4gVG8gaW5jbHVkZSAiCisiYWxsIHRhZ3MgYW5kIGJyYW5jaGVzLCBleGNlcHQgZm9yIHRoZSBwcml2YXRlIGJyYW5jaCwgdXNlIC0tZ2l0LXJlZj0tLWFsbCAiCisiLS1naXQtcmVmPV5wcml2YXRlIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjYxNgorIywgbm8td3JhcAorbXNnaWQgIkI8LS1naXQtZGVwdGg9Pkk8bnVtYmVyPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjYyMAorbXNnaWQgIiIKKyJDcmVhdGVzIGEgc2hhbGxvdyBjbG9uZSB3aXRoIGEgaGlzdG9yeSB0cnVuY2F0ZWQgdG8gdGhlIHNwZWNpZmllZCBudW1iZXIgb2YgIgorInJldmlzaW9ucy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6NjIwCisjLCBuby13cmFwCittc2dpZCAiRm9ybWF0OiAzLjAgKGJ6cikiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2MjMKK21zZ2lkICIiCisiVGhpcyBmb3JtYXQgaXMgZXhwZXJpbWVudGFsLiBJdCBnZW5lcmF0ZXMgYSBzaW5nbGUgdGFyYmFsbCBjb250YWluaW5nIHRoZSAiCisiYnpyIHJlcG9zaXRvcnkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NjI4Cittc2dpZCAiVGhlIHRhcmJhbGwgaXMgdW5wYWNrZWQgYW5kIHRoZW4gYnpyIGlzIHVzZWQgdG8gY2hlY2tvdXQgdGhlIGN1cnJlbnQgYnJhbmNoLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjYzNworbXNnaWQgIiIKKyJUaGVuIHRoZSBWQ1Mgc3BlY2lmaWMgcGFydCBvZiB0aGUgc291cmNlIGRpcmVjdG9yeSBpcyBjb3BpZWQgb3ZlciB0byBhICIKKyJ0ZW1wb3JhcnkgZGlyZWN0b3J5LiBCZWZvcmUgdGhpcyB0ZW1wb3JhcnkgZGlyZWN0b3J5IGlzIHBhY2tlZCBpbiBhIHRhcmJhbGwsICIKKyJ2YXJpb3VzIGNsZWFudXAgYXJlIGRvbmUgdG8gc2F2ZSBzcGFjZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctc291cmNlLjE6NjM3CisjLCBuby13cmFwCittc2dpZCAiV0FSTklOR1MgQU5EIEVSUk9SUyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo2MzgKKyMsIG5vLXdyYXAKK21zZ2lkICJubyBzb3VyY2UgZm9ybWF0IHNwZWNpZmllZCBpbiBkZWJpYW4vc291cmNlL2Zvcm1hdCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjY0NAorbXNnaWQgIiIKKyJUaGUgZmlsZSBCPGRlYmlhbi9zb3VyY2UvZm9ybWF0PiBzaG91bGQgYWx3YXlzIGV4aXN0IGFuZCBpbmRpY2F0ZSB0aGUgIgorImRlc2lyZWQgc291cmNlIGZvcm1hdC4gRm9yIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5LCBmb3JtYXQgXCIxLjBcIiBpcyAiCisiYXNzdW1lZCB3aGVuIHRoZSBmaWxlIGRvZXNuJ3QgZXhpc3QgYnV0IHlvdSBzaG91bGQgbm90IHJlbHkgb24gdGhpczogYXQgc29tZSAiCisicG9pbnQgaW4gdGhlIGZ1dHVyZSBkcGtnLXNvdXJjZSB3aWxsIGJlIG1vZGlmaWVkIHRvIGZhaWwgd2hlbiB0aGF0IGZpbGUgIgorImRvZXNuJ3QgZXhpc3QuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NjUwCittc2dpZCAiIgorIlRoZSByYXRpb25hbGUgaXMgdGhhdCBmb3JtYXQgXCIxLjBcIiBpcyBubyBsb25nZXIgdGhlIHJlY29tbWVuZGVkIGZvcm1hdCwgIgorInlvdSBzaG91bGQgdXN1YWxseSBwaWNrIG9uZSBvZiB0aGUgbmV3ZXIgZm9ybWF0cyAoXCIzLjAgKHF1aWx0KVwiLCBcIjMuMCAiCisiKG5hdGl2ZSlcIikgYnV0IEI8ZHBrZy1zb3VyY2U+IHdpbGwgbm90IGRvIHRoaXMgYXV0b21hdGljYWxseSBmb3IgeW91LiAgSWYgIgorInlvdSB3YW50IHRvIGNvbnRpbnVlIHVzaW5nIHRoZSBvbGQgZm9ybWF0LCB5b3Ugc2hvdWxkIGJlIGV4cGxpY2l0IGFib3V0IGl0ICIKKyJhbmQgcHV0IFwiMS4wXCIgaW4gQjxkZWJpYW4vc291cmNlL2Zvcm1hdD4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjY1MAorIywgbm8td3JhcAorbXNnaWQgInRoZSBkaWZmIG1vZGlmaWVzIHRoZSBmb2xsb3dpbmcgdXBzdHJlYW0gZmlsZXMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2NTcKK21zZ2lkICIiCisiV2hlbiB1c2luZyBzb3VyY2UgZm9ybWF0IFwiMS4wXCIgaXQgaXMgdXN1YWxseSBhIGJhZCBpZGVhIHRvIG1vZGlmeSB1cHN0cmVhbSAiCisiZmlsZXMgZGlyZWN0bHkgYXMgdGhlIGNoYW5nZXMgZW5kIHVwIGhpZGRlbiBhbmQgbW9zdGx5IHVuZG9jdW1lbnRlZCBpbiB0aGUgIgorIi5kaWZmLmd6IGZpbGUuIEluc3RlYWQgeW91IHNob3VsZCBzdG9yZSB5b3VyIGNoYW5nZXMgYXMgcGF0Y2hlcyBpbiB0aGUgIgorImRlYmlhbiBkaXJlY3RvcnkgYW5kIGFwcGx5IHRoZW0gYXQgYnVpbGQtdGltZS4gVG8gYXZvaWQgdGhpcyBjb21wbGV4aXR5IHlvdSAiCisiY2FuIGFsc28gdXNlIHRoZSBmb3JtYXQgXCIzLjAgKHF1aWx0KVwiIHRoYXQgb2ZmZXJzIHRoaXMgbmF0aXZlbHkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjY1NworIywgbm8td3JhcAorbXNnaWQgImNhbm5vdCByZXByZXNlbnQgY2hhbmdlIHRvIEk8ZmlsZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2NjMKK21zZ2lkICIiCisiQ2hhbmdlcyB0byB1cHN0cmVhbSBzb3VyY2VzIGFyZSB1c3VhbGx5IHN0b3JlZCB3aXRoIHBhdGNoIGZpbGVzLCBidXQgbm90IGFsbCAiCisiY2hhbmdlcyBjYW4gYmUgcmVwcmVzZW50ZWQgd2l0aCBwYXRjaGVzOiB0aGV5IGNhbiBvbmx5IGFsdGVyIHRoZSBjb250ZW50IG9mICIKKyJwbGFpbiB0ZXh0IGZpbGVzLiBJZiB5b3UgdHJ5IHJlcGxhY2luZyBhIGZpbGUgd2l0aCBzb21ldGhpbmcgb2YgYSBkaWZmZXJlbnQgIgorInR5cGUgKGZvciBleGFtcGxlIHJlcGxhY2luZyBhIHBsYWluIGZpbGUgd2l0aCBhIHN5bWxpbmsgb3IgYSBkaXJlY3RvcnkpLCB5b3UgIgorIndpbGwgZ2V0IHRoaXMgZXJyb3IgbWVzc2FnZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6NjYzCisjLCBuby13cmFwCittc2dpZCAibmV3bHkgY3JlYXRlZCBlbXB0eSBmaWxlIEk8ZmlsZT4gd2lsbCBub3QgYmUgcmVwcmVzZW50ZWQgaW4gZGlmZiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjY2NgorbXNnaWQgIiIKKyJFbXB0eSBmaWxlcyBjYW4ndCBiZSBjcmVhdGVkIHdpdGggcGF0Y2ggZmlsZXMuIFRodXMgdGhpcyBjaGFuZ2UgaXMgbm90ICIKKyJyZWNvcmRlZCBpbiB0aGUgc291cmNlIHBhY2thZ2UgYW5kIHlvdSBhcmUgd2FybmVkIGFib3V0IGl0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo2NjYKKyMsIG5vLXdyYXAKK21zZ2lkICJleGVjdXRhYmxlIG1vZGUgSTxwZXJtcz4gb2YgSTxmaWxlPiB3aWxsIG5vdCBiZSByZXByZXNlbnRlZCBpbiBkaWZmIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjY2NworIywgbm8td3JhcAorbXNnaWQgInNwZWNpYWwgbW9kZSBJPHBlcm1zPiBvZiBJPGZpbGU+IHdpbGwgbm90IGJlIHJlcHJlc2VudGVkIGluIGRpZmYiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2NzEKK21zZ2lkICIiCisiUGF0Y2ggZmlsZXMgZG8gbm90IHJlY29yZCBwZXJtaXNzaW9ucyBvZiBmaWxlcyBhbmQgdGh1cyBtb2RpZmllZCBwZXJtaXNzaW9ucyAiCisiYXJlIG5vdCBzdG9yZWQgaW4gdGhlIHNvdXJjZSBwYWNrYWdlLiBUaGlzIHdhcm5pbmcgcmVtaW5kcyB5b3Ugb2YgdGhhdCBmYWN0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1zb3VyY2UuMTo2NzEKKyMsIG5vLXdyYXAKK21zZ2lkICJGSUxFIEZPUk1BVFMiCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6NjcyCisjLCBuby13cmFwCittc2dpZCAiZGViaWFuL3NvdXJjZS9mb3JtYXQiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2NzYKK21zZ2lkICIiCisiVGhpcyBmaWxlIGNvbnRhaW5zIG9uIGEgc2luZ2xlIGxpbmUgdGhlIGZvcm1hdCB0aGF0IHNob3VsZCBiZSB1c2VkIHRvIGJ1aWxkICIKKyJ0aGUgc291cmNlIHBhY2thZ2UgKHBvc3NpYmxlIGZvcm1hdHMgYXJlIGRlc2NyaWJlZCBhYm92ZSkuIE5vIGxlYWRpbmcgb3IgIgorInRyYWlsaW5nIHNwYWNlcyBhcmUgYWxsb3dlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6Njc2CisjLCBuby13cmFwCittc2dpZCAiZGViaWFuL3NvdXJjZS9pbmNsdWRlLWJpbmFyaWVzIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NjgwCittc2dpZCAiIgorIlRoaXMgZmlsZSBjb250YWlucyBhIGxpc3Qgb2YgYmluYXJ5IGZpbGVzIChvbmUgcGVyIGxpbmUpIHRoYXQgc2hvdWxkIGJlICIKKyJpbmNsdWRlZCBpbiB0aGUgZGViaWFuIHRhcmJhbGwuIExlYWRpbmcgYW5kIHRyYWlsaW5nIHNwYWNlcyBhcmUgc3RyaXBwZWQuICAiCisiTGluZXMgc3RhcnRpbmcgd2l0aCBcIiNcIiBhcmUgY29tbWVudHMgYW5kIGFyZSBza2lwcGVkLiBFbXB0eSBsaW5lcyBhcmUgIgorImlnbm9yZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjY4MAorIywgbm8td3JhcAorbXNnaWQgImRlYmlhbi9zb3VyY2Uvb3B0aW9ucyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjY4NgorbXNnaWQgIiIKKyJUaGlzIGZpbGUgY29udGFpbnMgYSBsaXN0IG9mIGxvbmcgb3B0aW9ucyB0aGF0IHNob3VsZCBiZSBhdXRvbWF0aWNhbGx5ICIKKyJwcmVwZW5kZWQgdG8gdGhlIHNldCBvZiBjb21tYW5kIGxpbmUgb3B0aW9ucyBvZiBhIEI8ZHBrZy1zb3VyY2UgLWI+IG9yICIKKyJCPGRwa2ctc291cmNlIC0tcHJpbnQtZm9ybWF0PiBjYWxsLiBPcHRpb25zIGxpa2UgQjwtLWNvbXByZXNzaW9uPiBhbmQgIgorIkI8LS1jb21wcmVzc2lvbi1sZXZlbD4gYXJlIHdlbGwgc3VpdGVkIGZvciB0aGlzIGZpbGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NjkyCittc2dpZCAiIgorIkVhY2ggb3B0aW9uIHNob3VsZCBiZSBwdXQgb24gYSBzZXBhcmF0ZSBsaW5lLiBFbXB0eSBsaW5lcyBhbmQgbGluZXMgc3RhcnRpbmcgIgorIndpdGggXCIjXCIgYXJlIGlnbm9yZWQuIFRoZSBsZWFkaW5nIFwiLS1cIiBzaG91bGQgYmUgc3RyaXBwZWQgYW5kIHNob3J0ICIKKyJvcHRpb25zIGFyZSBub3QgYWxsb3dlZC4gT3B0aW9uYWwgc3BhY2VzIGFyZSBhbGxvd2VkIGFyb3VuZCB0aGUgXCI9XCIgc3ltYm9sICIKKyJhbmQgb3B0aW9uYWwgcXVvdGVzIGFyZSBhbGxvd2VkIGFyb3VuZCB0aGUgdmFsdWUuICBIZXJlJ3MgYW4gZXhhbXBsZSBvZiBzdWNoICIKKyJhIGZpbGU6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NzAwCisjLCBuby13cmFwCittc2dpZCAiIgorIiAgIyBsZXQgZHBrZy1zb3VyY2UgY3JlYXRlIGEgZGViaWFuLnRhci5iejIgd2l0aCBtYXhpbWFsIGNvbXByZXNzaW9uXG4iCisiICBjb21wcmVzc2lvbiA9IFwiYnppcDJcIlxuIgorIiAgY29tcHJlc3Npb24tbGV2ZWwgPSA5XG4iCisiICAjIHVzZSBkZWJpYW4vcGF0Y2hlcy9kZWJpYW4tY2hhbmdlcyBhcyBhdXRvbWF0aWMgcGF0Y2hcbiIKKyIgIHNpbmdsZS1kZWJpYW4tcGF0Y2hcbiIKKyIgICMgaWdub3JlIGNoYW5nZXMgb24gY29uZmlnLntzdWIsZ3Vlc3N9XG4iCisiICBleHRlbmQtZGlmZi1pZ25vcmUgPSBcIihefC8pKGNvbmZpZy5zdWJ8Y29uZmlnLmd1ZXNzKSRcIlxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NzAzCittc2dpZCAiIgorIk5vdGU6IEI8Zm9ybWF0PiBvcHRpb25zIGFyZSBub3QgYWNjZXB0ZWQgaW4gdGhpcyBmaWxlLCB5b3Ugc2hvdWxkIHVzZSAiCisiQjxkZWJpYW4vc291cmNlL2Zvcm1hdD4gaW5zdGVhZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6NzAzCisjLCBuby13cmFwCittc2dpZCAiZGViaWFuL3NvdXJjZS9sb2NhbC1vcHRpb25zIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NzA4Cittc2dpZCAiIgorIkV4YWN0bHkgbGlrZSBCPGRlYmlhbi9zb3VyY2Uvb3B0aW9ucz4gZXhjZXB0IHRoYXQgdGhlIGZpbGUgaXMgbm90IGluY2x1ZGVkICIKKyJpbiB0aGUgZ2VuZXJhdGVkIHNvdXJjZSBwYWNrYWdlLiBJdCBjYW4gYmUgdXNlZnVsIHRvIHN0b3JlIGEgcHJlZmVyZW5jZSB0aWVkICIKKyJ0byB0aGUgbWFpbnRhaW5lciBvciB0byB0aGUgVkNTIHJlcG9zaXRvcnkgd2hlcmUgdGhlIHNvdXJjZSBwYWNrYWdlIGlzICIKKyJtYWludGFpbmVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo3MDgKKyMsIG5vLXdyYXAKK21zZ2lkICJkZWJpYW4vc291cmNlL2xvY2FsLXBhdGNoLWhlYWRlciIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo3MDkKKyMsIG5vLXdyYXAKK21zZ2lkICJkZWJpYW4vc291cmNlL3BhdGNoLWhlYWRlciIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjcxMworbXNnaWQgIiIKKyJGcmVlIGZvcm0gdGV4dCB0aGF0IGlzIHB1dCBvbiB0b3Agb2YgdGhlIGF1dG9tYXRpYyBwYXRjaCBnZW5lcmF0ZWQgaW4gIgorImZvcm1hdHMgXCIyLjBcIiBvciBcIjMuMCAocXVpbHQpXCIuIEI8bG9jYWwtcGF0Y2gtaGVhZGVyPiBpcyBub3QgaW5jbHVkZWQgaW4gIgorInRoZSBnZW5lcmF0ZWQgc291cmNlIHBhY2thZ2Ugd2hpbGUgQjxwYXRjaC1oZWFkZXI+IGlzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo3MTMKKyMsIG5vLXdyYXAKK21zZ2lkICJkZWJpYW4vcGF0Y2hlcy9zZXJpZXMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo3MjIKK21zZ2lkICIiCisiVGhpcyBmaWxlIGxpc3RzIGFsbCBwYXRjaGVzIHRoYXQgaGF2ZSB0byBiZSBhcHBsaWVkIChpbiB0aGUgZ2l2ZW4gb3JkZXIpICBvbiAiCisidG9wIG9mIHRoZSB1cHN0cmVhbSBzb3VyY2UgcGFja2FnZS4gTGVhZGluZyBhbmQgdHJhaWxpbmcgc3BhY2VzIGFyZSAiCisic3RyaXBwZWQuIExpbmVzIHN0YXJ0aW5nIHdpdGggXCIjXCIgYXJlIGNvbW1lbnRzIGFuZCBhcmUgc2tpcHBlZC4gRW1wdHkgIgorImxpbmVzIGFyZSBpZ25vcmVkLiBSZW1haW5pbmcgbGluZXMgc3RhcnQgd2l0aCBhIHBhdGNoIGZpbGVuYW1lIChyZWxhdGl2ZSB0byAiCisidGhlIEI8ZGViaWFuL3BhdGNoZXMvPiBkaXJlY3RvcnkpIHVwIHRvIHRoZSBmaXJzdCBzcGFjZSBjaGFyYWN0ZXIgb3IgdGhlIGVuZCAiCisib2YgbGluZS4gT3B0aW9uYWwgcXVpbHQgb3B0aW9ucyBjYW4gZm9sbG93IHVwIHRvIHRoZSBlbmQgb2YgbGluZSBvciB0aGUgIgorImZpcnN0IFwiI1wiIHByZWNlZGVkIGJ5IG9uZSBvciBtb3JlIHNwYWNlcyAod2hpY2ggbWFya3MgdGhlIHN0YXJ0IG9mIGEgIgorImNvbW1lbnQgdXAgdG8gdGhlIGVuZCBvZiBsaW5lKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo3MjkKK21zZ2lkICJCPGRwa2ctZGViPigxKSwgQjxkcGtnPigxKSwgQjxkc2VsZWN0PigxKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo3MzYKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAwOC0yMDExIFJhcGhhXFxbOmVdbCBIZXJ0em9nIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLXNwbGl0LjE6MgorIywgbm8td3JhcAorbXNnaWQgImRwa2ctc3BsaXQiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjUKK21zZ2lkICJkcGtnLXNwbGl0IC0gRGViaWFuIHBhY2thZ2UgYXJjaGl2ZSBzcGxpdC9qb2luIHRvb2wiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjkKK21zZ2lkICJCPGRwa2ctc3BsaXQ+IFtJPG9wdGlvbj4uLi5dIEk8Y29tbWFuZD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjE1Cittc2dpZCAiIgorIkI8ZHBrZy1zcGxpdD4gc3BsaXRzIERlYmlhbiBiaW5hcnkgcGFja2FnZSBmaWxlcyBpbnRvIHNtYWxsZXIgcGFydHMgYW5kICIKKyJyZWFzc2VtYmxlcyB0aGVtIGFnYWluLCB0byBzdXBwb3J0IHRoZSBzdG9yYWdlIG9mIGxhcmdlIHBhY2thZ2UgZmlsZXMgb24gIgorInNtYWxsIG1lZGlhIHN1Y2ggYXMgZmxvcHB5IGRpc2tzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTkKK21zZ2lkICIiCisiSXQgY2FuIGJlIG9wZXJhdGVkIG1hbnVhbGx5IHVzaW5nIHRoZSBCPC0tc3BsaXQ+LCBCPC0tam9pbj4gYW5kIEI8LS1pbmZvPiAiCisib3B0aW9ucy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjI3Cittc2dpZCAiIgorIkl0IGFsc28gaGFzIGFuIGF1dG9tYXRpYyBtb2RlLCBpbnZva2VkIHVzaW5nIHRoZSBCPC0tYXV0bz4gb3B0aW9uLCB3aGVyZSBpdCAiCisibWFpbnRhaW5zIGEgcXVldWUgb2YgcGFydHMgc2VlbiBidXQgbm90IHlldCByZWFzc2VtYmxlZCBhbmQgcmVhc3NlbWJsZXMgYSAiCisicGFja2FnZSBmaWxlIHdoZW4gaXQgaGFzIHNlZW4gYWxsIG9mIGl0cyBwYXJ0cy4gVGhlIEI8LS1saXN0cT4gYW5kICIKKyJCPC0tZGlzY2FyZD4gb3B0aW9ucyBhbGxvdyB0aGUgbWFuYWdlbWVudCBvZiB0aGUgcXVldWUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMTozMAorbXNnaWQgIiIKKyJBbGwgc3BsaXR0aW5nLCBqb2luaW5nIGFuZCBxdWV1ZWluZyBvcGVyYXRpb25zIHByb2R1Y2UgaW5mb3JtYXRpdmUgbWVzc2FnZXMgIgorIm9uIHN0YW5kYXJkIG91dHB1dDsgdGhlc2UgbWF5IHNhZmVseSBiZSBpZ25vcmVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zcGxpdC4xOjMyCisjLCBuby13cmFwCittc2dpZCAiQjwtcz4sIEI8LS1zcGxpdD4gSTxjb21wbGV0ZS1hcmNoaXZlPiBbSTxwcmVmaXg+XSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MzUKK21zZ2lkICJTcGxpdHMgYSBzaW5nbGUgRGViaWFuIGJpbmFyeSBwYWNrYWdlIGludG8gc2V2ZXJhbCBwYXJ0cy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjQzCittc2dpZCAiIgorIlRoZSBwYXJ0cyBhcmUgbmFtZWQgSTxwcmVmaXg+QjwuPkk8Tj5CPG9mPkk8TT5CPC5kZWI+IHdoZXJlIEk8Tj4gaXMgdGhlIHBhcnQgIgorIm51bWJlciwgc3RhcnRpbmcgYXQgMSwgYW5kIEk8TT4gaXMgdGhlIHRvdGFsIG51bWJlciBvZiBwYXJ0cyAoYm90aCBpbiAiCisiZGVjaW1hbCkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMTo1MQorbXNnaWQgIiIKKyJJZiBubyBJPHByZWZpeD4gaXMgc3VwcGxpZWQgdGhlbiB0aGUgSTxjb21wbGV0ZS1hcmNoaXZlPiBmaWxlbmFtZSBpcyB0YWtlbiwgIgorImluY2x1ZGluZyBkaXJlY3RvcnksIHdpdGggYW55IHRyYWlsaW5nIEI8LmRlYj4gcmVtb3ZlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc3BsaXQuMTo1MQorIywgbm8td3JhcAorbXNnaWQgIkI8LWo+LCBCPC0tam9pbj4gSTxwYXJ0Pi4uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6NTUKK21zZ2lkICIiCisiSm9pbnMgdGhlIHBhcnRzIG9mIGEgcGFja2FnZSBmaWxlIHRvZ2V0aGVyLCByZWFzc2VtYmxpbmcgdGhlIG9yaWdpbmFsIGZpbGUgIgorImFzIGl0IHdhcyBiZWZvcmUgaXQgd2FzIHNwbGl0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6NTkKK21zZ2lkICIiCisiVGhlIHBhcnQgZmlsZXMgZ2l2ZW4gYXMgYXJndW1lbnRzIG11c3QgYmUgYWxsIHRoZSBwYXJ0cyBvZiBleGFjdGx5IHRoZSBzYW1lICIKKyJvcmlnaW5hbCBiaW5hcnkgZmlsZS4gRWFjaCBwYXJ0IG11c3Qgb2NjdXIgZXhhY3RseSBvbmNlIGluIHRoZSBhcmd1bWVudCAiCisibGlzdCwgdGhvdWdoIHRoZSBwYXJ0cyB0byBub3QgbmVlZCB0byBiZSBsaXN0ZWQgaW4gb3JkZXIuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMTo2NAorbXNnaWQgIiIKKyJUaGUgcGFydHMgbXVzdCBvZiBjb3Vyc2UgYWxsIGhhdmUgYmVlbiBnZW5lcmF0ZWQgd2l0aCB0aGUgc2FtZSBwYXJ0IHNpemUgIgorInNwZWNpZmllZCBhdCBzcGxpdCB0aW1lLCB3aGljaCBtZWFucyB0aGF0IHRoZXkgbXVzdCB1c3VhbGx5IGhhdmUgYmVlbiAiCisiZ2VuZXJhdGVkIGJ5IHRoZSBzYW1lIGludm9jYXRpb24gb2YgQjxkcGtnLXNwbGl0IC0tc3BsaXQ+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6NjYKK21zZ2lkICJUaGUgcGFydHMnIGZpbGVuYW1lcyBhcmUgbm90IHNpZ25pZmljYW50IGZvciB0aGUgcmVhc3NlbWJseSBwcm9jZXNzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6NjkKK21zZ2lkICIiCisiQnkgZGVmYXVsdCB0aGUgb3V0cHV0IGZpbGUgaXMgY2FsbGVkICIKKyJJPHBhY2thZ2U+QjxfPkk8dmVyc2lvbj5CPF8+STxhcmNoPkI8LmRlYj4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNwbGl0LjE6NzAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1JPiwgQjwtLWluZm8+IEk8cGFydD4uLi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjc1Cittc2dpZCAiIgorIlByaW50cyBpbmZvcm1hdGlvbiwgaW4gYSBodW1hbi1yZWFkYWJsZSBmb3JtYXQsIGFib3V0IHRoZSBwYXJ0IGZpbGUocykgICIKKyJzcGVjaWZpZWQuIEFyZ3VtZW50cyB3aGljaCBhcmUgbm90IGJpbmFyeSBwYWNrYWdlIHBhcnRzIHByb2R1Y2UgYSBtZXNzYWdlICIKKyJzYXlpbmcgc28gaW5zdGVhZCAoYnV0IHN0aWxsIG9uIHN0YW5kYXJkIG91dHB1dCkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNwbGl0LjE6NzUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1hPiwgQjwtLWF1dG8gLW8+IEk8Y29tcGxldGUtb3V0cHV0IHBhcnQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMTo3OAorbXNnaWQgIkF1dG9tYXRpY2FsbHkgcXVldWUgcGFydHMgYW5kIHJlYXNzZW1ibGUgYSBwYWNrYWdlIGlmIHBvc3NpYmxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6ODMKK21zZ2lkICIiCisiVGhlIEk8cGFydD4gc3BlY2lmaWVkIGlzIGV4YW1pbmVkLCBhbmQgY29tcGFyZWQgd2l0aCBvdGhlciBwYXJ0cyBvZiB0aGUgc2FtZSAiCisicGFja2FnZSAoaWYgYW55KSBpbiB0aGUgcXVldWUgb2YgcGFja2FnZXMgZmlsZSBwYXJ0cy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjkwCittc2dpZCAiIgorIklmIGFsbCBwYXJ0cyBvZiB0aGUgcGFja2FnZSBmaWxlIG9mIHdoaWNoIEk8cGFydD4gaXMgYSBwYXJ0IGFyZSBhdmFpbGFibGUgIgorInRoZW4gdGhlIHBhY2thZ2UgaXMgcmVhc3NlbWJsZWQgYW5kIHdyaXR0ZW4gdG8gSTxjb21wbGV0ZS1vdXRwdXQ+ICh3aGljaCAiCisic2hvdWxkIG5vdCB1c3VhbGx5IGFscmVhZHkgZXhpc3QsIHRob3VnaCB0aGlzIGlzIG5vdCBhbiBlcnJvcikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMTo5NgorbXNnaWQgIiIKKyJJZiBub3QgdGhlbiB0aGUgSTxwYXJ0PiBpcyBjb3BpZWQgaW50byB0aGUgcXVldWUgYW5kIEk8Y29tcGxldGUtb3V0cHV0PiBpcyAiCisibm90IGNyZWF0ZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxMDMKK21zZ2lkICIiCisiSWYgSTxwYXJ0PiBpcyBub3QgYSBzcGxpdCBiaW5hcnkgcGFja2FnZSBwYXJ0IHRoZW4gQjxkcGtnLXNwbGl0PiB3aWxsIGV4aXQgIgorIndpdGggc3RhdHVzIEI8MT47IGlmIHNvbWUgb3RoZXIgdHJvdWJsZSBvY2N1cnMgdGhlbiBpdCB3aWxsIGV4aXQgd2l0aCBzdGF0dXMgIgorIkI8Mj4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxMTAKK21zZ2lkICIiCisiVGhlIEI8LS1vdXRwdXQ+IG9yIEI8LW8+IG9wdGlvbiBtdXN0IGJlIHN1cHBsaWVkIHdoZW4gdXNpbmcgQjwtLWF1dG8+LiAgKElmICIKKyJ0aGlzIHdlcmUgbm90IG1hbmRhdG9yeSB0aGUgY2FsbGluZyBwcm9ncmFtIHdvdWxkIG5vdCBrbm93IHdoYXQgb3V0cHV0IGZpbGUgIgorInRvIGV4cGVjdC4pIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNwbGl0LjE6MTEwCisjLCBuby13cmFwCittc2dpZCAiQjwtbD4sIEI8LS1saXN0cT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjExMworbXNnaWQgIkxpc3RzIHRoZSBjb250ZW50cyBvZiB0aGUgcXVldWUgb2YgcGFja2FnZXMgdG8gYmUgcmVhc3NlbWJsZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxMTcKK21zZ2lkICIiCisiRm9yIGVhY2ggcGFja2FnZSBmaWxlIG9mIHdoaWNoIHBhcnRzIGFyZSBpbiB0aGUgcXVldWUgdGhlIG91dHB1dCBnaXZlcyB0aGUgIgorIm5hbWUgb2YgdGhlIHBhY2thZ2UsIHRoZSBwYXJ0cyBpbiB0aGUgcXVldWUsIGFuZCB0aGUgdG90YWwgbnVtYmVyIG9mIGJ5dGVzICIKKyJzdG9yZWQgaW4gdGhlIHF1ZXVlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zcGxpdC4xOjExNworIywgbm8td3JhcAorbXNnaWQgIkI8LWQ+LCBCPC0tZGlzY2FyZD4gW0k8cGFja2FnZT4uLi5dIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxMjEKK21zZ2lkICIiCisiVGhpcyBkaXNjYXJkcyBwYXJ0cyBmcm9tIHRoZSBxdWV1ZSBvZiB0aG9zZSB3YWl0aW5nIGZvciB0aGUgcmVtYWluaW5nIHBhcnRzICIKKyJvZiB0aGVpciBwYWNrYWdlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjEyNgorbXNnaWQgIiIKKyJJZiBubyBJPHBhY2thZ2U+IGlzIHNwZWNpZmllZCB0aGVuIHRoZSBxdWV1ZSBpcyBjbGVhcmVkIGNvbXBsZXRlbHk7IGlmIGFueSAiCisiYXJlIHNwZWNpZmllZCB0aGVuIG9ubHkgcGFydHMgb2YgdGhlIHJlbGV2YW50IHBhY2thZ2UocykgYXJlIGRlbGV0ZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNwbGl0LjE6MTM0CisjLCBuby13cmFwCittc2dpZCAiQjwtLWRlcG90ZGlyPkk8IGRpcmVjdG9yeT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjEzOQorbXNnaWQgIiIKKyJTcGVjaWZpZXMgYW4gYWx0ZXJuYXRpdmUgZGlyZWN0b3J5IGZvciB0aGUgcXVldWUgb2YgcGFydHMgYXdhaXRpbmcgYXV0b21hdGljICIKKyJyZWFzc2VtYmx5LiBUaGUgZGVmYXVsdCBpcyBCPC92YXIvbGliL2Rwa2c+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zcGxpdC4xOjEzOQorIywgbm8td3JhcAorbXNnaWQgIkI8LVM+LCBCPC0tcGFydHNpemU+IEk8a2liaWJ5dGVzPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTQzCittc2dpZCAiIgorIlNwZWNpZmllcyB0aGUgbWF4aW11bSBwYXJ0IHNpemUgd2hlbiBzcGxpdHRpbmcsIGluIGtpYmlieXRlcyAoMTAyNCAiCisiYnl0ZXMpLiBUaGUgZGVmYXVsdCBpcyA0NTAgS2lCLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zcGxpdC4xOjE0MworIywgbm8td3JhcAorbXNnaWQgIkI8LW8+LCBCPC0tb3V0cHV0PiBJPGNvbXBsZXRlLW91dHB1dD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjE0NgorbXNnaWQgIlNwZWNpZmllcyB0aGUgb3V0cHV0IGZpbGUgbmFtZSBmb3IgYSByZWFzc2VtYmx5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTUxCittc2dpZCAiIgorIlRoaXMgb3ZlcnJpZGVzIHRoZSBkZWZhdWx0IGZvciBhIG1hbnVhbCByZWFzc2VtYmx5IChCPC0tam9pbj4pICBhbmQgaXMgIgorIm1hbmRhdG9yeSBmb3IgYW4gYXV0b21hdGljIHF1ZXVlLW9yLXJlYXNzZW1ibGUgKEI8LS1hdXRvPikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNwbGl0LjE6MTUxCisjLCBuby13cmFwCittc2dpZCAiQjwtUT4sIEI8LS1ucHF1aWV0PiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTYyCittc2dpZCAiIgorIldoZW4gZG9pbmcgYXV0b21hdGljIHF1ZXVlLW9yLXJlYXNzZW1ibHkgQjxkcGtnLXNwbGl0PiB1c3VhbGx5IHByaW50cyBhICIKKyJtZXNzYWdlIGlmIGl0IGlzIGdpdmVuIGEgSTxwYXJ0PiB0aGF0IGlzIG5vdCBhIGJpbmFyeSBwYWNrYWdlIHBhcnQuIFRoaXMgIgorIm9wdGlvbiBzdXBwcmVzc2VzIHRoaXMgbWVzc2FnZSwgdG8gYWxsb3cgcHJvZ3JhbXMgc3VjaCBhcyBCPGRwa2c+IHRvIGNvcGUgIgorIndpdGggYm90aCBzcGxpdCBhbmQgdW5zcGxpdCBwYWNrYWdlcyB3aXRob3V0IHByb2R1Y2luZyBzcHVyaW91cyBtZXNzYWdlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc3BsaXQuMToxNjIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tbXNkb3M+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxNjcKK21zZ2lkICJGb3JjZXMgdGhlIG91dHB1dCBmaWxlbmFtZXMgZ2VuZXJhdGVkIGJ5IEI8LS1zcGxpdD4gdG8gYmUgbXNkb3MtY29tcGF0aWJsZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjE3MworbXNnaWQgIiIKKyJUaGlzIG1hbmdsZXMgdGhlIHByZWZpeCAtIGVpdGhlciB0aGUgZGVmYXVsdCBkZXJpdmVkIGZyb20gdGhlIGlucHV0IGZpbGVuYW1lICIKKyJvciB0aGUgb25lIHN1cHBsaWVkIGFzIGFuIGFyZ3VtZW50OiBhbHBoYW51bWVyaWNzIGFyZSBsb3dlcmNhc2VkLCBwbHVzIHNpZ25zICIKKyJhcmUgcmVwbGFjZWQgYnkgQjx4PidzIGFuZCBhbGwgb3RoZXIgY2hhcmFjdGVycyBhcmUgZGlzY2FyZGVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTc4Cittc2dpZCAiIgorIlRoZSByZXN1bHQgaXMgdGhlbiB0cnVuY2F0ZWQgYXMgbXVjaCBhcyBpcyBuZWNlc3NhcnksIGFuZCBmaWxlbmFtZXMgb2YgdGhlICIKKyJmb3JtIEk8cHJlZml4Tj5CPG9mPkk8TT5CPC5kZWI+IGFyZSBnZW5lcmF0ZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxODYKK21zZ2lkICIiCisiVGhlIHJlcXVlc3RlZCBzcGxpdCwgbWVyZ2UsIG9yIG90aGVyIGNvbW1hbmQgc3VjY2VlZGVkLiAgQjwtLWluZm8+IGNvbW1hbmRzICIKKyJjb3VudCBhcyBzdWNjZXNzZnVsIGV2ZW4gaWYgdGhlIGZpbGVzIGFyZSBub3QgYmluYXJ5IHBhY2thZ2UgcGFydHMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxOTMKK21zZ2lkICIiCisiT25seSBvY2N1cnMgd2l0aCBCPC0tYXV0bz4gYW5kIGluZGljYXRlcyB0aGF0IHRoZSBJPHBhcnQ+IGZpbGUgd2FzIG5vdCBhICIKKyJiaW5hcnkgcGFja2FnZSBwYXJ0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zcGxpdC4xOjE5MyBzdGFydC1zdG9wLWRhZW1vbi44OjI3NSB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6Mzc4CisjLCBuby13cmFwCittc2dpZCAiQjwyPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTk4Cittc2dpZCAiIgorIlNvbWUga2luZCBvZiB0cm91YmxlIGhhcHBlbmVkLCBzdWNoIGFzIGEgc3lzdGVtIGNhbGwgZmFpbHVyZSwgYSBmaWxlIHRoYXQgIgorImxvb2tlZCBsaWtlIGEgcGFja2FnZSBwYXJ0IGZpbGUgYnV0IHdhcyBjb3JydXB0ZWQsIGEgdXNhZ2UgZXJyb3Igb3Igc29tZSAiCisib3RoZXIgcHJvYmxlbS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjIwMgorbXNnaWQgIiIKKyJGdWxsIGRldGFpbHMgb2YgdGhlIHBhY2thZ2VzIGluIHRoZSBxdWV1ZSBhcmUgaW1wb3NzaWJsZSB0byBnZXQgd2l0aG91dCAiCisiZGlnZ2luZyBpbnRvIHRoZSBxdWV1ZSBkaXJlY3RvcnkgeW91cnNlbGYuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToyMDUKK21zZ2lkICIiCisiVGhlcmUgaXMgbm8gZWFzeSB3YXkgdG8gdGVzdCB3aGV0aGVyIGEgZmlsZSB0aGF0IG1heSBiZSBhIGJpbmFyeSBwYWNrYWdlICIKKyJwYXJ0IGlzIG9uZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc3BsaXQuMToyMDcKKyMsIG5vLXdyYXAKK21zZ2lkICJJPC92YXIvbGliL2Rwa2cvcGFydHM+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToyMTEKK21zZ2lkICJUaGUgZGVmYXVsdCBxdWV1ZSBkaXJlY3RvcnkgZm9yIHBhcnQgZmlsZXMgYXdhaXRpbmcgYXV0b21hdGljIHJlYXNzZW1ibHkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToyMTYKK21zZ2lkICIiCisiVGhlIGZpbGVuYW1lcyB1c2VkIGluIHRoaXMgZGlyZWN0b3J5IGFyZSBpbiBhIGZvcm1hdCBpbnRlcm5hbCB0byAiCisiQjxkcGtnLXNwbGl0PiBhbmQgYXJlIHVubGlrZWx5IHRvIGJlIHVzZWZ1bCB0byBvdGhlciBwcm9ncmFtcywgYW5kIGluIGFueSAiCisiY2FzZSB0aGUgZmlsZW5hbWUgZm9ybWF0IHNob3VsZCBub3QgYmUgcmVsaWVkIHVwb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToyMjIKK21zZ2lkICJCPGRlYj4oNSksIEI8ZGViLWNvbnRyb2w+KDUpLCBCPGRwa2ctZGViPigxKSwgQjxkcGtnPigxKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6MQorIywgbm8td3JhcAorbXNnaWQgImRwa2ctc3RhdG92ZXJyaWRlIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjEKKyMsIG5vLXdyYXAKK21zZ2lkICJEZWJpYW4gcHJvamVjdCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjQKK21zZ2lkICJkcGtnLXN0YXRvdmVycmlkZSAtIG92ZXJyaWRlIG93bmVyc2hpcCBhbmQgbW9kZSBvZiBmaWxlcyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjgKK21zZ2lkICJCPGRwa2ctc3RhdG92ZXJyaWRlPiBbSTxvcHRpb24+Li4uXSBJPGNvbW1hbmQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6MTgKK21zZ2lkICIiCisiYEI8c3RhdCBvdmVycmlkZXM+JyBhcmUgYSB3YXkgdG8gdGVsbCBCPGRwa2c+KDEpICB0byB1c2UgYSBkaWZmZXJlbnQgb3duZXIgIgorIm9yIG1vZGUgZm9yIGEgZmlsZSB3aGVuIGEgcGFja2FnZSBpcyBpbnN0YWxsZWQuIChub3RlOiBJIHVzZSB0aGUgd29yZCBgZmlsZScgIgorImhlcmUsIGJ1dCBpbiByZWFsaXR5IHRoaXMgY2FuIGJlIGFueSBmaWxlc3lzdGVtIG9iamVjdCB0aGF0IGRwa2cgaGFuZGxlcywgIgorImluY2x1ZGluZyBkaXJlY3RvcmllcywgZGV2aWNlcywgZXRjLikuIFRoaXMgY2FuIGJlIHVzZWQgdG8gZm9yY2UgcHJvZ3JhbXMgIgorInRoYXQgYXJlIG5vcm1hbGx5IHNldHVpZCB0byBiZSBpbnN0YWxsIHdpdGhvdXQgYSBzZXR1aWQgZmxhZywgb3Igb25seSAiCisiZXhlY3V0YWJsZSBieSBhIGNlcnRhaW4gZ3JvdXAuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6MjIKK21zZ2lkICIiCisiQjxkcGtnLXN0YXRvdmVycmlkZT4gaXMgYSB1dGlsaXR5IHRvIG1hbmFnZSB0aGUgbGlzdCBvZiBzdGF0IG92ZXJyaWRlcy4gSXQgIgorImhhcyB0aHJlZSBiYXNpYyBmdW5jdGlvbnM6IGFkZGluZywgcmVtb3ZpbmcgYW5kIGxpc3Rpbmcgb3ZlcnJpZGVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODoyNAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1hZGQ+STwgdXNlciBncm91cCBtb2RlIGZpbGU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6MzIKK21zZ2lkICIiCisiQWRkIGFuIG92ZXJyaWRlIGZvciBJPGZpbGU+LiBJPGZpbGU+IGRvZXMgbm90IG5lZWQgdG8gZXhpc3Qgd2hlbiB0aGlzICIKKyJjb21tYW5kIGlzIHVzZWQ7IHRoZSBvdmVycmlkZSB3aWxsIGJlIHN0b3JlZCBhbmQgdXNlZCBsYXRlci4gIFVzZXJzIGFuZCAiCisiZ3JvdXBzIGNhbiBiZSBzcGVjaWZpZWQgYnkgdGhlaXIgbmFtZSAoZm9yIGV4YW1wbGUgQjxyb290PiBvciBCPG5vYm9keT4pLCBvciAiCisiYnkgdGhlaXIgbnVtYmVyIGJ5IHByZXBlbmRpbmcgdGhlIG51bWJlciB3aXRoIGEgYEI8Iz4nIChmb3IgZXhhbXBsZSBCPCMwPiBvciAiCisiQjwjNjU1MzQ+KS4gVGhlIEk8bW9kZT4gbmVlZHMgdG8gYmUgc3BlY2lmaWVkIGluIG9jdGFsLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjM1Cittc2dpZCAiIgorIklmIC0tdXBkYXRlIGlzIHNwZWNpZmllZCBhbmQgSTxmaWxlPiBleGlzdHMsIGl0IGlzIGltbWVkaWF0ZWx5IHNldCB0byB0aGUgIgorIm5ldyBvd25lciBhbmQgbW9kZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODozOQorbXNnaWQgIiIKKyJSZW1vdmUgYW4gb3ZlcnJpZGUgZm9yIEk8ZmlsZT4sIHRoZSBzdGF0dXMgb2YgSTxmaWxlPiBpcyBsZWZ0IHVuY2hhbmdlZCBieSAiCisidGhpcyBjb21tYW5kLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODozOQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1saXN0PiBbSTxnbG9iLXBhdHRlcm4+XSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjQ0Cittc2dpZCAiIgorIkxpc3QgYWxsIG92ZXJyaWRlcy4gSWYgYSBnbG9iIHBhdHRlcm4gaXMgc3BlY2lmaWVkIHJlc3RyaWN0IHRoZSBvdXRwdXQgdG8gIgorIm92ZXJyaWRlcyB3aGljaCBtYXRjaCB0aGUgZ2xvYi4gSWYgdGhlcmUgYXJlIG5vIG92ZXJyaWRlcyBvciBub25lIG1hdGNoIHRoZSAiCisiZ2xvYiBCPGRwa2ctc3RhdG92ZXJyaWRlPiB3aWxsIGV4aXQgd2l0aCBhbiBleGl0Y29kZSBvZiAxLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjU2Cittc2dpZCAiIgorIkNoYW5nZSB0aGUgSTxkaXJlY3Rvcnk+IG9mIHRoZSBkcGtnIGRhdGFiYXNlIHdoZXJlIHRoZSBzdGF0b3ZlcnJpZGUgZmlsZSBpcyAiCisiYWxzbyBzdG9yZWQuIERlZmF1bHRzIHRvIEk8L3Zhci9saWIvZHBrZz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjU2IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMzYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tZm9yY2U+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6NjAKK21zZ2lkICIiCisiRm9yY2UgYW4gYWN0aW9uLCBldmVuIGlmIGEgc2FuaXR5IGNoZWNrIHdvdWxkIG90aGVyd2lzZSBwcm9oaWJpdCBpdC4gIFRoaXMgIgorImlzIG5lY2Vzc2FyeSB0byBvdmVycmlkZSBhbiBleGlzdGluZyBvdmVycmlkZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6NjAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tdXBkYXRlPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjY0Cittc2dpZCAiSW1tZWRpYXRlbHkgdHJ5IHRvIGNoYW5nZSB0aGUgZmlsZSB0byB0aGUgbmV3IG93bmVyIGFuZCBtb2RlIGlmIGl0IGV4aXN0cy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo2NworbXNnaWQgIkJlIGxlc3MgdmVyYm9zZSBhYm91dCB3aGF0IHdlIGRvLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo3NQorIywgbm8td3JhcAorbXNnaWQgIkk8L3Zhci9saWIvZHBrZy9zdGF0b3ZlcnJpZGU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6ODAKK21zZ2lkICIiCisiRmlsZSB3aGljaCBjb250YWlucyB0aGUgY3VycmVudCBsaXN0IG9mIHN0YXQgb3ZlcnJpZGVzIG9mIHRoZSBzeXN0ZW0uIEl0IGlzICIKKyJsb2NhdGVkIGluIHRoZSBkcGtnIGFkbWluaXN0cmF0aW9uIGRpcmVjdG9yeSwgYWxvbmcgd2l0aCBvdGhlciBmaWxlcyAiCisiaW1wb3J0YW50IHRvIGRwa2csIHN1Y2ggYXMgYHN0YXR1cycgb3IgYGF2YWlsYWJsZScuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6ODMKK21zZ2lkICIiCisiTm90ZTogQjxkcGtnLXN0YXRvdmVycmlkZT4gcHJlc2VydmVzIHRoZSBvbGQgY29weSBvZiB0aGlzIGZpbGUsIHdpdGggIgorImV4dGVuc2lvbiBcIi1vbGRcIiwgYmVmb3JlIHJlcGxhY2luZyBpdCB3aXRoIHRoZSBuZXcgb25lLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy10cmlnZ2VyLjE6MQorIywgbm8td3JhcAorbXNnaWQgImRwa2ctdHJpZ2dlciIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXRyaWdnZXIuMTo0Cittc2dpZCAiZHBrZy10cmlnZ2VyIC0gYSBwYWNrYWdlIHRyaWdnZXIgdXRpbGl0eSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXRyaWdnZXIuMTo4Cittc2dpZCAiQjxkcGtnLXRyaWdnZXI+IFtJPG9wdGlvbj4uLi5dIEk8dHJpZ2dlci1uYW1lPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXRyaWdnZXIuMToxMQorbXNnaWQgIkI8ZHBrZy10cmlnZ2VyPiBbSTxvcHRpb24+Li4uXSBJPGNvbW1hbmQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctdHJpZ2dlci4xOjE1Cittc2dpZCAiIgorIkI8ZHBrZy10cmlnZ2VyPiBpcyBhIHRvb2wgdG8gZXhwbGljaXRseSBhY3RpdmF0ZSB0cmlnZ2VycyBhbmQgY2hlY2sgZm9yIGl0cyAiCisic3VwcG9ydCBvbiB0aGUgcnVubmluZyBCPGRwa2c+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXRyaWdnZXIuMToyMQorbXNnaWQgIiIKKyJUaGlzIGNhbiBiZSB1c2VkIGJ5IG1haW50YWluZXIgc2NyaXB0cyBpbiBjb21wbGV4IGFuZCBjb25kaXRpb25hbCBzaXR1YXRpb25zICIKKyJ3aGVyZSB0aGUgZmlsZSB0cmlnZ2Vycywgb3IgdGhlIGRlY2xhcmF0aXZlIEI8YWN0aXZhdGU+IHRyaWdnZXJzIGNvbnRyb2wgIgorImZpbGUgZGlyZWN0aXZlLCBhcmUgaW5zdWZmaWNpZW50bHkgcmljaC4gSXQgY2FuIGFsc28gYmUgdXNlZCBmb3IgdGVzdGluZyBhbmQgIgorImJ5IHN5c3RlbSBhZG1pbmlzdHJhdG9ycyAoYnV0IG5vdGUgdGhhdCB0aGUgdHJpZ2dlcnMgd29uJ3QgYWN0dWFsbHkgYmUgcnVuICIKKyJieSBCPGRwa2ctdHJpZ2dlcj4pLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXRyaWdnZXIuMToyMworbXNnaWQgIlVucmVjb2duaXNlZCB0cmlnZ2VyIG5hbWUgc3ludGF4ZXMgYXJlIGFuIGVycm9yIGZvciBCPGRwa2ctdHJpZ2dlcj4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXRyaWdnZXIuMToyNQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1jaGVjay1zdXBwb3J0ZWQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctdHJpZ2dlci4xOjMxCittc2dpZCAiIgorIkNoZWNrIGlmIHRoZSBydW5uaW5nIEI8ZHBrZz4gc3VwcG9ydHMgdHJpZ2dlcnMgKHVzdWFsbHkgY2FsbGVkIGZyb20gYSAiCisicG9zdGluc3QpLiBXaWxsIGV4aXQgQjwwPiBpZiBhIHRyaWdnZXJzLWNhcGFibGUgQjxkcGtnPiBoYXMgcnVuLCBvciBCPDE+ICIKKyJ3aXRoIGFuIGVycm9yIG1lc3NhZ2UgdG8gc3RkZXJyIGlmIG5vdC4gTm9ybWFsbHksIGhvd2V2ZXIsIGl0IGlzIGJldHRlciBqdXN0ICIKKyJ0byBhY3RpdmF0ZSB0aGUgZGVzaXJlZCB0cmlnZ2VyIHdpdGggQjxkcGtnLXRyaWdnZXI+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy10cmlnZ2VyLjE6NDMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tYnktcGFja2FnZT0+STxwYWNrYWdlPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXRyaWdnZXIuMTo0OQorbXNnaWQgIiIKKyJPdmVycmlkZSB0cmlnZ2VyIGF3YWl0ZXIgKG5vcm1hbGx5IHNldCBieSBCPGRwa2c+IHRocm91Z2ggdGhlICIKKyJCPERQS0dfTUFJTlRTQ1JJUFRfUEFDS0FHRT4gZW52aXJvbm1lbnQgdmFyaWFibGUgb2YgdGhlIG1haW50YWluZXIgc2NyaXB0cywgIgorIm5hbWluZyB0aGUgcGFja2FnZSB0byB3aGljaCB0aGUgc2NyaXB0IGJlbG9uZ3MsIGFuZCB0aGlzIHdpbGwgYmUgdXNlZCBieSAiCisiZGVmYXVsdCkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXRyaWdnZXIuMTo0OQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1uby1hd2FpdD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy10cmlnZ2VyLjE6NTYKK21zZ2lkICIiCisiVGhpcyBvcHRpb24gYXJyYW5nZXMgdGhhdCB0aGUgY2FsbGluZyBwYWNrYWdlIFQgKGlmIGFueSkgbmVlZCBub3QgYXdhaXQgdGhlICIKKyJwcm9jZXNzaW5nIG9mIHRoaXMgdHJpZ2dlcjsgdGhlIGludGVyZXN0ZWQgcGFja2FnZShzKSBJLCB3aWxsIG5vdCBiZSBhZGRlZCAiCisidG8gVCdzIHRyaWdnZXIgcHJvY2Vzc2luZyBhd2FpdGVkIGxpc3QgYW5kIFQncyBzdGF0dXMgaXMgdW5jaGFuZ2VkLiAgVCBtYXkgIgorImJlIGNvbnNpZGVyZWQgaW5zdGFsbGVkIGV2ZW4gdGhvdWdoIEkgbWF5IG5vdCB5ZXQgaGF2ZSBwcm9jZXNzZWQgdGhlICIKKyJ0cmlnZ2VyLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy10cmlnZ2VyLjE6NTYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tbm8tYWN0PiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXRyaWdnZXIuMTo1OQorbXNnaWQgIkp1c3QgdGVzdCwgZG8gbm90IGFjdHVhbGx5IGNoYW5nZSBhbnl0aGluZy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy10cmlnZ2VyLjE6NjkKK21zZ2lkICJCPGRwa2c+KDEpLCBCPGRlYi10cmlnZ2Vycz4oNSksIEI8L3Vzci9zaGFyZS9kb2MvZHBrZy1kZXYvdHJpZ2dlcnMudHh0Lmd6Pi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctdmVuZG9yLjE6MQorIywgbm8td3JhcAorbXNnaWQgImRwa2ctdmVuZG9yIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctdmVuZG9yLjE6NAorbXNnaWQgImRwa2ctdmVuZG9yIC0gcXVlcmllcyBpbmZvcm1hdGlvbiBhYm91dCBkaXN0cmlidXRpb24gdmVuZG9ycyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXZlbmRvci4xOjgKK21zZ2lkICJCPGRwa2ctdmVuZG9yPiBbSTxvcHRpb24+Li4uXSBJPGNvbW1hbmQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctdmVuZG9yLjE6MTMKK21zZ2lkICIiCisiQjxkcGtnLXZlbmRvcj4gaXMgYSB0b29sIHRvIHF1ZXJ5IGluZm9ybWF0aW9uIGFib3V0IHZlbmRvcnMgbGlzdGVkIGluICIKKyJCPC9ldGMvZHBrZy9vcmlnaW5zPi4gQjwvZXRjL2Rwa2cvb3JpZ2lucy9kZWZhdWx0PiBjb250YWlucyBpbmZvcm1hdGlvbiAiCisiYWJvdXQgdGhlIGN1cnJlbnQgdmVuZG9yLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy12ZW5kb3IuMToxNQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1pcz5JPCB2ZW5kb3I+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctdmVuZG9yLjE6MTkKK21zZ2lkICIiCisiRXhpdHMgd2l0aCBCPDA+IGlmIHRoZSBjdXJyZW50IHZlbmRvciBpcyBJPHZlbmRvcj4uIE90aGVyd2lzZSBleGl0cyB3aXRoICIKKyJub24temVyby4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctdmVuZG9yLjE6MTkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tZGVyaXZlcy1mcm9tPkk8IHZlbmRvcj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy12ZW5kb3IuMToyNAorbXNnaWQgIiIKKyJFeGl0cyB3aXRoIEI8MD4gaWYgdGhlIGN1cnJlbnQgdmVuZG9yIGRpc3RyaWJ1dGlvbiBpcyBhIGRlcml2YXRpdmUgb2YgIgorIkk8dmVuZG9yPiwgb3RoZXJ3aXNlIGV4aXRzIHdpdGggbm9uLXplcm8uIEl0IHVzZXMgdGhlIFwiUGFyZW50XCIgZmllbGQgdG8gIgorImJyb3dzZSBhbGwgYW5jZXN0b3JzIG9mIHRoZSBjdXJyZW50IHZlbmRvci4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctdmVuZG9yLjE6MjQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tcXVlcnk+STwgZmllbGQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctdmVuZG9yLjE6MjgKK21zZ2lkICIiCisiUHJpbnQgb24gc3RhbmRhcmQgb3V0cHV0IHRoZSB2YWx1ZSBvZiB0aGUgdmVuZG9yLXNwZWNpZmljIEk8ZmllbGQ+IGZvciB0aGUgIgorImN1cnJlbnQgdmVuZG9yLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy12ZW5kb3IuMTozNgorIywgbm8td3JhcAorbXNnaWQgIkI8LS12ZW5kb3I+STwgdmVuZG9yPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXZlbmRvci4xOjQxCittc2dpZCAiIgorIkFzc3VtZXMgdGhlIGN1cnJlbnQgdmVuZG9yIGlzIEk8dmVuZG9yPiBpbnN0ZWFkIG9mIGRpc2NvdmVyaW5nIGl0IHdpdGggdGhlICIKKyJCPERFQl9WRU5ET1I+IGVudmlyb25tZW50IHZhcmlhYmxlIG9yIEI8L2V0Yy9kcGtnL29yaWdpbnMvZGVmYXVsdD4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXZlbmRvci4xOjQzCisjLCBuby13cmFwCittc2dpZCAiQjxERUJfVkVORE9SPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXZlbmRvci4xOjQ3Cittc2dpZCAiIgorIlRoaXMgc2V0dGluZyBkZWZpbmVzIHRoZSBjdXJyZW50IHZlbmRvci4gSWYgbm90IHNldCwgaXQgd2lsbCBkaXNjb3ZlciB0aGUgIgorImN1cnJlbnQgdmVuZG9yIGJ5IHJlYWRpbmcgQjwvZXRjL2Rwa2cvb3JpZ2lucy9kZWZhdWx0Pi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy12ZW5kb3IuMTo1MCB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDk4Cittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMDkgUmFwaGFcXFs6ZV1sIEhlcnR6b2ciCittc2dzdHIgIiIKKworIy4gdHlwZTogVEgKKyM6IGRzZWxlY3QuMToxCisjLCBuby13cmFwCittc2dpZCAiZHNlbGVjdCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NAorbXNnaWQgImRzZWxlY3QgLSBEZWJpYW4gcGFja2FnZSBtYW5hZ2VtZW50IGZyb250ZW5kIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo4Cittc2dpZCAiQjxkc2VsZWN0PiBbSTxvcHRpb24+Li4uXSBbSTxhY3Rpb24+XSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTcKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiQjxkc2VsZWN0PlxuIgorImlzIG9uZSBvZiB0aGUgcHJpbWFyeSB1c2VyIGludGVyZmFjZXMgZm9yIG1hbmFnaW5nIHBhY2thZ2VzIG9uIGEgRGViaWFuXG4iCisic3lzdGVtLiBBdCB0aGUgQjxkc2VsZWN0PiBtYWluIG1lbnUsIHRoZSBzeXN0ZW0gYWRtaW5pc3RyYXRvciBjYW46XG4iCisiIC0gVXBkYXRlIHRoZSBsaXN0IG9mIGF2YWlsYWJsZSBwYWNrYWdlIHZlcnNpb25zLFxuIgorIiAtIFZpZXcgdGhlIHN0YXR1cyBvZiBpbnN0YWxsZWQgYW5kIGF2YWlsYWJsZSBwYWNrYWdlcyxcbiIKKyIgLSBBbHRlciBwYWNrYWdlIHNlbGVjdGlvbnMgYW5kIG1hbmFnZSBkZXBlbmRlbmNpZXMsXG4iCisiIC0gSW5zdGFsbCBuZXcgcGFja2FnZXMgb3IgdXBncmFkZSB0byBuZXdlciB2ZXJzaW9ucy5cbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MjkKK21zZ2lkICIiCisiQjxkc2VsZWN0PiBvcGVyYXRlcyBhcyBhIGZyb250LWVuZCB0byBCPGRwa2c+KDEpLCB0aGUgbG93LWxldmVsIGRlYmlhbiAiCisicGFja2FnZSBoYW5kbGluZyB0b29sLiBJdCBmZWF0dXJlcyBhIGZ1bGwtc2NyZWVuIHBhY2thZ2Ugc2VsZWN0aW9ucyBtYW5hZ2VyICIKKyJ3aXRoIHBhY2thZ2UgZGVwZW5kcyBhbmQgY29uZmxpY3RzIHJlc29sdmVyLiBXaGVuIHJ1biB3aXRoIGFkbWluaXN0cmF0b3IgIgorInByaXZpbGVnZXMsIHBhY2thZ2VzIGNhbiBiZSBpbnN0YWxsZWQsIHVwZ3JhZGVkIGFuZCByZW1vdmVkLiBWYXJpb3VzIGFjY2VzcyAiCisibWV0aG9kcyBjYW4gYmUgY29uZmlndXJlZCB0byByZXRyaWV2ZSBhdmFpbGFibGUgcGFja2FnZSB2ZXJzaW9uIGluZm9ybWF0aW9uICIKKyJhbmQgaW5zdGFsbGFibGUgcGFja2FnZXMgZnJvbSBwYWNrYWdlIHJlcG9zaXRvcmllcy4gIERlcGVuZGluZyBvbiB0aGUgdXNlZCAiCisiYWNjZXNzIG1ldGhvZCwgdGhlc2UgcmVwb3NpdG9yaWVzIGNhbiBiZSBwdWJsaWMgYXJjaGl2ZSBzZXJ2ZXJzIG9uIHRoZSAiCisiaW50ZXJuZXQsIGxvY2FsIGFyY2hpdmUgc2VydmVycyBvciBjZHJvbXMuICBUaGUgcmVjb21tZW5kZWQgYWNjZXNzIG1ldGhvZCBpcyAiCisiSTxhcHQ+LCB3aGljaCBpcyBwcm92aWRlZCBieSB0aGUgcGFja2FnZSBCPGFwdD4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTozNQorbXNnaWQgIiIKKyJOb3JtYWxseSBCPGRzZWxlY3Q+IGlzIGludm9rZWQgd2l0aG91dCBwYXJhbWV0ZXJzLiBBbiBpbnRlcmFjdGl2ZSBtZW51IGlzICIKKyJwcmVzZW50ZWQsIG9mZmVyaW5nIHRoZSB1c2VyIGEgbGlzdCBvZiBhY3Rpb25zLiBJZiBhbiBhY3Rpb24gaXMgZ2l2ZW4gYXMgIgorImFyZ3VtZW50LCB0aGVuIHRoYXQgYWN0aW9uIGlzIHN0YXJ0ZWQgaW1tZWRpYXRlbHkuIFNldmVyYWwgY29tbWFuZCBsaW5lICIKKyJwYXJhbWV0ZXJzIGFyZSBzdGlsbCBhdmFpbGFibGUgdG8gbW9kaWZ5IHRoZSBydW5uaW5nIGJlaGF2aW91ciBvZiBCPGRzZWxlY3Q+ICIKKyJvciBzaG93IGFkZGl0aW9uYWwgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHByb2dyYW0uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0MworbXNnaWQgIiIKKyJBbGwgb3B0aW9ucyBjYW4gYmUgc3BlY2lmaWVkIGJvdGggb24gdGhlIGNvbW1hbmQgbGluZSBhbmQgaW4gdGhlIEI8ZHNlbGVjdD4gIgorImNvbmZpZ3VyYXRpb24gZmlsZSBJPC9ldGMvZHBrZy9kc2VsZWN0LmNmZz4gb3IgdGhlIGZpbGVzIG9uIHRoZSAiCisiY29uZmlndXJhdGlvbiBkaXJlY3RvcnkgSTwvZXRjL2Rwa2cvZHNlbGVjdC5jZmcuZC8+LiBFYWNoIGxpbmUgaW4gdGhlICIKKyJjb25maWd1cmF0aW9uIGZpbGUgaXMgZWl0aGVyIGFuIG9wdGlvbiAoZXhhY3RseSB0aGUgc2FtZSBhcyB0aGUgY29tbWFuZCBsaW5lICIKKyJvcHRpb24gYnV0IHdpdGhvdXQgbGVhZGluZyBkYXNoZXMpIG9yIGEgY29tbWVudCAoaWYgaXQgc3RhcnRzIHdpdGggYSBCPCM+KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjQ5Cittc2dpZCAiIgorIkNoYW5nZXMgdGhlIGRpcmVjdG9yeSB3aGVyZSB0aGUgZHBrZyBgSTxzdGF0dXM+JywgYEk8YXZhaWxhYmxlPicgYW5kIHNpbWlsYXIgIgorImZpbGVzIGFyZSBsb2NhdGVkLiBUaGlzIGRlZmF1bHRzIHRvIEk8L3Zhci9saWIvZHBrZz4gYW5kIG5vcm1hbGx5IHRoZXJlICIKKyJzaG91bGRuJ3QgYmUgYW55IG5lZWQgdG8gY2hhbmdlIGl0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHNlbGVjdC4xOjQ5CisjLCBuby13cmFwCittc2dpZCAiQjwtLWRlYnVnPkk8IGZpbGUgPnxJPCA+QjwtRD5JPGZpbGU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo1MgorbXNnaWQgIlR1cm4gb24gZGVidWdnaW5nLiBEZWJ1Z2dpbmcgaW5mb3JtYXRpb24gaXMgc2VudCB0byBJPGZpbGU+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHNlbGVjdC4xOjUyCisjLCBuby13cmFwCittc2dpZCAiQjwtLWV4cGVydD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjU2Cittc2dpZCAiVHVybnMgb24gZXhwZXJ0IG1vZGUsIGkuZS4gZG9lc24ndCBkaXNwbGF5IHBvc3NpYmx5IGFubm95aW5nIGhlbHAgbWVzc2FnZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkc2VsZWN0LjE6NTYKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiQjwtLWNvbG91cj58QjwtLWNvbG9yPiAiCisiSTxzY3JlZW5wYXJ0Oj5bSTxmb3JlZ3JvdW5kPl0sW0k8YmFja2dyb3VuZD5dW0k8OmF0dHI+W0k8K2F0dHIrLi4+XV0iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjYzCittc2dpZCAiIgorIkNvbmZpZ3VyZXMgc2NyZWVuIGNvbG9ycy4gVGhpcyB3b3JrcyBvbmx5IGlmIHlvdXIgZGlzcGxheSBzdXBwb3J0cyBjb2xvcnMuICAiCisiVGhpcyBvcHRpb24gbWF5IGJlIHVzZWQgbXVsdGlwbGUgdGltZXMgKGFuZCBpcyBiZXN0IHVzZWQgaW4gIgorIkk8ZHNlbGVjdC5jZmc+KS4gRWFjaCB1c2UgY2hhbmdlcyB0aGUgY29sb3IgKGFuZCBvcHRpb25hbGx5LCBvdGhlciAiCisiYXR0cmlidXRlcykgb2Ygb25lIHBhcnQgb2YgdGhlIHNjcmVlbi4gIFRoZSBwYXJ0cyBvZiB0aGUgc2NyZWVuIChmcm9tIHRvcCB0byAiCisiYm90dG9tKSBhcmU6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkc2VsZWN0LjE6NjQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHRpdGxlPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NjcKK21zZ2lkICJUaGUgc2NyZWVuIHRpdGxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHNlbGVjdC4xOjY3CisjLCBuby13cmFwCittc2dpZCAiQjxsaXN0aGVhZD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjcwCittc2dpZCAiVGhlIGhlYWRlciBsaW5lIGFib3ZlIHRoZSBsaXN0IG9mIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHNlbGVjdC4xOjcwCisjLCBuby13cmFwCittc2dpZCAiQjxsaXN0PiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NzMKK21zZ2lkICJUaGUgc2Nyb2xsaW5nIGxpc3Qgb2YgcGFja2FnZXMgKGFuZCBhbHNvIHNvbWUgaGVscCB0ZXh0KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRzZWxlY3QuMTo3MworIywgbm8td3JhcAorbXNnaWQgIkI8bGlzdHNlbD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjc2Cittc2dpZCAiVGhlIHNlbGVjdGVkIGl0ZW0gaW4gdGhlIGxpc3QuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkc2VsZWN0LjE6NzYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHBrZ3N0YXRlPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6ODAKK21zZ2lkICIiCisiSW4gdGhlIGxpc3Qgb2YgcGFja2FnZXMsIHRoZSB0ZXh0IGluZGljYXRpbmcgdGhlIGN1cnJlbnQgc3RhdGUgb2YgZWFjaCAiCisicGFja2FnZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRzZWxlY3QuMTo4MAorIywgbm8td3JhcAorbXNnaWQgIkI8cGtnc3RhdGVzZWw+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo4NAorbXNnaWQgIiIKKyJJbiB0aGUgbGlzdCBvZiBwYWNrYWdlcywgdGhlIHRleHQgaW5kaWNhdGluZyB0aGUgY3VycmVudCBzdGF0ZSBvZiB0aGUgIgorImN1cnJlbnRseSBzZWxlY3RlZCBwYWNrYWdlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHNlbGVjdC4xOjg0CisjLCBuby13cmFwCittc2dpZCAiQjxpbmZvaGVhZD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjg3Cittc2dpZCAiVGhlIGhlYWRlciBsaW5lIHRoYXQgZGlzcGxheXMgdGhlIHN0YXRlIG9mIHRoZSBjdXJyZW50bHkgc2VsZWN0ZWQgcGFja2FnZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRzZWxlY3QuMTo4NworIywgbm8td3JhcAorbXNnaWQgIkI8aW5mb2Rlc2M+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo5MAorbXNnaWQgIlRoZSBwYWNrYWdlJ3Mgc2hvcnQgZGVzY3JpcHRpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkc2VsZWN0LjE6OTAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGluZm8+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo5MworbXNnaWQgIlVzZWQgdG8gZGlzcGxheSBwYWNrYWdlIGluZm8gc3VjaCBhcyB0aGUgcGFja2FnZSdzIGRlc2NyaXB0aW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHNlbGVjdC4xOjkzCisjLCBuby13cmFwCittc2dpZCAiQjxpbmZvZm9vdD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjk2Cittc2dpZCAiVGhlIGxhc3QgbGluZSBvZiB0aGUgc2NyZWVuIHdoZW4gc2VsZWN0aW5nIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHNlbGVjdC4xOjk2CisjLCBuby13cmFwCittc2dpZCAiQjxxdWVyeT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjk5Cittc2dpZCAiVXNlZCB0byBkaXNwbGF5IHF1ZXJ5IGxpbmVzIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkc2VsZWN0LjE6OTkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGhlbHBzY3JlZW4+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxMDIKK21zZ2lkICJDb2xvciBvZiBoZWxwIHNjcmVlbnMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxMDcKK21zZ2lkICIiCisiQWZ0ZXIgdGhlIHBhcnQgb2YgdGhlIHNjcmVlbiBjb21lcyBhIGNvbG9uIGFuZCB0aGUgY29sb3Igc3BlY2lmaWNhdGlvbi4gWW91ICIKKyJjYW4gc3BlY2lmeSBlaXRoZXIgdGhlIGZvcmVncm91bmQgY29sb3IsIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLCBvciBib3RoLCAiCisib3ZlcnJpZGluZyB0aGUgY29tcGlsZWQtaW4gY29sb3JzLiBVc2Ugc3RhbmRhcmQgY3Vyc2VzIGNvbG9yIG5hbWVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTEzCittc2dpZCAiIgorIk9wdGlvbmFsbHksIGFmdGVyIHRoZSBjb2xvciBzcGVjaWZpY2F0aW9uIGlzIGFub3RoZXIgY29sb24sIGFuZCBhbiBhdHRyaWJ1dGUgIgorInNwZWNpZmljYXRpb24uIFRoaXMgaXMgYSBsaXN0IG9mIG9uZSBvciBtb3JlIGF0dHJpYnV0ZXMsIHNlcGFyYXRlZCBieSBwbHVzICIKKyIoXCIrXCIpIGNoYXJhY3RlcnMuIEF2YWlsYWJsZSBhdHRyaWJ1dGVzIGluY2x1ZGUgKG5vdCBhbGwgb2YgdGhlc2Ugd2lsbCB3b3JrICIKKyJvbiBhbGwgdGVybWluYWxzKTogbm9ybWFsLCBzdGFuZG91dCwgdW5kZXJsaW5lLCByZXZlcnNlLCBibGluaywgYnJpZ2h0LCBkaW0sICIKKyJib2xkIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxMTYKK21zZ2lkICJQcmludCBhIGJyaWVmIGhlbHAgdGV4dCBhbmQgZXhpdCBzdWNjZXNzZnVsbHkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxMTkKK21zZ2lkICJQcmludCB2ZXJzaW9uIGluZm9ybWF0aW9uIGFuZCBleGl0IHN1Y2Nlc3NmdWxseS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjEyNgorbXNnaWQgIiIKKyJXaGVuIEI8ZHNlbGVjdD4gaXMgc3RhcnRlZCBpdCBjYW4gcGVyZm9ybSB0aGUgZm9sbG93aW5nIGFjdGlvbnMsIGVpdGhlciAiCisiZGlyZWN0bHkgaWYgaXQgd2FzIHNwZWNpZmllZCBvbiB0aGUgY29tbWFuZCBsaW5lIG9yIGJ5IHByb21wdGluZyB0aGUgdXNlciAiCisid2l0aCBhIG1lbnUgb2YgYXZhaWxhYmxlIGFjdGlvbnMgaWYgcnVubmluZyBpbnRlcmFjdGl2ZWx5OiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHNlbGVjdC4xOjEyNgorIywgbm8td3JhcAorbXNnaWQgImFjY2VzcyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTI4Cittc2dpZCAiQ2hvb3NlIGFuZCBjb25maWd1cmUgYW4gYWNjZXNzIG1ldGhvZCB0byBhY2Nlc3MgcGFja2FnZSByZXBvc2l0b3JpZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxMzQKK21zZ2lkICIiCisiQnkgZGVmYXVsdCwgQjxkc2VsZWN0PiBwcm92aWRlcyBzZXZlcmFsIG1ldGhvZHMgc3VjaCBhcyBJPGNkcm9tPiwgIgorIkk8bXVsdGlfY2Q+LCBJPG5mcz4sIEk8bXVsdGlfbmZzPiwgSTxoYXJkZGlzaz4sIEk8bW91bnRlZD4sIEk8bXVsdGlfbW91bnQ+LCAiCisiSTxmbG9wcHk+IG9yIEk8ZnRwPiwgYnV0IG90aGVyIHBhY2thZ2VzIG1heSBwcm92aWRlIGFkZGl0aW9uYWwgbWV0aG9kcywgIgorImVnLiB0aGUgSTxhcHQ+IGFjY2VzcyBtZXRob2QgcHJvdmlkZWQgYnkgdGhlIEI8YXB0PiBwYWNrYWdlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTM2Cittc2dpZCAiVGhlIHVzZSBvZiB0aGUgSTxhcHQ+IGFjY2VzcyBtZXRob2QgaXMgc3Ryb25nbHkgcmVjb21tZW5kZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkc2VsZWN0LjE6MTM3CisjLCBuby13cmFwCittc2dpZCAidXBkYXRlIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxMzkKK21zZ2lkICJSZWZyZXNoIHRoZSBhdmFpbGFibGUgcGFja2FnZXMgZGF0YWJhc2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxNDYKK21zZ2lkICIiCisiUmV0cmlldmVzIGEgbGlzdCBvZiBhdmFpbGFibGUgcGFja2FnZSB2ZXJzaW9ucyBmcm9tIHRoZSBwYWNrYWdlIHJlcG9zaXRvcnksICIKKyJjb25maWd1cmVkIGZvciB0aGUgY3VycmVudCBhY2Nlc3MgbWV0aG9kLCBhbmQgdXBkYXRlIHRoZSBkcGtnIGRhdGFiYXNlLiBUaGUgIgorInBhY2thZ2UgbGlzdHMgYXJlIGNvbW1vbmx5IHByb3ZpZGVkIGJ5IHRoZSByZXBvc2l0b3J5IGFzIGZpbGVzIG5hbWVkICIKKyJJPFBhY2thZ2VzPiBvciBJPFBhY2thZ2VzLmd6Pi4gIFRoZXNlIGZpbGVzIGNhbiBiZSBnZW5lcmF0ZWQgYnkgcmVwb3NpdG9yeSAiCisibWFpbnRhaW5lcnMsIHVzaW5nIHRoZSBwcm9ncmFtIEI8ZHBrZy1zY2FucGFja2FnZXM+KDEpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTQ5Cittc2dpZCAiIgorIkRldGFpbHMgb2YgdGhlIHVwZGF0ZSBhY3Rpb24gZGVwZW5kIG9uIHRoZSBhY2Nlc3MgbWV0aG9kJ3MgaW1wbGVtZW50YXRpb24uICAiCisiTm9ybWFsbHkgdGhlIHByb2Nlc3MgaXMgc3RyYWlnaHRmb3J3YXJkIGFuZCByZXF1aXJlcyBubyB1c2VyIGludGVyYWN0aW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHNlbGVjdC4xOjE1MAorIywgbm8td3JhcAorbXNnaWQgInNlbGVjdCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTUyCittc2dpZCAiVmlldyBvciBtYW5hZ2UgcGFja2FnZSBzZWxlY3Rpb25zIGFuZCBkZXBlbmRlbmNpZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxNTgKK21zZ2lkICIiCisiVGhpcyBpcyB0aGUgbWFpbiBmdW5jdGlvbiBvZiBCPGRzZWxlY3Q+LiBJbiB0aGUgc2VsZWN0IHNjcmVlbiwgdGhlIHVzZXIgY2FuICIKKyJyZXZpZXcgYSBsaXN0IG9mIGFsbCBhdmFpbGFibGUgYW5kIGluc3RhbGxlZCBwYWNrYWdlcy4gV2hlbiBydW4gd2l0aCAiCisiYWRtaW5pc3RyYXRvciBwcml2aWxlZ2VzLCBpdCBpcyBhbHNvIHBvc3NpYmxlIHRvIGludGVyYWN0aXZlbHkgY2hhbmdlICIKKyJwYWNrYWdlcyBzZWxlY3Rpb24gc3RhdGUuIEI8ZHNlbGVjdD4gdHJhY2tzIHRoZSBpbXBsaWNhdGlvbnMgb2YgdGhlc2UgIgorImNoYW5nZXMgdG8gb3RoZXIgZGVwZW5kaW5nIG9yIGNvbmZsaWN0aW5nIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTY1Cittc2dpZCAiIgorIldoZW4gYSBjb25mbGljdCBvciBmYWlsZWQgZGVwZW5kcyBpcyBkZXRlY3RlZCwgYSBkZXBlbmRlbmN5IHJlc29sdXRpb24gIgorInN1YnNjcmVlbiBpcyBwcm9tcHRlZCB0byB0aGUgdXNlci4gSW4gdGhpcyBzY3JlZW4sIGEgbGlzdCBvZiBjb25mbGljdGluZyBvciAiCisiZGVwZW5kaW5nIHBhY2thZ2VzIGlzIHNob3duLCBhbmQgZm9yIGVhY2ggcGFja2FnZSBsaXN0ZWQsIHRoZSByZWFzb24gZm9yIGl0cyAiCisibGlzdGluZyBpcyBzaG93bi4gVGhlIHVzZXIgbWF5IGFwcGx5IHRoZSBzdWdnZXN0aW9ucyBwcm9wb3NlZCBieSBCPGRzZWxlY3Q+LCAiCisib3ZlcnJpZGUgdGhlbSwgb3IgYmFjayBvdXQgYWxsIHRoZSBjaGFuZ2VzLCBpbmNsdWRpbmcgdGhlIG9uZXMgdGhhdCBjcmVhdGVkICIKKyJ0aGUgdW5yZXNvbHZlZCBkZXBlbmRzIG9yIGNvbmZsaWN0cy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjE2OAorbXNnaWQgIiIKKyJUaGUgdXNlIG9mIHRoZSBpbnRlcmFjdGl2ZSBwYWNrYWdlIHNlbGVjdGlvbnMgbWFuYWdlbWVudCBzY3JlZW4gaXMgZXhwbGFpbmVkICIKKyJpbiBtb3JlIGRldGFpbCBiZWxvdy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRzZWxlY3QuMToxNjkKKyMsIG5vLXdyYXAKK21zZ2lkICJpbnN0YWxsIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxNzEKK21zZ2lkICJJbnN0YWxscyBzZWxlY3RlZCBwYWNrYWdlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjE3NworbXNnaWQgIiIKKyJUaGUgY29uZmlndXJlZCBhY2Nlc3MgbWV0aG9kIHdpbGwgZmV0Y2ggaW5zdGFsbGFibGUgb3IgdXBncmFkYWJsZSBwYWNrYWdlcyAiCisiZnJvbSB0aGUgcmVsZXZhbnQgcmVwb3NpdG9yaWVzIGFuZCBpbnN0YWxsIHRoZXNlIHVzaW5nIEI8ZHBrZz4uICBEZXBlbmRpbmcgIgorIm9uIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgYWNjZXNzIG1ldGhvZCwgYWxsIHBhY2thZ2VzIGNhbiBiZSBwcmVmZXRjaGVkICIKKyJiZWZvcmUgaW5zdGFsbGF0aW9uLCBvciBmZXRjaGVkIHdoZW4gbmVlZGVkLiAgU29tZSBhY2Nlc3MgbWV0aG9kcyBtYXkgYWxzbyAiCisicmVtb3ZlIHBhY2thZ2VzIHRoYXQgd2VyZSBtYXJrZWQgZm9yIHJlbW92YWwuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxODUKK21zZ2lkICIiCisiSWYgYW4gZXJyb3Igb2NjdXJyZWQgZHVyaW5nIGluc3RhbGwsIGl0IGlzIHVzdWFsbHkgYWR2aXNhYmxlIHRvIHJ1biBpbnN0YWxsICIKKyJhZ2Fpbi4gSW4gbW9zdCBjYXNlcywgdGhlIHByb2JsZW1zIHdpbGwgZGlzYXBwZWFyIG9yIGJlIHNvbHZlZC4gIElmIHByb2JsZW1zICIKKyJwZXJzaXN0IG9yIHRoZSBpbnN0YWxsYXRpb24gcGVyZm9ybWVkIHdhcyBpbmNvcnJlY3QsIHBsZWFzZSBpbnZlc3RpZ2F0ZSBpbnRvICIKKyJ0aGUgY2F1c2VzIGFuZCBjaXJjdW1zdGFuY2VzLCBhbmQgZmlsZSBhIGJ1ZyBpbiB0aGUgRGViaWFuIGJ1ZyB0cmFja2luZyAiCisic3lzdGVtLiBJbnN0cnVjdGlvbnMgb24gaG93IHRvIGRvIHRoaXMgY2FuIGJlIGZvdW5kIGF0ICIKKyJodHRwOi8vYnVncy5kZWJpYW4ub3JnLyBvciBieSByZWFkaW5nIHRoZSBkb2N1bWVudGF0aW9uIGZvciBCPGJ1Zz4oMSkgb3IgIgorIkI8cmVwb3J0YnVnPigxKSwgaWYgdGhlc2UgYXJlIGluc3RhbGxlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjE5MgorbXNnaWQgIiIKKyJEZXRhaWxzIG9mIHRoZSBpbnN0YWxsIGFjdGlvbiBkZXBlbmQgb24gdGhlIGFjY2VzcyBtZXRob2QncyBpbXBsZW1lbnRhdGlvbi4gICIKKyJUaGUgdXNlcidzIGF0dGVudGlvbiBhbmQgaW5wdXQgbWF5IGJlIHJlcXVpcmVkIGR1cmluZyBpbnN0YWxsYXRpb24sICIKKyJjb25maWd1cmF0aW9uIG9yIHJlbW92YWwgb2YgcGFja2FnZXMuIFRoaXMgZGVwZW5kcyBvbiB0aGUgbWFpbnRhaW5lciBzY3JpcHRzICIKKyJpbiB0aGUgcGFja2FnZS4gU29tZSBwYWNrYWdlcyBtYWtlIHVzZSBvZiB0aGUgQjxkZWJjb25mPigxKSAgbGlicmFyeSwgIgorImFsbG93aW5nIGZvciBtb3JlIGZsZXhpYmxlIG9yIGV2ZW4gYXV0b21hdGVkIGluc3RhbGxhdGlvbiBzZXR1cHMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkc2VsZWN0LjE6MTkzCisjLCBuby13cmFwCittc2dpZCAiY29uZmlnIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxOTUKK21zZ2lkICJDb25maWd1cmVzIGFueSBwcmV2aW91c2x5IGluc3RhbGxlZCwgYnV0IG5vdCBmdWxseSBjb25maWd1cmVkIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHNlbGVjdC4xOjE5NgorIywgbm8td3JhcAorbXNnaWQgInJlbW92ZSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTk4Cittc2dpZCAiUmVtb3ZlcyBvciBwdXJnZXMgaW5zdGFsbGVkIHBhY2thZ2VzLCB0aGF0IGFyZSBtYXJrZWQgZm9yIHJlbW92YWwuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkc2VsZWN0LjE6MTk5CisjLCBuby13cmFwCittc2dpZCAicXVpdCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MjAxCittc2dpZCAiUXVpdCBCPGRzZWxlY3Q+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToyMDMKK21zZ2lkICJFeGl0cyB0aGUgcHJvZ3JhbSB3aXRoIHplcm8gKHN1Y2Nlc3NmdWwpIGVycm9yY29kZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRzZWxlY3QuMToyMDUKKyMsIG5vLXdyYXAKK21zZ2lkICJQYWNrYWdlIHNlbGVjdGlvbnMgbWFuYWdlbWVudCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHNlbGVjdC4xOjIwNworIywgbm8td3JhcAorbXNnaWQgIkludHJvZHVjdGlvbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MjIzCittc2dpZCAiIgorIkI8ZHNlbGVjdD4gZGlyZWN0bHkgZXhwb3NlcyB0aGUgYWRtaW5pc3RyYXRvciB0byBzb21lIG9mIHRoZSBjb21wbGV4aXRpZXMgIgorImludm9sdmVkIHdpdGggbWFuYWdpbmcgbGFyZ2Ugc2V0cyBvZiBwYWNrYWdlcyB3aXRoIG1hbnkgIgorImludGVyZGVwZW5kZW5jaWVzLiBGb3IgYSB1c2VyIHdobyBpcyB1bmZhbWlsaWFyIHdpdGggdGhlIGNvbmNlcHRzIGFuZCB0aGUgIgorIndheXMgb2YgdGhlIGRlYmlhbiBwYWNrYWdlIG1hbmFnZW1lbnQgc3lzdGVtLCBpdCBjYW4gYmUgcXVpdGUgIgorIm92ZXJ3aGVsbWluZy4gQWx0aG91Z2ggQjxkc2VsZWN0PiBpcyBhaW1lZCBhdCBlYXNpbmcgcGFja2FnZSBtYW5hZ2VtZW50IGFuZCAiCisiYWRtaW5pc3RyYXRpb24sIGl0IGlzIG9ubHkgaW5zdHJ1bWVudGFsIGluIGRvaW5nIHNvIGFuZCBjYW4gbm90IGJlIGFzc3VtZWQgIgorInRvIGJlIGEgc3VmZmljaWVudCBzdWJzdGl0dXRlIGZvciBhZG1pbmlzdHJhdG9yIHNraWxsIGFuZCB1bmRlcnN0YW5kaW5nLiBUaGUgIgorInVzZXIgaXMgcmVxdWlyZWQgdG8gYmUgZmFtaWxpYXIgd2l0aCB0aGUgY29uY2VwdHMgdW5kZXJseWluZyB0aGUgRGViaWFuICIKKyJwYWNrYWdpbmcgc3lzdGVtLiAgSW4gY2FzZSBvZiBkb3VidCwgY29uc3VsdCB0aGUgQjxkcGtnPigxKSBtYW5wYWdlIGFuZCB0aGUgIgorIkRlYmlhbiBQb2xpY3kgbWFudWFsLCBjb250YWluZWQgaW4gdGhlIEI8ZGViaWFuLXBvbGljeT4gcGFja2FnZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjIyOQorbXNnaWQgIiIKKyJVbmxlc3MgQjxkc2VsZWN0PiBpcyBydW4gaW4gZXhwZXJ0IG9yIGltbWVkaWF0ZSBtb2RlLCBhIGhlbHAgc2NyZWVuIGlzIGZpcnN0ICIKKyJkaXNwbGF5ZWQgd2hlbiBjaG9vc2luZyB0aGlzIGFjdGlvbiBmcm9tIHRoZSBtZW51LiBUaGUgdXNlciBpcyBJPHN0cm9uZ2x5PiAiCisiYWR2aXNlZCB0byBzdHVkeSBhbGwgb2YgdGhlIGluZm9ybWF0aW9uIHByZXNlbnRlZCBpbiB0aGUgb25saW5lIGhlbHAgIgorInNjcmVlbnMsIHdoZW4gb25lIHBvcHMgdXAuICBUaGUgb25saW5lIGhlbHAgc2NyZWVucyBjYW4gYXQgYW55IHRpbWUgYmUgIgorImludm9rZWQgd2l0aCB0aGUgQjwnPyc+IGtleS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRzZWxlY3QuMToyMzAKKyMsIG5vLXdyYXAKK21zZ2lkICJTY3JlZW4gbGF5b3V0IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToyMzgKK21zZ2lkICIiCisiVGhlIHNlbGVjdCBzY3JlZW4gaXMgYnkgZGVmYXVsdCBzcGxpdCBpbiBhIHRvcCBhbmQgYSBib3R0b20gaGFsZi4gIFRoZSB0b3AgIgorImhhbGYgc2hvd3MgYSBsaXN0IG9mIHBhY2thZ2VzLiBBIGN1cnNvciBiYXIgY2FuIHNlbGVjdCBhbiBpbmRpdmlkdWFsICIKKyJwYWNrYWdlLCBvciBhIGdyb3VwIG9mIHBhY2thZ2VzLCBpZiBhcHBsaWNhYmxlLCBieSBzZWxlY3RpbmcgdGhlIGdyb3VwICIKKyJoZWFkZXIuIFRoZSBib3R0b20gaGFsZiBvZiB0aGUgc2NyZWVuIHNob3dzIHNvbWUgZGV0YWlscyBhYm91dCB0aGUgcGFja2FnZSAiCisiY3VycmVudGx5IHNlbGVjdGVkIGluIHRoZSB0b3AgaGFsZiBvZiB0aGUgc2NyZWVuLiAgVGhlIHR5cGUgb2YgZGV0YWlsIHRoYXQgIgorImlzIGRpc3BsYXllZCBjYW4gYmUgdmFyaWVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MjQxCittc2dpZCAiIgorIlByZXNzaW5nIHRoZSBCPCdJJz4ga2V5IHRvZ2dsZXMgYSBmdWxsLXNjcmVlbiBkaXNwbGF5IG9mIHRoZSBwYWNrYWdlcyBsaXN0LCAiCisiYW4gZW5sYXJnZWQgdmlldyBvZiB0aGUgcGFja2FnZSBkZXRhaWxzLCBvciB0aGUgZXF1YWxseSBzcGxpdCBzY3JlZW4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkc2VsZWN0LjE6MjQyCisjLCBuby13cmFwCittc2dpZCAiUGFja2FnZSBkZXRhaWxzIHZpZXciCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjI1MQorIywgbm8td3JhcAorbXNnaWQgIiIKKyJUaGUgcGFja2FnZSBkZXRhaWxzIHZpZXcgYnkgZGVmYXVsdCBzaG93cyB0aGUgZXh0ZW5kZWQgcGFja2FnZSBkZXNjcmlwdGlvblxuIgorImZvciB0aGUgcGFja2FnZSB0aGF0IGlzIGN1cnJlbnRseSBzZWxlY3RlZCBpbiB0aGUgcGFja2FnZXMgc3RhdHVzIGxpc3QuXG4iCisiVGhlIHR5cGUgb2YgZGV0YWlsIGNhbiBiZSB0b2dnbGVkIGJ5IHByZXNzaW5nIHRoZSBCPCdpJz4ga2V5LiBUaGlzXG4iCisiYWx0ZXJuYXRlcyBiZXR3ZWVuOlxuIgorIiAtIHRoZSBleHRlbmRlZCBkZXNjcmlwdGlvblxuIgorIiAtIHRoZSBjb250cm9sIGluZm9ybWF0aW9uIGZvciB0aGUgaW5zdGFsbGVkIHZlcnNpb25cbiIKKyIgLSB0aGUgY29udHJvbCBpbmZvcm1hdGlvbiBmb3IgdGhlIGF2YWlsYWJsZSB2ZXJzaW9uXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjI1NQorbXNnaWQgIiIKKyJJbiBhIGRlcGVuZGVuY3kgcmVzb2x1dGlvbiBzY3JlZW4sIHRoZXJlIGlzIGFsc28gdGhlIHBvc3NpYmlsaXR5IG9mIHZpZXdpbmcgIgorInRoZSBzcGVjaWZpYyB1bnJlc29sdmVkIGRlcGVuZHMgb3IgY29uZmxpY3RzIHJlbGF0ZWQgdG8gdGhlIHBhY2thZ2UgYW5kICIKKyJjYXVzaW5nIGl0IHRvIGJlIGxpc3RlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRzZWxlY3QuMToyNTYKKyMsIG5vLXdyYXAKK21zZ2lkICJQYWNrYWdlcyBzdGF0dXMgbGlzdCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MjYxCittc2dpZCAiIgorIlRoZSBtYWluIHNlbGVjdCBzY3JlZW4gZGlzcGxheXMgYSBsaXN0IG9mIGFsbCBwYWNrYWdlcyBrbm93biB0byB0aGUgZGViaWFuICIKKyJwYWNrYWdlIG1hbmFnZW1lbnQgc3lzdGVtLiBUaGlzIGluY2x1ZGVzIHBhY2thZ2VzIGluc3RhbGxlZCBvbiB0aGUgc3lzdGVtICIKKyJhbmQgcGFja2FnZXMga25vd24gZnJvbSB0aGUgYXZhaWxhYmxlIHBhY2thZ2VzIGRhdGFiYXNlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MjY5Cittc2dpZCAiIgorIkZvciBldmVyeSBwYWNrYWdlLCB0aGUgbGlzdCBzaG93cyB0aGUgcGFja2FnZSdzIHN0YXR1cywgcHJpb3JpdHksIHNlY3Rpb24sICIKKyJpbnN0YWxsZWQgYW5kIGF2YWlsYWJsZSB2ZXJzaW9ucywgdGhlIHBhY2thZ2UgbmFtZSBhbmQgaXRzIHNob3J0ICIKKyJkZXNjcmlwdGlvbiwgYWxsIGluIG9uZSBsaW5lLiBCeSBwcmVzc2luZyB0aGUgQjwnVic+IGtleSwgdGhlIGRpc3BsYXkgb2YgdGhlICIKKyJpbnN0YWxsZWQgYW5kIGF2YWlsYWJsZSB2ZXJzaW9uIGNhbiBiZSB0b2dnbGVkIGJldHdlZW4gb24gYW4gb2ZmLiBCeSAiCisicHJlc3NpbmcgdGhlIEI8J3YnPiBrZXksIHRoZSBwYWNrYWdlIHN0YXR1cyBkaXNwbGF5IGlzIHRvZ2dsZWQgYmV0d2VlbiAiCisidmVyYm9zZSBhbmQgc2hvcnRoYW5kLiAgU2hvcnRoYW5kIGRpc3BsYXkgaXMgdGhlIGRlZmF1bHQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToyNzUKK21zZ2lkICIiCisiVGhlIHNob3J0aGFuZCBzdGF0dXMgaW5kaWNhdGlvbiBjb25zaXN0cyBvZiBmb3VyIHBhcnRzOiBhbiBlcnJvciBmbGFnLCB3aGljaCAiCisic2hvdWxkIG5vcm1hbGx5IGJlIGNsZWFyLCB0aGUgY3VycmVudCBzdGF0dXMsIHRoZSBsYXN0IHNlbGVjdGlvbiBzdGF0ZSBhbmQgIgorInRoZSBjdXJyZW50IHNlbGVjdGlvbiBzdGF0ZS4gIFRoZSBmaXJzdCB0d28gcmVsYXRlIHRvIHRoZSBhY3R1YWwgc3RhdGUgb2YgIgorInRoZSBwYWNrYWdlLCB0aGUgc2Vjb25kIHBhaXIgYXJlIGFib3V0IHRoZSBzZWxlY3Rpb25zIHNldCBieSB0aGUgdXNlci4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjI5MworIywgbm8td3JhcAorbXNnaWQgIiIKKyJUaGVzZSBhcmUgdGhlIG1lYW5pbmdzIG9mIHRoZSBzaG9ydGhhbmQgcGFja2FnZSBzdGF0dXMgaW5kaWNhdG9yIGNvZGVzOlxuIgorIiBFcnJvciBmbGFnOlxuIgorIiAgSTxlbXB0eT4gICBubyBlcnJvclxuIgorIiAgQjxSPiAgICAgICBzZXJpb3VzIGVycm9yLCBuZWVkcyByZWluc3RhbGxhdGlvbjtcbiIKKyIgSW5zdGFsbGVkIHN0YXRlOlxuIgorIiAgSTxlbXB0eT4gICBub3QgaW5zdGFsbGVkO1xuIgorIiAgQjwqPiAgICAgICBmdWxseSBpbnN0YWxsZWQgYW5kIGNvbmZpZ3VyZWQ7XG4iCisiICBCPC0+ICAgICAgIG5vdCBpbnN0YWxsZWQgYnV0IHNvbWUgY29uZmlnIGZpbGVzIG1heSByZW1haW47XG4iCisiICBCPFU+ICAgICAgIHVucGFja2VkIGJ1dCBub3QgeWV0IGNvbmZpZ3VyZWQ7XG4iCisiICBCPEM+ICAgICAgIGhhbGYtY29uZmlndXJlZCAoYW4gZXJyb3IgaGFwcGVuZWQpO1xuIgorIiAgQjxJPiAgICAgICBoYWxmLWluc3RhbGxlZCAoYW4gZXJyb3IgaGFwcGVuZWQpLlxuIgorIiBDdXJyZW50IGFuZCByZXF1ZXN0ZWQgc2VsZWN0aW9uczpcbiIKKyIgIEI8Kj4gICAgICAgbWFya2VkIGZvciBpbnN0YWxsYXRpb24gb3IgdXBncmFkZTtcbiIKKyIgIEI8LT4gICAgICAgbWFya2VkIGZvciByZW1vdmFsLCBjb25maWd1cmF0aW9uIGZpbGVzIHJlbWFpbjtcbiIKKyIgIEI8PT4gICAgICAgb24gaG9sZDogcGFja2FnZSB3aWxsIG5vdCBiZSBwcm9jZXNzZWQgYXQgYWxsO1xuIgorIiAgQjxfPiAgICAgICBtYXJrZWQgZm9yIHB1cmdlLCBhbHNvIHJlbW92ZSBjb25maWd1cmF0aW9uO1xuIgorIiAgQjxuPiAgICAgICBwYWNrYWdlIGlzIG5ldyBhbmQgaGFzIHlldCB0byBiZSBtYXJrZWQuXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRzZWxlY3QuMToyOTQKKyMsIG5vLXdyYXAKK21zZ2lkICJDdXJzb3IgYW5kIHNjcmVlbiBtb3ZlbWVudCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6Mjk5Cittc2dpZCAiIgorIlRoZSBwYWNrYWdlIHNlbGVjdGlvbiBsaXN0IGFuZCB0aGUgZGVwZW5kZW5jeSBjb25mbGljdCByZXNvbHV0aW9uIHNjcmVlbnMgIgorImNhbiBiZSBuYXZpZ2F0ZWQgdXNpbmcgbW90aW9uIGNvbW1hbmRzIG1hcHBlZCB0byB0aGUgZm9sbG93aW5nIGtleXM6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTozMTYKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiICBCPHAsIFVwLCBrPiAgICAgICAgICAgbW92ZSBjdXJzb3IgYmFyIHVwXG4iCisiICBCPG4sIERvd24sIGo+ICAgICAgICAgbW92ZSBjdXJzb3IgYmFyIGRvd25cbiIKKyIgIEI8UCwgUGd1cCwgQmFja3NwYWNlPiBzY3JvbGwgbGlzdCAxIHBhZ2UgdXBcbiIKKyIgIEI8TiwgUGdkbiwgU3BhY2U+ICAgICBzY3JvbGwgbGlzdCAxIHBhZ2UgZG93blxuIgorIiAgQjxecD4gICAgICAgICAgICAgICAgIHNjcm9sbCBsaXN0IDEgbGluZSB1cFxuIgorIiAgQjxebj4gICAgICAgICAgICAgICAgIHNjcm9sbCBsaXN0IDEgbGluZSBkb3duXG4iCisiICBCPHQsIEhvbWU+ICAgICAgICAgICAganVtcCB0byB0b3Agb2YgbGlzdFxuIgorIiAgQjxlLCBFbmQ+ICAgICAgICAgICAgIGp1bXAgdG8gZW5kIG9mIGxpc3RcbiIKKyIgIEI8dT4gICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyAxIHBhZ2UgdXBcbiIKKyIgIEI8ZD4gICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyAxIHBhZ2UgZG93blxuIgorIiAgQjxedT4gICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIDEgbGluZSB1cFxuIgorIiAgQjxeZD4gICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIDEgbGluZSBkb3duXG4iCisiICBCPEIsIExlZnQtYXJyb3c+ICAgICAgcGFuIGRpc3BsYXkgMS8zIHNjcmVlbiBsZWZ0XG4iCisiICBCPEYsIFJpZ2h0LWFycm93PiAgICAgcGFuIGRpc3BsYXkgMS8zIHNjcmVlbiByaWdodFxuIgorIiAgQjxeYj4gICAgICAgICAgICAgICAgIHBhbiBkaXNwbGF5IDEgY2hhcmFjdGVyIGxlZnRcbiIKKyIgIEI8XmY+ICAgICAgICAgICAgICAgICBwYW4gZGlzcGxheSAxIGNoYXJhY3RlciByaWdodFxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkc2VsZWN0LjE6MzE3CisjLCBuby13cmFwCittc2dpZCAiU2VhcmNoaW5nIGFuZCBzb3J0aW5nIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTozMzEKK21zZ2lkICIiCisiVGhlIGxpc3Qgb2YgcGFja2FnZXMgY2FuIGJlIHNlYXJjaGVkIGJ5IHBhY2thZ2UgbmFtZS4gVGhpcyBpcyBkb25lIGJ5ICIKKyJwcmVzc2luZyBCPCcvJz4sIGFuZCB0eXBpbmcgYSBzaW1wbGUgc2VhcmNoIHN0cmluZy4gVGhlIHN0cmluZyBpcyAiCisiaW50ZXJwcmV0ZWQgYXMgYSBCPHJlZ2V4Pig3KSAgcmVndWxhciBleHByZXNzaW9uLiAgSWYgeW91IGFkZCBCPCcvZCc+IHRvIHRoZSAiCisic2VhcmNoIGV4cHJlc3Npb24sIGRzZWxlY3Qgd2lsbCBhbHNvIHNlYXJjaCBpbiBkZXNjcmlwdGlvbnMuIElmIHlvdSBhZGQgIgorIkI8Jy9pJz4gdGhlIHNlYXJjaCB3aWxsIGJlIGNhc2UgaW5zZW5zaXRpdmUuICBZb3UgbWF5IGNvbWJpbmUgdGhlc2UgdHdvICIKKyJzdWZmaXhlcyBsaWtlIHRoaXM6IEI8Jy9pZCc+LiAgUmVwZWF0ZWQgc2VhcmNoaW5nIGlzIGFjY29tcGxpc2hlZCBieSAiCisicmVwZWF0ZWRseSBwcmVzc2luZyB0aGUgQjwnbic+IG9yIEI8J1xcZSc+IGtleXMsIHVudGlsIHRoZSB3YW50ZWQgcGFja2FnZSBpcyAiCisiZm91bmQuICBJZiB0aGUgc2VhcmNoIHJlYWNoZXMgdGhlIGJvdHRvbSBvZiB0aGUgbGlzdCwgaXQgd3JhcHMgdG8gdGhlIHRvcCAiCisiYW5kIGNvbnRpbnVlcyBzZWFyY2hpbmcgZnJvbSB0aGVyZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjMzOAorIywgbm8td3JhcAorbXNnaWQgIiIKKyJUaGUgbGlzdCBzb3J0IG9yZGVyIGNhbiBiZSB2YXJpZWQgYnkgcHJlc3NpbmdcbiIKKyJ0aGUgQjwnbyc+IGFuZCBCPCdPJz4ga2V5cyByZXBlYXRlZGx5LlxuIgorIlRoZSBmb2xsb3dpbmcgbmluZSBzb3J0IG9yZGVyaW5ncyBjYW4gYmUgc2VsZWN0ZWQ6XG4iCisiIGFscGhhYmV0ICAgICAgICAgIGF2YWlsYWJsZSAgICAgICAgICAgc3RhdHVzXG4iCisiIHByaW9yaXR5K3NlY3Rpb24gIGF2YWlsYWJsZStwcmlvcml0eSAgc3RhdHVzK3ByaW9yaXR5XG4iCisiIHNlY3Rpb24rcHJpb3JpdHkgIGF2YWlsYWJsZStzZWN0aW9uICAgc3RhdHVzK3NlY3Rpb25cbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MzQxCittc2dpZCAiIgorIldoZXJlIG5vdCBsaXN0ZWQgYWJvdmUgZXhwbGljaXRseSwgYWxwaGFiZXRpYyBvcmRlciBpcyB1c2VkIGFzIHRoZSBmaW5hbCAiCisic3Vib3JkZXJpbmcgc29ydCBrZXkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkc2VsZWN0LjE6MzQyCisjLCBuby13cmFwCittc2dpZCAiQWx0ZXJpbmcgc2VsZWN0aW9ucyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MzUxCisjLCBuby13cmFwCittc2dpZCAiIgorIlRoZSByZXF1ZXN0ZWQgc2VsZWN0aW9uIHN0YXRlIG9mIGluZGl2aWR1YWwgcGFja2FnZXMgbWF5IGJlXG4iCisiYWx0ZXJlZCB3aXRoIHRoZSBmb2xsb3dpbmcgY29tbWFuZHM6XG4iCisiICBCPCssIEluc2VydD4gICAgaW5zdGFsbCBvciB1cGdyYWRlXG4iCisiICBCPD0sIEg+ICAgICAgICAgaG9sZCBpbiBwcmVzZW50IHN0YXRlIGFuZCB2ZXJzaW9uXG4iCisiICBCPDosIEc+ICAgICAgICAgdW5ob2xkOiB1cGdyYWRlIG9yIGxlYXZlIHVuaW5zdGFsbGVkXG4iCisiICBCPC0sIERlbGV0ZT4gICAgcmVtb3ZlLCBidXQgbGVhdmUgY29uZmlndXJhdGlvblxuIgorIiAgQjxfPiAgICAgICAgICAgIHJlbW92ZSAmIHB1cmdlIGNvbmZpZ3VyYXRpb25cbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MzU1Cittc2dpZCAiIgorIldoZW4gdGhlIGNoYW5nZSByZXF1ZXN0IHJlc3VsdHMgaW4gb25lIG9yIG1vcmUgdW5zYXRpc2ZpZWQgZGVwZW5kcyBvciAiCisiY29uZmxpY3RzLCBCPGRzZWxlY3Q+IHByb21wdHMgdGhlIHVzZXIgd2l0aCBhIGRlcGVuZGVuY3kgcmVzb2x1dGlvbiAiCisic2NyZWVuLiBUaGlzIHdpbGwgYmUgZnVydGhlciBleHBsYWluZWQgYmVsb3cuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTozNjAKK21zZ2lkICIiCisiSXQgaXMgYWxzbyBwb3NzaWJsZSB0byBhcHBseSB0aGVzZSBjb21tYW5kcyB0byBncm91cHMgb2YgcGFja2FnZSBzZWxlY3Rpb25zLCAiCisiYnkgcG9pbnRpbmcgdGhlIGN1cnNvciBiYXIgb250byBhIGdyb3VwIGhlYWRlci4gVGhlIGV4YWN0IGdyb3VwaW5nIG9mICIKKyJwYWNrYWdlcyBpcyBkZXBlbmRlbnQgb24gdGhlIGN1cnJlbnQgbGlzdCBvcmRlcmluZyBzZXR0aW5ncy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjM2NgorbXNnaWQgIiIKKyJQcm9wZXIgY2FyZSBzaG91bGQgYmUgdGFrZW4gd2hlbiBhbHRlcmluZyBsYXJnZSBncm91cHMgb2Ygc2VsZWN0aW9ucywgIgorImJlY2F1c2UgdGhpcyBjYW4gaW5zdGFudGFuZW91c2x5IGNyZWF0ZSBsYXJnZSBudW1iZXJzIG9mIHVucmVzb2x2ZWQgZGVwZW5kcyAiCisib3IgY29uZmxpY3RzLCBhbGwgb2Ygd2hpY2ggd2lsbCBiZSBsaXN0ZWQgaW4gb25lIGRlcGVuZGVuY3kgcmVzb2x1dGlvbiAiCisic2NyZWVuLCBtYWtpbmcgdGhlbSB2ZXJ5IGhhcmQgdG8gaGFuZGxlLiBJbiBwcmFjdGljZSwgb25seSBob2xkIGFuZCB1bmhvbGQgIgorIm9wZXJhdGlvbnMgYXJlIHVzZWZ1bCB3aGVuIGFwcGxpZWQgdG8gZ3JvdXBzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHNlbGVjdC4xOjM2NworIywgbm8td3JhcAorbXNnaWQgIlJlc29sdmluZyBkZXBlbmRzIGFuZCBjb25mbGljdHMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjM3MgorbXNnaWQgIiIKKyJXaGVuIHRoZSBjaGFuZ2UgcmVxdWVzdCByZXN1bHRzIGluIG9uZSBvciBtb3JlIHVuc2F0aXNmaWVkIGRlcGVuZHMgb3IgIgorImNvbmZsaWN0cywgQjxkc2VsZWN0PiBwcm9tcHRzIHRoZSB1c2VyIHdpdGggYSBkZXBlbmRlbmN5IHJlc29sdXRpb24gIgorInNjcmVlbi4gRmlyc3QgaG93ZXZlciwgYW4gaW5mb3JtYXRpdmUgaGVscCBzY3JlZW4gaXMgZGlzcGxheWVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6Mzc5Cittc2dpZCAiIgorIlRoZSB0b3AgaGFsZiBvZiB0aGlzIHNjcmVlbiBsaXN0cyBhbGwgdGhlIHBhY2thZ2VzIHRoYXQgd2lsbCBoYXZlIHVucmVzb2x2ZWQgIgorImRlcGVuZHMgb3IgY29uZmxpY3RzLCBhcyBhIHJlc3VsdCBvZiB0aGUgcmVxdWVzdGVkIGNoYW5nZSwgYW5kIGFsbCB0aGUgIgorInBhY2thZ2VzIHdob3NlIGluc3RhbGxhdGlvbiBjYW4gcmVzb2x2ZSBhbnkgb2YgdGhlc2UgZGVwZW5kcyBvciB3aG9zZSAiCisicmVtb3ZhbCBjYW4gcmVzb2x2ZSBhbnkgb2YgdGhlIGNvbmZsaWN0cy4gIFRoZSBib3R0b20gaGFsZiBkZWZhdWx0cyB0byBzaG93ICIKKyJ0aGUgZGVwZW5kcyBvciBjb25mbGljdHMgdGhhdCBjYXVzZSB0aGUgY3VycmVudGx5IHNlbGVjdGVkIHBhY2thZ2UgdG8gYmUgIgorImxpc3RlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjM4NQorbXNnaWQgIiIKKyJXaGVuIHRoZSBzdWJsaXN0IG9mIHBhY2thZ2VzIGlzIGRpc3BsYXllZCBpbml0aWFsbHksIEI8ZHNlbGVjdD4gbWF5IGhhdmUgIgorImFscmVhZHkgc2V0IHRoZSByZXF1ZXN0ZWQgc2VsZWN0aW9uIHN0YXR1cyBvZiBzb21lIG9mIHRoZSBsaXN0ZWQgcGFja2FnZXMsICIKKyJpbiBvcmRlciB0byByZXNvbHZlIHRoZSBkZXBlbmRzIG9yIGNvbmZsaWN0cyB0aGF0IGNhdXNlZCB0aGUgZGVwZW5kZW5jeSAiCisicmVzb2x1dGlvbiBzY3JlZW4gdG8gYmUgZGlzcGxheWVkLiBVc3VhbGx5LCBpdCBpcyBiZXN0IHRvIGZvbGxvdyB1cCB0aGUgIgorInN1Z2dlc3Rpb25zIG1hZGUgYnkgQjxkc2VsZWN0Pi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjM5MworbXNnaWQgIiIKKyJUaGUgbGlzdGVkIHBhY2thZ2VzJyBzZWxlY3Rpb24gc3RhdGUgbWF5IGJlIHJldmVydGVkIHRvIHRoZSBvcmlnaW5hbCAiCisic2V0dGluZ3MsIGFzIHRoZXkgd2VyZSBiZWZvcmUgdGhlIHVucmVzb2x2ZWQgZGVwZW5kcyBvciBjb25mbGljdHMgd2VyZSAiCisiY3JlYXRlZCwgYnkgcHJlc3NpbmcgdGhlIEI8J1InPiBrZXkuIEJ5IHByZXNzaW5nIHRoZSBCPCdEJz4ga2V5LCB0aGUgIgorImF1dG9tYXRpYyBzdWdnZXN0aW9ucyBhcmUgcmVzZXQsIGJ1dCB0aGUgY2hhbmdlIHRoYXQgY2F1c2VkIHRoZSBkZXBlbmRlbmN5ICIKKyJyZXNvbHV0aW9uIHNjcmVlbiB0byBiZSBwcm9tcHRlZCBpcyBrZXB0IGFzIHJlcXVlc3RlZC4gIEZpbmFsbHksIGJ5IHByZXNzaW5nICIKKyJCPCdVJz4sIHRoZSBzZWxlY3Rpb25zIGFyZSBhZ2FpbiBzZXQgdG8gdGhlIGF1dG9tYXRpYyBzdWdnZXN0aW9uIHZhbHVlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRzZWxlY3QuMTozOTQKKyMsIG5vLXdyYXAKK21zZ2lkICJFc3RhYmxpc2hpbmcgdGhlIHJlcXVlc3RlZCBzZWxlY3Rpb25zIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0MDEKK21zZ2lkICIiCisiQnkgcHJlc3NpbmcgQjxlbnRlcj4sIHRoZSBjdXJyZW50bHkgZGlzcGxheWVkIHNldCBvZiBzZWxlY3Rpb25zIGlzICIKKyJhY2NlcHRlZC4gSWYgQjxkc2VsZWN0PiBkZXRlY3RzIG5vIHVucmVzb2x2ZWQgZGVwZW5kcyBhcyBhIHJlc3VsdCBvZiB0aGUgIgorInJlcXVlc3RlZCBzZWxlY3Rpb25zLCB0aGUgbmV3IHNlbGVjdGlvbnMgd2lsbCBiZSBzZXQuICBIb3dldmVyLCBpZiB0aGVyZSBhcmUgIgorImFueSB1bnJlc29sdmVkIGRlcGVuZHMsIEI8ZHNlbGVjdD4gd2lsbCBhZ2FpbiBwcm9tcHQgdGhlIHVzZXIgd2l0aCBhICIKKyJkZXBlbmRlbmN5IHJlc29sdXRpb24gc2NyZWVuLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NDA3Cittc2dpZCAiIgorIlRvIGFsdGVyIGEgc2V0IG9mIHNlbGVjdGlvbnMgdGhhdCBjcmVhdGVzIHVucmVzb2x2ZWQgZGVwZW5kcyBvciBjb25mbGljdHMgIgorImFuZCBmb3JjaW5nIEI8ZHNlbGVjdD4gdG8gYWNjZXB0IGl0LCBwcmVzcyB0aGUgQjwnUSc+IGtleS4gVGhpcyBzZXRzIHRoZSAiCisic2VsZWN0aW9ucyBhcyBzcGVjaWZpZWQgYnkgdGhlIHVzZXIsIHVuY29uZGl0aW9uYWxseS4gR2VuZXJhbGx5LCBkb24ndCBkbyAiCisidGhpcyB1bmxlc3MgeW91J3ZlIHJlYWQgdGhlIGZpbmUgcHJpbnQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0MTQKK21zZ2lkICIiCisiVGhlIG9wcG9zaXRlIGVmZmVjdCwgdG8gYmFjayBvdXQgYW55IHNlbGVjdGlvbnMgY2hhbmdlIHJlcXVlc3RzIGFuZCBnbyBiYWNrICIKKyJ0byB0aGUgcHJldmlvdXMgbGlzdCBvZiBzZWxlY3Rpb25zLCBpcyBhdHRhaW5lZCBieSBwcmVzc2luZyB0aGUgQjwnWCc+IG9yICIKKyJCPGVzY2FwZT4ga2V5cy4gQnkgcmVwZWF0ZWRseSBwcmVzc2luZyB0aGVzZSBrZXlzLCBhbnkgcG9zc2libHkgZGV0cmltZW50YWwgIgorImNoYW5nZXMgdG8gdGhlIHJlcXVlc3RlZCBwYWNrYWdlIHNlbGVjdGlvbnMgY2FuIGJlIGJhY2tlZCBvdXQgY29tcGxldGVseSB0byAiCisidGhlIGxhc3QgZXN0YWJsaXNoZWQgc2V0dGluZ3MuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0MjEKK21zZ2lkICIiCisiSWYgeW91IG1pc3Rha2VubHkgZXN0YWJsaXNoIHNvbWUgc2V0dGluZ3MgYW5kIHdpc2ggdG8gcmV2ZXJ0IGFsbCB0aGUgIgorInNlbGVjdGlvbnMgdG8gd2hhdCBpcyBjdXJyZW50bHkgaW5zdGFsbGVkIG9uIHRoZSBzeXN0ZW0sIHByZXNzIHRoZSBCPCdDJz4gIgorImtleS4gIFRoaXMgaXMgc29tZXdoYXQgc2ltaWxhciB0byB1c2luZyB0aGUgdW5ob2xkIGNvbW1hbmQgb24gYWxsIHBhY2thZ2VzLCAiCisiYnV0IHByb3ZpZGVzIGEgbW9yZSBvYnZpb3VzIHBhbmljIGJ1dHRvbiBpbiBjYXNlcyB3aGVyZSB0aGUgdXNlciBwcmVzc2VkICIKKyJCPGVudGVyPiBieSBhY2NpZGVudC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjQyOAorbXNnaWQgIiIKKyJJZiBzZXQsIEI8ZHNlbGVjdD4gd2lsbCB1c2UgaXQgYXMgdGhlIGRpcmVjdG9yeSBmcm9tIHdoaWNoIHRvIHJlYWQgdGhlIHVzZXIgIgorInNwZWNpZmljIGNvbmZpZ3VyYXRpb24gZmlsZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjQzNAorbXNnaWQgIiIKKyJUaGUgQjxkc2VsZWN0PiBwYWNrYWdlIHNlbGVjdGlvbiBpbnRlcmZhY2UgaXMgY29uZnVzaW5nIHRvIHNvbWUgbmV3IHVzZXJzLiAgIgorIlJlcG9ydGVkbHksIGl0IGV2ZW4gbWFrZXMgc2Vhc29uZWQga2VybmVsIGRldmVsb3BlcnMgY3J5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NDM2Cittc2dpZCAiVGhlIGRvY3VtZW50YXRpb24gaXMgbGFja2luZy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjQzOAorbXNnaWQgIlRoZXJlIGlzIG5vIGhlbHAgb3B0aW9uIGluIHRoZSBtYWluIG1lbnUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0NDAKK21zZ2lkICJUaGUgdmlzaWJsZSBsaXN0IG9mIGF2YWlsYWJsZSBwYWNrYWdlcyBjYW5ub3QgYmUgcmVkdWNlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjQ0NAorbXNnaWQgIiIKKyJUaGUgYnVpbHQgaW4gYWNjZXNzIG1ldGhvZHMgY2FuIG5vIGxvbmdlciBzdGFuZCB1cCB0byBjdXJyZW50IHF1YWxpdHkgIgorInN0YW5kYXJkcy4gVXNlIHRoZSBhY2Nlc3MgbWV0aG9kIHByb3ZpZGVkIGJ5IGFwdCwgaXQgaXMgbm90IG9ubHkgbm90IGJyb2tlbiwgIgorIml0IGlzIGFsc28gbXVjaCBtb3JlIGZsZXhpYmxlIHRoYW4gdGhlIGJ1aWx0IGluIGFjY2VzcyBtZXRob2RzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NDUwCittc2dpZCAiQjxkcGtnPigxKSwgQjxhcHQtZ2V0Pig4KSwgQjxzb3VyY2VzLmxpc3Q+KDUpLCBCPGRlYj4oNSkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0NTUKK21zZ2lkICIiCisiQjxkc2VsZWN0PiB3YXMgd3JpdHRlbiBieSBJYW4gSmFja3NvbiAoaWphY2tzb25AZ251LmFpLm1pdC5lZHUpLiBGdWxsIGxpc3QgIgorIm9mIGNvbnRyaWJ1dG9ycyBtYXkgYmUgZm91bmQgaW4gJ2RzZWxlY3QgLS12ZXJzaW9uJy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjQ1OAorbXNnaWQgIiIKKyJUaGlzIG1hbnVhbCBwYWdlIHdhcyB3cml0dGVuIGJ5IEp1aG8gVnVvcmkgRTxsdD5qYXZ1b3JpQGNjLmhlbHNpbmtpLmZpRTxndD4sICIKKyJKb3NpcCBSb2RpbiBhbmQgSm9vc3Qga29vaWouIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRICisjOiBkc2VsZWN0LmNmZy41OjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkc2VsZWN0LmNmZyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUSAorIzogZHNlbGVjdC5jZmcuNToxCisjLCBuby13cmFwCittc2dpZCAiMjAxMS0wNy0wMyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LmNmZy41OjQKK21zZ2lkICJkc2VsZWN0LmNmZyAtIGRzZWxlY3QgY29uZmlndXJhdGlvbiBmaWxlIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuY2ZnLjU6MTEKK21zZ2lkICIiCisiVGhpcyBmaWxlIGNvbnRhaW5zIGRlZmF1bHQgb3B0aW9ucyBmb3IgZHNlbGVjdC4gRWFjaCBsaW5lIGNvbnRhaW5zIGEgc2luZ2xlICIKKyJvcHRpb24gd2hpY2ggaXMgZXhhY3RseSB0aGUgc2FtZSBhcyBhIG5vcm1hbCBjb21tYW5kIGxpbmUgb3B0aW9uIGZvciBkc2VsZWN0ICIKKyJleGNlcHQgZm9yIHRoZSBsZWFkaW5nIGRhc2hlcyB3aGljaCBhcmUgbm90IHVzZWQgaGVyZS4gUXVvdGVzIHN1cnJvdW5kaW5nICIKKyJvcHRpb24gdmFsdWVzIGFyZSBzdHJpcHBlZC4gQ29tbWVudHMgYXJlIGFsbG93ZWQgYnkgc3RhcnRpbmcgYSBsaW5lIHdpdGggYSAiCisiaGFzaCBzaWduIChcIkI8Iz5cIikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuY2ZnLjU6MTQKK21zZ2lkICJJPC9ldGMvZHBrZy9kc2VsZWN0LmNmZy5kL1swLTlhLXpBLVpfLV0qPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LmNmZy41OjE2Cittc2dpZCAiSTwvZXRjL2Rwa2cvZHNlbGVjdC5jZmc+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuY2ZnLjU6MTgKK21zZ2lkICJJPH4vLmRzZWxlY3QuY2ZnPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LmNmZy41OjIyCittc2dpZCAiIgorIlNlZSBJPC91c3Ivc2hhcmUvZG9jL2Rwa2cvVEhBTktTPiBmb3IgdGhlIGxpc3Qgb2YgcGVvcGxlIHdobyBoYXZlICIKKyJjb250cmlidXRlZCB0byBCPGRzZWxlY3Q+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LmNmZy41OjI0Cittc2dpZCAiQjxkc2VsZWN0PigxKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVEgKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MQorIywgbm8td3JhcAorbXNnaWQgInN0YXJ0LXN0b3AtZGFlbW9uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6NAorbXNnaWQgInN0YXJ0LXN0b3AtZGFlbW9uIC0gc3RhcnQgYW5kIHN0b3Agc3lzdGVtIGRhZW1vbiBwcm9ncmFtcyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjgKK21zZ2lkICJCPHN0YXJ0LXN0b3AtZGFlbW9uPiBbSTxvcHRpb24+Li4uXSBJPGNvbW1hbmQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTQKK21zZ2lkICIiCisiQjxzdGFydC1zdG9wLWRhZW1vbj4gaXMgdXNlZCB0byBjb250cm9sIHRoZSBjcmVhdGlvbiBhbmQgdGVybWluYXRpb24gb2YgIgorInN5c3RlbS1sZXZlbCBwcm9jZXNzZXMuICBVc2luZyBvbmUgb2YgdGhlIG1hdGNoaW5nIG9wdGlvbnMsICIKKyJCPHN0YXJ0LXN0b3AtZGFlbW9uPiBjYW4gYmUgY29uZmlndXJlZCB0byBmaW5kIGV4aXN0aW5nIGluc3RhbmNlcyBvZiBhICIKKyJydW5uaW5nIHByb2Nlc3MuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MzMKK21zZ2lkICIiCisiTm90ZTogdW5sZXNzIEI8LS1waWRmaWxlPiBpcyBzcGVjaWZpZWQsIEI8c3RhcnQtc3RvcC1kYWVtb24+IGJlaGF2ZXMgc2ltaWxhciAiCisidG8gQjxraWxsYWxsPigxKS4gIEI8c3RhcnQtc3RvcC1kYWVtb24+IHdpbGwgc2NhbiB0aGUgcHJvY2VzcyB0YWJsZSBsb29raW5nICIKKyJmb3IgYW55IHByb2Nlc3NlcyB3aGljaCBtYXRjaCB0aGUgcHJvY2VzcyBuYW1lLCB1aWQsIGFuZC9vciBnaWQgKGlmICIKKyJzcGVjaWZpZWQpLiBBbnkgbWF0Y2hpbmcgcHJvY2VzcyB3aWxsIHByZXZlbnQgQjwtLXN0YXJ0PiBmcm9tIHN0YXJ0aW5nIHRoZSAiCisiZGFlbW9uLiBBbGwgbWF0Y2hpbmcgcHJvY2Vzc2VzIHdpbGwgYmUgc2VudCB0aGUgVEVSTSBzaWduYWwgKG9yIHRoZSBvbmUgIgorInNwZWNpZmllZCB2aWEgQjwtLXNpZ25hbD4gb3IgQjwtLXJldHJ5PikgaWYgQjwtLXN0b3A+IGlzIHNwZWNpZmllZC4gRm9yICIKKyJkYWVtb25zIHdoaWNoIGhhdmUgbG9uZy1saXZlZCBjaGlsZHJlbiB3aGljaCBuZWVkIHRvIGxpdmUgdGhyb3VnaCBhICIKKyJCPC0tc3RvcD4sIHlvdSBtdXN0IHNwZWNpZnkgYSBwaWRmaWxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODozNQorIywgbm8td3JhcAorbXNnaWQgIkI8LVM+LCBCPC0tc3RhcnQ+IFtCPC0tPl0gSTxhcmd1bWVudHM+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6NTIKK21zZ2lkICIiCisiQ2hlY2sgZm9yIHRoZSBleGlzdGVuY2Ugb2YgYSBzcGVjaWZpZWQgcHJvY2Vzcy4gIElmIHN1Y2ggYSBwcm9jZXNzIGV4aXN0cywgIgorIkI8c3RhcnQtc3RvcC1kYWVtb24+IGRvZXMgbm90aGluZywgYW5kIGV4aXRzIHdpdGggZXJyb3Igc3RhdHVzIDEgKDAgaWYgIgorIkI8LS1va25vZG8+IGlzIHNwZWNpZmllZCkuICBJZiBzdWNoIGEgcHJvY2VzcyBkb2VzIG5vdCBleGlzdCwgaXQgc3RhcnRzIGFuICIKKyJpbnN0YW5jZSwgdXNpbmcgZWl0aGVyIHRoZSBleGVjdXRhYmxlIHNwZWNpZmllZCBieSBCPC0tZXhlYz4gb3IsIGlmICIKKyJzcGVjaWZpZWQsIGJ5IEI8LS1zdGFydGFzPi4gIEFueSBhcmd1bWVudHMgZ2l2ZW4gYWZ0ZXIgQjwtLT4gb24gdGhlIGNvbW1hbmQgIgorImxpbmUgYXJlIHBhc3NlZCB1bm1vZGlmaWVkIHRvIHRoZSBwcm9ncmFtIGJlaW5nIHN0YXJ0ZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjUyCisjLCBuby13cmFwCittc2dpZCAiQjwtSz4sIEI8LS1zdG9wPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjcwCittc2dpZCAiIgorIkNoZWNrcyBmb3IgdGhlIGV4aXN0ZW5jZSBvZiBhIHNwZWNpZmllZCBwcm9jZXNzLiAgSWYgc3VjaCBhIHByb2Nlc3MgZXhpc3RzLCAiCisiQjxzdGFydC1zdG9wLWRhZW1vbj4gc2VuZHMgaXQgdGhlIHNpZ25hbCBzcGVjaWZpZWQgYnkgQjwtLXNpZ25hbD4sIGFuZCBleGl0cyAiCisid2l0aCBlcnJvciBzdGF0dXMgMC4gIElmIHN1Y2ggYSBwcm9jZXNzIGRvZXMgbm90IGV4aXN0LCBCPHN0YXJ0LXN0b3AtZGFlbW9uPiAiCisiZXhpdHMgd2l0aCBlcnJvciBzdGF0dXMgMSAoMCBpZiBCPC0tb2tub2RvPiBpcyBzcGVjaWZpZWQpLiBJZiBCPC0tcmV0cnk+IGlzICIKKyJzcGVjaWZpZWQsIHRoZW4gQjxzdGFydC1zdG9wLWRhZW1vbj4gd2lsbCBjaGVjayB0aGF0IHRoZSBwcm9jZXNzKGVzKSBoYXZlICIKKyJ0ZXJtaW5hdGVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo3MAorIywgbm8td3JhcAorbXNnaWQgIkI8LVQ+LCBCPC0tc3RhdHVzPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44Ojc0Cittc2dpZCAiIgorIkNoZWNrIGZvciB0aGUgZXhpc3RlbmNlIG9mIGEgc3BlY2lmaWVkIHByb2Nlc3MsIGFuZCByZXR1cm5zIGFuIGV4aXQgc3RhdHVzICIKKyJjb2RlLCBhY2NvcmRpbmcgdG8gdGhlIExTQiBJbml0IFNjcmlwdCBBY3Rpb25zLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo3NAorIywgbm8td3JhcAorbXNnaWQgIkI8LUg+LCBCPC0taGVscD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo3NworbXNnaWQgIlNob3cgdXNhZ2UgaW5mb3JtYXRpb24gYW5kIGV4aXQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44Ojc3CisjLCBuby13cmFwCittc2dpZCAiQjwtVj4sIEI8LS12ZXJzaW9uPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjgwCittc2dpZCAiU2hvdyB0aGUgcHJvZ3JhbSB2ZXJzaW9uIGFuZCBleGl0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo4MQorIywgbm8td3JhcAorbXNnaWQgIk1BVENISU5HIE9QVElPTlMiCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6ODIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1wPiwgQjwtLXBpZGZpbGU+IEk8cGlkLWZpbGU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6ODYKK21zZ2lkICJDaGVjayB3aGV0aGVyIGEgcHJvY2VzcyBoYXMgY3JlYXRlZCB0aGUgZmlsZSBJPHBpZC1maWxlPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6ODYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC14PiwgQjwtLWV4ZWM+IEk8ZXhlY3V0YWJsZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo5MAorbXNnaWQgIiIKKyJDaGVjayBmb3IgcHJvY2Vzc2VzIHRoYXQgYXJlIGluc3RhbmNlcyBvZiB0aGlzIGV4ZWN1dGFibGUgKGFjY29yZGluZyB0byAiCisiQjwvcHJvYy8+STxwaWQ+QjwvZXhlPikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjkwCisjLCBuby13cmFwCittc2dpZCAiQjwtbj4sIEI8LS1uYW1lPiBJPHByb2Nlc3MtbmFtZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo5NgorbXNnaWQgIiIKKyJDaGVjayBmb3IgcHJvY2Vzc2VzIHdpdGggdGhlIG5hbWUgSTxwcm9jZXNzLW5hbWU+IChhY2NvcmRpbmcgdG8gIgorIkI8L3Byb2MvPkk8cGlkPkI8L3N0YXQ+KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6OTYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC11PiwgQjwtLXVzZXI+IEk8dXNlcm5hbWU+fEk8dWlkPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjEwMgorbXNnaWQgIkNoZWNrIGZvciBwcm9jZXNzZXMgb3duZWQgYnkgdGhlIHVzZXIgc3BlY2lmaWVkIGJ5IEk8dXNlcm5hbWU+IG9yIEk8dWlkPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTA0CisjLCBuby13cmFwCittc2dpZCAiQjwtZz4sIEI8LS1ncm91cD4gSTxncm91cD58STxnaWQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTA3Cittc2dpZCAiQ2hhbmdlIHRvIEk8Z3JvdXA+IG9yIEk8Z2lkPiB3aGVuIHN0YXJ0aW5nIHRoZSBwcm9jZXNzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxMDcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1zPiwgQjwtLXNpZ25hbD4gSTxzaWduYWw+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTEyCittc2dpZCAiIgorIldpdGggQjwtLXN0b3A+LCBzcGVjaWZpZXMgdGhlIHNpZ25hbCB0byBzZW5kIHRvIHByb2Nlc3NlcyBiZWluZyBzdG9wcGVkICIKKyIoZGVmYXVsdCBURVJNKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTEyCisjLCBuby13cmFwCittc2dpZCAiQjwtUj4sIEI8LS1yZXRyeT4gSTx0aW1lb3V0PnxJPHNjaGVkdWxlPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjEyMgorbXNnaWQgIiIKKyJXaXRoIEI8LS1zdG9wPiwgc3BlY2lmaWVzIHRoYXQgQjxzdGFydC1zdG9wLWRhZW1vbj4gaXMgdG8gY2hlY2sgd2hldGhlciB0aGUgIgorInByb2Nlc3MoZXMpICBkbyBmaW5pc2guIEl0IHdpbGwgY2hlY2sgcmVwZWF0ZWRseSB3aGV0aGVyIGFueSBtYXRjaGluZyAiCisicHJvY2Vzc2VzIGFyZSBydW5uaW5nLCB1bnRpbCBub25lIGFyZS4gSWYgdGhlIHByb2Nlc3NlcyBkbyBub3QgZXhpdCBpdCB3aWxsICIKKyJ0aGVuIHRha2UgZnVydGhlciBhY3Rpb24gYXMgZGV0ZXJtaW5lZCBieSB0aGUgc2NoZWR1bGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTMzCittc2dpZCAiIgorIklmIEk8dGltZW91dD4gaXMgc3BlY2lmaWVkIGluc3RlYWQgb2YgSTxzY2hlZHVsZT4sIHRoZW4gdGhlIHNjaGVkdWxlICIKKyJJPHNpZ25hbD5CPC8+STx0aW1lb3V0PkI8L0tJTEwvPkk8dGltZW91dD4gaXMgdXNlZCwgd2hlcmUgSTxzaWduYWw+IGlzIHRoZSAiCisic2lnbmFsIHNwZWNpZmllZCB3aXRoIEI8LS1zaWduYWw+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjE0OQorbXNnaWQgIiIKKyJJPHNjaGVkdWxlPiBpcyBhIGxpc3Qgb2YgYXQgbGVhc3QgdHdvIGl0ZW1zIHNlcGFyYXRlZCBieSBzbGFzaGVzIChCPC8+KTsgIgorImVhY2ggaXRlbSBtYXkgYmUgQjwtPkk8c2lnbmFsLW51bWJlcj4gb3IgW0I8LT5dSTxzaWduYWwtbmFtZT4sIHdoaWNoIG1lYW5zICIKKyJ0byBzZW5kIHRoYXQgc2lnbmFsLCBvciBJPHRpbWVvdXQ+LCB3aGljaCBtZWFucyB0byB3YWl0IHRoYXQgbWFueSBzZWNvbmRzICIKKyJmb3IgcHJvY2Vzc2VzIHRvIGV4aXQsIG9yIEI8Zm9yZXZlcj4sIHdoaWNoIG1lYW5zIHRvIHJlcGVhdCB0aGUgcmVzdCBvZiB0aGUgIgorInNjaGVkdWxlIGZvcmV2ZXIgaWYgbmVjZXNzYXJ5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjE1OQorbXNnaWQgIiIKKyJJZiB0aGUgZW5kIG9mIHRoZSBzY2hlZHVsZSBpcyByZWFjaGVkIGFuZCBCPGZvcmV2ZXI+IGlzIG5vdCBzcGVjaWZpZWQsIHRoZW4gIgorIkI8c3RhcnQtc3RvcC1kYWVtb24+IGV4aXRzIHdpdGggZXJyb3Igc3RhdHVzIDIuICBJZiBhIHNjaGVkdWxlIGlzIHNwZWNpZmllZCwgIgorInRoZW4gYW55IHNpZ25hbCBzcGVjaWZpZWQgd2l0aCBCPC0tc2lnbmFsPiBpcyBpZ25vcmVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxNTkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1hPiwgQjwtLXN0YXJ0YXM+IEk8cGF0aG5hbWU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTY3Cittc2dpZCAiIgorIldpdGggQjwtLXN0YXJ0Piwgc3RhcnQgdGhlIHByb2Nlc3Mgc3BlY2lmaWVkIGJ5IEk8cGF0aG5hbWU+LiAgSWYgbm90ICIKKyJzcGVjaWZpZWQsIGRlZmF1bHRzIHRvIHRoZSBhcmd1bWVudCBnaXZlbiB0byBCPC0tZXhlYz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjE2NworIywgbm8td3JhcAorbXNnaWQgIkI8LXQ+LCBCPC0tdGVzdD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxNzEKK21zZ2lkICIiCisiUHJpbnQgYWN0aW9ucyB0aGF0IHdvdWxkIGJlIHRha2VuIGFuZCBzZXQgYXBwcm9wcmlhdGUgcmV0dXJuIHZhbHVlLCBidXQgdGFrZSAiCisibm8gYWN0aW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxNzEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1vPiwgQjwtLW9rbm9kbz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxNzQKK21zZ2lkICJSZXR1cm4gZXhpdCBzdGF0dXMgMCBpbnN0ZWFkIG9mIDEgaWYgbm8gYWN0aW9ucyBhcmUgKHdvdWxkIGJlKSB0YWtlbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTc0CisjLCBuby13cmFwCittc2dpZCAiQjwtcT4sIEI8LS1xdWlldD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxNzcKK21zZ2lkICJEbyBub3QgcHJpbnQgaW5mb3JtYXRpb25hbCBtZXNzYWdlczsgb25seSBkaXNwbGF5IGVycm9yIG1lc3NhZ2VzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxNzcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1jPiwgQjwtLWNodWlkPiBJPHVzZXJuYW1lPnxJPHVpZD5bQjw6Pkk8Z3JvdXA+fEk8Z2lkPl0iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxOTUKK21zZ2lkICIiCisiQ2hhbmdlIHRvIHRoaXMgdXNlcm5hbWUvdWlkIGJlZm9yZSBzdGFydGluZyB0aGUgcHJvY2Vzcy4gWW91IGNhbiBhbHNvICIKKyJzcGVjaWZ5IGEgZ3JvdXAgYnkgYXBwZW5kaW5nIGEgQjw6PiwgdGhlbiB0aGUgZ3JvdXAgb3IgZ2lkIGluIHRoZSBzYW1lIHdheSAiCisiYXMgeW91IHdvdWxkIGZvciB0aGUgYGNob3duJyBjb21tYW5kIChJPHVzZXI+Qjw6Pkk8Z3JvdXA+KS4gIElmIGEgdXNlciBpcyAiCisic3BlY2lmaWVkIHdpdGhvdXQgYSBncm91cCwgdGhlIHByaW1hcnkgR0lEIGZvciB0aGF0IHVzZXIgaXMgdXNlZC4gIFdoZW4gIgorInVzaW5nIHRoaXMgb3B0aW9uIHlvdSBtdXN0IHJlYWxpemUgdGhhdCB0aGUgcHJpbWFyeSBhbmQgc3VwcGxlbWVudGFsIGdyb3VwcyAiCisiYXJlIHNldCBhcyB3ZWxsLCBldmVuIGlmIHRoZSBCPC0tZ3JvdXA+IG9wdGlvbiBpcyBub3Qgc3BlY2lmaWVkLiBUaGUgIgorIkI8LS1ncm91cD4gb3B0aW9uIGlzIG9ubHkgZm9yIGdyb3VwcyB0aGF0IHRoZSB1c2VyIGlzbid0IG5vcm1hbGx5IGEgbWVtYmVyICIKKyJvZiAobGlrZSBhZGRpbmcgcGVyIHByb2Nlc3MgZ3JvdXAgbWVtYmVyc2hpcCBmb3IgZ2VuZXJpYyB1c2VycyBsaWtlICIKKyJCPG5vYm9keT4pLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxOTUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1yPiwgQjwtLWNocm9vdD4gSTxyb290PiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjIwMQorbXNnaWQgIiIKKyJDaGRpciBhbmQgY2hyb290IHRvIEk8cm9vdD4gYmVmb3JlIHN0YXJ0aW5nIHRoZSBwcm9jZXNzLiBQbGVhc2Ugbm90ZSB0aGF0ICIKKyJ0aGUgcGlkZmlsZSBpcyBhbHNvIHdyaXR0ZW4gYWZ0ZXIgdGhlIGNocm9vdC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjAxCisjLCBuby13cmFwCittc2dpZCAiQjwtZD4sIEI8LS1jaGRpcj4gSTxwYXRoPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjIwOQorbXNnaWQgIiIKKyJDaGRpciB0byBJPHBhdGg+IGJlZm9yZSBzdGFydGluZyB0aGUgcHJvY2Vzcy4gVGhpcyBpcyBkb25lIGFmdGVyIHRoZSBjaHJvb3QgIgorImlmIHRoZSBCPC1yPnxCPC0tY2hyb290PiBvcHRpb24gaXMgc2V0LiBXaGVuIG5vdCBzcGVjaWZpZWQsICIKKyJzdGFydC1zdG9wLWRhZW1vbiB3aWxsIGNoZGlyIHRvIHRoZSByb290IGRpcmVjdG9yeSBiZWZvcmUgc3RhcnRpbmcgdGhlICIKKyJwcm9jZXNzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyMDkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1iPiwgQjwtLWJhY2tncm91bmQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjIxCittc2dpZCAiIgorIlR5cGljYWxseSB1c2VkIHdpdGggcHJvZ3JhbXMgdGhhdCBkb24ndCBkZXRhY2ggb24gdGhlaXIgb3duLiBUaGlzIG9wdGlvbiAiCisid2lsbCBmb3JjZSBCPHN0YXJ0LXN0b3AtZGFlbW9uPiB0byBmb3JrIGJlZm9yZSBzdGFydGluZyB0aGUgcHJvY2VzcywgYW5kICIKKyJmb3JjZSBpdCBpbnRvIHRoZSBiYWNrZ3JvdW5kLiAgQjxXQVJOSU5HOiBzdGFydC1zdG9wLWRhZW1vbj4gY2Fubm90IGNoZWNrICIKKyJ0aGUgZXhpdCBzdGF0dXMgaWYgdGhlIHByb2Nlc3MgZmFpbHMgdG8gZXhlY3V0ZSBmb3IgQjxhbnk+IHJlYXNvbi4gVGhpcyBpcyBhICIKKyJsYXN0IHJlc29ydCwgYW5kIGlzIG9ubHkgbWVhbnQgZm9yIHByb2dyYW1zIHRoYXQgZWl0aGVyIG1ha2Ugbm8gc2Vuc2UgIgorImZvcmtpbmcgb24gdGhlaXIgb3duLCBvciB3aGVyZSBpdCdzIG5vdCBmZWFzaWJsZSB0byBhZGQgdGhlIGNvZGUgZm9yIHRoZW0gdG8gIgorImRvIHRoaXMgdGhlbXNlbHZlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjIxCisjLCBuby13cmFwCittc2dpZCAiQjwtTj4sIEI8LS1uaWNlbGV2ZWw+IEk8aW50PiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjIyNAorbXNnaWQgIlRoaXMgYWx0ZXJzIHRoZSBwcmlvcml0eSBvZiB0aGUgcHJvY2VzcyBiZWZvcmUgc3RhcnRpbmcgaXQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjIyNAorIywgbm8td3JhcAorbXNnaWQgIkI8LVA+LCBCPC0tcHJvY3NjaGVkPiBJPHBvbGljeT5CPDo+STxwcmlvcml0eT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyMzAKK21zZ2lkICIiCisiVGhpcyBhbHRlcnMgdGhlIHByb2Nlc3Mgc2NoZWR1bGVyIHBvbGljeSBhbmQgcHJpb3JpdHkgb2YgdGhlIHByb2Nlc3MgYmVmb3JlICIKKyJzdGFydGluZyBpdC4gVGhlIHByaW9yaXR5IGNhbiBiZSBvcHRpb25hbGx5IHNwZWNpZmllZCBieSBhcHBlbmRpbmcgYSBCPDo+ICIKKyJmb2xsb3dlZCBieSB0aGUgdmFsdWUuIFRoZSBkZWZhdWx0IEk8cHJpb3JpdHk+IGlzIDAuIFRoZSBjdXJyZW50bHkgc3VwcG9ydGVkICIKKyJwb2xpY3kgdmFsdWVzIGFyZSBCPG90aGVyPiwgQjxmaWZvPiBhbmQgQjxycj4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjIzMAorIywgbm8td3JhcAorbXNnaWQgIkI8LUk+LCBCPC0taW9zY2hlZD4gSTxjbGFzcz5CPDo+STxwcmlvcml0eT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyMzcKK21zZ2lkICIiCisiVGhpcyBhbHRlcnMgdGhlIElPIHNjaGVkdWxlciBjbGFzcyBhbmQgcHJpb3JpdHkgb2YgdGhlIHByb2Nlc3MgYmVmb3JlICIKKyJzdGFydGluZyBpdC4gVGhlIHByaW9yaXR5IGNhbiBiZSBvcHRpb25hbGx5IHNwZWNpZmllZCBieSBhcHBlbmRpbmcgYSBCPDo+ICIKKyJmb2xsb3dlZCBieSB0aGUgdmFsdWUuIFRoZSBkZWZhdWx0IEk8cHJpb3JpdHk+IGlzIDQsIHVubGVzcyBJPGNsYXNzPiBpcyAiCisiQjxpZGxlPiwgdGhlbiBJPHByaW9yaXR5PiB3aWxsIGFsd2F5cyBiZSA3LiBUaGUgY3VycmVudGx5IHN1cHBvcnRlZCB2YWx1ZXMgIgorImZvciBJPGNsYXNzPiBhcmUgQjxpZGxlPiwgQjxiZXN0LWVmZm9ydD4gYW5kIEI8cmVhbC10aW1lPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjM3CisjLCBuby13cmFwCittc2dpZCAiQjwtaz4sIEI8LS11bWFzaz4gSTxtYXNrPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjI0MAorbXNnaWQgIlRoaXMgc2V0cyB0aGUgdW1hc2sgb2YgdGhlIHByb2Nlc3MgYmVmb3JlIHN0YXJ0aW5nIGl0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyNDAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1tPiwgQjwtLW1ha2UtcGlkZmlsZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyNTUKK21zZ2lkICIiCisiVXNlZCB3aGVuIHN0YXJ0aW5nIGEgcHJvZ3JhbSB0aGF0IGRvZXMgbm90IGNyZWF0ZSBpdHMgb3duIHBpZCBmaWxlLiBUaGlzICIKKyJvcHRpb24gd2lsbCBtYWtlIEI8c3RhcnQtc3RvcC1kYWVtb24+IGNyZWF0ZSB0aGUgZmlsZSByZWZlcmVuY2VkIHdpdGggIgorIkI8LS1waWRmaWxlPiBhbmQgcGxhY2UgdGhlIHBpZCBpbnRvIGl0IGp1c3QgYmVmb3JlIGV4ZWN1dGluZyB0aGUgIgorInByb2Nlc3MuIE5vdGUsIHRoZSBmaWxlIHdpbGwgbm90IGJlIHJlbW92ZWQgd2hlbiBzdG9wcGluZyB0aGUgcHJvZ3JhbS4gICIKKyJCPE5PVEU6PiBUaGlzIGZlYXR1cmUgbWF5IG5vdCB3b3JrIGluIGFsbCBjYXNlcy4gTW9zdCBub3RhYmx5IHdoZW4gdGhlICIKKyJwcm9ncmFtIGJlaW5nIGV4ZWN1dGVkIGZvcmtzIGZyb20gaXRzIG1haW4gcHJvY2Vzcy4gQmVjYXVzZSBvZiB0aGlzLCBpdCBpcyAiCisidXN1YWxseSBvbmx5IHVzZWZ1bCB3aGVuIGNvbWJpbmVkIHdpdGggdGhlIEI8LS1iYWNrZ3JvdW5kPiBvcHRpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjU4Cittc2dpZCAiUHJpbnQgdmVyYm9zZSBpbmZvcm1hdGlvbmFsIG1lc3NhZ2VzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjI3MAorbXNnaWQgIiIKKyJUaGUgcmVxdWVzdGVkIGFjdGlvbiB3YXMgcGVyZm9ybWVkLiBJZiBCPC0tb2tub2RvPiB3YXMgc3BlY2lmaWVkLCBpdCdzIGFsc28gIgorInBvc3NpYmxlIHRoYXQgbm90aGluZyBoYWQgdG8gYmUgZG9uZS4gIFRoaXMgY2FuIGhhcHBlbiB3aGVuIEI8LS1zdGFydD4gd2FzICIKKyJzcGVjaWZpZWQgYW5kIGEgbWF0Y2hpbmcgcHJvY2VzcyB3YXMgYWxyZWFkeSBydW5uaW5nLCBvciB3aGVuIEI8LS1zdG9wPiB3YXMgIgorInNwZWNpZmllZCBhbmQgdGhlcmUgd2VyZSBubyBtYXRjaGluZyBwcm9jZXNzZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6Mjc1Cittc2dpZCAiSWYgQjwtLW9rbm9kbz4gd2FzIG5vdCBzcGVjaWZpZWQgYW5kIG5vdGhpbmcgd2FzIGRvbmUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjgzCittc2dpZCAiIgorIklmIEI8LS1zdG9wPiBhbmQgQjwtLXJldHJ5PiB3ZXJlIHNwZWNpZmllZCwgYnV0IHRoZSBlbmQgb2YgdGhlIHNjaGVkdWxlIHdhcyAiCisicmVhY2hlZCBhbmQgdGhlIHByb2Nlc3NlcyB3ZXJlIHN0aWxsIHJ1bm5pbmcuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjI4MyBzdGFydC1zdG9wLWRhZW1vbi44OjI5NQorIywgbm8td3JhcAorbXNnaWQgIkI8Mz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyODYKK21zZ2lkICJBbnkgb3RoZXIgZXJyb3IuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6Mjg5Cittc2dpZCAiV2hlbiB1c2luZyB0aGUgQjwtLXN0YXR1cz4gY29tbWFuZCwgdGhlIGZvbGxvd2luZyBzdGF0dXMgY29kZXMgYXJlIHJldHVybmVkOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjI5MgorbXNnaWQgIlByb2dyYW0gaXMgcnVubmluZy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyOTUKK21zZ2lkICJQcm9ncmFtIGlzIG5vdCBydW5uaW5nIGFuZCB0aGUgcGlkIGZpbGUgZXhpc3RzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjI5OAorbXNnaWQgIlByb2dyYW0gaXMgbm90IHJ1bm5pbmcuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjI5OAorIywgbm8td3JhcAorbXNnaWQgIkI8ND4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODozMDEKK21zZ2lkICJVbmFibGUgdG8gZGV0ZXJtaW5lIHByb2dyYW0gc3RhdHVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjMwNQorbXNnaWQgIiIKKyJTdGFydCB0aGUgQjxmb29kPiBkYWVtb24sIHVubGVzcyBvbmUgaXMgYWxyZWFkeSBydW5uaW5nIChhIHByb2Nlc3MgbmFtZWQgIgorImZvb2QsIHJ1bm5pbmcgYXMgdXNlciBmb29kLCB3aXRoIHBpZCBpbiBmb29kLnBpZCk6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MzA4CisjLCBuby13cmFwCittc2dpZCAiIgorInN0YXJ0LXN0b3AtZGFlbW9uIC0tc3RhcnQgLS1va25vZG8gLS11c2VyIGZvb2QgLS1uYW1lIGZvb2QgLS1waWRmaWxlICIKKyIvdmFyL3J1bi9mb29kLnBpZCAtLXN0YXJ0YXMgL3Vzci9zYmluL2Zvb2QgLS1jaHVpZCBmb29kIC0tIC0tZGFlbW9uXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODozMTEKK21zZ2lkICJTZW5kIEI8U0lHVEVSTT4gdG8gQjxmb29kPiBhbmQgd2FpdCB1cCB0byA1IHNlY29uZHMgZm9yIGl0IHRvIHN0b3A6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MzE0CisjLCBuby13cmFwCittc2dpZCAiIgorInN0YXJ0LXN0b3AtZGFlbW9uIC0tc3RvcCAtLW9rbm9kbyAtLXVzZXIgZm9vZCAtLW5hbWUgZm9vZCAtLXBpZGZpbGUgIgorIi92YXIvcnVuL2Zvb2QucGlkIC0tcmV0cnkgNVxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MzE3Cittc2dpZCAiRGVtb25zdHJhdGlvbiBvZiBhIGN1c3RvbSBzY2hlZHVsZSBmb3Igc3RvcHBpbmcgQjxmb29kPjoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODozMjAKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisic3RhcnQtc3RvcC1kYWVtb24gLS1zdG9wIC0tb2tub2RvIC0tdXNlciBmb29kIC0tbmFtZSBmb29kIC0tcGlkZmlsZSAiCisiL3Zhci9ydW4vZm9vZC5waWQgLS1yZXRyeT1URVJNLzMwL0tJTEwvNVxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MzI2Cittc2dpZCAiIgorIk1hcmVrIE1pY2hhbGtpZXdpY3ogRTxsdD5tYXJla21AaTE3bGludXhiLmlzdHMucHdyLndyb2MucGxFPGd0PiBiYXNlZCBvbiBhICIKKyJwcmV2aW91cyB2ZXJzaW9uIGJ5IElhbiBKYWNrc29uIEU8bHQ+aWFuQGNoaWFyay5ncmVlbmVuZC5vcmcudWtFPGd0Pi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODozMjgKK21zZ2lkICIiCisiTWFudWFsIHBhZ2UgYnkgS2xlZSBEaWVuZXMgRTxsdD5rbGVlQG1pdC5lZHVFPGd0PiwgcGFydGlhbGx5IHJlZm9ybWF0dGVkIGJ5ICIKKyJJYW4gSmFja3Nvbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVEgKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo4CisjLCBuby13cmFwCittc2dpZCAidXBkYXRlLWFsdGVybmF0aXZlcyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTEKK21zZ2lkICJ1cGRhdGUtYWx0ZXJuYXRpdmVzIC0gbWFpbnRhaW4gc3ltYm9saWMgbGlua3MgZGV0ZXJtaW5pbmcgZGVmYXVsdCBjb21tYW5kcyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTUKK21zZ2lkICJCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IFtJPG9wdGlvbj4uLi5dIEk8Y29tbWFuZD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjIwCittc2dpZCAiIgorIkI8dXBkYXRlLWFsdGVybmF0aXZlcz4gY3JlYXRlcywgcmVtb3ZlcywgbWFpbnRhaW5zIGFuZCBkaXNwbGF5cyBpbmZvcm1hdGlvbiAiCisiYWJvdXQgdGhlIHN5bWJvbGljIGxpbmtzIGNvbXByaXNpbmcgdGhlIERlYmlhbiBhbHRlcm5hdGl2ZXMgc3lzdGVtLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjgKK21zZ2lkICIiCisiSXQgaXMgcG9zc2libGUgZm9yIHNldmVyYWwgcHJvZ3JhbXMgZnVsZmlsbGluZyB0aGUgc2FtZSBvciBzaW1pbGFyIGZ1bmN0aW9ucyAiCisidG8gYmUgaW5zdGFsbGVkIG9uIGEgc2luZ2xlIHN5c3RlbSBhdCB0aGUgc2FtZSB0aW1lLiAgRm9yIGV4YW1wbGUsIG1hbnkgIgorInN5c3RlbXMgaGF2ZSBzZXZlcmFsIHRleHQgZWRpdG9ycyBpbnN0YWxsZWQgYXQgb25jZS4gIFRoaXMgZ2l2ZXMgY2hvaWNlIHRvICIKKyJ0aGUgdXNlcnMgb2YgYSBzeXN0ZW0sIGFsbG93aW5nIGVhY2ggdG8gdXNlIGEgZGlmZmVyZW50IGVkaXRvciwgaWYgZGVzaXJlZCwgIgorImJ1dCBtYWtlcyBpdCBkaWZmaWN1bHQgZm9yIGEgcHJvZ3JhbSB0byBtYWtlIGEgZ29vZCBjaG9pY2UgZm9yIGFuIGVkaXRvciB0byAiCisiaW52b2tlIGlmIHRoZSB1c2VyIGhhcyBub3Qgc3BlY2lmaWVkIGEgcGFydGljdWxhciBwcmVmZXJlbmNlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NTAKK21zZ2lkICIiCisiRGViaWFuJ3MgYWx0ZXJuYXRpdmVzIHN5c3RlbSBhaW1zIHRvIHNvbHZlIHRoaXMgcHJvYmxlbS4gIEEgZ2VuZXJpYyBuYW1lIGluICIKKyJ0aGUgZmlsZXN5c3RlbSBpcyBzaGFyZWQgYnkgYWxsIGZpbGVzIHByb3ZpZGluZyBpbnRlcmNoYW5nZWFibGUgIgorImZ1bmN0aW9uYWxpdHkuICBUaGUgYWx0ZXJuYXRpdmVzIHN5c3RlbSBhbmQgdGhlIHN5c3RlbSBhZG1pbmlzdHJhdG9yICIKKyJ0b2dldGhlciBkZXRlcm1pbmUgd2hpY2ggYWN0dWFsIGZpbGUgaXMgcmVmZXJlbmNlZCBieSB0aGlzIGdlbmVyaWMgbmFtZS4gICIKKyJGb3IgZXhhbXBsZSwgaWYgdGhlIHRleHQgZWRpdG9ycyBCPGVkPigxKSAgYW5kIEI8bnZpPigxKSAgYXJlIGJvdGggaW5zdGFsbGVkICIKKyJvbiB0aGUgc3lzdGVtLCB0aGUgYWx0ZXJuYXRpdmVzIHN5c3RlbSB3aWxsIGNhdXNlIHRoZSBnZW5lcmljIG5hbWUgIgorIkk8L3Vzci9iaW4vZWRpdG9yPiB0byByZWZlciB0byBJPC91c3IvYmluL252aT4gYnkgZGVmYXVsdC4gVGhlIHN5c3RlbSAiCisiYWRtaW5pc3RyYXRvciBjYW4gb3ZlcnJpZGUgdGhpcyBhbmQgY2F1c2UgaXQgdG8gcmVmZXIgdG8gSTwvdXNyL2Jpbi9lZD4gIgorImluc3RlYWQsIGFuZCB0aGUgYWx0ZXJuYXRpdmVzIHN5c3RlbSB3aWxsIG5vdCBhbHRlciB0aGlzIHNldHRpbmcgdW50aWwgIgorImV4cGxpY2l0bHkgcmVxdWVzdGVkIHRvIGRvIHNvLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NjAKK21zZ2lkICIiCisiVGhlIGdlbmVyaWMgbmFtZSBpcyBub3QgYSBkaXJlY3Qgc3ltYm9saWMgbGluayB0byB0aGUgc2VsZWN0ZWQgYWx0ZXJuYXRpdmUuICAiCisiSW5zdGVhZCwgaXQgaXMgYSBzeW1ib2xpYyBsaW5rIHRvIGEgbmFtZSBpbiB0aGUgSTxhbHRlcm5hdGl2ZXM+ICIKKyJJPGRpcmVjdG9yeT4sIHdoaWNoIGluIHR1cm4gaXMgYSBzeW1ib2xpYyBsaW5rIHRvIHRoZSBhY3R1YWwgZmlsZSAiCisicmVmZXJlbmNlZC4gIFRoaXMgaXMgZG9uZSBzbyB0aGF0IHRoZSBzeXN0ZW0gYWRtaW5pc3RyYXRvcidzIGNoYW5nZXMgY2FuIGJlICIKKyJjb25maW5lZCB3aXRoaW4gdGhlIEk8L2V0Yz4gZGlyZWN0b3J5OiB0aGUgRkhTIChxLnYuKSBnaXZlcyByZWFzb25zIHdoeSB0aGlzICIKKyJpcyBhIEdvb2QgVGhpbmcuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo3MgorbXNnaWQgIiIKKyJXaGVuIGVhY2ggcGFja2FnZSBwcm92aWRpbmcgYSBmaWxlIHdpdGggYSBwYXJ0aWN1bGFyIGZ1bmN0aW9uYWxpdHkgaXMgIgorImluc3RhbGxlZCwgY2hhbmdlZCBvciByZW1vdmVkLCBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IGlzIGNhbGxlZCB0byB1cGRhdGUgIgorImluZm9ybWF0aW9uIGFib3V0IHRoYXQgZmlsZSBpbiB0aGUgYWx0ZXJuYXRpdmVzIHN5c3RlbS4gICIKKyJCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IGlzIHVzdWFsbHkgY2FsbGVkIGZyb20gdGhlIEI8cG9zdGluc3Q+IChjb25maWd1cmUpIG9yICIKKyJCPHByZXJtPiAoaW5zdGFsbCkgc2NyaXB0cyBpbiBEZWJpYW4gcGFja2FnZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo5MQorbXNnaWQgIiIKKyJJdCBpcyBvZnRlbiB1c2VmdWwgZm9yIGEgbnVtYmVyIG9mIGFsdGVybmF0aXZlcyB0byBiZSBzeW5jaHJvbmlzZWQsIHNvIHRoYXQgIgorInRoZXkgYXJlIGNoYW5nZWQgYXMgYSBncm91cDsgZm9yIGV4YW1wbGUsIHdoZW4gc2V2ZXJhbCB2ZXJzaW9ucyBvZiB0aGUgIgorIkI8dmk+KDEpICBlZGl0b3IgYXJlIGluc3RhbGxlZCwgdGhlIG1hbiBwYWdlIHJlZmVyZW5jZWQgYnkgIgorIkk8L3Vzci9zaGFyZS9tYW4vbWFuMS92aS4xPiBzaG91bGQgY29ycmVzcG9uZCB0byB0aGUgZXhlY3V0YWJsZSByZWZlcmVuY2VkICIKKyJieSBJPC91c3IvYmluL3ZpPi4gIEI8dXBkYXRlLWFsdGVybmF0aXZlcz4gaGFuZGxlcyB0aGlzIGJ5IG1lYW5zIG9mICIKKyJJPG1hc3Rlcj4gYW5kIEk8c2xhdmU+IGxpbmtzOyB3aGVuIHRoZSBtYXN0ZXIgaXMgY2hhbmdlZCwgYW55IGFzc29jaWF0ZWQgIgorInNsYXZlcyBhcmUgY2hhbmdlZCB0b28uICBBIG1hc3RlciBsaW5rIGFuZCBpdHMgYXNzb2NpYXRlZCBzbGF2ZXMgbWFrZSB1cCBhICIKKyJJPGxpbms+IEk8Z3JvdXA+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTAwCittc2dpZCAiIgorIkVhY2ggbGluayBncm91cCBpcywgYXQgYW55IGdpdmVuIHRpbWUsIGluIG9uZSBvZiB0d28gbW9kZXM6IGF1dG9tYXRpYyBvciAiCisibWFudWFsLiAgV2hlbiBhIGdyb3VwIGlzIGluIGF1dG9tYXRpYyBtb2RlLCB0aGUgYWx0ZXJuYXRpdmVzIHN5c3RlbSB3aWxsICIKKyJhdXRvbWF0aWNhbGx5IGRlY2lkZSwgYXMgcGFja2FnZXMgYXJlIGluc3RhbGxlZCBhbmQgcmVtb3ZlZCwgd2hldGhlciBhbmQgaG93ICIKKyJ0byB1cGRhdGUgdGhlIGxpbmtzLiAgSW4gbWFudWFsIG1vZGUsIHRoZSBhbHRlcm5hdGl2ZXMgc3lzdGVtIHdpbGwgcmV0YWluICIKKyJ0aGUgY2hvaWNlIG9mIHRoZSBhZG1pbmlzdHJhdG9yIGFuZCBhdm9pZCBjaGFuZ2luZyB0aGUgbGlua3MgKGV4Y2VwdCB3aGVuICIKKyJzb21ldGhpbmcgaXMgYnJva2VuKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjEwOQorbXNnaWQgIiIKKyJMaW5rIGdyb3VwcyBhcmUgaW4gYXV0b21hdGljIG1vZGUgd2hlbiB0aGV5IGFyZSBmaXJzdCBpbnRyb2R1Y2VkIHRvIHRoZSAiCisic3lzdGVtLiAgSWYgdGhlIHN5c3RlbSBhZG1pbmlzdHJhdG9yIG1ha2VzIGNoYW5nZXMgdG8gdGhlIHN5c3RlbSdzIGF1dG9tYXRpYyAiCisic2V0dGluZ3MsIHRoaXMgd2lsbCBiZSBub3RpY2VkIHRoZSBuZXh0IHRpbWUgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBpcyBydW4gIgorIm9uIHRoZSBjaGFuZ2VkIGxpbmsncyBncm91cCwgYW5kIHRoZSBncm91cCB3aWxsIGF1dG9tYXRpY2FsbHkgYmUgc3dpdGNoZWQgdG8gIgorIm1hbnVhbCBtb2RlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTE2Cittc2dpZCAiIgorIkVhY2ggYWx0ZXJuYXRpdmUgaGFzIGEgSTxwcmlvcml0eT4gYXNzb2NpYXRlZCB3aXRoIGl0LiAgV2hlbiBhIGxpbmsgZ3JvdXAgaXMgIgorImluIGF1dG9tYXRpYyBtb2RlLCB0aGUgYWx0ZXJuYXRpdmVzIHBvaW50ZWQgdG8gYnkgbWVtYmVycyBvZiB0aGUgZ3JvdXAgd2lsbCAiCisiYmUgdGhvc2Ugd2hpY2ggaGF2ZSB0aGUgaGlnaGVzdCBwcmlvcml0eS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjEzMworbXNnaWQgIiIKKyJXaGVuIHVzaW5nIHRoZSBCPC0tY29uZmlnPiBvcHRpb24sIEI8dXBkYXRlLWFsdGVybmF0aXZlcz4gd2lsbCBsaXN0IGFsbCBvZiAiCisidGhlIGNob2ljZXMgZm9yIHRoZSBsaW5rIGdyb3VwIG9mIHdoaWNoIGdpdmVuIEk8bmFtZT4gaXMgdGhlIG1hc3RlciAiCisiYWx0ZXJuYXRpdmUgbmFtZS4gVGhlIGN1cnJlbnQgY2hvaWNlIGlzIG1hcmtlZCB3aXRoIGEgJyonLiAgWW91IHdpbGwgdGhlbiBiZSAiCisicHJvbXB0ZWQgZm9yIHlvdXIgY2hvaWNlIHJlZ2FyZGluZyB0aGlzIGxpbmsgZ3JvdXAuICBEZXBlbmRpbmcgb24gdGhlIGNob2ljZSAiCisibWFkZSwgdGhlIGxpbmsgZ3JvdXAgbWlnaHQgbm8gbG9uZ2VyIGJlIGluIEk8YXV0bz4gbW9kZS4gWW91IHdpbGwgbmVlZCB0byAiCisidXNlIHRoZSBCPC0tYXV0bz4gb3B0aW9uIGluIG9yZGVyIHRvIHJldHVybiB0byB0aGUgYXV0b21hdGljIG1vZGUgKG9yIHlvdSAiCisiY2FuIHJlcnVuIEI8LS1jb25maWc+IGFuZCBzZWxlY3QgdGhlIGVudHJ5IG1hcmtlZCBhcyBhdXRvbWF0aWMpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTM3Cittc2dpZCAiIgorIklmIHlvdSB3YW50IHRvIGNvbmZpZ3VyZSBub24taW50ZXJhY3RpdmVseSB5b3UgY2FuIHVzZSB0aGUgQjwtLXNldD4gb3B0aW9uICIKKyJpbnN0ZWFkIChzZWUgYmVsb3cpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTQ4Cittc2dpZCAiIgorIkRpZmZlcmVudCBwYWNrYWdlcyBwcm92aWRpbmcgdGhlIHNhbWUgZmlsZSBuZWVkIHRvIGRvIHNvIEI8Y29vcGVyYXRpdmVseT4uICAiCisiSW4gb3RoZXIgd29yZHMsIHRoZSB1c2FnZSBvZiBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IGlzIEI8bWFuZGF0b3J5PiBmb3IgYWxsICIKKyJpbnZvbHZlZCBwYWNrYWdlcyBpbiBzdWNoIGNhc2UuIEl0IGlzIG5vdCBwb3NzaWJsZSB0byBvdmVycmlkZSBzb21lIGZpbGUgaW4gIgorImEgcGFja2FnZSB0aGF0IGRvZXMgbm90IGVtcGxveSB0aGUgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBtZWNoYW5pc20uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTQ5CisjLCBuby13cmFwCittc2dpZCAiVEVSTUlOT0xPR1kiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE1NAorbXNnaWQgIiIKKyJTaW5jZSB0aGUgYWN0aXZpdGllcyBvZiBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IGFyZSBxdWl0ZSBpbnZvbHZlZCwgc29tZSAiCisic3BlY2lmaWMgdGVybXMgd2lsbCBoZWxwIHRvIGV4cGxhaW4gaXRzIG9wZXJhdGlvbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNTQKKyMsIG5vLXdyYXAKK21zZ2lkICJnZW5lcmljIG5hbWUgKG9yIGFsdGVybmF0aXZlIGxpbmspIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNjAKK21zZ2lkICIiCisiQSBuYW1lLCBsaWtlIEk8L3Vzci9iaW4vZWRpdG9yPiwgd2hpY2ggcmVmZXJzLCB2aWEgdGhlIGFsdGVybmF0aXZlcyBzeXN0ZW0sICIKKyJ0byBvbmUgb2YgYSBudW1iZXIgb2YgZmlsZXMgb2Ygc2ltaWxhciBmdW5jdGlvbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNjAKKyMsIG5vLXdyYXAKK21zZ2lkICJhbHRlcm5hdGl2ZSBuYW1lIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNjMKK21zZ2lkICJUaGUgbmFtZSBvZiBhIHN5bWJvbGljIGxpbmsgaW4gdGhlIGFsdGVybmF0aXZlcyBkaXJlY3RvcnkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTYzCisjLCBuby13cmFwCittc2dpZCAiYWx0ZXJuYXRpdmUgKG9yIGFsdGVybmF0aXZlIHBhdGgpIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNjcKK21zZ2lkICIiCisiVGhlIG5hbWUgb2YgYSBzcGVjaWZpYyBmaWxlIGluIHRoZSBmaWxlc3lzdGVtLCB3aGljaCBtYXkgYmUgbWFkZSBhY2Nlc3NpYmxlICIKKyJ2aWEgYSBnZW5lcmljIG5hbWUgdXNpbmcgdGhlIGFsdGVybmF0aXZlcyBzeXN0ZW0uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTY3CisjLCBuby13cmFwCittc2dpZCAiYWx0ZXJuYXRpdmVzIGRpcmVjdG9yeSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTcyCittc2dpZCAiQSBkaXJlY3RvcnksIGJ5IGRlZmF1bHQgSTwvZXRjL2FsdGVybmF0aXZlcz4sIGNvbnRhaW5pbmcgdGhlIHN5bWxpbmtzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE3MgorIywgbm8td3JhcAorbXNnaWQgImFkbWluaXN0cmF0aXZlIGRpcmVjdG9yeSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTc5Cittc2dpZCAiIgorIkEgZGlyZWN0b3J5LCBieSBkZWZhdWx0IEk8L3Zhci9saWIvZHBrZy9hbHRlcm5hdGl2ZXM+LCBjb250YWluaW5nICIKKyJCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+JyBzdGF0ZSBpbmZvcm1hdGlvbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNzkKKyMsIG5vLXdyYXAKK21zZ2lkICJsaW5rIGdyb3VwIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxODIKK21zZ2lkICJBIHNldCBvZiByZWxhdGVkIHN5bWxpbmtzLCBpbnRlbmRlZCB0byBiZSB1cGRhdGVkIGFzIGEgZ3JvdXAuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTgyCisjLCBuby13cmFwCittc2dpZCAibWFzdGVyIGxpbmsiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE4NgorbXNnaWQgIiIKKyJUaGUgYWx0ZXJuYXRpdmUgbGluayBpbiBhIGxpbmsgZ3JvdXAgd2hpY2ggZGV0ZXJtaW5lcyBob3cgdGhlIG90aGVyIGxpbmtzIGluICIKKyJ0aGUgZ3JvdXAgYXJlIGNvbmZpZ3VyZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTg2CisjLCBuby13cmFwCittc2dpZCAic2xhdmUgbGluayIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTkwCittc2dpZCAiIgorIkFuIGFsdGVybmF0aXZlIGxpbmsgaW4gYSBsaW5rIGdyb3VwIHdoaWNoIGlzIGNvbnRyb2xsZWQgYnkgdGhlIHNldHRpbmcgb2YgIgorInRoZSBtYXN0ZXIgbGluay4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxOTAKKyMsIG5vLXdyYXAKK21zZ2lkICJhdXRvbWF0aWMgbW9kZSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTk2Cittc2dpZCAiIgorIldoZW4gYSBsaW5rIGdyb3VwIGlzIGluIGF1dG9tYXRpYyBtb2RlLCB0aGUgYWx0ZXJuYXRpdmVzIHN5c3RlbSBlbnN1cmVzIHRoYXQgIgorInRoZSBsaW5rcyBpbiB0aGUgZ3JvdXAgcG9pbnQgdG8gdGhlIGhpZ2hlc3QgcHJpb3JpdHkgYWx0ZXJuYXRpdmUgYXBwcm9wcmlhdGUgIgorImZvciB0aGUgZ3JvdXAuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTk2CisjLCBuby13cmFwCittc2dpZCAibWFudWFsIG1vZGUiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjIwMQorbXNnaWQgIiIKKyJXaGVuIGEgbGluayBncm91cCBpcyBpbiBtYW51YWwgbW9kZSwgdGhlIGFsdGVybmF0aXZlcyBzeXN0ZW0gd2lsbCBub3QgbWFrZSAiCisiYW55IGNoYW5nZXMgdG8gdGhlIHN5c3RlbSBhZG1pbmlzdHJhdG9yJ3Mgc2V0dGluZ3MuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjAzCisjLCBuby13cmFwCittc2dpZCAiQjwtLWluc3RhbGw+IEk8bGluayBuYW1lIHBhdGggcHJpb3JpdHk+IFtCPC0tc2xhdmU+IEk8bGluayBuYW1lIHBhdGg+XS4uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjIyCittc2dpZCAiIgorIkFkZCBhIGdyb3VwIG9mIGFsdGVybmF0aXZlcyB0byB0aGUgc3lzdGVtLiAgSTxsaW5rPiBpcyB0aGUgZ2VuZXJpYyBuYW1lIGZvciAiCisidGhlIG1hc3RlciBsaW5rLCBJPG5hbWU+IGlzIHRoZSBuYW1lIG9mIGl0cyBzeW1saW5rIGluIHRoZSBhbHRlcm5hdGl2ZXMgIgorImRpcmVjdG9yeSwgYW5kIEk8cGF0aD4gaXMgdGhlIGFsdGVybmF0aXZlIGJlaW5nIGludHJvZHVjZWQgZm9yIHRoZSBtYXN0ZXIgIgorImxpbmsuICBUaGUgYXJndW1lbnRzIGFmdGVyIEI8LS1zbGF2ZT4gYXJlIHRoZSBnZW5lcmljIG5hbWUsIHN5bWxpbmsgbmFtZSBpbiAiCisidGhlIGFsdGVybmF0aXZlcyBkaXJlY3RvcnkgYW5kIHRoZSBhbHRlcm5hdGl2ZSBwYXRoIGZvciBhIHNsYXZlIGxpbmsuICBaZXJvICIKKyJvciBtb3JlIEI8LS1zbGF2ZT4gb3B0aW9ucywgZWFjaCBmb2xsb3dlZCBieSB0aHJlZSBhcmd1bWVudHMsIG1heSBiZSAiCisic3BlY2lmaWVkLiBOb3RlIHRoYXQgdGhlIG1hc3RlciBhbHRlcm5hdGl2ZSBtdXN0IGV4aXN0IG9yIHRoZSBjYWxsIHdpbGwgIgorImZhaWwuIEhvd2V2ZXIgaWYgYSBzbGF2ZSBhbHRlcm5hdGl2ZSBkb2Vzbid0IGV4aXN0LCB0aGUgY29ycmVzcG9uZGluZyBzbGF2ZSAiCisiYWx0ZXJuYXRpdmUgbGluayB3aWxsIHNpbXBseSBub3QgYmUgaW5zdGFsbGVkIChhIHdhcm5pbmcgd2lsbCBzdGlsbCBiZSAiCisiZGlzcGxheWVkKS4gSWYgc29tZSByZWFsIGZpbGUgaXMgaW5zdGFsbGVkIHdoZXJlIGFuIGFsdGVybmF0aXZlIGxpbmsgaGFzIHRvICIKKyJiZSBpbnN0YWxsZWQsIGl0IGlzIGtlcHQgdW5sZXNzIEI8LS1mb3JjZT4gaXMgdXNlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjIzMworbXNnaWQgIiIKKyJJZiB0aGUgYWx0ZXJuYXRpdmUgbmFtZSBzcGVjaWZpZWQgZXhpc3RzIGFscmVhZHkgaW4gdGhlIGFsdGVybmF0aXZlcyAiCisic3lzdGVtJ3MgcmVjb3JkcywgdGhlIGluZm9ybWF0aW9uIHN1cHBsaWVkIHdpbGwgYmUgYWRkZWQgYXMgYSBuZXcgc2V0IG9mICIKKyJhbHRlcm5hdGl2ZXMgZm9yIHRoZSBncm91cC4gIE90aGVyd2lzZSwgYSBuZXcgZ3JvdXAsIHNldCB0byBhdXRvbWF0aWMgbW9kZSwgIgorIndpbGwgYmUgYWRkZWQgd2l0aCB0aGlzIGluZm9ybWF0aW9uLiAgSWYgdGhlIGdyb3VwIGlzIGluIGF1dG9tYXRpYyBtb2RlLCBhbmQgIgorInRoZSBuZXdseSBhZGRlZCBhbHRlcm5hdGl2ZXMnIHByaW9yaXR5IGlzIGhpZ2hlciB0aGFuIGFueSBvdGhlciBpbnN0YWxsZWQgIgorImFsdGVybmF0aXZlcyBmb3IgdGhpcyBncm91cCwgdGhlIHN5bWxpbmtzIHdpbGwgYmUgdXBkYXRlZCB0byBwb2ludCB0byB0aGUgIgorIm5ld2x5IGFkZGVkIGFsdGVybmF0aXZlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyMzMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tc2V0PiBJPG5hbWUgcGF0aD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjI0MgorbXNnaWQgIiIKKyJTZXQgdGhlIHByb2dyYW0gSTxwYXRoPiBhcyBhbHRlcm5hdGl2ZSBmb3IgSTxuYW1lLj4gVGhpcyBpcyBlcXVpdmFsZW50IHRvICIKKyJCPC0tY29uZmlnPiBidXQgaXMgbm9uLWludGVyYWN0aXZlIGFuZCB0aHVzIHNjcmlwdGFibGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjQyCisjLCBuby13cmFwCittc2dpZCAiQjwtLXJlbW92ZT4gSTxuYW1lIHBhdGg+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyNjMKK21zZ2lkICIiCisiUmVtb3ZlIGFuIGFsdGVybmF0aXZlIGFuZCBhbGwgb2YgaXRzIGFzc29jaWF0ZWQgc2xhdmUgbGlua3MuICBJPG5hbWU+IGlzIGEgIgorIm5hbWUgaW4gdGhlIGFsdGVybmF0aXZlcyBkaXJlY3RvcnksIGFuZCBJPHBhdGg+IGlzIGFuIGFic29sdXRlIGZpbGVuYW1lIHRvICIKKyJ3aGljaCBJPG5hbWU+IGNvdWxkIGJlIGxpbmtlZC4gSWYgSTxuYW1lPiBpcyBpbmRlZWQgbGlua2VkIHRvIEk8cGF0aD4sICIKKyJJPG5hbWU+IHdpbGwgYmUgdXBkYXRlZCB0byBwb2ludCB0byBhbm90aGVyIGFwcHJvcHJpYXRlIGFsdGVybmF0aXZlIChhbmQgdGhlICIKKyJncm91cCBpcyBwdXQgYmFjayBpbiBhdXRvbWF0aWMgbW9kZSksIG9yIHJlbW92ZWQgaWYgdGhlcmUgaXMgbm8gc3VjaCAiCisiYWx0ZXJuYXRpdmUgbGVmdC4gIEFzc29jaWF0ZWQgc2xhdmUgbGlua3Mgd2lsbCBiZSB1cGRhdGVkIG9yIHJlbW92ZWQsICIKKyJjb3JyZXNwb25kaW5nbHkuICBJZiB0aGUgbGluayBpcyBub3QgY3VycmVudGx5IHBvaW50aW5nIHRvIEk8cGF0aD4sIG5vIGxpbmtzICIKKyJhcmUgY2hhbmdlZDsgb25seSB0aGUgaW5mb3JtYXRpb24gYWJvdXQgdGhlIGFsdGVybmF0aXZlIGlzIHJlbW92ZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjYzCisjLCBuby13cmFwCittc2dpZCAiQjwtLXJlbW92ZS1hbGw+IEk8bmFtZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjI2OAorbXNnaWQgIiIKKyJSZW1vdmUgYWxsIGFsdGVybmF0aXZlcyBhbmQgYWxsIG9mIHRoZWlyIGFzc29jaWF0ZWQgc2xhdmUgbGlua3MuICBJPG5hbWU+IGlzICIKKyJhIG5hbWUgaW4gdGhlIGFsdGVybmF0aXZlcyBkaXJlY3RvcnkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyNzUKK21zZ2lkICIiCisiQ2FsbCBCPC0tY29uZmlnPiBvbiBhbGwgYWx0ZXJuYXRpdmVzLiBJdCBjYW4gYmUgdXNlZnVsbHkgY29tYmluZWQgd2l0aCAiCisiQjwtLXNraXAtYXV0bz4gdG8gcmV2aWV3IGFuZCBjb25maWd1cmUgYWxsIGFsdGVybmF0aXZlcyB3aGljaCBhcmUgbm90ICIKKyJjb25maWd1cmVkIGluIGF1dG9tYXRpYyBtb2RlLiBCcm9rZW4gYWx0ZXJuYXRpdmVzIGFyZSBhbHNvIGRpc3BsYXllZC4gIFRodXMgIgorImEgc2ltcGxlIHdheSB0byBmaXggYWxsIGJyb2tlbiBhbHRlcm5hdGl2ZXMgaXMgdG8gY2FsbCBCPHllcyBcXFthcV1cXFthcV0gfCAiCisidXBkYXRlLWFsdGVybmF0aXZlcyAtLWZvcmNlIC0tYWxsPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyNzUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tYXV0bz4gSTxuYW1lPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjgyCittc2dpZCAiIgorIlN3aXRjaCB0aGUgbGluayBncm91cCBiZWhpbmQgdGhlIGFsdGVybmF0aXZlIGZvciBJPG5hbWU+IHRvIGF1dG9tYXRpYyBtb2RlLiAgIgorIkluIHRoZSBwcm9jZXNzLCB0aGUgbWFzdGVyIHN5bWxpbmsgYW5kIGl0cyBzbGF2ZXMgYXJlIHVwZGF0ZWQgdG8gcG9pbnQgdG8gIgorInRoZSBoaWdoZXN0IHByaW9yaXR5IGluc3RhbGxlZCBhbHRlcm5hdGl2ZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjgyCisjLCBuby13cmFwCittc2dpZCAiQjwtLWRpc3BsYXk+IEk8bmFtZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjI5MQorbXNnaWQgIiIKKyJEaXNwbGF5IGluZm9ybWF0aW9uIGFib3V0IHRoZSBsaW5rIGdyb3VwLiAgSW5mb3JtYXRpb24gZGlzcGxheWVkIGluY2x1ZGVzICIKKyJ0aGUgZ3JvdXAncyBtb2RlIChhdXRvIG9yIG1hbnVhbCksIHdoaWNoIGFsdGVybmF0aXZlIHRoZSBtYXN0ZXIgbGluayAiCisiY3VycmVudGx5IHBvaW50cyB0bywgd2hhdCBvdGhlciBhbHRlcm5hdGl2ZXMgYXJlIGF2YWlsYWJsZSAoYW5kIHRoZWlyICIKKyJjb3JyZXNwb25kaW5nIHNsYXZlIGFsdGVybmF0aXZlcyksIGFuZCB0aGUgaGlnaGVzdCBwcmlvcml0eSBhbHRlcm5hdGl2ZSAiCisiY3VycmVudGx5IGluc3RhbGxlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyOTEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tZ2V0LXNlbGVjdGlvbnM+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyOTkKK21zZ2lkICIiCisiTGlzdCBhbGwgbWFzdGVyIGFsdGVybmF0aXZlIG5hbWVzICh0aG9zZSBjb250cm9sbGluZyBhIGxpbmsgZ3JvdXApICBhbmQgIgorInRoZWlyIHN0YXR1cy4gRWFjaCBsaW5lIGNvbnRhaW5zIHVwIHRvIDMgZmllbGRzIChzZXBhcmF0ZWQgYnkgb25lIG9yIG1vcmUgIgorInNwYWNlcykuIFRoZSBmaXJzdCBmaWVsZCBpcyB0aGUgYWx0ZXJuYXRpdmUgbmFtZSwgdGhlIHNlY29uZCBvbmUgaXMgdGhlICIKKyJzdGF0dXMgKGVpdGhlciBcImF1dG9cIiBvciBcIm1hbnVhbFwiKSwgYW5kIHRoZSBsYXN0IG9uZSBjb250YWlucyB0aGUgIgorImN1cnJlbnQgY2hvaWNlIGluIHRoZSBhbHRlcm5hdGl2ZSAoYmV3YXJlOiBpdCdzIGEgZmlsZW5hbWUgYW5kIHRodXMgbWlnaHQgIgorImNvbnRhaW4gc3BhY2VzKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjMwNAorbXNnaWQgIiIKKyJSZWFkIGNvbmZpZ3VyYXRpb24gb2YgYWx0ZXJuYXRpdmVzIG9uIHN0YW5kYXJkIGlucHV0IGluIHRoZSBmb3JtYXQgZ2VuZXJhdGVkICIKKyJieSBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXMgLS1nZXQtc2VsZWN0aW9ucz4gYW5kIHJlY29uZmlndXJlIHRoZW0gYWNjb3JkaW5nbHkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzA0CisjLCBuby13cmFwCittc2dpZCAiQjwtLXF1ZXJ5PiBJPG5hbWU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMDkKK21zZ2lkICIiCisiRGlzcGxheSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgbGluayBncm91cCBsaWtlIC0tZGlzcGxheSBkb2VzLCBidXQgaW4gYSAiCisibWFjaGluZSBwYXJzZWFibGUgd2F5IChzZWUgc2VjdGlvbiBCPFFVRVJZIEZPUk1BVD4gYmVsb3cpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjMwOQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1saXN0PiBJPG5hbWU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMTIKK21zZ2lkICJEaXNwbGF5IGFsbCB0YXJnZXRzIG9mIHRoZSBsaW5rIGdyb3VwLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjMxMgorIywgbm8td3JhcAorbXNnaWQgIkI8LS1jb25maWc+IEk8bmFtZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjMxNgorbXNnaWQgIiIKKyJTaG93IGF2YWlsYWJsZSBhbHRlcm5hdGl2ZXMgZm9yIGEgbGluayBncm91cCBhbmQgYWxsb3cgdGhlIHVzZXIgdG8gIgorImludGVyYWN0aXZlbHkgc2VsZWN0IHdoaWNoIG9uZSB0byB1c2UuIFRoZSBsaW5rIGdyb3VwIGlzIHVwZGF0ZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzI0CisjLCBuby13cmFwCittc2dpZCAiQjwtLWFsdGRpcj5JPCBkaXJlY3Rvcnk+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMjgKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRoZSBhbHRlcm5hdGl2ZXMgZGlyZWN0b3J5LCB3aGVuIHRoaXMgaXMgdG8gYmUgZGlmZmVyZW50IGZyb20gdGhlICIKKyJkZWZhdWx0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzMyCittc2dpZCAiIgorIlNwZWNpZmllcyB0aGUgYWRtaW5pc3RyYXRpdmUgZGlyZWN0b3J5LCB3aGVuIHRoaXMgaXMgdG8gYmUgZGlmZmVyZW50IGZyb20gIgorInRoZSBkZWZhdWx0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjMzMgorIywgbm8td3JhcAorbXNnaWQgIkI8LS1sb2c+STwgZmlsZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjMzNgorbXNnaWQgIiIKKyJTcGVjaWZpZXMgdGhlIGxvZyBmaWxlLCB3aGVuIHRoaXMgaXMgdG8gYmUgZGlmZmVyZW50IGZyb20gdGhlIGRlZmF1bHQgIgorIigvdmFyL2xvZy9hbHRlcm5hdGl2ZXMubG9nKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM0MAorbXNnaWQgIiIKKyJMZXQgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiByZXBsYWNlIG9yIGRyb3AgYW55IHJlYWwgZmlsZSB0aGF0IGlzIGluc3RhbGxlZCAiCisid2hlcmUgYW4gYWx0ZXJuYXRpdmUgbGluayBoYXMgdG8gYmUgaW5zdGFsbGVkIG9yIHJlbW92ZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzQwCisjLCBuby13cmFwCittc2dpZCAiQjwtLXNraXAtYXV0bz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM0NQorbXNnaWQgIiIKKyJTa2lwIGNvbmZpZ3VyYXRpb24gcHJvbXB0IGZvciBhbHRlcm5hdGl2ZXMgd2hpY2ggYXJlIHByb3Blcmx5IGNvbmZpZ3VyZWQgaW4gIgorImF1dG9tYXRpYyBtb2RlLiBUaGlzIG9wdGlvbiBpcyBvbmx5IHJlbGV2YW50IHdpdGggQjwtLWNvbmZpZz4gb3IgQjwtLWFsbD4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzQ1CisjLCBuby13cmFwCittc2dpZCAiQjwtLXZlcmJvc2U+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozNTAKK21zZ2lkICJHZW5lcmF0ZSBtb3JlIGNvbW1lbnRzIGFib3V0IHdoYXQgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBpcyBkb2luZy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM1MworbXNnaWQgIkRvbid0IGdlbmVyYXRlIGFueSBjb21tZW50cyB1bmxlc3MgZXJyb3JzIG9jY3VyLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzU5Cittc2dpZCAiIgorIklmIHNldCBhbmQgdGhlIEI8LS1hZG1pbmRpcj4gb3B0aW9uIGhhcyBub3QgYmVlbiBzcGVjaWZpZWQsIGl0IHdpbGwgYmUgdXNlZCAiCisiYXMgdGhlIGJhc2UgYWRtaW5pc3RyYXRpdmUgZGlyZWN0b3J5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM2MQorIywgbm8td3JhcAorbXNnaWQgIkk8L2V0Yy9hbHRlcm5hdGl2ZXMvPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzY3Cittc2dpZCAiIgorIlRoZSBkZWZhdWx0IGFsdGVybmF0aXZlcyBkaXJlY3RvcnkuICBDYW4gYmUgb3ZlcnJpZGRlbiBieSB0aGUgQjwtLWFsdGRpcj4gIgorIm9wdGlvbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozNjcKKyMsIG5vLXdyYXAKK21zZ2lkICJJPC92YXIvbGliL2Rwa2cvYWx0ZXJuYXRpdmVzLz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM3MworbXNnaWQgIiIKKyJUaGUgZGVmYXVsdCBhZG1pbmlzdHJhdGlvbiBkaXJlY3RvcnkuICBDYW4gYmUgb3ZlcnJpZGRlbiBieSB0aGUgIgorIkI8LS1hZG1pbmRpcj4gb3B0aW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6Mzc4Cittc2dpZCAiVGhlIHJlcXVlc3RlZCBhY3Rpb24gd2FzIHN1Y2Nlc3NmdWxseSBwZXJmb3JtZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozODIKK21zZ2lkICIiCisiUHJvYmxlbXMgd2VyZSBlbmNvdW50ZXJlZCB3aGlsc3QgcGFyc2luZyB0aGUgY29tbWFuZCBsaW5lIG9yIHBlcmZvcm1pbmcgdGhlICIKKyJhY3Rpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzgzCisjLCBuby13cmFwCittc2dpZCAiUVVFUlkgRk9STUFUIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozODgKK21zZ2lkICIiCisiVGhlIEI8dXBkYXRlLWFsdGVybmF0aXZlcyAtLXF1ZXJ5PiBmb3JtYXQgaXMgdXNpbmcgYW4gUkZDODIyLWxpa2UgZmxhdCAiCisiZm9ybWF0LiBJdCdzIG1hZGUgb2YgSTxuPiArIDEgYmxvY2tzIHdoZXJlIEk8bj4gaXMgdGhlIG51bWJlciBvZiAiCisiYWx0ZXJuYXRpdmVzIGF2YWlsYWJsZSBpbiB0aGUgcXVlcmllZCBsaW5rIGdyb3VwLiBUaGUgZmlyc3QgYmxvY2sgY29udGFpbnMgIgorInRoZSBmb2xsb3dpbmcgZmllbGRzOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM4OAorIywgbm8td3JhcAorbXNnaWQgIkI8TGluazo+STwgbGluaz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM5MQorbXNnaWQgIlRoZSBnZW5lcmljIG5hbWUgb2YgdGhlIGFsdGVybmF0aXZlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM5MQorIywgbm8td3JhcAorbXNnaWQgIkI8U3RhdHVzOj5JPCBzdGF0dXM+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozOTQKK21zZ2lkICJUaGUgc3RhdHVzIG9mIHRoZSBhbHRlcm5hdGl2ZSAoQjxhdXRvPiBvciBCPG1hbnVhbD4pLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM5NAorIywgbm8td3JhcAorbXNnaWQgIkI8QmVzdDo+STwgYmVzdC1jaG9pY2U+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozOTgKK21zZ2lkICIiCisiVGhlIHBhdGggb2YgdGhlIGJlc3QgYWx0ZXJuYXRpdmUgZm9yIHRoaXMgbGluayBncm91cC4gTm90IHByZXNlbnQgaWYgdGhlcmUgIgorImlzIG5vIGFsdGVybmF0aXZlcyBhdmFpbGFibGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6Mzk4CisjLCBuby13cmFwCittc2dpZCAiQjxWYWx1ZTo+STwgY3VycmVudGx5LXNlbGVjdGVkLWFsdGVybmF0aXZlPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDAyCittc2dpZCAiIgorIlRoZSBwYXRoIG9mIHRoZSBjdXJyZW50bHkgc2VsZWN0ZWQgYWx0ZXJuYXRpdmUuIEl0IGNhbiBhbHNvIHRha2UgdGhlIG1hZ2ljICIKKyJ2YWx1ZSBCPG5vbmU+LiBJdCBpcyB1c2VkIGlmIHRoZSBsaW5rIGRvZXNuJ3QgZXhpc3QuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDAzCisjLCBuby13cmFwCittc2dpZCAiIgorIlRoZSBvdGhlciBibG9ja3MgZGVzY3JpYmUgdGhlIGF2YWlsYWJsZSBhbHRlcm5hdGl2ZXMgaW4gdGhlIHF1ZXJpZWQgbGluayAiCisiZ3JvdXA6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDA1CisjLCBuby13cmFwCittc2dpZCAiQjxBbHRlcm5hdGl2ZTo+STwgcGF0aC1vZi10aGlzLWFsdGVybmF0aXZlPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDA4Cittc2dpZCAiUGF0aCB0byB0aGlzIGJsb2NrJ3MgYWx0ZXJuYXRpdmUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDA4CisjLCBuby13cmFwCittc2dpZCAiQjxQcmlvcml0eTo+STwgcHJpb3JpdHktdmFsdWU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0MTEKK21zZ2lkICJWYWx1ZSBvZiB0aGUgcHJpb3JpdHkgb2YgdGhpcyBhbHRlcm5hdGl2ZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0MTEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPFNsYXZlczo+STwgbGlzdC1vZi1zbGF2ZXM+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0MTcKK21zZ2lkICIiCisiV2hlbiB0aGlzIGhlYWRlciBpcyBwcmVzZW50LCB0aGUgQjxuZXh0PiBsaW5lcyBob2xkIGFsbCBzbGF2ZSBhbHRlcm5hdGl2ZXMgIgorImFzc29jaWF0ZWQgdG8gdGhlIG1hc3RlciBsaW5rIG9mIHRoZSBhbHRlcm5hdGl2ZS4gVGhlcmUgaXMgb25lIHNsYXZlIHBlciAiCisibGluZS4gRWFjaCBsaW5lIGNvbnRhaW5zIG9uZSBzcGFjZSwgdGhlIGdlbmVyaWMgbmFtZSBvZiB0aGUgc2xhdmUgIgorImFsdGVybmF0aXZlLCBhbm90aGVyIHNwYWNlLCBhbmQgdGhlIHBhdGggdG8gdGhlIHNsYXZlIGFsdGVybmF0aXZlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQxOAorIywgbm8td3JhcAorbXNnaWQgIkI8RXhhbXBsZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQyNgorIywgbm8td3JhcAorbXNnaWQgIiIKKyIkIHVwZGF0ZS1hbHRlcm5hdGl2ZXMgLS1xdWVyeSBlZGl0b3JcbiIKKyJMaW5rOiBlZGl0b3JcbiIKKyJTdGF0dXM6IGF1dG9cbiIKKyJCZXN0OiAvdXNyL2Jpbi92aW0uZ3RrXG4iCisiVmFsdWU6IC91c3IvYmluL3ZpbS5ndGtcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDMxCisjLCBuby13cmFwCittc2dpZCAiIgorIkFsdGVybmF0aXZlOiAvYmluL2VkXG4iCisiUHJpb3JpdHk6IC0xMDBcbiIKKyJTbGF2ZXM6XG4iCisiIGVkaXRvci4xLmd6IC91c3Ivc2hhcmUvbWFuL21hbjEvZWQuMS5nelxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0NDYKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiQWx0ZXJuYXRpdmU6IC91c3IvYmluL3ZpbS5ndGtcbiIKKyJQcmlvcml0eTogNTBcbiIKKyJTbGF2ZXM6XG4iCisiIGVkaXRvci4xLmd6IC91c3Ivc2hhcmUvbWFuL21hbjEvdmltLjEuZ3pcbiIKKyIgZWRpdG9yLnJ1LjEuZ3ogL3Vzci9zaGFyZS9tYW4vcnUvbWFuMS92aW0uMS5nelxuIgorIiBlZGl0b3IucGwuSVNPODg1OS0yLjEuZ3ogL3Vzci9zaGFyZS9tYW4vcGwuSVNPODg1OS0yL21hbjEvdmltLjEuZ3pcbiIKKyIgZWRpdG9yLml0LklTTzg4NTktMS4xLmd6IC91c3Ivc2hhcmUvbWFuL2l0LklTTzg4NTktMS9tYW4xL3ZpbS4xLmd6XG4iCisiIGVkaXRvci5wbC5VVEYtOC4xLmd6IC91c3Ivc2hhcmUvbWFuL3BsLlVURi04L21hbjEvdmltLjEuZ3pcbiIKKyIgZWRpdG9yLml0LjEuZ3ogL3Vzci9zaGFyZS9tYW4vaXQvbWFuMS92aW0uMS5nelxuIgorIiBlZGl0b3IuZnIuVVRGLTguMS5neiAvdXNyL3NoYXJlL21hbi9mci5VVEYtOC9tYW4xL3ZpbS4xLmd6XG4iCisiIGVkaXRvci5mci4xLmd6IC91c3Ivc2hhcmUvbWFuL2ZyL21hbjEvdmltLjEuZ3pcbiIKKyIgZWRpdG9yLml0LlVURi04LjEuZ3ogL3Vzci9zaGFyZS9tYW4vaXQuVVRGLTgvbWFuMS92aW0uMS5nelxuIgorIiBlZGl0b3IucGwuMS5neiAvdXNyL3NoYXJlL21hbi9wbC9tYW4xL3ZpbS4xLmd6XG4iCisiIGVkaXRvci5mci5JU084ODU5LTEuMS5neiAvdXNyL3NoYXJlL21hbi9mci5JU084ODU5LTEvbWFuMS92aW0uMS5nelxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0NTgKK21zZ2lkICIiCisiV2l0aCBCPC0tdmVyYm9zZT4gQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBjaGF0dGVycyBpbmNlc3NhbnRseSBhYm91dCBpdHMgIgorImFjdGl2aXRpZXMgb24gaXRzIHN0YW5kYXJkIG91dHB1dCBjaGFubmVsLiAgSWYgcHJvYmxlbXMgb2NjdXIsICIKKyJCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IG91dHB1dHMgZXJyb3IgbWVzc2FnZXMgb24gaXRzIHN0YW5kYXJkIGVycm9yIGNoYW5uZWwgIgorImFuZCByZXR1cm5zIGFuIGV4aXQgc3RhdHVzIG9mIDIuICBUaGVzZSBkaWFnbm9zdGljcyBzaG91bGQgYmUgIgorInNlbGYtZXhwbGFuYXRvcnk7IGlmIHlvdSBkbyBub3QgZmluZCB0aGVtIHNvLCBwbGVhc2UgcmVwb3J0IHRoaXMgYXMgYSBidWcuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0NjQKK21zZ2lkICIiCisiVGhlcmUgYXJlIHNldmVyYWwgcGFja2FnZXMgd2hpY2ggcHJvdmlkZSBhIHRleHQgZWRpdG9yIGNvbXBhdGlibGUgd2l0aCAiCisiQjx2aT4sIGZvciBleGFtcGxlIEI8bnZpPiBhbmQgQjx2aW0+LiBXaGljaCBvbmUgaXMgdXNlZCBpcyBjb250cm9sbGVkIGJ5IHRoZSAiCisibGluayBncm91cCBCPHZpPiwgd2hpY2ggaW5jbHVkZXMgbGlua3MgZm9yIHRoZSBwcm9ncmFtIGl0c2VsZiBhbmQgdGhlICIKKyJhc3NvY2lhdGVkIG1hbnBhZ2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0NjcKK21zZ2lkICIiCisiVG8gZGlzcGxheSB0aGUgYXZhaWxhYmxlIHBhY2thZ2VzIHdoaWNoIHByb3ZpZGUgQjx2aT4gYW5kIHRoZSBjdXJyZW50ICIKKyJzZXR0aW5nIGZvciBpdCwgdXNlIHRoZSBCPC0tZGlzcGxheT4gYWN0aW9uOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDcwCittc2dpZCAiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzIC0tZGlzcGxheSB2aT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQ3NAorbXNnaWQgIiIKKyJUbyBjaG9vc2UgYSBwYXJ0aWN1bGFyIEI8dmk+IGltcGxlbWVudGF0aW9uLCB1c2UgdGhpcyBjb21tYW5kIGFzIHJvb3QgYW5kICIKKyJ0aGVuIHNlbGVjdCBhIG51bWJlciBmcm9tIHRoZSBsaXN0OiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDc3Cittc2dpZCAiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzIC0tY29uZmlnIHZpPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDgxCittc2dpZCAiIgorIlRvIGdvIGJhY2sgdG8gaGF2aW5nIHRoZSBCPHZpPiBpbXBsZW1lbnRhdGlvbiBjaG9zZW4gYXV0b21hdGljYWxseSwgZG8gdGhpcyAiCisiYXMgcm9vdDoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQ4NAorbXNnaWQgIkI8dXBkYXRlLWFsdGVybmF0aXZlcyAtLWF1dG8gdmk+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0ODgKK21zZ2lkICJJZiB5b3UgZmluZCBhIGJ1ZywgcGxlYXNlIHJlcG9ydCBpdCB1c2luZyB0aGUgRGViaWFuIGJ1Zy10cmFja2luZyBzeXN0ZW0uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0OTMKK21zZ2lkICIiCisiSWYgeW91IGZpbmQgYW55IGRpc2NyZXBhbmN5IGJldHdlZW4gdGhlIG9wZXJhdGlvbiBvZiBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+ICIKKyJhbmQgdGhpcyBtYW51YWwgcGFnZSwgaXQgaXMgYSBidWcsIGVpdGhlciBpbiB0aGUgaW1wbGVtZW50YXRpb24gb3IgdGhlICIKKyJkb2N1bWVudGF0aW9uOyBwbGVhc2UgcmVwb3J0IGl0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NTA0Cittc2dpZCAiVGhpcyBtYW51YWwgcGFnZSBpcyBjb3B5cmlnaHQgMTk5NywxOTk4IENoYXJsZXMgQnJpc2NvZS1TbWl0aCBhbmQgb3RoZXJzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NTA3Cittc2dpZCAiIgorIlRoaXMgaXMgZnJlZSBkb2N1bWVudGF0aW9uOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbmNlIHZlcnNpb24gMiBvciAiCisibGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gV0FSUkFOVFkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo1MTAKK21zZ2lkICJCPGxuPigxKSwgRkhTLCB0aGUgRmlsZXN5c3RlbSBIaWVyYXJjaHkgU3RhbmRhcmQuIgorbXNnc3RyICIiCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9wby9lcy5hZGQgYi9kcGtnLTEuMTYuMS4xL21hbi9wby9lcy5hZGQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjUxNGUwNwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL3BvL2VzLmFkZApAQCAtMCwwICsxLDEzIEBACitQTzRBLUhFQURFUjptb2RlPWFmdGVyO3Bvc2l0aW9uPV5cLlRIO2JlZ2luYm91bmRhcnk9RmFrZVBvNGFCb3VuZGFyeQorLlNIICJUUkFEVUNUT1IiCitSdWR5IEdvZG95IDxydWR5QGtlcm5lbFwtcGFuaWsub3JnPiwKK1J1YsOpbiBQb3JyYXMgPG5haG9vQGluaWNpYS5lcz4sCitCcnVubyBCYXJyZXJhIEMuIDxicnVuby5iYXJyZXJhQGlnbG9vLmNsPiwKK0NhcmxvcyBJenF1aWVyZG8gPGdoZWVzaEBlcnRpcy5uZXQ+LAorRXN0ZWJhbiBNYW5jaGFkbyB5CitOT0suCitEZWJpYW4gTDEwbiBTcGFuaXNoIDxkZWJpYW5cLWwxMG5cLXNwYW5pc2hAbGlzdHMuZGViaWFuLm9yZz4uCisuYnIKK1JldmlzaW9uZXMgcG9yIFNhbnRpYWdvIFZpbGEgPHNhbnZpbGFAdW5leC5lcz4sCitKYXZpZXIgRmVybsOhbmRlelwtU2FuZ3Vpbm8sIFJ1YsOpbiBQb3JyYXMsCitMdWlzIFVyaWJlIHkgT21hciBDYW1wYWduZS4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL3BvL2VzLnBvIGIvZHBrZy0xLjE2LjEuMS9tYW4vcG8vZXMucG8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uY2FkZGY4MwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL3BvL2VzLnBvCkBAIC0wLDAgKzEsMTk3NjIgQEAKKyMgZHBrZyBtYW5wYWdlcyBwbyB0cmFuc2xhdGlvbiB0byBTcGFuaXNoCisjIENvcHlyaWdodCAoQykgMjAxMCBTb2Z0d2FyZSBpbiB0aGUgUHVibGljIEludGVyZXN0CisjIFRoaXMgZmlsZSBpcyBkaXN0cmlidXRlZCB1bmRlciB0aGUgc2FtZSBsaWNlbnNlIGFzIHRoZSBkcGtnIHBhY2thZ2UuCisjCisjIENoYW5nZXM6CisjICAgLSBJbml0aWFsIHRyYW5zbGF0aW9uCisjICAgICAgIFJ1ZHkgR29kb3kgPHJ1ZHlAa2VybmVsLXBhbmlrLm9yZz4sCisjIAlSdWLDqW4gUG9ycmFzIDxuYWhvb0BpbmljaWEuZXM+LAorIyAJQnJ1bm8gQmFycmVyYSBDLiA8YnJ1bm8uYmFycmVyYUBpZ2xvby5jbD4sCisjIAlDYXJsb3MgSXpxdWllcmRvIDxnaGVlc2hAZXJ0aXMubmV0PiwKKyMgCUVzdGViYW4gTWFuY2hhZG8geSBOT0suCisjIAlTYW50aWFnbyBWaWxhIDxzYW52aWxhQHVuZXguZXM+CisjIAlKYXZpZXIgRmVybsOhbmRlei1TYW5ndWnDsW8KKyMgCVJ1YmVuIFBvcnJhcworIworIyAgIC0gVXBkYXRlcyAyMDEwCisjIAlPbWFyIENhbXBhZ25lIDxvY2FtcGFnbmVAZ21haWwuY29tPgorIyAgICAgICBMdWlzIFVyaWJlIDxhY21lQGV2aWxlZC5vcmc+CisjCisjIFRyYWR1Y3RvcmVzLCBzaSBubyBjb25vY2VuIGVsIGZvcm1hdG8gUE8sIG1lcmVjZSBsYSBwZW5hIGxlZXIgbGEKKyMgZG9jdW1lbnRhY2nDs24gZGUgZ2V0dGV4dCwgZXNwZWNpYWxtZW50ZSBsYXMgc2VjY2lvbmVzIGRlZGljYWRhcyBhIGVzdGUKKyMgZm9ybWF0bywgcG9yIGVqZW1wbG8gZWplY3V0YW5kbzoKKyMgICAgICAgaW5mbyAtbiAnKGdldHRleHQpUE8gRmlsZXMnCisjICAgICAgIGluZm8gLW4gJyhnZXR0ZXh0KUhlYWRlciBFbnRyeScKKyMKKyMgRXF1aXBvIGRlIHRyYWR1Y2Npw7NuIGFsIGVzcGHDsW9sLCBwb3IgZmF2b3IgbGVhbiBhbnRlcyBkZSB0cmFkdWNpcgorIyBsb3Mgc2lndWllbnRlcyBkb2N1bWVudG9zOgorIworIyAgIC0gRWwgcHJveWVjdG8gZGUgdHJhZHVjY2nDs24gZGUgRGViaWFuIGFsIGVzcGHDsW9sCisjICAgICBodHRwOi8vd3d3LmRlYmlhbi5vcmcvaW50bC9zcGFuaXNoLworIyAgICAgZXNwZWNpYWxtZW50ZSBsYXMgbm90YXMgeSBub3JtYXMgZGUgdHJhZHVjY2nDs24gZW4KKyMgICAgIGh0dHA6Ly93d3cuZGViaWFuLm9yZy9pbnRsL3NwYW5pc2gvbm90YXMKKyMKKyMgICAtIExhIGd1w61hIGRlIHRyYWR1Y2Npw7NuIGRlIHBvJ3MgZGUgZGViY29uZjoKKyMgICAgIC91c3Ivc2hhcmUvZG9jL3BvLWRlYmNvbmYvUkVBRE1FLXRyYW5zCisjICAgICBvIGh0dHA6Ly93d3cuZGViaWFuLm9yZy9pbnRsL2wxMG4vcG8tZGViY29uZi9SRUFETUUtdHJhbnMKKyMKK21zZ2lkICIiCittc2dzdHIgIiIKKyJQcm9qZWN0LUlkLVZlcnNpb246IGRwa2cgMS4xOC44LjVcbiIKKyJQT1QtQ3JlYXRpb24tRGF0ZTogMjAxMS0xMC0xNCAwNzoxMSswMzAwXG4iCisiUE8tUmV2aXNpb24tRGF0ZTogMjAxMC0xMi0xNSAyMDoxOCswMTAwXG4iCisiTGFzdC1UcmFuc2xhdG9yOiBPbWFyIENhbXBhZ25lIDxvY2FtcGFnbmVAZ21haWwuY29tPlxuIgorIkxhbmd1YWdlLVRlYW06IERlYmlhbiBsMTBuIFNwYW5pc2ggPGRlYmlhbi1sMTBuLXNwYW5pc2hAbGlzdHMuZGViaWFuLm9yZz5cbiIKKyJMYW5ndWFnZTogZXNcbiIKKyJNSU1FLVZlcnNpb246IDEuMFxuIgorIkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD1VVEYtOFxuIgorIkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXRcbiIKKyJQbHVyYWwtRm9ybXM6IG5wbHVyYWxzPTI7IHBsdXJhbD0obiAhPSAxKTtcbiIKKyJYLUdlbmVyYXRvcjogVmlydGFhbCAwLjYuMVxuIgorCisjLiB0eXBlOiBUSAorIzogZGViLjU6MQorIywgbm8td3JhcAorbXNnaWQgImRlYiIKK21zZ3N0ciAiZGViIgorCisjLiB0eXBlOiBUSAorIzogZGViLjU6MSBkZWItY29udHJvbC41OjMgZGViLXNyYy1jb250cm9sLjU6MyBkZWItdmVyc2lvbi41OjUgZGViLW9sZC41OjEKKyM6IGRlYi1vdmVycmlkZS41OjE1IGRlYi1zeW1ib2xzLjU6MiBkZWItdHJpZ2dlcnMuNToxIGRwa2cuMToxCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEgZHBrZy1idWlsZHBhY2thZ2UuMToxIGRwa2ctZGViLjE6MSBkcGtnLWRpdmVydC44OjEKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjEgZHBrZy1nZW5jb250cm9sLjE6MSBkcGtnLWdlbnN5bWJvbHMuMToyCisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjEgZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMToxIGRwa2ctbmFtZS4xOjYKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxIGRwa2ctcXVlcnkuMToxIGRwa2ctc2NhbnBhY2thZ2VzLjE6MTUKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMToxIGRwa2ctc2hsaWJkZXBzLjE6MSBkcGtnLXNvdXJjZS4xOjIgZHBrZy10cmlnZ2VyLjE6MQorIzogZHNlbGVjdC4xOjEgdXBkYXRlLWFsdGVybmF0aXZlcy44OjgKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiMjAxMC0wMy0wNyIKK21zZ2lkICIyMDExLTA4LTE0IgorbXNnc3RyICI3IGRlIE1hcnpvIGRlIDIwMTAiCisKKyMuIHR5cGU6IFRICisjOiBkZWIuNToxIGRlYi1jb250cm9sLjU6MyBkZWItc3JjLWNvbnRyb2wuNTozIGRlYi1zcGxpdC41OjEgZGViLXZlcnNpb24uNTo1CisjOiBkZWItb2xkLjU6MSBkZWItb3ZlcnJpZGUuNToxNSBkZWItZXh0cmEtb3ZlcnJpZGUuNToxIGRlYi1zaGxpYnMuNToxNgorIzogZGViLXN1YnN0dmFycy41OjIgZGViLXN5bWJvbHMuNToyIGRlYi10cmlnZ2Vycy41OjEgZHBrZy4xOjEKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MSBkcGtnLmNmZy41OjEgZHBrZy1idWlsZGZsYWdzLjE6MQorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxIGRwa2ctY2hlY2tidWlsZGRlcHMuMToxIGRwa2ctZGlzdGFkZGZpbGUuMToxCisjOiBkcGtnLWRlYi4xOjEgZHBrZy1kaXZlcnQuODoxIGRwa2ctZ2VuY2hhbmdlcy4xOjEgZHBrZy1nZW5jb250cm9sLjE6MQorIzogZHBrZy1nZW5zeW1ib2xzLjE6MiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjEgZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMToxCisjOiBkcGtnLW5hbWUuMTo2IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxIGRwa2ctcXVlcnkuMToxIGRwa2ctc2NhbnBhY2thZ2VzLjE6MTUKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMToxIGRwa2ctc2hsaWJkZXBzLjE6MSBkcGtnLXNvdXJjZS4xOjIgZHBrZy1zcGxpdC4xOjIKKyM6IGRwa2ctdHJpZ2dlci4xOjEgZHBrZy12ZW5kb3IuMToxIGRzZWxlY3QuMToxIGRzZWxlY3QuY2ZnLjU6MQorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxIHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo4CisjLCBuby13cmFwCittc2dpZCAiRGViaWFuIFByb2plY3QiCittc2dzdHIgIlByb3llY3RvIERlYmlhbiIKKworIy4gdHlwZTogVEgKKyM6IGRlYi41OjEgZGViLWNvbnRyb2wuNTozIGRlYi1zcmMtY29udHJvbC41OjMgZGViLXNwbGl0LjU6MSBkZWItdmVyc2lvbi41OjUKKyM6IGRlYi1vbGQuNToxIGRzZWxlY3QuMToxCisjLCBuby13cmFwCittc2dpZCAiRGViaWFuIgorbXNnc3RyICJEZWJpYW4iCisKKyMuIHR5cGU6IFNICisjOiBkZWIuNToyIGRlYi1jb250cm9sLjU6NCBkZWItc3JjLWNvbnRyb2wuNTo0IGRlYi1zcGxpdC41OjIgZGViLXZlcnNpb24uNTo2CisjOiBkZWItb2xkLjU6MiBkZWItb3ZlcnJpZGUuNToxNiBkZWItZXh0cmEtb3ZlcnJpZGUuNToyIGRlYi1zaGxpYnMuNToxNworIzogZGViLXN1YnN0dmFycy41OjMgZGViLXN5bWJvbHMuNTozIGRlYi10cmlnZ2Vycy41OjIgZHBrZy4xOjIKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MiBkcGtnLmNmZy41OjIgZHBrZy1idWlsZGZsYWdzLjE6MgorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyIGRwa2ctY2hlY2tidWlsZGRlcHMuMToyIGRwa2ctZGlzdGFkZGZpbGUuMToyCisjOiBkcGtnLWRlYi4xOjIgZHBrZy1kaXZlcnQuODoyIGRwa2ctZ2VuY2hhbmdlcy4xOjIgZHBrZy1nZW5jb250cm9sLjE6MgorIzogZHBrZy1nZW5zeW1ib2xzLjE6MyBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjIgZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMToyCisjOiBkcGtnLW5hbWUuMTo3IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToyIGRwa2ctcXVlcnkuMToyIGRwa2ctc2NhbnBhY2thZ2VzLjE6MTYKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMToyIGRwa2ctc2hsaWJkZXBzLjE6MiBkcGtnLXNvdXJjZS4xOjMgZHBrZy1zcGxpdC4xOjMKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6MiBkcGtnLXRyaWdnZXIuMToyIGRwa2ctdmVuZG9yLjE6MiBkc2VsZWN0LjE6MgorIzogZHNlbGVjdC5jZmcuNToyIHN0YXJ0LXN0b3AtZGFlbW9uLjg6MiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6OQorIywgbm8td3JhcAorbXNnaWQgIk5BTUUiCittc2dzdHIgIk5PTUJSRSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLjU6NAorbXNnaWQgImRlYiAtIERlYmlhbiBiaW5hcnkgcGFja2FnZSBmb3JtYXQiCittc2dzdHIgImRlYiAtIEZvcm1hdG8gZGUgcGFxdWV0ZSBiaW5hcmlvIGRlIERlYmlhbiIKKworIy4gdHlwZTogU0gKKyM6IGRlYi41OjQgZGViLWNvbnRyb2wuNTo3IGRlYi1zcmMtY29udHJvbC41OjcgZGViLXNwbGl0LjU6NCBkZWItdmVyc2lvbi41OjkKKyM6IGRlYi1vbGQuNTo1IGRlYi1vdmVycmlkZS41OjE5IGRlYi1leHRyYS1vdmVycmlkZS41OjUgZGViLXN1YnN0dmFycy41OjYKKyM6IGRlYi1zeW1ib2xzLjU6NiBkZWItdHJpZ2dlcnMuNTo1IGRwa2cuMTo1IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NQorIzogZHBrZy1idWlsZGZsYWdzLjE6NSBkcGtnLWJ1aWxkcGFja2FnZS4xOjUgZHBrZy1jaGVja2J1aWxkZGVwcy4xOjUKKyM6IGRwa2ctZGlzdGFkZGZpbGUuMTo1IGRwa2ctZGViLjE6NSBkcGtnLWRpdmVydC44OjUgZHBrZy1nZW5jaGFuZ2VzLjE6NQorIzogZHBrZy1nZW5jb250cm9sLjE6NSBkcGtnLWdlbnN5bWJvbHMuMTo2IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6NQorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTo1IGRwa2ctbmFtZS4xOjEwIGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo1CisjOiBkcGtnLXF1ZXJ5LjE6NSBkcGtnLXNjYW5wYWNrYWdlcy4xOjE5IGRwa2ctc2NhbnNvdXJjZXMuMTo1CisjOiBkcGtnLXNobGliZGVwcy4xOjUgZHBrZy1zb3VyY2UuMTo2IGRwa2ctc3BsaXQuMTo2IGRwa2ctc3RhdG92ZXJyaWRlLjg6NQorIzogZHBrZy10cmlnZ2VyLjE6NSBkcGtnLXZlbmRvci4xOjUgZHNlbGVjdC4xOjUgc3RhcnQtc3RvcC1kYWVtb24uODo1CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTIKKyMsIG5vLXdyYXAKK21zZ2lkICJTWU5PUFNJUyIKK21zZ3N0ciAiU0lOT1BTSVMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi41OjYgZGViLXNwbGl0LjU6NiBkZWItb2xkLjU6NworbXNnaWQgIkk8ZmlsZW5hbWU+QjwuZGViPiIKK21zZ3N0ciAiSTxub21icmUtZmljaGVybz5CPC5kZWI+IgorCisjLiB0eXBlOiBTSAorIzogZGViLjU6NiBkZWItY29udHJvbC41OjEwIGRlYi1zcmMtY29udHJvbC41OjEwIGRlYi1zcGxpdC41OjYKKyM6IGRlYi12ZXJzaW9uLjU6MTEgZGViLW9sZC41OjggZGViLW92ZXJyaWRlLjU6MjIgZGViLWV4dHJhLW92ZXJyaWRlLjU6OAorIzogZGViLXNobGlicy41OjIwIGRlYi1zdWJzdHZhcnMuNTo5IGRlYi1zeW1ib2xzLjU6OSBkZWItdHJpZ2dlcnMuNTo4CisjOiBkcGtnLjE6MTkgZHBrZy1hcmNoaXRlY3R1cmUuMToxMCBkcGtnLmNmZy41OjUgZHBrZy1idWlsZGZsYWdzLjE6OQorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo5IGRwa2ctY2hlY2tidWlsZGRlcHMuMToxMCBkcGtnLWRpc3RhZGRmaWxlLjE6OQorIzogZHBrZy1kZWIuMTo5IGRwa2ctZGl2ZXJ0Ljg6MTAgZHBrZy1nZW5jaGFuZ2VzLjE6MTAgZHBrZy1nZW5jb250cm9sLjE6OQorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTAgZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxNSBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjkKKyM6IGRwa2ctbmFtZS4xOjE2IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo5IGRwa2ctcXVlcnkuMTo5CisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjI3IGRwa2ctc2NhbnNvdXJjZXMuMToxMyBkcGtnLXNobGliZGVwcy4xOjkKKyM6IGRwa2ctc291cmNlLjE6MTAgZHBrZy1zcGxpdC4xOjEwIGRwa2ctc3RhdG92ZXJyaWRlLjg6OSBkcGtnLXRyaWdnZXIuMToxMgorIzogZHBrZy12ZW5kb3IuMTo5IGRzZWxlY3QuMTo5IGRzZWxlY3QuY2ZnLjU6NSBzdGFydC1zdG9wLWRhZW1vbi44OjkKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNgorIywgbm8td3JhcAorbXNnaWQgIkRFU0NSSVBUSU9OIgorbXNnc3RyICJERVNDUklQQ0nDk04iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi41OjEyCittc2dpZCAiIgorIlRoZSBCPC5kZWI+IGZvcm1hdCBpcyB0aGUgRGViaWFuIGJpbmFyeSBwYWNrYWdlIGZpbGUgZm9ybWF0LiBJdCBpcyAiCisidW5kZXJzdG9vZCBieSBkcGtnIDAuOTMuNzYgYW5kIGxhdGVyLCBhbmQgaXMgZ2VuZXJhdGVkIGJ5IGRlZmF1bHQgYnkgYWxsICIKKyJ2ZXJzaW9ucyBvZiBkcGtnIHNpbmNlIDEuMi4wIGFuZCBhbGwgaTM4Ni9FTEYgdmVyc2lvbnMgc2luY2UgMS4xLjFlbGYuIgorbXNnc3RyICIiCisiRWwgZm9ybWF0byBCPC5kZWI+IGVzIGVsIGVtcGxlYWRvIHBhcmEgbG9zIHBhcXVldGVzIGJpbmFyaW9zIGRlIERlYmlhbi4gTGEgIgorInZlcnNpw7NuIDAuOTMuNzYgZGUgZHBrZyB5IHBvc3RlcmlvcmVzIHNvbiBjb21wYXRpYmxlcyBjb24gZXN0ZSBmb3JtYXRvLCB5ICIKKyJkcGtnIGxvIGdlbmVyYSBwb3Igb21pc2nDs24gZGVzZGUgbGEgdmVyc2nDs24gMS4yLjAsIHkgZW4gdG9kYXMgbGFzIHZlcnNpb25lcyAiCisiaTM4Ni9FTEYgZGVzZGUgMS4xLjFlbGYuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWIuNToxNgorbXNnaWQgIiIKKyJUaGUgZm9ybWF0IGRlc2NyaWJlZCBoZXJlIGlzIHVzZWQgc2luY2UgRGViaWFuIDAuOTM7IGRldGFpbHMgb2YgdGhlIG9sZCAiCisiZm9ybWF0IGFyZSBkZXNjcmliZWQgaW4gQjxkZWItb2xkPig1KS4iCittc2dzdHIgIiIKKyJFbCBmb3JtYXRvIGRlc2NyaXRvIGFxdcOtIHNlIHVzYSBkZXNkZSBEZWJpYW4gMC45MzsgbG9zIGRldGFsbGVzIHNvYnJlIGVsICIKKyJhbnRlcmlvciBmb3JtYXRvIHNlIGRlc2NyaWJlbiBlbiBCPGRlYi1vbGQ+KDUpLiIKKworIy4gdHlwZTogU0gKKyM6IGRlYi41OjE2IGRlYi1zcGxpdC41OjkgZGViLW9sZC41OjE4CisjLCBuby13cmFwCittc2dpZCAiRk9STUFUIgorbXNnc3RyICJGT1JNQVRPIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWIuNToyMgorbXNnaWQgIiIKKyJUaGUgZmlsZSBpcyBhbiBCPGFyPiBhcmNoaXZlIHdpdGggYSBtYWdpYyB2YWx1ZSBvZiBCPCFFPGx0PmFyY2hFPGd0Pj4uICBUaGUgIgorImZpbGUgbmFtZXMgbWlnaHQgY29udGFpbiBhIHRyYWlsaW5nIHNsYXNoLiIKK21zZ3N0ciAiIgorIkVsIGZpY2hlcm8gZXMgdW4gYXJjaGl2byBCPGFyPiBjb24gdW4gdmFsb3IgbcOhZ2ljbyBkZSBCPCFFPGx0PmFyY2hFPGd0Pj4uICIKKyJMb3Mgbm9tYnJlcyBkZSBmaWNoZXJvIHB1ZWRlbiBjb250ZW5lciB1bmEgYmFycmEgYWwgZmluYWwuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWIuNToyOAorbXNnaWQgIiIKKyJUaGUgQjx0YXI+IGFyY2hpdmVzIGN1cnJlbnRseSBhbGxvd2VkIGFyZSwgdGhlIG9sZC1zdHlsZSAodjcpIGZvcm1hdCwgdGhlICIKKyJwcmUtUE9TSVggdXN0YXIgZm9ybWF0LCBhIHN1YnNldCBvZiB0aGUgR05VIGZvcm1hdCAob25seSB0aGUgbmV3IHN0eWxlIGxvbmcgIgorInBhdGhuYW1lcyBhbmQgbG9uZyBsaW5rbmFtZXMsIHN1cHBvcnRlZCBzaW5jZSBkcGtnIDEuNC4xLjE3KSwgYW5kIHRoZSBQT1NJWCAiCisidXN0YXIgZm9ybWF0IChsb25nIG5hbWVzIHN1cHBvcnRlZCBzaW5jZSBkcGtnIDEuMTUuMCkuICBVbnJlY29nbml6ZWQgdGFyICIKKyJ0eXBlZmxhZ3MgYXJlIGNvbnNpZGVyZWQgYW4gZXJyb3IuIgorbXNnc3RyICIiCisiTG9zIGFyY2hpdm9zIEI8dGFyPiBjb21wYXRpYmxlcyBzb24gZWwgdmllam8gZm9ybWF0byAodjcpLCBlbCBmb3JtYXRvIHByZS0iCisiUE9TSVggdXN0YXIsIHVuIHN1YmNvbmp1bnRvIGRlbCBmb3JtYXRvIEdOVSAoc8OzbG8gbG9zIG5vbWJyZXMgZGUgcnV0YSB5IGRlICIKKyJlbmxhY2UgbGFyZ29zIGRlbCBudWV2byBlc3RpbG8sIGNvbXBhdGlibGUgY29uIGRwa2cgZGVzZGUgbGEgdmVyc2nDs24gIgorIjEuNC4xLjE3KSwgeSBlbCBmb3JtYXRvIFBPU0lYIHVzdGFyIChjb21wYXRpYmxlIGNvbiBub21icmVzIGxhcmdvcyBkZXNkZSAiCisiZHBrZyAxLjE1LjApLiBMYXMgbWFyY2FzIGRlIHRpcG8gZGUgdGFyIHF1ZSBubyBzZSByZWNvbm96Y2FuIHNlIHRvbWFuIGNvbW8gIgorInVuIGVycm9yLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLjU6MzgKK21zZ2lkICIiCisiVGhlIGZpcnN0IG1lbWJlciBpcyBuYW1lZCBCPGRlYmlhbi1iaW5hcnk+IGFuZCBjb250YWlucyBhIHNlcmllcyBvZiBsaW5lcywgIgorInNlcGFyYXRlZCBieSBuZXdsaW5lcy4gQ3VycmVudGx5IG9ubHkgb25lIGxpbmUgaXMgcHJlc2VudCwgdGhlIGZvcm1hdCAiCisidmVyc2lvbiBudW1iZXIsIEI8Mi4wPiBhdCB0aGUgdGltZSB0aGlzIG1hbnVhbCBwYWdlIHdhcyB3cml0dGVuLiAgUHJvZ3JhbXMgIgorIndoaWNoIHJlYWQgbmV3LWZvcm1hdCBhcmNoaXZlcyBzaG91bGQgYmUgcHJlcGFyZWQgZm9yIHRoZSBtaW5vciBudW1iZXIgdG8gYmUgIgorImluY3JlYXNlZCBhbmQgbmV3IGxpbmVzIHRvIGJlIHByZXNlbnQsIGFuZCBzaG91bGQgaWdub3JlIHRoZXNlIGlmIHRoaXMgaXMgIgorInRoZSBjYXNlLiIKK21zZ3N0ciAiIgorIkVsIHByaW1lciBtaWVtYnJvIHNlIGxsYW1hIEI8ZGViaWFuLWJpbmFyeT4geSBjb250aWVuZSB1bmEgc2VyaWUgZGUgbMOtbmVhcyAiCisic2VwYXJhZGFzIHBvciBzYWx0b3MgZGUgbMOtbmVhLiBBY3R1YWxtZW50ZSBzw7NsbyBoYXkgdW5hIGzDrW5lYSwgZWwgbsO6bWVybyBkZSAiCisidmVyc2nDs24gZGVsIGZvcm1hdG8sIEI8Mi4wPiBlbiBlbCBtb21lbnRvIGVuIHF1ZSBzZSBlc2NyaWJpw7MgZXN0YSBww6FnaW5hIGRlICIKKyJtYW51YWwuIExvcyBwcm9ncmFtYXMgcXVlIGxlYW4gYXJjaGl2b3MgY29uIGVsIGZvcm1hdG8gbnVldm8gZGViZXLDrWFuIHByZXZlciAiCisidW4gYXVtZW50byBkZSBsb3MgbsO6bWVyb3MgbWVub3JlcyB5IGxhIGFwYXJpY2nDs24gZGUgbnVldmFzIGzDrW5lYXMsIGxhcyAiCisiY3VhbGVzIGRlYmVyw61hbiBpZ25vcmFyIGVuIGNhc28gZGUgYXBhcmVjZXIuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWIuNTo0MworbXNnaWQgIiIKKyJJZiB0aGUgbWFqb3IgbnVtYmVyIGhhcyBjaGFuZ2VkLCBhbiBpbmNvbXBhdGlibGUgY2hhbmdlIGhhcyBiZWVuIG1hZGUgYW5kICIKKyJ0aGUgcHJvZ3JhbSBzaG91bGQgc3RvcC4gSWYgaXQgaGFzIG5vdCwgdGhlbiB0aGUgcHJvZ3JhbSBzaG91bGQgYmUgYWJsZSB0byAiCisic2FmZWx5IGNvbnRpbnVlLCB1bmxlc3MgaXQgZW5jb3VudGVycyBhbiB1bmV4cGVjdGVkIG1lbWJlciBpbiB0aGUgYXJjaGl2ZSAiCisiKGV4Y2VwdCBhdCB0aGUgZW5kKSwgYXMgZGVzY3JpYmVkIGJlbG93LiIKK21zZ3N0ciAiIgorIlNpIGVsIG7Dum1lcm8gbWF5b3IgaGEgY2FtYmlhZG8gZXMgcXVlIGhheSBjYW1iaW9zIGluY29tcGF0aWJsZXMgeSBlbCAiCisicHJvZ3JhbWEgc2UgZGViZXLDrWEgZGV0ZW5lci4gRGUgbm8gc2VyIGFzw60gZGViZXLDrWEgcG9kZXIgc2VndWlyIHNpbiAiCisicHJvYmxlbWFzLCBhIG5vIHNlciBxdWUgc2UgZW5jdWVudHJlIHVuIG1pZW1icm8gbm8gZXNwZXJhZG8gZW4gZWwgYXJjaGl2byAiCisiKGV4Y2VwdG8gYWwgZmluYWwpLCBjb21vIHNlIGRlc2NyaWJlIG3DoXMgYWJham8uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWIuNTo1MworbXNnaWQgIiIKKyJUaGUgc2Vjb25kIHJlcXVpcmVkIG1lbWJlciBpcyBuYW1lZCBCPGNvbnRyb2wudGFyLmd6Pi4gIEl0IGlzIGEgZ3ppcHBlZCB0YXIgIgorImFyY2hpdmUgY29udGFpbmluZyB0aGUgcGFja2FnZSBjb250cm9sIGluZm9ybWF0aW9uLCBhcyBhIHNlcmllcyBvZiBwbGFpbiAiCisiZmlsZXMsIG9mIHdoaWNoIHRoZSBmaWxlIEI8Y29udHJvbD4gaXMgbWFuZGF0b3J5IGFuZCBjb250YWlucyB0aGUgY29yZSAiCisiY29udHJvbCBpbmZvcm1hdGlvbi4gVGhlIGNvbnRyb2wgdGFyYmFsbCBtYXkgb3B0aW9uYWxseSBjb250YWluIGFuIGVudHJ5IGZvciAiCisiYEI8Lj4nLCB0aGUgY3VycmVudCBkaXJlY3RvcnkuIgorbXNnc3RyICIiCisiRWwgc2VndW5kbyBtaWVtYnJvIG9ibGlnYXRvcmlvIGVzIEI8Y29udHJvbC50YXIuZ3o+LiBFcyB1biBhcmNoaXZvIHRhciAiCisiY29tcHJpbWlkbyBjb24gZ3ppcCBxdWUgY29udGllbmUgbGEgaW5mb3JtYWNpw7NuIGRlIGNvbnRyb2wgZGVsIHBhcXVldGUgZW4gIgorInVuYSBzZXJpZSBkZSBmaWNoZXJvcyBkZSB0ZXh0bywgZGUgbG9zIGN1YWxlcyBCPGNvbnRyb2w+IGVzIG9ibGlnYXRvcmlvIHkgIgorImNvbnRpZW5lIGxhIGluZm9ybWFjacOzbiBkZSBjb250cm9sIHByaW5jaXBhbC4gT3BjaW9uYWxtZW50ZSwgZWwgZmljaGVybyB0YXIgIgorImRlIGNvbnRyb2wgcHVlZGUgY29udGVuZXIgdW5hIGVudHJhZGEgcGFyYSDCq0I8Lj7CuywgZWwgZGlyZWN0b3JpbyBhY3R1YWwuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWIuNTo2MgorbXNnaWQgIiIKKyJUaGUgdGhpcmQsIGxhc3QgcmVxdWlyZWQgbWVtYmVyIGlzIG5hbWVkIEI8ZGF0YS50YXI+LiAgSXQgY29udGFpbnMgdGhlICIKKyJmaWxlc3lzdGVtIGFzIGEgdGFyIGFyY2hpdmUsIGVpdGhlciBub3QgY29tcHJlc3NlZCAoc3VwcG9ydGVkIHNpbmNlIGRwa2cgIgorIjEuMTAuMjQpLCBvciBjb21wcmVzc2VkIHdpdGggZ3ppcCAod2l0aCBCPC5nej4gZXh0ZW5zaW9uKSwgeHogKHdpdGggQjwueHo+ICIKKyJleHRlbnNpb24sIHN1cHBvcnRlZCBzaW5jZSBkcGtnIDEuMTUuNiksIGJ6aXAyICh3aXRoIEI8LmJ6Mj4gZXh0ZW5zaW9uLCAiCisic3VwcG9ydGVkIHNpbmNlIGRwa2cgMS4xMC4yNCkgb3IgbHptYSAod2l0aCBCPC5sem1hPiBleHRlbnNpb24sIHN1cHBvcnRlZCAiCisic2luY2UgZHBrZyAxLjEzLjI1KS4iCittc2dzdHIgIiIKKyJFbCB0ZXJjZXIgeSDDumx0aW1vIG1pZW1icm8gb2JsaWdhdG9yaW8gc2UgbGxhbWEgQjxkYXRhLnRhcj4uIENvbnRpZW5lIGVsICIKKyJzaXN0ZW1hIGRlIGZpY2hlcm9zIGNvbW8gdW4gYXJjaGl2byB0YXIsIGVsIGN1YWwgcHVlZGUgZXN0YXIgZGVzY29tcHJpbWlkbyAiCisiKGNvbXBhdGlibGUgZGVzZGUgbGEgdmVyc2nDs24gMS4xMC4yNCBkZSBkcGtnKSBvIGNvbXByaW1pZG8gY29uIGd6aXAgIgorIihleHRlbnNpw7NuIEI8Lmd6PiksIHh6IChleHRlbnNpw7NuIEI8Lnh6PiwgY29tcGF0aWJsZSBkZXNkZSBsYSB2ZXJzacOzbiAiCisiMS4xNS42KSwgYnppcDIgKGV4dGVuc2nDs24gQjwuYnoyPiwgY29tcGF0aWJsZSBkZXNkZSBsYSB2ZXJzacOzbiAxLjEwLjI0IGRlICIKKyJkcGtnKSBvIGx6bWEgKGV4dGVuc2nDs24gQjwubHptYT4sIGNvbXBhdGlibGUgZGVzZGUgbGEgdmVyc2nDs24gMS4xMy4yNSBkZSAiCisiZHBrZykuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWIuNTo3MworbXNnaWQgIiIKKyJUaGVzZSBtZW1iZXJzIG11c3Qgb2NjdXIgaW4gdGhpcyBleGFjdCBvcmRlci4gQ3VycmVudCBpbXBsZW1lbnRhdGlvbnMgc2hvdWxkICIKKyJpZ25vcmUgYW55IGFkZGl0aW9uYWwgbWVtYmVycyBhZnRlciBCPGRhdGEudGFyPi4gIEZ1cnRoZXIgbWVtYmVycyBtYXkgYmUgIgorImRlZmluZWQgaW4gdGhlIGZ1dHVyZSwgYW5kIChpZiBwb3NzaWJsZSkgd2lsbCBiZSBwbGFjZWQgYWZ0ZXIgdGhlc2UgdGhyZWUuICIKKyJBbnkgYWRkaXRpb25hbCBtZW1iZXJzIHRoYXQgbWF5IG5lZWQgdG8gYmUgaW5zZXJ0ZWQgYmVmb3JlIEI8ZGF0YS50YXI+IGFuZCAiCisid2hpY2ggc2hvdWxkIGJlIHNhZmVseSBpZ25vcmVkIGJ5IG9sZGVyIHByb2dyYW1zLCB3aWxsIGhhdmUgbmFtZXMgc3RhcnRpbmcgIgorIndpdGggYW4gdW5kZXJzY29yZSwgYEI8Xz4nLiIKK21zZ3N0ciAiIgorIkVzdG9zIG1pZW1icm9zIGRlYmVuIGFwYXJlY2VyIGVuIGVzdGUgbWlzbW8gb3JkZW4uIExhcyBpbXBsZW1lbnRhY2lvbmVzICIKKyJhY3R1YWxlcyBkZWJlcsOtYW4gaWdub3JhciBjdWFscXVpZXIgbWllbWJybyBhZGljaW9uYWwgZGVzcHXDqXMgZGUgQjxkYXRhLiIKKyJ0YXI+LiBTZSBwb2Ryw61hbiBkZWZpbmlyc2UgbnVldm9zIG1pZW1icm9zIGVuIGVsIGZ1dHVybywgeSBzZSBwb25kcsOhbiwgc2kgZXMgIgorInBvc2libGUsIGRlc3B1w6lzIGRlIMOpc3RvcyB0cmVzLiBDdWFscXVpZXIgbWllbWJybyBhZGljaW9uYWwgcXVlIHNlIHR1dmllc2UgIgorInF1ZSBpbnNlcnRhciBhbnRlcyBkZSBCPGRhdGEudGFyPiwgeSBxdWUgbG9zIHByb2dyYW1hcyBtw6FzIGFudGlndW9zIHB1ZWRhbiAiCisiaWdub3JhciwgdGVuZHLDoSB1biBub21icmUgcXVlIGNvbWllbmNlIGNvbiB1biBndWnDs24gYmFqbywgwqtCPF8+wrsuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWIuNTo3OQorbXNnaWQgIiIKKyJUaG9zZSBuZXcgbWVtYmVycyB3aGljaCB3b24ndCBiZSBhYmxlIHRvIGJlIHNhZmVseSBpZ25vcmVkIHdpbGwgYmUgaW5zZXJ0ZWQgIgorImJlZm9yZSBCPGRhdGEudGFyPiB3aXRoIG5hbWVzIHN0YXJ0aW5nIHdpdGggc29tZXRoaW5nIG90aGVyIHRoYW4gIgorInVuZGVyc2NvcmVzLCBvciB3aWxsIChtb3JlIGxpa2VseSkgY2F1c2UgdGhlIG1ham9yIHZlcnNpb24gbnVtYmVyIHRvIGJlICIKKyJpbmNyZWFzZWQuIgorbXNnc3RyICIiCisiTG9zIG51ZXZvcyBtaWVtYnJvcyBxdWUgbm8gc2UgcHVlZGFuIGlnbm9yYXIgc2luIHByb2JsZW1hcyBzZSBpbnNlcnRhcsOhbiAiCisiYW50ZXMgZGUgQjxkYXRhLnRhcj4sIGNvbiBub21icmVzIHF1ZSBlbXBpZWNlbiBwb3IgYWxnbyBxdWUgbm8gc2VhIHVuIGd1acOzbiAiCisiYmFqbywgbyAocG9zaWJsZW1lbnRlKSBjYXVzYXLDoW4gdW4gaW5jcmVtZW50byBkZWwgbsO6bWVybyBtYXlvciBkZSB2ZXJzacOzbi4iCisKKyMuIHR5cGU6IFNICisjOiBkZWIuNTo3OSBkZWItY29udHJvbC41OjI3MSBkZWItc3JjLWNvbnRyb2wuNTozMjcgZGViLXNwbGl0LjU6NDkKKyM6IGRlYi12ZXJzaW9uLjU6MTE2IGRlYi1vbGQuNTo1MSBkZWItb3ZlcnJpZGUuNTo2MiBkZWItZXh0cmEtb3ZlcnJpZGUuNTozNworIzogZGViLXNobGlicy41OjYxIGRlYi1zdWJzdHZhcnMuNToxNTQgZGViLXN5bWJvbHMuNTo2MSBkZWItdHJpZ2dlcnMuNTo2NworIzogZHBrZy4xOjc2OCBkcGtnLWFyY2hpdGVjdHVyZS4xOjI5OSBkcGtnLmNmZy41OjIzIGRwa2ctYnVpbGRwYWNrYWdlLjE6MjQ5CisjOiBkcGtnLWRlYi4xOjI1OSBkcGtnLWRpdmVydC44OjEzMiBkcGtnLWdlbnN5bWJvbHMuMTo0NTAgZHBrZy1uYW1lLjE6OTYKKyM6IGRwa2ctcXVlcnkuMToyMjAgZHBrZy1zY2FucGFja2FnZXMuMToxMTAgZHBrZy1zY2Fuc291cmNlcy4xOjcxCisjOiBkcGtnLXNobGliZGVwcy4xOjMyNCBkcGtnLXNvdXJjZS4xOjcyNSBkcGtnLXNwbGl0LjE6MjE3CisjOiBkcGtnLXN0YXRvdmVycmlkZS44Ojg0IGRwa2ctdHJpZ2dlci4xOjY2IGRzZWxlY3QuMTo0NDUgZHNlbGVjdC5jZmcuNToyMworIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjUwOAorIywgbm8td3JhcAorbXNnaWQgIlNFRSBBTFNPIgorbXNnc3RyICJWw4lBU0UgVEFNQknDiU4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi41OjgyCittc2dpZCAiQjxkZWItb2xkPig1KSwgQjxkcGtnLWRlYj4oMSksIEI8ZGViLWNvbnRyb2w+KDUpLiIKK21zZ3N0ciAiQjxkZWItb2xkPig1KSwgQjxkcGtnLWRlYj4oMSksIEI8ZGViLWNvbnRyb2w+KDUpLiIKKworIy4gdHlwZTogVEgKKyM6IGRlYi1jb250cm9sLjU6MworIywgbm8td3JhcAorbXNnaWQgImRlYi1jb250cm9sIgorbXNnc3RyICJkZWItY29udHJvbCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNTo2Cittc2dpZCAiZGViLWNvbnRyb2wgLSBEZWJpYW4gcGFja2FnZXMnIG1hc3RlciBjb250cm9sIGZpbGUgZm9ybWF0IgorbXNnc3RyICIiCisiZGViLWNvbnRyb2wgLSBGb3JtYXRvIGRlbCBmaWNoZXJvIGRlIGNvbnRyb2wgbWFlc3RybyBkZSBwYXF1ZXRlcyBkZSBEZWJpYW4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6OSBkZWItc3JjLWNvbnRyb2wuNTo5Cittc2dpZCAiY29udHJvbCIKK21zZ3N0ciAiY29udHJvbCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToyNAorbXNnaWQgIiIKKyJFYWNoIERlYmlhbiBwYWNrYWdlIGNvbnRhaW5zIHRoZSBtYXN0ZXIgYGNvbnRyb2wnIGZpbGUsIHdoaWNoIGNvbnRhaW5zIGEgIgorIm51bWJlciBvZiBmaWVsZHMsIG9yIGNvbW1lbnRzIHdoZW4gdGhlIGxpbmUgc3RhcnRzIHdpdGggQjwnIyc+LiBFYWNoIGZpZWxkICIKKyJiZWdpbnMgd2l0aCBhIHRhZywgc3VjaCBhcyBCPFBhY2thZ2U+IG9yIEI8VmVyc2lvbj4gKGNhc2UgaW5zZW5zaXRpdmUpLCAiCisiZm9sbG93ZWQgYnkgYSBjb2xvbiwgYW5kIHRoZSBib2R5IG9mIHRoZSBmaWVsZC4gIEZpZWxkcyBhcmUgZGVsaW1pdGVkIG9ubHkgIgorImJ5IGZpZWxkIHRhZ3MuIEluIG90aGVyIHdvcmRzLCBmaWVsZCB0ZXh0IG1heSBiZSBtdWx0aXBsZSBsaW5lcyBpbiBsZW5ndGgsICIKKyJidXQgdGhlIGluc3RhbGxhdGlvbiB0b29scyB3aWxsIGdlbmVyYWxseSBqb2luIGxpbmVzIHdoZW4gcHJvY2Vzc2luZyB0aGUgIgorImJvZHkgb2YgdGhlIGZpZWxkIChleGNlcHQgaW4gdGhlIGNhc2Ugb2YgdGhlIEI8RGVzY3JpcHRpb24+IGZpZWxkLCBzZWUgIgorImJlbG93KS4iCittc2dzdHIgIiIKKyJDYWRhIHBhcXVldGUgZGUgRGViaWFuIGNvbnRpZW5lIHVuIGZpY2hlcm8gbWFlc3RybyDCq2NvbnRyb2zCuyBjb24gdmFyaW9zICIKKyJjYW1wb3MsIG8gY29tZW50YXJpb3MgZW4gYXF1ZWxsYXMgbMOtbmVhcyBxdWUgZW1waWV6YW4gY29uIMKrQjwjPsK7LiBDYWRhIGNhbXBvICIKKyJlbXBpZXphIGNvbiB1bmEgZXRpcXVldGEsIGNvbW8gQjxQYWNrYWdlPiBvIEI8VmVyc2lvbj4gKHNpbiBkaXN0aW5jacOzbiBlbnRyZSAiCisibWF5w7pzY3VsYXMgeSBtaW7DunNjdWxhcyksIHNlZ3VpZG8gZGUgZG9zIHB1bnRvcyB5IGVsIGN1ZXJwbyBkZWwgY2FtcG8uIFPDs2xvICIKKyJsYXMgZXRpcXVldGFzIGxpbWl0YW4gbG9zIGNhbXBvcy4gRW4gb3RyYXMgcGFsYWJyYXMsIGVsIHRleHRvIGRlIGxvcyBjYW1wb3MgIgorInB1ZWRlIHNlciBkZSB2YXJpYXMgbMOtbmVhcyBwZXJvIGxhcyBoZXJyYW1pZW50YXMgZGUgaW5zdGFsYWNpw7NuIGxhcyBqdW50YXLDoW4gIgorInRvZGFzIGVuIHVuYSBzb2xhIGFsIHByb2Nlc2FyIGVsIGN1ZXJwbyBkZWwgY2FtcG8gKGV4Y2VwdG8gZWwgY2FtcG8gIgorIkI8RGVzY3JpcHRpb24+LCB2w6lhc2UgbcOhcyBhYmFqbykuIgorCisjLiB0eXBlOiBTSAorIzogZGViLWNvbnRyb2wuNToyNQorIywgbm8td3JhcAorbXNnaWQgIlJFUVVJUkVEIEZJRUxEUyIKK21zZ3N0ciAiQ0FNUE9TIE9CTElHQVRPUklPUyIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MjYKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjwtLXBhY2thZ2U+STwgcGFja2FnZT4iCittc2dpZCAiQjxQYWNrYWdlOj5JPCBwYWNrYWdlLW5hbWU+IgorbXNnc3RyICJCPC0tcGFja2FnZT5JPCBwYXF1ZXRlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNTozMAorbXNnaWQgIiIKKyJUaGUgdmFsdWUgb2YgdGhpcyBmaWVsZCBkZXRlcm1pbmVzIHRoZSBwYWNrYWdlIG5hbWUsIGFuZCBpcyB1c2VkIHRvIGdlbmVyYXRlICIKKyJmaWxlIG5hbWVzIGJ5IG1vc3QgaW5zdGFsbGF0aW9uIHRvb2xzLiIKK21zZ3N0ciAiIgorIkVsIHZhbG9yIGRlIGVzdGUgY2FtcG8gZGV0ZXJtaW5hIGVsIG5vbWJyZSBkZWwgcGFxdWV0ZSwgeSBjYXNpIHRvZGFzIGxhcyAiCisiaGVycmFtaWVudGFzIGRlIGluc3RhbGFjacOzbiBsbyB1c2FuIHBhcmEgZ2VuZXJhciBub21icmVzIGRlIGZpY2hlcm9zLiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MzAKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxWZXJzaW9uOj4gRTxsdD52ZXJzaW9uIHN0cmluZ0U8Z3Q+IgorbXNnaWQgIkI8VmVyc2lvbjo+STwgdmVyc2lvbi1zdHJpbmc+IgorbXNnc3RyICJCPFZlcnNpb246PiBFPGx0PmNhZGVuYS1kZS1jYXJhY3RlcmVzLWNvbi1lbC1uw7ptZXJvLWRlLXZlcnNpw7NuRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MzcKK21zZ2lkICIiCisiVHlwaWNhbGx5LCB0aGlzIGlzIHRoZSBvcmlnaW5hbCBwYWNrYWdlJ3MgdmVyc2lvbiBudW1iZXIgaW4gd2hhdGV2ZXIgZm9ybSAiCisidGhlIHByb2dyYW0ncyBhdXRob3IgdXNlcy4gSXQgbWF5IGFsc28gaW5jbHVkZSBhIERlYmlhbiByZXZpc2lvbiBudW1iZXIgKGZvciAiCisibm9uLW5hdGl2ZSBwYWNrYWdlcykuIFRoZSBleGFjdCBmb3JtYXQgYW5kIHNvcnRpbmcgYWxnb3JpdGhtIGFyZSBkZXNjcmliZWQgIgorImluIEI8ZGViLXZlcnNpb24+KDUpLiIKK21zZ3N0ciAiIgorIkdlbmVyYWxtZW50ZSwgZXMgbGEgdmVyc2nDs24gb3JpZ2luYWwgZGVsIHBhcXVldGUgZW4gZWwgZm9ybWF0byBxdWUgdXNlIGVsICIKKyJhdXRvci4gUHVlZGUgdGFtYmnDqW4gaW5jbHVpciBlbCBuw7ptZXJvIGRlIHJldmlzacOzbiBkZSBEZWJpYW4gKHBhcmEgcGFxdWV0ZXMgIgorInF1ZSBubyBzZWFuIG5hdGl2b3MpLiBFbCBmb3JtYXRvIGV4YWN0byB5IGVsIGFsZ29yaXRtbyBkZSBvcmRlbmFjacOzbiBzZSAiCisiZGVzY3JpYmVuIGVuIEI8ZGViLXZlcnNpb24+KDUpLiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MzcKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxNYWludGFpbmVyOj4gRTxsdD5mdWxsbmFtZSBlbWFpbEU8Z3Q+IgorbXNnaWQgIkI8TWFpbnRhaW5lcjo+STwgZnVsbG5hbWUtZW1haWw+IgorbXNnc3RyICJCPE1haW50YWluZXI6PiBFPGx0Pm5vbWJyZS1jb21wbGV0byBjb3JyZW8tZWxlY3Ryw7NuaWNvRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6NDIKK21zZ2lkICIiCisiU2hvdWxkIGJlIGluIHRoZSBmb3JtYXQgYEpvZSBCbG9nZ3MgRTxsdD5qYmxvZ2dzQGZvby5jb21FPGd0PicsIGFuZCBpcyAiCisidHlwaWNhbGx5IHRoZSBwZXJzb24gd2hvIGNyZWF0ZWQgdGhlIHBhY2thZ2UsIGFzIG9wcG9zZWQgdG8gdGhlIGF1dGhvciBvZiAiCisidGhlIHNvZnR3YXJlIHRoYXQgd2FzIHBhY2thZ2VkLiIKK21zZ3N0ciAiIgorIkRlYmVyw61hIHRlbmVyIHVuIGZvcm1hdG8gZGVsIHRpcG8gwqtGZXJuYW5kbyBGZXJuw6FuZGV6IEU8bHQ+ZmZkZXpAdGFsLiIKKyJjb21FPGd0PsK7LiBHZW5lcmFsbWVudGUsIGVzIGxhIHBlcnNvbmEgcXVlIGhhIGVtcGFxdWV0YWRvIGVsIHByb2dyYW1hLCB5IG5vICIKKyJzdSBhdXRvciBvcmlnaW5hbC4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjQyCisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8RGVzY3JpcHRpb246PiBFPGx0PnNob3J0IGRlc2NyaXB0aW9uRTxndD4iCittc2dpZCAiQjxEZXNjcmlwdGlvbjo+STwgc2hvcnQtZGVzY3JpcHRpb24+IgorbXNnc3RyICJCPERlc2NyaXB0aW9uOj4gRTxsdD5kZXNjcmlwY2nDs24tY29ydGFFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNTo0NQorIywgZnV6enkKKyN8IG1zZ2lkICJCPCA+RTxsdD5sb25nIGRlc2NyaXB0aW9uRTxndD4iCittc2dpZCAiQjwgPkk8bG9uZy1kZXNjcmlwdGlvbj4iCittc2dzdHIgIkI8ID5FPGx0PmRlc2NyaXBjacOzbi1sYXJnYUU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjUxCittc2dpZCAiIgorIlRoZSBmb3JtYXQgZm9yIHRoZSBwYWNrYWdlIGRlc2NyaXB0aW9uIGlzIGEgc2hvcnQgYnJpZWYgc3VtbWFyeSBvbiB0aGUgZmlyc3QgIgorImxpbmUgKGFmdGVyIHRoZSBcIkRlc2NyaXB0aW9uXCIgZmllbGQpLiBUaGUgZm9sbG93aW5nIGxpbmVzIHNob3VsZCBiZSB1c2VkICIKKyJhcyBhIGxvbmdlciwgbW9yZSBkZXRhaWxlZCBkZXNjcmlwdGlvbi4gRWFjaCBsaW5lIG9mIHRoZSBsb25nIGRlc2NyaXB0aW9uICIKKyJtdXN0IGJlIHByZWNlZGVkIGJ5IGEgc3BhY2UsIGFuZCBibGFuayBsaW5lcyBpbiB0aGUgbG9uZyBkZXNjcmlwdGlvbiBtdXN0ICIKKyJjb250YWluIGEgc2luZ2xlICcuJyBmb2xsb3dpbmcgdGhlIHByZWNlZGluZyBzcGFjZS4iCittc2dzdHIgIiIKKyJFbCBmb3JtYXRvIGRlIGxhIGRlc2NyaXBjacOzbiBkZSB1biBwYXF1ZXRlIGNvbnNpc3RlIGRlIHVuIHJlc3VtZW4gZW4gbGEgIgorInByaW1lcmEgbMOtbmVhIChkZXNwdcOpcyBkZWwgY2FtcG8gwqtEZXNjcmlwdGlvbsK7KS4gTGFzIGzDrW5lYXMgYSBjb250aW51YWNpw7NuICIKKyJzZSBkZWJlcsOtYW4gdXNhciBwYXJhIGxhIGRlc2NyaXBjacOzbiBtw6FzIGxhcmdhIHkgZGV0YWxsYWRhLiBVbiBlc3BhY2lvIGRlYmUgIgorInByZWNlZGVyIGNhZGEgbMOtbmVhIGRlIGxhIGRlc2NyaXBjacOzbiBsYXJnYSwgeSBsYXMgbMOtbmVhcyBlbiBibGFuY28gZGViZW4gIgorInRlbmVyIHVuIMO6bmljbyBwdW50byDCqy7CuyBhIGNvbnRpbnVhY2nDs24gZGVsIGVzcGFjaW8gcHJlY2VkZW50ZS4iCisKKyMuIHR5cGU6IFNICisjOiBkZWItY29udHJvbC41OjUyCisjLCBuby13cmFwCittc2dpZCAiT1BUSU9OQUwgRklFTERTIgorbXNnc3RyICJDQU1QT1MgT1BDSU9OQUxFUyIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6NTMgZGViLXNyYy1jb250cm9sLjU6OTAKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxTZWN0aW9uOj4gRTxsdD5zZWN0aW9uRTxndD4iCittc2dpZCAiQjxTZWN0aW9uOj5JPCBzZWN0aW9uPiIKK21zZ3N0ciAiQjxTZWN0aW9uOj4gRTxsdD5zZWNjacOzbkU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjU4Cittc2dpZCAiIgorIlRoaXMgaXMgYSBnZW5lcmFsIGZpZWxkIHRoYXQgZ2l2ZXMgdGhlIHBhY2thZ2UgYSBjYXRlZ29yeSBiYXNlZCBvbiB0aGUgIgorInNvZnR3YXJlIHRoYXQgaXQgaW5zdGFsbHMuIFNvbWUgY29tbW9uIHNlY3Rpb25zIGFyZSBgdXRpbHMnLCBgbmV0JywgYG1haWwnLCAiCisiYHRleHQnLCBgeDExJyBldGMuIgorbXNnc3RyICIiCisiRXMgdW4gY2FtcG8gZ2VuZXJhbCBxdWUgZGVmaW5lIGxhIGNhdGVnb3LDrWEgZGVsIHBhcXVldGUgYmFzw6FuZG9zZSBlbiBlbCAiCisicHJvZ3JhbWEgcXVlIGluc3RhbGEuIEFsZ3VuYXMgc2VjY2lvbmVzIGNvbXVuZXMgc29uIMKrdXRpbHPCuywgwqtuZXTCuywgwqttYWlswrssICIKKyLCq3RleHTCuywgwqt4MTHCuyBldGMuIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNTo1OCBkZWItc3JjLWNvbnRyb2wuNTo5NgorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPFByaW9yaXR5Oj4gRTxsdD5wcmlvcml0eUU8Z3Q+IgorbXNnaWQgIkI8UHJpb3JpdHk6Pkk8IHByaW9yaXR5PiIKK21zZ3N0ciAiQjxQcmlvcml0eTo+IEU8bHQ+cHJpb3JpZGFkRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6NjIKK21zZ2lkICIiCisiU2V0cyB0aGUgaW1wb3J0YW5jZSBvZiB0aGlzIHBhY2thZ2UgaW4gcmVsYXRpb24gdG8gdGhlIHN5c3RlbSBhcyBhIHdob2xlLiAgIgorIkNvbW1vbiBwcmlvcml0aWVzIGFyZSBgcmVxdWlyZWQnLCBgc3RhbmRhcmQnLCBgb3B0aW9uYWwnLCBgZXh0cmEnIGV0Yy4iCittc2dzdHIgIiIKKyJEZWZpbmUgbGEgaW1wb3J0YW5jaWEgZGVsIHBhcXVldGUgZW4gcmVsYWNpw7NuIGNvbiB0b2RvIGVsIHNpc3RlbWEuIEFsZ3VuYXMgIgorInByaW9yaWRhZGVzIGNvbXVuZXMgc29uIMKrcmVxdWlyZWTCuywgwqtzdGFuZGFyZMK7LCDCq29wdGlvbmFswrssIMKrZXh0cmHCuyBldGMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjcxIGRlYi1zcmMtY29udHJvbC41OjEwOQorbXNnaWQgIiIKKyJJbiBEZWJpYW4sIHRoZSBCPFNlY3Rpb24+IGFuZCBCPFByaW9yaXR5PiBmaWVsZHMgaGF2ZSBhIGRlZmluZWQgc2V0IG9mICIKKyJhY2NlcHRlZCB2YWx1ZXMgYmFzZWQgb24gdGhlIFBvbGljeSBNYW51YWwuICBBIGxpc3Qgb2YgdGhlc2UgdmFsdWVzIGNhbiBiZSAiCisib2J0YWluZWQgZnJvbSB0aGUgbGF0ZXN0IHZlcnNpb24gb2YgdGhlIEI8ZGViaWFuLXBvbGljeT4gcGFja2FnZS4iCittc2dzdHIgIiIKKyJFbiBEZWJpYW4gbG9zIGNhbXBvcyBCPFNlY3Rpb24+IHkgQjxQcmlvcml0eT4gdGllbmVuIGRlZmluaWRvcyB1biBjb25qdW50byAiCisicmVkdWNpZG8gZGUgdmFsb3JlcyB2w6FsaWRvcyBkZSBhY3VlcmRvIGFsIE1hbnVhbCBkZSBOb3JtYXMgZGUgRGViaWFuLiBQdWVkZSAiCisib2J0ZW5lciB1bmEgbGlzdGEgY29tcGxldGEgZGUgZXN0b3MgdmFsb3JlcyBjb24gbGEgw7psdGltYSB2ZXJzacOzbiBkZWwgIgorInBhcXVldGUgQjxkZWJpYW4tcG9saWN5Pi4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjcxIGRlYi1zcmMtY29udHJvbC41OjIxNgorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPEVzc2VudGlhbDo+IEU8bHQ+eWVzfG5vRTxndD4iCittc2dpZCAiQjxFc3NlbnRpYWw6PiBCPHllcz58Qjxubz4iCittc2dzdHIgIkI8RXNzZW50aWFsOj4gRTxsdD55ZXN8bm9FPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNTo3OAorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiVGhpcyBmaWVsZCBpcyB1c3VhbGx5IG9ubHkgbmVlZGVkIHdoZW4gdGhlIGFuc3dlciBpcyBgeWVzJy4gSXQgZGVub3RlcyBhICIKKyN8ICJwYWNrYWdlIHRoYXQgaXMgcmVxdWlyZWQgZm9yIHByb3BlciBvcGVyYXRpb24gb2YgdGhlIHN5c3RlbS4gRHBrZyBvciBhbnkgIgorI3wgIm90aGVyIGluc3RhbGxhdGlvbiB0b29sIHdpbGwgbm90IGFsbG93IGFuIEI8RXNzZW50aWFsPiBwYWNrYWdlIHRvIGJlICIKKyN8ICJyZW1vdmVkIChhdCBsZWFzdCBub3Qgd2l0aG91dCB1c2luZyBvbmUgb2YgdGhlIGZvcmNlIG9wdGlvbnMpLiIKK21zZ2lkICIiCisiVGhpcyBmaWVsZCBpcyB1c3VhbGx5IG9ubHkgbmVlZGVkIHdoZW4gdGhlIGFuc3dlciBpcyBCPHllcz4uIEl0IGRlbm90ZXMgYSAiCisicGFja2FnZSB0aGF0IGlzIHJlcXVpcmVkIGZvciBwcm9wZXIgb3BlcmF0aW9uIG9mIHRoZSBzeXN0ZW0uIERwa2cgb3IgYW55ICIKKyJvdGhlciBpbnN0YWxsYXRpb24gdG9vbCB3aWxsIG5vdCBhbGxvdyBhbiBCPEVzc2VudGlhbD4gcGFja2FnZSB0byBiZSByZW1vdmVkICIKKyIoYXQgbGVhc3Qgbm90IHdpdGhvdXQgdXNpbmcgb25lIG9mIHRoZSBmb3JjZSBvcHRpb25zKS4iCittc2dzdHIgIiIKKyJHZW5lcmFsbWVudGUsIGVzdGUgY2FtcG8gc8OzbG8gc2UgbmVjZXNpdGEgY3VhbmRvIGxhIHJlc3B1ZXN0YSBlcyDCq3llc8K7IChzw60pLiAiCisiSW5kaWNhIHVuIHBhcXVldGUgbmVjZXNhcmlvIChlc2VuY2lhbCkgcGFyYSBlbCBjb3JyZWN0byBmdW5jaW9uYW1pZW50byBkZWwgIgorInNpc3RlbWEuIERwa2cgbyBjdWFscXVpZXIgb3RyYSBoZXJyYW1pZW50YSBkZSBpbnN0YWxhY2nDs24gaW1waWRlbiAiCisiZGVzaW5zdGFsYXIgdW4gcGFxdWV0ZSBCPEVzc2VudGlhbD4gKGFsIG1lbm9zIHNpbiB1c2FyIG9wY2lvbmVzIGRlIGZvcnphZG8pLiAiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41Ojc4CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8QXJjaGl0ZWN0dXJlOj4gRTxsdD5hcmNofGFsbEU8Z3Q+IgorbXNnaWQgIkI8QXJjaGl0ZWN0dXJlOj4gSTxhcmNoPnxCPGFsbD4iCittc2dzdHIgIkI8QXJjaGl0ZWN0dXJlOj4gRTxsdD5hcmNofGFsbEU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41Ojg2Cittc2dpZCAiIgorIlRoZSBhcmNoaXRlY3R1cmUgc3BlY2lmaWVzIHdoaWNoIHR5cGUgb2YgaGFyZHdhcmUgdGhpcyBwYWNrYWdlIHdhcyBjb21waWxlZCAiCisiZm9yLiBDb21tb24gYXJjaGl0ZWN0dXJlcyBhcmUgYGkzODYnLCBgbTY4aycsIGBzcGFyYycsIGBhbHBoYScsIGBwb3dlcnBjJyAiCisiZXRjLiBOb3RlIHRoYXQgdGhlIEI8YWxsPiBvcHRpb24gaXMgbWVhbnQgZm9yIHBhY2thZ2VzIHRoYXQgYXJlIGFyY2hpdGVjdHVyZSAiCisiaW5kZXBlbmRlbnQuIFNvbWUgZXhhbXBsZXMgb2YgdGhpcyBhcmUgc2hlbGwgYW5kIFBlcmwgc2NyaXB0cywgYW5kICIKKyJkb2N1bWVudGF0aW9uLiIKK21zZ3N0ciAiIgorIkxhIGFycXVpdGVjdHVyYSBwYXJhIGxhIHF1ZSBzZSBjb21waWzDsyBlbCBwYXF1ZXRlLiBBcnF1aXRlY3R1cmFzIGNvbXVuZXMgc29uICIKKyLCq2kzODbCuywgwqttNjhrwrssIMKrc3BhcmPCuywgwqthbHBoYcK7LCDCq3Bvd2VycGPCuywgZXRjLiBUZW5nYSBlbiBjdWVudGEgcXVlIGxhICIKKyJvcGNpw7NuIEI8YWxsPiBlcyBwYXJhIHBhcXVldGVzIGluZGVwZW5kaWVudGVzIGRlIGxhIGFycXVpdGVjdHVyYSBjb21vIGxvIHNvbiAiCisibG9zIHNjcmlwdHMgZGUgUGVybCBvIGRvY3VtZW50YWNpw7NuLiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6ODYgZGViLXNyYy1jb250cm9sLjU6ODUKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxPcmlnaW46PiBFPGx0Pm5hbWVFPGd0PiIKK21zZ2lkICJCPE9yaWdpbjo+STwgbmFtZT4iCittc2dzdHIgIkI8T3JpZ2luOj4gRTxsdD5ub21icmVFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNTo4OQorbXNnaWQgIlRoZSBuYW1lIG9mIHRoZSBkaXN0cmlidXRpb24gdGhpcyBwYWNrYWdlIGlzIG9yaWdpbmF0aW5nIGZyb20uIgorbXNnc3RyICJFbCBub21icmUgZGUgbGEgZGlzdHJpYnVjacOzbiBvcmlnZW4gZGVsIHBhcXVldGUuIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNTo4OSBkZWItc3JjLWNvbnRyb2wuNTo2NgorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPEJ1Z3M6PiBFPGx0PnVybEU8Z3Q+IgorbXNnaWQgIkI8QnVnczo+STwgdXJsPiIKK21zZ3N0ciAiQjxCdWdzOj4gRTxsdD51cmxFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNTo5NAorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiVGhlIHVybCBvZiB0aGUgYnVnIHRyYWNraW5nIHN5c3RlbSBmb3IgdGhpcyBwYWNrYWdlLiBUaGUgY3VycmVudCB1c2VkICIKKyN8ICJmb3JtYXQgaXMgQjxFPGx0PmJ0c190eXBlRTxndD46Ly9FPGx0PmJ0c19hZGRyZXNzRTxndD4+LCBsaWtlIEI8ZGViYnVnczovLyIKKyN8ICJidWdzLmRlYmlhbi5vcmc+LiIKK21zZ2lkICIiCisiVGhlIEk8dXJsPiBvZiB0aGUgYnVnIHRyYWNraW5nIHN5c3RlbSBmb3IgdGhpcyBwYWNrYWdlLiBUaGUgY3VycmVudCB1c2VkICIKKyJmb3JtYXQgaXMgSTxidHMtdHlwZT5CPDovLz5JPGJ0cy1hZGRyZXNzPiwgbGlrZSBCPGRlYmJ1Z3M6Ly9idWdzLmRlYmlhbi5vcmc+LiIKK21zZ3N0ciAiIgorIkxhIGRpcmVjY2nDs24gdXJsIGRlbCBzaXN0ZW1hIGRlIHNlZ3VpbWllbnRvIGRlIGZhbGxvcyBkZSBlc3RlIHBhcXVldGUuIEVsICIKKyJmb3JtYXRvIHVzYWRvIGFjdHVhbG1lbnRlIGVzOiBCPEU8bHQ+dGlwby1idHNFPGd0PjovL0U8bHQ+ZGlyZWNjaW9uLSIKKyJidHNFPGd0Pj4sIHBvciBlamVtcGxvIEI8ZGViYnVnczovL2J1Z3MuZGViaWFuLm9yZz4uIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNTo5NCBkZWItc3JjLWNvbnRyb2wuNTo2MgorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPEhvbWVwYWdlOj4gRTxsdD51cmxFPGd0PiIKK21zZ2lkICJCPEhvbWVwYWdlOj5JPCB1cmw+IgorbXNnc3RyICJCPEhvbWVwYWdlOj4gRTxsdD51cmxFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNTo5NworIywgZnV6enkKKyN8IG1zZ2lkICJUaGUgdXBzdHJlYW0gcHJvamVjdCBob21lIHBhZ2UgVVJMLiIKK21zZ2lkICJUaGUgdXBzdHJlYW0gcHJvamVjdCBob21lIHBhZ2UgSTx1cmw+LiIKK21zZ3N0ciAiTGEgZGlyZWNjacOzbiB1cmwgZGUgbGEgcMOhZ2luYSBvZmljaWFsIGRlbCBhdXRvciBvcmlnaW5hbC4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41Ojk3IGRlYi1zcmMtY29udHJvbC41OjIyMgorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPFRhZzo+IEU8bHQ+dGFnIGxpc3RFPGd0PiIKK21zZ2lkICJCPFRhZzo+STwgdGFnLWxpc3Q+IgorbXNnc3RyICJCPFRhZzo+IEU8bHQ+bGlzdGEtZGUtZXRpcXVldGFzRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MTAxCittc2dpZCAiIgorIkxpc3Qgb2YgdGFncyBkZXNjcmliaW5nIHRoZSBxdWFsaXRpZXMgb2YgdGhlIHBhY2thZ2UuIFRoZSBkZXNjcmlwdGlvbiBhbmQgIgorImxpc3Qgb2Ygc3VwcG9ydGVkIHRhZ3MgY2FuIGJlIGZvdW5kIGluIHRoZSBCPGRlYnRhZ3M+IHBhY2thZ2UuIgorbXNnc3RyICIiCisiTGlzdGEgZGUgZXRpcXVldGFzIHF1ZSBkZXNjcmliZW4gbGFzIGNhcmFjdGVyw61zdGljYXMgZGVsIHBhcXVldGUuIExhIGxpc3RhIHkgIgorImRlc2NyaXBjacOzbiBkZSBsYXMgZXRpcXVldGFzIGFjZXB0YWRhcyBzZSBwdWVkZW4gZW5jb250cmFyIGVuIGVsIHBhcXVldGUgIgorIkI8ZGVidGFncz4uIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNToxMDEgZGViLXNyYy1jb250cm9sLjU6MjE5CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8U291cmNlOj4gRTxsdD5zb3VyY2UgbmFtZUU8Z3Q+IgorbXNnaWQgIkI8TXVsdGktQXJjaDo+IEI8c2FtZT58Qjxmb3JlaWduPnxCPGFsbG93ZWQ+IgorbXNnc3RyICJCPFNvdXJjZTo+IEU8bHQ+bm9tYnJlLWRlbC1jw7NkaWdvLWZ1ZW50ZUU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjExMworbXNnaWQgIiIKKyJUaGlzIGZpZWxkIGlzIHVzZWQgdG8gaW5kaWNhdGUgaG93IHRoaXMgcGFja2FnZSBzaG91bGQgYmVoYXZlIG9uIGEgbXVsdGktIgorImFyY2ggaW5zdGFsbGF0aW9ucy4gVGhlIHZhbHVlIEI8c2FtZT4gbWVhbnMgdGhhdCB0aGUgcGFja2FnZSBpcyBjby0iCisiaW5zdGFsbGFibGUgd2l0aCBpdHNlbGYsIGJ1dCBpdCBtdXN0IG5vdCBiZSB1c2VkIHRvIHNhdGlzZnkgdGhlIGRlcGVuZGVuY3kgIgorIm9mIGFueSBwYWNrYWdlIG9mIGEgZGlmZmVyZW50IGFyY2hpdGVjdHVyZSBmcm9tIGl0c2VsZi4gVGhlIHZhbHVlIEI8Zm9yZWlnbj4gIgorIm1lYW5zIHRoYXQgdGhlIHBhY2thZ2UgaXMgbm90IGNvLWluc3RhbGxhYmxlIHdpdGggaXRzZWxmLCBidXQgc2hvdWxkIGJlICIKKyJhbGxvd2VkIHRvIHNhdGlzZnkgdGhlIGRlcGVuZGVuY3kgb2YgYSBwYWNrYWdlIG9mIGEgZGlmZmVyZW50IGFyY2ggZnJvbSAiCisiaXRzZWxmLiBUaGUgdmFsdWUgQjxhbGxvd2VkPiBhbGxvd3MgcmV2ZXJzZS1kZXBlbmRlbmNpZXMgdG8gaW5kaWNhdGUgaW4gIgorInRoZWlyIERlcGVuZHMgZmllbGQgdGhhdCB0aGV5IG5lZWQgYSBwYWNrYWdlIGZyb20gYSBmb3JlaWduIGFyY2hpdGVjdHVyZSwgIgorImJ1dCBoYXMgbm8gZWZmZWN0IG90aGVyd2lzZS4gVGhpcyBmaWVsZCBzaG91bGQgbm90IGJlIHByZXNlbnQgaW4gcGFja2FnZXMgIgorIndpdGggdGhlIEI8QXJjaGl0ZWN0dXJlOiBhbGw+IGZpZWxkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNToxMTMKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxTb3VyY2U6PiBFPGx0PnNvdXJjZSBuYW1lRTxndD4iCittc2dpZCAiQjxTb3VyY2U6Pkk8IHNvdXJjZS1uYW1lPiIKK21zZ3N0ciAiQjxTb3VyY2U6PiBFPGx0Pm5vbWJyZS1kZWwtY8OzZGlnby1mdWVudGVFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToxMTcKK21zZ2lkICIiCisiVGhlIG5hbWUgb2YgdGhlIHNvdXJjZSBwYWNrYWdlIHRoYXQgdGhpcyBiaW5hcnkgcGFja2FnZSBjYW1lIGZyb20sIGlmICIKKyJkaWZmZXJlbnQgdGhhbiB0aGUgbmFtZSBvZiB0aGUgcGFja2FnZSBpdHNlbGYuIgorbXNnc3RyICIiCisiRWwgbm9tYnJlIGRlbCBwYXF1ZXRlIGZ1ZW50ZSBkZWwgcXVlIHByb3ZpZW5lIGVsIHBhcXVldGUgYmluYXJpbywgZW4gY2FzbyBkZSAiCisidGVuZXIgdW4gbm9tYnJlIGRpZmVyZW50ZSBhbCBwYXF1ZXRlIG9yaWdpbmFsLiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MTE4IGRlYi1zcmMtY29udHJvbC41OjIwMgorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPEFyY2hpdGVjdHVyZTo+IEU8bHQ+YXJjaHxhbGxFPGd0PiIKK21zZ2lkICJCPFN1YmFyY2hpdGVjdHVyZTo+STwgdmFsdWU+IgorbXNnc3RyICJCPEFyY2hpdGVjdHVyZTo+IEU8bHQ+YXJjaHxhbGxFPGd0PiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MTIxIGRlYi1zcmMtY29udHJvbC41OjIwNQorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPFZlcnNpb246PiBFPGx0PnZlcnNpb25FPGd0PiIKK21zZ2lkICJCPEtlcm5lbC1WZXJzaW9uOj5JPCB2YWx1ZT4iCittc2dzdHIgIkI8VmVyc2lvbjo+IEU8bHQ+dmVyc2nDs25FPGd0PiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MTI0IGRlYi1zcmMtY29udHJvbC41OjIwOAorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPERhdGU6PiBFPGx0PmRhdGVFPGd0PiIKK21zZ2lkICJCPEluc3RhbGxlci1NZW51LUl0ZW06Pkk8IHZhbHVlPiIKK21zZ3N0ciAiQjxEYXRlOj4gRTxsdD5mZWNoYUU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjEzMSBkZWItc3JjLWNvbnRyb2wuNToyMTUKK21zZ2lkICIiCisiVGhlc2UgZmllbGRzIGFyZSB1c2VkIGJ5IHRoZSBkZWJpYW4taW5zdGFsbGVyIGFuZCBhcmUgdXN1YWxseSBub3QgbmVlZGVkLiAgIgorIlNlZSAvdXNyL3NoYXJlL2RvYy9kZWJpYW4taW5zdGFsbGVyL2RldmVsL21vZHVsZXMudHh0IGZyb20gdGhlIEI8ZGViaWFuLSIKKyJpbnN0YWxsZXI+IHBhY2thZ2UgZm9yIG1vcmUgZGV0YWlscyBhYm91dCB0aGVtLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNToxMzIgZGViLXNyYy1jb250cm9sLjU6MjMzCisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8RGVwZW5kczo+IEU8bHQ+cGFja2FnZSBsaXN0RTxndD4iCittc2dpZCAiQjxEZXBlbmRzOj5JPCBwYWNrYWdlLWxpc3Q+IgorbXNnc3RyICJCPERlcGVuZHM6PiBFPGx0Pmxpc3RhLWRlLXBhcXVldGVzRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MTQzCittc2dpZCAiIgorIkxpc3Qgb2YgcGFja2FnZXMgdGhhdCBhcmUgcmVxdWlyZWQgZm9yIHRoaXMgcGFja2FnZSB0byBwcm92aWRlIGEgbm9uLXRyaXZpYWwgIgorImFtb3VudCBvZiBmdW5jdGlvbmFsaXR5LiBUaGUgcGFja2FnZSBtYWludGVuYW5jZSBzb2Z0d2FyZSB3aWxsIG5vdCBhbGxvdyBhICIKKyJwYWNrYWdlIHRvIGJlIGluc3RhbGxlZCBpZiB0aGUgcGFja2FnZXMgbGlzdGVkIGluIGl0cyBCPERlcGVuZHM+IGZpZWxkICIKKyJhcmVuJ3QgaW5zdGFsbGVkIChhdCBsZWFzdCBub3Qgd2l0aG91dCB1c2luZyB0aGUgZm9yY2Ugb3B0aW9ucykuICBJbiBhbiAiCisiaW5zdGFsbGF0aW9uLCB0aGUgcG9zdGluc3Qgc2NyaXB0cyBvZiBwYWNrYWdlcyBsaXN0ZWQgaW4gRGVwZW5kczogZmllbGRzIGFyZSAiCisicnVuIGJlZm9yZSB0aG9zZSBvZiB0aGUgcGFja2FnZXMgd2hpY2ggZGVwZW5kIG9uIHRoZW0uIE9uIHRoZSBvcHBvc2l0ZSwgaW4gYSAiCisicmVtb3ZhbCwgdGhlIHByZXJtIHNjcmlwdCBvZiBhIHBhY2thZ2UgaXMgcnVuIGJlZm9yZSB0aG9zZSBvZiB0aGUgcGFja2FnZXMgIgorImxpc3RlZCBpbiBpdHMgRGVwZW5kczogZmllbGQuIgorbXNnc3RyICIiCisiTGlzdGEgZGUgcGFxdWV0ZXMgbmVjZXNhcmlvcyBwYXJhIHF1ZSBlbCBwYXF1ZXRlIG9mcmV6Y2EgdW5hIGZ1bmNpb25hbGlkYWQgIgorImFjZXB0YWJsZS4gRWwgZ2VzdG9yIGRlIHBhcXVldGVzIG5vIGluc3RhbGFyw6EgZWwgcHJvZ3JhbWEgYSBtZW5vcyBxdWUgc2UgIgorImluc3RhbGVuIHByZXZpYW1lbnRlIHRvZG9zIGxvcyBwcm9ncmFtYXMgbGlzdGFkb3MgZW4gZWwgY2FtcG8gQjxEZXBlbmRzPiAoYWwgIgorIm1lbm9zIHNpbiB0ZW5lciBxdWUgdXNhciBsYXMgb3BjaW9uZXMgZGUgZm9yemFkbykuIFVuYSBpbnN0YWxhY2nDs24gc2llbXByZSAiCisiZWplY3V0YXLDoSBsb3Mgc2NyaXB0cyDCq3Bvc3RpbnN0wrsgKHBvc3QtaW5zdGFsYWNpw7NuKSBkZSBsb3MgcGFxdWV0ZXMgbGlzdGFkb3MgIgorImJham8gwqtEZXBlbmRzOsK7IGFudGVzIGRlIGxvcyBkZWwgcHJvZ3JhbWEgcXVlIGRlcGVuZGUgZGUgZWxsb3MuIFBvciBvdHJhICIKKyJwYXJ0ZSwgYWwgZWxpbWluYXIgdW4gcGFxdWV0ZSwgZWplY3V0YXLDoSBsb3Mgc2NyaXB0cyBkZSDCq3ByZXJtwrsgKHByZS0iCisiZWxpbWluYWNpw7NuKSBkZSBlc3RlIGFudGVzIGRlIGxvcyBzY3JpcHRzIGRlIGxvcyBwYXF1ZXRlcyBsaXN0YWRvcyBlbiBzdSAiCisiY2FtcG8gwqtEZXBlbmRzOsK7LiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MTQzIGRlYi1zcmMtY29udHJvbC41OjIzNgorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPFByZS1EZXBlbmRzOj4gRTxsdD5wYWNrYWdlIGxpc3RFPGd0PiIKK21zZ2lkICJCPFByZS1EZXBlbmRzOj5JPCBwYWNrYWdlLWxpc3Q+IgorbXNnc3RyICJCPFByZS1EZXBlbmRzOj4gRTxsdD5saXN0YS1kZS1wYXF1ZXRlc0U8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjE1MAorbXNnaWQgIiIKKyJMaXN0IG9mIHBhY2thZ2VzIHRoYXQgbXVzdCBiZSBpbnN0YWxsZWQgQjxhbmQ+IGNvbmZpZ3VyZWQgYmVmb3JlIHRoaXMgb25lICIKKyJjYW4gYmUgaW5zdGFsbGVkLiBUaGlzIGlzIHVzdWFsbHkgdXNlZCBpbiB0aGUgY2FzZSB3aGVyZSB0aGlzIHBhY2thZ2UgIgorInJlcXVpcmVzIGFub3RoZXIgcGFja2FnZSBmb3IgcnVubmluZyBpdHMgcHJlaW5zdCBzY3JpcHQuIgorbXNnc3RyICIiCisiTGlzdGEgZGUgcGFxdWV0ZXMgcXVlIGRlYmVuIGVzdGFyIGluc3RhbGFkb3MgQjx5PiBjb25maWd1cmFkb3MgYW50ZXMgZGUgbGEgIgorImluc3RhbGFjacOzbiBkZWwgcGFxdWV0ZS4gU2Ugc3VlbGUgdXNhciBlbiBjYXNvIGRlIHF1ZSBlbCBwYXF1ZXRlIHJlcXVpZXJhICIKKyJhbGfDum4gb3RybyBwYXF1ZXRlIHBhcmEgbGEgZWplY3VjacOzbiBkZSBzdSBzY3JpcHQgwqtwcmVpbnN0wrsuIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNToxNTAgZGViLXNyYy1jb250cm9sLjU6MjM5CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8UmVjb21tZW5kczo+IEU8bHQ+cGFja2FnZSBsaXN0RTxndD4iCittc2dpZCAiQjxSZWNvbW1lbmRzOj5JPCBwYWNrYWdlLWxpc3Q+IgorbXNnc3RyICJCPFJlY29tbWVuZHM6PiBFPGx0Pmxpc3RhLWRlLXBhcXVldGVzRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MTU3Cittc2dpZCAiIgorIkxpc3RzIHBhY2thZ2VzIHRoYXQgd291bGQgYmUgZm91bmQgdG9nZXRoZXIgd2l0aCB0aGlzIG9uZSBpbiBhbGwgYnV0IHVudXN1YWwgIgorImluc3RhbGxhdGlvbnMuIFRoZSBwYWNrYWdlIG1haW50ZW5hbmNlIHNvZnR3YXJlIHdpbGwgd2FybiB0aGUgdXNlciBpZiB0aGV5ICIKKyJpbnN0YWxsIGEgcGFja2FnZSB3aXRob3V0IHRob3NlIGxpc3RlZCBpbiBpdHMgQjxSZWNvbW1lbmRzPiBmaWVsZC4iCittc2dzdHIgIiIKKyJMaXN0YSBkZSBwYXF1ZXRlcyBxdWUgaGFiaXR1YWxtZW50ZSBlc3RhcsOtYW4gaW5zdGFsYWRvcyBjb24gZXN0ZSBwYXF1ZXRlLiBFbCAiCisicHJvZ3JhbWEgZGUgZ2VzdGnDs24gZGUgcGFxdWV0ZXMgYXZpc2Fyw6EgYWwgdXN1YXJpbyBzaSBpbnN0YWxhIHVuIHBhcXVldGUgc2luICIKKyJsb3MgcGFxdWV0ZXMgbGlzdGFkb3MgZW4gc3UgY2FtcG8gQjxSZWNvbW1lbmRzPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjE1NyBkZWItc3JjLWNvbnRyb2wuNToyNDIKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxTdWdnZXN0czo+IEU8bHQ+cGFja2FnZSBsaXN0RTxndD4iCittc2dpZCAiQjxTdWdnZXN0czo+STwgcGFja2FnZS1saXN0PiIKK21zZ3N0ciAiQjxTdWdnZXN0czo+IEU8bHQ+bGlzdGEtZGUtcGFxdWV0ZXNFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToxNjIKK21zZ2lkICIiCisiTGlzdHMgcGFja2FnZXMgdGhhdCBhcmUgcmVsYXRlZCB0byB0aGlzIG9uZSBhbmQgY2FuIHBlcmhhcHMgZW5oYW5jZSBpdHMgIgorInVzZWZ1bG5lc3MsIGJ1dCB3aXRob3V0IHdoaWNoIGluc3RhbGxpbmcgdGhpcyBwYWNrYWdlIGlzIHBlcmZlY3RseSAiCisicmVhc29uYWJsZS4iCittc2dzdHIgIiIKKyJMaXN0YSBkZSBwYXF1ZXRlcyByZWxhY2lvbmFkb3MgY29uIGVsIHBhcXVldGUgeSBxdWUgcHJvYmFibGVtZW50ZSBtZWpvcmFuIHN1ICIKKyJ1dGlsaWRhZCwgYXVucXVlIGRlYmUgc2VyIHBlcmZlY3RhbWVudGUgcmF6b25hYmxlIGluc3RhbGFyIGVsIHByb2dyYW1hIHNpbiAiCisiw6lzdG9zLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToxNzQKK21zZ2lkICIiCisiVGhlIHN5bnRheCBvZiBCPERlcGVuZHM+LCBCPFByZS1EZXBlbmRzPiwgQjxSZWNvbW1lbmRzPiBhbmQgQjxTdWdnZXN0cz4gIgorImZpZWxkcyBpcyBhIGxpc3Qgb2YgZ3JvdXBzIG9mIGFsdGVybmF0aXZlIHBhY2thZ2VzLiBFYWNoIGdyb3VwIGlzIGEgbGlzdCBvZiAiCisicGFja2FnZXMgc2VwYXJhdGVkIGJ5IHZlcnRpY2FsIGJhciAob3IgYHBpcGUnKSBzeW1ib2xzLCBgfCcuIFRoZSBncm91cHMgYXJlICIKKyJzZXBhcmF0ZWQgYnkgY29tbWFzLiBDb21tYXMgYXJlIHRvIGJlIHJlYWQgYXMgYEFORCcsIGFuZCBwaXBlcyBhcyBgT1InLCB3aXRoICIKKyJwaXBlcyBiaW5kaW5nIG1vcmUgdGlnaHRseS4gRWFjaCBwYWNrYWdlIG5hbWUgaXMgb3B0aW9uYWxseSBmb2xsb3dlZCBieSBhICIKKyJ2ZXJzaW9uIG51bWJlciBzcGVjaWZpY2F0aW9uIGluIHBhcmVudGhlc2VzLiIKK21zZ3N0ciAiIgorIkxhIHNpbnRheGlzIGRlIGxvcyBjYW1wb3MgQjxEZXBlbmRzPiwgQjxQcmUtRGVwZW5kcz4sIEI8UmVjb21tZW5kcz4geSAiCisiQjxTdWdnZXN0cz4gZXMgdW5hIGxpc3RhIGRlIGdydXBvcyBkZSBwYXF1ZXRlcyBhbHRlcm5hdGl2b3MuIENhZGEgZ3J1cG8gZXMgIgorInVuYSBsaXN0YSBkZSBwYXF1ZXRlcyBzZXBhcmFkbyBwb3IgdW5hIGJhcnJhIHZlcnRpY2FsIMKrfMK7LiBMb3MgZ3J1cG9zIHNlICIKKyJzZXBhcmFuIG1lZGlhbnRlIGNvbWFzLiBMYXMgY29tYXMgc2UgbGVlbiBjb21vIMKrQU5EwrssIHkgbGFzIGJhcnJhcyAiCisiaG9yaXpvbnRhbGVzIGNvbW8gwqtPUsK7LCBsbyBjdWFsIHNlIGV2YWzDumEgYW50ZXMgcXVlIMKrQU5EwrsuIENhZGEgZWxlbWVudG8gZXMgIgorInVuIG5vbWJyZSBkZSBwYXF1ZXRlIHF1ZSBwdWVkZSBpciBzZWd1aWRvIGRlIHVuIG7Dum1lcm8gZGUgdmVyc2nDs24gZGVmaW5pZG8gIgorImVudHJlIHBhcsOpbnRlc2lzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToxODAKK21zZ2lkICIiCisiQSB2ZXJzaW9uIG51bWJlciBtYXkgc3RhcnQgd2l0aCBhIGBFPGd0PkU8Z3Q+JywgaW4gd2hpY2ggY2FzZSBhbnkgbGF0ZXIgIgorInZlcnNpb24gd2lsbCBtYXRjaCwgYW5kIG1heSBzcGVjaWZ5IG9yIG9taXQgdGhlIERlYmlhbiBwYWNrYWdpbmcgcmV2aXNpb24gIgorIihzZXBhcmF0ZWQgYnkgYSBoeXBoZW4pLiBBY2NlcHRlZCB2ZXJzaW9uIHJlbGF0aW9uc2hpcHMgYXJlIFwiRTxndD5FPGd0PlwiICIKKyJmb3IgZ3JlYXRlciB0aGFuLCBcIkU8bHQ+RTxsdD5cIiBmb3IgbGVzcyB0aGFuLCBcIkU8Z3Q+PVwiIGZvciBncmVhdGVyIHRoYW4gIgorIm9yIGVxdWFsIHRvLCBcIkU8bHQ+PVwiIGZvciBsZXNzIHRoYW4gb3IgZXF1YWwgdG8sIGFuZCBcIj1cIiBmb3IgZXF1YWwgdG8uIgorbXNnc3RyICIiCisiVW4gbsO6bWVybyBkZSB2ZXJzacOzbiBwdWVkZSBlbXBlemFyIGNvbiDCq0U8Z3Q+RTxndD7CuywgZW4gY3V5byBjYXNvIGN1YWxxdWllciAiCisidmVyc2nDs24gcG9zdGVyaW9yIGVuY2FqYXLDrWEsIHNpZW5kbyBwb3NpYmxlIG9taXRpciBlbCBuw7ptZXJvIGRlIHJldmlzacOzbiBkZSAiCisiRGViaWFuIChzZXBhcmFkbyBwb3IgdW4gZ3Vpw7NuKS4gTGFzIHJlbGFjaW9uZXMgZGUgdmVyc2nDs24gdsOhbGlkYXMgc29uICIKKyLCq0U8Z3Q+RTxndD7CuyBwYXJhIG1heW9yIHF1ZSwgwqtFPGx0PkU8bHQ+wrsgcGFyYSBtZW5vciBxdWUswqtFPGd0Pj3CuyBwYXJhIG1heW9yICIKKyJvIGlndWFsIHF1ZSwgwqtFPGx0Pj3CuyBwYXJhIG1lbm9yIG8gaWd1YWwgeSDCqz3CuyBwYXJhIGlndWFsIHF1ZS4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjE4MCBkZWItc3JjLWNvbnRyb2wuNToyNDUKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxCcmVha3M6PiBFPGx0PnBhY2thZ2UgbGlzdEU8Z3Q+IgorbXNnaWQgIkI8QnJlYWtzOj5JPCBwYWNrYWdlLWxpc3Q+IgorbXNnc3RyICJCPEJyZWFrczo+IEU8bHQ+bGlzdGEtZGUtcGFxdWV0ZXNFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToxODgKK21zZ2lkICIiCisiTGlzdHMgcGFja2FnZXMgdGhhdCB0aGlzIG9uZSBicmVha3MsIGZvciBleGFtcGxlIGJ5IGV4cG9zaW5nIGJ1Z3Mgd2hlbiB0aGUgIgorIm5hbWVkIHBhY2thZ2VzIHJlbHkgb24gdGhpcyBvbmUuIFRoZSBwYWNrYWdlIG1haW50ZW5hbmNlIHNvZnR3YXJlIHdpbGwgbm90ICIKKyJhbGxvdyBicm9rZW4gcGFja2FnZXMgdG8gYmUgY29uZmlndXJlZDsgZ2VuZXJhbGx5IHRoZSByZXNvbHV0aW9uIGlzIHRvICIKKyJ1cGdyYWRlIHRoZSBwYWNrYWdlcyBuYW1lZCBpbiBhIEI8QnJlYWtzPiBmaWVsZC4iCittc2dzdHIgIiIKKyJMaXN0YSBkZSBwYXF1ZXRlcyBxdWUgZXN0ZSBwYXF1ZXRlIHJvbXBlLCBwb3IgZWplbXBsbywgYWwgZ2VuZXJhciBmYWxsb3MgIgorImN1YW5kbyBsb3MgcGFxdWV0ZXMgbWVuY2lvbmFkb3MgZGVwZW5kZW4gZGUgw6lzdGUuIEVsIHByb2dyYW1hIGRlIGdlc3Rpw7NuIGRlICIKKyJwYXF1ZXRlcyBpbXBlZGlyw6EgbGEgY29uZmlndXJhY2nDs24gZGUgcGFxdWV0ZXMgcm90b3M7IGxhIHNvbHVjacOzbiBtw6FzIGNvbcO6biAiCisiZXMgYWN0dWFsaXphciBsb3MgcGFxdWV0ZXMgbWVuY2lvbmFkb3MgZW4gZWwgY2FtcG8gQjxCcmVha3M+LiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MTg4IGRlYi1zcmMtY29udHJvbC41OjI1NAorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPENvbmZsaWN0czo+IEU8bHQ+cGFja2FnZSBsaXN0RTxndD4iCittc2dpZCAiQjxDb25mbGljdHM6Pkk8IHBhY2thZ2UtbGlzdD4iCittc2dzdHIgIkI8Q29uZmxpY3RzOj4gRTxsdD5saXN0YS1kZS1wYXF1ZXRlc0U8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjE5NgorbXNnaWQgIiIKKyJMaXN0cyBwYWNrYWdlcyB0aGF0IGNvbmZsaWN0IHdpdGggdGhpcyBvbmUsIGZvciBleGFtcGxlIGJ5IGNvbnRhaW5pbmcgZmlsZXMgIgorIndpdGggdGhlIHNhbWUgbmFtZXMuIFRoZSBwYWNrYWdlIG1haW50ZW5hbmNlIHNvZnR3YXJlIHdpbGwgbm90IGFsbG93ICIKKyJjb25mbGljdGluZyBwYWNrYWdlcyB0byBiZSBpbnN0YWxsZWQgYXQgdGhlIHNhbWUgdGltZS4gVHdvIGNvbmZsaWN0aW5nICIKKyJwYWNrYWdlcyBzaG91bGQgZWFjaCBpbmNsdWRlIGEgQjxDb25mbGljdHM+IGxpbmUgbWVudGlvbmluZyB0aGUgb3RoZXIuIgorbXNnc3RyICIiCisiTGlzdGEgZGUgcGFxdWV0ZXMgcXVlIGVudHJhbiBlbiBjb25mbGljdG8gY29uIMOpc3RlLCBwb3IgZWplbXBsbywgcG9yIHF1ZSAiCisiY29udGllbmVuIGZpY2hlcm9zIGNvbiBlbCBtaXNtbyBub21icmUuIEVsIHByb2dyYW1hIGRlIGdlc3Rpw7NuIGRlIHBhcXVldGVzICIKKyJpbXBlZGlyw6EgcXVlIGRvcyBwYXF1ZXRlcyBlbiBjb25mbGljdG8gZXN0w6luIGluc3RhbGFkb3MgYSBsYSB2ZXouIERvcyAiCisicGFxdWV0ZXMgY29uIGNvbmZsaWN0b3MgZW50cmUgZWxsb3MgZGViZW4gaW5jbHVpciBhbCBvdHJvIGVuIHN1IGNhbXBvICIKKyJCPENvbmZsaWN0cz4uIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNToxOTYgZGViLXNyYy1jb250cm9sLjU6MjUxCisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8UmVwbGFjZXM6PiBFPGx0PnBhY2thZ2UgbGlzdEU8Z3Q+IgorbXNnaWQgIkI8UmVwbGFjZXM6Pkk8IHBhY2thZ2UtbGlzdD4iCittc2dzdHIgIkI8UmVwbGFjZXM6PiBFPGx0Pmxpc3RhLWRlLXBhcXVldGVzRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MjA0Cittc2dpZCAiIgorIkxpc3Qgb2YgcGFja2FnZXMgZmlsZXMgZnJvbSB3aGljaCB0aGlzIG9uZSByZXBsYWNlcy4gVGhpcyBpcyB1c2VkIGZvciAiCisiYWxsb3dpbmcgdGhpcyBwYWNrYWdlIHRvIG92ZXJ3cml0ZSB0aGUgZmlsZXMgb2YgYW5vdGhlciBwYWNrYWdlIGFuZCBpcyAiCisidXN1YWxseSB1c2VkIHdpdGggdGhlIEI8Q29uZmxpY3RzPiBmaWVsZCB0byBmb3JjZSByZW1vdmFsIG9mIHRoZSBvdGhlciAiCisicGFja2FnZSwgaWYgdGhpcyBvbmUgYWxzbyBoYXMgdGhlIHNhbWUgZmlsZXMgYXMgdGhlIGNvbmZsaWN0ZWQgcGFja2FnZS4iCittc2dzdHIgIiIKKyJMaXN0YSBkZSBwYXF1ZXRlcyBxdWUgZXN0ZSBwYXF1ZXRlIHJlZW1wbGF6YS4gU2UgdXNhIHBhcmEgcGVybWl0aXIgcXVlIGVsICIKKyJwYXF1ZXRlIHNvYnJlZXNjcmliYSBsb3MgZmljaGVyb3MgZGUgb3RybyBwYXF1ZXRlLCBoYWJpdHVhbG1lbnRlIGxpc3RhZG8gIgorInRhbWJpw6luIGVuIGVsIGNhbXBvIEI8Q29uZmxpY3RzPiBwYXJhIGZvcnphciBsYSBkZXNpbnN0YWxhY2nDs24gZGVsIG90cm8gIgorInBhcXVldGUgZW4gY2FzbyBkZSBxdWUgZXN0ZSBwYXF1ZXRlIHRlbmdhIGZpY2hlcm9zIGNvbiBlbCBtaXNtbyBub21icmUuIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNToyMDQgZGViLXNyYy1jb250cm9sLjU6MjU3CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8UHJvdmlkZXM6PiBFPGx0PnBhY2thZ2UgbGlzdEU8Z3Q+IgorbXNnaWQgIkI8UHJvdmlkZXM6Pkk8IHBhY2thZ2UtbGlzdD4iCittc2dzdHIgIkI8UHJvdmlkZXM6PiBFPGx0Pmxpc3RhLWRlLXBhcXVldGVzRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MjE0Cittc2dpZCAiIgorIlRoaXMgaXMgYSBsaXN0IG9mIHZpcnR1YWwgcGFja2FnZXMgdGhhdCB0aGlzIG9uZSBwcm92aWRlcy4gVXN1YWxseSB0aGlzIGlzICIKKyJ1c2VkIGluIHRoZSBjYXNlIG9mIHNldmVyYWwgcGFja2FnZXMgYWxsIHByb3ZpZGluZyB0aGUgc2FtZSBzZXJ2aWNlLiAgRm9yICIKKyJleGFtcGxlLCBzZW5kbWFpbCBhbmQgZXhpbSBjYW4gc2VydmUgYXMgYSBtYWlsIHNlcnZlciwgc28gdGhleSBwcm92aWRlIGEgIgorImNvbW1vbiBwYWNrYWdlIChgbWFpbC10cmFuc3BvcnQtYWdlbnQnKSBvbiB3aGljaCBvdGhlciBwYWNrYWdlcyBjYW4gZGVwZW5kLiAiCisiVGhpcyB3aWxsIGFsbG93IHNlbmRtYWlsIG9yIGV4aW0gdG8gc2VydmUgYXMgYSB2YWxpZCBvcHRpb24gdG8gc2F0aXNmeSB0aGUgIgorImRlcGVuZGVuY3kuIFRoaXMgcHJldmVudHMgdGhlIHBhY2thZ2VzIHRoYXQgZGVwZW5kIG9uIGEgbWFpbCBzZXJ2ZXIgZnJvbSAiCisiaGF2aW5nIHRvIGtub3cgdGhlIHBhY2thZ2UgbmFtZXMgZm9yIGFsbCBvZiB0aGVtLCBhbmQgdXNpbmcgYHwnIHRvIHNlcGFyYXRlICIKKyJ0aGUgbGlzdC4iCittc2dzdHIgIiIKKyJMaXN0YSBkZSBwYXF1ZXRlcyB2aXJ0dWFsZXMgcHJvcG9yY2lvbmFkb3MgcG9yIGVzdGUgcGFxdWV0ZS4gSGFiaXR1YWxtZW50ZSwgIgorInNlIHVzYSBjdWFuZG8gaGF5IHZhcmlvcyBwYXF1ZXRlcyBxdWUgcHJvcG9yY2lvbmFuIGVsIG1pc21vIHNlcnZpY2lvLiBQb3IgIgorImVqZW1wbG8sIHRhbnRvIHNlbmRtYWlsIGNvbW8gZXhpbSBwdWVkZW4gc2VydmlyIGNvbW8gc2Vydmlkb3IgZGUgY29ycmVvLCB5ICIKKyJwb3IgZWxsbyBhbWJvcyBwcm9wb3JjaW9uYW4gZWwgcGFxdWV0ZSDCq21haWwtdHJhbnNwb3J0LWFnZW50wrssIGRlbCBjdWFsICIKKyJwdWVkZW4gZGVwZW5kZXIgb3Ryb3MgcGFxdWV0ZXMuIEVzdG8gcGVybWl0ZSBxdWUgdGFudG8gc2VuZG1haWwgY29tbyBleGltICIKKyJzZWFuIHVuYSBvcGNpw7NuIHbDoWxpZGEgcGFyYSBzYXRpc2ZhY2VyIGxhIGRlcGVuZGVuY2lhLiBFc3RvIGV2aXRhIHF1ZSB1biAiCisicGFxdWV0ZSBkZXBlbmRpZW50ZSBkZSB1biBzZXJ2aWRvciBkZSBjb3JyZW8gbmVjZXNpdGUgY29ub2NlciBsb3Mgbm9tYnJlcyBkZSAiCisidG9kb3MgbG9zIHBhcXVldGVzIGRlIGxvcyBzZXJ2aWRvcmVzIGRlIGNvcnJlbywgdXNhbmRvIHVuYSDCq3zCuyBwYXJhICIKKyJzZXBhcmFybG9zLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToyMzMKK21zZ2lkICIiCisiVGhlIHN5bnRheCBvZiBCPEJyZWFrcz4sIEI8Q29uZmxpY3RzPiwgQjxSZXBsYWNlcz4gYW5kIEI8UHJvdmlkZXM+IGlzIGEgbGlzdCAiCisib2YgcGFja2FnZSBuYW1lcywgc2VwYXJhdGVkIGJ5IGNvbW1hcyAoYW5kIG9wdGlvbmFsIHdoaXRlc3BhY2UpLiAgSW4gdGhlICIKKyJCPEJyZWFrcz4gYW5kIEI8Q29uZmxpY3RzPiBmaWVsZHMsIHRoZSBjb21tYSBzaG91bGQgYmUgcmVhZCBhcyBgT1InLiBBbiAiCisib3B0aW9uYWwgdmVyc2lvbiBjYW4gYWxzbyBiZSBnaXZlbiB3aXRoIHRoZSBzYW1lIHN5bnRheCBhcyBhYm92ZSBmb3IgdGhlICIKKyJCPEJyZWFrcz4sIEI8Q29uZmxpY3RzPiBhbmQgQjxSZXBsYWNlcz4gZmllbGRzLiIKK21zZ3N0ciAiIgorIkxhIHNpbnRheGlzIGRlIEI8QnJlYWtzPiwgQjxDb25mbGljdHM+LCBCPFJlcGxhY2VzPiB5IEI8UHJvdmlkZXM+IGVzIHVuYSAiCisibGlzdGEgZGUgbm9tYnJlcyBkZSBwYXF1ZXRlIHNlcGFyYWRvcyBwb3IgY29tYXMgKHkgb3BjaW9uYWxtZW50ZSBlc3BhY2lvcyBlbiAiCisiYmxhbmNvKS4gRW4gZWwgY2FtcG8gQjxDb25mbGljdHM+IGxhIGNvbWEgc2UgbGVlIGNvbW8gwqtPUsK7LiBBZGVtw6FzLCBwdWVkZSAiCisicHJvcG9yY2lvbmFyIHVuYSB2ZXJzacOzbiBvcGNpb25hbCBjb24gbGEgbWlzbWEgc2ludGF4aXMgZGUgYXJyaWJhIGVuIGxvcyAiCisiY2FtcG9zIEI8QnJlYWtzPiwgQjxDb25mbGljdHM+IHkgQjxSZXBsYWNlcz4uIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNToyMzQgZGViLXNyYy1jb250cm9sLjU6MjYwCisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8RGVwZW5kczo+IEU8bHQ+cGFja2FnZSBsaXN0RTxndD4iCittc2dpZCAiQjxCdWlsdC1Vc2luZzo+STwgcGFja2FnZS1saXN0PiIKK21zZ3N0ciAiQjxEZXBlbmRzOj4gRTxsdD5saXN0YS1kZS1wYXF1ZXRlc0U8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjI0NAorbXNnaWQgIiIKKyJUaGlzIGZpZWxkIGxpc3RzIGV4dHJhIHNvdXJjZSBwYWNrYWdlcyB0aGF0IHdlcmUgdXNlZCBkdXJpbmcgdGhlIGJ1aWxkIG9mICIKKyJ0aGlzIGJpbmFyeSBwYWNrYWdlLiAgVGhpcyBpcyBhbiBpbmRpY2F0aW9uIHRvIHRoZSBhcmNoaXZlIG1haW50ZW5hbmNlICIKKyJzb2Z0d2FyZSB0aGF0IHRoZXNlIGV4dHJhIHNvdXJjZSBwYWNrYWdlcyBtdXN0IGJlIGtlcHQgd2hpbHN0IHRoaXMgYmluYXJ5ICIKKyJwYWNrYWdlIGlzIG1haW50YWluZWQuICBUaGlzIGZpZWxkIG11c3QgYmUgYSBsaXN0IG9mIHNvdXJjZSBwYWNrYWdlIG5hbWVzICIKKyJ3aXRoIHN0cmljdCAoPSkgIHZlcnNpb24gcmVsYXRpb25zaGlwcy4gIE5vdGUgdGhhdCB0aGUgYXJjaGl2ZSBtYWludGVuYW5jZSAiCisic29mdHdhcmUgaXMgbGlrZWx5IHRvIHJlZnVzZSB0byBhY2NlcHQgYW4gdXBsb2FkIHdoaWNoIGRlY2xhcmVzIGEgQjxCdWlsdC0iCisiVXNpbmc+IHJlbGF0aW9uc2hpcCB3aGljaCBjYW5ub3QgYmUgc2F0aXNmaWVkIHdpdGhpbiB0aGUgYXJjaGl2ZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRlYi1jb250cm9sLjU6MjQ1IGRlYi1zcmMtY29udHJvbC41OjI4OCBzdGFydC1zdG9wLWRhZW1vbi44OjMwMgorIywgbm8td3JhcAorbXNnaWQgIkVYQU1QTEUiCittc2dzdHIgIkVKRU1QTE8iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MjY4CisjLCBuby13cmFwCittc2dpZCAiIgorIiMgQ29tbWVudFxuIgorIlBhY2thZ2U6IGdyZXBcbiIKKyJFc3NlbnRpYWw6IHllc1xuIgorIlByaW9yaXR5OiByZXF1aXJlZFxuIgorIlNlY3Rpb246IGJhc2VcbiIKKyJNYWludGFpbmVyOiBXaWNoZXJ0IEFra2VybWFuIEU8bHQ+d2Fra2VybWFAZGViaWFuLm9yZ0U8Z3Q+XG4iCisiQXJjaGl0ZWN0dXJlOiBzcGFyY1xuIgorIlZlcnNpb246IDIuNC0xXG4iCisiUHJlLURlcGVuZHM6IGxpYmM2IChFPGd0Pj0gMi4wLjEwNSlcbiIKKyJQcm92aWRlczogcmdyZXBcbiIKKyJDb25mbGljdHM6IHJncmVwXG4iCisiRGVzY3JpcHRpb246IEdOVSBncmVwLCBlZ3JlcCBhbmQgZmdyZXAuXG4iCisiIFRoZSBHTlUgZmFtaWx5IG9mIGdyZXAgdXRpbGl0aWVzIG1heSBiZSB0aGUgXCJmYXN0ZXN0IGdyZXAgaW4gdGhlIHdlc3RcIi5cbiIKKyIgR05VIGdyZXAgaXMgYmFzZWQgb24gYSBmYXN0IGxhenktc3RhdGUgZGV0ZXJtaW5pc3RpYyBtYXRjaGVyIChhYm91dFxuIgorIiB0d2ljZSBhcyBmYXN0IGFzIHN0b2NrIFVuaXggZWdyZXApIGh5YnJpZGl6ZWQgd2l0aCBhIEJveWVyLU1vb3JlLUdvc3BlclxuIgorIiBzZWFyY2ggZm9yIGEgZml4ZWQgc3RyaW5nIHRoYXQgZWxpbWluYXRlcyBpbXBvc3NpYmxlIHRleHQgZnJvbSBiZWluZ1xuIgorIiBjb25zaWRlcmVkIGJ5IHRoZSBmdWxsIHJlZ2V4cCBtYXRjaGVyIHdpdGhvdXQgbmVjZXNzYXJpbHkgaGF2aW5nIHRvXG4iCisiIGxvb2sgYXQgZXZlcnkgY2hhcmFjdGVyLiBUaGUgcmVzdWx0IGlzIHR5cGljYWxseSBtYW55IHRpbWVzIGZhc3RlclxuIgorIiB0aGFuIFVuaXggZ3JlcCBvciBlZ3JlcC4gKFJlZ3VsYXIgZXhwcmVzc2lvbnMgY29udGFpbmluZyBiYWNrcmVmZXJlbmNpbmdcbiIKKyIgd2lsbCBydW4gbW9yZSBzbG93bHksIGhvd2V2ZXIpLlxuIgorbXNnc3RyICIiCisiUGFja2FnZTogZ3JlcFxuIgorIkVzc2VudGlhbDogeWVzXG4iCisiUHJpb3JpdHk6IHJlcXVpcmVkXG4iCisiU2VjdGlvbjogYmFzZVxuIgorIk1haW50YWluZXI6IFdpY2hlcnQgQWtrZXJtYW4gRTxsdD53YWtrZXJtYUBkZWJpYW4ub3JnRTxndD5cbiIKKyJBcmNoaXRlY3R1cmU6IHNwYXJjXG4iCisiVmVyc2lvbjogMi40LTFcbiIKKyJQcmUtRGVwZW5kczogbGliYzYgKEU8Z3Q+PSAyLjAuMTA1KVxuIgorIlByb3ZpZGVzOiByZ3JlcFxuIgorIkNvbmZsaWN0czogcmdyZXBcbiIKKyJEZXNjcmlwdGlvbjogR05VIGdyZXAsIGVncmVwIGFuZCBmZ3JlcC5cbiIKKyIgVGhlIEdOVSBmYW1pbHkgb2YgZ3JlcCB1dGlsaXRpZXMgbWF5IGJlIHRoZSBcImZhc3Rlc3QgZ3JlcCBpbiB0aGUgd2VzdFwiLlxuIgorIiBHTlUgZ3JlcCBpcyBiYXNlZCBvbiBhIGZhc3QgbGF6eS1zdGF0ZSBkZXRlcm1pbmlzdGljIG1hdGNoZXIgKGFib3V0XG4iCisiIHR3aWNlIGFzIGZhc3QgYXMgc3RvY2sgVW5peCBlZ3JlcCkgaHlicmlkaXplZCB3aXRoIGEgQm95ZXItTW9vcmUtR29zcGVyXG4iCisiIHNlYXJjaCBmb3IgYSBmaXhlZCBzdHJpbmcgdGhhdCBlbGltaW5hdGVzIGltcG9zc2libGUgdGV4dCBmcm9tIGJlaW5nXG4iCisiIGNvbnNpZGVyZWQgYnkgdGhlIGZ1bGwgcmVnZXhwIG1hdGNoZXIgd2l0aG91dCBuZWNlc3NhcmlseSBoYXZpbmcgdG9cbiIKKyIgbG9vayBhdCBldmVyeSBjaGFyYWN0ZXIuIFRoZSByZXN1bHQgaXMgdHlwaWNhbGx5IG1hbnkgdGltZXMgZmFzdGVyXG4iCisiIHRoYW4gVW5peCBncmVwIG9yIGVncmVwLiAoUmVndWxhciBleHByZXNzaW9ucyBjb250YWluaW5nIGJhY2tyZWZlcmVuY2luZ1xuIgorIiB3aWxsIHJ1biBtb3JlIHNsb3dseSwgaG93ZXZlci4pXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6Mjc2Cittc2dpZCAiIgorIkI8ZGViPig1KSwgQjxkZWItdmVyc2lvbj4oNSksIEI8ZGVidGFncz4oMSksIEI8ZHBrZz4oMSksIEI8ZHBrZy1kZWI+KDEpLiIKK21zZ3N0ciAiIgorIkI8ZGViPig1KSwgQjxkZWItdmVyc2lvbj4oNSksIEI8ZGVidGFncz4oMSksIEI8ZHBrZz4oMSksIEI8ZHBrZy1kZWI+KDEpLiIKKworIy4gdHlwZTogVEgKKyM6IGRlYi1zcmMtY29udHJvbC41OjMKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiZGViLWNvbnRyb2wiCittc2dpZCAiZGViLXNyYy1jb250cm9sIgorbXNnc3RyICJkZWItY29udHJvbCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6NgorIywgZnV6enkKKyN8IG1zZ2lkICJkZWItY29udHJvbCAtIERlYmlhbiBwYWNrYWdlcycgbWFzdGVyIGNvbnRyb2wgZmlsZSBmb3JtYXQiCittc2dpZCAiZGViLXNyYy1jb250cm9sIC0gRGViaWFuIHNvdXJjZSBwYWNrYWdlcycgbWFzdGVyIGNvbnRyb2wgZmlsZSBmb3JtYXQiCittc2dzdHIgIiIKKyJkZWItY29udHJvbCAtIEZvcm1hdG8gZGVsIGZpY2hlcm8gZGUgY29udHJvbCBtYWVzdHJvIGRlIHBhcXVldGVzIGRlIERlYmlhbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MjgKK21zZ2lkICIiCisiRWFjaCBEZWJpYW4gc291cmNlIHBhY2thZ2UgY29udGFpbnMgdGhlIG1hc3RlciBcImNvbnRyb2xcIiBmaWxlLCB3aGljaCAiCisiY29udGFpbnMgYXQgbGVhc3QgMiBwYXJhZ3JhcGhzLCBzZXBhcmF0ZWQgYnkgYSBibGFuayBsaW5lLiBUaGUgZmlyc3QgIgorInBhcmFncmFwaCBsaXN0cyBhbGwgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHNvdXJjZSBwYWNrYWdlIGluIGdlbmVyYWwsIHdoaWxlICIKKyJlYWNoIGZvbGxvd2luZyBwYXJhZ3JhcGggZGVzY3JpYmVzIGV4YWN0bHkgb25lIGJpbmFyeSBwYWNrYWdlLiBFYWNoICIKKyJwYXJhZ3JhcGggY29uc2lzdHMgb2YgYXQgbGVhc3Qgb25lIGZpZWxkLiBBIGZpZWxkIHN0YXJ0cyB3aXRoIGEgZmllbGRuYW1lLCAiCisic3VjaCBhcyBCPFBhY2thZ2U+IG9yIEI8U2VjdGlvbj4gKGNhc2UgaW5zZW5zaXRpdmUpLCBmb2xsb3dlZCBieSBhIGNvbG9uLCAiCisidGhlIGJvZHkgb2YgdGhlIGZpZWxkIGFuZCBhIG5ld2xpbmUuICBNdWx0aS1saW5lIGZpZWxkcyBhcmUgYWxzbyBhbGxvd2VkLCAiCisiYnV0IGVhY2ggc3VwcGxlbWVudGFyeSBsaW5lLCB3aXRob3V0IGEgZmllbGRuYW1lLCBzaG91bGQgc3RhcnQgd2l0aCBhdCBsZWFzdCAiCisib25lIHNwYWNlLiBUaGUgY29udGVudCBvZiB0aGUgbXVsdGktbGluZSBmaWVsZHMgaXMgZ2VuZXJhbGx5IGpvaW5lZCB0byBhICIKKyJzaW5nbGUgbGluZSBieSB0aGUgdG9vbHMgKGV4Y2VwdCBpbiB0aGUgY2FzZSBvZiB0aGUgQjxEZXNjcmlwdGlvbj4gZmllbGQsICIKKyJzZWUgYmVsb3cpLiBUbyBpbnNlcnQgZW1wdHkgbGluZXMgaW50byBhIG11bHRpLWxpbmUgZmllbGQsIGluc2VydCBhIGRvdCAiCisiYWZ0ZXIgdGhlIHNwYWNlLiBMaW5lcyBzdGFydGluZyB3aXRoIGEgQjwnIyc+IGFyZSB0cmVhdGVkIGFzIGNvbW1lbnRzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZGViLXNyYy1jb250cm9sLjU6MjkKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiUkVRVUlSRUQgRklFTERTIgorbXNnaWQgIlNPVVJDRSBGSUVMRFMiCittc2dzdHIgIkNBTVBPUyBPQkxJR0FUT1JJT1MiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3JjLWNvbnRyb2wuNTozMAorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPFNvdXJjZTo+IEU8bHQ+c291cmNlIG5hbWVFPGd0PiIKK21zZ2lkICJCPFNvdXJjZTo+IEk8c291cmNlLXBhY2thZ2UtbmFtZT4gKHJlcXVpcmVkKSIKK21zZ3N0ciAiQjxTb3VyY2U6PiBFPGx0Pm5vbWJyZS1kZWwtY8OzZGlnby1mdWVudGVFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MzcKK21zZ2lkICIiCisiVGhlIHZhbHVlIG9mIHRoaXMgZmllbGQgaXMgdGhlIG5hbWUgb2YgdGhlIHNvdXJjZSBwYWNrYWdlLCBhbmQgc2hvdWxkIG1hdGNoICIKKyJ0aGUgbmFtZSBvZiB0aGUgc291cmNlIHBhY2thZ2UgaW4gdGhlIGRlYmlhbi9jaGFuZ2Vsb2cgZmlsZS4gQSBwYWNrYWdlIG5hbWUgIgorIm11c3QgY29uc2lzdCBvbmx5IG9mIGxvd2VyIGNhc2UgbGV0dGVycyAoYS16KSwgZGlnaXRzICgwLTkpLCBwbHVzICgrKSBhbmQgIgorIm1pbnVzICgtKSBzaWducywgYW5kIHBlcmlvZHMgKC4pLiBQYWNrYWdlIG5hbWVzIG11c3QgYmUgYXQgbGVhc3QgdHdvICIKKyJjaGFyYWN0ZXJzIGxvbmcgYW5kIG11c3Qgc3RhcnQgd2l0aCBhbiBhbHBoYW51bWVyaWMgY2hhcmFjdGVyLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLXNyYy1jb250cm9sLjU6MzgKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxNYWludGFpbmVyOj4gRTxsdD5mdWxsbmFtZSBlbWFpbEU8Z3Q+IgorbXNnaWQgIkI8TWFpbnRhaW5lcjo+IEk8ZnVsbG5hbWUtZW1haWw+IChyZXF1aXJlZCkiCittc2dzdHIgIkI8TWFpbnRhaW5lcjo+IEU8bHQ+bm9tYnJlLWNvbXBsZXRvIGNvcnJlby1lbGVjdHLDs25pY29FPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6NDMKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlNob3VsZCBiZSBpbiB0aGUgZm9ybWF0IGBKb2UgQmxvZ2dzIEU8bHQ+amJsb2dnc0Bmb28uY29tRTxndD4nLCBhbmQgaXMgIgorI3wgInR5cGljYWxseSB0aGUgcGVyc29uIHdobyBjcmVhdGVkIHRoZSBwYWNrYWdlLCBhcyBvcHBvc2VkIHRvIHRoZSBhdXRob3Igb2YgIgorI3wgInRoZSBzb2Z0d2FyZSB0aGF0IHdhcyBwYWNrYWdlZC4iCittc2dpZCAiIgorIlNob3VsZCBiZSBpbiB0aGUgZm9ybWF0IFwiSm9lIEJsb2dncyBFPGx0PmpibG9nZ3NAZm9vLmNvbUU8Z3Q+XCIsIGFuZCAiCisicmVmZXJlbmNlcyB0aGUgcGVyc29uIHdobyBjdXJyZW50bHkgbWFpbnRhaW5zIHRoZSBwYWNrYWdlLCBhcyBvcHBvc2VkIHRvIHRoZSAiCisiYXV0aG9yIG9mIHRoZSBzb2Z0d2FyZSBvciB0aGUgb3JpZ2luYWwgcGFja2FnZXIuIgorbXNnc3RyICIiCisiRGViZXLDrWEgdGVuZXIgdW4gZm9ybWF0byBkZWwgdGlwbyDCq0Zlcm5hbmRvIEZlcm7DoW5kZXogRTxsdD5mZmRlekB0YWwuIgorImNvbUU8Z3Q+wrsuIEdlbmVyYWxtZW50ZSwgZXMgbGEgcGVyc29uYSBxdWUgaGEgZW1wYXF1ZXRhZG8gZWwgcHJvZ3JhbWEsIHkgbm8gIgorInN1IGF1dG9yIG9yaWdpbmFsLiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zcmMtY29udHJvbC41OjQ0CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8TWFpbnRhaW5lcjo+IEU8bHQ+ZnVsbG5hbWUgZW1haWxFPGd0PiIKK21zZ2lkICJCPFVwbG9hZGVyczo+STwgZnVsbG5hbWUtZW1haWw+IgorbXNnc3RyICJCPE1haW50YWluZXI6PiBFPGx0Pm5vbWJyZS1jb21wbGV0byBjb3JyZW8tZWxlY3Ryw7NuaWNvRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjQ5Cittc2dpZCAiIgorIkxpc3RzIGFsbCB0aGUgbmFtZXMgYW5kIGVtYWlsIGFkZHJlc3NlcyBvZiBjby1tYWludGFpbmVycyBvZiB0aGUgcGFja2FnZSwgaW4gIgorInRoZSBzYW1lIGZvcm1hdCBhcyB0aGUgTWFpbnRhaW5lciBmaWVsZC4gTXVsdGlwbGUgY28tbWFpbnRhaW5lcnMgc2hvdWxkIGJlICIKKyJzZXBhcmF0ZWQgYnkgYSBjb21tYS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zcmMtY29udHJvbC41OjUwCisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8VmVyc2lvbjo+IEU8bHQ+dmVyc2lvbiBzdHJpbmdFPGd0PiIKK21zZ2lkICJCPFN0YW5kYXJkcy1WZXJzaW9uOj5JPCB2ZXJzaW9uLXN0cmluZz4iCittc2dzdHIgIkI8VmVyc2lvbjo+IEU8bHQ+Y2FkZW5hLWRlLWNhcmFjdGVyZXMtY29uLWVsLW7Dum1lcm8tZGUtdmVyc2nDs25FPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6NTYKK21zZ2lkICIiCisiVGhpcyBkb2N1bWVudHMgdGhlIG1vc3QgcmVjZW50IHZlcnNpb24gb2YgdGhlIHN0YW5kYXJkcyAod2hpY2ggY29uc2lzdHMgb2YgIgorInRoZSBEZWJpYW4gUG9saWN5IE1hbnVhbCBhbmQgcmVmZXJlbmNlZCB0ZXh0cyBmcm9tIHRoZSBCPGRlYmlhbi1wb2xpY3k+ICIKKyJwYWNrYWdlKSB0aGlzIHBhY2thZ2UgY29tcGxpZXMgdG8uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3JjLWNvbnRyb2wuNTo1NworIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPEVzc2VudGlhbDo+IEU8bHQ+eWVzfG5vRTxndD4iCittc2dpZCAiQjxETS1VcGxvYWQtQWxsb3dlZDo+IEI8eWVzPnxCPG5vPiIKK21zZ3N0ciAiQjxFc3NlbnRpYWw6PiBFPGx0Pnllc3xub0U8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNTo2MQorbXNnaWQgIiIKKyJUaGlzIGZpZWxkIGluZGljYXRlcyB3aGV0aGVyIHRoZSBwYWNrYWdlIGNhbiBiZSB1cGxvYWRlZCBieSBEZWJpYW4gIgorIk1haW50YWluZXJzIGFwcGVhcmluZyBpbiB0aGUgTWFpbnRhaW5lciBvciBVcGxvYWRlcnMgZmllbGQuIFRoZSBkZWZhdWx0ICIKKyJ2YWx1ZSBpcyBcIm5vXCIuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjY1Cittc2dpZCAiVGhlIHVwc3RyZWFtIHByb2plY3QgaG9tZSBwYWdlIFVSTC4iCittc2dzdHIgIkxhIGRpcmVjY2nDs24gdXJsIGRlIGxhIHDDoWdpbmEgb2ZpY2lhbCBkZWwgYXV0b3Igb3JpZ2luYWwuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNTo3MQorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiVGhlIHVybCBvZiB0aGUgYnVnIHRyYWNraW5nIHN5c3RlbSBmb3IgdGhpcyBwYWNrYWdlLiBUaGUgY3VycmVudCB1c2VkICIKKyN8ICJmb3JtYXQgaXMgQjxFPGx0PmJ0c190eXBlRTxndD46Ly9FPGx0PmJ0c19hZGRyZXNzRTxndD4+LCBsaWtlIEI8ZGViYnVnczovLyIKKyN8ICJidWdzLmRlYmlhbi5vcmc+LiIKK21zZ2lkICIiCisiVGhlIEk8dXJsPiBvZiB0aGUgYnVnIHRyYWNraW5nIHN5c3RlbSBmb3IgdGhpcyBwYWNrYWdlLiBUaGUgY3VycmVudCB1c2VkICIKKyJmb3JtYXQgaXMgSTxidHMtdHlwZT5CPDovLz5JPGJ0cy1hZGRyZXNzPiwgbGlrZSBCPGRlYmJ1Z3M6Ly9idWdzLmRlYmlhbi4iCisib3JnPi4gVGhpcyBmaWVsZCBpcyB1c3VhbGx5IG5vdCBuZWVkZWQuIgorbXNnc3RyICIiCisiTGEgZGlyZWNjacOzbiB1cmwgZGVsIHNpc3RlbWEgZGUgc2VndWltaWVudG8gZGUgZmFsbG9zIGRlIGVzdGUgcGFxdWV0ZS4gRWwgIgorImZvcm1hdG8gdXNhZG8gYWN0dWFsbWVudGUgZXM6IEI8RTxsdD50aXBvLWJ0c0U8Z3Q+Oi8vRTxsdD5kaXJlY2Npb24tIgorImJ0c0U8Z3Q+PiwgcG9yIGVqZW1wbG8gQjxkZWJidWdzOi8vYnVncy5kZWJpYW4ub3JnPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3JjLWNvbnRyb2wuNTo3MgorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPEJ1Z3M6PiBFPGx0PnVybEU8Z3Q+IgorbXNnaWQgIkI8VmNzLSo6Pkk8IHVybD4iCittc2dzdHIgIkI8QnVnczo+IEU8bHQ+dXJsRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41Ojc5Cittc2dpZCAiIgorIlRoZSBJPHVybD4gb2YgdGhlIFZlcnNpb24gQ29udHJvbCBTeXN0ZW0gcmVwb3NpdG9yeSB1c2VkIHRvIG1haW50YWluIHRoaXMgIgorInBhY2thZ2UuIEN1cnJlbnRseSBzdXBwb3J0ZWQgYXJlIEI8QXJjaD4sIEI8QnpyPiAoQmF6YWFyKSwgQjxDdnM+LCBCPERhcmNzPiwgIgorIkI8R2l0PiwgQjxIZz4gKE1lcmN1cmlhbCksIEI8TXRuPiAoTW9ub3RvbmUpIGFuZCBCPFN2bj4gKFN1YnZlcnNpb24pLiAiCisiVXN1YWxseSB0aGlzIGZpZWxkIHBvaW50cyB0byB0aGUgbGF0ZXN0IHZlcnNpb24gb2YgdGhlIHBhY2thZ2UsIHN1Y2ggYXMgdGhlICIKKyJtYWluIGJyYW5jaCBvciB0aGUgdHJ1bmsuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3JjLWNvbnRyb2wuNTo4MAorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPEJ1Z3M6PiBFPGx0PnVybEU8Z3Q+IgorbXNnaWQgIkI8VmNzLUJyb3dzZXI6Pkk8IHVybD4iCittc2dzdHIgIkI8QnVnczo+IEU8bHQ+dXJsRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41Ojg0Cittc2dpZCAiIgorIlRoZSBJPHVybD4gb2YgYSB3ZWJpbnRlcmZhY2UgdG8gYnJvd3NlIHRoZSBWZXJzaW9uIENvbnRyb2wgU3lzdGVtIHJlcG9zaXRvcnkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41Ojg5CisjLCBmdXp6eQorI3wgbXNnaWQgIlRoZSBuYW1lIG9mIHRoZSBkaXN0cmlidXRpb24gdGhpcyBwYWNrYWdlIGlzIG9yaWdpbmF0aW5nIGZyb20uIgorbXNnaWQgIiIKKyJUaGUgbmFtZSBvZiB0aGUgZGlzdHJpYnV0aW9uIHRoaXMgcGFja2FnZSBpcyBvcmlnaW5hdGluZyBmcm9tLiBUaGlzIGZpZWxkIGlzICIKKyJ1c3VhbGx5IG5vdCBuZWVkZWQuIgorbXNnc3RyICJFbCBub21icmUgZGUgbGEgZGlzdHJpYnVjacOzbiBvcmlnZW4gZGVsIHBhcXVldGUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNTo5NQorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiVGhpcyBpcyBhIGdlbmVyYWwgZmllbGQgdGhhdCBnaXZlcyB0aGUgcGFja2FnZSBhIGNhdGVnb3J5IGJhc2VkIG9uIHRoZSAiCisjfCAic29mdHdhcmUgdGhhdCBpdCBpbnN0YWxscy4gU29tZSBjb21tb24gc2VjdGlvbnMgYXJlIGB1dGlscycsIGBuZXQnLCAiCisjfCAiYG1haWwnLCBgdGV4dCcsIGB4MTEnIGV0Yy4iCittc2dpZCAiIgorIlRoaXMgaXMgYSBnZW5lcmFsIGZpZWxkIHRoYXQgZ2l2ZXMgdGhlIHBhY2thZ2UgYSBjYXRlZ29yeSBiYXNlZCBvbiB0aGUgIgorInNvZnR3YXJlIHRoYXQgaXQgaW5zdGFsbHMuIFNvbWUgY29tbW9uIHNlY3Rpb25zIGFyZSBcInV0aWxzXCIsIFwibmV0XCIsICIKKyJcIm1haWxcIiwgXCJ0ZXh0XCIsIFwieDExXCIsIGV0Yy4iCittc2dzdHIgIiIKKyJFcyB1biBjYW1wbyBnZW5lcmFsIHF1ZSBkZWZpbmUgbGEgY2F0ZWdvcsOtYSBkZWwgcGFxdWV0ZSBiYXPDoW5kb3NlIGVuIGVsICIKKyJwcm9ncmFtYSBxdWUgaW5zdGFsYS4gQWxndW5hcyBzZWNjaW9uZXMgY29tdW5lcyBzb24gwqt1dGlsc8K7LCDCq25ldMK7LCDCq21haWzCuywgIgorIsKrdGV4dMK7LCDCq3gxMcK7IGV0Yy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjEwMAorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiU2V0cyB0aGUgaW1wb3J0YW5jZSBvZiB0aGlzIHBhY2thZ2UgaW4gcmVsYXRpb24gdG8gdGhlIHN5c3RlbSBhcyBhICIKKyN8ICJ3aG9sZS4gIENvbW1vbiBwcmlvcml0aWVzIGFyZSBgcmVxdWlyZWQnLCBgc3RhbmRhcmQnLCBgb3B0aW9uYWwnLCBgZXh0cmEnICIKKyN8ICJldGMuIgorbXNnaWQgIiIKKyJTZXRzIHRoZSBpbXBvcnRhbmNlIG9mIHRoaXMgcGFja2FnZSBpbiByZWxhdGlvbiB0byB0aGUgc3lzdGVtIGFzIGEgd2hvbGUuICAiCisiQ29tbW9uIHByaW9yaXRpZXMgYXJlIFwicmVxdWlyZWRcIiwgXCJzdGFuZGFyZFwiLCBcIm9wdGlvbmFsXCIsIFwiZXh0cmFcIiwgIgorImV0Yy4iCittc2dzdHIgIiIKKyJEZWZpbmUgbGEgaW1wb3J0YW5jaWEgZGVsIHBhcXVldGUgZW4gcmVsYWNpw7NuIGNvbiB0b2RvIGVsIHNpc3RlbWEuIEFsZ3VuYXMgIgorInByaW9yaWRhZGVzIGNvbXVuZXMgc29uIMKrcmVxdWlyZWTCuywgwqtzdGFuZGFyZMK7LCDCq29wdGlvbmFswrssIMKrZXh0cmHCuyBldGMuIgorCisjLiB0eXBlOiBUUAorIzogZGViLXNyYy1jb250cm9sLjU6MTEwCisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8RGVwZW5kczo+IEU8bHQ+cGFja2FnZSBsaXN0RTxndD4iCittc2dpZCAiQjxCdWlsZC1EZXBlbmRzOj5JPCBwYWNrYWdlLWxpc3Q+IgorbXNnc3RyICJCPERlcGVuZHM6PiBFPGx0Pmxpc3RhLWRlLXBhcXVldGVzRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjExNAorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiSW4gdGhlIGxpc3Qgb2YgcGFja2FnZXMsIHRoZSB0ZXh0IGluZGljYXRpbmcgdGhlIGN1cnJlbnQgc3RhdGUgb2YgdGhlICIKKyN8ICJjdXJyZW50bHkgc2VsZWN0ZWQgcGFja2FnZS4iCittc2dpZCAiIgorIkEgbGlzdCBvZiBwYWNrYWdlcyB0aGF0IG5lZWQgdG8gYmUgaW5zdGFsbGVkIGFuZCBjb25maWd1cmVkIHRvIGJlIGFibGUgdG8gIgorImJ1aWxkIHRoZSBzb3VyY2UgcGFja2FnZS4iCittc2dzdHIgIiIKKyJFbiBsYSBsaXN0YSBkZSBwYXF1ZXRlcywgZWwgdGV4dG8gcXVlIGluZGljYSBlbCBlc3RhZG8gYWN0dWFsIGRlbCBwYXF1ZXRlICIKKyJzZWxlY2Npb25hZG8uIgorCisjLiB0eXBlOiBUUAorIzogZGViLXNyYy1jb250cm9sLjU6MTE1CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8RGVwZW5kczo+IEU8bHQ+cGFja2FnZSBsaXN0RTxndD4iCittc2dpZCAiQjxCdWlsZC1EZXBlbmRzLUluZGVwOj5JPCBwYWNrYWdlLWxpc3Q+IgorbXNnc3RyICJCPERlcGVuZHM6PiBFPGx0Pmxpc3RhLWRlLXBhcXVldGVzRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjEyMAorbXNnaWQgIiIKKyJTYW1lIGFzIEI8QnVpbGQtRGVwZW5kcz4sIGJ1dCB0aGV5IGFyZSBvbmx5IG5lZWRlZCB3aGVuIGJ1aWxkaW5nIHRoZSAiCisiYXJjaGl0ZWN0dXJlIGluZGVwZW5kZW50IHBhY2thZ2VzLiBUaGUgQjxCdWlsZC1EZXBlbmRzPiBhcmUgYWxzbyBpbnN0YWxsZWQgIgorImluIHRoaXMgY2FzZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zcmMtY29udHJvbC41OjEyMQorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPENvbmZsaWN0czo+IEU8bHQ+cGFja2FnZSBsaXN0RTxndD4iCittc2dpZCAiQjxCdWlsZC1Db25mbGljdHM6Pkk8IHBhY2thZ2UtbGlzdD4iCittc2dzdHIgIkI8Q29uZmxpY3RzOj4gRTxsdD5saXN0YS1kZS1wYXF1ZXRlc0U8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToxMjUKK21zZ2lkICIiCisiQSBsaXN0IG9mIHBhY2thZ2VzIHRoYXQgc2hvdWxkIG5vdCBiZSBpbnN0YWxsZWQgd2hlbiB0aGUgcGFja2FnZSBpcyBidWlsZCwgIgorImZvciBleGFtcGxlIGJlY2F1c2UgdGhleSBpbnRlcmZlcmUgd2l0aCB0aGUgdXNlZCBidWlsZCBzeXN0ZW0uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3JjLWNvbnRyb2wuNToxMjYKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxDb25mbGljdHM6PiBFPGx0PnBhY2thZ2UgbGlzdEU8Z3Q+IgorbXNnaWQgIkI8QnVpbGQtQ29uZmxpY3RzLUluZGVwOj5JPCBwYWNrYWdlLWxpc3Q+IgorbXNnc3RyICJCPENvbmZsaWN0czo+IEU8bHQ+bGlzdGEtZGUtcGFxdWV0ZXNFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MTMwCittc2dpZCAiIgorIlNhbWUgYXMgQjxCdWlsZC1Db25mbGljdHM+LCBidXQgb25seSB3aGVuIGJ1aWxkaW5nIHRoZSBhcmNoaXRlY3R1cmUgIgorImluZGVwZW5kZW50IHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToxNDEKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlRoZSBzeW50YXggb2YgQjxEZXBlbmRzPiwgQjxQcmUtRGVwZW5kcz4sIEI8UmVjb21tZW5kcz4gYW5kIEI8U3VnZ2VzdHM+ICIKKyN8ICJmaWVsZHMgaXMgYSBsaXN0IG9mIGdyb3VwcyBvZiBhbHRlcm5hdGl2ZSBwYWNrYWdlcy4gRWFjaCBncm91cCBpcyBhIGxpc3QgIgorI3wgIm9mIHBhY2thZ2VzIHNlcGFyYXRlZCBieSB2ZXJ0aWNhbCBiYXIgKG9yIGBwaXBlJykgc3ltYm9scywgYHwnLiBUaGUgIgorI3wgImdyb3VwcyBhcmUgc2VwYXJhdGVkIGJ5IGNvbW1hcy4gQ29tbWFzIGFyZSB0byBiZSByZWFkIGFzIGBBTkQnLCBhbmQgcGlwZXMgIgorI3wgImFzIGBPUicsIHdpdGggcGlwZXMgYmluZGluZyBtb3JlIHRpZ2h0bHkuIEVhY2ggcGFja2FnZSBuYW1lIGlzIG9wdGlvbmFsbHkgIgorI3wgImZvbGxvd2VkIGJ5IGEgdmVyc2lvbiBudW1iZXIgc3BlY2lmaWNhdGlvbiBpbiBwYXJlbnRoZXNlcy4iCittc2dpZCAiIgorIlRoZSBzeW50YXggb2YgdGhlIEI8QnVpbGQtRGVwZW5kcz4gYW5kIEI8QnVpbGQtRGVwZW5kcy1JbmRlcD4gZmllbGRzIGlzIGEgIgorImxpc3Qgb2YgZ3JvdXBzIG9mIGFsdGVybmF0aXZlIHBhY2thZ2VzLiBFYWNoIGdyb3VwIGlzIGEgbGlzdCBvZiBwYWNrYWdlcyAiCisic2VwYXJhdGVkIGJ5IHZlcnRpY2FsIGJhciAob3IgXCJwaXBlXCIpIHN5bWJvbHMsIFwifFwiLiBUaGUgZ3JvdXBzIGFyZSAiCisic2VwYXJhdGVkIGJ5IGNvbW1hcy4gQ29tbWFzIGFyZSB0byBiZSByZWFkIGFzIFwiQU5EXCIsIGFuZCBwaXBlcyBhcyBcIk9SXCIsICIKKyJ3aXRoIHBpcGVzIGJpbmRpbmcgbW9yZSB0aWdodGx5LiBFYWNoIHBhY2thZ2UgbmFtZSBpcyBvcHRpb25hbGx5IGZvbGxvd2VkIGJ5ICIKKyJhIHZlcnNpb24gbnVtYmVyIHNwZWNpZmljYXRpb24gaW4gcGFyZW50aGVzZXMgYW5kIGFuIGFyY2hpdGVjdHVyZSAiCisic3BlY2lmaWNhdGlvbiBpbiBzcXVhcmUgYnJhY2tldHMuIgorbXNnc3RyICIiCisiTGEgc2ludGF4aXMgZGUgbG9zIGNhbXBvcyBCPERlcGVuZHM+LCBCPFByZS1EZXBlbmRzPiwgQjxSZWNvbW1lbmRzPiB5ICIKKyJCPFN1Z2dlc3RzPiBlcyB1bmEgbGlzdGEgZGUgZ3J1cG9zIGRlIHBhcXVldGVzIGFsdGVybmF0aXZvcy4gQ2FkYSBncnVwbyBlcyAiCisidW5hIGxpc3RhIGRlIHBhcXVldGVzIHNlcGFyYWRvIHBvciB1bmEgYmFycmEgdmVydGljYWwgwqt8wrsuIExvcyBncnVwb3Mgc2UgIgorInNlcGFyYW4gbWVkaWFudGUgY29tYXMuIExhcyBjb21hcyBzZSBsZWVuIGNvbW8gwqtBTkTCuywgeSBsYXMgYmFycmFzICIKKyJob3Jpem9udGFsZXMgY29tbyDCq09SwrssIGxvIGN1YWwgc2UgZXZhbMO6YSBhbnRlcyBxdWUgwqtBTkTCuy4gQ2FkYSBlbGVtZW50byBlcyAiCisidW4gbm9tYnJlIGRlIHBhcXVldGUgcXVlIHB1ZWRlIGlyIHNlZ3VpZG8gZGUgdW4gbsO6bWVybyBkZSB2ZXJzacOzbiBkZWZpbmlkbyAiCisiZW50cmUgcGFyw6ludGVzaXMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToxNTAKK21zZ2lkICIiCisiVGhlIHN5bnRheCBvZiB0aGUgQjxCdWlsZC1Db25mbGljdHM+IGFuZCBCPEJ1aWxkLUNvbmZsaWN0cy1JbmRlcD4gZmllbGRzIGlzICIKKyJhIGxpc3Qgb2YgY29tbWEtc2VwYXJhdGVkIHBhY2thZ2UgbmFtZXMsIHdoZXJlIHRoZSBjb21tYSBpcyByZWFkIGFzIGFuIFwiQU5EIgorIlwiLiBTcGVjaWZ5aW5nIGFsdGVybmF0aXZlIHBhY2thZ2VzIHVzaW5nIGEgXCJwaXBlXCIgaXMgbm90IHN1cHBvcnRlZC4gIEVhY2ggIgorInBhY2thZ2UgbmFtZSBpcyBvcHRpb25hbGx5IGZvbGxvd2VkIGJ5IGEgdmVyc2lvbiBudW1iZXIgc3BlY2lmaWNhdGlvbiBpbiAiCisicGFyZW50aGVzZXMgYW5kIGFuIGFyY2hpdGVjdHVyZSBzcGVjaWZpY2F0aW9uIGluIHNxdWFyZSBicmFja2V0cy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MTU2CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJBIHZlcnNpb24gbnVtYmVyIG1heSBzdGFydCB3aXRoIGEgYEU8Z3Q+RTxndD4nLCBpbiB3aGljaCBjYXNlIGFueSBsYXRlciAiCisjfCAidmVyc2lvbiB3aWxsIG1hdGNoLCBhbmQgbWF5IHNwZWNpZnkgb3Igb21pdCB0aGUgRGViaWFuIHBhY2thZ2luZyByZXZpc2lvbiAiCisjfCAiKHNlcGFyYXRlZCBieSBhIGh5cGhlbikuIEFjY2VwdGVkIHZlcnNpb24gcmVsYXRpb25zaGlwcyBhcmUgXCJFPGd0PkU8Z3Q+IgorI3wgIlwiIGZvciBncmVhdGVyIHRoYW4sIFwiRTxsdD5FPGx0PlwiIGZvciBsZXNzIHRoYW4sIFwiRTxndD49XCIgZm9yIGdyZWF0ZXIgIgorI3wgInRoYW4gb3IgZXF1YWwgdG8sIFwiRTxsdD49XCIgZm9yIGxlc3MgdGhhbiBvciBlcXVhbCB0bywgYW5kIFwiPVwiIGZvciAiCisjfCAiZXF1YWwgdG8uIgorbXNnaWQgIiIKKyJBIHZlcnNpb24gbnVtYmVyIG1heSBzdGFydCB3aXRoIGEgXCJFPGd0PkU8Z3Q+XCIsIGluIHdoaWNoIGNhc2UgYW55IGxhdGVyICIKKyJ2ZXJzaW9uIHdpbGwgbWF0Y2gsIGFuZCBtYXkgc3BlY2lmeSBvciBvbWl0IHRoZSBEZWJpYW4gcGFja2FnaW5nIHJldmlzaW9uICIKKyIoc2VwYXJhdGVkIGJ5IGEgaHlwaGVuKS4gQWNjZXB0ZWQgdmVyc2lvbiByZWxhdGlvbnNoaXBzIGFyZSBcIkU8Z3Q+RTxndD5cIiAiCisiZm9yIGdyZWF0ZXIgdGhhbiwgXCJFPGx0PkU8bHQ+XCIgZm9yIGxlc3MgdGhhbiwgXCJFPGd0Pj1cIiBmb3IgZ3JlYXRlciB0aGFuICIKKyJvciBlcXVhbCB0bywgXCJFPGx0Pj1cIiBmb3IgbGVzcyB0aGFuIG9yIGVxdWFsIHRvLCBhbmQgXCI9XCIgZm9yIGVxdWFsIHRvLiIKK21zZ3N0ciAiIgorIlVuIG7Dum1lcm8gZGUgdmVyc2nDs24gcHVlZGUgZW1wZXphciBjb24gwqtFPGd0PkU8Z3Q+wrssIGVuIGN1eW8gY2FzbyBjdWFscXVpZXIgIgorInZlcnNpw7NuIHBvc3RlcmlvciBlbmNhamFyw61hLCBzaWVuZG8gcG9zaWJsZSBvbWl0aXIgZWwgbsO6bWVybyBkZSByZXZpc2nDs24gZGUgIgorIkRlYmlhbiAoc2VwYXJhZG8gcG9yIHVuIGd1acOzbikuIExhcyByZWxhY2lvbmVzIGRlIHZlcnNpw7NuIHbDoWxpZGFzIHNvbiAiCisiwqtFPGd0PkU8Z3Q+wrsgcGFyYSBtYXlvciBxdWUsIMKrRTxsdD5FPGx0PsK7IHBhcmEgbWVub3IgcXVlLMKrRTxndD49wrsgcGFyYSBtYXlvciAiCisibyBpZ3VhbCBxdWUsIMKrRTxsdD49wrsgcGFyYSBtZW5vciBvIGlndWFsIHkgwqs9wrsgcGFyYSBpZ3VhbCBxdWUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToxNjAKK21zZ2lkICIiCisiQSBhcmNoaXRlY3R1cmUgc3BlY2lmaWNhdGlvbiBjb25zaXN0cyBvZiBvbmUgb3IgbW9yZSBhcmNoaXRlY3R1cmUgbmFtZXMsICIKKyJzZXBhcmF0ZWQgYnkgd2hpdGVzcGFjZS4gRXhjbGFtYXRpb24gbWFya3MgbWF5IGJlIHByZXBlbmRlZCB0byBlYWNoIG9mIHRoZSAiCisibmFtZXMsIG1lYW5pbmcgXCJOT1RcIi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MTY1Cittc2dpZCAiIgorIk5vdGUgdGhhdCBkZXBlbmRlbmNpZXMgb24gcGFja2FnZXMgaW4gdGhlIEI8YnVpbGQtZXNzZW50aWFsPiBzZXQgY2FuIGJlICIKKyJvbWl0dGVkIGFuZCB0aGF0IGRlY2xhcmluZyBidWlsZCBjb25mbGljdHMgYWdhaW5zdCB0aGVtIGlzIGltcG9zc2libGUuIEEgIgorImxpc3Qgb2YgdGhlc2UgcGFja2FnZXMgaXMgaW4gdGhlIGJ1aWxkLWVzc2VudGlhbCBwYWNrYWdlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZGViLXNyYy1jb250cm9sLjU6MTY3CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIk9QVElPTkFMIEZJRUxEUyIKK21zZ2lkICJCSU5BUlkgRklFTERTIgorbXNnc3RyICJDQU1QT1MgT1BDSU9OQUxFUyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MTc2Cittc2dpZCAiIgorIk5vdGUgdGhhdCB0aGUgQjxQcmlvcml0eT4sIEI8U2VjdGlvbj4gYW5kIEI8SG9tZXBhZ2U+IGZpZWxkcyBjYW4gYWxzbyBiZSBpbiAiCisiYSBiaW5hcnkgcGFyYWdyYXBoIHRvIG92ZXJyaWRlIHRoZSBnbG9iYWwgdmFsdWUgZnJvbSB0aGUgc291cmNlIHBhY2thZ2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3JjLWNvbnRyb2wuNToxNzcKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxQYWNrYWdlOj4gRTxsdD5wYWNrYWdlIG5hbWVFPGd0PiIKK21zZ2lkICJCPFBhY2thZ2U6PiBJPGJpbmFyeS1wYWNrYWdlLW5hbWU+IChyZXF1aXJlZCkiCittc2dzdHIgIkI8UGFja2FnZTo+IEU8bHQ+bm9tYnJlLWRlbC1wYXF1ZXRlRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjE4MQorbXNnaWQgIiIKKyJUaGlzIGZpZWxkIGlzIHVzZWQgdG8gbmFtZSB0aGUgYmluYXJ5IHBhY2thZ2UgbmFtZS4gVGhlIHNhbWUgcmVzdHJpY3Rpb25zIGFzICIKKyJ0byBhIHNvdXJjZSBwYWNrYWdlIG5hbWUgYXBwbHkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3JjLWNvbnRyb2wuNToxODIKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxBcmNoaXRlY3R1cmU6PiBFPGx0PmFyY2h8YWxsRTxndD4iCittc2dpZCAiQjxBcmNoaXRlY3R1cmU6PiBJPGFyY2g+fEI8YWxsPnxCPGFueT4gKHJlcXVpcmVkKSIKK21zZ3N0ciAiQjxBcmNoaXRlY3R1cmU6PiBFPGx0PmFyY2h8YWxsRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjE5NQorbXNnaWQgIiIKKyJUaGUgYXJjaGl0ZWN0dXJlIHNwZWNpZmllcyBvbiB3aGljaCB0eXBlIG9mIGhhcmR3YXJlIHRoaXMgcGFja2FnZSBydW5zLiBGb3IgIgorInBhY2thZ2VzIHRoYXQgcnVuIG9uIGFsbCBhcmNoaXRlY3R1cmVzLCB1c2UgdGhlIEI8YW55PiB2YWx1ZS4gRm9yIHBhY2thZ2VzICIKKyJ0aGF0IGFyZSBhcmNoaXRlY3R1cmUgaW5kZXBlbmRlbnQsIHN1Y2ggYXMgc2hlbGwgYW5kIFBlcmwgc2NyaXB0cyBvciAiCisiZG9jdW1lbnRhdGlvbiwgdXNlIHRoZSBCPGFsbD4gdmFsdWUuIFRvIHJlc3RyaWN0IHRoZSBwYWNrYWdlcyB0byBhIGNlcnRhaW4gIgorInNldCBvZiBhcmNoaXRlY3R1cmVzLCBzcGVjaWZ5IHRoZSBhcmNoaXRlY3R1cmUgbmFtZXMsIHNlcGFyYXRlZCBieSBhIHNwYWNlLiAiCisiSXQncyBhbHNvIHBvc3NpYmxlIHRvIHB1dCBhcmNoaXRlY3R1cmUgd2lsZGNhcmRzIGluIHRoYXQgbGlzdCAoc2VlIEI8ZHBrZy0iCisiYXJjaGl0ZWN0dXJlPigxKSAgZm9yIG1vcmUgaW5mb3JtYXRpb24gYWJvdXQgdGhlbSkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3JjLWNvbnRyb2wuNToxOTYKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxQYWNrYWdlOj4gRTxsdD5wYWNrYWdlIG5hbWVFPGd0PiIKK21zZ2lkICJCPFBhY2thZ2UtVHlwZTo+IEI8ZGViPnxCPHVkZWI+IgorbXNnc3RyICJCPFBhY2thZ2U6PiBFPGx0Pm5vbWJyZS1kZWwtcGFxdWV0ZUU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToyMDEKK21zZ2lkICIiCisiVGhpcyBmaWVsZCBkZWZpbmVzIHRoZSB0eXBlIG9mIHRoZSBwYWNrYWdlLiBcInVkZWJcIiBpcyBmb3Igc2l6ZS1jb25zdHJhaW5lZCAiCisicGFja2FnZXMgdXNlZCBieSB0aGUgZGViaWFuIGluc3RhbGxlci4gXCJkZWJcIiBpcyB0aGUgZGVmYXVsdCB2YWx1ZSwgaXQncyAiCisiYXNzdW1lZCBpZiB0aGUgZmllbGQgaXMgYWJzZW50LiBNb3JlIHR5cGVzIG1pZ2h0IGJlIGFkZGVkIGluIHRoZSBmdXR1cmUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3JjLWNvbnRyb2wuNToyMjUKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxEZXNjcmlwdGlvbjo+IEU8bHQ+c2hvcnQgZGVzY3JpcHRpb25FPGd0PiIKK21zZ2lkICJCPERlc2NyaXB0aW9uOj4gSTxzaG9ydC1kZXNjcmlwdGlvbj4gKHJlcXVpcmVkKSIKK21zZ3N0ciAiQjxEZXNjcmlwdGlvbjo+IEU8bHQ+ZGVzY3JpcGNpw7NuLWNvcnRhRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjIzMgorbXNnaWQgIiIKKyJUaGVzZSBmaWVsZHMgYXJlIGRlc2NyaWJlZCBpbiB0aGUgQjxkZWItY29udHJvbD4oNSkgIG1hbnVhbCBwYWdlLCBhcyB0aGV5ICIKKyJhcmUgY29waWVkIGxpdGVyYWxseSB0byB0aGUgY29udHJvbCBmaWxlIG9mIHRoZSBiaW5hcnkgcGFja2FnZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zcmMtY29udHJvbC41OjI0OAorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPFJlcGxhY2VzOj4gRTxsdD5wYWNrYWdlIGxpc3RFPGd0PiIKK21zZ2lkICJCPEVuaGFuY2VzOj5JPCBwYWNrYWdlLWxpc3Q+IgorbXNnc3RyICJCPFJlcGxhY2VzOj4gRTxsdD5saXN0YS1kZS1wYXF1ZXRlc0U8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToyNzAKK21zZ2lkICIiCisiVGhlc2UgZmllbGRzIGRlY2xhcmUgcmVsYXRpb25zaGlwcyBiZXR3ZWVuIHBhY2thZ2VzLiBUaGV5IGFyZSBkaXNjdXNzZWQgaW4gIgorInRoZSBCPGRlYi1jb250cm9sPig1KSAgbWFucGFnZSBhbmQgaW4gdGhlIEI8ZGViaWFuLXBvbGljeT4gcGFja2FnZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRlYi1zcmMtY29udHJvbC41OjI3MQorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJSRVFVSVJFRCBGSUVMRFMiCittc2dpZCAiVVNFUi1ERUZJTkVEIEZJRUxEUyIKK21zZ3N0ciAiQ0FNUE9TIE9CTElHQVRPUklPUyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6Mjg2Cittc2dpZCAiIgorIkl0IGlzIGFsbG93ZWQgdG8gYWRkIGFkZGl0aW9uYWwgdXNlci1kZWZpbmVkIGZpZWxkcyB0byB0aGUgY29udHJvbCBmaWxlLiBUaGUgIgorInRvb2xzIHdpbGwgaWdub3JlIHRoZXNlIGZpZWxkcy4gSWYgeW91IHdhbnQgdGhlIGZpZWxkcyB0byBiZSBjb3BpZWQgb3ZlciB0byAiCisidGhlIG91dHB1dCBmaWxlcywgc3VjaCBhcyB0aGUgYmluYXJ5IHBhY2thZ2VzLCB5b3UgbmVlZCB0byB1c2UgYSBjdXN0b20gIgorIm5hbWluZyBzY2hlbWU6IHRoZSBmaWVsZHMgc2hvdWxkIHN0YXJ0IHdpdGggYSBYLCBmb2xsb3dlZCBieSBvbmUgb3IgbW9yZSBvZiAiCisidGhlIGxldHRlcnMgQkNTIGFuZCBhIGh5cGVuLiBJZiB0aGUgbGV0dGVyIEIgaXMgdXNlZCwgdGhlIGZpZWxkIHdpbGwgYXBwZWFyICIKKyJpbiB0aGUgY29udHJvbCBmaWxlIGluIHRoZSBiaW5hcnkgcGFja2FnZSwgc2VlIEI8ZGViLWNvbnRyb2w+KDUpLCBmb3IgdGhlICIKKyJsZXR0ZXIgUyBpbiB0aGUgc291cmNlIHBhY2thZ2UgY29udHJvbCBmaWxlIGFzIGNvbnN0cnVjdGVkIGJ5IEI8ZHBrZy1zb3VyY2U+IgorIigxKSAgYW5kIGZvciB0aGUgbGV0dGVyIEMgaW4gdGhlIHVwbG9hZCBjb250cm9sICguY2hhbmdlcykgZmlsZS4gTm90ZSB0aGF0ICIKKyJ0aGUgWFtCQ1NdLSBwcmVmaXhlcyBhcmUgc3RyaXBwZWQgd2hlbiB0aGUgZmllbGRzIGFyZSBjb3BpZWQgb3ZlciB0byB0aGUgIgorIm91dHB1dCBmaWxlcy4gQSBmaWVsZCBCPFhDLUFwcHJvdmVkLUJ5PiB3aWxsIGFwcGVhciBhcyBCPEFwcHJvdmVkLUJ5PiBpbiB0aGUgIgorImNoYW5nZXMgZmlsZSBhbmQgd2lsbCBub3QgYXBwZWFyIGluIHRoZSBiaW5hcnkgb3Igc291cmNlIHBhY2thZ2UgY29udHJvbCAiCisiZmlsZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjMwNAorIywgbm8td3JhcAorbXNnaWQgIiIKKyIjIENvbW1lbnRcbiIKKyJTb3VyY2U6IGRwa2dcbiIKKyJTZWN0aW9uOiBhZG1pblxuIgorIlByaW9yaXR5OiByZXF1aXJlZFxuIgorIk1haW50YWluZXI6IERwa2cgRGV2ZWxvcGVycyBFPGx0PmRlYmlhbi1kcGtnQGxpc3RzLmRlYmlhbi5vcmdFPGd0PlxuIgorIiMgdGhpcyBmaWVsZCBpcyBjb3BpZWQgdG8gdGhlIGJpbmFyeSBhbmQgc291cmNlIHBhY2thZ2VzXG4iCisiWEJTLVVwc3RyZWFtLVJlbGVhc2UtU3RhdHVzOiBzdGFibGVcbiIKKyJIb21lcGFnZTogaHR0cDovL3dpa2kuZGViaWFuLm9yZy9UZWFtcy9EcGtnXG4iCisiVmNzLUJyb3dzZXI6IGh0dHA6Ly9naXQuZGViaWFuLm9yZy8/cD1kcGtnL2Rwa2cuZ2l0XG4iCisiVmNzLUdpdDogZ2l0Oi8vZ2l0LmRlYmlhbi5vcmcvZ2l0L2Rwa2cvZHBrZy5naXRcbiIKKyJTdGFuZGFyZHMtVmVyc2lvbjogMy43LjNcbiIKKyJCdWlsZC1EZXBlbmRzOiBwa2ctY29uZmlnLCBkZWJoZWxwZXIgKEU8Z3Q+PSA0LjEuODEpLFxuIgorIiBsaWJzZWxpbnV4MS1kZXYgKEU8Z3Q+PSAxLjI4LTQpIFshbGludXgtYW55XVxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjMyMworIywgbm8td3JhcAorbXNnaWQgIiIKKyJQYWNrYWdlOiBkcGtnLWRldlxuIgorIlNlY3Rpb246IHV0aWxzXG4iCisiUHJpb3JpdHk6IG9wdGlvbmFsXG4iCisiQXJjaGl0ZWN0dXJlOiBhbGxcbiIKKyIjIHRoaXMgaXMgYSBjdXN0b20gZmllbGQgaW4gdGhlIGJpbmFyeSBwYWNrYWdlXG4iCisiWEItTWVudG9yaW5nLUNvbnRhY3Q6IFJhcGhhZWwgSGVydHpvZyBFPGx0PmhlcnR6b2dAZGViaWFuLm9yZ0U8Z3Q+XG4iCisiRGVwZW5kczogZHBrZyAoRTxndD49IDEuMTQuNiksIHBlcmw1LCBwZXJsLW1vZHVsZXMsIGNwaW8gKEU8Z3Q+PSAyLjQuMi0yKSxcbiIKKyIgYnppcDIsIGx6bWEsIHBhdGNoIChFPGd0Pj0gMi4yLTEpLCBtYWtlLCBiaW51dGlscywgbGlidGltZWRhdGUtcGVybFxuIgorIlJlY29tbWVuZHM6IGdjYyB8IGMtY29tcGlsZXIsIGJ1aWxkLWVzc2VudGlhbFxuIgorIlN1Z2dlc3RzOiBnbnVwZywgZGViaWFuLWtleXJpbmdcbiIKKyJDb25mbGljdHM6IGRwa2ctY3Jvc3MgKEU8bHQ+RTxsdD4gMi4wLjApLCBkZXZzY3JpcHRzIChFPGx0PkU8bHQ+IDIuMTAuMjYpXG4iCisiUmVwbGFjZXM6IG1hbnBhZ2VzLXBsIChFPGx0Pj0gMjAwNTExMTctMSlcbiIKKyJEZXNjcmlwdGlvbjogRGViaWFuIHBhY2thZ2UgZGV2ZWxvcG1lbnQgdG9vbHNcbiIKKyIgVGhpcyBwYWNrYWdlIHByb3ZpZGVzIHRoZSBkZXZlbG9wbWVudCB0b29scyAoaW5jbHVkaW5nIGRwa2ctc291cmNlKVxuIgorIiByZXF1aXJlZCB0byB1bnBhY2ssIGJ1aWxkIGFuZCB1cGxvYWQgRGViaWFuIHNvdXJjZSBwYWNrYWdlcy5cbiIKKyIgLlxuIgorIiBNb3N0IERlYmlhbiBzb3VyY2UgcGFja2FnZXMgd2lsbCByZXF1aXJlIGFkZGl0aW9uYWwgdG9vbHMgdG8gYnVpbGQ7XG4iCisiIGZvciBleGFtcGxlLCBtb3N0IHBhY2thZ2VzIG5lZWQgbWFrZSBhbmQgdGhlIEMgY29tcGlsZXIgZ2NjLlxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjMzMAorIywgZnV6enkKKyN8IG1zZ2lkICJCPGRlYi1jb250cm9sPig1KSwgQjxkZWI+KDUpLCBCPGRwa2c+KDEpIgorbXNnaWQgIkI8ZGViLWNvbnRyb2w+KDUpLCBCPGRlYi12ZXJzaW9uPig1KSwgQjxkcGtnLXNvdXJjZT4oMSkiCittc2dzdHIgIkI8ZGViLWNvbnRyb2w+KDUpLCBCPGRlYj4oNSksIEI8ZHBrZz4oMSkiCisKKyMuIHR5cGU6IFRICisjOiBkZWItc3BsaXQuNToxCisjLCBuby13cmFwCittc2dpZCAiZGViLXNwbGl0IgorbXNnc3RyICJkZWItc3BsaXQiCisKKyMuIHR5cGU6IFRICisjOiBkZWItc3BsaXQuNToxIGRwa2ctY2hlY2tidWlsZGRlcHMuMToxIGRwa2ctZGlzdGFkZGZpbGUuMToxIGRwa2ctc3BsaXQuMToyCisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjEgZHBrZy12ZW5kb3IuMToxIHN0YXJ0LXN0b3AtZGFlbW9uLjg6MQorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICIyMDEwLTAzLTA3IgorbXNnaWQgIjIwMTEtMDctMDQiCittc2dzdHIgIjcgZGUgTWFyem8gZGUgMjAxMCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNwbGl0LjU6NAorbXNnaWQgImRlYi1zcGxpdCAtIERlYmlhbiBtdWx0aS1wYXJ0IGJpbmFyeSBwYWNrYWdlIGZvcm1hdCIKK21zZ3N0ciAiZGViLXNwbGl0IC0gRm9ybWF0byBkZSBwYXF1ZXRlIGJpbmFyaW8gZGl2aWRpZG8gZGUgRGViaWFuIgorCisjIHR5cGU6IFBsYWluIHRleHQKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcGxpdC41OjkKK21zZ2lkICIiCisiVGhlIG11bHRpLXBhcnQgQjwuZGViPiBmb3JtYXQgaXMgdXNlZCB0byBzcGxpdCBiaWcgcGFja2FnZXMgaW50byBzbWFsbGVyICIKKyJwaWVjZXMgdG8gZWFzZSB0cmFuc3BvcnQgaW4gc21hbGwgbWVkaWEuIgorbXNnc3RyICIiCisiRWwgZm9ybWF0byBkZSBwYXF1ZXRlIGJpbmFyaW8gZGl2aWRpZG8gQjwuZGViPiBzZSB1c2EgcGFyYSBkaXZpZGlyIHBhcXVldGVzICIKKyJncmFuZGVzIGVuIHBlcXVlw7FhcyBwYXJ0ZXMsIGZhY2lsaXRhbmRvIHN1IHRyYW5zZmVyZW5jaWEgZW4gZGlzcG9zaXRpdm9zIGNvbiAiCisicG9jYSBjYXBhY2lkYWQgZGUgYWxtYWNlbmFtaWVudG8uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3BsaXQuNToxMgorbXNnaWQgIiIKKyJUaGUgZmlsZSBpcyBhbiBCPGFyPiBhcmNoaXZlIHdpdGggYSBtYWdpYyB2YWx1ZSBvZiBCPCFFPGx0PmFyY2hFPGd0Pj4uICBUaGUgIgorImZpbGUgbmFtZXMgbWlnaHQgY29udGFpbiBhIHRyYWlsaW5nIHNsYXNoIChzaW5jZSBkcGtnIDEuMTUuNikuIgorbXNnc3RyICIiCisiRWwgZmljaGVybyBlcyB1biBhcmNoaXZvIEI8YXI+IGNvbiB1biB2YWxvciBtw6FnaWNvIGRlIEI8IUU8bHQ+YXJjaEU8Z3Q+Pi4gIgorIkxvcyBub21icmVzIGRlIGZpY2hlcm8gcHVlZGVuIGNvbnRlbmVyIHVuYSBiYXJyYSBhbCBmaW5hbCAoYSBwYXJ0aXIgZGUgbGEgIgorInZlcnNpw7NuIDEuMTUuNiBkZSBkcGtnKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcGxpdC41OjE1Cittc2dpZCAiIgorIlRoZSBmaXJzdCBtZW1iZXIgaXMgbmFtZWQgQjxkZWJpYW4tc3BsaXQ+IGFuZCBjb250YWlucyBhIHNlcmllcyBvZiBsaW5lcywgIgorInNlcGFyYXRlZCBieSBuZXdsaW5lcy4gQ3VycmVudGx5IGVpZ2h0IGxpbmVzIGFyZSBwcmVzZW50OiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZGViLXNwbGl0LjU6MTUgZGViLXNwbGl0LjU6MTggZGViLXNwbGl0LjU6MjAgZGViLXNwbGl0LjU6MjIgZGViLXNwbGl0LjU6MjQKKyM6IGRlYi1zcGxpdC41OjI2IGRlYi1zcGxpdC41OjI4IGRlYi1zcGxpdC41OjMxIGRwa2ctZ2Vuc3ltYm9scy4xOjIwCisjOiBkcGtnLWdlbnN5bWJvbHMuMToyMiBkcGtnLWdlbnN5bWJvbHMuMToyNCBkcGtnLWdlbnN5bWJvbHMuMToyNgorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzExIGRwa2ctZ2Vuc3ltYm9scy4xOjMxNyBkcGtnLWdlbnN5bWJvbHMuMTozNTEKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM1NSBkcGtnLWdlbnN5bWJvbHMuMTozNTgKKyMsIG5vLXdyYXAKK21zZ2lkICJcXChidSIKK21zZ3N0ciAiXFwoYnUiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcGxpdC41OjE4Cittc2dpZCAiIgorIlRoZSBmb3JtYXQgdmVyc2lvbiBudW1iZXIsIEI8Mi4xPiBhdCB0aGUgdGltZSB0aGlzIG1hbnVhbCBwYWdlIHdhcyB3cml0dGVuLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3BsaXQuNToyMAorIywgZnV6enkKKyN8IG1zZ2lkICJUaGUgc291cmNlIHBhY2thZ2UgdmVyc2lvbi4iCittc2dpZCAiVGhlIHBhY2thZ2UgbmFtZS4iCittc2dzdHIgIkxhIHZlcnNpw7NuIGRlbCBwYXF1ZXRlIGZ1ZW50ZS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcGxpdC41OjIyCisjLCBmdXp6eQorI3wgbXNnaWQgIlRoZSBzb3VyY2UgcGFja2FnZSB2ZXJzaW9uLiIKK21zZ2lkICJUaGUgcGFja2FnZSB2ZXJzaW9uLiIKK21zZ3N0ciAiTGEgdmVyc2nDs24gZGVsIHBhcXVldGUgZnVlbnRlLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNwbGl0LjU6MjQKKyMsIGZ1enp5CisjfCBtc2dpZCAiVGhlIHNvdXJjZSBwYWNrYWdlIHZlcnNpb24uIgorbXNnaWQgIlRoZSBtZDVzdW0gb2YgdGhlIHBhY2thZ2UuIgorbXNnc3RyICJMYSB2ZXJzacOzbiBkZWwgcGFxdWV0ZSBmdWVudGUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3BsaXQuNToyNgorIywgZnV6enkKKyN8IG1zZ2lkICJUaGUgaGVhZGVyIGxpbmUgYWJvdmUgdGhlIGxpc3Qgb2YgcGFja2FnZXMuIgorbXNnaWQgIlRoZSB0b3RhbCBzaXplIG9mIHRoZSBwYWNrYWdlLiIKK21zZ3N0ciAiTGEgbMOtbmVhIGRlIGNhYmVjZXJhIGVuY2ltYSBkZSBsYSBsaXN0YSBkZSBwYXF1ZXRlcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcGxpdC41OjI4Cittc2dpZCAiVGhlIG1heGltdW0gcGFydCBzaXplLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3BsaXQuNTozMQorbXNnaWQgIiIKKyJUaGUgY3VycmVudCBwYXJ0IG51bWJlciwgZm9sbG93ZWQgYnkgYSBzbGFzaCBhbmQgdGhlIHRvdGFsIGFtb3VudCBvZiBwYXJ0cyAiCisiKGFzIGluIFxcKG9xMS8xMFxcKGNxKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNwbGl0LjU6MzMKK21zZ2lkICJUaGUgcGFja2FnZSBhcmNoaXRlY3R1cmUgKHNpbmNlIGRwa2cgMS4xNi4xKS4iCittc2dzdHIgIiIKKworIyB0eXBlOiBQbGFpbiB0ZXh0CisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3BsaXQuNTozNgorbXNnaWQgIiIKKyJQcm9ncmFtcyB3aGljaCByZWFkIG11bHRpLXBhcnQgYXJjaGl2ZXMgc2hvdWxkIGJlIHByZXBhcmVkIGZvciBhZGRpdGlvbmFsICIKKyJsaW5lcyB0byBiZSBwcmVzZW50LCBhbmQgc2hvdWxkIGlnbm9yZSB0aGVzZSBpZiB0aGlzIGlzIHRoZSBjYXNlLiIKK21zZ3N0ciAiIgorIkxvcyBwcm9ncmFtYXMgcXVlIGxlYW4gcGFxdWV0ZXMgYmluYXJpb3MgZGl2aWRpZG9zIGRlYmVyw61hbiBlc3RhciBwcmVwYXJhZG9zICIKKyJlbiBjYXNvIGRlIGVuY29udHJhciBudWV2YXMgbMOtbmVhcywgZSBpZ25vcmFybGFzIGVuIGNhc28gZGUgYXBhcmVjZXIuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3BsaXQuNTo0MQorbXNnaWQgIiIKKyJJZiB0aGUgdmVyc2lvbiBudW1iZXIgaGFzIGNoYW5nZWQsIGFuIGluY29tcGF0aWJsZSBjaGFuZ2UgaGFzIGJlZW4gbWFkZSBhbmQgIgorInRoZSBwcm9ncmFtIHNob3VsZCBzdG9wLiBJZiBpdCBoYXMgbm90LCB0aGVuIHRoZSBwcm9ncmFtIHNob3VsZCBiZSBhYmxlIHRvICIKKyJzYWZlbHkgY29udGludWUsIHVubGVzcyBpdCBlbmNvdW50ZXJzIGFuIHVuZXhwZWN0ZWQgbWVtYmVyIGluIHRoZSBhcmNoaXZlICIKKyIoZXhjZXB0IGF0IHRoZSBlbmQpLCBhcyBkZXNjcmliZWQgYmVsb3cuIgorbXNnc3RyICIiCisiU2kgZWwgbsO6bWVybyBkZSB2ZXJzacOzbiBtYXlvciBoYSBjYW1iaWFkbyBlcyBxdWUgaGF5IGNhbWJpb3MgaW5jb21wYXRpYmxlcyB5ICIKKyJlbCBwcm9ncmFtYSBzZSBkZWJlcsOtYSBkZXRlbmVyLiBEZSBubyBzZXIgYXPDrSwgc2UgZGViZXLDrWEgcG9kZXIgc2VndWlyIHNpbiAiCisicHJvYmxlbWFzLCBhIG5vIHNlciBxdWUgc2UgZW5jdWVudHJlIHVuIG1pZW1icm8gbm8gZXNwZXJhZG8gZW4gZWwgYXJjaGl2byAiCisiKGV4Y2VwdG8gYWwgZmluYWwpLCBjb21vIHNlIGRlc2NyaWJlIG3DoXMgYWJham8uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3BsaXQuNTo0NAorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiVGhlIHNlY29uZCwgbGFzdCByZXF1aXJlZCBtZW1iZXIgaXMgbmFtZWQgQjxkYXRhLj5OLCB3aGVyZSBOIGRlbm90ZXMgdGhlICIKKyN8ICJwYXJ0IG51bWJlci4gSXQgY29udGFpbnMgdGhlIHJhdyBwYXJ0IGRhdGEuIgorbXNnaWQgIiIKKyJUaGUgc2Vjb25kLCBsYXN0IHJlcXVpcmVkIG1lbWJlciBpcyBuYW1lZCBCPGRhdGEuPkk8Tj4sIHdoZXJlIEk8Tj4gZGVub3RlcyAiCisidGhlIHBhcnQgbnVtYmVyLiBJdCBjb250YWlucyB0aGUgcmF3IHBhcnQgZGF0YS4iCittc2dzdHIgIiIKKyJFbCBzZWd1bmRvIHkgw7psdGltbyBtaWVtYnJvIG9ibGlnYXRvcmlvIHNlIGxsYW1hIEI8ZGF0YS4+Ti4gwqtOwrsgc2ltYm9saXphIGVsICIKKyJuw7ptZXJvIGRlIGxhIHBhcnRlIHkgY29udGllbmUgbG9zIGRhdG9zIG5vIHByb2Nlc2Fkb3MgZGUgbGEgcGFydGUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3BsaXQuNTo0OQorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiVGhlc2UgbWVtYmVycyBtdXN0IG9jY3VyIGluIHRoaXMgZXhhY3Qgb3JkZXIuIEN1cnJlbnQgaW1wbGVtZW50YXRpb25zICIKKyN8ICJzaG91bGQgaWdub3JlIGFueSBhZGRpdGlvbmFsIG1lbWJlcnMgYWZ0ZXIgQjxkYXRhLj5OLiAgRnVydGhlciBtZW1iZXJzICIKKyN8ICJtYXkgYmUgZGVmaW5lZCBpbiB0aGUgZnV0dXJlLCBhbmQgKGlmIHBvc3NpYmxlKSB3aWxsIGJlIHBsYWNlZCBhZnRlciAiCisjfCAidGhlc2UgdHdvLiIKK21zZ2lkICIiCisiVGhlc2UgbWVtYmVycyBtdXN0IG9jY3VyIGluIHRoaXMgZXhhY3Qgb3JkZXIuIEN1cnJlbnQgaW1wbGVtZW50YXRpb25zIHNob3VsZCAiCisiaWdub3JlIGFueSBhZGRpdGlvbmFsIG1lbWJlcnMgYWZ0ZXIgQjxkYXRhLj5JPE4+LiAgRnVydGhlciBtZW1iZXJzIG1heSBiZSAiCisiZGVmaW5lZCBpbiB0aGUgZnV0dXJlLCBhbmQgKGlmIHBvc3NpYmxlKSB3aWxsIGJlIHBsYWNlZCBhZnRlciB0aGVzZSB0d28uIgorbXNnc3RyICIiCisiRXN0b3MgbWllbWJyb3MgZGViZW4gYXBhcmVjZXIgZW4gZXN0ZSBvcmRlbi4gTGFzIGltcGxlbWVudGFjaW9uZXMgYWN0dWFsZXMgIgorImRlYmVyw61hbiBpZ25vcmFyIGN1YWxxdWllciBtaWVtYnJvIGFkaWNpb25hbCBkZXNwdcOpcyBkZSBCPGRhdGEuPk4uIFBvZHLDoW4gIgorImRlZmluaXJzZSBudWV2b3MgbWllbWJyb3MgZW4gZWwgZnV0dXJvLCB5IHNlIHBvbmRyw6FuLCBzaSBlcyBwb3NpYmxlLCBkZXNwdcOpcyAiCisiZGUgw6lzdG9zIGRvcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcGxpdC41OjUxCittc2dpZCAiQjxkZWI+KDUpLCBCPGRwa2ctc3BsaXQ+KDEpLiIKK21zZ3N0ciAiQjxkZWI+KDUpLCBCPGRwa2ctc3BsaXQ+KDEpLiIKKworIy4gdHlwZTogVEgKKyM6IGRlYi12ZXJzaW9uLjU6NQorIywgbm8td3JhcAorbXNnaWQgImRlYi12ZXJzaW9uIgorbXNnc3RyICJkZWItdmVyc2lvbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNTo4Cittc2dpZCAiZGViLXZlcnNpb24gLSBEZWJpYW4gcGFja2FnZSB2ZXJzaW9uIG51bWJlciBmb3JtYXQiCittc2dzdHIgImRlYi12ZXJzaW9uIC0gRm9ybWF0byBkZWwgbsO6bWVybyBkZSB2ZXJzacOzbiBkZSBwYXF1ZXRlIGRlIERlYmlhbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNToxMQorIywgZnV6enkKKyN8IG1zZ2lkICJbIEk8ZXBvY2g+Ol0gSTx1cHN0cmVhbV92ZXJzaW9uPiBbLUk8ZGViaWFuX3JldmlzaW9uPiBdIgorbXNnaWQgIltJPGVwb2NoPkI8Oj5dSTx1cHN0cmVhbS12ZXJzaW9uPltCPC0+STxkZWJpYW4tcmV2aXNpb24+XSIKK21zZ3N0ciAiWyBJPGVwb2NoPjpdIEk8dmVyc2nDs24tYXV0b3Itb3JpZ2luYWw+IFstSTxyZXZpc2nDs24tZGViaWFuPiBdIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjE0Cittc2dpZCAiIgorIlZlcnNpb24gbnVtYmVycyBhcyB1c2VkIGZvciBEZWJpYW4gYmluYXJ5IGFuZCBzb3VyY2UgcGFja2FnZXMgY29uc2lzdCBvZiAiCisidGhyZWUgY29tcG9uZW50cy4gVGhlc2UgYXJlOiIKK21zZ3N0ciAiIgorIkxvcyBuw7ptZXJvcyBkZSB2ZXJzacOzbiB1c2Fkb3MgZW4gbG9zIHBhcXVldGVzIGZ1ZW50ZSB5IGJpbmFyaW9zIGRlIERlYmlhbiwgIgorImNvbnNpc3RlbiBkZSB0cmVzIGNvbXBvbmVudGVzLiBFc3RvcyBzb246IgorCisjLiB0eXBlOiBUUAorIzogZGViLXZlcnNpb24uNToxNAorIywgbm8td3JhcAorbXNnaWQgIkk8ZXBvY2g+IgorbXNnc3RyICJJPGVwb2NoPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNToyMAorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiVGhpcyBpcyBhIHNpbmdsZSAoZ2VuZXJhbGx5IHNtYWxsKSB1bnNpZ25lZCBpbnRlZ2VyLiAgSXQgbWF5IGJlIG9taXR0ZWQsICIKKyN8ICJpbiB3aGljaCBjYXNlIHplcm8gaXMgYXNzdW1lZC4gIElmIGl0IGlzIG9taXR0ZWQgdGhlbiB0aGUgIgorI3wgIkk8dXBzdHJlYW1fdmVyc2lvbj4gbWF5IG5vdCBjb250YWluIGFueSBjb2xvbnMuIgorbXNnaWQgIiIKKyJUaGlzIGlzIGEgc2luZ2xlIChnZW5lcmFsbHkgc21hbGwpIHVuc2lnbmVkIGludGVnZXIuICBJdCBtYXkgYmUgb21pdHRlZCwgaW4gIgorIndoaWNoIGNhc2UgemVybyBpcyBhc3N1bWVkLiAgSWYgaXQgaXMgb21pdHRlZCB0aGVuIHRoZSBJPHVwc3RyZWFtLXZlcnNpb24+ICIKKyJtYXkgbm90IGNvbnRhaW4gYW55IGNvbG9ucy4iCittc2dzdHIgIiIKKyJFcyB1biBzw7NsbyBlbnRlcm8gc2luIHNpZ25vIChnZW5lcmFsbWVudGUgcGVxdWXDsW8pLiBTZSBwdWVkZSBvbWl0aXIsIGVuIGN1eW8gIgorImNhc28gc2UgYXN1bWUgY2Vyby4gU2kgc2Ugb21pdGUsIEk8dmVyc2nDs24tYXV0b3Itb3JpZ2luYWw+IG5vIGRlYmUgY29udGVuZXIgIgorIm5pbmfDum4gc8OtbWJvbG8gZGUgZG9zIHB1bnRvcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6MjQKK21zZ2lkICIiCisiSXQgaXMgcHJvdmlkZWQgdG8gYWxsb3cgbWlzdGFrZXMgaW4gdGhlIHZlcnNpb24gbnVtYmVycyBvZiBvbGRlciB2ZXJzaW9ucyBvZiAiCisiYSBwYWNrYWdlLCBhbmQgYWxzbyBhIHBhY2thZ2UncyBwcmV2aW91cyB2ZXJzaW9uIG51bWJlcmluZyBzY2hlbWVzLCB0byBiZSAiCisibGVmdCBiZWhpbmQuIgorbXNnc3RyICIiCisiRXN0w6EgcHJlc2VudGUgcGFyYSBwZXJtaXRpciBlcnJvcmVzIGVuIGxvcyBuw7ptZXJvcyBkZSB2ZXJzaW9uZXMgYW50ZXJpb3JlcyAiCisiZGUgdW4gcGFxdWV0ZSwgeSB0YW1iacOpbiBsb3MgZXNxdWVtYXMgZGUgbnVtZXJhY2nDs24gYW50ZXJpb3JlcyBkZSB1biAiCisicGFxdWV0ZSwgYSBkZXNlY2hhciBlbiB1biBmdXR1cm8uIgorCisjLiB0eXBlOiBUUAorIzogZGViLXZlcnNpb24uNToyNAorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJJPHVwc3RyZWFtX3ZlcnNpb24+IgorbXNnaWQgIkk8dXBzdHJlYW0tdmVyc2lvbj4iCittc2dzdHIgIkk8dmVyc2nDs24tYXV0b3Itb3JpZ2luYWw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjM0Cittc2dpZCAiIgorIlRoaXMgaXMgdGhlIG1haW4gcGFydCBvZiB0aGUgdmVyc2lvbiBudW1iZXIuICBJdCBpcyB1c3VhbGx5IHRoZSB2ZXJzaW9uICIKKyJudW1iZXIgb2YgdGhlIG9yaWdpbmFsIChcInVwc3RyZWFtXCIpICBwYWNrYWdlIGZyb20gd2hpY2ggdGhlIEk8LmRlYj4gZmlsZSAiCisiaGFzIGJlZW4gbWFkZSwgaWYgdGhpcyBpcyBhcHBsaWNhYmxlLiAgVXN1YWxseSB0aGlzIHdpbGwgYmUgaW4gdGhlIHNhbWUgIgorImZvcm1hdCBhcyB0aGF0IHNwZWNpZmllZCBieSB0aGUgdXBzdHJlYW0gYXV0aG9yKHMpOyBob3dldmVyLCBpdCBtYXkgbmVlZCB0byAiCisiYmUgcmVmb3JtYXR0ZWQgdG8gZml0IGludG8gdGhlIHBhY2thZ2UgbWFuYWdlbWVudCBzeXN0ZW0ncyBmb3JtYXQgYW5kICIKKyJjb21wYXJpc29uIHNjaGVtZS4iCittc2dzdHIgIiIKKyJFc3RhIGVzIGxhIHBhcnRlIHByaW5jaXBhbCBkZWwgbsO6bWVybyBkZSB2ZXJzacOzbi4gSGFiaXR1YWxtZW50ZSwgZXMgaWd1YWwgYWwgIgorIm7Dum1lcm8gZGUgdmVyc2nDs24gZGVsIHBhcXVldGUgZGVsIGF1dG9yIG9yaWdpbmFsIGRlbCBjdWFsIHNlIGdlbmVyYSBlbCAiCisiZmljaGVybyDCqy5kZWLCuy4gU3VlbGUgZXN0YXIgZW4gZWwgbWlzbW8gZm9ybWF0byBxdWUgZWwgZXNwZWNpZmljYWRvIHBvciBlbCBvICIKKyJsb3MgYXV0b3IoZXMpIG9yaWdpbmFsZXM7IHNpbiBlbWJhcmdvLCBhbGd1bmFzIHZlY2VzIHB1ZWRlIHRlbmVyIG90cm8gIgorImZvcm1hdG8gcGFyYSBlbmNhamFyIGNvbiBlbCBmb3JtYXRvIGRlbCBzaXN0ZW1hIGRlIGdlc3Rpw7NuIGRlIHBhcXVldGVzIHkgZWwgIgorImVzcXVlbWEgZGUgY29tcGFyYWNpw7NuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNTozOQorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiVGhlIGNvbXBhcmlzb24gYmVoYXZpb3Igb2YgdGhlIHBhY2thZ2UgbWFuYWdlbWVudCBzeXN0ZW0gd2l0aCByZXNwZWN0IHRvICIKKyN8ICJ0aGUgSTx1cHN0cmVhbV92ZXJzaW9uPiBpcyBkZXNjcmliZWQgYmVsb3cuICBUaGUgSTx1cHN0cmVhbV92ZXJzaW9uPiAiCisjfCAicG9ydGlvbiBvZiB0aGUgdmVyc2lvbiBudW1iZXIgaXMgbWFuZGF0b3J5LiIKK21zZ2lkICIiCisiVGhlIGNvbXBhcmlzb24gYmVoYXZpb3Igb2YgdGhlIHBhY2thZ2UgbWFuYWdlbWVudCBzeXN0ZW0gd2l0aCByZXNwZWN0IHRvIHRoZSAiCisiSTx1cHN0cmVhbS12ZXJzaW9uPiBpcyBkZXNjcmliZWQgYmVsb3cuIFRoZSBJPHVwc3RyZWFtLXZlcnNpb24+IHBvcnRpb24gb2YgIgorInRoZSB2ZXJzaW9uIG51bWJlciBpcyBtYW5kYXRvcnkuIgorbXNnc3RyICIiCisiRWwgZnVuY2lvbmFtaWVudG8gZGVsIHByb2Nlc28gZGUgY29tcGFyYWNpw7NuIGRlbCBzaXN0ZW1hIGRlIHBhcXVldGVzICIKKyJyZXNwZWN0byBhIGxhIEk8dmVyc2nDs24tYXV0b3Itb3JpZ2luYWw+IHNlIGRlc2NyaWJlIGEgY29udGludWFjacOzbi4gTGEgIgorInNlY2Npw7NuIEk8dmVyc2nDs24tYXV0b3Itb3JpZ2luYWw+IGVzIG9ibGlnYXRvcmlhIGVuIGVsIG7Dum1lcm8gZGUgdmVyc2nDs24uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjQ4CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJUaGUgSTx1cHN0cmVhbV92ZXJzaW9uPiBtYXkgY29udGFpbiBvbmx5IGFscGhhbnVtZXJpY3MgKFwiQS1aYS16MC05XCIpICIKKyN8ICJhbmQgdGhlIGNoYXJhY3RlcnMgQjwuPiBCPCs+IEI8LT4gQjw6PiBCPH4+IChmdWxsIHN0b3AsIHBsdXMsIGh5cGhlbiwgIgorI3wgImNvbG9uLCB0aWxkZSkgYW5kIHNob3VsZCBzdGFydCB3aXRoIGEgZGlnaXQuICBJZiB0aGVyZSBpcyBubyAiCisjfCAiSTxkZWJpYW5fcmV2aXNpb24+IHRoZW4gaHlwaGVucyBhcmUgbm90IGFsbG93ZWQ7IGlmIHRoZXJlIGlzIG5vIEk8ZXBvY2g+ICIKKyN8ICJ0aGVuIGNvbG9ucyBhcmUgbm90IGFsbG93ZWQuIgorbXNnaWQgIiIKKyJUaGUgSTx1cHN0cmVhbS12ZXJzaW9uPiBtYXkgY29udGFpbiBvbmx5IGFscGhhbnVtZXJpY3MgKFwiQS1aYS16MC05XCIpIGFuZCAiCisidGhlIGNoYXJhY3RlcnMgQjwuPiBCPCs+IEI8LT4gQjw6PiBCPH4+IChmdWxsIHN0b3AsIHBsdXMsIGh5cGhlbiwgY29sb24sICIKKyJ0aWxkZSkgYW5kIHNob3VsZCBzdGFydCB3aXRoIGEgZGlnaXQuICBJZiB0aGVyZSBpcyBubyBJPGRlYmlhbi1yZXZpc2lvbj4gIgorInRoZW4gaHlwaGVucyBhcmUgbm90IGFsbG93ZWQ7IGlmIHRoZXJlIGlzIG5vIEk8ZXBvY2g+IHRoZW4gY29sb25zIGFyZSBub3QgIgorImFsbG93ZWQuIgorbXNnc3RyICIiCisiTGEgSTx2ZXJzacOzbi1hdXRvci1vcmlnaW5hbD4gc29sbyBwdWVkZSBjb250ZW5lciBsZXRyYXMgeSBuw7ptZXJvcyAowqtBLVphLSIKKyJ6MC05wrspIHkgbG9zIGNhcmFjdGVyZXMgQjwuPiBCPCs+IEI8LT4gQjw6PiBCPH4+IChwdW50bywgc3VtYSwgZ3Vpw7NuLCBkb3MgIgorInB1bnRvcyB5IHZpcmd1bGlsbGEpIHkgZGViZSBjb21lbnphciBjb24gdW4gZMOtZ2l0by4gU2kgbm8gZXhpc3RlIEk8cmV2aXNpw7NuLSIKKyJkZWJpYW4+IG5vIHNlIHBlcm1pdGVuIGxvcyBndWlvbmVzOyBzaSBubyBoYXkgSTxlcG9jaD4sIHRhbXBvY28gc2UgcGVybWl0ZW4gIgorImxvcyBkb3MgcHVudG9zLiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi12ZXJzaW9uLjU6NDgKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiSTxkZWJpYW5fcmV2aXNpb24+IgorbXNnaWQgIkk8ZGViaWFuLXJldmlzaW9uPiIKK21zZ3N0ciAiSTxyZXZpc2nDs24tZGViaWFuPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNTo1NworIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiVGhpcyBwYXJ0IG9mIHRoZSB2ZXJzaW9uIG51bWJlciBzcGVjaWZpZXMgdGhlIHZlcnNpb24gb2YgdGhlIERlYmlhbiAiCisjfCAicGFja2FnZSBiYXNlZCBvbiB0aGUgdXBzdHJlYW0gdmVyc2lvbi4gIEl0IG1heSBjb250YWluIG9ubHkgYWxwaGFudW1lcmljcyAiCisjfCAiYW5kIHRoZSBjaGFyYWN0ZXJzIEI8Kz4gQjwuPiBCPH4+IChwbHVzLCBmdWxsIHN0b3AsIHRpbGRlKSBhbmQgaXMgIgorI3wgImNvbXBhcmVkIGluIHRoZSBzYW1lIHdheSBhcyB0aGUgSTx1cHN0cmVhbV92ZXJzaW9uPiBpcy4iCittc2dpZCAiIgorIlRoaXMgcGFydCBvZiB0aGUgdmVyc2lvbiBudW1iZXIgc3BlY2lmaWVzIHRoZSB2ZXJzaW9uIG9mIHRoZSBEZWJpYW4gcGFja2FnZSAiCisiYmFzZWQgb24gdGhlIHVwc3RyZWFtIHZlcnNpb24uICBJdCBtYXkgY29udGFpbiBvbmx5IGFscGhhbnVtZXJpY3MgYW5kIHRoZSAiCisiY2hhcmFjdGVycyBCPCs+IEI8Lj4gQjx+PiAocGx1cywgZnVsbCBzdG9wLCB0aWxkZSkgYW5kIGlzIGNvbXBhcmVkIGluIHRoZSAiCisic2FtZSB3YXkgYXMgdGhlIEk8dXBzdHJlYW0tdmVyc2lvbj4gaXMuIgorbXNnc3RyICIiCisiRXN0YSBwYXJ0ZSBkZWwgbsO6bWVybyBkZSB2ZXJzacOzbiBkZWZpbmUgbGEgdmVyc2nDs24gZGVsIHBhcXVldGUgZGUgRGViaWFuIGVuICIKKyJiYXNlIGEgbGEgdmVyc2nDs24gZGVsIGRlc2Fycm9sbGFkb3Igb3JpZ2luYWwuIFPDs2xvIHB1ZWRlIGNvbnRlbmVyIGNhcmFjdGVyZXMgIgorImFsZmFudW3DqXJpY29zLCBhZGVtw6FzIGRlIGxvcyBjYXJhY3RlcmVzIEI8Kz4gQjwuPiBCPH4+IChtw6FzLCBwdW50bywgIgorInZpcmd1bGlsbGEpIHkgc2UgY29tcGFyYSBkZSBsYSBtaXNtYSBtYW5lcmEgcXVlIHNlIGNvbXBhcmEgSTx2ZXJzacOzbi1hdXRvci0iCisib3JpZ2luYWw+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNTo2NAorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiSXQgaXMgb3B0aW9uYWw7IGlmIGl0IGlzbid0IHByZXNlbnQgdGhlbiB0aGUgSTx1cHN0cmVhbV92ZXJzaW9uPiBtYXkgbm90ICIKKyN8ICJjb250YWluIGEgaHlwaGVuLiAgVGhpcyBmb3JtYXQgcmVwcmVzZW50cyB0aGUgY2FzZSB3aGVyZSBhIHBpZWNlIG9mICIKKyN8ICJzb2Z0d2FyZSB3YXMgd3JpdHRlbiBzcGVjaWZpY2FsbHkgdG8gYmUgdHVybmVkIGludG8gYSBEZWJpYW4gcGFja2FnZSwgYW5kICIKKyN8ICJzbyB0aGVyZSBpcyBvbmx5IG9uZSBcImRlYmlhbmlzYXRpb25cIiBvZiBpdCBhbmQgdGhlcmVmb3JlIG5vIHJldmlzaW9uICIKKyN8ICJpbmRpY2F0aW9uIGlzIHJlcXVpcmVkLiIKK21zZ2lkICIiCisiSXQgaXMgb3B0aW9uYWw7IGlmIGl0IGlzbid0IHByZXNlbnQgdGhlbiB0aGUgSTx1cHN0cmVhbS12ZXJzaW9uPiBtYXkgbm90ICIKKyJjb250YWluIGEgaHlwaGVuLiAgVGhpcyBmb3JtYXQgcmVwcmVzZW50cyB0aGUgY2FzZSB3aGVyZSBhIHBpZWNlIG9mIHNvZnR3YXJlICIKKyJ3YXMgd3JpdHRlbiBzcGVjaWZpY2FsbHkgdG8gYmUgdHVybmVkIGludG8gYSBEZWJpYW4gcGFja2FnZSwgYW5kIHNvIHRoZXJlIGlzICIKKyJvbmx5IG9uZSBcImRlYmlhbmlzYXRpb25cIiBvZiBpdCBhbmQgdGhlcmVmb3JlIG5vIHJldmlzaW9uIGluZGljYXRpb24gaXMgIgorInJlcXVpcmVkLiIKK21zZ3N0ciAiIgorIkVzIG9wY2lvbmFsOyBzaSBubyBlc3TDoSBwcmVzZW50ZSBJPHZlcnNpw7NuLWF1dG9yLW9yaWdpbmFsPiBubyBwdWVkZSBjb250ZW5lciAiCisidW4gZ3Vpw7NuLiBFc3RlIGZvcm1hdG8gcmVwcmVzZW50YSBlbCBjYXNvIGVuIGVsIHF1ZSB1biBwcm9ncmFtYSBmdWUgZXNjcml0byAiCisiZXNwZWPDrWZpY2FtZW50ZSBwYXJhIHNlciB1biBwYXF1ZXRlIGRlIERlYmlhbiwgeSBwb3IgZWxsbyBzw7NsbyBleGlzdGUgdW5hICIKKyLCq2RlYmlhbml6YWNpw7NuwrsgZGVsIG1pc21vLiBFbiBlc3RlIGNhc28gbm8gc2UgcmVxdWllcmUgdW4gbsO6bWVybyBkZSByZXZpc2nDs24uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjY4CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJJdCBpcyBjb252ZW50aW9uYWwgdG8gcmVzdGFydCB0aGUgSTxkZWJpYW5fcmV2aXNpb24+IGF0ICcxJyBlYWNoIHRpbWUgIgorI3wgInRpbWUgdGhlIEk8dXBzdHJlYW1fdmVyc2lvbj4gaXMgaW5jcmVhc2VkLiIKK21zZ2lkICIiCisiSXQgaXMgY29udmVudGlvbmFsIHRvIHJlc3RhcnQgdGhlIEk8ZGViaWFuLXJldmlzaW9uPiBhdCAnMScgZWFjaCB0aW1lIHRpbWUgIgorInRoZSBJPHVwc3RyZWFtLXZlcnNpb24+IGlzIGluY3JlYXNlZC4iCittc2dzdHIgIiIKKyJQb3IgbG8gZ2VuZXJhbCBsYSBJPHJldmlzw7NuLWRlYmlhbj4gc2UgcmVpbmljaWEgY29uIMKrMcK7IGNhZGEgdmV6IHF1ZSBjcmVjZSAiCisibGEgSTx2ZXJzacOzbi1hdXRvci1vcmlnaW5hbD4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41Ojc2CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJEcGtnIHdpbGwgYnJlYWsgdGhlIHZlcnNpb24gbnVtYmVyIGFwYXJ0IGF0IHRoZSBsYXN0IGh5cGhlbiBpbiB0aGUgc3RyaW5nICIKKyN8ICIoaWYgdGhlcmUgaXMgb25lKSB0byBkZXRlcm1pbmUgdGhlIEk8dXBzdHJlYW1fdmVyc2lvbj4gYW5kICIKKyN8ICJJPGRlYmlhbl9yZXZpc2lvbj4uICBUaGUgYWJzZW5jZSBvZiBhIEk8ZGViaWFuX3JldmlzaW9uPiBjb21wYXJlcyBlYXJsaWVyICIKKyN8ICJ0aGFuIHRoZSBwcmVzZW5jZSBvZiBvbmUgKGJ1dCBub3RlIHRoYXQgdGhlIEk8ZGViaWFuX3JldmlzaW9uPiBpcyB0aGUgIgorI3wgImxlYXN0IHNpZ25pZmljYW50IHBhcnQgb2YgdGhlIHZlcnNpb24gbnVtYmVyKS4iCittc2dpZCAiIgorIkRwa2cgd2lsbCBicmVhayB0aGUgdmVyc2lvbiBudW1iZXIgYXBhcnQgYXQgdGhlIGxhc3QgaHlwaGVuIGluIHRoZSBzdHJpbmcgIgorIihpZiB0aGVyZSBpcyBvbmUpIHRvIGRldGVybWluZSB0aGUgSTx1cHN0cmVhbS12ZXJzaW9uPiBhbmQgSTxkZWJpYW4tIgorInJldmlzaW9uPi4gVGhlIGFic2VuY2Ugb2YgYSBJPGRlYmlhbi1yZXZpc2lvbj4gY29tcGFyZXMgZWFybGllciB0aGFuIHRoZSAiCisicHJlc2VuY2Ugb2Ygb25lIChidXQgbm90ZSB0aGF0IHRoZSBJPGRlYmlhbi1yZXZpc2lvbj4gaXMgdGhlIGxlYXN0ICIKKyJzaWduaWZpY2FudCBwYXJ0IG9mIHRoZSB2ZXJzaW9uIG51bWJlcikuIgorbXNnc3RyICIiCisiRHBrZyBzZXBhcmFyw6EgZWwgbsO6bWVybyBkZSB2ZXJzacOzbiBlbiBlbCDDumx0aW1vIGd1acOzbiBlbiBsYSBjYWRlbmEgKHNpIGhheSAiCisiYWxndW5vKSBwYXJhIGRldGVybWluYXIgbGEgSTx2ZXJzacOzbi1hdXRvci1vcmlnaW5hbD4geSBsYSBJPHJldmlzacOzbi0iCisiZGViaWFuPi4gTGEgYXVzZW5jaWEgZGUgSTxyZXZpc2nDs24tZGViaWFuPiBzZSB2ZXJpZmljYSBhbnRlcyBxdWUgbGEgIgorInByZXNlbmNpYSBkZSBsYSBtaXNtYSAocGVybyB0ZW5nYSBlbiBjdWVudGEgcXVlIEk8cmV2aXNpw7NuLWRlYmlhbj4gZXMgbGEgIgorInBhcnRlIG1lbm9zIHNpZ25pZmljYXRpdmEgZGVsIG7Dum1lcm8gZGUgdmVyc2nDs24pLiIKKworIy4gdHlwZTogU1MKKyM6IGRlYi12ZXJzaW9uLjU6NzYKKyMsIG5vLXdyYXAKK21zZ2lkICJTb3J0aW5nIEFsZ29yaXRobSIKK21zZ3N0ciAiQWxnb3JpdG1vIGRlIG9yZGVuYWNpw7NuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjgwCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJUaGUgSTx1cHN0cmVhbV92ZXJzaW9uPiBhbmQgSTxkZWJpYW5fcmV2aXNpb24+IHBhcnRzIGFyZSBjb21wYXJlZCBieSB0aGUgIgorI3wgInBhY2thZ2UgbWFuYWdlbWVudCBzeXN0ZW0gdXNpbmcgdGhlIHNhbWUgYWxnb3JpdGhtOiIKK21zZ2lkICIiCisiVGhlIEk8dXBzdHJlYW0tdmVyc2lvbj4gYW5kIEk8ZGViaWFuLXJldmlzaW9uPiBwYXJ0cyBhcmUgY29tcGFyZWQgYnkgdGhlICIKKyJwYWNrYWdlIG1hbmFnZW1lbnQgc3lzdGVtIHVzaW5nIHRoZSBzYW1lIGFsZ29yaXRobToiCittc2dzdHIgIiIKKyJMYXMgcGFydGVzIEk8cmV2aXNpw7NuLWF1dG9yLW9yaWdpbmFsPiB5IEk8cmV2aXNpw7NuLWRlYmlhbj4gc2UgY29tcGFyYW4gY29uICIKKyJlbCBzaXN0ZW1hIGRlIGdlc3Rpw7NuIGRlIHBhcXVldGVzIHVzYW5kbyBlbCBtaXNtbyBhbGdvcml0bW86IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjgyCittc2dpZCAiVGhlIHN0cmluZ3MgYXJlIGNvbXBhcmVkIGZyb20gbGVmdCB0byByaWdodC4iCittc2dzdHIgIkxhcyBjYWRlbmFzIHNlIGNvbXBhcmFuIGRlIGl6cXVpZXJkYSBhIGRlcmVjaGEuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjkyCittc2dpZCAiIgorIkZpcnN0IHRoZSBpbml0aWFsIHBhcnQgb2YgZWFjaCBzdHJpbmcgY29uc2lzdGluZyBlbnRpcmVseSBvZiBub24tZGlnaXQgIgorImNoYXJhY3RlcnMgaXMgZGV0ZXJtaW5lZC4gIFRoZXNlIHR3byBwYXJ0cyAob25lIG9mIHdoaWNoIG1heSBiZSBlbXB0eSkgYXJlICIKKyJjb21wYXJlZCBsZXhpY2FsbHkuICBJZiBhIGRpZmZlcmVuY2UgaXMgZm91bmQgaXQgaXMgcmV0dXJuZWQuICBUaGUgbGV4aWNhbCAiCisiY29tcGFyaXNvbiBpcyBhIGNvbXBhcmlzb24gb2YgQVNDSUkgdmFsdWVzIG1vZGlmaWVkIHNvIHRoYXQgYWxsIHRoZSBsZXR0ZXJzICIKKyJzb3J0IGVhcmxpZXIgdGhhbiBhbGwgdGhlIG5vbi1sZXR0ZXJzIGFuZCBzbyB0aGF0IGEgdGlsZGUgc29ydHMgYmVmb3JlICIKKyJhbnl0aGluZywgZXZlbiB0aGUgZW5kIG9mIGEgcGFydC4gIEZvciBleGFtcGxlLCB0aGUgZm9sbG93aW5nIHBhcnRzIGFyZSBpbiAiCisic29ydGVkIG9yZGVyOiAnfn4nLCAnfn5hJywgJ34nLCB0aGUgZW1wdHkgcGFydCwgJ2EnLiIKK21zZ3N0ciAiIgorIlByaW1lcm8gc2UgZGV0ZXJtaW5hIGxhIHBhcnRlIGluaWNpYWwgZGUgY2FkYSBjYWRlbmEgcXVlIGNvbnNpc3RlIHPDs2xvIGRlICIKKyJjYXJhY3RlcmVzIG5vIG51bcOpcmljb3MuIEVzYXMgZG9zIHBhcnRlcyAodW5hIGRlIGxhcyBjdWFsZXMgcHVlZGUgZXN0YXIgIgorInZhY8OtYSkgc2UgY29tcGFyYW4gbMOpeGljYW1lbnRlLiBTaSBzZSBlbmN1ZW50cmEgdW5hIGRpZmVyZW5jaWEsIHNlIGRldnVlbHZlLiAiCisiTGEgY29tcGFyYWNpw7NuIGzDqXhpY2EgZXMgdW5hIGNvbXBhcmFjacOzbiBkZSB2YWxvcmVzIEFTQ0lJIG1vZGlmaWNhZG8gcGFyYSAiCisicXVlIHRvZGFzIGxhcyBsZXRyYXMgc2Ugb3JkZW5lbiBhbnRlcyBxdWUgbG9zIGNhcmFjdGVyZXMgcXVlIG5vIHNvbiBsZXRyYXMsICIKKyJkZSBtYW5lcmEgcXVlIGxhIHZpcmd1bGlsbGEgYXBhcmV6Y2EgZW4gcHJpbWVyIGx1Z2FyLCBpbmNsdXNvIGFudGVzIHF1ZSBlbCAiCisiZmluIGRlIHVuYSBzZWNjacOzbi4gUG9yIGVqZW1wbG8sIGxhcyBzaWd1aWVudGVzIHBhcnRlcyBlc3TDoW4gb3JkZW5hZGFzOiAiCisiwqt+fsK7LCDCq35+YScsIMKrfsK7LCBsYSBzZWNjacOzbiB2YWPDrWEsIMKrYcK7LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNToxMDAKK21zZ2lkICIiCisiVGhlbiB0aGUgaW5pdGlhbCBwYXJ0IG9mIHRoZSByZW1haW5kZXIgb2YgZWFjaCBzdHJpbmcgd2hpY2ggY29uc2lzdHMgIgorImVudGlyZWx5IG9mIGRpZ2l0IGNoYXJhY3RlcnMgaXMgZGV0ZXJtaW5lZC4gIFRoZSBudW1lcmljYWwgdmFsdWVzIG9mIHRoZXNlICIKKyJ0d28gcGFydHMgYXJlIGNvbXBhcmVkLCBhbmQgYW55IGRpZmZlcmVuY2UgZm91bmQgaXMgcmV0dXJuZWQgYXMgdGhlIHJlc3VsdCAiCisib2YgdGhlIGNvbXBhcmlzb24uICBGb3IgdGhlc2UgcHVycG9zZXMgYW4gZW1wdHkgc3RyaW5nICh3aGljaCBjYW4gb25seSBvY2N1ciAiCisiYXQgdGhlIGVuZCBvZiBvbmUgb3IgYm90aCB2ZXJzaW9uIHN0cmluZ3MgYmVpbmcgY29tcGFyZWQpIGNvdW50cyBhcyB6ZXJvLiIKK21zZ3N0ciAiIgorIlRyYXMgZXN0bywgc2UgZGV0ZXJtaW5hIGxhIHNlY2Npw7NuIGluaWNpYWwgZGVsIHJlc3RvIGRlIGNhZGEgY2FkZW5hIHF1ZSAiCisiY29uc2lzdGUgc8OzbG8gZGUgZMOtZ2l0b3MuIExvcyB2YWxvcmVzIG51bcOpcmljb3MgZGUgZXN0YXMgZG9zIHNlY2Npb25lcyBzZSAiCisiY29tcGFyYW4sIHkgY3VhbHF1aWVyIGRpZmVyZW5jaWEgZW5jb250cmFkYSBzZSBkZXZ1ZWx2ZSBjb21vIHJlc3VsdGFkbyBkZSBsYSAiCisiY29tcGFyYWNpw7NuLiBQYXJhIGVzdGUgcHJvcMOzc2l0bywgdW5hIGNhZGVuYSB2YWPDrWEgKHF1ZSBzw7NsbyBhcGFyZWNlIGFsICIKKyJmaW5hbCBkZSB1bmEgbyBkZSBsYXMgZG9zIGNhZGVuYXMgY29tcGFyYWRhcykgdGllbmUgdW4gdmFsb3IgZGUgY2Vyby4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6MTA0Cittc2dpZCAiIgorIlRoZXNlIHR3byBzdGVwcyAoY29tcGFyaW5nIGFuZCByZW1vdmluZyBpbml0aWFsIG5vbi1kaWdpdCBzdHJpbmdzIGFuZCAiCisiaW5pdGlhbCBkaWdpdCBzdHJpbmdzKSBhcmUgcmVwZWF0ZWQgdW50aWwgYSBkaWZmZXJlbmNlIGlzIGZvdW5kIG9yIGJvdGggIgorInN0cmluZ3MgYXJlIGV4aGF1c3RlZC4iCittc2dzdHIgIiIKKyJFc3RvcyBkb3MgcGFzb3MgKGNvbXBhcmFyIHkgZWxpbWluYXIgY2FyYWN0ZXJlcyBpbmljaWFsZXMgbm8gbnVtw6lyaWNvcyB5ICIKKyJudW3DqXJpY29zIGRlbCBwcmluY2lwaW8gZGUgbGFzIGNhZGVuYXMpIHNlIHJlcGl0ZW4gaGFzdGEgcXVlIHNlIGVuY3VlbnRyZSAiCisidW5hIGRpZmVyZW5jaWEgbyBxdWUgc2UgaGF5YW4gYW5hbGl6YWRvIHRvdGFsbWVudGUgbGFzIGRvcyBjYWRlbmFzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNToxMTIKK21zZ2lkICIiCisiTm90ZSB0aGF0IHRoZSBwdXJwb3NlIG9mIGVwb2NocyBpcyB0byBhbGxvdyB1cyB0byBsZWF2ZSBiZWhpbmQgbWlzdGFrZXMgaW4gIgorInZlcnNpb24gbnVtYmVyaW5nLCBhbmQgdG8gY29wZSB3aXRoIHNpdHVhdGlvbnMgd2hlcmUgdGhlIHZlcnNpb24gbnVtYmVyaW5nICIKKyJzY2hlbWUgY2hhbmdlcy4gIEl0IGlzIEI8bm90PiBpbnRlbmRlZCB0byBjb3BlIHdpdGggdmVyc2lvbiBudW1iZXJzICIKKyJjb250YWluaW5nIHN0cmluZ3Mgb2YgbGV0dGVycyB3aGljaCB0aGUgcGFja2FnZSBtYW5hZ2VtZW50IHN5c3RlbSBjYW5ub3QgIgorImludGVycHJldCAoc3VjaCBhcyAnQUxQSEEnIG9yICdwcmUtJyksIG9yIHdpdGggc2lsbHkgb3JkZXJpbmdzLiIKK21zZ3N0ciAiIgorIlRlbmdhIGVuIGN1ZW50YSBxdWUgZWwgcHJvcMOzc2l0byBkZWwgY2FtcG8gSTxlcG9jaD4gZXMgb2J2aWFyIGVycm9yZXMgZW4gbG9zICIKKyJuw7ptZXJvcyBkZSB2ZXJzacOzbiwgeSBwYXJhIGhhY2VyIGZyZW50ZSBhIHNpdHVhY2lvbmVzIGRvbmRlIHNlIGNhbWJpYSBlbCAiCisiZXNxdWVtYSBkZSBudW1lcmFjacOzbiBkZSB2ZXJzaW9uZXMuIEI8Tm8+IGVzdMOhIGRpc2XDsWFkbyBwYXJhIHNpdHVhY2lvbmVzICIKKyJkb25kZSBsb3MgbsO6bWVyb3MgZGUgdmVyc2nDs24gdGllbmVuIGNhZGVuYXMgbyBsZXRyYXMgcXVlIGVsIGdlc3RvciBkZSAiCisicGFxdWV0ZXMgbm8gcHVlZGUgaW50ZXJwcmV0YXIgKGNvbW8gwqtBTFBIQcK7IG8gLMKrcHJlLcK7KSBvIGNvbiBvcmRlbmFtaWVudG9zICIKKyJjb25mdXNvcy4iCisKKyMuIHR5cGU6IFNICisjOiBkZWItdmVyc2lvbi41OjExMiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTA5CisjLCBuby13cmFwCittc2dpZCAiQ0FWRUFUUyIKK21zZ3N0ciAiQURWRVJURU5DSUFTIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjExNgorbXNnaWQgIiIKKyJUaGUgdGlsZGUgY2hhcmFjdGVyIGFuZCBpdHMgc3BlY2lhbCBzb3J0aW5nIHByb3BlcnRpZXMgd2VyZSBpbnRyb2R1Y2VkIGluICIKKyJkcGtnLCB2ZXJzaW9uIDEuMTAgYW5kIHNvbWUgcGFydHMgb2YgZHBrZy1kZXYgb25seSBnYWluZWQgc3VwcG9ydCBmb3IgaXQgIgorImxhdGVyIGluIHRoZSAxLjEwLnggc2VyaWVzLiIKK21zZ3N0ciAiIgorIkVsIGNhcsOhY3RlciBkZSB2aXJndWxpbGxhICh+KSB5IHN1cyBwcm9waWVkYWRlcyBlc3BlY2lhbGVzIGRlIGLDunNxdWVkYSBzZSAiCisiaW50cm9kdWplcm9uIGVuIGxhIHZlcnNpw7NuIDEuMTAgZGUgZHBrZywgeSBhbGd1bmFzIHBhcnRlcyBkZSBkcGtnLWRldiBzw7NsbyAiCisiYcOxYWRpZXJvbiBsYSBjb21wYXRpYmlsaWRhZCBjb24gZXN0byBtw6FzIHRhcmRlLCBjb24gbGEgc2VyaWUgMS4xMC54IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjEyMAorbXNnaWQgIkI8ZGViLWNvbnRyb2w+KDUpLCBCPGRlYj4oNSksIEI8ZHBrZz4oMSkiCittc2dzdHIgIkI8ZGViLWNvbnRyb2w+KDUpLCBCPGRlYj4oNSksIEI8ZHBrZz4oMSkiCisKKyMuIHR5cGU6IFNICisjOiBkZWItdmVyc2lvbi41OjEyMCBkcGtnLjE6NzgzIGRwa2ctYnVpbGRwYWNrYWdlLjE6MjU3IGRwa2ctZGlzdGFkZGZpbGUuMTo0NworIzogZHBrZy1nZW5jaGFuZ2VzLjE6MTQ4IGRwa2ctZ2VuY29udHJvbC4xOjE0MiBkcGtnLWdlbnN5bWJvbHMuMTo0NjAKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MTI4IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxMjMKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MzI5IGRwa2ctc291cmNlLjE6NzMwIGRzZWxlY3QuMTo0NTEKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MzIzIHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0OTQKKyMsIG5vLXdyYXAKK21zZ2lkICJBVVRIT1JTIgorbXNnc3RyICJBVVRPUkVTIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjEyMgorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAxOTk2LDE5OTcsMTk5OCBJYW4gSmFja3NvbiBhbmQgQ2hyaXN0aWFuIFNjaHdhcnoiCittc2dzdHIgIkNvcHlyaWdodCBcXChjbyAxOTk2LDE5OTcsMTk5OCBJYW4gSmFja3NvbiB5IENocmlzdGlhbiBTY2h3YXJ6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjEyNCBkcGtnLWJ1aWxkcGFja2FnZS4xOjI2MworbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDA3IEZyYW5rIExpY2h0ZW5oZWxkIgorbXNnc3RyICJDb3B5cmlnaHQgXFwoY28gMjAwNyBGcmFuayBMaWNodGVuaGVsZCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNToxMjYgZGViLXN1YnN0dmFycy41OjE2NyBkcGtnLWJ1aWxkZmxhZ3MuMToyNzMKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjY3IGRwa2ctY2hlY2tidWlsZGRlcHMuMTo0NCBkcGtnLWRpc3RhZGRmaWxlLjE6NTMKKyM6IGRwa2ctZGViLjE6MjY5IGRwa2ctZGl2ZXJ0Ljg6MTM5IGRwa2ctZ2VuY2hhbmdlcy4xOjE1NAorIzogZHBrZy1nZW5jb250cm9sLjE6MTUwIGRwa2ctZ2Vuc3ltYm9scy4xOjQ2NCBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjEzOQorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTo3MSBkcGtnLW5hbWUuMToxMDggZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjEzMQorIzogZHBrZy1xdWVyeS4xOjIxOSBkcGtnLXNobGliZGVwcy4xOjMzOSBkcGtnLXNvdXJjZS4xOjczOCBkcGtnLXNwbGl0LjE6MjI3CisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjkxIGRwa2ctdmVuZG9yLjE6NTMgdXBkYXRlLWFsdGVybmF0aXZlcy44OjUwMQorbXNnaWQgIiIKKyJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgdmVyc2lvbiAyIG9yIGxhdGVyICIKKyJmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyBXQVJSQU5UWS4iCittc2dzdHIgIiIKKyJFc3RvIGVzIHNvZnR3YXJlIGxpYnJlOyB2ZWEgbGEgdmVyc2nDs24gMiBvIHBvc3RlcmlvciBkZSBsYSBMaWNlbmNpYSBQw7pibGljYSAiCisiR2VuZXJhbCBHTlUgcGFyYSBjb25kaWNpb25lcyBkZSBjb3BpYS4gTk8gaGF5IG5pbmd1bmEgZ2FyYW50w61hLiIKKworIy4gdHlwZTogVEgKKyM6IGRlYi1vbGQuNToxCisjLCBuby13cmFwCittc2dpZCAiZGViLW9sZCIKK21zZ3N0ciAiZGViLW9sZCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW9sZC41OjQKK21zZ2lkICJkZWItb2xkIC0gb2xkIHN0eWxlIERlYmlhbiBiaW5hcnkgcGFja2FnZSBmb3JtYXQiCittc2dzdHIgImRlYi1vbGQgLSBBbnRpZ3VvIGZvcm1hdG8gZGUgcGFxdWV0ZSBiaW5hcmlvIGRlIERlYmlhbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW9sZC41OjE3Cittc2dpZCAiIgorIlRoZSBCPC5kZWI+IGZvcm1hdCBpcyB0aGUgRGViaWFuIGJpbmFyeSBwYWNrYWdlIGZpbGUgZm9ybWF0LiBUaGlzIG1hbnVhbCAiCisicGFnZSBkZXNjcmliZXMgdGhlIEI8b2xkPiBmb3JtYXQsIHVzZWQgYmVmb3JlIERlYmlhbiAwLjkzLiBQbGVhc2Ugc2VlIEI8ZGViPiIKKyIoNSkgIGZvciBkZXRhaWxzIG9mIHRoZSBuZXcgZm9ybWF0LiIKK21zZ3N0ciAiIgorIkVsIGZvcm1hdG8gQjwuZGViPiBlcyBlbCBmb3JtYXRvIGRlIGZpY2hlcm8gZGUgcGFxdWV0ZSBiaW5hcmlvIGRlIERlYmlhbi4gICIKKyJFc3RhIHDDoWdpbmEgZGUgbWFudWFsIGRlc2NyaWJlIGVsIGZvcm1hdG8gQjxhbnRpZ3VvPiwgdXNhZG8gcHJldmlhbWVudGUgYSBsYSAiCisidmVyc2nDs24gMC45MyBkZSBEZWJpYW4uIENvbnN1bHRlIGVsIG1hbnVhbCBCPGRlYj4oNSkgcGFyYSBtw6FzIGRldGFsbGVzIHNvYnJlICIKKyJlbCBudWV2byBmb3JtYXRvLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW9sZC41OjIxCittc2dpZCAiIgorIlRoZSBmaWxlIGlzIHR3byBsaW5lcyBvZiBmb3JtYXQgaW5mb3JtYXRpb24gYXMgQVNDSUkgdGV4dCwgZm9sbG93ZWQgYnkgdHdvICIKKyJjb25jYXRlbmF0ZWQgZ3ppcHBlZCB1c3RhciBmaWxlcy4iCittc2dzdHIgIiIKKyJFbCBmaWNoZXJvIGVzdMOhIGZvcm1hZG8gcG9yIGRvcyBsaW5lYXMgY29uIGluZm9ybWFjacOzbiBkZWwgZm9ybWF0byBlbiB0ZXh0byAiCisiQVNDSUksIHNlZ3VpZG8gcG9yIGRvcyBmaWNoZXJvcyB1c3RhciBjb25jYXRlbmFkb3MgeSBjb21wcmltaWRvcyB2w61hIGd6aXAuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb2xkLjU6MjUKK21zZ2lkICIiCisiVGhlIGZpcnN0IGxpbmUgaXMgdGhlIGZvcm1hdCB2ZXJzaW9uIG51bWJlciBwYWRkZWQgdG8gOCBkaWdpdHMsIGFuZCBpcyAiCisiQjwwLjkzOTAwMD4gZm9yIGFsbCBvbGQtZm9ybWF0IGFyY2hpdmVzLiIKK21zZ3N0ciAiIgorIkxhIHByaW1lcmEgbMOtbmVhIGluZGljYSBsYSB2ZXJzacOzbiBkZWwgZm9ybWF0byBjb21wbGV0YWRhIGNvbiAwIGhhc3RhIGN1YnJpciAiCisiOCBkw61naXRvcywgeSBlcyBCPDAuOTM5MDAwPiBwYXJhIHRvZG9zIGxvcyBhcmNoaXZvcyBjb24gZm9ybWF0byBhbnRpZ3VvLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW9sZC41OjI4Cittc2dpZCAiIgorIlRoZSBzZWNvbmQgbGluZSBpcyBhIGRlY2ltYWwgc3RyaW5nICh3aXRob3V0IGxlYWRpbmcgemVyb2VzKSBnaXZpbmcgdGhlICIKKyJsZW5ndGggb2YgdGhlIGZpcnN0IGd6aXBwZWQgdGFyZmlsZS4iCittc2dzdHIgIiIKKyJMYSBzZWd1bmRhIGzDrW5lYSBlcyB1biBuw7ptZXJvIGRlY2ltYWwgKHNpbiBjZXJvcyBwcmVjZWRlbnRlcykgcXVlIGluZGljYSBlbCAiCisidGFtYcOxbyBkZWwgcHJpbWVyIGZpY2hlcm8gdGFyIGNvbXByaW1pZG8gY29uIGd6aXAuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb2xkLjU6MzAKK21zZ2lkICJFYWNoIG9mIHRoZXNlIGxpbmVzIGlzIHRlcm1pbmF0ZWQgd2l0aCBhIHNpbmdsZSBuZXdsaW5lIGNoYXJhY3Rlci4iCittc2dzdHIgIkNhZGEgbMOtbmVhIGZpbmFsaXphIGNvbiB1biDDum5pY28gY2Fyw6FjdGVyIGRlIG51ZXZhIGzDrW5lYS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vbGQuNTozNQorbXNnaWQgIiIKKyJUaGUgZmlyc3QgdGFyZmlsZSBjb250YWlucyB0aGUgY29udHJvbCBpbmZvcm1hdGlvbiwgYXMgYSBzZXJpZXMgb2Ygb3JkaW5hcnkgIgorImZpbGVzLiBUaGUgZmlsZSBCPGNvbnRyb2w+IG11c3QgYmUgcHJlc2VudCwgYXMgaXQgY29udGFpbnMgdGhlIGNvcmUgY29udHJvbCAiCisiaW5mb3JtYXRpb24uIgorbXNnc3RyICIiCisiRWwgcHJpbWVyIGZpY2hlcm8gdGFyIGNvbnRpZW5lIGxhIGluZm9ybWFjacOzbiBkZSBjb250cm9sIGNvbW8gdW4gY29uanVudG8gZGUgIgorImZpY2hlcm9zIGNvbXVuZXMuIEVsIGZpY2hlcm8gQjxjb250cm9sPiBkZWJlIGVzdGFyIHByZXNlbnRlLCB5YSBxdWUgY29udGllbmUgIgorImxhIGluZm9ybWFjacOzbiBkZSBjb250cm9sIGLDoXNpY2EuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb2xkLjU6NDYKK21zZ2lkICIiCisiSW4gc29tZSB2ZXJ5IG9sZCBhcmNoaXZlcywgdGhlIGZpbGVzIGluIHRoZSBjb250cm9sIHRhcmZpbGUgbWF5IG9wdGlvbmFsbHkgIgorImJlIGluIGEgQjxERUJJQU4+IHN1YmRpcmVjdG9yeS4gSW4gdGhhdCBjYXNlLCB0aGUgQjxERUJJQU4+IHN1YmRpcmVjdG9yeSAiCisid2lsbCBiZSBpbiB0aGUgY29udHJvbCB0YXJmaWxlIHRvbywgYW5kIHRoZSBjb250cm9sIHRhcmZpbGUgd2lsbCBoYXZlIG9ubHkgIgorImZpbGVzIGluIHRoYXQgZGlyZWN0b3J5LiBPcHRpb25hbGx5IHRoZSBjb250cm9sIHRhcmZpbGUgbWF5IGNvbnRhaW4gYW4gZW50cnkgIgorImZvciBgQjwuPicsIHRoYXQgaXMsIHRoZSBjdXJyZW50IGRpcmVjdG9yeS4iCittc2dzdHIgIiIKKyJFbiBhbGd1bm9zIGFyY2hpdm9zIG11eSBhbnRpZ3VvcywgbG9zIGZpY2hlcm9zIGRlIGNvbnRyb2wgZW4gZWwgZmljaGVybyB0YXIgIgorInB1ZWRlbiBlc3RhciBvcGNpb25hbG1lbnRlIGVuIHVuIHN1YmRpcmVjdG9yaW8gQjxERUJJQU4+LiBFbiBlc3RlIGNhc28sIGVsICIKKyJzdWJkaXJlY3RvcmlvIEI8REVCSUFOPiBlc3RhcsOhIHRhbWJpw6luIGVuIGVsIGZpY2hlcm8gdGFyIGRlIGNvbnRyb2wsIHkgZWwgIgorImZpY2hlcm8gdGFyIGRlIGNvbnRyb2wgdGVuZHLDoSBzb2xhbWVudGUgYXJjaGl2b3MgZW4gZXN0ZSBkaXJlY3RvcmlvLiBEZSAiCisiZm9ybWEgb3BjaW9uYWwsIGVsIGZpY2hlcm8gdGFyIHBvZHLDoSBjb250ZW5lciB1bmEgZW50cmFkYSBwYXJhIMKrQjwuPsK7LCBlc3RvICIKKyJlcywgZWwgZGlyZWN0b3JpbyBhY3R1YWwuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb2xkLjU6NTAKK21zZ2lkICIiCisiVGhlIHNlY29uZCBnemlwcGVkIHRhcmZpbGUgaXMgdGhlIGZpbGVzeXN0ZW0gYXJjaGl2ZSwgY29udGFpbmluZyBwYXRobmFtZXMgIgorInJlbGF0aXZlIHRvIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGUgc3lzdGVtIHRvIGJlIGluc3RhbGxlZCBvbi4gVGhlICIKKyJwYXRobmFtZXMgZG8gbm90IGhhdmUgbGVhZGluZyBzbGFzaGVzLiIKK21zZ3N0ciAiIgorIkVsIHNlZ3VuZG8gZmljaGVybyB0YXIgY29tcHJpbWlkbyBjb24gZ3ppcCBlcyBlbCBhcmNoaXZvIGRlbCBzaXN0ZW1hIGRlICIKKyJmaWNoZXJvcywgcXVlIGNvbnRpZW5lIGxhcyBydXRhcyByZWxhdGl2YXMgYWwgZGlyZWN0b3JpbyByYcOteiBkZWwgc2lzdGVtYSAiCisiZG9uZGUgc2UgaW5zdGFsYXLDoS4gTG9zIG5vbWJyZXMgZGUgcnV0YSBubyB0aWVuZW4gYmFycmFzIHByZWNlZGVudGVzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW9sZC41OjU0Cittc2dpZCAiQjxkZWI+KDUpLCBCPGRwa2ctZGViPigxKSwgQjxkZWItY29udHJvbD4oNSkuIgorbXNnc3RyICJCPGRlYj4oNSksIEI8ZHBrZy1kZWI+KDEpLCBCPGRlYi1jb250cm9sPig1KS4iCisKKyMuIHR5cGU6IFRICisjOiBkZWItb3ZlcnJpZGUuNToxNQorIywgbm8td3JhcAorbXNnaWQgImRlYi1vdmVycmlkZSIKK21zZ3N0ciAiZGViLW92ZXJyaWRlIgorCisjLiB0eXBlOiBUSAorIzogZGViLW92ZXJyaWRlLjU6MTUgZGViLWV4dHJhLW92ZXJyaWRlLjU6MSBkZWItc2hsaWJzLjU6MTYgZGViLXN1YnN0dmFycy41OjIKKyM6IGRlYi1zeW1ib2xzLjU6MiBkZWItdHJpZ2dlcnMuNToxIGRwa2ctYXJjaGl0ZWN0dXJlLjE6MQorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxIGRwa2ctY2hlY2tidWlsZGRlcHMuMToxIGRwa2ctZGlzdGFkZGZpbGUuMToxCisjOiBkcGtnLWRpdmVydC44OjEgZHBrZy1nZW5jaGFuZ2VzLjE6MSBkcGtnLWdlbmNvbnRyb2wuMToxIGRwa2ctZ2Vuc3ltYm9scy4xOjIKKyM6IGRwa2ctbmFtZS4xOjYgZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjEgZHBrZy1zY2FucGFja2FnZXMuMToxNQorIzogZHBrZy1zY2Fuc291cmNlcy4xOjEgZHBrZy1zaGxpYmRlcHMuMToxIGRwa2ctc291cmNlLjE6MiBkcGtnLXNwbGl0LjE6MgorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODoxIHN0YXJ0LXN0b3AtZGFlbW9uLjg6MSB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6OAorIywgbm8td3JhcAorbXNnaWQgImRwa2cgdXRpbGl0aWVzIgorbXNnc3RyICJIZXJyYW1pZW50YXMgZGUgZHBrZyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW92ZXJyaWRlLjU6MTgKK21zZ2lkICJkZWItb3ZlcnJpZGUgLSBEZWJpYW4gYXJjaGl2ZSBvdmVycmlkZSBmaWxlIgorbXNnc3RyICJkZWItb3ZlcnJpZGUgLSBGaWNoZXJvIGRlIHN1c3RpdHVjaW9uZXMgZGUgYXJjaGl2byBkZSBEZWJpYW4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vdmVycmlkZS41OjIxIGRlYi1leHRyYS1vdmVycmlkZS41OjcKK21zZ2lkICJvdmVycmlkZSIKK21zZ3N0ciAib3ZlcnJpZGUiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vdmVycmlkZS41OjI3Cittc2dpZCAiIgorIldoaWxlIG1vc3QgaW5mb3JtYXRpb24gYWJvdXQgYSBwYWNrYWdlIGNhbiBiZSBmb3VuZCBpbiB0aGUgY29udHJvbCBmaWxlLCAiCisic29tZSBpcyBtYW5hZ2VkIGNlbnRyYWxseSBieSB0aGUgZGlzdHJpYnV0aW9uIGN6YXJzIHJhdGhlciB0aGFuIGJ5IHRoZSAiCisibWFpbnRhaW5lciBpbiBvcmRlciB0byBvZmZlciBzb21lIGdsb2JhbCBjb25zaXN0ZW5jeS4gIFRoaXMgaW5mb3JtYXRpb24gaXMgIgorImZvdW5kIGluIHRoZSBvdmVycmlkZSBmaWxlLiIKK21zZ3N0ciAiIgorIk1pZW50cmFzIHF1ZSBsYSBtYXlvcsOtYSBkZSBsYSBpbmZvcm1hY2nDs24gYWNlcmNhIGRlIGxvcyBwYXF1ZXRlcyBzZSAiCisiZW5jdWVudHJhIGVuIGVsIGZpY2hlcm8gZGUgY29udHJvbCBwYXJ0ZSBkZSBlc3RhIGluZm9ybWFjacOzbiBzZSBkZWJlICIKKyJyZWxsZW5hciBwb3IgbG9zIGVuY2FyZ2Fkb3MgZGUgcGxhbmlmaWNhciBsYSBkaXN0cmlidWNpw7NuLCBlbiBsdWdhciBkZSBsb3MgIgorInJlc3BvbnNhYmxlcyBkZSBsb3MgcGFxdWV0ZXMsIG9mcmVjaWVuZG8gYXPDrSB1bmEgbWF5b3IgY29uc2lzdGVuY2lhIGdsb2JhbC4gIgorIkVzdGEgaW5mb3JtYWNpw7NuIHNlIGVuY3VlbnRyYSBlbiBlbCBmaWNoZXJvIMKrb3ZlcnJpZGXCuyAoc3VzdGl0dWNpw7NuKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vdmVycmlkZS41OjMxCittc2dpZCAiIgorIlRoZSBvdmVycmlkZSBmaWxlIGhhcyBhIHNpbXBsZSB3aGl0ZXNwYWNlLWRlbGltaXRlZCBmb3JtYXQuIENvbW1lbnRzIGFyZSAiCisiYWxsb3dlZCAoZGVub3RlZCB3aXRoIGEgQjwjPikuIgorbXNnc3RyICIiCisiRWwgZmljaGVybyDCq292ZXJyaWRlwrsgdGllbmUgdW4gZm9ybWF0byBzaW1wbGUsIGRlbGltaXRhZG8gcG9yIGVzcGFjaW9zIGVuICIKKyJibGFuY28uIFNlIHBlcm1pdGVuIGNvbWVudGFyaW9zIHByZWNlZGlkb3MgZGUgQjwjPi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vdmVycmlkZS41OjM3Cittc2dpZCAiSTxwYWNrYWdlPiBJPHByaW9yaXR5PiBJPHNlY3Rpb24+IFtJPG1haW50YWluZXJpbmZvPl0iCittc2dzdHIgIkk8cGFxdWV0ZT4gSTxwcmlvcmlkYWQ+IEk8c2VjY2nDs24+IFtJPGluZm9ybWFjacOzbi1kZWwtbWFudGVuZWRvcj5dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb3ZlcnJpZGUuNTo0MgorbXNnaWQgIiIKKyJJPHBhY2thZ2U+IGlzIHRoZSBuYW1lIG9mIHRoZSBwYWNrYWdlLiBFbnRyaWVzIGluIHRoZSBvdmVycmlkZSBmaWxlIGZvciAiCisicGFja2FnZXMgbm90IGZvdW5kIGluIHRoZSB0cmVlIG9mIGJpbmFyeSBwYWNrYWdlcyBhcmUgaWdub3JlZC4iCittc2dzdHIgIiIKKyJJPHBhcXVldGU+IEVsIG5vbWJyZSBkZWwgcGFxdWV0ZS4gU2UgaWdub3JhcsOhbiBsYXMgZW50cmFkYXMgZW4gZWwgZmljaGVybyAiCisiwqtvdmVycmlkZcK7IGRlIHBhcXVldGVzIG5vIGVuY29udHJhZG9zIGVuIGVsIMOhcmJvbCBkZSBwYXF1ZXRlcyBiaW5hcmlvcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vdmVycmlkZS41OjQ4Cittc2dpZCAiIgorIkk8cHJpb3JpdHk+IGFuZCBJPHNlY3Rpb24+IGNvcnJlc3BvbmQgdG8gdGhlIHJlc3BlY3RpdmUgY29udHJvbCBmaWVsZHMgIgorImF2YWlsYWJsZSBpbiB0aGUgLmRlYi4gVGhlIGFsbG93ZWQgdmFsdWVzIGFyZSBsaXN0ZWQgaW4gdGhlIERlYmlhbiBwb2xpY3kuIgorbXNnc3RyICIiCisiSTxwcmlvcmlkYWQ+IHkgSTxzZWNjacOzbj4gc2UgY29ycmVzcG9uZGVuIGNvbiBzdXMgcmVzcGVjdGl2b3MgY2FtcG9zIGRlICIKKyJjb250cm9sIGRpc3BvbmlibGVzIGVuIGVsIMKrLmRlYsK7LiBMb3MgdmFsb3JlcyBwZXJtaXRpZG9zIHNlIGxpc3RhbiBlbiBlbCAiCisiTWFudWFsIGRlIE5vcm1hcyBkZSBEZWJpYW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb3ZlcnJpZGUuNTo1NgorbXNnaWQgIiIKKyJJPG1haW50YWluZXJpbmZvPiwgaWYgcHJlc2VudCwgY2FuIGJlIGVpdGhlciB0aGUgbmFtZSBvZiBhIG1haW50YWluZXIgZm9yIGFuICIKKyJ1bmNvbmRpdGlvbmFsIG92ZXJyaWRlLCBvciBlbHNlIEk8b2xkbWFpbnRhaW5lcj4gQjw9RTxndD4+IEk8bmV3bWFpbnRhaW5lcj4gIgorInRvIHBlcmZvcm0gYSBzdWJzdGl0dXRpb24uIgorbXNnc3RyICIiCisiRGUgZXN0YXIgcHJlc2VudGUgSTxpbmZvcm1hY2nDs24tZGVsLW1hbnRlbmVkb3I+LCBwdWVkZSBzZXIgZWwgbm9tYnJlIGRlbCAiCisicmVzcG9uc2FibGUgZGUgdW4gwqtvdmVycmlkZcK7IGluY29uZGljaW9uYWwsIG8gYmllbiBJPGFudGlndW8tbWFudGVuZWRvcj4gIgorIkI8PUU8Z3Q+PiBJPG51ZXZvLW1hbnRlbmVkb3I+IHBhcmEgaGFjZXIgdW5hIHN1c3RpdHVjacOzbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vdmVycmlkZS41OjYxCittc2dpZCAiIgorIlRoZSBvdmVycmlkZSBmaWxlcyB1c2VkIHRvIG1ha2UgdGhlIG9mZmljaWFsIFBhY2thZ2VzIGxpc3RzIG1heSBiZSBmb3VuZCBpbiAiCisidGhlIEk8aW5kaWNlcz4gZGlyZWN0b3J5IG9uIGFueSBEZWJpYW4gbWlycm9yLiIKK21zZ3N0ciAiIgorIlB1ZWRlIGVuY29udHJhciBsb3MgZmljaGVyb3MgwqtvdmVycmlkZcK7IHF1ZSBzZSB1c2FuIHBhcmEgaGFjZXIgbGFzIGxpc3RhcyAiCisiwqtQYWNrYWdlc8K7IG9maWNpYWxlcyBlbiBlbCBkaXJlY3RvcmlvIMKrSTxpbmRpY2VzPsK7IGRlIGN1YWxxdWllciByw6lwbGljYSBkZSAiCisiRGViaWFuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW92ZXJyaWRlLjU6NjYKK21zZ2lkICIiCisiQjxkcGtnLXNjYW5wYWNrYWdlcz4oMSksIEI8ZHBrZy1zY2Fuc291cmNlcz4oMSksIEI8YXB0LWZ0cGFyY2hpdmU+KDEpLCBCPC8iCisidXNyL3NoYXJlL2RvYy9kZWJpYW4tcG9saWN5L3BvbGljeS5odG1sL2luZGV4Lmh0bWw+LiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1zY2FucGFja2FnZXM+KDEpLCBCPGRwa2ctc2NhbnNvdXJjZXM+KDEpLCBCPGFwdC1mdHBhcmNoaXZlPigxKSwgQjwvIgorInVzci9zaGFyZS9kb2MvZGViaWFuLXBvbGljeS9wb2xpY3kuaHRtbC9pbmRleC5odG1sPi4iCisKKyMuIHR5cGU6IFRICisjOiBkZWItZXh0cmEtb3ZlcnJpZGUuNToxCisjLCBuby13cmFwCittc2dpZCAiZGViLWV4dHJhLW92ZXJyaWRlIgorbXNnc3RyICJkZWItZXh0cmEtb3ZlcnJpZGUiCisKKyMuIHR5cGU6IFRICisjOiBkZWItZXh0cmEtb3ZlcnJpZGUuNToxCisjLCBuby13cmFwCittc2dpZCAiMjAwOS0wOC0xNiIKK21zZ3N0ciAiMTYgZGUgQWdvc3RvIGRlIDIwMDgiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1leHRyYS1vdmVycmlkZS41OjQKK21zZ2lkICJkZWItZXh0cmEtb3ZlcnJpZGUgLSBEZWJpYW4gYXJjaGl2ZSBleHRyYSBvdmVycmlkZSBmaWxlIgorbXNnc3RyICIiCisiZGViLWV4dHJhLW92ZXJyaWRlIC0gRmljaGVybyBkZSBzdXN0aXR1Y2lvbmVzIGFkaWNpb25hbCBkZSBhcmNoaXZvIGRlIERlYmlhbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWV4dHJhLW92ZXJyaWRlLjU6MTIKK21zZ2lkICIiCisiV2hpbGUgbW9zdCBpbmZvcm1hdGlvbiBhYm91dCBhIGJpbmFyeS9zb3VyY2UgcGFja2FnZSBjYW4gYmUgZm91bmQgaW4gdGhlICIKKyJjb250cm9sLy5kc2MgZmlsZSwgYWxsIG9mIGl0IGNhbiBiZSBvdmVycmlkZGVuIHdoZW4gaXQncyBleHBvcnRlZCB0byAiCisiUGFja2FnZXMvU291cmNlcyBmaWxlcy4gVGhlIGV4dHJhIG92ZXJyaWRlIGZpbGUgY29udGFpbnMgdGhvc2Ugb3ZlcnJpZGVzLiIKK21zZ3N0ciAiIgorIk1pZW50cmFzIHF1ZSBwdWVkZSBlbmNvbnRyYXIgbGEgbWF5b3LDrWEgZGUgbGEgaW5mb3JtYWNpw7NuIGRlIHVuIHBhcXVldGUgIgorImJpbmFyaW8gbyBmdWVudGUgZW4gZWwgZmljaGVybyDCq2NvbnRyb2wvLmRzY8K7LCBwdWVkZSBzdXN0aXR1aXIgdG9kbyBzdSAiCisiY29udGVuaWRvIGFsIGV4cG9ydGFybG8gYSBsb3MgZmljaGVyb3MgwqtQYWNrYWdlc8K7IHkgwqtTb3VyY2VzwrsuIEVsIGZpY2hlcm8gIgorIsKrb3ZlcnJpZGXCuyBhZGljaW9uYWwgKGkuZS4gwqtvdmVycmlkZS5sZW5ueS5leHRyYS5nesK7KSBjb250aWVuZSB0YWxlcyAiCisic3VzdGl0dWNpb25lcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1leHRyYS1vdmVycmlkZS41OjE2Cittc2dpZCAiIgorIlRoZSBleHRyYSBvdmVycmlkZSBmaWxlIGhhcyBhIHNpbXBsZSB3aGl0ZXNwYWNlLWRlbGltaXRlZCBmb3JtYXQuIENvbW1lbnRzICIKKyJhcmUgYWxsb3dlZCAoZGVub3RlZCB3aXRoIGEgQjwjPikuIgorbXNnc3RyICIiCisiRWwgZmljaGVybyDCq292ZXJyaWRlwrsgYWRpY2lvbmFsIHRpZW5lIHVuIGZvcm1hdG8gc2ltcGxlLCBkZWxpbWl0YWRvIHBvciAiCisiZXNwYWNpb3MgZW4gYmxhbmNvLiBTZSBwZXJtaXRlbiBjb21lbnRhcmlvcyBwcmVjZWRpZG9zIGRlIEI8Iz4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItZXh0cmEtb3ZlcnJpZGUuNToyMQorbXNnaWQgIkk8cGFja2FnZT4gSTxmaWVsZC1uYW1lPiBJPHZhbHVlPiIKK21zZ3N0ciAiSTxwYXF1ZXRlPiBJPG5vbWJyZS1kZWwtY2FtcG8+IEk8dmFsb3I+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItZXh0cmEtb3ZlcnJpZGUuNToyNQorbXNnaWQgIkk8cGFja2FnZT4gaXMgdGhlIG5hbWUgb2YgdGhlIGJpbmFyeS9zb3VyY2UgcGFja2FnZS4iCittc2dzdHIgIkk8cGFxdWV0ZT4gZXMgZWwgbm9tYnJlIGRlbCBwYXF1ZXRlIGJpbmFyaW8gbyBmdWVudGUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItZXh0cmEtb3ZlcnJpZGUuNTozMQorbXNnaWQgIiIKKyJJPGZpZWxkLW5hbWU+IGlzIHRoZSBuYW1lIG9mIHRoZSBmaWVsZCB0aGF0IGlzIG92ZXJyaWRkZW4uICBJPHZhbHVlPiBpcyB0aGUgIgorInZhbHVlIHRvIHB1dCBpbiB0aGUgZmllbGQuIEl0IGNhbiBjb250YWluIHNwYWNlcyBhcyB0aGUgbGluZSBpcyBzcGxpdCBpbiBubyAiCisibW9yZSB0aGFuIDMgY29sdW1ucyB3aGVuIGl0J3MgcGFyc2VkLiIKK21zZ3N0ciAiIgorIkk8bm9tYnJlLWRlbC1jYW1wbz4gZXMgZWwgbm9tYnJlIGRlbCBjYW1wbyBhIHN1c3RpdHVpciwgeSBJPHZhbG9yPiBlcyBlbCAiCisidmFsb3IgYSBpbnNlcnRhciBlbiBlbCBjYW1wby4gUHVlZGUgY29udGVuZXIgZXNwYWNpb3MgeWEgcXVlIGxhIGzDrW5lYSBzZSAiCisiZGl2aWRlIGVuIGFsIG1lbm9zIDMgY29sdW1uYXMgZHVyYW50ZSBlbCBhbsOhbGlzaXMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItZXh0cmEtb3ZlcnJpZGUuNTozNgorbXNnaWQgIiIKKyJUaGUgZXh0cmEgb3ZlcnJpZGUgZmlsZXMgdXNlZCB0byBtYWtlIHRoZSBvZmZpY2lhbCBQYWNrYWdlcyBsaXN0cyBtYXkgYmUgIgorImZvdW5kIGluIHRoZSBJPGluZGljZXM+IGRpcmVjdG9yeSBvbiBhbnkgRGViaWFuIG1pcnJvci4iCittc2dzdHIgIiIKKyJMb3MgZmljaGVyb3MgwqtvdmVycmlkZcK7IGFkaWNpb25hbGVzIHF1ZSBzZSB1c2FuIHBhcmEgaGFjZXIgbGFzIGxpc3RhcyBkZSAiCisicGFxdWV0ZXMgb2ZpY2lhbGVzIHN1ZWxlbiBlbmNvbnRyYXJzZSBlbiBlbCBkaXJlY3RvcmlvIEk8aW5kaWNlcz4gZGUgIgorImN1YWxxdWllciByw6lwbGljYSBkZSBEZWJpYW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItZXh0cmEtb3ZlcnJpZGUuNTo0MAorbXNnaWQgIkI8ZHBrZy1zY2FucGFja2FnZXM+KDEpLCBCPGRwa2ctc2NhbnNvdXJjZXM+KDEpLCBCPGFwdC1mdHBhcmNoaXZlPigxKS4iCittc2dzdHIgIkI8ZHBrZy1zY2FucGFja2FnZXM+KDEpLCBCPGRwa2ctc2NhbnNvdXJjZXM+KDEpLCBCPGFwdC1mdHBhcmNoaXZlPigxKS4iCisKKyMuIHR5cGU6IFRICisjOiBkZWItc2hsaWJzLjU6MTYKKyMsIG5vLXdyYXAKK21zZ2lkICJkZWItc2hsaWJzIgorbXNnc3RyICJkZWItc2hsaWJzIgorCisjLiB0eXBlOiBUSAorIzogZGViLXNobGlicy41OjE2CisjLCBuby13cmFwCittc2dpZCAiMjAwOC0wMi0xNyIKK21zZ3N0ciAiMTcgZGUgRmVicmVybyBkZSAyMDA5IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc2hsaWJzLjU6MTkKK21zZ2lkICJkZWItc2hsaWJzIC0gRGViaWFuIHNoYXJlZCBsaWJyYXJ5IGluZm9ybWF0aW9uIGZpbGUiCittc2dzdHIgIiIKKyJkZWItc2hsaWJzIC0gRmljaGVybyBkZSBpbmZvcm1hY2nDs24gZGUgYmlibGlvdGVjYXMgY29tcGFydGlkYXMgZGUgRGViaWFuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc2hsaWJzLjU6MjkKK21zZ2lkICIiCisiQjxzaGxpYnM+IGZpbGVzIG1hcCBzaGFyZWQgbGlicmFyeSBuYW1lcyBhbmQgdmVyc2lvbnMgKEk8c29uYW1lcz4pICB0byAiCisiZGVwZW5kZW5jaWVzIHN1aXRhYmxlIGZvciBhIHBhY2thZ2UgY29udHJvbCBmaWxlLiAgVGhlcmUgaXMgb25lIGVudHJ5IHBlciAiCisibGluZS4gQmxhbmsgbGluZXMgYXJlIEI8bm90PiBhbGxvd2VkLiAgTGluZXMgYmVnaW5uaW5nIHdpdGggYW4gQjwjPiAiCisiY2hhcmFjdGVyIGFyZSBjb25zaWRlcmVkIGNvbW1lbnRhcnksIGFuZCBhcmUgaWdub3JlZC4gIEFsbCBvdGhlciBsaW5lcyBtdXN0ICIKKyJoYXZlIHRoZSBmb3JtYXQiCittc2dzdHIgIiIKKyJCPHNobGlicz4gY3JlYSB1bmEgY29ycmVsYWNpw7NuIGVudHJlIGxvcyBub21icmVzIHkgdmVyc2lvbmVzIGRlIGJpYmxpb3RlY2FzICIKKyJjb21wYXJ0aWRhcyAoSTxzb25hbWVzPikgeSBsYXMgZGVwZW5kZW5jaWFzLCBkZSBtYW5lcmEgYWRlY3VhZGEgcGFyYSBzdSAiCisiaW5jbHVzacOzbiBlbiBlbCBmaWNoZXJvIGRlIGNvbnRyb2wgZGVsIHBhcXVldGUuIFNlIGluc2VydGEgdW5hIGVudHJhZGEgcG9yICIKKyJsw61uZWEsIHkgbGFzIGzDrW5lYXMgdmFjw61hcyBCPG5vPiBlc3TDoW4gcGVybWl0aWRhcy4gTGFzIGzDrW5lYXMgcXVlIGVtcGllemFuICIKKyJjb24gdW4gY2Fyw6FjdGVyIEI8Iz4gc2UgY29uc2lkZXJhbiBjb21lbnRhcmlvcywgeSBzZSBpZ25vcmFyw6FuLiBUb2RhcyBsYXMgIgorImRlbcOhcyBsw61uZWFzIGRlYmVuIHNlZ3VpciBlbCBmb3JtYXRvIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc2hsaWJzLjU6MzQKKyMsIGZ1enp5CisjfCBtc2dpZCAiW0k8dHlwZTo+XSBJPGxpYnJhcnk+IEk8dmVyc2lvbj4gSTxkZXBlbmRlbmNpZXM+IgorbXNnaWQgIltJPHR5cGU+Qjw6Pl0gSTxsaWJyYXJ5PiBJPHZlcnNpb24+IEk8ZGVwZW5kZW5jaWVzPiIKK21zZ3N0ciAiW0k8dGlwbzo+XSBJPGJpYmxpb3RlY2E+IEk8dmVyc2nDs24+IEk8ZGVwZW5kZW5jaWFzPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNobGlicy41OjM4Cittc2dpZCAiIgorIlRoZSBJPGxpYnJhcnk+IGFuZCBJPHZlcnNpb24+IGZpZWxkcyBhcmUgd2hpdGVzcGFjZS1kZWxpbWl0ZWQsIGJ1dCB0aGUgIgorIkk8ZGVwZW5kZW5jaWVzPiBmaWVsZCBleHRlbmRzIHRvIHRoZSBlbmQgb2YgdGhlIGxpbmUuICBUaGUgSTx0eXBlPiBmaWVsZCBpcyAiCisib3B0aW9uYWwgYW5kIG5vcm1hbGx5IG5vdCBuZWVkZWQuIgorbXNnc3RyICIiCisiTG9zIGNhbXBvcyBJPGJpYmxpb3RlY2E+IHkgSTx2ZXJzacOzbj4gc2UgZGVsaW1pdGFuIGNvbiBlc3BhY2lvcyBlbiBibGFuY28sICIKKyJwZXJvIGVsIGNhbXBvIGRlIGxhcyBJPGRlcGVuZGVuY2lhcz4gc2UgZXh0aWVuZGUgaGFzdGEgZWwgZmluIGRlIGzDrW5lYS4gRWwgIgorImNhbXBvIEk8dGlwbz4gZXMgb3BjaW9uYWwsIHkgaGFiaXR1YWxtZW50ZSBpbm5lY2VzYXJpby4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zaGxpYnMuNTo0MAorbXNnaWQgIlNlZSB0aGUgRGViaWFuIFBvbGljeSBNYW51YWwgZm9yIGZ1cnRoZXIgZGV0YWlscy4iCittc2dzdHIgIkNvbnN1bHRlIGVsIE1hbnVhbCBkZSBOb3JtYXMgZGUgRGViaWFuIHBhcmEgbcOhcyBkZXRhbGxlcy4iCisKKyMuIHR5cGU6IFNICisjOiBkZWItc2hsaWJzLjU6NDEgZGViLXN5bWJvbHMuNTo0MyBkcGtnLjE6NzE0IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjYyCisjOiBkcGtnLWRpdmVydC44OjkxIGRwa2ctbmFtZS4xOjY1IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0NTkKKyMsIG5vLXdyYXAKK21zZ2lkICJFWEFNUExFUyIKK21zZ3N0ciAiRUpFTVBMT1MiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zaGxpYnMuNTo1MAorbXNnaWQgIiIKKyJUaGUgQjxzaGxpYnM+IGZpbGUgZm9yIGEgdHlwaWNhbCBsaWJyYXJ5IHBhY2thZ2UsIG5hbWVkIEk8bGliY3J1bmNoMT4sIHRoYXQgIgorInByb3ZpZGVzIG9uZSBsaWJyYXJ5IHdob3NlIHNvbmFtZSBpcyBJPGxpYmNydW5jaC5zby4xPiwgbWlnaHQgcmVhZCIKK21zZ3N0ciAiIgorIkVsIGFzcGVjdG8gZGUgdW4gZmljaGVybyBCPHNobGlicz4gcGFyYSB1biBwYXF1ZXRlIHTDrXBpY28gZGUgYmlibGlvdGVjYXMgIgorImxsYW1hZG8gSTxsaWJjcnVuY2gxPiwgZWwgY3VhbCBwcm9wb3JjaW9uYSB1bmEgYmlibGlvdGVjYSBjdXlvIMKrc29uYW1lwrsgZXMgIgorIklJPGxpYmNydW5jaC5zby4xPiwgcG9kcsOtYSBzZXIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zaGxpYnMuNTo1MgorbXNnaWQgImxpYmNydW5jaCAxIGxpYmNydW5jaDEgKEU8Z3Q+PSAxLjItMSkiCittc2dzdHIgImxpYmNydW5jaCAxIGxpYmNydW5jaDEgKEU8Z3Q+PSAxLjItMSkiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zaGxpYnMuNTo2MAorbXNnaWQgIiIKKyJUaGUgSTxkZXBlbmRlbmNpZXM+IG11c3QgbWVudGlvbiB0aGUgbW9zdCByZWNlbnQgdmVyc2lvbiBvZiB0aGUgcGFja2FnZSB0aGF0ICIKKyJhZGRlZCBuZXcgc3ltYm9scyB0byB0aGUgbGlicmFyeTogaW4gdGhlIGFib3ZlIGV4YW1wbGUsIG5ldyBzeW1ib2xzIHdlcmUgIgorImFkZGVkIHRvIHZlcnNpb24gMS4yIG9mIEk8bGliY3J1bmNoPi4gIFRoaXMgaXMgbm90IHRoZSBvbmx5IHJlYXNvbiB0aGUgIgorImRlcGVuZGVuY2llcyBtaWdodCBuZWVkIHRvIGJlIHRpZ2h0ZW5lZDsgYWdhaW4sIHNlZSB0aGUgRGViaWFuIFBvbGljeSBNYW51YWwgIgorImZvciBkZXRhaWxzLiIKK21zZ3N0ciAiIgorIkxhcyBJPGRlcGVuZGVuY2lhcz4gZGViZW4gbWVuY2lvbmFyIGxhIHZlcnNpw7NuIG3DoXMgcmVjaWVudGUgZGVsIHBhcXVldGUgcXVlICIKKyJhw7FhZGnDsyBzw61tYm9sb3MgbnVldm9zIGEgbGEgYmlibGlvdGVjYTogZW4gZWwgZWplbXBsbyBhbnRlcmlvciwgbGVzICIKKyJhw7FhZGllcm9uIHPDrW1ib2xvcyBudWV2b3MgZW4gbGEgdmVyc2nDs24gMS4yIGRlIEk8bGliY3J1bmNoPi4gRXN0YSBubyBlcyBsYSAiCisiw7puaWNhIHJhesOzbiBwb3IgbGEgcXVlIHNlIGRlYmVuIHJlZm9yemFyIGxhcyByZWxhY2lvbmVzIGRlIGRlcGVuZGVuY2lhOyB1bmEgIgorInZleiBtw6FzLCBjb25zdWx0ZSBlbCBNYW51YWwgZGUgTm9ybWFzIGRlIERlYmlhbiBwYXJhIG3DoXMgZGV0YWxsZXMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc2hsaWJzLjU6NjMKK21zZ2lkICJCPGRwa2ctc2hsaWJkZXBzPigxKSwgQjxkZWItc3ltYm9scz4oNSkuIgorbXNnc3RyICJCPGRwa2ctc2hsaWJkZXBzPigxKSwgQjxkZWItc3ltYm9scz4oNSkuIgorCisjLiB0eXBlOiBUSAorIzogZGViLXN1YnN0dmFycy41OjIKKyMsIG5vLXdyYXAKK21zZ2lkICJkZWItc3Vic3R2YXJzIgorbXNnc3RyICJkZWItc3Vic3R2YXJzIgorCisjLiB0eXBlOiBUSAorIzogZGViLXN1YnN0dmFycy41OjIKKyMsIG5vLXdyYXAKK21zZ2lkICIyMDA5LTA3LTE1IgorbXNnc3RyICIxNSBkZSBKdWxpbyBkZSAyMDA5IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6NQorbXNnaWQgImRlYi1zdWJzdHZhcnMgLSBEZWJpYW4gc291cmNlIHN1YnN0aXR1dGlvbiB2YXJpYWJsZXMiCittc2dzdHIgImRlYi1zdWJzdHZhcnMgLSBTdXN0aXR1Y2nDs24gZGUgdmFyaWFibGVzIGRlIGZ1ZW50ZXMgZGUgRGViaWFuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6OAorbXNnaWQgInN1YnN0dmFycyIKK21zZ3N0ciAic3Vic3R2YXJzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MTkKK21zZ2lkICIiCisiQmVmb3JlIEI8ZHBrZy1zb3VyY2U+LCBCPGRwa2ctZ2VuY29udHJvbD4gYW5kIEI8ZHBrZy1nZW5jaGFuZ2VzPiB3cml0ZSB0aGVpciAiCisiY29udHJvbCBpbmZvcm1hdGlvbiAodG8gdGhlIHNvdXJjZSBjb250cm9sIGZpbGUgQjwuZHNjPiBmb3IgQjxkcGtnLXNvdXJjZT4gIgorImFuZCB0byBzdGFuZGFyZCBvdXRwdXQgZm9yIEI8ZHBrZy1nZW5jb250cm9sPiBhbmQgQjxkcGtnLWdlbmNoYW5nZXM+KSAgdGhleSAiCisicGVyZm9ybSBzb21lIHZhcmlhYmxlIHN1YnN0aXR1dGlvbnMgb24gdGhlIG91dHB1dCBmaWxlLiIKK21zZ3N0ciAiIgorIkFudGVzIGRlIHF1ZSBCPGRwa2ctc291cmNlPiwgQjxkcGtnLWdlbmNvbnRyb2w+IHkgQjxkcGtnLWdlbmNoYW5nZXM+ICIKKyJlc2NyaWJhbiBzdSBpbmZvcm1hY2nDs24gZGUgY29udHJvbCAoYWwgZmljaGVybyBCPC5kc2M+IGRlIGNvbnRyb2wgZW4gZWwgY2FzbyAiCisiZGUgQjxkcGtnLXNvdXJjZT4sIHkgYSBsYSBzYWxpZGEgZXN0w6FuZGFyIGVuIGVsIGRlIEI8ZHBrZy1nZW5jb250cm9sPiB5ICIKKyJCPGRwa2ctZ2VuY2hhbmdlcz4pLCByZWFsaXphbiBhbGd1bmFzIHN1c3RpdHVjaW9uZXMgZGUgdmFyaWFibGVzIGVuIGVsICIKKyJmaWNoZXJvIGRlIHNhbGlkYS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToyNgorbXNnaWQgIiIKKyJBIHZhcmlhYmxlIHN1YnN0aXR1dGlvbiBoYXMgdGhlIGZvcm0gQjwkez5JPHZhcmlhYmxlLW5hbWU+Qjx9Pi4gIFZhcmlhYmxlICIKKyJuYW1lcyBjb25zaXN0IG9mIGFscGhhbnVtZXJpY3MsIGh5cGhlbnMgYW5kIGNvbG9ucyBhbmQgc3RhcnQgd2l0aCBhbiAiCisiYWxwaGFudW1lcmljLiBWYXJpYWJsZSBzdWJzdGl0dXRpb25zIGFyZSBwZXJmb3JtZWQgcmVwZWF0ZWRseSB1bnRpbCBub25lIGFyZSAiCisibGVmdDsgdGhlIGZ1bGwgdGV4dCBvZiB0aGUgZmllbGQgYWZ0ZXIgdGhlIHN1YnN0aXR1dGlvbiBpcyByZXNjYW5uZWQgdG8gbG9vayAiCisiZm9yIG1vcmUgc3Vic3RpdHV0aW9ucy4iCittc2dzdHIgIiIKKyJVbmEgc3VzdGl0dWNpw7NuIGRlIHZhcmlhYmxlIHRpZW5lIGxhIGZvcm1hIEI8JHs+STxub21icmUtZGUtdmFyaWFibGU+Qjx9Pi4gIgorIkxvcyBub21icmVzIGRlIHZhcmlhYmxlIGNvbnNpc3RlbiBkZSBjYXJhY3RlcmVzIGFsZmFudW3DqXJpY29zLCBndWlvbmVzIHkgZG9zICIKKyJwdW50b3MgKDopLCB5IGNvbWllbnphbiBzaWVtcHJlIGNvbiB1biBjYXLDoWN0ZXIgYWxmYW51bcOpcmljby4gTGEgc3VzdGl0dWNpw7NuICIKKyJkZSB2YXJpYWJsZXMgc2UgbGxldmEgYSBjYWJvIHJlcGV0aWRhbWVudGUgaGFzdGEgcXVlIG5vIHF1ZWRhIG5pbmd1bmE7IGVsICIKKyJ0ZXh0byBjb21wbGV0byBkZWwgY2FtcG8gdHJhcyBsYSBzdXN0aXR1Y2nDs24gc2UgcmV2aXNhIGRlIG51ZXZvIGVuIGJ1c2NhIGRlICIKKyJtw6FzIHN1c3RpdHVjaW9uZXMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MzMKK21zZ2lkICIiCisiQWZ0ZXIgYWxsIHRoZSBzdWJzdGl0dXRpb25zIGhhdmUgYmVlbiBkb25lIGVhY2ggb2NjdXJyZW5jZSBvZiB0aGUgc3RyaW5nIEI8IgorIiR7fT4gKHdoaWNoIGlzIG5vdCBhIGxlZ2FsIHN1YnN0aXR1dGlvbikgaXMgcmVwbGFjZWQgd2l0aCBhIEI8JD4gc2lnbi4iCittc2dzdHIgIiIKKyJEZXNwdcOpcyBkZSBxdWUgdG9kYXMgbGFzIHN1c3RpdHVjaW9uZXMgaGF5YW4gdGVuaWRvIGx1Z2FyLCBjYWRhIGFwYXJpY2nDs24gZGUgIgorImxhIGNhZGVuYSBCPCR7fT4gKHF1ZSBubyBlcyB1bmEgc3VzdGl0dWNpw7NuIGxlZ2FsKSBzZSByZWVtcGxhemEgcG9yIHVuIHNpZ25vICIKKyJCPCQ+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjM4Cittc2dpZCAiIgorIldoaWxlIHZhcmlhYmxlIHN1YnN0aXR1dGlvbiBpcyBkb25lIG9uIGFsbCBjb250cm9sIGZpZWxkcywgc29tZSBvZiB0aG9zZSAiCisiZmllbGRzIGFyZSB1c2VkIGFuZCBuZWVkZWQgZHVyaW5nIHRoZSBidWlsZCB3aGVuIHRoZSBzdWJzdGl0dXRpb24gZGlkIG5vdCAiCisieWV0IG9jY3VyLiBUaGF0J3Mgd2h5IHlvdSBjYW4ndCB1c2UgdmFyaWFibGVzIGluIHRoZSBCPFBhY2thZ2U+LCBCPFNvdXJjZT4gIgorImFuZCBCPEFyY2hpdGVjdHVyZT4gZmllbGRzLiIKK21zZ3N0ciAiIgorIkEgcGVzYXIgZGUgcXVlIGxhIHN1c3RpdHVjacOzbiBkZSB2YXJpYWJsZXMgc2UgcmVhbGl6YSBzb2JyZSB0b2RvcyBsb3MgIgorImNhbXBvcywgYWxndW5vcyBkZSBlc3RvcyBjYW1wb3Mgc2UgdXNhbiBvYmxpZ2F0b3JpYW1lbnRlIGR1cmFudGUgbGEgIgorImNvbnN0cnVjY2nDs24sIGN1YW5kbyBsYSBzdXN0aXR1Y2nDs24gYcO6biBubyBzZSBoYSBlamVjdXRhZG8uIFBvciBlbGxvLCBubyAiCisicHVlZGUgdXNhciB2YXJpYWJsZXMgZW4gbG9zIGNhbXBvcyBCPFBhY2thZ2U+LCBCPFNvdXJjZT4geSBCPEFyY2hpdGVjdHVyZT4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6NDUKK21zZ2lkICIiCisiVmFyaWFibGUgc3Vic3RpdHV0aW9uIGhhcHBlbnMgb24gdGhlIGNvbnRlbnQgb2YgdGhlIGZpZWxkcyBhZnRlciB0aGV5IGhhdmUgIgorImJlZW4gcGFyc2VkLCB0aHVzIGlmIHlvdSB3YW50IGEgdmFyaWFibGUgdG8gZXhwYW5kIG92ZXIgbXVsdGlwbGUgbGluZXMgeW91ICIKKyJkbyBub3QgaGF2ZSB0byBpbmNsdWRlIGEgc3BhY2UgYWZ0ZXIgdGhlIG5ld2xpbmUuIFRoaXMgaXMgZG9uZSBpbXBsaWNpdGx5ICIKKyJ3aGVuIHRoZSBmaWVsZCBpcyBvdXRwdXQuIEZvciBleGFtcGxlLCBpZiB0aGUgdmFyaWFibGUgQjwke0Rlc2NyaXB0aW9ufT4gaXMgIgorInNldCB0byBcImZvbyBpcyBiYXIuJHtOZXdsaW5lfWZvbyBpcyBncmVhdC5cIiBhbmQgaWYgeW91IGhhdmUgdGhlIGZvbGxvd2luZyAiCisiZmllbGQ6IgorbXNnc3RyICIiCisiTGEgc3VzdGl0dWNpw7NuIGRlIHZhcmlhYmxlcyBzZSBlamVjdXRhIHNvYnJlIGVsIGNvbnRlbmlkbyBkZSBsb3MgY2FtcG9zICIKKyJkZXNwdcOpcyBkZSBzdSBhbsOhbGlzaXMsIHkgcG9yIGVsbG8gbm8gbmVjZXNpdGEgaW5jbHVpciB1biBlc3BhY2lvIGRlc3B1w6lzIGRlICIKKyJsYSBudWV2YSBsw61uZWEgcGFyYSBleHBhbmRpciB1bmEgdmFyaWFibGUgc29icmUgdmFyaWFzIGzDrW5lYXMuIEVzdG8gc2UgaGFjZSAiCisiaW1wbMOtY2l0YW1lbnRlIGN1YW5kbyBlbCBjYW1wbyBzZSBtdWVzdHJhIHBvciBsYSBzYWxpZGEuIFBvciBlamVtcGxvLCBzaSBsYSAiCisidmFyaWFibGUgQjwke0Rlc2NyaXB0aW9ufT4gZXN0w6EgZGVmaW5pZGEgY29tbyDCq2ZvbyBlcyBiYXIuJHtOZXdsaW5lfWZvbyBlcyAiCisiaW5jcmXDrWJsZS7CuyB5IHRpZW5lIGVsIHNpZ3VpZW50ZSBjYW1wbzoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNTo1MAorIywgbm8td3JhcAorbXNnaWQgIiIKKyIgRGVzY3JpcHRpb246IGZvbyBhcHBsaWNhdGlvblxuIgorIiAgJHtEZXNjcmlwdGlvbn1cbiIKKyIgIC5cbiIKKyIgIE1vcmUgdGV4dC5cbiIKK21zZ3N0ciAiIgorIiBEZXNjcmlwdGlvbjogYXBsaWNhY2nDs24gZm9vXG4iCisiICAke0Rlc2NyaXB0aW9ufVxuIgorIiAgLlxuIgorIiAgTcOhcyB0ZXh0by5cbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjUyCittc2dpZCAiSXQgd2lsbCByZXN1bHQgaW46IgorbXNnc3RyICJFbCByZXN1bHRhZG8gc2Vyw61hOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjU4CisjLCBuby13cmFwCittc2dpZCAiIgorIiBEZXNjcmlwdGlvbjogZm9vIGFwcGxpY2F0aW9uXG4iCisiICBmb28gaXMgYmFyLlxuIgorIiAgZm9vIGlzIGdyZWF0LlxuIgorIiAgLlxuIgorIiAgTW9yZSB0ZXh0LlxuIgorbXNnc3RyICIiCisiIERlc2NyaXB0aW9uOiBhcGxpY2FjacOzbiBmb29cbiIKKyIgIGZvbyBlcyBiYXIuXG4iCisiICBmb28gZXMgaW5jcmXDrWJsZS5cbiIKKyIgIC5cbiIKKyIgIE3DoXMgdGV4dG8uXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNTo3MQorbXNnaWQgIiIKKyJWYXJpYWJsZXMgY2FuIGJlIHNldCB1c2luZyB0aGUgQjwtVj4gY29tbW9uIG9wdGlvbi4gVGhleSBjYW4gYmUgYWxzbyAiCisic3BlY2lmaWVkIGluIHRoZSBmaWxlIEI8ZGViaWFuL3N1YnN0dmFycz4gKG9yIHdoYXRldmVyIG90aGVyIGZpbGUgaXMgIgorInNwZWNpZmllZCB1c2luZyB0aGUgQjwtVD4gb3B0aW9uKS4gVGhpcyBmaWxlIGNvbnNpc3RzIG9mIGxpbmVzIG9mIHRoZSBmb3JtICIKKyJJPG5hbWU+Qjw9Pkk8dmFsdWU+LiAgVHJhaWxpbmcgd2hpdGVzcGFjZSBvbiBlYWNoIGxpbmUsIGJsYW5rIGxpbmVzLCBhbmQgIgorImxpbmVzIHN0YXJ0aW5nIHdpdGggYSBCPCM+IHN5bWJvbCAoY29tbWVudHMpIGFyZSBpZ25vcmVkLiIKK21zZ3N0ciAiIgorIkxhcyB2YXJpYWJsZXMgc2UgcHVlZGVuIGRlZmluaXIgdXNhbmRvIGxhIG9wY2nDs24gY29tw7puIEI8LVY+LiBUYW1iacOpbiBzZSAiCisicHVlZGVuIGVzcGVjaWZpY2FyIGVuIGVsIGZpY2hlcm8gQjxkZWJpYW4vc3Vic3R2YXJzPiAodSBvdHJvIGZpY2hlcm8gIgorImVzcGVjaWZpY2FkbyBtZWRpYW50ZSBsYSBvcGNpw7NuIEI8LVQ+KS4gRXN0ZSBmaWNoZXJvIGNvbnNpc3RlIGRlIGzDrW5lYXMgY29uICIKKyJsYSBmb3JtYSBJPG5vbWJyZT5CPD0+STx2YWxvcj4uIExvcyBjYXJhY3RlcmVzIGVuIGJsYW5jbyBhbCBmaW5hbCBkZSBjYWRhICIKKyJsw61uZWEsIGxhcyBsw61uZWFzIHZhY8OtYXMgeSBsYXMgbMOtbmVhcyBxdWUgY29taWVuY2VuIGNvbiBlbCBzw61tYm9sbyBCPCM+ICIKKyIoY29tZW50YXJpb3MpIHNvbiBpZ25vcmFkb3MuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6NzMKK21zZ2lkICJBZGRpdGlvbmFsbHksIHRoZSBmb2xsb3dpbmcgc3RhbmRhcmQgdmFyaWFibGVzIGFyZSBhdmFpbGFibGU6IgorbXNnc3RyICIiCisiRGUgbWFuZXJhIGFkaWNpb25hbCwgbGFzIHNpZ3VpZW50ZXMgdmFyaWFibGVzIGVzdMOhbmRhciBlc3TDoW4gZGlzcG9uaWJsZXM6IgorCisjLiB0eXBlOiBUUAorIzogZGViLXN1YnN0dmFycy41OjczCisjLCBuby13cmFwCittc2dpZCAiQjxBcmNoPiIKK21zZ3N0ciAiQjxBcmNoPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41Ojc3Cittc2dpZCAiVGhlIGN1cnJlbnQgYnVpbGQgYXJjaGl0ZWN0dXJlIChmcm9tIEI8ZHBrZyAtLXByaW50LWFyY2hpdGVjdHVyZT4pLiIKK21zZ3N0ciAiIgorIkxhIGFycXVpdGVjdHVyYSBkZSBjb25zdHJ1Y2Npw7NuIGFjdHVhbCAoZGUgQjxkcGtnIC0tcHJpbnQtYXJjaGl0ZWN0dXJlPikuIgorCisjLiB0eXBlOiBUUAorIzogZGViLXN1YnN0dmFycy41Ojc3CisjLCBuby13cmFwCittc2dpZCAiQjxzb3VyY2U6VmVyc2lvbj4iCittc2dzdHIgIkI8c291cmNlOlZlcnNpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6ODAKK21zZ2lkICJUaGUgc291cmNlIHBhY2thZ2UgdmVyc2lvbi4iCittc2dzdHIgIkxhIHZlcnNpw7NuIGRlbCBwYXF1ZXRlIGZ1ZW50ZS4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3Vic3R2YXJzLjU6ODAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHNvdXJjZTpVcHN0cmVhbS1WZXJzaW9uPiIKK21zZ3N0ciAiQjxzb3VyY2U6VXBzdHJlYW0tVmVyc2lvbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNTo4NAorbXNnaWQgIiIKKyJUaGUgdXBzdHJlYW0gc291cmNlIHBhY2thZ2UgdmVyc2lvbiwgaW5jbHVkaW5nIHRoZSBEZWJpYW4gdmVyc2lvbiBlcG9jaCBpZiAiCisiYW55LiIKK21zZ3N0ciAiIgorIkxhIHZlcnNpw7NuIGRlbCBwYXF1ZXRlIGRlbCBhdXRvciBvcmlnaW5hbCwgaW5jbHV5ZW5kbyBsYSB2ZXJzacOzbiDCq2Vwb2NowrsgZGUgIgorIkRlYmlhbiwgZGUgZXhpc3Rpci4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3Vic3R2YXJzLjU6ODQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGJpbmFyeTpWZXJzaW9uPiIKK21zZ3N0ciAiQjxiaW5hcnk6VmVyc2lvbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNTo4OAorbXNnaWQgIiIKKyJUaGUgYmluYXJ5IHBhY2thZ2UgdmVyc2lvbiAod2hpY2ggbWF5IGRpZmZlciBmcm9tIHNvdXJjZTpWZXJzaW9uIGluIGEgYmluTk1VICIKKyJmb3IgZXhhbXBsZSkuIgorbXNnc3RyICIiCisiTGEgdmVyc2nDs24gZGVsIHBhcXVldGUgYmluYXJpbyAocHVlZGUgc2VyIGRpc3RpbnRvIGRlIMKrc291cmNlOlZlcnNpb27CuywgcG9yICIKKyJlamVtcGxvLCBjb24gdW4gTk1VIGJpbmFyaW8pLiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zdWJzdHZhcnMuNTo4OAorIywgbm8td3JhcAorbXNnaWQgIkI8U291cmNlLVZlcnNpb24+IgorbXNnc3RyICJCPFNvdXJjZS1WZXJzaW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjkzCittc2dpZCAiIgorIlRoZSBzb3VyY2UgcGFja2FnZSB2ZXJzaW9uIChmcm9tIHRoZSBjaGFuZ2Vsb2cgZmlsZSkuIFRoaXMgdmFyaWFibGUgaXMgbm93ICIKKyJCPGRlcHJlY2F0ZWQ+IGFzIGl0cyBtZWFuaW5nIGlzIGRpZmZlcmVudCBmcm9tIGl0cyBmdW5jdGlvbiwgcGxlYXNlIHVzZSB0aGUgIgorIkI8c291cmNlOlZlcnNpb24+IG9yIEI8YmluYXJ5OlZlcnNpb24+IGFzIGFwcHJvcHJpYXRlLiIKK21zZ3N0ciAiIgorIkxhIHZlcnNpw7NuIGRlbCBwYXF1ZXRlIGZ1ZW50ZSAoZGVsIGZpY2hlcm8gZGUgcmVnaXN0cm8gZGUgY2FtYmlvcykuIEVzdGEgIgorInZhcmlhYmxlIGVzdMOhIEI8b2Jzb2xldGE+LCB5YSBxdWUgc3Ugc2lnbmlmaWNhZG8gZGlmaWVyZSBkZSBzdSBmdW5jacOzbi4gVXNlICIKKyJCPHNvdXJjZTpWZXJzaW9uPiBvIEI8YmluYXJ5OlZlcnNpb24+IHNlZ8O6biByZXF1aWVyYSBsYSBvY2FzacOzbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3Vic3R2YXJzLjU6OTMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPEluc3RhbGxlZC1TaXplPiIKK21zZ3N0ciAiQjxJbnN0YWxsZWQtU2l6ZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToxMDIKK21zZ2lkICIiCisiVGhlIHRvdGFsIHNpemUgb2YgdGhlIHBhY2thZ2UncyBpbnN0YWxsZWQgZmlsZXMuIFRoaXMgdmFsdWUgaXMgY29waWVkIGludG8gIgorInRoZSBjb3JyZXNwb25kaW5nIGNvbnRyb2wgZmlsZSBmaWVsZDsgc2V0dGluZyBpdCB3aWxsIG1vZGlmeSB0aGUgdmFsdWUgb2YgIgorInRoYXQgZmllbGQuIElmIHRoaXMgdmFyaWFibGUgaXNuJ3Qgc2V0IEI8ZHBrZy1nZW5jb250cm9sPiB3aWxsIHVzZSBCPGR1IC1rICIKKyJkZWJpYW4vdG1wPiB0byBmaW5kIHRoZSBkZWZhdWx0IHZhbHVlLiIKK21zZ3N0ciAiIgorIkVsIHRhbWHDsW8gdG90YWwgZGUgbG9zIGZpY2hlcm9zIGRlbCBwYXF1ZXRlIHlhIGluc3RhbGFkby4gRXN0ZSB2YWxvciBzZSAiCisiY29waWEgYWwgY2FtcG8gZGVsIGZpY2hlcm8gZGUgY29udHJvbCBjb3JyZXNwb25kaWVudGU7IGRlZmluaXJsbyBtb2RpZmljYSBlbCAiCisidmFsb3IgZGUgZGljaG8gY2FtcG8uIFNpIGxhIHZhcmlhYmxlIG5vIGVzdMOhIGRlZmluaWRhLCBCPGRwa2ctZ2VuY29udHJvbD4gIgorInVzYXLDoSBCPGR1IC1rIGRlYmlhbi90bXA+IHBhcmEgaGFsbGFyIGVsIHZhbG9yIHByZWRlZmluaWRvLiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zdWJzdHZhcnMuNToxMDIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPEV4dHJhLVNpemU+IgorbXNnc3RyICJCPEV4dHJhLVNpemU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MTExCittc2dpZCAiIgorIkFkZGl0aW9uYWwgZGlzayBzcGFjZSB1c2VkIHdoZW4gdGhlIHBhY2thZ2UgaXMgaW5zdGFsbGVkLiBJZiB0aGlzIHZhcmlhYmxlICIKKyJpcyBzZXQgaXRzIHZhbHVlIGlzIGFkZGVkIHRvIHRoYXQgb2YgdGhlIEI8SW5zdGFsbGVkLVNpemU+IHZhcmlhYmxlICh3aGV0aGVyICIKKyJzZXQgZXhwbGljaXRseSBvciB1c2luZyB0aGUgZGVmYXVsdCB2YWx1ZSkgYmVmb3JlIGl0IGlzIGNvcGllZCBpbnRvIHRoZSAiCisiQjxJbnN0YWxsZWQtU2l6ZT4gY29udHJvbCBmaWxlIGZpZWxkLiIKK21zZ3N0ciAiIgorIkVsIGVzcGFjaW8gZW4gZGlzY28gYWRpY2lvbmFsIHVzYWRvIGN1YW5kbyBzZSBpbnN0YWxhIGVsIHBhcXVldGUuIFNpIHNlICIKKyJkZWZpbmUgZXN0YSB2YXJpYWJsZSwgc3UgdmFsb3Igc2UgYcOxYWRlIGFsIGRlIGxhIHZhcmlhYmxlIEI8SW5zdGFsbGVkLVNpemU+ICIKKyIodGFudG8gc2kgc2UgZXN0YWJsZWNlIG1hbnVhbG1lbnRlIGNvbW8gc2kgc2UgdXNhIGVsIHZhbG9yIHByZWRlZmluaWRvKSAiCisiYW50ZXMgZGUgY29waWFyc2UgYWwgY2FtcG8gQjxJbnN0YWxsZWQtU2l6ZT4gZGVsIGZpY2hlcm8gZGUgY29udHJvbC4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3Vic3R2YXJzLjU6MTExCisjLCBuby13cmFwCittc2dpZCAiQjxGOj5JPGZpZWxkbmFtZT4iCittc2dzdHIgIkI8Rjo+STxub21icmUtY2FtcG8+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MTE4Cittc2dpZCAiIgorIlRoZSB2YWx1ZSBvZiB0aGUgb3V0cHV0IGZpZWxkIEk8ZmllbGRuYW1lPiAod2hpY2ggbXVzdCBiZSBnaXZlbiBpbiB0aGUgIgorImNhbm9uaWNhbCBjYXBpdGFsaXNhdGlvbikuIFNldHRpbmcgdGhlc2UgdmFyaWFibGVzIGhhcyBubyBlZmZlY3Qgb3RoZXIgdGhhbiAiCisib24gcGxhY2VzIHdoZXJlIHRoZXkgYXJlIGV4cGFuZGVkIGV4cGxpY2l0bHkuIgorbXNnc3RyICIiCisiRWwgdmFsb3IgZGUgbGEgc2FsaWRhIGRlbCBjYW1wbyBJPG5vbWJyZS1jYW1wbz4gKHF1ZSBzZSBkZWJlIHByb3BvcmNpb25hciAiCisic2lndWllbmRvIGxhIGNvbnZlbmNpw7NuIGRlIG1hecO6c2N1bGFzIHkgbWluw7pzY3VsYXMpLiBEZWZpbmlyIGVzdGFzIHZhcmlhYmxlcyAiCisibm8gdGllbmUgbmluZ8O6biBlZmVjdG8gZXhjZXB0byBlbiBhcXVlbGxvcyBsdWdhcmVzIGRvbmRlIHNlIGV4cGFuZGFuICIKKyJleHBsw61jaXRhbWVudGUuIgorCisjLiB0eXBlOiBUUAorIzogZGViLXN1YnN0dmFycy41OjExOAorIywgbm8td3JhcAorbXNnaWQgIkI8Rm9ybWF0PiIKK21zZ3N0ciAiQjxGb3JtYXQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MTI4Cittc2dpZCAiIgorIlRoZSBCPC5jaGFuZ2VzPiBmaWxlIGZvcm1hdCB2ZXJzaW9uIGdlbmVyYXRlZCBieSB0aGlzIHZlcnNpb24gb2YgdGhlIHNvdXJjZSAiCisicGFja2FnaW5nIHNjcmlwdHMuIElmIHlvdSBzZXQgdGhpcyB2YXJpYWJsZSB0aGUgY29udGVudHMgb2YgdGhlIEI8Rm9ybWF0PiAiCisiZmllbGQgaW4gdGhlIEI8LmNoYW5nZXM+IGZpbGUgd2lsbCBjaGFuZ2UgdG9vLiIKK21zZ3N0ciAiIgorIkVsIGZvcm1hdG8gZGVsIGZpY2hlcm8gQjwuY2hhbmdlcz4gZ2VuZXJhZG8gcG9yIGVzdGEgdmVyc2nDs24gZGUgbG9zIHNjcmlwdHMgIgorImRlIGVtcGFxdWV0YWRvIGRlIGZ1ZW50ZXMuIFNpIGRlZmluZSBlc3RhIHZhcmlhYmxlLCBlbCBjb250ZW5pZG8gZGVsIGNhbXBvICIKKyJCPEZvcm1hdD4gZW4gZWwgZmljaGVybyBCPC5jaGFuZ2VzPiBjYW1iaWFyw6EgaWd1YWxtZW50ZS4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3Vic3R2YXJzLjU6MTI4CisjLCBuby13cmFwCittc2dpZCAiQjxOZXdsaW5lPiwgQjxTcGFjZT4sIEI8VGFiPiIKK21zZ3N0ciAiQjxOZXdsaW5lPiwgQjxTcGFjZT4sIEI8VGFiPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjEzMQorbXNnaWQgIlRoZXNlIHZhcmlhYmxlcyBlYWNoIGhvbGQgdGhlIGNvcnJlc3BvbmRpbmcgY2hhcmFjdGVyLiIKK21zZ3N0ciAiIgorIkVzdGFzIHZhcmlhYmxlcyBjb250aWVuZW4gY2FkYSB1bmEgZWwgY2Fyw6FjdGVyIGN1eW8gbm9tYnJlIGVzcGVjaWZpY2FuIGVuICIKKyJpbmdsw6lzLiBOb3RhIGRlbCB0cmFkdWN0b3I6IE5ld2xpbmUgPSBSZXRvcm5vIGRlIGzDrW5lYSwgU3BhY2UgPSBFc3BhY2lvLCBUYWIgIgorIj0gVGFidWxhZG9yLiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zdWJzdHZhcnMuNToxMzEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHNobGliczo+STxkZXBlbmRlbmN5ZmllbGQ+IgorbXNnc3RyICJCPHNobGliczo+STxjYW1wby1kZS1kZXBlbmRlbmNpYT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToxMzUKK21zZ2lkICIiCisiVmFyaWFibGUgc2V0dGluZ3Mgd2l0aCBuYW1lcyBvZiB0aGlzIGZvcm0gYXJlIGdlbmVyYXRlZCBieSBCPGRwa2ctc2hsaWJkZXBzPi4iCittc2dzdHIgIiIKKyJMYXMgdmFyaWFibGVzIGNvbiBub21icmVzIGRlIGVzdGEgZm9ybWEgc2UgZ2VuZXJhbiBtZWRpYW50ZSBCPGRwa2ctIgorInNobGliZGVwcz4uIgorCisjLiB0eXBlOiBUUAorIzogZGViLXN1YnN0dmFycy41OjEzNQorIywgbm8td3JhcAorbXNnaWQgIkI8ZHBrZzpVcHN0cmVhbS1WZXJzaW9uPiIKK21zZ3N0ciAiQjxkcGtnOlVwc3RyZWFtLVZlcnNpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MTM4Cittc2dpZCAiVGhlIHVwc3RyZWFtIHZlcnNpb24gb2YgZHBrZy4iCittc2dzdHIgIkxhIHZlcnNpw7NuIGRlIGxhIGZ1ZW50ZSBvcmlnaW5hbCBkZSBkcGtnLiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zdWJzdHZhcnMuNToxMzgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGRwa2c6VmVyc2lvbj4iCittc2dzdHIgIkI8ZHBrZzpWZXJzaW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjE0MQorbXNnaWQgIlRoZSBmdWxsIHZlcnNpb24gb2YgZHBrZy4iCittc2dzdHIgIkxhIHZlcnNpw7NuIGNvbXBsZXRhIGRlIGRwa2cuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MTQ0Cittc2dpZCAiIgorIklmIGEgdmFyaWFibGUgaXMgcmVmZXJyZWQgdG8gYnV0IG5vdCBkZWZpbmVkIGl0IGdlbmVyYXRlcyBhIHdhcm5pbmcgYW5kIGFuICIKKyJlbXB0eSB2YWx1ZSBpcyBhc3N1bWVkLiIKK21zZ3N0ciAiIgorIlNpIHNlIGhhY2UgcmVmZXJlbmNpYSBhIHVuYSB2YXJpYWJsZSBwZXJvIG5vIHNlIGRlZmluZSBzZSBnZW5lcmEgdW4gYXZpc28geSAiCisic2UgYXN1bWUgdW4gdmFsb3IgdmFjw61vLiIKKworIy4gdHlwZTogU0gKKyM6IGRlYi1zdWJzdHZhcnMuNToxNDUgZHBrZy4xOjYyNyBkcGtnLWFyY2hpdGVjdHVyZS4xOjI4NCBkcGtnLmNmZy41OjEyCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMjEgZHBrZy1kaXN0YWRkZmlsZS4xOjM5IGRwa2ctZGl2ZXJ0Ljg6MTIyCisjOiBkcGtnLWdlbmNoYW5nZXMuMToxMzggZHBrZy1nZW5jb250cm9sLjE6MTI4IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxMTUKKyM6IGRwa2ctc3BsaXQuMToyMDYgZHBrZy1zdGF0b3ZlcnJpZGUuODo3NCBkc2VsZWN0LmNmZy41OjEyCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzYwCisjLCBuby13cmFwCittc2dpZCAiRklMRVMiCittc2dzdHIgIkZJQ0hFUk9TIgorCisjLiB0eXBlOiBUUAorIzogZGViLXN1YnN0dmFycy41OjE0NgorIywgbm8td3JhcAorbXNnaWQgIkI8ZGViaWFuL3N1YnN0dmFycz4iCittc2dzdHIgIkI8ZGViaWFuL3N1YnN0dmFycz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToxNDkKK21zZ2lkICJMaXN0IG9mIHN1YnN0aXR1dGlvbiB2YXJpYWJsZXMgYW5kIHZhbHVlcy4iCittc2dzdHIgIkxpc3RhIGRlIHZhcmlhYmxlcyBhIHN1c3RpdHVpciB5IHZhbG9yZXMuIgorCisjLiB0eXBlOiBTSAorIzogZGViLXN1YnN0dmFycy41OjE1MCBkcGtnLjE6NzgwIGRwa2ctYnVpbGRwYWNrYWdlLjE6MjQ0IGRwa2ctZGViLjE6MjM4CisjOiBkcGtnLW5hbWUuMTo4NiBkcGtnLXNvdXJjZS4xOjcyMiBkcGtnLXNwbGl0LjE6MTk5IGRzZWxlY3QuMTo0MjkKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0ODYKKyMsIG5vLXdyYXAKK21zZ2lkICJCVUdTIgorbXNnc3RyICJGQUxMT1MiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToxNTMgZHBrZy1zb3VyY2UuMTo3MjUKK21zZ2lkICIiCisiVGhlIHBvaW50IGF0IHdoaWNoIGZpZWxkIG92ZXJyaWRpbmcgb2NjdXJzIGNvbXBhcmVkIHRvIGNlcnRhaW4gc3RhbmRhcmQgIgorIm91dHB1dCBmaWVsZCBzZXR0aW5ncyBpcyByYXRoZXIgY29uZnVzZWQuIgorbXNnc3RyICIiCisiTm8gZXN0w6EgY2xhcm8gZWwgcHVudG8gZW4gZWwgY3VhbCBzZSBwcm9kdWNlIGxhIHN1c3RpdHVjacOzbiBkZSBjYW1wb3MsICIKKyJjb21wYXJhZG8gY29uIGNpZXJ0YXMgb3BjaW9uZXMgZGUgbG9zIGNhbXBvcyBkZSBzYWxpZGEgZXN0w6FuZGFyLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjE2MAorbXNnaWQgIiIKKyJCPGRwa2c+KDEpLCBCPGRwa2ctZ2VuY2hhbmdlcz4oMSksIEI8ZHBrZy1nZW5jb250cm9sPigxKSwgQjxkcGtnLXNobGliZGVwcz4iCisiKDEpLCBCPGRwa2ctc291cmNlPigxKS4iCittc2dzdHIgIiIKKyJCPGRwa2c+KDEpLCBCPGRwa2ctZ2VuY2hhbmdlcz4oMSksIEI8ZHBrZy1nZW5jb250cm9sPigxKSwgQjxkcGtnLXNobGliZGVwcz4iCisiKDEpLCBCPGRwa2ctc291cmNlPigxKS4iCisKKyMuIHR5cGU6IFNICisjOiBkZWItc3Vic3R2YXJzLjU6MTYxIGRwa2ctYXJjaGl0ZWN0dXJlLjE6MzAzIGRwa2cuY2ZnLjU6MTkKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjI2NiBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6NDAgZHBrZy1kZWIuMToyNjUKKyM6IGRwa2ctZGl2ZXJ0Ljg6MTM1IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6NjYgZHBrZy1uYW1lLjE6MTA0CisjOiBkcGtnLXF1ZXJ5LjE6MjE0IGRwa2ctc2NhbnNvdXJjZXMuMTo3NiBkcGtnLXNwbGl0LjE6MjIzCisjOiBkcGtnLXN0YXRvdmVycmlkZS44Ojg3IGRwa2ctdmVuZG9yLjE6NDggZHNlbGVjdC5jZmcuNToxOQorIywgbm8td3JhcAorbXNnaWQgIkFVVEhPUiIKK21zZ3N0ciAiQVVUT1IiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToxNjMgZHBrZy1idWlsZHBhY2thZ2UuMToyNTkgZHBrZy1kaXN0YWRkZmlsZS4xOjQ5CisjOiBkcGtnLWRlYi4xOjI2NyBkcGtnLWdlbmNoYW5nZXMuMToxNTAgZHBrZy1nZW5jb250cm9sLjE6MTQ0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTI1IGRwa2ctc2hsaWJkZXBzLjE6MzMxIGRwa2ctc291cmNlLjE6NzMyCisjOiBkcGtnLXNwbGl0LjE6MjI1Cittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDE5OTUtMTk5NiBJYW4gSmFja3NvbiIKK21zZ3N0ciAiQ29weXJpZ2h0IFxcKGNvIDE5OTUtMTk5NiBJYW4gSmFja3NvbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjE2NSBkcGtnLWJ1aWxkcGFja2FnZS4xOjI2MSBkcGtnLWRpc3RhZGRmaWxlLjE6NTEKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjE1MiBkcGtnLWdlbmNvbnRyb2wuMToxNDYgZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjEyNworIzogZHBrZy1zaGxpYmRlcHMuMTozMzMgZHBrZy1zb3VyY2UuMTo3MzQgZHBrZy1zdGF0b3ZlcnJpZGUuODo4OQorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDAwIFdpY2hlcnQgQWtrZXJtYW4iCittc2dzdHIgIkNvcHlyaWdodCBcXChjbyAyMDAwIFdpY2hlcnQgQWtrZXJtYW4iCisKKyMuIHR5cGU6IFRICisjOiBkZWItc3ltYm9scy41OjIKKyMsIG5vLXdyYXAKK21zZ2lkICJkZWItc3ltYm9scyIKK21zZ3N0ciAiZGViLXN5bWJvbHMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6NQorbXNnaWQgImRlYi1zeW1ib2xzIC0gRGViaWFuJ3MgZXh0ZW5kZWQgc2hhcmVkIGxpYnJhcnkgaW5mb3JtYXRpb24gZmlsZSIKK21zZ3N0ciAiIgorImRlYi1zeW1ib2xzIC0gRmljaGVybyBkZSBEZWJpYW4gZGUgaW5mb3JtYWNpw7NuIGV4dGVuZGlkYSBkZSBiaWJsaW90ZWNhcyAiCisiY29tcGFydGlkYXMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6OAorbXNnaWQgInN5bWJvbHMiCittc2dzdHIgInN5bWJvbHMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6MTIKK21zZ2lkICIiCisiVGhlIGZvcm1hdCBmb3IgYW4gZXh0ZW5kZWQgc2hhcmVkIGxpYnJhcnkgZGVwZW5kZW5jeSBpbmZvcm1hdGlvbiBlbnRyeSBpbiAiCisidGhlc2UgZmlsZXMgaXM6IgorbXNnc3RyICIiCisiRWwgZm9ybWF0byBkZSB1bmEgZW50cmFkYSBkZSBpbmZvcm1hY2nDs24gZGUgZGVwZW5kZW5jaWEgZGUgdW5hIGJpYmxpb3RlY2EgIgorImNvbXBhcnRpZGEgZW4gZXN0b3MgZmljaGVyb3MgZXMgZWwgc2lndWllbnRlOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNToxNAorIywgZnV6enkKKyN8IG1zZ2lkICJFPGx0PmxpYnJhcnkgc29uYW1lRTxndD4gRTxsdD5tYWluIGRlcGVuZGVuY3kgdGVtcGxhdGVFPGd0PiIKK21zZ2lkICJJPGxpYnJhcnktc29uYW1lIG1haW4tZGVwZW5kZW5jeS10ZW1wbGF0ZT4iCittc2dzdHIgIkU8bHQ+c29uYW1lLWJpYmxpb3RlY2FFPGd0PiBFPGx0PnBsYW50aWxsYS1kZXBlbmRlbmNpYS1wcmluY2lwYWxFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNToxNgorIywgZnV6enkKKyN8IG1zZ2lkICJbIHwgRTxsdD5hbHRlcm5hdGl2ZSBkZXBlbmRlbmN5IHRlbXBsYXRlRTxndD4gXSIKK21zZ2lkICJbIHwgSTxhbHRlcm5hdGl2ZS1kZXBlbmRlbmN5LXRlbXBsYXRlPiBdIgorbXNnc3RyICJbIHwgRTxsdD5wbGFudGlsbGEtZGVwZW5kZW5jaWEtYWx0ZXJuYXRpdmFFPGd0PiBdIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3ltYm9scy41OjE4Cittc2dpZCAiWyAuLi4gXSIKK21zZ3N0ciAiWyAuLi4gXSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNToyMAorIywgZnV6enkKKyN8IG1zZ2lkICJbICogRTxsdD5maWVsZC1uYW1lRTxndD46IEU8bHQ+ZmllbGQgdmFsdWVFPGd0PiBdIgorbXNnaWQgIlsgKiBJPGZpZWxkLW5hbWU+OiBJPGZpZWxkLXZhbHVlPiBdIgorbXNnc3RyICJbICogRTxsdD5ub21icmUtY2FtcG9FPGd0PjogRTxsdD52YWxvci1jYW1wb0U8Z3Q+IF0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6MjMKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiIgorI3wgIlsgLi4uIF1cbiIKKyN8ICIgRTxsdD5zeW1ib2xFPGd0PiBFPGx0Pm1pbmltYWwgdmVyc2lvbkU8Z3Q+WyBFPGx0PmlkIG9mIGRlcGVuZGVuY3kgdGVtcGxhdGVFPGd0PiBdXG4iCittc2dpZCAiIgorIlsgLi4uIF1cbiIKKyIgSTxzeW1ib2w+IEk8bWluaW1hbC12ZXJzaW9uPlsgSTxpZC1vZi1kZXBlbmRlbmN5LXRlbXBsYXRlPiBdXG4iCittc2dzdHIgIiIKKyJbIC4uLiBdXG4iCisiIEU8bHQ+c8OtbWJvbG9FPGd0PiBFPGx0PnZlcnNpw7NuLW3DrW5pbWFFPGd0PlsgRTxsdD5pZGVudGlmaWNhZG9yLXBsYW50aWxsYS1kZXBlbmRlbmNpYUU8Z3Q+IF1cbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNToyOQorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiVGhlIEk8bGlicmFyeSBzb25hbWU+IGlzIGV4YWN0bHkgdGhlIHZhbHVlIG9mIHRoZSBTT05BTUUgZmllbGQgYXMgIgorI3wgImV4cG9ydGVkIGJ5IEI8b2JqZHVtcD4oMSkuIEEgSTxkZXBlbmRlbmN5IHRlbXBsYXRlPiBpcyBhIGRlcGVuZGVuY3kgd2hlcmUgIgorI3wgIkk8I01JTlZFUiM+IGlzIGR5bmFtaWNhbGx5IHJlcGxhY2VkIGVpdGhlciBieSBhIHZlcnNpb24gY2hlY2sgbGlrZSAiCisjfCAiXCIoRTxndD49IEk8bWluaW1hbCB2ZXJzaW9uPilcIiBvciBieSBub3RoaW5nIChpZiBhbiB1bnZlcnNpb25lZCAiCisjfCAiZGVwZW5kZW5jeSBpcyBkZWVtZWQgc3VmZmljaWVudCkuIgorbXNnaWQgIiIKKyJUaGUgSTxsaWJyYXJ5LXNvbmFtZT4gaXMgZXhhY3RseSB0aGUgdmFsdWUgb2YgdGhlIFNPTkFNRSBmaWVsZCBhcyBleHBvcnRlZCAiCisiYnkgQjxvYmpkdW1wPigxKS4gQSBJPGRlcGVuZGVuY3ktdGVtcGxhdGU+IGlzIGEgZGVwZW5kZW5jeSB3aGVyZSBJPCNNSU5WRVIjPiAiCisiaXMgZHluYW1pY2FsbHkgcmVwbGFjZWQgZWl0aGVyIGJ5IGEgdmVyc2lvbiBjaGVjayBsaWtlIFwiKEU8Z3Q+PSBJPG1pbmltYWwtIgorInZlcnNpb24+KVwiIG9yIGJ5IG5vdGhpbmcgKGlmIGFuIHVudmVyc2lvbmVkIGRlcGVuZGVuY3kgaXMgZGVlbWVkICIKKyJzdWZmaWNpZW50KS4iCittc2dzdHIgIiIKKyJMYSB2YXJpYWJsZSBJPHNvbmFtZS1iaWJsaW90ZWNhPiBlcyBleGFjdGFtZW50ZSBlbCB2YWxvciBkZWwgY2FtcG8gwqtTT05BTUXCuyAiCisidGFsIHkgY29tbyBleHBvcnRhIEI8b2JqZHVtcD4oMSkuIFVuYSBJPHBsYW50aWxsYS1kZXBlbmRlbmNpYT4gZXMgdW5hICIKKyJkZXBlbmRlbmNpYSBlbiBsYSBxdWUgSTwjTUlOVkVSIz4gKHZlcnNpw7NuIG3DrW5pbWEpIHNlIHJlZW1wbGF6YSAiCisiZGluw6FtaWNhbWVudGUgYmllbiBwb3IgdW5hIHJldmlzacOzbiBkZSBsYSB2ZXJzacOzbiBjb21vIMKrKEU8Z3Q+PSBJPG1pbmltYWwgIgorInZlcnNpb24+KcK7LCBvIG5hZGEsIHNpIHNlIGNvbnNpZGVyYSBxdWUgZXMgc3VmaWNpZW50ZSB1bmEgZGVwZW5kZW5jaWEgc2luICIKKyJ2ZXJzacOzbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6MzYKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIkVhY2ggZXhwb3J0ZWQgSTxzeW1ib2w+IChsaXN0ZWQgYXMgSTxuYW1lPkBJPHZlcnNpb24+LCB3aXRoIEk8dmVyc2lvbj4gIgorI3wgImJlaW5nIFwiQmFzZVwiIGlmIHRoZSBsaWJyYXJ5IGlzIG5vdCB2ZXJzaW9uZWQpIGlzIGFzc29jaWF0ZWQgdG8gYSAiCisjfCAiSTxtaW5pbWFsIHZlcnNpb24+IG9mIGl0cyBkZXBlbmRlbmN5IHRlbXBsYXRlICh0aGUgbWFpbiBkZXBlbmRlbmN5ICIKKyN8ICJ0ZW1wbGF0ZSBpcyB1c2VkIGlmIEk8aWQgb2YgZGVwZW5kZW5jeSB0ZW1wbGF0ZT4gaXMgbm90IHByZXNlbnQpLiBUaGUgIgorI3wgImZpcnN0IGFsdGVybmF0aXZlIGRlcGVuZGVuY3kgdGVtcGxhdGUgaXMgbnVtYmVyZWQgMSwgdGhlIHNlY29uZCBvbmUgMiwgIgorI3wgImV0Yy4iCittc2dpZCAiIgorIkVhY2ggZXhwb3J0ZWQgSTxzeW1ib2w+IChsaXN0ZWQgYXMgSTxuYW1lPkBJPHZlcnNpb24+LCB3aXRoIEk8dmVyc2lvbj4gYmVpbmcgIgorIlwiQmFzZVwiIGlmIHRoZSBsaWJyYXJ5IGlzIG5vdCB2ZXJzaW9uZWQpIGlzIGFzc29jaWF0ZWQgdG8gYSBJPG1pbmltYWwtIgorInZlcnNpb24+IG9mIGl0cyBkZXBlbmRlbmN5IHRlbXBsYXRlICh0aGUgbWFpbiBkZXBlbmRlbmN5IHRlbXBsYXRlIGlzIHVzZWQgaWYgIgorIkk8aWQtb2YtZGVwZW5kZW5jeS10ZW1wbGF0ZT4gaXMgbm90IHByZXNlbnQpLiBUaGUgZmlyc3QgYWx0ZXJuYXRpdmUgIgorImRlcGVuZGVuY3kgdGVtcGxhdGUgaXMgbnVtYmVyZWQgMSwgdGhlIHNlY29uZCBvbmUgMiwgZXRjLiIKK21zZ3N0ciAiIgorIkNhZGEgSTxzw61tYm9sbz4gZXhwb3J0YWRvIChsaXN0YWRvIGNvbW8gSTxub21icmU+QEk8dmVyc2nDs24+LCBzaWVuZG8gIgorIkk8dmVyc2nDs24+IMKrQmFzZcK7IHNpIG5vIHNlIGRlZmluacOzIGxhIHZlcnNpw7NuIGRlIGxhIGJpYmxpb3RlY2EgKSBzZSBhc29jaWEgIgorImNvbiB1bmEgSTx2ZXJzacOzbiBtw61uaW1hPiBkZSBzdSBwbGFudGlsbGEgZGUgZGVwZW5kZW5jaWEgKHNlIHVzYXLDoSBsYSAiCisicGxhbnRpbGxhIHByaW5jaXBhbCBkZSBkZXBlbmRlbmNpYSBkZSBubyBlc3RhciBwcmVzZW50ZSBlbCBJPGlkZW50aWZpY2Fkb3ItIgorInBsYW50aWxsYS1kZXBlbmRlbmNpYT4pLiBMYSBwcmltZXJhIHBsYW50aWxsYSBkZSBkZXBlbmRlbmNpYSBhbHRlcm5hdGl2YSBzZSAiCisibnVtZXJhIGNvbW8gMSwgbGEgc2VndW5kYSBjb21vIDIsIGV0Yy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6NDMKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIkVhY2ggZW50cnkgZm9yIGEgbGlicmFyeSBjYW4gYWxzbyBoYXZlIHNvbWUgZmllbGRzIG9mIG1ldGEtaW5mb3JtYXRpb24uICAiCisjfCAiVGhvc2UgZmllbGRzIGFyZSBzdG9yZWQgb24gbGluZXMgc3RhcnRpbmcgd2l0aCBhbiBhc3Rlcmlzay4gQ3VycmVudGx5LCAiCisjfCAidGhlIG9ubHkgdmFsaWQgZmllbGQgaXMgSTxCdWlsZC1EZXBlbmRzLVBhY2thZ2U+LCBpdCBpbmRpY2F0ZXMgdGhlIG5hbWUgIgorI3wgIm9mIHRoZSBcIi1kZXZcIiBwYWNrYWdlIGFzc29jaWF0ZWQgdG8gdGhlIGxpYnJhcnkgYW5kIGlzIHVzZWQgYnkgZHBrZy0iCisjfCAic2hsaWJkZXBzIHRvIG1ha2Ugc3VyZSB0aGF0IHRoZSBkZXBlbmRlbmN5IGdlbmVyYXRlZCBpcyBhdCBsZWFzdCBhcyAiCisjfCAic3RyaWN0IGFzIHRoZSBjb3JyZXNwb25kaW5nIGJ1aWxkIGRlcGVuZGVuY3kuIgorbXNnaWQgIiIKKyJFYWNoIGVudHJ5IGZvciBhIGxpYnJhcnkgY2FuIGFsc28gaGF2ZSBzb21lIGZpZWxkcyBvZiBtZXRhLWluZm9ybWF0aW9uLiAgIgorIlRob3NlIGZpZWxkcyBhcmUgc3RvcmVkIG9uIGxpbmVzIHN0YXJ0aW5nIHdpdGggYW4gYXN0ZXJpc2suIEN1cnJlbnRseSwgdGhlICIKKyJvbmx5IHZhbGlkIGZpZWxkIGlzIEk8QnVpbGQtRGVwZW5kcy1QYWNrYWdlPiwgaXQgaW5kaWNhdGVzIHRoZSBuYW1lIG9mIHRoZSAiCisiXCItZGV2XCIgcGFja2FnZSBhc3NvY2lhdGVkIHRvIHRoZSBsaWJyYXJ5IGFuZCBpcyB1c2VkIGJ5IEI8ZHBrZy1zaGxpYmRlcHM+ICIKKyJ0byBtYWtlIHN1cmUgdGhhdCB0aGUgZGVwZW5kZW5jeSBnZW5lcmF0ZWQgaXMgYXQgbGVhc3QgYXMgc3RyaWN0IGFzIHRoZSAiCisiY29ycmVzcG9uZGluZyBidWlsZCBkZXBlbmRlbmN5LiIKK21zZ3N0ciAiIgorIkNhZGEgZW50cmFkYSBwYXJhIHVuYSBiaWJsaW90ZWNhIHB1ZWRlIHRlbmVyIHRhbWJpw6luIGNhbXBvcyBkZSBtZXRhLSIKKyJpbmZvcm1hY2nDs24uIEVzdG9zIGNhbXBvcyBzZSBndWFyZGFuIGVuIGxhcyBsw61uZWFzIHF1ZSBjb21pZW56YW4gY29uIHVuICIKKyJhc3RlcmlzY28uIEFjdHVhbG1lbnRlLCBlbCDDum5pY28gY2FtcG8gdsOhbGlkbyBlcyBJPEJ1aWxkLURlcGVuZHMtUGFja2FnZT4sICIKKyJxdWUgaW5kaWNhIGVsIG5vbWJyZSBkZWwgcGFxdWV0ZSDCqy1kZXbCuyBhc29jaWFkbyBhIGxhIGJpYmxpb3RlY2EsIHkgdXNhZG8gIgorInBvciBkcGtnLXNobGliZGVwcyBwYXJhIGFzZWd1cmFyIHF1ZSBsYSBkZXBlbmRlbmNpYSBnZW5lcmFkYSBlcywgYWwgbWVub3MsICIKKyJ0YW4gZXN0cmljdGEgY29tbyBsYSBkZXBlbmRlbmNpYSBkZSBjb25zdHJ1Y2Npw7NuIGNvcnJlc3BvbmRpZW50ZS4iCisKKyMuIHR5cGU6IFNTCisjOiBkZWItc3ltYm9scy41OjQ0CisjLCBuby13cmFwCittc2dpZCAiU2ltcGxlIHN5bWJvbHMgZmlsZSIKK21zZ3N0ciAiRmljaGVybyDCq3N5bWJvbHPCuyBzaW1wbGUiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6NTAKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisibGliZnRwLnNvLjMgbGliZnRwMyAjTUlOVkVSI1xuIgorIiBEZWZhdWx0TmV0YnVmQEJhc2UgMy4xLTEtNlxuIgorIiBGdHBBY2Nlc3NAQmFzZSAzLjEtMS02XG4iCisiIFsuLi5dXG4iCittc2dzdHIgIiIKKyJsaWJmdHAuc28uMyBsaWJmdHAzICNNSU5WRVIjXG4iCisiIERlZmF1bHROZXRidWZAQmFzZSAzLjEtMS02XG4iCisiIEZ0cEFjY2Vzc0BCYXNlIDMuMS0xLTZcbiIKKyIgWy4uLl1cbiIKKworIy4gdHlwZTogU1MKKyM6IGRlYi1zeW1ib2xzLjU6NTAKKyMsIG5vLXdyYXAKK21zZ2lkICJBZHZhbmNlZCBzeW1ib2xzIGZpbGUiCittc2dzdHIgIkZpY2hlcm8gwqtzeW1ib2xzwrsgYXZhbnphZG8iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6NTMKK21zZ2lkICJsaWJHTC5zby4xIGxpYmdsMSIKK21zZ3N0ciAibGliR0wuc28uMSBsaWJnbDEiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6NTUKK21zZ2lkICJ8IGxpYmdsMS1tZXNhLWdseCAjTUlOVkVSIyIKK21zZ3N0ciAifCBsaWJnbDEtbWVzYS1nbHggI01JTlZFUiMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6NjEKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiKiBCdWlsZC1EZXBlbmRzLVBhY2thZ2U6IGxpYmdsMS1tZXNhLWRldlxuIgorIiBwdWJsaWNHbFN5bWJvbEBCYXNlIDYuMy0xXG4iCisiIFsuLi5dXG4iCisiIGltcGxlbWVudGF0aW9uU3BlY2lmaWNTeW1ib2xAQmFzZSA2LjUuMi03IDFcbiIKKyIgWy4uLl1cbiIKK21zZ3N0ciAiIgorIiogQnVpbGQtRGVwZW5kcy1QYWNrYWdlOiBsaWJnbDEtbWVzYS1kZXZcbiIKKyIgcHVibGljR2xTeW1ib2xAQmFzZSA2LjMtMVxuIgorIiBbLi4uXVxuIgorIiBpbXBsZW1lbnRhdGlvblNwZWNpZmljU3ltYm9sQEJhc2UgNi41LjItNyAxXG4iCisiIFsuLi5dXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6NjMKK21zZ2lkICJCPGh0dHA6Ly93aWtpLmRlYmlhbi5vcmcvUHJvamVjdHMvSW1wcm92ZWREcGtnU2hsaWJkZXBzPiIKK21zZ3N0ciAiQjxodHRwOi8vd2lraS5kZWJpYW4ub3JnL1Byb2plY3RzL0ltcHJvdmVkRHBrZ1NobGliZGVwcz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6NjUKK21zZ2lkICJCPGRwa2ctc2hsaWJkZXBzPigxKSwgQjxkcGtnLWdlbnN5bWJvbHM+KDEpLiIKK21zZ3N0ciAiQjxkcGtnLXNobGliZGVwcz4oMSksIEI8ZHBrZy1nZW5zeW1ib2xzPigxKS4iCisKKyMuIHR5cGU6IFRICisjOiBkZWItdHJpZ2dlcnMuNToxCisjLCBuby13cmFwCittc2dpZCAiZGViLXRyaWdnZXJzIgorbXNnc3RyICJkZWItdHJpZ2dlcnMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi10cmlnZ2Vycy41OjQKK21zZ2lkICJkZWItdHJpZ2dlcnMgLSBwYWNrYWdlIHRyaWdnZXJzIgorbXNnc3RyICJkZWItdHJpZ2dlcnMgLSBEaXNwYXJhZG9yZXMgZGUgcGFxdWV0ZXMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi10cmlnZ2Vycy41OjcKK21zZ2lkICJ0cmlnZ2VycyIKK21zZ3N0ciAiZGlzcGFyYWRvcmVzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdHJpZ2dlcnMuNToxMgorbXNnaWQgIiIKKyJBIHBhY2thZ2UgZGVjbGFyZXMgaXRzIHJlbGF0aW9uc2hpcCB0byBzb21lIHRyaWdnZXIocykgYnkgaW5jbHVkaW5nIGEgIgorIkk8dHJpZ2dlcnM+IGZpbGUgaW4gaXRzIGNvbnRyb2wgYXJjaGl2ZSAoaS5lLiBJPERFQklBTi90cmlnZ2Vycz4gZHVyaW5nICIKKyJwYWNrYWdlIGNyZWF0aW9uKS4iCittc2dzdHIgIiIKKyJVbiBwYXF1ZXRlIGRlY2xhcmEgc3UgcmVsYWNpw7NuIGNvbiBhbGfDum4gZGlzcGFyYWRvcihlcykgaW5jbHV5ZW5kbyB1biAiCisiZmljaGVybyBJPHRyaWdnZXJzPiBlbiBzdSBhcmNoaXZvIGRlIGNvbnRyb2wgKHBvciBlamVtcGxvLCBJPERFQklBTi8iCisidHJpZ2dlcnM+IGR1cmFudGUgbGEgY3JlYWNpw7NuIGRlbCBwYXF1ZXRlKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi10cmlnZ2Vycy41OjE2Cittc2dpZCAiIgorIlRoaXMgZmlsZSBjb250YWlucyBkaXJlY3RpdmVzLCBvbmUgcGVyIGxpbmUuIExlYWRpbmcgYW5kIHRyYWlsaW5nIHdoaXRlc3BhY2UgIgorImFuZCBldmVyeXRoaW5nIGFmdGVyIHRoZSBmaXJzdCBCPCM+IG9uIGFueSBsaW5lIHdpbGwgYmUgdHJpbW1lZCwgYW5kIGVtcHR5ICIKKyJsaW5lcyB3aWxsIGJlIGlnbm9yZWQuIgorbXNnc3RyICIiCisiRXN0ZSBmaWNoZXJvIGNvbnRpZW5lIGRpcmVjdGl2YXMsIHVuYSBwb3IgbMOtbmVhLiBMb3MgZXNwYWNpb3MgdmFjw61vcyAiCisicHJlY2VkZW50ZXMgeSBhIGNvbnRpbnVhY2nDs24sIGFzw60gY29tbyB0b2RvIGxvIHF1ZSBhcGFyZXpjYSBkZXNwdcOpcyBkZWwgIgorInByaW1lciBCPCM+LCBzZSByZWNvcnRhcsOhLCB5IGxhcyBsw61uZWFzIHZhY8OtYXMgc2UgaWdub3JhcsOhbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi10cmlnZ2Vycy41OjE4Cittc2dpZCAiVGhlIHRyaWdnZXIgY29udHJvbCBkaXJlY3RpdmVzIGN1cnJlbnRseSBzdXBwb3J0ZWQgYXJlOiIKK21zZ3N0ciAiTGFzIGRpcmVjdGl2YXMgZGUgY29udHJvbCBkZSBkaXNwYXJhZG9yZXMgYWN0dWFsbWVudGUgYWNlcHRhZGFzIHNvbjoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi10cmlnZ2Vycy41OjIyCittc2dpZCAiQjxpbnRlcmVzdD4gSTx0cmlnZ2VyLW5hbWU+IgorbXNnc3RyICJCPGludGVyZXN0PiBJPG5vbWJyZS1kaXNwYXJhZG9yPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXRyaWdnZXJzLjU6MjYKKyMsIGZ1enp5CisjfCBtc2dpZCAiQjxpbnRlcmVzdD4gSTx0cmlnZ2VyLW5hbWU+IgorbXNnaWQgIkI8aW50ZXJlc3Qtbm9hd2FpdD4gSTx0cmlnZ2VyLW5hbWU+IgorbXNnc3RyICJCPGludGVyZXN0PiBJPG5vbWJyZS1kaXNwYXJhZG9yPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXRyaWdnZXJzLjU6MzMKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlNwZWNpZmllcyB0aGF0IHRoZSBwYWNrYWdlIGlzIGludGVyZXN0ZWQgaW4gdGhlIG5hbWVkIHRyaWdnZXIuIEFsbCAiCisjfCAidHJpZ2dlcnMgaW4gd2hpY2ggYSBwYWNrYWdlIGlzIGludGVyZXN0ZWQgbXVzdCBiZSBsaXN0ZWQgdXNpbmcgdGhpcyAiCisjfCAiZGlyZWN0aXZlIGluIHRoZSB0cmlnZ2VycyBjb250cm9sIGZpbGUuIgorbXNnaWQgIiIKKyJTcGVjaWZpZXMgdGhhdCB0aGUgcGFja2FnZSBpcyBpbnRlcmVzdGVkIGluIHRoZSBuYW1lZCB0cmlnZ2VyLiBBbGwgdHJpZ2dlcnMgIgorImluIHdoaWNoIGEgcGFja2FnZSBpcyBpbnRlcmVzdGVkIG11c3QgYmUgbGlzdGVkIHVzaW5nIHRoaXMgZGlyZWN0aXZlIGluIHRoZSAiCisidHJpZ2dlcnMgY29udHJvbCBmaWxlLiBUaGUgXCJub2F3YWl0XCIgdmFyaWFudCBkb2VzIG5vdCBwdXQgdGhlIHRyaWdnZXJpbmcgIgorInBhY2thZ2VzIGluIHRyaWdnZXJzLWF3YWl0ZWQgc3RhdGUuIFRoaXMgc2hvdWxkIGJlIHVzZWQgd2hlbiB0aGUgIgorImZ1bmN0aW9uYWxpdHkgcHJvdmlkZWQgYnkgdGhlIHRyaWdnZXIgaXMgbm90IGNydWNpYWwuIgorbXNnc3RyICIiCisiRGVmaW5lIHF1ZSBlbCBwYXF1ZXRlIHRpZW5lIHVuIGludGVyw6lzIGVuIGVsIGRpc3BhcmFkb3Igbm9tYnJhZG8uIFRvZG9zIGxvcyAiCisiZGlzcGFyYWRvcmVzIHBvciBsb3MgcXVlIHVuIHBhcXVldGUgdGllbmUgaW50ZXLDqXMgc2UgZGViZW4gbGlzdGFyIHVzYW5kbyAiCisiZXN0YSBkaXJlY3RpdmEgZW4gZWwgZmljaGVybyBkZSBjb250cm9sIGRlIGRpc3BhcmFkb3Jlcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi10cmlnZ2Vycy41OjM3Cittc2dpZCAiQjxhY3RpdmF0ZT4gSTx0cmlnZ2VyLW5hbWU+IgorbXNnc3RyICJCPGFjdGl2YXRlPiBJPG5vbWJyZS1kaXNwYXJhZG9yPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXRyaWdnZXJzLjU6NDEKKyMsIGZ1enp5CisjfCBtc2dpZCAiQjxhY3RpdmF0ZT4gSTx0cmlnZ2VyLW5hbWU+IgorbXNnaWQgIkI8YWN0aXZhdGUtbm9hd2FpdD4gSTx0cmlnZ2VyLW5hbWU+IgorbXNnc3RyICJCPGFjdGl2YXRlPiBJPG5vbWJyZS1kaXNwYXJhZG9yPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXRyaWdnZXJzLjU6NTAKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIkFycmFuZ2VzIHRoYXQgY2hhbmdlcyB0byB0aGlzIHBhY2thZ2UncyBzdGF0ZSB3aWxsIGFjdGl2YXRlIHRoZSBzcGVjaWZpZWQgIgorI3wgInRyaWdnZXIuIFRoZSB0cmlnZ2VyIHdpbGwgYmUgYWN0aXZhdGVkIGF0IHRoZSBzdGFydCBvZiB0aGUgZm9sbG93aW5nICIKKyN8ICJvcGVyYXRpb25zOiB1bnBhY2ssIGNvbmZpZ3VyZSwgcmVtb3ZlIChpbmNsdWRpbmcgZm9yIHRoZSBiZW5lZml0IG9mIGEgIgorI3wgImNvbmZsaWN0aW5nIHBhY2thZ2UpLCBwdXJnZSBhbmQgZGVjb25maWd1cmUuIgorbXNnaWQgIiIKKyJBcnJhbmdlcyB0aGF0IGNoYW5nZXMgdG8gdGhpcyBwYWNrYWdlJ3Mgc3RhdGUgd2lsbCBhY3RpdmF0ZSB0aGUgc3BlY2lmaWVkICIKKyJ0cmlnZ2VyLiBUaGUgdHJpZ2dlciB3aWxsIGJlIGFjdGl2YXRlZCBhdCB0aGUgc3RhcnQgb2YgdGhlIGZvbGxvd2luZyAiCisib3BlcmF0aW9uczogdW5wYWNrLCBjb25maWd1cmUsIHJlbW92ZSAoaW5jbHVkaW5nIGZvciB0aGUgYmVuZWZpdCBvZiBhICIKKyJjb25mbGljdGluZyBwYWNrYWdlKSwgcHVyZ2UgYW5kIGRlY29uZmlndXJlLiAgVGhlIFwibm9hd2FpdFwiIHZhcmlhbnQgZG9lcyAiCisibm90IHB1dCB0aGUgdHJpZ2dlcmluZyBwYWNrYWdlcyBpbiB0cmlnZ2Vycy1hd2FpdGVkIHN0YXRlLiBUaGlzIHNob3VsZCBiZSAiCisidXNlZCB3aGVuIHRoZSBmdW5jdGlvbmFsaXR5IHByb3ZpZGVkIGJ5IHRoZSB0cmlnZ2VyIGlzIG5vdCBjcnVjaWFsLiIKK21zZ3N0ciAiIgorIkVzcGVjaWZpY2EgcXVlIGVsIGRpc3BhcmFkb3IgZGVmaW5pZG8gc2UgYWN0aXZhcsOhIHNpIGVsIGVzdGFkbyBkZSBlc3RlICIKKyJwYXF1ZXRlIGNhbWJpYS4gRWwgZGlzcGFyYWRvciBzZSBhY3RpdmFyw6EgYWwgaW5pY2lvIGRlIGxhcyBzaWd1aWVudGVzICIKKyJvcGVyYWNpb25lczogdW5wYWNrLCBjb25maWd1cmUsIHJlbW92ZSAoaW5jbHV5ZW5kbyBlbiBiZW5lZmljaW8gZGUgdW4gIgorInBhcXVldGUgY29uZmxpY3Rpdm8pLCBwdXJnZSB5IGRlY29uZmlndXJlLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXRyaWdnZXJzLjU6NTgKK21zZ2lkICIiCisiSWYgdGhpcyBwYWNrYWdlIGRpc2FwcGVhcnMgZHVyaW5nIHRoZSB1bnBhY2tpbmcgb2YgYW5vdGhlciBwYWNrYWdlIHRoZSAiCisidHJpZ2dlciB3aWxsIGJlIGFjdGl2YXRlZCB3aGVuIHRoZSBkaXNhcHBlYXJhbmNlIGlzIG5vdGVkIHRvd2FyZHMgdGhlIGVuZCBvZiAiCisidGhlIHVucGFjay4gVHJpZ2dlciBwcm9jZXNzaW5nLCBhbmQgdHJhbnNpdGlvbiBmcm9tIHRyaWdnZXJzLWF3YWl0ZWQgdG8gIgorImluc3RhbGxlZCwgZG9lcyBub3QgY2F1c2UgYWN0aXZhdGlvbnMuICBJbiB0aGUgY2FzZSBvZiB1bnBhY2ssIHRyaWdnZXJzICIKKyJtZW50aW9uZWQgaW4gYm90aCB0aGUgb2xkIGFuZCBuZXcgdmVyc2lvbnMgb2YgdGhlIHBhY2thZ2Ugd2lsbCBiZSBhY3RpdmF0ZWQuIgorbXNnc3RyICIiCisiU2kgZXN0ZSBwYXF1ZXRlIGRlc2FwYXJlY2UgYWwgZGVzZW1wYXF1ZXRhciBvdHJvIHBhcXVldGUgZWwgZGlzcGFyYWRvciBzZSAiCisiYWN0aXZhcsOhIGFsIGRldGVjdGFyIGxhIGRlc2FwYXJpY2nDs24sIGFsIGZpbmFsIGRlbCBkZXNlbXBhcXVldGFkby4gRWwgIgorInByb2Nlc2FtaWVudG8gZGUgZGlzcGFyYWRvcmVzIHkgbGEgdHJhbnNpY2nDs24gZGUgwqt0cmlnZ2Vycy1hd2FpdGVkwrsgYSAiCisiwqtpbnN0YWxsZWTCuyBubyBwcm92b2NhbiBsYSBhY3RpdmFjacOzbiBkZSBkaXNwYXJhZG9yZXMuIEVuIGNhc28gZGUgcHJvY2VzYXIgIgorInVuIGRlc2VtcGFxdWV0YWRvLCBzZSBhY3RpdmFyw6FuIGxvcyBkaXNwYXJhZG9yZXMgbWVuY2lvbmFkb3MgZW4gbGFzICIKKyJ2ZXJzaW9uZXMgbnVldmFzIHkgdmllamFzIGRlbCBwYXF1ZXRlLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXRyaWdnZXJzLjU6NjEKK21zZ2lkICIiCisiVW5rbm93biBkaXJlY3RpdmVzIGFyZSBhbiBlcnJvciB3aGljaCB3aWxsIHByZXZlbnQgaW5zdGFsbGF0aW9uIG9mIHRoZSAiCisicGFja2FnZS4iCittc2dzdHIgIiIKKyJVbmEgZGlyZWN0aXZhIGVycsOzbmVhIHByb3ZvY2Fyw6EgdW4gZXJyb3IsIGltcGlkaWVuZG8gbGEgaW5zdGFsYWNpw7NuIGRlbCAiCisicGFxdWV0ZS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi10cmlnZ2Vycy41OjY2Cittc2dpZCAiIgorIlRoZSBcIi1ub2F3YWl0XCIgdmFyaWFudHMgYXJlIG9ubHkgc3VwcG9ydGVkIGJ5IGRwa2cgMS4xNi4xIG9yIG5ld2VyLCBhbmQgIgorIndpbGwgbGVhZCB0byBlcnJvcnMgaWYgdXNlZCB3aXRoIGFuIG9sZGVyIGRwa2cuIEl0IGlzIHRodXMgcmVjb21tZW5kZWQgdG8gIgorImFkZCBhIFwiUHJlLURlcGVuZHM6IGRwa2cgKEU8Z3Q+PSAxLjE2LjEpXCIgdG8gYW55IHBhY2thZ2UgdGhhdCB3aXNoIHRvIHVzZSAiCisidGhvc2UgZGlyZWN0aXZlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXRyaWdnZXJzLjU6NzAKK21zZ2lkICIiCisiQjxkcGtnLXRyaWdnZXI+KDEpLCBCPGRwa2c+KDEpLCBCPC91c3Ivc2hhcmUvZG9jL2Rwa2ctZGV2L3RyaWdnZXJzLnR4dC5nej4uIgorbXNnc3RyICIiCisiQjxkcGtnLXRyaWdnZXI+KDEpLCBCPGRwa2c+KDEpLCBCPC91c3Ivc2hhcmUvZG9jL2Rwa2ctZGV2L3RyaWdnZXJzLnR4dC5nej4uIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy4xOjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnIgorbXNnc3RyICJkcGtnIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy4xOjEgZHBrZy5jZmcuNToxIGRwa2ctYnVpbGRmbGFncy4xOjEgZHBrZy1kZWIuMToxCisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjEgZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMToxIGRwa2ctcXVlcnkuMToxCisjOiBkcGtnLXRyaWdnZXIuMToxIGRwa2ctdmVuZG9yLjE6MSBkc2VsZWN0LmNmZy41OjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnIHN1aXRlIgorbXNnc3RyICJIZXJyYW1pZW50YXMgZGUgZHBrZyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQKK21zZ2lkICJkcGtnIC0gcGFja2FnZSBtYW5hZ2VyIGZvciBEZWJpYW4iCittc2dzdHIgImRwa2cgLSBHZXN0b3IgZGUgcGFxdWV0ZXMgZGUgRGViaWFuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6OAorIywgZnV6enkKKyN8IG1zZ2lkICJCPGRwa2c+IFtJPG9wdGlvbnM+XSBJPGFjdGlvbj4iCittc2dpZCAiQjxkcGtnPiBbSTxvcHRpb24+Li4uXSBJPGFjdGlvbj4iCittc2dzdHIgIkI8ZHBrZz4gW0k8b3BjaW9uZXM+XSBJPGFjY2nDs24+IgorCisjLiB0eXBlOiBTSAorIzogZHBrZy4xOjkKKyMsIG5vLXdyYXAKK21zZ2lkICJXQVJOSU5HIgorbXNnc3RyICJBVklTTyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjEzCittc2dpZCAiIgorIlRoaXMgbWFudWFsIGlzIGludGVuZGVkIGZvciB1c2VycyB3aXNoaW5nIHRvIHVuZGVyc3RhbmQgQjxkcGtnPidzIGNvbW1hbmQgIgorImxpbmUgb3B0aW9ucyBhbmQgcGFja2FnZSBzdGF0ZXMgaW4gbW9yZSBkZXRhaWwgdGhhbiB0aGF0IHByb3ZpZGVkIGJ5IEI8ZHBrZyAiCisiLS1oZWxwPi4iCittc2dzdHIgIiIKKyJFbCBwcm9ww7NzaXRvIGRlIGVzdGUgbWFudWFsIGVzIHF1ZSBsb3MgdXN1YXJpb3MgZW50aWVuZGFuIGxhcyBvcGNpb25lcyBkZSAiCisiaW52b2NhY2nDs24gZGUgQjxkcGtnPiB5IGVsIGVzdGFkbyBkZSBsb3MgcGFxdWV0ZXMgY29uIG3DoXMgZGV0YWxsZSBxdWUgbGEgcXVlICIKKyJvZnJlY2UgQjxkcGtnIC0taGVscD4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTgKK21zZ2lkICIiCisiSXQgc2hvdWxkIEk8bm90PiBiZSB1c2VkIGJ5IHBhY2thZ2UgbWFpbnRhaW5lcnMgd2lzaGluZyB0byB1bmRlcnN0YW5kIGhvdyAiCisiQjxkcGtnPiB3aWxsIGluc3RhbGwgdGhlaXIgcGFja2FnZXMuIFRoZSBkZXNjcmlwdGlvbnMgb2Ygd2hhdCBCPGRwa2c+IGRvZXMgIgorIndoZW4gaW5zdGFsbGluZyBhbmQgcmVtb3ZpbmcgcGFja2FnZXMgYXJlIHBhcnRpY3VsYXJseSBpbmFkZXF1YXRlLiIKK21zZ3N0ciAiIgorIkxvcyByZXNwb25zYWJsZXMgZGUgcGFxdWV0ZXMgSTxubz4gZGViZXLDrWFuIHVzYXIgQjxkcGtnIC0taGVscD4gcGFyYSAiCisiY29tcHJlbmRlciBlbCBwcm9jZXNvIGRlIGluc3RhbGFjacOzbiBkZSBCPGRwa2c+LiBMYXMgZGVzY3JpcGNpb25lcyBkZSBsbyBxdWUgIgorImhhY2UgQjxkcGtnPiBhbCBpbnN0YWxhciB5IGRlc2luc3RhbGFyIHNvbiBwYXJ0aWN1bGFybWVudGUgaW1wcmVjaXNhcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyNgorbXNnaWQgIiIKKyJCPGRwa2c+IGlzIGEgdG9vbCB0byBpbnN0YWxsLCBidWlsZCwgcmVtb3ZlIGFuZCBtYW5hZ2UgRGViaWFuIHBhY2thZ2VzLiBUaGUgIgorInByaW1hcnkgYW5kIG1vcmUgdXNlci1mcmllbmRseSBmcm9udC1lbmQgZm9yIEI8ZHBrZz4gaXMgQjxhcHRpdHVkZT4oMSkuICIKKyJCPGRwa2c+IGl0c2VsZiBpcyBjb250cm9sbGVkIGVudGlyZWx5IHZpYSBjb21tYW5kIGxpbmUgcGFyYW1ldGVycywgd2hpY2ggIgorImNvbnNpc3Qgb2YgZXhhY3RseSBvbmUgYWN0aW9uIGFuZCB6ZXJvIG9yIG1vcmUgb3B0aW9ucy4gVGhlIGFjdGlvbi1wYXJhbWV0ZXIgIgorInRlbGxzIEI8ZHBrZz4gd2hhdCB0byBkbyBhbmQgb3B0aW9ucyBjb250cm9sIHRoZSBiZWhhdmlvciBvZiB0aGUgYWN0aW9uIGluICIKKyJzb21lIHdheS4iCittc2dzdHIgIiIKKyJCPGRwa2c+IGVzIHVuYSBoZXJyYW1pZW50YSBwYXJhIGluc3RhbGFyLCBjb21waWxhciwgZWxpbWluYXIgeSBtYW5pcHVsYXIgbG9zICIKKyJwYXF1ZXRlcyBkZSBEZWJpYW4uIExhIGludGVyZmF6IHByaW5jaXBhbCB5IG3DoXMgaW50dWl0aXZhIHBhcmEgQjxkcGtnPiBlcyAiCisiQjxhcHRpdHVkZT4oMSkuIEI8ZHBrZz4gc2UgaW52b2NhIGNvbiBwYXLDoW1ldHJvcyBkZSBsw61uZWEgZGUgw7NyZGVuZXMsIHF1ZSAiCisiY29uc2lzdGVuIGRlIHVuYSBzb2xhIGFjY2nDs24geSBjZXJvIG8gbcOhcyBvcGNpb25lcy4gTGEgYWNjacOzbiBvIHBhcsOhbWV0cm8gIgorImRpY2UgYSBCPGRwa2c+IHF1w6kgaGFjZXIsIG1pZW50cmFzIHF1ZSBsYXMgb3BjaW9uZXMgY29udHJvbGFuIGRlIHVuYSBtYW5lcmEgIgorInUgb3RyYSBzdSBjb21wb3J0YW1pZW50by4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTozMworbXNnaWQgIiIKKyJCPGRwa2c+IGNhbiBhbHNvIGJlIHVzZWQgYXMgYSBmcm9udC1lbmQgdG8gQjxkcGtnLWRlYj4oMSkgYW5kIEI8ZHBrZy1xdWVyeT4iCisiKDEpLiBUaGUgbGlzdCBvZiBzdXBwb3J0ZWQgYWN0aW9ucyBjYW4gYmUgZm91bmQgbGF0ZXIgb24gaW4gdGhlIEI8QUNUSU9OUz4gIgorInNlY3Rpb24uIElmIGFueSBzdWNoIGFjdGlvbiBpcyBlbmNvdW50ZXJlZCBCPGRwa2c+IGp1c3QgcnVucyBCPGRwa2ctZGViPiBvciAiCisiQjxkcGtnLXF1ZXJ5PiB3aXRoIHRoZSBwYXJhbWV0ZXJzIGdpdmVuIHRvIGl0LCBidXQgbm8gc3BlY2lmaWMgb3B0aW9ucyBhcmUgIgorImN1cnJlbnRseSBwYXNzZWQgdG8gdGhlbSwgdG8gdXNlIGFueSBzdWNoIG9wdGlvbiB0aGUgYmFjay1lbmRzIG5lZWQgdG8gYmUgIgorImNhbGxlZCBkaXJlY3RseS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2cuMTozNAorIywgbm8td3JhcAorbXNnaWQgIklORk9STUFUSU9OIEFCT1VUIFBBQ0tBR0VTIgorbXNnc3RyICJJTkZPUk1BQ0nDk04gU09CUkUgUEFRVUVURVMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTozOQorbXNnaWQgIiIKKyJCPGRwa2c+IG1haW50YWlucyBzb21lIHVzYWJsZSBpbmZvcm1hdGlvbiBhYm91dCBhdmFpbGFibGUgcGFja2FnZXMuIFRoZSAiCisiaW5mb3JtYXRpb24gaXMgZGl2aWRlZCBpbiB0aHJlZSBjbGFzc2VzOiBCPHN0YXRlcz4sIEI8c2VsZWN0aW9uIHN0YXRlcz4gYW5kICIKKyJCPGZsYWdzPi4gVGhlc2UgdmFsdWVzIGFyZSBpbnRlbmRlZCB0byBiZSBjaGFuZ2VkIG1haW5seSB3aXRoIEI8ZHNlbGVjdD4uIgorbXNnc3RyICIiCisiQjxkcGtnPiBwb3NpYmlsaXRhIGVsIGFjY2VzbyBhIGJhc3RhbnRlIGluZm9ybWFjacOzbiBzb2JyZSBsb3MgcGFxdWV0ZXMgIgorImRpc3BvbmlibGVzLiBFc3RhIGluZm9ybWFjacOzbiBzZSBkaXZpZGUgZW4gdHJlcyBjbGFzZXM6IEI8ZXN0YWRvcz4sICIKKyJCPGVzdGFkb3MgZGUgc2VsZWNjacOzbj4gZSBCPGluZGljYWRvcmVzPi4gSGFiaXR1YWxtZW50ZSwgZXN0b3MgdmFsb3JlcyBzZSAiCisibW9kaWZpY2FuIHByaW5jaXBhbG1lbnRlIGNvbiBCPGRzZWxlY3Q+LiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2cuMTozOQorIywgbm8td3JhcAorbXNnaWQgIlBBQ0tBR0UgU1RBVEVTIgorbXNnc3RyICJFU1RBRE9TIERFTCBQQVFVRVRFIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjQwCisjLCBuby13cmFwCittc2dpZCAiQjxub3QtaW5zdGFsbGVkPiIKK21zZ3N0ciAiQjxub3QtaW5zdGFsbGVkPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQzCittc2dpZCAiVGhlIHBhY2thZ2UgaXMgbm90IGluc3RhbGxlZCBvbiB5b3VyIHN5c3RlbS4iCittc2dzdHIgIkVsIHBhcXVldGUgbm8gZXN0w6EgaW5zdGFsYWRvIGVuIGVsIHNpc3RlbWEuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjQzCisjLCBuby13cmFwCittc2dpZCAiQjxjb25maWctZmlsZXM+IgorbXNnc3RyICJCPGNvbmZpZy1maWxlcz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0NgorbXNnaWQgIk9ubHkgdGhlIGNvbmZpZ3VyYXRpb24gZmlsZXMgb2YgdGhlIHBhY2thZ2UgZXhpc3Qgb24gdGhlIHN5c3RlbS4iCittc2dzdHIgIlPDs2xvIHF1ZWRhbiBsb3MgZmljaGVyb3MgZGUgY29uZmlndXJhY2nDs24gZGVsIHBhcXVldGUgZW4gZWwgc2lzdGVtYS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NDYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGhhbGYtaW5zdGFsbGVkPiIKK21zZ3N0ciAiQjxoYWxmLWluc3RhbGxlZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1MAorbXNnaWQgIiIKKyJUaGUgaW5zdGFsbGF0aW9uIG9mIHRoZSBwYWNrYWdlIGhhcyBiZWVuIHN0YXJ0ZWQsIGJ1dCBub3QgY29tcGxldGVkIGZvciBzb21lICIKKyJyZWFzb24uIgorbXNnc3RyICIiCisiU2UgaW5pY2nDsyBsYSBpbnN0YWxhY2nDs24gZGVsIHBhcXVldGUsIHBlcm8gbm8gc2UgY29tcGxldMOzIHBvciBhbGd1bmEgcmF6w7NuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo1MAorIywgbm8td3JhcAorbXNnaWQgIkI8dW5wYWNrZWQ+IgorbXNnc3RyICJCPHVucGFja2VkPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjUzCittc2dpZCAiVGhlIHBhY2thZ2UgaXMgdW5wYWNrZWQsIGJ1dCBub3QgY29uZmlndXJlZC4iCittc2dzdHIgIkVsIHBhcXVldGUgZXN0w6EgZGVzY29tcHJpbWlkbywgcGVybyBubyBjb25maWd1cmFkby4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGhhbGYtY29uZmlndXJlZD4iCittc2dzdHIgIkI8aGFsZi1jb25maWd1cmVkPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjU3Cittc2dpZCAiIgorIlRoZSBwYWNrYWdlIGlzIHVucGFja2VkIGFuZCBjb25maWd1cmF0aW9uIGhhcyBiZWVuIHN0YXJ0ZWQsIGJ1dCBub3QgeWV0ICIKKyJjb21wbGV0ZWQgZm9yIHNvbWUgcmVhc29uLiIKK21zZ3N0ciAiIgorIkVsIHBhcXVldGUgZXN0w6EgZGVzY29tcHJpbWlkbyB5IGxhIGNvbmZpZ3VyYWNpw7NuIHNlIGhhIGluaWNpYWRvLCBwZXJvIG5vICIKKyJmaW5hbGl6w7MgcG9yIGFsZ3VuYSByYXrDs24uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjU3CisjLCBuby13cmFwCittc2dpZCAiQjx0cmlnZ2Vycy1hd2FpdGVkPiIKK21zZ3N0ciAiQjx0cmlnZ2Vycy1hd2FpdGVkPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjYwCittc2dpZCAiVGhlIHBhY2thZ2UgYXdhaXRzIHRyaWdnZXIgcHJvY2Vzc2luZyBieSBhbm90aGVyIHBhY2thZ2UuIgorbXNnc3RyICJFbCBwYXF1ZXRlIGFndWFyZGEgYWwgcHJvY2VzbyBkZSBsb3MgZGlzcGFyYWRvcmVzIGRlIG90cm8gcGFxdWV0ZS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NjAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHRyaWdnZXJzLXBlbmRpbmc+IgorbXNnc3RyICJCPHRyaWdnZXJzLXBlbmRpbmc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NjMKK21zZ2lkICJUaGUgcGFja2FnZSBoYXMgYmVlbiB0cmlnZ2VyZWQuIgorbXNnc3RyICJMb3MgZGlzcGFyYWRvcmVzIGRlbCBwYXF1ZXRlIHNlIGhhbiBhY3RpdmFkby4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NjMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGluc3RhbGxlZD4iCittc2dzdHIgIkI8aW5zdGFsbGVkPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjY2Cittc2dpZCAiVGhlIHBhY2thZ2UgaXMgdW5wYWNrZWQgYW5kIGNvbmZpZ3VyZWQgT0suIgorbXNnc3RyICJFbCBwYXF1ZXRlIGVzdMOhIGNvcnJlY3RhbWVudGUgZGVzZW1wYXF1ZXRhZG8geSBjb25maWd1cmFkby4iCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLjE6NjYKKyMsIG5vLXdyYXAKK21zZ2lkICJQQUNLQUdFIFNFTEVDVElPTiBTVEFURVMiCittc2dzdHIgIkVTVEFET1MgREUgU0VMRUNDScOTTiBERUwgUEFRVUVURSIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2NworIywgbm8td3JhcAorbXNnaWQgIkI8aW5zdGFsbD4iCittc2dzdHIgIkI8aW5zdGFsbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3MAorbXNnaWQgIlRoZSBwYWNrYWdlIGlzIHNlbGVjdGVkIGZvciBpbnN0YWxsYXRpb24uIgorbXNnc3RyICJFbCBwYXF1ZXRlIHNlIGhhIHNlbGVjY2lvbmFkbyBwYXJhIHN1IGluc3RhbGFjacOzbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NzAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGhvbGQ+IgorbXNnc3RyICJCPGhvbGQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzQKK21zZ2lkICIiCisiQSBwYWNrYWdlIG1hcmtlZCB0byBiZSBvbiBCPGhvbGQ+IGlzIG5vdCBoYW5kbGVkIGJ5IEI8ZHBrZz4sIHVubGVzcyBmb3JjZWQgIgorInRvIGRvIHRoYXQgd2l0aCBvcHRpb24gQjwtLWZvcmNlLWhvbGQ+LiIKK21zZ3N0ciAiIgorIkI8ZHBrZz4gbm8gbW9kaWZpY2Fyw6EgdW4gcGFxdWV0ZSBtYXJjYWRvIGNvbiBCPGhvbGQ+IChyZXRlbmlkbyksIGEgbm8gc2VyICIKKyJxdWUgc2UgbGUgZnVlcmNlIGEgZWxsbyBjb24gbGEgb3BjacOzbiBCPC0tZm9yY2UtaG9sZD4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjc0CisjLCBuby13cmFwCittc2dpZCAiQjxkZWluc3RhbGw+IgorbXNnc3RyICJCPGRlaW5zdGFsbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3OAorbXNnaWQgIiIKKyJUaGUgcGFja2FnZSBpcyBzZWxlY3RlZCBmb3IgZGVpbnN0YWxsYXRpb24gKGkuZS4gd2Ugd2FudCB0byByZW1vdmUgYWxsICIKKyJmaWxlcywgZXhjZXB0IGNvbmZpZ3VyYXRpb24gZmlsZXMpLiIKK21zZ3N0ciAiIgorIkVsIHBhcXVldGUgc2UgaGEgc2VsZWNjaW9uYWRvIHBhcmEgc3UgZGVzaW5zdGFsYWNpw7NuIChlcyBkZWNpciwgcXVlIHF1ZXJlbW9zICIKKyJib3JyYXIgdG9kbyBleGNlcHRvIGxvcyBmaWNoZXJvcyBkZSBjb25maWd1cmFjacOzbikuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjc4CisjLCBuby13cmFwCittc2dpZCAiQjxwdXJnZT4iCittc2dzdHIgIkI8cHVyZ2U+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6ODIKK21zZ2lkICIiCisiVGhlIHBhY2thZ2UgaXMgc2VsZWN0ZWQgdG8gYmUgcHVyZ2VkIChpLmUuIHdlIHdhbnQgdG8gcmVtb3ZlIGV2ZXJ5dGhpbmcgZnJvbSAiCisic3lzdGVtIGRpcmVjdG9yaWVzLCBldmVuIGNvbmZpZ3VyYXRpb24gZmlsZXMpLiIKK21zZ3N0ciAiIgorIkVsIHBhcXVldGUgc2UgaGEgc2VsZWNjaW9uYWRvIHBhcmEgcXVlIHNlIHB1cmd1ZSAoZXMgZGVjaXIsIHF1ZSBxdWVyZW1vcyAiCisiYm9ycmFyIHRvZG8gZW4gbG9zIGRpcmVjdG9yaW9zIGRlbCBzaXN0ZW1hLCBpbmNsdXllbmRvIGxvcyBmaWNoZXJvcyBkZSAiCisiY29uZmlndXJhY2nDs24pLiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2cuMTo4MgorIywgbm8td3JhcAorbXNnaWQgIlBBQ0tBR0UgRkxBR1MiCittc2dzdHIgIklORElDQURPUkVTIERFTCBQQVFVRVRFIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjgzCisjLCBuby13cmFwCittc2dpZCAiQjxyZWluc3QtcmVxdWlyZWQ+IgorbXNnc3RyICJCPHJlaW5zdC1yZXF1aXJlZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo4OAorbXNnaWQgIiIKKyJBIHBhY2thZ2UgbWFya2VkIEI8cmVpbnN0LXJlcXVpcmVkPiBpcyBicm9rZW4gYW5kIHJlcXVpcmVzIHJlaW5zdGFsbGF0aW9uLiAiCisiVGhlc2UgcGFja2FnZXMgY2Fubm90IGJlIHJlbW92ZWQsIHVubGVzcyBmb3JjZWQgd2l0aCBvcHRpb24gQjwtLWZvcmNlLXJlbW92ZS0iCisicmVpbnN0cmVxPi4iCittc2dzdHIgIiIKKyJVbiBwYXF1ZXRlIG1hcmNhZG8gY29uIEI8cmVpbnN0LXJlcXVpcmVkPiBlc3TDoSByb3RvIHkgcHJlY2lzYSB1bmEgIgorInJlaW5zdGFsYWNpw7NuLiBFc3RvcyBwYXF1ZXRlcyBubyBzZSBwdWVkZW4gYm9ycmFyIGEgbm8gc2VyIHF1ZSBmdWVyY2UgbGEgIgorImFjY2nDs24gY29uIGxhIG9wY2nDs24gQjwtLWZvcmNlLXJlbW92ZS1yZWluc3RyZXE+LiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2cuMTo4OSBkc2VsZWN0LjE6MTIwCisjLCBuby13cmFwCittc2dpZCAiQUNUSU9OUyIKK21zZ3N0ciAiQUNDSU9ORVMiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6OTAKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjwtaT4sIEI8LS1pbnN0YWxsPiBJPHBhY2thZ2VfZmlsZT4uLi4iCittc2dpZCAiQjwtaT4sIEI8LS1pbnN0YWxsPiBJPHBhY2thZ2UtZmlsZT4uLi4iCittc2dzdHIgIkI8LWk+LCBCPC0taW5zdGFsbD4gSTxmaWNoZXJvLXBhcXVldGU+Li4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6OTQKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIkluc3RhbGwgdGhlIHBhY2thZ2UuIElmIEI8LS1yZWN1cnNpdmU+IG9yIEI8LVI+IG9wdGlvbiBpcyBzcGVjaWZpZWQsICIKKyN8ICJJPHBhY2thZ2VfZmlsZT4gbXVzdCByZWZlciB0byBhIGRpcmVjdG9yeSBpbnN0ZWFkLiIKK21zZ2lkICIiCisiSW5zdGFsbCB0aGUgcGFja2FnZS4gSWYgQjwtLXJlY3Vyc2l2ZT4gb3IgQjwtUj4gb3B0aW9uIGlzIHNwZWNpZmllZCwgIgorIkk8cGFja2FnZS1maWxlPiBtdXN0IHJlZmVyIHRvIGEgZGlyZWN0b3J5IGluc3RlYWQuIgorbXNnc3RyICIiCisiSW5zdGFsYSBlbCBwYXF1ZXRlLiBTaSBzZSBlc3BlY2lmaWNhIGxhIG9wY2nDs24gQjwtLXJlY3Vyc2l2ZT4gbyBCPC1SPiwgZWwgIgorIkk8ZmljaGVyby1wYXF1ZXRlPiBkZWJlIHNlciB1biBkaXJlY3RvcmlvLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjk2Cittc2dpZCAiSW5zdGFsbGF0aW9uIGNvbnNpc3RzIG9mIHRoZSBmb2xsb3dpbmcgc3RlcHM6IgorbXNnc3RyICJMYSBpbnN0YWxhY2nDs24gY29uc2lzdGUgZGUgbG9zIHNpZ3VpZW50ZXMgcGFzb3M6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6OTkKK21zZ2lkICJCPDEuPiBFeHRyYWN0IHRoZSBjb250cm9sIGZpbGVzIG9mIHRoZSBuZXcgcGFja2FnZS4iCittc2dzdHIgIkI8MS4+IEV4dHJhY2Npw7NuIGRlIGxvcyBmaWNoZXJvcyBkZSBjb250cm9sIGRlbCBwYXF1ZXRlIG51ZXZvLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjEwMworbXNnaWQgIiIKKyJCPDIuPiBJZiBhbm90aGVyIHZlcnNpb24gb2YgdGhlIHNhbWUgcGFja2FnZSB3YXMgaW5zdGFsbGVkIGJlZm9yZSB0aGUgbmV3ICIKKyJpbnN0YWxsYXRpb24sIGV4ZWN1dGUgSTxwcmVybT4gc2NyaXB0IG9mIHRoZSBvbGQgcGFja2FnZS4iCittc2dzdHIgIiIKKyJCPDIuPiBEZSBleGlzdGlyIG90cmEgdmVyc2nDs24gZGVsIG1pc21vIHBhcXVldGUgZW4gZWwgc2lzdGVtYSwgc2UgZWplY3V0YSBlbCAiCisic2NyaXB0IEk8cHJlcm0+IChwcmUtZWxpbWluYWNpw7NuKSBkZWwgYW50aWd1byBwYXF1ZXRlLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjEwNgorbXNnaWQgIkI8My4+IFJ1biBJPHByZWluc3Q+IHNjcmlwdCwgaWYgcHJvdmlkZWQgYnkgdGhlIHBhY2thZ2UuIgorbXNnc3RyICIiCisiQjwzLj4gRWplY3VjacOzbiBkZWwgc2NyaXB0IEk8cHJlaW5zdD4gKHByZS1pbnN0YWxhY2nDs24pIGRlbCBwYXF1ZXRlLCBkZSAiCisiZXhpc3Rpci4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxMTAKK21zZ2lkICIiCisiQjw0Lj4gVW5wYWNrIHRoZSBuZXcgZmlsZXMsIGFuZCBhdCB0aGUgc2FtZSB0aW1lIGJhY2sgdXAgdGhlIG9sZCBmaWxlcywgc28gIgorInRoYXQgaWYgc29tZXRoaW5nIGdvZXMgd3JvbmcsIHRoZXkgY2FuIGJlIHJlc3RvcmVkLiIKK21zZ3N0ciAiIgorIkI8NC4+IERlc2VtcGFxdWV0YWRvIGRlIGxvcyBudWV2b3MgZmljaGVyb3MsIGEgbGEgdmV6IHF1ZSBzZSBjcmVhIHVuYSBjb3BpYSAiCisiZGUgc2VndXJpZGFkIGRlIGxvcyBhbnRpZ3VvcyBwYXJhIHN1IHJlc3RhdXJhY2nDs24gZW4gY2FzbyBkZSBmYWxsby4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxMTcKK21zZ2lkICIiCisiQjw1Lj4gSWYgYW5vdGhlciB2ZXJzaW9uIG9mIHRoZSBzYW1lIHBhY2thZ2Ugd2FzIGluc3RhbGxlZCBiZWZvcmUgdGhlIG5ldyAiCisiaW5zdGFsbGF0aW9uLCBleGVjdXRlIHRoZSBJPHBvc3RybT4gc2NyaXB0IG9mIHRoZSBvbGQgcGFja2FnZS4gTm90ZSB0aGF0ICIKKyJ0aGlzIHNjcmlwdCBpcyBleGVjdXRlZCBhZnRlciB0aGUgSTxwcmVpbnN0PiBzY3JpcHQgb2YgdGhlIG5ldyBwYWNrYWdlLCAiCisiYmVjYXVzZSBuZXcgZmlsZXMgYXJlIHdyaXR0ZW4gYXQgdGhlIHNhbWUgdGltZSBvbGQgZmlsZXMgYXJlIHJlbW92ZWQuIgorbXNnc3RyICIiCisiQjw1Lj4gRGUgZXhpc3RpciBvdHJhIHZlcnNpw7NuIGRlbCBtaXNtbyBwYXF1ZXRlIHByZXZpYW1lbnRlIGluc3RhbGFkbyBlbiBlbCAiCisic2lzdGVtYSwgc2UgZWplY3V0YXLDoSBlbCBzY3JpcHQgSTxwb3N0cm0+IChwb3N0LWVsaW1pbmFjacOzbikgZGVsIHBhcXVldGUgIgorImFudGlndW8uIFRlbmdhIGVuIGN1ZW50YSBxdWUgZXN0ZSBzY3JpcHQgc2UgZWplY3V0YSBkZXNwdcOpcyBkZWwgc2NyaXB0ICIKKyJJPHByZWluc3Q+IGRlbCBwYXF1ZXRlIG51ZXZvIHlhIHF1ZSBsb3MgbnVldm9zIGZpY2hlcm9zIHNlIGVzY3JpYmVuIGEgbGEgdmV6ICIKKyJxdWUgc2UgYm9ycmFuIGxvcyBhbnRpZ3Vvcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxMjEKK21zZ2lkICIiCisiQjw2Lj4gQ29uZmlndXJlIHRoZSBwYWNrYWdlLiBTZWUgQjwtLWNvbmZpZ3VyZT4gZm9yIGRldGFpbGVkIGluZm9ybWF0aW9uICIKKyJhYm91dCBob3cgdGhpcyBpcyBkb25lLiIKK21zZ3N0ciAiIgorIkI8Ni4+IENvbmZpZ3VyYWNpw7NuIGRlbCBwYXF1ZXRlLiBQYXJhIHVuYSBpbmZvcm1hY2nDs24gZGV0YWxsYWRhIHNvYnJlIGVzdGUgIgorInByb2Nlc28sIGNvbnN1bHRlIEI8LS1jb25maWd1cmU+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToxMjEKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjwtLXVucGFjayA+STxwYWNrYWdlX2ZpbGU+Li4uIgorbXNnaWQgIkI8LS11bnBhY2sgPkk8cGFja2FnZS1maWxlPi4uLiIKK21zZ3N0ciAiQjwtLXVucGFjayA+STxmaWNoZXJvLXBhcXVldGU+IC4uLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjEyNgorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiVW5wYWNrIHRoZSBwYWNrYWdlLCBidXQgZG9uJ3QgY29uZmlndXJlIGl0LiBJZiBCPC0tcmVjdXJzaXZlPiBvciBCPC1SPiAiCisjfCAib3B0aW9uIGlzIHNwZWNpZmllZCwgSTxwYWNrYWdlX2ZpbGU+IG11c3QgcmVmZXIgdG8gYSBkaXJlY3RvcnkgaW5zdGVhZC4iCittc2dpZCAiIgorIlVucGFjayB0aGUgcGFja2FnZSwgYnV0IGRvbid0IGNvbmZpZ3VyZSBpdC4gSWYgQjwtLXJlY3Vyc2l2ZT4gb3IgQjwtUj4gIgorIm9wdGlvbiBpcyBzcGVjaWZpZWQsIEk8cGFja2FnZS1maWxlPiBtdXN0IHJlZmVyIHRvIGEgZGlyZWN0b3J5IGluc3RlYWQuIgorbXNnc3RyICIiCisiRGVzZW1wYXF1ZXRhIGVsIHBhcXVldGUsIHBlcm8gbm8gbG8gY29uZmlndXJhLiBTaSBzZSBpbnRyb2R1Y2VuIGxhcyBvcGNpb25lcyAiCisiQjwtLXJlY3Vyc2l2ZT4gbyBCPC1SPiBlbCBJPGZpY2hlcm8tcGFxdWV0ZT4gZGViZSBzZXIgdW4gZGlyZWN0b3Jpby4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MTI2CisjLCBuby13cmFwCittc2dpZCAiQjwtLWNvbmZpZ3VyZSA+STxwYWNrYWdlPi4uLnxCPC1hPnxCPC0tcGVuZGluZz4iCittc2dzdHIgIkI8LS1jb25maWd1cmUgPkk8cGFxdWV0ZT4uLi58QjwtYT58QjwtLXBlbmRpbmc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTMxCittc2dpZCAiIgorIkNvbmZpZ3VyZSBhIHBhY2thZ2Ugd2hpY2ggaGFzIGJlZW4gdW5wYWNrZWQgYnV0IG5vdCB5ZXQgY29uZmlndXJlZC4gIElmIEI8LSIKKyJhPiBvciBCPC0tcGVuZGluZz4gaXMgZ2l2ZW4gaW5zdGVhZCBvZiBJPHBhY2thZ2U+LCBhbGwgdW5wYWNrZWQgYnV0ICIKKyJ1bmNvbmZpZ3VyZWQgcGFja2FnZXMgYXJlIGNvbmZpZ3VyZWQuIgorbXNnc3RyICIiCisiQ29uZmlndXJhIHVuIHBhcXVldGUgcXVlIGVzdMOhIGRlc2VtcGFxdWV0YWRvIHBlcm8gbm8gY29uZmlndXJhZG8uIFNpIHNlICIKKyJpbnRyb2R1Y2VuIGxhcyBvcGNpb25lcyBCPC1hPiBvIEI8LS1wZW5kaW5nPiBlbiBsdWdhciBkZSB1biBJPHBhcXVldGU+LCBzZSAiCisiY29uZmlndXJhcsOhbiB0b2RvcyBsb3MgcGFxdWV0ZXMgZGVzZW1wYXF1ZXRhZG9zIHBlcm8gbm8gY29uZmlndXJhZG9zLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjEzNQorbXNnaWQgIiIKKyJUbyByZWNvbmZpZ3VyZSBhIHBhY2thZ2Ugd2hpY2ggaGFzIGFscmVhZHkgYmVlbiBjb25maWd1cmVkLCB0cnkgdGhlIEI8ZHBrZy0iCisicmVjb25maWd1cmU+KDgpICBjb21tYW5kIGluc3RlYWQuIgorbXNnc3RyICIiCisiUGFyYSByZWNvbmZpZ3VyYXIgdW4gcGFxdWV0ZSBxdWUgeWEgZnVlIGNvbmZpZ3VyYWRvLCBwcnVlYmUgbGEgb3JkZW4gQjxkcGtnLSIKKyJyZWNvbmZpZ3VyZT4oOCkuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTM3Cittc2dpZCAiQ29uZmlndXJpbmcgY29uc2lzdHMgb2YgdGhlIGZvbGxvd2luZyBzdGVwczoiCittc2dzdHIgIkxhIGNvbmZpZ3VyYWNpw7NuIGNvbnNpc3RlIGRlIGxvcyBzaWd1aWVudGVzIHBhc29zOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjE0MgorbXNnaWQgIiIKKyJCPDEuPiBVbnBhY2sgdGhlIGNvbmZmaWxlcywgYW5kIGF0IHRoZSBzYW1lIHRpbWUgYmFjayB1cCB0aGUgb2xkIGNvbmZmaWxlcywgIgorInNvIHRoYXQgdGhleSBjYW4gYmUgcmVzdG9yZWQgaWYgc29tZXRoaW5nIGdvZXMgd3JvbmcuIgorbXNnc3RyICIiCisiQjwxLj4gRGVzZW1wYXF1ZXRhZG8gZGUgbG9zIGZpY2hlcm9zIGRlIGNvbmZpZ3VyYWNpw7NuIMKrY29uZmZpbGVzwrssIGEgbGEgdmV6ICIKKyJzZSBjcmVhIHVuYSBjb3BpYSBkZSBzZWd1cmlkYWQgZGUgbG9zIGFudGlndW9zIHBhcmEgc3UgcmVzdGF1cmFjacOzbiBlbiBjYXNvICIKKyJkZSBmYWxsby4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxNDUKK21zZ2lkICJCPDIuPiBSdW4gSTxwb3N0aW5zdD4gc2NyaXB0LCBpZiBwcm92aWRlZCBieSB0aGUgcGFja2FnZS4iCittc2dzdHIgIiIKKyJCPDIuPiBFamVjdWNpw7NuIGRlbCBzY3JpcHQgSTxwb3N0aW5zdD4gKHBvc3QtaW5zdGFsYWNpw7NuKSBkZWwgcGFxdWV0ZSwgc2kgIgorImV4aXN0ZS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MTQ1CisjLCBuby13cmFwCittc2dpZCAiQjwtLXRyaWdnZXJzLW9ubHk+IEk8cGFja2FnZT4uLi58QjwtYT58QjwtLXBlbmRpbmc+IgorbXNnc3RyICJCPC0tdHJpZ2dlcnMtb25seT4gSTxwYXF1ZXRlPi4uLnxCPC1hPnxCPC0tcGVuZGluZz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxNTIKK21zZ2lkICIiCisiUHJvY2Vzc2VzIG9ubHkgdHJpZ2dlcnMuIEFsbCBwZW5kaW5nIHRyaWdnZXJzIHdpbGwgYmUgcHJvY2Vzc2VkLiBJZiBwYWNrYWdlICIKKyJuYW1lcyBhcmUgc3VwcGxpZWQgb25seSB0aG9zZSBwYWNrYWdlcycgdHJpZ2dlcnMgd2lsbCBiZSBwcm9jZXNzZWQsIGV4YWN0bHkgIgorIm9uY2UgZWFjaCB3aGVyZSBuZWNlc3NhcnkuIFVzZSBvZiB0aGlzIG9wdGlvbiBtYXkgbGVhdmUgcGFja2FnZXMgaW4gdGhlICIKKyJpbXByb3BlciBCPHRyaWdnZXJzLWF3YWl0ZWQ+IGFuZCBCPHRyaWdnZXJzLXBlbmRpbmc+IHN0YXRlcy4gVGhpcyBjYW4gYmUgIgorImZpeGVkIGxhdGVyIGJ5IHJ1bm5pbmc6IEI8ZHBrZyAtLWNvbmZpZ3VyZSAtLXBlbmRpbmc+LiIKK21zZ3N0ciAiIgorIlByb2Nlc2Egc8OzbG8gbG9zIGRpc3BhcmFkb3Jlcy4gVG9kb3MgbG9zIGRpc3BhcmFkb3JlcyBwZW5kaWVudGVzIChwZW5kaW5nKSAiCisic2UgcHJvY2VzYXLDoW4gYSBtZW5vcyBxdWUgZXNwZWNpZmlxdWUgZWwobG9zKSBwYXF1ZXRlKHMpLCB1bm8gcG9yIHVubyBkZSBzZXIgIgorIm5lY2VzYXJpby4gRWwgdXNvIGRlIGVzdGEgb3BjacOzbiBwdWVkZSBkZWphciBwYXF1ZXRlcyBjb24gbG9zIGVzdGFkb3Mgbm8gIgorImRlc2VhZG9zIGRlIEI8dHJpZ2dlcnMtYXdhaXRlZD4geSBCPHRyaWdnZXJzLXBlbmRpbmc+LiBQdWVkZSBhcnJlZ2xhciBlc3RvICIKKyJtw6FzIHRhcmRlIGVqZWN1dGFuZG8gQjxkcGtnIC0tY29uZmlndXJlIC0tcGVuZGluZz4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjE1MgorIywgbm8td3JhcAorbXNnaWQgIkI8LXI+LCBCPC0tcmVtb3ZlPiwgQjwtUD4sIEI8LS1wdXJnZSA+STxwYWNrYWdlPi4uLnxCPC1hPnxCPC0tcGVuZGluZz4iCittc2dzdHIgIkI8LXI+LCBCPC0tcmVtb3ZlPiwgQjwtUD4sIEI8LS1wdXJnZSA+STxwYXF1ZXRlPi4uLnxCPC1hPnxCPC0tcGVuZGluZz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxNjkKK21zZ2lkICIiCisiUmVtb3ZlIGFuIGluc3RhbGxlZCBwYWNrYWdlLiBCPC1yPiBvciBCPC0tcmVtb3ZlPiByZW1vdmUgZXZlcnl0aGluZyBleGNlcHQgIgorImNvbmZmaWxlcy4gVGhpcyBtYXkgYXZvaWQgaGF2aW5nIHRvIHJlY29uZmlndXJlIHRoZSBwYWNrYWdlIGlmIGl0IGlzICIKKyJyZWluc3RhbGxlZCBsYXRlci4gKENvbmZmaWxlcyBhcmUgY29uZmlndXJhdGlvbiBmaWxlcyB0aGF0IGFyZSBsaXN0ZWQgaW4gdGhlICIKKyJJPERFQklBTi9jb25mZmlsZXM+IGNvbnRyb2wgZmlsZSkuIEI8LVA+IG9yIEI8LS1wdXJnZT4gcmVtb3ZlcyBldmVyeXRoaW5nLCAiCisiaW5jbHVkaW5nIGNvbmZmaWxlcy4gSWYgQjwtYT4gb3IgQjwtLXBlbmRpbmc+IGlzIGdpdmVuIGluc3RlYWQgb2YgYSBwYWNrYWdlICIKKyJuYW1lLCB0aGVuIGFsbCBwYWNrYWdlcyB1bnBhY2tlZCwgYnV0IG1hcmtlZCB0byBiZSByZW1vdmVkIG9yIHB1cmdlZCBpbiBmaWxlICIKKyJJPC92YXIvbGliL2Rwa2cvc3RhdHVzPiwgYXJlIHJlbW92ZWQgb3IgcHVyZ2VkLCByZXNwZWN0aXZlbHkuIE5vdGU6IHNvbWUgIgorImNvbmZpZ3VyYXRpb24gZmlsZXMgbWlnaHQgYmUgdW5rbm93biB0byBCPGRwa2c+IGJlY2F1c2UgdGhleSBhcmUgY3JlYXRlZCBhbmQgIgorImhhbmRsZWQgc2VwYXJhdGVseSB0aHJvdWdoIHRoZSBjb25maWd1cmF0aW9uIHNjcmlwdHMuIEluIHRoYXQgY2FzZSwgQjxkcGtnPiAiCisid29uJ3QgcmVtb3ZlIHRoZW0gYnkgaXRzZWxmLCBidXQgdGhlIHBhY2thZ2UncyBJPHBvc3RybT4gc2NyaXB0ICh3aGljaCBpcyAiCisiY2FsbGVkIGJ5IEI8ZHBrZz4pLCBoYXMgdG8gdGFrZSBjYXJlIG9mIHRoZWlyIHJlbW92YWwgZHVyaW5nIHB1cmdlLiBPZiAiCisiY291cnNlLCB0aGlzIG9ubHkgYXBwbGllcyB0byBmaWxlcyBpbiBzeXN0ZW0gZGlyZWN0b3JpZXMsIG5vdCBjb25maWd1cmF0aW9uICIKKyJmaWxlcyB3cml0dGVuIHRvIGluZGl2aWR1YWwgdXNlcnMnIGhvbWUgZGlyZWN0b3JpZXMuIgorbXNnc3RyICIiCisiRWxpbWluYSB1biBwYXF1ZXRlIGluc3RhbGFkby4gTGFzIG9wY2lvbmVzIEI8LXI+IHkgQjwtLXJlbW92ZT4gZWxpbWluYW4gdG9kbyAiCisiZXhjZXB0byBsb3MgZmljaGVyb3MgZGUgY29uZmlndXJhY2nDs24gwqtjb25mZmlsZXPCuy4gRXN0byBwdWVkZSBldml0YXIgdGVuZXIgIgorInF1ZSBjb25maWd1cmFyIGRlIG51ZXZvIGVsIHBhcXVldGUgc2kgc2UgcmVpbnN0YWxhIGRlc3B1w6lzIChsb3Mgwqtjb25mZmlsZXPCuyAiCisic29uIGZpY2hlcm9zIGRlIGNvbmZpZ3VyYWNpw7NuIGxpc3RhZG9zIGVuIGVsIGZpY2hlcm8gZGUgY29udHJvbCBJPERFQklBTi8iCisiY29uZmZpbGVzPikuIEI8LVA+IG8gQjwtLXB1cmdlPiBlbGltaW5hbiB0b2RvIGluY2x1eWVuZG8gbG9zIGZpY2hlcm9zIGRlICIKKyJjb25maWd1cmFjacOzbiDCq2NvbmZmaWxlwrsuIERlIHVzYXIgbGFzIG9wY2lvbmVzIEI8LWE+IHkgQjwtLXBlbmRpbmc+IGVuIGx1Z2FyICIKKyJkZSB1biBub21icmUgZGUgcGFxdWV0ZSwgdG9kb3MgbG9zIHF1ZSBlc3TDoW4gYWwgbWVub3MgZGVzZW1wYXF1ZXRhZG9zIHBlcm8gIgorIm1hcmNhZG9zIHBhcmEgc3UgZWxpbWluYWNpw7NuIG8gcHVyZ2FjacOzbiBlbiBJPC92YXIvbGliL2Rwa2cvc3RhdHVzPiBzZSAiCisiZWxpbWluYXLDoW4gbyBwdXJnYXLDoW4gcmVzcGVjdGl2YW1lbnRlLiBOb3RhOiBwdWVkZSBxdWUgQjxkcGtnPiBkZXNjb25vemNhICIKKyJhbGd1bm9zIGZpY2hlcm9zIHNpIHN1IGNyZWFjacOzbiB5IG1hbmlwdWxhY2nDs24gb2N1cnJpw7MgYWlzbGFkYW1lbnRlIGEgdHJhdsOpcyAiCisiZGUgbG9zIHNjcmlwdHMgZGUgY29uZmlndXJhY2nDs24uIERlIHNlciBhc8OtLCBCPGRwa2c+IG5vIGxvcyBlbGltaW5hcsOhICIKKyJkaXJlY3RhbWVudGUgc2lubyBxdWUgZWwgc2NyaXB0IEk8cG9zdHJtPiBkZWwgcGFxdWV0ZSAoaW52b2NhZG8gcG9yIEI8ZHBrZz4pICIKKyJlamVjdXRhcsOhIGxhIGVsaW1pbmFjacOzbiBkZSBlc3RvcyBmaWNoZXJvcyBkdXJhbnRlIGxhIHB1cmdhY2nDs24gZGVsIHBhcXVldGUuICIKKyJQb3Igc3VwdWVzdG8sIGVzdG8gc8OzbG8gdGllbmUgZWZlY3RvIGVuIGxvcyBkaXJlY3RvcmlvcyBkZSBzaXN0ZW1hLCBubyBzb2JyZSAiCisibG9zIGZpY2hlcm9zIGRlIGNvbmZpZ3VyYWNpw7NuIGVzY3JpdG9zIGVuIGxvcyBkaXJlY3RvcmlvcyDCq2hvbWUvwrsgZGUgdXN1YXJpby4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxNzEKK21zZ2lkICJSZW1vdmluZyBvZiBhIHBhY2thZ2UgY29uc2lzdHMgb2YgdGhlIGZvbGxvd2luZyBzdGVwczoiCittc2dzdHIgIkxhIGVsaW1pbmFjacOzbiBkZSB1biBwYXF1ZXRlIGNvbnNpc3RlIGRlIGxvcyBzaWd1aWVudGVzIHBhc29zOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjE3NAorbXNnaWQgIkI8MS4+IFJ1biBJPHByZXJtPiBzY3JpcHQiCittc2dzdHIgIkI8MS4+IEVqZWN1Y2nDs24gZGVsIHNjcmlwdCBJPHByZXJtPi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxNzcKK21zZ2lkICJCPDIuPiBSZW1vdmUgdGhlIGluc3RhbGxlZCBmaWxlcyIKK21zZ3N0ciAiQjwyLj4gRWxpbWluYWNpw7NuIGRlIGxvcyBmaWNoZXJvcyBpbnN0YWxhZG9zLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjE4MAorbXNnaWQgIkI8My4+IFJ1biBJPHBvc3RybT4gc2NyaXB0IgorbXNnc3RyICJCPDMuPiBFamVjdWNpw7NuIGRlbCBzY3JpcHQgSTxwb3N0cm0+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToxODEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tdXBkYXRlLWF2YWlsPiwgQjwtLW1lcmdlLWF2YWlsPiBJPFBhY2thZ2VzLWZpbGU+IgorbXNnc3RyICJCPC0tdXBkYXRlLWF2YWlsPiwgQjwtLW1lcmdlLWF2YWlsPiBJPGZpY2hlcm8tUGFja2FnZXM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTkwCittc2dpZCAiIgorIlVwZGF0ZSBCPGRwa2c+J3MgYW5kIEI8ZHNlbGVjdD4ncyBpZGVhIG9mIHdoaWNoIHBhY2thZ2VzIGFyZSBhdmFpbGFibGUuIFdpdGggIgorImFjdGlvbiBCPC0tbWVyZ2UtYXZhaWw+LCBvbGQgaW5mb3JtYXRpb24gaXMgY29tYmluZWQgd2l0aCBpbmZvcm1hdGlvbiBmcm9tICIKKyJJPFBhY2thZ2VzLWZpbGU+LiBXaXRoIGFjdGlvbiBCPC0tdXBkYXRlLWF2YWlsPiwgb2xkIGluZm9ybWF0aW9uIGlzIHJlcGxhY2VkICIKKyJ3aXRoIHRoZSBpbmZvcm1hdGlvbiBpbiB0aGUgSTxQYWNrYWdlcy1maWxlPi4gVGhlIEk8UGFja2FnZXMtZmlsZT4gIgorImRpc3RyaWJ1dGVkIHdpdGggRGViaWFuIGlzIHNpbXBseSBuYW1lZCBJPFBhY2thZ2VzPi4gQjxkcGtnPiBrZWVwcyBpdHMgIgorInJlY29yZCBvZiBhdmFpbGFibGUgcGFja2FnZXMgaW4gSTwvdmFyL2xpYi9kcGtnL2F2YWlsYWJsZT4uIgorbXNnc3RyICIiCisiQWN0dWFsaXphIGxhIGxpc3RhIGRlIHBhcXVldGVzIGRpc3BvbmlibGVzIGRlIEI8ZHBrZz4geSBCPGRzZWxlY3Q+LiBMYSAiCisiYWNjacOzbiBCPC0tbWVyZ2UtYXZhaWw+IGNvbWJpbmEgbGEgaW5mb3JtYWNpw7NuIGFudGlndWEgY29uIGxhIGluZm9ybWFjacOzbiAiCisiZGVsIEk8ZmljaGVyby1QYWNrYWdlcz4uIEVsIEk8ZmljaGVyby1QYWNrYWdlcz4gZGlzdHJpYnVpZG8gY29uIERlYmlhbiBzZSAiCisibGxhbWEgc2ltcGxlbWVudGUgSTxQYWNrYWdlcz4uIEVsIHByb2dyYW1hIEI8ZHBrZz4gZ3VhcmRhIHVuIHJlZ2lzdHJvIGRlIGxvcyAiCisicGFxdWV0ZXMgZGlzcG9uaWJsZXMgZW4gSTwvdmFyL2xpYi9kcGtnL2F2YWlsYWJsZT4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTk1Cittc2dpZCAiIgorIkEgc2ltcGxlciBvbmUtc2hvdCBjb21tYW5kIHRvIHJldHJpZXZlIGFuZCB1cGRhdGUgdGhlIEk8YXZhaWxhYmxlPiBmaWxlIGlzICIKKyJCPGRzZWxlY3QgdXBkYXRlPi4gTm90ZSB0aGF0IHRoaXMgZmlsZSBpcyBtb3N0bHkgdXNlbGVzcyBpZiB5b3UgZG9uJ3QgdXNlICIKKyJCPGRzZWxlY3Q+IGJ1dCBhbiBBUFQtYmFzZWQgZnJvbnRlbmQ6IEFQVCBoYXMgaXRzIG93biBzeXN0ZW0gdG8ga2VlcCB0cmFjayAiCisib2YgYXZhaWxhYmxlIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorIkI8ZHNlbGVjdCB1cGRhdGU+IG9mcmVjZSB1bmEgbWFuZXJhIHNlbmNpbGxhIHkgZGlyZWN0YSBkZSBvYnRlbmVyIHkgIgorImFjdHVhbGl6YXIgZWwgZmljaGVybyBJPGF2YWlsYWJsZT4gKGRpc3BvbmlibGUpLiBUZW5nYSBlbiBjdWVudGEgcXVlIGVsICIKKyJmaWNoZXJvIGVzIGNhc2kgaW5zZXJ2aWJsZSBzaSB1c2EgdW5hIGludGVyZmF6IGJhc2FkYSBlbiBBUFQgZW4gbHVnYXIgZGUgIgorIkI8ZHNlbGVjdD46IEFQVCB0aWVuZSBzdSBwcm9waW8gc2lzdGVtYSBkZSByZWdpc3RyYXIgbG9zIHBhcXVldGVzICIKKyJkaXNwb25pYmxlcy4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MTk1CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8LUE+LCBCPC0tcmVjb3JkLWF2YWlsPiBJPHBhY2thZ2VfZmlsZT4uLi4iCittc2dpZCAiQjwtQT4sIEI8LS1yZWNvcmQtYXZhaWw+IEk8cGFja2FnZS1maWxlPi4uLiIKK21zZ3N0ciAiQjwtQT4sIEI8LS1yZWNvcmQtYXZhaWw+IEk8ZmljaGVyby1wYXF1ZXRlPi4uLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjIwMQorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiVXBkYXRlIEI8ZHBrZz4gYW5kIEI8ZHNlbGVjdD4ncyBpZGVhIG9mIHdoaWNoIHBhY2thZ2VzIGFyZSBhdmFpbGFibGUgd2l0aCAiCisjfCAiaW5mb3JtYXRpb24gZnJvbSB0aGUgcGFja2FnZSBJPHBhY2thZ2VfZmlsZT4uIElmIEI8LS1yZWN1cnNpdmU+IG9yIEI8LVI+ICIKKyN8ICJvcHRpb24gaXMgc3BlY2lmaWVkLCBJPHBhY2thZ2VfZmlsZT4gbXVzdCByZWZlciB0byBhIGRpcmVjdG9yeSBpbnN0ZWFkLiIKK21zZ2lkICIiCisiVXBkYXRlIEI8ZHBrZz4gYW5kIEI8ZHNlbGVjdD4ncyBpZGVhIG9mIHdoaWNoIHBhY2thZ2VzIGFyZSBhdmFpbGFibGUgd2l0aCAiCisiaW5mb3JtYXRpb24gZnJvbSB0aGUgcGFja2FnZSBJPHBhY2thZ2UtZmlsZT4uIElmIEI8LS1yZWN1cnNpdmU+IG9yIEI8LVI+ICIKKyJvcHRpb24gaXMgc3BlY2lmaWVkLCBJPHBhY2thZ2UtZmlsZT4gbXVzdCByZWZlciB0byBhIGRpcmVjdG9yeSBpbnN0ZWFkLiIKK21zZ3N0ciAiIgorIkFjdHVhbGl6YSBsYSBsaXN0YSBkZSBwYXF1ZXRlcyBkaXNwb25pYmxlcyBkZSBCPGRwa2c+IHkgQjxkc2VsZWN0PiBjb24gbGEgIgorImluZm9ybWFjacOzbiBkZWwgSTxmaWNoZXJvLXBhcXVldGU+LiBTaSBzZSB1c2EgQjwtLXJlY3Vyc2l2ZT4gbyBCPC1SPiwgZWwgIgorIkk8ZmljaGVyby1wYXF1ZXRlPiBkZWJlIHNlciB1biBkaXJlY3RvcmlvLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToyMDEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tZm9yZ2V0LW9sZC11bmF2YWlsPiIKK21zZ3N0ciAiQjwtLWZvcmdldC1vbGQtdW5hdmFpbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyMDUKK21zZ2lkICIiCisiTm93IEI8b2Jzb2xldGU+IGFuZCBhIG5vLW9wIGFzIEI8ZHBrZz4gd2lsbCBhdXRvbWF0aWNhbGx5IGZvcmdldCB1bmluc3RhbGxlZCAiCisidW5hdmFpbGFibGUgcGFja2FnZXMuIgorbXNnc3RyICIiCisiQjxPYnNvbGV0YT4sIHkgdW5hIG9wY2nDs24gaW5zZXJ2aWJsZSB5YSBxdWUgQjxkcGtnPiBvbHZpZGFyw6EgYXV0b23DoXRpY2FtZW50ZSAiCisibG9zIHBhcXVldGVzIGRlc2luc3RhbGFkb3Mgbm8gZGlzcG9uaWJsZXMuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjIwNQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1jbGVhci1hdmFpbD4iCittc2dzdHIgIkI8LS1jbGVhci1hdmFpbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyMDgKK21zZ2lkICJFcmFzZSB0aGUgZXhpc3RpbmcgaW5mb3JtYXRpb24gYWJvdXQgd2hhdCBwYWNrYWdlcyBhcmUgYXZhaWxhYmxlLiIKK21zZ3N0ciAiRWxpbWluYSBsYSBpbmZvcm1hY2nDs24gc29icmUgcXXDqSBwYXF1ZXRlcyBlc3TDoW4gZGlzcG9uaWJsZXMuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjIwOAorIywgbm8td3JhcAorbXNnaWQgIiBCPC1DPiwgQjwtLWF1ZGl0PiIKK21zZ3N0ciAiIEI8LUM+LCBCPC0tYXVkaXQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MjEzCittc2dpZCAiIgorIlNlYXJjaGVzIGZvciBwYWNrYWdlcyB0aGF0IGhhdmUgYmVlbiBpbnN0YWxsZWQgb25seSBwYXJ0aWFsbHkgb24geW91ciAiCisic3lzdGVtLiBCPGRwa2c+IHdpbGwgc3VnZ2VzdCB3aGF0IHRvIGRvIHdpdGggdGhlbSB0byBnZXQgdGhlbSB3b3JraW5nLiIKK21zZ3N0ciAiIgorIkJ1c2NhIHBhcXVldGVzIHF1ZSBzZSBoYXlhbiBpbnN0YWxhZG8gcGFyY2lhbG1lbnRlIGVuIGVsIHNpc3RlbWEuIEVsICIKKyJwcm9ncmFtYSBCPGRwa2c+IHN1Z2VyaXLDoSBxdcOpIGhhY2VyIGNvbiBlbGxvcyBwYXJhIGhhY2VybG9zIGZ1bmNpb25hci4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MjEzCisjLCBuby13cmFwCittc2dpZCAiQjwtLWdldC1zZWxlY3Rpb25zPiBbSTxwYWNrYWdlLW5hbWUtcGF0dGVybj4uLi5dIgorbXNnc3RyICJCPC0tZ2V0LXNlbGVjdGlvbnM+IFtJPHBhdHLDs24tbm9tYnJlLXBhcXVldGU+Li4uXSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjIxOAorbXNnaWQgIiIKKyJHZXQgbGlzdCBvZiBwYWNrYWdlIHNlbGVjdGlvbnMsIGFuZCB3cml0ZSBpdCB0byBzdGRvdXQuIFdpdGhvdXQgYSBwYXR0ZXJuLCAiCisibm9uLWluc3RhbGxlZCBwYWNrYWdlcyAoaS5lLiB0aG9zZSB3aGljaCBoYXZlIGJlZW4gcHJldmlvdXNseSBwdXJnZWQpICB3aWxsICIKKyJub3QgYmUgc2hvd24uIgorbXNnc3RyICIiCisiTXVlc3RyYSBsYSBsaXN0YSBkZSBzZWxlY2Npb25lcyBkZSBwYXF1ZXRlcyBwb3IgbGEgc2FsaWRhIGVzdMOhbmRhci4gRGUgbm8gIgorImludHJvZHVjaXIgdW4gcGF0csOzbiBzZSBtb3N0cmFyw6EgbGEgbGlzdGEgZGUgcGFxdWV0ZXMgbm8gaW5zdGFsYWRvcyAoZXN0byAiCisiZXMsIHByZXZpYW1lbnRlIHB1cmdhZG9zKSAuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjIxOCB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6Mjk5CisjLCBuby13cmFwCittc2dpZCAiQjwtLXNldC1zZWxlY3Rpb25zPiIKK21zZ3N0ciAiQjwtLXNldC1zZWxlY3Rpb25zPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjIyNAorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiU2V0IHBhY2thZ2Ugc2VsZWN0aW9ucyB1c2luZyBmaWxlIHJlYWQgZnJvbSBzdGRpbi4gVGhpcyBmaWxlIHNob3VsZCBiZSBpbiAiCisjfCAidGhlIGZvcm1hdCAnRTxsdD5wYWNrYWdlRTxndD4gRTxsdD5zdGF0ZUU8Z3Q+Jywgd2hlcmUgc3RhdGUgaXMgb25lIG9mICIKKyN8ICJpbnN0YWxsLCBob2xkLCBkZWluc3RhbGwgb3IgcHVyZ2UuIEJsYW5rIGxpbmVzIGFuZCBjb21tZW50IGxpbmVzICIKKyN8ICJiZWdpbm5pbmcgd2l0aCAnIycgYXJlIGFsc28gcGVybWl0dGVkLiIKK21zZ2lkICIiCisiU2V0IHBhY2thZ2Ugc2VsZWN0aW9ucyB1c2luZyBmaWxlIHJlYWQgZnJvbSBzdGRpbi4gVGhpcyBmaWxlIHNob3VsZCBiZSBpbiAiCisidGhlIGZvcm1hdCAnSTxwYWNrYWdlPiBJPHN0YXRlPicsIHdoZXJlIHN0YXRlIGlzIG9uZSBvZiBCPGluc3RhbGw+LCBCPGhvbGQ+LCAiCisiQjxkZWluc3RhbGw+IG9yIEI8cHVyZ2U+LiBCbGFuayBsaW5lcyBhbmQgY29tbWVudCBsaW5lcyBiZWdpbm5pbmcgd2l0aCAnIycgIgorImFyZSBhbHNvIHBlcm1pdHRlZC4iCittc2dzdHIgIiIKKyJEZWZpbmUgbGFzIHNlbGVjY2lvbmVzIGRlIHBhcXVldGVzIHVzYW5kbyB1biBmaWNoZXJvIGludHJvZHVjaWRvIHBvciBsYSAiCisiZW50cmFkYSBlc3TDoW5kYXIuIEVzdGUgZmljaGVybyBkZWJlcsOtYSB0ZW5lciBlbCBmb3JtYXRvIMKrRTxsdD5wYXF1ZXRlRTxndD4gIgorIkU8bHQ+ZXN0YWRvRTxndD7CuywgZW4gZWwgcXVlIGVsIGVzdGFkbyBlcyDCq2luc3RhbGzCuywgwqtob2xkwrssIMKrZGVpbnN0YWxswrsgbyAiCisiwqtwdXJnZcK7LiBTZSBwZXJtaXRlbiBsYXMgbMOtbmVhcyB2YWPDrWFzIHkgbMOtbmVhcyBkZSBjb21lbnRhcmlvcyBxdWUgZW1waWVjZW4gIgorInBvciDCqyPCuy4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MjI0CisjLCBuby13cmFwCittc2dpZCAiQjwtLWNsZWFyLXNlbGVjdGlvbnM+IgorbXNnc3RyICJCPC0tY2xlYXItc2VsZWN0aW9ucz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyMjkKK21zZ2lkICIiCisiU2V0IHRoZSByZXF1ZXN0ZWQgc3RhdGUgb2YgZXZlcnkgbm9uLWVzc2VudGlhbCBwYWNrYWdlIHRvIGRlaW5zdGFsbC4gIFRoaXMgIgorImlzIGludGVuZGVkIHRvIGJlIHVzZWQgaW1tZWRpYXRlbHkgYmVmb3JlIC0tc2V0LXNlbGVjdGlvbnMsIHRvIGRlaW5zdGFsbCBhbnkgIgorInBhY2thZ2VzIG5vdCBpbiBsaXN0IGdpdmVuIHRvIC0tc2V0LXNlbGVjdGlvbnMuIgorbXNnc3RyICIiCisiRGVmaW5lIGVsIGVzdGFkbyBkZXNlYWRvIGRlIHRvZG8gcGFxdWV0ZSBubyBlc2VuY2lhbCBwYXJhIHN1IGRlc2luc3RhbGFjacOzbi4gIgorIkxhIGludGVuY2nDs24gZXMgdXNhciBlc3RvIGlubWVkaWF0YW1lbnRlIGRlc3B1w6lzIGRlIMKrLS1zZXQtc2VsZWN0aW9uc8K7LCBwYXJhICIKKyJkZXNpbnN0YWxhciB0b2RvIHBhcXVldGUgcXVlIG5vIGVzdMOpIGVuIGxhIGxpc3RhIGludHJvZHVjaWRhIGEgwqstLXNldC0iCisic2VsZWN0aW9uc8K7LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToyMjkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0teWV0LXRvLXVucGFjaz4iCittc2dzdHIgIkI8LS15ZXQtdG8tdW5wYWNrPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjIzMworbXNnaWQgIiIKKyJTZWFyY2hlcyBmb3IgcGFja2FnZXMgc2VsZWN0ZWQgZm9yIGluc3RhbGxhdGlvbiwgYnV0IHdoaWNoIGZvciBzb21lIHJlYXNvbiAiCisic3RpbGwgaGF2ZW4ndCBiZWVuIGluc3RhbGxlZC4iCittc2dzdHIgIiIKKyJCdXNjYSBsb3MgcGFxdWV0ZXMgc2VsZWNjaW9uYWRvcyBwYXJhIHN1IGluc3RhbGFjacOzbiwgcGVybyBxdWUgcG9yIGFsZ3VuYSAiCisicmF6w7NuIHRvZGF2w61hIG5vIHNlIGhhbiBpbnN0YWxhZG8uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjIzNAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1wcmludC1hcmNoaXRlY3R1cmU+IgorbXNnc3RyICJCPC0tcHJpbnQtYXJjaGl0ZWN0dXJlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjIzNworbXNnaWQgIiIKKyJQcmludCBhcmNoaXRlY3R1cmUgb2YgcGFja2FnZXMgQjxkcGtnPiBpbnN0YWxscyAoZm9yIGV4YW1wbGUsIFwiaTM4NlwiKS4iCittc2dzdHIgIiIKKyJNdWVzdHJhIGxhIGFycXVpdGVjdHVyYSBkZSBsb3MgcGFxdWV0ZXMgcXVlIEI8ZHBrZz4gaW5zdGFsYSAocG9yIGVqZW1wbG8sICIKKyLCq2kzODbCuykuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjIzNworIywgbm8td3JhcAorbXNnaWQgIkI8LS1jb21wYXJlLXZlcnNpb25zID5JPHZlcjEgb3AgdmVyMj4iCittc2dzdHIgIkI8LS1jb21wYXJlLXZlcnNpb25zID5JPHZlcjEgb3AgdmVyMj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyNDgKK21zZ2lkICIiCisiQ29tcGFyZSB2ZXJzaW9uIG51bWJlcnMsIHdoZXJlIEk8b3A+IGlzIGEgYmluYXJ5IG9wZXJhdG9yLiBCPGRwa2c+IHJldHVybnMgIgorInN1Y2Nlc3MgKHplcm8gcmVzdWx0KSBpZiB0aGUgc3BlY2lmaWVkIGNvbmRpdGlvbiBpcyBzYXRpc2ZpZWQsIGFuZCBmYWlsdXJlICIKKyIobm9uemVybyByZXN1bHQpIG90aGVyd2lzZS4gVGhlcmUgYXJlIHR3byBncm91cHMgb2Ygb3BlcmF0b3JzLCB3aGljaCBkaWZmZXIgIgorImluIGhvdyB0aGV5IHRyZWF0IGFuIGVtcHR5IEk8dmVyMT4gb3IgSTx2ZXIyPi4gVGhlc2UgdHJlYXQgYW4gZW1wdHkgdmVyc2lvbiAiCisiYXMgZWFybGllciB0aGFuIGFueSB2ZXJzaW9uOiBCPGx0IGxlIGVxIG5lIGdlIGd0Pi4gVGhlc2UgdHJlYXQgYW4gZW1wdHkgIgorInZlcnNpb24gYXMgbGF0ZXIgdGhhbiBhbnkgdmVyc2lvbjogQjxsdC1ubCBsZS1ubCBnZS1ubCBndC1ubD4uIFRoZXNlIGFyZSAiCisicHJvdmlkZWQgb25seSBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIGNvbnRyb2wgZmlsZSBzeW50YXg6IEI8RTxsdD4gRTxsdD5FPGx0PiAiCisiRTxsdD49ID0gRTxndD49IEU8Z3Q+RTxndD4gRTxndD4+LiIKK21zZ3N0ciAiIgorIkNvbXBhcmEgbG9zIG7Dum1lcm9zIGRlIHZlcnNpw7NuLCBzaWVuZG8gSTxvcD4gdW4gb3BlcmFkb3IgYmluYXJpby4gQjxkcGtnPiAiCisiZGV2dWVsdmUgw6l4aXRvIChjZXJvKSBzaSBsYSBjb25kaWNpw7NuIGVzcGVjaWZpY2FkYSBzZSBjdW1wbGUsIHkgZmFsbG8gKHVuICIKKyJyZXN1bHRhZG8gZGlzdGludG8gZGUgY2VybykgZW4gY2FzbyBjb250cmFyaW8uIEhheSBkb3MgZ3J1cG9zIGRlIG9wZXJhZG9yZXMgIgorInF1ZSBkaWZpZXJlbiBlbiBzdSBjb21wb3J0YW1pZW50byBjdWFuZG8gbGVzIGZhbHRhIGFsZ3VubyBkZSBsb3Mgb3BlcmFuZG9zLCAiCisiSTx2ZXIxPiBvIEk8dmVyMj4uIExvcyBwcmltZXJvcyB0cmF0YW4gbGEgZmFsdGEgZGUgdmVyc2nDs24gY29tbyBsYSB2ZXJzacOzbiAiCisibcOhcyBhbnRpZ3VhIHBvc2libGU6IEI8bHQgbGUgZXEgbmUgZ2UgZ3Q+LiBMb3Mgb3Ryb3MgdHJhdGFuIGxhIGZhbHRhIGRlICIKKyJ2ZXJzacOzbiBjb21vIGxhIG3DoXMgbW9kZXJuYSBwb3NpYmxlOiBCPGx0LW5sIGxlLW5sIGdlLW5sIGd0LW5sPi4gw4lzdG9zIHNlICIKKyJwcm9wb3JjaW9uYW4gc8OzbG8gcG9yIGNvbXBhdGliaWxpZGFkIGNvbiBsYSBzaW50YXhpcyBkZWwgZmljaGVybyBkZSBjb250cm9sOiAiCisiQjxFPGx0PiBFPGx0PkU8bHQ+IEU8bHQ+PSA9IEU8Z3Q+PSBFPGd0PkU8Z3Q+IEU8Z3Q+Pi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MjQ4CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8LS1jb21tYW5kLWZkID5JPEU8bHQ+bkU8Z3Q+PiIKK21zZ2lkICJCPC0tY29tbWFuZC1mZCA+STxuPiIKK21zZ3N0ciAiQjwtLWNvbW1hbmQtZmQgPkk8RTxsdD5uRTxndD4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MjUzCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJBY2NlcHQgYSBzZXJpZXMgb2YgY29tbWFuZHMgb24gaW5wdXQgZmlsZSBkZXNjcmlwdG9yIEk8RTxsdD5uRTxndD4+LiAiCisjfCAiTm90ZTogYWRkaXRpb25hbCBvcHRpb25zIHNldCBvbiB0aGUgY29tbWFuZCBsaW5lLCBhbmQgdGhyb3VnaCB0aGlzIGZpbGUgIgorI3wgImRlc2NyaXB0b3IsIGFyZSBub3QgcmVzZXQgZm9yIHN1YnNlcXVlbnQgY29tbWFuZHMgZXhlY3V0ZWQgZHVyaW5nIHRoZSAiCisjfCAic2FtZSBydW4uIgorbXNnaWQgIiIKKyJBY2NlcHQgYSBzZXJpZXMgb2YgY29tbWFuZHMgb24gaW5wdXQgZmlsZSBkZXNjcmlwdG9yIEk8bj4uIE5vdGU6IGFkZGl0aW9uYWwgIgorIm9wdGlvbnMgc2V0IG9uIHRoZSBjb21tYW5kIGxpbmUsIGFuZCB0aHJvdWdoIHRoaXMgZmlsZSBkZXNjcmlwdG9yLCBhcmUgbm90ICIKKyJyZXNldCBmb3Igc3Vic2VxdWVudCBjb21tYW5kcyBleGVjdXRlZCBkdXJpbmcgdGhlIHNhbWUgcnVuLiIKK21zZ3N0ciAiIgorIkFjZXB0YSB1bmEgc2VyaWUgZGUgw7NyZGVuZXMgZW4gZWwgZGVzY3JpcHRvciBkZSBmaWNoZXJvIEI8RTxsdD5uRTxndD4+LiAiCisiTm90YTogbGFzIG9wY2lvbmVzIGFkaWNpb25hbGVzIGludHJvZHVjaWRhcyBkZXNkZSBsYSBsw61uZWEgZGUgw7NyZGVuZXMgeSAiCisibWVkaWFudGUgZXN0ZSBkZXNjcmlwdG9yIGRlIGZpY2hlcm8gbm8gc2UgZGVzYWN0aXZhbiBlbiBsYXMgc3Vic2lndWllbnRlcyAiCisibGxhbWFkYXMgZWZlY3R1YWRhcyBlbiBsYSBtaXNtYSBlamVjdWNpw7NuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToyNTMgZHBrZy1hcmNoaXRlY3R1cmUuMTo2MCBkcGtnLWJ1aWxkZmxhZ3MuMTo4OSBkcGtnLWRpdmVydC44OjcxCisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjM4IGRwa2ctc2NhbnNvdXJjZXMuMTo2NiBkcGtnLXN0YXRvdmVycmlkZS44OjQ0CisjOiBkcGtnLXZlbmRvci4xOjI4IGRzZWxlY3QuMToxMTMgdXBkYXRlLWFsdGVybmF0aXZlcy44OjMxNgorIywgbm8td3JhcAorbXNnaWQgIkI8LS1oZWxwPiIKK21zZ3N0ciAiQjwtLWhlbHA+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MjU2Cittc2dpZCAiRGlzcGxheSBhIGJyaWVmIGhlbHAgbWVzc2FnZS4iCittc2dzdHIgIk11ZXN0cmEgdW4gcmVzdW1lbiBkZSBsYXMgaW5zdHJ1Y2Npb25lcyBkZSB1c28uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjI1NgorIywgbm8td3JhcAorbXNnaWQgIkI8LS1mb3JjZS1oZWxwPiIKK21zZ3N0ciAiQjwtLWZvcmNlLWhlbHA+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MjU5Cittc2dpZCAiR2l2ZSBoZWxwIGFib3V0IHRoZSBCPC0tZm9yY2UtPkk8dGhpbmc+IG9wdGlvbnMuIgorbXNnc3RyICJNdWVzdHJhIGxhIGF5dWRhIGRlIGxhcyBvcGNpb25lcyBCPC0tZm9yY2UtPkk8YWxnbz4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjI1OQorIywgbm8td3JhcAorbXNnaWQgIkI8LURoPiwgQjwtLWRlYnVnPWhlbHA+IgorbXNnc3RyICJCPC1EaD4sIEI8LS1kZWJ1Zz1oZWxwPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjI2MgorbXNnaWQgIkdpdmUgaGVscCBhYm91dCBkZWJ1Z2dpbmcgb3B0aW9ucy4iCittc2dzdHIgIk11ZXN0cmEgbGEgYXl1ZGEgZGUgbGFzIG9wY2lvbmVzIGRlIGRlcHVyYWNpw7NuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToyNjIgZHBrZy1hcmNoaXRlY3R1cmUuMTo2MyBkcGtnLWJ1aWxkZmxhZ3MuMTo5MgorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMjYgZHBrZy1jaGVja2J1aWxkZGVwcy4xOjM2IGRwa2ctZGlzdGFkZGZpbGUuMTozNQorIzogZHBrZy1kZWIuMToxNzUgZHBrZy1kaXZlcnQuODo3NCBkcGtnLWdlbmNoYW5nZXMuMToxMzQgZHBrZy1nZW5jb250cm9sLjE6MTI0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0NDYgZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTo0MSBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MzYKKyM6IGRwa2ctcXVlcnkuMToxMTMgZHBrZy1zY2FucGFja2FnZXMuMTo5OSBkcGtnLXNjYW5zb3VyY2VzLjE6NjgKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjE4IGRwa2ctc291cmNlLjE6OTkgZHBrZy1zcGxpdC4xOjEyOQorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo0NyBkcGtnLXRyaWdnZXIuMTozNCBkcGtnLXZlbmRvci4xOjMxIGRzZWxlY3QuMToxMTYKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMTkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tdmVyc2lvbj4iCittc2dzdHIgIkI8LS12ZXJzaW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjI2NQorbXNnaWQgIkRpc3BsYXkgQjxkcGtnPiB2ZXJzaW9uIGluZm9ybWF0aW9uLiIKK21zZ3N0ciAiTXVlc3RyYSBsYSB2ZXJzacOzbiBkZSBCPGRwa2c+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToyNjUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGRwa2ctZGViIGFjdGlvbnM+IgorbXNnc3RyICJCPGRwa2ctZGViIGFjdGlvbnM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MjY4Cittc2dpZCAiU2VlIEI8ZHBrZy1kZWI+KDEpIGZvciBtb3JlIGluZm9ybWF0aW9uIGFib3V0IHRoZSBmb2xsb3dpbmcgYWN0aW9ucy4iCittc2dzdHIgIiIKKyJDb25zdWx0ZSBCPGRwa2ctZGViPigxKSBwYXJhIG3DoXMgaW5mb3JtYWNpw7NuIHNvYnJlIGxhcyBzaWd1aWVudGVzIGFjY2lvbmVzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjI4OAorIywgbm8td3JhcAorbXNnaWQgIiIKKyJCPC1iPiwgQjwtLWJ1aWxkPiBJPGRpcmVjdG9yeT4gW0k8YXJjaGl2ZT58STxkaXJlY3Rvcnk+XVxuIgorIiAgICBCdWlsZCBhIGRlYiBwYWNrYWdlLlxuIgorIkI8LWM+LCBCPC0tY29udGVudHM+IEk8YXJjaGl2ZT5cbiIKKyIgICAgTGlzdCBjb250ZW50cyBvZiBhIGRlYiBwYWNrYWdlLlxuIgorIkI8LWU+LCBCPC0tY29udHJvbD4gSTxmaWxlbmFtZT4gW0k8ZGlyZWN0b3J5Pl1cbiIKKyIgICAgRXh0cmFjdCBjb250cm9sLWluZm9ybWF0aW9uIGZyb20gYSBwYWNrYWdlLlxuIgorIkI8LXg+LCBCPC0tZXh0cmFjdD4gSTxhcmNoaXZlIGRpcmVjdG9yeT5cbiIKKyIgICAgRXh0cmFjdCB0aGUgZmlsZXMgY29udGFpbmVkIGJ5IHBhY2thZ2UuXG4iCisiQjwtWD4sIEI8LS12ZXh0cmFjdD4gSTxhcmNoaXZlIGRpcmVjdG9yeT5cbiIKKyIgICAgRXh0cmFjdCBhbmQgZGlzcGxheSB0aGUgZmlsZW5hbWVzIGNvbnRhaW5lZCBieSBhXG4iCisiICAgIHBhY2thZ2UuXG4iCisiQjwtZj4sIEI8LS1maWVsZD4gIEk8YXJjaGl2ZT4gW0k8Y29udHJvbC1maWVsZD4uLi5dXG4iCisiICAgIERpc3BsYXkgY29udHJvbCBmaWVsZChzKSBvZiBhIHBhY2thZ2UuXG4iCisiQjwtLWZzeXMtdGFyZmlsZT4gSTxhcmNoaXZlPlxuIgorIiAgICBEaXNwbGF5IHRoZSBmaWxlc3lzdGVtIHRhci1maWxlIGNvbnRhaW5lZCBieSBhXG4iCisiICAgIERlYmlhbiBwYWNrYWdlLlxuIgorIkI8LUk+LCBCPC0taW5mbz4gSTxhcmNoaXZlPiBbSTxjb250cm9sLWZpbGU+Li4uXVxuIgorIiAgICBTaG93IGluZm9ybWF0aW9uIGFib3V0IGEgcGFja2FnZS5cbiIKK21zZ3N0ciAiIgorIkI8LWI+IHwgQjwtLWJ1aWxkPiBJPGRpcmVjdG9yaW8+IFtJPGZpY2hlcm8+XVxuIgorIiAgICBDb25zdHJ1eWUgdW4gcGFxdWV0ZSBEZWJpYW4gR05VL0xpbnV4LlxuIgorIkI8LWM+IHwgQjwtLWNvbnRlbnRzPiBJPGZpY2hlcm8+XG4iCisiICAgIE11ZXN0cmEgZWwgY29udGVuaWRvIGRlIHVuIHBhcXVldGUgRGViaWFuIEdOVS9MaW51eC5cbiIKKyJCPC1lPiB8IEI8LS1jb250cm9sPiBJPGZpY2hlcm8+IFtJPGRpcmVjdG9yaW8+XVxuIgorIiAgICBFeHRyYWUgbGEgaW5mb3JtYWNpw7NuIGRlIGNvbnRyb2wgZGUgdW4gcGFxdWV0ZS5cbiIKKyJCPC14PiB8IEI8LS1leHRyYWN0PiBJPGZpY2hlcm8gZGlyZWN0b3Jpbz5cbiIKKyIgICAgRXh0cmFlIGxvcyBmaWNoZXJvcyBjb250ZW5pZG9zIGVuIGVsIHBhcXVldGUuXG4iCisiQjwtWD4sIEI8LS12ZXh0cmFjdD4gSTxhcmNoaXZlIGRpcmVjdG9yeT5cbiIKKyIgICAgRXh0cmFlIHkgbXVlc3RyYSBsb3Mgbm9tYnJlcyBkZSBmaWNoZXJvIHF1ZSB1blxuIgorIiAgICBwYXF1ZXRlIGNvbnRpZW5lLlxuIgorIkI8LWY+IHwgQjwtLWZpZWxkPiAgSTxmaWNoZXJvPiBbSTxjYW1wby1jb250cm9sPl0gLi4uXG4iCisiICAgIE11ZXN0cmEgZWwvbG9zIGNhbXBvKHMpIGRlIGNvbnRyb2wgZGUgdW4gcGFxdWV0ZS5cbiIKKyJCPC0tZnN5cy10YXJmaWxlPiBJPGZpY2hlcm8+XG4iCisiICAgIE11ZXN0cmEgZWwgZmljaGVybyB0YXIgY29udGVuaWRvIGVuIGVsIHBhcXVldGUgZGViLlxuIgorIkI8ZHBrZyAtST4gfCBCPC0taW5mbz4gSTxmaWNoZXJvPiBbSTxmaWNoZXJvLWNvbnRyb2w+XVxuIgorIiAgICBNdWVzdHJhIGluZm9ybWFjacOzbiBzb2JyZSBlbCBwYXF1ZXRlLlxuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjI5MAorIywgbm8td3JhcAorbXNnaWQgIkI8ZHBrZy1xdWVyeSBhY3Rpb25zPiIKK21zZ3N0ciAiQjxkcGtnLXF1ZXJ5LWFjdGlvbnM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MjkzCittc2dpZCAiU2VlIEI8ZHBrZy1xdWVyeT4oMSkgZm9yIG1vcmUgaW5mb3JtYXRpb24gYWJvdXQgdGhlIGZvbGxvd2luZyBhY3Rpb25zLiIKK21zZ3N0ciAiIgorIkNvbnN1bHRlIEI8ZHBrZy1xdWVyeT4oMSkgcGFyYSBtw6FzIGluZm9ybWFjacOzbiBzb2JyZSBsYXMgc2lndWllbnRlcyBhY2Npb25lczoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTozMDgKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiQjwtbD4sIEI8LS1saXN0PiBJPHBhY2thZ2UtbmFtZS1wYXR0ZXJuPi4uLlxuIgorIiAgICBMaXN0IHBhY2thZ2VzIG1hdGNoaW5nIGdpdmVuIHBhdHRlcm4uXG4iCisiQjwtcz4sIEI8LS1zdGF0dXM+IEk8cGFja2FnZS1uYW1lPi4uLlxuIgorIiAgICBSZXBvcnQgc3RhdHVzIG9mIHNwZWNpZmllZCBwYWNrYWdlLlxuIgorIkI8LUw+LCBCPC0tbGlzdGZpbGVzPiBJPHBhY2thZ2UtbmFtZT4uLi5cbiIKKyIgICAgTGlzdCBmaWxlcyBpbnN0YWxsZWQgdG8geW91ciBzeXN0ZW0gZnJvbSBJPHBhY2thZ2UtbmFtZT4uXG4iCisiQjwtUz4sIEI8LS1zZWFyY2g+IEk8ZmlsZW5hbWUtc2VhcmNoLXBhdHRlcm4+Li4uXG4iCisiICAgIFNlYXJjaCBmb3IgYSBmaWxlbmFtZSBmcm9tIGluc3RhbGxlZCBwYWNrYWdlcy5cbiIKKyJCPC1wPiwgQjwtLXByaW50LWF2YWlsPiBJPHBhY2thZ2UtbmFtZT4uLi5cbiIKKyIgICAgRGlzcGxheSBkZXRhaWxzIGFib3V0IEk8cGFja2FnZS1uYW1lPiwgYXMgZm91bmQgaW5cbiIKKyIgICAgSTwvdmFyL2xpYi9kcGtnL2F2YWlsYWJsZT4uIFVzZXJzIG9mIEFQVC1iYXNlZCBmcm9udGVuZHNcbiIKKyIgICAgc2hvdWxkIHVzZSBCPGFwdC1jYWNoZSBzaG93PiBJPHBhY2thZ2UtbmFtZT4gaW5zdGVhZC5cbiIKK21zZ3N0ciAiIgorIkI8LWw+IHwgQjwtLWxpc3Q+IEk8cGF0csOzbi1ub21icmUtcGFxdWV0ZT4gLi4uXG4iCisiICAgIExpc3RhIGxvcyBwYXF1ZXRlcyBjdXlvIG5vbWJyZSBlbmNhamEgZW4gZWwgcGF0csOzbiBkYWRvLlxuIgorIkI8LXM+IHwgQjwtLXN0YXR1cz4gSTxub21icmUtcGFxdWV0ZT4gLi4uXG4iCisiICAgIEluZm9ybWEgZGVsIGVzdGFkbyBkZWwgcGFxdWV0ZSBlc3BlY2lmaWNhZG8uXG4iCisiQjwtTD4gfCBCPC0tbGlzdGZpbGVzPiBJPHBhcXVldGU+IC4uLlxuIgorIiAgICBMaXN0YSBsb3MgZmljaGVyb3MgaW5zdGFsYWRvcyBlbiBlbCBzaXN0ZW1hIHF1ZSBwZXJ0ZW5lY2VuIGFcbiIKKyIgICAgQjxwYXF1ZXRlPi5cbiIKKyJCPC1TPiB8IEI8LS1zZWFyY2g+IEk8cGF0csOzbi1iw7pzcXVlZGEtZmljaGVyb3M+IC4uLlxuIgorIiAgICBCdXNjYSB1biBmaWNoZXJvIGVuIGxvcyBwYXF1ZXRlcyBpbnN0YWxhZG9zLlxuIgorIkI8LXA+IHwgQjwtLXByaW50LWF2YWlsPiBJPHBhcXVldGU+IC4uLlxuIgorIiAgICBJbXByaW1lIGluZm9ybWFjacOzbiBzb2JyZSBlbCBJPHBhcXVldGU+LCBleHRyYcOtZGEgZGVcbiIKKyIgICAgSTwvdmFyL2xpYi9kcGtnL2F2YWlsYWJsZT4uIExvcyB1c3VhcmlvcyBkZSBpbnRlcmZhY2VzIGRlIEFQVFxuIgorIiAgICBkZWJlcsOtYW4gdXNhciBCPGFwdC1jYWNoZSBzaG93PiBJPHBhcXVldGU+LlxuIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy4xOjMxMCBkcGtnLWFyY2hpdGVjdHVyZS4xOjY3IGRwa2ctYnVpbGRwYWNrYWdlLjE6NTAKKyM6IGRwa2ctY2hlY2tidWlsZGRlcHMuMToxOCBkcGtnLWRpc3RhZGRmaWxlLjE6MjcgZHBrZy1kZWIuMToxNzkKKyM6IGRwa2ctZGl2ZXJ0Ljg6NDIgZHBrZy1nZW5jaGFuZ2VzLjE6MTcgZHBrZy1nZW5jb250cm9sLjE6MzcKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM2OSBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjI3IGRwa2ctbmFtZS4xOjMwCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTUgZHBrZy1xdWVyeS4xOjExNyBkcGtnLXNjYW5wYWNrYWdlcy4xOjcxCisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6NDQgZHBrZy1zaGxpYmRlcHMuMToxMDYgZHBrZy1zcGxpdC4xOjEzMworIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo1MSBkcGtnLXRyaWdnZXIuMTozOCBkcGtnLXZlbmRvci4xOjM1IGRzZWxlY3QuMTozNgorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxMDMgdXBkYXRlLWFsdGVybmF0aXZlcy44OjMyMworIywgbm8td3JhcAorbXNnaWQgIk9QVElPTlMiCittc2dzdHIgIk9QQ0lPTkVTIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzE2Cittc2dpZCAiIgorIkFsbCBvcHRpb25zIGNhbiBiZSBzcGVjaWZpZWQgYm90aCBvbiB0aGUgY29tbWFuZCBsaW5lIGFuZCBpbiB0aGUgQjxkcGtnPiAiCisiY29uZmlndXJhdGlvbiBmaWxlIEk8L2V0Yy9kcGtnL2Rwa2cuY2ZnPiBvciB0aGUgZmlsZXMgb24gdGhlIGNvbmZpZ3VyYXRpb24gIgorImRpcmVjdG9yeSBJPC9ldGMvZHBrZy9kcGtnLmNmZy5kLz4uIEVhY2ggbGluZSBpbiB0aGUgY29uZmlndXJhdGlvbiBmaWxlIGlzICIKKyJlaXRoZXIgYW4gb3B0aW9uIChleGFjdGx5IHRoZSBzYW1lIGFzIHRoZSBjb21tYW5kIGxpbmUgb3B0aW9uIGJ1dCB3aXRob3V0ICIKKyJsZWFkaW5nIGRhc2hlcykgb3IgYSBjb21tZW50IChpZiBpdCBzdGFydHMgd2l0aCBhIEI8Iz4pLiIKK21zZ3N0ciAiIgorIlRvZGFzIGxhcyBvcGNpb25lcyBzZSBwdWVkZW4gZGVmaW5pciBlbiBsYSBsw61uZWEgZGUgw7NyZGVuZXMsIGVuIGVsIGZpY2hlcm8gIgorImRlIGNvbmZpZ3VyYWNpw7NuIGRlIEI8ZHBrZz4gSTwvZXRjL2Rwa2cvZHBrZy5jZmc+IHkgZW4gZWwgZGlyZWN0b3JpbyBkZSAiCisiY29uZmlndXJhY2nDs24gSTwvZXRjL2Rwa2cvZHBrZy5jZmcuZC8+LiBDYWRhIGzDrW5lYSBkZSBlc3RlIGZpY2hlcm8gZXMgYmllbiAiCisidW5hIG9wY2nDs24gKGV4YWN0YW1lbnRlIGxhIG1pc21hIHF1ZSBlbiBsYSBsw61uZWEgZGUgw7NyZGVuZXMsIHBlcm8gc2luIGxvcyAiCisiZ3Vpb25lcyBhbCBwcmluY2lwaW8pIG8gYmllbiB1biBjb21lbnRhcmlvIChzaSBlbXBpZXphIGNvbiBCPCM+KS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MzE3CisjLCBuby13cmFwCittc2dpZCAiQjwtLWFib3J0LWFmdGVyPT5JPG51bWJlcj4iCittc2dzdHIgIkI8LS1hYm9ydC1hZnRlcj0+STxuw7ptZXJvPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjMyMAorbXNnaWQgIkNoYW5nZSBhZnRlciBob3cgbWFueSBlcnJvcnMgQjxkcGtnPiB3aWxsIGFib3J0LiBUaGUgZGVmYXVsdCBpcyA1MC4iCittc2dzdHIgIiIKKyJNb2RpZmljYSBjdcOhbnRvcyBlcnJvcmVzIGxsZXZhbiBhIEI8ZHBrZz4gYSBpbnRlcnJ1bXBpciBlbCBwcm9jZXNvLiBFbCB2YWxvciAiCisicG9yIG9taXNpw7NuIGVzIDUwLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTozMjAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1CPiwgQjwtLWF1dG8tZGVjb25maWd1cmU+IgorbXNnc3RyICJCPC1CPiwgQjwtLWF1dG8tZGVjb25maWd1cmU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzI2Cittc2dpZCAiIgorIldoZW4gYSBwYWNrYWdlIGlzIHJlbW92ZWQsIHRoZXJlIGlzIGEgcG9zc2liaWxpdHkgdGhhdCBhbm90aGVyIGluc3RhbGxlZCAiCisicGFja2FnZSBkZXBlbmRlZCBvbiB0aGUgcmVtb3ZlZCBwYWNrYWdlLiBTcGVjaWZ5aW5nIHRoaXMgb3B0aW9uIHdpbGwgY2F1c2UgIgorImF1dG9tYXRpYyBkZWNvbmZpZ3VyYXRpb24gb2YgdGhlIHBhY2thZ2Ugd2hpY2ggZGVwZW5kZWQgb24gdGhlIHJlbW92ZWQgIgorInBhY2thZ2UuIgorbXNnc3RyICIiCisiQWwgZWxpbWluYXIgdW4gcGFxdWV0ZSBwdWVkZSBxdWUgb3RybyBkZXBlbmRhIGRlIMOpbC4gRGVmaW5pciBlc3RhIG9wY2nDs24gIgorInByb2R1Y2lyw6EgbGEgZGVzY29uZmlndXJhY2nDs24gYXV0b23DoXRpY2EgZGVsIHBhcXVldGUgcXVlIGRlcGVuZMOtYSBkZWwgIgorInBhcXVldGUgZWxpbWluYWRvLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTozMjYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1EPkk8b2N0YWw+QjwsIC0tZGVidWc9Pkk8b2N0YWw+IgorbXNnc3RyICJCPC1EPkk8b2N0YWw+QjwsIC0tZGVidWc9Pkk8b2N0YWw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzMyCittc2dpZCAiIgorIlN3aXRjaCBkZWJ1Z2dpbmcgb24uIEk8b2N0YWw+IGlzIGZvcm1lZCBieSBiaXR3aXNlLW9ycmluZyBkZXNpcmVkIHZhbHVlcyAiCisidG9nZXRoZXIgZnJvbSB0aGUgbGlzdCBiZWxvdyAobm90ZSB0aGF0IHRoZXNlIHZhbHVlcyBtYXkgY2hhbmdlIGluIGZ1dHVyZSAiCisicmVsZWFzZXMpLiBCPC1EaD4gb3IgQjwtLWRlYnVnPWhlbHA+IGRpc3BsYXkgdGhlc2UgZGVidWdnaW5nIHZhbHVlcy4iCittc2dzdHIgIiIKKyJBY3RpdmEgZWwgbW9kbyBkZSBkZXB1cmFjacOzbi4gRWwgcGFyw6FtZXRybyBJPG9jdGFsPiBzZSBmb3JtYSB1bmllbmRvIGxvcyAiCisidmFsb3JlcyBkZSBsYSBzaWd1aWVudGUgbGlzdGEgbWVkaWFudGUgbGEgb3BlcmFjacOzbiBJPG9yPiBhIG5pdmVsIGRlIGJpdHMgIgorIih0ZW5nYSBlbiBjdWVudGEgcXVlIGVzdG9zIHZhbG9yZXMgcG9kcsOtYW4gY2FtYmlhciBlbiBmdXR1cmFzIHZlcnNpb25lcykuIEI8LSIKKyJEaD4gbyBCPC0tZGVidWc9aGVscD4gbXVlc3RyYW4gZXN0b3MgdmFsb3Jlcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTozNDcKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiIgorI3wgIiAgICBudW1iZXIgIGRlc2NyaXB0aW9uXG4iCisjfCAiICAgICAgICAgMSAgIEdlbmVyYWxseSBoZWxwZnVsIHByb2dyZXNzIGluZm9ybWF0aW9uXG4iCisjfCAiICAgICAgICAgMiAgIEludm9jYXRpb24gYW5kIHN0YXR1cyBvZiBtYWludGFpbmVyIHNjcmlwdHNcbiIKKyN8ICIgICAgICAgIDEwICAgT3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkXG4iCisjfCAiICAgICAgIDEwMCAgIExvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkXG4iCisjfCAiICAgICAgICAyMCAgIE91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGVcbiIKKyN8ICIgICAgICAgMjAwICAgTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggY29uZmlndXJhdGlvbiBmaWxlXG4iCisjfCAiICAgICAgICA0MCAgIERlcGVuZGVuY2llcyBhbmQgY29uZmxpY3RzXG4iCisjfCAiICAgICAgIDQwMCAgIExvdHMgb2YgZGVwZW5kZW5jaWVzL2NvbmZsaWN0cyBvdXRwdXRcbiIKKyN8ICIgICAgIDEwMDAwICAgVHJpZ2dlciBhY3RpdmF0aW9uIGFuZCBwcm9jZXNzaW5nXG4iCisjfCAiICAgICAyMDAwMCAgIExvdHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2Vyc1xuIgorI3wgIiAgICAgNDAwMDAgICBTaWxseSBhbW91bnRzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnNcbiIKKyN8ICIgICAgICAxMDAwICAgTG90cyBvZiBkcml2ZWwgYWJvdXQgZS5nLiB0aGUgZHBrZy9pbmZvIGRpclxuIgorI3wgIiAgICAgIDIwMDAgICBJbnNhbmUgYW1vdW50cyBvZiBkcml2ZWxcbiIKK21zZ2lkICIiCisiICAgIE51bWJlciAgIERlc2NyaXB0aW9uXG4iCisiICAgICAgICAgMSAgIEdlbmVyYWxseSBoZWxwZnVsIHByb2dyZXNzIGluZm9ybWF0aW9uXG4iCisiICAgICAgICAgMiAgIEludm9jYXRpb24gYW5kIHN0YXR1cyBvZiBtYWludGFpbmVyIHNjcmlwdHNcbiIKKyIgICAgICAgIDEwICAgT3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkXG4iCisiICAgICAgIDEwMCAgIExvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkXG4iCisiICAgICAgICAyMCAgIE91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGVcbiIKKyIgICAgICAgMjAwICAgTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggY29uZmlndXJhdGlvbiBmaWxlXG4iCisiICAgICAgICA0MCAgIERlcGVuZGVuY2llcyBhbmQgY29uZmxpY3RzXG4iCisiICAgICAgIDQwMCAgIExvdHMgb2YgZGVwZW5kZW5jaWVzL2NvbmZsaWN0cyBvdXRwdXRcbiIKKyIgICAgIDEwMDAwICAgVHJpZ2dlciBhY3RpdmF0aW9uIGFuZCBwcm9jZXNzaW5nXG4iCisiICAgICAyMDAwMCAgIExvdHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2Vyc1xuIgorIiAgICAgNDAwMDAgICBTaWxseSBhbW91bnRzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnNcbiIKKyIgICAgICAxMDAwICAgTG90cyBvZiBkcml2ZWwgYWJvdXQgZS5nLiB0aGUgZHBrZy9pbmZvIGRpclxuIgorIiAgICAgIDIwMDAgICBJbnNhbmUgYW1vdW50cyBvZiBkcml2ZWxcbiIKK21zZ3N0ciAiIgorIiBuw7ptZXJvICBkZXNjcmlwY2nDs25cbiIKKyIgICAgIDEgICBJbmZvcm1hY2nDs24gZGUgcHJvZ3Jlc28gZ2VuZXJhbG1lbnRlIMO6dGlsXG4iCisiICAgICAyICAgSW52b2NhY2nDs24geSBlc3RhZG8gZGUgbG9zIHNjcmlwdHMgZGVsIHBhcXVldGVcbiIKKyIgICAgMTAgICBTYWxpZGEgcG9yIGNhZGEgZmljaGVybyBwcm9jZXNhZG9cbiIKKyIgICAxMDAgICBNdWNoYSBzYWxpZGEgcG9yIGNhZGEgZmljaGVybyBwcm9jZXNhZG9cbiIKKyIgICAgMjAgICBTYWxpZGEgcG9yIGNhZGEgwqtjb25mZmlsZcK7XG4iCisiICAgMjAwICAgTXVjaGEgc2FsaWRhIHBvciBjYWRhIMKrY29uZmZpbGXCu1xuIgorIiAgICA0MCAgIERlcGVuZGVuY2lhcyB5IGNvbmZsaWN0b3NcbiIKKyIgICA0MDAgICBNdWNoYSBzYWxpZGEgc29icmUgZGVwZW5kZW5jaWFzIHkgY29uZmxpY3Rvc1xuIgorIiAxMDAwMCAgIEFjdGl2YWNpw7NuIGRlIGxvcyBkaXNwYXJhZG9yZXMgeSBwcm9jZXNhZG9cbiIKKyIgMjAwMDAgICBVbmEgZ3JhbiBpbmZvcm1hY2nDs24gZGUgbG9zIGRpc3BhcmFkb3Jlc1xuIgorIiA0MDAwMCAgIE5pdmVsZXMgcmlkw61jdWxvcyBkZSBpbmZvcm1hY2nDs24gZGUgbG9zIGRpc3BhcmFkb3Jlc1xuIgorIiAgMTAwMCAgIFBhcnJhZmFkYXMgc29icmUgZWwgZGlyZWN0b3JpbyBkcGtnL2luZm9cbiIKKyIgIDIwMDAgICBNb250YcOxYXMgZGUgcGFycmFmYWRhcyAocGVyanVkaWNhIGxhIHNhbHVkKVxuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjM0NworIywgbm8td3JhcAorbXNnaWQgIkI8LS1mb3JjZS0+STx0aGluZ3M+LCBCPC0tbm8tZm9yY2UtPkk8dGhpbmdzPiwgQjwtLXJlZnVzZS0+STx0aGluZ3M+IgorbXNnc3RyICJCPC0tZm9yY2UtPkk8Y29zYXM+LCBCPC0tbm8tZm9yY2UtPkk8Y29zYXM+LCBCPC0tcmVmdXNlLT5JPGNvc2FzPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjM1NAorbXNnaWQgIiIKKyJGb3JjZSBvciByZWZ1c2UgKEI8bm8tZm9yY2U+IGFuZCBCPHJlZnVzZT4gbWVhbiB0aGUgc2FtZSB0aGluZykgIHRvIGRvIHNvbWUgIgorInRoaW5ncy4gSTx0aGluZ3M+IGlzIGEgY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2YgdGhpbmdzIHNwZWNpZmllZCBiZWxvdy4gQjwtLSIKKyJmb3JjZS1oZWxwPiBkaXNwbGF5cyBhIG1lc3NhZ2UgZGVzY3JpYmluZyB0aGVtLiAgVGhpbmdzIG1hcmtlZCB3aXRoICgqKSBhcmUgIgorImZvcmNlZCBieSBkZWZhdWx0LiIKK21zZ3N0ciAiIgorIkZ1ZXJ6YSBvIHJlY2hhemEgKEI8bm8tZm9yY2U+IHkgQjxyZWZ1c2U+IHNpZ25pZmljYW4gbG8gbWlzbW8pIGhhY2VyIGNpZXJ0YXMgIgorImNvc2FzLiBFbCBwYXLDoW1ldHJvIEk8Y29zYXM+IGVzIHVuYSBsaXN0YSBkZSBjb3NhcyBkZWZpbmlkYXMgYSBjb250aW51YWNpw7NuICIKKyJ5IHNlcGFyYWRhcyBwb3IgY29tYXMuIExhIG9wY2nDs24gQjwtLWZvcmNlLWhlbHA+IG11ZXN0cmEgdW4gbWVuc2FqZSBxdWUgbGFzICIKKyJkZXNjcmliZS4gTGFzIGNvc2FzIG1hcmNhZGFzIGNvbiAoKikgc2UgZnVlcnphbiBwb3Igb21pc2nDs24uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzU4Cittc2dpZCAiIgorIkk8V2FybmluZzogVGhlc2Ugb3B0aW9ucyBhcmUgbW9zdGx5IGludGVuZGVkIHRvIGJlIHVzZWQgYnkgZXhwZXJ0cyBvbmx5LiAiCisiVXNpbmcgdGhlbSB3aXRob3V0IGZ1bGx5IHVuZGVyc3RhbmRpbmcgdGhlaXIgZWZmZWN0cyBtYXkgYnJlYWsgeW91ciB3aG9sZSAiCisic3lzdGVtLj4iCittc2dzdHIgIiIKKyJJPEF2aXNvOiBFc3RhcyBvcGNpb25lcyBlc3TDoW4gcGVuc2FkYXMgYsOhc2ljYW1lbnRlIHBhcmEgdW4gdXNvIGV4cGVydG8uICIKKyJVc2FybGFzIHNpbiBjb25vY2VyIHRvdGFsbWVudGUgc3VzIGVmZWN0b3MgcG9kcsOtYSBkZWphciBzdSBzaXN0ZW1hIHNpbiAiCisiZnVuY2lvbmFtaWVudG8uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjM2MQorbXNnaWQgIkI8YWxsPjogVHVybnMgb24gKG9yIG9mZikgYWxsIGZvcmNlIG9wdGlvbnMuIgorbXNnc3RyICJCPGFsbD46IEFjdGl2YSAobyBkZXNhY3RpdmEpIHRvZGFzIGxhcyBvcGNpb25lcyBkZSBmb3J6YXIuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzY0Cittc2dpZCAiIgorIkI8ZG93bmdyYWRlPigqKTogSW5zdGFsbCBhIHBhY2thZ2UsIGV2ZW4gaWYgbmV3ZXIgdmVyc2lvbiBvZiBpdCBpcyBhbHJlYWR5ICIKKyJpbnN0YWxsZWQuIgorbXNnc3RyICIiCisiQjxkb3duZ3JhZGU+KCopOiBJbnN0YWxhIHVuIHBhcXVldGUsIGluY2x1c28gc2kgeWEgZXhpc3RlIHVuYSB2ZXJzacOzbiBtw6FzICIKKyJudWV2YSBpbnN0YWxhZGEuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzcxCittc2dpZCAiIgorIkk8V2FybmluZzogQXQgcHJlc2VudCBkcGtnIGRvZXMgbm90IGRvIGFueSBkZXBlbmRlbmN5IGNoZWNraW5nIG9uIGRvd25ncmFkZXMgIgorImFuZCB0aGVyZWZvcmUgd2lsbCBub3Qgd2FybiB5b3UgaWYgdGhlIGRvd25ncmFkZSBicmVha3MgdGhlIGRlcGVuZGVuY3kgb2YgIgorInNvbWUgb3RoZXIgcGFja2FnZS4gVGhpcyBjYW4gaGF2ZSBzZXJpb3VzIHNpZGUgZWZmZWN0cywgZG93bmdyYWRpbmcgIgorImVzc2VudGlhbCBzeXN0ZW0gY29tcG9uZW50cyBjYW4gZXZlbiBtYWtlIHlvdXIgd2hvbGUgc3lzdGVtIHVudXNhYmxlLiBVc2UgIgorIndpdGggY2FyZS4+IgorbXNnc3RyICIiCisiSTxBdmlzbzogYWN0dWFsbWVudGUgZHBrZyBubyBjb21wcnVlYmEgZGUgbmluZ3VuYSBtYW5lcmEgbGFzIGRlcGVuZGVuY2lhcyBhbCAiCisiZGVzYWN0dWFsaXphciB5IHBvciBsbyB0YW50byBubyBhdmlzYXLDoSBzaSByb21wZSBhbGd1bmEgZGVwZW5kZW5jaWEgZGUgb3RybyAiCisicGFxdWV0ZS4gVW5hIHNpdHVhY2nDs24gYXPDrSBwb2Ryw61hIHRlbmVyIGVmZWN0b3Mgc2VjdW5kYXJpb3MgZ3JhdmVzOyAiCisiZGVzYWN0dWFsaXphciBjb21wb25lbnRlcyBlc2VuY2lhbGVzIGRlbCBzaXN0ZW1hIGluY2x1c28gcG9kcsOtYSBpbnV0aWxpemFyICIKKyJzdSBzaXN0ZW1hIHBvciBjb21wbGV0by4gw5pzZWxvIGNvbiBjdWlkYWRvLj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTozNzUKK21zZ2lkICIiCisiQjxjb25maWd1cmUtYW55PjogQ29uZmlndXJlIGFsc28gYW55IHVucGFja2VkIGJ1dCB1bmNvbmZpZ3VyZWQgcGFja2FnZXMgb24gIgorIndoaWNoIHRoZSBjdXJyZW50IHBhY2thZ2UgZGVwZW5kcy4iCittc2dzdHIgIiIKKyJCPGNvbmZpZ3VyZS1hbnk+OiBDb25maWd1cmEgdGFtYmnDqW4gbG9zIHBhcXVldGVzIGRlc2VtcGFxdWV0YWRvcyBwZXJvIG5vICIKKyJjb25maWd1cmFkb3Mgc29icmUgbG9zIHF1ZSBkZXBlbmRlIGVsIHBhcXVldGUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6Mzc4Cittc2dpZCAiQjxob2xkPjogUHJvY2VzcyBwYWNrYWdlcyBldmVuIHdoZW4gbWFya2VkIFwiaG9sZFwiLiIKK21zZ3N0ciAiIgorIkI8aG9sZD46IFByb2Nlc2EgbG9zIHBhcXVldGVzIGluY2x1c28gc2kgZXN0w6FuIG1hcmNhZG9zIGNvbiDCq2hvbGTCuyAocmV0ZW5lcikuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzgzCittc2dpZCAiIgorIkI8cmVtb3ZlLXJlaW5zdHJlcT46IFJlbW92ZSBhIHBhY2thZ2UsIGV2ZW4gaWYgaXQncyBicm9rZW4gYW5kIG1hcmtlZCB0byAiCisicmVxdWlyZSByZWluc3RhbGxhdGlvbi4gVGhpcyBtYXksIGZvciBleGFtcGxlLCBjYXVzZSBwYXJ0cyBvZiB0aGUgcGFja2FnZSB0byAiCisicmVtYWluIG9uIHRoZSBzeXN0ZW0sIHdoaWNoIHdpbGwgdGhlbiBiZSBmb3Jnb3R0ZW4gYnkgQjxkcGtnPi4iCittc2dzdHIgIiIKKyJCPHJlbW92ZS1yZWluc3RyZXE+OiBFbGltaW5hIHVuIHBhcXVldGUgaW5jbHVzbyBzaSBlc3TDoSByb3RvIHkgbWFyY2FkbyBwYXJhICIKKyJ1bmEgbmVjZXNhcmlhIHJlaW5zdGFsYWNpw7NuLiBFc3RvIHBvZHLDrWEgY2F1c2FyLCBwb3IgZWplbXBsbywgcXVlIGFsZ3VuYXMgIgorInBhcnRlcyBkZWwgcGFxdWV0ZSBxdWVkYXNlbiBlbiBlbCBzaXN0ZW1hLCBkZSBsYXMgcXVlIEI8ZHBrZz4gc2Ugb2x2aWRhcsOtYS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTozODgKK21zZ2lkICIiCisiQjxyZW1vdmUtZXNzZW50aWFsPjogUmVtb3ZlLCBldmVuIGlmIHRoZSBwYWNrYWdlIGlzIGNvbnNpZGVyZWQgZXNzZW50aWFsLiAiCisiRXNzZW50aWFsIHBhY2thZ2VzIGNvbnRhaW4gbW9zdGx5IHZlcnkgYmFzaWMgVW5peCBjb21tYW5kcy4gUmVtb3ZpbmcgdGhlbSAiCisibWlnaHQgY2F1c2UgdGhlIHdob2xlIHN5c3RlbSB0byBzdG9wIHdvcmtpbmcsIHNvIHVzZSB3aXRoIGNhdXRpb24uIgorbXNnc3RyICIiCisiQjxyZW1vdmUtZXNzZW50aWFsPjogRWxpbWluYSwgaW5jbHVzbyBzaSBlbCBwYXF1ZXRlIHNlIGNvbnNpZGVyYSBlc2VuY2lhbC4gIgorIkxvcyBwYXF1ZXRlcyBlc2VuY2lhbGVzIGNvbnRpZW5lbiBwcmluY2lwYWxtZW50ZSDDs3JkZW5lcyBkZSBVbml4IG11eSAiCisiYsOhc2ljYXMuIEJvcnJhcmxvcyBwb2Ryw61hIGhhY2VyIHF1ZSBlbCBzaXN0ZW1hIGRlamFzZSBkZSBmdW5jaW9uYXIgZW4gIgorImFic29sdXRvIGFzw60gcXVlIHVzZSBlc3RhIG9wY2nDs24gY29uIGN1aWRhZG8uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzkxCittc2dpZCAiQjxkZXBlbmRzPjogVHVybiBhbGwgZGVwZW5kZW5jeSBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzLiIKK21zZ3N0ciAiQjxkZXBlbmRzPjogQ29udmllcnRlIHRvZG9zIGxvcyBwcm9ibGVtYXMgZGUgZGVwZW5kZW5jaWFzIGVuIGF2aXNvcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTozOTQKK21zZ2lkICIiCisiQjxkZXBlbmRzLXZlcnNpb24+OiBEb24ndCBjYXJlIGFib3V0IHZlcnNpb25zIHdoZW4gY2hlY2tpbmcgZGVwZW5kZW5jaWVzLiIKK21zZ3N0ciAiIgorIkI8ZGVwZW5kcy12ZXJzaW9uPjogTm8gdGllbmUgZW4gY3VlbnRhIGxhcyB2ZXJzaW9uZXMgYWwgY29tcHJvYmFyIGxhcyAiCisiZGVwZW5kZW5jaWFzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjM5NworbXNnaWQgIkI8YnJlYWtzPjogSW5zdGFsbCwgZXZlbiBpZiB0aGlzIHdvdWxkIGJyZWFrIGFub3RoZXIgcGFja2FnZS4iCittc2dzdHIgIkI8YnJlYWtzPjogSW5zdGFsYSwgYXVucXVlIHN1cG9uZ2Egcm9tcGVyIG90cm8gcGFxdWV0ZS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0MDEKK21zZ2lkICIiCisiQjxjb25mbGljdHM+OiBJbnN0YWxsLCBldmVuIGlmIGl0IGNvbmZsaWN0cyB3aXRoIGFub3RoZXIgcGFja2FnZS4gVGhpcyBpcyAiCisiZGFuZ2Vyb3VzLCBmb3IgaXQgd2lsbCB1c3VhbGx5IGNhdXNlIG92ZXJ3cml0aW5nIG9mIHNvbWUgZmlsZXMuIgorbXNnc3RyICIiCisiQjxjb25mbGljdHM+OiBJbnN0YWxhLCBpbmNsdXNvIHNpIGVudHJhIGVuIGNvbmZsaWN0byBjb24gb3RybyBwYXF1ZXRlLiBFc3RhICIKKyJvcGNpw7NuIGVzIHBlbGlncm9zYSBkYWRvIHF1ZSBnZW5lcmFsbWVudGUgc29icmVlc2NyaWJpcsOhIGFsZ3Vub3MgZmljaGVyb3MuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDA2Cittc2dpZCAiIgorIkI8Y29uZm1pc3M+OiBBbHdheXMgaW5zdGFsbCBhIG1pc3NpbmcgY29uZmZpbGUuIFRoaXMgaXMgZGFuZ2Vyb3VzLCBzaW5jZSBpdCAiCisibWVhbnMgbm90IHByZXNlcnZpbmcgYSBjaGFuZ2UgKHJlbW92aW5nKSBtYWRlIHRvIHRoZSBmaWxlLiIKK21zZ3N0ciAiIgorIkI8Y29uZm1pc3M+OiBJbnN0YWxhIHNpZW1wcmUgdW4gZmljaGVybyBkZSBjb25maWd1cmFjacOzbiDCq2NvbmZmaWxlwrssIGRlIG5vICIKKyJleGlzdGlyLiBFcyBwZWxpZ3Jvc28gcG9ycXVlIG5vIGd1YXJkYSBsb3MgY2FtYmlvcyAobGEgZWxpbWluYWNpw7NuKSBoZWNob3MgIgorImFsIGZpY2hlcm8uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDExCittc2dpZCAiIgorIkI8Y29uZm5ldz46IElmIGEgY29uZmZpbGUgaGFzIGJlZW4gbW9kaWZpZWQgYWx3YXlzIGluc3RhbGwgdGhlIG5ldyB2ZXJzaW9uICIKKyJ3aXRob3V0IHByb21wdGluZywgdW5sZXNzIHRoZSBCPC0tZm9yY2UtY29uZmRlZj4gaXMgYWxzbyBzcGVjaWZpZWQsIGluIHdoaWNoICIKKyJjYXNlIHRoZSBkZWZhdWx0IGFjdGlvbiBpcyBwcmVmZXJyZWQuIgorbXNnc3RyICIiCisiQjxjb25mbmV3PjogU2kgc2UgaGEgbW9kaWZpY2FkbyB1biBmaWNoZXJvIGRlIGNvbmZpZ3VyYWNpw7NuIMKrY29uZmZpbGXCuyAiCisiaW5zdGFsYSBzaWVtcHJlIGxhIG51ZXZhIHZlcnNpw7NuIHNpbiBwcmVndW50YXIsIGEgbWVub3MgcXVlIHNlIGRlZmluYSAiCisidGFtYmnDqW4gbGEgb3BjacOzbiBCPC0tZm9yY2UtY29uZmRlZj4sIGVuIGN1eW8gY2FzbyBzZSB0b21hIGxhIGFjY2nDs24gIgorInByZWRlZmluaWRhLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQxNgorbXNnaWQgIiIKKyJCPGNvbmZvbGQ+OiBJZiBhIGNvbmZmaWxlIGhhcyBiZWVuIG1vZGlmaWVkIGFsd2F5cyBrZWVwIHRoZSBvbGQgdmVyc2lvbiAiCisid2l0aG91dCBwcm9tcHRpbmcsIHVubGVzcyB0aGUgQjwtLWZvcmNlLWNvbmZkZWY+IGlzIGFsc28gc3BlY2lmaWVkLCBpbiB3aGljaCAiCisiY2FzZSB0aGUgZGVmYXVsdCBhY3Rpb24gaXMgcHJlZmVycmVkLiIKK21zZ3N0ciAiIgorIkI8Y29uZm9sZD46IFNpIHNlIGhhIG1vZGlmaWNhZG8gdW4gZmljaGVybyBkZSBjb25maWd1cmFjacOzbiDCq2NvbmZmaWxlwrssICIKKyJtYW50ZW5lciBzaWVtcHJlIGxhIHZlcnNpw7NuIGV4aXN0ZW50ZSBzaW4gcHJlZ3VudGFyLCBhIG1lbm9zIHF1ZSB0YW1iacOpbiBzZSAiCisiZGVmaW5hIGxhIG9wY2nDs24gQjwtLWZvcmNlLWNvbmZkZWY+LCBlbiBjdXlvIGNhc28gc2UgdG9tYSBsYSBhY2Npw7NuICIKKyJwcmVkZWZpbmlkYS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0MjIKK21zZ2lkICIiCisiQjxjb25mZGVmPjogSWYgYSBjb25mZmlsZSBoYXMgYmVlbiBtb2RpZmllZCBhbHdheXMgY2hvb3NlIHRoZSBkZWZhdWx0ICIKKyJhY3Rpb24uIElmIHRoZXJlIGlzIG5vIGRlZmF1bHQgYWN0aW9uIGl0IHdpbGwgc3RvcCB0byBhc2sgdGhlIHVzZXIgdW5sZXNzICIKKyJCPC0tZm9yY2UtY29uZm5ldz4gb3IgQjwtLWZvcmNlLWNvbmZvbGQ+IGlzIGFsc28gYmVlbiBnaXZlbiwgaW4gd2hpY2ggY2FzZSAiCisiaXQgd2lsbCB1c2UgdGhhdCB0byBkZWNpZGUgdGhlIGZpbmFsIGFjdGlvbi4iCittc2dzdHIgIiIKKyJCPGNvbmZkZWY+OiBTaSBzZSBoYSBtb2RpZmljYWRvIHVuIGZpY2hlcm8gZGUgY29uZmlndXJhY2nDs24gwqtjb25mZmlsZcK7LCAiCisiZWxlZ2lyIHNpZW1wcmUgbGEgb3BjacOzbiBwcmVkZWZpbmlkYS4gU2kgbm8gZXhpc3RlIHNlIGRldGVuZHLDoSB5IHByZWd1bnRhcsOhICIKKyJhbCB1c3VhcmlvLCBhIG5vIHNlciBxdWUgc2UgdXNlbiB0YW1iacOpbiBsYXMgb3BjaW9uZXMgQjwtLWZvcmNlLWNvbmZuZXc+IG8gIgorIkI8LS1mb3JjZS1jb25mb2xkPiwgZW4gY3V5byBjYXNvIHNlIHVzYXLDoSB1bmEgZGUgZXN0YXMgb3BjaW9uZXMgcGFyYSB0b21hciAiCisibGEgZGVjaXNpw7NuIGZpbmFsLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQyOQorbXNnaWQgIiIKKyJCPGNvbmZhc2s+OiBJZiBhIGNvbmZmaWxlIGhhcyBiZWVuIG1vZGlmaWVkIGFsd2F5cyBvZmZlciB0byByZXBsYWNlIGl0IHdpdGggIgorInRoZSB2ZXJzaW9uIGluIHRoZSBwYWNrYWdlLCBldmVuIGlmIHRoZSB2ZXJzaW9uIGluIHRoZSBwYWNrYWdlIGRpZCBub3QgIgorImNoYW5nZS4gSWYgYW55IG9mIEI8LS1mb3JjZS1jb25mbWlzcz4sIEI8LS1mb3JjZS1jb25mbmV3PiwgQjwtLWZvcmNlLSIKKyJjb25mb2xkPiwgb3IgQjwtLWZvcmNlLWNvbmZkZWY+IGlzIGFsc28gZ2l2ZW4sIGl0IHdpbGwgYmUgdXNlZCB0byBkZWNpZGUgdGhlICIKKyJmaW5hbCBhY3Rpb24uIgorbXNnc3RyICIiCisiQjxjb25mZGVmPjogU2kgc2UgaGEgbW9kaWZpY2FkbyB1biBmaWNoZXJvIGRlIGNvbmZpZ3VyYWNpw7NuIMKrY29uZmZpbGXCuywgIgorIm9mcmVjZSBzaWVtcHJlIHJlZW1wbGF6YXIgZXN0ZSBjb24gbGEgdmVyc2nDs24gZW4gZWwgcGFxdWV0ZSBpbmNsdXNvIHNpIGxhICIKKyJ2ZXJzacOzbiBkZWwgcGFxdWV0ZSBubyBoYSBjYW1iaWFkby4gU2kgc2UgaW50cm9kdWNlIGN1YWxxdWllcmEgZGUgbGFzICIKKyJvcGNpb25lcyBCPC0tZm9yY2UtY29uZm5ldz4gbyBCPC0tZm9yY2UtY29uZm9sZD4gbyBCPC0tZm9yY2UtY29uZmRlZj4sIHNlICIKKyJ1c2Fyw6EgZXN0YSBwYXJhIHRvbWFyIGxhIGRlY2lzacOzbiBmaW5hbC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0MzIKK21zZ2lkICJCPG92ZXJ3cml0ZT46IE92ZXJ3cml0ZSBvbmUgcGFja2FnZSdzIGZpbGUgd2l0aCBhbm90aGVyJ3MgZmlsZS4iCittc2dzdHIgIiIKKyJCPG92ZXJ3cml0ZT46IFNvYnJlZXNjcmliZSB1biBmaWNoZXJvIGRlIHVuIHBhcXVldGUgY29uIHVuIGZpY2hlcm8gZGUgb3Ryby4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0MzUKK21zZ2lkICJCPG92ZXJ3cml0ZS1kaXI+IE92ZXJ3cml0ZSBvbmUgcGFja2FnZSdzIGRpcmVjdG9yeSB3aXRoIGFub3RoZXIncyBmaWxlLiIKK21zZ3N0ciAiIgorIkI8b3ZlcndyaXRlLWRpcj46IFNvYnJlZXNjcmliZSB1biBkaXJlY3RvcmlvIGRlIHVuIHBhcXVldGUgY29uIHVuIGZpY2hlcm8gZGUgIgorIm90cm8uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDM4Cittc2dpZCAiIgorIkI8b3ZlcndyaXRlLWRpdmVydGVkPjogT3ZlcndyaXRlIGEgZGl2ZXJ0ZWQgZmlsZSB3aXRoIGFuIHVuZGl2ZXJ0ZWQgdmVyc2lvbi4iCittc2dzdHIgIiIKKyJCPG92ZXJ3cml0ZS1kaXZlcnRlZD46IFNvYnJlZXNjcmliZSB1bmEgdmVyc2nDs24gZGVzdmlhZGEgZGUgdW4gZmljaGVybyBjb24gIgorInVuYSBubyBkZXN2aWFkYS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0NDYKK21zZ2lkICIiCisiQjx1bnNhZmUtaW8+OiBEbyBub3QgcGVyZm9ybSBzYWZlIEkvTyBvcGVyYXRpb25zIHdoZW4gdW5wYWNraW5nLiBDdXJyZW50bHkgIgorInRoaXMgaW1wbGllcyBub3QgcGVyZm9ybWluZyBmaWxlIHN5c3RlbSBzeW5jcyBiZWZvcmUgZmlsZSByZW5hbWVzLCB3aGljaCBpcyAiCisia25vd24gdG8gY2F1c2Ugc3Vic3RhbnRpYWwgcGVyZm9ybWFuY2UgZGVncmFkYXRpb24gb24gc29tZSBmaWxlIHN5c3RlbXMsICIKKyJ1bmZvcnR1bmF0ZWx5IHRoZSBvbmVzIHRoYXQgcmVxdWlyZSB0aGUgc2FmZSBJL08gb24gdGhlIGZpcnN0IHBsYWNlIGR1ZSB0byAiCisidGhlaXIgdW5yZWxpYWJsZSBiZWhhdmlvdXIgY2F1c2luZyB6ZXJvLWxlbmd0aCBmaWxlcyBvbiBhYnJ1cHQgc3lzdGVtICIKKyJjcmFzaGVzLiIKK21zZ3N0ciAiIgorIkI8dW5zYWZlLWlvPjogTm8gcmVhbGl6YSBsYXMgb3BlcmFjaW9uZXMgSS9PIHNlZ3VyYXMgYWwgZGVzZW1wYXF1ZXRhci4gIgorIkFjdHVhbG1lbnRlLCBpbXBsaWNhIHF1ZSBubyBzZSByZWFsaXphIGxhIHNpbmNyb25pemFjacOzbiBkZWwgc2lzdGVtYSBkZSAiCisiZmljaGVyb3MgYW50ZXMgZGUgcmVub21icmFyIHVuIGZpY2hlcm8sIGxvIGN1YWwgY2F1c2EgdW5hIGFwcmVjaWFibGUgIgorImRlZ3JhZGFjacOzbiBkZWwgcmVuZGltaWVudG8gZW4gYWxndW5vcyBzaXN0ZW1hcyBkZSBmaWNoZXJvLiAiCisiRGVzYWZvcnR1bmFkYW1lbnRlLCBsb3MgcXVlIHJlcXVpZXJlbiBJL08gc2VndXJhIHBhcmEgZW1wZXphciBlbiBwcmltZXIgIgorImx1Z2FyIGRlYmlkbyBhIHN1IGNvbXBvcnRhbWllbnRvIGlycmVndWxhciBjYXVzYW4gZmljaGVyb3MgZGUgdGFtYcOxbyBjZXJvIGVuICIKKyJmYWxsb3Mgc2V2ZXJvcyBkZWwgc2lzdGVtYS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0NTIKK21zZ2lkICIiCisiSTxOb3RlPjogRm9yIGV4dDQsIHRoZSBtYWluIG9mZmVuZGVyLCBjb25zaWRlciB1c2luZyBpbnN0ZWFkIHRoZSBtb3VudCAiCisib3B0aW9uIEI8bm9kZWxhbGxvYz4sIHdoaWNoIHdpbGwgZml4IGJvdGggdGhlIHBlcmZvcm1hbmNlIGRlZ3JhZGF0aW9uIGFuZCAiCisidGhlIGRhdGEgc2FmZXR5IGlzc3VlcywgdGhlIGxhdHRlciBieSBtYWtpbmcgdGhlIGZpbGUgc3lzdGVtIG5vdCBwcm9kdWNlICIKKyJ6ZXJvLWxlbmd0aCBmaWxlcyBvbiBhYnJ1cHQgc3lzdGVtIGNyYXNoZXMgd2l0aCBhbnkgc29mdHdhcmUgbm90IGRvaW5nIHN5bmNzICIKKyJiZWZvcmUgYXRvbWljIHJlbmFtZXMuIgorbXNnc3RyICIiCisiSTxOb3RlPjogUGFyYSBleHQ0LCBlbCBzaXN0ZW1hIGNvbiBtw6FzIHByb2JsZW1hcyBkZSBlc3RlIHNlbnRpZG8sIGNvbnNpZGVyZSAiCisidXNhciBsYSBvcGNpw7NuIGRlIG1vbnRhamUgQjxub2RlbGFsbG9jPiwgbG8gcXVlIGFycmVnbGEgbGEgZGVncmFkYWNpw7NuIGRlbCAiCisicmVuZGltaWVudG8geSBsb3MgcHJvYmxlbWFzIGRlIHNlZ3VyaWRhZCBkZSBkYXRvcy4gTG8gw7psdGltbyBsbyBzb2x1Y2lvbmEgIgorImhhY2llbmRvIHF1ZSBlbCBzaXN0ZW1hIGRlIGZpY2hlcm9zIG5vIHByb2R1emNhIGZpY2hlcm9zIGRlIHRhbWHDsW8gY2VybyAiCisiZHVyYW50ZSBmYWxsb3Mgc2V2ZXJvcyBkZWwgc2lzdGVtYSBjb24gY3VhbHF1aWVyIHNvZnR3YXJlIHF1ZSBubyByZWFsaXphIHVuYSAiCisic2luY3Jvbml6YWNpw7NuIGFudGVzIGRlIGxvcyByZW5vbWJyZXMgYXTDs21pY29zLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQ1NQorbXNnaWQgIiIKKyJJPFdhcm5pbmc6IFVzaW5nIHRoaXMgb3B0aW9uIG1pZ2h0IGltcHJvdmUgcGVyZm9ybWFuY2UgYXQgdGhlIGNvc3Qgb2YgbG9zaW5nICIKKyJkYXRhLCB1c2Ugd2l0aCBjYXJlLj4iCittc2dzdHIgIiIKKyJJPEFkdmVydGVuY2lhOiBVc2FyIGVzdGEgb3BjacOzbiBwdWVkZSBhdW1lbnRhciBlbCByZW5kaW1pZW50byBhIGNvc3RhIGRlIGxhICIKKyJww6lyZGlkYSBkZSBkYXRvcy4gw5pzZWxvIGNvbiBjdWlkYWRvLj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0NTgKKyMsIGZ1enp5CisjfCBtc2dpZCAiQjxhcmNoaXRlY3R1cmU+OiBQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB0aGUgd3JvbmcgYXJjaGl0ZWN0dXJlLiIKK21zZ2lkICJCPGFyY2hpdGVjdHVyZT46IFByb2Nlc3MgZXZlbiBwYWNrYWdlcyB3aXRoIHdyb25nIG9yIG5vIGFyY2hpdGVjdHVyZS4iCittc2dzdHIgIiIKKyJCPGFyY2hpdGVjdHVyZT46IENvbnRpbnVhIGVsIHByb2Nlc28sIGluY2x1c28gc2kgbG9zIHBhcXVldGVzIG5vIHNvbiBkZSBsYSAiCisiYXJxdWl0ZWN0dXJhIGFkZWN1YWRhLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQ2MQorIywgZnV6enkKKyN8IG1zZ2lkICJCPGFyY2hpdGVjdHVyZT46IFByb2Nlc3MgZXZlbiBwYWNrYWdlcyB3aXRoIHRoZSB3cm9uZyBhcmNoaXRlY3R1cmUuIgorbXNnaWQgIkI8YmFkLXZlcnNpb24+OiBQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyB2ZXJzaW9ucy4iCittc2dzdHIgIiIKKyJCPGFyY2hpdGVjdHVyZT46IENvbnRpbnVhIGVsIHByb2Nlc28sIGluY2x1c28gc2kgbG9zIHBhcXVldGVzIG5vIHNvbiBkZSBsYSAiCisiYXJxdWl0ZWN0dXJhIGFkZWN1YWRhLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQ2NAorbXNnaWQgIiIKKyJCPGJhZC1wYXRoPjogQjxQQVRIPiBpcyBtaXNzaW5nIGltcG9ydGFudCBwcm9ncmFtcywgc28gcHJvYmxlbXMgYXJlIGxpa2VseS4iCittc2dzdHIgIiIKKyJCPGJhZC1wYXRoPjogQjxQQVRIPiBubyBjb250aWVuZSBhbGd1bm9zIHByb2dyYW1hcyBpbXBvcnRhbnRlcywgYXPDrSBxdWUgZXMgIgorImJhc3RhbnRlIHBvc2libGUgcXVlIGhheWEgcHJvYmxlbWFzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQ2NworbXNnaWQgIkI8bm90LXJvb3Q+OiBUcnkgdG8gKGRlKWluc3RhbGwgdGhpbmdzIGV2ZW4gd2hlbiBub3Qgcm9vdC4iCittc2dzdHIgIiIKKyJCPG5vdC1yb290PjogSW50ZW50YSBsYSAoZGVzKWluc3RhbGFjacOzbiBpbmNsdXNvIHNpIG5vIGVzIGVsIHVzdWFyaW8gwqtyb290wrsuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDcwCittc2dpZCAiQjxiYWQtdmVyaWZ5PjogSW5zdGFsbCBhIHBhY2thZ2UgZXZlbiBpZiBpdCBmYWlscyBhdXRoZW50aWNpdHkgY2hlY2suIgorbXNnc3RyICIiCisiQjxiYWQtdmVyaWZ5PjogSW5zdGFsYSB1biBwYXF1ZXRlIGF1bnF1ZSBmYWxsZSBsYSBjb21wcm9iYWNpw7NuIGRlICIKKyJhdXRlbnRpY2lkYWQuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjQ3MQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1pZ25vcmUtZGVwZW5kcz49STxwYWNrYWdlPiwuLi4iCittc2dzdHIgIkI8LS1pZ25vcmUtZGVwZW5kcz49STxwYXF1ZXRlPiwuLi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0NzUKK21zZ2lkICIiCisiSWdub3JlIGRlcGVuZGVuY3ktY2hlY2tpbmcgZm9yIHNwZWNpZmllZCBwYWNrYWdlcyAoYWN0dWFsbHksIGNoZWNraW5nIGlzICIKKyJwZXJmb3JtZWQsIGJ1dCBvbmx5IHdhcm5pbmdzIGFib3V0IGNvbmZsaWN0cyBhcmUgZ2l2ZW4sIG5vdGhpbmcgZWxzZSkuIgorbXNnc3RyICIiCisiSWdub3JhIGxhIGNvbXByb2JhY2nDs24gZGUgZGVwZW5kZW5jaWFzIHBhcmEgbG9zIHBhcXVldGVzIGRlZmluaWRvcyAoZW4gIgorInJlYWxpZGFkLCBzZSBoYWNlbiBsYXMgY29tcHJvYmFjaW9uZXMgcGVybyBzZSBpbXByaW1lbiBhdmlzb3MgZW4gdmV6IGRlICIKKyJpbnRlcnJ1bXBpciBlbCBwcm9jZXNvKS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NDc1CisjLCBuby13cmFwCittc2dpZCAiQjwtLW5vLWFjdD4sIEI8LS1kcnktcnVuPiwgQjwtLXNpbXVsYXRlPiIKK21zZ3N0ciAiQjwtLW5vLWFjdD4sIEI8LS1kcnktcnVuPiwgQjwtLXNpbXVsYXRlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQ4MAorbXNnaWQgIiIKKyJEbyBldmVyeXRoaW5nIHdoaWNoIGlzIHN1cHBvc2VkIHRvIGJlIGRvbmUsIGJ1dCBkb24ndCB3cml0ZSBhbnkgY2hhbmdlcy4gIgorIlRoaXMgaXMgdXNlZCB0byBzZWUgd2hhdCB3b3VsZCBoYXBwZW4gd2l0aCB0aGUgc3BlY2lmaWVkIGFjdGlvbiwgd2l0aG91dCAiCisiYWN0dWFsbHkgbW9kaWZ5aW5nIGFueXRoaW5nLiIKK21zZ3N0ciAiIgorIkhhY2UgdG9kbyBsbyBxdWUgc2Ugc3Vwb25lIHF1ZSBkZWJlIGhhY2VyLCBwZXJvIG5vIHJlYWxpemEgbmluZ8O6biBjYW1iaW8uIFNlICIKKyJ1dGlsaXphIHBhcmEgdmVyIHF1w6kgb2N1cnJpcsOtYSBjb24gbGFzIG9wY2lvbmVzIHNlbGVjY2lvbmFkYXMgc2luIHJlYWxpemFyICIKKyJjYW1iaW9zIHJlYWxlcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0ODUKK21zZ2lkICIiCisiQmUgc3VyZSB0byBnaXZlIEI8LS1uby1hY3Q+IGJlZm9yZSB0aGUgYWN0aW9uLXBhcmFtZXRlciwgb3IgeW91IG1pZ2h0IGVuZCB1cCAiCisid2l0aCB1bmRlc2lyYWJsZSByZXN1bHRzLiAoZS5nLiBCPGRwa2cgLS1wdXJnZSBmb28gLS1uby1hY3Q+IHdpbGwgZmlyc3QgIgorInB1cmdlIHBhY2thZ2UgZm9vIGFuZCB0aGVuIHRyeSB0byBwdXJnZSBwYWNrYWdlIC0tbm8tYWN0LCBldmVuIHRob3VnaCB5b3UgIgorInByb2JhYmx5IGV4cGVjdGVkIGl0IHRvIGFjdHVhbGx5IGRvIG5vdGhpbmcpIgorbXNnc3RyICIiCisiQXNlZ8O6cmVzZSBkZSBpbnRyb2R1Y2lyIGxhIG9wY2nDs24gQjwtLW5vLWFjdD4gYW50ZXMgZGVsIHBhcsOhbWV0cm8gZGUgYWNjacOzbiwgIgorIm8gcG9kcsOtYSBhY2FiYXIgY29uIHJlc3VsdGFkb3Mgbm8gZGVzZWFkb3MuIChQb3IgZWplbXBsbzogQjxkcGtnIC0tcHVyZ2UgZm9vICIKKyItLW5vLWFjdD4gcHVyZ2Fyw6EgcHJpbWVybyBlbCBwYXF1ZXRlIGZvbyB5IGx1ZWdvIGludGVudGFyw6EgcHVyZ2FyIGVsIHBhcXVldGUgIgorIi0tbm8tYWN0LCDCoWF1bnF1ZSBwcm9iYWJsZW1lbnRlIHVzdGVkIGVzcGVyYWJhIHF1ZSBubyBoaWNpZXJhIG5hZGEhKS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NDg1CisjLCBuby13cmFwCittc2dpZCAiQjwtUj4sIEI8LS1yZWN1cnNpdmU+IgorbXNnc3RyICJCPC1SPiwgQjwtLXJlY3Vyc2l2ZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0OTEKK21zZ2lkICIiCisiUmVjdXJzaXZlbHkgaGFuZGxlIGFsbCByZWd1bGFyIGZpbGVzIG1hdGNoaW5nIHBhdHRlcm4gQjwqLmRlYj4gZm91bmQgYXQgIgorInNwZWNpZmllZCBkaXJlY3RvcmllcyBhbmQgYWxsIG9mIGl0cyBzdWJkaXJlY3Rvcmllcy4gVGhpcyBjYW4gYmUgdXNlZCB3aXRoICIKKyJCPC1pPiwgQjwtQT4sIEI8LS1pbnN0YWxsPiwgQjwtLXVucGFjaz4gYW5kIEI8LS1hdmFpbD4gYWN0aW9ucy4iCittc2dzdHIgIiIKKyJBY3TDumEgcmVjdXJzaXZhbWVudGUgc29icmUgdG9kb3MgbG9zIGZpY2hlcm9zIHF1ZSBjb2luY2lkYW4gY29uIGVsIHBhdHLDs24gIgorIkI8Ki5kZWI+IHF1ZSBzZSBlbmN1ZW50cmVuIGVuIGVsIGRpcmVjdG9yaW8gZGVmaW5pZG8sIHkgdGFtYmnDqW4gdG9kb3Mgc3VzICIKKyJzdWJkaXJlY3Rvcmlvcy4gU2UgcHVlZGUgdXNhciBjb24gbGFzIG9wY2lvbmVzIEI8LWk+LCBCPC1BPiwgQjwtLWluc3RhbGw+LCAiCisiQjwtLXVucGFjaz4geSBCPC0tYXZhaWw+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo0OTEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1HPiIKK21zZ3N0ciAiQjwtRz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0OTUKK21zZ2lkICIiCisiRG9uJ3QgaW5zdGFsbCBhIHBhY2thZ2UgaWYgYSBuZXdlciB2ZXJzaW9uIG9mIHRoZSBzYW1lIHBhY2thZ2UgaXMgYWxyZWFkeSAiCisiaW5zdGFsbGVkLiBUaGlzIGlzIGFuIGFsaWFzIG9mIEI8LS1yZWZ1c2UtZG93bmdyYWRlPi4iCittc2dzdHIgIiIKKyJObyBpbnN0YWxhIHVuIHBhcXVldGUgZGVsIHF1ZSB5YSBleGlzdGUgdW5hIHZlcnNpw7NuIG3DoXMgbnVldmEgZW4gZWwgc2lzdGVtYS4gIgorIkVzIHVuIGFsaWFzIGRlIEI8LS1yZWZ1c2UtZG93bmdyYWRlPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NDk1IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjE3IGRwa2ctY2hlY2tidWlsZGRlcHMuMToxOQorIzogZHBrZy1xdWVyeS4xOjExOCBkcGtnLXNobGliZGVwcy4xOjIxMSBkcGtnLXRyaWdnZXIuMTozOQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1hZG1pbmRpcj0+STxkaXI+IgorbXNnc3RyICJCPC0tYWRtaW5kaXI9Pkk8ZGlyZWN0b3Jpbz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1MDAKK21zZ2lkICIiCisiQ2hhbmdlIGRlZmF1bHQgYWRtaW5pc3RyYXRpdmUgZGlyZWN0b3J5LCB3aGljaCBjb250YWlucyBtYW55IGZpbGVzIHRoYXQgZ2l2ZSAiCisiaW5mb3JtYXRpb24gYWJvdXQgc3RhdHVzIG9mIGluc3RhbGxlZCBvciB1bmluc3RhbGxlZCBwYWNrYWdlcywgZXRjLiAgIgorIihEZWZhdWx0cyB0byBJPC92YXIvbGliL2Rwa2c+KSIKK21zZ3N0ciAiIgorIkNhbWJpYSBlbCBkaXJlY3RvcmlvIGRlIGFkbWluaXN0cmFjacOzbiBwcmVkZWZpbmlkby4gw4lzdGUgY29udGllbmUgbXVjaG9zICIKKyJmaWNoZXJvcyBxdWUgb2ZyZWNlbiBpbmZvcm1hY2nDs24gcmVsYXRpdmEgYWwgZXN0YWRvIGRlIHBhcXVldGVzIGluc3RhbGFkb3MgbyAiCisibm8gaW5zdGFsYWRvcywgZXRjLiAoUG9yIG9taXNpw7NuLCBJPC92YXIvbGliL2Rwa2c+KS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTAwCisjLCBuby13cmFwCittc2dpZCAiQjwtLWluc3RkaXI9Pkk8ZGlyPiIKK21zZ3N0ciAiQjwtLWluc3RkaXI9Pkk8ZGlyZWN0b3Jpbz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1MDcKK21zZ2lkICIiCisiQ2hhbmdlIGRlZmF1bHQgaW5zdGFsbGF0aW9uIGRpcmVjdG9yeSB3aGljaCByZWZlcnMgdG8gdGhlIGRpcmVjdG9yeSB3aGVyZSAiCisicGFja2FnZXMgYXJlIHRvIGJlIGluc3RhbGxlZC4gQjxpbnN0ZGlyPiBpcyBhbHNvIHRoZSBkaXJlY3RvcnkgcGFzc2VkIHRvICIKKyJCPGNocm9vdD4oMikgYmVmb3JlIHJ1bm5pbmcgcGFja2FnZSdzIGluc3RhbGxhdGlvbiBzY3JpcHRzLCB3aGljaCBtZWFucyB0aGF0ICIKKyJ0aGUgc2NyaXB0cyBzZWUgQjxpbnN0ZGlyPiBhcyBhIHJvb3QgZGlyZWN0b3J5LiAgKERlZmF1bHRzIHRvIEk8Lz4pIgorbXNnc3RyICIiCisiQ2FtYmlhIGVsIGRpcmVjdG9yaW8gZGUgaW5zdGFsYWNpw7NuIHByZWRlZmluaWRvLCBsYSB1YmljYWNpw7NuIGVuIGxhIHF1ZSBzZSAiCisiaW5zdGFsYXLDoW4gbG9zIHBhcXVldGVzLiBCPGluc3RkaXI+IGVzIHRhbWJpw6luIGVsIGRpcmVjdG9yaW8gaW50cm9kdWNpZG8gYSAiCisiQjxjaHJvb3Q+KDIpIGFudGVzIGRlIGVqZWN1dGFyIGxvcyBzY3JpcHRzIGRlIGluc3RhbGFjacOzbiBkZWwgcGFxdWV0ZSwgbG8gIgorInF1ZSBzaWduaWZpY2EgcXVlIMOpc3RvcyB2ZXLDoW4gQjxpbnN0ZGlyPiBjb21vIGRpcmVjdG9yaW8gcmHDrXouIChQb3Igb21pc2nDs24sICIKKyJJPC8+KS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTA3CisjLCBuby13cmFwCittc2dpZCAiQjwtLXJvb3Q9Pkk8ZGlyPiIKK21zZ3N0ciAiQjwtLXJvb3Q9Pkk8ZGlyZWN0b3Jpbz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1MTEKK21zZ2lkICIiCisiQ2hhbmdpbmcgQjxyb290PiBjaGFuZ2VzIEI8aW5zdGRpcj4gdG8gSTxkaXI+IGFuZCBCPGFkbWluZGlyPiB0byBJPGRpcj5CPC8iCisidmFyL2xpYi9kcGtnPi4iCittc2dzdHIgIiIKKyJDYW1iaWFyIEI8cm9vdD4gZGEgZWwgdmFsb3IgZGUgSTxkaXJlY3RvcmlvPiBhIEI8aW5zdGRpcj4sIHkgZWwgdmFsb3IgIgorIkk8ZGlyPkI8L3Zhci9saWIvZHBrZz4gYSBCPGFkbWluZGlyPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTExCisjLCBuby13cmFwCittc2dpZCAiQjwtTz4sIEI8LS1zZWxlY3RlZC1vbmx5PiIKK21zZ3N0ciAiQjwtTz4sIEI8LS1zZWxlY3RlZC1vbmx5PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjUxNworbXNnaWQgIiIKKyJPbmx5IHByb2Nlc3MgdGhlIHBhY2thZ2VzIHRoYXQgYXJlIHNlbGVjdGVkIGZvciBpbnN0YWxsYXRpb24uIFRoZSBhY3R1YWwgIgorIm1hcmtpbmcgaXMgZG9uZSB3aXRoIEI8ZHNlbGVjdD4gb3IgYnkgQjxkcGtnPiwgd2hlbiBpdCBoYW5kbGVzIHBhY2thZ2VzLiBGb3IgIgorImV4YW1wbGUsIHdoZW4gYSBwYWNrYWdlIGlzIHJlbW92ZWQsIGl0IHdpbGwgYmUgbWFya2VkIHNlbGVjdGVkIGZvciAiCisiZGVpbnN0YWxsYXRpb24uIgorbXNnc3RyICIiCisiUHJvY2VzYSBzw7NsbyBsb3MgcGFxdWV0ZXMgc2VsZWNjaW9uYWRvcyBwYXJhIHN1IGluc3RhbGFjacOzbi4gTGEgbWFyY2EgZW4gc8OtICIKKyJsYSBoYWNlbiBCPGRzZWxlY3Q+IG8gQjxkcGtnPiBhbCBtYW5pcHVsYXIgcGFxdWV0ZXMuIFBvciBlamVtcGxvLCBzaSBzZSAiCisiYm9ycmEgdW5vLCDDqXN0ZSBzZSBtYXJjYXLDoSBwYXJhIHN1IGRlc2luc3RhbGFjacOzbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTE3CisjLCBuby13cmFwCittc2dpZCAiQjwtRT4sIEI8LS1za2lwLXNhbWUtdmVyc2lvbj4iCittc2dzdHIgIkI8LUU+LCBCPC0tc2tpcC1zYW1lLXZlcnNpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTIxCittc2dpZCAiIgorIkRvbid0IGluc3RhbGwgdGhlIHBhY2thZ2UgaWYgdGhlIHNhbWUgdmVyc2lvbiBvZiB0aGUgcGFja2FnZSBpcyBhbHJlYWR5ICIKKyJpbnN0YWxsZWQuIgorbXNnc3RyICIiCisiRXZpdGEgbGEgaW5zdGFsYWNpw7NuIGRlIHVuIHBhcXVldGUgc2kgdGllbmUgbGEgbWlzbWEgdmVyc2nDs24gcXVlIGxhIHlhICIKKyJpbnN0YWxhZGEuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTIzCittc2dpZCAiQjwtLXByZS1pbnZva2U9Pkk8Y29tbWFuZD4iCittc2dzdHIgIkI8LS1wcmUtaW52b2tlPT5JPG9yZGVuPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjUyNQorbXNnaWQgIkI8LS1wb3N0LWludm9rZT0+STxjb21tYW5kPiIKK21zZ3N0ciAiQjwtLXBvc3QtaW52b2tlPT5JPG9yZGVuPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjUzNAorbXNnaWQgIiIKKyJTZXQgYW4gaW52b2tlIGhvb2sgSTxjb21tYW5kPiB0byBiZSBydW4gdmlhIGBgc2ggLWMnJyBiZWZvcmUgb3IgYWZ0ZXIgdGhlICIKKyJkcGtnIHJ1biBmb3IgdGhlIEk8dW5wYWNrPiwgSTxjb25maWd1cmU+LCBJPGluc3RhbGw+LCBJPHRyaWdnZXJzLW9ubHk+LCAiCisiSTxyZW1vdmU+IGFuZCBJPHB1cmdlPiBkcGtnIGFjdGlvbnMuIFRoaXMgb3B0aW9uIGNhbiBiZSBzcGVjaWZpZWQgbXVsdGlwbGUgIgorInRpbWVzLiBUaGUgb3JkZXIgdGhlIG9wdGlvbnMgYXJlIHNwZWNpZmllZCBpcyBwcmVzZXJ2ZWQsIHdpdGggdGhlIG9uZXMgZnJvbSAiCisidGhlIGNvbmZpZ3VyYXRpb24gZmlsZXMgdGFraW5nIHByZWNlZGVuY2UuICBUaGUgZW52aXJvbm1lbnQgdmFyaWFibGUgIgorIkI8RFBLR19IT09LX0FDVElPTj4gaXMgc2V0IGZvciB0aGUgaG9va3MgdG8gdGhlIGN1cnJlbnQgZHBrZyBhY3Rpb24uIE5vdGU6ICIKKyJmcm9udC1lbmRzIG1pZ2h0IGNhbGwgZHBrZyBzZXZlcmFsIHRpbWVzIHBlciBpbnZvY2F0aW9uLCB3aGljaCBtaWdodCBydW4gdGhlICIKKyJob29rcyBtb3JlIHRpbWVzIHRoYW4gZXhwZWN0ZWQuIgorbXNnc3RyICIiCisiRGVmaW5lIHVuYSBJPG9yZGVuPiDCq2hvb2vCuyBxdWUgc2UgaW52b2NhcsOhIG1lZGlhbnRlIMKrc2ggLWPCuyBhbnRlcyBvIGRlc3B1w6lzICIKKyJkZSBxdWUgZHBrZyBlamVjdXRlIHVuYSBhY2Npw7NuIEk8dW5wYWNrPiwgSTxjb25maWd1cmU+LCBJPGluc3RhbGw+LCAiCisiSTx0cmlnZ2Vycy1vbmx5PiwgSTxyZW1vdmU+IG8gSTxwdXJnZT4uIFB1ZWRlIGRlZmluaXIgZXN0YSBvcGNpw7NuIHZhcmlhcyAiCisidmVjZXMuIFNlIHJlc3BldGEgZWwgb3JkZW4gZGUgYXBhcmljacOzbiBkZSBsYXMgb3BjaW9uZXMsIGNvbiBwcmVmZXJlbmNpYSBkZSAiCisibGFzIHByZXNlbnRlcyBlbiBsb3MgZmljaGVyb3MgZGUgY29uZmlndXJhY2nDs24uIExhIHZhcmlhYmxlIGRlIGVudG9ybm8gIgorIkI8RFBLR19IT09LX0FDVElPTj4gZGVmaW5lIGxvcyDCq2hvb2tzwrsgYSBsYSBhY2Npw7NuIGRlIGRwa2cgYWN0dWFsLk5vdGE6ICIKKyJwdWVkZSBxdWUgbGFzIGludGVyZmFjZXMgZWplY3V0ZW4gZHBrZyB2YXJpYXMgdmVjZXMgZW4gY2FkYSBpbnZvY2FjacOzbiwgbG8gIgorImN1YWwgcHVlZGUgZWplY3V0YXIgbcOhcyDDs3JkZW5lcyBlbmNhZGVuYWRhcyBxdWUgbGFzIGVzcGVyYWRhcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1MzcKK21zZ2lkICJCPC0tcGF0aC1leGNsdWRlPT5JPGdsb2ItcGF0dGVybj4iCittc2dzdHIgIkI8LS1wYXRoLWV4Y2x1ZGU9Pkk8Y29tb2TDrW4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTM5Cittc2dpZCAiQjwtLXBhdGgtaW5jbHVkZT0+STxnbG9iLXBhdHRlcm4+IgorbXNnc3RyICJCPC0tcGF0aC1pbmNsdWRlPT5JPGNvbW9kw61uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjU0MgorbXNnaWQgIiIKKyJTZXQgSTxnbG9iLXBhdHRlcm4+IGFzIGEgcGF0aCBmaWx0ZXIsIGVpdGhlciBieSBleGNsdWRpbmcgb3IgcmUtaW5jbHVkaW5nICIKKyJwcmV2aW91c2x5IGV4Y2x1ZGVkIHBhdGhzIG1hdGNoaW5nIHRoZSBzcGVjaWZpZWQgcGF0dGVybnMgZHVyaW5nIGluc3RhbGwuIgorbXNnc3RyICIiCisiRGVmaW5lIEk8Y29tb2TDrW4+ICjCq2dsb2IgcGF0dGVybsK7KSBjb21vIHVuIGZpbHRybyBkZSBydXRhLCBiaWVuIGV4Y2x1eWVuZG8gbyAiCisiaW5jbHV5ZW5kbyBvdHJhIHZleiBydXRhcyBhbnRlcmlvcm1lbnRlIGV4Y2x1aWRhcyBxdWUgZW5jYWphbiBjb24gbG9zICIKKyJwYXRyb25lcyBkZWZpbmlkb3MgZHVyYW50ZSBsYSBpbnN0YWxhY2nDs24uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTQ1Cittc2dpZCAiIgorIkk8V2FybmluZzogdGFrZSBpbnRvIGFjY291bnQgdGhhdCBkZXBlbmRpbmcgb24gdGhlIGV4Y2x1ZGVkIHBhdGhzIHlvdSBtaWdodCAiCisiY29tcGxldGVseSBicmVhayB5b3VyIHN5c3RlbSwgdXNlIHdpdGggY2F1dGlvbi4+IgorbXNnc3RyICIiCisiSTxBdmlzbzogdGVuZ2EgZW4gY3VlbnRhIHF1ZSBkZXBlbmRlbmRpZW5kbyBkZSBsYXMgcnV0YXMgcXVlIGV4Y2x1eWEsIHB1ZWRlICIKKyJkZWphciBzdSBzaXN0ZW1hIGludXRpbGl6YWJsZSwgw7pzZWxvIGNvbiBwcmVjdWFjacOzbi4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTU1Cittc2dpZCAiIgorIlRoZSBnbG9iIHBhdHRlcm5zIHVzZSB0aGUgc2FtZSB3aWxkY2FyZHMgdXNlZCBpbiB0aGUgc2hlbGwsIHdlcmUgJyonIG1hdGNoZXMgIgorImFueSBzZXF1ZW5jZSBvZiBjaGFyYWN0ZXJzLCBpbmNsdWRpbmcgdGhlIGVtcHR5IHN0cmluZyBhbmQgYWxzbyAnLycuIEZvciAiCisiZXhhbXBsZSwgSTwnL3Vzci8qL1JFQUQqJz4gbWF0Y2hlcyBJPCcvdXNyL3NoYXJlL2RvYy9wYWNrYWdlL1JFQURNRSc+LiAgQXMgIgorInVzdWFsLCAnPycgbWF0Y2hlcyBhbnkgc2luZ2xlIGNoYXJhY3RlciAoYWdhaW4sIGluY2x1ZGluZyAnLycpLiBBbmQgJ1snICIKKyJzdGFydHMgYSBjaGFyYWN0ZXIgY2xhc3MsIHdoaWNoIGNhbiBjb250YWluIGEgbGlzdCBvZiBjaGFyYWN0ZXJzLCByYW5nZXMgYW5kICIKKyJjb21wbGVtZW50YXRpb25zLiBTZWUgQjxnbG9iPig3KSBmb3IgZGV0YWlsZWQgaW5mb3JtYXRpb24gYWJvdXQgZ2xvYmJpbmcuICIKKyJOb3RlOiB0aGUgY3VycmVudCBpbXBsZW1lbnRhdGlvbiBtaWdodCByZS1pbmNsdWRlIG1vcmUgZGlyZWN0b3JpZXMgYW5kICIKKyJzeW1saW5rcyB0aGFuIG5lZWRlZCwgdG8gYmUgb24gdGhlIHNhZmUgc2lkZSBhbmQgYXZvaWQgcG9zc2libGUgdW5wYWNrICIKKyJmYWlsdXJlcywgZnV0dXJlIHdvcmsgbWlnaHQgZml4IHRoaXMuIgorbXNnc3RyICIiCisiTG9zIHBhdHJvbmVzIGRlIGNvbW9kw61uICjCq2dsb2LCuykgdXNhbiBsb3MgbWlzbW9zIGNvbW9kaW5lcyBxdWUgZWwgaW50w6lycHJldGUgIgorImRlIMOzcmRlbmVzLCBkb25kZSDCqyrCuyBlbmNhamEgY29uIGN1YWxxdWllciBjYWRlbmEgZGUgY2FyYWN0ZXJlcywgaW5jbHV5ZW5kbyAiCisidW5hIGNhZGVuYSB2YWPDrWEgeSDCqy/Cuy4gUG9yIGVqZW1wbG8sIEk8Jy91c3IvKi9SRUFEKic+IGVuY2FqYSBjb24gSTwnL3Vzci8iCisic2hhcmUvZG9jL3BhY2thZ2UvUkVBRE1FJz4uIENvbW8gZXMgaGFiaXR1YWwsIMKrP8K7IGVuY2FqYSBjdWFscXVpZXIgY2Fyw6FjdGVyICIKKyLDum5pY28gKHVuYSB2ZXogbcOhcywgaW5jbHV5ZW5kbyDCqy/CuykuIFkgwqtbwrsgaW5pY2lhIHVuYSBjbGFzZSAowqtjbGFzc8K7KSBkZSAiCisiY2Fyw6FjdGVyLCBxdWUgcHVlZGUgY29udGVuZXIgdW5hIGxpc3RhIGRlIGNhcmFjdGVyZXMsIHJhbmdvcyB5ICIKKyJjb21wbGVtZW50YWNpb25lcy4gQ29uc3VsdGUgQjxnbG9iPig3KSBwYXJhIG3DoXMgaW5mb3JtYWNpw7NuIGFjZXJjYSBkZWwgdXNvICIKKyJkZSBjb21vZGluZXMuIE5vdGE6IHB1ZWRlIHF1ZSBsYSBpbXBsZW1lbnRhY2nDs24gYWN0dWFsIGluY2x1eWEgb3RyYSB2ZXogbcOhcyAiCisiZGlyZWN0b3Jpb3MgeSBlbmxhY2VzIHNpbWLDs2xpY29zIHF1ZSBsb3MgbmVjZXNhcmlvcy4gUHVlZGUgcXVlIHVuIGRlc2Fycm9sbG8gIgorImVuIGVsIGZ1dHVybyBhcnJlZ2xlIGVzdG8gcGFyYSBlc3RhciBtw6FzIHNlZ3Vyb3MgeSBldml0YXIgdW4gcG9zaWJsZSBlcnJvciAiCisiZGUgZGVzZW1wYXF1ZXRhZG8uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTU4Cittc2dpZCAiIgorIlRoaXMgY2FuIGJlIHVzZWQgdG8gcmVtb3ZlIGFsbCBwYXRocyBleGNlcHQgc29tZSBwYXJ0aWN1bGFyIG9uZXM7IGEgdHlwaWNhbCAiCisiY2FzZSBpczoiCittc2dzdHIgIiIKKyJQdWVkZSB1c2FyIGVzdG8gcGFyYSBlbGltaW5hciB0b2RhcyBsYXMgcnV0YXMgYSBleGNlcGNpw7NuIGRlIGFsZ3VuYXMgZW4gIgorInBhcnRpY3VsYXI7IHVuIHTDrXBpY28gdXNvIGVzOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjU2MgorIywgbm8td3JhcAorbXNnaWQgIiIKKyJCPC0tcGF0aC1leGNsdWRlPS91c3Ivc2hhcmUvZG9jLyo+XG4iCisiQjwtLXBhdGgtaW5jbHVkZT0vdXNyL3NoYXJlL2RvYy8qL2NvcHlyaWdodD5cbiIKK21zZ3N0ciAiIgorIkI8LS1wYXRoLWV4Y2x1ZGU9L3Vzci9zaGFyZS9kb2MvKj5cbiIKKyJCPC0tcGF0aC1pbmNsdWRlPS91c3Ivc2hhcmUvZG9jLyovY29weXJpZ2h0PlxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTY1Cittc2dpZCAidG8gcmVtb3ZlIGFsbCBkb2N1bWVudGF0aW9uIGZpbGVzIGV4Y2VwdCB0aGUgY29weXJpZ2h0IGZpbGVzLiIKK21zZ3N0ciAiIgorInBhcmEgZWxpbWluYXIgdG9kb3MgbG9zIGZpY2hlcm9zIGRlIGRvY3VtZW50YWNpw7NuIGEgZXhjZXBjacOzbiBkZSBsb3MgIgorImZpY2hlcm9zIGRlIGRlcmVjaG9zIGRlIGF1dG9yLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjU2OQorbXNnaWQgIiIKKyJUaGVzZSB0d28gb3B0aW9ucyBjYW4gYmUgc3BlY2lmaWVkIG11bHRpcGxlIHRpbWVzLCBhbmQgaW50ZXJsZWF2ZWQgd2l0aCBlYWNoICIKKyJvdGhlci4gQm90aCBhcmUgcHJvY2Vzc2VkIGluIHRoZSBnaXZlbiBvcmRlciwgd2l0aCB0aGUgbGFzdCBydWxlIHRoYXQgIgorIm1hdGNoZXMgYSBmaWxlIG5hbWUgbWFraW5nIHRoZSBkZWNpc2lvbi4iCittc2dzdHIgIiIKKyJFc3RhcyBkb3Mgb3BjaW9uZXMgc2UgcHVlZGVuIGRlZmluaXIgdmFyaWFzIHZlY2VzLCB5IHNlIHB1ZWRlbiBpbnRlcnBvbGFyLiAiCisiQW1ib3Mgc2UgcHJvY2VzYW4gZW4gZWwgb3JkZW4gZGFkbywgeSBsYSDDumx0aW1hIHJlZ2xhIHF1ZSBlbmNhamEgY29uIHVuICIKKyJub21icmUgZGUgZmljaGVybyByZWFsaXphIGxhIGRlY2lzacOzbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTcwCisjLCBuby13cmFwCittc2dpZCAiQjwtLXN0YXR1cy1mZCA+STxuPiIKK21zZ3N0ciAiQjwtLXN0YXR1cy1mZCA+STxuPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjU3NgorbXNnaWQgIiIKKyJTZW5kIG1hY2hpbmUtcmVhZGFibGUgcGFja2FnZSBzdGF0dXMgYW5kIHByb2dyZXNzIGluZm9ybWF0aW9uIHRvIGZpbGUgIgorImRlc2NyaXB0b3IgSTxuPi4gVGhpcyBvcHRpb24gY2FuIGJlIHNwZWNpZmllZCBtdWx0aXBsZSB0aW1lcy4gVGhlICIKKyJpbmZvcm1hdGlvbiBpcyBnZW5lcmFsbHkgb25lIHJlY29yZCBwZXIgbGluZSwgaW4gb25lIG9mIHRoZSBmb2xsb3dpbmcgZm9ybXM6IgorbXNnc3RyICIiCisiRW52w61hIGxhIGluZm9ybWFjacOzbiBkZWwgZXN0YWRvIGRlbCBwYXF1ZXRlIGUgaW5mb3JtYWNpw7NuIGRlIHByb2dyZXNvIGVuICIKKyJmb3JtYXRvIG3DoXF1aW5hIGFsIGRlc2NyaXB0b3IgZGUgZmljaGVybyBJPG4+LiBQdWVkZSBpbnRyb2R1Y2lyIGVzdGEgb3BjacOzbiAiCisidmFyaWFzIHZlY2VzLiBMYSBpbmZvcm1hY2nDs24gYXBhcmVjZSBoYWJpdHVhbG1lbnRlIGNvbiB1biByZWdpc3RybyBwb3IgIgorImzDrW5lYSwgZW4gdW5hIGRlIGxhcyBzaWd1aWVudGVzIGZvcm1hcy4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTc3CisjLCBuby13cmFwCittc2dpZCAiQjxzdGF0dXM6ID5JPHBhY2thZ2U+Qjw6ID5JPHN0YXR1cz4iCittc2dzdHIgIkI8c3RhdHVzOiA+STxwYXF1ZXRlPkI8OiA+STxlc3RhZG8+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTgwCittc2dpZCAiUGFja2FnZSBzdGF0dXMgY2hhbmdlZDsgSTxzdGF0dXM+IGlzIGFzIGluIHRoZSBzdGF0dXMgZmlsZS4iCittc2dzdHIgIiIKKyJFbCBlc3RhZG8gZGVsIHBhcXVldGUgaGEgY2FtYmlhZG87IGVsIEk8ZXN0YWRvPiBlcyBlbCBxdWUgYXBhcmVjZSBlbiBlbCAiCisiZmljaGVybyBkZSBlc3RhZG8uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjU4MAorIywgbm8td3JhcAorbXNnaWQgIkI8c3RhdHVzOiA+STxwYWNrYWdlPkI8IDogZXJyb3IgOiA+STxleHRlbmRlZC1lcnJvci1tZXNzYWdlPiIKK21zZ3N0ciAiQjxzdGF0dXM6ID5JPHBhcXVldGU+QjwgOiBlcnJvciA6ID5JPG1lbnNhamUtZGUtZmFsbG8tZGV0YWxsYWRvPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjU4NAorbXNnaWQgIiIKKyJBbiBlcnJvciBvY2N1cnJlZC4gQW55IHBvc3NpYmxlIG5ld2xpbmVzIGluIEk8ZXh0ZW5kZWQtZXJyb3ItbWVzc2FnZT4gd2lsbCAiCisiYmUgY29udmVydGVkIHRvIHNwYWNlcyBiZWZvcmUgb3V0cHV0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjU4NAorIywgbm8td3JhcAorbXNnaWQgIkI8c3RhdHVzOiA+STxmaWxlPkI8IDogY29uZmZpbGUtcHJvbXB0IDogJz5JPHJlYWwtb2xkPkI8JyAnPkk8cmVhbC1uZXc+QjwnID5JPHVzZXJlZGl0ZWQ+QjwgPkk8ZGlzdGVkaXRlZD4iCittc2dzdHIgIkI8c3RhdHVzOiA+STxmaWNoZXJvPkI8IDogY29uZmZpbGUtcHJvbXB0IDogJz5JPHJlYWwtb2xkPkI8JyAnPkk8cmVhbC1uZXc+QjwnID5JPGVkaWNpw7NuLXVzdWFyaW8+QjwgPkk8ZWRpY2nDs24tZGlzdHJpYnVjacOzbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1ODcKK21zZ2lkICJVc2VyIGlzIGJlaW5nIGFza2VkIGEgY29uZmZpbGUgcXVlc3Rpb24uIgorbXNnc3RyICIiCisiRWwgdXN1YXJpbyB0aWVuZSBxdWUgcmVzcG9uZGVyIGEgdW5hIHByZWd1bnRhIGRlIHVuIGZpY2hlcm8gZGUgY29uZmlndXJhY2nDs24gIgorIsKrY29uZmZpbGXCuy4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTg3CisjLCBuby13cmFwCittc2dpZCAiQjxwcm9jZXNzaW5nOiA+STxzdGFnZT5CPDogPkk8cGFja2FnZT4iCittc2dzdHIgIkI8cHJvY2Vzc2luZzogPkk8ZXRhcGE+Qjw6ID5JPHBhcXVldGU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTkyCittc2dpZCAiIgorIlNlbnQganVzdCBiZWZvcmUgYSBwcm9jZXNzaW5nIHN0YWdlIHN0YXJ0cy4gSTxzdGFnZT4gaXMgb25lIG9mIEI8dXBncmFkZT4sICIKKyJCPGluc3RhbGw+IChib3RoIHNlbnQgYmVmb3JlIHVucGFja2luZyksIEI8Y29uZmlndXJlPiwgQjx0cmlncHJvYz4sICIKKyJCPGRpc2FwcGVhcj4sIEI8cmVtb3ZlPiwgQjxwdXJnZT4uIgorbXNnc3RyICIiCisiU2UgZW52w61hIGp1c3RvIGRlc3B1w6lzIGRlbCBpbmljaW8gZGVsIGVzdGFkbyBkZSBwcm9jZXNhbWllbnRvLiBFbCBJPGVzdGFkbz4gIgorInB1ZWRlIHNlciBCPHVwZ3JhZGU+LCBCPGluc3RhbGw+IChhbWJvcyBzZSBlbnbDrWFuIGFudGVzIGRlIGRlc2VtcGFxdWV0YXIpLCAiCisiQjxjb25maWd1cmU+LCBCPHRyaWdwcm9jPiwgQjxkaXNhcHBlYXI+LCBCPHJlbW92ZT4gbyBCPHB1cmdlPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTkzCisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8LS1wb3N0LWludm9rZT0+STxjb21tYW5kPiIKK21zZ2lkICJCPC0tc3RhdHVzLWxvZ2dlcj49STxjb21tYW5kPiIKK21zZ3N0ciAiQjwtLXBvc3QtaW52b2tlPT5JPG9yZGVuPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjU5OAorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiU2VuZCBtYWNoaW5lLXJlYWRhYmxlIHBhY2thZ2Ugc3RhdHVzIGFuZCBwcm9ncmVzcyBpbmZvcm1hdGlvbiB0byBmaWxlICIKKyN8ICJkZXNjcmlwdG9yIEk8bj4uIFRoaXMgb3B0aW9uIGNhbiBiZSBzcGVjaWZpZWQgbXVsdGlwbGUgdGltZXMuIFRoZSAiCisjfCAiaW5mb3JtYXRpb24gaXMgZ2VuZXJhbGx5IG9uZSByZWNvcmQgcGVyIGxpbmUsIGluIG9uZSBvZiB0aGUgZm9sbG93aW5nICIKKyN8ICJmb3JtczoiCittc2dpZCAiIgorIlNlbmQgbWFjaGluZS1yZWFkYWJsZSBwYWNrYWdlIHN0YXR1cyBhbmQgcHJvZ3Jlc3MgaW5mb3JtYXRpb24gdG8gdGhlIHNoZWxsICIKKyJJPGNvbW1hbmQ+J3Mgc3RhbmRhcmQgaW5wdXQuIFRoaXMgb3B0aW9uIGNhbiBiZSBzcGVjaWZpZWQgbXVsdGlwbGUgdGltZXMuICIKKyJUaGUgb3V0cHV0IGZvcm1hdCB1c2VkIGlzIHRoZSBzYW1lIGFzIGluIEI8LS1zdGF0dXMtZmQuPiIKK21zZ3N0ciAiIgorIkVudsOtYSBsYSBpbmZvcm1hY2nDs24gZGVsIGVzdGFkbyBkZWwgcGFxdWV0ZSBlIGluZm9ybWFjacOzbiBkZSBwcm9ncmVzbyBlbiAiCisiZm9ybWF0byBtw6FxdWluYSBhbCBkZXNjcmlwdG9yIGRlIGZpY2hlcm8gSTxuPi4gUHVlZGUgaW50cm9kdWNpciBlc3RhIG9wY2nDs24gIgorInZhcmlhcyB2ZWNlcy4gTGEgaW5mb3JtYWNpw7NuIGFwYXJlY2UgaGFiaXR1YWxtZW50ZSBjb24gdW4gcmVnaXN0cm8gcG9yICIKKyJsw61uZWEsIGVuIHVuYSBkZSBsYXMgc2lndWllbnRlcyBmb3JtYXMuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjU5OQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1sb2c9Pkk8ZmlsZW5hbWU+IgorbXNnc3RyICJCPC0tbG9nPT5JPGZpY2hlcm8+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NjExCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJMb2cgc3RhdHVzIGNoYW5nZSB1cGRhdGVzIGFuZCBhY3Rpb25zIHRvIEk8ZmlsZW5hbWU+LCBpbnN0ZWFkIG9mIHRoZSAiCisjfCAiZGVmYXVsdCBJPC92YXIvbG9nL2Rwa2cubG9nPi4gSWYgdGhpcyBvcHRpb24gaXMgZ2l2ZW4gbXVsdGlwbGUgdGltZXMsIHRoZSAiCisjfCAibGFzdCBmaWxlbmFtZSBpcyB1c2VkLiBMb2cgbWVzc2FnZXMgYXJlIG9mIHRoZSBmb3JtIGBZWVlZLU1NLUREIEhIOk1NOlNTICIKKyN8ICJzdGF0dXMgRTxsdD5zdGF0ZUU8Z3Q+IEU8bHQ+cGtnRTxndD4gRTxsdD5pbnN0YWxsZWQtdmVyc2lvbkU8Z3Q+JyBmb3IgIgorI3wgInN0YXR1cyBjaGFuZ2UgdXBkYXRlczsgYFlZWVktTU0tREQgSEg6TU06U1MgRTxsdD5hY3Rpb25FPGd0PiAiCisjfCAiRTxsdD5wa2dFPGd0PiBFPGx0Pmluc3RhbGxlZC12ZXJzaW9uRTxndD4gRTxsdD5hdmFpbGFibGUtdmVyc2lvbkU8Z3Q+JyAiCisjfCAiZm9yIGFjdGlvbnMgd2hlcmUgSTxFPGx0PmFjdGlvbkU8Z3Q+PiBpcyBvbmUgb2YgaW5zdGFsbCwgdXBncmFkZSwgcmVtb3ZlLCAiCisjfCAicHVyZ2U7IGFuZCBgWVlZWS1NTS1ERCBISDpNTTpTUyBjb25mZmlsZSBFPGx0PmZpbGVuYW1lRTxndD4gIgorI3wgIkU8bHQ+ZGVjaXNpb25FPGd0PicgZm9yIGNvbmZmaWxlIGNoYW5nZXMgd2hlcmUgSTxFPGx0PmRlY2lzaW9uRTxndD4+IGlzICIKKyN8ICJlaXRoZXIgaW5zdGFsbCBvciBrZWVwLiIKK21zZ2lkICIiCisiTG9nIHN0YXR1cyBjaGFuZ2UgdXBkYXRlcyBhbmQgYWN0aW9ucyB0byBJPGZpbGVuYW1lPiwgaW5zdGVhZCBvZiB0aGUgZGVmYXVsdCAiCisiSTwvdmFyL2xvZy9kcGtnLmxvZz4uIElmIHRoaXMgb3B0aW9uIGlzIGdpdmVuIG11bHRpcGxlIHRpbWVzLCB0aGUgbGFzdCAiCisiZmlsZW5hbWUgaXMgdXNlZC4gTG9nIG1lc3NhZ2VzIGFyZSBvZiB0aGUgZm9ybSBgWVlZWS1NTS1ERCBISDpNTTpTUyBzdGF0dXMgIgorIkk8c3RhdGU+IEk8cGtnPiBJPGluc3RhbGxlZC12ZXJzaW9uPicgZm9yIHN0YXR1cyBjaGFuZ2UgdXBkYXRlczsgYFlZWVktTU0tREQgIgorIkhIOk1NOlNTIEk8YWN0aW9uPiBJPHBrZz4gSTxpbnN0YWxsZWQtdmVyc2lvbj4gSTxhdmFpbGFibGUtdmVyc2lvbj4nIGZvciAiCisiYWN0aW9ucyB3aGVyZSBJPGFjdGlvbj4gaXMgb25lIG9mIEI8aW5zdGFsbD4sIEI8dXBncmFkZT4sIEI8cmVtb3ZlPiwgIgorIkI8cHVyZ2U+OyBhbmQgYFlZWVktTU0tREQgSEg6TU06U1MgY29uZmZpbGUgSTxmaWxlbmFtZT4gSTxkZWNpc2lvbj4nIGZvciAiCisiY29uZmZpbGUgY2hhbmdlcyB3aGVyZSBJPGRlY2lzaW9uPiBpcyBlaXRoZXIgQjxpbnN0YWxsPiBvciBCPGtlZXA+LiIKK21zZ3N0ciAiIgorIlJlZ2lzdHJhciBsb3MgY2FtYmlvcyBkZSBlc3RhZG8geSBhY2Npb25lcyBlbiBlbCBJPGZpY2hlcm8+LCBlbiBsdWdhciBkZWwgIgorInByZWRlZmluaWRvLCBJPC92YXIvbG9nL2Rwa2cubG9nPi4gU2UgdXNhcsOhIGVsIMO6bHRpbW8gZmljaGVybyBpbnRyb2R1Y2lkbyBlbiAiCisiY2FzbyBkZSBkZWZpbmlyIHZhcmlvcy4gTG9zIG1lbnNhamVzIGRlbCByZWdpc3RybyB0aWVuZW4gZWwgZm9ybWF0byDCq1lZWVktTU0tIgorIkREIEhIOk1NOlNTIGVzdGFkbyBFPGx0PmVzdGFkb0U8Z3Q+IEU8bHQ+cGFxRTxndD4gRTxsdD52ZXJzacOzbi0iCisiaW5zdGFsYWRhRTxndD7CuyBwYXJhIGFjdHVhbGl6YWNpb25lcyBkZSBjYW1iaW9zIGRlIGVzdGFkbzsgwqtZWVlZLU1NLUREIEhIOk1NOiIKKyJTUyBFPGx0PmFjY2nDs25FPGd0PiBFPGx0PnBhcUU8Z3Q+IEU8bHQ+dmVyc2nDs24taW5zdGFsYWRhRTxndD4gRTxsdD52ZXJzacOzbi0iCisiZGlzcG9uaWJsZUU8Z3Q+wrsgcGFyYSBhcXVlbGxhcyBhY2Npb25lcyBlbiBsYXMgcXVlIGxhIEk8RTxsdD5hY2Npw7NuRTxndD4+IGVzICIKKyLCq2luc3RhbGzCuywgwqt1cGdyYWRlwrssIMKrcmVtb3ZlwrsgbyDCq3B1cmdlwrs7IHkgwqtZWVlZLU1NLUREIEhIOk1NOlNTIGNvbmZmaWxlICIKKyJFPGx0PmZpY2hlcm9FPGd0PiBFPGx0PmRlY2lzacOzbkU8Z3Q+wrsgcGFyYSBhcXVlbGxvcyBjYW1iaW9zIGVuIMKrY29uZmZpbGVzwrsgIgorImVuIGxvcyBxdWUgbGEgSTxFPGx0PmRlY2lzacOzbkU8Z3Q+PiBlcyBvIMKraW5zdGFsbMK7IG8gwqtrZWVwwrsuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjYxMQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1uby1kZWJzaWc+IgorbXNnc3RyICJCPC0tbm8tZGVic2lnPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjYxNAorbXNnaWQgIkRvIG5vdCB0cnkgdG8gdmVyaWZ5IHBhY2thZ2Ugc2lnbmF0dXJlcy4iCittc2dzdHIgIk5vIGludGVudGEgdmVyaWZpY2FyIGxhcyBmaXJtYXMgZGUgbG9zIHBhcXVldGVzLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2MTQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tbm8tdHJpZ2dlcnM+IgorbXNnc3RyICJCPC0tbm8tdHJpZ2dlcnM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NjIzCittc2dpZCAiIgorIkRvIG5vdCBydW4gYW55IHRyaWdnZXJzIGluIHRoaXMgcnVuIChhY3RpdmF0aW9ucyB3aWxsIHN0aWxsIGJlIHJlY29yZGVkKS4gICIKKyJJZiB1c2VkIHdpdGggQjwtLWNvbmZpZ3VyZT4gSTxwYWNrYWdlPiBvciBCPC0tdHJpZ2dlcnMtb25seT4gSTxwYWNrYWdlPiB0aGVuICIKKyJ0aGUgbmFtZWQgcGFja2FnZSBwb3N0aW5zdCB3aWxsIHN0aWxsIGJlIHJ1biBldmVuIGlmIG9ubHkgYSB0cmlnZ2VycyBydW4gaXMgIgorIm5lZWRlZC4gVXNlIG9mIHRoaXMgb3B0aW9uIG1heSBsZWF2ZSBwYWNrYWdlcyBpbiB0aGUgaW1wcm9wZXIgQjx0cmlnZ2Vycy0iCisiYXdhaXRlZD4gYW5kIEI8dHJpZ2dlcnMtcGVuZGluZz4gc3RhdGVzLiBUaGlzIGNhbiBiZSBmaXhlZCBsYXRlciBieSBydW5uaW5nOiAiCisiQjxkcGtnIC0tY29uZmlndXJlIC0tcGVuZGluZz4uIgorbXNnc3RyICIiCisiTm8gZWplY3V0YSBuaW5nw7puIGRpc3BhcmFkb3IgZHVyYW50ZSBlc3RhIGVqZWN1Y2nDs24gKHNlIGdyYWJhcsOhbiBsYXMgIgorImFjdGl2YWNpb25lcykuIFNpIHNlIHVzYSBjb24gQjwtLWNvbmZpZ3VyZT4gSTxwYXF1ZXRlPiBvIEI8LS10cmlnZ2Vycy1vbmx5PiAiCisiSTxwYXF1ZXRlPiwgZWwgc2NyaXB0IMKrcG9zdGluc3TCuyBkZWwgcGFxdWV0ZSBub21icmFkbyB0ZW5kcsOhIHBlcm1pc29zIGRlICIKKyJlamVjdWNpw7NuIGF1bnF1ZSBzw7NsbyBzZSBuZWNlc2l0ZSBlamVjdXRhciB1biBkaXNwYXJhZG9yLiBFbCB1c28gZGUgZXN0YSAiCisib3BjacOzbiBwdWVkZSBkZWphciBwYXF1ZXRlcyBjb24gZWwgZXN0YWRvIG5vIGRlc2VhZG8gZGUgQjx0cmlnZ2Vycy1hd2FpdGVkPiAiCisieSBCPHRyaWdnZXJzLXBlbmRpbmc+LiBQdWVkZSBhcnJlZ2xhciBlc3RvIG3DoXMgdGFyZGUgZWplY3V0YW5kbyBCPGRwa2cgLS0iCisiY29uZmlndXJlIC0tcGVuZGluZz4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjYyMworIywgbm8td3JhcAorbXNnaWQgIkI8LS10cmlnZ2Vycz4iCittc2dzdHIgIkI8LS10cmlnZ2Vycz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2MjYKK21zZ2lkICJDYW5jZWxzIGEgcHJldmlvdXMgQjwtLW5vLXRyaWdnZXJzPi4iCittc2dzdHIgIkNhbmNlbGEgdW4gQjwtLW5vLXRyaWdnZXJzPiBwcmV2aW8uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NjI4IGRwa2cuY2ZnLjU6MTYKKyMsIG5vLXdyYXAKK21zZ2lkICJJPC9ldGMvZHBrZy9kcGtnLmNmZz4iCittc2dzdHIgIkk8L2V0Yy9kcGtnL2Rwa2cuY2ZnPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjYzMQorbXNnaWQgIkNvbmZpZ3VyYXRpb24gZmlsZSB3aXRoIGRlZmF1bHQgb3B0aW9ucy4iCittc2dzdHIgIkVsIGZpY2hlcm8gZGUgY29uZmlndXJhY2nDs24gY29uIGxhcyBvcGNpb25lcyBwcmVkZWZpbmlkYXMuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjYzMQorIywgbm8td3JhcAorbXNnaWQgIkk8L3Zhci9sb2cvZHBrZy5sb2c+IgorbXNnc3RyICJJPC92YXIvbG9nL2Rwa2cubG9nPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjYzNQorbXNnaWQgIkRlZmF1bHQgbG9nIGZpbGUgKHNlZSBJPC9ldGMvZHBrZy9kcGtnLmNmZz4oNSkgYW5kIG9wdGlvbiBCPC0tbG9nPikuIgorbXNnc3RyICIiCisiRWwgZmljaGVybyBkZSByZWdpc3RybyBwcmVkZWZpbmlkbyAoY29uc3VsdGUgSTwvZXRjL2Rwa2cvZHBrZy5jZmc+KDUpIHkgbGEgIgorIm9wY2nDs24gQjwtLWxvZz4pLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjYzOAorbXNnaWQgIiIKKyJUaGUgb3RoZXIgZmlsZXMgbGlzdGVkIGJlbG93IGFyZSBpbiB0aGVpciBkZWZhdWx0IGRpcmVjdG9yaWVzLCBzZWUgb3B0aW9uICIKKyJCPC0tYWRtaW5kaXI+IHRvIHNlZSBob3cgdG8gY2hhbmdlIGxvY2F0aW9ucyBvZiB0aGVzZSBmaWxlcy4iCittc2dzdHIgIiIKKyJMb3Mgb3Ryb3MgZmljaGVyb3MgbGlzdGFkb3MgYSBjb250aW51YWNpw7NuIGVzdMOhbiBlbiBzdXMgZGlyZWN0b3Jpb3MgIgorInByZWRlZmluaWRvcy4gQ29uc3VsdGUgbGEgb3BjacOzbiBCPC0tYWRtaW5kaXI+IHBhcmEgdmVyIGPDs21vIG1vZGlmaWNhciBsYSAiCisidWJpY2FjacOzbiBkZSBlc3RvcyBmaWNoZXJvcy4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NjM4CisjLCBuby13cmFwCittc2dpZCAiSTwvdmFyL2xpYi9kcGtnL2F2YWlsYWJsZT4iCittc2dzdHIgIkk8L3Zhci9saWIvZHBrZy9hdmFpbGFibGU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NjQxCittc2dpZCAiTGlzdCBvZiBhdmFpbGFibGUgcGFja2FnZXMuIgorbXNnc3RyICJMaXN0YSBkZSBwYXF1ZXRlcyBkaXNwb25pYmxlcy4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NjQxCisjLCBuby13cmFwCittc2dpZCAiSTwvdmFyL2xpYi9kcGtnL3N0YXR1cz4iCittc2dzdHIgIkk8L3Zhci9saWIvZHBrZy9zdGF0dXM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NjQ3Cittc2dpZCAiIgorIlN0YXR1c2VzIG9mIGF2YWlsYWJsZSBwYWNrYWdlcy4gVGhpcyBmaWxlIGNvbnRhaW5zIGluZm9ybWF0aW9uIGFib3V0IHdoZXRoZXIgIgorImEgcGFja2FnZSBpcyBtYXJrZWQgZm9yIHJlbW92aW5nIG9yIG5vdCwgd2hldGhlciBpdCBpcyBpbnN0YWxsZWQgb3Igbm90LCAiCisiZXRjLiBTZWUgc2VjdGlvbiBCPElORk9STUFUSU9OIEFCT1VUIFBBQ0tBR0VTPiBmb3IgbW9yZSBpbmZvLiIKK21zZ3N0ciAiIgorIkxvcyBlc3RhZG9zIGRlIGxvcyBwYXF1ZXRlcyBkaXNwb25pYmxlcy4gRXN0ZSBmaWNoZXJvIGNvbnRpZW5lIGluZm9ybWFjacOzbiAiCisic29icmUgc2kgdW4gcGFxdWV0ZSBlc3TDoSBtYXJjYWRvIG8gbm8gcGFyYSBzdSBlbGltaW5hY2nDs24sIHNpIGVzdMOhIG8gbm8gZXN0w6EgIgorImluc3RhbGFkbywgZXRjLiBQYXJhIG3DoXMgaW5mb3JtYWNpw7NuLCBjb25zdWx0ZSBlbCBhcGFydGFkbyBCPElORk9STUFDScOTTiAiCisiU09CUkUgUEFRVUVURVM+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjY1MAorbXNnaWQgIiIKKyJUaGUgc3RhdHVzIGZpbGUgaXMgYmFja2VkIHVwIGRhaWx5IGluIEk8L3Zhci9iYWNrdXBzPi4gSXQgY2FuIGJlIHVzZWZ1bCBpZiAiCisiaXQncyBsb3N0IG9yIGNvcnJ1cHRlZCBkdWUgdG8gZmlsZXN5c3RlbXMgdHJvdWJsZXMuIgorbXNnc3RyICIiCisiVW5hIGNvcGlhIGRlIHNlZ3VyaWRhZCBkaWFyaWEgZGVsIGZpY2hlcm8gZGUgZXN0YWRvIHNlIGNyZWEgZW4gSTwvdmFyLyIKKyJiYWNrdXBzPi4gUHVlZGUgc2VyIMO6dGlsIHNpIHNlIGhhIHBlcmRpZG8gbyBoYSBxdWVkYWRvIGRhw7FhZG8gcG9yIHByb2JsZW1hcyAiCisiY29uIGVsIHNpc3RlbWEgZGUgZmljaGVyb3MuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NjUzCittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgZmlsZXMgYXJlIGNvbXBvbmVudHMgb2YgYSBiaW5hcnkgcGFja2FnZS4gU2VlIEI8ZGViPig1KSAgZm9yICIKKyJtb3JlIGluZm9ybWF0aW9uIGFib3V0IHRoZW06IgorbXNnc3RyICIiCisiTG9zIHNpZ3VpZW50ZXMgZmljaGVyb3Mgc29uIGNvbXBvbmVudGVzIGRlIHVuIHBhcXVldGUgYmluYXJpby4gQ29uc3VsdGUgIgorIkI8ZGViPig1KSBwYXJhIG3DoXMgaW5mb3JtYWNpw7NuIHNvYnJlIMOpc3RvczoiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NjUzCisjLCBuby13cmFwCittc2dpZCAiSTxjb250cm9sPiIKK21zZ3N0ciAiSTxjb250cm9sPiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2NTUKKyMsIG5vLXdyYXAKK21zZ2lkICJJPGNvbmZmaWxlcz4iCittc2dzdHIgIkk8Y29uZmZpbGVzPiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2NTcKKyMsIG5vLXdyYXAKK21zZ2lkICJJPHByZWluc3Q+IgorbXNnc3RyICJJPHByZWluc3Q+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjY1OQorIywgbm8td3JhcAorbXNnaWQgIkk8cG9zdGluc3Q+IgorbXNnc3RyICJJPHBvc3RpbnN0PiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2NjEKKyMsIG5vLXdyYXAKK21zZ2lkICJJPHByZXJtPiIKK21zZ3N0ciAiSTxwcmVybT4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NjYzCisjLCBuby13cmFwCittc2dpZCAiSTxwb3N0cm0+IgorbXNnc3RyICJJPHBvc3RybT4iCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLjE6NjY2IGRwa2ctYnVpbGRmbGFncy4xOjEyOCBkcGtnLWJ1aWxkcGFja2FnZS4xOjIzMCBkcGtnLWRlYi4xOjIzMgorIzogZHBrZy1kaXZlcnQuODoxMTIgZHBrZy1xdWVyeS4xOjIwNCBkcGtnLXN0YXRvdmVycmlkZS44OjY4IGRwa2ctdHJpZ2dlci4xOjYwCisjOiBkcGtnLXZlbmRvci4xOjQyIGRzZWxlY3QuMTo0MjMgdXBkYXRlLWFsdGVybmF0aXZlcy44OjM1NAorIywgbm8td3JhcAorbXNnaWQgIkVOVklST05NRU5UIgorbXNnc3RyICJFTlRPUk5PIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjY2NyBkc2VsZWN0LjE6NDI0CisjLCBuby13cmFwCittc2dpZCAiQjxIT01FPiIKK21zZ3N0ciAiQjxIT01FPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjY3MQorbXNnaWQgIiIKKyJJZiBzZXQsIEI8ZHBrZz4gd2lsbCB1c2UgaXQgYXMgdGhlIGRpcmVjdG9yeSBmcm9tIHdoaWNoIHRvIHJlYWQgdGhlIHVzZXIgIgorInNwZWNpZmljIGNvbmZpZ3VyYXRpb24gZmlsZS4iCittc2dzdHIgIiIKKyJTaSBzZSBkZWZpbmUsIEI8ZHBrZz4gbG8gdXNhcsOhIGNvbW8gZWwgZGlyZWN0b3JpbyBkZWwgY3VhbCBsZWVyIGVsIGZpY2hlcm8gIgorImRlIGNvbmZpZ3VyYWNpw7NuIGVzcGVjw61maWNvIGRlbCB1c3VhcmlvLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2NzEgZHBrZy1kZWIuMToyMzMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPFRNUERJUj4iCittc2dzdHIgIkI8VE1QRElSPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjY3NQorbXNnaWQgIiIKKyJJZiBzZXQsIEI8ZHBrZz4gd2lsbCB1c2UgaXQgYXMgdGhlIGRpcmVjdG9yeSBpbiB3aGljaCB0byBjcmVhdGUgdGVtcG9yYXJ5ICIKKyJmaWxlcyBhbmQgZGlyZWN0b3JpZXMuIgorbXNnc3RyICIiCisiU2kgc2UgZGVmaW5lLCBCPGRwa2c+IGxvIHVzYXLDoSBjb21vIGVsIGRpcmVjdG9yaW8gZW4gZWwgcXVlIGNyZWFyIGZpY2hlcm9zIHkgIgorImRpcmVjdG9yaW9zIHRlbXBvcmFsZXMuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjY3NQorIywgbm8td3JhcAorbXNnaWQgIkI8UEFHRVI+IgorbXNnc3RyICJCPFBBR0VSPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjY3OAorbXNnaWQgIlRoZSBwcm9ncmFtIEI8ZHBrZz4gd2lsbCBleGVjdXRlIHdoZW4gZGlzcGxheWluZyB0aGUgY29uZmZpbGVzLiIKK21zZ3N0ciAiIgorIkVsIHByb2dyYW1hIHF1ZSBCPGRwa2c+IGVqZWN1dGFyw6EgYWwgbW9zdHJhciBsb3MgZmljaGVyb3MgZGUgY29uZmlndXJhY2nDs24gIgorIsKrY29uZmZpbGVzwrsuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjY3OAorIywgbm8td3JhcAorbXNnaWQgIkI8U0hFTEw+IgorbXNnc3RyICJCPFNIRUxMPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjY4MQorbXNnaWQgIlRoZSBwcm9ncmFtIEI8ZHBrZz4gd2lsbCBleGVjdXRlIHdoZW4gc3RhcnRpbmcgYSBuZXcgc2hlbGwuIgorbXNnc3RyICIiCisiRWwgcHJvZ3JhbWEgcXVlIEI8ZHBrZz4gZWplY3V0YXLDoSBhbCBpbmljaWFyIHVuIG51ZXZvIGludMOpcnByZXRlIGRlIMOzcmRlbmVzLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2ODEgZHBrZy1xdWVyeS4xOjIwOQorIywgbm8td3JhcAorbXNnaWQgIkI8Q09MVU1OUz4iCittc2dzdHIgIkI8Q09MVU1OUz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2ODUKK21zZ2lkICIiCisiU2V0cyB0aGUgbnVtYmVyIG9mIGNvbHVtbnMgQjxkcGtnPiBzaG91bGQgdXNlIHdoZW4gZGlzcGxheWluZyBmb3JtYXR0ZWQgIgorInRleHQuIEN1cnJlbnRseSBvbmx5IHVzZWQgYnkgLWwuIgorbXNnc3RyICIiCisiRGVmaW5lIGVsIG7Dum1lcm8gZGUgY29sdW1uYXMgcXVlIEI8ZHBrZz4gcHVlZGUgdXNhciBwYXJhIG1vc3RyYXIgbGEgIgorImluZm9ybWFjacOzbi4gUG9yIGFob3JhIHPDs2xvIGxhIHVzYSBsYSBvcGNpw7NuIMKrLWzCuy4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6Njg1CisjLCBuby13cmFwCittc2dpZCAiQjxEUEtHX1NIRUxMX1JFQVNPTj4iCittc2dzdHIgIkI8RFBLR19TSEVMTF9SRUFTT04+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6Njg5Cittc2dpZCAiIgorIkRlZmluZWQgYnkgQjxkcGtnPiBvbiB0aGUgc2hlbGwgc3Bhd25lZCBvbiB0aGUgY29uZmZpbGUgcHJvbXB0IHRvIGV4YW1pbmUgIgorInRoZSBzaXR1YXRpb24uIEN1cnJlbnQgdmFsaWQgdmFsdWU6IEI8Y29uZmZpbGUtcHJvbXB0Pi4iCittc2dzdHIgIiIKKyJEZWZpbmlkbyBwb3IgQjxkcGtnPiBlbiBlbCBpbnTDqXJwcmV0ZSBkZSDDs3JkZW5lcyBpbmljaWFkbyBlbiBlbCBkacOhbG9nbyBkZWwgIgorImZpY2hlcm8gZGUgY29uZmlndXJhY2nDs24gwqtjb25mZmlsZcK7IHBhcmEgZXhhbWluYXIgbGEgc2l0dWFjacOzbi4gRWwgdmFsb3IgIgorInbDoWxpZG8gYWN0dWFsbWVudGUgZXMgQjxjb25mZmlsZS1wcm9tcHQ+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2ODkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPERQS0dfQ09ORkZJTEVfT0xEPiIKK21zZ3N0ciAiQjxEUEtHX0NPTkZGSUxFX09MRD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2OTMKK21zZ2lkICIiCisiRGVmaW5lZCBieSBCPGRwa2c+IG9uIHRoZSBzaGVsbCBzcGF3bmVkIG9uIHRoZSBjb25mZmlsZSBwcm9tcHQgdG8gZXhhbWluZSAiCisidGhlIHNpdHVhdGlvbi4gQ29udGFpbnMgdGhlIHBhdGggdG8gdGhlIG9sZCBjb25mZmlsZS4iCittc2dzdHIgIiIKKyJEZWZpbmlkbyBwb3IgQjxkcGtnPiBlbiBlbCBpbnTDqXJwcmV0ZSBkZSDDs3JkZW5lcyBpbmljaWFkbyBlbiBlbCBkacOhbG9nbyBkZWwgIgorImZpY2hlcm8gZGUgY29uZmlndXJhY2nDs24gwqtjb25mZmlsZcK7IHBhcmEgZXhhbWluYXIgbGEgc2l0dWFjacOzbi4gQ29udGllbmUgbGEgIgorInJ1dGEgYWwgZmljaGVybyBkZSBjb25maWd1cmFjacOzbiBhbnRpZ3VvLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2OTMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPERQS0dfQ09ORkZJTEVfTkVXPiIKK21zZ3N0ciAiQjxEUEtHX0NPTkZGSUxFX05FVz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2OTcKK21zZ2lkICIiCisiRGVmaW5lZCBieSBCPGRwa2c+IG9uIHRoZSBzaGVsbCBzcGF3bmVkIG9uIHRoZSBjb25mZmlsZSBwcm9tcHQgdG8gZXhhbWluZSAiCisidGhlIHNpdHVhdGlvbi4gQ29udGFpbnMgdGhlIHBhdGggdG8gdGhlIG5ldyBjb25mZmlsZS4iCittc2dzdHIgIiIKKyJEZWZpbmlkbyBwb3IgQjxkcGtnPiBlbiBlbCBpbnTDqXJwcmV0ZSBkZSDDs3JkZW5lcyBpbmljaWFkbyBlbiBlbCBkacOhbG9nbyBkZWwgIgorImZpY2hlcm8gZGUgY29uZmlndXJhY2nDs24gwqtjb25mZmlsZcK7IHBhcmEgZXhhbWluYXIgbGEgc2l0dWFjacOzbi4gQ29udGllbmUgbGEgIgorInJ1dGEgYWwgZmljaGVybyBkZSBjb25maWd1cmFjacOzbiDCq2NvbmZmaWxlwrsgbnVldm8uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjY5NworIywgbm8td3JhcAorbXNnaWQgIkI8RFBLR19SVU5OSU5HX1ZFUlNJT04+IgorbXNnc3RyICJCPERQS0dfUlVOTklOR19WRVJTSU9OPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjcwMQorbXNnaWQgIiIKKyJEZWZpbmVkIGJ5IEI8ZHBrZz4gb24gdGhlIG1haW50YWluZXIgc2NyaXB0IGVudmlyb25tZW50IHRvIHRoZSB2ZXJzaW9uIG9mICIKKyJ0aGUgY3VycmVudGx5IHJ1bm5pbmcgQjxkcGtnPiBpbnN0YW5jZS4iCittc2dzdHIgIiIKKyJEZWZpbmlkbyBwb3IgQjxkcGtnPiBlbiBlbCBzY3JpcHQgZGVsIGVudG9ybm8gZGVsIG1hbnRlbmVkb3IgY29uIGVsIHZhbG9yIGRlICIKKyJsYSB2ZXJzacOzbiBlbiBlamVjdWNpw7NuIGRlIEI8ZHBrZz4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjcwMSBkcGtnLWRpdmVydC44OjExNworIywgbm8td3JhcAorbXNnaWQgIkI8RFBLR19NQUlOVFNDUklQVF9QQUNLQUdFPiIKK21zZ3N0ciAiQjxEUEtHX01BSU5UU0NSSVBUX1BBQ0tBR0U+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzA1Cittc2dpZCAiIgorIkRlZmluZWQgYnkgQjxkcGtnPiBvbiB0aGUgbWFpbnRhaW5lciBzY3JpcHQgZW52aXJvbm1lbnQgdG8gdGhlIHBhY2thZ2UgbmFtZSAiCisiYmVpbmcgaGFuZGxlZC4iCittc2dzdHIgIiIKKyJEZWZpbmlkbyBwb3IgQjxkcGtnPiBlbiBlbCBzY3JpcHQgZGUgZW50b3JubyBkZWwgbWFudGVuZWRvciBjb24gZWwgdmFsb3IgZGVsICIKKyJub21icmUgZGVsIHBhcXVldGUgbWFuaXB1bGFkby4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NzA1CisjLCBuby13cmFwCittc2dpZCAiQjxEUEtHX01BSU5UU0NSSVBUX0FSQ0g+IgorbXNnc3RyICJCPERQS0dfTUFJTlRTQ1JJUFRfQVJDSD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3MDkKK21zZ2lkICIiCisiRGVmaW5lZCBieSBCPGRwa2c+IG9uIHRoZSBtYWludGFpbmVyIHNjcmlwdCBlbnZpcm9ubWVudCB0byB0aGUgYXJjaGl0ZWN0dXJlICIKKyJ0aGUgcGFja2FnZSBnb3QgYnVpbHQgZm9yLiIKK21zZ3N0ciAiIgorIkRlZmluaWRvIHBvciBCPGRwa2c+IGVuIGVsIHNjcmlwdCBkZSBlbnRvcm5vIGRlbCBtYW50ZW5lZG9yIGNvbiBlbCB2YWxvciBkZSAiCisibGEgYXJxdWl0ZWN0dXJhIGRlIHBhcXVldGUgcGFyYSBsYSBjdWFsIHNlIGNvbXBpbMOzLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo3MDkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPERQS0dfTUFJTlRTQ1JJUFRfTkFNRT4iCittc2dzdHIgIkI8RFBLR19NQUlOVFNDUklQVF9OQU1FPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjcxMworbXNnaWQgIiIKKyJEZWZpbmVkIGJ5IEI8ZHBrZz4gb24gdGhlIG1haW50YWluZXIgc2NyaXB0IGVudmlyb25tZW50IHRvIHRoZSBuYW1lIG9mIHRoZSAiCisic2NyaXB0IHJ1bm5pbmcgKHByZWluc3QsIHBvc3RpbnN0LCBwcmVybSwgcG9zdHJtKS4iCittc2dzdHIgIiIKKyJEZWZpbmlkbyBwb3IgQjxkcGtnPiBlbiBlbCBzY3JpcHQgZGVsIGVudG9ybm8gZGVsIG1hbnRlbmVkb3IgY29uIGVsIHZhbG9yICIKKyJkZWwgbm9tYnJlIGRlbCBzY3JpcHQgZW4gZWplY3VjacOzbiAowqtwcmVpbnN0wrssIMKrcG9zdGluc3TCuywgwqtwcmVybcK7LCAiCisiwqtwb3N0cm3CuykuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzE2Cittc2dpZCAiVG8gbGlzdCBwYWNrYWdlcyByZWxhdGVkIHRvIHRoZSBlZGl0b3IgQjx2aT4oMSk6IgorbXNnc3RyICJQYXJhIGxpc3RhciBsb3MgcGFxdWV0ZXMgY29uIGVsIGVkaXRvciBCPHZpPigxKSBlbiBzdSBub21icmU6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzE4CisjLCBuby13cmFwCittc2dpZCAiICAgICBCPGRwa2cgLWwgXFwoYXEqdmkqXFwoYXE+XG4iCittc2dzdHIgIiAgICAgQjxkcGtnIC1sIFxcKGFxKnZpKlxcKGFxPlxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzIxCittc2dpZCAiVG8gc2VlIHRoZSBlbnRyaWVzIGluIEk8L3Zhci9saWIvZHBrZy9hdmFpbGFibGU+IG9mIHR3byBwYWNrYWdlczoiCittc2dzdHIgIlBhcmEgdmVyIGxhcyBlbnRyYWRhcyBlbiBJPC92YXIvbGliL2Rwa2cvYXZhaWxhYmxlPiBkZSBkb3MgcGFxdWV0ZXM6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzIzCisjLCBuby13cmFwCittc2dpZCAiICAgICBCPGRwa2cgLS1wcmludC1hdmFpbCBlbHZpcyB2aW0gfCBsZXNzPlxuIgorbXNnc3RyICIgICAgIEI8ZHBrZyAtLXByaW50LWF2YWlsIGVsdmlzIHZpbSB8IGxlc3M+XG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3MjYKK21zZ2lkICJUbyBzZWFyY2ggdGhlIGxpc3Rpbmcgb2YgcGFja2FnZXMgeW91cnNlbGY6IgorbXNnc3RyICJQYXJhIGJ1c2NhciBwZXJzb25hbG1lbnRlIGVuIGxhIGxpc3RhIGRlIHBhcXVldGVzOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjcyOAorIywgbm8td3JhcAorbXNnaWQgIiAgICAgQjxsZXNzIC92YXIvbGliL2Rwa2cvYXZhaWxhYmxlPlxuIgorbXNnc3RyICIgICAgIEI8bGVzcyAvdmFyL2xpYi9kcGtnL2F2YWlsYWJsZT5cbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjczMQorbXNnaWQgIlRvIHJlbW92ZSBhbiBpbnN0YWxsZWQgZWx2aXMgcGFja2FnZToiCittc2dzdHIgIlBhcmEgYm9ycmFyIHVuIHBhcXVldGUgaW5zdGFsYWRvIGxsYW1hZG8gZWx2aXM6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzMzCisjLCBuby13cmFwCittc2dpZCAiICAgICBCPGRwa2cgLXIgZWx2aXM+XG4iCittc2dzdHIgIiAgICAgQjxkcGtnIC1yIGVsdmlzPlxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzM4Cittc2dpZCAiIgorIlRvIGluc3RhbGwgYSBwYWNrYWdlLCB5b3UgZmlyc3QgbmVlZCB0byBmaW5kIGl0IGluIGFuIGFyY2hpdmUgb3IgQ0RST00uIFRoZSAiCisiXCJhdmFpbGFibGVcIiBmaWxlIHNob3dzIHRoYXQgdGhlIHZpbSBwYWNrYWdlIGlzIGluIHNlY3Rpb24gXCJlZGl0b3JzXCI6IgorbXNnc3RyICIiCisiUGFyYSBpbnN0YWxhciB1biBwYXF1ZXRlLCDDqXN0ZSB0aWVuZSBxdWUgZXN0YXIgZGlzcG9uaWJsZSBlbiB1biBhcmNoaXZvIG8gIgorImRpc2NvIMOzcHRpY28uIEVsIGZpY2hlcm8gwqthdmFpbGFibGXCuyBtdWVzdHJhIHF1ZSBlbCBwYXF1ZXRlIHZpbSBlc3TDoSBlbiBsYSAiCisic2VjY2nDs24gwqtlZGl0b3Jzwrs6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzQxCisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIiIKKyN8ICIgICAgIEI8Y2QgL2Nkcm9tL3Bvb2wvbWFpbi92L3ZpbT5cbiIKKyN8ICIgICAgIEI8ZHBrZyAtaSB2aW1fNC41LTMuZGViPlxuIgorbXNnaWQgIiIKKyIgICAgIEI8Y2QgL21lZGlhL2Nkcm9tL3Bvb2wvbWFpbi92L3ZpbT5cbiIKKyIgICAgIEI8ZHBrZyAtaSB2aW1fNC41LTMuZGViPlxuIgorbXNnc3RyICIiCisiICAgICBCPGNkIC9jZHJvbS9wb29sL21haW4vdi92aW0+XG4iCisiICAgICBCPGRwa2cgLWkgdmltXzQuNS0zLmRlYj5cbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjc0NAorbXNnaWQgIlRvIG1ha2UgYSBsb2NhbCBjb3B5IG9mIHRoZSBwYWNrYWdlIHNlbGVjdGlvbiBzdGF0ZXM6IgorbXNnc3RyICJQYXJhIGhhY2VyIHVuYSBjb3BpYSBsb2NhbCBkZSBsYXMgc2VsZWNjaW9uZXMgZGUgZXN0YWRvcyBkZSBwYXF1ZXRlczoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3NDYKKyMsIG5vLXdyYXAKK21zZ2lkICIgICAgIEI8ZHBrZyAtLWdldC1zZWxlY3Rpb25zIEU8Z3Q+bXlzZWxlY3Rpb25zPlxuIgorbXNnc3RyICIgICAgIEI8IGRwa2cgLS1nZXQtc2VsZWN0aW9ucyBFPGd0Pm1pcy1zZWxlY2Npb25lcz5cbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjc1MAorbXNnaWQgIiIKKyJZb3UgbWlnaHQgdHJhbnNmZXIgdGhpcyBmaWxlIHRvIGFub3RoZXIgY29tcHV0ZXIsIGFuZCBpbnN0YWxsIGl0IHRoZXJlIHdpdGg6IgorbXNnc3RyICJQb2Ryw61hIGNvcGlhciBlc3RlIGZpY2hlcm8gYSBvdHJhIG3DoXF1aW5hIGUgaW5zdGFsYXJsbyBhbGzDrSBjb246IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzUzCisjLCBuby13cmFwCittc2dpZCAiIgorIiAgICAgQjxkcGtnIC0tY2xlYXItc2VsZWN0aW9ucz5cbiIKKyIgICAgIEI8ZHBrZyAtLXNldC1zZWxlY3Rpb25zIEU8bHQ+bXlzZWxlY3Rpb25zPlxuIgorbXNnc3RyICIiCisiICAgICBCPGRwa2cgLS1jbGVhci1zZWxlY3Rpb25zPlxuIgorIiAgICAgQjxkcGtnIC0tc2V0LXNlbGVjdGlvbnMgRTxsdD5taXMtc2VsZWNjaW9uZXM+XG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3NTkKK21zZ2lkICIiCisiTm90ZSB0aGF0IHRoaXMgd2lsbCBub3QgYWN0dWFsbHkgaW5zdGFsbCBvciByZW1vdmUgYW55dGhpbmcsIGJ1dCBqdXN0IHNldCAiCisidGhlIHNlbGVjdGlvbiBzdGF0ZSBvbiB0aGUgcmVxdWVzdGVkIHBhY2thZ2VzLiBZb3Ugd2lsbCBuZWVkIHNvbWUgb3RoZXIgIgorImFwcGxpY2F0aW9uIHRvIGFjdHVhbGx5IGRvd25sb2FkIGFuZCBpbnN0YWxsIHRoZSByZXF1ZXN0ZWQgcGFja2FnZXMuIEZvciAiCisiZXhhbXBsZSwgcnVuIEI8YXB0LWdldCBkc2VsZWN0LXVwZ3JhZGU+LiIKK21zZ3N0ciAiIgorIlRlbmdhIGVuIGN1ZW50YSBxdWUgZXN0byBubyBpbnN0YWxhcsOhIG5pIGJvcnJhcsOhIG5hZGEsIHNpbXBsZW1lbnRlICIKKyJtb2RpZmljYXLDoSBlbCBlc3RhZG8gZGUgc2VsZWNjacOzbiBkZSBsb3MgcGFxdWV0ZXMgc2VsZWNjaW9uYWRvcy4gTmVjZXNpdGFyw6EgIgorIm90cmEgYXBsaWNhY2nDs24gcGFyYSBvYnRlbmVyIGxvcyBwYXF1ZXRlcyBlIGluc3RhbGFybG9zLiBQb3IgZWplbXBsbywgIgorImVqZWN1dGUgQjxhcHQtZ2V0IGRzZWxlY3QtdXBncmFkZT4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzYyCittc2dpZCAiIgorIk9yZGluYXJpbHksIHlvdSB3aWxsIGZpbmQgdGhhdCBCPGRzZWxlY3Q+KDEpIHByb3ZpZGVzIGEgbW9yZSBjb252ZW5pZW50IHdheSAiCisidG8gbW9kaWZ5IHRoZSBwYWNrYWdlIHNlbGVjdGlvbiBzdGF0ZXMuIgorbXNnc3RyICIiCisiUG9yIGxvIGdlbmVyYWwsIGVuY29udHJhcsOhIHF1ZSBCPGRzZWxlY3Q+KDgpIGVzIHVuYSBmb3JtYSBtw6FzIGPDs21vZGEgZGUgIgorIm1vZGlmaWNhciBsb3MgZXN0YWRvcyBkZSBzZWxlY2Npw7NuIGRlIGxvcyBwYXF1ZXRlcy4iCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLjE6NzY0CisjLCBuby13cmFwCittc2dpZCAiQURESVRJT05BTCBGVU5DVElPTkFMSVRZIgorbXNnc3RyICJGVU5DSU9OQUxJREFEIEFESUNJT05BTCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjc2NworbXNnaWQgIiIKKyJBZGRpdGlvbmFsIGZ1bmN0aW9uYWxpdHkgY2FuIGJlIGdhaW5lZCBieSBpbnN0YWxsaW5nIGFueSBvZiB0aGUgZm9sbG93aW5nICIKKyJwYWNrYWdlczogQjxhcHQ+LCBCPGFwdGl0dWRlPiBhbmQgQjxkZWJzdW1zPi4iCittc2dzdHIgIiIKKyJQdWVkZSBnYW5hciBmdW5jaW9uYWxpZGFkZXMgYWRpY2lvbmFsZXMgaW5zdGFsYW5kbyBhbGd1bm8gZGUgbG9zIHNpZ3VpZW50ZXMgIgorInBhcXVldGVzOiBJPGFwdD4sIEk8YXB0aXR1ZGU+IHkgSTxkZWJzdW1zPi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3NzkKK21zZ2lkICIiCisiQjxhcHRpdHVkZT4oMSksIEI8YXB0PigxKSwgQjxkc2VsZWN0PigxKSwgQjxkcGtnLWRlYj4oMSksIEI8ZHBrZy1xdWVyeT4oMSksICIKKyJCPGRlYj4oNSksIEI8ZGViLWNvbnRyb2w+KDUpLCBCPGRwa2cuY2ZnPig1KSwgYW5kIEI8ZHBrZy1yZWNvbmZpZ3VyZT4oOCkuIgorbXNnc3RyICIiCisiQjxhcHRpdHVkZT4oMSksIEI8YXB0PigxKSwgQjxkc2VsZWN0PigxKSwgQjxkcGtnLWRlYj4oMSksIEI8ZHBrZy1xdWVyeT4oMSksICIKKyJCPGRlYj4oNSksIEI8ZGViLWNvbnRyb2w+KDUpLCBCPGRwa2cuY2ZnPig1KSwgeSBCPGRwa2ctcmVjb25maWd1cmU+KDgpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjc4MgorbXNnaWQgIkI8LS1uby1hY3Q+IHVzdWFsbHkgZ2l2ZXMgbGVzcyBpbmZvcm1hdGlvbiB0aGFuIG1pZ2h0IGJlIGhlbHBmdWwuIgorbXNnc3RyICIiCisiSGFiaXR1YWxtZW50ZSwgbGEgb3BjacOzbiBCPC0tbm8tYWN0PiBkYSBtZW5vcyBpbmZvcm1hY2nDs24gZGUgbGEgcXVlIG5lY2VzaXRhLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjc4NSBkcGtnLmNmZy41OjIyCittc2dpZCAiIgorIlNlZSBJPC91c3Ivc2hhcmUvZG9jL2Rwa2cvVEhBTktTPiBmb3IgdGhlIGxpc3Qgb2YgcGVvcGxlIHdobyBoYXZlICIKKyJjb250cmlidXRlZCB0byBCPGRwa2c+LiIKK21zZ3N0ciAiIgorIkNvbnN1bHRlIEk8L3Vzci9zaGFyZS9kb2MvZHBrZy9USEFOS1M+IHBhcmEgdW5hIGxpc3RhIGRlIGxhcyBwZXJzb25hcyBxdWUgIgorImhhbiBjb250cmlidWlkbyBhIEI8ZHBrZz4uIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxCisjLCBuby13cmFwCittc2dpZCAiZHBrZy1hcmNoaXRlY3R1cmUiCittc2dzdHIgImRwa2ctYXJjaGl0ZWN0dXJlIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjQKK21zZ2lkICIiCisiZHBrZy1hcmNoaXRlY3R1cmUgLSBzZXQgYW5kIGRldGVybWluZSB0aGUgYXJjaGl0ZWN0dXJlIGZvciBwYWNrYWdlIGJ1aWxkaW5nIgorbXNnc3RyICIiCisiZHBrZy1hcmNoaXRlY3R1cmUgLSBDb25maWd1cmFyIHkgZGV0ZXJtaW5hciBsYSBhcnF1aXRlY3R1cmEgcGFyYSBsYSAiCisiY29uc3RydWNjacOzbiBkZSBwYXF1ZXRlcyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo4CisjLCBmdXp6eQorI3wgbXNnaWQgIkI8ZHBrZy1hcmNoaXRlY3R1cmU+IFtJPG9wdGlvbnM+XSBbSTxjb21tYW5kcz5dIgorbXNnaWQgIkI8ZHBrZy1hcmNoaXRlY3R1cmU+IFtJPG9wdGlvbj4uLi5dIFtJPGNvbW1hbmQ+XSIKK21zZ3N0ciAiQjxkcGtnLWFyY2hpdGVjdHVyZT4gW0k8b3BjaW9uZXM+XSBbSTzDs3JkZW5lcz5dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEzCittc2dpZCAiIgorImRwa2ctYXJjaGl0ZWN0dXJlIGRvZXMgcHJvdmlkZSBhIGZhY2lsaXR5IHRvIGRldGVybWluZSBhbmQgc2V0IHRoZSBidWlsZCBhbmQgIgorImhvc3QgYXJjaGl0ZWN0dXJlIGZvciBwYWNrYWdlIGJ1aWxkaW5nLiIKK21zZ3N0ciAiIgorImRwa2ctYXJjaGl0ZWN0dXJlIGZhY2lsaXRhIGRldGVybWluYXIgeSBjb25maWd1cmFyIGxhIGFycXVpdGVjdHVyYSBkZSAiCisiY29uc3RydWNjacOzbiB5IGRlIGxhIG3DoXF1aW5hIGFuZml0cmnDs24gcGFyYSBsYSBjb25zdHJ1Y2Npw7NuIGRlIHVuIHBhcXVldGUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjE2Cittc2dpZCAiIgorIlRoZSBidWlsZCBhcmNoaXRlY3R1cmUgaXMgYWx3YXlzIGRldGVybWluZWQgYnkgYW4gZXh0ZXJuYWwgY2FsbCB0byBCPGRwa2c+IgorIigxKSwgYW5kIGNhbiBub3QgYmUgc2V0IGF0IHRoZSBjb21tYW5kIGxpbmUuIgorbXNnc3RyICIiCisiTGEgYXJxdWl0ZWN0dXJhIGRlIGNvbnN0cnVjY2nDs24gc2llbXByZSBzZSBkZXRlcm1pbmEgY29uIHVuYSBpbnZvY2FjacOzbiAiCisiZXh0ZXJuYSBhIEI8ZHBrZz4oMSksIHkgbm8gc2UgcHVlZGUgZGVmaW5pciBlbiBsYSBsw61uZWEgZGUgw7NyZGVuZXMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI1Cittc2dpZCAiIgorIllvdSBjYW4gc3BlY2lmeSB0aGUgaG9zdCBhcmNoaXRlY3R1cmUgYnkgcHJvdmlkaW5nIG9uZSBvciBib3RoIG9mIHRoZSAiCisib3B0aW9ucyBCPC1hPiBhbmQgQjwtdD4uIFRoZSBkZWZhdWx0IGlzIGRldGVybWluZWQgYnkgYW4gZXh0ZXJuYWwgY2FsbCB0byAiCisiQjxnY2M+KDEpLCBvciB0aGUgc2FtZSBhcyB0aGUgYnVpbGQgYXJjaGl0ZWN0dXJlIGlmIFxccy0xQ0NcXHMwIG9yIGdjYyBhcmUgIgorImJvdGggbm90IGF2YWlsYWJsZS4gT25lIG91dCBvZiBCPC1hPiBhbmQgQjwtdD4gaXMgc3VmZmljaWVudCwgdGhlIHZhbHVlIG9mICIKKyJ0aGUgb3RoZXIgd2lsbCBiZSBzZXQgdG8gYSB1c2FibGUgZGVmYXVsdC4gSW5kZWVkLCBpdCBpcyBvZnRlbiBiZXR0ZXIgdG8gIgorIm9ubHkgc3BlY2lmeSBvbmUsIGJlY2F1c2UgQjxkcGtnLWFyY2hpdGVjdHVyZT4gd2lsbCB3YXJuIHlvdSBpZiB5b3VyIGNob2ljZSAiCisiZG9lcyBub3QgbWF0Y2ggdGhlIGRlZmF1bHQuIgorbXNnc3RyICIiCisiUHVlZGUgZGVmaW5pciBsYSBhcnF1aXRlY3R1cmEgZGVsIGFuZml0cmnDs24gaW50cm9kdWNpZW5kbyB1bmEgbyBhbWJhcyAiCisib3BjaW9uZXMgQjwtYT4geSBCPC10Pi4gRWwgdmFsb3IgcG9yIG9taXNpw7NuIGVzIHVuYSBpbnZvY2FjacOzbiBleHRlcm5hIGEgIgorIkI8Z2NjPigxKSwgbyBsYSBtaXNtYSBxdWUgbGEgYXJxdWl0ZWN0dXJhIGRlIGNvbnN0cnVjY2nDs24gZW4gY2FzbyBkZSBubyAiCisiZGlzcG9uZXIgZGUgXFxzLTFDQ1xcczAgbyBnY2MuIEVzIHN1ZmljaWVudGUgdXNhciBCPC1hPiBvIEI8LXQ+LCBlbCB2YWxvciAiCisiZGVsIG90cm8gc2UgZGVmaW5pcsOhIGNvbiB1biB2YWxvciBwcmVkZWZpbmlkbyBhZGVjdWFkby4gRGUgaGVjaG8sIGEgdmVjZXMgZXMgIgorIm1lam9yIGRlZmluaXIgc8OzbG8gdW5vLCB5YSBxdWUgQjxkcGtnLWFyY2hpdGVjdHVyZT4gbGUgYXZpc2Fyw6Egc2kgc3Ugb3BjacOzbiAiCisibm8gZW5jYWphIGNvbiBsYSBvcGNpw7NuIHByZWRlZmluaWRhLiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjYgZHBrZy1idWlsZGZsYWdzLjE6NDUgZHBrZy1kZWIuMToyNyBkcGtnLWRpdmVydC44OjI0CisjOiBkcGtnLXF1ZXJ5LjE6MTMgZHBrZy1zb3VyY2UuMToxOCBkcGtnLXNwbGl0LjE6MzEgZHBrZy1zdGF0b3ZlcnJpZGUuODoyMworIzogZHBrZy10cmlnZ2VyLjE6MjQgZHBrZy12ZW5kb3IuMToxNCBzdGFydC1zdG9wLWRhZW1vbi44OjM0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjAyCisjLCBuby13cmFwCittc2dpZCAiQ09NTUFORFMiCittc2dzdHIgIsOTUkRFTkVTIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyNworIywgbm8td3JhcAorbXNnaWQgIkI8LWw+IgorbXNnc3RyICJCPC1sPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTozMQorbXNnaWQgIiIKKyJQcmludCB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGVzLCBvbmUgZWFjaCBsaW5lLCBpbiB0aGUgZm9ybWF0ICIKKyJJPFZBUklBQkxFPXZhbHVlPi4gVGhpcyBpcyB0aGUgZGVmYXVsdCBhY3Rpb24uIgorbXNnc3RyICIiCisiTXVlc3RyYSBsYXMgdmFyaWFibGVzIGRlIGVudG9ybm8sIHVuYSBwb3IgbMOtbmVhLCBjb24gZWwgZm9ybWF0byAiCisiSTxWQVJJQUJMRT12YWxvcj4uIEVzdGEgZXMgbGEgYWNjacOzbiBwcmVkZWZpbmlkYS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjMxCisjLCBuby13cmFwCittc2dpZCAiQjwtZT5JPGRlYmlhbi1hcmNoaXRlY3R1cmU+IgorbXNnc3RyICJCPC1lPkk8ZGViaWFuLWFyY2hpdGVjdHVyZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MzcKK21zZ2lkICIiCisiQ2hlY2sgZm9yIGVxdWFsaXR5IG9mIGFyY2hpdGVjdHVyZS4gQnkgZGVmYXVsdCBJPGRlYmlhbi1hcmNoaXRlY3R1cmU+IGlzICIKKyJjb21wYXJlZCBhZ2FpbnN0IHRoZSBjdXJyZW50IERlYmlhbiBhcmNoaXRlY3R1cmUsIGJlaW5nIHRoZSBob3N0LiAgVGhpcyAiCisiYWN0aW9uIHdpbGwgbm90IGV4cGFuZCB0aGUgYXJjaGl0ZWN0dXJlIHdpbGRjYXJkcy4gQ29tbWFuZCBmaW5pc2hlcyB3aXRoIGFuICIKKyJleGl0IHN0YXR1cyBvZiAwIGlmIG1hdGNoZWQsIDEgaWYgbm90IG1hdGNoZWQuIgorbXNnc3RyICIiCisiUmV2aXNhIHNpIGxhIGFycXVpdGVjdHVyYSBlcyBsYSBtaXNtYS4gUG9yIG9taXNpw7NuLCBJPGRlYmlhbi1hcmNoaXRlY3R1cmU+ICIKKyJzZSBjb21wYXJhIGNvbiBsYSBhcnF1aXRlY3R1cmEgZGVsIHNpc3RlbWEgRGViaWFuIGFjdHVhbCwgZWwgc2lzdGVtYSAiCisiYW5maXRyacOzbi4gRXN0YSBhY2Npw7NuIG5vIGV4cGFuZGUgbG9zIGNvbW9kaW5lcyBkZSBhcnF1aXRlY3R1cmEuIExhIG9yZGVuICIKKyJmaW5hbGl6YSBjb24gdW4gZXN0YWRvIGRlIHNhbGlkYSBkZSBjZXJvIHNpIGNvaW5jaWRlbiwgeSBkZSAxIGVuIGNhc28gIgorImNvbnRyYXJpby4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjM3CisjLCBuby13cmFwCittc2dpZCAiQjwtaT5JPGFyY2hpdGVjdHVyZS13aWxkY2FyZD4iCittc2dzdHIgIkI8LWk+STxjb21vZMOtbi1hcnF1aXRlY3R1cmE+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjQzCittc2dpZCAiIgorIkNoZWNrIGZvciBpZGVudGl0eSBvZiBhcmNoaXRlY3R1cmUgYnkgZXhwYW5kaW5nIEk8YXJjaGl0ZWN0dXJlLXdpbGRjYXJkPiBhcyAiCisiYW4gYXJjaGl0ZWN0dXJlIHdpbGRjYXJkIGFuZCBjb21wYXJpbmcgYWdhaW5zdCB0aGUgY3VycmVudCBEZWJpYW4gIgorImFyY2hpdGVjdHVyZS4gQ29tbWFuZCBmaW5pc2hlcyB3aXRoIGFuIGV4aXQgc3RhdHVzIG9mIDAgaWYgbWF0Y2hlZCwgMSBpZiBub3QgIgorIm1hdGNoZWQuIgorbXNnc3RyICIiCisiUmV2aXNhIGxhIGlkZW50aWRhZCBkZSBsYSBhcnF1aXRlY3R1cmEgZXhwYW5kaWVuZG8gSTxjb21vZGluLWFycXVpdGVjdHVyYT4gIgorImNvbW8gdW4gY29tb2TDrW4gZGUgYXJxdWl0ZWN0dXJhLCB5IGNvbXBhcsOhbmRvbGEgY29uIGxhIGFycXVpdGVjdHVyYSBkZWwgIgorInNpc3RlbWEgRGViaWFuIGFjdHVhbC4gTGEgb3JkZW4gZmluYWxpemEgY29uIHVuIGVzdGFkbyBkZSBzYWxpZGEgZGUgY2VybyBzaSAiCisiY29pbmNpZGUsIHkgZGUgMSBlbiBjYXNvIGNvbnRyYXJpby4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjQzCisjLCBuby13cmFwCittc2dpZCAiQjwtcT5JPHZhcmlhYmxlLW5hbWU+IgorbXNnc3RyICJCPC1xPkk8bm9tYnJlLXZhcmlhYmxlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo0NgorbXNnaWQgIlByaW50IHRoZSB2YWx1ZSBvZiBhIHNpbmdsZSB2YXJpYWJsZS4iCittc2dzdHIgIk11ZXN0cmEgZWwgdmFsb3IgZGUgdW5hIMO6bmljYSB2YXJpYWJsZS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjQ2CisjLCBuby13cmFwCittc2dpZCAiQjwtcz4iCittc2dzdHIgIkI8LXM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjUwCittc2dpZCAiIgorIlByaW50IGFuIGV4cG9ydCBjb21tYW5kLiBUaGlzIGNhbiBiZSB1c2VkIHRvIHNldCB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGVzICIKKyJ1c2luZyBldmFsLiIKK21zZ3N0ciAiIgorIk11ZXN0cmEgdW5hIG9yZGVuIMKrZXhwb3J0wrsuIFNlIHB1ZWRlIHVzYXIgcGFyYSBkZWZpbmlyIGxhcyB2YXJpYWJsZXMgZGUgIgorImVudG9ybm8gbWVkaWFudGUgZXZhbC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjUwCisjLCBuby13cmFwCittc2dpZCAiQjwtdT4iCittc2dzdHIgIkI8LXU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjUzCittc2dpZCAiUHJpbnQgYSBzaW1pbGFyIGNvbW1hbmQgdG8gQjwtcz4gYnV0IHRvIHVuc2V0IGFsbCB2YXJpYWJsZXMuIgorbXNnc3RyICIiCisiTXVlc3RyYSB1bmEgb3JkZW4gc2ltaWxhciBhIEI8LXM+LCBwZXJvIHBhcmEgZWxpbWluYXIgbGEgZGVmaW5pY2nDs24gIgorIijCq3Vuc2V0wrspIGRlIHRvZGFzIGxhcyB2YXJpYWJsZXMuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo1MworIywgbm8td3JhcAorbXNnaWQgIkI8LWM+STwgY29tbWFuZD4iCittc2dzdHIgIkI8LWM+STwgb3JkZW4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjU3Cittc2dpZCAiIgorIkV4ZWN1dGUgYSBJPGNvbW1hbmQ+IGluIGFuIGVudmlyb25tZW50IHdoaWNoIGhhcyBhbGwgdmFyaWFibGVzIHNldCB0byB0aGUgIgorImRldGVybWluZWQgdmFsdWUuIgorbXNnc3RyICIiCisiRWplY3V0YSB1bmEgSTxvcmRlbj4gZW4gdW4gZW50b3JubyBjdXlhcyB2YXJpYWJsZXMgeWEgZXN0w6FuIGRlZmluaWRhcyBjb24gdW4gIgorInZhbG9yIHByZWRlZmluaWRvLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NTcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1MPiIKK21zZ3N0ciAiQjwtTD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NjAKK21zZ2lkICJQcmludCBhIGxpc3Qgb2YgdmFsaWQgYXJjaGl0ZWN0dXJlIG5hbWVzLiIKK21zZ3N0ciAiTXVlc3RyYSB1bmEgbGlzdGEgZGUgbm9tYnJlcyBkZSBhcnF1aXRlY3R1cmEgdsOhbGlkb3MuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjYzIGRwa2ctYnVpbGRmbGFncy4xOjkyIGRwa2ctYnVpbGRwYWNrYWdlLjE6MjI2CisjOiBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6MzYgZHBrZy1kaXN0YWRkZmlsZS4xOjM1IGRwa2ctZGViLjE6MTc1CisjOiBkcGtnLWRpdmVydC44Ojc0IGRwa2ctZ2VuY2hhbmdlcy4xOjEzNCBkcGtnLWdlbmNvbnRyb2wuMToxMjQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQ0NiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjQxIGRwa2ctbmFtZS4xOjYxCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MzYgZHBrZy1xdWVyeS4xOjExMyBkcGtnLXNjYW5wYWNrYWdlcy4xOjk5CisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6NjggZHBrZy1zaGxpYmRlcHMuMToyMTggZHBrZy1zb3VyY2UuMTo5OQorIzogZHBrZy1zcGxpdC4xOjEyOSBkcGtnLXN0YXRvdmVycmlkZS44OjQ3IGRwa2ctdHJpZ2dlci4xOjM0IGRwa2ctdmVuZG9yLjE6MzEKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMTkKK21zZ2lkICJTaG93IHRoZSB1c2FnZSBtZXNzYWdlIGFuZCBleGl0LiIKK21zZ3N0ciAiTXVlc3RyYSBlbCBtb2RvIGRlIHVzbyB5IHRlcm1pbmEuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjY2IGRwa2ctYnVpbGRmbGFncy4xOjk1IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjI5CisjOiBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6MzkgZHBrZy1kaXN0YWRkZmlsZS4xOjM4IGRwa2ctZGViLjE6MTc4CisjOiBkcGtnLWRpdmVydC44Ojc3IGRwa2ctZ2VuY2hhbmdlcy4xOjEzNyBkcGtnLWdlbmNvbnRyb2wuMToxMjcKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQ0OSBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjQ0IGRwa2ctbmFtZS4xOjY0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MzkgZHBrZy1xdWVyeS4xOjExNiBkcGtnLXNjYW5wYWNrYWdlcy4xOjEwMgorIzogZHBrZy1zY2Fuc291cmNlcy4xOjcwIGRwa2ctc2hsaWJkZXBzLjE6MjIxIGRwa2ctc291cmNlLjE6MTAyCisjOiBkcGtnLXNwbGl0LjE6MTMyIGRwa2ctc3RhdG92ZXJyaWRlLjg6NTAgZHBrZy10cmlnZ2VyLjE6MzcgZHBrZy12ZW5kb3IuMTozNAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjMyMgorbXNnaWQgIlNob3cgdGhlIHZlcnNpb24gYW5kIGV4aXQuIgorbXNnc3RyICJNdWVzdHJhIGxhIHZlcnNpw7NuIHkgdGVybWluYS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjY4CisjLCBuby13cmFwCittc2dpZCAiQjwtYT5JPGRlYmlhbi1hcmNoaXRlY3R1cmU+IgorbXNnc3RyICJCPC1hPkk8ZGViaWFuLWFyY2hpdGVjdHVyZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NzEKK21zZ2lkICJTZXQgdGhlIERlYmlhbiBhcmNoaXRlY3R1cmUuIgorbXNnc3RyICJEZWZpbmUgbGEgYXJxdWl0ZWN0dXJhIGRlIERlYmlhbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjcxIGRwa2ctYnVpbGRwYWNrYWdlLjE6MTEwCisjLCBuby13cmFwCittc2dpZCAiQjwtdD5JPGdudS1zeXN0ZW0tdHlwZT4iCittc2dzdHIgIkI8LXQ+STx0aXBvLXNpc3RlbWEtZ251PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo3NAorbXNnaWQgIlNldCB0aGUgR05VIHN5c3RlbSB0eXBlLiIKK21zZ3N0ciAiRGVmaW5lIGVsIHRpcG8gZGUgc2lzdGVtYSBHTlUuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo3NAorIywgbm8td3JhcAorbXNnaWQgIkI8LWY+IgorbXNnc3RyICJCPC1mPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo4MQorbXNnaWQgIiIKKyJWYWx1ZXMgc2V0IGJ5IGV4aXN0aW5nIGVudmlyb25tZW50IHZhcmlhYmxlcyB3aXRoIHRoZSBzYW1lIG5hbWUgYXMgdXNlZCBieSAiCisidGhlIHNjcmlwdHMgYXJlIGhvbm9yZWQgKGkuZS4gdXNlZCBieSBCPGRwa2ctYXJjaGl0ZWN0dXJlPiksIGV4Y2VwdCBpZiB0aGlzICIKKyJmb3JjZSBmbGFnIGlzIHByZXNlbnQuIFRoaXMgYWxsb3dzIHRoZSB1c2VyIHRvIG92ZXJyaWRlIGEgdmFsdWUgZXZlbiB3aGVuICIKKyJ0aGUgY2FsbCB0byBCPGRwa2ctYXJjaGl0ZWN0dXJlPiBpcyBidXJpZWQgaW4gc29tZSBvdGhlciBzY3JpcHQgKGZvciBleGFtcGxlICIKKyJCPGRwa2ctYnVpbGRwYWNrYWdlPigxKSkuIgorbXNnc3RyICIiCisiTG9zIHNjcmlwdHMgcmVzcGV0YW4gbG9zIHZhbG9yZXMgZGUgdmFyaWFibGVzIGRlIGVudG9ybm8gcHJlZXhpc3RlbnRlcyBxdWUgIgorInRpZW5lbiBlbCBtaXNtbyBub21icmUgcXVlIGxvcyB2YWxvcmVzIGNvbnRlbmlkb3MgZW4gZWwgc2NyaXB0IChwb3IgZWplbXBsbywgIgorInVzYWRvcyBwb3IgQjxkcGtnLWFyY2hpdGVjdHVyZT4pLCBhIG1lbm9zIHF1ZSBzZSB1c2UgZXN0YSBtYXJjYSBkZSBmb3J6YWRvLiAiCisiUGVybWl0ZSBhbCB1c3VhcmlvIHNvYnJlZXNjcmliaXIgdW4gdmFsb3IsIGHDum4gY3VhbmRvIGxhIGludm9jYWNpw7NuIGEgQjxkcGtnLSIKKyJhcmNoaXRlY3R1cmU+IHNlIGVuY3VlbnRyYSBlbiBvdHJvIHNjcmlwdCAocG9yIGVqZW1wbG8sIEI8ZHBrZy1idWlsZHBhY2thZ2U+IgorIigxKSkuIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo4MgorIywgbm8td3JhcAorbXNnaWQgIlRFUk1TIgorbXNnc3RyICJUw4lSTUlOT1MiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjgzCisjLCBuby13cmFwCittc2dpZCAiYnVpbGQgbWFjaGluZSIKK21zZ3N0ciAibcOhcXVpbmEgZGUgY29uc3RydWNjacOzbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo4NQorbXNnaWQgIlRoZSBtYWNoaW5lIHRoZSBwYWNrYWdlIGlzIGJ1aWx0IG9uLiIKK21zZ3N0ciAiTGEgbcOhcXVpbmEgZW4gbGEgcXVlIHNlIGNvbnN0cnV5ZSBlbCBwYXF1ZXRlLiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6ODUKKyMsIG5vLXdyYXAKK21zZ2lkICJob3N0IG1hY2hpbmUiCittc2dzdHIgIm3DoXF1aW5hIGFuZml0cmnDs24iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6ODcKK21zZ2lkICJUaGUgbWFjaGluZSB0aGUgcGFja2FnZSBpcyBidWlsdCBmb3IuIgorbXNnc3RyICJMYSBtw6FxdWluYSBwYXJhIGxhIGN1YWwgc2UgY29uc3RydXllIGVsIHBhcXVldGUuIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo4NworIywgbm8td3JhcAorbXNnaWQgIkRlYmlhbiBhcmNoaXRlY3R1cmUiCittc2dzdHIgIkFycXVpdGVjdHVyYSBkZSBEZWJpYW4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6OTAKK21zZ2lkICIiCisiVGhlIERlYmlhbiBhcmNoaXRlY3R1cmUgc3RyaW5nLCB3aGljaCBzcGVjaWZpZXMgdGhlIGJpbmFyeSB0cmVlIGluIHRoZSAiCisiXFxzLTFGVFBcXHMwIGFyY2hpdmUuIEV4YW1wbGVzOiBpMzg2LCBzcGFyYywgaHVyZC1pMzg2LiIKK21zZ3N0ciAiIgorIkxhIGNhZGVuYSBkZSBsYSBhcnF1aXRlY3R1cmEgZGUgRGViaWFuLCBxdWUgZXNwZWNpZmljYSBlbCDDoXJib2wgYmluYXJpbyBlbiAiCisiZWwgYXJjaGl2byBcXHMtMUZUUFxcczAuIEVqZW1wbG9zOiBpMzg2LCBzcGFyYywgaHVyZC1pMzg2LiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6OTAKKyMsIG5vLXdyYXAKK21zZ2lkICJhcmNoaXRlY3R1cmUgd2lsZGNhcmQiCittc2dzdHIgImNvbW9kw61uIGRlIGFycXVpdGVjdHVyYSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo5NAorbXNnaWQgIiIKKyJBbiBhcmNoaXRlY3R1cmUgd2lsZGNhcmQgaXMgYSBzcGVjaWFsIGFyY2hpdGVjdHVyZSBzdHJpbmcgdGhhdCB3aWxsIG1hdGNoICIKKyJhbnkgcmVhbCBhcmNoaXRlY3R1cmUgYmVpbmcgcGFydCBvZiBpdC4gVGhlIGdlbmVyYWwgZm9ybSBpcyBFPGx0Pmtlcm5lbEU8Z3Q+LSIKKyJFPGx0PmNwdUU8Z3Q+LiAgRXhhbXBsZXM6IGxpbnV4LWFueSwgYW55LWkzODYsIGh1cmQtYW55LiIKK21zZ3N0ciAiIgorIlVuIGNvbW9kw61uIGRlIGFycXVpdGVjdHVyYSBlcyB1bmEgY2FkZW5hIGVzcGVjaWFsIGRlIGFycXVpdGVjdHVyYSBxdWUgZW5jYWphICIKKyJjb24gY3VhbHF1aWVyIGFycXVpdGVjdHVyYSByZWFsIGRlbCBxdWUgZXMgcGFydGUuIExhIGZvcm1hIGhhYml0dWFsIGVzICIKKyJFPGx0Pmtlcm5lbEU8Z3Q+LUU8bHQ+Y3B1RTxndD4uIEVqZW1wbG9zOiBsaW51eC1hbnksIGFueS1pMzg2LCBodXJkLWFueS4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjk0CisjLCBuby13cmFwCittc2dpZCAiXFxzLTFHTlVcXHMwIHN5c3RlbSB0eXBlIgorbXNnc3RyICJ0aXBvIGRlIHNpc3RlbWEgXFxzLTFHTlVcXHMwIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjk4Cittc2dpZCAiIgorIkFuIGFyY2hpdGVjdHVyZSBzcGVjaWZpY2F0aW9uIHN0cmluZyBjb25zaXN0aW5nIG9mIHR3byBwYXJ0cyBzZXBhcmF0ZWQgYnkgYSAiCisiZGFzaDogY3B1IGFuZCBzeXN0ZW0uIEV4YW1wbGVzOiBpMzg2LWxpbnV4LWdudSwgc3BhcmMtbGludXgtZ251LCBpMzg2LWdudSwgIgorIng4Nl82NC1uZXRic2QuIgorbXNnc3RyICIiCisiVW5hIGNhZGVuYSBkZSBkZWZpbmljacOzbiBkZSBhcnF1aXRlY3R1cmEgcXVlIGNvbnNpc3RlIGRlIGRvcyBwYXJ0ZXMgIgorInNlcGFyYWRhcyBwb3IgdW4gZ3Vpw7NuOiBlbCBwcm9jZXNhZG9yIHkgZWwgc2lzdGVtYS4gRWplbXBsb3M6IGkzODYtbGludXgtIgorImdudSwgc3BhcmMtbGludXgtZ251LCBpMzg2LWdudSwgeDg2XzY0LW5ldGJzZC4iCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjk5CisjLCBuby13cmFwCittc2dpZCAiVkFSSUFCTEVTIgorbXNnc3RyICJWQVJJQUJMRVMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTAxCittc2dpZCAiVGhlIGZvbGxvd2luZyB2YXJpYWJsZXMgYXJlIHNldCBieSBCPGRwa2ctYXJjaGl0ZWN0dXJlPjoiCittc2dzdHIgIkxhcyBzaWd1aWVudGVzIHZhcmlhYmxlcyBzZSBkZWZpbmVuIG1lZGlhbnRlIEI8ZHBrZy1hcmNoaXRlY3R1cmU+OiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTAxCisjLCBuby13cmFwCittc2dpZCAiXFxzLTFERUJfQlVJTERfQVJDSFxcczAiCittc2dzdHIgIlxccy0xREVCX0JVSUxEX0FSQ0hcXHMwIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEwMworbXNnaWQgIlRoZSBEZWJpYW4gYXJjaGl0ZWN0dXJlIG9mIHRoZSBidWlsZCBtYWNoaW5lLiIKK21zZ3N0ciAiTGEgYXJxdWl0ZWN0dXJhIGRlIERlYmlhbiBkZSBsYSBtw6FxdWluYSBkZSBjb25zdHJ1Y2Npw7NuLiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTAzCisjLCBuby13cmFwCittc2dpZCAiXFxzLTFERUJfQlVJTERfQVJDSF9PU1xcczAiCittc2dzdHIgIlxccy0xREVCX0JVSUxEX0FSQ0hfT1NcXHMwIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEwNQorbXNnaWQgIlRoZSBEZWJpYW4gc3lzdGVtIG5hbWUgb2YgdGhlIGJ1aWxkIG1hY2hpbmUuIgorbXNnc3RyICJFbCBub21icmUgZGVsIHNpc3RlbWEgRGViaWFuIGRlIGxhIG3DoXF1aW5hIGRlIGNvbnN0cnVjY2nDs24uIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMDUKKyMsIG5vLXdyYXAKK21zZ2lkICJcXHMtMURFQl9CVUlMRF9BUkNIX0NQVVxcczAiCittc2dzdHIgIlxccy0xREVCX0JVSUxEX0FSQ0hfQ1BVXFxzMCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMDcKK21zZ2lkICJUaGUgRGViaWFuIGNwdSBuYW1lIG9mIHRoZSBidWlsZCBtYWNoaW5lLiIKK21zZ3N0ciAiRWwgbm9tYnJlIGRlIERlYmlhbiBkZWwgcHJvY2VzYWRvciBkZSBsYSBtw6FxdWluYSBkZSBjb25zdHJ1Y2Npw7NuLiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTA3CisjLCBuby13cmFwCittc2dpZCAiXFxzLTFERUJfQlVJTERfQVJDSF9CSVRTXFxzMCIKK21zZ3N0ciAiXFxzLTFERUJfQlVJTERfQVJDSF9CSVRTXFxzMCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMDkKK21zZ2lkICJUaGUgcG9pbnRlciBzaXplIG9mIHRoZSBidWlsZCBtYWNoaW5lIChpbiBiaXRzKS4iCittc2dzdHIgIkVsIHRhbWHDsW8gZGVsIHB1bnRlcm8gZGUgbGEgbcOhcXVpbmEgZGUgY29uc3RydWNjacOzbiwgZW4gYml0cy4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEwOQorIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0JVSUxEX0FSQ0hfRU5ESUFOXFxzMCIKK21zZ3N0ciAiXFxzLTFERUJfQlVJTERfQVJDSF9FTkRJQU5cXHMwIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjExMQorbXNnaWQgIlRoZSBlbmRpYW5uZXNzIG9mIHRoZSBidWlsZCBtYWNoaW5lIChsaXR0bGUgLyBiaWcpLiIKK21zZ3N0ciAiIgorIkVsIG5pdmVsIGRlIMKrZW5kaWFuaXphY2nDs27CuyBkZSBsYSBtw6FxdWluYSBkZSBjb25zdHJ1Y2Npw7NuLCDCq2xpdHRsZcK7IG8gwqtiaWfCuy4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjExMQorIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0JVSUxEX0dOVV9DUFVcXHMwIgorbXNnc3RyICJcXHMtMURFQl9CVUlMRF9HTlVfQ1BVXFxzMCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMTMKK21zZ2lkICJUaGUgXFxzLTFDUFVcXHMwIHBhcnQgb2YgXFxzLTFERUJfQlVJTERfR05VX1RZUEVcXHMwLiIKK21zZ3N0ciAiTGEgcGFydGUgXFxzLTFDUFVcXHMwIGRlIFxccy0xREVCX0JVSUxEX0dOVV9UWVBFXFxzMC4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjExMworIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0JVSUxEX0dOVV9TWVNURU1cXHMwIgorbXNnc3RyICJcXHMtMURFQl9CVUlMRF9HTlVfU1lTVEVNXFxzMCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMTUKK21zZ2lkICJUaGUgU3lzdGVtIHBhcnQgb2YgXFxzLTFERUJfQlVJTERfR05VX1RZUEVcXHMwLiIKK21zZ3N0ciAiTGEgcGFydGUgZGUgwqtTeXN0ZW3CuyBkZSBcXHMtMURFQl9CVUlMRF9HTlVfVFlQRVxcczAuIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMTUKKyMsIG5vLXdyYXAKK21zZ2lkICJcXHMtMURFQl9CVUlMRF9HTlVfVFlQRVxcczAiCittc2dzdHIgIlxccy0xREVCX0JVSUxEX0dOVV9UWVBFXFxzMCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMTcKK21zZ2lkICJUaGUgXFxzLTFHTlVcXHMwIHN5c3RlbSB0eXBlIG9mIHRoZSBidWlsZCBtYWNoaW5lLiIKK21zZ3N0ciAiRWwgdGlwbyBkZSBzaXN0ZW1hIFxccy0xR05VXFxzMCBkZSBsYSBtw6FxdWluYSBkZSBjb25zdHJ1Y2Npw7NuLiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTE3CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIlxccy0xREVCX0JVSUxEX0FSQ0hcXHMwIgorbXNnaWQgIlxccy0xREVCX0JVSUxEX01VTFRJQVJDSFxcczAiCittc2dzdHIgIlxccy0xREVCX0JVSUxEX0FSQ0hcXHMwIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEyMAorIywgZnV6enkKKyN8IG1zZ2lkICJUaGUgXFxzLTFHTlVcXHMwIHN5c3RlbSB0eXBlIG9mIHRoZSBidWlsZCBtYWNoaW5lLiIKK21zZ2lkICIiCisiVGhlIGNsYXJpZmllZCBcXHMtMUdOVVxcczAgc3lzdGVtIHR5cGUgb2YgdGhlIGJ1aWxkIG1hY2hpbmUsIHVzZWQgZm9yICIKKyJmaWxlc3lzdGVtIHBhdGhzLiIKK21zZ3N0ciAiRWwgdGlwbyBkZSBzaXN0ZW1hIFxccy0xR05VXFxzMCBkZSBsYSBtw6FxdWluYSBkZSBjb25zdHJ1Y2Npw7NuLiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTIwCisjLCBuby13cmFwCittc2dpZCAiXFxzLTFERUJfSE9TVF9BUkNIXFxzMCIKK21zZ3N0ciAiXFxzLTFERUJfSE9TVF9BUkNIXFxzMCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMjIKK21zZ2lkICJUaGUgRGViaWFuIGFyY2hpdGVjdHVyZSBvZiB0aGUgaG9zdCBtYWNoaW5lLiIKK21zZ3N0ciAiTGEgYXJxdWl0ZWN0dXJhIGRlIERlYmlhbiBkZSBsYSBtw6FxdWluYSBhbmZpdHJpw7NuLiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTIyCisjLCBuby13cmFwCittc2dpZCAiXFxzLTFERUJfSE9TVF9BUkNIX09TXFxzMCIKK21zZ3N0ciAiXFxzLTFERUJfSE9TVF9BUkNIX09TXFxzMCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMjQKK21zZ2lkICJUaGUgRGViaWFuIHN5c3RlbSBuYW1lIG9mIHRoZSBob3N0IG1hY2hpbmUuIgorbXNnc3RyICJFbCBub21icmUgZGUgc2lzdGVtYSBEZWJpYW4gZGUgbGEgbcOhcXVpbmEgYW5maXRyacOzbi4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEyNAorIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0hPU1RfQVJDSF9DUFVcXHMwIgorbXNnc3RyICJcXHMtMURFQl9IT1NUX0FSQ0hfQ1BVXFxzMCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMjYKK21zZ2lkICJUaGUgRGViaWFuIGNwdSBuYW1lIG9mIHRoZSBob3N0IG1hY2hpbmUuIgorbXNnc3RyICJFbCBub21icmUgZGVsIHByb2Nlc2Fkb3IgRGViaWFuIGRlIGxhIG3DoXF1aW5hIGFuZml0cmnDs24uIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMjYKKyMsIG5vLXdyYXAKK21zZ2lkICJcXHMtMURFQl9IT1NUX0FSQ0hfQklUU1xcczAiCittc2dzdHIgIlxccy0xREVCX0hPU1RfQVJDSF9CSVRTXFxzMCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMjgKK21zZ2lkICJUaGUgcG9pbnRlciBzaXplIG9mIHRoZSBob3N0IG1hY2hpbmUgKGluIGJpdHMpLiIKK21zZ3N0ciAiRWwgdGFtYcOxbyBkZWwgcHVudGVybyBkZSBsYSBtw6FxdWluYSBhbmZpdHJpw7NuLCBlbiBiaXRzLiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTI4CisjLCBuby13cmFwCittc2dpZCAiXFxzLTFERUJfSE9TVF9BUkNIX0VORElBTlxcczAiCittc2dzdHIgIlxccy0xREVCX0hPU1RfQVJDSF9FTkRJQU5cXHMwIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEzMAorbXNnaWQgIlRoZSBlbmRpYW5uZXNzIG9mIHRoZSBob3N0IG1hY2hpbmUgKGxpdHRsZSAvIGJpZykuIgorbXNnc3RyICJFbCBuaXZlbCBkZSDCq2VuZGlhbml6YWNpw7NuwrsgZGUgbGEgbcOhcXVpbmEgYW5maXRyacOzbiwgwqtsaXR0bGXCuyBvIMKrYmlnwrsuIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMzAKKyMsIG5vLXdyYXAKK21zZ2lkICJcXHMtMURFQl9IT1NUX0dOVV9DUFVcXHMwIgorbXNnc3RyICJcXHMtMURFQl9IT1NUX0dOVV9DUFVcXHMwIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEzMgorbXNnaWQgIlRoZSBcXHMtMUNQVVxcczAgcGFydCBvZiBcXHMtMURFQl9IT1NUX0dOVV9UWVBFXFxzMC4iCittc2dzdHIgIkxhIHBhcnRlIGRlIFxccy0xQ1BVXFxzMCBkZSBcXHMtMURFQl9IT1NUX0dOVV9UWVBFXFxzMC4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEzMgorIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0hPU1RfR05VX1NZU1RFTVxcczAiCittc2dzdHIgIlxccy0xREVCX0hPU1RfR05VX1NZU1RFTVxcczAiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTM0Cittc2dpZCAiVGhlIFN5c3RlbSBwYXJ0IG9mIFxccy0xREVCX0hPU1RfR05VX1RZUEVcXHMwLiIKK21zZ3N0ciAiTGEgcGFydGUgZGUgwqtTeXN0ZW3CuyBkZSBcXHMtMURFQl9IT1NUX0dOVV9UWVBFXFxzMC4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEzNAorIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0hPU1RfR05VX1RZUEVcXHMwIgorbXNnc3RyICJcXHMtMURFQl9IT1NUX0dOVV9UWVBFXFxzMCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMzYKK21zZ2lkICJUaGUgXFxzLTFHTlVcXHMwIHN5c3RlbSB0eXBlIG9mIHRoZSBob3N0IG1hY2hpbmUuIgorbXNnc3RyICJFbCB0aXBvIGRlIHNpc3RlbWEgXFxzLTFHTlVcXHMwIGRlIGxhIG3DoXF1aW5hIGFuZml0cmnDs24uIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMzYKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiXFxzLTFERUJfSE9TVF9BUkNIXFxzMCIKK21zZ2lkICJcXHMtMURFQl9IT1NUX01VTFRJQVJDSFxcczAiCittc2dzdHIgIlxccy0xREVCX0hPU1RfQVJDSFxcczAiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTM5CisjLCBmdXp6eQorI3wgbXNnaWQgIlRoZSBcXHMtMUdOVVxcczAgc3lzdGVtIHR5cGUgb2YgdGhlIGhvc3QgbWFjaGluZS4iCittc2dpZCAiIgorIlRoZSBjbGFyaWZpZWQgXFxzLTFHTlVcXHMwIHN5c3RlbSB0eXBlIG9mIHRoZSBob3N0IG1hY2hpbmUsIHVzZWQgZm9yICIKKyJmaWxlc3lzdGVtIHBhdGhzLiIKK21zZ3N0ciAiRWwgdGlwbyBkZSBzaXN0ZW1hIFxccy0xR05VXFxzMCBkZSBsYSBtw6FxdWluYSBhbmZpdHJpw7NuLiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTQwCisjLCBuby13cmFwCittc2dpZCAiREVCSUFOL1JVTEVTIgorbXNnc3RyICJERUJJQU4vUlVMRVMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTQ4Cittc2dpZCAiIgorIlRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZXMgc2V0IGJ5IEI8ZHBrZy1hcmNoaXRlY3R1cmU+IGFyZSBwYXNzZWQgdG8gSTxkZWJpYW4vIgorInJ1bGVzPiBhcyBtYWtlIHZhcmlhYmxlcyAoc2VlIG1ha2UgZG9jdW1lbnRhdGlvbikuIEhvd2V2ZXIsIHlvdSBzaG91bGQgbm90ICIKKyJyZWx5IG9uIHRoZW0sIGFzIHRoaXMgYnJlYWtzIG1hbnVhbCBpbnZvY2F0aW9uIG9mIHRoZSBzY3JpcHQuIEluc3RlYWQsIHlvdSAiCisic2hvdWxkIGFsd2F5cyBpbml0aWFsaXplIHRoZW0gdXNpbmcgQjxkcGtnLWFyY2hpdGVjdHVyZT4gd2l0aCB0aGUgLXEgb3B0aW9uLiAiCisiSGVyZSBhcmUgc29tZSBleGFtcGxlcywgd2hpY2ggYWxzbyBzaG93IGhvdyB5b3UgY2FuIGltcHJvdmUgdGhlIGNyb3NzICIKKyJjb21waWxhdGlvbiBzdXBwb3J0IGluIHlvdXIgcGFja2FnZToiCittc2dzdHIgIiIKKyJMYXMgdmFyaWFibGVzIGRlIGVudG9ybm8gZGVmaW5pZGFzIHBvciBCPGRwa2ctYXJjaGl0ZWN0dXJlPiBzZSBpbnRyb2R1Y2VuIGEgIgorIkk8ZGViaWFuL3J1bGVzPiBjb21vIHZhcmlhYmxlcyBkZSDCq21ha2XCuyAoY29uc3VsdGUgbGEgZG9jdW1lbnRhY2nDs24gZGUgIgorIm1ha2UpLiBQb3Igb3RyYSBwYXJ0ZSwgbm8gZGViZXLDrWEgZGVwZW5kZXIgZGUgZWxsb3MsIHlhIHF1ZSBlc3RvIHJvbXBlIGxhICIKKyJpbnZvY2FjacOzbiBtYW51YWwgZGVsIHNjcmlwdC4gRW4gbHVnYXIgZGUgZWxsbywgc2UgZGViZXLDrWFuIGluaWNpYXIgbWVkaWFudGUgIgorIkI8ZHBrZy1hcmNoaXRlY3R1cmU+IGNvbiBsYSBvcGNpw7NuIMKrLXHCuy4gQXF1w60gaGF5IGFsZ3Vub3MgZWplbXBsb3MsIHF1ZSAiCisibXVlc3RyYW4gdGFtYmnDqW4gY29tbyBtZWpvcmFyIGxhIGNvbXBhdGliaWxpZGFkIGRlIHN1IHBhcXVldGUgY29uIGxhICIKKyJjb25zdHJ1Y2Npw7NuIHBhcmEgdmFyaWFzIGFycXVpdGVjdHVyYXMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjE1MSBkcGtnLWFyY2hpdGVjdHVyZS4xOjE2OAorbXNnaWQgIkluc3RlYWQgb2Y6IgorbXNnc3RyICJFbiBsdWdhciBkZToiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTU1CisjLCBuby13cmFwCittc2dpZCAiIgorIkFSQ0g9XFxgZHBrZyAtLXByaW50LWFyY2hpdGVjdHVyZVxcYFxuIgorImNvbmZpZ3VyZSAkKFxccy0xQVJDSFxcczApLWxpbnV4XG4iCittc2dzdHIgIiIKKyJBUkNIPVxcYGRwa2cgLS1wcmludC1hcmNoaXRlY3R1cmVcXGBcbiIKKyJjb25maWd1cmUgJChcXHMtMUFSQ0hcXHMwKS1saW51eFxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjE1OAorbXNnaWQgInBsZWFzZSB1c2UgdGhlIGZvbGxvd2luZzoiCittc2dzdHIgInVzZSBsbyBzaWd1aWVudGU6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjE2MgorIywgbm8td3JhcAorbXNnaWQgIiIKKyJcXCZcXHMtMURFQl9CVUlMRF9HTlVfVFlQRVxcczAgOj0gJChzaGVsbCBkcGtnLWFyY2hpdGVjdHVyZSAtcURFQl9CVUlMRF9HTlVfVFlQRSlcbiIKKyJcXCZcXHMtMURFQl9IT1NUX0dOVV9UWVBFXFxzMCA6PSAkKHNoZWxsIGRwa2ctYXJjaGl0ZWN0dXJlIC1xREVCX0hPU1RfR05VX1RZUEUpXG4iCittc2dzdHIgIiIKKyJcXCZcXHMtMURFQl9CVUlMRF9HTlVfVFlQRVxcczAgOj0gJChzaGVsbCBkcGtnLWFyY2hpdGVjdHVyZSAtcURFQl9CVUlMRF9HTlVfVFlQRSlcbiIKKyJcXCZcXHMtMURFQl9IT1NUX0dOVV9UWVBFXFxzMCA6PSAkKHNoZWxsIGRwa2ctYXJjaGl0ZWN0dXJlIC1xREVCX0hPU1RfR05VX1RZUEUpXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTY0CisjLCBuby13cmFwCittc2dpZCAiY29uZmlndXJlIC0tYnVpbGQ9JChcXHMtMURFQl9CVUlMRF9HTlVfVFlQRVxcczApIC0taG9zdD0kKFxccy0xREVCX0hPU1RfR05VX1RZUEVcXHMwKVxuIgorbXNnc3RyICJjb25maWd1cmUgLS1idWlsZD0kKFxccy0xREVCX0JVSUxEX0dOVV9UWVBFXFxzMCkgLS1ob3N0PSQoXFxzLTFERUJfSE9TVF9HTlVfVFlQRVxcczApXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTc0CisjLCBuby13cmFwCittc2dpZCAiIgorIkFSQ0g9XFxgZHBrZyAtLXByaW50LWFyY2hpdGVjdHVyZVxcYFxuIgorImlmZXEgKCQoXFxzLTFBUkNIXFxzMCksYWxwaGEpXG4iCisiICAuLi5cbiIKKyJlbmRpZlxuIgorbXNnc3RyICIiCisiQVJDSD1cXGBkcGtnIC0tcHJpbnQtYXJjaGl0ZWN0dXJlXFxgXG4iCisiaWZlcSAoJChcXHMtMUFSQ0hcXHMwKSxhbHBoYSlcbiIKKyIgIC4uLlxuIgorImVuZGlmXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTc3Cittc2dpZCAicGxlYXNlIHVzZToiCittc2dzdHIgInVzZToiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTgwCisjLCBuby13cmFwCittc2dpZCAiXFwmXFxzLTFERUJfSE9TVF9BUkNIXFxzMCA6PSAkKHNoZWxsIGRwa2ctYXJjaGl0ZWN0dXJlIC1xREVCX0hPU1RfQVJDSClcbiIKK21zZ3N0ciAiXFwmXFxzLTFERUJfSE9TVF9BUkNIXFxzMCA6PSAkKHNoZWxsIGRwa2ctYXJjaGl0ZWN0dXJlIC1xREVCX0hPU1RfQVJDSClcbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxODQKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiaWZlcSAoJChcXHMtMURFQl9IT1NUX0FSQ0hcXHMwKSxhbHBoYSlcbiIKKyIgIC4uLlxuIgorImVuZGlmXG4iCittc2dzdHIgIiIKKyJpZmVxICgkKFxccy0xREVCX0hPU1RfQVJDSFxcczApLGFscGhhKVxuIgorIiAgLi4uXG4iCisiZW5kaWZcbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxODgKK21zZ2lkICIiCisib3IgaWYgeW91IG9ubHkgbmVlZCB0byBjaGVjayB0aGUgQ1BVIG9yIE9TIHR5cGUsIHVzZSB0aGUgREVCX0hPU1RfQVJDSF9DUFUgIgorIm9yIERFQl9IT1NUX0FSQ0hfT1MgdmFyaWFibGVzLiIKK21zZ3N0ciAiIgorIm8gc2kgc8OzbG8gcHJlY2lzYSByZXZpc2FyIGVsIHRpcG8gZGUgc2lzdGVtYSBvIENQVSwgdXNlIGxhcyB2YXJpYWJsZXMgIgorIsKrREVCX0hPU1RfQVJDSF9PU8K7IG8gwqtERUJfSE9TVF9BUkNIX0NQVcK7LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxOTMKK21zZ2lkICIiCisiSW4gZ2VuZXJhbCwgY2FsbGluZyBkcGtnIGluIHRoZSBydWxlcyBmaWxlIHRvIGdldCBhcmNoaXRlY3R1cmUgaW5mb3JtYXRpb24gIgorImlzIGRlcHJlY2F0ZWQgKHVubGVzcyB5b3Ugd2FudCB0byBwcm92aWRlIGJhY2t3YXJkIGNvbXBhdGliaWxpdHksIHNlZSAiCisiYmVsb3cpLiAgRXNwZWNpYWxseSB0aGUgLS1wcmludC1hcmNoaXRlY3R1cmUgb3B0aW9uIGlzIHVucmVsaWFibGUgc2luY2Ugd2UgIgorImhhdmUgRGViaWFuIGFyY2hpdGVjdHVyZXMgd2hpY2ggZG9uJ3QgZXF1YWwgYSBwcm9jZXNzb3IgbmFtZS4iCittc2dzdHIgIiIKKyJFbiBnZW5lcmFsLCBpbnZvY2FyIGRwa2cgZW4gZWwgZmljaGVybyBkZSByZWdsYXMgKMKrcnVsZXPCuykgcGFyYSBvYnRlbmVyIGxhICIKKyJpbmZvcm1hY2nDs24gZGUgYXJxdWl0ZWN0dXJhIGVzdMOhIG9ic29sZXRvIChhIG1lbm9zIHF1ZSBkZXNlZSBvZnJlY2VyICIKKyJjb21wYXRpYmlsaWRhZCBjb24gdmVyc2lvbmVzIGFudGVyaW9yZXMsIHbDqWFzZSBhIGNvbnRpbnVhY2nDs24pLiBMYSBvcGNpw7NuIMKrLS0iCisicHJpbnQtYXJjaGl0ZWN0dXJlwrsgZXMgcGFydGljdWxhcm1lbnRlIGluZXN0YWJsZSwgeWEgcXVlIGV4aXN0ZW4gIgorImFycXVpdGVjdHVyYXMgZGUgRGViaWFuIHF1ZSBubyBlbmNhamFuIGNvbiBlbCBub21icmUgZGUgdW4gcHJvY2VzYWRvci4iCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjE5NAorIywgbm8td3JhcAorbXNnaWQgIkJBQ0tXQVJEIENPTVBBVElCSUxJVFkiCittc2dzdHIgIkNPTVBBVElCSUxJREFEIENPTiBWRVJTSU9ORVMgQU5URVJJT1JFUyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxOTgKK21zZ2lkICIiCisiVGhlIERFQl8qX0FSQ0hfQklUUyBhbmQgREVCXypfQVJDSF9FTkRJQU4gdmFyaWFibGVzIHdlcmUgaW50cm9kdWNlZCBpbiBkcGtnLSIKKyJkZXYgMS4xNS40LiBVc2luZyB0aGVtIGluIEk8ZGViaWFuL3J1bGVzPiB0aHVzIHJlcXVpcmVzIGEgYnVpbGQtZGVwZW5kZW5jeSAiCisib24gZHBrZy1kZXYgKEU8Z3Q+PSAxLjE1LjQpLiIKK21zZ3N0ciAiIgorIkxhcyB2YXJpYWJsZXMgwqtERUJfKl9BUkNIX0JJVFPCuyB5IMKrREVCXypfQVJDSF9FTkRJQU7CuyBzZSBpbnRyb2R1amVyb24gYSAiCisicGFydGlyIGRlIGxhIHZlcnNpw7NuIDEuMTUuNCBkZSBkcGtnLWRldi4gU3UgdXNvIGVuIEk8ZGViaWFuL3J1bGVzPiByZXF1aWVyZSAiCisidW5hIGRlcGVuZGVuY2lhIGRlIGNvbnN0cnVjY2nDs24gc29icmUgZHBrZy1kZXYgKEU8Z3Q+PSAxLjE1LjQpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyMDMKK21zZ2lkICIiCisiVGhlIERFQl9IT1NUX0FSQ0hfQ1BVIGFuZCBERUJfSE9TVF9BUkNIX09TIHZhcmlhYmxlcyB3ZXJlIGludHJvZHVjZWQgaW4gZHBrZy0iCisiZGV2IDEuMTMuMi4gQmVmb3JlIHRoaXMgSTxkZWJpYW4vcnVsZXM+IGZpbGVzIHRlbmRlZCB0byBjaGVjayB0aGUgdmFsdWVzIG9mICIKKyJ0aGUgREVCX0hPU1RfR05VX0NQVSBvciBERUJfSE9TVF9HTlVfVFlQRSB2YXJpYWJsZXMgd2hpY2ggaGF2ZSBiZWVuIHN1YmplY3QgIgorInRvIGNoYW5nZS4iCittc2dzdHIgIiIKKyJMYXMgdmFyaWFibGVzIMKrREVCX0hPU1RfQVJDSF9DUFXCuyB5IMKrREVCX0hPU1RfQVJDSF9PU8K7IHNlIGludHJvZHVqZXJvbiBhICIKKyJwYXJ0aXIgZGUgbGEgdmVyc2nDs24gMS4xMy4yIGRlIGRwa2ctZGV2LiBBbnRlcywgbG9zIGZpY2hlcm9zIEk8ZGViaWFuL3J1bGVzPiAiCisic29sw61hbiByZXZpc2FyIGFxdWVsbG9zIHZhbG9yZXMgZGUgwqtERUJfSE9TVF9HTlVfQ1BVwrsgbyDCq0RFQl9IT1NUX0dOVV9UWVBFwrsgIgorInN1c2NlcHRpYmxlcyBkZSBoYWJlciBjYW1iaWFkby4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjA4Cittc2dpZCAiIgorIldoZXJlIEk8ZGViaWFuL3J1bGVzPiBmaWxlcyBjaGVjayB0aGVzZSB2YXJpYWJsZXMgdG8gZGVjaWRlIGhvdyBvciB3aGF0IHRvICIKKyJjb21waWxlLCB0aGlzIHNob3VsZCBiZSB1cGRhdGVkIHRvIHVzZSB0aGUgbmV3IHZhcmlhYmxlcyBhbmQgdmFsdWVzLiAgWW91ICIKKyJtYXkgd2lzaCB0byByZXRhaW4gYmFja3dhcmRzIGNvbXBhdGliaWxpdHkgd2l0aCBvbGRlciB2ZXJzaW9uIG9mIGRwa2ctZGV2IGJ5ICIKKyJ1c2luZyB0aGUgZm9sbG93aW5nIGNvZGU6IgorbXNnc3RyICIiCisiU2UgZGViZXLDrWFuIGFjdHVhbGl6YXIgYXF1ZWxsYXMgcGFydGVzIGRlIGxvcyBmaWNoZXJvcyBJPGRlYmlhbi9ydWxlcz4gcXVlICIKKyJyZXZpc2FuIGxhcyB2YXJpYWJsZXMgcXVlIGRlY2lkZW4gZWwgbW9kbyBvIGVsIG9iamV0aXZvIGEgY29tcGlsYXIuIFB1ZWRlICIKKyJ1c2FyIGVsIHNpZ3VpZW50ZSBjw7NkaWdvIHNpIGRlc2VhIHBlcm1pdGlyIGxhIGNvbXBhdGliaWxpZGFkIGNvbiB2ZXJzaW9uZXMgIgorImFudGVyaW9yZXMgZGUgZHBrZy1kZXY6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjIxMgorIywgbm8td3JhcAorbXNnaWQgIiIKKyJERUJfSE9TVF9BUkNIX0NQVSA6PSAkKHNoZWxsIGRwa2ctYXJjaGl0ZWN0dXJlIC1xREVCX0hPU1RfQVJDSF9DUFUgMkU8Z3Q+L2Rldi9udWxsKVxuIgorIkRFQl9IT1NUX0FSQ0hfT1MgOj0gJChzaGVsbCBkcGtnLWFyY2hpdGVjdHVyZSAtcURFQl9IT1NUX0FSQ0hfT1MgMkU8Z3Q+L2Rldi9udWxsKVxuIgorbXNnc3RyICIiCisiREVCX0hPU1RfQVJDSF9DUFUgOj0gJChzaGVsbCBkcGtnLWFyY2hpdGVjdHVyZSAtcURFQl9IT1NUX0FSQ0hfQ1BVIDJFPGd0Pi9kZXYvbnVsbClcbiIKKyJERUJfSE9TVF9BUkNIX09TIDo9ICQoc2hlbGwgZHBrZy1hcmNoaXRlY3R1cmUgLXFERUJfSE9TVF9BUkNIX09TIDJFPGd0Pi9kZXYvbnVsbClcbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyMjYKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiIyBUYWtlIGFjY291bnQgb2Ygb2xkIGRwa2ctYXJjaGl0ZWN0dXJlIG91dHB1dC5cbiIKKyJpZmVxICgkKERFQl9IT1NUX0FSQ0hfQ1BVKSwpXG4iCisiICBERUJfSE9TVF9BUkNIX0NQVSA6PSAkKHNoZWxsIGRwa2ctYXJjaGl0ZWN0dXJlIC1xREVCX0hPU1RfR05VX0NQVSlcbiIKKyIgIGlmZXEgKCQoREVCX0hPU1RfQVJDSF9DUFUpLHg4Nl82NClcbiIKKyIgICAgREVCX0hPU1RfQVJDSF9DUFUgOj0gYW1kNjRcbiIKKyIgIGVuZGlmXG4iCisiZW5kaWZcbiIKKyJpZmVxICgkKERFQl9IT1NUX0FSQ0hfT1MpLClcbiIKKyIgIERFQl9IT1NUX0FSQ0hfT1MgOj0gJChzdWJzdCAtZ251LCwkKHNoZWxsIGRwa2ctYXJjaGl0ZWN0dXJlIC1xREVCX0hPU1RfR05VX1NZU1RFTSkpXG4iCisiICBpZmVxICgkKERFQl9IT1NUX0FSQ0hfT1MpLGdudSlcbiIKKyIgICAgREVCX0hPU1RfQVJDSF9PUyA6PSBodXJkXG4iCisiICBlbmRpZlxuIgorImVuZGlmXG4iCittc2dzdHIgIiIKKyIjIFRha2UgYWNjb3VudCBvZiBvbGQgZHBrZy1hcmNoaXRlY3R1cmUgb3V0cHV0LlxuIgorImlmZXEgKCQoREVCX0hPU1RfQVJDSF9DUFUpLClcbiIKKyIgIERFQl9IT1NUX0FSQ0hfQ1BVIDo9ICQoc2hlbGwgZHBrZy1hcmNoaXRlY3R1cmUgLXFERUJfSE9TVF9HTlVfQ1BVKVxuIgorIiAgaWZlcSAoJChERUJfSE9TVF9BUkNIX0NQVSkseDg2XzY0KVxuIgorIiAgICBERUJfSE9TVF9BUkNIX0NQVSA6PSBhbWQ2NFxuIgorIiAgZW5kaWZcbiIKKyJlbmRpZlxuIgorImlmZXEgKCQoREVCX0hPU1RfQVJDSF9PUyksKVxuIgorIiAgREVCX0hPU1RfQVJDSF9PUyA6PSAkKHN1YnN0IC1nbnUsLCQoc2hlbGwgZHBrZy1hcmNoaXRlY3R1cmUgLXFERUJfSE9TVF9HTlVfU1lTVEVNKSlcbiIKKyIgIGlmZXEgKCQoREVCX0hPU1RfQVJDSF9PUyksZ251KVxuIgorIiAgICBERUJfSE9TVF9BUkNIX09TIDo9IGh1cmRcbiIKKyIgIGVuZGlmXG4iCisiZW5kaWZcbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyMjkKK21zZ2lkICJBbmQgc2ltaWxhcmx5IGZvciBERUJfQlVJTERfQVJDSF9DUFUgYW5kIERFQl9CVUlMRF9BUkNIX09TLiIKK21zZ3N0ciAiWSBkZSBmb3JtYSBwYXJlY2lkYSBjb24gwqtERUJfQlVJTERfQVJDSF9DUFXCuyB5IMKrREVCX0JVSUxEX0FSQ0hfT1PCuy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjMyCittc2dpZCAiIgorIklmIHlvdSBzdGlsbCB3aXNoIHRvIHN1cHBvcnQgdmVyc2lvbnMgb2YgZHBrZy1kZXYgdGhhdCBkaWQgbm90IGluY2x1ZGUgIgorIkI8ZHBrZy1hcmNoaXRlY3R1cmU+LCB0aGUgZm9sbG93aW5nIGRvZXMgdGhlIGpvYjoiCittc2dzdHIgIiIKKyJTaSBkZXNlYSBsYSBjb21wYXRpYmlsaWRhZCBjb24gdmVyc2lvbmVzIGRlIGRwa2ctZGV2IHF1ZSBubyBpbmNsdcOtYW4gQjxkcGtnLSIKKyJhcmNoaXRlY3R1cmU+LCBwdWVkZSB1c2FyIGxvIHNpZ3VpZW50ZToiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjQyCisjLCBuby13cmFwCittc2dpZCAiIgorIlxcJlxccy0xREVCX0JVSUxEX0FSQ0hcXHMwIDo9ICQoc2hlbGwgZHBrZyAtLXByaW50LWFyY2hpdGVjdHVyZSlcbiIKKyJcXCZcXHMtMURFQl9CVUlMRF9HTlVfQ1BVXFxzMCA6PSAkKHBhdHN1YnN0IGh1cmQtJSwlLCQoXFxzLTFERUJfQlVJTERfQVJDSFxcczApKVxuIgorImlmZXEgKCQoZmlsdGVyLW91dCBodXJkLSUsJChcXHMtMURFQl9CVUlMRF9BUkNIXFxzMCkpLClcbiIKKyIgIFxccy0xREVCX0JVSUxEX0dOVV9TWVNURU1cXHMwIDo9IGdudVxuIgorImVsc2VcbiIKKyIgIFxccy0xREVCX0JVSUxEX0dOVV9TWVNURU1cXHMwIDo9IGxpbnV4LWdudVxuIgorImVuZGlmXG4iCisiREVCX0JVSUxEX0dOVV9UWVBFPSQoXFxzLTFERUJfQlVJTERfR05VX0NQVVxcczApLSQoXFxzLTFERUJfQlVJTERfR05VX1NZU1RFTVxcczApXG4iCittc2dzdHIgIiIKKyJcXCZcXHMtMURFQl9CVUlMRF9BUkNIXFxzMCA6PSAkKHNoZWxsIGRwa2cgLS1wcmludC1hcmNoaXRlY3R1cmUpXG4iCisiXFwmXFxzLTFERUJfQlVJTERfR05VX0NQVVxcczAgOj0gJChwYXRzdWJzdCBodXJkLSUsJSwkKFxccy0xREVCX0JVSUxEX0FSQ0hcXHMwKSlcbiIKKyJpZmVxICgkKGZpbHRlci1vdXQgaHVyZC0lLCQoXFxzLTFERUJfQlVJTERfQVJDSFxcczApKSwpXG4iCisiICBcXHMtMURFQl9CVUlMRF9HTlVfU1lTVEVNXFxzMCA6PSBnbnVcbiIKKyJlbHNlXG4iCisiICBcXHMtMURFQl9CVUlMRF9HTlVfU1lTVEVNXFxzMCA6PSBsaW51eC1nbnVcbiIKKyJlbmRpZlxuIgorIkRFQl9CVUlMRF9HTlVfVFlQRT0kKFxccy0xREVCX0JVSUxEX0dOVV9DUFVcXHMwKS0kKFxccy0xREVCX0JVSUxEX0dOVV9TWVNURU1cXHMwKVxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI0NworIywgbm8td3JhcAorbXNnaWQgIiIKKyJcXCZcXHMtMURFQl9IT1NUX0FSQ0hcXHMwIDo9ICQoXFxzLTFERUJfQlVJTERfQVJDSFxcczApXG4iCisiXFwmXFxzLTFERUJfSE9TVF9HTlVfQ1BVXFxzMCA6PSAkKFxccy0xREVCX0JVSUxEX0dOVV9DUFVcXHMwKVxuIgorIlxcJlxccy0xREVCX0hPU1RfR05VX1NZU1RFTVxcczAgOj0gJChcXHMtMURFQl9CVUlMRF9HTlVfU1lTVEVNXFxzMClcbiIKKyJcXCZcXHMtMURFQl9IT1NUX0dOVV9UWVBFXFxzMCA6PSAkKFxccy0xREVCX0JVSUxEX0dOVV9UWVBFXFxzMClcbiIKK21zZ3N0ciAiIgorIlxcJlxccy0xREVCX0hPU1RfQVJDSFxcczAgOj0gJChcXHMtMURFQl9CVUlMRF9BUkNIXFxzMClcbiIKKyJcXCZcXHMtMURFQl9IT1NUX0dOVV9DUFVcXHMwIDo9ICQoXFxzLTFERUJfQlVJTERfR05VX0NQVVxcczApXG4iCisiXFwmXFxzLTFERUJfSE9TVF9HTlVfU1lTVEVNXFxzMCA6PSAkKFxccy0xREVCX0JVSUxEX0dOVV9TWVNURU1cXHMwKVxuIgorIlxcJlxccy0xREVCX0hPU1RfR05VX1RZUEVcXHMwIDo9ICQoXFxzLTFERUJfQlVJTERfR05VX1RZUEVcXHMwKVxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI1MQorbXNnaWQgIiIKKyJQdXQgYSBzdWJzZXQgb2YgdGhlc2UgbGluZXMgYXQgdGhlIHRvcCBvZiB5b3VyIGRlYmlhbi9ydWxlcyBmaWxlOyB0aGVzZSAiCisiZGVmYXVsdCB2YWx1ZXMgd2lsbCBiZSBvdmVyd3JpdHRlbiBpZiBkcGtnLWFyY2hpdGVjdHVyZSBpcyB1c2VkLiIKK21zZ3N0ciAiIgorIkluc2VydGUgdW4gc3ViY29uanVudG8gZGUgZXN0YXMgbMOtbmVhcyBhbCBpbmljaW8gZGVsIGZpY2hlcm8gwqtkZWJpYW4vcnVsZXPCuzsgIgorImVzdG9zIHZhbG9yZXMgcHJlZGVmaW5pZG9zIHNlIHNvYnJlZXNjcmliaXLDoW4gZW4gY2FzbyBkZSB1c2FyIGRwa2ctIgorImFyY2hpdGVjdHVyZS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjU4Cittc2dpZCAiIgorIllvdSBkb24ndCBuZWVkIHRoZSBmdWxsIHNldC4gQ2hvb3NlIGEgY29uc2lzdGVudCBzZXQgd2hpY2ggY29udGFpbnMgdGhlICIKKyJ2YWx1ZXMgeW91IHVzZSBpbiB0aGUgcnVsZXMgZmlsZS4gRm9yIGV4YW1wbGUsIGlmIHlvdSBvbmx5IG5lZWQgdGhlIGhvc3QgIgorIkRlYmlhbiBhcmNoaXRlY3R1cmUsIGBERUJfSE9TVF9BUkNIPVxcYGRwa2cgLS1wcmludC1hcmNoaXRlY3R1cmVcXGAnIGlzICIKKyJzdWZmaWNpZW50ICh0aGlzIGlzIGluZGVlZCB0aGUgRGViaWFuIGFyY2hpdGVjdHVyZSBvZiB0aGUgYnVpbGQgbWFjaGluZSwgYnV0ICIKKyJyZW1lbWJlciB0aGF0IHdlIGFyZSBvbmx5IHRyeWluZyB0byBiZSBiYWNrd2FyZCBjb21wYXRpYmxlIHdpdGggbmF0aXZlICIKKyJjb21waWxhdGlvbikuIgorbXNnc3RyICIiCisiTm8gbmVjZXNpdGEgZWwgY29uanVudG8gY29tcGxldG8uIFNlbGVjY2lvbmUgdW4gY29uanVudG8gY29uc2lzdGVudGUgcXVlICIKKyJjb250ZW5nYSBsb3MgdmFsb3JlcyBxdWUgdXNhIGVuIGVsIGZpY2hlcm8gZGUgcmVnbGFzLiBQb3IgZWplbXBsbywgc2kgc8OzbG8gIgorIm5lY2VzaXRhIGxhIGFycXVpdGVjdHVyYSBEZWJpYW4gZGVsIHNpc3RlbWEgZGUgZGVzdGlubywgdGllbmUgc3VmaWNpZW50ZSBjb24gIgorIsKrREVCX0hPU1RfQVJDSD1cXGBkcGtnIC0tcHJpbnQtYXJjaGl0ZWN0dXJlXFzCuyAoZGUgaGVjaG8sIGVzdGEgZXMgbGEgIgorImFycXVpdGVjdHVyYSBkZSBEZWJpYW4gZGUgbGEgbcOhcXVpbmEgZGUgY29uc3RydWNjacOzbiwgcGVybyByZWN1ZXJkZSBxdWUgc8OzbG8gIgorImludGVudGFtb3MgY3JlYXIgbGEgY29tcGF0aWJpbGlkYWQgY29uIHZlcnNpb25lcyBhbnRlcmlvcmVzIHF1ZSB0aWVuZW4gdW5hICIKKyJjb21waWxhY2nDs24gbmF0aXZhKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjYxCittc2dpZCAiIgorIlRoZSBCPC1lPiBhbmQgQjwtaT4gb3B0aW9ucyB3ZXJlIG9ubHkgaW50cm9kdWNlZCBpbiByZWxhdGl2ZWx5IHJlY2VudCAiCisidmVyc2lvbnMgb2YgQjxkcGtnLWFyY2hpdGVjdHVyZT4gKHNpbmNlIGRwa2cgMS4xMy4xMykuIgorbXNnc3RyICIiCisiTGFzIG9wY2lvbmVzIEI8LWU+IHkgQjwtaT4gYXBhcmVjaWVyb24gZW4gcmVjaWVudGVzIHZlcnNpb25lcyBkZSBCPGRwa2ctIgorImFyY2hpdGVjdHVyZT4gKGEgcGFydGlyIGRlIGxhIHZlcnNpw7NuIDEuMTMuMTMgZGUgZHBrZykuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI2NQorbXNnaWQgIiIKKyJCPGRwa2ctYnVpbGRwYWNrYWdlPiBhY2NlcHRzIHRoZSBCPC1hPiBvcHRpb24gYW5kIHBhc3NlcyBpdCB0byBCPGRwa2ctIgorImFyY2hpdGVjdHVyZT4uIE90aGVyIGV4YW1wbGVzOiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1idWlsZHBhY2thZ2U+IGFjZXB0YSBsYSBvcGNpw7NuIEI8LWE+IHkgbGEgaW50cm9kdWNlIGEgQjxkcGtnLSIKKyJhcmNoaXRlY3R1cmU+LiBPdHJvcyBlamVtcGxvczoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjY3Cittc2dpZCAiQ0M9aTM4Ni1nbnUtZ2NjIGRwa2ctYXJjaGl0ZWN0dXJlIC1jIGRlYmlhbi9ydWxlcyBidWlsZCIKK21zZ3N0ciAiQ0M9aTM4Ni1nbnUtZ2NjIGRwa2ctYXJjaGl0ZWN0dXJlIC1jIGRlYmlhbi9ydWxlcyBidWlsZCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyNjkKK21zZ2lkICJldmFsIFxcYGRwa2ctYXJjaGl0ZWN0dXJlIC11XFxgIgorbXNnc3RyICJldmFsIFxcYGRwa2ctYXJjaGl0ZWN0dXJlIC11XFxgIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI3MgorbXNnaWQgIiIKKyJDaGVjayBpZiBhbiBhcmNoaXRlY3R1cmUgaXMgZXF1YWwgdG8gdGhlIGN1cnJlbnQgYXJjaGl0ZWN0dXJlIG9yIGEgZ2l2ZW4gb25lOiIKK21zZ3N0ciAiUmV2aXNhIHNpIHVuYSBhcnF1aXRlY3R1cmEgZXF1aXZhbGUgYSBsYSBhcnF1aXRlY3R1cmEgYWN0dWFsIG8gZGFkYToiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6Mjc0Cittc2dpZCAiZHBrZy1hcmNoaXRlY3R1cmUgLWVsaW51eC1hbHBoYSIKK21zZ3N0ciAiZHBrZy1hcmNoaXRlY3R1cmUgLWVsaW51eC1hbHBoYSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyNzYKK21zZ2lkICJkcGtnLWFyY2hpdGVjdHVyZSAtYW1pcHMgLWVsaW51eC1taXBzIgorbXNnc3RyICJkcGtnLWFyY2hpdGVjdHVyZSAtYW1pcHMgLWVsaW51eC1taXBzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI3OQorbXNnaWQgIiIKKyJDaGVjayBpZiB0aGUgY3VycmVudCBhcmNoaXRlY3R1cmUgb3IgYW4gYXJjaGl0ZWN0dXJlIHByb3ZpZGVkIHdpdGggLWEgYXJlICIKKyJMaW51eCBzeXN0ZW1zOiIKK21zZ3N0ciAiIgorIlJldmlzYSBzaSBsYSBhcnF1aXRlY3R1cmEgYWN0dWFsIG8gaW50cm9kdWNpZGEgY29uIMKrLWHCuyBlcyBkZSB1biBzaXN0ZW1hICIKKyJMaW51eDoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjgxCittc2dpZCAiZHBrZy1hcmNoaXRlY3R1cmUgLWlsaW51eC1hbnkiCittc2dzdHIgImRwa2ctYXJjaGl0ZWN0dXJlIC1pbGludXgtYW55IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI4MworbXNnaWQgImRwa2ctYXJjaGl0ZWN0dXJlIC1haTM4NiAtaWxpbnV4LWFueSIKK21zZ3N0ciAiZHBrZy1hcmNoaXRlY3R1cmUgLWFpMzg2IC1pbGludXgtYW55IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI4OAorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiQWxsIHRoZXNlIGZpbGVzIGhhdmUgdG8gYmUgcHJlc2VudCBmb3IgQjxkcGtnLWFyY2hpdGVjdHVyZT4gdG8gd29yay4gIgorI3wgIlRoZWlyIGxvY2F0aW9uIGNhbiBiZSBvdmVycmlkZGVuIGF0IHJ1bnRpbWUgd2l0aCB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGUgIgorI3wgIkRQS0dfREFUQURJUi4iCittc2dpZCAiIgorIkFsbCB0aGVzZSBmaWxlcyBoYXZlIHRvIGJlIHByZXNlbnQgZm9yIEI8ZHBrZy1hcmNoaXRlY3R1cmU+IHRvIHdvcmsuIFRoZWlyICIKKyJsb2NhdGlvbiBjYW4gYmUgb3ZlcnJpZGRlbiBhdCBydW50aW1lIHdpdGggdGhlIGVudmlyb25tZW50IHZhcmlhYmxlICIKKyJCPERQS0dfREFUQURJUj4uIgorbXNnc3RyICIiCisiVG9kb3MgbG9zIGZpY2hlcm9zIGRlYmVuIGVzdGFyIHByZXNlbnRlcyBwYXJhIHF1ZSBCPGRwa2ctYXJjaGl0ZWN0dXJlPiAiCisiZnVuY2lvbmUuIFB1ZWRlIHNvYnJlZXNjcmliaXIgbGEgdWJpY2FjacOzbiBlbiB0aWVtcG8gZGUgZWplY3VjacOzbiBtZWRpYW50ZSAiCisibGEgdmFyaWFibGUgZGUgZW50b3JubyDCq0RQS0dfREFUQURJUsK7LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6Mjg4CisjLCBuby13cmFwCittc2dpZCAiSTwvdXNyL3NoYXJlL2Rwa2cvY3B1dGFibGU+IgorbXNnc3RyICJJPC91c3Ivc2hhcmUvZHBrZy9jcHV0YWJsZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjkxCittc2dpZCAiVGFibGUgb2Yga25vd24gQ1BVIG5hbWVzIGFuZCBtYXBwaW5nIHRvIHRoZWlyIEdOVSBuYW1lLiIKK21zZ3N0ciAiVGFibGEgZGUgbm9tYnJlcyBkZSBDUFUgY29ub2NpZG9zIHkgc3UgY29ycmVsYWNpw7NuIGNvbiBzdSBub21icmUgR05VLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjkxCisjLCBuby13cmFwCittc2dpZCAiSTwvdXNyL3NoYXJlL2Rwa2cvb3N0YWJsZT4iCittc2dzdHIgIkk8L3Vzci9zaGFyZS9kcGtnL29zdGFibGU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI5NAorbXNnaWQgIlRhYmxlIG9mIGtub3duIG9wZXJhdGluZyBzeXN0ZW0gbmFtZXMgYW5kIG1hcHBpbmcgdG8gdGhlaXIgR05VIG5hbWUuIgorbXNnc3RyICIiCisiVGFibGEgZGUgc2lzdGVtYXMgb3BlcmF0aXZvcyBjb25vY2lkb3MgeSBzdSBjb3JyZWxhY2nDs24gY29uIHN1IG5vbWJyZSBHTlUuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyOTQKKyMsIG5vLXdyYXAKK21zZ2lkICJJPC91c3Ivc2hhcmUvZHBrZy90cmlwbGV0dGFibGU+IgorbXNnc3RyICJJPC91c3Ivc2hhcmUvZHBrZy90cmlwbGV0dGFibGU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI5OAorbXNnaWQgIiIKKyJNYXBwaW5nIGJldHdlZW4gRGViaWFuIGFyY2hpdGVjdHVyZSB0cmlwbGV0cyBhbmQgRGViaWFuIGFyY2hpdGVjdHVyZSBuYW1lcy4iCittc2dzdHIgIiIKKyJDb3JyZWxhY2nDs24gZW50cmUgdHVwbGVzIGRlIDMgZGUgbGEgYXJxdWl0ZWN0dXJhIGRlIERlYmlhbiwgeSBsb3Mgbm9tYnJlcyBkZSAiCisiYXJxdWl0ZWN0dXJhIGRlIERlYmlhbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MzAyCittc2dpZCAiQjxkcGtnLWJ1aWxkcGFja2FnZT4oMSksIEI8ZHBrZy1jcm9zcz4oMSkuIgorbXNnc3RyICJCPGRwa2ctYnVpbGRwYWNrYWdlPigxKSwgQjxkcGtnLWNyb3NzPigxKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MzA3Cittc2dpZCAiIgorIkI8ZHBrZy1hcmNoaXRlY3R1cmU+IGFuZCB0aGlzIG1hbiBwYWdlIHdlcmUgaW5pdGlhbGx5IHdyaXR0ZW4gYnkgTWFyY3VzICIKKyJCcmlua21hbm4gRTxsdD5icmlua21kQGRlYmlhbi5vcmdFPGd0Pi4iCittc2dzdHIgIiIKKyJCPGRwa2ctYXJjaGl0ZWN0dXJlPiB5IHN1IHDDoWdpbmEgZGUgbWFudWFsIGZ1ZXJvbiBlc2NyaXRvcyBvcmlnaW5hbG1lbnRlIHBvciAiCisiTWFyY3VzIEJyaW5rbWFubiBFPGx0PmJyaW5rbWRAZGViaWFuLm9yZ0U8Z3Q+LiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2cuY2ZnLjU6MQorIywgbm8td3JhcAorbXNnaWQgImRwa2cuY2ZnIgorbXNnc3RyICJkcGtnLmNmZyIKKworIy4gdHlwZTogVEgKKyM6IGRwa2cuY2ZnLjU6MQorIywgbm8td3JhcAorbXNnaWQgIjIwMDktMDktMDUiCittc2dzdHIgIjUgZGUgU2VwdGllbWJyZSBkZSAyMDA5IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLmNmZy41OjQKK21zZ2lkICJkcGtnLmNmZyAtIGRwa2cgY29uZmlndXJhdGlvbiBmaWxlIgorbXNnc3RyICJkcGtnLmNmZyAtIEZpY2hlcm8gZGUgY29uZmlndXJhY2nDs24gZGUgZHBrZyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy5jZmcuNToxMQorbXNnaWQgIiIKKyJUaGlzIGZpbGUgY29udGFpbnMgZGVmYXVsdCBvcHRpb25zIGZvciBkcGtnLiBFYWNoIGxpbmUgY29udGFpbnMgYSBzaW5nbGUgIgorIm9wdGlvbiB3aGljaCBpcyBleGFjdGx5IHRoZSBzYW1lIGFzIGEgbm9ybWFsIGNvbW1hbmQgbGluZSBvcHRpb24gZm9yIGRwa2cgIgorImV4Y2VwdCBmb3IgdGhlIGxlYWRpbmcgZGFzaGVzIHdoaWNoIGFyZSBub3QgdXNlZCBoZXJlLiBRdW90ZXMgc3Vycm91bmRpbmcgIgorIm9wdGlvbiB2YWx1ZXMgYXJlIHN0cmlwcGVkLiBDb21tZW50cyBhcmUgYWxsb3dlZCBieSBzdGFydGluZyBhIGxpbmUgd2l0aCBhICIKKyJoYXNoIHNpZ24gKFwiQjwjPlwiKS4iCittc2dzdHIgIiIKKyJFc3RlIGZpY2hlcm8gY29udGllbmUgbGFzIG9wY2lvbmVzIHByZWRlZmluaWRhcyBkZSBkcGtnLiBDYWRhIGzDrW5lYSBjb250aWVuZSAiCisidW5hIMO6bmljYSBvcGNpw7NuLCBpZMOpbnRpY2EgYSB1bmEgb3BjacOzbiBkZSBsw61uZWEgZGUgw7NyZGVuZXMgbm9ybWFsIGRlIGRwa2cgYSAiCisiZXhjZXBjacOzbiBkZSBsYSBhdXNlbmNpYSBkZSBndWlvbmVzIHByZWNlZGVudGVzLiBMYXMgY29taWxsYXMgcXVlIHJvZGVlbiAiCisidmFsb3JlcyBkZSBvcGNpb25lcyBkZXNhcGFyZWNlcsOhbi4gU2UgcGVybWl0ZW4gY29tZW50YXJpb3Mgc2kgbGEgbMOtbmVhICIKKyJjb21pZW56YSBjb24gdW5hIGFsbW9oYWRpbGxhICjCq0I8Iz7CuykuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLmNmZy41OjE0Cittc2dpZCAiSTwvZXRjL2Rwa2cvZHBrZy5jZmcuZC9bMC05YS16QS1aXy1dKj4iCittc2dzdHIgIkk8L2V0Yy9kcGtnL2Rwa2cuY2ZnLmQvWzAtOWEtekEtWl8tXSo+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLmNmZy41OjE4Cittc2dpZCAiSTx+Ly5kcGtnLmNmZz4iCittc2dzdHIgIkk8fi8uZHBrZy5jZmc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLmNmZy41OjI0IGRwa2ctZGl2ZXJ0Ljg6MTM0IGRwa2ctcXVlcnkuMToyMjIgZHBrZy1zdGF0b3ZlcnJpZGUuODo4NgorbXNnaWQgIkI8ZHBrZz4oMSkuIgorbXNnc3RyICJCPGRwa2c+KDEpLiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLWJ1aWxkZmxhZ3MiCittc2dzdHIgImRwa2ctYnVpbGRmbGFncyIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiMjAxMC0wMy0wNyIKK21zZ2lkICIyMDExLTA5LTEzIgorbXNnc3RyICI3IGRlIE1hcnpvIGRlIDIwMTAiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjQKK21zZ2lkICJkcGtnLWJ1aWxkZmxhZ3MgLSByZXR1cm5zIGJ1aWxkIGZsYWdzIHRvIHVzZSBkdXJpbmcgcGFja2FnZSBidWlsZCIKK21zZ3N0ciAiIgorImRwa2ctYnVpbGRmbGFncyAtIERldnVlbHZlIG9wY2lvbmVzIGRlIGNvbXBpbGFjacOzbiBhIHVzYXIgZHVyYW50ZSBsYSAiCisiY29uc3RydWNjacOzbiBkZWwgcGFxdWV0ZSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6OAorIywgZnV6enkKKyN8IG1zZ2lkICJCPGRwa2ctYnVpbGRmbGFncz4gW0k8b3B0aW9uPi4uLl0gSTxjb21tYW5kPiIKK21zZ2lkICJCPGRwa2ctYnVpbGRmbGFncz4gW0k8b3B0aW9uPi4uLl0gW0k8Y29tbWFuZD5dIgorbXNnc3RyICJCPGRwa2ctYnVpbGRmbGFncz4gW0k8b3BjacOzbj4uLi5dIEk8b3JkZW4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMgorbXNnaWQgIiIKKyJCPGRwa2ctYnVpbGRmbGFncz4gaXMgYSB0b29sIHRvIHJldHJpZXZlIGNvbXBpbGF0aW9uIGZsYWdzIHRvIHVzZSBkdXJpbmcgIgorImJ1aWxkIG9mIERlYmlhbiBwYWNrYWdlcy4iCittc2dzdHIgIiIKKyJCPGRwa2ctYnVpbGRmbGFncz4gZXMgdW5hIGhlcnJhbWllbnRhIHBhcmEgb2J0ZW5lciBsYXMgb3BjaW9uZXMgZGUgIgorImNvbXBpbGFjacOzbiBhIHVzYXIgZHVyYW50ZSBsYSBjb25zdHJ1Y2Npw7NuIGRlIHBhcXVldGVzIERlYmlhbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE1Cittc2dpZCAiIgorIlRoZSBkZWZhdWx0IGZsYWdzIGFyZSBkZWZpbmVkIGJ5IHRoZSB2ZW5kb3IgYnV0IHRoZXkgY2FuIGJlIGV4dGVuZGVkLyIKKyJvdmVycmlkZW4gaW4gc2V2ZXJhbCB3YXlzOiIKK21zZ3N0ciAiIgorIkxhcyBvcGNpb25lcyBwcmVkZWZpbmlkYXMgc2UgZGVmaW5lbiBwb3IgZWwgcHJvdmVlZG9yLCBwZXJvIHNlIHB1ZWRlbiAiCisiZXh0ZW5kZXIgeSBzdXN0aXR1aXIgZGUgdmFyaWFzIGZvcm1hczoiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNQorIywgbm8td3JhcAorbXNnaWQgIjEuIgorbXNnc3RyICIxLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTcKK21zZ2lkICJzeXN0ZW0td2lkZSB3aXRoIEI8L2V0Yy9kcGtnL2J1aWxkZmxhZ3MuY29uZj47IgorbXNnc3RyICJQYXJhIHRvZG8gZWwgc2lzdGVtYSBjb24gQjwvZXRjL2Rwa2cvYnVpbGRmbGFncy5jb25mPjsiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNworIywgbm8td3JhcAorbXNnaWQgIjIuIgorbXNnc3RyICIyLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjAKK21zZ2lkICIiCisiZm9yIHRoZSBjdXJyZW50IHVzZXIgd2l0aCBCPCRYREdfQ09ORklHX0hPTUUvZHBrZy9idWlsZGZsYWdzLmNvbmY+IHdoZXJlIEI8IgorIiRYREdfQ09ORklHX0hPTUU+IGRlZmF1bHRzIHRvIEI8JEhPTUUvLmNvbmZpZz47IgorbXNnc3RyICIiCisiUGFyYSBlbCB1c3VhcmlvIGFjdHVhbCBjb24gQjwkWERHX0NPTkZJR19IT01FL2Rwa2cvYnVpbGRmbGFncy5jb25mPiwgZMOzbmRlIEI8IgorIiRYREdfQ09ORklHX0hPTUU+IHRpZW5lIGNvbW8gdmFsb3IgcHJlZGVmaW5pZG8gQjwkSE9NRS8uY29uZmlnPjsiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyMAorIywgbm8td3JhcAorbXNnaWQgIjMuIgorbXNnc3RyICIzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjMKKyMsIGZ1enp5CisjfCBtc2dpZCAidGVtcG9yYXJpbHkgd2l0aCBlbnZpcm9ubWVudCB2YXJpYWJsZXMgKHNlZSBzZWN0aW9uIEI8RU5WSVJPTk1FTlQ+KS4iCittc2dpZCAiIgorInRlbXBvcmFyaWx5IGJ5IHRoZSB1c2VyIHdpdGggZW52aXJvbm1lbnQgdmFyaWFibGVzIChzZWUgc2VjdGlvbiAiCisiQjxFTlZJUk9OTUVOVD4pOyIKK21zZ3N0ciAiIgorIlRlbXBvcmFsbWVudGUgY29uIHZhcmlhYmxlcyBkZSBlbnRvcm5vIChjb25zdWx0ZSBsYSBzZWNjacOzbiBCPEVOVE9STk8+KS4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyMworIywgbm8td3JhcAorbXNnaWQgIjQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjI2CisjLCBmdXp6eQorI3wgbXNnaWQgInRlbXBvcmFyaWx5IHdpdGggZW52aXJvbm1lbnQgdmFyaWFibGVzIChzZWUgc2VjdGlvbiBCPEVOVklST05NRU5UPikuIgorbXNnaWQgIiIKKyJkeW5hbWljYWxseSBieSB0aGUgcGFja2FnZSBtYWludGFpbmVyIHdpdGggZW52aXJvbm1lbnQgdmFyaWFibGVzIHNldCB2aWEgIgorIkI8ZGViaWFuL3J1bGVzPiAoc2VlIHNlY3Rpb24gQjxFTlZJUk9OTUVOVD4pLiIKK21zZ3N0ciAiIgorIlRlbXBvcmFsbWVudGUgY29uIHZhcmlhYmxlcyBkZSBlbnRvcm5vIChjb25zdWx0ZSBsYSBzZWNjacOzbiBCPEVOVE9STk8+KS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjI4Cittc2dpZCAiVGhlIGNvbmZpZ3VyYXRpb24gZmlsZXMgY2FuIGNvbnRhaW4gdHdvIHR5cGVzIG9mIGRpcmVjdGl2ZXM6IgorbXNnc3RyICJMb3MgZmljaGVyb3MgZGUgY29uZmlndXJhY2nDs24gcHVlZGVuIGNvbnRlbmVyIGRvcyB0aXBvcyBkZSBkaXJlY3RpdmFzOiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjI4CisjLCBuby13cmFwCittc2dpZCAiQjxTRVQ+STwgZmxhZyB2YWx1ZT4iCittc2dzdHIgIkI8U0VUPkk8IG9wY2nDs24gdmFsb3I+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTozMQorbXNnaWQgIk92ZXJyaWRlIHRoZSBmbGFnIG5hbWVkIEk8ZmxhZz4gdG8gaGF2ZSB0aGUgdmFsdWUgSTx2YWx1ZT4uIgorbXNnc3RyICJTdXN0aXR1eWUgbGEgb3BjacOzbiBsbGFtYWRhIEk8b3BjacOzbj4gY29uIGVsIHZhbG9yIEk8dmFsb3I+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjMxCisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8U0VUPkk8IGZsYWcgdmFsdWU+IgorbXNnaWQgIkI8U1RSSVA+STwgZmxhZyB2YWx1ZT4iCittc2dzdHIgIkI8U0VUPkk8IG9wY2nDs24gdmFsb3I+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTozNAorIywgZnV6enkKKyN8IG1zZ2lkICJPdmVycmlkZSB0aGUgZmxhZyBuYW1lZCBJPGZsYWc+IHRvIGhhdmUgdGhlIHZhbHVlIEk8dmFsdWU+LiIKK21zZ2lkICIiCisiU3RyaXAgZnJvbSB0aGUgZmxhZyBuYW1lZCBJPGZsYWc+IGFsbCB0aGUgYnVpbGQgZmxhZ3MgbGlzdGVkIGluIEk8dmFsdWU+LiIKK21zZ3N0ciAiU3VzdGl0dXllIGxhIG9wY2nDs24gbGxhbWFkYSBJPG9wY2nDs24+IGNvbiBlbCB2YWxvciBJPHZhbG9yPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTozNAorIywgbm8td3JhcAorbXNnaWQgIkI8QVBQRU5EPkk8IGZsYWcgdmFsdWU+IgorbXNnc3RyICJCPEFQUEVORD5JPCBvcGNpw7NuIHZhbG9yPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MzgKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIkV4dGVuZCB0aGUgZmxhZyBuYW1lZCBJPGZsYWc+IHdpdGggdGhlIG9wdGlvbnMgZ2l2ZW4gaW4gSTx2YWx1ZT4uICBBICIKKyN8ICJzcGFjZSBpcyBwcmVwZW5kZWQgdG8gdGhlIGFwcGVuZGVkIHZhbHVlIGlmIHRoZSBmbGFnJ3MgY3VycmVudCB2YWx1ZSBpcyAiCisjfCAibm9uLWVtcHR5LiIKK21zZ2lkICIiCisiRXh0ZW5kIHRoZSBmbGFnIG5hbWVkIEk8ZmxhZz4gYnkgYXBwZW5kaW5nIHRoZSBvcHRpb25zIGdpdmVuIGluIEk8dmFsdWU+LiAgQSAiCisic3BhY2UgaXMgcHJlcGVuZGVkIHRvIHRoZSBhcHBlbmRlZCB2YWx1ZSBpZiB0aGUgZmxhZydzIGN1cnJlbnQgdmFsdWUgaXMgbm9uLSIKKyJlbXB0eS4iCittc2dzdHIgIiIKKyJFeHRpZW5kZSBsYSBvcGNpw7NuIGxsYW1hZGEgSTxvcGNpw7NuPiBjb24gbGFzIG9wY2lvbmVzIGRhZGFzIGVuIEk8dmFsb3I+LiBTZSAiCisicHJlZmlqYXLDoSB1biBlc3BhY2lvIGFsIHZhbG9yIGHDsWFkaWRvIHNpIGVsIHZhbG9yIGFjdHVhbCBkZSBsYSBvcGNpw7NuIG5vICIKKyJlc3TDoSB2YWPDrW8uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MzgKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxBUFBFTkQ+STwgZmxhZyB2YWx1ZT4iCittc2dpZCAiQjxQUkVQRU5EPkk8IGZsYWcgdmFsdWU+IgorbXNnc3RyICJCPEFQUEVORD5JPCBvcGNpw7NuIHZhbG9yPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6NDIKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIkV4dGVuZCB0aGUgZmxhZyBuYW1lZCBJPGZsYWc+IHdpdGggdGhlIG9wdGlvbnMgZ2l2ZW4gaW4gSTx2YWx1ZT4uICBBICIKKyN8ICJzcGFjZSBpcyBwcmVwZW5kZWQgdG8gdGhlIGFwcGVuZGVkIHZhbHVlIGlmIHRoZSBmbGFnJ3MgY3VycmVudCB2YWx1ZSBpcyAiCisjfCAibm9uLWVtcHR5LiIKK21zZ2lkICIiCisiRXh0ZW5kIHRoZSBmbGFnIG5hbWVkIEk8ZmxhZz4gYnkgcHJlcGVuZGluZyB0aGUgb3B0aW9ucyBnaXZlbiBpbiBJPHZhbHVlPi4gICIKKyJBIHNwYWNlIGlzIGFwcGVuZGVkIHRvIHRoZSBwcmVwZW5kZWQgdmFsdWUgaWYgdGhlIGZsYWcncyBjdXJyZW50IHZhbHVlIGlzICIKKyJub24tZW1wdHkuIgorbXNnc3RyICIiCisiRXh0aWVuZGUgbGEgb3BjacOzbiBsbGFtYWRhIEk8b3BjacOzbj4gY29uIGxhcyBvcGNpb25lcyBkYWRhcyBlbiBJPHZhbG9yPi4gU2UgIgorInByZWZpamFyw6EgdW4gZXNwYWNpbyBhbCB2YWxvciBhw7FhZGlkbyBzaSBlbCB2YWxvciBhY3R1YWwgZGUgbGEgb3BjacOzbiBubyAiCisiZXN0w6EgdmFjw61vLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6NDUKK21zZ2lkICIiCisiVGhlIGNvbmZpZ3VyYXRpb24gZmlsZXMgY2FuIGNvbnRhaW4gY29tbWVudHMgb24gbGluZXMgc3RhcnRpbmcgd2l0aCBhIGhhc2ggIgorIigjKS4gRW1wdHkgbGluZXMgYXJlIGFsc28gaWdub3JlZC4iCittc2dzdHIgIiIKKyJMb3MgZmljaGVyb3MgZGUgY29uZmlndXJhY2nDs24gcHVlZGVuIGNvbnRlbmVyIGNvbWVudGFyaW9zIGVuIGzDrW5lYXMgcXVlICIKKyJlbXBpZWNlbiBjb24gwqsjwrsuIFRhbWJpw6luIHNlIGlnbm9yYW4gbMOtbmVhcyB2YWPDrWFzLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjQ2CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8LS1kZWJ1Zz4iCittc2dpZCAiQjwtLWR1bXA+IgorbXNnc3RyICJCPC0tZGVidWc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo1MQorbXNnaWQgIiIKKyJQcmludCB0byBzdGFuZGFyZCBvdXRwdXQgYWxsIGNvbXBpbGF0aW9uIGZsYWdzIGFuZCB0aGVpciB2YWx1ZXMuIEl0IHByaW50cyAiCisib25lIGZsYWcgcGVyIGxpbmUgc2VwYXJhdGVkIGZyb20gaXRzIHZhbHVlIGJ5IGFuIGVxdWFsIHNpZ24gIgorIihcIkk8ZmxhZz49STx2YWx1ZT5cIikuIFRoaXMgaXMgdGhlIGRlZmF1bHQgYWN0aW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6NTEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tbGlzdD4iCittc2dzdHIgIkI8LS1saXN0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6NTYKK21zZ2lkICIiCisiUHJpbnQgdGhlIGxpc3Qgb2YgZmxhZ3Mgc3VwcG9ydGVkIGJ5IHRoZSBjdXJyZW50IHZlbmRvciAob25lIHBlciBsaW5lKS4gU2VlICIKKyJ0aGUgQjxTVVBQT1JURUQgRkxBR1M+IHNlY3Rpb24gZm9yIG1vcmUgaW5mb3JtYXRpb24gYWJvdXQgdGhlbS4iCittc2dzdHIgIiIKKyJNdWVzdHJhIGxhIGxpc3RhIGRlIG9wY2lvbmVzIGFjZXB0YWRhcyBwb3IgZWwgcHJvdmVlZG9yIGFjdHVhbCAodW5vIHBvciAiCisibMOtbmVhKS4gUGFyYSBtw6FzIGluZm9ybWFjacOzbiBhY2VyY2EgZGUgZWxsb3MgY29uc3VsdGUgbGEgc2VjY2nDs24gQjxPUENJT05FUyAiCisiQUNFUFRBREFTPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo1NgorIywgbm8td3JhcAorbXNnaWQgIkI8LS1leHBvcnQ9Pkk8Zm9ybWF0PiIKK21zZ3N0ciAiQjwtLWV4cG9ydD0+STxmb3JtYXQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo2NgorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiUHJpbnQgdG8gc3RhbmRhcmQgb3V0cHV0IHNoZWxsIChpZiBJPGZvcm1hdD4gaXMgQjxzaD4pIG9yIG1ha2UgKGlmICIKKyN8ICJJPGZvcm1hdD4gaXMgQjxtYWtlPikgY29tbWFuZHMgdGhhdCBjYW4gYmUgdXNlZCB0byBleHBvcnQgYWxsIHRoZSAiCisjfCAiY29tcGlsYXRpb24gZmxhZ3MgaW4gdGhlIGVudmlyb25tZW50LiBJZiB0aGUgSTxmb3JtYXQ+IHZhbHVlIGlzIG5vdCAiCisjfCAiZ2l2ZW4sIEI8c2g+IGlzIGFzc3VtZWQuIE9ubHkgY29tcGlsYXRpb24gZmxhZ3Mgc3RhcnRpbmcgd2l0aCBhbiB1cHBlciAiCisjfCAiY2FzZSBjaGFyYWN0ZXIgYXJlIGluY2x1ZGVkLCBvdGhlcnMgYXJlIGFzc3VtZWQgdG8gbm90IGJlIHN1aXRhYmxlIGZvciAiCisjfCAidGhlIGVudmlyb25tZW50LiIKK21zZ2lkICIiCisiUHJpbnQgdG8gc3RhbmRhcmQgb3V0cHV0IHNoZWxsIChpZiBJPGZvcm1hdD4gaXMgQjxzaD4pIG9yIG1ha2UgKGlmIEk8Zm9ybWF0PiAiCisiaXMgQjxtYWtlPikgY29tbWFuZHMgdGhhdCBjYW4gYmUgdXNlZCB0byBleHBvcnQgYWxsIHRoZSBjb21waWxhdGlvbiBmbGFncyBpbiAiCisidGhlIGVudmlyb25tZW50LiBJZiBJPGZvcm1hdD4gaXMgQjxjb25maWd1cmU+IHRoZW4gdGhlIG91dHB1dCBjYW4gYmUgdXNlZCBvbiAiCisiYSBCPC4vY29uZmlndXJlPiBjb21tYW5kLWxpbmUuIElmIHRoZSBJPGZvcm1hdD4gdmFsdWUgaXMgbm90IGdpdmVuLCBCPHNoPiBpcyAiCisiYXNzdW1lZC4gT25seSBjb21waWxhdGlvbiBmbGFncyBzdGFydGluZyB3aXRoIGFuIHVwcGVyIGNhc2UgY2hhcmFjdGVyIGFyZSAiCisiaW5jbHVkZWQsIG90aGVycyBhcmUgYXNzdW1lZCB0byBub3QgYmUgc3VpdGFibGUgZm9yIHRoZSBlbnZpcm9ubWVudC4iCittc2dzdHIgIiIKKyJNdWVzdHJhIHBvciBsYSBzYWxpZGEgZGVsIGludMOpcnByZXRlIGRlIMOzcmRlbmVzIGVzdMOhbmRhciAoc2kgSTxmb3JtYXQ+IGVzICIKKyJCPHNoPikgbyBtYWtlIChzaSBJPGZvcm1hdD4gZXMgQjxtYWtlPikgbGFzIMOzcmRlbmVzIHF1ZSBzZSBwdWVkZW4gdXNhciBwYXJhICIKKyJleHBvcnRhciB0b2RhcyBsYXMgb3BjaW9uZXMgZGUgY29tcGlsYWNpw7NuIGVuIGVsIGVudG9ybm8uIFNlIGFzdW1lIEI8c2g+IHNpICIKKyJubyBzZSBpbnRyb2R1Y2UgZWwgdmFsb3IgSTxmb3JtYXQ+LiBTw7NsbyBzZSBpbmNsdXllbiBvcGNpb25lcyBkZSBjb21waWxhY2nDs24gIgorInF1ZSBlbXBpZXphbiBjb24gdW4gY2Fyw6FjdGVyIGVuIG1hecO6c2N1bGEsIHNlIGFzdW1lIHF1ZSBsb3Mgb3Ryb3Mgbm8gc29uICIKKyJhZGVjdWFkb3MgcGFyYSBlbCBlbnRvcm5vLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjY2CisjLCBuby13cmFwCittc2dpZCAiQjwtLWdldD5JPCBmbGFnPiIKK21zZ3N0ciAiQjwtLWdldD5JPCBvcGNpw7NuPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6NzAKK21zZ2lkICIiCisiUHJpbnQgdGhlIHZhbHVlIG9mIHRoZSBmbGFnIG9uIHN0YW5kYXJkIG91dHB1dC4gRXhpdHMgd2l0aCAwIGlmIHRoZSBmbGFnIGlzICIKKyJrbm93biBvdGhlcndpc2UgZXhpdHMgd2l0aCAxLiIKK21zZ3N0ciAiIgorIk11ZXN0cmEgZWwgdmFsb3IgZGUgbGEgb3BjacOzbiBwb3IgbGEgc2FsaWRhIGVzdMOhbmRhci4gQ2llcnJhIGNvbiB2YWxvciAwIHNpICIKKyJsYSBvcGNpw7NuIGVzIGNvbm9jaWRhLCB5IGVsIHZhbG9yIDEgZW4gY2FzbyBjb250cmFyaW8uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6NzAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tb3JpZ2luPkk8IGZsYWc+IgorbXNnc3RyICJCPC0tb3JpZ2luPkk8IG9wY2nDs24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo3NQorbXNnaWQgIiIKKyJQcmludCB0aGUgb3JpZ2luIG9mIHRoZSB2YWx1ZSB0aGF0IGlzIHJldHVybmVkIGJ5IEI8LS1nZXQ+LiBFeGl0cyB3aXRoIDAgaWYgIgorInRoZSBmbGFnIGlzIGtub3duIG90aGVyd2lzZSBleGl0cyB3aXRoIDEuIFRoZSBvcmlnaW4gY2FuIGJlIG9uZSBvZiB0aGUgIgorImZvbGxvd2luZyB2YWx1ZXM6IgorbXNnc3RyICIiCisiTXVlc3RyYSBlbCBvcmlnZW4gZGVsIHZhbG9yIG9idGVuaWRvIGNvbiBCPC0tZ2V0Pi4gQ2llcnJvIGNvbiB2YWxvciAwIHNpIGxhICIKKyJvcGNpw7NuIGVzIGNvbm9jaWRhLCB5IGVsIHZhbG9yIDEgZW4gY2FzbyBjb250cmFyaW8uIEVsIG9yaWdlbiBwdWVkZSBzZXIgIgorImN1YWxxdWllcmEgZGUgbGFzIHNpZ3VpZW50ZXMgb3BjaW9uZXM6IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6NzYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHZlbmRvcj4iCittc2dzdHIgIkI8dmVuZG9yPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6NzkKK21zZ2lkICJ0aGUgb3JpZ2luYWwgZmxhZyBzZXQgYnkgdGhlIHZlbmRvciBpcyByZXR1cm5lZDsiCittc2dzdHIgIkRldnVlbHZlIGxhIG9wY2nDs24gb3JpZ2luYWxtZW50ZSBkZWZpbmlkYSBwb3IgZWwgcHJvdmVlZG9yOyIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjc5CisjLCBuby13cmFwCittc2dpZCAiQjxzeXN0ZW0+IgorbXNnc3RyICJCPHN5c3RlbT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjgyCittc2dpZCAidGhlIGZsYWcgaXMgc2V0L21vZGlmaWVkIGJ5IGEgc3lzdGVtLXdpZGUgY29uZmlndXJhdGlvbjsiCittc2dzdHIgIiIKKyJMYSBvcGNpw7NuIGVzdMOhIGRlZmluaWRhIG8gbW9kaWZpY2FkYSBwb3IgdW5hIGNvbmZpZ3VyYWNpw7NuIHF1ZSBhZmVjdGEgYSB0b2RvICIKKyJlbCBzaXN0ZW1hOyIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjgyCisjLCBuby13cmFwCittc2dpZCAiQjx1c2VyPiIKK21zZ3N0ciAiQjx1c2VyPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6ODUKK21zZ2lkICJ0aGUgZmxhZyBpcyBzZXQvbW9kaWZpZWQgYnkgYSB1c2VyLXNwZWNpZmljIGNvbmZpZ3VyYXRpb247IgorbXNnc3RyICIiCisiTGEgb3BjacOzbiBlc3RhIGRlZmluaWRhIG8gbW9kaWZpY2FkYSBwb3IgdW5hIGNvbmZpZ3VyYWNpw7NuIGVzcGVjw61maWNhIGRlbCAiCisidXN1YXJpbzsiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo4NQorIywgbm8td3JhcAorbXNnaWQgIkI8ZW52PiIKK21zZ3N0ciAiQjxlbnY+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo4OAorbXNnaWQgInRoZSBmbGFnIGlzIHNldC9tb2RpZmllZCBieSBhbiBlbnZpcm9ubWVudC1zcGVjaWZpYyBjb25maWd1cmF0aW9uLiIKK21zZ3N0ciAiIgorIkxhIG9wY2nDs24gZXN0YSBkZWZpbmlkYSBvIG1vZGlmaWNhZG8gcG9yIHVuYSBjb25maWd1cmFjacOzbiBlc3BlY8OtZmljYSBkZWwgIgorImVudG9ybm8uIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1idWlsZGZsYWdzLjE6OTYKKyMsIG5vLXdyYXAKK21zZ2lkICJTVVBQT1JURUQgRkxBR1MiCittc2dzdHIgIk9QQ0lPTkVTIEFDRVBUQURBUyIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjk3CisjLCBuby13cmFwCittc2dpZCAiQjxDRkxBR1M+IgorbXNnc3RyICJCPENGTEFHUz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEwMworbXNnaWQgIiIKKyJPcHRpb25zIGZvciB0aGUgQyBjb21waWxlci4gVGhlIGRlZmF1bHQgdmFsdWUgc2V0IGJ5IHRoZSB2ZW5kb3IgaW5jbHVkZXMgSTwtIgorImc+IGFuZCB0aGUgZGVmYXVsdCBvcHRpbWl6YXRpb24gbGV2ZWwgKEk8LU8yPiB1c3VhbGx5LCBvciBJPC1PMD4gaWYgdGhlICIKKyJCPERFQl9CVUlMRF9PUFRJT05TPiBlbnZpcm9ubWVudCB2YXJpYWJsZSBkZWZpbmVzIEk8bm9vcHQ+KS4iCittc2dzdHIgIiIKKyJPcGNpb25lcyBwYXJhIGVsIGNvbXBpbGFkb3IgQy4gRWwgdmFsb3IgcG9yIG9taXNpw7NuIGRlZmluaWRvIHBvciBlbCAiCisicHJvdmVlZG9yIGluY2x1eWUgSTwtZz4geSBlbCBuaXZlbCBkZSBvcHRpbWl6YWNpw7NuIHByZWRlZmluaWRvICIKKyIoaGFiaXR1YWxtZW50ZSBJPC1PMj4sIG8gSTwtTzA+IHNpIGxhIHZhcmlhYmxlIGRlIGVudG9ybm8gIgorIkI8REVCX0JVSUxEX09QVElPTlM+IGRlZmluZSBJPG5vb3B0PikuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTAzCisjLCBuby13cmFwCittc2dpZCAiQjxDUFBGTEFHUz4iCittc2dzdHIgIkI8Q1BQRkxBR1M+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMDYKK21zZ2lkICJPcHRpb25zIGZvciB0aGUgQyBwcmVwcm9jZXNzb3IuIERlZmF1bHQgdmFsdWU6IGVtcHR5LiIKK21zZ3N0ciAiT3BjaW9uZXMgcGFyYSBlbCBwcmVwcm9jZXNhZG9yIEMuIFZhbG9yIHBvciBvbWlzacOzbjogdmFjw61vLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEwNgorIywgbm8td3JhcAorbXNnaWQgIkI8Q1hYRkxBR1M+IgorbXNnc3RyICJCPENYWEZMQUdTPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTA5Cittc2dpZCAiT3B0aW9ucyBmb3IgdGhlIEMrKyBjb21waWxlci4gU2FtZSBhcyBCPENGTEFHUz4uIgorbXNnc3RyICJPcGNpb25lcyBwYXJhIGVsIGNvbXBpbGFkb3IgQysrLiBJZMOpbnRpY2EgYSBCPENGTEFHUz4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTA5CisjLCBuby13cmFwCittc2dpZCAiQjxGRkxBR1M+IgorbXNnc3RyICJCPEZGTEFHUz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjExMgorbXNnaWQgIk9wdGlvbnMgZm9yIHRoZSBGb3J0cmFuIGNvbXBpbGVyLiBTYW1lIGFzIEI8Q0ZMQUdTPi4iCittc2dzdHIgIk9wY2lvbmVzIHBhcmEgZWwgY29tcGlsYWRvciBGb3J0cmFuLiBJZMOpbnRpY2EgYSBCPENGTEFHUz4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTEyCisjLCBuby13cmFwCittc2dpZCAiQjxMREZMQUdTPiIKK21zZ3N0ciAiQjxMREZMQUdTPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTIwCittc2dpZCAiIgorIk9wdGlvbnMgcGFzc2VkIHRvIHRoZSBjb21waWxlciB3aGVuIGxpbmtpbmcgZXhlY3V0YWJsZXMgb3Igc2hhcmVkIG9iamVjdHMgIgorIihpZiB0aGUgbGlua2VyIGlzIGNhbGxlZCBkaXJlY3RseSwgdGhlbiBCPC1XbD4gYW5kIEI8LD4gaGF2ZSB0byBiZSBzdHJpcHBlZCAiCisiZnJvbSB0aGVzZSBvcHRpb25zKS4gRGVmYXVsdCB2YWx1ZTogZW1wdHkuIgorbXNnc3RyICIiCisiT3BjaW9uZXMgaW50cm9kdWNpZGFzIGFsIGNvbXBpbGFkb3IgYWwgZW5sYXphciBlamVjdXRhYmxlcyB1IG9iamV0b3MgIgorImNvbXBhcnRpZG9zIChlbiBlbCBjYXNvIGRlIGludm9jYXIgYWwgZW5sYXphZG9yIGRpcmVjdGFtZW50ZSwgZGViZSBlbGltaW5hciAiCisiQjwtV2w+IHkgwqtCPCw+wrsgZGUgZXN0YXMgb3BjaW9uZXMpLiBWYWxvciBwb3Igb21pc2nDs246IHZhY8Otby4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMjIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC9ldGMvZHBrZy9idWlsZGZsYWdzLmNvbmY+IgorbXNnc3RyICJCPC9ldGMvZHBrZy9idWlsZGZsYWdzLmNvbmY+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMjUKK21zZ2lkICJTeXN0ZW0gd2lkZSBjb25maWd1cmF0aW9uIGZpbGUuIgorbXNnc3RyICJGaWNoZXJvIGRlIGNvbmZpZ3VyYWNpw7NuIGRlIHRvZG8gZWwgc2lzdGVtYS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMjUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPCRYREdfQ09ORklHX0hPTUUvZHBrZy9idWlsZGZsYWdzLmNvbmY+IG9yIEI8JEhPTUUvLmNvbmZpZy9kcGtnL2J1aWxkZmxhZ3MuY29uZj4iCittc2dzdHIgIkI8JFhER19DT05GSUdfSE9NRS9kcGtnL2J1aWxkZmxhZ3MuY29uZj4gbyBCPCRIT01FLy5jb25maWcvZHBrZy9idWlsZGZsYWdzLmNvbmY+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMjgKK21zZ2lkICJVc2VyIGNvbmZpZ3VyYXRpb24gZmlsZS4iCittc2dzdHIgIkZpY2hlcm8gZGUgY29uZmlndXJhY2nDs24gZGVsIHVzdWFyaW8uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMzUKK21zZ2lkICIiCisiVGhlcmUgYXJlIDIgc2V0cyBvZiBlbnZpcm9ubWVudCB2YXJpYWJsZXMgZG9pbmcgdGhlIHNhbWUgb3BlcmF0aW9ucywgdGhlICIKKyJmaXJzdCBvbmUgKERFQl9JPGZsYWc+X0k8b3A+KSBzaG91bGQgbmV2ZXIgYmUgdXNlZCB3aXRoaW4gQjxkZWJpYW4vcnVsZXM+LiAiCisiSXQncyBtZWFudCBmb3IgYW55IHVzZXIgdGhhdCB3YW50cyB0byByZWJ1aWxkIHRoZSBzb3VyY2UgcGFja2FnZSB3aXRoICIKKyJkaWZmZXJlbnQgYnVpbGQgZmxhZ3MuIFRoZSBzZWNvbmQgc2V0IChERUJfSTxmbGFnPl9NQUlOVF9JPG9wPikgc2hvdWxkIG9ubHkgIgorImJlIHVzZWQgaW4gQjxkZWJpYW4vcnVsZXM+IGJ5IHBhY2thZ2UgbWFpbnRhaW5lcnMgdG8gY2hhbmdlIHRoZSByZXN1bHRpbmcgIgorImJ1aWxkIGZsYWdzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTM1CisjLCBuby13cmFwCittc2dpZCAiQjxERUJfPkk8ZmxhZz5CPF9TRVQ+IgorbXNnc3RyICJCPERFQl8+STxvcGNpw7NuPkI8X1NFVD4iCisKKyMuIHR5cGU6IFRRCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMzcKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxERUJfPkk8ZmxhZz5CPF9TRVQ+IgorbXNnaWQgIkI8REVCXz5JPGZsYWc+QjxfTUFJTlRfU0VUPiIKK21zZ3N0ciAiQjxERUJfPkk8b3BjacOzbj5CPF9TRVQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNDEKK21zZ2lkICIiCisiVGhpcyB2YXJpYWJsZSBjYW4gYmUgdXNlZCB0byBmb3JjZSB0aGUgdmFsdWUgcmV0dXJuZWQgZm9yIHRoZSBnaXZlbiBJPGZsYWc+LiIKK21zZ3N0ciAiIgorIkVzdGEgdmFyaWFibGUgc2UgcHVlZGUgdXNhciBwYXJhIGZvcnphciBlbCB2YWxvciBkZXZ1ZWx0byBwYXJhIGxhIEk8b3BjacOzbj4gIgorImRhZGEuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTQxCisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8REVCXz5JPGZsYWc+QjxfU0VUPiIKK21zZ2lkICJCPERFQl8+STxmbGFnPkI8X1NUUklQPiIKK21zZ3N0ciAiQjxERUJfPkk8b3BjacOzbj5CPF9TRVQ+IgorCisjLiB0eXBlOiBUUQorIzogZHBrZy1idWlsZGZsYWdzLjE6MTQzCisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8REVCXz5JPGZsYWc+QjxfU0VUPiIKK21zZ2lkICJCPERFQl8+STxmbGFnPkI8X01BSU5UX1NUUklQPiIKK21zZ3N0ciAiQjxERUJfPkk8b3BjacOzbj5CPF9TRVQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNDgKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlRoaXMgdmFyaWFibGUgY2FuIGJlIHVzZWQgdG8gYXBwZW5kIHN1cHBsZW1lbnRhcnkgb3B0aW9ucyB0byB0aGUgdmFsdWUgIgorI3wgInJldHVybmVkIGZvciB0aGUgZ2l2ZW4gSTxmbGFnPi4iCittc2dpZCAiIgorIlRoaXMgdmFyaWFibGUgY2FuIGJlIHVzZWQgdG8gcHJvdmlkZSBhIHNwYWNlIHNlcGFyYXRlZCBsaXN0IG9mIG9wdGlvbnMgdGhhdCAiCisid2lsbCBiZSBzdHJpcHBlZCBmcm9tIHRoZSBzZXQgb2YgZmxhZ3MgcmV0dXJuZWQgZm9yIHRoZSBnaXZlbiBJPGZsYWc+LiIKK21zZ3N0ciAiIgorIkVzdGEgdmFyaWFibGUgc2UgcHVlZGUgdXNhciBwYXJhIGHDsWFkaXIgb3BjaW9uZXMgYWRpY2lvbmFsZXMgYWwgdmFsb3IgIgorImRldnVlbHRvIHBvciBsYSBJPG9wY2nDs24+IGRhZGEuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTQ4CisjLCBuby13cmFwCittc2dpZCAiQjxERUJfPkk8ZmxhZz5CPF9BUFBFTkQ+IgorbXNnc3RyICJCPERFQl8+STxvcGNpw7NuPkI8X0FQUEVORD4iCisKKyMuIHR5cGU6IFRRCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNTAKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxERUJfPkk8ZmxhZz5CPF9BUFBFTkQ+IgorbXNnaWQgIkI8REVCXz5JPGZsYWc+QjxfTUFJTlRfQVBQRU5EPiIKK21zZ3N0ciAiQjxERUJfPkk8b3BjacOzbj5CPF9BUFBFTkQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNTQKK21zZ2lkICIiCisiVGhpcyB2YXJpYWJsZSBjYW4gYmUgdXNlZCB0byBhcHBlbmQgc3VwcGxlbWVudGFyeSBvcHRpb25zIHRvIHRoZSB2YWx1ZSAiCisicmV0dXJuZWQgZm9yIHRoZSBnaXZlbiBJPGZsYWc+LiIKK21zZ3N0ciAiIgorIkVzdGEgdmFyaWFibGUgc2UgcHVlZGUgdXNhciBwYXJhIGHDsWFkaXIgb3BjaW9uZXMgYWRpY2lvbmFsZXMgYWwgdmFsb3IgIgorImRldnVlbHRvIHBvciBsYSBJPG9wY2nDs24+IGRhZGEuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTU0CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8REVCXz5JPGZsYWc+QjxfQVBQRU5EPiIKK21zZ2lkICJCPERFQl8+STxmbGFnPkI8X1BSRVBFTkQ+IgorbXNnc3RyICJCPERFQl8+STxvcGNpw7NuPkI8X0FQUEVORD4iCisKKyMuIHR5cGU6IFRRCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNTYKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxERUJfPkk8ZmxhZz5CPF9BUFBFTkQ+IgorbXNnaWQgIkI8REVCXz5JPGZsYWc+QjxfTUFJTlRfUFJFUEVORD4iCittc2dzdHIgIkI8REVCXz5JPG9wY2nDs24+QjxfQVBQRU5EPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTYwCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJUaGlzIHZhcmlhYmxlIGNhbiBiZSB1c2VkIHRvIGFwcGVuZCBzdXBwbGVtZW50YXJ5IG9wdGlvbnMgdG8gdGhlIHZhbHVlICIKKyN8ICJyZXR1cm5lZCBmb3IgdGhlIGdpdmVuIEk8ZmxhZz4uIgorbXNnaWQgIiIKKyJUaGlzIHZhcmlhYmxlIGNhbiBiZSB1c2VkIHRvIHByZXBlbmQgc3VwcGxlbWVudGFyeSBvcHRpb25zIHRvIHRoZSB2YWx1ZSAiCisicmV0dXJuZWQgZm9yIHRoZSBnaXZlbiBJPGZsYWc+LiIKK21zZ3N0ciAiIgorIkVzdGEgdmFyaWFibGUgc2UgcHVlZGUgdXNhciBwYXJhIGHDsWFkaXIgb3BjaW9uZXMgYWRpY2lvbmFsZXMgYWwgdmFsb3IgIgorImRldnVlbHRvIHBvciBsYSBJPG9wY2nDs24+IGRhZGEuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTYwCisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8REVCXz5JPGZsYWc+QjxfU0VUPiIKK21zZ2lkICJCPERFQl9CVUlMRF9NQUlOVF9PUFRJT05TPiIKK21zZ3N0ciAiQjxERUJfPkk8b3BjacOzbj5CPF9TRVQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNjUKK21zZ2lkICIiCisiVGhpcyB2YXJpYWJsZSBjYW4gYmUgdXNlZCB0byBkaXNhYmxlL2VuYWJsZSB2YXJpb3VzIGhhcmRlbmluZyBidWlsZCBmbGFncyAiCisidGhyb3VnaCB0aGUgQjxoYXJkZW5pbmc+IG9wdGlvbi4gU2VlIHRoZSBCPEhBUkRFTklORz4gc2VjdGlvbiBmb3IgZGV0YWlscy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE2NgorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJXQVJOSU5HIgorbXNnaWQgIkhBUkRFTklORyIKK21zZ3N0ciAiQVZJU08iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE3MQorbXNnaWQgIiIKKyJTZXZlcmFsIGNvbXBpbGUtdGltZSBvcHRpb25zIChkZXRhaWxlZCBiZWxvdykgY2FuIGJlIHVzZWQgdG8gaGVscCBoYXJkZW4gYSAiCisicmVzdWx0aW5nIGJpbmFyeSBhZ2FpbnN0IG1lbW9yeSBjb3JydXB0aW9uIGF0dGFja3MsIG9yIHByb3ZpZGUgYWRkaXRpb25hbCAiCisid2FybmluZyBtZXNzYWdlcyBkdXJpbmcgY29tcGlsYXRpb24uIEV4Y2VwdCBhcyBub3RlZCBiZWxvdywgdGhlc2UgYXJlICIKKyJlbmFibGVkIGJ5IGRlZmF1bHQgZm9yIGFyY2hpdGVjdHVyZXMgdGhhdCBzdXBwb3J0IHRoZW0uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE3NworbXNnaWQgIiIKKyJFYWNoIGhhcmRlbmluZyBmZWF0dXJlIGNhbiBiZSBlbmFibGVkIGFuZCBkaXNhYmxlZCBpbiB0aGUgIgorIkI8REVCX0JVSUxEX01BSU5UX09QVElPTlM+IGVudmlyb25tZW50IHZhcmlhYmxlJ3MgQjxoYXJkZW5pbmc+IHZhbHVlIHdpdGggIgorInRoZSBcIitcIiBhbmQgXCItXCIgbW9kaWZpZXIuIEZvciBleGFtcGxlLCB0byBlbmFibGUgdGhlIFwicGllXCIgZmVhdHVyZSBhbmQgIgorImRpc2FibGUgdGhlIFwiZm9ydGlmeVwiIGZlYXR1cmUgeW91IGNhbiBkbyB0aGlzIGluIEI8ZGViaWFuL3J1bGVzPjoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTc5CisjLCBuby13cmFwCittc2dpZCAiICBleHBvcnQgREVCX0JVSUxEX01BSU5UX09QVElPTlM9aGFyZGVuaW5nPStwaWUsLWZvcnRpZnlcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxODMKK21zZ2lkICIiCisiVGhlIHNwZWNpYWwgZmVhdHVyZSBCPGFsbD4gY2FuIGJlIHVzZWQgdG8gZW5hYmxlIG9yIGRpc2FibGUgYWxsIGhhcmRlbmluZyAiCisiZmVhdHVyZXMgYXQgdGhlIHNhbWUgdGltZS4gVGh1cyBkaXNhYmxpbmcgZXZlcnl0aGluZyBhbmQgZW5hYmxpbmcgb25seSAiCisiXCJmb3JtYXRcIiBhbmQgXCJmb3J0aWZ5XCIgY2FuIGJlIGFjaGlldmVkIHdpdGg6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE4NQorIywgbm8td3JhcAorbXNnaWQgIiAgZXhwb3J0IERFQl9CVUlMRF9NQUlOVF9PUFRJT05TPWhhcmRlbmluZz0tYWxsLCtmb3JtYXQsK2ZvcnRpZnlcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTg2CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8Rm9ybWF0PiIKK21zZ2lkICJCPGZvcm1hdD4iCittc2dzdHIgIkI8Rm9ybWF0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTk4Cittc2dpZCAiIgorIlRoaXMgc2V0dGluZyAoZW5hYmxlZCBieSBkZWZhdWx0KSBhZGRzIEI8LVdmb3JtYXQgLVdmb3JtYXQtc2VjdXJpdHkgLSIKKyJXZXJyb3I9Zm9ybWF0LXNlY3VyaXR5PiB0byBCPENGTEFHUz4gYW5kIEI8Q1hYRkxBR1M+LiBUaGlzIHdpbGwgd2FybiBhYm91dCAiCisiaW1wcm9wZXIgZm9ybWF0IHN0cmluZyB1c2VzLCBhbmQgd2lsbCBmYWlsIHdoZW4gZm9ybWF0IGZ1bmN0aW9ucyBhcmUgdXNlZCBpbiAiCisiYSB3YXkgdGhhdCB0aGF0IHJlcHJlc2VudCBwb3NzaWJsZSBzZWN1cml0eSBwcm9ibGVtcy4gQXQgcHJlc2VudCwgdGhpcyB3YXJucyAiCisiYWJvdXQgY2FsbHMgdG8gQjxwcmludGY+IGFuZCBCPHNjYW5mPiBmdW5jdGlvbnMgd2hlcmUgdGhlIGZvcm1hdCBzdHJpbmcgaXMgIgorIm5vdCBhIHN0cmluZyBsaXRlcmFsIGFuZCB0aGVyZSBhcmUgbm8gZm9ybWF0IGFyZ3VtZW50cywgYXMgaW4gQjxwcmludGYoZm9vKTsiCisiPiBpbnN0ZWFkIG9mIEI8cHJpbnRmKFwiJXNcIiwgZm9vKTs+IFRoaXMgbWF5IGJlIGEgc2VjdXJpdHkgaG9sZSBpZiB0aGUgIgorImZvcm1hdCBzdHJpbmcgY2FtZSBmcm9tIHVudHJ1c3RlZCBpbnB1dCBhbmQgY29udGFpbnMgXCIlblwiLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTk5CisjLCBuby13cmFwCittc2dpZCAiQjxmb3J0aWZ5PiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyMTAKK21zZ2lkICIiCisiVGhpcyBzZXR0aW5nIChlbmFibGVkIGJ5IGRlZmF1bHQpIGFkZHMgQjwtRF9GT1JUSUZZX1NPVVJDRT0yPiB0byBCPENGTEFHUz4gIgorImFuZCBCPENYWEZMQUdTPi4gRHVyaW5nIGNvZGUgZ2VuZXJhdGlvbiB0aGUgY29tcGlsZXIga25vd3MgYSBncmVhdCBkZWFsIG9mICIKKyJpbmZvcm1hdGlvbiBhYm91dCBidWZmZXIgc2l6ZXMgKHdoZXJlIHBvc3NpYmxlKSwgYW5kIGF0dGVtcHRzIHRvIHJlcGxhY2UgIgorImluc2VjdXJlIHVubGltaXRlZCBsZW5ndGggYnVmZmVyIGZ1bmN0aW9uIGNhbGxzIHdpdGggbGVuZ3RoLWxpbWl0ZWQgb25lcy4gIgorIlRoaXMgaXMgZXNwZWNpYWxseSB1c2VmdWwgZm9yIG9sZCwgY3J1ZnR5IGNvZGUuICBBZGRpdGlvbmFsbHksIGZvcm1hdCAiCisic3RyaW5ncyBpbiB3cml0YWJsZSBtZW1vcnkgdGhhdCBjb250YWluICclbicgYXJlIGJsb2NrZWQuIElmIGFuIGFwcGxpY2F0aW9uICIKKyJkZXBlbmRzIG9uIHN1Y2ggYSBmb3JtYXQgc3RyaW5nLCBpdCB3aWxsIG5lZWQgdG8gYmUgd29ya2VkIGFyb3VuZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjEzCittc2dpZCAiIgorIk5vdGUgdGhhdCBmb3IgdGhpcyBvcHRpb24gdG8gaGF2ZSBhbnkgZWZmZWN0LCB0aGUgc291cmNlIG11c3QgYWxzbyBiZSAiCisiY29tcGlsZWQgd2l0aCBCPC1PMT4gb3IgaGlnaGVyLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjEzCisjLCBuby13cmFwCittc2dpZCAiQjxzdGFja3Byb3RlY3Rvcj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjIyCittc2dpZCAiIgorIlRoaXMgc2V0dGluZyAoZW5hYmxlZCBieSBkZWZhdWx0KSBhZGRzIEI8LWZzdGFjay1wcm90ZWN0b3IgLS1wYXJhbT1zc3AtIgorImJ1ZmZlci1zaXplPTQ+IHRvIEI8Q0ZMQUdTPiBhbmQgQjxDWFhGTEFHUz4uIFRoaXMgYWRkcyBzYWZldHkgY2hlY2tzIGFnYWluc3QgIgorInN0YWNrIG92ZXJ3cml0ZXMuIFRoaXMgcmVuZGVycyBtYW55IHBvdGVudGlhbCBjb2RlIGluamVjdGlvbiBhdHRhY2tzIGludG8gIgorImFib3J0aW5nIHNpdHVhdGlvbnMuIEluIHRoZSBiZXN0IGNhc2UgdGhpcyB0dXJucyBjb2RlIGluamVjdGlvbiAiCisidnVsbmVyYWJpbGl0aWVzIGludG8gZGVuaWFsIG9mIHNlcnZpY2Ugb3IgaW50byBub24taXNzdWVzIChkZXBlbmRpbmcgb24gdGhlICIKKyJhcHBsaWNhdGlvbikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjIyNgorbXNnaWQgIiIKKyJUaGlzIGZlYXR1cmUgcmVxdWlyZXMgbGlua2luZyBhZ2FpbnN0IGdsaWJjIChvciBhbm90aGVyIHByb3ZpZGVyIG9mICIKKyJCPF9fc3RhY2tfY2hrX2ZhaWw+KSwgc28gbmVlZHMgdG8gYmUgZGlzYWJsZWQgd2hlbiBidWlsZGluZyB3aXRoIEI8LSIKKyJub3N0ZGxpYj4gb3IgQjwtZmZyZWVzdGFuZGluZz4gb3Igc2ltaWxhci4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjIyNworIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPHJlZ2V4PiIKK21zZ2lkICJCPHJlbHJvPiIKK21zZ3N0ciAiQjxyZWdleD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjIzNQorbXNnaWQgIiIKKyJUaGlzIHNldHRpbmcgKGVuYWJsZWQgYnkgZGVmYXVsdCkgYWRkcyBCPC1XbCwteixyZWxybz4gdG8gQjxMREZMQUdTPi4gICIKKyJEdXJpbmcgcHJvZ3JhbSBsb2FkLCBzZXZlcmFsIEVMRiBtZW1vcnkgc2VjdGlvbnMgbmVlZCB0byBiZSB3cml0dGVuIHRvIGJ5ICIKKyJ0aGUgbGlua2VyLiBUaGlzIGZsYWdzIHRoZSBsb2FkZXIgdG8gdHVybiB0aGVzZSBzZWN0aW9ucyByZWFkLW9ubHkgYmVmb3JlICIKKyJ0dXJuaW5nIG92ZXIgY29udHJvbCB0byB0aGUgcHJvZ3JhbS4gTW9zdCBub3RhYmx5IHRoaXMgcHJldmVudHMgR09UICIKKyJvdmVyd3JpdGUgYXR0YWNrcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjIzNgorIywgbm8td3JhcAorbXNnaWQgIkI8YmluZG5vdz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjQzCittc2dpZCAiIgorIlRoaXMgc2V0dGluZyAoZGlzYWJsZWQgYnkgZGVmYXVsdCkgYWRkcyBCPC1XbCwteixub3c+IHRvIEI8TERGTEFHUz4uIER1cmluZyAiCisicHJvZ3JhbSBsb2FkLCBhbGwgZHluYW1pYyBzeW1ib2xzIGFyZSByZXNvbHZlZCwgYWxsb3dpbmcgZm9yIHRoZSBlbnRpcmUgUExUICIKKyJ0byBiZSBtYXJrZWQgcmVhZC1vbmx5IChkdWUgdG8gQjxyZWxybz4gYWJvdmUpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjQ0CisjLCBuby13cmFwCittc2dpZCAiQjxwaWU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjI1NgorbXNnaWQgIiIKKyJUaGlzIHNldHRpbmcgKGRpc2FibGVkIGJ5IGRlZmF1bHQpIGFkZHMgQjwtZlBJRT4gdG8gQjxDRkxBR1M+IGFuZCAiCisiQjxDWFhGTEFHUz4sIGFuZCBCPC1mUElFIC1waWU+IHRvIEI8TERGTEFHUz4uIFBvc2l0aW9uIEluZGVwZW5kZW50ICIKKyJFeGVjdXRhYmxlIGFyZSBuZWVkZWQgdG8gdGFrZSBhZHZhbnRhZ2Ugb2YgQWRkcmVzcyBTcGFjZSBMYXlvdXQgIgorIlJhbmRvbWl6YXRpb24sIHN1cHBvcnRlZCBieSBzb21lIGtlcm5lbCB2ZXJzaW9ucy4gV2hpbGUgQVNMUiBjYW4gYWxyZWFkeSBiZSAiCisiZW5mb3JjZWQgZm9yIGRhdGEgYXJlYXMgaW4gdGhlIHN0YWNrIGFuZCBoZWFwIChicmsgYW5kIG1tYXApLCB0aGUgY29kZSBhcmVhcyAiCisibXVzdCBiZSBjb21waWxlZCBhcyBwb3NpdGlvbi1pbmRlcGVuZGVudC4gU2hhcmVkIGxpYnJhcmllcyBhbHJlYWR5IGRvIHRoaXMgKC0iCisiZlBJQyksIHNvIHRoZXkgZ2FpbiBBU0xSIGF1dG9tYXRpY2FsbHksIGJ1dCBiaW5hcnkgLnRleHQgcmVnaW9ucyBuZWVkIHRvIGJlICIKKyJidWlsZCBQSUUgdG8gZ2FpbiBBU0xSLiBXaGVuIHRoaXMgaGFwcGVucywgUk9QIChSZXR1cm4gT3JpZW50ZWQgUHJvZ3JhbW1pbmcpICIKKyJhdHRhY2tzIGFyZSBtdWNoIGhhcmRlciBzaW5jZSB0aGVyZSBhcmUgbm8gc3RhdGljIGxvY2F0aW9ucyB0byBib3VuY2Ugb2ZmIG9mICIKKyJkdXJpbmcgYSBtZW1vcnkgY29ycnVwdGlvbiBhdHRhY2suIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjI1OQorbXNnaWQgIiIKKyJUaGlzIGlzIG5vdCBjb21wYXRpYmxlIHdpdGggQjwtZlBJQz4gc28gY2FyZSBtdXN0IGJlIHRha2VuIHdoZW4gYnVpbGRpbmcgIgorInNoYXJlZCBvYmplY3RzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyNjUKK21zZ2lkICIiCisiQWRkaXRpb25hbGx5LCBzaW5jZSBQSUUgaXMgaW1wbGVtZW50ZWQgdmlhIGEgZ2VuZXJhbCByZWdpc3Rlciwgc29tZSAiCisiYXJjaGl0ZWN0dXJlcyAobW9zdCBub3RhYmx5IGkzODYpIGNhbiBzZWUgcGVyZm9ybWFuY2UgbG9zc2VzIG9mIHVwIHRvIDE1JSBpbiAiCisidmVyeSB0ZXh0LXNlZ21lbnQtaGVhdnkgYXBwbGljYXRpb24gd29ya2xvYWRzOyBtb3N0IHdvcmtsb2FkcyBzZWUgbGVzcyB0aGFuICIKKyIxJS4gQXJjaGl0ZWN0dXJlcyB3aXRoIG1vcmUgZ2VuZXJhbCByZWdpc3RlcnMgKGUuZy4gYW1kNjQpICBkbyBub3Qgc2VlIGFzICIKKyJoaWdoIGEgd29yc3QtY2FzZSBwZW5hbHR5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyNjgKKyMsIGZ1enp5CisjfCBtc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMDgtMjAxMCBSYXBoYVxcWzplXWwgSGVydHpvZyIKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAxMC0yMDExIFJhcGhhXFxbOmVdbCBIZXJ0em9nIgorbXNnc3RyICJDb3B5cmlnaHQgXFwoY28gMjAwOC0yMDEwIFJhcGhhXFxbOmVdbCBIZXJ0em9nIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyNzAKKyMsIGZ1enp5CisjfCBtc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMDEgSm9leSBIZXNzIgorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDExIEtlZXMgQ29vayIKK21zZ3N0ciAiQ29weXJpZ2h0IFxcKGNvIDIwMDEgSm9leSBIZXNzIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxCisjLCBuby13cmFwCittc2dpZCAiZHBrZy1idWlsZHBhY2thZ2UiCittc2dzdHIgImRwa2ctYnVpbGRwYWNrYWdlIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjQKK21zZ2lkICJkcGtnLWJ1aWxkcGFja2FnZSAtIGJ1aWxkIGJpbmFyeSBvciBzb3VyY2UgcGFja2FnZXMgZnJvbSBzb3VyY2VzIgorbXNnc3RyICIiCisiZHBrZy1idWlsZHBhY2thZ2UgLSBDb25zdHJ1Y2Npw7NuIGRlIHBhcXVldGVzIGJpbmFyaW9zIG8gZnVlbnRlIGEgcGFydGlyIGRlICIKKyJsYXMgZnVlbnRlcyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo4CisjLCBmdXp6eQorI3wgbXNnaWQgIkI8ZHBrZy1idWlsZHBhY2thZ2U+IFtJPG9wdGlvbnM+XSIKK21zZ2lkICJCPGRwa2ctYnVpbGRwYWNrYWdlPiBbSTxvcHRpb24+Li4uXSIKK21zZ3N0ciAiQjxkcGtnLWJ1aWxkcGFja2FnZT4gW0k8b3BjaW9uZXM+XSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxMworbXNnaWQgIiIKKyJCPGRwa2ctYnVpbGRwYWNrYWdlPiBpcyBhIHByb2dyYW0gdGhhdCBhdXRvbWF0ZXMgdGhlIHByb2Nlc3Mgb2YgYnVpbGRpbmcgYSAiCisiRGViaWFuIHBhY2thZ2UuIEl0IGNvbnNpc3RzIG9mIHRoZSBmb2xsb3dpbmcgc3RlcHM6IgorbXNnc3RyICIiCisiQjxkcGtnLWJ1aWxkcGFja2FnZT4gZXMgdW4gcHJvZ3JhbWEgcXVlIGF1dG9tYXRpemEgZWwgcHJvY2VzbyBkZSAiCisiY29uc3RydWNjacOzbiBkZSB1biBwYXF1ZXRlIGRlIERlYmlhbi4gw4lzdGUgY29uc2lzdGUgZGUgbG9zIHNpZ3VpZW50ZXMgcGFzb3M6IgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxMworIywgbm8td3JhcAorbXNnaWQgIkI8MS4+IgorbXNnc3RyICJCPDEuPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxNworbXNnaWQgIiIKKyJJdCBwcmVwYXJlcyB0aGUgYnVpbGQgZW52aXJvbm1lbnQgYnkgc2V0dGluZyB2YXJpb3VzIGVudmlyb25tZW50IHZhcmlhYmxlcyAiCisiKHNlZSBCPEVOVklST05NRU5UPikgYW5kIGNhbGxzIEI8ZHBrZy1zb3VyY2UgLS1iZWZvcmUtYnVpbGQ+ICh1bmxlc3MgQjwtVD4gIgorIm9yIEI8LS10YXJnZXQ+IGhhcyBiZWVuIHVzZWQpLiIKK21zZ3N0ciAiIgorIlByZXBhcmFjacOzbiBkZWwgZW50b3JubyBkZSBjb25zdHJ1Y2Npw7NuLCBkZWZpbmllbmRvIHZhcmlhcyB2YXJpYWJsZXMgZGUgIgorImVudG9ybm8gKGNvbnN1bHRlIEI8VkFSSUFCTEVTIERFIEVOVE9STk8+KSBwYXJhIGludm9jYXIgQjxkcGtnLXNvdXJjZSAtLSIKKyJiZWZvcmUtYnVpbGQ+IChhIG1lbm9zIHF1ZSBzZSBkZWZpbmEgQjwtVD4gbyBCPC0tdGFyZ2V0Pi4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE3CisjLCBuby13cmFwCittc2dpZCAiQjwyLj4iCittc2dzdHIgIkI8Mi4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIwCittc2dpZCAiIgorIkl0IGNoZWNrcyB0aGF0IHRoZSBidWlsZC1kZXBlbmRlbmNpZXMgYW5kIGJ1aWxkLWNvbmZsaWN0cyBhcmUgc2F0aXNmaWVkICIKKyIodW5sZXNzIEI8LWQ+IGlzIHNwZWNpZmllZCkuIgorbXNnc3RyICIiCisiVmVyaWZpY2FyIHF1ZSBsYXMgZGVwZW5kZW5jaWFzIHkgY29uZmxpY3RvcyBkZSBjb25zdHJ1Y2Npw7NuICjCq2J1aWxkLSIKKyJkZXBlbmRlbmNpZXPCuyB5IMKrYnVpbGQtY29uZmxpY3RzwrssIHJlc3BlY3RpdmFtZW50ZSkgZXN0w6luIHNhdGlzZmVjaGFzIChhICIKKyJtZW5vcyBxdWUgZXNwZWNpZmlxdWUgQjwtZD4pLiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPDMuPiIKK21zZ3N0ciAiQjwzLj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjUKK21zZ2lkICIiCisiSWYgYSBzcGVjaWZpYyB0YXJnZXQgaGFzIGJlZW4gc2VsZWN0ZWQgd2l0aCB0aGUgQjwtVD4gb3IgQjwtLXRhcmdldD4gb3B0aW9uLCAiCisiaXQgY2FsbHMgdGhhdCB0YXJnZXQgYW5kIHN0b3BzIGhlcmUuIE90aGVyd2lzZSBpdCBjYWxscyBCPGZha2Vyb290IGRlYmlhbi8iCisicnVsZXMgY2xlYW4+IHRvIGNsZWFuIHRoZSBidWlsZC10cmVlICh1bmxlc3MgQjwtbmM+IGlzIHNwZWNpZmllZCkuIgorbXNnc3RyICIiCisiU2kgc2Ugc2VsZWNjaW9uYSB1biBvYmpldGl2byBlc3BlY8OtZmljbyBjb24gQjwtVD4gbyBCPC0tdGFyZ2V0PiwgaW52b2NhIGVzZSAiCisib2JqZXRpdm8geSBzZSBkZXRpZW5lLiBEZSBubyBzZXIgYXPDrSwgaW52b2NhIEI8ZmFrZXJvb3QgZGViaWFuL3J1bGVzIGNsZWFuPiAiCisicGFyYSBsaW1waWFyIGVsIMOhcmJvbCBkZSBjb25zdHJ1Y2Npw7NuIChhIG1lbm9zIHF1ZSBlc3BlY2lmaXF1ZSBCPC1uYz4pLiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPDQuPiIKK21zZ3N0ciAiQjw0Lj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjkKK21zZ2lkICIiCisiSXQgY2FsbHMgQjxkcGtnLXNvdXJjZSAtYj4gdG8gZ2VuZXJhdGUgdGhlIHNvdXJjZSBwYWNrYWdlICh1bmxlc3MgYSBiaW5hcnktIgorIm9ubHkgYnVpbGQgaGFzIGJlZW4gcmVxdWVzdGVkIHdpdGggQjwtYj4sIEI8LUI+IG9yIEI8LUE+KS4iCittc2dzdHIgIiIKKyJJbnZvY2FjacOzbiBkZSBCPGRwa2ctc291cmNlIC1iPiBwYXJhIGdlbmVyYXIgZWwgcGFxdWV0ZSBmdWVudGUgKGEgbWVub3MgcXVlICIKKyJzZSByZXF1aWVyYSBzw7NsbyBsYSBjb25zdHJ1Y2Npw7NuIGRlbCBwYXF1ZXRlIGJpbmFyaW8gY29uIEI8LWI+LCBCPC1CPiBvIEI8LSIKKyJBPikuIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyOQorIywgbm8td3JhcAorbXNnaWQgIkI8NS4+IgorbXNnc3RyICJCPDUuPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTozNgorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiSXQgY2FsbHMgQjxkZWJpYW4vcnVsZXM+IEI8YnVpbGQ+IGZvbGxvd2VkIGJ5IEI8ZmFrZXJvb3QgZGViaWFuL3J1bGVzPiAiCisjfCAiSTxiaW5hcnktdGFyZ2V0PiAodW5sZXNzIGEgc291cmNlLW9ubHkgYnVpbGQgaGFzIGJlZW4gcmVxdWVzdGVkIHdpdGggQjwtIgorI3wgIlM+KS4gTm90ZSB0aGF0IEk8YmluYXJ5LXRhcmdldD4gaXMgZWl0aGVyIEI8YmluYXJ5PiAoZGVmYXVsdCBjYXNlLCBvciBpZiAiCisjfCAiQjwtYj4gaXMgc3BlY2lmaWVkKSAgb3IgQjxiaW5hcnktYXJjaD4gKGlmIEI8LUI+IGlzIHNwZWNpZmllZCkgb3IgIgorI3wgIkI8YmluYXJ5LWluZGVwPiAoaWYgQjwtQT4gaXMgc3BlY2lmaWVkKS4iCittc2dpZCAiIgorIkl0IGNhbGxzIEI8ZGViaWFuL3J1bGVzPiBCPGJ1aWxkPiBmb2xsb3dlZCBieSBCPGZha2Vyb290IGRlYmlhbi9ydWxlcz4gIgorIkk8YmluYXJ5LXRhcmdldD4gKHVubGVzcyBhIHNvdXJjZS1vbmx5IGJ1aWxkIGhhcyBiZWVuIHJlcXVlc3RlZCB3aXRoIEI8LVM+KS4gIgorIk5vdGUgdGhhdCBJPGJpbmFyeS10YXJnZXQ+IGlzIGVpdGhlciBCPGJpbmFyeT4gKGRlZmF1bHQgY2FzZSwgb3IgaWYgQjwtYj4gaXMgIgorInNwZWNpZmllZCkgIG9yIEI8YmluYXJ5LWFyY2g+IChpZiBCPC1CPiBpcyBzcGVjaWZpZWQpIG9yIEI8YmluYXJ5LWluZGVwPiAoaWYgIgorIkI8LUE+IGlzIHNwZWNpZmllZCkuIgorbXNnc3RyICIiCisiSW52b2NhY2nDs24gZGUgQjxkZWJpYW4vcnVsZXM+IEI8YnVpbGQ+IHNlZ3VpZG8gZGUgQjxmYWtlcm9vdCBkZWJpYW4vcnVsZXM+ICIKKyJJPGJpbmFyeS10YXJnZXQ+IChhIG1lbm9zIHF1ZSBzZSByZXF1aWVyYSBzw7NsbyBsYSBjb25zdHJ1Y2Npw7NuIGRlIGxhcyAiCisiZnVlbnRlcyBtZWRpYW50ZSBCPC1TPikuIFRlbmdhIGVuIGN1ZW50YSBxdWUgIEk8YmluYXJ5LXRhcmdldD4gZXMgbyBiaWVuICIKKyJCPGJpbmFyeT4gKHBvciBvbWlzacOzbiwgbyBzaSBzZSBlc3BlY2lmaWNhIEI8LWI+KSwgQjxiaW5hcnktYXJjaD4gKHNpIHNlICIKKyJlc3BlY2lmaWNhIEI8LUI+KSwgbyBCPGJpbmFyeS1pbmRlcD4gKHNpIHNlIGVzcGVjaWZpY2EgQjwtQT4pLiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MzYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPDYuPiIKK21zZ3N0ciAiQjw2Lj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MzkKK21zZ2lkICIiCisiSXQgY2FsbHMgQjxncGc+IHRvIHNpZ24gdGhlIEI8LmRzYz4gZmlsZSAoaWYgYW55LCB1bmxlc3MgQjwtdXM+IGlzICIKKyJzcGVjaWZpZWQpLiIKK21zZ3N0ciAiIgorIkludm9jYWNpw7NuIGRlIEI8Z3BnPiBwYXJhIGZpcm1hciBlbCBmaWNoZXJvIEI8LmRzYz4gKGRlIGV4aXN0aXIsIGEgbWVub3MgcXVlICIKKyJzZSBlc3BlY2lmaXF1ZSBCPC11cz4pLiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MzkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPDcuPiIKK21zZ3N0ciAiQjw3Lj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NDMKK21zZ2lkICIiCisiSXQgY2FsbHMgQjxkcGtnLWdlbmNoYW5nZXM+IHRvIGdlbmVyYXRlIGEgQjwuY2hhbmdlcz4gZmlsZS4gIE1hbnkgQjxkcGtnLSIKKyJidWlsZHBhY2thZ2U+IG9wdGlvbnMgYXJlIGZvcndhcmRlZCB0byBCPGRwa2ctZ2VuY2hhbmdlcz4uIgorbXNnc3RyICIiCisiSW52b2NhY2nDs24gZGUgQjxkcGtnLWdlbmNoYW5nZXM+IHBhcmEgZ2VuZXJhciBlbCBmaWNoZXJvIEI8LmNoYW5nZXM+LiBNdWNoYXMgIgorImRlIGxhcyBvcGNpb25lcyBkZSBCPGRwa2ctYnVpbGRwYWNrYWdlPiBzZSBpbnRyb2R1Y2VuIGEgQjxkcGtnLWdlbmNoYW5nZXM+LiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NDMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPDguPiIKK21zZ3N0ciAiQjw4Lj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NDYKK21zZ2lkICIiCisiSXQgY2FsbHMgQjxncGc+IHRvIHNpZ24gdGhlIEI8LmNoYW5nZXM+IGZpbGUgKHVubGVzcyBCPC11Yz4gaXMgc3BlY2lmaWVkKS4iCittc2dzdHIgIiIKKyJJbnZvY2FjacOzbiBkZSBCPGdwZz4gcGFyYSBmaXJtYXIgZWwgZmljaGVybyBCPC5jaGFuZ2VzPiAoYSBtZW5vcyBxdWUgc2UgIgorImVzcGVjaWZpcXVlIEI8LXVzPikuIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo0NgorIywgbm8td3JhcAorbXNnaWQgIkI8OS4+IgorbXNnc3RyICJCPDkuPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo0OQorbXNnaWQgIiIKKyJJZiBCPC10Yz4gaXMgc3BlY2lmaWVkLCBpdCB3aWxsIGNhbGwgQjxmYWtlcm9vdCBkZWJpYW4vcnVsZXMgY2xlYW4+IGFnYWluLiAiCisiRmluYWxseSBpdCBjYWxscyBCPGRwa2ctc291cmNlIC0tYWZ0ZXItYnVpbGQ+LiIKK21zZ3N0ciAiIgorIlNpIHNlIGVzcGVjaWZpY2EgQjwtdGM+LCBzZSBpbnZvY2Fyw6EgbnVldmFtZW50ZSBCPGZha2Vyb290IGRlYmlhbi9ydWxlcyAiCisiY2xlYW4+LiBQb3Igw7psdGltbywgaW52b2NhIEI8ZHBrZy1zb3VyY2UgLS1hZnRlci1idWlsZD4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo1MQorIywgbm8td3JhcAorbXNnaWQgIkI8LWI+IgorbXNnc3RyICJCPC1iPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo1NQorbXNnaWQgIiIKKyJTcGVjaWZpZXMgYSBiaW5hcnktb25seSBidWlsZCwgbm8gc291cmNlIGZpbGVzIGFyZSB0byBiZSBidWlsdCBhbmQvb3IgIgorImRpc3RyaWJ1dGVkLiBQYXNzZWQgdG8gQjxkcGtnLWdlbmNoYW5nZXM+LiIKK21zZ3N0ciAiIgorIkVzcGVjaWZpY2EgdW5hIGNvbnN0cnVjY2nDs24gc8OzbG8gYmluYXJpYSwgbm8gc2UgY29uc3RydWlyw6FuIGZpY2hlcm9zIGRlICIKKyJmdWVudGVzIHkvbyBkaXN0cmlidWlkYXMuIFNlIGludHJvZHVjZSBhIEI8ZHBrZy1nZW5jaGFuZ2VzPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjU1IGRwa2ctY2hlY2tidWlsZGRlcHMuMToyMworIywgbm8td3JhcAorbXNnaWQgIkI8LUI+IgorbXNnc3RyICJCPC1CPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo1OQorbXNnaWQgIiIKKyJTcGVjaWZpZXMgYSBiaW5hcnktb25seSBidWlsZCwgbGltaXRlZCB0byBhcmNoaXRlY3R1cmUgZGVwZW5kZW50IHBhY2thZ2VzLiAgIgorIlBhc3NlZCB0byBCPGRwa2ctZ2VuY2hhbmdlcz4uIgorbXNnc3RyICIiCisiRXNwZWNpZmljYSB1bmEgY29uc3RydWNjacOzbiBzw7NsbyBiaW5hcmlhLCBsaW1pdGFkYSBhIHBhcXVldGVzIGRlcGVuZGllbnRlcyAiCisiZGUgYXJxdWl0ZWN0dXJhLiBTZSBpbnRyb2R1Y2UgYSBCPGRwa2ctZ2VuY2hhbmdlcz4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo1OQorIywgbm8td3JhcAorbXNnaWQgIkI8LUE+IgorbXNnc3RyICJCPC1BPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo2MworbXNnaWQgIiIKKyJTcGVjaWZpZXMgYSBiaW5hcnktb25seSBidWlsZCwgbGltaXRlZCB0byBhcmNoaXRlY3R1cmUgaW5kZXBlbmRlbnQgcGFja2FnZXMuICIKKyJQYXNzZWQgdG8gQjxkcGtnLWdlbmNoYW5nZXM+LiIKK21zZ3N0ciAiIgorIkVzcGVjaWZpY2EgdW5hIGNvbnN0cnVjY2nDs24gc8OzbG8gYmluYXJpYSwgbGltaXRhZGEgYSBwYXF1ZXRlcyBpbmRlcGVuZGllbnRlcyAiCisiZGUgbGEgYXJxdWl0ZWN0dXJhLiBTZSBpbnRyb2R1Y2UgYSBCPGRwa2ctZ2VuY2hhbmdlcz4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo2MyBkcGtnLWdlbmNoYW5nZXMuMToyNworIywgbm8td3JhcAorbXNnaWQgIkI8LVM+IgorbXNnc3RyICJCPC1TPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo2NworbXNnaWQgIiIKKyJTcGVjaWZpZXMgYSBzb3VyY2Utb25seSBidWlsZCwgbm8gYmluYXJ5IHBhY2thZ2VzIG5lZWQgdG8gYmUgbWFkZS4gIFBhc3NlZCAiCisidG8gQjxkcGtnLWdlbmNoYW5nZXM+LiIKK21zZ3N0ciAiIgorIkVzcGVjaWZpY2EgdW5hIGNvbnN0cnVjY2nDs24gc8OzbG8gZGUgbGFzIGZ1ZW50ZXMsIG5vIHNlIGNvbnN0cnVpcsOhIG5pbmfDum4gIgorInBhcXVldGUgYmluYXJpby4gU2UgaW50cm9kdWNlIGEgQjxkcGtnLWdlbmNoYW5nZXM+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NjcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1GPiIKK21zZ3N0ciAiQjwtRj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NzEKK21zZ2lkICIiCisiU3BlY2lmaWVzIGEgbm9ybWFsIGZ1bGwgYnVpbGQsIGJpbmFyeSBhbmQgc291cmNlIHBhY2thZ2VzIHdpbGwgYmUgYnVpbHQuICAiCisiVGhpcyBpcyB0aGUgc2FtZSBhcyB0aGUgZGVmYXVsdCBjYXNlIHdoZW4gbm8gYnVpbGQgb3B0aW9uIGlzIHNwZWNpZmllZC4iCittc2dzdHIgIiIKKyJEZWZpbmUgdW5hIGNvbnN0cnVjY2nDs24gY29tcGxldGEgbm9ybWFsLCBzZSBjb25zdHJ1eWVuIGxvcyBwYXF1ZXRlcyBiaW5hcmlvcyAiCisieSBkZSBmdWVudGUuIEVzIGlkw6ludGljYSBhbCBjb21wb3J0YW1pZW50byBwcmVkZWZpbmlkbyBjdWFuZG8gbm8gc2UgZGVmaW5lICIKKyJuaW5ndW5hIG9wY2nDs24gZGUgY29uc3RydWNjacOzbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NzMKK21zZ2lkICJCPC0tdGFyZ2V0PT5JPHRhcmdldD4iCittc2dzdHIgIkI8LS10YXJnZXQ9Pkk8dGFyZ2V0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo3NQorbXNnaWQgIkI8LS10YXJnZXQgPkk8dGFyZ2V0PiIKK21zZ3N0ciAiQjwtLXRhcmdldCA+STx0YXJnZXQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjc3Cittc2dpZCAiQjwtVD5JPHRhcmdldD4iCittc2dzdHIgIkI8LVQ+STx0YXJnZXQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjgzCittc2dpZCAiIgorIkNhbGxzIEI8ZGViaWFuL3J1bGVzPiBJPHRhcmdldD4gYWZ0ZXIgaGF2aW5nIHNldHVwIHRoZSBidWlsZCBlbnZpcm9ubWVudCBhbmQgIgorInN0b3BzIHRoZSBwYWNrYWdlIGJ1aWxkIHByb2Nlc3MgaGVyZS4gSWYgQjwtLWFzLXJvb3Q+IGlzIGFsc28gZ2l2ZW4sIHRoZW4gIgorInRoZSBjb21tYW5kIGlzIGV4ZWN1dGVkIGFzIHJvb3QgKHNlZSBCPC1yPikuIE5vdGUgdGhhdCBvZmZpY2lhbCB0YXJnZXRzIHRoYXQgIgorImFyZSByZXF1aXJlZCB0byBiZSBydW4gYXMgcm9vdCBieSB0aGUgRGViaWFuIHBvbGljeSBkbyBub3QgbmVlZCB0aGlzIG9wdGlvbi4iCittc2dzdHIgIiIKKyJJbnZvY2EgQjxkZWJpYW4vcnVsZXM+IEk8dGFyZ2V0PiBkZXNwdcOpcyBkZSBkZWZpbmlyIGVsIGVudG9ybm8gZGUgIgorImNvbnN0cnVjY2nDs24sIGRldGVuaWVuZG8gZW4gZXN0ZSBwdW50byBlbCBwcm9jZXNvIGRlIGNvbnN0cnVjY2nDs24gZGVsICIKKyJwYXF1ZXRlLiBTaSBzZSBpbnRyb2R1Y2UgQjwtLWFzLXJvb3Q+LCBsYSBvcmRlbiBzZSBlamVjdXRhcsOhIGNvbW8gZWwgdXN1YXJpbyAiCisiwqtyb290wrsgKHbDqWFzZSBCPC1yPikuIFRlbmdhIGVuIGN1ZW50YSBxdWUgbG9zIG9iamV0aXZvcyBvZmljaWFsZXMgcXVlICIKKyJwcmVjaXNhbiBlamVjdXRhcnNlIGNvbW8gYWRtaW5pc3RyYWRvciBzZWfDum4gbGFzIGRpcmVjdHJpY2VzIGRlIERlYmlhbiBubyAiCisibmVjZXNpdGFuIGVzdGEgb3BjacOzbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjg0CisjLCBuby13cmFwCittc2dpZCAiQjwtLWFzLXJvb3Q+IgorbXNnc3RyICJCPC0tYXMtcm9vdD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6ODgKK21zZ2lkICIiCisiT25seSBtZWFuaW5nZnVsIHRvZ2V0aGVyIHdpdGggQjwtLXRhcmdldD4uIFJlcXVpcmVzIHRoYXQgdGhlIHRhcmdldCBiZSBydW4gIgorIndpdGggcm9vdCByaWdodHMuIgorbXNnc3RyICIiCisiU3UgdXNvIHPDs2xvIHRpZW5lIHNlbnRpZG8gY29uIEI8LS10YXJnZXQ+LiBSZXF1aWVyZSBxdWUgc2UgZWplY3V0ZSBlbCAiCisib2JqZXRpdm8gY29uIHBlcm1pc29zIGRlbCB1c3VhcmlvIMKrcm9vdMK7LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6OTAgZHBrZy1nZW5jaGFuZ2VzLjE6MzYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1zaT4iCittc2dzdHIgIkI8LXNpPiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6OTIgZHBrZy1nZW5jaGFuZ2VzLjE6NDIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1zYT4iCittc2dzdHIgIkI8LXNhPiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6OTQgZHBrZy1nZW5jaGFuZ2VzLjE6NDUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1zZD4iCittc2dzdHIgIkI8LXNkPiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6OTYgZHBrZy1nZW5jaGFuZ2VzLjE6NDkgZHBrZy1nZW5jb250cm9sLjE6MzgKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM3NworIywgbm8td3JhcAorbXNnaWQgIkI8LXY+STx2ZXJzaW9uPiIKK21zZ3N0ciAiQjwtdj5JPHZlcnNpw7NuPiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6OTggZHBrZy1nZW5jaGFuZ2VzLjE6NTQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1DPkk8Y2hhbmdlc2Rlc2NyaXB0aW9uPiIKK21zZ3N0ciAiQjwtQz5JPGRlc2NyaXBjacOzbi1kZS1jYW1iaW9zPiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTAwIGRwa2ctZ2VuY2hhbmdlcy4xOjYwCisjLCBuby13cmFwCittc2dpZCAiQjwtbT5JPG1haW50YWluZXJhZGRyZXNzPiIKK21zZ3N0ciAiQjwtbT5JPGRpcmVjY2nDs24tbWFudGVuZWRvcj4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEwMiBkcGtnLWdlbmNoYW5nZXMuMTo2NgorIywgbm8td3JhcAorbXNnaWQgIkI8LWU+STxtYWludGFpbmVyYWRkcmVzcz4iCittc2dzdHIgIkI8LWU+STxkaXJlY2Npw7NuLW1hbnRlbmVkb3I+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEwNAorbXNnaWQgIlBhc3NlZCB1bmNoYW5nZWQgdG8gQjxkcGtnLWdlbmNoYW5nZXM+LiBTZWUgaXRzIG1hbnVhbCBwYWdlLiIKK21zZ3N0ciAiIgorIlNlIGludHJvZHVjZSBzaW4gY2FtYmlvcyBhIEI8ZHBrZy1nZW5jaGFuZ2VzPi4gQ29uc3VsdGUgbGEgcMOhZ2luYSBkZSBtYW51YWwuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxMDUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1hPkk8YXJjaGl0ZWN0dXJlPiIKK21zZ3N0ciAiQjwtYT5JPGFycXVpdGVjdHVyYT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTEwCittc2dpZCAiIgorIlNwZWNpZnkgdGhlIERlYmlhbiBhcmNoaXRlY3R1cmUgd2UgYnVpbGQgZm9yLiBUaGUgYXJjaGl0ZWN0dXJlIG9mIHRoZSAiCisibWFjaGluZSB3ZSBidWlsZCBvbiBpcyBkZXRlcm1pbmVkIGF1dG9tYXRpY2FsbHksIGFuZCBpcyBhbHNvIHRoZSBkZWZhdWx0IGZvciAiCisidGhlIGhvc3QgbWFjaGluZS4iCittc2dzdHIgIiIKKyJFc3BlY2lmaWNhIGxhIGFycXVpdGVjdHVyYSBkZSBEZWJpYW4gcGFyYSBsYSBjdWFsIHNlIGNvbnN0cnV5ZSBlbCBwYXF1ZXRlLiAiCisiTGEgYXJxdWl0ZWN0dXJhIGRlIGxhIG3DoXF1aW5hIGVuIGxhIHF1ZSBzZSBjb25zdHJ1eWUgZWwgcGFxdWV0ZSBzZSBkZXRlY3RhICIKKyJhdXRvbcOhdGljYW1lbnRlLCB5IGVzIHRhbWJpw6luIGxhIGFycXVpdGVjdHVyYSBkZSBkZXN0aW5vIHBvciBvbWlzacOzbiBwYXJhIGxhICIKKyJtw6FxdWluYSBhbmZpdHJpw7NuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxMTUKK21zZ2lkICIiCisiU3BlY2lmeSB0aGUgR05VIHN5c3RlbSB0eXBlIHdlIGJ1aWxkIGZvci4gSXQgY2FuIGJlIHVzZWQgaW4gcGxhY2Ugb2YgLWEgb3IgIgorImFzIGEgY29tcGxlbWVudCB0byBvdmVycmlkZSB0aGUgZGVmYXVsdCBHTlUgc3lzdGVtIHR5cGUgb2YgdGhlIHRhcmdldCBEZWJpYW4gIgorImFyY2hpdGVjdHVyZS4iCittc2dzdHIgIiIKKyJEZWZpbmUgZWwgdGlwbyBkZSBzaXN0ZW1hIEdOVSBwYXJhIGVsIGN1YWwgc2UgY29uc3RydXllIGVsIHBhcXVldGUuIFNlIHB1ZWRlICIKKyJ1c2FyIGVuIGx1Z2FyIGRlIMKrLWHCuywgbyBjb21vIHVuIGNvbXBsZW1lbnRvIHBhcmEgaW52YWxpZGFyIGVsIHRpcG8gZGUgIgorInNpc3RlbWEgR05VIHByZWRlZmluaWRvIGRlIGxhIGFycXVpdGVjdHVyYSBEZWJpYW4gZGUgZGVzdGluby4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjExNQorIywgbm8td3JhcAorbXNnaWQgIkI8LWo+STxqb2JzPiIKK21zZ3N0ciAiQjwtaj5JPHRhcmVhcz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTI2Cittc2dpZCAiIgorIk51bWJlciBvZiBqb2JzIGFsbG93ZWQgdG8gYmUgcnVuIHNpbXVsdGFuZW91c2x5LCBlcXVpdmFsZW50IHRvIHRoZSBCPG1ha2U+IgorIigxKSAgb3B0aW9uIG9mIHRoZSBzYW1lIG5hbWUuIFdpbGwgYWRkIGl0c2VsZiB0byB0aGUgTUFLRUZMQUdTIGVudmlyb25tZW50ICIKKyJ2YXJpYWJsZSwgd2hpY2ggc2hvdWxkIGNhdXNlIGFsbCBzdWJzZXF1ZW50IG1ha2UgaW52b2NhdGlvbnMgdG8gaW5oZXJpdCB0aGUgIgorIm9wdGlvbi4gQWxzbyBhZGRzIEI8cGFyYWxsZWw9Pkk8am9icz4gdG8gdGhlIERFQl9CVUlMRF9PUFRJT05TIGVudmlyb25tZW50ICIKKyJ2YXJpYWJsZSB3aGljaCBhbGxvd3MgZGViaWFuL3J1bGVzIGZpbGVzIHRvIHVzZSB0aGlzIGluZm9ybWF0aW9uIGZvciB0aGVpciAiCisib3duIHB1cnBvc2VzLiAgVGhlIEI8cGFyYWxsZWw9Pkk8am9icz4gaW4gREVCX0JVSUxEX09QVElPTlMgZW52aXJvbm1lbnQgIgorInZhcmlhYmxlIHdpbGwgb3ZlcnJpZGUgdGhlIEI8LWo+IHZhbHVlIGlmIHRoaXMgb3B0aW9uIGlzIGdpdmVuLiIKK21zZ3N0ciAiIgorIkVsIG7Dum1lcm8gbcOheGltbyBkZSB0YXJlYXMgKMKram9ic8K7KSBlamVjdXTDoW5kb3NlIHNpbXVsdMOhbmVhbWVudGUsICIKKyJlcXVpdmFsZW50ZSBhIGxhIG9wY2nDs24gZGUgQjxtYWtlPigxKSBkZWwgbWlzbW8gbm9tYnJlLiBTZSBhw7FhZGlyw6EgYSBsYSAiCisidmFyaWFibGUgZGUgZW50b3JubyDCq01BS0VGTEFHU8K7LCBxdWUgY2F1c2EgcXVlIHRvZGFzIGxhcyBpbnZvY2FjaW9uZXMgIgorInBvc3RlcmlvcmVzIGEgwqttYWtlwrsgaGVyZWRlbiBlc3RhIG9wY2nDs24uIFRhbWJpw6luIGHDsWFkZSAiCisiQjxwYXJhbGxlbD0+STx0YXJlYXM+IGEgbGEgdmFyaWFibGUgZGUgZW50b3JubyDCq0RFQl9CVUlMRF9PUFRJT05TwrssIHF1ZSAiCisicGVybWl0ZSBxdWUgbG9zIGZpY2hlcm9zIMKrZGViaWFuL3J1bGVzwrsgdXNlbiBlc3RhIGluZm9ybWFjacOzbiBwYXJhIHN1cyAiCisicHJvcGlvcyBwcm9ww7NzaXRvcy4gQjxwYXJhbGxlbD0+STx0YXJlYXM+IGVuIGxhIHZhcmlhYmxlIGRlIGVudG9ybm8gIgorIsKrREVCX0JVSUxEX09QVElPTlPCuyBpbnZhbGlkYSBlbCB2YWxvciBCPC1qPiBlbiBjYXNvIGRlIGludHJvZHVjaXIgZXN0YSAiCisib3BjacOzbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEyNgorIywgbm8td3JhcAorbXNnaWQgIkI8LUQ+IgorbXNnc3RyICJCPC1EPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxMzAKK21zZ2lkICIiCisiQ2hlY2sgYnVpbGQgZGVwZW5kZW5jaWVzIGFuZCBjb25mbGljdHM7IGFib3J0IGlmIHVuc2F0aXNmaWVkLiBUaGlzIGlzIHRoZSAiCisiZGVmYXVsdCBiZWhhdmlvci4iCittc2dzdHIgIiIKKyJWZXJpZmljYSBsYXMgZGVwZW5kZW5jaWFzIHkgbG9zIGNvbmZsaWN0b3MgZGUgY29uc3RydWNjacOzbiwgaW50ZXJydW1waWVuZG8gIgorImVsIHByb2Nlc28gc2kgYWxndW5hIG5vIGVzdMOhIHNhdGlzZmVjaGEuIEVzdGUgZXMgZWwgY29tcG9ydGFtaWVudG8gcG9yICIKKyJvbWlzacOzbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEzMCBkcGtnLWdlbnN5bWJvbHMuMTo0MzIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1kPiIKK21zZ3N0ciAiQjwtZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTMzCittc2dpZCAiRG8gbm90IGNoZWNrIGJ1aWxkIGRlcGVuZGVuY2llcyBhbmQgY29uZmxpY3RzLiIKK21zZ3N0ciAiTm8gcmV2aXNhIGRlcGVuZGVuY2lhcyBuaSBjb25mbGljdG9zIGRlIGNvbnN0cnVjY2nDs24uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxMzMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1uYz4iCittc2dzdHIgIkI8LW5jPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxMzcKK21zZ2lkICIiCisiRG8gbm90IGNsZWFuIHRoZSBzb3VyY2UgdHJlZSAoaW1wbGllcyBCPC1iPiBpZiBub3RoaW5nIGVsc2UgaGFzIGJlZW4gIgorInNlbGVjdGVkIGFtb25nIEI8LUI+LCBCPC1BPiBvciBCPC1TPikuIgorbXNnc3RyICIiCisiTm8gbGltcGlhIGVsIMOhcmJvbCBkZSBmdWVudGVzIChpbXBsaWNhIEI8LWI+IHNpIG5vIHNlIGludHJvZHVqbyBCPC1CPiwgQjwtQT4gIgorIm8gQjwtUz4pLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTM3CisjLCBuby13cmFwCittc2dpZCAiQjwtdGM+IgorbXNnc3RyICJCPC10Yz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTQzCittc2dpZCAiIgorIkNsZWFuIHRoZSBzb3VyY2UgdHJlZSAodXNpbmcgSTxnYWluLXJvb3QtY29tbWFuZD4gQjxkZWJpYW4vcnVsZXMgY2xlYW4+KSAgIgorImFmdGVyIHRoZSBwYWNrYWdlIGhhcyBiZWVuIGJ1aWx0LiIKK21zZ3N0ciAiIgorIkxpbXBpYSBlbCDDoXJib2wgZGUgZnVlbnRlcyAodXNhbmRvIEk8b3JkZW4tcGFyYS1vYnRlbmVyLXJvb3Q+IEI8ZGViaWFuL3J1bGVzICIKKyJjbGVhbj4pIGRlc3B1w6lzIGRlIGxhIGNyZWFjacOzbiBkZWwgcGFxdWV0ZS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE0MworIywgbm8td3JhcAorbXNnaWQgIkI8LXI+STxnYWluLXJvb3QtY29tbWFuZD4iCittc2dzdHIgIkI8LXI+STxvcmRlbi1wYXJhLW9idGVuZXItcm9vdD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTY3Cittc2dpZCAiIgorIldoZW4gQjxkcGtnLWJ1aWxkcGFja2FnZT4gbmVlZHMgdG8gZXhlY3V0ZSBwYXJ0IG9mIHRoZSBidWlsZCBwcm9jZXNzIGFzICIKKyJyb290LCBpdCBwcmVmaXhlcyB0aGUgY29tbWFuZCBpdCBleGVjdXRlcyB3aXRoIEk8Z2Fpbi1yb290LWNvbW1hbmQ+IGlmIG9uZSAiCisiaGFzIGJlZW4gc3BlY2lmaWVkLiBPdGhlcndpc2UsIGlmIG5vbmUgaGFzIGJlZW4gc3BlY2lmaWVkLCBCPGZha2Vyb290PiB3aWxsICIKKyJiZSB1c2VkIGJ5IGRlZmF1bHQsIGlmIHRoZSBjb21tYW5kIGlzIHByZXNlbnQuICBJPGdhaW4tcm9vdC1jb21tYW5kPiBzaG91bGQgIgorInN0YXJ0IHdpdGggdGhlIG5hbWUgb2YgYSBwcm9ncmFtIG9uIHRoZSBCPFBBVEg+IGFuZCB3aWxsIGdldCBhcyBhcmd1bWVudHMgIgorInRoZSBuYW1lIG9mIHRoZSByZWFsIGNvbW1hbmQgdG8gcnVuIGFuZCB0aGUgYXJndW1lbnRzIGl0IHNob3VsZCB0YWtlLiAgIgorIkk8Z2Fpbi1yb290LWNvbW1hbmQ+IGNhbiBpbmNsdWRlIHBhcmFtZXRlcnMgKHRoZXkgbXVzdCBiZSBzcGFjZS1zZXBhcmF0ZWQpICIKKyJidXQgbm8gc2hlbGwgbWV0YWNoYXJhY3RlcnMuICBJPGdhaW4tcm9vdC1jb21tYW5kPiBtaWdodCB0eXBpY2FsbHkgYmUgIgorIkI8ZmFrZXJvb3Q+LCBCPHN1ZG8+LCBCPHN1cGVyPiBvciBCPHJlYWxseT4uICBCPHN1PiBpcyBub3Qgc3VpdGFibGUsIHNpbmNlICIKKyJpdCBjYW4gb25seSBpbnZva2UgdGhlIHVzZXIncyBzaGVsbCB3aXRoIEI8LWM+IGluc3RlYWQgb2YgcGFzc2luZyBhcmd1bWVudHMgIgorImluZGl2aWR1YWxseSB0byB0aGUgY29tbWFuZCB0byBiZSBydW4uIgorbXNnc3RyICIiCisiQ3VhbmRvIEI8ZHBrZy1idWlsZHBhY2thZ2U+IG5lY2VzaXRlIGVqZWN1dGFyIHBhcnRlIGRlbCBwcm9jZXNvIGRlICIKKyJjb25zdHJ1Y2Npw7NuIGNvbW8gwqtyb290wrssIGHDsWFkZSBlbCBwcmVmaWpvIEk8b3JkZW4tcGFyYS1vYnRlbmVyLXJvb3Q+IGEgbGEgIgorIm9yZGVuIGEgZWplY3V0YXIgZW4gY2FzbyBkZSBoYWJlcnNlIGVzcGVjaWZpY2Fkby4gTGEgSTxvcmRlbi1wYXJhLW9idGVuZXItIgorInJvb3Q+IGRlYmUgc2VyIGVsIG5vbWJyZSBkZSB1biBwcm9ncmFtYSBxdWUgZXN0w6kgZGVudHJvIGRlbCBCPFBBVEg+LCB5ICIKKyJ0b21hcsOhIGNvbW8gYXJndW1lbnRvcyBlbCBub21icmUgZGVsIHByb2Nlc28gYSBlamVjdXRhciwgYXPDrSBjb21vIGxvcyAiCisiYXJndW1lbnRvcyBxdWUgw6lzdGUgdG9tYS4gTGEgSTxvcmRlbi1wYXJhLW9idGVuZXItcm9vdD4gcHVlZGUgaW5jbHVpciAiCisicGFyw6FtZXRyb3MsIHBlcm8gbm8gY2FyYWN0ZXJlcyBlc3BlY2lhbGVzIGRlbCBpbnTDqXJwcmV0ZSBkZSDDs3JkZW5lcy4gTGEgIgorIkk8b3JkZW4tcGFyYS1vYnRlbmVyLXJvb3Q+IHB1ZWRlIHNlciBCPGZha2Vyb290PiwgQjxzdWRvPiwgQjxzdXBlcj4gbyAiCisiQjxyZWFsbHk+LiBCPHN1PiBubyBlcyBhZGVjdWFkbyB5YSBxdWUgc8OzbG8gcHVlZGUgaW52b2NhciBlbCBpbnTDqXJwcmV0ZSBkZSAiCisiw7NyZGVuZXMgZGVsIHVzdWFyaW8gY29uIEI8LWM+LCBlbiBsdWdhciBkZSBpbnRyb2R1Y2lyIGxvcyBhcmd1bWVudG9zICIKKyJpbmRpdmlkdWFsbWVudGUgYSBsYSBvcmRlbiBhIGVqZWN1dGFyLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTY3CisjLCBuby13cmFwCittc2dpZCAiQjwtUj5JPHJ1bGVzLWZpbGU+IgorbXNnc3RyICJCPC1SPkk8ZmljaGVyby1yZWdsYXM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE3OAorbXNnaWQgIiIKKyJCdWlsZGluZyBhIERlYmlhbiBwYWNrYWdlIHVzdWFsbHkgaW52b2x2ZXMgaW52b2tpbmcgQjxkZWJpYW4vcnVsZXM+IGFzIGEgIgorImNvbW1hbmQgd2l0aCBzZXZlcmFsIHN0YW5kYXJkIHBhcmFtZXRlcnMuIFdpdGggdGhpcyBvcHRpb24gaXQncyBwb3NzaWJsZSB0byAiCisidXNlIGFub3RoZXIgcHJvZ3JhbSBpbnZvY2F0aW9uIHRvIGJ1aWxkIHRoZSBwYWNrYWdlIChpdCBjYW4gaW5jbHVkZSBzcGFjZSAiCisic2VwYXJhdGVkIHBhcmFtZXRlcnMpLiAgQWx0ZXJuYXRpdmVseSBpdCBjYW4gYmUgdXNlZCB0byBleGVjdXRlIHRoZSBzdGFuZGFyZCAiCisicnVsZXMgZmlsZSB3aXRoIGFub3RoZXIgbWFrZSBwcm9ncmFtIChmb3IgZXhhbXBsZSBieSB1c2luZyBCPC91c3IvbG9jYWwvYmluLyIKKyJtYWtlIC1mIGRlYmlhbi9ydWxlcz4gYXMgSTxydWxlcy1maWxlPikuIgorbXNnc3RyICIiCisiSGFiaXR1YWxtZW50ZSwgY29uc3RydWlyIHVuIHBhcXVldGUgZGUgRGViaWFuIGluY2x1eWUgaW52b2NhciBCPGRlYmlhbi8iCisicnVsZXM+IGNvbW8gdW5hIG9yZGVuIGNvbiB2YXJpb3MgcGFyw6FtZXRyb3MgZXN0w6FuZGFyLiBFc3RhIG9wY2nDs24gcG9zaWJpbGl0YSAiCisiaW52b2NhciBvdHJvIHByb2dyYW1hIHBhcmEgY29uc3RydWlyIGVsIHBhcXVldGUgKHB1ZWRlIGluY2x1aXIgcGFyw6FtZXRyb3MgIgorInNlcGFyYWRvcyBwb3IgZXNwYWNpb3MpLiBQb3Igb3RyYSBwYXJ0ZSwgc2UgcHVlZGUgdXNhciBwYXJhIGVqZWN1dGFyIGVsICIKKyJmaWNoZXJvIGRlIHJlZ2xhcyAowqtydWxlc8K7KSBlc3TDoW5kYXIgY29uIG90cm8gcHJvZ3JhbWEgZGUgbWFrZSAocG9yIGVqZW1wbG8sICIKKyJ1c2FuZG8gQjwvdXNyL2xvY2FsL2Jpbi9tYWtlIC1mIGRlYmlhbi9ydWxlcz4gY29tbyBJPGZpY2hlcm8tcmVnbGFzPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE3OAorIywgbm8td3JhcAorbXNnaWQgIkI8LXA+STxzaWduLWNvbW1hbmQ+IgorbXNnc3RyICJCPC1wPkk8b3JkZW4tcGFyYS1maXJtYXI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE4OAorbXNnaWQgIiIKKyJXaGVuIEI8ZHBrZy1idWlsZHBhY2thZ2U+IG5lZWRzIHRvIGV4ZWN1dGUgR1BHIG9yIFBHUCB0byBzaWduIGEgc291cmNlICIKKyJjb250cm9sIChCPC5kc2M+KSBmaWxlIG9yIGEgQjwuY2hhbmdlcz4gZmlsZSBpdCB3aWxsIHJ1biBJPHNpZ24tY29tbWFuZD4gIgorIihzZWFyY2hpbmcgdGhlIEI8UEFUSD4gaWYgbmVjZXNzYXJ5KSBpbnN0ZWFkIG9mIEI8Z3BnPi4gSTxzaWduLWNvbW1hbmQ+IHdpbGwgIgorImdldCBhbGwgdGhlIGFyZ3VtZW50cyB0aGF0IEI8cGdwPiB3b3VsZCBoYXZlIGdvdHRlbi4gSWYgSTxzaWduLWNvbW1hbmQ+ICIKKyJ0YWtlcyBpdHMgYXJndW1lbnRzIGluIEdQRyByYXRoZXIgdGhhbiBQR1Agc3R5bGUsIHlvdSBzaG91bGQgZ2l2ZSB0aGUgQjwtIgorInNncGc+IG9wdGlvbi4gSTxzaWduLWNvbW1hbmQ+IHNob3VsZCBub3QgY29udGFpbiBzcGFjZXMgb3IgYW55IG90aGVyIHNoZWxsICIKKyJtZXRhY2hhcmFjdGVycy4iCittc2dzdHIgIiIKKyJDdWFuZG8gQjxkcGtnLWJ1aWxkcGFja2FnZT4gbmVjZXNpdGEgZWplY3V0YXIgR1BHIG8gUEdQIHBhcmEgZmlybWFyIGVsICIKKyJmaWNoZXJvIGZ1ZW50ZSBkZSBjb250cm9sIChCPC5kc2M+KSBvIHVuIGZpY2hlcm8gQjwuY2hhbmdlcz4sIGVqZWN1dGFyw6EgIgorIkk8b3JkZW4tcGFyYS1maXJtYXI+IChidXNjYW5kbyBlbiBCPFBBVEg+IHNpIGVzIG5lY2VzYXJpbykgZW4gbHVnYXIgZGUgIgorIkI8Z3BnPi4gSTxvcmRlbi1wYXJhLWZpcm1hcj4gcmVjaWJpcsOhIHRvZG9zIGxvcyBhcmd1bWVudG9zIHF1ZSBvYnRlbmRyw61hICIKKyJCPHBncD4uIERlYmUgdXNhciBsYSBvcGNpw7NuIEI8LXNncGc+IHNpIGxhIEk8b3JkZW4tcGFyYS1maXJtYXI+IHRvbWEgbG9zICIKKyJhcmd1bWVudG9zIGVuIGZvcm1hdG8gR1BHIGVuIHZleiBkZSBQR1AuIExhIEk8b3JkZW4tcGFyYS1maXJtYXI+IG5vIGRlYmUgIgorImNvbnRlbmVyIGVzcGFjaW9zIG5pIHRhbXBvY28gY2FyYWN0ZXJlcyBlc3BlY2lhbGVzIGRlbCBpbnTDqXJwcmV0ZSBkZSDDs3JkZW5lcy4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE4OAorIywgbm8td3JhcAorbXNnaWQgIkI8LWs+STxrZXktaWQ+IgorbXNnc3RyICJCPC1rPkk8bGxhdmUtaWQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE5MQorbXNnaWQgIlNwZWNpZnkgYSBrZXktSUQgdG8gdXNlIHdoZW4gc2lnbmluZyBwYWNrYWdlcy4iCittc2dzdHIgIiIKKyJFc3BlY2lmaWNhIHVuYSBsbGF2ZSBkZSBpZGVudGlmaWNhY2nDs24gYSB1c2FyIHBhcmEgZmlybWFyIGxvcyBwYXF1ZXRlcy4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE5MQorIywgbm8td3JhcAorbXNnaWQgIkI8LXVzPiIKK21zZ3N0ciAiQjwtdXM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE5NAorbXNnaWQgIkRvIG5vdCBzaWduIHRoZSBzb3VyY2UgcGFja2FnZS4iCittc2dzdHIgIk5vIGZpcm1hIGVsIHBhcXVldGUgZnVlbnRlLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTk0CisjLCBuby13cmFwCittc2dpZCAiQjwtdWM+IgorbXNnc3RyICJCPC11Yz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTk3Cittc2dpZCAiRG8gbm90IHNpZ24gdGhlIEI8LmNoYW5nZXM+IGZpbGUuIgorbXNnc3RyICJObyBmaXJtYSBlbCBmaWNoZXJvIEI8LmNoYW5nZXM+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxOTkKK21zZ2lkICJCPC1pPltJPHJlZ2V4cD5dIgorbXNnc3RyICJCPC1pPltJPGV4cC1yZWc+XSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMDEKK21zZ2lkICJCPC1JPkk8W3BhdHRlcm5dPiIKK21zZ3N0ciAiQjwtST5JPFtwYXRyw7NuXT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjAzCittc2dpZCAiQjwtcz5bQjxuc0FrdXJLVVI+XSIKK21zZ3N0ciAiQjwtcz5bQjxuc0FrdXJLVVI+XSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMDUKK21zZ2lkICJCPC16PiwgQjwtWj4iCittc2dzdHIgIkI8LXo+LCBCPC1aPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMDgKK21zZ2lkICJQYXNzZWQgdW5jaGFuZ2VkIHRvIEI8ZHBrZy1zb3VyY2U+LiBTZWUgaXRzIG1hbnVhbCBwYWdlLiIKK21zZ3N0ciAiIgorIlNlIGludHJvZHVjZSBzaW4gY2FtYmlvcyBhIEI8ZHBrZy1zb3VyY2U+LiBDb25zdWx0ZSBsYSBww6FnaW5hIGRlIG1hbnVhbC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIwOQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1zb3VyY2Utb3B0aW9uPT5JPG9wdD4iCittc2dzdHIgIkI8LS1zb3VyY2Utb3B0aW9uPT5JPG9wY2nDs24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIxMgorbXNnaWQgIlBhc3Mgb3B0aW9uIEk8b3B0PiB0byBCPGRwa2ctc291cmNlPi4iCittc2dzdHIgIkludHJvZHVjZSBsYSBvcGNpw7NuIEk8b3BjacOzbj4gYSBCPGRwa2ctc291cmNlPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIxMgorIywgbm8td3JhcAorbXNnaWQgIkI8LS1jaGFuZ2VzLW9wdGlvbj0+STxvcHQ+IgorbXNnc3RyICJCPC0tY2hhbmdlcy1vcHRpb249Pkk8b3BjacOzbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjE1Cittc2dpZCAiUGFzcyBvcHRpb24gSTxvcHQ+IHRvIEI8ZHBrZy1nZW5jaGFuZ2VzPi4iCittc2dzdHIgIkludHJvZHVjZSBsYSBvcGNpw7NuIEk8b3BjacOzbj4gYSBCPGRwa2ctZ2VuY2hhbmdlcz4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIxOQorbXNnaWQgIkI8LS1hZG1pbmRpciA+STxkaXI+IgorbXNnc3RyICJCPC0tYWRtaW5kaXI+IEk8ZGlyZWN0b3Jpbz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjIyIGRwa2ctY2hlY2tidWlsZGRlcHMuMToyMyBkcGtnLXF1ZXJ5LjE6MTIyCisjOiBkcGtnLXNobGliZGVwcy4xOjIxNSBkcGtnLXRyaWdnZXIuMTo0MworbXNnaWQgIiIKKyJDaGFuZ2UgdGhlIGxvY2F0aW9uIG9mIHRoZSBCPGRwa2c+IGRhdGFiYXNlLiBUaGUgZGVmYXVsdCBsb2NhdGlvbiBpcyBJPC92YXIvIgorImxpYi9kcGtnPi4iCittc2dzdHIgIiIKKyJDYW1iaWEgZWwgZGlyZWN0b3JpbyBjb24gbGEgYmFzZSBkZSBkYXRvcyBkZSBCPGRwa2c+LiBQb3Igb21pc2nDs24gZXMgSTwvdmFyLyIKKyJsaWIvZHBrZz4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMjMgZHBrZy1jaGVja2J1aWxkZGVwcy4xOjMzIGRwa2ctZGlzdGFkZGZpbGUuMTozMgorIzogZHBrZy1kZWIuMToxNzIgZHBrZy1nZW5jaGFuZ2VzLjE6MTMxIGRwa2ctZ2VuY29udHJvbC4xOjEyMQorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDQzIGRwa2ctbmFtZS4xOjU4IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTozMworIzogZHBrZy1xdWVyeS4xOjExMCBkcGtnLXNjYW5wYWNrYWdlcy4xOjk2IGRwa2ctc2hsaWJkZXBzLjE6MjE1CisjOiBkcGtnLXNvdXJjZS4xOjk2IGRwa2ctc3BsaXQuMToxMjYgZHBrZy10cmlnZ2VyLjE6MzEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1oPiwgQjwtLWhlbHA+IgorbXNnc3RyICJCPC1oPiwgQjwtLWhlbHA+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIzNAorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiRXZlbiBpZiBCPGRwa2ctYnVpbGRwYWNrYWdlPiBleHBvcnQgc29tZSB2YXJpYWJsZXMsIEI8ZGViaWFuL3J1bGVzPiAiCisjfCAic2hvdWxkIG5vdCByZWx5IG9uIHRoZWlyIHByZXNlbmNlIGFuZCBzaG91bGQgaW5zdGVhZCB1c2UgdGhlIHJlc3BlY3RpdmUgIgorI3wgImludGVyZmFjZSB0byByZXRyaWV2ZSB0aGUgbmVlZGVkIHZhbHVlcy4iCittc2dpZCAiIgorIkV2ZW4gaWYgQjxkcGtnLWJ1aWxkcGFja2FnZT4gZXhwb3J0cyBzb21lIHZhcmlhYmxlcywgQjxkZWJpYW4vcnVsZXM+IHNob3VsZCAiCisibm90IHJlbHkgb24gdGhlaXIgcHJlc2VuY2UgYW5kIHNob3VsZCBpbnN0ZWFkIHVzZSB0aGUgcmVzcGVjdGl2ZSBpbnRlcmZhY2UgIgorInRvIHJldHJpZXZlIHRoZSBuZWVkZWQgdmFsdWVzLiIKK21zZ3N0ciAiIgorIkHDum4gZW4gZWwgY2FzbyBkZSBxdWUgQjxkcGtnLWJ1aWxkcGFja2FnZT4gZXhwb3J0ZSBhbGd1bmFzIHZhcmlhYmxlcywgIgorIkI8ZGViaWFuL3J1bGVzPiBubyBkZWJlcsOtYSBkZXBlbmRlciBkZSBzdSBwcmVzZW5jaWEsIHNpbm8gcXVlIGRlYmVyw61hIHVzYXIgIgorImxhIGludGVyZmF6IGFkZWN1YWRhIHBhcmEgb2J0ZW5lciBsb3MgdmFsb3JlcyBuZWNlc2FyaW9zLiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjM0CisjLCBuby13cmFwCittc2dpZCAiVmFyaWFibGVzIHNldCBieSBkcGtnLWFyY2hpdGVjdHVyZSIKK21zZ3N0ciAiVmFyaWFibGVzIGRlZmluaWRhcyBwb3IgZHBrZy1hcmNoaXRlY3R1cmUiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjM4Cittc2dpZCAiIgorIkI8ZHBrZy1hcmNoaXRlY3R1cmU+IGlzIGNhbGxlZCB3aXRoIHRoZSBCPC1hPiBhbmQgQjwtdD4gcGFyYW1ldGVycyAiCisiZm9yd2FyZGVkLiBBbnkgdmFyaWFibGUgdGhhdCBpcyBvdXRwdXQgYnkgaXRzIEI8LXM+IG9wdGlvbiBpcyBpbnRlZ3JhdGVkIGluICIKKyJ0aGUgYnVpbGQgZW52aXJvbm1lbnQuIgorbXNnc3RyICIiCisiQjxkcGtnLWFyY2hpdGVjdHVyZT4gc2UgaW52b2NhIGNvbiBsb3MgcGFyw6FtZXRyb3MgQjwtYT4geSBCPC10Pi4gVG9kYSAiCisidmFyaWFibGUgcXVlIG9mcmVjZSB1bmEgc2FsaWRhIG1lZGlhbnRlIHN1IG9wY2nDs24gQjwtcz4gc2UgaW50ZWdyYSBlbiBlbCAiCisiZW50b3JubyBkZSBjb25zdHJ1Y2Npw7NuLiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjM4CisjLCBuby13cmFwCittc2dpZCAiQ29tcGlsZXIgZmxhZ3MgYXJlIG5vIGxvbmdlciBleHBvcnRlZCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjI0MworbXNnaWQgIiIKKyJCZXR3ZWVuIHZlcnNpb25zIDEuMTQuMTcgYW5kIDEuMTYuMSwgQjxkcGtnLWJ1aWxkcGFja2FnZT4gZXhwb3J0ZWQgY29tcGlsZXIgIgorImZsYWdzIChCPENGTEFHUz4sIEI8Q1hYRkxBR1M+LCBCPEZGTEFHUz4sIEI8Q1BQRkxBR1M+IGFuZCBCPExERkxBR1M+KSB3aXRoICIKKyJ2YWx1ZXMgYXMgcmV0dXJuZWQgYnkgQjxkcGtnLWJ1aWxkZmxhZ3M+LiBUaGlzIGlzIG5vIGxvbmdlciB0aGUgY2FzZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyNDgKK21zZ2lkICIiCisiSXQgc2hvdWxkIGJlIHBvc3NpYmxlIHRvIHNwZWNpZnkgc3BhY2VzIGFuZCBzaGVsbCBtZXRhY2hhcmFjdGVycyBpbiBhbmQgIgorImluaXRpYWwgYXJndW1lbnRzIGZvciBJPGdhaW4tcm9vdC1jb21tYW5kPiBhbmQgSTxzaWduLWNvbW1hbmQ+LiIKK21zZ3N0ciAiIgorIkRlYmVyw61hIHNlciBwb3NpYmxlIGVzcGVjaWZpY2FyIGVzcGFjaW9zIHkgY2FyYWN0ZXJlcyBlc3BlY2lhbGVzIGRlbCAiCisiaW50w6lycHJldGUgZGUgw7NyZGVuZXMgZW4gbG9zIGFyZ3VtZW50b3MgaW5pY2lhbGVzIGRlIGxhIEk8b3JkZW4tcGFyYS1vYnRlbmVyLSIKKyJyb290PiB5IGxhIEk8b3JkZW4tcGFyYS1maXJtYXI+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyNTYKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIkI8ZHBrZy1zb3VyY2U+KDEpLCBCPGRwa2ctYXJjaGl0ZWN0dXJlPigxKSwgQjxkcGtnLWdlbmNoYW5nZXM+KDEpLCAiCisjfCAiQjxmYWtlcm9vdD4oMSksIEI8Z3BnPigxKS4iCittc2dpZCAiIgorIkI8ZHBrZy1zb3VyY2U+KDEpLCBCPGRwa2ctYXJjaGl0ZWN0dXJlPigxKSwgQjxkcGtnLWJ1aWxkZmxhZ3M+KDEpLCBCPGRwa2ctIgorImdlbmNoYW5nZXM+KDEpLCBCPGZha2Vyb290PigxKSwgQjxncGc+KDEpLiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1zb3VyY2U+KDEpLCBCPGRwa2ctYXJjaGl0ZWN0dXJlPigxKSwgQjxkcGtnLWdlbmNoYW5nZXM+KDEpLCAiCisiQjxmYWtlcm9vdD4oMSksIEI8Z3BnPigxKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjY1Cittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMDgtMjAxMCBSYXBoYVxcWzplXWwgSGVydHpvZyIKK21zZ3N0ciAiQ29weXJpZ2h0IFxcKGNvIDIwMDgtMjAxMCBSYXBoYVxcWzplXWwgSGVydHpvZyIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctY2hlY2tidWlsZGRlcHMuMToxCisjLCBuby13cmFwCittc2dpZCAiZHBrZy1jaGVja2J1aWxkZGVwcyIKK21zZ3N0ciAiZHBrZy1jaGVja2J1aWxkZGVwcyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1jaGVja2J1aWxkZGVwcy4xOjQKK21zZ2lkICJkcGtnLWNoZWNrYnVpbGRkZXBzIC0gY2hlY2sgYnVpbGQgZGVwZW5kZW5jaWVzIGFuZCBjb25mbGljdHMiCittc2dzdHIgIiIKKyJkcGtnLWNoZWNrYnVpbGRkZXBzIC0gQ29tcHJ1ZWJhIGxhcyBkZXBlbmRlbmNpYXMgeSBjb25mbGljdG9zIGRlIGNvbXBpbGFjacOzbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1jaGVja2J1aWxkZGVwcy4xOjkKKyMsIGZ1enp5CisjfCBtc2dpZCAiQjxkcGtnLWNoZWNrYnVpbGRkZXBzPiBbSTxvcHRpb25zPl0gW0k8Y29udHJvbC1maWxlPl0iCittc2dpZCAiQjxkcGtnLWNoZWNrYnVpbGRkZXBzPiBbSTxvcHRpb24+Li4uXSBbSTxjb250cm9sLWZpbGU+XSIKK21zZ3N0ciAiQjxkcGtnLWNoZWNrYnVpbGRkZXBzPiBbSTxvcGNpb25lcz5dIFtJPGZpY2hlcm8tY29udHJvbD5dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6MTQKK21zZ2lkICIiCisiVGhpcyBwcm9ncmFtIGNoZWNrcyB0aGUgaW5zdGFsbGVkIHBhY2thZ2VzIGluIHRoZSBzeXN0ZW0gYWdhaW5zdCB0aGUgYnVpbGQgIgorImRlcGVuZGVuY2llcyBhbmQgYnVpbGQgY29uZmxpY3RzIGxpc3RlZCBpbiB0aGUgY29udHJvbCBmaWxlLiBJZiBhbnkgYXJlIG5vdCAiCisibWV0LCBpdCBkaXNwbGF5cyB0aGVtIGFuZCBleGl0cyB3aXRoIGEgbm9uemVybyByZXR1cm4gY29kZS4iCittc2dzdHIgIiIKKyJFc3RlIHByb2dyYW1hIGNvbXBydWViYSBxdWUgbG9zIHBhcXVldGVzIGluc3RhbGFkb3MgZW4gZWwgc2lzdGVtYSBzYXRpc2ZhY2VuICIKKyJsYXMgZGVwZW5kZW5jaWFzIHkgY29uZmxpY3RvcyBkZSBjb21waWxhY2nDs24gbGlzdGFkb3MgZW4gZWwgZmljaGVybyBkZSAiCisiY29udHJvbCBkZWwgcGFxdWV0ZS4gU2kgYWxndW5hIGRlIGVzdGFzIGNvbmRpY2lvbmVzIG5vIHNlIGN1bXBsZSBhdmlzYSB5ICIKKyJmaW5hbGl6YSBlbCBwcm9jZXNvIGRldm9sdmllbmRvIHVuIGPDs2RpZ28gZGUgZXJyb3IgZGlzdGludG8gZGUgY2Vyby4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctY2hlY2tidWlsZGRlcHMuMToxNworIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiQnkgZGVmYXVsdCwgSTxkZWJpYW4vY29udHJvbD4gaXMgcmVhZCwgYnV0IGFuIGFsdGVybmF0ZSBjb250cm9sIGZpbGVuYW1lICIKKyN8ICJtYXkgYmUgc3BlY2lmaWVkIG9uIHRoZSBjb21tYW5kIGxpbmUuIgorbXNnaWQgIiIKKyJCeSBkZWZhdWx0LCBCPGRlYmlhbi9jb250cm9sPiBpcyByZWFkLCBidXQgYW4gYWx0ZXJuYXRlIGNvbnRyb2wgZmlsZW5hbWUgbWF5ICIKKyJiZSBzcGVjaWZpZWQgb24gdGhlIGNvbW1hbmQgbGluZS4iCittc2dzdHIgIiIKKyJQb3Igb21pc2nDs24gc2UgbGVlIEI8ZGViaWFuL2NvbnRyb2w+LCBwZXJvIHNlIHB1ZWRlIGVzcGVjaWZpY2FyIHVuIGZpY2hlcm8gIgorImRlIGNvbnRyb2wgYWx0ZXJuYXRpdm8gZW4gbGEgbMOtbmVhIGRlIMOzcmRlbmVzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1jaGVja2J1aWxkZGVwcy4xOjI3Cittc2dpZCAiIgorIklnbm9yZSBJPEJ1aWxkLURlcGVuZHMtSW5kZXA+IGxpbmVzLiBVc2Ugd2hlbiBubyBhcmNoLWluZGVwIHBhY2thZ2VzIHdpbGwgYmUgIgorImJ1aWx0LiIKK21zZ3N0ciAiIgorIklnbm9yYSBsYXMgbMOtbmVhcyBJPEJ1aWxkLURlcGVuZHMtSW5kZXA+LiBTZSBkZWJlIHVzYXIgY3VhbmRvIHNlIGNvbnN0cnV5ZW4gIgorInBhcXVldGVzIGluZGVwZW5kaWVudGVzIGRlIGxhIGFycXVpdGVjdHVyYS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6MjcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1kID5JPGJ1aWxkLWRlcGVuZHMtc3RyaW5nPiIKK21zZ3N0ciAiQjwtZCA+STxjYWRlbmEtZGVwZW5kZW5jaWFzLWNvbXBpbGFjacOzbj4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6MjkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1jID5JPGJ1aWxkLWNvbmZsaWN0cy1zdHJpbmc+IgorbXNnc3RyICJCPC1jID5JPGNhZGVuYS1jb25mbGljdG8tY29tcGlsYWNpw7NuPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1jaGVja2J1aWxkZGVwcy4xOjMzCittc2dpZCAiIgorIlVzZSB0aGUgZ2l2ZW4gYnVpbGQgZGVwZW5kZW5jaWVzL2NvbmZsaWN0cyBpbnN0ZWFkIG9mIHRob3NlIGNvbnRhaW5lZCBpbiB0aGUgIgorIkk8ZGViaWFuL2NvbnRyb2w+IGZpbGUuIgorbXNnc3RyICIiCisiVXNhIGxhcyBkZXBlbmRlbmNpYXMgeSBjb25mbGljdG9zIGRlIGNvbXBpbGFjacOzbiBkYWRvcyBlbiBsdWdhciBkZSBhcXVlbGxvcyAiCisibGlzdGFkb3MgZW4gZWwgZmljaGVybyBJPGRlYmlhbi9jb250cm9sPi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctY2hlY2tidWlsZGRlcHMuMTo0MgorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDAxIEpvZXkgSGVzcyIKK21zZ3N0ciAiQ29weXJpZ2h0IFxcKGNvIDIwMDEgSm9leSBIZXNzIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1kaXN0YWRkZmlsZS4xOjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLWRpc3RhZGRmaWxlIgorbXNnc3RyICJkcGtnLWRpc3RhZGRmaWxlIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpc3RhZGRmaWxlLjE6NAorbXNnaWQgImRwa2ctZGlzdGFkZGZpbGUgLSBhZGQgZW50cmllcyB0byBkZWJpYW4vZmlsZXMiCittc2dzdHIgImRwa2ctZGlzdGFkZGZpbGUgLSBBw7FhZGUgZW50cmFkYXMgYSDCq2RlYmlhbi9maWxlc8K7IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpc3RhZGRmaWxlLjE6OAorIywgZnV6enkKKyN8IG1zZ2lkICJCPGRwa2ctZGlzdGFkZGZpbGU+IFtJPG9wdGlvbnM+XUk8IGZpbGVuYW1lIHNlY3Rpb24gcHJpb3JpdHk+IgorbXNnaWQgIkI8ZHBrZy1kaXN0YWRkZmlsZT4gW0k8b3B0aW9uPi4uLl1JPCBmaWxlbmFtZSBzZWN0aW9uIHByaW9yaXR5PiIKK21zZ3N0ciAiQjxkcGtnLWRpc3RhZGRmaWxlPiBbSTxvcGNpb25lcz5dSTwgZmljaGVybyBzZWNjacOzbiBwcmlvcmlkYWQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpc3RhZGRmaWxlLjE6MTMKK21zZ2lkICJCPGRwa2ctZGlzdGFkZGZpbGU+IGFkZHMgYW4gZW50cnkgZm9yIGEgbmFtZWQgZmlsZSB0byBCPGRlYmlhbi9maWxlcz4uIgorbXNnc3RyICIiCisiQjxkcGtnLWRpc3RhZGRmaWxlPiBhw7FhZGUgdW5hIGVudHJhZGEgcGFyYSB1biBmaWNoZXJvIGRhZG8gYSBCPGRlYmlhbi9maWxlcz4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpc3RhZGRmaWxlLjE6MTgKK21zZ2lkICIiCisiSXQgdGFrZXMgdGhyZWUgbm9uLW9wdGlvbiBhcmd1bWVudHMsIHRoZSBmaWxlbmFtZSBhbmQgdGhlIHNlY3Rpb24gYW5kICIKKyJwcmlvcml0eSBmb3IgdGhlIEI8LmNoYW5nZXM+IGZpbGUuIgorbXNnc3RyICIiCisiVG9tYSB0cmVzIGFyZ3VtZW50b3Mgbm8gb3BjaW9uYWxlcywgZWwgbm9tYnJlIGRlIGZpY2hlcm8sIHNlY2Npw7NuIHkgIgorInByaW9yaWRhZCBwYXJhIGVsIGZpY2hlcm8gQjwuY2hhbmdlcz4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpc3RhZGRmaWxlLjE6MjYKK21zZ2lkICIiCisiVGhlIGZpbGVuYW1lIHNob3VsZCBiZSBzcGVjaWZpZWQgcmVsYXRpdmUgdG8gdGhlIGRpcmVjdG9yeSB3aGVyZSBCPGRwa2ctIgorImdlbmNoYW5nZXM+IHdpbGwgZXhwZWN0IHRvIGZpbmQgdGhlIGZpbGVzLCB1c3VhbGx5IEI8Li4+LCByYXRoZXIgdGhhbiBiZWluZyAiCisiYSBwYXRobmFtZSByZWxhdGl2ZSB0byB0aGUgY3VycmVudCBkaXJlY3Rvcnkgd2hlbiBCPGRwa2ctZGlzdGFkZGZpbGU+IGlzIHJ1bi4iCittc2dzdHIgIiIKKyJFbCBub21icmUgZGVsIGZpY2hlcm8gZGViZSBzZXIgcmVsYXRpdm8gYWwgZGlyZWN0b3JpbyBkb25kZSBCPGRwa2ctIgorImdlbmNoYW5nZXM+IGVzcGVyYSBlbmNvbnRyYXIgbG9zIGZpY2hlcm9zLCBoYWJpdHVhbG1lbnRlIEI8Li4+LCBlbiBsdWdhciBkZSAiCisic2VyIHJlbGF0aXZvIGFsIGRpcmVjdG9yaW8gZG9uZGUgc2UgZWplY3V0YSBCPGRwa2ctZGlzdGFkZGZpbGU+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGlzdGFkZGZpbGUuMToyOCBkcGtnLWdlbmNoYW5nZXMuMToxMDMgZHBrZy1nZW5jb250cm9sLjE6NjkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1mPkk8ZmlsZXNsaXN0ZmlsZT4iCittc2dzdHIgIkI8LWY+STxmaWNoZXJvLWxpc3RhLWZpY2hlcm9zPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXN0YWRkZmlsZS4xOjMyIGRwa2ctZ2VuY29udHJvbC4xOjczCittc2dpZCAiIgorIlJlYWQgb3Igd3JpdGUgdGhlIGxpc3Qgb2YgZmlsZXMgdG8gYmUgdXBsb2FkZWQgaGVyZSwgcmF0aGVyIHRoYW4gdXNpbmcgIgorIkI8ZGViaWFuL2ZpbGVzPi4iCittc2dzdHIgIiIKKyJMZWUgbyBlc2NyaWJlIGxhIGxpc3RhIGRlIGZpY2hlcm9zIGEgc3ViaXIgZGVzZGUgZWwgZmljaGVybyBlc3BlY2lmaWNhZG8sIGVuICIKKyJsdWdhciBkZSB1c2FyIEI8ZGViaWFuL2ZpbGVzPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRpc3RhZGRmaWxlLjE6NDAgZHBrZy1nZW5jaGFuZ2VzLjE6MTM5IGRwa2ctZ2VuY29udHJvbC4xOjEzNAorIywgbm8td3JhcAorbXNnaWQgIkI8ZGViaWFuL2ZpbGVzPiIKK21zZ3N0ciAiQjxkZWJpYW4vZmlsZXM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpc3RhZGRmaWxlLjE6NDYKK21zZ2lkICIiCisiVGhlIGxpc3Qgb2YgZ2VuZXJhdGVkIGZpbGVzIHdoaWNoIGFyZSBwYXJ0IG9mIHRoZSB1cGxvYWQgYmVpbmcgcHJlcGFyZWQuICAiCisiQjxkcGtnLWRpc3RhZGRmaWxlPiBjYW4gYmUgdXNlZCB0byBhZGQgYWRkaXRpb25hbCBmaWxlcy4iCittc2dzdHIgIiIKKyJMYSBsaXN0YSBkZSBmaWNoZXJvcyBnZW5lcmFkb3MgcXVlIHNvbiBwYXJ0ZSBkZSBsb3MgZGF0b3Mgc3ViaWRvcyBlbiAiCisicHJvY2Vzby4gUHVlZGUgdXNhciBCPGRwa2ctZGlzdGFkZGZpbGU+IHBhcmEgYcOxYWRpciBmaWNoZXJvcyBhZGljaW9uYWxlcy4iCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLWRlYi4xOjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLWRlYiIKK21zZ3N0ciAiZHBrZy1kZWIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6NAorbXNnaWQgImRwa2ctZGViIC0gRGViaWFuIHBhY2thZ2UgYXJjaGl2ZSAoLmRlYikgbWFuaXB1bGF0aW9uIHRvb2wiCittc2dzdHIgIiIKKyJkcGtnLWRlYiAtIEhlcnJhbWllbnRhIGRlIG1hbmlwdWxhY2nDs24gZGUgYXJjaGl2b3MgZGUgcGFxdWV0ZSAowqsuZGViwrspIGRlICIKKyJEZWJpYW4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6OAorIywgZnV6enkKKyN8IG1zZ2lkICJCPGRwa2ctZGViPiBbSTxvcHRpb25zPl0gSTxjb21tYW5kPiIKK21zZ2lkICJCPGRwa2ctZGViPiBbSTxvcHRpb24+Li4uXSBJPGNvbW1hbmQ+IgorbXNnc3RyICJCPGRwa2ctZGViPiBbSTxvcGNpb25lcz5dIEk8b3JkZW4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjEyCittc2dpZCAiIgorIkI8ZHBrZy1kZWI+IHBhY2tzLCB1bnBhY2tzIGFuZCBwcm92aWRlcyBpbmZvcm1hdGlvbiBhYm91dCBEZWJpYW4gYXJjaGl2ZXMuIgorbXNnc3RyICIiCisiQjxkcGtnLWRlYj4gZW1wYXF1ZXRhLCBkZXNlbXBhcXVldGEgeSBvZnJlY2UgaW5mb3JtYWNpw7NuIHNvYnJlIGFyY2hpdm9zIGRlICIKKyJEZWJpYW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjE2Cittc2dpZCAiVXNlIEI8ZHBrZz4gdG8gaW5zdGFsbCBhbmQgcmVtb3ZlIHBhY2thZ2VzIGZyb20geW91ciBzeXN0ZW0uIgorbXNnc3RyICJVc2UgQjxkcGtnPiBwYXJhIGluc3RhbGFyIHkgZWxpbWluYXIgcGFxdWV0ZXMgZGUgc3Ugc2lzdGVtYS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MjYKK21zZ2lkICIiCisiWW91IGNhbiBhbHNvIGludm9rZSBCPGRwa2ctZGViPiBieSBjYWxsaW5nIEI8ZHBrZz4gd2l0aCB3aGF0ZXZlciBvcHRpb25zIHlvdSAiCisid2FudCB0byBwYXNzIHRvIEI8ZHBrZy1kZWI+LiBCPGRwa2c+IHdpbGwgc3BvdCB0aGF0IHlvdSB3YW50ZWQgQjxkcGtnLWRlYj4gIgorImFuZCBydW4gaXQgZm9yIHlvdS4iCittc2dzdHIgIiIKKyJUYW1iacOpbiBwdWVkZSBpbnZvY2FyIEI8ZHBrZy1kZWI+IHVzYW5kbyBCPGRwa2c+IGNvbiBjdWFscXVpZXJhIGRlIGxhcyAiCisib3BjaW9uZXMgcXVlIGRlc2VlIGludHJvZHVjaXIgYSBCPGRwa2ctZGViPi4gQjxkcGtnPiBub3RhcsOhIHF1ZSBkZXNlYSB1c2FyICIKKyJCPGRwa2ctZGViPiwgeSBsbyBlamVjdXRhcsOhIHBvciB1c3RlZC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRlYi4xOjI4CisjLCBuby13cmFwCittc2dpZCAiQjwtYj4sIEI8LS1idWlsZD4gSTxkaXJlY3Rvcnk+IFtJPGFyY2hpdmU+fEk8ZGlyZWN0b3J5Pl0iCittc2dzdHIgIkI8LWI+LCBCPC0tYnVpbGQ+IEk8ZGlyZWN0b3Jpbz4gW0k8YXJjaGl2bz58STxkaXJlY3RvcmlvPl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6NDAKK21zZ2lkICIiCisiQ3JlYXRlcyBhIGRlYmlhbiBhcmNoaXZlIGZyb20gdGhlIGZpbGVzeXN0ZW0gdHJlZSBzdG9yZWQgaW4gSTxkaXJlY3Rvcnk+LiAiCisiSTxkaXJlY3Rvcnk+IG11c3QgaGF2ZSBhIEI8REVCSUFOPiBzdWJkaXJlY3RvcnksIHdoaWNoIGNvbnRhaW5zIHRoZSBjb250cm9sICIKKyJpbmZvcm1hdGlvbiBmaWxlcyBzdWNoIGFzIHRoZSBjb250cm9sIGZpbGUgaXRzZWxmLiBUaGlzIGRpcmVjdG9yeSB3aWxsICIKKyJJPG5vdD4gYXBwZWFyIGluIHRoZSBiaW5hcnkgcGFja2FnZSdzIGZpbGVzeXN0ZW0gYXJjaGl2ZSwgYnV0IGluc3RlYWQgdGhlICIKKyJmaWxlcyBpbiBpdCB3aWxsIGJlIHB1dCBpbiB0aGUgYmluYXJ5IHBhY2thZ2UncyBjb250cm9sIGluZm9ybWF0aW9uIGFyZWEuIgorbXNnc3RyICIiCisiQ3JlYSB1biBhcmNoaXZvIGRlIERlYmlhbiBhIHBhcnRpciBkZWwgw6FyYm9sIGRlbCBzaXN0ZW1hIGRlIGZpY2hlcm9zIHViaWNhZG8gIgorImVuIGVsIEk8ZGlyZWN0b3Jpbz4uIEVsIEk8ZGlyZWN0b3Jpbz4gZGViZSB0ZW5lciB1biBzdWJkaXJlY3RvcmlvIEI8REVCSUFOPiwgIgorImVsIGN1YWwgY29udGllbmUgbG9zIGZpY2hlcm9zIGRlIGluZm9ybWFjacOzbiB0YWxlcyBjb21vIGVsIGZpY2hlcm8gZGUgIgorImNvbnRyb2wuIEVzdGUgZGlyZWN0b3JpbyBJPG5vPiBhcGFyZWNlcsOhIGVuIGVsIHNpc3RlbWEgZGUgZmljaGVyb3MgZGVsICIKKyJhcmNoaXZvIGRlIHBhcXVldGUgYmluYXJpbywgc2lubyBxdWUgbG9zIGZpY2hlcm9zIGNvbnRlbmlkb3Mgc2UgdWJpY2Fyw6FuIGVuICIKKyJlbCDDoXJlYSBkZSBsYSBpbmZvcm1hY2nDs24gZGUgY29udHJvbCBkZWwgcGFxdWV0ZSBiaW5hcmlvLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMTo1MgorbXNnaWQgIiIKKyJVbmxlc3MgeW91IHNwZWNpZnkgQjwtLW5vY2hlY2s+LCBCPGRwa2ctZGViPiB3aWxsIHJlYWQgQjxERUJJQU4vY29udHJvbD4gYW5kICIKKyJwYXJzZSBpdC4gSXQgd2lsbCBjaGVjayBpdCBmb3Igc3ludGF4IGVycm9ycyBhbmQgb3RoZXIgcHJvYmxlbXMsIGFuZCBkaXNwbGF5ICIKKyJ0aGUgbmFtZSBvZiB0aGUgYmluYXJ5IHBhY2thZ2UgYmVpbmcgYnVpbHQuICBCPGRwa2ctZGViPiB3aWxsIGFsc28gY2hlY2sgdGhlICIKKyJwZXJtaXNzaW9ucyBvZiB0aGUgbWFpbnRhaW5lciBzY3JpcHRzIGFuZCBvdGhlciBmaWxlcyBmb3VuZCBpbiB0aGUgQjxERUJJQU4+ICIKKyJjb250cm9sIGluZm9ybWF0aW9uIGRpcmVjdG9yeS4iCittc2dzdHIgIiIKKyJCPGRwa2ctZGViPiBsZWVyw6EgeSBhbmFsaXphcsOhIEI8REVCSUFOL2NvbnRyb2w+IGEgbWVub3MgcXVlIGVzcGVjaWZpcXVlIEI8LS0iCisibm9jaGVjaz4uIENvbXByb2JhcsOhIHBvc2libGVzIGVycm9yZXMgZGUgc2ludGF4aXMgeSBvdHJvcyBwcm9ibGVtYXMsICIKKyJtb3N0cmFuZG8gZWwgbm9tYnJlIGRlbCBwYXF1ZXRlIGJpbmFyaW8gcXVlIHNlIGVzdMOhIGNyZWFuZG8uIEI8ZHBrZy1kZWI+ICIKKyJ0YW1iacOpbiBjb21wcm9iYXLDoSBsb3MgcGVybWlzb3MgZGUgbG9zIHNjcmlwdHMgZGVsIG1hbnRlbmVkb3IgYXPDrSBjb21vIGRlICIKKyJsb3Mgb3Ryb3MgZmljaGVyb3MgcXVlIHNlIGVuY3VlbnRyZW4gZW4gZWwgZGlyZWN0b3JpbyBkZSBsYSBpbmZvcm1hY2nDs24gZGUgIgorImNvbnRyb2wgQjxERUJJQU4+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMTo1OQorbXNnaWQgIiIKKyJJZiBubyBJPGFyY2hpdmU+IGlzIHNwZWNpZmllZCB0aGVuIEI8ZHBrZy1kZWI+IHdpbGwgd3JpdGUgdGhlIHBhY2thZ2UgaW50byAiCisidGhlIGZpbGUgSTxkaXJlY3Rvcnk+QjwuZGViPi4iCittc2dzdHIgIiIKKyJTaSBubyBzZSBlc3BlY2lmaWNhIHVuIEk8YXJjaGl2bz4sIEI8ZHBrZy1kZWI+IGNyZWFyw6EgZWwgcGFxdWV0ZSBjb21vIHVuICIKKyJmaWNoZXJvIEk8ZGlyZWN0b3Jpbz5CPC5kZWI+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMTo2MQorbXNnaWQgIklmIHRoZSBhcmNoaXZlIHRvIGJlIGNyZWF0ZWQgYWxyZWFkeSBleGlzdHMgaXQgd2lsbCBiZSBvdmVyd3JpdHRlbi4iCittc2dzdHIgIlNpIGVsIGFyY2hpdm8gYSBjcmVhciB5YSBleGlzdGUgc2Ugc29icmVlc2NyaWJpcsOhLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMTo3NworbXNnaWQgIiIKKyJJZiB0aGUgc2Vjb25kIGFyZ3VtZW50IGlzIGEgZGlyZWN0b3J5IHRoZW4gQjxkcGtnLWRlYj4gd2lsbCB3cml0ZSB0byB0aGUgIgorImZpbGUgSTxwYWNrYWdlPkI8Xz5JPHZlcnNpb24+QjxfPkk8YXJjaD5CPC5kZWI+LCBvciAiCisiSTxwYWNrYWdlPkI8Xz5JPHZlcnNpb24+QjwuZGViPiBpZiBubyBCPEFyY2hpdGVjdHVyZT4gZmllbGQgaXMgcHJlc2VudCBpbiAiCisidGhlIHBhY2thZ2UgY29udHJvbCBmaWxlLiBXaGVuIGEgdGFyZ2V0IGRpcmVjdG9yeSBpcyBzcGVjaWZpZWQsIHJhdGhlciB0aGFuICIKKyJhIGZpbGUsIHRoZSBCPC0tbm9jaGVjaz4gb3B0aW9uIG1heSBub3QgYmUgdXNlZCAoc2luY2UgQjxkcGtnLWRlYj4gbmVlZHMgdG8gIgorInJlYWQgYW5kIHBhcnNlIHRoZSBwYWNrYWdlIGNvbnRyb2wgZmlsZSB0byBkZXRlcm1pbmUgd2hpY2ggZmlsZW5hbWUgdG8gdXNlKS4iCittc2dzdHIgIiIKKyJTaSBlbCBzZWd1bmRvIGFyZ3VtZW50byBlcyB1biBkaXJlY3RvcmlvLCBCPGRwa2ctZGViPiBlc2NyaWJpcsOhIGVuIGVsICIKKyJmaWNoZXJvIEk8cGFxdWV0ZT5CPF8+STx2ZXJzacOzbj5CPF8+STxhcnF1aXRlY3R1cmE+QjwuZGViPiwgbyAiCisiSTxwYXF1ZXRlPkI8Xz5JPHZlcnNpw7NuPkI8LmRlYj4gc2kgZWwgY2FtcG8gQjxBcnF1aXRlY3R1cmU+IG5vIGVzdMOhIHByZXNlbnRlICIKKyJlbiBlbCBmaWNoZXJvIGRlIGNvbnRyb2wgZGVsIHBhcXVldGUuIE5vIHNlIGRlYmVyw61hIHVzYXIgbGEgb3BjacOzbiBCPC0tIgorIm5vY2hlY2s+IGN1YW5kbyBzZSBlc3BlY2lmaWNhIHVuIGRpcmVjdG9yaW8gZGUgZGVzdGlubyBlbiBsdWdhciBkZSB1biAiCisiZmljaGVybyB5YSBxdWUgQjxkcGtnLWRlYj4gbmVjZXNpdGEgbGVlciB5IGFuYWxpemFyIGVsIGZpY2hlcm8gZGUgY29udHJvbCAiCisiZGVsIHBhcXVldGUgcGFyYSBhc8OtIGRldGVybWluYXIgcXXDqSBub21icmUgZGUgYXJjaGl2byB1c2FyLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6NzcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1JPiwgQjwtLWluZm8+IEk8YXJjaGl2ZT4gW0k8Y29udHJvbC1maWxlLW5hbWU+Li4uXSIKK21zZ3N0ciAiQjwtST4sIEI8LS1pbmZvPiBJPGFyY2hpdm8+IFtJPGZpY2hlcm8tZGUtY29udHJvbD4gLi5dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjgwCittc2dpZCAiUHJvdmlkZXMgaW5mb3JtYXRpb24gYWJvdXQgYSBiaW5hcnkgcGFja2FnZSBhcmNoaXZlLiIKK21zZ3N0ciAiT2ZyZWNlIGluZm9ybWFjacOzbiBhY2VyY2EgZGVsIHBhcXVldGUgYmluYXJpby4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6ODUKK21zZ2lkICIiCisiSWYgbm8gSTxjb250cm9sLWZpbGUtbmFtZT5zIGFyZSBzcGVjaWZpZWQgdGhlbiBpdCB3aWxsIHByaW50IGEgc3VtbWFyeSBvZiAiCisidGhlIGNvbnRlbnRzIG9mIHRoZSBwYWNrYWdlIGFzIHdlbGwgYXMgaXRzIGNvbnRyb2wgZmlsZS4iCittc2dzdHIgIiIKKyJTaSBubyBzZSBlc3BlY2lmaWNhIGVsIEk8ZmljaGVybyhzKS1kZS1jb250cm9sPiBzZSBtb3N0cmFyw6EgdW4gcmVzdW1lbiBkZSAiCisibG9zIGNvbnRlbmlkb3MgZGVsIHBhcXVldGUgYXPDrSBjb21vIGRlbCBmaWNoZXJvIGRlIGNvbnRyb2wuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjkzCittc2dpZCAiIgorIklmIGFueSBJPGNvbnRyb2wtZmlsZS1uYW1lPnMgYXJlIHNwZWNpZmllZCB0aGVuIEI8ZHBrZy1kZWI+IHdpbGwgcHJpbnQgdGhlbSAiCisiaW4gdGhlIG9yZGVyIHRoZXkgd2VyZSBzcGVjaWZpZWQ7IGlmIGFueSBvZiB0aGUgY29tcG9uZW50cyB3ZXJlbid0IHByZXNlbnQgIgorIml0IHdpbGwgcHJpbnQgYW4gZXJyb3IgbWVzc2FnZSB0byBzdGRlcnIgYWJvdXQgZWFjaCBvbmUgYW5kIGV4aXQgd2l0aCBzdGF0dXMgIgorIjIuIgorbXNnc3RyICIiCisiU2kgc2UgZXNwZWNpZmljYSBhbGfDum4gSTxmaWNoZXJvLWRlLWNvbnRyb2w+LCBCPGRwa2ctZGViPiBpbXByaW1pcsOhIGxvcyAiCisiY29udGVuaWRvcyBlbiBlbCBvcmRlbiBlbiBxdWUgc2UgZXNwZWNpZmljYXJvbi4gU2kgY3VhbHF1aWVyYSBkZSBsb3MgIgorImNvbXBvbmVudGVzIG5vIGVzdHV2aWVzZSBwcmVzZW50ZSBzZSBtb3N0cmFyw6EgdW4gbWVuc2FqZSBkZSBlcnJvciBwb3IgbGEgIgorInNhbGlkYSBkZSBlcnJvciBlc3TDoW5kYXIgcGFyYSBjYWRhIHVubyBkZSBlbGxvcywgaW50ZXJydW1waWVuZG8gZWwgcHJvY2VzbyAiCisiY29uIGVsIGVzdGFkbyBkZSBzYWxpZGEgMi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRlYi4xOjkzCisjLCBuby13cmFwCittc2dpZCAiQjwtVz4sIEI8LS1zaG93PiBJPGFyY2hpdmU+IgorbXNnc3RyICJCPC1XPiwgQjwtLXNob3c+IEk8YXJjaGl2bz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTAwCittc2dpZCAiIgorIlByb3ZpZGVzIGluZm9ybWF0aW9uIGFib3V0IGEgYmluYXJ5IHBhY2thZ2UgYXJjaGl2ZSBpbiB0aGUgZm9ybWF0IHNwZWNpZmllZCAiCisiYnkgdGhlIEI8LS1zaG93Zm9ybWF0PiBhcmd1bWVudC4gVGhlIGRlZmF1bHQgZm9ybWF0IGRpc3BsYXlzIHRoZSBwYWNrYWdlJ3MgIgorIm5hbWUgYW5kIHZlcnNpb24gb24gb25lIGxpbmUsIHNlcGFyYXRlZCBieSBhIHRhYnVsYXRvci4iCittc2dzdHIgIiIKKyJPZnJlY2UgaW5mb3JtYWNpw7NuIGFjZXJjYSBkZWwgcGFxdWV0ZSBiaW5hcmlvIGNvbiBlbCBmb3JtYXRvIGRlZmluaWRvIHBvciBlbCAiCisiYXJndW1lbnRvIEI8LS1zaG93Zm9ybWF0Pi4gRWwgZm9ybWF0byBwcmVkZWZpbmlkbyBtdWVzdHJhIGVsIG5vbWJyZSBkZWwgIgorInBhcXVldGUgeSBsYSB2ZXJzacOzbiBlbiB1bmEgc29sYSBsw61uZWEsIHNlcGFyYWRvcyBwb3IgdW4gdGFidWxhZG8uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToxMDAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1mPiwgQjwtLWZpZWxkPiBJPGFyY2hpdmU+IFtJPGNvbnRyb2wtZmllbGQtbmFtZT4uLi5dIgorbXNnc3RyICJCPC1mPiwgQjwtLWZpZWxkPiBJPGFyY2hpdm8+IFtJPGNhbXBvLWRlbC1maWNoZXJvLWNvbnRyb2w+IC4uLl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTAzCittc2dpZCAiRXh0cmFjdHMgY29udHJvbCBmaWxlIGluZm9ybWF0aW9uIGZyb20gYSBiaW5hcnkgcGFja2FnZSBhcmNoaXZlLiIKK21zZ3N0ciAiIgorIkV4dHJhZSBpbmZvcm1hY2nDs24gZGVsIGZpY2hlcm8gZGUgY29udHJvbCBkZWwgZmljaGVybyBkZSB1biBwYXF1ZXRlIGJpbmFyaW8uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjEwNworbXNnaWQgIiIKKyJJZiBubyBCPGNvbnRyb2wtZmlsZS1maWVsZD5zIGFyZSBzcGVjaWZpZWQgdGhlbiBpdCB3aWxsIHByaW50IHRoZSB3aG9sZSAiCisiY29udHJvbCBmaWxlLiIKK21zZ3N0ciAiIgorIlNpIG5vIHNlIGVzcGVjaWZpY2EgbmluZ8O6biBCPGNhbXBvLWRlbC1maWNoZXJvLWNvbnRyb2w+LCBzZSBtb3N0cmFyw6EgdG9kbyBlbCAiCisiZmljaGVybyBkZSBjb250cm9sLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxMTYKK21zZ2lkICIiCisiSWYgYW55IGFyZSBzcGVjaWZpZWQgdGhlbiBCPGRwa2ctZGViPiB3aWxsIHByaW50IHRoZWlyIGNvbnRlbnRzLCBpbiB0aGUgIgorIm9yZGVyIGluIHdoaWNoIHRoZXkgYXBwZWFyIGluIHRoZSBjb250cm9sIGZpbGUuIElmIG1vcmUgdGhhbiBvbmUgQjxjb250cm9sLSIKKyJmaWxlLWZpZWxkPiBpcyBzcGVjaWZpZWQgdGhlbiBCPGRwa2ctZGViPiB3aWxsIHByZWNlZGUgZWFjaCB3aXRoIGl0cyBmaWVsZCAiCisibmFtZSAoYW5kIGEgY29sb24gYW5kIHNwYWNlKS4iCittc2dzdHIgIiIKKyJTaSBzZSBlc3BlY2lmaWNhIGFsZ8O6biBjYW1wbywgQjxkcGtnLWRlYj4gbW9zdHJhcsOhIHN1cyBjb250ZW5pZG9zIGVuIGVsICIKKyJvcmRlbiBlbiBlbCBjdWFsIGFwYXJlY2VuIGVuIGVsIGZpY2hlcm8gZGUgY29udHJvbC4gU2kgc2UgZXNwZWNpZmljYSBtw6FzIGRlICIKKyJ1biBCPGNhbXBvLWRlbC1maWNoZXJvLWNvbnRyb2w+LCBCPGRwa2ctZGViPiBwcmVjZWRlcsOhIGNhZGEgdW5vIGNvbiBlbCAiCisibm9tYnJlIGRlbCBjYW1wbyAobcOhcyBkb3MgcHVudG9zIHkgdW4gZXNwYWNpbykuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjExOAorbXNnaWQgIk5vIGVycm9ycyBhcmUgcmVwb3J0ZWQgZm9yIGZpZWxkcyByZXF1ZXN0ZWQgYnV0IG5vdCBmb3VuZC4iCittc2dzdHIgIiIKKyJObyBzZSBpbmZvcm1hIGRlIG5pbmfDum4gZXJyb3IgcGFyYSBsb3MgY2FtcG9zIHNvbGljaXRhZG9zIHBlcm8gbm8gIgorImVuY29udHJhZG9zLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MTE4CisjLCBuby13cmFwCittc2dpZCAiQjwtYz4sIEI8LS1jb250ZW50cz4gSTxhcmNoaXZlPiIKK21zZ3N0ciAiQjwtYz4sIEI8LS1jb250ZW50cz4gSTxhcmNoaXZvPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxMjQKK21zZ2lkICIiCisiTGlzdHMgdGhlIGNvbnRlbnRzIG9mIHRoZSBmaWxlc3lzdGVtIHRyZWUgYXJjaGl2ZSBwb3J0aW9uIG9mIHRoZSBwYWNrYWdlICIKKyJhcmNoaXZlLiBJdCBpcyBjdXJyZW50bHkgcHJvZHVjZWQgaW4gdGhlIGZvcm1hdCBnZW5lcmF0ZWQgYnkgQjx0YXI+J3MgIgorInZlcmJvc2UgbGlzdGluZy4iCittc2dzdHIgIiIKKyJMaXN0YSBsb3MgY29udGVuaWRvcyBkZSBsYSBwYXJ0ZSBkZWwgYXJjaGl2byBkZSBwYXF1ZXRlIHF1ZSBzZSBpbnN0YWxhIGVuIGVsICIKKyLDoXJib2wgZGVsIHNpc3RlbWEgZGUgZmljaGVyb3MsIHNpbiBpbmNsdWlyIGZpY2hlcm9zIGVzcGVjw61maWNvcyBkZWwgc2lzdGVtYSAiCisiZGUgZW1wYXF1ZXRhZG8gZGUgRGViaWFuLiBMYSBsaXN0YSBzZSBnZW5lcmEgY29uIGVsIGZvcm1hdG8gcHJvZHVjaWRvIHBvciBlbCAiCisibGlzdGFkbyBpbmZvcm1hdGl2byBkZSBCPHRhcj4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToxMjQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC14PiwgQjwtLWV4dHJhY3Q+IEk8YXJjaGl2ZSBkaXJlY3Rvcnk+IgorbXNnc3RyICJCPC14PiwgQjwtLWV4dHJhY3Q+IEk8ZGlyZWN0b3Jpby1hcmNoaXZvPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxMjgKK21zZ2lkICIiCisiRXh0cmFjdHMgdGhlIGZpbGVzeXN0ZW0gdHJlZSBmcm9tIGEgcGFja2FnZSBhcmNoaXZlIGludG8gdGhlIHNwZWNpZmllZCAiCisiZGlyZWN0b3J5LiIKK21zZ3N0ciAiIgorIkV4dHJhZSBlbCDDoXJib2wgZGVsIHNpc3RlbWEgZGUgZmljaGVyb3MgZGVsIGFyY2hpdm8gZGUgcGFxdWV0ZXMgYWwgIgorImRpcmVjdG9yaW8gZXNwZWNpZmljYWRvLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxMzQKK21zZ2lkICIiCisiTm90ZSB0aGF0IGV4dHJhY3RpbmcgYSBwYWNrYWdlIHRvIHRoZSByb290IGRpcmVjdG9yeSB3aWxsIEk8bm90PiByZXN1bHQgaW4gYSAiCisiY29ycmVjdCBpbnN0YWxsYXRpb24hIFVzZSBCPGRwa2c+IHRvIGluc3RhbGwgcGFja2FnZXMuIgorbXNnc3RyICIiCisiwqFUZW5nYSBlbiBjdWVudGEgcXVlIEk8bm8+IG9idGVuZHLDoSB1bmEgaW5zdGFsYWNpw7NuIGNvcnJlY3RhIHNpIGV4dHJhZSB1biAiCisicGFxdWV0ZSBlbiBlbCBkaXJlY3RvcmlvIHJhw616ISBVc2UgQjxkcGtnPiBwYXJhIGluc3RhbGFyIHBhcXVldGVzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxMzgKK21zZ2lkICIiCisiSTxkaXJlY3Rvcnk+IChidXQgbm90IGl0cyBwYXJlbnRzKSB3aWxsIGJlIGNyZWF0ZWQgaWYgbmVjZXNzYXJ5LCBhbmQgaXRzICIKKyJwZXJtaXNzaW9ucyBtb2RpZmllZCB0byBtYXRjaCB0aGUgY29udGVudHMgb2YgdGhlIHBhY2thZ2UuIgorbXNnc3RyICIiCisiU2UgY3JlYXLDoSBlbCBJPGRpcmVjdG9yaW8+IChwZXJvIG5vIGxvcyBkaXJlY3RvcmlvcyBwYWRyZSkgZGUgc2VyIG5lY2VzYXJpbywgIgorIm1vZGlmaWNhbmRvIHN1cyBwZXJtaXNvcyBkZSBhY3VlcmRvIGEgbG9zIGNvbnRlbmlkb3MgZGVsIHBhcXVldGUuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToxMzgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1YPiwgQjwtLXZleHRyYWN0PiBJPGFyY2hpdmUgZGlyZWN0b3J5PiIKK21zZ3N0ciAiQjwtWD4sIEI8LS12ZXh0cmFjdD4gSTxkaXJlY3RvcmlvLWFyY2hpdm8+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjE0NQorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiSXMgbGlrZSBCPC0tZXh0cmFjdD4gKEI8LXg+KSAgYnV0IHByaW50cyBhIGxpc3Rpbmcgb2YgdGhlIGZpbGVzIGV4dHJhY3RlZCAiCisjfCAiYXMgaXQgZ29lcy4iCittc2dpZCAiIgorIklzIGxpa2UgQjwtLWV4dHJhY3Q+IChCPC14PikgIHdpdGggQjwtLXZlcmJvc2U+IChCPC12PikgIHdoaWNoIHByaW50cyBhICIKKyJsaXN0aW5nIG9mIHRoZSBmaWxlcyBleHRyYWN0ZWQgYXMgaXQgZ29lcy4iCittc2dzdHIgIiIKKyJTaW1pbGFyIGEgQjwtLWV4dHJhY3Q+IChCPC14PiksIHBlcm8gbXVlc3RyYSB1bmEgbGlzdGEgZGUgZmljaGVyb3MgYSBtZWRpZGEgIgorInF1ZSBzZSBleHRyYWVuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MTQ1CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8LXg+LCBCPC0tZXh0cmFjdD4gSTxhcmNoaXZlIGRpcmVjdG9yeT4iCittc2dpZCAiQjwtUj4sIEI8LS1yYXctZXh0cmFjdD4gSTxhcmNoaXZlIGRpcmVjdG9yeT4iCittc2dzdHIgIkI8LXg+LCBCPC0tZXh0cmFjdD4gSTxkaXJlY3RvcmlvLWFyY2hpdm8+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjE1MAorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiRXh0cmFjdHMgdGhlIGZpbGVzeXN0ZW0gdHJlZSBmcm9tIGEgcGFja2FnZSBhcmNoaXZlIGludG8gdGhlIHNwZWNpZmllZCAiCisjfCAiZGlyZWN0b3J5LiIKK21zZ2lkICIiCisiRXh0cmFjdHMgdGhlIGZpbGVzeXN0ZW0gdHJlZSBmcm9tIGEgcGFja2FnZSBhcmNoaXZlIGludG8gYSBzcGVjaWZpZWQgIgorImRpcmVjdG9yeSwgYW5kIHRoZSBjb250cm9sIGluZm9ybWF0aW9uIGZpbGVzIGludG8gYSBERUJJQU4gc3ViZGlyZWN0b3J5IG9mICIKKyJ0aGUgc3BlY2lmaWVkIGRpcmVjdG9yeS4iCittc2dzdHIgIiIKKyJFeHRyYWUgZWwgw6FyYm9sIGRlbCBzaXN0ZW1hIGRlIGZpY2hlcm9zIGRlbCBhcmNoaXZvIGRlIHBhcXVldGVzIGFsICIKKyJkaXJlY3RvcmlvIGVzcGVjaWZpY2Fkby4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTUyIGRwa2ctZGViLjE6MTcyCittc2dpZCAiIgorIlRoZSB0YXJnZXQgZGlyZWN0b3J5IChidXQgbm90IGl0cyBwYXJlbnRzKSB3aWxsIGJlIGNyZWF0ZWQgaWYgbmVjZXNzYXJ5LiIKK21zZ3N0ciAiIgorIkVsIGRpcmVjdG9yaW8gZGUgZGVzdGlubyAocGVybyBubyBsb3MgZGlyZWN0b3Jpb3MgcGFkcmUpIHNlIGNyZWFyw6EgZGUgc2VyICIKKyJuZWNlc2FyaW8uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToxNTIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tZnN5cy10YXJmaWxlPiBJPGFyY2hpdmU+IgorbXNnc3RyICJCPC0tZnN5cy10YXJmaWxlPiBJPGFyY2hpdm8+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjE2MQorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiRXh0cmFjdHMgdGhlIGZpbGVzeXN0ZW0gdHJlZSBkYXRhIGZyb20gYSBiaW5hcnkgcGFja2FnZSBhbmQgc2VuZHMgaXQgdG8gIgorI3wgInN0YW5kYXJkIG91dHB1dCBpbiBCPHRhcj4gZm9ybWF0LiBUb2dldGhlciB3aXRoIEI8dGFyPigxKSAgdGhpcyBjYW4gYmUgIgorI3wgInVzZWQgdG8gZXh0cmFjdCBhIHBhcnRpY3VsYXIgZmlsZSBmcm9tIGEgcGFja2FnZSBhcmNoaXZlLiIKK21zZ2lkICIiCisiRXh0cmFjdHMgdGhlIGZpbGVzeXN0ZW0gdHJlZSBkYXRhIGZyb20gYSBiaW5hcnkgcGFja2FnZSBhbmQgc2VuZHMgaXQgdG8gIgorInN0YW5kYXJkIG91dHB1dCBpbiBCPHRhcj4gZm9ybWF0LiBUb2dldGhlciB3aXRoIEI8dGFyPigxKSAgdGhpcyBjYW4gYmUgdXNlZCAiCisidG8gZXh0cmFjdCBhIHBhcnRpY3VsYXIgZmlsZSBmcm9tIGEgcGFja2FnZSBhcmNoaXZlLiAgVGhlIGlucHV0IGFyY2hpdmUgd2lsbCAiCisiYWx3YXlzIGJlIHByb2Nlc3NlZCBzZXF1ZW50aWFsbHkuIgorbXNnc3RyICIiCisiRXh0cmFlIGxvcyBkYXRvcyBkZWwgw6FyYm9sIGRlIHNpc3RlbWEgZGUgZmljaGVyb3MgZGUgdW4gcGFxdWV0ZSBiaW5hcmlvLCAiCisiZW52acOhbmRvbG8gcG9yIGxhIHNhbGlkYSBlc3TDoW5kYXIgZW4gZm9ybWF0byBCPHRhcj4uIFNlIHB1ZWRlIHVzYXIganVudG8gY29uICIKKyJCPHRhcj4gcGFyYSBleHRyYWVyIHVuIGZpY2hlcm8gZXNwZWPDrWZpY28gZGVsIGFyY2hpdm8gZGUgcGFxdWV0ZXMuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToxNjEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1lPiwgQjwtLWNvbnRyb2w+IEk8YXJjaGl2ZT4gW0k8ZGlyZWN0b3J5Pl0iCittc2dzdHIgIkI8LWU+LCBCPC0tY29udHJvbD4gSTxhcmNoaXZvPiBbSTxkaXJlY3RvcmlvPl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTY1Cittc2dpZCAiIgorIkV4dHJhY3RzIHRoZSBjb250cm9sIGluZm9ybWF0aW9uIGZpbGVzIGZyb20gYSBwYWNrYWdlIGFyY2hpdmUgaW50byB0aGUgIgorInNwZWNpZmllZCBkaXJlY3RvcnkuIgorbXNnc3RyICIiCisiRXh0cmFlIGxvcyBmaWNoZXJvcyBkZSBpbmZvcm1hY2nDs24gZGUgY29udHJvbCBkZSB1biBhcmNoaXZvIGRlIHBhcXVldGUgYWwgIgorImRpcmVjdG9yaW8gZXNwZWNpZmljYWRvLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxNjkKK21zZ2lkICIiCisiSWYgbm8gZGlyZWN0b3J5IGlzIHNwZWNpZmllZCB0aGVuIGEgc3ViZGlyZWN0b3J5IEI8REVCSUFOPiBpbiB0aGUgY3VycmVudCAiCisiZGlyZWN0b3J5IGlzIHVzZWQuIgorbXNnc3RyICIiCisiU2kgbm8gc2UgZXNwZWNpZmljYSBuaW5nw7puIGRpcmVjdG9yaW8sIHNlIHVzYXLDoSBlbCBzdWJkaXJlY3RvcmlvIEI8REVCSUFOPiAiCisiZGVsIGRpcmVjdG9yaW8gYWN0dWFsLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MTgwCisjLCBuby13cmFwCittc2dpZCAiQjwtLXNob3dmb3JtYXQ9Pkk8Zm9ybWF0PiIKK21zZ3N0ciAiQjwtLXNob3dmb3JtYXQ9Pkk8Zm9ybWF0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxODUgZHBrZy1xdWVyeS4xOjEyNworbXNnaWQgIiIKKyJUaGlzIG9wdGlvbiBpcyB1c2VkIHRvIHNwZWNpZnkgdGhlIGZvcm1hdCBvZiB0aGUgb3V0cHV0IEI8LS1zaG93PiB3aWxsICIKKyJwcm9kdWNlLiBUaGUgZm9ybWF0IGlzIGEgc3RyaW5nIHRoYXQgd2lsbCBiZSBvdXRwdXQgZm9yIGVhY2ggcGFja2FnZSBsaXN0ZWQuIgorbXNnc3RyICIiCisiRXN0YSBvcGNpw7NuIHNpcnZlIHBhcmEgZXNwZWNpZmljYXIgZWwgZm9ybWF0byBkZSBsYSBzYWxpZGEgcXVlIEI8LS1zaG93PiAiCisicHJvZHVjaXLDoS4gRWwgZm9ybWF0byBlcyB1bmEgY2FkZW5hIHF1ZSBzZXLDoSBsYSBzYWxpZGEgZGUgY2FkYSBwYXF1ZXRlICIKKyJsaXN0YWRvLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxOTQKK21zZ2lkICIiCisiVGhlIHN0cmluZyBtYXkgcmVmZXJlbmNlIGFueSBzdGF0dXMgZmllbGQgdXNpbmcgdGhlIFwiJHtJPGZpZWxkLW5hbWU+fVwiICIKKyJmb3JtLCBhIGxpc3Qgb2YgdGhlIHZhbGlkIGZpZWxkcyBjYW4gYmUgZWFzaWx5IHByb2R1Y2VkIHVzaW5nIEI8LUk+IG9uIHRoZSAiCisic2FtZSBwYWNrYWdlLiBBIGNvbXBsZXRlIGV4cGxhbmF0aW9uIG9mIHRoZSBmb3JtYXR0aW5nIG9wdGlvbnMgKGluY2x1ZGluZyAiCisiZXNjYXBlIHNlcXVlbmNlcyBhbmQgZmllbGQgdGFiYmluZykgY2FuIGJlIGZvdW5kIGluIHRoZSBleHBsYW5hdGlvbiBvZiB0aGUgIgorIkI8LS1zaG93Zm9ybWF0PiBvcHRpb24gaW4gQjxkcGtnLXF1ZXJ5PigxKS4iCittc2dzdHIgIiIKKyJMYSBjYWRlbmEgcHVlZGUgbW9zdHJhciBjdWFscXVpZXIgY2FtcG8gZGUgZXN0YWRvIHVzYW5kbyBsYSBmb3JtYSAiCisiwqske0k8bm9tYnJlLWNhbXBvPn3CuywgeSBwdWVkZSBnZW5lcmFyIHVuYSBsaXN0YSBkZSBjYW1wb3MgdsOhbGlkb3MgdXNhbmRvIEI8LSIKKyJJPiBjb24gZWwgbWlzbW8gcGFxdWV0ZS4gUGFyYSB1bmEgZXhwbGljYWNpw7NuIGRlIGxhcyBvcGNpb25lcyBkZSBmb3JtYXRvICIKKyIoaW5jbHV5ZW5kbyBzZWN1ZW5jaWFzIGRlIGVzY2FwZSB5IGVsIHRhYnVsYWRvIGRlIGxvcyBjYW1wb3MpLCBjb25zdWx0ZSBsYSAiCisiZXhwbGljYWNpw7NuIGRlIGxhIG9wY2nDs24gQjwtLXNob3dmb3JtYXQ+IGVuIEI8ZHBrZy1xdWVyeT4gKDEpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxOTYKK21zZ2lkICJUaGUgZGVmYXVsdCBmb3IgdGhpcyBmaWVsZCBpcyBcIiR7UGFja2FnZX1cXGV0JHtWZXJzaW9ufVxcZW5cIi4iCittc2dzdHIgIkVsIHZhbG9yIHByZWRlZmluaWRvIGRlIGVzdGUgY2FtcG8gZXMgwqske1BhY2thZ2V9XFxldCR7VmVyc2lvbn1cXGVuwrsuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToxOTYKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjwtej5JPGNvbXByZXNzX2xldmVsPiIKK21zZ2lkICJCPC16Pkk8Y29tcHJlc3MtbGV2ZWw+IgorbXNnc3RyICJCPC16Pkk8Y29tcHJlc3NfbGV2ZWw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjIwMAorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiU3BlY2lmeSB3aGljaCBjb21wcmVzc2lvbiBsZXZlbCB0byBwYXNzIHRvIHRoZSBjb21wcmVzc29yIGJhY2tlbmQgIgorI3wgInByb2dyYW0sIHdoZW4gYnVpbGRpbmcgYSBwYWNrYWdlLiIKK21zZ2lkICIiCisiU3BlY2lmeSB3aGljaCBjb21wcmVzc2lvbiBsZXZlbCB0byB1c2Ugb24gdGhlIGNvbXByZXNzb3IgYmFja2VuZCwgd2hlbiAiCisiYnVpbGRpbmcgYSBwYWNrYWdlIChkZWZhdWx0IGlzIDkgZm9yIGd6aXAgYW5kIGJ6aXAyLCA2IGZvciB4eiBhbmQgbHptYSkuIgorbXNnc3RyICIiCisiRGVmaW5lIGVsIG5pdmVsIGRlIGNvbXByZXNpw7NuIGEgaW50cm9kdWNpciBhbCBwcm9ncmFtYSBkZSBjb21wcmVzacOzbiBleHRlcm5vICIKKyJhbCBjb25zdHJ1aXIgdW4gcGFxdWV0ZS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRlYi4xOjIwMAorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPC1aPkk8Y29tcHJlc3NfdHlwZT4iCittc2dpZCAiQjwtWj5JPGNvbXByZXNzLXR5cGU+IgorbXNnc3RyICJCPC1aPkk8Y29tcHJlc3NfdHlwZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MjA1Cittc2dpZCAiIgorIlNwZWNpZnkgd2hpY2ggY29tcHJlc3Npb24gdHlwZSB0byB1c2Ugd2hlbiBidWlsZGluZyBhIHBhY2thZ2UuIEFsbG93ZWQgIgorInZhbHVlcyBhcmUgSTxnemlwPiwgSTx4ej4sIEk8YnppcDI+LCBJPGx6bWE+LCBhbmQgSTxub25lPiAoZGVmYXVsdCBpcyAiCisiSTxnemlwPikuIgorbXNnc3RyICIiCisiRXNwZWNpZmljYSBlbCB0aXBvIGRlIGNvbXByZXNpw7NuIGEgdXNhciBhbCBjb25zdHJ1aXIgdW4gcGFxdWV0ZS4gTG9zIHZhbG9yZXMgIgorImFjZXB0YWRvcyBzb24gSTxnemlwPiwgSTx4ej4sIEk8YnppcDI+LCBJPGx6bWE+LCB5IEk8bm9uZT4gKG5pbmd1bm8pLiBFbCAiCisidmFsb3IgcHJlZGVmaW5pZG8gZXMgSTxnemlwPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRlYi4xOjIwNQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1uZXc+IgorbXNnc3RyICJCPC0tbmV3PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToyMTAKK21zZ2lkICIiCisiRW5zdXJlcyB0aGF0IEI8ZHBrZy1kZWI+IGJ1aWxkcyBhIGBuZXcnIGZvcm1hdCBhcmNoaXZlLiBUaGlzIGlzIHRoZSBkZWZhdWx0LiIKK21zZ3N0ciAiIgorIkFzZWd1cmEgcXVlIEI8ZHBrZy1kZWI+IGNvbnN0cnV5YSB1biBhcmNoaXZvIGNvbiBlbCDCq251ZXZvwrsgZm9ybWF0by4gw4lzdGUgZXMgIgorImVsIGNvbXBvcnRhbWllbnRvIHBvciBvbWlzacOzbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRlYi4xOjIxMAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1vbGQ+IgorbXNnc3RyICJCPC0tb2xkPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToyMTgKK21zZ2lkICIiCisiRm9yY2VzIEI8ZHBrZy1kZWI+IHRvIGJ1aWxkIGFuIGBvbGQnIGZvcm1hdCBhcmNoaXZlLiBUaGlzIG9sZCBhcmNoaXZlIGZvcm1hdCAiCisiaXMgbGVzcyBlYXNpbHkgcGFyc2VkIGJ5IG5vbi1EZWJpYW4gdG9vbHMgYW5kIGlzIG5vdyBvYnNvbGV0ZTsgaXRzIG9ubHkgdXNlICIKKyJpcyB3aGVuIGJ1aWxkaW5nIHBhY2thZ2VzIHRvIGJlIHBhcnNlZCBieSB2ZXJzaW9ucyBvZiBkcGtnIG9sZGVyIHRoYW4gIgorIjAuOTMuNzYgKFNlcHRlbWJlciAxOTk1KSwgd2hpY2ggd2FzIHJlbGVhc2VkIGFzIGkzODYgYS5vdXQgb25seS4iCittc2dzdHIgIiIKKyJGdWVyemEgcXVlIEI8ZHBrZy1kZWI+IGNvbnN0cnV5YSB1biBhcmNoaXZvIGNvbiBlbCBmb3JtYXRvIGFudGlndW8gKMKrb2xkwrspLiAiCisiRXN0ZSBmb3JtYXRvIGFudGlndW8gZGUgYXJjaGl2byBlcyBtw6FzIGRpZsOtY2lsIGRlIGFuYWxpemFyIHBvciBsYXMgIgorImhlcnJhbWllbnRhcyBxdWUgbm8gZm9ybWFuIHBhcnRlIGRlIERlYmlhbiwgeSBhIGTDrWEgZGUgaG95IGVzdMOhIG9ic29sZXRvLiAiCisiU8OzbG8gc2UgdXNhIGFsIGNvbnN0cnVpciBwYXF1ZXRlcyBxdWUgdmVyc2lvbmVzIGRlIGRwa2cgYW50ZXJpb3JlcyBhIDAuOTMuNzYgIgorIihzZXB0aWVtYnJlIDE5OTUpIGFuYWxpemFyw6FuLCBsYSBjdWFsIHNlIGRpc3RyaWJ1ecOzIHPDs2xvIHBhcmEgc2lzdGVtYXMgaTM4NiAiCisiZW4gZm9ybWF0byDCq2Eub3V0LsK7IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToyMTgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tbm9jaGVjaz4iCittc2dzdHIgIkI8LS1ub2NoZWNrPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToyMjQKK21zZ2lkICIiCisiSW5oaWJpdHMgQjxkcGtnLWRlYiAtLWJ1aWxkPidzIHVzdWFsIGNoZWNrcyBvbiB0aGUgcHJvcG9zZWQgY29udGVudHMgb2YgYW4gIgorImFyY2hpdmUuIFlvdSBjYW4gYnVpbGQgYW55IGFyY2hpdmUgeW91IHdhbnQsIG5vIG1hdHRlciBob3cgYnJva2VuLCB0aGlzIHdheS4iCittc2dzdHIgIiIKKyJJbXBpZGUgbGFzIGNvbXByb2JhY2lvbmVzIGhhYml0dWFsZXMgZGUgQjxkcGtnLWRlYiAtLWJ1aWxkPiBzb2JyZSBsb3MgIgorImNvbnRlbmlkb3MgZGVsIGFyY2hpdm8uIFB1ZWRlIGNvbnN0cnVpciBjdWFscXVpZXIgYXJjaGl2byBxdWUgZGVzZWUsIG5vICIKKyJpbXBvcnRhIGxvIG1hbCBxdWUgZXN0w6kuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToyMjQgc3RhcnQtc3RvcC1kYWVtb24uODoyNTUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC12PiwgQjwtLXZlcmJvc2U+IgorbXNnc3RyICJCPC12PiwgQjwtLXZlcmJvc2U+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjIyOAorbXNnaWQgIiIKKyJFbmFibGVzIHZlcmJvc2Ugb3V0cHV0LiBUaGlzIGN1cnJlbnRseSBvbmx5IGFmZmVjdHMgQjwtLWV4dHJhY3Q+IG1ha2luZyBpdCAiCisiYmVoYXZlIGxpa2UgQjwtLXZleHRyYWN0Pi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MjI4CisjLCBuby13cmFwCittc2dpZCAiQjwtRD4sIEI8LS1kZWJ1Zz4iCittc2dzdHIgIkI8LUQ+LCBCPC0tZGVidWc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjIzMQorbXNnaWQgIkVuYWJsZXMgZGVidWdnaW5nIG91dHB1dC4gVGhpcyBpcyBub3QgdmVyeSBpbnRlcmVzdGluZy4iCittc2dzdHIgIkFjdGl2YSBsb3MgbWVuc2FqZXMgZGUgZGVwdXJhY2nDs24uIE5vIHNvbiBtdXkgaW50ZXJlc2FudGVzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToyMzcKK21zZ2lkICIiCisiSWYgc2V0LCBCPGRwa2ctZGViPiB3aWxsIHVzZSBpdCBhcyB0aGUgZGlyZWN0b3J5IGluIHdoaWNoIHRvIGNyZWF0ZSAiCisidGVtcG9yYXJ5IGZpbGVzIGFuZCBkaXJlY3Rvcmllcy4iCittc2dzdHIgIiIKKyJTaSBzZSBkZWZpbmUsIEI8ZHBrZy1kZWI+IGxvIHVzYXLDoSBjb21vIGVsIGRpcmVjdG9yaW8gZW4gZWwgcXVlIGNyZWFyICIKKyJmaWNoZXJvcyB0ZW1wb3JhbGVzIHkgZGlyZWN0b3Jpb3MuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjI0MworbXNnaWQgIiIKKyJCPGRwa2ctZGViIC1JPiBJPHBhY2thZ2UxPkI8LmRlYj4gSTxwYWNrYWdlMj5CPC5kZWI+IGRvZXMgdGhlIHdyb25nIHRoaW5nLiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1kZWIgLUk+IEk8cGFxdWV0ZTE+QjwuZGViPiBJPHBhcXVldGUyPkI8LmRlYj4gbm8gZnVuY2lvbmEgY29tbyAiCisiZGViZXLDrWEuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjI1MQorbXNnaWQgIiIKKyJUaGVyZSBpcyBubyBhdXRoZW50aWNhdGlvbiBvbiBCPC5kZWI+IGZpbGVzOyBpbiBmYWN0LCB0aGVyZSBpc24ndCBldmVuIGEgIgorInN0cmFpZ2h0Zm9yd2FyZCBjaGVja3N1bS4gIChIaWdoZXIgbGV2ZWwgdG9vbHMgbGlrZSBBUFQgc3VwcG9ydCAiCisiYXV0aGVudGljYXRpbmcgQjwuZGViPiBwYWNrYWdlcyByZXRyaWV2ZWQgZnJvbSBhIGdpdmVuIHJlcG9zaXRvcnksIGFuZCBtb3N0ICIKKyJwYWNrYWdlcyBub3dhZGF5cyBwcm92aWRlIGFuIG1kNXN1bSBjb250cm9sIGZpbGUgZ2VuZXJhdGVkIGJ5IGRlYmlhbi9ydWxlcy4gIgorIlRob3VnaCB0aGlzIGlzIG5vdCBkaXJlY3RseSBzdXBwb3J0ZWQgYnkgdGhlIGxvd2VyIGxldmVsIHRvb2xzLikiCittc2dzdHIgIiIKKyJObyByZWFsaXphIG5pbmd1bmEgY29tcHJvYmFjacOzbiBkZSBhdXRlbnRpY2lkYWQgZGUgbG9zIGZpY2hlcm9zIEI8LmRlYj47IGRlICIKKyJoZWNobywgbmkgc2lxdWllcmEgdW5hIHN1bWEgZGUgY29udHJvbC4gTGFzIGhlcnJhbWllbnRhcyBkZSBuaXZlbCBhbHRvIGNvbW8gIgorIkFQVCBzb24gY2FwYWNlcyBkZSBhdXRlbnRpY2FyIHBhcXVldGVzIG9idGVuaWRvcyBkZXNkZSBlbCByZXBvc2l0b3JpbyBkYWRvLCAiCisieSBsYSBtYXlvcsOtYSBkZSBlc3RvcyBvZnJlY2VuIGEgZMOtYSBkZSBob3kgdW4gZmljaGVybyBkZSBzdW1hcyBkZSBjb250cm9sICIKKyJtZDUgZ2VuZXJhZG8gcG9yIMKrZGViaWFuL3J1bGVzwrsuIExhcyBoZXJyYW1pZW50YXMgZGUgYmFqbyBuaXZlbCBubyB0aWVuZW4gIgorInVuYSBjb21wYXRpYmlsaWRhZCBkaXJlY3RhIGNvbiBlc3RvcyBwcm9jZXNvcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MjU4Cittc2dpZCAiIgorIkRvIG5vdCBhdHRlbXB0IHRvIHVzZSBqdXN0IEI8ZHBrZy1kZWI+IHRvIGluc3RhbGwgc29mdHdhcmUhIFlvdSBtdXN0IHVzZSAiCisiQjxkcGtnPiBwcm9wZXIgdG8gZW5zdXJlIHRoYXQgYWxsIHRoZSBmaWxlcyBhcmUgY29ycmVjdGx5IHBsYWNlZCBhbmQgdGhlICIKKyJwYWNrYWdlJ3Mgc2NyaXB0cyBydW4gYW5kIGl0cyBzdGF0dXMgYW5kIGNvbnRlbnRzIHJlY29yZGVkLiIKK21zZ3N0ciAiIgorIsKhTm8gdXNlIEI8ZHBrZy1kZWI+IHBhcmEgaW5zdGFsYXIgc29mdHdhcmUhIERlYmUgdXNhciBCPGRwa2c+IHBhcmEgYXNlZ3VyYXIgIgorInF1ZSB0b2RvcyBsb3MgZmljaGVyb3Mgc2UgaW5zdGFsYW4gZW4gZWwgc2l0aW8gY29ycmVjdG8sIGxvcyBzY3JpcHRzIGRlbCAiCisicGFxdWV0ZSBzZSBlamVjdXRlbiB5IHF1ZSBzZSByZWdpc3RyZW4gbG9zIGNvbnRlbmlkb3MgeSBlc3RhZG8gZWwgZGUgw6lzdGUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjI2NAorbXNnaWQgIkI8ZGViPig1KSwgQjxkZWItY29udHJvbD4oNSksIEI8ZHBrZz4oMSksIEI8ZHNlbGVjdD4oMSkuIgorbXNnc3RyICJCPGRlYj4oNSksIEI8ZGViLWNvbnRyb2w+KDUpLCBCPGRwa2c+KDEpLCBCPGRzZWxlY3Q+KDEpLiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctZGl2ZXJ0Ljg6MQorIywgbm8td3JhcAorbXNnaWQgImRwa2ctZGl2ZXJ0IgorbXNnc3RyICJkcGtnLWRpdmVydCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo0Cittc2dpZCAiZHBrZy1kaXZlcnQgLSBvdmVycmlkZSBhIHBhY2thZ2UncyB2ZXJzaW9uIG9mIGEgZmlsZSIKK21zZ3N0ciAiZHBrZy1kaXZlcnQgLSBSZWRlZmluZSBsYSB2ZXJzacOzbiBkZSB1biBmaWNoZXJvIGRlbCBwYXF1ZXRlIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjkKKyMsIGZ1enp5CisjfCBtc2dpZCAiQjxkcGtnLWRpdmVydD4gW0k8b3B0aW9ucz5dIEk8Y29tbWFuZD4iCittc2dpZCAiQjxkcGtnLWRpdmVydD4gW0k8b3B0aW9uPi4uLl0gSTxjb21tYW5kPiIKK21zZ3N0ciAiQjxkcGtnLWRpdmVydD4gW0k8b3BjaW9uZXM+XSBJPG9yZGVuPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODoxMworbXNnaWQgIiIKKyJCPGRwa2ctZGl2ZXJ0PiBpcyB0aGUgdXRpbGl0eSB1c2VkIHRvIHNldCB1cCBhbmQgdXBkYXRlIHRoZSBsaXN0IG9mICIKKyJkaXZlcnNpb25zLiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1kaXZlcnQ+IGVzIHVuYSBoZXJyYW1pZW50YSBwYXJhIGNvbmZpZ3VyYXIgeSBhY3R1YWxpemFyIGxhIGxpc3RhIGRlICIKKyJyZWRpcmVjY2lvbmVzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODoyMworbXNnaWQgIiIKKyJGaWxlIEk8ZGl2ZXJzaW9ucz4gYXJlIGEgd2F5IG9mIGZvcmNpbmcgQjxkcGtnPigxKSAgbm90IHRvIGluc3RhbGwgYSBmaWxlICIKKyJpbnRvIGl0cyBsb2NhdGlvbiwgYnV0IHRvIGEgSTxkaXZlcnRlZD4gbG9jYXRpb24uIERpdmVyc2lvbnMgY2FuIGJlIHVzZWQgIgorInRocm91Z2ggdGhlIERlYmlhbiBwYWNrYWdlIHNjcmlwdHMgdG8gbW92ZSBhIGZpbGUgYXdheSB3aGVuIGl0IGNhdXNlcyBhICIKKyJjb25mbGljdC4gU3lzdGVtIGFkbWluaXN0cmF0b3JzIGNhbiBhbHNvIHVzZSBpdCB0byBvdmVycmlkZSBzb21lIHBhY2thZ2UncyAiCisiY29uZmlndXJhdGlvbiBmaWxlLCBvciB3aGVuZXZlciBzb21lIGZpbGVzICh3aGljaCBhcmVuJ3QgbWFya2VkIGFzICIKKyInY29uZmZpbGVzJykgbmVlZCB0byBiZSBwcmVzZXJ2ZWQgYnkgZHBrZywgd2hlbiBpbnN0YWxsaW5nIGEgbmV3ZXIgdmVyc2lvbiAiCisib2YgYSBwYWNrYWdlIHdoaWNoIGNvbnRhaW5zIHRob3NlIGZpbGVzLiIKK21zZ3N0ciAiIgorIkxhIEk8cmVkaXJlY2Npw7NuPiAowqtkaXZlcnNpb27CuykgZGUgZmljaGVyb3MgZXMgdW5hIGZvcm1hIGRlIGV2aXRhciBxdWUgZHBrZyAiCisiaW5zdGFsZSB1biBmaWNoZXJvIGVuIHN1IHViaWNhY2nDs24sIHNpbm8gcXVlIGxvIGluc3RhbGUgZW4gdW5hIHViaWNhY2nDs24gIgorIkk8cmVkaXJpZ2lkYT4uIExhcyByZWRpcmVjY2lvbmVzIHNlIHB1ZWRlbiB1c2FyIGEgdHJhdsOpcyBkZSBsb3Mgc2NyaXB0cyBlbiAiCisibG9zIHBhcXVldGVzIERlYmlhbiBwYXJhIG1vdmVyIHVuIGZpY2hlcm8gY3VhbmRvIGNhdXNhIHVuIGNvbmZsaWN0by4gTG9zICIKKyJhZG1pbmlzdHJhZG9yZXMgZGUgc2lzdGVtYSBwdWVkZW4gdXNhcmxvIHRhbWJpw6luIHBhcmEgcmVkZWZpbmlyIGVsIGZpY2hlcm8gIgorImRlIGNvbmZpZ3VyYWNpw7NuIGRlIGFsZ8O6biBwYXF1ZXRlLCBvIGN1YW5kbyBhbGd1bm9zIGZpY2hlcm9zIChxdWUgbm8gZXN0w6FuICIKKyJtYXJjYWRvcyBjb21vIMKrY29uZmZpbGVzwrspIGRlYmVuIHNlciBwcmVzZXJ2YWRvcyBwb3IgZHBrZyBzaSBzZSBpbnN0YWxhIHVuYSAiCisidmVyc2nDs24gbnVldmEgZGVsIHBhcXVldGUgcXVlIGNvbnRpZW5lIGVzdG9zIGZpY2hlcm9zLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGl2ZXJ0Ljg6MjUKKyMsIG5vLXdyYXAKK21zZ2lkICJbQjwtLWFkZD5dIEk8ZmlsZT4iCittc2dzdHIgIltCPC0tYWRkPl0gSTxmaWNoZXJvPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODoyOAorbXNnaWQgIkFkZCBhIGRpdmVyc2lvbiBmb3IgSTxmaWxlPi4iCittc2dzdHIgIkHDsWFkZSB1bmEgcmVkaXJlY2Npw7NuIHBhcmEgZWwgSTxmaWNoZXJvPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRpdmVydC44OjI4IGRwa2ctc3RhdG92ZXJyaWRlLjg6MzUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tcmVtb3ZlPkk8IGZpbGU+IgorbXNnc3RyICJCPC0tcmVtb3ZlPkk8IGZpY2hlcm8+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjMxCittc2dpZCAiUmVtb3ZlIGEgZGl2ZXJzaW9uIGZvciBJPGZpbGU+LiIKK21zZ3N0ciAiRWxpbWluYSB1bmEgcmVkaXJlY2Npw7NuIHBhcmEgZWwgSTxmaWNoZXJvPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRpdmVydC44OjMxCisjLCBuby13cmFwCittc2dpZCAiQjwtLWxpc3Q+STwgZ2xvYi1wYXR0ZXJuPiIKK21zZ3N0ciAiQjwtLWxpc3Q+STwgY29tb2TDrW4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjM0Cittc2dpZCAiTGlzdCBkaXZlcnNpb25zIG1hdGNoaW5nIEk8Z2xvYi1wYXR0ZXJuPi4iCittc2dzdHIgIkxpc3RhIGxhcyByZWRpcmVjY2lvbmVzIHF1ZSBlbmNhamFuIGNvbiBlbCBJPGNvbW9kw61uPiAocGF0csOzbiDCq2dsb2LCuykuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kaXZlcnQuODozNAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1saXN0cGFja2FnZT5JPCBmaWxlPiIKK21zZ3N0ciAiQjwtLWxpc3RwYWNrYWdlPkk8IGZpY2hlcm8+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjM4Cittc2dpZCAiIgorIlByaW50IHRoZSBuYW1lIG9mIHRoZSBwYWNrYWdlIHRoYXQgZGl2ZXJ0cyBJPGZpbGU+LiAgUHJpbnRzIExPQ0FMIGlmIEk8ZmlsZT4gIgorImlzIGxvY2FsbHkgZGl2ZXJ0ZWQgYW5kIG5vdGhpbmcgaWYgSTxmaWxlPiBpcyBub3QgZGl2ZXJ0ZWQuIgorbXNnc3RyICIiCisiTXVlc3RyYSBlbCBub21icmUgZGVsIHBhcXVldGUgcXVlIHJlZGlyaWdlIGFsIEk8ZmljaGVybz4uIE11ZXN0cmEgwqtMT0NBTMK7IHNpICIKKyJlbCBmaWNoZXJvIGVzdMOhIHJlZGlyaWdpZG8gbG9jYWxtZW50ZSwgeSBuYWRhIHNpIGVsIEk8ZmljaGVybz4gbm8gZXN0w6EgIgorInJlZGlyaWdpZG8uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kaXZlcnQuODozOAorIywgbm8td3JhcAorbXNnaWQgIkI8LS10cnVlbmFtZT5JPCBmaWxlPiIKK21zZ3N0ciAiQjwtLXRydWVuYW1lPkk8IGZpY2hlcm8+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjQxCittc2dpZCAiUHJpbnQgdGhlIHJlYWwgbmFtZSBmb3IgYSBkaXZlcnRlZCBmaWxlLiIKK21zZ3N0ciAiTXVlc3RyYSBlbCBub21icmUgcmVhbCBkZWwgZmljaGVybyByZWRpcmlnaWRvLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGl2ZXJ0Ljg6NDMgZHBrZy1zdGF0b3ZlcnJpZGUuODo1MiBkc2VsZWN0LjE6NDQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMjgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tYWRtaW5kaXI+STwgZGlyZWN0b3J5PiIKK21zZ3N0ciAiQjwtLWFkbWluZGlyPkk8IGRpcmVjdG9yaW8+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjQ2Cittc2dpZCAiIgorIlNldCB0aGUgZHBrZyBkYXRhIGRpcmVjdG9yeSB0byBJPGRpcmVjdG9yeT4gKGRlZmF1bHQ6IEk8L3Zhci9saWIvZHBrZz4pLiIKK21zZ3N0ciAiIgorIkRlZmluZSBlbCBkaXJlY3RvcmlvIGRlIGRhdG9zIGRlIGRwa2cgY29tbyBJPGRpcmVjdG9yaW8+IChwb3Igb21pc2nDs246IEk8LyIKKyJ2YXIvbGliL2Rwa2c+KS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRpdmVydC44OjQ2CisjLCBuby13cmFwCittc2dpZCAiQjwtLWRpdmVydD5JPCBkaXZlcnQtdG8+IgorbXNnc3RyICJCPC0tZGl2ZXJ0Pkk8IHJlZGlyaWdpci1hPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo1MAorbXNnaWQgIiIKKyJJPGRpdmVydC10bz4gaXMgdGhlIGxvY2F0aW9uIHdoZXJlIHRoZSB2ZXJzaW9ucyBvZiBJPGZpbGU+LCBhcyBwcm92aWRlZCBieSAiCisib3RoZXIgcGFja2FnZXMsIHdpbGwgYmUgZGl2ZXJ0ZWQuIgorbXNnc3RyICIiCisiSTxyZWRpcmlnaXItYT4gZXMgbGEgdWJpY2FjacOzbiBkb25kZSBsYXMgdmVyc2lvbmVzIGRlbCBJPGZpY2hlcm8+LCB0YWwgeSAiCisiY29tbyBvdHJvcyBwYXF1ZXRlcyBsbyBvZnJlY2VuLCBzZSByZWRpcmlnaXLDoS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRpdmVydC44OjUwCisjLCBuby13cmFwCittc2dpZCAiQjwtLWxvY2FsPiIKK21zZ3N0ciAiQjwtLWxvY2FsPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo1NgorbXNnaWQgIiIKKyJTcGVjaWZpZXMgdGhhdCBhbGwgcGFja2FnZXMnIHZlcnNpb25zIG9mIHRoaXMgZmlsZSBhcmUgZGl2ZXJ0ZWQuICBUaGlzICIKKyJtZWFucywgdGhhdCB0aGVyZSBhcmUgbm8gZXhjZXB0aW9ucywgYW5kIHdoYXRldmVyIHBhY2thZ2UgaXMgaW5zdGFsbGVkLCB0aGUgIgorImZpbGUgaXMgZGl2ZXJ0ZWQuIFRoaXMgY2FuIGJlIHVzZWQgYnkgYW4gYWRtaW4gdG8gaW5zdGFsbCBhIGxvY2FsbHkgbW9kaWZpZWQgIgorInZlcnNpb24uIgorbXNnc3RyICIiCisiRXNwZWNpZmljYSBxdWUgdG9kYXMgbGFzIHZlcnNpb25lcyBkZSBsb3MgcGFxdWV0ZXMgZGUgZXN0ZSBmaWNoZXJvIHNlICIKKyJyZWRpcmlnaXLDoW4uIEVzdG8gZXMsIHNpbiBleGNlcGNpb25lcywgeSBzaW4gaW1wb3J0YXIgcXXDqSBwYXF1ZXRlIGVzdMOhICIKKyJpbnN0YWxhZG8sIGVsIGZpY2hlcm8gc2UgcmVkaXJpZ2lyw6EuIEVsIGFkbWluaXN0cmFkb3IgZGVsIHNpc3RlbWEgcHVlZGUgdXNhciAiCisiZXN0byBwYXJhIGluc3RhbGFyIHVuYSB2ZXJzacOzbiBtb2RpZmljYWRhIGxvY2FsbWVudGUuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kaXZlcnQuODo1NgorIywgbm8td3JhcAorbXNnaWQgIkI8LS1wYWNrYWdlPkk8IHBhY2thZ2U+IgorbXNnc3RyICJCPC0tcGFja2FnZT5JPCBwYXF1ZXRlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo2MQorbXNnaWQgIiIKKyJJPHBhY2thZ2U+IGlzIHRoZSBuYW1lIG9mIGEgcGFja2FnZSB3aG9zZSBjb3B5IG9mIEk8ZmlsZT4gd2lsbCBub3QgYmUgIgorImRpdmVydGVkLiBpLmUuIEk8ZmlsZT4gd2lsbCBiZSBkaXZlcnRlZCBmb3IgYWxsIHBhY2thZ2VzIGV4Y2VwdCBJPHBhY2thZ2U+LiIKK21zZ3N0ciAiIgorIkU8bHQ+cGFxdWV0ZUU8Z3Q+IGVzIGVsIG5vbWJyZSBkZSB1biBwYXF1ZXRlIGN1eWEgY29waWEgZGVsIEk8ZmljaGVybz4gbm8gc2UgIgorInJlZGlyaWdpcsOhLiBQb3IgZWplbXBsbywgZWwgSTxmaWNoZXJvPiBzZSByZWRpcmlnaXLDoSBwYXJhIHRvZG9zIGxvcyBwYXF1ZXRlcyAiCisiYSBleGNlcGNpw7NuIGRlIEk8cGFxdWV0ZT4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kaXZlcnQuODo2MSBkcGtnLXN0YXRvdmVycmlkZS44OjY0IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozNTAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tcXVpZXQ+IgorbXNnc3RyICJCPC0tcXVpZXQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjY0Cittc2dpZCAiUXVpZXQgbW9kZSwgaS5lLiBubyB2ZXJib3NlIG91dHB1dC4iCittc2dzdHIgIk1vZG8gc2lsZW5jaW9zbywgZXN0byBlczogc2luIGluZm9ybWFjacOzbiBkZXRhbGxhZGEuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kaXZlcnQuODo2NAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1yZW5hbWU+IgorbXNnc3RyICJCPC0tcmVuYW1lPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo2OAorbXNnaWQgIiIKKyJBY3R1YWxseSBtb3ZlIHRoZSBmaWxlIGFzaWRlIChvciBiYWNrKS4gQjxkcGtnLWRpdmVydD4gd2lsbCBhYm9ydCBvcGVyYXRpb24gIgorImluIGNhc2UgdGhlIGRlc3RpbmF0aW9uIGZpbGUgYWxyZWFkeSBleGlzdHMuIgorbXNnc3RyICIiCisiTXVldmUgZWwgYXJjaGl2byBhIHVuIGxhZG8gKG8gYXRyw6FzKS4gQjxkcGtnLWRpdmVydD4gaW50ZXJydW1waXLDoSBsYSAiCisib3BlcmFjacOzbiBlbiBjYXNvIGRlIHF1ZSBlbCBmaWNoZXJvIGRlc3Rpbm8geWEgZXhpc3RhLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGl2ZXJ0Ljg6NjgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tdGVzdD4iCittc2dzdHIgIkI8LS10ZXN0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo3MQorbXNnaWQgIlRlc3QgbW9kZSwgaS5lLiBkb24ndCBhY3R1YWxseSBwZXJmb3JtIGFueSBjaGFuZ2VzLCBqdXN0IGRlbW9uc3RyYXRlLiIKK21zZ3N0ciAiIgorIk1vZG8gZGUgcHJ1ZWJhLCBlc3RvIGVzLCBubyByZWFsaXphIG5pbmfDum4gY2FtYmlvLCBzw7NsbyBtdWVzdHJhIHN1IGVqZWN1Y2nDs24uIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1kaXZlcnQuODo3OAorIywgbm8td3JhcAorbXNnaWQgIk5PVEVTIgorbXNnc3RyICJOT1RBUyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo4MgorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiV2hlbiBhZGRpbmcsIGRlZmF1bHQgaXMgQjwtLWxvY2FsPiBhbmQgQjwtLWRpdmVydD4gSTxFPGx0Pm9yaWdpbmFsRTxndD4uIgorI3wgImRpc3RyaWI+LiBXaGVuIHJlbW92aW5nLCBCPC0tcGFja2FnZT4gb3IgQjwtLWxvY2FsPiBhbmQgQjwtLWRpdmVydD4gbXVzdCAiCisjfCAibWF0Y2ggaWYgc3BlY2lmaWVkLiIKK21zZ2lkICIiCisiV2hlbiBhZGRpbmcsIGRlZmF1bHQgaXMgQjwtLWxvY2FsPiBhbmQgQjwtLWRpdmVydD4gSTxvcmlnaW5hbD5CPC5kaXN0cmliPi4gIgorIldoZW4gcmVtb3ZpbmcsIEI8LS1wYWNrYWdlPiBvciBCPC0tbG9jYWw+IGFuZCBCPC0tZGl2ZXJ0PiBtdXN0IG1hdGNoIGlmICIKKyJzcGVjaWZpZWQuIgorbXNnc3RyICIiCisiQWwgYcOxYWRpciByZWRpcmVjY2lvbmVzIHBvciBvbWlzacOzbiBzZSB1c2EgQjwtLWxvY2FsPiB5IEI8LS1kaXZlcnQ+ICIKKyJJPEU8bHQ+b3JpZ2luYWxFPGd0Pi5kaXN0cmliPi4gQWwgZWxpbWluYXIsIEI8LS1wYWNrYWdlPiBvIEI8LS1sb2NhbD4geSBCPC0tIgorImRpdmVydD4gZGViZW4gY29pbmNpZGlyIGVuIGNhc28gZGUgZGVmaW5pcnNlLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo4NAorbXNnaWQgIkRpcmVjdG9yaWVzIGNhbid0IGJlIGRpdmVydGVkIHdpdGggQjxkcGtnLWRpdmVydD4uIgorbXNnc3RyICJMb3MgZGlyZWN0b3Jpb3Mgbm8gc2UgcHVlZGVuIHJlZGlyaWdpciBjb24gQjxkcGtnLWRpdmVydD4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjkwCittc2dpZCAiIgorIkNhcmUgc2hvdWxkIGJlIHRha2VuIHdoZW4gZGl2ZXJ0aW5nIHNoYXJlZCBsaWJyYXJpZXMsIEI8bGRjb25maWc+KDgpICAiCisiY3JlYXRlcyBhIHN5bWJvbGljIGxpbmsgYmFzZWQgb24gdGhlIERUX1NPTkFNRSBmaWVsZCBlbWJlZGRlZCBpbiB0aGUgIgorImxpYnJhcnkuICBCZWNhdXNlIGxkY29uZmlnIGRvZXNuJ3QgaG9ub3VyIGRpdmVydHMgKG9ubHkgZHBrZyBkb2VzKSwgdGhlICIKKyJzeW1saW5rIG1heSBlbmQgdXAgcG9pbnRpbmcgYXQgdGhlIGRpdmVydGVkIGxpYnJhcnksIGlmIGEgZGl2ZXJ0ZWQgbGlicmFyeSAiCisiaGFzIHRoZSBzYW1lIFNPTkFNRSBhcyB0aGUgdW5kaXZlcnRlZCBvbmUuIgorbXNnc3RyICIiCisiRGViZSB0ZW5lciBjdWlkYWRvIGFsIHJlZGlyZWNjaW9uYXIgYmlibGlvdGVjYXMgY29tcGFydGlkYXMsIEI8bGRjb25maWc+ICg4KSAiCisiY3JlYSB1biBlbmxhY2Ugc2ltYsOzbGljbyBiYXNhZG8gZW4gZWwgY2FtcG8gwqtEVF9TT05BTUXCuyBpbnRlZ3JhZG8gZW4gbGEgIgorImJpYmxpb3RlY2EuIFlhIHF1ZSBsZGNvbmZpZyBubyByZXNwZXRhIGxhcyByZWRpcmVjY2lvbmVzIChzw7NsbyBkcGtnIGxvICIKKyJoYWNlKSwgc2kgdW5hIGJpYmxpb3RlY2EgcmVkaXJpZ2lkYSB0aWVuZSBlbCBtaXNtbyDCq1NPTkFNRcK7IHF1ZSBsYSBxdWUgbm8gIgorImVzdMOhIHJlZGlyaWdpZGEsIGVzIHBvc2libGUgcXVlIGVsIGVubGFjZSBzaW1iw7NsaWNvIGFjYWJlIGFwdW50YW5kbyBhIGxhICIKKyJiaWJsaW90ZWNhIHJlZGlyaWdpZGEuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44Ojk1Cittc2dpZCAiIgorIlRvIGRpdmVydCBhbGwgY29waWVzIG9mIGEgSTwvdXNyL2Jpbi9leGFtcGxlPiB0byBJPC91c3IvYmluL2V4YW1wbGUuZm9vPiwgaS4iCisiZS4gZGlyZWN0cyBhbGwgcGFja2FnZXMgcHJvdmlkaW5nIEk8L3Vzci9iaW4vZXhhbXBsZT4gdG8gaW5zdGFsbCBpdCBhcyBJPC8iCisidXNyL2Jpbi9leGFtcGxlLmZvbz4sIHBlcmZvcm1pbmcgdGhlIHJlbmFtZSBpZiByZXF1aXJlZDoiCittc2dzdHIgIiIKKyJQYXJhIHJlZGlyZWNjaW9uYXIgdG9kYXMgbGFzIGNvcGlhcyBkZSBJPC91c3IvYmluL2VqZW1wbG8+IGEgSTwvdXNyL2Jpbi8iCisiZWplbXBsby5mb28+OyBoYXLDoSBxdWUgdG9kb3MgbG9zIHBhcXVldGVzIHF1ZSBwcm92ZWFuIEk8L3Vzci9iaW4vZWplbXBsbz4gbG8gIgorImluc3RhbGVuIGNvbW8gSTwvdXNyL2Jpbi9lamVtcGxvLmZvbz4sIHJlbm9tYnJhbmRvIGVsIGZpY2hlcm8gZW4gY2FzbyBkZSBzZXIgIgorIm5lY2VzYXJpby4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6OTcKK21zZ2lkICJkcGtnLWRpdmVydCAtLWRpdmVydCAvdXNyL2Jpbi9leGFtcGxlLmZvbyAtLXJlbmFtZSAvdXNyL2Jpbi9leGFtcGxlIgorbXNnc3RyICJkcGtnLWRpdmVydCAtLWRpdmVydCAvdXNyL2Jpbi9lamVtcGxvLmZvbyAtLXJlbmFtZSAvdXNyL2Jpbi9lamVtcGxvIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44Ojk5IGRwa2ctZGl2ZXJ0Ljg6MTA5Cittc2dpZCAiVG8gcmVtb3ZlIHRoYXQgZGl2ZXJzaW9uOiIKK21zZ3N0ciAiUGFyYSBlbGltaW5hciBlc2EgcmVkaXJlY2Npw7NuOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODoxMDEKK21zZ2lkICJkcGtnLWRpdmVydCAtLXJlbmFtZSAtLXJlbW92ZSAvdXNyL2Jpbi9leGFtcGxlIgorbXNnc3RyICJkcGtnLWRpdmVydCAtLXJlbmFtZSAtLXJlbW92ZSAvdXNyL2Jpbi9lamVtcGxvIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjEwNQorbXNnaWQgIiIKKyJUbyBkaXZlcnQgYW55IHBhY2thZ2UgdHJ5aW5nIHRvIGluc3RhbGwgSTwvdXNyL2Jpbi9leGFtcGxlPiB0byBJPC91c3IvYmluLyIKKyJleGFtcGxlLmZvbz4sIGV4Y2VwdCB5b3VyIG93biBJPHdpYmJsZT4gcGFja2FnZToiCittc2dzdHIgIiIKKyJQYXJhIHJlZGlyZWNjaW9uYXIgY3VhbHF1aWVyIHBhcXVldGUgcXVlIGluc3RhbGUgSTwvdXNyL2Jpbi9lamVtcGxvPiBjb21vIEk8LyIKKyJ1c3IvYmluL2VqZW1wbG8uZm9vPiwgYSBleGNlcGNpw7NuIGRlIHN1IHByb3BpbyBwYXF1ZXRlIEk8d2liYmxlPi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6MTA3Cittc2dpZCAiIgorImRwa2ctZGl2ZXJ0IC0tcGFja2FnZSB3aWJibGUgLS1kaXZlcnQgL3Vzci9iaW4vZXhhbXBsZS5mb28gLS1yZW5hbWUgL3Vzci9iaW4vIgorImV4YW1wbGUiCittc2dzdHIgIiIKKyJkcGtnLWRpdmVydCAtLXBhY2thZ2Ugd2liYmxlIC0tZGl2ZXJ0IC91c3IvYmluL2VqZW1wbG8uZm9vIC0tcmVuYW1lIC91c3IvYmluLyIKKyJlamVtcGxvIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjExMQorbXNnaWQgImRwa2ctZGl2ZXJ0IC0tcGFja2FnZSB3aWJibGUgLS1yZW5hbWUgLS1yZW1vdmUgL3Vzci9iaW4vZXhhbXBsZSIKK21zZ3N0ciAiZHBrZy1kaXZlcnQgLS1wYWNrYWdlIHdpYmJsZSAtLXJlbmFtZSAtLXJlbW92ZSAvdXNyL2Jpbi9lamVtcGxvIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kaXZlcnQuODoxMTMgZHBrZy1xdWVyeS4xOjIwNSBkcGtnLXN0YXRvdmVycmlkZS44OjY5IGRwa2ctdHJpZ2dlci4xOjYxCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzU1CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8RFBLR19MSUJESVI+IgorbXNnaWQgIkI8RFBLR19BRE1JTkRJUj4iCittc2dzdHIgIkI8RFBLR19MSUJESVI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjExNyBkcGtnLXF1ZXJ5LjE6MjA5IGRwa2ctc3RhdG92ZXJyaWRlLjg6NzMgZHBrZy10cmlnZ2VyLjE6NjUKK21zZ2lkICIiCisiSWYgc2V0IGFuZCB0aGUgQjwtLWFkbWluZGlyPiBvcHRpb24gaGFzIG5vdCBiZWVuIHNwZWNpZmllZCwgaXQgd2lsbCBiZSB1c2VkICIKKyJhcyB0aGUgZHBrZyBkYXRhIGRpcmVjdG9yeS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODoxMjEKK21zZ2lkICIiCisiSWYgc2V0IGFuZCB0aGUgQjwtLWxvY2FsPiBhbmQgQjwtLXBhY2thZ2U+IG9wdGlvbnMgaGF2ZSBub3QgYmVlbiBzcGVjaWZpZWQsICIKKyJCPGRwa2ctZGl2ZXJ0PiB3aWxsIHVzZSBpdCBhcyB0aGUgcGFja2FnZSBuYW1lLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kaXZlcnQuODoxMjMKKyMsIG5vLXdyYXAKK21zZ2lkICJJPC92YXIvbGliL2Rwa2cvZGl2ZXJzaW9ucz4iCittc2dzdHIgIkk8L3Zhci9saWIvZHBrZy9kaXZlcnNpb25zPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODoxMjgKK21zZ2lkICIiCisiRmlsZSB3aGljaCBjb250YWlucyB0aGUgY3VycmVudCBsaXN0IG9mIGRpdmVyc2lvbnMgb2YgdGhlIHN5c3RlbS4gSXQgaXMgIgorImxvY2F0ZWQgaW4gdGhlIGRwa2cgYWRtaW5pc3RyYXRpb24gZGlyZWN0b3J5LCBhbG9uZyB3aXRoIG90aGVyIGZpbGVzICIKKyJpbXBvcnRhbnQgdG8gZHBrZywgc3VjaCBhcyBJPHN0YXR1cz4gb3IgSTxhdmFpbGFibGU+LiIKK21zZ3N0ciAiIgorIkVsIGZpY2hlcm8gcXVlIGNvbnRpZW5lIGxhIGxpc3RhIGFjdHVhbCBkZSByZWRpcmVjY2lvbmVzIGVuIGVsIHNpc3RlbWEuIEVzdMOhICIKKyJ1YmljYWRvIGVuIGVsIGRpcmVjdG9yaW8gZGUgYWRtaW5pc3RyYWNpw7NuIGRlIGRwa2csIGFzw60gY29tbyBvdHJvcyBmaWNoZXJvcyAiCisiaW1wb3J0YW50ZXMgcGFyYSBkcGtnLCBjb21vIEk8c3RhdHVzPiBvIEk8YXZhaWxhYmxlPi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6MTMxCittc2dpZCAiIgorIk5vdGU6IEI8ZHBrZy1kaXZlcnQ+IHByZXNlcnZlcyB0aGUgb2xkIGNvcHkgb2YgdGhpcyBmaWxlLCB3aXRoIGV4dGVuc2lvbiBJPC0iCisib2xkPiwgYmVmb3JlIHJlcGxhY2luZyBpdCB3aXRoIHRoZSBuZXcgb25lLiIKK21zZ3N0ciAiIgorIk5vdGE6IEI8ZHBrZy1kaXZlcnQ+IHByZXNlcnZhIGxhIGNvcGlhIGFudGlndWEgZGUgZXN0ZSBhcmNoaXZvLCBpbnNlcnRhbmRvICIKKyJsYSBleHRlbnNpw7NuIEk8LW9sZD4gYW50ZXMgZGUgcmVlbXBsYXphcmxvIGNvbiB1bm8gbnVldm8uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjEzNyB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDk2Cittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDE5OTUgSWFuIEphY2tzb24iCittc2dzdHIgIkNvcHlyaWdodCBcXChjbyAxOTk1IElhbiBKYWNrc29uIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6MQorIywgbm8td3JhcAorbXNnaWQgImRwa2ctZ2VuY2hhbmdlcyIKK21zZ3N0ciAiZHBrZy1nZW5jaGFuZ2VzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMTo0Cittc2dpZCAiZHBrZy1nZW5jaGFuZ2VzIC0gZ2VuZXJhdGUgRGViaWFuIC5jaGFuZ2VzIGZpbGVzIgorbXNnc3RyICJkcGtnLWdlbmNoYW5nZXMgLSBHZW5lcmFjacOzbiBkZSBmaWNoZXJvcyBkZSBEZWJpYW4gwqsuY2hhbmdlc8K7IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMTo4CisjLCBmdXp6eQorI3wgbXNnaWQgIkI8ZHBrZy1nZW5jaGFuZ2VzPiBbSTxvcHRpb25zPl0iCittc2dpZCAiQjxkcGtnLWdlbmNoYW5nZXM+IFtJPG9wdGlvbj4uLi5dIgorbXNnc3RyICJCPGRwa2ctZ2VuY2hhbmdlcz4gW0k8b3BjaW9uZXM+XSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6MTYKK21zZ2lkICIiCisiQjxkcGtnLWdlbmNoYW5nZXM+IHJlYWRzIGluZm9ybWF0aW9uIGZyb20gYW4gdW5wYWNrZWQgYW5kIGJ1aWx0IERlYmlhbiAiCisic291cmNlIHRyZWUgYW5kIGZyb20gdGhlIGZpbGVzIGl0IGhhcyBnZW5lcmF0ZWQgYW5kIGdlbmVyYXRlcyBhIERlYmlhbiAiCisidXBsb2FkIGNvbnRyb2wgZmlsZSAoQjwuY2hhbmdlcz4gZmlsZSkuIgorbXNnc3RyICIiCisiQjxkcGtnLWdlbmNoYW5nZXM+IGxlZSBsYSBpbmZvcm1hY2nDs24gZGUgdW4gw6FyYm9sIGRlIGZ1ZW50ZXMgZGUgRGViaWFuICIKKyJkZXNlbXBhcXVldGFkbyB5IGNvbnN0cnVpZG8sIGFzw60gY29tbyBkZSBsb3MgZmljaGVyb3MgcXVlIGhhIGdlbmVyYWRvLCB5ICIKKyJjcmVhIHVuIGZpY2hlcm8gZGUgY29udHJvbCBkZSBzdWJpZGEgZGUgRGViaWFuLCBlbCBmaWNoZXJvIEI8LmNoYW5nZXM+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjE4CisjLCBuby13cmFwCittc2dpZCAiQjwtYj4sIEI8LUI+LCBCPC1BPiIKK21zZ3N0ciAiQjwtYj4sIEI8LUI+LCBCPC1BPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6MjcKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRoYXQgYSBiaW5hcnktb25seSBidWlsZCBpcyB0YWtpbmcgcGxhY2UgKG5vIHNvdXJjZSBmaWxlcyBhcmUgdG8gIgorImJlIGluY2x1ZGVkKS4gVGhlcmUncyBubyBkaXN0aW5jdGlvbiBiZXR3ZWVuIEI8LWI+LCBCPC1CPiBhbmQgQjwtQT4sIHRoZSAiCisicHJvZHVjZWQgQjwuY2hhbmdlcz4gZmlsZSB3aWxsIGluY2x1ZGUgd2hhdGV2ZXIgZmlsZXMgd2VyZSBjcmVhdGVkIGJ5IHRoZSAiCisiQjxiaW5hcnktKj4gdGFyZ2V0KHMpIG9mIHRoZSBwYWNrYWdlIGJlaW5nIGJ1aWx0LiIKK21zZ3N0ciAiIgorIkRlZmluZSBxdWUgc8OzbG8gc2UgdmEgYSByZWFsaXphciB1bmEgY29uc3RydWNjacOzbiBiaW5hcmlhIChubyBzZSBpbmNsdXllbiAiCisibG9zIGZpY2hlcm9zIGRlIGZ1ZW50ZSkuIE5vIGhheSBkaWZlcmVuY2lhcyBlbnRyZSBCPC1iPiwgQjwtQj4geSBCPC1BPiwgeSBlbCAiCisiZmljaGVybyBCPC5jaGFuZ2VzPiBpbmNsdWlyw6EgYXF1ZWxsb3MgZmljaGVyb3MgY3JlYWRvcyBtZWRpYW50ZSBlbCBvIGxvcyAiCisiwqt0YXJnZXTCuyBkZSBtYWtlIGJpbmFyaW9zIChCPGJpbmFyeS0qPikgZGVsIHBhcXVldGUgYSBjb25zdHJ1aXIuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMTozMQorbXNnaWQgIiIKKyJTcGVjaWZpZXMgdGhhdCBvbmx5IHRoZSBzb3VyY2Ugc2hvdWxkIGJlIHVwbG9hZGVkIChubyBiaW5hcnkgcGFja2FnZXMgd2lsbCAiCisiYmUgaW5jbHVkZWQpLiIKK21zZ3N0ciAiIgorIkRlZmluZSBxdWUgc8OzbG8gc2UgZGViZW4gc3ViaXIgbGFzIGZ1ZW50ZXMgKG5vIHNlIGluY2x1aXLDoW4gcGFxdWV0ZXMgIgorImJpbmFyaW9zKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjM2Cittc2dpZCAiIgorIlRoZSBCPC1zPkk8eD4gb3B0aW9ucyBjb250cm9sIHdoZXRoZXIgdGhlIG9yaWdpbmFsIHNvdXJjZSBhcmNoaXZlIGlzICIKKyJpbmNsdWRlZCBpbiB0aGUgdXBsb2FkIGlmIGFueSBzb3VyY2UgaXMgYmVpbmcgZ2VuZXJhdGVkIChpLmUuICBCPC1iPiBvciBCPC0iCisiQj4gaGF2ZW4ndCBiZWVuIHVzZWQpLiIKK21zZ3N0ciAiIgorIkxhcyBvcGNpb25lcyBCPC1zPkk8eD4gY29udHJvbGFuIHNpIGVsIGFyY2hpdm8gb3JpZ2luYWwgZGUgbGFzIGZ1ZW50ZXMgc2UgIgorImluY2x1eWUgZW4gbGEgc3ViaWRhIGdlbmVyYWRhLCBlbiBjYXNvIGRlIGdlbmVyYXIgYWxndW5hIGZ1ZW50ZSAocG9yICIKKyJlamVtcGxvLCBzaSBubyBzZSBoYW4gdXNhZG8gQjwtYj4gbyBCPC1CPikuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMTo0MgorbXNnaWQgIiIKKyJCeSBkZWZhdWx0LCBvciBpZiBzcGVjaWZpZWQsIHRoZSBvcmlnaW5hbCBzb3VyY2Ugd2lsbCBiZSBpbmNsdWRlZCBvbmx5IGlmICIKKyJ0aGUgdXBzdHJlYW0gdmVyc2lvbiBudW1iZXIgKHRoZSB2ZXJzaW9uIHdpdGhvdXQgZXBvY2ggYW5kIHdpdGhvdXQgRGViaWFuICIKKyJyZXZpc2lvbikgZGlmZmVycyBmcm9tIHRoZSB1cHN0cmVhbSB2ZXJzaW9uIG51bWJlciBvZiB0aGUgcHJldmlvdXMgY2hhbmdlbG9nICIKKyJlbnRyeS4iCittc2dzdHIgIiIKKyJQb3Igb21pc2nDs24sIG8gc2kgc2UgZXNwZWNpZmljYSwgbGFzIGZ1ZW50ZXMgb3JpZ2luYWxlcyBzZSBpbmNsdWlyw6FuIHNpIGVsICIKKyJuw7ptZXJvIGRlIHZlcnNpw7NuIGRlbCBhdXRvciBvcmlnaW5hbCAobGEgdmVyc2nDs24gc2luIMKrZXBvY2jCuyB5IHNpbiBsYSBwYXJ0ZSAiCisiZGVsIG7Dum1lcm8gZGUgdmVyc2nDs24gcXVlIGNvcnJlc3BvbmRlIGEgbGEgcmV2aXNpw7NuIGRlIERlYmlhbikgZGlmaWVyZSBkZWwgIgorIm7Dum1lcm8gZGUgdmVyc2nDs24gZGUgbGEgZnVlbnRlIG9yaWdpbmFsIGVuIGxhIGVudHJhZGEgZGVsIHJlZ2lzdHJvIGRlICIKKyJjYW1iaW9zLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6NDUKK21zZ2lkICJGb3JjZXMgdGhlIGluY2x1c2lvbiBvZiB0aGUgb3JpZ2luYWwgc291cmNlLiIKK21zZ3N0ciAiRnVlcnphIGxhIGluY2x1c2nDs24gZGUgbGEgZnVlbnRlIG9yaWdpbmFsLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6NDgKK21zZ2lkICJGb3JjZXMgdGhlIGV4Y2x1c2lvbiBvZiB0aGUgb3JpZ2luYWwgc291cmNlIGFuZCBpbmNsdWRlcyBvbmx5IHRoZSBkaWZmLiIKK21zZ3N0ciAiIgorIkZ1ZXJ6YSBsYSBleGNsdXNpw7NuIGRlIGxhIGZ1ZW50ZSBvcmlnaW5hbCB5IHPDs2xvIGluY2x1eWUgZWwgZmljaGVybyBkZSAiCisiZGlmZXJlbmNpYXMgwqsuZGlmZsK7LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6NTQKK21zZ2lkICIiCisiQ2F1c2VzIGNoYW5nZWxvZyBpbmZvcm1hdGlvbiBmcm9tIGFsbCB2ZXJzaW9ucyBzdHJpY3RseSBsYXRlciB0aGFuICIKKyJJPHZlcnNpb24+IHRvIGJlIHVzZWQuIgorbXNnc3RyICIiCisiUHJvdm9jYSBlbCB1c28gZGUgbGEgaW5mb3JtYWNpw7NuIGRlbCByZWdpc3RybyBkZSBjYW1iaW9zIGRlIHRvZGFzIGxhcyAiCisidmVyc2lvbmVzIGVzdHJpY3RhbWVudGUgcG9zdGVyaW9yZXMgYSBJPHZlcnNpw7NuPi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjYwCittc2dpZCAiIgorIlJlYWQgdGhlIGRlc2NyaXB0aW9uIG9mIHRoZSBjaGFuZ2VzIGZyb20gdGhlIGZpbGUgSTxjaGFuZ2VzZGVzY3JpcHRpb24+ICIKKyJyYXRoZXIgdGhhbiB1c2luZyB0aGUgaW5mb3JtYXRpb24gZnJvbSB0aGUgc291cmNlIHRyZWUncyBjaGFuZ2Vsb2cgZmlsZS4iCittc2dzdHIgIiIKKyJMZWUgbGEgZGVzY3JpcGNpw7NuIGRlIGxvcyBjYW1iaW9zIGRlbCBmaWNoZXJvIEk8Y2hhbmdlc2Rlc2NyaXB0aW9uPiBlbiB2ZXogIgorImRlIHVzYXIgbGEgaW5mb3JtYWNpw7NuIGNvbnRlbmlkYSBlbiBlbCBmaWNoZXJvIGRlIGNhbWJpb3MgZGVsIMOhcmJvbCBkZSAiCisiZnVlbnRlcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjY2Cittc2dpZCAiIgorIlVzZSBJPG1haW50YWluZXJhZGRyZXNzPiBhcyB0aGUgbmFtZSBhbmQgZW1haWwgYWRkcmVzcyBvZiB0aGUgbWFpbnRhaW5lciBmb3IgIgorInRoaXMgcGFja2FnZSwgcmF0aGVyIHRoYW4gdXNpbmcgdGhlIGluZm9ybWF0aW9uIGZyb20gdGhlIHNvdXJjZSB0cmVlJ3MgIgorImNvbnRyb2wgZmlsZS4iCittc2dzdHIgIiIKKyJVdGlsaXphIEk8ZGlyZWNjacOzbi1tYW50ZW5lZG9yPiBjb21vIGVsIG5vbWJyZSB5IGRpcmVjY2nDs24gZGUgY29ycmVvIGRlbCAiCisicmVzcG9uc2FibGUgZGUgZXN0ZSBwYXF1ZXRlLCBlbiBsdWdhciBkZSB1c2FyIGxhIGluZm9ybWFjacOzbiBkZWwgZmljaGVybyBkZSAiCisiY29udHJvbCBkZWwgw6FyYm9sIGRlIGZ1ZW50ZXMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMTo3MgorbXNnaWQgIiIKKyJVc2UgSTxtYWludGFpbmVyYWRkcmVzcz4gYXMgdGhlIG5hbWUgYW5kIGVtYWlsIGFkZHJlc3Mgb2YgdGhlIG1haW50YWluZXIgZm9yICIKKyJ0aGlzIHVwbG9hZCwgcmF0aGVyIHRoYW4gdXNpbmcgdGhlIGluZm9ybWF0aW9uIGZyb20gdGhlIHNvdXJjZSB0cmVlJ3MgIgorImNoYW5nZWxvZy4iCittc2dzdHIgIiIKKyJVdGlsaXphIEk8ZGlyZWNjacOzbi1tYW50ZW5lZG9yPiBjb21vIGVsIG5vbWJyZSB5IGRpcmVjY2nDs24gZGUgY29ycmVvIGRlbCAiCisicmVzcG9uc2FibGUgZGUgZXN0YSBzdWJpZGEsIGVuIGx1Z2FyIGRlIHVzYXIgbGEgaW5mb3JtYWNpw7NuIGRlbCByZWdpc3RybyBkZSAiCisiY2FtYmlvcyBkZWwgw6FyYm9sIGRlIGZ1ZW50ZXMuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6NzIgZHBrZy1nZW5jb250cm9sLjE6NDEgZHBrZy1zb3VyY2UuMToxMjcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1WPkk8bmFtZT5CPD0+STx2YWx1ZT4iCittc2dzdHIgIkI8LVY+STxub21icmU+Qjw9Pkk8dmFsb3I+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMTo3NiBkcGtnLXNvdXJjZS4xOjEzMQorbXNnaWQgIiIKKyJTZXQgYW4gb3V0cHV0IHN1YnN0aXR1dGlvbiB2YXJpYWJsZS4gIFNlZSBCPGRlYi1zdWJzdHZhcnM+KDUpIGZvciBhICIKKyJkaXNjdXNzaW9uIG9mIG91dHB1dCBzdWJzdGl0dXRpb24uIgorbXNnc3RyICIiCisiRGVmaW5lIHVuYSB2YXJpYWJsZSBkZSBzdXN0aXR1Y2nDs24gZGUgbGEgc2FsaWRhLiBDb25zdWx0ZSBCPGRlYi1zdWJzdHZhcnM+IgorIig1KSBwYXJhIG3DoXMgaW5mb3JtYWNpw7NuIGFjZXJjYSBkZSBsYSBzdXN0aXR1Y2nDs24gZGUgbGEgc2FsaWRhLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjc2IGRwa2ctZ2VuY29udHJvbC4xOjQ1IGRwa2ctc2hsaWJkZXBzLjE6MTY5CisjOiBkcGtnLXNvdXJjZS4xOjEzMQorIywgbm8td3JhcAorbXNnaWQgIkI8LVQ+STxzdWJzdHZhcnNmaWxlPiIKK21zZ3N0ciAiQjwtVD5JPGZpY2hlcm8tdmFyaWFibGVzLXN1c3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMTo4NgorbXNnaWQgIiIKKyJSZWFkIHN1YnN0aXR1dGlvbiB2YXJpYWJsZXMgaW4gSTxzdWJzdHZhcnNmaWxlPjsgdGhlIGRlZmF1bHQgaXMgQjxkZWJpYW4vIgorInN1YnN0dmFycz4uICBObyB2YXJpYWJsZSBzdWJzdGl0dXRpb24gaXMgZG9uZSBvbiBhbnkgb2YgdGhlIGZpZWxkcyB0aGF0IGFyZSAiCisib3V0cHV0LCBob3dldmVyIHRoZSBzcGVjaWFsIHZhcmlhYmxlIEk8Rm9ybWF0PiB3aWxsIG92ZXJyaWRlIHRoZSBmaWVsZCBvZiAiCisidGhlIHNhbWUgbmFtZS4gVGhpcyBvcHRpb24gY2FuIGJlIHVzZWQgbXVsdGlwbGUgdGltZXMgdG8gcmVhZCBzdWJzdGl0dXRpb24gIgorInZhcmlhYmxlcyBmcm9tIG11bHRpcGxlIGZpbGVzLiIKK21zZ3N0ciAiIgorIkxlZSB2YXJpYWJsZXMgZGUgc3VzdGl0dWNpw7NuIGRlc2RlIGVsIEk8ZmljaGVyby12YXJpYWJsZXMtc3VzdD47IEI8ZGViaWFuLyIKKyJzdWJzdHZhcnM+IGVzIGVsIHZhbG9yIHBvciBvbWlzacOzbi4gTm8gc2UgcmVhbGl6YSBuaW5ndW5hIHN1c3RpdHVjacOzbiBkZSAiCisidmFyaWFibGVzIGVuIG5pbmd1bm8gZGUgbG9zIGNhbXBvcyBxdWUgc29uIHBhcnRlIGRlIGxhIHNhbGlkYS4gUG9yIG90cmEgIgorInBhcmEsIGxhIHZhcmlhYmxlIGVzcGVjaWFsIEk8Rm9ybWF0PiBzb2JyZWVzY3JpYmlyw6EgZWwgY2FtcG8gZGVsIG1pc21vICIKKyJub21icmUuIFB1ZWRlIHVzYXIgZXN0YSBvcGNpw7NuIHZhcmlhcyB2ZWNlcyBwYXJhIGxlZXIgdmFyaWFibGVzIGRlICIKKyJzdXN0aXR1Y2nDs24gZGUgdmFyaW9zIGZpY2hlcm9zLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjg3IGRwa2ctZ2VuY29udHJvbC4xOjUzIGRwa2ctc291cmNlLjE6MTM3CisjLCBuby13cmFwCittc2dpZCAiQjwtRD5JPGZpZWxkPkI8PT5JPHZhbHVlPiIKK21zZ3N0ciAiQjwtRD5JPGNhbXBvPkI8PT5JPHZhbG9yPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6OTAgZHBrZy1nZW5jb250cm9sLjE6NTYgZHBrZy1zb3VyY2UuMToxNDAKK21zZ2lkICJPdmVycmlkZSBvciBhZGQgYW4gb3V0cHV0IGNvbnRyb2wgZmlsZSBmaWVsZC4iCittc2dzdHIgIlNvYnJlZXNjcmliZSBvIGHDsWFkZSB1biBjYW1wbyBlbiBlbCBmaWNoZXJvIGRlIGNvbnRyb2wgZGUgc2FsaWRhLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjkwIGRwa2ctZ2VuY29udHJvbC4xOjU2IGRwa2ctc291cmNlLjE6MTQwCisjLCBuby13cmFwCittc2dpZCAiQjwtVT5JPGZpZWxkPiIKK21zZ3N0ciAiQjwtVT5JPGNhbXBvPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6OTMgZHBrZy1nZW5jb250cm9sLjE6NTkgZHBrZy1zb3VyY2UuMToxNDMKK21zZ2lkICJSZW1vdmUgYW4gb3V0cHV0IGNvbnRyb2wgZmlsZSBmaWVsZC4iCittc2dzdHIgIkVsaW1pbmEgdW4gY2FtcG8gZGVsIGZpY2hlcm8gZGUgY29udHJvbCBkZSBzYWxpZGEuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6OTMgZHBrZy1nZW5jb250cm9sLjE6NTkgZHBrZy1zb3VyY2UuMToxMDQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1jPkk8Y29udHJvbGZpbGU+IgorbXNnc3RyICJCPC1jPkk8ZmljaGVyby1jb250cm9sPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6OTggZHBrZy1nZW5jb250cm9sLjE6NjQKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRoZSBtYWluIHNvdXJjZSBjb250cm9sIGZpbGUgdG8gcmVhZCBpbmZvcm1hdGlvbiBmcm9tLiBUaGUgZGVmYXVsdCAiCisiaXMgQjxkZWJpYW4vY29udHJvbD4uIgorbXNnc3RyICIiCisiRGVmaW5lIGVsIGZpY2hlcm8gZGUgY29udHJvbCBwcmluY2lwYWwgZGUgbGFzIGZ1ZW50ZXMgZGVsIHF1ZSBsZWVyIGxhICIKKyJpbmZvcm1hY2nDs24uIFBvciBvbWlzacOzbiBlcyBCPGRlYmlhbi9jb250cm9sPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbmNoYW5nZXMuMTo5OCBkcGtnLWdlbmNvbnRyb2wuMTo2NCBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTYKKyM6IGRwa2ctc291cmNlLjE6MTExCisjLCBuby13cmFwCittc2dpZCAiQjwtbD5JPGNoYW5nZWxvZ2ZpbGU+IgorbXNnc3RyICJCPC1sPkk8ZmljaGVyby1jYW1iaW9zPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6MTAzIGRwa2ctZ2VuY29udHJvbC4xOjY5IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToyMQorbXNnaWQgIiIKKyJTcGVjaWZpZXMgdGhlIGNoYW5nZSBsb2cgZmlsZSB0byByZWFkIGluZm9ybWF0aW9uIGZyb20uIFRoZSBkZWZhdWx0IGlzICIKKyJCPGRlYmlhbi9jaGFuZ2Vsb2c+LiIKK21zZ3N0ciAiIgorIkRlZmluZSBlbCBmaWNoZXJvIGRlIHJlZ2lzdHJvIGRlIGNhbWJpb3MgZGVsIHF1ZSBsZWVyIGxhIGluZm9ybWFjacOzbi4gUG9yICIKKyJvbWlzacOzbiBlcyBCPGRlYmlhbi9jaGFuZ2Vsb2c+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6MTA3Cittc2dpZCAiIgorIlJlYWQgdGhlIGxpc3Qgb2YgZmlsZXMgdG8gYmUgdXBsb2FkZWQgaGVyZSwgcmF0aGVyIHRoYW4gdXNpbmcgQjxkZWJpYW4vIgorImZpbGVzPi4iCittc2dzdHIgIiIKKyJMZWUgbyBlc2NyaWJlIGxhIGxpc3RhIGRlIGZpY2hlcm9zIHBhcmEgc3ViaXIgYXF1w60sIGVuIGx1Z2FyIGRlIHVzYXIgIgorIkI8ZGViaWFuL2ZpbGVzPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbmNoYW5nZXMuMToxMDcgZHBrZy1nZW5jb250cm9sLjE6NzMgZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjIxCisjOiBkcGtnLXNvdXJjZS4xOjExOAorIywgbm8td3JhcAorbXNnaWQgIkI8LUY+STxjaGFuZ2Vsb2dmb3JtYXQ+IgorbXNnc3RyICJCPC1GPkk8Zm9ybWF0by1yZWdpc3Ryby1jYW1iaW9zPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6MTEyIGRwa2ctZ2VuY29udHJvbC4xOjc4IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToyNgorIzogZHBrZy1zb3VyY2UuMToxMjMKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRoZSBmb3JtYXQgb2YgdGhlIGNoYW5nZWxvZy4gQnkgZGVmYXVsdCB0aGUgZm9ybWF0IGlzIHJlYWQgZnJvbSBhICIKKyJzcGVjaWFsIGxpbmUgbmVhciB0aGUgYm90dG9tIG9mIHRoZSBjaGFuZ2Vsb2cgb3IgZmFpbGluZyB0aGF0IGRlZmF1bHRzIHRvICIKKyJ0aGUgZGViaWFuIHN0YW5kYXJkIGZvcm1hdC4iCittc2dzdHIgIiIKKyJEZWZpbmUgZWwgZm9ybWF0byBkZWwgcmVnaXN0cm8gZGUgY2FtYmlvcy4gUG9yIG9taXNpw7NuLCBlbCBmb3JtYXRvIHNlIGxlZSBkZSAiCisidW5hIGzDrW5lYSBlc3BlY2lhbCBjZXJjYSBkZWwgZmluYWwgZGVsIHJlZ2lzdHJvIGRlIGNhbWJpb3MgbywgZW4gY2FzbyBkZSAiCisiZmFsbG8sIHVzYSBlbCBmb3JtYXRvIGVzdMOhbmRhciBkZWJpYW4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6MTEyCisjLCBuby13cmFwCittc2dpZCAiQjwtdT5JPHVwbG9hZGZpbGVzZGlyPiIKK21zZ3N0ciAiQjwtdT5JPGRpcmVjdG9yaW8tc3ViaWRhLWZpY2hlcm9zPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6MTIzCittc2dpZCAiIgorIkxvb2sgZm9yIHRoZSBmaWxlcyB0byBiZSB1cGxvYWRlZCBpbiBJPHVwbG9hZGZpbGVzZGlyPiByYXRoZXIgdGhhbiBCPC4uPiAiCisiKEI8ZHBrZy1nZW5jaGFuZ2VzPiBuZWVkcyB0byBmaW5kIHRoZXNlIGZpbGVzIHNvIHRoYXQgaXQgY2FuIGluY2x1ZGUgdGhlaXIgIgorInNpemVzIGFuZCBjaGVja3N1bXMgaW4gdGhlIEI8LmNoYW5nZXM+IGZpbGUpLiIKK21zZ3N0ciAiIgorIkJ1c2NhIGZpY2hlcm9zIGEgc3ViaXIgZW4gSTxkaXJlY3RvcmlvLXN1YmlkYS1maWNoZXJvcz4gZW4gbHVnYXIgZGUgQjwuLj4gIgorIihCPGRwa2ctZ2VuY2hhbmdlcz4gbmVjZXNpdGEgZW5jb250cmFyIGVzdG9zIGZpY2hlcm9zIHBhcmEgcG9kZXIgaW5jbHVpciBzdXMgIgorInRhbWHDsW9zIHkgc3VtYXMgZGUgdmVyaWZpY2FjacOzbiBlbiBlbCBmaWNoZXJvIEI8LmNoYW5nZXM+KS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbmNoYW5nZXMuMToxMjMgZHBrZy1nZW5zeW1ib2xzLjE6NDIxCisjLCBuby13cmFwCittc2dpZCAiQjwtcT4iCittc2dzdHIgIkI8LXE+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMToxMzEKK21zZ2lkICIiCisiVXN1YWxseSBCPGRwa2ctZ2VuY2hhbmdlcz4gd2lsbCBwcm9kdWNlIGluZm9ybWF0aXZlIG1lc3NhZ2VzIG9uIHN0YW5kYXJkICIKKyJlcnJvciwgZm9yIGV4YW1wbGUgYWJvdXQgaG93IG1hbnkgb2YgdGhlIHBhY2thZ2UncyBzb3VyY2UgZmlsZXMgYXJlIGJlaW5nICIKKyJ1cGxvYWRlZC4gIEI8LXE+IHN1cHByZXNzZXMgdGhlc2UgbWVzc2FnZXMuIgorbXNnc3RyICIiCisiSGFiaXR1YWxtZW50ZSwgQjxkcGtnLWdlbmNoYW5nZXM+IHByb2R1Y2lyw6EgbWVuc2FqZXMgaW5mb3JtYXRpdm9zIHBvciBsYSAiCisic2FsaWRhIGRlIGVycm9yIGVzdMOhbmRhciwgcG9yIGVqZW1wbG8gYWNlcmNhIGRlIGN1w6FudG9zIGRlIGxvcyBmaWNoZXJvcyAiCisiZnVlbnRlIGRlIGxvcyBwYXF1ZXRlcyBzZSBlc3TDoW4gc3ViaWVuZG8uIEI8LXE+IHN1cHJpbWUgZGljaG9zIG1lbnNhamVzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6MTQ3Cittc2dpZCAiIgorIlRoZSBsaXN0IG9mIGdlbmVyYXRlZCBmaWxlcyB3aGljaCBhcmUgcGFydCBvZiB0aGUgdXBsb2FkIGJlaW5nIHByZXBhcmVkLiAgIgorIkI8ZHBrZy1nZW5jaGFuZ2VzPiByZWFkcyB0aGUgZGF0YSBoZXJlIHdoZW4gcHJvZHVjaW5nIGEgQjwuY2hhbmdlcz4gZmlsZS4iCittc2dzdHIgIiIKKyJMYSBsaXN0YSBkZSBmaWNoZXJvcyBnZW5lcmFkb3MgcXVlIGZvcm1hbiBwYXJ0ZSBkZSBsYSBzdWJpZGEgYWwgc2Vydmlkb3IgZW4gIgorInByZXBhcmFjacOzbi4gQjxkcGtnLWdlbmNoYW5nZXM+IGxlZSBsb3MgZGF0b3MgYXF1w60gY3VhbmRvIHByb2R1Y2UgdW4gZmljaGVybyAiCisiQjwuY2hhbmdlcz4uIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1nZW5jb250cm9sLjE6MQorIywgbm8td3JhcAorbXNnaWQgImRwa2ctZ2VuY29udHJvbCIKK21zZ3N0ciAiZHBrZy1nZW5jb250cm9sIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMTo0Cittc2dpZCAiZHBrZy1nZW5jb250cm9sIC0gZ2VuZXJhdGUgRGViaWFuIGNvbnRyb2wgZmlsZXMiCittc2dzdHIgImRwa2ctZ2VuY29udHJvbCAtIEdlbmVyYWNpw7NuIGRlIGZpY2hlcm9zIGRlIGNvbnRyb2wgZGUgRGViaWFuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMTo4CisjLCBmdXp6eQorI3wgbXNnaWQgIkI8ZHBrZy1nZW5jb250cm9sPiBbSTxvcHRpb25zPl0iCittc2dpZCAiQjxkcGtnLWdlbmNvbnRyb2w+IFtJPG9wdGlvbj4uLi5dIgorbXNnc3RyICJCPGRwa2ctZ2VuY29udHJvbD4gW0k8b3BjaW9uZXM+XSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jb250cm9sLjE6MTQKK21zZ2lkICIiCisiQjxkcGtnLWdlbmNvbnRyb2w+IHJlYWRzIGluZm9ybWF0aW9uIGZyb20gYW4gdW5wYWNrZWQgRGViaWFuIHNvdXJjZSB0cmVlIGFuZCAiCisiZ2VuZXJhdGVzIGEgYmluYXJ5IHBhY2thZ2UgY29udHJvbCBmaWxlICh3aGljaCBkZWZhdWx0cyB0byBkZWJpYW4vdG1wL0RFQklBTi8iCisiY29udHJvbCk7IGR1cmluZyB0aGlzIHByb2Nlc3MgaXQgd2lsbCBzaW1wbGlmeSB0aGUgcmVsYXRpb24gZmllbGRzLiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1nZW5jb250cm9sPiBsZWUgbGEgaW5mb3JtYWNpw7NuIGRlc2RlIHVuIMOhcmJvbCBkZSBmdWVudGVzIGRlIERlYmlhbiAiCisiZGVzZW1wYXF1ZXRhZG8sIHkgZ2VuZXJhIHVuIGZpY2hlcm8gZGUgY29udHJvbCBkZSBwYXF1ZXRlIGJpbmFyaW8gKHBvciAiCisib21pc2nDs24gdWJpY2FkbyBlbiDCq2RlYmlhbi90bXAvREVCSUFOL2NvbnRyb2zCuyk7IGR1cmFudGUgZWwgcHJvY2VzbywgdGFtYmnDqW4gIgorInNpbXBsaWZpY2Fyw6EgbG9zIGNhbXBvcyBkZSBsYXMgcmVsYWNpb25lcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjI3Cittc2dpZCAiIgorIlRodXMgSTxQcmUtRGVwZW5kcz4sIEk8RGVwZW5kcz4sIEk8UmVjb21tZW5kcz4gYW5kIEk8U3VnZ2VzdHM+IGFyZSAiCisic2ltcGxpZmllZCBpbiB0aGlzIG9yZGVyIGJ5IHJlbW92aW5nIGRlcGVuZGVuY2llcyB3aGljaCBhcmUga25vd24gdG8gYmUgdHJ1ZSAiCisiYWNjb3JkaW5nIHRvIHRoZSBzdHJvbmdlciBkZXBlbmRlbmNpZXMgYWxyZWFkeSBwYXJzZWQuIEl0IHdpbGwgYWxzbyByZW1vdmUgIgorImFueSBzZWxmLWRlcGVuZGVuY3kgKGluIGZhY3QgaXQgd2lsbCByZW1vdmUgYW55IGRlcGVuZGVuY3kgd2hpY2ggZXZhbHVhdGVzICIKKyJ0byB0cnVlIGdpdmVuIHRoZSBjdXJyZW50IHZlcnNpb24gb2YgdGhlIHBhY2thZ2UgYXMgaW5zdGFsbGVkKS4gTG9naWNhbGx5IGl0ICIKKyJrZWVwcyB0aGUgaW50ZXJzZWN0aW9uIG9mIG11bHRpcGxlIGRlcGVuZGVuY2llcyBvbiB0aGUgc2FtZSBwYWNrYWdlLiBUaGUgIgorIm9yZGVyIG9mIGRlcGVuZGVuY2llcyBpcyBwcmVzZXJ2ZWQgYXMgYmVzdCBhcyBwb3NzaWJsZTogaWYgYW55IGRlcGVuZGVuY3kgIgorIm11c3QgYmUgZGlzY2FyZGVkIGR1ZSB0byBhbm90aGVyIGRlcGVuZGVuY3kgYXBwZWFyaW5nIGZ1cnRoZXIgaW4gdGhlIGZpZWxkLCAiCisidGhlIHN1cGVyc2VkaW5nIGRlcGVuZGVuY3kgd2lsbCB0YWtlIHRoZSBwbGFjZSBvZiB0aGUgZGlzY2FyZGVkIG9uZS4iCittc2dzdHIgIiIKKyJQb3IgZWxsbywgSTxQcmUtRGVwZW5kcz4sIEk8RGVwZW5kcz4sIEk8UmVjb21tZW5kcz4geSBJPFN1Z2dlc3RzPiBzZSAiCisic2ltcGxpZmljYW4gZW4gZXN0ZSBvcmRlbiBtZWRpYW50ZSBsYSBlbGltaW5hY2nDs24gZGUgZGVwZW5kZW5jaWFzIHJlYWxlcyBkZSAiCisiYWN1ZXJkbyBhIGxhcyBkZXBlbmRlbmNpYXMgbcOhcyBmdWVydGVzIHlhIGFuYWxpemFkYXMuIFRhbWJpw6luIGVsaW1pbmEgIgorImN1YWxxdWllciBkZXBlbmRlbmNpYSBzb2JyZSBzaSBtaXNtbyAoZGUgaGVjaG8sIGVsaW1pbmFyw6EgY3VhbHF1aWVyICIKKyJkZXBlbmRlbmNpYSB0b21hZGEgY29tbyB2ZXJkYWRlcmEsIMKrdHJ1ZcK7LCBzaSBsYSB2ZXJzacOzbiBhY3R1YWwgZGVsIHBhcXVldGUgIgorInlhIHNlIGVuY3VlbnRyYSBpbnN0YWxhZGEpLiBSZXRlbmRyw6EgZGUgZm9ybWEgbMOzZ2ljYSBsYSBpbnRlcnNlY2Npw7NuIGRlICIKKyJ2YXJpYXMgZGVwZW5kZW5jaWFzIHNvYnJlIGVsIG1pc21vIHBhcXVldGUuIEVsIG9yZGVuIGRlIGxhcyBkZXBlbmRlbmNpYXMgc2UgIgorIm1vZGlmaWNhIGxvIG1lbm9zIHBvc2libGU6IGVuIGNhc28gZGUgdGVuZXIgcXVlIGVsaW1pbmFyIHVuYSBkZXBlbmRlbmNpYSAiCisiZGViaWRhIGEgcXVlIG90cmEgYXBhcmVjZSBtw6FzIGFkZWxhbnRlIGVuIGVsIGNhbXBvLCDDqXN0YSB0b21hcsOhIGxhIHBvc2ljacOzbiAiCisiZGUgbGEgZGVwZW5kZW5jaWEgZGVzY2FydGFkYS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjMyCittc2dpZCAiIgorIlRoZSBvdGhlciByZWxhdGlvbiBmaWVsZHMgKEk8RW5oYW5jZXM+LCBJPENvbmZsaWN0cz4sIEk8QnJlYWtzPiwgSTxSZXBsYWNlcz4gIgorImFuZCBJPFByb3ZpZGVzPikgIGFyZSBhbHNvIHNpbXBsaWZpZWQgaW5kaXZpZHVhbGx5IGJ5IGNvbXB1dGluZyB0aGUgdW5pb24gb2YgIgorInRoZSB2YXJpb3VzIGRlcGVuZGVuY2llcyB3aGVuIGEgcGFja2FnZSBpcyBsaXN0ZWQgbXVsdGlwbGUgdGltZXMgaW4gdGhlICIKKyJmaWVsZC4iCittc2dzdHIgIiIKKyJMb3Mgb3Ryb3MgY2FtcG9zIGRlIHJlbGFjacOzbiAoSTxFbmhhbmNlcz4sIEk8Q29uZmxpY3RzPiwgSTxCcmVha3M+LCAiCisiSTxSZXBsYWNlcz4geSBJPFByb3ZpZGVzPikgc2Ugc2ltcGxpZmljYW4gaW5kaXZpZHVhbG1lbnRlIGNvbXB1dGFuZG8gbGEgIgorInVuacOzbiBkZSB0b2RhcyBsYXMgZGVwZW5kZW5jaWFzIGN1YW5kbyB1biBwYXF1ZXRlIGFwYXJlY2UgdmFyaWFzIHZlY2VzIGVuIGVsICIKKyJjYW1wby4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjM2Cittc2dpZCAiIgorIkI8ZHBrZy1nZW5jb250cm9sPiBhbHNvIGFkZHMgYW4gZW50cnkgZm9yIHRoZSBiaW5hcnkgcGFja2FnZSB0byBCPGRlYmlhbi8iCisiZmlsZXM+LiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1nZW5jb250cm9sPiB0YW1iacOpbiBhw7FhZGUgdW5hIGVudHJhZGEgcGFyYSBlbCBwYXF1ZXRlIGJpbmFyaW8gZW4gIgorIkI8ZGViaWFuL2ZpbGVzPi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjQxCittc2dpZCAiU2V0cyB0aGUgdmVyc2lvbiBudW1iZXIgb2YgdGhlIGJpbmFyeSBwYWNrYWdlIHdoaWNoIHdpbGwgYmUgZ2VuZXJhdGVkLiIKK21zZ3N0ciAiRGVmaW5lIGVsIG7Dum1lcm8gZGUgdmVyc2nDs24gZGVsIHBhcXVldGUgYmluYXJpbyBhIGdlbmVyYXIuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMTo0NQorbXNnaWQgIiIKKyJTZXQgYW4gb3V0cHV0IHN1YnN0aXR1dGlvbiB2YXJpYWJsZS4gU2VlIEI8ZGViLXN1YnN0dmFycz4oNSkgZm9yIGRpc2N1c3Npb24gIgorIm9mIG91dHB1dCBzdWJzdGl0dXRpb24uIgorbXNnc3RyICIiCisiRGVmaW5lIHVuYSB2YXJpYWJsZSBkZSBzdXN0aXR1Y2nDs24gZGUgbGEgc2FsaWRhLiBDb25zdWx0ZSBCPGRlYi1zdWJzdHZhcnM+IgorIig1KSBwYXJhIG3DoXMgaW5mb3JtYWNpw7NuIGFjZXJjYSBkZSBsYSBzdXN0aXR1Y2nDs24gZGUgbGEgc2FsaWRhLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jb250cm9sLjE6NTMKK21zZ2lkICIiCisiUmVhZCBzdWJzdGl0dXRpb24gdmFyaWFibGVzIGluIEk8c3Vic3R2YXJzZmlsZT47IHRoZSBkZWZhdWx0IGlzIEI8ZGViaWFuLyIKKyJzdWJzdHZhcnM+LiAgVGhpcyBvcHRpb24gY2FuIGJlIHVzZWQgbXVsdGlwbGUgdGltZXMgdG8gcmVhZCBzdWJzdGl0dXRpb24gIgorInZhcmlhYmxlcyBmcm9tIG11bHRpcGxlIGZpbGVzLiIKK21zZ3N0ciAiIgorIkxlZSB2YXJpYWJsZXMgZGUgc3VzdGl0dWNpw7NuIGRlc2RlIGVsIEk8ZmljaGVyby12YXJpYWJsZXMtc3VzdD47IEI8ZGViaWFuLyIKKyJzdWJzdHZhcnM+IGVzIGVsIHZhbG9yIHBvciBvbWlzacOzbi4gUHVlZGUgdXNhciBlc3RhIG9wY2nDs24gdmFyaWFzIHZlY2VzIHBhcmEgIgorImxlZXIgdmFyaWFibGVzIGRlIHN1c3RpdHVjacOzbiBkZSB2YXJpb3MgZmljaGVyb3MuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5jb250cm9sLjE6NzggZHBrZy1nZW5zeW1ib2xzLjE6MzczCisjLCBuby13cmFwCittc2dpZCAiQjwtcD5JPHBhY2thZ2U+IgorbXNnc3RyICJCPC1wPkk8cGFxdWV0ZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjg1Cittc2dpZCAiIgorIkdlbmVyYXRlIGluZm9ybWF0aW9uIGZvciB0aGUgYmluYXJ5IHBhY2thZ2UgSTxwYWNrYWdlPi4gIElmIHRoZSBzb3VyY2UgIgorImNvbnRyb2wgZmlsZSBsaXN0cyBvbmx5IG9uZSBiaW5hcnkgcGFja2FnZSB0aGVuIHRoaXMgb3B0aW9uIG1heSBiZSBvbWl0dGVkOyAiCisib3RoZXJ3aXNlIGl0IGlzIGVzc2VudGlhbCB0byBzZWxlY3Qgd2hpY2ggYmluYXJ5IHBhY2thZ2UncyBpbmZvcm1hdGlvbiB0byAiCisiZ2VuZXJhdGUuIgorbXNnc3RyICIiCisiR2VuZXJhIGluZm9ybWFjacOzbiBwYXJhIGVsIHBhcXVldGUgYmluYXJpbyBJPHBhcXVldGU+LiBQdWVkZSBvbWl0aXIgZXN0YSAiCisib3BjacOzbiBzaSBlbCBmaWNoZXJvIGRlIGNvbnRyb2wgZGUgbGFzIGZ1ZW50ZXMgbGlzdGEgdW4gc8OzbG8gcGFxdWV0ZSAiCisiYmluYXJpbzsgZGUgbm8gc2VyIGFzw60sIGVzIGVzZW5jaWFsIHNlbGVjY2lvbmFyIGVsIHBhcXVldGUgYmluYXJpbyBkZWwgY3VhbCAiCisic2UgZGVzZWEgZ2VuZXJhciBsYSBpbmZvcm1hY2nDs24uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5jb250cm9sLjE6ODUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1uPkk8ZmlsZW5hbWU+IgorbXNnc3RyICJCPC1uPkk8bm9tYnJlZmljaGVybz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjkwCittc2dpZCAiIgorIkFzc3VtZSB0aGUgZmlsZW5hbWUgb2YgdGhlIHBhY2thZ2Ugd2lsbCBiZSBJPGZpbGVuYW1lPiBpbnN0ZWFkIG9mIHRoZSBub3JtYWwgIgorInBhY2thZ2VfdmVyc2lvbl9hcmNoLmRlYiBmaWxlbmFtZS4iCittc2dzdHIgIiIKKyJTdXBvbmUgcXVlIGVsIG5vbWJyZSBkZSBmaWNoZXJvIGRlbCBwYXF1ZXRlIHNlcsOhIEk8bm9tYnJlLWZpY2hlcm8+IGVuIHZleiAiCisiZGVsIGhhYml0dWFsLCDCq3BhcXVldGVfdmVyc2nDs25fYXJxdWl0ZWN0dXJhLmRlYsK7LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjkwCisjLCBuby13cmFwCittc2dpZCAiQjwtaXM+LCBCPC1pcD4sIEI8LWlzcD4iCittc2dzdHIgIkI8LWlzPiwgQjwtaXA+LCBCPC1pc3A+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMTo5OQorbXNnaWQgIiIKKyJUaGVzZSBvcHRpb25zIGFyZSBpZ25vcmVkIGZvciBjb21wYXRpYmlsaXR5IHdpdGggb2xkZXIgdmVyc2lvbnMgb2YgZHBrZy1kZXYgIgorImJ1dCBhcmUgbm93IGRlcHJlY2F0ZWQuIFByZXZpb3VzbHkgdGhleSB3ZXJlIHVzZWQgdG8gdGVsbCBkcGtnLWdlbmNvbnRyb2wgdG8gIgorImluY2x1ZGUgdGhlIFNlY3Rpb24gYW5kIFByaW9yaXR5IGZpZWxkcyBpbiB0aGUgY29udHJvbCBmaWxlLiBUaGlzIGlzIG5vdyB0aGUgIgorImRlZmF1bHQgYmVoYXZpb3VyLiBJZiB5b3Ugd2FudCB0byBnZXQgdGhlIG9sZCBiZWhhdmlvdXIgeW91IGNhbiB1c2UgdGhlIEI8LSIKKyJVPiBvcHRpb24gdG8gZGVsZXRlIHRoZSBmaWVsZHMgZnJvbSB0aGUgY29udHJvbCBmaWxlLiIKK21zZ3N0ciAiIgorIkVzdGFzIG9wY2lvbmVzIHNlIGlnbm9yYW4gcG9yIGNvbXBhdGliaWxpZGFkIGNvbiB2ZXJzaW9uZXMgYW50ZXJpb3JlcyBkZSAiCisiZHBrZy1kZXYsIHBlcm8geWEgZXN0w6FuIG9ic29sZXRhcy4gQW50ZXMgc2UgdXNhYmFuIHBhcmEgaGFjZXIgcXVlIGRwa2ctIgorImdlbmNvbnRyb2wgaW5jbHV5ZXNlIGxvcyBjYW1wb3MgwqtTZWN0aW9uwrsgeSDCq1ByaW9yaXR5wrsgZW4gZWwgZmljaGVybyBkZSAiCisiY29udHJvbC4gSG95IGVuIGTDrWEgZXMgZWwgY29tcG9ydGFtaWVudG8gcHJlZGVmaW5pZG8uIFNpIGRlc2VhIGVsICIKKyJjb21wb3J0YW1pZW50byBhbnRpZ3VvIGRlYmVyw6EgdXNhciBsYSBvcGNpw7NuIEI8LVU+IHBhcmEgZWxpbWluYXIgbG9zIGNhbXBvcyAiCisiZGVsIGZpY2hlcm8gZGUgY29udHJvbC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbmNvbnRyb2wuMTo5OQorIywgbm8td3JhcAorbXNnaWQgIkI8LVA+STxwYWNrYWdlYnVpbGRkaXI+IgorbXNnc3RyICJCPC1QPkk8ZGlyZWN0b3Jpby1jb21waWxhY2nDs24tcGFxdWV0ZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjExMgorbXNnaWQgIiIKKyJUZWxscyBCPGRwa2ctc291cmNlPiB0aGF0IHRoZSBwYWNrYWdlIGlzIGJlaW5nIGJ1aWx0IGluIEk8cGFja2FnZWJ1aWxkZGlyPiAiCisiaW5zdGVhZCBvZiBCPGRlYmlhbi90bXA+LiAgVGhpcyB2YWx1ZSBpcyB1c2VkIHRvIGZpbmQgdGhlIGRlZmF1bHQgdmFsdWUgb2YgIgorInRoZSBCPEluc3RhbGxlZC1TaXplPiBzdWJzdGl0dXRpb24gdmFyaWFibGUgYW5kIGNvbnRyb2wgZmlsZSBmaWVsZCAodXNpbmcgIgorIkI8ZHU+KSwgYW5kIGZvciB0aGUgZGVmYXVsdCBsb2NhdGlvbiBvZiB0aGUgb3V0cHV0IGZpbGUuIgorbXNnc3RyICIiCisiRGljZSBhIEI8ZHBrZy1zb3VyY2U+IHF1ZSBlbCBwYXF1ZXRlIHNlIGVzdMOhIGNyZWFuZG8gZW4gSTxkaXJlY3RvcmlvLSIKKyJjb21waWxhY2nDs24tcGFxdWV0ZT4gZW4gdmV6IGRlIEI8ZGViaWFuL3RtcD4uIFNlIHVzYSBwYXJhIGVuY29udHJhciBlbCB2YWxvciAiCisicG9yIG9taXNpw7NuIGRlIGxhIHZhcmlhYmxlIGRlIHN1c3RpdHVjacOzbiB5IGNhbXBvIGRlbCBmaWNoZXJvIGRlIGNvbnRyb2wgIgorIkI8SW5zdGFsbGVkLVNpemU+LCBUYW1hw7FvLUluc3RhbGFkbywgKHVzYW5kbyBCPGR1PiksIHkgcGFyYSBlc3RhYmxlY2VyIGxhICIKKyJydXRhIHByZWRlZmluaWRhIGRlbCBmaWNoZXJvIGRlIHNhbGlkYS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbmNvbnRyb2wuMToxMTIgZHBrZy1nZW5zeW1ib2xzLjE6MzkxIGRwa2ctc2hsaWJkZXBzLjE6MTUwCisjLCBuby13cmFwCittc2dpZCAiQjwtTz4iCittc2dzdHIgIkI8LU8+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMToxMjEKK21zZ2lkICIiCisiUHJpbnQgdGhlIGNvbnRyb2wgZmlsZSB0byBzdGFuZGFyZCBvdXRwdXQsIHJhdGhlciB0aGFuIHRvIEI8ZGViaWFuL3RtcC8iCisiREVCSUFOL2NvbnRyb2w+IChvciBJPHBhY2thZ2VidWlsZGRpcj5CPC9ERUJJQU4vY29udHJvbD4gaWYgQjwtUD4gd2FzIHVzZWQpLiIKK21zZ3N0ciAiIgorIk11ZXN0cmEgZWwgZmljaGVybyBkZSBjb250cm9sIHBvciBsYSBzYWxpZGEgZXN0w6FuZGFyLCBlbiBsdWdhciBkZSBCPGRlYmlhbi8iCisidG1wL0RFQklBTi9jb250cm9sPiAobyBJPGRpcmVjdG9yaW8tY29tcGlsYWNpw7NuLXBhcXVldGU+QjwvREVCSUFOL2NvbnRyb2w+ICIKKyJzaSBzZSB1c8OzIGxhIG9wY2nDs24gQjwtUD4pLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjEyOQorIywgbm8td3JhcAorbXNnaWQgIkI8ZGViaWFuL2NvbnRyb2w+IgorbXNnc3RyICJCPGRlYmlhbi9jb250cm9sPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jb250cm9sLjE6MTM0Cittc2dpZCAiIgorIlRoZSBtYWluIHNvdXJjZSBjb250cm9sIGluZm9ybWF0aW9uIGZpbGUsIGdpdmluZyB2ZXJzaW9uLWluZGVwZW5kZW50ICIKKyJpbmZvcm1hdGlvbiBhYm91dCB0aGUgc291cmNlIHBhY2thZ2UgYW5kIHRoZSBiaW5hcnkgcGFja2FnZXMgaXQgY2FuIHByb2R1Y2UuIgorbXNnc3RyICIiCisiRWwgZmljaGVybyBkZSBpbmZvcm1hY2nDs24gZGUgY29udHJvbCBkZSBmdWVudGVzIHByaW5jaXBhbCwgcXVlIGRhICIKKyJpbmZvcm1hY2nDs24gaW5kZXBlbmRpZW50ZSBkZSBsYSB2ZXJzacOzbiBhY2VyY2EgZGVsIHBhcXVldGUgZnVlbnRlIHkgbG9zICIKKyJwYXF1ZXRlcyBiaW5hcmlvcyBxdWUgcHVlZGUgZ2VuZXJhci4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjE0MQorbXNnaWQgIiIKKyJUaGUgbGlzdCBvZiBnZW5lcmF0ZWQgZmlsZXMgd2hpY2ggYXJlIHBhcnQgb2YgdGhlIHVwbG9hZCBiZWluZyBwcmVwYXJlZC4gICIKKyJCPGRwa2ctZ2VuY29udHJvbD4gYWRkcyB0aGUgcHJlc3VtZWQgZmlsZW5hbWVzIG9mIGJpbmFyeSBwYWNrYWdlcyB3aG9zZSAiCisiY29udHJvbCBmaWxlcyBpdCBnZW5lcmF0ZXMgaGVyZS4iCittc2dzdHIgIiIKKyJMYSBsaXN0YSBkZSBmaWNoZXJvcyBnZW5lcmFkb3MgcXVlIGZvcm1hbiBwYXJ0ZSBkZSBsYSBzdWJpZGEgZW4gcHJlcGFyYWNpw7NuLiAiCisiQjxkcGtnLWdlbmNvbnRyb2w+IGHDsWFkZSBsb3Mgc3VwdWVzdG9zIG5vbWJyZXMgZGUgZmljaGVybyBkZSBwYXF1ZXRlcyAiCisiYmluYXJpb3MgY3V5b3MgZmljaGVyb3MgZGUgY29udHJvbCBnZW5lcmEuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMToxNDggZHBrZy1zaGxpYmRlcHMuMTozMzcKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAwNy0yMDA4IFJhcGhhXFxbOmVdbCBIZXJ0em9nIgorbXNnc3RyICJDb3B5cmlnaHQgXFwoY28gMjAwNy0yMDA4IFJhcGhhXFxbOmVdbCBIZXJ0em9nIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MgorIywgbm8td3JhcAorbXNnaWQgImRwa2ctZ2Vuc3ltYm9scyIKK21zZ3N0ciAiZHBrZy1nZW5zeW1ib2xzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo1Cittc2dpZCAiIgorImRwa2ctZ2Vuc3ltYm9scyAtIGdlbmVyYXRlIHN5bWJvbHMgZmlsZXMgKHNoYXJlZCBsaWJyYXJ5IGRlcGVuZGVuY3kgIgorImluZm9ybWF0aW9uKSIKK21zZ3N0ciAiIgorImRwa2ctZ2Vuc3ltYm9scyAtIEdlbmVyYWNpw7NuIGRlIGZpY2hlcm9zIMKrc3ltYm9sc8K7IChpbmZvcm1hY2nDs24gZGUgIgorImRlcGVuZGVuY2lhIGRlIGJpYmxpb3RlY2FzIGNvbXBhcnRpZGFzKSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6OQorIywgZnV6enkKKyN8IG1zZ2lkICJCPGRwa2ctZ2Vuc3ltYm9scz4gW0k8b3B0aW9ucz5dIgorbXNnaWQgIkI8ZHBrZy1nZW5zeW1ib2xzPiBbSTxvcHRpb24+Li4uXSIKK21zZ3N0ciAiQjxkcGtnLWdlbnN5bWJvbHM+IFtJPG9wY2lvbmVzPl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjE2Cittc2dpZCAiIgorIkI8ZHBrZy1nZW5zeW1ib2xzPiBzY2FucyBhIHRlbXBvcmFyeSBidWlsZCB0cmVlIChkZWJpYW4vdG1wIGJ5IGRlZmF1bHQpICIKKyJsb29raW5nIGZvciBsaWJyYXJpZXMgYW5kIGdlbmVyYXRlIGEgSTxzeW1ib2xzPiBmaWxlIGRlc2NyaWJpbmcgdGhlbS4gVGhpcyAiCisiZmlsZSwgaWYgbm9uLWVtcHR5LCBpcyB0aGVuIGluc3RhbGxlZCBpbiB0aGUgREVCSUFOIHN1YmRpcmVjdG9yeSBvZiB0aGUgIgorImJ1aWxkIHRyZWUgc28gdGhhdCBpdCBlbmRzIHVwIGluY2x1ZGVkIGluIHRoZSBjb250cm9sIGluZm9ybWF0aW9uIG9mIHRoZSAiCisicGFja2FnZS4iCittc2dzdHIgIiIKKyJCPGRwa2ctZ2Vuc3ltYm9scz4gYW5hbGl6YSB1biDDoXJib2wgdGVtcG9yYWwgZGUgY29uc3RydWNjacOzbiAowqtkZWJpYW4vdG1wwrsgIgorInBvciBvbWlzacOzbikgZW4gYnVzY2EgZGUgYmlibGlvdGVjYXMgcGFyYSBnZW5lcmFyIHVuIGZpY2hlcm8gSTxzeW1ib2xzPiBxdWUgIgorImxvcyBkZXNjcmliYS4gRXN0ZSBmaWNoZXJvLCBzaSBubyBlc3TDoSB2YWPDrW8sIHNlIGluc3RhbGEgZW4gZWwgc3ViZGlyZWN0b3JpbyAiCisiwqtERUJJQU7CuyBkZWwgw6FyYm9sIGRlIGNvbnN0cnVjY2nDs24sIHBhcmEgZGVzcHXDqXMgaW5jbHVpciBlbCBjb250ZW5pZG8gZW4gbGEgIgorImluZm9ybWFjacOzbiBkZSBjb250cm9sIGRlbCBwYXF1ZXRlLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjAKK21zZ2lkICIiCisiV2hlbiBnZW5lcmF0aW5nIHRob3NlIGZpbGVzLCBpdCB1c2VzIGFzIGlucHV0IHNvbWUgc3ltYm9scyBmaWxlcyBwcm92aWRlZCBieSAiCisidGhlIG1haW50YWluZXIuIEl0IGxvb2tzIGZvciB0aGUgZm9sbG93aW5nIGZpbGVzIChhbmQgdXNlIHRoZSBmaXJzdCB0aGF0IGlzICIKKyJmb3VuZCk6IgorbXNnc3RyICIiCisiQWwgZ2VuZXJhciBlc3RvcyBmaWNoZXJvcywgdXNhIGFsZ3Vub3MgZmljaGVyb3MgwqtzeW1ib2xzwrsgY29tbyBlbnRyYWRhICIKKyJwcm9wb3JjaW9uYWRvcyBwb3IgZWwgZGVzYXJyb2xsYWRvci4gQnVzY2EgbG9zIHNpZ3VpZW50ZXMgZmljaGVyb3MsIHVzYW5kbyAiCisiZWwgcHJpbWVybyBxdWUgZW5jdWVudHJhLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjIKK21zZ2lkICJkZWJpYW4vSTxwYWNrYWdlPi5zeW1ib2xzLkk8YXJjaD4iCittc2dzdHIgImRlYmlhbi9JPHBhY2thZ2U+LnN5bWJvbHMuSTxhcmNoPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjQKK21zZ2lkICJkZWJpYW4vc3ltYm9scy5JPGFyY2g+IgorbXNnc3RyICJkZWJpYW4vc3ltYm9scy5JPGFyY2g+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyNgorbXNnaWQgImRlYmlhbi9JPHBhY2thZ2U+LnN5bWJvbHMiCittc2dzdHIgImRlYmlhbi9JPHBhY2thZ2U+LnN5bWJvbHMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjI4Cittc2dpZCAiZGViaWFuL3N5bWJvbHMiCittc2dzdHIgImRlYmlhbi9zeW1ib2xzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozNgorbXNnaWQgIiIKKyJUaGUgbWFpbiBpbnRlcmVzdCBvZiB0aG9zZSBmaWxlcyBpcyB0byBwcm92aWRlIHRoZSBtaW5pbWFsIHZlcnNpb24gIgorImFzc29jaWF0ZWQgdG8gZWFjaCBzeW1ib2wgcHJvdmlkZWQgYnkgdGhlIGxpYnJhcmllcy4gVXN1YWxseSBpdCBjb3JyZXNwb25kcyAiCisidG8gdGhlIGZpcnN0IHZlcnNpb24gb2YgdGhhdCBwYWNrYWdlIHRoYXQgcHJvdmlkZWQgdGhlIHN5bWJvbCwgYnV0IGl0IGNhbiBiZSAiCisibWFudWFsbHkgaW5jcmVtZW50ZWQgYnkgdGhlIG1haW50YWluZXIgaWYgdGhlIEFCSSBvZiB0aGUgc3ltYm9sIGlzIGV4dGVuZGVkICIKKyJ3aXRob3V0IGJyZWFraW5nIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5LiBJdCdzIHRoZSByZXNwb25zaWJpbGl0eSBvZiB0aGUgIgorIm1haW50YWluZXIgdG8ga2VlcCB0aG9zZSBmaWxlcyB1cC10by1kYXRlIGFuZCBhY2N1cmF0ZSwgYnV0IEI8ZHBrZy0iCisiZ2Vuc3ltYm9scz4gaGVscHMgaGltLiIKK21zZ3N0ciAiIgorIkxhIG1ldGEgcHJpbmNpcGFsIGRlIGVzdG9zIGZpY2hlcm9zIGVzIHByb3BvcmNpb25hciBsYSB2ZXJzacOzbiBtw61uaW1hICIKKyJhc29jaWFkYSBhIGNhZGEgc8OtbWJvbG8gcHJvcG9yY2lvbmFkbyBwb3IgbGFzIGJpYmxpb3RlY2FzLiBIYWJpdHVhbG1lbnRlLCBzZSAiCisiY29ycmVzcG9uZGUgY29uIGxhIHByaW1lcmEgdmVyc2nDs24gZGUgZXNlIHBhcXVldGUgcXVlIHByb3BvcmNpb25hIGVsICIKKyJzw61tYm9sbywgcGVybyBlbCBkZXNhcnJvbGxhZG9yIGxvIHB1ZWRlIGluY3JlbWVudGFyIG1hbnVhbG1lbnRlIHNpIGxhIEFCSSAiCisiZGVsIHPDrW1ib2xvIHNlIGV4dGllbmRlIHNpbiByb21wZXIgbGEgY29tcGF0aWJpbGlkYWQgY29uIHZlcnNpb25lcyAiCisiYW50ZXJpb3Jlcy4gRXMgbGEgcmVzcG9uc2FiaWxpZGFkIGRlbCBkZXNhcnJvbGxhZG9yIHF1ZSBlc3RvcyBmaWNoZXJvcyBlc3TDqW4gIgorImFsIGTDrWEgeSBxdWUgc2VhbiBhcHJvcGlhZG9zLCBwZXJvIEI8ZHBrZy1nZW5zeW1ib2xzPiBsZSBhc2lzdGUgZW4gZXN0YSAiCisidGFyZWEuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0MgorbXNnaWQgIiIKKyJXaGVuIHRoZSBnZW5lcmF0ZWQgc3ltYm9scyBmaWxlcyBkaWZmZXIgZnJvbSB0aGUgbWFpbnRhaW5lciBzdXBwbGllZCBvbmUsICIKKyJCPGRwa2ctZ2Vuc3ltYm9scz4gd2lsbCBwcmludCBhIGRpZmYgYmV0d2VlbiB0aGUgdHdvIHZlcnNpb25zLiAgRnVydGhlcm1vcmUgIgorImlmIHRoZSBkaWZmZXJlbmNlIGlzIHRvbyBzaWduaWZpY2FudCwgaXQgd2lsbCBldmVuIGZhaWwgKHlvdSBjYW4gY3VzdG9taXplICIKKyJob3cgbXVjaCBkaWZmZXJlbmNlIHlvdSBjYW4gdG9sZXJhdGUsIHNlZSB0aGUgQjwtYz4gb3B0aW9uKS4iCittc2dzdHIgIiIKKyJDdWFuZG8gbG9zIGZpY2hlcm9zIMKrc3ltYm9sc8K7IGdlbmVyYWRvcyBkaWZpZXJlbiBkZWwgcHJvcG9yY2lvbmFkbyBwb3IgZWwgIgorImRlc2Fycm9sbGFkb3IsIEI8ZHBrZy1nZW5zeW1ib2xzPiBtb3N0cmFyw6EgbGFzIGRpZmVyZW5jaWFzIGVudHJlIGFtYmFzICIKKyJ2ZXJzaW9uZXMuIE3DoXMgYcO6biwgcHVlZGUgcXVlIGZhbGxlIHNpIGxhIGRpZmVyZW5jaWEgZXMgZGVtYXNpYWRvIGdyYW5kZSwgIgorIihwdWVkZSBjb25maWd1cmFyIGN1YW50YSBkaWZlcmVuY2lhIHRvbGVyYXIsIGNvbnN1bHRlIGxhIG9wY2nDs24gQjwtYz4pLiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQyCisjLCBuby13cmFwCittc2dpZCAiTUFJTlRBSU5JTkcgU1lNQk9MUyBGSUxFUyIKK21zZ3N0ciAiTUFOVEVORVIgRklDSEVST1MgwqtTWU1CT0xTwrsiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjU1Cittc2dpZCAiIgorIlRoZSBzeW1ib2xzIGZpbGVzIGFyZSByZWFsbHkgdXNlZnVsIG9ubHkgaWYgdGhleSByZWZsZWN0IHRoZSBldm9sdXRpb24gb2YgIgorInRoZSBwYWNrYWdlIHRocm91Z2ggc2V2ZXJhbCByZWxlYXNlcy4gVGh1cyB0aGUgbWFpbnRhaW5lciBoYXMgdG8gdXBkYXRlIHRoZW0gIgorImV2ZXJ5IHRpbWUgdGhhdCBhIG5ldyBzeW1ib2wgaXMgYWRkZWQgc28gdGhhdCBpdHMgYXNzb2NpYXRlZCBtaW5pbWFsIHZlcnNpb24gIgorIm1hdGNoZXMgcmVhbGl0eS4gVG8gZG8gdGhpcyBwcm9wZXJseSBoZSBjYW4gdXNlIHRoZSBkaWZmcyBjb250YWluZWQgaW4gdGhlICIKKyJidWlsZCBsb2dzLiBJbiBtb3N0IGNhc2VzLCB0aGUgZGlmZiBhcHBsaWVzIGRpcmVjdGx5IHRvIGhpcyBkZWJpYW4vIgorIkk8cGFja2FnZT4uc3ltYm9scyBmaWxlLiBUaGF0IHNhaWQsIGZ1cnRoZXIgdHdlYWtzIGFyZSB1c3VhbGx5IG5lZWRlZDogaXQncyAiCisicmVjb21tZW5kZWQgZm9yIGV4YW1wbGUgdG8gZHJvcCB0aGUgRGViaWFuIHJldmlzaW9uIGZyb20gdGhlIG1pbmltYWwgdmVyc2lvbiAiCisic28gdGhhdCBiYWNrcG9ydHMgd2l0aCBhIGxvd2VyIHZlcnNpb24gbnVtYmVyIGJ1dCB0aGUgc2FtZSB1cHN0cmVhbSB2ZXJzaW9uICIKKyJzdGlsbCBzYXRpc2Z5IHRoZSBnZW5lcmF0ZWQgZGVwZW5kZW5jaWVzLiAgSWYgdGhlIERlYmlhbiByZXZpc2lvbiBjYW4ndCBiZSAiCisiZHJvcHBlZCBiZWNhdXNlIHRoZSBzeW1ib2wgcmVhbGx5IGdvdCBhZGRlZCBieSB0aGUgRGViaWFuIHNwZWNpZmljIGNoYW5nZSwgIgorInRoZW4gb25lIHNob3VsZCBzdWZmaXggdGhlIHZlcnNpb24gd2l0aCBcIn5cIi4iCittc2dzdHIgIiIKKyJMb3MgZmljaGVyb3MgwqtzeW1ib2xzwrsgc29uIHJlYWxtZW50ZSDDunRpbGVzIHPDs2xvIGN1YW5kbyByZWZsZWphbiBsYSAiCisiZXZvbHVjacOzbiBkZWwgcGFxdWV0ZSBhIGxvIGxhcmdvIGRlIHZhcmlhcyBwdWJsaWNhY2lvbmVzLiBQb3IgZWxsbywgZWwgIgorImRlc2Fycm9sbGFkb3IgdGllbmUgcXVlIGFjdHVhbGl6YXJsb3MgY2FkYSB2ZXogcXVlIHNlIGHDsWFkYSB1biBzw61tYm9sbyAiCisibnVldm8sIHBhcmEgcXVlIGFzw60gbGEgbcOtbmltYSB2ZXJzacOzbiBhc29jaWFkYSBjb25jdWVyZGUgY29uIGxhIHJlYWxpZGFkLiAiCisiUGFyYSBoYWNlciBlc3RvIGFwcm9waWFkYW1lbnRlIHB1ZWRlIHVzYXIgbG9zIMKrZGlmZsK7IGNvbnRlbmlkb3MgZW4gbG9zICIKKyJyZWdpc3Ryb3MgZGUgY29uc3RydWNjacOzbi4gRW4gbGEgbWF5b3LDrWEgZGUgbG9zIGNhc28sIGVsIMKrZGlmZsK7IHNlIGFwbGljYSAiCisiZGlyZWN0YW1lbnRlIHNvYnJlIGVsIGZpY2hlcm8gwqtkZWJpYW4vSTxwYWNrYWdlPi5zeW1ib2xzwrsuIERpY2hvIGVzdG8sIGVzICIKKyJuZWNlc2FyaW8gYWZpbmFyIGVzdGUgcHJvY2Vzbzogc2UgcmVjb21pZW5kYSwgcG9yIGVqZW1wbG8sIGVsaW1pbmFyIGVsICIKKyJuw7ptZXJvIGRlIHJldmlzacOzbiBkZSBEZWJpYW4gZGUgbGEgdmVyc2nDs24gbcOtbmltYSBwYXJhIHF1ZSBhc8OtIGFxdWVsbGFzICIKKyJhZGFwdGFjaW9uZXMgaGFjaWEgYXRyw6FzICjCq2JhY2twb3J0c8K7KSBjb24gdW4gbsO6bWVybyBkZSB2ZXJzacOzbiBtZW5vciwgcGVybyAiCisiY29uIGxhIG1pc21hIHZlcnNpw7NuIHF1ZSBsYSBmdWVudGUgb3JpZ2luYWwsIHB1ZWRhbiBzYXRpc2ZhY2VyIGxhcyAiCisiZGVwZW5kZW5jaWFzIGdlbmVyYWRhcy4gU2kgbm8gc2UgcHVlZGUgZWxpbWluYXIgbGEgcmV2aXNpw7NuIGRlIERlYmlhbiBwb3JxdWUgIgorImVsIHPDrW1ib2xvIHNlIGHDsWFkacOzIGRlYmlkbyBhIHVuIGNhbWJpbyBlc3BlY8OtZmljbyBkZSBEZWJpYW4gcHVlZGUgYWZpamFyICIKKyLCq37CuyBhIGxhIHZlcnNpw7NuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NTkKK21zZ2lkICIiCisiQmVmb3JlIGFwcGx5aW5nIGFueSBwYXRjaCB0byB0aGUgc3ltYm9scyBmaWxlLCB0aGUgbWFpbnRhaW5lciBzaG91bGQgZG91YmxlLSIKKyJjaGVjayB0aGF0IGl0J3Mgc2FuZS4gUHVibGljIHN5bWJvbHMgYXJlIG5vdCBzdXBwb3NlZCB0byBkaXNhcHBlYXIsIHNvIHRoZSAiCisicGF0Y2ggc2hvdWxkIGlkZWFsbHkgb25seSBhZGQgbmV3IGxpbmVzLiIKK21zZ3N0ciAiIgorIkFudGVzIGRlIGFwbGljYXIgdW4gcGFyY2hlIGFsIGZpY2hlcm8gwqtzeW1ib2xzwrsgZWwgZGVzYXJyb2xsYWRvciBkZWJlcsOtYSAiCisicmV2aXNhciBudWV2YW1lbnRlIHF1ZSBlcyBhZGVjdWFkby4gU2UgZXNwZXJhIHF1ZSBsb3Mgc8OtbWJvbG9zIHDDumJsaWNvcyBubyAiCisiZGVzYXBhcmV6Y2FuIGFzw60gcXVlLCBpZGVhbG1lbnRlLCBlbCBwYXJjaGUgc8OzbG8gZGViZXLDrWEgYcOxYWRpciBsw61uZWFzICIKKyJudWV2YXMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo2NAorbXNnaWQgIiIKKyJOb3RlIHRoYXQgeW91IGNhbiBwdXQgY29tbWVudHMgaW4gc3ltYm9scyBmaWxlczogYW55IGxpbmUgd2l0aCAnIycgYXMgdGhlICIKKyJmaXJzdCBjaGFyYWN0ZXIgaXMgYSBjb21tZW50IGV4Y2VwdCBpZiBpdCBzdGFydHMgd2l0aCAnI2luY2x1ZGUnIChzZWUgIgorInNlY3Rpb24gQjxVc2luZyBpbmNsdWRlcz4pLiBMaW5lcyBzdGFydGluZyB3aXRoICcjTUlTU0lORzonIGFyZSBzcGVjaWFsICIKKyJjb21tZW50cyBkb2N1bWVudGluZyBzeW1ib2xzIHRoYXQgaGF2ZSBkaXNhcHBlYXJlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjY0CisjLCBuby13cmFwCittc2dpZCAiVXNpbmcgI1BBQ0tBR0UjIHN1YnN0aXR1dGlvbiIKK21zZ3N0ciAiVXNhciBsYSBzdXN0aXR1Y2nDs24gZGUgI1BBQ0tBR0UjIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo3MgorbXNnaWQgIiIKKyJJbiBzb21lIHJhcmUgY2FzZXMsIHRoZSBuYW1lIG9mIHRoZSBsaWJyYXJ5IHZhcmllcyBiZXR3ZWVuIGFyY2hpdGVjdHVyZXMuICAiCisiVG8gYXZvaWQgaGFyZGNvZGluZyB0aGUgbmFtZSBvZiB0aGUgcGFja2FnZSBpbiB0aGUgc3ltYm9scyBmaWxlLCB5b3UgY2FuIHVzZSAiCisidGhlIG1hcmtlciBJPCNQQUNLQUdFIz4uIEl0IHdpbGwgYmUgcmVwbGFjZWQgYnkgdGhlIHJlYWwgcGFja2FnZSBuYW1lIGR1cmluZyAiCisiaW5zdGFsbGF0aW9uIG9mIHRoZSBzeW1ib2xzIGZpbGVzLiBDb250cmFyeSB0byB0aGUgSTwjTUlOVkVSIz4gbWFya2VyLCAiCisiSTwjUEFDS0FHRSM+IHdpbGwgbmV2ZXIgYXBwZWFyIGluIGEgc3ltYm9scyBmaWxlIGluc2lkZSBhIGJpbmFyeSBwYWNrYWdlLiIKK21zZ3N0ciAiIgorIkVuIGFsZ3Vub3MgY2Fzb3MgYWlzbGFkb3MgZWwgbm9tYnJlIGRlIGxhIGJpYmxpb3RlY2EgdmFyw61hIHNlZ8O6biBsYSAiCisiYXJxdWl0ZWN0dXJhLiBQdWVkZSB1c2FyIGVsIG1hcmNhZG9yIEk8I1BBQ0tBR0UjPiBwYXJhIGV2aXRhciBpbmNydXN0YXIgIgorIijCq2hhcmRjb2RlwrspIGVsIG5vbWJyZSBkZWwgcGFxdWV0ZSBlbiBlbCBmaWNoZXJvIMKrc3ltYm9sc8K7LiBTZSByZWVtcGxhemFyw6EgIgorInBvciBlbCBub21icmUgcmVhbCBkZWwgcGFxdWV0ZSBkdXJhbnRlIGxhIGluc3RhbGFjacOzbiBkZSBsb3MgZmljaGVyb3MgIgorIsKrc3ltYm9sc8K7LiBBIGRpZmVyZW5jaWEgZGVsIG1hcmNhZG9yIEk8I01JTlZFUiM+LCBJPCNQQUNLQUdFIz4gbnVuY2EgIgorImFwYXJlY2Vyw6EgZW4gdW4gZmljaGVybyDCq3N5bWJvbHPCuyBjb250ZW5pZG8gZW4gdW4gcGFxdWV0ZSBiaW5hcmlvLiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjcyCisjLCBuby13cmFwCittc2dpZCAiVXNpbmcgc3ltYm9sIHRhZ3MiCittc2dzdHIgIlVzYXIgZXRpcXVldGFzIGRlIHPDrW1ib2xvcyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NzkKK21zZ2lkICIiCisiU3ltYm9sIHRhZ2dpbmcgaXMgdXNlZnVsIGZvciBtYXJraW5nIHN5bWJvbHMgdGhhdCBhcmUgc3BlY2lhbCBpbiBzb21lIHdheS4gICIKKyJBbnkgc3ltYm9sIGNhbiBoYXZlIGFuIGFyYml0cmFyeSBudW1iZXIgb2YgdGFncyBhc3NvY2lhdGVkIHdpdGggaXQuIFdoaWxlICIKKyJhbGwgdGFncyBhcmUgcGFyc2VkIGFuZCBzdG9yZWQsIG9ubHkgYSBzb21lIG9mIHRoZW0gYXJlIHVuZGVyc3Rvb2QgYnkgQjxkcGtnLSIKKyJnZW5zeW1ib2xzPiBhbmQgdHJpZ2dlciBzcGVjaWFsIGhhbmRsaW5nIG9mIHRoZSBzeW1ib2xzLiBTZWUgc3Vic2VjdGlvbiAiCisiQjxTdGFuZGFyZCBzeW1ib2wgdGFncz4gZm9yIHJlZmVyZW5jZSBvZiB0aGVzZSB0YWdzLiIKK21zZ3N0ciAiIgorIkVsIGV0aXF1ZXRhZG8gZGUgc8OtbWJvbG9zIGVzIMO6dGlsIHBhcmEgbWFyY2FyIGFxdWVsbG9zIHPDrW1ib2xvcyBxdWUgc29uIGRlICIKKyJhbGd1bmEgbWFuZXJhIGVzcGVjaWFsZXMuIENhZGEgc8OtbWJvbG8gcHVlZGUgdGVuZXIgdW4gbsO6bWVybyBhcmJpdHJhcmlvIGRlICIKKyJldGlxdWV0YXMgYXNvY2lhZGFzIGEgw6lzdGUuIEF1bnF1ZSBzZSBhbmFsaXphbiB5IGd1YXJkYW4gdG9kYXMgbGFzICIKKyJldGlxdWV0YXMsIEI8ZHBrZy1nZW5zeW1ib2xzPiBzw7NsbyBlbnRpZW5kZSBhbGd1bmFzIGRlIGVsbGFzLCBlIGluaWNpYXLDoSB1biAiCisidHJhdGFtaWVudG8gZXNwZWNpYWwgZGUgbG9zIHPDrW1ib2xvcy4gQ29uc3VsdGUgbGEgc3ViLXNlY2Npw7NuIEI8RXRpcXVldGFzICIKKyJlc3TDoW5kYXIgZGUgc8OtbWJvbG9zPiBwYXJhIHVuYSByZWZlcmVuY2lhIGRlIGVzdGFzIGV0aXF1ZXRhcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjkxCittc2dpZCAiIgorIlRhZyBzcGVjaWZpY2F0aW9uIGNvbWVzIHJpZ2h0IGJlZm9yZSB0aGUgc3ltYm9sIG5hbWUgKG5vIHdoaXRlc3BhY2UgaXMgIgorImFsbG93ZWQgaW4gYmV0d2VlbikuIEl0IGFsd2F5cyBzdGFydHMgd2l0aCBhbiBvcGVuaW5nIGJyYWNrZXQgQjwoPiwgZW5kcyAiCisid2l0aCBhIGNsb3NpbmcgYnJhY2tldCBCPCk+IGFuZCBtdXN0IGNvbnRhaW4gYXQgbGVhc3Qgb25lIHRhZy4gTXVsdGlwbGUgdGFncyAiCisiYXJlIHNlcGFyYXRlZCBieSB0aGUgQjx8PiBjaGFyYWN0ZXIuIEVhY2ggdGFnIGNhbiBvcHRpb25hbGx5IGhhdmUgYSB2YWx1ZSAiCisid2hpY2ggaXMgc2VwYXJhdGVkIGZvcm0gdGhlIHRhZyBuYW1lIGJ5IHRoZSBCPD0+IGNoYXJhY3Rlci4gVGFnIG5hbWVzIGFuZCAiCisidmFsdWVzIGNhbiBiZSBhcmJpdHJhcnkgc3RyaW5ncyBleGNlcHQgdGhleSBjYW5ub3QgY29udGFpbiBhbnkgb2YgdGhlICIKKyJzcGVjaWFsIEI8KT4gQjx8PiBCPD0+IGNoYXJhY3RlcnMuIFN5bWJvbCBuYW1lcyBmb2xsb3dpbmcgYSB0YWcgIgorInNwZWNpZmljYXRpb24gY2FuIG9wdGlvbmFsbHkgYmUgcXVvdGVkIHdpdGggZWl0aGVyIEI8Jz4gb3IgQjxcIj4gY2hhcmFjdGVycyAiCisidG8gYWxsb3cgd2hpdGVzcGFjZXMgaW4gdGhlbS4gSG93ZXZlciwgaWYgdGhlcmUgYXJlIG5vIHRhZ3Mgc3BlY2lmaWVkIGZvciAiCisidGhlIHN5bWJvbCwgcXVvdGVzIGFyZSB0cmVhdGVkIGFzIHBhcnQgb2YgdGhlIHN5bWJvbCBuYW1lIHdoaWNoIGNvbnRpbnVlcyB1cCAiCisidW50aWwgdGhlIGZpcnN0IHNwYWNlLiIKK21zZ3N0ciAiIgorIkxhIGVzcGVjaWZpY2FjacOzbiBkZSBsYSBldGlxdWV0YSBhcGFyZWNlIGEgY29udGludWFjacOzbiBkZWwgbm9tYnJlIGRlbCAiCisic8OtbWJvbG8gKG5vIHNlIHBlcm1pdGUgdW4gZXNwYWNpbyB2YWPDrW8gZW50cmUgZXN0b3MpLiBTaWVtcHJlIGNvbWllbnphIGNvbiAiCisidW4gcGFyw6ludGVzaXMgZGUgYXBlcnR1cmEgQjwoPiwgZmluYWxpemEgY29uIHVuIHBhcsOpbnRlc2lzIGRlIGNpZXJyZSBCPCk+LCB5ICIKKyJkZWJlIGNvbnRlbmVyIGFsIG1lbm9zIHVuYSBldGlxdWV0YS4gVmFyaWFzIGV0aXF1ZXRhcyBzZSBzZXBhcmFuIGNvbiB1biAiCisiY2Fyw6FjdGVyIEI8fD4uIE9wY2lvbmFsbWVudGUsIGNhZGEgZXRpcXVldGEgcHVlZGUgdGVuZXIgdW4gdmFsb3Igc2VwYXJhZG8gIgorImRlbCBub21icmUgZGUgbGEgZXRpcXVldGEgbWVkaWFudGUgZWwgY2Fyw6FjdGVyIEI8PT4uIExvcyBub21icmVzIGRlIGV0aXF1ZXRhICIKKyJ5IHZhbG9yZXMgcHVlZGVuIHNlciBjYWRlbmFzIGFyYml0cmFyaWFzLCBhIGV4Y2VwY2nDs24gZGUgcXVlIG5vIHB1ZWRlbiAiCisiY29udGVuZXIgbmluZ8O6biBjYXLDoWN0ZXIgZXNwZWNpYWw6IEI8KT4sIEI8fD4geSBCPD0+LiBMb3Mgbm9tYnJlcyBkZSBzw61tYm9sbyAiCisiYSBjb250aW51YWNpw7NuIGRlIHVuYSBlc3BlY2lmaWNhY2nDs24gZGUgZXRpcXVldGEgc2UgcHVlZGVuIGVudHJlY29taWxsYXIgY29uICIKKyJjYXJhY3RlcmVzIEI8Jz4gbyBCPFwiPiwgcGVybWl0aWVuZG8gYXPDrSBlc3BhY2lvcyB2YWPDrW9zLiBQb3Igb3RyYSBwYXJ0ZSwgZGUgIgorIm5vIGV4aXN0aXIgbmluZ3VuYSBldGlxdWV0YSBkZWZpbmlkYSBwYXJhIGVsIHPDrW1ib2xvLCBsYXMgY29taWxsYXMgc2UgIgorInRyYXRhcsOhbiBjb21vIHBhcnRlIGRlbCBub21icmUgZGVsIHPDrW1ib2xvLCBjb250aW51YW5kbyBoYXN0YSBlbCBwcmltZXIgIgorImVzcGFjaW8uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo5NQorIywgbm8td3JhcAorbXNnaWQgIiIKKyIgKHRhZzE9aSBhbSBtYXJrZWR8dGFnIG5hbWUgd2l0aCBzcGFjZSlcInRhZ2dlZCBxdW90ZWQgc3ltYm9sXCJAQmFzZSAxLjBcbiIKKyIgKG9wdGlvbmFsKXRhZ2dlZF91bnF1b3RlZF9zeW1ib2xAQmFzZSAxLjAgMVxuIgorIiB1bnRhZ2dlZF9zeW1ib2xAQmFzZSAxLjBcbiIKK21zZ3N0ciAiIgorIiAodGFnMT10ZW5nbyB1bmEgbWFyY2F8bm9tYnJlIGRlIGV0aXF1ZXRhIGNvbiBlc3BhY2lvKVwic8OtbWJvbG9cbiIKKyIgZW50cmVjb21pbGxhZG8geSBldGlxdWV0YWRvXCJAQmFzZSAxLjBcbiIKKyIgKG9wdGlvbmFsKXPDrW1ib2xvX3Npbl9jb21pbGxhc195X2V0aXF1ZXRhZG9AQmFzZSAxLjAgMVxuIgorIiBzw61tYm9sb19zaW5fZXRpcXVldGFyQEJhc2UgMS4wXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjEwMQorbXNnaWQgIiIKKyJUaGUgZmlyc3Qgc3ltYm9sIGluIHRoZSBleGFtcGxlIGlzIG5hbWVkIEk8dGFnZ2VkIHF1b3RlZCBzeW1ib2w+IGFuZCBoYXMgdHdvICIKKyJ0YWdzOiBJPHRhZzE+IHdpdGggdmFsdWUgSTxpIGFtIG1hcmtlZD4gYW5kIEk8dGFnIG5hbWUgd2l0aCBzcGFjZT4gdGhhdCBoYXMgIgorIm5vIHZhbHVlLiBUaGUgc2Vjb25kIHN5bWJvbCBuYW1lZCBJPHRhZ2dlZF91bnF1b3RlZF9zeW1ib2w+IGlzIG9ubHkgdGFnZ2VkICIKKyJ3aXRoIHRoZSB0YWcgbmFtZWQgSTxvcHRpb25hbD4uIFRoZSBsYXN0IHN5bWJvbCBpcyBhbiBleGFtcGxlIG9mIHRoZSBub3JtYWwgIgorInVudGFnZ2VkIHN5bWJvbC4iCittc2dzdHIgIiIKKyJFbCBwcmltZXIgc8OtbWJvbG8gZGVsIGVqZW1wbG8gc2UgbGxhbWEgSTxzw61tYm9sbyBlbnRyZWNvbWlsbGFkbyB5ICIKKyJldGlxdWV0YWRvPiwgeSB0aWVuZSBkb3MgZXRpcXVldGFzOiBJPHRhZzE+LCBjb24gZWwgdmFsb3IgSTx0ZW5nbyB1bmEgbWFyY2E+ICIKKyJ5IEk8bm9tYnJlIGRlIGV0aXF1ZXRhIGNvbiBlc3BhY2lvPiwgcXVlIG5vIHRpZW5lIHZhbG9yLiBFbCBzZWd1bmRvIHPDrW1ib2xvICIKKyJzZSBsbGFtYSBJPHPDrW1ib2xvX3Npbl9jb21pbGxhc195X2V0aXF1ZXRhZG8+LCB5IHPDs2xvIHRpZW5lIHVuYSBldGlxdWV0YSAiCisibGxhbWFkYSBJPG9wdGlvbmFsPi4gRWwgw7psdGltbyBzw61tYm9sbyBlcyB1biBlamVtcGxvIGRlIHVuIHPDrW1ib2xvIG5vcm1hbCAiCisic2luIGV0aXF1ZXRhci4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjExMworbXNnaWQgIiIKKyJTaW5jZSBzeW1ib2wgdGFncyBhcmUgYW4gZXh0ZW5zaW9uIG9mIHRoZSBJPGRlYi1zeW1ib2xzKDUpPiBmb3JtYXQsIHRoZXkgY2FuICIKKyJvbmx5IGJlIHBhcnQgb2YgdGhlIHN5bWJvbHMgZmlsZXMgdXNlZCBpbiBzb3VyY2UgcGFja2FnZXMgKHRob3NlIGZpbGVzICIKKyJzaG91bGQgdGhlbiBiZSBzZWVuIGFzIHRlbXBsYXRlcyB1c2VkIHRvIGJ1aWxkIHRoZSBzeW1ib2xzIGZpbGVzIHRoYXQgYXJlICIKKyJlbWJlZGRlZCBpbiBiaW5hcnkgcGFja2FnZXMpLiBXaGVuIEI8ZHBrZy1nZW5zeW1ib2xzPiBpcyBjYWxsZWQgd2l0aG91dCB0aGUgIgorIkk8LXQ+IG9wdGlvbiwgaXQgd2lsbCBvdXRwdXQgc3ltYm9scyBmaWxlcyBjb21wYXRpYmxlIHRvIHRoZSBJPGRlYi1zeW1ib2xzKDUpIgorIj4gZm9ybWF0OiBpdCBmdWxseSBwcm9jZXNzZXMgc3ltYm9scyBhY2NvcmRpbmcgdG8gdGhlIHJlcXVpcmVtZW50cyBvZiB0aGVpciAiCisic3RhbmRhcmQgdGFncyBhbmQgc3RyaXBzIGFsbCB0YWdzIGZyb20gdGhlIG91dHB1dC4gT24gdGhlIGNvbnRyYXJ5LCBpbiAiCisidGVtcGxhdGUgbW9kZSAoSTwtdD4pIGFsbCBzeW1ib2xzIGFuZCB0aGVpciB0YWdzIChib3RoIHN0YW5kYXJkIGFuZCB1bmtub3duICIKKyJvbmVzKSAgYXJlIGtlcHQgaW4gdGhlIG91dHB1dCBhbmQgYXJlIHdyaXR0ZW4gaW4gdGhlaXIgb3JpZ2luYWwgZm9ybSBhcyB0aGV5ICIKKyJ3ZXJlIGxvYWRlZC4iCittc2dzdHIgIiIKKyJEZWJpZG8gYSBxdWUgbGFzIGV0aXF1ZXRhcyBkZSBzw61tYm9sb3Mgc29uIHVuYSBleHRlbnNpw7NuIGRlbCBmb3JtYXRvIEk8ZGViLSIKKyJzeW1ib2xzKDUpPiBzw7NsbyBwdWVkZW4gZm9ybWFyIHBhcnRlIGRlIGxvcyBmaWNoZXJvcyDCq3N5bWJvbHPCuyBkZSBwYXF1ZXRlcyAiCisiZnVlbnRlIChlc3RvcyBmaWNoZXJvcyBkZWJlcsOtYW4gYXBhcmVjZXIgY29tbyBwbGFudGlsbGFzIHVzYWRhcyBwYXJhIGdlbmVyYXIgIgorImxvcyBmaWNoZXJvcyDCq3N5bWJvbHPCuyBpbnRlZ3JhZG9zIGVuIHBhcXVldGVzIGJpbmFyaW9zKS4gQ3VhbmRvIGludm9jYSAiCisiQjxkcGtnLWdlbnN5bWJvbHM+IGNvbiBsYSBvcGNpw7NuIEk8LXQ+LCBlbnZpYXLDoSBwb3IgbGEgc2FsaWRhIGZpY2hlcm9zICIKKyLCq3N5bWJvbHPCuyBjb21wYXRpYmxlcyBjb24gZWwgZm9ybWF0byBJPGRlYi1zeW1ib2xzKDUpPjogcHJvY2VzYSAiCisiY29tcGxldGFtZW50ZSBsb3Mgc8OtbWJvbG9zIGRlIGFjdWVyZG8gYSBsb3MgcmVxdWVyaW1pZW50b3MgZGUgc3VzIGV0aXF1ZXRhcyAiCisiZXN0w6FuZGFyLCB5IGVsaW1pbmEgdG9kYXMgbGFzIGV0aXF1ZXRhcyBkZSBsYSBzYWxpZGEuIFBvciBvdHJhIHBhcnRlLCBlbiBlbCAiCisibW9kbyBwbGFudGlsbGEgKEk8LXQ+KSwgdG9kb3MgbG9zIHPDrW1ib2xvcyB5IGV0aXF1ZXRhcyAoZXN0w6FuZGFyIHkgIgorImRlc2Nvbm9jaWRvcykgc2UgbXVlc3RyYW4gcG9yIGxhIHNhbGlkYSwgeSBzZSBlc2NyaWJlbiBlbiBzdSBmb3JtYSBvcmlnaW5hbCAiCisiYSBtZWRpZGEgcXVlIHNlIGNhcmdhbi4iCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLWdlbnN5bWJvbHMuMToxMTMKKyMsIG5vLXdyYXAKK21zZ2lkICJTdGFuZGFyZCBzeW1ib2wgdGFncyIKK21zZ3N0ciAiRXRpcXVldGFzIGRlIHPDrW1ib2xvIGVzdMOhbmRhciIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjExNAorIywgbm8td3JhcAorbXNnaWQgIkI8b3B0aW9uYWw+IgorbXNnc3RyICJCPG9wdGlvbmFsPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTI0Cittc2dpZCAiIgorIkEgc3ltYm9sIG1hcmtlZCBhcyBvcHRpb25hbCBjYW4gZGlzYXBwZWFyIGZyb20gdGhlIGxpYnJhcnkgYXQgYW55IHRpbWUgYW5kICIKKyJ0aGF0IHdpbGwgbmV2ZXIgY2F1c2UgQjxkcGtnLWdlbnN5bWJvbHM+IHRvIGZhaWwuIEhvd2V2ZXIsIGRpc2FwcGVhcmVkICIKKyJvcHRpb25hbCBzeW1ib2xzIHdpbGwgY29udGludW91c2x5IGFwcGVhciBhcyBNSVNTSU5HIGluIHRoZSBkaWZmIGluIGVhY2ggbmV3ICIKKyJwYWNrYWdlIHJldmlzaW9uLiAgVGhpcyBiZWhhdmlvdXIgc2VydmVzIGFzIGEgcmVtaW5kZXIgZm9yIHRoZSBtYWludGFpbmVyICIKKyJ0aGF0IHN1Y2ggYSBzeW1ib2wgbmVlZHMgdG8gYmUgcmVtb3ZlZCBmcm9tIHRoZSBzeW1ib2wgZmlsZSBvciByZWFkZGVkIHRvICIKKyJ0aGUgbGlicmFyeS4gV2hlbiB0aGUgb3B0aW9uYWwgc3ltYm9sLCB3aGljaCB3YXMgcHJldmlvdXNseSBkZWNsYXJlZCBhcyAiCisiTUlTU0lORywgc3VkZGVubHkgcmVhcHBlYXJzIGluIHRoZSBuZXh0IHJldmlzaW9uLCBpdCB3aWxsIGJlIHVwZ3JhZGVkIGJhY2sgIgorInRvIHRoZSBcImV4aXN0aW5nXCIgc3RhdHVzIHdpdGggaXRzIG1pbmltdW0gdmVyc2lvbiB1bmNoYW5nZWQuIgorbXNnc3RyICIiCisiVW4gc8OtbWJvbG8gbWFyY2FkbyBjb21vIG9wY2lvbmFsIHB1ZWRlIGRlc2FwYXJlY2VyIGRlIGxhIGJpYmxpb3RlY2EgZW4gIgorImN1YWxxdWllciBtb21lbnRvIHNpbiBjYXVzYXIgdW4gZmFsbG8gZGUgQjxkcGtnLWdlbnN5bWJvbHM+LiBQb3Igb3RyYSBwYXJ0ZSwgIgorImxvcyBzw61tYm9sb3Mgb3BjaW9uYWxlcyBkZXNhcGFyZWNpZG9zIGFwYXJlY2Vyw6FuIGNvbnRpbnVhbWVudGUgY29tbyAiCisiwqtNSVNTSU5HwrsgKGF1c2VudGUpIGVuIGVsIMKrZGlmZsK7IGRlIGNhZGEgbnVldmEgcmV2aXNpw7NuIGRlbCBwYXF1ZXRlLiBFc3RlICIKKyJjb21wb3J0YW1pZW50byBzaXJ2ZSBjb21vIHVuIHJlY29yZGF0b3JpbyBwYXJhIGVsIGRlc2Fycm9sbGFkb3IgcGFyYSAiCisiaW5mb3JtYXIgZGUgbGEgbmVjZXNpZGFkIGRlIGVsaW1pbmFyIHRhbCBzw61tYm9sbyBkZWwgZmljaGVybyDCq3N5bWJvbHPCuywgbyBkZSAiCisiYcOxYWRpciDDqXN0ZSBudWV2YW1lbnRlIGEgbGEgYmlibGlvdGVjYS4gQ3VhbmRvIGVsIHPDrW1ib2xvIG9wY2lvbmFsIGRlY2xhcmFkbyAiCisicHJldmlhbWVudGUgY29tbyDCq01JU1NJTkfCuyByZWFwYXJlY2UgZGUgc8O6Yml0byBlbiBsYSBzaWd1aWVudGUgcmV2aXNpw7NuLCBzZSAiCisiYWN0dWFsaXphcmEgYSB1biBlc3RhZG8gwqtleGlzdGVudGXCuyBzaW4gbW9kaWZpY2FyIGxhIHZlcnNpw7NuIG3DrW5pbWEuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToxMjkKK21zZ2lkICIiCisiVGhpcyB0YWcgaXMgdXNlZnVsIGZvciBzeW1ib2xzIHdoaWNoIGFyZSBwcml2YXRlIHdoZXJlIHRoZWlyIGRpc2FwcGVhcmFuY2UgIgorImRvIG5vdCBjYXVzZSBBQkkgYnJlYWthZ2UuIEZvciBleGFtcGxlLCBtb3N0IG9mIEMrKyB0ZW1wbGF0ZSBpbnN0YW50aWF0aW9ucyAiCisiZmFsbCBpbnRvIHRoaXMgY2F0ZWdvcnkuIExpa2UgYW55IG90aGVyIHRhZywgdGhpcyBvbmUgbWF5IGFsc28gaGF2ZSBhbiAiCisiYXJiaXRyYXJ5IHZhbHVlOiBpdCBjb3VsZCBiZSB1c2VkIHRvIGluZGljYXRlIHdoeSB0aGUgc3ltYm9sIGlzIGNvbnNpZGVyZWQgIgorIm9wdGlvbmFsLiIKK21zZ3N0ciAiIgorIkVzdGEgZXRpcXVldGEgZXMgw7p0aWwgcGFyYSBhcXVlbGxvcyBzw61tYm9sb3MgcHJpdmFkb3MgY3V5YSBkZXNhcGFyaWNpw7NuIG5vICIKKyJyb21wZSBsYSBBQkkuIFBvciBlamVtcGxvLCBsYSBtYXlvcsOtYSBkZSBwbGFudGlsbGFzIGRlIHByb2R1Y2Npw7NuIGRlIHVuICIKKyJvYmpldG8gZGVmaW5pZG8gbcOhcyBlc3BlY8OtZmljYW1lbnRlIHBvciBtZWRpbyBkZWwgcmVlbXBsYXpvIGRlIGNpZXJ0YXMgIgorInZhcmlhYmxlcyBwb3IgdmFsb3JlcyAowqtpbnN0YW50aWF0aW9uwrspIGRlIEMrKyBzZSBlbmN1ZW50cmFuIGRlbnRybyBkZSBlc3RhICIKKyJjYXRlZ29yw61hLiBBbCBpZ3VhbCBxdWUgY29uIGN1YWxxdWllciBvdHJhIGV0aXF1ZXRhLCDDqXN0ZSBwdWVkZSB0ZW5lciB1biAiCisidmFsb3IgYXJiaXRyYXJpbzogc2UgcHVlZGUgdXNhciBwYXJhIGluZGljYXIgcG9ycXXDqSBlbCBzw61tYm9sbyBzZSBjb25zaWRlcmEgIgorIm9wY2lvbmFsLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjEyOQorIywgbm8td3JhcAorbXNnaWQgIkI8YXJjaD0+STxhcmNoaXRlY3R1cmUgbGlzdD4iCittc2dzdHIgIkI8YXJjaD0+STxsaXN0YS1kZS1hcnF1aXRlY3R1cmFzPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTQyCittc2dpZCAiIgorIlRoaXMgdGFnIGFsbG93cyBvbmUgdG8gcmVzdHJpY3QgdGhlIHNldCBvZiBhcmNoaXRlY3R1cmVzIHdoZXJlIHRoZSBzeW1ib2wgaXMgIgorInN1cHBvc2VkIHRvIGV4aXN0LiBXaGVuIHRoZSBzeW1ib2xzIGxpc3QgaXMgdXBkYXRlZCB3aXRoIHRoZSBzeW1ib2xzICIKKyJkaXNjb3ZlcmVkIGluIHRoZSBsaWJyYXJ5LCBhbGwgYXJjaC1zcGVjaWZpYyBzeW1ib2xzIHdoaWNoIGRvIG5vdCBjb25jZXJuICIKKyJ0aGUgY3VycmVudCBob3N0IGFyY2hpdGVjdHVyZSBhcmUgdHJlYXRlZCBhcyBpZiB0aGV5IGRpZCBub3QgZXhpc3QuIElmIGFuICIKKyJhcmNoLXNwZWNpZmljIHN5bWJvbCBtYXRjaGluZyB0aGUgY3VycmVudCBob3N0IGFyY2hpdGVjdHVyZSBkb2VzIG5vdCBleGlzdCAiCisiaW4gdGhlIGxpYnJhcnksIG5vcm1hbCBwcm9jZWR1cmVzIGZvciBtaXNzaW5nIHN5bWJvbHMgYXBwbHkgYW5kIGl0IG1heSBjYXVzZSAiCisiQjxkcGtnLWdlbnN5bWJvbHM+IHRvIGZhaWwuIE9uIHRoZSBvdGhlciBoYW5kLCBpZiB0aGUgYXJjaC1zcGVjaWZpYyBzeW1ib2wgIgorImlzIGZvdW5kIHdoZW4gaXQgd2FzIG5vdCBzdXBwb3NlZCB0byBleGlzdCAoYmVjYXVzZSB0aGUgY3VycmVudCBob3N0ICIKKyJhcmNoaXRlY3R1cmUgaXMgbm90IGxpc3RlZCBpbiB0aGUgdGFnKSwgaXQgaXMgbWFkZSBhcmNoIG5ldXRyYWwgKGkuZS4gdGhlICIKKyJhcmNoIHRhZyBpcyBkcm9wcGVkIGFuZCB0aGUgc3ltYm9sIHdpbGwgYXBwZWFyIGluIHRoZSBkaWZmIGR1ZSB0byB0aGlzICIKKyJjaGFuZ2UpLCBidXQgaXQgaXMgbm90IGNvbnNpZGVyZWQgYXMgbmV3LiIKK21zZ3N0ciAiIgorIkVzdGEgZXRpcXVldGEgcGVybWl0ZSBsaW1pdGFyIGVsIGNvbmp1bnRvIGRlIGFycXVpdGVjdHVyYXMgZMOzbmRlIHNlIHN1cG9uZSAiCisicXVlIGVsIHPDrW1ib2xvIGV4aXN0ZS4gQ3VhbmRvIGxhIGxpc3RhIGRlIHPDrW1ib2xvcyBzZSBhY3R1YWxpemEgY29uIGxvcyAiCisic8OtbWJvbG9zIGRlc2N1YmllcnRvcyBlbiBsYSBiaWJsaW90ZWNhLCB0b2RvcyBsb3Mgc8OtbWJvbG9zIGVzcGVjw61maWNvcyBkZSBsYSAiCisiYXJxdWl0ZWN0dXJhIHF1ZSBubyBzb24gcmVsZXZhbnRlcyBwYXJhIGxhIGFycXVpdGVjdHVyYSBhbmZpdHJpw7NuIHNlIHRvbWFuICIKKyJjb21vIG5vIGV4aXN0ZW50ZXMuIFNpIHVuIHPDrW1ib2xvIGVzcGVjw61maWNvIGEgbGEgYXJxdWl0ZWN0dXJhIHF1ZSBjb25jdWVyZGEgIgorImNvbiBsYSBhcnF1aXRlY3R1cmEgYW5maXRyacOzbiBwcmVzZW50ZSBubyBleGlzdGUgZW4gbGEgYmlibGlvdGVjYSwgc2UgIgorImFwbGljYXLDoW4gbG9zIHByb2NlZGltaWVudG9zIG5vcm1hbGVzIHBhcmEgc8OtbWJvbG9zIGRlc2FwYXJlY2lkb3MsIGxsZXZhbmRvICIKKyJhIHF1ZSBCPGRwa2ctZ2Vuc3ltYm9scz4gZmFsbGUuIFBvciBvdHJhIHBhcnRlLCBzaSBlbCBzw61tYm9sbyBlc3BlY8OtZmljbyBhICIKKyJsYSBhcnF1aXRlY3R1cmEgc2UgZW5jdWVudHJhIGN1YW5kbyBzZSBzdXBvbsOtYSBxdWUgbm8gZXhpc3RlIChwb3JxdWUgbGEgIgorImFycXVpdGVjdHVyYSBhbmZpdHJpw7NuIHByZXNlbnRlIG5vIGVzdMOhIGxpc3RhZGEgZW4gbGEgZXRpcXVldGEpLCBwYXNhIGEgc2VyICIKKyJuZXV0cmFsIGEgbGEgYXJxdWl0ZWN0dXJhIChwb3IgZWplbXBsbywgc2UgZWxpbWluYSBsYSBldGlxdWV0YSBkZSAiCisiYXJxdWl0ZWN0dXJhLCBhcGFyZWNpZW5kbyBlbCBzw61tYm9sbyBlbiBlbCDCq2RpZmbCuyBkZWJpZG8gYSBsYSBtb2RpZmljYWNpw7NuKSwgIgorInBlcm8gbm8gc2UgdG9tYSBjb21vIHVuIG51ZXZvIHPDrW1ib2xvLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTQ4Cittc2dpZCAiIgorIldoZW4gb3BlcmF0aW5nIGluIHRoZSBkZWZhdWx0IG5vbi10ZW1wbGF0ZSBtb2RlLCBhbW9uZyBhcmNoLXNwZWNpZmljIHN5bWJvbHMgIgorIm9ubHkgdGhvc2UgdGhhdCBtYXRjaCB0aGUgY3VycmVudCBob3N0IGFyY2hpdGVjdHVyZSBhcmUgd3JpdHRlbiB0byB0aGUgIgorInN5bWJvbHMgZmlsZS4gT24gdGhlIGNvbnRyYXJ5LCBhbGwgYXJjaC1zcGVjaWZpYyBzeW1ib2xzIChpbmNsdWRpbmcgdGhvc2UgIgorImZyb20gZm9yZWlnbiBhcmNoZXMpIGFyZSBhbHdheXMgd3JpdHRlbiB0byB0aGUgc3ltYm9sIGZpbGUgd2hlbiBvcGVyYXRpbmcgaW4gIgorInRlbXBsYXRlIG1vZGUuIgorbXNnc3RyICIiCisiQWwgb3BlcmFyIGVuIGVsIG1vZG8gcG9yIG9taXNpw7NuIChzaW4gcGxhbnRpbGxhKSBzw7NsbyBzZSBlc2NyaWJpcsOhbiBhbCAiCisiZmljaGVybyDCq3N5bWJvbHPCuyBhcXVlbGxvcyBzw61tYm9sb3MgZXNwZWPDrWZpY29zIGEgbGEgYXJxdWl0ZWN0dXJhIHF1ZSAiCisiY29pbmNpZGVuIGNvbiBsYSBhcnF1aXRlY3R1cmEgYW5maXRyacOzbi4gUG9yIG90cmEgcGFydGUsIGVuIGVsIG1vZG8gIgorInBsYW50aWxsYSB0b2RvcyBsb3Mgc8OtbWJvbG9zIGVzcGVjw61maWNvcyBhIGxhIGFycXVpdGVjdHVyYSAoaW5jbHV5ZW5kbyAiCisiYXJxdWl0ZWN0dXJhcyBhbHRlcm5hdGl2YXMpIHNpZW1wcmUgc2UgZXNjcmliaXLDoW4gYWwgZmljaGVybyDCq3N5bWJvbHPCuy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjE1NAorbXNnaWQgIiIKKyJUaGUgZm9ybWF0IG9mIEk8YXJjaGl0ZWN0dXJlIGxpc3Q+IGlzIHRoZSBzYW1lIGFzIHRoZSBvbmUgdXNlZCBpbiB0aGUgIgorIkk8QnVpbGQtRGVwZW5kcz4gZmllbGQgb2YgSTxkZWJpYW4vY29udHJvbD4gKGV4Y2VwdCB0aGUgZW5jbG9zaW5nIHNxdWFyZSAiCisiYnJhY2tldHMgW10pLiBGb3IgZXhhbXBsZSwgdGhlIGZpcnN0IHN5bWJvbCBmcm9tIHRoZSBsaXN0IGJlbG93IHdpbGwgYmUgIgorImNvbnNpZGVyZWQgb25seSBvbiBhbHBoYSwgYW1kNjQsIGtmcmVlYnNkLWFtZDY0IGFuZCBpYTY0IGFyY2hpdGVjdHVyZXMgd2hpbGUgIgorInRoZSBzZWNvbmQgb25lIGFueXdoZXJlIGV4Y2VwdCBvbiBhcm1lbC4iCittc2dzdHIgIiIKKyJFbCBmb3JtYXRvIGRlIEk8bGlzdGEtZGUtYXJxdWl0ZWN0dXJhcz4gZXMgZWwgbWlzbW8gcXVlIGVsIHVzYWRvIGVuIGVsIGNhbXBvICIKKyJJPEJ1aWxkLURlcGVuZHM+IGRlIEk8ZGViaWFuL2NvbnRyb2w+IChhIGV4Y2VwY2nDs24gZGUgbG9zIHBhcsOpbnRlc2lzICIKKyJjdWFkcmFkb3MgZGUgY2llcnJlIMKrW13CuykuIFBvciBlamVtcGxvLCBlbCBwcmltZXIgc8OtbWJvbG8gZGUgbGEgbGlzdGEgYSAiCisiY29udGludWFjacOzbiBzZSBjb25zaWRlcmFyw6Egc8OzbG8gZW4gbGFzIGFycXVpdGVjdHVyYXMgYWxwaGEsIGFtZDY0LCBrZnJlZWJzZC0iCisiYW1kNjQgeSBpYTY0LCBtaWVudHJhcyBxdWUgZWwgc2VndW5kbyBlbiB0b2RvcyBtZW5vcyBhcm1lbC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjE1NworIywgbm8td3JhcAorbXNnaWQgIiIKKyIgKGFyY2g9YWxwaGEgYW1kNjQga2ZyZWVic2QtYW1kNjQgaWE2NClhXzY0Yml0X3NwZWNpZmljX3N5bWJvbEBCYXNlIDEuMFxuIgorIiAoYXJjaD0hYXJtZWwpc3ltYm9sX2FybWVsX2RvZXNfbm90X2hhdmVAQmFzZSAxLjBcbiIKK21zZ3N0ciAiIgorIiAoYXJjaD1hbHBoYSBhbWQ2NCBrZnJlZWJzZC1hbWQ2NCBpYTY0KXVuX3PDrW1ib2xvIF9lc3BlY8OtZmljb182NGJpdEBCYXNlIDEuMFxuIgorIiAoYXJjaD0hYXJtZWwpc8OtbWJvbG9fcXVlX2FybWVsX25vX3RpZW5lQEJhc2UgMS4wXG4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbnN5bWJvbHMuMToxNTcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGlnbm9yZS1ibGFja2xpc3Q+IgorbXNnc3RyICJCPGlnbm9yZS1ibGFja2xpc3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToxNjUKK21zZ2lkICIiCisiZHBrZy1nZW5zeW1ib2xzIGhhcyBhbiBpbnRlcm5hbCBibGFja2xpc3Qgb2Ygc3ltYm9scyB0aGF0IHNob3VsZCBub3QgYXBwZWFyICIKKyJpbiBzeW1ib2xzIGZpbGVzIGFzIHRoZXkgYXJlIHVzdWFsbHkgb25seSBzaWRlLWVmZmVjdHMgb2YgaW1wbGVtZW50YXRpb24gIgorImRldGFpbHMgb2YgdGhlIHRvb2xjaGFpbi4gSWYgZm9yIHNvbWUgcmVhc29uLCB5b3UgcmVhbGx5IHdhbnQgb25lIG9mIHRob3NlICIKKyJzeW1ib2xzIHRvIGJlIGluY2x1ZGVkIGluIHRoZSBzeW1ib2xzIGZpbGUsIHlvdSBzaG91bGQgdGFnIHRoZSBzeW1ib2wgd2l0aCAiCisiQjxpZ25vcmUtYmxhY2tsaXN0Pi4gSXQgY2FuIGJlIG5lY2Vzc2FyeSBmb3Igc29tZSBsb3cgbGV2ZWwgdG9vbGNoYWluICIKKyJsaWJyYXJpZXMgbGlrZSBsaWJnY2MuIgorbXNnc3RyICIiCisiZHBrZy1nZW5zeW1ib2xzIHRpZW5lIHVuYSBsaXN0YSBuZWdyYSBpbnRlcm5hIGRlIHPDrW1ib2xvcyBxdWUgbm8gZGViZXLDrWFuICIKKyJhcGFyZWNlciBlbiBsb3MgZmljaGVyb3MgwqtzeW1ib2xzwrssIHlhIHF1ZSBoYWJpdHVhbG1lbnRlIHNvbiBzw7NsbyBlZmVjdG9zICIKKyJzZWN1bmRhcmlvcyBkZSBsb3MgZGV0YWxsYXMgZGUgaW1wbGVtZW50YWNpw7NuIGRlIGxhIGNhZGVuYSBkZSBoZXJyYW1pZW50YXMuICIKKyJTaSBwb3IgYWxndW5hIHJhesOzbiBkZXNlYSBpbmNsdWlyIHVubyBkZSBlc29zIHPDrW1ib2xvcyBlbiBlbCBmaWNoZXJvICIKKyLCq3N5bWJvbHPCuyBkZWJlcsOtYSBldGlxdWV0YXIgZWwgc8OtbWJvbG8gY29uIEI8aWdub3JlLWJsYWNrbGlzdD4uIFB1ZWRlIHNlciAiCisibmVjZXNhcmlvIGNvbiBhbGd1bmEgY2FkZW5hIGRlIGhlcnJhbWllbnRhcyBkZSBiYWpvIG5pdmVsIGNvbW8gbGliZ2NjLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjE2NSBkcGtnLWdlbnN5bWJvbHMuMToyMDIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGMrKz4iCittc2dzdHIgIkI8YysrPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTY5Cittc2dpZCAiIgorIkRlbm90ZXMgSTxjKys+IHN5bWJvbCBwYXR0ZXJuLiBTZWUgQjxVc2luZyBzeW1ib2wgcGF0dGVybnM+IHN1YnNlY3Rpb24gYmVsb3cuIgorbXNnc3RyICIiCisiRGVub3RhIGVsIHBhdHLDs24gSTxjKys+LSBDb25zdWx0ZSBsYSBzdWJzZWNjacOzbiBhIGNvbnRpbnVhY2nDs24gQjxVc2FyICIKKyJwYXRyb25lcyBkZSBzw61tYm9sb3M+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjE2OSBkcGtnLWdlbnN5bWJvbHMuMToyMzMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHN5bXZlcj4iCittc2dzdHIgIkI8c3ltdmVyPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTczCittc2dpZCAiIgorIkRlbm90ZXMgSTxzeW12ZXI+IChzeW1ib2wgdmVyc2lvbikgc3ltYm9sIHBhdHRlcm4uIFNlZSBCPFVzaW5nIHN5bWJvbCAiCisicGF0dGVybnM+IHN1YnNlY3Rpb24gYmVsb3cuIgorbXNnc3RyICIiCisiRGVub3RhIGVsIHBhdHLDs24gZGUgc8OtbWJvbG9zIEk8c3ltdmVyPiAodmVyc2nDs24gZGVsIHPDrW1ib2xvKS4gQ29uc3VsdGUgbGEgIgorInN1Yi1zZWNjacOzbiBhIGNvbnRpbnVhY2nDs24gQjxVc2FyIHBhdHJvbmVzIGRlIHPDrW1ib2xvcz4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTczIGRwa2ctZ2Vuc3ltYm9scy4xOjI1OAorIywgbm8td3JhcAorbXNnaWQgIkI8cmVnZXg+IgorbXNnc3RyICJCPHJlZ2V4PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTc3Cittc2dpZCAiIgorIkRlbm90ZXMgSTxyZWdleD4gc3ltYm9sIHBhdHRlcm4uIFNlZSBCPFVzaW5nIHN5bWJvbCBwYXR0ZXJucz4gc3Vic2VjdGlvbiAiCisiYmVsb3cuIgorbXNnc3RyICIiCisiRGVub3RhIGVsIHBhdHLDs24gZGUgc8OtbWJvbG9zIEk8cmVnZXg+IChleHByZXNpw7NuIHJlZ3VsYXIpLiBDb25zdWx0ZSBsYSBzdWItIgorInNlY2Npw7NuIGEgY29udGludWFjacOzbiBCPFVzYXIgcGF0cm9uZXMgZGUgc8OtbWJvbG9zPi4iCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLWdlbnN5bWJvbHMuMToxNzcKKyMsIG5vLXdyYXAKK21zZ2lkICJVc2luZyBzeW1ib2wgcGF0dGVybnMiCittc2dzdHIgIlVzYXIgcGF0cm9uZXMgZGUgc8OtbWJvbG9zLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTg1Cittc2dpZCAiIgorIlVubGlrZSBhIHN0YW5kYXJkIHN5bWJvbCBzcGVjaWZpY2F0aW9uLCBhIHBhdHRlcm4gbWF5IGNvdmVyIG11bHRpcGxlIHJlYWwgIgorInN5bWJvbHMgZnJvbSB0aGUgbGlicmFyeS4gQjxkcGtnLWdlbnN5bWJvbHM+IHdpbGwgYXR0ZW1wdCB0byBtYXRjaCBlYWNoICIKKyJwYXR0ZXJuIGFnYWluc3QgZWFjaCByZWFsIHN5bWJvbCB0aGF0IGRvZXMgSTxub3Q+IGhhdmUgYSBzcGVjaWZpYyBzeW1ib2wgIgorImNvdW50ZXJwYXJ0IGRlZmluZWQgaW4gdGhlIHN5bWJvbCBmaWxlLiBXaGVuZXZlciB0aGUgZmlyc3QgbWF0Y2hpbmcgcGF0dGVybiAiCisiaXMgZm91bmQsIGFsbCBpdHMgdGFncyBhbmQgcHJvcGVydGllcyB3aWxsIGJlIHVzZWQgYXMgYSBiYXNpcyBzcGVjaWZpY2F0aW9uICIKKyJvZiB0aGUgc3ltYm9sLiBJZiBub25lIG9mIHRoZSBwYXR0ZXJucyBtYXRjaGVzLCB0aGUgc3ltYm9sIHdpbGwgYmUgIgorImNvbnNpZGVyZWQgYXMgbmV3LiIKK21zZ3N0ciAiIgorIkEgZGlmZXJlbmNpYSBkZSBjdWFscXVpZXIgZGVmaW5pY2nDs24gZGUgc8OtbWJvbG8gZXN0w6FuZGFyIHVuIHBhdHLDs24gcHVlZGUgIgorImN1YnJpciB2YXJpb3Mgc8OtbWJvbG9zIHJlYWxlcyBkZSBsYSBiaWJsaW90ZWNhLiBCPGRwa2ctZ2Vuc3ltYm9scz4gaW50ZW50YXLDoSAiCisiZW1wYXJlamFyIGNhZGEgcGF0csOzbiBjb24gY2FkYSBzw61tYm9sbyByZWFsIHF1ZSBJPG5vPiB0aWVuZSB1biBzw61tYm9sbyAiCisiZXNwZWPDrWZpY28gZGUgY29udHJhcGFydGlkYSBkZWZpbmlkbyBlbiBlbCBmaWNoZXJvIGRlIHPDrW1ib2xvcy4gRW4gZWwgIgorIm1vbWVudG8gcXVlIHNlIGVuY3VlbnRyZSBlbCBwcmltZXIgcGF0csOzbiBxdWUgY29pbmNpZGEgc2UgdXNhcsOhbiB0b2RhcyBzdXMgIgorImV0aXF1ZXRhcyB5IHByb3BpZWRhZGVzIGNvbW8gdW4gZGVmaW5pY2nDs24gYsOhc2ljYSBkZWwgc8OtbWJvbG8uIFNpIG5pbmd1bm8gZGUgIgorImxvcyBwYXRyb25lcyBlbmNhamEsIGVsIHPDrW1ib2xvIHNlIGNvbnNpZGVyYXLDoSBudWV2by4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjE5MworbXNnaWQgIiIKKyJBIHBhdHRlcm4gaXMgY29uc2lkZXJlZCBsb3N0IGlmIGl0IGRvZXMgbm90IG1hdGNoIGFueSBzeW1ib2wgaW4gdGhlIGxpYnJhcnkuICIKKyJCeSBkZWZhdWx0IHRoaXMgd2lsbCB0cmlnZ2VyIGEgQjxkcGtnLWdlbnN5bWJvbHM+IGZhaWx1cmUgdW5kZXIgSTwtYzE+IG9yICIKKyJoaWdoZXIgbGV2ZWwuIEhvd2V2ZXIsIGlmIHRoZSBmYWlsdXJlIGlzIHVuZGVzaXJlZCwgdGhlIHBhdHRlcm4gbWF5IGJlICIKKyJtYXJrZWQgd2l0aCB0aGUgSTxvcHRpb25hbD4gdGFnLiBUaGVuIGlmIHRoZSBwYXR0ZXJuIGRvZXMgbm90IG1hdGNoICIKKyJhbnl0aGluZywgaXQgd2lsbCBvbmx5IGFwcGVhciBpbiB0aGUgZGlmZiBhcyBNSVNTSU5HLiBNb3Jlb3ZlciwgbGlrZSBhbnkgIgorInN5bWJvbCwgdGhlIHBhdHRlcm4gbWF5IGJlIGxpbWl0ZWQgdG8gdGhlIHNwZWNpZmljIGFyY2hpdGVjdHVyZXMgd2l0aCB0aGUgIgorIkk8YXJjaD4gdGFnLiBQbGVhc2UgcmVmZXIgdG8gQjxTdGFuZGFyZCBzeW1ib2wgdGFncz4gc3Vic2VjdGlvbiBhYm92ZSBmb3IgIgorIm1vcmUgaW5mb3JtYXRpb24uIgorbXNnc3RyICIiCisiVW4gcGF0csOzbiBzZSBjb25zaWRlcmEgcGVyZGlkbyBzaSBubyBlbmNhamEgY29uIG5pbmfDum4gc8OtbWJvbG8gZW4gbGEgIgorImJpYmxpb3RlY2EuIFBvciBvbWlzacOzbiwgZXN0byBhY2Npb25hcsOhIHVuIGZhbGxvIGRlIEI8ZHBrZy1nZW5zeW1ib2xzPiBiYWpvICIKKyJJPC1jMT4gbyB1biBuaXZlbCBzdXBlcmlvci4gQXVuIGFzw60sIHNpIG5vIGRlc2VhIGxhIGFwYXJpY2nDs24gZGVsIGZhbGxvLCAiCisicHVlZGUgbWFyY2FyIGVsIHBhdHLDs24gY29uIGxhIGV0aXF1ZXRhIEk8b3B0aW9uYWw+LiBFbnRvbmNlcywgc2kgZWwgcGF0csOzbiAiCisibm8gZW5jYWphIGNvbiBuYWRhIHNpbXBsZW1lbnRlIGFwYXJlY2Vyw6EgZW4gZWwgwqtkaWZmwrsgY29tbyDCq01JU1NJTkfCuy4gQcO6biAiCisibcOhcywgYWwgaWd1YWwgcXVlIGNvbiBjdWFscXVpZXIgc8OtbWJvbG8sIHB1ZWRlIGxpbWl0YXIgZWwgcGF0csOzbiBhIHVuYXMgIgorImFycXVpdGVjdHVyYXMgZGVmaW5pZGFzIGNvbiBsYSBldGlxdWV0YSBJPGFyY2g+LiBDb25zdWx0ZSBsYSBzZWNjacOzbiAiCisiYW50ZXJpb3IgQjxFdGlxdWV0YXMgZGUgc8OtbWJvbG8gZXN0w6FuZGFyPi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjIwMAorbXNnaWQgIiIKKyJQYXR0ZXJucyBhcmUgYW4gZXh0ZW5zaW9uIG9mIHRoZSBJPGRlYi1zeW1ib2xzKDUpPiBmb3JtYXQgaGVuY2UgdGhleSBhcmUgIgorIm9ubHkgdmFsaWQgaW4gc3ltYm9sIGZpbGUgdGVtcGxhdGVzLiBQYXR0ZXJuIHNwZWNpZmljYXRpb24gc3ludGF4IGlzIG5vdCBhbnkgIgorImRpZmZlcmVudCBmcm9tIHRoZSBvbmUgb2YgYSBzcGVjaWZpYyBzeW1ib2wuIEhvd2V2ZXIsIHN5bWJvbCBuYW1lIHBhcnQgb2YgIgorInRoZSBzcGVjaWZpY2F0aW9uIHNlcnZlcyBhcyBhbiBleHByZXNzaW9uIHRvIGJlIG1hdGNoZWQgYWdhaW5zdCAiCisiSTxuYW1lQHZlcnNpb24+IG9mIHRoZSByZWFsIHN5bWJvbC4gSW4gb3JkZXIgdG8gZGlzdGluZ3Vpc2ggYW1vbmcgZGlmZmVyZW50ICIKKyJwYXR0ZXJuIHR5cGVzLCBhIHBhdHRlcm4gd2lsbCB0eXBpY2FsbHkgYmUgdGFnZ2VkIHdpdGggYSBzcGVjaWFsIHRhZy4iCittc2dzdHIgIiIKKyJMb3MgcGF0cm9uZXMgc29uIHVuYSBleHRlbnNpw7NuIGRlbCBmb3JtYXRvIEk8ZGViLXN5bWJvbHMoNSk+LCB5IHBvciBlbGxvICIKKyJzw7NsbyBzb24gdsOhbGlkb3MgZW4gcGxhbnRpbGxhcyBkZSBmaWNoZXJvIGRlIHPDrW1ib2xvcy4gUG9yIG90cmEgcGFydGUsIGxhICIKKyJwYXJ0ZSBkZWwgbm9tYnJlIGRlbCBzw61tYm9sbyBkZWZpbmlkbyBzaXJ2ZSBjb21vIHVuYSBleHByZXNpw7NuIHF1ZSBzZSAiCisiY29tcGFyYXLDoSBjb24gZWwgSTxub21icmVAdmVyc2nDs24+IGRlbCBzw61tYm9sbyByZWFsLiBQYXJhIHBvZGVyIGRpc3Rpbmd1aXIgIgorImVudHJlIGxvcyBkaWZlcmVudGVzIHRpcG9zIGRlIHBhdHLDs24sIMOpc3RlIHNlIGV0aXF1ZXRhcsOhIGhhYml0dWFsbWVudGUgY29uICIKKyJ1bmEgZXRpcXVldGEgZXNwZWNpYWwuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyMDIKK21zZ2lkICJBdCB0aGUgbW9tZW50LCBCPGRwa2ctZ2Vuc3ltYm9scz4gc3VwcG9ydHMgdGhyZWUgYmFzaWMgcGF0dGVybiB0eXBlczoiCittc2dzdHIgIiIKKyJBIGTDrWEgZGUgaG95LCBCPGRwa2ctZ2Vuc3ltYm9scz4gZXMgY29tcGF0aWJsZSBjb24gdHJlcyB0aXBvcyBkZSBwYXRyb25lcyAiCisiYsOhc2ljb3M6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyMTQKK21zZ2lkICIiCisiVGhpcyBwYXR0ZXJuIGlzIGRlbm90ZWQgYnkgdGhlIEk8YysrPiB0YWcuIEl0IG1hdGNoZXMgb25seSBDKysgc3ltYm9scyBieSAiCisidGhlaXIgZGVtYW5nbGVkIHN5bWJvbCBuYW1lIChhcyBlbWl0dGVkIGJ5IEI8YysrZmlsdD4oMSkgdXRpbGl0eSkuIFRoaXMgIgorInBhdHRlcm4gaXMgdmVyeSBoYW5keSBmb3IgbWF0Y2hpbmcgc3ltYm9scyB3aGljaCBtYW5nbGVkIG5hbWVzIG1pZ2h0IHZhcnkgIgorImFjcm9zcyBkaWZmZXJlbnQgYXJjaGl0ZWN0dXJlcyB3aGlsZSB0aGVpciBkZW1hbmdsZWQgbmFtZXMgcmVtYWluIHRoZSBzYW1lLiAiCisiT25lIGdyb3VwIG9mIHN1Y2ggc3ltYm9scyBpcyBJPG5vbi12aXJ0dWFsIHRodW5rcz4gd2hpY2ggaGF2ZSBhcmNoaXRlY3R1cmUgIgorInNwZWNpZmljIG9mZnNldHMgZW1iZWRkZWQgaW4gdGhlaXIgbWFuZ2xlZCBuYW1lcy4gQSBjb21tb24gaW5zdGFuY2Ugb2YgdGhpcyAiCisiY2FzZSBpcyBhIHZpcnR1YWwgZGVzdHJ1Y3RvciB3aGljaCB1bmRlciBkaWFtb25kIGluaGVyaXRhbmNlIG5lZWRzIGEgbm9uLSIKKyJ2aXJ0dWFsIHRodW5rIHN5bWJvbC4gRm9yIGV4YW1wbGUsIGV2ZW4gaWYgX1pUaG44X04zTlNCNkNsYXNzREQxRXZAQmFzZSBvbiAiCisiMzJiaXQgYXJjaGl0ZWN0dXJlcyB3aWxsIHByb2JhYmx5IGJlIF9aVGhuMTZfTjNOU0I2Q2xhc3NERDFFdkBCYXNlIG9uIDY0Yml0ICIKKyJvbmVzLCBpdCBjYW4gYmUgbWF0Y2hlZCB3aXRoIGEgc2luZ2xlIEk8YysrPiBwYXR0ZXJuOiIKK21zZ3N0ciAiIgorIkVzdGUgcGF0csOzbiBzZSBpbmRpY2EgY29uIGxhIGV0aXF1ZXRhIEk8YysrPi4gU8OzbG8gZW5jYWphIGNvbiBlbCBub21icmUgIgorIsKrZGVtYW5nbGVkwrsgZGUgc8OtbWJvbG9zIEMrKyAodGFsIHkgY29tbyBtdWVzdHJhIGxhIGhlcnJhbWllbnRhIEI8YysrZmlsdD4iCisiKDEpKS4gRXN0ZSBwYXRyw7NuIGVzIGRlIHV0aWxpZGFkIHBhcmEgZW1wYXJlamFyIHPDrW1ib2xvcyBjb24gbm9tYnJlcyAiCisiwqttYW5nbGVkwrsgcXVlIHB1ZWRlbiB2YXJpYXIgc2Vnw7puIGxhIGFycXVpdGVjdHVyYSwgbWllbnRyYXMgcXVlIHN1cyBub21icmVzICIKKyLCq2RlbWFuZ2xlZMK7IHBlcm1hbmVjZW4gc2luIGNhbWJpb3MuIFVuIGdydXBvIGRlIGVzdG9zIHPDrW1ib2xvcyBzb24gbG9zICIKKyJJPHRodW5rIG5vIHZpcnR1YWxlcz4sIHF1ZSB0aWVuZW4gZGlyZWNjaW9uZXMgcmVsYXRpdmFzICjCq29mZnNldHPCuykgIgorImVzcGVjw61maWNhcyBhIGxhIGFycXVpdGVjdHVyYSBpbnRlZ3JhZGFzIGVuIHN1cyBub21icmVzIMKrbWFuZ2xlZMK7LiBVbiAiCisiZWplbXBsbyBjb23Dum4gZGUgZXN0ZSBjYXNvIGVzIHVuIGRlc3RydWN0b3IgdmlydHVhbCwgcXVlIGJham8gdW5hIGhlcmVuY2lhICIKKyJkZSBkaWFtYW50ZSBuZWNlc2l0YSB1biBzw61tYm9sbyB0aHVuayBubyB2aXJ0dWFsLiBQb3IgZWplbXBsbywgaW5jbHVzbyBzaSAiCisiwqtfWlRobjhfTjNOU0I2Q2xhc3NERDFFdkBCYXNlwrsgZW4gYXJxdWl0ZWN0dXJhcyBkZSAzMmJpdCBlcyAiCisiwqtfWlRobjE2X04zTlNCNkNsYXNzREQxRXZAQmFzZcK7IGVuIGFycXVpdGVjdHVyYXMgZGUgNjRiaXQsIHB1ZWRlIGVtcGFyZWphcmxvICIKKyJjb24gdW4gw7puaWNvIHBhdHLDs24gSTxjKys+OiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjIwCisjLCBuby13cmFwCittc2dpZCAiIgorImxpYmR1bW15LnNvLjEgbGliZHVtbXkxICNNSU5WRVIjXG4iCisiIFsuLi5dXG4iCisiIChjKyspXCJub24tdmlydHVhbCB0aHVuayB0byBOU0I6OkNsYXNzRDo6fkNsYXNzRCgpQEJhc2VcIiAxLjBcbiIKKyIgWy4uLl1cbiIKK21zZ3N0ciAiIgorImxpYmR1bW15LnNvLjEgbGliZHVtbXkxICNNSU5WRVIjXG4iCisiIFsuLi5dXG4iCisiIChjKyspXCJub24tdmlydHVhbCB0aHVuayB0byBOU0I6OkNsYXNzRDo6fkNsYXNzRCgpQEJhc2VcIiAxLjBcbiIKKyIgWy4uLl1cbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjIyCittc2dpZCAiIgorIlRoZSBkZW1hbmdsZWQgbmFtZSBhYm92ZSBjYW4gYmUgb2J0YWluZWQgYnkgZXhlY3V0aW5nIHRoZSBmb2xsb3dpbmcgY29tbWFuZDoiCittc2dzdHIgIiIKKyJQdWVkZSBvYnRlbmVyIGVsIG5vbWJyZSDCq2RlbWFuZ2xlZMK7IGRlbCBlamVtcGxvIGFudGVyaW9yIGVqZWN1dGFuZG8gbGEgIgorInNpZ3VpZW50ZSBvcmRlbjoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjIyNAorIywgbm8td3JhcAorbXNnaWQgIiAkIGVjaG8gJ19aVGhuOF9OM05TQjZDbGFzc0REMUV2QEJhc2UnIHwgYysrZmlsdFxuIgorbXNnc3RyICIgJCBlY2hvICdfWlRobjhfTjNOU0I2Q2xhc3NERDFFdkBCYXNlJyB8IGMrK2ZpbHRcbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjMyCittc2dpZCAiIgorIlBsZWFzZSBub3RlIHRoYXQgd2hpbGUgbWFuZ2xlZCBuYW1lIGlzIHVuaXF1ZSBpbiB0aGUgbGlicmFyeSBieSBkZWZpbml0aW9uLCAiCisidGhpcyBpcyBub3QgbmVjZXNzYXJpbHkgdHJ1ZSBmb3IgZGVtYW5nbGVkIG5hbWVzLiBBIGNvdXBsZSBvZiBkaXN0aW5jdCByZWFsICIKKyJzeW1ib2xzIG1heSBoYXZlIHRoZSBzYW1lIGRlbWFuZ2xlZCBuYW1lLiBGb3IgZXhhbXBsZSwgdGhhdCdzIHRoZSBjYXNlIHdpdGggIgorIm5vbi12aXJ0dWFsIHRodW5rIHN5bWJvbHMgaW4gY29tcGxleCBpbmhlcml0YW5jZSBjb25maWd1cmF0aW9ucyBvciB3aXRoIG1vc3QgIgorImNvbnN0cnVjdG9ycyBhbmQgZGVzdHJ1Y3RvcnMgKHNpbmNlIGcrKyB0eXBpY2FsbHkgZ2VuZXJhdGVzIHR3byByZWFsIHN5bWJvbHMgIgorImZvciB0aGVtKS4gSG93ZXZlciwgYXMgdGhlc2UgY29sbGlzaW9ucyBoYXBwZW4gb24gdGhlIEFCSSBsZXZlbCwgdGhleSBzaG91bGQgIgorIm5vdCBkZWdyYWRlIHF1YWxpdHkgb2YgdGhlIHN5bWJvbCBmaWxlLiIKK21zZ3N0ciAiIgorIk9ic2VydmUgcXVlIGF1bnF1ZSBlbCBub21icmUgwqttYW5nbGVkwrsgc2VhIHBvciBkZWZpbmljacOzbiDDum5pY28gZW4gbGEgIgorImJpYmxpb3RlY2EsIG5vIGVzIG5lY2VzYXJpYW1lbnRlIGNpZXJ0byBwYXJhIG5vbWJyZXMgwqtkZW1hbmdsZWTCuy4gUHVlZGUgcXVlICIKKyJkb3Mgc8OtbWJvbG9zIHJlYWxlcyB5IGRpc3RpbnRvcyB0ZW5nYW4gZWwgbWlzbW8gbm9tYnJlIMKrZGVtYW5nbGVkwrsuIFBvciAiCisiZWplbXBsbywgZW4gY2FzbyBkZSBleGlzdGlyIHPDrW1ib2xvcyB0aHVuayBubyB2aXJ0dWFsZXMgZW4gY29tcGxlamFzICIKKyJjb25maWd1cmFjaW9uZXMgZGUgaGVyZW5jaWEsIG8gY29uIGxhIG1heW9yw61hIGRlIGNvbnN0cnVjdG9yZXMgeSAiCisiZGVzdHJ1Y3RvcmVzICh5YSBxdWUgaGFiaXR1YWxtZW50ZSBnKysgZ2VuZXJhIGRvcyBzw61tYm9sb3MgcGFyYSBlbGxvcykuIFBvciAiCisib3RyYSBwYXJ0ZSwgZXN0YXMgY29saXNpb25lcyBhcGFyZWNlbiBhbCBuaXZlbCBkZSBsYSBBQkksIHkgcG9yIGVsbG8gbm8gIgorImRlYmVyw61hbiBkZWdyYWRhciBsYSBjYWxpZGFkIGRlbCBmaWNoZXJvIGRlIHPDrW1ib2xvcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjIzOQorbXNnaWQgIiIKKyJUaGlzIHBhdHRlcm4gaXMgZGVub3RlZCBieSB0aGUgSTxzeW12ZXI+IHRhZy4gV2VsbCBtYWludGFpbmVkIGxpYnJhcmllcyBoYXZlICIKKyJ2ZXJzaW9uZWQgc3ltYm9scyB3aGVyZSBlYWNoIHZlcnNpb24gY29ycmVzcG9uZHMgdG8gdGhlIHVwc3RyZWFtIHZlcnNpb24gIgorIndoZXJlIHRoZSBzeW1ib2wgZ290IGFkZGVkLiBJZiB0aGF0J3MgdGhlIGNhc2UsIHlvdSBjYW4gdXNlIGEgSTxzeW12ZXI+ICIKKyJwYXR0ZXJuIHRvIG1hdGNoIGFueSBzeW1ib2wgYXNzb2NpYXRlZCB0byB0aGUgc3BlY2lmaWMgdmVyc2lvbi4gRm9yIGV4YW1wbGU6IgorbXNnc3RyICIiCisiTGEgZXRpcXVldGEgSTxzeW12ZXI+IGluZGljYSBlc3RlIHBhdHLDs24uIExhcyBiaWJsaW90ZWNhcyBiaWVuIG1hbnRlbmlkYXMgIgorInRpZW5lbiBzw61tYm9sb3MgY29uIHZlcnNpw7NuLCBkb25kZSBjYWRhIHZlcnNpw7NuIGNvcnJlc3BvbmRlIGNvbiBsYSB2ZXJzacOzbiAiCisiZGVsIGF1dG9yIG9yaWdpbmFsIGVuIGxhIHF1ZSBzZSBhw7FhZGnDsyBlbCBzw61tYm9sby4gRGUgc2VyIGFzw60sIHB1ZWRlIHVzYXIgdW4gIgorInBhdHLDs24gSTxzeW12ZXI+IHBhcmEgZW1wYXJlamFyIGVsIHPDrW1ib2xvIGFzb2NpYWRvIGNvbiB1bmEgdmVyc2nDs24gZW4gIgorInBhcnRpY3VsYXIuIFBvciBlamVtcGxvOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjQ2CisjLCBuby13cmFwCittc2dpZCAiIgorImxpYmMuc28uNiBsaWJjNiAjTUlOVkVSI1xuIgorIiAoc3ltdmVyKUdMSUJDXzIuMCAyLjBcbiIKKyIgWy4uLl1cbiIKKyIgKHN5bXZlcilHTElCQ18yLjcgMi43XG4iCisiIGFjY2Vzc0BHTElCQ18yLjAgMi4yXG4iCittc2dzdHIgIiIKKyJsaWJjLnNvLjYgbGliYzYgI01JTlZFUiNcbiIKKyIgKHN5bXZlcilHTElCQ18yLjAgMi4wXG4iCisiIFsuLi5dXG4iCisiIChzeW12ZXIpR0xJQkNfMi43IDIuN1xuIgorIiBhY2Nlc3NAR0xJQkNfMi4wIDIuMlxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyNTIKK21zZ2lkICIiCisiQWxsIHN5bWJvbHMgYXNzb2NpYXRlZCB3aXRoIHZlcnNpb25zIEdMSUJDXzIuMCBhbmQgR0xJQkNfMi43IHdpbGwgbGVhZCB0byAiCisibWluaW1hbCB2ZXJzaW9uIG9mIDIuMCBhbmQgMi43IHJlc3BlY3RpdmVseSB3aXRoIHRoZSBleGNlcHRpb24gb2YgdGhlIHN5bWJvbCAiCisiYWNjZXNzQEdMSUJDXzIuMC4gVGhlIGxhdHRlciB3aWxsIGxlYWQgdG8gYSBtaW5pbWFsIGRlcGVuZGVuY3kgb24gbGliYzYgIgorInZlcnNpb24gMi4yIGRlc3BpdGUgYmVpbmcgaW4gdGhlIHNjb3BlIG9mIHRoZSBcIihzeW12ZXIpR0xJQkNfMi4wXCIgcGF0dGVybiAiCisiYmVjYXVzZSBzcGVjaWZpYyBzeW1ib2xzIHRha2UgcHJlY2VkZW5jZSBvdmVyIHBhdHRlcm5zLiIKK21zZ3N0ciAiIgorIlRvZG9zIGxvcyBzw61tYm9sb3MgYXNvY2lhZG9zIGNvbiBsYXMgdmVyc2lvbmVzIMKrR0xJQkNfMi4wwrsgeSDCq0dMSUJDXzIuN8K7ICIKKyJsbGV2YW4gYSB1bmEgdmVyc2nDs24gbcOtbmltYSBkZSAyLjAgeSAyLjcgcmVzcGVjdGl2YW1lbnRlLCBjb24gbGEgZXhjZXBjacOzbiAiCisiZGVsIHPDrW1ib2xvIMKrYWNjZXNzQEdMSUJDXzIuMMK7LiBFbCBzZWd1bmRvIGxsZXZhIGEgdW5hIGRlcGVuZGVuY2lhIG3DrW5pbWEgIgorInNvYnJlIGxhIHZlcnNpw7NuIDIuMiBkZSBsaWJjNiwgYSBwZXNhciBkZSBlc3RhciBlbiBlbCByYW5nbyBkZWwgcGF0csOzbiAiCisiwqsoc3ltdmVyKUdMSUJDXzIuMMK7LCBkZWJpZG8gYSBxdWUgbG9zIHPDrW1ib2xvcyBlc3BlY8OtZmljb3MgdGllbmUgcHJlY2VkZW5jaWEgIgorInNvYnJlIGxvcyBwYXRyb25lcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjI1NworbXNnaWQgIiIKKyJQbGVhc2Ugbm90ZSB0aGF0IHdoaWxlIG9sZCBzdHlsZSB3aWxkY2FyZCBwYXR0ZXJucyAoZGVub3RlZCBieSBcIipAdmVyc2lvblwiICIKKyJpbiB0aGUgc3ltYm9sIG5hbWUgZmllbGQpIGFyZSBzdGlsbCBzdXBwb3J0ZWQsIHRoZXkgaGF2ZSBiZWVuIGRlcHJlY2F0ZWQgYnkgIgorIm5ldyBzdHlsZSBzeW50YXggXCIoc3ltdmVyfG9wdGlvbmFsKXZlcnNpb25cIi4gRm9yIGV4YW1wbGUsIFwiKkBHTElCQ18yLjAgIgorIjIuMFwiIHNob3VsZCBiZSB3cml0dGVuIGFzIFwiKHN5bXZlcnxvcHRpb25hbClHTElCQ18yLjAgMi4wXCIgaWYgdGhlIHNhbWUgIgorImJlaGF2aW91ciBpcyBuZWVkZWQuIgorbXNnc3RyICIiCisiVGVuZ2EgZW4gY3VhbnRhIHF1ZSBsb3MgcGF0cm9uZXMgZGUgY29tb2TDrW4gYW50aWd1b3MgKGluZGljYWRvcyBwb3IgIgorIsKrKkB2ZXJzaW/CuyBlbiBlbCBjYW1wbyBkZWwgbm9tYnJlIGRlbCBzw61tYm9sbykgc29uIGHDum4gY29tcGF0aWJsZXMsIGF1bnF1ZSAiCisiaGFuIHF1ZWRhZG8gb2Jzb2xldG9zIHBvciBlbCBudWV2byBlc3RpbG8gZGUgc2ludGF4aXMgwqsoc3ltdmVyfG9wdGlvbmFsKSIKKyJ2ZXJzacOzbsK7LiBQb3IgZWplbXBsbywgZGViZXLDrWEgZXNjcmliaXIgwqsqQEdMSUJDXzIuMCAyLjDCuyBjb21vIMKrKHN5bXZlcnwiCisib3B0aW9uYWwpR0xJQkNfMi4wIDIuMMK7IHNpIGRlc2VhIGVsIG1pc21vIGNvbXBvcnRhbWllbnRvLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjY1Cittc2dpZCAiIgorIlJlZ3VsYXIgZXhwcmVzc2lvbiBwYXR0ZXJucyBhcmUgZGVub3RlZCBieSB0aGUgSTxyZWdleD4gdGFnLiBUaGV5IG1hdGNoIGJ5ICIKKyJ0aGUgcGVybCByZWd1bGFyIGV4cHJlc3Npb24gc3BlY2lmaWVkIGluIHRoZSBzeW1ib2wgbmFtZSBmaWVsZC4gQSByZWd1bGFyICIKKyJleHByZXNzaW9uIGlzIG1hdGNoZWQgYXMgaXQgaXMsIHRoZXJlZm9yZSBkbyBub3QgZm9yZ2V0IHRvIHN0YXJ0IGl0IHdpdGggdGhlICIKKyJJPF4+IGNoYXJhY3RlciBvciBpdCBtYXkgbWF0Y2ggYW55IHBhcnQgb2YgdGhlIHJlYWwgc3ltYm9sIEk8bmFtZUB2ZXJzaW9uPiAiCisic3RyaW5nLiBGb3IgZXhhbXBsZToiCittc2dzdHIgIiIKKyJMb3MgcGF0cm9uZXMgZGUgZXhwcmVzaW9uZXMgcmVndWxhcmVzIHNlIGluZGljYW4gY29uIGxhIGV0aXF1ZXRhIEk8cmVnZXg+LiAiCisiQnVzY2FuIGNvaW5jaWRlbmNpYXMgY29uIGxhIGV4cHJlc2nDs24gcmVndWxhciBkZSBwZXJsIGRlZmluaWRvIGVuIGVsIGNhbXBvICIKKyJkZSBub21icmUgZGVsIHPDrW1ib2xvLiBVbmEgZXhwcmVzacOzbiByZWd1bGFyIHNlIGVtcGFyZWphIHRhbCBjdWFsLCBwb3IgZWxsbyAiCisibm8gb2x2aWRlIGluc2VydGFyIEk8Xj4gYWwgaW5pY2lvIGRlIGxhIG1pc21hIG8gcHVlZGUgcXVlIGNvaW5jaWRhIGNvbiAiCisiY3VhbHF1aWVyIHBhcnRlIGRlIGxhIGNhZGVuYSByZWFsIGRlbCBzw61tYm9sbyBJPG5vbWJyZUB2ZXJzacOzbj4uIFBvciBlamVtcGxvOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjcwCisjLCBuby13cmFwCittc2dpZCAiIgorImxpYmR1bW15LnNvLjEgbGliZHVtbXkxICNNSU5WRVIjXG4iCisiIChyZWdleClcIl5teXN0YWNrXy4qQEJhc2UkXCIgMS4wXG4iCisiIChyZWdleHxvcHRpb25hbClcInByaXZhdGVcIiAxLjBcbiIKK21zZ3N0ciAiIgorImxpYmR1bW15LnNvLjEgbGliZHVtbXkxICNNSU5WRVIjXG4iCisiIChyZWdleClcIl5teXN0YWNrXy4qQEJhc2UkXCIgMS4wXG4iCisiIChyZWdleHxvcHRpb25hbClcInByaXZhdGVcIiAxLjBcbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6Mjc1Cittc2dpZCAiIgorIlN5bWJvbHMgbGlrZSBcIm15c3RhY2tfbmV3QEJhc2VcIiwgXCJteXN0YWNrX3B1c2hAQmFzZVwiLCBcIm15c3RhY2tfcG9wQEJhc2UiCisiXCIgZXRjLiAgd2lsbCBiZSBtYXRjaGVkIGJ5IHRoZSBmaXJzdCBwYXR0ZXJuIHdoaWxlIGUuZy4gIgorIlwibmdfbXlzdGFja19uZXdAQmFzZVwiIHdvbid0LiAgVGhlIHNlY29uZCBwYXR0ZXJuIHdpbGwgbWF0Y2ggYWxsIHN5bWJvbHMgIgorImhhdmluZyB0aGUgc3RyaW5nIFwicHJpdmF0ZVwiIGluIHRoZWlyIG5hbWVzIGFuZCBtYXRjaGVzIHdpbGwgaW5oZXJpdCAiCisiSTxvcHRpb25hbD4gdGFnIGZyb20gdGhlIHBhdHRlcm4uIgorbXNnc3RyICIiCisiTG9zIHPDrW1ib2xvcyBjb21vIMKrbXlzdGFja19uZXdAQmFzZcK7LCDCq215c3RhY2tfcHVzaEBCYXNlwrssICIKKyLCq215c3RhY2tfcG9wQEJhc2XCuyB5IHNpbWlsYXJlcyBlbmNhamFyw61hbiBjb24gZWwgcHJpbWVyIHBhdHLDs24sIG1pZW50cmFzIHF1ZSAiCisib3Ryb3MgY29tbyDCq25nX215c3RhY2tfbmV3QEJhc2XCuyBubyBsbyBoYXLDrWFuLiBFbCBzZWd1bmRvIHBhdHLDs24gZW5jYWphIGNvbiAiCisidG9kb3MgbG9zIHPDrW1ib2xvcyBjb24gwqtwcml2YXRlwrsgZW4gc3Ugbm9tYnJlLCB5IGxhcyBjb2luY2lkZW5jaWFzIGhlcmVkYXLDoW4gIgorImRlIGVzdGUgcGF0csOzbiBsYSBldGlxdWV0YSBJPG9wdGlvbmFsPi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjI4MAorbXNnaWQgIiIKKyJCYXNpYyBwYXR0ZXJucyBsaXN0ZWQgYWJvdmUgY2FuIGJlIGNvbWJpbmVkIHdoZXJlIGl0IG1ha2VzIHNlbnNlLiBJbiB0aGF0ICIKKyJjYXNlLCB0aGV5IGFyZSBwcm9jZXNzZWQgaW4gdGhlIG9yZGVyIGluIHdoaWNoIHRoZSB0YWdzIGFyZSBzcGVjaWZpZWQuIEZvciAiCisiZXhhbXBsZSwgYm90aCIKK21zZ3N0ciAiIgorIlB1ZWRlIGNvbWJpbmFyIGxvcyBwYXRyb25lcyBsaXN0YWRvcyBhbnRlcmlvcm1lbnRlLCBjdWFuZG8gdGVuZ2Egc2VudGlkby4gRW4gIgorInRhbCBjYXNvLCBzZSBwcm9jZXNhbiBlbiBlbCBvcmRlbiBkZSBsYXMgZXRpcXVldGFzIGRlZmluaWRhcy4gUG9yIGVqZW1wbG8sICIKKyJhbWJvcyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjgzCisjLCBuby13cmFwCittc2dpZCAiIgorIiAoYysrfHJlZ2V4KVwiXk5TQTo6Q2xhc3NBOjpQcml2YXRlOjpwcml2bWV0aG9kXFxlZFxcZShpbnRcXGUpQEJhc2VcIiAxLjBcbiIKKyIgKHJlZ2V4fGMrKylOM05TQTZDbGFzc0E3UHJpdmF0ZTExcHJpdm1ldGhvZFxcZWRFaUBCYXNlIDEuMFxuIgorbXNnc3RyICIiCisiIChjKyt8cmVnZXgpXCJeTlNBOjpDbGFzc0E6OlByaXZhdGU6OnByaXZtZXRob2RcXGVkXFxlKGludFxcZSlAQmFzZVwiIDEuMFxuIgorIiAocmVnZXh8YysrKU4zTlNBNkNsYXNzQTdQcml2YXRlMTFwcml2bWV0aG9kXFxlZEVpQEJhc2UgMS4wXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjI5MworbXNnaWQgIiIKKyJ3aWxsIG1hdGNoIHN5bWJvbHMgXCJfWk4zTlNBNkNsYXNzQTdQcml2YXRlMTFwcml2bWV0aG9kMUVpQEJhc2VcIiBhbmQgIgorIlwiX1pOM05TQTZDbGFzc0E3UHJpdmF0ZTExcHJpdm1ldGhvZDJFaUBCYXNlXCIuIFdoZW4gbWF0Y2hpbmcgdGhlIGZpcnN0ICIKKyJwYXR0ZXJuLCB0aGUgcmF3IHN5bWJvbCBpcyBmaXJzdCBkZW1hbmdsZWQgYXMgQysrIHN5bWJvbCwgdGhlbiB0aGUgZGVtYW5nbGVkICIKKyJuYW1lIGlzIG1hdGNoZWQgYWdhaW5zdCB0aGUgcmVndWxhciBleHByZXNzaW9uLiBPbiB0aGUgb3RoZXIgaGFuZCwgd2hlbiAiCisibWF0Y2hpbmcgdGhlIHNlY29uZCBwYXR0ZXJuLCByZWd1bGFyIGV4cHJlc3Npb24gaXMgbWF0Y2hlZCBhZ2FpbnN0IHRoZSByYXcgIgorInN5bWJvbCBuYW1lLCB0aGVuIHRoZSBzeW1ib2wgaXMgdGVzdGVkIGlmIGl0IGlzIEMrKyBvbmUgYnkgYXR0ZW1wdGluZyB0byAiCisiZGVtYW5nbGUgaXQuIEEgZmFpbHVyZSBvZiBhbnkgYmFzaWMgcGF0dGVybiB3aWxsIHJlc3VsdCBpbiB0aGUgZmFpbHVyZSBvZiAiCisidGhlIHdob2xlIHBhdHRlcm4uICBUaGVyZWZvcmUsIGZvciBleGFtcGxlLCAiCisiXCJfX04zTlNBNkNsYXNzQTdQcml2YXRlMTFwcml2bWV0aG9kXFxlZEVpQEJhc2VcIiB3aWxsIG5vdCBtYXRjaCBlaXRoZXIgb2YgIgorInRoZSBwYXR0ZXJucyBiZWNhdXNlIGl0IGlzIG5vdCBhIHZhbGlkIEMrKyBzeW1ib2wuIgorbXNnc3RyICIiCisiZW5jYWphIGNvbiDCq19aTjNOU0E2Q2xhc3NBN1ByaXZhdGUxMXByaXZtZXRob2QxRWlAQmFzZcK7IHkgIgorIsKrX1pOM05TQTZDbGFzc0E3UHJpdmF0ZTExcHJpdm1ldGhvZDJFaUBCYXNlwrsuIEFsIGNvbXBhcmFyIGVsIHByaW1lciBwYXRyw7NuICIKKyJzZSDCq2RlbWFuZ2xlwrsgZWwgc8OtbWJvbG8gc2luIHByb2Nlc2FyIGNvbW8gc8OtbWJvbG8gQysrLCBwYXJhIGRlc3B1w6lzICIKKyJjb21wYXJhciBlbCBub21icmUgwqtkZW1hbmdsZWTCuyBjb24gbGEgZXhwcmVzacOzbiByZWd1bGFyLiBQb3Igb3RyYSBwYXJ0ZSwgYWwgIgorImNvbXBhcmFyIGVsIHNlZ3VuZG8gcGF0csOzbiBsYSBleHByZXNpw7NuIHJlZ3VsYXIgc2UgY29tcGFyYSBjb24gZWwgbm9tYnJlIHNpbiAiCisicHJvY2VzYXIgZGVsIHPDrW1ib2xvLCBwYXJhIGRlc3B1w6lzIGNvbmZpcm1hciBzaSBlcyB1biBzw61tYm9sbyBkZSBDKysgIgorIm1lZGlhbnRlIMKrZGVtYW5nbGXCuy4gVW4gZmFsbG8gZGUgdW4gcGF0csOzbiBiw6FzaWNvIGxsZXZhIGEgdW4gZmFsbG8gZGUgdG9kbyAiCisiZWwgcGF0csOzbi4gUG9yIGVqZW1wbG8sIMKrX19OM05TQTZDbGFzc0E3UHJpdmF0ZTExcHJpdm1ldGhvZFxcZWRFaUBCYXNlwrsgbm8gIgorImVuY2FqYXLDrWEgY29uIG5pbmfDum4gcGF0csOzbiBwb3JxdWUgbm8gZXMgdW4gc8OtbWJvbG8gdsOhbGlkbyBkZSBDKysuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyOTkKK21zZ2lkICIiCisiSW4gZ2VuZXJhbCwgYWxsIHBhdHRlcm5zIGFyZSBkaXZpZGVkIGludG8gdHdvIGdyb3VwczogYWxpYXNlcyAoYmFzaWMgSTxjKys+ICIKKyJhbmQgSTxzeW12ZXI+KSBhbmQgZ2VuZXJpYyBwYXR0ZXJucyAoSTxyZWdleD4sIGFsbCBjb21iaW5hdGlvbnMgb2YgbXVsdGlwbGUgIgorImJhc2ljIHBhdHRlcm5zKS4gTWF0Y2hpbmcgb2YgYmFzaWMgYWxpYXMtYmFzZWQgcGF0dGVybnMgaXMgZmFzdCAoTygxKSkgICIKKyJ3aGlsZSBnZW5lcmljIHBhdHRlcm5zIGFyZSBPKE4pIChOIC0gZ2VuZXJpYyBwYXR0ZXJuIGNvdW50KSBmb3IgZWFjaCAiCisic3ltYm9sLiAgVGhlcmVmb3JlLCBpdCBpcyByZWNvbW1lbmRlZCBub3QgdG8gb3ZlcnVzZSBnZW5lcmljIHBhdHRlcm5zLiIKK21zZ3N0ciAiIgorIkVuIGdlbmVyYWwsIHRvZG9zIGxvcyBwYXRyb25lcyBzZSBkaXZpZGVuIGVuIGRvcyBncnVwb3M6IGFsaWFzZXMgKGxvcyAiCisiYsOhc2ljb3MgSTxjKys+IHkgSTxzeW12ZXI+KSB5IHBhdHJvbmVzIGdlbsOpcmljb3MgKEk8cmVnZXg+LCB0b2RhcyBsYXMgIgorImNvbWJpbmFjaW9uZXMgZGUgdmFyaW9zIHBhdHJvbmVzIGLDoXNpY29zKS4gRXN0YWJsZWNlciBjb2luY2lkZW5jaWFzIGNvbiAiCisicGF0cm9uZXMgYmFzYWRvcyBlbiBhbGlhcyBlcyByw6FwaWRvICgwKDEpKSBtaWVudHJhcyBxdWUgbG9zIHBhdHJvbmVzICIKKyJnZW7DqXJpY29zIHNvbiAwKE4pIChOIC0gY3VlbnRhIGdlbsOpcmljYSBkZWwgcGF0csOzbikgcGFyYSBjYWRhIHPDrW1ib2xvLiAiCisiRGViaWRvIGEgZWxsbywgc2UgcmVjb21pZW5kYSBubyBhYnVzYXIgZGUgbG9zIHBhdHJvbmVzIGdlbsOpcmljb3MuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozMDYKK21zZ2lkICIiCisiV2hlbiBtdWx0aXBsZSBwYXR0ZXJucyBtYXRjaCB0aGUgc2FtZSByZWFsIHN5bWJvbCwgYWxpYXNlcyAoZmlyc3QgSTxjKys+LCAiCisidGhlbiBJPHN5bXZlcj4pIGFyZSBwcmVmZXJyZWQgb3ZlciBnZW5lcmljIHBhdHRlcm5zLiBHZW5lcmljIHBhdHRlcm5zIGFyZSAiCisibWF0Y2hlZCBpbiB0aGUgb3JkZXIgdGhleSBhcmUgZm91bmQgaW4gdGhlIHN5bWJvbCBmaWxlIHRlbXBsYXRlIHVudGlsIHRoZSAiCisiZmlyc3Qgc3VjY2Vzcy4gIFBsZWFzZSBub3RlLCBob3dldmVyLCB0aGF0IG1hbnVhbCByZW9yZGVyaW5nIG9mIHRlbXBsYXRlICIKKyJmaWxlIGVudHJpZXMgaXMgbm90IHJlY29tbWVuZGVkIGJlY2F1c2UgQjxkcGtnLWdlbnN5bWJvbHM+IGdlbmVyYXRlcyBkaWZmcyAiCisiYmFzZWQgb24gdGhlIGFscGhhbnVtZXJpY2FsIG9yZGVyIG9mIHRoZWlyIG5hbWVzLiIKK21zZ3N0ciAiIgorIkxvcyBhbGlhcyAocHJpbWVybyBJPGMrKz4sIGRlc3B1w6lzIEk8c3ltdmVyPikgdGllbmVuIHByaW9yaWRhZCBzb2JyZSBsb3MgIgorInBhdHJvbmVzIGdlbsOpcmljb3MuIMOJc3RvcyBzZSBlbXBhcmVqYW4gcG9yIG9yZGVuIGRlIGFwYXJpY2nDs24gZW4gbGEgICIKKyJwbGFudGlsbGEgZGVsIGZpY2hlcm8gZGUgc8OtbWJvbG9zIGhhc3RhIGVsIHByaW1lciByZXN1bHRhZG8gZGUgw6l4aXRvLiBUZW5nYSAiCisiZW4gY3VlbnRhLCBubyBvYnN0YW50ZSwgcXVlIG5vIHNlIHJlY29taWVuZGEgbGEgcmVvcmdhbml6YWNpw7NuIG1hbnVhbCBkZSBsYXMgIgorImVudHJhZGFzIGVuIHBsYW50aWxsYXMgZGUgZmljaGVybyB5YSBxdWUgQjxkcGtnLWdlbnN5bWJvbHM+IGdlbmVyYSDCq2RpZmZzwrsgIgorImJhc2Fkb3MgZW4gZWwgb3JkZW4gYWxmYW51bcOpcmljbyBkZSBzdXMgbm9tYnJlcy4iCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLWdlbnN5bWJvbHMuMTozMDYKKyMsIG5vLXdyYXAKK21zZ2lkICJVc2luZyBpbmNsdWRlcyIKK21zZ3N0ciAiVXNhciDCq2luY2x1ZGXCuyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzExCittc2dpZCAiIgorIldoZW4gdGhlIHNldCBvZiBleHBvcnRlZCBzeW1ib2xzIGRpZmZlciBiZXR3ZWVuIGFyY2hpdGVjdHVyZXMsIGl0IG1heSBiZWNvbWUgIgorImluZWZmaWNpZW50IHRvIHVzZSBhIHNpbmdsZSBzeW1ib2wgZmlsZS4gSW4gdGhvc2UgY2FzZXMsIGFuIGluY2x1ZGUgIgorImRpcmVjdGl2ZSBtYXkgcHJvdmUgdG8gYmUgdXNlZnVsIGluIGEgY291cGxlIG9mIHdheXM6IgorbXNnc3RyICIiCisiSGF5IGNhc29zIGVuIGxvcyBxdWUgdXNhciB1biBzw7NsbyBmaWNoZXJvIGRlIHPDrW1ib2xvcyBlcyBjb250cmFwcm9kdWNlbnRlICIKKyJjdWFuZG8gZWwgY29uanVudG8gZGUgc8OtbWJvbG9zIGV4cG9ydGFkb3MgZGlmaWVyZSBzZWfDum4gbGEgYXJxdWl0ZWN0dXJhLiBFbiAiCisiZXN0b3MgY2Fzb3MsIHVuYSBkaXJlY3RpdmEgwqtpbmNsdWRlwrsgcHVlZGUgc2VyIMO6dGlsIGRlIHVuIHBhciBkZSBtYW5lcmFzOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzE1Cittc2dpZCAiIgorIllvdSBjYW4gZmFjdG9yaXplIHRoZSBjb21tb24gcGFydCBpbiBzb21lIGV4dGVybmFsIGZpbGUgYW5kIGluY2x1ZGUgdGhhdCAiCisiZmlsZSBpbiB5b3VyIEk8cGFja2FnZT4uc3ltYm9scy5JPGFyY2g+IGZpbGUgYnkgdXNpbmcgYW4gaW5jbHVkZSBkaXJlY3RpdmUgIgorImxpa2UgdGhpczoiCittc2dzdHIgIiIKKyJQdWVkZSBmYWN0b3JpemFyIGxhIHBhcnRlIGNvbcO6biBlbiBhbGfDum4gZmljaGVybyBleHRlcm5vLCBlIGluY2x1aXIgZXNlICIKKyJmaWNoZXJvIGVuIHN1IGZpY2hlcm8gSTxwYXF1ZXRlPi5zeW1ib2xzLkk8YXJxPiB1c2FuZG8gdW5hIGRpcmVjdGl2YSAiCisiwqtpbmNsdWRlwrsgY29tbyBlc3RhOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzE3Cittc2dpZCAiI2luY2x1ZGUgXCJJPHBhY2thZ2VzPi5zeW1ib2xzLmNvbW1vblwiIgorbXNnc3RyICIjaW5jbHVkZSBcIkk8cGFja2FnZXM+LnN5bWJvbHMuY29tbW9uXCIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjMxOQorbXNnaWQgIlRoZSBpbmNsdWRlIGRpcmVjdGl2ZSBtYXkgYWxzbyBiZSB0YWdnZWQgbGlrZSBhbnkgc3ltYm9sOiIKK21zZ3N0ciAiIgorIkFsIGlndWFsIHF1ZSBjb24gY3VhbHF1aWVyIHPDrW1ib2xvLCBwdWVkZSBldGlxdWV0YXIgbGEgZGlyZWN0aXZhIMKraW5jbHVkZcK7OiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzIxCisjLCBmdXp6eQorI3wgbXNnaWQgIih0YWd8Li58dGFnTikjaW5jbHVkZSBcImZpbGVfdG9faW5jbHVkZVwiIgorbXNnaWQgIih0YWd8Li58dGFnTikjaW5jbHVkZSBcImZpbGUtdG8taW5jbHVkZVwiIgorbXNnc3RyICIoZXRpcXVldGF8Li58ZXRpcXVldGFOKSNpbmNsdWRlIFwiZmljaGVyby1wYXJhLWluY2x1ZGVcIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzI2CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJBcyBhIHJlc3VsdCwgYWxsIHN5bWJvbHMgaW5jbHVkZWQgZnJvbSBJPGZpbGVfdG9faW5jbHVkZT4gd2lsbCBiZSAiCisjfCAiY29uc2lkZXJlZCB0byBiZSB0YWdnZWQgd2l0aCBJPHRhZz4gLi4gSTx0YWdOPiBieSBkZWZhdWx0LiBZb3UgY2FuIHVzZSAiCisjfCAidGhpcyBmZWF0dXJlIHRvIGNyZWF0ZSBhIGNvbW1vbiBJPHBhY2thZ2U+LnN5bWJvbHMgZmlsZSB3aGljaCBpbmNsdWRlcyAiCisjfCAiYXJjaGl0ZWN0dXJlIHNwZWNpZmljIHN5bWJvbCBmaWxlczoiCittc2dpZCAiIgorIkFzIGEgcmVzdWx0LCBhbGwgc3ltYm9scyBpbmNsdWRlZCBmcm9tIEk8ZmlsZS10by1pbmNsdWRlPiB3aWxsIGJlIGNvbnNpZGVyZWQgIgorInRvIGJlIHRhZ2dlZCB3aXRoIEk8dGFnPiAuLiBJPHRhZ04+IGJ5IGRlZmF1bHQuIFlvdSBjYW4gdXNlIHRoaXMgZmVhdHVyZSB0byAiCisiY3JlYXRlIGEgY29tbW9uIEk8cGFja2FnZT4uc3ltYm9scyBmaWxlIHdoaWNoIGluY2x1ZGVzIGFyY2hpdGVjdHVyZSBzcGVjaWZpYyAiCisic3ltYm9sIGZpbGVzOiIKK21zZ3N0ciAiIgorIkNvbW8gcmVzdWx0YWRvLCBzZSBjb25zaWRlcmFyw6EgcXVlIHRvZG9zIGxvcyBzw61tYm9sb3MgaW5jbHVpZG9zIGVuIEk8ZmljaGVyby0iCisicGFyYS1pbmNsdWRlPiBlc3TDoW4gZXRpcXVldGFkb3MgY29uIEk8ZXRpcXVldGE+IC4uIEk8ZXRpcXVldGFOPiBwb3Igb21pc2nDs24uICIKKyJQdWVkZSB1c2FyIGVzdGEgY2FyYWN0ZXLDrXN0aWNhIHBhcmEgY3JlYXIgdW4gZmljaGVybyBjb23Dum4gSTxwYWNrYWdlPi4iCisic3ltYm9scywgcXVlIGluY2x1eWUgZmljaGVyb3MgZGUgc8OtbWJvbG9zIGVzcGVjw61maWNvcyBhIGxhIGFycXVpdGVjdHVyYS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjMzMQorIywgbm8td3JhcAorbXNnaWQgIiIKKyIgIGNvbW1vbl9zeW1ib2wxQEJhc2UgMS4wXG4iCisiIChhcmNoPWFtZDY0IGlhNjQgYWxwaGEpI2luY2x1ZGUgXCJwYWNrYWdlLnN5bWJvbHMuNjRiaXRcIlxuIgorIiAoYXJjaD0hYW1kNjQgIWlhNjQgIWFscGhhKSNpbmNsdWRlIFwicGFja2FnZS5zeW1ib2xzLjMyYml0XCJcbiIKKyIgIGNvbW1vbl9zeW1ib2wyQEJhc2UgMS4wXG4iCittc2dzdHIgIiIKKyIgIGNvbW1vbl9zeW1ib2wxQEJhc2UgMS4wXG4iCisiIChhcmNoPWFtZDY0IGlhNjQgYWxwaGEpI2luY2x1ZGUgXCJwYWNrYWdlLnN5bWJvbHMuNjRiaXRcIlxuIgorIiAoYXJjaD0hYW1kNjQgIWlhNjQgIWFscGhhKSNpbmNsdWRlIFwicGFja2FnZS5zeW1ib2xzLjMyYml0XCJcbiIKKyIgIGNvbW1vbl9zeW1ib2wyQEJhc2UgMS4wXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM0MAorbXNnaWQgIiIKKyJUaGUgc3ltYm9scyBmaWxlcyBhcmUgcmVhZCBsaW5lIGJ5IGxpbmUsIGFuZCBpbmNsdWRlIGRpcmVjdGl2ZXMgYXJlICIKKyJwcm9jZXNzZWQgYXMgc29vbiBhcyB0aGV5IGFyZSBlbmNvdW50ZXJlZC4gVGhpcyBtZWFucyB0aGF0IHRoZSBjb250ZW50IG9mICIKKyJ0aGUgaW5jbHVkZWQgZmlsZSBjYW4gb3ZlcnJpZGUgYW55IGNvbnRlbnQgdGhhdCBhcHBlYXJlZCBiZWZvcmUgdGhlIGluY2x1ZGUgIgorImRpcmVjdGl2ZSBhbmQgdGhhdCBhbnkgY29udGVudCBhZnRlciB0aGUgZGlyZWN0aXZlIGNhbiBvdmVycmlkZSBhbnl0aGluZyAiCisiY29udGFpbmVkIGluIHRoZSBpbmNsdWRlZCBmaWxlLiBBbnkgc3ltYm9sIChvciBldmVuIGFub3RoZXIgI2luY2x1ZGUgIgorImRpcmVjdGl2ZSkgaW4gdGhlIGluY2x1ZGVkIGZpbGUgY2FuIHNwZWNpZnkgYWRkaXRpb25hbCB0YWdzIG9yIG92ZXJyaWRlICIKKyJ2YWx1ZXMgb2YgdGhlIGluaGVyaXRlZCB0YWdzIGluIGl0cyB0YWcgc3BlY2lmaWNhdGlvbi4gSG93ZXZlciwgdGhlcmUgaXMgbm8gIgorIndheSBmb3IgdGhlIHN5bWJvbCB0byByZW1vdmUgYW55IG9mIHRoZSBpbmhlcml0ZWQgdGFncy4iCittc2dzdHIgIiIKKyJMb3MgZmljaGVyb3MgZGUgc8OtbWJvbG9zIHNlIGxlZW4gbMOtbmVhIGEgbMOtbmVhLCB5IGxhcyBkaXJlY3RpdmFzIMKraW5jbHVkZcK7ICIKKyJzZSBwcm9jZXNhbiBwb3Igb3JkZW4gZGUgYXBhcmljacOzbi4gRXN0byBzaWduaWZpY2EgcXVlIGVsIGNvbnRlbmlkbyBkZWwgIgorImZpY2hlcm8gaW5jbHVpZG8gcHVlZGUgc3VzdGl0dWlyIGN1YWxxdWllciBjb250ZW5pZG8gYXBhcmVjaWRvIGFudGVzIGRlIGxhICIKKyJkaXJlY3RpdmEgwqtpbmNsdWRlwrssIHkgcXVlIHRvZG8gY29udGVuaWRvIGEgY29udGludWFjacOzbiBkZSBsYSBkaXJlY3RpdmEgIgorInB1ZWRlIHN1c3RpdHVpciBjdWFscXVpZXIgY29udGVuaWRvIGRlbCBmaWNoZXJvIGluY2x1aWRvLiBUb2RvIHPDrW1ib2xvIChvICIKKyJpbmNsdXNvIG90cmEgZGlyZWN0aXZhIMKrI2luY2x1ZGXCuykgZW4gZWwgZmljaGVybyBpbmNsdWlkbyBwdWVkZSBlc3BlY2lmaWNhciAiCisiZXRpcXVldGFzIGFkaWNpb25hbGVzLCBvIHN1c3RpdHVpciB2YWxvcmVzIGRlIGxhcyBldGlxdWV0YXMgaGVyZWRhZGFzIGVuIGxhICIKKyJlc3BlY2lmaWNhY2nDs24gZGUgZXRpcXVldGEuIFBvciBvdHJhIHBhcnRlLCBlbCBzw61tYm9sbyBubyBwdWVkZSBlbGltaW5hciAiCisibmluZ3VuYSBkZSBsYXMgZXRpcXVldGFzIGhlcmVkYWRhcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM0NQorbXNnaWQgIiIKKyJBbiBpbmNsdWRlZCBmaWxlIGNhbiByZXBlYXQgdGhlIGhlYWRlciBsaW5lIGNvbnRhaW5pbmcgdGhlIFNPTkFNRSBvZiB0aGUgIgorImxpYnJhcnkuIEluIHRoYXQgY2FzZSwgaXQgb3ZlcnJpZGVzIGFueSBoZWFkZXIgbGluZSBwcmV2aW91c2x5IHJlYWQuICAiCisiSG93ZXZlciwgaW4gZ2VuZXJhbCBpdCdzIGJlc3QgdG8gYXZvaWQgZHVwbGljYXRpbmcgaGVhZGVyIGxpbmVzLiBPbmUgd2F5IHRvICIKKyJkbyBpdCBpcyB0aGUgZm9sbG93aW5nOiIKK21zZ3N0ciAiIgorIlVuIGZpY2hlcm8gaW5jbHVpZG8gcHVlZGUgcmVwZXRpciBsYSBsw61uZWEgZGUgY2FiZWNlcmEgcXVlIGNvbnRpZW5lIGVsICIKKyLCq1NPTkFNRcK7IGRlIGxhIGJpYmxpb3RlY2EuIEVuIHRhbCBjYXNvLCBzdXN0aXR1eWUgY3VhbHF1aWVyIGzDrW5lYSBkZSAiCisiY2FiZWNlcmEgbGXDrWRhIGFudGVyaW9ybWVudGUuIFBvciBvdHJhIHBhcnRlLCBnZW5lcmFsbWVudGUgZXMgbWVqb3IgZXZpdGFyICIKKyJkdXBsaWNhciBsYXMgbMOtbmVhcyBkZSBjYWJlY2VyYS4gQSBjb250aW51YWNpw7NuIHB1ZWRlIHZlciB1bmEgbWFuZXJhIGRlICIKKyJyZWFsaXphciBlc3RvOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzQ4CisjLCBuby13cmFwCittc2dpZCAiIgorIiNpbmNsdWRlIFwibGlic29tZXRoaW5nMS5zeW1ib2xzLmNvbW1vblwiXG4iCisiIGFyY2hfc3BlY2lmaWNfc3ltYm9sQEJhc2UgMS4wXG4iCittc2dzdHIgIiIKKyIjaW5jbHVkZSBcImxpYnNvbWV0aGluZzEuc3ltYm9scy5jb21tb25cIlxuIgorIiBhcmNoX3NwZWNpZmljX3N5bWJvbEBCYXNlIDEuMFxuIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1nZW5zeW1ib2xzLjE6MzQ4CisjLCBuby13cmFwCittc2dpZCAiR29vZCBsaWJyYXJ5IG1hbmFnZW1lbnQiCittc2dzdHIgIkJ1ZW5hIGdlc3Rpw7NuIGRlIGJpYmxpb3RlY2FzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozNTEKK21zZ2lkICJBIHdlbGwtbWFpbnRhaW5lZCBsaWJyYXJ5IGhhcyB0aGUgZm9sbG93aW5nIGZlYXR1cmVzOiIKK21zZ3N0ciAiIgorIlVuYSBiaWJsaW90ZWNhIG1hbnRlbmlkYSBhZGVjdWFkYW1lbnRlIHRpZW5lIGxhcyBzaWd1aWVudGVzIGNhcmFjdGVyw61zdGljYXM6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozNTUKK21zZ2lkICIiCisiaXRzIEFQSSBpcyBzdGFibGUgKHB1YmxpYyBzeW1ib2xzIGFyZSBuZXZlciBkcm9wcGVkLCBvbmx5IG5ldyBwdWJsaWMgc3ltYm9scyAiCisiYXJlIGFkZGVkKSBhbmQgY2hhbmdlcyBpbiBpbmNvbXBhdGlibGUgd2F5cyBvbmx5IHdoZW4gdGhlIFNPTkFNRSBjaGFuZ2VzOyIKK21zZ3N0ciAiIgorInN1IEFQSSBlcyBlc3RhYmxlIChsb3Mgc8OtbWJvbG9zIHDDumJsaWNvcyBudW5jYSBzZSBlbGltaW5hbiwgc2lubyBxdWUgc8OzbG8gc2UgIgorImHDsWFkZW4gc8OtbWJvbG9zIG51ZXZvcyksIHkgbG9zIGNhbWJpb3MgcHVlZGVuIGludHJvZHVjaXIgdW5hICIKKyJpbmNvbXBhdGliaWxpZGFkIHPDs2xvIGN1YW5kbyBlbCDCq1NPTkFNRcK7IGNhbWJpYTsiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM1OAorbXNnaWQgIiIKKyJpZGVhbGx5LCBpdCB1c2VzIHN5bWJvbCB2ZXJzaW9uaW5nIHRvIGFjaGlldmUgQUJJIHN0YWJpbGl0eSBkZXNwaXRlIGludGVybmFsICIKKyJjaGFuZ2VzIGFuZCBBUEkgZXh0ZW5zaW9uOyIKK21zZ3N0ciAiIgorIklkZWFsbWVudGUsIHVzYSBlbCB2ZXJzaW9uYWRvIGRlIHPDrW1ib2xvcyBwYXJhIGFsY2FuemFyIGxhIGVzdGFiaWxpZGFkIGRlIGxhICIKKyJBQkksIGEgcGVzYXIgZGUgY2FtYmlvcyBpbnRlcm5vcyB5IGxhIGV4dGVuc2nDs24gZGUgbGEgQVBJOyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzYxCittc2dpZCAiIgorIml0IGRvZXNuJ3QgZXhwb3J0IHByaXZhdGUgc3ltYm9scyAoc3VjaCBzeW1ib2xzIGNhbiBiZSB0YWdnZWQgb3B0aW9uYWwgYXMgIgorIndvcmthcm91bmQpLiIKK21zZ3N0ciAiIgorIk5vIGV4cG9ydGEgc8OtbWJvbG9zIHByaXZhZG9zICh0YWxlcyBjb21vIHPDrW1ib2xvcyBldGlxdWV0YWRvcyBjb21vICIKKyJvcGNpb25hbGVzIHBhcmEgZXZpdGFyIHVuIHByb2JsZW1hKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM2OQorbXNnaWQgIiIKKyJXaGlsZSBtYWludGFpbmluZyB0aGUgc3ltYm9scyBmaWxlLCBpdCdzIGVhc3kgdG8gbm90aWNlIGFwcGVhcmFuY2UgYW5kICIKKyJkaXNhcHBlYXJhbmNlIG9mIHN5bWJvbHMuIEJ1dCBpdCdzIG1vcmUgZGlmZmljdWx0IHRvIGNhdGNoIGluY29tcGF0aWJsZSBBUEkgIgorImFuZCBBQkkgY2hhbmdlLiBUaHVzIHRoZSBtYWludGFpbmVyIHNob3VsZCByZWFkIHRob3JvdWdobHkgdGhlIHVwc3RyZWFtICIKKyJjaGFuZ2Vsb2cgbG9va2luZyBmb3IgY2FzZXMgd2hlcmUgdGhlIHJ1bGVzIG9mIGdvb2QgbGlicmFyeSBtYW5hZ2VtZW50IGhhdmUgIgorImJlZW4gYnJva2VuLiBJZiBwb3RlbnRpYWwgcHJvYmxlbXMgYXJlIGRpc2NvdmVyZWQsIHRoZSB1cHN0cmVhbSBhdXRob3IgIgorInNob3VsZCBiZSBub3RpZmllZCBhcyBhbiB1cHN0cmVhbSBmaXggaXMgYWx3YXlzIGJldHRlciB0aGFuIGEgRGViaWFuICIKKyJzcGVjaWZpYyB3b3JrLWFyb3VuZC4iCittc2dzdHIgIiIKKyJBbCBtYW50ZW5lciB1biBmaWNoZXJvIMKrc3ltYm9sc8K7IGVzIHNlbmNpbGxvIG5vdGFyIGxhIGFwYXJpY2nDs24geSAiCisiZGVzYXBhcmljacOzbiBkZSBzw61tYm9sb3MuIFBlcm8gZXMgbcOhcyBkaWbDrWNpbCBub3RhciBjYW1iaW9zIGluY29tcGF0aWJsZXMgZW4gIgorImxhcyBBUEkgeSBBQkkuIFBvciBlbGxvLCBlbCByZXNwb25zYWJsZSBkZWwgcGFxdWV0ZSBkZWJlcsOtYSBsZWVyICIKKyJjdWlkYWRvc2FtZW50ZSBlbCByZWdpc3RybyBkZSBjYW1iaW9zIGRlIGxhIGZ1ZW50ZSBvcmlnaW5hbCBlbiBidXNjYSBkZSAiCisiY2Fzb3MgZW4gbG9zIHF1ZSBzZSBoYSByb3RvIGxhIGNvcnJlY3RhIGdlc3Rpw7NuIGRlIGJpYmxpb3RlY2FzLiBTZSBkZWJlcsOtYSAiCisibm90aWZpY2FyIGFsIGF1dG9yIG9yaWdpbmFsIGVuIGNhc28gZGUgZW5jb250cmFyIHByb2JsZW1hcyBwb3RlbmNpYWxlcywgeWEgIgorInF1ZSB1biBhcnJlZ2xvIGVuIGxhIGZ1ZW50ZSBvcmlnaW5hbCBkZWwgc29mdHdhcmUgZXMgc2llbXByZSBwcmVmZXJpYmxlIGEgdW4gIgorImFycmVnbG8gZXNwZWPDrWZpY28gZGUgRGViaWFuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM3MAorIywgbm8td3JhcAorbXNnaWQgIkI8LVA+STxwYWNrYWdlLWJ1aWxkLWRpcj4iCittc2dzdHIgIkI8LVA+STxkaXJlY3RvcmlvLWNvbXBpbGFjacOzbi1wYXF1ZXRlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzczCittc2dpZCAiU2NhbiBJPHBhY2thZ2UtYnVpbGQtZGlyPiBpbnN0ZWFkIG9mIGRlYmlhbi90bXAuIgorbXNnc3RyICJBbmFsaXphIEk8ZGlyZWN0b3Jpby1jb21waWxhY2nDs24tcGFxdWV0ZT4gZW4gbHVnYXIgZGUgwqtkZWJpYW4vdG1wwrsuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozNzcKK21zZ2lkICIiCisiRGVmaW5lIHRoZSBwYWNrYWdlIG5hbWUuIFJlcXVpcmVkIGlmIG1vcmUgdGhhbiBvbmUgYmluYXJ5IHBhY2thZ2UgaXMgbGlzdGVkICIKKyJpbiBkZWJpYW4vY29udHJvbCAob3IgaWYgdGhlcmUncyBubyBkZWJpYW4vY29udHJvbCBmaWxlKS4iCittc2dzdHIgIiIKKyJEZWZpbmUgZWwgbm9tYnJlIGRlbCBwYXF1ZXRlLiBFcyBuZWNlc2FyaW8gc2kgYXBhcmVjZSBtw6FzIGRlIHVuIHBhcXVldGUgIgorImJpbmFyaW8gZW4gwqtkZWJpYW4vY29udHJvbMK7IChvIHNpIG5vIGV4aXN0ZSBuaW5nw7puIGZpY2hlcm8gwqtkZWJpYW4vY29udHJvbMK7KS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM4MQorbXNnaWQgIiIKKyJEZWZpbmUgdGhlIHBhY2thZ2UgdmVyc2lvbi4gRGVmYXVsdHMgdG8gdGhlIHZlcnNpb24gZXh0cmFjdGVkIGZyb20gZGViaWFuLyIKKyJjaGFuZ2Vsb2cuIFJlcXVpcmVkIGlmIGNhbGxlZCBvdXRzaWRlIG9mIGEgc291cmNlIHBhY2thZ2UgdHJlZS4iCittc2dzdHIgIiIKKyJEZWZpbmUgbGEgdmVyc2nDs24gZGVsIHBhcXVldGUuIEVsIHZhbG9yIHBvciBvbWlzacOzbiBlcyBsYSB2ZXJzacOzbiBleHRyYcOtZGEgIgorImRlIMKrZGViaWFuL2NoYW5nZWxvZ8K7LiBOZWNlc2FyaW8gZW4gY2FzbyBkZSB1bmEgaW52b2NhY2nDs24gZXh0ZXJuYSBhbCDDoXJib2wgIgorImRlbCBwYXF1ZXRlIGZ1ZW50ZS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbnN5bWJvbHMuMTozODEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1lPkk8bGlicmFyeS1maWxlPiIKK21zZ3N0ciAiQjwtZT5JPGZpY2hlcm8tYmlibGlvdGVjYT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM4NworbXNnaWQgIiIKKyJPbmx5IGFuYWx5emUgbGlicmFyaWVzIGV4cGxpY2l0bHkgbGlzdGVkIGluc3RlYWQgb2YgZmluZGluZyBhbGwgcHVibGljICIKKyJsaWJyYXJpZXMuIFlvdSBjYW4gdXNlIGEgcmVndWxhciBleHByZXNzaW9uIGluIEk8bGlicmFyeS1maWxlPiB0byBtYXRjaCAiCisibXVsdGlwbGUgbGlicmFyaWVzIHdpdGggYSBzaW5nbGUgYXJndW1lbnQgKG90aGVyd2lzZSB5b3UgbmVlZCBtdWx0aXBsZSBCPC0iCisiZT4pLiIKK21zZ3N0ciAiIgorIlPDs2xvIGFuYWxpemEgbGFzIGJpYmxpb3RlY2FzIGxpc3RhZGFzIGV4cGzDrWNpdGFtZW50ZSwgZW4gbHVnYXIgZGUgYnVzY2FyICIKKyJ0b2RhcyBsYXMgYmlibGlvdGVjYXMgcMO6YmxpY2FzLiBQdWVkZSB1c2FyIHVuYSBleHByZXNpw7NuIHJlZ3VsYXIgZW4gIgorIkk8ZmljaGVyby1iaWJsaW90ZWNhPiBwYXJhIGVtcGFyZWphciB2YXJpYXMgYmlibGlvdGVjYXMgY29uIHVuIMO6bmljbyAiCisiYXJndW1lbnRvIChkZSBvdHJhIGZvcm1hLCBuZWNlc2l0YSB2YXJpYXMgQjwtZT4pLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM4NworIywgbm8td3JhcAorbXNnaWQgIkI8LUk+STxmaWxlbmFtZT4iCittc2dzdHIgIkI8LUk+STxub21icmUtZmljaGVybz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM5MQorbXNnaWQgIiIKKyJVc2UgSTxmaWxlbmFtZT4gYXMgcmVmZXJlbmNlIGZpbGUgdG8gZ2VuZXJhdGUgdGhlIHN5bWJvbHMgZmlsZSB0aGF0IGlzICIKKyJpbnRlZ3JhdGVkIGluIHRoZSBwYWNrYWdlIGl0c2VsZi4iCittc2dzdHIgIiIKKyJVc2EgSTxub21icmUtZmljaGVybz4gY29tbyB1biBmaWNoZXJvIGRlIHJlZmVyZW5jaWEgcGFyYSBnZW5lcmFyIGVsIGZpY2hlcm8gIgorIsKrc3ltYm9sc8K7IGludGVncmFkbyBlbiBlbCBtaXNtbyBwYXF1ZXRlLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6Mzk1Cittc2dpZCAiIgorIlByaW50IHRoZSBnZW5lcmF0ZWQgc3ltYm9scyBmaWxlIHRvIHN0YW5kYXJkIG91dHB1dCwgcmF0aGVyIHRoYW4gYmVpbmcgIgorInN0b3JlZCBpbiB0aGUgcGFja2FnZSBidWlsZCB0cmVlLiIKK21zZ3N0ciAiIgorIk11ZXN0cmEgcG9yIGxhIHNhbGlkYSBlc3TDoW5kYXIgZWwgZmljaGVybyDCq3N5bWJvbHPCuyBnZW5lcmFkbywgZW4gbHVnYXIgZGUgIgorImFsbWFjZW5hcmxvIGVuIGVsIMOhcmJvbCBkZSBjb25zdHJ1Y2Npw7NuIGRlbCBwYXF1ZXRlLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM5NQorIywgbm8td3JhcAorbXNnaWQgIkI8LU8+STxmaWxlbmFtZT4iCittc2dzdHIgIkI8LU8+STxmaWNoZXJvPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDAxCittc2dpZCAiIgorIlN0b3JlIHRoZSBnZW5lcmF0ZWQgc3ltYm9scyBmaWxlIGFzIEk8ZmlsZW5hbWU+LiBJZiBJPGZpbGVuYW1lPiBpcyBwcmUtIgorImV4aXN0aW5nLCBpdHMgY29udGVudCBpcyB1c2VkIGFzIGJhc2lzIGZvciB0aGUgZ2VuZXJhdGVkIHN5bWJvbHMgZmlsZS4gIFlvdSAiCisiY2FuIHVzZSB0aGlzIGZlYXR1cmUgdG8gdXBkYXRlIGEgc3ltYm9scyBmaWxlIHNvIHRoYXQgaXQgbWF0Y2hlcyBhIG5ld2VyICIKKyJ1cHN0cmVhbSB2ZXJzaW9uIG9mIHlvdXIgbGlicmFyeS4iCittc2dzdHIgIiIKKyJHdWFyZGEgZWwgZmljaGVybyBkZSBzw61tYm9sb3MgZ2VuZXJhZG8gY29tbyBJPGZpY2hlcm8+LiBTaSBlbCBJPGZpY2hlcm8+IHlhICIKKyJleGlzdGUgc3UgY29udGVuaWRvIHNlIHVzYXLDoSBjb21vIGJhc2UgcGFyYSBlbCBmaWNoZXJvIMKrc3ltYm9sc8K7IGdlbmVyYWRvLiAiCisiUHVlZGUgdXNhciBlc3RhIGNhcmFjdGVyw61zdGljYSBwYXJhIGFjdHVhbGl6YXIgdW4gZmljaGVybyDCq3N5bWJvbHPCuyBwYXJhIHF1ZSAiCisiY29pbmNpZGEgY29uIHVuYSB2ZXJzacOzbiBtw6FzIHJlY2llbnRlIGRlIGxhIGJpYmxpb3RlY2EgZGVsIGF1dG9yIG9yaWdpbmFsLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQwMQorIywgbm8td3JhcAorbXNnaWQgIkI8LXQ+IgorbXNnc3RyICJCPC10PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDEwCittc2dpZCAiIgorIldyaXRlIHRoZSBzeW1ib2wgZmlsZSBpbiB0ZW1wbGF0ZSBtb2RlIHJhdGhlciB0aGFuIHRoZSBmb3JtYXQgY29tcGF0aWJsZSAiCisid2l0aCBJPGRlYi1zeW1ib2xzKDUpPi4gVGhlIG1haW4gZGlmZmVyZW5jZSBpcyB0aGF0IGluIHRoZSB0ZW1wbGF0ZSBtb2RlICIKKyJzeW1ib2wgbmFtZXMgYW5kIHRhZ3MgYXJlIHdyaXR0ZW4gaW4gdGhlaXIgb3JpZ2luYWwgZm9ybSBjb250cmFyeSB0byB0aGUgIgorInBvc3QtcHJvY2Vzc2VkIHN5bWJvbCBuYW1lcyB3aXRoIHRhZ3Mgc3RyaXBwZWQgaW4gdGhlIGNvbXBhdGliaWxpdHkgbW9kZS4gICIKKyJNb3Jlb3Zlciwgc29tZSBzeW1ib2xzIG1pZ2h0IGJlIG9taXR0ZWQgd2hlbiB3cml0aW5nIGEgc3RhbmRhcmQgSTxkZWItc3ltYm9scyIKKyIoNSk+IGZpbGUgKGFjY29yZGluZyB0byB0aGUgdGFnIHByb2Nlc3NpbmcgcnVsZXMpIHdoaWxlIGFsbCBzeW1ib2xzIGFyZSAiCisiYWx3YXlzIHdyaXR0ZW4gdG8gdGhlIHN5bWJvbCBmaWxlIHRlbXBsYXRlLiIKK21zZ3N0ciAiIgorIkVzY3JpYmUgZWwgZmljaGVybyDCq3N5bWJvbHPCuyBlbiBtb2RvIHBsYW50aWxsYSBlbiBsdWdhciBkZWwgZm9ybWF0byAiCisiY29tcGF0aWJsZSBjb24gSTxkZWItc3ltYm9scyg1KT4uIExhIGRpZmVyZW5jaWEgbcOhcyBub3RhYmxlIGVzIHF1ZSBlbiBtb2RvICIKKyJwbGFudGlsbGEgbG9zIG5vbWJyZXMgZGUgc8OtbWJvbG8geSBldGlxdWV0YXMgc2UgZXNjcmliZW4gZW4gc3UgZm9ybWEgIgorIm9yaWdpbmFsLCBlbiBsdWdhciBkZSBsb3Mgbm9tYnJlcyBkZSBzw61tYm9sbyBwb3N0LXByb2Nlc2Fkb3MgY29uIGxhcyAiCisiZXRpcXVldGFzIGVsaW1pbmFkYXMgZW4gbW9kbyBjb21wYXRpYmxlLiBBZGVtw6FzLCBwdWVkZSBxdWUgc2Ugb21pdGFuIGFsZ3Vub3MgIgorInPDrW1ib2xvcyBhbCBlc2NyaWJpciB1biBmaWNoZXJvIGVzdMOhbmRhciBkZSBJPGRlYi1zeW1ib2xzKDUpPiAoZGUgYWN1ZXJkbyBhICIKKyJsYXMgcmVnbGFzIGRlIHByb2Nlc2FtaWVudG8gZGUgZXRpcXVldGFzKSwgbWllbnRyYXMgcXVlIHNpZW1wcmUgc2UgaW5zZXJ0YW4gIgorInRvZG9zIGxvcyBzw61tYm9sb3MgZW4gZWwgbW9kbyBwbGFudGlsbGEuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDEwCisjLCBuby13cmFwCittc2dpZCAiQjwtYz5JPFswLTRdPiIKK21zZ3N0ciAiQjwtYz5JPFswLTRdPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDE4Cittc2dpZCAiIgorIkRlZmluZSB0aGUgY2hlY2tzIHRvIGRvIHdoZW4gY29tcGFyaW5nIHRoZSBnZW5lcmF0ZWQgc3ltYm9scyBmaWxlIHdpdGggdGhlICIKKyJ0ZW1wbGF0ZSBmaWxlIHVzZWQgYXMgc3RhcnRpbmcgcG9pbnQuIEJ5IGRlZmF1bHQgdGhlIGxldmVsIGlzIDEuIEluY3JlYXNpbmcgIgorImxldmVscyBkbyBtb3JlIGNoZWNrcyBhbmQgaW5jbHVkZSBhbGwgY2hlY2tzIG9mIGxvd2VyIGxldmVscy4gTGV2ZWwgMCBuZXZlciAiCisiZmFpbHMuIExldmVsIDEgZmFpbHMgaWYgc29tZSBzeW1ib2xzIGhhdmUgZGlzYXBwZWFyZWQuIExldmVsIDIgZmFpbHMgaWYgc29tZSAiCisibmV3IHN5bWJvbHMgaGF2ZSBiZWVuIGludHJvZHVjZWQuIExldmVsIDMgZmFpbHMgaWYgc29tZSBsaWJyYXJpZXMgaGF2ZSAiCisiZGlzYXBwZWFyZWQuIExldmVsIDQgZmFpbHMgaWYgc29tZSBsaWJyYXJpZXMgaGF2ZSBiZWVuIGludHJvZHVjZWQuIgorbXNnc3RyICIiCisiRGVmaW5lIGxhcyBjb21wcm9iYWNpb25lcyBhIHJlYWxpemFyIGFsIGNvbXBhcmFyIGVsIGZpY2hlcm8gwqtzeW1ib2xzwrsgIgorImdlbmVyYWRvIHVzYW5kbyBjb21vIGJhc2UgZWwgZmljaGVybyBkZSBwbGFudGlsbGEuIEVsIG5pdmVsIHByZWRlZmluaWRvIGVzICIKKyIxLiBBdW1lbnRhciBsb3Mgbml2ZWxlcyBjb25sbGV2YSBtw6FzIGNvbXByb2JhY2lvbmVzLCBhc8OtIGNvbW8gbGEgaW5jbHVzacOzbiAiCisiZGUgdG9kb3MgbG9zIG5pdmVsZXMgaW5mZXJpb3Jlcy4gRWwgbml2ZWwgMCBudW5jYSBmYWxsYS4gRWwgbml2ZWwgMSBmYWxsYSBzaSAiCisiYWxndW5vcyBzw61tYm9sb3MgaGFuIGRlc2FwYXJlY2lkby4gRWwgbml2ZWwgMiBmYWxsYSBzaSBzZSBoYW4gaW50cm9kdWNpZG8gIgorInPDrW1ib2xvcyBudWV2b3MuIEVsIG5pdmVsIDMgZmFsbGEgc2kgaGFuIGRlc2FwYXJlY2lkbyBhbGd1bmFzIGJpYmxpb3RlY2FzLiAiCisiRWwgbml2ZWwgNCBmYWxsYSBzaSBzZSBoYW4gaW50cm9kdWNpZG8gYmlibGlvdGVjYXMgbnVldmFzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDIxCittc2dpZCAiIgorIlRoaXMgdmFsdWUgY2FuIGJlIG92ZXJyaWRkZW4gYnkgdGhlIGVudmlyb25tZW50IHZhcmlhYmxlICIKKyJEUEtHX0dFTlNZTUJPTFNfQ0hFQ0tfTEVWRUwuIgorbXNnc3RyICIiCisiUHVlZGUgc3VzdGl0dWlyIGVzdGUgdmFsb3IgY29uIGxhIHZhcmlhYmxlIGRlIGVudG9ybm8gIgorIsKrRFBLR19HRU5TWU1CT0xTX0NIRUNLX0xFVkVMwrsuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0MjcKK21zZ2lkICIiCisiS2VlcCBxdWlldCBhbmQgbmV2ZXIgZ2VuZXJhdGUgYSBkaWZmIGJldHdlZW4gZ2VuZXJhdGVkIHN5bWJvbHMgZmlsZSBhbmQgdGhlICIKKyJ0ZW1wbGF0ZSBmaWxlIHVzZWQgYXMgc3RhcnRpbmcgcG9pbnQgb3Igc2hvdyBhbnkgd2FybmluZ3MgYWJvdXQgbmV3L2xvc3QgIgorImxpYnJhcmllcyBvciBuZXcvbG9zdCBzeW1ib2xzLiBUaGlzIG9wdGlvbiBvbmx5IGRpc2FibGVzIGluZm9ybWF0aW9uYWwgIgorIm91dHB1dCBidXQgbm90IHRoZSBjaGVja3MgdGhlbXNlbHZlcyAoc2VlIEk8LWM+IG9wdGlvbikuIgorbXNnc3RyICIiCisiTm8gbXVlc3RyYSBpbmZvcm1lcyB5IG51bmNhIGdlbmVyYSB1biDCq2RpZmbCuyBlbnRyZSBlbCBmaWNoZXJvIMKrc3ltYm9sc8K7ICIKKyJnZW5lcmFkbyB5IGVsIGZpY2hlcm8gZGUgcGxhbnRpbGxhIHRvbWFkbyBjb21vIGJhc2UsIG5pIG11ZXN0cmEgbmluZ8O6biBhdmlzbyAiCisicmVsYXRpdm8gYSBiaWJsaW90ZWNhcyBudWV2YXMgbyBhdXNlbnRlcywgbyBzw61tYm9sb3MgbnVldm9zIG8gYXVzZW50ZXMuIEVzdGEgIgorIm9wY2nDs24gc29sbyBkZXNhY3RpdmEgbGEgc2FsaWRhIGluZm9ybWF0aXZhLCBwZXJvIG5vIGxhcyBjb21wcm9iYWNpb25lcyAiCisiKGNvbnN1bHRlIGxhIG9wY2nDs24gSTwtYz4pLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQyNworIywgbm8td3JhcAorbXNnaWQgIkI8LWE+STxhcmNoPiIKK21zZ3N0ciAiQjwtYT5JPGFycXVpdGVjdHVyYT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQzMgorbXNnaWQgIiIKKyJBc3N1bWUgSTxhcmNoPiBhcyBob3N0IGFyY2hpdGVjdHVyZSB3aGVuIHByb2Nlc3Npbmcgc3ltYm9sIGZpbGVzLiBVc2UgdGhpcyAiCisib3B0aW9uIHRvIGdlbmVyYXRlIGEgc3ltYm9sIGZpbGUgb3IgZGlmZiBmb3IgYW55IGFyY2hpdGVjdHVyZSBwcm92aWRlZCBpdHMgIgorImJpbmFyaWVzIGFyZSBhbHJlYWR5IGF2YWlsYWJsZS4iCittc2dzdHIgIiIKKyJUb21hIEk8YXJxdWl0ZWN0dXJhPiBjb21vIGxhIGFycXVpdGVjdHVyYSBhbmZpdHJpw7NuIGFsIHByb2Nlc2FyIGZpY2hlcm9zICIKKyLCq3N5bWJvbHPCuy4gVXNlIGVzdGEgb3BjacOzbiBwYXJhIGdlbmVyYXIgdW4gZmljaGVybyDCq3N5bWJvbHPCuyBvIHVuIMKrZGlmZsK7ICIKKyJwYXJhIGN1YWxxdWllciBhcnF1aXRlY3R1cmEsIHNpZW1wcmUgeSBjdWFuZG8gc3VzIGJpbmFyaW9zIHlhIGVzdMOpbiAiCisiZGlzcG9uaWJsZXMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0MzcKK21zZ2lkICIiCisiRW5hYmxlIGRlYnVnIG1vZGUuIE51bWVyb3VzIG1lc3NhZ2VzIGFyZSBkaXNwbGF5ZWQgdG8gZXhwbGFpbiB3aGF0IEI8ZHBrZy0iCisiZ2Vuc3ltYm9scz4gZG9lcy4iCittc2dzdHIgIiIKKyJBY3RpdmEgZWwgbW9kbyBkZSBkZXB1cmFjacOzbi4gU2UgbXVlc3RyYW4gbnVtZXJvc29zIG1lbnNhamVzIHF1ZSBleHBsaWNhbiAiCisibGFzIGFjY2lvbmVzIGRlIEI8ZHBrZy1nZW5zeW1ib2xzPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0MzcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1WPiIKK21zZ3N0ciAiQjwtVj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQ0MworbXNnaWQgIiIKKyJFbmFibGUgdmVyYm9zZSBtb2RlLiBUaGUgZ2VuZXJhdGVkIHN5bWJvbHMgZmlsZSBjb250YWlucyBkZXByZWNhdGVkIHN5bWJvbHMgIgorImFzIGNvbW1lbnRzLiBGdXJ0aGVybW9yZSBpbiB0ZW1wbGF0ZSBtb2RlLCBwYXR0ZXJuIHN5bWJvbHMgYXJlIGZvbGxvd2VkIGJ5ICIKKyJjb21tZW50cyBsaXN0aW5nIHJlYWwgc3ltYm9scyB0aGF0IGhhdmUgbWF0Y2hlZCB0aGUgcGF0dGVybi4iCittc2dzdHIgIiIKKyJBY3RpdmEgZWwgbW9kbyB2ZXJib3NvLiBFbCBmaWNoZXJvIMKrc3ltYm9sc8K7IGdlbmVyYWRvIGNvbnRpZW5lIHPDrW1ib2xvcyAiCisib2Jzb2xldG9zIGVuIGxhIGZvcm1hIGRlIGNvbWVudGFyaW9zLiBBZGVtw6FzLCBlbiBtb2RvIHBsYW50aWxsYSBsb3MgcGF0cm9uZXMgIgorImRlIHPDrW1ib2xvIGFudGVjZWRlbiBhIGxvcyBjb21lbnRhcmlvcyBxdWUgbGlzdGFuIGxvcyBzw61tYm9sb3MgcmVhbGVzIHF1ZSAiCisiY29pbmNpZGVuIGNvbiBlbCBwYXRyw7NuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDUyCittc2dpZCAiQjxodHRwOi8vcGVvcGxlLnJlZGhhdC5jb20vZHJlcHBlci9zeW1ib2wtdmVyc2lvbmluZz4iCittc2dzdHIgIkI8aHR0cDovL3Blb3BsZS5yZWRoYXQuY29tL2RyZXBwZXIvc3ltYm9sLXZlcnNpb25pbmc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0NTQKK21zZ2lkICJCPGh0dHA6Ly9wZW9wbGUucmVkaGF0LmNvbS9kcmVwcGVyL2dvb2RwcmFjdGljZS5wZGY+IgorbXNnc3RyICJCPGh0dHA6Ly9wZW9wbGUucmVkaGF0LmNvbS9kcmVwcGVyL2dvb2RwcmFjdGljZS5wZGY+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0NTYKK21zZ2lkICJCPGh0dHA6Ly9wZW9wbGUucmVkaGF0LmNvbS9kcmVwcGVyL2Rzb2hvd3RvLnBkZj4iCittc2dzdHIgIkI8aHR0cDovL3Blb3BsZS5yZWRoYXQuY29tL2RyZXBwZXIvZHNvaG93dG8ucGRmPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDU5Cittc2dpZCAiQjxkZWItc3ltYm9scz4oNSksIEI8ZHBrZy1zaGxpYmRlcHM+KDEpLiIKK21zZ3N0ciAiQjxkZWItc3ltYm9scz4oNSksIEI8ZHBrZy1zaGxpYmRlcHM+KDEpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDYyCittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMDctMjAwOSBSYXBoYVxcWzplXWwgSGVydHpvZyIKK21zZ3N0ciAiQ29weXJpZ2h0IFxcKGNvIDIwMDctMjAwOSBSYXBoYVxcWzplXWwgSGVydHpvZyIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MQorIywgbm8td3JhcAorbXNnaWQgImRwa2ctbWFpbnRzY3JpcHQtaGVscGVyIgorbXNnc3RyICJkcGtnLW1haW50c2NyaXB0LWhlbHBlciIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMTo0Cittc2dpZCAiIgorImRwa2ctbWFpbnRzY3JpcHQtaGVscGVyIC0gd29ya3MgYXJvdW5kIGtub3duIGRwa2cgbGltaXRhdGlvbnMgaW4gbWFpbnRhaW5lciAiCisic2NyaXB0cyIKK21zZ3N0ciAiIgorImRwa2ctbWFpbnRzY3JpcHQtaGVscGVyIC0gU29sdWNpw7NuIGFsdGVybmF0aXZhIGEgbGFzIGxpbWl0YWNpb25lcyBkZSBkcGtnIGVuICIKKyJzY3JpcHRzIGRlIG1hbnRlbmVkb3IiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6OAorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiQjxkcGtnLW1haW50c2NyaXB0LWhlbHBlcj4gSTxjb21tYW5kPiBbSTxwYXJhbWV0ZXJzPi4uLl0gLS0gSTxtYWludC0iCisjfCAic2NyaXB0LXBhcmFtZXRlcnM+IgorbXNnaWQgIiIKKyJCPGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyPiBJPGNvbW1hbmQ+IFtJPHBhcmFtZXRlcj4uLi5dIEI8LS0+IEk8bWFpbnQtc2NyaXB0LSIKKyJwYXJhbWV0ZXI+Li4uIgorbXNnc3RyICIiCisiQjxkcGtnLW1haW50c2NyaXB0LWhlbHBlcj4gSTxvcmRlbj4gW0k8cGFyw6FtZXRyb3M+Li4uXSAtLSBJPHBhcsOhbWV0cm9zLSIKKyJzY3JpcHQtbWFudGVuZWRvcj4iCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjkKKyMsIG5vLXdyYXAKK21zZ2lkICJDT01NQU5EUyBBTkQgUEFSQU1FVEVSUyIKK21zZ3N0ciAiw5NSREVORVMgWSBQQVLDgU1FVFJPUyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxMgorbXNnaWQgIkI8cm1fY29uZmZpbGU+IEk8Y29uZmZpbGU+IFtJPGxhc3R2ZXJzaW9uPiBbSTxwYWNrYWdlPl1dIgorbXNnc3RyICJCPHJtXz4gSTxjb25mZmlsZT4gW0k8w7psdGltYS12ZXJzacOzbj4gW0k8cGFxdWV0ZT5dXSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxNAorbXNnaWQgIiIKKyJCPG12X2NvbmZmaWxlPiBJPG9sZGNvbmZmaWxlPiBJPG5ld2NvbmZmaWxlPiBbSTxsYXN0dmVyc2lvbj4gW0k8cGFja2FnZT5dXSIKK21zZ3N0ciAiIgorIkI8bXZfY29uZmZpbGU+IEk8Y29uZmZpbGUtYW50aWd1bz4gSTxjb25mZmlsZS1udWV2bz4gW0k8w7psdGltYS12ZXJzacOzbj4gIgorIltJPHBhcXVldGU+XV0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MjAKK21zZ2lkICIiCisiVGhpcyBwcm9ncmFtIGlzIGRlc2lnbmVkIHRvIGJlIHJ1biB3aXRoaW4gbWFpbnRhaW5lciBzY3JpcHRzIHRvIGFjaGlldmUgc29tZSAiCisidGFza3MgdGhhdCBkcGtnIGNhbid0ICh5ZXQpIGhhbmRsZSBuYXRpdmVseSBlaXRoZXIgYmVjYXVzZSBvZiBkZXNpZ24gIgorImRlY2lzaW9ucyBvciBkdWUgdG8gY3VycmVudCBsaW1pdGF0aW9ucy4iCittc2dzdHIgIiIKKyJFc3RlIHByb2dyYW1hIGVzdMOhIGRpc2XDsWFkbyBwYXJhIHN1IHVzbyBkZW50cm8gZGUgc2NyaXB0cyBkZSBtYW50ZW5lZG9yIHBhcmEgIgorInJlYWxpemFyIHRhcmVhcyBxdWUgZHBrZyBubyBwdWVkZSAocG9yIGFob3JhKSBnZXN0aW9uYXIgZGUgZm9ybWEgbmF0aXZhLCAiCisiYmllbiBwb3IgZGVjaXNpb25lcyBkZSBkaXNlw7FvIG8gbGltaXRhY2lvbmVzIGFjdHVhbGVzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToyNworIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiTWFueSBvZiB0aG9zZSB0YXNrcyByZXF1aXJlIGNvb3JkaW5hdGVkIGFjdGlvbnMgZnJvbSBzZXZlcmFsIG1haW50YWluZXIgIgorI3wgInNjcmlwdHMgKEI8cHJlaW5zdD4sIEI8cG9zdGluc3Q+LCBCPHByZXJtPiwgQjxwb3N0cm0+KS4gVG8gYXZvaWQgbWlzdGFrZXMgIgorI3wgInRoZSBzYW1lIGNhbGwgc2ltcGx5IG5lZWRzIHRvIGJlIHB1dCBpbiBhbGwgc2NyaXB0cyBhbmQgdGhlIHByb2dyYW0gd2lsbCAiCisjfCAiYXV0b21hdGljYWxseSBhZGFwdCBpdHMgYmVoYXZpb3VyIGJhc2VkIG9uIHRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZSAiCisjfCAiRFBLR19NQUlOVFNDUklQVF9OQU1FIGFuZCBvbiB0aGUgbWFpbnRhaW5lciBzY3JpcHRzIGFyZ3VtZW50cyB0aGF0IHlvdSAiCisjfCAiaGF2ZSB0byBmb3J3YXJkIGFmdGVyIGEgZG91YmxlIGRhc2guIgorbXNnaWQgIiIKKyJNYW55IG9mIHRob3NlIHRhc2tzIHJlcXVpcmUgY29vcmRpbmF0ZWQgYWN0aW9ucyBmcm9tIHNldmVyYWwgbWFpbnRhaW5lciAiCisic2NyaXB0cyAoQjxwcmVpbnN0PiwgQjxwb3N0aW5zdD4sIEI8cHJlcm0+LCBCPHBvc3RybT4pLiBUbyBhdm9pZCBtaXN0YWtlcyAiCisidGhlIHNhbWUgY2FsbCBzaW1wbHkgbmVlZHMgdG8gYmUgcHV0IGluIGFsbCBzY3JpcHRzIGFuZCB0aGUgcHJvZ3JhbSB3aWxsICIKKyJhdXRvbWF0aWNhbGx5IGFkYXB0IGl0cyBiZWhhdmlvdXIgYmFzZWQgb24gdGhlIGVudmlyb25tZW50IHZhcmlhYmxlICIKKyJCPERQS0dfTUFJTlRTQ1JJUFRfTkFNRT4gYW5kIG9uIHRoZSBtYWludGFpbmVyIHNjcmlwdHMgYXJndW1lbnRzIHRoYXQgeW91ICIKKyJoYXZlIHRvIGZvcndhcmQgYWZ0ZXIgYSBkb3VibGUgZGFzaC4iCittc2dzdHIgIiIKKyJNdWNoYXMgZGUgZXN0YXMgdGFyZWFzIHJlcXVpZXJlbiBsYSBlamVjdWNpw7NuIGNvb3JkaW5hZGEgZGUgdmFyaW9zIHNjcmlwdHMgIgorImRlIG1hbnRlbmVkb3IgKEI8cHJlaW5zdD4sIEI8cG9zdGluc3Q+LCBCPHByZXJtPiwgQjxwb3N0cm0+KS4gUGFyYSBldml0YXIgIgorImVycm9yZXMgc8OzbG8gdGllbmUgcXVlIGluc2VydGFyIGxhIG1pc21hIGludm9jYWNpw7NuIGVuIHRvZG9zIGxvcyBzY3JpcHRzLCB5ICIKKyJlbCBwcm9ncmFtYSBhZGFwdGFyw6EgYXV0b23DoXRpY2FtZW50ZSBzdSBjb21wb3J0YW1pZW50byBlbiBiYXNlIGEgbGEgdmFyaWFibGUgIgorImRlIGVudG9ybm8gwqtEUEtHX01BSU5UU0NSSVBUX05BTUXCuyB5IGEgbG9zIGFyZ3VtZW50b3MgZGUgbG9zIHNjcmlwdHMgZGVsICIKKyJtYW50ZW5lZG9yLCBxdWUgZGViZSBpbnRyb2R1Y2lyIGRlc3B1w6lzIGRlIHVuIGd1acOzbiBkb2JsZS4iCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjI4CisjLCBuby13cmFwCittc2dpZCAiQ09ORkZJTEUgUkVMQVRFRCBUQVNLUyIKK21zZ3N0ciAiVEFSRUFTIENPTiBGSUNIRVJPUyBERSBDT05GSUdVUkFDScOTTiDCq0NPTkZGSUxFU8K7IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjM4Cittc2dpZCAiIgorIldoZW4gdXBncmFkaW5nIGEgcGFja2FnZSwgZHBrZyB3aWxsIG5vdCBhdXRvbWF0aWNhbGx5IHJlbW92ZSBhIGNvbmZmaWxlIChhICIKKyJjb25maWd1cmF0aW9uIGZpbGUgZm9yIHdoaWNoIGRwa2cgc2hvdWxkIHByZXNlcnZlIHVzZXIgY2hhbmdlcykgaWYgaXQgaXMgbm90ICIKKyJwcmVzZW50IGluIHRoZSBuZXdlciB2ZXJzaW9uLiBUaGVyZSBhcmUgdHdvIHByaW5jaXBhbCByZWFzb25zIGZvciB0aGlzOyB0aGUgIgorImZpcnN0IGlzIHRoYXQgdGhlIGNvbmZmaWxlIGNvdWxkJ3ZlIGJlZW4gZHJvcHBlZCBieSBhY2NpZGVudCBhbmQgdGhlIG5leHQgIgorInZlcnNpb24gY291bGQgcmVzdG9yZSBpdCwgdXNlcnMgd291bGRuJ3Qgd2FudCB0aGVpciBjaGFuZ2VzIHRocm93biBhd2F5LiBUaGUgIgorInNlY29uZCBpcyB0byBhbGxvdyBwYWNrYWdlcyB0byB0cmFuc2l0aW9uIGZpbGVzIGZyb20gYSBkcGtnLW1haW50YWluZWQgIgorImNvbmZmaWxlIHRvIGEgZmlsZSBtYWludGFpbmVkIGJ5IHRoZSBwYWNrYWdlJ3MgbWFpbnRhaW5lciBzY3JpcHRzLCB1c3VhbGx5ICIKKyJ3aXRoIGEgdG9vbCBsaWtlIGRlYmNvbmYgb3IgdWNmLiIKK21zZ3N0ciAiIgorIkFsIGFjdHVhbGl6YXIgdW4gcGFxdWV0ZSwgZHBrZyBubyBlbGltaW5hcsOhIGF1dG9tw6F0aWNhbWVudGUgdW4gZmljaGVybyBkZSAiCisiY29uZmlndXJhY2nDs24gKHVuIGZpY2hlcm8gZGUgY29uZmlndXJhY2nDs24gY29uIGNhbWJpb3MgZGVsIHVzdWFyaW8gcXVlIGRwa2cgIgorImRlYmVyw61hIHByZXNlcnZhcikgc2kgbm8gZXN0w6EgcHJlc2VudGUgZW4gbGEgdmVyc2nDs24gbcOhcyByZWNpZW50ZS4gRXhpc3RlbiAiCisiZG9zIHJhem9uZXMgcHJpbmNpcGFsZXMgcGFyYSBlc3RvOiBsYSBwcmltZXJhIGVzIHF1ZSBwdWVkZSBxdWUgZWwgZmljaGVybyBkZSAiCisiY29uZmlndXJhY2nDs24gwqtjb25mZmlsZcK7IGhheWEgZGVzYXBhcmVjaWRvIGFjY2lkZW50YWxtZW50ZSwgY29uIGxvIHF1ZSBsYSAiCisic2lndWllbnRlIHZlcnNpw7NuIGxhIHJlc3RhdXJhcsOtYS4gTG9zIHVzdWFyaW9zIG5vIHF1ZXJyw61hbiB2ZXIgZGVzcGFyZWNlciAiCisibG9zIGNhbWJpb3MgaGVjaG9zLiBMYSBzZWd1bmRhIGVzIHBlcm1pdGlyIGEgbG9zIHBhcXVldGVzIHVuYSB0cmFuc2ljacOzbiBkZSAiCisidW4gZmljaGVybyBkZSBjb25maWd1cmFjacOzbiDCq2NvbmZmaWxlwrsgbWFudGVuaWRvIHBvciBkcGtnIGEgdW4gZmljaGVybyAiCisibWFudGVuaWRvIHBvciBsb3Mgc2NyaXB0cyBkZSBtYW50ZW5lZG9yIGRlbCBwYXF1ZXRlLCBoYWJpdHVhbG1lbnRlIGNvbiB1bmEgIgorImhlcnJhbWllbnRhIGNvbW8gZGViY29uZiBvIHVjZi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6NDMKK21zZ2lkICIiCisiVGhpcyBtZWFucyB0aGF0IGlmIGEgcGFja2FnZSBpcyBpbnRlbmRlZCB0byByZW5hbWUgb3IgcmVtb3ZlIGEgY29uZmZpbGUsIGl0ICIKKyJtdXN0IGV4cGxpY2l0bHkgZG8gc28gYW5kIEI8ZHBrZy1tYWludHNjcmlwdC1oZWxwZXI+IGNhbiBiZSB1c2VkIHRvICIKKyJpbXBsZW1lbnQgZ3JhY2VmdWwgZGVsZXRpb24gYW5kIG1vdmluZyBvZiBjb25mZmlsZXMgd2l0aGluIG1haW50YWluZXIgIgorInNjcmlwdHMuIgorbXNnc3RyICIiCisiRXN0byBzaWduaWZpY2EgcXVlIHNpIHVuIHBhcXVldGUgcHJldGVuZGUgcmVub21icmFyIG8gZWxpbWluYXIgdW4gZmljaGVybyBkZSAiCisiY29uZmlndXJhY2nDs24sIGRlYmUgaGFjZXJsbyBkZSBmb3JtYSBleHBsw61jaXRhLiBCPGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyPiAiCisic2UgcHVlZGUgdXNhciBwYXJhIGltcGxlbWVudGFyIGNvbiBzZW5jaWxsZXogZGVudHJvIGRlIGxvcyBzY3JpcHRzIGRlbCAiCisibWFudGVuZWRvciBsYSBlbGltaW5hY2nDs24geSBlbCBkZXNwbGF6YW1pZW50byBkZSBmaWNoZXJvcyBkZSBjb25maWd1cmFjacOzbiAiCisiwqtjb25mZmlsZcK7LiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6NDQKKyMsIG5vLXdyYXAKK21zZ2lkICJSRU1PVklORyBBIENPTkZGSUxFIgorbXNnc3RyICJFTElNSU5BUiBVTiBGSUNIRVJPIERFIENPTkZJR1VSQUNJw5NOIMKrQ09ORkZJTEXCuyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMTo1MAorbXNnaWQgIiIKKyJJZiBhIGNvbmZmaWxlIGlzIGNvbXBsZXRlbHkgcmVtb3ZlZCwgaXQgc2hvdWxkIGJlIHJlbW92ZWQgZnJvbSBkaXNrLCB1bmxlc3MgIgorInRoZSB1c2VyIGhhcyBtb2RpZmllZCBpdC4gSWYgdGhlcmUgYXJlIGxvY2FsIG1vZGlmaWNhdGlvbnMsIHRoZXkgc2hvdWxkIGJlICIKKyJwcmVzZXJ2ZWQuIElmIHRoZSBwYWNrYWdlIHVwZ3JhZGVzIGFib3J0cywgdGhlIG5ld2x5IG9ic29sZXRlIGNvbmZmaWxlICIKKyJzaG91bGQgbm90IGRpc2FwcGVhci4iCittc2dzdHIgIiIKKyJTaSBzZSBlbGltaW5hIHVuIGZpY2hlcm8gZGUgY29uZmlndXJhY2nDs24gwqtjb25mZmlsZcK7IHBvciBjb21wbGV0bywgc2UgIgorImRlYmVyw61hIGVsaW1pbmFyIGRlbCBkaXNjbyBhIG1lbm9zIHF1ZSB1biB1c3VhcmlvIGxvIGhheWEgbW9kaWZpY2Fkby4gU2UgIgorImRlYmVyw61hbiBwcmVzZXJ2YXIgbW9kaWZpY2FjaW9uZXMgbG9jYWxlcyBlbiBjYXNvIGRlIGV4aXN0aXIuIFNpIHNlIGNhbmNlbGEgIgorImxhIGFjdHVhbGl6YWNpw7NuIGRlbCBwYXF1ZXRlLCBlbCBmaWNoZXJvIGRlIGNvbmZpZ3VyYWNpw7NuIMKrY29uZmZpbGXCuyAiCisiZGVjbGFyYWRvIGNvbW8gb2Jzb2xldG8gbm8gZGViZXLDrWEgZGVzYXBhcmVjZXIuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjUzCittc2dpZCAiIgorIkFsbCBvZiB0aGlzIGlzIGltcGxlbWVudGVkIGJ5IHB1dHRpbmcgdGhlIGZvbGxvd2luZyBzaGVsbCBzbmlwcGV0IGluIHRoZSAiCisiQjxwcmVpbnN0PiwgQjxwb3N0aW5zdD4gYW5kIEI8cG9zdHJtPiBtYWludGFpbmVyIHNjcmlwdHM6IgorbXNnc3RyICIiCisiRXN0byBzZSBwdWVkZSBpbnRlZ3JhciBpbnRyb2R1Y2llbmRvIGVsIHNpZ3VpZW50ZSB0ZXh0byBkZSBjb25zb2xhIGVuIGxvcyAiCisic2NyaXB0cyBkZSBtYW50ZW5lZG9yIEI8cHJlaW5zdD4sIEI8cG9zdGluc3Q+IHkgQjxwb3N0cm0+OiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMTo1NgorIywgbm8td3JhcAorbXNnaWQgIiIKKyIgICAgZHBrZy1tYWludHNjcmlwdC1oZWxwZXIgcm1fY29uZmZpbGUgXFxlXG4iCisiICAgICAgICBJPGNvbmZmaWxlPiBJPGxhc3R2ZXJzaW9uPiBJPHBhY2thZ2U+IC0tIFwiJEBcIlxuIgorbXNnc3RyICIiCisiICAgIGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyIHJtX2NvbmZmaWxlIFxcZVxuIgorIiAgICAgICAgSTxjb25mZmlsZT4gSTzDumx0aW1hLXZlcnNpw7NuPiBJPHBhcXVldGU+IC0tIFwiJEBcIlxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjY2Cittc2dpZCAiIgorIkk8Y29uZmZpbGU+IGlzIHRoZSBmaWxlbmFtZSBvZiB0aGUgY29uZmZpbGUgdG8gcmVtb3ZlLiAgSTxsYXN0dmVyc2lvbj4gaXMgIgorInRoZSBsYXN0IHZlcnNpb24gb2YgdGhlIHBhY2thZ2UgdGhhdCBjb250YWluZWQgdGhlIGNvbmZmaWxlIChvciB0aGUgbGFzdCAiCisidmVyc2lvbiBvZiB0aGUgcGFja2FnZSB0aGF0IGRpZCBub3QgdGFrZSBjYXJlIHRvIHJlbW92ZSB0aGUgb2Jzb2xldGUgIgorImNvbmZmaWxlIGlmIHRoaXMgd2FzIG5vdCBpbW1lZGlhdGVseSBpbXBsZW1lbnRlZCkuICBJZiBJPGxhc3R2ZXJzaW9uPiBpcyAiCisiZW1wdHkgb3Igb21pdHRlZCwgdGhlbiB0aGUgb3BlcmF0aW9uIGlzIHRyaWVkIG9uIGV2ZXJ5IHVwZ3JhZGUuIEk8cGFja2FnZT4gIgorImlzIHRoZSBwYWNrYWdlIG5hbWUsIGl0J3Mgb3B0aW9uYWwgYXMgaXQgd2lsbCBkZWZhdWx0IHRvICIKKyIkRFBLR19NQUlOVFNDUklQVF9QQUNLQUdFICh0aGlzIHZhcmlhYmxlIGlzIHNldCBieSBkcGtnIHRvIHRoZSBuYW1lIG9mIHRoZSAiCisicGFja2FnZSBhY3RlZCB1cG9uKS4gQWxsIHRoZSBwYXJhbWV0ZXJzIG9mIHRoZSBtYWludGFpbmVyIHNjcmlwdHMgaGF2ZSB0byBiZSAiCisiZm9yd2FyZGVkIHRvIHRoZSBwcm9ncmFtIGFmdGVyIFwiLS1cIi4iCittc2dzdHIgIiIKKyJJPGNvbmZmaWxlPiBlcyBlbCBub21icmUgZGVsIGZpY2hlcm8gZGUgY29uZmlndXJhY2nDs24gwqtjb25mZmlsZcK7IGEgZWxpbWluYXIuICIKKyJJPMO6bHRpbWEtdmVyc2nDs24+IGVzIGxhIMO6bHRpbWEgdmVyc2nDs24gZGVsIHBhcXVldGUgcXVlIGNvbnRlbsOtYSBlbCBmaWNoZXJvICIKKyJkZSBjb25maWd1cmFjacOzbiDCq2NvbmZmaWxlwrsgKG8gbGEgw7psdGltYSB2ZXJzacOzbiBkZWwgcGFxdWV0ZSBxdWUgbm8gc2Ugb2N1cMOzICIKKyJkZSBlbGltaW5hciBlbCBmaWNoZXJvIGRlIGNvbmZpZ3VyYWNpw7NuIMKrY29uZmZpbGXCuyBvYnNvbGV0byBlbiBlbCBjYXNvIGRlICIKKyJxdWUgZXN0ZSBtw6l0b2RvIG5vIHNlIGltcGxlbWVudMOzIGlubWVkaWF0YW1lbnRlKS4gU2kgSTzDumx0aW1hLXZlcnNpw7NuPiBlc3TDoSAiCisidmFjw61vIG8gc2Ugb21pdGUsIHNlIGludGVudGFyw6EgbGEgb3BlcmFjacOzbiBlbiBjYWRhIGFjdHVhbGl6YWNpw7NuLiAiCisiSTxwYXF1ZXRlPiBlcyBlbCBub21icmUgZGVsIHBhcXVldGUsIHN1IGFwYXJpY2nDs24gZXMgb3BjaW9uYWwgeWEgcXVlIGVsICIKKyJ2YWxvciBwb3Igb21pc2nDs24gZXMgwqskRFBLR19NQUlOVFNDUklQVF9QQUNLQUdFwrsgKGRwa2cgZGVmaW5lIGVzdGEgdmFyaWFibGUgIgorImNvbiBlbCBub21icmUgZGVsIHBhcXVldGUgc29icmUgZWwgcXVlIGFjdMO6YSkuIFRvZG9zIGxvcyBwYXLDoW1ldHJvcyBkZSBsb3MgIgorInNjcmlwdHMgZGUgbWFudGVuZWRvciBzZSBkZWJlbiBpbnRyb2R1Y2lyIGFsIHByb2dyYW1hIGRlc3B1w6lzIGRlIMKrLS3Cuy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6NzUKK21zZ2lkICIiCisiQ3VycmVudCBpbXBsZW1lbnRhdGlvbjogaW4gdGhlIEI8cHJlaW5zdD4sIGl0IGNoZWNrcyBpZiB0aGUgY29uZmZpbGUgd2FzICIKKyJtb2RpZmllZCBhbmQgcmVuYW1lcyBpdCBlaXRoZXIgdG8gSTxjb25mZmlsZT5CPC5kcGtnLXJlbW92ZT4gKGlmIG5vdCAiCisibW9kaWZpZWQpIG9yIHRvIEk8Y29uZmZpbGU+QjwuZHBrZy1iYWNrdXA+IChpZiBtb2RpZmllZCkuIEluIHRoZSAiCisiQjxwb3N0aW5zdD4sIHRoZSBsYXR0ZXIgZmlsZSBpcyByZW5hbWVkIHRvIEk8Y29uZmZpbGU+QjwuZHBrZy1iYWs+IGFuZCBrZXB0ICIKKyJmb3IgcmVmZXJlbmNlIGFzIGl0IGNvbnRhaW5zIHVzZXIgbW9kaWZpY2F0aW9ucyBidXQgdGhlIGZvcm1lciB3aWxsIGJlICIKKyJyZW1vdmVkLiBJZiB0aGUgcGFja2FnZSB1cGdyYWRlIGFib3J0cywgdGhlIEI8cG9zdHJtPiByZWluc3RhbGxzIHRoZSAiCisib3JpZ2luYWwgY29uZmZpbGUuIER1cmluZyBwdXJnZSwgdGhlIEI8cG9zdHJtPiB3aWxsIGFsc28gZGVsZXRlIHRoZSBCPC5kcGtnLSIKKyJiYWs+IGZpbGUga2VwdCB1cCB0byBub3cuIgorbXNnc3RyICIiCisiSW1wbGVtZW50YWNpw7NuIGFjdHVhbDogZW4gZWwgc2NyaXB0IEI8cHJlaW5zdD4sIGNvbXBydWViYSBzaSBzZSBoYSAiCisibW9kaWZpY2FkbyBlbCBmaWNoZXJvIGRlIGNvbmZpZ3VyYWNpw7NuIHkgbG8gcmVub21icmEgYmllbiBjb21vIEk8Y29uZmZpbGU+QjwuIgorImRwa2ctcmVtb3ZlPiAoc2kgbm8gc2UgaGEgbW9kaWZpY2FkbyksIG8gY29tbyBJPGNvbmZmaWxlPkI8LmRwa2ctYmFja3VwPiAoc2kgIgorInNlIGhhIG1vZGlmaWNhZG8pLiBFbiBlbCBzY3JpcHQgQjxwb3N0aW5zdD4sIGVsIHNlZ3VuZG8gZmljaGVybyBzZSByZW5vbWJyYSAiCisiYSBJPGNvbmZmaWxlPkI8LmRwa2ctYmFrPiB5IHNlIGd1YXJkYSBjb21vIHJlZmVyZW5jaWEgeWEgcXVlIGNvbnRpZW5lICIKKyJtb2RpZmljYWNpb25lcyBkZWwgdXN1YXJpbywgbWllbnRyYXMgcXVlIGVsIHByaW1lciBzY3JpcHQgc2UgZWxpbWluYS4gU2kgc2UgIgorImludGVycnVtcGUgbGEgYWN0dWFsaXphY2nDs24gZGVsIHBhcXVldGUsIGVsIHNjcmlwdCBCPHBvc3RybT4gcmVpbnN0YWxhcsOhIGVsICIKKyJmaWNoZXJvIGRlIGNvbmZpZ3VyYWNpw7NuIMKrY29uZmZpbGXCuyBvcmlnaW5hbC4gRHVyYW50ZSBlbCBwdXJnYWRvLCBlbCBzY3JpcHQgIgorIkI8cG9zdHJtPiBib3JyYXLDoSB0YW1iacOpbiBlbCBmaWNoZXJvIEI8LmRwa2ctYmFrPiBtYW50ZW5pZG8gaGFzdGEgYWhvcmEuIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMTo3NgorIywgbm8td3JhcAorbXNnaWQgIlJFTkFNSU5HIEEgQ09ORkZJTEUiCittc2dzdHIgIlJFTk9NQlJBUiBVTiBGSUNIRVJPIERFIENPTkZJR1VSQUNJw5NOIMKrQ09ORkZJTEXCuyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMTo4MworbXNnaWQgIiIKKyJJZiBhIGNvbmZmaWxlIGlzIG1vdmVkIGZyb20gb25lIGxvY2F0aW9uIHRvIGFub3RoZXIsIHlvdSBuZWVkIHRvIG1ha2Ugc3VyZSAiCisieW91IG1vdmUgYWNyb3NzIGFueSBjaGFuZ2VzIHRoZSB1c2VyIGhhcyBtYWRlLiBUaGlzIG1heSBzZWVtIGEgc2ltcGxlIGNoYW5nZSAiCisidG8gdGhlIEI8cHJlaW5zdD4gc2NyaXB0IGF0IGZpcnN0LCBob3dldmVyIHRoYXQgd2lsbCByZXN1bHQgaW4gdGhlIHVzZXIgIgorImJlaW5nIHByb21wdGVkIGJ5IGRwa2cgdG8gYXBwcm92ZSB0aGUgY29uZmZpbGUgZWRpdHMgZXZlbiB0aG91Z2ggdGhleSBhcmUgIgorIm5vdCByZXNwb25zaWJsZSBvZiB0aGVtLiIKK21zZ3N0ciAiIgorIlNpIHNlIGhhIGNhbWJpYWRvIGxhIHViaWNhY2nDs24gZGUgdW4gZmljaGVybyBkZSBjb25maWd1cmFjacOzbiDCq2NvbmZmaWxlwrsgIgorImRlYmUgYXNlZ3VyYXJzZSBkZSBxdWUgdGFtYmnDqW4gbWlncmEgbG9zIGNhbWJpb3MgaGVjaG9zIHBvciBlbCB1c3VhcmlvLiBFc3RvICIKKyJwdWVkZSBwYXJlY2VyIGVuIHByaW5jaXBpbyBjb21vIHVuIHNlbmNpbGxvIGNhbWJpbyBlbiBlbCBzY3JpcHQgQjxwcmVpbnN0PiwgIgorImF1bnF1ZSByZXN1bHRhcsOhIGVuIHVuIGRpw6Fsb2dvIGRlIGRwa2cgcGFyYSBjb25maXJtYXIgbGEgZWRpY2nDs24gZGVsIGZpY2hlcm8gIgorIsKrY29uZmZpbGXCuyBpbmNsdXNvIHNpIG5vIHNvbiByZXNwb25zYWJsZXMgZGUgZWxsb3MuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjg3Cittc2dpZCAiIgorIkdyYWNlZnVsIHJlbmFtaW5nIGNhbiBiZSBpbXBsZW1lbnRlZCBieSBwdXR0aW5nIHRoZSBmb2xsb3dpbmcgc2hlbGwgc25pcHBldCAiCisiaW4gdGhlIEI8cHJlaW5zdD4sIEI8cG9zdGluc3Q+IGFuZCBCPHBvc3RybT4gbWFpbnRhaW5lciBzY3JpcHRzOiIKK21zZ3N0ciAiIgorIlB1ZWRlIGludGVncmFyIHJlbm9tYnJhciBjb24gc2VuY2lsbGV6IGluc2VydGFuZG8gZWwgc2lndWllbnRlIHRleHRvIGRlICIKKyJjb25zb2xhIGVuIGxvcyBzY3JpcHRzIGRlIG1hbnRlbmVkb3IgQjxwcmVpbnN0PiwgQjxwb3N0aW5zdD4geSBCPHBvc3RybT4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjkwCisjLCBuby13cmFwCittc2dpZCAiIgorIiAgICBkcGtnLW1haW50c2NyaXB0LWhlbHBlciBtdl9jb25mZmlsZSBcXGVcbiIKKyIgICAgICAgIEk8b2xkY29uZmZpbGU+IEk8bmV3Y29uZmZpbGU+IEk8bGFzdHZlcnNpb24+IEk8cGFja2FnZT4gLS0gXCIkQFwiXG4iCittc2dzdHIgIiIKKyIgICAgZHBrZy1tYWludHNjcmlwdC1oZWxwZXIgbXZfY29uZmZpbGUgXFxlXG4iCisiICAgICAgICBJPGNvbmZmaWxlLWFudGlndW8+IEk8Y29uZmZpbGUtbnVldm8+IEk8w7psdGltYS12ZXJzacOzbj5cbiIKKyIgICAgICAgIEk8cGFxdWV0ZT4gLS0gXCIkQFwiXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MTAwCittc2dpZCAiIgorIkk8b2xkY29uZmZpbGU+IGFuZCBJPG5ld2NvbmZmaWxlPiBhcmUgdGhlIG9sZCBhbmQgbmV3IG5hbWUgb2YgdGhlIGNvbmZmaWxlICIKKyJ0byByZW5hbWUuIEk8bGFzdHZlcnNpb24+IGlzIHRoZSBsYXN0IHZlcnNpb24gb2YgdGhlIHBhY2thZ2UgdGhhdCBjb250YWluZWQgIgorInRoZSBjb25mZmlsZSB3aXRoIHRoZSBvbGQgbmFtZS4gSWYgSTxsYXN0dmVyc2lvbj4gaXMgZW1wdHkgb3Igb21pdHRlZCwgdGhlbiAiCisidGhlIG9wZXJhdGlvbiBpcyB0cmllZCBvbiBldmVyeSB1cGdyYWRlIChub3RlOiBpdCdzIHNhZmVyIHRvIGdpdmUgdGhlICIKKyJ2ZXJzaW9uIGFuZCBoYXZlIHRoZSBvcGVyYXRpb24gdHJpZWQgb25seSBvbmNlKS4gSTxwYWNrYWdlPiBpcyB0aGUgcGFja2FnZSAiCisibmFtZSwgaXQncyBvcHRpb25hbCBhcyBpdCB3aWxsIGRlZmF1bHQgdG8gJERQS0dfTUFJTlRTQ1JJUFRfUEFDS0FHRSAodGhpcyAiCisidmFyaWFibGUgaXMgc2V0IGJ5IGRwa2cgdG8gdGhlIG5hbWUgb2YgdGhlIHBhY2thZ2UgYWN0ZWQgdXBvbikuIEFsbCB0aGUgIgorInBhcmFtZXRlcnMgb2YgdGhlIG1haW50YWluZXIgc2NyaXB0cyBoYXZlIHRvIGJlIGZvcndhcmRlZCB0byB0aGUgcHJvZ3JhbSAiCisiYWZ0ZXIgXCItLVwiLiIKK21zZ3N0ciAiIgorIkk8Y29uZmZpbGUtYW50aWd1bz4geSBJPGNvbmZmaWxlLW51ZXZvPiBzb24gZWwgbm9tYnJlIGFudGlndW8geSBudWV2byBkZWwgIgorImZpY2hlcm8gZGUgY29uZmlndXJhY2nDs24gwqtjb25mZmlsZcK7IGEgcmVub21icmFyLiBJPMO6bHRpbWEtdmVyc2nDs24+IGVzIGxhICIKKyLDumx0aW1hIHZlcnNpw7NuIGRlbCBwYXF1ZXRlIHF1ZSBjb250ZW7DrWEgZWwgZmljaGVybyBkZSBjb25maWd1cmFjacOzbiAiCisiwqtjb25mZmlsZcK7IGNvbiBlbCBub21icmUgYW50aWd1by4gU2kgSTx1bHRpbWEtdmVyc2nDs24+IGVzdMOhIHZhY8OtbyBvIHNlICIKKyJvbWl0ZSwgc2UgZWplY3V0YXLDoSBsYSBvcGVyYWNpw7NuIGVuIGNhZGEgYWN0dWFsaXphY2nDs24gKG5vdGE6IGVzIG3DoXMgc2VndXJvICIKKyJkYXIgbGEgdmVyc2nDs24geSBlamVjdXRhciBsYSBvcGVyYWNpw7NuIHVuYSBzb2xhIHZleikuIEk8cGFxdWV0ZT4gZXMgZWwgIgorIm5vbWJyZSBkZWwgcGFxdWV0ZSwgb3BjaW9uYWwgeWEgcXVlIHN1IHZhbG9yIHBvciBvbWlzacOzbiBlcyAiCisiwqskRFBLR19NQUlOVFNDUklQVF9QQUNLQUdFwrsgKGRwa2cgZGVmaW5lIGVzdGEgdmFyaWFibGUgY29uIGVsIG5vbWJyZSBkZWwgIgorInBhcXVldGUgc29icmUgZWwgcXVlIGFjdMO6YSkuIFRvZG9zIGxvcyBwYXLDoW1ldHJvcyBkZSBzY3JpcHRzIGRlIG1hbnRlbmVkb3IgIgorInNlIGRlYmVuIGludHJvZHVjaXIgZGVzcHXDqXMgZGUgwqstLcK7LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxMDgKK21zZ2lkICIiCisiQ3VycmVudCBpbXBsZW1lbnRhdGlvbjogdGhlIEI8cHJlaW5zdD4gY2hlY2tzIGlmIHRoZSBjb25mZmlsZSBoYXMgYmVlbiAiCisibW9kaWZpZWQsIGlmIHllcyBpdCdzIGxlZnQgb24gcGxhY2Ugb3RoZXJ3aXNlIGl0J3MgcmVuYW1lZCB0byAiCisiSTxvbGRjb25mZmlsZT5CPC5kcGtnLXJlbW92ZT4uIE9uIGNvbmZpZ3VyYXRpb24sIHRoZSBCPHBvc3RpbnN0PiByZW1vdmVzICIKKyJJPG9sZGNvbmZmaWxlPkI8LmRwa2ctcmVtb3ZlPiBhbmQgcmVuYW1lcyBJPG9sZGNvbmZmaWxlPiB0byBJPG5ld2NvbmZmaWxlPiAiCisiaWYgSTxvbGRjb25mZmlsZT4gaXMgc3RpbGwgYXZhaWxhYmxlLiBPbiBhYm9ydC11cGdyYWRlL2Fib3J0LWluc3RhbGwsIHRoZSAiCisiQjxwb3N0cm0+IHJlbmFtZXMgSTxvbGRjb25mZmlsZT5CPC5kcGtnLXJlbW92ZT4gYmFjayB0byBJPG9sZGNvbmZmaWxlPiBpZiAiCisicmVxdWlyZWQuIgorbXNnc3RyICIiCisiSW1wbGVtZW50YWNpw7NuIGFjdHVhbDogZWwgc2NyaXB0IEI8cHJlaW5zdD4gY29tcHJ1ZWJhIHNpIHNlIGhhIG1vZGlmaWNhZG8gZWwgIgorImZpY2hlcm8gZGUgY29uZmlndXJhY2nDs24gwqtjb25mZmlsZcK7LCBwcmVzZXJ2w6FuZG9sbyBlbiBzdSBsdWdhciBzaSBlcyBhc8OtLCBvICIKKyJyZW5vbWJyw6FuZG9sbyBjb21vIEk8Y29uZmZpbGUtYW50aWd1bz5CPC5kcGtnLXJlbW92ZT4gZW4gY2FzbyBjb250cmFyaW8uICIKKyJEdXJhbnRlIGxhIGNvbmZpZ3VyYWNpw7NuLCBlbCBzY3JpcHQgQjxwb3N0aW5zdD4gZWxpbWluYSBJPGNvbmZmaWxlLSIKKyJhbnRpZ3VvPkI8LmRwa2ctcmVtb3ZlPiB5IHJlbm9tYnJhIEk8Y29uZmZpbGUtYW50aWd1bz4gY29tbyBJPGNvbmZmaWxlLSIKKyJudWV2bz4gc2kgZWwgcHJpbWVybyBhw7puIGVzdMOhIGRpc3BvbmlibGUuIER1cmFudGUgbGEgY2FuY2VsYWNpw7NuIGRlIHVuYSAiCisiaW5zdGFsYWNpw7NuIG8gYWN0dWFsaXphY2nDs24gZWwgc2NyaXB0IEk8cG9zdHJtPiByZW5vbWJyYSBJPGNvbmZmaWxlLSIKKyJhbnRpZ3VvPkI8LmRwa2ctcmVtb3ZlPiBudWV2YW1lbnRlIGNvbW8gSTxjb25mZmlsZS1hbnRpZ3VvPiBkZSBzZXIgbmVjZXNhcmlvLiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MTA5CisjLCBuby13cmFwCittc2dpZCAiSU5URUdSQVRJT04gSU4gUEFDS0FHRVMiCittc2dzdHIgIklOVEVHUkFDScOTTiBFTiBQQVFVRVRFUyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxMTYKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIkdpdmVuIHRoYXQgQjxkcGtnLW1haW50c2NyaXB0LWhlbHBlcj4gaXMgdXNlZCBpbiB0aGUgQjxwcmVpbnN0PiwgdXNpbmcgaXQgIgorI3wgInVuY29uZGl0aW9uYWxseSByZXF1aXJlcyBhIHByZS1kZXBlbmRlbmN5IHRvIGVuc3VyZSB0aGF0IHRoZSByZXF1aXJlZCAiCisjfCAidmVyc2lvbiBvZiBkcGtnIGhhcyBiZWVuIGNvbmZpZ3VyZWQgYmVmb3JlLiBUaGUgcmVxdWlyZWQgdmVyc2lvbiBkZXBlbmRzICIKKyN8ICJvbiB0aGUgY29tbWFuZCB1c2VkLCBmb3IgQjxybV9jb25mZmlsZT4gYW5kIEI8bXZfY29uZmZpbGU+IGl0IGlzIDEuMTUuNy4yOiIKK21zZ2lkICIiCisiR2l2ZW4gdGhhdCBCPGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyPiBpcyB1c2VkIGluIHRoZSBCPHByZWluc3Q+LCB1c2luZyBpdCAiCisidW5jb25kaXRpb25hbGx5IHJlcXVpcmVzIGEgcHJlLWRlcGVuZGVuY3kgdG8gZW5zdXJlIHRoYXQgdGhlIHJlcXVpcmVkICIKKyJ2ZXJzaW9uIG9mIGRwa2cgaGFzIGJlZW4gdW5wYWNrZWQgYmVmb3JlLiBUaGUgcmVxdWlyZWQgdmVyc2lvbiBkZXBlbmRzIG9uICIKKyJ0aGUgY29tbWFuZCB1c2VkLCBmb3IgQjxybV9jb25mZmlsZT4gYW5kIEI8bXZfY29uZmZpbGU+IGl0IGlzIDEuMTUuNy4yOiIKK21zZ3N0ciAiIgorIkRlYmlkbyBhIHF1ZSBCPGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyPiBzZSB1c2EgZW4gZWwgc2NyaXB0IEI8cHJlaW5zdD4sICIKKyJ1c2FybG8gaW5jb25kaWNpb25hbG1lbnRlIHByZWNpc2EgdW5hIHByZS1kZXBlbmRlbmNpYSBwYXJhIGFzZWd1cmFyIHF1ZSBsYSAiCisidmVyc2nDs24gcmVxdWVyaWRhIGRlIGRwa2cgc2UgaGEgY29uZmlndXJhZG8gZW4gZWwgcGFzYWRvLiBMYSB2ZXJzacOzbiAiCisicmVxdWVyaWRhIGRlcGVuZGUgZGUgbGEgb3JkZW4gdXNhZGEsIDEuMTUuNy4yIHBhcmEgQjxybV9jb25mZmlsZT4geSAiCisiQjxtdl9jb25mZmlsZT4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjExOAorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICIgICAgUHJlLURlcGVuZHM6IGRwa2cgKEU8Z3Q+PSAxLjE1LjcuMilcbiIKK21zZ2lkICIgICAgQjxQcmUtRGVwZW5kczo+IGRwa2cgKEU8Z3Q+PSAxLjE1LjcuMilcbiIKK21zZ3N0ciAiICAgIFByZS1EZXBlbmRzOiBkcGtnIChFPGd0Pj0gMS4xNS43LjIpXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MTIzCittc2dpZCAiIgorIkJ1dCBpbiBtYW55IGNhc2VzIHRoZSBvcGVyYXRpb24gZG9uZSBieSB0aGUgcHJvZ3JhbSBpcyBub3QgY3JpdGljYWwgZm9yIHRoZSAiCisicGFja2FnZSwgYW5kIGluc3RlYWQgb2YgdXNpbmcgYSBwcmUtZGVwZW5kZW5jeSB3ZSBjYW4gY2FsbCB0aGUgcHJvZ3JhbSBvbmx5ICIKKyJpZiB3ZSBrbm93IHRoYXQgdGhlIHJlcXVpcmVkIGNvbW1hbmQgaXMgc3VwcG9ydGVkIGJ5IHRoZSBjdXJyZW50bHkgaW5zdGFsbGVkICIKKyJkcGtnOiIKK21zZ3N0ciAiIgorIkHDum4gYXPDrSwgZW4gbXVjaG9zIGNhc29zIGxhIG9wZXJhY2nDs24gZWZlY3R1YWRhIHBvciBlbCBwcm9ncmFtYSBubyBlcyAiCisiY3LDrXRpY2EgcGFyYSBlbCBwYXF1ZXRlLCB5IGVuIGx1Z2FyIGRlIHVzYXIgdW4gcHJlLWRlcGVuZGVuY2lhIHB1ZWRlIGludm9jYXIgIgorImVsIHByb2dyYW1hIHPDs2xvIHNpIHNhYmVtb3MgcXVlIGxhIG9yZGVuIHJlcXVlcmlkYSBlcyBjb21wYXRpYmxlIGNvbiBsYSAiCisidmVyc2nDs24gZGUgZHBrZyBhY3R1YWxtZW50ZSBpbnN0YWxhZGE6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjEyNworIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICIiCisjfCAiICAgIGlmIGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyIHN1cHBvcnRzIEU8bHQ+Y29tbWFuZEU8Z3Q+OyB0aGVuXG4iCisjfCAiICAgICAgICBkcGtnLW1haW50c2NyaXB0LWhlbHBlciBFPGx0PmNvbW1hbmRFPGd0PiAuLi5cbiIKKyN8ICIgICAgZmlcbiIKK21zZ2lkICIiCisiICAgIGlmIGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyIHN1cHBvcnRzIEk8Y29tbWFuZD47IHRoZW5cbiIKKyIgICAgICAgIGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyIEk8Y29tbWFuZD4gLi4uXG4iCisiICAgIGZpXG4iCittc2dzdHIgIiIKKyIgICAgaWYgZHBrZy1tYWludHNjcmlwdC1oZWxwZXIgc3VwcG9ydHMgRTxsdD5jb21tYW5kRTxndD47IHRoZW5cbiIKKyIgICAgICAgIGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyIEU8bHQ+Y29tbWFuZEU8Z3Q+IC4uLlxuIgorIiAgICBmaVxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjEzMAorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDEwIFJhcGhhXFxbOmVdbCBIZXJ0em9nIgorbXNnc3RyICJDb3B5cmlnaHQgXFwoY28gMjAxMCBSYXBoYVxcWzplXWwgSGVydHpvZyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxMzIKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAwOCBKb2V5IEhlc3MiCittc2dzdHIgIkNvcHlyaWdodCBcXChjbyAyMDA4IEpvZXkgSGVzcyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxMzQKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAwNyBHdWlsbGVtIEpvdmVyIgorbXNnc3RyICJDb3B5cmlnaHQgXFwoY28gMjAwNyBHdWlsbGVtIEpvdmVyIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjEzNgorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDA1IFNjb3R0IEphbWVzIFJlbW5hbnQiCittc2dzdHIgIkNvcHlyaWdodCBcXChjbyAyMDA1IFNjb3R0IEphbWVzIFJlbW5hbnQiCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLW1lcmdlY2hhbmdlbG9ncyIKK21zZ3N0ciAiZHBrZy1tZXJnZWNoYW5nZWxvZ3MiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6NAorbXNnaWQgImRwa2ctbWVyZ2VjaGFuZ2Vsb2dzIC0gMy13YXkgbWVyZ2Ugb2YgZGViaWFuL2NoYW5nZWxvZyBmaWxlcyIKK21zZ3N0ciAiIgorImRwa2ctbWVyZ2VjaGFuZ2Vsb2dzIC0gRnVzacOzbiBhIHBhcnRpciBkZSB0cmVzIHZlcnNpb25lcyAowqszLXdheSBtZXJnZcK7KSBkZSAiCisiZmljaGVyb3MgwqtkZWJpYW4vY2hhbmdlbG9nwrsiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6OAorbXNnaWQgIiIKKyJCPGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzPiBbSTxvcHRpb24+Li4uXSBJPG9sZD4gSTxuZXctYT4gSTxuZXctYj4gW0k8b3V0Pl0iCittc2dzdHIgIiIKKyJCPGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzPiBbSTxvcGNpw7NuPi4uLl0gSTxhbnRpZ3VvPiBJPG51ZXZvLWE+IEk8bnVldm8tYj4gIgorIltJPHNhbGlkYT5dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjE1Cittc2dpZCAiIgorIlRoaXMgcHJvZ3JhbSB3aWxsIHVzZSB0aGUgMyBwcm92aWRlZCB2ZXJzaW9ucyBvZiB0aGUgRGViaWFuIGNoYW5nZWxvZyB0byAiCisiZ2VuZXJhdGUgYSBtZXJnZWQgY2hhbmdlbG9nIGZpbGUuIFRoZSByZXN1bHRpbmcgY2hhbmdlbG9nIGlzIHN0b3JlZCBpbiB0aGUgIgorImZpbGUgSTxvdXQ+IG9yIG91dHB1dCB0byB0aGUgc3RhbmRhcmQgb3V0cHV0IGlmIHRoYXQgcGFyYW1ldGVyIGlzIG5vdCBnaXZlbi4iCittc2dzdHIgIiIKKyJFc3RlIHByb2dyYW1hIHVzYSBsYXMgdHJlcyB2ZXJzaW9uZXMgcHJvcG9yY2lvbmFkYXMgZGVsIHJlZ2lzdHJvIGRlIGNhbWJpb3MgIgorImRlIERlYmlhbiBwYXJhIGdlbmVyYXIgdW4gZmljaGVybyBkZSByZWdpc3RybyBkZSBjYW1iaW9zICjCq2NoYW5nZWxvZ8K7KSAiCisiZnVzaW9uYWRvLiBFbCByZWdpc3RybyBkZSBjYW1iaW9zIHJlc3VsdGFudGUgc2UgZ3VhcmRhIGVuIGVsIGZpY2hlcm8gIgorIkk8c2FsaWRhPiwgbyBzZSBtb3N0cmFyw6EgcG9yIGxhIHNhbGlkYSBlc3TDoW5kYXIgZW4gY2FzbyBkZSBubyBpbnRyb2R1Y2lyIHRhbCAiCisicGFyw6FtZXRyby4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6MjYKK21zZ2lkICIiCisiRWFjaCBlbnRyeSBpcyBpZGVudGlmaWVkIGJ5IGl0cyB2ZXJzaW9uIG51bWJlciBhbmQgdGhleSBhcmUgYXNzdW1lZCB0byBiZSAiCisibm90IGNvbmZsaWN0aW5nLCB0aGV5IGFyZSBzaW1wbHkgbWVyZ2VkIGluIHRoZSByaWdodCBvcmRlciAoYnkgZGVjcmVhc2luZyAiCisidmVyc2lvbiBudW1iZXIpLiBXaGVuIEI8LS1tZXJnZS1wcmVyZWxlYXNlcz4gaXMgdXNlZCwgdGhlIHBhcnQgb2YgdGhlICIKKyJ2ZXJzaW9uIG51bWJlciBhZnRlciB0aGUgbGFzdCB0aWxkZSBpcyBkcm9wcGVkIHNvIHRoYXQgMS4wLTF+ZXhwMSBhbmQgIgorIjEuMC0xfmV4cDUgYXJlIGNvbnNpZGVyZWQgdG8gYmUgdGhlIHNhbWUgZW50cnkuIFdoZW4gdGhlIHNhbWUgdmVyc2lvbiBpcyAiCisiYXZhaWxhYmxlIGluIGJvdGggSTxuZXctYT4gYW5kIEk8bmV3LWI+LCBhIHN0YW5kYXJkIGxpbmUtYmFzZWQgMy13YXkgbWVyZ2UgIgorImlzIGF0dGVtcHRlZCAocHJvdmlkZWQgdGhhdCB0aGUgbW9kdWxlIEFsZ29yaXRobTo6TWVyZ2UgaXMgYXZhaWxhYmxlIFxcW2VtXSAiCisiaXQncyBwYXJ0IG9mIHRoZSBwYWNrYWdlIGxpYmFsZ29yaXRobS1tZXJnZS1wZXJsIFxcW2VtXSBvdGhlcndpc2UgeW91IGdldCBhICIKKyJnbG9iYWwgY29uZmxpY3Qgb24gdGhlIGNvbnRlbnQgb2YgdGhlIGVudHJ5KS4iCittc2dzdHIgIiIKKyJDYWRhIGVudHJhZGEgc2UgaWRlbnRpZmljYSBwb3Igc3UgbsO6bWVybyBkZSB2ZXJzacOzbiB5LCBhc3VtaWVuZG8gcXVlIG5vICIKKyJlbnRyYW4gZW4gY29uZmxpY3RvLCBzZSBmdXNpb25hcsOhbiBlbiBlbCBvcmRlbiBjb3JyZWN0byAocG9yIG9yZGVuICIKKyJkZWNyZWNpZW50ZSBkZWwgbsO6bWVybyBkZSB2ZXJzacOzbikuIEN1YW5kbyBzZSB1c2EgQjwtLW1lcmdlLXByZXJlbGVhc2VzPiwgc2UgIgorIm9taXRpcsOhIGVsIG7Dum1lcm8gZGUgdmVyc2nDs24gdHJhcyBsYSDDumx0aW1hIHRpbGRlLCBkZSBmb3JtYSBxdWUgwqsxLjAtMX5leHAxwrsgIgorInkgwqsxLjAtMX5leHA1wrsgc2UgdG9tYXLDoW4gY29tbyBsYSBtaXNtYSBlbnRyYWRhLiBDdWFuZG8gbGEgbWlzbWEgdmVyc2nDs24gIgorImVzdMOhIGRpc3BvbmlibGUgZW4gSTxudWV2by1hPiB5IEk8bnVldm8tYj4sIHNlIGludGVudGFyw6EgdW5hIGZ1c2nDs24gZXN0w6FuZGFyICIKKyJkZSBsYXMgbMOtbmVhcyBkZSBsYXMgdHJlcyB2ZXJzaW9uZXMgKHPDs2xvIHNpIGVzdGEgZGlzcG9uaWJsZSBlbCBtw7NkdWxvICIKKyLCq0FsZ29yaXRobTo6TWVyZ2XCuyBcXFtlbV0gcGFydGUgZGVsIHBhcXVldGUgwqtsaWJhbGdvcml0aG0tbWVyZ2UtcGVybMK7ICIKKyJcXFtlbV0sIGRlIG5vIHNlciBhc8OtLCBvYnRlbmRyw6EgdW4gY29uZmxpY3RvIGdsb2JhbCBlbiBlbCBjb250ZW5pZG8gZGUgbGEgIgorImVudHJhZGEpLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6MjgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tbWVyZ2UtcHJlcmVsZWFzZXM+LCBCPC1tPiIKK21zZ3N0ciAiQjwtLW1lcmdlLXByZXJlbGVhc2VzPiwgQjwtbT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6MzMKK21zZ2lkICIiCisiRHJvcCB0aGUgcGFydCBhZnRlciB0aGUgbGFzdCB0aWxkZSBpbiB0aGUgdmVyc2lvbiBudW1iZXIgd2hlbiBkb2luZyB2ZXJzaW9uICIKKyJjb21wYXJpc29uIHRvIGlkZW50aWZ5IGlmIHR3byBlbnRyaWVzIGFyZSBzdXBwb3NlZCB0byBiZSB0aGUgc2FtZSBvciBub3QuIgorbXNnc3RyICIiCisiRWxpbWluYSBsYSBwYXJ0ZSB0cmFzIGxhIMO6bHRpbWEgdmlyZ3VsaWxsYSBlbiBlbCBuw7ptZXJvIGRlIHZlcnNpw7NuIGFsICIKKyJyZWFsaXphciB1bmEgY29tcGFyYWNpw7NuIHBhcmEgaWRlbnRpZmljYXIgc2kgZG9zIGVudHJhZGFzIHNvbiBsYSBtaXNtYSBvIG5vLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTozOAorbXNnaWQgIiIKKyJUaGlzIGlzIHVzZWZ1bCB3aGVuIHlvdSBrZWVwIHVzaW5nIHRoZSBzYW1lIGNoYW5nZWxvZyBlbnRyeSBidXQgeW91IGluY3JlYXNlICIKKyJpdHMgdmVyc2lvbiBudW1iZXIgcmVndWxhcmx5LiBGb3IgaW5zdGFuY2UsIHlvdSBtaWdodCBoYXZlIDIuMy0xfmV4cDEsICIKKyIyLjMtMX5leHAyLCAuLi4gdW50aWwgdGhlIG9mZmljaWFsIHJlbGVhc2UgMi4zLTEgYW5kIHRoZXkgYXJlIGFsbCB0aGUgc2FtZSAiCisiY2hhbmdlbG9nIGVudHJ5IHRoYXQgaGFzIGV2b2x2ZWQgb3ZlciB0aW1lLiIKK21zZ3N0ciAiIgorIkVzIMO6dGlsIGN1YW5kbyBzaWVtcHJlIHNlIHVzYSBsYSBtaXNtYSBlbnRyYWRhIGVuIGVsIHJlZ2lzdHJvIGRlIGNhbWJpb3MsICIKKyJwZXJvIGF1bWVudGEgZWwgbsO6bWVybyBkZSB2ZXJzacOzbiByZWd1bGFybWVudGUuIFBvciBlamVtcGxvLCBwdWVkZSB0ZW5lciAiCisiwqsyLjMtMX5leHAxwrssIMKrMi4zLTF+ZXhwMsK7Li4uIGhhc3RhIGxhIHB1YmxpY2FjacOzbiBvZmljaWFsIMKrMi4zLTHCuywgdGVuaWVuZG8gIgorInRvZGFzIGxhIG1pc21hIGVudHJhZGEgZW4gZWwgcmVnaXN0cm8gZGUgY2FtYmlvcywgcGVybyBxdWUgaGEgZXZvbHVjaW9uYWRvICIKKyJjb24gZWwgdGllbXBvLiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6NDUKKyMsIG5vLXdyYXAKK21zZ2lkICJMSU1JVEFUSU9OUyIKK21zZ3N0ciAiTElNSVRBQ0lPTkVTIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjUwCittc2dpZCAiIgorIkFueXRoaW5nIHRoYXQgaXMgbm90IHBhcnNlZCBieSBEcGtnOjpDaGFuZ2Vsb2cgaXMgbG9zdCBkdXJpbmcgdGhlIG1lcmdlLiAgIgorIlRoaXMgbWlnaHQgaW5jbHVkZSBzdHVmZiBsaWtlIHZpbSBtb2RlbGluZXMsIGNvbW1lbnRzIHdoaWNoIHdlcmUgbm90ICIKKyJzdXBwb3NlZCB0byBiZSB0aGVyZSwgZXRjLiIKK21zZ3N0ciAiIgorIlNlIHBlcmRlcsOhIGR1cmFudGUgbGEgZnVzacOzbiB0b2RvIGxvIHF1ZSDCq0Rwa2c6OkNoYW5nZWxvZ8K7IG5vIGFuYWxpY2UuIEVzdG8gIgorInB1ZWRlIGluY2x1aXIgY29zYXMgY29tbyDCq21vZGVsaW5lc8K7IGRlIHZpbSwgY29tZW50YXJpb3MgZG9uZGUgbm8gZGViZXLDrWFuICIKKyJlc3RhciwgZXRjLiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6NTEKKyMsIG5vLXdyYXAKK21zZ2lkICJJTlRFR1JBVElPTiBXSVRIIEdJVCIKK21zZ3N0ciAiSU5URUdSQUNJw5NOIENPTiBHSVQiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6NTYKK21zZ2lkICIiCisiSWYgeW91IHdhbnQgdG8gdXNlIHRoaXMgcHJvZ3JhbSB0byBtZXJnZSBEZWJpYW4gY2hhbmdlbG9nIGZpbGVzIGluIGEgZ2l0ICIKKyJyZXBvc2l0b3J5LCB5b3UgaGF2ZSBmaXJzdCB0byByZWdpc3RlciBhIG5ldyBtZXJnZSBkcml2ZXIgaW4gQjwuZ2l0L2NvbmZpZz4gIgorIm9yIEI8fi8uZ2l0Y29uZmlnPjoiCittc2dzdHIgIiIKKyJTaSBkZXNlYSB1c2FyIGVzdGUgcHJvZ3JhbWEgcGFyYSBmdXNpb25hciBmaWNoZXJvcyBkZSByZWdpc3RybyBkZSBjYW1iaW9zIGRlICIKKyJEZWJpYW4gZW4gdW4gcmVwb3NpdG9yaW8gZ2l0IHByaW1lcm8gdGVuZHLDoSBxdWUgcmVnaXN0cmFyIHVuIG51ZXZvIMKrbWVyZ2UgIgorImRyaXZlcsK7IGVuIEI8LmdpdC9jb25maWc+IG8gQjx+Ly5naXRjb25maWc+OiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTo2MAorIywgbm8td3JhcAorbXNnaWQgIiIKKyIgW21lcmdlIFwiZHBrZy1tZXJnZWNoYW5nZWxvZ3NcIl1cbiIKKyIgICAgIG5hbWUgPSBkZWJpYW4vY2hhbmdlbG9nIG1lcmdlIGRyaXZlclxuIgorIiAgICAgZHJpdmVyID0gZHBrZy1tZXJnZWNoYW5nZWxvZ3MgLW0gJU8gJUEgJUIgJUFcbiIKK21zZ3N0ciAiIgorIiBbbWVyZ2UgXCJkcGtnLW1lcmdlY2hhbmdlbG9nc1wiXVxuIgorIiAgICAgbmFtZSA9IGRlYmlhbi9jaGFuZ2Vsb2cgbWVyZ2UgZHJpdmVyXG4iCisiICAgICBkcml2ZXIgPSBkcGtnLW1lcmdlY2hhbmdlbG9ncyAtbSAlTyAlQSAlQiAlQVxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjY0Cittc2dpZCAiIgorIlRoZW4geW91IGhhdmUgdG8gc2V0dXAgdGhlIG1lcmdlIGF0dHJpYnV0ZSBmb3IgdGhlIGRlYmlhbi9jaGFuZ2Vsb2cgZmlsZSAiCisiZWl0aGVyIGluIEI8LmdpdGF0dHJpYnV0ZXM+IGluIHRoZSByZXBvc2l0b3J5IGl0c2VsZiwgb3IgaW4gQjwuZ2l0L2luZm8vIgorImF0dHJpYnV0ZXM+OiIKK21zZ3N0ciAiIgorIkRlc3B1w6lzIHRlbmRyw6EgcXVlIGRlZmluaXIgZWwgwqttZXJnZSBhdHRyaWJ1dGXCuyBwYXJhIGVsIGZpY2hlcm8gwqtkZWJpYW4vIgorImNoYW5nZWxvZ8K7IGJpZW4gZW4gQjwuZ2l0YXR0cmlidXRlcz4gZW4gZWwgbWlzbW8gcmVwb3NpdG9yaW8sIG8gZW4gQjwuZ2l0LyIKKyJpbmZvL2F0dHJpYnV0ZXM+OiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTo2NgorIywgbm8td3JhcAorbXNnaWQgIiBkZWJpYW4vY2hhbmdlbG9nIG1lcmdlPWRwa2ctbWVyZ2VjaGFuZ2Vsb2dzXG4iCittc2dzdHIgIiBkZWJpYW4vY2hhbmdlbG9nIG1lcmdlPWRwa2ctbWVyZ2VjaGFuZ2Vsb2dzXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6NjgKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAwOS0yMDEwIFJhcGhhXFxbOmVdbCBIZXJ0em9nIgorbXNnc3RyICJDb3B5cmlnaHQgXFwoY28gMjAwOS0yMDEwIFJhcGhhXFxbOmVdbCBIZXJ0em9nIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1uYW1lLjE6NgorIywgbm8td3JhcAorbXNnaWQgImRwa2ctbmFtZSIKK21zZ3N0ciAiZHBrZy1uYW1lIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW5hbWUuMTo5Cittc2dpZCAiZHBrZy1uYW1lIC0gcmVuYW1lIERlYmlhbiBwYWNrYWdlcyB0byBmdWxsIHBhY2thZ2UgbmFtZXMiCittc2dzdHIgImRwa2ctbmFtZSAtIFJlbm9tYnJhIHBhcXVldGVzIGRlIERlYmlhbiBhIG5vbWJyZXMgY29tcGxldG9zIGRlIHBhcXVldGUiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbmFtZS4xOjE1CisjLCBmdXp6eQorI3wgbXNnaWQgIkI8ZHBrZy1uYW1lPiBbSTxvcHRpb25zPl0gW0I8LS0+XSBJPGZpbGVzPiIKK21zZ2lkICJCPGRwa2ctbmFtZT4gW0k8b3B0aW9uPi4uLl0gW0I8LS0+XSBJPGZpbGU+Li4uIgorbXNnc3RyICJCPGRwa2ctbmFtZT4gW0k8b3BjaW9uZXM+XSBbQjwtLT5dIEk8ZmljaGVyb3M+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW5hbWUuMToyOQorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiVGhpcyBtYW51YWwgcGFnZSBkb2N1bWVudHMgdGhlIEI8ZHBrZy1uYW1lPiBwcm9ncmFtIHdoaWNoIHByb3ZpZGVzIGFuICIKKyN8ICJlYXN5IHdheSB0byByZW5hbWUgQjxEZWJpYW4+IHBhY2thZ2VzIGludG8gdGhlaXIgZnVsbCBwYWNrYWdlIG5hbWVzLiBBICIKKyN8ICJmdWxsIHBhY2thZ2UgbmFtZSBjb25zaXN0cyBvZiAiCisjfCAiSTxFPGx0PnBhY2thZ2VFPGd0Pl9FPGx0PnZlcnNpb25FPGd0Pl9FPGx0PmFyY2hpdGVjdHVyZUU8Z3Q+LiIKKyN8ICJFPGx0PnBhY2thZ2VfdHlwZUU8Z3Q+PiBhcyBzcGVjaWZpZWQgaW4gdGhlIGNvbnRyb2wgZmlsZSBvZiB0aGUgcGFja2FnZS4gIgorI3wgIlRoZSBJPEU8bHQ+dmVyc2lvbkU8Z3Q+PiBwYXJ0IG9mIHRoZSBmaWxlbmFtZSBjb25zaXN0cyBvZiB0aGUgdXBzdHJlYW0gIgorI3wgInZlcnNpb24gaW5mb3JtYXRpb24gb3B0aW9uYWxseSBmb2xsb3dlZCBieSBhIGh5cGhlbiBhbmQgdGhlIHJldmlzaW9uICIKKyN8ICJpbmZvcm1hdGlvbi4gVGhlIEk8RTxsdD5wYWNrYWdlX3R5cGVFPGd0Pj4gcGFydCBjb21lcyBmcm9tIHRoYXQgZmllbGQgaWYgIgorI3wgInByZXNlbnQgb3IgZmFsbGJhY2tzIHRvIEI8ZGViPi4iCittc2dpZCAiIgorIlRoaXMgbWFudWFsIHBhZ2UgZG9jdW1lbnRzIHRoZSBCPGRwa2ctbmFtZT4gcHJvZ3JhbSB3aGljaCBwcm92aWRlcyBhbiBlYXN5ICIKKyJ3YXkgdG8gcmVuYW1lIEI8RGViaWFuPiBwYWNrYWdlcyBpbnRvIHRoZWlyIGZ1bGwgcGFja2FnZSBuYW1lcy4gQSBmdWxsICIKKyJwYWNrYWdlIG5hbWUgY29uc2lzdHMgb2YgSTxwYWNrYWdlPkI8Xz5JPHZlcnNpb24+QjxfPkk8YXJjaGl0ZWN0dXJlPkI8LiIKKyI+STxwYWNrYWdlLXR5cGU+IGFzIHNwZWNpZmllZCBpbiB0aGUgY29udHJvbCBmaWxlIG9mIHRoZSBwYWNrYWdlLiBUaGUgIgorIkk8dmVyc2lvbj4gcGFydCBvZiB0aGUgZmlsZW5hbWUgY29uc2lzdHMgb2YgdGhlIHVwc3RyZWFtIHZlcnNpb24gaW5mb3JtYXRpb24gIgorIm9wdGlvbmFsbHkgZm9sbG93ZWQgYnkgYSBoeXBoZW4gYW5kIHRoZSByZXZpc2lvbiBpbmZvcm1hdGlvbi4gVGhlIEk8cGFja2FnZS0iCisidHlwZT4gcGFydCBjb21lcyBmcm9tIHRoYXQgZmllbGQgaWYgcHJlc2VudCBvciBmYWxsYmFja3MgdG8gQjxkZWI+LiIKK21zZ3N0ciAiIgorIkVzdGEgcGFnaW5hIGRlIG1hbnVhbCBkb2N1bWVudGEgZWwgdXNvIGRlIEI8ZHBrZy1uYW1lPiwgcXVlIG9mcmVjZSB1bmEgZm9ybWEgIgorInNlbmNpbGxhIGRlIHJlbm9tYnJhciBwYXF1ZXRlcyBkZSBCPERlYmlhbj4gYSBzdXMgbm9tYnJlcyBjb21wbGV0b3MgZGUgIgorInBhcXVldGUuIFVuIG5vbWJyZSBjb21wbGV0byBkZSBwYXF1ZXRlIGNvbnNpc3RlIGRlICIKKyJJPEU8bHQ+cGFxdWV0ZUU8Z3Q+X0U8bHQ+dmVyc2nDs25FPGd0Pl9FPGx0PmFycXVpdGVjdHVyYUU8Z3Q+LkU8bHQ+dGlwby0iCisicGFxdWV0ZUU8Z3Q+PiB0YWwgeSBjb21vIHNlIGRlZmluZSBlbiBlbCBmaWNoZXJvIGRlIGNvbnRyb2wgZGVsIHBhcXVldGUuIExhICIKKyJwYXJ0ZSBkZSBFPGx0PnZlcnNpw7NuRTxndD4gZGVsIGZpY2hlcm8gY29uc2lzdGUgZGUgbGEgaW5mb3JtYWNpw7NuIGRlIGxhICIKKyJ2ZXJzacOzbiBkZSBsYSBmdWVudGUgb3JpZ2luYWwsIG9wY2lvbmFsbWVudGUgc2VndWlkbyBkZSB1biBndWnDs24sIHkgbGEgIgorImluZm9ybWFjacOzbiBkZSBsYSByZXZpc2nDs24uIExhIHBhcnRlIGRlIEk8RTxsdD50aXBvLXBhcXVldGVFPGd0Pj4gc2UgZXh0cmFlICIKKyJkZSBlc2UgY2FtcG8sIGRlIGV4aXN0aXIuIERlIG5vIHNlciBhc8OtLCBzZSB1c2Fyw6EgQjxkZWI+IHBvciBvbWlzacOzbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLW5hbWUuMTozMQorIywgbm8td3JhcAorbXNnaWQgIkI8LWE+LCBCPC0tbm8tYXJjaGl0ZWN0dXJlPiIKK21zZ3N0ciAiQjwtYT4sIEI8LS1uby1hcmNoaXRlY3R1cmU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW5hbWUuMTozNAorbXNnaWQgIlRoZSBkZXN0aW5hdGlvbiBmaWxlbmFtZSB3aWxsIG5vdCBoYXZlIHRoZSBhcmNoaXRlY3R1cmUgaW5mb3JtYXRpb24uIgorbXNnc3RyICIiCisiRWwgbm9tYnJlIGRlbCBmaWNoZXJvIGRlIGRlc3Rpbm8gbm8gaW5jbHVpcsOhIGluZm9ybWFjacOzbiBzb2JyZSBsYSAiCisiYXJxdWl0ZWN0dXJhLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctbmFtZS4xOjM0CisjLCBuby13cmFwCittc2dpZCAiQjwtaz4sIEI8LS1zeW1saW5rPiIKK21zZ3N0ciAiQjwtaz4sIEI8LS1zeW1saW5rPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6MzcKK21zZ2lkICJDcmVhdGUgYSBzeW1saW5rLCBpbnN0ZWFkIG9mIG1vdmluZy4iCittc2dzdHIgIkNyZWEgdW4gZW5sYWNlIHNpbWLDs2xpY28gZW4gdmV6IGRlIG1vdmVyIGVsIGZpY2hlcm8uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1uYW1lLjE6MzcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1vPiwgQjwtLW92ZXJ3cml0ZT4iCittc2dzdHIgIkI8LW8+LCBCPC0tb3ZlcndyaXRlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6NDEKK21zZ2lkICIiCisiRXhpc3RpbmcgZmlsZXMgd2lsbCBiZSBvdmVyd3JpdHRlbiBpZiB0aGV5IGhhdmUgdGhlIHNhbWUgbmFtZSBhcyB0aGUgIgorImRlc3RpbmF0aW9uIGZpbGVuYW1lLiIKK21zZ3N0ciAiIgorIkxvcyBmaWNoZXJvcyBleGlzdGVudGVzIHNlIHNvYnJlZXNjcmliaXLDoW4gc2kgcG9zZWVuIGVsIG1pc21vIG5vbWJyZSBxdWUgZWwgIgorImZpY2hlcm8gZGUgZGVzdGluby4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLW5hbWUuMTo0MQorIywgbm8td3JhcAorbXNnaWQgIkI8LXM+LCBCPC0tc3ViZGlyPiBbSTxkaXI+XSIKK21zZ3N0ciAiQjwtcz4sIEI8LS1zdWJkaXI+IFtJPGRpcmVjdG9yaW8+XSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6NTMKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIkZpbGVzIHdpbGwgYmUgbW92ZWQgaW50byBhIHN1YmRpcmVjdG9yeS4gSWYgdGhlIGRpcmVjdG9yeSBnaXZlbiBhcyAiCisjfCAiYXJndW1lbnQgZXhpc3RzIHRoZSBmaWxlcyB3aWxsIGJlIG1vdmVkIGludG8gdGhhdCBkaXJlY3Rvcnkgb3RoZXJ3aXNlIHRoZSAiCisjfCAibmFtZSBvZiB0aGUgdGFyZ2V0IGRpcmVjdG9yeSBpcyBleHRyYWN0ZWQgZnJvbSB0aGUgc2VjdGlvbiBmaWVsZCBpbiB0aGUgIgorI3wgImNvbnRyb2wgcGFydCBvZiB0aGUgcGFja2FnZS4gVGhlIHRhcmdldCBkaXJlY3Rvcnkgd2lsbCBiZSBgdW5zdGFibGUvIgorI3wgImJpbmFyeS1FPGx0PmFyY2hpdGVjdHVyZUU8Z3Q+L0U8bHQ+c2VjdGlvbkU8Z3Q+Jy4gSWYgdGhlIHNlY3Rpb24gaXMgbm90ICIKKyN8ICJmb3VuZCBpbiB0aGUgY29udHJvbCwgdGhlbiBgbm8tc2VjdGlvbicgaXMgYXNzdW1lZCwgYW5kIGluIHRoaXMgY2FzZSwgYXMgIgorI3wgIndlbGwgYXMgZm9yIHNlY3Rpb25zIGBub24tZnJlZScgYW5kIGBjb250cmliJyB0aGUgdGFyZ2V0IGRpcmVjdG9yeSBpcyAiCisjfCAiYEU8bHQ+c2VjdGlvbkU8Z3Q+L2JpbmFyeS1FPGx0PmFyY2hpdGVjdHVyZUU8Z3Q+Jy4gVGhlIHNlY3Rpb24gZmllbGQgIgorI3wgImlzbid0IHJlcXVpcmVkIHNvIGEgbG90IG9mIHBhY2thZ2VzIHdpbGwgZmluZCB0aGVpciB3YXkgdG8gdGhlIGBuby0iCisjfCAic2VjdGlvbicgYXJlYS4gVXNlIHRoaXMgb3B0aW9uIHdpdGggY2FyZSwgaXQncyBtZXNzeS4iCittc2dpZCAiIgorIkZpbGVzIHdpbGwgYmUgbW92ZWQgaW50byBhIHN1YmRpcmVjdG9yeS4gSWYgdGhlIGRpcmVjdG9yeSBnaXZlbiBhcyBhcmd1bWVudCAiCisiZXhpc3RzIHRoZSBmaWxlcyB3aWxsIGJlIG1vdmVkIGludG8gdGhhdCBkaXJlY3Rvcnkgb3RoZXJ3aXNlIHRoZSBuYW1lIG9mIHRoZSAiCisidGFyZ2V0IGRpcmVjdG9yeSBpcyBleHRyYWN0ZWQgZnJvbSB0aGUgc2VjdGlvbiBmaWVsZCBpbiB0aGUgY29udHJvbCBwYXJ0IG9mICIKKyJ0aGUgcGFja2FnZS4gVGhlIHRhcmdldCBkaXJlY3Rvcnkgd2lsbCBiZSBgdW5zdGFibGUvYmluYXJ5LUk8YXJjaGl0ZWN0dXJlPi8iCisiSTxzZWN0aW9uPicuIElmIHRoZSBzZWN0aW9uIGlzIG5vdCBmb3VuZCBpbiB0aGUgY29udHJvbCwgdGhlbiBgbm8tc2VjdGlvbicgIgorImlzIGFzc3VtZWQsIGFuZCBpbiB0aGlzIGNhc2UsIGFzIHdlbGwgYXMgZm9yIHNlY3Rpb25zIGBub24tZnJlZScgYW5kICIKKyJgY29udHJpYicgdGhlIHRhcmdldCBkaXJlY3RvcnkgaXMgYEk8c2VjdGlvbj4vYmluYXJ5LUk8YXJjaGl0ZWN0dXJlPicuIFRoZSAiCisic2VjdGlvbiBmaWVsZCBpc24ndCByZXF1aXJlZCBzbyBhIGxvdCBvZiBwYWNrYWdlcyB3aWxsIGZpbmQgdGhlaXIgd2F5IHRvIHRoZSAiCisiYG5vLXNlY3Rpb24nIGFyZWEuIFVzZSB0aGlzIG9wdGlvbiB3aXRoIGNhcmUsIGl0J3MgbWVzc3kuIgorbXNnc3RyICIiCisiTG9zIGZpY2hlcm9zIHNlIG1vdmVyw6FuIGFsIHN1YmRpcmVjdG9yaW8gZGVmaW5pZG8uIFNpIGV4aXN0ZSBlbCBkaXJlY3RvcmlvICIKKyJkYWRvIGNvbW8gYXJndW1lbnRvLCBsb3MgZmljaGVyb3Mgc2UgbW92ZXLDoW4gYWwgZGlyZWN0b3JpbyBkZWZpbmlkby4gRGUgb3RyYSAiCisiZm9ybWEsIGVsIG5vbWJyZSBkZWwgZGlyZWN0b3JpbyBkZSBkZXN0aW5vIHNlIGV4dHJhZXLDoSBkZWwgY2FtcG8gZGUgc2VjY2nDs24sICIKKyJlbiBlbCBmaWNoZXJvIGRlIGNvbnRyb2wgZGVsIHBhcXVldGUuIEVsIGRpcmVjdG9yaW8gZGUgZGVzdGlubyBzZXLDoSAiCisiwqt1bnN0YWJsZS9iaW5hcnktRTxsdD5hcnF1aXRlY3R1cmFFPGd0Pi9FPGx0PnNlY2Npw7NuRTxndD7Cuy4gU2kgbm8gc2UgIgorImVuY3VlbnRyYSBuaW5ndW5hIHNlY2Npw7NuIGVuIGVsIGZpY2hlcm8gZGUgY29udHJvbCwgc2UgYXN1bWlyw6Egwqtuby1zZWN0aW9uwrsuICIKKyJFbiBlc3RlIGNhc28sIHkgdGFtYmnDqW4gc2kgbGEgc2VjY2nDs24gZXMgwqtub24tZnJlZcK7IG8gwqtjb250cmliwrssIGVsICIKKyJkaXJlY3RvcmlvIGRlIGRlc3Rpbm8gc2Vyw6EgwqtFPGx0PnNlY2Npw7NuRTxndD4vYmluYXJ5LSIKKyJFPGx0PmFycXVpdGVjdHVyYUU8Z3Q+wrsuIEVsIGNhbXBvIGRlIHNlY2Npw7NuIG5vIGVzIG5lY2VzYXJpbywgcG9yIGxvIHF1ZSAiCisibXVjaG9zIHBhcXVldGVzIGFwYXJlY2Vyw6FuIGNvbW8gcGFydGUgZGUgwqtuby1zZWN0aW9uwrsgKHNpbiBzZWNjacOzbikuIFVzZSAiCisiZXN0YSBvcGNpw7NuIGNvbiBjdWlkYWRvLCBlcyBhbGdvIGRlbGljYWRhLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctbmFtZS4xOjUzCisjLCBuby13cmFwCittc2dpZCAiQjwtYz4sIEI8LS1jcmVhdGUtZGlyPiIKK21zZ3N0ciAiQjwtYz4sIEI8LS1jcmVhdGUtZGlyPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6NTgKK21zZ2lkICIiCisiVGhpcyBvcHRpb24gY2FuIHVzZWQgdG9nZXRoZXIgd2l0aCB0aGUgLXMgb3B0aW9uLiBJZiBhIHRhcmdldCBkaXJlY3RvcnkgIgorImlzbid0IGZvdW5kIGl0IHdpbGwgYmUgY3JlYXRlZCBhdXRvbWF0aWNhbGx5LiAgQjxVc2UgdGhpcyBvcHRpb24gd2l0aCBjYXJlLj4iCittc2dzdHIgIiIKKyJFc3RhIG9wY2nDs24gc2UgcHVlZGUgdXNhciBqdW50byBjb24gbGEgb3BjacOzbiDCqy1zwrsuIFNpIG5vIHNlIGVuY3VlbnRyYSAiCisibmluZ8O6biBkaXJlY3RvcmlvIGRlIGRlc3Rpbm8sIHNlIGNyZWFyw6EgYXV0b23DoXRpY2FtZW50ZS4gQjxVc2UgZXN0YSBvcGNpw7NuICIKKyJjb24gY3VpZGFkby4+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1uYW1lLjE6NjEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC12PiwgQjwtLXZlcnNpb24+IgorbXNnc3RyICJCPC12PiwgQjwtLXZlcnNpb24+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1uYW1lLjE6NjYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGRwa2ctbmFtZSBiYXItZm9vLmRlYj4iCittc2dzdHIgIkI8ZHBrZy1uYW1lIGJhci1mb28uZGViPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6NzEKK21zZ2lkICIiCisiVGhlIGZpbGUgYGJhci1mb28uZGViJyB3aWxsIGJlIHJlbmFtZWQgdG8gYmFyLWZvb18xLjAtMl9pMzg2LmRlYiBvciAiCisic29tZXRoaW5nIHNpbWlsYXIgKGRlcGVuZGluZyBvbiB3aGF0ZXZlciBpbmZvcm1hdGlvbiBpcyBpbiB0aGUgY29udHJvbCBwYXJ0ICIKKyJvZiBgYmFyLWZvby5kZWInKS4iCittc2dzdHIgIiIKKyJFbCBmaWNoZXJvIMKrYmFyLWZvby5kZWLCuyBzZSByZW5vbWJyYXLDoSBhIMKrYmFyLWZvb18xLjAtMl9pMzg2LmRlYsK7IG8gc2ltaWxhciAiCisiKGRlcGVuZGllbmRvIGRlIGN1YWwgc2VhIGxhIGluZm9ybWFjacOzbiBlbiBsYSBzZWNjacOzbiBkZSBjb250cm9sIGRlIMKrYmFyLWZvby4iCisiZGViwrspLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctbmFtZS4xOjcxCisjLCBuby13cmFwCittc2dpZCAiQjxmaW5kIC9yb290L2RlYmlhbi8gLW5hbWUgXFwoYXEqLmRlYlxcKGFxIHwgeGFyZ3MgLW4gMSBkcGtnLW5hbWUgLWE+IgorbXNnc3RyICJCPGZpbmQgL3Jvb3QvZGViaWFuLyAtbmFtZSBcXChhcSouZGViXFwoYXEgfCB4YXJncyAtbiAxIGRwa2ctbmFtZSAtYT7DpyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6NzYKK21zZ2lkICIiCisiQWxsIGZpbGVzIHdpdGggdGhlIGV4dGVuc2lvbiBgZGViJyBpbiB0aGUgZGlyZWN0b3J5IC9yb290L2RlYmlhbiBhbmQgaXRzICIKKyJzdWJkaXJlY3RvcnkncyB3aWxsIGJlIHJlbmFtZWQgYnkgZHBrZy1uYW1lIGlmIHJlcXVpcmVkIGludG8gbmFtZXMgd2l0aCBubyAiCisiYXJjaGl0ZWN0dXJlIGluZm9ybWF0aW9uLiIKK21zZ3N0ciAiIgorImRwa2ctbmFtZSByZW5vbWJyYXLDoSB0b2RvcyBsb3MgZmljaGVyb3MgY29uIGxhIGV4dGVuc2nDs24gwqsuZGViwrsgZGVudHJvIGRlbCAiCisiZGlyZWN0b3JpbyDCqy9yb290L2RlYmlhbsK7IHkgc3VzIHN1YmRpcmVjdG9yaW9zLCBlbiBjYXNvIGRlIHNlciBuZWNlc2FyaW8sIGEgIgorIm5vbWJyZXMgc2luIGluZm9ybWFjacOzbiBkZSBhcnF1aXRlY3R1cmEuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1uYW1lLjE6NzYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGZpbmQgLW5hbWUgXFwoYXEqLmRlYlxcKGFxIHwgeGFyZ3MgLW4gMSBkcGtnLW5hbWUgLWEgLW8gLXMgLWM+IgorbXNnc3RyICJCPGZpbmQgLW5hbWUgXFwoYXEqLmRlYlxcKGFxIHwgeGFyZ3MgLW4gMSBkcGtnLW5hbWUgLWEgLW8gLXMgLWM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW5hbWUuMTo4MgorbXNnaWQgIiIKKyJCPERvbid0IGRvIHRoaXMuPiBZb3VyIGFyY2hpdmUgd2lsbCBiZSBtZXNzZWQgdXAgY29tcGxldGVseSBiZWNhdXNlIGEgbG90IG9mICIKKyJwYWNrYWdlcyBkb24ndCBjb21lIHdpdGggc2VjdGlvbiBpbmZvcm1hdGlvbi4gIEI8RG9uJ3QgZG8gdGhpcy4+IgorbXNnc3RyICIiCisiQjxObyBoYWdhIGVzdG8uPiBTdSBhcmNoaXZvIHNlIGNvcnJvbXBlcsOhIGNvbXBsZXRhbWVudGUgZGViaWRvIGEgcXVlIHVuYSAiCisiZ3JhbiBjYW50aWRhZCBkZSBwYXF1ZXRlcyBubyBpbmNsdXllbiB1bmEgc2VjY2nDs24gZGUgaW5mb3JtYWNpw7NuLiBCPE5vIGhhZ2EgIgorImVzdG8uPiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctbmFtZS4xOjgyCisjLCBuby13cmFwCittc2dpZCAiQjxkcGtnIC0tYnVpbGQgZGViaWFuLXRtcCAmJiBkcGtnLW5hbWUgLW8gLXMgLi4gZGViaWFuLXRtcC5kZWI+IgorbXNnc3RyICJCPGRwa2cgLS1idWlsZCBkZWJpYW4tdG1wICYmIGRwa2ctbmFtZSAtbyAtcyAuLiBkZWJpYW4tdG1wLmRlYj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbmFtZS4xOjg1Cittc2dpZCAiVGhpcyBjYW4gYmUgdXNlZCB3aGVuIGJ1aWxkaW5nIG5ldyBwYWNrYWdlcy4iCittc2dzdHIgIlB1ZWRlIHV0aWxpemFyIGVzdG8gYWwgY29uc3RydWlyIHBhcXVldGVzIG51ZXZvcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbmFtZS4xOjk1CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJTb21lIHBhY2thZ2VzIGRvbid0IGZvbGxvdyB0aGUgbmFtZSBzdHJ1Y3R1cmUgIgorI3wgIkU8bHQ+cGFja2FnZUU8Z3Q+X0U8bHQ+dmVyc2lvbkU8Z3Q+X0U8bHQ+YXJjaGl0ZWN0dXJlRTxndD4uZGViLiBQYWNrYWdlcyAiCisjfCAicmVuYW1lZCBieSBkcGtnLW5hbWUgd2lsbCBmb2xsb3cgdGhpcyBzdHJ1Y3R1cmUuIEdlbmVyYWxseSB0aGlzIHdpbGwgaGF2ZSAiCisjfCAibm8gaW1wYWN0IG9uIGhvdyBwYWNrYWdlcyBhcmUgaW5zdGFsbGVkIGJ5IEI8ZHNlbGVjdD4oMSkvIEI8ZHBrZz4oMSksIGJ1dCAiCisjfCAib3RoZXIgaW5zdGFsbGF0aW9uIHRvb2xzIG1pZ2h0IGRlcGVuZCBvbiB0aGlzIG5hbWluZyBzdHJ1Y3R1cmUuIgorbXNnaWQgIiIKKyJTb21lIHBhY2thZ2VzIGRvbid0IGZvbGxvdyB0aGUgbmFtZSBzdHJ1Y3R1cmUgIgorIkk8cGFja2FnZT5CPF8+STx2ZXJzaW9uPkI8Xz5JPGFyY2hpdGVjdHVyZT5CPC5kZWI+LiAgUGFja2FnZXMgcmVuYW1lZCBieSAiCisiZHBrZy1uYW1lIHdpbGwgZm9sbG93IHRoaXMgc3RydWN0dXJlLiBHZW5lcmFsbHkgdGhpcyB3aWxsIGhhdmUgbm8gaW1wYWN0IG9uICIKKyJob3cgcGFja2FnZXMgYXJlIGluc3RhbGxlZCBieSBCPGRzZWxlY3Q+KDEpL0I8ZHBrZz4oMSksIGJ1dCBvdGhlciAiCisiaW5zdGFsbGF0aW9uIHRvb2xzIG1pZ2h0IGRlcGVuZCBvbiB0aGlzIG5hbWluZyBzdHJ1Y3R1cmUuIgorbXNnc3RyICIiCisiQWxndW5vcyBwYXF1ZXRlcyBubyBzaWd1ZW4gbGEgbWlzbWEgZXN0cnVjdHVyYSBkZSAiCisiRTxsdD5wYXF1ZXRlRTxndD5fRTxsdD52ZXJzacOzbkU8Z3Q+X0U8bHQ+YXJxdWl0ZWN0dXJhRTxndD4uZGViLiBMb3MgcGFxdWV0ZXMgIgorInF1ZSBkcGtnLW5hbWUgcmVub21icmUgc2VndWlyw6FuIGVzdGEgZXN0cnVjdHVyYS4gR2VuZXJhbG1lbnRlIGVzdG8gbm8gdGVuZHLDoSAiCisibmluZ8O6biBlZmVjdG8gZW4gbGEgaW5zdGFsYWNpw7NuIGRlIHBhcXVldGVzIHBvciBCPGRzZWxlY3Q+KDEpLyBCPGRwa2c+KDEpLCAiCisiYXVucXVlIG90cmFzIGhlcnJhbWllbnRhcyBkZSBpbnN0YWxhY2nDs24gcG9kcsOtYW4gZGVwZW5kZXIgZGUgZXN0YSBlc3RydWN0dXJhLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6MTAzCittc2dpZCAiIgorIkI8ZGViPig1KSwgQjxkZWItY29udHJvbD4oNSksIEI8ZHBrZz4oMSksIEI8ZHBrZy1kZWI+KDEpLCBCPGZpbmQ+KDEpLCAiCisiQjx4YXJncz4oMSkuIgorbXNnc3RyICIiCisiQjxkZWI+KDUpLCBCPGRlYi1jb250cm9sPig1KSwgQjxkcGtnPigxKSwgQjxkcGtnLWRlYj4oMSksIEI8ZmluZD4oMSksICIKKyJCPHhhcmdzPigxKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbmFtZS4xOjEwNgorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAxOTk1LDE5OTYgRXJpY2sgQnJhbmRlcmhvcnN0IgorbXNnc3RyICJDb3B5cmlnaHQgXFwoY28gMTk5NSwxOTk2IEVyaWNrIEJyYW5kZXJob3JzdCIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxCisjLCBuby13cmFwCittc2dpZCAiZHBrZy1wYXJzZWNoYW5nZWxvZyIKK21zZ3N0ciAiZHBrZy1wYXJzZWNoYW5nZWxvZyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjQKK21zZ2lkICJkcGtnLXBhcnNlY2hhbmdlbG9nIC0gcGFyc2UgRGViaWFuIGNoYW5nZWxvZyBmaWxlcyIKK21zZ3N0ciAiIgorImRwa2ctcGFyc2VjaGFuZ2Vsb2cgLSBBbsOhbGlzaXMgZGUgZmljaGVyb3MgZGUgcmVnaXN0cm8gZGUgY2FtYmlvcyBkZSBEZWJpYW4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo4CisjLCBmdXp6eQorI3wgbXNnaWQgIkI8ZHBrZy1wYXJzZWNoYW5nZWxvZz4gW0k8b3B0aW9ucz5dIgorbXNnaWQgIkI8ZHBrZy1wYXJzZWNoYW5nZWxvZz4gW0k8b3B0aW9uPi4uLl0iCittc2dzdHIgIkI8ZHBrZy1wYXJzZWNoYW5nZWxvZz4gW0k8b3BjaW9uZXM+XSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjE0Cittc2dpZCAiIgorIkI8ZHBrZy1wYXJzZWNoYW5nZWxvZz4gcmVhZHMgYW5kIHBhcnNlcyB0aGUgY2hhbmdlbG9nIG9mIGFuIHVucGFja2VkIERlYmlhbiAiCisic291cmNlIHRyZWUgYW5kIG91dHB1dHMgdGhlIGluZm9ybWF0aW9uIGluIGl0IHRvIHN0YW5kYXJkIG91dHB1dCBpbiBhICIKKyJtYWNoaW5lLXJlYWRhYmxlIGZvcm0uIgorbXNnc3RyICIiCisiQjxkcGtnLXBhcnNlY2hhbmdlbG9nPiBsZWUgeSBhbmFsaXphIGVsIHJlZ2lzdHJvIGRlIGNhbWJpb3MgZGUgdW4gw6FyYm9sIGRlICIKKyJmdWVudGVzIGRlIERlYmlhbiBkZXNlbXBhcXVldGFkbywgbW9zdHJhbmRvIGxhIGluZm9ybWFjacOzbiBjb250ZW5pZGEgYSAiCisidHJhdsOpcyBkZSBsYSBzYWxpZGEgZXN0w6FuZGFyIGVuIHVuIGZvcm1hdG8gbGVnaWJsZSBwb3IgZWwgc2lzdGVtYS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MjYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1MPkk8bGliZGlyPiIKK21zZ3N0ciAiQjwtTD5JPGRpcmVjdG9yaW8tYmlibGlvdGVjYXM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MzMKK21zZ2lkICIiCisiU3BlY2lmeSBhbiBhZGRpdGlvbmFsIGRpcmVjdG9yeSB0byBzZWFyY2ggZm9yIHBhcnNlciBzY3JpcHRzLiAgVGhpcyAiCisiZGlyZWN0b3J5IGlzIHNlYXJjaGVkIGJlZm9yZSB0aGUgZGVmYXVsdCBkaXJlY3RvcmllcyB3aGljaCBhcmUgY3VycmVudGx5IEI8LyIKKyJ1c3IvbG9jYWwvbGliL2Rwa2cvcGFyc2VjaGFuZ2Vsb2c+IGFuZCBCPC91c3IvbGliL2Rwa2cvcGFyc2VjaGFuZ2Vsb2c+LiIKK21zZ3N0ciAiIgorIkRlZmluZSB1biBkaXJlY3RvcmlvIGFkaWNpb25hbCBlbiBlbCBxdWUgYnVzY2FyIHNjcmlwdHMgZGUgYW7DoWxpc2lzLiBFc3RlICIKKyJkaXJlY3RvcmlvIHNlIGFuYWxpemEgYW50ZXMgcXVlIGxvcyBkaXJlY3RvcmlvcyBwcmVkZWZpbmlkb3MsIEI8L3Vzci9sb2NhbC8iCisibGliL2Rwa2cvcGFyc2VjaGFuZ2Vsb2c+IHkgQjwvdXNyL2xpYi9kcGtnL3BhcnNlY2hhbmdlbG9nPi4iCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MzkKKyMsIG5vLXdyYXAKK21zZ2lkICJQYXJzZXIgT3B0aW9ucyIKK21zZ3N0ciAiT3BjaW9uZXMgZGUgYW7DoWxpc2lzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6NDQKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBvcHRpb25zIGNhbiBiZSB1c2VkIHRvIGluZmx1ZW5jZSB0aGUgb3V0cHV0IG9mIHRoZSBjaGFuZ2Vsb2cgIgorInBhcnNlciwgZS5nLiB0aGUgcmFuZ2Ugb2YgZW50cmllcyBvciB0aGUgZm9ybWF0IG9mIHRoZSBvdXRwdXQuIFRoZXkgbmVlZCB0byAiCisiYmUgc3VwcG9ydGVkIGJ5IHRoZSBwYXJzZXIgc2NyaXB0IGluIHF1ZXN0aW9uLiBTZWUgYWxzbyBCPENBVkVBVFM+LiIKK21zZ3N0ciAiIgorIkxhcyBzaWd1aWVudGVzIG9wY2lvbmVzIHBlcm1pdGVuIG1vZGlmaWNhciBsYSBzYWxpZGEgZGVsIGFuYWxpemFkb3IgZGUgIgorInJlZ2lzdHJvcyBkZSBjYW1iaW8sIHBvciBlamVtcGxvLCBlbCByYW5nbyBkZSBsYXMgZW50cmFkYXMgbyBlbCBmb3JtYXRvIGRlICIKKyJsYSBzYWxpZGEuIERlYmVuIHNlciBjb21wYXRpYmxlcyBjb24gZWwgc2NyaXB0IGFuYWxpemFkb3IgZW4gY3Vlc3Rpw7NuLiBWw6lhc2UgIgorInRhbWJpw6luIEI8QURWRVJURU5DSUFTPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6NDQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tZm9ybWF0Pkk8IG91dHB1dGZvcm1hdD4iCittc2dzdHIgIkI8LS1mb3JtYXQ+STwgZm9ybWF0by1zYWxpZGE+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6NTMKK21zZ2lkICIiCisiU2V0IHRoZSBvdXRwdXQgZm9ybWF0LiBDdXJyZW50bHkgc3VwcG9ydGVkIHZhbHVlcyBhcmUgSTxkcGtnPiBhbmQgIgorIkk8cmZjODIyPi4gIEk8ZHBrZz4gaXMgdGhlIGNsYXNzaWMgb3V0cHV0IGZvcm1hdCAoZnJvbSBiZWZvcmUgdGhpcyBvcHRpb24gIgorImV4aXN0ZWQpIGFuZCB0aGUgZGVmYXVsdC4gSXQgY29uc2lzdHMgb2Ygb25lIHBhcmFncmFwaCBpbiBEZWJpYW4gY29udHJvbCAiCisiZm9ybWF0IChzZWUgQjxkZWItY29udHJvbD4oNSkpLiBJZiBtb3JlIHRoYW4gb25lIGVudHJ5IGlzIHJlcXVlc3RlZCwgdGhlbiAiCisibW9zdCBmaWVsZHMgYXJlIHRha2VuIGZyb20gdGhlIGxhdGVzdCBlbnRyeSwgZXhjZXB0IG90aGVyd2lzZSBzdGF0ZWQ6IgorbXNnc3RyICIiCisiRGVmaW5lIGVsIGZvcm1hdG8gZGUgbGEgc2FsaWRvLiBMb3MgdmFsb3JlcyBjb21wYXRpYmxlcyBzb24gSTxkcGtnPiB5ICIKKyJJPHJmYzgyMj4uIEk8ZHBrZz4gZXMgZWwgZm9ybWF0byBkZSBzYWxpZGEgY2zDoXNpY28gKGFudGVyaW9yIGEgbGEgZXhpc3RlbmNpYSAiCisiZGUgZXN0YSBvcGNpw7NuKSB5IGVsIHZhbG9yIHByZWRlZmluaWRvLiBDb25zaXN0ZSBkZSB1biBww6FycmFmbyBjb24gZWwgIgorImZvcm1hdG8gZGUgY29udHJvbCBkZSBEZWJpYW4gKGNvbnN1bHRlIEI8ZGViLWNvbnRyb2w+KDUpKS4gRW4gY2FzbyBkZSAiCisicmVxdWVyaXIgbcOhcyBkZSB1bmEgZW50cmFkYSwgbGEgbWF5b3LDrWEgZGUgY2FtcG9zIHNlIHRvbWFuIGRlIGxhIMO6bHRpbWEgIgorImVudHJhZGEsIGEgbWVub3MgcXVlIHNlIGVzcGVjaWZpcXVlIGxvIGNvbnRyYXJpbzoiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6NTQKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxTb3VyY2U6PiBFPGx0PnBrZyBuYW1lRTxndD4iCittc2dpZCAiQjxTb3VyY2U6Pkk8IHBrZy1uYW1lPiIKK21zZ3N0ciAiQjxTb3VyY2U6PiBFPGx0Pm5vbWJyZS1wYXF1ZXRlRTxndD4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6NTYKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxWZXJzaW9uOj4gRTxsdD52ZXJzaW9uRTxndD4iCittc2dpZCAiQjxWZXJzaW9uOj5JPCB2ZXJzaW9uPiIKK21zZ3N0ciAiQjxWZXJzaW9uOj4gRTxsdD52ZXJzacOzbkU8Z3Q+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjU4CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8RGlzdHJpYnV0aW9uOj4gRTxsdD50YXJnZXQgZGlzdHJpYnV0aW9uRTxndD4iCittc2dpZCAiQjxEaXN0cmlidXRpb246Pkk8IHRhcmdldC1kaXN0cmlidXRpb24+IgorbXNnc3RyICJCPERpc3RyaWJ1dGlvbjo+IEU8bHQ+ZGlzdHJpYnVjacOzbi1kZXN0aW5vRTxndD4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6NjAKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxVcmdlbmN5Oj4gRTxsdD51cmdlbmN5RTxndD4iCittc2dpZCAiQjxVcmdlbmN5Oj5JPCB1cmdlbmN5PiIKK21zZ3N0ciAiQjxVcmdlbmN5Oj4gRTxsdD51cmdlbmNpYUU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6NjMKK21zZ2lkICJUaGUgaGlnaGVzdCB1cmdlbmN5IG9mIGFsbCBpbmNsdWRlZCBlbnRyaWVzIGlzIHVzZWQuIgorbXNnc3RyICIiCisiU2UgdXNhIGxhIHVyZ2VuY2lhIG3DoXMgZWxldmFkYSBwcmVzZW50ZSBlbnRyZSB0b2RhcyBsYXMgZW50cmFkYXMgaW5jbHVpZGFzLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo2MworIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPE1haW50YWluZXI6PiBFPGx0PmF1dGhvckU8Z3Q+IgorbXNnaWQgIkI8TWFpbnRhaW5lcjo+STwgYXV0aG9yPiIKK21zZ3N0ciAiQjxNYWludGFpbmVyOj4gRTxsdD5hdXRvckU8Z3Q+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjY1CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8RGF0ZTo+IEU8bHQ+ZGF0ZUU8Z3Q+IgorbXNnaWQgIkI8RGF0ZTo+STwgZGF0ZT4iCittc2dzdHIgIkI8RGF0ZTo+IEU8bHQ+ZmVjaGFFPGd0PiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo2NworIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPENsb3Nlczo+IEU8bHQ+YnVnIG51bWJlckU8Z3Q+IgorbXNnaWQgIkI8Q2xvc2VzOj5JPCBidWctbnVtYmVyPiIKK21zZ3N0ciAiQjxDbG9zZXM6PiBFPGx0Pm7Dum1lcm8tZmFsbG8tQlRTRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo3MAorbXNnaWQgIlRoZSBDbG9zZXMgZmllbGRzIG9mIGFsbCBpbmNsdWRlZCBlbnRyaWVzIGFyZSBtZXJnZWQuIgorbXNnc3RyICJMb3MgY2FtcG9zIMKrQ2xvc2VzwrsgZGUgdG9kYXMgbGFzIGVudHJhZGFzIGluY2x1aWRhcyBzZSBmdXNpb25hbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6NzAKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxDaGFuZ2VzOj4gRTxsdD5jaGFuZ2Vsb2cgZW50cmllc0U8Z3Q+IgorbXNnaWQgIkI8Q2hhbmdlczo+STwgY2hhbmdlbG9nLWVudHJpZXM+IgorbXNnc3RyICJCPENoYW5nZXM6PiBFPGx0PmVudHJhZGFzLXJlZ2lzdHJvLWNhbWJpb3NFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjc3Cittc2dpZCAiIgorIlRoZSB0ZXh0IG9mIGFsbCBjaGFuZ2Vsb2cgZW50cmllcyBpcyBjb25jYXRlbmF0ZWQuIFRvIG1ha2UgdGhpcyBmaWVsZCBhICIKKyJ2YWxpZCBEZWJpYW4gY29udHJvbCBmb3JtYXQgbXVsdGlsaW5lIGZpZWxkIGVtcHR5IGxpbmVzIGFyZSByZXBsYWNlZCB3aXRoIGEgIgorInNpbmdsZSBmdWxsIHN0b3AgYW5kIGFsbCBsaW5lcyBpcyBpbnRlbmRlZCBieSBvbmUgc3BhY2UgY2hhcmFjdGVyLiBUaGUgZXhhY3QgIgorImNvbnRlbnQgZGVwZW5kcyBvbiB0aGUgY2hhbmdlbG9nIGZvcm1hdC4iCittc2dzdHIgIiIKKyJFbCB0ZXh0byBkZSB0b2RhcyBsYXMgZW50cmFkYXMgZGVsIHJlZ2lzdHJvIGRlIGNhbWJpb3Mgc2UgZW5jYWRlbmEuIFBhcmEgcXVlICIKKyLDqXN0byB0ZW5nYSB1biBmb3JtYXRvIGRlIGNvbnRyb2wgbXVsdGktbMOtbmVhIGRlIERlYmlhbiB2w6FsaWRvLCBsYXMgbMOtbmVhcyAiCisidmFjw61hcyBzZSByZWVtcGxhemFuIHBvciB1biByZXRvcm5vIGRlIGzDrW5lYSwgeSBzZSBpbnNlcnRhIHVuIHNhbmdyYWRvIGRlIHVuICIKKyJjYXLDoWN0ZXIgZGUgZXNwYWNpbyBlbiB0b2RhcyBsYXMgbMOtbmVhcy4gRWwgY29udGVuaWRvIGV4YWN0byBkZXBlbmRlIGRlbCAiCisiZm9ybWF0byBkZWwgcmVnaXN0cm8gZGUgY2FtYmlvcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo4MAorbXNnaWQgIlRoZXJlIG1pZ2h0IGJlIGFkZGl0aW9uYWwgdXNlci1kZWZpbmVkIGZpZWxkcyBwcmVzZW50LiIKK21zZ3N0ciAiUHVlZGVuIHF1ZSBhcGFyZXpjYW4gY2FtcG9zIGFkaWNpb25hbGVzIGRlZmluaWRvcyBwb3IgZWwgdXN1YXJpby4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo4NAorbXNnaWQgIiIKKyJUaGUgQjxyZmM4MjI+IGZvcm1hdCB1c2VzIHRoZSBzYW1lIGZpZWxkcyBidXQgb3V0cHV0cyBhIHNlcGFyYXRlIHBhcmFncmFwaCAiCisiZm9yIGVhY2ggY2hhbmdlbG9nIGVudHJ5IHNvIHRoYXQgYWxsIG1ldGFkYXRhIGZvciBlYWNoIGVudHJ5IGlzIHByZXNlcnZlZC4iCittc2dzdHIgIiIKKyJFbCBmb3JtYXRvIEI8cmZjODIyPiBlbXBsZWEgbG9zIG1pc21vcyBjYW1wb3MsIHBlcm8gZGV2dWVsdmUgcG9yIGxhIHNhbGlkYSAiCisidW4gcMOhcnJhZm8gcG9yIGNhZGEgZW50cmFkYSBlbiBlbCByZWdpc3RybyBkZSBjYW1iaW9zLCBkZSBmb3JtYSBxdWUgc2UgIgorInByZXNlcnZhbiBsb3MgbWV0YWRhdG9zIGRlIGNhZGEgZW50cmFkYS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6ODQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tc2luY2U+IEk8dmVyc2lvbj4sIEI8LXM+STx2ZXJzaW9uPixCPCAtdj5JPHZlcnNpb24+IgorbXNnc3RyICJCPC0tc2luY2U+IEk8dmVyc2nDs24+LCBCPC1zPkk8dmVyc2nDs24+LEI8IC12Pkk8dmVyc2nDs24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6ODcKK21zZ2lkICJpbmNsdWRlIGFsbCBjaGFuZ2VzIGxhdGVyIHRoYW4gSTx2ZXJzaW9uPi4iCittc2dzdHIgIkluY2x1eWUgdG9kb3MgbG9zIGNhbWJpb3MgcG9zdGVyaW9yZXMgYSBsYSBJPHZlcnNpw7NuPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6ODcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tdW50aWw+IEk8dmVyc2lvbj4sIEI8LXU+STx2ZXJzaW9uPiIKK21zZ3N0ciAiQjwtLXVudGlsPiBJPHZlcnNpw7NuPiwgQjwtdT5JPHZlcnNpw7NuPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjkwCittc2dpZCAiaW5jbHVkZSBhbGwgY2hhbmdlcyBlYXJsaWVyIHRoYW4gSTx2ZXJzaW9uPi4iCittc2dzdHIgIkluY2x1eWUgdG9kb3MgbG9zIGNhbWJpb3MgYW50ZXJpb3JlcyBhIGxhIEk8dmVyc2nDs24+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo5MAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1mcm9tPiBJPHZlcnNpb24+LCBCPC1mPkk8dmVyc2lvbj4iCittc2dzdHIgIkI8LS1mcm9tPiBJPHZlcnNpw7NuPiwgQjwtZj5JPHZlcnNpw7NuPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjkzCittc2dpZCAiaW5jbHVkZSBhbGwgY2hhbmdlcyBlcXVhbCBvciBsYXRlciB0aGFuIEk8dmVyc2lvbj4uIgorbXNnc3RyICJJbmNsdXllIHRvZG9zIGxvcyBjYW1iaW9zIHBvc3RlcmlvcmVzIG8gZGUgbGEgbWlzbWEgSTx2ZXJzacOzbj4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjkzCisjLCBuby13cmFwCittc2dpZCAiQjwtLXRvPiBJPHZlcnNpb24+LCBCPC10Pkk8dmVyc2lvbj4iCittc2dzdHIgIkI8LS10bz4gSTx2ZXJzacOzbj4sIEI8LXQ+STx2ZXJzacOzbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo5NgorbXNnaWQgImluY2x1ZGUgYWxsIGNoYW5nZXMgdXAgdG8gb3IgZXF1YWwgdGhhbiBJPHZlcnNpb24+LiIKK21zZ3N0ciAiSW5jbHV5ZSB0b2RvcyBsb3MgY2FtYmlvcyBhbnRlcmlvcmVzIG8gZGUgbGEgbWlzbWEgSTx2ZXJzacOzbj4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjk2CisjLCBuby13cmFwCittc2dpZCAiQjwtLWNvdW50PiBJPG51bWJlcj4sIEI8LWM+STxudW1iZXI+LCBCPC1uPkk8bnVtYmVyPiIKK21zZ3N0ciAiQjwtLWNvdW50PiBJPG7Dum1lcm8+LCBCPC1jPkk8bsO6bWVybz4sIEI8LW4+STxuw7ptZXJvPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjEwMAorbXNnaWQgIiIKKyJpbmNsdWRlIEk8bnVtYmVyPiBlbnRyaWVzIGZyb20gdGhlIHRvcCAob3IgdGhlIHRhaWwgaWYgSTxudW1iZXI+IGlzIGxvd2VyICIKKyJ0aGFuIDApLiIKK21zZ3N0ciAiIgorIkluY2x1eWUgdW4gSTxuw7ptZXJvPiBkZSBlbnRyYWRhcyBkZXNkZSBlbCBpbmljaW8gKG8gZWwgZmluYWwgZW4gY2FzbyBkZSBxdWUgIgorImVsIEk8bsO6bWVybz4gc2VhIG1lbm9yIHF1ZSAwKS4gIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjEwMAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1vZmZzZXQ+IEk8bnVtYmVyPiwgQjwtbz5JPG51bWJlcj4iCittc2dzdHIgIkI8LS1vZmZzZXQ+IEk8bsO6bWVybz4sIEI8LW8+STxuw7ptZXJvPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjEwNAorbXNnaWQgIiIKKyJjaGFuZ2UgdGhlIHN0YXJ0aW5nIHBvaW50IGZvciAtLWNvdW50LCBjb3VudGVkIGZyb20gdGhlIHRvcCAob3IgdGhlIHRhaWwgaWYgIgorIkk8bnVtYmVyPiBpcyBsb3dlciB0aGFuIDApLiIKK21zZ3N0ciAiIgorIk1vZGlmaWNhIGVsIHB1bnRvIGRlIGluaWNpbyBwYXJhIMKrLS1jb3VudMK7IChjdWVudGEpLCBlbXBlemFuZG8gcG9yIGVsICIKKyJwcmluY2lwaW8gKG8gZWwgZmluYWwgc2kgZWwgSTxuw7ptZXJvPiBlcyBtZW5vciBxdWUgMCkuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjEwNCB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjY4CisjLCBuby13cmFwCittc2dpZCAiQjwtLWFsbD4iCittc2dzdHIgIkI8LS1hbGw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTA4Cittc2dpZCAiIgorImluY2x1ZGUgYWxsIGNoYW5nZXMuIE5vdGU6IG90aGVyIG9wdGlvbnMgaGF2ZSBubyBlZmZlY3Qgd2hlbiB0aGlzIGlzIGluIHVzZS4iCittc2dzdHIgIiIKKyJJbmNsdXllIHRvZG9zIGxvcyBjYW1iaW9zLiBOb3RhOiBvdHJhcyBvcGNpb25lcyBubyB0ZW5kcsOhbiBlZmVjdG8gY3VhbmRvICIKKyJlc3RhIGVzdMOpIGVuIHVzby4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxMTQKK21zZ2lkICIiCisiQWxsIEI8UGFyc2VyIE9wdGlvbnM+IGV4Y2VwdCBmb3IgLXYgYXJlIG9ubHkgc3VwcG9ydGVkIGluIEI8ZHBrZz4sIHZlcnNpb24gIgorIjEuMTQuMTYgYW5kIGxhdGVyLiBUaGlyZCBwYXJ0eSBwYXJzZXJzIGZvciBjaGFuZ2Vsb2cgZm9ybWF0cyBvdGhlciB0aGFuICIKKyJJPGRlYmlhbj4gbWlnaHQgbm90IHN1cHBvcnQgYWxsIG9wdGlvbnMuIgorbXNnc3RyICIiCisiVG9kYXMgbGFzIEI8T3BjaW9uZXMgZGUgYW7DoWxpc2lzPiwgYSBleGNlcGNpw7NuIGRlIMKrLXbCuywgc29uIGNvbXBhdGlibGVzIGEgIgorInBhcnRpciBkZSBsYSB2ZXJzacOzbiAxLjE0LjE2IHkgcG9zdGVyaW9yZXMgZGUgQjxkcGtnPi4gUHVlZGUgcXVlIGxvcyAiCisiYW5hbGl6YWRvcmVzIGRlIGZvcm1hdG9zIGRlIHJlZ2lzdHJvIGRlIGNhbWJpb3MgYWRlbcOhcyBkZSBJPGRlYmlhbj4geSAiCisicHJvY2VkZW50ZXMgZGUgb3RyYXMgZnVlbnRlcyBubyBhY2VwdGVuIHRvZGFzIGxhcyBvcGNpb25lcy4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTE2CisjLCBuby13cmFwCittc2dpZCAiQjxkZWJpYW4vY2hhbmdlbG9nPiIKK21zZ3N0ciAiQjxkZWJpYW4vY2hhbmdlbG9nPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjEyMgorbXNnaWQgIiIKKyJUaGUgY2hhbmdlbG9nIGZpbGUsIHVzZWQgdG8gb2J0YWluIHZlcnNpb24tZGVwZW5kZW50IGluZm9ybWF0aW9uIGFib3V0IHRoZSAiCisic291cmNlIHBhY2thZ2UsIHN1Y2ggYXMgdGhlIHVyZ2VuY3kgYW5kIGRpc3RyaWJ1dGlvbiBvZiBhbiB1cGxvYWQsIHRoZSAiCisiY2hhbmdlcyBtYWRlIHNpbmNlIGEgcGFydGljdWxhciByZWxlYXNlLCBhbmQgdGhlIHNvdXJjZSB2ZXJzaW9uIG51bWJlciAiCisiaXRzZWxmLiIKK21zZ3N0ciAiIgorIkVsIGZpY2hlcm8gZGUgcmVnaXN0cm8gZGUgY2FtYmlvcyBzZSB1c2EgcGFyYSBvYnRlbmVyIGluZm9ybWFjacOzbiAiCisiZGVwZW5kaWVudGUgZGUgbGEgdmVyc2nDs24gYWNlcmNhIGRlbCBwYXF1ZXRlIGZ1ZW50ZSwgYXPDrSBjb21vIGxhIHVyZ2VuY2lhIHkgIgorImxhIGRpc3RyaWJ1Y2nDs24gZGUgdW5hIHN1YmlkYSwgbG9zIGNhbWJpb3MgcmVhbGl6YWRvcyBkZXNkZSB1bmEgdmVyc2nDs24gZW4gIgorImNvbmNyZXRvIHkgZWwgcHJvcGlvIG7Dum1lcm8gZGUgdmVyc2nDs24gZGUgbGEgZnVlbnRlLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjEyOQorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDA3LCAyMDA4IEZyYW5rIExpY2h0ZW5oZWxkIgorbXNnc3RyICJDb3B5cmlnaHQgXFwoY28gMjAwNywgMjAwOCBGcmFuayBMaWNodGVuaGVsZCIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctcXVlcnkuMToxCisjLCBuby13cmFwCittc2dpZCAiZHBrZy1xdWVyeSIKK21zZ3N0ciAiZHBrZy1xdWVyeSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjQKK21zZ2lkICJkcGtnLXF1ZXJ5IC0gYSB0b29sIHRvIHF1ZXJ5IHRoZSBkcGtnIGRhdGFiYXNlIgorbXNnc3RyICJkcGtnLXF1ZXJ5IC0gVW5hIGhlcnJhbWllbnRhIHBhcmEgY29uc3VsdGFyIGxhIGJhc2UgZGUgZGF0b3MgZGUgZHBrZyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjgKK21zZ2lkICJCPGRwa2ctcXVlcnk+IFtJPG9wdGlvbj4uLi5dIEk8Y29tbWFuZD4iCittc2dzdHIgIkI8ZHBrZy1xdWVyeT4gW0k8b3BjacOzbj4uLi5dIEk8b3JkZW4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6MTIKK21zZ2lkICIiCisiQjxkcGtnLXF1ZXJ5PiBpcyBhIHRvb2wgdG8gc2hvdyBpbmZvcm1hdGlvbiBhYm91dCBwYWNrYWdlcyBsaXN0ZWQgaW4gdGhlICIKKyJCPGRwa2c+IGRhdGFiYXNlLiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1xdWVyeT4gZXMgdW5hIGhlcnJhbWllbnRhIHF1ZSBtdWVzdHJhIGluZm9ybWFjacOzbiBzb2JyZSBwYXF1ZXRlcyAiCisibGlzdGFkb3MgZW4gbGEgYmFzZSBkZSBkYXRvcyBkZSBCPGRwa2c+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcXVlcnkuMToxNAorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPC1sPiwgQjwtLWxpc3Q+IEk8cGFja2FnZS1uYW1lLXBhdHRlcm4+Li4uIgorbXNnaWQgIkI8LWw+LCBCPC0tbGlzdD4gW0k8cGFja2FnZS1uYW1lLXBhdHRlcm4+Li4uXSIKK21zZ3N0ciAiQjwtbD4sIEI8LS1saXN0PiBJPHBhdHLDs24tbm9tYnJlLXBhcXVldGU+Li4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6MjQKK21zZ2lkICIiCisiTGlzdCBwYWNrYWdlcyBtYXRjaGluZyBnaXZlbiBwYXR0ZXJuLiBJZiBubyBJPHBhY2thZ2UtbmFtZS1wYXR0ZXJuPiBpcyAiCisiZ2l2ZW4sIGxpc3QgYWxsIHBhY2thZ2VzIGluIEk8L3Zhci9saWIvZHBrZy9zdGF0dXM+LCBleGNsdWRpbmcgdGhlIG9uZXMgIgorIm1hcmtlZCBhcyBub3QtaW5zdGFsbGVkIChpLmUuIHRob3NlIHdoaWNoIGhhdmUgYmVlbiBwcmV2aW91c2x5IHB1cmdlZCkuICIKKyJOb3JtYWwgc2hlbGwgd2lsZGNoYXJzIGFyZSBhbGxvd2VkIGluIEk8cGFja2FnZS1uYW1lLXBhdHRlcm4+LiBQbGVhc2Ugbm90ZSAiCisieW91IHdpbGwgcHJvYmFibHkgaGF2ZSB0byBxdW90ZSBJPHBhY2thZ2UtbmFtZS1wYXR0ZXJuPiB0byBwcmV2ZW50IHRoZSBzaGVsbCAiCisiZnJvbSBwZXJmb3JtaW5nIGZpbGVuYW1lIGV4cGFuc2lvbi4gRm9yIGV4YW1wbGUgdGhpcyB3aWxsIGxpc3QgYWxsIHBhY2thZ2UgIgorIm5hbWVzIHN0YXJ0aW5nIHdpdGggYGBsaWJjNicnOiIKK21zZ3N0ciAiIgorIkxpc3RhIGxvcyBwYXF1ZXRlcyBxdWUgZW5jYWphbiBjb24gZWwgcGF0csOzbiBkYWRvLiBTaSBubyBzZSBlbnRyZWdhIHVuICIKKyJJPHBhdHLDs24tbm9tYnJlLXBhcXVldGU+LCBsaXN0YSBsb3MgcGFxdWV0ZXMgZW4gSTwvdmFyL2xpYi9kcGtnL3N0YXR1cz4sICIKKyJleGNsdXllbmRvIGFxdWVsbG9zIG1hcmNhZG9zIGNvbW8gbm8gaW5zdGFsYWRvcyAoZXN0byBlcywgYXF1ZWxsb3MgIgorInByZXZpYW1lbnRlIHB1cmdhZG9zKS4gUHVlZGUgdXNhciBsb3MgY29tb2RpbmVzIGhhYml0dWFsZXMgZGVsIGludMOpcnByZXRlIGRlICIKKyLDs3JkZW5lcyBlbiBlbCBJPHBhdHLDs24tbm9tYnJlLXBhcXVldGU+LiBUZW5nYSBlbiBjdWVudGEgcXVlIHBvc2libGVtZW50ZSAiCisidGVuZ2EgcXVlIGVudHJlY29taWxsYXIgSTxwYXRyw7NuLW5vbWJyZS1wYXF1ZXRlPiBwYXJhIGV2aXRhciBxdWUgZWwgIgorImludMOpcnByZXRlIHJlYWxpY2UgdW5hIGV4cGFuc2nDs24gZGVsIG5vbWJyZSBkZWwgZmljaGVyby4gUG9yIGVqZW1wbG8sIGxvICIKKyJzaWd1aWVudGUgbGlzdGEgdG9kb3MgbG9zIHBhcXVldGVzIHF1ZSBlbXBpZXphbiBjb24gwqtsaWJjNsK7LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjI3CisjLCBuby13cmFwCittc2dpZCAiICBCPGRwa2ctcXVlcnkgLWwgXFwoYXFsaWJjNipcXChhcT5cbiIKK21zZ3N0ciAiICBCPGRwa2ctcXVlcnkgLWwgXFwoYXFsaWJjNipcXChhcT5cbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjMxCittc2dpZCAiIgorIlRoZSBmaXJzdCB0aHJlZSBjb2x1bW5zIG9mIHRoZSBvdXRwdXQgc2hvdyB0aGUgZGVzaXJlZCBhY3Rpb24sIHRoZSBwYWNrYWdlICIKKyJzdGF0dXMsIGFuZCBlcnJvcnMsIGluIHRoYXQgb3JkZXIuIgorbXNnc3RyICIiCisiTGFzIHRyZXMgcHJpbWVyYXMgY29sdW1uYXMgZGUgbGEgc2FsaWRhIG11ZXN0cmFuIGxhIGFjY2nDs24gZGVzZWFkYSwgZWwgIgorImVzdGFkbyBkZWwgcGFxdWV0ZSBhc8OtIGNvbW8gZXJyb3JlcywgZW4gZXN0ZSBvcmRlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMTozMworbXNnaWQgIkRlc2lyZWQgYWN0aW9uOiIKK21zZ3N0ciAiQWNjacOzbiBkZXNlYWRhOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjM5CisjLCBuby13cmFwCittc2dpZCAiIgorIiAgdSA9IFVua25vd25cbiIKKyIgIGkgPSBJbnN0YWxsXG4iCisiICBoID0gSG9sZFxuIgorIiAgciA9IFJlbW92ZVxuIgorIiAgcCA9IFB1cmdlXG4iCittc2dzdHIgIiIKKyIgIHUgPSBEZXNjb25vY2lkYVxuIgorIiAgaSA9IEluc3RhbGFyXG4iCisiICBoID0gUmV0ZW5lclxuIgorIiAgciA9IEVsaW1pbmFyXG4iCisiICBwID0gUHVyZ2FyXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMTo0MgorbXNnaWQgIlBhY2thZ2Ugc3RhdHVzOiIKK21zZ3N0ciAiRXN0YWRvIGRlbCBwYXF1ZXRlIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6NTEKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiICBuID0gTm90LWluc3RhbGxlZFxuIgorIiAgYyA9IENvbmZpZy1maWxlc1xuIgorIiAgSCA9IEhhbGYtaW5zdGFsbGVkXG4iCisiICBVID0gVW5wYWNrZWRcbiIKKyIgIEYgPSBIYWxmLWNvbmZpZ3VyZWRcbiIKKyIgIFcgPSBUcmlnZ2Vycy1hd2FpdGluZ1xuIgorIiAgdCA9IFRyaWdnZXJzLXBlbmRpbmdcbiIKKyIgIGkgPSBJbnN0YWxsZWRcbiIKK21zZ3N0ciAiIgorIiAgbiA9IE5vIGluc3RhbGFkb1xuIgorIiAgYyA9IEZpY2hlcm9zIGRlIGNvbmZpZ3VyYWNpw7NuXG4iCisiICBIID0gUGFyY2lhbG1lbnRlIGluc3RhbGFkb1xuIgorIiAgVSA9IERlc2VtcGFxdWV0YWRvXG4iCisiICBGID0gUGFyY2lhbG1lbnRlIGNvbmZpZ3VyYWRvXG4iCisiICBXID0gRGlzcGFyYWRvcmVzIGVzcGVyYW5kb1xuIgorIiAgdCA9IERpc3BhcmFkb3JlcyBwZW5kaWVudGVzXG4iCisiICBpID0gSW5zdGFsYWRvXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMTo1NAorbXNnaWQgIkVycm9yIGZsYWdzOiIKK21zZ3N0ciAiTWFyY2FzIGRlIGVycm9yOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjU3CisjLCBuby13cmFwCittc2dpZCAiIgorIiAgRTxsdD5lbXB0eUU8Z3Q+ID0gKG5vbmUpXG4iCisiICBSID0gUmVpbnN0LXJlcXVpcmVkXG4iCittc2dzdHIgIiIKKyIgIEU8bHQ+ZW1wdHlFPGd0PiA9IChub25lKVxuIgorIiAgUiA9IFJlaW5zdC1yZXF1aXJlZFxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6NjIKK21zZ2lkICIiCisiQW4gdXBwZXJjYXNlIHN0YXR1cyBvciBlcnJvciBsZXR0ZXIgaW5kaWNhdGVzIHRoZSBwYWNrYWdlIGlzIGxpa2VseSB0byBjYXVzZSAiCisic2V2ZXJlIHByb2JsZW1zLiBQbGVhc2UgcmVmZXIgdG8gQjxkcGtnPigxKSBmb3IgaW5mb3JtYXRpb24gYWJvdXQgdGhlIGFib3ZlICIKKyJzdGF0ZXMgYW5kIGZsYWdzLiIKK21zZ3N0ciAiIgorIlVuIGVzdGFkbyBjb24gbWF5w7pzY3VsYSBvIHVuYSBsZXRyYSBkZSBlcnJvciBpbmRpY2EgcXVlIGVzIHBvc2libGUgcXVlIGVsICIKKyJjYXVzZSBwcm9ibGVtYXMgc2VyaW9zLiBQYXJhIG3DoXMgaW5mb3JtYWNpw7NuIGFjZXJjYSBkZSBsb3MgZXN0YWRvcyB5IG1hcmNhcyAiCisiY29uc3VsdGUgQjxkcGtnPigxKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMTo2NworbXNnaWQgIiIKKyJUaGUgb3V0cHV0IGZvcm1hdCBvZiB0aGlzIG9wdGlvbiBpcyBub3QgY29uZmlndXJhYmxlLCBidXQgdmFyaWVzICIKKyJhdXRvbWF0aWNhbGx5IHRvIGZpdCB0aGUgdGVybWluYWwgd2lkdGguIEl0IGlzIGludGVuZGVkIGZvciBodW1hbiByZWFkZXJzLCAiCisiYW5kIGlzIG5vdCBlYXNpbHkgbWFjaGluZS1yZWFkYWJsZS4gU2VlIEI8LVc+IChCPC0tc2hvdz4pICBhbmQgQjwtLSIKKyJzaG93Zm9ybWF0PiBmb3IgYSB3YXkgdG8gY29uZmlndXJlIHRoZSBvdXRwdXQgZm9ybWF0LiIKK21zZ3N0ciAiIgorIkVsIGZvcm1hdG8gZGUgbGEgc2FsaWRhIGRlIGVzdGEgb3BjacOzbiBubyBzZSBwdWVkZSBtb2RpZmljYXIsIHBlcm8gdmFyw61hICIKKyJhdXRvbcOhdGljYW1lbnRlIHBhcmEgZW5jYWphciBlbCBhbmNobyBkZSBsYSB0ZXJtaW5hbC4gRXN0byBzZSBoYWNlIHBhcmEgIgorImxlY3RvcmVzIGh1bWFub3MsIHBlcm8gbm8gZmFjaWxpdGEgc3UgbGVjdHVyYSBwb3IgZWwgc2lzdGVtYS4gQ29uc3VsdGUgQjwtVz4gIgorIihCPC0tc2hvdz4pIHkgQjwtLXNob3dmb3JtYXQ+ICBwYXJhIHZlciB1bmEgbWFuZXJhIGRlIGNvbmZpZ3VyYXIgZWwgZm9ybWF0byAiCisiZGUgbGEgc2FsaWRhLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcXVlcnkuMTo2NworIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPC1XPiwgQjwtLXNob3c+IEk8cGFja2FnZS1uYW1lLXBhdHRlcm4+Li4uIgorbXNnaWQgIkI8LVc+LCBCPC0tc2hvdz4gW0k8cGFja2FnZS1uYW1lLXBhdHRlcm4+Li4uXSIKK21zZ3N0ciAiQjwtVz4sIEI8LS1zaG93PiBJPHBhdHLDs24tbm9tYnJlLXBhcXVldGU+Li4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6NzQKK21zZ2lkICIiCisiSnVzdCBsaWtlIHRoZSBCPC0tbGlzdD4gb3B0aW9uIHRoaXMgd2lsbCBsaXN0IGFsbCBwYWNrYWdlcyBtYXRjaGluZyB0aGUgIgorImdpdmVuIHBhdHRlcm4uIEhvd2V2ZXIgdGhlIG91dHB1dCBjYW4gYmUgY3VzdG9taXplZCB1c2luZyB0aGUgQjwtLSIKKyJzaG93Zm9ybWF0PiBvcHRpb24uICBUaGUgZGVmYXVsdCBvdXRwdXQgZm9ybWF0IGdpdmVzIG9uZSBsaW5lIHBlciBtYXRjaGluZyAiCisicGFja2FnZSwgZWFjaCBsaW5lIGhhdmluZyB0aGUgbmFtZSBhbmQgaW5zdGFsbGVkIHZlcnNpb24gb2YgdGhlIHBhY2thZ2UsICIKKyJzZXBhcmF0ZWQgYnkgYSB0YWIuIgorbXNnc3RyICIiCisiQWwgaWd1YWwgcXVlIGxhIG9wY2nDs24gQjwtLWxpc3Q+LCBlc3RvIGxpc3RhIHRvZG9zIGxvcyBwYXF1ZXRlcyBxdWUgZW5jYWphbiAiCisiY29uIGVsIHBhdHLDs24gZGFkby4gUG9yIG90cmEgcGFydGUsIHB1ZWRlIGNvbmZpZ3VyYXIgbGEgc2FsaWRhIHVzYW5kbyBsYSAiCisib3BjacOzbiBCPC0tc2hvd2Zvcm1hdD4uIEVsIGZvcm1hdG8gcHJlZGVmaW5pZG8gZGUgbGEgc2FsaWRhIGRhIHVuYSBsw61uZWEgcG9yICIKKyJjYWRhIHBhcXVldGUgcXVlIGVuY2FqZSwgbW9zdHJhbmRvIGVsIG5vbWJyZSB5IGxhIHZlcnNpw7NuIGluc3RhbGFkYSwgeSAiCisic2VwYXJhZG9zIHBvciB1bmEgdGFidWxhY2nDs24uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1xdWVyeS4xOjc0CisjLCBuby13cmFwCittc2dpZCAiQjwtcz4sIEI8LS1zdGF0dXM+IEk8cGFja2FnZS1uYW1lPi4uLiIKK21zZ3N0ciAiQjwtcz4sIEI8LS1zdGF0dXM+IEk8bm9tYnJlLXBhcXVldGU+Li4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6NzkKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlJlcG9ydCBzdGF0dXMgb2Ygc3BlY2lmaWVkIHBhY2thZ2UuIFRoaXMganVzdCBkaXNwbGF5cyB0aGUgZW50cnkgaW4gdGhlICIKKyN8ICJpbnN0YWxsZWQgcGFja2FnZSBzdGF0dXMgZGF0YWJhc2UuIgorbXNnaWQgIiIKKyJSZXBvcnQgc3RhdHVzIG9mIHNwZWNpZmllZCBwYWNrYWdlLiBUaGlzIGp1c3QgZGlzcGxheXMgdGhlIGVudHJ5IGluIHRoZSAiCisiaW5zdGFsbGVkIHBhY2thZ2Ugc3RhdHVzIGRhdGFiYXNlLiBXaGVuIG11bHRpcGxlIEk8cGFja2FnZS1uYW1lPiBhcmUgbGlzdGVkLCAiCisidGhlIHJlcXVlc3RlZCBzdGF0dXMgZW50cmllcyBhcmUgc2VwYXJhdGVkIGJ5IGFuIGVtcHR5IGxpbmUuIgorbXNnc3RyICIiCisiSW5mb3JtYSBkZWwgZXN0YWRvIGRlbCBwYXF1ZXRlIGRlZmluaWRvLiBFc3RvIHPDs2xvIG11ZXN0cmEgbGEgZW50cmFkYSBkZSBsb3MgIgorInBhcXVldGVzIGNvbiBlbCBlc3RhZG8gZGUgaW5zdGFsYWRvIGVuIGxhIGJhc2UgZGUgZGF0b3MuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1xdWVyeS4xOjc5CisjLCBuby13cmFwCittc2dpZCAiQjwtTD4sIEI8LS1saXN0ZmlsZXM+IEk8cGFja2FnZS1uYW1lPi4uLiIKK21zZ3N0ciAiQjwtTD4sIEI8LS1saXN0ZmlsZXM+IEk8bm9tYnJlLXBhcXVldGU+Li4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6ODUKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIkxpc3QgZmlsZXMgaW5zdGFsbGVkIHRvIHlvdXIgc3lzdGVtIGZyb20gSTxwYWNrYWdlLW5hbWU+LiAgSG93ZXZlciwgbm90ZSAiCisjfCAidGhhdCBmaWxlcyBjcmVhdGVkIGJ5IHBhY2thZ2Utc3BlY2lmaWMgaW5zdGFsbGF0aW9uLXNjcmlwdHMgYXJlIG5vdCAiCisjfCAibGlzdGVkLiIKK21zZ2lkICIiCisiTGlzdCBmaWxlcyBpbnN0YWxsZWQgdG8geW91ciBzeXN0ZW0gZnJvbSBJPHBhY2thZ2UtbmFtZT4uIFdoZW4gbXVsdGlwbGUgIgorIkk8cGFja2FnZS1uYW1lPiBhcmUgbGlzdGVkLCB0aGUgcmVxdWVzdGVkIGxpc3RzIG9mIGZpbGVzIGFyZSBzZXBhcmF0ZWQgYnkgYW4gIgorImVtcHR5IGxpbmUuIEhvd2V2ZXIsIG5vdGUgdGhhdCBmaWxlcyBjcmVhdGVkIGJ5IHBhY2thZ2Utc3BlY2lmaWMgIgorImluc3RhbGxhdGlvbi1zY3JpcHRzIGFyZSBub3QgbGlzdGVkLiIKK21zZ3N0ciAiIgorIkxpc3RhIGxvcyBmaWNoZXJvcyBxdWUgSTxub21icmUtcGFxdWV0ZT4gY3Jlw7MgZW4gZWwgc2lzdGVtYS4gUG9yIG90cmEgcGFydGUsICIKKyJ0ZW5nYSBlbiBjdWVudGEgcXVlIGxvcyBmaWNoZXJvcyBjcmVhZG9zIHBvciBsb3Mgc2NyaXB0cyBkZSBpbnN0YWxhY2nDs24gIgorImVzcGVjw61maWNvcyBkZWwgcGFxdWV0ZSBubyBhcGFyZWNlcsOhbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXF1ZXJ5LjE6ODUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1jPiwgQjwtLWNvbnRyb2wtcGF0aD4gSTxwYWNrYWdlLW5hbWU+IFtJPGNvbnRyb2wtZmlsZT5dIgorbXNnc3RyICJCPC1jPiwgQjwtLWNvbnRyb2wtcGF0aD4gSTxub21icmUtcGFxdWV0ZT4gW0k8ZmljaGVyby1jb250cm9sPl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMTo5MworbXNnaWQgIiIKKyJMaXN0IHBhdGhzIGZvciBjb250cm9sIGZpbGVzIGluc3RhbGxlZCB0byB5b3VyIHN5c3RlbSBmcm9tIEk8cGFja2FnZS1uYW1lPi4gICIKKyJJZiBJPGNvbnRyb2wtZmlsZT4gaXMgc3BlY2lmaWVkIHRoZW4gb25seSBsaXN0IHRoZSBwYXRoIGZvciB0aGF0IGNvbnRyb2wgIgorImZpbGUgaWYgaXQgaXMgcHJlc2VudC4gQjxXYXJuaW5nPjogdGhpcyBjb21tYW5kIGlzIHNlbWktcHVibGljLCBpdCBzaG91bGQgYmUgIgorInVzZWQgb25seSBhcyBhIGxhc3QgcmVzb3J0IHNvbHV0aW9uLCBhbmQgaWYgbm8gb3RoZXIgaW50ZXJmYWNlIGlzIGF2YWlsYWJsZS4gIgorIkl0IG1pZ2h0IGdldCBkZXByZWNhdGVkIGxhdGVyIG9uIGlmIGJldHRlciBpbnRlcmZhY2VzIG9yIHRoZSBjdXJyZW50ICIKKyJhcmNoaXRlY3R1cmFsIGRlZmljaWVuY2llcyBoYXZlIGJlZW4gc29sdmVkLiIKK21zZ3N0ciAiIgorIkxpc3RhIGxhcyBydXRhcyBkZSBsb3MgZmljaGVyb3MgZGUgY29udHJvbCBkZSBJPG5vbWJyZS1wYXF1ZXRlPiBpbnN0YWxhZG9zICIKKyJlbiBlbCBzaXN0ZW1hLiBTaSBzZSBkZWZpbmUgSTxmaWNoZXJvLWNvbnRyb2w+LCBzw7NsbyBzZSBtb3N0cmFyw6EgbGEgcnV0YSBkZSAiCisiZXNlIGZpY2hlcm8gZGUgY29udHJvbC4gQjxBZHZlcnRlbmNpYT46IGVzdGEgb3JkZW4gZXMgc2VtaS1ww7pibGljYSwgeSBzw7NsbyAiCisic2UgZGViZXLDrWEgdXNhciBjb21vIGxhIMO6bHRpbWEgc29sdWNpw7NuIHkgZW4gY2FzbyBkZSBubyBkaXNwb25lciBkZSBuaW5ndW5hICIKKyJvdHJhIGludGVyZmF6LiBQdWVkZSBxdWUgcXVlZGUgb2Jzb2xldG8gZW4gZWwgZnV0dXJvIGVuIGNhc28gZGUgYXBhcmVjZXIgIgorIm1lam9yZXMgaW50ZXJmYWNlcywgbyBzaSBzZSBzb2x1Y2lvbmFuIGxhcyBkZWZpY2llbmNpYXMgYWN0dWFsZXMgZGUgc3UgIgorImFycXVpdGVjdHVyYS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXF1ZXJ5LjE6OTMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1TPiwgQjwtLXNlYXJjaD4gSTxmaWxlbmFtZS1zZWFyY2gtcGF0dGVybj4uLi4iCittc2dzdHIgIkI8LVM+LCBCPC0tc2VhcmNoPiBJPHBhdHLDs24tYsO6c3F1ZWRhLWZpY2hlcm8+Li4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6OTkKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlNlYXJjaCBmb3IgYSBmaWxlbmFtZSBmcm9tIGluc3RhbGxlZCBwYWNrYWdlcy4gQWxsIHN0YW5kYXJkIHNoZWxsICIKKyN8ICJ3aWxkY2hhcnMgY2FuIGJlIHVzZWQgaW4gdGhlIHBhdHRlcm4uIFRoaXMgY29tbWFuZCB3aWxsIG5vdCBsaXN0IGV4dHJhICIKKyN8ICJmaWxlcyBjcmVhdGVkIGJ5IG1haW50YWluZXIgc2NyaXB0cywgbm9yIHdpbGwgaXQgbGlzdCBhbHRlcm5hdGl2ZXMuIgorbXNnaWQgIiIKKyJTZWFyY2ggZm9yIHBhY2thZ2VzIHRoYXQgb3duIGZpbGVzIGNvcnJlc3BvbmRpbmcgdG8gdGhlIGdpdmVuIHBhdHRlcm4uICAiCisiU3RhbmRhcmQgc2hlbGwgd2lsZGNoYXJzIGNhbiBiZSB1c2VkIGluIHRoZSBwYXR0ZXJuLiAgVGhpcyBjb21tYW5kIHdpbGwgbm90ICIKKyJsaXN0IGV4dHJhIGZpbGVzIGNyZWF0ZWQgYnkgbWFpbnRhaW5lciBzY3JpcHRzLCBub3Igd2lsbCBpdCBsaXN0ICIKKyJhbHRlcm5hdGl2ZXMuIgorbXNnc3RyICIiCisiQnVzY2EgdW4gZmljaGVybyBlbnRyZSBsb3MgcGFxdWV0ZXMgaW5zdGFsYWRvcy4gUHVlZGUgdXNhciB0b2RvcyBsb3MgIgorImNvbW9kaW5lcyBlc3TDoW5kYXIgZGUgaW50w6lycHJldGUgZGUgw7NyZGVuZXMgZW4gZWwgcGF0csOzbi4gRXN0YSBvcmRlbiBubyAiCisibGlzdGEgbG9zIGZpY2hlcm9zIGFkaWNpb25hbGVzIGNyZWFkb3MgcG9yIGVsIHNjcmlwdCBkZWwgcmVzcG9uc2FibGUgZGVsICIKKyJwYXF1ZXRlLCBuaSB0YW1wb2NvIGFsdGVybmF0aXZhcy4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXF1ZXJ5LjE6OTkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1wPiwgQjwtLXByaW50LWF2YWlsPiBJPHBhY2thZ2UtbmFtZT4uLi4iCittc2dzdHIgIkI8LXA+LCBCPC0tcHJpbnQtYXZhaWw+IEk8bm9tYnJlLXBhcXVldGU+Li4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6MTA1CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJEaXNwbGF5IGRldGFpbHMgYWJvdXQgSTxwYWNrYWdlLW5hbWU+LCBhcyBmb3VuZCBpbiBJPC92YXIvbGliL2Rwa2cvIgorI3wgImF2YWlsYWJsZT4uIFVzZXJzIG9mIEFQVC1iYXNlZCBmcm9udGVuZHMgc2hvdWxkIHVzZSBCPGFwdC1jYWNoZSBzaG93PiAiCisjfCAiSTxwYWNrYWdlLW5hbWU+IGluc3RlYWQgYXMgdGhlIEk8YXZhaWxhYmxlPiBmaWxlIGlzIG9ubHkga2VwdCB1cC10by1kYXRlICIKKyN8ICJ3aGVuIHVzaW5nIEI8ZHNlbGVjdD4uIgorbXNnaWQgIiIKKyJEaXNwbGF5IGRldGFpbHMgYWJvdXQgSTxwYWNrYWdlLW5hbWU+LCBhcyBmb3VuZCBpbiBJPC92YXIvbGliL2Rwa2cvIgorImF2YWlsYWJsZT4uIFdoZW4gbXVsdGlwbGUgSTxwYWNrYWdlLW5hbWU+IGFyZSBsaXN0ZWQsIHRoZSByZXF1ZXN0ZWQgIgorIkk8YXZhaWxhYmxlPiBlbnRyaWVzIGFyZSBzZXBhcmF0ZWQgYnkgYW4gZW1wdHkgbGluZS4iCittc2dzdHIgIiIKKyJNdWVzdHJhIGRldGFsbGVzIGRlIEk8bm9tYnJlLXBhcXVldGU+LCB0YWwgeSBjb21vIGFwYXJlY2UgZW4gSTwvdmFyL2xpYi9kcGtnLyIKKyJhdmFpbGFibGU+LiBMb3MgdXN1YXJpb3MgZGUgaW50ZXJmYWNlcyBkZSB1c3VhcmlvIGJhc2Fkb3MgZW4gQVBUIGRlYmVyw61hbiAiCisidXNhciBCPGFwdC1jYWNoZSBzaG93PiBJPG5vbWJyZS1wYXF1ZXRlPiwgeWEgcXVlIGVsIGZpY2hlcm8gSTxhdmFpbGFibGU+ICIKKyJzw7NsbyBzZSBlbmN1ZW50cmEgYWwgZMOtYSBzaSB1c2EgZHNlbGVjdC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMToxMTAKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIkRpc3BsYXkgZGV0YWlscyBhYm91dCBJPHBhY2thZ2UtbmFtZT4sIGFzIGZvdW5kIGluIEk8L3Zhci9saWIvZHBrZy8iCisjfCAiYXZhaWxhYmxlPi4gVXNlcnMgb2YgQVBULWJhc2VkIGZyb250ZW5kcyBzaG91bGQgdXNlIEI8YXB0LWNhY2hlIHNob3c+ICIKKyN8ICJJPHBhY2thZ2UtbmFtZT4gaW5zdGVhZCBhcyB0aGUgSTxhdmFpbGFibGU+IGZpbGUgaXMgb25seSBrZXB0IHVwLXRvLWRhdGUgIgorI3wgIndoZW4gdXNpbmcgQjxkc2VsZWN0Pi4iCittc2dpZCAiIgorIlVzZXJzIG9mIEFQVC1iYXNlZCBmcm9udGVuZHMgc2hvdWxkIHVzZSBCPGFwdC1jYWNoZSBzaG93PiBJPHBhY2thZ2UtbmFtZT4gIgorImluc3RlYWQgYXMgdGhlIEk8YXZhaWxhYmxlPiBmaWxlIGlzIG9ubHkga2VwdCB1cC10by1kYXRlIHdoZW4gdXNpbmcgIgorIkI8ZHNlbGVjdD4uIgorbXNnc3RyICIiCisiTXVlc3RyYSBkZXRhbGxlcyBkZSBJPG5vbWJyZS1wYXF1ZXRlPiwgdGFsIHkgY29tbyBhcGFyZWNlIGVuIEk8L3Zhci9saWIvZHBrZy8iCisiYXZhaWxhYmxlPi4gTG9zIHVzdWFyaW9zIGRlIGludGVyZmFjZXMgZGUgdXN1YXJpbyBiYXNhZG9zIGVuIEFQVCBkZWJlcsOtYW4gIgorInVzYXIgQjxhcHQtY2FjaGUgc2hvdz4gSTxub21icmUtcGFxdWV0ZT4sIHlhIHF1ZSBlbCBmaWNoZXJvIEk8YXZhaWxhYmxlPiAiCisic8OzbG8gc2UgZW5jdWVudHJhIGFsIGTDrWEgc2kgdXNhIGRzZWxlY3QuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1xdWVyeS4xOjEyMgorIywgbm8td3JhcAorbXNnaWQgIkI8LWY+LCBCPC0tc2hvd2Zvcm1hdD0+STxmb3JtYXQ+IgorbXNnc3RyICJCPC1mPiwgQjwtLXNob3dmb3JtYXQ9Pkk8Zm9ybWF0bz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMToxMjkKK21zZ2lkICJJbiB0aGUgZm9ybWF0IHN0cmluZywgXFwobHFCPFxcZT5cXChycSBpbnRyb2R1Y2VzIGVzY2FwZXM6IgorbXNnc3RyICJFbiBsYSBjYWRlbmEgZGUgZm9ybWF0bywgXFwobHFCPFxcZT5cXChycSBpbnRyb2R1Y2UgZXNjYXBlczoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMToxMzQKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiICAgIEI8XFxlbj4gIG5ld2xpbmVcbiIKKyIgICAgQjxcXGVyPiAgY2FycmlhZ2UgcmV0dXJuXG4iCisiICAgIEI8XFxldD4gIHRhYlxuIgorbXNnc3RyICIiCisiICAgIEI8XFxlbj4gIG51ZXZhIGzDrW5lYVxuIgorIiAgICBCPFxcZXI+ICByZXRvcm5vIGRlIGzDrW5lYVxuIgorIiAgICBCPFxcZXQ+ICB0YWJ1bGFjacOzblxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6MTM5Cittc2dpZCAiIgorIlxcKGxxQjxcXGU+XFwocnEgYmVmb3JlIGFueSBvdGhlciBjaGFyYWN0ZXIgc3VwcHJlc3NlcyBhbnkgc3BlY2lhbCBtZWFuaW5nICIKKyJvZiB0aGUgZm9sbG93aW5nIGNoYXJhY3Rlciwgd2hpY2ggaXMgdXNlZnVsIGZvciBcXChscUI8XFxlPlxcKHJxIGFuZCBcXChscUI8IgorIiQ+XFwocnEuIgorbXNnc3RyICIiCisiXFwobHFCPFxcZT5cXChycSBwb3NpY2lvbmFkbyBhbnRlcyBkZSBjdWFscXVpZXIgb3RybyBjYXLDoWN0ZXIgc3VwcmltZSAiCisiY3VhbHF1aWVyIHNpZ25pZmljYWRvIGVzcGVjaWFsIHF1ZSBwdWVkZSB0ZW5lciBlbCBzaWd1aWVudGUgY2Fyw6FjdGVyLCDDunRpbCAiCisicGFyYSBcXChscUI8XFxlPlxcKHJxIGFuZCBcXChscUI8JD5cXChycS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMToxNDcKK21zZ2lkICIiCisiUGFja2FnZSBpbmZvcm1hdGlvbiBjYW4gYmUgaW5jbHVkZWQgYnkgaW5zZXJ0aW5nIHZhcmlhYmxlIHJlZmVyZW5jZXMgdG8gIgorInBhY2thZ2UgZmllbGRzIHVzaW5nIHRoZSBzeW50YXggXFwobHFCPCR7Pkk8ZmllbGQ+W0I8Oz5JPHdpZHRoPl1CPH0+XFwocnEuICIKKyJGaWVsZHMgYXJlIHByaW50ZWQgcmlnaHQtYWxpZ25lZCB1bmxlc3MgdGhlIHdpZHRoIGlzIG5lZ2F0aXZlIGluIHdoaWNoIGNhc2UgIgorImxlZnQgYWxpZ25tZW50IHdpbGwgYmUgdXNlZC4gVGhlIGZvbGxvd2luZyBJPGZpZWxkPnMgYXJlIHJlY29nbmlzZWQgYnV0IHRoZXkgIgorImFyZSBub3QgbmVjZXNzYXJpbHkgYXZhaWxhYmxlIGluIHRoZSBzdGF0dXMgZmlsZSAob25seSBpbnRlcm5hbCBmaWVsZHMgb3IgIgorImZpZWxkcyBzdG9yZWQgaW4gdGhlIGJpbmFyeSBwYWNrYWdlIGVuZCB1cCBpbiBpdCk6IgorbXNnc3RyICIiCisiUHVlZGUgaW5jbHVpciBpbmZvcm1hY2nDs24gZGVsIHBhcXVldGUgaW5zZXJ0YW5kbyB2YXJpYWJsZXMgZGUgcmVmZXJlbmNpYSBhICIKKyJsb3MgY2FtcG9zIGRlbCBwYXF1ZXRlIHVzYW5kbyBsYSBzaW50YXhpcyBcXChscUI8JHs+STxmaWVsZD5bQjw7Pkk8d2lkdGg+XUI8fSIKKyI+XFwocnEuIExvcyBjYW1wb3Mgc2UgYWxpbmVhbiBhIGxhIGRlcmVjaGEgYSBtZW5vcyBxdWUgZWwgYW5jaG8gc2VhICIKKyJuZWdhdGl2bywgZW4gY3V5byBjYXNvIHNlIGFsaW5lYW4gYSBsYSBpenF1aWVyZGEuIExvcyBzaWd1aWVudGVzIEk8Y2FtcG9zPiAiCisic2UgcmVjb25vY2VuIHBlcm8gbm8gZXN0w6FuIHNpZW1wcmUgZGlzcG9uaWJsZXMgZW4gZWwgZmljaGVybyBkZSBlc3RhZG8gKHPDs2xvICIKKyJzZSBndWFyZGFuIGxvcyBjYW1wb3MgaW50ZXJub3MgbyBjYW1wb3MgY29udGVuaWRvcyBlbiBlbCBwYXF1ZXRlIGJpbmFyaW8pOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjE4MgorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICIiCisjfCAiICAgIEI8QXJjaGl0ZWN0dXJlPlxuIgorI3wgIiAgICBCPEJ1Z3M+XG4iCisjfCAiICAgIEI8Q29uZmZpbGVzPiAoaW50ZXJuYWwpXG4iCisjfCAiICAgIEI8Q29uZmlnLVZlcnNpb24+IChpbnRlcm5hbClcbiIKKyN8ICIgICAgQjxDb25mbGljdHM+XG4iCisjfCAiICAgIEI8QnJlYWtzPlxuIgorI3wgIiAgICBCPERlcGVuZHM+XG4iCisjfCAiICAgIEI8RGVzY3JpcHRpb24+XG4iCisjfCAiICAgIEI8RW5oYW5jZXM+XG4iCisjfCAiICAgIEI8RXNzZW50aWFsPlxuIgorI3wgIiAgICBCPEZpbGVuYW1lPiAoaW50ZXJuYWwsIGRzZWxlY3QgcmVsYXRlZClcbiIKKyN8ICIgICAgQjxIb21lcGFnZT5cbiIKKyN8ICIgICAgQjxJbnN0YWxsZWQtU2l6ZT5cbiIKKyN8ICIgICAgQjxNRDVzdW0+IChpbnRlcm5hbCwgZHNlbGVjdCByZWxhdGVkKVxuIgorI3wgIiAgICBCPE1TRE9TLUZpbGVuYW1lPiAoaW50ZXJuYWwsIGRzZWxlY3QgcmVsYXRlZClcbiIKKyN8ICIgICAgQjxNYWludGFpbmVyPlxuIgorI3wgIiAgICBCPE9yaWdpbj5cbiIKKyN8ICIgICAgQjxQYWNrYWdlPlxuIgorI3wgIiAgICBCPFByZS1EZXBlbmRzPlxuIgorI3wgIiAgICBCPFByaW9yaXR5PlxuIgorI3wgIiAgICBCPFByb3ZpZGVzPlxuIgorI3wgIiAgICBCPFJlY29tbWVuZHM+XG4iCisjfCAiICAgIEI8UmVwbGFjZXM+XG4iCisjfCAiICAgIEI8UmV2aXNpb24+IChvYnNvbGV0ZSlcbiIKKyN8ICIgICAgQjxTZWN0aW9uPlxuIgorI3wgIiAgICBCPFNpemU+IChpbnRlcm5hbCwgZHNlbGVjdCByZWxhdGVkKVxuIgorI3wgIiAgICBCPFNvdXJjZT5cbiIKKyN8ICIgICAgQjxTdGF0dXM+IChpbnRlcm5hbClcbiIKKyN8ICIgICAgQjxTdWdnZXN0cz5cbiIKKyN8ICIgICAgQjxUYWc+ICh1c3VhbGx5IG5vdCBpbiB0aGUgLmRlYiBidXQgaW4gQVBUJ3MgUGFja2FnZXMgZmlsZXMpXG4iCisjfCAiICAgIEI8VHJpZ2dlcnMtQXdhaXRlZD4gKGludGVybmFsKVxuIgorI3wgIiAgICBCPFRyaWdnZXJzLVBlbmRpbmc+IChpbnRlcm5hbClcbiIKKyN8ICIgICAgQjxWZXJzaW9uPlxuIgorbXNnaWQgIiIKKyIgICAgQjxBcmNoaXRlY3R1cmU+XG4iCisiICAgIEI8QnVncz5cbiIKKyIgICAgQjxDb25mZmlsZXM+IChpbnRlcm5hbClcbiIKKyIgICAgQjxDb25maWctVmVyc2lvbj4gKGludGVybmFsKVxuIgorIiAgICBCPENvbmZsaWN0cz5cbiIKKyIgICAgQjxCcmVha3M+XG4iCisiICAgIEI8RGVwZW5kcz5cbiIKKyIgICAgQjxEZXNjcmlwdGlvbj5cbiIKKyIgICAgQjxFbmhhbmNlcz5cbiIKKyIgICAgQjxFc3NlbnRpYWw+XG4iCisiICAgIEI8RmlsZW5hbWU+IChpbnRlcm5hbCwgZnJvbnQtZW5kIHJlbGF0ZWQpXG4iCisiICAgIEI8SG9tZXBhZ2U+XG4iCisiICAgIEI8SW5zdGFsbGVkLVNpemU+XG4iCisiICAgIEI8TUQ1c3VtPiAoaW50ZXJuYWwsIGZyb250LWVuZCByZWxhdGVkKVxuIgorIiAgICBCPE1TRE9TLUZpbGVuYW1lPiAoaW50ZXJuYWwsIGZyb250LWVuZCByZWxhdGVkKVxuIgorIiAgICBCPE1haW50YWluZXI+XG4iCisiICAgIEI8T3JpZ2luPlxuIgorIiAgICBCPFBhY2thZ2U+XG4iCisiICAgIEI8UHJlLURlcGVuZHM+XG4iCisiICAgIEI8UHJpb3JpdHk+XG4iCisiICAgIEI8UHJvdmlkZXM+XG4iCisiICAgIEI8UmVjb21tZW5kcz5cbiIKKyIgICAgQjxSZXBsYWNlcz5cbiIKKyIgICAgQjxSZXZpc2lvbj4gKG9ic29sZXRlKVxuIgorIiAgICBCPFNlY3Rpb24+XG4iCisiICAgIEI8U2l6ZT4gKGludGVybmFsLCBmcm9udC1lbmQgcmVsYXRlZClcbiIKKyIgICAgQjxTb3VyY2U+XG4iCisiICAgIEI8U3RhdHVzPiAoaW50ZXJuYWwpXG4iCisiICAgIEI8U3VnZ2VzdHM+XG4iCisiICAgIEI8VGFnPiAodXN1YWxseSBub3QgaW4gdGhlIC5kZWIgYnV0IGluIHRoZSByZXBvc2l0b3J5IFBhY2thZ2VzIGZpbGVzKVxuIgorIiAgICBCPFRyaWdnZXJzLUF3YWl0ZWQ+IChpbnRlcm5hbClcbiIKKyIgICAgQjxUcmlnZ2Vycy1QZW5kaW5nPiAoaW50ZXJuYWwpXG4iCisiICAgIEI8VmVyc2lvbj5cbiIKK21zZ3N0ciAiIgorIiAgICBCPEFyY2hpdGVjdHVyZT5cbiIKKyIgICAgQjxCdWdzPlxuIgorIiAgICBCPENvbmZmaWxlcz4gKGludGVybm8pXG4iCisiICAgIEI8Q29uZmlnLVZlcnNpb24+IChpbnRlcm5vKVxuIgorIiAgICBCPENvbmZsaWN0cz5cbiIKKyIgICAgQjxCcmVha3M+XG4iCisiICAgIEI8RGVwZW5kcz5cbiIKKyIgICAgQjxEZXNjcmlwdGlvbj5cbiIKKyIgICAgQjxFbmhhbmNlcz5cbiIKKyIgICAgQjxFc3NlbnRpYWw+XG4iCisiICAgIEI8RmlsZW5hbWU+IChpbnRlcm5vLCBkc2VsZWN0KVxuIgorIiAgICBCPEhvbWVwYWdlPlxuIgorIiAgICBCPEluc3RhbGxlZC1TaXplPlxuIgorIiAgICBCPE1ENXN1bT4gKGludGVybm8sIGRzZWxlY3QpXG4iCisiICAgIEI8TVNET1MtRmlsZW5hbWU+IChpbnRlcm5vLCBkc2VsZWN0KVxuIgorIiAgICBCPE1haW50YWluZXI+XG4iCisiICAgIEI8T3JpZ2luPlxuIgorIiAgICBCPFBhY2thZ2U+XG4iCisiICAgIEI8UHJlLURlcGVuZHM+XG4iCisiICAgIEI8UHJpb3JpdHk+XG4iCisiICAgIEI8UHJvdmlkZXM+XG4iCisiICAgIEI8UmVjb21tZW5kcz5cbiIKKyIgICAgQjxSZXBsYWNlcz5cbiIKKyIgICAgQjxSZXZpc2lvbj4gKG9ic29sZXRvKVxuIgorIiAgICBCPFNlY3Rpb24+XG4iCisiICAgIEI8U2l6ZT4gKGludGVybm8sIGRzZWxlY3QpXG4iCisiICAgIEI8U291cmNlPlxuIgorIiAgICBCPFN0YXR1cz4gKGludGVybm8pXG4iCisiICAgIEI8U3VnZ2VzdHM+XG4iCisiICAgIEI8VGFnPiAoZ2VuZXJhbG1lbnRlIG5vIGVuIGVsIMKrLmRlYsK7IHBlcm8gZW4gbG9zIGZpY2hlcm9zXG4iCisiICAgIMKrUGFja2FnZXPCuyBkZSBBUFQpXG4iCisiICAgIEI8VHJpZ2dlcnMtQXdhaXRlZD4gKGludGVybm8pXG4iCisiICAgIEI8VHJpZ2dlcnMtUGVuZGluZz4gKGludGVybm8pXG4iCisiICAgIEI8VmVyc2lvbj5cbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjE5MAorbXNnaWQgIiIKKyJUaGUgZGVmYXVsdCBmb3JtYXQgc3RyaW5nIGlzIFxcKGxxQjwke1BhY2thZ2V9XFxldCR7VmVyc2lvbn1cXGVuPlxcKHJxLiAgIgorIkFjdHVhbGx5LCBhbGwgb3RoZXIgZmllbGRzIGZvdW5kIGluIHRoZSBzdGF0dXMgZmlsZSAoaS5lLiB1c2VyIGRlZmluZWQgIgorImZpZWxkcykgY2FuIGJlIHJlcXVlc3RlZCwgdG9vLiBUaGV5IHdpbGwgYmUgcHJpbnRlZCBhcy1pcywgdGhvdWdoLCBubyAiCisiY29udmVyc2lvbiBub3IgZXJyb3IgY2hlY2tpbmcgaXMgZG9uZSBvbiB0aGVtLiAgVG8gZ2V0IHRoZSBuYW1lIG9mIHRoZSBkcGtnICIKKyJtYWludGFpbmVyIGFuZCB0aGUgaW5zdGFsbGVkIHZlcnNpb24sIHlvdSBjb3VsZCBydW46IgorbXNnc3RyICIiCisiTGEgY2FkZW5hIGRlIGZvcm1hdG8gcG9yIG9taXNpw7NuIGVzIFxcKGxxQjwke1BhY2thZ2V9XFxldCR7VmVyc2lvbn1cXGVuPiIKKyJcXChycS4gRW4gcmVhbGlkYWQsIHB1ZWRlIGNvbnN1bHRhciB0b2RvcyBsb3MgY2FtcG9zIGNvbnRlbmlkb3MgZW4gZWwgIgorImZpY2hlcm8gZGUgZXN0YWRvIChwb3IgZWplbXBsbywgZXRpcXVldGFzIGRlIHVzdWFyaW8pLiBBcGFyZWNlcsOhbiDCq3RhbCAiCisiY3VhbMK7LCBzaW4gY29udmVyc2nDs24gbyByZXZpc2nDs24gZGUgZmFsbG9zLiBQYXJhIG9idGVuZXIgZWwgbm9tYnJlIGRlbCAiCisicmVzcG9uc2FibGUgZGUgZHBrZyB5IGxhIHZlcnNpw7NuIGluc3RhbGFkYSBlamVjdXRlIGxvIHNpZ3VpZW50ZToiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMToxOTMKKyMsIG5vLXdyYXAKK21zZ2lkICIgIEI8ZHBrZy1xdWVyeSAtVyAtZj1cXChhcSR7UGFja2FnZX0gJHtWZXJzaW9ufVxcZXQke01haW50YWluZXJ9XFxlblxcKGFxIGRwa2c+XG4iCittc2dzdHIgIiAgQjxkcGtnLXF1ZXJ5IC1XIC1mPVxcKGFxJHtQYWNrYWdlfSAke1ZlcnNpb259XFxldCR7TWFpbnRhaW5lcn1cXGVuXFwoYXEgZHBrZz5cbiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctcXVlcnkuMToxOTUgZHBrZy1zcGxpdC4xOjE3OSBzdGFydC1zdG9wLWRhZW1vbi44OjI1OQorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM3NAorIywgbm8td3JhcAorbXNnaWQgIkVYSVQgU1RBVFVTIgorbXNnc3RyICJFU1RBRE9TIERFIFNBTElEQSIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcXVlcnkuMToxOTYgZHBrZy1zcGxpdC4xOjE4MCBzdGFydC1zdG9wLWRhZW1vbi44OjI2MAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyODkgdXBkYXRlLWFsdGVybmF0aXZlcy44OjM3NQorIywgbm8td3JhcAorbXNnaWQgIkI8MD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjE5OQorbXNnaWQgIlRoZSByZXF1ZXN0ZWQgcXVlcnkgd2FzIHN1Y2Nlc3NmdWxseSBwZXJmb3JtZWQuIgorbXNnc3RyICJMYSBjb25zdWx0YSByZXF1ZXJpZGEgc2UgZWplY3V0w7MgY29uIMOpeGl0by4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXF1ZXJ5LjE6MTk5IGRwa2ctc3BsaXQuMToxODYgc3RhcnQtc3RvcC1kYWVtb24uODoyNzAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjkyCisjLCBuby13cmFwCittc2dpZCAiQjwxPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6MjAzCittc2dpZCAiIgorIlByb2JsZW1zIHdlcmUgZW5jb3VudGVyZWQgd2hpbGUgcGFyc2luZyB0aGUgY29tbWFuZCBsaW5lIG9yIHBlcmZvcm1pbmcgdGhlICIKKyJxdWVyeSwgaW5jbHVkaW5nIG5vIGZpbGUgb3IgcGFja2FnZSBiZWluZyBmb3VuZCAoZXhjZXB0IGZvciAtLWNvbnRyb2wtcGF0aCkuIgorbXNnc3RyICIiCisiU2UgaGFuIGRldGVjdGFkbyBwcm9ibGVtYXMgYW5hbGl6YW5kbyBsYSBsw61uZWEgZGUgw7NyZGVuZXMgbyByZWFsaXphbmRvIGxhICIKKyJjb25zdWx0YSByZXF1ZXJpZGEsIGFkZW3DoXMgZGUgcXVlIG5vIHNlIGhhbiBlbmNvbnRyYWRvIG5pbmfDum4gZmljaGVybyBvICIKKyJwYXF1ZXRlIChhIGV4Y2VwY2nDs24gZGUgwqstLWNvbnRyb2wtcGF0aMK7KS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMToyMTMKK21zZ2lkICIiCisiVGhpcyBzZXR0aW5nIGluZmx1ZW5jZXMgdGhlIG91dHB1dCBvZiB0aGUgQjwtLWxpc3Q+IG9wdGlvbiBieSBjaGFuZ2luZyB0aGUgIgorIndpZHRoIG9mIGl0cyBvdXRwdXQuIgorbXNnc3RyICIiCisiRXN0YSBvcGNpw7NuIGluZmx1ZW5jaWEgbGEgc2FsaWRhIGRlIEI8LS1saXN0PiBhbCBtb2RpZmljYXIgZWwgYW5jaG8gZGUgbGEgIgorInNhbGlkYS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMToyMTYKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAwMSBXaWNoZXJ0IEFra2VybWFuIgorbXNnc3RyICJDb3B5cmlnaHQgXFwoY28gMjAwMSBXaWNoZXJ0IEFra2VybWFuIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1zY2FucGFja2FnZXMuMToxNQorIywgbm8td3JhcAorbXNnaWQgImRwa2ctc2NhbnBhY2thZ2VzIgorbXNnc3RyICJkcGtnLXNjYW5wYWNrYWdlcyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2FucGFja2FnZXMuMToxOAorbXNnaWQgImRwa2ctc2NhbnBhY2thZ2VzIC0gY3JlYXRlIFBhY2thZ2VzIGluZGV4IGZpbGVzIgorbXNnc3RyICJkcGtnLXNjYW5wYWNrYWdlcyAtIENyZWFjacOzbiBkZSBmaWNoZXJvcyBkZSDDrW5kaWNlIMKrUGFja2FnZXPCuyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2FucGFja2FnZXMuMToyNgorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiQjxkcGtnLXNjYW5wYWNrYWdlcz4gW0k8b3B0aW9ucz5dIEk8YmluYXJ5LWRpcj4gW0k8b3ZlcnJpZGUtZmlsZT4gW0k8cGF0aC0iCisjfCAicHJlZml4Pl1dIEI8RTxndD4+IEk8UGFja2FnZXM+IgorbXNnaWQgIiIKKyJCPGRwa2ctc2NhbnBhY2thZ2VzPiBbSTxvcHRpb24+Li4uXSBJPGJpbmFyeS1kaXI+IFtJPG92ZXJyaWRlLWZpbGU+IFtJPHBhdGgtIgorInByZWZpeD5dXSBCPEU8Z3Q+PiBJPFBhY2thZ2VzPiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1zY2FucGFja2FnZXM+IFtJPG9wY2lvbmVzPl0gSTxkaXJlY3RvcmlvLWJpbmFyaW8+IFtJPGZpY2hlcm8tIgorImFudWxhY2nDs24+IFtJPHByZWZpam8tcnV0YT5dXSBCPEU8Z3Q+PiBJPFBhY2thZ2VzPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2FucGFja2FnZXMuMTozOQorbXNnaWQgIiIKKyJCPGRwa2ctc2NhbnBhY2thZ2VzPiBzb3J0cyB0aHJvdWdoIGEgdHJlZSBvZiBEZWJpYW4gYmluYXJ5IHBhY2thZ2VzIGFuZCAiCisiY3JlYXRlcyBhIFBhY2thZ2VzIGZpbGUsIHVzZWQgYnkgQjxhcHQ+KDgpLCBCPGRzZWxlY3Q+KDEpLCBldGMsIHRvIHRlbGwgdGhlICIKKyJ1c2VyIHdoYXQgcGFja2FnZXMgYXJlIGF2YWlsYWJsZSBmb3IgaW5zdGFsbGF0aW9uLiBUaGVzZSBQYWNrYWdlcyBmaWxlcyBhcmUgIgorInRoZSBzYW1lIGFzIHRob3NlIGZvdW5kIG9uIERlYmlhbiBhcmNoaXZlIHNpdGVzIGFuZCBDRC1ST01zLiBZb3UgbWlnaHQgdXNlICIKKyJCPGRwa2ctc2NhbnBhY2thZ2VzPiB5b3Vyc2VsZiBpZiBtYWtpbmcgYSBkaXJlY3Rvcnkgb2YgbG9jYWwgcGFja2FnZXMgdG8gIgorImluc3RhbGwgb24gYSBjbHVzdGVyIG9mIG1hY2hpbmVzLiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1zY2FucGFja2FnZXM+IGJ1c2NhIHBhcXVldGVzIGJpbmFyaW9zIGRlIERlYmlhbiBlbiB1biDDoXJib2wgZGUgIgorImRpcmVjdG9yaW9zLCBjcmVhbmRvIHVuIGZpY2hlcm8gwqtQYWNrYWdlc8K7IHVzYWRvIHBvciBCPGRzZWxlY3Q+KDgpIHkgb3Ryb3MgIgorInBhcmEgbW9zdHJhciBhbCB1c3VhcmlvIGxvcyBwYXF1ZXRlcyBkaXNwb25pYmxlcyBwYXJhIHN1IGluc3RhbGFjacOzbi4gRXN0b3MgIgorImZpY2hlcm9zIMKrUGFja2FnZXPCuyBzb24gaWTDqW50aWNvcyBhIGxvcyBwcmVzZW50ZXMgZW4gbG9zIGFyY2hpdm9zIGRlIERlYmlhbiAiCisiZW4gSW50ZXJuZXQgbyBlbiBsb3MgZGlzY29zIMOzcHRpY29zLiBCPGRwa2ctc2NhbnBhY2thZ2VzPiBzZSBwdWVkZSB1c2FyIHBhcmEgIgorImNyZWFyIHVuIGRpcmVjdG9yaW8gbG9jYWwgY29uIHBhcXVldGVzIGEgaW5zdGFsYXIgZW4gdW5hIG8gdmFyaWFzIG3DoXF1aW5hcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6NTEKK21zZ2lkICIiCisiQjxOb3RlOj4gSWYgeW91IHdhbnQgdG8gYWNjZXNzIHRoZSBnZW5lcmF0ZWQgUGFja2FnZXMgZmlsZSB3aXRoIEI8YXB0PiB5b3UgIgorIndpbGwgcHJvYmFibHkgbmVlZCB0byBjb21wcmVzcyB0aGUgZmlsZSB3aXRoIEI8YnppcDI+KDEpICAoZ2VuZXJhdGluZyBhICIKKyJQYWNrYWdlcy5iejIgZmlsZSkgb3IgQjxnemlwPigxKSAgKGdlbmVyYXRpbmcgYSBQYWNrYWdlcy5neiBmaWxlKS4gYXB0ICIKKyJpZ25vcmVzIHVuY29tcHJlc3NlZCBQYWNrYWdlcyBmaWxlcyBleGNlcHQgb24gbG9jYWwgYWNjZXNzIChpLmUuICBCPGZpbGU6Ly8+ICIKKyJzb3VyY2VzKS4iCittc2dzdHIgIiIKKyJCPE5vdGE6PiBTaSBkZXNlYSBhY2NlZGVyIGFsIGZpY2hlcm8gwqtQYWNrYWdlc8K7IGdlbmVyYWRvIG1lZGlhbnRlIEI8YXB0PiwgIgorInBvc2libGVtZW50ZSBuZWNlc2l0ZSBjb21wcmltaXIgZWwgZmljaGVybyBjb24gQjxiemlwPigxKSwgZ2VuZXJhbmRvIHVuICIKKyJmaWNoZXJvIMKrUGFja2FnZXMuYnoywrssIG8gQjxnemlwPigxKSwgcXVlIGdlbmVyYXLDrWEgdW4gZmljaGVybyDCq1BhY2thZ2VzLiIKKyJnesK7LiBhcHQgaWdub3JhIGxvcyBmaWNoZXJvcyDCq1BhY2thZ2VzwrsgZGVzY29tcHJpbWlkb3MsIGEgZXhjZXBjacOzbiBkZSBsb3MgIgorImZpY2hlcm9zIGxvY2FsZXMgKHBvciBlamVtcGxvLCBCPGZpbGU6Ly8+IHNvdXJjZXMpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2FucGFja2FnZXMuMTo1OAorbXNnaWQgIiIKKyJJPGJpbmFyeWRpcj4gaXMgdGhlIG5hbWUgb2YgdGhlIHRyZWUgb2YgdGhlIGJpbmFyeSBwYWNrYWdlcyB0byBwcm9jZXNzIChmb3IgIgorImV4YW1wbGUsIEI8Y29udHJpYi9iaW5hcnktaTM4Nj4pLiAgSXQgaXMgYmVzdCB0byBtYWtlIHRoaXMgcmVsYXRpdmUgdG8gdGhlICIKKyJyb290IG9mIHRoZSBEZWJpYW4gYXJjaGl2ZSwgYmVjYXVzZSBldmVyeSBGaWxlbmFtZSBmaWVsZCBpbiB0aGUgbmV3IFBhY2thZ2VzICIKKyJmaWxlIHdpbGwgc3RhcnQgd2l0aCB0aGlzIHN0cmluZy4iCittc2dzdHIgIiIKKyJJPGRpcmVjdG9yaW8tYmluYXJpbz4gZXMgZWwgbm9tYnJlIGRlbCDDoXJib2wgZGUgZGlyZWN0b3Jpb3MgcXVlIGNvbnRpZW5lIGxvcyAiCisicGFxdWV0ZXMgYmluYXJpb3MgIGEgcHJvY2VzYXIgKHBvciBlamVtcGxvLCBCPGNvbnRyaWIvYmluYXJ5LWkzODY+KS4gU2UgIgorInJlY29taWVuZGEgcXVlIGVzdGUgZGlyZWN0b3JpbyBzZWEgcmVsYXRpdm8gYWwgZGlyZWN0b3JpbyBwcmluY2lwYWwgZGVsICIKKyJhcmNoaXZvIGRlIERlYmlhbiwgeWEgcXVlIHRvZG8gZmljaGVybyBsaXN0YWRvIGVuIGVsIG51ZXZvIGZpY2hlcm8gIgorIsKrUGFja2FnZXPCuyBlbXBlemFyw6EgcG9yIGVzdGEgY2FkZW5hIGRlIGNhcmFjdGVyZXMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjYzCittc2dpZCAiIgorIkk8b3ZlcnJpZGVmaWxlPiBpcyB0aGUgbmFtZSBvZiBhIGZpbGUgdG8gcmVhZCB3aGljaCBjb250YWlucyBpbmZvcm1hdGlvbiAiCisiYWJvdXQgaG93IHRoZSBwYWNrYWdlIGZpdHMgaW50byB0aGUgZGlzdHJpYnV0aW9uIChpdCBjYW4gYmUgYSBjb21wcmVzc2VkICIKKyJmaWxlKTsgc2VlIEI8ZGViLW92ZXJyaWRlPig1KS4iCittc2dzdHIgIiIKKyJJPGZpY2hlcm8tb3ZlcnJpZGU+IGVzIGVsIG5vbWJyZSBkZWwgZmljaGVybyBxdWUgY29udGllbmUgaW5mb3JtYWNpw7NuIGFjZXJjYSAiCisiZGUgY8OzbW8gc2UgaW5zdGFsYW4gbG9zIHBhcXVldGVzIGVuIGxhIGRpc3RyaWJ1Y2nDs24gKHB1ZWRlIHNlciB1biBmaWNoZXJvICIKKyJjb21wcmltaWRvKTsgY29uc3VsdGUgQjxkZWItb3ZlcnJpZGU+KDUpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2FucGFja2FnZXMuMTo2NgorbXNnaWQgIiIKKyJJPHBhdGhwcmVmaXg+IGlzIGFuIG9wdGlvbmFsIHN0cmluZyB0byBiZSBwcmVwZW5kZWQgdG8gdGhlIEZpbGVuYW1lIGZpZWxkcy4iCittc2dzdHIgIiIKKyJJPHByZWZpam8tcnV0YT4gZXMgdW5hIGNhZGVuYSBvcGNpb25hbCBxdWUgc2UgYW50ZXBvbmRyw6EgYSBsb3MgY2FtcG9zICIKKyLCq0ZpbGVuYW1lwrsuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjcwCittc2dpZCAiIgorIklmIG1vcmUgdGhhbiBvbmUgdmVyc2lvbiBvZiBhIHBhY2thZ2UgaXMgZm91bmQgb25seSB0aGUgbmV3ZXN0IG9uZSBpcyAiCisiaW5jbHVkZWQgaW4gdGhlIG91dHB1dC4gSWYgdGhleSBoYXZlIHRoZSBzYW1lIHZlcnNpb24gYW5kIG9ubHkgZGlmZmVyIGluICIKKyJhcmNoaXRlY3R1cmUgb25seSB0aGUgZmlyc3Qgb25lIGZvdW5kIGlzIHVzZWQuIgorbXNnc3RyICIiCisiRW4gY2FzbyBkZSBleGlzdGlyIG3DoXMgZGUgdW5hIHZlcnNpw7NuIGRlIHVuIHBhcXVldGUsIHPDs2xvIHNlIG1vc3RyYXLDoSBsYSAiCisiw7psdGltYSBwb3IgbGEgc2FsaWRhLiBTaSBjb21wYXJ0ZW4gbGEgbWlzbWEgdmVyc2nDs24gcGVybyBkaWZpZXJlbiBlbiBsYSAiCisiYXJxdWl0ZWN0dXJhLCBzw7NsbyBzZSB1c2Fyw6EgZWwgcHJpbWVyby4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjcyCisjLCBuby13cmFwCittc2dpZCAiQjwtdD4sIEI8LS10eXBlPiBJPHR5cGU+IgorbXNnc3RyICJCPC10PiwgQjwtLXR5cGU+IEk8dGlwbz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6NzUKK21zZ2lkICJTY2FuIGZvciAqLkk8dHlwZT4gcGFja2FnZXMsIGluc3RlYWQgb2YgKi5kZWIuIgorbXNnc3RyICJCdXNjYSBwYXF1ZXRlcyDCqyouSTx0aXBvPsK7IGVuIHZleiBkZSDCqyouZGViwrsuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zY2FucGFja2FnZXMuMTo3NQorIywgbm8td3JhcAorbXNnaWQgIkI8LXU+LCBCPC0tdWRlYj4iCittc2dzdHIgIkI8LXU+LCBCPC0tdWRlYj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6NzgKK21zZ2lkICJCPE9ic29sZXRlPiBhbGlhcyBmb3IgQjwtdHVkZWI+LiIKK21zZ3N0ciAiQWxpYXMgQjxvYnNvbGV0bz4gcGFyYSBCPC10dWRlYj4uIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1zY2FucGFja2FnZXMuMTo3OCBkcGtnLXNjYW5zb3VyY2VzLjE6NDkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1lPiwgQjwtLWV4dHJhLW92ZXJyaWRlPiBJPGZpbGU+IgorbXNnc3RyICJCPC1lPiwgQjwtLWV4dHJhLW92ZXJyaWRlPiBJPGZpY2hlcm8+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjg0IGRwa2ctc2NhbnNvdXJjZXMuMTo1NAorbXNnaWQgIiIKKyJTY2FuIEk8ZmlsZT4gdG8gZmluZCBzdXBwbGVtZW50YXJ5IG92ZXJyaWRlcyAodGhlIGZpbGUgY2FuIGJlIGNvbXByZXNzZWQpLiAiCisiU2VlIEI8ZGViLWV4dHJhLW92ZXJyaWRlPig1KSAgZm9yIG1vcmUgaW5mb3JtYXRpb24gb24gaXRzIGZvcm1hdC4iCittc2dzdHIgIiIKKyJBbmFsaXphIGVsIEk8ZmljaGVybz4gcGFyYSBlbmNvbnRyYXIgYWx0ZXJuYXRpdmFzIGFkaWNpb25hbGVzIChlbCBmaWNoZXJvICIKKyJwdWVkZSBlc3RhciBkZXNjb21wcmltaWRvKS4gQ29uc3VsdGUgQjxkZWItZXh0cmEtb3ZlcnJpZGU+KDUpIHBhcmEgbcOhcyAiCisiaW5mb3JtYWNpw7NuIGFjZXJjYSBkZWwgZm9ybWF0by4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjg0CisjLCBuby13cmFwCittc2dpZCAiQjwtYT4sIEI8LS1hcmNoPiBJPGFyY2g+IgorbXNnc3RyICJCPC1hPiwgQjwtLWFyY2g+IEk8YXJxdWl0ZWN0dXJhPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2FucGFja2FnZXMuMTo4OAorbXNnaWQgIiIKKyJVc2UgYSBwYXR0ZXJuIGNvbnNpc3Rpbmcgb2YgSTwqX2FsbC5kZWI+IGFuZCBJPCpfYXJjaC5kZWI+IGluc3RlYWQgb2YgIgorInNjYW5uaW5nIGZvciBhbGwgZGVicy4iCittc2dzdHIgIiIKKyJVc2EgdW4gcGF0csOzbiBxdWUgY29uc2lzdGUgZGUgSTwqX2FsbC5kZWI+IHkgSTwqX2FyY2guZGViPiwgZW4gbHVnYXIgZGUgIgorImJ1c2NhciB0b2RvcyBsb3MgwqsuZGViwrsuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zY2FucGFja2FnZXMuMTo4OAorIywgbm8td3JhcAorbXNnaWQgIkI8LW0+LCBCPC0tbXVsdGl2ZXJzaW9uPiIKK21zZ3N0ciAiQjwtbT4sIEI8LS1tdWx0aXZlcnNpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjkxCittc2dpZCAiSW5jbHVkZSBhbGwgZm91bmQgcGFja2FnZXMgaW4gdGhlIG91dHB1dC4iCittc2dzdHIgIkluY2x1eWUgZW4gbGEgc2FsaWRhIHRvZG9zIGxvcyBwYXF1ZXRlcyBlbmNvbnRyYWRvcy4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjkxCisjLCBuby13cmFwCittc2dpZCAiQjwtTT4sIEI8LS1tZWRpdW0+IEk8aWQtc3RyaW5nPiIKK21zZ3N0ciAiQjwtTT4sIEI8LS1tZWRpdW0+IEk8Y2FkZW5hLWlkZW50aWZpY2FjacOzbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6OTYKK21zZ2lkICIiCisiQWRkIGFuIFgtTWVkaXVtIGZpZWxkIGNvbnRhaW5pbmcgdGhlIHZhbHVlIEk8aWQtc3RyaW5nPi4gVGhpcyBmaWVsZCBpcyAiCisicmVxdWlyZWQgaWYgeW91IHdhbnQgdG8gZ2VuZXJhdGUgQjxQYWNrYWdlcy5jZD4gZmlsZXMgZm9yIHVzZSBieSB0aGUgbXVsdGljZCAiCisiYWNjZXNzIG1ldGhvZCBvZiBkc2VsZWN0LiIKK21zZ3N0ciAiIgorIkHDsWFkZSB1biBjYW1wbyDCq1gtTWVkaXVtwrssIHF1ZSBjb25zaXN0ZSBkZWwgdmFsb3IgZGUgbGEgSTxjYWRlbmEtIgorImlkZW50aWZpY2FjacOzbj4uIEVzdGUgY2FtcG8gZXMgbmVjZXNhcmlvIHNpIGRlc2VhIGdlbmVyYXIgZmljaGVyb3MgIgorIkI8UGFja2FnZXMuY2Q+IHBhcmEgc3UgdXNvIGEgdHJhdsOpcyBkZWwgbcOpdG9kbyDCq211bHRpY2TCuyBkZSBkc2VsZWN0LiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6MTAzIHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0NDgKKyMsIG5vLXdyYXAKK21zZ2lkICJESUFHTk9TVElDUyIKK21zZ3N0ciAiRElBR07Dk1NUSUNPUyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2FucGFja2FnZXMuMToxMDkKK21zZ2lkICIiCisiQjxkcGtnLXNjYW5wYWNrYWdlcz4gb3V0cHV0cyB0aGUgdXN1YWwgc2VsZi1leHBsYW5hdG9yeSBlcnJvcnMuIEl0IGFsc28gIgorIndhcm5zIGFib3V0IHBhY2thZ2VzIHRoYXQgYXJlIGluIHRoZSB3cm9uZyBzdWJkaXJlY3RvcnksIGFyZSBkdXBsaWNhdGVkLCAiCisiaGF2ZSBhIEZpbGVuYW1lIGZpZWxkIGluIHRoZWlyIGNvbnRyb2wgZmlsZSwgYXJlIG1pc3NpbmcgZnJvbSB0aGUgb3ZlcnJpZGUgIgorImZpbGUsIG9yIGhhdmUgbWFpbnRhaW5lciBzdWJzdGl0dXRpb25zIHdoaWNoIGRvIG5vdCB0YWtlIGVmZmVjdC4iCittc2dzdHIgIiIKKyJCPGRwa2ctc2NhbnBhY2thZ2VzPiBkZXZ1ZWx2ZSBsb3MgZXJyb3JlcyBhdXRvLWV4cGxpY2F0aXZvcyBoYWJpdHVhbGVzLiAiCisiQWRlbcOhcywgZ2VuZXJhIGF2aXNvcyBzb2JyZSBwYXF1ZXRlcyBwcmVzZW50ZXMgZW4gdW4gc3ViZGlyZWN0b3JpbyAiCisiZXF1aXZvY2FkbywgZHVwbGljYWRvcywgcXVlIHRpZW5lbiB1biBjYW1wbyDCq0ZpbGVuYW1lwrsgZW4gc3UgZmljaGVybyBkZSAiCisiY29udHJvbCwgbm8gYXBhcmVjZW4gZW4gZWwgZmljaGVybyBkZSBhbnVsYWNpw7NuLCBvIHF1ZSBjb250aWVuZW4gYWxndW5hICIKKyJzdXN0aXR1Y2nDs24gZGVsIHJlc3BvbnNhYmxlIGRlbCBwYXF1ZXRlIHF1ZSBubyB0aWVuZSBlZmVjdG8uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjExNQorbXNnaWQgIiIKKyJCPGRwa2c+KDEpLCBCPGRzZWxlY3Q+KDEpLCBCPGRlYi1vdmVycmlkZT4oNSksIEI8ZGViLWV4dHJhLW92ZXJyaWRlPig1KSwgIgorIkI8ZHBrZy1zY2Fuc291cmNlcz4oMSkuIgorbXNnc3RyICIiCisiQjxkcGtnPigxKSwgQjxkc2VsZWN0PigxKSwgQjxkZWItb3ZlcnJpZGU+KDUpLCBCPGRlYi1leHRyYS1vdmVycmlkZT4oNSksICIKKyJCPGRwa2ctc2NhbnNvdXJjZXM+KDEpLiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMToxCisjLCBuby13cmFwCittc2dpZCAiZHBrZy1zY2Fuc291cmNlcyIKK21zZ3N0ciAiZHBrZy1zY2Fuc291cmNlcyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2Fuc291cmNlcy4xOjQKK21zZ2lkICJkcGtnLXNjYW5zb3VyY2VzIC0gY3JlYXRlIFNvdXJjZXMgaW5kZXggZmlsZXMiCittc2dzdHIgImRwa2ctc2NhbnNvdXJjZXMgLSBDcmVhY2nDs24gZGUgZmljaGVyb3MgZGUgw61uZGljZSDCq1NvdXJjZXPCuyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2Fuc291cmNlcy4xOjEyCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJCPGRwa2ctc2NhbnNvdXJjZXM+IFtJPG9wdGlvbnM+XSBJPGJpbmFyeS1kaXI+IFtJPG92ZXJyaWRlLWZpbGU+IFtJPHBhdGgtIgorI3wgInByZWZpeD5dXSBCPEU8Z3Q+PiBJPFNvdXJjZXM+IgorbXNnaWQgIiIKKyJCPGRwa2ctc2NhbnNvdXJjZXM+IFtJPG9wdGlvbj4uLi5dIEk8YmluYXJ5LWRpcj4gW0k8b3ZlcnJpZGUtZmlsZT4gW0k8cGF0aC0iCisicHJlZml4Pl1dIEI8RTxndD4+IEk8U291cmNlcz4iCittc2dzdHIgIiIKKyJCPGRwa2ctc2NhbnNvdXJjZXM+IFtJPG9wY2lvbmVzPl0gSTxkaXJlY3RvcmlvLWJpbmFyaW8+IFtJPGZpY2hlcm8tb3ZlcnJpZGU+ICIKKyJbSTxwcmVmaWpvLXJ1dGE+XV0gQjxFPGd0Pj4gSTxTb3VyY2VzPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2Fuc291cmNlcy4xOjE3Cittc2dpZCAiIgorIkI8ZHBrZy1zY2Fuc291cmNlcz4gc2NhbnMgdGhlIGdpdmVuIEk8YmluYXJ5LWRpcj4gZm9yIEk8LmRzYz4gZmlsZXMuICBUaGVzZSAiCisiYXJlIHVzZWQgdG8gY3JlYXRlIGEgRGViaWFuIHNvdXJjZSBpbmRleCwgd2hpY2ggaXMgb3V0cHV0IHRvIHN0ZG91dC4iCittc2dzdHIgIiIKKyJCPGRwa2ctc2NhbnNvdXJjZXM+IGJ1c2NhIGZpY2hlcm9zIEk8LmRzYz4gZW4gZWwgSTxkaXJlY3RvcmlvLWJpbmFyaW8+IGRhZG8uICIKKyJFc3RvcyBzaXJ2ZW4gcGFyYSBjcmVhciB1biDDrW5kaWNlIGRlIGZ1ZW50ZXMgZGUgRGViaWFuLCBxdWUgc2UgbXVlc3RyYSBwb3IgIgorImxhIHNhbGlkYSBlc3TDoW5kYXIuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6MjgKK21zZ2lkICIiCisiVGhlIEk8b3ZlcnJpZGUtZmlsZT4sIGlmIGdpdmVuLCBpcyB1c2VkIHRvIHNldCBwcmlvcml0aWVzIGluIHRoZSByZXN1bHRpbmcgIgorImluZGV4IHJlY29yZHMgYW5kIHRvIG92ZXJyaWRlIHRoZSBtYWludGFpbmVyIGZpZWxkIGdpdmVuIGluIHRoZSBJPC5kc2M+ICIKKyJmaWxlcy4gVGhlIGZpbGUgY2FuIGJlIGNvbXByZXNzZWQuIFNlZSBCPGRlYi1vdmVycmlkZT4oNSkgIGZvciB0aGUgZm9ybWF0IG9mICIKKyJ0aGlzIGZpbGUuIFxccy0xTkI6XFxzMCBTaW5jZSB0aGUgb3ZlcnJpZGUgZmlsZSBpcyBpbmRleGVkIGJ5IGJpbmFyeSwgbm90ICIKKyJzb3VyY2UsIHBhY2thZ2VzLCB0aGVyZSdzIGEgYml0IG9mIGEgcHJvYmxlbSBoZXJlLiBUaGUgY3VycmVudCAiCisiaW1wbGVtZW50YXRpb24gdXNlcyB0aGUgaGlnaGVzdCBwcmlvcml0eSBvZiBhbGwgdGhlIGJpbmFyeSBwYWNrYWdlcyBwcm9kdWNlZCAiCisiYnkgYSBJPC5kc2M+IGZpbGUgZm9yIHRoZSBwcmlvcml0eSBvZiB0aGUgc291cmNlIHBhY2thZ2UsIGFuZCB0aGUgb3ZlcnJpZGUgIgorImVudHJ5IGZvciB0aGUgZmlyc3QgYmluYXJ5IHBhY2thZ2UgbGlzdGVkIGluIHRoZSBJPC5kc2M+IGZpbGUgdG8gbW9kaWZ5ICIKKyJtYWludGFpbmVyIGluZm9ybWF0aW9uLiBUaGlzIG1pZ2h0IGNoYW5nZS4iCittc2dzdHIgIiIKKyJTaSBzZSBwcm9wb3JjaW9uYSB1biBJPGZpY2hlcm8tb3ZlcnJpZGU+LCBzZSB1c2Fyw6EgcGFyYSBmaWphciBwcmlvcmlkYWRlcyBlbiAiCisiZWwgw61uZGljZSByZXN1bHRhbnRlIHkgc29icmVlc2NyaWJpciBlbCBjYW1wbyBkZWwgbWFudGVuZWRvciBkYWRvIGVuIGxvcyAiCisiZmljaGVyb3MgSTwuZHNjPi4gRWwgZmljaGVybyBzZSBwdWVkZSBjb21wcmltaXIuIENvbnN1bHRlIEI8ZGViLW92ZXJyaWRlPig1KSAiCisicGFyYSBjb25vY2VyIG3DoXMgYWNlcmNhIGRlbCBmb3JtYXRvIGRlIGVzdGUgZmljaGVyby4gXFxzLTFOQjpcXHMwIERlYmlkbyBhICIKKyJxdWUgZWwgZmljaGVybyDCq292ZXJyaWRlwrsgc2UgaW5kZXhhIGNvbiBlbCBwYXF1ZXRlcyBiaW5hcmlvLCB5IG5vIGNvbiBsYXMgIgorImZ1ZW50ZXMsIGVuY29udHJhbW9zIHVuIHBlcXVlw7FvIHByb2JsZW1hLiBMYSBpbXBsZW1lbnRhY2nDs24gYWN0dWFsIHVzYSBsYSAiCisicHJpb3JpZGFkIG3DoXMgYWx0YSBlbnRyZSBsb3MgcGFxdWV0ZXMgYmluYXJpb3MgcHJvZHVjaWRvcyBwb3IgdW4gZmljaGVybyBJPC4iCisiZHNjPiwgcGFyYSBhc8OtIG9idGVuZXIgbGEgcHJpb3JpZGFkIGRlbCBwYXF1ZXRlIGZ1ZW50ZSwgYXPDrSBjb21vIGxhIGVudHJhZGEgIgorIsKrb3ZlcnJpZGXCuyBkZWwgcHJpbWVyIHBhcXVldGUgYmluYXJpbyBsaXN0YWRvIGVuIGVsIGZpY2hlcm8gSTwuZHNjPiBxdWUgIgorIm1vZGlmaWNhIGxhIGluZm9ybWFjacOzbiBzb2JyZSBlbCBtYW50ZW5lZG9yLiBFc3RvIHB1ZWRlIGNhbWJpYXIgZW4gdW4gZnV0dXJvLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2Fuc291cmNlcy4xOjMyCittc2dpZCAiIgorIlRoZSBJPHBhdGgtcHJlZml4PiwgaWYgZ2l2ZW4sIGlzIHByZXBlbmRlZCB0byB0aGUgZGlyZWN0b3J5IGZpZWxkIGluIHRoZSAiCisiZ2VuZXJhdGVkIHNvdXJjZSBpbmRleC4gWW91IGdlbmVyYWxseSB1c2UgdGhpcyB0byBtYWtlIHRoZSBkaXJlY3RvcnkgZmllbGRzICIKKyJjb250YWluIHRoZSBwYXRoIGZyb20gdGhlIHRvcCBvZiB0aGUgRGViaWFuIGFyY2hpdmUgaGllcmFyY2h5LiIKK21zZ3N0ciAiIgorIlNpIHNlIHByb3BvcmNpb25hIEk8cHJlZmlqby1ydXRhPiwgc2UgYW50ZXBvbmRyw6EgYWwgY2FtcG8gZGVsIGRpcmVjdG9yaW8gZW4gIgorImVsIMOtbmRpY2UgZGUgZnVlbnRlcyBnZW5lcmFkby4gSGFiaXR1YWxtZW50ZSwgc2UgdXNhIHBhcmEgaGFjZXIgcXVlIGVsIGNhbXBvICIKKyJkZSBkaXJlY3RvcmlvIGNvbnRlbmdhIGxhIHJ1dGEgZGVzZGUgZWwgZGlyZWN0b3JpbyBzdXBlcmlvciBkZWwgYXJjaGl2byBkZSAiCisiRGViaWFuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2Fuc291cmNlcy4xOjQzCittc2dpZCAiIgorIkI8Tm90ZTo+IElmIHlvdSB3YW50IHRvIGFjY2VzcyB0aGUgZ2VuZXJhdGVkIFNvdXJjZXMgZmlsZSB3aXRoIEI8YXB0Pig4KSAgIgorInlvdSB3aWxsIHByb2JhYmx5IG5lZWQgdG8gY29tcHJlc3MgdGhlIGZpbGUgd2l0aCBCPGd6aXA+KDEpICAoZ2VuZXJhdGluZyBhICIKKyJTb3VyY2VzLmd6IGZpbGUpLiBhcHQgaWdub3JlcyB1bmNvbXByZXNzZWQgU291cmNlcyBmaWxlcyBleGNlcHQgb24gbG9jYWwgIgorImFjY2VzcyAoaS5lLiAgQjxmaWxlOi8vPiBzb3VyY2VzKS4iCittc2dzdHIgIiIKKyJCPE5vdGE6PiBTaSBkZXNlYSBhY2NlZGVyIGFsIGZpY2hlcm8gZ2VuZXJhZG8gwqtTb3VyY2VzwrsgbWVkaWFudGUgQjxhcHQ+KDgpLCAiCisiZXMgcG9zaWJsZSBxdWUgbmVjZXNpdGUgY29tcHJpbWlyIGVsIGZpY2hlcm8gY29uIEI8Z3ppcD4oMSksIGdlbmVyYW5kbyBhc8OtICIKKyJ1biBmaWNoZXJvIMKrU291cmNlcy5nesK7LiBhcHQgaWdub3JhIGZpY2hlcm9zIMKrU291cmNlc8K7IGRlc2NvbXByaW1pZG9zLCBhICIKKyJleGNlcGNpw7NuIGRlIGZpY2hlcm9zIGxvY2FsZXMgKHBvciBlamVtcGxvLCBCPGZpbGU6Ly8+IHNvdXJjZXMpLiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMTo0NQorIywgbm8td3JhcAorbXNnaWQgIkI8LW4+LCBCPC0tbm8tc29ydD4iCittc2dzdHIgIkI8LW4+LCBCPC0tbm8tc29ydD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMTo0OAorbXNnaWQgIiIKKyJEb24ndCBzb3J0IHRoZSBpbmRleCByZWNvcmRzLiBOb3JtYWxseSB0aGV5IGFyZSBzb3J0ZWQgYnkgc291cmNlIHBhY2thZ2UgIgorIm5hbWUuIgorbXNnc3RyICIiCisiRXZpdGEgb3JkZW5hciBsb3MgcmVnaXN0cm9zIGRlbCDDrW5kaWNlIGRlIGZ1ZW50ZXMuIEhhYml0dWFsbWVudGUsIHNlIG9yZGVuYSAiCisicG9yIGVsIG5vbWJyZSBkZSBsb3MgcGFxdWV0ZXMgZnVlbnRlLiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMTo1NAorIywgbm8td3JhcAorbXNnaWQgIkI8LXM+LCBCPC0tc291cmNlLW92ZXJyaWRlPiBJPGZpbGU+IgorbXNnc3RyICJCPC1zPiwgQjwtLXNvdXJjZS1vdmVycmlkZT4gSTxmaWNoZXJvPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2Fuc291cmNlcy4xOjU4Cittc2dpZCAiIgorIlVzZSBJPGZpbGU+IGFzIHRoZSBzb3VyY2Ugb3ZlcnJpZGUgZmlsZSAodGhlIGZpbGUgY2FuIGJlIGNvbXByZXNzZWQpLiAgVGhlICIKKyJkZWZhdWx0IGlzIHRoZSBuYW1lIG9mIHRoZSBvdmVycmlkZSBmaWxlIHlvdSBzcGVjaWZpZWQgd2l0aCBJPC5zcmM+IGFwcGVuZGVkLiIKK21zZ3N0ciAiIgorIlVzYSBlbCBJPGZpY2hlcm8+IGNvbW8gZWwgZmljaGVybyDCq292ZXJyaWRlwrsgZGUgbGFzIGZ1ZW50ZXMuIFBvciBvbWlzacOzbiBlcyAiCisiZWwgbm9tYnJlIGRlbCBmaWNoZXJvIMKrb3ZlcnJpZGXCuyBjb24gbGEgZXh0ZW5zacOzbiBJPC5zcmM+IHF1ZSBkZWZpbmnDsyAiCisiYW50ZXJpb3JtZW50ZS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMTo2NAorbXNnaWQgIiIKKyJUaGUgc291cmNlIG92ZXJyaWRlIGZpbGUgaXMgaW4gYSBkaWZmZXJlbnQgZm9ybWF0IGZyb20gdGhlIGJpbmFyeSBvdmVycmlkZSAiCisiZmlsZS4gSXQgY29udGFpbnMgb25seSB0d28gd2hpdGVzcGFjZSBzZXBhcmF0ZWQgZmllbGRzLCB0aGUgZmlyc3QgaXMgdGhlICIKKyJzb3VyY2UgcGFja2FnZSBuYW1lIGFuZCB0aGUgc2Vjb25kIGlzIHRoZSBzZWN0aW9uLiBCbGFuayBsaW5lcyBhbmQgY29tbWVudCAiCisibGluZXMgYXJlIGlnbm9yZWQgaW4gdGhlIG5vcm1hbCBtYW5uZXIuIElmIGEgcGFja2FnZSBhcHBlYXJzIGluIGJvdGggZmlsZXMgIgorInRoZSBzb3VyY2Ugb3ZlcnJpZGUgdGFrZXMgcHJlY2VkZW5jZSBmb3Igc2V0dGluZyB0aGUgc2VjdGlvbi4iCittc2dzdHIgIiIKKyJFbCBmaWNoZXJvIMKrb3ZlcnJpZGXCuyBkZSBsYXMgZnVlbnRlcyBlc3TDoSBlbiB1biBmb3JtYXRvIGRpc3RpbnRvIGRlbCBmaWNoZXJvICIKKyLCq292ZXJyaWRlwrsgZGUgbG9zIHBhcXVldGVzIGJpbmFyaW9zLiBDb250aWVuZSBzb2xhbWVudGUgZG9zIGNhbXBvcyBzZXBhcmFkb3MgIgorInBvciBlc3BhY2lvcyBlbiBibGFuY28sIHNpZW5kbyBlbCBwcmltZXIgY2FtcG8gZWwgbm9tYnJlIGRlbCBwYXF1ZXRlIGZ1ZW50ZSAiCisieSBlbCBzZWd1bmRvIGVsIGRlIHNlY2Npw7NuLiBTZSBvbWl0ZW4gbGFzIGzDrW5lYXMgZW4gYmxhbmNvIHkgZGUgY29tZW50YXJpb3MuICIKKyJTaSB1biBwYXF1ZXRlIGFwYXJlY2UgZW4gYW1ib3MgZmljaGVyb3MsIGVsIGZpY2hlcm8gwqtvdmVycmlkZcK7IGRlIGxhcyAiCisiZnVlbnRlcyB0aWVuZSBwcmVmZXJlbmNpYS4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6NjQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tZGVidWc+IgorbXNnc3RyICJCPC0tZGVidWc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6NjYKK21zZ2lkICJUdXJuIGRlYnVnZ2luZyBvbi4iCittc2dzdHIgIkFjdGl2YSBsYSBkZXB1cmFjacOzbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMTo3NQorbXNnaWQgIkI8ZGViLW92ZXJyaWRlPig1KSwgQjxkZWItZXh0cmEtb3ZlcnJpZGU+KDUpLCBCPGRwa2ctc2NhbnBhY2thZ2VzPigxKS4iCittc2dzdHIgIkI8ZGViLW92ZXJyaWRlPig1KSwgQjxkZWItZXh0cmEtb3ZlcnJpZGU+KDUpLCBCPGRwa2ctc2NhbnBhY2thZ2VzPigxKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMTo3NworbXNnaWQgIlJvZGVyaWNrIFNjaGVydGxlciBFPGx0PnJvZGVyaWNrQGFyZ29uLm9yZ0U8Z3Q+IgorbXNnc3RyICJSb2RlcmljayBTY2hlcnRsZXIgRTxsdD5yb2Rlcmlja0Bhcmdvbi5vcmdFPGd0PiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MQorIywgbm8td3JhcAorbXNnaWQgImRwa2ctc2hsaWJkZXBzIgorbXNnc3RyICJkcGtnLXNobGliZGVwcyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTo0Cittc2dpZCAiZHBrZy1zaGxpYmRlcHMgLSBnZW5lcmF0ZSBzaGFyZWQgbGlicmFyeSBzdWJzdHZhciBkZXBlbmRlbmNpZXMiCittc2dzdHIgIiIKKyJkcGtnLXNobGliZGVwcyAtIEdlbmVyYSBkZXBlbmRlbmNpYXMgZGUgYmlibGlvdGVjYXMgY29tcGFydGlkYXMgZGUgIgorInN1c3RpdHVjacOzbiBkZSB2YXJpYWJsZXMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6OAorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiQjxkcGtnLXNobGliZGVwcz4gW0k8b3B0aW9ucz5dIEk8ZXhlY3V0YWJsZT58QjwtZT5JPGV4ZWN1dGFibGU+ICIKKyN8ICJbSTxvcHRpb25zPl0iCittc2dpZCAiQjxkcGtnLXNobGliZGVwcz4gW0k8b3B0aW9uPi4uLl0gW0I8LWU+XUk8ZXhlY3V0YWJsZT4gW0k8b3B0aW9uPi4uLl0iCittc2dzdHIgIiIKKyJCPGRwa2ctc2hsaWJkZXBzPiBbSTxvcGNpb25lcz5dIEk8ZWplY3V0YWJsZT58QjwtZT5JPGVqZWN1dGFibGU+ICIKKyJbSTxvcGNpb25lcz5dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjIyCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJCPGRwa2ctc2hsaWJkZXBzPiBjYWxjdWxhdGVzIHNoYXJlZCBsaWJyYXJ5IGRlcGVuZGVuY2llcyBmb3IgZXhlY3V0YWJsZXMgIgorI3wgIm5hbWVkIGluIGl0cyBhcmd1bWVudHMuIFRoZSBkZXBlbmRlbmNpZXMgYXJlIGFkZGVkIHRvIHRoZSBzdWJzdGl0dXRpb24gIgorI3wgInZhcmlhYmxlcyBmaWxlIEI8ZGViaWFuL3N1YnN0dmFycz4gYXMgdmFyaWFibGUgbmFtZXMgQjxzaGxpYnM6IgorI3wgIj5JPGRlcGVuZGVuY3lmaWVsZD4gd2hlcmUgSTxkZXBlbmRlbmN5ZmllbGQ+IGlzIGEgZGVwZW5kZW5jeSBmaWVsZCBuYW1lLiAiCisjfCAiQW55IG90aGVyIHZhcmlhYmxlcyBzdGFydGluZyBJPHNobGliczo+IGFyZSByZW1vdmVkIGZyb20gdGhlIGZpbGUuIgorbXNnaWQgIiIKKyJCPGRwa2ctc2hsaWJkZXBzPiBjYWxjdWxhdGVzIHNoYXJlZCBsaWJyYXJ5IGRlcGVuZGVuY2llcyBmb3IgZXhlY3V0YWJsZXMgIgorIm5hbWVkIGluIGl0cyBhcmd1bWVudHMuIFRoZSBkZXBlbmRlbmNpZXMgYXJlIGFkZGVkIHRvIHRoZSBzdWJzdGl0dXRpb24gIgorInZhcmlhYmxlcyBmaWxlIEI8ZGViaWFuL3N1YnN0dmFycz4gYXMgdmFyaWFibGUgbmFtZXMgQjxzaGxpYnM6IgorIj5JPGRlcGVuZGVuY3lmaWVsZD4gd2hlcmUgSTxkZXBlbmRlbmN5ZmllbGQ+IGlzIGEgZGVwZW5kZW5jeSBmaWVsZCBuYW1lLiBBbnkgIgorIm90aGVyIHZhcmlhYmxlcyBzdGFydGluZyB3aXRoIEI8c2hsaWJzOj4gYXJlIHJlbW92ZWQgZnJvbSB0aGUgZmlsZS4iCittc2dzdHIgIiIKKyJCPGRwa2ctc2hsaWJkZXBzPiBjYWxjdWxhIGxhcyBkZXBlbmRlbmNpYXMgZGUgYmlibGlvdGVjYXMgY29tcGFydGlkYXMgZGUgbG9zICIKKyJlamVjdXRhYmxlcyBzdW1pbmlzdHJhZG9zIGVuIHN1cyBhcmd1bWVudG9zLiBMYXMgZGVwZW5kZW5jaWFzIHNlIGHDsWFkZW4gYWwgIgorImZpY2hlcm8gZGUgc3VzdGl0dWNpw7NuIGRlIHZhcmlhYmxlcyBCPGRlYmlhbi9zdWJzdHZhcnM+IGNvbW8gbm9tYnJlcyBkZSAiCisidmFyaWFibGUgQjxzaGxpYnM6Pkk8Y2FtcG8tZGVwZW5kZW5jaWE+LCBkb25kZSBJPGNhbXBvLWRlcGVuZGVuY2lhPiBlcyB1biAiCisibm9tYnJlIGRlIGNhbXBvIGRlIGRlcGVuZGVuY2lhLiBDdWFscXVpZXIgb3RyYSB2YXJpYWJsZSBxdWUgZW1waWVjZSBjb24gIgorIkk8c2hsaWJzOj4gc2UgZWxpbWluYSBkZWwgZmljaGVyby4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6NDUKK21zZ2lkICIiCisiQjxkcGtnLXNobGliZGVwcz4gaGFzIHR3byBwb3NzaWJsZSBzb3VyY2VzIG9mIGluZm9ybWF0aW9uIHRvIGdlbmVyYXRlICIKKyJkZXBlbmRlbmN5IGluZm9ybWF0aW9uLiBFaXRoZXIgSTxzeW1ib2xzPiBmaWxlcyBvciBJPHNobGlicz4gZmlsZXMuIEZvciBlYWNoICIKKyJiaW5hcnkgdGhhdCBCPGRwa2ctc2hsaWJkZXBzPiBhbmFseXplcywgaXQgZmluZHMgb3V0IHRoZSBsaXN0IG9mIGxpYnJhcmllcyAiCisidGhhdCBpdCdzIGxpbmtlZCB3aXRoLiAgVGhlbiwgZm9yIGVhY2ggbGlicmFyeSwgaXQgbG9va3MgdXAgZWl0aGVyIHRoZSAiCisiSTxzeW1ib2xzPiBmaWxlLCBvciB0aGUgSTxzaGxpYnM+IGZpbGUgKGlmIHRoZSBmb3JtZXIgZG9lc24ndCBleGlzdCBvciBpZiAiCisiZGViaWFuL3NobGlicy5sb2NhbCBjb250YWlucyB0aGUgcmVsZXZhbnQgZGVwZW5kZW5jeSkuIEJvdGggZmlsZXMgYXJlICIKKyJzdXBwb3NlZCB0byBiZSBwcm92aWRlZCBieSB0aGUgbGlicmFyeSBwYWNrYWdlIGFuZCBzaG91bGQgdGh1cyBiZSBhdmFpbGFibGUgIgorImFzIC92YXIvbGliL2Rwa2cvaW5mby9JPHBhY2thZ2U+Lkk8c3ltYm9scz4gb3IgL3Zhci9saWIvZHBrZy9pbmZvL0k8cGFja2FnZT4uIgorIkk8c2hsaWJzPi4gVGhlIHBhY2thZ2UgbmFtZSBpcyBpZGVudGlmaWVkIGluIHR3byBzdGVwczogZmluZCB0aGUgbGlicmFyeSAiCisiZmlsZSBvbiB0aGUgc3lzdGVtIChsb29raW5nIGluIHRoZSBzYW1lIGRpcmVjdG9yaWVzIHRoYXQgQjxsZC5zbz4gd291bGQgIgorInVzZSksIHRoZW4gdXNlIEI8ZHBrZyAtUyA+STxsaWJyYXJ5LWZpbGU+IHRvIGxvb2t1cCB0aGUgcGFja2FnZSBwcm92aWRpbmcgIgorInRoZSBsaWJyYXJ5LiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1zaGxpYmRlcHM+IHRpZW5lIGRvcyBwb3NpYmxlcyBmdWVudGVzIGRlIGluZm9ybWFjacOzbiBwYXJhIGdlbmVyYXIgbGEgIgorImluZm9ybWFjacOzbiBkZSBkZXBlbmRlbmNpYXMuIEVzdG9zIHNvbiBsb3MgZmljaGVyb3MgSTxzeW1ib2xzPiB5IEk8c2hsaWJzPi4gIgorIlBvciBjYWRhIGJpbmFyaW8gcXVlIEI8ZHBrZy1zaGxpYmRlcHM+IGFuYWxpemEsIGJ1c2NhIGxhIGxpc3RhIGRlICIKKyJiaWJsaW90ZWNhcyBlbmxhemFkYXMgY29uIMOpc3RlLiBFbnRvbmNlcywgcG9yIGNhZGEgYmlibGlvdGVjYSwgYnVzY2EgZWwgIgorImZpY2hlcm8gSTxzeW1ib2xzPiBvIGVsIGZpY2hlcm8gSTxzaGxpYnM+IChlbiBjYXNvIGRlIHF1ZSBlbCBwcmltZXJvIG5vICIKKyJleGlzdGEsIG8gc2kgwqtkZWJpYW4vc2hsaWJzLmxvY2FswrsgY29udGllbmUgbGEgZGVwZW5kZW5jaWEgcmVsZXZhbnRlKS4gU2UgIgorImFzdW1lIHF1ZSBlbCBwYXF1ZXRlIGRlIGxhIGJpYmxpb3RlY2EgcHJvcG9yY2lvbmEgYW1ib3MgZmljaGVyb3MsIHkgcG9yIGVsbG8gIgorImRlYmVyw61hIGVzdGFyIGRpc3BvbmlibGUgY29tbyDCqy92YXIvbGliL2Rwa2cvaW5mby9JPHBhcXVldGU+Lkk8c3ltYm9scz7CuyBvIMKrLyIKKyJ2YXIvbGliL2Rwa2cvaW5mby9JPHBhY2thZ2U+Lkk8c2hsaWJzPsK7LiBFbCBub21icmUgZGVsIHBhcXVldGUgc2UgaWRlbnRpZmljYSAiCisiZW4gZG9zIHBhc29zOiBiw7pzcXVlZGEgZW4gZWwgc2lzdGVtYSBkZWwgZmljaGVybyBkZSBsYSBiaWJsaW90ZWNhIChidXNjYW5kbyAiCisiZW4gbG9zIG1pc21vcyBkaXJlY3RvcmlvcyBxdWUgdXNhcsOtYSBCPGxkLnNvPiksIHkgZWplY3VjacOzbiBkZSBCPGRwa2cgLVMgIgorIj5JPGxpYnJhcnktZmlsZT4gcGFyYSBjb25vY2VyIGVsIHBhcXVldGUgcXVlIHByb3BvcmNpb25hIGxhIGJpYmxpb3RlY2EuIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zaGxpYmRlcHMuMTo0NQorIywgbm8td3JhcAorbXNnaWQgIlN5bWJvbHMgZmlsZXMiCittc2dzdHIgIkZpY2hlcm9zIGRlIHPDrW1ib2xvcyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTo1MAorbXNnaWQgIiIKKyJTeW1ib2xzIGZpbGVzIGNvbnRhaW4gZmluZXItZ3JhaW5lZCBkZXBlbmRlbmN5IGluZm9ybWF0aW9uIGJ5IHByb3ZpZGluZyB0aGUgIgorIm1pbmltdW0gZGVwZW5kZW5jeSBmb3IgZWFjaCBzeW1ib2wgdGhhdCB0aGUgbGlicmFyeSBleHBvcnRzLiBUaGUgc2NyaXB0ICIKKyJ0cmllcyB0byBmaW5kIGEgc3ltYm9scyBmaWxlIGFzc29jaWF0ZWQgdG8gYSBsaWJyYXJ5IHBhY2thZ2UgaW4gdGhlICIKKyJmb2xsb3dpbmcgcGxhY2VzIChmaXJzdCBtYXRjaCBpcyB1c2VkKToiCittc2dzdHIgIiIKKyJMb3MgZmljaGVyb3MgZGUgc8OtbWJvbG9zIGNvbnRpZW5lbiB1bmEgaW5mb3JtYWNpw7NuIG3DoXMgcHJlY2lzYSBkZSBsYXMgIgorImRlcGVuZGVuY2lhcywgcHJvcG9yY2lvbmFuZG8gbGEgZGVwZW5kZW5jaWEgbcOtbmltYSBkZSBjYWRhIHPDrW1ib2xvIHF1ZSBsYSAiCisiYmlibGlvdGVjYSBleHBvcnRhLiBFbCBzY3JpcHQgaW50ZW50YSBlbmNvbnRyYXIgdW4gZmljaGVybyBkZSBzw61tYm9sb3MgIgorImFzb2NpYWRvIGFsIHBhcXVldGUgZGUgbGEgYmlibGlvdGVjYSBlbiBsYXMgc2lndWllbnRlcyB1YmljYWNpb25lcyAoc2UgdXNhICIKKyJsYSBwcmltZXJhIGNvaW5jaWRlbmNpYSk6IgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1zaGxpYmRlcHMuMTo1MAorIywgbm8td3JhcAorbXNnaWQgImRlYmlhbi8qL0RFQklBTi9zeW1ib2xzIgorbXNnc3RyICJkZWJpYW4vKi9ERUJJQU4vc3ltYm9scyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTo1OAorbXNnaWQgIiIKKyJTaGFyZWQgbGlicmFyeSBpbmZvcm1hdGlvbiBnZW5lcmF0ZWQgYnkgdGhlIGN1cnJlbnQgYnVpbGQgcHJvY2VzcyB0aGF0IGFsc28gIgorImludm9rZWQgQjxkcGtnLXNobGliZGVwcz4uICBUaGV5IGFyZSBnZW5lcmF0ZWQgYnkgQjxkcGtnLWdlbnN5bWJvbHM+KDEpLiAgIgorIlRoZXkgYXJlIG9ubHkgdXNlZCBpZiB0aGUgbGlicmFyeSBpcyBmb3VuZCBpbiBhIHBhY2thZ2UncyBidWlsZCB0cmVlLiBUaGUgIgorInN5bWJvbHMgZmlsZSBpbiB0aGF0IGJ1aWxkIHRyZWUgdGFrZXMgcHJlY2VkZW5jZSBvdmVyIHN5bWJvbHMgZmlsZXMgZnJvbSAiCisib3RoZXIgYmluYXJ5IHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorIkxhIGluZm9ybWFjacOzbiBkZSBiaWJsaW90ZWNhIGNvbXBhcnRpZGEgZ2VuZXJhZGEgcG9yIGVsIHByb2Nlc28gZGUgIgorImNvbnN0cnVjY2nDs24gYWN0dWFsLCBxdWUgdGFtYmnDqW4gaW52b2NhIEI8ZHBrZy1zaGxpYmRlcHM+LiBTZSBnZW5lcmFuICIKKyJtZWRpYW50ZSBCPGRwa2ctZ2Vuc3ltYm9scz4oMSkuIFPDs2xvIHNlIHVzYW4gZW4gY2FzbyBkZSBlbmNvbnRyYXIgbGEgIgorImJpYmxpb3RlY2EgZW4gbGEgw6FyYm9sIGRlIGNvbnN0cnVjY2nDs24gZGVsIHBhcXVldGUuIEVsIGZpY2hlcm8gZGUgc8OtbWJvbG9zICIKKyJkZSBlc2Ugw6FyYm9sIGRlIGNvbnN0cnVjY2nDs24gdGllbmUgcHJpb3JpZGFkIHNvYnJlIGxvcyBmaWNoZXJvcyBkZSBzw61tYm9sb3MgIgorImRlIG90cm9zIHBhcXVldGVzIGJpbmFyaW9zLiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6NTgKKyMsIG5vLXdyYXAKK21zZ2lkICIvZXRjL2Rwa2cvc3ltYm9scy9JPHBhY2thZ2U+LnN5bWJvbHMuSTxhcmNoPiIKK21zZ3N0ciAiL2V0Yy9kcGtnL3N5bWJvbHMvSTxwYXF1ZXRlPi5zeW1ib2xzLkk8YXJxdWl0ZWN0dXJhPiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6NTkKKyMsIG5vLXdyYXAKK21zZ2lkICIvZXRjL2Rwa2cvc3ltYm9scy9JPHBhY2thZ2U+LnN5bWJvbHMiCittc2dzdHIgIi9ldGMvZHBrZy9zeW1ib2xzL0k8cGFxdWV0ZT4uc3ltYm9scyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTo2MworbXNnaWQgIiIKKyJQZXItc3lzdGVtIG92ZXJyaWRpbmcgc2hhcmVkIGxpYnJhcnkgZGVwZW5kZW5jeSBpbmZvcm1hdGlvbi4gIEk8YXJjaD4gaXMgdGhlICIKKyJhcmNoaXRlY3R1cmUgb2YgdGhlIGN1cnJlbnQgc3lzdGVtIChvYnRhaW5lZCBieSBCPGRwa2ctYXJjaGl0ZWN0dXJlIC0iCisicURFQl9IT1NUX0FSQ0g+KS4iCittc2dzdHIgIiIKKyJJbmZvcm1hY2nDs24gZGUgcmVkZWZpbmljacOzbiBkZSBiaWJsaW90ZWNhcyBjb21wYXJ0aWRhcyBwb3IgY2FkYSBzaXN0ZW1hLiAiCisiSTxhcnF1aXRlY3R1cmE+IGVzIGxhIGFycXVpdGVjdHVyYSBkZWwgc2lzdGVtYSBhY3R1YWwgKG9idGVuaWRvIG1lZGlhbnRlICIKKyJCPGRwa2ctYXJjaGl0ZWN0dXJlIC0gcURFQl9IT1NUX0FSQ0g+KS4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLXNobGliZGVwcy4xOjYzCisjLCBuby13cmFwCittc2dpZCAiT3V0cHV0IGZyb20gXFwobHFCPGRwa2ctcXVlcnkgLS1jb250cm9sLXBhdGg+IEk8cGFja2FnZT4gc3ltYm9sc1xcKHJxIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6NjYgZHBrZy1zaGxpYmRlcHMuMToxMDAKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlBhY2thZ2UtcHJvdmlkZWQgc2hhcmVkIGxpYnJhcnkgZGVwZW5kZW5jeSBpbmZvcm1hdGlvbi4gIFVubGVzcyAiCisjfCAib3ZlcnJpZGRlbiwgSTxhZG1pbmRpcj4gaXMgL3Zhci9saWIvZHBrZy4iCittc2dpZCAiIgorIlBhY2thZ2UtcHJvdmlkZWQgc2hhcmVkIGxpYnJhcnkgZGVwZW5kZW5jeSBpbmZvcm1hdGlvbi4gIFVubGVzcyBvdmVycmlkZGVuICIKKyJieSAtLWFkbWluZGlyLCB0aG9zZSBmaWxlcyBhcmUgbG9jYXRlZCBpbiAvdmFyL2xpYi9kcGtnLiIKK21zZ3N0ciAiIgorIkluZm9ybWFjacOzbiBkZSBkZXBlbmRlbmNpYXMgZGUgYmlibGlvdGVjYXMgY29tcGFydGlkYXMgcHJvcG9yY2lvbmFkYXMgcG9yIGVsICIKKyJwYXF1ZXRlLiBBIG1lbm9zIHF1ZSBzZSByZWRlZmluYSwgSTxkaXJlY3RvcmlvLWFkbWluaXN0cmFjacOzbj4gZXMgwqsvdmFyL2xpYi8iCisiZHBrZ8K7LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTo3MworbXNnaWQgIiIKKyJXaGlsZSBzY2FubmluZyB0aGUgc3ltYm9scyB1c2VkIGJ5IGFsbCBiaW5hcmllcywgQjxkcGtnLXNobGliZGVwcz4gcmVtZW1iZXJzICIKKyJ0aGUgKGJpZ2dlc3QpIG1pbmltYWwgdmVyc2lvbiBuZWVkZWQgZm9yIGVhY2ggbGlicmFyeS4gQXQgdGhlIGVuZCBvZiB0aGUgIgorInByb2Nlc3MsIGl0IGlzIGFibGUgdG8gd3JpdGUgb3V0IHRoZSBtaW5pbWFsIGRlcGVuZGVuY3kgZm9yIGV2ZXJ5IGxpYnJhcnkgIgorInVzZWQgKHByb3ZpZGVkIHRoYXQgdGhlIGluZm9ybWF0aW9uIG9mIHRoZSBJPHN5bWJvbHM+IGZpbGVzIGFyZSBhY2N1cmF0ZSkuIgorbXNnc3RyICIiCisiQjxkcGtnLXNobGliZGVwcz4gcmVjdWVyZGEgbGEgdmVyc2nDs24gbcOtbmltYSAobcOhcyBncmFuZGUpIG5lY2VzYXJpYSBwYXJhICIKKyJjYWRhIGJpYmxpb3RlY2EgYWwgYW5hbGl6YXIgbG9zIHPDrW1ib2xvcyB1c2Fkb3MgcG9yIHRvZG9zIGxvcyBiaW5hcmlvcy4gQWwgIgorImZpbmFsaXphciBlbCBwcm9jZXNvLCBwdWVkZSBlc2NyaWJpciBsYSBkZXBlbmRlbmNpYSBtw61uaW1hIHBhcmEgY2FkYSAiCisiYmlibGlvdGVjYSB1c2FkYSAoc2llbXByZSBxdWUgbGEgaW5mb3JtYWNpw7NuIGRlIGxvcyBmaWNoZXJvcyBJPHN5bWJvbHM+IHNlYSAiCisicHJlY2lzYSkuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjgwCittc2dpZCAiIgorIkFzIGEgc2FmZS1ndWFyZCBtZWFzdXJlLCBhIHN5bWJvbHMgZmlsZSBjYW4gcHJvdmlkZSBhIEk8QnVpbGQtRGVwZW5kcy0iCisiUGFja2FnZT4gbWV0YS1pbmZvcm1hdGlvbiBmaWVsZCBhbmQgQjxkcGtnLXNobGliZGVwcz4gd2lsbCBleHRyYWN0IHRoZSAiCisibWluaW1hbCB2ZXJzaW9uIHJlcXVpcmVkIGJ5IHRoZSBjb3JyZXNwb25kaW5nIHBhY2thZ2UgaW4gdGhlIEJ1aWxkLURlcGVuZHMgIgorImZpZWxkIGFuZCB1c2UgdGhpcyB2ZXJzaW9uIGlmIGl0J3MgaGlnaGVyIHRoYW4gdGhlIG1pbmltYWwgdmVyc2lvbiBjb21wdXRlZCAiCisiYnkgc2Nhbm5pbmcgc3ltYm9scy4iCittc2dzdHIgIiIKKyJDb21vIG1lZGlkYSBkZSBwcmVjYXVjacOzbiwgdW4gZmljaGVybyBkZSBzw61tYm9sb3MgcHVlZGUgcHJvcG9yY2lvbmFyIHVuICIKKyJjYW1wbyBkZSBtZXRhIGluZm9ybWFjacOzbiBJPEJ1aWxkLURlcGVuZHMtUGFja2FnZT4gcGFyYSBxdWUgQjxkcGtnLSIKKyJzaGxpYmRlcHM+IGV4dHJhaWdhIGxhIHZlcnNpw7NuIG3DrW5pbWEgcmVxdWVyaWRhIHBvciBlbCBwYXF1ZXRlICIKKyJjb3JyZXNwb25kaWVudGUgZW4gZWwgY2FtcG8gwqtCdWlsZC1EZXBlbmRzwrssIHkgdXNhciB0YWwgdmVyc2nDs24gc2kgZXMgbWF5b3IgIgorInF1ZSBsYSB2ZXJzacOzbiBtw61uaW1hIGNhbGN1bGFkYSBlbiBlbCBhbsOhbGlzaXMgZGUgc8OtbWJvbG9zLiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc2hsaWJkZXBzLjE6ODAKKyMsIG5vLXdyYXAKK21zZ2lkICJTaGxpYnMgZmlsZXMiCittc2dzdHIgIkZpY2hlcm9zIMKrc2hsaWJzwrsiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6ODQKK21zZ2lkICIiCisiU2hsaWJzIGZpbGVzIGFzc29jaWF0ZSBkaXJlY3RseSBhIGxpYnJhcnkgdG8gYSBkZXBlbmRlbmN5ICh3aXRob3V0IGxvb2tpbmcgIgorImF0IHRoZSBzeW1ib2xzKS4gSXQncyB0aHVzIG9mdGVuIHN0cm9uZ2VyIHRoYW4gcmVhbGx5IG5lZWRlZCBidXQgdmVyeSBzYWZlICIKKyJhbmQgZWFzeSB0byBoYW5kbGUuIgorbXNnc3RyICIiCisiTG9zIGZpY2hlcm9zIMKrc2hsaWJzwrsgYXNvY2lhbiBkZSBmb3JtYSBkaXJlY3RhIHVuYSBsaWJyZXLDrWEgY29uIHVuYSAiCisiZGVwZW5kZW5jaWEgKHNpbiBhbmFsaXphciDCq3N5bWJvbHPCuykuIFBvciBlbGxvLCBlcyBtw6FzIHPDs2xpZG8gcXVlIG5lY2VzYXJpbywgIgorInBlcm8gc2VuY2lsbG8geSBzZWd1cm8gZGUgbWFuaXB1bGFyLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTo4NworbXNnaWQgIiIKKyJUaGUgZGVwZW5kZW5jaWVzIGZvciBhIGxpYnJhcnkgYXJlIGxvb2tlZCB1cCBpbiBzZXZlcmFsIHBsYWNlcy4gVGhlIGZpcnN0ICIKKyJmaWxlIHByb3ZpZGluZyBpbmZvcm1hdGlvbiBmb3IgdGhlIGxpYnJhcnkgb2YgaW50ZXJlc3QgaXMgdXNlZDoiCittc2dzdHIgIiIKKyJMYXMgZGVwZW5kZW5jaWFzIGRlIHVuYSBiaWJsaW90ZWNhIHNlIGJ1c2NhbiBlbiB2YXJpYXMgdWJpY2FjaW9uZXMuIFNlIHVzYXLDoSAiCisiZWwgcHJpbWVyIGZpY2hlcm8gcXVlIHByb3BvcmNpb25lIGluZm9ybWFjacOzbiBkZSBsYSBiaWJsaW90ZWNhIHJlbGV2YW50ZS4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLXNobGliZGVwcy4xOjg3CisjLCBuby13cmFwCittc2dpZCAiZGViaWFuL3NobGlicy5sb2NhbCIKK21zZ3N0ciAiZGViaWFuL3NobGlicy5sb2NhbCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTo4OQorbXNnaWQgIlBhY2thZ2UtbG9jYWwgb3ZlcnJpZGluZyBzaGFyZWQgbGlicmFyeSBkZXBlbmRlbmN5IGluZm9ybWF0aW9uLiIKK21zZ3N0ciAiIgorIkluZm9ybWFjacOzbiBhY2VyY2EgZGUgcmVkZWZpbmljacOzbiBkZSBkZXBlbmRlbmNpYXMgZGUgYmlibGlvdGVjYXMgIgorImNvbXBhcnRpZGFzIGVzcGVjw61maWNhcyBhbCBwYXF1ZXRlIGxvY2FsLiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6ODkKKyMsIG5vLXdyYXAKK21zZ2lkICIvZXRjL2Rwa2cvc2hsaWJzLm92ZXJyaWRlIgorbXNnc3RyICIvZXRjL2Rwa2cvc2hsaWJzLm92ZXJyaWRlIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjkxCittc2dpZCAiUGVyLXN5c3RlbSBvdmVycmlkaW5nIHNoYXJlZCBsaWJyYXJ5IGRlcGVuZGVuY3kgaW5mb3JtYXRpb24uIgorbXNnc3RyICIiCisiSW5mb3JtYWNpw7NuIGFjZXJjYSBkZSByZWRlZmluaWNpw7NuIGRlIGRlcGVuZGVuY2lhcyBkZSBiaWJsaW90ZWNhcyAiCisiY29tcGFydGlkYXMgcGFyYSBjYWRhIHNpc3RlbWEuIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1zaGxpYmRlcHMuMTo5MQorIywgbm8td3JhcAorbXNnaWQgImRlYmlhbi8qL0RFQklBTi9zaGxpYnMiCittc2dzdHIgImRlYmlhbi8qL0RFQklBTi9zaGxpYnMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6OTcKK21zZ2lkICIiCisiU2hhcmVkIGxpYnJhcnkgaW5mb3JtYXRpb24gZ2VuZXJhdGVkIGJ5IHRoZSBjdXJyZW50IGJ1aWxkIHByb2Nlc3MgdGhhdCBhbHNvICIKKyJpbnZva2VkIEI8ZHBrZy1zaGxpYmRlcHM+LiAgVGhleSBhcmUgb25seSB1c2VkIGlmIHRoZSBsaWJyYXJ5IGlzIGZvdW5kIGluIGEgIgorInBhY2thZ2UncyBidWlsZCB0cmVlLiBUaGUgc2hsaWJzIGZpbGUgaW4gdGhhdCBidWlsZCB0cmVlIHRha2VzIHByZWNlZGVuY2UgIgorIm92ZXIgc2hsaWJzIGZpbGVzIGZyb20gb3RoZXIgYmluYXJ5IHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorIkxhIGluZm9ybWFjacOzbiBkZSBiaWJsaW90ZWNhcyBjb21wYXJ0aWRhcyBnZW5lcmFkYSBwb3IgZWwgcHJvY2VzbyBkZSAiCisiY29uc3RydWNjacOzbiBhY3R1YWwsIHF1ZSBCPGRwa2ctc2hsaWJkZXBzPiB0YW1iacOpbiBpbnZvY2EuIFPDs2xvIHNlIHVzYSBzaSBsYSAiCisiYmlibGlvdGVjYSBzZSBlbmN1ZW50cmEgZW4gZWwgw6FyYm9sIGRlIGNvbnN0cnVjY2nDs24gZGVsIHBhcXVldGUuIEVsIGZpY2hlcm8gIgorIsKrc2hsaWJzwrsgZW4gZWwgw6FyYm9sIGRlIGNvbnN0cnVjY2nDs24gdGllbmUgcHJpb3JpZGFkIHNvYnJlIG90cm9zIGZpY2hlcm9zICIKKyLCq3NobGlic8K7IGRlIG90cm9zIHBhcXVldGVzIGJpbmFyaW9zLiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6OTcKKyMsIG5vLXdyYXAKK21zZ2lkICJPdXRwdXQgZnJvbSBcXChscUI8ZHBrZy1xdWVyeSAtLWNvbnRyb2wtcGF0aD4gSTxwYWNrYWdlPiBzaGxpYnNcXChycSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1zaGxpYmRlcHMuMToxMDAKKyMsIG5vLXdyYXAKK21zZ2lkICIvZXRjL2Rwa2cvc2hsaWJzLmRlZmF1bHQiCittc2dzdHIgIi9ldGMvZHBrZy9zaGxpYnMuZGVmYXVsdCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToxMDIKK21zZ2lkICJQZXItc3lzdGVtIGRlZmF1bHQgc2hhcmVkIGxpYnJhcnkgZGVwZW5kZW5jeSBpbmZvcm1hdGlvbi4iCittc2dzdHIgIiIKKyJJbmZvcm1hY2nDs24gZGVsIHNpc3RlbWEgYWNlcmNhIGRlIGxhcyBkZXBlbmRlbmNpYXMgcHJlZGVmaW5pZGFzIGRlICIKKyJiaWJsaW90ZWNhcyBjb21wYXJ0aWRhcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTA2Cittc2dpZCAiIgorIlRoZSBleHRyYWN0ZWQgZGVwZW5kZW5jaWVzIGFyZSB0aGVuIGRpcmVjdGx5IHVzZWQgKGV4Y2VwdCBpZiB0aGV5IGFyZSAiCisiZmlsdGVyZWQgb3V0IGJlY2F1c2UgdGhleSBoYXZlIGJlZW4gaWRlbnRpZmllZCBhcyBkdXBsaWNhdGUsIG9yIGFzIHdlYWtlciAiCisidGhhbiBhbm90aGVyIGRlcGVuZGVuY3kpLiIKK21zZ3N0ciAiIgorIlRyYXMgZWxsbywgc2UgdXNhbiBsYXMgZGVwZW5kZW5jaWFzIGV4dHJhw61kYXMgZGlyZWN0YW1lbnRlIChhIG1lbm9zIHF1ZSBzZSAiCisiaGF5YW4gb21pdGlkbyBkZWJpZG8gcXVlIHNlIGxlcyBpZGVudGlmaXF1ZSBjb21vIGR1cGxpY2Fkb3MsIG8gY29tbyBtw6FzICIKKyJkw6liaWxlcyBxdWUgb3RyYSBkZXBlbmRlbmNpYSkuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjExMQorbXNnaWQgIiIKKyJCPGRwa2ctc2hsaWJkZXBzPiBpbnRlcnByZXRzIG5vbi1vcHRpb24gYXJndW1lbnRzIGFzIGV4ZWN1dGFibGUgbmFtZXMsIGp1c3QgIgorImFzIGlmIHRoZXknZCBiZWVuIHN1cHBsaWVkIGFzIEI8LWU+STxleGVjdXRhYmxlPi4iCittc2dzdHIgIiIKKyJCPGRwa2ctc2hsaWJkZXBzPiBpbnRlcnByZXRhIGN1YWxxdWllciBhcmd1bWVudG8gcXVlIG5vIHNlYSB1bmEgb3BjacOzbiBjb21vICIKKyJlbCBub21icmUgZGUgdW4gZmljaGVybyBlamVjdXRhYmxlLCBpZ3VhbCBxdWUgc2kgc2UgaHViaWVzZW4gcHJvcG9yY2lvbmFkbyAiCisiY29uIEI8LWU+STxlamVjdXRhYmxlPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNobGliZGVwcy4xOjExMQorIywgbm8td3JhcAorbXNnaWQgIkI8LWU+STxleGVjdXRhYmxlPiIKK21zZ3N0ciAiQjwtZT5JPGVqZWN1dGFibGU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjExNQorbXNnaWQgIiIKKyJJbmNsdWRlIGRlcGVuZGVuY2llcyBhcHByb3ByaWF0ZSBmb3IgdGhlIHNoYXJlZCBsaWJyYXJpZXMgcmVxdWlyZWQgYnkgIgorIkk8ZXhlY3V0YWJsZT4uIgorbXNnc3RyICIiCisiSW5jbHV5ZSBkZXBlbmRlbmNpYXMgYXByb3BpYWRhcyBwYXJhIGxhcyBiaWJsaW90ZWNhcyBjb21wYXJ0aWRhcyByZXF1ZXJpZGFzICIKKyJwb3IgZWwgSTxlamVjdXRhYmxlPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNobGliZGVwcy4xOjExNQorIywgbm8td3JhcAorbXNnaWQgIkI8LWQ+STxkZXBlbmRlbmN5ZmllbGQ+IgorbXNnc3RyICJCPC1kPkk8Y2FtcG8tZGVwZW5kZW5jaWFzPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToxMjEKK21zZ2lkICIiCisiQWRkIGRlcGVuZGVuY2llcyB0byBiZSBhZGRlZCB0byB0aGUgY29udHJvbCBmaWxlIGRlcGVuZGVuY3kgZmllbGQgIgorIkk8ZGVwZW5kZW5jeWZpZWxkPi4gIChUaGUgZGVwZW5kZW5jaWVzIGZvciB0aGlzIGZpZWxkIGFyZSBwbGFjZWQgaW4gdGhlICIKKyJ2YXJpYWJsZSBCPHNobGliczo+STxkZXBlbmRlbmN5ZmllbGQ+LikiCittc2dzdHIgIiIKKyJBw7FhZGUgZGVwZW5kZW5jaWFzIGFsIGNhbXBvIEk8Y2FtcG8tZGVwZW5kZW5jaWFzPiBkZWwgZmljaGVybyBkZSBjb250cm9sLiAiCisiKExhcyBkZXBlbmRlbmNpYXMgcGFyYSBlc3RlIGNhbXBvIHNlIHViaWNhbiBlbiBsYSB2YXJpYWJsZSBCPHNobGliczo+STxjYW1wby0iCisiZGVwZW5kZW5jaWFzPikuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjEzMQorbXNnaWQgIiIKKyJUaGUgQjwtZD5JPGRlcGVuZGVuY3lmaWVsZD4gb3B0aW9uIHRha2VzIGVmZmVjdCBmb3IgYWxsIGV4ZWN1dGFibGVzIGFmdGVyICIKKyJ0aGUgb3B0aW9uLCB1bnRpbCB0aGUgbmV4dCBCPC1kPkk8ZGVwZW5kZW5jeWZpZWxkPi4gIFRoZSBkZWZhdWx0ICIKKyJJPGRlcGVuZGVuY3lmaWVsZD4gaXMgQjxEZXBlbmRzPi4iCittc2dzdHIgIiIKKyJMYSBvcGNpw7NuIEI8LWQ+STxjYW1wby1kZXBlbmRlbmNpYXM+IHRpZW5lIGVmZWN0byBwYXJhIHRvZG9zIGxvcyBlamVjdXRhYmxlcyAiCisiZGVzcHXDqXMgZGUgZGljaGEgb3BjacOzbiwgaGFzdGEgZWwgc2lndWllbnRlIEI8LWQ+STxjYW1wby1kZXBlbmRlbmNpYXM+LiBQb3IgIgorIm9taXNpw7NuIGVsIEk8Y2FtcG8tZGVwZW5kZW5jaWFzPiBlcyBCPERlcGVuZHM+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToxMzkKK21zZ2lkICIiCisiSWYgdGhlIHNhbWUgZGVwZW5kZW5jeSBlbnRyeSAob3Igc2V0IG9mIGFsdGVybmF0aXZlcykgYXBwZWFycyBpbiBtb3JlIHRoYW4gIgorIm9uZSBvZiB0aGUgcmVjb2duaXNlZCBkZXBlbmRlbmN5IGZpZWxkIG5hbWVzIEI8UHJlLURlcGVuZHM+LCBCPERlcGVuZHM+LCAiCisiQjxSZWNvbW1lbmRzPiwgQjxFbmhhbmNlcz4gb3IgQjxTdWdnZXN0cz4gdGhlbiBCPGRwa2ctc2hsaWJkZXBzPiB3aWxsICIKKyJhdXRvbWF0aWNhbGx5IHJlbW92ZSB0aGUgZGVwZW5kZW5jeSBmcm9tIGFsbCBmaWVsZHMgZXhjZXB0IHRoZSBvbmUgIgorInJlcHJlc2VudGluZyB0aGUgbW9zdCBpbXBvcnRhbnQgZGVwZW5kZW5jaWVzLiIKK21zZ3N0ciAiIgorIlNpIGxhIG1pc21hIGRlcGVuZGVuY2lhIChvIHVuIGNvbmp1bnRvIGRlIGFsdGVybmF0aXZhcykgYXBhcmVjZSBlbiBtw6FzIGRlICIKKyJ1bm8gZGUgbG9zIG5vbWJyZXMgZGUgY2FtcG8gZGUgZGVwZW5kZW5jaWFzIHJlY29ub2NpZG9zOiBCPFByZS1EZXBlbmRzPiwgIgorIkI8RGVwZW5kcz4sIEI8UmVjb21tZW5kcz4sIEI8RW5oYW5jZXM+IG8gQjxTdWdnZXN0cz4sIEI8ZHBrZy1zaGxpYmRlcHM+ICIKKyJlbGltaW5hcsOhIGF1dG9tw6F0aWNhbWVudGUgbGEgZGVwZW5kZW5jaWEgZGUgdG9kb3MgbG9zIGNhbXBvcywgZXhjZXB0dWFuZG8gIgorImFxdcOpbCBxdWUgY29udGVuZ2EgbGFzIGRlcGVuZGVuY2lhcyBtw6FzIGltcG9ydGFudGVzLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTM5CisjLCBuby13cmFwCittc2dpZCAiQjwtcD5JPHZhcm5hbWVwcmVmaXg+IgorbXNnc3RyICJCPC1wPkk8cHJlZmlqby1kZS12YXJpYWJsZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTUwCittc2dpZCAiIgorIlN0YXJ0IHN1YnN0aXR1dGlvbiB2YXJpYWJsZXMgd2l0aCBJPHZhcm5hbWVwcmVmaXg+Qjw6PiBpbnN0ZWFkIG9mIEI8c2hsaWJzOiIKKyI+LiAgTGlrZXdpc2UsIGFueSBleGlzdGluZyBzdWJzdGl0dXRpb24gdmFyaWFibGVzIHN0YXJ0aW5nIHdpdGggIgorIkk8dmFybmFtZXByZWZpeD5CPDo+IChyYXRoZXIgdGhhbiBCPHNobGliczo+KSAgYXJlIHJlbW92ZWQgZnJvbSB0aGUgdGhlICIKKyJzdWJzdGl0dXRpb24gdmFyaWFibGVzIGZpbGUuIgorbXNnc3RyICIiCisiUHJvdm9jYSBxdWUgbGFzIHZhcmlhYmxlcyBkZSBzdXN0aXR1Y2nDs24gZW1waWVjZW4gcG9yIEk8cHJlZmlqby1kZS0iCisidmFyaWFibGU+Qjw6PiBlbiB2ZXogZGUgQjxzaGxpYnM6Pi4gQXNpbWlzbW8sIGN1YWxxdWllciB2YXJpYWJsZSBkZSAiCisic3VzdGl0dWNpw7NuIHlhIGV4aXN0ZW50ZSBxdWUgZW1waWVjZSBwb3IgSTxwcmVmaWpvLWRlLXZhcmlhYmxlPkI8Oj4gKGVuIHZleiAiCisiZGUgQjxzaGxpYnM6Pikgc2UgZWxpbWluYXLDoSBkZWwgZmljaGVybyBkZSBzdXN0aXR1Y2nDs24gZGUgdmFyaWFibGVzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToxNTYKK21zZ2lkICIiCisiUHJpbnQgc3Vic3RpdHV0aW9uIHZhcmlhYmxlIHNldHRpbmdzIHRvIHN0YW5kYXJkIG91dHB1dCwgcmF0aGVyIHRoYW4gYmVpbmcgIgorImFkZGVkIHRvIHRoZSBzdWJzdGl0dXRpb24gdmFyaWFibGVzIGZpbGUgKEI8ZGViaWFuL3N1YnN0dmFycz4gYnkgZGVmYXVsdCkuIgorbXNnc3RyICIiCisiTXVlc3RyYSBsYXMgcHJvcGllZGFkZXMgZGUgbGFzIHZhcmlhYmxlcyBkZSBzdXN0aXR1Y2nDs24gcG9yIGxhIHNhbGlkYSAiCisiZXN0w6FuZGFyLCBlbiBsdWdhciBkZSBhw7FhZGlyc2UgYWwgZmljaGVybyBkZSBzdXN0aXR1Y2nDs24gZGUgdmFyaWFibGVzIChwb3IgIgorIm9taXNpw7NuIEI8ZGViaWFuL3N1YnN0dmFycz4pLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTU2CisjLCBuby13cmFwCittc2dpZCAiQjwtdD5JPHR5cGU+IgorbXNnc3RyICJCPC10Pkk8dGlwbz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTYzCittc2dpZCAiIgorIlByZWZlciBzaGFyZWQgbGlicmFyeSBkZXBlbmRlbmN5IGluZm9ybWF0aW9uIHRhZ2dlZCBmb3IgdGhlIGdpdmVuIHBhY2thZ2UgIgorInR5cGUuIElmIG5vIHRhZ2dlZCBpbmZvcm1hdGlvbiBpcyBhdmFpbGFibGUsIGZhbGxzIGJhY2sgdG8gdW50YWdnZWQgIgorImluZm9ybWF0aW9uLiBUaGUgZGVmYXVsdCBwYWNrYWdlIHR5cGUgaXMgXCJkZWJcIi4gU2hhcmVkIGxpYnJhcnkgZGVwZW5kZW5jeSAiCisiaW5mb3JtYXRpb24gaXMgdGFnZ2VkIGZvciBhIGdpdmVuIHR5cGUgYnkgcHJlZml4aW5nIGl0IHdpdGggdGhlIG5hbWUgb2YgdGhlICIKKyJ0eXBlLCBhIGNvbG9uLCBhbmQgd2hpdGVzcGFjZS4iCittc2dzdHIgIiIKKyJEYSBwcmlvcmlkYWQgYSBsYSBpbmZvcm1hY2nDs24gZGUgZGVwZW5kZW5jaWEgZGUgYmlibGlvdGVjYXMgY29tcGFydGlkYXMgIgorImV0aXF1ZXRhZGEgcGFyYSBlbCB0aXBvIGRlIHBhcXVldGUgZGFkby4gRW4gY2FzbyBkZSBubyBleGlzdGlyIG5pbmd1bmEgIgorImluZm9ybWFjacOzbiBldGlxdWV0YWRhLCB1c2EgaW5mb3JtYWNpw7NuIHNpbiBldGlxdWV0YXIgcG9yIG9taXNpw7NuLiBFbCB0aXBvICIKKyJkZSBwYXF1ZXRlIHByZWRlZmluaWRvIGVzIMKrZGViwrsuIExhIGluZm9ybWFjacOzbiBkZSBkZXBlbmRlbmNpYSBkZSAiCisiYmlibGlvdGVjYXMgY29tcGFydGlkYXMgc2UgZXRpcXVldGEgcGFyYSB1biB0aXBvIGRhZG8gcHJlZmlqYW5kbyDDqXN0ZSBjb24gZWwgIgorIm5vbWJyZSBkZWwgdGlwbywgZG9zIHB1bnRvcywgeSB1biBlc3BhY2lvLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTYzCisjLCBuby13cmFwCittc2dpZCAiQjwtTD5JPGxvY2Fsc2hsaWJzZmlsZT4iCittc2dzdHIgIkI8LUw+STxmaWNoZXJvLXNobGlicy1sb2NhbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTY5Cittc2dpZCAiIgorIlJlYWQgb3ZlcnJpZGluZyBzaGFyZWQgbGlicmFyeSBkZXBlbmRlbmN5IGluZm9ybWF0aW9uIGZyb20gIgorIkk8bG9jYWxzaGxpYnNmaWxlPiBpbnN0ZWFkIG9mIEI8ZGViaWFuL3NobGlicy5sb2NhbD4uIgorbXNnc3RyICIiCisiUHJvdm9jYSBxdWUgQjxkcGtnLXNobGlicz4gbGVhIGxhIGluZm9ybWFjacOzbiBzb2JyZSBkZXBlbmRlbmNpYXMgY29uICIKKyJiaWJsaW90ZWNhcyBjb21wYXJ0aWRhcyBkZXNkZSBJPGZpY2hlcm8tc2hsaWJzLWxvY2FsPiBlbiB2ZXogZGUgQjxkZWJpYW4vIgorInNobGlicy5sb2NhbD4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjE3NQorbXNnaWQgIiIKKyJXcml0ZSBzdWJzdGl0dXRpb24gdmFyaWFibGVzIGluIEk8c3Vic3R2YXJzZmlsZT47IHRoZSBkZWZhdWx0IGlzIEI8ZGViaWFuLyIKKyJzdWJzdHZhcnM+LiIKK21zZ3N0ciAiIgorIkVzY3JpYmUgbGFzIHZhcmlhYmxlcyBkZSBzdXN0aXR1Y2nDs24gZW4gSTxmaWNoZXJvLXN1c3RpdHVjacOzbi12YXJpYWJsZXM+OyAiCisicG9yIG9taXNpw7NuIEI8ZGViaWFuL3N1YnN0dmFycz4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zaGxpYmRlcHMuMToxNzUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC12PiIKK21zZ3N0ciAiQjwtdj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTgwCittc2dpZCAiIgorIkVuYWJsZSB2ZXJib3NlIG1vZGUuIE51bWVyb3VzIG1lc3NhZ2VzIGFyZSBkaXNwbGF5ZWQgdG8gZXhwbGFpbiB3aGF0IEI8ZHBrZy0iCisic2hsaWJkZXBzPiBkb2VzLiIKK21zZ3N0ciAiIgorIkFjdGl2YSBlbCBtb2RvIGluZm9ybWF0aXZvLiBTZSBtdWVzdHJhbiBudW1lcm9zb3MgbWVuc2FqZXMgcXVlIGV4cGxpY2FuIGxhcyAiCisiYWNjaW9uZXMgZGUgQjxkcGtnLXNobGluZGVwcz4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zaGxpYmRlcHMuMToxODAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC14Pkk8cGFja2FnZT4iCittc2dzdHIgIkI8LXg+STxwYXF1ZXRlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToxODcKK21zZ2lkICIiCisiRXhjbHVkZSB0aGUgcGFja2FnZSBmcm9tIHRoZSBnZW5lcmF0ZWQgZGVwZW5kZW5jaWVzLiBUaGlzIGlzIHVzZWZ1bCB0byBhdm9pZCAiCisic2VsZi1kZXBlbmRlbmNpZXMgZm9yIHBhY2thZ2VzIHdoaWNoIHByb3ZpZGUgRUxGIGJpbmFyaWVzIChleGVjdXRhYmxlcyBvciAiCisibGlicmFyeSBwbHVnaW5zKSB1c2luZyBhIGxpYnJhcnkgY29udGFpbmVkIGluIHRoZSBzYW1lIHBhY2thZ2UuIFRoaXMgb3B0aW9uICIKKyJjYW4gYmUgdXNlZCBtdWx0aXBsZSB0aW1lcyB0byBleGNsdWRlIHNldmVyYWwgcGFja2FnZXMuIgorbXNnc3RyICIiCisiRXhjbHV5ZSBlbCBwYXF1ZXRlIGRlIGxhcyBkZXBlbmRlbmNpYXMgZ2VuZXJhZGFzLiBFcyDDunRpbCBwYXJhIGV2aXRhciBhdXRvLSIKKyJkZXBlbmRlbmNpYXMgZGUgcGFxdWV0ZXMgcXVlIHByb3BvcmNpb25hbiBiaW5hcmlvcyBFTEYgKGVqZWN1dGFibGVzIG8gIgorImV4dGVuc2lvbmVzIGRlIGJpYmxpb3RlY2FzKSB5IHF1ZSB1c2FuIHVuYSBiaWJsaW90ZWNhIGNvbnRlbmlkYSBlbiBlbCBtaXNtbyAiCisicGFxdWV0ZS4gRXN0YSBvcGNpw7NuIHNlIHB1ZWRlIHVzYXIgdmFyaWFzIHZlY2VzIHBhcmEgZXhjbHVpciB2YXJpb3MgcGFxdWV0ZXMuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zaGxpYmRlcHMuMToxODcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1TPkk8cGtnYnVpbGRkaXI+IgorbXNnc3RyICJCPC1TPkk8ZGlyZWN0b3Jpby1jb21waWxhY2nDs24tcGFxdWV0ZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTk0Cittc2dpZCAiIgorIkxvb2sgaW50byBJPHBrZ2J1aWxkZGlyPiBmaXJzdCB3aGVuIHRyeWluZyB0byBmaW5kIGEgbGlicmFyeS4gVGhpcyBpcyB1c2VmdWwgIgorIndoZW4gdGhlIHNvdXJjZSBwYWNrYWdlIGJ1aWxkcyBtdWx0aXBsZSBmbGF2b3JzIG9mIHRoZSBzYW1lIGxpYnJhcnkgYW5kIHlvdSAiCisid2FudCB0byBlbnN1cmUgdGhhdCB5b3UgZ2V0IHRoZSBkZXBlbmRlbmN5IGZyb20gYSBnaXZlbiBiaW5hcnkgcGFja2FnZS4gWW91ICIKKyJjYW4gdXNlIHRoaXMgb3B0aW9uIG11bHRpcGxlIHRpbWVzOiBkaXJlY3RvcmllcyB3aWxsIGJlIHRyaWVkIGluIHRoZSBzYW1lICIKKyJvcmRlciBiZWZvcmUgZGlyZWN0b3JpZXMgb2Ygb3RoZXIgYmluYXJ5IHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorIkFuYWxpemEgZWwgSTxkaXJlY3RvcmlvLWNvbXBpbGFjacOzbi1wYXF1ZXRlPiBwcmltZXJvIGFsIGJ1c2NhciB1bmEgIgorImJpYmxpb3RlY2EuIEVzIMO6dGlsIGN1YW5kbyBlbCBwYXF1ZXRlIGZ1ZW50ZSBnZW5lcmEgZGlzdGludGFzIHZhcmlhbnRlcyBkZSAiCisibGEgbWlzbWEgYmlibGlvdGVjYSwgeSBxdWllcmUgYXNlZ3VyYXIgcXVlIG9idGllbmUgbGEgZGVwZW5kZW5jaWEgZGUgdW4gIgorInBhcXVldGUgYmluYXJpbyBkYWRvLiBQdWVkZSB1c2FyIGVzdGEgb3BjacOzbiB2YXJpYXMgdmVjZXM6IGxvcyBkaXJlY3RvcmlvcyAiCisic2UgYW5hbGl6YW4gZW4gZWwgbWlzbW8gb3JkZW4gYW50ZXMgZGUgYW5hbGl6YXIgbG9zIGRpcmVjdG9yaW9zIGRlIG90cm9zICIKKyJwYXF1ZXRlcyBiaW5hcmlvcy4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNobGliZGVwcy4xOjE5NAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1pZ25vcmUtbWlzc2luZy1pbmZvPiIKK21zZ3N0ciAiQjwtLWlnbm9yZS1taXNzaW5nLWluZm8+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjIwMAorbXNnaWQgIiIKKyJEbyBub3QgZmFpbCBpZiBkZXBlbmRlbmN5IGluZm9ybWF0aW9uIGNhbid0IGJlIGZvdW5kIGZvciBhIHNoYXJlZCBsaWJyYXJ5LiAgIgorIlVzYWdlIG9mIHRoaXMgb3B0aW9uIGlzIGRpc2NvdXJhZ2VkLCBhbGwgbGlicmFyaWVzIHNob3VsZCBwcm92aWRlIGRlcGVuZGVuY3kgIgorImluZm9ybWF0aW9uIChlaXRoZXIgd2l0aCBzaGxpYnMgZmlsZXMsIG9yIHdpdGggc3ltYm9scyBmaWxlcykgIGV2ZW4gaWYgdGhleSAiCisiYXJlIG5vdCB5ZXQgdXNlZCBieSBvdGhlciBwYWNrYWdlcy4iCittc2dzdHIgIiIKKyJObyBkZXZ1ZWx2ZSB1biBmYWxsbyBlbiBjYXNvIGRlIG5vIGVuY29udHJhciBsYSBpbmZvcm1hY2nDs24gZGUgZGVwZW5kZW5jaWEgIgorImRlIHVuYSBiaWJsaW90ZWNhIGNvbXBhcnRpZGEuIE5vIHNlIHJlY29taWVuZGEgdXNhciBlc3RhIG9wY2nDs24geWEgcXVlIHRvZGFzICIKKyJsYXMgYmlibGlvdGVjYXMgZGViZXLDrWFuIHByb3BvcmNpb25hciBpbmZvcm1hY2nDs24gZGUgZGVwZW5kZW5jaWEgKG1lZGlhbnRlICIKKyJsb3MgZmljaGVyb3MgwqtzaGxpYnPCuywgbyBmaWNoZXJvcyBkZSBzw61tYm9sb3MpLCBpbmNsdXNvIGN1YW5kbyBvdHJvcyAiCisicGFxdWV0ZXMgbm8gbG9zIHVzYW4gYWN0dWFsbWVudGUuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zaGxpYmRlcHMuMToyMDAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0td2FybmluZ3M9Pkk8dmFsdWU+IgorbXNnc3RyICJCPC0td2FybmluZ3M9Pkk8dmFsb3I+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjIxMQorbXNnaWQgIiIKKyJJPHZhbHVlPiBpcyBhIGJpdCBmaWVsZCBkZWZpbmluZyB0aGUgc2V0IG9mIHdhcm5pbmdzIHRoYXQgY2FuIGJlIGVtaXR0ZWQgYnkgIgorIkI8ZHBrZy1zaGxpYmRlcHM+LiAgQml0IDAgKHZhbHVlPTEpIGVuYWJsZXMgdGhlIHdhcm5pbmcgXCJzeW1ib2wgSTxzeW0+IHVzZWQgIgorImJ5IEk8YmluYXJ5PiBmb3VuZCBpbiBub25lIG9mIHRoZSBsaWJyYXJpZXNcIiwgYml0IDEgKHZhbHVlPTIpIGVuYWJsZXMgdGhlICIKKyJ3YXJuaW5nIFwiZGVwZW5kZW5jeSBvbiBJPGxpYnJhcnk+IGNvdWxkIGJlIGF2b2lkZWRcIiBhbmQgYml0IDIgKHZhbHVlPTQpICAiCisiZW5hYmxlcyB0aGUgd2FybmluZyBcIkk8YmluYXJ5PiBzaG91bGRuJ3QgYmUgbGlua2VkIHdpdGggSTxsaWJyYXJ5PlwiLiAgVGhlICIKKyJkZWZhdWx0IEk8dmFsdWU+IGlzIDM6IHRoZSBmaXJzdCB0d28gd2FybmluZ3MgYXJlIGFjdGl2ZSBieSBkZWZhdWx0LCB0aGUgIgorImxhc3Qgb25lIGlzIG5vdC4gU2V0IEk8dmFsdWU+IHRvIDcgaWYgeW91IHdhbnQgYWxsIHdhcm5pbmdzIHRvIGJlIGFjdGl2ZS4iCittc2dzdHIgIiIKKyJJPHZhbG9yPiBlcyB1biBjYW1wbyBkZSBiaXQgcXVlIGRlZmluZSBlbCBjb25qdW50byBkZSBhdmlzb3MgcXVlIEI8ZHBrZy0iCisic2hsaWJkZXBzPiBwdWVkZSBlbWl0aXIuIEJpdCAwICh2YWxvcj0xKSBhY3RpdmEgZWwgYXZpc28gwqtzeW1ib2wgSTxzeW0+IHVzZWQgIgorImJ5IEk8YmluYXJ5PiBmb3VuZCBpbiBub25lIG9mIHRoZSBsaWJyYXJpZXPCuywgZWwgYml0IDEgKHZhbG9yPTIpIGFjdGl2YSBlbCAiCisiYXZpc28gwqtkZXBlbmRlbmN5IG9uIEk8bGlicmFyeT4gY291bGQgYmUgYXZvaWRlZMK7LCB5IGJpdCAyICh2YWxvcj00KSBhY3RpdmEgIgorImVsIGF2aXNvIMKrSTxiaW5hcnk+IHNob3VsZG4ndCBiZSBsaW5rZWQgd2l0aCBJPGxpYnJhcnk+wrsuIEVsIEk8dmFsb3I+ICIKKyJwcmVkZWZpbmlkbyBlcyAzOiBsb3MgZG9zIHByaW1lcm9zIGF2aXNvcyBlc3TDoW4gYWN0aXZhZG9zIHBvciBvbWlzacOzbiwgbm8gZWwgIgorIsO6bHRpbW8uIERlZmluYSBlbCBJPHZhbG9yPiBjb24gNyBzaSBkZXNlYSBxdWUgdG9kb3MgbG9zIGF2aXNvcyBlc3TDqW4gYWN0aXZvcy4iCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLXNobGliZGVwcy4xOjIyMgorIywgbm8td3JhcAorbXNnaWQgIldBUk5JTkdTIgorbXNnc3RyICJBRFZFUlRFTkNJQVMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjMwCittc2dpZCAiIgorIlNpbmNlIEI8ZHBrZy1zaGxpYmRlcHM+IGFuYWx5emVzIHRoZSBzZXQgb2Ygc3ltYm9scyB1c2VkIGJ5IGVhY2ggYmluYXJ5IG9mICIKKyJ0aGUgZ2VuZXJhdGVkIHBhY2thZ2UsIGl0IGlzIGFibGUgdG8gZW1pdCB3YXJuaW5ncyBpbiBzZXZlcmFsIGNhc2VzLiBUaGV5ICIKKyJpbmZvcm0geW91IG9mIHRoaW5ncyB0aGF0IGNhbiBiZSBpbXByb3ZlZCBpbiB0aGUgcGFja2FnZS4gSW4gbW9zdCBjYXNlcywgIgorInRob3NlIGltcHJvdmVtZW50cyBjb25jZXJuIHRoZSB1cHN0cmVhbSBzb3VyY2VzIGRpcmVjdGx5LiBCeSBvcmRlciBvZiAiCisiZGVjcmVhc2luZyBpbXBvcnRhbmNlLCBoZXJlIGFyZSB0aGUgdmFyaW91cyB3YXJuaW5ncyB0aGF0IHlvdSBjYW4gZW5jb3VudGVyOiIKK21zZ3N0ciAiIgorIkRlYmlkbyBhIHF1ZSBCPGRwa2ctc2hsaWJkZXBzPiBhbmFsaXphIGVsIGNvbmp1bnRvIGRlIHPDrW1ib2xvcyB1c2FkbyBwb3IgIgorImNhZGEgYmluYXJpbyBkZWwgcGFxdWV0ZSBnZW5lcmFkbywgcHVlZGUgbW9zdHJhciBhdmlzb3MgZW4gdmFyaWFzICIKKyJzaXR1YWNpb25lcy4gw4lzdG9zIGluZm9ybWFuIGRlIGFzcGVjdG9zIG1lam9yYWJsZXMgZGVsIHBhcXVldGUuIEVuIGxhICIKKyJtYXlvcsOtYSBkZSBsb3MgY2Fzb3MsIGNvbmNpZXJuZW4gZGlyZWN0YW1lbnRlIGEgbGFzIGZ1ZW50ZXMgb3JpZ2luYWwuIEEgIgorImNvbnRpbnVhY2nDs24gc2UgbXVlc3RyYW4gbG9zIHZhcmlvcyBtZW5zYWplcyBkZSBhZHZlcnRlbmNpYSBxdWUgcHVlZGVuICIKKyJhcGFyZWNlciwgcG9yIG9yZGVuIGRlIGltcG9ydGFuY2lhIGRlY3JlY2llbnRlLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjMwCisjLCBuby13cmFwCittc2dpZCAiQjxzeW1ib2w+STwgc3ltPkI8IHVzZWQgYnkgPkk8YmluYXJ5PkI8IGZvdW5kIGluIG5vbmUgb2YgdGhlIGxpYnJhcmllcy4+IgorbXNnc3RyICJCPHN5bWJvbD5JPCBzeW0+QjwgdXNlZCBieSA+STxiaW5hcnk+QjwgZm91bmQgaW4gbm9uZSBvZiB0aGUgbGlicmFyaWVzLj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjM2Cittc2dpZCAiIgorIlRoZSBpbmRpY2F0ZWQgc3ltYm9sIGhhcyBub3QgYmVlbiBmb3VuZCBpbiB0aGUgbGlicmFyaWVzIGxpbmtlZCB3aXRoIHRoZSAiCisiYmluYXJ5LiBUaGUgSTxiaW5hcnk+IGlzIG1vc3QgbGlrZWx5IGEgbGlicmFyeSBhbmQgaXQgbmVlZHMgdG8gYmUgbGlua2VkICIKKyJ3aXRoIGFuIGFkZGl0aW9uYWwgbGlicmFyeSBkdXJpbmcgdGhlIGJ1aWxkIHByb2Nlc3MgKG9wdGlvbiBCPC1sPkk8bGlicmFyeT4gIgorIm9mIHRoZSBsaW5rZXIpLiIKK21zZ3N0ciAiIgorIkVsIHPDrW1ib2xvIGluZGljYWRvIG5vIHNlIGVuY29udHLDsyBlbiBsYXMgYmlibGlvdGVjYXMgZW5sYXphZGFzIGNvbiBlbCAiCisiYmluYXJpby4gUG9zaWJsZW1lbnRlLCBJPGJpbmFyaW8+IGVzIHVuYSBiaWJsaW90ZWNhLCB5IG5lY2VzaXRhIGVzdGFyICIKKyJlbmxhemFkbyBjb24gdW5hIGJpYmxpb3RlY2EgYWRpY2lvbmFsIGR1cmFudGUgZWwgcHJvY2VzbyBkZSBjb25zdHJ1Y2Npw7NuICIKKyIob3BjacOzbiBCPC1sPkk8YmlibGlvdGVjYT4gZGVsIGVubGF6YWRvcikuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zaGxpYmRlcHMuMToyMzYKKyMsIG5vLXdyYXAKK21zZ2lkICJJPGJpbmFyeT5CPCBjb250YWlucyBhbiB1bnJlc29sdmFibGUgcmVmZXJlbmNlIHRvIHN5bWJvbCA+STxzeW0+Qjw6IGl0J3MgcHJvYmFibHkgYSBwbHVnaW4+IgorbXNnc3RyICJJPGJpbmFyeT5CPCBjb250YWlucyBhbiB1bnJlc29sdmFibGUgcmVmZXJlbmNlIHRvIHN5bWJvbCA+STxzeW0+Qjw6IGl0J3MgcHJvYmFibHkgYSBwbHVnaW4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjI0OQorbXNnaWQgIiIKKyJUaGUgaW5kaWNhdGVkIHN5bWJvbCBoYXMgbm90IGJlZW4gZm91bmQgaW4gdGhlIGxpYnJhcmllcyBsaW5rZWQgd2l0aCB0aGUgIgorImJpbmFyeS4gVGhlIEk8YmluYXJ5PiBpcyBtb3N0IGxpa2VseSBhIHBsdWdpbiBhbmQgdGhlIHN5bWJvbCBpcyBwcm9iYWJseSAiCisicHJvdmlkZWQgYnkgdGhlIHByb2dyYW0gdGhhdCBsb2FkcyB0aGlzIHBsdWdpbi4gSW4gdGhlb3J5IGEgcGx1Z2luIGRvZXNuJ3QgIgorImhhdmUgYW55IFNPTkFNRSBidXQgdGhpcyBiaW5hcnkgZG9lcyBoYXZlIG9uZSBhbmQgYXMgc3VjaCBpdCBjb3VsZCBub3QgYmUgIgorImNsZWFybHkgaWRlbnRpZmllZCBhcyBzdWNoLiBIb3dldmVyIHRoZSBmYWN0IHRoYXQgdGhlIGJpbmFyeSBpcyBzdG9yZWQgaW4gYSAiCisibm9uLXB1YmxpYyBkaXJlY3RvcnkgaXMgYSBzdHJvbmcgaW5kaWNhdGlvbiB0aGF0J3MgaXQncyBub3QgYSBub3JtYWwgc2hhcmVkICIKKyJsaWJyYXJ5LiBJZiB0aGUgYmluYXJ5IGlzIHJlYWxseSBhIHBsdWdpbiwgdGhlbiBkaXNyZWdhcmQgdGhpcyB3YXJuaW5nLiBCdXQgIgorInRoZXJlJ3MgYWx3YXlzIHRoZSBwb3NzaWJpbGl0eSB0aGF0IGl0J3MgYSByZWFsIGxpYnJhcnkgYW5kIHRoYXQgcHJvZ3JhbXMgIgorImxpbmtpbmcgdG8gaXQgYXJlIHVzaW5nIGFuIFJQQVRIIHNvIHRoYXQgdGhlIGR5bmFtaWMgbG9hZGVyIGZpbmRzIGl0LiBJbiAiCisidGhhdCBjYXNlLCB0aGUgbGlicmFyeSBpcyBicm9rZW4gYW5kIG5lZWRzIHRvIGJlIGZpeGVkLiIKK21zZ3N0ciAiIgorIkVsIHPDrW1ib2xvIGluZGljYWRvIG5vIHNlIGhhIGVuY29udHJhZG8gZW4gbGFzIGJpYmxpb3RlY2FzIGVubGF6YWRhcyBjb24gZWwgIgorImJpbmFyaW8uIFByb2JhYmxlbWVudGUsIGVsIEk8YmluYXJpbz4gZXMgdW5hIGV4dGVuc2nDs24sIHkgY2FiZSBxdWUgZWwgIgorInByb2dyYW1hIHF1ZSBjYXJnYSB0YWwgZXh0ZW5zacOzbiBwcm9wb3JjaW9uYSBlbCBzw61tYm9sby4gVGXDs3JpY2FtZW50ZSwgdW5hICIKKyJleHRlbnNpw7NuIG5vIHRpZW5lIG5pbmfDum4gwqtTT05BTUXCuywgcGVybyBzw60gZXN0ZSBiaW5hcmlvLCB5IHBvciBlbGxvIG5vIHNlICIKKyJsZSBwdWVkZSBpZGVudGlmaWNhciBjbGFyYW1lbnRlIGNvbW8gdGFsLiBBw7puIGFzw60sIGVsIGhlY2hvIGRlIHF1ZSBlbCAiCisiYmluYXJpbyBzZSBndWFyZGEgZW4gdW4gZGlyZWN0b3JpbyBubyBww7pibGljbyBlcyB1bmEgaW5kaWNhY2nDs24gZGUgcXVlIG5vIGVzICIKKyJ1bmEgYmlibGlvdGVjYSBjb21wYXJ0aWRhIG5vcm1hbC4gU2kgZWwgYmluYXJpbyBlcyByZWFsbWVudGUgdW5hIGV4dGVuc2nDs24sICIKKyJubyBoYWdhIGNhc28gZGUgZXN0ZSBhdmlzby4gU2llbXByZSBjYWJlIGxhIHBvc2liaWxpZGFkIGRlIHF1ZSBlcyB1bmEgIgorImJpYmxpb3RlY2EgcmVhbCwgeSBxdWUgbG9zIHByb2dyYW1hcyBxdWUgZW5sYXphbiBjb24gZWwgdXNhbiB1biDCq1JQQVRIwrsgcGFyYSAiCisicXVlIGVsIGNhcmdhZG9yIGRpbsOhbWljbyBsbyBlbmN1ZW50cmUuIEVuIHRhbCBjYXNvLCBsYSBiaWJsaW90ZWNhIGVzdMOhIHJvdGEgIgorInkgcHJlY2lzYSB1biBhcnJlZ2xvLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjQ5CisjLCBuby13cmFwCittc2dpZCAiQjxkZXBlbmRlbmN5IG9uID5JPGxpYnJhcnk+QjwgY291bGQgYmUgYXZvaWRlZCBpZiA+STxiaW5hcmllcz5CPCB3ZXJlIG5vdCB1c2VsZXNzbHkgbGlua2VkIGFnYWluc3QgaXQgKHRoZXkgdXNlIG5vbmUgb2YgaXRzIHN5bWJvbHMpLj4iCittc2dzdHIgIkI8ZGVwZW5kZW5jeSBvbiA+STxsaWJyYXJ5PkI8IGNvdWxkIGJlIGF2b2lkZWQgaWYgPkk8YmluYXJpZXM+Qjwgd2VyZSBub3QgdXNlbGVzc2x5IGxpbmtlZCBhZ2FpbnN0IGl0ICh0aGV5IHVzZSBub25lIG9mIGl0cyBzeW1ib2xzKS4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjI1NQorbXNnaWQgIiIKKyJOb25lIG9mIHRoZSBJPGJpbmFyaWVzPiB0aGF0IGFyZSBsaW5rZWQgd2l0aCBJPGxpYnJhcnk+IHVzZSBhbnkgb2YgdGhlICIKKyJzeW1ib2xzIHByb3ZpZGVkIGJ5IHRoZSBsaWJyYXJ5LiBCeSBmaXhpbmcgYWxsIHRoZSBiaW5hcmllcywgeW91IHdvdWxkIGF2b2lkICIKKyJ0aGUgZGVwZW5kZW5jeSBhc3NvY2lhdGVkIHRvIHRoaXMgbGlicmFyeSAodW5sZXNzIHRoZSBzYW1lIGRlcGVuZGVuY3kgaXMgIgorImFsc28gZ2VuZXJhdGVkIGJ5IGFub3RoZXIgbGlicmFyeSB0aGF0IGlzIHJlYWxseSB1c2VkKS4iCittc2dzdHIgIiIKKyJOaW5ndW5vIGRlIGxvcyBJPGJpbmFyaW9zPiBlbmxhemFkb3MgY29uIGxhIEk8YmlibGlvdGVjYT4gdXNhbiBzw61tYm9sb3MgcXVlICIKKyJwcm9wb3JjaW9uYSBsYSBiaWJsaW90ZWNhLiBBbCBhcnJlZ2xhciB0b2RvcyBsb3MgYmluYXJpb3MsIGV2aXRhcsOtYSBsYSAiCisiZGVwZW5kZW5jaWEgYXNvY2lhZGEgYSBlc3RhIGJpYmxpb3RlY2EgKGEgbWVub3MgcXVlIGxhIGRlcGVuZGVuY2lhIHNlIGdlbmVyZSAiCisidGFtYmnDqW4gcGFyYSBvdHJhIGJpYmxpb3RlY2EgcXVlIHPDrSBsYSB1c2EpLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjU1CisjLCBuby13cmFwCittc2dpZCAiSTxiaW5hcnk+Qjwgc2hvdWxkbid0IGJlIGxpbmtlZCB3aXRoID5JPGxpYnJhcnk+QjwgKGl0IHVzZXMgbm9uZSBvZiBpdHMgc3ltYm9scykuPiIKK21zZ3N0ciAiSTxiaW5hcnk+Qjwgc2hvdWxkbid0IGJlIGxpbmtlZCB3aXRoID5JPGxpYnJhcnk+QjwgKGl0IHVzZXMgbm9uZSBvZiBpdHMgc3ltYm9scykuPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToyNjIKK21zZ2lkICIiCisiVGhlIEk8YmluYXJ5PiBpcyBsaW5rZWQgdG8gYSBsaWJyYXJ5IHRoYXQgaXQgZG9lc24ndCBuZWVkLiBJdCdzIG5vdCBhICIKKyJwcm9ibGVtIGJ1dCBzb21lIHNtYWxsIHBlcmZvcm1hbmNlIGltcHJvdmVtZW50cyBpbiBiaW5hcnkgbG9hZCB0aW1lIGNhbiBiZSAiCisib2J0YWluZWQgYnkgbm90IGxpbmtpbmcgdGhpcyBsaWJyYXJ5IHRvIHRoaXMgYmluYXJ5LiBUaGlzIHdhcm5pbmcgY2hlY2tzIHRoZSAiCisic2FtZSBpbmZvcm1hdGlvbiB0aGFuIHRoZSBwcmV2aW91cyBvbmUgYnV0IGRvZXMgaXQgZm9yIGVhY2ggYmluYXJ5IGluc3RlYWQgIgorIm9mIGRvaW5nIHRoZSBjaGVjayBnbG9iYWxseSBvbiBhbGwgYmluYXJpZXMgYW5hbHl6ZWQuIgorbXNnc3RyICIiCisiRWwgSTxiaW5hcmlvPiBlc3TDoSBlbmxhemFkbyBjb24gdW5hIGJpYmxpb3RlY2EgcXVlIG5vIG5lY2VzaXRhLiBObyBlcyB1biAiCisicHJvYmxlbWEsIHBlcm8gcHVlZGUgb3B0aW1pemFyIGxldmVtZW50ZSBlbCB0aWVtcG8gZGUgY2FyZ2EgZGVsIGJpbmFyaW8gc2kgIgorIm5vIGVubGF6YSB0YWwgYmluYXJpbyBhIGxhIGJpYmxpb3RlY2EuIEVzdGUgYXZpc28gcmV2aXNhIGxhIG1pc21hICIKKyJpbmZvcm1hY2nDs24gcXVlIGVsIGFudGVyaW9yLCBwZXJvIGxvIGhhY2UgcGFyYSBjYWRhIGJpbmFyaW8sIGVuIGx1Z2FyIGRlIHVuYSAiCisicmV2aXNpw7NuIGdsb2JhbCBkZSB0b2RvcyBsb3MgYmluYXJpb3MuIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1zaGxpYmRlcHMuMToyNjIKKyMsIG5vLXdyYXAKK21zZ2lkICJFUlJPUlMiCittc2dzdHIgIkZBTExPUyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToyNjkKK21zZ2lkICIiCisiQjxkcGtnLXNobGliZGVwcz4gd2lsbCBmYWlsIGlmIGl0IGNhbid0IGZpbmQgYSBwdWJsaWMgbGlicmFyeSB1c2VkIGJ5IGEgIgorImJpbmFyeSBvciBpZiB0aGlzIGxpYnJhcnkgaGFzIG5vIGFzc29jaWF0ZWQgZGVwZW5kZW5jeSBpbmZvcm1hdGlvbiAoZWl0aGVyICIKKyJzaGxpYnMgZmlsZSBvciBzeW1ib2xzIGZpbGUpLiBBIHB1YmxpYyBsaWJyYXJ5IGhhcyBhIFNPTkFNRSBhbmQgaXMgdmVyc2lvbmVkICIKKyIobGlic29tZXRoaW5nLnNvLkk8WD4pLiBBIHByaXZhdGUgbGlicmFyeSAobGlrZSBhIHBsdWdpbikgc2hvdWxkIG5vdCBoYXZlIGEgIgorIlNPTkFNRSBhbmQgZG9lc24ndCBuZWVkIHRvIGJlIHZlcnNpb25lZC4iCittc2dzdHIgIiIKKyJCPGRwa2ctc2hsaWJkZXBzPiBmYWxsYXLDoSBzaSBubyBwdWVkZSBlbmNvbnRyYXIgbmluZ3VuYSBiaWJsaW90ZWNhIHDDumJsaWNhICIKKyJ1c2FkYSBwb3IgdW4gYmluYXJpbywgbyBzaSBubyBleGlzdGUgbmluZ3VuYSBpbmZvcm1hY2nDs24gZGUgZGVwZW5kZW5jaWEgIgorImFzb2NpYWRhIGEgZXN0YSBiaWJsaW90ZWNhIChlbCBmaWNoZXJvIMKrc2hsaWJzwrssIG8gZWwgZmljaGVybyDCq3N5bWJvbHPCuykuICIKKyJVbmEgYmlibGlvdGVjYSBww7pibGljYSB0aWVuZSB1biDCq1NPTkFNRcK7LCBlbCBjdWFsIHRpZW5lIGluZm9ybWFjacOzbiBkZSAiCisidmVyc2nDs24gKGJpYmxpb3RlY2Euc28uSTx4PikuIFVuYSBiaWJsaW90ZWNhIHByaXZhZGEgKGNvbW8gdW5hIGV4dGVuc2nDs24pIG5vICIKKyJkZWJlcsOtYSB0ZW5lciB1biDCq1NPTkFNRcK7LCB5IHBvciBlbGxvIG5vIG5lY2VzaXRhIGluZm9ybWFjacOzbiBkZSB2ZXJzacOzbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNobGliZGVwcy4xOjI2OQorIywgbm8td3JhcAorbXNnaWQgIkI8Y291bGRuJ3QgZmluZCBsaWJyYXJ5ID5JPGxpYnJhcnktc29uYW1lPkI8IG5lZWRlZCBieSA+STxiaW5hcnk+QjwgKGl0cyBSUEFUSCBpcyAnPkk8cnBhdGg+QjwnKT4iCittc2dzdHIgIkI8Y291bGRuJ3QgZmluZCBsaWJyYXJ5ID5JPGxpYnJhcnktc29uYW1lPkI8IG5lZWRlZCBieSA+STxiaW5hcnk+QjwgKGl0cyBSUEFUSCBpcyAnPkk8cnBhdGg+QjwnKT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6Mjg1CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJUaGUgSTxiaW5hcnk+IHVzZXMgYSBsaWJyYXJ5IGNhbGxlZCBJPGxpYnJhcnktc29uYW1lPiBidXQgQjxkcGtnLSIKKyN8ICJzaGxpYmRlcHM+IGhhcyBiZWVuIHVuYWJsZSB0byBmaW5kIHRoZSBsaWJyYXJ5LiAgQjxkcGtnLXNobGliZGVwcz4gIgorI3wgImNyZWF0ZXMgYSBsaXN0IG9mIGRpcmVjdG9yaWVzIHRvIGNoZWNrIGFzIGZvbGxvd2luZzogZGlyZWN0b3JpZXMgbGlzdGVkICIKKyN8ICJpbiB0aGUgUlBBVEggb2YgdGhlIGJpbmFyeSwgZGlyZWN0b3JpZXMgbGlzdGVkIGluIC9ldGMvbGQuc28uY29uZiwgIgorI3wgImRpcmVjdG9yaWVzIGxpc3RlZCBpbiB0aGUgTERfTElCUkFSWV9QQVRIIGVudmlyb25tZW50IHZhcmlhYmxlLCBhbmQgIgorI3wgInN0YW5kYXJkIHB1YmxpYyBkaXJlY3RvcmllcyAoL2xpYiwgL3Vzci9saWIsIC9saWIzMiwgL3Vzci9saWIzMiwgL2xpYjY0LCAvIgorI3wgInVzci9saWI2NCkuIFRoZW4gaXQgY2hlY2tzIHRob3NlIGRpcmVjdG9yaWVzIGluIHRoZSBwYWNrYWdlJ3MgYnVpbGQgdHJlZSAiCisjfCAib2YgdGhlIGJpbmFyeSBiZWluZyBhbmFseXplZCwgaW4gdGhlIHBhY2thZ2VzJ3MgYnVpbGQgdHJlZXMgaW5kaWNhdGVkICIKKyN8ICJ3aXRoIHRoZSAtUyBjb21tYW5kLWxpbmUgb3B0aW9uLCBpbiBvdGhlciBwYWNrYWdlcydzIGJ1aWxkIHRyZWVzIHRoYXQgIgorI3wgImNvbnRhaW5zIGEgREVCSUFOL3NobGlicyBvciBERUJJQU4vc3ltYm9scyBmaWxlIGFuZCBmaW5hbGx5IGluIHRoZSByb290ICIKKyN8ICJkaXJlY3RvcnkuICBJZiB0aGUgbGlicmFyeSBpcyBub3QgZm91bmQgaW4gYW55IG9mIHRob3NlIGRpcmVjdG9yaWVzLCB0aGVuICIKKyN8ICJ5b3UgZ2V0IHRoaXMgZXJyb3IuIgorbXNnaWQgIiIKKyJUaGUgSTxiaW5hcnk+IHVzZXMgYSBsaWJyYXJ5IGNhbGxlZCBJPGxpYnJhcnktc29uYW1lPiBidXQgQjxkcGtnLXNobGliZGVwcz4gIgorImhhcyBiZWVuIHVuYWJsZSB0byBmaW5kIHRoZSBsaWJyYXJ5LiAgQjxkcGtnLXNobGliZGVwcz4gY3JlYXRlcyBhIGxpc3Qgb2YgIgorImRpcmVjdG9yaWVzIHRvIGNoZWNrIGFzIGZvbGxvd2luZzogZGlyZWN0b3JpZXMgbGlzdGVkIGluIHRoZSBSUEFUSCBvZiB0aGUgIgorImJpbmFyeSwgZGlyZWN0b3JpZXMgbGlzdGVkIGluIC9ldGMvbGQuc28uY29uZiwgZGlyZWN0b3JpZXMgbGlzdGVkIGluIHRoZSAiCisiTERfTElCUkFSWV9QQVRIIGVudmlyb25tZW50IHZhcmlhYmxlLCBhbmQgc3RhbmRhcmQgcHVibGljIGRpcmVjdG9yaWVzICgvIgorImxpYiwgL3Vzci9saWIsIC9saWIzMiwgL3Vzci9saWIzMiwgL2xpYjY0LCAvdXNyL2xpYjY0KS4gVGhlbiBpdCBjaGVja3MgdGhvc2UgIgorImRpcmVjdG9yaWVzIGluIHRoZSBwYWNrYWdlJ3MgYnVpbGQgdHJlZSBvZiB0aGUgYmluYXJ5IGJlaW5nIGFuYWx5emVkLCBpbiB0aGUgIgorInBhY2thZ2VzJyBidWlsZCB0cmVlcyBpbmRpY2F0ZWQgd2l0aCB0aGUgLVMgY29tbWFuZC1saW5lIG9wdGlvbiwgaW4gb3RoZXIgIgorInBhY2thZ2VzJyBidWlsZCB0cmVlcyB0aGF0IGNvbnRhaW5zIGEgREVCSUFOL3NobGlicyBvciBERUJJQU4vc3ltYm9scyBmaWxlICIKKyJhbmQgZmluYWxseSBpbiB0aGUgcm9vdCBkaXJlY3RvcnkuICBJZiB0aGUgbGlicmFyeSBpcyBub3QgZm91bmQgaW4gYW55IG9mICIKKyJ0aG9zZSBkaXJlY3RvcmllcywgdGhlbiB5b3UgZ2V0IHRoaXMgZXJyb3IuIgorbXNnc3RyICIiCisiRWwgSTxiaW5hcmlvPiB1c2EgdW5hIGJpYmxpb3RlY2EgbGxhbWFkYSBJPHNvbmFtZS1iaWJsaW90ZWNhPiwgcGVybyBCPGRwa2ctIgorInNobGliZGVwcz4gaGEgc2lkbyBpbmNhcGF6IGRlIGVuY29udHJhciBsYSBiaWJsaW90ZWNhLiBCPGRwa2ctc2hsaWJkZXBzPiAiCisiY3JlYSB1bmEgbGlzdGEgZGUgZGlyZWN0b3Jpb3MgYSByZXZpc2FyIGVuIGVsIHNpZ3VpZW50ZSBvcmRlbjogbG9zICIKKyJkaXJlY3RvcmlvcyBsaXN0YWRvcyBlbiBlbCDCq1JQQVRIwrsgZGVsIGJpbmFyaW8sIGxvcyBkaXJlY3RvcmlvcyBsaXN0YWRvcyBlbiAvIgorImV0Yy9sZC5zby5jb25mLCBsb3MgZGlyZWN0b3Jpb3MgbGlzdGFkb3MgZW4gbGEgdmFyaWFibGUgZGUgZW50b3JubyAiCisiwqtMRF9MSUJSQVJZX1BBVEjCuywgeSBsb3MgZGlyZWN0b3Jpb3MgcMO6YmxpY29zIGVzdMOhbmRhciAoL2xpYiwgL3Vzci9saWIsIC8iCisibGliMzIsIC91c3IvbGliMzIsIC9saWI2NCwgL3Vzci9saWI2NCkuIERlc3B1w6lzIHJldmlzYSBlc29zIGRpcmVjdG9yaW9zIGVuICIKKyJlbCDDoXJib2wgZGUgY29uc3RydWNjacOzbiBkZWwgcGFxdWV0ZSBkZWwgYmluYXJpbyBhbmFsaXphZG8sIGVuIGxvcyDDoXJib2xlcyAiCisiZGUgY29uc3RydWNjacOzbiBkZWwgcGFxdWV0ZSBpbmRpY2Fkb3MgY29uIGxhIG9wY2nDs24gZGUgbMOtbmVhIGRlIMOzcmRlbmVzIMKrLSIKKyJTwrssIGVuIG90cm9zIMOhcmJvbGVzIGRlIGNvbnN0cnVjY2nDs24gZGUgcGFxdWV0ZSBxdWUgY29udGllbmVuIGVsIGZpY2hlcm8gIgorIsKrREVCSUFOL3NobGlic8K7IG8gwqtERUJJQU4vc3ltYm9sc8K7LCB5IHBvciDDumx0aW1vIGVuIGVsIGRpcmVjdG9yaW8gcmHDrXouIEVzdG8gIgorImVycm9yIGFwYXJlY2UgY3VhbmRvIGxhIGJpYmxpb3RlY2Egbm8gc2UgZW5jdWVudHJhIGVuIG5pbmd1bm8gZGUgZXN0b3MgIgorImRpcmVjdG9yaW9zLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToyOTEKK21zZ2lkICIiCisiSWYgdGhlIGxpYnJhcnkgbm90IGZvdW5kIGlzIGluIGEgcHJpdmF0ZSBkaXJlY3Rvcnkgb2YgdGhlIHNhbWUgcGFja2FnZSwgdGhlbiAiCisieW91IHdhbnQgdG8gYWRkIHRoZSBkaXJlY3RvcnkgdG8gTERfTElCUkFSWV9QQVRILiBJZiBpdCdzIGluIGFub3RoZXIgYmluYXJ5ICIKKyJwYWNrYWdlIGJlaW5nIGJ1aWx0LCB5b3Ugd2FudCB0byBtYWtlIHN1cmUgdGhhdCB0aGUgc2hsaWJzL3N5bWJvbHMgZmlsZSBvZiAiCisidGhpcyBwYWNrYWdlIGlzIGFscmVhZHkgY3JlYXRlZCBhbmQgdGhhdCBMRF9MSUJSQVJZX1BBVEggY29udGFpbnMgdGhlICIKKyJhcHByb3ByaWF0ZSBkaXJlY3RvcnkgaWYgaXQgYWxzbyBpcyBpbiBhIHByaXZhdGUgZGlyZWN0b3J5LiIKK21zZ3N0ciAiIgorIlNpIGxhIGJpYmxpb3RlY2EgcXVlIG5vIHNlIGVuY29udHLDsyBlc3TDoSBkZW50cm8gZGUgdW4gZGlyZWN0b3JpbyBwcml2YWRvIGRlbCAiCisibWlzbW8gcGFxdWV0ZSwgcXVlcnLDoSBhw7FhZGlyIGVsIGRpcmVjdG9yaW8gYSDCq0xEX0xJQlJBUllfUEFUSMK7LiBTaSBlc3TDoSBlbiAiCisib3RybyBwYXF1ZXRlIGJpbmFyaW8gZW4gY29uc3RydWNjacOzbiwgcXVlcnLDoSBhc2VndXJhciBxdWUgZWwgZmljaGVybyAiCisiwqtzaGxpYnPCuyBvIMKrc3ltYm9sc8K7IGRlIGVzdGUgcGFxdWV0ZSB5YSBleGlzdGUsIHkgcXVlIMKrTERfTElCUkFSWV9QQVRIwrsgIgorImNvbnRpZW5lIGVsIGRpcmVjdG9yaW8gYWRlY3VhZG8sIGVuIGNhc28gZGUgc2VyIHVuIGRpcmVjdG9yaW8gcHJpdmFkby4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNobGliZGVwcy4xOjI5MQorIywgbm8td3JhcAorbXNnaWQgIkI8bm8gZGVwZW5kZW5jeSBpbmZvcm1hdGlvbiBmb3VuZCBmb3IgPkk8bGlicmFyeS1maWxlPkI8ICh1c2VkIGJ5ID5JPGJpbmFyeT5CPCkuPiIKK21zZ3N0ciAiQjxubyBkZXBlbmRlbmN5IGluZm9ybWF0aW9uIGZvdW5kIGZvciA+STxsaWJyYXJ5LWZpbGU+QjwgKHVzZWQgYnkgPkk8YmluYXJ5PkI8KS4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjMwNAorbXNnaWQgIiIKKyJUaGUgbGlicmFyeSBuZWVkZWQgYnkgSTxiaW5hcnk+IGhhcyBiZWVuIGZvdW5kIGJ5IEI8ZHBrZy1zaGxpYmRlcHM+IGluICIKKyJJPGxpYnJhcnktZmlsZT4gYnV0IEI8ZHBrZy1zaGxpYmRlcHM+IGhhcyBiZWVuIHVuYWJsZSB0byBmaW5kIGFueSBkZXBlbmRlbmN5ICIKKyJpbmZvcm1hdGlvbiBmb3IgdGhhdCBsaWJyYXJ5LiBUbyBmaW5kIG91dCB0aGUgZGVwZW5kZW5jeSwgaXQgaGFzIHRyaWVkIHRvICIKKyJtYXAgdGhlIGxpYnJhcnkgdG8gYSBEZWJpYW4gcGFja2FnZSB3aXRoIHRoZSBoZWxwIG9mIEI8ZHBrZyAtUyA+STxsaWJyYXJ5LSIKKyJmaWxlPi4gIFRoZW4gaXQgY2hlY2tlZCB0aGUgY29ycmVzcG9uZGluZyBzaGxpYnMgYW5kIHN5bWJvbHMgZmlsZXMgaW4gL3Zhci8iCisibGliL2Rwa2cvaW5mby8sIGFuZCBpbiB0aGUgdmFyaW91cyBwYWNrYWdlJ3MgYnVpbGQgdHJlZXMgKGRlYmlhbi8qL0RFQklBTi8pLiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1zaGxpYmRlcHM+IGVuY29udHLDsyBsYSBiaWJsaW90ZWNhIHF1ZSBJPGJpbmFyaW8+IG5lY2VzaXRhIGVuICIKKyJJPGZpY2hlcm8tYmlibGlvdGVjYT4sIHBlcm8gbm8gaGEgc2lkbyBjYXBheiBkZSBlbmNvbnRyYXIgbmluZ3VuYSAiCisiaW5mb3JtYWNpw7NuIGRlIGRlcGVuZGVuY2lhIHBhcmEgZXN0YSBiaWJsaW90ZWNhLiBQYXJhIGVuY29udHJhciBsYSAiCisiZGVwZW5kZW5jaWEsIGludGVudMOzIGVzdGFibGVjZXIgdW5hIGNvcnJlbGFjacOzbiBkZSBsYSBiaWJsaW90ZWNhIGNvbiBlbCAiCisicGFxdWV0ZSBEZWJpYW4gY29uIGxhIGF5dWRhIGRlIEI8ZHBrZyAtUyA+STxmaWNoZXJvLWJpYmxpb3RlY2E+LiBEZXNwdcOpcyAiCisicmV2aXPDsyBsb3MgY29ycmVzcG9uZGllbnRlcyBmaWNoZXJvcyDCq3NobGlic8K7IHkgwqtzeW1ib2xzwrsgZW4gwqsvdmFyL2xpYi9kcGtnLyIKKyJpbmZvL8K7LCB5IGVuIGxvcyBkaXN0aW50b3Mgw6FyYm9sZXMgZGUgY29uc3RydWNjacOzbiBkZWwgcGFxdWV0ZSAowqtkZWJpYW4vKi8iCisiREVCSUFOL8K7KS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MzE4Cittc2dpZCAiIgorIlRoaXMgZmFpbHVyZSBjYW4gYmUgY2F1c2VkIGJ5IGEgYmFkIG9yIG1pc3Npbmcgc2hsaWJzIG9yIHN5bWJvbHMgZmlsZSBpbiB0aGUgIgorInBhY2thZ2Ugb2YgdGhlIGxpYnJhcnkuIEl0IG1pZ2h0IGFsc28gaGFwcGVuIGlmIHRoZSBsaWJyYXJ5IGlzIGJ1aWx0IHdpdGhpbiAiCisidGhlIHNhbWUgc291cmNlIHBhY2thZ2UgYW5kIGlmIHRoZSBzaGxpYnMgZmlsZXMgaGFzIG5vdCB5ZXQgYmVlbiBjcmVhdGVkIChpbiAiCisid2hpY2ggY2FzZSB5b3UgbXVzdCBmaXggZGViaWFuL3J1bGVzIHRvIGNyZWF0ZSB0aGUgc2hsaWJzIGJlZm9yZSBjYWxsaW5nICIKKyJCPGRwa2ctc2hsaWJkZXBzPikuIEJhZCBSUEFUSCBjYW4gYWxzbyBsZWFkIHRvIHRoZSBsaWJyYXJ5IGJlaW5nIGZvdW5kIHVuZGVyICIKKyJhIG5vbi1jYW5vbmljYWwgbmFtZSAoZXhhbXBsZTogL3Vzci9saWIvb3Blbm9mZmljZS5vcmcvLi4vbGliL2xpYnNzbC4iCisic28uMC45LjggaW5zdGVhZCBvZiAvdXNyL2xpYi9saWJzc2wuc28uMC45LjgpIHRoYXQncyBub3QgYXNzb2NpYXRlZCB0byBhbnkgIgorInBhY2thZ2UsIEI8ZHBrZy1zaGxpYmRlcHM+IHRyaWVzIHRvIHdvcmsgYXJvdW5kIHRoaXMgYnkgdHJ5aW5nIHRvIGZhbGxiYWNrICIKKyJvbiBhIGNhbm9uaWNhbCBuYW1lICh1c2luZyBCPHJlYWxwYXRoPigzKSkgIGJ1dCBpdCBtaWdodCBub3QgYWx3YXlzIHdvcmsuICIKKyJJdCdzIGFsd2F5cyBiZXN0IHRvIGNsZWFuIHVwIHRoZSBSUEFUSCBvZiB0aGUgYmluYXJ5IHRvIGF2b2lkIHByb2JsZW1zLiIKK21zZ3N0ciAiIgorIkVzdGUgZmFsbG8gcHVlZGUgZXN0YXIgY2F1c2FkbyBwb3IgdW4gZmljaGVybyDCq3NobGlic8K7IG8gwqtzeW1ib2xzwrsgIgorImluY29ycmVjdG8gbyBhdXNlbnRlIGVuIGVsIHBhcXVldGUgZGUgbGEgYmlibGlvdGVjYS4gVGFtYmnDqW4gY2FiZSBxdWUgbGEgIgorImJpYmxpb3RlY2Egc2UgY29uc3RydXlhIGRlbnRybyBkZWwgbWlzbW8gcGFxdWV0ZSBmdWVudGUsIHkgcXVlIGHDum4gbm8gc2UgIgorImhheWEgY3JlYWRvIGVsIGZpY2hlcm8gwqtzaGxpYnPCuyAoZW4gY3V5byBjYXNvIGRlYmVyw61hIGFycmVnbGFyIMKrZGViaWFuLyIKKyJydWxlc8K7IHBhcmEgY3JlYXIgwqtzaGxpYnPCuyBhbnRlcyBkZSBpbnZvY2FyIEI8ZHBrZy1zaGxpYmRlcHM+KS4gVW4gIgorImluY29ycmVjdG8gwqtSUEFUSMK7IHRhbWJpw6luIHB1ZWRlIGxsZXZhciBhIGVuY29udHJhciBsYSBiaWJsaW90ZWNhIGJham8gdW4gIgorIm5vbWJyZSBubyBjYW7Ds25pY28gKHBvciBlamVtcGxvLCDCqy91c3IvbGliL29wZW5vZmZpY2Uub3JnLy4uL2xpYi9saWJzc2wuIgorInNvLjAuOS44wrsgZW4gbHVnYXIgZGUgwqsvdXNyL2xpYi9saWJzc2wuc28uMC45LjjCuykgcXVlIG5vIGVzdMOpIGFzb2NpYWRvIGEgIgorIm5pbmfDum4gcGFxdWV0ZS4gQjxkcGtnLXNobGliZGVwcz4gaW50ZW50YSBldml0YXIgZXN0byB1c2FuZG8gdW4gbm9tYnJlICIKKyJjYW7Ds25pY28gKGNvbiBCPHJlYWxwYXRoPigzKSksIHBlcm8gbm8gc2llbXByZSBmdW5jaW9uYS4gU2llbXByZSBlcyBtZWpvciAiCisibGltcGlhciBlbCDCq1JQQVRIwrsgZGVsIGJpbmFyaW8gcGFyYSBldml0YXIgcHJvYmxlbWFzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTozMjQKK21zZ2lkICIiCisiQ2FsbGluZyBCPGRwa2ctc2hsaWJkZXBzPiBpbiB2ZXJib3NlIG1vZGUgKC12KSB3aWxsIHByb3ZpZGUgbXVjaCBtb3JlICIKKyJpbmZvcm1hdGlvbiBhYm91dCB3aGVyZSBpdCB0cmllZCB0byBmaW5kIHRoZSBkZXBlbmRlbmN5IGluZm9ybWF0aW9uLiBUaGlzICIKKyJtaWdodCBiZSB1c2VmdWwgaWYgeW91IGRvbid0IHVuZGVyc3RhbmQgd2h5IGl0J3MgZ2l2aW5nIHlvdSB0aGlzIGVycm9yLiIKK21zZ3N0ciAiIgorIkludm9jYXIgQjxkcGtnLXNobGliZGVwcz4gZW4gbW9kbyBpbmZvcm1hdGl2byAoLXYpIG9mcmVjZSBtdWNoYSBtw6FzICIKKyJpbmZvcm1hY2nDs24gYWNlcmNhIGRlIGTDs25kZSBidXNjw7MgbGEgaW5mb3JtYWNpw7NuIGRlIGRlcGVuZGVuY2lhLiBQdWVkZSBzZXIgIgorIsO6dGlsIHNpIG5vIGVudGllbmRlIHBvcnF1ZSBtdWVzdHJhIGVzdGUgZmFsbG8uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjMyOAorbXNnaWQgIkI8ZGViLXNobGlicz4oNSksIEI8ZGViLXN5bWJvbHM+KDUpLCBCPGRwa2ctZ2Vuc3ltYm9scz4oMSkuIgorbXNnc3RyICJCPGRlYi1zaGxpYnM+KDUpLCBCPGRlYi1zeW1ib2xzPig1KSwgQjxkcGtnLWdlbnN5bWJvbHM+KDEpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTozMzUKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAwNiBGcmFuayBMaWNodGVuaGVsZCIKK21zZ3N0ciAiQ29weXJpZ2h0IFxcKGNvIDIwMDYgRnJhbmsgTGljaHRlbmhlbGQiCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLXNvdXJjZS4xOjIKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLXNvdXJjZSIKK21zZ3N0ciAiZHBrZy1zb3VyY2UiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NQorbXNnaWQgImRwa2ctc291cmNlIC0gRGViaWFuIHNvdXJjZSBwYWNrYWdlICguZHNjKSBtYW5pcHVsYXRpb24gdG9vbCIKK21zZ3N0ciAiIgorImRwa2ctc291cmNlIC0gSGVycmFtaWVudGEgZGUgbWFuaXB1bGFjacOzbiBkZSBwYXF1ZXRlcyBmdWVudGUgZGUgRGViaWFuIMKrLmRzY8K7IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjkKKyMsIGZ1enp5CisjfCBtc2dpZCAiQjxkcGtnLXNvdXJjZT4gW0k8b3B0aW9ucz5dIEk8Y29tbWFuZD4iCittc2dpZCAiQjxkcGtnLXNvdXJjZT4gW0k8b3B0aW9uPi4uLl0gSTxjb21tYW5kPiIKK21zZ3N0ciAiQjxkcGtnLXNvdXJjZT4gW0k8b3BjaW9uZXM+XSBJPG9yZGVuPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToxMworbXNnaWQgIkI8ZHBrZy1zb3VyY2U+IHBhY2tzIGFuZCB1bnBhY2tzIERlYmlhbiBzb3VyY2UgYXJjaGl2ZXMuIgorbXNnc3RyICJCPGRwa2ctc291cmNlPiBlbXBhcXVldGEgeSBkZXNlbXBhcXVldGEgYXJjaGl2b3MgZGUgZnVlbnRlcyBkZSBEZWJpYW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjE3Cittc2dpZCAiIgorIk5vbmUgb2YgdGhlc2UgY29tbWFuZHMgYWxsb3cgbXVsdGlwbGUgb3B0aW9ucyB0byBiZSBjb21iaW5lZCBpbnRvIG9uZSwgYW5kICIKKyJ0aGV5IGRvIG5vdCBhbGxvdyB0aGUgdmFsdWUgZm9yIGFuIG9wdGlvbiB0byBiZSBzcGVjaWZpZWQgaW4gYSBzZXBhcmF0ZSAiCisiYXJndW1lbnQuIgorbXNnc3RyICIiCisiTmluZ3VuYSBkZSBlc3RhcyDDs3JkZW5lcyBwZXJtaXRlIGNvbWJpbmFyIG3Dumx0aXBsZXMgb3BjaW9uZXMgZW4gdW5hIHNvbGEuICIKKyJUYW1wb2NvIHBlcm1pdGVuIHF1ZSBlbCB2YWxvciBkZSB1bmEgb3BjacOzbiBzZSBlc3BlY2lmaXF1ZSBlbiB1biBhcmd1bWVudG8gIgorInNlcGFyYWRvLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6MTkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC14ID5JPGZpbGVuYW1lPkI8LmRzYyA+W0k8b3V0cHV0LWRpcmVjdG9yeT5dIgorbXNnc3RyICJCPC14ID5JPGZpY2hlcm8+QjwuZHNjID5bSTxkaXJlY3RvcmlvLXNhbGlkYT5dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjI5Cittc2dpZCAiIgorIkV4dHJhY3QgYSBzb3VyY2UgcGFja2FnZS4gT25lIG5vbi1vcHRpb24gYXJndW1lbnQgbXVzdCBiZSBzdXBwbGllZCwgdGhlIG5hbWUgIgorIm9mIHRoZSBEZWJpYW4gc291cmNlIGNvbnRyb2wgZmlsZSAoQjwuZHNjPikuICBBbiBvcHRpb25hbCBzZWNvbmQgbm9uLW9wdGlvbiAiCisiYXJndW1lbnQgbWF5IGJlIHN1cHBsaWVkIHRvIHNwZWNpZnkgdGhlIGRpcmVjdG9yeSB0byBleHRyYWN0IHRoZSBzb3VyY2UgIgorInBhY2thZ2UgdG8sIHRoaXMgbXVzdCBub3QgZXhpc3QuIElmIG5vIG91dHB1dCBkaXJlY3RvcnkgaXMgc3BlY2lmaWVkLCB0aGUgIgorInNvdXJjZSBwYWNrYWdlIGlzIGV4dHJhY3RlZCBpbnRvIGEgZGlyZWN0b3J5IG5hbWVkIEk8c291cmNlPi1JPHZlcnNpb24+ICIKKyJ1bmRlciB0aGUgY3VycmVudCB3b3JraW5nIGRpcmVjdG9yeS4iCittc2dzdHIgIiIKKyJFeHRyYWUgdW4gcGFxdWV0ZSBmdWVudGUuIFNlIGRlYmUgc3VtaW5pc3RyYXIgdW4gYXJndW1lbnRvIHF1ZSBubyBzZWEgdW5hICIKKyJvcGNpw7NuLCBlbCBub21icmUgZGVsIGZpY2hlcm8gZGUgY29udHJvbCBkZSBmdWVudGUgZGUgRGViaWFuIChCPC5kc2M+KS4gIgorIlB1ZWRlIGludHJvZHVjaXIgdW4gc2VndW5kbyBhcmd1bWVudG8gcXVlIG5vIHNlYSB1bmEgb3BjacOzbiBwYXJhIGRlZmluaXIgZWwgIgorImRpcmVjdG9yaW8gZW4gZWwgcXVlIGV4dHJhZXIgZWwgcGFxdWV0ZSBmdWVudGUsIGVsIGN1YWwgbm8gZGViZSBleGlzdGlyLiBFbiAiCisiY2FzbyBkZSBubyBkZWZpbmlyIG5pbmfDum4gZGlyZWN0b3JpbywgZWwgcGFxdWV0ZSBmdWVudGUgc2UgZXh0cmFlcsOhIGVuIHVuICIKKyJkaXJlY3RvcmlvIGxsYW1hZG8gSTxmdWVudGU+LUk8dmVyc2nDs24+IGRlbnRybyBkZWwgZGlyZWN0b3JpbyBhY3R1YWwuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjM1Cittc2dpZCAiIgorIkI8ZHBrZy1zb3VyY2U+IHdpbGwgcmVhZCB0aGUgbmFtZXMgb2YgdGhlIG90aGVyIGZpbGUocykgbWFraW5nIHVwIHRoZSBzb3VyY2UgIgorInBhY2thZ2UgZnJvbSB0aGUgY29udHJvbCBmaWxlOyB0aGV5IGFyZSBhc3N1bWVkIHRvIGJlIGluIHRoZSBzYW1lIGRpcmVjdG9yeSAiCisiYXMgdGhlIEI8LmRzYz4uIgorbXNnc3RyICIiCisiQjxkcGtnLXNvdXJjZT4gbGVlIGxvcyBub21icmVzIGRlIGxvcyBkZW3DoXMgZmljaGVyb3MgcXVlIGNvbXBvbmVuIGVsIHBhcXVldGUgIgorImZ1ZW50ZSBkZXNkZSBlbCBmaWNoZXJvIGRlIGNvbnRyb2w7IHNlIGFzdW1lIHF1ZSBlc3TDoW4gZW4gZWwgbWlzbW8gIgorImRpcmVjdG9yaW8gcXVlIGVsIGZpY2hlcm8gQjwuZHNjPi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NDMKK21zZ2lkICIiCisiVGhlIGZpbGVzIGluIHRoZSBleHRyYWN0ZWQgcGFja2FnZSB3aWxsIGhhdmUgdGhlaXIgcGVybWlzc2lvbnMgYW5kICIKKyJvd25lcnNoaXBzIHNldCB0byB0aG9zZSB3aGljaCB3b3VsZCBoYXZlIGJlZW4gZXhwZWN0ZWQgaWYgdGhlIGZpbGVzIGFuZCAiCisiZGlyZWN0b3JpZXMgaGFkIHNpbXBseSBiZWVuIGNyZWF0ZWQgLSBkaXJlY3RvcmllcyBhbmQgZXhlY3V0YWJsZSBmaWxlcyB3aWxsICIKKyJiZSAwNzc3IGFuZCBwbGFpbiBmaWxlcyB3aWxsIGJlIDA2NjYsIGJvdGggbW9kaWZpZWQgYnkgdGhlIGV4dHJhY3RvcnMnICIKKyJ1bWFzazsgaWYgdGhlIHBhcmVudCBkaXJlY3RvcnkgaXMgc2V0Z2lkIHRoZW4gdGhlIGV4dHJhY3RlZCBkaXJlY3RvcmllcyB3aWxsICIKKyJiZSB0b28sIGFuZCBhbGwgdGhlIGZpbGVzIGFuZCBkaXJlY3RvcmllcyB3aWxsIGluaGVyaXQgaXRzIGdyb3VwIG93bmVyc2hpcC4iCittc2dzdHIgIiIKKyJMb3MgcGVybWlzb3MgeSBwcm9waWV0YXJpb3MgZGUgbG9zIGZpY2hlcm9zIGRlbCBwYXF1ZXRlIGV4dHJhw61kbyBzZXLDoW4gbG9zICIKKyJtaXNtb3MgcXVlIHNlIGVzcGVyYXLDrWFuIHNpIGxvcyBmaWNoZXJvcyBzZSBodWJpZXNlbiBzaW1wbGVtZW50ZSBjcmVhZG8gLSAiCisiMDc3NyBwYXJhIGRpcmVjdG9yaW9zIHkgZWplY3V0YWJsZXMgeSAwNjY2IHBhcmEgZWwgcmVzdG8gZGUgZmljaGVyb3MsIGFtYm9zICIKKyJtb2RpZmljYWRvcyBzZWfDum4gZWwgdW1hc2sgZGVsIGV4dHJhY3Rvci4gU2kgZWwgZGlyZWN0b3JpbyBzdXBlcmlvciB0aWVuZSAiCisiYWN0aXZhZG8gZWwgYml0IHNldGdpZCwgbG9zIGRpcmVjdG9yaW9zIGV4dHJhw61kb3MgbG8gdGVuZHLDoW4gdGFtYmnDqW4sIHkgIgorInRvZG9zIGxvcyBmaWNoZXJvcyB5IGRpcmVjdG9yaW9zIGhlcmVkYXLDoW4gZWwgZ3J1cG8gYWwgcXVlIHBlcnRlbmVjZS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NDgKK21zZ2lkICIiCisiSWYgdGhlIHNvdXJjZSBwYWNrYWdlIHVzZXMgYSBub24tc3RhbmRhcmQgZm9ybWF0IChjdXJyZW50bHkgdGhpcyBtZWFucyBhbGwgIgorImZvcm1hdHMgZXhjZXB0IFwiMS4wXCIpLCBpdHMgbmFtZSB3aWxsIGJlIHN0b3JlZCBpbiBCPGRlYmlhbi9zb3VyY2UvZm9ybWF0PiAiCisic28gdGhhdCB0aGUgZm9sbG93aW5nIGJ1aWxkcyBvZiB0aGUgc291cmNlIHBhY2thZ2UgdXNlIHRoZSBzYW1lIGZvcm1hdCBieSAiCisiZGVmYXVsdC4iCittc2dzdHIgIiIKKyJTaSBlbCBwYXF1ZXRlIGZ1ZW50ZSB1c2EgdW4gZm9ybWF0byBubyBlc3TDoW5kYXIgKGEgZMOtYSBkZSBob3ksIHRvZG9zIGxvcyAiCisiZm9ybWF0b3MgbWVub3MgwqsxLjDCuyksIHN1IG5vbWJyZSBzZSBndWFyZGFyw6EgZW4gQjxkZWJpYW4vc291cmNlL2Zvcm1hdD4gcGFyYSAiCisicXVlIGxhcyBzaWd1aWVudGVzIGNvbnN0cnVjY2lvbmVzIGRlbCBwYXF1ZXRlIGZ1ZW50ZSB1c2VuIGVsIG1pc21vIGZvcm1hdG8gIgorInBvciBvbWlzacOzbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjQ5CisjLCBuby13cmFwCittc2dpZCAiQjwtYj4gSTxkaXJlY3Rvcnk+IFtJPGZvcm1hdC1zcGVjaWZpYy1wYXJhbWV0ZXJzPl0iCittc2dzdHIgIkI8LWI+IEk8ZGlyZWN0b3Jpbz4gW0k8cGFyw6FtZXRyb3MtZXNwZWPDrWZpY29zLWZvcm1hdG8+XSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1NgorbXNnaWQgIiIKKyJCdWlsZCBhIHNvdXJjZSBwYWNrYWdlLiBUaGUgZmlyc3Qgbm9uLW9wdGlvbiBhcmd1bWVudCBpcyB0YWtlbiBhcyB0aGUgbmFtZSAiCisib2YgdGhlIGRpcmVjdG9yeSBjb250YWluaW5nIHRoZSBkZWJpYW5pemVkIHNvdXJjZSB0cmVlIChpLmUuIHdpdGggYSBkZWJpYW4gIgorInN1Yi1kaXJlY3RvcnkgYW5kIG1heWJlIGNoYW5nZXMgdG8gdGhlIG9yaWdpbmFsIGZpbGVzKS4gIERlcGVuZGluZyBvbiB0aGUgIgorInNvdXJjZSBwYWNrYWdlIGZvcm1hdCB1c2VkIHRvIGJ1aWxkIHRoZSBwYWNrYWdlLCBhZGRpdGlvbmFsIHBhcmFtZXRlcnMgbWlnaHQgIgorImJlIGFjY2VwdGVkLiIKK21zZ3N0ciAiIgorIkNvbnN0cnV5ZSB1biBwYXF1ZXRlIGZ1ZW50ZS4gRWwgcHJpbWVyIGFyZ3VtZW50bywgcXVlIG5vIG9wY2nDs24sIHNlIHRvbWEgIgorImNvbW8gZWwgbm9tYnJlIGRlbCBkaXJlY3RvcmlvIHF1ZSBjb250aWVuZSBlbCDDoXJib2wgZGUgZnVlbnRlcyAiCisiwqtkZWJpYW5pemFkb8K7IChwb3IgZWplbXBsbywgY29uIHVuIHN1YmRpcmVjdG9yaW8gwqtkZWJpYW4vwrssIHkgcHVlZGUgcXVlICIKKyJjYW1iaW9zIGVuIGxvcyBmaWNoZXJvcyBvcmlnaW5hbGVzKS4gUHVlZGUgZXNwZWNpZmljYXIgcGFyw6FtZXRyb3MgIgorImFkaWNpb25hbGVzLCBkZXBlbmRpZW5kbyBkZWwgZm9ybWF0byBkZSBwYXF1ZXRlIGZ1ZW50ZSB1c2FkbyBlbiBsYSAiCisiY29uc3RydWNjacOzbiBkZWwgcGFxdWV0ZS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NjUKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIkI8ZHBrZy1zb3VyY2U+IHdpbGwgYnVpbGQgdGhlIHNvdXJjZSBwYWNrYWdlIHdpdGggdGhlIGZpcnN0IGZvcm1hdCBmb3VuZCAiCisjfCAiaW4gdGhpcyBvcmRlcmVkIGxpc3Q6IHRoZSBmb3JtYXQgaW5kaWNhdGVkIHdpdGggdGhlIEk8LS1mb3JtYXQ+IGNvbW1hbmQtIgorI3wgImxpbmUgb3B0aW9uLCB0aGUgZm9ybWF0IGluZGljYXRlZCBpbiBCPGRlYmlhbi9zb3VyY2UvZm9ybWF0PiwgXCIxLjBcIi4gIgorI3wgIlRoZSBmYWxsYmFjayB0byBcIjEuMFwiIGlzIGRlcHJlY2F0ZWQgYW5kIHdpbGwgYmUgcmVtb3ZlZCBhdCBzb21lIHBvaW50ICIKKyN8ICJpbiB0aGUgZnV0dXJlLCB5b3Ugc2hvdWxkIGFsd2F5cyBkb2N1bWVudCB0aGUgZGVzaXJlZCBzb3VyY2UgZm9ybWF0IGluICIKKyN8ICJCPGRlYmlhbi9zb3VyY2UvZm9ybWF0Pi4gU2VlIHNlY3Rpb24gQjxTT1VSQ0UgUEFDS0FHRSBGT1JNQVRTPiBmb3IgYW4gIgorI3wgImV4dGVuc2l2ZSBkZXNjcmlwdGlvbiBvZiB0aGUgdmFyaW91cyBzb3VyY2UgcGFja2FnZSBmb3JtYXRzLiIKK21zZ2lkICIiCisiQjxkcGtnLXNvdXJjZT4gd2lsbCBidWlsZCB0aGUgc291cmNlIHBhY2thZ2Ugd2l0aCB0aGUgZmlyc3QgZm9ybWF0IGZvdW5kIGluICIKKyJ0aGlzIG9yZGVyZWQgbGlzdDogdGhlIGZvcm1hdCBpbmRpY2F0ZWQgd2l0aCB0aGUgSTwtLWZvcm1hdD4gY29tbWFuZCBsaW5lICIKKyJvcHRpb24sIHRoZSBmb3JtYXQgaW5kaWNhdGVkIGluIEI8ZGViaWFuL3NvdXJjZS9mb3JtYXQ+LCBcIjEuMFwiLiBUaGUgIgorImZhbGxiYWNrIHRvIFwiMS4wXCIgaXMgZGVwcmVjYXRlZCBhbmQgd2lsbCBiZSByZW1vdmVkIGF0IHNvbWUgcG9pbnQgaW4gdGhlICIKKyJmdXR1cmUsIHlvdSBzaG91bGQgYWx3YXlzIGRvY3VtZW50IHRoZSBkZXNpcmVkIHNvdXJjZSBmb3JtYXQgaW4gQjxkZWJpYW4vIgorInNvdXJjZS9mb3JtYXQ+LiBTZWUgc2VjdGlvbiBCPFNPVVJDRSBQQUNLQUdFIEZPUk1BVFM+IGZvciBhbiBleHRlbnNpdmUgIgorImRlc2NyaXB0aW9uIG9mIHRoZSB2YXJpb3VzIHNvdXJjZSBwYWNrYWdlIGZvcm1hdHMuIgorbXNnc3RyICIiCisiQjxkcGtnLXNvdXJjZT4gY29uc3RydWlyw6EgZWwgcGFxdWV0ZSBmdWVudGUgY29uIGVsIHByaW1lciBmb3JtYXRvIHBvc2libGUgZGUgIgorImVzdGEgbGlzdGEsIHkgZW4gZXN0ZSBvcmRlbjogZWwgZm9ybWF0byBpbmRpY2Fkb3MgY29uIGxhIG9wY2nDs24gZGUgbMOtbmVhIGRlICIKKyLDs3JkZW5lcyBJPC0tZm9ybWF0PiwgZWwgZm9ybWF0byBpbmRpY2FkbyBlbiBCPGRlYmlhbi9zb3VyY2UvZm9ybWF0PiwgwqsxLjDCuy4gIgorIkVsIHVzbyBwcmVkZWZpbmlkbyBkZSDCqzEuMMK7IGVuIGF1c2VuY2lhIGRlIG90cm8gdmFsb3IgZXN0w6Egb2Jzb2xldG8geSBzZSAiCisiZWxpbWluYXLDoSBlbiBlbCBmdXR1cm8uIFNpZW1wcmUgZGViZXLDrWEgZG9jdW1lbnRhciBlbCBmb3JtYXRvIGZ1ZW50ZSBkZXNlYWRvICIKKyJlbiBCPGRlYmlhbi9zb3VyY2UvZm9ybWF0Pi4gQ29uc3VsdGUgbGEgc2VjY2nDs24gQjxGT1JNQVRPUyBERSBQQVFVRVRFICIKKyJGVUVOVEU+IHBhcmEgdW5hIGV4dGVuc2EgZGVzY3JpcGNpw7NuIGRlIGxvcyBkaWZlcmVudGVzIGZvcm1hdG9zIGRlIHBhcXVldGUgIgorImZ1ZW50ZS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjY2CisjLCBuby13cmFwCittc2dpZCAiQjwtLXByaW50LWZvcm1hdD4gSTxkaXJlY3Rvcnk+IgorbXNnc3RyICJCPC0tcHJpbnQtZm9ybWF0PiBJPGRpcmVjdG9yaW8+IgorCisjIHR5cGU6IFBsYWluIHRleHQKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NzEKK21zZ2lkICIiCisiUHJpbnQgdGhlIHNvdXJjZSBmb3JtYXQgdGhhdCB3b3VsZCBiZSB1c2VkIHRvIGJ1aWxkIHRoZSBzb3VyY2UgcGFja2FnZSBpZiAiCisiQjxkcGtnLXNvdXJjZSAtYiA+STxkaXJlY3Rvcnk+IHdhcyBjYWxsZWQgKGluIHRoZSBzYW1lIGNvbmRpdGlvbnMgYW5kIHdpdGggIgorInRoZSBzYW1lIHBhcmFtZXRlcnMpLiIKK21zZ3N0ciAiIgorIk11ZXN0cmEgZWwgZm9ybWF0byBkZSBmdWVudGVzIGEgdXNhciBlbiBsYSBjb25zdHJ1Y2Npw7NuIGRlbCBwYXF1ZXRlIGZ1ZW50ZSAiCisic2kgc2UgaW52b2PDsyBCPGRwa2ctc291cmNlIC1iID5JPGRpcmVjdG9yaW8+IChjb24gbGFzIG1pc21hcyBjb25kaWNpb25lcyB5ICIKKyJsb3MgbWlzbW9zIHBhcsOhbWV0cm9zKS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjcyCisjLCBuby13cmFwCittc2dpZCAiQjwtLWJlZm9yZS1idWlsZD4gSTxkaXJlY3Rvcnk+IgorbXNnc3RyICJCPC0tYmVmb3JlLWJ1aWxkPiBJPGRpcmVjdG9yaW8+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjgxCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJUaGlzIGNvbW1hbmQgc2hvdWxkIGJlIGNhbGxlZCBiZWZvcmUgYW55IGJ1aWxkIG9mIHRoZSBwYWNrYWdlIChCPGRwa2ctIgorI3wgImJ1aWxkcGFja2FnZT4gY2FsbHMgaXQgdmVyeSBlYXJseSBldmVuIGJlZm9yZSBCPGRlYmlhbi9ydWxlcyBjbGVhbj4pLiAiCisjfCAiVGhpcyBjb21tYW5kIHNob3VsZCBiZSBpZGVtcG90ZW50IGFuZCBjYW4gYmUgY2FsbGVkIG11bHRpcGxlIHRpbWVzLiBOb3QgIgorI3wgImFsbCBzb3VyY2UgZm9ybWF0cyBpbXBsZW1lbnQgc29tZXRoaW5nIGluIHRoaXMgaG9vaywgYW5kIHRob3NlIHRoYXQgZG8gIgorI3wgInVzdWFsbHkgcHJlcGFyZSB0aGUgc291cmNlIHRyZWUgZm9yIHRoZSBidWlsZCBmb3IgZXhhbXBsZSBieSBlbnN1cmluZyAiCisjfCAidGhhdCB0aGUgRGViaWFuIHBhdGNoZXMgYXJlIGFwcGxpZWQuIgorbXNnaWQgIiIKKyJSdW4gdGhlIGNvcnJlc3BvbmRpbmcgaG9vayBvZiB0aGUgc291cmNlIHBhY2thZ2UgZm9ybWF0LiBUaGlzIGhvb2sgaXMgY2FsbGVkICIKKyJiZWZvcmUgYW55IGJ1aWxkIG9mIHRoZSBwYWNrYWdlIChCPGRwa2ctYnVpbGRwYWNrYWdlPiBjYWxscyBpdCB2ZXJ5IGVhcmx5ICIKKyJldmVuIGJlZm9yZSBCPGRlYmlhbi9ydWxlcyBjbGVhbj4pLiBUaGlzIGNvbW1hbmQgaXMgaWRlbXBvdGVudCBhbmQgY2FuIGJlICIKKyJjYWxsZWQgbXVsdGlwbGUgdGltZXMuIE5vdCBhbGwgc291cmNlIGZvcm1hdHMgaW1wbGVtZW50IHNvbWV0aGluZyBpbiB0aGlzICIKKyJob29rLCBhbmQgdGhvc2UgdGhhdCBkbyB1c3VhbGx5IHByZXBhcmUgdGhlIHNvdXJjZSB0cmVlIGZvciB0aGUgYnVpbGQgZm9yICIKKyJleGFtcGxlIGJ5IGVuc3VyaW5nIHRoYXQgdGhlIERlYmlhbiBwYXRjaGVzIGFyZSBhcHBsaWVkLiIKK21zZ3N0ciAiIgorIlNlIGRlYmVyw61hIGludm9jYXIgZXN0YSBvcmRlbiBhbnRlcyBkZSBjb25zdHJ1aXIgdW4gcGFxdWV0ZSAoQjxkcGtnLSIKKyJidWlsZHBhY2thZ2U+IGxvIGludm9jYSBtdXkgdGVtcHJhbm8gZW4gZWwgcHJvY2VzbywgaW5jbHVzbyBhbnRlcyBxdWUgIgorIkI8ZGViaWFuL3J1bGVzIGNsZWFuPikuIEVzdGEgb3JkZW4gZGViZXLDrWEgc2VyIGlkZW1wb3RlbnRlLCB5IHNlIHB1ZWRlICIKKyJpbnZvY2FyIHZhcmlhcyB2ZWNlcy4gTm8gdG9kb3MgbG9zIGZvcm1hdG9zIGRlIGZ1ZW50ZXMgaW1wbGVtZW50YW4gYWxnbyBlbiAiCisiZXN0ZSDCq2hvb2vCuywgeSBhcXVlbGxvcyBxdWUgbG8gaGFjZW4gaGFiaXR1YWxtZW50ZSBwcmVwYXJhbiBlbCDDoXJib2wgZGUgbGFzICIKKyJmdWVudGVzIHBhcmEgbGEgY29uc3RydWNjacOzbiwgcG9yIGVqZW1wbG8sIGNvbXByb2JhbmRvIHF1ZSBzZSBhcGxpY2FuIGxvcyAiCisicGFyY2hlcyBkZSBEZWJpYW4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTo4MgorIywgbm8td3JhcAorbXNnaWQgIkI8LS1hZnRlci1idWlsZD4gSTxkaXJlY3Rvcnk+IgorbXNnc3RyICJCPC0tYWZ0ZXItYnVpbGQ+IEk8ZGlyZWN0b3Jpbz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6ODkKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlRoaXMgY29tbWFuZCBzaG91bGQgYmUgY2FsbGVkIGFmdGVyIGFueSBidWlsZCBvZiB0aGUgcGFja2FnZSAoQjxkcGtnLSIKKyN8ICJidWlsZHBhY2thZ2U+IGNhbGxzIGl0IGxhc3QpLiBUaGlzIGNvbW1hbmQgc2hvdWxkIGJlIGlkZW1wb3RlbnQgYW5kIGNhbiAiCisjfCAiYmUgY2FsbGVkIG11bHRpcGxlIHRpbWVzLiBOb3QgYWxsIHNvdXJjZSBmb3JtYXRzIGltcGxlbWVudCBzb21ldGhpbmcgaW4gIgorI3wgInRoaXMgaG9vaywgYW5kIHRob3NlIHRoYXQgZG8gdXN1YWxseSB1c2UgaXQgdG8gdW5kbyB3aGF0IEI8LS1iZWZvcmUtIgorI3wgImJ1aWxkPiBoYXMgZG9uZS4iCittc2dpZCAiIgorIlJ1biB0aGUgY29ycmVzcG9uZGluZyBob29rIG9mIHRoZSBzb3VyY2UgcGFja2FnZSBmb3JtYXQuIFRoaXMgaG9vayBpcyBjYWxsZWQgIgorImFmdGVyIGFueSBidWlsZCBvZiB0aGUgcGFja2FnZSAoQjxkcGtnLWJ1aWxkcGFja2FnZT4gY2FsbHMgaXQgbGFzdCkuIFRoaXMgIgorImNvbW1hbmQgaXMgaWRlbXBvdGVudCBhbmQgY2FuIGJlIGNhbGxlZCBtdWx0aXBsZSB0aW1lcy4gTm90IGFsbCBzb3VyY2UgIgorImZvcm1hdHMgaW1wbGVtZW50IHNvbWV0aGluZyBpbiB0aGlzIGhvb2ssIGFuZCB0aG9zZSB0aGF0IGRvIHVzdWFsbHkgdXNlIGl0ICIKKyJ0byB1bmRvIHdoYXQgQjwtLWJlZm9yZS1idWlsZD4gaGFzIGRvbmUuIgorbXNnc3RyICIiCisiU2UgZGViZXLDrWEgaW52b2NhciBlc3RhIG9yZGVuIGRlc3B1w6lzIGRlIGNvbnN0cnVpciB1biBwYXF1ZXRlIChCPGRwa2ctIgorImJ1aWxkcGFja2FnZT4gbG8gaW52b2NhIGVuIMO6bHRpbW8gbHVnYXIpLiBFc3RhIG9yZGVuIGRlYmVyw61hIHNlciAiCisiaWRlbXBvdGVudGUsIHkgc2UgcHVlZGUgaW52b2NhciB2YXJpYXMgdmVjZXMuIE5vIHRvZG9zIGxvcyBmb3JtYXRvcyBkZSAiCisiZnVlbnRlcyBpbXBsZW1lbnRhbiBhbGdvIGVuIGVzdGUgwqtob29rwrssIHkgYXF1ZWxsb3MgcXVlIGxvIGhhY2VuIGxvIHVzYW4gIgorImhhYml0dWFsbWVudGUgcGFyYSBkZXNoYWNlciBsbyBxdWUgQjwtLWJlZm9yZS1idWlsZD4gaGEgaGVjaG8uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTo5MAorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPC0tcHJpbnQtZm9ybWF0PiBJPGRpcmVjdG9yeT4iCittc2dpZCAiQjwtLWNvbW1pdD4gW0k8ZGlyZWN0b3J5Pl0gLi4uIgorbXNnc3RyICJCPC0tcHJpbnQtZm9ybWF0PiBJPGRpcmVjdG9yaW8+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjk1Cittc2dpZCAiIgorIlJlY29yZCBjaGFuZ2VzIGluIHRoZSBzb3VyY2UgdHJlZSB1bnBhY2tlZCBpbiBJPGRpcmVjdG9yeT4uIFRoaXMgY29tbWFuZCBjYW4gIgorInRha2Ugc3VwcGxlbWVudGFyeSBwYXJhbWV0ZXJzIGRlcGVuZGluZyBvbiB0aGUgc291cmNlIGZvcm1hdC4gIEl0IHdpbGwgZXJyb3IgIgorIm91dCBmb3IgZm9ybWF0cyB3aGVyZSB0aGlzIG9wZXJhdGlvbiBkb2Vzbid0IG1lYW4gYW55dGhpbmcuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLXNvdXJjZS4xOjEwMworIywgbm8td3JhcAorbXNnaWQgIkdFTkVSSUMgQlVJTEQgT1BUSU9OUyIKK21zZ3N0ciAiT1BDSU9ORVMgR0VOw4lSSUNBUyBERSBDT05TVFJVQ0NJw5NOIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjExMQorbXNnaWQgIiIKKyJTcGVjaWZpZXMgdGhlIG1haW4gc291cmNlIGNvbnRyb2wgZmlsZSB0byByZWFkIGluZm9ybWF0aW9uIGZyb20uIFRoZSBkZWZhdWx0ICIKKyJpcyBCPGRlYmlhbi9jb250cm9sPi4gIElmIGdpdmVuIHdpdGggcmVsYXRpdmUgcGF0aG5hbWUgdGhpcyBpcyBpbnRlcnByZXRlZCAiCisic3RhcnRpbmcgYXQgdGhlIHNvdXJjZSB0cmVlJ3MgdG9wIGxldmVsIGRpcmVjdG9yeS4iCittc2dzdHIgIiIKKyJEZWZpbmUgZWwgZmljaGVybyBkZSBjb250cm9sIHByaW5jaXBhbCBkZSBsYXMgZnVlbnRlcyBkZWwgcXVlIGxlZXIgbGEgIgorImluZm9ybWFjacOzbiwgQjxkZWJpYW4vY29udHJvbD4gcG9yIG9taXNpw7NuLiBTaSBzZSBpbnRyb2R1Y2VuIHJ1dGFzICIKKyJyZWxhdGl2YXMsIMOpc3RhcyBzZSBpbnRlcnByZXRhbiBlbXBlemFuZG8gZW4gZWwgZGlyZWN0b3JpbyBzdXBlcmlvciBkZWwgIgorIsOhcmJvbCBkZSBmdWVudGVzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToxMTgKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRoZSBjaGFuZ2UgbG9nIGZpbGUgdG8gcmVhZCBpbmZvcm1hdGlvbiBmcm9tLiBUaGUgZGVmYXVsdCBpcyAiCisiQjxkZWJpYW4vY2hhbmdlbG9nPi4gIElmIGdpdmVuIHdpdGggcmVsYXRpdmUgcGF0aG5hbWUgdGhpcyBpcyBpbnRlcnByZXRlZCAiCisic3RhcnRpbmcgYXQgdGhlIHNvdXJjZSB0cmVlJ3MgdG9wIGxldmVsIGRpcmVjdG9yeS4iCittc2dzdHIgIiIKKyJEZWZpbmUgZWwgZmljaGVybyBkZSByZWdpc3RybyBkZSBjYW1iaW9zIGRlbCBxdWUgbGVlciBsYSBpbmZvcm1hY2nDs24sICIKKyJCPGRlYmlhbi9jaGFuZ2Vsb2c+IHBvciBvbWlzacOzbi4gU2kgc2UgaW50cm9kdWNlbiBydXRhcyByZWxhdGl2YXMsIMOpc3RhcyBzZSAiCisiaW50ZXJwcmV0YW4gZW1wZXphbmRvIGVuIGVsIGRpcmVjdG9yaW8gc3VwZXJpb3IgZGVsIMOhcmJvbCBkZSBmdWVudGVzLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6MTIzCisjLCBuby13cmFwCittc2dpZCAiQjwtLWZvcm1hdD0+STx2YWx1ZT4iCittc2dzdHIgIkI8LS1mb3JtYXQ9Pkk8dmFsb3I+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjEyNworbXNnaWQgIiIKKyJVc2UgdGhlIGdpdmVuIGZvcm1hdCBmb3IgYnVpbGRpbmcgdGhlIHNvdXJjZSBwYWNrYWdlLiBJdCBkb2VzIG92ZXJyaWRlIGFueSAiCisiZm9ybWF0IGdpdmVuIGluIEI8ZGViaWFuL3NvdXJjZS9mb3JtYXQ+LiIKK21zZ3N0ciAiIgorIlVzYSBlbCBmb3JtYXRvIGRhZG8gcGFyYSBsYSBjb25zdHJ1Y2Npw7NuIGRlbCBwYXF1ZXRlIGZ1ZW50ZS4gRXN0byAiCisic29icmVlc2NyaWJlIGN1YWxxdWllciBmb3JtYXRvIHByZXNlbnRlIGVuQjxkZWJpYW4vc291cmNlL2Zvcm1hdD4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjEzNworbXNnaWQgIiIKKyJSZWFkIHN1YnN0aXR1dGlvbiB2YXJpYWJsZXMgaW4gSTxzdWJzdHZhcnNmaWxlPjsgdGhlIGRlZmF1bHQgaXMgdG8gbm90IHJlYWQgIgorImFueSBmaWxlLiBUaGlzIG9wdGlvbiBjYW4gYmUgdXNlZCBtdWx0aXBsZSB0aW1lcyB0byByZWFkIHN1YnN0aXR1dGlvbiAiCisidmFyaWFibGVzIGZyb20gbXVsdGlwbGUgZmlsZXMuIgorbXNnc3RyICIiCisiTGVlIGxhcyB2YXJpYWJsZXMgZGUgc3VzdGl0dWNpw7NuIGRlc2RlIEk8ZmljaGVyby12YXJpYWJsZXMtc3VzdD47IGVsIHZhbG9yICIKKyJwb3Igb21pc2nDs24gZXMgbm8gbGVlciBuaW5ndW5vLiBQdWVkZSB1c2FyIGVzdGEgb3BjacOzbiB2YXJpYXMgdmVjZXMgcGFyYSAiCisibGVlciB2YXJpYWJsZXMgZGUgc3VzdGl0dWNpw7NuIGRlIHZhcmlvcyBmaWNoZXJvcy4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjE0MworIywgbm8td3JhcAorbXNnaWQgIkI8LVo+STxjb21wcmVzc2lvbj4sIEI8LS1jb21wcmVzc2lvbj49STxjb21wcmVzc2lvbj4iCittc2dzdHIgIkI8LVo+STxjb21wcmVzc2lvbj4sIEI8LS1jb21wcmVzc2lvbj49STxjb21wcmVzacOzbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MTUxCittc2dpZCAiIgorIlNwZWNpZnkgdGhlIGNvbXByZXNzaW9uIHRvIHVzZSBmb3IgY3JlYXRlZCBmaWxlcyAodGFyYmFsbHMgYW5kIGRpZmZzKS4gIE5vdGUgIgorInRoYXQgdGhpcyBvcHRpb24gd2lsbCBub3QgY2F1c2UgZXhpc3RpbmcgdGFyYmFsbHMgdG8gYmUgcmVjb21wcmVzc2VkLCBpdCAiCisib25seSBhZmZlY3RzIG5ldyBmaWxlcy4gU3VwcG9ydGVkIHZhbHVlcyBhcmU6IEk8Z3ppcD4sIEk8YnppcDI+LCBJPGx6bWE+IGFuZCAiCisiSTx4ej4uICBJPGd6aXA+IGlzIHRoZSBkZWZhdWx0LiBJPHh6PiBpcyBvbmx5IHN1cHBvcnRlZCBzaW5jZSBkcGtnLWRldiAiCisiMS4xNS41LiIKK21zZ3N0ciAiIgorIkRlZmluZSBxdcOpIGNvbXByZXNpw7NuIHVzYXIgY29uIGxvcyBmaWNoZXJvcyBjcmVhZG9zIChhcmNoaXZvcyB0YXIgeSBmaWNoZXJvcyAiCisiwqtkaWZmwrspLiBUZW5nYSBlbiBjdWVudGEgcXVlIGVzdGEgb3BjacOzbiBubyBwcm92b2NhIHF1ZSBsb3MgYXJjaGl2b3MgdGFyICIKKyJleGlzdGVudGVzIHNlIGNvbXByaW1hbiBudWV2YW1lbnRlLCBzw7NsbyBhZmVjdGEgYSBsb3MgZmljaGVyb3MgbnVldm9zLiBMb3MgIgorInZhbG9yZXMgcGVybWl0aWRvcyBzb246IEk8Z3ppcD4sIEk8YnppcDI+LCBJPGx6bWE+IHkgSTx4ej4uIEk8Z3ppcD4gc2UgdXNhICIKKyJwb3Igb21pc2nDs24uIExhIGNvbXBhdGliaWxpZGFkIGNvbiBJPHh6PiBlcyBwb3NpYmxlIGRlc2RlIGRwa2ctZGV2IDEuMTUuNS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjE1MQorIywgbm8td3JhcAorbXNnaWQgIkI8LXo+STxsZXZlbD4sIEI8LS1jb21wcmVzc2lvbi1sZXZlbD49STxsZXZlbD4iCittc2dzdHIgIkI8LXo+STxsZXZlbD4sIEI8LS1jb21wcmVzc2lvbi1sZXZlbD49STxuaXZlbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MTU3CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJDb21wcmVzc2lvbiBsZXZlbCB0byB1c2UuIEFzIHdpdGggQjwtWj4gaXQgb25seSBhZmZlY3RzIG5ld2x5IGNyZWF0ZWQgIgorI3wgImZpbGVzLiBTdXBwb3J0ZWQgdmFsdWVzIGFyZTogSTwxPiB0byBJPDk+LCBJPGJlc3Q+LCBhbmQgSTxmYXN0Pi4gIEk8OT4gaXMgIgorI3wgInRoZSBkZWZhdWx0LiIKK21zZ2lkICIiCisiQ29tcHJlc3Npb24gbGV2ZWwgdG8gdXNlLiBBcyB3aXRoIEI8LVo+IGl0IG9ubHkgYWZmZWN0cyBuZXdseSBjcmVhdGVkIGZpbGVzLiAiCisiU3VwcG9ydGVkIHZhbHVlcyBhcmU6IEk8MT4gdG8gSTw5PiwgSTxiZXN0PiwgYW5kIEk8ZmFzdD4uICBUaGUgZGVmYXVsdCBpcyAiCisiSTw5PiBmb3IgZ3ppcCBhbmQgYnppcDIsIEk8Nj4gZm9yIHh6IGFuZCBsem1hLiIKK21zZ3N0ciAiIgorIkVsIG5pdmVsIGRlIGNvbXByZXNpw7NuIGEgdXNhci4gQWwgaWd1YWwgcXVlIEI8LVo+LCBzw7NsbyBhZmVjdGEgYSBsb3MgIgorImZpY2hlcm9zIG51ZXZvcy4gTG9zIHZhbG9yZXMgcGVybWl0aWRvcyBzb24gZGUgSTwxPiBhIEk8OT4sIEk8YmVzdD4sIHkgIgorIkk8ZmFzdD4uIEk8OT4gc2UgdXNhIHBvciBvbWlzacOzbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjE1NworIywgbm8td3JhcAorbXNnaWQgIkI8LWk+W0k8cmVnZXhwPl0sIEI8LS1kaWZmLWlnbm9yZT5bPUk8cmVnZXhwPl0iCittc2dzdHIgIkI8LWk+W0k8ZXhwcmVzacOzbi1yZWd1bGFyPl0sIEI8LS1kaWZmLWlnbm9yZT5bPUk8ZXhwcmVzacOzbi1yZWd1bGFyPl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MTY5Cittc2dpZCAiIgorIllvdSBtYXkgc3BlY2lmeSBhIHBlcmwgcmVndWxhciBleHByZXNzaW9uIHRvIG1hdGNoIGZpbGVzIHlvdSB3YW50IGZpbHRlcmVkICIKKyJvdXQgb2YgdGhlIGxpc3Qgb2YgZmlsZXMgZm9yIHRoZSBkaWZmLiAoVGhpcyBsaXN0IGlzIGdlbmVyYXRlZCBieSBhIGZpbmQgIgorImNvbW1hbmQuKSAoSWYgdGhlIHNvdXJjZSBwYWNrYWdlIGlzIGJlaW5nIGJ1aWx0IGFzIGEgdmVyc2lvbiAzIHNvdXJjZSAiCisicGFja2FnZSB1c2luZyBhIFZDUywgdGhpcyBjYW4gYmUgdXNlZCB0byBpZ25vcmUgdW5jb21taXRlZCBjaGFuZ2VzIG9uICIKKyJzcGVjaWZpYyBmaWxlcy4gVXNpbmcgLWkuKiB3aWxsIGlnbm9yZSBhbGwgb2YgdGhlbS4pICBCPC1pPiBieSBpdHNlbGYgIgorImVuYWJsZXMgdGhlIG9wdGlvbiwgd2l0aCBhIGRlZmF1bHQgcmVnZXhwIHRoYXQgd2lsbCBmaWx0ZXIgb3V0IGNvbnRyb2wgZmlsZXMgIgorImFuZCBkaXJlY3RvcmllcyBvZiB0aGUgbW9zdCBjb21tb24gcmV2aXNpb24gY29udHJvbCBzeXN0ZW1zLCBiYWNrdXAgYW5kIHN3YXAgIgorImZpbGVzIGFuZCBMaWJ0b29sIGJ1aWxkIG91dHB1dCBkaXJlY3Rvcmllcy4gVGhlcmUgY2FuIG9ubHkgYmUgb25lIGFjdGl2ZSAiCisicmVnZXhwLCBvZiBtdWx0aXBsZSBCPC1pPiBvcHRpb25zIG9ubHkgdGhlIGxhc3Qgb25lIHdpbGwgdGFrZSBlZmZlY3QuIgorbXNnc3RyICIiCisiUHVlZGUgZXNwZWNpZmljYXIgdW5hIGV4cHJlc2nDs24gcmVndWxhciBkZSBQZXJsIHBhcmEgaW5kaWNhciBhcXVlbGxvcyAiCisiZmljaGVyb3MgcXVlIGRlc2VlIGV4Y2x1aXIgZGUgbGEgbGlzdGEgZGUgZmljaGVyb3MgcGFyYSBlbCDCq2RpZmbCuyAoZXN0YSAiCisibGlzdGEgc2UgZ2VuZXJhIGNvbiB1bmEgb3JkZW4gZmluZCkuIFB1ZWRlIHVzYXIgZXN0byBwYXJhIGlnbm9yYXIgY2FtYmlvcyBubyAiCisiaW50cm9kdWNpZG9zIGVuIGZpY2hlcm9zIGVzcGVjw61maWNvcywgZW4gY2FzbyBkZSBjb25zdHJ1aXIgdW4gcGFxdWV0ZSBmdWVudGUgIgorImNvbW8gdW4gcGFxdWV0ZSBmdWVudGUgdmVyc2nDs24gMyB1c2FuZG8gVkNTLiBQb3Igc8OtIG1pc21vLCBCPC1pPiBhY3RpdmEgbGEgIgorIm9wY2nDs24gY29uIHVuYSBleHByZXNpw7NuIHJlZ3VsYXIgcHJlZGVmaW5pZGEgcXVlIGVsaW1pbmEgbG9zIGZpY2hlcm9zIHkgIgorImRpcmVjdG9yaW9zIGRlIGNvbnRyb2wgZGUgbG9zIHNpc3RlbWFzIGRlIGNvbnRyb2wgZGUgdmVyc2lvbmVzIG3DoXMgY29tdW5lcywgIgorImxvcyBmaWNoZXJvcyBkZSByZXNwYWxkbywgbG9zIGZpY2hlcm9zIGRlIGludGVyY2FtYmlvIHkgbG9zIGRpcmVjdG9yaW9zIHF1ZSAiCisic2UgZ2VuZXJhbiBjb21vIHJlc3VsdGFkbyBkZSBsYXMgb3BlcmFjaW9uZXMgZGUgTGlidG9vbC4gU8OzbG8gcHVlZGUgaGFiZXIgIgorInVuYSBleHByZXNpw7NuIHJlZ3VsYXIgYWN0aXZhLCB5IGVuIGNhc28gZGUgZXhpc3RpciB2YXJpYXMgb3BjaW9uZXMgQjwtaT4gIgorInPDs2xvIHNlIHRlbmRyw6EgZW4gY3VlbnRhIGxhIMO6bHRpbWEuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjE3OQorbXNnaWQgIiIKKyJUaGlzIGlzIHZlcnkgaGVscGZ1bCBpbiBjdXR0aW5nIG91dCBleHRyYW5lb3VzIGZpbGVzIHRoYXQgZ2V0IGluY2x1ZGVkIGluICIKKyJ0aGUgZGlmZiwgZS5nLiBpZiB5b3UgbWFpbnRhaW4geW91ciBzb3VyY2UgaW4gYSByZXZpc2lvbiBjb250cm9sIHN5c3RlbSBhbmQgIgorIndhbnQgdG8gdXNlIGEgY2hlY2tvdXQgdG8gYnVpbGQgYSBzb3VyY2UgcGFja2FnZSB3aXRob3V0IGluY2x1ZGluZyB0aGUgIgorImFkZGl0aW9uYWwgZmlsZXMgYW5kIGRpcmVjdG9yaWVzIHRoYXQgaXQgd2lsbCB1c3VhbGx5IGNvbnRhaW4gKGUuZy4gQ1ZTLywgLiIKKyJjdnNpZ25vcmUsIC5zdm4vKS4gVGhlIGRlZmF1bHQgcmVnZXhwIGlzIGFscmVhZHkgdmVyeSBleGhhdXN0aXZlLCBidXQgaWYgeW91ICIKKyJuZWVkIHRvIHJlcGxhY2UgaXQsIHBsZWFzZSBub3RlIHRoYXQgYnkgZGVmYXVsdCBpdCBjYW4gbWF0Y2ggYW55IHBhcnQgb2YgYSAiCisicGF0aCwgc28gaWYgeW91IHdhbnQgdG8gbWF0Y2ggdGhlIGJlZ2luIG9mIGEgZmlsZW5hbWUgb3Igb25seSBmdWxsICIKKyJmaWxlbmFtZXMsIHlvdSB3aWxsIG5lZWQgdG8gcHJvdmlkZSB0aGUgbmVjZXNzYXJ5IGFuY2hvcnMgKGUuZy4gJyhefC8pJywgIgorIicoJHwvKScpIHlvdXJzZWxmLiIKK21zZ3N0ciAiIgorIkVzdG8gZXMgw7p0aWwgcGFyYSBlbGltaW5hciBmaWNoZXJvcyBleHRlcm5vcyBxdWUgc2UgaW5jbHV5ZW4gZW4gZWwgwqtkaWZmwrsuICIKKyJQb3IgZWplbXBsbywgc2kgZGVzYXJyb2xsYSBzdSBzb2Z0d2FyZSBlbiBzaXN0ZW1hIGRlIGNvbnRyb2wgZGUgdmVyc2lvbmVzIHkgIgorImRlc2VhIHJlYWxpemFyIHVuIMKrY2hlY2tvdXTCuyBwYXJhIGNvbnN0cnVpciB1biBwYXF1ZXRlIGZ1ZW50ZSwgc2luIGluY2x1aXIgIgorImxvcyBmaWNoZXJvcyB5IGRpcmVjdG9yaW9zIGFkaWNpb25hbGVzIHF1ZSBoYWJpdHVhbG1lbnRlIGNvbnRpZW5lIChwb3IgIgorImVqZW1wbG8sIMKrQ1ZTL8K7LCDCqy5jdnNpZ25vcmXCuywgwqsuc3ZuwrspLiBMYSBleHByZXNpw7NuIHJlZ3VsYXIgcHJlZGVmaW5pZGEgZXMgIgorImJhc3RhbnRlIGNvbXBsZXRhLCBwZXJvIHNpIG5lY2VzaXRhIHJlZW1wbGF6YXJsYSwgdGVuZ2EgZW4gY3VlbnRhIHF1ZSBwb3IgIgorIm9taXNpw7NuLCBwdWVkZSBjb2luY2lkaXIgY29uIGN1YWxxdWllciBwYXJ0ZSBkZSBsYSBydXRhLiBQb3IgZWxsbywgc2kgZGVzZWEgIgorImVtcGFyZWphciBlbCBwcmluY2lwaW8gZGUgdW4gbm9tYnJlIGRlIGZpY2hlcm8sIG8gc8OzbG8gbm9tYnJlcyBkZSBmaWNoZXJvICIKKyJjb21wbGV0b3MsIHRlbmRyw6EgcXVlIGludHJvZHVjaXIgZGlyZWN0YW1lbnRlIGVsIGFuY2xhamUgbmVjZXNhcmlvIChwb3IgIgorImVqZW1wbG8sICcoXnwvKScsICcoJHwvKScpLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6MTc5CisjLCBuby13cmFwCittc2dpZCAiQjwtLWV4dGVuZC1kaWZmLWlnbm9yZT49STxyZWdleHA+IgorbXNnc3RyICJCPC0tZXh0ZW5kLWRpZmYtaWdub3JlPj1JPGV4cHJlc2nDs24tcmVndWxhcj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MTg2CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJUaGUgcGVybCByZWd1bGFyIGV4cHJlc3Npb24gc3BlY2lmaWVkIHdpbGwgZXh0ZW5kIHRoZSBkZWZhdWx0IHJlZ3VsYXIgIgorI3wgImV4cHJlc3Npb24gYXNzb2NpYXRlZCB0byBCPC1pPiBieSBjb25jYXRlbmF0aW5nIFwiQjx8Pkk8cmVnZXhwPlwiIHRvIHRoZSAiCisjfCAiZGVmYXVsdCByZWdleHAuICBUaGlzIG9wdGlvbiBpcyBjb252ZW5pZW50IHRvIHVzZSBpbiBCPGRlYmlhbi9zb3VyY2UvIgorI3wgIm9wdGlvbnM+IHRvIGV4Y2x1ZGUgc29tZSBhdXRvLWdlbmVyYXRlZCBmaWxlcyBmcm9tIHRoZSBhdXRvbWF0aWMgcGF0Y2ggIgorI3wgImdlbmVyYXRpb24uIgorbXNnaWQgIiIKKyJUaGUgcGVybCByZWd1bGFyIGV4cHJlc3Npb24gc3BlY2lmaWVkIHdpbGwgZXh0ZW5kIHRoZSBkZWZhdWx0IHZhbHVlIG9mIEI8LS0iCisiZGlmZi1pZ25vcmU+IGFuZCBpdHMgY3VycmVudCB2YWx1ZSAoaWYgc2V0KS4gSXQgZG9lcyB0aGlzIGJ5IGNvbmNhdGVuYXRpbmcgIgorIlwiQjx8Pkk8cmVnZXhwPlwiIHRvIHRoZSBleGlzdGluZyB2YWx1ZS4gIFRoaXMgb3B0aW9uIGlzIGNvbnZlbmllbnQgdG8gdXNlICIKKyJpbiBCPGRlYmlhbi9zb3VyY2Uvb3B0aW9ucz4gdG8gZXhjbHVkZSBzb21lIGF1dG8tZ2VuZXJhdGVkIGZpbGVzIGZyb20gdGhlICIKKyJhdXRvbWF0aWMgcGF0Y2ggZ2VuZXJhdGlvbi4iCittc2dzdHIgIiIKKyJMYSBleHByZXNpw7NuIHJlZ3VsYXIgZGUgcGVybCBkZWZpbmlkYSBleHRlbmRlcsOhIGxhIGV4cHJlc2nDs24gcmVndWxhciAiCisicHJlZGVmaW5pZGEgYXNvY2lhZGEgYSBCPC1pPiwgY29uY2F0ZW5hbmRvIMKrQjx8Pkk8cmVnZXhwPsK7IGEgbGEgZXhwcmVzacOzbiAiCisicmVndWxhciBwcmVkZWZpbmlkYS4gRXMgY29udmVuaWVudGUgdXNhciBlc3RhIG9wY2nDs24gZW4gQjxkZWJpYW4vc291cmNlLyIKKyJvcHRpb25zPiBwYXJhIGV4Y2x1aXIgYWxndW5vcyBmaWNoZXJvcyBnZW5lcmFkb3MgYXV0b23DoXRpY2FtZW50ZSBhIHBhcnRpciBkZSAiCisibGEgZ2VuZXJhY2nDs24gYXV0b23DoXRpY2EgZGUgcGFyY2hlcy4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjE4NgorIywgbm8td3JhcAorbXNnaWQgIkI8LUk+W0k8ZmlsZS1wYXR0ZXJuPl0sIEI8LS10YXItaWdub3JlPls9STxmaWxlLXBhdHRlcm4+XSIKK21zZ3N0ciAiQjwtST5bSTxwYXRyw7NuLWZpY2hlcm8+XSwgQjwtLXRhci1pZ25vcmU+Wz1JPHBhdHLDs24tZmljaGVybz5dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjE5NQorbXNnaWQgIiIKKyJJZiB0aGlzIG9wdGlvbiBpcyBzcGVjaWZpZWQsIHRoZSBwYXR0ZXJuIHdpbGwgYmUgcGFzc2VkIHRvIEI8dGFyPigxKSdzIC0tIgorImV4Y2x1ZGUgb3B0aW9uIHdoZW4gaXQgaXMgY2FsbGVkIHRvIGdlbmVyYXRlIGEgLm9yaWcudGFyIG9yIC50YXIgZmlsZS4gRm9yICIKKyJleGFtcGxlLCAtSUNWUyB3aWxsIG1ha2UgdGFyIHNraXAgb3ZlciBDVlMgZGlyZWN0b3JpZXMgd2hlbiBnZW5lcmF0aW5nIGEgLiIKKyJ0YXIuZ3ogZmlsZS4gVGhlIG9wdGlvbiBtYXkgYmUgcmVwZWF0ZWQgbXVsdGlwbGUgdGltZXMgdG8gbGlzdCBtdWx0aXBsZSAiCisicGF0dGVybnMgdG8gZXhjbHVkZS4iCittc2dzdHIgIiIKKyJTaSBzZSBlc3BlY2lmaWNhIGVzdGEgb3BjacOzbiwgZWwgbm9tYnJlIGRlIGZpY2hlcm8gc2UgcGFzYXLDoSBjb21vIHBhcsOhbWV0cm8gIgorImEgbGEgb3BjacOzbiDCqy0tZXhjbHVkZcK7IGRlIEI8dGFyPigxKSBhbCBnZW5lcmFyIGVsIGZpY2hlcm8gwqsub3JpZy50YXLCuyBvIMKrLiIKKyJ0YXLCuy4gUG9yIGVqZW1wbG8sIMKrLUlDVlPCuyBoYXLDoSBxdWUgdGFyIG9taXRhIGxvcyBkaXJlY3RvcmlvcyBDVlMgY3VhbmRvICIKKyJnZW5lcmUgZWwgZmljaGVybyDCqy50YXIuZ3rCuy4gTGEgb3BjacOzbiBzZSBwdWVkZSByZXBldGlyIHZhcmlhcyB2ZWNlcyBwYXJhICIKKyJsaXN0YXIgdmFyaW9zIHBhdHJvbmVzIGEgZXhjbHVpci4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MjAwCittc2dpZCAiIgorIkI8LUk+IGJ5IGl0c2VsZiBhZGRzIGRlZmF1bHQgLS1leGNsdWRlIG9wdGlvbnMgdGhhdCB3aWxsIGZpbHRlciBvdXQgY29udHJvbCAiCisiZmlsZXMgYW5kIGRpcmVjdG9yaWVzIG9mIHRoZSBtb3N0IGNvbW1vbiByZXZpc2lvbiBjb250cm9sIHN5c3RlbXMsIGJhY2t1cCAiCisiYW5kIHN3YXAgZmlsZXMgYW5kIExpYnRvb2wgYnVpbGQgb3V0cHV0IGRpcmVjdG9yaWVzLiIKK21zZ3N0ciAiIgorIlBvciBzaSBtaXNtbywgQjwtST4gYcOxYWRlIGxhcyBvcGNpb25lcyBwcmVkZWZpbmlkYXMgwqstLWV4Y2x1ZGXCuywgcXVlICIKKyJmaWx0cmFyw6FuIGxvcyBmaWNoZXJvcyBkZSBjb250cm9sIHkgbG9zIGRpcmVjdG9yaW9zIGRlIGxvcyBzaXN0ZW1hcyBkZSAiCisiY29udHJvbCBkZSB2ZXJzaW9uZXMgbcOhcyBjb211bmVzLCBmaWNoZXJvcyBkZSByZXNwYWxkbyBlIGludGVyY2FtYmlvLCB5IGxvcyAiCisiZGlyZWN0b3Jpb3MgZGUgc2FsaWRhIGRlIGNvbnN0cnVjY2nDs24gZGUgTGlidG9vbC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MjEyCittc2dpZCAiIgorIkI8Tm90ZTo+IFdoaWxlIHRoZXkgaGF2ZSBzaW1pbGFyIHB1cnBvc2VzLCBCPC1pPiBhbmQgQjwtST4gaGF2ZSB2ZXJ5ICIKKyJkaWZmZXJlbnQgc3ludGF4IGFuZCBzZW1hbnRpY3MuIEI8LWk+IGNhbiBvbmx5IGJlIHNwZWNpZmllZCBvbmNlIGFuZCB0YWtlcyBhICIKKyJwZXJsIGNvbXBhdGlibGUgcmVndWxhciBleHByZXNzaW9uIHdoaWNoIGlzIG1hdGNoZWQgYWdhaW5zdCB0aGUgZnVsbCAiCisicmVsYXRpdmUgcGF0aCBvZiBlYWNoIGZpbGUuIEI8LUk+IGNhbiBzcGVjaWZpZWQgbXVsdGlwbGUgdGltZXMgYW5kIHRha2VzIGEgIgorImZpbGVuYW1lIHBhdHRlcm4gd2l0aCBzaGVsbCB3aWxkY2FyZHMuICBUaGUgcGF0dGVybiBpcyBhcHBsaWVkIHRvIHRoZSBmdWxsICIKKyJyZWxhdGl2ZSBwYXRoIGJ1dCBhbHNvIHRvIGVhY2ggcGFydCBvZiB0aGUgcGF0aCBpbmRpdmlkdWFsbHkuIFRoZSBleGFjdCAiCisic2VtYW50aWMgb2YgdGFyJ3MgLS1leGNsdWRlIG9wdGlvbiBpcyBzb21ld2hhdCBjb21wbGljYXRlZCwgc2VlIGh0dHA6Ly93d3cuIgorImdudS5vcmcvc29mdHdhcmUvdGFyL21hbnVhbC90YXIuaHRtbCN3aWxkY2FyZHMgZm9yIGEgZnVsbCBkb2N1bWVudGF0aW9uLiIKK21zZ3N0ciAiIgorIkI8Tm90YTo+IEEgcGVzYXIgZGUgdGVuZXIgb2JqZXRpdm9zIHNpbWlsYXJlcywgQjxpPiB5IEI8ST4gdGllbmVuIHVuYSAiCisic2ludGF4aXMgeSBzZW3DoW50aWNhIG11eSBkaWZlcmVudGVzLiBTw7NsbyBwdWVkZSBlc3BlY2lmaWNhciBCPGk+IHVuYSB2ZXosICIKKyJxdWUgdG9tYSB1bmEgZXhwcmVzacOzbiByZWd1bGFyIGNvbXBhdGlibGUgY29uIFBlcmwsIGxhIGN1YWwgc2UgY29tcGFyYSBjb24gIgorImxhIHJ1dGEgcmVsYXRpdmEgZGUgY2FkYSBmaWNoZXJvLiBQdWVkZSBlc3BlY2lmaWNhciBCPEk+IHZhcmlhcyB2ZWNlcywgeSAiCisidG9tYSB1biBwYXRyw7NuIGRlIG5vbWJyZSBkZSBmaWNoZXJvIGNvbiBjb21vZGluZXMgZGUgaW50w6lycHJldGUgZGUgw7NyZGVuZXMuICIKKyJFbCBwYXRyw7NuIHNlIGNvbXBhcmEgY29uIGxhIHJ1dGEgcmVsYXRpdmEsIHkgdGFtYmnDqW4gY29uIGNhZGEgcGFydGUgZGUgbGEgIgorInJ1dGEsIGRlIG1hbmVyYSBpbmRpdmlkdWFsLiBMYSBzZW3DoW50aWNhIGV4YWN0YSBkZSBsYSBvcGNpw7NuIMKrLS1leGNsdWRlwrsgZGUgIgorInRhciBlcyBhbGdvIGNvbXBsaWNhZGEsIGNvbnN1bHRlIGh0dHA6Ly93d3cuZ251Lm9yZy9zb2Z0d2FyZS90YXIvbWFudWFsL3Rhci4iCisiaHRtbCN3aWxkY2FyZHMgcGFyYSB1bmEgY29tcGxldGEgZG9jdW1lbnRhY2nDs24uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjIxNQorbXNnaWQgIiIKKyJUaGUgZGVmYXVsdCByZWdleHAgYW5kIHBhdHRlcm5zIGZvciBib3RoIG9wdGlvbnMgY2FuIGJlIHNlZW4gaW4gdGhlIG91dHB1dCAiCisib2YgdGhlIEI8LS1oZWxwPiBjb21tYW5kLiIKK21zZ3N0ciAiIgorIlB1ZWRlIGNvbnN1bHRhciBsb3MgcGF0cm9uZXMgeSBleHByZXNpb25lcyByZWd1bGFyZXMgcHJlZGVmaW5pZGFzIGRlIGFtYmFzICIKKyJvcGNpb25lcyBlbiBsYSBzYWxpZGEgZGUgbGEgb3JkZW4gQjwtLWhlbHA+LiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctc291cmNlLjE6MjE1CisjLCBuby13cmFwCittc2dpZCAiR0VORVJJQyBFWFRSQUNUIE9QVElPTlMiCittc2dzdHIgIk9QQ0lPTkVTIERFIEVYVFJBQ0NJw5NOIEdFTsOJUklDQVMiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjIxNgorIywgbm8td3JhcAorbXNnaWQgIkI8LS1uby1jb3B5PiIKK21zZ3N0ciAiQjwtLW5vLWNvcHk+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjIxOQorbXNnaWQgIkRvIG5vdCBjb3B5IG9yaWdpbmFsIHRhcmJhbGxzIG5lYXIgdGhlIGV4dHJhY3RlZCBzb3VyY2UgcGFja2FnZS4iCittc2dzdHIgIiIKKyJObyBjb3BpYSBsb3MgZmljaGVyb3MgdGFyIG9yaWdpbmFsZXMgY2VyY2EgZGVsIHBhcXVldGUgZnVlbnRlIGV4dHJhw61kby4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjIxOQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1uby1jaGVjaz4iCittc2dzdHIgIkI8LS1uby1jaGVjaz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MjIyCittc2dpZCAiRG8gbm90IGNoZWNrIHNpZ25hdHVyZXMgYW5kIGNoZWNrc3VtcyBiZWZvcmUgdW5wYWNraW5nLiIKK21zZ3N0ciAiTm8gcmV2aXNhIGxhcyBmaXJtYXMgeSBzdW1hcyBkZSBjb250cm9sIGFudGVzIGRlIGRlc2VtcGFxdWV0YXIuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMToyMjIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tcmVxdWlyZS12YWxpZC1zaWduYXR1cmU+IgorbXNnc3RyICJCPC0tcmVxdWlyZS12YWxpZC1zaWduYXR1cmU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjIzMAorbXNnaWQgIiIKKyJSZWZ1c2UgdG8gdW5wYWNrIHRoZSBzb3VyY2UgcGFja2FnZSBpZiBpdCBkb2Vzbid0IGNvbnRhaW4gYW4gT3BlblBHUCAiCisic2lnbmF0dXJlIHRoYXQgY2FuIGJlIHZlcmlmaWVkIGVpdGhlciB3aXRoIHRoZSB1c2VyJ3MgSTx0cnVzdGVka2V5cy5ncGc+ICIKKyJrZXlyaW5nLCBvbmUgb2YgdGhlIHZlbmRvci1zcGVjaWZpYyBrZXlyaW5ncywgb3Igb25lIG9mIHRoZSBvZmZpY2lhbCBEZWJpYW4gIgorImtleXJpbmdzIChJPC91c3Ivc2hhcmUva2V5cmluZ3MvZGViaWFuLWtleXJpbmcuZ3BnPiBhbmQgSTwvdXNyL3NoYXJlLyIKKyJrZXlyaW5ncy9kZWJpYW4tbWFpbnRhaW5lcnMuZ3BnPikuIgorbXNnc3RyICIiCisiUmVjaGF6YSBkZXNlbXBhcXVldGFyIGVsIHBhcXVldGUgZnVlbnRlIHNpIG5vIGNvbnRpZW5lIHVuYSBmaXJtYSBPcGVuUEdQLCAiCisicXVlIHNlIHZlcmlmaWNhIG8gYmllbiBjb24gZWwgYW5pbGxvIGRlIGNsYXZlcyBkZSB1c3VhcmlvIEk8dHJ1c3RlZGtleXMuIgorImdwZz4sIHVubyBkZSBsb3MgYW5pbGxvcyBkZSBjbGF2ZXMgZXNwZWPDrWZpY29zIGRlbCBwcm92ZWVkb3IsIG8gdW5vIGRlIGxvcyAiCisiYW5pbGxvcyBkZSBjbGF2ZXMgb2ZpY2lhbGVzIGRlIERlYmlhbiwgSTwvdXNyL3NoYXJlL2tleXJpbmdzL2RlYmlhbi1rZXlyaW5nLiIKKyJncGc+IHkgSTwvdXNyL3NoYXJlL2tleXJpbmdzL2RlYmlhbi1tYWludGFpbmVycy5ncGc+LiAiCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLXNvdXJjZS4xOjIzMQorIywgbm8td3JhcAorbXNnaWQgIlNPVVJDRSBQQUNLQUdFIEZPUk1BVFMiCittc2dzdHIgIkZPUk1BVE9TIERFIFBBUVVFVEUgRlVFTlRFIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjIzNgorbXNnaWQgIiIKKyJJZiB5b3UgZG9uJ3Qga25vdyB3aGF0IHNvdXJjZSBmb3JtYXQgdG8gdXNlLCB5b3Ugc2hvdWxkIHByb2JhYmx5IHBpY2sgZWl0aGVyICIKKyJcIjMuMCAocXVpbHQpXCIgb3IgXCIzLjAgKG5hdGl2ZSlcIi4gU2VlIGh0dHA6Ly93aWtpLmRlYmlhbi5vcmcvUHJvamVjdHMvIgorIkRlYlNyYzMuMCBmb3IgaW5mb3JtYXRpb24gb24gdGhlIGRlcGxveW1lbnQgb2YgdGhvc2UgZm9ybWF0cyB3aXRoaW4gRGViaWFuLiIKK21zZ3N0ciAiIgorIlNpIG5vIHNhYmUgcXXDqSBmb3JtYXRvIGRlIGZ1ZW50ZXMgdXNhciwgZGViZXLDrWEgc2VsZWNjaW9uYXIgbyBiaWVuIMKrMy4wICIKKyIocXVpbHQpwrsgbyDCqzMuMCAobmF0aXZlKcK7LiBDb25zdWx0ZSDCq2h0dHA6Ly93aWtpLmRlYmlhbi5vcmcvUHJvamVjdHMvIgorIkRlYlNyYzMuMMK7IHBhcmEgbcOhcyBpbmZvcm1hY2nDs24gYWNlcmNhIGRlbCBkZXNhcnJvbGxvIGRlIGVzdG9zIGZvcm1hdG9zICIKKyJkZW50cm8gZGVsIHByb3llY3RvIERlYmlhbi4iCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjIzNworIywgbm8td3JhcAorbXNnaWQgIkZvcm1hdDogMS4wIgorbXNnc3RyICJGb3JtYXRvOiAxLjAiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MjQxCittc2dpZCAiIgorIkEgc291cmNlIHBhY2thZ2UgaW4gdGhpcyBmb3JtYXQgY29uc2lzdHMgZWl0aGVyIG9mIGEgQjwub3JpZy50YXIuZ3o+ICIKKyJhc3NvY2lhdGVkIHRvIGEgQjwuZGlmZi5nej4gb3IgYSBzaW5nbGUgQjwudGFyLmd6PiAoaW4gdGhhdCBjYXNlIHRoZSBwYWNrYWdlICIKKyJpcyBzYWlkIHRvIGJlIEk8bmF0aXZlPikuIgorbXNnc3RyICIiCisiVW4gcGFxdWV0ZSBmdWVudGUgZW4gZXN0ZSBmb3JtYXRvIGNvbnNpc3RlIGJpZW4gZGUgdW4gQjwub3JpZy50YXIuZ3o+ICIKKyJhc29jaWFkbyBhIHVuIEI8LmRpZmYuZ3o+LCBvIGJpZW4gZGUgdW4gw7puaWNvIEI8LnRhci5nej4gKGVuIHRhbCBjYXNvLCBlbCAiCisicGFxdWV0ZSBzZSBjb25zaWRlcmEgSTxuYXRpdmU+KS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MjQzIGRwa2ctc291cmNlLjE6NDExIGRwa2ctc291cmNlLjE6NTg2IGRwa2ctc291cmNlLjE6NjI1Cittc2dpZCAiQjxFeHRyYWN0aW5nPiIKK21zZ3N0ciAiQjxFeHRyYWNjacOzbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MjUzCittc2dpZCAiIgorIkV4dHJhY3RpbmcgYSBuYXRpdmUgcGFja2FnZSBpcyBhIHNpbXBsZSBleHRyYWN0aW9uIG9mIHRoZSBzaW5nbGUgdGFyYmFsbCBpbiAiCisidGhlIHRhcmdldCBkaXJlY3RvcnkuIEV4dHJhY3RpbmcgYSBub24tbmF0aXZlIHBhY2thZ2UgaXMgZG9uZSBieSBmaXJzdCAiCisidW5wYWNraW5nIHRoZSBCPC5vcmlnLnRhci5nej4gYW5kIHRoZW4gYXBwbHlpbmcgdGhlIHBhdGNoIGNvbnRhaW5lZCBpbiB0aGUgIgorIkI8LmRpZmYuZ3o+IGZpbGUuIFRoZSB0aW1lc3RhbXAgb2YgYWxsIHBhdGNoZWQgZmlsZXMgaXMgcmVzZXQgdG8gdGhlICIKKyJleHRyYWN0aW9uIHRpbWUgb2YgdGhlIHNvdXJjZSBwYWNrYWdlICh0aGlzIGF2b2lkcyB0aW1lc3RhbXAgc2tld3MgbGVhZGluZyAiCisidG8gcHJvYmxlbXMgd2hlbiBhdXRvZ2VuZXJhdGVkIGZpbGVzIGFyZSBwYXRjaGVkKS4gVGhlIGRpZmYgY2FuIGNyZWF0ZSBuZXcgIgorImZpbGVzICh0aGUgd2hvbGUgZGViaWFuIGRpcmVjdG9yeSBpcyBjcmVhdGVkIHRoYXQgd2F5KSBidXQgY2FuJ3QgcmVtb3ZlICIKKyJmaWxlcyAoZW1wdHkgZmlsZXMgd2lsbCBiZSBsZWZ0IG92ZXIpLiIKK21zZ3N0ciAiIgorIkV4dHJhZXIgdW4gcGFxdWV0ZSBuYXRpdm8gZXMgc2ltcGxlbWVudGUgdW5hIGV4dHJhY2Npw7NuIGRlIHVuIMO6bmljbyBhcmNoaXZvICIKKyJ0YXIgZW4gZWwgZGlyZWN0b3JpbyBkZXN0aW5vLiBFeHRyYWVyIHVuIHBhcXVldGUgbm8gbmF0aXZvIHNlIHJlYWxpemEsICIKKyJwcmltZXJvLCBkZXNlbXBhcXVldGFuZG8gZWwgQjwub3JpZy50YXIuZ3o+IHBhcmEgZGVzcHXDqXMgYXBsaWNhciBlbCBwYXJjaGUgIgorImNvbnRlbmlkbyBlbiBlbCBmaWNoZXJvIEI8LmRpZmYuZ3o+LiBMYSBtYXJjYSB0ZW1wb3JhbCBkZSB0b2RvcyBsb3MgZmljaGVyb3MgIgorInBhcmNoZWFkb3Mgc2UgbW9kaWZpY2EgZW4gZWwgbW9tZW50byBkZSBleHRyYWVyIGVsIHBhcXVldGUgZnVlbnRlIChlc3RvICIKKyJldml0YSBiaWZ1cmNhY2lvbmVzIGRlIGxhcyBtYXJjYXMgdGVtcG9yYWxlcywgcXVlIGNvbmR1Y2VuIGEgcHJvYmxlbWFzICIKKyJjdWFuZG8gc2UgcGFyY2hlYW4gbG9zIGZpY2hlcm9zIGdlbmVyYWRvcyBhdXRvbcOhdGljYW1lbnRlKS4gRWwgwqtkaWZmwrsgcHVlZGUgIgorImNyZWFyIG51ZXZvcyBmaWNoZXJvcyAodG9kbyBlbCBkaXJlY3RvcmlvIMKrZGViaWFuL8K7IHNlIGNyZWEgZGUgZXN0YSBtYW5lcmEpICIKKyJwZXJvIG5vIHB1ZWRlIGVsaW1pbmFyIGZpY2hlcm9zIChsb3MgZmljaGVyb3MgdmFjw61vcyBwZXJtYW5lY2Vyw6FuIGVuIGVsICIKKyJzaXN0ZW1hKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MjU1IGRwa2ctc291cmNlLjE6NDM5IGRwa2ctc291cmNlLjE6NTk3IGRwa2ctc291cmNlLjE6NjMwCittc2dpZCAiQjxCdWlsZGluZz4iCittc2dzdHIgIkI8Q29uc3RydWNjacOzbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MjYxCittc2dpZCAiIgorIkJ1aWxkaW5nIGEgbmF0aXZlIHBhY2thZ2UgaXMganVzdCBjcmVhdGluZyBhIHNpbmdsZSB0YXJiYWxsIHdpdGggdGhlIHNvdXJjZSAiCisiZGlyZWN0b3J5LiBCdWlsZGluZyBhIG5vbi1uYXRpdmUgcGFja2FnZSBpbnZvbHZlcyBleHRyYWN0aW5nIHRoZSBvcmlnaW5hbCAiCisidGFyYmFsbCBpbiBhIHNlcGFyYXRlIFwiLm9yaWdcIiBkaXJlY3RvcnkgYW5kIHJlZ2VuZXJhdGluZyB0aGUgQjwuZGlmZi5nej4gIgorImJ5IGNvbXBhcmluZyB0aGUgc291cmNlIHBhY2thZ2UgSTxkaXJlY3Rvcnk+IHdpdGggdGhlIC5vcmlnIGRpcmVjdG9yeS4iCittc2dzdHIgIiIKKyJDb25zdHJ1aXIgdW4gcGFxdWV0ZSBuYXRpdm8gY29uc2lzdGUgZGUgbGEgY3JlYWNpw7NuIGRlIHVuIMO6bmljbyBhcmNoaXZvIHRhciAiCisiY29uIGVsIGRpcmVjdG9yaW8gZnVlbnRlLiBDb25zdHJ1aXIgdW4gcGFxdWV0ZSBubyBuYXRpdm8gaW5jbHV5ZSBleHRyYWVyIGVsICIKKyJhcmNoaXZvIHRhciBvcmlnaW5hbCBlbiBvdHJvIGRpcmVjdG9yaW8gwqsub3JpZ8K7LCByZWdlbmVyYW5kbyBlbCBCPC5kaWZmLmd6PiAiCisicG9yIGNvbXBhcmFjacOzbiBkZWwgSTxkaXJlY3RvcmlvPiBkZWwgcGFxdWV0ZSBmdWVudGUgY29uIGVsIGRpcmVjdG9yaW8gwqsuIgorIm9yaWfCuy4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjI2MgorIywgbm8td3JhcAorbXNnaWQgIkI8QnVpbGQgb3B0aW9ucyAod2l0aCAtYik6PiIKK21zZ3N0ciAiQjxPcGNpb25lcyBkZSBjb25zdHJ1Y2Npw7NuIChjb24gLWIpOj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6Mjc1Cittc2dpZCAiIgorIklmIGEgc2Vjb25kIG5vbi1vcHRpb24gYXJndW1lbnQgaXMgc3VwcGxpZWQgaXQgc2hvdWxkIGJlIHRoZSBuYW1lIG9mIHRoZSAiCisib3JpZ2luYWwgc291cmNlIGRpcmVjdG9yeSBvciB0YXJmaWxlIG9yIHRoZSBlbXB0eSBzdHJpbmcgaWYgdGhlIHBhY2thZ2UgaXMgYSAiCisiRGViaWFuLXNwZWNpZmljIG9uZSBhbmQgc28gaGFzIG5vIERlYmlhbmlzYXRpb24gZGlmZnMuIElmIG5vIHNlY29uZCBhcmd1bWVudCAiCisiaXMgc3VwcGxpZWQgdGhlbiBCPGRwa2ctc291cmNlPiB3aWxsIGxvb2sgZm9yIHRoZSBvcmlnaW5hbCBzb3VyY2UgdGFyZmlsZSAiCisiSTxwYWNrYWdlPkI8Xz5JPHVwc3RyZWFtLXZlcnNpb24+Qjwub3JpZy50YXIuZ3o+IG9yIHRoZSBvcmlnaW5hbCBzb3VyY2UgIgorImRpcmVjdG9yeSBJPGRpcmVjdG9yeT5CPC5vcmlnPiBkZXBlbmRpbmcgb24gdGhlIEI8LXNYPiBhcmd1bWVudHMuIgorbXNnc3RyICIiCisiU2kgaGF5IHVuIHNlZ3VuZG8gYXJndW1lbnRvLCBkZWJlcsOtYSBzZXIgZWwgbm9tYnJlIGRlbCBkaXJlY3RvcmlvIGRlICIKKyJmdWVudGVzLCBkZWwgZmljaGVybyB0YXIgb3JpZ2luYWwgbyBsYSBjYWRlbmEgdmFjw61hLCBzaSBlbCBwYXF1ZXRlIGVzICIKKyJlc3BlY8OtZmljbyBkZSBEZWJpYW4geSBwb3IgdGFudG8gY2FyZWNlIGRlIGRpZmZzIMKrZGViaWFuaXphbnRlc8K7LiBTaSBubyBzZSAiCisicHJvcG9yY2lvbmEgdW4gc2VndW5kbyBhcmd1bWVudG8sIEI8ZHBrZy1zb3VyY2U+IGJ1c2NhcsOhIGVsIGFyY2hpdm8gdGFyICIKKyJvcmlnaW5hbCBJPHBhcXVldGU+QjxfPkk8dmVyc2nDs24tYXV0b3Itb3JpZ2luYWw+Qjwub3JpZy50YXIuZ3o+IG8gZWwgIgorImRpcmVjdG9yaW8gZGUgZnVlbnRlcyBvcmlnaW5hbCBJPGRpcmVjdG9yaW8+Qjwub3JpZz4gZW4gZnVuY2nDs24gZGUgbG9zICIKKyJhcmd1bWVudG9zIEI8LXNYPi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MjgxCittc2dpZCAiIgorIkI8LXNhPiwgQjwtc3A+LCBCPC1zaz4sIEI8LXN1PiBhbmQgQjwtc3I+IHdpbGwgbm90IG92ZXJ3cml0ZSBleGlzdGluZyAiCisidGFyZmlsZXMgb3IgZGlyZWN0b3JpZXMuIElmIHRoaXMgaXMgZGVzaXJlZCB0aGVuIEI8LXNBPiwgQjwtc1A+LCBCPC1zSz4sIEI8LSIKKyJzVT4gYW5kIEI8LXNSPiBzaG91bGQgYmUgdXNlZCBpbnN0ZWFkLiIKK21zZ3N0ciAiIgorIkI8LXNhPiwgQjwtc3A+LCBCPC1zaz4sIEI8LXN1PiB5IEI8LXNyPiBubyBzb2JyZWVzY3JpYmlyw6FuIGRpcmVjdG9yaW9zIG8gIgorImZpY2hlcm9zIHRhciBleGlzdGVudGVzLiBTaSBlc3RvIGVzIGxvIHF1ZSBkZXNlYSwgZGViZXLDrWEgdXRpbGl6YXIgQjwtc0E+LCAiCisiQjwtc1A+LCBCPC1zSz4sIEI8LXNVPiB5IEI8LXNSPiBlbiBzdSBsdWdhci4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjI4MQorIywgbm8td3JhcAorbXNnaWQgIkI8LXNrPiIKK21zZ3N0ciAiQjwtc2s+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjI5MAorbXNnaWQgIiIKKyJTcGVjaWZpZXMgdG8gZXhwZWN0IHRoZSBvcmlnaW5hbCBzb3VyY2UgYXMgYSB0YXJmaWxlLCBieSBkZWZhdWx0ICIKKyJJPHBhY2thZ2U+QjxfPkk8dXBzdHJlYW0tdmVyc2lvbj5CPC5vcmlnLnRhci4+STxleHRlbnNpb24+LiAgSXQgd2lsbCBsZWF2ZSAiCisidGhpcyBvcmlnaW5hbCBzb3VyY2UgaW4gcGxhY2UgYXMgYSB0YXJmaWxlLCBvciBjb3B5IGl0IHRvIHRoZSBjdXJyZW50ICIKKyJkaXJlY3RvcnkgaWYgaXQgaXNuJ3QgYWxyZWFkeSB0aGVyZS4gVGhlIHRhcmJhbGwgd2lsbCBiZSB1bnBhY2tlZCBpbnRvICIKKyJJPGRpcmVjdG9yeT5CPC5vcmlnPiBmb3IgdGhlIGdlbmVyYXRpb24gb2YgdGhlIGRpZmYuIgorbXNnc3RyICIiCisiRGVmaW5lIHF1ZSBzZSBlc3BlcmEgbGEgZnVlbnRlIG9yaWdpbmFsIGNvbW8gdW4gYXJjaGl2byB0YXIsIHBvciBvbWlzacOzbiAiCisiSTxwYXF1ZXRlPkI8Xz5JPHZlcnNpw7NuLWF1dG9yLW9yaWdpbmFsPkI8Lm9yaWcudGFyLmd6Pi4gTGEgZnVlbnRlIG9yaWdpbmFsICIKKyJzZSBkZWphcsOhIGVuIGVsIHNpdGlvIGNvbW8gdW4gZmljaGVybyB0YXIsIG8gc2UgY29waWFyw6EgYWwgZGlyZWN0b3JpbyBhY3R1YWwgIgorImVuIGNhc28gZGUgbm8gZXN0YXIgeWEgYWjDrSBwcmVzZW50ZS4gRWwgYXJjaGl2byB0YXIgc2UgZGVzZW1wYXF1ZXRhcsOhIGVuICIKKyJJPGRpcmVjdG9yaW8+Qjwub3JpZz4gcGFyYSBsYSBnZW5lcmFjacOzbiBkZWwgwqtkaWZmwrsuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMToyOTAgZHBrZy1zb3VyY2UuMTozNTkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1zcD4iCittc2dzdHIgIkI8LXNwPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToyOTUKK21zZ2lkICJMaWtlIEI8LXNrPiBidXQgd2lsbCByZW1vdmUgdGhlIGRpcmVjdG9yeSBhZ2FpbiBhZnRlcndhcmRzLiIKK21zZ3N0ciAiIgorIklkw6ludGljYSBhIEI8LXNrPiwgYSBkaWZlcmVuY2lhIGRlIHF1ZSBlbGltaW5hcsOhIGVsIGRpcmVjdG9yaW8gYWwgZmluYWxpemFyLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6Mjk1IGRwa2ctc291cmNlLjE6MzY1CisjLCBuby13cmFwCittc2dpZCAiQjwtc3U+IgorbXNnc3RyICJCPC1zdT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MzAzCittc2dpZCAiIgorIlNwZWNpZmllcyB0aGF0IHRoZSBvcmlnaW5hbCBzb3VyY2UgaXMgZXhwZWN0ZWQgYXMgYSBkaXJlY3RvcnksIGJ5IGRlZmF1bHQgIgorIkk8cGFja2FnZT5CPC0+STx1cHN0cmVhbS12ZXJzaW9uPkI8Lm9yaWc+IGFuZCBCPGRwa2ctc291cmNlPiB3aWxsIGNyZWF0ZSBhICIKKyJuZXcgb3JpZ2luYWwgc291cmNlIGFyY2hpdmUgZnJvbSBpdC4iCittc2dzdHIgIiIKKyJEZWZpbmUgcXVlIHNlIGVzcGVyYSBxdWUgbGEgZnVlbnRlIG9yaWdpbmFsIHNlYSB1biBkaXJlY3RvcmlvLCBwb3Igb21pc2nDs24gIgorIkk8cGFxdWV0ZT5CPC0+STx2ZXJzacOzbi1hdXRvci1vcmlnaW5hbD5CPC5vcmlnPiwgeSBxdWUgQjxkcGtnLXNvdXJjZT4gY3JlYXLDoSAiCisidW4gZmljaGVybyBkZSBmdWVudGVzIG51ZXZvIGEgcGFydGlyIGRlIMOpbC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjMwMworIywgbm8td3JhcAorbXNnaWQgIkI8LXNyPiIKK21zZ3N0ciAiQjwtc3I+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjMwOAorbXNnaWQgIkxpa2UgQjwtc3U+IGJ1dCB3aWxsIHJlbW92ZSB0aGF0IGRpcmVjdG9yeSBhZnRlciBpdCBoYXMgYmVlbiB1c2VkLiIKK21zZ3N0ciAiIgorIklkw6ludGljYSBhIEI8LXN1PiwgYSBkaWZlcmVuY2lhIGRlIHF1ZSBlbGltaW5hcsOhIGVsIGRpcmVjdG9yaW8gZGVzcHXDqXMgZGUgc3UgIgorInVzby4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjMwOAorIywgbm8td3JhcAorbXNnaWQgIkI8LXNzPiIKK21zZ3N0ciAiQjwtc3M+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjMxNgorbXNnaWQgIiIKKyJTcGVjaWZpZXMgdGhhdCB0aGUgb3JpZ2luYWwgc291cmNlIGlzIGF2YWlsYWJsZSBib3RoIGFzIGEgZGlyZWN0b3J5IGFuZCBhcyBhICIKKyJ0YXJmaWxlLiBkcGtnLXNvdXJjZSB3aWxsIHVzZSB0aGUgZGlyZWN0b3J5IHRvIGNyZWF0ZSB0aGUgZGlmZiwgYnV0IHRoZSAiCisidGFyZmlsZSB0byBjcmVhdGUgdGhlIEI8LmRzYz4uICBUaGlzIG9wdGlvbiBtdXN0IGJlIHVzZWQgd2l0aCBjYXJlIC0gaWYgdGhlICIKKyJkaXJlY3RvcnkgYW5kIHRhcmZpbGUgZG8gbm90IG1hdGNoIGEgYmFkIHNvdXJjZSBhcmNoaXZlIHdpbGwgYmUgZ2VuZXJhdGVkLiIKK21zZ3N0ciAiIgorIkRlZmluZSBxdWUgbGEgZnVlbnRlIG9yaWdpbmFsIGVzdMOhIGRpc3BvbmlibGUgdGFudG8gY29tbyBkaXJlY3RvcmlvIGNvbW8gdW4gICIKKyJmaWNoZXJvIHRhci4gZHBrZy1zb3VyY2UgdXNhcsOhIGVsIGRpcmVjdG9yaW8gcGFyYSBjcmVhciBlbCBkaWZmICwgcGVybyBlbCAiCisiZmljaGVybyB0YXIgcGFyYSBjcmVhciBlbCBCPC5kc2M+LiBEZWJlIHVzYXIgZXN0YSBvcGNpw7NuIGNvbiBwcmVjYXVjacOzbiwgeWEgIgorInF1ZSBzaSBlbCBkaXJlY3RvcmlvIHkgZWwgYXJjaGl2byB0YXIgbm8gY29pbmNpZGVuIHNlIGdlbmVyYXLDoSB1biBhcmNoaXZvICIKKyJmdWVudGUgaW52w6FsaWRvLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6MzE2IGRwa2ctc291cmNlLjE6MzY4CisjLCBuby13cmFwCittc2dpZCAiQjwtc24+IgorbXNnc3RyICJCPC1zbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MzIyCittc2dpZCAiIgorIlNwZWNpZmllcyB0byBub3QgbG9vayBmb3IgYW55IG9yaWdpbmFsIHNvdXJjZSwgYW5kIHRvIG5vdCBnZW5lcmF0ZSBhIGRpZmYuICAiCisiVGhlIHNlY29uZCBhcmd1bWVudCwgaWYgc3VwcGxpZWQsIG11c3QgYmUgdGhlIGVtcHR5IHN0cmluZy4gVGhpcyBpcyB1c2VkIGZvciAiCisiRGViaWFuLXNwZWNpZmljIHBhY2thZ2VzIHdoaWNoIGRvIG5vdCBoYXZlIGEgc2VwYXJhdGUgdXBzdHJlYW0gc291cmNlIGFuZCAiCisidGhlcmVmb3JlIGhhdmUgbm8gZGViaWFuaXNhdGlvbiBkaWZmcy4iCittc2dzdHIgIiIKKyJPbWl0ZSBsYSBiw7pzcXVlZGEgZGUgbGEgZnVlbnRlIG9yaWdpbmFsIHkgbm8gZ2VuZXJhcsOhIHVuIMKrZGlmZsK7LiBFbCBzZWd1bmRvICIKKyJhcmd1bWVudG8sIGVuIGNhc28gZGUgZXhpc3RpciwgZGViZSBzZXIgbGEgY2FkZW5hIHZhY8OtYS4gRXN0YSBvcGNpw7NuIHNlIHVzYSAiCisiZW4gcGFxdWV0ZXMgZXNwZWPDrWZpY29zIGRlIERlYmlhbiBxdWUgbm8gdGllbmVuIGZ1ZW50ZXMgZGVsIGF1dG9yIG9yaWdpbmFsICIKKyJwb3Igc2VwYXJhZG8sIHkgcG9yIHRhbnRvIGNhcmVjZW4gZGUgZmljaGVyb3MgwqtkaWZmwrsgwqtkZWJpYW5pemFudGVzwrsuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTozMjIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1zYT4gb3IgQjwtc0E+IgorbXNnc3RyICJCPC1zYT4gb3IgQjwtc0E+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjM0OAorbXNnaWQgIiIKKyJTcGVjaWZpZXMgdG8gbG9vayBmb3IgdGhlIG9yaWdpbmFsIHNvdXJjZSBhcmNoaXZlIGFzIGEgdGFyZmlsZSBvciBhcyBhICIKKyJkaXJlY3RvcnkgLSB0aGUgc2Vjb25kIGFyZ3VtZW50LCBpZiBhbnksIG1heSBiZSBlaXRoZXIsIG9yIHRoZSBlbXB0eSBzdHJpbmcgIgorIih0aGlzIGlzIGVxdWl2YWxlbnQgdG8gdXNpbmcgQjwtc24+KS4gIElmIGEgdGFyZmlsZSBpcyBmb3VuZCBpdCB3aWxsIHVucGFjayAiCisiaXQgdG8gY3JlYXRlIHRoZSBkaWZmIGFuZCByZW1vdmUgaXQgYWZ0ZXJ3YXJkcyAodGhpcyBpcyBlcXVpdmFsZW50IHRvIEI8LSIKKyJzcD4pOyBpZiBhIGRpcmVjdG9yeSBpcyBmb3VuZCBpdCB3aWxsIHBhY2sgaXQgdG8gY3JlYXRlIHRoZSBvcmlnaW5hbCBzb3VyY2UgIgorImFuZCByZW1vdmUgaXQgYWZ0ZXJ3YXJkcyAodGhpcyBpcyBlcXVpdmFsZW50IHRvIEI8LXNyPik7IGlmIG5laXRoZXIgaXMgZm91bmQgIgorIml0IHdpbGwgYXNzdW1lIHRoYXQgdGhlIHBhY2thZ2UgaGFzIG5vIGRlYmlhbmlzYXRpb24gZGlmZnMsIG9ubHkgYSAiCisic3RyYWlnaHRmb3J3YXJkIHNvdXJjZSBhcmNoaXZlICh0aGlzIGlzIGVxdWl2YWxlbnQgdG8gQjwtc24+KS4gIElmIGJvdGggYXJlICIKKyJmb3VuZCB0aGVuIEI8ZHBrZy1zb3VyY2U+IHdpbGwgaWdub3JlIHRoZSBkaXJlY3RvcnksIG92ZXJ3cml0aW5nIGl0LCBpZiBCPC0iCisic0E+IHdhcyBzcGVjaWZpZWQgKHRoaXMgaXMgZXF1aXZhbGVudCB0byBCPC1zUD4pICBvciByYWlzZSBhbiBlcnJvciBpZiBCPC0iCisic2E+IHdhcyBzcGVjaWZpZWQuICBCPC1zQT4gaXMgdGhlIGRlZmF1bHQuIgorbXNnc3RyICIiCisiRGVmaW5hIHVuYSBiw7pzcXVlZGEgZGUgbGEgZnVlbnRlIG9yaWdpbmFsIGNvbW8gZGlyZWN0b3JpbyBvIGNvbW8gYXJjaGl2byB0YXIgIgorIi0gZWwgc2VndW5kbyBhcmd1bWVudG8sIGRlIGV4aXN0aXIsIHB1ZWRlIHNlciBjdWFscXVpZXJhIGRlIGxhcyBkb3MgY29zYXMgbyAiCisibGEgY2FkZW5hIHZhY8OtYSAoZXF1aXZhbGUgYSB1c2FyIEI8LXNuPikuIFNpIHNlIGVuY3VlbnRyYSB1biBmaWNoZXJvIHRhciwgc2UgIgorImRlc2VtcGFxdWV0YXLDoSBwYXJhIGNyZWFyIGVsIMKrZGlmZsK7IHkgZWxpbWluYXLDoSBwb3N0ZXJpb3JtZW50ZSAoZXF1aXZhbGUgYSAiCisiQjwtc3A+KTsgc2kgc2UgZW5jdWVudHJhIHVuIGRpcmVjdG9yaW8sIHNlIGVtcGFxdWV0YXLDoSBwYXJhIGNyZWFyIGxhIGZ1ZW50ZSAiCisib3JpZ2luYWwgeSBzZSBlbGltaW5hcsOhIHBvc3Rlcmlvcm1lbnRlIChlcXVpdmFsZSBhIEI8LXNyPik7IHNpIG5vIHNlICIKKyJlbmN1ZW50cmEgbmluZ3VubyBkZSBsb3MgZG9zLCBzZSBhc3VtZSBxdWUgZWwgcGFxdWV0ZSBubyB0aWVuZSBmaWNoZXJvcyAiCisiwqtkaWZmwrsgwqtkZWJpYW5pemFudGVzwrssIMO6bmljYW1lbnRlIHVuIGZpY2hlcm8gZGUgZnVlbnRlcyAoZXF1aXZhbGUgYSBCPC0iCisic24+KS4gU2kgc2UgZW5jdWVudHJhbiBhbWJvcywgQjxkcGtnLXNvdXJjZT4gaWdub3JhcsOhIGVsIGRpcmVjdG9yaW8sICIKKyJzb2JyZWVzY3JpYmnDqW5kb2xvLCBzaSBzZSBlc3BlY2lmaWPDsyBCPC1zQT4gKGVxdWl2YWxlIGEgQjwtc1A+KSwgbyBnZW5lcmFyw6EgIgorInVuIGVycm9yIHNpIHNlIGRlZmluacOzIEI8LXNhPi4gQjwtc0E+IGVzIGxhIG9wY2nDs24gcHJlZGVmaW5pZGEuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTozNDggZHBrZy1zb3VyY2UuMTo1NDEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tYWJvcnQtb24tdXBzdHJlYW0tY2hhbmdlcz4iCittc2dzdHIgIkI8LS1hYm9ydC1vbi11cHN0cmVhbS1jaGFuZ2VzPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTozNTQKK21zZ2lkICIiCisiVGhlIHByb2Nlc3MgZmFpbHMgaWYgdGhlIGdlbmVyYXRlZCBkaWZmIGNvbnRhaW5zIGNoYW5nZXMgdG8gZmlsZXMgb3V0c2lkZSBvZiAiCisidGhlIGRlYmlhbiBzdWItZGlyZWN0b3J5LiBUaGlzIG9wdGlvbiBpcyBub3QgYWxsb3dlZCBpbiBCPGRlYmlhbi9zb3VyY2UvIgorIm9wdGlvbnM+IGJ1dCBjYW4gYmUgdXNlZCBpbiBCPGRlYmlhbi9zb3VyY2UvbG9jYWwtb3B0aW9ucz4uIgorbXNnc3RyICIiCisiRWwgcHJvY2VzYSBkYXLDoSBmYWxsbyBzaSBlbCDCq2RpZmbCuyBnZW5lcmFkbyBjb250aWVuZSBjYW1iaW9zIHJlYWxpemFkb3MgYSAiCisiZmljaGVyb3MgZnVlcmEgZGVsIHN1YmRpcmVjdG9yaW8gwqtkZWJpYW7Cuy4gRXN0YSBvcGNpw7NuIG5vIHNlIHB1ZWRlIHVzYXIgZW4gIgorIkI8ZGViaWFuL3NvdXJjZS9vcHRpb25zPiBwZXJvIHNlIHB1ZWRlIHVzYXIgZW4gQjxkZWJpYW4vc291cmNlL2xvY2FsLSIKKyJvcHRpb25zPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjM1NQorIywgbm8td3JhcAorbXNnaWQgIkI8RXh0cmFjdCBvcHRpb25zICh3aXRoIC14KTo+IgorbXNnc3RyICJCPE9wY2lvbmVzIGRlIGV4dHJhY2Npw7NuIChjb24gLXgpOj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MzU5Cittc2dpZCAiSW4gYWxsIGNhc2VzIGFueSBleGlzdGluZyBvcmlnaW5hbCBzb3VyY2UgdHJlZSB3aWxsIGJlIHJlbW92ZWQuIgorbXNnc3RyICJFbiB0b2RvcyBsb3MgY2Fzb3MgY3VhbHF1aWVyIMOhcmJvbCBkZSBmdWVudGVzIG9yaWdpbmFsIHNlcsOhIGVsaW1pbmFkby4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MzY1Cittc2dpZCAiIgorIlVzZWQgd2hlbiBleHRyYWN0aW5nIHRoZW4gdGhlIG9yaWdpbmFsIHNvdXJjZSAoaWYgYW55KSB3aWxsIGJlIGxlZnQgYXMgYSAiCisidGFyZmlsZS4gSWYgaXQgaXMgbm90IGFscmVhZHkgbG9jYXRlZCBpbiB0aGUgY3VycmVudCBkaXJlY3Rvcnkgb3IgaWYgYW4gIgorImV4aXN0aW5nIGJ1dCBkaWZmZXJlbnQgZmlsZSBpcyB0aGVyZSBpdCB3aWxsIGJlIGNvcGllZCB0aGVyZS4gIChCPFRoaXMgaXMgIgorInRoZSBkZWZhdWx0PikuIgorbXNnc3RyICIiCisiU2kgc2UgdXNhIGVuIGxhIGV4dHJhY2Npw7NuLCBsYSBmdWVudGUgb3JpZ2luYWwgKGRlIGV4aXN0aXIpIHNlIGRlamFyw6EgY29tbyAiCisidW4gZmljaGVybyB0YXIuIFNpIG5vIHNlIGVuY3VlbnRyYSBlbiBlbCBkaXJlY3RvcmlvIGFjdHVhbCBvIHNpIGV4aXN0ZSB1biAiCisiZmljaGVybyBwZXJvIGVzIGRpZmVyZW50ZSwgc2UgY29waWFyw6EgYWjDrS4gKEI8w4lzdGEgZXMgbGEgYWNjacOzbiBwb3IgIgorIm9taXNpw7NuPikuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjM2OAorbXNnaWQgIlVucGFja3MgdGhlIG9yaWdpbmFsIHNvdXJjZSB0cmVlLiIKK21zZ3N0ciAiRGVzZW1wYXF1ZXRhIGVsIMOhcmJvbCBkZSBmdWVudGVzIG9yaWdpbmFsLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTozNzMKK21zZ2lkICIiCisiRW5zdXJlcyB0aGF0IHRoZSBvcmlnaW5hbCBzb3VyY2UgaXMgbmVpdGhlciBjb3BpZWQgdG8gdGhlIGN1cnJlbnQgZGlyZWN0b3J5ICIKKyJub3IgdW5wYWNrZWQuIEFueSBvcmlnaW5hbCBzb3VyY2UgdHJlZSB0aGF0IHdhcyBpbiB0aGUgY3VycmVudCBkaXJlY3RvcnkgaXMgIgorInN0aWxsIHJlbW92ZWQuIgorbXNnc3RyICIiCisiQXNlZ3VyYSBxdWUgbGEgZnVlbnRlIG9yaWdpbmFsIG5pIHNlIGNvcGlhIGFsIGRpcmVjdG9yaW8gYWN0dWFsIG5pIHNlICIKKyJkZXNlbXBhcXVldGEuIEN1YWxxdWllciDDoXJib2wgZGUgZnVlbnRlcyBvcmlnaW5hbCBleGlzdGVudGUgZW4gZWwgZGlyZWN0b3JpbyAiCisiYWN0dWFsIGVzIGVsaW1pbmFkby4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6Mzc4Cittc2dpZCAiIgorIkFsbCB0aGUgQjwtcz5JPFg+IG9wdGlvbnMgYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZS4gSWYgeW91IHNwZWNpZnkgbW9yZSB0aGFuICIKKyJvbmUgb25seSB0aGUgbGFzdCBvbmUgd2lsbCBiZSB1c2VkLiIKK21zZ3N0ciAiIgorIlRvZGFzIGxhcyBvcGNpb25lcyBCPC1zPkk8WD4gc29uIG11dHVhbWVudGUgZXhjbHV5ZW50ZXMuIFNpIGRlZmluZSBtw6FzIGRlICIKKyJ1bmEsIHPDs2xvIHNlIHVzYXLDoSBsYSDDumx0aW1hLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6Mzc4IGRwa2ctc291cmNlLjE6NTU1CisjLCBuby13cmFwCittc2dpZCAiQjwtLXNraXAtZGViaWFuaXphdGlvbj4iCittc2dzdHIgIkI8LS1za2lwLWRlYmlhbml6YXRpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjM4MQorbXNnaWQgIlNraXBzIGFwcGxpY2F0aW9uIG9mIHRoZSBkZWJpYW4gZGlmZiBvbiB0b3Agb2YgdGhlIHVwc3RyZWFtIHNvdXJjZXMuIgorbXNnc3RyICIiCisiT21pdGUgbGEgYXBsaWNhY2nDs24gZGVsIMKrZGlmZsK7IGRlIGRlYmlhbiBjb24gbGFzIGZ1ZW50ZXMgZGVsIGF1dG9yIG9yaWdpbmFsLiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6MzgyCisjLCBuby13cmFwCittc2dpZCAiRm9ybWF0OiAyLjAiCittc2dzdHIgIkZvcm1hdG86IDIuMCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTozODYKK21zZ2lkICIiCisiQWxzbyBrbm93biBhcyB3aWcmcGVuLiBUaGlzIGZvcm1hdCBpcyBub3QgcmVjb21tZW5kZWQgZm9yIHdpZGUtc3ByZWFkIHVzYWdlLCAiCisidGhlIGZvcm1hdCBcIjMuMCAocXVpbHQpXCIgcmVwbGFjZXMgaXQuIFdpZyZwZW4gd2FzIHRoZSBmaXJzdCBzcGVjaWZpY2F0aW9uICIKKyJvZiBhIG5ldy1nZW5lcmF0aW9uIHNvdXJjZSBwYWNrYWdlIGZvcm1hdC4iCittc2dzdHIgIiIKKyJUYW1iacOpbiBjb25vY2lkbyBjb21vIHdpZyZwZW4uIE5vIHNlIHJlY29taWVuZGEgZXN0ZSBmb3JtYXRvIHBhcmEgdW4gdXNvICIKKyJtYXNpdm8sIHlhIHF1ZSBlbCBmb3JtYXRvIMKrMy4wIChxdWlsdCnCuyBsbyByZWVtcGxhemEuIFdpZyZwZW4gZnVlIGxhIHByaW1lcmEgIgorImVzcGVjaWZpY2FjacOzbiBkZSB1biBmb3JtYXRvIGRlIHBhcXVldGUgZnVlbnRlIGRlIG51ZXZhIGdlbmVyYWNpw7NuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTozOTEKK21zZ2lkICIiCisiVGhlIGJlaGF2aW91ciBvZiB0aGlzIGZvcm1hdCBpcyB0aGUgc2FtZSBhcyB0aGUgXCIzLjAgKHF1aWx0KVwiIGZvcm1hdCAiCisiZXhjZXB0IHRoYXQgaXQgZG9lc24ndCB1c2UgYW4gZXhwbGljaXQgbGlzdCBvZiBwYXRjaGVzLiBBbGwgZmlsZXMgaW4gIgorIkI8ZGViaWFuL3BhdGNoZXMvPiBtYXRjaGluZyB0aGUgcGVybCByZWd1bGFyIGV4cHJlc3Npb24gQjxbXFxldy1dKz4gbXVzdCBiZSAiCisidmFsaWQgcGF0Y2hlczogdGhleSBhcmUgYXBwbGllZCBhdCBleHRyYWN0aW9uIHRpbWUuIgorbXNnc3RyICIiCisiRWwgY29tcG9ydGFtaWVudG8gZGUgZXN0ZSBmb3JtYXRvIGVzIGlkw6ludGljbyBhbCBkZWwgZm9ybWF0byDCqzMuMCAocXVpbHQpwrssICIKKyJhIGV4Y2VwY2nDs24gZGUgcXVlIG5vIHVzYSB1bmEgbGlzdGEgZXhwbMOtY2l0YSBkZSBwYXJjaGVzLiBUb2RvcyBsb3MgZmljaGVyb3MgIgorImVuIEI8ZGViaWFuL3BhdGNoZXMvPiBxdWUgY29pbmNpZGVuIGNvbiBsYSBleHByZXNpw7NuIHJlZ3VsYXIgZGUgcGVybCBCPCIKKyJbXFxldy1dKz4gZGViZW4gc2VyIHBhcmNoZXMgdsOhbGlkb3M6IHNlIGFwbGljYW4gZHVyYW50ZSBlbCBwcm9jZXNvIGRlICIKKyJleHRyYWNjacOzbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6Mzk0Cittc2dpZCAiIgorIldoZW4gYnVpbGRpbmcgYSBuZXcgc291cmNlIHBhY2thZ2UsIGFueSBjaGFuZ2UgdG8gdGhlIHVwc3RyZWFtIHNvdXJjZSBpcyAiCisic3RvcmVkIGluIGEgcGF0Y2ggbmFtZWQgQjx6el9kZWJpYW4tZGlmZi1hdXRvPi4iCittc2dzdHIgIiIKKyJBbCBjb25zdHJ1aXIgdW4gbnVldm8gcGFxdWV0ZSBmdWVudGUsIHRvZG8gY2FtYmlvIGVuIGxhcyBmdWVudGVzIG9yaWdpbmFsIHNlICIKKyJndWFyZGFuIGVuIHVuIHBhcmNoZSBsbGFtYWRvIEI8enpfZGViaWFuLWRpZmYtYXV0bz4uIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTozOTUKKyMsIG5vLXdyYXAKK21zZ2lkICJGb3JtYXQ6IDMuMCAobmF0aXZlKSIKK21zZ3N0ciAiRm9ybWF0bzogMy4wIChuYXRpdm8pIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjQwMQorbXNnaWQgIiIKKyJUaGlzIGZvcm1hdCBpcyBhbiBleHRlbnNpb24gb2YgdGhlIG5hdGl2ZSBwYWNrYWdlIGZvcm1hdCBhcyBkZWZpbmVkIGluIHRoZSAiCisiMS4wIGZvcm1hdC4gSXQgc3VwcG9ydHMgYWxsIGNvbXByZXNzaW9uIG1ldGhvZHMgYW5kIHdpbGwgaWdub3JlIGJ5IGRlZmF1bHQgIgorImFueSBWQ1Mgc3BlY2lmaWMgZmlsZXMgYW5kIGRpcmVjdG9yaWVzIGFzIHdlbGwgYXMgbWFueSB0ZW1wb3JhcnkgZmlsZXMgKHNlZSAiCisiZGVmYXVsdCB2YWx1ZSBhc3NvY2lhdGVkIHRvIEI8LUk+IG9wdGlvbiBpbiB0aGUgQjwtLWhlbHA+IG91dHB1dCkuIgorbXNnc3RyICIiCisiRXN0ZSBmb3JtYXRvIGVzIHVuYSBleHRlbnNpw7NuIGRlbCBmb3JtYXRvIGRlIHBhcXVldGUgbmF0aXZvIGNvbW8gc2UgZGVmaW5lICIKKyJlbiBlbCBmb3JtYXRvIDEuMC4gRXMgY29tcGF0aWJsZSBjb24gdG9kb3MgbG9zIG3DqXRvZG9zIGRlIGNvbXByZXNpw7NuLCBlICIKKyJpZ25vcmFyw6EgY3VhbHF1aWVyIGZpY2hlcm8gbyBkaXJlY3RvcmlvIGVzcGVjw61maWNvIGEgc2lzdGVtYXMgZGUgY29udHJvbCBkZSAiCisidmVyc2lvbmVzLCBhc8OtIGNvbW8gbXVjaG9zIGZpY2hlcm9zIHRlbXBvcmFsZXMgKGNvbnN1bHRlIGVsIHZhbG9yICIKKyJwcmVkZWZpbmlkbyBhc29jaWFkbyBhIGxhIG9wY2nDs24gQjwtST4gZW4gbGEgc2FsaWRhIGRlIEI8LS1oZWxwPikuIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo0MDIKKyMsIG5vLXdyYXAKK21zZ2lkICJGb3JtYXQ6IDMuMCAocXVpbHQpIgorbXNnc3RyICJGb3JtYXQ6IDMuMCAocXVpbHQpIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjQwOQorbXNnaWQgIiIKKyJBIHNvdXJjZSBwYWNrYWdlIGluIHRoaXMgZm9ybWF0IGNvbnRhaW5zIGF0IGxlYXN0IGFuIG9yaWdpbmFsIHRhcmJhbGwgKEI8LiIKKyJvcmlnLnRhci4+STxleHQ+IHdoZXJlIEk8ZXh0PiBjYW4gYmUgQjxnej4sIEI8YnoyPiwgQjxsem1hPiBhbmQgQjx4ej4pIGFuZCBhICIKKyJkZWJpYW4gdGFyYmFsbCAoQjwuZGViaWFuLnRhci4+STxleHQ+KS4gSXQgY2FuIGFsc28gY29udGFpbiBhZGRpdGlvbmFsICIKKyJvcmlnaW5hbCB0YXJiYWxscyAoQjwub3JpZy0+STxjb21wb25lbnQ+QjwudGFyLj5JPGV4dD4pLiAgSTxjb21wb25lbnQ+IGNhbiAiCisib25seSBjb250YWluIGFscGhhbnVtZXJpYyBjaGFyYWN0ZXJzIGFuZCBkYXNoZXMgKFwiLVwiKS4iCittc2dzdHIgIiIKKyJVbiBwYXF1ZXRlIGZ1ZW50ZSBjb24gZXN0ZSBmb3JtYXRvIGNvbnRpZW5lIGFsIG1lbm9zIHVuIGFyY2hpdm8gdGFyIG9yaWdpbmFsICIKKyIoQjwub3JpZy50YXIuPkk8ZXh0Piwgc2llbmRvIEk8ZXh0PiBCPGd6PiwgQjxiejI+LCBCPGx6bWE+IG8gQjx4ej4pIHkgdW4gIgorImFyY2hpdm8gdGFyIGRlIERlYmlhbiAoQjwuZGViaWFuLnRhci4+STxleHQ+KS4gIFRhbWJpw6luIGNvbnRpZW5lIGFyY2hpdm9zICIKKyJ0YXIgb3JpZ2luYWxlcyBhZGljaW9uYWxlcyAoQjwub3JpZy0+STxjb21wb25lbnRlPkI8LnRhci4+STxleHQ+KS4gIgorIkk8Y29tcG9uZW50ZT4gc8OzbG8gcHVlZGUgY29udGVuZXIgY2FyYWN0ZXJlcyBhbGZhbnVtw6lyaWNvcyB5IGd1aW9uZXMgKMKrLcK7KS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NDIwCittc2dpZCAiIgorIlRoZSBtYWluIG9yaWdpbmFsIHRhcmJhbGwgaXMgZXh0cmFjdGVkIGZpcnN0LCB0aGVuIGFsbCBhZGRpdGlvbmFsIG9yaWdpbmFsICIKKyJ0YXJiYWxscyBhcmUgZXh0cmFjdGVkIGluIHN1YmRpcmVjdG9yaWVzIG5hbWVkIGFmdGVyIHRoZSBJPGNvbXBvbmVudD4gcGFydCAiCisib2YgdGhlaXIgZmlsZW5hbWUgKGFueSBwcmUtZXhpc3RpbmcgZGlyZWN0b3J5IGlzIHJlcGxhY2VkKS4gVGhlIGRlYmlhbiAiCisidGFyYmFsbCBpcyBleHRyYWN0ZWQgb24gdG9wIG9mIHRoZSBzb3VyY2UgZGlyZWN0b3J5IGFmdGVyIHByaW9yIHJlbW92YWwgb2YgIgorImFueSBwcmUtZXhpc3RpbmcgQjxkZWJpYW4+IGRpcmVjdG9yeS4gTm90ZSB0aGF0IHRoZSBkZWJpYW4gdGFyYmFsbCBtdXN0ICIKKyJjb250YWluIGEgQjxkZWJpYW4+IHN1Yi1kaXJlY3RvcnkgYnV0IGl0IGNhbiBhbHNvIGNvbnRhaW4gYmluYXJ5IGZpbGVzICIKKyJvdXRzaWRlIG9mIHRoYXQgZGlyZWN0b3J5IChzZWUgQjwtLWluY2x1ZGUtYmluYXJpZXM+IG9wdGlvbikuIgorbXNnc3RyICIiCisiUHJpbWVybyBzZSBleHRyYWUgZWwgYXJjaGl2byB0YXIgb3JpZ2luYWwsIHkgZGVzcHXDqXMgc2UgZXh0cmFlbiB0b2RvcyBsb3MgIgorImFyY2hpdm9zIHRhciBvcmlnaW5hbGVzIGVuIHN1YmRpcmVjdG9yaW9zIG5vbWJyYWRvcyBhIHBhcnRpciBkZSBsYSBwYXJ0ZSBkZSAiCisiSTxjb21wb25lbnRlPiBkZSBzdSBub21icmUgZGUgZmljaGVybyAodG9kbyBkaXJlY3RvcmlvIHByZWV4aXN0ZW50ZSBzZSAiCisicmVlbXBsYXphcsOhKS4gRWwgYXJjaGl2byB0YXIgZGUgRGViaWFuIHNlIGV4dHJhZSBlbiBlbCBkaXJlY3RvcmlvIHJhw616IGRlbCAiCisiw6FyYm9sIGRlc3B1w6lzIGRlIGxhIGVsaW1pbmFjacOzbiBkZSBjdWFscXVpZXIgZGlyZWN0b3JpbyBCPGRlYmlhbj4gIgorInByZWV4aXN0ZW50ZS4gVGVuZ2EgZW4gY3VlbnRhIHF1ZSBlbCBhcmNoaXZvIHRhciBkZSBEZWJpYW4gZGViZSBjb250ZW5lciB1biAiCisic3ViZGlyZWN0b3JpbyBCPGRlYmlhbj4sIHBlcm8gdGFtYmnDqW4gcHVlZGUgY29udGVuZXIgZmljaGVyb3MgYmluYXJpb3MgIgorImV4dGVybm9zIGEgZXNlIGRpcmVjdG9yaW8gKGNvbnN1bHRlIGxhIG9wY2nDs24gQjwtLWluY2x1ZGUtYmluYXJpZXM+KS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NDMyCittc2dpZCAiIgorIkFsbCBwYXRjaGVzIGxpc3RlZCBpbiBCPGRlYmlhbi9wYXRjaGVzL2RlYmlhbi5zZXJpZXM+IG9yIEI8ZGViaWFuL3BhdGNoZXMvIgorInNlcmllcz4gYXJlIHRoZW4gYXBwbGllZC4gIElmIHRoZSBmb3JtZXIgZmlsZSBpcyB1c2VkIGFuZCB0aGUgbGF0dGVyIG9uZSAiCisiZG9lc24ndCBleGlzdCAob3IgaXMgYSBzeW1saW5rKSwgdGhlbiB0aGUgbGF0dGVyIGlzIHJlcGxhY2VkIHdpdGggYSBzeW1saW5rICIKKyJ0byB0aGUgZm9ybWVyLiBUaGlzIGlzIG1lYW50IHRvIHNpbXBsaWZ5IHVzYWdlIG9mIHF1aWx0IHRvIG1hbmFnZSB0aGUgc2V0IG9mICIKKyJwYXRjaGVzLiBOb3RlIGhvd2V2ZXIgdGhhdCB3aGlsZSBCPGRwa2ctc291cmNlPiBwYXJzZXMgY29ycmVjdGx5IHNlcmllcyAiCisiZmlsZXMgd2l0aCBleHBsaWNpdCBvcHRpb25zIHVzZWQgZm9yIHBhdGNoIGFwcGxpY2F0aW9uIChzdG9yZWQgb24gZWFjaCBsaW5lICIKKyJhZnRlciB0aGUgcGF0Y2ggZmlsZW5hbWUgYW5kIG9uZSBvciBtb3JlIHNwYWNlcyksIGl0IGRvZXMgaWdub3JlIHRob3NlICIKKyJvcHRpb25zIGFuZCBhbHdheXMgZXhwZWN0IHBhdGNoZXMgdGhhdCBjYW4gYmUgYXBwbGllZCB3aXRoIHRoZSBCPC1wMT4gb3B0aW9uICIKKyJvZiBCPHBhdGNoPi4gSXQgd2lsbCB0aHVzIGVtaXQgYSB3YXJuaW5nIHdoZW4gaXQgZW5jb3VudGVycyBzdWNoIG9wdGlvbnMsICIKKyJhbmQgdGhlIGJ1aWxkIGlzIGxpa2VseSB0byBmYWlsLiIKK21zZ3N0ciAiIgorIkVuIGVzdGUgbW9tZW50byBzZSBhcGxpY2FuIHRvZG9zIGxvcyBwYXJjaGVzIGxpc3RhZG9zIGVuIEI8ZGViaWFuL3BhdGNoZXMvIgorImRlYmlhbi5zZXJpZXM+IG8gQjxkZWJpYW4vcGF0Y2hlcy9zZXJpZXM+LiBTaSBlbCBwcmltZXIgZmljaGVybyBzZSB1c2EsIHkgZWwgIgorInNlZ3VuZG8gbm8gZXhpc3RlIChvIGVzIHVuIGVubGFjZSBzaW1iw7NsaWNvKSwgw6lzdGUgc2UgcmVlbXBsYXphcsOhIGNvbiB1biAiCisiZW5sYWNlIHNpbWLDs2xpY28gYWwgcHJpbWVyby4gRWwgb2JqZXRpdm8gZGUgZXN0byBlcyBzaW1wbGlmaWNhciBlbCB1c28gZGUgIgorInF1aWx0IGFsIGdlc3Rpb25hciBlbCBjb25qdW50byBkZSBwYXJjaGVzLiBObyBvYnN0YW50ZSwgdGVuZ2EgZW4gY3VlbnRhIHF1ZSAiCisibWllbnRyYXMgcXVlIEI8ZHBrZy1zb3VyY2U+IGFuYWxpemEgY29ycmVjdGFtZW50ZSBsb3MgZmljaGVyb3MgZW4gwqtzZXJpZXPCuyAiCisiY29uIG9wY2lvbmVzIGV4cGzDrWNpdGFzIHBhcmEgbGEgYXBsaWNhY2nDs24gZGVsIHBhcmNoZSAoZ3VhcmRhZG9zIGVuIGNhZGEgIgorImzDrW5lYSBkZXNwdcOpcyBkZWwgbm9tYnJlIGRlIGZpY2hlcm8gZGVsIHBhcmNoZSB5IHVubyBvIG3DoXMgZXNwYWNpb3MpLCBpZ25vcmEgIgorImFxdWVsbGFzIG9wY2lvbmVzIHF1ZSBzaWVtcHJlIGVzcGVyYW4gcGFyY2hlcyBxdWUgc2UgcHVlZGFuIGFwbGljYXIgY29uIGxhICIKKyJvcGNpw7NuIEI8LXAxPiBkZSBCPHBhdGNoPi4gRGUgbm8gc2VyIGFzw60sIG1vc3RyYXLDoSB1biBhdmlzbyBlbiBjYXNvIGRlICIKKyJlbmNvbnRyYXIgdGFsZXMgb3BjaW9uZXMsIHkgY2FiZSBxdWUgbGEgY29uc3RydWNjacOzbiBmYWxsZS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NDM0Cittc2dpZCAiIgorIlNpbWlsYXJseSB0byBxdWlsdCdzIGRlZmF1bHQgYmVoYXZpb3VyLCB0aGUgcGF0Y2hlcyBjYW4gcmVtb3ZlIGZpbGVzIHRvby4iCittc2dzdHIgIiIKKyJEZSBmb3JtYSBzaW1pbGFyIGFsIGNvbXBvcnRhbWllbnRvIHByZWRlZmluaWRvIGRlIHF1aWx0LCBsb3MgcGFyY2hlcyB0YW1iacOpbiAiCisicHVlZGVuIGVsaW1pbmFyIGZpY2hlcm9zLiIKKworIyB0eXBlOiBQbGFpbiB0ZXh0CisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjQzNworbXNnaWQgIiIKKyJUaGUgZmlsZSBCPC5wYy9hcHBsaWVkLXBhdGNoZXM+IGlzIGNyZWF0ZWQgaWYgc29tZSBwYXRjaGVzIGhhdmUgYmVlbiBhcHBsaWVkICIKKyJkdXJpbmcgdGhlIGV4dHJhY3Rpb24uIgorbXNnc3RyICIiCisiRWwgZmljaGVybyBCPC5wYy9hcHBsaWVkLXBhdGNoZXM+IHNlIGNyZWEgZW4gY2FzbyBkZSBhcGxpY2FyIHBhcmNoZXMgZHVyYW50ZSAiCisibGEgZXh0cmFjY2nDs24uIgorCisjIHR5cGU6IFBsYWluIHRleHQKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NDUxCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJBbGwgb3JpZ2luYWwgdGFyYmFsbHMgZm91bmQgaW4gdGhlIGN1cnJlbnQgZGlyZWN0b3J5IGFyZSBleHRyYWN0ZWQgaW4gYSAiCisjfCAidGVtcG9yYXJ5IGRpcmVjdG9yeSBieSBmb2xsb3dpbmcgdGhlIHNhbWUgbG9naWMgYXMgZm9yIHRoZSB1bnBhY2ssIHRoZSAiCisjfCAiZGViaWFuIGRpcmVjdG9yeSBpcyBjb3BpZWQgb3ZlciBpbiB0aGUgdGVtcG9yYXJ5IGRpcmVjdG9yeSwgYW5kIGFsbCAiCisjfCAicGF0Y2hlcyBleGNlcHQgdGhlIGF1dG9tYXRpYyBwYXRjaCAoQjxkZWJpYW4tY2hhbmdlcy0+STx2ZXJzaW9uPiBvciAiCisjfCAiQjxkZWJpYW4tY2hhbmdlcz4sIGRlcGVuZGluZyBvbiBCPC0tc2luZ2xlLWRlYmlhbi1wYXRjaD4pIGFyZSBhcHBsaWVkLiAiCisjfCAiVGhlIHRlbXBvcmFyeSBkaXJlY3RvcnkgaXMgY29tcGFyZWQgdG8gdGhlIHNvdXJjZSBwYWNrYWdlIGRpcmVjdG9yeSBhbmQgIgorI3wgInRoZSBkaWZmIChpZiBub24tZW1wdHkpIGlzIHN0b3JlZCBpbiB0aGUgYXV0b21hdGljIHBhdGNoLiAgSWYgdGhlICIKKyN8ICJhdXRvbWF0aWMgcGF0Y2ggaXMgY3JlYXRlZC9kZWxldGVkLCBpdCdzIGFkZGVkL3JlbW92ZWQgZnJvbSB0aGUgc2VyaWVzICIKKyN8ICJmaWxlIGFuZCBmcm9tIHRoZSBxdWlsdCBtZXRhZGF0YS4iCittc2dpZCAiIgorIkFsbCBvcmlnaW5hbCB0YXJiYWxscyBmb3VuZCBpbiB0aGUgY3VycmVudCBkaXJlY3RvcnkgYXJlIGV4dHJhY3RlZCBpbiBhICIKKyJ0ZW1wb3JhcnkgZGlyZWN0b3J5IGJ5IGZvbGxvd2luZyB0aGUgc2FtZSBsb2dpYyBhcyBmb3IgdGhlIHVucGFjaywgdGhlICIKKyJkZWJpYW4gZGlyZWN0b3J5IGlzIGNvcGllZCBvdmVyIGluIHRoZSB0ZW1wb3JhcnkgZGlyZWN0b3J5LCBhbmQgYWxsIHBhdGNoZXMgIgorImV4Y2VwdCB0aGUgYXV0b21hdGljIHBhdGNoIChCPGRlYmlhbi1jaGFuZ2VzLT5JPHZlcnNpb24+IG9yIEI8ZGViaWFuLSIKKyJjaGFuZ2VzPiwgZGVwZW5kaW5nIG9uIEI8LS1zaW5nbGUtZGViaWFuLXBhdGNoPikgYXJlIGFwcGxpZWQuIFRoZSB0ZW1wb3JhcnkgIgorImRpcmVjdG9yeSBpcyBjb21wYXJlZCB0byB0aGUgc291cmNlIHBhY2thZ2UgZGlyZWN0b3J5LiBXaGVuIHRoZSBkaWZmIGlzIG5vbi0iCisiZW1wdHksIHRoZSBidWlsZCBmYWlscyB1bmxlc3MgQjwtLXNpbmdsZS1kZWJpYW4tcGF0Y2g+IG9yIEI8LS1hdXRvLWNvbW1pdD4gIgorImhhcyBiZWVuIHVzZWQsIGluIHdoaWNoIGNhc2UgdGhlIGRpZmYgaXMgc3RvcmVkIGluIHRoZSBhdXRvbWF0aWMgcGF0Y2guICBJZiAiCisidGhlIGF1dG9tYXRpYyBwYXRjaCBpcyBjcmVhdGVkL2RlbGV0ZWQsIGl0J3MgYWRkZWQvcmVtb3ZlZCBmcm9tIHRoZSBzZXJpZXMgIgorImZpbGUgYW5kIGZyb20gdGhlIHF1aWx0IG1ldGFkYXRhLiIKK21zZ3N0ciAiIgorIlRvZG9zIGxvcyBhcmNoaXZvcyB0YXIgb3JpZ2luYWwgZW5jb250cmFkb3MgZW4gZWwgZGlyZWN0b3JpbyBhY3R1YWwgc2UgIgorImV4dHJhZW4gYSB1biBkaXJlY3RvcmlvIHRlbXBvcmFsIHNpZ3VpZW5kbyBsYSBtaXNtYSBsw7NnaWNhIHBhcmEgIgorImRlc2VtcGFxdWV0YXIsIGNvcGlhbmRvIGVsIGRpcmVjdG9yaW8gwqtkZWJpYW7CuyBhbCBkaXJlY3RvcmlvIHRlbXBvcmFsIHkgcG9yICIKKyLDumx0aW1vIGFwbGljYW5kbyB0b2RvcyBsb3MgcGFyY2hlcywgYSBleGNlcGNpw7NuIGRlbCBwYXJjaGUgYXV0b23DoXRpY28gIgorIihCPGRlYmlhbi1jaGFuZ2VzLT5JPHZlcnNpb24+IG8gQjxkZWJpYW4tY2hhbmdlcz4sIGRlcGVuZGllbmRvIGRlIEI8LS1zaW5nbGUtIgorImRlYmlhbi1wYXRjaD4pLiBFbCBkaXJlY3RvcmlvIHRlbXBvcmFsIHNlIGNvbXBhcmEgY29uIGVsIGRpcmVjdG9yaW8gZGUgIgorImZ1ZW50ZXMgZGVsIHBhcXVldGUsIGd1YXJkYW5kbyBlbCDCq2RpZmbCuyAoc2kgbm8gZXN0w6EgdmFjw61vKSBlbiBlbCBwYXJjaGUgIgorImF1dG9tw6F0aWNvLiBFbiBjYXNvIGRlIGNyZWFyIG8gYcOxYWRpciBlbCBwYXJjaGUgYXV0b23DoXRpY2EsIGVzdGUgc2UgYcOxYWRlIG8gIgorImVsaW1pbmEgZGVsIGZpY2hlcm8gwqtzZXJpZXPCuyB5IGRlIGxvcyBtZXRhZGF0b3MgZGUgcXVpbHQuIgorCisjIHR5cGU6IFBsYWluIHRleHQKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NDU5Cittc2dpZCAiIgorIkFueSBjaGFuZ2Ugb24gYSBiaW5hcnkgZmlsZSBpcyBub3QgcmVwcmVzZW50YWJsZSBpbiBhIGRpZmYgYW5kIHdpbGwgdGh1cyAiCisibGVhZCB0byBhIGZhaWx1cmUgdW5sZXNzIHRoZSBtYWludGFpbmVyIGRlbGliZXJhdGVseSBkZWNpZGVkIHRvIGluY2x1ZGUgdGhhdCAiCisibW9kaWZpZWQgYmluYXJ5IGZpbGUgaW4gdGhlIGRlYmlhbiB0YXJiYWxsIChieSBsaXN0aW5nIGl0IGluIEI8ZGViaWFuL3NvdXJjZS8iCisiaW5jbHVkZS1iaW5hcmllcz4pLiBUaGUgYnVpbGQgd2lsbCBhbHNvIGZhaWwgaWYgaXQgZmluZHMgYmluYXJ5IGZpbGVzIGluIHRoZSAiCisiZGViaWFuIHN1Yi1kaXJlY3RvcnkgdW5sZXNzIHRoZXkgaGF2ZSBiZWVuIHdoaXRlbGlzdGVkIHRocm91Z2ggQjxkZWJpYW4vIgorInNvdXJjZS9pbmNsdWRlLWJpbmFyaWVzPi4iCittc2dzdHIgIiIKKyJDdWFscXVpZXIgY2FtYmlvIGVuIHVuIGZpY2hlcm8gYmluYXJpbyBubyBzZSBwdWVkZSByZXByZXNlbnRhciBlbiB1biDCq2RpZmbCuywgIgorImNvbmR1Y2llbmRvIGFzw60gYSB1biBmYWxsbyBhIG1lbm9zIHF1ZSBlbCBkZXNhcnJvbGxhZG9yIGRlY2lkYSAiCisiZXhwbMOtY2l0YW1lbnRlIGluY2x1aXIgZWwgZmljaGVybyBiaW5hcmlvIG1vZGlmaWNhZG8gZW4gZWwgYXJjaGl2byB0YXIgIgorIsKrZGViaWFuwrsgKG1lZGlhbnRlIHN1IGxpc3RhZG8gZW4gQjxkZWJpYW4vc291cmNlL2luY2x1ZGUtYmluYXJpZXM+KS4gTGEgIgorImNvbnN0cnVjY2nDs24gdGFtYmnDqW4gZmFsbGFyw6Egc2kgZW5jdWVudHJhIGZpY2hlcm9zIGJpbmFyaW9zIGVuIGVsICIKKyJzdWJkaXJlY3RvcmlvIMKrZGViaWFuwrssIGEgbWVub3MgcXVlIGVzdMOpbiBlbiBlbCDCq3doaXRlbGlzdMK7IGRlIEI8ZGViaWFuLyIKKyJzb3VyY2UvaW5jbHVkZS1iaW5hcmllcz4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjQ2MgorbXNnaWQgIiIKKyJUaGUgdXBkYXRlZCBkZWJpYW4gZGlyZWN0b3J5IGFuZCB0aGUgbGlzdCBvZiBtb2RpZmllZCBiaW5hcmllcyBpcyB0aGVuIHVzZWQgIgorInRvIGdlbmVyYXRlIHRoZSBkZWJpYW4gdGFyYmFsbC4iCittc2dzdHIgIiIKKyJMbGVnYWRvIGEgZXN0ZSBwdW50byBzZSBnZW5lcmEgZWwgYXJjaGl2byB0YXIgwqtkZWJpYW7CuyBlbiBiYXNlIGFsIGRpcmVjdG9yaW8gIgorIsKrZGViaWFuwrsgbW9kaWZpY2FkbyB5IGxhIGxpc3RhIGRlIGJpbmFyaW9zIG1vZGlmaWNhZG9zLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo0NjgKK21zZ2lkICIiCisiVGhlIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGRpZmYgZG9lc24ndCBpbmNsdWRlIGNoYW5nZXMgb24gVkNTIHNwZWNpZmljICIKKyJmaWxlcyBhcyB3ZWxsIGFzIG1hbnkgdGVtcG9yYXJ5IGZpbGVzIChzZWUgZGVmYXVsdCB2YWx1ZSBhc3NvY2lhdGVkIHRvIEI8LWk+ICIKKyJvcHRpb24gaW4gdGhlIEI8LS1oZWxwPiBvdXRwdXQpLiBJbiBwYXJ0aWN1bGFyLCB0aGUgQjwucGM+IGRpcmVjdG9yeSB1c2VkIGJ5ICIKKyJxdWlsdCBpcyBpZ25vcmVkIGR1cmluZyBnZW5lcmF0aW9uIG9mIHRoZSBhdXRvbWF0aWMgcGF0Y2guIgorbXNnc3RyICIiCisiRWwgwqtkaWZmwrsgZ2VuZXJhZG8gYXV0b23DoXRpY2FtZW50ZSBubyBpbmNsdXllIGNhbWJpb3MgZW4gZmljaGVyb3MgIgorImVzcGVjw61maWNvcyBhbCBzaXN0ZW1hIGRlIGNvbnRyb2wgZGUgdmVyc2lvbmVzLCBhc8OtIGNvbW8gbXVjaG9zIG90cm9zICIKKyJmaWNoZXJvcyB0ZW1wb3JhbGVzIChjb25zdWx0ZSBlbCB2YWxvciBwcmVkZWZpbmlkbyBhc29jaWFkbyBhIEI8LWk+IGVuIGxhICIKKyJzYWxpZGEgZGUgQjwtLWhlbHA+KS4gRW4gcGFydGljdWxhciwgc2UgaWdub3JhIGVsIGRpcmVjdG9yaW8gQjwucGM+IGVtcGxlYWRvICIKKyJwb3IgcXVpbHQgZHVyYW50ZSBsYSBjcmVhY2nDs24gZGVsIHBhcmNoZSBhdXRvbcOhdGljby4iCisKKyMgdHlwZTogUGxhaW4gdGV4dAorIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo0NzcKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIk5vdGU6IEI8ZHBrZy1zb3VyY2U+IGV4cGVjdHMgdGhlIHNvdXJjZSB0cmVlIHRvIGhhdmUgYWxsIHBhdGNoZXMgbGlzdGVkICIKKyN8ICJpbiB0aGUgc2VyaWVzIGZpbGUgYXBwbGllZCB3aGVuIHlvdSBnZW5lcmF0ZSB0aGUgc291cmNlIHBhY2thZ2UuICBUaGlzIGlzICIKKyN8ICJub3QgdGhlIGNhc2Ugd2hlbiB0aGUgc291cmNlIHRyZWUgaGFzIGJlZW4gb2J0YWluZWQgYnkgdW5wYWNraW5nIGEgc291cmNlICIKKyN8ICJwYWNrYWdlIHVzaW5nIHRoZSBGb3JtYXQ6IDEuMCBmb3IgaW5zdGFuY2UuIFRvIG1pdGlnYXRlIHRoZSBwcm9ibGVtLCAiCisjfCAiQjxkcGtnLXNvdXJjZT4gd2lsbCBhcHBseSB0aGUgcGF0Y2hlcyBieSBpdHNlbGYgaWYgaXQgYmVsaWV2ZXMgdGhhdCB0aGV5ICIKKyN8ICJoYXZlIG5vdCB5ZXQgYmVlbiBhcHBsaWVkLiBUbyBkZXRlY3QgdGhpcyBzaXR1YXRpb24sIGl0IHVzZXMgdGhlICIKKyN8ICJmb2xsb3dpbmcgaGV1cmlzdGljOiBpdCBmaW5kcyB0aGUgbGlzdCBvZiBzdXBwb3NlZGx5IHVuYXBwbGllZCBwYXRjaGVzICIKKyN8ICIodGhleSBhcmUgbGlzdGVkIGluIHRoZSBCPHNlcmllcz4gZmlsZSBidXQgbm90IGluIEI8LnBjL2FwcGxpZWQtIgorI3wgInBhdGNoZXM+KSwgYW5kIGlmIHRoZSBmaXJzdCBwYXRjaCBpbiB0aGF0IHNldCBjYW4gYmUgYXBwbGllZCB3aXRob3V0ICIKKyN8ICJlcnJvcnMsIGl0IHdpbGwgYXBwbHkgdGhlbSBhbGwuICBUaGUgb3B0aW9uIEI8LS1uby1wcmVwYXJhdGlvbj4gY2FuIGJlICIKKyN8ICJ1c2VkIHRvIGRpc2FibGUgdGhpcyBiZWhhdmlvdXIuIFRoaXMgb3BlcmF0aW9uIGlzIHVzdWFsbHkgZG9uZSBhcyBwYXJ0IG9mICIKKyN8ICJ0aGUgQjwtLXByZXBhcmUtYnVpbGQ+IGNvbW1hbmQuIgorbXNnaWQgIiIKKyJOb3RlOiBCPGRwa2ctc291cmNlPiBCPC0tYmVmb3JlLWJ1aWxkPiAoYW5kIEI8LWI+KSB3aWxsIGVuc3VyZSB0aGF0IGFsbCAiCisicGF0Y2hlcyBsaXN0ZWQgaW4gdGhlIHNlcmllcyBmaWxlIGFyZSBhcHBsaWVkIHNvIHRoYXQgYSBwYWNrYWdlIGJ1aWxkIGFsd2F5cyAiCisiaGFzIGFsbCBwYXRjaGVzIGFwcGxpZWQuIEl0IGRvZXMgdGhpcyBieSBmaW5kaW5nIHVuYXBwbGllZCBwYXRjaGVzICh0aGV5IGFyZSAiCisibGlzdGVkIGluIHRoZSBCPHNlcmllcz4gZmlsZSBidXQgbm90IGluIEI8LnBjL2FwcGxpZWQtcGF0Y2hlcz4pLCBhbmQgaWYgdGhlICIKKyJmaXJzdCBwYXRjaCBpbiB0aGF0IHNldCBjYW4gYmUgYXBwbGllZCB3aXRob3V0IGVycm9ycywgaXQgd2lsbCBhcHBseSB0aGVtICIKKyJhbGwuIFRoZSBvcHRpb24gQjwtLW5vLXByZXBhcmF0aW9uPiBjYW4gYmUgdXNlZCB0byBkaXNhYmxlIHRoaXMgYmVoYXZpb3IuIgorbXNnc3RyICIiCisiTm90YTogQjxkcGtnLXNvdXJjZT4gZXNwZXJhIHF1ZSBlbCDDoXJib2wgZGUgZnVlbnRlcyBjb250ZW5nYSB0b2RvcyBsb3MgIgorInBhcmNoZXMgbGlzdGFkb3MgZW4gZWwgZmljaGVybyDCq3Nlcmllc8K7IGFwbGljYWRvIGFsIGdlbmVyYXIgZWwgcGFxdWV0ZSAiCisiZnVlbnRlLiBFc3RlIG5vIGVzIGVsIGNhc28gY3VhbmRvIGVsIMOhcmJvbCBkZSBmdWVudGVzIHNlIG9idHV2byBhbCAiCisiZGVzZW1wYXF1ZXRhciB1biBwYXF1ZXRlIGZ1ZW50ZSB1c2FuZG8sIHBvciBlamVtcGxvLCDCq0Zvcm1hdDogMS4wwrsuIFBhcmEgIgorIm1pdGlnYXIgZWwgcHJvYmxlbWEsIEI8ZHBrZy1zb3VyY2U+IGFwbGljYXLDoSBsb3MgcGFyY2hlcyBkaXJlY3RhbWVudGUgc2kgIgorImNyZWUgcXVlIGVzdG9zIGHDum4gbm8gc2UgaGFuIGFwbGljYWRvLiBQYXJhIGRldGVjdGFyIHRhbCBzaXR1YWNpw7NuLCB1c2EgbGEgIgorInNpZ3VpZW50ZSBoZXVyw61zdGljYTogc2kgZW5jdWVudHJhIGxhIGxpc3RhIGRlIHBhcmNoZXMgc3VwdWVzdGFtZW50ZSBubyAiCisiYXBsaWNhZG9zIChsaXN0YWRvcyBlbiBlbCBmaWNoZXJvIEI8c2VyaWVzPiBwZXJvIG5vIGVuIEI8LnBjL2FwcGxpZWQtIgorInBhdGNoZXM+KSB5IGFwbGljYSBlbCBwcmltZXIgcGFyY2hlIGRlbCBjb25qdW50byBzaW4gcHJvYmxlbWFzLCBwcm9jZWRlcsOhIGEgIgorImFwbGljYXIgZWwgcmVzdG8uIFB1ZWRlIHVzYXIgbGEgb3BjacOzbiBCPC0tbm8tcHJlcGFyYXRpb24+IHBhcmEgZGVzYWN0aXZhciAiCisiZXN0ZSBjb21wb3J0YW1pZW50by4gSGFiaXR1YWxtZW50ZSwgZXN0YSBvcGVyYWNpw7NuIHNlIHJlYWxpemEgY29uIGxhIG9yZGVuICIKKyJCPC0tcHJlcGFyZS1idWlsZD4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjQ4MAorIywgZnV6enkKKyN8IG1zZ2lkICJCPGRlYmlhbi9jaGFuZ2Vsb2c+IgorbXNnaWQgIkI8UmVjb3JkaW5nIGNoYW5nZXM+IgorbXNnc3RyICJCPGRlYmlhbi9jaGFuZ2Vsb2c+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTo0ODAKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjwtYz4sIEI8LS1jb250cm9sLXBhdGg+IEk8cGFja2FnZS1uYW1lPiBbSTxjb250cm9sLWZpbGU+XSIKK21zZ2lkICJCPC0tY29tbWl0PiBbSTxkaXJlY3Rvcnk+XSBbSTxwYXRjaC1uYW1lPl0gW0k8cGF0Y2gtZmlsZT5dIgorbXNnc3RyICJCPC1jPiwgQjwtLWNvbnRyb2wtcGF0aD4gSTxub21icmUtcGFxdWV0ZT4gW0k8ZmljaGVyby1jb250cm9sPl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NDkwCittc2dpZCAiIgorIkdlbmVyYXRlcyBhIHBhdGNoIGNvcnJlc3BvbmRpbmcgdG8gdGhlIGxvY2FsIGNoYW5nZXMgdGhhdCBhcmUgbm90IG1hbmFnZWQgYnkgIgorInRoZSBxdWlsdCBwYXRjaCBzeXN0ZW0gYW5kIGludGVncmF0ZXMgaXQgaW4gdGhlIHBhdGNoIHN5c3RlbSB1bmRlciB0aGUgbmFtZSAiCisiSTxwYXRjaC1uYW1lPi4gSWYgdGhlIG5hbWUgaXMgbWlzc2luZywgaXQgd2lsbCBiZSBhc2tlZCBpbnRlcmFjdGl2ZWx5LiBJZiAiCisiSTxwYXRjaC1maWxlPiBpcyBnaXZlbiwgaXQgaXMgdXNlZCBhcyB0aGUgcGF0Y2ggY29ycmVzcG9uZGluZyB0byB0aGUgbG9jYWwgIgorImNoYW5nZXMgdG8gaW50ZWdyYXRlLiBUaGlzIGlzIG1haW5seSB1c2VmdWwgYWZ0ZXIgYSBidWlsZCBmYWlsdXJlIHRoYXQgcHJlLSIKKyJnZW5lcmF0ZWQgdGhpcyBmaWxlLiBPbmNlIGludGVncmF0ZWQsIGFuIGVkaXRvciBpcyBsYXVuY2hlZCBzbyB0aGF0IHlvdSBjYW4gIgorImVkaXQgdGhlIG1ldGEtaW5mb3JtYXRpb24gaW4gdGhlIHBhdGNoIGhlYWRlci4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo0OTMgZHBrZy1zb3VyY2UuMTo1NjcgZHBrZy1zb3VyY2UuMTo2MDYKK21zZ2lkICJCPEJ1aWxkIG9wdGlvbnM+IgorbXNnc3RyICJCPE9wY2lvbmVzIGRlIGNvbnN0cnVjY2nDs24+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTo0OTMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tYWxsb3ctdmVyc2lvbi1vZi1xdWlsdC1kYj0+STx2ZXJzaW9uPiIKK21zZ3N0ciAiQjwtLWFsbG93LXZlcnNpb24tb2YtcXVpbHQtZGI9Pkk8dmVyc2nDs24+IgorCisjIHR5cGU6IFBsYWluIHRleHQKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTAxCittc2dpZCAiIgorIkFsbG93IEI8ZHBrZy1zb3VyY2U+IHRvIGJ1aWxkIHRoZSBzb3VyY2UgcGFja2FnZSBpZiB0aGUgdmVyc2lvbiBvZiB0aGUgcXVpbHQgIgorIm1ldGFkYXRhIGlzIHRoZSBvbmUgc3BlY2lmaWVkLCBldmVuIGlmIEI8ZHBrZy1zb3VyY2U+IGRvZXNuJ3Qga25vdyBhYm91dCBpdC4gIgorIkVmZmVjdGl2ZWx5IHRoaXMgc2F5cyB0aGF0IHRoZSBnaXZlbiB2ZXJzaW9uIG9mIHRoZSBxdWlsdCBtZXRhZGF0YSBpcyAiCisiY29tcGF0aWJsZSB3aXRoIHRoZSB2ZXJzaW9uIDIgdGhhdCBCPGRwa2ctc291cmNlPiBjdXJyZW50bHkgc3VwcG9ydHMuIFRoZSAiCisidmVyc2lvbiBvZiB0aGUgcXVpbHQgbWV0YWRhdGEgaXMgc3RvcmVkIGluIEI8LnBjLy52ZXJzaW9uPi4iCittc2dzdHIgIiIKKyJQZXJtaXRlIHF1ZSBCPGRwa2ctc291cmNlPiBjb25zdHJ1eWEgZWwgcGFxdWV0ZSBmdWVudGUgc2kgbGEgdmVyc2nDs24gZGUgbG9zICIKKyJtZXRhZGF0b3MgZGUgcXVpbHQgZXMgZWwgZXNwZWNpZmljYWRvLCBpbmNsdXNvIHNpIEI8ZHBrZy1zb3VyY2U+IG5vIGxvICIKKyJjb25vY2UuIERlIGhlY2hvLCBlc3RvIGRpY2UgcXVlIGxhIHZlcnNpw7NuIGRhZGEgZGUgbG9zIG1ldGFkYXRvcyBkZSBxdWlsdCBlcyAiCisiY29tcGF0aWJsZSBjb24gbGEgdmVyc2nDs24gMiwgY29uIGxhIHF1ZSBCPGRwa2ctc291cmNlPiB0aWVuZSBjb21wYXRpYmlsaWRhZCAiCisiYWN0dWFsbWVudGUuIEVzdGEgdmVyc2nDs24gZGUgbG9zIG1ldGFkYXRvcyBkZSBxdWlsdCBzZSBndWFyZGFuIGVuIEI8LnBjLy4iCisidmVyc2lvbj4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTo1MDEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0taW5jbHVkZS1yZW1vdmFsPiIKK21zZ3N0ciAiQjwtLWluY2x1ZGUtcmVtb3ZhbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTA1Cittc2dpZCAiIgorIkRvIG5vdCBpZ25vcmUgcmVtb3ZlZCBmaWxlcyBhbmQgaW5jbHVkZSB0aGVtIGluIHRoZSBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlZCAiCisicGF0Y2guIgorbXNnc3RyICIiCisiTm8gaWdub3JhIGxvcyBmaWNoZXJvcyBlbGltaW5hZG9zIHkgbG9zIGluY2x1eWUgZW4gZWwgcGFyY2hlIGdlbmVyYWRvICIKKyJhdXRvbcOhdGljYW1lbnRlLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NTA1CisjLCBuby13cmFwCittc2dpZCAiQjwtLWluY2x1ZGUtdGltZXN0YW1wPiIKK21zZ3N0ciAiQjwtLWluY2x1ZGUtdGltZXN0YW1wPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1MDgKK21zZ2lkICJJbmNsdWRlIHRpbWVzdGFtcCBpbiB0aGUgYXV0b21hdGljYWxseSBnZW5lcmF0ZWQgcGF0Y2guIgorbXNnc3RyICJJbmNsdXllIGxhIG1hcmNhIHRlbXBvcmFsIGVuIGVsIHBhcmNoZSBnZW5lcmFkbyBhdXRvbcOhdGljYW1lbnRlLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NTA4CisjLCBuby13cmFwCittc2dpZCAiQjwtLWluY2x1ZGUtYmluYXJpZXM+IgorbXNnc3RyICJCPC0taW5jbHVkZS1iaW5hcmllcz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTEzCittc2dpZCAiIgorIkFkZCBhbGwgbW9kaWZpZWQgYmluYXJpZXMgaW4gdGhlIGRlYmlhbiB0YXJiYWxsLiBBbHNvIGFkZCB0aGVtIHRvIEI8ZGViaWFuLyIKKyJzb3VyY2UvaW5jbHVkZS1iaW5hcmllcz46IHRoZXkgd2lsbCBiZSBhZGRlZCBieSBkZWZhdWx0IGluIHN1YnNlcXVlbnQgYnVpbGRzICIKKyJhbmQgdGhpcyBvcHRpb24gaXMgdGh1cyBubyBtb3JlIG5lZWRlZC4iCittc2dzdHIgIiIKKyJBw7FhZGUgdG9kb3MgbG9zIGZpY2hlcm9zIGJpbmFyaW9zIG1vZGlmaWNhZG9zIGFsIGFyY2hpdm8gdGFyIMKrZGViaWFuwrsuICIKKyJUYW1iacOpbiBsb3MgYcOxYWRlIGEgQjxkZWJpYW4vc291cmNlL2luY2x1ZGUtYmluYXJpZXM+OiBzZSBhw7FhZGlyw6FuIHBvciAiCisib21pc2nDs24gZW4gZnV0dXJhcyBjb25zdHJ1Y2Npb25lcywgY29uIGxvIHF1ZSBlc3RhIG9wY2nDs24geWEgbm8gc2Vyw6EgIgorIm5lY2VzYXJpYS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjUxMworIywgbm8td3JhcAorbXNnaWQgIkI8LS1uby1wcmVwYXJhdGlvbj4iCittc2dzdHIgIkI8LS1uby1wcmVwYXJhdGlvbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTE3Cittc2dpZCAiIgorIkRvIG5vdCB0cnkgdG8gcHJlcGFyZSB0aGUgYnVpbGQgdHJlZSBieSBhcHBseWluZyBwYXRjaGVzIHdoaWNoIGFyZSAiCisiYXBwYXJlbnRseSB1bmFwcGxpZWQuIgorbXNnc3RyICIiCisiTm8gaW50ZW50YSBwcmVwYXJhciBlbCDDoXJib2wgZGUgY29uc3RydWNjacOzbiBhcGxpY2FuZG8gcGFyY2hlcyBxdWUgZXN0w6FuICIKKyJzdXB1ZXN0YW1lbnRlIHNpbiBhcGxpY2FyLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NTE3CisjLCBuby13cmFwCittc2dpZCAiQjwtLXNpbmdsZS1kZWJpYW4tcGF0Y2g+IgorbXNnc3RyICJCPC0tc2luZ2xlLWRlYmlhbi1wYXRjaD4iCisKKyMgdHlwZTogUGxhaW4gdGV4dAorIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1MjgKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlVzZSBCPGRlYmlhbi9wYXRjaGVzL2RlYmlhbi1jaGFuZ2VzPiBpbnN0ZWFkIG9mIEI8ZGViaWFuL3BhdGNoZXMvZGViaWFuLSIKKyN8ICJjaGFuZ2VzLT5JPHZlcnNpb24+IGZvciB0aGUgbmFtZSBvZiB0aGUgYXV0b21hdGljIHBhdGNoIGdlbmVyYXRlZCBkdXJpbmcgIgorI3wgImJ1aWxkLiBUaGlzIG9wdGlvbiBpcyBwYXJ0aWN1bGFybHkgdXNlZnVsIHdoZW4gdGhlIHBhY2thZ2UgaXMgbWFpbnRhaW5lZCAiCisjfCAiaW4gYSBWQ1MgYW5kIGEgcGF0Y2ggc2V0IGNhbid0IHJlbGlhYmx5IGJlIGdlbmVyYXRlZC4gSW5zdGVhZCB0aGUgY3VycmVudCAiCisjfCAiZGlmZiB3aXRoIHVwc3RyZWFtIHNob3VsZCBiZSBzdG9yZWQgaW4gYSBzaW5nbGUgcGF0Y2guIFdoZW4gdXNpbmcgdGhpcyAiCisjfCAib3B0aW9uLCBpdCBpcyByZWNvbW1lbmRlZCB0byBjcmVhdGUgYSBkZWJpYW4vc291cmNlL3BhdGNoLWhlYWRlciBmaWxlICIKKyN8ICJleHBsYWluaW5nIGhvdyB0aGUgRGViaWFuIGNoYW5nZXMgY2FuIGJlIGJlc3QgcmV2aWV3ZWQsIGZvciBleGFtcGxlIGluICIKKyN8ICJ0aGUgVkNTIHRoYXQgaXMgdXNlZC4iCittc2dpZCAiIgorIlVzZSBCPGRlYmlhbi9wYXRjaGVzL2RlYmlhbi1jaGFuZ2VzPiBpbnN0ZWFkIG9mIEI8ZGViaWFuL3BhdGNoZXMvZGViaWFuLSIKKyJjaGFuZ2VzLT5JPHZlcnNpb24+IGZvciB0aGUgbmFtZSBvZiB0aGUgYXV0b21hdGljIHBhdGNoIGdlbmVyYXRlZCBkdXJpbmcgIgorImJ1aWxkLiBUaGlzIG9wdGlvbiBpcyBwYXJ0aWN1bGFybHkgdXNlZnVsIHdoZW4gdGhlIHBhY2thZ2UgaXMgbWFpbnRhaW5lZCBpbiAiCisiYSBWQ1MgYW5kIGEgcGF0Y2ggc2V0IGNhbid0IHJlbGlhYmx5IGJlIGdlbmVyYXRlZC4gSW5zdGVhZCB0aGUgY3VycmVudCBkaWZmICIKKyJ3aXRoIHVwc3RyZWFtIHNob3VsZCBiZSBzdG9yZWQgaW4gYSBzaW5nbGUgcGF0Y2guIFRoZSBvcHRpb24gd291bGQgYmUgcHV0IGluICIKKyJCPGRlYmlhbi9zb3VyY2UvbG9jYWwtb3B0aW9ucz4gYW5kIHdvdWxkIGJlIGFjY29tcGFuaWVkIGJ5IGEgQjxkZWJpYW4vc291cmNlLyIKKyJsb2NhbC1wYXRjaC1oZWFkZXI+IGZpbGUgZXhwbGFpbmluZyBob3cgdGhlIERlYmlhbiBjaGFuZ2VzIGNhbiBiZSBiZXN0ICIKKyJyZXZpZXdlZCwgZm9yIGV4YW1wbGUgaW4gdGhlIFZDUyB0aGF0IGlzIHVzZWQuIgorbXNnc3RyICIiCisiVXNhIEI8ZGViaWFuL3BhdGNoZXMvZGViaWFuLWNoYW5nZXM+IGVuIGx1Z2FyIGRlIEI8ZGViaWFuL3BhdGNoZXMvZGViaWFuLSIKKyJjaGFuZ2VzLT5JPHZlcnNpb24+IHBhcmEgZWwgbm9tYnJlIGRlbCBwYXJjaGUgZ2VuZXJhZG8gYXV0b23DoXRpY2FtZW50ZSAiCisiZHVyYW50ZSBsYSBjb25zdHJ1Y2Npw7NuLiBFc3RhIG9wY2nDs24gZXMgcGFydGljdWxhcm1lbnRlIMO6dGlsIHNpIGVsIHBhcXVldGUgIgorInNlIGd1YXJkYSBlbiB1biBzaXN0ZW1hIGRlIGNvbnRyb2wgZGUgdmVyc2lvbmVzIHkgc2kgbm8gc2UgcHVlZGUgZ2VuZXJhciB1biAiCisiY29uanVudG8gZGUgcGFyY2hlcyBhZGVjdWFkb3MuIEFsIHVzYXIgZXN0YSBvcGNpw7NuLCBzZSByZWNvbWllbmRhIGNyZWFyIHVuICIKKyJmaWNoZXJvIMKrZGViaWFuL3NvdXJjZS9wYXRjaC1oZWFkZXLCuywgZGV0YWxsYW5kbyBsYSBtZWpvciBmb3JtYSBkZSByZXZpc2FyICIKKyJsb3MgY2FtYmlvcyBkZSBEZWJpYW4sIHBvciBlamVtcGxvLCBlbCBzaXN0ZW1hIGRlIGNvbnRyb2wgZGUgdmVyc2lvbmVzIGVuICIKKyJ1c28uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTo1MjgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tY3JlYXRlLWVtcHR5LW9yaWc+IgorbXNnc3RyICJCPC0tY3JlYXRlLWVtcHR5LW9yaWc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjUzNAorbXNnaWQgIiIKKyJBdXRvbWF0aWNhbGx5IGNyZWF0ZSB0aGUgbWFpbiBvcmlnaW5hbCB0YXJiYWxsIGFzIGVtcHR5IGlmIGl0J3MgbWlzc2luZyBhbmQgIgorImlmIHRoZXJlIGFyZSBzdXBwbGVtZW50YXJ5IG9yaWdpbmFsIHRhcmJhbGxzLiBUaGlzIG9wdGlvbiBpcyBtZWFudCB0byBiZSAiCisidXNlZCB3aGVuIHRoZSBzb3VyY2UgcGFja2FnZSBpcyBqdXN0IGEgYnVuZGxlIG9mIG11bHRpcGxlIHVwc3RyZWFtIHNvZnR3YXJlICIKKyJhbmQgd2hlcmUgdGhlcmUncyBubyBcIm1haW5cIiBzb2Z0d2FyZS4iCittc2dzdHIgIiIKKyJDcmVhIGF1dG9tw6F0aWNhbWVudGUgZWwgYXJjaGl2byB0YXIgcHJpbmNpcGFsIHkgb3JpZ2luYWwgY29tbyB2YWPDrW8gZW4gY2FzbyAiCisiZGUgbm8gZXhpc3RpciB5IHNpIGhheSBvdHJvcyBhcmNoaXZvcyB0YXIgb3JpZ2luYWxlcyBhZGljaW9uYWxlcy4gRXN0YSAiCisib3BjacOzbiBlc3TDoSBkaXNlw7FhZGEgcGFyYSBzdSB1c28gY3VhbmRvIGVsIHBhcXVldGUgZnVlbnRlIGVzIHVuIGNvbmp1bnRvIGRlICIKKyJ2YXJpb3MgcHJvZ3JhbWFzIGRlIGxhIGZ1ZW50ZSBwcmluY2lwYWwgeSBjdWFuZG8gbm8gaGF5IHByb2dyYW1hcyAiCisiwqtwcmluY2lwYWxlc8K7LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NTM0CisjLCBuby13cmFwCittc2dpZCAiQjwtLXVuYXBwbHktcGF0Y2hlcz4iCittc2dzdHIgIkI8LS11bmFwcGx5LXBhdGNoZXM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjU0MQorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiVW5hcHBseSB0aGUgcGF0Y2hlcyBpbiB0aGUgQjwtLWFmdGVyLWJ1aWxkPiBob29rLiBUaGlzIGlzIG1haW5seSB1c2VmdWwgIgorI3wgIndoZW4geW91IGJ1aWxkIHlvdXIgcGFja2FnZSBkaXJlY3RseSBpbiBhIFZDUyB0aGF0IGNvbnRhaW5zIHVucGF0Y2hlZCAiCisjfCAidXBzdHJlYW0gc291cmNlIGFuZCB3aGVyZSB5b3Ugd2FudCB0byBrZWVwIHRoZSB0cmVlIHVucGF0Y2hlZCBldmVuIGFmdGVyICIKKyN8ICJhIHBhY2thZ2UgYnVpbGQuIFRoaXMgb3B0aW9uIGlzIHVzdWFsbHkgcHV0IGluIEI8ZGViaWFuL3NvdXJjZS9sb2NhbC0iCisjfCAib3B0aW9ucz4gKGl0J3Mgbm90IGFsbG93ZWQgaW4gQjxkZWJpYW4vc291cmNlL29wdGlvbnM+IHNvIHRoYXQgYWxsICIKKyN8ICJnZW5lcmF0ZWQgc291cmNlIHBhY2thZ2VzIGhhdmUgdGhlIHNhbWUgYmVoYXZpb3VyIGJ5IGRlZmF1bHQpLiIKK21zZ2lkICIiCisiVW5hcHBseSB0aGUgcGF0Y2hlcyBpbiB0aGUgQjwtLWFmdGVyLWJ1aWxkPiBob29rLiBZb3UgdXN1YWxseSBkb24ndCBuZWVkICIKKyJ0aGlzIG9wdGlvbiBhcyBkcGtnLXNvdXJjZSB3aWxsIGF1dG9tYXRpY2FsbHkgdW5hcHBseSB0aGUgcGF0Y2hlcyBpZiBpdCBkaWQgIgorImFwcGx5IHRoZW0gZHVyaW5nIEI8LS1iZWZvcmUtYnVpbGQ+LiBUaGlzIG9wdGlvbiBpcyBvbmx5IGFsbG93ZWQgaW4gQjxkZWJpYW4vIgorInNvdXJjZS9sb2NhbC1vcHRpb25zPiBzbyB0aGF0IGFsbCBnZW5lcmF0ZWQgc291cmNlIHBhY2thZ2VzIGhhdmUgdGhlIHNhbWUgIgorImJlaGF2aW9yIGJ5IGRlZmF1bHQuIgorbXNnc3RyICIiCisiTm8gYXBsaWNhIG8gZWxpbWluYSBsb3MgY2FtYmlvcyBkZSBsb3MgcGFyY2hlcyBlbiBlbCDCq2hvb2vCuyBCPC0tYWZ0ZXItIgorImJ1aWxkPi4gRXN0byBlcyDDunRpbCBwcmluY2lwYWxtZW50ZSBjdWFuZG8gY29uc3RydXllIHN1IHBhcXVldGUgZGlyZWN0YW1lbnRlICIKKyJlbiB1biBzaXN0ZW1hIGRlIGNvbnRyb2wgZGUgdmVyc2lvbmVzIHF1ZSBjb250aWVuZSBsYSBmdWVudGUgb3JpZ2luYWwgc2luICIKKyJwYXJjaGVhciwgeSBjdWFuZG8gcXVpZXJlIG1hbnRlbmVyIGVsIMOhcmJvbCBzaW4gcGFyY2hlYXIgaW5jbHVzbyBkZXNwdcOpcyBkZSAiCisibGEgY29uc3RydWNjacOzbiBkZWwgcGFxdWV0ZS4gSGFiaXR1YWxtZW50ZSwgZXN0YSBvcGNpw7NuIHNlIGludHJvZHVjZSBlbiAiCisiQjxkZWJpYW4vc291cmNlL2xvY2FsLW9wdGlvbnM+IChubyBzZSBwZXJtaXRlIGVuIEI8ZGViaWFuL3NvdXJjZS9vcHRpb25zPiAiCisicGFyYSBxdWUgdG9kb3MgbG9zIHBhcXVldGVzIGRlIGZ1ZW50ZSBnZW5lcmFkb3MgdGVuZ2FuIGVsIG1pc21vICIKKyJjb21wb3J0YW1pZW50byBwb3Igb21pc2nDs24pLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1NDgKK21zZ2lkICIiCisiVGhlIHByb2Nlc3MgZmFpbHMgaWYgYW4gYXV0b21hdGljIHBhdGNoIGhhcyBiZWVuIGdlbmVyYXRlZC4gVGhpcyBvcHRpb24gY2FuICIKKyJiZSB1c2VkIHRvIGVuc3VyZSB0aGF0IGFsbCBjaGFuZ2VzIHdlcmUgcHJvcGVybHkgcmVjb3JkZWQgaW4gc2VwYXJhdGUgcXVpbHQgIgorInBhdGNoZXMgcHJpb3IgdG8gdGhlIHNvdXJjZSBwYWNrYWdlIGJ1aWxkLiBUaGlzIG9wdGlvbiBpcyBub3QgYWxsb3dlZCBpbiAiCisiQjxkZWJpYW4vc291cmNlL29wdGlvbnM+IGJ1dCBjYW4gYmUgdXNlZCBpbiBCPGRlYmlhbi9zb3VyY2UvbG9jYWwtb3B0aW9ucz4uIgorbXNnc3RyICIiCisiRWwgcHJvY2VzbyBmYWxsYSBzaSBzZSBnZW5lcmEgdW4gcGFyY2hlIGF1dG9tw6F0aWNvLiBFc3RhIG9wY2nDs24gc2UgcHVlZGUgIgorInVzYXIgcGFyYSBhc2VndXJhciBxdWUgdG9kb3MgbG9zIGNhbWJpb3Mgc2UgcmVnaXN0cmVuIGFwcm9waWFkYW1lbnRlIGVuICIKKyJwYXJjaGVzIGRlIHF1aWx0IHNlcGFyYWRvcyBhbnRlcyBkZSBsYSBjb25zdHJ1Y2Npw7NuIGRlbCBwYXF1ZXRlIGZ1ZW50ZS4gRXN0YSAiCisib3BjacOzbiBubyBzZSBwZXJtaXRlIGVuIEI8ZGViaWFuL3NvdXJjZS9vcHRpb25zPiBwZXJvIHNlIHB1ZWRlIHVzYXIgZW4gIgorIkI8ZGViaWFuL3NvdXJjZS9sb2NhbC1vcHRpb25zPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjU0OAorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPC0tbm8tYWN0PiIKK21zZ2lkICJCPC0tYXV0by1jb21taXQ+IgorbXNnc3RyICJCPC0tbm8tYWN0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1NTIKK21zZ2lkICIiCisiVGhlIHByb2Nlc3MgZG9lc24ndCBmYWlsIGlmIGFuIGF1dG9tYXRpYyBwYXRjaCBoYXMgYmVlbiBnZW5lcmF0ZWQsIGluc3RlYWQgIgorIml0J3MgaW1tZWRpYXRlbHkgcmVjb3JkZWQgaW4gdGhlIHF1aWx0IHNlcmllcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1NTUKK21zZ2lkICJCPEV4dHJhY3Qgb3B0aW9ucz4iCittc2dzdHIgIkI8T3BjaW9uZXMgZGUgZXh0cmFjY2nDs24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjU1OAorbXNnaWQgIlNraXBzIGV4dHJhY3Rpb24gb2YgdGhlIGRlYmlhbiB0YXJiYWxsIG9uIHRvcCBvZiB0aGUgdXBzdHJlYW0gc291cmNlcy4iCittc2dzdHIgIiIKKyJPbWl0ZSBsYSBleHRyYWNjacOzbiBkZWwgYXJjaGl2byB0YXIgwqtkZWJpYW7CuyBzb2JyZSBsYXMgZnVlbnRlIGRlbCBhdXRvciAiCisib3JpZ2luYWwuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTo1NTgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tc2tpcC1wYXRjaGVzPiIKK21zZ3N0ciAiQjwtLXNraXAtcGF0Y2hlcz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTYxCittc2dpZCAiRG8gbm90IGFwcGx5IHBhdGNoZXMgYXQgdGhlIGVuZCBvZiB0aGUgZXh0cmFjdGlvbi4iCittc2dzdHIgIk5vIGFwbGljYSBsb3MgcGFyY2hlcyBhbCBmaW5hbGl6YXIgbGEgZXh0cmFjY2nDs24uIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo1NjIKKyMsIG5vLXdyYXAKK21zZ2lkICJGb3JtYXQ6IDMuMCAoY3VzdG9tKSIKK21zZ3N0ciAiRm9ybWF0bzogMy4wIChjdXN0b20pIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjU2NQorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiVGhpcyBmb3JtYXQgaXMgcGFydGljdWxhci4gSXQgZG9lc24ndCByZXByZXNlbnQgYSByZWFsIHNvdXJjZSBwYWNrYWdlICIKKyN8ICJmb3JtYXQgYnV0IGNhbiBiZSB1c2VkIHRvIGNyZWF0ZSBzb3VyY2UgcGFja2FnZXMgd2l0aCBhcmJpdHJhcnkgZmlsZXMuIgorbXNnaWQgIiIKKyJUaGlzIGZvcm1hdCBpcyBzcGVjaWFsLiBJdCBkb2Vzbid0IHJlcHJlc2VudCBhIHJlYWwgc291cmNlIHBhY2thZ2UgZm9ybWF0ICIKKyJidXQgY2FuIGJlIHVzZWQgdG8gY3JlYXRlIHNvdXJjZSBwYWNrYWdlcyB3aXRoIGFyYml0cmFyeSBmaWxlcy4iCittc2dzdHIgIiIKKyJFc3RlIGZvcm1hdG8gZXMgZXNwZWNpYWwuIE5vIHJlcHJlc2VudGEgbmluZ8O6biBmb3JtYXRvIGRlIHBhcXVldGUgZnVlbnRlICIKKyJyZWFsLCBwZXJvIHNlIHB1ZWRlIHVzYXIgcGFyYSBjcmVhciBwYXF1ZXRlcyBmdWVudGUgY29uIGZpY2hlcm9zIGFyYml0cmFyaW9zLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1NzEKK21zZ2lkICIiCisiQWxsIG5vbi1vcHRpb24gYXJndW1lbnRzIGFyZSB0YWtlbiBhcyBmaWxlcyB0byBpbnRlZ3JhdGUgaW4gdGhlIGdlbmVyYXRlZCAiCisic291cmNlIHBhY2thZ2UuIFRoZXkgbXVzdCBleGlzdCBhbmQgYXJlIHByZWZlcmFibHkgaW4gdGhlIGN1cnJlbnQgZGlyZWN0b3J5LiAiCisiQXQgbGVhc3Qgb25lIGZpbGUgbXVzdCBiZSBnaXZlbi4iCittc2dzdHIgIiIKKyJUb2RvcyBsb3MgYXJndW1lbnRvcyBxdWUgbm8gc29uIG9wY2lvbmVzIHNlIHRvbWFuIGNvbW8gZmljaGVyb3MgYSBpbnRlZ3JhciAiCisiZW4gZWwgcGFxdWV0ZSBmdWVudGUgZ2VuZXJhZG8uIERlYmVuIGV4aXN0aXIsIGEgc2VyIHBvc2libGUgZW4gZWwgZGlyZWN0b3JpbyAiCisiYWN0dWFsLiBEZWJlIGludHJvZHVjaXIgYWwgbWVub3MgdW4gZmljaGVyby4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjU3MQorIywgbm8td3JhcAorbXNnaWQgIkI8LS10YXJnZXQtZm9ybWF0PT5JPHZhbHVlPiIKK21zZ3N0ciAiQjwtLXRhcmdldC1mb3JtYXQ9Pkk8dmFsb3I+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjU3NgorbXNnaWQgIiIKKyJCPFJlcXVpcmVkPi4gRGVmaW5lcyB0aGUgcmVhbCBmb3JtYXQgb2YgdGhlIGdlbmVyYXRlZCBzb3VyY2UgcGFja2FnZS4gIFRoZSAiCisiZ2VuZXJhdGVkIC5kc2MgZmlsZSB3aWxsIGNvbnRhaW4gdGhpcyB2YWx1ZSBpbiBpdHMgSTxGb3JtYXQ+IGZpZWxkIGFuZCBub3QgIgorIlwiMy4wIChjdXN0b20pXCIuIgorbXNnc3RyICIiCisiQjxPYmxpZ2F0b3Jpbz4uIERlZmluZSBlbCBmb3JtYXRvIHJlYWwgZGVsIHBhcXVldGUgZnVlbnRlIGdlbmVyYWRvLiBFbCAiCisiZmljaGVybyDCqy5kc2PCuyBnZW5lcmFkbyBjb250ZW5kcsOhIGVzdGUgdmFsb3IgZW4gc3UgY2FtcG8gSTxGb3JtYXQ+IHkgbm8gwqszLjAgIgorIihjdXN0b20pwrsuIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo1NzcKKyMsIG5vLXdyYXAKK21zZ2lkICJGb3JtYXQ6IDMuMCAoZ2l0KSIKK21zZ3N0ciAiRm9ybWF0OiAzLjAgKGdpdCkiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTc5Cittc2dpZCAiVGhpcyBmb3JtYXQgaXMgZXhwZXJpbWVudGFsLiIKK21zZ3N0ciAiRXN0ZSBmb3JtYXRvIGVzIGV4cGVyaW1lbnRhbC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTg0Cittc2dpZCAiIgorIkEgc291cmNlIHBhY2thZ2UgaW4gdGhpcyBmb3JtYXQgY29uc2lzdHMgb2YgYSBzaW5nbGUgYnVuZGxlIG9mIGEgZ2l0ICIKKyJyZXBvc2l0b3J5IEI8LmdpdD4gdG8gaG9sZCB0aGUgc291cmNlIG9mIGEgcGFja2FnZS4gIFRoZXJlIG1heSBhbHNvIGJlIGEgQjwuIgorImdpdHNoYWxsb3c+IGZpbGUgbGlzdGluZyByZXZpc2lvbnMgZm9yIGEgc2hhbGxvdyBnaXQgY2xvbmUuIgorbXNnc3RyICIiCisiVW4gcGFxdWV0ZSBkZSBmdWVudGUgY29uIGVzdGUgZm9ybWF0byBjb25zaXN0ZSBkZSB1biBzw7NsbyBhcmNoaXZvIGNvbiB1biAiCisicmVwb3NpdG9yaW8gQjwuZ2l0PiwgcXVlIGd1YXJkYSBsYSBmdWVudGUgZGVsIHBhcXVldGUuIFB1ZWRlIHRhbWJpw6luIGV4aXN0aXIgIgorInVuIGZpY2hlcm8gQjwuZ2l0c2hhbGxvdz4gcXVlIGxpc3RhIGxhcyByZXZpc2lvbmVzIGRlIHVuYSBjbG9uYWNpw7NuIGRlIGdpdCAiCisic3VwZXJmaWNpYWwgKMKrc2hhbGxvd8K7KS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTkwCittc2dpZCAiIgorIlRoZSBidW5kbGUgaXMgY2xvbmVkIGFzIGEgZ2l0IHJlcG9zaXRvcnkgdG8gdGhlIHRhcmdldCBkaXJlY3RvcnkuICBJZiB0aGVyZSAiCisiaXMgYSBnaXRzaGFsbG93IGZpbGUsIGl0IGlzIGluc3RhbGxlZCBhcyBgLmdpdC9zaGFsbG93YCBpbnNpZGUgdGhlIGNsb25lZCAiCisiZ2l0IHJlcG9zaXRvcnkuIgorbXNnc3RyICIiCisiRWwgYXJjaGl2byBzZSBjbG9uYSBjb21vIHVuIHJlcG9zaXRvcmlvIGdpdCBlbiBlbCBkaXJlY3RvcmlvIGRlc3Rpbm8uIFNpIGhheSAiCisidW4gZmljaGVybyDCq2dpdHNoYWxsb3fCuywgc2UgaW5zdGFsYSBjb21vIMKrLmdpdC9zaGFsbG93wrsgZGVudHJvIGRlbCAiCisicmVwb3NpdG9yaW8gZ2l0IGNsb25hZG8uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjU5NQorbXNnaWQgIiIKKyJOb3RlIHRoYXQgYnkgZGVmYXVsdCB0aGUgbmV3IHJlcG9zaXRvcnkgd2lsbCBoYXZlIHRoZSBzYW1lIGJyYW5jaCBjaGVja2VkICIKKyJvdXQgdGhhdCB3YXMgY2hlY2tlZCBvdXQgaW4gdGhlIG9yaWdpbmFsIHNvdXJjZS4gKFR5cGljYWxseSBcIm1hc3RlclwiLCBidXQgIgorIml0IGNvdWxkIGJlIGFueXRoaW5nLikgQW55IG90aGVyIGJyYW5jaGVzIHdpbGwgYmUgYXZhaWxhYmxlIHVuZGVyIGByZW1vdGVzLyIKKyJvcmlnaW4vYC4iCittc2dzdHIgIiIKKyJUZW5nYSBlbiBjdWVudGEgcXVlLCBwb3Igb21pc2nDs24sIGVsIG51ZXZvIHJlcG9zaXRvcmlvIHRlbmRyw6EgdW4gwqtjaGVja291dMK7ICIKKyJkZSBsYSBtaXNtYSByYW1hIGRlIGxhIHF1ZSBzZSByZWFsaXrDsyBlbCDCq2NoZWNrb3V0wrsgZGUgbGEgZnVlbnRlIG9yaWdpbmFsLiAiCisiKEhhYml0dWFsbWVudGUsIMKrbWFzdGVywrssIHBlcm8gcG9kcsOtYSBzZXIgY3VhbHF1aWVyIG90cmEgY29zYS4pIFRvZGFzIGxhcyAiCisiZGVtw6FzIHJhbWFzIGVzdGFyw6FuIGRpc3BvbmlibGVzIGJham8gwqtyZW1vdGVzL29yaWdpbi/Cuy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NjAwIGRwa2ctc291cmNlLjE6NjMzCittc2dpZCAiIgorIkJlZm9yZSBnb2luZyBhbnkgZnVydGhlciwgc29tZSBjaGVja3MgYXJlIGRvbmUgdG8gZW5zdXJlIHRoYXQgd2UgZG9uJ3QgaGF2ZSAiCisiYW55IG5vbi1pZ25vcmVkIHVuY29tbWl0dGVkIGNoYW5nZXMuIgorbXNnc3RyICIiCisiQW50ZXMgZGUgY29udGludWFyLCBzZSByZWFsaXphbiBhbGd1bmFzIHJldmlzaW9uZXMgcGFyYSBhc2VndXJhciBxdWUgbm8gIgorInF1ZWRlbiBjYW1iaW9zIG5vIGlnbm9yYWRvcyBhIHJlbWl0aXIgYWwgcmVwb3NpdG9yaW8gbWVkaWFudGUgwqtjb21taXTCuy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NjA0Cittc2dpZCAiIgorIkI8Z2l0LWJ1bmRsZT4oMSkgaXMgdXNlZCB0byBnZW5lcmF0ZSBhIGJ1bmRsZSBvZiB0aGUgZ2l0IHJlcG9zaXRvcnkuICBCeSAiCisiZGVmYXVsdCwgYWxsIGJyYW5jaGVzIGFuZCB0YWdzIGluIHRoZSByZXBvc2l0b3J5IGFyZSBpbmNsdWRlZCBpbiB0aGUgYnVuZGxlLiIKK21zZ3N0ciAiIgorIkI8Z2l0LWJ1bmRsZT4oMSkgc2UgdXNhIHBhcmEgZ2VuZXJhciB1biBhcmNoaXZvIGEgcGFydGlyIGRlIHVuIHJlcG9zaXRvcmlvICIKKyJnaXQuIFBvciBvbWlzacOzbiwgc2UgaW5jbHV5ZW4gZW4gZWwgYXJjaGl2byB0b2RhcyBsYXMgcmFtYXMgeSBldGlxdWV0YXMgZW4gIgorImVsIHJlcG9zaXRvcmlvLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NjA2CisjLCBuby13cmFwCittc2dpZCAiQjwtLWdpdC1yZWY9Pkk8cmVmPiIKK21zZ3N0ciAiQjwtLWdpdC1yZWY9Pkk8cmVmPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2MTYKK21zZ2lkICIiCisiQWxsb3dzIHNwZWNpZnlpbmcgYSBnaXQgcmVmIHRvIGluY2x1ZGUgaW4gdGhlIGdpdCBidW5kbGUuIFVzZSBkaXNhYmxlcyB0aGUgIgorImRlZmF1bHQgYmVoYXZpb3Igb2YgaW5jbHVkaW5nIGFsbCBicmFuY2hlcyBhbmQgdGFncy4gTWF5IGJlIHNwZWNpZmllZCAiCisibXVsdGlwbGUgdGltZXMuIFRoZSBJPHJlZj4gY2FuIGJlIHRoZSBuYW1lIG9mIGEgYnJhbmNoIG9yIHRhZyB0byBpbmNsdWRlLiBJdCAiCisibWF5IGFsc28gYmUgYW55IHBhcmFtZXRlciB0aGF0IGNhbiBiZSBwYXNzZWQgdG8gQjxnaXQtcmV2LWxpc3Q+KDEpLiBGb3IgIgorImV4YW1wbGUsIHRvIGluY2x1ZGUgb25seSB0aGUgbWFzdGVyIGJyYW5jaCwgdXNlIC0tZ2l0LXJlZj1tYXN0ZXIuIFRvIGluY2x1ZGUgIgorImFsbCB0YWdzIGFuZCBicmFuY2hlcywgZXhjZXB0IGZvciB0aGUgcHJpdmF0ZSBicmFuY2gsIHVzZSAtLWdpdC1yZWY9LS1hbGwgLS0iCisiZ2l0LXJlZj1ecHJpdmF0ZSIKK21zZ3N0ciAiIgorIlBlcm1pdGUgZXNwZWNpZmljYXIgdW5hIHJlZmVyZW5jaWEgKMKrcmVmwrspIGRlIGdpdCBhIGluY2x1aXIgZW4gZWwgYXJjaGl2byBkZSAiCisiZ2l0LiBTdSB1c28gZGVzYWN0aXZhIGVsIGNvbXBvcnRhbWllbnRvIHByZWRlZmluaWRvIGRlIGluY2x1aXIgdG9kYXMgbGFzICIKKyJyYW1hcyB5IGV0aXF1ZXRhcywgeSBzZSBwdWVkZSBkZWZpbmlyIHZhcmlhcyB2ZWNlcy4gSTxyZWY+IHB1ZWRlIHNlciBlbCAiCisibm9tYnJlIGRlIHVuYSByYW1hIG8gZXRpcXVldGEgYSBpbmNsdWlyLiBQb3IgZWplbXBsbywgcGFyYSBpbmNsdWlyIHPDs2xvIGxhICIKKyJyYW1hIMKrbWFzdGVywrssIHVzZSDCqy0tZ2l0LXJlZj1tYXN0ZXLCuy4gUGFyYSBpbmNsdWlyIHRvZGFzIGxhcyBldGlxdWV0YXMgeSAiCisicmFtYXMgYSBleGNlcGNpw7NuIGRlIGxhIHJhbWEgbG9jYWwgKMKrcHJpdmF0ZcK7KSwgdXNlIMKrLS1naXQtcmVmPS0tYWxsIC0tZ2l0LSIKKyJyZWY9XnByaXZhdGXCuy4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjYxNgorIywgbm8td3JhcAorbXNnaWQgIkI8LS1naXQtZGVwdGg9Pkk8bnVtYmVyPiIKK21zZ3N0ciAiQjwtLWdpdC1kZXB0aD0+STxudW1iZXI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjYyMAorbXNnaWQgIiIKKyJDcmVhdGVzIGEgc2hhbGxvdyBjbG9uZSB3aXRoIGEgaGlzdG9yeSB0cnVuY2F0ZWQgdG8gdGhlIHNwZWNpZmllZCBudW1iZXIgb2YgIgorInJldmlzaW9ucy4iCittc2dzdHIgIiIKKyJDcmVhIHVuIGNsb24gc3VwZXJmaWNpYWwgKMKrc2hhbG93wrspIGNvbiBsYSBoaXN0b3JpYSB0cnVuY2FkYSBlbiBlbCBuw7ptZXJvICIKKyJkZWZpbmlkbyBkZSByZXZpc2lvbmVzLiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6NjIwCisjLCBuby13cmFwCittc2dpZCAiRm9ybWF0OiAzLjAgKGJ6cikiCittc2dzdHIgIkZvcm1hdDogMy4wIChienIpIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjYyMworbXNnaWQgIiIKKyJUaGlzIGZvcm1hdCBpcyBleHBlcmltZW50YWwuIEl0IGdlbmVyYXRlcyBhIHNpbmdsZSB0YXJiYWxsIGNvbnRhaW5pbmcgdGhlICIKKyJienIgcmVwb3NpdG9yeS4iCittc2dzdHIgIiIKKyJFc3RlIGZvcm1hdG8gZXMgZXhwZXJpbWVudGFsLiBHZW5lcmEgdW4gw7puaWNvIGFyY2hpdm8gdGFyIHF1ZSBjb250aWVuZSBlbCAiCisicmVwb3NpdG9yaW8gYnpyLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2MjgKK21zZ2lkICIiCisiVGhlIHRhcmJhbGwgaXMgdW5wYWNrZWQgYW5kIHRoZW4gYnpyIGlzIHVzZWQgdG8gY2hlY2tvdXQgdGhlIGN1cnJlbnQgYnJhbmNoLiIKK21zZ3N0ciAiIgorIkVsIGFyY2hpdm8gdGFyIHNlIGRlc2VtcGFxdWV0YSwgdXNhbmRvIGRlc3B1w6lzIGJ6ciBwYXJhIHJlYWxpemFyIHVuICIKKyLCq2NoZWNrb3V0wrsgZGUgbGEgcmFtYSBhY3R1YWwuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjYzNworbXNnaWQgIiIKKyJUaGVuIHRoZSBWQ1Mgc3BlY2lmaWMgcGFydCBvZiB0aGUgc291cmNlIGRpcmVjdG9yeSBpcyBjb3BpZWQgb3ZlciB0byBhICIKKyJ0ZW1wb3JhcnkgZGlyZWN0b3J5LiBCZWZvcmUgdGhpcyB0ZW1wb3JhcnkgZGlyZWN0b3J5IGlzIHBhY2tlZCBpbiBhIHRhcmJhbGwsICIKKyJ2YXJpb3VzIGNsZWFudXAgYXJlIGRvbmUgdG8gc2F2ZSBzcGFjZS4iCittc2dzdHIgIiIKKyJFbnRvbmVzLCBsYSBwYXJ0ZSBkZWwgZGlyZWN0b3JpbyBkZSBmdWVudGVzIGVzcGVjw61maWNvIGFsIHNpc3RlbWEgZGUgY29udHJvbCAiCisiZGUgdmVyc2lvbmVzIHNlIGNvcGlhIGEgdW4gZGlyZWN0b3JpbyB0ZW1wb3JhbC4gQW50ZXMgZGUgZW1wYXF1ZXRhciBlc3RlICIKKyJkaXJlY3RvcmlvIHRlbXBvcmFsIGVuIHVuYSBhcmNoaXZvIHRhciBzZSByZWFsaXphbiB2YXJpb3MgcHJvY2Vzb3MgZGUgIgorImxpbXBpZXphLCBwYXJhIGFzw60gYWhvcnJhciBlc3BhY2lvLiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctc291cmNlLjE6NjM3CisjLCBuby13cmFwCittc2dpZCAiV0FSTklOR1MgQU5EIEVSUk9SUyIKK21zZ3N0ciAiQVZJU09TIFkgRVJST1JFUyIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6NjM4CisjLCBuby13cmFwCittc2dpZCAibm8gc291cmNlIGZvcm1hdCBzcGVjaWZpZWQgaW4gZGViaWFuL3NvdXJjZS9mb3JtYXQiCittc2dzdHIgIm5vIHNlIGRlZmluacOzIG5pbmfDum4gZm9ybWF0byBkZSBmdWVudGVzIGVuIMKrZGViaWFuL3NvdXJjZS9mb3JtYXTCuyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2NDQKK21zZ2lkICIiCisiVGhlIGZpbGUgQjxkZWJpYW4vc291cmNlL2Zvcm1hdD4gc2hvdWxkIGFsd2F5cyBleGlzdCBhbmQgaW5kaWNhdGUgdGhlICIKKyJkZXNpcmVkIHNvdXJjZSBmb3JtYXQuIEZvciBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eSwgZm9ybWF0IFwiMS4wXCIgaXMgIgorImFzc3VtZWQgd2hlbiB0aGUgZmlsZSBkb2Vzbid0IGV4aXN0IGJ1dCB5b3Ugc2hvdWxkIG5vdCByZWx5IG9uIHRoaXM6IGF0IHNvbWUgIgorInBvaW50IGluIHRoZSBmdXR1cmUgZHBrZy1zb3VyY2Ugd2lsbCBiZSBtb2RpZmllZCB0byBmYWlsIHdoZW4gdGhhdCBmaWxlICIKKyJkb2Vzbid0IGV4aXN0LiIKK21zZ3N0ciAiIgorIkVsIGZpY2hlcm8gQjxkZWJpYW4vc291cmNlL2Zvcm1hdD4gc2llbXByZSBkZWJlcsOtYSBleGlzdGlyIGUgaW5kaWNhciBlbCAiCisiZm9ybWF0byBkZSBmdWVudGVzIGRlc2VhZG8uIFBvciByYXpvbmVzIGRlIGNvbXBhdGliaWxpZGFkIGhhY2lhIGF0csOhcywgc2UgIgorInN1cG9uZSBlbCBmb3JtYXRvIMKrMS4wwrsgY3VhbmRvIGVsIGZpY2hlcm8gbm8gZXhpc3RlLCBwZXJvIG5vIGRlYmVyw61hICIKKyJkZXBlbmRlciBkZSBlc3RvLiBFbiBhbGfDum4gcHVudG8gZW4gZWwgZnV0dXJvLCBzZSBtb2RpZmljYXLDoSBkcGtnIHBhcmEgcXVlICIKKyJmYWxsZSBjdWFuZG8gbm8gZW5jdWVudHJlIGVzZSBmaWNoZXJvLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2NTAKK21zZ2lkICIiCisiVGhlIHJhdGlvbmFsZSBpcyB0aGF0IGZvcm1hdCBcIjEuMFwiIGlzIG5vIGxvbmdlciB0aGUgcmVjb21tZW5kZWQgZm9ybWF0LCAiCisieW91IHNob3VsZCB1c3VhbGx5IHBpY2sgb25lIG9mIHRoZSBuZXdlciBmb3JtYXRzIChcIjMuMCAocXVpbHQpXCIsIFwiMy4wICIKKyIobmF0aXZlKVwiKSBidXQgQjxkcGtnLXNvdXJjZT4gd2lsbCBub3QgZG8gdGhpcyBhdXRvbWF0aWNhbGx5IGZvciB5b3UuICBJZiAiCisieW91IHdhbnQgdG8gY29udGludWUgdXNpbmcgdGhlIG9sZCBmb3JtYXQsIHlvdSBzaG91bGQgYmUgZXhwbGljaXQgYWJvdXQgaXQgIgorImFuZCBwdXQgXCIxLjBcIiBpbiBCPGRlYmlhbi9zb3VyY2UvZm9ybWF0Pi4iCittc2dzdHIgIiIKKyJFbCBmdW5kYW1lbnRlIGVzIHF1ZSBlbCBmb3JtYXRvIMKrMS4wwrsgeWEgbm8gZXMgZWwgZm9ybWF0byByZWNvbWVuZGFkbywgc2lubyAiCisicXVlIGRlYmVyw61hIGVzY29nZXIgdW5vIGRlIGxvcyBmb3JtYXRvcyBtw6FzIHJlY2llbnRlcyAowqszLjAgKHF1aWx0KcK7LCDCqzMuMCAiCisiKG5hdGl2ZSnCuykuIEI8ZHBrZy1zb3VyY2U+IG5vIGhhcsOhIGVzdG8gYXV0b23DoXRpY2FtZW50ZS4gU2kgZGVzZWEgY29udGludWFyICIKKyJ1c2FuZG8gZWwgZm9ybWF0byBhbnRpZ3VvLCB0ZW5kcsOhIHF1ZSBzZXIgZXhwbMOtY2l0byBlIGluc2VydGFyIMKrMS4wwrsgZW4gIgorIkI8ZGViaWFuL3NvdXJjZS9mb3JtYXQ+LiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6NjUwCisjLCBuby13cmFwCittc2dpZCAidGhlIGRpZmYgbW9kaWZpZXMgdGhlIGZvbGxvd2luZyB1cHN0cmVhbSBmaWxlcyIKK21zZ3N0ciAiZWwgZGlmZiBtb2RpZmljYSBsb3Mgc2lndWllbnRlcyBmaWNoZXJvcyBkZSBsYSBmdWVudGUgb3JpZ2luYWwiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NjU3Cittc2dpZCAiIgorIldoZW4gdXNpbmcgc291cmNlIGZvcm1hdCBcIjEuMFwiIGl0IGlzIHVzdWFsbHkgYSBiYWQgaWRlYSB0byBtb2RpZnkgdXBzdHJlYW0gIgorImZpbGVzIGRpcmVjdGx5IGFzIHRoZSBjaGFuZ2VzIGVuZCB1cCBoaWRkZW4gYW5kIG1vc3RseSB1bmRvY3VtZW50ZWQgaW4gdGhlIC4iCisiZGlmZi5neiBmaWxlLiBJbnN0ZWFkIHlvdSBzaG91bGQgc3RvcmUgeW91ciBjaGFuZ2VzIGFzIHBhdGNoZXMgaW4gdGhlIGRlYmlhbiAiCisiZGlyZWN0b3J5IGFuZCBhcHBseSB0aGVtIGF0IGJ1aWxkLXRpbWUuIFRvIGF2b2lkIHRoaXMgY29tcGxleGl0eSB5b3UgY2FuICIKKyJhbHNvIHVzZSB0aGUgZm9ybWF0IFwiMy4wIChxdWlsdClcIiB0aGF0IG9mZmVycyB0aGlzIG5hdGl2ZWx5LiIKK21zZ3N0ciAiIgorIkdlbmVyYWxtZW50ZSwgZXMgdW5hIG1hbGEgaWRlYSBtb2RpZmljYXIgZmljaGVyb3MgZGUgbGEgZnVlbnRlIG9yaWdpbmFsIHNpICIKKyJlc3TDoSB1c2FuZG8gZWwgZm9ybWF0byBkZSBmdWVudGVzIMKrMS4wwrsgeWEgcXVlIGxvcyBjYW1iaW9zIHRlcm1pbmFyw6FuICIKKyJvY3VsdG9zIHkgZ2VuZXJhbG1lbnRlIHNpbiBkb2N1bWVudGFyIGRlbnRybyBkZWwgZmljaGVybyDCq2RpZmYuZ3rCuy4gRGViZXLDrWEgIgorImd1YXJkYXIgbG9zIGNhbWJpb3MgY29tbyBwYXJjaGVzIGVuIGVsIGRpcmVjdG9yaW8gwqtkZWJpYW7CuyB5IGFwbGljYXJsb3MgZW4gIgorInRpZW1wbyBkZSBjb25zdHJ1Y2Npw7NuLiBQYXJhIGV2aXRhciBlc3RhIGNvbXBsZWppZGFkIHRhbWJpw6luIHB1ZWRlIHVzYXIgZWwgIgorImZvcm1hdG8gwqszLjAgKHF1aWx0KcK7LCBxdWUgb2ZyZWNlIGVzdG8gZGUgZm9ybWEgbmF0aXZhLiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6NjU3CisjLCBuby13cmFwCittc2dpZCAiY2Fubm90IHJlcHJlc2VudCBjaGFuZ2UgdG8gSTxmaWxlPiIKK21zZ3N0ciAibm8gc2UgcHVlZGVuIHJlcHJlc2VudGFyIGxvcyBjYW1iaW9zIGFsIEk8ZmljaGVybz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NjYzCittc2dpZCAiIgorIkNoYW5nZXMgdG8gdXBzdHJlYW0gc291cmNlcyBhcmUgdXN1YWxseSBzdG9yZWQgd2l0aCBwYXRjaCBmaWxlcywgYnV0IG5vdCBhbGwgIgorImNoYW5nZXMgY2FuIGJlIHJlcHJlc2VudGVkIHdpdGggcGF0Y2hlczogdGhleSBjYW4gb25seSBhbHRlciB0aGUgY29udGVudCBvZiAiCisicGxhaW4gdGV4dCBmaWxlcy4gSWYgeW91IHRyeSByZXBsYWNpbmcgYSBmaWxlIHdpdGggc29tZXRoaW5nIG9mIGEgZGlmZmVyZW50ICIKKyJ0eXBlIChmb3IgZXhhbXBsZSByZXBsYWNpbmcgYSBwbGFpbiBmaWxlIHdpdGggYSBzeW1saW5rIG9yIGEgZGlyZWN0b3J5KSwgeW91ICIKKyJ3aWxsIGdldCB0aGlzIGVycm9yIG1lc3NhZ2UuIgorbXNnc3RyICIiCisiTG9zIGNhbWJpb3MgYSBsYXMgZnVlbnRlcyBvcmlnaW5hbGVzIHNlIHN1ZWxlbiBndWFyZGFyIGVsIGZpY2hlcm9zIGRlICIKKyJwYXJjaGUsIHBlcm8gbm8gdG9kb3MgbG9zIGNhbWJpb3Mgc2UgcHVlZGVuIHJlcHJlc2VudGFyIGNvbiBwYXJjaGVzOiBzw7NsbyAiCisicHVlZGVuIGFsdGVyYXIgZWwgY29udGVuaWRvIGRlIGZpY2hlcm9zIGRlIHRleHRvIHNpbXBsZS4gU2kgaW50ZW50YSAiCisicmVlbXBsYXphciB1biBmaWNoZXJvIGNvbiBhbGdvIGRlIG90cm8gdGlwbyAocG9yIGVqZW1wbG8sIHVuIGZpY2hlcm8gc2ltcGxlICIKKyJjb24gdW4gZW5sYWNlIHNpbWLDs2xpY28gbyBkaXJlY3RvcmlvKSwgb2J0ZW5kcsOhIGVsIHNpZ3VpZW50ZSBtZW5zYWplIGRlICIKKyJlcnJvci4iCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjY2MworIywgbm8td3JhcAorbXNnaWQgIm5ld2x5IGNyZWF0ZWQgZW1wdHkgZmlsZSBJPGZpbGU+IHdpbGwgbm90IGJlIHJlcHJlc2VudGVkIGluIGRpZmYiCittc2dzdHIgImVsIGZpY2hlcm8gdmFjw61vIEk8ZmljaGVybz4gcmVjaWVudGVtZW50ZSBjcmVhZG8gbm8gZXN0YXLDoSByZXByZXNlbnRhZG8gZW4gZWwgwqtkaWZmwrsiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NjY2Cittc2dpZCAiIgorIkVtcHR5IGZpbGVzIGNhbid0IGJlIGNyZWF0ZWQgd2l0aCBwYXRjaCBmaWxlcy4gVGh1cyB0aGlzIGNoYW5nZSBpcyBub3QgIgorInJlY29yZGVkIGluIHRoZSBzb3VyY2UgcGFja2FnZSBhbmQgeW91IGFyZSB3YXJuZWQgYWJvdXQgaXQuIgorbXNnc3RyICIiCisiTm8gc2UgcHVlZGVuIGNyZWFyIGZpY2hlcm9zIHZhY8Otb3MgY29uIGZpY2hlcm9zIGRlIHBhcmNoZS4gUG9yIGVsbG8sIGVzdGUgIgorImNhbWJpbyBubyBzZSByZWdpc3RyYSBlbiBlbCBwYXF1ZXRlIGZ1ZW50ZSwgZXN0w6EgdXN0ZWQgYXZpc2Fkby4iCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjY2NgorIywgbm8td3JhcAorbXNnaWQgImV4ZWN1dGFibGUgbW9kZSBJPHBlcm1zPiBvZiBJPGZpbGU+IHdpbGwgbm90IGJlIHJlcHJlc2VudGVkIGluIGRpZmYiCittc2dzdHIgImxvcyBJPHBlcm1pc29zPiBkZSBtb2RvIGRlIGVqZWN1Y2nDs24gZGVsIEk8ZmljaGVybz4gbm8gc2UgcmVwcmVzZW50YXLDoW4gZW4gZWwgwqtkaWZmwrsiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjY2NworIywgbm8td3JhcAorbXNnaWQgInNwZWNpYWwgbW9kZSBJPHBlcm1zPiBvZiBJPGZpbGU+IHdpbGwgbm90IGJlIHJlcHJlc2VudGVkIGluIGRpZmYiCittc2dzdHIgImxvcyBJPHBlcm1pc29zPiBkZSBtb2RvIGVzcGVjaWFsIGRlbCBJPGZpY2hlcm8+IG5vIHNlIHJlcHJlc2VudGFyw6FuIGVuIGVsIMKrZGlmZsK7IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjY3MQorbXNnaWQgIiIKKyJQYXRjaCBmaWxlcyBkbyBub3QgcmVjb3JkIHBlcm1pc3Npb25zIG9mIGZpbGVzIGFuZCB0aHVzIG1vZGlmaWVkIHBlcm1pc3Npb25zICIKKyJhcmUgbm90IHN0b3JlZCBpbiB0aGUgc291cmNlIHBhY2thZ2UuIFRoaXMgd2FybmluZyByZW1pbmRzIHlvdSBvZiB0aGF0IGZhY3QuIgorbXNnc3RyICIiCisiTG9zIGZpY2hlcm9zIGRlIHBhcmNoZSBubyByZWdpc3RyYW4gcGVybWlzb3MgZGUgbG9zIGZpY2hlcm9zLCB5IHBvciBlbGxvIGxvcyAiCisicGVybWlzb3MgbW9kaWZpY2Fkb3Mgbm8gc2UgZ3VhcmRhbiBlbiBlbCBwYXF1ZXRlIGZ1ZW50ZS4gRXN0ZSBhdmlzbyBsZSBzaXJ2ZSAiCisiZGUgcmVjb3JkYXRvcmlvLiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctc291cmNlLjE6NjcxCisjLCBuby13cmFwCittc2dpZCAiRklMRSBGT1JNQVRTIgorbXNnc3RyICJGT1JNQVRPUyBERSBGSUNIRVJPIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo2NzIKKyMsIG5vLXdyYXAKK21zZ2lkICJkZWJpYW4vc291cmNlL2Zvcm1hdCIKK21zZ3N0ciAiZGViaWFuL3NvdXJjZS9mb3JtYXQiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6Njc2Cittc2dpZCAiIgorIlRoaXMgZmlsZSBjb250YWlucyBvbiBhIHNpbmdsZSBsaW5lIHRoZSBmb3JtYXQgdGhhdCBzaG91bGQgYmUgdXNlZCB0byBidWlsZCAiCisidGhlIHNvdXJjZSBwYWNrYWdlIChwb3NzaWJsZSBmb3JtYXRzIGFyZSBkZXNjcmliZWQgYWJvdmUpLiBObyBsZWFkaW5nIG9yICIKKyJ0cmFpbGluZyBzcGFjZXMgYXJlIGFsbG93ZWQuIgorbXNnc3RyICIiCisiRXN0ZSBmaWNoZXJvIGNvbnRpZW5lIGVuIHVuYSDDum5pY2EgbMOtbmVhIGVsIGZvcm1hdG8gcXVlIHNlIGRlYmVyw61hIHVzYXIgcGFyYSAiCisiY29uc3RydWlyIGVsIHBhcXVldGUgZnVlbnRlIChsb3MgZm9ybWF0b3MgcG9zaWJsZXMgc2UgZGVzY3JpYmVuIGVuIHVuIHB1bnRvICIKKyJhbnRlcmlvcikuIE5vIHNlIHBlcm1pdGVuIGVzcGFjaW9zIHZhY8Otb3MgYWwgcHJpbmNpcGlvIG8gZmluYWwgZGUgbGEgbMOtbmVhLiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6Njc2CisjLCBuby13cmFwCittc2dpZCAiZGViaWFuL3NvdXJjZS9pbmNsdWRlLWJpbmFyaWVzIgorbXNnc3RyICJkZWJpYW4vc291cmNlL2luY2x1ZGUtYmluYXJpZXMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NjgwCittc2dpZCAiIgorIlRoaXMgZmlsZSBjb250YWlucyBhIGxpc3Qgb2YgYmluYXJ5IGZpbGVzIChvbmUgcGVyIGxpbmUpIHRoYXQgc2hvdWxkIGJlICIKKyJpbmNsdWRlZCBpbiB0aGUgZGViaWFuIHRhcmJhbGwuIExlYWRpbmcgYW5kIHRyYWlsaW5nIHNwYWNlcyBhcmUgc3RyaXBwZWQuICAiCisiTGluZXMgc3RhcnRpbmcgd2l0aCBcIiNcIiBhcmUgY29tbWVudHMgYW5kIGFyZSBza2lwcGVkLiBFbXB0eSBsaW5lcyBhcmUgIgorImlnbm9yZWQuIgorbXNnc3RyICIiCisiRXN0ZSBmaWNoZXJvIGNvbnRpZW5lIHVuYSBsaXN0YSBkZSBmaWNoZXJvcyBiaW5hcmlvcyAodW5vIHBvciBsw61uZWEpIHF1ZSBzZSAiCisiZGViZXLDrWFuIGluY2x1aXIgZW4gZWwgYXJjaGl2byB0YXIgwqtkZWJpYW7Cuy4gU2UgZWxpbWluYW4gbG9zIGVzcGFjaW9zIHZhY8Otb3MgIgorImFsIHByaW5jaXBpbyB5IGZpbmFsIGRlIGxhIGzDrW5lYS4gTGFzIGzDrW5lYXMgcXVlIGNvbWllbnphbiBjb24gwqsjwrsgc29uICIKKyJjb21lbnRhcmlvcywgeSBwb3IgdGFudG8sIHNlIG9taXRlbi4gU2UgaWdub3JhcsOhbiBsw61uZWFzIHZhY8OtYXMuIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo2ODAKKyMsIG5vLXdyYXAKK21zZ2lkICJkZWJpYW4vc291cmNlL29wdGlvbnMiCittc2dzdHIgImRlYmlhbi9zb3VyY2Uvb3B0aW9ucyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2ODYKK21zZ2lkICIiCisiVGhpcyBmaWxlIGNvbnRhaW5zIGEgbGlzdCBvZiBsb25nIG9wdGlvbnMgdGhhdCBzaG91bGQgYmUgYXV0b21hdGljYWxseSAiCisicHJlcGVuZGVkIHRvIHRoZSBzZXQgb2YgY29tbWFuZCBsaW5lIG9wdGlvbnMgb2YgYSBCPGRwa2ctc291cmNlIC1iPiBvciAiCisiQjxkcGtnLXNvdXJjZSAtLXByaW50LWZvcm1hdD4gY2FsbC4gT3B0aW9ucyBsaWtlIEI8LS1jb21wcmVzc2lvbj4gYW5kIEI8LS0iCisiY29tcHJlc3Npb24tbGV2ZWw+IGFyZSB3ZWxsIHN1aXRlZCBmb3IgdGhpcyBmaWxlLiIKK21zZ3N0ciAiIgorIkVzdGUgZmljaGVybyBjb250aWVuZSB1bmEgbGlzdGEgZGUgb3BjaW9uZXMgbGFyZ2FzIHF1ZSBzZSBkZWJlcsOtYW4gYW5leGFyIGFsICIKKyJjb25qdW50byBkZSBsYXMgb3BjaW9uZXMgZGUgbMOtbmVhIGRlIMOzcmRlbmVzIGRlIHVuYSBpbnZvY2FjacOzbiBhIEI8ZHBrZy0iCisic291cmNlIC1iPiBvIEI8ZHBrZy1zb3VyY2UgLS1wcmludC1mb3JtYXQ+LiBMYXMgb3BjaW9uZXMgY29tbyBCPC0tIgorImNvbXByZXNzaW9uPiB5IEI8LS1jb21wcmVzc2lvbi1sZXZlbD4gc29uIGFkZWN1YWRhcyBjb24gZXN0ZSBmaWNoZXJvLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2OTIKK21zZ2lkICIiCisiRWFjaCBvcHRpb24gc2hvdWxkIGJlIHB1dCBvbiBhIHNlcGFyYXRlIGxpbmUuIEVtcHR5IGxpbmVzIGFuZCBsaW5lcyBzdGFydGluZyAiCisid2l0aCBcIiNcIiBhcmUgaWdub3JlZC4gVGhlIGxlYWRpbmcgXCItLVwiIHNob3VsZCBiZSBzdHJpcHBlZCBhbmQgc2hvcnQgIgorIm9wdGlvbnMgYXJlIG5vdCBhbGxvd2VkLiBPcHRpb25hbCBzcGFjZXMgYXJlIGFsbG93ZWQgYXJvdW5kIHRoZSBcIj1cIiBzeW1ib2wgIgorImFuZCBvcHRpb25hbCBxdW90ZXMgYXJlIGFsbG93ZWQgYXJvdW5kIHRoZSB2YWx1ZS4gIEhlcmUncyBhbiBleGFtcGxlIG9mIHN1Y2ggIgorImEgZmlsZToiCittc2dzdHIgIiIKKyJDYWRhIG9wY2nDs24gZGViZXLDrWEgYXBhcmVjZXIgZW4gdW5hIGzDrW5lYSBzZXBhcmFkYS4gU2UgaWdub3JhcsOhbiBsYXMgbMOtbmVhcyAiCisidmFjw61hcywgeSBhcXVlbGxhcyBxdWUgY29taWVuemFuIGNvbiDCqyPCuy4gTG9zIGd1aW9uZXMgwqstLcK7IGFsIHByaW5jaXBpbyBkZSAiCisibGEgb3BjacOzbiBzZSBkZWJlcsOtYW4gZWxpbWluYXIsIHkgbm8gc2UgcGVybWl0ZW4gb3BjaW9uZXMgY29ydGFzLiBTZSAiCisicGVybWl0ZW4gZXNwYWNpb3MgYWRpY2lvbmFsZXMgZW4gdG9ybm8gYWwgc8OtbWJvbG8gwqs9wrssIGFzw60gY29tbyBjb21pbGxhcyAiCisiZG9ibGVzIGVuIHRvcm5vIGFsIHZhbG9yLiBBcXXDrSB0aWVuZSB1biBlamVtcGxvIGRlIGVzdGUgZmljaGVybzoiCisKKyMgdHlwZTogUGxhaW4gdGV4dAorIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo3MDAKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiIgorI3wgIiAgIyBsZXQgZHBrZy1zb3VyY2UgY3JlYXRlIGEgZGViaWFuLnRhci5iejIgd2l0aCBtYXhpbWFsIGNvbXByZXNzaW9uXG4iCisjfCAiICBjb21wcmVzc2lvbiA9IFwiYnppcDJcIlxuIgorI3wgIiAgY29tcHJlc3Npb24tbGV2ZWwgPSA5XG4iCisjfCAiICAjIHVzZSBkZWJpYW4vcGF0Y2hlcy9kZWJpYW4tY2hhbmdlcyBhcyBhdXRvbWF0aWMgcGF0Y2hcbiIKKyN8ICIgIHNpbmdsZS1kZWJpYW4tcGF0Y2hcbiIKK21zZ2lkICIiCisiICAjIGxldCBkcGtnLXNvdXJjZSBjcmVhdGUgYSBkZWJpYW4udGFyLmJ6MiB3aXRoIG1heGltYWwgY29tcHJlc3Npb25cbiIKKyIgIGNvbXByZXNzaW9uID0gXCJiemlwMlwiXG4iCisiICBjb21wcmVzc2lvbi1sZXZlbCA9IDlcbiIKKyIgICMgdXNlIGRlYmlhbi9wYXRjaGVzL2RlYmlhbi1jaGFuZ2VzIGFzIGF1dG9tYXRpYyBwYXRjaFxuIgorIiAgc2luZ2xlLWRlYmlhbi1wYXRjaFxuIgorIiAgIyBpZ25vcmUgY2hhbmdlcyBvbiBjb25maWcue3N1YixndWVzc31cbiIKKyIgIGV4dGVuZC1kaWZmLWlnbm9yZSA9IFwiKF58LykoY29uZmlnLnN1Ynxjb25maWcuZ3Vlc3MpJFwiXG4iCittc2dzdHIgIiIKKyIgICMgcGVybWl0ZSBhIGRwa2ctc291cmNlIGNyZWFyIHVuIGRlYmlhbi50YXIuYnoyIGNvbiBsYSBtw6F4aW1hIGNvbXByZXNpw7NuXG4iCisiICBjb21wcmVzc2lvbiA9IFwiYnppcDJcIlxuIgorIiAgY29tcHJlc3Npb24tbGV2ZWwgPSA5XG4iCisiICAjIHVzYSBkZWJpYW4vcGF0Y2hlcy9kZWJpYW4tY2hhbmdlcyBjb21vIHBhcmNoZSBhdXRvbcOhdGljb1xuIgorIiAgc2luZ2xlLWRlYmlhbi1wYXRjaFxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjcwMworbXNnaWQgIiIKKyJOb3RlOiBCPGZvcm1hdD4gb3B0aW9ucyBhcmUgbm90IGFjY2VwdGVkIGluIHRoaXMgZmlsZSwgeW91IHNob3VsZCB1c2UgIgorIkI8ZGViaWFuL3NvdXJjZS9mb3JtYXQ+IGluc3RlYWQuIgorbXNnc3RyICIiCisiTm90YTogbm8gc2UgcGVybWl0ZW4gZW4gZXN0ZSBmaWNoZXJvIGxhcyBvcGNpb25lcyBkZSBCPGZvcm1hdG8+LCB5IGRlYmVyw61hICIKKyJ1c2FyIEI8ZGViaWFuL3NvdXJjZS9mb3JtYXQ+IGVuIHN1IGx1Z2FyLiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6NzAzCisjLCBuby13cmFwCittc2dpZCAiZGViaWFuL3NvdXJjZS9sb2NhbC1vcHRpb25zIgorbXNnc3RyICJkZWJpYW4vc291cmNlL2xvY2FsLW9wdGlvbnMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NzA4Cittc2dpZCAiIgorIkV4YWN0bHkgbGlrZSBCPGRlYmlhbi9zb3VyY2Uvb3B0aW9ucz4gZXhjZXB0IHRoYXQgdGhlIGZpbGUgaXMgbm90IGluY2x1ZGVkICIKKyJpbiB0aGUgZ2VuZXJhdGVkIHNvdXJjZSBwYWNrYWdlLiBJdCBjYW4gYmUgdXNlZnVsIHRvIHN0b3JlIGEgcHJlZmVyZW5jZSB0aWVkICIKKyJ0byB0aGUgbWFpbnRhaW5lciBvciB0byB0aGUgVkNTIHJlcG9zaXRvcnkgd2hlcmUgdGhlIHNvdXJjZSBwYWNrYWdlIGlzICIKKyJtYWludGFpbmVkLiIKK21zZ3N0ciAiIgorIklkw6ludGljbyBhIEI8ZGViaWFuL3NvdXJjZS9vcHRpb25zPiwgYSBleGNlcGNpw7NuIGRlIHF1ZSBlbCBmaWNoZXJvIG5vIHNlICIKKyJpbmNsdXllIGVuIGVsIHBhcXVldGUgZnVlbnRlIGdlbmVyYWRvLiBQdWVkZSBzZXIgw7p0aWwgcGFyYSBndWFyZGFyIHVuYSAiCisicHJlZmVyZW5jaWEgbGlnYWRhIGFsIG1hbnRlbmVkb3IgYSBhbCByZXBvc2l0b3JpbyBkZWwgc2lzdGVtYSBkZSBjb250cm9sIGRlICIKKyJ2ZXJzaW9uZXMgZMOzbmRlIGVsIHBhcXVldGUgZXMgbWFudGVuaWRvLiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6NzA4CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgImRlYmlhbi9zb3VyY2UvcGF0Y2gtaGVhZGVyIgorbXNnaWQgImRlYmlhbi9zb3VyY2UvbG9jYWwtcGF0Y2gtaGVhZGVyIgorbXNnc3RyICJkZWJpYW4vc291cmNlL3BhdGNoLWhlYWRlciIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6NzA5CisjLCBuby13cmFwCittc2dpZCAiZGViaWFuL3NvdXJjZS9wYXRjaC1oZWFkZXIiCittc2dzdHIgImRlYmlhbi9zb3VyY2UvcGF0Y2gtaGVhZGVyIgorCisjIHR5cGU6IFBsYWluIHRleHQKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NzEzCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJGcmVlIGZvcm0gdGV4dCB0aGF0IGlzIHB1dCBvbiB0b3Agb2YgdGhlIGF1dG9tYXRpYyBwYXRjaCBnZW5lcmF0ZWQgaW4gIgorI3wgImZvcm1hdHMgXCIyLjBcIiBvciBcIjMuMCAocXVpbHQpXCIuIgorbXNnaWQgIiIKKyJGcmVlIGZvcm0gdGV4dCB0aGF0IGlzIHB1dCBvbiB0b3Agb2YgdGhlIGF1dG9tYXRpYyBwYXRjaCBnZW5lcmF0ZWQgaW4gIgorImZvcm1hdHMgXCIyLjBcIiBvciBcIjMuMCAocXVpbHQpXCIuIEI8bG9jYWwtcGF0Y2gtaGVhZGVyPiBpcyBub3QgaW5jbHVkZWQgaW4gIgorInRoZSBnZW5lcmF0ZWQgc291cmNlIHBhY2thZ2Ugd2hpbGUgQjxwYXRjaC1oZWFkZXI+IGlzLiIKK21zZ3N0ciAiIgorIlRleHRvIGNvbiBmb3JtYXRvIGxpYnJlIHF1ZSBzZSBpbnNlcnRhIGFsIGluaWNpbyBkZWwgcGFyY2hlIGF1dG9tw6F0aWNvIGNvbiAiCisibG9zIGZvcm1hdG9zIMKrMi4wwrsgbyDCqzMuMCBxdWlsdCnCuy4iCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjcxMworIywgbm8td3JhcAorbXNnaWQgImRlYmlhbi9wYXRjaGVzL3NlcmllcyIKK21zZ3N0ciAiZGViaWFuL3BhdGNoZXMvc2VyaWVzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjcyMgorbXNnaWQgIiIKKyJUaGlzIGZpbGUgbGlzdHMgYWxsIHBhdGNoZXMgdGhhdCBoYXZlIHRvIGJlIGFwcGxpZWQgKGluIHRoZSBnaXZlbiBvcmRlcikgIG9uICIKKyJ0b3Agb2YgdGhlIHVwc3RyZWFtIHNvdXJjZSBwYWNrYWdlLiBMZWFkaW5nIGFuZCB0cmFpbGluZyBzcGFjZXMgYXJlICIKKyJzdHJpcHBlZC4gTGluZXMgc3RhcnRpbmcgd2l0aCBcIiNcIiBhcmUgY29tbWVudHMgYW5kIGFyZSBza2lwcGVkLiBFbXB0eSAiCisibGluZXMgYXJlIGlnbm9yZWQuIFJlbWFpbmluZyBsaW5lcyBzdGFydCB3aXRoIGEgcGF0Y2ggZmlsZW5hbWUgKHJlbGF0aXZlIHRvICIKKyJ0aGUgQjxkZWJpYW4vcGF0Y2hlcy8+IGRpcmVjdG9yeSkgdXAgdG8gdGhlIGZpcnN0IHNwYWNlIGNoYXJhY3RlciBvciB0aGUgZW5kICIKKyJvZiBsaW5lLiBPcHRpb25hbCBxdWlsdCBvcHRpb25zIGNhbiBmb2xsb3cgdXAgdG8gdGhlIGVuZCBvZiBsaW5lIG9yIHRoZSAiCisiZmlyc3QgXCIjXCIgcHJlY2VkZWQgYnkgb25lIG9yIG1vcmUgc3BhY2VzICh3aGljaCBtYXJrcyB0aGUgc3RhcnQgb2YgYSAiCisiY29tbWVudCB1cCB0byB0aGUgZW5kIG9mIGxpbmUpLiIKK21zZ3N0ciAiIgorIkVzdGUgZmljaGVybyBsaXN0YSB0b2RvcyBsb3MgcGFyY2hlcyBxdWUgc2UgZGViZW4gYXBsaWNhciAoZW4gZWwgb3JkZW4gZGFkbykgIgorImFsIHBhcXVldGUgZnVlbnRlIGRlbCBhdXRvciBvcmlnaW5hbC4gU2UgZWxpbWluYXLDoW4gbG9zIGVzcGFjaW9zIHZhY8Otb3MgYWwgIgorInByaW5jaXBpbyB5IGZpbmFsIGRlIGxhIGzDrW5lYS4gTGFzIGzDrW5lYXMgcXVlIGNvbWllbnphbiBjb24gwqsjwrsgc29uICIKKyJjb21lbnRhcmlvcywgeSBzZSBvbWl0ZW4uIExhcyBsw61uZWFzIHJlc3RhbnRlcyBlbXBpZXphbiBjb24gdW4gbm9tYnJlIGRlICIKKyJmaWNoZXJvIGRlIHVuIHBhcmNoZSAocmVsYXRpdm8gYWwgZGlyZWN0b3JpbyBCPGRlYmlhbi9wYXRjaGVzLz4pIGhhc3RhIGVsICIKKyJwcmltZXIgY2Fyw6FjdGVyIGRlIGVzcGFjaW8sIG8gZWwgZmluYWwgZGUgbGEgbMOtbmVhLiBPcGNpb25hbG1lbnRlLCBwdWVkZSAiCisiaW5zZXRhciBhIGNvbnRpbnVhY2nDs24gb3BjaW9uZXMgZGUgcXVpbHQgaGFzdGEgZWwgZmluYWwgZGUgbMOtbmVhLCBvIGVsICIKKyJwcmltZXIgwqsjwrsgcHJlY2VkaWRvIGRlIHVubyBvIG3DoXMgZXNwYWNpb3MgKHF1ZSBpbmRpY2FuIGVsIGluaWNpbyBkZSB1biAiCisiY29tZW50YXJpbyBoYXN0YSBlbCBmaW5hbCBkZSBsYSBsw61uZWEpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo3MjkKK21zZ2lkICJCPGRwa2ctZGViPigxKSwgQjxkcGtnPigxKSwgQjxkc2VsZWN0PigxKS4iCittc2dzdHIgIkI8ZHBrZy1kZWI+KDEpLCBCPGRwa2c+KDEpLCBCPGRzZWxlY3Q+KDEpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo3MzYKKyMsIGZ1enp5CisjfCBtc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMDgtMjAxMCBSYXBoYVxcWzplXWwgSGVydHpvZyIKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAwOC0yMDExIFJhcGhhXFxbOmVdbCBIZXJ0em9nIgorbXNnc3RyICJDb3B5cmlnaHQgXFwoY28gMjAwOC0yMDEwIFJhcGhhXFxbOmVdbCBIZXJ0em9nIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1zcGxpdC4xOjIKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLXNwbGl0IgorbXNnc3RyICJkcGtnLXNwbGl0IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6NQorbXNnaWQgImRwa2ctc3BsaXQgLSBEZWJpYW4gcGFja2FnZSBhcmNoaXZlIHNwbGl0L2pvaW4gdG9vbCIKK21zZ3N0ciAiZHBrZy1zcGxpdCAtIEhlcnJhbWllbnRhIHBhcmEgc2VwYXJhciB5IHVuaXIgcGFxdWV0ZXMgRGViaWFuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6OQorIywgZnV6enkKKyN8IG1zZ2lkICJCPGRwa2ctc3BsaXQ+IFtJPG9wdGlvbnM+XSBJPGNvbW1hbmQ+IgorbXNnaWQgIkI8ZHBrZy1zcGxpdD4gW0k8b3B0aW9uPi4uLl0gSTxjb21tYW5kPiIKK21zZ3N0ciAiQjxkcGtnLXNwbGl0PiBbSTxvcGNpb25lcz5dIEk8b3JkZW4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTUKK21zZ2lkICIiCisiQjxkcGtnLXNwbGl0PiBzcGxpdHMgRGViaWFuIGJpbmFyeSBwYWNrYWdlIGZpbGVzIGludG8gc21hbGxlciBwYXJ0cyBhbmQgIgorInJlYXNzZW1ibGVzIHRoZW0gYWdhaW4sIHRvIHN1cHBvcnQgdGhlIHN0b3JhZ2Ugb2YgbGFyZ2UgcGFja2FnZSBmaWxlcyBvbiAiCisic21hbGwgbWVkaWEgc3VjaCBhcyBmbG9wcHkgZGlza3MuIgorbXNnc3RyICIiCisiQjxkcGtnLXNwbGl0PiBzZXBhcmEgdW4gcGFxdWV0ZSBiaW5hcmlvIGRlIERlYmlhbiBlbiB2YXJpYXMgcGFydGVzIG3DoXMgIgorInBlcXVlw7FhcyBwYXJhIGx1ZWdvIHZvbHZlcmxhcyBhIHVuaXIsIHBvc2liaWxpdGFuZG8gYWxtYWNlbmFyIHBhcXVldGVzIGVuICIKKyJkaXNwb3NpdGl2b3MgZGUgcG9jYSBjYXBhY2lkYWQsIGNvbW8gZGlzcXVldGVzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjE5Cittc2dpZCAiIgorIkl0IGNhbiBiZSBvcGVyYXRlZCBtYW51YWxseSB1c2luZyB0aGUgQjwtLXNwbGl0PiwgQjwtLWpvaW4+IGFuZCBCPC0taW5mbz4gIgorIm9wdGlvbnMuIgorbXNnc3RyICIiCisiU2UgcHVlZGUgdXNhciBtYW51YWxtZW50ZSB1c2FuZG8gbGFzIG9wY2lvbmVzIEI8LS1zcGxpdD4sIEI8LS1qb2luPiB5IEI8LS0iCisiaW5mbz4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MjcKK21zZ2lkICIiCisiSXQgYWxzbyBoYXMgYW4gYXV0b21hdGljIG1vZGUsIGludm9rZWQgdXNpbmcgdGhlIEI8LS1hdXRvPiBvcHRpb24sIHdoZXJlIGl0ICIKKyJtYWludGFpbnMgYSBxdWV1ZSBvZiBwYXJ0cyBzZWVuIGJ1dCBub3QgeWV0IHJlYXNzZW1ibGVkIGFuZCByZWFzc2VtYmxlcyBhICIKKyJwYWNrYWdlIGZpbGUgd2hlbiBpdCBoYXMgc2VlbiBhbGwgb2YgaXRzIHBhcnRzLiBUaGUgQjwtLWxpc3RxPiBhbmQgQjwtLSIKKyJkaXNjYXJkPiBvcHRpb25zIGFsbG93IHRoZSBtYW5hZ2VtZW50IG9mIHRoZSBxdWV1ZS4iCittc2dzdHIgIiIKKyJUYW1iacOpbiBvZnJlY2UgdW4gbW9kbyBhdXRvbcOhdGljbyBtZWRpYW50ZSBsYSBvcGNpw7NuIEI8LS1hdXRvPiwgcXVlIGNyZWEgdW5hICIKKyJjb2xhIGNvbiBsYXMgcGFydGVzIHF1ZSBoYSBhbmFsaXphZG8gcGVybyBhw7puIHNlcGFyYWRhcyBwYXJhIGRlc3B1w6lzIGNyZWFyICIKKyJlbCBwYXF1ZXRlIHRyYXMgYW5hbGl6YXIgdG9kYXMgbGFzIHBhcnRlcy4gTGFzIG9wY2lvbmVzIEI8LS1saXN0cT4geSBCPC0tIgorImRpc2NhcmQ+IHBlcm1pdGVuIGFkbWluaXN0cmFyIGxhIGNvbGEuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MzAKK21zZ2lkICIiCisiQWxsIHNwbGl0dGluZywgam9pbmluZyBhbmQgcXVldWVpbmcgb3BlcmF0aW9ucyBwcm9kdWNlIGluZm9ybWF0aXZlIG1lc3NhZ2VzICIKKyJvbiBzdGFuZGFyZCBvdXRwdXQ7IHRoZXNlIG1heSBzYWZlbHkgYmUgaWdub3JlZC4iCittc2dzdHIgIiIKKyJMb3MgcHJvY2Vzb3MgZGUgc2VwYXJhciwgdW5pciB5IHBvc2ljaW9uYWRvIGVuIGNvbGEgcHJvZHVjZW4gbWVuc2FqZXMgIgorImluZm9ybWF0aXZvcyBwb3IgbGEgc2FsaWRhIGVzdMOhbmRhciwgcXVlIHNlIHB1ZWRlbiBpZ25vcmFyIHNpbiBuaW5nw7puIHJpZXNnby4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNwbGl0LjE6MzIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1zPiwgQjwtLXNwbGl0PiBJPGNvbXBsZXRlLWFyY2hpdmU+IFtJPHByZWZpeD5dIgorbXNnc3RyICJCPC1zPiwgQjwtLXNwbGl0PiBJPHBhcXVldGUtY29tcGxldG8+IFtJPHByZWZpeD5dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MzUKK21zZ2lkICJTcGxpdHMgYSBzaW5nbGUgRGViaWFuIGJpbmFyeSBwYWNrYWdlIGludG8gc2V2ZXJhbCBwYXJ0cy4iCittc2dzdHIgIkRpdmlkZSB1biDDum5pY28gcGFxdWV0ZSBiaW5hcmlvIGRlIERlYmlhbiBlbiB2YXJpYXMgcGFydGVzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjQzCittc2dpZCAiIgorIlRoZSBwYXJ0cyBhcmUgbmFtZWQgSTxwcmVmaXg+QjwuPkk8Tj5CPG9mPkk8TT5CPC5kZWI+IHdoZXJlIEk8Tj4gaXMgdGhlIHBhcnQgIgorIm51bWJlciwgc3RhcnRpbmcgYXQgMSwgYW5kIEk8TT4gaXMgdGhlIHRvdGFsIG51bWJlciBvZiBwYXJ0cyAoYm90aCBpbiAiCisiZGVjaW1hbCkuIgorbXNnc3RyICIiCisiTGFzIHBhcnRlcyByZWNpYmVuIGVsIG5vbWJyZSBJPHByZWZpam8+QjwuPkk8Tj5CPG9mPkk8TT5CPC5kZWI+LCBzaWVuZG8gSTxOPiAiCisiZWwgbsO6bWVybyBkZSBsYSBwYXJ0ZSwgY29tZW56YW5kbyBwb3IgMSwgeSBJPE0+IGVsIG7Dum1lcm8gdG90YWwgZGUgcGFydGVzICIKKyIoYW1ib3MgZW4gZGVjaW1hbCkuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6NTEKK21zZ2lkICIiCisiSWYgbm8gSTxwcmVmaXg+IGlzIHN1cHBsaWVkIHRoZW4gdGhlIEk8Y29tcGxldGUtYXJjaGl2ZT4gZmlsZW5hbWUgaXMgdGFrZW4sICIKKyJpbmNsdWRpbmcgZGlyZWN0b3J5LCB3aXRoIGFueSB0cmFpbGluZyBCPC5kZWI+IHJlbW92ZWQuIgorbXNnc3RyICIiCisiU2kgbm8gc2UgcHJvcG9yY2lvbmEgbmluZ8O6biBJPHByZWZpam8+LCBzZSB0b21hIGVsIG5vbWJyZSBkZWwgSTxmaWNoZXJvLSIKKyJjb21wbGV0bz4sIGluY2x1eWVuZG8gZWwgZGlyZWN0b3JpbywgeSBlbGltaW5hbmRvIGN1YWxxdWllciB0ZXJtaW5hY2nDs24gQjwuIgorImRlYj4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zcGxpdC4xOjUxCisjLCBuby13cmFwCittc2dpZCAiQjwtaj4sIEI8LS1qb2luPiBJPHBhcnQ+Li4uIgorbXNnc3RyICJCPC1qPiwgQjwtLWpvaW4+IEk8cGFydGU+Li4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6NTUKK21zZ2lkICIiCisiSm9pbnMgdGhlIHBhcnRzIG9mIGEgcGFja2FnZSBmaWxlIHRvZ2V0aGVyLCByZWFzc2VtYmxpbmcgdGhlIG9yaWdpbmFsIGZpbGUgIgorImFzIGl0IHdhcyBiZWZvcmUgaXQgd2FzIHNwbGl0LiIKK21zZ3N0ciAiIgorIlVuZSBsYXMgcGFydGVzIGRlIHVuIHBhcXVldGUsIGRlamFuZG8gZWwgcGFxdWV0ZSB0YWwgeSBjb21vIGVyYSAiCisib3JpZ2luYWxtZW50ZS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMTo1OQorbXNnaWQgIiIKKyJUaGUgcGFydCBmaWxlcyBnaXZlbiBhcyBhcmd1bWVudHMgbXVzdCBiZSBhbGwgdGhlIHBhcnRzIG9mIGV4YWN0bHkgdGhlIHNhbWUgIgorIm9yaWdpbmFsIGJpbmFyeSBmaWxlLiBFYWNoIHBhcnQgbXVzdCBvY2N1ciBleGFjdGx5IG9uY2UgaW4gdGhlIGFyZ3VtZW50ICIKKyJsaXN0LCB0aG91Z2ggdGhlIHBhcnRzIHRvIG5vdCBuZWVkIHRvIGJlIGxpc3RlZCBpbiBvcmRlci4iCittc2dzdHIgIiIKKyJMYXMgcGFydGVzIHF1ZSBzZSBwcm9wb3JjaW9uZW4gY29tbyBhcmd1bWVudG8gZGViZW4gc2VyIHRvZGFzIHBhcnRlIGRlbCAiCisibWlzbW8gZmljaGVybyBvcmlnaW5hbC4gQ2FkYSBwYXJ0ZSBzZSBkZWJlIHByb3BvcmNpb25hciB1bmEgc29sYSB2ZXosIGF1bnF1ZSAiCisibm8gbmVjZXNhcmlhbWVudGUgZW4gb3JkZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6NjQKK21zZ2lkICIiCisiVGhlIHBhcnRzIG11c3Qgb2YgY291cnNlIGFsbCBoYXZlIGJlZW4gZ2VuZXJhdGVkIHdpdGggdGhlIHNhbWUgcGFydCBzaXplICIKKyJzcGVjaWZpZWQgYXQgc3BsaXQgdGltZSwgd2hpY2ggbWVhbnMgdGhhdCB0aGV5IG11c3QgdXN1YWxseSBoYXZlIGJlZW4gIgorImdlbmVyYXRlZCBieSB0aGUgc2FtZSBpbnZvY2F0aW9uIG9mIEI8ZHBrZy1zcGxpdCAtLXNwbGl0Pi4iCittc2dzdHIgIiIKKyJUb2RhcyBsYXMgcGFydGVzIHNlIGRlYmVuIGdlbmVyYXIgY29uIGVsIG1pc21vIHRhbWHDsW8gZXNwZWNpZmljYWRvIGVuIGVsICIKKyJtb21lbnRvIGRlIGxhIGRpdmlzacOzbiwgbG8gcXVlIHNpZ25pZmljYSBxdWUgdG9kYXMgc2UgZGViZW4gZ2VuZXJhciBjb24gbGEgIgorIm1pc21hIGludm9jYWNpw7NuIGRlIEI8ZHBrZy1zcGxpdCAtLXNwbGl0Pi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMTo2NgorbXNnaWQgIlRoZSBwYXJ0cycgZmlsZW5hbWVzIGFyZSBub3Qgc2lnbmlmaWNhbnQgZm9yIHRoZSByZWFzc2VtYmx5IHByb2Nlc3MuIgorbXNnc3RyICIiCisiRWwgbm9tYnJlIGRlIGxhcyBwYXJ0ZXMgY2FyZWNlIGRlIGltcG9ydGFuY2lhIHBhcmEgZWwgcHJvY2VzbyBkZSB1bmnDs24uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6NjkKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIkJ5IGRlZmF1bHQgdGhlIG91dHB1dCBmaWxlIGlzIGNhbGxlZCBJPHBhY2thZ2U+QjwtPkk8dmVyc2lvbj5CPC5kZWI+LiIKK21zZ2lkICIiCisiQnkgZGVmYXVsdCB0aGUgb3V0cHV0IGZpbGUgaXMgY2FsbGVkIEk8cGFja2FnZT5CPF8+STx2ZXJzaW9uPkI8Xz5JPGFyY2g+QjwuIgorImRlYj4uIgorbXNnc3RyICIiCisiUG9yIG9taXNpw7NuIGVsIGZpY2hlcm8gcmVzdWx0YW50ZSBzZSBsbGFtYSBJPHBhcXVldGU+QjwtPkk8dmVyc2nDs24+QjwuZGViPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNwbGl0LjE6NzAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1JPiwgQjwtLWluZm8+IEk8cGFydD4uLi4iCittc2dzdHIgIkI8LUk+LCBCPC0taW5mbz4gSTxwYXJ0ZT4uLi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMTo3NQorbXNnaWQgIiIKKyJQcmludHMgaW5mb3JtYXRpb24sIGluIGEgaHVtYW4tcmVhZGFibGUgZm9ybWF0LCBhYm91dCB0aGUgcGFydCBmaWxlKHMpICAiCisic3BlY2lmaWVkLiBBcmd1bWVudHMgd2hpY2ggYXJlIG5vdCBiaW5hcnkgcGFja2FnZSBwYXJ0cyBwcm9kdWNlIGEgbWVzc2FnZSAiCisic2F5aW5nIHNvIGluc3RlYWQgKGJ1dCBzdGlsbCBvbiBzdGFuZGFyZCBvdXRwdXQpLiIKK21zZ3N0ciAiIgorIk11ZXN0cmEgaW5mb3JtYWNpw7NuLCBlbiB1biBmb3JtYXRvIGxlZ2libGUgcG9yIGVsIHVzdWFyaW8sIGFjZXJjYSBkZSBsYSAiCisicGFydGUgbyBwYXJ0ZXMgZGVsIGZpY2hlcm8gZXNwZWNpZmljYWRhcy4gTG9zIGFyZ3VtZW50b3MgcXVlIG5vIHNvbiBwYXJ0ZSBkZSAiCisidW4gcGFxdWV0ZSBiaW5hcmlvIHByb2R1Y2VuIHVuIG1lbnNhamUgYXZpc2FuZG8gZGVsIHByb2JsZW1hIChwb3IgbGEgc2FsaWRhICIKKyJlc3TDoW5kYXIpLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc3BsaXQuMTo3NQorIywgbm8td3JhcAorbXNnaWQgIkI8LWE+LCBCPC0tYXV0byAtbz4gSTxjb21wbGV0ZS1vdXRwdXQgcGFydD4iCittc2dzdHIgIkI8LWE+LCBCPC0tYXV0byAtbz4gSTxzYWxpZGEtY29tcGxldGEgcGFydGU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6NzgKK21zZ2lkICJBdXRvbWF0aWNhbGx5IHF1ZXVlIHBhcnRzIGFuZCByZWFzc2VtYmxlIGEgcGFja2FnZSBpZiBwb3NzaWJsZS4iCittc2dzdHIgIiIKKyJQb3NpY2lvbmEgbGFzIHBhcnRlcyBlbiBsYSBjb2xhIGF1dG9tw6F0aWNhbWVudGUsIHkgdW5lIG51ZXZhbWVudGUgZWwgIgorInBhcXVldGUsIHNpIGVzIHBvc2libGUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6ODMKK21zZ2lkICIiCisiVGhlIEk8cGFydD4gc3BlY2lmaWVkIGlzIGV4YW1pbmVkLCBhbmQgY29tcGFyZWQgd2l0aCBvdGhlciBwYXJ0cyBvZiB0aGUgc2FtZSAiCisicGFja2FnZSAoaWYgYW55KSBpbiB0aGUgcXVldWUgb2YgcGFja2FnZXMgZmlsZSBwYXJ0cy4iCittc2dzdHIgIiIKKyJMYSBJPHBhcnRlPiBlc3BlY2lmaWNhZGEgc2UgZXhhbWluYSB5IGNvbXBhcmEganVudG8gY29uIGxhcyBvdHJhcyBwYXJ0ZXMgZGVsICIKKyJtaXNtbyBwYXF1ZXRlIChzaSBoYXkgYWxndW5hKSBlbiBsYSBjb2xhIGRlIGxhcyBwYXJ0ZXMgZGUgZmljaGVyb3MgZGUgIgorInBhcXVldGUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6OTAKK21zZ2lkICIiCisiSWYgYWxsIHBhcnRzIG9mIHRoZSBwYWNrYWdlIGZpbGUgb2Ygd2hpY2ggSTxwYXJ0PiBpcyBhIHBhcnQgYXJlIGF2YWlsYWJsZSAiCisidGhlbiB0aGUgcGFja2FnZSBpcyByZWFzc2VtYmxlZCBhbmQgd3JpdHRlbiB0byBJPGNvbXBsZXRlLW91dHB1dD4gKHdoaWNoICIKKyJzaG91bGQgbm90IHVzdWFsbHkgYWxyZWFkeSBleGlzdCwgdGhvdWdoIHRoaXMgaXMgbm90IGFuIGVycm9yKS4iCittc2dzdHIgIiIKKyJTaSBlc3TDoW4gZGlzcG9uaWJsZXMgdG9kYXMgbGFzIHBhcnRlcyBkZWwgZmljaGVybyBhbCBxdWUgcGVydGVuZWNlIGxhICIKKyJJPHBhcnRlPiwgc2UgdW5lIHBhcXVldGUgeSBndWFyZGEgZW4gbGEgSTxzYWxpZGEtY29tcGxldGE+IChxdWUgbm9ybWFsbWVudGUgIgorIm5vIGV4aXN0ZSwgYXVucXVlIGVzdG8gbm8gZXMgdW4gZXJyb3IpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjk2Cittc2dpZCAiIgorIklmIG5vdCB0aGVuIHRoZSBJPHBhcnQ+IGlzIGNvcGllZCBpbnRvIHRoZSBxdWV1ZSBhbmQgSTxjb21wbGV0ZS1vdXRwdXQ+IGlzICIKKyJub3QgY3JlYXRlZC4iCittc2dzdHIgIiIKKyJEZSBubyBzZSBhc8OtLCBsYSBJPHBhcnRlPiBzZSBjb3BpYSBlbiBsYSBjb2xhIHBlcm8gbm8gc2UgY3JlYSBsYSBJPHNhbGlkYS0iCisiY29tcGxldGE+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjEwMworIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiSWYgSTxwYXJ0PiBpcyBub3QgYSBzcGxpdCBiaW5hcnkgcGFja2FnZSBwYXJ0IHRoZW4gQjxkcGtnLXNwbGl0PiB3aWxsICIKKyN8ICJleGl0IHdpdGggc3RhdHVzIDE7IGlmIHNvbWUgb3RoZXIgdHJvdWJsZSBvY2N1cnMgdGhlbiBpdCB3aWxsIGV4aXQgd2l0aCAiCisjfCAic3RhdHVzIDIuIgorbXNnaWQgIiIKKyJJZiBJPHBhcnQ+IGlzIG5vdCBhIHNwbGl0IGJpbmFyeSBwYWNrYWdlIHBhcnQgdGhlbiBCPGRwa2ctc3BsaXQ+IHdpbGwgZXhpdCAiCisid2l0aCBzdGF0dXMgQjwxPjsgaWYgc29tZSBvdGhlciB0cm91YmxlIG9jY3VycyB0aGVuIGl0IHdpbGwgZXhpdCB3aXRoIHN0YXR1cyAiCisiQjwyPi4iCittc2dzdHIgIiIKKyJTaSBsYSBJPHBhcnRlPiBubyBlcyB1bmEgcGFydGUgZGVsIHBhcXVldGUgYmluYXJpbywgQjxkcGtnLXNwbGl0PiB0ZXJtaW5hcsOhICIKKyJjb24gdW4gZXN0YWRvIGRlIHNhbGlkYSBpZ3VhbCBhIDEsIHNpIG9jdXJyZSBhbGfDum4gb3RybyB0aXBvIGRlIGVycm9yIGVsICIKKyJlc3RhZG8gZGUgc2FsaWRhIHNlcsOhIDIuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTEwCittc2dpZCAiIgorIlRoZSBCPC0tb3V0cHV0PiBvciBCPC1vPiBvcHRpb24gbXVzdCBiZSBzdXBwbGllZCB3aGVuIHVzaW5nIEI8LS1hdXRvPi4gIChJZiAiCisidGhpcyB3ZXJlIG5vdCBtYW5kYXRvcnkgdGhlIGNhbGxpbmcgcHJvZ3JhbSB3b3VsZCBub3Qga25vdyB3aGF0IG91dHB1dCBmaWxlICIKKyJ0byBleHBlY3QuKSIKK21zZ3N0ciAiIgorIkRlYmUgcHJvcG9yY2lvbmFyIGxhIG9wY2nDs24gQjwtLW91dHB1dD4gbyBCPC1vPiBjdWFuZG8gdXNlIEI8LS1hdXRvPi4gKFNpICIKKyJlc3RlIGFyZ3VtZW50byBubyBmdWVzZSBvYmxpZ2F0b3JpbyBlbCBwcm9ncmFtYSBxdWUgZWplY3V0ZSBCPGRwa2ctc3BsaXQ+IG5vICIKKyJzYWJyw61hIHF1ZSBmaWNoZXJvIGVzcGVyYXIpLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc3BsaXQuMToxMTAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1sPiwgQjwtLWxpc3RxPiIKK21zZ3N0ciAiQjwtbD4sIEI8LS1saXN0cT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxMTMKK21zZ2lkICJMaXN0cyB0aGUgY29udGVudHMgb2YgdGhlIHF1ZXVlIG9mIHBhY2thZ2VzIHRvIGJlIHJlYXNzZW1ibGVkLiIKK21zZ3N0ciAiTGlzdGEgbG9zIGNvbnRlbmlkb3MgZGUgbGEgY29sYSBkZSBwYXF1ZXRlcyBjdXlhcyBwYXJ0ZXMgdW5pci4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxMTcKK21zZ2lkICIiCisiRm9yIGVhY2ggcGFja2FnZSBmaWxlIG9mIHdoaWNoIHBhcnRzIGFyZSBpbiB0aGUgcXVldWUgdGhlIG91dHB1dCBnaXZlcyB0aGUgIgorIm5hbWUgb2YgdGhlIHBhY2thZ2UsIHRoZSBwYXJ0cyBpbiB0aGUgcXVldWUsIGFuZCB0aGUgdG90YWwgbnVtYmVyIG9mIGJ5dGVzICIKKyJzdG9yZWQgaW4gdGhlIHF1ZXVlLiIKK21zZ3N0ciAiIgorIlBvciBjYWRhIGZpY2hlcm8gZGUgdW4gcGFxdWV0ZSBxdWUgY29udGVuZ2EgcGFydGVzIGVuIGxhIGNvbGEgc2UgbXVlc3RyYSBlbCAiCisibm9tYnJlIGRlbCBwYXF1ZXRlLCBsYXMgcGFydGVzIGVuIGxhIGNvbGEgeSBlbCBuw7ptZXJvIHRvdGFsIGRlIGJ5dGVzICIKKyJndWFyZGFkb3MgZW4gw6lzdGEuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zcGxpdC4xOjExNworIywgbm8td3JhcAorbXNnaWQgIkI8LWQ+LCBCPC0tZGlzY2FyZD4gW0k8cGFja2FnZT4uLi5dIgorbXNnc3RyICJCPC1kPiwgQjwtLWRpc2NhcmQ+IFtJPHBhcXVldGU+Li4uXSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjEyMQorbXNnaWQgIiIKKyJUaGlzIGRpc2NhcmRzIHBhcnRzIGZyb20gdGhlIHF1ZXVlIG9mIHRob3NlIHdhaXRpbmcgZm9yIHRoZSByZW1haW5pbmcgcGFydHMgIgorIm9mIHRoZWlyIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorIkRlc2NhcnRhIHBhcnRlcyBkZSBsYSBjb2xhIGRlIGFxdcOpbGxhcyBxdWUgZXNwZXJhbiBsYXMgcGFydGVzIHJlc3RhbnRlcyBkZWwgIgorInBhcXVldGUgcGFyYSBzdSB1bmnDs24gY29uIG90cmFzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjEyNgorbXNnaWQgIiIKKyJJZiBubyBJPHBhY2thZ2U+IGlzIHNwZWNpZmllZCB0aGVuIHRoZSBxdWV1ZSBpcyBjbGVhcmVkIGNvbXBsZXRlbHk7IGlmIGFueSAiCisiYXJlIHNwZWNpZmllZCB0aGVuIG9ubHkgcGFydHMgb2YgdGhlIHJlbGV2YW50IHBhY2thZ2UocykgYXJlIGRlbGV0ZWQuIgorbXNnc3RyICIiCisiU2kgbm8gc2UgZXNwZWNpZmljYSBuaW5nw7puIEk8cGFxdWV0ZT4gc2UgbGltcGlhIGxhIGNvbGEgcG9yIGNvbXBsZXRvLCBzaSBzZSAiCisiZXNwZWNpZmljYSBhbGd1bm8gc8OzbG8gc2UgZWxpbWluYW4gbGFzIHBhcnRlcyBkZSBsb3MgcGFxdWV0ZXMgcmVsZXZhbnRlcy4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNwbGl0LjE6MTM0CisjLCBuby13cmFwCittc2dpZCAiQjwtLWRlcG90ZGlyPkk8IGRpcmVjdG9yeT4iCittc2dzdHIgIkI8LS1kZXBvdGRpcj5JPCBkaXJlY3RvcmlvPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjEzOQorbXNnaWQgIiIKKyJTcGVjaWZpZXMgYW4gYWx0ZXJuYXRpdmUgZGlyZWN0b3J5IGZvciB0aGUgcXVldWUgb2YgcGFydHMgYXdhaXRpbmcgYXV0b21hdGljICIKKyJyZWFzc2VtYmx5LiBUaGUgZGVmYXVsdCBpcyBCPC92YXIvbGliL2Rwa2c+LiIKK21zZ3N0ciAiIgorIkVzcGVjaWZpY2EgdW4gZGlyZWN0b3JpbyBhbHRlcm5hdGl2byBwYXJhIGxhcyBwYXJ0ZXMgcXVlIHNlIGVuY3VlbnRyYW4gZW4gbGEgIgorImNvbGEgZXNwZXJhbmRvIHBhcmEgc2VyIHVuaWRhcy4gUG9yIG9taXNpw7NuIGVzIEI8L3Zhci9saWIvZHBrZz4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zcGxpdC4xOjEzOQorIywgbm8td3JhcAorbXNnaWQgIkI8LVM+LCBCPC0tcGFydHNpemU+IEk8a2liaWJ5dGVzPiIKK21zZ3N0ciAiQjwtUz4sIEI8LS1wYXJ0c2l6ZT4gSTxraWJpYnl0ZXM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTQzCittc2dpZCAiIgorIlNwZWNpZmllcyB0aGUgbWF4aW11bSBwYXJ0IHNpemUgd2hlbiBzcGxpdHRpbmcsIGluIGtpYmlieXRlcyAoMTAyNCBieXRlcykuICIKKyJUaGUgZGVmYXVsdCBpcyA0NTAgS2lCLiIKK21zZ3N0ciAiIgorIkVzcGVjaWZpY2EgZWwgdGFtYcOxbyBtw6F4aW1vIGRlIGNhZGEgcGFydGUgZW4ga2lsb2J5dGVzICgxMDI0IGJ5dGVzKS4gUG9yICIKKyJvbWlzacOzbiBlcyA0NTBLYi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNwbGl0LjE6MTQzCisjLCBuby13cmFwCittc2dpZCAiQjwtbz4sIEI8LS1vdXRwdXQ+IEk8Y29tcGxldGUtb3V0cHV0PiIKK21zZ3N0ciAiQjwtbz4sIEI8LS1vdXRwdXQ+IEk8Y29tcGxldGUtb3V0cHV0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjE0NgorbXNnaWQgIlNwZWNpZmllcyB0aGUgb3V0cHV0IGZpbGUgbmFtZSBmb3IgYSByZWFzc2VtYmx5LiIKK21zZ3N0ciAiRXNwZWNpZmljYSBlbCBub21icmUgZGVsIGZpY2hlcm8gZ2VuZXJhZG8gcG9yIGxhIHVuacOzbiBkZSBsYXMgcGFydGVzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjE1MQorbXNnaWQgIiIKKyJUaGlzIG92ZXJyaWRlcyB0aGUgZGVmYXVsdCBmb3IgYSBtYW51YWwgcmVhc3NlbWJseSAoQjwtLWpvaW4+KSAgYW5kIGlzICIKKyJtYW5kYXRvcnkgZm9yIGFuIGF1dG9tYXRpYyBxdWV1ZS1vci1yZWFzc2VtYmxlIChCPC0tYXV0bz4pLiIKK21zZ3N0ciAiIgorIsOJc3RvIHN1c3RpdHV5ZSBhbCBub21icmUgcG9yIG9taXNpw7NuIGVuIG1vZG8gbWFudWFsIChCPC0tam9pbj4pLCAgeSBlcyAiCisib2JsaWdhdG9yaW8gY29uIGVsIG1vZG8gYXV0b23DoXRpY28gKEI8LS1hdXRvPikuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zcGxpdC4xOjE1MQorIywgbm8td3JhcAorbXNnaWQgIkI8LVE+LCBCPC0tbnBxdWlldD4iCittc2dzdHIgIkI8LVE+LCBCPC0tbnBxdWlldD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxNjIKK21zZ2lkICIiCisiV2hlbiBkb2luZyBhdXRvbWF0aWMgcXVldWUtb3ItcmVhc3NlbWJseSBCPGRwa2ctc3BsaXQ+IHVzdWFsbHkgcHJpbnRzIGEgIgorIm1lc3NhZ2UgaWYgaXQgaXMgZ2l2ZW4gYSBJPHBhcnQ+IHRoYXQgaXMgbm90IGEgYmluYXJ5IHBhY2thZ2UgcGFydC4gVGhpcyAiCisib3B0aW9uIHN1cHByZXNzZXMgdGhpcyBtZXNzYWdlLCB0byBhbGxvdyBwcm9ncmFtcyBzdWNoIGFzIEI8ZHBrZz4gdG8gY29wZSAiCisid2l0aCBib3RoIHNwbGl0IGFuZCB1bnNwbGl0IHBhY2thZ2VzIHdpdGhvdXQgcHJvZHVjaW5nIHNwdXJpb3VzIG1lc3NhZ2VzLiIKK21zZ3N0ciAiIgorIkN1YW5kbyBCPGRwa2ctc3BsaXQ+IGVzdMOhIGVuIG1vZG8gYXV0b23DoXRpY28sIG5vcm1hbG1lbnRlIG11ZXN0cmEgbWVuc2FqZXMgIgorInNpIHNlIGxlIHBhc2EgdW5hIEk8cGFydGU+IHF1ZSBubyBlcyBwYXJ0ZSBkZWwgcGFxdWV0ZSBiaW5hcmlvLiBFc3RhIG9wY2nDs24gIgorInN1cHJpbWUgZXN0b3MgbWVuc2FqZXMsIHBlcm1pdGllbmRvIHF1ZSBwcm9ncmFtYXMgY29tbyBCPGRwa2c+IHB1ZWRhbiAiCisic2VwYXJhciB5IHVuaXIgcGFxdWV0ZXMgc2luIHByb2R1Y2lyIG1lbnNhamVzIHBvY28gaW5mb3JtYXRpdm9zLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc3BsaXQuMToxNjIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tbXNkb3M+IgorbXNnc3RyICJCPC0tbXNkb3M+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTY3Cittc2dpZCAiIgorIkZvcmNlcyB0aGUgb3V0cHV0IGZpbGVuYW1lcyBnZW5lcmF0ZWQgYnkgQjwtLXNwbGl0PiB0byBiZSBtc2Rvcy1jb21wYXRpYmxlLiIKK21zZ3N0ciAiIgorIkZ1ZXJ6YSBxdWUgbG9zIG5vbWJyZXMgZGUgbG9zIGZpY2hlcm9zIGdlbmVyYWRvcyBjb21vIHNhbGlkYSBkZSBCPC0tc3BsaXQ+ICIKKyJzZWFuIGNvbXBhdGlibGVzIGNvbiBtc2Rvcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxNzMKK21zZ2lkICIiCisiVGhpcyBtYW5nbGVzIHRoZSBwcmVmaXggLSBlaXRoZXIgdGhlIGRlZmF1bHQgZGVyaXZlZCBmcm9tIHRoZSBpbnB1dCBmaWxlbmFtZSAiCisib3IgdGhlIG9uZSBzdXBwbGllZCBhcyBhbiBhcmd1bWVudDogYWxwaGFudW1lcmljcyBhcmUgbG93ZXJjYXNlZCwgcGx1cyBzaWducyAiCisiYXJlIHJlcGxhY2VkIGJ5IEI8eD4ncyBhbmQgYWxsIG90aGVyIGNoYXJhY3RlcnMgYXJlIGRpc2NhcmRlZC4iCittc2dzdHIgIiIKKyJFc3RhIG9wY2nDs24gbW9kaWZpY2EgZWwgcHJlZmlqbyAodGFudG8gZWwgcHJlZmlqbyBwb3Igb21pc2nDs24gY29tbyBlbCAiCisicHJvcG9yY2lvbmFkbyBwb3IgdW4gYXJndW1lbnRvKTogbG9zIGNhcmFjdGVyZXMgYWxmYW51bcOpcmljb3Mgc2UgcGFzYW4gYSAiCisibWluw7pzY3VsYXMsIGxvcyBzaWdub3MgZGUgc3VtYSDCqyvCuyBzZSByZWVtcGxhemFuIGNvbiBCPHg+IHkgc2UgZGVzY2FydGFuIGVsICIKKyJyZXN0byBkZSBjYXJhY3RlcmVzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjE3OAorbXNnaWQgIiIKKyJUaGUgcmVzdWx0IGlzIHRoZW4gdHJ1bmNhdGVkIGFzIG11Y2ggYXMgaXMgbmVjZXNzYXJ5LCBhbmQgZmlsZW5hbWVzIG9mIHRoZSAiCisiZm9ybSBJPHByZWZpeE4+QjxvZj5JPE0+QjwuZGViPiBhcmUgZ2VuZXJhdGVkLiIKK21zZ3N0ciAiIgorIkVsIHJlc3VsdGFkbyByZXN0YW50ZSBzZSB0cnVuY2EgaGFzdGEgZG9uZGUgc2VhIG5lY2VzYXJpbyBkZSBmb3JtYSBxdWUgc2UgIgorImdlbmVyZW4gZmljaGVyb3MgY29uIGxhIGZvcm1hIEk8cHJlZmlqb04+QjxvZj5JPE0+QjwuZGViLj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxODYKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIkFuIGV4aXQgc3RhdHVzIG9mIDAgaW5kaWNhdGVzIHRoYXQgdGhlIHJlcXVlc3RlZCBzcGxpdCwgbWVyZ2UsIG9yIG90aGVyICIKKyN8ICJjb21tYW5kIHN1Y2NlZWRlZC4gIEI8LS1pbmZvPiBjb21tYW5kcyBjb3VudCBhcyBzdWNjZXNzZnVsIGV2ZW4gaWYgdGhlICIKKyN8ICJmaWxlcyBhcmUgbm90IGJpbmFyeSBwYWNrYWdlIHBhcnRzLiIKK21zZ2lkICIiCisiVGhlIHJlcXVlc3RlZCBzcGxpdCwgbWVyZ2UsIG9yIG90aGVyIGNvbW1hbmQgc3VjY2VlZGVkLiAgQjwtLWluZm8+IGNvbW1hbmRzICIKKyJjb3VudCBhcyBzdWNjZXNzZnVsIGV2ZW4gaWYgdGhlIGZpbGVzIGFyZSBub3QgYmluYXJ5IHBhY2thZ2UgcGFydHMuIgorbXNnc3RyICIiCisiVW4gZXN0YWRvIGRlIHNhbGlkYSAwIGluZGljYSBxdWUgbGEgb3BlcmFjacOzbiByZXF1ZXJpZGEgc2UgaGEgcmVhbGl6YWRvIGNvbiAiCisiw6l4aXRvLiBMYXMgw7NyZGVuZXMgQjwtLWluZm8+IHNlIGRhbiBjw7NtbyBzYXRpc2ZhY3RvcmlhcyBpbmNsdXNvIHNpIGxvcyAiCisiZmljaGVyb3Mgbm8gc29uIHBhcnRlIGRlIG5pbmfDum4gcGFxdWV0ZSBiaW5hcmlvLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjE5MworIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiQW4gZXhpdCBzdGF0dXMgb2YgMSBvY2N1cnMgb25seSB3aXRoIEI8LS1hdXRvPiBhbmQgaW5kaWNhdGVzIHRoYXQgdGhlICIKKyN8ICJJPHBhcnQ+IGZpbGUgd2FzIG5vdCBhIGJpbmFyeSBwYWNrYWdlIHBhcnQuIgorbXNnaWQgIiIKKyJPbmx5IG9jY3VycyB3aXRoIEI8LS1hdXRvPiBhbmQgaW5kaWNhdGVzIHRoYXQgdGhlIEk8cGFydD4gZmlsZSB3YXMgbm90IGEgIgorImJpbmFyeSBwYWNrYWdlIHBhcnQuIgorbXNnc3RyICIiCisiU2UgZGV2dWVsdmUgdW4gZXN0YWRvIGRlIHNhbGlkYSAxIHPDs2xvIGFsIHVzYXIgbGEgb3BjacOzbiBCPC0tYXV0bz4sIGUgaW5kaWNhICIKKyJxdWUgbGEgSTxwYXJ0ZT4gbm8gZXJhIHBhcnRlIGRlIHVuIHBhcXVldGUgYmluYXJpby4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNwbGl0LjE6MTkzIHN0YXJ0LXN0b3AtZGFlbW9uLjg6Mjc1IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozNzgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPDI+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxOTgKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIkFuIGV4aXQgc3RhdHVzIG9mIDIgaW5kaWNhdGVzIHNvbWUga2luZCBvZiB0cm91YmxlLCBzdWNoIGFzIGEgc3lzdGVtIGNhbGwgIgorI3wgImZhaWx1cmUsIGEgZmlsZSB0aGF0IGxvb2tlZCBsaWtlIGEgcGFja2FnZSBwYXJ0IGZpbGUgYnV0IHdhcyBjb3JydXB0ZWQsIGEgIgorI3wgInVzYWdlIGVycm9yIG9yIHNvbWUgb3RoZXIgcHJvYmxlbS4iCittc2dpZCAiIgorIlNvbWUga2luZCBvZiB0cm91YmxlIGhhcHBlbmVkLCBzdWNoIGFzIGEgc3lzdGVtIGNhbGwgZmFpbHVyZSwgYSBmaWxlIHRoYXQgIgorImxvb2tlZCBsaWtlIGEgcGFja2FnZSBwYXJ0IGZpbGUgYnV0IHdhcyBjb3JydXB0ZWQsIGEgdXNhZ2UgZXJyb3Igb3Igc29tZSAiCisib3RoZXIgcHJvYmxlbS4iCittc2dzdHIgIiIKKyJTZSBkZXZ1ZWx2ZSB1biBlc3RhZG8gZGUgc2FsaWRhIDIgY3VhbmRvIG9jdXJyZSBhbGfDum4gdGlwbyBkZSBwcm9ibGVtYSwgY29tbyAiCisidW5hIGxsYW1hZGEgYWwgc2lzdGVtYSBmYWxsaWRhLCB1biBmaWNoZXJvIHF1ZSBwYXJlY8OtYSBwYXJ0ZSBkZSB1biBwYXF1ZXRlICIKKyJwZXJvIHF1ZSBlc3RhYmEgZGHDsWFkbywgdW4gdXNvIGluY29ycmVjdG8gZGVsIHByb2dyYW1hIG8gYWxnw7puIG90cm8gcHJvYmxlbWEuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MjAyCittc2dpZCAiIgorIkZ1bGwgZGV0YWlscyBvZiB0aGUgcGFja2FnZXMgaW4gdGhlIHF1ZXVlIGFyZSBpbXBvc3NpYmxlIHRvIGdldCB3aXRob3V0ICIKKyJkaWdnaW5nIGludG8gdGhlIHF1ZXVlIGRpcmVjdG9yeSB5b3Vyc2VsZi4iCittc2dzdHIgIiIKKyJFcyBpbXBvc2libGUgb2J0ZW5lciB0b2RvcyBsb3MgZGV0YWxsZXMgZGUgbG9zIHBhcXVldGVzIHF1ZSBlc3TDoW4gZW4gbGEgY29sYSAiCisic2luIGludmVzdGlnYXIgZGlyZWN0YW1lbnRlIGxhIGNvbGEuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MjA1Cittc2dpZCAiIgorIlRoZXJlIGlzIG5vIGVhc3kgd2F5IHRvIHRlc3Qgd2hldGhlciBhIGZpbGUgdGhhdCBtYXkgYmUgYSBiaW5hcnkgcGFja2FnZSAiCisicGFydCBpcyBvbmUuIgorbXNnc3RyICIiCisiTm8gZXhpc3RlIHVuYSBtYW5lcmEgc2VuY2lsbGEgZGUgY29tcHJvYmFyIHNpIGVsIGZpY2hlcm8gcXVlIHB1ZWRlIHNlciBwYXJ0ZSAiCisiZGUgdW4gcGFxdWV0ZSBiaW5hcmlvIGVzIHJlYWxtZW50ZSB1bm8uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zcGxpdC4xOjIwNworIywgbm8td3JhcAorbXNnaWQgIkk8L3Zhci9saWIvZHBrZy9wYXJ0cz4iCittc2dzdHIgIkk8L3Zhci9saWIvZHBrZy9wYXJ0cz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToyMTEKK21zZ2lkICIiCisiVGhlIGRlZmF1bHQgcXVldWUgZGlyZWN0b3J5IGZvciBwYXJ0IGZpbGVzIGF3YWl0aW5nIGF1dG9tYXRpYyByZWFzc2VtYmx5LiIKK21zZ3N0ciAiIgorIkVsIGRpcmVjdG9yaW8gcG9yIG9taXNpw7NuIGRvbmRlIGxhcyBwYXJ0ZXMgZXNwZXJhbiBwYXJhIGxhIHVuacOzbiBhdXRvbcOhdGljYS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToyMTYKK21zZ2lkICIiCisiVGhlIGZpbGVuYW1lcyB1c2VkIGluIHRoaXMgZGlyZWN0b3J5IGFyZSBpbiBhIGZvcm1hdCBpbnRlcm5hbCB0byBCPGRwa2ctIgorInNwbGl0PiBhbmQgYXJlIHVubGlrZWx5IHRvIGJlIHVzZWZ1bCB0byBvdGhlciBwcm9ncmFtcywgYW5kIGluIGFueSBjYXNlIHRoZSAiCisiZmlsZW5hbWUgZm9ybWF0IHNob3VsZCBub3QgYmUgcmVsaWVkIHVwb24uIgorbXNnc3RyICIiCisiTG9zIG5vbWJyZSBkZSBsb3MgZmljaGVyb3MgdXNhZG9zIGVuIGVzdGUgZGlyZWN0b3JpbyBzZSBlbmN1ZW50cmFuIGVuIHVuICIKKyJmb3JtYXRvIGludGVybm8gZGUgQjxkcGtnLXNwbGl0PiwgeSBlcyBpbXByb2JhYmxlIHF1ZSBzZWFuIMO6dGlsZXMgcGFyYSBvdHJvcyAiCisicHJvZ3JhbWFzLiBFbiBjdWFscXVpZXIgY2Fzbywgbm8gc2UgZGViZXLDrWEgZGVwZW5kZXIgZGVsIGZvcm1hdG8gZGVsIG5vbWJyZSAiCisiZGVsIGZpY2hlcm8uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MjIyCittc2dpZCAiQjxkZWI+KDUpLCBCPGRlYi1jb250cm9sPig1KSwgQjxkcGtnLWRlYj4oMSksIEI8ZHBrZz4oMSkuIgorbXNnc3RyICJCPGRlYj4oNSksIEI8ZGViLWNvbnRyb2w+KDUpLCBCPGRwa2ctZGViPigxKSwgQjxkcGtnPigxKS4iCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLXN0YXRvdmVycmlkZSIKK21zZ3N0ciAiZHBrZy1zdGF0b3ZlcnJpZGUiCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjEKKyMsIG5vLXdyYXAKK21zZ2lkICJEZWJpYW4gcHJvamVjdCIKK21zZ3N0ciAiUHJveWVjdG8gRGViaWFuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjQKK21zZ2lkICJkcGtnLXN0YXRvdmVycmlkZSAtIG92ZXJyaWRlIG93bmVyc2hpcCBhbmQgbW9kZSBvZiBmaWxlcyIKK21zZ3N0ciAiZHBrZy1zdGF0b3ZlcnJpZGUgLSBTdXN0aXR1Y2nDs24gZGVsIHByb3BpZXRhcmlvIHkgbW9kbyBkZSBmaWNoZXJvcyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo4CisjLCBmdXp6eQorI3wgbXNnaWQgIkI8ZHBrZy1zdGF0b3ZlcnJpZGU+IFtJPG9wdGlvbnM+XSBJPGNvbW1hbmQ+IgorbXNnaWQgIkI8ZHBrZy1zdGF0b3ZlcnJpZGU+IFtJPG9wdGlvbj4uLi5dIEk8Y29tbWFuZD4iCittc2dzdHIgIkI8ZHBrZy1zdGF0b3ZlcnJpZGU+IFtJPG9wY2lvbmVzPl0gSTxvcmRlbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6MTgKK21zZ2lkICIiCisiYEI8c3RhdCBvdmVycmlkZXM+JyBhcmUgYSB3YXkgdG8gdGVsbCBCPGRwa2c+KDEpICB0byB1c2UgYSBkaWZmZXJlbnQgb3duZXIgIgorIm9yIG1vZGUgZm9yIGEgZmlsZSB3aGVuIGEgcGFja2FnZSBpcyBpbnN0YWxsZWQuIChub3RlOiBJIHVzZSB0aGUgd29yZCBgZmlsZScgIgorImhlcmUsIGJ1dCBpbiByZWFsaXR5IHRoaXMgY2FuIGJlIGFueSBmaWxlc3lzdGVtIG9iamVjdCB0aGF0IGRwa2cgaGFuZGxlcywgIgorImluY2x1ZGluZyBkaXJlY3RvcmllcywgZGV2aWNlcywgZXRjLikuIFRoaXMgY2FuIGJlIHVzZWQgdG8gZm9yY2UgcHJvZ3JhbXMgIgorInRoYXQgYXJlIG5vcm1hbGx5IHNldHVpZCB0byBiZSBpbnN0YWxsIHdpdGhvdXQgYSBzZXR1aWQgZmxhZywgb3Igb25seSAiCisiZXhlY3V0YWJsZSBieSBhIGNlcnRhaW4gZ3JvdXAuIgorbXNnc3RyICIiCisiQjxMYSBzdXN0aXR1Y2nDs24gZGUgcHJvcGllZGFkZXM+IGVzIHVuIG1vZG8gZGUgaW5kaWNhciBhIEI8ZHBrZz4oMSkgcXVlIHVzZSAiCisidW4gcHJvcGlldGFyaW8gbyBtb2RvIGRpZmVyZW50ZSBwYXJhIHVuIGZpY2hlcm8gY3VhbmRvIHVuIHBhcXVldGUgZXN0w6EgIgorImluc3RhbGFkbyAoTm90YTogYXF1w60gdXNhbW9zIGxhIHBhbGFicmEgwqtmaWNoZXJvwrssIHBlcm8gcHVlZGUgdHJhdGFyc2UgZGUgIgorImN1YWxxdWllciBvYmpldG8gZGVsIHNpc3RlbWEgZGUgZmljaGVyb3MgcXVlIGRwa2cgcHVlZGEgbWFuZWphciwgaW5jbHV5ZW5kbyAiCisiZGlyZWN0b3Jpb3MsIGRpc3Bvc2l0aXZvcywgZXRjKS4gU2UgcHVlZGUgdXNhciBwYXJhIGZvcnphciBxdWUgcHJvZ3JhbWFzIHF1ZSAiCisibm9ybWFsbWVudGUgc2UgaW5zdGFsYW4gY29uIGJpdCBzZXR1aWQgc2UgaW5zdGFsZW4gc2luIGVzdGEgbWFyY2EsIG8gcXVlICIKKyJzw7NsbyBzZWFuIGVqZWN1dGFibGVzIHBvciB1biBncnVwbyBlbiBjb25jcmV0by4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6MjIKK21zZ2lkICIiCisiQjxkcGtnLXN0YXRvdmVycmlkZT4gaXMgYSB1dGlsaXR5IHRvIG1hbmFnZSB0aGUgbGlzdCBvZiBzdGF0IG92ZXJyaWRlcy4gSXQgIgorImhhcyB0aHJlZSBiYXNpYyBmdW5jdGlvbnM6IGFkZGluZywgcmVtb3ZpbmcgYW5kIGxpc3Rpbmcgb3ZlcnJpZGVzLiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1zdGF0b3ZlcnJpZGU+IGVzIHVuYSBoZXJyYW1pZW50YSBwYXJhIGFkbWluaXN0cmFyIGxhIGxpc3RhIGRlICIKKyJzdXN0aXR1Y2lvbmVzLiBUaWVuZSB0cmVzIGZ1bmNpb25lcyBiw6FzaWNhczogYcOxYWRpciwgZWxpbWluYXIgeSBsaXN0YXIgbGFzICIKKyJleGNlcGNpb25lcy4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjI0CisjLCBuby13cmFwCittc2dpZCAiQjwtLWFkZD5JPCB1c2VyIGdyb3VwIG1vZGUgZmlsZT4iCittc2dzdHIgIkI8LS1hZGQ+STwgdXN1YXJpbyBncnVwbyBtb2RvIGZpY2hlcm8+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjMyCittc2dpZCAiIgorIkFkZCBhbiBvdmVycmlkZSBmb3IgSTxmaWxlPi4gSTxmaWxlPiBkb2VzIG5vdCBuZWVkIHRvIGV4aXN0IHdoZW4gdGhpcyAiCisiY29tbWFuZCBpcyB1c2VkOyB0aGUgb3ZlcnJpZGUgd2lsbCBiZSBzdG9yZWQgYW5kIHVzZWQgbGF0ZXIuICBVc2VycyBhbmQgIgorImdyb3VwcyBjYW4gYmUgc3BlY2lmaWVkIGJ5IHRoZWlyIG5hbWUgKGZvciBleGFtcGxlIEI8cm9vdD4gb3IgQjxub2JvZHk+KSwgb3IgIgorImJ5IHRoZWlyIG51bWJlciBieSBwcmVwZW5kaW5nIHRoZSBudW1iZXIgd2l0aCBhIGBCPCM+JyAoZm9yIGV4YW1wbGUgQjwjMD4gb3IgIgorIkI8IzY1NTM0PikuIFRoZSBJPG1vZGU+IG5lZWRzIHRvIGJlIHNwZWNpZmllZCBpbiBvY3RhbC4iCittc2dzdHIgIiIKKyJBw7FhZGUgdW5hIHN1c3RpdHVjacOzbiBwYXJhIGVsIEI8ZmljaGVybz4uIE5vIGVzIG5lY2VzYXJpbyBxdWUgZWwgSTxmaWNoZXJvPiAiCisiZXhpc3RhIGN1YW5kbyBzZSB1c2UgZXN0YSBvcmRlbiwgbGEgc3VzdGl0dWNpw7NuIHNlIGd1YXJkYXLDoSBwYXJhIHVzYXJzZSAiCisicG9zdGVyaW9ybWVudGUuIExvcyB1c3VhcmlvcyB5IGxvcyBncnVwb3Mgc2UgcHVlZGVuIGRlZmluaXIgcG9yIHN1IG5vbWJyZSAiCisiKHBvciBlamVtcGxvIEI8cm9vdD4gbyBCPG5vYm9keT4pLCBvIHBvciBzdSBuw7ptZXJvIHByZWNlZGlkbyBwb3IgdW4gQjwjPiAiCisiKHBvciBlamVtcGxvIEI8IzA+IG8gQjwjNjU1MzQ+KS4gRWwgSTxtb2RvPiBzZSBkZWJlIGRlZmluaXIgZW4gYmFzZSBhbCAiCisic2lzdGVtYSBvY3RhbC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6MzUKK21zZ2lkICIiCisiSWYgLS11cGRhdGUgaXMgc3BlY2lmaWVkIGFuZCBJPGZpbGU+IGV4aXN0cywgaXQgaXMgaW1tZWRpYXRlbHkgc2V0IHRvIHRoZSAiCisibmV3IG93bmVyIGFuZCBtb2RlLiIKK21zZ3N0ciAiIgorIlNpIHNlIHByb3BvcmNpb25hIGxhIG9wY2nDs24gwqstLXVwZGF0ZcK7IHkgZWwgSTxmaWNoZXJvPiBleGlzdGUsIHNlIGxlIGFzaWduYSAiCisiaW5tZWRpYXRhbWVudGUgZWwgbnVldm8gcHJvcGlldGFyaW8geSBtb2RvLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODozOQorbXNnaWQgIiIKKyJSZW1vdmUgYW4gb3ZlcnJpZGUgZm9yIEk8ZmlsZT4sIHRoZSBzdGF0dXMgb2YgSTxmaWxlPiBpcyBsZWZ0IHVuY2hhbmdlZCBieSAiCisidGhpcyBjb21tYW5kLiIKK21zZ3N0ciAiIgorIkVsaW1pbmEgdW5hIHN1c3RpdHVjacOzbiBwYXJhIGVsIEk8ZmljaGVybz4sIGVzdGEgb3JkZW4gbm8gbW9kaWZpY2EgZWwgZXN0YWRvICIKKyJkZWwgQjxmaWNoZXJvPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjM5CisjLCBuby13cmFwCittc2dpZCAiQjwtLWxpc3Q+IFtJPGdsb2ItcGF0dGVybj5dIgorbXNnc3RyICJCPC0tbGlzdD4gW0k8Y29tb2TDrW4+XSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo0NAorbXNnaWQgIiIKKyJMaXN0IGFsbCBvdmVycmlkZXMuIElmIGEgZ2xvYiBwYXR0ZXJuIGlzIHNwZWNpZmllZCByZXN0cmljdCB0aGUgb3V0cHV0IHRvICIKKyJvdmVycmlkZXMgd2hpY2ggbWF0Y2ggdGhlIGdsb2IuIElmIHRoZXJlIGFyZSBubyBvdmVycmlkZXMgb3Igbm9uZSBtYXRjaCB0aGUgIgorImdsb2IgQjxkcGtnLXN0YXRvdmVycmlkZT4gd2lsbCBleGl0IHdpdGggYW4gZXhpdGNvZGUgb2YgMS4iCittc2dzdHIgIiIKKyJMaXN0YSB0b2RhcyBsYXMgc3VzdGl0dWNpb25lcy4gU2kgc2UgZGVmaW5lIHVuIGNvbW9kw61uLCByZXN0cmluZ2lyw6EgbGEgIgorInNhbGlkYSBhIGxvIHF1ZSBjb25jdWVyZGUgY29uIGVsIHBhdHLDs24uIFNpIG5vIGhheSBuaW5ndW5hIHN1c3RpdHVjacOzbiBvICIKKyJuaW5ndW5hIGNvbmN1ZXJkYSBjb24gZWwgcGF0csOzbiwgQjxkcGtnLXN0YXRvdmVycmlkZT4gZmluYWxpemFyw6EgY29uIHVuICIKKyJjw7NkaWdvIGRlIHNhbGlkYSBkZSAxLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo1NgorbXNnaWQgIiIKKyJDaGFuZ2UgdGhlIEk8ZGlyZWN0b3J5PiBvZiB0aGUgZHBrZyBkYXRhYmFzZSB3aGVyZSB0aGUgc3RhdG92ZXJyaWRlIGZpbGUgaXMgIgorImFsc28gc3RvcmVkLiBEZWZhdWx0cyB0byBJPC92YXIvbGliL2Rwa2c+LiIKK21zZ3N0ciAiIgorIkNhbWJpYSBlbCBJPGRpcmVjdG9yaW8+IGNvbiBsYSBiYXNlIGRlIGRhdG9zIGRlIGRwa2csIGRvbmRlIHRhbWJpw6luIHNlICIKKyJndWFyZGEgbGEgaW5mb3JtYWNpw7NuIHJlbGF0aXZhIGFsIGZpY2hlcm8gwqtzdGF0b3ZlcnJpZGXCuy4gUG9yIG9taXNpw7NuIGVzIMKrLyIKKyJ2YXIvbGliL2Rwa2fCuy4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjU2IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMzYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tZm9yY2U+IgorbXNnc3RyICJCPC0tZm9yY2U+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjYwCittc2dpZCAiIgorIkZvcmNlIGFuIGFjdGlvbiwgZXZlbiBpZiBhIHNhbml0eSBjaGVjayB3b3VsZCBvdGhlcndpc2UgcHJvaGliaXQgaXQuICBUaGlzICIKKyJpcyBuZWNlc3NhcnkgdG8gb3ZlcnJpZGUgYW4gZXhpc3Rpbmcgb3ZlcnJpZGUuIgorbXNnc3RyICIiCisiRnVlcnphIHVuYSBhY2Npw7NuLCBpbmNsdXNvIHNpIMOpc3RhIHB1ZGllc2UgcmVzdWx0YXIgcGVyanVkaWNpYWwuIEVzICIKKyJuZWNlc2FyaW8gcGFyYSBwb2RlciBtb2RpZmljYXIgdW5hIHN1c3RpdHVjacOzbiBleGlzdGVudGUuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo2MAorIywgbm8td3JhcAorbXNnaWQgIkI8LS11cGRhdGU+IgorbXNnc3RyICJCPC0tdXBkYXRlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo2NAorbXNnaWQgIiIKKyJJbW1lZGlhdGVseSB0cnkgdG8gY2hhbmdlIHRoZSBmaWxlIHRvIHRoZSBuZXcgb3duZXIgYW5kIG1vZGUgaWYgaXQgZXhpc3RzLiIKK21zZ3N0ciAiIgorIlRyYXRhIGlubWVkaWF0YW1lbnRlIGRlIGNhbWJpYXIgZWwgZmljaGVybyBhbCBudWV2byBwcm9waWV0YXJpbyB5IG1vZG8sIGRlICIKKyJleGlzdGlyLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo2NworbXNnaWQgIkJlIGxlc3MgdmVyYm9zZSBhYm91dCB3aGF0IHdlIGRvLiIKK21zZ3N0ciAiUmVkdWNlIGVsIG5pdmVsIGRlIGluZm9ybWFjacOzbiBkZSBsYXMgYWNjaW9uZXMgdG9tYWRhcy4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXN0YXRvdmVycmlkZS44Ojc1CisjLCBuby13cmFwCittc2dpZCAiSTwvdmFyL2xpYi9kcGtnL3N0YXRvdmVycmlkZT4iCittc2dzdHIgIkk8L3Zhci9saWIvZHBrZy9zdGF0b3ZlcnJpZGU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjgwCittc2dpZCAiIgorIkZpbGUgd2hpY2ggY29udGFpbnMgdGhlIGN1cnJlbnQgbGlzdCBvZiBzdGF0IG92ZXJyaWRlcyBvZiB0aGUgc3lzdGVtLiBJdCBpcyAiCisibG9jYXRlZCBpbiB0aGUgZHBrZyBhZG1pbmlzdHJhdGlvbiBkaXJlY3RvcnksIGFsb25nIHdpdGggb3RoZXIgZmlsZXMgIgorImltcG9ydGFudCB0byBkcGtnLCBzdWNoIGFzIGBzdGF0dXMnIG9yIGBhdmFpbGFibGUnLiIKK21zZ3N0ciAiIgorIkVsIGZpY2hlcm8gcXVlIGNvbnRpZW5lIGxhIGxpc3RhIGFjdHVhbCBkZSBzdXN0aXR1Y2lvbmVzIGRlIHByb3BpZWRhZGVzIGRlbCAiCisic2lzdGVtYS4gU2UgZW5jdWVudHJhIGVuIGVsIGRpcmVjdG9yaW8gZGUgYWRtaW5pc3RyYWNpw7NuIGRlIGRwa2csIGp1bnRvIGNvbiAiCisib3Ryb3MgZmljaGVyb3MgaW1wb3J0YW50ZXMgcGFyYSBkcGtnIGNvbW8gwqtzdGF0dXPCuyBvIMKrYXZhaWxhYmxlwrsuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjgzCittc2dpZCAiIgorIk5vdGU6IEI8ZHBrZy1zdGF0b3ZlcnJpZGU+IHByZXNlcnZlcyB0aGUgb2xkIGNvcHkgb2YgdGhpcyBmaWxlLCB3aXRoICIKKyJleHRlbnNpb24gXCItb2xkXCIsIGJlZm9yZSByZXBsYWNpbmcgaXQgd2l0aCB0aGUgbmV3IG9uZS4iCittc2dzdHIgIiIKKyJOb3RhOiBCPGRwa2ctc3RhdG92ZXJyaWRlPiBwcmVzZXJ2YSB1bmEgY29waWEgYW50aWd1YSBkZWwgZmljaGVybyBjb24gbGEgIgorImV4dGVuc2nDs24gwqstb2xkwrsgYW50ZXMgZGUgcmVlbXBsYXphcmxhIGNvbiB1bmEgbnVldmEuIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy10cmlnZ2VyLjE6MQorIywgbm8td3JhcAorbXNnaWQgImRwa2ctdHJpZ2dlciIKK21zZ3N0ciAiZHBrZy10cmlnZ2VyIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXRyaWdnZXIuMTo0Cittc2dpZCAiZHBrZy10cmlnZ2VyIC0gYSBwYWNrYWdlIHRyaWdnZXIgdXRpbGl0eSIKK21zZ3N0ciAiZHBrZy10cmlnZ2VyIC0gSGVycmFtaWVudGEgZGUgZGlzcGFyYWRvcmVzIGRlIHBhcXVldGUiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctdHJpZ2dlci4xOjgKK21zZ2lkICJCPGRwa2ctdHJpZ2dlcj4gW0k8b3B0aW9uPi4uLl0gSTx0cmlnZ2VyLW5hbWU+IgorbXNnc3RyICJCPGRwa2ctdHJpZ2dlcj4gW0k8b3BjacOzbj4uLi5dIEk8bm9tYnJlLWRpc3BhcmFkb3I+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXRyaWdnZXIuMToxMQorbXNnaWQgIkI8ZHBrZy10cmlnZ2VyPiBbSTxvcHRpb24+Li4uXSBJPGNvbW1hbmQ+IgorbXNnc3RyICJCPGRwa2ctdHJpZ2dlcj4gW0k8b3BjacOzbj4uLi5dIEk8b3JkZW4+IgorCisjIHR5cGU6IFBsYWluIHRleHQKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctdHJpZ2dlci4xOjE1Cittc2dpZCAiIgorIkI8ZHBrZy10cmlnZ2VyPiBpcyBhIHRvb2wgdG8gZXhwbGljaXRseSBhY3RpdmF0ZSB0cmlnZ2VycyBhbmQgY2hlY2sgZm9yIGl0cyAiCisic3VwcG9ydCBvbiB0aGUgcnVubmluZyBCPGRwa2c+LiIKK21zZ3N0ciAiIgorIkI8ZHBrZy10cmlnZ2VyPiBlcyB1bmEgaGVycmFtaWVudGEgcGFyYSBhY3RpdmFyIGRpc3BhcmFkb3JlcyAiCisiaW50ZW5jaW9uYWRhbWVudGUgeSByZXZpc2FyIHN1IGNvbXBhdGliaWxpZGFkIGNvbiBsYSB2ZXJzacOzbiBkZSBCPGRwa2c+IGVuICIKKyJlamVjdWNpw7NuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy10cmlnZ2VyLjE6MjEKK21zZ2lkICIiCisiVGhpcyBjYW4gYmUgdXNlZCBieSBtYWludGFpbmVyIHNjcmlwdHMgaW4gY29tcGxleCBhbmQgY29uZGl0aW9uYWwgc2l0dWF0aW9ucyAiCisid2hlcmUgdGhlIGZpbGUgdHJpZ2dlcnMsIG9yIHRoZSBkZWNsYXJhdGl2ZSBCPGFjdGl2YXRlPiB0cmlnZ2VycyBjb250cm9sICIKKyJmaWxlIGRpcmVjdGl2ZSwgYXJlIGluc3VmZmljaWVudGx5IHJpY2guIEl0IGNhbiBhbHNvIGJlIHVzZWQgZm9yIHRlc3RpbmcgYW5kICIKKyJieSBzeXN0ZW0gYWRtaW5pc3RyYXRvcnMgKGJ1dCBub3RlIHRoYXQgdGhlIHRyaWdnZXJzIHdvbid0IGFjdHVhbGx5IGJlIHJ1biAiCisiYnkgQjxkcGtnLXRyaWdnZXI+KS4iCittc2dzdHIgIiIKKyJTZSBwdWVkZSB1c2FyIG1lZGlhbnRlIHNjcmlwdHMgZGVsIGRlc2Fycm9sbGFkb3IgZW4gc2l0dWFjaW9uZXMgY29tcGxlamFzIHkgIgorImNvbmRpY2lvbmFsZXMgZW4gbGFzIHF1ZSBsb3MgZmljaGVyb3MgZGUgZGlzcGFyYWRvcmVzLCBvIGxhIGRlY2xhcmFjacOzbiBkZSAiCisibGEgZGlyZWN0aXZhIEI8YWN0aXZhdGU+IGVuIGVsIGZpY2hlcm8gZGUgY29udHJvbCwgbm8gc29uIHN1ZmljaWVudGVtZW50ZSAiCisiaW5mb3JtYXRpdm9zLiBUYW1iacOpbiBzZSBwdWVkZSB1c2FyIHBhcmEgY29tcHJvYmFjaW9uZXMgeSBhZG1pbmlzdHJhZG9yZXMgZGUgIgorInNpc3RlbWFzIChwZXJvIHRlbmdhIGVuIGN1ZW50YSBxdWUgQjxkcGtnLXRyaWdnZXI+IG5vIGFjY2lvbmFyw6EgbG9zICIKKyJkaXNwYXJhZG9yZXMpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy10cmlnZ2VyLjE6MjMKK21zZ2lkICJVbnJlY29nbmlzZWQgdHJpZ2dlciBuYW1lIHN5bnRheGVzIGFyZSBhbiBlcnJvciBmb3IgQjxkcGtnLXRyaWdnZXI+LiIKK21zZ3N0ciAiIgorIkxhIHNpbnRheGlzIG5vIHJlY29ub2NpZGEgZGUgbm9tYnJlcyBkZSBkaXNwYXJhZG9yZXMgc29uIHVuIGVycm9yIHBhcmEgIgorIkI8ZHBrZy10cmlnZ2VyPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXRyaWdnZXIuMToyNQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1jaGVjay1zdXBwb3J0ZWQ+IgorbXNnc3RyICJCPC0tY2hlY2stc3VwcG9ydGVkPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy10cmlnZ2VyLjE6MzEKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIkNoZWNrIGlmIHRoZSBydW5uaW5nIEI8ZHBrZz4gc3VwcG9ydHMgdHJpZ2dlcnMgKHVzdWFsbHkgY2FsbGVkIGZyb20gYSAiCisjfCAicG9zdGluc3QpLiBXaWxsIGV4aXQgMCBpZiBhIHRyaWdnZXJzLWNhcGFibGUgQjxkcGtnPiBoYXMgcnVuLCBvciAxIHdpdGggIgorI3wgImFuIGVycm9yIG1lc3NhZ2UgdG8gc3RkZXJyIGlmIG5vdC4gTm9ybWFsbHksIGhvd2V2ZXIsIGl0IGlzIGJldHRlciBqdXN0ICIKKyN8ICJ0byBhY3RpdmF0ZSB0aGUgZGVzaXJlZCB0cmlnZ2VyIHdpdGggQjxkcGtnLXRyaWdnZXI+LiIKK21zZ2lkICIiCisiQ2hlY2sgaWYgdGhlIHJ1bm5pbmcgQjxkcGtnPiBzdXBwb3J0cyB0cmlnZ2VycyAodXN1YWxseSBjYWxsZWQgZnJvbSBhICIKKyJwb3N0aW5zdCkuIFdpbGwgZXhpdCBCPDA+IGlmIGEgdHJpZ2dlcnMtY2FwYWJsZSBCPGRwa2c+IGhhcyBydW4sIG9yIEI8MT4gIgorIndpdGggYW4gZXJyb3IgbWVzc2FnZSB0byBzdGRlcnIgaWYgbm90LiBOb3JtYWxseSwgaG93ZXZlciwgaXQgaXMgYmV0dGVyIGp1c3QgIgorInRvIGFjdGl2YXRlIHRoZSBkZXNpcmVkIHRyaWdnZXIgd2l0aCBCPGRwa2ctdHJpZ2dlcj4uIgorbXNnc3RyICIiCisiUmV2aXNhIHNpIGxhIHZlcnNpw7NuIGRlIEI8ZHBrZz4gZW4gZWplY3VjacOzbiBlcyBjb21wYXRpYmxlIGNvbiBkaXNwYXJhZG9yZXMgIgorIihoYWJpdHVhbG1lbnRlIGludm9jYWRvcyBtZWRpYW50ZSB1bmEgcG9zdC1pbnN0YWxhY2nDs24pLiBDaWVycmEgY29uIDAgc2kgIgorIkI8ZHBrZz4gZXMgY29tcGF0aWJsZSBjb24gbG9zIGRpc3BhcmFkb3JlcywgbyAxIGNvbiB1biBtZW5zYWplIGRlIGVycm9yIHBvciAiCisibGEgc2FsaWRhIGVzdMOhbmRhciBlbiBjYXNvIGRlIGZhbGxvLiBQb3Igb3RyYSBwYXJ0ZSwgZW4gZ2VuZXJhbCBlcyBtZWpvciAiCisiYWN0aXZhciBzw7NsbyBlbCBkaXNwYXJhZG9yIGRlc2VhZG8gY29uIEI8ZHBrZy10cmlnZ2VyPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXRyaWdnZXIuMTo0MworIywgbm8td3JhcAorbXNnaWQgIkI8LS1ieS1wYWNrYWdlPT5JPHBhY2thZ2U+IgorbXNnc3RyICJCPC0tYnktcGFja2FnZT0+STxwYXF1ZXRlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy10cmlnZ2VyLjE6NDkKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIk92ZXJyaWRlIHRyaWdnZXIgYXdhaXRlciAobm9ybWFsbHkgc2V0IGJ5IEI8ZHBrZz4gdGhyb3VnaCB0aGUgIgorI3wgIkRQS0dfTUFJTlRTQ1JJUFRfUEFDS0FHRSBlbnZpcm9ubWVudCB2YXJpYWJsZSBvZiB0aGUgbWFpbnRhaW5lciBzY3JpcHRzLCAiCisjfCAibmFtaW5nIHRoZSBwYWNrYWdlIHRvIHdoaWNoIHRoZSBzY3JpcHQgYmVsb25ncywgYW5kIHRoaXMgd2lsbCBiZSB1c2VkIGJ5ICIKKyN8ICJkZWZhdWx0KS4iCittc2dpZCAiIgorIk92ZXJyaWRlIHRyaWdnZXIgYXdhaXRlciAobm9ybWFsbHkgc2V0IGJ5IEI8ZHBrZz4gdGhyb3VnaCB0aGUgIgorIkI8RFBLR19NQUlOVFNDUklQVF9QQUNLQUdFPiBlbnZpcm9ubWVudCB2YXJpYWJsZSBvZiB0aGUgbWFpbnRhaW5lciBzY3JpcHRzLCAiCisibmFtaW5nIHRoZSBwYWNrYWdlIHRvIHdoaWNoIHRoZSBzY3JpcHQgYmVsb25ncywgYW5kIHRoaXMgd2lsbCBiZSB1c2VkIGJ5ICIKKyJkZWZhdWx0KS4iCittc2dzdHIgIiIKKyJJbnZhbGlkYSBsYSBlc3BlcmEgYWwgaW5pY2lvIGRlbCBkaXNwYXJhZG9yIChoYWJpdHVhbG1lbnRlIGRlZmluaWRvIGNvbiAiCisiQjxkcGtnPiBhIHRyYXbDqXMgZGUgbGEgdmFyaWFibGUgZGUgZW50b3JubyDCq0RQS0dfTUFJTlRTQ1JJUFRfUEFDS0FHRcK7IGVuIGxvcyAiCisic2NyaXB0cyBkZWwgZGVzYXJyb2xsYWRvciwgbm9tYnJhbmRvIGVsIHBhcXVldGUgYWwgcXVlIGVsIHNjcmlwdCBwZXJ0ZW5lY2UuICIKKyJFc3RlIGVzIGVsIGNvbXBvcnRhbWllbnRvIHBvciBvbWlzacOzbi4pIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy10cmlnZ2VyLjE6NDkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tbm8tYXdhaXQ+IgorbXNnc3RyICJCPC0tbm8tYXdhaXQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXRyaWdnZXIuMTo1NgorbXNnaWQgIiIKKyJUaGlzIG9wdGlvbiBhcnJhbmdlcyB0aGF0IHRoZSBjYWxsaW5nIHBhY2thZ2UgVCAoaWYgYW55KSBuZWVkIG5vdCBhd2FpdCB0aGUgIgorInByb2Nlc3Npbmcgb2YgdGhpcyB0cmlnZ2VyOyB0aGUgaW50ZXJlc3RlZCBwYWNrYWdlKHMpIEksIHdpbGwgbm90IGJlIGFkZGVkICIKKyJ0byBUJ3MgdHJpZ2dlciBwcm9jZXNzaW5nIGF3YWl0ZWQgbGlzdCBhbmQgVCdzIHN0YXR1cyBpcyB1bmNoYW5nZWQuICBUIG1heSAiCisiYmUgY29uc2lkZXJlZCBpbnN0YWxsZWQgZXZlbiB0aG91Z2ggSSBtYXkgbm90IHlldCBoYXZlIHByb2Nlc3NlZCB0aGUgdHJpZ2dlci4iCittc2dzdHIgIiIKKyJFc3RhIG9wY2nDs24gZGVmaW5lIHF1ZSBsYSBpbnZvY2FjacOzbiBhbCBwYXF1ZXRlIFQgKGRlIGV4aXN0aXIpIG5vIG5lY2VzaXRhICIKKyJlc3BlcmFyIGFsIHByb2Nlc2FtaWVudG8gZGUgZXN0ZSBkaXNwYXJhZG9yOyBlbCBwYXF1ZXRlKHMpIGludGVyZXNhZG8gSSBubyAiCisic2UgYcOxYWRpcsOhIGEgbGEgbGlzdGEgZGUgZXNwZXJhIGRlbCBwcm9jZXNhZG8gZGVsIGRpc3BhcmFkb3IsIHNpbiBjYW1iaWFyIGVsICIKKyJlc3RhZG8gZGUgVC4gUHVlZGUgcXVlIHNlIGNvbnNpZGVyZSBxdWUgVCBlc3TDoSBpbnN0YWxhZG8gYXVucXVlIG5vIHNlIGhheWEgIgorInByb2Nlc2FkbyBlbCBkaXNwYXJhZG9yLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctdHJpZ2dlci4xOjU2CisjLCBuby13cmFwCittc2dpZCAiQjwtLW5vLWFjdD4iCittc2dzdHIgIkI8LS1uby1hY3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXRyaWdnZXIuMTo1OQorbXNnaWQgIkp1c3QgdGVzdCwgZG8gbm90IGFjdHVhbGx5IGNoYW5nZSBhbnl0aGluZy4iCittc2dzdHIgIlJlYWxpemEgdW4gc2ltdWxhY3JvIHNpbiBjYW1iaW9zIGVuIGVsIHNpc3RlbWEuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXRyaWdnZXIuMTo2OQorbXNnaWQgIiIKKyJCPGRwa2c+KDEpLCBCPGRlYi10cmlnZ2Vycz4oNSksIEI8L3Vzci9zaGFyZS9kb2MvZHBrZy1kZXYvdHJpZ2dlcnMudHh0Lmd6Pi4iCittc2dzdHIgIiIKKyJCPGRwa2c+KDEpLCBCPGRlYi10cmlnZ2Vycz4oNSksIEI8L3Vzci9zaGFyZS9kb2MvZHBrZy1kZXYvdHJpZ2dlcnMudHh0Lmd6Pi4iCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLXZlbmRvci4xOjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLXZlbmRvciIKK21zZ3N0ciAiZHBrZy12ZW5kb3IiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctdmVuZG9yLjE6NAorbXNnaWQgImRwa2ctdmVuZG9yIC0gcXVlcmllcyBpbmZvcm1hdGlvbiBhYm91dCBkaXN0cmlidXRpb24gdmVuZG9ycyIKK21zZ3N0ciAiIgorImRwa2ctdmVuZG9yIC0gQ29uc3VsdGEgaW5mb3JtYWNpw7NuIHJlbGF0aXZhIGFsIHByb3ZlZWRvciBkZSBsYSBwdWJsaWNhY2nDs24iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctdmVuZG9yLjE6OAorbXNnaWQgIkI8ZHBrZy12ZW5kb3I+IFtJPG9wdGlvbj4uLi5dIEk8Y29tbWFuZD4iCittc2dzdHIgIkI8ZHBrZy12ZW5kb3I+IFtJPG9wY2nDs24+Li4uXSBJPG9yZGVuPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy12ZW5kb3IuMToxMworbXNnaWQgIiIKKyJCPGRwa2ctdmVuZG9yPiBpcyBhIHRvb2wgdG8gcXVlcnkgaW5mb3JtYXRpb24gYWJvdXQgdmVuZG9ycyBsaXN0ZWQgaW4gQjwvZXRjLyIKKyJkcGtnL29yaWdpbnM+LiBCPC9ldGMvZHBrZy9vcmlnaW5zL2RlZmF1bHQ+IGNvbnRhaW5zIGluZm9ybWF0aW9uIGFib3V0IHRoZSAiCisiY3VycmVudCB2ZW5kb3IuIgorbXNnc3RyICIiCisiQjxkcGtnLXZlbmRvcj4gZXMgdW5hIGhlcnJhbWllbnRhIHBhcmEgY29uc3VsdGFyIGluZm9ybWFjacOzbiBkZSBsb3MgIgorInByb3ZlZWRvcmVzIGxpc3RhZG9zIGVuIEI8L2V0Yy9kcGtnL29yaWdpbnM+LiBCPC9ldGMvZHBrZy9vcmlnaW5zL2RlZmF1bHQ+ICIKKyJjb250aWVuZSBpbmZvcm1hY2nDs24gYWNlcmNhIGRlbCBwcm92ZWVkb3IgYWN0dWFsLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctdmVuZG9yLjE6MTUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0taXM+STwgdmVuZG9yPiIKK21zZ3N0ciAiQjwtLWlzPkk8IHByb3ZlZWRvcj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctdmVuZG9yLjE6MTkKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIkV4aXRzIHdpdGggMCBpZiB0aGUgY3VycmVudCB2ZW5kb3IgaXMgSTx2ZW5kb3I+LiBPdGhlcndpc2UgZXhpdHMgd2l0aCBub24tIgorI3wgInplcm8uIgorbXNnaWQgIiIKKyJFeGl0cyB3aXRoIEI8MD4gaWYgdGhlIGN1cnJlbnQgdmVuZG9yIGlzIEk8dmVuZG9yPi4gT3RoZXJ3aXNlIGV4aXRzIHdpdGggbm9uLSIKKyJ6ZXJvLiIKK21zZ3N0ciAiIgorIkZpbmFsaXphIGNvbiAwIHNpIEk8cHJvdmVlZG9yPiBlcyBlbCBwcm92ZWVkb3IgYWN0dWFsLiBEZSBubyBzZXIgYXPDrSwgIgorImZpbmFsaXphIGNvbiB1biB2YWxvciBkaXN0aW50byBkZSAwLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctdmVuZG9yLjE6MTkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tZGVyaXZlcy1mcm9tPkk8IHZlbmRvcj4iCittc2dzdHIgIkI8LS1kZXJpdmVzLWZyb20+STwgcHJvdmVlZG9yPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy12ZW5kb3IuMToyNAorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiRXhpdHMgd2l0aCAwIGlmIHRoZSBjdXJyZW50IHZlbmRvciBkaXN0cmlidXRpb24gaXMgYSBkZXJpdmF0aXZlIG9mICIKKyN8ICJJPHZlbmRvcj4sIG90aGVyd2lzZSBleGl0cyB3aXRoIG5vbi16ZXJvLiBJdCB1c2VzIHRoZSBcIlBhcmVudFwiIGZpZWxkIHRvICIKKyN8ICJicm93c2UgYWxsIGFuY2VzdG9ycyBvZiB0aGUgY3VycmVudCB2ZW5kb3IuIgorbXNnaWQgIiIKKyJFeGl0cyB3aXRoIEI8MD4gaWYgdGhlIGN1cnJlbnQgdmVuZG9yIGRpc3RyaWJ1dGlvbiBpcyBhIGRlcml2YXRpdmUgb2YgIgorIkk8dmVuZG9yPiwgb3RoZXJ3aXNlIGV4aXRzIHdpdGggbm9uLXplcm8uIEl0IHVzZXMgdGhlIFwiUGFyZW50XCIgZmllbGQgdG8gIgorImJyb3dzZSBhbGwgYW5jZXN0b3JzIG9mIHRoZSBjdXJyZW50IHZlbmRvci4iCittc2dzdHIgIiIKKyJGaW5hbGl6YSBjb24gMCBzaSBlbCBwcm92ZWVkb3IgZGUgbGEgZGlzdHJpYnVjacOzbiBhY3R1YWwgZGVyaXZhIGRlICIKKyJJPHByb3ZlZWRvcj4uIERlIG5vIHNlciBhc8OtLCBmaW5hbGl6YSBjb24gdW4gdmFsb3IgZGlzdGludG8gZGUgMC4gVXNlIGVsICIKKyJjYW1wbyDCq1BhcmVudMK7IHBhcmEgZXhwbG9yYXIgbG9zIHByb3ZlZWRvcmVzIGFudGVyaW9yZXMgYWwgYWN0dWFsLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctdmVuZG9yLjE6MjQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tcXVlcnk+STwgZmllbGQ+IgorbXNnc3RyICJCPC0tcXVlcnk+STwgY2FtcG8+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXZlbmRvci4xOjI4Cittc2dpZCAiIgorIlByaW50IG9uIHN0YW5kYXJkIG91dHB1dCB0aGUgdmFsdWUgb2YgdGhlIHZlbmRvci1zcGVjaWZpYyBJPGZpZWxkPiBmb3IgdGhlICIKKyJjdXJyZW50IHZlbmRvci4iCittc2dzdHIgIiIKKyJNdWVzdHJhIHBvciBsYSBzYWxpZGEgZXN0w6FuZGFyIGVsIHZhbG9yIGVzcGVjw61maWNvIGRlIHByb3ZlZWRvciBJPGNhbXBvPiBlbiAiCisicmVsYWNpw7NuIGFsIHByb3ZlZWRvciBhY3R1YWwuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy12ZW5kb3IuMTozNgorIywgbm8td3JhcAorbXNnaWQgIkI8LS12ZW5kb3I+STwgdmVuZG9yPiIKK21zZ3N0ciAiQjwtLXZlbmRvcj5JPCBwcm92ZWVkb3I+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXZlbmRvci4xOjQxCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJBc3N1bWVzIHRoZSBjdXJyZW50IHZlbmRvciBpcyBJPHZlbmRvcj4gaW5zdGVhZCBvZiBkaXNjb3ZlcmluZyBpdCB3aXRoICIKKyN8ICJ0aGUgREVCX1ZFTkRPUiBlbnZpcm9ubWVudCB2YXJpYWJsZSBvciBCPC9ldGMvZHBrZy9vcmlnaW5zL2RlZmF1bHQ+LiIKK21zZ2lkICIiCisiQXNzdW1lcyB0aGUgY3VycmVudCB2ZW5kb3IgaXMgSTx2ZW5kb3I+IGluc3RlYWQgb2YgZGlzY292ZXJpbmcgaXQgd2l0aCB0aGUgIgorIkI8REVCX1ZFTkRPUj4gZW52aXJvbm1lbnQgdmFyaWFibGUgb3IgQjwvZXRjL2Rwa2cvb3JpZ2lucy9kZWZhdWx0Pi4iCittc2dzdHIgIiIKKyJTdXBvbmUgcXVlIGVsIHByb3ZlZWRvciBhY3R1YWwgZXMgSTxwcm92ZWVkb3I+LCBlbiBsdWdhciBkZSBkZWZpbmlybG8gY29uIGxhICIKKyJ2YXJpYWJsZSBkZSBlbnRvcm5vIMKrREVCX1ZFTkRPUsK7IG8gQjwvZXRjL2Rwa2cvb3JpZ2lucy9kZWZhdWx0Pi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXZlbmRvci4xOjQzCisjLCBuby13cmFwCittc2dpZCAiQjxERUJfVkVORE9SPiIKK21zZ3N0ciAiQjxERUJfVkVORE9SPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy12ZW5kb3IuMTo0NworbXNnaWQgIiIKKyJUaGlzIHNldHRpbmcgZGVmaW5lcyB0aGUgY3VycmVudCB2ZW5kb3IuIElmIG5vdCBzZXQsIGl0IHdpbGwgZGlzY292ZXIgdGhlICIKKyJjdXJyZW50IHZlbmRvciBieSByZWFkaW5nIEI8L2V0Yy9kcGtnL29yaWdpbnMvZGVmYXVsdD4uIgorbXNnc3RyICIiCisiRXN0YSBvcGNpw7NuIGRlZmluZSBlbCBwcm92ZWVkb3IgYWN0dWFsLiBEZSBlc3RhciB2YWPDrW8sIGVsIHByb3ZlZWRvciBhY3R1YWwgIgorInNlIGRlZmluaXLDoSBsZXllbmRvIEI8L2V0Yy9kcGtnL29yaWdpbnMvZGVmYXVsdD4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXZlbmRvci4xOjUwIHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0OTgKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAwOSBSYXBoYVxcWzplXWwgSGVydHpvZyIKK21zZ3N0ciAiQ29weXJpZ2h0IFxcKGNvIDIwMDkgUmFwaGFcXFs6ZV1sIEhlcnR6b2ciCisKKyMuIHR5cGU6IFRICisjOiBkc2VsZWN0LjE6MQorIywgbm8td3JhcAorbXNnaWQgImRzZWxlY3QiCittc2dzdHIgImRzZWxlY3QiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0Cittc2dpZCAiZHNlbGVjdCAtIERlYmlhbiBwYWNrYWdlIG1hbmFnZW1lbnQgZnJvbnRlbmQiCittc2dzdHIgImRzZWxlY3QgLSBJbnRlcmZheiBwYXJhIGxhIGdlc3Rpw7NuIGRlIHBhcXVldGVzIGRlIERlYmlhbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjgKKyMsIGZ1enp5CisjfCBtc2dpZCAiQjxkcGtnPiBbSTxvcHRpb25zPl0gSTxhY3Rpb24+IgorbXNnaWQgIkI8ZHNlbGVjdD4gW0k8b3B0aW9uPi4uLl0gW0k8YWN0aW9uPl0iCittc2dzdHIgIkI8ZHBrZz4gW0k8b3BjaW9uZXM+XSBJPGFjY2nDs24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTcKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiQjxkc2VsZWN0PlxuIgorImlzIG9uZSBvZiB0aGUgcHJpbWFyeSB1c2VyIGludGVyZmFjZXMgZm9yIG1hbmFnaW5nIHBhY2thZ2VzIG9uIGEgRGViaWFuXG4iCisic3lzdGVtLiBBdCB0aGUgQjxkc2VsZWN0PiBtYWluIG1lbnUsIHRoZSBzeXN0ZW0gYWRtaW5pc3RyYXRvciBjYW46XG4iCisiIC0gVXBkYXRlIHRoZSBsaXN0IG9mIGF2YWlsYWJsZSBwYWNrYWdlIHZlcnNpb25zLFxuIgorIiAtIFZpZXcgdGhlIHN0YXR1cyBvZiBpbnN0YWxsZWQgYW5kIGF2YWlsYWJsZSBwYWNrYWdlcyxcbiIKKyIgLSBBbHRlciBwYWNrYWdlIHNlbGVjdGlvbnMgYW5kIG1hbmFnZSBkZXBlbmRlbmNpZXMsXG4iCisiIC0gSW5zdGFsbCBuZXcgcGFja2FnZXMgb3IgdXBncmFkZSB0byBuZXdlciB2ZXJzaW9ucy5cbiIKK21zZ3N0ciAiIgorIkI8ZHNlbGVjdD5cbiIKKyJlcyB1bmEgZGUgbGFzIHByaW5jaXBhbGVzIGludGVyZmFjZXMgcGFyYSBsYSBnZXN0acOzbiBkZSBwYXF1ZXRlcyBlbiB1blxuIgorInNpc3RlbWEgRGViaWFuIEdOVS9MaW51eC4gRWwgbWVuw7ogcHJpbmNpcGFsIGRlIEI8ZHNlbGVjdD4gcGVybWl0ZSBhbFxuIgorImFkbWluaXN0cmFkb3IgZGVsIHNpc3RlbWE6XG4iCisiIC0gQWN0dWFsaXphciBsYSBsaXN0YSBkZSBwYXF1ZXRlcyBkaXNwb25pYmxlc1xuIgorIiAtIFZlciBlbCBlc3RhZG8gZGUgbG9zIHBhcXVldGVzIGluc3RhbGFkb3MgeSBkaXNwb25pYmxlc1xuIgorIiAtIEFsdGVyYXIgc2VsZWNjaW9uZXMgZGUgcGFxdWV0ZXMgeSBnZXN0aW9uYXIgbGFzIGRlcGVuZGVuY2lhc1xuIgorIiAtIEluc3RhbGFyIHBhcXVldGVzIG51ZXZvcyBvIGFjdHVhbGl6YXJsb3MgYSBudWV2YXMgdmVyc2lvbmVzXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToyOQorbXNnaWQgIiIKKyJCPGRzZWxlY3Q+IG9wZXJhdGVzIGFzIGEgZnJvbnQtZW5kIHRvIEI8ZHBrZz4oMSksIHRoZSBsb3ctbGV2ZWwgZGViaWFuICIKKyJwYWNrYWdlIGhhbmRsaW5nIHRvb2wuIEl0IGZlYXR1cmVzIGEgZnVsbC1zY3JlZW4gcGFja2FnZSBzZWxlY3Rpb25zIG1hbmFnZXIgIgorIndpdGggcGFja2FnZSBkZXBlbmRzIGFuZCBjb25mbGljdHMgcmVzb2x2ZXIuIFdoZW4gcnVuIHdpdGggYWRtaW5pc3RyYXRvciAiCisicHJpdmlsZWdlcywgcGFja2FnZXMgY2FuIGJlIGluc3RhbGxlZCwgdXBncmFkZWQgYW5kIHJlbW92ZWQuIFZhcmlvdXMgYWNjZXNzICIKKyJtZXRob2RzIGNhbiBiZSBjb25maWd1cmVkIHRvIHJldHJpZXZlIGF2YWlsYWJsZSBwYWNrYWdlIHZlcnNpb24gaW5mb3JtYXRpb24gIgorImFuZCBpbnN0YWxsYWJsZSBwYWNrYWdlcyBmcm9tIHBhY2thZ2UgcmVwb3NpdG9yaWVzLiAgRGVwZW5kaW5nIG9uIHRoZSB1c2VkICIKKyJhY2Nlc3MgbWV0aG9kLCB0aGVzZSByZXBvc2l0b3JpZXMgY2FuIGJlIHB1YmxpYyBhcmNoaXZlIHNlcnZlcnMgb24gdGhlICIKKyJpbnRlcm5ldCwgbG9jYWwgYXJjaGl2ZSBzZXJ2ZXJzIG9yIGNkcm9tcy4gIFRoZSByZWNvbW1lbmRlZCBhY2Nlc3MgbWV0aG9kIGlzICIKKyJJPGFwdD4sIHdoaWNoIGlzIHByb3ZpZGVkIGJ5IHRoZSBwYWNrYWdlIEI8YXB0Pi4iCittc2dzdHIgIiIKKyJCPGRzZWxlY3Q+IGZ1bmNpb25hIGNvbW8gdW5hIGludGVyZmF6IGRlIEI8ZHBrZyg4KT4sIGxhIGhlcnJhbWllbnRhIGRlIGJham8gIgorIm5pdmVsIGRlIG1hbmlwdWxhY2nDs24gZGUgcGFxdWV0ZXMgZGUgRGViaWFuLiBPZnJlY2UgdW5hIHBhbnRhbGxhIGNvbXBsZXRhIGRlICIKKyJzZWxlY2Npw7NuIGRlIHBhcXVldGVzIGNvbiB1biBzb2x1Y2lvbmFkb3IgZGUgZGVwZW5kZW5jaWFzIHkgY29uZmxpY3Rvcy4gIgorIkN1YW5kbyBzZSBlamVjdXRhIGNvbiBwZXJtaXNvcyBkZSBhZG1pbmlzdHJhZG9yIHBlcm1pdGUgaW5zdGFsYXIsIGFjdHVhbGl6YXIgIgorInkgZWxpbWluYXIgcGFxdWV0ZXMuIFB1ZWRlIGNvbmZpZ3VyYXIgdmFyaW9zIG3DqXRvZG9zIGRlIGFjY2VzbyBwYXJhIGNvbm9jZXIgIgorImxhcyB2ZXJzaW9uZXMgZGlzcG9uaWJsZXMgZSBpbnN0YWxhYmxlcyBkZXNkZSByZXBvc2l0b3Jpb3MgZGUgcGFxdWV0ZXMuICIKKyJEZXBlbmRpZW5kbyBkZWwgbcOpdG9kbyBkZSBhY2Nlc28gdXNhZG8sIGVzb3MgcmVwb3NpdG9yaW9zIGRlIHBhcXVldGVzIHB1ZWRlbiAiCisic2VyIGFyY2hpdm9zIHDDumJsaWNvcyBlbiBzZXJ2aWRvcmVzIGEgdHJhdsOpcyBkZSBJbnRlcm5ldCwgc2Vydmlkb3JlcyBkZSAiCisiYXJjaGl2byBsb2NhbGVzIG8gYmllbiBkaXNjb3Mgw7NwdGljb3MuIEVsIG3DqXRvZG8gZGUgYWNjZXNvIHJlY29tZW5kYWRvIGVzICIKKyJJPGFwdD4sIHByb3BvcmNpb25hZG8gcG9yIGVsIHBhcXVldGUgQjxhcHQ+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjM1CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJOb3JtYWxseSBCPGRzZWxlY3Q+IGlzIGludm9rZWQgd2l0aG91dCBwYXJhbWV0ZXJzLiBBbiBpbnRlcmFjdGl2ZSBtZW51IGlzICIKKyN8ICJwcmVzZW50ZWQsIG9mZmVyaW5nIHRoZSB1c2VyIGEgbGlzdCBvZiBhY3Rpb25zLiBJZiBhbiBhY3Rpb24gaXMgZ2l2ZW4gYXMgIgorI3wgImFyZ3VtZW50LCB0aGVuIHRoYXQgYWN0aW9uIGlzIHN0YXJ0ZWQgaW1tZWRpYXRlbHkuIFNldmVyYWwgY29tbWFuZGxpbmUgIgorI3wgInBhcmFtZXRlcnMgYXJlIHN0aWxsIGF2YWlsYWJsZSB0byBtb2RpZnkgdGhlIHJ1bm5pbmcgYmVoYXZpb3VyIG9mICIKKyN8ICJCPGRzZWxlY3Q+IG9yIHNob3cgYWRkaXRpb25hbCBpbmZvcm1hdGlvbiBhYm91dCB0aGUgcHJvZ3JhbS4iCittc2dpZCAiIgorIk5vcm1hbGx5IEI8ZHNlbGVjdD4gaXMgaW52b2tlZCB3aXRob3V0IHBhcmFtZXRlcnMuIEFuIGludGVyYWN0aXZlIG1lbnUgaXMgIgorInByZXNlbnRlZCwgb2ZmZXJpbmcgdGhlIHVzZXIgYSBsaXN0IG9mIGFjdGlvbnMuIElmIGFuIGFjdGlvbiBpcyBnaXZlbiBhcyAiCisiYXJndW1lbnQsIHRoZW4gdGhhdCBhY3Rpb24gaXMgc3RhcnRlZCBpbW1lZGlhdGVseS4gU2V2ZXJhbCBjb21tYW5kIGxpbmUgIgorInBhcmFtZXRlcnMgYXJlIHN0aWxsIGF2YWlsYWJsZSB0byBtb2RpZnkgdGhlIHJ1bm5pbmcgYmVoYXZpb3VyIG9mIEI8ZHNlbGVjdD4gIgorIm9yIHNob3cgYWRkaXRpb25hbCBpbmZvcm1hdGlvbiBhYm91dCB0aGUgcHJvZ3JhbS4iCittc2dzdHIgIiIKKyJIYWJpdHVhbG1lbnRlLCBCPGRzZWxlY3Q+IHNlIGludm9jYSBzaW4gcGFyw6FtZXRyb3MuIFNlIHByZXNlbnRhIHVuIG1lbsO6ICIKKyJpbnRlcmFjdGl2byBxdWUgb2ZyZWNlIGFsIHVzdWFyaW8gdW5hIGxpc3RhIGRlIGFjY2lvbmVzLiBTaSBzZSBkYSB1bmEgYWNjacOzbiAiCisiY29tbyBhcmd1bWVudG8gc2UgZWplY3V0YXLDoSBpbm1lZGlhdGFtZW50ZS4gSGF5IG11Y2hhcyDDs3JkZW5lcyBkaXNwb25pYmxlcyAiCisicGFyYSBtb2RpZmljYXIgZWwgY29tcG9ydGFtaWVudG8gZGUgQjxkc2VsZWN0PiBvIHRhbWJpw6luIHBhcmEgbW9zdHJhciAiCisiaW5mb3JtYWNpw7NuIGFkaWNpb25hbCBhY2VyY2EgZGVsIHByb2dyYW1hLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjQzCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJBbGwgb3B0aW9ucyBjYW4gYmUgc3BlY2lmaWVkIGJvdGggb24gdGhlIGNvbW1hbmRsaW5lIGFuZCBpbiB0aGUgIgorI3wgIkI8ZHNlbGVjdD4gY29uZmlndXJhdGlvbiBmaWxlIEk8L2V0Yy9kcGtnL2RzZWxlY3QuY2ZnPiBvciB0aGUgZmlsZXMgb24gIgorI3wgInRoZSBjb25maWd1cmF0aW9uIGRpcmVjdG9yeSBJPC9ldGMvZHBrZy9kcGtnLmNmZy5kLz4uIEVhY2ggbGluZSBpbiB0aGUgIgorI3wgImNvbmZpZ3VyYXRpb24gZmlsZSBpcyBlaXRoZXIgYW4gb3B0aW9uIChleGFjdGx5IHRoZSBzYW1lIGFzIHRoZSAiCisjfCAiY29tbWFuZGxpbmUgb3B0aW9uIGJ1dCB3aXRob3V0IGxlYWRpbmcgZGFzaGVzKSBvciBhIGNvbW1lbnQgKGlmIGl0IHN0YXJ0cyAiCisjfCAid2l0aCBhIEI8Iz4pLiIKK21zZ2lkICIiCisiQWxsIG9wdGlvbnMgY2FuIGJlIHNwZWNpZmllZCBib3RoIG9uIHRoZSBjb21tYW5kIGxpbmUgYW5kIGluIHRoZSBCPGRzZWxlY3Q+ICIKKyJjb25maWd1cmF0aW9uIGZpbGUgSTwvZXRjL2Rwa2cvZHNlbGVjdC5jZmc+IG9yIHRoZSBmaWxlcyBvbiB0aGUgIgorImNvbmZpZ3VyYXRpb24gZGlyZWN0b3J5IEk8L2V0Yy9kcGtnL2RzZWxlY3QuY2ZnLmQvPi4gRWFjaCBsaW5lIGluIHRoZSAiCisiY29uZmlndXJhdGlvbiBmaWxlIGlzIGVpdGhlciBhbiBvcHRpb24gKGV4YWN0bHkgdGhlIHNhbWUgYXMgdGhlIGNvbW1hbmQgbGluZSAiCisib3B0aW9uIGJ1dCB3aXRob3V0IGxlYWRpbmcgZGFzaGVzKSBvciBhIGNvbW1lbnQgKGlmIGl0IHN0YXJ0cyB3aXRoIGEgQjwjPikuIgorbXNnc3RyICIiCisiVG9kYXMgbGFzIG9wY2lvbmVzIHNlIHB1ZWRlbiBkZWZpbmlyIGVuIGxhIGzDrW5lYSBkZSDDs3JkZW5lcyB5IGVuIGVsIGZpY2hlcm8gIgorImRlIGNvbmZpZ3VyYWNpw7NuIGRlIEI8ZHNlbGVjdD4gdWJpY2FkbyBlbiBJPC9ldGMvZHBrZy9kc2VsZWN0LmNmZz4uIENhZGEgIgorImzDrW5lYSBlbiBlbCBmaWNoZXJvIGRlIGNvbmZpZ3VyYWNpw7NuIGVzIHRhbWJpw6luIHVuYSBvcGNpw7NuIChleGFjdGFtZW50ZSBsYSAiCisibWlzbWEgcXVlIGVuIGxhIGzDrW5lYSBkZSDDs3JkZW5lcyBwZXJvIHNpbiBndWlvbmVzIHByZWNlZGVudGVzKSBvIHVuICIKKyJjb21lbnRhcmlvIChzaSBlc3RlIGNvbWllbnphIGNvbiB1biBCPCM+KS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0OQorbXNnaWQgIiIKKyJDaGFuZ2VzIHRoZSBkaXJlY3Rvcnkgd2hlcmUgdGhlIGRwa2cgYEk8c3RhdHVzPicsIGBJPGF2YWlsYWJsZT4nIGFuZCBzaW1pbGFyICIKKyJmaWxlcyBhcmUgbG9jYXRlZC4gVGhpcyBkZWZhdWx0cyB0byBJPC92YXIvbGliL2Rwa2c+IGFuZCBub3JtYWxseSB0aGVyZSAiCisic2hvdWxkbid0IGJlIGFueSBuZWVkIHRvIGNoYW5nZSBpdC4iCittc2dzdHIgIiIKKyJDYW1iaWEgZWwgZGlyZWN0b3JpbyBkb25kZSBzZSB1YmljYW4gbG9zIGZpY2hlcm9zIGRlIGRwa2cgSTxzdGF0dXM+LCAiCisiSTxhdmFpbGFibGU+IHkgb3Ryb3MuIEVzIEk8L3Zhci9saWIvZHBrZz4gcG9yIG9taXNpw7NuIHkgZW4gY29uZGljaW9uZXMgIgorIm5vcm1hbGVzIG5vIHNlICBkZWJlcsOtYSBjYW1iaWFyLiIKKworIy4gdHlwZTogVFAKKyM6IGRzZWxlY3QuMTo0OQorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPC0tZGVidWc+STwgRTxsdD5maWxlRTxndD4gPnxJPCA+QjwtRD5JPEU8bHQ+ZmlsZUU8Z3Q+PiIKK21zZ2lkICJCPC0tZGVidWc+STwgZmlsZSA+fEk8ID5CPC1EPkk8ZmlsZT4iCittc2dzdHIgIkI8LS1kZWJ1Zz5JPCBFPGx0PmZpY2hlcm9FPGd0PiA+fEk8ID5CPC1EPkk8RTxsdD5maWNoZXJvRTxndD4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NTIKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlR1cm4gb24gZGVidWdnaW5nLiBEZWJ1Z2dpbmcgaW5mb3JtYXRpb24gaXMgc2VudCB0byBJPEU8bHQ+ZmlsZUU8Z3Q+Pi4iCittc2dpZCAiVHVybiBvbiBkZWJ1Z2dpbmcuIERlYnVnZ2luZyBpbmZvcm1hdGlvbiBpcyBzZW50IHRvIEk8ZmlsZT4uIgorbXNnc3RyICIiCisiQWN0aXZhIGxhIGRlcHVyYWNpw7NuIGRlIGZhbGxvcy4gRXN0YSBpbmZvcm1hY2nDs24gc2UgZW52w61hIGFsICIKKyJJPEU8bHQ+ZmljaGVyb0U8Z3Q+Pi4iCisKKyMuIHR5cGU6IFRQCisjOiBkc2VsZWN0LjE6NTIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tZXhwZXJ0PiIKK21zZ3N0ciAiQjwtLWV4cGVydD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo1NgorbXNnaWQgIiIKKyJUdXJucyBvbiBleHBlcnQgbW9kZSwgaS5lLiBkb2Vzbid0IGRpc3BsYXkgcG9zc2libHkgYW5ub3lpbmcgaGVscCBtZXNzYWdlcy4iCittc2dzdHIgIiIKKyJBY3RpdmEgZWwgbW9kbyBleHBlcnRvLiBQb3IgZWplbXBsbywgbm8gbXVlc3RyYSBtZW5zYWplcyBkZSBheXVkYSAiCisicG9zaWJsZW1lbnRlIG1vbGVzdG9zLiIKKworIy4gdHlwZTogVFAKKyM6IGRzZWxlY3QuMTo1NgorIywgbm8td3JhcAorbXNnaWQgIkI8LS1jb2xvdXI+fEI8LS1jb2xvcj4gSTxzY3JlZW5wYXJ0Oj5bSTxmb3JlZ3JvdW5kPl0sW0k8YmFja2dyb3VuZD5dW0k8OmF0dHI+W0k8K2F0dHIrLi4+XV0iCittc2dzdHIgIkI8LS1jb2xvdXI+fEI8LS1jb2xvcj4gSTxwYXJ0ZS1kZS1wYW50YWxsYTo+W0k8cHJpbWVyLXBsYW5vPl0sW0k8Zm9uZG8+XVtJPDphdHRyPltJPCthdHRyKy4uPl1dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NjMKK21zZ2lkICIiCisiQ29uZmlndXJlcyBzY3JlZW4gY29sb3JzLiBUaGlzIHdvcmtzIG9ubHkgaWYgeW91ciBkaXNwbGF5IHN1cHBvcnRzIGNvbG9ycy4gICIKKyJUaGlzIG9wdGlvbiBtYXkgYmUgdXNlZCBtdWx0aXBsZSB0aW1lcyAoYW5kIGlzIGJlc3QgdXNlZCBpbiBJPGRzZWxlY3QuY2ZnPikuICIKKyJFYWNoIHVzZSBjaGFuZ2VzIHRoZSBjb2xvciAoYW5kIG9wdGlvbmFsbHksIG90aGVyIGF0dHJpYnV0ZXMpIG9mIG9uZSBwYXJ0IG9mICIKKyJ0aGUgc2NyZWVuLiAgVGhlIHBhcnRzIG9mIHRoZSBzY3JlZW4gKGZyb20gdG9wIHRvIGJvdHRvbSkgYXJlOiIKK21zZ3N0ciAiIgorIkNvbmZpZ3VyYSBsb3MgY29sb3JlcyBkZSBsYSBwYW50YWxsYS4gRXN0byBzw7NsbyBmdW5jaW9uYSBzaSBzdSBlcXVpcG8gZXMgIgorImNhcGF6IGRlIG1vc3RyYXIgY29sb3Jlcy4gUHVlZGUgdXNhciBlc3RhIG9wY2nDs24gY3VhbnRhcyB2ZWNlcyBkZXNlZSAoZXMgIgorIm1lam9yIHVzYXJsYSBlbiBJPGRzZWxlY3QuY2ZnPikuIENhZGEgdXNvIGNhbWJpYSBlbCBjb2xvciAoeSBvcGNpb25hbG1lbnRlLCAiCisib3Ryb3MgYXRyaWJ1dG9zKSBkZSB1bmEgcGFydGUgZGUgbGEgcGFudGFsbGEuIEVzdGFzIHBhcnRlcyBkZSBsYSBwYW50YWxsYSAiCisiKGRlc2RlIGFycmliYSBoYWNpYSBhYmFqbykgc29uOiIKKworIy4gdHlwZTogVFAKKyM6IGRzZWxlY3QuMTo2NAorIywgbm8td3JhcAorbXNnaWQgIkI8dGl0bGU+IgorbXNnc3RyICJCPHRpdGxlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjY3Cittc2dpZCAiVGhlIHNjcmVlbiB0aXRsZS4iCittc2dzdHIgIkVsIHTDrXR1bG8gZGUgbGEgcGFudGFsbGEuIgorCisjLiB0eXBlOiBUUAorIzogZHNlbGVjdC4xOjY3CisjLCBuby13cmFwCittc2dpZCAiQjxsaXN0aGVhZD4iCittc2dzdHIgIkI8bGlzdGhlYWQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NzAKK21zZ2lkICJUaGUgaGVhZGVyIGxpbmUgYWJvdmUgdGhlIGxpc3Qgb2YgcGFja2FnZXMuIgorbXNnc3RyICJMYSBsw61uZWEgZGUgY2FiZWNlcmEgZW5jaW1hIGRlIGxhIGxpc3RhIGRlIHBhcXVldGVzLiIKKworIy4gdHlwZTogVFAKKyM6IGRzZWxlY3QuMTo3MAorIywgbm8td3JhcAorbXNnaWQgIkI8bGlzdD4iCittc2dzdHIgIkI8bGlzdD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo3MworbXNnaWQgIlRoZSBzY3JvbGxpbmcgbGlzdCBvZiBwYWNrYWdlcyAoYW5kIGFsc28gc29tZSBoZWxwIHRleHQpLiIKK21zZ3N0ciAiTGEgbGlzdGEgZGUgcGFxdWV0ZXMgKHkgdGFtYmnDqW4gb3Ryb3MgdGV4dG9zIGRlIGF5dWRhKS4iCisKKyMuIHR5cGU6IFRQCisjOiBkc2VsZWN0LjE6NzMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGxpc3RzZWw+IgorbXNnc3RyICJCPGxpc3RzZWw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NzYKK21zZ2lkICJUaGUgc2VsZWN0ZWQgaXRlbSBpbiB0aGUgbGlzdC4iCittc2dzdHIgIkVsIGVsZW1lbnRvIHNlbGVjY2lvbmFkbyBlbiBsYSBsaXN0YS4iCisKKyMuIHR5cGU6IFRQCisjOiBkc2VsZWN0LjE6NzYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHBrZ3N0YXRlPiIKK21zZ3N0ciAiQjxwa2dzdGF0ZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo4MAorbXNnaWQgIiIKKyJJbiB0aGUgbGlzdCBvZiBwYWNrYWdlcywgdGhlIHRleHQgaW5kaWNhdGluZyB0aGUgY3VycmVudCBzdGF0ZSBvZiBlYWNoICIKKyJwYWNrYWdlLiIKK21zZ3N0ciAiIgorIkVuIGxhIGxpc3RhIGRlIHBhcXVldGVzLCBlbCB0ZXh0byBxdWUgaW5kaWNhIGVsIGVzdGFkbyBhY3R1YWwgZGUgY2FkYSAiCisicGFxdWV0ZS4iCisKKyMuIHR5cGU6IFRQCisjOiBkc2VsZWN0LjE6ODAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHBrZ3N0YXRlc2VsPiIKK21zZ3N0ciAiQjxwa2dzdGF0ZXNlbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo4NAorbXNnaWQgIiIKKyJJbiB0aGUgbGlzdCBvZiBwYWNrYWdlcywgdGhlIHRleHQgaW5kaWNhdGluZyB0aGUgY3VycmVudCBzdGF0ZSBvZiB0aGUgIgorImN1cnJlbnRseSBzZWxlY3RlZCBwYWNrYWdlLiIKK21zZ3N0ciAiIgorIkVuIGxhIGxpc3RhIGRlIHBhcXVldGVzLCBlbCB0ZXh0byBxdWUgaW5kaWNhIGVsIGVzdGFkbyBhY3R1YWwgZGVsIHBhcXVldGUgIgorInNlbGVjY2lvbmFkby4iCisKKyMuIHR5cGU6IFRQCisjOiBkc2VsZWN0LjE6ODQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGluZm9oZWFkPiIKK21zZ3N0ciAiQjxpbmZvaGVhZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo4NworbXNnaWQgIiIKKyJUaGUgaGVhZGVyIGxpbmUgdGhhdCBkaXNwbGF5cyB0aGUgc3RhdGUgb2YgdGhlIGN1cnJlbnRseSBzZWxlY3RlZCBwYWNrYWdlLiIKK21zZ3N0ciAiTGEgbMOtbmVhIGRlIGNhYmVjZXJhIHF1ZSBtdWVzdHJhIGVsIGVzdGFkbyBkZWwgcGFxdWV0ZSBzZWxlY2Npb25hZG8uIgorCisjLiB0eXBlOiBUUAorIzogZHNlbGVjdC4xOjg3CisjLCBuby13cmFwCittc2dpZCAiQjxpbmZvZGVzYz4iCittc2dzdHIgIkI8aW5mb2Rlc2M+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6OTAKK21zZ2lkICJUaGUgcGFja2FnZSdzIHNob3J0IGRlc2NyaXB0aW9uLiIKK21zZ3N0ciAiTGEgZGVzY3JpcGNpw7NuIGNvcnRhIGRlbCBwYXF1ZXRlLiIKKworIy4gdHlwZTogVFAKKyM6IGRzZWxlY3QuMTo5MAorIywgbm8td3JhcAorbXNnaWQgIkI8aW5mbz4iCittc2dzdHIgIkI8aW5mbz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo5MworbXNnaWQgIlVzZWQgdG8gZGlzcGxheSBwYWNrYWdlIGluZm8gc3VjaCBhcyB0aGUgcGFja2FnZSdzIGRlc2NyaXB0aW9uLiIKK21zZ3N0ciAiIgorIlNlIHVzYSBwYXJhIG1vc3RyYXIgbGEgaW5mb3JtYWNpw7NuIGRlbCBwYXF1ZXRlIGFzw60gY29tbyBzdSBkZXNjcmlwY2nDs24uIgorCisjLiB0eXBlOiBUUAorIzogZHNlbGVjdC4xOjkzCisjLCBuby13cmFwCittc2dpZCAiQjxpbmZvZm9vdD4iCittc2dzdHIgIkI8aW5mb2Zvb3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6OTYKK21zZ2lkICJUaGUgbGFzdCBsaW5lIG9mIHRoZSBzY3JlZW4gd2hlbiBzZWxlY3RpbmcgcGFja2FnZXMuIgorbXNnc3RyICJMYSDDumx0aW1hIGzDrW5lYSBkZSBsYSBwYW50YWxsYSBjdWFuZG8gc2Ugc2VsZWNjaW9uYW4gcGFxdWV0ZXMuIgorCisjLiB0eXBlOiBUUAorIzogZHNlbGVjdC4xOjk2CisjLCBuby13cmFwCittc2dpZCAiQjxxdWVyeT4iCittc2dzdHIgIkI8cXVlcnk+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6OTkKK21zZ2lkICJVc2VkIHRvIGRpc3BsYXkgcXVlcnkgbGluZXMiCittc2dzdHIgIlNlIHVzYSBwYXJhIG1vc3RyYXIgbMOtbmVhcyBkZSBjb25zdWx0YS4iCisKKyMuIHR5cGU6IFRQCisjOiBkc2VsZWN0LjE6OTkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGhlbHBzY3JlZW4+IgorbXNnc3RyICJCPGhlbHBzY3JlZW4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTAyCittc2dpZCAiQ29sb3Igb2YgaGVscCBzY3JlZW5zLiIKK21zZ3N0ciAiQ29sb3IgZGUgbGFzIHBhbnRhbGxhcyBkZSBheXVkYS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxMDcKK21zZ2lkICIiCisiQWZ0ZXIgdGhlIHBhcnQgb2YgdGhlIHNjcmVlbiBjb21lcyBhIGNvbG9uIGFuZCB0aGUgY29sb3Igc3BlY2lmaWNhdGlvbi4gWW91ICIKKyJjYW4gc3BlY2lmeSBlaXRoZXIgdGhlIGZvcmVncm91bmQgY29sb3IsIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLCBvciBib3RoLCAiCisib3ZlcnJpZGluZyB0aGUgY29tcGlsZWQtaW4gY29sb3JzLiBVc2Ugc3RhbmRhcmQgY3Vyc2VzIGNvbG9yIG5hbWVzLiIKK21zZ3N0ciAiIgorIkEgY29udGludWFjacOzbiBkZSBsYSBwYXJ0ZSBkZSBsYSBwYW50YWxsYSBhcGFyZWNlbiBkb3MgcHVudG9zIHkgbGEgIgorImRlZmluaWNpw7NuIGRlbCBjb2xvci4gUHVlZGUgZGVmaW5pciBlbCBjb2xvciBkZWwgcHJpbWVyIHBsYW5vLCBlbCBjb2xvciBkZSAiCisiZm9uZG8sIG8gYW1ib3MgZXZpdGFuZG8gbG9zIGNvbG9yZXMgcHJlZGVmaW5pZG9zLiBTZSBkZWJlbiB1c2FyIG5vbWJyZXMgIgorImVzdMOhbmRhciBkZSBjb2xvcmVzIGRlIGxhIGJpYmxpb3RlY2EgY3Vyc2VzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjExMworbXNnaWQgIiIKKyJPcHRpb25hbGx5LCBhZnRlciB0aGUgY29sb3Igc3BlY2lmaWNhdGlvbiBpcyBhbm90aGVyIGNvbG9uLCBhbmQgYW4gYXR0cmlidXRlICIKKyJzcGVjaWZpY2F0aW9uLiBUaGlzIGlzIGEgbGlzdCBvZiBvbmUgb3IgbW9yZSBhdHRyaWJ1dGVzLCBzZXBhcmF0ZWQgYnkgcGx1cyAiCisiKFwiK1wiKSBjaGFyYWN0ZXJzLiBBdmFpbGFibGUgYXR0cmlidXRlcyBpbmNsdWRlIChub3QgYWxsIG9mIHRoZXNlIHdpbGwgd29yayAiCisib24gYWxsIHRlcm1pbmFscyk6IG5vcm1hbCwgc3RhbmRvdXQsIHVuZGVybGluZSwgcmV2ZXJzZSwgYmxpbmssIGJyaWdodCwgZGltLCAiCisiYm9sZCIKK21zZ3N0ciAiIgorIk9wY2lvbmFsbWVudGUsIGEgY29udGludWFjacOzbiBkZSBsYSBlc3BlY2lmaWNhY2nDs24gZGUgY29sb3JlcyBoYXkgb3Ryb3MgZG9zICIKKyJwdW50b3MsIHkgbGEgZXNwZWNpZmljYWNpw7NuIGRlIGxvcyBhdHJpYnV0b3MuIMOJc3RhIGVzIHVuYSBsaXN0YSBkZSB1bm8gbyBtw6FzICIKKyJhdHJpYnV0b3MsIHNlcGFyYWRvcyBwb3IgdW4gc2lnbm8gZGUgc3VtYSDCqyvCuy4gTG9zIGF0cmlidXRvcyBkaXNwb25pYmxlcyAiCisiaW5jbHV5ZW4gKG5vIHRvZG9zIGZ1bmNpb25hcsOhbiBlbiB0b2RvcyBsb3MgdGVybWluYWxlcyk6IG5vcm1hbCwgc3RhbmRvdXQsICIKKyJ1bmRlcmxpbmUsIHJldmVyc2UsIGJsaW5rLCBicmlnaHQsIGRpbSwgYm9sZC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxMTYKK21zZ2lkICJQcmludCBhIGJyaWVmIGhlbHAgdGV4dCBhbmQgZXhpdCBzdWNjZXNzZnVsbHkuIgorbXNnc3RyICJNdWVzdHJhIHVuIGJyZXZlIHRleHRvIGRlIGF5dWRhIHkgY2llcnJhIGNvbiDDqXhpdG8uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTE5Cittc2dpZCAiUHJpbnQgdmVyc2lvbiBpbmZvcm1hdGlvbiBhbmQgZXhpdCBzdWNjZXNzZnVsbHkuIgorbXNnc3RyICJNdWVzdHJhIGxhIGluZm9ybWFjacOzbiBkZSB2ZXJzacOzbiBkZWwgcHJvZ3JhbWEgeSBjaWVycmEgY29uIMOpeGl0by4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxMjYKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIldoZW4gQjxkc2VsZWN0PiBpcyBzdGFydGVkIGludGVyYWN0aXZlbHksIGl0IHByb21wdHMgdGhlIHVzZXIgd2l0aCBhIG1lbnUgIgorI3wgIm9mIGF2YWlsYWJsZSBhY3Rpb25zOiIKK21zZ2lkICIiCisiV2hlbiBCPGRzZWxlY3Q+IGlzIHN0YXJ0ZWQgaXQgY2FuIHBlcmZvcm0gdGhlIGZvbGxvd2luZyBhY3Rpb25zLCBlaXRoZXIgIgorImRpcmVjdGx5IGlmIGl0IHdhcyBzcGVjaWZpZWQgb24gdGhlIGNvbW1hbmQgbGluZSBvciBieSBwcm9tcHRpbmcgdGhlIHVzZXIgIgorIndpdGggYSBtZW51IG9mIGF2YWlsYWJsZSBhY3Rpb25zIGlmIHJ1bm5pbmcgaW50ZXJhY3RpdmVseToiCittc2dzdHIgIiIKKyJDdWFuZG8gQjxkc2VsZWN0PiBzZSBpbmljaWEgaW50ZXJhY3RpdmFtZW50ZSBtdWVzdHJhIGFsIHVzdWFyaW8gdW4gbWVuw7ogY29uICIKKyJsYXMgc2lndWllbnRlcyBvcGNpb25lcyBkaXNwb25pYmxlczoiCisKKyMuIHR5cGU6IFNTCisjOiBkc2VsZWN0LjE6MTI2CisjLCBuby13cmFwCittc2dpZCAiYWNjZXNzIgorbXNnc3RyICJhY2Nlc3MiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxMjgKK21zZ2lkICJDaG9vc2UgYW5kIGNvbmZpZ3VyZSBhbiBhY2Nlc3MgbWV0aG9kIHRvIGFjY2VzcyBwYWNrYWdlIHJlcG9zaXRvcmllcy4iCittc2dzdHIgIiIKKyJTZWxlY2Npw7NuIHkgY29uZmlndXJhY2nDs24gZGUgdW4gbcOpdG9kbyBkZSBhY2Nlc28gcGFyYSBhY2NlZGVyIGEgbG9zICIKKyJyZXBvc2l0b3Jpb3MgZGUgcGFxdWV0ZXMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTM0CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJCeSBkZWZhdWx0LCBCPGRzZWxlY3Q+IHByb3ZpZGVzIHNldmVyYWwgbWV0aG9kcyBzdWNoIGFzIEk8ZmxvcHB5PiwgIgorI3wgIkk8aGFyZGRpc2s+IG9yIEk8Y2Ryb20+LCBidXQgb3RoZXIgcGFja2FnZXMgbWF5IHByb3ZpZGUgYWRkaXRpb25hbCAiCisjfCAibWV0aG9kcywgZWcuIHRoZSBJPGFwdD4gYWNjZXNzIG1ldGhvZCBwcm92aWRlZCBieSB0aGUgQjxhcHQ+IHBhY2thZ2Ugb3IgIgorI3wgIkk8bXVsdGlfY2Q+IGJ5IHRoZSBCPGRwa2ctbXVsdGljZD4gcGFja2FnZS4iCittc2dpZCAiIgorIkJ5IGRlZmF1bHQsIEI8ZHNlbGVjdD4gcHJvdmlkZXMgc2V2ZXJhbCBtZXRob2RzIHN1Y2ggYXMgSTxjZHJvbT4sICIKKyJJPG11bHRpX2NkPiwgSTxuZnM+LCBJPG11bHRpX25mcz4sIEk8aGFyZGRpc2s+LCBJPG1vdW50ZWQ+LCBJPG11bHRpX21vdW50PiwgIgorIkk8ZmxvcHB5PiBvciBJPGZ0cD4sIGJ1dCBvdGhlciBwYWNrYWdlcyBtYXkgcHJvdmlkZSBhZGRpdGlvbmFsIG1ldGhvZHMsIGVnLiAiCisidGhlIEk8YXB0PiBhY2Nlc3MgbWV0aG9kIHByb3ZpZGVkIGJ5IHRoZSBCPGFwdD4gcGFja2FnZS4iCittc2dzdHIgIiIKKyJQb3Igb21pc2nDs24sIEI8ZHNlbGVjdD4gb2ZyZWNlIHZhcmlvcyBtw6l0b2RvcyB0YWxlcyBjb21vIEk8ZmxvcHB5PiAiCisiKGRpc3F1ZXRlKSwgSTxoYXJkZGlzaz4gKGRpc2NvIGR1cm8pIG8gSTxjZHJvbT4sIGF1bnF1ZSBvdHJvcyBwYXF1ZXRlcyAiCisicG9kcsOtYW4gcHJvcG9yY2lvbmFyIGHDum4gbcOhcy4gUG9yIGVqZW1wbG8sIGVsIG3DqXRvZG8gZGUgYWNjZXNvIEk8YXB0PiAiCisicHJvcG9yY2lvbmFkbyBwb3IgZWwgcGFxdWV0ZSBCPGFwdD4gbyBiaWVuIEk8bXVsdGlfY2Q+IHByb3BvcmNpb25hZG8gcG9yIGVsICIKKyJwYXF1ZXRlIEI8ZHBrZy1tdWx0aWNkPi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxMzYKK21zZ2lkICJUaGUgdXNlIG9mIHRoZSBJPGFwdD4gYWNjZXNzIG1ldGhvZCBpcyBzdHJvbmdseSByZWNvbW1lbmRlZC4iCittc2dzdHIgIkVsIHVzbyBkZWwgbcOpdG9kbyBkZSBhY2Nlc28gdsOtYSBJPGFwdD4gZXMgYWx0YW1lbnRlIHJlY29tZW5kYWRvLiIKKworIy4gdHlwZTogU1MKKyM6IGRzZWxlY3QuMToxMzcKKyMsIG5vLXdyYXAKK21zZ2lkICJ1cGRhdGUiCittc2dzdHIgInVwZGF0ZSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjEzOQorbXNnaWQgIlJlZnJlc2ggdGhlIGF2YWlsYWJsZSBwYWNrYWdlcyBkYXRhYmFzZS4iCittc2dzdHIgIkFjdHVhbGl6YSBsYSBsaXN0YSBkaXNwb25pYmxlIGRlIHBhcXVldGVzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjE0NgorbXNnaWQgIiIKKyJSZXRyaWV2ZXMgYSBsaXN0IG9mIGF2YWlsYWJsZSBwYWNrYWdlIHZlcnNpb25zIGZyb20gdGhlIHBhY2thZ2UgcmVwb3NpdG9yeSwgIgorImNvbmZpZ3VyZWQgZm9yIHRoZSBjdXJyZW50IGFjY2VzcyBtZXRob2QsIGFuZCB1cGRhdGUgdGhlIGRwa2cgZGF0YWJhc2UuIFRoZSAiCisicGFja2FnZSBsaXN0cyBhcmUgY29tbW9ubHkgcHJvdmlkZWQgYnkgdGhlIHJlcG9zaXRvcnkgYXMgZmlsZXMgbmFtZWQgIgorIkk8UGFja2FnZXM+IG9yIEk8UGFja2FnZXMuZ3o+LiAgVGhlc2UgZmlsZXMgY2FuIGJlIGdlbmVyYXRlZCBieSByZXBvc2l0b3J5ICIKKyJtYWludGFpbmVycywgdXNpbmcgdGhlIHByb2dyYW0gQjxkcGtnLXNjYW5wYWNrYWdlcz4oMSkuIgorbXNnc3RyICIiCisiT2J0aWVuZSB1bmEgbGlzdGEgZGUgdmVyc2lvbmVzIGRpc3BvbmlibGVzIGRlIHBhcXVldGVzIGRlc2RlIHVuIHJlcG9zaXRvcmlvLCAiCisiY29uZmlndXJhZG8gcG9yIGVsIG3DqXRvZG8gZGUgYWNjZXNvIHNlbGVjY2lvbmFkbywgeSBhY3R1YWxpemEgbGEgYmFzZSBkZSAiCisiZGF0b3MgZGUgZHBrZy4gSGFiaXR1YWxtZW50ZSwgZWwgcmVwb3NpdG9yaW8gcHJvcG9yY2lvbmEgbGEgbGlzdGEgZGUgIgorInBhcXVldGVzIG1lZGlhbnRlIGZpY2hlcm9zIGxsYW1hZG9zIEI8UGFja2FnZXM+IG8gQjxQYWNrYWdlcy5nej4uIExvcyAiCisicmVzcG9uc2FibGVzIGRlIHJlcG9zaXRvcmlvcyBwdWVkZW4gZ2VuZXJhciBlc3RvcyBmaWNoZXJvcyBhIHRyYXbDqXMgZGVsICIKKyJwcm9ncmFtYSBCPGRwa2ctc2NhbnBhY2thZ2VzKDEpPi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxNDkKK21zZ2lkICIiCisiRGV0YWlscyBvZiB0aGUgdXBkYXRlIGFjdGlvbiBkZXBlbmQgb24gdGhlIGFjY2VzcyBtZXRob2QncyBpbXBsZW1lbnRhdGlvbi4gICIKKyJOb3JtYWxseSB0aGUgcHJvY2VzcyBpcyBzdHJhaWdodGZvcndhcmQgYW5kIHJlcXVpcmVzIG5vIHVzZXIgaW50ZXJhY3Rpb24uIgorbXNnc3RyICIiCisiTG9zIGRldGFsbGVzIGRlIGxhIGFjY2nDs24gZGUgYWN0dWFsaXphciBkZXBlbmRlbiBkZWwgbcOpdG9kbyBkZSBhY2Nlc28gcXVlIHNlICIKKyJoYXlhIGltcGxlbWVudGFkby4gTm9ybWFsbWVudGUgZXN0ZSBwcm9jZXNvIGVzIGF1dG9tw6F0aWNvIHkgbm8gcmVxdWllcmUgbGEgIgorImludGVydmVybmNpw7NuIGRlbCB1c3VhcmlvLiIKKworIy4gdHlwZTogU1MKKyM6IGRzZWxlY3QuMToxNTAKKyMsIG5vLXdyYXAKK21zZ2lkICJzZWxlY3QiCittc2dzdHIgInNlbGVjdCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjE1MgorbXNnaWQgIlZpZXcgb3IgbWFuYWdlIHBhY2thZ2Ugc2VsZWN0aW9ucyBhbmQgZGVwZW5kZW5jaWVzLiIKK21zZ3N0ciAiIgorIkV4YW1pbmEgbyBnZXN0aW9uYSBsYSBzZWxlY2Npw7NuIGRlIHBhcXVldGVzIHkgc3VzIHJlc3BlY3RpdmFzIGRlcGVuZGVuY2lhcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxNTgKK21zZ2lkICIiCisiVGhpcyBpcyB0aGUgbWFpbiBmdW5jdGlvbiBvZiBCPGRzZWxlY3Q+LiBJbiB0aGUgc2VsZWN0IHNjcmVlbiwgdGhlIHVzZXIgY2FuICIKKyJyZXZpZXcgYSBsaXN0IG9mIGFsbCBhdmFpbGFibGUgYW5kIGluc3RhbGxlZCBwYWNrYWdlcy4gV2hlbiBydW4gd2l0aCAiCisiYWRtaW5pc3RyYXRvciBwcml2aWxlZ2VzLCBpdCBpcyBhbHNvIHBvc3NpYmxlIHRvIGludGVyYWN0aXZlbHkgY2hhbmdlICIKKyJwYWNrYWdlcyBzZWxlY3Rpb24gc3RhdGUuIEI8ZHNlbGVjdD4gdHJhY2tzIHRoZSBpbXBsaWNhdGlvbnMgb2YgdGhlc2UgIgorImNoYW5nZXMgdG8gb3RoZXIgZGVwZW5kaW5nIG9yIGNvbmZsaWN0aW5nIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorIkVzdGEgZXMgbGEgZnVuY2nDs24gcHJpbmNpcGFsIGRlIEI8ZHNlbGVjdD4uIEVuIGxhIHBhbnRhbGxhIGRlIHNlbGVjY2nDs24sIGVsICIKKyJ1c3VhcmlvIHB1ZWRlIGV4YW1pbmFyIHVuYSBsaXN0YSBkZSB0b2RvcyBsb3MgcGFxdWV0ZXMgZGlzcG9uaWJsZXMgZSAiCisiaW5zdGFsYWRvcy4gQ3VhbmRvIHNlIGVqZWN1dGEgY29uIHBlcm1pc29zIGRlIGFkbWluaXN0cmFkb3IgdGFtYmnDqW4gZXMgIgorInBvc2libGUgY2FtYmlhciBlbCBlc3RhZG8gZGUgbGEgc2VsZWNjacOzbiBpbnRlcmFjdGl2YW1lbnRlLiBCPGRzZWxlY3Q+ICIKKyJyZWdpc3RyYSBsYXMgaW1wbGljYWNpb25lcyBkZSBlc3RvcyBjYW1iaW9zIGVuIHJlbGFjacOzbiBhIG90cm9zIHBhcXVldGVzICIKKyJkZXBlbmRlbmNpYSBvIHF1ZSBlbnRyYW4gZW4gY29uZmxpY3RvLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjE2NQorbXNnaWQgIiIKKyJXaGVuIGEgY29uZmxpY3Qgb3IgZmFpbGVkIGRlcGVuZHMgaXMgZGV0ZWN0ZWQsIGEgZGVwZW5kZW5jeSByZXNvbHV0aW9uICIKKyJzdWJzY3JlZW4gaXMgcHJvbXB0ZWQgdG8gdGhlIHVzZXIuIEluIHRoaXMgc2NyZWVuLCBhIGxpc3Qgb2YgY29uZmxpY3Rpbmcgb3IgIgorImRlcGVuZGluZyBwYWNrYWdlcyBpcyBzaG93biwgYW5kIGZvciBlYWNoIHBhY2thZ2UgbGlzdGVkLCB0aGUgcmVhc29uIGZvciBpdHMgIgorImxpc3RpbmcgaXMgc2hvd24uIFRoZSB1c2VyIG1heSBhcHBseSB0aGUgc3VnZ2VzdGlvbnMgcHJvcG9zZWQgYnkgQjxkc2VsZWN0PiwgIgorIm92ZXJyaWRlIHRoZW0sIG9yIGJhY2sgb3V0IGFsbCB0aGUgY2hhbmdlcywgaW5jbHVkaW5nIHRoZSBvbmVzIHRoYXQgY3JlYXRlZCAiCisidGhlIHVucmVzb2x2ZWQgZGVwZW5kcyBvciBjb25mbGljdHMuIgorbXNnc3RyICIiCisiQ3VhbmRvIGhheSB1biBjb25mbGljdG8sIG8gYmllbiB1bmEgZGVwZW5kZW5jaWEgZmFsbGEsIHNlIG11ZXN0cmEgbGEgIgorInBhbnRhbGxhIGRlIHJlc29sdWNpw7NuIGRlIGRlcGVuZGVuY2lhcy4gRW4gZXN0YSBwYW50YWxsYSBhcGFyZWNlIHVuYSBsaXN0YSAiCisiZGUgcGFxdWV0ZXMgY29uZmxpY3Rpdm9zIG8gZGVwZW5kaWVudGVzLCB5IHBvciBwYXJhIGNhZGEgcGFxdWV0ZSBlbiBsYSAiCisibGlzdGEsIHNlIG11ZXN0cmEgbGEgcmF6w7NuIGRlIHN1IGFwYXJpY2nDs24gZW4gZWxsYS4gRWwgdXN1YXJpbyBwdWVkZSAiCisiZWplY3V0YXIgbGFzIHN1Z2VyZW5jaWFzIHF1ZSBCPGRzZWxlY3Q+IG9mcmVjZSwgZXZpdGFybGFzLCBvIGJpZW4gZGVzaGFjZXIgIgorImxvcyBjYW1iaW9zIGhlY2hvcywgaW5jbHV5ZW5kbyBhcXVlbGxvcyBlbiBsb3MgcXVlIHNlIGRlamFyb24gZGVwZW5kZW5jaWFzIG8gIgorImNvbmZsaWN0b3Mgc2luIHJlc29sdmVyLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjE2OAorbXNnaWQgIiIKKyJUaGUgdXNlIG9mIHRoZSBpbnRlcmFjdGl2ZSBwYWNrYWdlIHNlbGVjdGlvbnMgbWFuYWdlbWVudCBzY3JlZW4gaXMgZXhwbGFpbmVkICIKKyJpbiBtb3JlIGRldGFpbCBiZWxvdy4iCittc2dzdHIgIiIKKyJBIGNvbnRpbnVhY2nDs24gc2UgZXhwbGljYSBjb24gbcOhcyBkZXRhbGxlIGVsIHVzbyBkZSBsYSBwYW50YWxsYSBpbnRlcmFjdGl2YSAiCisiZGUgc2VsZWNjacOzbiBkZSBwYXF1ZXRlcy4iCisKKyMuIHR5cGU6IFNTCisjOiBkc2VsZWN0LjE6MTY5CisjLCBuby13cmFwCittc2dpZCAiaW5zdGFsbCIKK21zZ3N0ciAiaW5zdGFsbCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjE3MQorbXNnaWQgIkluc3RhbGxzIHNlbGVjdGVkIHBhY2thZ2VzLiIKK21zZ3N0ciAiSW5zdGFsYSBsb3MgcGFxdWV0ZXMgc2VsZWNjaW9uYWRvcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxNzcKK21zZ2lkICIiCisiVGhlIGNvbmZpZ3VyZWQgYWNjZXNzIG1ldGhvZCB3aWxsIGZldGNoIGluc3RhbGxhYmxlIG9yIHVwZ3JhZGFibGUgcGFja2FnZXMgIgorImZyb20gdGhlIHJlbGV2YW50IHJlcG9zaXRvcmllcyBhbmQgaW5zdGFsbCB0aGVzZSB1c2luZyBCPGRwa2c+LiAgRGVwZW5kaW5nICIKKyJvbiB0aGUgaW1wbGVtZW50YXRpb24gb2YgdGhlIGFjY2VzcyBtZXRob2QsIGFsbCBwYWNrYWdlcyBjYW4gYmUgcHJlZmV0Y2hlZCAiCisiYmVmb3JlIGluc3RhbGxhdGlvbiwgb3IgZmV0Y2hlZCB3aGVuIG5lZWRlZC4gIFNvbWUgYWNjZXNzIG1ldGhvZHMgbWF5IGFsc28gIgorInJlbW92ZSBwYWNrYWdlcyB0aGF0IHdlcmUgbWFya2VkIGZvciByZW1vdmFsLiIKK21zZ3N0ciAiIgorIkVsIG3DqXRvZG8gZGUgYWNjZXNvIGNvbmZpZ3VyYWRvIGRlc2NhcmdhcsOhIGxvcyBwYXF1ZXRlcyBpbnN0YWxhYmxlcyBvICIKKyJhY3R1YWxpemFibGVzIGRlc2RlIGxvcyByZXBvc2l0b3Jpb3MsIHkgbG9zIGluc3RhbGFyw6EgdXNhbmRvIEI8ZHBrZz4uICIKKyJEZXBlbmRpZW5kbyBkZSBsYSBpbXBsZW1lbnRhY2nDs24gZGVsIG3DqXRvZG8gZGUgYWNjZXNvLCB0b2RvcyBsb3MgcGFxdWV0ZXMgc2UgIgorInB1ZWRlbiBkZXNjYXJnYXIgcHJldmlhbWVudGUgYSBsYSBpbnN0YWxhY2nDs24sIG8gYmllbiBjdWFuZG8gc2UgcmVxdWllcmEuICIKKyJBbGd1bm9zIG3DqXRvZG9zIGRlIGFjY2VzbyBwb2Ryw61hbiBib3JyYXIgcGFxdWV0ZXMgcXVlIHNlIG1hcmNhcm9uIHBhcmEgc3UgIgorImVsaW1pbmFjacOzbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxODUKK21zZ2lkICIiCisiSWYgYW4gZXJyb3Igb2NjdXJyZWQgZHVyaW5nIGluc3RhbGwsIGl0IGlzIHVzdWFsbHkgYWR2aXNhYmxlIHRvIHJ1biBpbnN0YWxsICIKKyJhZ2Fpbi4gSW4gbW9zdCBjYXNlcywgdGhlIHByb2JsZW1zIHdpbGwgZGlzYXBwZWFyIG9yIGJlIHNvbHZlZC4gIElmIHByb2JsZW1zICIKKyJwZXJzaXN0IG9yIHRoZSBpbnN0YWxsYXRpb24gcGVyZm9ybWVkIHdhcyBpbmNvcnJlY3QsIHBsZWFzZSBpbnZlc3RpZ2F0ZSBpbnRvICIKKyJ0aGUgY2F1c2VzIGFuZCBjaXJjdW1zdGFuY2VzLCBhbmQgZmlsZSBhIGJ1ZyBpbiB0aGUgRGViaWFuIGJ1ZyB0cmFja2luZyAiCisic3lzdGVtLiBJbnN0cnVjdGlvbnMgb24gaG93IHRvIGRvIHRoaXMgY2FuIGJlIGZvdW5kIGF0IGh0dHA6Ly9idWdzLmRlYmlhbi4iCisib3JnLyBvciBieSByZWFkaW5nIHRoZSBkb2N1bWVudGF0aW9uIGZvciBCPGJ1Zz4oMSkgb3IgQjxyZXBvcnRidWc+KDEpLCBpZiAiCisidGhlc2UgYXJlIGluc3RhbGxlZC4iCittc2dzdHIgIiIKKyJTaSBvY3VycmUgYWxnw7puIGVycm9yIGR1cmFudGUgbGEgaW5zdGFsYWNpw7NuLCBub3JtYWxtZW50ZSBzZSBhY29uc2VqYSAiCisiZWplY3V0YXIgbGEgaW5zdGFsYWNpw7NuIG51ZXZhbWVudGUuIEVuIGxhIG1heW9yw61hIGRlIGxvcyBjYXNvcyBsb3MgcHJvYmxlbWFzICIKKyJkZXNhcGFyZWNlcsOhbiBvIGJpZW4gc2UgcmVzb2x2ZXLDoW4uIFNpIGVsIHByb2JsZW1hIHBlcnNpc3RlIG8gbGEgaW5zdGFsYWNpw7NuICIKKyJzZSBlamVjdXTDsyBkZSBmb3JtYSBpbmNvcnJlY3RhLCBsZSByb2dhbW9zIGludmVzdGlndWUgbGFzIGNhdXNhcyB5ICIKKyJjaXJjdW5zdGFuY2lhcyBkZWwgcHJvYmxlbWEsIHkgcmVtaXRhIHVuIGluZm9ybWUgZGUgZmFsbG9zIGFsIHNpc3RlbWEgZGUgIgorInNlZ3VpbWllbnRvIGRlIGZhbGxvcyBkZSBEZWJpYW4uIFB1ZWRlIGVuY29udHJhciBsYXMgaW5zdHJ1Y2Npb25lcyAiCisiY29ycmVzcG9uZGllbnRlcyBlbiDCq2h0dHA6Ly9idWdzLmRlYmlhbi5vcmcvwrssIG8gYmllbiBsZXllbmRvIGxhICIKKyJkb2N1bWVudGFjacOzbiBkZSBsb3MgcHJvZ3JhbWFzIEI8YnVnKDEpPiBvIEI8cmVwb3J0YnVnKDEpPiwgc2kgZXMgcXVlIGVzdMOhbiAiCisiaW5zdGFsYWRvcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxOTIKK21zZ2lkICIiCisiRGV0YWlscyBvZiB0aGUgaW5zdGFsbCBhY3Rpb24gZGVwZW5kIG9uIHRoZSBhY2Nlc3MgbWV0aG9kJ3MgaW1wbGVtZW50YXRpb24uICAiCisiVGhlIHVzZXIncyBhdHRlbnRpb24gYW5kIGlucHV0IG1heSBiZSByZXF1aXJlZCBkdXJpbmcgaW5zdGFsbGF0aW9uLCAiCisiY29uZmlndXJhdGlvbiBvciByZW1vdmFsIG9mIHBhY2thZ2VzLiBUaGlzIGRlcGVuZHMgb24gdGhlIG1haW50YWluZXIgc2NyaXB0cyAiCisiaW4gdGhlIHBhY2thZ2UuIFNvbWUgcGFja2FnZXMgbWFrZSB1c2Ugb2YgdGhlIEI8ZGViY29uZj4oMSkgIGxpYnJhcnksICIKKyJhbGxvd2luZyBmb3IgbW9yZSBmbGV4aWJsZSBvciBldmVuIGF1dG9tYXRlZCBpbnN0YWxsYXRpb24gc2V0dXBzLiIKK21zZ3N0ciAiIgorIkxvcyBkZXRhbGxlcyBhY2VyY2EgZGUgbGEgYWNjacOzbiBkZSBpbnN0YWxhciBkZXBlbmRlbiBkZSBsYSBpbXBsZW1lbnRhY2nDs24gIgorImRlbCBtw6l0b2RvIGRlIGFjY2Vzby4gUHVlZGUgcXVlIHNlIHJlcXVpZXJhIGxhIGF0ZW5jacOzbiBjb21wbGV0YSBkZWwgdXN1YXJpbyAiCisiZHVyYW50ZSBsYSBpbnN0YWxhY2nDs24sIGNvbmZpZ3VyYWNpw7NuIG8gZWxpbWluYWNpw7NuIGRlIGxvcyBwYXF1ZXRlcyAiCisiY29ycmVzcG9uZGllbnRlcy4gRXN0byBkZXBlbmRlIGV4Y2x1c2l2YW1lbnRlIGRlIGxvcyBzY3JpcHRzIGRlbCBtYW50ZW5lZG9yICIKKyJkZSBsb3MgcGFxdWV0ZXMuIEFsZ3Vub3MgcGFxdWV0ZXMgaGFjZW4gdXNvIGRlIGxhIGJpYmxpb3RlY2EgZGUgQjxkZWJjb25mKDgpIgorIj4sIHBlcm1pdGllbmRvIGFzw60gdW5hIGluc3RhbGFjacOzbiBtw6FzIGZsZXhpYmxlIG8gaW5jbHVzbyBtw6FzIGF1dG9tYXRpemFkYS4iCisKKyMuIHR5cGU6IFNTCisjOiBkc2VsZWN0LjE6MTkzCisjLCBuby13cmFwCittc2dpZCAiY29uZmlnIgorbXNnc3RyICJjb25maWciCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxOTUKK21zZ2lkICJDb25maWd1cmVzIGFueSBwcmV2aW91c2x5IGluc3RhbGxlZCwgYnV0IG5vdCBmdWxseSBjb25maWd1cmVkIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorIkNvbmZpZ3VyYSBjdWFscXVpZXIgcGFxdWV0ZSBwcmV2aWFtZW50ZSBpbnN0YWxhZG8sIHBlcm8gbm8gY29uZmlndXJhZG8gIgorInRvdGFsbWVudGUuIgorCisjLiB0eXBlOiBTUworIzogZHNlbGVjdC4xOjE5NgorIywgbm8td3JhcAorbXNnaWQgInJlbW92ZSIKK21zZ3N0ciAicmVtb3ZlIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTk4Cittc2dpZCAiUmVtb3ZlcyBvciBwdXJnZXMgaW5zdGFsbGVkIHBhY2thZ2VzLCB0aGF0IGFyZSBtYXJrZWQgZm9yIHJlbW92YWwuIgorbXNnc3RyICIiCisiRWxpbWluYSBvIHB1cmdhIChOLlQuIGVzIGRlY2lyLCBlbGltaW5hIGxvcyBmaWNoZXJvcyBkZSBjb25maWd1cmFjacOzbikgbG9zICIKKyJwYXF1ZXRlcyBpbnN0YWxhZG9zIHF1ZSBlc3TDqW4gbWFyY2Fkb3MgcGFyYSBzdSBlbGltaW5hY2nDs24uIgorCisjLiB0eXBlOiBTUworIzogZHNlbGVjdC4xOjE5OQorIywgbm8td3JhcAorbXNnaWQgInF1aXQiCittc2dzdHIgInF1aXQiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToyMDEKK21zZ2lkICJRdWl0IEI8ZHNlbGVjdD4iCittc2dzdHIgIlNhbGlyIGRlIEI8ZHNlbGVjdD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToyMDMKK21zZ2lkICJFeGl0cyB0aGUgcHJvZ3JhbSB3aXRoIHplcm8gKHN1Y2Nlc3NmdWwpIGVycm9yY29kZS4iCittc2dzdHIgIlRlcm1pbmEgZWwgcHJvZ3JhbWEgY29uIMOpeGl0byAoZWwgY8OzZGlnbyBkZSBlcnJvciBkZXZ1ZWx0byBlcyAwKS4iCisKKyMuIHR5cGU6IFNICisjOiBkc2VsZWN0LjE6MjA1CisjLCBuby13cmFwCittc2dpZCAiUGFja2FnZSBzZWxlY3Rpb25zIG1hbmFnZW1lbnQiCittc2dzdHIgIk1hbmlwdWxhY2nDs24gZGUgc2VsZWNjaW9uZXMgZGUgcGFxdWV0ZXMiCisKKyMuIHR5cGU6IFNTCisjOiBkc2VsZWN0LjE6MjA3CisjLCBuby13cmFwCittc2dpZCAiSW50cm9kdWN0aW9uIgorbXNnc3RyICJJbnRyb2R1Y2Npw7NuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MjIzCittc2dpZCAiIgorIkI8ZHNlbGVjdD4gZGlyZWN0bHkgZXhwb3NlcyB0aGUgYWRtaW5pc3RyYXRvciB0byBzb21lIG9mIHRoZSBjb21wbGV4aXRpZXMgIgorImludm9sdmVkIHdpdGggbWFuYWdpbmcgbGFyZ2Ugc2V0cyBvZiBwYWNrYWdlcyB3aXRoIG1hbnkgaW50ZXJkZXBlbmRlbmNpZXMuICIKKyJGb3IgYSB1c2VyIHdobyBpcyB1bmZhbWlsaWFyIHdpdGggdGhlIGNvbmNlcHRzIGFuZCB0aGUgd2F5cyBvZiB0aGUgZGViaWFuICIKKyJwYWNrYWdlIG1hbmFnZW1lbnQgc3lzdGVtLCBpdCBjYW4gYmUgcXVpdGUgb3ZlcndoZWxtaW5nLiBBbHRob3VnaCBCPGRzZWxlY3Q+ICIKKyJpcyBhaW1lZCBhdCBlYXNpbmcgcGFja2FnZSBtYW5hZ2VtZW50IGFuZCBhZG1pbmlzdHJhdGlvbiwgaXQgaXMgb25seSAiCisiaW5zdHJ1bWVudGFsIGluIGRvaW5nIHNvIGFuZCBjYW4gbm90IGJlIGFzc3VtZWQgdG8gYmUgYSBzdWZmaWNpZW50ICIKKyJzdWJzdGl0dXRlIGZvciBhZG1pbmlzdHJhdG9yIHNraWxsIGFuZCB1bmRlcnN0YW5kaW5nLiBUaGUgdXNlciBpcyByZXF1aXJlZCAiCisidG8gYmUgZmFtaWxpYXIgd2l0aCB0aGUgY29uY2VwdHMgdW5kZXJseWluZyB0aGUgRGViaWFuIHBhY2thZ2luZyBzeXN0ZW0uICBJbiAiCisiY2FzZSBvZiBkb3VidCwgY29uc3VsdCB0aGUgQjxkcGtnPigxKSBtYW5wYWdlIGFuZCB0aGUgRGViaWFuIFBvbGljeSBtYW51YWwsICIKKyJjb250YWluZWQgaW4gdGhlIEI8ZGViaWFuLXBvbGljeT4gcGFja2FnZS4iCittc2dzdHIgIiIKKyJCPGRzZWxlY3Q+IGV4cG9uZSBkaXJlY3RhbWVudGUgYWwgYWRtaW5pc3RyYWRvciBhIGFsZ3VuYXMgZGUgbGFzICIKKyJjb21wbGVqaWRhZGVzIHJlbGFjaW9uYWRhcyBjb24gbGEgZ2VzdGnDs24gZGUgZ3JhbmRlcyBjb25qdW50b3MgZGUgcGFxdWV0ZXMgIgorImNvbiBtdWNoYXMgZGVwZW5kZW5jaWFzIGVudHJlbGF6YWRhcy4gRWwgdXN1YXJpbyBxdWUgbm8gZXN0w6kgZmFtaWxpYXJpemFkbyAiCisiY29uIGxvcyBjb25jZXB0b3MgeSBlbCBzaXN0ZW1hIGRlIGdlc3Rpw7NuIGRlIHBhcXVldGVzIGRlIERlYmlhbiBwdWVkZSAiCisiZW5jb250cmFyIGVzdGUgcHJvY2VzbyB1biB0YW50byBhYnJ1bWFkb3IuIEEgcGVzYXIgZGUgcXVlIGVsIG9iamV0aXZvIGRlICIKKyJCPGRzZWxlY3Q+IGVzIHNlciB1biBwcm9ncmFtYSBxdWUgZmFjaWxpdGUgbGEgZ2VzdGnDs24geSBhZG1pbmlzdHJhY2nDs24gZGUgIgorInBhcXVldGVzLCBzw7NsbyBsbyBoYWNlIGRlIGZvcm1hIGluc3RydW1lbnRhbCwgcG9yIGxvIHF1ZSBubyBzZSBwdWVkZSAiCisiY29uc2lkZXJhciBjb21vIHVuIHN1YnN0aXR1dG8gZGUgbG9zIGNvbm9jaW1pZW50b3MgeSBoYWJpbGlkYWRlcyBkZSB1biAiCisiYWRtaW5pc3RyYWRvci4gU2UgcmVxdWllcmUgcXVlIGVsIHVzdWFyaW8gZXN0w6kgZmFtaWxpYXJpemFkbyBjb24gbG9zICIKKyJjb25jZXB0b3Mgc3VieWFjZW50ZXMgYWwgc2lzdGVtYSBkZSBwYXF1ZXRlcyBkZSBEZWJpYW4uIEVuIGNhc28gZGUgZHVkYXMsICIKKyJjb25zdWx0ZSBsYSBww6FnaW5hIGRlIG1hbnVhbCBkZSBCPGRwa2coOCk+IHkgZWwgTWFudWFsIGRlIE5vcm1hcyBkZSBEZWJpYW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MjI5Cittc2dpZCAiIgorIlVubGVzcyBCPGRzZWxlY3Q+IGlzIHJ1biBpbiBleHBlcnQgb3IgaW1tZWRpYXRlIG1vZGUsIGEgaGVscCBzY3JlZW4gaXMgZmlyc3QgIgorImRpc3BsYXllZCB3aGVuIGNob29zaW5nIHRoaXMgYWN0aW9uIGZyb20gdGhlIG1lbnUuIFRoZSB1c2VyIGlzIEk8c3Ryb25nbHk+ICIKKyJhZHZpc2VkIHRvIHN0dWR5IGFsbCBvZiB0aGUgaW5mb3JtYXRpb24gcHJlc2VudGVkIGluIHRoZSBvbmxpbmUgaGVscCAiCisic2NyZWVucywgd2hlbiBvbmUgcG9wcyB1cC4gIFRoZSBvbmxpbmUgaGVscCBzY3JlZW5zIGNhbiBhdCBhbnkgdGltZSBiZSAiCisiaW52b2tlZCB3aXRoIHRoZSBCPCc/Jz4ga2V5LiIKK21zZ3N0ciAiIgorIkEgbWVub3MgcXVlIHNlIGVqZWN1dGUgQjxkc2VsZWN0PiBlbiBtb2RvIGV4cGVydG8gbyBpbnRlcm1lZGlvLCBzZSBtdWVzdHJhICIKKyJ1bmEgcGFudGFsbGEgZGUgYXl1ZGEgY3VhbmRvIHNlIHNlbGVjY2lvbmEgZXN0YSBhY2Npw7NuIGRlc2RlIGVsIG1lbsO6LiBTZSAiCisiYWNvbnNlamEgSTxmZXJ2aWVudGVtZW50ZT4gYWwgdXN1YXJpbyBxdWUgZXN0dWRpZSB0b2RhIGxhIGluZm9ybWFjacOzbiAiCisicHJlc2VudGFkYSBlbiBsYXMgcGFudGFsbGFzIGRlIGF5dWRhLiBMYSBheXVkYSBlbiBsw61uZWEgcHVlZGUgb2J0ZW5lcnNlIGVuICIKKyJjdWFscXVpZXIgbW9tZW50byBwdWxzYW5kbyBsYSB0ZWNsYSBCPMKrP8K7Pi4iCisKKyMuIHR5cGU6IFNTCisjOiBkc2VsZWN0LjE6MjMwCisjLCBuby13cmFwCittc2dpZCAiU2NyZWVuIGxheW91dCIKK21zZ3N0ciAiRGlzcG9zaWNpw7NuIGRlIGxhIHBhbnRhbGxhIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MjM4Cittc2dpZCAiIgorIlRoZSBzZWxlY3Qgc2NyZWVuIGlzIGJ5IGRlZmF1bHQgc3BsaXQgaW4gYSB0b3AgYW5kIGEgYm90dG9tIGhhbGYuICBUaGUgdG9wICIKKyJoYWxmIHNob3dzIGEgbGlzdCBvZiBwYWNrYWdlcy4gQSBjdXJzb3IgYmFyIGNhbiBzZWxlY3QgYW4gaW5kaXZpZHVhbCAiCisicGFja2FnZSwgb3IgYSBncm91cCBvZiBwYWNrYWdlcywgaWYgYXBwbGljYWJsZSwgYnkgc2VsZWN0aW5nIHRoZSBncm91cCAiCisiaGVhZGVyLiBUaGUgYm90dG9tIGhhbGYgb2YgdGhlIHNjcmVlbiBzaG93cyBzb21lIGRldGFpbHMgYWJvdXQgdGhlIHBhY2thZ2UgIgorImN1cnJlbnRseSBzZWxlY3RlZCBpbiB0aGUgdG9wIGhhbGYgb2YgdGhlIHNjcmVlbi4gIFRoZSB0eXBlIG9mIGRldGFpbCB0aGF0ICIKKyJpcyBkaXNwbGF5ZWQgY2FuIGJlIHZhcmllZC4iCittc2dzdHIgIiIKKyJMYSBwYW50YWxsYSBkZSBzZWxlY2Npw7NuIGVzdMOhIGRpdmlkaWRhIGVuIGRvcyBwYXJ0ZXMsIHN1cGVyaW9yIGUgaW5mZXJpb3IsICIKKyJkZSBmb3JtYSBwcmVkZWZpbmlkby4gTGEgcGFydGUgc3VwZXJpb3IgbXVlc3RyYSBsYSBsaXN0YSBkZSBwYXF1ZXRlcy4gUHVlZGUgIgorInNlbGVjY2lvbmFyIHVuIHBhcXVldGUgaW5kaXZpZHVhbCBwdWxzYW5kbyBzb2JyZSDDqWwsIG8gdW4gZ3J1cG8gZGUgcGFxdWV0ZXMsICIKKyJzaSBlcyBxdWUgc2UgcHVlZGUsIHNlbGVjY2lvbmFuZG8gbGEgY2FiZWNlcmEgZGVsIGdydXBvLiBMYSBwYXJ0ZSBpbmZlcmlvciAiCisiZGUgbGEgcGFudGFsbGEgbXVlc3RyYSBhbGd1bm9zIGRlIGxvcyBkZXRhbGxlcyBkZWwgcGFxdWV0ZSBzZWxlY2Npb25hZG8gZW4gIgorImxhIHBhcnRlIHN1cGVyaW9yIGRlIGxhIHBhbnRhbGxhLiBFbCB0aXBvIGRlIGRldGFsbGUgbW9zdHJhZG8gcHVlZGUgdmFyaWFyLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjI0MQorbXNnaWQgIiIKKyJQcmVzc2luZyB0aGUgQjwnSSc+IGtleSB0b2dnbGVzIGEgZnVsbC1zY3JlZW4gZGlzcGxheSBvZiB0aGUgcGFja2FnZXMgbGlzdCwgIgorImFuIGVubGFyZ2VkIHZpZXcgb2YgdGhlIHBhY2thZ2UgZGV0YWlscywgb3IgdGhlIGVxdWFsbHkgc3BsaXQgc2NyZWVuLiIKK21zZ3N0ciAiIgorIlB1bHNhciBsYSB0ZWNsYSBCPMKrScK7PiBjb25tdXRhIGxhIGxpc3RhIGRlIHBhcXVldGVzIGEgcGFudGFsbGEgY29tcGxldGEsIHVuYSAiCisidmlzdGEgYXVtZW50YWRhIGRlIGxvcyBkZXRhbGxlcyBkZSBsb3MgcGFxdWV0ZXMsIG8gbGEgZGl2aWRlIGxhIHBhbnRhbGxhICIKKyJzaW3DqXRyaWNhbWVudGUuIgorCisjLiB0eXBlOiBTUworIzogZHNlbGVjdC4xOjI0MgorIywgbm8td3JhcAorbXNnaWQgIlBhY2thZ2UgZGV0YWlscyB2aWV3IgorbXNnc3RyICJEZXRhbGxlcyBkZSBsYSB2aXN0YSBkZSBwYXF1ZXRlcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToyNTEKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiVGhlIHBhY2thZ2UgZGV0YWlscyB2aWV3IGJ5IGRlZmF1bHQgc2hvd3MgdGhlIGV4dGVuZGVkIHBhY2thZ2UgZGVzY3JpcHRpb25cbiIKKyJmb3IgdGhlIHBhY2thZ2UgdGhhdCBpcyBjdXJyZW50bHkgc2VsZWN0ZWQgaW4gdGhlIHBhY2thZ2VzIHN0YXR1cyBsaXN0LlxuIgorIlRoZSB0eXBlIG9mIGRldGFpbCBjYW4gYmUgdG9nZ2xlZCBieSBwcmVzc2luZyB0aGUgQjwnaSc+IGtleS4gVGhpc1xuIgorImFsdGVybmF0ZXMgYmV0d2VlbjpcbiIKKyIgLSB0aGUgZXh0ZW5kZWQgZGVzY3JpcHRpb25cbiIKKyIgLSB0aGUgY29udHJvbCBpbmZvcm1hdGlvbiBmb3IgdGhlIGluc3RhbGxlZCB2ZXJzaW9uXG4iCisiIC0gdGhlIGNvbnRyb2wgaW5mb3JtYXRpb24gZm9yIHRoZSBhdmFpbGFibGUgdmVyc2lvblxuIgorbXNnc3RyICIiCisiUG9yIG9taXNpw7NuIHNlIG11ZXN0cmEgdW5hIGRlc2NyaXBjacOzbiBiYXN0YW50ZSBleHRlbnNhIGRlbCBwYXF1ZXRlXG4iCisic2VsZWNjaW9uYWRvIGVuIGxhIGxpc3RhLlxuIgorIlB1ZWRlIG1vZGlmaWNhciBlbCB0aXBvIGRlIGRldGFsbGVzIHB1bHNhbmRvIGxhIHRlY2xhIEI8wqtpwrs+LlxuIgorIkxhcyBvcGNpb25lcyBwb3NpYmxlcyBzb246XG4iCisiIC0gTGEgZGVzY3JpcGNpw7NuIGV4dGVuZGlkYVxuIgorIiAtIExhIGluZm9ybWFjacOzbiBkZSBjb250cm9sIGRlIGxhIHZlcnNpw7NuIGluc3RhbGFkYVxuIgorIiAtIExhIGluZm9ybWFjacOzbiBkZSBjb250cm9sIGRlIGxhIHZlcnNpw7NuIGRpc3BvbmlibGVcbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjI1NQorbXNnaWQgIiIKKyJJbiBhIGRlcGVuZGVuY3kgcmVzb2x1dGlvbiBzY3JlZW4sIHRoZXJlIGlzIGFsc28gdGhlIHBvc3NpYmlsaXR5IG9mIHZpZXdpbmcgIgorInRoZSBzcGVjaWZpYyB1bnJlc29sdmVkIGRlcGVuZHMgb3IgY29uZmxpY3RzIHJlbGF0ZWQgdG8gdGhlIHBhY2thZ2UgYW5kICIKKyJjYXVzaW5nIGl0IHRvIGJlIGxpc3RlZC4iCittc2dzdHIgIiIKKyJMYSBwYW50YWxsYSBkZSByZXNvbHVjacOzbiBkZSBkZXBlbmRlbmNpYXMgdGFtYmnDqW4gb2ZyZWNlIGxhIHBvc2liaWxpZGFkIGRlICIKKyJ2ZXIgbG9zIHBvc2libGVzIHByb2JsZW1hcyBkZSBkZXBlbmRlbmNpYXMgbyBjb25mbGljdG9zIHNpbiByZXNvbHZlciAiCisicmVsYWNpb25hZG9zIGNvbiBlbCBwYXF1ZXRlIHF1ZSBjYXVzYSBsb3MgcHJvYmxlbWFzLiIKKworIy4gdHlwZTogU1MKKyM6IGRzZWxlY3QuMToyNTYKKyMsIG5vLXdyYXAKK21zZ2lkICJQYWNrYWdlcyBzdGF0dXMgbGlzdCIKK21zZ3N0ciAiTGlzdGEgZGUgZXN0YWRvIGRlIGxvcyBwYXF1ZXRlcyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjI2MQorbXNnaWQgIiIKKyJUaGUgbWFpbiBzZWxlY3Qgc2NyZWVuIGRpc3BsYXlzIGEgbGlzdCBvZiBhbGwgcGFja2FnZXMga25vd24gdG8gdGhlIGRlYmlhbiAiCisicGFja2FnZSBtYW5hZ2VtZW50IHN5c3RlbS4gVGhpcyBpbmNsdWRlcyBwYWNrYWdlcyBpbnN0YWxsZWQgb24gdGhlIHN5c3RlbSAiCisiYW5kIHBhY2thZ2VzIGtub3duIGZyb20gdGhlIGF2YWlsYWJsZSBwYWNrYWdlcyBkYXRhYmFzZS4iCittc2dzdHIgIiIKKyJMYSBwYW50YWxsYSBwcmluY2lwYWwgbXVlc3RyYSB1bmEgbGlzdGEgZGUgdG9kb3MgbG9zIHBhcXVldGVzIGNvbm9jaWRvcyBwb3IgIgorImVsIHNpc3RlbWEgZGUgZ2VzdGnDs24gZGUgcGFxdWV0ZXMgZGUgRGViaWFuLiBFc3RvIGluY2x1eWUgbG9zIHBhcXVldGVzICIKKyJpbnN0YWxhZG9zIGVuIGVsIHNpc3RlbWEgeSB0YW1iacOpbiBhcXVlbGxvcyBjb25vY2lkb3MgbWVkaWFudGUgbGEgYmFzZSBkZSAiCisiZGF0b3MgZGUgcGFxdWV0ZXMgZGlzcG9uaWJsZXMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MjY5Cittc2dpZCAiIgorIkZvciBldmVyeSBwYWNrYWdlLCB0aGUgbGlzdCBzaG93cyB0aGUgcGFja2FnZSdzIHN0YXR1cywgcHJpb3JpdHksIHNlY3Rpb24sICIKKyJpbnN0YWxsZWQgYW5kIGF2YWlsYWJsZSB2ZXJzaW9ucywgdGhlIHBhY2thZ2UgbmFtZSBhbmQgaXRzIHNob3J0ICIKKyJkZXNjcmlwdGlvbiwgYWxsIGluIG9uZSBsaW5lLiBCeSBwcmVzc2luZyB0aGUgQjwnVic+IGtleSwgdGhlIGRpc3BsYXkgb2YgdGhlICIKKyJpbnN0YWxsZWQgYW5kIGF2YWlsYWJsZSB2ZXJzaW9uIGNhbiBiZSB0b2dnbGVkIGJldHdlZW4gb24gYW4gb2ZmLiBCeSAiCisicHJlc3NpbmcgdGhlIEI8J3YnPiBrZXksIHRoZSBwYWNrYWdlIHN0YXR1cyBkaXNwbGF5IGlzIHRvZ2dsZWQgYmV0d2VlbiAiCisidmVyYm9zZSBhbmQgc2hvcnRoYW5kLiAgU2hvcnRoYW5kIGRpc3BsYXkgaXMgdGhlIGRlZmF1bHQuIgorbXNnc3RyICIiCisiUGFyYSBjYWRhIHBhcXVldGUsIGxhIGxpc3RhIG11ZXN0cmEgZWwgZXN0YWRvLCBwcmlvcmlkYWQsIHNlY2Npw7NuLCBsYXMgIgorInZlcnNpb25lcyBpbnN0YWxhZGEgeSBkaXNwb25pYmxlLCBlbCBub21icmUgZGVsIHBhcXVldGUgeSBzdSBkZXNjcmlwY2nDs24gIgorImNvcnRhLCB0b2RvIGVzdG8gZW4gdW5hIHNvbGEgbMOtbmVhLiBQdWxzYXIgbGEgdGVjbGEgQjzCq1bCuz4gY29ubXV0YSBsYSAiCisiYXBhcmljacOzbiBkZSBsYSB2ZXJzacOzbiBpbnN0YWxhZGEsIG8gbGEgZGlzcG9uaWJsZS4gTGEgdGVjbGEgQjzCq3bCuz4gbW9kaWZpY2EgIgorImxhIHBhbnRhbGxhIGRlbCBlc3RhZG8gZGVsIHBhcXVldGUgYSBsYSBmb3JtYSBicmV2ZSBvIGluZm9ybWF0aXZhLiBMYSBmb3JtYSAiCisiYnJldmUgZXMgbGEgb3BjacOzbiBwcmVkZWZpbmlkby4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToyNzUKK21zZ2lkICIiCisiVGhlIHNob3J0aGFuZCBzdGF0dXMgaW5kaWNhdGlvbiBjb25zaXN0cyBvZiBmb3VyIHBhcnRzOiBhbiBlcnJvciBmbGFnLCB3aGljaCAiCisic2hvdWxkIG5vcm1hbGx5IGJlIGNsZWFyLCB0aGUgY3VycmVudCBzdGF0dXMsIHRoZSBsYXN0IHNlbGVjdGlvbiBzdGF0ZSBhbmQgIgorInRoZSBjdXJyZW50IHNlbGVjdGlvbiBzdGF0ZS4gIFRoZSBmaXJzdCB0d28gcmVsYXRlIHRvIHRoZSBhY3R1YWwgc3RhdGUgb2YgIgorInRoZSBwYWNrYWdlLCB0aGUgc2Vjb25kIHBhaXIgYXJlIGFib3V0IHRoZSBzZWxlY3Rpb25zIHNldCBieSB0aGUgdXNlci4iCittc2dzdHIgIiIKKyJMYSBmb3JtYSBicmV2ZSBkZWwgZXN0YWRvIGNvbnNpc3RlIGRlIGN1YXRybyBwYXJ0ZXM6IHVuYSBtYXJjYSBkZSBmYWxsbywgbGEgIgorImN1YWwgbm9ybWFsbWVudGUgZGViZXLDrWEgZXN0YXIgdmFjw61hLCBlbCBlc3RhZG8gYWN0dWFsLCBlbCBlc3RhZG8gZGUgbGEgIgorIsO6bHRpbWEgc2VsZWNjacOzbiB5IGVsIGVzdGFkbyBkZSBsYSBzZWxlY2Npw7NuIGFjdHVhbC4gTGFzIGRvcyBwcmltZXJhcyBlc3TDoW4gIgorImVuIGRpcmVjdGEgcmVsYWNpw7NuIGNvbiBlbCBlc3RhZG8gYWN0dWFsIGRlbCBwYXF1ZXRlLCBlbCBzZWd1bmRvIHBhciBjb24gbGFzICIKKyJzZWxlY2Npb25lcyBkZWwgdXN1YXJpby4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToyOTMKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiVGhlc2UgYXJlIHRoZSBtZWFuaW5ncyBvZiB0aGUgc2hvcnRoYW5kIHBhY2thZ2Ugc3RhdHVzIGluZGljYXRvciBjb2RlczpcbiIKKyIgRXJyb3IgZmxhZzpcbiIKKyIgIEk8ZW1wdHk+ICAgbm8gZXJyb3JcbiIKKyIgIEI8Uj4gICAgICAgc2VyaW91cyBlcnJvciwgbmVlZHMgcmVpbnN0YWxsYXRpb247XG4iCisiIEluc3RhbGxlZCBzdGF0ZTpcbiIKKyIgIEk8ZW1wdHk+ICAgbm90IGluc3RhbGxlZDtcbiIKKyIgIEI8Kj4gICAgICAgZnVsbHkgaW5zdGFsbGVkIGFuZCBjb25maWd1cmVkO1xuIgorIiAgQjwtPiAgICAgICBub3QgaW5zdGFsbGVkIGJ1dCBzb21lIGNvbmZpZyBmaWxlcyBtYXkgcmVtYWluO1xuIgorIiAgQjxVPiAgICAgICB1bnBhY2tlZCBidXQgbm90IHlldCBjb25maWd1cmVkO1xuIgorIiAgQjxDPiAgICAgICBoYWxmLWNvbmZpZ3VyZWQgKGFuIGVycm9yIGhhcHBlbmVkKTtcbiIKKyIgIEI8ST4gICAgICAgaGFsZi1pbnN0YWxsZWQgKGFuIGVycm9yIGhhcHBlbmVkKS5cbiIKKyIgQ3VycmVudCBhbmQgcmVxdWVzdGVkIHNlbGVjdGlvbnM6XG4iCisiICBCPCo+ICAgICAgIG1hcmtlZCBmb3IgaW5zdGFsbGF0aW9uIG9yIHVwZ3JhZGU7XG4iCisiICBCPC0+ICAgICAgIG1hcmtlZCBmb3IgcmVtb3ZhbCwgY29uZmlndXJhdGlvbiBmaWxlcyByZW1haW47XG4iCisiICBCPD0+ICAgICAgIG9uIGhvbGQ6IHBhY2thZ2Ugd2lsbCBub3QgYmUgcHJvY2Vzc2VkIGF0IGFsbDtcbiIKKyIgIEI8Xz4gICAgICAgbWFya2VkIGZvciBwdXJnZSwgYWxzbyByZW1vdmUgY29uZmlndXJhdGlvbjtcbiIKKyIgIEI8bj4gICAgICAgcGFja2FnZSBpcyBuZXcgYW5kIGhhcyB5ZXQgdG8gYmUgbWFya2VkLlxuIgorbXNnc3RyICIiCisiQXF1w60gdGllbmUgdW5hIHRhYmxhIGRlIHNpZ25pZmljYWRvcyBkZSBpbmRpY2Fkb3JlcyBkZWwgZXN0YWRvIGRlbCBwYXF1ZXRlOlxuIgorIiBNYXJjYSBkZSBlcnJvcjogXG4iCisiICBJPHZhY8Otbz4gICBObyBoYXkgZXJyb3IuXG4iCisiICBCPFI+ICAgICAgIEVycm9yIHNlcmlvLCBuZWNlc2l0YSB1bmEgcmVpbnN0YWxhY2nDs24uXG4iCisiIEVzdGFkbyBkZSBsYSBpbnN0YWxhY2nDs246XG4iCisiICBJPHZhY8Otbz4gICBObyBlc3TDoSBpbnN0YWxhZG8uXG4iCisiICBCPCo+ICAgICAgIFRvdGFsbWVudGUgaW5zdGFsYWRvIHkgY29uZmlndXJhZG8uXG4iCisiICBCPC0+ICAgICAgIE5vIGVzdMOhIGluc3RhbGFkbywgcGVybyBhw7puIGV4aXN0ZW4gYXJjaGl2b3MgZGVcbiIKKyIgICAgICAgICAgICAgY29uZmlndXJhY2nDs24uXG4iCisiICBCPFU+ICAgICAgIERlc2VtcGFxdWV0YWRvLCBwZXJvIG5vIGNvbmZpZ3VyYWRvIHBvciBlbCBtb21lbnRvLlxuIgorIiAgQjxDPiAgICAgICBNZWRpby1jb25maWd1cmFkbyAob2N1cnJpw7MgdW4gZXJyb3IpLlxuIgorIiAgQjxJPiAgICAgICBNZWRpby1pbnN0YWxhZG8gKG9jdXJyacOzIHVuIGVycm9yKS5cbiIKKyIgU2VsZWNjacOzbiBhY3R1YWwgeSBzb2xpY2l0YWRhOlxuIgorIiAgQjwqPiAgICAgICBNYXJjYWRvIHBhcmEgc3UgaW5zdGFsYWNpw7NuIG8gYWN0dWFsaXphY2nDs24uXG4iCisiICBCPC0+ICAgICAgIE1hcmNhZG8gcGFyYSBzdSBlbGltaW5hY2nDs24sIG5vIHNlIGVsaW1pbmFyw6FuXG4iCisiICAgICAgICAgICAgIGxvcyBmaWNoZXJvcyBkZSBjb25maWd1cmFjacOzbi5cbiIKKyIgIEI8PT4gICAgICAgQmxvcXVlYWRvOiBlbCBwYXF1ZXRlIG5vIHNlIHByb2Nlc2Fyw6EgZW4gYWJzb2x1dG8uXG4iCisiICBCPF8+ICAgICAgIEVsIHBhcXVldGUgZXN0w6EgbWFyY2FkbyBwYXJhIHN1IHB1cmdhY2nDs24sXG4iCisiICAgICAgICAgICAgIHRhbWJpw6luIGVsaW1pbmEgbG9zIGZpY2hlcm9zIGRlIGNvbmZpZ3VyYWNpw7NuLlxuIgorIiAgQjxuPiAgICAgICBFbCBwYXF1ZXRlIGVzIG51ZXZvIHkgYcO6biBubyBzZSBoYSBtYXJjYWRvLlxuIgorCisjLiB0eXBlOiBTUworIzogZHNlbGVjdC4xOjI5NAorIywgbm8td3JhcAorbXNnaWQgIkN1cnNvciBhbmQgc2NyZWVuIG1vdmVtZW50IgorbXNnc3RyICJNb3ZpbWllbnRvIGRlbCBjdXJzb3IgeSBkZSBsYSBwYW50YWxsYSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjI5OQorbXNnaWQgIiIKKyJUaGUgcGFja2FnZSBzZWxlY3Rpb24gbGlzdCBhbmQgdGhlIGRlcGVuZGVuY3kgY29uZmxpY3QgcmVzb2x1dGlvbiBzY3JlZW5zICIKKyJjYW4gYmUgbmF2aWdhdGVkIHVzaW5nIG1vdGlvbiBjb21tYW5kcyBtYXBwZWQgdG8gdGhlIGZvbGxvd2luZyBrZXlzOiIKK21zZ3N0ciAiIgorIkxhIGxpc3RhIGRlIHNlbGVjY2nDs24gZGUgcGFxdWV0ZXMgeSBsYSBwYW50YWxsYSBkZSByZXNvbHVjacOzbiBkZSAiCisiZGVwZW5kZW5jaWFzIHkgY29uZmxpY3RvcyBzZSBwdWVkZW4gZXhwbG9yYXIgdXNhbmRvIGxhcyBzaWd1aWVudGVzIHRlY2xhczoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTozMTYKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiICBCPHAsIFVwLCBrPiAgICAgICAgICAgbW92ZSBjdXJzb3IgYmFyIHVwXG4iCisiICBCPG4sIERvd24sIGo+ICAgICAgICAgbW92ZSBjdXJzb3IgYmFyIGRvd25cbiIKKyIgIEI8UCwgUGd1cCwgQmFja3NwYWNlPiBzY3JvbGwgbGlzdCAxIHBhZ2UgdXBcbiIKKyIgIEI8TiwgUGdkbiwgU3BhY2U+ICAgICBzY3JvbGwgbGlzdCAxIHBhZ2UgZG93blxuIgorIiAgQjxecD4gICAgICAgICAgICAgICAgIHNjcm9sbCBsaXN0IDEgbGluZSB1cFxuIgorIiAgQjxebj4gICAgICAgICAgICAgICAgIHNjcm9sbCBsaXN0IDEgbGluZSBkb3duXG4iCisiICBCPHQsIEhvbWU+ICAgICAgICAgICAganVtcCB0byB0b3Agb2YgbGlzdFxuIgorIiAgQjxlLCBFbmQ+ICAgICAgICAgICAgIGp1bXAgdG8gZW5kIG9mIGxpc3RcbiIKKyIgIEI8dT4gICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyAxIHBhZ2UgdXBcbiIKKyIgIEI8ZD4gICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyAxIHBhZ2UgZG93blxuIgorIiAgQjxedT4gICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIDEgbGluZSB1cFxuIgorIiAgQjxeZD4gICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIDEgbGluZSBkb3duXG4iCisiICBCPEIsIExlZnQtYXJyb3c+ICAgICAgcGFuIGRpc3BsYXkgMS8zIHNjcmVlbiBsZWZ0XG4iCisiICBCPEYsIFJpZ2h0LWFycm93PiAgICAgcGFuIGRpc3BsYXkgMS8zIHNjcmVlbiByaWdodFxuIgorIiAgQjxeYj4gICAgICAgICAgICAgICAgIHBhbiBkaXNwbGF5IDEgY2hhcmFjdGVyIGxlZnRcbiIKKyIgIEI8XmY+ICAgICAgICAgICAgICAgICBwYW4gZGlzcGxheSAxIGNoYXJhY3RlciByaWdodFxuIgorbXNnc3RyICIiCisiICBCPHAsIGFycmliYSwgaz4gICAgICAgTXVldmUgZWwgY3Vyc29yIGhhY2lhIGFycmliYS5cbiIKKyIgIEI8biwgYWJham8sIGo+ICAgICAgICBNdWV2ZSBlbCBjdXJzb3IgaGFjaWEgYWJham8uXG4iCisiICBCPFAsIHJlcMOhZywgcmV0b3Jubz4gIE11ZXZlIGxhIGxpc3RhIHVuYSBww6FnaW5hIGhhY2lhIGFycmliYS5cbiIKKyIgIEI8TiwgYXZww6FnLCBFc3BhY2lvPiAgTXVldmUgbGEgbGlzdGEgdW5hIHDDoWdpbmEgaGFjaWEgYWJham8uXG4iCisiICBCPF5wPiAgICAgICAgICAgICAgICAgTXVldmUgbGEgbGlzdGEgdW5hIGzDrW5lYSBoYWNpYSBhcnJpYmEuXG4iCisiICBCPF5uPiAgICAgICAgICAgICAgICAgTXVldmUgbGEgbGlzdGEgdW5hIGzDrW5lYSBoYWNpYSBhYmFqby5cbiIKKyIgIEI8dCwgSW5pY2lvPiAgICAgICAgICBTYWx0YSBhbCBwcmluY2lwaW8gZGUgbGEgbGlzdGEuXG4iCisiICBCPGUsIEZpbj4gICAgICAgICAgICAgU2FsdGEgYWwgZmluIGRlIGxhIGxpc3RhLlxuIgorIiAgQjx1PiAgICAgICAgICAgICAgICAgIE11ZXZlIGluZm8gdW5hIHDDoWdpbmEgaGFjaWEgYXJyaWJhLlxuIgorIiAgQjxkPiAgICAgICAgICAgICAgICAgIE11ZXZlIGluZm8gdW5hIHDDoWdpbmEgaGFjaWEgYWJham8uXG4iCisiICBCPF51PiAgICAgICAgICAgICAgICAgTXVldmUgaW5mbyB1bmEgbMOtbmVhIGhhY2lhIGFiYWpvLlxuIgorIiAgQjxeZD4gICAgICAgICAgICAgICAgIE11ZXZlIGluZm8gdW5hIGzDrW5lYSBoYWNpYSBhYmFqby5cbiIKKyIgIEI8QiwgaXpxdWllcmRhPiAgICAgICBFeGhpYmUgbGEgcGFudGFsbGEgMS8zIGhhY2lhIGxhIGl6cXVpZXJkYS5cbiIKKyIgIEI8RiwgZGVyZWNoYT4gICAgICAgICBFeGhpYmUgbGEgcGFudGFsbGEgMS8zIGhhY2lhIGxhIGRlcmVjaGEuXG4iCisiICBCPF5iPiAgICAgICAgICAgICAgICAgRXhoaWJlIHVuIGNhcsOhY3RlciBoYWNpYSBsYSBpenF1aWVyZGEuXG4iCisiICBCPF5mPiAgICAgICAgICAgICAgICAgRXhoaWJlIHVuIGNhcsOhY3RlciBoYWNpYSBsYSBkZXJlY2hhLlxuIgorCisjLiB0eXBlOiBTUworIzogZHNlbGVjdC4xOjMxNworIywgbm8td3JhcAorbXNnaWQgIlNlYXJjaGluZyBhbmQgc29ydGluZyIKK21zZ3N0ciAiQnVzY2FyIHkgb3JkZW5hciIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjMzMQorbXNnaWQgIiIKKyJUaGUgbGlzdCBvZiBwYWNrYWdlcyBjYW4gYmUgc2VhcmNoZWQgYnkgcGFja2FnZSBuYW1lLiBUaGlzIGlzIGRvbmUgYnkgIgorInByZXNzaW5nIEI8Jy8nPiwgYW5kIHR5cGluZyBhIHNpbXBsZSBzZWFyY2ggc3RyaW5nLiBUaGUgc3RyaW5nIGlzICIKKyJpbnRlcnByZXRlZCBhcyBhIEI8cmVnZXg+KDcpICByZWd1bGFyIGV4cHJlc3Npb24uICBJZiB5b3UgYWRkIEI8Jy9kJz4gdG8gdGhlICIKKyJzZWFyY2ggZXhwcmVzc2lvbiwgZHNlbGVjdCB3aWxsIGFsc28gc2VhcmNoIGluIGRlc2NyaXB0aW9ucy4gSWYgeW91IGFkZCBCPCcvIgorImknPiB0aGUgc2VhcmNoIHdpbGwgYmUgY2FzZSBpbnNlbnNpdGl2ZS4gIFlvdSBtYXkgY29tYmluZSB0aGVzZSB0d28gc3VmZml4ZXMgIgorImxpa2UgdGhpczogQjwnL2lkJz4uICBSZXBlYXRlZCBzZWFyY2hpbmcgaXMgYWNjb21wbGlzaGVkIGJ5IHJlcGVhdGVkbHkgIgorInByZXNzaW5nIHRoZSBCPCduJz4gb3IgQjwnXFxlJz4ga2V5cywgdW50aWwgdGhlIHdhbnRlZCBwYWNrYWdlIGlzIGZvdW5kLiAgSWYgIgorInRoZSBzZWFyY2ggcmVhY2hlcyB0aGUgYm90dG9tIG9mIHRoZSBsaXN0LCBpdCB3cmFwcyB0byB0aGUgdG9wIGFuZCBjb250aW51ZXMgIgorInNlYXJjaGluZyBmcm9tIHRoZXJlLiIKK21zZ3N0ciAiIgorIlB1ZWRlIHJlYWxpemFyIGLDunNxdWVkYXMgZGUgcGFxdWV0ZXMgZW4gbGEgbGlzdGEgbWVkaWFudGUgZWwgbm9tYnJlLiBQdWVkZSAiCisiaGFjZXJsbyBwdWxzYW5kbyBsYSB0ZWNsYSBCPMKrL8K7PiB5IGVzY3JpYmllbmRvIGVsIG5vbWJyZSBkZWwgcGFxdWV0ZSBxdWUgIgorImRlc2VhIGJ1c2Nhci4gRXN0ZSBub21icmUgc2UgaW50ZXJwcmV0YSBjb21vIHVuYSBleHByZXNpw7NuIHJlZ3VsYXIgZGUgIgorImFjdWVyZG8gYSBCPHJlZ2V4Pig3KS4gU2kgc2UgYcOxYWRlIEI8wqsvZMK7PiBhIGxhIGLDunNxdWVkYSwgZHNlbGVjdCBidXNjYXLDoSAiCisidGFtYmnDqW4gZW4gbGFzIGRlc2NyaXBjaW9uZXMuIFNpIHNlIGHDsWFkZSBCPMKrL2nCuz4gbGEgYsO6c3F1ZWRhIG5vICIKKyJkaXNjcmltaW5hcsOhIGVudHJlIG1hecO6c2N1bGFzIHkgbWluw7pzY3VsYXMuIFB1ZWRlIGNvbWJpbmFyIGVzdGFzIGRvcyAiCisib3BjaW9uZXMgZGUgZXN0YSBtYW5lcmE6IEI8wqsvaWTCuz4uIFB1ZWRlIHJlcGV0aXIgbGEgYsO6c3F1ZWRhIHB1bHNhbmRvIGxhcyAiCisidGVjbGFzIEI8wqtuwrs+IG8gQjzCq1xcZcK7PiwgaGFzdGEgZW5jb250cmFyIGVsIHBhcXVldGUgcXVlIGVzdGFiYSBidXNjYW5kby4gU2kgIgorImxhIGLDunNxdWVkYSBjb21pZW56YSBhbCBmaW5hbCBkZSBsYSBsaXN0YSwgc3ViaXLDoSBhbCBwcmluY2lwaW8geSB0YW1iacOpbiAiCisiY29udGludWFyw6EgbGEgYsO6c3F1ZWRhIGRlc2RlIGVzZSBwdW50by4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTozMzgKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiVGhlIGxpc3Qgc29ydCBvcmRlciBjYW4gYmUgdmFyaWVkIGJ5IHByZXNzaW5nXG4iCisidGhlIEI8J28nPiBhbmQgQjwnTyc+IGtleXMgcmVwZWF0ZWRseS5cbiIKKyJUaGUgZm9sbG93aW5nIG5pbmUgc29ydCBvcmRlcmluZ3MgY2FuIGJlIHNlbGVjdGVkOlxuIgorIiBhbHBoYWJldCAgICAgICAgICBhdmFpbGFibGUgICAgICAgICAgIHN0YXR1c1xuIgorIiBwcmlvcml0eStzZWN0aW9uICBhdmFpbGFibGUrcHJpb3JpdHkgIHN0YXR1cytwcmlvcml0eVxuIgorIiBzZWN0aW9uK3ByaW9yaXR5ICBhdmFpbGFibGUrc2VjdGlvbiAgIHN0YXR1cytzZWN0aW9uXG4iCittc2dzdHIgIiIKKyJFbCBvcmRlbiBkZSBsYSBsaXN0YSBzZSBwdWVkZSBtb2RpZmljYXIgcHVsc2FuZG8gbGFzIHRlY2xhc1xuIgorIkI8wqtvwrs+IHkgQjzCq0/Cuz4gcmVwZXRpZGFtZW50ZS5cbiIKKyJMb3Mgc2lndWllbnRlcyBvcmRlbmFtaWVudG9zIHNvbiBwb3NpYmxlczpcbiIKKyIgYWxmYWLDqXRpY28gICAgICAgIGRpc3BvbmlibGUgICAgICAgICAgXHQgZXN0YWRvXG4iCisiIHByaW9yaWRhZCtzZWNjacOzbiBkaXNwb25pYmxlK3ByaW9yaWRhZCAgZXN0YWRvK3ByaW9yaWRhZFxuIgorIiBzZWNjacOzbitwcmlvcmlkYWQgZGlzcG9uaWJsZStzZWNjacOzbiAgICBlc3RhZG8rc2VjY2nDs25cbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjM0MQorbXNnaWQgIiIKKyJXaGVyZSBub3QgbGlzdGVkIGFib3ZlIGV4cGxpY2l0bHksIGFscGhhYmV0aWMgb3JkZXIgaXMgdXNlZCBhcyB0aGUgZmluYWwgIgorInN1Ym9yZGVyaW5nIHNvcnQga2V5LiIKK21zZ3N0ciAiIgorIlNpIG5vIHNlIHVzYSBleHBsw61jaXRhbWVudGUgbmluZ3VubyBkZSBsb3MgbWVuY2lvbmFkb3MgYXJyaWJhLCBzZSB1c2EgZWwgIgorIm9yZGVuIGFsZmFiw6l0aWNvLiIKKworIy4gdHlwZTogU1MKKyM6IGRzZWxlY3QuMTozNDIKKyMsIG5vLXdyYXAKK21zZ2lkICJBbHRlcmluZyBzZWxlY3Rpb25zIgorbXNnc3RyICJNb2RpZmljYXIgc2VsZWNjaW9uZXMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MzUxCisjLCBuby13cmFwCittc2dpZCAiIgorIlRoZSByZXF1ZXN0ZWQgc2VsZWN0aW9uIHN0YXRlIG9mIGluZGl2aWR1YWwgcGFja2FnZXMgbWF5IGJlXG4iCisiYWx0ZXJlZCB3aXRoIHRoZSBmb2xsb3dpbmcgY29tbWFuZHM6XG4iCisiICBCPCssIEluc2VydD4gICAgaW5zdGFsbCBvciB1cGdyYWRlXG4iCisiICBCPD0sIEg+ICAgICAgICAgaG9sZCBpbiBwcmVzZW50IHN0YXRlIGFuZCB2ZXJzaW9uXG4iCisiICBCPDosIEc+ICAgICAgICAgdW5ob2xkOiB1cGdyYWRlIG9yIGxlYXZlIHVuaW5zdGFsbGVkXG4iCisiICBCPC0sIERlbGV0ZT4gICAgcmVtb3ZlLCBidXQgbGVhdmUgY29uZmlndXJhdGlvblxuIgorIiAgQjxfPiAgICAgICAgICAgIHJlbW92ZSAmIHB1cmdlIGNvbmZpZ3VyYXRpb25cbiIKK21zZ3N0ciAiIgorIkVsIGVzdGFkbyBkZSBsYSBzZWxlY2Npw7NuIHNvbGljaXRhZGEgZGUgcGFxdWV0ZXMgaW5kaXZpZHVhbGVzIHNlIHB1ZWRlXG4iCisiYWx0ZXJhciBtZWRpYW50ZSBsYXMgc2lndWllbnRlcyDDs3JkZW5lczpcbiIKKyIgIEI8KywgSW5zZXJ0PiAgICBJbnN0YWxhIG8gYWN0dWFsaXphLlxuIgorIiAgQjw9LCBIPiAgICAgICAgIEJsb3F1ZWFkbyBlbiBlbCBlc3RhZG8geSB2ZXJzacOzbiBhY3R1YWwuXG4iCisiICBCPDosIEc+ICAgICAgICAgRWxpbWluYSBlbCBibG9xdWVvOiBhY3R1YWxpemEgbyBkZWphIHNpbiBpbnN0YWxhci5cbiIKKyIgIEI8LSwgU3Vwcj4gICAgICBFbGltaW5hLCBwZXJvIGRlamEgbG9zIGZpY2hlcm9zIGRlIGNvbmZpZ3VyYWNpw7NuLlxuIgorIiAgQjxfPiAgICAgICAgICAgIEVsaW1pbmEgeSBib3JyYSBsb3MgZmljaGVyb3MgZGUgY29uZmlndXJhY2nDs24uXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTozNTUKK21zZ2lkICIiCisiV2hlbiB0aGUgY2hhbmdlIHJlcXVlc3QgcmVzdWx0cyBpbiBvbmUgb3IgbW9yZSB1bnNhdGlzZmllZCBkZXBlbmRzIG9yICIKKyJjb25mbGljdHMsIEI8ZHNlbGVjdD4gcHJvbXB0cyB0aGUgdXNlciB3aXRoIGEgZGVwZW5kZW5jeSByZXNvbHV0aW9uIHNjcmVlbi4gIgorIlRoaXMgd2lsbCBiZSBmdXJ0aGVyIGV4cGxhaW5lZCBiZWxvdy4iCittc2dzdHIgIiIKKyJDdWFuZG8gbG9zIGNhbWJpb3MgcmVzdWx0YW4gZW4gdW5hIG8gbcOhcyBkZXBlbmRlbmNpYXMgbm8gc2F0aXNmZWNoYXMsIG8gIgorInRhbWJpw6luIGVuIGNvbmZsaWN0b3MsIEI8ZHNlbGVjdD4gbXVlc3RyYSBhbCB1c3VhcmlvIHVuYSBwYW50YWxsYSBkZSAiCisicmVzb2x1Y2nDs24gZGUgZGVwZW5kZW5jaWFzLiBFc3RhIHBhbnRhbGxhIHNlIGV4cGxpY2Fyw6EgZW4gZGV0YWxsZSBtw6FzIGFiYWpvLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjM2MAorbXNnaWQgIiIKKyJJdCBpcyBhbHNvIHBvc3NpYmxlIHRvIGFwcGx5IHRoZXNlIGNvbW1hbmRzIHRvIGdyb3VwcyBvZiBwYWNrYWdlIHNlbGVjdGlvbnMsICIKKyJieSBwb2ludGluZyB0aGUgY3Vyc29yIGJhciBvbnRvIGEgZ3JvdXAgaGVhZGVyLiBUaGUgZXhhY3QgZ3JvdXBpbmcgb2YgIgorInBhY2thZ2VzIGlzIGRlcGVuZGVudCBvbiB0aGUgY3VycmVudCBsaXN0IG9yZGVyaW5nIHNldHRpbmdzLiIKK21zZ3N0ciAiIgorIlRhbWJpw6luIGVzIHBvc2libGUgYXBsaWNhciBlc3RhcyDDs3JkZW5lcyBhIGdydXBvcyBkZSBzZWxlY2Npb25lcyBkZSAiCisicGFxdWV0ZXMsIGFwdW50YW5kbyBlbCBjdXJzb3IgYSBsYSBjYWJlY2VyYSBkZWwgZ3J1cG8uIEVsIGFncnVwYW1pZW50byAiCisiZXhhY3RvIGRlIGxvcyBwYXF1ZXRlcyBkZXBlbmRlIGRlIGxhIGNvbmZpZ3VyYWNpw7NuIGRlbCBvcmRlbmFtaWVudG8gZGUgbGEgIgorImxpc3RhLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjM2NgorbXNnaWQgIiIKKyJQcm9wZXIgY2FyZSBzaG91bGQgYmUgdGFrZW4gd2hlbiBhbHRlcmluZyBsYXJnZSBncm91cHMgb2Ygc2VsZWN0aW9ucywgIgorImJlY2F1c2UgdGhpcyBjYW4gaW5zdGFudGFuZW91c2x5IGNyZWF0ZSBsYXJnZSBudW1iZXJzIG9mIHVucmVzb2x2ZWQgZGVwZW5kcyAiCisib3IgY29uZmxpY3RzLCBhbGwgb2Ygd2hpY2ggd2lsbCBiZSBsaXN0ZWQgaW4gb25lIGRlcGVuZGVuY3kgcmVzb2x1dGlvbiAiCisic2NyZWVuLCBtYWtpbmcgdGhlbSB2ZXJ5IGhhcmQgdG8gaGFuZGxlLiBJbiBwcmFjdGljZSwgb25seSBob2xkIGFuZCB1bmhvbGQgIgorIm9wZXJhdGlvbnMgYXJlIHVzZWZ1bCB3aGVuIGFwcGxpZWQgdG8gZ3JvdXBzLiIKK21zZ3N0ciAiIgorIlNlIGRlYmUgdG9tYXIgZWwgY3VpZGFkbyBhcHJvcGlhZG8gYWwgYWx0ZXJhciBncnVwb3MgZ3JhbmRlcyBkZSBzZWxlY2Npb25lcywgIgorInlhIHF1ZSBlc3RvIHB1ZWRlIGNyZWFyIGlubWVkaWF0YW1lbnRlIHVuYSBsYXJnYSBsaXN0YSBkZSBkZXBlbmRlbmNpYXMgc2luICIKKyJyZXNvbHZlciBvIGNvbmZsaWN0b3MgY29uIG90cm9zIHBhcXVldGVzLCBsb3MgY3VhbGVzIGFwYXJlY2Vyw6FuIGVuIHVuYSAiCisicGFudGFsbGEgw7puaWNhLCBkaWZpY3VsdGFuZG8gc3UgZ2VzdGnDs24uIEVuIGxhIHByw6FjdGljYSwgYWwgbWFuaXB1bGFyIGdydXBvcyAiCisic8OzbG8gc29uIMO6dGlsZXMgbGFzIG9wZXJhY2lvbmVzIGRlIHJldGVuY2nDs24gwqtob2xkwrsgeSDCq3VuaG9sZMK7LiIKKworIy4gdHlwZTogU1MKKyM6IGRzZWxlY3QuMTozNjcKKyMsIG5vLXdyYXAKK21zZ2lkICJSZXNvbHZpbmcgZGVwZW5kcyBhbmQgY29uZmxpY3RzIgorbXNnc3RyICJSZXNvbHZlciBwcm9ibGVtYXMgZGUgZGVwZW5kZW5jaWFzIHkgY29uZmxpY3RvcyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjM3MgorbXNnaWQgIiIKKyJXaGVuIHRoZSBjaGFuZ2UgcmVxdWVzdCByZXN1bHRzIGluIG9uZSBvciBtb3JlIHVuc2F0aXNmaWVkIGRlcGVuZHMgb3IgIgorImNvbmZsaWN0cywgQjxkc2VsZWN0PiBwcm9tcHRzIHRoZSB1c2VyIHdpdGggYSBkZXBlbmRlbmN5IHJlc29sdXRpb24gc2NyZWVuLiAiCisiRmlyc3QgaG93ZXZlciwgYW4gaW5mb3JtYXRpdmUgaGVscCBzY3JlZW4gaXMgZGlzcGxheWVkLiIKK21zZ3N0ciAiIgorIkN1YW5kbyBlbCBjYW1iaW8gcmVzdWx0YSBlbiB1bmEgbyBtw6FzIGRlcGVuZGVuY2lhcyBzaW4gcmVzb2x2ZXIgbyAiCisiY29uZmxpY3RvcywgQjxkc2VsZWN0PiBtdWVzdHJhIGFsIHVzdWFyaW8gdW5hIHBhbnRhbGxhIGNvbiBsYSBwb3NpYmxlICIKKyJzb2x1Y2nDs24gYWwgcHJvYmxlbWEuIFByaW1lcm8sIHNpbiBlbWJhcmdvLCBzZSBtdWVzdHJhIHVuYSBwYW50YWxsYSAiCisiaW5mb3JtYXRpdmEuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6Mzc5Cittc2dpZCAiIgorIlRoZSB0b3AgaGFsZiBvZiB0aGlzIHNjcmVlbiBsaXN0cyBhbGwgdGhlIHBhY2thZ2VzIHRoYXQgd2lsbCBoYXZlIHVucmVzb2x2ZWQgIgorImRlcGVuZHMgb3IgY29uZmxpY3RzLCBhcyBhIHJlc3VsdCBvZiB0aGUgcmVxdWVzdGVkIGNoYW5nZSwgYW5kIGFsbCB0aGUgIgorInBhY2thZ2VzIHdob3NlIGluc3RhbGxhdGlvbiBjYW4gcmVzb2x2ZSBhbnkgb2YgdGhlc2UgZGVwZW5kcyBvciB3aG9zZSAiCisicmVtb3ZhbCBjYW4gcmVzb2x2ZSBhbnkgb2YgdGhlIGNvbmZsaWN0cy4gIFRoZSBib3R0b20gaGFsZiBkZWZhdWx0cyB0byBzaG93ICIKKyJ0aGUgZGVwZW5kcyBvciBjb25mbGljdHMgdGhhdCBjYXVzZSB0aGUgY3VycmVudGx5IHNlbGVjdGVkIHBhY2thZ2UgdG8gYmUgIgorImxpc3RlZC4iCittc2dzdHIgIiIKKyJMYSBtaXRhZCBzdXBlcmlvciBkZSBlc3RhIHBhbnRhbGxhIGVudW1lcmEgdG9kb3MgbG9zIHBhcXVldGVzIHF1ZSB0ZW5kcsOhbiAiCisiY29uZmxpY3RvcywgbyBwcm9ibGVtYXMgZGUgZGVwZW5kZW5jaWFzIHNpbiByZXNvbHZlciwgY29tbyByZXN1bHRhZG8gZGVsICIKKyJjYW1iaW8gcmVxdWVyaWRvIHBvciBlbCB1c3VhcmlvLCBhZGVtw6FzIGRlIHRvZG9zIGxvcyBwYXF1ZXRlcyBjdXlhICIKKyJpbnN0YWxhY2nDs24gc29sdWNpb25hcsOhIGVsIHByb2JsZW1hLiBMYSBtaXRhZCBpbmZlcmlvciBtdWVzdHJhIGxvcyBwcm9ibGVtYXMgIgorImRlIGRlcGVuZGVuY2lhIG8gY29uZmxpY3RvcyBxdWUgY2F1c2EgZWwgcGFxdWV0ZSBzZWxlY2Npb25hZG8uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6Mzg1Cittc2dpZCAiIgorIldoZW4gdGhlIHN1Ymxpc3Qgb2YgcGFja2FnZXMgaXMgZGlzcGxheWVkIGluaXRpYWxseSwgQjxkc2VsZWN0PiBtYXkgaGF2ZSAiCisiYWxyZWFkeSBzZXQgdGhlIHJlcXVlc3RlZCBzZWxlY3Rpb24gc3RhdHVzIG9mIHNvbWUgb2YgdGhlIGxpc3RlZCBwYWNrYWdlcywgIgorImluIG9yZGVyIHRvIHJlc29sdmUgdGhlIGRlcGVuZHMgb3IgY29uZmxpY3RzIHRoYXQgY2F1c2VkIHRoZSBkZXBlbmRlbmN5ICIKKyJyZXNvbHV0aW9uIHNjcmVlbiB0byBiZSBkaXNwbGF5ZWQuIFVzdWFsbHksIGl0IGlzIGJlc3QgdG8gZm9sbG93IHVwIHRoZSAiCisic3VnZ2VzdGlvbnMgbWFkZSBieSBCPGRzZWxlY3Q+LiIKK21zZ3N0ciAiIgorIkN1YW5kbyBsYSBzdWItbGlzdGEgZGUgcGFxdWV0ZXMgc2UgZXhoaWJlIGluaWNpYWxtZW50ZSBwdWVkZSBxdWUgQjxkc2VsZWN0PiAiCisieWEgaGF5YSBkZWZpbmlkbyBlbCBlc3RhZG8gZGUgc2VsZWNjacOzbiByZXF1ZXJpZG8gZGUgYWxndW5vIGRlIGxvcyBwYXF1ZXRlcyAiCisibGlzdGFkb3MsIHBhcmEgYXPDrSByZXNvbHZlciBsb3MgcHJvYmxlbWFzIGRlIGRlcGVuZGVuY2lhcyBvIGNvbmZsaWN0b3MgcXVlICIKKyJjYXVzYXJvbiBsYSBhcGFyaWNpw7NuIGRlIGxhIHBhbnRhbGxhIGRlIHJlc29sdWNpw7NuIGRlIGRlcGVuZGVuY2lhcy4gIgorIkhhYml0dWFsbWVudGUsIGxvIG1lam9yIGVzIHNlZ3VpciBsYXMgc3VnZXJlbmNpYXMgcXVlIEI8ZHNlbGVjdD4gcHJlc2VudGEuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MzkzCittc2dpZCAiIgorIlRoZSBsaXN0ZWQgcGFja2FnZXMnIHNlbGVjdGlvbiBzdGF0ZSBtYXkgYmUgcmV2ZXJ0ZWQgdG8gdGhlIG9yaWdpbmFsICIKKyJzZXR0aW5ncywgYXMgdGhleSB3ZXJlIGJlZm9yZSB0aGUgdW5yZXNvbHZlZCBkZXBlbmRzIG9yIGNvbmZsaWN0cyB3ZXJlICIKKyJjcmVhdGVkLCBieSBwcmVzc2luZyB0aGUgQjwnUic+IGtleS4gQnkgcHJlc3NpbmcgdGhlIEI8J0QnPiBrZXksIHRoZSAiCisiYXV0b21hdGljIHN1Z2dlc3Rpb25zIGFyZSByZXNldCwgYnV0IHRoZSBjaGFuZ2UgdGhhdCBjYXVzZWQgdGhlIGRlcGVuZGVuY3kgIgorInJlc29sdXRpb24gc2NyZWVuIHRvIGJlIHByb21wdGVkIGlzIGtlcHQgYXMgcmVxdWVzdGVkLiAgRmluYWxseSwgYnkgcHJlc3NpbmcgIgorIkI8J1UnPiwgdGhlIHNlbGVjdGlvbnMgYXJlIGFnYWluIHNldCB0byB0aGUgYXV0b21hdGljIHN1Z2dlc3Rpb24gdmFsdWVzLiIKK21zZ3N0ciAiIgorIlB1ZWRlIGRldm9sdmVyIGVsIGVzdGFkbyBkZSBsb3MgcGFxdWV0ZXMgc2VsZWNjaW9uYWRvcyBlbiBsYSBsaXN0YSBhIHN1ICIKKyJjb25maWd1cmFjacOzbiBvcmlnaW5hbCwgYXPDrSBjb21vIHRhbWJpw6luIGxhcyBkZXBlbmRlbmNpYXMgc2luIHJlc29sdmVyIHkgbG9zICIKKyJjb25mbGljdG9zIHF1ZSBnZW5lcmFyb24sIHB1bHNhbmRvIGxhIHRlY2xhIEI8wqtSwrs+LiBQYXJhIHJlYWp1c3RhciBsYXMgIgorInN1Z2VyZW5jaWFzIGF1dG9tw6F0aWNhcyBwdWxzZSBsYSB0ZWNsYSBCPMKrRMK7PiwgYXVucXVlIHBlcm1hbmVjZXLDoSBlbCBjYW1iaW8gIgorInF1ZSBjYXVzbyBsYSBhcGFyaWNpw7NuIGRlIGxhIHBhbnRhbGxhIGRlIHJlc29sdWNpw7NuIGRlIGRlcGVuZGVuY2lhcy4gUG9yICIKKyLDumx0aW1vLCBzaSBwdWxzYSBsYSB0ZWNsYSBCPMKrVcK7PiBsYXMgc2VsZWNjaW9uZXMgc2UgY29uZmlndXJhcsOhbiBudWV2YW1lbnRlICIKKyJjb24gbG9zIHZhbG9yZXMgYXV0b23DoXRpY29zIGRlIGxhcyBzdWdlcmVuY2lhcy4iCisKKyMuIHR5cGU6IFNTCisjOiBkc2VsZWN0LjE6Mzk0CisjLCBuby13cmFwCittc2dpZCAiRXN0YWJsaXNoaW5nIHRoZSByZXF1ZXN0ZWQgc2VsZWN0aW9ucyIKK21zZ3N0ciAiRXN0YWJsZWNlciBsYXMgc2VsZWNjaW9uZXMgc29saWNpdGFkYXMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0MDEKK21zZ2lkICIiCisiQnkgcHJlc3NpbmcgQjxlbnRlcj4sIHRoZSBjdXJyZW50bHkgZGlzcGxheWVkIHNldCBvZiBzZWxlY3Rpb25zIGlzIGFjY2VwdGVkLiAiCisiSWYgQjxkc2VsZWN0PiBkZXRlY3RzIG5vIHVucmVzb2x2ZWQgZGVwZW5kcyBhcyBhIHJlc3VsdCBvZiB0aGUgcmVxdWVzdGVkICIKKyJzZWxlY3Rpb25zLCB0aGUgbmV3IHNlbGVjdGlvbnMgd2lsbCBiZSBzZXQuICBIb3dldmVyLCBpZiB0aGVyZSBhcmUgYW55ICIKKyJ1bnJlc29sdmVkIGRlcGVuZHMsIEI8ZHNlbGVjdD4gd2lsbCBhZ2FpbiBwcm9tcHQgdGhlIHVzZXIgd2l0aCBhIGRlcGVuZGVuY3kgIgorInJlc29sdXRpb24gc2NyZWVuLiIKK21zZ3N0ciAiIgorIkxhIHRlY2xhIEI8SW50cm8+IGFjZXB0YSBsYSBsaXN0YSBhY3R1YWwgZGUgc2VsZWNjaW9uZXMuIFNpIEI8ZHNlbGVjdD4gIgorImRldGVjdGEgcXVlIG5vIGhheSBwcm9ibGVtYXMsIGFjZXB0YXLDoSBsYXMgbnVldmFzIHNlbGVjY2lvbmVzLiBTaW4gZW1iYXJnbywgIgorInNpIGhheSBkZXBlbmRlbmNpYXMgc2luIHJlc29sdmVyIEI8ZHNlbGVjdD4gbW9zdHJhcsOhIG51ZXZhbWVudGUgbGEgcGFudGFsbGEgIgorImRlIHJlc29sdWNpw7NuIGRlIGRlcGVuZGVuY2lhcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0MDcKK21zZ2lkICIiCisiVG8gYWx0ZXIgYSBzZXQgb2Ygc2VsZWN0aW9ucyB0aGF0IGNyZWF0ZXMgdW5yZXNvbHZlZCBkZXBlbmRzIG9yIGNvbmZsaWN0cyAiCisiYW5kIGZvcmNpbmcgQjxkc2VsZWN0PiB0byBhY2NlcHQgaXQsIHByZXNzIHRoZSBCPCdRJz4ga2V5LiBUaGlzIHNldHMgdGhlICIKKyJzZWxlY3Rpb25zIGFzIHNwZWNpZmllZCBieSB0aGUgdXNlciwgdW5jb25kaXRpb25hbGx5LiBHZW5lcmFsbHksIGRvbid0IGRvICIKKyJ0aGlzIHVubGVzcyB5b3UndmUgcmVhZCB0aGUgZmluZSBwcmludC4iCittc2dzdHIgIiIKKyJQYXJhIG1vZGlmaWNhciB1bmEgbGlzdGEgZGUgc2VsZWNjaW9uZXMgcXVlIGNyZWEgZGVwZW5kZW5jaWFzIHNpbiByZXNvbHZlciBvICIKKyJjb25mbGljdG9zLCB5IGZvcnphciBhIEI8ZHNlbGVjdD4gYSBhY2VwdGFybGEsIHB1bHNlIGxhIHRlY2xhIEI8wqtRwrs+LiBFc3RvICIKKyJkZWZpbmUgbGFzIHNlbGVjY2lvbmVzIGRlZmluaWRhcyBwb3IgZWwgdXN1YXJpbywgaW5jb25kaWNpb25hbG1lbnRlLiAiCisiR2VuZXJhbG1lbnRlLCBubyBzZSBkZWJlcsOtYSBoYWNlciBlc3RvIGEgbWVub3MgcXVlIHNlcGEgbG8gcXVlIGVzdMOhIGhhY2llbmRvLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjQxNAorbXNnaWQgIiIKKyJUaGUgb3Bwb3NpdGUgZWZmZWN0LCB0byBiYWNrIG91dCBhbnkgc2VsZWN0aW9ucyBjaGFuZ2UgcmVxdWVzdHMgYW5kIGdvIGJhY2sgIgorInRvIHRoZSBwcmV2aW91cyBsaXN0IG9mIHNlbGVjdGlvbnMsIGlzIGF0dGFpbmVkIGJ5IHByZXNzaW5nIHRoZSBCPCdYJz4gb3IgIgorIkI8ZXNjYXBlPiBrZXlzLiBCeSByZXBlYXRlZGx5IHByZXNzaW5nIHRoZXNlIGtleXMsIGFueSBwb3NzaWJseSBkZXRyaW1lbnRhbCAiCisiY2hhbmdlcyB0byB0aGUgcmVxdWVzdGVkIHBhY2thZ2Ugc2VsZWN0aW9ucyBjYW4gYmUgYmFja2VkIG91dCBjb21wbGV0ZWx5IHRvICIKKyJ0aGUgbGFzdCBlc3RhYmxpc2hlZCBzZXR0aW5ncy4iCittc2dzdHIgIiIKKyJFbCBlZmVjdG8gb3B1ZXN0bywgZGVzaGFjZXIgc3VzIGNhbWJpb3MgeSB2b2x2ZXIgaGFjaWEgYXRyw6FzIGhhc3RhIHF1ZSBubyAiCisidGVuZ2EgcHJvYmxlbWFzLCBzZSBwdWVkZSByZWFsaXphciBwdWxzYW5kbyBsYSB0ZWNsYSBCPMKrWMK7PiBvIEI8ZXNjYXBlPi4gU2kgIgorInB1bHNhIHJlcGV0aWRhbWVudGUgZXN0YXMgdGVjbGFzIHB1ZWRlIHJldGlyYXIgY3VhbHF1aWVyIGNhbWJpbyBwZXJqdWRpY2lhbCAiCisiYSBsYXMgc2VsZWNjaW9uZXMgZGUgcGFxdWV0ZXMsIHZvbHZpZW5kbyBhc8OtIGEgbGEgw7psdGltYSBjb25maWd1cmFjacOzbiAiCisiZGVmaW5pZGEuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NDIxCittc2dpZCAiIgorIklmIHlvdSBtaXN0YWtlbmx5IGVzdGFibGlzaCBzb21lIHNldHRpbmdzIGFuZCB3aXNoIHRvIHJldmVydCBhbGwgdGhlICIKKyJzZWxlY3Rpb25zIHRvIHdoYXQgaXMgY3VycmVudGx5IGluc3RhbGxlZCBvbiB0aGUgc3lzdGVtLCBwcmVzcyB0aGUgQjwnQyc+ICIKKyJrZXkuICBUaGlzIGlzIHNvbWV3aGF0IHNpbWlsYXIgdG8gdXNpbmcgdGhlIHVuaG9sZCBjb21tYW5kIG9uIGFsbCBwYWNrYWdlcywgIgorImJ1dCBwcm92aWRlcyBhIG1vcmUgb2J2aW91cyBwYW5pYyBidXR0b24gaW4gY2FzZXMgd2hlcmUgdGhlIHVzZXIgcHJlc3NlZCAiCisiQjxlbnRlcj4gYnkgYWNjaWRlbnQuIgorbXNnc3RyICIiCisiU2kgaGEgcmVhbGl6YWRvIHVuIGVycm9yIGFsIGRlZmluaXIgbGEgbGlzdGEgZGUgcGFxdWV0ZXMgeSBkZXNlYSByZXZlcnRpciAiCisibGFzIHNlbGVjY2lvbmVzIGFjdHVhbGVzIGEgbG8gcXVlIHlhIGVzdMOhIGluc3RhbGFkbyBlbiBlbCBzaXN0ZW1hLCBwdWxzZSAiCisiQjzCq0PCuz4uIEVzIHNpbWlsYXIgYSB1c2FyIGxhIG9yZGVuIMKrdW5ob2xkwrsgc29icmUgdG9kb3MgbG9zIHBhcXVldGVzLCBwZXJvICIKKyJvZnJlY2UgdW4gYm90w7NuIGRlIHDDoW5pY28gbcOhcyBvYnZpbyBwYXJhIGFxdWVsbG9zIGNhc29zIGVuIGxvcyBxdWUgZWwgIgorInVzdWFyaW8gcHVsc8OzIEI8SW50cm8+IHBvciBlcnJvci4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0MjgKK21zZ2lkICIiCisiSWYgc2V0LCBCPGRzZWxlY3Q+IHdpbGwgdXNlIGl0IGFzIHRoZSBkaXJlY3RvcnkgZnJvbSB3aGljaCB0byByZWFkIHRoZSB1c2VyICIKKyJzcGVjaWZpYyBjb25maWd1cmF0aW9uIGZpbGUuIgorbXNnc3RyICIiCisiU2kgc2UgZGVmaW5lLCBCPGRzZWxlY3Q+IGxvIHVzYXLDoSBjb21vIGVsIGRpcmVjdG9yaW8gZGVsIGN1YWwgbGVlciBlbCAiCisiZmljaGVybyBkZSBjb25maWd1cmFjacOzbiBlc3BlY8OtZmljbyBkZWwgdXN1YXJpby4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0MzQKK21zZ2lkICIiCisiVGhlIEI8ZHNlbGVjdD4gcGFja2FnZSBzZWxlY3Rpb24gaW50ZXJmYWNlIGlzIGNvbmZ1c2luZyB0byBzb21lIG5ldyB1c2Vycy4gICIKKyJSZXBvcnRlZGx5LCBpdCBldmVuIG1ha2VzIHNlYXNvbmVkIGtlcm5lbCBkZXZlbG9wZXJzIGNyeS4iCittc2dzdHIgIiIKKyJMYSBpbnRlcmZheiBkZSBzZWxlY2Npw7NuIGRlIHBhcXVldGVzIGRlIEI8ZHNlbGVjdD4gcHVlZGUgcGFyZWNlciBjb25mdXNhICIKKyJwYXJhIGFsZ3Vub3MgdXN1YXJpb3MgbnVldm9zLiBFeGlzdGVuIGluZm9ybWVzIGRlIHF1ZSBoYSBsbGV2YWRvIGEgbGFzICIKKyJsw6FncmltYXMgYSBleHBlcmltZW50YWRvcyBkZXNhcnJvbGxhZG9yZXMgZGVsIG7DumNsZW8uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NDM2Cittc2dpZCAiVGhlIGRvY3VtZW50YXRpb24gaXMgbGFja2luZy4iCittc2dzdHIgIkxhIGRvY3VtZW50YWNpw7NuIGVzdMOhIGluY29tcGxldGEuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NDM4Cittc2dpZCAiVGhlcmUgaXMgbm8gaGVscCBvcHRpb24gaW4gdGhlIG1haW4gbWVudS4iCittc2dzdHIgIk5vIGhheSBuaW5ndW5hIG9wY2nDs24gZGUgYXl1ZGEgZW4gZWwgbWVuw7ogcHJpbmNpcGFsLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjQ0MAorbXNnaWQgIlRoZSB2aXNpYmxlIGxpc3Qgb2YgYXZhaWxhYmxlIHBhY2thZ2VzIGNhbm5vdCBiZSByZWR1Y2VkLiIKK21zZ3N0ciAiTGEgbGlzdGEgZGUgcGFxdWV0ZXMgZGlzcG9uaWJsZXMgbm8gc2UgcHVlZGUgcmVkdWNpci4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0NDQKK21zZ2lkICIiCisiVGhlIGJ1aWx0IGluIGFjY2VzcyBtZXRob2RzIGNhbiBubyBsb25nZXIgc3RhbmQgdXAgdG8gY3VycmVudCBxdWFsaXR5ICIKKyJzdGFuZGFyZHMuIFVzZSB0aGUgYWNjZXNzIG1ldGhvZCBwcm92aWRlZCBieSBhcHQsIGl0IGlzIG5vdCBvbmx5IG5vdCBicm9rZW4sICIKKyJpdCBpcyBhbHNvIG11Y2ggbW9yZSBmbGV4aWJsZSB0aGFuIHRoZSBidWlsdCBpbiBhY2Nlc3MgbWV0aG9kcy4iCittc2dzdHIgIiIKKyJMb3Mgb3Ryb3MgbcOpdG9kb3MgZGUgYWNjZXNvIG5vIHRpZW5lbiB0YW50YSBjYWxpZGFkIGNvbW8gZWwgbcOpdG9kbyBxdWUgIgorIm9mcmVjZSBhcHQuIFVzZSBlbCBtw6l0b2RvIGRlIGFjY2VzbyBxdWUgYXB0IG9mcmVjZS4gQWRlbcOhcyBkZSBxdWUgbm8gZXN0w6EgIgorInJvdG8sIGVzIG11Y2hvIG3DoXMgZmxleGlibGUgcXVlIGxvcyBtw6l0b2RvcyBkZSBhY2Nlc28gaW50ZWdyYWRvcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0NTAKK21zZ2lkICJCPGRwa2c+KDEpLCBCPGFwdC1nZXQ+KDgpLCBCPHNvdXJjZXMubGlzdD4oNSksIEI8ZGViPig1KS4iCittc2dzdHIgIkI8ZHBrZz4oMSksIEI8YXB0LWdldD4oOCksIEI8c291cmNlcy5saXN0Pig1KSwgQjxkZWI+KDUpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjQ1NQorbXNnaWQgIiIKKyJCPGRzZWxlY3Q+IHdhcyB3cml0dGVuIGJ5IElhbiBKYWNrc29uIChpamFja3NvbkBnbnUuYWkubWl0LmVkdSkuIEZ1bGwgbGlzdCAiCisib2YgY29udHJpYnV0b3JzIG1heSBiZSBmb3VuZCBpbiAnZHNlbGVjdCAtLXZlcnNpb24nLiIKK21zZ3N0ciAiIgorIkI8ZHNlbGVjdD4gZnVlIGVzY3JpdG8gcG9yIElhbiBKYWNrc29uIChpamFja3NvbkBnbnUuYWkubWl0LmVkdSkuIFB1ZWRlIHZlciAiCisidW5hIGxpc3RhIGNvbXBsZXRhIGRlIGNvbnRyaWJ1eWVudGVzIGNvbiDCq2RzZWxlY3QgLS12ZXJzaW9uwrsuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NDU4Cittc2dpZCAiIgorIlRoaXMgbWFudWFsIHBhZ2Ugd2FzIHdyaXR0ZW4gYnkgSnVobyBWdW9yaSBFPGx0PmphdnVvcmlAY2MuaGVsc2lua2kuZmlFPGd0PiwgIgorIkpvc2lwIFJvZGluIGFuZCBKb29zdCBrb29pai4iCittc2dzdHIgIiIKKyJFc3RhIHDDoWdpbmEgZGUgbWFudWFsIGZ1ZSBlc2NyaXRhIHBvciBKdWhvIFZ1b3JpIEU8bHQ+amF2dW9yaUBjYy5oZWxzaW5raS5maSAiCisiRTxndD4sIEpvc2lwIFJvZGluIHkgSm9vc3Qga29vaWouIgorCisjLiB0eXBlOiBUSAorIzogZHNlbGVjdC5jZmcuNToxCisjLCBuby13cmFwCittc2dpZCAiZHNlbGVjdC5jZmciCittc2dzdHIgImRzZWxlY3QuY2ZnIgorCisjLiB0eXBlOiBUSAorIzogZHNlbGVjdC5jZmcuNToxCisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIjIwMDktMDItMjciCittc2dpZCAiMjAxMS0wNy0wMyIKK21zZ3N0ciAiMjcgZGUgRmVicmVybyBkZSAyMDA5IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LmNmZy41OjQKK21zZ2lkICJkc2VsZWN0LmNmZyAtIGRzZWxlY3QgY29uZmlndXJhdGlvbiBmaWxlIgorbXNnc3RyICJkc2VsZWN0LmNmZyAtIEZpY2hlcm8gZGUgY29uZmlndXJhY2nDs24gZGUgZHNlbGVjdCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC5jZmcuNToxMQorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiVGhpcyBmaWxlIGNvbnRhaW5zIGRlZmF1bHQgb3B0aW9ucyBmb3IgZHNlbGVjdC4gRWFjaCBsaW5lIGNvbnRhaW5zIGEgIgorI3wgInNpbmdsZSBvcHRpb24gd2hpY2ggaXMgZXhhY3RseSB0aGUgc2FtZSBhcyBhIG5vcm1hbCBjb21tYW5kbGluZSBvcHRpb24gIgorI3wgImZvciBkc2VsZWN0IGV4Y2VwdCBmb3IgdGhlIGxlYWRpbmcgZGFzaGVzIHdoaWNoIGFyZSBub3QgdXNlZCBoZXJlLiBRdW90ZXMgIgorI3wgInN1cnJvdW5kaW5nIG9wdGlvbiB2YWx1ZXMgYXJlIHN0cmlwcGVkLiBDb21tZW50cyBhcmUgYWxsb3dlZCBieSBzdGFydGluZyAiCisjfCAiYSBsaW5lIHdpdGggYSBoYXNoIHNpZ24gKFwiQjwjPlwiKS4iCittc2dpZCAiIgorIlRoaXMgZmlsZSBjb250YWlucyBkZWZhdWx0IG9wdGlvbnMgZm9yIGRzZWxlY3QuIEVhY2ggbGluZSBjb250YWlucyBhIHNpbmdsZSAiCisib3B0aW9uIHdoaWNoIGlzIGV4YWN0bHkgdGhlIHNhbWUgYXMgYSBub3JtYWwgY29tbWFuZCBsaW5lIG9wdGlvbiBmb3IgZHNlbGVjdCAiCisiZXhjZXB0IGZvciB0aGUgbGVhZGluZyBkYXNoZXMgd2hpY2ggYXJlIG5vdCB1c2VkIGhlcmUuIFF1b3RlcyBzdXJyb3VuZGluZyAiCisib3B0aW9uIHZhbHVlcyBhcmUgc3RyaXBwZWQuIENvbW1lbnRzIGFyZSBhbGxvd2VkIGJ5IHN0YXJ0aW5nIGEgbGluZSB3aXRoIGEgIgorImhhc2ggc2lnbiAoXCJCPCM+XCIpLiIKK21zZ3N0ciAiIgorIkVzdGUgZmljaGVybyBjb250aWVuZSBsYXMgb3BjaW9uZXMgcHJlZGVmaW5pZGFzIGRlIGRwa2cuIENhZGEgbMOtbmVhIGNvbnRpZW5lICIKKyJ1bmEgw7puaWNhIG9wY2nDs24sIGlkw6ludGljYSBhIHVuYSBvcGNpw7NuIGRlIGzDrW5lYSBkZSDDs3JkZW5lcyBub3JtYWwgZGUgIgorImRzZWxlY3QsIGEgZXhjZXBjacOzbiBkZSBsYSBhdXNlbmNpYSBkZSBndWlvbmVzLiBMYXMgY29taWxsYXMgcXVlIHJvZGVlbiAiCisidmFsb3JlcyBkZSBvcGNpb25lcyBkZXNhcGFyZWNlcsOhbi4gTG9zIGNvbWVudGFyaW9zIHNlIHBlcm1pdGVuIHNpIGxhIGzDrW5lYSAiCisiY29taWVuemEgY29uIHVuYSBhbG1vaGFkaWxsYSAoQjwjPikuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LmNmZy41OjE0Cittc2dpZCAiSTwvZXRjL2Rwa2cvZHNlbGVjdC5jZmcuZC9bMC05YS16QS1aXy1dKj4iCittc2dzdHIgIkk8L2V0Yy9kcGtnL2RzZWxlY3QuY2ZnLmQvWzAtOWEtekEtWl8tXSo+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LmNmZy41OjE2Cittc2dpZCAiSTwvZXRjL2Rwa2cvZHNlbGVjdC5jZmc+IgorbXNnc3RyICJJPC9ldGMvZHBrZy9kc2VsZWN0LmNmZz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuY2ZnLjU6MTgKK21zZ2lkICJJPH4vLmRzZWxlY3QuY2ZnPiIKK21zZ3N0ciAiSTx+Ly5kc2VsZWN0LmNmZz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuY2ZnLjU6MjIKK21zZ2lkICIiCisiU2VlIEk8L3Vzci9zaGFyZS9kb2MvZHBrZy9USEFOS1M+IGZvciB0aGUgbGlzdCBvZiBwZW9wbGUgd2hvIGhhdmUgIgorImNvbnRyaWJ1dGVkIHRvIEI8ZHNlbGVjdD4uIgorbXNnc3RyICIiCisiQ29uc3VsdGUgSTwvdXNyL3NoYXJlL2RvYy9kcGtnL1RIQU5LUz4gcGFyYSB1bmEgbGlzdGEgZGUgbGFzIHBlcnNvbmFzIHF1ZSAiCisiaGFuIGNvbnRyaWJ1aWRvIGEgQjxkc2VsZWN0Pi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuY2ZnLjU6MjQKK21zZ2lkICJCPGRzZWxlY3Q+KDEpLiIKK21zZ3N0ciAiQjxkc2VsZWN0PigxKS4iCisKKyMuIHR5cGU6IFRICisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjEKKyMsIG5vLXdyYXAKK21zZ2lkICJzdGFydC1zdG9wLWRhZW1vbiIKK21zZ3N0ciAic3RhcnQtc3RvcC1kYWVtb24iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6NAorbXNnaWQgInN0YXJ0LXN0b3AtZGFlbW9uIC0gc3RhcnQgYW5kIHN0b3Agc3lzdGVtIGRhZW1vbiBwcm9ncmFtcyIKK21zZ3N0ciAic3RhcnQtc3RvcC1kYWVtb24gLSBEZXRpZW5lIHkgYXJyYW5jYSBkZW1vbmlvcyBkZWwgc2lzdGVtYSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo4CisjLCBmdXp6eQorI3wgbXNnaWQgIkI8c3RhcnQtc3RvcC1kYWVtb24+IFtJPG9wdGlvbnM+XSBJPGNvbW1hbmQ+IgorbXNnaWQgIkI8c3RhcnQtc3RvcC1kYWVtb24+IFtJPG9wdGlvbj4uLi5dIEk8Y29tbWFuZD4iCittc2dzdHIgIkI8c3RhcnQtc3RvcC1kYWVtb24+IFtJPG9wY2lvbmVzPl0gSTxvcmRlbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTQKK21zZ2lkICIiCisiQjxzdGFydC1zdG9wLWRhZW1vbj4gaXMgdXNlZCB0byBjb250cm9sIHRoZSBjcmVhdGlvbiBhbmQgdGVybWluYXRpb24gb2YgIgorInN5c3RlbS1sZXZlbCBwcm9jZXNzZXMuICBVc2luZyBvbmUgb2YgdGhlIG1hdGNoaW5nIG9wdGlvbnMsIEI8c3RhcnQtc3RvcC0iCisiZGFlbW9uPiBjYW4gYmUgY29uZmlndXJlZCB0byBmaW5kIGV4aXN0aW5nIGluc3RhbmNlcyBvZiBhIHJ1bm5pbmcgcHJvY2Vzcy4iCittc2dzdHIgIiIKKyJCPHN0YXJ0LXN0b3AtZGFlbW9uPiBzaXJ2ZSBwYXJhIGNvbnRyb2xhciBsYSBjcmVhY2nDs24geSBmaW5hbGl6YWNpw7NuIGRlIGxvcyAiCisicHJvY2Vzb3MgZGVsIHNpc3RlbWEuIFVzYW5kbyB1bmEgZGUgbGFzIG9wY2lvbmVzIGRlIGLDunNxdWVkYSwgcHVlZGUgIgorImNvbmZpZ3VyYXIgQjxzdGFydC1zdG9wLWRhZW1vbj4gcGFyYSBlbmNvbnRyYXIgbGFzIGluc3RhbmNpYXMgZGUgdW4gcHJvY2VzbyAiCisiZW4gZWplY3VjacOzbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MzMKK21zZ2lkICIiCisiTm90ZTogdW5sZXNzIEI8LS1waWRmaWxlPiBpcyBzcGVjaWZpZWQsIEI8c3RhcnQtc3RvcC1kYWVtb24+IGJlaGF2ZXMgc2ltaWxhciAiCisidG8gQjxraWxsYWxsPigxKS4gIEI8c3RhcnQtc3RvcC1kYWVtb24+IHdpbGwgc2NhbiB0aGUgcHJvY2VzcyB0YWJsZSBsb29raW5nICIKKyJmb3IgYW55IHByb2Nlc3NlcyB3aGljaCBtYXRjaCB0aGUgcHJvY2VzcyBuYW1lLCB1aWQsIGFuZC9vciBnaWQgKGlmICIKKyJzcGVjaWZpZWQpLiBBbnkgbWF0Y2hpbmcgcHJvY2VzcyB3aWxsIHByZXZlbnQgQjwtLXN0YXJ0PiBmcm9tIHN0YXJ0aW5nIHRoZSAiCisiZGFlbW9uLiBBbGwgbWF0Y2hpbmcgcHJvY2Vzc2VzIHdpbGwgYmUgc2VudCB0aGUgVEVSTSBzaWduYWwgKG9yIHRoZSBvbmUgIgorInNwZWNpZmllZCB2aWEgQjwtLXNpZ25hbD4gb3IgQjwtLXJldHJ5PikgaWYgQjwtLXN0b3A+IGlzIHNwZWNpZmllZC4gRm9yICIKKyJkYWVtb25zIHdoaWNoIGhhdmUgbG9uZy1saXZlZCBjaGlsZHJlbiB3aGljaCBuZWVkIHRvIGxpdmUgdGhyb3VnaCBhIEI8LS0iCisic3RvcD4sIHlvdSBtdXN0IHNwZWNpZnkgYSBwaWRmaWxlLiIKK21zZ3N0ciAiIgorIk5vdGEgOlRlbmdhIGVuIGN1ZW50YSBxdWUgYSBtZW5vcyBxdWUgc2UgZXNwZWNpZmlxdWUgQjwtLXBpZGZpbGU+LCBCPHN0YXJ0LSIKKyJzdG9wLWRhZW1vbj4gc2UgY29tcG9ydGEgZGUgZm9ybWEgc2ltaWxhciBhIEI8a2lsbGFsbCgxKT4uIEI8c3RhcnQtc3RvcC0iCisiZGFlbW9uPiBidXNjYXLDoSBlbiBsYSB0YWJsYSBkZSBwcm9jZXNvcyBjdWFscXVpZXIgcHJvY2VzbyBxdWUgY29uY3VlcmRlIGVuICIKKyJub21icmUsIHVpZCB5L28gZ2lkIChzaSBzZSBlc3BlY2lmaWNhKS4gQ3VhbHF1aWVyIHByb2Nlc28gcXVlIGNvbmN1ZXJkZSBjb24gIgorImxvcyBwYXLDoW1ldHJvcyBwcmV2ZW5kcsOhIGEgQjwtLXN0YXJ0PiBkZSBpbmljaWFyIGVsIGRlbW9uaW8uIFNlIG1hbmRhcsOhIGEgIgorInRvZG9zIGxvcyBwcm9jZXNvcyBsYSBzZcOxYWwgVEVSTSAobyBsYSBzZcOxYWwgZXNwZWNpZmljYWRhIG1lZGlhbnRlIEI8LS0iCisic2lnbmFsPiBvIEI8LS1yZXRyeT4pIHNpIHNlIGVzcGVjaWZpY2EgQjwtLXN0b3A+LiBEZWJlIGVzcGVjaWZpY2FyIHVuICIKKyJmaWNoZXJvIHBpZCBwYXJhIGxvcyBkZW1vbmlvcyBxdWUgdGVuZ2FuIGhpam9zIGRlIGxhcmdhIGR1cmFjacOzbiBxdWUgIgorIm5lY2VzaXRlbiBzb2JyZXZpdmlyIGEgdW4gQjwtLXN0b3A+LiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MzUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1TPiwgQjwtLXN0YXJ0PiBbQjwtLT5dIEk8YXJndW1lbnRzPiIKK21zZ3N0ciAiQjwtUz4sIEI8LS1zdGFydD4gW0I8LS0+XSBJPGFyZ3VtZW50b3M+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjUyCittc2dpZCAiIgorIkNoZWNrIGZvciB0aGUgZXhpc3RlbmNlIG9mIGEgc3BlY2lmaWVkIHByb2Nlc3MuICBJZiBzdWNoIGEgcHJvY2VzcyBleGlzdHMsICIKKyJCPHN0YXJ0LXN0b3AtZGFlbW9uPiBkb2VzIG5vdGhpbmcsIGFuZCBleGl0cyB3aXRoIGVycm9yIHN0YXR1cyAxICgwIGlmIEI8LS0iCisib2tub2RvPiBpcyBzcGVjaWZpZWQpLiAgSWYgc3VjaCBhIHByb2Nlc3MgZG9lcyBub3QgZXhpc3QsIGl0IHN0YXJ0cyBhbiAiCisiaW5zdGFuY2UsIHVzaW5nIGVpdGhlciB0aGUgZXhlY3V0YWJsZSBzcGVjaWZpZWQgYnkgQjwtLWV4ZWM+IG9yLCBpZiAiCisic3BlY2lmaWVkLCBieSBCPC0tc3RhcnRhcz4uICBBbnkgYXJndW1lbnRzIGdpdmVuIGFmdGVyIEI8LS0+IG9uIHRoZSBjb21tYW5kICIKKyJsaW5lIGFyZSBwYXNzZWQgdW5tb2RpZmllZCB0byB0aGUgcHJvZ3JhbSBiZWluZyBzdGFydGVkLiIKK21zZ3N0ciAiIgorIkNvbXBydWViYSBsYSBleGlzdGVuY2lhIGRlbCBwcm9jZXNvIGVzcGVjaWZpY2Fkby4gU2kgZXN0ZSBwcm9jZXNvIHlhIGV4aXN0ZSwgIgorIkI8c3RhcnQtc3RvcC1kYWVtb24+IG5vIGhhY2UgbmFkYSB5IGZpbmFsaXphIGNvbiB1biBlc3RhZG8gZGUgZXJyb3IgMSAoMCBzaSAiCisic2UgZXNwZWNpZmljYSBCPC0tb2tub2RvPiApLiBTaSBlbCBwcm9jZXNvIG5vIGV4aXN0ZSwgY29taWVuemEgdW5vIG51ZXZvICIKKyJ1c2FuZG8gZWwgZWplY3V0YWJsZSBlc3BlY2lmaWNhZG8gcG9yIEI8LS1leGVjPiwgKG8sIHNpIHNlIGVzcGVjaWZpY2EsIHBvciAiCisiQjwtLXN0YXJ0YXM+ICkuIEN1YWxxdWllciBhcmd1bWVudG8gZGFkbyBlbiBsYSBsw61uZWEgZGUgw7NyZGVuZXMgZGVzcHXDqXMgZGUgIgorIkI8LS0+IHNlIGludHJvZHVjZSBzaW4gbW9kaWZpY2FjacOzbiBhbGd1bmEgYWwgcHJvZ3JhbWEgcXVlIHNlIHZhIGEgZWplY3V0YXIuIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo1MgorIywgbm8td3JhcAorbXNnaWQgIkI8LUs+LCBCPC0tc3RvcD4iCittc2dzdHIgIkI8LUs+LCBCPC0tc3RvcD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6NzAKK21zZ2lkICIiCisiQ2hlY2tzIGZvciB0aGUgZXhpc3RlbmNlIG9mIGEgc3BlY2lmaWVkIHByb2Nlc3MuICBJZiBzdWNoIGEgcHJvY2VzcyBleGlzdHMsICIKKyJCPHN0YXJ0LXN0b3AtZGFlbW9uPiBzZW5kcyBpdCB0aGUgc2lnbmFsIHNwZWNpZmllZCBieSBCPC0tc2lnbmFsPiwgYW5kIGV4aXRzICIKKyJ3aXRoIGVycm9yIHN0YXR1cyAwLiAgSWYgc3VjaCBhIHByb2Nlc3MgZG9lcyBub3QgZXhpc3QsIEI8c3RhcnQtc3RvcC1kYWVtb24+ICIKKyJleGl0cyB3aXRoIGVycm9yIHN0YXR1cyAxICgwIGlmIEI8LS1va25vZG8+IGlzIHNwZWNpZmllZCkuIElmIEI8LS1yZXRyeT4gaXMgIgorInNwZWNpZmllZCwgdGhlbiBCPHN0YXJ0LXN0b3AtZGFlbW9uPiB3aWxsIGNoZWNrIHRoYXQgdGhlIHByb2Nlc3MoZXMpIGhhdmUgIgorInRlcm1pbmF0ZWQuIgorbXNnc3RyICIiCisiQ29tcHJ1ZWJhIGxhIGV4aXN0ZW5jaWEgZGVsIHByb2Nlc28gZXNwZWNpZmljYWRvLiBTaSBlc3RlIHByb2Nlc28gZXhpc3RlLCAiCisiQjxzdGFydC1zdG9wLWRhZW1vbj4gZW52w61hIGxhIHNlw7FhbCBlc3BlY2lmaWNhZGEgcG9yIEI8LS1zaWduYWw+LCB5IGZpbmFsaXphICIKKyJjb24gdW4gZXN0YWRvIGRlIGVycm9yIDAuIFNpIGVzdGUgcHJvY2VzbyBubyBleGlzdGUsIEI8c3RhcnQtc3RvcC1kYWVtb24+ICIKKyJ0ZXJtaW5hIGNvbiB1biBlc3RhZG8gZGUgZXJyb3IgMSAoMCBzaSBzZSBoYSBlc3BlY2lmaWNhZG8gbGEgb3BjacOzbiBCPC0tIgorIm9rbm9kbz4gKS4gU2kgc2UgZXNwZWNpZmljYSBsYSBvcGNpw7NuIEI8LS1yZXRyeT4sIEI8c3RhcnQtc3RvcC1kYWVtb24+ICIKKyJjb21wcm9iYXLDoSBxdWUgZWwgcHJvY2VzbyBvIGxvcyBwcm9jZXNvcyBoYW4gdGVybWluYWRvLiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6NzAKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjwtSz4sIEI8LS1zdG9wPiIKK21zZ2lkICJCPC1UPiwgQjwtLXN0YXR1cz4iCittc2dzdHIgIkI8LUs+LCBCPC0tc3RvcD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6NzQKK21zZ2lkICIiCisiQ2hlY2sgZm9yIHRoZSBleGlzdGVuY2Ugb2YgYSBzcGVjaWZpZWQgcHJvY2VzcywgYW5kIHJldHVybnMgYW4gZXhpdCBzdGF0dXMgIgorImNvZGUsIGFjY29yZGluZyB0byB0aGUgTFNCIEluaXQgU2NyaXB0IEFjdGlvbnMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44Ojc0CisjLCBuby13cmFwCittc2dpZCAiQjwtSD4sIEI8LS1oZWxwPiIKK21zZ3N0ciAiQjwtSD4sIEI8LS1oZWxwPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo3NworbXNnaWQgIlNob3cgdXNhZ2UgaW5mb3JtYXRpb24gYW5kIGV4aXQuIgorbXNnc3RyICJNdWVzdHJhIGxhIGluZm9ybWFjacOzbiBkZSB1c28geSB0ZXJtaW5hLiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6NzcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1WPiwgQjwtLXZlcnNpb24+IgorbXNnc3RyICJCPC1WPiwgQjwtLXZlcnNpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjgwCittc2dpZCAiU2hvdyB0aGUgcHJvZ3JhbSB2ZXJzaW9uIGFuZCBleGl0LiIKK21zZ3N0ciAiTXVlc3RyYSBsYSB2ZXJzacOzbiB5IHRlcm1pbmEuIgorCisjLiB0eXBlOiBTSAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo4MQorIywgbm8td3JhcAorbXNnaWQgIk1BVENISU5HIE9QVElPTlMiCittc2dzdHIgIk9QQ0lPTkVTIERFIELDmlNRVUVEQSIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6ODIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1wPiwgQjwtLXBpZGZpbGU+IEk8cGlkLWZpbGU+IgorbXNnc3RyICJCPC1wPiwgQjwtLXBpZGZpbGU+IEk8ZmljaGVyby1waWQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44Ojg2Cittc2dpZCAiQ2hlY2sgd2hldGhlciBhIHByb2Nlc3MgaGFzIGNyZWF0ZWQgdGhlIGZpbGUgSTxwaWQtZmlsZT4uIgorbXNnc3RyICJDb21wcnVlYmEgc2kgdW4gcHJvY2VzbyBoYSBjcmVhZG8gZWwgZmljaGVybyBJPGZpY2hlcm8tcGlkPi4iCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44Ojg2CisjLCBuby13cmFwCittc2dpZCAiQjwteD4sIEI8LS1leGVjPiBJPGV4ZWN1dGFibGU+IgorbXNnc3RyICJCPC14PiwgQjwtLWV4ZWM+IEk8ZWplY3V0YWJsZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6OTAKK21zZ2lkICIiCisiQ2hlY2sgZm9yIHByb2Nlc3NlcyB0aGF0IGFyZSBpbnN0YW5jZXMgb2YgdGhpcyBleGVjdXRhYmxlIChhY2NvcmRpbmcgdG8gQjwvIgorInByb2MvPkk8cGlkPkI8L2V4ZT4pLiIKK21zZ3N0ciAiIgorIkJ1c2NhIHByb2Nlc29zIHF1ZSBzZWFuIGluc3RhbmNpYXMgZGUgZXN0ZSBlamVjdXRhYmxlIChzZWfDum4gQjwvcHJvYy8iCisiPkk8cGlkPkI8L2V4ZT4pLiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6OTAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1uPiwgQjwtLW5hbWU+IEk8cHJvY2Vzcy1uYW1lPiIKK21zZ3N0ciAiQjwtbj4sIEI8LS1uYW1lPiBJPG5vbWJyZS1wcm9jZXNvPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo5NgorbXNnaWQgIiIKKyJDaGVjayBmb3IgcHJvY2Vzc2VzIHdpdGggdGhlIG5hbWUgSTxwcm9jZXNzLW5hbWU+IChhY2NvcmRpbmcgdG8gQjwvcHJvYy8iCisiPkk8cGlkPkI8L3N0YXQ+KS4iCittc2dzdHIgIiIKKyJDb21wcnVlYmEgbG9zIHByb2Nlc29zIGNvbiBlbCBub21icmUgSTxub21icmUtcHJvY2Vzbz4gKHNlZ8O6biBCPC9wcm9jLyIKKyI+STxwaWQ+Qjwvc3RhdD4pLiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6OTYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC11PiwgQjwtLXVzZXI+IEk8dXNlcm5hbWU+fEk8dWlkPiIKK21zZ3N0ciAiQjwtdT4sIEI8LS11c2VyPiBJPG5vbWJyZS11c3VhcmlvPnxJPHVpZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTAyCittc2dpZCAiIgorIkNoZWNrIGZvciBwcm9jZXNzZXMgb3duZWQgYnkgdGhlIHVzZXIgc3BlY2lmaWVkIGJ5IEk8dXNlcm5hbWU+IG9yIEk8dWlkPi4iCittc2dzdHIgIiIKKyJDb21wcnVlYmEgc2kgZXhpc3RlbiBsb3MgcHJvY2Vzb3MgZGVsIHVzdWFyaW8gZXNwZWNpZmljYWRvIHBvciBJPG5vbWJyZS0iCisidXN1YXJpbz4gbyBJPHVpZD4uIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxMDQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1nPiwgQjwtLWdyb3VwPiBJPGdyb3VwPnxJPGdpZD4iCittc2dzdHIgIkI8LWc+LCBCPC0tZ3JvdXA+IEk8Z3J1cG8+fEk8Z2lkPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxMDcKK21zZ2lkICJDaGFuZ2UgdG8gSTxncm91cD4gb3IgSTxnaWQ+IHdoZW4gc3RhcnRpbmcgdGhlIHByb2Nlc3MuIgorbXNnc3RyICJQYXNhIGEgSTxncnVwbz4gbyBJPGdpZD4gY3VhbmRvIGNvbWllbnphIGVsIHByb2Nlc28uIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxMDcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1zPiwgQjwtLXNpZ25hbD4gSTxzaWduYWw+IgorbXNnc3RyICJCPC1zPiwgQjwtLXNpZ25hbD4gSTxzZcOxYWw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjExMgorbXNnaWQgIiIKKyJXaXRoIEI8LS1zdG9wPiwgc3BlY2lmaWVzIHRoZSBzaWduYWwgdG8gc2VuZCB0byBwcm9jZXNzZXMgYmVpbmcgc3RvcHBlZCAiCisiKGRlZmF1bHQgVEVSTSkuIgorbXNnc3RyICIiCisiSnVudG8gY29uIEI8LS1zdG9wPiwgZGVmaW5lIGxhIHNlw7FhbCBlbnZpYWRhIGFsIHByb2Nlc28gcXVlIHNlIGRlc2VhIHBhcmFyICIKKyIoVEVSTSBwb3Igb21pc2nDs24pLiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTEyCisjLCBuby13cmFwCittc2dpZCAiQjwtUj4sIEI8LS1yZXRyeT4gSTx0aW1lb3V0PnxJPHNjaGVkdWxlPiIKK21zZ3N0ciAiQjwtUj4sIEI8LS1yZXRyeT4gSTx0aWVtcG8tZGUtZXNwZXJhPnxJPGFjY2nDs24tcHJvZ3JhbWFkYT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTIyCittc2dpZCAiIgorIldpdGggQjwtLXN0b3A+LCBzcGVjaWZpZXMgdGhhdCBCPHN0YXJ0LXN0b3AtZGFlbW9uPiBpcyB0byBjaGVjayB3aGV0aGVyIHRoZSAiCisicHJvY2VzcyhlcykgIGRvIGZpbmlzaC4gSXQgd2lsbCBjaGVjayByZXBlYXRlZGx5IHdoZXRoZXIgYW55IG1hdGNoaW5nICIKKyJwcm9jZXNzZXMgYXJlIHJ1bm5pbmcsIHVudGlsIG5vbmUgYXJlLiBJZiB0aGUgcHJvY2Vzc2VzIGRvIG5vdCBleGl0IGl0IHdpbGwgIgorInRoZW4gdGFrZSBmdXJ0aGVyIGFjdGlvbiBhcyBkZXRlcm1pbmVkIGJ5IHRoZSBzY2hlZHVsZS4iCittc2dzdHIgIiIKKyJKdW50byBjb24gQjwtLXN0b3A+LCBlc3BlY2lmaWNhIHF1ZSBCPHN0YXJ0LXN0b3AtZGFlbW9uPiBjb21wcnVlYmUgcXVlIGVsICIKKyJwcm9jZXNvIG8gbG9zIHByb2Nlc29zIGhhbiB0ZXJtaW5hZG8uIExvIGNvbXByb2JhcsOhIHJlcGV0aWRhcyB2ZWNlcyBoYXN0YSAiCisicXVlIG5vIGhheWEgbmluZ8O6biBwcm9jZXNvIHF1ZSBjb2luY2lkYS4gU2kgZWwgcHJvY2VzbyBubyB0ZXJtaW5hIHRvbWFyw6EgdW5hICIKKyJkZWNpc2nDs24gZGV0ZXJtaW5hZGEgcG9yIEk8YWNjacOzbi1wcm9ncmFtYWRhPi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTMzCittc2dpZCAiIgorIklmIEk8dGltZW91dD4gaXMgc3BlY2lmaWVkIGluc3RlYWQgb2YgSTxzY2hlZHVsZT4sIHRoZW4gdGhlIHNjaGVkdWxlICIKKyJJPHNpZ25hbD5CPC8+STx0aW1lb3V0PkI8L0tJTEwvPkk8dGltZW91dD4gaXMgdXNlZCwgd2hlcmUgSTxzaWduYWw+IGlzIHRoZSAiCisic2lnbmFsIHNwZWNpZmllZCB3aXRoIEI8LS1zaWduYWw+LiIKK21zZ3N0ciAiIgorIlNpIHNlIGVzcGVjaWZpY2EgSTx0aWVtcG8tZGUtZXNwZXJhPiBlbiB2ZXogZGUgSTxhY2Npw7NuLXByb2dyYW1hZGE+LCBzZSB1c2EgIgorImxhIHNlY3VlbmNpYSBJPHNlw7FhbD5CPC8+STx0aWVtcG8tZGUtZXNwZXJhPkI8L0tJTEwvPkk8dGllbXBvLWRlLWVzcGVyYT4sICIKKyJkb25kZSBJPHNlw7FhbD4gZXMgbGEgc2XDsWFsIGRlZmluaWRhIGNvbiBCPC0tc2lnbmFsPi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTQ5Cittc2dpZCAiIgorIkk8c2NoZWR1bGU+IGlzIGEgbGlzdCBvZiBhdCBsZWFzdCB0d28gaXRlbXMgc2VwYXJhdGVkIGJ5IHNsYXNoZXMgKEI8Lz4pOyAiCisiZWFjaCBpdGVtIG1heSBiZSBCPC0+STxzaWduYWwtbnVtYmVyPiBvciBbQjwtPl1JPHNpZ25hbC1uYW1lPiwgd2hpY2ggbWVhbnMgIgorInRvIHNlbmQgdGhhdCBzaWduYWwsIG9yIEk8dGltZW91dD4sIHdoaWNoIG1lYW5zIHRvIHdhaXQgdGhhdCBtYW55IHNlY29uZHMgIgorImZvciBwcm9jZXNzZXMgdG8gZXhpdCwgb3IgQjxmb3JldmVyPiwgd2hpY2ggbWVhbnMgdG8gcmVwZWF0IHRoZSByZXN0IG9mIHRoZSAiCisic2NoZWR1bGUgZm9yZXZlciBpZiBuZWNlc3NhcnkuIgorbXNnc3RyICIiCisiSTxhY2Npw7NuLXByb2dyYW1hZGE+IGVzIHVuYSBsaXN0YSBkZSBhbCBtZW5vcyBkb3MgZWxlbWVudG9zIHNlcGFyYWRvcyBwb3IgIgorImJhcnJhcyAoQjwvPik7IGNhZGEgZWxlbWVudG8gcHVlZGUgc2VyIHVuIEI8LT5JPG7Dum1lcm8+QjxkZT5JPHNlw7FhbD4gbyBbQjwtPl0iCisiSTxub21icmUtZGUtc2XDsWFsPiwgcXVlIHNpZ25pZmljYSBxdWUgc2UgZGViZSBtYW5kYXIgZXNhIHNlw7FhbCwgbyBJPHRpZW1wby0iCisiZGUtZXNwZXJhPiwgcXVlIHNpZ25pZmljYSBxdWUgc2UgZGViZSBlc3BlcmFyIHRhbnRvcyBzZWd1bmRvcyBwYXJhIHF1ZSBlbCAiCisicHJvZ3JhbWEgdGVybWluZSwgbyBCPGZvcmV2ZXI+LCBxdWUgc2lnbmlmaWNhIHF1ZSBzZSByZXBpdGEgZWwgcmVzdG8gZGUgbGEgIgorImFjY2nDs24gcHJvZ3JhbWFkYSBpbmRlZmluaWRhbWVudGUgc2kgZXMgbmVjZXNhcmlvLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxNTkKK21zZ2lkICIiCisiSWYgdGhlIGVuZCBvZiB0aGUgc2NoZWR1bGUgaXMgcmVhY2hlZCBhbmQgQjxmb3JldmVyPiBpcyBub3Qgc3BlY2lmaWVkLCB0aGVuICIKKyJCPHN0YXJ0LXN0b3AtZGFlbW9uPiBleGl0cyB3aXRoIGVycm9yIHN0YXR1cyAyLiAgSWYgYSBzY2hlZHVsZSBpcyBzcGVjaWZpZWQsICIKKyJ0aGVuIGFueSBzaWduYWwgc3BlY2lmaWVkIHdpdGggQjwtLXNpZ25hbD4gaXMgaWdub3JlZC4iCittc2dzdHIgIiIKKyJTaSBzZSBhbGNhbnphIGVsIGZpbmFsIGRlIGxhIGFjY2nDs24gcHJvZ3JhbWFkYSB5IG5vIHNlIGhhIGVzcGVjaWZpY2FkbyAiCisiQjxmb3JldmVyPiwgQjxzdGFydC1zdG9wLWRhZW1vbj4gdGVybWluYSBjb24gdW4gZXN0YWRvIGRlIGVycm9yIDIuIFNpIHNlICIKKyJlc3BlY2lmaWNhIHVuYSBhY2Npw7NuIHByb2dyYW1hZGEgY3VhbHF1aWVyIHNlw7FhbCBlc3BlY2lmaWNhZGEgY29uIEI8LS0iCisic2lnbmFsPiBubyBzZSB0ZW5kcsOhIGVuIGN1ZW50YS4iCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjE1OQorIywgbm8td3JhcAorbXNnaWQgIkI8LWE+LCBCPC0tc3RhcnRhcz4gSTxwYXRobmFtZT4iCittc2dzdHIgIkI8LWE+LCBCPC0tc3RhcnRhcz4gSTxub21icmUtcnV0YT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTY3Cittc2dpZCAiIgorIldpdGggQjwtLXN0YXJ0Piwgc3RhcnQgdGhlIHByb2Nlc3Mgc3BlY2lmaWVkIGJ5IEk8cGF0aG5hbWU+LiAgSWYgbm90ICIKKyJzcGVjaWZpZWQsIGRlZmF1bHRzIHRvIHRoZSBhcmd1bWVudCBnaXZlbiB0byBCPC0tZXhlYz4uIgorbXNnc3RyICIiCisiQ29uIEI8LS1zdGFydD4sIGNvbWllbnphIGVsIHByb2Nlc28gZGVmaW5pZG8gY29uIEk8bm9tYnJlLXJ1dGE+LiBTaSBubyBzZSAiCisiZGVmaW5lLCBzZSB1c2Fyw6FuIGxvcyBhcmd1bWVudG9zIGRhZG9zIGNvbiBCPC0tZXhlYz4uIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxNjcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC10PiwgQjwtLXRlc3Q+IgorbXNnc3RyICJCPC10PiwgQjwtLXRlc3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjE3MQorbXNnaWQgIiIKKyJQcmludCBhY3Rpb25zIHRoYXQgd291bGQgYmUgdGFrZW4gYW5kIHNldCBhcHByb3ByaWF0ZSByZXR1cm4gdmFsdWUsIGJ1dCB0YWtlICIKKyJubyBhY3Rpb24uIgorbXNnc3RyICIiCisiTXVlc3RyYSBsYXMgYWNjaW9uZXMgcXVlIHNlIHJlYWxpemFyw61hbiB5IGRldnVlbHZlIGVsIHZhbG9yIGFwcm9waWFkbywgcGVybyAiCisibm8gaGFjZSBuYWRhLiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTcxCisjLCBuby13cmFwCittc2dpZCAiQjwtbz4sIEI8LS1va25vZG8+IgorbXNnc3RyICJCPC1vPiwgQjwtLW9rbm9kbz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTc0Cittc2dpZCAiUmV0dXJuIGV4aXQgc3RhdHVzIDAgaW5zdGVhZCBvZiAxIGlmIG5vIGFjdGlvbnMgYXJlICh3b3VsZCBiZSkgdGFrZW4uIgorbXNnc3RyICIiCisiRGV2dWVsdmUgdW4gZXN0YWRvIDAgZW4gdmV6IGRlIDEgc2kgbm8gc2UgcmVhbGl6YSAobyBzZSB2YXlhbiBhIHJlYWxpemFyKSAiCisibmluZ3VuYSBhY2Npw7NuLiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTc0CisjLCBuby13cmFwCittc2dpZCAiQjwtcT4sIEI8LS1xdWlldD4iCittc2dzdHIgIkI8LXE+LCBCPC0tcXVpZXQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjE3NworbXNnaWQgIkRvIG5vdCBwcmludCBpbmZvcm1hdGlvbmFsIG1lc3NhZ2VzOyBvbmx5IGRpc3BsYXkgZXJyb3IgbWVzc2FnZXMuIgorbXNnc3RyICJObyBtdWVzdHJhIG1lbnNhamVzIGluZm9ybWF0aXZvcywgc8OzbG8gbXVlc3RyYSBtZW5zYWplcyBkZSBlcnJvci4iCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjE3NworIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPC1jPiwgQjwtLWNodWlkPiBJPHVzZXJuYW1lPnxJPHVpZD4iCittc2dpZCAiQjwtYz4sIEI8LS1jaHVpZD4gSTx1c2VybmFtZT58STx1aWQ+W0I8Oj5JPGdyb3VwPnxJPGdpZD5dIgorbXNnc3RyICJCPC1jPiwgQjwtLWNodWlkPiBJPG5vbWJyZS11c3VhcmlvPnxJPHVpZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTk1Cittc2dpZCAiIgorIkNoYW5nZSB0byB0aGlzIHVzZXJuYW1lL3VpZCBiZWZvcmUgc3RhcnRpbmcgdGhlIHByb2Nlc3MuIFlvdSBjYW4gYWxzbyAiCisic3BlY2lmeSBhIGdyb3VwIGJ5IGFwcGVuZGluZyBhIEI8Oj4sIHRoZW4gdGhlIGdyb3VwIG9yIGdpZCBpbiB0aGUgc2FtZSB3YXkgIgorImFzIHlvdSB3b3VsZCBmb3IgdGhlIGBjaG93bicgY29tbWFuZCAoSTx1c2VyPkI8Oj5JPGdyb3VwPikuICBJZiBhIHVzZXIgaXMgIgorInNwZWNpZmllZCB3aXRob3V0IGEgZ3JvdXAsIHRoZSBwcmltYXJ5IEdJRCBmb3IgdGhhdCB1c2VyIGlzIHVzZWQuICBXaGVuICIKKyJ1c2luZyB0aGlzIG9wdGlvbiB5b3UgbXVzdCByZWFsaXplIHRoYXQgdGhlIHByaW1hcnkgYW5kIHN1cHBsZW1lbnRhbCBncm91cHMgIgorImFyZSBzZXQgYXMgd2VsbCwgZXZlbiBpZiB0aGUgQjwtLWdyb3VwPiBvcHRpb24gaXMgbm90IHNwZWNpZmllZC4gVGhlIEI8LS0iCisiZ3JvdXA+IG9wdGlvbiBpcyBvbmx5IGZvciBncm91cHMgdGhhdCB0aGUgdXNlciBpc24ndCBub3JtYWxseSBhIG1lbWJlciBvZiAiCisiKGxpa2UgYWRkaW5nIHBlciBwcm9jZXNzIGdyb3VwIG1lbWJlcnNoaXAgZm9yIGdlbmVyaWMgdXNlcnMgbGlrZSBCPG5vYm9keT4pLiIKK21zZ3N0ciAiIgorIkNhbWJpYSBhIGVzdGUgdXN1YXJpby91aWQgYW50ZXMgZGUgZW1wZXphciBlbCBwcm9jZXNvLiBUYW1iacOpbiBwdWVkZSBkZWZpbmlyICIKKyJ1biBncnVwbyBhw7FhZGllbmRvIEI8Oj4gc2VndWlkbyBkZWwgZ3J1cG8gbyBlbCBnaWQsIGRlbCBtaXNtbyBtb2RvIHF1ZSBoYXLDrWEgIgorImNvbiBsYSBvcmRlbiDCq2Nob3duwrsgKEk8dXN1YXJpbz5CPDo+STxncnVwbz4pLiBUZW5nYSBlbiBjdWVudGEgcXVlIGN1YW5kbyBzZSAiCisidXNhIGVzdGEgb3BjacOzbiBlbCBncnVwbyBwcmltYXJpbyB5IGNvbXBsZW1lbnRhcmlvIHRhbWJpw6luIGNhbWJpYW4sIGluY2x1c28gIgorInNpIG5vIHNlIGVzcGVjaWZpY2EgQjwtLWdyb3VwPi4gTGEgb3BjacOzbiBCPC0tZ3JvdXA+IGVzIHPDs2xvIHBhcmEgZ3J1cG9zIGRlICIKKyJsb3MgcXVlIGVsIHVzdWFyaW8gbm8gZXMgbWllbWJybyAoY29tbyBlbCBncnVwbyBCPG5vYm9keT4pLiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTk1CisjLCBuby13cmFwCittc2dpZCAiQjwtcj4sIEI8LS1jaHJvb3Q+IEk8cm9vdD4iCittc2dzdHIgIkI8LXI+LCBCPC0tY2hyb290PiBJPGRpcmVjdG9yaW8tcmHDrXo+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjIwMQorbXNnaWQgIiIKKyJDaGRpciBhbmQgY2hyb290IHRvIEk8cm9vdD4gYmVmb3JlIHN0YXJ0aW5nIHRoZSBwcm9jZXNzLiBQbGVhc2Ugbm90ZSB0aGF0ICIKKyJ0aGUgcGlkZmlsZSBpcyBhbHNvIHdyaXR0ZW4gYWZ0ZXIgdGhlIGNocm9vdC4iCittc2dzdHIgIiIKKyJFamVjdXRhIMKrY2hkaXLCuyB5IMKrY2hyb290wrsgc29icmUgZWwgSTxkaXJlY3RvcmlvLXJhw616PiBhbnRlcyBkZSBlbXBlemFyIGVsICIKKyJwcm9jZXNvLiBUZW5nYSBlbiBjdWVudGEgcXVlIGVsIGZpY2hlcm8gcGlkIHRhbWJpw6luIHNlIGVzY3JpYmUgZGVzcHXDqXMgZGVsICIKKyJjaHJvb3QuIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyMDEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1kPiwgQjwtLWNoZGlyPiBJPHBhdGg+IgorbXNnc3RyICJCPC1kPiwgQjwtLWNoZGlyPiBJPHJ1dGE+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjIwOQorbXNnaWQgIiIKKyJDaGRpciB0byBJPHBhdGg+IGJlZm9yZSBzdGFydGluZyB0aGUgcHJvY2Vzcy4gVGhpcyBpcyBkb25lIGFmdGVyIHRoZSBjaHJvb3QgIgorImlmIHRoZSBCPC1yPnxCPC0tY2hyb290PiBvcHRpb24gaXMgc2V0LiBXaGVuIG5vdCBzcGVjaWZpZWQsIHN0YXJ0LXN0b3AtIgorImRhZW1vbiB3aWxsIGNoZGlyIHRvIHRoZSByb290IGRpcmVjdG9yeSBiZWZvcmUgc3RhcnRpbmcgdGhlIHByb2Nlc3MuIgorbXNnc3RyICIiCisiRWplY3V0YSB1biDCq2NoZGlywrsgYSBJPHJ1dGE+IGFudGVzIGRlIGVtcGV6YXIgZWwgcHJvY2Vzby4gRXN0byBzZSBoYWNlIHRyYXMgIgorIsKrY2hyb290wrssIHNpIHNlIGRlZmluZSBsYSBvcGNpw7NuIEI8LXI+fEI8LS1jaHJvb3Q+LiBTaSBubyBzZSBkZWZpbmUsIHN0YXJ0LSIKKyJzdG9wLWRhZW1vbiBlamVjdXRhcsOhIHVuIMKrY2hkaXLCuyBhbCBkaXJlY3RvcmlvIHJhw616IGFudGVzIGRlIGVtcGV6YXIgZWwgIgorInByb2Nlc28uIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyMDkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1iPiwgQjwtLWJhY2tncm91bmQ+IgorbXNnc3RyICJCPC1iPiwgQjwtLWJhY2tncm91bmQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjIyMQorbXNnaWQgIiIKKyJUeXBpY2FsbHkgdXNlZCB3aXRoIHByb2dyYW1zIHRoYXQgZG9uJ3QgZGV0YWNoIG9uIHRoZWlyIG93bi4gVGhpcyBvcHRpb24gIgorIndpbGwgZm9yY2UgQjxzdGFydC1zdG9wLWRhZW1vbj4gdG8gZm9yayBiZWZvcmUgc3RhcnRpbmcgdGhlIHByb2Nlc3MsIGFuZCAiCisiZm9yY2UgaXQgaW50byB0aGUgYmFja2dyb3VuZC4gIEI8V0FSTklORzogc3RhcnQtc3RvcC1kYWVtb24+IGNhbm5vdCBjaGVjayAiCisidGhlIGV4aXQgc3RhdHVzIGlmIHRoZSBwcm9jZXNzIGZhaWxzIHRvIGV4ZWN1dGUgZm9yIEI8YW55PiByZWFzb24uIFRoaXMgaXMgYSAiCisibGFzdCByZXNvcnQsIGFuZCBpcyBvbmx5IG1lYW50IGZvciBwcm9ncmFtcyB0aGF0IGVpdGhlciBtYWtlIG5vIHNlbnNlICIKKyJmb3JraW5nIG9uIHRoZWlyIG93biwgb3Igd2hlcmUgaXQncyBub3QgZmVhc2libGUgdG8gYWRkIHRoZSBjb2RlIGZvciB0aGVtIHRvICIKKyJkbyB0aGlzIHRoZW1zZWx2ZXMuIgorbXNnc3RyICIiCisiVXNhZG8gaGFiaXR1YWxtZW50ZSBjb24gcHJvZ3JhbWFzIHF1ZSBubyBzZSBzZXBhcmFuIHBvciBzw60gbWlzbW9zLiBFc3RhICIKKyJvcGNpw7NuIGZvcnphcsOhIEI8c3RhcnQtc3RvcC1kYWVtb24+IGEgaGFjZXIgdW4gZm9yayBhbnRlcyBkZSBlbXBlemFyIGVsICIKKyJwcm9jZXNvLCBwYXJhIGx1ZWdvIGRlamFybG8gZW4gc2VndW5kbyBwbGFuby4gQjxBVEVOQ0nDk046IHN0YXJ0LXN0b3AtZGFlbW9uPiAiCisibm8gcHVlZGUgY29tcHJvYmFyIGVsIGVzdGFkbyBkZSBzYWxpZGEgc2kgZWwgcHJvY2VzbyBubyBwdWVkZSBlamVjdXRhcnNlIHBvciAiCisiQjxjdWFscXVpZXI+IHJhesOzbi4gRXN0byBzZSBoYWNlIGNvbW8gw7psdGltbyByZWN1cnNvLCB5IHPDs2xvIHRpZW5lIHNlbnRpZG8gIgorInVzYXJsYSBlbiBwcm9ncmFtYXMgZG9uZGUgbm8gdGllbmUgc2VudGlkbyBxdWUgaGFnYW4gZm9yayBwb3Igc8OtIG1pc21vcywgbyAiCisibm8gc2kgZXMgcG9zaWJsZSBhw7FhZGlyIGVsIGPDs2RpZ28gcGFyYSBxdWUgbG8gaGFnYW4gcG9yIHPDrSBtaXNtb3MuIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyMjEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1OPiwgQjwtLW5pY2VsZXZlbD4gSTxpbnQ+IgorbXNnc3RyICJCPC1OPiwgQjwtLW5pY2VsZXZlbD4gSTxlbnRlcm8+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjIyNAorbXNnaWQgIlRoaXMgYWx0ZXJzIHRoZSBwcmlvcml0eSBvZiB0aGUgcHJvY2VzcyBiZWZvcmUgc3RhcnRpbmcgaXQuIgorbXNnc3RyICJBbHRlcmEgbGEgcHJpb3JpZGFkIGRlbCBwcm9jZXNvIGFudGVzIGRlIGluaWNpYXJsby4iCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjIyNAorIywgbm8td3JhcAorbXNnaWQgIkI8LVA+LCBCPC0tcHJvY3NjaGVkPiBJPHBvbGljeT5CPDo+STxwcmlvcml0eT4iCittc2dzdHIgIkI8LVA+LCBCPC0tcHJvY3NjaGVkPiBJPGRpcmVjdHJpej5CPDo+STxwcmlvcmlkYWQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjIzMAorbXNnaWQgIiIKKyJUaGlzIGFsdGVycyB0aGUgcHJvY2VzcyBzY2hlZHVsZXIgcG9saWN5IGFuZCBwcmlvcml0eSBvZiB0aGUgcHJvY2VzcyBiZWZvcmUgIgorInN0YXJ0aW5nIGl0LiBUaGUgcHJpb3JpdHkgY2FuIGJlIG9wdGlvbmFsbHkgc3BlY2lmaWVkIGJ5IGFwcGVuZGluZyBhIEI8Oj4gIgorImZvbGxvd2VkIGJ5IHRoZSB2YWx1ZS4gVGhlIGRlZmF1bHQgSTxwcmlvcml0eT4gaXMgMC4gVGhlIGN1cnJlbnRseSBzdXBwb3J0ZWQgIgorInBvbGljeSB2YWx1ZXMgYXJlIEI8b3RoZXI+LCBCPGZpZm8+IGFuZCBCPHJyPi4iCittc2dzdHIgIiIKKyJBbHRlcmEgbGEgZGlyZWN0cml6IGRlIGxhIGFjY2nDs24gcHJvZ3JhbWFkYSBkZWwgcHJvY2VzbyB5IGxhIHByaW9yaWRhZCBkZSBsYSAiCisiYWNjacOzbiBwcm9ncmFtYWRhIGFudGVzIGRlIGluaWNpYXJsby4gUHVlZGUgZXNwZWNpZmljYXIgbGEgcHJpb3JpZGFkICIKKyJvcGNpb25hbG1lbnRlIGHDsWFkaWVuZG8gQjw6Piwgc2VndWlkbyBkZWwgdmFsb3IuIExhIEk8cHJpb3JpZGFkPiBwb3Igb21pc2nDs24gIgorImVzIDAuIExhcyBkaXJlY3RyaWNlcyBjb21wYXRpYmxlcyBzb24gQjxvdGhlcj4sIEI8Zmlmbz4geSBCPHJyPi4iCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjIzMAorIywgbm8td3JhcAorbXNnaWQgIkI8LUk+LCBCPC0taW9zY2hlZD4gSTxjbGFzcz5CPDo+STxwcmlvcml0eT4iCittc2dzdHIgIkI8LUk+LCBCPC0taW9zY2hlZD4gSTxjbGFzZT5CPDo+STxwcmlvcmlkYWQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjIzNworbXNnaWQgIiIKKyJUaGlzIGFsdGVycyB0aGUgSU8gc2NoZWR1bGVyIGNsYXNzIGFuZCBwcmlvcml0eSBvZiB0aGUgcHJvY2VzcyBiZWZvcmUgIgorInN0YXJ0aW5nIGl0LiBUaGUgcHJpb3JpdHkgY2FuIGJlIG9wdGlvbmFsbHkgc3BlY2lmaWVkIGJ5IGFwcGVuZGluZyBhIEI8Oj4gIgorImZvbGxvd2VkIGJ5IHRoZSB2YWx1ZS4gVGhlIGRlZmF1bHQgSTxwcmlvcml0eT4gaXMgNCwgdW5sZXNzIEk8Y2xhc3M+IGlzICIKKyJCPGlkbGU+LCB0aGVuIEk8cHJpb3JpdHk+IHdpbGwgYWx3YXlzIGJlIDcuIFRoZSBjdXJyZW50bHkgc3VwcG9ydGVkIHZhbHVlcyAiCisiZm9yIEk8Y2xhc3M+IGFyZSBCPGlkbGU+LCBCPGJlc3QtZWZmb3J0PiBhbmQgQjxyZWFsLXRpbWU+LiIKK21zZ3N0ciAiIgorIkVzdG8gYWx0ZXJhIGxhIGNsYXNlIGxhIHBsYW5pZmljYWNpw7NuIGRlIEUvUyB5IGxhIHByaW9yaWRhZCBkZWwgcHJvY2VzbyAiCisiYW50ZXMgZGUgaW5pY2lhcmxvLiBPcGNpb25hbG1lbnRlLCBwdWVkZSBkZWZpbmlyIGxhIHByaW9yaWRhZCBhw7FhZGllbmRvIEI8Oj4gIgorImFsIGZpbmFsLCBzZWd1aWRvIGRlbCB2YWxvci4gTGEgSTxwcmlvcmlkYWQ+IHByZWRlZmluaWRhIGVzIDQsIGEgbWVub3MgcXVlICIKKyJsYSBJPGNsYXNlPiBzZWEgQjxpZGxlPi4gRW4gdGFsIGNhc28sIGxhIHByaW9yaWRhZCBzZXLDoSBzaWVtcHJlIDcuIExvcyAiCisidmFsb3JlcyBwb3NpYmxlcyBwYXJhIGxhIEk8Y2xhc2U+IHNvbiBCPGlkbGU+LCBCPGJlc3QtZWZmb3J0PiB5IEI8cmVhbC0iCisidGltZT4uICIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjM3CisjLCBuby13cmFwCittc2dpZCAiQjwtaz4sIEI8LS11bWFzaz4gSTxtYXNrPiIKK21zZ3N0ciAiQjwtaz4sIEI8LS11bWFzaz4gSTxtYXNrPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyNDAKK21zZ2lkICJUaGlzIHNldHMgdGhlIHVtYXNrIG9mIHRoZSBwcm9jZXNzIGJlZm9yZSBzdGFydGluZyBpdC4iCittc2dzdHIgIkRlZmluZSBlbCB1bWFzayBkZWwgcHJvY2VzbyBhbnRlcyBkZSBpbmljaWFybG8uIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyNDAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1tPiwgQjwtLW1ha2UtcGlkZmlsZT4iCittc2dzdHIgIkI8LW0+LCBCPC0tbWFrZS1waWRmaWxlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyNTUKK21zZ2lkICIiCisiVXNlZCB3aGVuIHN0YXJ0aW5nIGEgcHJvZ3JhbSB0aGF0IGRvZXMgbm90IGNyZWF0ZSBpdHMgb3duIHBpZCBmaWxlLiBUaGlzICIKKyJvcHRpb24gd2lsbCBtYWtlIEI8c3RhcnQtc3RvcC1kYWVtb24+IGNyZWF0ZSB0aGUgZmlsZSByZWZlcmVuY2VkIHdpdGggQjwtLSIKKyJwaWRmaWxlPiBhbmQgcGxhY2UgdGhlIHBpZCBpbnRvIGl0IGp1c3QgYmVmb3JlIGV4ZWN1dGluZyB0aGUgcHJvY2Vzcy4gTm90ZSwgIgorInRoZSBmaWxlIHdpbGwgbm90IGJlIHJlbW92ZWQgd2hlbiBzdG9wcGluZyB0aGUgcHJvZ3JhbS4gIEI8Tk9URTo+IFRoaXMgIgorImZlYXR1cmUgbWF5IG5vdCB3b3JrIGluIGFsbCBjYXNlcy4gTW9zdCBub3RhYmx5IHdoZW4gdGhlIHByb2dyYW0gYmVpbmcgIgorImV4ZWN1dGVkIGZvcmtzIGZyb20gaXRzIG1haW4gcHJvY2Vzcy4gQmVjYXVzZSBvZiB0aGlzLCBpdCBpcyB1c3VhbGx5IG9ubHkgIgorInVzZWZ1bCB3aGVuIGNvbWJpbmVkIHdpdGggdGhlIEI8LS1iYWNrZ3JvdW5kPiBvcHRpb24uIgorbXNnc3RyICIiCisiU2UgdXNhIGN1YW5kbyBzZSBxdWllcmUgY29tZW56YXIgdW4gcHJvZ3JhbWEgcXVlIG5vIGNyZWEgc3UgcHJvcGlvIGZpY2hlcm8gIgorInBpZC4gRXN0YSBvcGNpw7NuIGhhY2UgcXVlIEI8c3RhcnQtc3RvcC1kYWVtb24+IGNyZWUgZWwgZmljaGVybyByZWZlcmlkbyBjb24gIgorIkI8LS1waWRmaWxlPiB5IGNvbG9xdWUgZWwgcGlkIGRlbnRybyBkZSDDqWwganVzdG8gYW50ZXMgZGUgZWplY3V0YXIgZWwgIgorInByb2Nlc28uIFRlbmdhIGVuIGN1ZW50YSBxdWUgbm8gc2UgYm9ycmFyw6EgY3VhbmRvIHRlcm1pbmUgZWwgcHJvZ3JhbWEuICIKKyJCPE5PVEE6PiBFc3RhIGNhcmFjdGVyw61zdGljYSBubyBmdW5jaW9uYSBlbiB0b2RvcyBsb3MgY2Fzb3MuIE3DoXMgIgorIm5vdGFibGVtZW50ZSBjdWFuZG8gZWwgcHJvZ3JhbWEgcXVlIHNlIGVqZWN1dGEgaGFjZSB1biBmb3JrIGRlIHN1IHByb2Nlc28gIgorInByaW5jaXBhbC4gUG9yIGVzdG8gZXMgw7p0aWwgc8OzbG8gY3VhbmRvIHNlIGNvbWJpbmEgY29uIGxhIG9wY2nDs24gQjwtLSIKKyJiYWNrZ3JvdW5kPi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjU4Cittc2dpZCAiUHJpbnQgdmVyYm9zZSBpbmZvcm1hdGlvbmFsIG1lc3NhZ2VzLiIKK21zZ3N0ciAiTXVlc3RyYSBtZW5zYWplcyBpbmZvcm1hdGl2b3MgZGV0YWxsYWRvcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjcwCittc2dpZCAiIgorIlRoZSByZXF1ZXN0ZWQgYWN0aW9uIHdhcyBwZXJmb3JtZWQuIElmIEI8LS1va25vZG8+IHdhcyBzcGVjaWZpZWQsIGl0J3MgYWxzbyAiCisicG9zc2libGUgdGhhdCBub3RoaW5nIGhhZCB0byBiZSBkb25lLiAgVGhpcyBjYW4gaGFwcGVuIHdoZW4gQjwtLXN0YXJ0PiB3YXMgIgorInNwZWNpZmllZCBhbmQgYSBtYXRjaGluZyBwcm9jZXNzIHdhcyBhbHJlYWR5IHJ1bm5pbmcsIG9yIHdoZW4gQjwtLXN0b3A+IHdhcyAiCisic3BlY2lmaWVkIGFuZCB0aGVyZSB3ZXJlIG5vIG1hdGNoaW5nIHByb2Nlc3Nlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyNzUKK21zZ2lkICJJZiBCPC0tb2tub2RvPiB3YXMgbm90IHNwZWNpZmllZCBhbmQgbm90aGluZyB3YXMgZG9uZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyODMKK21zZ2lkICIiCisiSWYgQjwtLXN0b3A+IGFuZCBCPC0tcmV0cnk+IHdlcmUgc3BlY2lmaWVkLCBidXQgdGhlIGVuZCBvZiB0aGUgc2NoZWR1bGUgd2FzICIKKyJyZWFjaGVkIGFuZCB0aGUgcHJvY2Vzc2VzIHdlcmUgc3RpbGwgcnVubmluZy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjgzIHN0YXJ0LXN0b3AtZGFlbW9uLjg6Mjk1CisjLCBuby13cmFwCittc2dpZCAiQjwzPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjI4NgorbXNnaWQgIkFueSBvdGhlciBlcnJvci4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyODkKK21zZ2lkICIiCisiV2hlbiB1c2luZyB0aGUgQjwtLXN0YXR1cz4gY29tbWFuZCwgdGhlIGZvbGxvd2luZyBzdGF0dXMgY29kZXMgYXJlIHJldHVybmVkOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjI5MgorbXNnaWQgIlByb2dyYW0gaXMgcnVubmluZy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyOTUKK21zZ2lkICJQcm9ncmFtIGlzIG5vdCBydW5uaW5nIGFuZCB0aGUgcGlkIGZpbGUgZXhpc3RzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjI5OAorbXNnaWQgIlByb2dyYW0gaXMgbm90IHJ1bm5pbmcuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjI5OAorIywgbm8td3JhcAorbXNnaWQgIkI8ND4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODozMDEKK21zZ2lkICJVbmFibGUgdG8gZGV0ZXJtaW5lIHByb2dyYW0gc3RhdHVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjMwNQorbXNnaWQgIiIKKyJTdGFydCB0aGUgQjxmb29kPiBkYWVtb24sIHVubGVzcyBvbmUgaXMgYWxyZWFkeSBydW5uaW5nIChhIHByb2Nlc3MgbmFtZWQgIgorImZvb2QsIHJ1bm5pbmcgYXMgdXNlciBmb29kLCB3aXRoIHBpZCBpbiBmb29kLnBpZCk6IgorbXNnc3RyICIiCisiQXJyYW5jYSBlbCBkZW1vbmlvIEI8Zm9vZD4sIGEgbWVub3MgcXVlIHNlIGVzdMOpIGVqZWN1dGFuZG8gdW5vICh1biBwcm9jZXNvICIKKyJsbGFtYWRvIMKrZm9vZMK7LCBlamVjdXTDoW5kb3NlIGNvbW8gdXN1YXJpbyDCq2Zvb2TCuywgeSBjb24gcGlkIGVuIMKrZm9vZC5waWTCuyk6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjMwOAorIywgbm8td3JhcAorbXNnaWQgInN0YXJ0LXN0b3AtZGFlbW9uIC0tc3RhcnQgLS1va25vZG8gLS11c2VyIGZvb2QgLS1uYW1lIGZvb2QgLS1waWRmaWxlIC92YXIvcnVuL2Zvb2QucGlkIC0tc3RhcnRhcyAvdXNyL3NiaW4vZm9vZCAtLWNodWlkIGZvb2QgLS0gLS1kYWVtb25cbiIKK21zZ3N0ciAic3RhcnQtc3RvcC1kYWVtb24gLS1zdGFydCAtLW9rbm9kbyAtLXVzZXIgZm9vZCAtLW5hbWUgZm9vZCAtLXBpZGZpbGUgL3Zhci9ydW4vZm9vZC5waWQgLS1zdGFydGFzIC91c3Ivc2Jpbi9mb29kIC0tY2h1aWQgZm9vZCAtLSAtLWRhZW1vblxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjMxMQorbXNnaWQgIlNlbmQgQjxTSUdURVJNPiB0byBCPGZvb2Q+IGFuZCB3YWl0IHVwIHRvIDUgc2Vjb25kcyBmb3IgaXQgdG8gc3RvcDoiCittc2dzdHIgIkVudsOtYSBCPFNJR1RFUk0+IGEgQjxmb29kPiB5IGVzcGVyYSA1IHNlZ3VuZG9zIHBhcmEgc3UgZmluYWxpemFjacOzbjoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MzE0CisjLCBuby13cmFwCittc2dpZCAic3RhcnQtc3RvcC1kYWVtb24gLS1zdG9wIC0tb2tub2RvIC0tdXNlciBmb29kIC0tbmFtZSBmb29kIC0tcGlkZmlsZSAvdmFyL3J1bi9mb29kLnBpZCAtLXJldHJ5IDVcbiIKK21zZ3N0ciAic3RhcnQtc3RvcC1kYWVtb24gLS1zdG9wIC0tb2tub2RvIC0tdXNlciBmb29kIC0tbmFtZSBmb29kIC0tcGlkZmlsZSAvdmFyL3J1bi9mb29kLnBpZCAtLXJldHJ5IDVcbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODozMTcKK21zZ2lkICJEZW1vbnN0cmF0aW9uIG9mIGEgY3VzdG9tIHNjaGVkdWxlIGZvciBzdG9wcGluZyBCPGZvb2Q+OiIKK21zZ3N0ciAiIgorIlVuIGVqZW1wbG8gZGUgdW5hIGFjY2nDs24gcHJvZ3JhbWFkYSBwZXJzb25hbGl6YWRhIHBhcmEgZGV0ZW5lciBCPGZvb2Q+OiAiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MzIwCisjLCBuby13cmFwCittc2dpZCAic3RhcnQtc3RvcC1kYWVtb24gLS1zdG9wIC0tb2tub2RvIC0tdXNlciBmb29kIC0tbmFtZSBmb29kIC0tcGlkZmlsZSAvdmFyL3J1bi9mb29kLnBpZCAtLXJldHJ5PVRFUk0vMzAvS0lMTC81XG4iCittc2dzdHIgInN0YXJ0LXN0b3AtZGFlbW9uIC0tc3RvcCAtLW9rbm9kbyAtLXVzZXIgZm9vZCAtLW5hbWUgZm9vZCAtLXBpZGZpbGUgL3Zhci9ydW4vZm9vZC5waWQgLS1yZXRyeT1URVJNLzMwL0tJTEwvNVxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjMyNgorbXNnaWQgIiIKKyJNYXJlayBNaWNoYWxraWV3aWN6IEU8bHQ+bWFyZWttQGkxN2xpbnV4Yi5pc3RzLnB3ci53cm9jLnBsRTxndD4gYmFzZWQgb24gYSAiCisicHJldmlvdXMgdmVyc2lvbiBieSBJYW4gSmFja3NvbiBFPGx0PmlhbkBjaGlhcmsuZ3JlZW5lbmQub3JnLnVrRTxndD4uIgorbXNnc3RyICIiCisiTWFyZWsgTWljaGFsa2lld2ljeiBFPGx0Pm1hcmVrbUBpMTdsaW51eGIuaXN0cy5wd3Iud3JvYy5wbEU8Z3Q+IGJhc2FkYSBlbiAiCisidW5hIHZlcnNpw7NuIHByZXZpYSBkZSBJYW4gSmFja3NvbiBFPGx0PmlhbkBjaGlhcmsuZ3JlZW5lbmQub3JnLnVrRTxndD4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjMyOAorbXNnaWQgIiIKKyJNYW51YWwgcGFnZSBieSBLbGVlIERpZW5lcyBFPGx0PmtsZWVAbWl0LmVkdUU8Z3Q+LCBwYXJ0aWFsbHkgcmVmb3JtYXR0ZWQgYnkgIgorIklhbiBKYWNrc29uLiIKK21zZ3N0ciAiIgorIlDDoWdpbmEgZGUgbWFudWFsIGRlIEtsZWUgRGllbmVzIEU8bHQ+a2xlZUBtaXQuZWR1RTxndD4sIHJlZm9ybWF0ZWFkYSAiCisicGFyY2lhbG1lbnRlIHBvciBJYW4gSmFja3Nvbi4iCisKKyMuIHR5cGU6IFRICisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6OAorIywgbm8td3JhcAorbXNnaWQgInVwZGF0ZS1hbHRlcm5hdGl2ZXMiCittc2dzdHIgInVwZGF0ZS1hbHRlcm5hdGl2ZXMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxMQorbXNnaWQgIiIKKyJ1cGRhdGUtYWx0ZXJuYXRpdmVzIC0gbWFpbnRhaW4gc3ltYm9saWMgbGlua3MgZGV0ZXJtaW5pbmcgZGVmYXVsdCBjb21tYW5kcyIKK21zZ3N0ciAiIgorInVwZGF0ZS1hbHRlcm5hdGl2ZXMgLSBHZXN0acOzbiBkZSBlbmxhY2VzIHNpbWLDs2xpY29zIHF1ZSBkZXRlcm1pbmFuIMOzcmRlbmVzICIKKyJwcmVkZWZpbmlkYXMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNQorIywgZnV6enkKKyN8IG1zZ2lkICJCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IFtJPG9wdGlvbnM+XSBJPGNvbW1hbmQ+IgorbXNnaWQgIkI8dXBkYXRlLWFsdGVybmF0aXZlcz4gW0k8b3B0aW9uPi4uLl0gSTxjb21tYW5kPiIKK21zZ3N0ciAiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBbSTxvcGNpb25lcz5dIEk8b3JkZW4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjAKK21zZ2lkICIiCisiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBjcmVhdGVzLCByZW1vdmVzLCBtYWludGFpbnMgYW5kIGRpc3BsYXlzIGluZm9ybWF0aW9uICIKKyJhYm91dCB0aGUgc3ltYm9saWMgbGlua3MgY29tcHJpc2luZyB0aGUgRGViaWFuIGFsdGVybmF0aXZlcyBzeXN0ZW0uIgorbXNnc3RyICIiCisiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBjcmVhLCBlbGltaW5hLCBnZXN0aW9uYSB5IG11ZXN0cmEgaW5mb3JtYWNpw7NuIHNvYnJlICIKKyJsb3MgZW5sYWNlcyBzaW1iw7NsaWNvcyBxdWUgY29uZm9ybWFuIGVsIHNpc3RlbWEgZGUgYWx0ZXJuYXRpdmFzIGRlIERlYmlhbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyOAorbXNnaWQgIiIKKyJJdCBpcyBwb3NzaWJsZSBmb3Igc2V2ZXJhbCBwcm9ncmFtcyBmdWxmaWxsaW5nIHRoZSBzYW1lIG9yIHNpbWlsYXIgZnVuY3Rpb25zICIKKyJ0byBiZSBpbnN0YWxsZWQgb24gYSBzaW5nbGUgc3lzdGVtIGF0IHRoZSBzYW1lIHRpbWUuICBGb3IgZXhhbXBsZSwgbWFueSAiCisic3lzdGVtcyBoYXZlIHNldmVyYWwgdGV4dCBlZGl0b3JzIGluc3RhbGxlZCBhdCBvbmNlLiAgVGhpcyBnaXZlcyBjaG9pY2UgdG8gIgorInRoZSB1c2VycyBvZiBhIHN5c3RlbSwgYWxsb3dpbmcgZWFjaCB0byB1c2UgYSBkaWZmZXJlbnQgZWRpdG9yLCBpZiBkZXNpcmVkLCAiCisiYnV0IG1ha2VzIGl0IGRpZmZpY3VsdCBmb3IgYSBwcm9ncmFtIHRvIG1ha2UgYSBnb29kIGNob2ljZSBmb3IgYW4gZWRpdG9yIHRvICIKKyJpbnZva2UgaWYgdGhlIHVzZXIgaGFzIG5vdCBzcGVjaWZpZWQgYSBwYXJ0aWN1bGFyIHByZWZlcmVuY2UuIgorbXNnc3RyICIiCisiRXMgcG9zaWJsZSBxdWUgdGVuZ2EgZW4gZWwgc2lzdGVtYSB2YXJpb3MgcHJvZ3JhbWFzIGluc3RhbGFkb3MgYSBsYSB2ZXogcXVlICIKKyJyZWFsaXphbiBsYSBtaXNtYSBmdW5jacOzbi4gUG9yIGVqZW1wbG8sIG11Y2hvcyBzaXN0ZW1hcyB0aWVuZW4gdmFyaW9zICIKKyJlZGl0b3JlcyBkZSB0ZXh0byBpbnN0YWxhZG9zIGFsIG1pc21vIHRpZW1wbywgbG8gcXVlIGRlamEgbGEgZWxlY2Npw7NuIGRlIHF1w6kgIgorImVkaXRvciBkZSB0ZXh0byB1c2FyIGVuIG1hbm9zIGRlbCB1c3VhcmlvLCBzaSDDqXN0ZSBsbyBkZXNlYSwgcGVybyBoYWNlICIKKyJkaWbDrWNpbCBxdWUgdW4gcHJvZ3JhbWEgZWxpamEgbGEgb3BjacOzbiBjb3JyZWN0YSBzaSBlbCB1c3VhcmlvIG5vIGhhICIKKyJkZWZpbmlkbyBuaW5ndW5hIHByZWZlcmVuY2lhLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjUwCittc2dpZCAiIgorIkRlYmlhbidzIGFsdGVybmF0aXZlcyBzeXN0ZW0gYWltcyB0byBzb2x2ZSB0aGlzIHByb2JsZW0uICBBIGdlbmVyaWMgbmFtZSBpbiAiCisidGhlIGZpbGVzeXN0ZW0gaXMgc2hhcmVkIGJ5IGFsbCBmaWxlcyBwcm92aWRpbmcgaW50ZXJjaGFuZ2VhYmxlICIKKyJmdW5jdGlvbmFsaXR5LiAgVGhlIGFsdGVybmF0aXZlcyBzeXN0ZW0gYW5kIHRoZSBzeXN0ZW0gYWRtaW5pc3RyYXRvciAiCisidG9nZXRoZXIgZGV0ZXJtaW5lIHdoaWNoIGFjdHVhbCBmaWxlIGlzIHJlZmVyZW5jZWQgYnkgdGhpcyBnZW5lcmljIG5hbWUuICAiCisiRm9yIGV4YW1wbGUsIGlmIHRoZSB0ZXh0IGVkaXRvcnMgQjxlZD4oMSkgIGFuZCBCPG52aT4oMSkgIGFyZSBib3RoIGluc3RhbGxlZCAiCisib24gdGhlIHN5c3RlbSwgdGhlIGFsdGVybmF0aXZlcyBzeXN0ZW0gd2lsbCBjYXVzZSB0aGUgZ2VuZXJpYyBuYW1lIEk8L3Vzci8iCisiYmluL2VkaXRvcj4gdG8gcmVmZXIgdG8gSTwvdXNyL2Jpbi9udmk+IGJ5IGRlZmF1bHQuIFRoZSBzeXN0ZW0gYWRtaW5pc3RyYXRvciAiCisiY2FuIG92ZXJyaWRlIHRoaXMgYW5kIGNhdXNlIGl0IHRvIHJlZmVyIHRvIEk8L3Vzci9iaW4vZWQ+IGluc3RlYWQsIGFuZCB0aGUgIgorImFsdGVybmF0aXZlcyBzeXN0ZW0gd2lsbCBub3QgYWx0ZXIgdGhpcyBzZXR0aW5nIHVudGlsIGV4cGxpY2l0bHkgcmVxdWVzdGVkICIKKyJ0byBkbyBzby4iCittc2dzdHIgIiIKKyJFbCBvYmpldGl2byBkZWwgc2lzdGVtYSBkZSBhbHRlcm5hdGl2YXMgZGUgRGViaWFuIGVzIHJlc29sdmVyIGVzdGUgcHJvYmxlbWEuICIKKyJVbiBub21icmUgZ2Vuw6lyaWNvIGVuIGVsIHNpc3RlbWEgZGUgZmljaGVyb3Mgc2UgY29tcGFydGUgZW50cmUgdG9kb3MgbG9zICIKKyJmaWNoZXJvcyBxdWUgdGllbmVuIHVuYSBmdW5jaW9uYWxpZGFkIGludGVyY2FtYmlhYmxlLiBFbCBzaXN0ZW1hIGRlICIKKyJhbHRlcm5hdGl2YXMganVudG8gY29uIGVsIGFkbWluaXN0cmFkb3IgZGVsIHNpc3RlbWEgZGV0ZXJtaW5hbiBhIHF1w6kgZmljaGVybyAiCisiaGFjZSByZWZlcmVuY2lhIGVzdGUgbm9tYnJlIGdlbsOpcmljby4gUG9yIGVqZW1wbG8sIHNpIGxvcyBlZGl0b3JlcyBkZSB0ZXh0byAiCisiQjxlZD4oMSkgeSBCPG52aT4oMSkgZXN0w6FuIGluc3RhbGFkb3MgY29uanVudGFtZW50ZSBlbiBlbCBzaXN0ZW1hLCBlbCAiCisic2lzdGVtYSBkZSBhbHRlcm5hdGl2YXMgaGFyw6EgcXVlIGVsIG5vbWJyZSBnZW7DqXJpY28gSTwvdXNyL2Jpbi9lZGl0b3I+IHNlICIKKyJyZWZpZXJhIGEgSTwvdXNyL2Jpbi9udmk+IHBvciBvbWlzacOzbi4gRWwgYWRtaW5pc3RyYWRvciBkZWwgc2lzdGVtYSBwdWVkZSAiCisibW9kaWZpY2FyIGVzdG8geSBoYWNlciBxdWUgc2UgcmVmaWVyYSBhIEk8L3Vzci9iaW4vZWQ+LCB5IGVsIHNpc3RlbWEgZGUgIgorImFsdGVybmF0aXZhcyBubyBtb2RpZmljYXLDoSBlc3RvIHBvc3Rlcmlvcm1lbnRlIGhhc3RhIHF1ZSBzZSBzb2xpY2l0ZSAiCisiZXhwbMOtY2l0YW1lbnRlLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjYwCittc2dpZCAiIgorIlRoZSBnZW5lcmljIG5hbWUgaXMgbm90IGEgZGlyZWN0IHN5bWJvbGljIGxpbmsgdG8gdGhlIHNlbGVjdGVkIGFsdGVybmF0aXZlLiAgIgorIkluc3RlYWQsIGl0IGlzIGEgc3ltYm9saWMgbGluayB0byBhIG5hbWUgaW4gdGhlIEk8YWx0ZXJuYXRpdmVzPiAiCisiSTxkaXJlY3Rvcnk+LCB3aGljaCBpbiB0dXJuIGlzIGEgc3ltYm9saWMgbGluayB0byB0aGUgYWN0dWFsIGZpbGUgIgorInJlZmVyZW5jZWQuICBUaGlzIGlzIGRvbmUgc28gdGhhdCB0aGUgc3lzdGVtIGFkbWluaXN0cmF0b3IncyBjaGFuZ2VzIGNhbiBiZSAiCisiY29uZmluZWQgd2l0aGluIHRoZSBJPC9ldGM+IGRpcmVjdG9yeTogdGhlIEZIUyAocS52LikgZ2l2ZXMgcmVhc29ucyB3aHkgdGhpcyAiCisiaXMgYSBHb29kIFRoaW5nLiIKK21zZ3N0ciAiIgorIkVsIG5vbWJyZSBnZW7DqXJpY28gbm8gZXMgdW4gZW5sYWNlIHNpbWLDs2xpY28gZGlyZWN0byBhIGxhIGFsdGVybmF0aXZhICIKKyJzZWxlY2Npb25hZGEuIEVuIHZleiBkZSBlc3RvLCBlcyB1biBlbmxhY2Ugc2ltYsOzbGljbyBhIHVuIG5vbWJyZSBlbiBlbCAiCisiSTxkaXJlY3RvcmlvPiBkZSBJPGFsdGVybmF0aXZhcz4gKMKrL2V0Yy9hbHRlcm5hdGl2ZXPCuyksIHF1ZSBhIHN1IHZleiBlcyB1biAiCisiZW5sYWNlIHNpbWLDs2xpY28gYWwgZmljaGVybyBhbCBxdWUgc2UgaGFjZSByZWZlcmVuY2lhIGVuIHJlYWxpZGFkLiBFbCAiCisib2JqZXRpdm8gZXMgcXVlIGxvcyBjYW1iaW9zIGRlbCBhZG1pbmlzdHJhZG9yIHNlIG1hbnRlbmdhbiBkZW50cm8gZGVsICIKKyJkaXJlY3RvcmlvIEk8L2V0Yz46IGVsIEZIUyAocS52LikgZGEgcmF6b25lcyBkZSBwb3IgcXXDqSBlc3RvIGVzIGJ1ZW5vLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjcyCittc2dpZCAiIgorIldoZW4gZWFjaCBwYWNrYWdlIHByb3ZpZGluZyBhIGZpbGUgd2l0aCBhIHBhcnRpY3VsYXIgZnVuY3Rpb25hbGl0eSBpcyAiCisiaW5zdGFsbGVkLCBjaGFuZ2VkIG9yIHJlbW92ZWQsIEI8dXBkYXRlLWFsdGVybmF0aXZlcz4gaXMgY2FsbGVkIHRvIHVwZGF0ZSAiCisiaW5mb3JtYXRpb24gYWJvdXQgdGhhdCBmaWxlIGluIHRoZSBhbHRlcm5hdGl2ZXMgc3lzdGVtLiAgQjx1cGRhdGUtIgorImFsdGVybmF0aXZlcz4gaXMgdXN1YWxseSBjYWxsZWQgZnJvbSB0aGUgQjxwb3N0aW5zdD4gKGNvbmZpZ3VyZSkgb3IgQjxwcmVybT4gIgorIihpbnN0YWxsKSBzY3JpcHRzIGluIERlYmlhbiBwYWNrYWdlcy4iCittc2dzdHIgIiIKKyJDdWFuZG8gc2UgaW5zdGFsYSBvIGRlc2luc3RhbGEgdW4gcGFxdWV0ZSBxdWUgcHJvdmVlIHVuIGZpY2hlcm8gY29uIHVuYSAiCisiZnVuY2lvbmFsaWRhZCBlbiBwYXJ0aWN1bGFyIHNlIGludm9jYSBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IHBhcmEgYWN0dWFsaXphciAiCisibGEgaW5mb3JtYWNpw7NuIGRlbCBzaXN0ZW1hIGRlIGFsdGVybmF0aXZhcyBhY2VyY2EgZGUgZXNlIGZpY2hlcm8uICIKKyJIYWJpdHVhbG1lbnRlLCBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IHNlIGludm9jYSBkZXNkZSBsb3Mgc2NyaXB0cyAiCisiQjxwb3N0aW5zdD4gKHBvc3QtaW5zdGFsYWNpw7NuIG8gY29uZmlndXJhY2nDs24pIG8gQjxwcmVybT4gKHByZS1lbGltaW5hY2nDs24pICIKKyJkZSBsb3MgcGFxdWV0ZXMgZGUgRGViaWFuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjkxCittc2dpZCAiIgorIkl0IGlzIG9mdGVuIHVzZWZ1bCBmb3IgYSBudW1iZXIgb2YgYWx0ZXJuYXRpdmVzIHRvIGJlIHN5bmNocm9uaXNlZCwgc28gdGhhdCAiCisidGhleSBhcmUgY2hhbmdlZCBhcyBhIGdyb3VwOyBmb3IgZXhhbXBsZSwgd2hlbiBzZXZlcmFsIHZlcnNpb25zIG9mIHRoZSBCPHZpPiIKKyIoMSkgIGVkaXRvciBhcmUgaW5zdGFsbGVkLCB0aGUgbWFuIHBhZ2UgcmVmZXJlbmNlZCBieSBJPC91c3Ivc2hhcmUvbWFuL21hbjEvIgorInZpLjE+IHNob3VsZCBjb3JyZXNwb25kIHRvIHRoZSBleGVjdXRhYmxlIHJlZmVyZW5jZWQgYnkgSTwvdXNyL2Jpbi92aT4uICAiCisiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBoYW5kbGVzIHRoaXMgYnkgbWVhbnMgb2YgSTxtYXN0ZXI+IGFuZCBJPHNsYXZlPiAiCisibGlua3M7IHdoZW4gdGhlIG1hc3RlciBpcyBjaGFuZ2VkLCBhbnkgYXNzb2NpYXRlZCBzbGF2ZXMgYXJlIGNoYW5nZWQgdG9vLiAgQSAiCisibWFzdGVyIGxpbmsgYW5kIGl0cyBhc3NvY2lhdGVkIHNsYXZlcyBtYWtlIHVwIGEgSTxsaW5rPiBJPGdyb3VwPi4iCittc2dzdHIgIiIKKyJIYWJpdHVhbG1lbnRlLCBlcyDDunRpbCBxdWUgdW4gbsO6bWVybyBkZSBhbHRlcm5hdGl2YXMgc2Ugc2luY3JvbmljZW4gZGUgdGFsICIKKyJtb2RvIHF1ZSBzZSBwdWVkYW4gY2FtYmlhciBjb21vIHVuIGdydXBvLiBQb3IgZWplbXBsbywgY3VhbmRvIHZhcmlhcyAiCisidmVyc2lvbmVzIGRlbCBlZGl0b3IgQjx2aT4oMSkgZXN0w6FuIGluc3RhbGFkYXMgbGEgcMOhZ2luYSBkZWwgbWFudWFsICIKKyJwcmVmZXJpZGEgcG9yIEk8L3Vzci9zaGFyZS9tYW4vbWFuMS92aS4xPiBkZWJlIGNvcnJlc3BvbmRlciBjb24gZWwgIgorImVqZWN1dGFibGUgYWwgcXVlIGhhY2UgcmVmZXJlbmNpYSBJPC91c3IvYmluL3ZpPi4gQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiAiCisibWFuaXB1bGEgZXN0byBlbiB0w6lybWlub3MgZGUgZW5sYWNlcyBJPG1hZXN0cm8+IHkgSTxlc2NsYXZvPjsgY3VhbmRvIHNlICIKKyJjYW1iaWEgZWwgbWFlc3RybywgdG9kb3MgbG9zIGVzY2xhdm9zIHJlbGFjaW9uYWRvcyBjb24gw6lsIHRhbWJpw6luIGNhbWJpYW4uICIKKyJVbiBlbmxhY2UgbWFlc3RybyB5IHN1cyBlc2NsYXZvcyByZWxhY2lvbmFkb3MgZm9ybWFuIHVuIEk8Z3J1cG8+IGRlICIKKyJJPGVubGFjZXM+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjEwMAorbXNnaWQgIiIKKyJFYWNoIGxpbmsgZ3JvdXAgaXMsIGF0IGFueSBnaXZlbiB0aW1lLCBpbiBvbmUgb2YgdHdvIG1vZGVzOiBhdXRvbWF0aWMgb3IgIgorIm1hbnVhbC4gIFdoZW4gYSBncm91cCBpcyBpbiBhdXRvbWF0aWMgbW9kZSwgdGhlIGFsdGVybmF0aXZlcyBzeXN0ZW0gd2lsbCAiCisiYXV0b21hdGljYWxseSBkZWNpZGUsIGFzIHBhY2thZ2VzIGFyZSBpbnN0YWxsZWQgYW5kIHJlbW92ZWQsIHdoZXRoZXIgYW5kIGhvdyAiCisidG8gdXBkYXRlIHRoZSBsaW5rcy4gIEluIG1hbnVhbCBtb2RlLCB0aGUgYWx0ZXJuYXRpdmVzIHN5c3RlbSB3aWxsIHJldGFpbiAiCisidGhlIGNob2ljZSBvZiB0aGUgYWRtaW5pc3RyYXRvciBhbmQgYXZvaWQgY2hhbmdpbmcgdGhlIGxpbmtzIChleGNlcHQgd2hlbiAiCisic29tZXRoaW5nIGlzIGJyb2tlbikuIgorbXNnc3RyICIiCisiQ2FkYSBncnVwbyBkZSBlbmxhY2VzIGVzdMOhIGVuIHRvZG8gbW9tZW50byBlbiB1bm8gZGUgbG9zIGRvcyBtb2RvcyBwb3NpYmxlczogIgorImF1dG9tw6F0aWNvIG8gbWFudWFsLiBDdWFuZG8gdW4gZ3J1cG8gZXN0w6EgZW4gbW9kbyBhdXRvbcOhdGljbyBlbCBzaXN0ZW1hIGRlICIKKyJhbHRlcm5hdGl2YXMgZGVjaWRlIGF1dG9tw6F0aWNhbWVudGUgZWwgbW9tZW50byBkZSBhY3R1YWxpemFyIGxvcyBlbmxhY2VzIGEgIgorIm1lZGlkYSBxdWUgc2UgaW5zdGFsYW4gbyBkZXNpbnN0YWxhbiBwYXF1ZXRlcy4gRW4gbW9kbyBtYW51YWwgZWwgc2lzdGVtYSBkZSAiCisiYWx0ZXJuYXRpdmFzIGRlamEgdG9kYXMgZXN0YXMgZGVjaXNpb25lcyBlbiBtYW5vcyBkZWwgYWRtaW5pc3RyYWRvciBkZWwgIgorInNpc3RlbWEuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTA5Cittc2dpZCAiIgorIkxpbmsgZ3JvdXBzIGFyZSBpbiBhdXRvbWF0aWMgbW9kZSB3aGVuIHRoZXkgYXJlIGZpcnN0IGludHJvZHVjZWQgdG8gdGhlICIKKyJzeXN0ZW0uICBJZiB0aGUgc3lzdGVtIGFkbWluaXN0cmF0b3IgbWFrZXMgY2hhbmdlcyB0byB0aGUgc3lzdGVtJ3MgYXV0b21hdGljICIKKyJzZXR0aW5ncywgdGhpcyB3aWxsIGJlIG5vdGljZWQgdGhlIG5leHQgdGltZSBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IGlzIHJ1biAiCisib24gdGhlIGNoYW5nZWQgbGluaydzIGdyb3VwLCBhbmQgdGhlIGdyb3VwIHdpbGwgYXV0b21hdGljYWxseSBiZSBzd2l0Y2hlZCB0byAiCisibWFudWFsIG1vZGUuIgorbXNnc3RyICIiCisiTG9zIGdydXBvcyBkZSBlbmxhY2VzIHNlIGVzdGFibGVjZW4gZW4gbW9kbyBhdXRvbcOhdGljbyBsYSBwcmltZXJhIHZleiBxdWUgIgorImFwYXJlY2VuIGVuIGVsIHNpc3RlbWEuIFNpIGVsIGFkbWluaXN0cmFkb3IgZGVsIHNpc3RlbWEgaGFjZSBjYW1iaW9zIGVuIGxhICIKKyJjb25maWd1cmFjacOzbiBhdXRvbcOhdGljYSBkZWwgc2lzdGVtYSwgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBzZSBkYXLDoSBjdWVudGEgIgorImxhIHByw7N4aW1hIHZleiBxdWUgc2UgZWplY3V0ZSBzb2JyZSBlbCBncnVwbyBkZSBlbmxhY2VzIGNhbWJpYWRvcyB5IGVsIGdydXBvICIKKyJwYXNhcsOhIGF1dG9tw6F0aWNhbWVudGUgYSBtb2RvIG1hbnVhbC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxMTYKK21zZ2lkICIiCisiRWFjaCBhbHRlcm5hdGl2ZSBoYXMgYSBJPHByaW9yaXR5PiBhc3NvY2lhdGVkIHdpdGggaXQuICBXaGVuIGEgbGluayBncm91cCBpcyAiCisiaW4gYXV0b21hdGljIG1vZGUsIHRoZSBhbHRlcm5hdGl2ZXMgcG9pbnRlZCB0byBieSBtZW1iZXJzIG9mIHRoZSBncm91cCB3aWxsICIKKyJiZSB0aG9zZSB3aGljaCBoYXZlIHRoZSBoaWdoZXN0IHByaW9yaXR5LiIKK21zZ3N0ciAiIgorIkNhZGEgYWx0ZXJuYXRpdmEgdGllbmUgdW5hIEk8cHJpb3JpZGFkPiBhc29jaWFkYS4gQ3VhbmRvIHVuIGdydXBvIGRlIGVubGFjZXMgIgorInNlIGVuY3VlbnRyYSBlbiBtb2RvIGF1dG9tw6F0aWNvLCBsb3MgbWllbWJyb3MgZGVsIGdydXBvIGFwdW50YXLDoW4gYSBsYSAiCisiYWx0ZXJuYXRpdmEgY29uIGxhIHByaW9yaWRhZCBtw6FzIGFsdGEuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTMzCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJXaGVuIHVzaW5nIHRoZSBJPC0tY29uZmlnPiBvcHRpb24sIEI8dXBkYXRlLWFsdGVybmF0aXZlcz4gd2lsbCBsaXN0IGFsbCAiCisjfCAib2YgdGhlIGNob2ljZXMgZm9yIHRoZSBsaW5rIGdyb3VwIG9mIHdoaWNoIGdpdmVuIEk8bmFtZT4gaXMgdGhlIG1hc3RlciAiCisjfCAiYWx0ZXJuYXRpdmUgbmFtZS4gVGhlIGN1cnJlbnQgY2hvaWNlIGlzIG1hcmtlZCB3aXRoIGEgJyonLiAgWW91IHdpbGwgdGhlbiAiCisjfCAiYmUgcHJvbXB0ZWQgZm9yIHlvdXIgY2hvaWNlIHJlZ2FyZGluZyB0aGlzIGxpbmsgZ3JvdXAuICBEZXBlbmRpbmcgb24gdGhlICIKKyN8ICJjaG9pY2UgbWFkZSwgdGhlIGxpbmsgZ3JvdXAgbWlnaHQgbm8gbG9uZ2VyIGJlIGluIEk8YXV0bz4gbW9kZS4gWW91IHdpbGwgIgorI3wgIm5lZWQgdG8gdXNlIHRoZSBJPC0tYXV0bz4gb3B0aW9uIGluIG9yZGVyIHRvIHJldHVybiB0byB0aGUgYXV0b21hdGljIG1vZGUgIgorI3wgIihvciB5b3UgY2FuIHJlcnVuIEk8LS1jb25maWc+IGFuZCBzZWxlY3QgdGhlIGVudHJ5IG1hcmtlZCBhcyBhdXRvbWF0aWMpLiIKK21zZ2lkICIiCisiV2hlbiB1c2luZyB0aGUgQjwtLWNvbmZpZz4gb3B0aW9uLCBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IHdpbGwgbGlzdCBhbGwgb2YgIgorInRoZSBjaG9pY2VzIGZvciB0aGUgbGluayBncm91cCBvZiB3aGljaCBnaXZlbiBJPG5hbWU+IGlzIHRoZSBtYXN0ZXIgIgorImFsdGVybmF0aXZlIG5hbWUuIFRoZSBjdXJyZW50IGNob2ljZSBpcyBtYXJrZWQgd2l0aCBhICcqJy4gIFlvdSB3aWxsIHRoZW4gYmUgIgorInByb21wdGVkIGZvciB5b3VyIGNob2ljZSByZWdhcmRpbmcgdGhpcyBsaW5rIGdyb3VwLiAgRGVwZW5kaW5nIG9uIHRoZSBjaG9pY2UgIgorIm1hZGUsIHRoZSBsaW5rIGdyb3VwIG1pZ2h0IG5vIGxvbmdlciBiZSBpbiBJPGF1dG8+IG1vZGUuIFlvdSB3aWxsIG5lZWQgdG8gIgorInVzZSB0aGUgQjwtLWF1dG8+IG9wdGlvbiBpbiBvcmRlciB0byByZXR1cm4gdG8gdGhlIGF1dG9tYXRpYyBtb2RlIChvciB5b3UgIgorImNhbiByZXJ1biBCPC0tY29uZmlnPiBhbmQgc2VsZWN0IHRoZSBlbnRyeSBtYXJrZWQgYXMgYXV0b21hdGljKS4iCittc2dzdHIgIiIKKyJFbCB1c28gZGUgbGEgb3BjacOzbiBJPC0tY29uZmlnPiBoYWNlIHF1ZSBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IG11ZXN0cmUgIgorInRvZGFzIGxhcyBlbGVjY2lvbmVzIGRlbnRybyBkZWwgZ3J1cG8gZGUgZW5sYWNlcyBxdWUgdGllbmVuIGNvbW8gbWFlc3RybyBhICIKKyJJPG5vbWJyZT4uIExhIGVsZWNjacOzbiBwcmVzZW50ZSBzZSBtYXJjYSBjb24gwqsqwrsuIEEgY29udGludWFjacOzbiBzZSBsZSAiCisicHJlZ3VudGFyw6EgcG9yIHN1IGVsZWNjacOzbiBkZW50cm8gZGUgbGFzIG9wY2lvbmVzIHBvc2libGVzIGVuIGVsIGdydXBvIGRlICIKKyJlbmxhY2VzLiBVbmEgdmV6IHF1ZSBzZSBoYWdhIHJlYWxpemFkbyBhbGfDum4gY2FtYmlvIGVsIGdydXBvIGRlIGVubGFjZXMgIgorImRlamFyw6EgZGUgZXN0YXIgZW4gbW9kbyBJPGF1dG9tw6F0aWNvPi4gRXMgbmVjZXNhcmlvIHVzYXIgbGEgb3BjacOzbiBJPC0tYXV0bz4gIgorInBhcmEgZGV2b2x2ZXIgZWwgZ3J1cG8gZGUgZW5sYWNlcyBhbCBlc3RhZG8gYXV0b23DoXRpY28uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTM3CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJJZiB5b3Ugd2FudCB0byBjb25maWd1cmUgbm9uLWludGVyYWN0aXZlbHkgeW91IGNhbiB1c2UgdGhlIEk8LS1zZXQ+ICIKKyN8ICJvcHRpb24gaW5zdGVhZCAoc2VlIGJlbG93KS4iCittc2dpZCAiIgorIklmIHlvdSB3YW50IHRvIGNvbmZpZ3VyZSBub24taW50ZXJhY3RpdmVseSB5b3UgY2FuIHVzZSB0aGUgQjwtLXNldD4gb3B0aW9uICIKKyJpbnN0ZWFkIChzZWUgYmVsb3cpLiIKK21zZ3N0ciAiIgorIlNpIHF1aWVyZSByZWFsaXphciBsYSBjb25maWd1cmFjacOzbiBkZSB1biBtb2RvIG5vIGludGVyYWN0aXZvIHB1ZWRlIHVzYXIgbGEgIgorIm9wY2nDs24gSTwtLXNldD4gZW4gc3UgbHVnYXIgKHbDqWFzZSBtw6FzIGFiYWpvKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNDgKK21zZ2lkICIiCisiRGlmZmVyZW50IHBhY2thZ2VzIHByb3ZpZGluZyB0aGUgc2FtZSBmaWxlIG5lZWQgdG8gZG8gc28gQjxjb29wZXJhdGl2ZWx5Pi4gICIKKyJJbiBvdGhlciB3b3JkcywgdGhlIHVzYWdlIG9mIEI8dXBkYXRlLWFsdGVybmF0aXZlcz4gaXMgQjxtYW5kYXRvcnk+IGZvciBhbGwgIgorImludm9sdmVkIHBhY2thZ2VzIGluIHN1Y2ggY2FzZS4gSXQgaXMgbm90IHBvc3NpYmxlIHRvIG92ZXJyaWRlIHNvbWUgZmlsZSBpbiAiCisiYSBwYWNrYWdlIHRoYXQgZG9lcyBub3QgZW1wbG95IHRoZSBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IG1lY2hhbmlzbS4iCittc2dzdHIgIiIKKyJMb3MgZGlmZXJlbnRlcyBwYXF1ZXRlcyBxdWUgcHJvdmVlbiBlbCBtaXNtbyBmaWNoZXJvIHRpZW5lbiBxdWUgaGFjZXJsbyBkZSAiCisiZm9ybWEgQjxjb29wZXJhdGl2YT4uIEVuIG90cmFzIHBhbGFicmFzLCBlbCB1c28gZGUgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBlcyAiCisiQjxvYmxpZ2F0b3Jpbz4gY29uIHRvZG9zIGxvcyBwYXF1ZXRlcyByZWxhY2lvbmFkb3MgY29uIGVzYSBzaXR1YWNpw7NuLiBObyBlcyAiCisicG9zaWJsZSBzb2JyZWVzY3JpYmlyIGVsIGZpY2hlcm8gZGUgdW4gcGFxdWV0ZSBxdWUgbm8gdXNhIGVsIG1lY2FuaXNtbyBkZSAiCisiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPi4iCisKKyMuIHR5cGU6IFNICisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTQ5CisjLCBuby13cmFwCittc2dpZCAiVEVSTUlOT0xPR1kiCittc2dzdHIgIlRFUk1JTk9MT0fDjUEiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNTQKK21zZ2lkICIiCisiU2luY2UgdGhlIGFjdGl2aXRpZXMgb2YgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBhcmUgcXVpdGUgaW52b2x2ZWQsIHNvbWUgIgorInNwZWNpZmljIHRlcm1zIHdpbGwgaGVscCB0byBleHBsYWluIGl0cyBvcGVyYXRpb24uIgorbXNnc3RyICIiCisiRGViaWRvIGEgcXVlIGxhcyBhY3RpdmlkYWRlcyBxdWUgcmVhbGl6YSBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IGVzdMOhbiAiCisiZnVlcnRlbWVudGUgcmVsYWNpb25hZGFzIGVudHJlIHPDrSwgbGEgZGVmaW5pY2nDs24gZGUgYWxndW5vcyB0w6lybWlub3MgIgorImVzcGVjw61maWNvcyBheXVkYXLDoSBhIGVudGVuZGVyIHN1IGZ1bmNpb25hbWllbnRvLiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNTQKKyMsIG5vLXdyYXAKK21zZ2lkICJnZW5lcmljIG5hbWUgKG9yIGFsdGVybmF0aXZlIGxpbmspIgorbXNnc3RyICJub21icmUgZ2Vuw6lyaWNvIChvIGVubGFjZSBhbHRlcm5hdGl2bykiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNjAKK21zZ2lkICIiCisiQSBuYW1lLCBsaWtlIEk8L3Vzci9iaW4vZWRpdG9yPiwgd2hpY2ggcmVmZXJzLCB2aWEgdGhlIGFsdGVybmF0aXZlcyBzeXN0ZW0sICIKKyJ0byBvbmUgb2YgYSBudW1iZXIgb2YgZmlsZXMgb2Ygc2ltaWxhciBmdW5jdGlvbi4iCittc2dzdHIgIiIKKyJVbiBub21icmUsIGNvbW8gSTwvdXNyL2Jpbi9lZGl0b3I+LCBxdWUgbWVkaWFudGUgZWwgc2lzdGVtYSBkZSBhbHRlcm5hdGl2YXMgIgorImhhY2UgcmVmZXJlbmNpYSBhIHVubyBkZSBsb3MgcG9zaWJsZXMgZmljaGVyb3MgY29uIHVuYSBmdW5jacOzbiBzaW1pbGFyLiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNjAKKyMsIG5vLXdyYXAKK21zZ2lkICJhbHRlcm5hdGl2ZSBuYW1lIgorbXNnc3RyICJub21icmUgZGUgbGEgYWx0ZXJuYXRpdmEiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNjMKK21zZ2lkICJUaGUgbmFtZSBvZiBhIHN5bWJvbGljIGxpbmsgaW4gdGhlIGFsdGVybmF0aXZlcyBkaXJlY3RvcnkuIgorbXNnc3RyICJFbCBub21icmUgZGUgdW4gZW5sYWNlIHNpbWLDs2xpY28gZW4gZWwgZGlyZWN0b3JpbyBkZSBhbHRlcm5hdGl2YXMuIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE2MworIywgbm8td3JhcAorbXNnaWQgImFsdGVybmF0aXZlIChvciBhbHRlcm5hdGl2ZSBwYXRoKSIKK21zZ3N0ciAiYWx0ZXJuYXRpdmEgKG8gcnV0YSBhbHRlcm5hdGl2YSkiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNjcKK21zZ2lkICIiCisiVGhlIG5hbWUgb2YgYSBzcGVjaWZpYyBmaWxlIGluIHRoZSBmaWxlc3lzdGVtLCB3aGljaCBtYXkgYmUgbWFkZSBhY2Nlc3NpYmxlICIKKyJ2aWEgYSBnZW5lcmljIG5hbWUgdXNpbmcgdGhlIGFsdGVybmF0aXZlcyBzeXN0ZW0uIgorbXNnc3RyICIiCisiRWwgbm9tYnJlIGRlIHVuIGZpY2hlcm8gZXNwZWPDrWZpY28gZW4gZWwgc2lzdGVtYSBkZSBmaWNoZXJvcyBhbCBxdWUgc2UgcHVlZGUgIgorImFjY2VkZXIgYSB0cmF2w6lzIGRlIHVuIG5vbWJyZSBnZW7DqXJpY28gdXNhbmRvIGVsIHNpc3RlbWEgZGUgYWx0ZXJuYXRpdmFzLiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNjcKKyMsIG5vLXdyYXAKK21zZ2lkICJhbHRlcm5hdGl2ZXMgZGlyZWN0b3J5IgorbXNnc3RyICJkaXJlY3RvcmlvIGRlIGFsdGVybmF0aXZhcyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE3MgorbXNnaWQgIkEgZGlyZWN0b3J5LCBieSBkZWZhdWx0IEk8L2V0Yy9hbHRlcm5hdGl2ZXM+LCBjb250YWluaW5nIHRoZSBzeW1saW5rcy4iCittc2dzdHIgIiIKKyJFbCBkaXJlY3RvcmlvIHF1ZSBjb250aWVuZSBsb3MgZW5sYWNlcywgcG9yIG9taXNpw7NuIGVzIEk8L2V0Yy9hbHRlcm5hdGl2ZXM+LiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNzIKKyMsIG5vLXdyYXAKK21zZ2lkICJhZG1pbmlzdHJhdGl2ZSBkaXJlY3RvcnkiCittc2dzdHIgImRpcmVjdG9yaW8gYWRtaW5pc3RyYXRpdm8iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNzkKK21zZ2lkICIiCisiQSBkaXJlY3RvcnksIGJ5IGRlZmF1bHQgSTwvdmFyL2xpYi9kcGtnL2FsdGVybmF0aXZlcz4sIGNvbnRhaW5pbmcgQjx1cGRhdGUtIgorImFsdGVybmF0aXZlcz4nIHN0YXRlIGluZm9ybWF0aW9uLiIKK21zZ3N0ciAiIgorIkVsIGRpcmVjdG9yaW8gcXVlIGNvbnRpZW5lIGxhIGluZm9ybWFjacOzbiBkZSBlc3RhZG8gZGUgQjx1cGRhdGUtIgorImFsdGVybmF0aXZlcz4sIHBvciBvbWlzacOzbiBlcyBJPC92YXIvbGliL2Rwa2cvYWx0ZXJuYXRpdmVzPi4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTc5CisjLCBuby13cmFwCittc2dpZCAibGluayBncm91cCIKK21zZ3N0ciAiZ3J1cG8gZGUgZW5sYWNlcyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE4MgorbXNnaWQgIkEgc2V0IG9mIHJlbGF0ZWQgc3ltbGlua3MsIGludGVuZGVkIHRvIGJlIHVwZGF0ZWQgYXMgYSBncm91cC4iCittc2dzdHIgIiIKKyJVbiBjb25qdW50byBkZSBlbmxhY2VzIHJlbGFjaW9uYWRvcyBjb24gZWwgb2JqZXRpdm8gZGUgcXVlIHNlIGFjdHVhbGljZW4gIgorImNvbW8gZ3J1cG8uIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE4MgorIywgbm8td3JhcAorbXNnaWQgIm1hc3RlciBsaW5rIgorbXNnc3RyICJlbmxhY2UgbWFlc3RybyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE4NgorbXNnaWQgIiIKKyJUaGUgYWx0ZXJuYXRpdmUgbGluayBpbiBhIGxpbmsgZ3JvdXAgd2hpY2ggZGV0ZXJtaW5lcyBob3cgdGhlIG90aGVyIGxpbmtzIGluICIKKyJ0aGUgZ3JvdXAgYXJlIGNvbmZpZ3VyZWQuIgorbXNnc3RyICIiCisiRWwgZW5sYWNlIGFsdGVybmF0aXZvIGVuIHVuIGdydXBvIGRlIGVubGFjZXMgcXVlIGRldGVybWluYSBjw7NtbyBzZSAiCisiY29uZmlndXJhbiBlbCByZXN0byBkZSBsb3MgZW5sYWNlcyBkZWwgZ3J1cG8uIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE4NgorIywgbm8td3JhcAorbXNnaWQgInNsYXZlIGxpbmsiCittc2dzdHIgImVubGFjZSBlc2NsYXZvIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTkwCittc2dpZCAiIgorIkFuIGFsdGVybmF0aXZlIGxpbmsgaW4gYSBsaW5rIGdyb3VwIHdoaWNoIGlzIGNvbnRyb2xsZWQgYnkgdGhlIHNldHRpbmcgb2YgIgorInRoZSBtYXN0ZXIgbGluay4iCittc2dzdHIgIiIKKyJVbiBlbmxhY2UgYWx0ZXJuYXRpdm8gZW4gdW4gZ3J1cG8gZGUgZW5sYWNlcyBkZWZpbmlkbyBwb3IgZWwgZW5sYWNlIG1hZXN0cm8uIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE5MAorIywgbm8td3JhcAorbXNnaWQgImF1dG9tYXRpYyBtb2RlIgorbXNnc3RyICJtb2RvIGF1dG9tw6F0aWNvIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTk2Cittc2dpZCAiIgorIldoZW4gYSBsaW5rIGdyb3VwIGlzIGluIGF1dG9tYXRpYyBtb2RlLCB0aGUgYWx0ZXJuYXRpdmVzIHN5c3RlbSBlbnN1cmVzIHRoYXQgIgorInRoZSBsaW5rcyBpbiB0aGUgZ3JvdXAgcG9pbnQgdG8gdGhlIGhpZ2hlc3QgcHJpb3JpdHkgYWx0ZXJuYXRpdmUgYXBwcm9wcmlhdGUgIgorImZvciB0aGUgZ3JvdXAuIgorbXNnc3RyICIiCisiQ3VhbmRvIHVuIGdydXBvIGRlIGVubGFjZXMgc2UgZW5jdWVudHJhIGVuIG1vZG8gYXV0b23DoXRpY28gZWwgc2lzdGVtYSBkZSAiCisiYWx0ZXJuYXRpdmFzIGFzZWd1cmEgcXVlIGxvcyBlbmxhY2VzIGRlbCBncnVwbyBhcHVudGFuIGEgbGEgYWx0ZXJuYXRpdmEgY29uICIKKyJsYSBtYXlvciBwcmlvcmlkYWQgZW4gZXNlIGdydXBvLiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxOTYKKyMsIG5vLXdyYXAKK21zZ2lkICJtYW51YWwgbW9kZSIKK21zZ3N0ciAibW9kbyBtYW51YWwiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyMDEKK21zZ2lkICIiCisiV2hlbiBhIGxpbmsgZ3JvdXAgaXMgaW4gbWFudWFsIG1vZGUsIHRoZSBhbHRlcm5hdGl2ZXMgc3lzdGVtIHdpbGwgbm90IG1ha2UgIgorImFueSBjaGFuZ2VzIHRvIHRoZSBzeXN0ZW0gYWRtaW5pc3RyYXRvcidzIHNldHRpbmdzLiIKK21zZ3N0ciAiIgorIkN1YW5kbyB1biBncnVwbyBkZSBlbmxhY2VzIHNlIGVuY3VlbnRyYSBlbiBtb2RvIG1hbnVhbCBlbCBzaXN0ZW1hIGRlICIKKyJhbHRlcm5hdGl2YXMgbm8gaGFyw6EgbmluZ8O6biBjYW1iaW8gZW4gbGEgY29uZmlndXJhY2nDs24gZGVsIGFkbWluaXN0cmFkb3IuIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjIwMworIywgbm8td3JhcAorbXNnaWQgIkI8LS1pbnN0YWxsPiBJPGxpbmsgbmFtZSBwYXRoIHByaW9yaXR5PiBbQjwtLXNsYXZlPiBJPGxpbmsgbmFtZSBwYXRoPl0uLi4iCittc2dzdHIgIkI8LS1pbnN0YWxsPiBJPGVubGFjZSBub21icmUgcnV0YSBwcmlvcmlkYWQ+IFtCPC0tc2xhdmU+IEk8ZW5sYWNlIG5vbWJyZSBydXRhPl0gLi4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjIyCittc2dpZCAiIgorIkFkZCBhIGdyb3VwIG9mIGFsdGVybmF0aXZlcyB0byB0aGUgc3lzdGVtLiAgSTxsaW5rPiBpcyB0aGUgZ2VuZXJpYyBuYW1lIGZvciAiCisidGhlIG1hc3RlciBsaW5rLCBJPG5hbWU+IGlzIHRoZSBuYW1lIG9mIGl0cyBzeW1saW5rIGluIHRoZSBhbHRlcm5hdGl2ZXMgIgorImRpcmVjdG9yeSwgYW5kIEk8cGF0aD4gaXMgdGhlIGFsdGVybmF0aXZlIGJlaW5nIGludHJvZHVjZWQgZm9yIHRoZSBtYXN0ZXIgIgorImxpbmsuICBUaGUgYXJndW1lbnRzIGFmdGVyIEI8LS1zbGF2ZT4gYXJlIHRoZSBnZW5lcmljIG5hbWUsIHN5bWxpbmsgbmFtZSBpbiAiCisidGhlIGFsdGVybmF0aXZlcyBkaXJlY3RvcnkgYW5kIHRoZSBhbHRlcm5hdGl2ZSBwYXRoIGZvciBhIHNsYXZlIGxpbmsuICBaZXJvICIKKyJvciBtb3JlIEI8LS1zbGF2ZT4gb3B0aW9ucywgZWFjaCBmb2xsb3dlZCBieSB0aHJlZSBhcmd1bWVudHMsIG1heSBiZSAiCisic3BlY2lmaWVkLiBOb3RlIHRoYXQgdGhlIG1hc3RlciBhbHRlcm5hdGl2ZSBtdXN0IGV4aXN0IG9yIHRoZSBjYWxsIHdpbGwgIgorImZhaWwuIEhvd2V2ZXIgaWYgYSBzbGF2ZSBhbHRlcm5hdGl2ZSBkb2Vzbid0IGV4aXN0LCB0aGUgY29ycmVzcG9uZGluZyBzbGF2ZSAiCisiYWx0ZXJuYXRpdmUgbGluayB3aWxsIHNpbXBseSBub3QgYmUgaW5zdGFsbGVkIChhIHdhcm5pbmcgd2lsbCBzdGlsbCBiZSAiCisiZGlzcGxheWVkKS4gSWYgc29tZSByZWFsIGZpbGUgaXMgaW5zdGFsbGVkIHdoZXJlIGFuIGFsdGVybmF0aXZlIGxpbmsgaGFzIHRvICIKKyJiZSBpbnN0YWxsZWQsIGl0IGlzIGtlcHQgdW5sZXNzIEI8LS1mb3JjZT4gaXMgdXNlZC4iCittc2dzdHIgIiIKKyJBw7FhZGUgdW4gZ3J1cG8gZGUgYWx0ZXJuYXRpdmFzIGFsIHNpc3RlbWEuIEk8ZW5sYWNlPiBlcyBlbCBub21icmUgZ2Vuw6lyaWNvICIKKyJkZWwgZW5sYWNlIG1hZXN0cm8sIEk8bm9tYnJlPiBlcyBlbCBub21icmUgZGVsIGVubGFjZSBzaW1iw7NsaWNvIGVuIGVsICIKKyJkaXJlY3RvcmlvIGRlIGFsdGVybmF0aXZhcywgeSBJPHJ1dGE+IGVzIGxhIGFsdGVybmF0aXZhIHF1ZSBzZSB2YSBhICIKKyJpbnRyb2R1Y2lyIHBhcmEgZWwgZW5sYWNlIG1hZXN0cm8uIExvcyBhcmd1bWVudG9zIGEgY29udGludWFjacOzbiBkZSBCPC0tIgorInNsYXZlPiBzb24gZWwgbm9tYnJlIGdlbsOpcmljbywgZWwgbm9tYnJlIGRlbCBlbmxhY2Ugc2ltYsOzbGljbyBlbiBlbCAiCisiZGlyZWN0b3JpbyBkZSBhbHRlcm5hdGl2YXMsIHkgbGEgcnV0YSBhbHRlcm5hdGl2YSBwYXJhIGVsIGVubGFjZSBlc2NsYXZvLiAiCisiUHVlZGUgZGVmaW5pciBjZXJvIG8gbcOhcyBvcGNpb25lcyBkZSBCPC0tc2xhdmU+LCBjYWRhIHVubyBzZWd1aWRvIGRlIHRyZXMgIgorImFyZ3VtZW50b3MuIFRlbmdhIGVuIGN1ZW50YSBxdWUgbGEgYWx0ZXJuYXRpdmEgbWFlc3RyYSBkZWJlIGV4aXN0aXIgIgorInByZXZpYW1lbnRlIG8gbGEgaW52b2NhY2nDs24gZmFsbGFyw6EuIFBvciBvdHJhIHBhcnRlLCBzaSBsYSBhbHRlcm5hdGl2YSAiCisiZXNjbGF2YSBubyBleGlzdGUsIGVsIGVubGFjZSBlc2NsYXZvIGFsdGVybmF0aXZvIGNvcnJlc3BvbmRpZW50ZSBubyBzZSAiCisiaW5zdGFsYXLDoSwgbW9zdHJhbmRvIHVuIGF2aXNvLiBVbiBmaWNoZXJvIHJlYWwgaW5zdGFsYWRvIGVuIGxhIHViaWNhY2nDs24gZGUgIgorInVuIGVubGFjZSBhbHRlcm5hdGl2byBudW5jYSBzZSBlbGltaW5hcsOhIGEgbWVub3MgcXVlIHNlIHVzZSBCPC0tZm9yY2U+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjIzMworbXNnaWQgIiIKKyJJZiB0aGUgYWx0ZXJuYXRpdmUgbmFtZSBzcGVjaWZpZWQgZXhpc3RzIGFscmVhZHkgaW4gdGhlIGFsdGVybmF0aXZlcyAiCisic3lzdGVtJ3MgcmVjb3JkcywgdGhlIGluZm9ybWF0aW9uIHN1cHBsaWVkIHdpbGwgYmUgYWRkZWQgYXMgYSBuZXcgc2V0IG9mICIKKyJhbHRlcm5hdGl2ZXMgZm9yIHRoZSBncm91cC4gIE90aGVyd2lzZSwgYSBuZXcgZ3JvdXAsIHNldCB0byBhdXRvbWF0aWMgbW9kZSwgIgorIndpbGwgYmUgYWRkZWQgd2l0aCB0aGlzIGluZm9ybWF0aW9uLiAgSWYgdGhlIGdyb3VwIGlzIGluIGF1dG9tYXRpYyBtb2RlLCBhbmQgIgorInRoZSBuZXdseSBhZGRlZCBhbHRlcm5hdGl2ZXMnIHByaW9yaXR5IGlzIGhpZ2hlciB0aGFuIGFueSBvdGhlciBpbnN0YWxsZWQgIgorImFsdGVybmF0aXZlcyBmb3IgdGhpcyBncm91cCwgdGhlIHN5bWxpbmtzIHdpbGwgYmUgdXBkYXRlZCB0byBwb2ludCB0byB0aGUgIgorIm5ld2x5IGFkZGVkIGFsdGVybmF0aXZlcy4iCittc2dzdHIgIiIKKyJTaSBlbCBub21icmUgZGUgbGEgYWx0ZXJuYXRpdmEgZGVmaW5pZGEgeWEgZXhpc3RlIGVuIGxvcyByZWdpc3Ryb3MgZGVsICIKKyJzaXN0ZW1hIGRlIGFsdGVybmF0aXZhcyBsYSBpbmZvcm1hY2nDs24gc3VtaW5pc3RyYWRhIHNlIGHDsWFkaXLDoSBjb21vIHVuIG51ZXZvICIKKyJjb25qdW50byBkZSBhbHRlcm5hdGl2YXMgcGFyYSBlbCBncnVwby4gRGUgb3RyYSBmb3JtYSBzZSBjcmVhcsOhIHVuIGdydXBvICIKKyJudWV2byBlbiBtb2RvIGF1dG9tw6F0aWNvLCBhbCBxdWUgc2UgbGUgYcOxYWRpcsOhIGxhIGluZm9ybWFjacOzbiBzdW1pbmlzdHJhZGEuICIKKyJTaSBlbCBncnVwbyBlc3TDoSBlbiBtb2RvIGF1dG9tw6F0aWNvLCB5IGxhIHByaW9yaWRhZCBudWV2YSBhw7FhZGlkYSBlcyBtYXlvciAiCisicXVlIGN1YWxxdWllciBvdHJhIGFsdGVybmF0aXZhIGluc3RhbGFkYSBwYXJhIGVzZSBncnVwbywgbG9zIGVubGFjZXMgc2UgIgorImFjdHVhbGl6YXLDoW4gcGFyYSBhcHVudGFyIGEgbGFzIG51ZXZhcyBhbHRlcm5hdGl2YXMuIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjIzMworIywgbm8td3JhcAorbXNnaWQgIkI8LS1zZXQ+IEk8bmFtZSBwYXRoPiIKK21zZ3N0ciAiQjwtLXNldD4gSTxub21icmUgcnV0YT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyNDIKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlNldCB0aGUgcHJvZ3JhbSBJPHBhdGg+IGFzIGFsdGVybmF0aXZlIGZvciBJPG5hbWUuPiBUaGlzIGlzIGVxdWl2YWxlbnQgdG8gIgorI3wgIkk8LS1jb25maWc+IGJ1dCBpcyBub24taW50ZXJhY3RpdmUgYW5kIHRodXMgc2NyaXB0YWJsZS4iCittc2dpZCAiIgorIlNldCB0aGUgcHJvZ3JhbSBJPHBhdGg+IGFzIGFsdGVybmF0aXZlIGZvciBJPG5hbWUuPiBUaGlzIGlzIGVxdWl2YWxlbnQgdG8gIgorIkI8LS1jb25maWc+IGJ1dCBpcyBub24taW50ZXJhY3RpdmUgYW5kIHRodXMgc2NyaXB0YWJsZS4iCittc2dzdHIgIiIKKyJEZWZpbmUgbGEgSTxydXRhPiBkZWwgcHJvZ3JhbWEgY29tbyBhbHRlcm5hdGl2YSBwYXJhIEk8bm9tYnJlPi4gRXF1aXZhbGUgYSAiCisiSTwtLWNvbmZpZz4gcGVybyBubyBlcyBpbnRlcmFjdGl2bywgZGUgbW9kbyBxdWUgcGVybWl0ZSBzdSBpbmNsdXNpw7NuIGVuICIKKyJzY3JpcHRzLiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyNDIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tcmVtb3ZlPiBJPG5hbWUgcGF0aD4iCittc2dzdHIgIkI8LS1yZW1vdmU+IEk8bm9tYnJlIHJ1dGE+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjYzCittc2dpZCAiIgorIlJlbW92ZSBhbiBhbHRlcm5hdGl2ZSBhbmQgYWxsIG9mIGl0cyBhc3NvY2lhdGVkIHNsYXZlIGxpbmtzLiAgSTxuYW1lPiBpcyBhICIKKyJuYW1lIGluIHRoZSBhbHRlcm5hdGl2ZXMgZGlyZWN0b3J5LCBhbmQgSTxwYXRoPiBpcyBhbiBhYnNvbHV0ZSBmaWxlbmFtZSB0byAiCisid2hpY2ggSTxuYW1lPiBjb3VsZCBiZSBsaW5rZWQuIElmIEk8bmFtZT4gaXMgaW5kZWVkIGxpbmtlZCB0byBJPHBhdGg+LCAiCisiSTxuYW1lPiB3aWxsIGJlIHVwZGF0ZWQgdG8gcG9pbnQgdG8gYW5vdGhlciBhcHByb3ByaWF0ZSBhbHRlcm5hdGl2ZSAoYW5kIHRoZSAiCisiZ3JvdXAgaXMgcHV0IGJhY2sgaW4gYXV0b21hdGljIG1vZGUpLCBvciByZW1vdmVkIGlmIHRoZXJlIGlzIG5vIHN1Y2ggIgorImFsdGVybmF0aXZlIGxlZnQuICBBc3NvY2lhdGVkIHNsYXZlIGxpbmtzIHdpbGwgYmUgdXBkYXRlZCBvciByZW1vdmVkLCAiCisiY29ycmVzcG9uZGluZ2x5LiAgSWYgdGhlIGxpbmsgaXMgbm90IGN1cnJlbnRseSBwb2ludGluZyB0byBJPHBhdGg+LCBubyBsaW5rcyAiCisiYXJlIGNoYW5nZWQ7IG9ubHkgdGhlIGluZm9ybWF0aW9uIGFib3V0IHRoZSBhbHRlcm5hdGl2ZSBpcyByZW1vdmVkLiIKK21zZ3N0ciAiIgorIkVsaW1pbmEgdW5hIGFsdGVybmF0aXZhIHkgdG9kb3Mgc3VzIGVubGFjZXMgZXNjbGF2b3MgYXNvY2lhZG9zLiBJPG5vbWJyZT4gZXMgIgorImVsIG5vbWJyZSBlbiBlbCBkaXJlY3RvcmlvIGRlIGFsdGVybmF0aXZhcyB5IEk8cnV0YT4gZXMgZWwgbm9tYnJlIGFic29sdXRvICIKKyJkZWwgZmljaGVybyBhbCBxdWUgSTxub21icmU+IHNlIHBvZHLDrWEgZW5sYXphci4gU2kgSTxub21icmU+IGVzdMOhIGVuICIKKyJyZWFsaWRhZCBlbmxhemFkbyBhIEk8cnV0YT4sIEk8bm9tYnJlPiBzZSBhY3R1YWxpemFyw6EgcGFyYSBxdWUgYXB1bnRlIGEgb3RyYSAiCisiYWx0ZXJuYXRpdmEgYXByb3BpYWRhIG8gc2UgZWxpbWluYXLDoSBzaSBubyBxdWVkYSBuaW5ndW5hIGFsdGVybmF0aXZhICIKKyJyZXN0YW50ZS4gTG9zIGVubGFjZXMgZXNjbGF2b3MgYXNvY2lhZG9zIHNlIGFjdHVhbGl6YXLDoW4gbyBlbGltaW5hcsOhbiAiCisiY29ycmVzcG9uZGllbnRlbWVudGUuIFNpIGVsIGVubGFjZSBubyBhcHVudGEgYSBJPHJ1dGE+LCBubyBzZSBjYW1iaWEgbmluZ8O6biAiCisiZW5sYWNlLCBzw7NsbyBzZSBlbGltaW5hIGxhIGluZm9ybWFjacOzbiBhY2VyY2EgZGUgbGEgYWx0ZXJuYXRpdmEuIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjI2MworIywgbm8td3JhcAorbXNnaWQgIkI8LS1yZW1vdmUtYWxsPiBJPG5hbWU+IgorbXNnc3RyICJCPC0tcmVtb3ZlLWFsbD4gSTxub21icmU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjY4Cittc2dpZCAiIgorIlJlbW92ZSBhbGwgYWx0ZXJuYXRpdmVzIGFuZCBhbGwgb2YgdGhlaXIgYXNzb2NpYXRlZCBzbGF2ZSBsaW5rcy4gIEk8bmFtZT4gaXMgIgorImEgbmFtZSBpbiB0aGUgYWx0ZXJuYXRpdmVzIGRpcmVjdG9yeS4iCittc2dzdHIgIiIKKyJFbGltaW5hIHRvZGFzIGxhcyBhbHRlcm5hdGl2YXMgeSB0b2RvcyBzdXMgZW5sYWNlcyBlc2NsYXZvcyBhc29jaWFkb3MuICIKKyJJPG5vbWJyZT4gZXMgdW4gbm9tYnJlIGVuIGVsIGRpcmVjdG9yaW8gZGUgYWx0ZXJuYXRpdmFzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjI3NQorbXNnaWQgIiIKKyJDYWxsIEI8LS1jb25maWc+IG9uIGFsbCBhbHRlcm5hdGl2ZXMuIEl0IGNhbiBiZSB1c2VmdWxseSBjb21iaW5lZCB3aXRoIEI8LS0iCisic2tpcC1hdXRvPiB0byByZXZpZXcgYW5kIGNvbmZpZ3VyZSBhbGwgYWx0ZXJuYXRpdmVzIHdoaWNoIGFyZSBub3QgY29uZmlndXJlZCAiCisiaW4gYXV0b21hdGljIG1vZGUuIEJyb2tlbiBhbHRlcm5hdGl2ZXMgYXJlIGFsc28gZGlzcGxheWVkLiAgVGh1cyBhIHNpbXBsZSAiCisid2F5IHRvIGZpeCBhbGwgYnJva2VuIGFsdGVybmF0aXZlcyBpcyB0byBjYWxsIEI8eWVzIFxcW2FxXVxcW2FxXSB8IHVwZGF0ZS0iCisiYWx0ZXJuYXRpdmVzIC0tZm9yY2UgLS1hbGw+LiIKK21zZ3N0ciAiIgorIkludm9jYSBCPC0tY29uZmlnPiBzb2JyZSB0b2RhcyBsYXMgYWx0ZXJuYXRpdmFzLiBQdWVkZSBzZXIgw7p0aWwgZW4gIgorImNvbWJpbmFjacOzbiBjb24gQjwtLXNraXAtYXV0bz4gcGFyYSByZXZpc2FyIHkgY29uZmlndXJhciB0b2RhcyBsYXMgIgorImFsdGVybmF0aXZhcyBxdWUgbm8gZXN0w6FuIGNvbmZpZ3VyYWRhcyBlbiBtb2RvIGF1dG9tw6F0aWNvLiBUYW1iacOpbiBzZSAiCisibXVlc3RyYW4gbGFzIGFsdGVybmF0aXZhcyByb3Rhcy4gVW5hIG1hbmVyYSBzZW5jaWxsYSBkZSBhcnJlZ2xhciB0b2RhcyBsYXMgIgorImFsdGVybmF0aXZhcyByb3RhcyBlcyBpbnZvY2FyIEI8eWVzIFxcW2FxXVxcW2FxXSB8IHVwZGF0ZS1hbHRlcm5hdGl2ZXMgLS0iCisiZm9yY2UgLS1hbGw+LiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyNzUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tYXV0bz4gSTxuYW1lPiIKK21zZ3N0ciAiQjwtLWF1dG8+IEk8bm9tYnJlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjI4MgorbXNnaWQgIiIKKyJTd2l0Y2ggdGhlIGxpbmsgZ3JvdXAgYmVoaW5kIHRoZSBhbHRlcm5hdGl2ZSBmb3IgSTxuYW1lPiB0byBhdXRvbWF0aWMgbW9kZS4gICIKKyJJbiB0aGUgcHJvY2VzcywgdGhlIG1hc3RlciBzeW1saW5rIGFuZCBpdHMgc2xhdmVzIGFyZSB1cGRhdGVkIHRvIHBvaW50IHRvICIKKyJ0aGUgaGlnaGVzdCBwcmlvcml0eSBpbnN0YWxsZWQgYWx0ZXJuYXRpdmVzLiIKK21zZ3N0ciAiIgorIkNhbWJpYSBlbCBncnVwbyBkZSBlbmxhY2VzIGRlcGVuZGllbnRlcyBkZSBsYSBhbHRlcm5hdGl2YSBJPG5vbWJyZT4gYSBtb2RvICIKKyJhdXRvbcOhdGljby4gRW4gZWwgcHJvY2VzbywgZWwgZW5sYWNlIHNpbWLDs2xpY28geSBzdXMgZXNjbGF2b3Mgc2UgIgorImFjdHVhbGl6YXLDoW4gcGFyYSBhcHVudGFyIGEgbGEgYWx0ZXJuYXRpdmEgaW5zdGFsYWRhIGNvbiB1bmEgcHJpb3JpZGFkIG1heW9yLiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyODIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tZGlzcGxheT4gSTxuYW1lPiIKK21zZ3N0ciAiQjwtLWRpc3BsYXk+IEk8bm9tYnJlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjI5MQorbXNnaWQgIiIKKyJEaXNwbGF5IGluZm9ybWF0aW9uIGFib3V0IHRoZSBsaW5rIGdyb3VwLiAgSW5mb3JtYXRpb24gZGlzcGxheWVkIGluY2x1ZGVzICIKKyJ0aGUgZ3JvdXAncyBtb2RlIChhdXRvIG9yIG1hbnVhbCksIHdoaWNoIGFsdGVybmF0aXZlIHRoZSBtYXN0ZXIgbGluayAiCisiY3VycmVudGx5IHBvaW50cyB0bywgd2hhdCBvdGhlciBhbHRlcm5hdGl2ZXMgYXJlIGF2YWlsYWJsZSAoYW5kIHRoZWlyICIKKyJjb3JyZXNwb25kaW5nIHNsYXZlIGFsdGVybmF0aXZlcyksIGFuZCB0aGUgaGlnaGVzdCBwcmlvcml0eSBhbHRlcm5hdGl2ZSAiCisiY3VycmVudGx5IGluc3RhbGxlZC4iCittc2dzdHIgIiIKKyJNdWVzdHJhIGluZm9ybWFjacOzbiBhY2VyY2EgZGVsIGdydXBvIGRlIGVubGFjZXMuIExhIGluZm9ybWFjacOzbiBpbmNsdXllIGVsICIKKyJtb2RvIGRlbCBncnVwbyAobWFudWFsIG8gYXV0b23DoXRpY28pLCBhIHF1w6kgYWx0ZXJuYXRpdmEgYXB1bnRhIGVsIGVubGFjZSAiCisibWFlc3RybywgcXXDqSBvdHJhcyBhbHRlcm5hdGl2YXMgZXhpc3RlbiAoeSBzdXMgYWx0ZXJuYXRpdmFzIGVzY2xhdmFzICIKKyJjb3JyZXNwb25kaWVudGVzKSwgeSBsYSBhbHRlcm5hdGl2YSBkZSBtYXlvciBwcmlvcmlkYWQgaW5zdGFsYWRhIGVuIGVsICIKKyJzaXN0ZW1hLiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyOTEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tZ2V0LXNlbGVjdGlvbnM+IgorbXNnc3RyICJCPC0tZ2V0LXNlbGVjdGlvbnM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6Mjk5Cittc2dpZCAiIgorIkxpc3QgYWxsIG1hc3RlciBhbHRlcm5hdGl2ZSBuYW1lcyAodGhvc2UgY29udHJvbGxpbmcgYSBsaW5rIGdyb3VwKSAgYW5kICIKKyJ0aGVpciBzdGF0dXMuIEVhY2ggbGluZSBjb250YWlucyB1cCB0byAzIGZpZWxkcyAoc2VwYXJhdGVkIGJ5IG9uZSBvciBtb3JlICIKKyJzcGFjZXMpLiBUaGUgZmlyc3QgZmllbGQgaXMgdGhlIGFsdGVybmF0aXZlIG5hbWUsIHRoZSBzZWNvbmQgb25lIGlzIHRoZSAiCisic3RhdHVzIChlaXRoZXIgXCJhdXRvXCIgb3IgXCJtYW51YWxcIiksIGFuZCB0aGUgbGFzdCBvbmUgY29udGFpbnMgdGhlICIKKyJjdXJyZW50IGNob2ljZSBpbiB0aGUgYWx0ZXJuYXRpdmUgKGJld2FyZTogaXQncyBhIGZpbGVuYW1lIGFuZCB0aHVzIG1pZ2h0ICIKKyJjb250YWluIHNwYWNlcykuIgorbXNnc3RyICIiCisiQ3JlYSB1biBsaXN0YWRvIGRlIHRvZGFzIGxvcyBub21icmVzIGRlIGFsdGVybmF0aXZhcyBtYWVzdHJhcyAoYXF1ZWxsYXMgcXVlICIKKyJjb250cm9sYW4gdW4gZ3J1cG8gZGUgZW5sYWNlcykgeSBzdSBlc3RhZG8uIENhZGEgbMOtbmVhIGNvbnRpZW5lIGhhc3RhIDMgIgorImNhbXBvcywgc2VwYXJhZG9zIHBvciB1bm8gbyBtw6FzIGVzcGFjaW9zLiBFbCBwcmltZXIgY2FtcG8gZXMgZWwgbm9tYnJlIGRlIGxhICIKKyJhbHRlcm5hdGl2YSwgZWwgc2VndW5kbyBlcyBlbCBlc3RhZG8gKGJpZW4gwqthdXRvwrsgbyDCq21hbnVhbMK7KSwgeSBlbCDDumx0aW1vICIKKyJjb250aWVuZSBsYSBlbGVjY2nDs24gcHJlc2VudGUgcGFyYSBsYSBhbHRlcm5hdGl2YSAocHVlZGUgY29udGVuZXIgZXNwYWNpb3MgIgorInlhIHF1ZSBlcyB1biBub21icmUgZGUgZmljaGVybykuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzA0Cittc2dpZCAiIgorIlJlYWQgY29uZmlndXJhdGlvbiBvZiBhbHRlcm5hdGl2ZXMgb24gc3RhbmRhcmQgaW5wdXQgaW4gdGhlIGZvcm1hdCBnZW5lcmF0ZWQgIgorImJ5IEI8dXBkYXRlLWFsdGVybmF0aXZlcyAtLWdldC1zZWxlY3Rpb25zPiBhbmQgcmVjb25maWd1cmUgdGhlbSBhY2NvcmRpbmdseS4iCittc2dzdHIgIiIKKyJMZWUgbGEgY29uZmlndXJhY2nDs24gZGUgYWx0ZXJuYXRpdmFzIHBvciBsYSBlbnRyYWRhIGVzdMOhbmRhciBlbiBlbCBmb3JtYXRvICIKKyJnZW5lcmFkbyBwb3IgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzIC0tZ2V0LXNlbGVjdGlvbnM+IHkgbG9zIHJlY29uZmlndXJhICIKKyJhcHJvcGlhZGFtZW50ZS4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzA0CisjLCBuby13cmFwCittc2dpZCAiQjwtLXF1ZXJ5PiBJPG5hbWU+IgorbXNnc3RyICJCPC0tcXVlcnk+IEk8bm9tYnJlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjMwOQorbXNnaWQgIiIKKyJEaXNwbGF5IGluZm9ybWF0aW9uIGFib3V0IHRoZSBsaW5rIGdyb3VwIGxpa2UgLS1kaXNwbGF5IGRvZXMsIGJ1dCBpbiBhICIKKyJtYWNoaW5lIHBhcnNlYWJsZSB3YXkgKHNlZSBzZWN0aW9uIEI8UVVFUlkgRk9STUFUPiBiZWxvdykuIgorbXNnc3RyICIiCisiTXVlc3RyYSBpbmZvcm1hY2nDs24gYWNlcmNhIGRlbCBncnVwbyBkZSBlbmxhY2VzLCBhbCBpZ3VhbCBxdWUgwqstLWRpc3BsYXnCuywgIgorInBlcm8gZGUgdW5hIG1hbmVyYSBxdWUgZWwgc2lzdGVtYSBwdWVkZSBhbmFsaXphciAoY29uc3VsdGUgbGEgc2VjY2nDs24gIgorIkI8Rk9STUFUTyBERSBDT05TVUxUQT4gbcOhcyBhYmFqbykuIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjMwOQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1saXN0PiBJPG5hbWU+IgorbXNnc3RyICJCPC0tbGlzdD4gSTxuYW1lPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjMxMgorbXNnaWQgIkRpc3BsYXkgYWxsIHRhcmdldHMgb2YgdGhlIGxpbmsgZ3JvdXAuIgorbXNnc3RyICJNdWVzdHJhIHRvZG9zIGxvcyBvYmpldGl2b3MgZGVsIGdydXBvIGRlIGVubGFjZXMuIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjMxMgorIywgbm8td3JhcAorbXNnaWQgIkI8LS1jb25maWc+IEk8bmFtZT4iCittc2dzdHIgIkI8LS1jb25maWc+IEk8bm9tYnJlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjMxNgorbXNnaWQgIiIKKyJTaG93IGF2YWlsYWJsZSBhbHRlcm5hdGl2ZXMgZm9yIGEgbGluayBncm91cCBhbmQgYWxsb3cgdGhlIHVzZXIgdG8gIgorImludGVyYWN0aXZlbHkgc2VsZWN0IHdoaWNoIG9uZSB0byB1c2UuIFRoZSBsaW5rIGdyb3VwIGlzIHVwZGF0ZWQuIgorbXNnc3RyICIiCisiTXVlc3RyYSBsYXMgYWx0ZXJuYXRpdmFzIGRpc3BvbmlibGVzIHBhcmEgdW4gZ3J1cG8gZGUgZW5sYWNlcyB5IHBlcm1pdGUgYWwgIgorInVzdWFyaW8gc2VsZWNjaW9uYXIgaW50ZXJhY3RpdmFtZW50ZSBjdWFsIHVzYXIuIEVsIGdydXBvIGRlIGVubGFjZXMgc2UgIgorImFjdHVhbGl6YXLDoS4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzI0CisjLCBuby13cmFwCittc2dpZCAiQjwtLWFsdGRpcj5JPCBkaXJlY3Rvcnk+IgorbXNnc3RyICJCPC0tYWx0ZGlyPiBJPGRpcmVjdG9yaW8+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzI4Cittc2dpZCAiIgorIlNwZWNpZmllcyB0aGUgYWx0ZXJuYXRpdmVzIGRpcmVjdG9yeSwgd2hlbiB0aGlzIGlzIHRvIGJlIGRpZmZlcmVudCBmcm9tIHRoZSAiCisiZGVmYXVsdC4iCittc2dzdHIgIiIKKyJEZWZpbmUgZWwgZGlyZWN0b3JpbyBkZSBhbHRlcm5hdGl2YXMsIGN1YW5kbyBlcyBkaWZlcmVudGUgZGVsIGRpcmVjdG9yaW8gcG9yICIKKyJvbWlzacOzbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMzIKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRoZSBhZG1pbmlzdHJhdGl2ZSBkaXJlY3RvcnksIHdoZW4gdGhpcyBpcyB0byBiZSBkaWZmZXJlbnQgZnJvbSAiCisidGhlIGRlZmF1bHQuIgorbXNnc3RyICIiCisiRGVmaW5lIGVsIGRpcmVjdG9yaW8gYWRtaW5pc3RyYXRpdm8sIGN1YW5kbyBlcyBkaWZlcmVudGUgZGVsIGRpcmVjdG9yaW8gcG9yICIKKyJvbWlzacOzbi4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzMyCisjLCBuby13cmFwCittc2dpZCAiQjwtLWxvZz5JPCBmaWxlPiIKK21zZ3N0ciAiQjwtLWxvZz0+STxmaWNoZXJvPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjMzNgorbXNnaWQgIiIKKyJTcGVjaWZpZXMgdGhlIGxvZyBmaWxlLCB3aGVuIHRoaXMgaXMgdG8gYmUgZGlmZmVyZW50IGZyb20gdGhlIGRlZmF1bHQgKC92YXIvIgorImxvZy9hbHRlcm5hdGl2ZXMubG9nKS4iCittc2dzdHIgIiIKKyJEZWZpbmUgZWwgZmljaGVybyBkZSByZWdpc3RybyBkZSBhbHRlcm5hdGl2YXMgY3VhbmRvIGVzIGRpZmVyZW50ZSBkZWwgdmFsb3IgIgorInBvciBvbWlzacOzbiAowqsvdmFyL2xvZy9hbHRlcm5hdGl2YXMubG9nwrspLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM0MAorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiTGV0IEI8dXBkYXRlLWFsdGVybmF0aXZlcz4gcmVwbGFjZSBhbnkgcmVhbCBmaWxlIHRoYXQgaXMgaW5zdGFsbGVkIHdoZXJlICIKKyN8ICJhbiBhbHRlcm5hdGl2ZSBsaW5rIGhhcyB0byBiZSBpbnN0YWxsZWQuIgorbXNnaWQgIiIKKyJMZXQgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiByZXBsYWNlIG9yIGRyb3AgYW55IHJlYWwgZmlsZSB0aGF0IGlzIGluc3RhbGxlZCAiCisid2hlcmUgYW4gYWx0ZXJuYXRpdmUgbGluayBoYXMgdG8gYmUgaW5zdGFsbGVkIG9yIHJlbW92ZWQuIgorbXNnc3RyICIiCisiRGVqYSBxdWUgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiByZWVtcGxhY2UgY3VhbHF1aWVyIGZpY2hlcm8gcmVhbCBpbnN0YWxhZG8gIgorImVuIGxhIG1pc21hIHViaWNhY2nDs24gcXVlIGxhIGRlIHVuIGVubGFjZSBhbHRlcm5hdGl2by4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzQwCisjLCBuby13cmFwCittc2dpZCAiQjwtLXNraXAtYXV0bz4iCittc2dzdHIgIkI8LS1za2lwLWF1dG8+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzQ1Cittc2dpZCAiIgorIlNraXAgY29uZmlndXJhdGlvbiBwcm9tcHQgZm9yIGFsdGVybmF0aXZlcyB3aGljaCBhcmUgcHJvcGVybHkgY29uZmlndXJlZCBpbiAiCisiYXV0b21hdGljIG1vZGUuIFRoaXMgb3B0aW9uIGlzIG9ubHkgcmVsZXZhbnQgd2l0aCBCPC0tY29uZmlnPiBvciBCPC0tYWxsPi4iCittc2dzdHIgIiIKKyJPbWl0ZSBlbCBkaWFsb2dvIGRlIGNvbmZpZ3VyYWNpw7NuIGRlIGFsdGVybmF0aXZhcyBwYXJhIGFxdWVsbGFzIGNvbmZpZ3VyYWRhcyAiCisiYWRlY3VhZGFtZW50ZSBlbiBtb2RvIGF1dG9tw6F0aWNvLiBFc3RhIG9wY2nDs24gc29sbyB0aWVuZSBzZW50aWRvIGNvbiBCPC0tIgorImNvbmZpZz4gbyBCPC0tYWxsPi4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzQ1CisjLCBuby13cmFwCittc2dpZCAiQjwtLXZlcmJvc2U+IgorbXNnc3RyICJCPC0tdmVyYm9zZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozNTAKK21zZ2lkICJHZW5lcmF0ZSBtb3JlIGNvbW1lbnRzIGFib3V0IHdoYXQgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBpcyBkb2luZy4iCittc2dzdHIgIiIKKyJHZW5lcmEgdW5hIHNhbGlkYSBjb24gbcOhcyBpbmZvcm1hY2nDs24gYWNlcmNhIGRlIGxvIHF1ZSBCPHVwZGF0ZS0iCisiYWx0ZXJuYXRpdmVzPiBlc3TDoSBoYWNpZW5kby4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozNTMKK21zZ2lkICJEb24ndCBnZW5lcmF0ZSBhbnkgY29tbWVudHMgdW5sZXNzIGVycm9ycyBvY2N1ci4iCittc2dzdHIgIk5vIGdlbmVyYSBuaW5nw7puIGNvbWVudGFyaW8gYSBtZW5vcyBxdWUgb2N1cnJhIGFsZ8O6biBlcnJvci4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozNTkKK21zZ2lkICIiCisiSWYgc2V0IGFuZCB0aGUgQjwtLWFkbWluZGlyPiBvcHRpb24gaGFzIG5vdCBiZWVuIHNwZWNpZmllZCwgaXQgd2lsbCBiZSB1c2VkICIKKyJhcyB0aGUgYmFzZSBhZG1pbmlzdHJhdGl2ZSBkaXJlY3RvcnkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzYxCisjLCBuby13cmFwCittc2dpZCAiSTwvZXRjL2FsdGVybmF0aXZlcy8+IgorbXNnc3RyICJJPC9ldGMvYWx0ZXJuYXRpdmVzLz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozNjcKK21zZ2lkICIiCisiVGhlIGRlZmF1bHQgYWx0ZXJuYXRpdmVzIGRpcmVjdG9yeS4gIENhbiBiZSBvdmVycmlkZGVuIGJ5IHRoZSBCPC0tYWx0ZGlyPiAiCisib3B0aW9uLiIKK21zZ3N0ciAiIgorIkVsIGRpcmVjdG9yaW8gZGUgYWx0ZXJuYXRpdmFzIHBvciBvbWlzacOzbi4gU2UgcHVlZGUgY2FtYmlhciBjb24gbGEgb3BjacOzbiAiCisiQjwtLWFsdGRpcj4uIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM2NworIywgbm8td3JhcAorbXNnaWQgIkk8L3Zhci9saWIvZHBrZy9hbHRlcm5hdGl2ZXMvPiIKK21zZ3N0ciAiSTwvdmFyL2xpYi9kcGtnL2FsdGVybmF0aXZlcy8+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzczCittc2dpZCAiIgorIlRoZSBkZWZhdWx0IGFkbWluaXN0cmF0aW9uIGRpcmVjdG9yeS4gIENhbiBiZSBvdmVycmlkZGVuIGJ5IHRoZSBCPC0tIgorImFkbWluZGlyPiBvcHRpb24uIgorbXNnc3RyICIiCisiRWwgZGlyZWN0b3JpbyBkZSBhZG1pbmlzdHJhY2nDs24gcG9yIG9taXNpw7NuLiBTZSBwdWVkZSBtb2RpZmljYXIgY29uIGxhICIKKyJvcGNpw7NuIEI8LS1hZG1pbmRpcj4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6Mzc4Cittc2dpZCAiVGhlIHJlcXVlc3RlZCBhY3Rpb24gd2FzIHN1Y2Nlc3NmdWxseSBwZXJmb3JtZWQuIgorbXNnc3RyICJMYSBhY2Npw7NuIHJlcXVlcmlkYSBmaW5hbGl6w7MgY29uIMOpeGl0by4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozODIKK21zZ2lkICIiCisiUHJvYmxlbXMgd2VyZSBlbmNvdW50ZXJlZCB3aGlsc3QgcGFyc2luZyB0aGUgY29tbWFuZCBsaW5lIG9yIHBlcmZvcm1pbmcgdGhlICIKKyJhY3Rpb24uIgorbXNnc3RyICIiCisiU2UgZW5jb250cmFyb24gcHJvYmxlbWFzIGFuYWxpemFuZG8gbGEgbMOtbmVhIGRlIMOzcmRlbmVzIG8gcmVhbGl6YW5kbyBsYSAiCisiYWNjacOzbiByZXF1ZXJpZGEuIgorCisjLiB0eXBlOiBTSAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM4MworIywgbm8td3JhcAorbXNnaWQgIlFVRVJZIEZPUk1BVCIKK21zZ3N0ciAiRk9STUFUTyBERSBDT05TVUxUQSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM4OAorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiVGhlIEI8dXBkYXRlLWFsdGVybmF0aXZlcz4gSTwtLXF1ZXJ5PiBmb3JtYXQgaXMgdXNpbmcgYW4gUkZDODIyLWxpa2UgZmxhdCAiCisjfCAiZm9ybWF0LiBJdCdzIG1hZGUgb2YgSTxuPiArIDEgYmxvY2tzIHdoZXJlIEk8bj4gaXMgdGhlIG51bWJlciBvZiAiCisjfCAiYWx0ZXJuYXRpdmVzIGF2YWlsYWJsZSBpbiB0aGUgcXVlcmllZCBsaW5rIGdyb3VwLiBUaGUgZmlyc3QgYmxvY2sgIgorI3wgImNvbnRhaW5zIHRoZSBmb2xsb3dpbmcgZmllbGRzOiIKK21zZ2lkICIiCisiVGhlIEI8dXBkYXRlLWFsdGVybmF0aXZlcyAtLXF1ZXJ5PiBmb3JtYXQgaXMgdXNpbmcgYW4gUkZDODIyLWxpa2UgZmxhdCAiCisiZm9ybWF0LiBJdCdzIG1hZGUgb2YgSTxuPiArIDEgYmxvY2tzIHdoZXJlIEk8bj4gaXMgdGhlIG51bWJlciBvZiAiCisiYWx0ZXJuYXRpdmVzIGF2YWlsYWJsZSBpbiB0aGUgcXVlcmllZCBsaW5rIGdyb3VwLiBUaGUgZmlyc3QgYmxvY2sgY29udGFpbnMgIgorInRoZSBmb2xsb3dpbmcgZmllbGRzOiIKK21zZ3N0ciAiIgorIkVsIGZvcm1hdG8gZGUgY29uc3VsdGEgKEk8LS1xdWVyeT4pIGRlIEI8dXBkYXRlLWFsdGVybmF0aXZlcz4gdXNhIHVuIGZvcm1hdG8gIgorInNpbXBsZSBkZSB0aXBvIFJGQzgyMi4gU2UgY29tcG9uZSBkZSBJPG4+ICsgMSBibG9xdWVzLCBlbiBlbCBxdWUgSTxuPiBlcyBlbCAiCisibsO6bWVybyBkZSBhbHRlcm5hdGl2YXMgZGlzcG9uaWJsZXMgZW4gZWwgZ3J1cG8gZGUgZW5sYWNlcyBjb25zdWx0YWRvLiBFbCAiCisicHJpbWVyIGJsb3F1ZSBjb250aWVuZSBsb3Mgc2lndWllbnRlcyBjYW1wb3M6IgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM4OAorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPExpbms6PiBFPGx0PmxpbmtFPGd0PiIKK21zZ2lkICJCPExpbms6Pkk8IGxpbms+IgorbXNnc3RyICJCPExpbms6PiBFPGx0PmVubGFjZUU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzkxCittc2dpZCAiVGhlIGdlbmVyaWMgbmFtZSBvZiB0aGUgYWx0ZXJuYXRpdmUuIgorbXNnc3RyICJFbCBub21icmUgZ2Vuw6lyaWNvIGRlIGxhIGFsdGVybmF0aXZhLiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozOTEKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxTdGF0dXM6PiBFPGx0PnN0YXR1c0U8Z3Q+IgorbXNnaWQgIkI8U3RhdHVzOj5JPCBzdGF0dXM+IgorbXNnc3RyICJCPFN0YXR1czo+IEU8bHQ+ZXN0YWRvRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozOTQKK21zZ2lkICJUaGUgc3RhdHVzIG9mIHRoZSBhbHRlcm5hdGl2ZSAoQjxhdXRvPiBvciBCPG1hbnVhbD4pLiIKK21zZ3N0ciAiRWwgZXN0YWRvIGRlIGxhIGFsdGVybmF0aXZhIChCPGF1dG8+IG8gQjxtYW51YWw+KS4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6Mzk0CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8QmVzdDo+IEU8bHQ+YmVzdCBjaG9pY2VFPGd0PiIKK21zZ2lkICJCPEJlc3Q6Pkk8IGJlc3QtY2hvaWNlPiIKK21zZ3N0ciAiQjxCZXN0Oj4gRTxsdD5tZWpvci1vcGNpw7NuRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozOTgKK21zZ2lkICIiCisiVGhlIHBhdGggb2YgdGhlIGJlc3QgYWx0ZXJuYXRpdmUgZm9yIHRoaXMgbGluayBncm91cC4gTm90IHByZXNlbnQgaWYgdGhlcmUgIgorImlzIG5vIGFsdGVybmF0aXZlcyBhdmFpbGFibGUuIgorbXNnc3RyICIiCisiTGEgcnV0YSBkZSBsYSBtZWpvciBhbHRlcm5hdGl2YSBwYXJhIGVzdGUgZ3J1cG8gZGUgZW5sYWNlcy4gTm8gYXBhcmVjZSBzaSBubyAiCisiZXhpc3RlbiBhbHRlcm5hdGl2YXMgZGlzcG9uaWJsZXMuIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM5OAorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPFZhbHVlOj4gRTxsdD5jdXJyZW50bHkgc2VsZWN0ZWQgYWx0ZXJuYXRpdmVFPGd0PiAiCittc2dpZCAiQjxWYWx1ZTo+STwgY3VycmVudGx5LXNlbGVjdGVkLWFsdGVybmF0aXZlPiIKK21zZ3N0ciAiQjxWYWx1ZTo+IEU8bHQ+YWx0ZXJuYXRpdmEgc2VsZWNjaW9uYWRhRTxndD4gIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDAyCittc2dpZCAiIgorIlRoZSBwYXRoIG9mIHRoZSBjdXJyZW50bHkgc2VsZWN0ZWQgYWx0ZXJuYXRpdmUuIEl0IGNhbiBhbHNvIHRha2UgdGhlIG1hZ2ljICIKKyJ2YWx1ZSBCPG5vbmU+LiBJdCBpcyB1c2VkIGlmIHRoZSBsaW5rIGRvZXNuJ3QgZXhpc3QuIgorbXNnc3RyICIiCisiTGEgcnV0YSBkZSBsYSBhbHRlcm5hdGl2YSBzZWxlY2Npb25hZGEgZW4gZXNlIG1vbWVudG8uIFRhbWJpw6luIHB1ZWRlIHRvbWFyICIKKyJlbCB2YWxvciBtw6FnaWNvIEI8bm9uZT4gKG5pbmd1bm8pLiBTZSB1c2Egc2kgZWwgZW5sYWNlIG5vIGV4aXN0ZS4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDAzCisjLCBuby13cmFwCittc2dpZCAiVGhlIG90aGVyIGJsb2NrcyBkZXNjcmliZSB0aGUgYXZhaWxhYmxlIGFsdGVybmF0aXZlcyBpbiB0aGUgcXVlcmllZCBsaW5rIGdyb3VwOiIKK21zZ3N0ciAiTG9zIHNpZ3VpZW50ZXMgYmxvcXVlcyBkZXNjcmliZW4gbGFzIGFsdGVybmF0aXZhcyBkaXNwb25pYmxlcyBlbiBlbCBncnVwbyBkZSBlbmxhY2VzIGNvbnN1bHRhZG86IgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQwNQorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPEFsdGVybmF0aXZlOj4gRTxsdD5wYXRoIG9mIHRoaXMgYWx0ZXJuYXRpdmVFPGd0PiIKK21zZ2lkICJCPEFsdGVybmF0aXZlOj5JPCBwYXRoLW9mLXRoaXMtYWx0ZXJuYXRpdmU+IgorbXNnc3RyICJCPEFsdGVybmF0aXZlOj4gRTxsdD5ydXRhIGEgZXN0YSBhbHRlcm5hdGl2YUU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDA4Cittc2dpZCAiUGF0aCB0byB0aGlzIGJsb2NrJ3MgYWx0ZXJuYXRpdmUuIgorbXNnc3RyICJSdXRhIGEgbGEgYWx0ZXJuYXRpdmEgZGUgZXN0ZSBibG9xdWUuIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQwOAorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPFByaW9yaXR5Oj4gRTxsdD5wcmlvcml0eSB2YWx1ZUU8Z3Q+IgorbXNnaWQgIkI8UHJpb3JpdHk6Pkk8IHByaW9yaXR5LXZhbHVlPiIKK21zZ3N0ciAiQjxQcmlvcml0eTogPkU8bHQ+cHJpb3JpZGFkRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0MTEKK21zZ2lkICJWYWx1ZSBvZiB0aGUgcHJpb3JpdHkgb2YgdGhpcyBhbHRlcm5hdGl2ZS4iCittc2dzdHIgIlZhbG9yIGRlIGxhIHByaW9yaWRhZCBkZSBlc3RhIGFsdGVybmF0aXZhLiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0MTEKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxTbGF2ZXM6PiBFPGx0Pmxpc3Qgb2Ygc2xhdmVzRTxndD4iCittc2dpZCAiQjxTbGF2ZXM6Pkk8IGxpc3Qtb2Ytc2xhdmVzPiIKK21zZ3N0ciAiQjxTbGF2ZXM6PiBFPGx0Pmxpc3RhIGRlIGVzY2xhdm9zRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0MTcKK21zZ2lkICIiCisiV2hlbiB0aGlzIGhlYWRlciBpcyBwcmVzZW50LCB0aGUgQjxuZXh0PiBsaW5lcyBob2xkIGFsbCBzbGF2ZSBhbHRlcm5hdGl2ZXMgIgorImFzc29jaWF0ZWQgdG8gdGhlIG1hc3RlciBsaW5rIG9mIHRoZSBhbHRlcm5hdGl2ZS4gVGhlcmUgaXMgb25lIHNsYXZlIHBlciAiCisibGluZS4gRWFjaCBsaW5lIGNvbnRhaW5zIG9uZSBzcGFjZSwgdGhlIGdlbmVyaWMgbmFtZSBvZiB0aGUgc2xhdmUgIgorImFsdGVybmF0aXZlLCBhbm90aGVyIHNwYWNlLCBhbmQgdGhlIHBhdGggdG8gdGhlIHNsYXZlIGFsdGVybmF0aXZlLiIKK21zZ3N0ciAiIgorIkN1YW5kbyBlc3RhIGNhYmVjZXJhIGVzdMOhIHByZXNlbnRlLCBsYXMgbMOtbmVhcyBCPG5leHQ+IGNvbnRpZW5lbiB0b2RhcyBsYXMgIgorImFsdGVybmF0aXZhcyBlc2NsYXZhcyBhc29jaWFkYXMgYWwgZW5sYWNlIG1hZXN0cm8gZGUgbGEgYWx0ZXJuYXRpdmEuIEhheSB1biAiCisiZXNjbGF2byBwb3IgbMOtbmVhLiBDYWRhIGzDrW5lYSBjb250aWVuZSB1biBlc3BhY2lvLCBlbCBub21icmUgZ2Vuw6lyaWNvIGRlIGxhICIKKyJhbHRlcm5hdGl2YSBlc2NsYXZhLCBvdHJvIGVzcGFjaW8sIHkgbGEgcnV0YSBhIGxhIGFsdGVybmF0aXZhIGVzY2xhdmEuIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQxOAorIywgbm8td3JhcAorbXNnaWQgIkI8RXhhbXBsZT4iCittc2dzdHIgIkI8RWplbXBsbz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0MjYKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiJCB1cGRhdGUtYWx0ZXJuYXRpdmVzIC0tcXVlcnkgZWRpdG9yXG4iCisiTGluazogZWRpdG9yXG4iCisiU3RhdHVzOiBhdXRvXG4iCisiQmVzdDogL3Vzci9iaW4vdmltLmd0a1xuIgorIlZhbHVlOiAvdXNyL2Jpbi92aW0uZ3RrXG4iCittc2dzdHIgIiIKKyIkIHVwZGF0ZS1hbHRlcm5hdGl2ZXMgLS1xdWVyeSBlZGl0b3JcbiIKKyJMaW5rOiBlZGl0b3JcbiIKKyJTdGF0dXM6IGF1dG9cbiIKKyJCZXN0OiAvdXNyL2Jpbi92aW0uZ3RrXG4iCisiVmFsdWU6IC91c3IvYmluL3ZpbS5ndGtcbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQzMQorIywgbm8td3JhcAorbXNnaWQgIiIKKyJBbHRlcm5hdGl2ZTogL2Jpbi9lZFxuIgorIlByaW9yaXR5OiAtMTAwXG4iCisiU2xhdmVzOlxuIgorIiBlZGl0b3IuMS5neiAvdXNyL3NoYXJlL21hbi9tYW4xL2VkLjEuZ3pcbiIKK21zZ3N0ciAiIgorIkFsdGVybmF0aXZlOiAvYmluL2VkXG4iCisiUHJpb3JpdHk6IC0xMDBcbiIKKyJTbGF2ZXM6XG4iCisiIGVkaXRvci4xLmd6IC91c3Ivc2hhcmUvbWFuL21hbjEvZWQuMS5nelxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDQ2CisjLCBuby13cmFwCittc2dpZCAiIgorIkFsdGVybmF0aXZlOiAvdXNyL2Jpbi92aW0uZ3RrXG4iCisiUHJpb3JpdHk6IDUwXG4iCisiU2xhdmVzOlxuIgorIiBlZGl0b3IuMS5neiAvdXNyL3NoYXJlL21hbi9tYW4xL3ZpbS4xLmd6XG4iCisiIGVkaXRvci5ydS4xLmd6IC91c3Ivc2hhcmUvbWFuL3J1L21hbjEvdmltLjEuZ3pcbiIKKyIgZWRpdG9yLnBsLklTTzg4NTktMi4xLmd6IC91c3Ivc2hhcmUvbWFuL3BsLklTTzg4NTktMi9tYW4xL3ZpbS4xLmd6XG4iCisiIGVkaXRvci5pdC5JU084ODU5LTEuMS5neiAvdXNyL3NoYXJlL21hbi9pdC5JU084ODU5LTEvbWFuMS92aW0uMS5nelxuIgorIiBlZGl0b3IucGwuVVRGLTguMS5neiAvdXNyL3NoYXJlL21hbi9wbC5VVEYtOC9tYW4xL3ZpbS4xLmd6XG4iCisiIGVkaXRvci5pdC4xLmd6IC91c3Ivc2hhcmUvbWFuL2l0L21hbjEvdmltLjEuZ3pcbiIKKyIgZWRpdG9yLmZyLlVURi04LjEuZ3ogL3Vzci9zaGFyZS9tYW4vZnIuVVRGLTgvbWFuMS92aW0uMS5nelxuIgorIiBlZGl0b3IuZnIuMS5neiAvdXNyL3NoYXJlL21hbi9mci9tYW4xL3ZpbS4xLmd6XG4iCisiIGVkaXRvci5pdC5VVEYtOC4xLmd6IC91c3Ivc2hhcmUvbWFuL2l0LlVURi04L21hbjEvdmltLjEuZ3pcbiIKKyIgZWRpdG9yLnBsLjEuZ3ogL3Vzci9zaGFyZS9tYW4vcGwvbWFuMS92aW0uMS5nelxuIgorIiBlZGl0b3IuZnIuSVNPODg1OS0xLjEuZ3ogL3Vzci9zaGFyZS9tYW4vZnIuSVNPODg1OS0xL21hbjEvdmltLjEuZ3pcbiIKK21zZ3N0ciAiIgorIkFsdGVybmF0aXZlOiAvdXNyL2Jpbi92aW0uZ3RrXG4iCisiUHJpb3JpdHk6IDUwXG4iCisiU2xhdmVzOlxuIgorIiBlZGl0b3IuMS5neiAvdXNyL3NoYXJlL21hbi9tYW4xL3ZpbS4xLmd6XG4iCisiIGVkaXRvci5ydS4xLmd6IC91c3Ivc2hhcmUvbWFuL3J1L21hbjEvdmltLjEuZ3pcbiIKKyIgZWRpdG9yLnBsLklTTzg4NTktMi4xLmd6IC91c3Ivc2hhcmUvbWFuL3BsLklTTzg4NTktMi9tYW4xL3ZpbS4xLmd6XG4iCisiIGVkaXRvci5pdC5JU084ODU5LTEuMS5neiAvdXNyL3NoYXJlL21hbi9pdC5JU084ODU5LTEvbWFuMS92aW0uMS5nelxuIgorIiBlZGl0b3IucGwuVVRGLTguMS5neiAvdXNyL3NoYXJlL21hbi9wbC5VVEYtOC9tYW4xL3ZpbS4xLmd6XG4iCisiIGVkaXRvci5pdC4xLmd6IC91c3Ivc2hhcmUvbWFuL2l0L21hbjEvdmltLjEuZ3pcbiIKKyIgZWRpdG9yLmZyLlVURi04LjEuZ3ogL3Vzci9zaGFyZS9tYW4vZnIuVVRGLTgvbWFuMS92aW0uMS5nelxuIgorIiBlZGl0b3IuZnIuMS5neiAvdXNyL3NoYXJlL21hbi9mci9tYW4xL3ZpbS4xLmd6XG4iCisiIGVkaXRvci5pdC5VVEYtOC4xLmd6IC91c3Ivc2hhcmUvbWFuL2l0LlVURi04L21hbjEvdmltLjEuZ3pcbiIKKyIgZWRpdG9yLnBsLjEuZ3ogL3Vzci9zaGFyZS9tYW4vcGwvbWFuMS92aW0uMS5nelxuIgorIiBlZGl0b3IuZnIuSVNPODg1OS0xLjEuZ3ogL3Vzci9zaGFyZS9tYW4vZnIuSVNPODg1OS0xL21hbjEvdmltLjEuZ3pcbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQ1OAorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiV2l0aCBJPC0tdmVyYm9zZT4gQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBjaGF0dGVycyBpbmNlc3NhbnRseSBhYm91dCBpdHMgIgorI3wgImFjdGl2aXRpZXMgb24gaXRzIHN0YW5kYXJkIG91dHB1dCBjaGFubmVsLiAgSWYgcHJvYmxlbXMgb2NjdXIsIEI8dXBkYXRlLSIKKyN8ICJhbHRlcm5hdGl2ZXM+IG91dHB1dHMgZXJyb3IgbWVzc2FnZXMgb24gaXRzIHN0YW5kYXJkIGVycm9yIGNoYW5uZWwgYW5kICIKKyN8ICJyZXR1cm5zIGFuIGV4aXQgc3RhdHVzIG9mIDIuICBUaGVzZSBkaWFnbm9zdGljcyBzaG91bGQgYmUgc2VsZi0iCisjfCAiZXhwbGFuYXRvcnk7IGlmIHlvdSBkbyBub3QgZmluZCB0aGVtIHNvLCBwbGVhc2UgcmVwb3J0IHRoaXMgYXMgYSBidWcuIgorbXNnaWQgIiIKKyJXaXRoIEI8LS12ZXJib3NlPiBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IGNoYXR0ZXJzIGluY2Vzc2FudGx5IGFib3V0IGl0cyAiCisiYWN0aXZpdGllcyBvbiBpdHMgc3RhbmRhcmQgb3V0cHV0IGNoYW5uZWwuICBJZiBwcm9ibGVtcyBvY2N1ciwgQjx1cGRhdGUtIgorImFsdGVybmF0aXZlcz4gb3V0cHV0cyBlcnJvciBtZXNzYWdlcyBvbiBpdHMgc3RhbmRhcmQgZXJyb3IgY2hhbm5lbCBhbmQgIgorInJldHVybnMgYW4gZXhpdCBzdGF0dXMgb2YgMi4gIFRoZXNlIGRpYWdub3N0aWNzIHNob3VsZCBiZSBzZWxmLWV4cGxhbmF0b3J5OyAiCisiaWYgeW91IGRvIG5vdCBmaW5kIHRoZW0gc28sIHBsZWFzZSByZXBvcnQgdGhpcyBhcyBhIGJ1Zy4iCittc2dzdHIgIiIKKyJDb24gbGEgb3BjacOzbiBJPC0tdmVyYm9zZT4sIEI8dXBkYXRlLWFsdGVybmF0aXZlcz4gaW5mb3JtYSBleHRlbnNhbWVudGUgIgorImFjZXJjYSBkZSBzdXMgYWN0aXZpZGFkZXMgcG9yIGxhIHNhbGlkYSBlc3TDoW5kYXIuIFNpIG9jdXJyZSBhbGfDum4gcHJvYmxlbWEsICIKKyJCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IGVudsOtYSBsb3MgbWVuc2FqZXMgZGUgZXJyb3IgcG9yIGxhIHNhbGlkYSBkZSBlcnJvcmVzICIKKyJlc3TDoW5kYXIgeSBjaWVycmEgY29uIGVsIGVzdGFkbyAyLiBMb3MgZGlhZ27Ds3N0aWNvcyBkZWJlcsOtYW4gc2VyIGF1dG8tIgorImV4cGxpY2F0aXZvczsgc2kgYSB1c3RlZCBubyBzZSBsbyBwYXJlY2VuLCBsZSByb2dhbW9zIGluZm9ybWUgZGUgZXN0byBjb21vICIKKyJ1biBmYWxsby4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0NjQKK21zZ2lkICIiCisiVGhlcmUgYXJlIHNldmVyYWwgcGFja2FnZXMgd2hpY2ggcHJvdmlkZSBhIHRleHQgZWRpdG9yIGNvbXBhdGlibGUgd2l0aCAiCisiQjx2aT4sIGZvciBleGFtcGxlIEI8bnZpPiBhbmQgQjx2aW0+LiBXaGljaCBvbmUgaXMgdXNlZCBpcyBjb250cm9sbGVkIGJ5IHRoZSAiCisibGluayBncm91cCBCPHZpPiwgd2hpY2ggaW5jbHVkZXMgbGlua3MgZm9yIHRoZSBwcm9ncmFtIGl0c2VsZiBhbmQgdGhlICIKKyJhc3NvY2lhdGVkIG1hbnBhZ2UuIgorbXNnc3RyICIiCisiSGF5IHZhcmlvcyBwYXF1ZXRlcyBxdWUgcHJvcG9yY2lvbmFuIHVuIGVkaXRvciBkZSB0ZXh0byBjb21wYXRpYmxlIGNvbiAiCisiQjx2aT4sIHBvciBlamVtcGxvIEI8bnZpPnkgQjx2aW0+LiBFbCBncnVwbyBkZSBlbmxhY2VzIEI8dmk+IHNlbGVjY2lvbmEgY3VhbCAiCisic2UgdXNhLCBpbmNsdXllbmRvIGVubGFjZXMgcGFyYSBlbCBwcm9ncmFtYSB5IGxhIHDDoWdpbmEgZGVsIG1hbnVhbCBhc29jaWFkYS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0NjcKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlRvIGRpc3BsYXkgdGhlIGF2YWlsYWJsZSBwYWNrYWdlcyB3aGljaCBwcm92aWRlIEI8dmk+IGFuZCB0aGUgY3VycmVudCAiCisjfCAic2V0dGluZyBmb3IgaXQsIHVzZSB0aGUgSTwtLWRpc3BsYXk+IGFjdGlvbjoiCittc2dpZCAiIgorIlRvIGRpc3BsYXkgdGhlIGF2YWlsYWJsZSBwYWNrYWdlcyB3aGljaCBwcm92aWRlIEI8dmk+IGFuZCB0aGUgY3VycmVudCAiCisic2V0dGluZyBmb3IgaXQsIHVzZSB0aGUgQjwtLWRpc3BsYXk+IGFjdGlvbjoiCittc2dzdHIgIiIKKyJQYXJhIG1vc3RyYXIgbG9zIHBhcXVldGVzIGRpc3BvbmlibGVzIHF1ZSBwcm9wb3JjaW9uYW4gQjx2aT4geSBzdSAiCisiY29uZmlndXJhY2nDs24gYWN0dWFsLCB1c2UgbGEgb3BjacOzbiBJPC0tZGlzcGxheTo+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDcwCittc2dpZCAiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzIC0tZGlzcGxheSB2aT4iCittc2dzdHIgIkI8dXBkYXRlLWFsdGVybmF0aXZlcyAtLWRpc3BsYXkgdmk+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDc0Cittc2dpZCAiIgorIlRvIGNob29zZSBhIHBhcnRpY3VsYXIgQjx2aT4gaW1wbGVtZW50YXRpb24sIHVzZSB0aGlzIGNvbW1hbmQgYXMgcm9vdCBhbmQgIgorInRoZW4gc2VsZWN0IGEgbnVtYmVyIGZyb20gdGhlIGxpc3Q6IgorbXNnc3RyICIiCisiUGFyYSBlbGVnaXIgdW5hIGltcGxlbWVudGFjacOzbiBkZSBCPHZpPiBlbiBwYXJ0aWN1bGFyIHVzZSBsYSBzaWd1aWVudGUgb3JkZW4gIgorImNvbW8gZWwgdXN1YXJpbyDCq3Jvb3TCuyB5IHNlbGVjY2lvbmUgdW4gbsO6bWVybyBkZSBsYSBsaXN0YToiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0NzcKK21zZ2lkICJCPHVwZGF0ZS1hbHRlcm5hdGl2ZXMgLS1jb25maWcgdmk+IgorbXNnc3RyICJCPHVwZGF0ZS1hbHRlcm5hdGl2ZXMgLS1jb25maWcgdmk+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDgxCittc2dpZCAiIgorIlRvIGdvIGJhY2sgdG8gaGF2aW5nIHRoZSBCPHZpPiBpbXBsZW1lbnRhdGlvbiBjaG9zZW4gYXV0b21hdGljYWxseSwgZG8gdGhpcyAiCisiYXMgcm9vdDoiCittc2dzdHIgIiIKKyJQYXJhIHF1ZSBsYSBpbXBsZW1lbnRhY2nDs24gZGUgQjx2aT4gc2UgdnVlbHZhIGEgZWxlZ2lyIGRlIGZvcm1hIGF1dG9tw6F0aWNhLCAiCisiaGFnYSBjb21vIGFkbWluaXN0cmFkb3I6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDg0Cittc2dpZCAiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzIC0tYXV0byB2aT4iCittc2dzdHIgIkI8dXBkYXRlLWFsdGVybmF0aXZlcyAtLWF1dG8gdmk+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDg4Cittc2dpZCAiIgorIklmIHlvdSBmaW5kIGEgYnVnLCBwbGVhc2UgcmVwb3J0IGl0IHVzaW5nIHRoZSBEZWJpYW4gYnVnLXRyYWNraW5nIHN5c3RlbS4iCittc2dzdHIgIiIKKyJTaSBlbmN1ZW50cmEgYWxnw7puIGZhbGxvIGluZm9ybWUgZGUgZWxsbyB1c2FuZG8gZWwgc2lzdGVtYSBkZSBzZWd1aW1pZW50byBkZSAiCisiZmFsbG9zIGRlIERlYmlhbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0OTMKK21zZ2lkICIiCisiSWYgeW91IGZpbmQgYW55IGRpc2NyZXBhbmN5IGJldHdlZW4gdGhlIG9wZXJhdGlvbiBvZiBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+ICIKKyJhbmQgdGhpcyBtYW51YWwgcGFnZSwgaXQgaXMgYSBidWcsIGVpdGhlciBpbiB0aGUgaW1wbGVtZW50YXRpb24gb3IgdGhlICIKKyJkb2N1bWVudGF0aW9uOyBwbGVhc2UgcmVwb3J0IGl0LiIKK21zZ3N0ciAiIgorIlNpIGVuY3VlbnRyYSBhbGd1bmEgZGlzY3JlcGFuY2lhIGVudHJlIGVsIG1vZG8gZGUgb3BlcmFyIGRlIEI8dXBkYXRlLSIKKyJhbHRlcm5hdGl2ZXM+IHkgZXN0YSBww6FnaW5hIGRlbCBtYW51YWwsIGVzIHVuIGZhbGxvLCBiaWVuIGVuIGxhICIKKyJpbXBsZW1lbnRhY2nDs24gbyBiaWVuIGVuIGxhIGRvY3VtZW50YWNpw7NuLiBMZSByb2dhbW9zIHF1ZSBpbmZvcm1lIGRlIGVsbG8uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NTA0Cittc2dpZCAiIgorIlRoaXMgbWFudWFsIHBhZ2UgaXMgY29weXJpZ2h0IDE5OTcsMTk5OCBDaGFybGVzIEJyaXNjb2UtU21pdGggYW5kIG90aGVycy4iCittc2dzdHIgIiIKKyJMb3MgZGVyZWNob3MgZGUgYXV0b3IgZGUgZXN0YSBww6FnaW5hIGRlIG1hbnVhbCBwZXJ0ZW5lY2VuIGEgQ2hhcmxlcyBCcmlzY29lLSIKKyJTbWl0aCB5IG90cm9zLCAxOTk3LDE5OTguIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NTA3Cittc2dpZCAiIgorIlRoaXMgaXMgZnJlZSBkb2N1bWVudGF0aW9uOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbmNlIHZlcnNpb24gMiBvciAiCisibGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gV0FSUkFOVFkuIgorbXNnc3RyICIiCisiRXN0byBlcyBzb2Z0d2FyZSBsaWJyZTsgdmVhIGxhIHZlcnNpw7NuIDIgbyBwb3N0ZXJpb3IgZGUgbGEgTGljZW5jaWEgUMO6YmxpY2EgIgorIkdlbmVyYWwgR05VIHBhcmEgY29uZGljaW9uZXMgZGUgY29waWEuIE5PIGhheSBuaW5ndW5hIGdhcmFudMOtYS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo1MTAKK21zZ2lkICJCPGxuPigxKSwgRkhTLCB0aGUgRmlsZXN5c3RlbSBIaWVyYXJjaHkgU3RhbmRhcmQuIgorbXNnc3RyICJCPGxuPigxKSwgRkhTLCBlbCBlc3TDoW5kYXIgZGUgbGEgamVyYXJxdcOtYSBkZWwgc2lzdGVtYSBkZSBmaWNoZXJvcy4iCisKKyN+IG1zZ2lkICIyMDA5LTAyLTI3IgorI34gbXNnc3RyICIyNyBkZSBGZWJyZXJvIGRlIDIwMDkiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgIjIwMDktMDItMjciCisjfiBtc2dpZCAiMjAxMS0wNC0yOSIKKyN+IG1zZ3N0ciAiMjcgZGUgRmVicmVybyBkZSAyMDA5IgorCisjfiBtc2dpZCAiMjAwNi0wMi0yOCIKKyN+IG1zZ3N0ciAiMjggZGUgRmVicmVybyBkZSAyMDA2IgorCisjfiBtc2dpZCAiMjAwNy0wMy0wNyIKKyN+IG1zZ3N0ciAiNyBkZSBNYXJ6byBkZSAyMDA3IgorCisjfiBtc2dpZCAiMjAwNy0wNy0xNiIKKyN+IG1zZ3N0ciAiMTYgZGUgSnVsaW8gZGUgMjAwNyIKKworI34gbXNnaWQgIjIwMDktMDMtMTUiCisjfiBtc2dzdHIgIjE1IGRlIE1hcnpvIGRlIDIwMDkiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgIjIwMDktMDItMjciCisjfiBtc2dpZCAiMjAxMS0wNC0yNyIKKyN+IG1zZ3N0ciAiMjcgZGUgRmVicmVybyBkZSAyMDA5IgorCisjLCBmdXp6eQorI358IG1zZ2lkICIyMDA5LTAyLTI3IgorI34gbXNnaWQgIjIwMTEtMDctMDciCisjfiBtc2dzdHIgIjI3IGRlIEZlYnJlcm8gZGUgMjAwOSIKKworI34gbXNnaWQgIjIwMTAtMDQtMTgiCisjfiBtc2dzdHIgIjE4IGRlIEFicmlsIGRlIDIwMTAiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgIlVzZXIgY29uZmlndXJhdGlvbiBmaWxlLiIKKyN+IG1zZ2lkICJQYWNrYWdlIG1haW50YWluZXIgY29uZmlndXJhdGlvbiBmaWxlLiIKKyN+IG1zZ3N0ciAiRmljaGVybyBkZSBjb25maWd1cmFjacOzbiBkZWwgdXN1YXJpby4iCisKKyN+IG1zZ2lkICIyMDEwLTA3LTI5IgorI34gbXNnc3RyICIyOSBkZSBqdWxpbyBkZWwgMjAxMCIKKworI34gbXNnaWQgIkI8UGFja2FnZTo+IEU8bHQ+cGFja2FnZSBuYW1lRTxndD4iCisjfiBtc2dzdHIgIkI8UGFja2FnZTo+IEU8bHQ+bm9tYnJlLWRlbC1wYXF1ZXRlRTxndD4iCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgIjIwMTAtMDEtMjgiCisjfiBtc2dpZCAiMjAxMC0xMS0yMiIKKyN+IG1zZ3N0ciAiMjggZGUgZW5lcm8gZGVsIDIwMTAiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgIkI8U291cmNlOj4gRTxsdD5zb3VyY2UgbmFtZUU8Z3Q+IgorI34gbXNnaWQgIkI8TXVsdGktQXJjaDo+IEU8bHQ+c2FtZXxmb3JlaWdufGFsbG93ZWRFPGd0PiAiCisjfiBtc2dzdHIgIkI8U291cmNlOj4gRTxsdD5ub21icmUtZGVsLWPDs2RpZ28tZnVlbnRlRTxndD4iCisKKyN+IG1zZ2lkICIyMDEwLTAxLTI4IgorI34gbXNnc3RyICIyOCBkZSBlbmVybyBkZWwgMjAxMCIKKworI34gbXNnaWQgIiIKKyN+ICJUaGUgZmlyc3QgbWVtYmVyIGlzIG5hbWVkIEI8ZGViaWFuLXNwbGl0PiBhbmQgY29udGFpbnMgYSBzZXJpZXMgb2YgbGluZXMsICIKKyN+ICJzZXBhcmF0ZWQgYnkgbmV3bGluZXMuIEN1cnJlbnRseSBzZXZlbiBsaW5lcyBhcmUgcHJlc2VudC4gIFRoZSBmaXJzdCBpcyAiCisjfiAidGhlIGZvcm1hdCB2ZXJzaW9uIG51bWJlciwgQjwyLjE+IGF0IHRoZSB0aW1lIHRoaXMgbWFudWFsIHBhZ2Ugd2FzICIKKyN+ICJ3cml0dGVuLiBUaGUgc2Vjb25kIGlzIHRoZSBwYWNrYWdlIG5hbWUuIFRoZSB0aGlyZCBpcyB0aGUgcGFja2FnZSAiCisjfiAidmVyc2lvbi4gVGhlIGZvdXJ0aCBpcyB0aGUgbWQ1c3VtIG9mIHRoZSBwYWNrYWdlLiAgVGhlIGZpZnRoIGlzIHRoZSB0b3RhbCAiCisjfiAic2l6ZSBvZiB0aGUgcGFja2FnZS4gVGhlIHNpeHRoIGlzIHRoZSBtYXhpbXVtIHBhcnQgc2l6ZS4gVGhlIHNldmVudGggaXMgIgorI34gInRoZSBjdXJyZW50IHBhcnQgbnVtYmVyLCBmb2xsb3dlZCBieSBhIHNsYXNoIGFuZCB0aGUgdG90YWwgYW1vdW50IG9mICIKKyN+ICJwYXJ0cyAoYXMgaW4gXFwob3ExLzEwXFwoY3EpLiIKKyN+IG1zZ3N0ciAiIgorI34gIkVsIHByaW1lciBtaWVtYnJvIHNlIGxsYW1hIEI8ZGViaWFuLXNwbGl0PiwgeSBjb250aWVuZSB1biBjb25qdW50byBkZSAiCisjfiAibMOtbmVhcyBzZXBhcmFkYXMgcG9yIHNhbHRvcyBkZSBsw61uZWEuIEEgZMOtYSBkZSBob3kgaGF5IHNpZXRlIGzDrW5lYXMuIExhICIKKyN+ICJwcmltZXJhIGVzIGVsIG7Dum1lcm8gZGUgdmVyc2nDs24gZGUgZm9ybWF0bywgQjwyLjE+IGVuIGVsIG1vbWVudG8gZGUgIgorI34gImVzY3JpYmlyIGVzdGEgcMOhZ2luYSBkZSBtYW51YWwuIEVsIHNlZ3VuZG8gZXMgZWwgbm9tYnJlIGRlbCBwYXF1ZXRlLiBFbCAiCisjfiAidGVyY2VybyBlcyBsYSB2ZXJzacOzbiBkZWwgcGFxdWV0ZS4gRWwgY3VhcnRvIGVzIGxhIHN1bWEgZGUgY29udHJvbCBtZDUgIgorI34gImRlbCBwYXF1ZXRlLiBFbCBxdWludG8gZXMgZWwgdGFtYcOxbyB0b3RhbCBkZWwgcGFxdWV0ZS4gRWwgc2V4dG8gZXMgZWwgIgorI34gInRhbWHDsW8gbcOheGltbyBkZSB1bmEgcGFydGUuIEVsIHPDqXB0aW1vIGVzIGVsIG7Dum1lcm8gZGUgbGEgcGFydGUgYWN0dWFsLCAiCisjfiAic2VndWlkbyBkZSB1bmEgYmFycmEgaW52ZXJ0aWRhIHkgZWwgbsO6bWVybyB0b3RhbCBkZSBsYXMgcGFydGVzIChwb3IgIgorI34gImVqZW1wbG8sIFxcKG9xMS8xMFxcKGNxKS4iCisKKyN+IG1zZ2lkICIyMDA4LTA4LTE4IgorI34gbXNnc3RyICIxOCBkZSBBZ29zdG8gZGUgMjAwOCIKKworI34gbXNnaWQgIiIKKyN+ICJCPGRwa2c+IGNhbiBhbHNvIGJlIHVzZWQgYXMgYSBmcm9udC1lbmQgdG8gQjxkcGtnLWRlYj4oMSkuICBUaGUgZm9sbG93aW5nICIKKyN+ICJhcmUgQjxkcGtnLWRlYj4gYWN0aW9ucywgYW5kIGlmIHRoZXkgYXJlIGVuY291bnRlcmVkLCBCPGRwa2c+IGp1c3QgcnVucyAiCisjfiAiQjxkcGtnLWRlYj4gd2l0aCB0aGUgcGFyYW1ldGVycyBnaXZlbiB0byBpdDoiCisjfiBtc2dzdHIgIiIKKyN+ICJUYW1iacOpbiBwdWVkZSB1c2FyIEI8ZHBrZz4gY29tbyB1bmEgaW50ZXJmYXogYSBCPGRwa2ctZGViPigxKS4gU2kgZWwgIgorI34gInByaW1lcm8gZW5jdWVudHJhIGFsZ3VuYSBkZSBsYXMgb3BjaW9uZXMgZGVsIHNlZ3VuZG8sIHNlIGxpbWl0YSBhICIKKyN+ICJpbnZvY2FybG8gY29uIGVzb3MgbWlzbW9zIHBhcsOhbWV0cm9zOiIKKworI34gbXNnaWQgIiIKKyN+ICIgICAgQjwtYj4sIEI8LS1idWlsZD4sXG4iCisjfiAiICAgIEI8LWM+LCBCPC0tY29udGVudHM+LFxuIgorI34gIiAgICBCPC1JPiwgQjwtLWluZm8+LFxuIgorI34gIiAgICBCPC1mPiwgQjwtLWZpZWxkPixcbiIKKyN+ICIgICAgQjwtZT4sIEI8LS1jb250cm9sPixcbiIKKyN+ICIgICAgQjwteD4sIEI8LS1leHRyYWN0PixcbiIKKyN+ICIgICAgQjwtWD4sIEI8LS12ZXh0cmFjdD4sIGFuZFxuIgorI34gIiAgICBCPC0tZnN5cy10YXJmaWxlPi5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIiAgICBCPC1iPiwgQjwtLWJ1aWxkPixcbiIKKyN+ICIgICAgQjwtYz4sIEI8LS1jb250ZW50cz4sXG4iCisjfiAiICAgIEI8LUk+LCBCPC0taW5mbz4sXG4iCisjfiAiICAgIEI8LWY+LCBCPC0tZmllbGQ+LFxuIgorI34gIiAgICBCPC1lPiwgQjwtLWNvbnRyb2w+LFxuIgorI34gIiAgICBCPC14PiwgQjwtLWV4dHJhY3Q+LFxuIgorI34gIiAgICBCPC1YPiwgQjwtLXZleHRyYWN0PiwgeVxuIgorI34gIiAgICBCPC0tZnN5cy10YXJmaWxlPi5cbiIKKworI34gbXNnaWQgIlBsZWFzZSByZWZlciB0byBCPGRwa2ctZGViPigxKSBmb3IgaW5mb3JtYXRpb24gYWJvdXQgdGhlc2UgYWN0aW9ucy4iCisjfiBtc2dzdHIgIiIKKyN+ICJDb25zdWx0ZSBCPGRwa2ctZGViPigxKSBzaSBkZXNlYSBtw6FzIGluZm9ybWFjacOzbiBzb2JyZSBlc3RhcyBhY2Npb25lcy4iCisKKyN+IG1zZ2lkICJCPC0tbmV3PiwgQjwtLW9sZD4iCisjfiBtc2dzdHIgIkI8LS1uZXc+LCBCPC0tb2xkPiIKKworI34gbXNnaWQgIiIKKyN+ICJTZWxlY3QgbmV3IG9yIG9sZCBiaW5hcnkgcGFja2FnZSBmb3JtYXQuIFRoaXMgaXMgYSBCPGRwa2ctZGViPigxKSAgb3B0aW9uLiIKKyN+IG1zZ3N0ciAiIgorI34gIlNlbGVjY2lvbmEgZWwgZm9ybWF0byBudWV2byBvIGFudGlndW8gZGUgcGFxdWV0ZS4gRXMgdW5hIG9wY2nDs24gZGUgQjxkcGtnLSIKKyN+ICJkZWI+KDEpLiIKKworI34gbXNnaWQgIiIKKyN+ICJEb24ndCByZWFkIG9yIGNoZWNrIGNvbnRlbnRzIG9mIGNvbnRyb2wgZmlsZSB3aGlsZSBidWlsZGluZyBhIHBhY2thZ2UuICAiCisjfiAiVGhpcyBpcyBhIEI8ZHBrZy1kZWI+KDEpIG9wdGlvbi4iCisjfiBtc2dzdHIgIiIKKyN+ICJObyBsZWUgbmkgY29tcHJ1ZWJhIGVsIGNvbnRlbmlkbyBkZWwgZmljaGVybyBkZSBjb250cm9sIGFsIGNvbnN0cnVpciBlbCAiCisjfiAicGFxdWV0ZS4gRXMgdW5hIG9wY2nDs24gZGUgQjxkcGtnLWRlYj4oMSkuIgorCisjfiBtc2dpZCAiMjAwOS0wOC0xNSIKKyN+IG1zZ3N0ciAiMTUgZGUgQWdvc3RvIGRlIDIwMDkiCisKKyN+IG1zZ2lkICJDb21waWxlciBmbGFncyIKKyN+IG1zZ3N0ciAiT3BjaW9uZXMgZGUgY29tcGlsYWNpw7NuIgorCisjfiBtc2dpZCAiIgorI34gIlRoZSBCPENGTEFHUz4sIEI8Q1hYRkxBR1M+LCBCPEZGTEFHUz4sIEI8Q1BQRkxBR1M+IGFuZCBCPExERkxBR1M+ICIKKyN+ICJlbnZpcm9ubWVudCB2YXJpYWJsZXMgYXJlIHNldCB0byB0aGUgdmFsdWVzIHRoYXQgQjxkcGtnLWJ1aWxkZmxhZ3M+ICIKKyN+ICJyZXR1cm5lZC4gU2VlIGl0cyBtYW51YWwgcGFnZSBmb3IgbW9yZSBpbmZvcm1hdGlvbi4iCisjfiBtc2dzdHIgIiIKKyN+ICJMYXMgdmFyaWFibGVzIGRlIGVudG9ybm8gQjxDRkxBR1M+LCBCPENYWEZMQUdTPiwgQjxGRkxBR1M+LCBCPENQUEZMQUdTPiB5ICIKKyN+ICJCPExERkxBR1M+IHNlIGRlZmluZSBjb24gbG9zIHZhbG9yZXMgcXVlIGRldnVlbHZlIEI8ZHBrZy1idWlsZGZsYWdzPi4gIgorI34gIlBhcmEgbcOhcyBpbmZvcm1hY2nDs24gY29uc3VsdGUgc3UgcMOhZ2luYSBkZSBtYW51YWwuIgorCisjfiBtc2dpZCAiMjAwOS0xMS0yMSIKKyN+IG1zZ3N0ciAiMjEgZGUgTm92aWVtYnJlIGRlIDIwMDkiCisKKyN+IG1zZ2lkICIyMDEwLTAzLTA3IgorI34gbXNnc3RyICI3IGRlIE1hcnpvIGRlIDIwMTAiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgIjIwMTAtMTAtMTAiCisjfiBtc2dpZCAiMjAxMC0xMC0xMiIKKyN+IG1zZ3N0ciAiMTAgZGUgT2N0dWJyZSBkZWwgMjAxMCIKKworI34gbXNnaWQgIjIwMDktMDgtMDciCisjfiBtc2dzdHIgIjcgZGUgQWdvc3RvIGRlIDIwMDkiCisKKyN+IG1zZ2lkICIyMDEwLTA0LTE2IgorI34gbXNnc3RyICIxNiBkZSBBYnJpbCBkZSAyMDEwIgorCisjfiBtc2dpZCAiMjAwOS0wNS0xOSIKKyN+IG1zZ3N0ciAiMTkgZGUgSnVuaW8gZGUgMjAwOSIKKworI34gbXNnaWQgIjAiCisjfiBtc2dzdHIgIjAiCisKKyN+IG1zZ2lkICIxIgorI34gbXNnc3RyICIxIgorCisjfiBtc2dpZCAiMjAwOS0xMC0wMSIKKyN+IG1zZ3N0ciAiMSBkZSBPY3R1YnJlIGRlIDIwMDkiCisKKyN+IG1zZ2lkICIyMDA5LTA2LTI2IgorI34gbXNnc3RyICIyNiBkZSBKdW5pbyBkZSAyMDA5IgorCisjfiBtc2dpZCAiIgorI34gIkI8ZHBrZy1zcGxpdD4gdXNlcyBzb21lIHJhdGhlciBvdXQtb2YtZGF0ZSBjb252ZW50aW9ucyBmb3IgdGhlIHRoZSAiCisjfiAiZmlsZW5hbWVzIG9mIERlYmlhbiBwYWNrYWdlcy4iCisjfiBtc2dzdHIgIiIKKyN+ICJCPGRwa2ctc3BsaXQ+IHVzYSBhbGd1bmFzIGNvbnZlbmNpb25lcyB1biB0YW50byBwYXNhZGFzIGRlIGZlY2hhIHBhcmEgZWwgIgorI34gIm5vbWJyZSBkZSBsb3MgcGFxdWV0ZXMgZGUgRGViaWFuLiIKKworI34gbXNnaWQgIiIKKyN+ICJUaGUgYXJjaGl0ZWN0dXJlIGlzIG5vdCByZXByZXNlbnRlZCBpbiB0aGUgcGFydCBmaWxlcycgaGVhZGVyLCBvbmx5IGluICIKKyN+ICJ0aGUgY29udHJvbCBpbmZvcm1hdGlvbiBvZiB0aGUgY29udGFpbmVkIGJpbmFyeSBwYWNrYWdlIGZpbGUsIGFuZCBpdCBpcyAiCisjfiAibm90IHByZXNlbnQgaW4gdGhlIGZpbGVuYW1lcyBnZW5lcmF0ZWQuIgorI34gbXNnc3RyICIiCisjfiAiTGEgYXJxdWl0ZWN0dXJhIG5vIHNlIHJlZmxlamEgZW4gbGEgY2FiZWNlcmEgZGUgbGFzIHBhcnRlcyBkZWwgZmljaGVybywgIgorI34gInPDs2xvIGVuIGxhIGluZm9ybWFjacOzbiBkZSBjb250cm9sIGRlbCBwYXF1ZXRlIGJpbmFyaW8gb3JpZ2luYWwsIHkgw6lzdGUgbm8gIgorI34gImVzdGEgcHJlc2VudGUgZW4gbGFzIHBhcnRlcyBnZW5lcmFkYXMuIgorCisjfiBtc2dpZCAiMjAwOS0wNS0xMCIKKyN+IG1zZ3N0ciAiMTAgZGUgQWJyaWwgZGUgMjAwOSIKKworI34gbXNnaWQgIiIKKyN+ICJCPGRzZWxlY3Q+IFtCPC0tYWRtaW5kaXI+IEk8RTxsdD5kaXJlY3RvcnlFPGd0Pj5dIFtCPC0taGVscD5dIFtCPC0tIgorI34gInZlcnNpb24+XSBbQjwtLWV4cGVydD5dIFtCPC0tZGVidWc+fEI8LUQ+STxFPGx0PmZpbGVFPGd0Pj5dICIKKyN+ICJbSTxFPGx0PmFjdGlvbkU8Z3Q+Pl0gW0I8LS1jb2xvdXI+fEI8LS1jb2xvcj4gSTxzY3JlZW5wYXJ0Oj4iCisjfiAiW0k8Zm9yZWdyb3VuZD5dLFtJPGJhY2tncm91bmQ+XVtJPDphdHRyPltJPCthdHRyKy4uPl1dXSIKKyN+IG1zZ3N0ciAiIgorI34gIkI8ZHNlbGVjdD4gW0I8LS1hZG1pbmRpcj4gSTxFPGx0PmRpcmVjdG9yaW9FPGd0Pj5dIFtCPC0taGVscD5dIFtCPC0tIgorI34gInZlcnNpb24+XSBbQjwtLWV4cGVydD5dIFtCPC0tZGVidWc+fEI8LUQ+STxFPGx0PmZpY2hlcm9FPGd0Pj5dICIKKyN+ICJbSTxFPGx0PmFjY2nDs25FPGd0Pj5dIFtCPC0tY29sb3VyPnxCPC0tY29sb3I+IEk8cGFydGUtcGFudGFsbGE6PltJPHByaW1lci0iCisjfiAicGxhbm8+XSxbSTxmb25kbz5dW0k8OmF0dHI+W0k8K2F0dHIrLi4+XV1dIgorCisjfiBtc2dpZCAiQjwtLWFkbWluZGlyPkk8IEU8bHQ+ZGlyZWN0b3J5RTxndD4+IgorI34gbXNnc3RyICJCPC0tYWRtaW5kaXI+STwgRTxsdD5kaXJlY3RvcmlvRTxndD4+IgorCisjfiBtc2dpZCAiVVNBR0UiCisjfiBtc2dzdHIgIk1PRE8gREUgVVNPIgorCisjfiBtc2dpZCAiIgorI34gIkI8c3RhcnQtc3RvcC1kYWVtb24+IHJldHVybnMgMCBpZiB0aGUgcmVxdWVzdGVkIGFjdGlvbiB3YXMgcGVyZm9ybWVkLCBvciAiCisjfiAiaWYgQjwtLW9rbm9kbz4gaXMgc3BlY2lmaWVkIGFuZCBlaXRoZXIgQjwtLXN0YXJ0PiB3YXMgc3BlY2lmaWVkIGFuZCBhICIKKyN+ICJtYXRjaGluZyBwcm9jZXNzIHdhcyBhbHJlYWR5IHJ1bm5pbmcsIG9yIEI8LS1zdG9wPiB3YXMgc3BlY2lmaWVkIGFuZCAiCisjfiAidGhlcmUgd2VyZSBubyBtYXRjaGluZyBwcm9jZXNzZXMuIElmIEI8LS1va25vZG8+IHdhcyBub3Qgc3BlY2lmaWVkIGFuZCAiCisjfiAibm90aGluZyB3YXMgZG9uZSwgMSBpcyByZXR1cm5lZC4gSWYgQjwtLXN0b3A+IGFuZCBCPC0tcmV0cnk+IHdlcmUgIgorI34gInNwZWNpZmllZCwgYnV0IHRoZSBlbmQgb2YgdGhlIHNjaGVkdWxlIHdhcyByZWFjaGVkIGFuZCB0aGUgcHJvY2Vzc2VzIHdlcmUgIgorI34gInN0aWxsIHJ1bm5pbmcsIHRoZSBlcnJvciB2YWx1ZSBpcyAyLiBGb3IgYWxsIG90aGVyIGVycm9ycywgdGhlIHN0YXR1cyBpcyAiCisjfiAiMy4iCisjfiBtc2dzdHIgIiIKKyN+ICJCPHN0YXJ0LXN0b3AtZGFlbW9uPiBkZXZ1ZWx2ZSAwIHNpIGxhIGFjY2nDs24gcmVxdWVyaWRhIHR1dm8gw6l4aXRvLCBvIHNpICIKKyN+ICJzZSBkZWZpbmUgQjwtLW9rbm9kbz4geSBzaSBzZSBkZWZpbmnDsyBvIGJpZW4gQjwtLXN0YXJ0PiwgZXhpc3RpZW5kbyB1biAiCisjfiAicHJvY2VzbyBjdXlvIG5vbWJyZSBjb2luY2lkZSwgbyBCPC0tc3RvcD4geSBzaSBubyBleGlzdGUgdW4gcHJvY2VzbyBxdWUgIgorI34gImNvaW5jaWRhLiBEZXZ1ZWx2ZSAxIHNpIHNlIGVzcGVjaWZpY8OzIEI8LS1va25vZG8+IHBlcm8gbmFkYSBvY3VycmnDsy4gIgorI34gIkRldnVlbHZlIDIgc2kgc2UgZXNwZWNpZmljYXJvbiBCPC0tc3RvcD4geSBCPC0tcmV0cnk+LCB5IGxhIGFjY2nDs24gIgorI34gInByb2dyYW1hZGEgc2UgZWplY3V0w7MgeSBsb3MgcHJvY2Vzb3MgYcO6biBzZSBlc3RhYmFuIGVqZWN1dGFuZG8uIERldnVlbHZlICIKKyN+ICIzIHBhcmEgbG9zIGRlbcOhcyBlcnJvcmVzLiIKKworI34gbXNnaWQgIjIiCisjfiBtc2dzdHIgIjIiCisKKyN+IG1zZ2lkICIiCisjfiAiQW4gZXJyb3Igb2NjdXJyZWQuIFVuZm9ydHVuYXRlbHkgYXQgdGhlIHRpbWUgb2Ygd3JpdGluZyBJPGV4dGVuZGVkLWVycm9yLSIKKyN+ICJtZXNzYWdlPiBjYW4gY29udGFpbiBuZXdsaW5lcywgYWx0aG91Z2ggaW4gbG9jYWxlcyB3aGVyZSB0aGUgdHJhbnNsYXRvcnMgIgorI34gImhhdmUgbm90IG1hZGUgbWlzdGFrZXMgZXZlcnkgbmV3bGluZSBpcyBmb2xsb3dlZCBieSBhdCBsZWFzdCBvbmUgc3BhY2UuIgorI34gbXNnc3RyICIiCisjfiAiU2UgaGEgZGV0ZWN0YWRvIHVuIGZhbGxvLiBEZXNhZm9ydHVuYWRhbWVudGUsIGVuIGVsIG1vbWVudG8gZGUgaW1wcmVzacOzbiAiCisjfiAiZWwgSTxtZW5zYWplLWRlLWZhbGxvLWRldGFsbGFkbz4gcHVlZGUgY29udGVuZXIgc2FsdG9zIGRlIGzDrW5lYSwgYXVucXVlICIKKyN+ICJlbiBhcXVlbGxhcyB0cmFkdWNjaW9uZXMgZW4gbGFzIHF1ZSBlbCB0cmFkdWN0b3Igbm8gY29tZXRpw7MgbmluZ8O6biBmYWxsbyAiCisjfiAiY2FkYSBzYWx0byBkZSBsw61uZWEgdmEgc2VndWlkbyBkZSB1biBlc3BhY2lvLiIKKworI34gbXNnaWQgIjIwMDktMDMtMDgiCisjfiBtc2dzdHIgIjggZGUgTWFyem8gZGUgMjAwOSIKKworI34gbXNnaWQgIkk8YWRtaW5kaXI+L2luZm8vSTxwYWNrYWdlPi5zeW1ib2xzIgorI34gbXNnc3RyICJJPGRpcmVjdG9yaW8tYWRtaW5zdHJhY2nDs24+L2luZm8vSTxwYXF1ZXRlPi5zeW1ib2xzIgorCisjfiBtc2dpZCAiSTxhZG1pbmRpcj4vaW5mby9JPHBhY2thZ2U+LnNobGlicyIKKyN+IG1zZ3N0ciAiSTxkaXJlY3RvcmlvLWFkbWluc3RyYWNpw7NuPi9pbmZvL0k8cGFxdWV0ZT4uc2hsaWJzIgorCisjfiBtc2dpZCAiMjAwOS0xMS0xMSIKKyN+IG1zZ3N0ciAiMTEgZGUgTm92aWVtYnJlIGRlIDIwMDkiCisKKyN+IG1zZ2lkICIyMDA5LTAyLTI2IgorI34gbXNnc3RyICIyNiBkZSBGZWJyZXJvIGRlIDIwMDkiCisKKyN+IG1zZ2lkICIyMDA5LTA0LTEzIgorI34gbXNnc3RyICIxMyBkZSBBYnJpbCBkZSAyMDA5IgorCisjfiBtc2dpZCAiMjAwNy0xMC0wOCIKKyN+IG1zZ3N0ciAiOCBkZSBTZXB0aWVtYnJlIGRlIDIwMDciCisKKyN+IG1zZ2lkICIiCisjfiAiRGVmaW5lZCBieSBCPGRwa2c+IG9uIHRoZSBtYWludGFpbmVyIHNjcmlwdCBlbnZpcm9ubWVudCB0byB0aGUgcHJpdmF0ZSAiCisjfiAibGlicmFyeSBkaXJlY3Rvcnkgb2YgdGhlIGN1cnJlbnRseSBydW5uaW5nIEI8ZHBrZz4gaW5zdGFuY2UuIgorI34gbXNnc3RyICIiCisjfiAiRGVmaW5pZG8gcG9yIEI8ZHBrZz4gZW4gZWwgc2NyaXB0IGRlbCBlbnRvcm5vIGRlbCBtYW50ZW5lZG9yIGNvbiBlbCB2YWxvciAiCisjfiAiZGVsIGRpcmVjdG9yaW8gcHJpdmFkbyBkZSBiaWJsaW90ZWNhcyBkZSBsYSBpbnN0YW5jaWEgZGUgQjxkcGtnPiBlbiAiCisjfiAiZWplY3VjacOzbi4iCisKKyN+IG1zZ2lkICIyMDEwLTA0LTExIgorI34gbXNnc3RyICIxMSBkZSBBYnJpbCBkZSAyMDEwIgorCisjfiBtc2dpZCAiRm9ybWF0OiAzLjAgKGdpdCkgYW5kIDMuMCAoYnpyKSIKKyN+IG1zZ3N0ciAiRm9ybWF0bzogMy4wIChnaXQpIHkgMy4wIChienIpIgorCisjfiBtc2dpZCAiIgorI34gIkk8cHJpb3JpdHk+IGFuZCBJPHNlY3Rpb24+IHBsYWNlIHRoZSBwYWNrYWdlIHdpdGhpbiB0aGUgcmVsZWFzZSB0cmVlOyAiCisjfiAidGhlc2Ugb3VnaHQgbm90IHRvIGJlIGZvdW5kIGluIHRoZSBjb250cm9sIGZpbGUuIElmIHRoZSBwYWNrYWdlIGlzIGZvdW5kICIKKyN+ICJpbiBhIHN1YmRpcmVjdG9yeSBvZiBJPGJpbmFyeWRpcj4sIHRoYXQgd2lsbCBiZSBjaGVja2VkIGFnYWluc3QgIgorI34gIkk8c2VjdGlvbj4uIgorI34gbXNnc3RyICIiCisjfiAiSTxwcmlvcmlkYWQ+IHkgSTxzZWNjacOzbj4gdWJpY2FuIGVsIHBhcXVldGUgZW4gZWwgw6FyYm9sIGRlIGRpcmVjdG9yaW9zIGRlICIKKyN+ICJsYSBwdWJsaWNhY2nDs247IGVzdGEgaW5mb3JtYWNpw7NuIG5vIGRlYmUgZXN0YXIgcHJlc2VudGUgZW4gZWwgZmljaGVybyAiCisjfiAiwqtjb250cm9swrsuIFNpIGVsIHBhcXVldGUgc2UgZW5jdWVudHJhIGVuIHVuIHN1YmRpcmVjdG9yaW8gZGUgSTxiaW5hcnktKj4sICIKKyN+ICJzZSByZXZpc2Fyw6EgdGVuaWVuZG8gZW4gY3VlbnRhIGxhIEk8c2VjY2nDs24+LiIKKworI34gbXNnaWQgIjIwMDktMTEtMTIiCisjfiBtc2dzdHIgIjEyIGRlIE5vdmllbWJyZSBkZSAyMDA5IgorCisjfiBtc2dpZCAiQjwtLWxpY2VuY2U+LCBCPC0tbGljZW5zZT4iCisjfiBtc2dzdHIgIkI8LS1saWNlbmNlPiwgQjwtLWxpY2Vuc2U+IgorCisjfiBtc2dpZCAiRGlzcGxheSBCPGRwa2c+IGxpY2VuY2UuIgorI34gbXNnc3RyICJNdWVzdHJhIGxhIGxpY2VuY2lhIGRlIEI8ZHBrZz4uIgorCisjfiBtc2dpZCAiRU5WSVJPTk1FTlQgVkFSSUFCTEVTIgorI34gbXNnc3RyICJWQVJJQUJMRVMgREUgRU5UT1JOTyIKKworI34gbXNnaWQgIkI8RFBLR19OT19UU1RQPiIKKyN+IG1zZ3N0ciAiQjxEUEtHX05PX1RTVFA+IgorCisjfiBtc2dpZCAiIgorI34gIkRlZmluZSB0aGlzIHRvIHNvbWV0aGluZyBpZiB5b3UgcHJlZmVyIEI8ZHBrZz4gc3RhcnRpbmcgYSBuZXcgc2hlbGwgIgorI34gInJhdGhlciB0aGFuIHN1c3BlbmRpbmcgaXRzZWxmLCB3aGlsZSBkb2luZyBhIHNoZWxsIGVzY2FwZS4iCisjfiBtc2dzdHIgIiIKKyN+ICJEZWZpbmEgZXN0YSB2YXJpYWJsZSBzaSBwcmVmaWVyZSBxdWUgQjxkcGtnPiBhcnJhbnF1ZSBlbiB1biBpbnTDqXJwcmV0ZSAiCisjfiAiZGlmZXJlbnRlIGVuIHZleiBlbnRyYXIgZW4gc3VzcGVuc2nDs24gYWwgcmVhbGl6YXIgdW4gZXNjYXBlIGRlIGNvbnNvbGEuIgorCisjfiBtc2dpZCAiMjAwOS0wNi0xMyIKKyN+IG1zZ3N0ciAiMTMgZGUgSnVuaW8gZGUgMjAwOSIKKworI34gbXNnaWQgIiIKKyN+ICJJZiB0aGUgaG9zdCBhcmNoaXRlY3R1cmUgZGlmZmVycyBmcm9tIHRoZSBidWlsZCBhcmNoaXRlY3R1cmUgKGFzIGlzIHRoZSAiCisjfiAiY2FzZSBmb3IgYSBjcm9zcy1jb21waWxhdGlvbiksIGFuZCBpZiB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGUgIgorI34gIkI8UEtHX0NPTkZJR19MSUJESVI+IGlzIG5vdCBzZXQsIHRoZW4gaXQgaXMgc2V0IHRvIGEgdmFsdWUgc3VpdGFibGUgZm9yICIKKyN+ICJjcm9zcy1jb21waWxhdGlvbiAoXCIvdXNyL0k8Z251LXN5c3RlbS10eXBlPi9saWIvcGtnY29uZmlnLzovdXNyL3NoYXJlLyIKKyN+ICJwa2djb25maWdcIikuIgorI34gbXNnc3RyICIiCisjfiAiU2kgbGEgYXJxdWl0ZWN0dXJhIGFuZml0cmnDs24gZGlmaWVyZSBkZSBsYSBhcnF1aXRlY3R1cmEgZGUgY29uc3RydWNjacOzbiAiCisjfiAiKHRhbCBlcyBlbCBjYXNvIGFsIGNvbXBpbGFyIHBhcmEgdmFyaWFzIGFycXVpdGVjdHVyYXMpLCB5IG5vIHNlIGRlZmluZSBsYSAiCisjfiAidmFyaWFibGUgZGUgZW50b3JubyBCPFBLR19DT05GSUdfTElCRElSPiwgYWNlcHRhcsOhIGVudG9uY2VzIHVuIHZhbG9yICIKKyN+ICJhZGVjdWFkbyBwYXJhIGxhIGNvbXBpbGFjacOzbiBlbiB2YXJpYXMgYXJxdWl0ZWN0dXJhcyAowqsvdXNyL0k8Z251LXN5c3RlbS0iCisjfiAidHlwZT4vbGliL3BrZ2NvbmZpZy86L3Vzci9zaGFyZS9wa2djb25maWfCuykuIgorCisjfiBtc2dpZCAiIgorI34gIlNvbWUgZW52aXJvbm1lbnQgdmFyaWFibGVzIGRlZmluaW5nIGNvbXBpbGVyIGFuZCBsaW5rZXIgb3B0aW9ucyBhcmUgc2V0ICIKKyN+ICJ0byBkZWZhdWx0IHZhbHVlcyB1bmxlc3MgYWxyZWFkeSBwcmVzZW50IGluIHRoZSBlbnZpcm9ubWVudC4gTm90ZSB0aGF0ICIKKyN+ICJ0aGlzIG1lY2hhbmlzbSB3YXMgb25seSBpbnRyb2R1Y2VkIGluIHZlcnNpb24gMS4xNC4xNyBvZiBkcGtnLWRldiBhbmQgbm90ICIKKyN+ICJhbGwgSTxydWxlcz4gZmlsZXMgYW5kIGJ1aWxkIHRvb2xzIHdpbGwgaG9ub3VyIHRoZXNlIHZhcmlhYmxlcywgeWV0LiIKKyN+IG1zZ3N0ciAiIgorI34gIkFsZ3VuYXMgdmFyaWFibGVzIGRlIGVudG9ybm8gcXVlIGFmZWN0YW4gYSBsYXMgb3BjaW9uZXMgZGVsIGNvbXBpbGFkb3IgeSAiCisjfiAiZWwgZW5sYXphZG9yIHRvbWFuIHZhbG9yZXMgcHJlZGVmaW5pZG9zLCBhIG1lbm9zIHF1ZSB5YSBlc3TDqW4gZGVmaW5pZG9zICIKKyN+ICJlbiBlbCBlbnRvcm5vLiBUZW5nYSBlbiBjdWVudGEgcXVlIGVzdGUgbWVjYW5pc21vIHNlIGludHJvZHVqbyBhIHBhcnRpciAiCisjfiAiZGUgbGEgdmVyc2nDs24gMS4xNC4xNyBkZSBkcGtnLWRldiwgeSBubyB0b2RvcyBsb3MgZmljaGVyb3MgSTxydWxlcz4geSAiCisjfiAiaGVycmFtaWVudGFzIGRlIGNvbnN0cnVjY2nDs24gcmVjb25vY2VuIGVzdGFzIHZhcmlhYmxlcy4iCisKKyMgdHlwZTogUGxhaW4gdGV4dAorI34gbXNnaWQgIiIKKyN+ICJPcHRpbWl6YXRpb24gb3B0aW9ucyB3aGljaCBhcmUgcGFzc2VkIHRvIHRoZSBEZWJpYW4gYnVpbGQgc3lzdGVtIGFuZCBjYW4vIgorI34gInNob3VsZCBiZSBvdmVycmlkZGVuIGJ5IHRoZSBwYWNrYWdlIGJ1aWxkIGlmIG5lZWRlZCAoZGVmYXVsdCB2YWx1ZTogQjwtZyAtIgorI34gIk8yPiwgb3IgQjwtZ1xcIC1PMD4gaWYgQjxub29wdD4gaXMgc3BlY2lmaWVkIGluIERFQl9CVUlMRF9PUFRJT05TKS4gIgorI34gIk92ZXJyaWRpbmcgb3B0aW9ucyBjYW4gYmUgdXNlZCB0byBleHBsaWNpdGx5IHNldCBhIGhpZ2hlciBvcHRpbWl6YXRpb24gIgorI34gImxldmVsLCBvciB3b3JrIGFyb3VuZCBjb21waWxlciBidWdzLCB3aGljaCBvbmx5IGNhbiBiZSBzZWVuIHdpdGggc29tZSAiCisjfiAib3B0aW1pemF0aW9uIGxldmVscyAodGhlIGxhc3Qgb3B0IGxldmVsIFwid2luc1wiKS4iCisjfiBtc2dzdHIgIiIKKyN+ICJMYXMgb3BjaW9uZXMgZGUgb3B0aW1pemFjacOzbiBpbnRyb2R1Y2lkYXMgYWwgc2lzdGVtYSBkZSBjb25zdHJ1Y2Npw7NuIGRlICIKKyN+ICJEZWJpYW4gcHVlZGVuIHkgZGViZW4gc2VyIHNvYnJlZXNjcml0YXMgZHVyYW50ZSBsYSBjb25zdHJ1Y2Npw7NuIGRlbCAiCisjfiAicGFxdWV0ZSBlbiBjYXNvIGRlIHNlciBuZWNlc2FyaW8gKHZhbG9yIHBvciBvbWlzacOzbjogQjwtZyAtTzI+LCBvIEI8LWdcXCAtIgorI34gIk8wPiBzaSBCPG5vb3B0PiBlc3TDoSBkZWZpbmlkbyBlbiDCq0RFQl9CVUlMRF9PUFRJT05TwrspLiBMYXMgb3BjaW9uZXMgZGUgIgorI34gInN1c3RpdHVjacOzbiBzZSBwdWVkZW4gdXNhciBwYXJhIGRlZmluaXIgdW4gbml2ZWwgZGUgb3B0aW1pemFjacOzbiBtYXlvciBkZSAiCisjfiAiZm9ybWEgZXhwbMOtY2l0YSwgbyBwYXJhIGV2aXRhciBmYWxsb3MgZGVsIGNvbXBpbGFkb3Igc8OzbG8gZGV0ZWN0YWJsZXMgZW4gIgorI34gImFsZ3Vub3Mgbml2ZWxlcyBkZSBvcHRpbWl6YWNpw7NuIChlbCDDumx0aW1vIG5pdmVsIGRlIG9wdGltaXphY2nDs24gwqtnYW5hwrspLiIKKworI34gbXNnaWQgIkI8Q0ZMQUdTX0FQUEVORD4iCisjfiBtc2dzdHIgIkI8Q0ZMQUdTX0FQUEVORD4iCisKKyN+IG1zZ2lkICIiCisjfiAiT3B0aW1pemF0aW9uIG9wdGlvbnMgYXBwZW5kZWQgdG8gdGhlIGNvbXBpbGVyIGZsYWdzLCB3aGljaCBtdXN0IG5vdCBiZSAiCisjfiAib3ZlcndyaXR0ZW4gYnkgdGhlIHBhY2thZ2UgKG1vc3RseSB1c2VkIHRvIGZvciB0ZXN0IGJ1aWxkcykuIERlZmF1bHQgIgorI34gInZhbHVlOiBlbXB0eS4iCisjfiBtc2dzdHIgIiIKKyN+ICJQdWVkZSBhw7FhZGlyIG9wY2lvbmVzIGRlIG9wdGltaXphY2nDs24gYSBsYXMgb3BjaW9uZXMgKMKrZmxhZ3PCuykgZGUgIgorI34gImNvbXBpbGFjacOzbiwgbGFzIGN1YWxlcyBlbCBwYXF1ZXRlIG5vIGRlYmUgc29icmVlc2NyaWJpciAodXNhZG8gIgorI34gImhhYml0dWFsbWVudGUgZW4gY29uc3RydWNjaW9uZXMgZGUgcHJ1ZWJhKS4gVmFsb3IgcG9yIG9taXNpw7NuOiB2YWPDrW8uIgorCisjfiBtc2dpZCAiU2FtZSBhcyBCPENGTEFHUz4gZm9yIEMrKyBzb3VyY2VzLiIKKyN+IG1zZ3N0ciAiSWd1YWwgcXVlIEI8Q0ZMQUdTPiBwYXJhIGZ1ZW50ZXMgQysrLiIKKworI34gbXNnaWQgIkI8Q1hYRkxBR1NfQVBQRU5EPiIKKyN+IG1zZ3N0ciAiQjxDWFhGTEFHU19BUFBFTkQ+IgorCisjfiBtc2dpZCAiU2FtZSBhcyBCPENGTEFHU19BUFBFTkQ+IGZvciBDKysgc291cmNlcy4iCisjfiBtc2dzdHIgIklndWFsIHF1ZSBCPENGTEFHU19BUFBFTkQ+IHBhcmEgZnVlbnRlcyBDKysuIgorCisjfiBtc2dpZCAiU2FtZSBhcyBCPENGTEFHUz4gZm9yIEZvcnRyYW4gc291cmNlcy4iCisjfiBtc2dzdHIgIklndWFsIHF1ZSBCPENGTEFHUz4gcGFyYSBmdWVudGVzIEZvcnRyYW4uIgorCisjfiBtc2dpZCAiQjxGRkxBR1NfQVBQRU5EPiIKKyN+IG1zZ3N0ciAiQjxGRkxBR1NfQVBQRU5EPiIKKworI34gbXNnaWQgIlNhbWUgYXMgQjxDRkxBR1NfQVBQRU5EPiBmb3IgRm9ydHJhbiBzb3VyY2VzLiIKKyN+IG1zZ3N0ciAiSWd1YWwgcXVlIEI8Q0ZMQUdTX0FQUEVORD4gcGFyYSBmdWVudGVzIEZvcnRyYW4uIgorCisjfiBtc2dpZCAiIgorI34gIlByZXByb2Nlc3NvciBmbGFncyB3aGljaCBhcmUgcGFzc2VkIHRvIHRoZSBEZWJpYW4gYnVpbGQgc3lzdGVtIGFuZCBjYW4vIgorI34gInNob3VsZCBiZSBvdmVycmlkZGVuIGJ5IHRoZSBwYWNrYWdlIGJ1aWxkIGlmIG5lZWRlZCAoZGVmYXVsdDogZW1wdHkpLiAiCisjfiAiVGhpcyBtYWNybyBpcyBzZWxkb20gdXNlZCAobW9zdCBidWlsZCBzeXN0ZW1zIGp1c3QgdXNlIEI8Q0ZMQUdTPiBpbnN0ZWFkICIKKyN+ICJvZiBCPENQUEZMQUdTPikuIgorI34gbXNnc3RyICIiCisjfiAiTGFzIG9wY2lvbmVzIGRlIHByZS1wcm9jZXNhbWllbnRvIGludHJvZHVjaWRvcyBhbCBzaXN0ZW1hIGRlIGNvbnN0cnVjY2nDs24gIgorI34gImRlIERlYmlhbiBwdWVkZW4geSBzZSBkZWJlcsOtYW4gYW51bGFyIGVuIGNhc28gZGUgc2VyIG5lY2VzYXJpbyAocG9yICIKKyN+ICJvbWlzacOzbjogdmFjw61vKS4gRXN0YSBtYWNybyBhcGVuYXMgc2UgdXNhIChsYSBtYXlvcsOtYSBkZSBzaXN0ZW1hcyBkZSAiCisjfiAiY29uc3RydWNjacOzbiB1c2FuIEI8Q0ZMQUdTPiBlbiBsdWdhciBkZSBCPENQUEZMQUdTPikuIgorCisjfiBtc2dpZCAiQjxDUFBGTEFHU19BUFBFTkQ+IgorI34gbXNnc3RyICJCPENQUEZMQUdTX0FQUEVORD4iCisKKyN+IG1zZ2lkICIiCisjfiAiUHJlcHJvY2Vzc29yIGZsYWdzIGFwcGVuZGVkIHRvIHRoZSBwcmVwcm9jZXNzb3IgZmxhZ3MsIHdoaWNoIG11c3Qgbm90IGJlICIKKyN+ICJvdmVyd3JpdHRlbiBieSB0aGUgcGFja2FnZSAobW9zdGx5IHVzZWQgdG8gZm9yIHRlc3QgYnVpbGRzKS4gRGVmYXVsdCAiCisjfiAidmFsdWU6IGVtcHR5LiIKKyN+IG1zZ3N0ciAiIgorI34gIk9wY2lvbmVzIGRlIHByZS1wcm9jZXNhbWllbnRvIGHDsWFkaWRhcyBhbCBmaW5hbCBkZSBsYXMgb3BjaW9uZXMgZGUgcHJlLSIKKyN+ICJwcm9jZXNhbWllbnRvLCBsYXMgY3VhbGVzIGVsIHBhcXVldGUgbm8gZGViZSBzb2JyZWVzY3JpYmlyICh1c2FkbyAiCisjfiAiaGFiaXR1YWxtZW50ZSBlbiBjb25zdHJ1Y2Npb25lcyBkZSBwcnVlYmEpLiBWYWxvciBwb3Igb21pc2nDs246IHZhY8Otby4iCisKKyN+IG1zZ2lkICJCPExERkxBR1NfQVBQRU5EPiIKKyN+IG1zZ3N0ciAiQjxMREZMQUdTX0FQUEVORD4iCisKKyN+IG1zZ2lkICIiCisjfiAiT3B0aW1pemF0aW9uIG9wdGlvbnMgYXBwZW5kZWQgdG8gdGhlIGNvbXBpbGVyIGZsYWdzIHdoZW4gbGlua2luZyBjb2RlLCAiCisjfiAid2hpY2ggbXVzdCBub3QgYmUgb3ZlcndyaXR0ZW4gYnkgdGhlIHBhY2thZ2UgKG1vc3RseSB1c2VkIHRvIGZvciB0ZXN0ICIKKyN+ICJidWlsZHMpLiBEZWZhdWx0IHZhbHVlOiBlbXB0eS4iCisjfiBtc2dzdHIgIiIKKyN+ICJPcGNpb25lcyBkZSBvcHRpbWl6YWNpw7NuIGHDsWFkaWRhcyBhIGxhcyBvcGNpb25lcyBkZWwgY29tcGlsYWRvciBhbCAiCisjfiAiZW5sYXphciBjw7NkaWdvLCBxdcOpIGVsIHBhcXVldGUgbm8gZGViZSBzb2JyZWVzY3JpYmlyICh1c2FkbyBoYWJpdHVhbG1lbnRlICIKKyN+ICJlbiBjb25zdHJ1Y2Npb25lcyBkZSBwcnVlYmEpLiBWYWxvciBwb3Igb21pc2nDs246IHZhY8Otby4iCisKKyN+IG1zZ2lkICIyMDA5LTAxLTA3IgorI34gbXNnc3RyICI3IGRlIEVuZXJvIGRlIDIwMDkiCisKKyN+IG1zZ2lkICJCPC0tbGljZW5zZT4sIEI8LS1saWNlbmNlPiIKKyN+IG1zZ3N0ciAiQjwtLWxpY2Vuc2U+LCBCPC0tbGljZW5jZT4iCisKKyN+IG1zZ2lkICJTaG93IHRoZSBjb3B5cmlnaHQgbGljZW5zaW5nIHRlcm1zIGFuZCBleGl0LiIKKyN+IG1zZ3N0ciAiTXVlc3RyYSBsb3MgdMOpcm1pbm9zIGRlIGxhIGxpY2VuY2lhIGRlIGRlcmVjaG9zIGRlIGF1dG9yIHkgY2llcnJhLiIKKworI34gbXNnaWQgIiIKKyN+ICJSZWFkIHN1YnN0aXR1dGlvbiB2YXJpYWJsZXMgaW4gSTxzdWJzdHZhcnNmaWxlPjsgdGhlIGRlZmF1bHQgaXMgQjxkZWJpYW4vIgorI34gInN1YnN0dmFycz4uIgorI34gbXNnc3RyICIiCisjfiAiTGVlIGxhcyB2YXJpYWJsZXMgZGUgc3VzdGl0dWNpw7NuIGRlc2RlIEk8ZmljaGVyby12YXJpYWJsZXMtc3VzdD47IGVsICIKKyN+ICJ2YWxvciBwb3Igb21pc2nDs24gZXMgQjxkZWJpYW4vc3Vic3R2YXJzPi4iCisKKyN+IG1zZ2lkICJCPC1sPiwgQjwtLWxpY2Vuc2U+IgorI34gbXNnc3RyICJCPC1sPiwgQjwtLWxpY2Vuc2U+IgorCisjfiBtc2dpZCAiaW5jbHVkZSBhbGwgY2hhbmdlcy4iCisjfiBtc2dzdHIgIkluY2x1eWUgdG9kb3MgbG9zIGNhbWJpb3MuIgorCisjfiBtc2dpZCAiMjAwOS0wOS0wNiIKKyN+IG1zZ3N0ciAiNiBkZSBTZXB0aWVtYnJlIGRlIDIwMDkiCisKKyN+IG1zZ2lkICJCPC1JPltJPGZpbGUtcGF0dGVybj5dIgorI34gbXNnc3RyICJCPC1JPltJPHBhdHLDs24tZmljaGVybz5dIgorCisjfiBtc2dpZCAiMjAwOS0wOC0yMCIKKyN+IG1zZ3N0ciAiMjAgZGUgQWdvc3RvIGRlIDIwMDkiCisKKyN+IG1zZ2lkICJCPC0tbGljZW5jZT58QjwtLWxpY2Vuc2U+IgorI34gbXNnc3RyICJCPC0tbGljZW5jZT58QjwtLWxpY2Vuc2U+IgorCisjfiBtc2dpZCAiIgorI34gIkRpc3BsYXlzIHRoZSBCPGRzZWxlY3Q+IGNvcHlyaWdodCBhbmQgbGljZW5zZSBpbmZvcm1hdGlvbiBhbmQgZXhpdHMgIgorI34gInN1Y2Nlc3NmdWxseS4iCisjfiBtc2dzdHIgIiIKKyN+ICJNdWVzdHJhIGVuIHBhbnRhbGxhIGxvcyBkZXJlY2hvcyBkZSBhdXRvciBkZSBCPGRzZWxlY3Q+IHkgbGEgaW5mb3JtYWNpw7NuICIKKyN+ICJkZSBsYSBsaWNlbmNpYSwgeSBjaWVycmEgY29uIMOpeGl0by4iCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9wby9mci5hZGQgYi9kcGtnLTEuMTYuMS4xL21hbi9wby9mci5hZGQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTlkNzljNgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL3BvL2ZyLmFkZApAQCAtMCwwICsxLDYgQEAKK1BPNEEtSEVBREVSOm1vZGU9YWZ0ZXI7cG9zaXRpb249XlwuVEg7YmVnaW5ib3VuZGFyeT1GYWtlUG80YUJvdW5kYXJ5CisuU0ggVFJBRFVDVElPTgorQXJpZWwgVkFSREkgPGFyaWVsLnZhcmRpQGZyZWVzYmVlLmZyPiwgMjAwMi4KK1BoaWxpcHBlIEJhdGFpbGxlciwgMjAwNi4KK05pY29sYXMgRnJhbsOnb2lzLCAyMDA2LgorVmV1aWxsZXogc2lnbmFsZXIgdG91dGUgZXJyZXVyIMOgIDxkZWJpYW5cLWwxMG5cLWZyZW5jaEBsaXN0cy5kZWJpYW4ub3JnPi4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL3BvL2ZyLnBvIGIvZHBrZy0xLjE2LjEuMS9tYW4vcG8vZnIucG8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYmFkN2RjZAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL3BvL2ZyLnBvCkBAIC0wLDAgKzEsMjE1MjQgQEAKKyMgRnJlbmNoIHRyYW5zbGF0aW9ucyBmb3IgdGhlIGRwa2cncyBtYW5wYWdlcy4KKyMgVHJhZHVjdGlvbiBmcmFuw6dhaXNlIGRlcyBwYWdlcyBkZSBtYW51ZWwgZGUgZHBrZy4KKyMKKyMgUGhpbGlwcGUgQmF0YWlsbGVyIDxwaGlsaXBwZS5iYXRhaWxsZXJAZnJlZS5mcj4sIDIwMDUsIDIwMDYuCisjIE5pY29sYXMgRnJhbsOnb2lzIDxuaWNvbGFzLmZyYW5jb2lzQGNlbnRyYWxpZW5zLm5ldD4sIDIwMDYsIDIwMDcuCisjIEZsb3JlbnQgVVNTRUlMIDxzd2lpcDgxQGZyZWUuZnI+LCAyMDA4LgorIyBDaHJpc3RpYW4gUGVycmllciA8YnVidWxsZUBkZWJpYW4ub3JnPiwgMjAwOSwgMjAxMCwgMjAxMS4KK21zZ2lkICIiCittc2dzdHIgIiIKKyJQcm9qZWN0LUlkLVZlcnNpb246IGRwa2cgbWFuIHBhZ2VzXG4iCisiUE9ULUNyZWF0aW9uLURhdGU6IDIwMTEtMTAtMTQgMDc6MTErMDMwMFxuIgorIlBPLVJldmlzaW9uLURhdGU6IDIwMTEtMDctMzEgMjI6MDQrMDIwMFxuIgorIkxhc3QtVHJhbnNsYXRvcjogQ2hyaXN0aWFuIFBlcnJpZXIgPGJ1YnVsbGVAZGViaWFuLm9yZz5cbiIKKyJMYW5ndWFnZS1UZWFtOiBGcmVuY2ggPGRlYmlhbi1sMTBuLWZyZW5jaEBsaXN0cy5kZWJpYW4ub3JnPlxuIgorIkxhbmd1YWdlOiBmclxuIgorIk1JTUUtVmVyc2lvbjogMS4wXG4iCisiQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PVVURi04XG4iCisiQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdFxuIgorIlgtR2VuZXJhdG9yOiBMb2thbGl6ZSAxLjJcbiIKKyJQbHVyYWwtRm9ybXM6IG5wbHVyYWxzPTI7IHBsdXJhbD0obiA+IDEpO1xuIgorCisjLiB0eXBlOiBUSAorIzogZGViLjU6MQorIywgbm8td3JhcAorbXNnaWQgImRlYiIKK21zZ3N0ciAiZGViIgorCisjLiB0eXBlOiBUSAorIzogZGViLjU6MSBkZWItY29udHJvbC41OjMgZGViLXNyYy1jb250cm9sLjU6MyBkZWItdmVyc2lvbi41OjUgZGViLW9sZC41OjEKKyM6IGRlYi1vdmVycmlkZS41OjE1IGRlYi1zeW1ib2xzLjU6MiBkZWItdHJpZ2dlcnMuNToxIGRwa2cuMToxCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEgZHBrZy1idWlsZHBhY2thZ2UuMToxIGRwa2ctZGViLjE6MSBkcGtnLWRpdmVydC44OjEKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjEgZHBrZy1nZW5jb250cm9sLjE6MSBkcGtnLWdlbnN5bWJvbHMuMToyCisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjEgZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMToxIGRwa2ctbmFtZS4xOjYKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxIGRwa2ctcXVlcnkuMToxIGRwa2ctc2NhbnBhY2thZ2VzLjE6MTUKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMToxIGRwa2ctc2hsaWJkZXBzLjE6MSBkcGtnLXNvdXJjZS4xOjIgZHBrZy10cmlnZ2VyLjE6MQorIzogZHNlbGVjdC4xOjEgdXBkYXRlLWFsdGVybmF0aXZlcy44OjgKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiMjAxMS0wNy0wNCIKK21zZ2lkICIyMDExLTA4LTE0IgorbXNnc3RyICIwNy0wNC0yMDExIgorCisjLiB0eXBlOiBUSAorIzogZGViLjU6MSBkZWItY29udHJvbC41OjMgZGViLXNyYy1jb250cm9sLjU6MyBkZWItc3BsaXQuNToxIGRlYi12ZXJzaW9uLjU6NQorIzogZGViLW9sZC41OjEgZGViLW92ZXJyaWRlLjU6MTUgZGViLWV4dHJhLW92ZXJyaWRlLjU6MSBkZWItc2hsaWJzLjU6MTYKKyM6IGRlYi1zdWJzdHZhcnMuNToyIGRlYi1zeW1ib2xzLjU6MiBkZWItdHJpZ2dlcnMuNToxIGRwa2cuMToxCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEgZHBrZy5jZmcuNToxIGRwa2ctYnVpbGRmbGFncy4xOjEKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MSBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6MSBkcGtnLWRpc3RhZGRmaWxlLjE6MQorIzogZHBrZy1kZWIuMToxIGRwa2ctZGl2ZXJ0Ljg6MSBkcGtnLWdlbmNoYW5nZXMuMToxIGRwa2ctZ2VuY29udHJvbC4xOjEKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjIgZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxIGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6MQorIzogZHBrZy1uYW1lLjE6NiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MSBkcGtnLXF1ZXJ5LjE6MSBkcGtnLXNjYW5wYWNrYWdlcy4xOjE1CisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6MSBkcGtnLXNobGliZGVwcy4xOjEgZHBrZy1zb3VyY2UuMToyIGRwa2ctc3BsaXQuMToyCisjOiBkcGtnLXRyaWdnZXIuMToxIGRwa2ctdmVuZG9yLjE6MSBkc2VsZWN0LjE6MSBkc2VsZWN0LmNmZy41OjEKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MSB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6OAorIywgbm8td3JhcAorbXNnaWQgIkRlYmlhbiBQcm9qZWN0IgorbXNnc3RyICJQcm9qZXQgRGViaWFuIgorCisjLiB0eXBlOiBUSAorIzogZGViLjU6MSBkZWItY29udHJvbC41OjMgZGViLXNyYy1jb250cm9sLjU6MyBkZWItc3BsaXQuNToxIGRlYi12ZXJzaW9uLjU6NQorIzogZGViLW9sZC41OjEgZHNlbGVjdC4xOjEKKyMsIG5vLXdyYXAKK21zZ2lkICJEZWJpYW4iCittc2dzdHIgIkRlYmlhbiIKKworIy4gdHlwZTogU0gKKyM6IGRlYi41OjIgZGViLWNvbnRyb2wuNTo0IGRlYi1zcmMtY29udHJvbC41OjQgZGViLXNwbGl0LjU6MiBkZWItdmVyc2lvbi41OjYKKyM6IGRlYi1vbGQuNToyIGRlYi1vdmVycmlkZS41OjE2IGRlYi1leHRyYS1vdmVycmlkZS41OjIgZGViLXNobGlicy41OjE3CisjOiBkZWItc3Vic3R2YXJzLjU6MyBkZWItc3ltYm9scy41OjMgZGViLXRyaWdnZXJzLjU6MiBkcGtnLjE6MgorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyIGRwa2cuY2ZnLjU6MiBkcGtnLWJ1aWxkZmxhZ3MuMToyCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIgZHBrZy1jaGVja2J1aWxkZGVwcy4xOjIgZHBrZy1kaXN0YWRkZmlsZS4xOjIKKyM6IGRwa2ctZGViLjE6MiBkcGtnLWRpdmVydC44OjIgZHBrZy1nZW5jaGFuZ2VzLjE6MiBkcGtnLWdlbmNvbnRyb2wuMToyCisjOiBkcGtnLWdlbnN5bWJvbHMuMTozIGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjIKKyM6IGRwa2ctbmFtZS4xOjcgZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjIgZHBrZy1xdWVyeS4xOjIgZHBrZy1zY2FucGFja2FnZXMuMToxNgorIzogZHBrZy1zY2Fuc291cmNlcy4xOjIgZHBrZy1zaGxpYmRlcHMuMToyIGRwa2ctc291cmNlLjE6MyBkcGtnLXNwbGl0LjE6MworIzogZHBrZy1zdGF0b3ZlcnJpZGUuODoyIGRwa2ctdHJpZ2dlci4xOjIgZHBrZy12ZW5kb3IuMToyIGRzZWxlY3QuMToyCisjOiBkc2VsZWN0LmNmZy41OjIgc3RhcnQtc3RvcC1kYWVtb24uODoyIHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo5CisjLCBuby13cmFwCittc2dpZCAiTkFNRSIKK21zZ3N0ciAiTk9NIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWIuNTo0Cittc2dpZCAiZGViIC0gRGViaWFuIGJpbmFyeSBwYWNrYWdlIGZvcm1hdCIKK21zZ3N0ciAiZGViIC0gRm9ybWF0IGRlcyBwYXF1ZXRzIGJpbmFpcmVzIERlYmlhbiIKKworIy4gdHlwZTogU0gKKyM6IGRlYi41OjQgZGViLWNvbnRyb2wuNTo3IGRlYi1zcmMtY29udHJvbC41OjcgZGViLXNwbGl0LjU6NCBkZWItdmVyc2lvbi41OjkKKyM6IGRlYi1vbGQuNTo1IGRlYi1vdmVycmlkZS41OjE5IGRlYi1leHRyYS1vdmVycmlkZS41OjUgZGViLXN1YnN0dmFycy41OjYKKyM6IGRlYi1zeW1ib2xzLjU6NiBkZWItdHJpZ2dlcnMuNTo1IGRwa2cuMTo1IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NQorIzogZHBrZy1idWlsZGZsYWdzLjE6NSBkcGtnLWJ1aWxkcGFja2FnZS4xOjUgZHBrZy1jaGVja2J1aWxkZGVwcy4xOjUKKyM6IGRwa2ctZGlzdGFkZGZpbGUuMTo1IGRwa2ctZGViLjE6NSBkcGtnLWRpdmVydC44OjUgZHBrZy1nZW5jaGFuZ2VzLjE6NQorIzogZHBrZy1nZW5jb250cm9sLjE6NSBkcGtnLWdlbnN5bWJvbHMuMTo2IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6NQorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTo1IGRwa2ctbmFtZS4xOjEwIGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo1CisjOiBkcGtnLXF1ZXJ5LjE6NSBkcGtnLXNjYW5wYWNrYWdlcy4xOjE5IGRwa2ctc2NhbnNvdXJjZXMuMTo1CisjOiBkcGtnLXNobGliZGVwcy4xOjUgZHBrZy1zb3VyY2UuMTo2IGRwa2ctc3BsaXQuMTo2IGRwa2ctc3RhdG92ZXJyaWRlLjg6NQorIzogZHBrZy10cmlnZ2VyLjE6NSBkcGtnLXZlbmRvci4xOjUgZHNlbGVjdC4xOjUgc3RhcnQtc3RvcC1kYWVtb24uODo1CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTIKKyMsIG5vLXdyYXAKK21zZ2lkICJTWU5PUFNJUyIKK21zZ3N0ciAiU1lOT1BTSVMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi41OjYgZGViLXNwbGl0LjU6NiBkZWItb2xkLjU6NworbXNnaWQgIkk8ZmlsZW5hbWU+QjwuZGViPiIKK21zZ3N0ciAiSTxub20tZHUtZmljaGllci5kZWI+IgorCisjLiB0eXBlOiBTSAorIzogZGViLjU6NiBkZWItY29udHJvbC41OjEwIGRlYi1zcmMtY29udHJvbC41OjEwIGRlYi1zcGxpdC41OjYKKyM6IGRlYi12ZXJzaW9uLjU6MTEgZGViLW9sZC41OjggZGViLW92ZXJyaWRlLjU6MjIgZGViLWV4dHJhLW92ZXJyaWRlLjU6OAorIzogZGViLXNobGlicy41OjIwIGRlYi1zdWJzdHZhcnMuNTo5IGRlYi1zeW1ib2xzLjU6OSBkZWItdHJpZ2dlcnMuNTo4CisjOiBkcGtnLjE6MTkgZHBrZy1hcmNoaXRlY3R1cmUuMToxMCBkcGtnLmNmZy41OjUgZHBrZy1idWlsZGZsYWdzLjE6OQorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo5IGRwa2ctY2hlY2tidWlsZGRlcHMuMToxMCBkcGtnLWRpc3RhZGRmaWxlLjE6OQorIzogZHBrZy1kZWIuMTo5IGRwa2ctZGl2ZXJ0Ljg6MTAgZHBrZy1nZW5jaGFuZ2VzLjE6MTAgZHBrZy1nZW5jb250cm9sLjE6OQorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTAgZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxNSBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjkKKyM6IGRwa2ctbmFtZS4xOjE2IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo5IGRwa2ctcXVlcnkuMTo5CisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjI3IGRwa2ctc2NhbnNvdXJjZXMuMToxMyBkcGtnLXNobGliZGVwcy4xOjkKKyM6IGRwa2ctc291cmNlLjE6MTAgZHBrZy1zcGxpdC4xOjEwIGRwa2ctc3RhdG92ZXJyaWRlLjg6OSBkcGtnLXRyaWdnZXIuMToxMgorIzogZHBrZy12ZW5kb3IuMTo5IGRzZWxlY3QuMTo5IGRzZWxlY3QuY2ZnLjU6NSBzdGFydC1zdG9wLWRhZW1vbi44OjkKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNgorIywgbm8td3JhcAorbXNnaWQgIkRFU0NSSVBUSU9OIgorbXNnc3RyICJERVNDUklQVElPTiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLjU6MTIKK21zZ2lkICIiCisiVGhlIEI8LmRlYj4gZm9ybWF0IGlzIHRoZSBEZWJpYW4gYmluYXJ5IHBhY2thZ2UgZmlsZSBmb3JtYXQuIEl0IGlzICIKKyJ1bmRlcnN0b29kIGJ5IGRwa2cgMC45My43NiBhbmQgbGF0ZXIsIGFuZCBpcyBnZW5lcmF0ZWQgYnkgZGVmYXVsdCBieSBhbGwgIgorInZlcnNpb25zIG9mIGRwa2cgc2luY2UgMS4yLjAgYW5kIGFsbCBpMzg2L0VMRiB2ZXJzaW9ucyBzaW5jZSAxLjEuMWVsZi4iCittc2dzdHIgIiIKKyJMZSBmb3JtYXQgQjwuZGViPiBlc3QgbGUgZm9ybWF0IGRlcyBwYXF1ZXRzIGJpbmFpcmVzIGRlIERlYmlhbi4gSWwgZXN0ICIKKyJjb21wYXRpYmxlIGF2ZWMgbGVzIHZlcnNpb25zIDAuOTMuNzYgZXQgdWx0w6lyaWV1cmVzIGRlIGRwa2csIGV0IGlsIGVzdCAiCisiZ8OpbsOpcsOpIHBhciBkw6lmYXV0IHBhciB0b3V0ZXMgbGVzIHZlcnNpb25zIGRlIGRwa2cgZGVwdWlzIGxhIHZlcnNpb24gMS4yLjAgIgorImFpbnNpIHF1ZSB0b3V0ZXMgbGVzIHZlcnNpb25zIGkzODYvRUxGIGRlcHVpcyBsYSB2ZXJzaW9uIDEuMS4xZWxmLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLjU6MTYKK21zZ2lkICIiCisiVGhlIGZvcm1hdCBkZXNjcmliZWQgaGVyZSBpcyB1c2VkIHNpbmNlIERlYmlhbiAwLjkzOyBkZXRhaWxzIG9mIHRoZSBvbGQgIgorImZvcm1hdCBhcmUgZGVzY3JpYmVkIGluIEI8ZGViLW9sZD4oNSkuIgorbXNnc3RyICIiCisiTGUgZm9ybWF0IGTDqWNyaXQgaWNpIGVzdCB1dGlsaXPDqSBkZXB1aXMgbGEgdmVyc2lvbiAwLjkzIGRlIERlYmlhbsKgOyBsZXMgIgorImTDqXRhaWxzIGNvbmNlcm5hbnQgbGUgdmlldXggZm9ybWF0IHNvbnQgY29uc3VsdGFibGVzIGRhbnMgQjxkZWItb2xkPig1KS4iCisKKyMuIHR5cGU6IFNICisjOiBkZWIuNToxNiBkZWItc3BsaXQuNTo5IGRlYi1vbGQuNToxOAorIywgbm8td3JhcAorbXNnaWQgIkZPUk1BVCIKK21zZ3N0ciAiRk9STUFUIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWIuNToyMgorbXNnaWQgIiIKKyJUaGUgZmlsZSBpcyBhbiBCPGFyPiBhcmNoaXZlIHdpdGggYSBtYWdpYyB2YWx1ZSBvZiBCPCFFPGx0PmFyY2hFPGd0Pj4uICBUaGUgIgorImZpbGUgbmFtZXMgbWlnaHQgY29udGFpbiBhIHRyYWlsaW5nIHNsYXNoLiIKK21zZ3N0ciAiIgorIkxlIGZpY2hpZXIgZXN0IHVuZSBhcmNoaXZlIEI8YXI+IGF2ZWMgdW4gbnVtw6lybyBtYWdpcXVlIGRlIEI8IUU8bHQ+YXJjaEU8Z3Q+LiIKKyI+LiBMZXMgbm9tcyBkZSBmaWNoaWVycyBwZXV2ZW50IGNvbXBvcnRlciB1biBjYXJhY3TDqHJlIMKrwqAvwqDCuyBmaW5hbC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi41OjI4Cittc2dpZCAiIgorIlRoZSBCPHRhcj4gYXJjaGl2ZXMgY3VycmVudGx5IGFsbG93ZWQgYXJlLCB0aGUgb2xkLXN0eWxlICh2NykgZm9ybWF0LCB0aGUgIgorInByZS1QT1NJWCB1c3RhciBmb3JtYXQsIGEgc3Vic2V0IG9mIHRoZSBHTlUgZm9ybWF0IChvbmx5IHRoZSBuZXcgc3R5bGUgbG9uZyAiCisicGF0aG5hbWVzIGFuZCBsb25nIGxpbmtuYW1lcywgc3VwcG9ydGVkIHNpbmNlIGRwa2cgMS40LjEuMTcpLCBhbmQgdGhlIFBPU0lYICIKKyJ1c3RhciBmb3JtYXQgKGxvbmcgbmFtZXMgc3VwcG9ydGVkIHNpbmNlIGRwa2cgMS4xNS4wKS4gIFVucmVjb2duaXplZCB0YXIgIgorInR5cGVmbGFncyBhcmUgY29uc2lkZXJlZCBhbiBlcnJvci4iCittc2dzdHIgIiIKKyJMZXMgYXJjaGl2ZXMgQjx0YXI+IGFjdHVlbGxlbWVudCBnw6lyw6llcyBzb250LCBsZSBmb3JtYXQgdjcgZCdvcmlnaW5lLCB0aGUgIgorImZvcm1hdCB1c3RhciBwcsOpLVBPU0lYLCB1biBzb3VzLWVuc2VtYmxlIGR1IGZvcm1hdCBHTlUgKHVuaXF1ZW1lbnQgbGUgIgorIm5vdXZlYXUgZm9ybWF0IGRlIG5vbXMgbG9uZ3MgcG91ciBsZXMgY2hlbWlucyBldCBsZXMgbGllbnMsIGfDqXLDqXMgZGVwdWlzICIKKyJkcGtnIDEuNC4xLjE3KSBldCBsZSBmb3JtYXQgdXN0YXIgUE9TSVggKG5vbXMgbG9uZ3MgZ8OpcsOpcyBkZXB1aXMgZHBrZyAiCisiMS4xNS4wKS4gTGVzIG1hcnF1ZXVycyBkdSB0eXBlICjCq8KgdHlwZWZsYWdzwqDCuykgdGFyIGluY29ubnVzIHByb3ZvcXVlbnQgdW5lICIKKyJlcnJldXIuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWIuNTozOAorbXNnaWQgIiIKKyJUaGUgZmlyc3QgbWVtYmVyIGlzIG5hbWVkIEI8ZGViaWFuLWJpbmFyeT4gYW5kIGNvbnRhaW5zIGEgc2VyaWVzIG9mIGxpbmVzLCAiCisic2VwYXJhdGVkIGJ5IG5ld2xpbmVzLiBDdXJyZW50bHkgb25seSBvbmUgbGluZSBpcyBwcmVzZW50LCB0aGUgZm9ybWF0ICIKKyJ2ZXJzaW9uIG51bWJlciwgQjwyLjA+IGF0IHRoZSB0aW1lIHRoaXMgbWFudWFsIHBhZ2Ugd2FzIHdyaXR0ZW4uICBQcm9ncmFtcyAiCisid2hpY2ggcmVhZCBuZXctZm9ybWF0IGFyY2hpdmVzIHNob3VsZCBiZSBwcmVwYXJlZCBmb3IgdGhlIG1pbm9yIG51bWJlciB0byBiZSAiCisiaW5jcmVhc2VkIGFuZCBuZXcgbGluZXMgdG8gYmUgcHJlc2VudCwgYW5kIHNob3VsZCBpZ25vcmUgdGhlc2UgaWYgdGhpcyBpcyAiCisidGhlIGNhc2UuIgorbXNnc3RyICIiCisiTGUgcHJlbWllciBtZW1icmUgZXN0IG5vbW3DqSBCPGRlYmlhbi1iaW5hcnk+IGV0IGNvbnRpZW50IHVuZSBzdWNjZXNzaW9uIGRlICIKKyJsaWduZXMsIHPDqXBhcsOpZXMgcGFyIGRlcyByZXRvdXJzLWNoYXJpb3QuIFBvdXIgbGUgbW9tZW50LCB1bmUgc2V1bGUgbGlnbmUgIgorImVzdCBwcsOpc2VudGXCoDogbGUgbnVtw6lybyBkZSB2ZXJzaW9uIGR1IGZvcm1hdCwgQjwyLjA+IMOgIGwnaGV1cmUgb8O5IGNlICIKKyJkb2N1bWVudCBhIMOpdMOpIMOpY3JpdC4gTGVzIHByb2dyYW1tZXMgbGlzYW50IGRlcyBhcmNoaXZlcyBEZWJpYW4gcsOpY2VudGVzICIKKyJkb2l2ZW50IMOqdHJlIHByw6lwYXLDqXMgw6AgdW5lIGF1Z21lbnRhdGlvbiBkdSBudW3DqXJvIGRlIHZlcnNpb24gbWluZXVyIGV0IMOgIGxhICIKKyJwcsOpc2VuY2UgZGUgbm91dmVsbGVzIGxpZ25lcywgYWluc2kgcXUnw6AgbGVzIGlnbm9yZXIgcydpbCBsZSBmYXV0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLjU6NDMKK21zZ2lkICIiCisiSWYgdGhlIG1ham9yIG51bWJlciBoYXMgY2hhbmdlZCwgYW4gaW5jb21wYXRpYmxlIGNoYW5nZSBoYXMgYmVlbiBtYWRlIGFuZCAiCisidGhlIHByb2dyYW0gc2hvdWxkIHN0b3AuIElmIGl0IGhhcyBub3QsIHRoZW4gdGhlIHByb2dyYW0gc2hvdWxkIGJlIGFibGUgdG8gIgorInNhZmVseSBjb250aW51ZSwgdW5sZXNzIGl0IGVuY291bnRlcnMgYW4gdW5leHBlY3RlZCBtZW1iZXIgaW4gdGhlIGFyY2hpdmUgIgorIihleGNlcHQgYXQgdGhlIGVuZCksIGFzIGRlc2NyaWJlZCBiZWxvdy4iCittc2dzdHIgIiIKKyJTaSBsZSBudW3DqXJvIGRlIHZlcnNpb24gbWFqZXVyIGEgY2hhbmfDqSwgY2VsYSBzaWduaWZpZSBxdSd1bmUgbW9kaWZpY2F0aW9uICIKKyJlbnRyYcOubmFudCB1bmUgaW5jb21wYXRpYmlsaXTDqSBlbnRyZSBsZXMgdmVyc2lvbnMgYSDDqXTDqSBlZmZlY3R1w6llLCBldCBsZSAiCisicHJvZ3JhbW1lIGRvaXQgYWxvcnMgcydhcnLDqnRlci4gU2kgY2Ugbidlc3QgcGFzIGxlIGNhcywgbGUgcHJvZ3JhbW1lIGRvaXQgIgorIsOqdHJlIGVuIG1lc3VyZSBkZSBjb250aW51ZXIgw6AgdHJhaXRlciBjb3JyZWN0ZW1lbnQgbGUgZmljaGllciwgw6AgbW9pbnMgcXUnaWwgIgorIm5lIHJlbmNvbnRyZSB1biBtZW1icmUgbm9uIHJlY29ubnUgZGFucyBsJ2FyY2hpdmUgKGV4Y2VwdMOpIMOgIGxhIGZpbiBkZSBjZXR0ZSAiCisiZGVybmnDqHJlKSwgY29tbWUgZMOpY3JpdCBjaS1kZXNzb3VzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLjU6NTMKK21zZ2lkICIiCisiVGhlIHNlY29uZCByZXF1aXJlZCBtZW1iZXIgaXMgbmFtZWQgQjxjb250cm9sLnRhci5nej4uICBJdCBpcyBhIGd6aXBwZWQgdGFyICIKKyJhcmNoaXZlIGNvbnRhaW5pbmcgdGhlIHBhY2thZ2UgY29udHJvbCBpbmZvcm1hdGlvbiwgYXMgYSBzZXJpZXMgb2YgcGxhaW4gIgorImZpbGVzLCBvZiB3aGljaCB0aGUgZmlsZSBCPGNvbnRyb2w+IGlzIG1hbmRhdG9yeSBhbmQgY29udGFpbnMgdGhlIGNvcmUgIgorImNvbnRyb2wgaW5mb3JtYXRpb24uIFRoZSBjb250cm9sIHRhcmJhbGwgbWF5IG9wdGlvbmFsbHkgY29udGFpbiBhbiBlbnRyeSBmb3IgIgorImBCPC4+JywgdGhlIGN1cnJlbnQgZGlyZWN0b3J5LiIKK21zZ3N0ciAiIgorIkxlIHNlY29uZCBtZW1icmUgcmVxdWlzIGVzdCBub21tw6kgQjxjb250cm9sLnRhci5nej4uIElsIHMnYWdpdCBkJ3VuZSBhcmNoaXZlICIKKyJ0YXIgY29tcHJlc3PDqWUgZ3LDomNlIMOgIGd6aXAgY29udGVuYW50IGxlcyBpbmZvcm1hdGlvbnMgZGUgY29udHLDtGxlIGR1ICIKKyJwYXF1ZXQsIHNvdXMgbGEgZm9ybWUgZCd1bmUgc8OpcmllIGRlIGZpY2hpZXJzLCBwYXJtaSBsZXNxdWVscyBsZSBmaWNoaWVyICIKKyJCPGNvbnRyb2w+IGVzdCBzdHJpY3RlbWVudCByZXF1aXMgZXQgY29udGllbnQgbGVzIHByaW5jaXBhbGVzIGluZm9ybWF0aW9ucyAiCisiZGUgY29udHLDtGxlLiBMJ2FyY2hpdmUgZGUgY29udHLDtGxlIHBldXQgw6l2ZW50dWVsbGVtZW50IGNvbnRlbmlyIHVuZSBlbnRyw6llICIKKyJwb3VyIMKrwqAuwqDCuywgbGUgcsOpcGVydG9pcmUgY291cmFudC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi41OjYyCittc2dpZCAiIgorIlRoZSB0aGlyZCwgbGFzdCByZXF1aXJlZCBtZW1iZXIgaXMgbmFtZWQgQjxkYXRhLnRhcj4uICBJdCBjb250YWlucyB0aGUgIgorImZpbGVzeXN0ZW0gYXMgYSB0YXIgYXJjaGl2ZSwgZWl0aGVyIG5vdCBjb21wcmVzc2VkIChzdXBwb3J0ZWQgc2luY2UgZHBrZyAiCisiMS4xMC4yNCksIG9yIGNvbXByZXNzZWQgd2l0aCBnemlwICh3aXRoIEI8Lmd6PiBleHRlbnNpb24pLCB4eiAod2l0aCBCPC54ej4gIgorImV4dGVuc2lvbiwgc3VwcG9ydGVkIHNpbmNlIGRwa2cgMS4xNS42KSwgYnppcDIgKHdpdGggQjwuYnoyPiBleHRlbnNpb24sICIKKyJzdXBwb3J0ZWQgc2luY2UgZHBrZyAxLjEwLjI0KSBvciBsem1hICh3aXRoIEI8Lmx6bWE+IGV4dGVuc2lvbiwgc3VwcG9ydGVkICIKKyJzaW5jZSBkcGtnIDEuMTMuMjUpLiIKK21zZ3N0ciAiIgorIkxlIHRyb2lzacOobWUgZXQgZGVybmllciBtZW1icmUgb2JsaWdhdG9pcmUgZXN0IGFwcGVsw6kgQjxkYXRhLnRhcj4uIElsICIKKyJjb250aWVudCBsZSBzeXN0w6htZSBkZSBmaWNoaWVycyBzb3VzIGZvcm1lIGQndW5lIGFyY2hpdmUgdGFyLCBzb2l0IG5vbiAiCisiY29tcHJlc3PDqWUgKGfDqXLDqSBkZXB1aXMgZHBrZyAxLjEwLjI0KSBvdSBjb21wcmVzc8OpIGF2ZWMgZ3ppcCAoYXZlYyBleHRlbnNpb24gIgorIkI8Lmd6PiksIHh6IChhdmVjIGV4dGVuc2lvbnMgQjwueHo+LCBnw6lyw6kgZGVwdWlzIGRwa2cgMS4xNS42KSwgYnppcDIgKGF2ZWMgIgorImV4dGVuc2lvbnMgQjwuYnoyPiwgZ8OpcsOpIGRlcHVpcyBkcGtnIDEuMTAuMjQpIG91IGx6bWEgKGF2ZWMgZXh0ZW5zaW9uIEI8LiIKKyJsem1hPiwgZ8OpcsOpIGRlcHVpcyBkcGtnIDEuMTMuMjUpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLjU6NzMKK21zZ2lkICIiCisiVGhlc2UgbWVtYmVycyBtdXN0IG9jY3VyIGluIHRoaXMgZXhhY3Qgb3JkZXIuIEN1cnJlbnQgaW1wbGVtZW50YXRpb25zIHNob3VsZCAiCisiaWdub3JlIGFueSBhZGRpdGlvbmFsIG1lbWJlcnMgYWZ0ZXIgQjxkYXRhLnRhcj4uICBGdXJ0aGVyIG1lbWJlcnMgbWF5IGJlICIKKyJkZWZpbmVkIGluIHRoZSBmdXR1cmUsIGFuZCAoaWYgcG9zc2libGUpIHdpbGwgYmUgcGxhY2VkIGFmdGVyIHRoZXNlIHRocmVlLiAiCisiQW55IGFkZGl0aW9uYWwgbWVtYmVycyB0aGF0IG1heSBuZWVkIHRvIGJlIGluc2VydGVkIGJlZm9yZSBCPGRhdGEudGFyPiBhbmQgIgorIndoaWNoIHNob3VsZCBiZSBzYWZlbHkgaWdub3JlZCBieSBvbGRlciBwcm9ncmFtcywgd2lsbCBoYXZlIG5hbWVzIHN0YXJ0aW5nICIKKyJ3aXRoIGFuIHVuZGVyc2NvcmUsIGBCPF8+Jy4iCittc2dzdHIgIiIKKyJDZXMgdHJvaXMgbWVtYnJlcyBkb2l2ZW50IGFwcGFyYcOudHJlIGRhbnMgY2V0IG9yZHJlIGV4YWN0LiBMZXMgIgorImltcGzDqW1lbnRhdGlvbnMgYWN0dWVsbGVzIGRldnJhaWVudCBpZ25vcmVyIHRvdXQgbWVtYnJlIGFkZGl0aW9ubmVsIHN1aXZhbnQgIgorIkI8ZGF0YS50YXIuZ3o+LiBEJ2F1dHJlcyBtZW1icmVzIHNlcm9udCDDqXZlbnR1ZWxsZW1lbnQgcHJvcG9zw6lzLCBldCAoc2kgIgorInBvc3NpYmxlKSBzZXJvbnQgcGxhY8OpcyBhcHLDqHMgY2VzIHRyb2lzIGRlcm5pZXJzLiBUb3V0IGF1dHJlIG1lbWJyZSBxdWkgIgorIm7DqWNlc3NpdGVyYSBkJ8OqdHJlIGluc8OpcsOpIGF2YW50IEI8ZGF0YS50YXIuZ3o+IGV0IHF1aSBwb3VycmEgw6p0cmUgaWdub3LDqSAiCisic2FucyBwcm9ibMOobWUgcGFyIGRlcyBwcm9ncmFtbWVzIHBsdXMgYW5jaWVucywgYXVyYSB1biBub20gY29tbWVuw6dhbnQgcGFyIHVuICIKKyJjYXJhY3TDqHJlIGRlIHNvdWxpZ25lbWVudCwgwqvCoEI8Xz7CoMK7LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLjU6NzkKK21zZ2lkICIiCisiVGhvc2UgbmV3IG1lbWJlcnMgd2hpY2ggd29uJ3QgYmUgYWJsZSB0byBiZSBzYWZlbHkgaWdub3JlZCB3aWxsIGJlIGluc2VydGVkICIKKyJiZWZvcmUgQjxkYXRhLnRhcj4gd2l0aCBuYW1lcyBzdGFydGluZyB3aXRoIHNvbWV0aGluZyBvdGhlciB0aGFuICIKKyJ1bmRlcnNjb3Jlcywgb3Igd2lsbCAobW9yZSBsaWtlbHkpIGNhdXNlIHRoZSBtYWpvciB2ZXJzaW9uIG51bWJlciB0byBiZSAiCisiaW5jcmVhc2VkLiIKK21zZ3N0ciAiIgorIkxlcyBub3V2ZWF1eCBtZW1icmVzIHF1aSBuZSBwb3Vycm9udCBwYXMgw6p0cmUgaWdub3LDqXMgc2FucyBjb25zw6lxdWVuY2UgIgorInNlcm9udCBpbnPDqXLDqXMgYXZhbnQgQjxkYXRhLnRhci5nej4gYXZlYyBkZXMgbm9tcyBwcsOpZml4w6lzIHBhciBxdWVscXVlIGNob3NlICIKKyJkJ2F1dHJlIHF1J3VuIGNhcmFjdMOocmUgZGUgc291bGlnbmVtZW50LCBvdSBpbXBsaXF1ZXJvbnQgcGx1cyBwcm9iYWJsZW1lbnQgIgorInVuZSBpbmNyw6ltZW50YXRpb24gZHUgbnVtw6lybyBtYWpldXIgZGUgdmVyc2lvbi4iCisKKyMuIHR5cGU6IFNICisjOiBkZWIuNTo3OSBkZWItY29udHJvbC41OjI3MSBkZWItc3JjLWNvbnRyb2wuNTozMjcgZGViLXNwbGl0LjU6NDkKKyM6IGRlYi12ZXJzaW9uLjU6MTE2IGRlYi1vbGQuNTo1MSBkZWItb3ZlcnJpZGUuNTo2MiBkZWItZXh0cmEtb3ZlcnJpZGUuNTozNworIzogZGViLXNobGlicy41OjYxIGRlYi1zdWJzdHZhcnMuNToxNTQgZGViLXN5bWJvbHMuNTo2MSBkZWItdHJpZ2dlcnMuNTo2NworIzogZHBrZy4xOjc2OCBkcGtnLWFyY2hpdGVjdHVyZS4xOjI5OSBkcGtnLmNmZy41OjIzIGRwa2ctYnVpbGRwYWNrYWdlLjE6MjQ5CisjOiBkcGtnLWRlYi4xOjI1OSBkcGtnLWRpdmVydC44OjEzMiBkcGtnLWdlbnN5bWJvbHMuMTo0NTAgZHBrZy1uYW1lLjE6OTYKKyM6IGRwa2ctcXVlcnkuMToyMjAgZHBrZy1zY2FucGFja2FnZXMuMToxMTAgZHBrZy1zY2Fuc291cmNlcy4xOjcxCisjOiBkcGtnLXNobGliZGVwcy4xOjMyNCBkcGtnLXNvdXJjZS4xOjcyNSBkcGtnLXNwbGl0LjE6MjE3CisjOiBkcGtnLXN0YXRvdmVycmlkZS44Ojg0IGRwa2ctdHJpZ2dlci4xOjY2IGRzZWxlY3QuMTo0NDUgZHNlbGVjdC5jZmcuNToyMworIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjUwOAorIywgbm8td3JhcAorbXNnaWQgIlNFRSBBTFNPIgorbXNnc3RyICJWT0lSIEFVU1NJIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWIuNTo4MgorbXNnaWQgIkI8ZGViLW9sZD4oNSksIEI8ZHBrZy1kZWI+KDEpLCBCPGRlYi1jb250cm9sPig1KS4iCittc2dzdHIgIkI8ZGViLW9sZD4oNSksIEI8ZHBrZy1kZWI+KDEpLCBCPGRlYi1jb250cm9sPig1KS4iCisKKyMuIHR5cGU6IFRICisjOiBkZWItY29udHJvbC41OjMKKyMsIG5vLXdyYXAKK21zZ2lkICJkZWItY29udHJvbCIKK21zZ3N0ciAiZGViLWNvbnRyb2wiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6NgorbXNnaWQgImRlYi1jb250cm9sIC0gRGViaWFuIHBhY2thZ2VzJyBtYXN0ZXIgY29udHJvbCBmaWxlIGZvcm1hdCIKK21zZ3N0ciAiIgorImRlYi1jb250cm9sIC0gRm9ybWF0IGR1IGZpY2hpZXIgcHJpbmNpcGFsIGRlIGNvbnRyw7RsZSBkYW5zIGxlcyBwYXF1ZXRzIERlYmlhbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNTo5IGRlYi1zcmMtY29udHJvbC41OjkKK21zZ2lkICJjb250cm9sIgorbXNnc3RyICJjb250csO0bGUiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MjQKK21zZ2lkICIiCisiRWFjaCBEZWJpYW4gcGFja2FnZSBjb250YWlucyB0aGUgbWFzdGVyIGBjb250cm9sJyBmaWxlLCB3aGljaCBjb250YWlucyBhICIKKyJudW1iZXIgb2YgZmllbGRzLCBvciBjb21tZW50cyB3aGVuIHRoZSBsaW5lIHN0YXJ0cyB3aXRoIEI8JyMnPi4gRWFjaCBmaWVsZCAiCisiYmVnaW5zIHdpdGggYSB0YWcsIHN1Y2ggYXMgQjxQYWNrYWdlPiBvciBCPFZlcnNpb24+IChjYXNlIGluc2Vuc2l0aXZlKSwgIgorImZvbGxvd2VkIGJ5IGEgY29sb24sIGFuZCB0aGUgYm9keSBvZiB0aGUgZmllbGQuICBGaWVsZHMgYXJlIGRlbGltaXRlZCBvbmx5ICIKKyJieSBmaWVsZCB0YWdzLiBJbiBvdGhlciB3b3JkcywgZmllbGQgdGV4dCBtYXkgYmUgbXVsdGlwbGUgbGluZXMgaW4gbGVuZ3RoLCAiCisiYnV0IHRoZSBpbnN0YWxsYXRpb24gdG9vbHMgd2lsbCBnZW5lcmFsbHkgam9pbiBsaW5lcyB3aGVuIHByb2Nlc3NpbmcgdGhlICIKKyJib2R5IG9mIHRoZSBmaWVsZCAoZXhjZXB0IGluIHRoZSBjYXNlIG9mIHRoZSBCPERlc2NyaXB0aW9uPiBmaWVsZCwgc2VlICIKKyJiZWxvdykuIgorbXNnc3RyICIiCisiQ2hhcXVlIHBhcXVldCBEZWJpYW4gcG9zc8OoZGUgdW4gZmljaGllciBwcmluY2lwYWwgZGUgY29udHLDtGxlIHF1aSBjb250aWVudCAiCisidW4gY2VydGFpbiBub21icmUgZGUgY2hhbXBzIG91IGRlIGNvbW1lbnRhaXJlcyBwb3VyIGxlcyBsaWduZXMgY29tbWVuw6dhbnQgIgorInBhciB1biBjYXJhY3TDqHJlIMKrwqBCPCM+wqDCuy4gQ2hhcXVlIGNoYW1wIGNvbW1lbmNlIHBhciB1bmUgw6l0aXF1ZXR0ZSwgdGVsbGUgIgorInF1ZSBCPFBhY2thZ2U+IG91IEI8VmVyc2lvbj4gKGxhIGNhc3NlIG4naW1wb3J0ZSBwYXMpLCBzdWl2aWUgZCd1biDCq8KgOsKgwrssIGV0ICIKKyJkdSBjb250ZW51IGR1IGNoYW1wLiBMZXMgY2hhbXBzIHNvbnQgc8OpcGFyw6lzIHNldWxlbWVudCBwYXIgZGVzIMOpdGlxdWV0dGVzIGRlICIKKyJjaGFtcC4gRW4gZCdhdXRyZXMgdGVybWVzLCBsZSBjb250ZW51IGQndW4gY2hhbXAgcGV1dCBzJ8OpdGVuZHJlIHN1ciAiCisicGx1c2lldXJzIGxpZ25lcywgbWFpcyBsZXMgb3V0aWxzIGQnaW5zdGFsbGF0aW9uIGpvaW5kcm9udCBlbiBnw6luw6lyYWwgbGVzICIKKyJsaWduZXMgcGVuZGFudCBsZSB0cmFpdGVtZW50IGR1IGNvbnRlbnUgZHUgY2hhbXAgKHNhdWYgcG91ciBsZSBjaGFtcCAiCisiQjxEZXNjcmlwdGlvbj4sIHZveWV6IGNpLWRlc3NvdXMpLiIKKworIy4gdHlwZTogU0gKKyM6IGRlYi1jb250cm9sLjU6MjUKKyMsIG5vLXdyYXAKK21zZ2lkICJSRVFVSVJFRCBGSUVMRFMiCittc2dzdHIgIkxFUyBDSEFNUFMgRVhJR8OJUyIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MjYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPFBhY2thZ2U6Pkk8IHBhY2thZ2UtbmFtZT4iCittc2dzdHIgIkI8UGFja2FnZTo+STwgbm9tLWR1LXBhcXVldD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MzAKK21zZ2lkICIiCisiVGhlIHZhbHVlIG9mIHRoaXMgZmllbGQgZGV0ZXJtaW5lcyB0aGUgcGFja2FnZSBuYW1lLCBhbmQgaXMgdXNlZCB0byBnZW5lcmF0ZSAiCisiZmlsZSBuYW1lcyBieSBtb3N0IGluc3RhbGxhdGlvbiB0b29scy4iCittc2dzdHIgIiIKKyJMYSB2YWxldXIgZGUgY2UgY2hhbXAgZG9ubmUgbGUgbm9tIGR1IHBhcXVldCwgZXQgbGEgcGx1cGFydCBkZXMgb3V0aWxzICIKKyJkJ2luc3RhbGxhdGlvbiBzJ2VuIHNlcnZlbnQgcG91ciBwcm9kdWlyZSBsZXMgbm9tcyBkZXMgcGFxdWV0cy4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjMwCisjLCBuby13cmFwCittc2dpZCAiQjxWZXJzaW9uOj5JPCB2ZXJzaW9uLXN0cmluZz4iCittc2dzdHIgIkI8VmVyc2lvbjo+IEk8Y2hhw65uZSBwb3VyIGxhIHZlcnNpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjM3Cittc2dpZCAiIgorIlR5cGljYWxseSwgdGhpcyBpcyB0aGUgb3JpZ2luYWwgcGFja2FnZSdzIHZlcnNpb24gbnVtYmVyIGluIHdoYXRldmVyIGZvcm0gIgorInRoZSBwcm9ncmFtJ3MgYXV0aG9yIHVzZXMuIEl0IG1heSBhbHNvIGluY2x1ZGUgYSBEZWJpYW4gcmV2aXNpb24gbnVtYmVyIChmb3IgIgorIm5vbi1uYXRpdmUgcGFja2FnZXMpLiBUaGUgZXhhY3QgZm9ybWF0IGFuZCBzb3J0aW5nIGFsZ29yaXRobSBhcmUgZGVzY3JpYmVkICIKKyJpbiBCPGRlYi12ZXJzaW9uPig1KS4iCittc2dzdHIgIiIKKyJDJ2VzdCBjbGFzc2lxdWVtZW50IGxlIG51bcOpcm8gZGUgdmVyc2lvbiBkdSBwYXF1ZXQgZCdvcmlnaW5lIGRhbnMgbGEgZm9ybWUgIgorImNob2lzaWUgcGFyIGwnYXV0ZXVyIGR1IHByb2dyYW1tZS4gSWwgcGV1dCB5IGF2b2lyIGF1c3NpIHVuIG51bcOpcm8gZGUgIgorInLDqXZpc2lvbiBEZWJpYW4gKHBvdXIgbGVzIHBhcXVldHMgbm9uIG5hdGlmcykuIExlIGZvcm1hdCBleGFjdCBldCAiCisibCdhbGdvcml0aG1lIGRlIHRyaSBzb250IGTDqWNyaXRzIGRhbnMgQjxkZWItdmVyc2lvbj4oNSkuIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNTozNworIywgbm8td3JhcAorbXNnaWQgIkI8TWFpbnRhaW5lcjo+STwgZnVsbG5hbWUtZW1haWw+IgorbXNnc3RyICJCPE1haW50YWluZXI6PiBJPCBub20tY29tcGxldC1hZHJlc3NlLcOpbGVjdHJvbmlxdWU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjQyCittc2dpZCAiIgorIlNob3VsZCBiZSBpbiB0aGUgZm9ybWF0IGBKb2UgQmxvZ2dzIEU8bHQ+amJsb2dnc0Bmb28uY29tRTxndD4nLCBhbmQgaXMgIgorInR5cGljYWxseSB0aGUgcGVyc29uIHdobyBjcmVhdGVkIHRoZSBwYWNrYWdlLCBhcyBvcHBvc2VkIHRvIHRoZSBhdXRob3Igb2YgIgorInRoZSBzb2Z0d2FyZSB0aGF0IHdhcyBwYWNrYWdlZC4iCittc2dzdHIgIiIKKyJMZSBmb3JtYXQgZGUgY2UgY2hhbXAgc2VyYSDCq8KgSmVhbiBEdXBvbnQgRTxsdD5qZHVwb250QGZvby5jb21FPGd0PsKgwrvCoDsgZXQgIgorImMnZXN0IGJpZW4gc8O7ciBsZSBjcsOpYXRldXIgZHUgcGFxdWV0LCBwYXIgb3Bwb3NpdGlvbiDDoCBsJ2F1dGV1ciBkdSBwcm9ncmFtbWUgIgorIm1pcyBlbiBwYXF1ZXQuIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNTo0MgorIywgbm8td3JhcAorbXNnaWQgIkI8RGVzY3JpcHRpb246Pkk8IHNob3J0LWRlc2NyaXB0aW9uPiIKK21zZ3N0ciAiQjxEZXNjcmlwdGlvbjo+IEk8IGRlc2NyaXB0aW9uIGNvdXJ0ZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6NDUKK21zZ2lkICJCPCA+STxsb25nLWRlc2NyaXB0aW9uPiIKK21zZ3N0ciAiQjwgPkk8ZGVzY3JpcHRpb24gbG9uZ3VlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNTo1MQorbXNnaWQgIiIKKyJUaGUgZm9ybWF0IGZvciB0aGUgcGFja2FnZSBkZXNjcmlwdGlvbiBpcyBhIHNob3J0IGJyaWVmIHN1bW1hcnkgb24gdGhlIGZpcnN0ICIKKyJsaW5lIChhZnRlciB0aGUgXCJEZXNjcmlwdGlvblwiIGZpZWxkKS4gVGhlIGZvbGxvd2luZyBsaW5lcyBzaG91bGQgYmUgdXNlZCAiCisiYXMgYSBsb25nZXIsIG1vcmUgZGV0YWlsZWQgZGVzY3JpcHRpb24uIEVhY2ggbGluZSBvZiB0aGUgbG9uZyBkZXNjcmlwdGlvbiAiCisibXVzdCBiZSBwcmVjZWRlZCBieSBhIHNwYWNlLCBhbmQgYmxhbmsgbGluZXMgaW4gdGhlIGxvbmcgZGVzY3JpcHRpb24gbXVzdCAiCisiY29udGFpbiBhIHNpbmdsZSAnLicgZm9sbG93aW5nIHRoZSBwcmVjZWRpbmcgc3BhY2UuIgorbXNnc3RyICIiCisiTGUgZm9ybWF0IGRlIGxhIGRlc2NyaXB0aW9uIGR1IHBhcXVldCBlc3QgdW4gcsOpc3Vtw6kgYnJlZiBzdXIgbGEgcHJlbWnDqHJlICIKKyJsaWduZSAoYXByw6hzIGxlIGNoYW1wIMKrwqBEZXNjcmlwdGlvbsKgwrspLiBMZXMgbGlnbmVzIHN1aXZhbnRlcyBwZXV2ZW50IHNlcnZpciAiCisiw6AgdW5lIGRlc2NyaXB0aW9uIHBsdXMgbG9uZ3VlIGV0IHBsdXMgZMOpdGFpbGzDqWUuIENoYXF1ZSBsaWduZSBkZSBjZXR0ZSAiCisiZGVzY3JpcHRpb24gbG9uZ3VlIGRvaXQgw6p0cmUgcHLDqWPDqWTDqWUgZCd1bmUgZXNwYWNlwqA7IHF1YW5kIGMnZXN0IHVuZSBsaWduZSAiCisiYmxhbmNoZSwgZWxsZSBkb2l0IGNvbnRlbmlyIHVuIHNldWwgwqvCoC7CoMK7IGFwcsOocyBjZXQgZXNwYWNlLiIKKworIy4gdHlwZTogU0gKKyM6IGRlYi1jb250cm9sLjU6NTIKKyMsIG5vLXdyYXAKK21zZ2lkICJPUFRJT05BTCBGSUVMRFMiCittc2dzdHIgIkNIQU1QUyBPUFRJT05ORUxTIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNTo1MyBkZWItc3JjLWNvbnRyb2wuNTo5MAorIywgbm8td3JhcAorbXNnaWQgIkI8U2VjdGlvbjo+STwgc2VjdGlvbj4iCittc2dzdHIgIkI8U2VjdGlvbjo+IEk8IHNlY3Rpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjU4Cittc2dpZCAiIgorIlRoaXMgaXMgYSBnZW5lcmFsIGZpZWxkIHRoYXQgZ2l2ZXMgdGhlIHBhY2thZ2UgYSBjYXRlZ29yeSBiYXNlZCBvbiB0aGUgIgorInNvZnR3YXJlIHRoYXQgaXQgaW5zdGFsbHMuIFNvbWUgY29tbW9uIHNlY3Rpb25zIGFyZSBgdXRpbHMnLCBgbmV0JywgYG1haWwnLCAiCisiYHRleHQnLCBgeDExJyBldGMuIgorbXNnc3RyICIiCisiQydlc3QgdW4gY2hhbXAgZ8OpbsOpcmFsIHF1aSBpbmRpcXVlIGxhIGNhdMOpZ29yaWUgZCd1biBwYXF1ZXTCoDsgY2V0dGUgIgorImNhdMOpZ29yaWUgZXN0IGZvbmTDqWUgc3VyIGxlIHByb2dyYW1tZSBxdWUgY2UgcGFxdWV0IGluc3RhbGxlLiDCq8KgVXRpbHPCoMK7LCAiCisiwqvCoG5ldMKgwrssIMKrwqBtYWlswqDCuywgwqvCoHRleHTCoMK7LCDCq8KgeDExwqDCuywgZXRjLiByZXByw6lzZW50ZW50IHF1ZWxxdWVzIGNhdMOpZ29yaWVzICIKKyJoYWJpdHVlbGxlcy4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjU4IGRlYi1zcmMtY29udHJvbC41Ojk2CisjLCBuby13cmFwCittc2dpZCAiQjxQcmlvcml0eTo+STwgcHJpb3JpdHk+IgorbXNnc3RyICJCPFByaW9yaXR5Oj4gSTxwcmlvcml0w6k+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjYyCittc2dpZCAiIgorIlNldHMgdGhlIGltcG9ydGFuY2Ugb2YgdGhpcyBwYWNrYWdlIGluIHJlbGF0aW9uIHRvIHRoZSBzeXN0ZW0gYXMgYSB3aG9sZS4gICIKKyJDb21tb24gcHJpb3JpdGllcyBhcmUgYHJlcXVpcmVkJywgYHN0YW5kYXJkJywgYG9wdGlvbmFsJywgYGV4dHJhJyBldGMuIgorbXNnc3RyICIiCisiRMOpZmluaXQgbCdpbXBvcnRhbmNlIGR1IHBhcXVldCDDoCBsJ2ludMOpcmlldXIgZHUgc3lzdMOobWUgZ8OpbsOpcmFsLiAiCisiwqvCoFJlcXVpcmVkwqDCuywgwqvCoHN0YW5kYXJkwqDCuywgwqvCoG9wdGlvbmFswqDCuywgwqvCoGV4dHJhwqDCuywgZXRjLiByZXByw6lzZW50ZW50IGRlcyAiCisicHJpb3JpdMOpcyBoYWJpdHVlbGxlcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6NzEgZGViLXNyYy1jb250cm9sLjU6MTA5Cittc2dpZCAiIgorIkluIERlYmlhbiwgdGhlIEI8U2VjdGlvbj4gYW5kIEI8UHJpb3JpdHk+IGZpZWxkcyBoYXZlIGEgZGVmaW5lZCBzZXQgb2YgIgorImFjY2VwdGVkIHZhbHVlcyBiYXNlZCBvbiB0aGUgUG9saWN5IE1hbnVhbC4gIEEgbGlzdCBvZiB0aGVzZSB2YWx1ZXMgY2FuIGJlICIKKyJvYnRhaW5lZCBmcm9tIHRoZSBsYXRlc3QgdmVyc2lvbiBvZiB0aGUgQjxkZWJpYW4tcG9saWN5PiBwYWNrYWdlLiIKK21zZ3N0ciAiIgorIkxlcyBjaGFtcHMgQjxTZWN0aW9uPiBldCBCPFByaW9yaXR5PiBwb3Nzw6hkZW50IHVuIGVuc2VtYmxlIGTDqWZpbmkgZGUgdmFsZXVycyAiCisiYWNjZXB0w6llcywgdGlyw6kgZGUgbGEgQ2hhcnRlIERlYmlhbiAowqvCoERlYmlhbiBQb2xpY3nCoMK7KS4gT24gcGV1dCBlbiB0cm91dmVyICIKKyJ1bmUgbGlzdGUgZGFucyBsYSB2ZXJzaW9uIGxhIHBsdXMgcsOpY2VudGUgZHUgcGFxdWV0IEI8ZGViaWFuLXBvbGljeT4uIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNTo3MSBkZWItc3JjLWNvbnRyb2wuNToyMTYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPEVzc2VudGlhbDo+IEI8eWVzPnxCPG5vPiIKK21zZ3N0ciAiQjxFc3NlbnRpYWw6PiBCPHllcz58Qjxubz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6NzgKK21zZ2lkICIiCisiVGhpcyBmaWVsZCBpcyB1c3VhbGx5IG9ubHkgbmVlZGVkIHdoZW4gdGhlIGFuc3dlciBpcyBCPHllcz4uIEl0IGRlbm90ZXMgYSAiCisicGFja2FnZSB0aGF0IGlzIHJlcXVpcmVkIGZvciBwcm9wZXIgb3BlcmF0aW9uIG9mIHRoZSBzeXN0ZW0uIERwa2cgb3IgYW55ICIKKyJvdGhlciBpbnN0YWxsYXRpb24gdG9vbCB3aWxsIG5vdCBhbGxvdyBhbiBCPEVzc2VudGlhbD4gcGFja2FnZSB0byBiZSByZW1vdmVkICIKKyIoYXQgbGVhc3Qgbm90IHdpdGhvdXQgdXNpbmcgb25lIG9mIHRoZSBmb3JjZSBvcHRpb25zKS4iCittc2dzdHIgIiIKKyJPbiBzZSBzZXJ0IGhhYml0dWVsbGVtZW50IGRlIGNlIGNoYW1wIHVuaXF1ZW1lbnQgc2kgbGEgcsOpcG9uc2UgZXN0IEI8eWVzPi4gIgorIklsIHNpZ25pZmllIHF1ZSBjZSBwYXF1ZXQgZXN0IGV4aWfDqSBwb3VyIHVuIGZvbmN0aW9ubmVtZW50IGNvcnJlY3QgZHUgIgorInN5c3TDqG1lLiBEcGtnIGV0IGxlcyBhdXRyZXMgb3V0aWxzIGQnaW5zdGFsbGF0aW9uIGludGVyZGlzZW50IGxhIHN1cHByZXNzaW9uICIKKyJkJ3VuIHBhcXVldCBCPEVzc2VudGlhbD4gKGR1IG1vaW5zIHRhbnQgcXUndW5lIGRlcyBvcHRpb25zIGRlIGZvcsOnYWdlIG4nZXN0ICIKKyJwYXMgdXRpbGlzw6llKS4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41Ojc4CisjLCBuby13cmFwCittc2dpZCAiQjxBcmNoaXRlY3R1cmU6PiBJPGFyY2g+fEI8YWxsPiIKK21zZ3N0ciAiQjxBcmNoaXRlY3R1cmU6PiBJPGFyY2g+fEI8YWxsPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNTo4NgorbXNnaWQgIiIKKyJUaGUgYXJjaGl0ZWN0dXJlIHNwZWNpZmllcyB3aGljaCB0eXBlIG9mIGhhcmR3YXJlIHRoaXMgcGFja2FnZSB3YXMgY29tcGlsZWQgIgorImZvci4gQ29tbW9uIGFyY2hpdGVjdHVyZXMgYXJlIGBpMzg2JywgYG02OGsnLCBgc3BhcmMnLCBgYWxwaGEnLCBgcG93ZXJwYycgIgorImV0Yy4gTm90ZSB0aGF0IHRoZSBCPGFsbD4gb3B0aW9uIGlzIG1lYW50IGZvciBwYWNrYWdlcyB0aGF0IGFyZSBhcmNoaXRlY3R1cmUgIgorImluZGVwZW5kZW50LiBTb21lIGV4YW1wbGVzIG9mIHRoaXMgYXJlIHNoZWxsIGFuZCBQZXJsIHNjcmlwdHMsIGFuZCAiCisiZG9jdW1lbnRhdGlvbi4iCittc2dzdHIgIiIKKyJMJ2FyY2hpdGVjdHVyZSBwcsOpY2lzZSBwb3VyIHF1ZWwgdHlwZSBkZSBtYXTDqXJpZWwgbGUgcGFxdWV0IGEgw6l0w6kgY29tcGlsw6kuICIKKyJWb2ljaSBxdWVscXVlcyBhcmNoaXRlY3R1cmVzIGhhYml0dWVsbGVzwqA6IMKrwqBpMzg2wqDCuywgwqvCoG02OGvCoMK7LCDCq8Kgc3BhcmPCoMK7LCAiCisiwqvCoGFscGhhwqDCuywgwqvCoHBvd2VycGPCoMK7LCBldGMuIFJlbWFycXVleiBxdWUgbCdvcHRpb24gQjxhbGw+IHNpZ25pZmllIHF1ZSBsZSAiCisicGFxdWV0IGVzdCBpbmTDqXBlbmRhbnQgZGUgdG91dGUgYXJjaGl0ZWN0dXJlLiBMZXMgc2NyaXB0cyBzaGVsbCBvdSBQZXJsLCAiCisiYWluc2kgcXVlIGxhIGRvY3VtZW50YXRpb24gc29udCBkYW5zIGNlIGNhcy4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41Ojg2IGRlYi1zcmMtY29udHJvbC41Ojg1CisjLCBuby13cmFwCittc2dpZCAiQjxPcmlnaW46Pkk8IG5hbWU+IgorbXNnc3RyICJCPE9yaWdpbjo+IEk8IG5vbT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6ODkKK21zZ2lkICJUaGUgbmFtZSBvZiB0aGUgZGlzdHJpYnV0aW9uIHRoaXMgcGFja2FnZSBpcyBvcmlnaW5hdGluZyBmcm9tLiIKK21zZ3N0ciAiTm9tIGRlIGxhIGRpc3RyaWJ1dGlvbiBkb250IGNlIHBhcXVldCBwcm92aWVudC4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41Ojg5IGRlYi1zcmMtY29udHJvbC41OjY2CisjLCBuby13cmFwCittc2dpZCAiQjxCdWdzOj5JPCB1cmw+IgorbXNnc3RyICJCPEJ1Z3M6PiBJPCBVUkw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41Ojk0Cittc2dpZCAiIgorIlRoZSBJPHVybD4gb2YgdGhlIGJ1ZyB0cmFja2luZyBzeXN0ZW0gZm9yIHRoaXMgcGFja2FnZS4gVGhlIGN1cnJlbnQgdXNlZCAiCisiZm9ybWF0IGlzIEk8YnRzLXR5cGU+Qjw6Ly8+STxidHMtYWRkcmVzcz4sIGxpa2UgQjxkZWJidWdzOi8vYnVncy5kZWJpYW4ub3JnPi4iCittc2dzdHIgIiIKKyJJPHVybD5VUkwgZHUgc3lzdMOobWUgZGUgc3VpdmkgZGUgYm9ndWVzIChCVFMpIGRlIGNlIHBhcXVldC4gTGUgZm9ybWF0ICIKKyJ1dGlsaXPDqSBlc3QgSTx0eXBlX2RlX2J0cz5CPDovLz5JPGFkcmVzc2VfZHVfYnRzPiwgcGFyIGV4ZW1wbGUgQjxkZWJidWdzOi8vIgorImJ1Z3MuZGViaWFuLm9yZz4uIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNTo5NCBkZWItc3JjLWNvbnRyb2wuNTo2MgorIywgbm8td3JhcAorbXNnaWQgIkI8SG9tZXBhZ2U6Pkk8IHVybD4iCittc2dzdHIgIkI8SG9tZXBhZ2U6Pkk8IFVSTD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6OTcKK21zZ2lkICJUaGUgdXBzdHJlYW0gcHJvamVjdCBob21lIHBhZ2UgSTx1cmw+LiIKK21zZ3N0ciAiSTxVUkw+IGRlIGxhIHBhZ2UgZCdhY2N1ZWlsIGR1IHByb2pldCBhbW9udC4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41Ojk3IGRlYi1zcmMtY29udHJvbC41OjIyMgorIywgbm8td3JhcAorbXNnaWQgIkI8VGFnOj5JPCB0YWctbGlzdD4iCittc2dzdHIgIkI8VGFnOj4gSTxsaXN0ZSBkJ8OpdGlxdWV0dGVzPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToxMDEKK21zZ2lkICIiCisiTGlzdCBvZiB0YWdzIGRlc2NyaWJpbmcgdGhlIHF1YWxpdGllcyBvZiB0aGUgcGFja2FnZS4gVGhlIGRlc2NyaXB0aW9uIGFuZCAiCisibGlzdCBvZiBzdXBwb3J0ZWQgdGFncyBjYW4gYmUgZm91bmQgaW4gdGhlIEI8ZGVidGFncz4gcGFja2FnZS4iCittc2dzdHIgIiIKKyJMaXN0ZSBkJ8OpdGlxdWV0dGVzIGTDqWNyaXZhbnQgbGVzIHF1YWxpdMOpcyBkdSBwYXF1ZXQuIExhIGRlc2NyaXB0aW9uIGV0IGxhICIKKyJsaXN0ZSBkZXMgw6l0aXF1ZXR0ZXMgKMKrwqB0YWdzwqDCuykgZ8OpcsOpZXMgcGV1dCDDqnRyZSB0cm91dsOpZSBkYW5zIGxlIHBhcXVldCAiCisiQjxkZWJ0YWdzPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjEwMSBkZWItc3JjLWNvbnRyb2wuNToyMTkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPE11bHRpLUFyY2g6PiBCPHNhbWU+fEI8Zm9yZWlnbj58QjxhbGxvd2VkPiIKK21zZ3N0ciAiQjxNdWx0aS1BcmNoOj4gQjxzYW1lPnxCPGZvcmVpZ24+fEI8YWxsb3dlZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MTEzCittc2dpZCAiIgorIlRoaXMgZmllbGQgaXMgdXNlZCB0byBpbmRpY2F0ZSBob3cgdGhpcyBwYWNrYWdlIHNob3VsZCBiZWhhdmUgb24gYSBtdWx0aS0iCisiYXJjaCBpbnN0YWxsYXRpb25zLiBUaGUgdmFsdWUgQjxzYW1lPiBtZWFucyB0aGF0IHRoZSBwYWNrYWdlIGlzIGNvLSIKKyJpbnN0YWxsYWJsZSB3aXRoIGl0c2VsZiwgYnV0IGl0IG11c3Qgbm90IGJlIHVzZWQgdG8gc2F0aXNmeSB0aGUgZGVwZW5kZW5jeSAiCisib2YgYW55IHBhY2thZ2Ugb2YgYSBkaWZmZXJlbnQgYXJjaGl0ZWN0dXJlIGZyb20gaXRzZWxmLiBUaGUgdmFsdWUgQjxmb3JlaWduPiAiCisibWVhbnMgdGhhdCB0aGUgcGFja2FnZSBpcyBub3QgY28taW5zdGFsbGFibGUgd2l0aCBpdHNlbGYsIGJ1dCBzaG91bGQgYmUgIgorImFsbG93ZWQgdG8gc2F0aXNmeSB0aGUgZGVwZW5kZW5jeSBvZiBhIHBhY2thZ2Ugb2YgYSBkaWZmZXJlbnQgYXJjaCBmcm9tICIKKyJpdHNlbGYuIFRoZSB2YWx1ZSBCPGFsbG93ZWQ+IGFsbG93cyByZXZlcnNlLWRlcGVuZGVuY2llcyB0byBpbmRpY2F0ZSBpbiAiCisidGhlaXIgRGVwZW5kcyBmaWVsZCB0aGF0IHRoZXkgbmVlZCBhIHBhY2thZ2UgZnJvbSBhIGZvcmVpZ24gYXJjaGl0ZWN0dXJlLCAiCisiYnV0IGhhcyBubyBlZmZlY3Qgb3RoZXJ3aXNlLiBUaGlzIGZpZWxkIHNob3VsZCBub3QgYmUgcHJlc2VudCBpbiBwYWNrYWdlcyAiCisid2l0aCB0aGUgQjxBcmNoaXRlY3R1cmU6IGFsbD4gZmllbGQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjExMworIywgbm8td3JhcAorbXNnaWQgIkI8U291cmNlOj5JPCBzb3VyY2UtbmFtZT4iCittc2dzdHIgIkI8U291cmNlOj5JPCBub20gZHUgc291cmNlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToxMTcKK21zZ2lkICIiCisiVGhlIG5hbWUgb2YgdGhlIHNvdXJjZSBwYWNrYWdlIHRoYXQgdGhpcyBiaW5hcnkgcGFja2FnZSBjYW1lIGZyb20sIGlmICIKKyJkaWZmZXJlbnQgdGhhbiB0aGUgbmFtZSBvZiB0aGUgcGFja2FnZSBpdHNlbGYuIgorbXNnc3RyICIiCisiTGUgbm9tIGR1IHBhcXVldCBzb3VyY2UgZCdvw7kgcHJvdmllbnQgbGUgcGFxdWV0IGJpbmFpcmUsIHMnaWwgeSBhIHVuZSAiCisiZGlmZsOpcmVuY2UgZW50cmUgbGVzIGRldXggbm9tcy4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjExOCBkZWItc3JjLWNvbnRyb2wuNToyMDIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPFN1YmFyY2hpdGVjdHVyZTo+STwgdmFsdWU+IgorbXNnc3RyICJCPFN1YmFyY2hpdGVjdHVyZTo+STwgdmFsZXVyPiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MTIxIGRlYi1zcmMtY29udHJvbC41OjIwNQorIywgbm8td3JhcAorbXNnaWQgIkI8S2VybmVsLVZlcnNpb246Pkk8IHZhbHVlPiIKK21zZ3N0ciAiQjxLZXJuZWwtVmVyc2lvbjo+STwgdmFsZXVyPiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MTI0IGRlYi1zcmMtY29udHJvbC41OjIwOAorIywgbm8td3JhcAorbXNnaWQgIkI8SW5zdGFsbGVyLU1lbnUtSXRlbTo+STwgdmFsdWU+IgorbXNnc3RyICJCPEluc3RhbGxlci1NZW51LUl0ZW06Pkk8IHZhbGV1cj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MTMxIGRlYi1zcmMtY29udHJvbC41OjIxNQorbXNnaWQgIiIKKyJUaGVzZSBmaWVsZHMgYXJlIHVzZWQgYnkgdGhlIGRlYmlhbi1pbnN0YWxsZXIgYW5kIGFyZSB1c3VhbGx5IG5vdCBuZWVkZWQuICAiCisiU2VlIC91c3Ivc2hhcmUvZG9jL2RlYmlhbi1pbnN0YWxsZXIvZGV2ZWwvbW9kdWxlcy50eHQgZnJvbSB0aGUgQjxkZWJpYW4tIgorImluc3RhbGxlcj4gcGFja2FnZSBmb3IgbW9yZSBkZXRhaWxzIGFib3V0IHRoZW0uIgorbXNnc3RyICIiCisiQ2VzIGNoYW1wcyBzb250IHV0aWxpc8OpcyBwYXIgbCdpbnN0YWxsYXRldXIgZXQgbmUgc29udCBlbiBnw6luw6lyYWwgcGFzICIKKyJuw6ljZXNzYWlyZXMuIFZldWlsbGV6IGNvbnN1bHRlciAvdXNyL3NoYXJlL2RvYy9kZWJpYW4taW5zdGFsbGVyL2RldmVsLyIKKyJtb2R1bGVzLnR4dCAgZm91cm5pIGF2ZWMgbGUgcGFxdWV0IEI8ZGViaWFuLWluc3RhbGxlcj4gcG91ciBwbHVzIGRlIGTDqXRhaWxzLiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MTMyIGRlYi1zcmMtY29udHJvbC41OjIzMworIywgbm8td3JhcAorbXNnaWQgIkI8RGVwZW5kczo+STwgcGFja2FnZS1saXN0PiIKK21zZ3N0ciAiQjxEZXBlbmRzOj5JPCBsaXN0ZSBkZSBwYXF1ZXRzPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToxNDMKK21zZ2lkICIiCisiTGlzdCBvZiBwYWNrYWdlcyB0aGF0IGFyZSByZXF1aXJlZCBmb3IgdGhpcyBwYWNrYWdlIHRvIHByb3ZpZGUgYSBub24tdHJpdmlhbCAiCisiYW1vdW50IG9mIGZ1bmN0aW9uYWxpdHkuIFRoZSBwYWNrYWdlIG1haW50ZW5hbmNlIHNvZnR3YXJlIHdpbGwgbm90IGFsbG93IGEgIgorInBhY2thZ2UgdG8gYmUgaW5zdGFsbGVkIGlmIHRoZSBwYWNrYWdlcyBsaXN0ZWQgaW4gaXRzIEI8RGVwZW5kcz4gZmllbGQgIgorImFyZW4ndCBpbnN0YWxsZWQgKGF0IGxlYXN0IG5vdCB3aXRob3V0IHVzaW5nIHRoZSBmb3JjZSBvcHRpb25zKS4gIEluIGFuICIKKyJpbnN0YWxsYXRpb24sIHRoZSBwb3N0aW5zdCBzY3JpcHRzIG9mIHBhY2thZ2VzIGxpc3RlZCBpbiBEZXBlbmRzOiBmaWVsZHMgYXJlICIKKyJydW4gYmVmb3JlIHRob3NlIG9mIHRoZSBwYWNrYWdlcyB3aGljaCBkZXBlbmQgb24gdGhlbS4gT24gdGhlIG9wcG9zaXRlLCBpbiBhICIKKyJyZW1vdmFsLCB0aGUgcHJlcm0gc2NyaXB0IG9mIGEgcGFja2FnZSBpcyBydW4gYmVmb3JlIHRob3NlIG9mIHRoZSBwYWNrYWdlcyAiCisibGlzdGVkIGluIGl0cyBEZXBlbmRzOiBmaWVsZC4iCittc2dzdHIgIiIKKyJDJ2VzdCBsYSBsaXN0ZSBkZXMgcGFxdWV0cyBleGlnw6lzIHBvdXIgcXVlIGNlIHBhcXVldCBhcnJpdmUgw6AgZm9uY3Rpb25uZXIgZGUgIgorIm1hbmnDqHJlIG5vbiB0cml2aWFsZS4gTGUgcHJvZ3JhbW1lIGRlIG1haW50ZW5hbmNlIGRlcyBwYXF1ZXRzIGludGVyZGl0ICIKKyJsJ2luc3RhbGxhdGlvbiBkJ3VuIHBhcXVldCBxdWFuZCBsZXMgcGFxdWV0cyByw6lwZXJ0b3Jpw6lzIGRhbnMgbGUgY2hhbXAgIgorIkI8RGVwZW5kcz4gbmUgc29udCBwYXMgaW5zdGFsbMOpcyAoZHUgbW9pbnMgdGFudCBxdSd1bmUgb3B0aW9uIGRlIGZvcsOnYWdlICIKKyJuJ2VzdCBwYXMgdXRpbGlzw6llKcKgOyBpbCBsYW5jZSBsZXMgc2NyaXB0cyDCq8KgcG9zdGluc3TCoMK7IGRlcyBwYXF1ZXRzICIKKyJyw6lwZXJ0b3Jpw6lzIGRhbnMgbGVzIGNoYW1wcyDCq8KgRGVwZW5kczrCoMK7IGF2YW50IGxlcyBzY3JpcHRzIMKrwqBwb3N0aW5zdMKgwrsgZGVzICIKKyJwYXF1ZXRzIHF1aSBkw6lwZW5kZW50IGQnZXV4LiDDgCBsJ2ludmVyc2UsIGxvcnMgZCd1bmUgc3VwcHJlc3Npb24gbGVzIHNjcmlwdHMgIgorIsKrwqBwcmVybcKgwrsgZGVzIHBhcXVldHMgc29udCBsYW5jw6lzIGF2YW50IGNldXggZGUgbGV1cnMgZMOpcGVuZGFuY2VzLiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MTQzIGRlYi1zcmMtY29udHJvbC41OjIzNgorIywgbm8td3JhcAorbXNnaWQgIkI8UHJlLURlcGVuZHM6Pkk8IHBhY2thZ2UtbGlzdD4iCittc2dzdHIgIkI8UHJlLURlcGVuZHM6Pkk8IGxpc3RlIGRlIHBhcXVldHM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjE1MAorbXNnaWQgIiIKKyJMaXN0IG9mIHBhY2thZ2VzIHRoYXQgbXVzdCBiZSBpbnN0YWxsZWQgQjxhbmQ+IGNvbmZpZ3VyZWQgYmVmb3JlIHRoaXMgb25lICIKKyJjYW4gYmUgaW5zdGFsbGVkLiBUaGlzIGlzIHVzdWFsbHkgdXNlZCBpbiB0aGUgY2FzZSB3aGVyZSB0aGlzIHBhY2thZ2UgIgorInJlcXVpcmVzIGFub3RoZXIgcGFja2FnZSBmb3IgcnVubmluZyBpdHMgcHJlaW5zdCBzY3JpcHQuIgorbXNnc3RyICIiCisiQydlc3QgbGEgbGlzdGUgZGVzIHBhcXVldHMgcXVpIGRvaXZlbnQgw6p0cmUgaW5zdGFsbMOpcyBCPGV0PiBjb25maWd1csOpcyBhdmFudCAiCisicXVlIGNlIHBhcXVldCBwdWlzc2Ugw6p0cmUgaW5zdGFsbMOpLiBIYWJpdHVlbGxlbWVudCwgb24gdXRpbGlzZSBjZSBjaGFtcCAiCisicXVhbmQgdW4gcGFxdWV0IGEgYmVzb2luIGQndW4gYXV0cmUgcGFxdWV0IHBvdXIgbGFuY2VyIHNvbiBzY3JpcHQgIgorIsKrwqBwcmVpbnN0wqDCuy4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjE1MCBkZWItc3JjLWNvbnRyb2wuNToyMzkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPFJlY29tbWVuZHM6Pkk8IHBhY2thZ2UtbGlzdD4iCittc2dzdHIgIkI8UmVjb21tZW5kczo+STwgbGlzdGUgZGUgcGFxdWV0cz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MTU3Cittc2dpZCAiIgorIkxpc3RzIHBhY2thZ2VzIHRoYXQgd291bGQgYmUgZm91bmQgdG9nZXRoZXIgd2l0aCB0aGlzIG9uZSBpbiBhbGwgYnV0IHVudXN1YWwgIgorImluc3RhbGxhdGlvbnMuIFRoZSBwYWNrYWdlIG1haW50ZW5hbmNlIHNvZnR3YXJlIHdpbGwgd2FybiB0aGUgdXNlciBpZiB0aGV5ICIKKyJpbnN0YWxsIGEgcGFja2FnZSB3aXRob3V0IHRob3NlIGxpc3RlZCBpbiBpdHMgQjxSZWNvbW1lbmRzPiBmaWVsZC4iCittc2dzdHIgIiIKKyJDJ2VzdCBsYSBsaXN0ZSBkZXMgcGFxdWV0cyBxdSdvbiB0cm91dmVyYWl0IGF2ZWMgY2UgcGFxdWV0IGRhbnMgdG91dGUgIgorImluc3RhbGxhdGlvbiBzdGFuZGFyZC4gTGUgcHJvZ3JhbW1lIGRlIG1haW50ZW5hbmNlIGRlcyBwYXF1ZXRzIGF2ZXJ0aXQgIgorImwndXRpbGlzYXRldXIgcXVhbmQgaWwgaW5zdGFsbGUgdW4gcGFxdWV0IHNhbnMgaW5zdGFsbGVyIGxlcyBwYXF1ZXRzICIKKyJyw6lwZXJ0b3Jpw6lzIGRhbnMgbGUgY2hhbXAgQjxSZWNvbW1lbmRzLj4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjE1NyBkZWItc3JjLWNvbnRyb2wuNToyNDIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPFN1Z2dlc3RzOj5JPCBwYWNrYWdlLWxpc3Q+IgorbXNnc3RyICJCPFN1Z2dlc3RzOj5JPGxpc3RlIGRlIHBhcXVldHM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjE2MgorbXNnaWQgIiIKKyJMaXN0cyBwYWNrYWdlcyB0aGF0IGFyZSByZWxhdGVkIHRvIHRoaXMgb25lIGFuZCBjYW4gcGVyaGFwcyBlbmhhbmNlIGl0cyAiCisidXNlZnVsbmVzcywgYnV0IHdpdGhvdXQgd2hpY2ggaW5zdGFsbGluZyB0aGlzIHBhY2thZ2UgaXMgcGVyZmVjdGx5ICIKKyJyZWFzb25hYmxlLiIKK21zZ3N0ciAiIgorIkMnZXN0IGxhIGxpc3RlIGRlcyBwYXF1ZXRzIHF1aSwgYXNzb2Npw6lzIGF2ZWMgY2UgcGFxdWV0LCBwZXV2ZW50IGFtw6lsaW9yZXIgIgorInNvbiB1dGlsaXTDqcKgOyBuw6lhbm1vaW5zLCB1bmUgaW5zdGFsbGF0aW9uIHNhbnMgY2VzIHBhcXVldHMgZXN0IHBhcmZhaXRlbWVudCAiCisicmFpc29ubmFibGUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjE3NAorbXNnaWQgIiIKKyJUaGUgc3ludGF4IG9mIEI8RGVwZW5kcz4sIEI8UHJlLURlcGVuZHM+LCBCPFJlY29tbWVuZHM+IGFuZCBCPFN1Z2dlc3RzPiAiCisiZmllbGRzIGlzIGEgbGlzdCBvZiBncm91cHMgb2YgYWx0ZXJuYXRpdmUgcGFja2FnZXMuIEVhY2ggZ3JvdXAgaXMgYSBsaXN0IG9mICIKKyJwYWNrYWdlcyBzZXBhcmF0ZWQgYnkgdmVydGljYWwgYmFyIChvciBgcGlwZScpIHN5bWJvbHMsIGB8Jy4gVGhlIGdyb3VwcyBhcmUgIgorInNlcGFyYXRlZCBieSBjb21tYXMuIENvbW1hcyBhcmUgdG8gYmUgcmVhZCBhcyBgQU5EJywgYW5kIHBpcGVzIGFzIGBPUicsIHdpdGggIgorInBpcGVzIGJpbmRpbmcgbW9yZSB0aWdodGx5LiBFYWNoIHBhY2thZ2UgbmFtZSBpcyBvcHRpb25hbGx5IGZvbGxvd2VkIGJ5IGEgIgorInZlcnNpb24gbnVtYmVyIHNwZWNpZmljYXRpb24gaW4gcGFyZW50aGVzZXMuIgorbXNnc3RyICIiCisiTGEgc3ludGF4ZSBkZXMgY2hhbXBzIEI8RGVwZW5kcyw+IEI8UHJlLURlcGVuZHMsPiBCPFJlY29tbWVuZHMsPiBldCAiCisiQjxTdWdnZXN0cz4gZXN0IHVuZSBsaXN0ZSBkZSBncm91cGVzIGNvbnRlbmFudCBkZXMgcGFxdWV0cyBzdWNjZXNzaWZzLiAiCisiQ2hhcXVlIGdyb3VwZSBlc3QgdW5lIGxpc3RlIGRlIHBhcXVldHMgc8OpcGFyw6lzIHBhciB1bmUgYmFycmUgdmVydGljYWxlIChsZSAiCisic3ltYm9sZSBkdSB0dWJlKSDCq8KgfMKgwrsuIExlcyBncm91cGVzIHNvbnQgc8OpcGFyw6lzIHBhciBkZXMgdmlyZ3VsZXMuIFVuZSAiCisidmlyZ3VsZSByZXByw6lzZW50ZSB1biDCq8KgRVTCoMK7IGxvZ2lxdWUgZXQgdW5lIGJhcnJlIHZlcnRpY2FsZSByZXByw6lzZW50ZSB1biAiCisiwqvCoE9VwqDCuyBsb2dpcXVlwqA7IGxlIHR1YmUgcmVwcsOpc2VudGUgdW4gbGllbiBwbHVzIGZvcnQuIENoYXF1ZSDDqWzDqW1lbnQgZXN0IGxlICIKKyJub20gZCd1biBwYXF1ZXQgc3VpdmkgZGUgZmHDp29uIG9wdGlvbm5lbGxlIHBhciB1biBudW3DqXJvIGRlIHZlcnNpb24gZW50cmUgIgorInBhcmVudGjDqHNlcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MTgwCittc2dpZCAiIgorIkEgdmVyc2lvbiBudW1iZXIgbWF5IHN0YXJ0IHdpdGggYSBgRTxndD5FPGd0PicsIGluIHdoaWNoIGNhc2UgYW55IGxhdGVyICIKKyJ2ZXJzaW9uIHdpbGwgbWF0Y2gsIGFuZCBtYXkgc3BlY2lmeSBvciBvbWl0IHRoZSBEZWJpYW4gcGFja2FnaW5nIHJldmlzaW9uICIKKyIoc2VwYXJhdGVkIGJ5IGEgaHlwaGVuKS4gQWNjZXB0ZWQgdmVyc2lvbiByZWxhdGlvbnNoaXBzIGFyZSBcIkU8Z3Q+RTxndD5cIiAiCisiZm9yIGdyZWF0ZXIgdGhhbiwgXCJFPGx0PkU8bHQ+XCIgZm9yIGxlc3MgdGhhbiwgXCJFPGd0Pj1cIiBmb3IgZ3JlYXRlciB0aGFuICIKKyJvciBlcXVhbCB0bywgXCJFPGx0Pj1cIiBmb3IgbGVzcyB0aGFuIG9yIGVxdWFsIHRvLCBhbmQgXCI9XCIgZm9yIGVxdWFsIHRvLiIKK21zZ3N0ciAiIgorIlVuIG51bcOpcm8gZGUgdmVyc2lvbiBwZXV0IGNvbW1lbmNlciBwYXIgwqvCoEU8Z3Q+RTxndD7CoMK7LCBldCBkYW5zIGNlIGNhcyB0b3V0ZSAiCisidmVyc2lvbiBzdXDDqXJpZXVyZSBjb3JyZXNwb25kcmEsIGV0IGlsIHBldXQgaW5kaXF1ZXIgKG91IHBhcykgbGUgbnVtw6lybyBkZSAiCisicsOpdmlzaW9uIHBvdXIgbGUgcGFxdWV0IGRlYmlhbiAobGVzIGRldXggbnVtw6lyb3Mgw6l0YW50IHPDqXBhcsOpcyBwYXIgdW4gdHJhaXQgIgorImQndW5pb24pLiBWb2ljaSBsZXMgcmVsYXRpb25zIGFjY2VwdMOpZXMgcG91ciBsZXMgdmVyc2lvbnPCoDogwqvCoEU8Z3Q+RTxndD7CoMK7ICIKKyJwb3VyIHN1cMOpcmlldXIgw6AsIMKrwqBFPGx0PkU8bHQ+wqDCuyBwb3VyIGluZsOpcmlldXIgw6AsIMKrwqBFPGd0Pj3CoMK7IHBvdXIgc3Vww6lyaWV1ciAiCisib3Ugw6lnYWwsIMKrwqBFPGx0Pj3CoMK7IHBvdXIgaW5mw6lyaWV1ciBvdSDDqWdhbCwgZXQgwqvCoD3CoMK7IHBvdXIgw6lnYWwgw6AuIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNToxODAgZGViLXNyYy1jb250cm9sLjU6MjQ1CisjLCBuby13cmFwCittc2dpZCAiQjxCcmVha3M6Pkk8IHBhY2thZ2UtbGlzdD4iCittc2dzdHIgIkI8QnJlYWtzOj5JPGxpc3RlIGRlIHBhcXVldHM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjE4OAorbXNnaWQgIiIKKyJMaXN0cyBwYWNrYWdlcyB0aGF0IHRoaXMgb25lIGJyZWFrcywgZm9yIGV4YW1wbGUgYnkgZXhwb3NpbmcgYnVncyB3aGVuIHRoZSAiCisibmFtZWQgcGFja2FnZXMgcmVseSBvbiB0aGlzIG9uZS4gVGhlIHBhY2thZ2UgbWFpbnRlbmFuY2Ugc29mdHdhcmUgd2lsbCBub3QgIgorImFsbG93IGJyb2tlbiBwYWNrYWdlcyB0byBiZSBjb25maWd1cmVkOyBnZW5lcmFsbHkgdGhlIHJlc29sdXRpb24gaXMgdG8gIgorInVwZ3JhZGUgdGhlIHBhY2thZ2VzIG5hbWVkIGluIGEgQjxCcmVha3M+IGZpZWxkLiIKK21zZ3N0ciAiIgorIkMnZXN0IHVuZSBsaXN0ZSBkZSBwYXF1ZXRzIHF1ZSBjZSBwYXF1ZXQgwqvCoGNhc3NlwqDCuywgcGFyIGV4ZW1wbGUgZW4gcsOpdsOpbGFudCAiCisiZGVzIGJvZ3VlcyBxdWFuZCBsZXMgcGFxdWV0cyBjb25jZXJuw6lzIGTDqXBlbmRlbnQgZGUgY2VsdWktY2kuIExlIHByb2dyYW1tZSAiCisiZGUgbWFpbnRlbmFuY2UgZGVzIHBhcXVldHMgaW50ZXJkaXQgbGEgY29uZmlndXJhdGlvbiBkZSBwYXF1ZXRzIGNhc3PDqXPCoDvCoHVuZSAiCisibcOpdGhvZGUgdXN1ZWxsZSBkZSByw6lzb2x1dGlvbiBlc3QgbGEgbWlzZSDDoCBqb3VyIGRlcyBwYXF1ZXRzIG1lbnRpb25uw6lzIGRhbnMgIgorImxlIGNoYW1wIEI8QnJlYWtzPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjE4OCBkZWItc3JjLWNvbnRyb2wuNToyNTQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPENvbmZsaWN0czo+STwgcGFja2FnZS1saXN0PiIKK21zZ3N0ciAiQjxDb25mbGljdHM6Pkk8bGlzdGUgZGUgcGFxdWV0cz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MTk2Cittc2dpZCAiIgorIkxpc3RzIHBhY2thZ2VzIHRoYXQgY29uZmxpY3Qgd2l0aCB0aGlzIG9uZSwgZm9yIGV4YW1wbGUgYnkgY29udGFpbmluZyBmaWxlcyAiCisid2l0aCB0aGUgc2FtZSBuYW1lcy4gVGhlIHBhY2thZ2UgbWFpbnRlbmFuY2Ugc29mdHdhcmUgd2lsbCBub3QgYWxsb3cgIgorImNvbmZsaWN0aW5nIHBhY2thZ2VzIHRvIGJlIGluc3RhbGxlZCBhdCB0aGUgc2FtZSB0aW1lLiBUd28gY29uZmxpY3RpbmcgIgorInBhY2thZ2VzIHNob3VsZCBlYWNoIGluY2x1ZGUgYSBCPENvbmZsaWN0cz4gbGluZSBtZW50aW9uaW5nIHRoZSBvdGhlci4iCittc2dzdHIgIiIKKyJDJ2VzdCB1bmUgbGlzdGUgZGUgcGFxdWV0cyBxdWkgc29udCBlbiBjb25mbGl0IGF2ZWMgY2UgcGFxdWV0wqA7IGlscyAiCisiY29udGllbm5lbnQgcGFyIGV4ZW1wbGUgZGVzIGZpY2hpZXJzIHF1aSBvbnQgbGUgbcOqbWUgbm9tLiBMZSBwcm9ncmFtbWUgZGUgIgorIm1haW50ZW5hbmNlIGRlcyBwYXF1ZXRzIGludGVyZGl0IGwnaW5zdGFsbGF0aW9uIHNpbXVsdGFuw6llIGRlIHBhcXVldHMgZW4gIgorImNvbmZsaXQuIERldXggcGFxdWV0cyBlbiBjb25mbGl0IHJlbnNlaWduZXJvbnQgdW5lIGxpZ25lIEI8Q29uZmxpY3RzPiBhdmVjICIKKyJsZSBub20gZGUgbCdhdXRyZSBwYXF1ZXQuIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNToxOTYgZGViLXNyYy1jb250cm9sLjU6MjUxCisjLCBuby13cmFwCittc2dpZCAiQjxSZXBsYWNlczo+STwgcGFja2FnZS1saXN0PiIKK21zZ3N0ciAiQjxSZXBsYWNlczo+STwgbGlzdGUgZGUgcGFxdWV0cz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MjA0Cittc2dpZCAiIgorIkxpc3Qgb2YgcGFja2FnZXMgZmlsZXMgZnJvbSB3aGljaCB0aGlzIG9uZSByZXBsYWNlcy4gVGhpcyBpcyB1c2VkIGZvciAiCisiYWxsb3dpbmcgdGhpcyBwYWNrYWdlIHRvIG92ZXJ3cml0ZSB0aGUgZmlsZXMgb2YgYW5vdGhlciBwYWNrYWdlIGFuZCBpcyAiCisidXN1YWxseSB1c2VkIHdpdGggdGhlIEI8Q29uZmxpY3RzPiBmaWVsZCB0byBmb3JjZSByZW1vdmFsIG9mIHRoZSBvdGhlciAiCisicGFja2FnZSwgaWYgdGhpcyBvbmUgYWxzbyBoYXMgdGhlIHNhbWUgZmlsZXMgYXMgdGhlIGNvbmZsaWN0ZWQgcGFja2FnZS4iCittc2dzdHIgIiIKKyJDJ2VzdCB1bmUgbGlzdGUgZGUgcGFxdWV0cyBxdWUgY2UgcGFxdWV0IHJlbXBsYWNlLiBJbCBwZXV0IGFpbnNpIHJlbXBsYWNlciAiCisibGVzIGZpY2hpZXJzIGRlIGNlcyBhdXRyZXMgcGFxdWV0c8KgOyBvbiBzZSBzZXJ0IHBvdXIgY2VsYSBkdSBjaGFtcCAiCisiQjxDb25mbGljdHM+IHBvdXIgZm9yY2VyIGxhIHN1cHByZXNzaW9uIGRlcyBhdXRyZXMgcGFxdWV0cywgc2kgY2VsdWktbMOgICIKKyJwb3Nzw6hkZSBhdXNzaSBsZXMgbcOqbWVzIGZpY2hpZXJzIHF1ZSBsZSBwYXF1ZXQgZW4gY29uZmxpdC4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjIwNCBkZWItc3JjLWNvbnRyb2wuNToyNTcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPFByb3ZpZGVzOj5JPCBwYWNrYWdlLWxpc3Q+IgorbXNnc3RyICJCPFByb3ZpZGVzOj4gSTxsaXN0ZSBkZSBwYXF1ZXRzPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToyMTQKK21zZ2lkICIiCisiVGhpcyBpcyBhIGxpc3Qgb2YgdmlydHVhbCBwYWNrYWdlcyB0aGF0IHRoaXMgb25lIHByb3ZpZGVzLiBVc3VhbGx5IHRoaXMgaXMgIgorInVzZWQgaW4gdGhlIGNhc2Ugb2Ygc2V2ZXJhbCBwYWNrYWdlcyBhbGwgcHJvdmlkaW5nIHRoZSBzYW1lIHNlcnZpY2UuICBGb3IgIgorImV4YW1wbGUsIHNlbmRtYWlsIGFuZCBleGltIGNhbiBzZXJ2ZSBhcyBhIG1haWwgc2VydmVyLCBzbyB0aGV5IHByb3ZpZGUgYSAiCisiY29tbW9uIHBhY2thZ2UgKGBtYWlsLXRyYW5zcG9ydC1hZ2VudCcpIG9uIHdoaWNoIG90aGVyIHBhY2thZ2VzIGNhbiBkZXBlbmQuICIKKyJUaGlzIHdpbGwgYWxsb3cgc2VuZG1haWwgb3IgZXhpbSB0byBzZXJ2ZSBhcyBhIHZhbGlkIG9wdGlvbiB0byBzYXRpc2Z5IHRoZSAiCisiZGVwZW5kZW5jeS4gVGhpcyBwcmV2ZW50cyB0aGUgcGFja2FnZXMgdGhhdCBkZXBlbmQgb24gYSBtYWlsIHNlcnZlciBmcm9tICIKKyJoYXZpbmcgdG8ga25vdyB0aGUgcGFja2FnZSBuYW1lcyBmb3IgYWxsIG9mIHRoZW0sIGFuZCB1c2luZyBgfCcgdG8gc2VwYXJhdGUgIgorInRoZSBsaXN0LiIKK21zZ3N0ciAiIgorIkMnZXN0IHVuZSBsaXN0ZSBkZSBwYXF1ZXRzIHZpcnR1ZWxzIHF1ZSBjZSBwYXF1ZXQgwqvCoHJlbXBsaXTCoMK7LiBPbiBzJ2VuIHNlcnQgIgorImhhYml0dWVsbGVtZW50IHBvdXIgZGVzIHBhcXVldHMgcXVpIG9mZnJlbnQgbGUgbcOqbWUgc2VydmljZS4gUGFyIGV4ZW1wbGUsICIKKyJzZW5kbWFpbCBldCBleGltIHNvbnQgZGVzIHNlcnZldXJzIGRlIGNvdXJyaWVyLCBldCBkb25jIGlscyDCq8KgcmVtcGxpc3NlbnTCoMK7ICIKKyJjaGFjdW4gbGUgcGFxdWV0IMKrwqBtYWlsLXRyYW5zcG9ydC1hZ2VudMKgwrvCoDsgYWluc2kgbGVzIGF1dHJlcyBwYXF1ZXRzIHBldXZlbnQgIgorImTDqXBlbmRyZSBkZSBjZSBwYXF1ZXQgdmlydHVlbC4gU2VuZG1haWwgZXQgZXhpbSBwZXV2ZW50IGFpbnNpIGNoYWN1biAiCisic2F0aXNmYWlyZSBsYSBkw6lwZW5kYW5jZS4gTGVzIHBhcXVldHMgcXVpIGTDqXBlbmRlbnQgZCd1biBzZXJ2ZXVyIGRlIGNvdXJyaWVyICIKKyJuJ29udCBwYXMgw6AgY29ubmHDrnRyZSBsZXMgbm9tcyBkZSB0b3VzIGxlcyBzZXJ2ZXVycyBkZSBjb3VycmllciBldCBuJ29udCBwYXMgIgorIsOgIHV0aWxpc2VyIMKrwqB8wqDCuyBjb21tZSBzw6lwYXJhdGV1ciBkZSBsaXN0ZS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MjMzCittc2dpZCAiIgorIlRoZSBzeW50YXggb2YgQjxCcmVha3M+LCBCPENvbmZsaWN0cz4sIEI8UmVwbGFjZXM+IGFuZCBCPFByb3ZpZGVzPiBpcyBhIGxpc3QgIgorIm9mIHBhY2thZ2UgbmFtZXMsIHNlcGFyYXRlZCBieSBjb21tYXMgKGFuZCBvcHRpb25hbCB3aGl0ZXNwYWNlKS4gIEluIHRoZSAiCisiQjxCcmVha3M+IGFuZCBCPENvbmZsaWN0cz4gZmllbGRzLCB0aGUgY29tbWEgc2hvdWxkIGJlIHJlYWQgYXMgYE9SJy4gQW4gIgorIm9wdGlvbmFsIHZlcnNpb24gY2FuIGFsc28gYmUgZ2l2ZW4gd2l0aCB0aGUgc2FtZSBzeW50YXggYXMgYWJvdmUgZm9yIHRoZSAiCisiQjxCcmVha3M+LCBCPENvbmZsaWN0cz4gYW5kIEI8UmVwbGFjZXM+IGZpZWxkcy4iCittc2dzdHIgIiIKKyJMYSBzeW50YXhlIGRlcyBjaGFtcHMgQjxCcmVha3M+LCBCPENvbmZsaWN0cz4sIEI8UmVwbGFjZXM+IGV0IEI8UHJvdmlkZXM+ICIKKyJlc3QgdW5lIGxpc3RlIGRlIG5vbXMgZGUgcGFxdWV0cywgc8OpcGFyw6lzIHBhciBkZXMgdmlyZ3VsZXMgKGV0IGRlcyBlc3BhY2VzICIKKyJmYWN1bHRhdGlmcykuIERhbnMgbGVzIGNoYW1wcyBCPEJyZWFrcz4gZXQgQjxDb25mbGljdHM+IGxhIHZpcmd1bGUgc2VyYSBsdWUgIgorImNvbW1lIHVuIMKrwqBPVcKgwrsuIE9uIHBldXQgZG9ubmVyIHVuZSB2ZXJzaW9uIG9wdGlvbm5lbGxlIGRlIGxhIG3Dqm1lIGZhw6dvbiBxdWUgIgorImNpLWRlc3N1cyBkYW5zIGxlcyBjaGFtcHMgQjxCcmVha3M+LCBCPENvbmZsaWN0cz4gZXQgQjxSZXBsYWNlcz4uIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNToyMzQgZGViLXNyYy1jb250cm9sLjU6MjYwCisjLCBuby13cmFwCittc2dpZCAiQjxCdWlsdC1Vc2luZzo+STwgcGFja2FnZS1saXN0PiIKK21zZ3N0ciAiQjxCdWlsdC1Vc2luZzo+STwgbGlzdGUgZGUgcGFxdWV0cz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MjQ0Cittc2dpZCAiIgorIlRoaXMgZmllbGQgbGlzdHMgZXh0cmEgc291cmNlIHBhY2thZ2VzIHRoYXQgd2VyZSB1c2VkIGR1cmluZyB0aGUgYnVpbGQgb2YgIgorInRoaXMgYmluYXJ5IHBhY2thZ2UuICBUaGlzIGlzIGFuIGluZGljYXRpb24gdG8gdGhlIGFyY2hpdmUgbWFpbnRlbmFuY2UgIgorInNvZnR3YXJlIHRoYXQgdGhlc2UgZXh0cmEgc291cmNlIHBhY2thZ2VzIG11c3QgYmUga2VwdCB3aGlsc3QgdGhpcyBiaW5hcnkgIgorInBhY2thZ2UgaXMgbWFpbnRhaW5lZC4gIFRoaXMgZmllbGQgbXVzdCBiZSBhIGxpc3Qgb2Ygc291cmNlIHBhY2thZ2UgbmFtZXMgIgorIndpdGggc3RyaWN0ICg9KSAgdmVyc2lvbiByZWxhdGlvbnNoaXBzLiAgTm90ZSB0aGF0IHRoZSBhcmNoaXZlIG1haW50ZW5hbmNlICIKKyJzb2Z0d2FyZSBpcyBsaWtlbHkgdG8gcmVmdXNlIHRvIGFjY2VwdCBhbiB1cGxvYWQgd2hpY2ggZGVjbGFyZXMgYSBCPEJ1aWx0LSIKKyJVc2luZz4gcmVsYXRpb25zaGlwIHdoaWNoIGNhbm5vdCBiZSBzYXRpc2ZpZWQgd2l0aGluIHRoZSBhcmNoaXZlLiIKK21zZ3N0ciAiIgorIkNlIGNoYW1wIGFmZmljaGUgbGVzIHBhcXVldHMgc291cmNlIHN1cHBsw6ltZW50YWlyZXMgdXRpbGlzw6llcyBsb3JzIGRlIGxhICIKKyJjb25zdHJ1Y3Rpb24gZHUgcGFxdWV0IGJpbmFpcmUuIElsIHBlcm1ldCBkJ2luZGlxdWVyIGF1eCBsb2dpY2llbHMgZGUgIgorImdlc3Rpb24gZGUgbCdhcmNoaXZlIHF1ZSBkZXMgcGFxdWV0cyBzb3VyY2Ugc3VwcGzDqW1lbnRhaXJlcyBkb2l2ZW50IMOqdHJlICIKKyJjb25zZXJ2w6llcyB0YW50IHF1ZSBsZSBwYXF1ZXQgYmluYWlyZSBlc3QgbWFpbnRlbnUuIENlIGNoYW1wIGRvaXQgw6p0cmUgdW5lICIKKyJsaXN0ZSBkZSBwYXF1ZXRzIHNvdXJjZSBhdmVjIGRlcyByw6lmw6lyZW5jZXMgc3RyaWN0ZXMgZGUgdmVyc2lvbiAoPSkuICIKKyJWZXVpbGxleiBub3RlciBxdWUgbGVzIGxvZ2ljaWVscyBkZSBnZXN0aW9uIGRlIGwnYXJjaGl2ZSByaXNxdWUgZGUgbmUgcGFzICIKKyJhY2NlcHRlciB1biBlbnZvaSBxdWkgZMOpY2xhcmUgdW5lIHJlbGF0aW9uIEI8QnVpbHQtVXNpbmc+IHF1aSBuZSBwZXV0IHBhcyAiCisiw6p0cmUgc2F0aXNmYWl0ZSBkYW5zIGwnYXJjaGl2ZS4iCisKKyMuIHR5cGU6IFNICisjOiBkZWItY29udHJvbC41OjI0NSBkZWItc3JjLWNvbnRyb2wuNToyODggc3RhcnQtc3RvcC1kYWVtb24uODozMDIKKyMsIG5vLXdyYXAKK21zZ2lkICJFWEFNUExFIgorbXNnc3RyICJFWEVNUExFIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjI2OAorIywgbm8td3JhcAorbXNnaWQgIiIKKyIjIENvbW1lbnRcbiIKKyJQYWNrYWdlOiBncmVwXG4iCisiRXNzZW50aWFsOiB5ZXNcbiIKKyJQcmlvcml0eTogcmVxdWlyZWRcbiIKKyJTZWN0aW9uOiBiYXNlXG4iCisiTWFpbnRhaW5lcjogV2ljaGVydCBBa2tlcm1hbiBFPGx0Pndha2tlcm1hQGRlYmlhbi5vcmdFPGd0PlxuIgorIkFyY2hpdGVjdHVyZTogc3BhcmNcbiIKKyJWZXJzaW9uOiAyLjQtMVxuIgorIlByZS1EZXBlbmRzOiBsaWJjNiAoRTxndD49IDIuMC4xMDUpXG4iCisiUHJvdmlkZXM6IHJncmVwXG4iCisiQ29uZmxpY3RzOiByZ3JlcFxuIgorIkRlc2NyaXB0aW9uOiBHTlUgZ3JlcCwgZWdyZXAgYW5kIGZncmVwLlxuIgorIiBUaGUgR05VIGZhbWlseSBvZiBncmVwIHV0aWxpdGllcyBtYXkgYmUgdGhlIFwiZmFzdGVzdCBncmVwIGluIHRoZSB3ZXN0XCIuXG4iCisiIEdOVSBncmVwIGlzIGJhc2VkIG9uIGEgZmFzdCBsYXp5LXN0YXRlIGRldGVybWluaXN0aWMgbWF0Y2hlciAoYWJvdXRcbiIKKyIgdHdpY2UgYXMgZmFzdCBhcyBzdG9jayBVbml4IGVncmVwKSBoeWJyaWRpemVkIHdpdGggYSBCb3llci1Nb29yZS1Hb3NwZXJcbiIKKyIgc2VhcmNoIGZvciBhIGZpeGVkIHN0cmluZyB0aGF0IGVsaW1pbmF0ZXMgaW1wb3NzaWJsZSB0ZXh0IGZyb20gYmVpbmdcbiIKKyIgY29uc2lkZXJlZCBieSB0aGUgZnVsbCByZWdleHAgbWF0Y2hlciB3aXRob3V0IG5lY2Vzc2FyaWx5IGhhdmluZyB0b1xuIgorIiBsb29rIGF0IGV2ZXJ5IGNoYXJhY3Rlci4gVGhlIHJlc3VsdCBpcyB0eXBpY2FsbHkgbWFueSB0aW1lcyBmYXN0ZXJcbiIKKyIgdGhhbiBVbml4IGdyZXAgb3IgZWdyZXAuIChSZWd1bGFyIGV4cHJlc3Npb25zIGNvbnRhaW5pbmcgYmFja3JlZmVyZW5jaW5nXG4iCisiIHdpbGwgcnVuIG1vcmUgc2xvd2x5LCBob3dldmVyKS5cbiIKK21zZ3N0ciAiIgorIiMgQ29tbWVudGFpcmVcbiIKKyJQYWNrYWdlOiBncmVwXG4iCisiRXNzZW50aWFsOiB5ZXNcbiIKKyJQcmlvcml0eTogcmVxdWlyZWRcbiIKKyJTZWN0aW9uOiBiYXNlXG4iCisiTWFpbnRhaW5lcjogV2ljaGVydCBBa2tlcm1hbiBFPGx0Pndha2tlcm1hQGRlYmlhbi5vcmdFPGd0PlxuIgorIkFyY2hpdGVjdHVyZTogc3BhcmNcbiIKKyJWZXJzaW9uOiAyLjQtMVxuIgorIlByZS1EZXBlbmRzOiBsaWJjNiAoRTxndD49IDIuMC4xMDUpXG4iCisiUHJvdmlkZXM6IHJncmVwXG4iCisiQ29uZmxpY3RzOiByZ3JlcFxuIgorIkRlc2NyaXB0aW9uOiBHTlUgZ3JlcCwgZWdyZXAgYW5kIGZncmVwLlxuIgorIiBJbCBzZSBwZXV0IHF1ZSBsZSBncmVwIGRlIGxhIGZhbWlsbGUgR05VIGRlcyB1dGlsaXRhaXJlcyBncmVwIHNvaXRcbiIKKyIgbGUgcGx1cyByYXBpZGUgZGUgbCdvdWVzdMKgISBMZSBncmVwIGRlIEdOVSBlc3QgZm9uZMOpIHN1ciB1biBtw6ljYW5pc21lXG4iCisiIHJhcGlkZSBkZSBtaXNlIGVuIGNvcnJlc3BvbmRhbmNlIGTDqXRlcm1pbmlzdGUgZCfDqXRhdHMgc2ltcGxlcyAoZW52aXJvblxuIgorIiBkZXV4IGZvaXMgcGx1cyByYXBpZGUgcXVlIGxlIMKrwqBlZ3JlcMKgwrsgc3RhbmRhcmQgZCdVbml4KSwgbW9kaWZpw6kgcGFyIHVuZVxuIgorIiByZWNoZXJjaGUgZGUgdHlwZSBCb3llci1Nb29yZS1Hb3NwZXIgcXVpIGNoZXJjaGUgdW5lIGNoYcOubmUgZG9ubsOpZSBlblxuIgorIiBlbXDDqmNoYW50IHF1ZSBsZXMgdGV4dGVzIGltcG9zc2libGVzIHNvaWVudCBhbmFseXPDqXMgcGFyIGxlIG3DqWNhbmlzbWUgZGVcbiIKKyIgbWlzZSBlbiBjb3JyZXNwb25kYW5jZSBkJ2V4cHJlc3Npb25zIHJhdGlvbm5lbGxlcyBldCBzYW5zIGF2b2lyXG4iCisiIG7DqWNlc3NhaXJlbWVudCBiZXNvaW4gZGUgdm9pciBjaGFxdWUgY2FyYWN0w6hyZS4gQydlc3QgYmVhdWNvdXAgcGx1c1xuIgorIiByYXBpZGUgIHF1ZSBsZXMgwqvCoGdyZXDCoMK7IG91IMKrwqBlZ3JlcMKgwrsgZCdVbml4LlxuIgorIiAoRGVzIGV4cHJlc3Npb25zIHJhdGlvbm5lbGxlcyBjb250ZW5hbnQgZGVzIHLDqWbDqXJlbmNlcyBjaXJjdWxhaXJlc1xuIgorIiByYWxlbnRpc3NlbnQgY2VwZW5kYW50IGxlIHByb2dyYW1tZS4pXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6Mjc2Cittc2dpZCAiIgorIkI8ZGViPig1KSwgQjxkZWItdmVyc2lvbj4oNSksIEI8ZGVidGFncz4oMSksIEI8ZHBrZz4oMSksIEI8ZHBrZy1kZWI+KDEpLiIKK21zZ3N0ciAiIgorIkI8ZGViPig1KSwgQjxkZWItdmVyc2lvbj4oNSksIEI8ZGVidGFncz4oMSksIEI8ZHBrZz4oMSksIEI8ZHBrZy1kZWI+KDEpLiIKKworIy4gdHlwZTogVEgKKyM6IGRlYi1zcmMtY29udHJvbC41OjMKKyMsIG5vLXdyYXAKK21zZ2lkICJkZWItc3JjLWNvbnRyb2wiCittc2dzdHIgImRlYi1zcmMtY29udHJvbCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6NgorbXNnaWQgImRlYi1zcmMtY29udHJvbCAtIERlYmlhbiBzb3VyY2UgcGFja2FnZXMnIG1hc3RlciBjb250cm9sIGZpbGUgZm9ybWF0IgorbXNnc3RyICIiCisiZGViLXNyYy1jb250cm9sIC0gRm9ybWF0IGR1IGZpY2hpZXIgcHJpbmNpcGFsIGRlIGNvbnRyw7RsZSBkYW5zIGxlcyBwYXF1ZXRzICIKKyJEZWJpYW4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjI4Cittc2dpZCAiIgorIkVhY2ggRGViaWFuIHNvdXJjZSBwYWNrYWdlIGNvbnRhaW5zIHRoZSBtYXN0ZXIgXCJjb250cm9sXCIgZmlsZSwgd2hpY2ggIgorImNvbnRhaW5zIGF0IGxlYXN0IDIgcGFyYWdyYXBocywgc2VwYXJhdGVkIGJ5IGEgYmxhbmsgbGluZS4gVGhlIGZpcnN0ICIKKyJwYXJhZ3JhcGggbGlzdHMgYWxsIGluZm9ybWF0aW9uIGFib3V0IHRoZSBzb3VyY2UgcGFja2FnZSBpbiBnZW5lcmFsLCB3aGlsZSAiCisiZWFjaCBmb2xsb3dpbmcgcGFyYWdyYXBoIGRlc2NyaWJlcyBleGFjdGx5IG9uZSBiaW5hcnkgcGFja2FnZS4gRWFjaCAiCisicGFyYWdyYXBoIGNvbnNpc3RzIG9mIGF0IGxlYXN0IG9uZSBmaWVsZC4gQSBmaWVsZCBzdGFydHMgd2l0aCBhIGZpZWxkbmFtZSwgIgorInN1Y2ggYXMgQjxQYWNrYWdlPiBvciBCPFNlY3Rpb24+IChjYXNlIGluc2Vuc2l0aXZlKSwgZm9sbG93ZWQgYnkgYSBjb2xvbiwgIgorInRoZSBib2R5IG9mIHRoZSBmaWVsZCBhbmQgYSBuZXdsaW5lLiAgTXVsdGktbGluZSBmaWVsZHMgYXJlIGFsc28gYWxsb3dlZCwgIgorImJ1dCBlYWNoIHN1cHBsZW1lbnRhcnkgbGluZSwgd2l0aG91dCBhIGZpZWxkbmFtZSwgc2hvdWxkIHN0YXJ0IHdpdGggYXQgbGVhc3QgIgorIm9uZSBzcGFjZS4gVGhlIGNvbnRlbnQgb2YgdGhlIG11bHRpLWxpbmUgZmllbGRzIGlzIGdlbmVyYWxseSBqb2luZWQgdG8gYSAiCisic2luZ2xlIGxpbmUgYnkgdGhlIHRvb2xzIChleGNlcHQgaW4gdGhlIGNhc2Ugb2YgdGhlIEI8RGVzY3JpcHRpb24+IGZpZWxkLCAiCisic2VlIGJlbG93KS4gVG8gaW5zZXJ0IGVtcHR5IGxpbmVzIGludG8gYSBtdWx0aS1saW5lIGZpZWxkLCBpbnNlcnQgYSBkb3QgIgorImFmdGVyIHRoZSBzcGFjZS4gTGluZXMgc3RhcnRpbmcgd2l0aCBhIEI8JyMnPiBhcmUgdHJlYXRlZCBhcyBjb21tZW50cy4iCittc2dzdHIgIiIKKyJDaGFxdWUgcGFxdWV0IHNvdXJjZSBEZWJpYW4gY29udGllbnQgdW4gZmljaGllciDCq8KgY29udHJvbMKgwrsgbWHDrnRyZSwgcXVpICIKKyJjb250aWVudCBhdSBtb2lucyAyIHBhcmFncmFwaGVzLCBzw6lwYXLDqXMgcGFyIHVuZSBsaWduZSB2aWRlLiBMZSBwcmVtaWVyICIKKyJwYXJhZ3JhcGhlIGRvbm5lIHRvdXRlcyBsZXMgaW5mb3JtYXRpb25zIMOgIHByb3BvcyBkdSBwYXF1ZXQgc291cmNlIGVuICIKKyJnw6luw6lyYWwgZXQgY2hhcXVlIHBhcmFncmFwaGUgcXVpIHN1aXQgZMOpY3JpdCBleGFjdGVtZW50IHVuIHBhcXVldCBiaW5haXJlLiAiCisiQ2hhcXVlIHBhcmFncmFwaGUgY29udGllbnQgYXUgbW9pbnMgdW4gY2hhbXAuIFVuIGNoYW1wIGNvbW1lbmNlIHBhciBsZSBub21kdSAiCisiY2hhbXAsIHBhciBleGVtcGxlIEI8UGFja2FnZT4gb3UgQjxTZWN0aW9uPiAobGEgY2Fzc2Ugbidlc3QgcGFzICIKKyJzaWduaWZpY2F0aXZlKSwgc3VpdmkgZCd1biBjYXJhY3TDqHJlIMKrwqBkZXV4LXBvaW50c8KgwrssIGR1IGNvbnRlbnUgZHUgY2hhbXAgZXQgIgorImQndW4gcmV0b3VyIMOgIGxhIGxpZ25lLiBMZXMgY2hhbXBzIG11bHRpLWxpZ25lcyBzb250IGF1c3NpIHBvc3NpYmxlcywgbWFpcyAiCisiY2hhcXVlIGxpZ25lIHN1cHBsw6ltZW50YWlyZSwgcXVpIG5lIGNvbXBvcnRlIHBhcyBkZSBub20gZGUgY2hhbXAsIGRvaXQgIgorImNvbW1lbmNlciBwYXIgYXUgbW9pbnMgdW4gZXNwYWNlLiBMZSBjb250ZW51IGRlcyBjaGFtcHMgbXVsdGktbGlnbmVzIGVzdCBlbiAiCisiZ8OpbsOpcmFsIHLDqWFzc2VtYmzDqSBlbiB1bmUgbGlnbmUgdW5pcXVlIHBhciBsZXMgb3V0aWxzIChzYXVmIHBvdXIgbGUgY2hhbXAgIgorIkI8RGVzY3JpcHRpb24+LCB2b2lyIGNpLWRlc3NvdXMpLiBQb3VyIGluY2x1cmUgZGVzIGxpZ25lcyB2aWRlcyBkYW5zIHVuICIKKyJjaGFtcCBtdWx0aS1saWduZXMsIGlsIGVzdCBuw6ljZXNzYWlyZSBkZSBtZXR0cmUgdW4gcG9pbnQgYXByw6hzIGwnZXNwYWNlICIKKyJpbml0aWFsLiBMZXMgbGlnbmVzIGNvbW1lbsOnYW50IHBhcyBCPMKrwqAjwqDCuz4gc29udCB0cmFpdMOpZXMgY29tbWUgZGVzICIKKyJjb21tZW50YWlyZXMuIgorCisjLiB0eXBlOiBTSAorIzogZGViLXNyYy1jb250cm9sLjU6MjkKKyMsIG5vLXdyYXAKK21zZ2lkICJTT1VSQ0UgRklFTERTIgorbXNnc3RyICJMRVMgQ0hBTVBTIFNPVVJDRSIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zcmMtY29udHJvbC41OjMwCisjLCBuby13cmFwCittc2dpZCAiQjxTb3VyY2U6PiBJPHNvdXJjZS1wYWNrYWdlLW5hbWU+IChyZXF1aXJlZCkiCittc2dzdHIgIkI8U291cmNlOj4gSTxub20gZHUgcGFxdWV0IHNvdXJjZT4gKHJlcXVpcykiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjM3Cittc2dpZCAiIgorIlRoZSB2YWx1ZSBvZiB0aGlzIGZpZWxkIGlzIHRoZSBuYW1lIG9mIHRoZSBzb3VyY2UgcGFja2FnZSwgYW5kIHNob3VsZCBtYXRjaCAiCisidGhlIG5hbWUgb2YgdGhlIHNvdXJjZSBwYWNrYWdlIGluIHRoZSBkZWJpYW4vY2hhbmdlbG9nIGZpbGUuIEEgcGFja2FnZSBuYW1lICIKKyJtdXN0IGNvbnNpc3Qgb25seSBvZiBsb3dlciBjYXNlIGxldHRlcnMgKGEteiksIGRpZ2l0cyAoMC05KSwgcGx1cyAoKykgYW5kICIKKyJtaW51cyAoLSkgc2lnbnMsIGFuZCBwZXJpb2RzICguKS4gUGFja2FnZSBuYW1lcyBtdXN0IGJlIGF0IGxlYXN0IHR3byAiCisiY2hhcmFjdGVycyBsb25nIGFuZCBtdXN0IHN0YXJ0IHdpdGggYW4gYWxwaGFudW1lcmljIGNoYXJhY3Rlci4iCittc2dzdHIgIiIKKyJMYSB2YWxldXIgZGUgY2UgY2hhbXAgZXN0IGxlIG5vbSBkdSBwYXF1ZXQgc291cmNlIGV0IGRvaXQgY29ycmVzcG9uZHJlIGF1ICIKKyJub20gZHUgcGFxdWV0IHNvdXJjZSBkYW5zIGxlIGZpY2hpZXIgZGViaWFuL2NoYW5nZWxvZy4gVW4gbm9tIGRlIHBhcXVldCBkb2l0ICIKKyLDqnRyZSBjb25zdGl0dcOpIHVuaXF1ZW1lbnQgZGUgbGV0dHJlcyBtaW51c2N1bGVzIChhLXopLCBkZSBjaGlmZnJlcyAoMC05KSwgIgorImRlcyBjYXJhY3TDqHJlcyBwbHVzICgrKSBldCBtb2lucyAoLSkgZXQgZGUgcG9pbnRzICguKS4gTGVzIG5vbXMgZGUgcGFxdWV0cyAiCisiZG9pdCBjb21wb3J0ZXIgYXUgbW9pbnMgZGV1eCBjYXJhY3TDqHJlcyBldCBkb2l2ZW50IGNvbW1lbmNlciBwYXIgdW4gIgorImNhcmFjdMOocmUgYWxwaGFudW3DqXJpcXVlLiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zcmMtY29udHJvbC41OjM4CisjLCBuby13cmFwCittc2dpZCAiQjxNYWludGFpbmVyOj4gSTxmdWxsbmFtZS1lbWFpbD4gKHJlcXVpcmVkKSIKK21zZ3N0ciAiQjxNYWludGFpbmVyOj4gSTxub20gY29tcGxldCBldCBhZHJlc3NlIMOpbGVjdHJvbmlxdWU+IChyZXF1aXMpIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNTo0MworbXNnaWQgIiIKKyJTaG91bGQgYmUgaW4gdGhlIGZvcm1hdCBcIkpvZSBCbG9nZ3MgRTxsdD5qYmxvZ2dzQGZvby5jb21FPGd0PlwiLCBhbmQgIgorInJlZmVyZW5jZXMgdGhlIHBlcnNvbiB3aG8gY3VycmVudGx5IG1haW50YWlucyB0aGUgcGFja2FnZSwgYXMgb3Bwb3NlZCB0byB0aGUgIgorImF1dGhvciBvZiB0aGUgc29mdHdhcmUgb3IgdGhlIG9yaWdpbmFsIHBhY2thZ2VyLiIKK21zZ3N0ciAiIgorIkxlIGZvcm1hdCBkZSBjZSBjaGFtcCBzZXJhIMKrwqBKZWFuIER1cG9udCBFPGx0PmpkdXBvbnRAZm9vLmNvbUU8Z3Q+wqDCu8KgOyBldCAiCisiaW5kaXF1ZSBsZSBjcsOpYXRldXIgZHUgcGFxdWV0LCBwYXIgb3Bwb3NpdGlvbiDDoCBsJ2F1dGV1ciBkdSBwcm9ncmFtbWUgbWlzIGVuICIKKyJwYXF1ZXQuIgorCisjLiB0eXBlOiBUUAorIzogZGViLXNyYy1jb250cm9sLjU6NDQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPFVwbG9hZGVyczo+STwgZnVsbG5hbWUtZW1haWw+IgorbXNnc3RyICJCPFVwbG9hZGVyczo+STwgbm9tIGNvbXBsZXQgZXQgYWRyZXNzZSDDqWxlY3Ryb25pcXVlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6NDkKK21zZ2lkICIiCisiTGlzdHMgYWxsIHRoZSBuYW1lcyBhbmQgZW1haWwgYWRkcmVzc2VzIG9mIGNvLW1haW50YWluZXJzIG9mIHRoZSBwYWNrYWdlLCBpbiAiCisidGhlIHNhbWUgZm9ybWF0IGFzIHRoZSBNYWludGFpbmVyIGZpZWxkLiBNdWx0aXBsZSBjby1tYWludGFpbmVycyBzaG91bGQgYmUgIgorInNlcGFyYXRlZCBieSBhIGNvbW1hLiIKK21zZ3N0ciAiIgorIkFmZmljaGUgbGVzIG5vbXMgZXQgbGVzIGFkcmVzc2VzIMOpbGVjdHJvbmlxdWVzIGRlcyBjby1yZXNwb25zYWJsZXMgZHUgIgorInBhcXVldCwgYXUgbcOqbWUgZm9ybWF0IHF1ZSBsZSBjaGFtcCBNYWludGFpbmVyLiBEZXMgY28tcmVzcG9uc2FibGVzICIKKyJtdWx0aXBsZXMgcGV1dmVudCDDqnRyZSBzw6lwYXLDqXMgcGFyIHVuZSB2aXJndWxlLiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zcmMtY29udHJvbC41OjUwCisjLCBuby13cmFwCittc2dpZCAiQjxTdGFuZGFyZHMtVmVyc2lvbjo+STwgdmVyc2lvbi1zdHJpbmc+IgorbXNnc3RyICJCPFN0YW5kYXJkcy1WZXJzaW9uOj5JPCBjaGHDrm5lIGRlIHZlcnNpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNTo1NgorbXNnaWQgIiIKKyJUaGlzIGRvY3VtZW50cyB0aGUgbW9zdCByZWNlbnQgdmVyc2lvbiBvZiB0aGUgc3RhbmRhcmRzICh3aGljaCBjb25zaXN0cyBvZiAiCisidGhlIERlYmlhbiBQb2xpY3kgTWFudWFsIGFuZCByZWZlcmVuY2VkIHRleHRzIGZyb20gdGhlIEI8ZGViaWFuLXBvbGljeT4gIgorInBhY2thZ2UpIHRoaXMgcGFja2FnZSBjb21wbGllcyB0by4iCittc2dzdHIgIiIKKyJDZSBjaGFtcCBpbmRpcXVlIGxhIHZlcnNpb24gbGEgcGx1cyByw6ljZW50ZSBkZXMgbm9ybWVzIChjb25zdGl0dcOpZXMgcGFyIGxhICIKKyJDaGFydGUgRGViaWFuIGV0IGxlcyB0ZXh0ZXMgaW5kaXF1w6lzIGRhbnMgbGUgcGFxdWV0IEI8ZGViaWFuLXBvbGljeT4pICIKKyJhdXhxdWVsbGVzIGNlIHBhcXVldCBzZSBjb25mb3JtZS4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3JjLWNvbnRyb2wuNTo1NworIywgbm8td3JhcAorbXNnaWQgIkI8RE0tVXBsb2FkLUFsbG93ZWQ6PiBCPHllcz58Qjxubz4iCittc2dzdHIgIkI8RE0tVXBsb2FkLUFsbG93ZWQ6PiBCPHllcz58Qjxubz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjYxCittc2dpZCAiIgorIlRoaXMgZmllbGQgaW5kaWNhdGVzIHdoZXRoZXIgdGhlIHBhY2thZ2UgY2FuIGJlIHVwbG9hZGVkIGJ5IERlYmlhbiAiCisiTWFpbnRhaW5lcnMgYXBwZWFyaW5nIGluIHRoZSBNYWludGFpbmVyIG9yIFVwbG9hZGVycyBmaWVsZC4gVGhlIGRlZmF1bHQgIgorInZhbHVlIGlzIFwibm9cIi4iCittc2dzdHIgIiIKKyJDZSBjaGFtcCBpbmRpcXVlIHNpIHVuIHBhcXVldCBwZXV0IMOqdHJlIGVudm95w6kgcGFyIGxlcyBtYWludGVuZXVycyBEZWJpYW4gIgorInF1aSBzb250IGluZGlxdcOpcyBkYW5zIGxlIGNoYW1wIE1haW50YWluZXIgb3UgbGUgY2hhbXAgVXBsb2FkZXJzLiBMYSB2YWxldXIgIgorInBhciBkw6lmYXV0IGVzdCDCq8Kgbm/CoMK7LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6NjUKK21zZ2lkICJUaGUgdXBzdHJlYW0gcHJvamVjdCBob21lIHBhZ2UgVVJMLiIKK21zZ3N0ciAiVVJMIGRlIGxhIHBhZ2UgZCdhY2N1ZWlsIGR1IHByb2pldCBhbW9udC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjcxCittc2dpZCAiIgorIlRoZSBJPHVybD4gb2YgdGhlIGJ1ZyB0cmFja2luZyBzeXN0ZW0gZm9yIHRoaXMgcGFja2FnZS4gVGhlIGN1cnJlbnQgdXNlZCAiCisiZm9ybWF0IGlzIEk8YnRzLXR5cGU+Qjw6Ly8+STxidHMtYWRkcmVzcz4sIGxpa2UgQjxkZWJidWdzOi8vYnVncy5kZWJpYW4uIgorIm9yZz4uIFRoaXMgZmllbGQgaXMgdXN1YWxseSBub3QgbmVlZGVkLiIKK21zZ3N0ciAiIgorIkluZGlxdWUgbCdJPFVSTD4gZHUgc3lzdMOobWUgZGUgc3VpdmkgZGUgYm9ndWVzIChCVFMpIGRlIGNlIHBhcXVldC4gTGUgZm9ybWF0ICIKKyJ1dGlsaXPDqSBlc3QgSTx0eXBlX2RlX2J0cz5CPDovLz5JPGFkcmVzc2VfZHVfYnRzRT4sIHBhciBleGVtcGxlIEI8ZGViYnVnczovLyIKKyJidWdzLmRlYmlhbi5vcmc+LiBDZSBjaGFtcCBlc3QgZW4gZ8OpbsOpcmFsIGludXRpbGUuIgorCisjLiB0eXBlOiBUUAorIzogZGViLXNyYy1jb250cm9sLjU6NzIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPFZjcy0qOj5JPCB1cmw+IgorbXNnc3RyICJCPFZjcy0qOj5JPCBVUkw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNTo3OQorbXNnaWQgIiIKKyJUaGUgSTx1cmw+IG9mIHRoZSBWZXJzaW9uIENvbnRyb2wgU3lzdGVtIHJlcG9zaXRvcnkgdXNlZCB0byBtYWludGFpbiB0aGlzICIKKyJwYWNrYWdlLiBDdXJyZW50bHkgc3VwcG9ydGVkIGFyZSBCPEFyY2g+LCBCPEJ6cj4gKEJhemFhciksIEI8Q3ZzPiwgQjxEYXJjcz4sICIKKyJCPEdpdD4sIEI8SGc+IChNZXJjdXJpYWwpLCBCPE10bj4gKE1vbm90b25lKSBhbmQgQjxTdm4+IChTdWJ2ZXJzaW9uKS4gIgorIlVzdWFsbHkgdGhpcyBmaWVsZCBwb2ludHMgdG8gdGhlIGxhdGVzdCB2ZXJzaW9uIG9mIHRoZSBwYWNrYWdlLCBzdWNoIGFzIHRoZSAiCisibWFpbiBicmFuY2ggb3IgdGhlIHRydW5rLiIKK21zZ3N0ciAiIgorIkNlIGNoYW1wIGluZGlxdWUgbCdJPFVSTD4gZHUgc3lzdMOobWUgZGUgZ2VzdGlvbiBkZSB2ZXJzaW9uIHV0aWxpc8OpIHBvdXIgbGEgIgorImdlc3Rpb24gZHUgcGFxdWV0LiBMZXMgc3lzdMOobWVzIGfDqXLDqXMgc29udCBCPEFyY2g+LCBCPEJ6cj4gKEJhemFhciksIEI8Q3ZzPiwgIgorIkI8RGFyY3M+LCBCPEdpdD4sIEI8SGc+IChNZXJjdXJpYWwpLCBCPE10bj4gKE1vbm90b25lKSBldCBCPFN2bj4gIgorIihTdWJ2ZXJzaW9uKS4gRW4gZ8OpbsOpcmFsLCBjZSBjaGFtcCBmYWl0IHLDqWbDqXJlbmNlIMOgIGxhIGRlcm5pw6hyZSB2ZXJzaW9uIGR1ICIKKyJwYXF1ZXQsIGMnZXN0IMOgIGRpcmUgbGEgYnJhbmNoZSBwcmluY2lwYWxlIG91IGxlIMKrwqB0cnVua8KgwrsuIgorCisjLiB0eXBlOiBUUAorIzogZGViLXNyYy1jb250cm9sLjU6ODAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPFZjcy1Ccm93c2VyOj5JPCB1cmw+IgorbXNnc3RyICJCPFZjcy1Ccm93c2VyOj5JPCBVUkw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNTo4NAorbXNnaWQgIiIKKyJUaGUgSTx1cmw+IG9mIGEgd2ViaW50ZXJmYWNlIHRvIGJyb3dzZSB0aGUgVmVyc2lvbiBDb250cm9sIFN5c3RlbSByZXBvc2l0b3J5LiIKK21zZ3N0ciAiIgorImluZGlxdWUgbCdJPFVSTD4gZGUgbCdpbnRlcmZhY2Ugd2ViIHBlcm1ldHRhbnQgZGUgcGFyY291cmlyIGxlIGTDqXDDtHQgZHUgIgorInN5c3TDqG1lIGRlIGdlc3Rpb24gZGUgdmVyc2lvbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41Ojg5Cittc2dpZCAiIgorIlRoZSBuYW1lIG9mIHRoZSBkaXN0cmlidXRpb24gdGhpcyBwYWNrYWdlIGlzIG9yaWdpbmF0aW5nIGZyb20uIFRoaXMgZmllbGQgaXMgIgorInVzdWFsbHkgbm90IG5lZWRlZC4iCittc2dzdHIgIiIKKyJpbmRpcXVlIGxlIG5vbSBkZSBsYSBkaXN0cmlidXRpb24gZG9udCBsZSBwYXF1ZXQgcHJvdmllbnQuIENlIGNoYW1wIG4nZXN0ICIKKyJzb3V2ZW50IHBhcyBuw6ljZXNzYWlyZS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41Ojk1Cittc2dpZCAiIgorIlRoaXMgaXMgYSBnZW5lcmFsIGZpZWxkIHRoYXQgZ2l2ZXMgdGhlIHBhY2thZ2UgYSBjYXRlZ29yeSBiYXNlZCBvbiB0aGUgIgorInNvZnR3YXJlIHRoYXQgaXQgaW5zdGFsbHMuIFNvbWUgY29tbW9uIHNlY3Rpb25zIGFyZSBcInV0aWxzXCIsIFwibmV0XCIsICIKKyJcIm1haWxcIiwgXCJ0ZXh0XCIsIFwieDExXCIsIGV0Yy4iCittc2dzdHIgIiIKKyJjaGFtcCBnw6luw6lyYWwgcXVpIGluZGlxdWUgbGEgY2F0w6lnb3JpZSBkJ3VuIHBhcXVldMKgOyBjZXR0ZSBjYXTDqWdvcmllIGVzdCAiCisiZm9uZMOpZSBzdXIgbGVzIHByb2dyYW1tZXMgcXVlIGNlIHBhcXVldCBpbnN0YWxsZS4gwqvCoFV0aWxzwqDCuywgwqvCoG5ldMKgwrssICIKKyLCq8KgbWFpbMKgwrssIMKrwqB0ZXh0wqDCuywgwqvCoHgxMcKgwrssIGV0Yy4gcmVwcsOpc2VudGVudCBxdWVscXVlcyBjYXTDqWdvcmllcyAiCisiaGFiaXR1ZWxsZXMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToxMDAKK21zZ2lkICIiCisiU2V0cyB0aGUgaW1wb3J0YW5jZSBvZiB0aGlzIHBhY2thZ2UgaW4gcmVsYXRpb24gdG8gdGhlIHN5c3RlbSBhcyBhIHdob2xlLiAgIgorIkNvbW1vbiBwcmlvcml0aWVzIGFyZSBcInJlcXVpcmVkXCIsIFwic3RhbmRhcmRcIiwgXCJvcHRpb25hbFwiLCBcImV4dHJhXCIsICIKKyJldGMuIgorbXNnc3RyICIiCisiZMOpZmluaXQgbCdpbXBvcnRhbmNlIGR1IHBhcXVldCDDoCBsJ2ludMOpcmlldXIgZHUgc3lzdMOobWUgZ8OpbsOpcmFsLiAiCisiwqvCoFJlcXVpcmVkwqDCuywgwqvCoHN0YW5kYXJkwqDCuywgwqvCoG9wdGlvbmFswqDCuywgwqvCoGV4dHJhwqDCuywgZXRjLiByZXByw6lzZW50ZW50IGRlcyAiCisicHJpb3JpdMOpcyBoYWJpdHVlbGxlcy4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3JjLWNvbnRyb2wuNToxMTAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPEJ1aWxkLURlcGVuZHM6Pkk8IHBhY2thZ2UtbGlzdD4iCittc2dzdHIgIkI8QnVpbGQtRGVwZW5kczo+STwgbGlzdGUgZGUgcGFxdWV0cz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjExNAorbXNnaWQgIiIKKyJBIGxpc3Qgb2YgcGFja2FnZXMgdGhhdCBuZWVkIHRvIGJlIGluc3RhbGxlZCBhbmQgY29uZmlndXJlZCB0byBiZSBhYmxlIHRvICIKKyJidWlsZCB0aGUgc291cmNlIHBhY2thZ2UuIgorbXNnc3RyICIiCisibGlzdGUgZGVzIHBhcXVldHMgcXUnaWwgZXN0IG7DqWNlc3NhaXJlIGQnaW5zdGFsbGVyIGV0IGNvbmZpZ3VyZXIgcG91ciAiCisicG91dm9pciBjb25zdHJ1aXJlIGxlIHBhcXVldCBzb3VyY2UuIgorCisjLiB0eXBlOiBUUAorIzogZGViLXNyYy1jb250cm9sLjU6MTE1CisjLCBuby13cmFwCittc2dpZCAiQjxCdWlsZC1EZXBlbmRzLUluZGVwOj5JPCBwYWNrYWdlLWxpc3Q+IgorbXNnc3RyICJCPEJ1aWxkLURlcGVuZHMtSW5kZXA6Pkk8IGxpc3RlIGRlIHBhcXVldHM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToxMjAKK21zZ2lkICIiCisiU2FtZSBhcyBCPEJ1aWxkLURlcGVuZHM+LCBidXQgdGhleSBhcmUgb25seSBuZWVkZWQgd2hlbiBidWlsZGluZyB0aGUgIgorImFyY2hpdGVjdHVyZSBpbmRlcGVuZGVudCBwYWNrYWdlcy4gVGhlIEI8QnVpbGQtRGVwZW5kcz4gYXJlIGFsc28gaW5zdGFsbGVkICIKKyJpbiB0aGlzIGNhc2UuIgorbXNnc3RyICIiCisibGlzdGUgYW5hbG9ndWUgw6AgQjxCdWlsZC1EZXBlbmRzPiwgbWFpcyByZXN0cmVpbnRlIGF1eCBwYXF1ZXRzIG7DqWNlc3NhaXJlcyAiCisicG91ciBjb25zdHJ1aXJlIGxlcyBwYXF1ZXRzIGluZMOpcGVuZGFudHMgZGUgbCdhcmNoaXRlY3R1cmUuIExlcyBwYXF1ZXRzICIKKyJpbmRpcXXDqXMgZGFucyBCPEJ1aWxkLURlcGVuZHM+IHNvbnQgYWxvcnMgYXVzc2kgaW5zdGFsbMOpcy4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3JjLWNvbnRyb2wuNToxMjEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPEJ1aWxkLUNvbmZsaWN0czo+STwgcGFja2FnZS1saXN0PiIKK21zZ3N0ciAiQjxCdWlsZC1Db25mbGljdHM6Pkk8IGxpc3RlIGRlIHBhcXVldHM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToxMjUKK21zZ2lkICIiCisiQSBsaXN0IG9mIHBhY2thZ2VzIHRoYXQgc2hvdWxkIG5vdCBiZSBpbnN0YWxsZWQgd2hlbiB0aGUgcGFja2FnZSBpcyBidWlsZCwgIgorImZvciBleGFtcGxlIGJlY2F1c2UgdGhleSBpbnRlcmZlcmUgd2l0aCB0aGUgdXNlZCBidWlsZCBzeXN0ZW0uIgorbXNnc3RyICIiCisibGlzdGUgZGUgcGFxdWV0cyBxdWkgbmUgZG9pdmVudCBwYXMgw6p0cmUgaW5zdGFsbMOpcyBsb3JzcXVlIGxlIHBhcXVldCBlc3QgIgorImNvbnN0cnVpdCwgcGFyIGV4ZW1wbGUgcydpbHMgaW50ZXJmw6hyZW50IGF2ZWMgbGUgc3lzdMOobWUgZGUgY29uc3RydWN0aW9uICIKKyJ1dGlsaXPDqS4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3JjLWNvbnRyb2wuNToxMjYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPEJ1aWxkLUNvbmZsaWN0cy1JbmRlcDo+STwgcGFja2FnZS1saXN0PiIKK21zZ3N0ciAiQjxCdWlsZC1Db25mbGljdHMtSW5kZXA6Pkk8IGxpc3RlIGRlIHBhcXVldHM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToxMzAKK21zZ2lkICIiCisiU2FtZSBhcyBCPEJ1aWxkLUNvbmZsaWN0cz4sIGJ1dCBvbmx5IHdoZW4gYnVpbGRpbmcgdGhlIGFyY2hpdGVjdHVyZSAiCisiaW5kZXBlbmRlbnQgcGFja2FnZXMuIgorbXNnc3RyICIiCisibGlzdGUgYW5hbG9ndWUgw6AgQjxCdWlsZC1Db25mbGljdHM+IG1haXMgcmVzdHJlaW50ZSDDoCBsYSBjb25zdHJ1Y3Rpb24gZGVzICIKKyJwYXF1ZXRzIGluZMOpcGVuZGFudHMgZGUgbCdhcmNoaXRlY3R1cmUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToxNDEKK21zZ2lkICIiCisiVGhlIHN5bnRheCBvZiB0aGUgQjxCdWlsZC1EZXBlbmRzPiBhbmQgQjxCdWlsZC1EZXBlbmRzLUluZGVwPiBmaWVsZHMgaXMgYSAiCisibGlzdCBvZiBncm91cHMgb2YgYWx0ZXJuYXRpdmUgcGFja2FnZXMuIEVhY2ggZ3JvdXAgaXMgYSBsaXN0IG9mIHBhY2thZ2VzICIKKyJzZXBhcmF0ZWQgYnkgdmVydGljYWwgYmFyIChvciBcInBpcGVcIikgc3ltYm9scywgXCJ8XCIuIFRoZSBncm91cHMgYXJlICIKKyJzZXBhcmF0ZWQgYnkgY29tbWFzLiBDb21tYXMgYXJlIHRvIGJlIHJlYWQgYXMgXCJBTkRcIiwgYW5kIHBpcGVzIGFzIFwiT1JcIiwgIgorIndpdGggcGlwZXMgYmluZGluZyBtb3JlIHRpZ2h0bHkuIEVhY2ggcGFja2FnZSBuYW1lIGlzIG9wdGlvbmFsbHkgZm9sbG93ZWQgYnkgIgorImEgdmVyc2lvbiBudW1iZXIgc3BlY2lmaWNhdGlvbiBpbiBwYXJlbnRoZXNlcyBhbmQgYW4gYXJjaGl0ZWN0dXJlICIKKyJzcGVjaWZpY2F0aW9uIGluIHNxdWFyZSBicmFja2V0cy4iCittc2dzdHIgIiIKKyJMYSBzeW50YXhlIGRlcyBjaGFtcHMgQjxCdWlsZC1EZXBlbmRzPiBCPEJ1aWxkLURlcGVuZHMtSW5kZXA+ZXN0IHVuZSBsaXN0ZSAiCisiZGUgZ3JvdXBlcyBjb250ZW5hbnQgZGVzIHBhcXVldHMgc3VjY2Vzc2lmcy4gQ2hhcXVlIGdyb3VwZSBlc3QgdW5lIGxpc3RlIGRlICIKKyJwYXF1ZXRzIHPDqXBhcsOpcyBwYXIgdW5lIGJhcnJlIHZlcnRpY2FsZSAobGUgc3ltYm9sZSBkdSB0dWJlKSDCq8KgfMKgwrsuIExlcyAiCisiZ3JvdXBlcyBzb250IHPDqXBhcsOpcyBwYXIgZGVzIHZpcmd1bGVzLiBVbmUgdmlyZ3VsZSByZXByw6lzZW50ZSB1biDCq8KgRVTCoMK7ICIKKyJsb2dpcXVlIGV0IHVuZSBiYXJyZSB2ZXJ0aWNhbGUgcmVwcsOpc2VudGUgdW4gwqvCoE9VwqDCuyBsb2dpcXVlwqA7IGxlIHR1YmUgIgorInJlcHLDqXNlbnRlIHVuIGxpZW4gcGx1cyBmb3J0LiBDaGFxdWUgw6lsw6ltZW50IGVzdCBsZSBub20gZCd1biBwYXF1ZXQgc3VpdmkgZGUgIgorImZhw6dvbiBvcHRpb25uZWxsZSBwYXIgdW4gbnVtw6lybyBkZSB2ZXJzaW9uIGVudHJlIHBhcmVudGjDqHNlcyBldCB1bmUgIgorImluZGljYXRpb24gZCdhcmNoaXRlY3R1cmUgZW50cmUgYWNjb2xhZGVzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MTUwCittc2dpZCAiIgorIlRoZSBzeW50YXggb2YgdGhlIEI8QnVpbGQtQ29uZmxpY3RzPiBhbmQgQjxCdWlsZC1Db25mbGljdHMtSW5kZXA+IGZpZWxkcyBpcyAiCisiYSBsaXN0IG9mIGNvbW1hLXNlcGFyYXRlZCBwYWNrYWdlIG5hbWVzLCB3aGVyZSB0aGUgY29tbWEgaXMgcmVhZCBhcyBhbiBcIkFORCIKKyJcIi4gU3BlY2lmeWluZyBhbHRlcm5hdGl2ZSBwYWNrYWdlcyB1c2luZyBhIFwicGlwZVwiIGlzIG5vdCBzdXBwb3J0ZWQuICBFYWNoICIKKyJwYWNrYWdlIG5hbWUgaXMgb3B0aW9uYWxseSBmb2xsb3dlZCBieSBhIHZlcnNpb24gbnVtYmVyIHNwZWNpZmljYXRpb24gaW4gIgorInBhcmVudGhlc2VzIGFuZCBhbiBhcmNoaXRlY3R1cmUgc3BlY2lmaWNhdGlvbiBpbiBzcXVhcmUgYnJhY2tldHMuIgorbXNnc3RyICIiCisiTGEgc3ludGF4ZSBkZXMgY2hhbXBzIEI8QnVpbGQtQ29uZmxpY3RzPiBCPEJ1aWxkLUNvbmZsaWN0cy1JbmRlcD5lc3QgdW5lICIKKyJsaXN0ZSBkZSBwYXF1ZXRzIHPDqXBhcsOpcyBwYXIgZGVzIHZpcmd1bGVzIHF1aSByZXByw6lzZW50ZW50IGxlIMKrwqBFVMKgwrsgIgorImxvZ2lxdWUuIEwnaW5kaWNhdGlvbiBkZSBwYXF1ZXRzIGFsdGVybmF0aWZzIGF2ZWMgdW5lIGJhcnJlIHZlcnRpY2FsZSAobGUgIgorInN5bWJvbGUgZHUgdHViZSkgwqvCoHzCoMK7IG4nZXN0IHBhcyBwcmlzZSBlbiBjaGFyZ2UuIENoYXF1ZSBvbSBkZSBwYXF1ZXQgcGV1dCAiCisiw6p0cmUgc3VpdmkgZGUgZmHDp29uIG9wdGlvbm5lbGxlIHBhciB1biBudW3DqXJvIGRlIHZlcnNpb24gZW50cmUgcGFyZW50aMOoc2VzICIKKyJldCB1bmUgaW5kaWNhdGlvbiBkJ2FyY2hpdGVjdHVyZSBlbnRyZSBhY2NvbGFkZXMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToxNTYKK21zZ2lkICIiCisiQSB2ZXJzaW9uIG51bWJlciBtYXkgc3RhcnQgd2l0aCBhIFwiRTxndD5FPGd0PlwiLCBpbiB3aGljaCBjYXNlIGFueSBsYXRlciAiCisidmVyc2lvbiB3aWxsIG1hdGNoLCBhbmQgbWF5IHNwZWNpZnkgb3Igb21pdCB0aGUgRGViaWFuIHBhY2thZ2luZyByZXZpc2lvbiAiCisiKHNlcGFyYXRlZCBieSBhIGh5cGhlbikuIEFjY2VwdGVkIHZlcnNpb24gcmVsYXRpb25zaGlwcyBhcmUgXCJFPGd0PkU8Z3Q+XCIgIgorImZvciBncmVhdGVyIHRoYW4sIFwiRTxsdD5FPGx0PlwiIGZvciBsZXNzIHRoYW4sIFwiRTxndD49XCIgZm9yIGdyZWF0ZXIgdGhhbiAiCisib3IgZXF1YWwgdG8sIFwiRTxsdD49XCIgZm9yIGxlc3MgdGhhbiBvciBlcXVhbCB0bywgYW5kIFwiPVwiIGZvciBlcXVhbCB0by4iCittc2dzdHIgIiIKKyJVbiBudW3DqXJvIGRlIHZlcnNpb24gcGV1dCBjb21tZW5jZXIgcGFyIMKrwqBFPGd0PkU8Z3Q+wqDCuywgZXQgZGFucyBjZSBjYXMgdG91dGUgIgorInZlcnNpb24gc3Vww6lyaWV1cmUgY29ycmVzcG9uZHJhLCBldCBpbCBwZXV0IGluZGlxdWVyIChvdSBwYXMpIGxlIG51bcOpcm8gZGUgIgorInLDqXZpc2lvbiBwb3VyIGxlIHBhcXVldCBEZWJpYW4gKGxlcyBkZXV4IG51bcOpcm9zIMOpdGFudCBzw6lwYXLDqXMgcGFyIHVuIHRyYWl0ICIKKyJkJ3VuaW9uKS4gVm9pY2kgbGVzIHJlbGF0aW9ucyBhY2NlcHTDqWVzIHBvdXIgbGVzIHZlcnNpb25zwqA6IMKrwqBFPGd0PkU8Z3Q+wqDCuyAiCisicG91ciBzdXDDqXJpZXVyIMOgLCDCq8KgRTxsdD5FPGx0PsKgwrsgcG91ciBpbmbDqXJpZXVyIMOgLCDCq8KgRTxndD49wqDCuyBwb3VyIHN1cMOpcmlldXIgIgorIm91IMOpZ2FsLCDCq8KgRTxsdD49wqDCuyBwb3VyIGluZsOpcmlldXIgb3Ugw6lnYWwsIGV0IMKrwqA9wqDCuyBwb3VyIMOpZ2FsIMOgLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MTYwCittc2dpZCAiIgorIkEgYXJjaGl0ZWN0dXJlIHNwZWNpZmljYXRpb24gY29uc2lzdHMgb2Ygb25lIG9yIG1vcmUgYXJjaGl0ZWN0dXJlIG5hbWVzLCAiCisic2VwYXJhdGVkIGJ5IHdoaXRlc3BhY2UuIEV4Y2xhbWF0aW9uIG1hcmtzIG1heSBiZSBwcmVwZW5kZWQgdG8gZWFjaCBvZiB0aGUgIgorIm5hbWVzLCBtZWFuaW5nIFwiTk9UXCIuIgorbXNnc3RyICIiCisiVW5lIGluZGljYXRpb24gZCdhcmNoaXRlY3R1cmUgY29uc2lzdGUgZW4gdW4gb3UgcGx1c2lldXJzIG5vbXMgIgorImQnYXJjaGl0ZWN0dXJlcywgc8OpcGFyw6lzIHBhciBkZXMgZXNwYWNlcy4gVW4gbm9tIGQnYXJjaGl0ZWN0dXJlIHBldXQgw6p0cmUgIgorInByw6ljw6lkw6kgZCd1biBwb2ludCBkJ2VjbGFtYXRpb24gcXVpIGNvcnJlc3BvbmQgYWxvcnMgYXUgwqvCoE5PTsKgwrsgbG9naXF1ZS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjE2NQorbXNnaWQgIiIKKyJOb3RlIHRoYXQgZGVwZW5kZW5jaWVzIG9uIHBhY2thZ2VzIGluIHRoZSBCPGJ1aWxkLWVzc2VudGlhbD4gc2V0IGNhbiBiZSAiCisib21pdHRlZCBhbmQgdGhhdCBkZWNsYXJpbmcgYnVpbGQgY29uZmxpY3RzIGFnYWluc3QgdGhlbSBpcyBpbXBvc3NpYmxlLiBBICIKKyJsaXN0IG9mIHRoZXNlIHBhY2thZ2VzIGlzIGluIHRoZSBidWlsZC1lc3NlbnRpYWwgcGFja2FnZS4iCittc2dzdHIgIiIKKyJWZXVpbGxleiBub3RlciBxdWUgbGVzIGTDqXBlbmRhbmNlIHF1ZSBsZXMgcGFxdWV0cyBkdSBqZXUgQjxidWlsZC1lc3NlbnRpYWw+ICIKKyJwZXV2ZW50IMOqdHJlIG9taXNlcyBldCBxdSdpbCBuJ2VzdCBwYXMgcG9zc2libGUgZGUgZMOpY2xhcmVyIGRlcyBjb25mbGl0cyAiCisiYXZlYyBjZXMgcGFxdWV0cy4gTGEgbGlzdGUgZGVzIHBhcXVldHMgY29uY2VybsOpcyBlc3QgZm91cm5pZSBwYXIgbGUgcGFxdWV0ICIKKyJidWlsZC1lc3NlbnRpYWwuIgorCisjLiB0eXBlOiBTSAorIzogZGViLXNyYy1jb250cm9sLjU6MTY3CisjLCBuby13cmFwCittc2dpZCAiQklOQVJZIEZJRUxEUyIKK21zZ3N0ciAiQ0hBTVBTIEJJTkFJUkVTIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToxNzYKK21zZ2lkICIiCisiTm90ZSB0aGF0IHRoZSBCPFByaW9yaXR5PiwgQjxTZWN0aW9uPiBhbmQgQjxIb21lcGFnZT4gZmllbGRzIGNhbiBhbHNvIGJlIGluICIKKyJhIGJpbmFyeSBwYXJhZ3JhcGggdG8gb3ZlcnJpZGUgdGhlIGdsb2JhbCB2YWx1ZSBmcm9tIHRoZSBzb3VyY2UgcGFja2FnZS4iCittc2dzdHIgIiIKKyJWZXVpbGxleiBub3RlciBxdWUgbGVzIGNoYW1wcyBCPFByaW9yaXR5PiwgQjxTZWN0aW9uPiBhbmQgQjxIb21lcGFnZT4gIgorInBldXZlbnQgw6p0cmUgcGxhY8OpcyBkYW5zIGxlIHBhcmFncmFwaGUgZCd1biBwYXF1ZXQgYmluYWlyZSBldCBsZXVyIHZhbGV1ciAiCisicmVtcGxhY2UgYWxvcnMgY2VsbGUgZHUgcGFxdWV0IHNvdXJjZS4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3JjLWNvbnRyb2wuNToxNzcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPFBhY2thZ2U6PiBJPGJpbmFyeS1wYWNrYWdlLW5hbWU+IChyZXF1aXJlZCkiCittc2dzdHIgIkI8UGFja2FnZTo+IEk8bm9tIGR1IHBhcXVldCBiaW5haXJlPiAocmVxdWlzKSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MTgxCittc2dpZCAiIgorIlRoaXMgZmllbGQgaXMgdXNlZCB0byBuYW1lIHRoZSBiaW5hcnkgcGFja2FnZSBuYW1lLiBUaGUgc2FtZSByZXN0cmljdGlvbnMgYXMgIgorInRvIGEgc291cmNlIHBhY2thZ2UgbmFtZSBhcHBseS4iCittc2dzdHIgIiIKKyJDZSBjaGFtcCBzZXJ0IMOgIGluZGlxdWVyIGxlIG5vbSBkdSBwYXF1ZXQgYmluYWlyZS4gTGVzIHJlc3RyaWN0aW9ucyBzb250IGxlcyAiCisibcOqbWVzIHF1ZSBjZWxsZSBkZXMgcGFxdWV0cyBzb3VyY2UuIgorCisjLiB0eXBlOiBUUAorIzogZGViLXNyYy1jb250cm9sLjU6MTgyCisjLCBuby13cmFwCittc2dpZCAiQjxBcmNoaXRlY3R1cmU6PiBJPGFyY2g+fEI8YWxsPnxCPGFueT4gKHJlcXVpcmVkKSIKK21zZ3N0ciAiQjxBcmNoaXRlY3R1cmU6PiBJPGFyY2g+fEI8YWxsPnxCPGFueT4gKHJlcXVpcykiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjE5NQorbXNnaWQgIiIKKyJUaGUgYXJjaGl0ZWN0dXJlIHNwZWNpZmllcyBvbiB3aGljaCB0eXBlIG9mIGhhcmR3YXJlIHRoaXMgcGFja2FnZSBydW5zLiBGb3IgIgorInBhY2thZ2VzIHRoYXQgcnVuIG9uIGFsbCBhcmNoaXRlY3R1cmVzLCB1c2UgdGhlIEI8YW55PiB2YWx1ZS4gRm9yIHBhY2thZ2VzICIKKyJ0aGF0IGFyZSBhcmNoaXRlY3R1cmUgaW5kZXBlbmRlbnQsIHN1Y2ggYXMgc2hlbGwgYW5kIFBlcmwgc2NyaXB0cyBvciAiCisiZG9jdW1lbnRhdGlvbiwgdXNlIHRoZSBCPGFsbD4gdmFsdWUuIFRvIHJlc3RyaWN0IHRoZSBwYWNrYWdlcyB0byBhIGNlcnRhaW4gIgorInNldCBvZiBhcmNoaXRlY3R1cmVzLCBzcGVjaWZ5IHRoZSBhcmNoaXRlY3R1cmUgbmFtZXMsIHNlcGFyYXRlZCBieSBhIHNwYWNlLiAiCisiSXQncyBhbHNvIHBvc3NpYmxlIHRvIHB1dCBhcmNoaXRlY3R1cmUgd2lsZGNhcmRzIGluIHRoYXQgbGlzdCAoc2VlIEI8ZHBrZy0iCisiYXJjaGl0ZWN0dXJlPigxKSAgZm9yIG1vcmUgaW5mb3JtYXRpb24gYWJvdXQgdGhlbSkuIgorbXNnc3RyICIiCisiQ2UgY2hhbXAgaW5kaXF1ZSBsJ2FyY2hpdGVjdHVyZSBtYXTDqXJpZWxsZSBzdXIgbGFxdWVsbGUgbGUgcGFxdWV0IHBldXQgw6p0cmUgIgorInV0aWxpc8OpLiBMZXMgcGFxdWV0cyBxdWkgcGV1dmVudCDDqnRyZSB1dGlsaXPDqXMgc3VyIHRvdXRlIGFyY2hpdGVjdHVyZSAiCisiZG9pdmVudCB1dGlsaXNlciBsZSBjaGFtcCBCPGFueT4uIExlcyBwYXF1ZXRzIGluZMOpcGVuZGFudHMgZGUgIgorImwnYXJjaGl0ZWN0dXJlLCB0ZWxzIGxlcyBzY3JpcHRzIHNoZWxsIG91IFBlcmwgb3UgbGEgZG9jdW1lbnRhdGlvbiB1dGlsaXNlbnQgIgorImxhIHZhbGV1ciBCPGFsbD4uIFBvdXIgcmVzdHJlaW5kcmUgdW4gcGFxdWV0IMOgIGNlcnRhaW5lcyBhcmNoaXRlY3R1cmVzLCAiCisibGV1cnMgbm9tcyBkb2l2ZW50IMOqdHJlIGluZGlxdcOpcyBzw6lwYXLDqXMgcGFyIGRlcyBlc3BhY2VzLiBJbCBlc3Qgw6lnYWxlbWVudCAiCisicG9zc2libGUgZCd1dGlsaXNlciBkZXMgbm9tcyBnw6luw6lyaXF1ZXMgZCdhcmNoaXRlY3R1cmVzIGRhbnMgY2V0dGUgbGlzdGUgIgorIih2b2lyIEI8ZHBrZy1hcmNoaXRlY3R1cmU+KDEpIHBvdXIgcGx1cyBkJ2luZm9ybWF0aW9ucyBzdXIgY2VzIGFyY2hpdGVjdHVyZXMgIgorImfDqW7DqXJpcXVlcykuIgorCisjLiB0eXBlOiBUUAorIzogZGViLXNyYy1jb250cm9sLjU6MTk2CisjLCBuby13cmFwCittc2dpZCAiQjxQYWNrYWdlLVR5cGU6PiBCPGRlYj58Qjx1ZGViPiIKK21zZ3N0ciAiQjxQYWNrYWdlLVR5cGU6PiBCPGRlYj58Qjx1ZGViPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MjAxCittc2dpZCAiIgorIlRoaXMgZmllbGQgZGVmaW5lcyB0aGUgdHlwZSBvZiB0aGUgcGFja2FnZS4gXCJ1ZGViXCIgaXMgZm9yIHNpemUtY29uc3RyYWluZWQgIgorInBhY2thZ2VzIHVzZWQgYnkgdGhlIGRlYmlhbiBpbnN0YWxsZXIuIFwiZGViXCIgaXMgdGhlIGRlZmF1bHQgdmFsdWUsIGl0J3MgIgorImFzc3VtZWQgaWYgdGhlIGZpZWxkIGlzIGFic2VudC4gTW9yZSB0eXBlcyBtaWdodCBiZSBhZGRlZCBpbiB0aGUgZnV0dXJlLiIKK21zZ3N0ciAiIgorIkNlIGNoYW1wIGluZGlxdWUgbGUgdHlwZSBkZSBwYXF1ZXQuIExhIHZhbGV1ciDCq8KgdWRlYsKgwrsgZXN0IMOgIHV0aWxpc2VyIHBvdXIgIgorImxlcyBwYXF1ZXRzIMOgIHRhaWxsZSBjb250csO0bMOpZSB1dGlsaXPDqXMgcGFyIGwnaW5zdGFsbGF0ZXVyIERlYmlhbi4gTGEgdmFsZXVyICIKKyLCq8KgZGViwqDCuyBlc3QgbGEgdmFsZXVyIHBhciBkw6lmYXV0IHF1aSBlc3QgdXRpbGlzw6llIHNpIGxlIGNoYW1wIG4nZXN0IHBhcyAiCisicHLDqXNlbnQuIERlIG5vdXZlYXV4IHR5cGVzIHBvdXJyYWllbnQgw6p0cmUgYWpvdXTDqXMgYXUgZmlsIGR1IHRlbXBzLiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zcmMtY29udHJvbC41OjIyNQorIywgbm8td3JhcAorbXNnaWQgIkI8RGVzY3JpcHRpb246PiBJPHNob3J0LWRlc2NyaXB0aW9uPiAocmVxdWlyZWQpIgorbXNnc3RyICJCPERlc2NyaXB0aW9uOj4gSTxkZXNjcmlwdGlvbiBjb3VydGU+IChyZXF1aXMpIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToyMzIKK21zZ2lkICIiCisiVGhlc2UgZmllbGRzIGFyZSBkZXNjcmliZWQgaW4gdGhlIEI8ZGViLWNvbnRyb2w+KDUpICBtYW51YWwgcGFnZSwgYXMgdGhleSAiCisiYXJlIGNvcGllZCBsaXRlcmFsbHkgdG8gdGhlIGNvbnRyb2wgZmlsZSBvZiB0aGUgYmluYXJ5IHBhY2thZ2UuIgorbXNnc3RyICIiCisiQ2VzIGNoYW1wcyBzb250IGTDqWNyaXRzIGRhbnMgbGEgcGFnZSBkZSBtYW51ZWwgZGUgQjxkZWItY29udHJvbD4oNSksIGNhciBpbHMgIgorInNvbnQgY29wacOpcyBsaXR0w6lyYWxlbWVudCBkYW5zIGxlIGZpY2hpZXIgwqvCoGNvbnRyb2zCoMK7IGR1IHBhcXVldCBiaW5haXJlLiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zcmMtY29udHJvbC41OjI0OAorIywgbm8td3JhcAorbXNnaWQgIkI8RW5oYW5jZXM6Pkk8IHBhY2thZ2UtbGlzdD4iCittc2dzdHIgIkI8RW5oYW5jZXM6Pkk8IGxpc3RlIGRlIHBhcXVldHM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToyNzAKK21zZ2lkICIiCisiVGhlc2UgZmllbGRzIGRlY2xhcmUgcmVsYXRpb25zaGlwcyBiZXR3ZWVuIHBhY2thZ2VzLiBUaGV5IGFyZSBkaXNjdXNzZWQgaW4gIgorInRoZSBCPGRlYi1jb250cm9sPig1KSAgbWFucGFnZSBhbmQgaW4gdGhlIEI8ZGViaWFuLXBvbGljeT4gcGFja2FnZS4iCittc2dzdHIgIiIKKyJDZXMgY2hhbXBzIGluZGlxdWVudCBsZXMgcmVsYXRpb25zIGVudHJlIGxlcyBwYXF1ZXRzLiBJbHMgc29udCBkw6l0YWlsbMOpcyAiCisiZGFucyBsYSBwYWdlIGRlIG1hbnVlbCBCPGRlYi1jb250cm9sPig1KSBldCBkYW5zIGxlIHBhcXVldCBCPGRlYmlhbi1wb2xpY3k+LiIKKworIy4gdHlwZTogU0gKKyM6IGRlYi1zcmMtY29udHJvbC41OjI3MQorIywgbm8td3JhcAorbXNnaWQgIlVTRVItREVGSU5FRCBGSUVMRFMiCittc2dzdHIgIkxFUyBDSEFNUFMgVVRJTElTQVRFVVIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjI4NgorbXNnaWQgIiIKKyJJdCBpcyBhbGxvd2VkIHRvIGFkZCBhZGRpdGlvbmFsIHVzZXItZGVmaW5lZCBmaWVsZHMgdG8gdGhlIGNvbnRyb2wgZmlsZS4gVGhlICIKKyJ0b29scyB3aWxsIGlnbm9yZSB0aGVzZSBmaWVsZHMuIElmIHlvdSB3YW50IHRoZSBmaWVsZHMgdG8gYmUgY29waWVkIG92ZXIgdG8gIgorInRoZSBvdXRwdXQgZmlsZXMsIHN1Y2ggYXMgdGhlIGJpbmFyeSBwYWNrYWdlcywgeW91IG5lZWQgdG8gdXNlIGEgY3VzdG9tICIKKyJuYW1pbmcgc2NoZW1lOiB0aGUgZmllbGRzIHNob3VsZCBzdGFydCB3aXRoIGEgWCwgZm9sbG93ZWQgYnkgb25lIG9yIG1vcmUgb2YgIgorInRoZSBsZXR0ZXJzIEJDUyBhbmQgYSBoeXBlbi4gSWYgdGhlIGxldHRlciBCIGlzIHVzZWQsIHRoZSBmaWVsZCB3aWxsIGFwcGVhciAiCisiaW4gdGhlIGNvbnRyb2wgZmlsZSBpbiB0aGUgYmluYXJ5IHBhY2thZ2UsIHNlZSBCPGRlYi1jb250cm9sPig1KSwgZm9yIHRoZSAiCisibGV0dGVyIFMgaW4gdGhlIHNvdXJjZSBwYWNrYWdlIGNvbnRyb2wgZmlsZSBhcyBjb25zdHJ1Y3RlZCBieSBCPGRwa2ctc291cmNlPiIKKyIoMSkgIGFuZCBmb3IgdGhlIGxldHRlciBDIGluIHRoZSB1cGxvYWQgY29udHJvbCAoLmNoYW5nZXMpIGZpbGUuIE5vdGUgdGhhdCAiCisidGhlIFhbQkNTXS0gcHJlZml4ZXMgYXJlIHN0cmlwcGVkIHdoZW4gdGhlIGZpZWxkcyBhcmUgY29waWVkIG92ZXIgdG8gdGhlICIKKyJvdXRwdXQgZmlsZXMuIEEgZmllbGQgQjxYQy1BcHByb3ZlZC1CeT4gd2lsbCBhcHBlYXIgYXMgQjxBcHByb3ZlZC1CeT4gaW4gdGhlICIKKyJjaGFuZ2VzIGZpbGUgYW5kIHdpbGwgbm90IGFwcGVhciBpbiB0aGUgYmluYXJ5IG9yIHNvdXJjZSBwYWNrYWdlIGNvbnRyb2wgIgorImZpbGVzLiIKK21zZ3N0ciAiIgorIklsIGVzdCBwb3NzaWJsZSBkJ2Fqb3V0ZXIgZGVzIGNoYW1wcyBkw6lmaW5pcyBwYXIgbCd1dGlsaXNhdGV1ciBhdSBmaWNoaWVyICIKKyLCq8KgY29udHJvbMKgwrsuIExlcyBvdXRpbHMgbGVzIGlnbm9yZXJvbnQuIFNpIGNlcyBjaGFtcHMgZG9pdmVudCDDqnRyZSBjb3Bpw6lzICIKKyJ2ZXJzIGxlcyBmaWNoaWVycyBjcsOpw6lzLCBwYXIgZXhlbXBsZSBsZXMgcGFxdWV0cyBiaW5haXJlcywgaWwgZXN0ICIKKyJpbmRpc3BlbnNhYmxlIGQndXRpbGlzZXIgdW4gc2Now6ltYSBkZSBub21tYWdlIHBlcnNvbm5hbGlzw6nCoDrCoGxlcyBjaGFtcHMgIgorImRvaXZlbnQgY29tbWVuY2VyIHBhciBsYSBsZXR0cmUgWCBzdWl2aWUgZGUgbCd1biBkZXMgbGV0dHJlcyBCLCBDIG91IFMgZXQgIgorImQndW4gdGlyZXQuIFNpIGxhIGxldHRyZSBCIGVzdCB1dGlsaXPDqWUsIGxlIGNoYW1wIHNlcmEgY29wacOpIGRhbnMgbGUgZmljaGllciAiCisiwqvCoGNvbnRyb2zCoMK7IGR1IHBhcXVldCBiaW5haXJlLCB2b2lyIEI8ZGViLWNvbnRyb2w+KDUpLiBBdmVjIGxhIGxldHRyZSBTLCBsZSAiCisiY2hhbXAgc2VyYSBjb3Bpw6kgZGFucyBsZSBmaWNoaWVyIMKrwqBjb250cm9swqDCuyBkdSBwYXF1ZXQgc291cmNlIGNyw6nDqSBwYXIgIgorIkI8ZHBrZy1zb3VyY2U+KDEpLiBFbmZpbiwgbGEgbGV0dHJlIEMgcHJvdm9xdWVyYSBsYSByZWNvcGllIGR1IGNoYW1wIGRhbnMgbGUgIgorImZpY2hpZXIgZGUgY29udHLDtGxlIGRlIGwnZW52b2kgKMKrwqAuY2hhbmdlc8KgwrspLiBMZXMgcHLDqWZpeGVzIFhbQkNTXS0gc29udCAiCisic3VwcHJpbcOpcyBsb3JzIGRlIGNlcyByZWNvcGllcy4gQWluc2ksIHVuIGNoYW1wIEI8WEMtQXBwcm92ZWQtQnk+IGFwcGFyYcOudHJhICIKKyJzb3VzIGxlIG5vbSBCPEFwcHJvdmVkLUJ5PiBkYW5zIGxlIGZpY2hpZXIgwqvCoGNoYW5nZXPCoMK7IG1haXMgcGFzIGRhbnMgbGUgIgorImZpY2hpZXIgwqvCoGNvbnRyb2zCoMK7IGR1IHBhcXVldCBiaW5haXJlIG5pIGRhbnMgY2VsdWkgZHUgcGFxdWV0IHNvdXJjZS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjMwNAorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICIiCisjfCAiIyBDb21tZW50XG4iCisjfCAiU291cmNlOiBkcGtnXG4iCisjfCAiU2VjdGlvbjogYWRtaW5cbiIKKyN8ICJQcmlvcml0eTogcmVxdWlyZWRcbiIKKyN8ICJNYWludGFpbmVyOiBEcGtnIERldmVsb3BlcnMgRTxsdD5kZWJpYW4tZHBrZ0BsaXN0cy5kZWJpYW4ub3JnRTxndD5cbiIKKyN8ICIjIHRoaXMgZmllbGQgaXMgY29waWVkIHRvIHRoZSBiaW5hcnkgYW5kIHNvdXJjZSBwYWNrYWdlc1xuIgorI3wgIlhCUy1VcHN0cmVhbS1SZWxlYXNlLVN0YXR1czogc3RhYmxlXG4iCisjfCAiSG9tZXBhZ2U6IGh0dHA6Ly93aWtpLmRlYmlhbi5vcmcvVGVhbXMvRHBrZ1xuIgorI3wgIlZjcy1Ccm93c2VyOiBodHRwOi8vZ2l0LmRlYmlhbi5vcmcvP3A9ZHBrZy9kcGtnLmdpdFxuIgorI3wgIlZjcy1HaXQ6IGdpdDovL2dpdC5kZWJpYW4ub3JnL2dpdC9kcGtnL2Rwa2cuZ2l0XG4iCisjfCAiU3RhbmRhcmRzLVZlcnNpb246IDMuNy4zXG4iCisjfCAiQnVpbGQtRGVwZW5kczogcGtnLWNvbmZpZywgZGViaGVscGVyIChFPGd0Pj0gNC4xLjgxKSxcbiIKKyN8ICIgbGlic2VsaW51eDEtZGV2IChFPGd0Pj0gMS4yOC00KSBbIWh1cmQtaTM4NiAha2ZyZWVic2QtaTM4NiAha2ZyZWVic2QtYW1kNjRdXG4iCittc2dpZCAiIgorIiMgQ29tbWVudFxuIgorIlNvdXJjZTogZHBrZ1xuIgorIlNlY3Rpb246IGFkbWluXG4iCisiUHJpb3JpdHk6IHJlcXVpcmVkXG4iCisiTWFpbnRhaW5lcjogRHBrZyBEZXZlbG9wZXJzIEU8bHQ+ZGViaWFuLWRwa2dAbGlzdHMuZGViaWFuLm9yZ0U8Z3Q+XG4iCisiIyB0aGlzIGZpZWxkIGlzIGNvcGllZCB0byB0aGUgYmluYXJ5IGFuZCBzb3VyY2UgcGFja2FnZXNcbiIKKyJYQlMtVXBzdHJlYW0tUmVsZWFzZS1TdGF0dXM6IHN0YWJsZVxuIgorIkhvbWVwYWdlOiBodHRwOi8vd2lraS5kZWJpYW4ub3JnL1RlYW1zL0Rwa2dcbiIKKyJWY3MtQnJvd3NlcjogaHR0cDovL2dpdC5kZWJpYW4ub3JnLz9wPWRwa2cvZHBrZy5naXRcbiIKKyJWY3MtR2l0OiBnaXQ6Ly9naXQuZGViaWFuLm9yZy9naXQvZHBrZy9kcGtnLmdpdFxuIgorIlN0YW5kYXJkcy1WZXJzaW9uOiAzLjcuM1xuIgorIkJ1aWxkLURlcGVuZHM6IHBrZy1jb25maWcsIGRlYmhlbHBlciAoRTxndD49IDQuMS44MSksXG4iCisiIGxpYnNlbGludXgxLWRldiAoRTxndD49IDEuMjgtNCkgWyFsaW51eC1hbnldXG4iCittc2dzdHIgIiIKKyIjIENvbW1lbnRhaXJlXG4iCisiU291cmNlOiBkcGtnXG4iCisiU2VjdGlvbjogYWRtaW5cbiIKKyJQcmlvcml0eTogcmVxdWlyZWRcbiIKKyJNYWludGFpbmVyOiBEcGtnIERldmVsb3BlcnMgRTxsdD5kZWJpYW4tZHBrZ0BsaXN0cy5kZWJpYW4ub3JnRTxndD5cbiIKKyIjIGNlIGNoYW1wIGVzdCBjb3Bpw6kgZGFucyBsZXMgcGFxdWV0cyBzb3VyY2UgZXQgYmluYWlyZXNcbiIKKyJYQlMtVXBzdHJlYW0tUmVsZWFzZS1TdGF0dXM6IHN0YWJsZVxuIgorIkhvbWVwYWdlOiBodHRwOi8vd2lraS5kZWJpYW4ub3JnL1RlYW1zL0Rwa2dcbiIKKyJWY3MtQnJvd3NlcjogaHR0cDovL2dpdC5kZWJpYW4ub3JnLz9wPWRwa2cvZHBrZy5naXRcbiIKKyJWY3MtR2l0OiBnaXQ6Ly9naXQuZGViaWFuLm9yZy9naXQvZHBrZy9kcGtnLmdpdFxuIgorIlN0YW5kYXJkcy1WZXJzaW9uOiAzLjcuM1xuIgorIkJ1aWxkLURlcGVuZHM6IHBrZy1jb25maWcsIGRlYmhlbHBlciAoRTxndD49IDQuMS44MSksXG4iCisiIGxpYnNlbGludXgxLWRldiAoRTxndD49IDEuMjgtNCkgWyFodXJkLWkzODYgIWtmcmVlYnNkLWkzODYgIWtmcmVlYnNkLWFtZDY0XVxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNTozMjMKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiIgorI3wgIlBhY2thZ2U6IGRwa2ctZGV2XG4iCisjfCAiU2VjdGlvbjogdXRpbHNcbiIKKyN8ICJQcmlvcml0eTogb3B0aW9uYWxcbiIKKyN8ICJBcmNoaXRlY3R1cmU6IGFsbFxuIgorI3wgIiMgdGhpcyBpcyBhIGN1c3RvbSBmaWVsZCBpbiB0aGUgYmluYXJ5IHBhY2thZ2VcbiIKKyN8ICJYQi1NZW50b3JpbmctQ29udGFjdDogUmFwaGFlbCBIZXJ0em9nIEU8bHQ+aGVydHpvZ0BkZWJpYW4ub3JnRTxndD5cbiIKKyN8ICJEZXBlbmRzOiBkcGtnIChFPGd0Pj0gMS4xNC42KSwgcGVybDUsIHBlcmwtbW9kdWxlcywgY3BpbyAoRTxndD49IDIuNC4yLTIpLCBiemlwMiwgbHptYSxcbiIKKyN8ICIgcGF0Y2ggKEU8Z3Q+PSAyLjItMSksIG1ha2UsIGJpbnV0aWxzLCBsaWJ0aW1lZGF0ZS1wZXJsXG4iCisjfCAiUmVjb21tZW5kczogZ2NjIHwgYy1jb21waWxlciwgYnVpbGQtZXNzZW50aWFsXG4iCisjfCAiU3VnZ2VzdHM6IGdudXBnLCBkZWJpYW4ta2V5cmluZ1xuIgorI3wgIkNvbmZsaWN0czogZHBrZy1jcm9zcyAoRTxsdD5FPGx0PiAyLjAuMCksIGRldnNjcmlwdHMgKEU8bHQ+RTxsdD4gMi4xMC4yNilcbiIKKyN8ICJSZXBsYWNlczogbWFucGFnZXMtcGwgKEU8bHQ+PSAyMDA1MTExNy0xKVxuIgorI3wgIkRlc2NyaXB0aW9uOiBEZWJpYW4gcGFja2FnZSBkZXZlbG9wbWVudCB0b29sc1xuIgorI3wgIiBUaGlzIHBhY2thZ2UgcHJvdmlkZXMgdGhlIGRldmVsb3BtZW50IHRvb2xzIChpbmNsdWRpbmcgZHBrZy1zb3VyY2UpXG4iCisjfCAiIHJlcXVpcmVkIHRvIHVucGFjaywgYnVpbGQgYW5kIHVwbG9hZCBEZWJpYW4gc291cmNlIHBhY2thZ2VzLlxuIgorI3wgIiAuXG4iCisjfCAiIE1vc3QgRGViaWFuIHNvdXJjZSBwYWNrYWdlcyB3aWxsIHJlcXVpcmUgYWRkaXRpb25hbCB0b29scyB0byBidWlsZDtcbiIKKyN8ICIgZm9yIGV4YW1wbGUsIG1vc3QgcGFja2FnZXMgbmVlZCBtYWtlIGFuZCB0aGUgQyBjb21waWxlciBnY2MuXG4iCittc2dpZCAiIgorIlBhY2thZ2U6IGRwa2ctZGV2XG4iCisiU2VjdGlvbjogdXRpbHNcbiIKKyJQcmlvcml0eTogb3B0aW9uYWxcbiIKKyJBcmNoaXRlY3R1cmU6IGFsbFxuIgorIiMgdGhpcyBpcyBhIGN1c3RvbSBmaWVsZCBpbiB0aGUgYmluYXJ5IHBhY2thZ2VcbiIKKyJYQi1NZW50b3JpbmctQ29udGFjdDogUmFwaGFlbCBIZXJ0em9nIEU8bHQ+aGVydHpvZ0BkZWJpYW4ub3JnRTxndD5cbiIKKyJEZXBlbmRzOiBkcGtnIChFPGd0Pj0gMS4xNC42KSwgcGVybDUsIHBlcmwtbW9kdWxlcywgY3BpbyAoRTxndD49IDIuNC4yLTIpLFxuIgorIiBiemlwMiwgbHptYSwgcGF0Y2ggKEU8Z3Q+PSAyLjItMSksIG1ha2UsIGJpbnV0aWxzLCBsaWJ0aW1lZGF0ZS1wZXJsXG4iCisiUmVjb21tZW5kczogZ2NjIHwgYy1jb21waWxlciwgYnVpbGQtZXNzZW50aWFsXG4iCisiU3VnZ2VzdHM6IGdudXBnLCBkZWJpYW4ta2V5cmluZ1xuIgorIkNvbmZsaWN0czogZHBrZy1jcm9zcyAoRTxsdD5FPGx0PiAyLjAuMCksIGRldnNjcmlwdHMgKEU8bHQ+RTxsdD4gMi4xMC4yNilcbiIKKyJSZXBsYWNlczogbWFucGFnZXMtcGwgKEU8bHQ+PSAyMDA1MTExNy0xKVxuIgorIkRlc2NyaXB0aW9uOiBEZWJpYW4gcGFja2FnZSBkZXZlbG9wbWVudCB0b29sc1xuIgorIiBUaGlzIHBhY2thZ2UgcHJvdmlkZXMgdGhlIGRldmVsb3BtZW50IHRvb2xzIChpbmNsdWRpbmcgZHBrZy1zb3VyY2UpXG4iCisiIHJlcXVpcmVkIHRvIHVucGFjaywgYnVpbGQgYW5kIHVwbG9hZCBEZWJpYW4gc291cmNlIHBhY2thZ2VzLlxuIgorIiAuXG4iCisiIE1vc3QgRGViaWFuIHNvdXJjZSBwYWNrYWdlcyB3aWxsIHJlcXVpcmUgYWRkaXRpb25hbCB0b29scyB0byBidWlsZDtcbiIKKyIgZm9yIGV4YW1wbGUsIG1vc3QgcGFja2FnZXMgbmVlZCBtYWtlIGFuZCB0aGUgQyBjb21waWxlciBnY2MuXG4iCittc2dzdHIgIiIKKyJQYWNrYWdlOiBkcGtnLWRldlxuIgorIlNlY3Rpb246IHV0aWxzXG4iCisiUHJpb3JpdHk6IG9wdGlvbmFsXG4iCisiQXJjaGl0ZWN0dXJlOiBhbGxcbiIKKyIjIGNoYW1wIHBlcnNvbm5hbGlzw6kgZGFucyBsZSBwYXF1ZXQgYmluYWlyZVxuIgorIlhCLU1lbnRvcmluZy1Db250YWN0OiBSYXBoYWVsIEhlcnR6b2cgRTxsdD5oZXJ0em9nQGRlYmlhbi5vcmdFPGd0PlxuIgorIkRlcGVuZHM6IGRwa2cgKEU8Z3Q+PSAxLjE0LjYpLCBwZXJsNSwgcGVybC1tb2R1bGVzLCBjcGlvIChFPGd0Pj0gMi40LjItMiksIGJ6aXAyLCBsem1hLFxuIgorIiBwYXRjaCAoRTxndD49IDIuMi0xKSwgbWFrZSwgYmludXRpbHMsIGxpYnRpbWVkYXRlLXBlcmxcbiIKKyJSZWNvbW1lbmRzOiBnY2MgfCBjLWNvbXBpbGVyLCBidWlsZC1lc3NlbnRpYWxcbiIKKyJTdWdnZXN0czogZ251cGcsIGRlYmlhbi1rZXlyaW5nXG4iCisiQ29uZmxpY3RzOiBkcGtnLWNyb3NzIChFPGx0PkU8bHQ+IDIuMC4wKSwgZGV2c2NyaXB0cyAoRTxsdD5FPGx0PiAyLjEwLjI2KVxuIgorIlJlcGxhY2VzOiBtYW5wYWdlcy1wbCAoRTxsdD49IDIwMDUxMTE3LTEpXG4iCisiRGVzY3JpcHRpb246IERlYmlhbiBwYWNrYWdlIGRldmVsb3BtZW50IHRvb2xzXG4iCisiIFRoaXMgcGFja2FnZSBwcm92aWRlcyB0aGUgZGV2ZWxvcG1lbnQgdG9vbHMgKGluY2x1ZGluZyBkcGtnLXNvdXJjZSlcbiIKKyIgcmVxdWlyZWQgdG8gdW5wYWNrLCBidWlsZCBhbmQgdXBsb2FkIERlYmlhbiBzb3VyY2UgcGFja2FnZXMuXG4iCisiIC5cbiIKKyIgTW9zdCBEZWJpYW4gc291cmNlIHBhY2thZ2VzIHdpbGwgcmVxdWlyZSBhZGRpdGlvbmFsIHRvb2xzIHRvIGJ1aWxkO1xuIgorIiBmb3IgZXhhbXBsZSwgbW9zdCBwYWNrYWdlcyBuZWVkIG1ha2UgYW5kIHRoZSBDIGNvbXBpbGVyIGdjYy5cbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MzMwCittc2dpZCAiQjxkZWItY29udHJvbD4oNSksIEI8ZGViLXZlcnNpb24+KDUpLCBCPGRwa2ctc291cmNlPigxKSIKK21zZ3N0ciAiQjxkZWItY29udHJvbD4oNSksIEI8ZGViLXZlcnNpb24+KDUpLCBCPGRwa2ctc291cmNlPigxKSIKKworIy4gdHlwZTogVEgKKyM6IGRlYi1zcGxpdC41OjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkZWItc3BsaXQiCittc2dzdHIgImRlYi1zcGxpdCIKKworIy4gdHlwZTogVEgKKyM6IGRlYi1zcGxpdC41OjEgZHBrZy1jaGVja2J1aWxkZGVwcy4xOjEgZHBrZy1kaXN0YWRkZmlsZS4xOjEgZHBrZy1zcGxpdC4xOjIKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6MSBkcGtnLXZlbmRvci4xOjEgc3RhcnQtc3RvcC1kYWVtb24uODoxCisjLCBuby13cmFwCittc2dpZCAiMjAxMS0wNy0wNCIKK21zZ3N0ciAiMDctMDQtMjAxMSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNwbGl0LjU6NAorbXNnaWQgImRlYi1zcGxpdCAtIERlYmlhbiBtdWx0aS1wYXJ0IGJpbmFyeSBwYWNrYWdlIGZvcm1hdCIKK21zZ3N0ciAiZGViLXNwbGl0IC0gZm9ybWF0YWdlIGRlIHBhcXVldHMgYmluYWlyZXMgRGViaWFuIGVuIHBsdXNpZXVycyBwYXJ0aWVzIgorCisjIHR5cGU6IFBsYWluIHRleHQKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcGxpdC41OjkKK21zZ2lkICIiCisiVGhlIG11bHRpLXBhcnQgQjwuZGViPiBmb3JtYXQgaXMgdXNlZCB0byBzcGxpdCBiaWcgcGFja2FnZXMgaW50byBzbWFsbGVyICIKKyJwaWVjZXMgdG8gZWFzZSB0cmFuc3BvcnQgaW4gc21hbGwgbWVkaWEuIgorbXNnc3RyICIiCisiTGUgZm9ybWF0IEI8LmRlYj4gZW4gcGFydGllcyBtdWx0aXBsZXMgKG11bHRpLXBhcnQpIHBlcm1ldCBkZSBkw6ljb3VwZXIgZGUgIgorImdyb3MgcGFxdWV0cyBlbiBwZXRpdGVzIHBhcnRpZXMgcG91ciBmYWNpbGl0ZXIgbGV1ciB0cmFuc3BvcnQgc3VyIGRlcyAiCisic3VwcG9ydHMgZGUgZmFpYmxlIGNhcGFjaXTDqS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcGxpdC41OjEyCittc2dpZCAiIgorIlRoZSBmaWxlIGlzIGFuIEI8YXI+IGFyY2hpdmUgd2l0aCBhIG1hZ2ljIHZhbHVlIG9mIEI8IUU8bHQ+YXJjaEU8Z3Q+Pi4gIFRoZSAiCisiZmlsZSBuYW1lcyBtaWdodCBjb250YWluIGEgdHJhaWxpbmcgc2xhc2ggKHNpbmNlIGRwa2cgMS4xNS42KS4iCittc2dzdHIgIiIKKyJMZSBmaWNoaWVyIGVzdCB1bmUgYXJjaGl2ZSBCPGFyPiBhdmVjIHVuIG51bcOpcm8gbWFnaXF1ZSBkZSBCPCFFPGx0PmFyY2hFPGd0Pi4iCisiPi4gTGVzIG5vbXMgZGUgZmljaGllcnMgcGV1dmVudCBjb21wb3J0ZXIgdW4gY2FyYWN0w6hyZSDCq8KgL8KgwrsgZmluYWwgKGRlcHVpcyAiCisiZHBrZyAxLjE1LjYpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNwbGl0LjU6MTUKK21zZ2lkICIiCisiVGhlIGZpcnN0IG1lbWJlciBpcyBuYW1lZCBCPGRlYmlhbi1zcGxpdD4gYW5kIGNvbnRhaW5zIGEgc2VyaWVzIG9mIGxpbmVzLCAiCisic2VwYXJhdGVkIGJ5IG5ld2xpbmVzLiBDdXJyZW50bHkgZWlnaHQgbGluZXMgYXJlIHByZXNlbnQ6IgorbXNnc3RyICIiCisiTGUgcHJlbWllciBtZW1icmUgZXN0IGFwcGVsw6kgQjxkZWJpYW5zLXNwbGl0PiBldCBjb250aWVudCB1biBlbnNlbWJsZSBkZSAiCisibGlnbmVzLCBzw6lwYXLDqWVzIHBhciBkZXMgcmV0b3VycyDDoCBsYSBsaWduZS4gQWN0dWVsbGVtZW50LCBodWl0IGxpZ25lcyBzb250ICIKKyJwcsOpc2VudGVzwqA6IgorCisjLiB0eXBlOiBJUAorIzogZGViLXNwbGl0LjU6MTUgZGViLXNwbGl0LjU6MTggZGViLXNwbGl0LjU6MjAgZGViLXNwbGl0LjU6MjIgZGViLXNwbGl0LjU6MjQKKyM6IGRlYi1zcGxpdC41OjI2IGRlYi1zcGxpdC41OjI4IGRlYi1zcGxpdC41OjMxIGRwa2ctZ2Vuc3ltYm9scy4xOjIwCisjOiBkcGtnLWdlbnN5bWJvbHMuMToyMiBkcGtnLWdlbnN5bWJvbHMuMToyNCBkcGtnLWdlbnN5bWJvbHMuMToyNgorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzExIGRwa2ctZ2Vuc3ltYm9scy4xOjMxNyBkcGtnLWdlbnN5bWJvbHMuMTozNTEKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM1NSBkcGtnLWdlbnN5bWJvbHMuMTozNTgKKyMsIG5vLXdyYXAKK21zZ2lkICJcXChidSIKK21zZ3N0ciAiXFwoYnUiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcGxpdC41OjE4Cittc2dpZCAiIgorIlRoZSBmb3JtYXQgdmVyc2lvbiBudW1iZXIsIEI8Mi4xPiBhdCB0aGUgdGltZSB0aGlzIG1hbnVhbCBwYWdlIHdhcyB3cml0dGVuLiIKK21zZ3N0ciAiIgorIk51bcOpcm8gZGUgdmVyc2lvbiBkdSBmb3JtYXQsIEI8Mi4xPiBhdSBtb21lbnQgZGUgbGEgcsOpZGFjdGlvbiBkZSBjZXR0ZSBwYWdlICIKKyJkZSBtYW51ZWwuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3BsaXQuNToyMAorbXNnaWQgIlRoZSBwYWNrYWdlIG5hbWUuIgorbXNnc3RyICJOb20gZHUgcGFxdWV0IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3BsaXQuNToyMgorbXNnaWQgIlRoZSBwYWNrYWdlIHZlcnNpb24uIgorbXNnc3RyICJWZXJzaW9uIGR1IHBhcXVldCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNwbGl0LjU6MjQKK21zZ2lkICJUaGUgbWQ1c3VtIG9mIHRoZSBwYWNrYWdlLiIKK21zZ3N0ciAiU29tbWUgZGUgY29udHLDtGxlIE1ENSBkdSBwYXF1ZXQiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcGxpdC41OjI2Cittc2dpZCAiVGhlIHRvdGFsIHNpemUgb2YgdGhlIHBhY2thZ2UuIgorbXNnc3RyICJUYWlsbGUgdG90YWxlIGR1IHBhcXVldCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNwbGl0LjU6MjgKK21zZ2lkICJUaGUgbWF4aW11bSBwYXJ0IHNpemUuIgorbXNnc3RyICJUYWlsbGUgbWF4aW1hbGUgZCd1biBtZW1icmUiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcGxpdC41OjMxCittc2dpZCAiIgorIlRoZSBjdXJyZW50IHBhcnQgbnVtYmVyLCBmb2xsb3dlZCBieSBhIHNsYXNoIGFuZCB0aGUgdG90YWwgYW1vdW50IG9mIHBhcnRzICIKKyIoYXMgaW4gXFwob3ExLzEwXFwoY3EpLiIKK21zZ3N0ciAiIgorIk51bcOpcm8gZHUgbWVtYnJlIGNvdXJhbnQsIHN1aXZpIGQndW5lIGJhcnJlIG9ibGlxdWUgKC8pIGV0IGR1IG5vbWJyZSB0b3RhbCAiCisiZGUgbWVtYnJlcyAocGFyIGV4ZW1wbGUgXFwob3ExLzEwXFwoY3EpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNwbGl0LjU6MzMKK21zZ2lkICJUaGUgcGFja2FnZSBhcmNoaXRlY3R1cmUgKHNpbmNlIGRwa2cgMS4xNi4xKS4iCittc2dzdHIgIkFyY2hpdGVjdHVyZSBkdSBwYXF1ZXQgKGRlcHVpcyBkcGtnIDEuMTYuMSkiCisKKyMgdHlwZTogUGxhaW4gdGV4dAorIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNwbGl0LjU6MzYKK21zZ2lkICIiCisiUHJvZ3JhbXMgd2hpY2ggcmVhZCBtdWx0aS1wYXJ0IGFyY2hpdmVzIHNob3VsZCBiZSBwcmVwYXJlZCBmb3IgYWRkaXRpb25hbCAiCisibGluZXMgdG8gYmUgcHJlc2VudCwgYW5kIHNob3VsZCBpZ25vcmUgdGhlc2UgaWYgdGhpcyBpcyB0aGUgY2FzZS4iCittc2dzdHIgIiIKKyJMZXMgcHJvZ3JhbW1lcyBxdWkgbGlzZW50IGRlcyBhcmNoaXZlcyBlbiBwYXJ0aWVzIG11bHRpcGxlcyBkb2l2ZW50ICIKKyJhdXRvcmlzZXIgbGEgcHLDqXNlbmNlIGRlIGxpZ25lcyBzdXBwbMOpbWVudGFpcmVzIChldCBsZXMgaWdub3JlciBzaSBlbGxlcyAiCisiZXhpc3RlbnQpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNwbGl0LjU6NDEKK21zZ2lkICIiCisiSWYgdGhlIHZlcnNpb24gbnVtYmVyIGhhcyBjaGFuZ2VkLCBhbiBpbmNvbXBhdGlibGUgY2hhbmdlIGhhcyBiZWVuIG1hZGUgYW5kICIKKyJ0aGUgcHJvZ3JhbSBzaG91bGQgc3RvcC4gSWYgaXQgaGFzIG5vdCwgdGhlbiB0aGUgcHJvZ3JhbSBzaG91bGQgYmUgYWJsZSB0byAiCisic2FmZWx5IGNvbnRpbnVlLCB1bmxlc3MgaXQgZW5jb3VudGVycyBhbiB1bmV4cGVjdGVkIG1lbWJlciBpbiB0aGUgYXJjaGl2ZSAiCisiKGV4Y2VwdCBhdCB0aGUgZW5kKSwgYXMgZGVzY3JpYmVkIGJlbG93LiIKK21zZ3N0ciAiIgorIlNpIGxlIG51bcOpcm8gZGUgdmVyc2lvbiBtYWpldXIgYSBjaGFuZ8OpLCBjZWxhIHNpZ25pZmllIHF1J3VuZSBtb2RpZmljYXRpb24gIgorImluY29tcGF0aWJsZSBhIMOpdMOpIGVmZmVjdHXDqWUsIGV0IGxlIHByb2dyYW1tZSBkb2l0IGFsb3JzIHMnYXJyw6p0ZXIuIFNpIGNlICIKKyJuJ2VzdCBwYXMgbGUgY2FzLCBsZSBwcm9ncmFtbWUgZG9pdCDDqnRyZSBlbiBtZXN1cmUgZGUgcG91cnN1aXZyZSAiCisiY29ycmVjdGVtZW50LCDDoCBtb2lucyBxdSdpbCBuZSByZW5jb250cmUgdW4gbWVtYnJlIG5vbiByZWNvbm51IGRhbnMgIgorImwnYXJjaGl2ZSAoZXhjZXB0w6kgw6AgbGEgZmluIGRlIGNldHRlIGRlcm5pw6hyZSksIGNvbW1lIGTDqWNyaXQgY2ktZGVzc291cy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcGxpdC41OjQ0CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJUaGUgc2Vjb25kLCBsYXN0IHJlcXVpcmVkIG1lbWJlciBpcyBuYW1lZCBCPGRhdGEuPk4sIHdoZXJlIE4gZGVub3RlcyB0aGUgIgorI3wgInBhcnQgbnVtYmVyLiBJdCBjb250YWlucyB0aGUgcmF3IHBhcnQgZGF0YS4iCittc2dpZCAiIgorIlRoZSBzZWNvbmQsIGxhc3QgcmVxdWlyZWQgbWVtYmVyIGlzIG5hbWVkIEI8ZGF0YS4+STxOPiwgd2hlcmUgSTxOPiBkZW5vdGVzICIKKyJ0aGUgcGFydCBudW1iZXIuIEl0IGNvbnRhaW5zIHRoZSByYXcgcGFydCBkYXRhLiIKK21zZ3N0ciAiIgorIkxlIGRldXhpw6htZSBldCBkZXJuaWVyIG1lbWJyZSByZXF1aXMgc2Ugbm9tbWUgQjxkYXRhLj5OIG/DuSBOIGVzdCBsZSBudW3DqXJvICIKKyJkZSBsYSBwYXJ0aWUuIElsIGNvbnRpZW50IGxlcyBkb25uw6llcyBicnV0ZXMgZGUgbGEgcGFydGllLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNwbGl0LjU6NDkKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlRoZXNlIG1lbWJlcnMgbXVzdCBvY2N1ciBpbiB0aGlzIGV4YWN0IG9yZGVyLiBDdXJyZW50IGltcGxlbWVudGF0aW9ucyAiCisjfCAic2hvdWxkIGlnbm9yZSBhbnkgYWRkaXRpb25hbCBtZW1iZXJzIGFmdGVyIEI8ZGF0YS4+Ti4gIEZ1cnRoZXIgbWVtYmVycyAiCisjfCAibWF5IGJlIGRlZmluZWQgaW4gdGhlIGZ1dHVyZSwgYW5kIChpZiBwb3NzaWJsZSkgd2lsbCBiZSBwbGFjZWQgYWZ0ZXIgIgorI3wgInRoZXNlIHR3by4iCittc2dpZCAiIgorIlRoZXNlIG1lbWJlcnMgbXVzdCBvY2N1ciBpbiB0aGlzIGV4YWN0IG9yZGVyLiBDdXJyZW50IGltcGxlbWVudGF0aW9ucyBzaG91bGQgIgorImlnbm9yZSBhbnkgYWRkaXRpb25hbCBtZW1iZXJzIGFmdGVyIEI8ZGF0YS4+STxOPi4gIEZ1cnRoZXIgbWVtYmVycyBtYXkgYmUgIgorImRlZmluZWQgaW4gdGhlIGZ1dHVyZSwgYW5kIChpZiBwb3NzaWJsZSkgd2lsbCBiZSBwbGFjZWQgYWZ0ZXIgdGhlc2UgdHdvLiIKK21zZ3N0ciAiIgorIkNlcyBtZW1icmVzIGRvaXZlbnQgYXBwYXJhw650cmUgZGFucyBjZXQgb3JkcmUgZXhhY3QuIExlcyBpbXBsw6ltZW50YXRpb25zICIKKyJhY3R1ZWxsZXMgZGV2cmFpZW50IGlnbm9yZXIgdG91dCBtZW1icmUgYWRkaXRpb25uZWwgc3VpdmFudCBCPGRhdGEuPk4uICIKKyJEJ2F1dHJlcyBtZW1icmVzIHNlcm9udCDDqXZlbnR1ZWxsZW1lbnQgcHJvcG9zw6lzLCBldCAoc2kgcG9zc2libGUpIHNlcm9udCAiCisicGxhY8OpcyBhcHLDqHMgbGVzIGRldXggcHJlbWllcnMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3BsaXQuNTo1MQorbXNnaWQgIkI8ZGViPig1KSwgQjxkcGtnLXNwbGl0PigxKS4iCittc2dzdHIgIkI8ZGViPig1KSwgQjxkcGtnLXNwbGl0PigxKS4iCisKKyMuIHR5cGU6IFRICisjOiBkZWItdmVyc2lvbi41OjUKKyMsIG5vLXdyYXAKK21zZ2lkICJkZWItdmVyc2lvbiIKK21zZ3N0ciAiZGViLXZlcnNpb24iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6OAorbXNnaWQgImRlYi12ZXJzaW9uIC0gRGViaWFuIHBhY2thZ2UgdmVyc2lvbiBudW1iZXIgZm9ybWF0IgorbXNnc3RyICJkZWItdmVyc2lvbiAtIEZvcm1hdCBkdSBudW3DqXJvIGRlIHZlcnNpb24gZGVzIHBhcXVldHMgRGViaWFuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjExCisjLCBmdXp6eQorI3wgbXNnaWQgIlsgSTxlcG9jaD46XSBJPHVwc3RyZWFtX3ZlcnNpb24+IFstSTxkZWJpYW5fcmV2aXNpb24+IF0iCittc2dpZCAiW0k8ZXBvY2g+Qjw6Pl1JPHVwc3RyZWFtLXZlcnNpb24+W0I8LT5JPGRlYmlhbi1yZXZpc2lvbj5dIgorbXNnc3RyICJbIEk8ZXBvY2g+Ol0gSTx2ZXJzaW9uX2Ftb250PiBbLUk8csOpdmlzaW9uX2RlYmlhbj4gXSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNToxNAorbXNnaWQgIiIKKyJWZXJzaW9uIG51bWJlcnMgYXMgdXNlZCBmb3IgRGViaWFuIGJpbmFyeSBhbmQgc291cmNlIHBhY2thZ2VzIGNvbnNpc3Qgb2YgIgorInRocmVlIGNvbXBvbmVudHMuIFRoZXNlIGFyZToiCittc2dzdHIgIiIKKyJMZXMgbnVtw6lyb3MgZGUgdmVyc2lvbiB1dGlsaXPDqXMgcG91ciBsZXMgcGFxdWV0cyBzb3VyY2VzIGV0IGJpbmFpcmVzIHNlICIKKyJjb21wb3NlbnQgZGUgdHJvaXMgcGFydGllcy4gQ2VsbGVzLWNpIHNvbnTCoDoiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItdmVyc2lvbi41OjE0CisjLCBuby13cmFwCittc2dpZCAiSTxlcG9jaD4iCittc2dzdHIgIkk8ZXBvY2g+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjIwCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJUaGlzIGlzIGEgc2luZ2xlIChnZW5lcmFsbHkgc21hbGwpIHVuc2lnbmVkIGludGVnZXIuICBJdCBtYXkgYmUgb21pdHRlZCwgIgorI3wgImluIHdoaWNoIGNhc2UgemVybyBpcyBhc3N1bWVkLiAgSWYgaXQgaXMgb21pdHRlZCB0aGVuIHRoZSAiCisjfCAiSTx1cHN0cmVhbV92ZXJzaW9uPiBtYXkgbm90IGNvbnRhaW4gYW55IGNvbG9ucy4iCittc2dpZCAiIgorIlRoaXMgaXMgYSBzaW5nbGUgKGdlbmVyYWxseSBzbWFsbCkgdW5zaWduZWQgaW50ZWdlci4gIEl0IG1heSBiZSBvbWl0dGVkLCBpbiAiCisid2hpY2ggY2FzZSB6ZXJvIGlzIGFzc3VtZWQuICBJZiBpdCBpcyBvbWl0dGVkIHRoZW4gdGhlIEk8dXBzdHJlYW0tdmVyc2lvbj4gIgorIm1heSBub3QgY29udGFpbiBhbnkgY29sb25zLiIKK21zZ3N0ciAiIgorIkNlIG5vbWJyZSBlc3QgdW4gZW50aWVyIHBvc2l0aWYgKHVzdWVsbGVtZW50IHBldGl0KS4gSWwgcGV1dCDDqnRyZSBvbWlzIChkYW5zICIKKyJjZSBjYXMsIGxhIHZhbGV1ciBudWxsZSBlc3QgaW1wbGljaXRlKS4gUydpbCBlc3Qgb21pcywgbGEgSTx2ZXJzaW9uX2Ftb250PiAiCisibmUgZG9pdCBwYXMgY29udGVuaXIgZGUgY2FyYWN0w6hyZSBkZXV4LXBvaW50cy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6MjQKK21zZ2lkICIiCisiSXQgaXMgcHJvdmlkZWQgdG8gYWxsb3cgbWlzdGFrZXMgaW4gdGhlIHZlcnNpb24gbnVtYmVycyBvZiBvbGRlciB2ZXJzaW9ucyBvZiAiCisiYSBwYWNrYWdlLCBhbmQgYWxzbyBhIHBhY2thZ2UncyBwcmV2aW91cyB2ZXJzaW9uIG51bWJlcmluZyBzY2hlbWVzLCB0byBiZSAiCisibGVmdCBiZWhpbmQuIgorbXNnc3RyICIiCisiQ2V0dGUgdmFsZXVyIGVzdCBkZXN0aW7DqWUgw6AgcGVybWV0dHJlIGRlIGfDqXJlciBkZXMgZXJyZXVycyBkYW5zIGxlcyBhbmNpZW5zICIKKyJudW3DqXJvcyBkZSB2ZXJzaW9uIGQndW4gcGFxdWV0IG91IHVuIGNoYW5nZW1lbnQgZGFucyBsYSBtw6l0aG9kZSBkZSAiCisibnVtw6lyb3RhdGlvbiBkZXMgdmVyc2lvbnMgYW1vbnQuIgorCisjLiB0eXBlOiBUUAorIzogZGViLXZlcnNpb24uNToyNAorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJJPHVwc3RyZWFtX3ZlcnNpb24+IgorbXNnaWQgIkk8dXBzdHJlYW0tdmVyc2lvbj4iCittc2dzdHIgIkk8dXBzdHJlYW1fdmVyc2lvbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6MzQKK21zZ2lkICIiCisiVGhpcyBpcyB0aGUgbWFpbiBwYXJ0IG9mIHRoZSB2ZXJzaW9uIG51bWJlci4gIEl0IGlzIHVzdWFsbHkgdGhlIHZlcnNpb24gIgorIm51bWJlciBvZiB0aGUgb3JpZ2luYWwgKFwidXBzdHJlYW1cIikgIHBhY2thZ2UgZnJvbSB3aGljaCB0aGUgSTwuZGViPiBmaWxlICIKKyJoYXMgYmVlbiBtYWRlLCBpZiB0aGlzIGlzIGFwcGxpY2FibGUuICBVc3VhbGx5IHRoaXMgd2lsbCBiZSBpbiB0aGUgc2FtZSAiCisiZm9ybWF0IGFzIHRoYXQgc3BlY2lmaWVkIGJ5IHRoZSB1cHN0cmVhbSBhdXRob3Iocyk7IGhvd2V2ZXIsIGl0IG1heSBuZWVkIHRvICIKKyJiZSByZWZvcm1hdHRlZCB0byBmaXQgaW50byB0aGUgcGFja2FnZSBtYW5hZ2VtZW50IHN5c3RlbSdzIGZvcm1hdCBhbmQgIgorImNvbXBhcmlzb24gc2NoZW1lLiIKK21zZ3N0ciAiIgorIkNlY2kgZXN0IGxhIHBhcnRpZSBwcmluY2lwYWxlIGR1IG51bcOpcm8gZGUgdmVyc2lvbi4gQ2VsYSBjb3JyZXNwb25kICIKKyJub3JtYWxlbWVudCBhdSBudW3DqXJvIGRlIHZlcnNpb24gZHUgcGFxdWV0IGQnb3JpZ2luZSBxdWkgYSBzZXJ2aSDDoCBjcsOpZXIgbGUgIgorImZpY2hpZXIgSTwuZGViPi4gTGUgZm9ybWF0IGQnb3JpZ2luZSBzcMOpY2lmacOpIHBhciBsJ2F1dGV1ciBlc3QgZ8OpbsOpcmFsZW1lbnQgIgorImNvbnNlcnbDqcKgOyBjZXBlbmRhbnQsIGlsIGFycml2ZSBxdSdpbCBzb2l0IG7DqWNlc3NhaXJlIGQnYWRhcHRlciBjZSBudW3DqXJvICIKKyJwb3VyIHF1J2lsIHNlIGNvbmZvcm1lIGF1IGZvcm1hdCBkdSBzeXN0w6htZSBkZSBnZXN0aW9uIGRlIHBhcXVldCBldCBkdSAiCisicHJvY8OpZMOpIGRlIGNvbXBhcmFpc29uIGRlcyBudW3DqXJvcyBkZSB2ZXJzaW9uLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNTozOQorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiVGhlIGNvbXBhcmlzb24gYmVoYXZpb3Igb2YgdGhlIHBhY2thZ2UgbWFuYWdlbWVudCBzeXN0ZW0gd2l0aCByZXNwZWN0IHRvICIKKyN8ICJ0aGUgSTx1cHN0cmVhbV92ZXJzaW9uPiBpcyBkZXNjcmliZWQgYmVsb3cuICBUaGUgSTx1cHN0cmVhbV92ZXJzaW9uPiAiCisjfCAicG9ydGlvbiBvZiB0aGUgdmVyc2lvbiBudW1iZXIgaXMgbWFuZGF0b3J5LiIKK21zZ2lkICIiCisiVGhlIGNvbXBhcmlzb24gYmVoYXZpb3Igb2YgdGhlIHBhY2thZ2UgbWFuYWdlbWVudCBzeXN0ZW0gd2l0aCByZXNwZWN0IHRvIHRoZSAiCisiSTx1cHN0cmVhbS12ZXJzaW9uPiBpcyBkZXNjcmliZWQgYmVsb3cuIFRoZSBJPHVwc3RyZWFtLXZlcnNpb24+IHBvcnRpb24gb2YgIgorInRoZSB2ZXJzaW9uIG51bWJlciBpcyBtYW5kYXRvcnkuIgorbXNnc3RyICIiCisiTGUgcHJpbmNpcGUgZGUgY29tcGFyYWlzb24gZHUgc3lzdMOobWUgZGUgZ2VzdGlvbiBkZSBwYXF1ZXQgZW4gY2UgcXVpICIKKyJjb25jZXJuZSBsYSBJPHZlcnNpb25fYW1vbnQ+IGVzdCBkw6ljcml0ZSBjaS1kZXNzb3VzLiBMYSBwYXJ0aWUgIgorIkk8dmVyc2lvbl9hbW9udD4gZHUgbnVtw6lybyBlc3Qgb2JsaWdhdG9pcmUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjQ4CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJUaGUgSTx1cHN0cmVhbV92ZXJzaW9uPiBtYXkgY29udGFpbiBvbmx5IGFscGhhbnVtZXJpY3MgKFwiQS1aYS16MC05XCIpICIKKyN8ICJhbmQgdGhlIGNoYXJhY3RlcnMgQjwuPiBCPCs+IEI8LT4gQjw6PiBCPH4+IChmdWxsIHN0b3AsIHBsdXMsIGh5cGhlbiwgIgorI3wgImNvbG9uLCB0aWxkZSkgYW5kIHNob3VsZCBzdGFydCB3aXRoIGEgZGlnaXQuICBJZiB0aGVyZSBpcyBubyAiCisjfCAiSTxkZWJpYW5fcmV2aXNpb24+IHRoZW4gaHlwaGVucyBhcmUgbm90IGFsbG93ZWQ7IGlmIHRoZXJlIGlzIG5vIEk8ZXBvY2g+ICIKKyN8ICJ0aGVuIGNvbG9ucyBhcmUgbm90IGFsbG93ZWQuIgorbXNnaWQgIiIKKyJUaGUgSTx1cHN0cmVhbS12ZXJzaW9uPiBtYXkgY29udGFpbiBvbmx5IGFscGhhbnVtZXJpY3MgKFwiQS1aYS16MC05XCIpIGFuZCAiCisidGhlIGNoYXJhY3RlcnMgQjwuPiBCPCs+IEI8LT4gQjw6PiBCPH4+IChmdWxsIHN0b3AsIHBsdXMsIGh5cGhlbiwgY29sb24sICIKKyJ0aWxkZSkgYW5kIHNob3VsZCBzdGFydCB3aXRoIGEgZGlnaXQuICBJZiB0aGVyZSBpcyBubyBJPGRlYmlhbi1yZXZpc2lvbj4gIgorInRoZW4gaHlwaGVucyBhcmUgbm90IGFsbG93ZWQ7IGlmIHRoZXJlIGlzIG5vIEk8ZXBvY2g+IHRoZW4gY29sb25zIGFyZSBub3QgIgorImFsbG93ZWQuIgorbXNnc3RyICIiCisiTGEgSTx2ZXJzaW9uX2Ftb250PiBuZSBkb2l0IGNvbnRlbmlyIHF1ZSBkZXMgY2FyYWN0w6hyZXMgYWxwaGFudW3DqXJpcXVlcyAoXCJBLSIKKyJaYS16MC05XCIpIGV0IGxlcyBjYXJhdMOocmVzIHN1aXZhbnRzIChcIi4rLTp+XCIpLiBFdCBkZXZyYWl0IGNvbW1lbmNlciBwYXIgIgorInVuIGNoaWZmcmUuIFMnaWwgbid5IGEgcGFzIGRlIHBhcnRpZSBJPHJldmlzaW9uX0RlYmlhbj4gYWxvcnMgbGUgY2FyYWN0w6hyZSAiCisidGlsZGUgKFwiflwiKSBuJ2VzdCBwYXMgYXV0b3Jpc8OpwqA7IHNpIGlsIG4neSBhIHBhcyBkZSBJPGVwb2NoPiwgYWxvcnMgYydlc3QgIgorImxlIGNhcmFjdMOocmUgKFwiZGV1eCBwb2ludHMswqA6XCIpIHF1aSBuJ2VzdCBwYXMgYXV0b3Jpc8Opcy4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItdmVyc2lvbi41OjQ4CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkk8ZGViaWFuX3JldmlzaW9uPiIKK21zZ2lkICJJPGRlYmlhbi1yZXZpc2lvbj4iCittc2dzdHIgIkk8ZGViaWFuX3JldmlzaW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNTo1NworIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiVGhpcyBwYXJ0IG9mIHRoZSB2ZXJzaW9uIG51bWJlciBzcGVjaWZpZXMgdGhlIHZlcnNpb24gb2YgdGhlIERlYmlhbiAiCisjfCAicGFja2FnZSBiYXNlZCBvbiB0aGUgdXBzdHJlYW0gdmVyc2lvbi4gIEl0IG1heSBjb250YWluIG9ubHkgYWxwaGFudW1lcmljcyAiCisjfCAiYW5kIHRoZSBjaGFyYWN0ZXJzIEI8Kz4gQjwuPiBCPH4+IChwbHVzLCBmdWxsIHN0b3AsIHRpbGRlKSBhbmQgaXMgIgorI3wgImNvbXBhcmVkIGluIHRoZSBzYW1lIHdheSBhcyB0aGUgSTx1cHN0cmVhbV92ZXJzaW9uPiBpcy4iCittc2dpZCAiIgorIlRoaXMgcGFydCBvZiB0aGUgdmVyc2lvbiBudW1iZXIgc3BlY2lmaWVzIHRoZSB2ZXJzaW9uIG9mIHRoZSBEZWJpYW4gcGFja2FnZSAiCisiYmFzZWQgb24gdGhlIHVwc3RyZWFtIHZlcnNpb24uICBJdCBtYXkgY29udGFpbiBvbmx5IGFscGhhbnVtZXJpY3MgYW5kIHRoZSAiCisiY2hhcmFjdGVycyBCPCs+IEI8Lj4gQjx+PiAocGx1cywgZnVsbCBzdG9wLCB0aWxkZSkgYW5kIGlzIGNvbXBhcmVkIGluIHRoZSAiCisic2FtZSB3YXkgYXMgdGhlIEk8dXBzdHJlYW0tdmVyc2lvbj4gaXMuIgorbXNnc3RyICIiCisiQ2V0dGUgcGFydGllIGR1IG51bcOpcm8gZGUgdmVyc2lvbiBpbmRpcXVlIGxhIHZlcnNpb24gZHUgcGFxdWV0IERlYmlhbiDDoCAiCisicGFydGlyIGR1IG51bcOpcm8gZGUgbGEgdmVyc2lvbiBhbW9udC4gRWxsZSBuZSBkb2l0IGNvbnRlbmlyIHF1ZSBkZXMgc3ltYm9sZXMgIgorImFscGhhbnVtw6lyaXF1ZXMgKFwiQS1aYS16MC05XCIpIGV0IGxlcyB0cm9pcyBjYXJhY3TDqHJlcyAoXCIuK35cIikuIEVsbGUgZXN0ICIKKyJhbmFseXPDqWUgZGUgbGEgbcOqbWUgZmHDp29uIHF1ZSBsYSBJPHZlcnNpb25fYW1vbnQ+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNTo2NAorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiSXQgaXMgb3B0aW9uYWw7IGlmIGl0IGlzbid0IHByZXNlbnQgdGhlbiB0aGUgSTx1cHN0cmVhbV92ZXJzaW9uPiBtYXkgbm90ICIKKyN8ICJjb250YWluIGEgaHlwaGVuLiAgVGhpcyBmb3JtYXQgcmVwcmVzZW50cyB0aGUgY2FzZSB3aGVyZSBhIHBpZWNlIG9mICIKKyN8ICJzb2Z0d2FyZSB3YXMgd3JpdHRlbiBzcGVjaWZpY2FsbHkgdG8gYmUgdHVybmVkIGludG8gYSBEZWJpYW4gcGFja2FnZSwgYW5kICIKKyN8ICJzbyB0aGVyZSBpcyBvbmx5IG9uZSBcImRlYmlhbmlzYXRpb25cIiBvZiBpdCBhbmQgdGhlcmVmb3JlIG5vIHJldmlzaW9uICIKKyN8ICJpbmRpY2F0aW9uIGlzIHJlcXVpcmVkLiIKK21zZ2lkICIiCisiSXQgaXMgb3B0aW9uYWw7IGlmIGl0IGlzbid0IHByZXNlbnQgdGhlbiB0aGUgSTx1cHN0cmVhbS12ZXJzaW9uPiBtYXkgbm90ICIKKyJjb250YWluIGEgaHlwaGVuLiAgVGhpcyBmb3JtYXQgcmVwcmVzZW50cyB0aGUgY2FzZSB3aGVyZSBhIHBpZWNlIG9mIHNvZnR3YXJlICIKKyJ3YXMgd3JpdHRlbiBzcGVjaWZpY2FsbHkgdG8gYmUgdHVybmVkIGludG8gYSBEZWJpYW4gcGFja2FnZSwgYW5kIHNvIHRoZXJlIGlzICIKKyJvbmx5IG9uZSBcImRlYmlhbmlzYXRpb25cIiBvZiBpdCBhbmQgdGhlcmVmb3JlIG5vIHJldmlzaW9uIGluZGljYXRpb24gaXMgIgorInJlcXVpcmVkLiIKK21zZ3N0ciAiIgorIkNldHRlIHBhcnRpZSBlc3QgZmFjdWx0YXRpdmXCoDsgc2kgZWxsZSBuJ2VzdCBwYXMgcHLDqXNlbnQgYWxvcnMgYydlc3QgcXVlIGxhICIKKyJJPHZlcnNpb25fYW1vbnQ+IG5lIGRvaXQgcGFzIGNvbnRlbmlyIGRlIHNpZ25lIG1vaW5zIChcIi1cIikuIENlIGZvcm1hdCBlc3QgIgorInBvdXIgbGUgY2FzIG/DuSB1biBsb2dpY2llbCBhIMOpdMOpIGRpcmVjdGVtZW50IGNvbsOndSBjb21tZSBwYXF1ZXQgRGViaWFuLCBpbCB5ICIKKyJhIGRvbmMgcXUndW5lIHNldWxlIMKrwqBkZWJpYW5pc2F0aW9uwqDCuyBldCBkb25jIHBhciBzdWl0ZSBwYXMgYmVzb2luICIKKyJkJ2luZGljYXRpb24gZGUgcsOpdmlzaW9uLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNTo2OAorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiSXQgaXMgY29udmVudGlvbmFsIHRvIHJlc3RhcnQgdGhlIEk8ZGViaWFuX3JldmlzaW9uPiBhdCAnMScgZWFjaCB0aW1lICIKKyN8ICJ0aW1lIHRoZSBJPHVwc3RyZWFtX3ZlcnNpb24+IGlzIGluY3JlYXNlZC4iCittc2dpZCAiIgorIkl0IGlzIGNvbnZlbnRpb25hbCB0byByZXN0YXJ0IHRoZSBJPGRlYmlhbi1yZXZpc2lvbj4gYXQgJzEnIGVhY2ggdGltZSB0aW1lICIKKyJ0aGUgSTx1cHN0cmVhbS12ZXJzaW9uPiBpcyBpbmNyZWFzZWQuIgorbXNnc3RyICIiCisiSWwgZXN0IGNvbnZlbnUgZGUgcmVwYXJ0aXIgw6AgJzEnIHBvdXIgbGEgSTxyw6l2aXNpb25fZGViaWFuPiDDoCBjaGFxdWUgZm9pcyAiCisicXVlIGxhIEk8dmVyc2lvbl9hbW9udD4gZXN0IGluY3LDqW1lbnTDqWUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41Ojc2CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJEcGtnIHdpbGwgYnJlYWsgdGhlIHZlcnNpb24gbnVtYmVyIGFwYXJ0IGF0IHRoZSBsYXN0IGh5cGhlbiBpbiB0aGUgc3RyaW5nICIKKyN8ICIoaWYgdGhlcmUgaXMgb25lKSB0byBkZXRlcm1pbmUgdGhlIEk8dXBzdHJlYW1fdmVyc2lvbj4gYW5kICIKKyN8ICJJPGRlYmlhbl9yZXZpc2lvbj4uICBUaGUgYWJzZW5jZSBvZiBhIEk8ZGViaWFuX3JldmlzaW9uPiBjb21wYXJlcyBlYXJsaWVyICIKKyN8ICJ0aGFuIHRoZSBwcmVzZW5jZSBvZiBvbmUgKGJ1dCBub3RlIHRoYXQgdGhlIEk8ZGViaWFuX3JldmlzaW9uPiBpcyB0aGUgIgorI3wgImxlYXN0IHNpZ25pZmljYW50IHBhcnQgb2YgdGhlIHZlcnNpb24gbnVtYmVyKS4iCittc2dpZCAiIgorIkRwa2cgd2lsbCBicmVhayB0aGUgdmVyc2lvbiBudW1iZXIgYXBhcnQgYXQgdGhlIGxhc3QgaHlwaGVuIGluIHRoZSBzdHJpbmcgIgorIihpZiB0aGVyZSBpcyBvbmUpIHRvIGRldGVybWluZSB0aGUgSTx1cHN0cmVhbS12ZXJzaW9uPiBhbmQgSTxkZWJpYW4tIgorInJldmlzaW9uPi4gVGhlIGFic2VuY2Ugb2YgYSBJPGRlYmlhbi1yZXZpc2lvbj4gY29tcGFyZXMgZWFybGllciB0aGFuIHRoZSAiCisicHJlc2VuY2Ugb2Ygb25lIChidXQgbm90ZSB0aGF0IHRoZSBJPGRlYmlhbi1yZXZpc2lvbj4gaXMgdGhlIGxlYXN0ICIKKyJzaWduaWZpY2FudCBwYXJ0IG9mIHRoZSB2ZXJzaW9uIG51bWJlcikuIgorbXNnc3RyICIiCisiRHBrZyBzJ2FycsOqdGVyYSBhdSBkZXJuaWVyIHNpZ25lIG1vaW5zIChcIi1cIikgZHUgbnVtw6lybyBkZSB2ZXJzaW9uIChzJ2lsIHkgIgorImVuIGEgdW4pIHBvdXIgZMOpdGVybWluZXIgbGEgcGFydGllIEk8dmVyc2lvbl9hbW9udD4gZXQgbGEgSTx2ZXJzaW9uX0RlYmlhbj4uICIKKyJMJ2Fic2VuY2UgZGUgSTxyZXZpc2lvbl9EZWJpYW4+IGVzdCBjb21wYXLDqWUgYXZhbnQgc2EgcHLDqXNlbmNlLCBtYWlzIG5vdGV6ICIKKyJxdWUgbGEgSTxyZXZpc2lvbl9EZWJpYW4+IGVzdCBwYXJ0aWUgbGEgbW9pbnMgc2lnbmlmaWNhdGl2ZSBkdSBudW3DqXJvIGRlICIKKyJ2ZXJzaW9uLiIKKworIy4gdHlwZTogU1MKKyM6IGRlYi12ZXJzaW9uLjU6NzYKKyMsIG5vLXdyYXAKK21zZ2lkICJTb3J0aW5nIEFsZ29yaXRobSIKK21zZ3N0ciAiQWxnb3JpdGhtZSBkZSBjbGFzc2VtZW50IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjgwCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJUaGUgSTx1cHN0cmVhbV92ZXJzaW9uPiBhbmQgSTxkZWJpYW5fcmV2aXNpb24+IHBhcnRzIGFyZSBjb21wYXJlZCBieSB0aGUgIgorI3wgInBhY2thZ2UgbWFuYWdlbWVudCBzeXN0ZW0gdXNpbmcgdGhlIHNhbWUgYWxnb3JpdGhtOiIKK21zZ2lkICIiCisiVGhlIEk8dXBzdHJlYW0tdmVyc2lvbj4gYW5kIEk8ZGViaWFuLXJldmlzaW9uPiBwYXJ0cyBhcmUgY29tcGFyZWQgYnkgdGhlICIKKyJwYWNrYWdlIG1hbmFnZW1lbnQgc3lzdGVtIHVzaW5nIHRoZSBzYW1lIGFsZ29yaXRobToiCittc2dzdHIgIiIKKyJMZXMgcGFydGllcyBJPHZlcnNpb25fYW1vbnQ+IGV0IEk8cmV2aXNpb25fRGViaWFuPiBzb250IGNvbXBhcsOpZXMgcGFyIGxlICIKKyJzeXN0w6htZSBkZSBnZXN0aW9uIGRlIHBhcXVldCBlbiB1dGlsaXNhbnQgbGUgbcOqbWUgYWxnb3JpdGhtZcKgOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNTo4MgorbXNnaWQgIlRoZSBzdHJpbmdzIGFyZSBjb21wYXJlZCBmcm9tIGxlZnQgdG8gcmlnaHQuIgorbXNnc3RyICJMZXMgY2hhw65uZXMgc29udCBjb21wYXLDqWVzIGRlIGxhIGdhdWNoZSB2ZXJzIGxhIGRyb2l0ZS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6OTIKK21zZ2lkICIiCisiRmlyc3QgdGhlIGluaXRpYWwgcGFydCBvZiBlYWNoIHN0cmluZyBjb25zaXN0aW5nIGVudGlyZWx5IG9mIG5vbi1kaWdpdCAiCisiY2hhcmFjdGVycyBpcyBkZXRlcm1pbmVkLiAgVGhlc2UgdHdvIHBhcnRzIChvbmUgb2Ygd2hpY2ggbWF5IGJlIGVtcHR5KSBhcmUgIgorImNvbXBhcmVkIGxleGljYWxseS4gIElmIGEgZGlmZmVyZW5jZSBpcyBmb3VuZCBpdCBpcyByZXR1cm5lZC4gIFRoZSBsZXhpY2FsICIKKyJjb21wYXJpc29uIGlzIGEgY29tcGFyaXNvbiBvZiBBU0NJSSB2YWx1ZXMgbW9kaWZpZWQgc28gdGhhdCBhbGwgdGhlIGxldHRlcnMgIgorInNvcnQgZWFybGllciB0aGFuIGFsbCB0aGUgbm9uLWxldHRlcnMgYW5kIHNvIHRoYXQgYSB0aWxkZSBzb3J0cyBiZWZvcmUgIgorImFueXRoaW5nLCBldmVuIHRoZSBlbmQgb2YgYSBwYXJ0LiAgRm9yIGV4YW1wbGUsIHRoZSBmb2xsb3dpbmcgcGFydHMgYXJlIGluICIKKyJzb3J0ZWQgb3JkZXI6ICd+ficsICd+fmEnLCAnficsIHRoZSBlbXB0eSBwYXJ0LCAnYScuIgorbXNnc3RyICIiCisiUG91ciBjb21tZW5jZXIsIGxhIHByZW1pw6hyZSBwYXJ0aWUgZGUgY2hhcXVlIGNoYcOubmUgY29tcG9zw6llIHVuaXF1ZW1lbnQgZGUgIgorImNhcmFjdMOocmVzIG5vbiBudW3DqXJpcXVlcyBlc3QgZMOpdGVybWluw6llLiBQdWlzIGNlcyBkZXV4IHBhcnRpZXMgKGwndW5lIHBldXQgIgorIsOqdHJlIHZpZGUpIHNvbnQgY29tcGFyw6llcyBsZXhpY2FsZW1lbnQuIFNpIHVuZSBkaWZmw6lyZW5jZSBlc3QgdHJvdXbDqWUsIGVsbGUgIgorImVzdCByZXRvdXJuw6llLiBMYSBjb21wYXJhaXNvbiBsZXhpY2FsZSBlc3QgZWZmZWN0dcOpZSBzdXIgdW5lIHZlcnNpb24gIgorIm1vZGlmacOpZSBkZXMgdmFsZXVycyBBU0NJSSBhZmluIHF1ZSBsZXMgbGV0dHJlcyBwYXNzZW50IGF2YW50IGxlcyBhdXRyZXMgIgorImNhcmFjdMOocmVzIGV0IHF1ZSBsZXMgdGlsZGVzIChcIn5cIikgcGFzc2VudCBhdmFudCB0b3V0IHRvdXMgbGVzIGNhcmFjdMOocmVzLCAiCisibcOqbWUgbGEgZmluIGQndW5lIHBhcnRpZS4gUGFyIGV4ZW1wbGUsIGxlcyDDqWzDqW1lbnRzIHN1aXZhbnRzIHNvbnQgb3Jkb25uw6lzICIKKyJhaW5zacKgOiDCq8Kgfn7CoMK7LCDCq8Kgfn5hwqDCuywgwqvCoH7CoMK7LCBwYXJ0aWUgdmlkZSwgwqvCoGHCoMK7LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNToxMDAKK21zZ2lkICIiCisiVGhlbiB0aGUgaW5pdGlhbCBwYXJ0IG9mIHRoZSByZW1haW5kZXIgb2YgZWFjaCBzdHJpbmcgd2hpY2ggY29uc2lzdHMgIgorImVudGlyZWx5IG9mIGRpZ2l0IGNoYXJhY3RlcnMgaXMgZGV0ZXJtaW5lZC4gIFRoZSBudW1lcmljYWwgdmFsdWVzIG9mIHRoZXNlICIKKyJ0d28gcGFydHMgYXJlIGNvbXBhcmVkLCBhbmQgYW55IGRpZmZlcmVuY2UgZm91bmQgaXMgcmV0dXJuZWQgYXMgdGhlIHJlc3VsdCAiCisib2YgdGhlIGNvbXBhcmlzb24uICBGb3IgdGhlc2UgcHVycG9zZXMgYW4gZW1wdHkgc3RyaW5nICh3aGljaCBjYW4gb25seSBvY2N1ciAiCisiYXQgdGhlIGVuZCBvZiBvbmUgb3IgYm90aCB2ZXJzaW9uIHN0cmluZ3MgYmVpbmcgY29tcGFyZWQpIGNvdW50cyBhcyB6ZXJvLiIKK21zZ3N0ciAiIgorIlB1aXMsIGxlIGTDqWJ1dCBkZSBjZSBxdWkgcmVzdGUgZGVzIGNoYcOubmVzIGRlIGNhcmFjdMOocmVzIHF1aSBuZSBkb2l2ZW50IHBsdXMgIgorImNvbnRlbmlyIHF1ZSBkZXMgY2hpZmZyZXMgZXN0IGTDqXRlcm1pbsOpLiBDZXMgdmFsZXVycyBudW3DqXJpcXVlcyBzb250ICIKKyJjb21wYXLDqWVzLCBldCBsZXMgZGlmZsOpcmVuY2VzIHNvbnQgcmVtb250w6llcy4gRGFucyBsZSBjYXMgZCd1bmUgY2hhw65uZSB2aWRlICIKKyIoY2UgcXVpIHBldXQgYXJyaXZlciBzaSB1bmUgY2hhw65uZSBlc3QgcGx1cyBsb25ndWUgcXVlIGwnYXV0cmUgbG9ycyBkZSBsYSAiCisiY29tcGFyYWlzb24pIGVsbGUgY29tcHRlIHBvdXIgdW4gesOpcm8uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjEwNAorbXNnaWQgIiIKKyJUaGVzZSB0d28gc3RlcHMgKGNvbXBhcmluZyBhbmQgcmVtb3ZpbmcgaW5pdGlhbCBub24tZGlnaXQgc3RyaW5ncyBhbmQgIgorImluaXRpYWwgZGlnaXQgc3RyaW5ncykgYXJlIHJlcGVhdGVkIHVudGlsIGEgZGlmZmVyZW5jZSBpcyBmb3VuZCBvciBib3RoICIKKyJzdHJpbmdzIGFyZSBleGhhdXN0ZWQuIgorbXNnc3RyICIiCisiQ2VzIGRldXggw6l0YXBlcyAoY29tcGFyYWlzb24gZXQgc3VwcHJlc3Npb24gZGVzIGNhcmFjdMOocmVzIG5vbiBudW3DqXJpcXVlcyAiCisicHVpcyBkZSBzdXBwcmVzc2lvbiBkZXMgY2FyYWN0w6hyZXMgbnVtw6lyaXF1ZXMgZGFucyBsZSBkw6lidXQgZGUgbGEgY2hhw65uZSkgIgorInNvbnQgcsOpcMOpdMOpZXMganVzcXUnw6AgY2UgcXUndW5lIGRpZmbDqXJlbmNlIHNvaXQgdHJvdXbDqWUgb3UgbGEgZmluIGRlcyAiCisiY2hhw65uZXMgYXR0ZWludGUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjExMgorbXNnaWQgIiIKKyJOb3RlIHRoYXQgdGhlIHB1cnBvc2Ugb2YgZXBvY2hzIGlzIHRvIGFsbG93IHVzIHRvIGxlYXZlIGJlaGluZCBtaXN0YWtlcyBpbiAiCisidmVyc2lvbiBudW1iZXJpbmcsIGFuZCB0byBjb3BlIHdpdGggc2l0dWF0aW9ucyB3aGVyZSB0aGUgdmVyc2lvbiBudW1iZXJpbmcgIgorInNjaGVtZSBjaGFuZ2VzLiAgSXQgaXMgQjxub3Q+IGludGVuZGVkIHRvIGNvcGUgd2l0aCB2ZXJzaW9uIG51bWJlcnMgIgorImNvbnRhaW5pbmcgc3RyaW5ncyBvZiBsZXR0ZXJzIHdoaWNoIHRoZSBwYWNrYWdlIG1hbmFnZW1lbnQgc3lzdGVtIGNhbm5vdCAiCisiaW50ZXJwcmV0IChzdWNoIGFzICdBTFBIQScgb3IgJ3ByZS0nKSwgb3Igd2l0aCBzaWxseSBvcmRlcmluZ3MuIgorbXNnc3RyICIiCisiTm90ZXogcXVlIGxlIHLDtGxlIGRlIGVwb2NoIGVzdCBkZSBwZXJtZXR0cmUgZGUgc2Ugc29ydGlyIGRlIHByb2Jsw6htZXMgZGUgIgorIm51bcOpcm90YXRpb24gZGUgdmVyc2lvbiwgZXQgZGUgZmFpcmUgZmFjZSDDoCBkZXMgc2l0dWF0aW9ucyBkZSBjaGFuZ2VtZW50IGRlICIKKyJsb2dpcXVlIGRlIG51bcOpcm90YXRpb24uIENlbGEgbidlc3QgQjxwYXM+IGRlc3RpbsOpIMOgIGZhaXJlIGZhY2Ugw6AgZGVzICIKKyJudW3DqXJvcyBkZSB2ZXJzaW9uIHF1aSBjb250aWVubmVudCBkZXMgY2hhw65uZXMgZGUgbGV0dHJlcyBxdWUgbGUgc3lzdMOobWUgZGUgIgorImdlc3Rpb24gZGUgcGFxdWV0IG5lIHNhaXQgcGFzIGludGVycHLDqXRlciAoY29tbWUgwqvCoEFMUEhBwqDCuywgwqvCoHByZS3CoMK7KW91ICIKKyJkJ2F1dHJlcyBjaG9zZXMgc3R1cGlkZXMuIgorCisjLiB0eXBlOiBTSAorIzogZGViLXZlcnNpb24uNToxMTIgZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjEwOQorIywgbm8td3JhcAorbXNnaWQgIkNBVkVBVFMiCittc2dzdHIgIkNBVkVBVFMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6MTE2Cittc2dpZCAiIgorIlRoZSB0aWxkZSBjaGFyYWN0ZXIgYW5kIGl0cyBzcGVjaWFsIHNvcnRpbmcgcHJvcGVydGllcyB3ZXJlIGludHJvZHVjZWQgaW4gIgorImRwa2csIHZlcnNpb24gMS4xMCBhbmQgc29tZSBwYXJ0cyBvZiBkcGtnLWRldiBvbmx5IGdhaW5lZCBzdXBwb3J0IGZvciBpdCAiCisibGF0ZXIgaW4gdGhlIDEuMTAueCBzZXJpZXMuIgorbXNnc3RyICIiCisiTGUgY2FyYWN0w6hyZSB0aWxkZSAowqvCoH7CoMK7KSBldCBzYSBwcm9wcmnDqXTDqSBzcMOpY2lhbGUgcG91ciBsZXMgY29tcGFyYWlzb25zICIKKyJvbnQgw6l0w6kgaW50cm9kdWl0ZXMgZGFucyBsYSB2ZXJzaW9uIDEuMTAgZGUgZHBrZy4gQ2Ugbidlc3QgcXUnYSBwYXJ0aXIgZGVzICIKKyJ2ZXJzaW9ucyBzdXDDqXJpZXVyZXMgKDEuMTAueCkgcXVlIGNlcnRhaW5lcyBwYXJ0aWVzIGRlIGRwa2ctZGV2IG9udCBjb21tZW5jw6kgIgorIsOgIGfDqXJlciBjZSBzeXN0w6htZS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6MTIwCittc2dpZCAiQjxkZWItY29udHJvbD4oNSksIEI8ZGViPig1KSwgQjxkcGtnPigxKSIKK21zZ3N0ciAiQjxkZWItY29udHJvbD4oNSksIEI8ZGViPig1KSwgQjxkcGtnPigxKS4iCisKKyMuIHR5cGU6IFNICisjOiBkZWItdmVyc2lvbi41OjEyMCBkcGtnLjE6NzgzIGRwa2ctYnVpbGRwYWNrYWdlLjE6MjU3IGRwa2ctZGlzdGFkZGZpbGUuMTo0NworIzogZHBrZy1nZW5jaGFuZ2VzLjE6MTQ4IGRwa2ctZ2VuY29udHJvbC4xOjE0MiBkcGtnLWdlbnN5bWJvbHMuMTo0NjAKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MTI4IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxMjMKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MzI5IGRwa2ctc291cmNlLjE6NzMwIGRzZWxlY3QuMTo0NTEKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MzIzIHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0OTQKKyMsIG5vLXdyYXAKK21zZ2lkICJBVVRIT1JTIgorbXNnc3RyICJBVVRFVVJTIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjEyMgorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAxOTk2LDE5OTcsMTk5OCBJYW4gSmFja3NvbiBhbmQgQ2hyaXN0aWFuIFNjaHdhcnoiCittc2dzdHIgIkNvcHlyaWdodCBcXChjbyAxOTk2LDE5OTcsMTk5OCBJYW4gSmFja3NvbiBldCBDaHJpc3RpYW4gU2Nod2FyeiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNToxMjQgZHBrZy1idWlsZHBhY2thZ2UuMToyNjMKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAwNyBGcmFuayBMaWNodGVuaGVsZCIKK21zZ3N0ciAiQ29weXJpZ2h0IFxcKGNvIDIwMDcgRnJhbmsgTGljaHRlbmhlbGQiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6MTI2IGRlYi1zdWJzdHZhcnMuNToxNjcgZHBrZy1idWlsZGZsYWdzLjE6MjczCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjI2NyBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6NDQgZHBrZy1kaXN0YWRkZmlsZS4xOjUzCisjOiBkcGtnLWRlYi4xOjI2OSBkcGtnLWRpdmVydC44OjEzOSBkcGtnLWdlbmNoYW5nZXMuMToxNTQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjE1MCBkcGtnLWdlbnN5bWJvbHMuMTo0NjQgZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxMzkKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6NzEgZHBrZy1uYW1lLjE6MTA4IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxMzEKKyM6IGRwa2ctcXVlcnkuMToyMTkgZHBrZy1zaGxpYmRlcHMuMTozMzkgZHBrZy1zb3VyY2UuMTo3MzggZHBrZy1zcGxpdC4xOjIyNworIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo5MSBkcGtnLXZlbmRvci4xOjUzIHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo1MDEKK21zZ2lkICIiCisiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbmNlIHZlcnNpb24gMiBvciBsYXRlciAiCisiZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gV0FSUkFOVFkuIgorbXNnc3RyICIiCisiQ2UgcHJvZ3JhbW1lIGVzdCB1biBsb2dpY2llbCBsaWJyZcKgOyB2b3lleiBsYSDCq8KgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2XCoMK7ICIKKyJ2ZXJzaW9uIDIgb3Ugc3Vww6lyaWV1cmUgcG91ciBsZSBjb3B5cmlnaHQuIElsIG4neSBhIFBBUyBkZSBnYXJhbnRpZS4iCisKKyMuIHR5cGU6IFRICisjOiBkZWItb2xkLjU6MQorIywgbm8td3JhcAorbXNnaWQgImRlYi1vbGQiCittc2dzdHIgImRlYi1vbGQiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vbGQuNTo0Cittc2dpZCAiZGViLW9sZCAtIG9sZCBzdHlsZSBEZWJpYW4gYmluYXJ5IHBhY2thZ2UgZm9ybWF0IgorbXNnc3RyICJkZWItb2xkIC0gQW5jaWVuIGZvcm1hdCBkZXMgcGFxdWV0cyBiaW5haXJlcyBEZWJpYW4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vbGQuNToxNworbXNnaWQgIiIKKyJUaGUgQjwuZGViPiBmb3JtYXQgaXMgdGhlIERlYmlhbiBiaW5hcnkgcGFja2FnZSBmaWxlIGZvcm1hdC4gVGhpcyBtYW51YWwgIgorInBhZ2UgZGVzY3JpYmVzIHRoZSBCPG9sZD4gZm9ybWF0LCB1c2VkIGJlZm9yZSBEZWJpYW4gMC45My4gUGxlYXNlIHNlZSBCPGRlYj4iCisiKDUpICBmb3IgZGV0YWlscyBvZiB0aGUgbmV3IGZvcm1hdC4iCittc2dzdHIgIiIKKyJMZSBmb3JtYXQgZGUgZmljaGllciBCPC5kZWI+IGNvcnJlc3BvbmQgYXV4IHBhcXVldHMgYmluYWlyZXMgRGViaWFuLiBDZXR0ZSAiCisicGFnZSBkZSBtYW51ZWwgZMOpY3JpdCBsJ0I8YW5jaWVuPiBmb3JtYXQsIHV0aWxpc8OpIGF2YW50IGxhIHZlcnNpb24gMC45MyBkZSAiCisiRGViaWFuLiBWZXVpbGxleiBjb25zdWx0ZXIgQjxkZWI+KDUpIHBvdXIgbGVzIGluZm9ybWF0aW9ucyBzdXIgbGUgbm91dmVhdSAiCisiZm9ybWF0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW9sZC41OjIxCittc2dpZCAiIgorIlRoZSBmaWxlIGlzIHR3byBsaW5lcyBvZiBmb3JtYXQgaW5mb3JtYXRpb24gYXMgQVNDSUkgdGV4dCwgZm9sbG93ZWQgYnkgdHdvICIKKyJjb25jYXRlbmF0ZWQgZ3ppcHBlZCB1c3RhciBmaWxlcy4iCittc2dzdHIgIiIKKyJMZSBmaWNoaWVyIGNvbnNpc3RlIGVuIGRldXggbGlnbmVzIGQnaW5mb3JtYXRpb24gYXUgZm9ybWF0IHRleHRlIEFTQ0lJLCAiCisic3VpdmkgcGFyIGxhIGNvbmNhdMOpbmF0aW9uIGRlIGRldXggZmljaGllcnMgdXN0YXIgY29tcHJlc3PDqSBhdmVjIGd6aXAuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb2xkLjU6MjUKK21zZ2lkICIiCisiVGhlIGZpcnN0IGxpbmUgaXMgdGhlIGZvcm1hdCB2ZXJzaW9uIG51bWJlciBwYWRkZWQgdG8gOCBkaWdpdHMsIGFuZCBpcyAiCisiQjwwLjkzOTAwMD4gZm9yIGFsbCBvbGQtZm9ybWF0IGFyY2hpdmVzLiIKK21zZ3N0ciAiIgorIkxhIHByZW1pw6hyZSBsaWduZSBpbmRpcXVlIGxhIHZlcnNpb24gZHUgZm9ybWF0LCByZW1wbGllIHN1ciA4IGNoaWZmcmVzLCAiCisiYydlc3Qgw6AgZGlyZSBCPDAuOTM5MDAwPiBwb3VyIHRvdXRlcyBsZXMgYXJjaGl2ZXMgZGFucyBsJ2FuY2llbiBmb3JtYXQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb2xkLjU6MjgKK21zZ2lkICIiCisiVGhlIHNlY29uZCBsaW5lIGlzIGEgZGVjaW1hbCBzdHJpbmcgKHdpdGhvdXQgbGVhZGluZyB6ZXJvZXMpIGdpdmluZyB0aGUgIgorImxlbmd0aCBvZiB0aGUgZmlyc3QgZ3ppcHBlZCB0YXJmaWxlLiIKK21zZ3N0ciAiIgorIkxhIGRldXhpw6htZSBsaWduZSBmb3Vybml0IHVuIG5vbWJyZSBkw6ljaW1hbCAoc2FucyB6w6lyb3MgZW4gdMOqdGUpLCBxdWkgIgorImluZGlxdWUgbGEgdGFpbGxlIGRlIGxhIHByZW1pw6hyZSBhcmNoaXZlIHRhciBjb21wcmVzc8OpZSBhdmVjIGd6aXAuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb2xkLjU6MzAKK21zZ2lkICJFYWNoIG9mIHRoZXNlIGxpbmVzIGlzIHRlcm1pbmF0ZWQgd2l0aCBhIHNpbmdsZSBuZXdsaW5lIGNoYXJhY3Rlci4iCittc2dzdHIgIiIKKyJDaGFjdW5lIGRlIGNlcyBsaWduZXMgc2UgdGVybWluZSBwYXIgdW4gdW5pcXVlIGNhcmFjdMOocmUgZGUgbm91dmVsbGUgbGlnbmUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb2xkLjU6MzUKK21zZ2lkICIiCisiVGhlIGZpcnN0IHRhcmZpbGUgY29udGFpbnMgdGhlIGNvbnRyb2wgaW5mb3JtYXRpb24sIGFzIGEgc2VyaWVzIG9mIG9yZGluYXJ5ICIKKyJmaWxlcy4gVGhlIGZpbGUgQjxjb250cm9sPiBtdXN0IGJlIHByZXNlbnQsIGFzIGl0IGNvbnRhaW5zIHRoZSBjb3JlIGNvbnRyb2wgIgorImluZm9ybWF0aW9uLiIKK21zZ3N0ciAiIgorIkxhIHByZW1pw6hyZSBhcmNoaXZlIHRhciBjb250aWVudCBsZXMgaW5mb3JtYXRpb25zIGRlIGNvbnRyw7RsZSwgc291cyBmb3JtZSAiCisiZCd1bmUgc8OpcmllIGRlIGZpY2hpZXJzIG9yZGluYWlyZXMuIExlIGZpY2hpZXIgQjxjb250cm9sPiBkb2l0IMOqdHJlIHByw6lzZW50LCAiCisicHVpc3F1J2lsIGNvbnRpZW50IGxlcyBpbmZvcm1hdGlvbnMgcHJpbmNpcGFsZXMgZGUgY29udHLDtGxlLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW9sZC41OjQ2Cittc2dpZCAiIgorIkluIHNvbWUgdmVyeSBvbGQgYXJjaGl2ZXMsIHRoZSBmaWxlcyBpbiB0aGUgY29udHJvbCB0YXJmaWxlIG1heSBvcHRpb25hbGx5ICIKKyJiZSBpbiBhIEI8REVCSUFOPiBzdWJkaXJlY3RvcnkuIEluIHRoYXQgY2FzZSwgdGhlIEI8REVCSUFOPiBzdWJkaXJlY3RvcnkgIgorIndpbGwgYmUgaW4gdGhlIGNvbnRyb2wgdGFyZmlsZSB0b28sIGFuZCB0aGUgY29udHJvbCB0YXJmaWxlIHdpbGwgaGF2ZSBvbmx5ICIKKyJmaWxlcyBpbiB0aGF0IGRpcmVjdG9yeS4gT3B0aW9uYWxseSB0aGUgY29udHJvbCB0YXJmaWxlIG1heSBjb250YWluIGFuIGVudHJ5ICIKKyJmb3IgYEI8Lj4nLCB0aGF0IGlzLCB0aGUgY3VycmVudCBkaXJlY3RvcnkuIgorbXNnc3RyICIiCisiRGFucyBjZXJ0YWluZXMgYXJjaGl2ZXMgdnJhaW1lbnQgYW5jaWVubmVzLCBsZXMgZmljaGllcnMgZGUgbCdhcmNoaXZlIGRlICIKKyJjb250csO0bGUgcGV1dmVudCBzZSB0cm91dmVyIGRhbnMgdW4gc291cy1yw6lwZXJ0b2lyZSBCPERFQklBTj4uIERhbnMgY2UgY2FzLCAiCisibGUgc291cy1yw6lwZXJ0b2lyZSBCPERFQklBTj4gc2UgdHJvdXZlIMOpZ2FsZW1lbnQgZGFucyBsJ2FyY2hpdmUgZGUgY29udHLDtGxlLCAiCisicXVpIG5lIGNvbnRpZW5kcmEgcXVlIGRlcyBmaWNoaWVycyBkZSBjZSByw6lwZXJ0b2lyZS4gRW4gb3B0aW9uLCBsJ2FyY2hpdmUgZGUgIgorImNvbnRyw7RsZSBwZXV0IGNvbnRlbmlyIHVuZSBlbnRyw6llIHBvdXIgQjwuPiwgbGUgcsOpcGVydG9pcmUgY291cmFudC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vbGQuNTo1MAorbXNnaWQgIiIKKyJUaGUgc2Vjb25kIGd6aXBwZWQgdGFyZmlsZSBpcyB0aGUgZmlsZXN5c3RlbSBhcmNoaXZlLCBjb250YWluaW5nIHBhdGhuYW1lcyAiCisicmVsYXRpdmUgdG8gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoZSBzeXN0ZW0gdG8gYmUgaW5zdGFsbGVkIG9uLiBUaGUgIgorInBhdGhuYW1lcyBkbyBub3QgaGF2ZSBsZWFkaW5nIHNsYXNoZXMuIgorbXNnc3RyICIiCisiTGEgc2Vjb25kZSBhcmNoaXZlIGNvbXByZXNzw6llIGF2ZWMgZ3ppcCBjb3JyZXNwb25kIMOgIGwnYXJjaGl2ZSDDoCBwbGFjZXIgZGFucyAiCisibGUgc3lzdMOobWUgZGUgZmljaGllcnMuIEVsbGUgY29udGllbnQgZGVzIGNoZW1pbnMgcmVsYXRpZnMgw6AgbGEgcmFjaW5lIGR1ICIKKyJzeXN0w6htZSBkYW5zIGxlcXVlbCBzZSBmZXJhIGwnaW5zdGFsbGF0aW9uLiBMZXMgbm9tcyBkZSBmaWNoaWVycyBuZSBkw6lidXRlbnQgIgorInBhcyBwYXIgZGVzIGJhcnJlcyBvYmxpcXVlcyAowqvCoC/CoMK7KS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vbGQuNTo1NAorbXNnaWQgIkI8ZGViPig1KSwgQjxkcGtnLWRlYj4oMSksIEI8ZGViLWNvbnRyb2w+KDUpLiIKK21zZ3N0ciAiQjxkZWI+KDUpLCBCPGRwa2ctZGViPigxKSwgQjxkZWItY29udHJvbD4oNSkuIgorCisjLiB0eXBlOiBUSAorIzogZGViLW92ZXJyaWRlLjU6MTUKKyMsIG5vLXdyYXAKK21zZ2lkICJkZWItb3ZlcnJpZGUiCittc2dzdHIgImRlYi1vdmVycmlkZSIKKworIy4gdHlwZTogVEgKKyM6IGRlYi1vdmVycmlkZS41OjE1IGRlYi1leHRyYS1vdmVycmlkZS41OjEgZGViLXNobGlicy41OjE2IGRlYi1zdWJzdHZhcnMuNToyCisjOiBkZWItc3ltYm9scy41OjIgZGViLXRyaWdnZXJzLjU6MSBkcGtnLWFyY2hpdGVjdHVyZS4xOjEKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MSBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6MSBkcGtnLWRpc3RhZGRmaWxlLjE6MQorIzogZHBrZy1kaXZlcnQuODoxIGRwa2ctZ2VuY2hhbmdlcy4xOjEgZHBrZy1nZW5jb250cm9sLjE6MSBkcGtnLWdlbnN5bWJvbHMuMToyCisjOiBkcGtnLW5hbWUuMTo2IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxIGRwa2ctc2NhbnBhY2thZ2VzLjE6MTUKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMToxIGRwa2ctc2hsaWJkZXBzLjE6MSBkcGtnLXNvdXJjZS4xOjIgZHBrZy1zcGxpdC4xOjIKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6MSBzdGFydC1zdG9wLWRhZW1vbi44OjEgdXBkYXRlLWFsdGVybmF0aXZlcy44OjgKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnIHV0aWxpdGllcyIKK21zZ3N0ciAiVXRpbGl0YWlyZXMgZGUgZHBrZyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW92ZXJyaWRlLjU6MTgKK21zZ2lkICJkZWItb3ZlcnJpZGUgLSBEZWJpYW4gYXJjaGl2ZSBvdmVycmlkZSBmaWxlIgorbXNnc3RyICJkZWItb3ZlcnJpZGUgLSBGaWNoaWVyIG92ZXJyaWRlIGQndW5lIGFyY2hpdmUgRGViaWFuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb3ZlcnJpZGUuNToyMSBkZWItZXh0cmEtb3ZlcnJpZGUuNTo3Cittc2dpZCAib3ZlcnJpZGUiCittc2dzdHIgIm92ZXJyaWRlIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb3ZlcnJpZGUuNToyNworbXNnaWQgIiIKKyJXaGlsZSBtb3N0IGluZm9ybWF0aW9uIGFib3V0IGEgcGFja2FnZSBjYW4gYmUgZm91bmQgaW4gdGhlIGNvbnRyb2wgZmlsZSwgIgorInNvbWUgaXMgbWFuYWdlZCBjZW50cmFsbHkgYnkgdGhlIGRpc3RyaWJ1dGlvbiBjemFycyByYXRoZXIgdGhhbiBieSB0aGUgIgorIm1haW50YWluZXIgaW4gb3JkZXIgdG8gb2ZmZXIgc29tZSBnbG9iYWwgY29uc2lzdGVuY3kuICBUaGlzIGluZm9ybWF0aW9uIGlzICIKKyJmb3VuZCBpbiB0aGUgb3ZlcnJpZGUgZmlsZS4iCittc2dzdHIgIiIKKyJCaWVuIHF1ZSBsJ29uIHB1aXNzZSB0cm91dmVyIGRhbnMgbGUgZmljaGllciDCq8KgY29udHJvbMKgwrsgbGEgcGx1cGFydCBkZXMgIgorImluZm9ybWF0aW9ucyBjb25jZXJuYW50IHVuIHBhcXVldCwgY2VydGFpbmVzIGRvaXZlbnQgw6p0cmUgaW5zY3JpdGVzIHBhciBsZXMgIgorInJlc3BvbnNhYmxlcyBkZSBsYSBkaXN0cmlidXRpb24gcGx1dMO0dCBxdWUgcGFyIGxlIHJlc3BvbnNhYmxlIGR1IHBhcXVldCBhZmluICIKKyJkZSBnYXJhbnRpciB1bmUgY29ow6lyZW5jZSBnbG9iYWxlLiBDZXMgaW5mb3JtYXRpb25zIHNlIHRyb3V2ZW50IGRhbnMgbGUgIgorImZpY2hpZXIgwqvCoG92ZXJyaWRlwqDCuy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vdmVycmlkZS41OjMxCittc2dpZCAiIgorIlRoZSBvdmVycmlkZSBmaWxlIGhhcyBhIHNpbXBsZSB3aGl0ZXNwYWNlLWRlbGltaXRlZCBmb3JtYXQuIENvbW1lbnRzIGFyZSAiCisiYWxsb3dlZCAoZGVub3RlZCB3aXRoIGEgQjwjPikuIgorbXNnc3RyICIiCisiTGVzIMOpbMOpbWVudHMgZHUgZmljaGllciDCq8Kgb3ZlcnJpZGXCoMK7IHNvbnQgc8OpcGFyw6lzIHNpbXBsZW1lbnQgcGFyIHVuIGVzcGFjZS4gIgorIkxlcyBjb21tZW50YWlyZXMgY29tbWVuY2VudCBwYXIgdW4gY2FyYWN0w6hyZSBCPMKrwqAjwqDCuz4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb3ZlcnJpZGUuNTozNworbXNnaWQgIkk8cGFja2FnZT4gSTxwcmlvcml0eT4gSTxzZWN0aW9uPiBbSTxtYWludGFpbmVyaW5mbz5dIgorbXNnc3RyICJJPHBhcXVldD4gSTxwcmlvcml0w6k+IEk8c2VjdGlvbj4gW0k8cmVzcG9uc2FibGU+XSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW92ZXJyaWRlLjU6NDIKK21zZ2lkICIiCisiSTxwYWNrYWdlPiBpcyB0aGUgbmFtZSBvZiB0aGUgcGFja2FnZS4gRW50cmllcyBpbiB0aGUgb3ZlcnJpZGUgZmlsZSBmb3IgIgorInBhY2thZ2VzIG5vdCBmb3VuZCBpbiB0aGUgdHJlZSBvZiBiaW5hcnkgcGFja2FnZXMgYXJlIGlnbm9yZWQuIgorbXNnc3RyICIiCisiSTxwYXF1ZXQ+IGVzdCBsZSBub20gZHUgcGFxdWV0LiBMZXMgZW50csOpZXMgZHUgZmljaGllciDCq8Kgb3ZlcnJpZGXCoMK7ICIKKyJjb25jZXJuYW50IGRlcyBwYXF1ZXRzIHF1aSBuZSBzb250IHBhcyBkYW5zIGwnYXJib3Jlc2NlbmNlIGRlcyBwYXF1ZXRzICIKKyJiaW5haXJlcyBzb250IGlnbm9yw6llcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vdmVycmlkZS41OjQ4Cittc2dpZCAiIgorIkk8cHJpb3JpdHk+IGFuZCBJPHNlY3Rpb24+IGNvcnJlc3BvbmQgdG8gdGhlIHJlc3BlY3RpdmUgY29udHJvbCBmaWVsZHMgIgorImF2YWlsYWJsZSBpbiB0aGUgLmRlYi4gVGhlIGFsbG93ZWQgdmFsdWVzIGFyZSBsaXN0ZWQgaW4gdGhlIERlYmlhbiBwb2xpY3kuIgorbXNnc3RyICIiCisiSTxwcmlvcml0eT4gZXQgSTxzZWN0aW9uPiBjb3JyZXNwb25kZW50IHJlc3BlY3RpdmVtZW50IGF1eCBjaGFtcHMgZGUgIgorImNvbnRyw7RsZSBwcsOpc2VudCBkYW5zIGxlIGZpY2hpZXIgLmRlYi4gTGVzIHZhbGV1cnMgYXV0b3Jpc8OpZSBzb250IGTDqWZpbmllcyAiCisiZGFucyBsYSBDaGFydGUgRGViaWFuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW92ZXJyaWRlLjU6NTYKK21zZ2lkICIiCisiSTxtYWludGFpbmVyaW5mbz4sIGlmIHByZXNlbnQsIGNhbiBiZSBlaXRoZXIgdGhlIG5hbWUgb2YgYSBtYWludGFpbmVyIGZvciBhbiAiCisidW5jb25kaXRpb25hbCBvdmVycmlkZSwgb3IgZWxzZSBJPG9sZG1haW50YWluZXI+IEI8PUU8Z3Q+PiBJPG5ld21haW50YWluZXI+ICIKKyJ0byBwZXJmb3JtIGEgc3Vic3RpdHV0aW9uLiIKK21zZ3N0ciAiIgorIkwnw6lsw6ltZW50IEk8cmVzcG9uc2FibGUsPiBxdWFuZCBpbCBleGlzdGUsIHBldXQgcmVwcsOpc2VudGVyIHNvaXQgbGUgbm9tIGR1ICIKKyJyZXNwb25zYWJsZSBxdWFuZCBpbCBzJ2FnaXQgZCd1biByZW1wbGFjZW1lbnQgc2FucyBjb25kaXRpb24sIHNvaXQgbGEgY2hhw65uZSAiCisiSTxhbmNpZW5yZXNwb25zYWJsZT4gQjw9RTxndD4+IEk8bm91dmVhdXJlc3BvbnNhYmxlPiBwb3VyIHVuIGNoYW5nZW1lbnQgZGUgIgorInJlc3BvbnNhYmxlLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW92ZXJyaWRlLjU6NjEKK21zZ2lkICIiCisiVGhlIG92ZXJyaWRlIGZpbGVzIHVzZWQgdG8gbWFrZSB0aGUgb2ZmaWNpYWwgUGFja2FnZXMgbGlzdHMgbWF5IGJlIGZvdW5kIGluICIKKyJ0aGUgSTxpbmRpY2VzPiBkaXJlY3Rvcnkgb24gYW55IERlYmlhbiBtaXJyb3IuIgorbXNnc3RyICIiCisiT24gcGV1dCB0cm91dmVyIGxlcyBmaWNoaWVycyDCq8Kgb3ZlcnJpZGXCoMK7LCBkb250IG9uIHNlIHNlcnQgcG91ciDDqXRhYmxpciBsZXMgIgorImZpY2hpZXJzIG9mZmljaWVscyDCq8KgUGFja2FnZXPCoMK7LCBkYW5zIGxlIHLDqXBlcnRvaXJlIEk8aW5kaWNlcz4gZGVzIG1pcm9pcnMgIgorIkRlYmlhbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vdmVycmlkZS41OjY2Cittc2dpZCAiIgorIkI8ZHBrZy1zY2FucGFja2FnZXM+KDEpLCBCPGRwa2ctc2NhbnNvdXJjZXM+KDEpLCBCPGFwdC1mdHBhcmNoaXZlPigxKSwgQjwvIgorInVzci9zaGFyZS9kb2MvZGViaWFuLXBvbGljeS9wb2xpY3kuaHRtbC9pbmRleC5odG1sPi4iCittc2dzdHIgIiIKKyJCPGRwa2ctc2NhbnBhY2thZ2VzPigxKSwgQjxkcGtnLXNjYW5zb3VyY2VzPigxKSwgQjxhcHQtZnRwYXJjaGl2ZT4oMSksIEI8LyIKKyJ1c3Ivc2hhcmUvZG9jL2RlYmlhbi1wb2xpY3kvcG9saWN5Lmh0bWwvaW5kZXguaHRtbD4uIgorCisjLiB0eXBlOiBUSAorIzogZGViLWV4dHJhLW92ZXJyaWRlLjU6MQorIywgbm8td3JhcAorbXNnaWQgImRlYi1leHRyYS1vdmVycmlkZSIKK21zZ3N0ciAiZGViLWV4dHJhLW92ZXJyaWRlIgorCisjLiB0eXBlOiBUSAorIzogZGViLWV4dHJhLW92ZXJyaWRlLjU6MQorIywgbm8td3JhcAorbXNnaWQgIjIwMDktMDgtMTYiCittc2dzdHIgIjE2LTA4LTIwMDkiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1leHRyYS1vdmVycmlkZS41OjQKK21zZ2lkICJkZWItZXh0cmEtb3ZlcnJpZGUgLSBEZWJpYW4gYXJjaGl2ZSBleHRyYSBvdmVycmlkZSBmaWxlIgorbXNnc3RyICIiCisiZGViLWV4dHJhLW92ZXJyaWRlIC0gRmljaGllciBvdmVycmlkZSBzdXBwbMOpbWVudGFpcmUgZCd1bmUgYXJjaGl2ZSBEZWJpYW4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1leHRyYS1vdmVycmlkZS41OjEyCittc2dpZCAiIgorIldoaWxlIG1vc3QgaW5mb3JtYXRpb24gYWJvdXQgYSBiaW5hcnkvc291cmNlIHBhY2thZ2UgY2FuIGJlIGZvdW5kIGluIHRoZSAiCisiY29udHJvbC8uZHNjIGZpbGUsIGFsbCBvZiBpdCBjYW4gYmUgb3ZlcnJpZGRlbiB3aGVuIGl0J3MgZXhwb3J0ZWQgdG8gIgorIlBhY2thZ2VzL1NvdXJjZXMgZmlsZXMuIFRoZSBleHRyYSBvdmVycmlkZSBmaWxlIGNvbnRhaW5zIHRob3NlIG92ZXJyaWRlcy4iCittc2dzdHIgIiIKKyJCaWVuIHF1ZSBsYSBtYWpvcml0w6kgZGVzIGluZm9ybWF0aW9ucyBkJ3VuIHBhcXVldCBzb3VyY2Ugb3UgYmluYWlyZSBwdWlzc2UgIgorIsOqdHJlIHRyb3V2w6llcyBkYW5zIGxlIGZpY2hpZXIgY29udHJvbC8uZHNjLCBjZXMgaW5mb3JtYXRpb25zIHBldXZlbnQgw6p0cmUgIgorInJlbXBsYWPDqWVzIGxvcnMgZGUgbCdleHBvcnRhdGlvbiBkYW5zIGRlcyBmaWNoaWVycyBQYWNrYWdlcyBvdVNvdXJjZXMuIExlcyAiCisiZmljaGllciBkJ8KrwqBvdmVycmlkZcKgwrsgc3VwcGzDqW1lbnRhaXJlIGNvbnRpZW50IGxlcyB2YWxldXJzIHJlbXBsYWPDqWVzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWV4dHJhLW92ZXJyaWRlLjU6MTYKK21zZ2lkICIiCisiVGhlIGV4dHJhIG92ZXJyaWRlIGZpbGUgaGFzIGEgc2ltcGxlIHdoaXRlc3BhY2UtZGVsaW1pdGVkIGZvcm1hdC4gQ29tbWVudHMgIgorImFyZSBhbGxvd2VkIChkZW5vdGVkIHdpdGggYSBCPCM+KS4iCittc2dzdHIgIiIKKyJMZXMgw6lsw6ltZW50cyBkdSBmaWNoaWVyIMKrwqBvdmVycmlkZcKgwrsgc3VwcGzDqW1lbnRhaXJlIHNvbnQgc8OpcGFyw6lzIHNpbXBsZW1lbnQgIgorInBhciB1biBlc3BhY2UuIExlcyBjb21tZW50YWlyZXMgY29tbWVuY2VudCBwYXIgdW4gY2FyYWN0w6hyZSBCPMKrwqAjwqDCuz4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItZXh0cmEtb3ZlcnJpZGUuNToyMQorbXNnaWQgIkk8cGFja2FnZT4gSTxmaWVsZC1uYW1lPiBJPHZhbHVlPiIKK21zZ3N0ciAiSTxwYXF1ZXQ+IEk8bm9tLWRlLWNoYW1wPiBJPHZhbGV1cj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1leHRyYS1vdmVycmlkZS41OjI1Cittc2dpZCAiSTxwYWNrYWdlPiBpcyB0aGUgbmFtZSBvZiB0aGUgYmluYXJ5L3NvdXJjZSBwYWNrYWdlLiIKK21zZ3N0ciAiSTxwYXF1ZXQ+IGVzdCBsZSBub20gZHUgcGFxdWV0IGJpbmFpcmUvc291cmNlLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWV4dHJhLW92ZXJyaWRlLjU6MzEKK21zZ2lkICIiCisiSTxmaWVsZC1uYW1lPiBpcyB0aGUgbmFtZSBvZiB0aGUgZmllbGQgdGhhdCBpcyBvdmVycmlkZGVuLiAgSTx2YWx1ZT4gaXMgdGhlICIKKyJ2YWx1ZSB0byBwdXQgaW4gdGhlIGZpZWxkLiBJdCBjYW4gY29udGFpbiBzcGFjZXMgYXMgdGhlIGxpbmUgaXMgc3BsaXQgaW4gbm8gIgorIm1vcmUgdGhhbiAzIGNvbHVtbnMgd2hlbiBpdCdzIHBhcnNlZC4iCittc2dzdHIgIiIKKyJJPG5vbS1jaGFtcD4gZXN0IGxlIG5vbSBkdSBjaGFtcCBxdWkgZXN0IHJlbXBsYWPDqS4gSTx2YWxldXI+IGVzdCBsYSB2YWxldXIgw6AgIgorIm1ldHRyZSBkYW5zIGNlIGNoYW1wLiBFbGxlIHBldXQgY29udGVuaXIgZGVzIGVzcGFjZXMgY2FyIGxhIGxpZ25lIGVzdCAiCisiZMOpY291cMOpZSBlbiAzIGNvbG9ubmVzIGF1IHBsdXMgcXVhbmQgZWxsZSBlc3QgYW5hbHlzw6llLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWV4dHJhLW92ZXJyaWRlLjU6MzYKK21zZ2lkICIiCisiVGhlIGV4dHJhIG92ZXJyaWRlIGZpbGVzIHVzZWQgdG8gbWFrZSB0aGUgb2ZmaWNpYWwgUGFja2FnZXMgbGlzdHMgbWF5IGJlICIKKyJmb3VuZCBpbiB0aGUgSTxpbmRpY2VzPiBkaXJlY3Rvcnkgb24gYW55IERlYmlhbiBtaXJyb3IuIgorbXNnc3RyICIiCisiTGVzIGZpY2hpZXJzIGRlIGTDqXJvZ2F0aW9uICjCq8Kgb3ZlcnJpZGXCoMK7KSBzdXBwbMOpbWVudGFpcmVzIHV0aWxpc8OpcyBwb3VyICIKKyLDqXRhYmxpciBsZXMgZmljaGllcnMgb2ZmaWNpZWxzIMKrwqBQYWNrYWdlc8Kgwrsgc2UgdHJvdXZlbnQgZGFucyBsZSByw6lwZXJ0b2lyZSAiCisiSTxpbmRpY2VzPiBkZXMgbWlyb2lycyBEZWJpYW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItZXh0cmEtb3ZlcnJpZGUuNTo0MAorbXNnaWQgIkI8ZHBrZy1zY2FucGFja2FnZXM+KDEpLCBCPGRwa2ctc2NhbnNvdXJjZXM+KDEpLCBCPGFwdC1mdHBhcmNoaXZlPigxKS4iCittc2dzdHIgIkI8ZHBrZy1zY2FucGFja2FnZXM+KDEpLCBCPGRwa2ctc2NhbnNvdXJjZXM+KDEpLCBCPGFwdC1mdHBhcmNoaXZlPigxKS4iCisKKyMuIHR5cGU6IFRICisjOiBkZWItc2hsaWJzLjU6MTYKKyMsIG5vLXdyYXAKK21zZ2lkICJkZWItc2hsaWJzIgorbXNnc3RyICJkZWItc2hsaWJzIgorCisjLiB0eXBlOiBUSAorIzogZGViLXNobGlicy41OjE2CisjLCBuby13cmFwCittc2dpZCAiMjAwOC0wMi0xNyIKK21zZ3N0ciAiMTctMDItMjAwOCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNobGlicy41OjE5Cittc2dpZCAiZGViLXNobGlicyAtIERlYmlhbiBzaGFyZWQgbGlicmFyeSBpbmZvcm1hdGlvbiBmaWxlIgorbXNnc3RyICIiCisiZGViLXNobGlicyAtIEZpY2hpZXIgZCdpbmZvcm1hdGlvbiBzdXIgbGVzIGJpYmxpb3Row6hxdWVzIHBhcnRhZ8OpZXMgRGViaWFuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc2hsaWJzLjU6MjkKK21zZ2lkICIiCisiQjxzaGxpYnM+IGZpbGVzIG1hcCBzaGFyZWQgbGlicmFyeSBuYW1lcyBhbmQgdmVyc2lvbnMgKEk8c29uYW1lcz4pICB0byAiCisiZGVwZW5kZW5jaWVzIHN1aXRhYmxlIGZvciBhIHBhY2thZ2UgY29udHJvbCBmaWxlLiAgVGhlcmUgaXMgb25lIGVudHJ5IHBlciAiCisibGluZS4gQmxhbmsgbGluZXMgYXJlIEI8bm90PiBhbGxvd2VkLiAgTGluZXMgYmVnaW5uaW5nIHdpdGggYW4gQjwjPiAiCisiY2hhcmFjdGVyIGFyZSBjb25zaWRlcmVkIGNvbW1lbnRhcnksIGFuZCBhcmUgaWdub3JlZC4gIEFsbCBvdGhlciBsaW5lcyBtdXN0ICIKKyJoYXZlIHRoZSBmb3JtYXQiCittc2dzdHIgIiIKKyJMZXMgZmljaGllcnMgQjxzaGxpYnM+IGFzc29jaWVudCBsZXMgbm9tcyBldCB2ZXJzaW9ucyAoSTxzb25hbWVzPikgZGVzICIKKyJiaWJsaW90aMOocXVlcyBwYXJ0YWfDqWVzIGF1eCBkw6lwZW5kYW5jZXMgY29ycmVzcG9uZGFudGVzIGRhbnMgbGVzIGZpY2hpZXJzIGRlICIKKyJjb250csO0bGUgZGVzIHBhcXVldHMuIElsIHkgYSB1bmUgZW50csOpZSBwYXIgbGlnbmUgZXQgbGVzIGxpZ25lcyB2aWRlcyBuZSAiCisic29udCBCPHBhcyBhdXRvcmlzw6llcz4uIExlcyBsaWduZXMgY29tbWVuY2FudCBwYXIgbGUgY2FyYWN0w6hyZSBCPCjCq8KgI8KgwrspPiAiCisic29udCBjb25zaWTDqXLDqWVzIGNvbW1lIMOpdGFudCBkZXMgY29tbWVudGFpcmVzIGV0IHNvbnQgaWdub3LDqWVzLiBUb3V0ZXMgbGVzICIKKyJhdXRyZXMgbGlnbmVzIGRvaXZlbnQgw6p0cmUgYXUgZm9ybWF0IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc2hsaWJzLjU6MzQKKyMsIGZ1enp5CisjfCBtc2dpZCAiW0k8dHlwZTo+XSBJPGxpYnJhcnk+IEk8dmVyc2lvbj4gSTxkZXBlbmRlbmNpZXM+IgorbXNnaWQgIltJPHR5cGU+Qjw6Pl0gSTxsaWJyYXJ5PiBJPHZlcnNpb24+IEk8ZGVwZW5kZW5jaWVzPiIKK21zZ3N0ciAiW0k8dHlwZTo+XSBJPGJpYmxpdG9ow6hxdWU+IEk8dmVyc2lvbj4gSTxkw6lwZW5kYW5jZXM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc2hsaWJzLjU6MzgKK21zZ2lkICIiCisiVGhlIEk8bGlicmFyeT4gYW5kIEk8dmVyc2lvbj4gZmllbGRzIGFyZSB3aGl0ZXNwYWNlLWRlbGltaXRlZCwgYnV0IHRoZSAiCisiSTxkZXBlbmRlbmNpZXM+IGZpZWxkIGV4dGVuZHMgdG8gdGhlIGVuZCBvZiB0aGUgbGluZS4gIFRoZSBJPHR5cGU+IGZpZWxkIGlzICIKKyJvcHRpb25hbCBhbmQgbm9ybWFsbHkgbm90IG5lZWRlZC4iCittc2dzdHIgIiIKKyJMZXMgY2hhbXBzIEk8YmlibGlvdGjDqHF1ZT4gZXQgSTx2ZXJzaW9uPiBzb250IHPDqXBhcsOpcyBwYXIgZGVzIGVzcGFjZXMuIExlIGxlICIKKyJjaGFtcCBJPGTDqXBlbmRhbmNlPiBmaW5pdCBsYSBsaWduZS4gTGUgY2hhbXAgSTx0eXBlPiBlc3Qgb3B0aW9ubmVsIGV0IGRvbmMgIgorIm5vcm1hbGVtZW50IHBhcyBuw6ljZXNzYWlyZS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zaGxpYnMuNTo0MAorbXNnaWQgIlNlZSB0aGUgRGViaWFuIFBvbGljeSBNYW51YWwgZm9yIGZ1cnRoZXIgZGV0YWlscy4iCittc2dzdHIgIkxpcmUgbGEgY2hhcnRlIERlYmlhbiBwb3VyIHBsdXMgZCdpbmZvcm1hdGlvbnMuIgorCisjLiB0eXBlOiBTSAorIzogZGViLXNobGlicy41OjQxIGRlYi1zeW1ib2xzLjU6NDMgZHBrZy4xOjcxNCBkcGtnLWFyY2hpdGVjdHVyZS4xOjI2MgorIzogZHBrZy1kaXZlcnQuODo5MSBkcGtnLW5hbWUuMTo2NSB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDU5CisjLCBuby13cmFwCittc2dpZCAiRVhBTVBMRVMiCittc2dzdHIgIkVYRU1QTEVTIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc2hsaWJzLjU6NTAKK21zZ2lkICIiCisiVGhlIEI8c2hsaWJzPiBmaWxlIGZvciBhIHR5cGljYWwgbGlicmFyeSBwYWNrYWdlLCBuYW1lZCBJPGxpYmNydW5jaDE+LCB0aGF0ICIKKyJwcm92aWRlcyBvbmUgbGlicmFyeSB3aG9zZSBzb25hbWUgaXMgSTxsaWJjcnVuY2guc28uMT4sIG1pZ2h0IHJlYWQiCittc2dzdHIgIiIKKyJMZSBmaWNoaWVyIEI8c2hsaWJzPiBwb3VyIHVuIHBhcXVldCBub21tw6kgSTxsaWJjcnVuY2gxPiwgcXVpIGZvdXJuaXQgdW5lICIKKyJiaWJsaW90aMOocXVlIGRvbnQgbGUgbm9tIGVzdCBJPGxpYmNydW5jaC5zby4xPiwgZG9pdCBhdm9pciBsYSBsaWduZSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNobGlicy41OjUyCittc2dpZCAibGliY3J1bmNoIDEgbGliY3J1bmNoMSAoRTxndD49IDEuMi0xKSIKK21zZ3N0ciAibGliY3J1bmNoIDEgbGliY3J1bmNoMSAoRTxndD49IDEuMi0xKSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNobGlicy41OjYwCittc2dpZCAiIgorIlRoZSBJPGRlcGVuZGVuY2llcz4gbXVzdCBtZW50aW9uIHRoZSBtb3N0IHJlY2VudCB2ZXJzaW9uIG9mIHRoZSBwYWNrYWdlIHRoYXQgIgorImFkZGVkIG5ldyBzeW1ib2xzIHRvIHRoZSBsaWJyYXJ5OiBpbiB0aGUgYWJvdmUgZXhhbXBsZSwgbmV3IHN5bWJvbHMgd2VyZSAiCisiYWRkZWQgdG8gdmVyc2lvbiAxLjIgb2YgSTxsaWJjcnVuY2g+LiAgVGhpcyBpcyBub3QgdGhlIG9ubHkgcmVhc29uIHRoZSAiCisiZGVwZW5kZW5jaWVzIG1pZ2h0IG5lZWQgdG8gYmUgdGlnaHRlbmVkOyBhZ2Fpbiwgc2VlIHRoZSBEZWJpYW4gUG9saWN5IE1hbnVhbCAiCisiZm9yIGRldGFpbHMuIgorbXNnc3RyICIiCisiTGVzIEk8ZMOpcGVuZGFuY2VzPiBkb2l2ZW50IGluZGlxdWVyIGxhIHZlcnNpb24gbGEgcGx1cyByw6ljZW50ZSBkdSBwYXF1ZXQgcXVpICIKKyJham91dGUgZGUgbm91dmVhdXggc3ltYm9sZXMgw6AgbGEgYmlibGlvdGjDqHF1ZcKgOiBkYW5zIGwnZXhlbXBsZSBwcsOpY8OpZGVudCwgZGUgIgorIm5vdXZlYXV4IHN5bWJvbGVzIG9udCDDqXTDqSBham91dMOpcyBhdmVjIGxhIHZlcnNpb24gMS4yIGRlIEk8bGliY3J1bmNoPi4gQ2UgIgorIm4nZXN0IHBhcyBsYSBzZXVsZSByYWlzb24gcG91ciBsYXF1ZWxsZSBsZXMgZMOpcGVuZGFuY2VzIGRvaXZlbnQgw6p0cmUgc3VpdmllcyAiCisiYXZlYyBzb2luwqA7IHVuZSBmb2lzIGRlIHBsdXMsIHZldWlsbGV6IHZvdXMgcmVwb3J0ZXIgw6AgbGEgY2hhcnRlIERlYmlhbiBwb3VyICIKKyJwbHVzIGRlIGTDqXRhaWxzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNobGlicy41OjYzCittc2dpZCAiQjxkcGtnLXNobGliZGVwcz4oMSksIEI8ZGViLXN5bWJvbHM+KDUpLiIKK21zZ3N0ciAiQjxkcGtnLXNobGliZGVwcz4oMSksIEI8ZGViLXN5bWJvbHM+KDUpLiIKKworIy4gdHlwZTogVEgKKyM6IGRlYi1zdWJzdHZhcnMuNToyCisjLCBuby13cmFwCittc2dpZCAiZGViLXN1YnN0dmFycyIKK21zZ3N0ciAiZGViLXN1YnN0dmFycyIKKworIy4gdHlwZTogVEgKKyM6IGRlYi1zdWJzdHZhcnMuNToyCisjLCBuby13cmFwCittc2dpZCAiMjAwOS0wNy0xNSIKK21zZ3N0ciAiMTUtMDctMjAwOSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjUKK21zZ2lkICJkZWItc3Vic3R2YXJzIC0gRGViaWFuIHNvdXJjZSBzdWJzdGl0dXRpb24gdmFyaWFibGVzIgorbXNnc3RyICJkZWItc3Vic3R2YXJzIC0gVmFyaWFibGVzIGRlIHN1YnN0aXR1dGlvbiBkZSBzb3VyY2UgRGViaWFuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6OAorbXNnaWQgInN1YnN0dmFycyIKK21zZ3N0ciAic3Vic3R2YXJzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MTkKK21zZ2lkICIiCisiQmVmb3JlIEI8ZHBrZy1zb3VyY2U+LCBCPGRwa2ctZ2VuY29udHJvbD4gYW5kIEI8ZHBrZy1nZW5jaGFuZ2VzPiB3cml0ZSB0aGVpciAiCisiY29udHJvbCBpbmZvcm1hdGlvbiAodG8gdGhlIHNvdXJjZSBjb250cm9sIGZpbGUgQjwuZHNjPiBmb3IgQjxkcGtnLXNvdXJjZT4gIgorImFuZCB0byBzdGFuZGFyZCBvdXRwdXQgZm9yIEI8ZHBrZy1nZW5jb250cm9sPiBhbmQgQjxkcGtnLWdlbmNoYW5nZXM+KSAgdGhleSAiCisicGVyZm9ybSBzb21lIHZhcmlhYmxlIHN1YnN0aXR1dGlvbnMgb24gdGhlIG91dHB1dCBmaWxlLiIKK21zZ3N0ciAiIgorIkF2YW50IHF1ZSBCPGRwa2ctc291cmNlPiwgQjxkcGtnLWdlbmNvbnRyb2w+IGV0IEI8ZHBrZy1nZW5jaGFuZ2VzPiAiCisibifDqWNyaXZlbnQgbGV1cnMgaW5mb3JtYXRpb25zIGRlIGNvbnRyw7RsZSAoZGFucyBsZSBmaWNoaWVyIHNvdXJjZSBkZSAiCisiY29udHLDtGxlIEI8LmRzYz4gcG91ciBCPGRwa2ctc291cmNlPiBldCBzdXIgbGEgc29ydGllIHN0YW5kYXJkIHBvdXIgQjxkcGtnLSIKKyJnZW5jb250cm9sPiBldCBCPGRwa2ctZ2VuY2hhbmdlcz4pLCBpbHMgcsOpYWxpc2VudCBxdWVscXVlcyBzdWJzdGl0dXRpb25zIGRlICIKKyJ2YXJpYWJsZXMgZGFucyBsZSBmaWNoaWVyIGRlIHNvcnRpZS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToyNgorbXNnaWQgIiIKKyJBIHZhcmlhYmxlIHN1YnN0aXR1dGlvbiBoYXMgdGhlIGZvcm0gQjwkez5JPHZhcmlhYmxlLW5hbWU+Qjx9Pi4gIFZhcmlhYmxlICIKKyJuYW1lcyBjb25zaXN0IG9mIGFscGhhbnVtZXJpY3MsIGh5cGhlbnMgYW5kIGNvbG9ucyBhbmQgc3RhcnQgd2l0aCBhbiAiCisiYWxwaGFudW1lcmljLiBWYXJpYWJsZSBzdWJzdGl0dXRpb25zIGFyZSBwZXJmb3JtZWQgcmVwZWF0ZWRseSB1bnRpbCBub25lIGFyZSAiCisibGVmdDsgdGhlIGZ1bGwgdGV4dCBvZiB0aGUgZmllbGQgYWZ0ZXIgdGhlIHN1YnN0aXR1dGlvbiBpcyByZXNjYW5uZWQgdG8gbG9vayAiCisiZm9yIG1vcmUgc3Vic3RpdHV0aW9ucy4iCittc2dzdHIgIiIKKyJVbmUgc3Vic3RpdHV0aW9uIGRlIHZhcmlhYmxlIGVzdCBkZSBsYSBmb3JtZcKgOiBCPCR7Pkk8bm9tLXZhcmlhYmxlPkI8fT4uIExlcyAiCisibm9tcyBkZSB2YXJpYWJsZSBjb25zaXN0ZW50IGVuIGNhcmFjdMOocmVzIGFscGhhbnVtw6lyaXF1ZXMsIHRyYWl0cyBkJ3VuaW9uIGV0ICIKKyLCq8KgZGV1eCBwb2ludHPCoMK7wqA7IGlscyBjb21tZW5jZW50IHBhciB1bmUgbGV0dHJlIG91IHVuIGNoaWZmcmUuIExhICIKKyJzdWJzdGl0dXRpb24gc2UgZmFpdCByw6lww6l0aXRpdmVtZW50IGp1c3F1J8OgIGNlIHF1J2lsIG4nZW4gcmVzdGUgYXVjdW5lIMOgICIKKyJmYWlyZcKgOyBsZSB0ZXh0ZSBlbnRpZXIgZHUgY2hhbXAgYXByw6hzIGxhIHN1YnN0aXR1dGlvbiBlc3QgcsOpZXhhbWluw6kgcG91ciAiCisiY2hlcmNoZXIgZCdhdXRyZXMgc3Vic3RpdHV0aW9ucy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNTozMworbXNnaWQgIiIKKyJBZnRlciBhbGwgdGhlIHN1YnN0aXR1dGlvbnMgaGF2ZSBiZWVuIGRvbmUgZWFjaCBvY2N1cnJlbmNlIG9mIHRoZSBzdHJpbmcgQjwiCisiJHt9PiAod2hpY2ggaXMgbm90IGEgbGVnYWwgc3Vic3RpdHV0aW9uKSBpcyByZXBsYWNlZCB3aXRoIGEgQjwkPiBzaWduLiIKK21zZ3N0ciAiIgorIlF1YW5kIHRvdXRlcyBsZXMgc3Vic3RpdHV0aW9ucyBvbnQgw6l0w6kgZmFpdGVzLCBjaGFxdWUgb2NjdXJyZW5jZSBkZSBsYSAiCisiY2hhw65uZSBCPCR7fT4gKGxhcXVlbGxlIG4nZXN0IHBhcyB1bmUgc3Vic3RpdHV0aW9uIGF1dG9yaXPDqWUpIGVzdCByZW1wbGFjw6llICIKKyJwYXIgdW4gc2lnbmUgQjwkPi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNTozOAorbXNnaWQgIiIKKyJXaGlsZSB2YXJpYWJsZSBzdWJzdGl0dXRpb24gaXMgZG9uZSBvbiBhbGwgY29udHJvbCBmaWVsZHMsIHNvbWUgb2YgdGhvc2UgIgorImZpZWxkcyBhcmUgdXNlZCBhbmQgbmVlZGVkIGR1cmluZyB0aGUgYnVpbGQgd2hlbiB0aGUgc3Vic3RpdHV0aW9uIGRpZCBub3QgIgorInlldCBvY2N1ci4gVGhhdCdzIHdoeSB5b3UgY2FuJ3QgdXNlIHZhcmlhYmxlcyBpbiB0aGUgQjxQYWNrYWdlPiwgQjxTb3VyY2U+ICIKKyJhbmQgQjxBcmNoaXRlY3R1cmU+IGZpZWxkcy4iCittc2dzdHIgIiIKKyJMb3JzcXVlIGxlIHJlbXBsYWNlbWVudCBkZSB2YXJpYWJsZXMgZXN0IGVmZmVjdHXDqSBzdXIgdG91cyBsZXMgY2hhbXBzIGRlICIKKyJjb250csO0bGUsIGNlcnRhaW5zIGRlIGNlcyBjaGFtcHMgc29udCB1dGlsaXPDqXMgZXQgbsOpY2Vzc2FpcmVzIHBlbmRhbnQgbGEgIgorImNvbnN0cnVjdGlvbnMgYWxvcnMgbcOqbWUgcXVlIGxhIHN1YnN0aXR1dGlvbiBuJ2EgcGFzIGVuY29yZSBwdSDDqnRyZSAiCisiZWZmZWN0dcOpZS4gQ2VsYSBleHBsaXF1ZSBwb3VycXVvaSBpbCBuJ2VzdCBwYXMgcG9zc2libGUgZCd1dGlsaXNlciBkZSAiCisidmFyaWFibGVzIGRhbnMgbGVzIGNoYW1wcyBCPFBhY2thZ2U+LCBCPFNvdXJjZT4gZXQgQjxBcmNoaXRlY3R1cmU+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjQ1Cittc2dpZCAiIgorIlZhcmlhYmxlIHN1YnN0aXR1dGlvbiBoYXBwZW5zIG9uIHRoZSBjb250ZW50IG9mIHRoZSBmaWVsZHMgYWZ0ZXIgdGhleSBoYXZlICIKKyJiZWVuIHBhcnNlZCwgdGh1cyBpZiB5b3Ugd2FudCBhIHZhcmlhYmxlIHRvIGV4cGFuZCBvdmVyIG11bHRpcGxlIGxpbmVzIHlvdSAiCisiZG8gbm90IGhhdmUgdG8gaW5jbHVkZSBhIHNwYWNlIGFmdGVyIHRoZSBuZXdsaW5lLiBUaGlzIGlzIGRvbmUgaW1wbGljaXRseSAiCisid2hlbiB0aGUgZmllbGQgaXMgb3V0cHV0LiBGb3IgZXhhbXBsZSwgaWYgdGhlIHZhcmlhYmxlIEI8JHtEZXNjcmlwdGlvbn0+IGlzICIKKyJzZXQgdG8gXCJmb28gaXMgYmFyLiR7TmV3bGluZX1mb28gaXMgZ3JlYXQuXCIgYW5kIGlmIHlvdSBoYXZlIHRoZSBmb2xsb3dpbmcgIgorImZpZWxkOiIKK21zZ3N0ciAiIgorIkxhIHN1YnN0aXR1dGlvbiBkZSB2YXJpYWJsZXMgc2UgZmFpdCBkYW5zIGxlIGNvbnRleHRlIGRlcyBjaGFtcHMgYXByw6hzIGxldXIgIgorImFuYWx5c2UuIEVuIGNvbnPDqXF1ZW5jZSwgc2kgdm91cyBzb3VoYWl0ZXogcXUndW5lIHZhcmlhYmxlIHNvaXQgcmVtcGxhY8OpZSAiCisic3VyIHBsdXNpZXVycyBsaWduZXMsIGlsIG4nZXN0IHBhcyBuw6ljZXNzYWlyZSBkZSBwbGFjZXIgdW4gZXNwYWNlIGFwcsOocyBsZSAiCisicmV0b3VyIMOgIGxhIGxpZ25lLiBDZWxhIHNlIGZhaXQgaW1wbGljaXRlbWVudCBxdWFuZCBsZSBjaGFtcCBlc3QgYWZmaWNow6kuICIKKyJQYXIgZXhlbXBsZSwgc2kgbGEgdmFyaWFibGUgQjwke0Rlc2NyaXB0aW9ufT4gZXN0IHBvc2l0aW9ubsOpZSBzdXIgwqvCoGZvbyBlc3QgIgorImJhci4ke05ld2xpbmV9Zm9vIGVzdCBzdXBlci7CoMK7IGV0IHNpIHZvdXMgYXZleiBsZSBjaGFtcCBzdWl2YW50wqA6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6NTAKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiIERlc2NyaXB0aW9uOiBmb28gYXBwbGljYXRpb25cbiIKKyIgICR7RGVzY3JpcHRpb259XG4iCisiICAuXG4iCisiICBNb3JlIHRleHQuXG4iCittc2dzdHIgIiIKKyIgRGVzY3JpcHRpb246IGFwcGxpY2F0aW9uIGZvb1xuIgorIiAgJHtEZXNjcmlwdGlvbn1cbiIKKyIgIC5cbiIKKyIgIEVuY29yZSBkdSB0ZXh0ZS5cbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjUyCittc2dpZCAiSXQgd2lsbCByZXN1bHQgaW46IgorbXNnc3RyICJMZSByw6lzdWx0YXQgZmluYWwgc2VyYcKgOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjU4CisjLCBuby13cmFwCittc2dpZCAiIgorIiBEZXNjcmlwdGlvbjogZm9vIGFwcGxpY2F0aW9uXG4iCisiICBmb28gaXMgYmFyLlxuIgorIiAgZm9vIGlzIGdyZWF0LlxuIgorIiAgLlxuIgorIiAgTW9yZSB0ZXh0LlxuIgorbXNnc3RyICIiCisiIERlc2NyaXB0aW9uOiBhcHBsaWNhdGlvbiBmb29cbiIKKyIgIGZvbyBlc3QgYmFyLlxuIgorIiAgZm9vIGVzdCBzdXBlci5cbiIKKyIgIC5cbiIKKyIgIE1vcmUgdGV4dC5cbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjcxCittc2dpZCAiIgorIlZhcmlhYmxlcyBjYW4gYmUgc2V0IHVzaW5nIHRoZSBCPC1WPiBjb21tb24gb3B0aW9uLiBUaGV5IGNhbiBiZSBhbHNvICIKKyJzcGVjaWZpZWQgaW4gdGhlIGZpbGUgQjxkZWJpYW4vc3Vic3R2YXJzPiAob3Igd2hhdGV2ZXIgb3RoZXIgZmlsZSBpcyAiCisic3BlY2lmaWVkIHVzaW5nIHRoZSBCPC1UPiBvcHRpb24pLiBUaGlzIGZpbGUgY29uc2lzdHMgb2YgbGluZXMgb2YgdGhlIGZvcm0gIgorIkk8bmFtZT5CPD0+STx2YWx1ZT4uICBUcmFpbGluZyB3aGl0ZXNwYWNlIG9uIGVhY2ggbGluZSwgYmxhbmsgbGluZXMsIGFuZCAiCisibGluZXMgc3RhcnRpbmcgd2l0aCBhIEI8Iz4gc3ltYm9sIChjb21tZW50cykgYXJlIGlnbm9yZWQuIgorbXNnc3RyICIiCisiT24gcGV1dCBkw6lmaW5pciBsZXMgdmFyaWFibGVzIGVuIHV0aWxpc2FudCBsJ29wdGlvbiBjb21tdW5lIEI8LVY+LiBPbiBwZXV0ICIKKyJhdXNzaSBzZSBzZXJ2aXIgZHUgZmljaGllciBCPGRlYmlhbi9zdWJzdHZhcnM+IChvdSB0b3V0IGF1dHJlIGZpY2hpZXIgYXZlYyAiCisibCdvcHRpb24gQjwtVD4pLiBDZSBmaWNoaWVyIGVzdCBjb21wb3PDqSBkZSBsaWduZXMgZGUgbGEgZm9ybWUgc3VpdmFudGXCoDogIgorIkk8bm9tPkI8PT5JPHZhbGV1cj4uIExlcyBlc3BhY2VzIHLDqXNpZHVlbHMgc3VyIGNoYXF1ZSBsaWduZSwgbGVzIGxpZ25lcyAiCisidmlkZXMgZXQgbGVzIGxpZ25lcyBxdWkgY29tbWVuY2VudCBwYXIgdW4gc3ltYm9sZSBCPCM+IHNvbnQgaWdub3LDqXMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6NzMKK21zZ2lkICJBZGRpdGlvbmFsbHksIHRoZSBmb2xsb3dpbmcgc3RhbmRhcmQgdmFyaWFibGVzIGFyZSBhdmFpbGFibGU6IgorbXNnc3RyICJFbiBvdXRyZSwgbGVzIHZhcmlhYmxlcyBzdGFuZGFyZCBzdWl2YW50ZXMgc29udCBkaXNwb25pYmxlc8KgOiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zdWJzdHZhcnMuNTo3MworIywgbm8td3JhcAorbXNnaWQgIkI8QXJjaD4iCittc2dzdHIgIkI8QXJjaD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNTo3NworbXNnaWQgIlRoZSBjdXJyZW50IGJ1aWxkIGFyY2hpdGVjdHVyZSAoZnJvbSBCPGRwa2cgLS1wcmludC1hcmNoaXRlY3R1cmU+KS4iCittc2dzdHIgIiIKKyJMJ2FyY2hpdGVjdHVyZSBwb3VyIGxhcXVlbGxlIG9uIGNvbnN0cnVpdCAodGlyw6llIGRlIEI8ZHBrZyAtLXByaW50LSIKKyJhcmNoaXRlY3R1cmU+KS4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3Vic3R2YXJzLjU6NzcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHNvdXJjZTpWZXJzaW9uPiIKK21zZ3N0ciAiQjxzb3VyY2U6VmVyc2lvbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNTo4MAorbXNnaWQgIlRoZSBzb3VyY2UgcGFja2FnZSB2ZXJzaW9uLiIKK21zZ3N0ciAiTGEgdmVyc2lvbiBkdSBwYXF1ZXQgc291cmNlLiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zdWJzdHZhcnMuNTo4MAorIywgbm8td3JhcAorbXNnaWQgIkI8c291cmNlOlVwc3RyZWFtLVZlcnNpb24+IgorbXNnc3RyICJCPHNvdXJjZTpVcHN0cmVhbS1WZXJzaW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41Ojg0Cittc2dpZCAiIgorIlRoZSB1cHN0cmVhbSBzb3VyY2UgcGFja2FnZSB2ZXJzaW9uLCBpbmNsdWRpbmcgdGhlIERlYmlhbiB2ZXJzaW9uIGVwb2NoIGlmICIKKyJhbnkuIgorbXNnc3RyICIiCisiTGEgdmVyc2lvbiBhbW9udCBkdSBwYXF1ZXQgc291cmNlLCBhdmVjIMOpdmVudHVlbGxlbWVudCBsJ8KrwqBlcG9jaMKgwrsgZGUgbGEgIgorInZlcnNpb24gZGViaWFuLiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zdWJzdHZhcnMuNTo4NAorIywgbm8td3JhcAorbXNnaWQgIkI8YmluYXJ5OlZlcnNpb24+IgorbXNnc3RyICJCPGJpbmFyeTpWZXJzaW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41Ojg4Cittc2dpZCAiIgorIlRoZSBiaW5hcnkgcGFja2FnZSB2ZXJzaW9uICh3aGljaCBtYXkgZGlmZmVyIGZyb20gc291cmNlOlZlcnNpb24gaW4gYSBiaW5OTVUgIgorImZvciBleGFtcGxlKS4iCittc2dzdHIgIiIKKyJMYSB2ZXJzaW9uIGR1IHBhcXVldCBiaW5haXJlIChxdWkgcGV1dCDDqnRyZSBkaWZmw6lyZW50ZSBkZSBzb3VyY2U6VmVyc2lvbiAiCisiZGFucyB1biBiaW5OTVUgcGFyIGV4ZW1wbGUpLiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zdWJzdHZhcnMuNTo4OAorIywgbm8td3JhcAorbXNnaWQgIkI8U291cmNlLVZlcnNpb24+IgorbXNnc3RyICJCPFNvdXJjZS1WZXJzaW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjkzCittc2dpZCAiIgorIlRoZSBzb3VyY2UgcGFja2FnZSB2ZXJzaW9uIChmcm9tIHRoZSBjaGFuZ2Vsb2cgZmlsZSkuIFRoaXMgdmFyaWFibGUgaXMgbm93ICIKKyJCPGRlcHJlY2F0ZWQ+IGFzIGl0cyBtZWFuaW5nIGlzIGRpZmZlcmVudCBmcm9tIGl0cyBmdW5jdGlvbiwgcGxlYXNlIHVzZSB0aGUgIgorIkI8c291cmNlOlZlcnNpb24+IG9yIEI8YmluYXJ5OlZlcnNpb24+IGFzIGFwcHJvcHJpYXRlLiIKK21zZ3N0ciAiIgorIkxhIHZlcnNpb24gZHUgcGFxdWV0IHNvdXJjZSwgc2Vsb24gbGUgZmljaGllciBjaGFuZ2Vsb2cuIENldHRlIHZhcmlhYmxlIGVzdCAiCisibWFpbnRlbmFudCBCPGTDqWNvbnNlaWxsw6llPiBjYXIgc2Egc2lnbmlmaWNhdGlvbiBlc3QgZGlzdGluY3RlIGRlIHNhICIKKyJmb25jdGlvbi4gVXRpbGlzZXogcGx1dMO0dCBCPHNvdXJjZTpWZXJzaW9uPiBvdSBCPGJpbmFyeTpWZXJzaW9uPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3Vic3R2YXJzLjU6OTMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPEluc3RhbGxlZC1TaXplPiIKK21zZ3N0ciAiQjxJbnN0YWxsZWQtU2l6ZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToxMDIKK21zZ2lkICIiCisiVGhlIHRvdGFsIHNpemUgb2YgdGhlIHBhY2thZ2UncyBpbnN0YWxsZWQgZmlsZXMuIFRoaXMgdmFsdWUgaXMgY29waWVkIGludG8gIgorInRoZSBjb3JyZXNwb25kaW5nIGNvbnRyb2wgZmlsZSBmaWVsZDsgc2V0dGluZyBpdCB3aWxsIG1vZGlmeSB0aGUgdmFsdWUgb2YgIgorInRoYXQgZmllbGQuIElmIHRoaXMgdmFyaWFibGUgaXNuJ3Qgc2V0IEI8ZHBrZy1nZW5jb250cm9sPiB3aWxsIHVzZSBCPGR1IC1rICIKKyJkZWJpYW4vdG1wPiB0byBmaW5kIHRoZSBkZWZhdWx0IHZhbHVlLiIKK21zZ3N0ciAiIgorIkxhIHRhaWxsZSBkZSB0b3VzIGxlcyBmaWNoaWVycyBpbnN0YWxsw6lzIGR1IHBhcXVldC4gQ2V0dGUgdmFsZXVyIGVzdCBjb3Bpw6llICIKKyJkYW5zIGxlIGNoYW1wIGFkw6lxdWF0IGR1IGZpY2hpZXIgwqvCoGNvbnRyb2zCoMK7wqA7IFF1YW5kIG9uIGZpeGUgY2V0dGUgdmFyaWFibGUsICIKKyJjZWxhIG1vZGlmaWUgbGEgdmFsZXVyIGRlIGNlIGNoYW1wLiBRdWFuZCBlbGxlIGVzdCBpbmTDqXRlcm1pbsOpZSwgQjxkcGtnLSIKKyJnZW5jb250cm9sPiB1c2UgZGUgbGEgY29tbWFuZGUgQjxkdSAtayBkZWJpYW4vdG1wPiBwb3VyIHRyb3V2ZXIgdW5lIHZhbGV1ciAiCisicGFyIGTDqWZhdXQuIgorCisjLiB0eXBlOiBUUAorIzogZGViLXN1YnN0dmFycy41OjEwMgorIywgbm8td3JhcAorbXNnaWQgIkI8RXh0cmEtU2l6ZT4iCittc2dzdHIgIkI8RXh0cmEtU2l6ZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToxMTEKK21zZ2lkICIiCisiQWRkaXRpb25hbCBkaXNrIHNwYWNlIHVzZWQgd2hlbiB0aGUgcGFja2FnZSBpcyBpbnN0YWxsZWQuIElmIHRoaXMgdmFyaWFibGUgIgorImlzIHNldCBpdHMgdmFsdWUgaXMgYWRkZWQgdG8gdGhhdCBvZiB0aGUgQjxJbnN0YWxsZWQtU2l6ZT4gdmFyaWFibGUgKHdoZXRoZXIgIgorInNldCBleHBsaWNpdGx5IG9yIHVzaW5nIHRoZSBkZWZhdWx0IHZhbHVlKSBiZWZvcmUgaXQgaXMgY29waWVkIGludG8gdGhlICIKKyJCPEluc3RhbGxlZC1TaXplPiBjb250cm9sIGZpbGUgZmllbGQuIgorbXNnc3RyICIiCisiTCdlc3BhY2UgZGlzcXVlIHN1cHBsw6ltZW50YWlyZSB1dGlsaXPDqSBwb3VyIGwnaW5zdGFsbGF0aW9uIGR1IHBhcXVldC4gUXVhbmQgIgorIm9uIGZpeGUgY2V0dGUgdmFyaWFibGUsIG9uIGFqb3V0ZSBzYSB2YWxldXIgw6AgbGEgdmFsZXVyIGRlIGxhIHZhcmlhYmxlICIKKyJCPEluc3RhbGxlZC1TaXplPiAocXUnZWxsZSBzb2l0IGTDqWZpbmllIGV4cGxpY2l0ZW1lbnQgb3UgY2FsY3Vsw6llIHBhciAiCisiZMOpZmF1dCkgYXZhbnQgcXVlIGxhIHZhcmlhYmxlIEI8SW5zdGFsbGVkLVNpemU+IG5lIHNvaXQgY29wacOpZSBkYW5zIGxlIGNoYW1wICIKKyJkdSBmaWNoaWVyIMKrwqBjb250cm9swqDCuy4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3Vic3R2YXJzLjU6MTExCisjLCBuby13cmFwCittc2dpZCAiQjxGOj5JPGZpZWxkbmFtZT4iCittc2dzdHIgIkI8Rjo+STxmaWVsZG5hbWU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MTE4Cittc2dpZCAiIgorIlRoZSB2YWx1ZSBvZiB0aGUgb3V0cHV0IGZpZWxkIEk8ZmllbGRuYW1lPiAod2hpY2ggbXVzdCBiZSBnaXZlbiBpbiB0aGUgIgorImNhbm9uaWNhbCBjYXBpdGFsaXNhdGlvbikuIFNldHRpbmcgdGhlc2UgdmFyaWFibGVzIGhhcyBubyBlZmZlY3Qgb3RoZXIgdGhhbiAiCisib24gcGxhY2VzIHdoZXJlIHRoZXkgYXJlIGV4cGFuZGVkIGV4cGxpY2l0bHkuIgorbXNnc3RyICIiCisiTGEgdmFsZXVyIGR1IGNoYW1wIEk8ZmllbGRuYW1lPiBhZmZpY2jDqSBlbiBzb3J0aWUgZXQgcXVpIGRvaXQgw6p0cmUgIgorImNsYXNzaXF1ZW1lbnQgZW4gbWFqdXNjdWxlcy4gUXVhbmQgb24gZml4ZSBjZXMgdmFyaWFibGVzLCBjZWxhIG5lIHByZW5kICIKKyJlZmZldCBxdWUgbMOgIG/DuSBlbGxlcyBzb250IGVmZmVjdGl2ZW1lbnQgZMOpdmVsb3Bww6llcy4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3Vic3R2YXJzLjU6MTE4CisjLCBuby13cmFwCittc2dpZCAiQjxGb3JtYXQ+IgorbXNnc3RyICJCPEZvcm1hdD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToxMjgKK21zZ2lkICIiCisiVGhlIEI8LmNoYW5nZXM+IGZpbGUgZm9ybWF0IHZlcnNpb24gZ2VuZXJhdGVkIGJ5IHRoaXMgdmVyc2lvbiBvZiB0aGUgc291cmNlICIKKyJwYWNrYWdpbmcgc2NyaXB0cy4gSWYgeW91IHNldCB0aGlzIHZhcmlhYmxlIHRoZSBjb250ZW50cyBvZiB0aGUgQjxGb3JtYXQ+ICIKKyJmaWVsZCBpbiB0aGUgQjwuY2hhbmdlcz4gZmlsZSB3aWxsIGNoYW5nZSB0b28uIgorbXNnc3RyICIiCisiTGEgdmVyc2lvbiBkdSBmb3JtYXQgZHUgZmljaGllciBCPC5jaGFuZ2VzPiBwcm9kdWl0ZSBwYXIgbGEgdmVyc2lvbiBkZXMgIgorInNjcmlwdHMgY29uc3RydWlzYW50IGxlIHNvdXJjZS4gUXVhbmQgb24gZMOpdGVybWluZSBjZXR0ZSB2YXJpYWJsZSwgbGUgIgorImNvbnRlbnUgZHUgY2hhbXAgQjxGb3JtYXQ+IGRhbnMgbGUgZmljaGllciBCPC5jaGFuZ2VzPiBlc3QgYXVzc2kgbW9kaWZpw6kuIgorCisjLiB0eXBlOiBUUAorIzogZGViLXN1YnN0dmFycy41OjEyOAorIywgbm8td3JhcAorbXNnaWQgIkI8TmV3bGluZT4sIEI8U3BhY2U+LCBCPFRhYj4iCittc2dzdHIgIkI8TmV3bGluZT4sIEI8U3BhY2U+LCBCPFRhYj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToxMzEKK21zZ2lkICJUaGVzZSB2YXJpYWJsZXMgZWFjaCBob2xkIHRoZSBjb3JyZXNwb25kaW5nIGNoYXJhY3Rlci4iCittc2dzdHIgIkNlcyB2YXJpYWJsZXMgY29udGllbm5lbnQgY2hhY3VuZSBsZSBjYXJhY3TDqHJlIGNvcnJlc3BvbmRhbnQuIgorCisjLiB0eXBlOiBUUAorIzogZGViLXN1YnN0dmFycy41OjEzMQorIywgbm8td3JhcAorbXNnaWQgIkI8c2hsaWJzOj5JPGRlcGVuZGVuY3lmaWVsZD4iCittc2dzdHIgIkI8c2hsaWJzOj5JPGRlcGVuZGVuY3lmaWVsZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToxMzUKK21zZ2lkICIiCisiVmFyaWFibGUgc2V0dGluZ3Mgd2l0aCBuYW1lcyBvZiB0aGlzIGZvcm0gYXJlIGdlbmVyYXRlZCBieSBCPGRwa2ctc2hsaWJkZXBzPi4iCittc2dzdHIgIiIKKyJMZXMgdmFyaWFibGVzIGTDqXRlcm1pbsOpZXMgZGUgY2V0dGUgZmHDp29uIHNvbnQgcHJvZHVpdGVzIHBhciBCPGRwa2ctIgorInNobGliZGVwcz4uIgorCisjLiB0eXBlOiBUUAorIzogZGViLXN1YnN0dmFycy41OjEzNQorIywgbm8td3JhcAorbXNnaWQgIkI8ZHBrZzpVcHN0cmVhbS1WZXJzaW9uPiIKK21zZ3N0ciAiQjxkcGtnOlVwc3RyZWFtLVZlcnNpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MTM4Cittc2dpZCAiVGhlIHVwc3RyZWFtIHZlcnNpb24gb2YgZHBrZy4iCittc2dzdHIgIkxhIHZlcnNpb24gYW1vbnQgZGUgZHBrZy4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3Vic3R2YXJzLjU6MTM4CisjLCBuby13cmFwCittc2dpZCAiQjxkcGtnOlZlcnNpb24+IgorbXNnc3RyICJCPGRwa2c6VmVyc2lvbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToxNDEKK21zZ2lkICJUaGUgZnVsbCB2ZXJzaW9uIG9mIGRwa2cuIgorbXNnc3RyICJMYSB2ZXJzaW9uIGNvbXBsw6h0ZSBkZSBkcGtnLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjE0NAorbXNnaWQgIiIKKyJJZiBhIHZhcmlhYmxlIGlzIHJlZmVycmVkIHRvIGJ1dCBub3QgZGVmaW5lZCBpdCBnZW5lcmF0ZXMgYSB3YXJuaW5nIGFuZCBhbiAiCisiZW1wdHkgdmFsdWUgaXMgYXNzdW1lZC4iCittc2dzdHIgIiIKKyJRdWFuZCB1bmUgdmFyaWFibGUgZXN0IHLDqWbDqXJlbmPDqWUgbWFpcyBuJ2VzdCBwYXMgZMOpZmluaWUsIGNlbGEgcHJvZHVpdCB1biAiCisiYXZlcnRpc3NlbWVudCBldCB1bmUgdmFsZXVyIG51bGxlIGVzdCBhc3N1bcOpZS4iCisKKyMuIHR5cGU6IFNICisjOiBkZWItc3Vic3R2YXJzLjU6MTQ1IGRwa2cuMTo2MjcgZHBrZy1hcmNoaXRlY3R1cmUuMToyODQgZHBrZy5jZmcuNToxMgorIzogZHBrZy1idWlsZGZsYWdzLjE6MTIxIGRwa2ctZGlzdGFkZGZpbGUuMTozOSBkcGtnLWRpdmVydC44OjEyMgorIzogZHBrZy1nZW5jaGFuZ2VzLjE6MTM4IGRwa2ctZ2VuY29udHJvbC4xOjEyOCBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTE1CisjOiBkcGtnLXNwbGl0LjE6MjA2IGRwa2ctc3RhdG92ZXJyaWRlLjg6NzQgZHNlbGVjdC5jZmcuNToxMgorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM2MAorIywgbm8td3JhcAorbXNnaWQgIkZJTEVTIgorbXNnc3RyICJGSUNISUVSUyIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zdWJzdHZhcnMuNToxNDYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGRlYmlhbi9zdWJzdHZhcnM+IgorbXNnc3RyICJCPGRlYmlhbi9zdWJzdHZhcnM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MTQ5Cittc2dpZCAiTGlzdCBvZiBzdWJzdGl0dXRpb24gdmFyaWFibGVzIGFuZCB2YWx1ZXMuIgorbXNnc3RyICJMYSBsaXN0ZSBkZXMgdmFyaWFibGVzIGRlIHN1YnN0aXR1dGlvbiBldCBsZXVycyB2YWxldXJzLiIKKworIy4gdHlwZTogU0gKKyM6IGRlYi1zdWJzdHZhcnMuNToxNTAgZHBrZy4xOjc4MCBkcGtnLWJ1aWxkcGFja2FnZS4xOjI0NCBkcGtnLWRlYi4xOjIzOAorIzogZHBrZy1uYW1lLjE6ODYgZHBrZy1zb3VyY2UuMTo3MjIgZHBrZy1zcGxpdC4xOjE5OSBkc2VsZWN0LjE6NDI5CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDg2CisjLCBuby13cmFwCittc2dpZCAiQlVHUyIKK21zZ3N0ciAiQk9HVUVTIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MTUzIGRwa2ctc291cmNlLjE6NzI1Cittc2dpZCAiIgorIlRoZSBwb2ludCBhdCB3aGljaCBmaWVsZCBvdmVycmlkaW5nIG9jY3VycyBjb21wYXJlZCB0byBjZXJ0YWluIHN0YW5kYXJkICIKKyJvdXRwdXQgZmllbGQgc2V0dGluZ3MgaXMgcmF0aGVyIGNvbmZ1c2VkLiIKK21zZ3N0ciAiIgorIkxlIG1vbWVudCBvw7kgYSBsaWV1IGxlIHJlbXBsYWNlbWVudCBkJ3VuIGNoYW1wIHBhciByYXBwb3J0IMOgIGNlcnRhaW5lcyAiCisiZMOpdGVybWluYXRpb25zIGRlIGNoYW1wIGFmZmljaMOpZXMgc3VyIGxhIHNvcnRpZSBzdGFuZGFyZCBlc3QgcGx1dMO0dCAiCisiZW1icm91aWxsw6kuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MTYwCittc2dpZCAiIgorIkI8ZHBrZz4oMSksIEI8ZHBrZy1nZW5jaGFuZ2VzPigxKSwgQjxkcGtnLWdlbmNvbnRyb2w+KDEpLCBCPGRwa2ctc2hsaWJkZXBzPiIKKyIoMSksIEI8ZHBrZy1zb3VyY2U+KDEpLiIKK21zZ3N0ciAiIgorIkI8ZHBrZz4oMSksIEI8ZHBrZy1nZW5jaGFuZ2VzPigxKSwgQjxkcGtnLWdlbmNvbnRyb2w+KDEpLCBCPGRwa2ctc2hsaWJkZXBzPiIKKyIoMSksIEI8ZHBrZy1zb3VyY2U+KDEpLiIKKworIy4gdHlwZTogU0gKKyM6IGRlYi1zdWJzdHZhcnMuNToxNjEgZHBrZy1hcmNoaXRlY3R1cmUuMTozMDMgZHBrZy5jZmcuNToxOQorIzogZHBrZy1idWlsZGZsYWdzLjE6MjY2IGRwa2ctY2hlY2tidWlsZGRlcHMuMTo0MCBkcGtnLWRlYi4xOjI2NQorIzogZHBrZy1kaXZlcnQuODoxMzUgZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTo2NiBkcGtnLW5hbWUuMToxMDQKKyM6IGRwa2ctcXVlcnkuMToyMTQgZHBrZy1zY2Fuc291cmNlcy4xOjc2IGRwa2ctc3BsaXQuMToyMjMKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6ODcgZHBrZy12ZW5kb3IuMTo0OCBkc2VsZWN0LmNmZy41OjE5CisjLCBuby13cmFwCittc2dpZCAiQVVUSE9SIgorbXNnc3RyICJBVVRFVVIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToxNjMgZHBrZy1idWlsZHBhY2thZ2UuMToyNTkgZHBrZy1kaXN0YWRkZmlsZS4xOjQ5CisjOiBkcGtnLWRlYi4xOjI2NyBkcGtnLWdlbmNoYW5nZXMuMToxNTAgZHBrZy1nZW5jb250cm9sLjE6MTQ0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTI1IGRwa2ctc2hsaWJkZXBzLjE6MzMxIGRwa2ctc291cmNlLjE6NzMyCisjOiBkcGtnLXNwbGl0LjE6MjI1Cittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDE5OTUtMTk5NiBJYW4gSmFja3NvbiIKK21zZ3N0ciAiQ29weXJpZ2h0IFxcKGNvIDE5OTUtMTk5NiBJYW4gSmFja3NvbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjE2NSBkcGtnLWJ1aWxkcGFja2FnZS4xOjI2MSBkcGtnLWRpc3RhZGRmaWxlLjE6NTEKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjE1MiBkcGtnLWdlbmNvbnRyb2wuMToxNDYgZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjEyNworIzogZHBrZy1zaGxpYmRlcHMuMTozMzMgZHBrZy1zb3VyY2UuMTo3MzQgZHBrZy1zdGF0b3ZlcnJpZGUuODo4OQorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDAwIFdpY2hlcnQgQWtrZXJtYW4iCittc2dzdHIgIkNvcHlyaWdodCBcXChjbyAyMDAwIFdpY2hlcnQgQWtrZXJtYW4iCisKKyMuIHR5cGU6IFRICisjOiBkZWItc3ltYm9scy41OjIKKyMsIG5vLXdyYXAKK21zZ2lkICJkZWItc3ltYm9scyIKK21zZ3N0ciAiZGViLXN5bWJvbHMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6NQorbXNnaWQgImRlYi1zeW1ib2xzIC0gRGViaWFuJ3MgZXh0ZW5kZWQgc2hhcmVkIGxpYnJhcnkgaW5mb3JtYXRpb24gZmlsZSIKK21zZ3N0ciAiIgorImRlYi1zeW1ib2xzIC0gRmljaGllciBkJ2luZm9ybWF0aW9uIHN1ciBsZXMgYmlibGlvdGjDqHF1ZXMgcGFydGFnw6llcyBEZWJpYW4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6OAorbXNnaWQgInN5bWJvbHMiCittc2dzdHIgInN5bWJvbGVzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3ltYm9scy41OjEyCittc2dpZCAiIgorIlRoZSBmb3JtYXQgZm9yIGFuIGV4dGVuZGVkIHNoYXJlZCBsaWJyYXJ5IGRlcGVuZGVuY3kgaW5mb3JtYXRpb24gZW50cnkgaW4gIgorInRoZXNlIGZpbGVzIGlzOiIKK21zZ3N0ciAiIgorIkxlIGZvcm1hdCBwb3VyIHVuZSBlbnRyw6llIGQnaW5mb3JtYXRpb24gc3VyIGxlcyBkw6lwZW5kYW5jZXMgw6l0ZW5kdWVzIGF2ZWMgIgorImJpYmxpb3Row6hxdWVzIHBhcnRhZ8OpZXMgZGFucyBjZXMgZmljaGllcnMgZXN0IGxlIHN1aXZhbnTCoDoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6MTQKKyMsIGZ1enp5CisjfCBtc2dpZCAiRTxsdD5saWJyYXJ5IHNvbmFtZUU8Z3Q+IEU8bHQ+bWFpbiBkZXBlbmRlbmN5IHRlbXBsYXRlRTxndD4iCittc2dpZCAiSTxsaWJyYXJ5LXNvbmFtZSBtYWluLWRlcGVuZGVuY3ktdGVtcGxhdGU+IgorbXNnc3RyICJFPGx0PmJpYmxpb3Row6hxdWUgc29uYW1lRTxndD4gRTxsdD5tb2TDqGxlIHByaW5jaXBhbCBkZSBkw6lwZW5kYW5jZUU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3ltYm9scy41OjE2CisjLCBmdXp6eQorI3wgbXNnaWQgIlsgfCBFPGx0PmFsdGVybmF0aXZlIGRlcGVuZGVuY3kgdGVtcGxhdGVFPGd0PiBdIgorbXNnaWQgIlsgfCBJPGFsdGVybmF0aXZlLWRlcGVuZGVuY3ktdGVtcGxhdGU+IF0iCittc2dzdHIgIlsgfCBFPGx0Pm1vZMOobGUgYWx0ZXJuYXRpZiBkZSBkw6lwZW5kYW5jZUU8Z3Q+IF0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6MTgKK21zZ2lkICJbIC4uLiBdIgorbXNnc3RyICJbIC4uLiBdIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3ltYm9scy41OjIwCisjLCBmdXp6eQorI3wgbXNnaWQgIlsgKiBFPGx0PmZpZWxkLW5hbWVFPGd0PjogRTxsdD5maWVsZCB2YWx1ZUU8Z3Q+IF0iCittc2dpZCAiWyAqIEk8ZmllbGQtbmFtZT46IEk8ZmllbGQtdmFsdWU+IF0iCittc2dzdHIgIlsgKiBFPGx0Pm5vbS1kdS1jaGFtcEU8Z3Q+OiBFPGx0PnZhbGV1ciBkdSBjaGFtcEU8Z3Q+IF0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6MjMKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiIgorI3wgIlsgLi4uIF1cbiIKKyN8ICIgRTxsdD5zeW1ib2xFPGd0PiBFPGx0Pm1pbmltYWwgdmVyc2lvbkU8Z3Q+WyBFPGx0PmlkIG9mIGRlcGVuZGVuY3kgdGVtcGxhdGVFPGd0PiBdXG4iCittc2dpZCAiIgorIlsgLi4uIF1cbiIKKyIgSTxzeW1ib2w+IEk8bWluaW1hbC12ZXJzaW9uPlsgSTxpZC1vZi1kZXBlbmRlbmN5LXRlbXBsYXRlPiBdXG4iCittc2dzdHIgIiIKKyJbIC4uLiBdXG4iCisiIEU8bHQ+c3ltYm9sZUU8Z3Q+IEU8bHQ+dmVyc2lvbiBtaW5pbXVtRTxndD5bIEU8bHQ+aWQgZHUgbW9kw6hsZSBkZSBkw6lwZW5kYW5jZUU8Z3Q+IF1cbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNToyOQorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiVGhlIEk8bGlicmFyeSBzb25hbWU+IGlzIGV4YWN0bHkgdGhlIHZhbHVlIG9mIHRoZSBTT05BTUUgZmllbGQgYXMgIgorI3wgImV4cG9ydGVkIGJ5IEI8b2JqZHVtcD4oMSkuIEEgSTxkZXBlbmRlbmN5IHRlbXBsYXRlPiBpcyBhIGRlcGVuZGVuY3kgd2hlcmUgIgorI3wgIkk8I01JTlZFUiM+IGlzIGR5bmFtaWNhbGx5IHJlcGxhY2VkIGVpdGhlciBieSBhIHZlcnNpb24gY2hlY2sgbGlrZSAiCisjfCAiXCIoRTxndD49IEk8bWluaW1hbCB2ZXJzaW9uPilcIiBvciBieSBub3RoaW5nIChpZiBhbiB1bnZlcnNpb25lZCAiCisjfCAiZGVwZW5kZW5jeSBpcyBkZWVtZWQgc3VmZmljaWVudCkuIgorbXNnaWQgIiIKKyJUaGUgSTxsaWJyYXJ5LXNvbmFtZT4gaXMgZXhhY3RseSB0aGUgdmFsdWUgb2YgdGhlIFNPTkFNRSBmaWVsZCBhcyBleHBvcnRlZCAiCisiYnkgQjxvYmpkdW1wPigxKS4gQSBJPGRlcGVuZGVuY3ktdGVtcGxhdGU+IGlzIGEgZGVwZW5kZW5jeSB3aGVyZSBJPCNNSU5WRVIjPiAiCisiaXMgZHluYW1pY2FsbHkgcmVwbGFjZWQgZWl0aGVyIGJ5IGEgdmVyc2lvbiBjaGVjayBsaWtlIFwiKEU8Z3Q+PSBJPG1pbmltYWwtIgorInZlcnNpb24+KVwiIG9yIGJ5IG5vdGhpbmcgKGlmIGFuIHVudmVyc2lvbmVkIGRlcGVuZGVuY3kgaXMgZGVlbWVkICIKKyJzdWZmaWNpZW50KS4iCittc2dzdHIgIiIKKyJMYSB2YXJpYWJsZSBJPHNvbmFtZSBkZSBsYSBiaWJsaW90aMOocXVlPiBlc3QgZXhhY3RlbWVudCBsYSB2YWxldXIgZHUgY2hhbXAgIgorIlNPTkFNRSB0ZWwgcXVlIGV4cG9ydMOpIHBhciBCPG9iamR1bXA+KDEpLiBMYSB2YXJpYmxlIEk8bW9kw6hsZSBkZSBkw6lwZW5kYW5jZT4gIgorImVzdCB1bmUgZMOpcGVuZGFuY2Ugb8O5IEk8I01JTlZFUiM+IGVzdCBkeW5hbWlxdWVtZW50IHJlbXBsYWPDqSBzb2l0IHBhciB1bmUgIgorInZlcnNpb24gY29tbWUgXCIoRTxndD49IEk8dmVyc2lvbiBtaW5pbXVtPilcIiBzb2l0IHBhciByaWVuIChzaSB1bmUgIgorImTDqXBlbmRhbmNlIHF1ZWxsZSBxdWUgc29pdCBzYSB2ZXJzaW9uIGVzdCByZWNvbm51ZSBzdWZmaXNhbnRlKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6MzYKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIkVhY2ggZXhwb3J0ZWQgSTxzeW1ib2w+IChsaXN0ZWQgYXMgSTxuYW1lPkBJPHZlcnNpb24+LCB3aXRoIEk8dmVyc2lvbj4gIgorI3wgImJlaW5nIFwiQmFzZVwiIGlmIHRoZSBsaWJyYXJ5IGlzIG5vdCB2ZXJzaW9uZWQpIGlzIGFzc29jaWF0ZWQgdG8gYSAiCisjfCAiSTxtaW5pbWFsIHZlcnNpb24+IG9mIGl0cyBkZXBlbmRlbmN5IHRlbXBsYXRlICh0aGUgbWFpbiBkZXBlbmRlbmN5ICIKKyN8ICJ0ZW1wbGF0ZSBpcyB1c2VkIGlmIEk8aWQgb2YgZGVwZW5kZW5jeSB0ZW1wbGF0ZT4gaXMgbm90IHByZXNlbnQpLiBUaGUgIgorI3wgImZpcnN0IGFsdGVybmF0aXZlIGRlcGVuZGVuY3kgdGVtcGxhdGUgaXMgbnVtYmVyZWQgMSwgdGhlIHNlY29uZCBvbmUgMiwgIgorI3wgImV0Yy4iCittc2dpZCAiIgorIkVhY2ggZXhwb3J0ZWQgSTxzeW1ib2w+IChsaXN0ZWQgYXMgSTxuYW1lPkBJPHZlcnNpb24+LCB3aXRoIEk8dmVyc2lvbj4gYmVpbmcgIgorIlwiQmFzZVwiIGlmIHRoZSBsaWJyYXJ5IGlzIG5vdCB2ZXJzaW9uZWQpIGlzIGFzc29jaWF0ZWQgdG8gYSBJPG1pbmltYWwtIgorInZlcnNpb24+IG9mIGl0cyBkZXBlbmRlbmN5IHRlbXBsYXRlICh0aGUgbWFpbiBkZXBlbmRlbmN5IHRlbXBsYXRlIGlzIHVzZWQgaWYgIgorIkk8aWQtb2YtZGVwZW5kZW5jeS10ZW1wbGF0ZT4gaXMgbm90IHByZXNlbnQpLiBUaGUgZmlyc3QgYWx0ZXJuYXRpdmUgIgorImRlcGVuZGVuY3kgdGVtcGxhdGUgaXMgbnVtYmVyZWQgMSwgdGhlIHNlY29uZCBvbmUgMiwgZXRjLiIKK21zZ3N0ciAiIgorIkNoYXF1ZSBJPHN5bWJvbGU+IGV4cG9ydMOpIChub3TDqSBJPG5vbT5ASTx2ZXJzaW9uPiwgYXZlYyBJPHZlcnNpb24+IHF1aSAiCisiY29tbWVuY2UgcGFyIFwiQmFzZVwiIHNpIGxhIGJpYmxpb3Row6hxdWUgbidhIHBhcyBkZSB2ZXJzaW9uKSBlc3QgYXNzb2Npw6kgw6AgIgorInVuZSBJPHZlcnNpb24gbWluaW1hbGU+IGRhbnMgc29uIG1vZMOobGUgZGUgZMOpcGVuZGFuY2UgKGxlIG1vZMOobGUgcHJpbmNpcGFsICIKKyJkZSBkw6lwZW5kYW5jZSBlc3QgdXRpbGlzw6kgc2kgbCdJPGlkIGR1IG1vZMOobGUgZGUgZMOpcGVuZGFuY2U+IG4nZXN0IHBhcyAiCisicHLDqXNlbnQpLiBMYSBwcmVtacOocmUgYWx0ZXJuYXRpdmUgYXUgbW9kw6lsZSBkZSBkw6lwZW5kYW5jZSBlc3QgbnVtw6lyb3TDqWUgMSwgIgorImxhIHNlY29uZGUgMiwgZXRjLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNTo0MworIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiRWFjaCBlbnRyeSBmb3IgYSBsaWJyYXJ5IGNhbiBhbHNvIGhhdmUgc29tZSBmaWVsZHMgb2YgbWV0YS1pbmZvcm1hdGlvbi4gICIKKyN8ICJUaG9zZSBmaWVsZHMgYXJlIHN0b3JlZCBvbiBsaW5lcyBzdGFydGluZyB3aXRoIGFuIGFzdGVyaXNrLiBDdXJyZW50bHksICIKKyN8ICJ0aGUgb25seSB2YWxpZCBmaWVsZCBpcyBJPEJ1aWxkLURlcGVuZHMtUGFja2FnZT4sIGl0IGluZGljYXRlcyB0aGUgbmFtZSAiCisjfCAib2YgdGhlIFwiLWRldlwiIHBhY2thZ2UgYXNzb2NpYXRlZCB0byB0aGUgbGlicmFyeSBhbmQgaXMgdXNlZCBieSBkcGtnLSIKKyN8ICJzaGxpYmRlcHMgdG8gbWFrZSBzdXJlIHRoYXQgdGhlIGRlcGVuZGVuY3kgZ2VuZXJhdGVkIGlzIGF0IGxlYXN0IGFzICIKKyN8ICJzdHJpY3QgYXMgdGhlIGNvcnJlc3BvbmRpbmcgYnVpbGQgZGVwZW5kZW5jeS4iCittc2dpZCAiIgorIkVhY2ggZW50cnkgZm9yIGEgbGlicmFyeSBjYW4gYWxzbyBoYXZlIHNvbWUgZmllbGRzIG9mIG1ldGEtaW5mb3JtYXRpb24uICAiCisiVGhvc2UgZmllbGRzIGFyZSBzdG9yZWQgb24gbGluZXMgc3RhcnRpbmcgd2l0aCBhbiBhc3Rlcmlzay4gQ3VycmVudGx5LCB0aGUgIgorIm9ubHkgdmFsaWQgZmllbGQgaXMgSTxCdWlsZC1EZXBlbmRzLVBhY2thZ2U+LCBpdCBpbmRpY2F0ZXMgdGhlIG5hbWUgb2YgdGhlICIKKyJcIi1kZXZcIiBwYWNrYWdlIGFzc29jaWF0ZWQgdG8gdGhlIGxpYnJhcnkgYW5kIGlzIHVzZWQgYnkgQjxkcGtnLXNobGliZGVwcz4gIgorInRvIG1ha2Ugc3VyZSB0aGF0IHRoZSBkZXBlbmRlbmN5IGdlbmVyYXRlZCBpcyBhdCBsZWFzdCBhcyBzdHJpY3QgYXMgdGhlICIKKyJjb3JyZXNwb25kaW5nIGJ1aWxkIGRlcGVuZGVuY3kuIgorbXNnc3RyICIiCisiQ2hhcXVlIGVudHLDqWUgcG91ciB1bmUgYmlibGlvdGjDqHF1ZSBwZXV0IGF1c3NpIGF2b2lyIGRlcyBjaGFtcHMgZGUgbcOpdGEtIgorImluZm9ybWF0aW9uLiBDZXMgY2hhbXBzIHNvbnQgZW5yZWdpc3Ryw6lzIHZpYSBkZXMgbGlnbmVzIHF1aSBkw6lidXRlbnQgcGFyIHVuZSAiCisiYXN0w6lyaXNxdWUgKMKrwqAqwqDCuykuIEFjdHVlbGxlbWVudCwgbGUgc2V1bCBjaGFtcCB2YWxpZGUgZXN0IEk8QnVpbGQtRGVwZW5kcy0iCisiUGFja2FnZT4sIGlsIGluZGlxdWUgbGUgbm9tIGR1IHBhcXVldCDCq8KgLWRldsKgwrsgYXNzb2Npw6kgw6AgbGEgYmlibGlvdGjDqHF1ZSBldCAiCisiZXN0IHV0aWxpc8OpIHBhciBkcGtnLXNobGliZGVwcyBwb3VyIHMnYXNzdXJlciBxdWUgbGEgZMOpcGVuZGFuY2UgcHJvZHVpdGUgZXN0ICIKKyJhdSBtb2lucyBhdXNzaSBzdHJpY3RlIHF1ZSBsYSBkw6lwZW5kYW5jZSBkZSBjb25zdHJ1Y3Rpb24gY29ycmVzcG9uZGFudGUuIgorCisjLiB0eXBlOiBTUworIzogZGViLXN5bWJvbHMuNTo0NAorIywgbm8td3JhcAorbXNnaWQgIlNpbXBsZSBzeW1ib2xzIGZpbGUiCittc2dzdHIgIlNpbXBsZSBmaWNoaWVyIGRlIHN5bWJvbGVzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3ltYm9scy41OjUwCisjLCBuby13cmFwCittc2dpZCAiIgorImxpYmZ0cC5zby4zIGxpYmZ0cDMgI01JTlZFUiNcbiIKKyIgRGVmYXVsdE5ldGJ1ZkBCYXNlIDMuMS0xLTZcbiIKKyIgRnRwQWNjZXNzQEJhc2UgMy4xLTEtNlxuIgorIiBbLi4uXVxuIgorbXNnc3RyICIiCisibGliZnRwLnNvLjMgbGliZnRwMyAjTUlOVkVSI1xuIgorIiBEZWZhdWx0TmV0YnVmQEJhc2UgMy4xLTEtNlxuIgorIiBGdHBBY2Nlc3NAQmFzZSAzLjEtMS02XG4iCisiIFsuLi5dXG4iCisKKyMuIHR5cGU6IFNTCisjOiBkZWItc3ltYm9scy41OjUwCisjLCBuby13cmFwCittc2dpZCAiQWR2YW5jZWQgc3ltYm9scyBmaWxlIgorbXNnc3RyICJGaWNoaWVyIGF2YW5jw6kgZGUgc3ltYm9sZXMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6NTMKK21zZ2lkICJsaWJHTC5zby4xIGxpYmdsMSIKK21zZ3N0ciAibGliR0wuc28uMSBsaWJnbDEiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6NTUKK21zZ2lkICJ8IGxpYmdsMS1tZXNhLWdseCAjTUlOVkVSIyIKK21zZ3N0ciAifCBsaWJnbDEtbWVzYS1nbHggI01JTlZFUiMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6NjEKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiKiBCdWlsZC1EZXBlbmRzLVBhY2thZ2U6IGxpYmdsMS1tZXNhLWRldlxuIgorIiBwdWJsaWNHbFN5bWJvbEBCYXNlIDYuMy0xXG4iCisiIFsuLi5dXG4iCisiIGltcGxlbWVudGF0aW9uU3BlY2lmaWNTeW1ib2xAQmFzZSA2LjUuMi03IDFcbiIKKyIgWy4uLl1cbiIKK21zZ3N0ciAiIgorIiogQnVpbGQtRGVwZW5kcy1QYWNrYWdlOiBsaWJnbDEtbWVzYS1kZXZcbiIKKyIgcHVibGljR2xTeW1ib2xAQmFzZSA2LjMtMVxuIgorIiBbLi4uXVxuIgorIiBpbXBsZW1lbnRhdGlvblNwZWNpZmljU3ltYm9sQEJhc2UgNi41LjItNyAxXG4iCisiIFsuLi5dXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6NjMKK21zZ2lkICJCPGh0dHA6Ly93aWtpLmRlYmlhbi5vcmcvUHJvamVjdHMvSW1wcm92ZWREcGtnU2hsaWJkZXBzPiIKK21zZ3N0ciAiQjxodHRwOi8vd2lraS5kZWJpYW4ub3JnL1Byb2plY3RzL0ltcHJvdmVkRHBrZ1NobGliZGVwcz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6NjUKK21zZ2lkICJCPGRwa2ctc2hsaWJkZXBzPigxKSwgQjxkcGtnLWdlbnN5bWJvbHM+KDEpLiIKK21zZ3N0ciAiQjxkcGtnLXNobGliZGVwcz4oMSksIEI8ZHBrZy1nZW5zeW1ib2xzPigxKS4iCisKKyMuIHR5cGU6IFRICisjOiBkZWItdHJpZ2dlcnMuNToxCisjLCBuby13cmFwCittc2dpZCAiZGViLXRyaWdnZXJzIgorbXNnc3RyICJkZWItdHJpZ2dlcnMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi10cmlnZ2Vycy41OjQKK21zZ2lkICJkZWItdHJpZ2dlcnMgLSBwYWNrYWdlIHRyaWdnZXJzIgorbXNnc3RyICJkZWItdHJpZ2dlcnMgLSBhY3Rpb25zIGRpZmbDqXLDqWVzIGR1IHBhcXVldCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXRyaWdnZXJzLjU6NworbXNnaWQgInRyaWdnZXJzIgorbXNnc3RyICJhY3Rpb25zIGRpZmbDqXLDqWVzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdHJpZ2dlcnMuNToxMgorbXNnaWQgIiIKKyJBIHBhY2thZ2UgZGVjbGFyZXMgaXRzIHJlbGF0aW9uc2hpcCB0byBzb21lIHRyaWdnZXIocykgYnkgaW5jbHVkaW5nIGEgIgorIkk8dHJpZ2dlcnM+IGZpbGUgaW4gaXRzIGNvbnRyb2wgYXJjaGl2ZSAoaS5lLiBJPERFQklBTi90cmlnZ2Vycz4gZHVyaW5nICIKKyJwYWNrYWdlIGNyZWF0aW9uKS4iCittc2dzdHIgIiIKKyJVbiBwYXF1ZXQgZMOpY2xhcmUgc2VzIHJlbGF0aW9ucyBhdmVjIGRlcyBhY3Rpb25zIGRpZmbDqXLDqWVzIGVuIGluY2x1YW50IHVuICIKKyJmaWNoaWVyIEk8dHJpZ2dlcnM+IGRhbnMgc29uIGFyY2hpdmUgZGUgY29udHLDtGxlIChjLi3DoC1kLiBJPERFQklBTi90cmlnZ2Vycz4gIgorImF1IG1vbWVudCBkZSBsYSBjcsOpYXRpb24gZHUgcGFxdWV0KS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi10cmlnZ2Vycy41OjE2Cittc2dpZCAiIgorIlRoaXMgZmlsZSBjb250YWlucyBkaXJlY3RpdmVzLCBvbmUgcGVyIGxpbmUuIExlYWRpbmcgYW5kIHRyYWlsaW5nIHdoaXRlc3BhY2UgIgorImFuZCBldmVyeXRoaW5nIGFmdGVyIHRoZSBmaXJzdCBCPCM+IG9uIGFueSBsaW5lIHdpbGwgYmUgdHJpbW1lZCwgYW5kIGVtcHR5ICIKKyJsaW5lcyB3aWxsIGJlIGlnbm9yZWQuIgorbXNnc3RyICIiCisiQ2UgZmljaGllciBjb250aWVudCBkZXMgZGlyZWN0aXZlcywgdW5lIHBhciBsaWduZS4gTGVzIG1pc2VzIGVuIHBhZ2UgZXQgIgorImF1dHJlcyBlc3BhY2VzIGFpbnNpIHF1ZSBjZSBxdWkgc3VpdCBsZSBjYXJhY3TDqHJlIEI8XCIjXCI+IHNvbnQgc2F1dMOpcywgZXQgIgorImxlcyBsaWduZXMgdmlkZXMgc2Vyb250IGlnbm9yw6llcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi10cmlnZ2Vycy41OjE4Cittc2dpZCAiVGhlIHRyaWdnZXIgY29udHJvbCBkaXJlY3RpdmVzIGN1cnJlbnRseSBzdXBwb3J0ZWQgYXJlOiIKK21zZ3N0ciAiTGVzIGRpcmVjdGl2ZXMgYWN0dWVsbGVtZW50IGfDqXLDqWVzIHNvbnTCoDoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi10cmlnZ2Vycy41OjIyCittc2dpZCAiQjxpbnRlcmVzdD4gSTx0cmlnZ2VyLW5hbWU+IgorbXNnc3RyICJCPGludGVyZXN0PiBJPG5vbS1hY3Rpb24tZGlmZsOpcsOpZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi10cmlnZ2Vycy41OjI2CisjLCBmdXp6eQorI3wgbXNnaWQgIkI8aW50ZXJlc3Q+IEk8dHJpZ2dlci1uYW1lPiIKK21zZ2lkICJCPGludGVyZXN0LW5vYXdhaXQ+IEk8dHJpZ2dlci1uYW1lPiIKK21zZ3N0ciAiQjxpbnRlcmVzdD4gSTxub20tYWN0aW9uLWRpZmbDqXLDqWU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdHJpZ2dlcnMuNTozMworIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiU3BlY2lmaWVzIHRoYXQgdGhlIHBhY2thZ2UgaXMgaW50ZXJlc3RlZCBpbiB0aGUgbmFtZWQgdHJpZ2dlci4gQWxsICIKKyN8ICJ0cmlnZ2VycyBpbiB3aGljaCBhIHBhY2thZ2UgaXMgaW50ZXJlc3RlZCBtdXN0IGJlIGxpc3RlZCB1c2luZyB0aGlzICIKKyN8ICJkaXJlY3RpdmUgaW4gdGhlIHRyaWdnZXJzIGNvbnRyb2wgZmlsZS4iCittc2dpZCAiIgorIlNwZWNpZmllcyB0aGF0IHRoZSBwYWNrYWdlIGlzIGludGVyZXN0ZWQgaW4gdGhlIG5hbWVkIHRyaWdnZXIuIEFsbCB0cmlnZ2VycyAiCisiaW4gd2hpY2ggYSBwYWNrYWdlIGlzIGludGVyZXN0ZWQgbXVzdCBiZSBsaXN0ZWQgdXNpbmcgdGhpcyBkaXJlY3RpdmUgaW4gdGhlICIKKyJ0cmlnZ2VycyBjb250cm9sIGZpbGUuIFRoZSBcIm5vYXdhaXRcIiB2YXJpYW50IGRvZXMgbm90IHB1dCB0aGUgdHJpZ2dlcmluZyAiCisicGFja2FnZXMgaW4gdHJpZ2dlcnMtYXdhaXRlZCBzdGF0ZS4gVGhpcyBzaG91bGQgYmUgdXNlZCB3aGVuIHRoZSAiCisiZnVuY3Rpb25hbGl0eSBwcm92aWRlZCBieSB0aGUgdHJpZ2dlciBpcyBub3QgY3J1Y2lhbC4iCittc2dzdHIgIiIKKyJJbmRpcXVlIHF1ZSBsZSBwYXF1ZXQgZXN0IGFzc29jacOpIMOgIHVuZSBhY3Rpb24gZGlmZsOpcsOpZS4gVG91dGVzIGxlcyBhY3Rpb25zICIKKyJkaWZmw6lyw6llcyBhc3NvY2nDqWVzIGF1IHBhcXVldCBkb2l2ZW50IMOqdHJlIGxpc3TDqWVzIGVuIHV0aWxpc2FudCBjZXR0ZSAiCisiZGlyZWN0aXZlIGRlcHVpcyBsZSBmaWNoaWVyIGRlIGNvbnRyw7RsZSBkZXMgYWN0aW9ucyBkaWZmw6lyw6llcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi10cmlnZ2Vycy41OjM3Cittc2dpZCAiQjxhY3RpdmF0ZT4gSTx0cmlnZ2VyLW5hbWU+IgorbXNnc3RyICJCPGFjdGl2YXRlPiBJPG5vbS1hY3Rpb24tZGlmZsOpcsOpZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi10cmlnZ2Vycy41OjQxCisjLCBmdXp6eQorI3wgbXNnaWQgIkI8YWN0aXZhdGU+IEk8dHJpZ2dlci1uYW1lPiIKK21zZ2lkICJCPGFjdGl2YXRlLW5vYXdhaXQ+IEk8dHJpZ2dlci1uYW1lPiIKK21zZ3N0ciAiQjxhY3RpdmF0ZT4gSTxub20tYWN0aW9uLWRpZmbDqXLDqWU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdHJpZ2dlcnMuNTo1MAorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiQXJyYW5nZXMgdGhhdCBjaGFuZ2VzIHRvIHRoaXMgcGFja2FnZSdzIHN0YXRlIHdpbGwgYWN0aXZhdGUgdGhlIHNwZWNpZmllZCAiCisjfCAidHJpZ2dlci4gVGhlIHRyaWdnZXIgd2lsbCBiZSBhY3RpdmF0ZWQgYXQgdGhlIHN0YXJ0IG9mIHRoZSBmb2xsb3dpbmcgIgorI3wgIm9wZXJhdGlvbnM6IHVucGFjaywgY29uZmlndXJlLCByZW1vdmUgKGluY2x1ZGluZyBmb3IgdGhlIGJlbmVmaXQgb2YgYSAiCisjfCAiY29uZmxpY3RpbmcgcGFja2FnZSksIHB1cmdlIGFuZCBkZWNvbmZpZ3VyZS4iCittc2dpZCAiIgorIkFycmFuZ2VzIHRoYXQgY2hhbmdlcyB0byB0aGlzIHBhY2thZ2UncyBzdGF0ZSB3aWxsIGFjdGl2YXRlIHRoZSBzcGVjaWZpZWQgIgorInRyaWdnZXIuIFRoZSB0cmlnZ2VyIHdpbGwgYmUgYWN0aXZhdGVkIGF0IHRoZSBzdGFydCBvZiB0aGUgZm9sbG93aW5nICIKKyJvcGVyYXRpb25zOiB1bnBhY2ssIGNvbmZpZ3VyZSwgcmVtb3ZlIChpbmNsdWRpbmcgZm9yIHRoZSBiZW5lZml0IG9mIGEgIgorImNvbmZsaWN0aW5nIHBhY2thZ2UpLCBwdXJnZSBhbmQgZGVjb25maWd1cmUuICBUaGUgXCJub2F3YWl0XCIgdmFyaWFudCBkb2VzICIKKyJub3QgcHV0IHRoZSB0cmlnZ2VyaW5nIHBhY2thZ2VzIGluIHRyaWdnZXJzLWF3YWl0ZWQgc3RhdGUuIFRoaXMgc2hvdWxkIGJlICIKKyJ1c2VkIHdoZW4gdGhlIGZ1bmN0aW9uYWxpdHkgcHJvdmlkZWQgYnkgdGhlIHRyaWdnZXIgaXMgbm90IGNydWNpYWwuIgorbXNnc3RyICIiCisiQ2V0dGUgZGlyZWN0aXZlIHBlcm1ldCBxdWUgdG91dCBjaGFuZ2VtZW50IGRhbnMgbCfDqXRhdCBkZSBjZSBwYXF1ZXQgYWN0aXZlICIKKyJsJ2FjdGlvbiBkaWZmw6lyw6llIHNww6ljaWZpw6llLiBMJ2FjdGlvbiBkaWZmw6lyw6llIHNlcmEgYWN0aXbDqWUgYXUgZMOpYnV0IGRlcyAiCisib3DDqXJhdGlvbnMgc3VpdmFudGVzwqA6IGTDqXBhcXVldGFnZSwgY29uZmlndXJhdGlvbiwgc3VwcHJlc3Npb24gKHkgY29tcHJpcyBlbiAiCisiY2FzIGRlIHJlbXBsYWNlbWVudCBwYXIgdW4gcGFxdWV0IGNvbmZsaWN0dWVsKSwgcHVyZ2UgZXQgZMOpY29uZmlndXJhdGlvbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi10cmlnZ2Vycy41OjU4Cittc2dpZCAiIgorIklmIHRoaXMgcGFja2FnZSBkaXNhcHBlYXJzIGR1cmluZyB0aGUgdW5wYWNraW5nIG9mIGFub3RoZXIgcGFja2FnZSB0aGUgIgorInRyaWdnZXIgd2lsbCBiZSBhY3RpdmF0ZWQgd2hlbiB0aGUgZGlzYXBwZWFyYW5jZSBpcyBub3RlZCB0b3dhcmRzIHRoZSBlbmQgb2YgIgorInRoZSB1bnBhY2suIFRyaWdnZXIgcHJvY2Vzc2luZywgYW5kIHRyYW5zaXRpb24gZnJvbSB0cmlnZ2Vycy1hd2FpdGVkIHRvICIKKyJpbnN0YWxsZWQsIGRvZXMgbm90IGNhdXNlIGFjdGl2YXRpb25zLiAgSW4gdGhlIGNhc2Ugb2YgdW5wYWNrLCB0cmlnZ2VycyAiCisibWVudGlvbmVkIGluIGJvdGggdGhlIG9sZCBhbmQgbmV3IHZlcnNpb25zIG9mIHRoZSBwYWNrYWdlIHdpbGwgYmUgYWN0aXZhdGVkLiIKK21zZ3N0ciAiIgorIlNpIGNlIHBhcXVldCBkaXNwYXJhw650IGR1cmFudCBsZSBkw6lwYXF1ZXRhZ2UgZCd1biBhdXRyZSBwYXF1ZXQsIGwnYWN0aW9uICIKKyJkaWZmw6lyw6llIHNlcmEgYWN0aXbDqWUgbG9yc3F1ZSBsYSBkaXNwYXJpdGlvbiBlc3QgY29uc3RhdMOpZSB2ZXJzIGxhIGZpbiBkdSAiCisiZMOpcGFxdWV0YWdlLiBMJ2V4w6ljdXRpb24gZCd1bmUgYWN0aW9uIGRpZmbDqXLDqWUsIGV0IGRvbmMgbGUgcGFzc2FnZSBkdSBzdGF0dXQgIgorInRyaWdnZXJzLWF3YWl0ZWQgKGFjdGlvbi1kaWZmw6lyw6llLWF0dGVuZHVlKSDDoCBpbnN0YWxsZWQgKGluc3RhbGzDqSksIG5lICIKKyJwcm92b3F1ZXJhIHBhcyBsJ2FjdGl2YXRpb24uIERhbnMgbGUgY2FzIGQndW4gZMOpcGFxdWV0YWdlLCBsZXMgYWN0aW9ucyAiCisiZGlmZsOpcsOpZXMgbGlzdMOpZXMgZGFucyBsJ2FuY2llbm5lIGV0IGxhIG5vdXZlbGxlIHZlcnNpb24gZHUgcGFxdWV0IHNlcm9udCAiCisiYWN0aXbDqWVzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXRyaWdnZXJzLjU6NjEKK21zZ2lkICIiCisiVW5rbm93biBkaXJlY3RpdmVzIGFyZSBhbiBlcnJvciB3aGljaCB3aWxsIHByZXZlbnQgaW5zdGFsbGF0aW9uIG9mIHRoZSAiCisicGFja2FnZS4iCittc2dzdHIgIiIKKyJMZXMgZGlyZWN0aXZlcyBpbmNvbm51ZXMgc29udCBkZXMgZXJyZXVycyBxdWkgZW1ww6pjaGVyb250IGwnaW5zdGFsbGF0aW9uIGR1ICIKKyJwYXF1ZXQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdHJpZ2dlcnMuNTo2NgorbXNnaWQgIiIKKyJUaGUgXCItbm9hd2FpdFwiIHZhcmlhbnRzIGFyZSBvbmx5IHN1cHBvcnRlZCBieSBkcGtnIDEuMTYuMSBvciBuZXdlciwgYW5kICIKKyJ3aWxsIGxlYWQgdG8gZXJyb3JzIGlmIHVzZWQgd2l0aCBhbiBvbGRlciBkcGtnLiBJdCBpcyB0aHVzIHJlY29tbWVuZGVkIHRvICIKKyJhZGQgYSBcIlByZS1EZXBlbmRzOiBkcGtnIChFPGd0Pj0gMS4xNi4xKVwiIHRvIGFueSBwYWNrYWdlIHRoYXQgd2lzaCB0byB1c2UgIgorInRob3NlIGRpcmVjdGl2ZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi10cmlnZ2Vycy41OjcwCittc2dpZCAiIgorIkI8ZHBrZy10cmlnZ2VyPigxKSwgQjxkcGtnPigxKSwgQjwvdXNyL3NoYXJlL2RvYy9kcGtnLWRldi90cmlnZ2Vycy50eHQuZ3o+LiIKK21zZ3N0ciAiIgorIkI8ZHBrZy10cmlnZ2VyPigxKSwgQjxkcGtnPigxKSwgQjwvdXNyL3NoYXJlL2RvYy9kcGtnLWRldi90cmlnZ2Vycy50eHQuZ3o+LiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2cuMToxCisjLCBuby13cmFwCittc2dpZCAiZHBrZyIKK21zZ3N0ciAiZHBrZyIKKworIy4gdHlwZTogVEgKKyM6IGRwa2cuMToxIGRwa2cuY2ZnLjU6MSBkcGtnLWJ1aWxkZmxhZ3MuMToxIGRwa2ctZGViLjE6MQorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxIGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6MSBkcGtnLXF1ZXJ5LjE6MQorIzogZHBrZy10cmlnZ2VyLjE6MSBkcGtnLXZlbmRvci4xOjEgZHNlbGVjdC5jZmcuNToxCisjLCBuby13cmFwCittc2dpZCAiZHBrZyBzdWl0ZSIKK21zZ3N0ciAic3VpdGUgZHBrZyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQKK21zZ2lkICJkcGtnIC0gcGFja2FnZSBtYW5hZ2VyIGZvciBEZWJpYW4iCittc2dzdHIgImRwa2cgLSB1biBnZXN0aW9ubmFpcmUgZGUgcGFxdWV0IHBvdXIgRGViaWFuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6OAorIywgZnV6enkKKyN8IG1zZ2lkICJCPGRwa2c+IFtJPG9wdGlvbnM+XSBJPGFjdGlvbj4iCittc2dpZCAiQjxkcGtnPiBbSTxvcHRpb24+Li4uXSBJPGFjdGlvbj4iCittc2dzdHIgIkI8ZHBrZz4gW0k8b3B0aW9ucz5dIEk8YWN0aW9uPiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2cuMTo5CisjLCBuby13cmFwCittc2dpZCAiV0FSTklORyIKK21zZ3N0ciAiQVZFUlRJU1NFTUVOVCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjEzCittc2dpZCAiIgorIlRoaXMgbWFudWFsIGlzIGludGVuZGVkIGZvciB1c2VycyB3aXNoaW5nIHRvIHVuZGVyc3RhbmQgQjxkcGtnPidzIGNvbW1hbmQgIgorImxpbmUgb3B0aW9ucyBhbmQgcGFja2FnZSBzdGF0ZXMgaW4gbW9yZSBkZXRhaWwgdGhhbiB0aGF0IHByb3ZpZGVkIGJ5IEI8ZHBrZyAiCisiLS1oZWxwPi4iCittc2dzdHIgIiIKKyJDZSBtYW51ZWwgZXN0IGRlc3RpbsOpIGF1eCB1dGlsaXNhdGV1cnMgcXVpIHNvdWhhaXRlbnQgYWxsZXIgYXUtZGVsw6AgZGUgbGEgIgorImNvbW1hbmRlIEI8ZHBrZyAtLWhlbHA+IHBvdXIgbGEgY29tcHLDqWhlbnNpb24gZGVzIG9wdGlvbnMgZGUgbGEgbGlnbmUgZGUgIgorImNvbW1hbmRlIGV0IGRlcyDDqXRhdHMgZGVzIHBhcXVldHMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTgKK21zZ2lkICIiCisiSXQgc2hvdWxkIEk8bm90PiBiZSB1c2VkIGJ5IHBhY2thZ2UgbWFpbnRhaW5lcnMgd2lzaGluZyB0byB1bmRlcnN0YW5kIGhvdyAiCisiQjxkcGtnPiB3aWxsIGluc3RhbGwgdGhlaXIgcGFja2FnZXMuIFRoZSBkZXNjcmlwdGlvbnMgb2Ygd2hhdCBCPGRwa2c+IGRvZXMgIgorIndoZW4gaW5zdGFsbGluZyBhbmQgcmVtb3ZpbmcgcGFja2FnZXMgYXJlIHBhcnRpY3VsYXJseSBpbmFkZXF1YXRlLiIKK21zZ3N0ciAiIgorIkxlcyByZXNwb25zYWJsZXMgZGUgcGFxdWV0IHF1aSB2ZXVsZW50IGNvbXByZW5kcmUgY29tbWVudCBCPGRwa2c+IGluc3RhbGxlICIKKyJsZXVyIHBhcXVldCBJPG5lIGRvaXZlbnQgcGFzPiBsJ3V0aWxpc2VyLiBMZXMgZGVzY3JpcHRpb25zIGNvbmNlcm5hbnQgIgorImwnaW5zdGFsbGF0aW9uIG91IGxhIGTDqXNpbnN0YWxsYXRpb24gZGVzIHBhcXVldHMgc29udCB0csOocyBpbnN1ZmZpc2FudGVzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjI2Cittc2dpZCAiIgorIkI8ZHBrZz4gaXMgYSB0b29sIHRvIGluc3RhbGwsIGJ1aWxkLCByZW1vdmUgYW5kIG1hbmFnZSBEZWJpYW4gcGFja2FnZXMuIFRoZSAiCisicHJpbWFyeSBhbmQgbW9yZSB1c2VyLWZyaWVuZGx5IGZyb250LWVuZCBmb3IgQjxkcGtnPiBpcyBCPGFwdGl0dWRlPigxKS4gIgorIkI8ZHBrZz4gaXRzZWxmIGlzIGNvbnRyb2xsZWQgZW50aXJlbHkgdmlhIGNvbW1hbmQgbGluZSBwYXJhbWV0ZXJzLCB3aGljaCAiCisiY29uc2lzdCBvZiBleGFjdGx5IG9uZSBhY3Rpb24gYW5kIHplcm8gb3IgbW9yZSBvcHRpb25zLiBUaGUgYWN0aW9uLXBhcmFtZXRlciAiCisidGVsbHMgQjxkcGtnPiB3aGF0IHRvIGRvIGFuZCBvcHRpb25zIGNvbnRyb2wgdGhlIGJlaGF2aW9yIG9mIHRoZSBhY3Rpb24gaW4gIgorInNvbWUgd2F5LiIKK21zZ3N0ciAiIgorIkI8ZHBrZz4gZXN0IHVuIG91dGlsIHBvdXIgbCdpbnN0YWxsYXRpb24sIGxhIGNyw6lhdGlvbiwgbGEgc3VwcHJlc3Npb24gZXQgbGEgIgorImdlc3Rpb24gZGVzIHBhcXVldHMgRGViaWFuLiBCPGFwdGl0dWRlPigxKSBlc3QgbGEgcHJpbmNpcGFsZSBpbnRlcmZhY2Ugw6AgIgorIkI8ZHBrZz4gZXQgbGEgcGx1cyBhZ3LDqWFibGUgcG91ciBsJ3V0aWxpc2F0ZXVyLiAgQjxkcGtnPiBsdWktbcOqbWUgZXN0ICIKKyJlbnRpw6hyZW1lbnQgY29udHLDtGzDqSBwYXIgZGVzIHBhcmFtw6h0cmVzIHN1ciBsYSBsaWduZSBkZSBjb21tYW5kZS4gVW5lICIKKyJjb21tYW5kZSBjb21wb3J0ZSBleGFjdGVtZW50IHVuZSBhY3Rpb24gZXQgesOpcm8gb3UgcGx1c2lldXJzIG9wdGlvbnMuIExlICIKKyJwYXJhbcOodHJlIMKrwqBhY3Rpb27CoMK7IGRpdCBjZSBxdWUgQjxkcGtnPiBkb2l0IGZhaXJlIGV0IGxlcyBvcHRpb25zIG1vZGlmaWVudCAiCisibCdhY3Rpb24gZCd1bmUgbWFuacOocmUgb3UgZCd1bmUgYXV0cmUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzMKK21zZ2lkICIiCisiQjxkcGtnPiBjYW4gYWxzbyBiZSB1c2VkIGFzIGEgZnJvbnQtZW5kIHRvIEI8ZHBrZy1kZWI+KDEpIGFuZCBCPGRwa2ctcXVlcnk+IgorIigxKS4gVGhlIGxpc3Qgb2Ygc3VwcG9ydGVkIGFjdGlvbnMgY2FuIGJlIGZvdW5kIGxhdGVyIG9uIGluIHRoZSBCPEFDVElPTlM+ICIKKyJzZWN0aW9uLiBJZiBhbnkgc3VjaCBhY3Rpb24gaXMgZW5jb3VudGVyZWQgQjxkcGtnPiBqdXN0IHJ1bnMgQjxkcGtnLWRlYj4gb3IgIgorIkI8ZHBrZy1xdWVyeT4gd2l0aCB0aGUgcGFyYW1ldGVycyBnaXZlbiB0byBpdCwgYnV0IG5vIHNwZWNpZmljIG9wdGlvbnMgYXJlICIKKyJjdXJyZW50bHkgcGFzc2VkIHRvIHRoZW0sIHRvIHVzZSBhbnkgc3VjaCBvcHRpb24gdGhlIGJhY2stZW5kcyBuZWVkIHRvIGJlICIKKyJjYWxsZWQgZGlyZWN0bHkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLjE6MzQKKyMsIG5vLXdyYXAKK21zZ2lkICJJTkZPUk1BVElPTiBBQk9VVCBQQUNLQUdFUyIKK21zZ3N0ciAiUkVOU0VJR05FTUVOVFMgU1VSIExFUyBQQVFVRVRTIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzkKK21zZ2lkICIiCisiQjxkcGtnPiBtYWludGFpbnMgc29tZSB1c2FibGUgaW5mb3JtYXRpb24gYWJvdXQgYXZhaWxhYmxlIHBhY2thZ2VzLiBUaGUgIgorImluZm9ybWF0aW9uIGlzIGRpdmlkZWQgaW4gdGhyZWUgY2xhc3NlczogQjxzdGF0ZXM+LCBCPHNlbGVjdGlvbiBzdGF0ZXM+IGFuZCAiCisiQjxmbGFncz4uIFRoZXNlIHZhbHVlcyBhcmUgaW50ZW5kZWQgdG8gYmUgY2hhbmdlZCBtYWlubHkgd2l0aCBCPGRzZWxlY3Q+LiIKK21zZ3N0ciAiIgorIkI8ZHBrZz4gY29uc2VydmUgZGVzIHJlbnNlaWduZW1lbnRzIHV0aWxlcyBzdXIgbGVzIHBhcXVldHMgZGlzcG9uaWJsZXMuICAiCisiQ2V0dGUgaW5mb3JtYXRpb24gZXN0IGRpdmlzw6llIGVuIHRyb2lzIGNsYXNzZXPCoDogbGVzIMOpdGF0cywgbGVzIMOpdGF0cyBkZSBsYSAiCisic8OpbGVjdGlvbiBldCBsZXMgZHJhcGVhdXguIExhIG1vZGlmaWNhdGlvbiBkZSBjZXMgdmFsZXVycyBlc3QgcHJpbmNpcGFsZW1lbnQgIgorImTDqXZvbHVlIMOgIEI8ZHNlbGVjdD4uIgorCisjLiB0eXBlOiBTUworIzogZHBrZy4xOjM5CisjLCBuby13cmFwCittc2dpZCAiUEFDS0FHRSBTVEFURVMiCittc2dzdHIgIsOJVEFUUyBERVMgUEFRVUVUUyIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo0MAorIywgbm8td3JhcAorbXNnaWQgIkI8bm90LWluc3RhbGxlZD4iCittc2dzdHIgIkI8bm90LWluc3RhbGxlZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0MworbXNnaWQgIlRoZSBwYWNrYWdlIGlzIG5vdCBpbnN0YWxsZWQgb24geW91ciBzeXN0ZW0uIgorbXNnc3RyICJMZSBwYXF1ZXQgbidlc3QgcGFzIGluc3RhbGzDqSBzdXIgbGUgc3lzdMOobWUuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjQzCisjLCBuby13cmFwCittc2dpZCAiQjxjb25maWctZmlsZXM+IgorbXNnc3RyICJCPGNvbmZpZy1maWxlcz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0NgorbXNnaWQgIk9ubHkgdGhlIGNvbmZpZ3VyYXRpb24gZmlsZXMgb2YgdGhlIHBhY2thZ2UgZXhpc3Qgb24gdGhlIHN5c3RlbS4iCittc2dzdHIgIlNldWxzIGxlcyBmaWNoaWVycyBkZSBjb25maWd1cmF0aW9uIGR1IHBhcXVldCBleGlzdGVudCBzdXIgbGUgc3lzdMOobWUuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjQ2CisjLCBuby13cmFwCittc2dpZCAiQjxoYWxmLWluc3RhbGxlZD4iCittc2dzdHIgIkI8aGFsZi1pbnN0YWxsZWQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTAKK21zZ2lkICIiCisiVGhlIGluc3RhbGxhdGlvbiBvZiB0aGUgcGFja2FnZSBoYXMgYmVlbiBzdGFydGVkLCBidXQgbm90IGNvbXBsZXRlZCBmb3Igc29tZSAiCisicmVhc29uLiIKK21zZ3N0ciAiIgorIkwnaW5zdGFsbGF0aW9uIGR1IHBhcXVldCBhIGNvbW1lbmPDqSBtYWlzLCBwb3VyIHVuZSByYWlzb24gcXVlbGNvbnF1ZSwgbmUgIgorInMnZXN0IHBhcyB0ZXJtaW7DqWUuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjUwCisjLCBuby13cmFwCittc2dpZCAiQjx1bnBhY2tlZD4iCittc2dzdHIgIkI8dW5wYWNrZWQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTMKK21zZ2lkICJUaGUgcGFja2FnZSBpcyB1bnBhY2tlZCwgYnV0IG5vdCBjb25maWd1cmVkLiIKK21zZ3N0ciAiTGUgcGFxdWV0IGVzdCBkw6lwYXF1ZXTDqSBtYWlzIG4nZXN0IHBhcyBjb25maWd1csOpLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo1MworIywgbm8td3JhcAorbXNnaWQgIkI8aGFsZi1jb25maWd1cmVkPiIKK21zZ3N0ciAiQjxoYWxmLWNvbmZpZ3VyZWQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTcKK21zZ2lkICIiCisiVGhlIHBhY2thZ2UgaXMgdW5wYWNrZWQgYW5kIGNvbmZpZ3VyYXRpb24gaGFzIGJlZW4gc3RhcnRlZCwgYnV0IG5vdCB5ZXQgIgorImNvbXBsZXRlZCBmb3Igc29tZSByZWFzb24uIgorbXNnc3RyICIiCisiTGUgcGFxdWV0IGVzdCBkw6lwYXF1ZXTDqSBldCBsYSBjb25maWd1cmF0aW9uIGEgY29tbWVuY8OpIG1haXMsIHBvdXIgdW5lICIKKyJxdWVsY29ucXVlIHJhaXNvbiwgbmUgcydlc3QgcGFzIHRlcm1pbsOpZS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHRyaWdnZXJzLWF3YWl0ZWQ+IgorbXNnc3RyICJCPHRyaWdnZXJzLWF3YWl0ZWQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NjAKK21zZ2lkICJUaGUgcGFja2FnZSBhd2FpdHMgdHJpZ2dlciBwcm9jZXNzaW5nIGJ5IGFub3RoZXIgcGFja2FnZS4iCittc2dzdHIgIiIKKyJMZSBwYXF1ZXQgYXR0ZW5kIGwnZXjDqWN1dGlvbiBkJ3VuZSBhY3Rpb24gZGlmZsOpcsOpZSBxdWkgZXN0IMOgIGxhIGNoYXJnZSBkJ3VuICIKKyJhdXRyZSBwYXF1ZXQuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjYwCisjLCBuby13cmFwCittc2dpZCAiQjx0cmlnZ2Vycy1wZW5kaW5nPiIKK21zZ3N0ciAiQjx0cmlnZ2Vycy1wZW5kaW5nPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjYzCittc2dpZCAiVGhlIHBhY2thZ2UgaGFzIGJlZW4gdHJpZ2dlcmVkLiIKK21zZ3N0ciAiVW5lIGFjdGlvbiBkaWZmw6lyw6llIGRlIGNlIHBhcXVldCBhIMOpdMOpIGFjdGl2w6llLCBpbCByZXN0ZSDDoCBsJ2V4w6ljdXRlci4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NjMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGluc3RhbGxlZD4iCittc2dzdHIgIkI8aW5zdGFsbGVkPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjY2Cittc2dpZCAiVGhlIHBhY2thZ2UgaXMgdW5wYWNrZWQgYW5kIGNvbmZpZ3VyZWQgT0suIgorbXNnc3RyICJMZSBwYXF1ZXQgZXN0IGTDqXBhcXVldMOpIGV0IGNvcnJlY3RlbWVudCBjb25maWd1csOpLiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2cuMTo2NgorIywgbm8td3JhcAorbXNnaWQgIlBBQ0tBR0UgU0VMRUNUSU9OIFNUQVRFUyIKK21zZ3N0ciAiw4lUQVRTIERFIExBIFPDiUxFQ1RJT04gREVTIFBBUVVFVFMiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NjcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGluc3RhbGw+IgorbXNnc3RyICJCPGluc3RhbGw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzAKK21zZ2lkICJUaGUgcGFja2FnZSBpcyBzZWxlY3RlZCBmb3IgaW5zdGFsbGF0aW9uLiIKK21zZ3N0ciAiTGUgcGFxdWV0IGVzdCBzw6lsZWN0aW9ubsOpIHBvdXIgw6p0cmUgaW5zdGFsbMOpLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo3MAorIywgbm8td3JhcAorbXNnaWQgIkI8aG9sZD4iCittc2dzdHIgIkI8aG9sZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3NAorbXNnaWQgIiIKKyJBIHBhY2thZ2UgbWFya2VkIHRvIGJlIG9uIEI8aG9sZD4gaXMgbm90IGhhbmRsZWQgYnkgQjxkcGtnPiwgdW5sZXNzIGZvcmNlZCAiCisidG8gZG8gdGhhdCB3aXRoIG9wdGlvbiBCPC0tZm9yY2UtaG9sZD4uIgorbXNnc3RyICIiCisiQjxkcGtnPiBsYWlzc2UgZGUgY8O0dMOpIHVuIHBhcXVldCBtYXJxdcOpIEI8aG9sZD4sIMOgIG1vaW5zIHF1J2lsIG5lIHNvaXQgbGFuY8OpICIKKyJhdmVjIGwnb3B0aW9uIGRlIGZvcsOnYWdlIEI8LS1mb3JjZS1ob2xkPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NzQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGRlaW5zdGFsbD4iCittc2dzdHIgIkI8ZGVpbnN0YWxsPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjc4Cittc2dpZCAiIgorIlRoZSBwYWNrYWdlIGlzIHNlbGVjdGVkIGZvciBkZWluc3RhbGxhdGlvbiAoaS5lLiB3ZSB3YW50IHRvIHJlbW92ZSBhbGwgIgorImZpbGVzLCBleGNlcHQgY29uZmlndXJhdGlvbiBmaWxlcykuIgorbXNnc3RyICIiCisiTGUgcGFxdWV0IGVzdCBzw6lsZWN0aW9ubsOpIHBvdXIgw6p0cmUgZMOpc2luc3RhbGzDqSAoYy4tw6AtZC4gcXUnb24gdmV1dCAiCisic3VwcHJpbWVyIHRvdXMgbGVzIGZpY2hpZXJzIMOgIGwnZXhjZXB0aW9uIGRlcyBmaWNoaWVycyBkZSBjb25maWd1cmF0aW9uKS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NzgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHB1cmdlPiIKK21zZ3N0ciAiQjxwdXJnZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo4MgorbXNnaWQgIiIKKyJUaGUgcGFja2FnZSBpcyBzZWxlY3RlZCB0byBiZSBwdXJnZWQgKGkuZS4gd2Ugd2FudCB0byByZW1vdmUgZXZlcnl0aGluZyBmcm9tICIKKyJzeXN0ZW0gZGlyZWN0b3JpZXMsIGV2ZW4gY29uZmlndXJhdGlvbiBmaWxlcykuIgorbXNnc3RyICIiCisiTGUgcGFxdWV0IGVzdCBzw6lsZWN0aW9ubsOpIHBvdXIgw6p0cmUgcHVyZ8OpIChjLi3DoC1kLiBxdSdvbiB2ZXV0IHRvdXQgc3VwcHJpbWVyICIKKyJkYW5zIGxlcyByw6lwZXJ0b2lyZSBkdSBzeXN0w6htZSBtw6ptZSBsZXMgZmljaGllcnMgZGUgY29uZmlndXJhdGlvbikuIgorCisjLiB0eXBlOiBTUworIzogZHBrZy4xOjgyCisjLCBuby13cmFwCittc2dpZCAiUEFDS0FHRSBGTEFHUyIKK21zZ3N0ciAiRFJBUEVBVVggREVTIFBBUVVFVFMiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6ODMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHJlaW5zdC1yZXF1aXJlZD4iCittc2dzdHIgIkI8cmVpbnN0LXJlcXVpcmVkPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjg4Cittc2dpZCAiIgorIkEgcGFja2FnZSBtYXJrZWQgQjxyZWluc3QtcmVxdWlyZWQ+IGlzIGJyb2tlbiBhbmQgcmVxdWlyZXMgcmVpbnN0YWxsYXRpb24uICIKKyJUaGVzZSBwYWNrYWdlcyBjYW5ub3QgYmUgcmVtb3ZlZCwgdW5sZXNzIGZvcmNlZCB3aXRoIG9wdGlvbiBCPC0tZm9yY2UtcmVtb3ZlLSIKKyJyZWluc3RyZXE+LiIKK21zZ3N0ciAiIgorIlVuIHBhcXVldCBtYXJxdcOpIEI8cmVpbnN0LXJlcXVpcmVkPiBlc3QgZMOpZmVjdHVldXggZXQgZGVtYW5kZSB1bmUgIgorInLDqWluc3RhbGxhdGlvbi4gQjxkcGtnPiBuZSBwZXV0IHN1cHByaW1lciBkZSB0ZWxzIHBhcXVldHMsIMOgIG1vaW5zIHF1J2lsIG5lICIKKyJzb2l0IGxhbmPDqSBhdmVjIGwnb3B0aW9uIGRlIGZvcsOnYWdlIEI8LS1mb3JjZS1yZW1vdmUtcmVpbnN0cmVxPi4iCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLjE6ODkgZHNlbGVjdC4xOjEyMAorIywgbm8td3JhcAorbXNnaWQgIkFDVElPTlMiCittc2dzdHIgIkFDVElPTlMiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6OTAKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjwtaT4sIEI8LS1pbnN0YWxsPiBJPHBhY2thZ2VfZmlsZT4uLi4iCittc2dpZCAiQjwtaT4sIEI8LS1pbnN0YWxsPiBJPHBhY2thZ2UtZmlsZT4uLi4iCittc2dzdHIgIkI8LWk+LCBCPC0taW5zdGFsbD4gSTxmaWNoaWVyLXBhcXVldD4uLi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo5NAorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiSW5zdGFsbCB0aGUgcGFja2FnZS4gSWYgQjwtLXJlY3Vyc2l2ZT4gb3IgQjwtUj4gb3B0aW9uIGlzIHNwZWNpZmllZCwgIgorI3wgIkk8cGFja2FnZV9maWxlPiBtdXN0IHJlZmVyIHRvIGEgZGlyZWN0b3J5IGluc3RlYWQuIgorbXNnaWQgIiIKKyJJbnN0YWxsIHRoZSBwYWNrYWdlLiBJZiBCPC0tcmVjdXJzaXZlPiBvciBCPC1SPiBvcHRpb24gaXMgc3BlY2lmaWVkLCAiCisiSTxwYWNrYWdlLWZpbGU+IG11c3QgcmVmZXIgdG8gYSBkaXJlY3RvcnkgaW5zdGVhZC4iCittc2dzdHIgIiIKKyJJbnN0YWxsZSBsZSBwYXF1ZXQuIFNpIGwnb24gZG9ubmUgbCdvcHRpb24gQjwtLXJlY3Vyc2l2ZT4gb3UgQjwtUj4sICIKKyJJPGZpY2hpZXItcGFxdWV0PiBkb2l0IGFsb3JzIGluZGlxdWVyIHVuIHLDqXBlcnRvaXJlLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjk2Cittc2dpZCAiSW5zdGFsbGF0aW9uIGNvbnNpc3RzIG9mIHRoZSBmb2xsb3dpbmcgc3RlcHM6IgorbXNnc3RyICJMJ2luc3RhbGxhdGlvbiBjb21wb3J0ZSBsZXMgw6l0YXBlcyBzdWl2YW50ZXPCoDoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo5OQorbXNnaWQgIkI8MS4+IEV4dHJhY3QgdGhlIGNvbnRyb2wgZmlsZXMgb2YgdGhlIG5ldyBwYWNrYWdlLiIKK21zZ3N0ciAiQjwxLj4gRXh0cmFjdGlvbiBkZXMgZmljaGllcnMgZGUgY29udHLDtGxlIGR1IG5vdXZlYXUgcGFxdWV0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjEwMworbXNnaWQgIiIKKyJCPDIuPiBJZiBhbm90aGVyIHZlcnNpb24gb2YgdGhlIHNhbWUgcGFja2FnZSB3YXMgaW5zdGFsbGVkIGJlZm9yZSB0aGUgbmV3ICIKKyJpbnN0YWxsYXRpb24sIGV4ZWN1dGUgSTxwcmVybT4gc2NyaXB0IG9mIHRoZSBvbGQgcGFja2FnZS4iCittc2dzdHIgIiIKKyJCPDIuPiBRdWFuZCB1bmUgYW5jaWVubmUgdmVyc2lvbiBkdSBtw6ptZSBwYXF1ZXQgZXN0IGTDqWrDoCBpbnN0YWxsw6llLCAiCisiZXjDqWN1dGlvbiBkdSBzY3JpcHQgSTxwcmVybT4gZGUgbCdhbmNpZW4gcGFxdWV0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjEwNgorbXNnaWQgIkI8My4+IFJ1biBJPHByZWluc3Q+IHNjcmlwdCwgaWYgcHJvdmlkZWQgYnkgdGhlIHBhY2thZ2UuIgorbXNnc3RyICJCPDMuPiBMYW5jZW1lbnQgZHUgc2NyaXB0IEk8cHJlaW5zdD4sIHMnaWwgZXN0IGZvdXJuaSBwYXIgbGUgcGFxdWV0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjExMAorbXNnaWQgIiIKKyJCPDQuPiBVbnBhY2sgdGhlIG5ldyBmaWxlcywgYW5kIGF0IHRoZSBzYW1lIHRpbWUgYmFjayB1cCB0aGUgb2xkIGZpbGVzLCBzbyAiCisidGhhdCBpZiBzb21ldGhpbmcgZ29lcyB3cm9uZywgdGhleSBjYW4gYmUgcmVzdG9yZWQuIgorbXNnc3RyICIiCisiQjw0Lj4gRMOpcGFxdWV0YWdlIGRlcyBub3V2ZWF1eCBmaWNoaWVycyBldCwgZW4gbcOqbWUgdGVtcHMsIHNhdXZlZ2FyZGUgZGVzICIKKyJhbmNpZW5zIGRlIG1hbmnDqHJlIMOgIHBvdXZvaXIgbGVzIHJlc3RhdXJlciBzaSBxdWVscXVlIGNob3NlIHRvdXJuZSBtYWwuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTE3Cittc2dpZCAiIgorIkI8NS4+IElmIGFub3RoZXIgdmVyc2lvbiBvZiB0aGUgc2FtZSBwYWNrYWdlIHdhcyBpbnN0YWxsZWQgYmVmb3JlIHRoZSBuZXcgIgorImluc3RhbGxhdGlvbiwgZXhlY3V0ZSB0aGUgSTxwb3N0cm0+IHNjcmlwdCBvZiB0aGUgb2xkIHBhY2thZ2UuIE5vdGUgdGhhdCAiCisidGhpcyBzY3JpcHQgaXMgZXhlY3V0ZWQgYWZ0ZXIgdGhlIEk8cHJlaW5zdD4gc2NyaXB0IG9mIHRoZSBuZXcgcGFja2FnZSwgIgorImJlY2F1c2UgbmV3IGZpbGVzIGFyZSB3cml0dGVuIGF0IHRoZSBzYW1lIHRpbWUgb2xkIGZpbGVzIGFyZSByZW1vdmVkLiIKK21zZ3N0ciAiIgorIkI8NS4+IFF1YW5kIHVuZSBhbmNpZW5uZSB2ZXJzaW9uIGR1IG3Dqm1lIHBhcXVldCBlc3QgZMOpasOgIGluc3RhbGzDqWUsICIKKyJleMOpY3V0aW9uIGR1IHNjcmlwdCBJPHBvc3RybT4gZGUgbCdhbmNpZW4gcGFxdWV0LiBJbCBmYXV0IHJlbWFycXVlciBxdWUgY2UgIgorInNjcmlwdCBlc3QgZXjDqWN1dMOpIGFwcsOocyBsZSBzY3JpcHQgSTxwcmVpbnN0PiBkdSBub3V2ZWF1IHBhcXVldCwgcGFyY2UgcXVlICIKKyJsZXMgbm91dmVhdXggZmljaGllcnMgc29udCDDqWNyaXRzIGRhbnMgbGUgbcOqbWUgdGVtcHMgcXVlIGxlcyBhbmNpZW5zIHNvbnQgIgorInN1cHByaW3DqXMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTIxCittc2dpZCAiIgorIkI8Ni4+IENvbmZpZ3VyZSB0aGUgcGFja2FnZS4gU2VlIEI8LS1jb25maWd1cmU+IGZvciBkZXRhaWxlZCBpbmZvcm1hdGlvbiAiCisiYWJvdXQgaG93IHRoaXMgaXMgZG9uZS4iCittc2dzdHIgIiIKKyJCPDYuPiBDb25maWd1cmF0aW9uIGR1IHBhcXVldC4gVm95ZXogbCdhY3Rpb24gQjwtLWNvbmZpZ3VyZT4gcG91ciBzYXZvaXIgIgorImNvbW1lbnQgY2VsYSBzZSBwYXNzZS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MTIxCisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8LS11bnBhY2sgPkk8cGFja2FnZV9maWxlPi4uLiIKK21zZ2lkICJCPC0tdW5wYWNrID5JPHBhY2thZ2UtZmlsZT4uLi4iCittc2dzdHIgIkI8LS11bnBhY2sgPkk8ZmljaGllci1wYXF1ZXQ+Li4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTI2CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJVbnBhY2sgdGhlIHBhY2thZ2UsIGJ1dCBkb24ndCBjb25maWd1cmUgaXQuIElmIEI8LS1yZWN1cnNpdmU+IG9yIEI8LVI+ICIKKyN8ICJvcHRpb24gaXMgc3BlY2lmaWVkLCBJPHBhY2thZ2VfZmlsZT4gbXVzdCByZWZlciB0byBhIGRpcmVjdG9yeSBpbnN0ZWFkLiIKK21zZ2lkICIiCisiVW5wYWNrIHRoZSBwYWNrYWdlLCBidXQgZG9uJ3QgY29uZmlndXJlIGl0LiBJZiBCPC0tcmVjdXJzaXZlPiBvciBCPC1SPiAiCisib3B0aW9uIGlzIHNwZWNpZmllZCwgSTxwYWNrYWdlLWZpbGU+IG11c3QgcmVmZXIgdG8gYSBkaXJlY3RvcnkgaW5zdGVhZC4iCittc2dzdHIgIiIKKyJEw6lwYXF1w6h0ZSBsZSBwYXF1ZXQsIG1haXMgbmUgY29uZmlndXJlIHJpZW4uIFNpIGwnb24gZG9ubmUgbCdvcHRpb24gQjwtLSIKKyJyZWN1cnNpdmU+IG91IEI8LVI+LCBJPGZpY2hpZXItcGFxdWV0PiBkb2l0IGFsb3JzIGluZGlxdWVyIHVuIHLDqXBlcnRvaXJlLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToxMjYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tY29uZmlndXJlID5JPHBhY2thZ2U+Li4ufEI8LWE+fEI8LS1wZW5kaW5nPiIKK21zZ3N0ciAiQjwtLWNvbmZpZ3VyZSA+STxwYXF1ZXQ+Li4ufEI8LWE+fEI8LS1wZW5kaW5nPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjEzMQorbXNnaWQgIiIKKyJDb25maWd1cmUgYSBwYWNrYWdlIHdoaWNoIGhhcyBiZWVuIHVucGFja2VkIGJ1dCBub3QgeWV0IGNvbmZpZ3VyZWQuICBJZiBCPC0iCisiYT4gb3IgQjwtLXBlbmRpbmc+IGlzIGdpdmVuIGluc3RlYWQgb2YgSTxwYWNrYWdlPiwgYWxsIHVucGFja2VkIGJ1dCAiCisidW5jb25maWd1cmVkIHBhY2thZ2VzIGFyZSBjb25maWd1cmVkLiIKK21zZ3N0ciAiIgorIlJlY29uZmlndXJhdGlvbiBkJ3VuIHBhcXVldCBkw6lwYXF1ZXTDqSBtYWlzIG5vbiBlbmNvcmUgY29uZmlndXLDqS4gU2kgbCdvcHRpb24gIgorIkI8LWE+IG91IEI8LS1wZW5kaW5nPiBlc3QgdXRpbGlzw6llIGF1IGxpZXUgZGUgSTxwYXF1ZXQ+LCB0b3VzIGxlcyBwYXF1ZXRzICIKKyJkw6lwYXF1ZXTDqXMgbWFpcyBub24gY29uZmlndXLDqXMgc29udCBjb25maWd1csOpcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxMzUKK21zZ2lkICIiCisiVG8gcmVjb25maWd1cmUgYSBwYWNrYWdlIHdoaWNoIGhhcyBhbHJlYWR5IGJlZW4gY29uZmlndXJlZCwgdHJ5IHRoZSBCPGRwa2ctIgorInJlY29uZmlndXJlPig4KSAgY29tbWFuZCBpbnN0ZWFkLiIKK21zZ3N0ciAiIgorIlBvdXIgcmVjb25maWd1cmVyIHVuIHBhcXVldCBxdWkgbCdhIGTDqWrDoCDDqXTDqSwgdm91cyBkZXZyaWV6IHBsdXTDtHQgdXRpbGlzZXIgIgorImxhIGNvbW1hbmRlIEI8ZHBrZy1yZWNvbmZpZ3VyZT4oOCkuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTM3Cittc2dpZCAiQ29uZmlndXJpbmcgY29uc2lzdHMgb2YgdGhlIGZvbGxvd2luZyBzdGVwczoiCittc2dzdHIgIkxhIGNvbmZpZ3VyYXRpb24gY29tcG9ydGUgbGVzIMOpdGFwZXMgc3VpdmFudGVzwqA6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTQyCittc2dpZCAiIgorIkI8MS4+IFVucGFjayB0aGUgY29uZmZpbGVzLCBhbmQgYXQgdGhlIHNhbWUgdGltZSBiYWNrIHVwIHRoZSBvbGQgY29uZmZpbGVzLCAiCisic28gdGhhdCB0aGV5IGNhbiBiZSByZXN0b3JlZCBpZiBzb21ldGhpbmcgZ29lcyB3cm9uZy4iCittc2dzdHIgIiIKKyJCPDEuPiBEw6lwYXF1ZXRhZ2UgZGVzIGZpY2hpZXJzIGRlIGNvbmZpZ3VyYXRpb24sIGV0IGRhbnMgbGUgbcOqbWUgdGVtcHMgIgorInNhdXZlZ2FyZGUgZGVzIGFuY2llbnMgZmljaGllcnMgZGUgY29uZmlndXJhdGlvbiwgZGUgbWFuacOocmUgw6AgcG91dm9pciBsZXMgIgorInJlc3RhdXJlciBzaSBxdWVscXVlIGNob3NlIHNlIHBhc3NlIG1hbC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxNDUKK21zZ2lkICJCPDIuPiBSdW4gSTxwb3N0aW5zdD4gc2NyaXB0LCBpZiBwcm92aWRlZCBieSB0aGUgcGFja2FnZS4iCittc2dzdHIgIkI8Mi4+IEV4w6ljdXRpb24gZHUgc2NyaXB0IEI8cG9zdGluc3Q+LCBzJ2lsIGVzdCBmb3VybmkgcGFyIGxlIHBhcXVldC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MTQ1CisjLCBuby13cmFwCittc2dpZCAiQjwtLXRyaWdnZXJzLW9ubHk+IEk8cGFja2FnZT4uLi58QjwtYT58QjwtLXBlbmRpbmc+IgorbXNnc3RyICJCPC0tdHJpZ2dlcnMtb25seT4gSTxwYXF1ZXQ+IC4uLnxCPC1hPiB8IEI8LS1wZW5kaW5nPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjE1MgorbXNnaWQgIiIKKyJQcm9jZXNzZXMgb25seSB0cmlnZ2Vycy4gQWxsIHBlbmRpbmcgdHJpZ2dlcnMgd2lsbCBiZSBwcm9jZXNzZWQuIElmIHBhY2thZ2UgIgorIm5hbWVzIGFyZSBzdXBwbGllZCBvbmx5IHRob3NlIHBhY2thZ2VzJyB0cmlnZ2VycyB3aWxsIGJlIHByb2Nlc3NlZCwgZXhhY3RseSAiCisib25jZSBlYWNoIHdoZXJlIG5lY2Vzc2FyeS4gVXNlIG9mIHRoaXMgb3B0aW9uIG1heSBsZWF2ZSBwYWNrYWdlcyBpbiB0aGUgIgorImltcHJvcGVyIEI8dHJpZ2dlcnMtYXdhaXRlZD4gYW5kIEI8dHJpZ2dlcnMtcGVuZGluZz4gc3RhdGVzLiBUaGlzIGNhbiBiZSAiCisiZml4ZWQgbGF0ZXIgYnkgcnVubmluZzogQjxkcGtnIC0tY29uZmlndXJlIC0tcGVuZGluZz4uIgorbXNnc3RyICIiCisiTidleMOpY3V0ZSBxdWUgbGVzIGFjdGlvbnMgZGlmZsOpcsOpZXMuIFRvdXRlcyBsZXMgYWN0aW9ucyBkaWZmw6lyw6llcyBlbiBhdHRlbnRlICIKKyJzZXJvbnQgdHJhaXTDqWVzLiBTaSBkZXMgbm9tcyBkZXMgcGFxdWV0cyBzb250IGZvdXJuaXMsIGxlcyBhY3Rpb25zIGRpZmbDqXLDqWVzICIKKyJkZSBjZXMgcGFxdWV0cyBzZXJvbnQgdHJhaXTDqWVzLCB1bmUgZm9pcyBjaGFjdW5lIGxvcnNxdWUgbsOpY2Vzc2FpcmUuICIKKyJMJ3V0aWxpc2F0aW9uIGRlIGNldHRlIG9wdGlvbiBwZXV0IGxhaXNzZXIgZGVzIHBhcXVldHMgZGFucyBsZXMgw6l0YXRzICIKKyJpbmNvcnJlY3RzIGRlIEI8dHJpZ2dlcnMtYXdhaXRlZD4gZXQgZGUgQjx0cmlnZ2Vycy1wZW5kaW5nPi4gQ2VsYSBwZXV0IMOqdHJlICIKKyJjb3JyaWfDqSBwbHVzIHRhcmQgZW4gZXjDqWN1dGFudMKgOiBCPGRwa2cgLS1jb25maWd1cmUgLS1wZW5kaW5nPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MTUyCisjLCBuby13cmFwCittc2dpZCAiQjwtcj4sIEI8LS1yZW1vdmU+LCBCPC1QPiwgQjwtLXB1cmdlID5JPHBhY2thZ2U+Li4ufEI8LWE+fEI8LS1wZW5kaW5nPiIKK21zZ3N0ciAiQjwtcj4sIEI8LS1yZW1vdmU+LCBCPC1QPiwgQjwtLXB1cmdlID5JPHBhcXVldD4uLi58QjwtYT58QjwtLXBlbmRpbmc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTY5Cittc2dpZCAiIgorIlJlbW92ZSBhbiBpbnN0YWxsZWQgcGFja2FnZS4gQjwtcj4gb3IgQjwtLXJlbW92ZT4gcmVtb3ZlIGV2ZXJ5dGhpbmcgZXhjZXB0ICIKKyJjb25mZmlsZXMuIFRoaXMgbWF5IGF2b2lkIGhhdmluZyB0byByZWNvbmZpZ3VyZSB0aGUgcGFja2FnZSBpZiBpdCBpcyAiCisicmVpbnN0YWxsZWQgbGF0ZXIuIChDb25mZmlsZXMgYXJlIGNvbmZpZ3VyYXRpb24gZmlsZXMgdGhhdCBhcmUgbGlzdGVkIGluIHRoZSAiCisiSTxERUJJQU4vY29uZmZpbGVzPiBjb250cm9sIGZpbGUpLiBCPC1QPiBvciBCPC0tcHVyZ2U+IHJlbW92ZXMgZXZlcnl0aGluZywgIgorImluY2x1ZGluZyBjb25mZmlsZXMuIElmIEI8LWE+IG9yIEI8LS1wZW5kaW5nPiBpcyBnaXZlbiBpbnN0ZWFkIG9mIGEgcGFja2FnZSAiCisibmFtZSwgdGhlbiBhbGwgcGFja2FnZXMgdW5wYWNrZWQsIGJ1dCBtYXJrZWQgdG8gYmUgcmVtb3ZlZCBvciBwdXJnZWQgaW4gZmlsZSAiCisiSTwvdmFyL2xpYi9kcGtnL3N0YXR1cz4sIGFyZSByZW1vdmVkIG9yIHB1cmdlZCwgcmVzcGVjdGl2ZWx5LiBOb3RlOiBzb21lICIKKyJjb25maWd1cmF0aW9uIGZpbGVzIG1pZ2h0IGJlIHVua25vd24gdG8gQjxkcGtnPiBiZWNhdXNlIHRoZXkgYXJlIGNyZWF0ZWQgYW5kICIKKyJoYW5kbGVkIHNlcGFyYXRlbHkgdGhyb3VnaCB0aGUgY29uZmlndXJhdGlvbiBzY3JpcHRzLiBJbiB0aGF0IGNhc2UsIEI8ZHBrZz4gIgorIndvbid0IHJlbW92ZSB0aGVtIGJ5IGl0c2VsZiwgYnV0IHRoZSBwYWNrYWdlJ3MgSTxwb3N0cm0+IHNjcmlwdCAod2hpY2ggaXMgIgorImNhbGxlZCBieSBCPGRwa2c+KSwgaGFzIHRvIHRha2UgY2FyZSBvZiB0aGVpciByZW1vdmFsIGR1cmluZyBwdXJnZS4gT2YgIgorImNvdXJzZSwgdGhpcyBvbmx5IGFwcGxpZXMgdG8gZmlsZXMgaW4gc3lzdGVtIGRpcmVjdG9yaWVzLCBub3QgY29uZmlndXJhdGlvbiAiCisiZmlsZXMgd3JpdHRlbiB0byBpbmRpdmlkdWFsIHVzZXJzJyBob21lIGRpcmVjdG9yaWVzLiIKK21zZ3N0ciAiIgorIlN1cHByaW1lIHVuIHBhcXVldCBpbnN0YWxsw6kuIEwnYWN0aW9uIEI8LXI+IG91IEI8LS1yZW1vdmU+IHN1cHByaW1lIHRvdXQgIgorInNhdWYgbGVzIGZpY2hpZXJzIGRlIGNvbmZpZ3VyYXRpb24uIENlbGEgcGV1dCDDqXZpdGVyIGxhIHJlY29uZmlndXJhdGlvbiBkdSAiCisicGFxdWV0IGxvcnMgZCd1bmUgcsOpaW5zdGFsbGF0aW9uLiBMZXMgZmljaGllcnMgZGUgY29uZmlndXJhdGlvbiBzb250IGxlcyAiCisiZmljaGllcnMgcsOpcGVydG9yacOpcyBkYW5zIGxlIGZpY2hpZXIgZGUgY29udHLDtGxlIEk8ZGViaWFuL2NvbmZmaWxlcz4uICIKKyJMJ29wdGlvbiBCPC1QPiBvdSBCPC0tcHVyZ2U+IHN1cHByaW1lIHRvdXQsIHkgY29tcHJpcyBsZXMgZmljaGllcnMgZGUgIgorImNvbmZpZ3VyYXRpb24uIFNpIGwnb24gZG9ubmUgbCdvcHRpb24gQjwtYT4gb3UgQjwtLXBlbmRpbmc+IMOgIGxhIHBsYWNlIGQndW4gIgorIm5vbSBkZSBwYXF1ZXQsIHRvdXMgbGVzIHBhcXVldHMgbm9uIGTDqXBhcXVldMOpcywgbWFpcyBxdWkgc29udCBtYXJxdcOpcyBjb21tZSAiCisiZGV2YW50IMOqdHJlIHN1cHByaW3DqXMgb3UgcHVyZ8OpcyBkYW5zIGxlIGZpY2hpZXIgSTwvdmFyL2xpYi9kcGtnL3N0YXR1cz4sICIKKyJzb250IHJlc3BlY3RpdmVtZW50IHN1cHByaW3DqXMgb3UgcHVyZ8Opcy4gTm90ZcKgOsKgY2VydGFpbnMgZmljaGllcnMgZGUgIgorImNvbmZpZ3VyYXRpb24gcGV1dmVudCDDqnRyZSBpbmNvbm51cyBkZSBCPGRwa2c+IGNhciBpbHMgc29udCBjcsOpw6lzIGV0IGfDqXLDqXMgw6AgIgorInBhcnQsIHZpYSBsZXMgc2NyaXB0cyBkZSBjb25maWd1cmF0aW9uLiBEYW5zIGNlIGNhcywgQjxkcGtnPiBuZSBsZXMgIgorInN1cHByaW1lcmEgcGFzIGx1aS1tw6ptZSBldCBsZSBzY3JpcHQgSTxwb3N0cm0+IGR1IHBhcXVldCAocXVpIGVzdCBhcHBlbMOpIHBhciAiCisiQjxkcGtnPikgZG9pdCBzJ29jY3VwZXIgZGUgbGV1ciBzdXBwcmVzc2lvbi4gQmllbiBlbnRlbmR1LCBjZWxhIG5lICIKKyJzJ2FwcGxpcXVlIHF1J2F1eCBmaWNoaWVycyBzaXR1w6lzIGRhbnMgbGVzIHLDqXBlcnRvaXJlcyBkdSBzeXN0w6htZSwgcGFzIMOgICIKKyJjZXV4IGV4aXN0YW50IGRhbnMgbGVzIHLDqXBlcnRvaXJlcyBwZXJzb25uZWxzIGRlcyB1dGlsaXNhdGV1cnMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTcxCittc2dpZCAiUmVtb3Zpbmcgb2YgYSBwYWNrYWdlIGNvbnNpc3RzIG9mIHRoZSBmb2xsb3dpbmcgc3RlcHM6IgorbXNnc3RyICJMYSBzdXBwcmVzc2lvbiBkJ3VuIHBhcXVldCBjb21wb3J0ZSBsZXMgw6l0YXBlcyBzdWl2YW50ZXPCoDoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxNzQKK21zZ2lkICJCPDEuPiBSdW4gSTxwcmVybT4gc2NyaXB0IgorbXNnc3RyICJCPDEuPiBMYW5jZW1lbnQgZHUgc2NyaXB0IEk8cHJlcm0+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTc3Cittc2dpZCAiQjwyLj4gUmVtb3ZlIHRoZSBpbnN0YWxsZWQgZmlsZXMiCittc2dzdHIgIkI8Mi4+IFN1cHByZXNzaW9uIGRlcyBmaWNoaWVycyBpbnN0YWxsw6lzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTgwCittc2dpZCAiQjwzLj4gUnVuIEk8cG9zdHJtPiBzY3JpcHQiCittc2dzdHIgIkI8My4+IGxhbmNlbWVudCBkdSBzY3JpcHQgSTxwb3N0cm0+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjE4MQorIywgbm8td3JhcAorbXNnaWQgIkI8LS11cGRhdGUtYXZhaWw+LCBCPC0tbWVyZ2UtYXZhaWw+IEk8UGFja2FnZXMtZmlsZT4iCittc2dzdHIgIkI8LS11cGRhdGUtYXZhaWw+LCBCPC0tbWVyZ2UtYXZhaWw+IEk8ZmljaGllci1QYXF1ZXRzPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjE5MAorbXNnaWQgIiIKKyJVcGRhdGUgQjxkcGtnPidzIGFuZCBCPGRzZWxlY3Q+J3MgaWRlYSBvZiB3aGljaCBwYWNrYWdlcyBhcmUgYXZhaWxhYmxlLiBXaXRoICIKKyJhY3Rpb24gQjwtLW1lcmdlLWF2YWlsPiwgb2xkIGluZm9ybWF0aW9uIGlzIGNvbWJpbmVkIHdpdGggaW5mb3JtYXRpb24gZnJvbSAiCisiSTxQYWNrYWdlcy1maWxlPi4gV2l0aCBhY3Rpb24gQjwtLXVwZGF0ZS1hdmFpbD4sIG9sZCBpbmZvcm1hdGlvbiBpcyByZXBsYWNlZCAiCisid2l0aCB0aGUgaW5mb3JtYXRpb24gaW4gdGhlIEk8UGFja2FnZXMtZmlsZT4uIFRoZSBJPFBhY2thZ2VzLWZpbGU+ICIKKyJkaXN0cmlidXRlZCB3aXRoIERlYmlhbiBpcyBzaW1wbHkgbmFtZWQgSTxQYWNrYWdlcz4uIEI8ZHBrZz4ga2VlcHMgaXRzICIKKyJyZWNvcmQgb2YgYXZhaWxhYmxlIHBhY2thZ2VzIGluIEk8L3Zhci9saWIvZHBrZy9hdmFpbGFibGU+LiIKK21zZ3N0ciAiIgorIk1ldCDDoCBqb3VyIGwnaW5mb3JtYXRpb24gZGUgQjxkcGtnPiBldCBkZSBCPGRzZWxlY3Q+IHN1ciBsZXMgcGFxdWV0cyAiCisiZGlzcG9uaWJsZXMuIEwnYWN0aW9uIEI8LS1tZXJnZS1hdmFpbD4gY29tYmluZSBsZXMgaW5mb3JtYXRpb25zIGFuY2llbm5lcyAiCisiYXZlYyBjZWxsZXMgcXVpIHByb3ZpZW5uZW50IGR1IGZpY2hpZXIgSTxmaWNoaWVyLVBhY2thZ2VzPi4gTCdhY3Rpb24gQjwtLSIKKyJ1cGRhdGUtYXZhaWw+IHJlbXBsYWNlIGxlcyBpbmZvcm1hdGlvbnMgYW5jaWVubmVzIHBhciBjZWxsZXMgcXVpIHByb3ZpZW5uZW50ICIKKyJkdSBmaWNoaWVyIEk8ZmljaGllci1QYWNrYWdlcz4uIExlIGZpY2hpZXIgSTxmaWNoaWVyLVBhY2thZ2VzPiBkaXN0cmlidcOpICIKKyJhdmVjIERlYmlhbiBlc3QgYXBwZWzDqSBzaW1wbGVtZW50IEk8UGFja2FnZXM+LiBCPGRwa2c+IGdhcmRlIHNvbiBwcm9wcmUgIgorImVucmVnaXN0cmVtZW50IGRlcyBwYXF1ZXRzIGRpc3BvbmlibGVzIGRhbnMgSTwvdmFyL2xpYi9kcGtnL2F2YWlsYWJsZT4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTk1Cittc2dpZCAiIgorIkEgc2ltcGxlciBvbmUtc2hvdCBjb21tYW5kIHRvIHJldHJpZXZlIGFuZCB1cGRhdGUgdGhlIEk8YXZhaWxhYmxlPiBmaWxlIGlzICIKKyJCPGRzZWxlY3QgdXBkYXRlPi4gTm90ZSB0aGF0IHRoaXMgZmlsZSBpcyBtb3N0bHkgdXNlbGVzcyBpZiB5b3UgZG9uJ3QgdXNlICIKKyJCPGRzZWxlY3Q+IGJ1dCBhbiBBUFQtYmFzZWQgZnJvbnRlbmQ6IEFQVCBoYXMgaXRzIG93biBzeXN0ZW0gdG8ga2VlcCB0cmFjayAiCisib2YgYXZhaWxhYmxlIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorIkEgY29tbWFuZGUgdW5pcXVlIHBsdXMgc2ltcGxlIHBlcm1ldHRhbnQgZGUgcsOpY3Vww6lyZXIgZXQgbWV0dHJlIMOgIGpvdXIgbGUgIgorImZpY2hpZXIgSTxhdmFpbGFibGU+IGVzdCBCPGRzZWxlY3QgdXBkYXRlPi4gVmV1aWxsZXogbm90ZXIgcXVlIGNlIGZpY2hpZXIgIgorImVzdCDDoCBwZXUgcHLDqHMgaW51dGlsZSBzaSB2b3VzIG4ndXRpbGlzZXogcGFzIEI8ZHNlbGVjdD4gbWFpcyB1bmUgaW50ZXJmYWNlICIKKyJiYXPDqWUgc3VyIEFQVC4gQVBUIGNvbXBvcnRlIGVuIGVmZmV0IHNvbiBwcm9wcmUgbcOpY2FuaXNtZSBwb3VyIHN1aXZyZSBsZXMgIgorInBhcXVldHMgZGlzcG9uaWJsZXMuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjE5NQorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPC1BPiwgQjwtLXJlY29yZC1hdmFpbD4gSTxwYWNrYWdlX2ZpbGU+Li4uIgorbXNnaWQgIkI8LUE+LCBCPC0tcmVjb3JkLWF2YWlsPiBJPHBhY2thZ2UtZmlsZT4uLi4iCittc2dzdHIgIkI8LUE+LCBCPC0tcmVjb3JkLWF2YWlsPiBJPGZpY2hpZXJfcGFxdWV0Pi4uLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjIwMQorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiVXBkYXRlIEI8ZHBrZz4gYW5kIEI8ZHNlbGVjdD4ncyBpZGVhIG9mIHdoaWNoIHBhY2thZ2VzIGFyZSBhdmFpbGFibGUgd2l0aCAiCisjfCAiaW5mb3JtYXRpb24gZnJvbSB0aGUgcGFja2FnZSBJPHBhY2thZ2VfZmlsZT4uIElmIEI8LS1yZWN1cnNpdmU+IG9yIEI8LVI+ICIKKyN8ICJvcHRpb24gaXMgc3BlY2lmaWVkLCBJPHBhY2thZ2VfZmlsZT4gbXVzdCByZWZlciB0byBhIGRpcmVjdG9yeSBpbnN0ZWFkLiIKK21zZ2lkICIiCisiVXBkYXRlIEI8ZHBrZz4gYW5kIEI8ZHNlbGVjdD4ncyBpZGVhIG9mIHdoaWNoIHBhY2thZ2VzIGFyZSBhdmFpbGFibGUgd2l0aCAiCisiaW5mb3JtYXRpb24gZnJvbSB0aGUgcGFja2FnZSBJPHBhY2thZ2UtZmlsZT4uIElmIEI8LS1yZWN1cnNpdmU+IG9yIEI8LVI+ICIKKyJvcHRpb24gaXMgc3BlY2lmaWVkLCBJPHBhY2thZ2UtZmlsZT4gbXVzdCByZWZlciB0byBhIGRpcmVjdG9yeSBpbnN0ZWFkLiIKK21zZ3N0ciAiIgorIk1ldCDDoCBqb3VyIGwnaW5mb3JtYXRpb24gZGUgQjxkcGtnPiBldCBkZSBCPGRzZWxlY3Q+IHN1ciBsZXMgcGFxdWV0cyAiCisiZGlzcG9uaWJsZXMgYXZlYyBsZXMgaW5mb3JtYXRpb25zIHF1aSBwcm92aWVubmVudCBkZSBJPGZpY2hpZXItcGFxdWV0Pi4gU2kgIgorImwnb3B0aW9uIEI8LS1yZWN1cnNpdmU+IG91IEI8LVI+IGVzdCBkb25uw6llLCBJPGZpY2hpZXItcGFxdWV0PiBkb2l0IGluZGlxdWVyICIKKyJ1biByw6lwZXJ0b2lyZS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MjAxCisjLCBuby13cmFwCittc2dpZCAiQjwtLWZvcmdldC1vbGQtdW5hdmFpbD4iCittc2dzdHIgIkI8LS1mb3JnZXQtb2xkLXVuYXZhaWw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MjA1Cittc2dpZCAiIgorIk5vdyBCPG9ic29sZXRlPiBhbmQgYSBuby1vcCBhcyBCPGRwa2c+IHdpbGwgYXV0b21hdGljYWxseSBmb3JnZXQgdW5pbnN0YWxsZWQgIgorInVuYXZhaWxhYmxlIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorIkTDqXNvcm1haXMgQjxvYnNvbMOodGU+IGV0IHNhbnMgZWZmZXQgY2FyIEI8ZHBrZz4gb3VibGllIGF1dG9tYXRpcXVlbWVudCBsZXMgIgorInBhcXVldHMgZMOpc2luc3RhbGzDqXMgcXVpIG5lIHNvbnQgcGFzIGRpc3BvbmlibGVzLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToyMDUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tY2xlYXItYXZhaWw+IgorbXNnc3RyICJCPC0tY2xlYXItYXZhaWw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MjA4Cittc2dpZCAiRXJhc2UgdGhlIGV4aXN0aW5nIGluZm9ybWF0aW9uIGFib3V0IHdoYXQgcGFja2FnZXMgYXJlIGF2YWlsYWJsZS4iCittc2dzdHIgIkVmZmFjZSBsZXMgcmVuc2VpZ25lbWVudHMgZXhpc3RhbnRzIHN1ciBsZXMgcGFxdWV0cyBkaXNwb25pYmxlcy4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MjA4CisjLCBuby13cmFwCittc2dpZCAiIEI8LUM+LCBCPC0tYXVkaXQ+IgorbXNnc3RyICJCPC1DPiwgQjwtLWF1ZGl0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjIxMworbXNnaWQgIiIKKyJTZWFyY2hlcyBmb3IgcGFja2FnZXMgdGhhdCBoYXZlIGJlZW4gaW5zdGFsbGVkIG9ubHkgcGFydGlhbGx5IG9uIHlvdXIgIgorInN5c3RlbS4gQjxkcGtnPiB3aWxsIHN1Z2dlc3Qgd2hhdCB0byBkbyB3aXRoIHRoZW0gdG8gZ2V0IHRoZW0gd29ya2luZy4iCittc2dzdHIgIiIKKyJSZWNoZXJjaGUgbGVzIHBhcXVldHMgcXVpIG4nb250IMOpdMOpIHF1ZSBwYXJ0aWVsbGVtZW50IGluc3RhbGzDqXMgc3VyIGxlICIKKyJzeXN0w6htZS4gQjxkcGtnPiBzdWdnw6hyZSB1bmUgbWFuacOocmUgZGUgbGVzIGZhaXJlIGZvbmN0aW9ubmVyLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToyMTMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tZ2V0LXNlbGVjdGlvbnM+IFtJPHBhY2thZ2UtbmFtZS1wYXR0ZXJuPi4uLl0iCittc2dzdHIgIkI8LS1nZXQtc2VsZWN0aW9ucz4gW0k8bW90aWYtbm9tLXBhcXVldD4uLi5dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MjE4Cittc2dpZCAiIgorIkdldCBsaXN0IG9mIHBhY2thZ2Ugc2VsZWN0aW9ucywgYW5kIHdyaXRlIGl0IHRvIHN0ZG91dC4gV2l0aG91dCBhIHBhdHRlcm4sICIKKyJub24taW5zdGFsbGVkIHBhY2thZ2VzIChpLmUuIHRob3NlIHdoaWNoIGhhdmUgYmVlbiBwcmV2aW91c2x5IHB1cmdlZCkgIHdpbGwgIgorIm5vdCBiZSBzaG93bi4iCittc2dzdHIgIiIKKyJPYnRpZW50IGxhIGxpc3RlIGRlcyBzw6lsZWN0aW9ucyBkZXMgcGFxdWV0cywgZXQgbCdlbnZvaWUgc3VyIGxhIHNvcnRpZSAiCisic3RhbmRhcmQuIFNhbnMgdW4gbW90aWYsIGxlcyBwYXF1ZXRzIG5vbiBpbnN0YWxsw6lzIChjJ2VzdCDDoCBkaXJlIGNldXggcXVpICIKKyJvbnQgw6l0w6kgcHLDqWPDqWRlbW1lbnQgcHVyZ8OpcykgbmUgc2Vyb250IHBhcyBhZmZpY2jDqXMuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjIxOCB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6Mjk5CisjLCBuby13cmFwCittc2dpZCAiQjwtLXNldC1zZWxlY3Rpb25zPiIKK21zZ3N0ciAiQjwtLXNldC1zZWxlY3Rpb25zPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjIyNAorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiU2V0IHBhY2thZ2Ugc2VsZWN0aW9ucyB1c2luZyBmaWxlIHJlYWQgZnJvbSBzdGRpbi4gVGhpcyBmaWxlIHNob3VsZCBiZSBpbiAiCisjfCAidGhlIGZvcm1hdCAnRTxsdD5wYWNrYWdlRTxndD4gRTxsdD5zdGF0ZUU8Z3Q+Jywgd2hlcmUgc3RhdGUgaXMgb25lIG9mICIKKyN8ICJpbnN0YWxsLCBob2xkLCBkZWluc3RhbGwgb3IgcHVyZ2UuIEJsYW5rIGxpbmVzIGFuZCBjb21tZW50IGxpbmVzICIKKyN8ICJiZWdpbm5pbmcgd2l0aCAnIycgYXJlIGFsc28gcGVybWl0dGVkLiIKK21zZ2lkICIiCisiU2V0IHBhY2thZ2Ugc2VsZWN0aW9ucyB1c2luZyBmaWxlIHJlYWQgZnJvbSBzdGRpbi4gVGhpcyBmaWxlIHNob3VsZCBiZSBpbiAiCisidGhlIGZvcm1hdCAnSTxwYWNrYWdlPiBJPHN0YXRlPicsIHdoZXJlIHN0YXRlIGlzIG9uZSBvZiBCPGluc3RhbGw+LCBCPGhvbGQ+LCAiCisiQjxkZWluc3RhbGw+IG9yIEI8cHVyZ2U+LiBCbGFuayBsaW5lcyBhbmQgY29tbWVudCBsaW5lcyBiZWdpbm5pbmcgd2l0aCAnIycgIgorImFyZSBhbHNvIHBlcm1pdHRlZC4iCittc2dzdHIgIiIKKyJtb2RpZmllIGxhIGxpc3RlIGRlcyBzw6lsZWN0aW9ucyBkZXMgcGFxdWV0cyBlbiBsaXNhbnQgdW4gZmljaGllciBzdXIgIgorImwnZW50csOpZSBzdGFuZGFyZC4gTGUgZm9ybWF0IGRlIGNlIGZpY2hpZXIgZG9pdCDDqnRyZSBkZSBsYSBmb3JtZSAiCisiwqvCoEU8bHQ+cGFxdWV0RTxndD4gRTxsdD7DqXRhdEU8Z3Q+wqDCuywgb8O5IMOpdGF0IHZhdXQgwqvCoGluc3RhbGzCoMK7LCDCq8KgaG9sZMKgwrssICIKKyLCq8KgZGVpbnN0YWxswqDCuyBvdSDCq8KgcHVyZ2XCoMK7LiBMZXMgbGlnbmVzIHZpZGVzIG91IGxlcyBsaWduZXMgZGUgY29tbWVudGFpcmVzICIKKyJkw6lidXRhbnQgcGFyIMKrwqAjwqDCuyBzb250IGF1dG9yaXPDqWVzLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToyMjQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tY2xlYXItc2VsZWN0aW9ucz4iCittc2dzdHIgIkI8LS1jbGVhci1zZWxlY3Rpb25zPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjIyOQorbXNnaWQgIiIKKyJTZXQgdGhlIHJlcXVlc3RlZCBzdGF0ZSBvZiBldmVyeSBub24tZXNzZW50aWFsIHBhY2thZ2UgdG8gZGVpbnN0YWxsLiAgVGhpcyAiCisiaXMgaW50ZW5kZWQgdG8gYmUgdXNlZCBpbW1lZGlhdGVseSBiZWZvcmUgLS1zZXQtc2VsZWN0aW9ucywgdG8gZGVpbnN0YWxsIGFueSAiCisicGFja2FnZXMgbm90IGluIGxpc3QgZ2l2ZW4gdG8gLS1zZXQtc2VsZWN0aW9ucy4iCittc2dzdHIgIiIKKyJNZXQgbCfDqXRhdCBkZSBjaGFxdWUgcGFxdWV0IG5vbiBlc3NlbnRpZWwgw6AgwqvCoGRlaW5zdGFsbMKgwrsuIElsIGZhdXQgdXRpbGlzZXIgIgorImNldHRlIG9wdGlvbiBqdXN0ZSBhdmFudCAtLXNldC1zZWxlY3Rpb25zLCBwb3VyIGTDqXNpbnN0YWxsZXIgbGVzIHBhcXVldHMgcXVpICIKKyJuZSBzb250IHBhcyBhZmZpY2jDqXMgcGFyIC0tc2V0LXNlbGVjdGlvbnMuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjIyOQorIywgbm8td3JhcAorbXNnaWQgIkI8LS15ZXQtdG8tdW5wYWNrPiIKK21zZ3N0ciAiQjwtLXlldC10by11bnBhY2s+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MjMzCittc2dpZCAiIgorIlNlYXJjaGVzIGZvciBwYWNrYWdlcyBzZWxlY3RlZCBmb3IgaW5zdGFsbGF0aW9uLCBidXQgd2hpY2ggZm9yIHNvbWUgcmVhc29uICIKKyJzdGlsbCBoYXZlbid0IGJlZW4gaW5zdGFsbGVkLiIKK21zZ3N0ciAiIgorIlJlY2hlcmNoZSBsZXMgcGFxdWV0cyBxdWkgb250IMOpdMOpIHPDqWxlY3Rpb25uw6lzIHBvdXIgbCdpbnN0YWxsYXRpb24sIG1haXMgcXVpICIKKyJwb3VyIHVuZSByYWlzb24gcXVlbGNvbnF1ZSwgbmUgc29udCBwYXMgZW5jb3JlIGluc3RhbGzDqXMuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjIzNAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1wcmludC1hcmNoaXRlY3R1cmU+IgorbXNnc3RyICJCPC0tcHJpbnQtYXJjaGl0ZWN0dXJlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjIzNworbXNnaWQgIiIKKyJQcmludCBhcmNoaXRlY3R1cmUgb2YgcGFja2FnZXMgQjxkcGtnPiBpbnN0YWxscyAoZm9yIGV4YW1wbGUsIFwiaTM4NlwiKS4iCittc2dzdHIgIkFmZmljaGUgbCdhcmNoaXRlY3R1cmUgZGVzIHBhcXVldHMgaW5zdGFsbMOpcyAocGFyIGV4ZW1wbGUsIMKrwqBpMzg2wqDCuykuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjIzNworIywgbm8td3JhcAorbXNnaWQgIkI8LS1jb21wYXJlLXZlcnNpb25zID5JPHZlcjEgb3AgdmVyMj4iCittc2dzdHIgIkI8LS1jb21wYXJlLXZlcnNpb25zID5JPHZlcjEgb3AgdmVyMj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyNDgKK21zZ2lkICIiCisiQ29tcGFyZSB2ZXJzaW9uIG51bWJlcnMsIHdoZXJlIEk8b3A+IGlzIGEgYmluYXJ5IG9wZXJhdG9yLiBCPGRwa2c+IHJldHVybnMgIgorInN1Y2Nlc3MgKHplcm8gcmVzdWx0KSBpZiB0aGUgc3BlY2lmaWVkIGNvbmRpdGlvbiBpcyBzYXRpc2ZpZWQsIGFuZCBmYWlsdXJlICIKKyIobm9uemVybyByZXN1bHQpIG90aGVyd2lzZS4gVGhlcmUgYXJlIHR3byBncm91cHMgb2Ygb3BlcmF0b3JzLCB3aGljaCBkaWZmZXIgIgorImluIGhvdyB0aGV5IHRyZWF0IGFuIGVtcHR5IEk8dmVyMT4gb3IgSTx2ZXIyPi4gVGhlc2UgdHJlYXQgYW4gZW1wdHkgdmVyc2lvbiAiCisiYXMgZWFybGllciB0aGFuIGFueSB2ZXJzaW9uOiBCPGx0IGxlIGVxIG5lIGdlIGd0Pi4gVGhlc2UgdHJlYXQgYW4gZW1wdHkgIgorInZlcnNpb24gYXMgbGF0ZXIgdGhhbiBhbnkgdmVyc2lvbjogQjxsdC1ubCBsZS1ubCBnZS1ubCBndC1ubD4uIFRoZXNlIGFyZSAiCisicHJvdmlkZWQgb25seSBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIGNvbnRyb2wgZmlsZSBzeW50YXg6IEI8RTxsdD4gRTxsdD5FPGx0PiAiCisiRTxsdD49ID0gRTxndD49IEU8Z3Q+RTxndD4gRTxndD4+LiIKK21zZ3N0ciAiIgorIkNvbXBhcmUgZGVzIG51bcOpcm9zIGRlIHZlcnNpb24sIG/DuSBJPG9wPiBlc3QgdW4gb3DDqXJhdGV1ciBiaW5haXJlLiBCPGRwa2c+ICIKKyJyZXRvdXJuZSB1biB6w6lybyBzaSBsYSBjb25kaXRpb24gc3DDqWNpZmnDqWUgZXN0IHbDqXJpZmnDqWUsIGV0IHJldG91cm5lIHVuICIKKyJub21icmUgZGlmZsOpcmVudCBkZSB6w6lybyBkYW5zIGxlIGNhcyBjb250cmFpcmUuIElsIHkgYSBkZXV4IGdyb3VwZXMgIgorImQnb3DDqXJhdGV1cnPCoDsgaWxzIGRpZmbDqHJlbnQgcGFyIGxldXIgZmHDp29uIGRlIHRyYWl0ZXIgbCdhYnNlbmNlIGRlIEk8dmVyMT4gIgorIm91IGRlIEk8dmVyMj4uIFBvdXIgbGVzIG9ww6lyYXRldXJzIHN1aXZhbnRzLCBCPGx0IGxlIGVxIG5lIGdlIGd0PiwgbCdhYnNlbmNlICIKKyJkJ3VuZSB2ZXJzaW9uIGVzdCBjb25zaWTDqXLDqWUgY29tbWUgaW5mw6lyaWV1cmUgw6AgdG91dGUgdmVyc2lvbsKgOyBwb3VyIGxlcyAiCisib3DDqXJhdGV1cnMgQjxsdC1ubCBsZS1ubCBnZS1ubCBndC1ubD4sIGwnYWJzZW5jZSBkJ3VuZSB2ZXJzaW9uIGVzdCAiCisiY29uc2lkw6lyw6llIGNvbW1lIHN1cMOpcmlldXJlIMOgIHRvdXRlIHZlcnNpb24uIExlcyBvcMOpcmF0ZXVycyBCPEU8bHQ+ICIKKyJFPGx0PkU8bHQ+IEU8bHQ+PSA9IEU8Z3Q+PSBFPGd0PkU8Z3Q+IEU8Z3Q+PiBuZSBzb250IGZvdXJuaXMgcXVlIHBvdXIgbGEgIgorImNvbXBhdGliaWxpdMOpIGF2ZWMgbGEgc3ludGF4ZSBkdSBmaWNoaWVyIGRlIGNvbnRyw7RsZS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MjQ4CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8LS1jb21tYW5kLWZkID5JPEU8bHQ+bkU8Z3Q+PiIKK21zZ2lkICJCPC0tY29tbWFuZC1mZCA+STxuPiIKK21zZ3N0ciAiQjwtLWNvbW1hbmQtZmQgPkk8RTxsdD5uRTxndD4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MjUzCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJBY2NlcHQgYSBzZXJpZXMgb2YgY29tbWFuZHMgb24gaW5wdXQgZmlsZSBkZXNjcmlwdG9yIEk8RTxsdD5uRTxndD4+LiAiCisjfCAiTm90ZTogYWRkaXRpb25hbCBvcHRpb25zIHNldCBvbiB0aGUgY29tbWFuZCBsaW5lLCBhbmQgdGhyb3VnaCB0aGlzIGZpbGUgIgorI3wgImRlc2NyaXB0b3IsIGFyZSBub3QgcmVzZXQgZm9yIHN1YnNlcXVlbnQgY29tbWFuZHMgZXhlY3V0ZWQgZHVyaW5nIHRoZSAiCisjfCAic2FtZSBydW4uIgorbXNnaWQgIiIKKyJBY2NlcHQgYSBzZXJpZXMgb2YgY29tbWFuZHMgb24gaW5wdXQgZmlsZSBkZXNjcmlwdG9yIEk8bj4uIE5vdGU6IGFkZGl0aW9uYWwgIgorIm9wdGlvbnMgc2V0IG9uIHRoZSBjb21tYW5kIGxpbmUsIGFuZCB0aHJvdWdoIHRoaXMgZmlsZSBkZXNjcmlwdG9yLCBhcmUgbm90ICIKKyJyZXNldCBmb3Igc3Vic2VxdWVudCBjb21tYW5kcyBleGVjdXRlZCBkdXJpbmcgdGhlIHNhbWUgcnVuLiIKK21zZ3N0ciAiIgorIkNldHRlIGFjdGlvbiBhY2NlcHRlIHVuZSBzw6lyaWUgZGUgY29tbWFuZGVzIHN1ciBsZSBkZXNjcmlwdGV1ciBkdSBmaWNoaWVyICIKKyJkJ2VudHLDqWUgQjxFPGx0Pm5FPGd0Pj4uIE5vdGXCoDogZGVzIG9wdGlvbnMgc3VwcGzDqW1lbnRhaXJlcyBkw6lmaW5pZXMgc3VyIGxhICIKKyJsaWduZSBkZSBjb21tYW5kZSDDoCB0cmF2ZXJzIGNlIGRlc2NyaXB0ZXVyIGRlIGZpY2hpZXIgbmUgc29udCBwYXMgcmVkw6lmaW5pZXMgIgorInBvdXIgbGVzIGNvbW1hbmRlcyBzdWl2YW50ZXMgcXVpIHNvbnQgZXjDqWN1dMOpZXMgcGVuZGFudCBsYSBtw6ptZSBzw6lxdWVuY2UuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjI1MyBkcGtnLWFyY2hpdGVjdHVyZS4xOjYwIGRwa2ctYnVpbGRmbGFncy4xOjg5IGRwa2ctZGl2ZXJ0Ljg6NzEKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6MzggZHBrZy1zY2Fuc291cmNlcy4xOjY2IGRwa2ctc3RhdG92ZXJyaWRlLjg6NDQKKyM6IGRwa2ctdmVuZG9yLjE6MjggZHNlbGVjdC4xOjExMyB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzE2CisjLCBuby13cmFwCittc2dpZCAiQjwtLWhlbHA+IgorbXNnc3RyICJCPC0taGVscD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyNTYKK21zZ2lkICJEaXNwbGF5IGEgYnJpZWYgaGVscCBtZXNzYWdlLiIKK21zZ3N0ciAiQWZmaWNoZSB1biBjb3VydCBtZXNzYWdlIGQnYWlkZS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MjU2CisjLCBuby13cmFwCittc2dpZCAiQjwtLWZvcmNlLWhlbHA+IgorbXNnc3RyICJCPC0tZm9yY2UtaGVscD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyNTkKK21zZ2lkICJHaXZlIGhlbHAgYWJvdXQgdGhlIEI8LS1mb3JjZS0+STx0aGluZz4gb3B0aW9ucy4iCittc2dzdHIgIkRvbm5lIGRlcyByZW5zZWlnbmVtZW50cyBzdXIgbGVzIG9wdGlvbnMgQjwtLWZvcmNlLT5JPHF1ZWxxdWUtY2hvc2U+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToyNTkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1EaD4sIEI8LS1kZWJ1Zz1oZWxwPiIKK21zZ3N0ciAiQjwtRGg+LCBCPC0tZGVidWc9aGVscD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyNjIKK21zZ2lkICJHaXZlIGhlbHAgYWJvdXQgZGVidWdnaW5nIG9wdGlvbnMuIgorbXNnc3RyICJkb25uZSBkZXMgcmVuc2VpZ25lbWVudHMgc3VyIGxlcyBvcHRpb25zIGRlIGTDqWJvZ2FnZS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MjYyIGRwa2ctYXJjaGl0ZWN0dXJlLjE6NjMgZHBrZy1idWlsZGZsYWdzLjE6OTIKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjI2IGRwa2ctY2hlY2tidWlsZGRlcHMuMTozNiBkcGtnLWRpc3RhZGRmaWxlLjE6MzUKKyM6IGRwa2ctZGViLjE6MTc1IGRwa2ctZGl2ZXJ0Ljg6NzQgZHBrZy1nZW5jaGFuZ2VzLjE6MTM0IGRwa2ctZ2VuY29udHJvbC4xOjEyNAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDQ2IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6NDEgZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjM2CisjOiBkcGtnLXF1ZXJ5LjE6MTEzIGRwa2ctc2NhbnBhY2thZ2VzLjE6OTkgZHBrZy1zY2Fuc291cmNlcy4xOjY4CisjOiBkcGtnLXNobGliZGVwcy4xOjIxOCBkcGtnLXNvdXJjZS4xOjk5IGRwa2ctc3BsaXQuMToxMjkKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6NDcgZHBrZy10cmlnZ2VyLjE6MzQgZHBrZy12ZW5kb3IuMTozMSBkc2VsZWN0LjE6MTE2CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzE5CisjLCBuby13cmFwCittc2dpZCAiQjwtLXZlcnNpb24+IgorbXNnc3RyICJCPC0tdmVyc2lvbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyNjUKK21zZ2lkICJEaXNwbGF5IEI8ZHBrZz4gdmVyc2lvbiBpbmZvcm1hdGlvbi4iCittc2dzdHIgIkFmZmljaGUgbGEgdmVyc2lvbiBkZSBCPGRwa2c+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToyNjUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGRwa2ctZGViIGFjdGlvbnM+IgorbXNnc3RyICJCPGRwa2ctZGViIGFjdGlvbnM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MjY4Cittc2dpZCAiU2VlIEI8ZHBrZy1kZWI+KDEpIGZvciBtb3JlIGluZm9ybWF0aW9uIGFib3V0IHRoZSBmb2xsb3dpbmcgYWN0aW9ucy4iCittc2dzdHIgIiIKKyJWb3lleiBCPGRwa2ctZGViPigxKSBwb3VyIGRlcyByZW5zZWlnbmVtZW50cyBzdXBwbMOpbWVudGFpcmVzIHN1ciBsZXMgYWN0aW9ucyAiCisic3VpdmFudGVzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjI4OAorIywgbm8td3JhcAorbXNnaWQgIiIKKyJCPC1iPiwgQjwtLWJ1aWxkPiBJPGRpcmVjdG9yeT4gW0k8YXJjaGl2ZT58STxkaXJlY3Rvcnk+XVxuIgorIiAgICBCdWlsZCBhIGRlYiBwYWNrYWdlLlxuIgorIkI8LWM+LCBCPC0tY29udGVudHM+IEk8YXJjaGl2ZT5cbiIKKyIgICAgTGlzdCBjb250ZW50cyBvZiBhIGRlYiBwYWNrYWdlLlxuIgorIkI8LWU+LCBCPC0tY29udHJvbD4gSTxmaWxlbmFtZT4gW0k8ZGlyZWN0b3J5Pl1cbiIKKyIgICAgRXh0cmFjdCBjb250cm9sLWluZm9ybWF0aW9uIGZyb20gYSBwYWNrYWdlLlxuIgorIkI8LXg+LCBCPC0tZXh0cmFjdD4gSTxhcmNoaXZlIGRpcmVjdG9yeT5cbiIKKyIgICAgRXh0cmFjdCB0aGUgZmlsZXMgY29udGFpbmVkIGJ5IHBhY2thZ2UuXG4iCisiQjwtWD4sIEI8LS12ZXh0cmFjdD4gSTxhcmNoaXZlIGRpcmVjdG9yeT5cbiIKKyIgICAgRXh0cmFjdCBhbmQgZGlzcGxheSB0aGUgZmlsZW5hbWVzIGNvbnRhaW5lZCBieSBhXG4iCisiICAgIHBhY2thZ2UuXG4iCisiQjwtZj4sIEI8LS1maWVsZD4gIEk8YXJjaGl2ZT4gW0k8Y29udHJvbC1maWVsZD4uLi5dXG4iCisiICAgIERpc3BsYXkgY29udHJvbCBmaWVsZChzKSBvZiBhIHBhY2thZ2UuXG4iCisiQjwtLWZzeXMtdGFyZmlsZT4gSTxhcmNoaXZlPlxuIgorIiAgICBEaXNwbGF5IHRoZSBmaWxlc3lzdGVtIHRhci1maWxlIGNvbnRhaW5lZCBieSBhXG4iCisiICAgIERlYmlhbiBwYWNrYWdlLlxuIgorIkI8LUk+LCBCPC0taW5mbz4gSTxhcmNoaXZlPiBbSTxjb250cm9sLWZpbGU+Li4uXVxuIgorIiAgICBTaG93IGluZm9ybWF0aW9uIGFib3V0IGEgcGFja2FnZS5cbiIKK21zZ3N0ciAiIgorIkI8LWI+LCBCPC0tYnVpbGQ+IEk8csOpcGVydG9pcmU+IFtJPGFyY2hpdmU+fEk8csOpcGVydG9pcmU+XVxuIgorIiAgICBDb25zdHJ1aXQgdW4gcGFxdWV0IGRlYi5cbiIKKyJCPC1jPiwgQjwtLWNvbnRlbnRzPiBJPGFyY2hpdmU+XG4iCisiICAgIExpc3RlIGxlIGNvbnRlbnUgZCd1biBwYXF1ZXQgZGViLlxuIgorIkI8LWU+LCBCPC0tY29udHJvbD4gSTxub20tZGUtZmljaGllcj4gW0k8csOpcGVydG9pcmU+XVxuIgorIiAgICBFeHRyYWl0IGxlcyBpbmZvcm1hdGlvbnMgZGUgY29udHLDtGxlIGQndW4gcGFxdWV0LlxuIgorIkI8LXg+LCBCPC0tZXh0cmFjdD4gSTxyw6lwZXJ0b2lyZSBkZSBsJ2FyY2hpdmU+XG4iCisiICAgIEV4dHJhaXQgZXQgYWZmaWNoZSBsZXMgZmljaGllcnMgY29udGVudXMgZGFucyB1biBwYXF1ZXQuXG4iCisiQjwtZj4sIEI8LS1maWVsZD4gSTxub20tZGUtZmljaGllcj4gW0k8Y2hhbXAgZGUgY29udHLDtGxlPl0gLi4uXG4iCisiICAgIEFmZmljaGUgbGUocykgY2hhbXAocykgZGUgY29udHLDtGxlIGQndW4gcGFxdWV0LlxuIgorIkI8LS1mc3lzLXRhcmZpbGU+IEk8YXJjaGl2ZT5cbiIKKyIgICAgQWZmaWNoZSBsZSBjb250ZW51IGR1IGZpY2hpZXIgwqvCoHRhcsKgwrsgZCd1biBwYXF1ZXQgRGViaWFuLlxuIgorIkI8LUk+LCBCPC0taW5mbz4gSTxub20tZGUtZmljaGllcj4gW0k8ZmljaGllciBkZSBjb250csO0bGU+XVxuIgorIiAgICBBZmZpY2hlIGRlcyByZW5zZWlnbmVtZW50cyBzdXIgdW4gcGFxdWV0LlxuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjI5MAorIywgbm8td3JhcAorbXNnaWQgIkI8ZHBrZy1xdWVyeSBhY3Rpb25zPiIKK21zZ3N0ciAiQjxkcGtnLXF1ZXJ5IGFjdGlvbnM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MjkzCittc2dpZCAiU2VlIEI8ZHBrZy1xdWVyeT4oMSkgZm9yIG1vcmUgaW5mb3JtYXRpb24gYWJvdXQgdGhlIGZvbGxvd2luZyBhY3Rpb25zLiIKK21zZ3N0ciAiIgorIlZveWV6IEI8ZHBrZy1xdWVyeT4oMSkgcG91ciBkYXZhbnRhZ2UgZCdleHBsaWNhdGlvbnMgc3VyIGxlcyBhY3Rpb25zICIKKyJzdWl2YW50ZXMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzA4CisjLCBuby13cmFwCittc2dpZCAiIgorIkI8LWw+LCBCPC0tbGlzdD4gSTxwYWNrYWdlLW5hbWUtcGF0dGVybj4uLi5cbiIKKyIgICAgTGlzdCBwYWNrYWdlcyBtYXRjaGluZyBnaXZlbiBwYXR0ZXJuLlxuIgorIkI8LXM+LCBCPC0tc3RhdHVzPiBJPHBhY2thZ2UtbmFtZT4uLi5cbiIKKyIgICAgUmVwb3J0IHN0YXR1cyBvZiBzcGVjaWZpZWQgcGFja2FnZS5cbiIKKyJCPC1MPiwgQjwtLWxpc3RmaWxlcz4gSTxwYWNrYWdlLW5hbWU+Li4uXG4iCisiICAgIExpc3QgZmlsZXMgaW5zdGFsbGVkIHRvIHlvdXIgc3lzdGVtIGZyb20gSTxwYWNrYWdlLW5hbWU+LlxuIgorIkI8LVM+LCBCPC0tc2VhcmNoPiBJPGZpbGVuYW1lLXNlYXJjaC1wYXR0ZXJuPi4uLlxuIgorIiAgICBTZWFyY2ggZm9yIGEgZmlsZW5hbWUgZnJvbSBpbnN0YWxsZWQgcGFja2FnZXMuXG4iCisiQjwtcD4sIEI8LS1wcmludC1hdmFpbD4gSTxwYWNrYWdlLW5hbWU+Li4uXG4iCisiICAgIERpc3BsYXkgZGV0YWlscyBhYm91dCBJPHBhY2thZ2UtbmFtZT4sIGFzIGZvdW5kIGluXG4iCisiICAgIEk8L3Zhci9saWIvZHBrZy9hdmFpbGFibGU+LiBVc2VycyBvZiBBUFQtYmFzZWQgZnJvbnRlbmRzXG4iCisiICAgIHNob3VsZCB1c2UgQjxhcHQtY2FjaGUgc2hvdz4gSTxwYWNrYWdlLW5hbWU+IGluc3RlYWQuXG4iCittc2dzdHIgIiIKKyJCPC1sPiwgQjwtLWxpc3Q+IEk8bW90aWYtZHUtbm9tLWR1LXBhcXVldD4gLi4uXG4iCisiICAgIEFmZmljaGUgbGEgbGlzdGUgZGVzIHBhcXVldHMgcXVpIGNvcnJlc3BvbmRlbnQgYXUgbW90aWYuXG4iCisiQjwtcz4sIEI8LS1zdGF0dXM+IEk8bm9tLWR1LXBhcXVldD4gLi4uXG4iCisiICAgIERvbm5lIGwnw6l0YXQgZHUgcGFxdWV0IGluZGlxdcOpLlxuIgorIkI8LUw+LCBCPC0tbGlzdGZpbGVzPiBJPG5vbS1wYXF1ZXQ+IC4uLlxuIgorIiAgICBBZmZpY2hlIGxhIGxpc3RlIGRlcyBmaWNoaWVycyBpbnN0YWxsw6lzIHF1aSBhcHBhcnRpZW5uZW50XG4iCisiICAgIMOgIEk8cGFxdWV0Pi5cbiIKKyJCPC1TPiwgQjwtLXNlYXJjaD4gSTxtb3RpZi1kdS1maWNoaWVyLcOgLXJlY2hlcmNoZXI+IC4uLlxuIgorIiAgICBSZWNoZXJjaGUgdW4gZmljaGllciBkYW5zIGxlcyBwYXF1ZXRzIGluc3RhbGzDqXMuXG4iCisiQjwtcD4sIEI8LS1wcmludC1hdmFpbD4gSTxub20tZHUtcGFxdWV0PlxuIgorIiAgICBBZmZpY2hlIGxlcyBpbmZvcm1hdGlvbnMgdHJvdXbDqWVzIGRhbnMgSTwvdmFyL2xpYi9kcGtnL2F2YWlsYWJsZT5cbiIKKyIgICAgw6AgcHJvcG9zIGRlIEk8cGFxdWV0Pi4gTGVzIHV0aWxpc2F0ZXVycyBkZXMgaW50ZXJmYWNlcyDDoCBBUFRcbiIKKyIgICAgZGV2cmFpZW50IHBsdXTDtHQgdXRpbGlzZXIgQjxhcHQtY2FjaGUgc2hvdz4gSTxub20tZHUtcGFxdWV0Pi5cbiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2cuMTozMTAgZHBrZy1hcmNoaXRlY3R1cmUuMTo2NyBkcGtnLWJ1aWxkcGFja2FnZS4xOjUwCisjOiBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6MTggZHBrZy1kaXN0YWRkZmlsZS4xOjI3IGRwa2ctZGViLjE6MTc5CisjOiBkcGtnLWRpdmVydC44OjQyIGRwa2ctZ2VuY2hhbmdlcy4xOjE3IGRwa2ctZ2VuY29udHJvbC4xOjM3CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozNjkgZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMToyNyBkcGtnLW5hbWUuMTozMAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjE1IGRwa2ctcXVlcnkuMToxMTcgZHBrZy1zY2FucGFja2FnZXMuMTo3MQorIzogZHBrZy1zY2Fuc291cmNlcy4xOjQ0IGRwa2ctc2hsaWJkZXBzLjE6MTA2IGRwa2ctc3BsaXQuMToxMzMKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6NTEgZHBrZy10cmlnZ2VyLjE6MzggZHBrZy12ZW5kb3IuMTozNSBkc2VsZWN0LjE6MzYKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTAzIHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMjMKKyMsIG5vLXdyYXAKK21zZ2lkICJPUFRJT05TIgorbXNnc3RyICJPUFRJT05TIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzE2Cittc2dpZCAiIgorIkFsbCBvcHRpb25zIGNhbiBiZSBzcGVjaWZpZWQgYm90aCBvbiB0aGUgY29tbWFuZCBsaW5lIGFuZCBpbiB0aGUgQjxkcGtnPiAiCisiY29uZmlndXJhdGlvbiBmaWxlIEk8L2V0Yy9kcGtnL2Rwa2cuY2ZnPiBvciB0aGUgZmlsZXMgb24gdGhlIGNvbmZpZ3VyYXRpb24gIgorImRpcmVjdG9yeSBJPC9ldGMvZHBrZy9kcGtnLmNmZy5kLz4uIEVhY2ggbGluZSBpbiB0aGUgY29uZmlndXJhdGlvbiBmaWxlIGlzICIKKyJlaXRoZXIgYW4gb3B0aW9uIChleGFjdGx5IHRoZSBzYW1lIGFzIHRoZSBjb21tYW5kIGxpbmUgb3B0aW9uIGJ1dCB3aXRob3V0ICIKKyJsZWFkaW5nIGRhc2hlcykgb3IgYSBjb21tZW50IChpZiBpdCBzdGFydHMgd2l0aCBhIEI8Iz4pLiIKK21zZ3N0ciAiIgorIk9uIHBldXQgc3DDqWNpZmllciB1bmUgb3B0aW9uIMOgIGxhIGZvaXMgc3VyIGxhIGxpZ25lIGRlIGNvbW1hbmRlIGV0IGRhbnMgbGUgIgorImZpY2hpZXIgZGUgY29uZmlndXJhdGlvbiBkZSBCPGRwa2c+LCBJPC9ldGMvZHBrZy9kcGtnLmNmZz4gb3UgZGFucyBsZXMgIgorImZpY2hpZXJzIGR1IHLDqXBlcnRvaXJlIGRlIGNvbmZpZ3VyYXRpb24gSTwvZXRjL2Rwa2cvZHBrZy5jZmcuZC8+LiBDaGFxdWUgIgorImxpZ25lIGRlIGNlIGZpY2hpZXIgZXN0IHNvaXQgdW5lIG9wdGlvbiAoaWRlbnRpcXVlIMOgIHVuZSBvcHRpb24gZW4gbGlnbmUgZGUgIgorImNvbW1hbmRlIG1haXMgc2FucyB0aXJldCksIHNvaXQgdW4gY29tbWVudGFpcmUsIGNvbW1lbsOnYW50IHBhciBCPCM+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTozMTcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tYWJvcnQtYWZ0ZXI9Pkk8bnVtYmVyPiIKK21zZ3N0ciAiQjwtLWFib3J0LWFmdGVyPT5JPG5vbWJyZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTozMjAKK21zZ2lkICJDaGFuZ2UgYWZ0ZXIgaG93IG1hbnkgZXJyb3JzIEI8ZHBrZz4gd2lsbCBhYm9ydC4gVGhlIGRlZmF1bHQgaXMgNTAuIgorbXNnc3RyICIiCisiTW9kaWZpZSBsZSBub21icmUgZCdlcnJldXJzIGF1IGRlbMOgIGR1cXVlbCBCPGRwa2c+IHMnYXJyw6p0ZS4gSWwgZXN0IHBhciAiCisiZMOpZmF1dCDDqWdhbCDDoCA1MC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MzIwCisjLCBuby13cmFwCittc2dpZCAiQjwtQj4sIEI8LS1hdXRvLWRlY29uZmlndXJlPiIKK21zZ3N0ciAiQjwtQj4sIEI8LS1hdXRvLWRlY29uZmlndXJlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjMyNgorbXNnaWQgIiIKKyJXaGVuIGEgcGFja2FnZSBpcyByZW1vdmVkLCB0aGVyZSBpcyBhIHBvc3NpYmlsaXR5IHRoYXQgYW5vdGhlciBpbnN0YWxsZWQgIgorInBhY2thZ2UgZGVwZW5kZWQgb24gdGhlIHJlbW92ZWQgcGFja2FnZS4gU3BlY2lmeWluZyB0aGlzIG9wdGlvbiB3aWxsIGNhdXNlICIKKyJhdXRvbWF0aWMgZGVjb25maWd1cmF0aW9uIG9mIHRoZSBwYWNrYWdlIHdoaWNoIGRlcGVuZGVkIG9uIHRoZSByZW1vdmVkICIKKyJwYWNrYWdlLiIKK21zZ3N0ciAiIgorIlF1YW5kIHVuIHBhcXVldCBlc3Qgc3VwcHJpbcOpLCBpbCBwZXV0IGFycml2ZXIgcXUndW4gcGFxdWV0IGluc3RhbGzDqSAiCisiZMOpcGVuZGFpdCBkdSBwYXF1ZXQgc3VwcHJpbcOpLiBFbiBzcMOpY2lmaWFudCBjZXR0ZSBvcHRpb24sIG9uIG9idGllbnQgbGEgIgorImTDqWNvbmZpZ3VyYXRpb24gYXV0b21hdGlxdWUgZHUgcGFxdWV0IHF1aSBkw6lwZW5kYWl0IGR1IHBhcXVldCBzdXBwcmltw6kuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjMyNgorIywgbm8td3JhcAorbXNnaWQgIkI8LUQ+STxvY3RhbD5CPCwgLS1kZWJ1Zz0+STxvY3RhbD4iCittc2dzdHIgIkI8LUQ+STxvY3RhbD5CPCwgLS1kZWJ1Zz0+STxvY3RhbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTozMzIKK21zZ2lkICIiCisiU3dpdGNoIGRlYnVnZ2luZyBvbi4gSTxvY3RhbD4gaXMgZm9ybWVkIGJ5IGJpdHdpc2Utb3JyaW5nIGRlc2lyZWQgdmFsdWVzICIKKyJ0b2dldGhlciBmcm9tIHRoZSBsaXN0IGJlbG93IChub3RlIHRoYXQgdGhlc2UgdmFsdWVzIG1heSBjaGFuZ2UgaW4gZnV0dXJlICIKKyJyZWxlYXNlcykuIEI8LURoPiBvciBCPC0tZGVidWc9aGVscD4gZGlzcGxheSB0aGVzZSBkZWJ1Z2dpbmcgdmFsdWVzLiIKK21zZ3N0ciAiIgorIkRlbWFuZGUgZGUgZMOpYm9nYWdlLiBJPG9jdGFsPiBlc3QgZm9ybcOpIGVuIGZhaXNhbnQgdW4gwqvCoG91wqDCuyBsb2dpcXVlIGVudHJlICIKKyJkZXMgdmFsZXVycyBzb3VoYWl0w6llcyBhcHBhcnRlbmFudCDDoCBsYSBsaXN0ZSBjaS1kZXNzb3VzIChub3RleiBxdWUgY2VzICIKKyJ2YWxldXJzIHBvdXJyb250IGNoYW5nZXIgZGFucyBsZXMgcHJvY2hhaW5lcyB2ZXJzaW9ucykuIEI8LURoPiBvdSBCPC0tIgorImRlYnVnPWhlbHA+IGFmZmljaGUgY2VzIHZhbGV1cnMgZGUgZMOpYm9nYWdlLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjM0NworIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICIiCisjfCAiICAgIG51bWJlciAgZGVzY3JpcHRpb25cbiIKKyN8ICIgICAgICAgICAxICAgR2VuZXJhbGx5IGhlbHBmdWwgcHJvZ3Jlc3MgaW5mb3JtYXRpb25cbiIKKyN8ICIgICAgICAgICAyICAgSW52b2NhdGlvbiBhbmQgc3RhdHVzIG9mIG1haW50YWluZXIgc2NyaXB0c1xuIgorI3wgIiAgICAgICAgMTAgICBPdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWRcbiIKKyN8ICIgICAgICAgMTAwICAgTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWRcbiIKKyN8ICIgICAgICAgIDIwICAgT3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZVxuIgorI3wgIiAgICAgICAyMDAgICBMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGVcbiIKKyN8ICIgICAgICAgIDQwICAgRGVwZW5kZW5jaWVzIGFuZCBjb25mbGljdHNcbiIKKyN8ICIgICAgICAgNDAwICAgTG90cyBvZiBkZXBlbmRlbmNpZXMvY29uZmxpY3RzIG91dHB1dFxuIgorI3wgIiAgICAgMTAwMDAgICBUcmlnZ2VyIGFjdGl2YXRpb24gYW5kIHByb2Nlc3NpbmdcbiIKKyN8ICIgICAgIDIwMDAwICAgTG90cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzXG4iCisjfCAiICAgICA0MDAwMCAgIFNpbGx5IGFtb3VudHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2Vyc1xuIgorI3wgIiAgICAgIDEwMDAgICBMb3RzIG9mIGRyaXZlbCBhYm91dCBlLmcuIHRoZSBkcGtnL2luZm8gZGlyXG4iCisjfCAiICAgICAgMjAwMCAgIEluc2FuZSBhbW91bnRzIG9mIGRyaXZlbFxuIgorbXNnaWQgIiIKKyIgICAgTnVtYmVyICAgRGVzY3JpcHRpb25cbiIKKyIgICAgICAgICAxICAgR2VuZXJhbGx5IGhlbHBmdWwgcHJvZ3Jlc3MgaW5mb3JtYXRpb25cbiIKKyIgICAgICAgICAyICAgSW52b2NhdGlvbiBhbmQgc3RhdHVzIG9mIG1haW50YWluZXIgc2NyaXB0c1xuIgorIiAgICAgICAgMTAgICBPdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWRcbiIKKyIgICAgICAgMTAwICAgTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWRcbiIKKyIgICAgICAgIDIwICAgT3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZVxuIgorIiAgICAgICAyMDAgICBMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGVcbiIKKyIgICAgICAgIDQwICAgRGVwZW5kZW5jaWVzIGFuZCBjb25mbGljdHNcbiIKKyIgICAgICAgNDAwICAgTG90cyBvZiBkZXBlbmRlbmNpZXMvY29uZmxpY3RzIG91dHB1dFxuIgorIiAgICAgMTAwMDAgICBUcmlnZ2VyIGFjdGl2YXRpb24gYW5kIHByb2Nlc3NpbmdcbiIKKyIgICAgIDIwMDAwICAgTG90cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzXG4iCisiICAgICA0MDAwMCAgIFNpbGx5IGFtb3VudHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2Vyc1xuIgorIiAgICAgIDEwMDAgICBMb3RzIG9mIGRyaXZlbCBhYm91dCBlLmcuIHRoZSBkcGtnL2luZm8gZGlyXG4iCisiICAgICAgMjAwMCAgIEluc2FuZSBhbW91bnRzIG9mIGRyaXZlbFxuIgorbXNnc3RyICIiCisiIG5vbWJyZSAgZGVzY3JpcHRpb25cbiIKKyIgICAgMSAgIEluZm9ybWF0aW9ucyBkZSBwcm9ncmVzc2lvbiBcbiIKKyIgICAgICAgIGVuIGfDqW7DqXJhbCB1dGlsZXNcbiIKKyIgICAgMiAgIEFwcGVsIGV0IMOpdGF0IGRlcyBzY3JpcHRzIGR1IHJlc3BvbnNhYmxlXG4iCisiICAgMTAgICBTb3J0aWUgcG91ciBjaGFxdWUgZmljaGllciB0cmFpdMOpXG4iCisiICAxMDAgICBEZSBub21icmV1c2VzIHNvcnRpZXMgcG91ciBjaGFxdWUgZmljaGllclxuIgorIiAgICAgICAgdHJhaXTDqVxuIgorIiAgIDIwICAgU29ydGllIHBvdXIgY2hhcXVlIGZpY2hpZXIgZGUgY29uZmlndXJhdGlvblxuIgorIiAgMjAwICAgRGUgbm9tYnJldXNlcyBzb3J0aWVzIHBvdXIgY2hhcXVlIGZpY2hpZXJcbiIKKyIgICAgICAgIGRlIGNvbmZpZ3VyYXRpb25cbiIKKyIgICA0MCAgIETDqXBlbmRhbmNlcyBldCBjb25mbGl0c1xuIgorIiAgNDAwICAgRGUgbm9tYnJldXNlcyBzb3J0aWVzIHBvdXIgbGVzIGTDqXBlbmRhbmNlc1xuIgorIiAgICAgICAgZXQgbGVzIGNvbmZsaXRzXG4iCisiMTAwMDAgICBTb3J0aWUgc3VyIGwnYWN0aXZhdGlvbiBldCBsZSB0cmFpdGVtZW50IGRlcyBhY3Rpb25zIGRpZmbDqXLDqWVzXG4iCisiMjAwMDAgICBEZSBub21icmV1c2VzIHNvcnRpZXMgc3VyIGxlcyBhY3Rpb25zIGRpZmbDqXLDqWVzXG4iCisiNDAwMDAgICBRdWFudGl0w6kgc3R1cGlkZSBkZSBzb3J0aWVzIHN1ciBsZXMgYWN0aW9ucyBkaWZmw6lyw6llc1xuIgorIiAxMDAwICAgQmVhdWNvdXAgZGUgcmFkb3RhZ2Ugw6AgcHJvcG9zIGR1IHLDqXBlcnRvaXJlXG4iCisiICAgICAgICBkcGtnL2luZm8gXG4iCisiIDIwMDAgICBRdWFudGl0w6kgc3R1cGlkZSBkZSByYWRvdGFnZVxuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjM0NworIywgbm8td3JhcAorbXNnaWQgIkI8LS1mb3JjZS0+STx0aGluZ3M+LCBCPC0tbm8tZm9yY2UtPkk8dGhpbmdzPiwgQjwtLXJlZnVzZS0+STx0aGluZ3M+IgorbXNnc3RyICJCPC0tZm9yY2UtPkk8cXVlbHF1ZS1jaG9zZT4sIEI8LS1uby1mb3JjZS0+STxxdWVscXVlLWNob3NlPiwgQjwtLXJlZnVzZS0+STxxdWVscXVlLWNob3NlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjM1NAorbXNnaWQgIiIKKyJGb3JjZSBvciByZWZ1c2UgKEI8bm8tZm9yY2U+IGFuZCBCPHJlZnVzZT4gbWVhbiB0aGUgc2FtZSB0aGluZykgIHRvIGRvIHNvbWUgIgorInRoaW5ncy4gSTx0aGluZ3M+IGlzIGEgY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2YgdGhpbmdzIHNwZWNpZmllZCBiZWxvdy4gQjwtLSIKKyJmb3JjZS1oZWxwPiBkaXNwbGF5cyBhIG1lc3NhZ2UgZGVzY3JpYmluZyB0aGVtLiAgVGhpbmdzIG1hcmtlZCB3aXRoICgqKSBhcmUgIgorImZvcmNlZCBieSBkZWZhdWx0LiIKK21zZ3N0ciAiIgorIkZvcmNlciBvdSByZWZ1c2VyIChCPG5vLWZvcmNlPiBldCBCPHJlZnVzZT4gc2lnbmlmaWVudCBsYSBtw6ptZSBjaG9zZSkgZGUgIgorImZhaXJlIHF1ZWxxdWUgY2hvc2UuIEk8cXVlbHF1ZS1jaG9zZT4gZXN0IHVuZSBsaXN0ZSBkJ2FjdGlvbnMgc8OpcGFyw6llcyBwYXIgIgorImRlcyB2aXJndWxlcywgZMOpY3JpdGVzIGNpLWFwcsOocy4gQjwtLWZvcmNlLWhlbHA+IGFmZmljaGUgdW4gbWVzc2FnZSBxdWkgbGVzICIKKyJkw6ljcml0LiBMZXMgYWN0aW9ucyBtYXJxdcOpZXMgZCd1biAoKikgc29udCBmb3Jjw6llcyBwYXIgZMOpZmF1dC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTozNTgKK21zZ2lkICIiCisiSTxXYXJuaW5nOiBUaGVzZSBvcHRpb25zIGFyZSBtb3N0bHkgaW50ZW5kZWQgdG8gYmUgdXNlZCBieSBleHBlcnRzIG9ubHkuICIKKyJVc2luZyB0aGVtIHdpdGhvdXQgZnVsbHkgdW5kZXJzdGFuZGluZyB0aGVpciBlZmZlY3RzIG1heSBicmVhayB5b3VyIHdob2xlICIKKyJzeXN0ZW0uPiIKK21zZ3N0ciAiIgorIkk8QXZlcnRpc3NlbWVudMKgOiBDZXMgb3B0aW9ucyBzb250IHByaW5jaXBhbGVtZW50IGRlc3RpbsOpZXMgYXV4IGV4cGVydHMuIFVuICIKKyJ1c2FnZSBhdXF1ZWwgbWFucXVlIGxhIHBsZWluZSBjb21wcsOpaGVuc2lvbiBkZSBsZXVycyBlZmZldHMgcGV1dCBjYXNzZXIgbGUgIgorInN5c3TDqG1lIGVudGllci4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzYxCittc2dpZCAiQjxhbGw+OiBUdXJucyBvbiAob3Igb2ZmKSBhbGwgZm9yY2Ugb3B0aW9ucy4iCittc2dzdHIgIkI8YWxsPsKgOiBNZXQgZW4gb2V1dnJlIChvdSBwYXMpIHRvdXRlcyBsZXMgb3B0aW9ucyBkZSBmb3LDp2FnZS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTozNjQKK21zZ2lkICIiCisiQjxkb3duZ3JhZGU+KCopOiBJbnN0YWxsIGEgcGFja2FnZSwgZXZlbiBpZiBuZXdlciB2ZXJzaW9uIG9mIGl0IGlzIGFscmVhZHkgIgorImluc3RhbGxlZC4iCittc2dzdHIgIiIKKyJCPGRvd25ncmFkZT4oKinCoDogSW5zdGFsbGUgdW4gcGFxdWV0LCBtw6ptZSBzaSB1bmUgdmVyc2lvbiBwbHVzIHLDqWNlbnRlIGR1ICIKKyJwYXF1ZXQgZXN0IGTDqWrDoCBpbnN0YWxsw6llLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjM3MQorbXNnaWQgIiIKKyJJPFdhcm5pbmc6IEF0IHByZXNlbnQgZHBrZyBkb2VzIG5vdCBkbyBhbnkgZGVwZW5kZW5jeSBjaGVja2luZyBvbiBkb3duZ3JhZGVzICIKKyJhbmQgdGhlcmVmb3JlIHdpbGwgbm90IHdhcm4geW91IGlmIHRoZSBkb3duZ3JhZGUgYnJlYWtzIHRoZSBkZXBlbmRlbmN5IG9mICIKKyJzb21lIG90aGVyIHBhY2thZ2UuIFRoaXMgY2FuIGhhdmUgc2VyaW91cyBzaWRlIGVmZmVjdHMsIGRvd25ncmFkaW5nICIKKyJlc3NlbnRpYWwgc3lzdGVtIGNvbXBvbmVudHMgY2FuIGV2ZW4gbWFrZSB5b3VyIHdob2xlIHN5c3RlbSB1bnVzYWJsZS4gVXNlICIKKyJ3aXRoIGNhcmUuPiIKK21zZ3N0ciAiIgorIkk8QXZlcnRpc3NlbWVudMKgOiBQb3VyIGwnaW5zdGFudCwgZHBrZyBuZSByZWNoZXJjaGUgcGFzIGxlcyBkw6lwZW5kYW5jZXMgbG9ycyAiCisiZCd1biByZXRvdXIgw6AgdW5lIHZlcnNpb24gaW5mw6lyaWV1cmUgZCd1biBwYXF1ZXTCoDsgaWwgbmUgdm91cyBwcsOpdmllbmRyYSBwYXMgIgorInNpIGxhIHZlcnNpb24gY2hvaXNpZSBjYXNzZSBsZXMgZMOpcGVuZGFuY2VzIGQndW4gYXV0cmUgcGFxdWV0LiBDZWxhIHBldXQgIgorImF2b2lyIGRlIHPDqXJpZXVzZXMgY29uc8OpcXVlbmNlc8KgO8KgZXQgc2kgbCdvbiByZXZpZW50IMOgIGRlcyB2ZXJzaW9ucyAiCisiYW50w6lyaWV1cmVzIGRlcyBwcm9ncmFtbWVzIGVzc2VudGllbHMgZHUgc3lzdMOobWUsIGNlbGEgcGV1dCByZW5kcmUgdm90cmUgIgorInN5c3TDqG1lIGludXRpbGlzYWJsZS4gTid1dGlsaXNlciBxdSdhdmVjIHByw6ljYXV0aW9uLj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTozNzUKK21zZ2lkICIiCisiQjxjb25maWd1cmUtYW55PjogQ29uZmlndXJlIGFsc28gYW55IHVucGFja2VkIGJ1dCB1bmNvbmZpZ3VyZWQgcGFja2FnZXMgb24gIgorIndoaWNoIHRoZSBjdXJyZW50IHBhY2thZ2UgZGVwZW5kcy4iCittc2dzdHIgIiIKKyJCPGNvbmZpZ3VyZS1hbnk+wqA6IENvbmZpZ3VyZSBhdXNzaSBsZXMgcGFxdWV0cyBkw6lwYXF1ZXTDqXMgbWFpcyBub24gIgorImNvbmZpZ3Vyw6lzIGRvbnQgZMOpcGVuZCBsZSBwYXF1ZXQgZW4gcXVlc3Rpb24uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6Mzc4Cittc2dpZCAiQjxob2xkPjogUHJvY2VzcyBwYWNrYWdlcyBldmVuIHdoZW4gbWFya2VkIFwiaG9sZFwiLiIKK21zZ3N0ciAiQjxob2xkPsKgOiBUcmFpdGUgbcOqbWUgbGVzIHBhcXVldHMgbWFycXXDqXMgwqvCoMOgIGdhcmRlcsKgwrsgKMKrwqBob2xkwqDCuykuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzgzCittc2dpZCAiIgorIkI8cmVtb3ZlLXJlaW5zdHJlcT46IFJlbW92ZSBhIHBhY2thZ2UsIGV2ZW4gaWYgaXQncyBicm9rZW4gYW5kIG1hcmtlZCB0byAiCisicmVxdWlyZSByZWluc3RhbGxhdGlvbi4gVGhpcyBtYXksIGZvciBleGFtcGxlLCBjYXVzZSBwYXJ0cyBvZiB0aGUgcGFja2FnZSB0byAiCisicmVtYWluIG9uIHRoZSBzeXN0ZW0sIHdoaWNoIHdpbGwgdGhlbiBiZSBmb3Jnb3R0ZW4gYnkgQjxkcGtnPi4iCittc2dzdHIgIiIKKyJCPHJlbW92ZS1yZWluc3RyZXE+wqA6IFN1cHByaW1lIHVuIHBhcXVldCwgbcOqbWUgZMOpZmVjdHVldXggZXQgbWFycXXDqSBjb21tZSAiCisiZGVtYW5kYW50IHVuZSByw6lpbnN0YWxsYXRpb24uIElsIHNlIHBldXQsIGTDqHMgbG9ycywgcXVlIGRlcyDDqWzDqW1lbnRzIGR1ICIKKyJwYXF1ZXQgcmVzdGVudCBkYW5zIGxlIHN5c3TDqG1lIGV0IHNvaWVudCBvdWJsacOpcyBwYXIgQjxkcGtnPi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTozODgKK21zZ2lkICIiCisiQjxyZW1vdmUtZXNzZW50aWFsPjogUmVtb3ZlLCBldmVuIGlmIHRoZSBwYWNrYWdlIGlzIGNvbnNpZGVyZWQgZXNzZW50aWFsLiAiCisiRXNzZW50aWFsIHBhY2thZ2VzIGNvbnRhaW4gbW9zdGx5IHZlcnkgYmFzaWMgVW5peCBjb21tYW5kcy4gUmVtb3ZpbmcgdGhlbSAiCisibWlnaHQgY2F1c2UgdGhlIHdob2xlIHN5c3RlbSB0byBzdG9wIHdvcmtpbmcsIHNvIHVzZSB3aXRoIGNhdXRpb24uIgorbXNnc3RyICIiCisiQjxyZW1vdmUtZXNzZW50aWFsPsKgOiBzdXBwcmltZSB1biBwYXF1ZXQgbcOqbWUgcydpbCBlc3QgY29uc2lkw6lyw6kgY29tbWUgIgorImluZGlzcGVuc2FibGUuIExlcyBwYXF1ZXRzIMKrwqBFc3NlbnRpYWzCoMK7IGNvbXBvcnRlbnQgbGVzIGNvbW1hbmRlcyBVbml4IGxlcyAiCisicGx1cyBmb25kYW1lbnRhbGVzIGV0IGxlcyBlbmxldmVyIHBldXQgY2Fzc2VyIGxlIHN5c3TDqG1lIGVudGllci4gSWwgZmF1dCAiCisidXRpbGlzZXIgY2V0dGUgb3B0aW9uIGF2ZWMgcHJ1ZGVuY2UuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzkxCittc2dpZCAiQjxkZXBlbmRzPjogVHVybiBhbGwgZGVwZW5kZW5jeSBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzLiIKK21zZ3N0ciAiIgorIkI8ZGVwZW5kcz7CoDogQ2hhbmdlIHRvdXMgbGVzIHByb2Jsw6htZXMgZGUgZMOpcGVuZGFuY2UgZW4gYXZlcnRpc3NlbWVudHMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6Mzk0Cittc2dpZCAiIgorIkI8ZGVwZW5kcy12ZXJzaW9uPjogRG9uJ3QgY2FyZSBhYm91dCB2ZXJzaW9ucyB3aGVuIGNoZWNraW5nIGRlcGVuZGVuY2llcy4iCittc2dzdHIgIiIKKyJCPGRlcGVuZHMtdmVyc2lvbj7CoDogSWdub3JlIGxlcyB2ZXJzaW9ucyBkYW5zIGxlcyBxdWVzdGlvbnMgZGUgZMOpcGVuZGFuY2UuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6Mzk3Cittc2dpZCAiQjxicmVha3M+OiBJbnN0YWxsLCBldmVuIGlmIHRoaXMgd291bGQgYnJlYWsgYW5vdGhlciBwYWNrYWdlLiIKK21zZ3N0ciAiIgorIkI8YnJlYWtzPjogRm9yY2UgbCdpbnN0YWxsYXRpb24sIG3Dqm1lIHNpIGNlbGEgcmlzcXVlIGRlIGNhc3NlciB1biBhdXRyZSAiCisicGFxdWV0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQwMQorbXNnaWQgIiIKKyJCPGNvbmZsaWN0cz46IEluc3RhbGwsIGV2ZW4gaWYgaXQgY29uZmxpY3RzIHdpdGggYW5vdGhlciBwYWNrYWdlLiBUaGlzIGlzICIKKyJkYW5nZXJvdXMsIGZvciBpdCB3aWxsIHVzdWFsbHkgY2F1c2Ugb3ZlcndyaXRpbmcgb2Ygc29tZSBmaWxlcy4iCittc2dzdHIgIiIKKyJCPGNvbmZsaWN0cz7CoDogSW5zdGFsbGUgdW4gcGFxdWV0LCBtw6ptZSBzJ2lsIGVzdCBlbiBjb25mbGl0IGF2ZWMgdW4gYXV0cmUgIgorInBhcXVldC4gQydlc3QgZGFuZ2VyZXV4IGNhciBoYWJpdHVlbGxlbWVudCBjZWxhIHByb2R1aXQgbGUgcmVtcGxhY2VtZW50IGRlICIKKyJjZXJ0YWlucyBmaWNoaWVycy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0MDYKK21zZ2lkICIiCisiQjxjb25mbWlzcz46IEFsd2F5cyBpbnN0YWxsIGEgbWlzc2luZyBjb25mZmlsZS4gVGhpcyBpcyBkYW5nZXJvdXMsIHNpbmNlIGl0ICIKKyJtZWFucyBub3QgcHJlc2VydmluZyBhIGNoYW5nZSAocmVtb3ZpbmcpIG1hZGUgdG8gdGhlIGZpbGUuIgorbXNnc3RyICIiCisiQjxjb25mbWlzcz7CoDogSW5zdGFsbGUgdW4gZmljaGllciBkZSBjb25maWd1cmF0aW9uIG1hbnF1YW50LiBDZXR0ZSBvcMOpcmF0aW9uICIKKyJlc3RkYW5nZXJldXNlLCBwdWlzcXVlIGxlcyBjaGFuZ2VtZW50cyBhcHBvcnTDqXMgYXUgZmljaGllciBuZSBzZXJvbnQgcGFzICIKKyJwcsOpc2VydsOpcyAoc3VwcHJlc3Npb24pLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQxMQorbXNnaWQgIiIKKyJCPGNvbmZuZXc+OiBJZiBhIGNvbmZmaWxlIGhhcyBiZWVuIG1vZGlmaWVkIGFsd2F5cyBpbnN0YWxsIHRoZSBuZXcgdmVyc2lvbiAiCisid2l0aG91dCBwcm9tcHRpbmcsIHVubGVzcyB0aGUgQjwtLWZvcmNlLWNvbmZkZWY+IGlzIGFsc28gc3BlY2lmaWVkLCBpbiB3aGljaCAiCisiY2FzZSB0aGUgZGVmYXVsdCBhY3Rpb24gaXMgcHJlZmVycmVkLiIKK21zZ3N0ciAiIgorIkI8Y29uZm5ldz7CoDogUXVhbmQgdW4gwqvCoGNvbmZmaWxlwqDCuyBhIMOpdMOpIG1vZGlmacOpLCB0b3Vqb3VycyBpbnN0YWxsZXIgbGEgIgorIm5vdXZlbGxlIHZlcnNpb24gZXQgbmUgcmllbiBkZW1hbmRlciwgc2F1ZiBzaSBsJ29wdGlvbiBCPC0tZm9yY2UtY29uZmRlZj4gIgorImVzdCBhdXNzaSBwcsOpc2VudGUsIGF1cXVlbCBjYXMgbCdhY3Rpb24gcGFyIGTDqWZhdXQgZXN0IGNob2lzaWUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDE2Cittc2dpZCAiIgorIkI8Y29uZm9sZD46IElmIGEgY29uZmZpbGUgaGFzIGJlZW4gbW9kaWZpZWQgYWx3YXlzIGtlZXAgdGhlIG9sZCB2ZXJzaW9uICIKKyJ3aXRob3V0IHByb21wdGluZywgdW5sZXNzIHRoZSBCPC0tZm9yY2UtY29uZmRlZj4gaXMgYWxzbyBzcGVjaWZpZWQsIGluIHdoaWNoICIKKyJjYXNlIHRoZSBkZWZhdWx0IGFjdGlvbiBpcyBwcmVmZXJyZWQuIgorbXNnc3RyICIiCisiQjxjb25mb2xkPsKgOiBRdWFuZCB1biDCq8KgY29uZmZpbGXCoMK7IGEgw6l0w6kgbW9kaWZpw6ksIGdhcmRlciBsJ2FuY2llbm5lIHZlcnNpb24gIgorImV0IG5lIHJpZW4gZGVtYW5kZXIsIHNhdWYgc2kgbCdvcHRpb24gQjwtLWZvcmNlLWNvbmZkZWY+IGVzdCBhdXNzaSBwcsOpc2VudGUsICIKKyJhdXF1ZWwgY2FzIGwnYWN0aW9uIHBhciBkw6lmYXV0IGVzdCBjaG9pc2llLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQyMgorbXNnaWQgIiIKKyJCPGNvbmZkZWY+OiBJZiBhIGNvbmZmaWxlIGhhcyBiZWVuIG1vZGlmaWVkIGFsd2F5cyBjaG9vc2UgdGhlIGRlZmF1bHQgIgorImFjdGlvbi4gSWYgdGhlcmUgaXMgbm8gZGVmYXVsdCBhY3Rpb24gaXQgd2lsbCBzdG9wIHRvIGFzayB0aGUgdXNlciB1bmxlc3MgIgorIkI8LS1mb3JjZS1jb25mbmV3PiBvciBCPC0tZm9yY2UtY29uZm9sZD4gaXMgYWxzbyBiZWVuIGdpdmVuLCBpbiB3aGljaCBjYXNlICIKKyJpdCB3aWxsIHVzZSB0aGF0IHRvIGRlY2lkZSB0aGUgZmluYWwgYWN0aW9uLiIKK21zZ3N0ciAiIgorIkI8Y29uZmRlZj7CoDogVXRpbGlzZSB0b3Vqb3VycyBsJ2FjdGlvbiBwYXIgZMOpZmF1dCBxdWFuZCB1biDCq8KgY29uZmZpbGXCoMK7IGEgIgorIsOpdMOpIG1vZGlmacOpLiBRdWFuZCBpbCBuJ3kgYSBwYXMgZCdhY3Rpb24gcGFyIGTDqWZhdXQsIGxhIGNvbW1hbmRlIHMnYXJyw6p0ZSBldCAiCisiaW50ZXJyb2dlIGwndXRpbGlzYXRldXIsIMOgIG1vaW5zIHF1ZSBsJ29wdGlvbiBCPC0tZm9yY2UtY29uZm5ldz4gb3UgbCdvcHRpb24gIgorIkI8LS1mb3JjZS1jb25mb2xkPiBuJ2FpdCDDqXTDqSBkb25uw6llLCBhdXF1ZWwgY2FzIGVsbGUgc2Ugc2VydCBkZSBjZXMgb3B0aW9ucyAiCisicG91ciBkw6l0ZXJtaW5lciBjZSBxdSdpbCBmYXV0IGZhaXJlLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQyOQorbXNnaWQgIiIKKyJCPGNvbmZhc2s+OiBJZiBhIGNvbmZmaWxlIGhhcyBiZWVuIG1vZGlmaWVkIGFsd2F5cyBvZmZlciB0byByZXBsYWNlIGl0IHdpdGggIgorInRoZSB2ZXJzaW9uIGluIHRoZSBwYWNrYWdlLCBldmVuIGlmIHRoZSB2ZXJzaW9uIGluIHRoZSBwYWNrYWdlIGRpZCBub3QgIgorImNoYW5nZS4gSWYgYW55IG9mIEI8LS1mb3JjZS1jb25mbWlzcz4sIEI8LS1mb3JjZS1jb25mbmV3PiwgQjwtLWZvcmNlLSIKKyJjb25mb2xkPiwgb3IgQjwtLWZvcmNlLWNvbmZkZWY+IGlzIGFsc28gZ2l2ZW4sIGl0IHdpbGwgYmUgdXNlZCB0byBkZWNpZGUgdGhlICIKKyJmaW5hbCBhY3Rpb24uIgorbXNnc3RyICIiCisiQjxjb25mYXNrPsKgOiBTaSB1biBmaWNoaWVyIGRlIGNvbmZpZ3VyYXRpb24gYSDDqXTDqSBtb2RpZmnDqSwgcHJvcG9zZSBkZSBsZSAiCisicmVtcGxhY2VyIGF2ZWMgbGEgdmVyc2lvbiBkdSBwYXF1ZXQsIG3Dqm1lIHNpIGNlbGxlLWNpIG4nYSBwYXMgY2hhbmfDqS4gU2kgIgorImwndW5lIGRlcyBvcHRpb25zIEI8LS1mb3JjZS1jb25mbWlzcz4sIEI8LS1mb3JjZS1jb25mbmV3PiwgQjwtLWZvcmNlLSIKKyJjb25mb2xkPiwgb3UgQjwtLWZvcmNlLWNvbmZkZWY+IGVzdCDDqWdhbGVtZW50IG1lbnRpb25uw6llLCBlbGxlIGTDqXRlcm1pbmVyYSAiCisibCdhY3Rpb24gZmluYWxlbWVudCB1dGlsaXPDqWUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDMyCittc2dpZCAiQjxvdmVyd3JpdGU+OiBPdmVyd3JpdGUgb25lIHBhY2thZ2UncyBmaWxlIHdpdGggYW5vdGhlcidzIGZpbGUuIgorbXNnc3RyICJCPG92ZXJ3cml0ZT7CoDogUmVtcGxhY2UgdW4gZmljaGllciBwYXIgdW4gZmljaGllciBkJ3VuIGF1dHJlIHBhcXVldC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0MzUKK21zZ2lkICJCPG92ZXJ3cml0ZS1kaXI+IE92ZXJ3cml0ZSBvbmUgcGFja2FnZSdzIGRpcmVjdG9yeSB3aXRoIGFub3RoZXIncyBmaWxlLiIKK21zZ3N0ciAiIgorIkI8b3ZlcndyaXRlLWRpcj7CoDogUmVtcGxhY2UgdW4gcsOpcGVydG9pcmUgcGFyIHVuIHLDqXBlcnRvaXJlIGQndW4gYXV0cmUgIgorInBhcXVldC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0MzgKK21zZ2lkICIiCisiQjxvdmVyd3JpdGUtZGl2ZXJ0ZWQ+OiBPdmVyd3JpdGUgYSBkaXZlcnRlZCBmaWxlIHdpdGggYW4gdW5kaXZlcnRlZCB2ZXJzaW9uLiIKK21zZ3N0ciAiIgorIkI8b3ZlcndyaXRlLWRpdmVydGVkPsKgOiBSZW1wbGFjZSB1biBmaWNoaWVyIGTDqXRvdXJuw6kgYXZlYyB1bmUgdmVyc2lvbiBub24gIgorImTDqXRvdXJuw6llLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQ0NgorbXNnaWQgIiIKKyJCPHVuc2FmZS1pbz46IERvIG5vdCBwZXJmb3JtIHNhZmUgSS9PIG9wZXJhdGlvbnMgd2hlbiB1bnBhY2tpbmcuIEN1cnJlbnRseSAiCisidGhpcyBpbXBsaWVzIG5vdCBwZXJmb3JtaW5nIGZpbGUgc3lzdGVtIHN5bmNzIGJlZm9yZSBmaWxlIHJlbmFtZXMsIHdoaWNoIGlzICIKKyJrbm93biB0byBjYXVzZSBzdWJzdGFudGlhbCBwZXJmb3JtYW5jZSBkZWdyYWRhdGlvbiBvbiBzb21lIGZpbGUgc3lzdGVtcywgIgorInVuZm9ydHVuYXRlbHkgdGhlIG9uZXMgdGhhdCByZXF1aXJlIHRoZSBzYWZlIEkvTyBvbiB0aGUgZmlyc3QgcGxhY2UgZHVlIHRvICIKKyJ0aGVpciB1bnJlbGlhYmxlIGJlaGF2aW91ciBjYXVzaW5nIHplcm8tbGVuZ3RoIGZpbGVzIG9uIGFicnVwdCBzeXN0ZW0gIgorImNyYXNoZXMuIgorbXNnc3RyICIiCisiQjx1bnNhZmUtaW8+OiBOZSBwYXMgZWZmZWN0dWVyIGQnYWN0aW9ucyBkJ2VudHLDqWUvc29ydGllIG5vbiBzw7tyZSBsb3JzIGRlIGxhICIKKyJkw6ljb21wcmVzc2lvbi4gQ2VsYSBpbXBsaXF1ZSBhY3R1ZWxsZW1lbnQgZGUgbmUgcGFzIHN5bmNocm9uaXNlciBsZSBzeXN0w6htZSAiCisiZGUgZmljaGllcnMgYXZhbnQgbGUgcmVub21tYWdlIGRlIGZpY2hpZXJzLCBjZSBxdWkgZXN0IHVuZSBjYXVzZSBjb25udWUgZGUgIgorImTDqWdyYWRhdGlvbiBkZXMgcGVyZm9ybWFuY2VzIHN1ciBjZXJ0YWlucyBzeXN0w6htZXMsIGVuIGfDqW7DqXJhbCBjZXV4IHF1aSwgcGV1ICIKKyJmaWFibGVzLCBvbnQgYmVzb2luIGQnYWN0aW9ucyBzw7tyZXMgcG91ciDDqXZpdGVyIGRlIHRlcm1pbmVyIGF2ZWMgZGVzICIKKyJmaWNoaWVycyBkZSB0YWlsbGUgdmlkZSBlbiBjYXMgZCdpbnRlcnJ1cHRpb24gaW5vcGluw6llLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQ1MgorbXNnaWQgIiIKKyJJPE5vdGU+OiBGb3IgZXh0NCwgdGhlIG1haW4gb2ZmZW5kZXIsIGNvbnNpZGVyIHVzaW5nIGluc3RlYWQgdGhlIG1vdW50ICIKKyJvcHRpb24gQjxub2RlbGFsbG9jPiwgd2hpY2ggd2lsbCBmaXggYm90aCB0aGUgcGVyZm9ybWFuY2UgZGVncmFkYXRpb24gYW5kICIKKyJ0aGUgZGF0YSBzYWZldHkgaXNzdWVzLCB0aGUgbGF0dGVyIGJ5IG1ha2luZyB0aGUgZmlsZSBzeXN0ZW0gbm90IHByb2R1Y2UgIgorInplcm8tbGVuZ3RoIGZpbGVzIG9uIGFicnVwdCBzeXN0ZW0gY3Jhc2hlcyB3aXRoIGFueSBzb2Z0d2FyZSBub3QgZG9pbmcgc3luY3MgIgorImJlZm9yZSBhdG9taWMgcmVuYW1lcy4iCittc2dzdHIgIiIKKyJJPE5vdGU+OiBQb3VyIGV4dDQsIGxlIHByaW5jaXBhbCBjb25jZXJuw6ksIGlsIGVzdCBzdWdnw6lyw6kgZGUgcGx1dMO0dCB1dGlsaXNlciAiCisibCdvcHRpb24gZGUgbW9udGFnZSBCPG5vZGVsYWxsb2M+LCBxdWkgY29ycmlnZXJhIMOgIGxhIGZvaXMgbGEgZMOpZ3JhZGF0aW9uICIKKyJkZXMgcGVyZm9ybWFuY2VzIGV0IGxlcyBwcm9ibMOobWVzIGRlIHPDqWN1cml0w6kgZGVzIGRvbm7DqWVzLiBFbGxlIHBlcm1ldCAiCisibm90YW1tZW50IGQnw6l2aXRlciBkZSB0ZXJtaW5lciBhdmVjIGRlcyBmaWNoaWVycyB2aWRlcyBsb3JzIGRlcyBhcnLDqnRzICIKKyJicnV0YXV4IHBvdXIgdG91dCBsb2dpY2llbCBxdWkgbmUgc3luY2hyb25pc2UgcGFzIGxlIHN5c3TDqG1lIGRlIGZpY2hpZXJzICIKKyJhdmFudCBjaGFxdWUgcmVub21tYWdlLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQ1NQorbXNnaWQgIiIKKyJJPFdhcm5pbmc6IFVzaW5nIHRoaXMgb3B0aW9uIG1pZ2h0IGltcHJvdmUgcGVyZm9ybWFuY2UgYXQgdGhlIGNvc3Qgb2YgbG9zaW5nICIKKyJkYXRhLCB1c2Ugd2l0aCBjYXJlLj4iCittc2dzdHIgIiIKKyJJPEF2ZXJ0aXNzZW1lbnQgOiBMJ3V0aWxpc2F0aW9uIGRlIGNldHRlIG9wdGlvbiBwZXV0IGFtw6lsaW9yZXIgbGEgIgorInBlcmZvcm1hbmNlIG1haXMgYXVnbWVudGUgbGUgcmlzcXVlIGRlIHBlcnRlIGRlIGRvbm7DqWVzLiBFbGxlIGVzdCBkb25jIMOgICIKKyJ1dGlsaXNlciBhdmVjIHByw6ljYXV0aW9ucy4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDU4CisjLCBmdXp6eQorI3wgbXNnaWQgIkI8YXJjaGl0ZWN0dXJlPjogUHJvY2VzcyBldmVuIHBhY2thZ2VzIHdpdGggdGhlIHdyb25nIGFyY2hpdGVjdHVyZS4iCittc2dpZCAiQjxhcmNoaXRlY3R1cmU+OiBQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyBvciBubyBhcmNoaXRlY3R1cmUuIgorbXNnc3RyICJCPGFyY2hpdGVjdHVyZT7CoDogVHJhaXRlIG3Dqm1lIGxlcyBwYXF1ZXRzIGQndW5lIGF1dHJlIGFyY2hpdGVjdHVyZSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQ2MQorIywgZnV6enkKKyN8IG1zZ2lkICJCPGFyY2hpdGVjdHVyZT46IFByb2Nlc3MgZXZlbiBwYWNrYWdlcyB3aXRoIHRoZSB3cm9uZyBhcmNoaXRlY3R1cmUuIgorbXNnaWQgIkI8YmFkLXZlcnNpb24+OiBQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyB2ZXJzaW9ucy4iCittc2dzdHIgIkI8YXJjaGl0ZWN0dXJlPsKgOiBUcmFpdGUgbcOqbWUgbGVzIHBhcXVldHMgZCd1bmUgYXV0cmUgYXJjaGl0ZWN0dXJlIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDY0Cittc2dpZCAiIgorIkI8YmFkLXBhdGg+OiBCPFBBVEg+IGlzIG1pc3NpbmcgaW1wb3J0YW50IHByb2dyYW1zLCBzbyBwcm9ibGVtcyBhcmUgbGlrZWx5LiIKK21zZ3N0ciAiIgorIkI8YmFkLXBhdGg+wqA6IFByb2dyYW1tZXMgaW1wb3J0YW50cyBub24gdmlzaWJsZXMgcGFyIGxhIHZhcmlhYmxlIEI8UEFUSD4sIGNlICIKKyJxdWkgdmEgcG9zZXIgZGVzIHByb2Jsw6htZXMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDY3Cittc2dpZCAiQjxub3Qtcm9vdD46IFRyeSB0byAoZGUpaW5zdGFsbCB0aGluZ3MgZXZlbiB3aGVuIG5vdCByb290LiIKK21zZ3N0ciAiQjxub3Qtcm9vdD7CoDogVGVudGUgZGUgKGTDqXMpaW5zdGFsbGVyIG3Dqm1lIHNhbnMgw6p0cmUgcm9vdC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0NzAKK21zZ2lkICJCPGJhZC12ZXJpZnk+OiBJbnN0YWxsIGEgcGFja2FnZSBldmVuIGlmIGl0IGZhaWxzIGF1dGhlbnRpY2l0eSBjaGVjay4iCittc2dzdHIgIiIKKyJCPGJhZC12ZXJpZnk+wqA6IEluc3RhbGxlIHVuIHBhcXVldCBtw6ptZSBzaSBsYSB2w6lyaWZpY2F0aW9uIGRlIHNvbiAiCisiYXV0aGVudGljaXTDqSBhIMOpY2hvdcOpLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo0NzEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0taWdub3JlLWRlcGVuZHM+PUk8cGFja2FnZT4sLi4uIgorbXNnc3RyICJCPC0taWdub3JlLWRlcGVuZHM+PUk8cGFxdWV0PiwuLi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0NzUKK21zZ2lkICIiCisiSWdub3JlIGRlcGVuZGVuY3ktY2hlY2tpbmcgZm9yIHNwZWNpZmllZCBwYWNrYWdlcyAoYWN0dWFsbHksIGNoZWNraW5nIGlzICIKKyJwZXJmb3JtZWQsIGJ1dCBvbmx5IHdhcm5pbmdzIGFib3V0IGNvbmZsaWN0cyBhcmUgZ2l2ZW4sIG5vdGhpbmcgZWxzZSkuIgorbXNnc3RyICIiCisiTmUgdGllbnQgcGFzIGNvbXB0ZSBkZSBsYSB2w6lyaWZpY2F0aW9uIGRlcyBkw6lwZW5kYW5jZXMgcG91ciBsZXMgcGFxdWV0cyAiCisic3DDqWNpZmnDqXMgKGVuIGZhaXQsIGxhIHbDqXJpZmljYXRpb24gZXN0IGZhaXRlIG1haXMgb24gbmUgZG9ubmUgcmllbiBkJ2F1dHJlICIKKyJxdWUgZGVzIGF2ZXJ0aXNzZW1lbnRzKS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NDc1CisjLCBuby13cmFwCittc2dpZCAiQjwtLW5vLWFjdD4sIEI8LS1kcnktcnVuPiwgQjwtLXNpbXVsYXRlPiIKK21zZ3N0ciAiQjwtLW5vLWFjdD4sIEI8LS1kcnktcnVuPiwgQjwtLXNpbXVsYXRlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQ4MAorbXNnaWQgIiIKKyJEbyBldmVyeXRoaW5nIHdoaWNoIGlzIHN1cHBvc2VkIHRvIGJlIGRvbmUsIGJ1dCBkb24ndCB3cml0ZSBhbnkgY2hhbmdlcy4gIgorIlRoaXMgaXMgdXNlZCB0byBzZWUgd2hhdCB3b3VsZCBoYXBwZW4gd2l0aCB0aGUgc3BlY2lmaWVkIGFjdGlvbiwgd2l0aG91dCAiCisiYWN0dWFsbHkgbW9kaWZ5aW5nIGFueXRoaW5nLiIKK21zZ3N0ciAiIgorIkZhaXJlIHRvdXQgY2UgcXVpIGRvaXQgw6p0cmUgZmFpdCwgbWFpcyBuJ8OpY3JpcmUgYXVjdW5lIG1vZGlmaWNhdGlvbi4gT24gIgorInV0aWxpc2UgY2V0dGUgb3B0aW9uIHBvdXIgdm9pciBjZSBxdWkgc2UgcGFzc2Ugc2FucyBtb2RpZmllciBxdW9pIHF1ZSBjZSAiCisic29pdC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0ODUKK21zZ2lkICIiCisiQmUgc3VyZSB0byBnaXZlIEI8LS1uby1hY3Q+IGJlZm9yZSB0aGUgYWN0aW9uLXBhcmFtZXRlciwgb3IgeW91IG1pZ2h0IGVuZCB1cCAiCisid2l0aCB1bmRlc2lyYWJsZSByZXN1bHRzLiAoZS5nLiBCPGRwa2cgLS1wdXJnZSBmb28gLS1uby1hY3Q+IHdpbGwgZmlyc3QgIgorInB1cmdlIHBhY2thZ2UgZm9vIGFuZCB0aGVuIHRyeSB0byBwdXJnZSBwYWNrYWdlIC0tbm8tYWN0LCBldmVuIHRob3VnaCB5b3UgIgorInByb2JhYmx5IGV4cGVjdGVkIGl0IHRvIGFjdHVhbGx5IGRvIG5vdGhpbmcpIgorbXNnc3RyICIiCisiQXNzdXJlei12b3VzIGRlIGRvbm5lciBsJ29wdGlvbiBCPC0tbm8tYWN0PiBhdmFudCBsZSBwYXJhbcOodHJlIGFjdGlvbiwgc2lub24gIgorImRlcyByw6lzdWx0YXRzIGbDomNoZXV4IHNvbnQgcHJvYmFibGVzLiBQYXIgZXhlbXBsZSwgbGEgY29tbWFuZGUgQjxkcGtnIC0tIgorInB1cmdlIGZvbyAtLW5vLWFjdD4gcHVyZ2UgZCdhYm9yZCBsZSBwYXF1ZXQgZm9vIGV0IGVzc2FpZSBlbnN1aXRlIGRlIHB1cmdlciAiCisibGUgcGFxdWV0IC0tbm8tYWN0LCBtw6ptZSBzaSB2b3VzIGNvbXB0aWV6IHF1J2VsbGUgbmUgZmVyYWl0IHJpZW4gZHUgdG91dC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NDg1CisjLCBuby13cmFwCittc2dpZCAiQjwtUj4sIEI8LS1yZWN1cnNpdmU+IgorbXNnc3RyICJCPC1SPiwgQjwtLXJlY3Vyc2l2ZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0OTEKK21zZ2lkICIiCisiUmVjdXJzaXZlbHkgaGFuZGxlIGFsbCByZWd1bGFyIGZpbGVzIG1hdGNoaW5nIHBhdHRlcm4gQjwqLmRlYj4gZm91bmQgYXQgIgorInNwZWNpZmllZCBkaXJlY3RvcmllcyBhbmQgYWxsIG9mIGl0cyBzdWJkaXJlY3Rvcmllcy4gVGhpcyBjYW4gYmUgdXNlZCB3aXRoICIKKyJCPC1pPiwgQjwtQT4sIEI8LS1pbnN0YWxsPiwgQjwtLXVucGFjaz4gYW5kIEI8LS1hdmFpbD4gYWN0aW9ucy4iCittc2dzdHIgIiIKKyJUcmFpdGUgcsOpY3Vyc2l2ZW1lbnQgdG91cyBsZXMgc2ltcGxlcyBmaWNoaWVycyBxdWkgY29ycmVzcG9uZGVudCBhdSBtb3RpZiAiCisiQjwqLmRlYj4gZXQgcXVpIHNlIHRyb3V2ZW50IGRhbnMgbGVzIHLDqXBlcnRvaXJlcyBldCBzb3VzLXLDqXBlcnRvaXJlcyAiCisic3DDqWNpZmnDqXMuIE9uIHBldXQgdXRpbGlzZXIgY2V0dGUgb3B0aW9uIGF2ZWMgbGVzIGFjdGlvbnMgQjwtaT4sIEI8LUE+LCBCPC0tIgorImluc3RhbGw+LCBCPC0tdW5wYWNrPiBldCBCPC0tYXZhaWw+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo0OTEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1HPiIKK21zZ3N0ciAiQjwtRz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0OTUKK21zZ2lkICIiCisiRG9uJ3QgaW5zdGFsbCBhIHBhY2thZ2UgaWYgYSBuZXdlciB2ZXJzaW9uIG9mIHRoZSBzYW1lIHBhY2thZ2UgaXMgYWxyZWFkeSAiCisiaW5zdGFsbGVkLiBUaGlzIGlzIGFuIGFsaWFzIG9mIEI8LS1yZWZ1c2UtZG93bmdyYWRlPi4iCittc2dzdHIgIiIKKyJOZSBwYXMgaW5zdGFsbGVyIHVuIHBhcXVldCBzaSB1bmUgdmVyc2lvbiBwbHVzIHLDqWNlbnRlIGRlIGNlIHBhcXVldCBlc3QgZMOpasOgICIKKyJpbnN0YWxsw6llLiBDJ2VzdCB1biBhbGlhcyBwb3VyIEI8LS1yZWZ1c2UtZG93bmdyYWRlPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NDk1IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjE3IGRwa2ctY2hlY2tidWlsZGRlcHMuMToxOQorIzogZHBrZy1xdWVyeS4xOjExOCBkcGtnLXNobGliZGVwcy4xOjIxMSBkcGtnLXRyaWdnZXIuMTozOQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1hZG1pbmRpcj0+STxkaXI+IgorbXNnc3RyICJCPC0tYWRtaW5kaXI+PUk8ZGlyPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjUwMAorbXNnaWQgIiIKKyJDaGFuZ2UgZGVmYXVsdCBhZG1pbmlzdHJhdGl2ZSBkaXJlY3RvcnksIHdoaWNoIGNvbnRhaW5zIG1hbnkgZmlsZXMgdGhhdCBnaXZlICIKKyJpbmZvcm1hdGlvbiBhYm91dCBzdGF0dXMgb2YgaW5zdGFsbGVkIG9yIHVuaW5zdGFsbGVkIHBhY2thZ2VzLCBldGMuICAiCisiKERlZmF1bHRzIHRvIEk8L3Zhci9saWIvZHBrZz4pIgorbXNnc3RyICIiCisiTW9kaWZpZSBsZSByw6lwZXJ0b2lyZSBkJ2FkbWluaXN0cmF0aW9uIHBhciBkw6lmYXV0LCBxdWkgY29udGllbnQgZGUgbm9tYnJldXggIgorImZpY2hpZXJzIGRvbm5hbnQgZGVzIGluZm9ybWF0aW9ucyBhdSBzdWpldCBkZSBsJ8OpdGF0IGRlcyBwYXF1ZXRzIGluc3RhbGzDqXMgIgorIm91IG5vbiwgZXRjLiAoTGUgcsOpcGVydG9pcmUgcGFyIGTDqWZhdXQgw6l0YW50IEk8L3Zhci9saWIvZHBrZz4pIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjUwMAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1pbnN0ZGlyPT5JPGRpcj4iCittc2dzdHIgIkI8LS1pbnN0ZGlyPT5JPHJlcGVydG9pcmU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTA3Cittc2dpZCAiIgorIkNoYW5nZSBkZWZhdWx0IGluc3RhbGxhdGlvbiBkaXJlY3Rvcnkgd2hpY2ggcmVmZXJzIHRvIHRoZSBkaXJlY3Rvcnkgd2hlcmUgIgorInBhY2thZ2VzIGFyZSB0byBiZSBpbnN0YWxsZWQuIEI8aW5zdGRpcj4gaXMgYWxzbyB0aGUgZGlyZWN0b3J5IHBhc3NlZCB0byAiCisiQjxjaHJvb3Q+KDIpIGJlZm9yZSBydW5uaW5nIHBhY2thZ2UncyBpbnN0YWxsYXRpb24gc2NyaXB0cywgd2hpY2ggbWVhbnMgdGhhdCAiCisidGhlIHNjcmlwdHMgc2VlIEI8aW5zdGRpcj4gYXMgYSByb290IGRpcmVjdG9yeS4gIChEZWZhdWx0cyB0byBJPC8+KSIKK21zZ3N0ciAiIgorIkNoYW5nZSBsZSByw6lwZXJ0b2lyZSBkJ2luc3RhbGxhdGlvbiBwYXIgZMOpZmF1dCBxdWkgaW5kaXF1ZSBvw7kgbGVzIHBhcXVldHMgIgorInZvbnQgw6p0cmUgaW5zdGFsbMOpcy4gQjxpbnN0ZGlyPiBlc3QgYXVzc2kgbGUgbm9tIGR1IHLDqXBlcnRvaXJlIGluZGlxdcOpIMOgICIKKyJCPGNocm9vdD4oMikgYXZhbnQgcXVlIG5lIHNvaWVudCBsYW5jw6lzIGxlcyBzY3JpcHRzIGQnaW5zdGFsbGF0aW9uLCBjZSBxdWkgIgorInNpZ25pZmllIHF1ZSBjZXMgc2NyaXB0cyB2b2llbnQgQjxpbnN0ZGlyPiBjb21tZSByw6lwZXJ0b2lyZSByYWNpbmUuIChMZSAiCisicsOpcGVydG9pcmUgcGFyIGTDqWZhdXQgZXN0IEk8Lz4pLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo1MDcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tcm9vdD0+STxkaXI+IgorbXNnc3RyICJCPC0tcm9vdD0+STxyw6lwZXJ0b2lyZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1MTEKK21zZ2lkICIiCisiQ2hhbmdpbmcgQjxyb290PiBjaGFuZ2VzIEI8aW5zdGRpcj4gdG8gSTxkaXI+IGFuZCBCPGFkbWluZGlyPiB0byBJPGRpcj5CPC8iCisidmFyL2xpYi9kcGtnPi4iCittc2dzdHIgIiIKKyJNb2RpZmllciBCPHJvb3Q+IGNoYW5nZSBCPGluc3RkaXI+IHBhciBJPHLDqXBlcnRvaXJlPiBldCBCPGFkbWluZGlyPiBwYXIgIgorIkk8ZGlyPkI8L3Zhci9saWIvZHBrZz4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjUxMQorIywgbm8td3JhcAorbXNnaWQgIkI8LU8+LCBCPC0tc2VsZWN0ZWQtb25seT4iCittc2dzdHIgIkI8LU8+LCBCPC0tc2VsZWN0ZWQtb25seT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1MTcKK21zZ2lkICIiCisiT25seSBwcm9jZXNzIHRoZSBwYWNrYWdlcyB0aGF0IGFyZSBzZWxlY3RlZCBmb3IgaW5zdGFsbGF0aW9uLiBUaGUgYWN0dWFsICIKKyJtYXJraW5nIGlzIGRvbmUgd2l0aCBCPGRzZWxlY3Q+IG9yIGJ5IEI8ZHBrZz4sIHdoZW4gaXQgaGFuZGxlcyBwYWNrYWdlcy4gRm9yICIKKyJleGFtcGxlLCB3aGVuIGEgcGFja2FnZSBpcyByZW1vdmVkLCBpdCB3aWxsIGJlIG1hcmtlZCBzZWxlY3RlZCBmb3IgIgorImRlaW5zdGFsbGF0aW9uLiIKK21zZ3N0ciAiIgorIlRyYWl0ZXIgc2V1bGVtZW50IGxlcyBwYXF1ZXRzIHF1aSBzb250IHPDqWxlY3Rpb25uw6lzIHBvdXIgbCdpbnN0YWxsYXRpb24uIExhICIKKyJzw6lsZWN0aW9uIGVzdCByw6llbGxlbWVudCBmYWl0ZSBwYXIgQjxkc2VsZWN0PiBvdSBwYXIgQjxkcGtnPiBxdWFuZCBpbHMgIgorIm1hbmlwdWxlbnQgbGVzIHBhcXVldHMuIFBhciBleGVtcGxlLCBxdWFuZCB1biBwYXF1ZXQgZXN0IHN1cHByaW3DqSwgaWwgZXN0ICIKKyJtYXJxdcOpIGNvbW1lIGF5YW50IMOpdMOpIHPDqWxlY3Rpb25uw6kgcG91ciB1bmUgZMOpc2luc3RhbGxhdGlvbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTE3CisjLCBuby13cmFwCittc2dpZCAiQjwtRT4sIEI8LS1za2lwLXNhbWUtdmVyc2lvbj4iCittc2dzdHIgIkI8LUU+LCBCPC0tc2tpcC1zYW1lLXZlcnNpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTIxCittc2dpZCAiIgorIkRvbid0IGluc3RhbGwgdGhlIHBhY2thZ2UgaWYgdGhlIHNhbWUgdmVyc2lvbiBvZiB0aGUgcGFja2FnZSBpcyBhbHJlYWR5ICIKKyJpbnN0YWxsZWQuIgorbXNnc3RyICIiCisiTmUgcGFzIGluc3RhbGxlciBsZSBwYXF1ZXQgc2kgbGEgbcOqbWUgdmVyc2lvbiBkdSBwYXF1ZXQgZXN0IGTDqWrDoCBpbnN0YWxsw6llLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjUyMworbXNnaWQgIkI8LS1wcmUtaW52b2tlPT5JPGNvbW1hbmQ+IgorbXNnc3RyICJCPC0tcHJlLWludm9rZT0+STxjb21tYW5kZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1MjUKK21zZ2lkICJCPC0tcG9zdC1pbnZva2U9Pkk8Y29tbWFuZD4iCittc2dzdHIgIkI8LS1wb3N0LWludm9rZT0+STxjb21tYW5kZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1MzQKK21zZ2lkICIiCisiU2V0IGFuIGludm9rZSBob29rIEk8Y29tbWFuZD4gdG8gYmUgcnVuIHZpYSBgYHNoIC1jJycgYmVmb3JlIG9yIGFmdGVyIHRoZSAiCisiZHBrZyBydW4gZm9yIHRoZSBJPHVucGFjaz4sIEk8Y29uZmlndXJlPiwgSTxpbnN0YWxsPiwgSTx0cmlnZ2Vycy1vbmx5PiwgIgorIkk8cmVtb3ZlPiBhbmQgSTxwdXJnZT4gZHBrZyBhY3Rpb25zLiBUaGlzIG9wdGlvbiBjYW4gYmUgc3BlY2lmaWVkIG11bHRpcGxlICIKKyJ0aW1lcy4gVGhlIG9yZGVyIHRoZSBvcHRpb25zIGFyZSBzcGVjaWZpZWQgaXMgcHJlc2VydmVkLCB3aXRoIHRoZSBvbmVzIGZyb20gIgorInRoZSBjb25maWd1cmF0aW9uIGZpbGVzIHRha2luZyBwcmVjZWRlbmNlLiAgVGhlIGVudmlyb25tZW50IHZhcmlhYmxlICIKKyJCPERQS0dfSE9PS19BQ1RJT04+IGlzIHNldCBmb3IgdGhlIGhvb2tzIHRvIHRoZSBjdXJyZW50IGRwa2cgYWN0aW9uLiBOb3RlOiAiCisiZnJvbnQtZW5kcyBtaWdodCBjYWxsIGRwa2cgc2V2ZXJhbCB0aW1lcyBwZXIgaW52b2NhdGlvbiwgd2hpY2ggbWlnaHQgcnVuIHRoZSAiCisiaG9va3MgbW9yZSB0aW1lcyB0aGFuIGV4cGVjdGVkLiIKK21zZ3N0ciAiIgorIlByb2dyYW1tZSBsJ2V4w6ljdXRpb24gZGUgSTxjb21tYW5kZT4gdmlhIMKrwqBzaCAtY8KgwrsgYXZhbnQgb3UgYXByw6hzICIKKyJsJ2V4w6ljdXRpb24gZGUgZHBrZyBwb3VyIGxlcyBhY3Rpb25zIEk8dW5wYWNrPiwgSTxjb25maWd1cmU+LCBJPGluc3RhbGw+LCAiCisiSTx0cmlnZ2Vycy1vbmx5PiwgSTxyZW1vdmU+IGV0IEk8cHVyZ2U+LiBDZXR0ZSBvcHRpb24gcGV1dCDDqnRyZSB1dGlsaXPDqWUgIgorInBsdXNpZXVycyBmb2lzLiBMJ29yZHJlIGRhbnMgbGVxdWVsIGxlcyBvcHRpb25zIG11bHRpcGxlcyBzb250IGluZGlxdcOpZXMgIgorInNlcmEgcHLDqXNlcnbDqSBldCBjZWxsZXMgaW5kaXF1w6llcyBkYW5zIGxlIGZpY2hpZXIgZGUgY29uZmlndXJhdGlvbiBhdXJvbnQgbGEgIgorInByaW9yaXTDqS4gTGEgdmFyaWFibGUgZCdlbnZpcm9ubmVtZW50IEI8RFBLR19IT09LX0FDVElPTj4gZXN0IHV0aWxpc8OpZSBwb3VyICIKKyJpbmRpcXVlciBhdXggc2NyaXB0cyB1dGlsaXPDqXMgcXVlbGxlIGVzdCBsJ2FjdGlvbiBhY3R1ZWxsZSBkZSBkcGtnLiAiCisiTm90ZcKgOsKgbGVzIGludGVyZmFjZXMgZGUgZHBrZyBwZXV2ZW50IGwnYXBwZWxlciBwbHVzaWV1cnMgZm9pcyDDoCBjaGFxdWUgIgorImludm9jYXRpb24sIGNlIHF1aSBwZXV0IHByb3ZvcXVlciBsJ2V4w6ljdXRpb24gZGVzIMKrwqBob29rc8KgwrsgcGx1cyBzb3V2ZW50IHF1ZSAiCisicHLDqXZ1LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjUzNworbXNnaWQgIkI8LS1wYXRoLWV4Y2x1ZGU9Pkk8Z2xvYi1wYXR0ZXJuPiIKK21zZ3N0ciAiQjwtLXBhdGgtZXhjbHVkZT0+STxtb3RpZi1nbG9iYWw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTM5Cittc2dpZCAiQjwtLXBhdGgtaW5jbHVkZT0+STxnbG9iLXBhdHRlcm4+IgorbXNnc3RyICJCPC0tcGF0aC1pbmNsdWRlPT5JPG1vdGlmLWdsb2JhbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1NDIKK21zZ2lkICIiCisiU2V0IEk8Z2xvYi1wYXR0ZXJuPiBhcyBhIHBhdGggZmlsdGVyLCBlaXRoZXIgYnkgZXhjbHVkaW5nIG9yIHJlLWluY2x1ZGluZyAiCisicHJldmlvdXNseSBleGNsdWRlZCBwYXRocyBtYXRjaGluZyB0aGUgc3BlY2lmaWVkIHBhdHRlcm5zIGR1cmluZyBpbnN0YWxsLiIKK21zZ3N0ciAiIgorIlV0aWxpc2UgSTxtb3RpZi1nbG9iYWw+IGNvbW1lIGZpbHRyZSBkZSBjaGVtaW5zLCBzb2l0IGVuIGV4Y2x1YW50LCBzb2l0IGVuICIKKyJyw6ktaW5jbHVhbnQgZGVzIGNoZW1pbnMgcHLDqWPDqWRlbW1lbnQgZXhjbHVzLCBjb3JyZXNwb25kYW50IGF1IG1vdGlmIGluZGlxdcOpLCAiCisicGVuZGFudCBsJ2luc3RhbGxhdGlvbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1NDUKK21zZ2lkICIiCisiSTxXYXJuaW5nOiB0YWtlIGludG8gYWNjb3VudCB0aGF0IGRlcGVuZGluZyBvbiB0aGUgZXhjbHVkZWQgcGF0aHMgeW91IG1pZ2h0ICIKKyJjb21wbGV0ZWx5IGJyZWFrIHlvdXIgc3lzdGVtLCB1c2Ugd2l0aCBjYXV0aW9uLj4iCittc2dzdHIgIiIKKyJJPEF0dGVudGlvbsKgOsKgZMOpcGVuZHJlIGRlcyBjaGVtaW5zIGV4Y2x1cyBwZXV0IGVudGnDqHJlbWVudCBjYXNzZXIgbGUgIgorInN5c3TDqG1lLiBDZSByw6lnbGFnZSBzb2l0IGRvbmMgw6p0cmUgdXRpbGlzw6kgYXZlYyBwcsOpY2F1dGlvbnMuPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjU1NQorbXNnaWQgIiIKKyJUaGUgZ2xvYiBwYXR0ZXJucyB1c2UgdGhlIHNhbWUgd2lsZGNhcmRzIHVzZWQgaW4gdGhlIHNoZWxsLCB3ZXJlICcqJyBtYXRjaGVzICIKKyJhbnkgc2VxdWVuY2Ugb2YgY2hhcmFjdGVycywgaW5jbHVkaW5nIHRoZSBlbXB0eSBzdHJpbmcgYW5kIGFsc28gJy8nLiBGb3IgIgorImV4YW1wbGUsIEk8Jy91c3IvKi9SRUFEKic+IG1hdGNoZXMgSTwnL3Vzci9zaGFyZS9kb2MvcGFja2FnZS9SRUFETUUnPi4gIEFzICIKKyJ1c3VhbCwgJz8nIG1hdGNoZXMgYW55IHNpbmdsZSBjaGFyYWN0ZXIgKGFnYWluLCBpbmNsdWRpbmcgJy8nKS4gQW5kICdbJyAiCisic3RhcnRzIGEgY2hhcmFjdGVyIGNsYXNzLCB3aGljaCBjYW4gY29udGFpbiBhIGxpc3Qgb2YgY2hhcmFjdGVycywgcmFuZ2VzIGFuZCAiCisiY29tcGxlbWVudGF0aW9ucy4gU2VlIEI8Z2xvYj4oNykgZm9yIGRldGFpbGVkIGluZm9ybWF0aW9uIGFib3V0IGdsb2JiaW5nLiAiCisiTm90ZTogdGhlIGN1cnJlbnQgaW1wbGVtZW50YXRpb24gbWlnaHQgcmUtaW5jbHVkZSBtb3JlIGRpcmVjdG9yaWVzIGFuZCAiCisic3ltbGlua3MgdGhhbiBuZWVkZWQsIHRvIGJlIG9uIHRoZSBzYWZlIHNpZGUgYW5kIGF2b2lkIHBvc3NpYmxlIHVucGFjayAiCisiZmFpbHVyZXMsIGZ1dHVyZSB3b3JrIG1pZ2h0IGZpeCB0aGlzLiIKK21zZ3N0ciAiIgorIkxlcyBtb3RpZnMgZ2xvYmF1eCB1dGlsaXNlbnQgbGVzIG3Dqm1lcyBjYXJhY3TDqHJlcyBqb2tlciBxdWUgbGUgIgorInNoZWxswqBvw7nCoMKrwqAqwqDCuyBjb3JyZXNwb25kIMOgIHVuZSBzw6lxdWVuY2UgcXVlbGNvbnF1ZSBkZSBjYXJhY3TDqHJlcywgeSBjb21wcmlzICIKKyJ1bmUgY2hhw65uZSB2aWRlIG91IGxlIGNhcmFjdMOocmUgwqvCoC/CoMK7LiBBaW5zaSwgSTwnL3Vzci8qL1JFQUQqJz4gY29tcG9ydGVyYSAiCisiSTwnL3Vzci9zaGFyZS9kb2MvcGFja2FnZS9SRUFETUUnPi4gQ29tbWUgdG91am91cnMsIGxlIGNhcmFjdMOocmUgwqvCoD/CoMK7ICIKKyJjb3JyZXNwb25kIMOgIHVuIGNhcmFjdMOocmUgcXVlbGNvbnF1ZSAoeSBjb21wcmlzIMKrwqAvwqDCuykuIExlIGNhcmFjdMOocmUgwqvCoFvCoMK7ICIKKyJtYXJxdWUgbGUgZMOpYnV0IGQndW5lIGNsYXNzZSBkZSBjYXJhY3TDqHJlcywgcXVpIGNvbnRpZW50IHVuZSBsaXN0ZSBkZSAiCisiY2FyYWN0w6hyZXMsIHPDqXJpZXMgZGUgY2FyYWN0w6hyZXMgb3UgY29tcGzDqW1lbnRzIGRlIHPDqXJpZXMuIFZldWlsbGV6ICIKKyJjb25zdWx0ZXIgQjxnbG9iPig3KSBwb3VyIHBsdXMgZCdpbmZvcm1hdGlvbnMgw6AgcHJvcG9zIGRlcyBjb3JyZXNwb25kYW5jZXMgIgorImdsb2JhbGVzLiBOb3RlwqA6wqBsJ2ltcGzDqW1lbnRhdGlvbiBhY3R1ZWxsZSBwb3VycmFpdCByw6ktaW5jbHVyZSBwbHVzIGRlICIKKyJyw6lwZXJ0b2lyZXMgZXQgbGllbnMgc3ltYm9saXF1ZXMgcXVlIG7DqWNlc3NhaXJlLCBwYXIgc291Y2kgZGUgc8OpY3VyaXTDqSBldCAiCisicG91ciDDqXZpdGVyIGRlcyDDqWNoZXMgcG9zc2libGVzIGRlIGTDqWNvbXByZXNzaW9uLiBEZXMgbW9kaWZpY2F0aW9ucyDDoCB2ZW5pciAiCisicG91cnJhaWVudCBjaGFuZ2VyIGNlbGEuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTU4Cittc2dpZCAiIgorIlRoaXMgY2FuIGJlIHVzZWQgdG8gcmVtb3ZlIGFsbCBwYXRocyBleGNlcHQgc29tZSBwYXJ0aWN1bGFyIG9uZXM7IGEgdHlwaWNhbCAiCisiY2FzZSBpczoiCittc2dzdHIgIiIKKyJDZWxhIHBldXQgc2VydmlyIMOgIGV4Y2x1cmUgdG91cyBsZXMgY2hlbWlucyBzYXVmIGNlcnRhaW5zIHNww6ljaWZpcXVlcy4gVW4gIgorImNhcyBjbGFzc2lxdWUgZCd1dGlsaXNhdGlvbiBlc3TCoDoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1NjIKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiQjwtLXBhdGgtZXhjbHVkZT0vdXNyL3NoYXJlL2RvYy8qPlxuIgorIkI8LS1wYXRoLWluY2x1ZGU9L3Vzci9zaGFyZS9kb2MvKi9jb3B5cmlnaHQ+XG4iCittc2dzdHIgIiIKKyJCPC0tcGF0aC1leGNsdWRlPS91c3Ivc2hhcmUvZG9jLyo+XG4iCisiQjwtLXBhdGgtaW5jbHVkZT0vdXNyL3NoYXJlL2RvYy8qL2NvcHlyaWdodD5cbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjU2NQorbXNnaWQgInRvIHJlbW92ZSBhbGwgZG9jdW1lbnRhdGlvbiBmaWxlcyBleGNlcHQgdGhlIGNvcHlyaWdodCBmaWxlcy4iCittc2dzdHIgIiIKKyJxdWkgcGVybWV0IGRlIHN1cHByaW1lciB0b3VzIGxlcyBmaWNoaWVycyBkZSBkb2N1bWVudGF0aW9uIHNhdWYgbGVzIGZpY2hpZXJzICIKKyJkZSDCq8KgY29weXJpZ2h0wqDCuy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1NjkKK21zZ2lkICIiCisiVGhlc2UgdHdvIG9wdGlvbnMgY2FuIGJlIHNwZWNpZmllZCBtdWx0aXBsZSB0aW1lcywgYW5kIGludGVybGVhdmVkIHdpdGggZWFjaCAiCisib3RoZXIuIEJvdGggYXJlIHByb2Nlc3NlZCBpbiB0aGUgZ2l2ZW4gb3JkZXIsIHdpdGggdGhlIGxhc3QgcnVsZSB0aGF0ICIKKyJtYXRjaGVzIGEgZmlsZSBuYW1lIG1ha2luZyB0aGUgZGVjaXNpb24uIgorbXNnc3RyICIiCisiQ2VzIGRldXggb3B0aW9ucyBwZXV2ZW50IMOqdHJlIHV0aWxpc8OpZXMgcGx1c2lldXJzIGZvaXMgZXQgw6l2ZW50dWVsbGVtZW50ICIKKyLDqnRyZSBhbHRlcm7DqWVzIGVudHJlIGVsbGVzLiBMZXMgZGV1eCBzb250IHRyYWl0w6llcyBkYW5zIGwnb3JkcmUgaW5kaXF1w6nCoDrCoGxhICIKKyJkZXJuacOocmUgcsOoZ2xlIGNvcnJlc3BvbmRhbnQgw6AgdW4gZmljaGllciBkb25uw6kgZXN0IGFsb3JzIGNlbGxlIHF1aSBzZXJhICIKKyJ1dGlsaXPDqWUuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjU3MAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1zdGF0dXMtZmQgPkk8bj4iCittc2dzdHIgIkI8LS1zdGF0dXMtZmQgPkk8bj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1NzYKK21zZ2lkICIiCisiU2VuZCBtYWNoaW5lLXJlYWRhYmxlIHBhY2thZ2Ugc3RhdHVzIGFuZCBwcm9ncmVzcyBpbmZvcm1hdGlvbiB0byBmaWxlICIKKyJkZXNjcmlwdG9yIEk8bj4uIFRoaXMgb3B0aW9uIGNhbiBiZSBzcGVjaWZpZWQgbXVsdGlwbGUgdGltZXMuIFRoZSAiCisiaW5mb3JtYXRpb24gaXMgZ2VuZXJhbGx5IG9uZSByZWNvcmQgcGVyIGxpbmUsIGluIG9uZSBvZiB0aGUgZm9sbG93aW5nIGZvcm1zOiIKK21zZ3N0ciAiIgorIkVudm9pZSB1biDDqXRhdCBkdSBwYXF1ZXQgY29tcHLDqWhlbnNpYmxlIHBhciBsYSBtYWNoaW5lIGV0IG1ldCDDoCBqb3VyIGNldHRlICIKKyJpbmZvcm1hdGlvbiBkYW5zIGxlIGZpY2hpZXIgZGUgZGVzY3JpcHRpb24gSTxuPi4gQ2V0dGUgb3B0aW9uIHBldXQgw6p0cmUgIgorInNww6ljaWZpw6llIHBsdXNpZXVycyBmb2lzLiBMJ2luZm9ybWF0aW9uIGVzdCBnw6luw6lyYWxlbWVudCBjb25zdGl0dcOpZSBkJ3VuICIKKyJlbnJlZ2lzdHJlbWVudCBwYXIgbGlnbmUsIGRhbnMgbCd1bmUgZGVzIGZvcm1lcyBzdWl2YW50ZXPCoDoiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTc3CisjLCBuby13cmFwCittc2dpZCAiQjxzdGF0dXM6ID5JPHBhY2thZ2U+Qjw6ID5JPHN0YXR1cz4iCittc2dzdHIgIkI8c3RhdHVzOiA+STxwYXF1ZXQ+Qjw6ID5JPHN0YXR1cz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1ODAKK21zZ2lkICJQYWNrYWdlIHN0YXR1cyBjaGFuZ2VkOyBJPHN0YXR1cz4gaXMgYXMgaW4gdGhlIHN0YXR1cyBmaWxlLiIKK21zZ3N0ciAiIgorIkwnw6l0YXQgZHUgcGFxdWV0IGEgY2hhbmfDqcKgOyBsZSBJPHN0YXR1cz4gZXN0IHRlbCBxdWUgZGFucyBsZSBmaWNoaWVyIGQnw6l0YXQgIgorIijCoMKrc3RhdHVzIGZpbGXCoMK7KS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTgwCisjLCBuby13cmFwCittc2dpZCAiQjxzdGF0dXM6ID5JPHBhY2thZ2U+QjwgOiBlcnJvciA6ID5JPGV4dGVuZGVkLWVycm9yLW1lc3NhZ2U+IgorbXNnc3RyICJCPHN0YXR1czogPkk8cGFxdWV0PkI8IDogZXJyb3IgOiA+STxtZXNzYWdlLWQnZXJyZXVyLWNvbXBsZXQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTg0Cittc2dpZCAiIgorIkFuIGVycm9yIG9jY3VycmVkLiBBbnkgcG9zc2libGUgbmV3bGluZXMgaW4gSTxleHRlbmRlZC1lcnJvci1tZXNzYWdlPiB3aWxsICIKKyJiZSBjb252ZXJ0ZWQgdG8gc3BhY2VzIGJlZm9yZSBvdXRwdXQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTg0CisjLCBuby13cmFwCittc2dpZCAiQjxzdGF0dXM6ID5JPGZpbGU+QjwgOiBjb25mZmlsZS1wcm9tcHQgOiAnPkk8cmVhbC1vbGQ+QjwnICc+STxyZWFsLW5ldz5CPCcgPkk8dXNlcmVkaXRlZD5CPCA+STxkaXN0ZWRpdGVkPiIKK21zZ3N0ciAiQjxzdGF0dXM6ID5JPGZpY2hpZXI+QjwgOiBjb25mZmlsZS1wcm9tcHQgOiAnPkk8cmVhbC1vbGQ+QjwnICc+STxyZWFsLW5ldz5CPCcgPkk8dXNlcmVkaXRlZD5CPCA+STxkaXN0ZWRpdGVkPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjU4NworbXNnaWQgIlVzZXIgaXMgYmVpbmcgYXNrZWQgYSBjb25mZmlsZSBxdWVzdGlvbi4iCittc2dzdHIgIiIKKyJVbmUgcXVlc3Rpb24gcG91ciB1biBmaWNoaWVyIGRlIGNvbmZpZ3VyYXRpb24gdmEgw6p0cmUgcG9zw6llIMOgIGwndXRpbGlzYXRldXIuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjU4NworIywgbm8td3JhcAorbXNnaWQgIkI8cHJvY2Vzc2luZzogPkk8c3RhZ2U+Qjw6ID5JPHBhY2thZ2U+IgorbXNnc3RyICJCPHByb2Nlc3Npbmc6ID5JPHN0YWdlPkI8OiA+STxwYXF1ZXQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTkyCittc2dpZCAiIgorIlNlbnQganVzdCBiZWZvcmUgYSBwcm9jZXNzaW5nIHN0YWdlIHN0YXJ0cy4gSTxzdGFnZT4gaXMgb25lIG9mIEI8dXBncmFkZT4sICIKKyJCPGluc3RhbGw+IChib3RoIHNlbnQgYmVmb3JlIHVucGFja2luZyksIEI8Y29uZmlndXJlPiwgQjx0cmlncHJvYz4sICIKKyJCPGRpc2FwcGVhcj4sIEI8cmVtb3ZlPiwgQjxwdXJnZT4uIgorbXNnc3RyICIiCisiRW52b3nDqSBqdXN0ZSBhdmFudCBsZSBkw6lidXQgZHUgdHJhaXRlbWVudCBkJ3VuIHN0YWdlLiBMZXMgSTxzdGFnZXM+IHNvbnQgIgorIkI8dXBncmFkZT4sIEI8aW5zdGFsbD4gKGxlcyBkZXV4IHNvbnQgZW52b3nDqXMgYXZhbnQgbGUgZMOpcGFxdWV0YWdlKSwgIgorIkI8Y29uZmlndXJlPiwgQjx0cmlncHJvYz4sIEI8ZGlzYXBwZWFyPiwgQjxyZW1vdmU+LCBCPHB1cmdlPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTkzCisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8LS1wb3N0LWludm9rZT0+STxjb21tYW5kPiIKK21zZ2lkICJCPC0tc3RhdHVzLWxvZ2dlcj49STxjb21tYW5kPiIKK21zZ3N0ciAiQjwtLXBvc3QtaW52b2tlPT5JPGNvbW1hbmRlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjU5OAorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiU2VuZCBtYWNoaW5lLXJlYWRhYmxlIHBhY2thZ2Ugc3RhdHVzIGFuZCBwcm9ncmVzcyBpbmZvcm1hdGlvbiB0byBmaWxlICIKKyN8ICJkZXNjcmlwdG9yIEk8bj4uIFRoaXMgb3B0aW9uIGNhbiBiZSBzcGVjaWZpZWQgbXVsdGlwbGUgdGltZXMuIFRoZSAiCisjfCAiaW5mb3JtYXRpb24gaXMgZ2VuZXJhbGx5IG9uZSByZWNvcmQgcGVyIGxpbmUsIGluIG9uZSBvZiB0aGUgZm9sbG93aW5nICIKKyN8ICJmb3JtczoiCittc2dpZCAiIgorIlNlbmQgbWFjaGluZS1yZWFkYWJsZSBwYWNrYWdlIHN0YXR1cyBhbmQgcHJvZ3Jlc3MgaW5mb3JtYXRpb24gdG8gdGhlIHNoZWxsICIKKyJJPGNvbW1hbmQ+J3Mgc3RhbmRhcmQgaW5wdXQuIFRoaXMgb3B0aW9uIGNhbiBiZSBzcGVjaWZpZWQgbXVsdGlwbGUgdGltZXMuICIKKyJUaGUgb3V0cHV0IGZvcm1hdCB1c2VkIGlzIHRoZSBzYW1lIGFzIGluIEI8LS1zdGF0dXMtZmQuPiIKK21zZ3N0ciAiIgorIkVudm9pZSB1biDDqXRhdCBkdSBwYXF1ZXQgY29tcHLDqWhlbnNpYmxlIHBhciBsYSBtYWNoaW5lIGV0IG1ldCDDoCBqb3VyIGNldHRlICIKKyJpbmZvcm1hdGlvbiBkYW5zIGxlIGZpY2hpZXIgZGUgZGVzY3JpcHRpb24gSTxuPi4gQ2V0dGUgb3B0aW9uIHBldXQgw6p0cmUgIgorInNww6ljaWZpw6llIHBsdXNpZXVycyBmb2lzLiBMJ2luZm9ybWF0aW9uIGVzdCBnw6luw6lyYWxlbWVudCBjb25zdGl0dcOpZSBkJ3VuICIKKyJlbnJlZ2lzdHJlbWVudCBwYXIgbGlnbmUsIGRhbnMgbCd1bmUgZGVzIGZvcm1lcyBzdWl2YW50ZXPCoDoiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTk5CisjLCBuby13cmFwCittc2dpZCAiQjwtLWxvZz0+STxmaWxlbmFtZT4iCittc2dzdHIgIkI8LS1sb2c9Pkk8ZmljaGllcj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2MTEKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIkxvZyBzdGF0dXMgY2hhbmdlIHVwZGF0ZXMgYW5kIGFjdGlvbnMgdG8gSTxmaWxlbmFtZT4sIGluc3RlYWQgb2YgdGhlICIKKyN8ICJkZWZhdWx0IEk8L3Zhci9sb2cvZHBrZy5sb2c+LiBJZiB0aGlzIG9wdGlvbiBpcyBnaXZlbiBtdWx0aXBsZSB0aW1lcywgdGhlICIKKyN8ICJsYXN0IGZpbGVuYW1lIGlzIHVzZWQuIExvZyBtZXNzYWdlcyBhcmUgb2YgdGhlIGZvcm0gYFlZWVktTU0tREQgSEg6TU06U1MgIgorI3wgInN0YXR1cyBFPGx0PnN0YXRlRTxndD4gRTxsdD5wa2dFPGd0PiBFPGx0Pmluc3RhbGxlZC12ZXJzaW9uRTxndD4nIGZvciAiCisjfCAic3RhdHVzIGNoYW5nZSB1cGRhdGVzOyBgWVlZWS1NTS1ERCBISDpNTTpTUyBFPGx0PmFjdGlvbkU8Z3Q+ICIKKyN8ICJFPGx0PnBrZ0U8Z3Q+IEU8bHQ+aW5zdGFsbGVkLXZlcnNpb25FPGd0PiBFPGx0PmF2YWlsYWJsZS12ZXJzaW9uRTxndD4nICIKKyN8ICJmb3IgYWN0aW9ucyB3aGVyZSBJPEU8bHQ+YWN0aW9uRTxndD4+IGlzIG9uZSBvZiBpbnN0YWxsLCB1cGdyYWRlLCByZW1vdmUsICIKKyN8ICJwdXJnZTsgYW5kIGBZWVlZLU1NLUREIEhIOk1NOlNTIGNvbmZmaWxlIEU8bHQ+ZmlsZW5hbWVFPGd0PiAiCisjfCAiRTxsdD5kZWNpc2lvbkU8Z3Q+JyBmb3IgY29uZmZpbGUgY2hhbmdlcyB3aGVyZSBJPEU8bHQ+ZGVjaXNpb25FPGd0Pj4gaXMgIgorI3wgImVpdGhlciBpbnN0YWxsIG9yIGtlZXAuIgorbXNnaWQgIiIKKyJMb2cgc3RhdHVzIGNoYW5nZSB1cGRhdGVzIGFuZCBhY3Rpb25zIHRvIEk8ZmlsZW5hbWU+LCBpbnN0ZWFkIG9mIHRoZSBkZWZhdWx0ICIKKyJJPC92YXIvbG9nL2Rwa2cubG9nPi4gSWYgdGhpcyBvcHRpb24gaXMgZ2l2ZW4gbXVsdGlwbGUgdGltZXMsIHRoZSBsYXN0ICIKKyJmaWxlbmFtZSBpcyB1c2VkLiBMb2cgbWVzc2FnZXMgYXJlIG9mIHRoZSBmb3JtIGBZWVlZLU1NLUREIEhIOk1NOlNTIHN0YXR1cyAiCisiSTxzdGF0ZT4gSTxwa2c+IEk8aW5zdGFsbGVkLXZlcnNpb24+JyBmb3Igc3RhdHVzIGNoYW5nZSB1cGRhdGVzOyBgWVlZWS1NTS1ERCAiCisiSEg6TU06U1MgSTxhY3Rpb24+IEk8cGtnPiBJPGluc3RhbGxlZC12ZXJzaW9uPiBJPGF2YWlsYWJsZS12ZXJzaW9uPicgZm9yICIKKyJhY3Rpb25zIHdoZXJlIEk8YWN0aW9uPiBpcyBvbmUgb2YgQjxpbnN0YWxsPiwgQjx1cGdyYWRlPiwgQjxyZW1vdmU+LCAiCisiQjxwdXJnZT47IGFuZCBgWVlZWS1NTS1ERCBISDpNTTpTUyBjb25mZmlsZSBJPGZpbGVuYW1lPiBJPGRlY2lzaW9uPicgZm9yICIKKyJjb25mZmlsZSBjaGFuZ2VzIHdoZXJlIEk8ZGVjaXNpb24+IGlzIGVpdGhlciBCPGluc3RhbGw+IG9yIEI8a2VlcD4uIgorbXNnc3RyICIiCisiRW5yZWdpc3RyZSBsYSBtb2RpZmljYXRpb24gZGUgbCfDqXRhdCwgbGEgbWlzZSDDoCBqb3VyIG91IGwnYWN0aW9uIHN1ciAiCisiSTxmaWNoaWVyPiBhdSBsaWV1IGRlIGwnaGFiaXR1ZWwgSTwvdmFyL2xvZy9kcGtnLmxvZz4uIFNpIGNldHRlIG9wdGlvbiBlc3QgIgorImRvbm7DqWUgcGx1c2lldXJzIGZvaXMsIGxlIGRlcm5pZXIgZmljaGllciBlc3QgdXRpbGlzw6kuIExlcyBtZXNzYWdlcyAiCisiZCdlbnJlZ2lzdHJlbWVudCBzb250IGRlIGxhIGZvcm1lIEFBQUEtTU0tSkogSEg6TU06U1Mgc3RhdHVzIEU8bHQ+w6l0YXRFPGd0PiAiCisiRTxsdD5wYXF1ZXRFPGd0PiBFPGx0PnZlcnNpb24taW5zdGFsbMOpZUU8Z3Q+IHBvdXIgbGVzIG1vZGlmaWNhdGlvbnMgZCfDqXRhdCAiCisiZXQgbGVzIG1pc2VzIMOgIGpvdXIuIFBvdXIgdW5lIGFjdGlvbiwgb8O5IEk8RTxsdD5hY3Rpb25FPGd0Pj4gZXN0ICIKKyLCq8KgaW5zdGFsbMKgwrssIMKrwqB1cGdyYWRlwqDCuywgwqvCoHJlbW92ZcKgwrsgb3UgwqvCoHB1cmdlwqDCuywgbGUgbWVzc2FnZSBlc3QgZGUgbGEgIgorImZvcm1lIEFBQUEtTU0tSkogSEg6TU06U1MgRTxsdD5hY3Rpb25FPGd0PiBFPGx0PnBhcXVldEU8Z3Q+IEU8bHQ+dmVyc2lvbi0iCisiaW5zdGFsbMOpZUU8Z3Q+IEU8bHQ+dmVyc2lvbi1kaXNwb25pYmxlRTxndD4uIFBvdXIgdW5lIG1vZGlmaWNhdGlvbiBkZSAiCisiY29uZmZpbGUsIGxlIG1lc3NhZ2UgZXN0IGRlIGxhIGZvcm1lIEFBQUEtTU0tSkogSEg6TU06U1MgY29uZmZpbGUgIgorIkU8bHQ+ZmljaGllckU8Z3Q+IEU8bHQ+ZMOpY2lzaW9uRTxndD4gb3UgRTxsdD5kw6ljaXNpb25FPGd0PiBlc3Qgc29pdCBpbnN0YWxsICIKKyJzb2l0IGtlZXAuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjYxMQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1uby1kZWJzaWc+IgorbXNnc3RyICJCPC0tbm8tZGVic2lnPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjYxNAorbXNnaWQgIkRvIG5vdCB0cnkgdG8gdmVyaWZ5IHBhY2thZ2Ugc2lnbmF0dXJlcy4iCittc2dzdHIgIk5lIHBhcyB0ZW50ZXIgZGUgdsOpcmlmaWVyIGxhIHNpZ25hdHVyZSBkZXMgcGFxdWV0cy4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NjE0CisjLCBuby13cmFwCittc2dpZCAiQjwtLW5vLXRyaWdnZXJzPiIKK21zZ3N0ciAiQjwtLW5vLXRyaWdnZXJzPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjYyMworbXNnaWQgIiIKKyJEbyBub3QgcnVuIGFueSB0cmlnZ2VycyBpbiB0aGlzIHJ1biAoYWN0aXZhdGlvbnMgd2lsbCBzdGlsbCBiZSByZWNvcmRlZCkuICAiCisiSWYgdXNlZCB3aXRoIEI8LS1jb25maWd1cmU+IEk8cGFja2FnZT4gb3IgQjwtLXRyaWdnZXJzLW9ubHk+IEk8cGFja2FnZT4gdGhlbiAiCisidGhlIG5hbWVkIHBhY2thZ2UgcG9zdGluc3Qgd2lsbCBzdGlsbCBiZSBydW4gZXZlbiBpZiBvbmx5IGEgdHJpZ2dlcnMgcnVuIGlzICIKKyJuZWVkZWQuIFVzZSBvZiB0aGlzIG9wdGlvbiBtYXkgbGVhdmUgcGFja2FnZXMgaW4gdGhlIGltcHJvcGVyIEI8dHJpZ2dlcnMtIgorImF3YWl0ZWQ+IGFuZCBCPHRyaWdnZXJzLXBlbmRpbmc+IHN0YXRlcy4gVGhpcyBjYW4gYmUgZml4ZWQgbGF0ZXIgYnkgcnVubmluZzogIgorIkI8ZHBrZyAtLWNvbmZpZ3VyZSAtLXBlbmRpbmc+LiIKK21zZ3N0ciAiIgorIkR1cmFudCBjZSB0cmFpdGVtZW50IG5lIHBhcyBsYW5jZXIgZCdhY3Rpb25zIGRpZmbDqXLDqWVzIChsZXMgYWN0aXZhdGlvbnMgIgorInNlcm9udCB0b3Vqb3VycyBlbnJlZ2lzdHLDqWVzKS4gUydpbCBlc3QgdXRpbGlzw6kgYXZlYyBCPC0tY29uZmlndXJlPiAiCisiSTxwYXF1ZXQ+IG91IEI8LS10cmlnZ2Vycy1vbmx5PiBJPHBhcXVldD4gYWxvcnMgbGUgcG9zdGluc3QgZHUgcGFxdWV0IHNlcmEgIgorInRvdWpvdXJzIGV4w6ljdXTDqSBtw6ptZSBzaSBzZXVsZSBsJ2V4w6ljdXRpb24gZCd1bmUgYWN0aW9uIGRpZmbDqXLDqWUgZXN0ICIKKyJuw6ljZXNzYWlyZS4gTCd1dGlsaXNhdGlvbiBkZSBjZXR0ZSBvcHRpb24gcGV1dCBsYWlzc2VyIGRlcyBwYXF1ZXRzIGRhbnMgbGVzICIKKyJtYXV2YWlzIMOpdGF0cyBCPHRyaWdnZXJzLWF3YWl0ZWQ+IGV0IEI8dHJpZ2dlcnMtcGVuZGluZz4uIENlbGEgcGV1dCDDqnRyZSAiCisiY29ycmlnw6kgcGx1cyB0YXJkIGVuIGV4w6ljdXRhbnQgQjxkcGtnIC0tY29uZmlndXJlIC0tcGVuZGluZz4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjYyMworIywgbm8td3JhcAorbXNnaWQgIkI8LS10cmlnZ2Vycz4iCittc2dzdHIgIkI8LS10cmlnZ2Vycz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2MjYKK21zZ2lkICJDYW5jZWxzIGEgcHJldmlvdXMgQjwtLW5vLXRyaWdnZXJzPi4iCittc2dzdHIgIkFubnVsZSB1biBwcsOpY8OpZGVudCBCPC0tbm8tdHJpZ2dlcnM+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjYyOCBkcGtnLmNmZy41OjE2CisjLCBuby13cmFwCittc2dpZCAiSTwvZXRjL2Rwa2cvZHBrZy5jZmc+IgorbXNnc3RyICJJPC9ldGMvZHBrZy9kcGtnLmNmZz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2MzEKK21zZ2lkICJDb25maWd1cmF0aW9uIGZpbGUgd2l0aCBkZWZhdWx0IG9wdGlvbnMuIgorbXNnc3RyICJGaWNoaWVyIGRlIGNvbmZpZ3VyYXRpb24gY29udGVuYW50IGxlcyBvcHRpb25zIHBhciBkw6lmYXV0LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2MzEKKyMsIG5vLXdyYXAKK21zZ2lkICJJPC92YXIvbG9nL2Rwa2cubG9nPiIKK21zZ3N0ciAiSTwvdmFyL2xvZy9kcGtnLmxvZz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2MzUKK21zZ2lkICJEZWZhdWx0IGxvZyBmaWxlIChzZWUgSTwvZXRjL2Rwa2cvZHBrZy5jZmc+KDUpIGFuZCBvcHRpb24gQjwtLWxvZz4pLiIKK21zZ3N0ciAiIgorIkZpY2hpZXIgam91cm5hbCBzdGFuZGFyZC4gVm95ZXogSTwvZXRjL2Rwa2cvZHBrZy5jZmc+KDUpIGV0IGwnb3B0aW9uICBCPC0tIgorImxvZz4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NjM4Cittc2dpZCAiIgorIlRoZSBvdGhlciBmaWxlcyBsaXN0ZWQgYmVsb3cgYXJlIGluIHRoZWlyIGRlZmF1bHQgZGlyZWN0b3JpZXMsIHNlZSBvcHRpb24gIgorIkI8LS1hZG1pbmRpcj4gdG8gc2VlIGhvdyB0byBjaGFuZ2UgbG9jYXRpb25zIG9mIHRoZXNlIGZpbGVzLiIKK21zZ3N0ciAiIgorIkxlcyBhdXRyZXMgZmljaGllcnMgcsOpcGVydG9yacOpcyBpY2kgc29udCBkYW5zIGxldXIgcsOpcGVydG9pcmUgcGFyIGTDqWZhdXQsICIKKyJ2b3lleiBsJ29wdGlvbiBCPC0tYWRtaW5kaXI+IHBvdXIgc2F2b2lyIGNoYW5nZXIgbCdlbXBsYWNlbWVudCBkZSBjZXMgIgorImZpY2hpZXJzLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2MzgKKyMsIG5vLXdyYXAKK21zZ2lkICJJPC92YXIvbGliL2Rwa2cvYXZhaWxhYmxlPiIKK21zZ3N0ciAiSTwvdmFyL2xpYi9kcGtnL2F2YWlsYWJsZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2NDEKK21zZ2lkICJMaXN0IG9mIGF2YWlsYWJsZSBwYWNrYWdlcy4iCittc2dzdHIgIkxpc3RlIGRlcyBwYXF1ZXRzIGRpc3BvbmlibGVzLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2NDEKKyMsIG5vLXdyYXAKK21zZ2lkICJJPC92YXIvbGliL2Rwa2cvc3RhdHVzPiIKK21zZ3N0ciAiSTwvdmFyL2xpYi9kcGtnL3N0YXR1cz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2NDcKK21zZ2lkICIiCisiU3RhdHVzZXMgb2YgYXZhaWxhYmxlIHBhY2thZ2VzLiBUaGlzIGZpbGUgY29udGFpbnMgaW5mb3JtYXRpb24gYWJvdXQgd2hldGhlciAiCisiYSBwYWNrYWdlIGlzIG1hcmtlZCBmb3IgcmVtb3Zpbmcgb3Igbm90LCB3aGV0aGVyIGl0IGlzIGluc3RhbGxlZCBvciBub3QsICIKKyJldGMuIFNlZSBzZWN0aW9uIEI8SU5GT1JNQVRJT04gQUJPVVQgUEFDS0FHRVM+IGZvciBtb3JlIGluZm8uIgorbXNnc3RyICIiCisiw4l0YXRzIGRlcyBwYXF1ZXRzIGRpc3BvbmlibGVzLiBDZSBmaWNoaWVyIGNvbnRpZW50IGRlcyBpbmZvcm1hdGlvbnMgcXVpICIKKyJwZXJtZXR0ZW50IGRlIHNhdm9pciBzaSB1biBwYXF1ZXQgZXN0IG1hcnF1w6kgY29tbWUgZGV2YW50IMOqdHJlIHN1cHByaW3DqSBvdSAiCisicGFzLCBkZXZhbnQgw6p0cmUgaW5zdGFsbMOpIG91IHBhcywgZXRjLiBWb3lleiBsYSBzZWN0aW9uIEI8UkVOU0VJR05FTUVOVFMgU1VSICIKKyJMRVMgUEFRVUVUUz4gcG91ciBkZXMgaW5mb3JtYXRpb25zIHN1cHBsw6ltZW50YWlyZXMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NjUwCittc2dpZCAiIgorIlRoZSBzdGF0dXMgZmlsZSBpcyBiYWNrZWQgdXAgZGFpbHkgaW4gSTwvdmFyL2JhY2t1cHM+LiBJdCBjYW4gYmUgdXNlZnVsIGlmICIKKyJpdCdzIGxvc3Qgb3IgY29ycnVwdGVkIGR1ZSB0byBmaWxlc3lzdGVtcyB0cm91Ymxlcy4iCittc2dzdHIgIiIKKyJMZSBmaWNoaWVyIGQnw6l0YXQgZXN0IHNhdXZlZ2FyZMOpIHF1b3RpZGllbm5lbWVudCBkYW5zIEk8L3Zhci9iYWNrdXBzPi4gQ2VsYSAiCisicGV1dCDDqnRyZSB1dGlsZSBlbiBjYXMgZGUgcGVydGUgb3UgZGUgY29ycnVwdGlvbiBkw7tlIMOgIGRlcyBwcm9ibMOobWVzIGRlICIKKyJzeXN0w6htZSBkZSBmaWNoaWVycy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2NTMKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBmaWxlcyBhcmUgY29tcG9uZW50cyBvZiBhIGJpbmFyeSBwYWNrYWdlLiBTZWUgQjxkZWI+KDUpICBmb3IgIgorIm1vcmUgaW5mb3JtYXRpb24gYWJvdXQgdGhlbToiCittc2dzdHIgIiIKKyJMZXMgZmljaGllcnMgc3VpdmFudHMgZm9udCBwYXJ0aWUgZCd1biBwYXF1ZXQgYmluYWlyZS4gVm95ZXogQjxkZWI+KDUpIHBvdXIgIgorImRlcyBpbmZvcm1hdGlvbnMgc3VwcGzDqW1lbnRhaXJlc8KgOiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2NTMKKyMsIG5vLXdyYXAKK21zZ2lkICJJPGNvbnRyb2w+IgorbXNnc3RyICJJPGNvbnRyb2w+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjY1NQorIywgbm8td3JhcAorbXNnaWQgIkk8Y29uZmZpbGVzPiIKK21zZ3N0ciAiSTxjb25mZmlsZXM+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjY1NworIywgbm8td3JhcAorbXNnaWQgIkk8cHJlaW5zdD4iCittc2dzdHIgIkk8cHJlaW5zdD4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NjU5CisjLCBuby13cmFwCittc2dpZCAiSTxwb3N0aW5zdD4iCittc2dzdHIgIkk8cG9zdGluc3Q+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjY2MQorIywgbm8td3JhcAorbXNnaWQgIkk8cHJlcm0+IgorbXNnc3RyICJJPHByZXJtPiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2NjMKKyMsIG5vLXdyYXAKK21zZ2lkICJJPHBvc3RybT4iCittc2dzdHIgIkk8cG9zdHJtPiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2cuMTo2NjYgZHBrZy1idWlsZGZsYWdzLjE6MTI4IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjMwIGRwa2ctZGViLjE6MjMyCisjOiBkcGtnLWRpdmVydC44OjExMiBkcGtnLXF1ZXJ5LjE6MjA0IGRwa2ctc3RhdG92ZXJyaWRlLjg6NjggZHBrZy10cmlnZ2VyLjE6NjAKKyM6IGRwa2ctdmVuZG9yLjE6NDIgZHNlbGVjdC4xOjQyMyB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzU0CisjLCBuby13cmFwCittc2dpZCAiRU5WSVJPTk1FTlQiCittc2dzdHIgIkVOVklST05ORU1FTlQiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NjY3IGRzZWxlY3QuMTo0MjQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPEhPTUU+IgorbXNnc3RyICJCPEhPTUU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NjcxCittc2dpZCAiIgorIklmIHNldCwgQjxkcGtnPiB3aWxsIHVzZSBpdCBhcyB0aGUgZGlyZWN0b3J5IGZyb20gd2hpY2ggdG8gcmVhZCB0aGUgdXNlciAiCisic3BlY2lmaWMgY29uZmlndXJhdGlvbiBmaWxlLiIKK21zZ3N0ciAiIgorIlNpIGNldHRlIG9wdGlvbiBlc3QgdXRpbGlzw6llLCBCPGRwa2c+IHV0aWxpc2VyYSBsZSByw6lwZXJ0b2lyZSBpbmRpcXXDqSBwb3VyICIKKyJsaXJlIGxlIGZpY2hpZXIgZGUgY29uZmlndXJhdGlvbiBwcm9wcmUgw6AgbCd1dGlsaXNhdGV1ci4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NjcxIGRwa2ctZGViLjE6MjMzCisjLCBuby13cmFwCittc2dpZCAiQjxUTVBESVI+IgorbXNnc3RyICJCPFRNUERJUj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2NzUKK21zZ2lkICIiCisiSWYgc2V0LCBCPGRwa2c+IHdpbGwgdXNlIGl0IGFzIHRoZSBkaXJlY3RvcnkgaW4gd2hpY2ggdG8gY3JlYXRlIHRlbXBvcmFyeSAiCisiZmlsZXMgYW5kIGRpcmVjdG9yaWVzLiIKK21zZ3N0ciAiIgorIlNpIGNldHRlIG9wdGlvbiBlc3QgdXRpbGlzw6llLCBCPGRwa2c+IHV0aWxpc2VyYSBsZSByw6lwZXJ0b2lyZSBpbmRpcXXDqSBwb3VyICIKKyJjcsOpZXIgbGVzIGZpY2hpZXJzIGV0IHLDqXBlcnRvaXJlIHRlbXBvcmFpcmVzLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2NzUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPFBBR0VSPiIKK21zZ3N0ciAiQjxQQUdFUj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2NzgKK21zZ2lkICJUaGUgcHJvZ3JhbSBCPGRwa2c+IHdpbGwgZXhlY3V0ZSB3aGVuIGRpc3BsYXlpbmcgdGhlIGNvbmZmaWxlcy4iCittc2dzdHIgIiIKKyJDZXR0ZSBvcHRpb24gaW5kaXF1ZSBsZSBwcm9ncmFtbWUgZXjDqWN1dMOpIHBhciBCPGRwa2c+IHF1YW5kIGlsIGFmZmljaGUgbGVzICIKKyJmaWNoaWVycyBkZSBjb25maWd1cmF0aW9uLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2NzgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPFNIRUxMPiIKK21zZ3N0ciAiQjxTSEVMTD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2ODEKK21zZ2lkICJUaGUgcHJvZ3JhbSBCPGRwa2c+IHdpbGwgZXhlY3V0ZSB3aGVuIHN0YXJ0aW5nIGEgbmV3IHNoZWxsLiIKK21zZ3N0ciAiIgorIkxlIHByb2dyYW1tZSBleMOpY3V0w6kgcGFyIEI8ZHBrZz4gcXVhbmQgaWwgbGFuY2UgdW4gbm91dmVsIGludGVycHLDqXRldXIgZGUgIgorImNvbW1hbmRlcy4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NjgxIGRwa2ctcXVlcnkuMToyMDkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPENPTFVNTlM+IgorbXNnc3RyICJCPENPTFVNTlM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6Njg1Cittc2dpZCAiIgorIlNldHMgdGhlIG51bWJlciBvZiBjb2x1bW5zIEI8ZHBrZz4gc2hvdWxkIHVzZSB3aGVuIGRpc3BsYXlpbmcgZm9ybWF0dGVkICIKKyJ0ZXh0LiBDdXJyZW50bHkgb25seSB1c2VkIGJ5IC1sLiIKK21zZ3N0ciAiIgorIkZpeGUgbGUgbm9tYnJlIGRlIGNvbG9ubmVzIHV0aWxpc8OpcyBwYXIgQjxkcGtnPiBsb3JzcXUnaWwgYWZmaWNoZSB1biB0ZXh0ZSAiCisiZm9ybWF0w6kuIFNldWxlIGwnYWN0aW9uIEI8LWw+IHNlIHNlcnQgYWN0dWVsbGVtZW50IGRlIGNldHRlIHZhcmlhYmxlLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2ODUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPERQS0dfU0hFTExfUkVBU09OPiIKK21zZ3N0ciAiQjxEUEtHX1NIRUxMX1JFQVNPTj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2ODkKK21zZ2lkICIiCisiRGVmaW5lZCBieSBCPGRwa2c+IG9uIHRoZSBzaGVsbCBzcGF3bmVkIG9uIHRoZSBjb25mZmlsZSBwcm9tcHQgdG8gZXhhbWluZSAiCisidGhlIHNpdHVhdGlvbi4gQ3VycmVudCB2YWxpZCB2YWx1ZTogQjxjb25mZmlsZS1wcm9tcHQ+LiIKK21zZ3N0ciAiIgorIkNldHRlIHZhcmlhYmxlIGTDqWZpbml0IGwnaW52aXRlIGR1IHNoZWxsIGxhbmPDqSBwYXIgQjxkcGtnPiBsb3JzcXUnaWwgbHVpIGVzdCAiCisiZGVtYW5kw6kgZCfCq8KgIGV4YW1pbmVyIGxhIHNpdHVhdGlvbsKgwrsgbG9ycyBkdSB0cmFpdGVtZW50IGRlcyBmaWNoaWVycyBkZSAiCisiY29uZmlndXJhdGlvbi4gTGEgdmFsZXVyIGFjdHVlbGxlbWVudCB2YWxhYmxlIGVzdMKgOsKgQjxjb25mZmlsZS1wcm9tcHQ+LyIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2ODkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPERQS0dfQ09ORkZJTEVfT0xEPiIKK21zZ3N0ciAiQjxEUEtHX0NPTkZGSUxFX09MRD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2OTMKK21zZ2lkICIiCisiRGVmaW5lZCBieSBCPGRwa2c+IG9uIHRoZSBzaGVsbCBzcGF3bmVkIG9uIHRoZSBjb25mZmlsZSBwcm9tcHQgdG8gZXhhbWluZSAiCisidGhlIHNpdHVhdGlvbi4gQ29udGFpbnMgdGhlIHBhdGggdG8gdGhlIG9sZCBjb25mZmlsZS4iCittc2dzdHIgIiIKKyJDZXR0ZSB2YXJpYWJsZSBlc3QgZMOpZmluaWUgcG91ciBsZSBzaGVsbCBsYW5jw6kgcGFyIEI8ZHBrZz4gbG9yc3F1J2lsIGx1aSBlc3QgIgorImRlbWFuZMOpIGQnwqvCoCBleGFtaW5lciBsYSBzaXR1YXRpb27CoMK7IGxvcnMgZHUgdHJhaXRlbWVudCBkZXMgZmljaGllcnMgZGUgIgorImNvbmZpZ3VyYXRpb24uIEVsbGUgY29udGllbnQgbGUgbm9tIGRlIGwnYW5jaWVuIGZpY2hpZXIgZGUgY29uZmlndXJhdGlvbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NjkzCisjLCBuby13cmFwCittc2dpZCAiQjxEUEtHX0NPTkZGSUxFX05FVz4iCittc2dzdHIgIkI8RFBLR19DT05GRklMRV9ORVc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6Njk3Cittc2dpZCAiIgorIkRlZmluZWQgYnkgQjxkcGtnPiBvbiB0aGUgc2hlbGwgc3Bhd25lZCBvbiB0aGUgY29uZmZpbGUgcHJvbXB0IHRvIGV4YW1pbmUgIgorInRoZSBzaXR1YXRpb24uIENvbnRhaW5zIHRoZSBwYXRoIHRvIHRoZSBuZXcgY29uZmZpbGUuIgorbXNnc3RyICIiCisiQ2V0dGUgdmFyaWFibGUgZXN0IGTDqWZpbmllIHBvdXIgbGUgc2hlbGwgbGFuY8OpIHBhciBCPGRwa2c+IGxvcnNxdSdpbCBsdWkgZXN0ICIKKyJkZW1hbmTDqSBkJ8KrwqAgZXhhbWluZXIgbGEgc2l0dWF0aW9uwqDCuyBsb3JzIGR1IHRyYWl0ZW1lbnQgZGVzIGZpY2hpZXJzIGRlICIKKyJjb25maWd1cmF0aW9uLiBFbGxlIGNvbnRpZW50IGxlIG5vbSBkdSBub3V2ZWF1IGZpY2hpZXIgZGUgY29uZmlndXJhdGlvbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6Njk3CisjLCBuby13cmFwCittc2dpZCAiQjxEUEtHX1JVTk5JTkdfVkVSU0lPTj4iCittc2dzdHIgIkI8RFBLR19SVU5OSU5HX1ZFUlNJT04+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzAxCittc2dpZCAiIgorIkRlZmluZWQgYnkgQjxkcGtnPiBvbiB0aGUgbWFpbnRhaW5lciBzY3JpcHQgZW52aXJvbm1lbnQgdG8gdGhlIHZlcnNpb24gb2YgIgorInRoZSBjdXJyZW50bHkgcnVubmluZyBCPGRwa2c+IGluc3RhbmNlLiIKK21zZ3N0ciAiIgorIkNldHRlIHZhcmlhYmxlcyBlc3QgZMOpZmluaWUgcGFyIEI8ZHBrZz4gZGFucyBsJ2Vudmlyb25uZW1lbnQgZHUgc2NyaXB0IGR1ICIKKyJyZXNwb25zYWJsZS4gRWxsZSBjb250aWVudCBsYSB2ZXJzaW9uIGRlIGwnaW5zdGFuY2UgZGUgQjxkcGtnPiBlbiBjb3VycyAiCisiZCdleMOpY3V0aW9uLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo3MDEgZHBrZy1kaXZlcnQuODoxMTcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPERQS0dfTUFJTlRTQ1JJUFRfUEFDS0FHRT4iCittc2dzdHIgIkI8RFBLR19NQUlOVFNDUklQVF9QQUNLQUdFPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjcwNQorbXNnaWQgIiIKKyJEZWZpbmVkIGJ5IEI8ZHBrZz4gb24gdGhlIG1haW50YWluZXIgc2NyaXB0IGVudmlyb25tZW50IHRvIHRoZSBwYWNrYWdlIG5hbWUgIgorImJlaW5nIGhhbmRsZWQuIgorbXNnc3RyICIiCisiRMOpZmluaWUgcGFyIEI8ZHBrZz4gZGFucyBsJ2Vudmlyb25uZW1lbnQgZHUgc2NyaXB0IGR1IHJlc3BvbnNhYmxlLCBjZXR0ZSAiCisidmFyaWFibGUgY29udGllbnQgbGUgbm9tIGR1IHBhcXVldCBlbiBjb3VycyBkZSB0cmFpdGVtZW50LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo3MDUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPERQS0dfTUFJTlRTQ1JJUFRfQVJDSD4iCittc2dzdHIgIkI8RFBLR19NQUlOVFNDUklQVF9BUkNIPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjcwOQorbXNnaWQgIiIKKyJEZWZpbmVkIGJ5IEI8ZHBrZz4gb24gdGhlIG1haW50YWluZXIgc2NyaXB0IGVudmlyb25tZW50IHRvIHRoZSBhcmNoaXRlY3R1cmUgIgorInRoZSBwYWNrYWdlIGdvdCBidWlsdCBmb3IuIgorbXNnc3RyICIiCisiRMOpZmluaWUgcGFyIEI8ZHBrZz4gZGFucyBsJ2Vudmlyb25uZW1lbnQgZHUgc2NyaXB0IGR1IHJlc3BvbnNhYmxlLCBjZXR0ZSAiCisidmFyaWFibGUgY29udGllbnQgbCdhcmNoaXRlY3R1cmUgcG91ciBsYXF1ZWxsZSBsZSBwYXF1ZXQgYSDDqXTDqSBjb25zdHJ1aXQuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjcwOQorIywgbm8td3JhcAorbXNnaWQgIkI8RFBLR19NQUlOVFNDUklQVF9OQU1FPiIKK21zZ3N0ciAiQjxEUEtHX01BSU5UU0NSSVBUX05BTUU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzEzCittc2dpZCAiIgorIkRlZmluZWQgYnkgQjxkcGtnPiBvbiB0aGUgbWFpbnRhaW5lciBzY3JpcHQgZW52aXJvbm1lbnQgdG8gdGhlIG5hbWUgb2YgdGhlICIKKyJzY3JpcHQgcnVubmluZyAocHJlaW5zdCwgcG9zdGluc3QsIHByZXJtLCBwb3N0cm0pLiIKK21zZ3N0ciAiIgorIkTDqWZpbmllIHBhciBCPGRwa2c+IGRhbnMgbCdlbnZpcm9ubmVtZW50IGR1IHNjcmlwdCBkdSByZXNwb25zYWJsZSwgY2V0dGUgIgorInZhcmlhYmxlIGNvbnRpZW50IGxlIG5vbSBkdSBzY3JpcHQgZW4gY291cnMgZCdleMOpY3V0aW9uIChwcmVpbnN0LCBwb3N0aW5zdCwgIgorInByZXJtLCBwb3N0cm0pLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjcxNgorbXNnaWQgIlRvIGxpc3QgcGFja2FnZXMgcmVsYXRlZCB0byB0aGUgZWRpdG9yIEI8dmk+KDEpOiIKK21zZ3N0ciAiUG91ciBhZmZpY2hlciBsZXMgcGFxdWV0cyBsacOpcyBhdSBwcm9ncmFtbWUgQjx2aT4oMSnCoDoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3MTgKKyMsIG5vLXdyYXAKK21zZ2lkICIgICAgIEI8ZHBrZyAtbCBcXChhcSp2aSpcXChhcT5cbiIKK21zZ3N0ciAiICAgIEI8ZHBrZyAtbCBcXChhcSp2aSpcXChhcT5cbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjcyMQorbXNnaWQgIlRvIHNlZSB0aGUgZW50cmllcyBpbiBJPC92YXIvbGliL2Rwa2cvYXZhaWxhYmxlPiBvZiB0d28gcGFja2FnZXM6IgorbXNnc3RyICIiCisiUG91ciB2b2lyIGxlcyBlbnRyw6llcyBkZSBJPC92YXIvbGliL2Rwa2cvYXZhaWxhYmxlPiBjb25jZXJuYW50IGRldXggcGFxdWV0c8KgOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjcyMworIywgbm8td3JhcAorbXNnaWQgIiAgICAgQjxkcGtnIC0tcHJpbnQtYXZhaWwgZWx2aXMgdmltIHwgbGVzcz5cbiIKK21zZ3N0ciAiICAgIEI8ZHBrZyAtLXByaW50LWF2YWlsIGVsdmlzIHZpbSB8IGxlc3M+XG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3MjYKK21zZ2lkICJUbyBzZWFyY2ggdGhlIGxpc3Rpbmcgb2YgcGFja2FnZXMgeW91cnNlbGY6IgorbXNnc3RyICJQb3VyIHJlY2hlcmNoZXIgdm91cy1tw6ptZSBkYW5zIGxhIGxpc3RlIGRlcyBwYXF1ZXRzwqA6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzI4CisjLCBuby13cmFwCittc2dpZCAiICAgICBCPGxlc3MgL3Zhci9saWIvZHBrZy9hdmFpbGFibGU+XG4iCittc2dzdHIgIiAgICBCPGxlc3MgL3Zhci9saWIvZHBrZy9hdmFpbGFibGU+XG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3MzEKK21zZ2lkICJUbyByZW1vdmUgYW4gaW5zdGFsbGVkIGVsdmlzIHBhY2thZ2U6IgorbXNnc3RyICJQb3VyIHN1cHByaW1lciBsZSBwYXF1ZXQgaW5zdGFsbMOpIGVsdmlzwqA6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzMzCisjLCBuby13cmFwCittc2dpZCAiICAgICBCPGRwa2cgLXIgZWx2aXM+XG4iCittc2dzdHIgIiAgICBCPGRwa2cgLXIgZWx2aXM+XG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3MzgKK21zZ2lkICIiCisiVG8gaW5zdGFsbCBhIHBhY2thZ2UsIHlvdSBmaXJzdCBuZWVkIHRvIGZpbmQgaXQgaW4gYW4gYXJjaGl2ZSBvciBDRFJPTS4gVGhlICIKKyJcImF2YWlsYWJsZVwiIGZpbGUgc2hvd3MgdGhhdCB0aGUgdmltIHBhY2thZ2UgaXMgaW4gc2VjdGlvbiBcImVkaXRvcnNcIjoiCittc2dzdHIgIiIKKyJQb3VyIGluc3RhbGxlciB1biBwYXF1ZXQsIHZvdXMgZGV2ZXogZCdhYm9yZCBsZSB0cm91dmVyIGRhbnMgdW5lIGFyY2hpdmUgb3UgIgorInN1ciB1biBDRC4gTGUgZmljaGllciDCq8KgYXZhaWxhYmxlwqDCuyBtb250cmUgcXVlIGxlIHBhcXVldCB2aW0gc2UgdHJvdXZlIGRhbnMgIgorImxhIHNlY3Rpb24gwqvCoGVkaXRvcnPCoMK7wqA6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzQxCisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIiIKKyN8ICIgICAgIEI8Y2QgL2Nkcm9tL3Bvb2wvbWFpbi92L3ZpbT5cbiIKKyN8ICIgICAgIEI8ZHBrZyAtaSB2aW1fNC41LTMuZGViPlxuIgorbXNnaWQgIiIKKyIgICAgIEI8Y2QgL21lZGlhL2Nkcm9tL3Bvb2wvbWFpbi92L3ZpbT5cbiIKKyIgICAgIEI8ZHBrZyAtaSB2aW1fNC41LTMuZGViPlxuIgorbXNnc3RyICIiCisiICAgICBCPGNkIC9jZHJvbS9wb29sL21haW4vdi92aW0+XG4iCisiICAgICBCPGRwa2cgLWkgdmltXzQuNS0zLmRlYj5cbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjc0NAorbXNnaWQgIlRvIG1ha2UgYSBsb2NhbCBjb3B5IG9mIHRoZSBwYWNrYWdlIHNlbGVjdGlvbiBzdGF0ZXM6IgorbXNnc3RyICJQb3VyIGZhaXJlIHVuZSBjb3BpZSBsb2NhbGUgZGVzIMOpdGF0cyBkZSBzw6lsZWN0aW9uIGRlcyBwYXF1ZXRzwqA6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzQ2CisjLCBuby13cmFwCittc2dpZCAiICAgICBCPGRwa2cgLS1nZXQtc2VsZWN0aW9ucyBFPGd0Pm15c2VsZWN0aW9ucz5cbiIKK21zZ3N0ciAiICAgIEI8ZHBrZyAtLWdldC1zZWxlY3Rpb25zIEU8Z3Q+bXlzZWxlY3Rpb25zPlxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzUwCittc2dpZCAiIgorIllvdSBtaWdodCB0cmFuc2ZlciB0aGlzIGZpbGUgdG8gYW5vdGhlciBjb21wdXRlciwgYW5kIGluc3RhbGwgaXQgdGhlcmUgd2l0aDoiCittc2dzdHIgIiIKKyJWb3VzIHBvdXJyaWV6IHRyYW5zZsOpcmVyIGNlIGZpY2hpZXIgc3VyIHVuIGF1dHJlIG9yZGluYXRldXIgZXQgbCdpbnN0YWxsZXIgIgorImRlIGNldHRlIG1hbmnDqHJlwqA6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzUzCisjLCBuby13cmFwCittc2dpZCAiIgorIiAgICAgQjxkcGtnIC0tY2xlYXItc2VsZWN0aW9ucz5cbiIKKyIgICAgIEI8ZHBrZyAtLXNldC1zZWxlY3Rpb25zIEU8bHQ+bXlzZWxlY3Rpb25zPlxuIgorbXNnc3RyICIiCisiICAgIEI8ZHBrZyAtLWNsZWFyLXNlbGVjdGlvbnM+XG4iCisiICAgIEI8ZHBrZyAtLXNldC1zZWxlY3Rpb25zIEU8bHQ+bXlzZWxlY3Rpb25zPlxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzU5Cittc2dpZCAiIgorIk5vdGUgdGhhdCB0aGlzIHdpbGwgbm90IGFjdHVhbGx5IGluc3RhbGwgb3IgcmVtb3ZlIGFueXRoaW5nLCBidXQganVzdCBzZXQgIgorInRoZSBzZWxlY3Rpb24gc3RhdGUgb24gdGhlIHJlcXVlc3RlZCBwYWNrYWdlcy4gWW91IHdpbGwgbmVlZCBzb21lIG90aGVyICIKKyJhcHBsaWNhdGlvbiB0byBhY3R1YWxseSBkb3dubG9hZCBhbmQgaW5zdGFsbCB0aGUgcmVxdWVzdGVkIHBhY2thZ2VzLiBGb3IgIgorImV4YW1wbGUsIHJ1biBCPGFwdC1nZXQgZHNlbGVjdC11cGdyYWRlPi4iCittc2dzdHIgIiIKKyJPbiByZW1hcnF1ZXJhIHF1ZSBjZWxhIG4naW5zdGFsbGUgb3UgbmUgc3VwcHJpbWUgcmllbiBkdSB0b3V0wqA7IGNlbGEgbmUgZmFpdCAiCisicXUnZW5yZWdpc3RyZXIgbCfDqXRhdCBzb3VoYWl0w6kgZGVzIHBhcXVldHMuIFZvdXMgYXVyZXogYmVzb2luIGQnYXV0cmVzICIKKyJhcHBsaWNhdGlvbnMgcG91ciByw6ljdXDDqXJlciBldCBpbnN0YWxsZXIgcsOpZWxsZW1lbnQgbGVzIHBhcXVldHMgcmVxdWlzLiBQYXIgIgorImV4ZW1wbGUsIGV4w6ljdXRleiBCPGFwdC1nZXQgZHNlbGVjdC11cGdyYWRlPi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3NjIKK21zZ2lkICIiCisiT3JkaW5hcmlseSwgeW91IHdpbGwgZmluZCB0aGF0IEI8ZHNlbGVjdD4oMSkgcHJvdmlkZXMgYSBtb3JlIGNvbnZlbmllbnQgd2F5ICIKKyJ0byBtb2RpZnkgdGhlIHBhY2thZ2Ugc2VsZWN0aW9uIHN0YXRlcy4iCittc2dzdHIgIiIKKyJIYWJpdHVlbGxlbWVudCwgdm91cyB0cm91dmVyZXogcXVlIEI8ZHNlbGVjdD4oMSkgZm91cm5pdCB1bmUgZmHDp29uIHBsdXMgIgorImFpc8OpZSBkZSBtb2RpZmllciBsZXMgw6l0YXRzIGRlIHPDqWxlY3Rpb24gZGVzIHBhcXVldHMuIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy4xOjc2NAorIywgbm8td3JhcAorbXNnaWQgIkFERElUSU9OQUwgRlVOQ1RJT05BTElUWSIKK21zZ3N0ciAiRk9OQ1RJT05OQUxJVMOJUyBTVVBQTMOJTUVOVEFJUkVTIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzY3Cittc2dpZCAiIgorIkFkZGl0aW9uYWwgZnVuY3Rpb25hbGl0eSBjYW4gYmUgZ2FpbmVkIGJ5IGluc3RhbGxpbmcgYW55IG9mIHRoZSBmb2xsb3dpbmcgIgorInBhY2thZ2VzOiBCPGFwdD4sIEI8YXB0aXR1ZGU+IGFuZCBCPGRlYnN1bXM+LiIKK21zZ3N0ciAiIgorIkQnYXV0cmVzIHBvc3NpYmlsaXTDqXMgc29udCBvZmZlcnRlcyBlbiBpbnN0YWxsYW50IGxlcyBwYXF1ZXRzIHN1aXZhbnRzwqA6ICIKKyJCPGFwdD4sIEI8YXB0aXR1ZGU+IGV0IEI8ZGVic3Vtcz4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6Nzc5Cittc2dpZCAiIgorIkI8YXB0aXR1ZGU+KDEpLCBCPGFwdD4oMSksIEI8ZHNlbGVjdD4oMSksIEI8ZHBrZy1kZWI+KDEpLCBCPGRwa2ctcXVlcnk+KDEpLCAiCisiQjxkZWI+KDUpLCBCPGRlYi1jb250cm9sPig1KSwgQjxkcGtnLmNmZz4oNSksIGFuZCBCPGRwa2ctcmVjb25maWd1cmU+KDgpLiIKK21zZ3N0ciAiIgorIkI8YXB0aXR1ZGU+KDEpLCBCPGFwdD4oMSksIEI8ZHNlbGVjdD4oMSksIEI8ZHBrZy1kZWI+KDEpLCBCPGRwa2ctcXVlcnk+KDEpLCAiCisiQjxkZWI+KDUpLCBCPGRlYi1jb250cm9sPig1KSwgQjxkcGtnLmNmZz4oNSkgZXQgQjxkcGtnLXJlY29uZmlndXJlPig4KS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3ODIKK21zZ2lkICJCPC0tbm8tYWN0PiB1c3VhbGx5IGdpdmVzIGxlc3MgaW5mb3JtYXRpb24gdGhhbiBtaWdodCBiZSBoZWxwZnVsLiIKK21zZ3N0ciAiTCdvcHRpb24gQjwtLW5vLWFjdD4gbmUgZG9ubmUgcGFzIGFzc2V6IGQnaW5mb3JtYXRpb25zIHV0aWxlcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3ODUgZHBrZy5jZmcuNToyMgorbXNnaWQgIiIKKyJTZWUgSTwvdXNyL3NoYXJlL2RvYy9kcGtnL1RIQU5LUz4gZm9yIHRoZSBsaXN0IG9mIHBlb3BsZSB3aG8gaGF2ZSAiCisiY29udHJpYnV0ZWQgdG8gQjxkcGtnPi4iCittc2dzdHIgIiIKKyJDb25zdWx0ZXogSTwvdXNyL3NoYXJlL2RvYy9kcGtnL1RIQU5LUz4gcG91ciBsYSBsaXN0ZSBkZSBjZXV4IHF1aSBvbnQgIgorImNvbnRyaWJ1w6kgw6AgQjxkcGtnPi4iCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLWFyY2hpdGVjdHVyZSIKK21zZ3N0ciAiZHBrZy1hcmNoaXRlY3R1cmUiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NAorbXNnaWQgIiIKKyJkcGtnLWFyY2hpdGVjdHVyZSAtIHNldCBhbmQgZGV0ZXJtaW5lIHRoZSBhcmNoaXRlY3R1cmUgZm9yIHBhY2thZ2UgYnVpbGRpbmciCittc2dzdHIgIiIKKyJkcGtnLWFyY2hpdGVjdHVyZSAtIEZpeGVyIGV0IGTDqXRlcm1pbmVyIGwnYXJjaGl0ZWN0dXJlIHBvdXIgbGEgY29uc3RydWN0aW9uICIKKyJkJ3VuIHBhcXVldCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo4CisjLCBmdXp6eQorI3wgbXNnaWQgIkI8ZHBrZy1hcmNoaXRlY3R1cmU+IFtJPG9wdGlvbnM+XSBbSTxjb21tYW5kcz5dIgorbXNnaWQgIkI8ZHBrZy1hcmNoaXRlY3R1cmU+IFtJPG9wdGlvbj4uLi5dIFtJPGNvbW1hbmQ+XSIKK21zZ3N0ciAiQjxkcGtnLWFyY2hpdGVjdHVyZT4gW0k8b3B0aW9ucz5dIFtJPGNvbW1hbmRlcz5dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEzCittc2dpZCAiIgorImRwa2ctYXJjaGl0ZWN0dXJlIGRvZXMgcHJvdmlkZSBhIGZhY2lsaXR5IHRvIGRldGVybWluZSBhbmQgc2V0IHRoZSBidWlsZCBhbmQgIgorImhvc3QgYXJjaGl0ZWN0dXJlIGZvciBwYWNrYWdlIGJ1aWxkaW5nLiIKK21zZ3N0ciAiIgorImRwa2ctYXJjaGl0ZWN0dXJlIGFpZGUgw6AgZMOpdGVybWluZXIgZXQgw6AgZml4ZXIgbCdhcmNoaXRlY3R1cmUgZGUgIgorImNvbnN0cnVjdGlvbiBldCBsJ2FyY2hpdGVjdHVyZSBow7R0ZSBwb3VyIGxhIGNyw6lhdGlvbiBkJ3VuIHBhcXVldC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTYKK21zZ2lkICIiCisiVGhlIGJ1aWxkIGFyY2hpdGVjdHVyZSBpcyBhbHdheXMgZGV0ZXJtaW5lZCBieSBhbiBleHRlcm5hbCBjYWxsIHRvIEI8ZHBrZz4iCisiKDEpLCBhbmQgY2FuIG5vdCBiZSBzZXQgYXQgdGhlIGNvbW1hbmQgbGluZS4iCittc2dzdHIgIiIKKyJMJ2FyY2hpdGVjdHVyZSBkZSBjb25zdHJ1Y3Rpb24gZXN0IHRvdWpvdXJzIGTDqXRlcm1pbsOpZSBwYXIgdW4gYXBwZWwgZXh0ZXJuZSAiCisiw6AgQjxkcGtnPigxKS4gRWxsZSBuZSBwZXV0IHBhcyDDqnRyZSBzcMOpY2lmacOpZSBlbiBsaWduZSBkZSBjb21tYW5kZS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjUKK21zZ2lkICIiCisiWW91IGNhbiBzcGVjaWZ5IHRoZSBob3N0IGFyY2hpdGVjdHVyZSBieSBwcm92aWRpbmcgb25lIG9yIGJvdGggb2YgdGhlICIKKyJvcHRpb25zIEI8LWE+IGFuZCBCPC10Pi4gVGhlIGRlZmF1bHQgaXMgZGV0ZXJtaW5lZCBieSBhbiBleHRlcm5hbCBjYWxsIHRvICIKKyJCPGdjYz4oMSksIG9yIHRoZSBzYW1lIGFzIHRoZSBidWlsZCBhcmNoaXRlY3R1cmUgaWYgXFxzLTFDQ1xcczAgb3IgZ2NjIGFyZSAiCisiYm90aCBub3QgYXZhaWxhYmxlLiBPbmUgb3V0IG9mIEI8LWE+IGFuZCBCPC10PiBpcyBzdWZmaWNpZW50LCB0aGUgdmFsdWUgb2YgIgorInRoZSBvdGhlciB3aWxsIGJlIHNldCB0byBhIHVzYWJsZSBkZWZhdWx0LiBJbmRlZWQsIGl0IGlzIG9mdGVuIGJldHRlciB0byAiCisib25seSBzcGVjaWZ5IG9uZSwgYmVjYXVzZSBCPGRwa2ctYXJjaGl0ZWN0dXJlPiB3aWxsIHdhcm4geW91IGlmIHlvdXIgY2hvaWNlICIKKyJkb2VzIG5vdCBtYXRjaCB0aGUgZGVmYXVsdC4iCittc2dzdHIgIiIKKyJWb3VzIHBvdXZleiBzcMOpY2lmaWVyIHVuZSBhcmNoaXRlY3R1cmUgaMO0dGUgZW4gdXRpbGlzYW50IHVuZSBkZXMgb3B0aW9ucyBCPC0iCisiYT4gZXQgQjwtdD4gKG91IGxlcyBkZXV4KS4gUGFyIGTDqWZhdXQsIGxhIHZhbGV1ciBlc3QgZMOpdGVybWluw6llIHBhciB1biBhcHBlbCAiCisiw6AgQjxnY2M+KDEpLCBvdSBlbiB1dGlsaXNhbnQgbCdhcmNoaXRlY3R1cmUgZGUgY29uc3RydWN0aW9uIHNpIFxccy0xQ0NcXHMwICIKKyJvdSBnY2MgbmUgc29udCBwYXMgZGlzcG9uaWJsZXMuIFV0aWxpc2VyIHVuZSBzZXVsZSBkZXMgb3B0aW9ucyBCPC1hPiBldCBCPC0iCisidD4gZXN0IHN1ZmZpc2FudCwgbGEgdmFsZXVyIGRlIGwndW5lIGVzdCB1dGlsaXPDqWUgY29tbWUgdmFsZXVyIHBhciBkw6lmYXV0IGRlICIKKyJsJ2F1dHJlLiBCaWVuIHPDu3IsIGlsIGVzdCBwcsOpZsOpcmFibGUgZGUgbidlbiBwcsOpY2lzZXIgcXUndW5lIHNldWxlLCBwdWlzcXVlICIKKyJCPGRwa2ctYXJjaGl0ZWN0dXJlPiBhZmZpY2hlcmEgdW4gYXZlcnRpc3NlbWVudCBzaSBsZSBjaG9peCBuZSBjb3JyZXNwb25kICIKKyJwYXMgw6AgbGEgdmFsZXVyIHBhciBkw6lmYXV0LiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjYgZHBrZy1idWlsZGZsYWdzLjE6NDUgZHBrZy1kZWIuMToyNyBkcGtnLWRpdmVydC44OjI0CisjOiBkcGtnLXF1ZXJ5LjE6MTMgZHBrZy1zb3VyY2UuMToxOCBkcGtnLXNwbGl0LjE6MzEgZHBrZy1zdGF0b3ZlcnJpZGUuODoyMworIzogZHBrZy10cmlnZ2VyLjE6MjQgZHBrZy12ZW5kb3IuMToxNCBzdGFydC1zdG9wLWRhZW1vbi44OjM0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjAyCisjLCBuby13cmFwCittc2dpZCAiQ09NTUFORFMiCittc2dzdHIgIkNPTU1BTkRFUyIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1sPiIKK21zZ3N0ciAiQjwtbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MzEKK21zZ2lkICIiCisiUHJpbnQgdGhlIGVudmlyb25tZW50IHZhcmlhYmxlcywgb25lIGVhY2ggbGluZSwgaW4gdGhlIGZvcm1hdCAiCisiSTxWQVJJQUJMRT12YWx1ZT4uIFRoaXMgaXMgdGhlIGRlZmF1bHQgYWN0aW9uLiIKK21zZ3N0ciAiIgorIkFmZmljaGUgbGVzIHZhcmlhYmxlcyBkJ2Vudmlyb25uZW1lbnQsIHVuZSBwYXIgbGlnbmUsIGVuIHV0aWxpc2FudCBsZSBmb3JtYXQgIgorIkk8VkFSSUFCTEU9dmFsZXVyPi4gQydlc3QgbCdhY3Rpb24gcGFyIGTDqWZhdXQuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTozMQorIywgbm8td3JhcAorbXNnaWQgIkI8LWU+STxkZWJpYW4tYXJjaGl0ZWN0dXJlPiIKK21zZ3N0ciAiQjwtZT5JPGFyY2hpdGVjdHVyZS1kZWJpYW4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjM3Cittc2dpZCAiIgorIkNoZWNrIGZvciBlcXVhbGl0eSBvZiBhcmNoaXRlY3R1cmUuIEJ5IGRlZmF1bHQgSTxkZWJpYW4tYXJjaGl0ZWN0dXJlPiBpcyAiCisiY29tcGFyZWQgYWdhaW5zdCB0aGUgY3VycmVudCBEZWJpYW4gYXJjaGl0ZWN0dXJlLCBiZWluZyB0aGUgaG9zdC4gIFRoaXMgIgorImFjdGlvbiB3aWxsIG5vdCBleHBhbmQgdGhlIGFyY2hpdGVjdHVyZSB3aWxkY2FyZHMuIENvbW1hbmQgZmluaXNoZXMgd2l0aCBhbiAiCisiZXhpdCBzdGF0dXMgb2YgMCBpZiBtYXRjaGVkLCAxIGlmIG5vdCBtYXRjaGVkLiIKK21zZ3N0ciAiIgorIlbDqXJpZmllIGwnw6lnYWxpdMOpIGQnYXJjaGl0ZWN0dXJlcy4gUGFyIGTDqWZhdXQsIEk8YXJjaGl0ZWN0dXJlLWRlYmlhbj4gZXN0ICIKKyJjb21wYXLDqWUgw6AgbCdhcmNoaXRlY3R1cmUgRGViaWFuIGFjdHVlbGxlLCBxdWkgZXN0IGNlbGxlIGRlIGxhIG1hY2hpbmUgaMO0dGUuICIKKyJDZXR0ZSBhY3Rpb24gbmUgZMOpdmVsb3BwZSBwYXMgbGVzIGFyY2hpdGVjdHVyZXMgam9rZXIuIExhIGNvbW1hbmRlIHF1aXR0ZSAiCisiYXZlYyB1biBjb2RlIGRlIHJldG91ciBkZSAwIHNpIGwnYXJjaGl0ZWN0dXJlIGNvcnJlc3BvbmQgZXQgZGUgMSBkYW5zIGxlIGNhcyAiCisiY29udHJhaXJlLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MzcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1pPkk8YXJjaGl0ZWN0dXJlLXdpbGRjYXJkPiIKK21zZ3N0ciAiQjwtaT5JPGFyY2hpdGVjdHVyZS1qb2tlcj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NDMKK21zZ2lkICIiCisiQ2hlY2sgZm9yIGlkZW50aXR5IG9mIGFyY2hpdGVjdHVyZSBieSBleHBhbmRpbmcgSTxhcmNoaXRlY3R1cmUtd2lsZGNhcmQ+IGFzICIKKyJhbiBhcmNoaXRlY3R1cmUgd2lsZGNhcmQgYW5kIGNvbXBhcmluZyBhZ2FpbnN0IHRoZSBjdXJyZW50IERlYmlhbiAiCisiYXJjaGl0ZWN0dXJlLiBDb21tYW5kIGZpbmlzaGVzIHdpdGggYW4gZXhpdCBzdGF0dXMgb2YgMCBpZiBtYXRjaGVkLCAxIGlmIG5vdCAiCisibWF0Y2hlZC4iCittc2dzdHIgIiIKKyJWw6lyaWZpZSBsJ8OpZ2FsaXTDqSBkJ2FyY2hpdGVjdHVyZXMgZW4gZMOpdmVsb3BwYW50IEk8YXJjaGl0ZWN0dXJlLWpva2VyPiBldCBlbiAiCisiY29tcGFyYW50IMOgIGwnYXJjaGl0ZWN0dXJlIERlYmlhbiBhY3R1ZWxsZS4gTGEgY29tbWFuZGUgcXVpdHRlIGF2ZWMgdW4gY29kZSAiCisiZGUgcmV0b3VyIGRlIDAgc2kgbCdhcmNoaXRlY3R1cmUgY29ycmVzcG9uZCBldCBkZSAxIGRhbnMgbGUgY2FzIGNvbnRyYWlyZS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjQzCisjLCBuby13cmFwCittc2dpZCAiQjwtcT5JPHZhcmlhYmxlLW5hbWU+IgorbXNnc3RyICJCPC1xPkk8bm9tLWRlLXZhcmlhYmxlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo0NgorbXNnaWQgIlByaW50IHRoZSB2YWx1ZSBvZiBhIHNpbmdsZSB2YXJpYWJsZS4iCittc2dzdHIgIkFmZmljaGUgbGEgdmFsZXVyIGQndW5lIHNldWxlIHZhcmlhYmxlLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NDYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1zPiIKK21zZ3N0ciAiQjwtcz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NTAKK21zZ2lkICIiCisiUHJpbnQgYW4gZXhwb3J0IGNvbW1hbmQuIFRoaXMgY2FuIGJlIHVzZWQgdG8gc2V0IHRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZXMgIgorInVzaW5nIGV2YWwuIgorbXNnc3RyICIiCisiUHJvZHVpdCB1bmUgY29tbWFuZGUsIHF1aSBwZXV0IMOqdHJlIHV0aWxpc8OpZSBwb3VyIHBvc2l0aW9ubmVyIGxlcyB2YXJpYWJsZXMgIgorImQnZW52aXJvbm5lbWVudCBhdmVjIMKrwqBldmFswqDCuy4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjUwCisjLCBuby13cmFwCittc2dpZCAiQjwtdT4iCittc2dzdHIgIkI8LXU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjUzCittc2dpZCAiUHJpbnQgYSBzaW1pbGFyIGNvbW1hbmQgdG8gQjwtcz4gYnV0IHRvIHVuc2V0IGFsbCB2YXJpYWJsZXMuIgorbXNnc3RyICIiCisiUHJvZHVpdCB1bmUgY29tbWFuZGUgc2ltaWxhaXJlIMOgIGNlbGxlIHByb2R1aXRlIHBhciBCPC1zPiwgbWFpcyBwb3VyICIKKyJzdXBwcmltZXIgbGVzIHZhcmlhYmxlcyBkZSBsJ2Vudmlyb25uZW1lbnQuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo1MworIywgbm8td3JhcAorbXNnaWQgIkI8LWM+STwgY29tbWFuZD4iCittc2dzdHIgIkI8LWM+IEk8Y29tbWFuZGU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjU3Cittc2dpZCAiIgorIkV4ZWN1dGUgYSBJPGNvbW1hbmQ+IGluIGFuIGVudmlyb25tZW50IHdoaWNoIGhhcyBhbGwgdmFyaWFibGVzIHNldCB0byB0aGUgIgorImRldGVybWluZWQgdmFsdWUuIgorbXNnc3RyICIiCisiRXjDqWN1dGUgdW5lIEk8Y29tbWFuZGU+IGRhbnMgdW4gZW52aXJvbm5lbWVudCBvw7kgdG91dGVzIGxlcyB2YXJpYWJsZXMgc29udCAiCisicG9zaXRpb25uw6llcyBhdXggdmFsZXVycyBzcMOpY2lmacOpZXMuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo1NworIywgbm8td3JhcAorbXNnaWQgIkI8LUw+IgorbXNnc3RyICJCPC1MPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo2MAorbXNnaWQgIlByaW50IGEgbGlzdCBvZiB2YWxpZCBhcmNoaXRlY3R1cmUgbmFtZXMuIgorbXNnc3RyICJBZmZpY2hlIHVuZSBsaXN0ZSBkZXMgYXJjaGl0ZWN0dXJlcyB2YWxhYmxlcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NjMgZHBrZy1idWlsZGZsYWdzLjE6OTIgZHBrZy1idWlsZHBhY2thZ2UuMToyMjYKKyM6IGRwa2ctY2hlY2tidWlsZGRlcHMuMTozNiBkcGtnLWRpc3RhZGRmaWxlLjE6MzUgZHBrZy1kZWIuMToxNzUKKyM6IGRwa2ctZGl2ZXJ0Ljg6NzQgZHBrZy1nZW5jaGFuZ2VzLjE6MTM0IGRwa2ctZ2VuY29udHJvbC4xOjEyNAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDQ2IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6NDEgZHBrZy1uYW1lLjE6NjEKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTozNiBkcGtnLXF1ZXJ5LjE6MTEzIGRwa2ctc2NhbnBhY2thZ2VzLjE6OTkKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMTo2OCBkcGtnLXNobGliZGVwcy4xOjIxOCBkcGtnLXNvdXJjZS4xOjk5CisjOiBkcGtnLXNwbGl0LjE6MTI5IGRwa2ctc3RhdG92ZXJyaWRlLjg6NDcgZHBrZy10cmlnZ2VyLjE6MzQgZHBrZy12ZW5kb3IuMTozMQorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjMxOQorbXNnaWQgIlNob3cgdGhlIHVzYWdlIG1lc3NhZ2UgYW5kIGV4aXQuIgorbXNnc3RyICJBZmZpY2hlIHVuIG1lc3NhZ2UgZCdhaWRlIHB1aXMgcXVpdHRlLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo2NiBkcGtnLWJ1aWxkZmxhZ3MuMTo5NSBkcGtnLWJ1aWxkcGFja2FnZS4xOjIyOQorIzogZHBrZy1jaGVja2J1aWxkZGVwcy4xOjM5IGRwa2ctZGlzdGFkZGZpbGUuMTozOCBkcGtnLWRlYi4xOjE3OAorIzogZHBrZy1kaXZlcnQuODo3NyBkcGtnLWdlbmNoYW5nZXMuMToxMzcgZHBrZy1nZW5jb250cm9sLjE6MTI3CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0NDkgZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTo0NCBkcGtnLW5hbWUuMTo2NAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjM5IGRwa2ctcXVlcnkuMToxMTYgZHBrZy1zY2FucGFja2FnZXMuMToxMDIKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMTo3MCBkcGtnLXNobGliZGVwcy4xOjIyMSBkcGtnLXNvdXJjZS4xOjEwMgorIzogZHBrZy1zcGxpdC4xOjEzMiBkcGtnLXN0YXRvdmVycmlkZS44OjUwIGRwa2ctdHJpZ2dlci4xOjM3IGRwa2ctdmVuZG9yLjE6MzQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMjIKK21zZ2lkICJTaG93IHRoZSB2ZXJzaW9uIGFuZCBleGl0LiIKK21zZ3N0ciAiQWZmaWNoZSBsZSBudW3DqXJvIGRlIHZlcnNpb24gcHVpcyBxdWl0dGUuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo2OAorIywgbm8td3JhcAorbXNnaWQgIkI8LWE+STxkZWJpYW4tYXJjaGl0ZWN0dXJlPiIKK21zZ3N0ciAiQjwtYT5JPGFyY2hpdGVjdHVyZS1kZWJpYW4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjcxCittc2dpZCAiU2V0IHRoZSBEZWJpYW4gYXJjaGl0ZWN0dXJlLiIKK21zZ3N0ciAiRml4ZSBsJ2FyY2hpdGVjdHVyZSBEZWJpYW4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo3MSBkcGtnLWJ1aWxkcGFja2FnZS4xOjExMAorIywgbm8td3JhcAorbXNnaWQgIkI8LXQ+STxnbnUtc3lzdGVtLXR5cGU+IgorbXNnc3RyICJCPC10Pkk8dHlwZS1kZS1zeXN0w6htZS1nbnU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjc0Cittc2dpZCAiU2V0IHRoZSBHTlUgc3lzdGVtIHR5cGUuIgorbXNnc3RyICJGaXhlIGxlIHR5cGUgZGUgc3lzdMOobWUgR05VLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NzQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1mPiIKK21zZ3N0ciAiQjwtZj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6ODEKK21zZ2lkICIiCisiVmFsdWVzIHNldCBieSBleGlzdGluZyBlbnZpcm9ubWVudCB2YXJpYWJsZXMgd2l0aCB0aGUgc2FtZSBuYW1lIGFzIHVzZWQgYnkgIgorInRoZSBzY3JpcHRzIGFyZSBob25vcmVkIChpLmUuIHVzZWQgYnkgQjxkcGtnLWFyY2hpdGVjdHVyZT4pLCBleGNlcHQgaWYgdGhpcyAiCisiZm9yY2UgZmxhZyBpcyBwcmVzZW50LiBUaGlzIGFsbG93cyB0aGUgdXNlciB0byBvdmVycmlkZSBhIHZhbHVlIGV2ZW4gd2hlbiAiCisidGhlIGNhbGwgdG8gQjxkcGtnLWFyY2hpdGVjdHVyZT4gaXMgYnVyaWVkIGluIHNvbWUgb3RoZXIgc2NyaXB0IChmb3IgZXhhbXBsZSAiCisiQjxkcGtnLWJ1aWxkcGFja2FnZT4oMSkpLiIKK21zZ3N0ciAiIgorIkxlcyB2YWxldXJzIHBvc2l0aW9ubsOpZXMgcGFyIGxlcyB2YXJpYWJsZXMgZCdlbnZpcm9ubmVtZW50IGF5YW50IGxlIG3Dqm1lIG5vbSAiCisicXVlIGNlbGxlcyB1dGlsaXPDqWVzIHBhciBsZXMgc2NyaXB0cyBzb250IHByaXNlcyBlbiBjb21wdGUgKGMnZXN0LcOgLWRpcmUgIgorInV0aWxpc8OpZSBwYXIgQjxkcGtnLWFyY2hpdGVjdHVyZT4pLCBzYXVmIHNpIGNldHRlIG9wdGlvbiBlc3QgcHLDqXNlbnRlLiBDZWNpICIKKyJwZXJtZXQgw6AgdW4gdXRpbGlzYXRldXIgZGUgc3VyY2hhcmdlciB1bmUgdmFsZXVyIG3Dqm1lIGxvcnNxdWUgbCdhcHBlbCDDoCAiCisiQjxkcGtnLWFyY2hpdGVjdHVyZT4gZXN0IGluY2x1cyBkYW5zIHVuIGF1dHJlIHNjcmlwdCAocGFyIGV4ZW1wbGUgQjxkcGtnLSIKKyJidWlsZHBhY2thZ2U+KDEpKS4iCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjgyCisjLCBuby13cmFwCittc2dpZCAiVEVSTVMiCittc2dzdHIgIlRFUk1JTk9MT0dJRSIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6ODMKKyMsIG5vLXdyYXAKK21zZ2lkICJidWlsZCBtYWNoaW5lIgorbXNnc3RyICJNYWNoaW5lIGRlIGNvbnN0cnVjdGlvbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo4NQorbXNnaWQgIlRoZSBtYWNoaW5lIHRoZSBwYWNrYWdlIGlzIGJ1aWx0IG9uLiIKK21zZ3N0ciAiTWFjaGluZSBzdXIgbGFxdWVsbGUgbGUgcGFxdWV0IGVzdCBjb25zdHJ1aXQuIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo4NQorIywgbm8td3JhcAorbXNnaWQgImhvc3QgbWFjaGluZSIKK21zZ3N0ciAiTWFjaGluZSBow7R0ZSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo4NworbXNnaWQgIlRoZSBtYWNoaW5lIHRoZSBwYWNrYWdlIGlzIGJ1aWx0IGZvci4iCittc2dzdHIgIk1hY2hpbmUgcG91ciBsYXF1ZWxsZSBsZSBwYXF1ZXQgZXN0IGNvbnN0cnVpdC4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjg3CisjLCBuby13cmFwCittc2dpZCAiRGViaWFuIGFyY2hpdGVjdHVyZSIKK21zZ3N0ciAiQXJjaGl0ZWN0dXJlIERlYmlhbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo5MAorbXNnaWQgIiIKKyJUaGUgRGViaWFuIGFyY2hpdGVjdHVyZSBzdHJpbmcsIHdoaWNoIHNwZWNpZmllcyB0aGUgYmluYXJ5IHRyZWUgaW4gdGhlICIKKyJcXHMtMUZUUFxcczAgYXJjaGl2ZS4gRXhhbXBsZXM6IGkzODYsIHNwYXJjLCBodXJkLWkzODYuIgorbXNnc3RyICIiCisiQ2hhw65uZSBkZSBjYXJhY3TDqHJlcyBkZSBsJ2FyY2hpdGVjdHVyZSBEZWJpYW4sIHF1aSBzcMOpY2lmaWUgbCdlbXBsYWNlbWVudCAiCisiZGFucyBsJ2FyY2hpdmUgXFxzLTFGVFBcXHMwLiBQYXIgZXhlbXBsZcKgOiBpMzg2LCBzcGFyYywgaHVyZC1pMzg2LiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6OTAKKyMsIG5vLXdyYXAKK21zZ2lkICJhcmNoaXRlY3R1cmUgd2lsZGNhcmQiCittc2dzdHIgIkFyY2hpdGVjdHVyZSBqb2tlciIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo5NAorbXNnaWQgIiIKKyJBbiBhcmNoaXRlY3R1cmUgd2lsZGNhcmQgaXMgYSBzcGVjaWFsIGFyY2hpdGVjdHVyZSBzdHJpbmcgdGhhdCB3aWxsIG1hdGNoICIKKyJhbnkgcmVhbCBhcmNoaXRlY3R1cmUgYmVpbmcgcGFydCBvZiBpdC4gVGhlIGdlbmVyYWwgZm9ybSBpcyBFPGx0Pmtlcm5lbEU8Z3Q+LSIKKyJFPGx0PmNwdUU8Z3Q+LiAgRXhhbXBsZXM6IGxpbnV4LWFueSwgYW55LWkzODYsIGh1cmQtYW55LiIKK21zZ3N0ciAiIgorIlVuZSBhcmNoaXRlY3R1cmUgam9rZXIgZXN0IHVuZSBhcmNoaXRlY3R1cmUgc3DDqWNpYWxlIHF1aSBjb3JyZXNwb25kIMOgIHRvdXRlcyAiCisibGVzIGFyY2hpdGVjdHVyZXMgcsOpZWxsZXMgcXVpIGVuIGZvbnQgcGFydGllLiBJbCBlc3QgZW4gZ8OpbsOpcmFsIGRlIGxhIGZvcm1lICIKKyJFPGx0Pm5veWF1RTxndD4tRTxsdD5wcm9jZXNzZXVyRTxndD4uIFBhciBleGVtcGxlwqA6IGxpbnV4LWFueSwgYW55LWkzODYsICIKKyJodXJkLWFueS4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjk0CisjLCBuby13cmFwCittc2dpZCAiXFxzLTFHTlVcXHMwIHN5c3RlbSB0eXBlIgorbXNnc3RyICJUeXBlIGRlIHN5c3TDqG1lIFxccy0xR05VXFxzMCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo5OAorbXNnaWQgIiIKKyJBbiBhcmNoaXRlY3R1cmUgc3BlY2lmaWNhdGlvbiBzdHJpbmcgY29uc2lzdGluZyBvZiB0d28gcGFydHMgc2VwYXJhdGVkIGJ5IGEgIgorImRhc2g6IGNwdSBhbmQgc3lzdGVtLiBFeGFtcGxlczogaTM4Ni1saW51eC1nbnUsIHNwYXJjLWxpbnV4LWdudSwgaTM4Ni1nbnUsICIKKyJ4ODZfNjQtbmV0YnNkLiIKK21zZ3N0ciAiIgorIkNoYcOubmUgZGUgY2FyYWN0w6hyZXMgZMOpZmluaXNzYW50IGwnYXJjaGl0ZWN0dXJlIGV0IGNvbnN0aXR1w6llIGRlIGRldXggIgorInBhcnRpZXMgc8OpcGFyw6llcyBwYXIgdW4gdGlyZXTCoDogcHJvY2Vzc2V1ciBldCBzeXN0w6htZS4gUGFyIGV4ZW1wbGXCoDogaTM4Ni0iCisibGludXgtZ251LCBzcGFyYy1saW51eC1nbnUsIGkzODYtZ251LCB4ODZfNjQtbmV0YnNkLiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6OTkKKyMsIG5vLXdyYXAKK21zZ2lkICJWQVJJQUJMRVMiCittc2dzdHIgIlZBUklBQkxFUyBEJ0VOVklST05ORU1FTlQiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTAxCittc2dpZCAiVGhlIGZvbGxvd2luZyB2YXJpYWJsZXMgYXJlIHNldCBieSBCPGRwa2ctYXJjaGl0ZWN0dXJlPjoiCittc2dzdHIgIkxlcyB2YXJpYWJsZXMgc3VpdmFudGVzIHNvbnQgcG9zaXRpb25uw6llcyBwYXIgQjxkcGtnLWFyY2hpdGVjdHVyZT7CoDoiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEwMQorIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0JVSUxEX0FSQ0hcXHMwIgorbXNnc3RyICJcXHMtMURFQl9CVUlMRF9BUkNIXFxzMCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMDMKK21zZ2lkICJUaGUgRGViaWFuIGFyY2hpdGVjdHVyZSBvZiB0aGUgYnVpbGQgbWFjaGluZS4iCittc2dzdHIgIkFyY2hpdGVjdHVyZSBEZWJpYW4gZGUgbGEgbWFjaGluZSBkZSBjb25zdHJ1Y3Rpb24uIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMDMKKyMsIG5vLXdyYXAKK21zZ2lkICJcXHMtMURFQl9CVUlMRF9BUkNIX09TXFxzMCIKK21zZ3N0ciAiXFxzLTFERUJfQlVJTERfQVJDSF9PU1xcczAiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTA1Cittc2dpZCAiVGhlIERlYmlhbiBzeXN0ZW0gbmFtZSBvZiB0aGUgYnVpbGQgbWFjaGluZS4iCittc2dzdHIgIk5vbSBkdSBzeXN0w6htZSBEZWJpYW4gZGUgbGEgbWFjaGluZSBkZSBjb25zdHJ1Y3Rpb24uIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMDUKKyMsIG5vLXdyYXAKK21zZ2lkICJcXHMtMURFQl9CVUlMRF9BUkNIX0NQVVxcczAiCittc2dzdHIgIlxccy0xREVCX0JVSUxEX0FSQ0hfQ1BVXFxzMCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMDcKK21zZ2lkICJUaGUgRGViaWFuIGNwdSBuYW1lIG9mIHRoZSBidWlsZCBtYWNoaW5lLiIKK21zZ3N0ciAiTm9tIGRlIHByb2Nlc3NldXIgRGViaWFuIGRlIGxhIG1hY2hpbmUgZGUgY29uc3RydWN0aW9uLiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTA3CisjLCBuby13cmFwCittc2dpZCAiXFxzLTFERUJfQlVJTERfQVJDSF9CSVRTXFxzMCIKK21zZ3N0ciAiXFxzLTFERUJfQlVJTERfQVJDSF9CSVRTXFxzMCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMDkKK21zZ2lkICJUaGUgcG9pbnRlciBzaXplIG9mIHRoZSBidWlsZCBtYWNoaW5lIChpbiBiaXRzKS4iCittc2dzdHIgIlRhaWxsZSBkZSBwb2ludGV1ciBkZSBsYSBtYWNoaW5lIGRlIGNvbnN0cnVjdGlvbiAoZW4gYml0cykuIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMDkKKyMsIG5vLXdyYXAKK21zZ2lkICJcXHMtMURFQl9CVUlMRF9BUkNIX0VORElBTlxcczAiCittc2dzdHIgIlxccy0xREVCX0JVSUxEX0FSQ0hfRU5ESUFOXFxzMCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMTEKK21zZ2lkICJUaGUgZW5kaWFubmVzcyBvZiB0aGUgYnVpbGQgbWFjaGluZSAobGl0dGxlIC8gYmlnKS4iCittc2dzdHIgIsKrwqBFbmRpYW5uZXNzwrvCoGRlIGxhIG1hY2hpbmUgZGUgY29uc3RydWN0aW9uIChsaXR0bGUgb3UgYmlnKS4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjExMQorIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0JVSUxEX0dOVV9DUFVcXHMwIgorbXNnc3RyICJcXHMtMURFQl9CVUlMRF9HTlVfQ1BVXFxzMCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMTMKK21zZ2lkICJUaGUgXFxzLTFDUFVcXHMwIHBhcnQgb2YgXFxzLTFERUJfQlVJTERfR05VX1RZUEVcXHMwLiIKK21zZ3N0ciAiUGFydGllIFxccy0xQ1BVXFxzMCBkZSBcXHMtMURFQl9CVUlMRF9HTlVfVFlQRVxcczAuIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMTMKKyMsIG5vLXdyYXAKK21zZ2lkICJcXHMtMURFQl9CVUlMRF9HTlVfU1lTVEVNXFxzMCIKK21zZ3N0ciAiXFxzLTFERUJfQlVJTERfR05VX1NZU1RFTVxcczAiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTE1Cittc2dpZCAiVGhlIFN5c3RlbSBwYXJ0IG9mIFxccy0xREVCX0JVSUxEX0dOVV9UWVBFXFxzMC4iCittc2dzdHIgIlBhcnRpZSDCq8Kgc3lzdMOobWXCoMK7IGRlIFxccy0xREVCX0JVSUxEX0dOVV9UWVBFXFxzMC4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjExNQorIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0JVSUxEX0dOVV9UWVBFXFxzMCIKK21zZ3N0ciAiXFxzLTFERUJfQlVJTERfR05VX1RZUEVcXHMwIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjExNworbXNnaWQgIlRoZSBcXHMtMUdOVVxcczAgc3lzdGVtIHR5cGUgb2YgdGhlIGJ1aWxkIG1hY2hpbmUuIgorbXNnc3RyICJUeXBlIGRlIHN5c3TDqG1lIFxccy0xR05VXFxzMCBkZSBsYSBtYWNoaW5lIGRlIGNvbnN0cnVjdGlvbi4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjExNworIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJcXHMtMURFQl9CVUlMRF9BUkNIXFxzMCIKK21zZ2lkICJcXHMtMURFQl9CVUlMRF9NVUxUSUFSQ0hcXHMwIgorbXNnc3RyICJcXHMtMURFQl9CVUlMRF9BUkNIXFxzMCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMjAKKyMsIGZ1enp5CisjfCBtc2dpZCAiVGhlIFxccy0xR05VXFxzMCBzeXN0ZW0gdHlwZSBvZiB0aGUgYnVpbGQgbWFjaGluZS4iCittc2dpZCAiIgorIlRoZSBjbGFyaWZpZWQgXFxzLTFHTlVcXHMwIHN5c3RlbSB0eXBlIG9mIHRoZSBidWlsZCBtYWNoaW5lLCB1c2VkIGZvciAiCisiZmlsZXN5c3RlbSBwYXRocy4iCittc2dzdHIgIlR5cGUgZGUgc3lzdMOobWUgXFxzLTFHTlVcXHMwIGRlIGxhIG1hY2hpbmUgZGUgY29uc3RydWN0aW9uLiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTIwCisjLCBuby13cmFwCittc2dpZCAiXFxzLTFERUJfSE9TVF9BUkNIXFxzMCIKK21zZ3N0ciAiXFxzLTFERUJfSE9TVF9BUkNIXFxzMCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMjIKK21zZ2lkICJUaGUgRGViaWFuIGFyY2hpdGVjdHVyZSBvZiB0aGUgaG9zdCBtYWNoaW5lLiIKK21zZ3N0ciAiQXJjaGl0ZWN0dXJlIERlYmlhbiBkZSBsYSBtYWNoaW5lIGjDtHRlLiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTIyCisjLCBuby13cmFwCittc2dpZCAiXFxzLTFERUJfSE9TVF9BUkNIX09TXFxzMCIKK21zZ3N0ciAiXFxzLTFERUJfSE9TVF9BUkNIX09TXFxzMCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMjQKK21zZ2lkICJUaGUgRGViaWFuIHN5c3RlbSBuYW1lIG9mIHRoZSBob3N0IG1hY2hpbmUuIgorbXNnc3RyICJOb20gZHUgc3lzdMOobWUgRGViaWFuIGRlIGxhIG1hY2hpbmUgaMO0dGUuIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMjQKKyMsIG5vLXdyYXAKK21zZ2lkICJcXHMtMURFQl9IT1NUX0FSQ0hfQ1BVXFxzMCIKK21zZ3N0ciAiXFxzLTFERUJfSE9TVF9BUkNIX0NQVVxcczAiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTI2Cittc2dpZCAiVGhlIERlYmlhbiBjcHUgbmFtZSBvZiB0aGUgaG9zdCBtYWNoaW5lLiIKK21zZ3N0ciAiTm9tIGR1IHByb2Nlc3NldXIgRGViaWFuIGRlIGxhIG1hY2hpbmUgaMO0dGUuIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMjYKKyMsIG5vLXdyYXAKK21zZ2lkICJcXHMtMURFQl9IT1NUX0FSQ0hfQklUU1xcczAiCittc2dzdHIgIlxccy0xREVCX0hPU1RfQVJDSF9CSVRTXFxzMCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMjgKK21zZ2lkICJUaGUgcG9pbnRlciBzaXplIG9mIHRoZSBob3N0IG1hY2hpbmUgKGluIGJpdHMpLiIKK21zZ3N0ciAiVGFpbGxlIGRlIHBvaW50ZXVyIGRlIGxhIG1hY2hpbmUgaMO0dGUgKGVuIGJpdHMpLiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTI4CisjLCBuby13cmFwCittc2dpZCAiXFxzLTFERUJfSE9TVF9BUkNIX0VORElBTlxcczAiCittc2dzdHIgIlxccy0xREVCX0hPU1RfQVJDSF9FTkRJQU5cXHMwIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEzMAorbXNnaWQgIlRoZSBlbmRpYW5uZXNzIG9mIHRoZSBob3N0IG1hY2hpbmUgKGxpdHRsZSAvIGJpZykuIgorbXNnc3RyICLCq8KgRW5kaWFuZXNzwqDCuyBkZSBsYSBtYWNoaW5lIGjDtHRlIChsaXR0bGUgb3UgYmlnKS4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEzMAorIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0hPU1RfR05VX0NQVVxcczAiCittc2dzdHIgIlxccy0xREVCX0hPU1RfR05VX0NQVVxcczAiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTMyCittc2dpZCAiVGhlIFxccy0xQ1BVXFxzMCBwYXJ0IG9mIFxccy0xREVCX0hPU1RfR05VX1RZUEVcXHMwLiIKK21zZ3N0ciAiUGFydGllIMKrwqBwcm9jZXNzZXVywqDCuyBkZSBcXHMtMURFQl9IT1NUX0dOVV9UWVBFXFxzMC4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEzMgorIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0hPU1RfR05VX1NZU1RFTVxcczAiCittc2dzdHIgIlxccy0xREVCX0hPU1RfR05VX1NZU1RFTVxcczAiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTM0Cittc2dpZCAiVGhlIFN5c3RlbSBwYXJ0IG9mIFxccy0xREVCX0hPU1RfR05VX1RZUEVcXHMwLiIKK21zZ3N0ciAiUGFydGllIMKrwqBzeXN0w6htZcKgwrsgZGUgXFxzLTFERUJfSE9TVF9HTlVfVFlQRVxcczAuIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMzQKKyMsIG5vLXdyYXAKK21zZ2lkICJcXHMtMURFQl9IT1NUX0dOVV9UWVBFXFxzMCIKK21zZ3N0ciAiXFxzLTFERUJfSE9TVF9HTlVfVFlQRVxcczAiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTM2Cittc2dpZCAiVGhlIFxccy0xR05VXFxzMCBzeXN0ZW0gdHlwZSBvZiB0aGUgaG9zdCBtYWNoaW5lLiIKK21zZ3N0ciAiVHlwZSBkZSBzeXN0w6htZSBcXHMtMUdOVVxcczAgZGUgbGEgbWFjaGluZSBow7R0ZS4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEzNgorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJcXHMtMURFQl9IT1NUX0FSQ0hcXHMwIgorbXNnaWQgIlxccy0xREVCX0hPU1RfTVVMVElBUkNIXFxzMCIKK21zZ3N0ciAiXFxzLTFERUJfSE9TVF9BUkNIXFxzMCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMzkKKyMsIGZ1enp5CisjfCBtc2dpZCAiVGhlIFxccy0xR05VXFxzMCBzeXN0ZW0gdHlwZSBvZiB0aGUgaG9zdCBtYWNoaW5lLiIKK21zZ2lkICIiCisiVGhlIGNsYXJpZmllZCBcXHMtMUdOVVxcczAgc3lzdGVtIHR5cGUgb2YgdGhlIGhvc3QgbWFjaGluZSwgdXNlZCBmb3IgIgorImZpbGVzeXN0ZW0gcGF0aHMuIgorbXNnc3RyICJUeXBlIGRlIHN5c3TDqG1lIFxccy0xR05VXFxzMCBkZSBsYSBtYWNoaW5lIGjDtHRlLiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTQwCisjLCBuby13cmFwCittc2dpZCAiREVCSUFOL1JVTEVTIgorbXNnc3RyICJERUJJQU4vUlVMRVMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTQ4Cittc2dpZCAiIgorIlRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZXMgc2V0IGJ5IEI8ZHBrZy1hcmNoaXRlY3R1cmU+IGFyZSBwYXNzZWQgdG8gSTxkZWJpYW4vIgorInJ1bGVzPiBhcyBtYWtlIHZhcmlhYmxlcyAoc2VlIG1ha2UgZG9jdW1lbnRhdGlvbikuIEhvd2V2ZXIsIHlvdSBzaG91bGQgbm90ICIKKyJyZWx5IG9uIHRoZW0sIGFzIHRoaXMgYnJlYWtzIG1hbnVhbCBpbnZvY2F0aW9uIG9mIHRoZSBzY3JpcHQuIEluc3RlYWQsIHlvdSAiCisic2hvdWxkIGFsd2F5cyBpbml0aWFsaXplIHRoZW0gdXNpbmcgQjxkcGtnLWFyY2hpdGVjdHVyZT4gd2l0aCB0aGUgLXEgb3B0aW9uLiAiCisiSGVyZSBhcmUgc29tZSBleGFtcGxlcywgd2hpY2ggYWxzbyBzaG93IGhvdyB5b3UgY2FuIGltcHJvdmUgdGhlIGNyb3NzICIKKyJjb21waWxhdGlvbiBzdXBwb3J0IGluIHlvdXIgcGFja2FnZToiCittc2dzdHIgIiIKKyJMZXMgdmFyaWFibGVzIGQnZW52aXJvbm5lbWVudCBkw6lmaW5pZXMgcGFyIEI8ZHBrZy1hcmNoaXRlY3R1cmU+IHNvbnQgIgorImZvdXJuaWVzIMOgIEk8ZGViaWFuL3J1bGVzPiBjb21tZSB2YXJpYWJsZXMgcG91ciBtYWtlIChjb25zdWx0ZXogbGEgIgorImRvY3VtZW50YXRpb24gZGUgbWFrZSkuIENlcGVuZGFudCwgdm91cyBuZSBkZXZleiBwYXMgY29tcHRlciBsw6AtZGVzc3VzICIKKyJwdWlzcXVlIGNlbGEgZW1ww6pjaGUgbGVzIGFwcGVscyBtYW51ZWxzIMOgIGNlIHNjcmlwdC4gw4AgbGEgcGxhY2UsIHZvdXMgZGV2ZXogIgorInRvdWpvdXJzIGxlcyBpbml0aWFsaXNlciBlbiB1dGlsaXNhbnQgQjxkcGtnLWFyY2hpdGVjdHVyZT4gYXZlYyBsJ29wdGlvbiAtcS4gIgorIlZvaWNpIHF1ZWxxdWVzIGV4ZW1wbGVzLCBxdWkgaW5kaXF1ZW50IGF1c3NpIGNvbW1lbnQgYW3DqWxpb3JlciBsYSBnZXN0aW9uICIKKyJkZXMgY29tcGlsYXRpb25zIGNyb2lzw6llcyBkZSB2b3RyZSBwYXF1ZXTCoDoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTUxIGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTY4Cittc2dpZCAiSW5zdGVhZCBvZjoiCittc2dzdHIgIkF1IGxpZXUgZGXCoDoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTU1CisjLCBuby13cmFwCittc2dpZCAiIgorIkFSQ0g9XFxgZHBrZyAtLXByaW50LWFyY2hpdGVjdHVyZVxcYFxuIgorImNvbmZpZ3VyZSAkKFxccy0xQVJDSFxcczApLWxpbnV4XG4iCittc2dzdHIgIiIKKyJBUkNIPVxcYGRwa2cgLS1wcmludC1hcmNoaXRlY3R1cmVcXGBcbiIKKyJjb25maWd1cmUgJChcXHMtMUFSQ0hcXHMwKS1saW51eFxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjE1OAorbXNnaWQgInBsZWFzZSB1c2UgdGhlIGZvbGxvd2luZzoiCittc2dzdHIgIlZldWlsbGV6IHV0aWxpc2VywqA6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjE2MgorIywgbm8td3JhcAorbXNnaWQgIiIKKyJcXCZcXHMtMURFQl9CVUlMRF9HTlVfVFlQRVxcczAgOj0gJChzaGVsbCBkcGtnLWFyY2hpdGVjdHVyZSAtcURFQl9CVUlMRF9HTlVfVFlQRSlcbiIKKyJcXCZcXHMtMURFQl9IT1NUX0dOVV9UWVBFXFxzMCA6PSAkKHNoZWxsIGRwa2ctYXJjaGl0ZWN0dXJlIC1xREVCX0hPU1RfR05VX1RZUEUpXG4iCittc2dzdHIgIiIKKyJcXCZcXHMtMURFQl9CVUlMRF9HTlVfVFlQRVxcczDCoDo9ICQoc2hlbGwgZHBrZy1hcmNoaXRlY3R1cmUgLXFERUJfQlVJTERfR05VX1RZUEUpXG4iCisiXFwmXFxzLTFERUJfSE9TVF9HTlVfVFlQRVxcczDCoDo9ICQoc2hlbGwgZHBrZy1hcmNoaXRlY3R1cmUgLXFERUJfSE9TVF9HTlVfVFlQRSlcbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxNjQKKyMsIG5vLXdyYXAKK21zZ2lkICJjb25maWd1cmUgLS1idWlsZD0kKFxccy0xREVCX0JVSUxEX0dOVV9UWVBFXFxzMCkgLS1ob3N0PSQoXFxzLTFERUJfSE9TVF9HTlVfVFlQRVxcczApXG4iCittc2dzdHIgImNvbmZpZ3VyZSAtLWJ1aWxkPSQoXFxzLTFERUJfQlVJTERfR05VX1RZUEVcXHMwKSAtLWhvc3Q9JChcXHMtMURFQl9IT1NUX0dOVV9UWVBFXFxzMClcbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxNzQKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiQVJDSD1cXGBkcGtnIC0tcHJpbnQtYXJjaGl0ZWN0dXJlXFxgXG4iCisiaWZlcSAoJChcXHMtMUFSQ0hcXHMwKSxhbHBoYSlcbiIKKyIgIC4uLlxuIgorImVuZGlmXG4iCittc2dzdHIgIiIKKyJBUkNIPVxcYGRwa2cgLS1wcmludC1hcmNoaXRlY3R1cmVcXGBcbiIKKyJpZmVxICgkKFxccy0xQVJDSFxcczApLGFscGhhKVxuIgorIiAgLi4uXG4iCisiZW5kaWZcbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxNzcKK21zZ2lkICJwbGVhc2UgdXNlOiIKK21zZ3N0ciAiVmV1aWxsZXogdXRpbGlzZXLCoDoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTgwCisjLCBuby13cmFwCittc2dpZCAiXFwmXFxzLTFERUJfSE9TVF9BUkNIXFxzMCA6PSAkKHNoZWxsIGRwa2ctYXJjaGl0ZWN0dXJlIC1xREVCX0hPU1RfQVJDSClcbiIKK21zZ3N0ciAiXFwmXFxzLTFERUJfSE9TVF9BUkNIXFxzMMKgOj0gJChzaGVsbCBkcGtnLWFyY2hpdGVjdHVyZSAtcURFQl9IT1NUX0FSQ0gpXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTg0CisjLCBuby13cmFwCittc2dpZCAiIgorImlmZXEgKCQoXFxzLTFERUJfSE9TVF9BUkNIXFxzMCksYWxwaGEpXG4iCisiICAuLi5cbiIKKyJlbmRpZlxuIgorbXNnc3RyICIiCisiaWZlcSAoJChcXHMtMURFQl9IT1NUX0FSQ0hcXHMwKSxhbHBoYSlcbiIKKyIgIC4uLlxuIgorImVuZGlmXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTg4Cittc2dpZCAiIgorIm9yIGlmIHlvdSBvbmx5IG5lZWQgdG8gY2hlY2sgdGhlIENQVSBvciBPUyB0eXBlLCB1c2UgdGhlIERFQl9IT1NUX0FSQ0hfQ1BVICIKKyJvciBERUJfSE9TVF9BUkNIX09TIHZhcmlhYmxlcy4iCittc2dzdHIgIiIKKyJPdSwgc2kgdm91cyBuJ2F2ZXogYmVzb2luIHF1ZSBkZSB2w6lyaWZpZXIgbGUgdHlwZSBkdSBwcm9jZXNzZXVyIGV0IGR1ICIKKyJzeXN0w6htZSwgdXRpbGlzZXogbGVzIHZhcmlhYmxlcyBERUJfSE9TVF9BUkNIX0NQVSBvdSBERUJfSE9TVF9BUkNIX09TLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxOTMKK21zZ2lkICIiCisiSW4gZ2VuZXJhbCwgY2FsbGluZyBkcGtnIGluIHRoZSBydWxlcyBmaWxlIHRvIGdldCBhcmNoaXRlY3R1cmUgaW5mb3JtYXRpb24gIgorImlzIGRlcHJlY2F0ZWQgKHVubGVzcyB5b3Ugd2FudCB0byBwcm92aWRlIGJhY2t3YXJkIGNvbXBhdGliaWxpdHksIHNlZSAiCisiYmVsb3cpLiAgRXNwZWNpYWxseSB0aGUgLS1wcmludC1hcmNoaXRlY3R1cmUgb3B0aW9uIGlzIHVucmVsaWFibGUgc2luY2Ugd2UgIgorImhhdmUgRGViaWFuIGFyY2hpdGVjdHVyZXMgd2hpY2ggZG9uJ3QgZXF1YWwgYSBwcm9jZXNzb3IgbmFtZS4iCittc2dzdHIgIiIKKyJBcHBlbGVyIGRwa2cgZGFucyBsZXMgZmljaGllcnMgwqvCoHJ1bGVzwqDCuyBwb3VyIG9idGVuaXIgbGVzIGluZm9ybWF0aW9ucyBzdXIgIgorImwnYXJjaGl0ZWN0dXJlIGVzdCBkw6ljb25zZWlsbMOpIChzYXVmIHBvdXIgZGVzIHJhaXNvbnMgZGUgY29tcGF0aWJpbGl0w6kgIgorImFycmnDqHJlLCB2b3lleiBjaS1kZXNzb3VzKS4gRW4gcGFydGljdWxpZXIsIGwnb3B0aW9uIC0tcHJpbnQtYXJjaGl0ZWN0dXJlICIKKyJuJ2VzdCBwYXMgZmlhYmxlIHB1aXNxdWUgY2VydGFpbmVzIGFyY2hpdGVjdHVyZXMgRGViaWFuIG5lIGNvcnJlc3BvbmRlbnQgw6AgIgorImF1Y3VuIG5vbSBkZSBwcm9jZXNzZXVyLiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTk0CisjLCBuby13cmFwCittc2dpZCAiQkFDS1dBUkQgQ09NUEFUSUJJTElUWSIKK21zZ3N0ciAiQ09NUEFUSUJJTElUw4kgQVJSScOIUkUiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTk4Cittc2dpZCAiIgorIlRoZSBERUJfKl9BUkNIX0JJVFMgYW5kIERFQl8qX0FSQ0hfRU5ESUFOIHZhcmlhYmxlcyB3ZXJlIGludHJvZHVjZWQgaW4gZHBrZy0iCisiZGV2IDEuMTUuNC4gVXNpbmcgdGhlbSBpbiBJPGRlYmlhbi9ydWxlcz4gdGh1cyByZXF1aXJlcyBhIGJ1aWxkLWRlcGVuZGVuY3kgIgorIm9uIGRwa2ctZGV2IChFPGd0Pj0gMS4xNS40KS4iCittc2dzdHIgIiIKKyJMZXMgdmFyaWFibGVzIERFQl8qX0FSQ0hfQklUUyBldCBERUJfKl9BUkNIX0VORElBTiBzb250IGFwcGFydWVzIGF2ZWMgbGEgIgorInZlcnNpb24gMS4xNS40IGRlIGRwa2ctZGV2LiBTaSBlbGxlcyBzb250IHV0aWxpc8OpZXMgZGFucyBJPGRlYmlhbi9ydWxlcz4sICIKKyJ1bmUgZMOpcGVuZGFuY2UgZGUgY29uc3RydWN0aW9uIHN1ciBkcGtnLWRldiAoRTxndD49IDEuMTUuNCkgZXN0IG7DqWNlc3NhaXJlLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyMDMKK21zZ2lkICIiCisiVGhlIERFQl9IT1NUX0FSQ0hfQ1BVIGFuZCBERUJfSE9TVF9BUkNIX09TIHZhcmlhYmxlcyB3ZXJlIGludHJvZHVjZWQgaW4gZHBrZy0iCisiZGV2IDEuMTMuMi4gQmVmb3JlIHRoaXMgSTxkZWJpYW4vcnVsZXM+IGZpbGVzIHRlbmRlZCB0byBjaGVjayB0aGUgdmFsdWVzIG9mICIKKyJ0aGUgREVCX0hPU1RfR05VX0NQVSBvciBERUJfSE9TVF9HTlVfVFlQRSB2YXJpYWJsZXMgd2hpY2ggaGF2ZSBiZWVuIHN1YmplY3QgIgorInRvIGNoYW5nZS4iCittc2dzdHIgIiIKKyJMZXMgdmFyaWFibGVzIERFQl9IT1NUX0FSQ0hfQ1BVIGV0IERFQl9IT1NUX0FSQ0hfT1Mgc29udCBhcHBhcnVlcyBhdmVjIGxhICIKKyJ2ZXJzaW9uIDEuMTMuMiBkZSBkcGtnLWRldi4gQXVwYXJhdmFudCwgbGVzIGZpY2hpZXJzIEk8ZGViaWFuL3J1bGVzPiAiCisidXRpbGlzYWllbnQgbGVzIHZhcmlhYmxlcyBERUJfSE9TVF9HTlVfQ1BVIG91IERFQl9IT1NUX0dOVV9UWVBFIHF1aSBvbnQgZXUgIgorInRlbmRhbmNlIMOgIHZhcmllciBkYW5zIGxlIHRlbXBzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyMDgKK21zZ2lkICIiCisiV2hlcmUgSTxkZWJpYW4vcnVsZXM+IGZpbGVzIGNoZWNrIHRoZXNlIHZhcmlhYmxlcyB0byBkZWNpZGUgaG93IG9yIHdoYXQgdG8gIgorImNvbXBpbGUsIHRoaXMgc2hvdWxkIGJlIHVwZGF0ZWQgdG8gdXNlIHRoZSBuZXcgdmFyaWFibGVzIGFuZCB2YWx1ZXMuICBZb3UgIgorIm1heSB3aXNoIHRvIHJldGFpbiBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eSB3aXRoIG9sZGVyIHZlcnNpb24gb2YgZHBrZy1kZXYgYnkgIgorInVzaW5nIHRoZSBmb2xsb3dpbmcgY29kZToiCittc2dzdHIgIiIKKyJTaSBjZXMgdmFyaWFibGVzIHNvbnQgZW5jb3JlIHV0aWxpc8OpZXMgZGFucyB1biBmaWNoaWVyIEk8ZGViaWFuL3J1bGVzPiBwb3VyICIKKyJkw6ljaWRlciBxdW9pIGNvbnN0cnVpcmUgZXQgY29tbWVudCwgaWwgZmF1dCBsZXMgcmVtcGxhY2VyIHBhciBsZXMgbm91dmVsbGVzICIKKyJ2YXJpYWJsZXMuIFZvdXMgcG91dmV6IHJlc3RlciBjb21wYXRpYmxlIGF2ZWMgbGVzIHZlcnNpb25zIHByw6ljw6lkZW50ZXMgZGUgIgorImRwa2ctZGV2IGVuIHV0aWxpc2FudCBsZSBjb2RlIHN1aXZhbnTCoDoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjEyCisjLCBuby13cmFwCittc2dpZCAiIgorIkRFQl9IT1NUX0FSQ0hfQ1BVIDo9ICQoc2hlbGwgZHBrZy1hcmNoaXRlY3R1cmUgLXFERUJfSE9TVF9BUkNIX0NQVSAyRTxndD4vZGV2L251bGwpXG4iCisiREVCX0hPU1RfQVJDSF9PUyA6PSAkKHNoZWxsIGRwa2ctYXJjaGl0ZWN0dXJlIC1xREVCX0hPU1RfQVJDSF9PUyAyRTxndD4vZGV2L251bGwpXG4iCittc2dzdHIgIiIKKyJERUJfSE9TVF9BUkNIX0NQVcKgOj0gJChzaGVsbCBkcGtnLWFyY2hpdGVjdHVyZSAtcURFQl9IT1NUX0FSQ0hfQ1BVIDJFPGd0Pi9kZXYvbnVsbClcbiIKKyJERUJfSE9TVF9BUkNIX09TwqA6PSAkKHNoZWxsIGRwa2ctYXJjaGl0ZWN0dXJlIC1xREVCX0hPU1RfQVJDSF9PUyAyRTxndD4vZGV2L251bGwpXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjI2CisjLCBuby13cmFwCittc2dpZCAiIgorIiMgVGFrZSBhY2NvdW50IG9mIG9sZCBkcGtnLWFyY2hpdGVjdHVyZSBvdXRwdXQuXG4iCisiaWZlcSAoJChERUJfSE9TVF9BUkNIX0NQVSksKVxuIgorIiAgREVCX0hPU1RfQVJDSF9DUFUgOj0gJChzaGVsbCBkcGtnLWFyY2hpdGVjdHVyZSAtcURFQl9IT1NUX0dOVV9DUFUpXG4iCisiICBpZmVxICgkKERFQl9IT1NUX0FSQ0hfQ1BVKSx4ODZfNjQpXG4iCisiICAgIERFQl9IT1NUX0FSQ0hfQ1BVIDo9IGFtZDY0XG4iCisiICBlbmRpZlxuIgorImVuZGlmXG4iCisiaWZlcSAoJChERUJfSE9TVF9BUkNIX09TKSwpXG4iCisiICBERUJfSE9TVF9BUkNIX09TIDo9ICQoc3Vic3QgLWdudSwsJChzaGVsbCBkcGtnLWFyY2hpdGVjdHVyZSAtcURFQl9IT1NUX0dOVV9TWVNURU0pKVxuIgorIiAgaWZlcSAoJChERUJfSE9TVF9BUkNIX09TKSxnbnUpXG4iCisiICAgIERFQl9IT1NUX0FSQ0hfT1MgOj0gaHVyZFxuIgorIiAgZW5kaWZcbiIKKyJlbmRpZlxuIgorbXNnc3RyICIiCisiIyBQcmlzZSBlbiBjb21wdGUgZGVzIGFuY2llbm5lcyB2ZXJzaW9ucyBkZSBkcGtnLWFyY2hpdGVjdHVyZS5cbiIKKyJpZmVxICgkKERFQl9IT1NUX0FSQ0hfQ1BVKSwpXG4iCisiICBERUJfSE9TVF9BUkNIX0NQVcKgOj0gJChzaGVsbCBkcGtnLWFyY2hpdGVjdHVyZSAtcURFQl9IT1NUX0dOVV9DUFUpXG4iCisiICBpZmVxICgkKERFQl9IT1NUX0FSQ0hfQ1BVKSx4ODZfNjQpXG4iCisiICAgIERFQl9IT1NUX0FSQ0hfQ1BVwqA6PSBhbWQ2NFxuIgorIiAgZW5kaWZcbiIKKyJlbmRpZlxuIgorImlmZXEgKCQoREVCX0hPU1RfQVJDSF9PUyksKVxuIgorIiAgREVCX0hPU1RfQVJDSF9PU8KgOj0gJChzdWJzdCAtZ251LCwkKHNoZWxsIGRwa2ctYXJjaGl0ZWN0dXJlIC1xREVCX0hPU1RfR05VX1NZU1RFTSkpXG4iCisiICBpZmVxICgkKERFQl9IT1NUX0FSQ0hfT1MpLGdudSlcbiIKKyIgICAgREVCX0hPU1RfQVJDSF9PU8KgOj0gaHVyZFxuIgorIiAgZW5kaWZcbiIKKyJlbmRpZlxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjIyOQorbXNnaWQgIkFuZCBzaW1pbGFybHkgZm9yIERFQl9CVUlMRF9BUkNIX0NQVSBhbmQgREVCX0JVSUxEX0FSQ0hfT1MuIgorbXNnc3RyICJFdCBkZSBsYSBtw6ptZSBmYcOnb24gcG91ciBERUJfQlVJTERfQVJDSF9DUFUgZXQgREVCX0JVSUxEX0FSQ0hfT1MuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjIzMgorbXNnaWQgIiIKKyJJZiB5b3Ugc3RpbGwgd2lzaCB0byBzdXBwb3J0IHZlcnNpb25zIG9mIGRwa2ctZGV2IHRoYXQgZGlkIG5vdCBpbmNsdWRlICIKKyJCPGRwa2ctYXJjaGl0ZWN0dXJlPiwgdGhlIGZvbGxvd2luZyBkb2VzIHRoZSBqb2I6IgorbXNnc3RyICIiCisiUG91ciBhY2NlcHRlciBlbmNvcmUgbGVzIHZlcnNpb25zIGRlIGRwa2ctZGV2IHF1aSBuJ2luY2x1ZW50IHBhcyBCPGRwa2ctIgorImFyY2hpdGVjdHVyZT4sIHZvdXMgcG91dmV6IHV0aWxpc2VywqA6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI0MgorIywgbm8td3JhcAorbXNnaWQgIiIKKyJcXCZcXHMtMURFQl9CVUlMRF9BUkNIXFxzMCA6PSAkKHNoZWxsIGRwa2cgLS1wcmludC1hcmNoaXRlY3R1cmUpXG4iCisiXFwmXFxzLTFERUJfQlVJTERfR05VX0NQVVxcczAgOj0gJChwYXRzdWJzdCBodXJkLSUsJSwkKFxccy0xREVCX0JVSUxEX0FSQ0hcXHMwKSlcbiIKKyJpZmVxICgkKGZpbHRlci1vdXQgaHVyZC0lLCQoXFxzLTFERUJfQlVJTERfQVJDSFxcczApKSwpXG4iCisiICBcXHMtMURFQl9CVUlMRF9HTlVfU1lTVEVNXFxzMCA6PSBnbnVcbiIKKyJlbHNlXG4iCisiICBcXHMtMURFQl9CVUlMRF9HTlVfU1lTVEVNXFxzMCA6PSBsaW51eC1nbnVcbiIKKyJlbmRpZlxuIgorIkRFQl9CVUlMRF9HTlVfVFlQRT0kKFxccy0xREVCX0JVSUxEX0dOVV9DUFVcXHMwKS0kKFxccy0xREVCX0JVSUxEX0dOVV9TWVNURU1cXHMwKVxuIgorbXNnc3RyICIiCisiXFwmXFxzLTFERUJfQlVJTERfQVJDSFxcczDCoDo9ICQoc2hlbGwgZHBrZyAtLXByaW50LWFyY2hpdGVjdHVyZSlcbiIKKyJcXCZcXHMtMURFQl9CVUlMRF9HTlVfQ1BVXFxzMMKgOj0gJChwYXRzdWJzdCBodXJkLSUsJSwkKFxccy0xREVCX0JVSUxEX0FSQ0hcXHMwKSlcbiIKKyJpZmVxICgkKGZpbHRlci1vdXQgaHVyZC0lLCQoXFxzLTFERUJfQlVJTERfQVJDSFxcczApKSwpXG4iCisiICBcXHMtMURFQl9CVUlMRF9HTlVfU1lTVEVNXFxzMMKgOj0gZ251XG4iCisiZWxzZVxuIgorIiAgXFxzLTFERUJfQlVJTERfR05VX1NZU1RFTVxcczDCoDo9IGxpbnV4LWdudVxuIgorImVuZGlmXG4iCisiREVCX0JVSUxEX0dOVV9UWVBFPSQoXFxzLTFERUJfQlVJTERfR05VX0NQVVxcczApLSQoXFxzLTFERUJfQlVJTERfR05VX1NZU1RFTVxcczApXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjQ3CisjLCBuby13cmFwCittc2dpZCAiIgorIlxcJlxccy0xREVCX0hPU1RfQVJDSFxcczAgOj0gJChcXHMtMURFQl9CVUlMRF9BUkNIXFxzMClcbiIKKyJcXCZcXHMtMURFQl9IT1NUX0dOVV9DUFVcXHMwIDo9ICQoXFxzLTFERUJfQlVJTERfR05VX0NQVVxcczApXG4iCisiXFwmXFxzLTFERUJfSE9TVF9HTlVfU1lTVEVNXFxzMCA6PSAkKFxccy0xREVCX0JVSUxEX0dOVV9TWVNURU1cXHMwKVxuIgorIlxcJlxccy0xREVCX0hPU1RfR05VX1RZUEVcXHMwIDo9ICQoXFxzLTFERUJfQlVJTERfR05VX1RZUEVcXHMwKVxuIgorbXNnc3RyICIiCisiXFwmXFxzLTFERUJfSE9TVF9BUkNIXFxzMMKgOj0gJChcXHMtMURFQl9CVUlMRF9BUkNIXFxzMClcbiIKKyJcXCZcXHMtMURFQl9IT1NUX0dOVV9DUFVcXHMwwqA6PSAkKFxccy0xREVCX0JVSUxEX0dOVV9DUFVcXHMwKVxuIgorIlxcJlxccy0xREVCX0hPU1RfR05VX1NZU1RFTVxcczDCoDo9ICQoXFxzLTFERUJfQlVJTERfR05VX1NZU1RFTVxcczApXG4iCisiXFwmXFxzLTFERUJfSE9TVF9HTlVfVFlQRVxcczDCoDo9ICQoXFxzLTFERUJfQlVJTERfR05VX1RZUEVcXHMwKVxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI1MQorbXNnaWQgIiIKKyJQdXQgYSBzdWJzZXQgb2YgdGhlc2UgbGluZXMgYXQgdGhlIHRvcCBvZiB5b3VyIGRlYmlhbi9ydWxlcyBmaWxlOyB0aGVzZSAiCisiZGVmYXVsdCB2YWx1ZXMgd2lsbCBiZSBvdmVyd3JpdHRlbiBpZiBkcGtnLWFyY2hpdGVjdHVyZSBpcyB1c2VkLiIKK21zZ3N0ciAiIgorIlZvdXMgcG91dmV6IHBsYWNlciBjZXJ0YWluZXMgZGUgY2VzIGxpZ25lcyBhdSBkw6lidXQgZGUgdm90cmUgZGViaWFuL3J1bGVzLiAiCisiQ2VzIHZhbGV1cnMgcGFyIGTDqWZhdXQgc2Vyb250IMOpY3Jhc8OpZXMgc2kgZHBrZy1hcmNoaXRlY3R1cmUgZXN0IHV0aWxpc8OpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyNTgKK21zZ2lkICIiCisiWW91IGRvbid0IG5lZWQgdGhlIGZ1bGwgc2V0LiBDaG9vc2UgYSBjb25zaXN0ZW50IHNldCB3aGljaCBjb250YWlucyB0aGUgIgorInZhbHVlcyB5b3UgdXNlIGluIHRoZSBydWxlcyBmaWxlLiBGb3IgZXhhbXBsZSwgaWYgeW91IG9ubHkgbmVlZCB0aGUgaG9zdCAiCisiRGViaWFuIGFyY2hpdGVjdHVyZSwgYERFQl9IT1NUX0FSQ0g9XFxgZHBrZyAtLXByaW50LWFyY2hpdGVjdHVyZVxcYCcgaXMgIgorInN1ZmZpY2llbnQgKHRoaXMgaXMgaW5kZWVkIHRoZSBEZWJpYW4gYXJjaGl0ZWN0dXJlIG9mIHRoZSBidWlsZCBtYWNoaW5lLCBidXQgIgorInJlbWVtYmVyIHRoYXQgd2UgYXJlIG9ubHkgdHJ5aW5nIHRvIGJlIGJhY2t3YXJkIGNvbXBhdGlibGUgd2l0aCBuYXRpdmUgIgorImNvbXBpbGF0aW9uKS4iCittc2dzdHIgIiIKKyJWb3VzIG4nYXZleiBwYXMgYmVzb2luIGRlIHRvdXRlcyBjZXMgbGlnbmVzLiBDaG9pc2lzc2V6IHVuaXF1ZW1lbnQgbGVzICIKKyJ2YXJpYWJsZXMgcXVlIHZvdXMgdXRpbGlzZXogZGFucyB2b3RyZSBmaWNoaWVyIMKrwqBydWxlc8KgwrsuIFBhciBleGVtcGxlLCBzaSAiCisidm91cyBuJ2F2ZXogYmVzb2luIHF1ZSBkZSBsJ2FyY2hpdGVjdHVyZSBow7R0ZSBEZWJpYW4sIGBERUJfSE9TVF9BUkNIPVxcYGRwa2cgIgorIi0tcHJpbnQtYXJjaGl0ZWN0dXJlXFxgJyBlc3Qgc3VmZmlzYW50IChpbCBzJ2FnaXQgYmllbiBzw7tyIGRlIGwnYXJjaGl0ZWN0dXJlICIKKyJEZWJpYW4gZGUgbGEgbWFjaGluZSBkZSBjb25zdHJ1Y3Rpb24sIG1haXMgbGUgYnV0IGVzdCBpY2kgZGUgcmVzdGVyICIKKyJjb21wYXRpYmxlIGF2ZWMgbGVzIGFuY2llbm5lcyBjb21waWxhdGlvbnMgbmF0aXZlcykuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI2MQorbXNnaWQgIiIKKyJUaGUgQjwtZT4gYW5kIEI8LWk+IG9wdGlvbnMgd2VyZSBvbmx5IGludHJvZHVjZWQgaW4gcmVsYXRpdmVseSByZWNlbnQgIgorInZlcnNpb25zIG9mIEI8ZHBrZy1hcmNoaXRlY3R1cmU+IChzaW5jZSBkcGtnIDEuMTMuMTMpLiIKK21zZ3N0ciAiIgorIkxlcyBvcHRpb25zIEI8LWU+IGV0IEI8LWk+IG4nb250IMOpdMOpIGFqb3V0w6llcyBxdWUgcmVsYXRpdmVtZW50IHLDqWNlbW1lbnQgw6AgIgorIkI8ZHBrZy1hcmNoaXRlY3R1cmU+IChkZXB1aXMgbGEgdmVyc2lvbiAxLjEzLjEzIGRlIGRwa2cpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyNjUKK21zZ2lkICIiCisiQjxkcGtnLWJ1aWxkcGFja2FnZT4gYWNjZXB0cyB0aGUgQjwtYT4gb3B0aW9uIGFuZCBwYXNzZXMgaXQgdG8gQjxkcGtnLSIKKyJhcmNoaXRlY3R1cmU+LiBPdGhlciBleGFtcGxlczoiCittc2dzdHIgIiIKKyJCPGRwa2ctYnVpbGRwYWNrYWdlPiBhY2NlcHRlIGwnb3B0aW9uIEI8LWE+LCBldCBsYSBwYXNzZSDDoCBCPGRwa2ctIgorImFyY2hpdGVjdHVyZT4uIFZvaWNpIGQnYXV0cmVzIGV4ZW1wbGVzwqA6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI2NworbXNnaWQgIkNDPWkzODYtZ251LWdjYyBkcGtnLWFyY2hpdGVjdHVyZSAtYyBkZWJpYW4vcnVsZXMgYnVpbGQiCittc2dzdHIgIkNDPWkzODYtZ251LWdjYyBkcGtnLWFyY2hpdGVjdHVyZSAtYyBkZWJpYW4vcnVsZXMgYnVpbGQiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjY5Cittc2dpZCAiZXZhbCBcXGBkcGtnLWFyY2hpdGVjdHVyZSAtdVxcYCIKK21zZ3N0ciAiZXZhbCBcXGBkcGtnLWFyY2hpdGVjdHVyZSAtdVxcYCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyNzIKK21zZ2lkICIiCisiQ2hlY2sgaWYgYW4gYXJjaGl0ZWN0dXJlIGlzIGVxdWFsIHRvIHRoZSBjdXJyZW50IGFyY2hpdGVjdHVyZSBvciBhIGdpdmVuIG9uZToiCittc2dzdHIgIiIKKyJWw6lyaWZpZSBzaSB1bmUgYXJjaGl0ZWN0dXJlIGVzdCBpZGVudGlxdWUgw6AgbCdhcmNoaXRlY3R1cmUgYWN0dWVsbGUgb3Ugw6AgIgorImNlbGxlIHNww6ljaWZpw6llwqA6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI3NAorbXNnaWQgImRwa2ctYXJjaGl0ZWN0dXJlIC1lbGludXgtYWxwaGEiCittc2dzdHIgImRwa2ctYXJjaGl0ZWN0dXJlIC1lbGludXgtYWxwaGEiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6Mjc2Cittc2dpZCAiZHBrZy1hcmNoaXRlY3R1cmUgLWFtaXBzIC1lbGludXgtbWlwcyIKK21zZ3N0ciAiZHBrZy1hcmNoaXRlY3R1cmUgLWFtaXBzIC1lbGludXgtbWlwcyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyNzkKK21zZ2lkICIiCisiQ2hlY2sgaWYgdGhlIGN1cnJlbnQgYXJjaGl0ZWN0dXJlIG9yIGFuIGFyY2hpdGVjdHVyZSBwcm92aWRlZCB3aXRoIC1hIGFyZSAiCisiTGludXggc3lzdGVtczoiCittc2dzdHIgIiIKKyJWw6lyaWZpZSBzaSBsJ2FyY2hpdGVjdHVyZSBhY3R1ZWxsZSBvdSBjZWxsZSBzcMOpY2lmacOpZSBhdmVjIC1hIGNvcnJlc3BvbmQgw6AgIgorInVuIHN5c3TDqG1lIExpbnV4wqA6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI4MQorbXNnaWQgImRwa2ctYXJjaGl0ZWN0dXJlIC1pbGludXgtYW55IgorbXNnc3RyICJkcGtnLWFyY2hpdGVjdHVyZSAtaWxpbnV4LWFueSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyODMKK21zZ2lkICJkcGtnLWFyY2hpdGVjdHVyZSAtYWkzODYgLWlsaW51eC1hbnkiCittc2dzdHIgImRwa2ctYXJjaGl0ZWN0dXJlIC1haTM4NiAtaWxpbnV4LWFueSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyODgKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIkFsbCB0aGVzZSBmaWxlcyBoYXZlIHRvIGJlIHByZXNlbnQgZm9yIEI8ZHBrZy1hcmNoaXRlY3R1cmU+IHRvIHdvcmsuICIKKyN8ICJUaGVpciBsb2NhdGlvbiBjYW4gYmUgb3ZlcnJpZGRlbiBhdCBydW50aW1lIHdpdGggdGhlIGVudmlyb25tZW50IHZhcmlhYmxlICIKKyN8ICJEUEtHX0RBVEFESVIuIgorbXNnaWQgIiIKKyJBbGwgdGhlc2UgZmlsZXMgaGF2ZSB0byBiZSBwcmVzZW50IGZvciBCPGRwa2ctYXJjaGl0ZWN0dXJlPiB0byB3b3JrLiBUaGVpciAiCisibG9jYXRpb24gY2FuIGJlIG92ZXJyaWRkZW4gYXQgcnVudGltZSB3aXRoIHRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZSAiCisiQjxEUEtHX0RBVEFESVI+LiIKK21zZ3N0ciAiIgorIlRvdXMgY2VzIGZpY2hpZXJzIHNvbnQgbsOpY2Vzc2FpcmVzIGFmaW4gcXVlIEI8ZHBrZy1hcmNoaXRlY3R1cmU+IHB1aXNzZSAiCisiZm9uY3Rpb25uZXIuIExldXJzIGVtcGxhY2VtZW50cyBwZXV2ZW50IMOqdHJlIG1vZGlmacOpcyBsb3JzIGR1IHRyYWl0ZW1lbnQgdmlhICIKKyJsYSB2YXJpYWJsZSBkJ2Vudmlyb25uZW1lbnQgRFBLR19EQVRBRElSLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6Mjg4CisjLCBuby13cmFwCittc2dpZCAiSTwvdXNyL3NoYXJlL2Rwa2cvY3B1dGFibGU+IgorbXNnc3RyICJJPC91c3Ivc2hhcmUvZHBrZy9jcHV0YWJsZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjkxCittc2dpZCAiVGFibGUgb2Yga25vd24gQ1BVIG5hbWVzIGFuZCBtYXBwaW5nIHRvIHRoZWlyIEdOVSBuYW1lLiIKK21zZ3N0ciAiVGFibGUgZGVzIG5vbXMgZGUgcHJvY2Vzc2V1cnMgY29ubnVzIGV0IGxpYWlzb24gYXZlYyBsZXVyIG5vbSBHTlUuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyOTEKKyMsIG5vLXdyYXAKK21zZ2lkICJJPC91c3Ivc2hhcmUvZHBrZy9vc3RhYmxlPiIKK21zZ3N0ciAiSTwvdXNyL3NoYXJlL2Rwa2cvb3N0YWJsZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6Mjk0Cittc2dpZCAiVGFibGUgb2Yga25vd24gb3BlcmF0aW5nIHN5c3RlbSBuYW1lcyBhbmQgbWFwcGluZyB0byB0aGVpciBHTlUgbmFtZS4iCittc2dzdHIgIiIKKyJUYWJsZSBkZXMgbm9tcyBkZXMgc3lzdMOobWVzIGQnZXhwbG9pdGF0aW9uIGNvbm51cyBldCBsaWFpc29uIGF2ZWMgbGV1cnMgbm9tcyAiCisiR05VLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6Mjk0CisjLCBuby13cmFwCittc2dpZCAiSTwvdXNyL3NoYXJlL2Rwa2cvdHJpcGxldHRhYmxlPiIKK21zZ3N0ciAiSTwvdXNyL3NoYXJlL2Rwa2cvdHJpcGxldHRhYmxlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyOTgKK21zZ2lkICIiCisiTWFwcGluZyBiZXR3ZWVuIERlYmlhbiBhcmNoaXRlY3R1cmUgdHJpcGxldHMgYW5kIERlYmlhbiBhcmNoaXRlY3R1cmUgbmFtZXMuIgorbXNnc3RyICIiCisiQ29ycmVzcG9uZGFuY2VzIGVudHJlIGxlcyB0cmlwbGV0cyBkZSBsJ2FyY2hpdGVjdHVyZSBEZWJpYW4gZXQgbGVzIG5vbXMgZGVzICIKKyJhcmNoaXRlY3R1cmVzIERlYmlhbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MzAyCittc2dpZCAiQjxkcGtnLWJ1aWxkcGFja2FnZT4oMSksIEI8ZHBrZy1jcm9zcz4oMSkuIgorbXNnc3RyICJCPGRwa2ctYnVpbGRwYWNrYWdlPigxKSwgQjxkcGtnLWNyb3NzPigxKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MzA3Cittc2dpZCAiIgorIkI8ZHBrZy1hcmNoaXRlY3R1cmU+IGFuZCB0aGlzIG1hbiBwYWdlIHdlcmUgaW5pdGlhbGx5IHdyaXR0ZW4gYnkgTWFyY3VzICIKKyJCcmlua21hbm4gRTxsdD5icmlua21kQGRlYmlhbi5vcmdFPGd0Pi4iCittc2dzdHIgIiIKKyJCPGRwa2ctYXJjaGl0ZWN0dXJlPiBldCBjZXR0ZSBwYWdlIGRlIG1hbnVlbCBvbnQgw6l0w6kgaW5pdGlhbGVtZW50IMOpY3JpdHMgcGFyICIKKyJNYXJjdXMgQnJpbmttYW5uIEU8bHQ+YnJpbmttZEBkZWJpYW4ub3JnRTxndD4uIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy5jZmcuNToxCisjLCBuby13cmFwCittc2dpZCAiZHBrZy5jZmciCittc2dzdHIgImRwa2cuY2ZnIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy5jZmcuNToxCisjLCBuby13cmFwCittc2dpZCAiMjAwOS0wOS0wNSIKK21zZ3N0ciAiMDUtMDktMjAwOSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy5jZmcuNTo0Cittc2dpZCAiZHBrZy5jZmcgLSBkcGtnIGNvbmZpZ3VyYXRpb24gZmlsZSIKK21zZ3N0ciAiZHBrZy5jZmcgLSBmaWNoaWVyIGRlIGNvbmZpZ3VyYXRpb24gZGUgZHBrZyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy5jZmcuNToxMQorbXNnaWQgIiIKKyJUaGlzIGZpbGUgY29udGFpbnMgZGVmYXVsdCBvcHRpb25zIGZvciBkcGtnLiBFYWNoIGxpbmUgY29udGFpbnMgYSBzaW5nbGUgIgorIm9wdGlvbiB3aGljaCBpcyBleGFjdGx5IHRoZSBzYW1lIGFzIGEgbm9ybWFsIGNvbW1hbmQgbGluZSBvcHRpb24gZm9yIGRwa2cgIgorImV4Y2VwdCBmb3IgdGhlIGxlYWRpbmcgZGFzaGVzIHdoaWNoIGFyZSBub3QgdXNlZCBoZXJlLiBRdW90ZXMgc3Vycm91bmRpbmcgIgorIm9wdGlvbiB2YWx1ZXMgYXJlIHN0cmlwcGVkLiBDb21tZW50cyBhcmUgYWxsb3dlZCBieSBzdGFydGluZyBhIGxpbmUgd2l0aCBhICIKKyJoYXNoIHNpZ24gKFwiQjwjPlwiKS4iCittc2dzdHIgIiIKKyJDZSBmaWNoaWVyIGxpc3RlIGxlcyBvcHRpb25zIGFwcGxpcXXDqWVzIHBhciBkw6lmYXV0IMOgIGRwa2cuIENoYXF1ZSBsaWduZSAiCisiY29udGllbnQgdW5lIHNldWxlIG9wdGlvbiwgw6ljcml0ZSBleGFjdGVtZW50IGNvbW1lIHN1ciBsYSBsaWduZSBkZSBjb21tYW5kZSAiCisibWFpcyBzYW5zIGxlcyB0aXJldHMgaW5pdGlhdXgsIGludXRpbGlzw6lzLiBMZXMgZ3VpbGxlbWV0cyBhdXRvdXIgZGVzIHZhbGV1cnMgIgorImQnb3B0aW9ucyBzb250IHN1cHByaW3DqXMuIExlcyBjb21tZW50YWlyZXMgc29udCBhdXRvcmlzw6lzIGVuIGZhaXNhbnQgIgorImNvbW1lbmNlciBsYSBsaWduZSBwYXIgdW4gY2FyYWN0w6hyZSBCPChcIiNcIik+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy5jZmcuNToxNAorbXNnaWQgIkk8L2V0Yy9kcGtnL2Rwa2cuY2ZnLmQvWzAtOWEtekEtWl8tXSo+IgorbXNnc3RyICJJPC9ldGMvZHBrZy9kcGtnLmNmZy5kL1swLTlhLXpBLVpfLV0qPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy5jZmcuNToxOAorbXNnaWQgIkk8fi8uZHBrZy5jZmc+IgorbXNnc3RyICJJPH4vLmRwa2cuY2ZnPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy5jZmcuNToyNCBkcGtnLWRpdmVydC44OjEzNCBkcGtnLXF1ZXJ5LjE6MjIyIGRwa2ctc3RhdG92ZXJyaWRlLjg6ODYKK21zZ2lkICJCPGRwa2c+KDEpLiIKK21zZ3N0ciAiQjxkcGtnPigxKS4iCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxCisjLCBuby13cmFwCittc2dpZCAiZHBrZy1idWlsZGZsYWdzIgorbXNnc3RyICJkcGtnLWJ1aWxkZmxhZ3MiCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxCisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIjIwMTEtMDctMDQiCittc2dpZCAiMjAxMS0wOS0xMyIKK21zZ3N0ciAiMDctMDQtMjAxMSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6NAorbXNnaWQgImRwa2ctYnVpbGRmbGFncyAtIHJldHVybnMgYnVpbGQgZmxhZ3MgdG8gdXNlIGR1cmluZyBwYWNrYWdlIGJ1aWxkIgorbXNnc3RyICIiCisiZHBrZy1idWlsZGZsYWdzIC0gcmV0b3VybmUgbGVzIG9wdGlvbnMgZGUgY29tcGlsYXRpb24gw6AgdXRpbGlzZXIgcG91ciAiCisibGEgICAgICAgICAgICAgICAgICAgY29uc3RydWN0aW9uIGR1IHBhcXVldCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6OAorIywgZnV6enkKKyN8IG1zZ2lkICJCPGRwa2ctYnVpbGRmbGFncz4gW0k8b3B0aW9uPi4uLl0gSTxjb21tYW5kPiIKK21zZ2lkICJCPGRwa2ctYnVpbGRmbGFncz4gW0k8b3B0aW9uPi4uLl0gW0k8Y29tbWFuZD5dIgorbXNnc3RyICJCPGRwa2ctYnVpbGRmbGFncz4gW0k8b3B0aW9uPi4uLl0gSTxjb21tYW5kZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEyCittc2dpZCAiIgorIkI8ZHBrZy1idWlsZGZsYWdzPiBpcyBhIHRvb2wgdG8gcmV0cmlldmUgY29tcGlsYXRpb24gZmxhZ3MgdG8gdXNlIGR1cmluZyAiCisiYnVpbGQgb2YgRGViaWFuIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1idWlsZGZsYWdzPiBlc3QgdW4gc2NyaXB0IHF1aSBwZXJtZXQgZGUgcsOpY3Vww6lyZXIgbGVzIG9wdGlvbnMgZGUgIgorImNvbXBpbGF0aW9uIMOgIHV0aWxpc2VyIHBvdXIgbGEgY29uc3RydWN0aW9uIGQndW4gcGFxdWV0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTUKK21zZ2lkICIiCisiVGhlIGRlZmF1bHQgZmxhZ3MgYXJlIGRlZmluZWQgYnkgdGhlIHZlbmRvciBidXQgdGhleSBjYW4gYmUgZXh0ZW5kZWQvIgorIm92ZXJyaWRlbiBpbiBzZXZlcmFsIHdheXM6IgorbXNnc3RyICIiCisiTGVzIGRyYXBlYXV4IHBhciBkw6lmYXV0IHNvbnQgZMOpZmluaXMgcGFyIGxlIGZvdXJuaXNzZXVyIGRlIGxhIGRpc3RyaWJ1dGlvbiAiCisibWFpcyBwZXV2ZW50IMOqdHJlIMOpdGVuZHVzIG91IHJlbXBsYWPDqXMgZGUgcGx1c2lldXJzIGZhw6dvbnPCoDoiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNQorIywgbm8td3JhcAorbXNnaWQgIjEuIgorbXNnc3RyICIxLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTcKK21zZ2lkICJzeXN0ZW0td2lkZSB3aXRoIEI8L2V0Yy9kcGtnL2J1aWxkZmxhZ3MuY29uZj47IgorbXNnc3RyICJwb3VyIHRvdXQgbGUgc3lzdMOobWUgYXZlYyBCPC9ldGMvZHBrZy9idWlsZGZsYWdzLmNvbmY+OyIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE3CisjLCBuby13cmFwCittc2dpZCAiMi4iCittc2dzdHIgIjIuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyMAorbXNnaWQgIiIKKyJmb3IgdGhlIGN1cnJlbnQgdXNlciB3aXRoIEI8JFhER19DT05GSUdfSE9NRS9kcGtnL2J1aWxkZmxhZ3MuY29uZj4gd2hlcmUgQjwiCisiJFhER19DT05GSUdfSE9NRT4gZGVmYXVsdHMgdG8gQjwkSE9NRS8uY29uZmlnPjsiCittc2dzdHIgIiIKKyJwb3VyIGwndXRpbGlzYXRldXIgY291cmFudCBhdmVjIEI8JFhER19DT05GSUdfSE9NRS9kcGtnL2J1aWxkZmxhZ3MuY29uZj4gb8O5ICIKKyJsYSB2YWxldXIgcGFyIGTDqWZhdXQgZGUgQjwkWERHX0NPTkZJR19IT01FPiBlc3QgQjwkSE9NRS8uY29uZmlnPjsiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyMAorIywgbm8td3JhcAorbXNnaWQgIjMuIgorbXNnc3RyICIzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjMKKyMsIGZ1enp5CisjfCBtc2dpZCAidGVtcG9yYXJpbHkgd2l0aCBlbnZpcm9ubWVudCB2YXJpYWJsZXMgKHNlZSBzZWN0aW9uIEI8RU5WSVJPTk1FTlQ+KS4iCittc2dpZCAiIgorInRlbXBvcmFyaWx5IGJ5IHRoZSB1c2VyIHdpdGggZW52aXJvbm1lbnQgdmFyaWFibGVzIChzZWUgc2VjdGlvbiAiCisiQjxFTlZJUk9OTUVOVD4pOyIKK21zZ3N0ciAiIgorInRlbXBvcmFpcmVtZW50IGF2ZWMgZGVzIHZhcmlhYmxlcyBkJ2Vudmlyb25uZW1lbmV0ICh2b2lyIEI8VkFSSUFCTEVTICIKKyJEJ0VOVklST05ORU1FTlQ+KS4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyMworIywgbm8td3JhcAorbXNnaWQgIjQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjI2CisjLCBmdXp6eQorI3wgbXNnaWQgInRlbXBvcmFyaWx5IHdpdGggZW52aXJvbm1lbnQgdmFyaWFibGVzIChzZWUgc2VjdGlvbiBCPEVOVklST05NRU5UPikuIgorbXNnaWQgIiIKKyJkeW5hbWljYWxseSBieSB0aGUgcGFja2FnZSBtYWludGFpbmVyIHdpdGggZW52aXJvbm1lbnQgdmFyaWFibGVzIHNldCB2aWEgIgorIkI8ZGViaWFuL3J1bGVzPiAoc2VlIHNlY3Rpb24gQjxFTlZJUk9OTUVOVD4pLiIKK21zZ3N0ciAiIgorInRlbXBvcmFpcmVtZW50IGF2ZWMgZGVzIHZhcmlhYmxlcyBkJ2Vudmlyb25uZW1lbmV0ICh2b2lyIEI8VkFSSUFCTEVTICIKKyJEJ0VOVklST05ORU1FTlQ+KS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjI4Cittc2dpZCAiVGhlIGNvbmZpZ3VyYXRpb24gZmlsZXMgY2FuIGNvbnRhaW4gdHdvIHR5cGVzIG9mIGRpcmVjdGl2ZXM6IgorbXNnc3RyICIiCisiTGVzIGZpY2hpZXJzIGRlIGNvbmZpZ3VyYXRpb24gcGV1dmVudCBjb250ZW5pciBkZXV4IHR5cGVzIGRlIGRpcmVjdGl2ZXPCoDoiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyOAorIywgbm8td3JhcAorbXNnaWQgIkI8U0VUPkk8IGZsYWcgdmFsdWU+IgorbXNnc3RyICJCPFNFVD5JPCBkcmFwZWF1IHZhbGV1cj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjMxCittc2dpZCAiT3ZlcnJpZGUgdGhlIGZsYWcgbmFtZWQgSTxmbGFnPiB0byBoYXZlIHRoZSB2YWx1ZSBJPHZhbHVlPi4iCittc2dzdHIgIlJlbXBsYWNlIGxlIGRyYXBlYXUgSTxkcmFwZWF1PiBwYXIgbGEgdmFsZXVyIEk8dmFsZXVyPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTozMQorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPFNFVD5JPCBmbGFnIHZhbHVlPiIKK21zZ2lkICJCPFNUUklQPkk8IGZsYWcgdmFsdWU+IgorbXNnc3RyICJCPFNFVD5JPCBkcmFwZWF1IHZhbGV1cj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjM0CisjLCBmdXp6eQorI3wgbXNnaWQgIk92ZXJyaWRlIHRoZSBmbGFnIG5hbWVkIEk8ZmxhZz4gdG8gaGF2ZSB0aGUgdmFsdWUgSTx2YWx1ZT4uIgorbXNnaWQgIiIKKyJTdHJpcCBmcm9tIHRoZSBmbGFnIG5hbWVkIEk8ZmxhZz4gYWxsIHRoZSBidWlsZCBmbGFncyBsaXN0ZWQgaW4gSTx2YWx1ZT4uIgorbXNnc3RyICJSZW1wbGFjZSBsZSBkcmFwZWF1IEk8ZHJhcGVhdT4gcGFyIGxhIHZhbGV1ciBJPHZhbGV1cj4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MzQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPEFQUEVORD5JPCBmbGFnIHZhbHVlPiIKK21zZ3N0ciAiQjxBUFBFTkQ+STwgZHJhcGVhdSB2YWxldXI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTozOAorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiRXh0ZW5kIHRoZSBmbGFnIG5hbWVkIEk8ZmxhZz4gd2l0aCB0aGUgb3B0aW9ucyBnaXZlbiBpbiBJPHZhbHVlPi4gIEEgIgorI3wgInNwYWNlIGlzIHByZXBlbmRlZCB0byB0aGUgYXBwZW5kZWQgdmFsdWUgaWYgdGhlIGZsYWcncyBjdXJyZW50IHZhbHVlIGlzICIKKyN8ICJub24tZW1wdHkuIgorbXNnaWQgIiIKKyJFeHRlbmQgdGhlIGZsYWcgbmFtZWQgSTxmbGFnPiBieSBhcHBlbmRpbmcgdGhlIG9wdGlvbnMgZ2l2ZW4gaW4gSTx2YWx1ZT4uICBBICIKKyJzcGFjZSBpcyBwcmVwZW5kZWQgdG8gdGhlIGFwcGVuZGVkIHZhbHVlIGlmIHRoZSBmbGFnJ3MgY3VycmVudCB2YWx1ZSBpcyBub24tIgorImVtcHR5LiIKK21zZ3N0ciAiIgorIsOJdGVuZCBsZSBkcmFwZWF1IEk8ZHJhcGVhdT4gYXZlYyBsZXMgb3B0aW9ucyBpbmRpcXXDqWVzIGRhbnMgSTx2YWxldXI+LiBVbiAiCisiZXNwYWNlIGVzdCBham91dMOpIGF1IGTDqWJ1dCBkZSBjZSBxdWkgZXN0IGFqb3V0w6kgc2kgbGEgdmFsZXVyIGFjdHVlbGxlIGR1ICIKKyJkcmFwZWF1IG4nZXN0IHBhcyB2aWRlLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjM4CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8QVBQRU5EPkk8IGZsYWcgdmFsdWU+IgorbXNnaWQgIkI8UFJFUEVORD5JPCBmbGFnIHZhbHVlPiIKK21zZ3N0ciAiQjxBUFBFTkQ+STwgZHJhcGVhdSB2YWxldXI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo0MgorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiRXh0ZW5kIHRoZSBmbGFnIG5hbWVkIEk8ZmxhZz4gd2l0aCB0aGUgb3B0aW9ucyBnaXZlbiBpbiBJPHZhbHVlPi4gIEEgIgorI3wgInNwYWNlIGlzIHByZXBlbmRlZCB0byB0aGUgYXBwZW5kZWQgdmFsdWUgaWYgdGhlIGZsYWcncyBjdXJyZW50IHZhbHVlIGlzICIKKyN8ICJub24tZW1wdHkuIgorbXNnaWQgIiIKKyJFeHRlbmQgdGhlIGZsYWcgbmFtZWQgSTxmbGFnPiBieSBwcmVwZW5kaW5nIHRoZSBvcHRpb25zIGdpdmVuIGluIEk8dmFsdWU+LiAgIgorIkEgc3BhY2UgaXMgYXBwZW5kZWQgdG8gdGhlIHByZXBlbmRlZCB2YWx1ZSBpZiB0aGUgZmxhZydzIGN1cnJlbnQgdmFsdWUgaXMgIgorIm5vbi1lbXB0eS4iCittc2dzdHIgIiIKKyLDiXRlbmQgbGUgZHJhcGVhdSBJPGRyYXBlYXU+IGF2ZWMgbGVzIG9wdGlvbnMgaW5kaXF1w6llcyBkYW5zIEk8dmFsZXVyPi4gVW4gIgorImVzcGFjZSBlc3QgYWpvdXTDqSBhdSBkw6lidXQgZGUgY2UgcXVpIGVzdCBham91dMOpIHNpIGxhIHZhbGV1ciBhY3R1ZWxsZSBkdSAiCisiZHJhcGVhdSBuJ2VzdCBwYXMgdmlkZS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjQ1Cittc2dpZCAiIgorIlRoZSBjb25maWd1cmF0aW9uIGZpbGVzIGNhbiBjb250YWluIGNvbW1lbnRzIG9uIGxpbmVzIHN0YXJ0aW5nIHdpdGggYSBoYXNoICIKKyIoIykuIEVtcHR5IGxpbmVzIGFyZSBhbHNvIGlnbm9yZWQuIgorbXNnc3RyICIiCisiTGVzIGZpY2hpZXJzIGRlIGNvbmZpZ3VyYXRpb24gcGV1dmVudCBjb250ZW5pciBkZXMgY29tbWVudGFpcmVzIHN1ciBsZXMgIgorImxpZ25lcyBjb21tZW7Dp2FudCBwYXIgdW4gZGnDqHNlICgjKS4gTGVzIGxpZ25lcyB2aWRlcyBzb250IMOpZ2FsZW1lbnQgaWdub3LDqWVzLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjQ2CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8LS1kZWJ1Zz4iCittc2dpZCAiQjwtLWR1bXA+IgorbXNnc3RyICJCPC0tZGVidWc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo1MQorbXNnaWQgIiIKKyJQcmludCB0byBzdGFuZGFyZCBvdXRwdXQgYWxsIGNvbXBpbGF0aW9uIGZsYWdzIGFuZCB0aGVpciB2YWx1ZXMuIEl0IHByaW50cyAiCisib25lIGZsYWcgcGVyIGxpbmUgc2VwYXJhdGVkIGZyb20gaXRzIHZhbHVlIGJ5IGFuIGVxdWFsIHNpZ24gIgorIihcIkk8ZmxhZz49STx2YWx1ZT5cIikuIFRoaXMgaXMgdGhlIGRlZmF1bHQgYWN0aW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6NTEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tbGlzdD4iCittc2dzdHIgIkI8LS1saXN0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6NTYKK21zZ2lkICIiCisiUHJpbnQgdGhlIGxpc3Qgb2YgZmxhZ3Mgc3VwcG9ydGVkIGJ5IHRoZSBjdXJyZW50IHZlbmRvciAob25lIHBlciBsaW5lKS4gU2VlICIKKyJ0aGUgQjxTVVBQT1JURUQgRkxBR1M+IHNlY3Rpb24gZm9yIG1vcmUgaW5mb3JtYXRpb24gYWJvdXQgdGhlbS4iCittc2dzdHIgIiIKKyJBZmZpY2hlIGxhIGxpc3RlIGRlcyBkcmFwZWF1eCBnw6lyw6lzIHBhciBsJ8OpZGl0ZXVyIGFjdHVlbCAodW4gcGFyIGxpZ25lKS4gIgorIlZvaXIgbGEgc2VjdGlvbiBCPERSQVBFQVVYIEfDiVLDiVM+IHBvdXIgcGx1cyBkJ2luZm9ybWF0aW9ucyBzdXIgY2hhY3VuIGQnZXV4LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjU2CisjLCBuby13cmFwCittc2dpZCAiQjwtLWV4cG9ydD0+STxmb3JtYXQ+IgorbXNnc3RyICJCPC0tZXhwb3J0PT5JPGZvcm1hdD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjY2CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJQcmludCB0byBzdGFuZGFyZCBvdXRwdXQgc2hlbGwgKGlmIEk8Zm9ybWF0PiBpcyBCPHNoPikgb3IgbWFrZSAoaWYgIgorI3wgIkk8Zm9ybWF0PiBpcyBCPG1ha2U+KSBjb21tYW5kcyB0aGF0IGNhbiBiZSB1c2VkIHRvIGV4cG9ydCBhbGwgdGhlICIKKyN8ICJjb21waWxhdGlvbiBmbGFncyBpbiB0aGUgZW52aXJvbm1lbnQuIElmIHRoZSBJPGZvcm1hdD4gdmFsdWUgaXMgbm90ICIKKyN8ICJnaXZlbiwgQjxzaD4gaXMgYXNzdW1lZC4gT25seSBjb21waWxhdGlvbiBmbGFncyBzdGFydGluZyB3aXRoIGFuIHVwcGVyICIKKyN8ICJjYXNlIGNoYXJhY3RlciBhcmUgaW5jbHVkZWQsIG90aGVycyBhcmUgYXNzdW1lZCB0byBub3QgYmUgc3VpdGFibGUgZm9yICIKKyN8ICJ0aGUgZW52aXJvbm1lbnQuIgorbXNnaWQgIiIKKyJQcmludCB0byBzdGFuZGFyZCBvdXRwdXQgc2hlbGwgKGlmIEk8Zm9ybWF0PiBpcyBCPHNoPikgb3IgbWFrZSAoaWYgSTxmb3JtYXQ+ICIKKyJpcyBCPG1ha2U+KSBjb21tYW5kcyB0aGF0IGNhbiBiZSB1c2VkIHRvIGV4cG9ydCBhbGwgdGhlIGNvbXBpbGF0aW9uIGZsYWdzIGluICIKKyJ0aGUgZW52aXJvbm1lbnQuIElmIEk8Zm9ybWF0PiBpcyBCPGNvbmZpZ3VyZT4gdGhlbiB0aGUgb3V0cHV0IGNhbiBiZSB1c2VkIG9uICIKKyJhIEI8Li9jb25maWd1cmU+IGNvbW1hbmQtbGluZS4gSWYgdGhlIEk8Zm9ybWF0PiB2YWx1ZSBpcyBub3QgZ2l2ZW4sIEI8c2g+IGlzICIKKyJhc3N1bWVkLiBPbmx5IGNvbXBpbGF0aW9uIGZsYWdzIHN0YXJ0aW5nIHdpdGggYW4gdXBwZXIgY2FzZSBjaGFyYWN0ZXIgYXJlICIKKyJpbmNsdWRlZCwgb3RoZXJzIGFyZSBhc3N1bWVkIHRvIG5vdCBiZSBzdWl0YWJsZSBmb3IgdGhlIGVudmlyb25tZW50LiIKK21zZ3N0ciAiIgorIkFmZmljaGUgc3VyIGxhIHNvcnRpZSBzdGFuZGFyZCwgbGVzIGNvbW1hbmRlcyBzaGVsbCAoc2kgSTxmb3JtYXQ+IGVzdCBCPHNoPikgIgorIm91IG1ha2UgKHNpIEk8Zm9ybWF0PiBlc3QgQjxtYWtlPikgcXVpIHBlcm1ldHRlbnQgZCdleHBvcnRlciB0b3VzIGxlcyAiCisiZHJhcGVhdXggZGUgY29tcGlsYXRpb24gZGFucyBsJ2Vudmlyb25uZW1lbnQuIExhIHZhbGV1ciBwYXIgZMOpZmF1dCBkZSAiCisiSTxmb3JtYXQ+IGVzdCBCPHNoPi4gU2V1bHMgbGVzIGRyYXBlYXV4IGRlIGNvbXBpbGF0aW9uIGNvbW1lbsOnYW50IHBhciB1bmUgIgorIm1hanVzY3VsZSBzb250IGluY2x1cywgbGVzIGF1dHJlcyDDqXRhbnQgc3VwcG9zw6lzIGluYWRhcHTDqXMgw6AgbCdlbnZpcm9ubmVtZW50LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjY2CisjLCBuby13cmFwCittc2dpZCAiQjwtLWdldD5JPCBmbGFnPiIKK21zZ3N0ciAiQjwtLWdldD5JPCBkcmFwZWF1PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6NzAKK21zZ2lkICIiCisiUHJpbnQgdGhlIHZhbHVlIG9mIHRoZSBmbGFnIG9uIHN0YW5kYXJkIG91dHB1dC4gRXhpdHMgd2l0aCAwIGlmIHRoZSBmbGFnIGlzICIKKyJrbm93biBvdGhlcndpc2UgZXhpdHMgd2l0aCAxLiIKK21zZ3N0ciAiIgorIkFmZmljaGUgbGEgdmFsZXVyIGRlIGNlIGRyYXBlYXUgc3VyIGxhIHNvcnRpZSBzdGFuZGFyZC4gUmV0b3VybmUgdW4gY29kZSBkZSAiCisic29ydGllIDAgc2kgbGUgZHJhcGVhdSBlc3QgY29ubnUgZXQgMSBzJ2lsIGVzdCBpbmNvbm51LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjcwCisjLCBuby13cmFwCittc2dpZCAiQjwtLW9yaWdpbj5JPCBmbGFnPiIKK21zZ3N0ciAiQjwtLW9yaWdpbj5JPCBkcmFwZWF1PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6NzUKK21zZ2lkICIiCisiUHJpbnQgdGhlIG9yaWdpbiBvZiB0aGUgdmFsdWUgdGhhdCBpcyByZXR1cm5lZCBieSBCPC0tZ2V0Pi4gRXhpdHMgd2l0aCAwIGlmICIKKyJ0aGUgZmxhZyBpcyBrbm93biBvdGhlcndpc2UgZXhpdHMgd2l0aCAxLiBUaGUgb3JpZ2luIGNhbiBiZSBvbmUgb2YgdGhlICIKKyJmb2xsb3dpbmcgdmFsdWVzOiIKK21zZ3N0ciAiIgorIkFmZmljaGUgbCdvcmlnaW5lIGRlIGxhIHZhbGV1ciByZW52b3nDqWUgcGFyIEI8LS1nZXQ+LiBSZXRvdXJuZSB1biBjb2RlIGRlICIKKyJzb3J0aWUgMCBzaSBsZSBkcmFwZWF1IGVzdCBjb25udSBldCAxIHMnaWwgZXN0IGluY29ubnUuIEwnb3JpZ2luZSBlc3QgdW5lICIKKyJkZXMgdmFsZXVycyBzdWl2YW50ZXPCoDoiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo3NgorIywgbm8td3JhcAorbXNnaWQgIkI8dmVuZG9yPiIKK21zZ3N0ciAiQjx2ZW5kb3I+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo3OQorbXNnaWQgInRoZSBvcmlnaW5hbCBmbGFnIHNldCBieSB0aGUgdmVuZG9yIGlzIHJldHVybmVkOyIKK21zZ3N0ciAibGUgZHJhcGVhdSBkw6lmaW5pIMOgIGwnb3JpZ2luZSBwYXIgbCfDqWRpdGV1ciBlc3QgcmVudm95w6nCoDsiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo3OQorIywgbm8td3JhcAorbXNnaWQgIkI8c3lzdGVtPiIKK21zZ3N0ciAiQjxzeXN0ZW0+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo4MgorbXNnaWQgInRoZSBmbGFnIGlzIHNldC9tb2RpZmllZCBieSBhIHN5c3RlbS13aWRlIGNvbmZpZ3VyYXRpb247IgorbXNnc3RyICJsZSBkcmFwZWF1IGVzdCBwbGFjw6kgb3UgbW9kaWZpw6kgcGFyIHVuIHLDqWdsYWdlIHN5c3TDqG1lwqA7IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6ODIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHVzZXI+IgorbXNnc3RyICJCPHVzZXI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo4NQorbXNnaWQgInRoZSBmbGFnIGlzIHNldC9tb2RpZmllZCBieSBhIHVzZXItc3BlY2lmaWMgY29uZmlndXJhdGlvbjsiCittc2dzdHIgIiIKKyJsZSBkcmFwZWF1IGVzdCBwbGFjw6kgb3UgbW9kaWZpw6kgcGFyIHVuZSBjb25maWd1cmF0aW9uIHNww6ljaWZpcXVlIMOgICIKKyJsJ3V0aWxpc2F0ZXVywqA7IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6ODUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGVudj4iCittc2dzdHIgIkI8ZW52PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6ODgKK21zZ2lkICJ0aGUgZmxhZyBpcyBzZXQvbW9kaWZpZWQgYnkgYW4gZW52aXJvbm1lbnQtc3BlY2lmaWMgY29uZmlndXJhdGlvbi4iCittc2dzdHIgIiIKKyJsZSBkcmFwZWF1IGVzdCBwbGFjw6kgb3UgbW9kaWZpw6kgcGFyIHVuZSBjb25maWd1cmF0aW9uIHNww6ljaWZpcXVlIGRhbnMgIgorImwnZW52aXJvbm5lbWVudC4iCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo5NgorIywgbm8td3JhcAorbXNnaWQgIlNVUFBPUlRFRCBGTEFHUyIKK21zZ3N0ciAiRFJBUEVBVVggR8OJUsOJUyIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjk3CisjLCBuby13cmFwCittc2dpZCAiQjxDRkxBR1M+IgorbXNnc3RyICJCPENGTEFHUz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEwMworbXNnaWQgIiIKKyJPcHRpb25zIGZvciB0aGUgQyBjb21waWxlci4gVGhlIGRlZmF1bHQgdmFsdWUgc2V0IGJ5IHRoZSB2ZW5kb3IgaW5jbHVkZXMgSTwtIgorImc+IGFuZCB0aGUgZGVmYXVsdCBvcHRpbWl6YXRpb24gbGV2ZWwgKEk8LU8yPiB1c3VhbGx5LCBvciBJPC1PMD4gaWYgdGhlICIKKyJCPERFQl9CVUlMRF9PUFRJT05TPiBlbnZpcm9ubWVudCB2YXJpYWJsZSBkZWZpbmVzIEk8bm9vcHQ+KS4iCittc2dzdHIgIiIKKyJPcHRpb25zIGR1IGNvbXBpbGF0ZXVyIEMuIExhIHZhbGV1ciBwYXIgZMOpZmF1dCBkw6lmaW5pZSBwYXIgbCfDqWRpdGV1ciAiCisiY29tcG9ydGUgSTwtZz4gbGUgbml2ZWF1IGQnb3B0aW1pc2F0aW9uIHBhciBkw6lmYXV0IChJPC1PMj4gZW4gZ8OpbsOpcmFsLCBvdSBJPC0iCisiTzA+IHNpIGxhIHZhcmlhYmxlcyBkJ2Vudmlyb25uZW1lbnQgQjxERUJfQlVJTERfT1BUSU9OUz4gY29udGllbnQgSTxub29wdD4pLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEwMworIywgbm8td3JhcAorbXNnaWQgIkI8Q1BQRkxBR1M+IgorbXNnc3RyICJCPENQUEZMQUdTPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTA2Cittc2dpZCAiT3B0aW9ucyBmb3IgdGhlIEMgcHJlcHJvY2Vzc29yLiBEZWZhdWx0IHZhbHVlOiBlbXB0eS4iCittc2dzdHIgIk9wdGlvbnMgZHUgcHLDqXByb2Nlc3NldXIgQy4gVmFsZXVyIHBhciBkw6lmYXV0wqA6wqBhdWN1bmUuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTA2CisjLCBuby13cmFwCittc2dpZCAiQjxDWFhGTEFHUz4iCittc2dzdHIgIkI8Q1hYRkxBR1M+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMDkKK21zZ2lkICJPcHRpb25zIGZvciB0aGUgQysrIGNvbXBpbGVyLiBTYW1lIGFzIEI8Q0ZMQUdTPi4iCittc2dzdHIgIk9wdGlvbnMgZHUgY29tcGlsYXRldXIgQysrLiBBbmFsb2d1ZSDDoCBCPENGTEFHUz4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTA5CisjLCBuby13cmFwCittc2dpZCAiQjxGRkxBR1M+IgorbXNnc3RyICJCPEZGTEFHUz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjExMgorbXNnaWQgIk9wdGlvbnMgZm9yIHRoZSBGb3J0cmFuIGNvbXBpbGVyLiBTYW1lIGFzIEI8Q0ZMQUdTPi4iCittc2dzdHIgIk9wdGlvbnMgZHUgY29tcGlsYXRldXIgRm9ydHJhbi4gQW5hbG9ndWUgw6AgQjxDRkxBR1M+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjExMgorIywgbm8td3JhcAorbXNnaWQgIkI8TERGTEFHUz4iCittc2dzdHIgIkI8TERGTEFHUz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEyMAorbXNnaWQgIiIKKyJPcHRpb25zIHBhc3NlZCB0byB0aGUgY29tcGlsZXIgd2hlbiBsaW5raW5nIGV4ZWN1dGFibGVzIG9yIHNoYXJlZCBvYmplY3RzICIKKyIoaWYgdGhlIGxpbmtlciBpcyBjYWxsZWQgZGlyZWN0bHksIHRoZW4gQjwtV2w+IGFuZCBCPCw+IGhhdmUgdG8gYmUgc3RyaXBwZWQgIgorImZyb20gdGhlc2Ugb3B0aW9ucykuIERlZmF1bHQgdmFsdWU6IGVtcHR5LiIKK21zZ3N0ciAiIgorIk9wdGlvbnMgcGFzc8OpZXMgYXUgY29tcGlsYXRldXIgbG9ycyBkdSBwcm9jZXNzdXMgZGUgbGlhaXNvbiBkZXMgZXjDqWN1dGFibGVzICIKKyJvdSBkZXMgb2JqZXRzIHBhcnRhZ8OpcyAoc2kgbGUgbGlua2VyIGVzdCBhcHBlbMOpIGRpcmVjdGVtZW50LCBhbG9ycyBCPC1XbD4gZXQgIgorIkI8LD4gZG9pdmVudCDDqnRyZSByZXRpcsOpcyBkZSBjZXMgb3B0aW9ucykuIFZhbGV1ciBwYXIgZMOpZmF1dDogYXVjdW5lLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEyMgorIywgbm8td3JhcAorbXNnaWQgIkI8L2V0Yy9kcGtnL2J1aWxkZmxhZ3MuY29uZj4iCittc2dzdHIgIkI8L2V0Yy9kcGtnL2J1aWxkZmxhZ3MuY29uZj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEyNQorbXNnaWQgIlN5c3RlbSB3aWRlIGNvbmZpZ3VyYXRpb24gZmlsZS4iCittc2dzdHIgIkZpY2hpZXIgZGUgY29uZmlndXJhdGlvbiBwb3VyIGwnZW5zZW1ibGUgZHUgc3lzdMOobWUuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTI1CisjLCBuby13cmFwCittc2dpZCAiQjwkWERHX0NPTkZJR19IT01FL2Rwa2cvYnVpbGRmbGFncy5jb25mPiBvciBCPCRIT01FLy5jb25maWcvZHBrZy9idWlsZGZsYWdzLmNvbmY+IgorbXNnc3RyICJCPCRYREdfQ09ORklHX0hPTUUvZHBrZy9idWlsZGZsYWdzLmNvbmY+IG91IEI8JEhPTUUvLmNvbmZpZy9kcGtnL2J1aWxkZmxhZ3MuY29uZj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEyOAorbXNnaWQgIlVzZXIgY29uZmlndXJhdGlvbiBmaWxlLiIKK21zZ3N0ciAiRmljaGllciBkZSBjb25maWd1cmF0aW9uIHByb3ByZSDDoCBsJ3V0aWxpc2F0ZXVyIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMzUKK21zZ2lkICIiCisiVGhlcmUgYXJlIDIgc2V0cyBvZiBlbnZpcm9ubWVudCB2YXJpYWJsZXMgZG9pbmcgdGhlIHNhbWUgb3BlcmF0aW9ucywgdGhlICIKKyJmaXJzdCBvbmUgKERFQl9JPGZsYWc+X0k8b3A+KSBzaG91bGQgbmV2ZXIgYmUgdXNlZCB3aXRoaW4gQjxkZWJpYW4vcnVsZXM+LiAiCisiSXQncyBtZWFudCBmb3IgYW55IHVzZXIgdGhhdCB3YW50cyB0byByZWJ1aWxkIHRoZSBzb3VyY2UgcGFja2FnZSB3aXRoICIKKyJkaWZmZXJlbnQgYnVpbGQgZmxhZ3MuIFRoZSBzZWNvbmQgc2V0IChERUJfSTxmbGFnPl9NQUlOVF9JPG9wPikgc2hvdWxkIG9ubHkgIgorImJlIHVzZWQgaW4gQjxkZWJpYW4vcnVsZXM+IGJ5IHBhY2thZ2UgbWFpbnRhaW5lcnMgdG8gY2hhbmdlIHRoZSByZXN1bHRpbmcgIgorImJ1aWxkIGZsYWdzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTM1CisjLCBuby13cmFwCittc2dpZCAiQjxERUJfPkk8ZmxhZz5CPF9TRVQ+IgorbXNnc3RyICJCPERFQl8+STxkcmFwZWF1PkI8X1NFVD4iCisKKyMuIHR5cGU6IFRRCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMzcKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxERUJfPkk8ZmxhZz5CPF9TRVQ+IgorbXNnaWQgIkI8REVCXz5JPGZsYWc+QjxfTUFJTlRfU0VUPiIKK21zZ3N0ciAiQjxERUJfPkk8ZHJhcGVhdT5CPF9TRVQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNDEKK21zZ2lkICIiCisiVGhpcyB2YXJpYWJsZSBjYW4gYmUgdXNlZCB0byBmb3JjZSB0aGUgdmFsdWUgcmV0dXJuZWQgZm9yIHRoZSBnaXZlbiBJPGZsYWc+LiIKK21zZ3N0ciAiIgorIkNldHRlIHZhcmlhYmxlIHBlcm1ldCBkZSBmb3JjZXIgbGEgdmFsZXVyIHJlbnZvecOpZSBwb3VyIGxlIEk8ZHJhcGVhdT4gIgorImluZGlxdcOpLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE0MQorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPERFQl8+STxmbGFnPkI8X1NFVD4iCittc2dpZCAiQjxERUJfPkk8ZmxhZz5CPF9TVFJJUD4iCittc2dzdHIgIkI8REVCXz5JPGRyYXBlYXU+QjxfU0VUPiIKKworIy4gdHlwZTogVFEKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE0MworIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPERFQl8+STxmbGFnPkI8X1NFVD4iCittc2dpZCAiQjxERUJfPkk8ZmxhZz5CPF9NQUlOVF9TVFJJUD4iCittc2dzdHIgIkI8REVCXz5JPGRyYXBlYXU+QjxfU0VUPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTQ4CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJUaGlzIHZhcmlhYmxlIGNhbiBiZSB1c2VkIHRvIGFwcGVuZCBzdXBwbGVtZW50YXJ5IG9wdGlvbnMgdG8gdGhlIHZhbHVlICIKKyN8ICJyZXR1cm5lZCBmb3IgdGhlIGdpdmVuIEk8ZmxhZz4uIgorbXNnaWQgIiIKKyJUaGlzIHZhcmlhYmxlIGNhbiBiZSB1c2VkIHRvIHByb3ZpZGUgYSBzcGFjZSBzZXBhcmF0ZWQgbGlzdCBvZiBvcHRpb25zIHRoYXQgIgorIndpbGwgYmUgc3RyaXBwZWQgZnJvbSB0aGUgc2V0IG9mIGZsYWdzIHJldHVybmVkIGZvciB0aGUgZ2l2ZW4gSTxmbGFnPi4iCittc2dzdHIgIiIKKyJDZXR0ZSB2YXJpYWJsZSBwZXJtZXQgZCdham91dGVyIGRlcyBvcHRpb25zIMOgIGxhIHZhbGV1ciByZW52b3nDqWUgcG91ciBsZSAiCisiSTxkcmFwZWF1PiBpbmRpcXXDqS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNDgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPERFQl8+STxmbGFnPkI8X0FQUEVORD4iCittc2dzdHIgIkI8REVCXz5JPGRyYXBlYXU+QjxfQVBQRU5EPiIKKworIy4gdHlwZTogVFEKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE1MAorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPERFQl8+STxmbGFnPkI8X0FQUEVORD4iCittc2dpZCAiQjxERUJfPkk8ZmxhZz5CPF9NQUlOVF9BUFBFTkQ+IgorbXNnc3RyICJCPERFQl8+STxkcmFwZWF1PkI8X0FQUEVORD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE1NAorbXNnaWQgIiIKKyJUaGlzIHZhcmlhYmxlIGNhbiBiZSB1c2VkIHRvIGFwcGVuZCBzdXBwbGVtZW50YXJ5IG9wdGlvbnMgdG8gdGhlIHZhbHVlICIKKyJyZXR1cm5lZCBmb3IgdGhlIGdpdmVuIEk8ZmxhZz4uIgorbXNnc3RyICIiCisiQ2V0dGUgdmFyaWFibGUgcGVybWV0IGQnYWpvdXRlciBkZXMgb3B0aW9ucyDDoCBsYSB2YWxldXIgcmVudm95w6llIHBvdXIgbGUgIgorIkk8ZHJhcGVhdT4gaW5kaXF1w6kuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTU0CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8REVCXz5JPGZsYWc+QjxfQVBQRU5EPiIKK21zZ2lkICJCPERFQl8+STxmbGFnPkI8X1BSRVBFTkQ+IgorbXNnc3RyICJCPERFQl8+STxkcmFwZWF1PkI8X0FQUEVORD4iCisKKyMuIHR5cGU6IFRRCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNTYKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxERUJfPkk8ZmxhZz5CPF9BUFBFTkQ+IgorbXNnaWQgIkI8REVCXz5JPGZsYWc+QjxfTUFJTlRfUFJFUEVORD4iCittc2dzdHIgIkI8REVCXz5JPGRyYXBlYXU+QjxfQVBQRU5EPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTYwCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJUaGlzIHZhcmlhYmxlIGNhbiBiZSB1c2VkIHRvIGFwcGVuZCBzdXBwbGVtZW50YXJ5IG9wdGlvbnMgdG8gdGhlIHZhbHVlICIKKyN8ICJyZXR1cm5lZCBmb3IgdGhlIGdpdmVuIEk8ZmxhZz4uIgorbXNnaWQgIiIKKyJUaGlzIHZhcmlhYmxlIGNhbiBiZSB1c2VkIHRvIHByZXBlbmQgc3VwcGxlbWVudGFyeSBvcHRpb25zIHRvIHRoZSB2YWx1ZSAiCisicmV0dXJuZWQgZm9yIHRoZSBnaXZlbiBJPGZsYWc+LiIKK21zZ3N0ciAiIgorIkNldHRlIHZhcmlhYmxlIHBlcm1ldCBkJ2Fqb3V0ZXIgZGVzIG9wdGlvbnMgw6AgbGEgdmFsZXVyIHJlbnZvecOpZSBwb3VyIGxlICIKKyJJPGRyYXBlYXU+IGluZGlxdcOpLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE2MAorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPERFQl8+STxmbGFnPkI8X1NFVD4iCittc2dpZCAiQjxERUJfQlVJTERfTUFJTlRfT1BUSU9OUz4iCittc2dzdHIgIkI8REVCXz5JPGRyYXBlYXU+QjxfU0VUPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTY1Cittc2dpZCAiIgorIlRoaXMgdmFyaWFibGUgY2FuIGJlIHVzZWQgdG8gZGlzYWJsZS9lbmFibGUgdmFyaW91cyBoYXJkZW5pbmcgYnVpbGQgZmxhZ3MgIgorInRocm91Z2ggdGhlIEI8aGFyZGVuaW5nPiBvcHRpb24uIFNlZSB0aGUgQjxIQVJERU5JTkc+IHNlY3Rpb24gZm9yIGRldGFpbHMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNjYKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiV0FSTklORyIKK21zZ2lkICJIQVJERU5JTkciCittc2dzdHIgIkFWRVJUSVNTRU1FTlQiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE3MQorbXNnaWQgIiIKKyJTZXZlcmFsIGNvbXBpbGUtdGltZSBvcHRpb25zIChkZXRhaWxlZCBiZWxvdykgY2FuIGJlIHVzZWQgdG8gaGVscCBoYXJkZW4gYSAiCisicmVzdWx0aW5nIGJpbmFyeSBhZ2FpbnN0IG1lbW9yeSBjb3JydXB0aW9uIGF0dGFja3MsIG9yIHByb3ZpZGUgYWRkaXRpb25hbCAiCisid2FybmluZyBtZXNzYWdlcyBkdXJpbmcgY29tcGlsYXRpb24uIEV4Y2VwdCBhcyBub3RlZCBiZWxvdywgdGhlc2UgYXJlICIKKyJlbmFibGVkIGJ5IGRlZmF1bHQgZm9yIGFyY2hpdGVjdHVyZXMgdGhhdCBzdXBwb3J0IHRoZW0uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE3NworbXNnaWQgIiIKKyJFYWNoIGhhcmRlbmluZyBmZWF0dXJlIGNhbiBiZSBlbmFibGVkIGFuZCBkaXNhYmxlZCBpbiB0aGUgIgorIkI8REVCX0JVSUxEX01BSU5UX09QVElPTlM+IGVudmlyb25tZW50IHZhcmlhYmxlJ3MgQjxoYXJkZW5pbmc+IHZhbHVlIHdpdGggIgorInRoZSBcIitcIiBhbmQgXCItXCIgbW9kaWZpZXIuIEZvciBleGFtcGxlLCB0byBlbmFibGUgdGhlIFwicGllXCIgZmVhdHVyZSBhbmQgIgorImRpc2FibGUgdGhlIFwiZm9ydGlmeVwiIGZlYXR1cmUgeW91IGNhbiBkbyB0aGlzIGluIEI8ZGViaWFuL3J1bGVzPjoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTc5CisjLCBuby13cmFwCittc2dpZCAiICBleHBvcnQgREVCX0JVSUxEX01BSU5UX09QVElPTlM9aGFyZGVuaW5nPStwaWUsLWZvcnRpZnlcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxODMKK21zZ2lkICIiCisiVGhlIHNwZWNpYWwgZmVhdHVyZSBCPGFsbD4gY2FuIGJlIHVzZWQgdG8gZW5hYmxlIG9yIGRpc2FibGUgYWxsIGhhcmRlbmluZyAiCisiZmVhdHVyZXMgYXQgdGhlIHNhbWUgdGltZS4gVGh1cyBkaXNhYmxpbmcgZXZlcnl0aGluZyBhbmQgZW5hYmxpbmcgb25seSAiCisiXCJmb3JtYXRcIiBhbmQgXCJmb3J0aWZ5XCIgY2FuIGJlIGFjaGlldmVkIHdpdGg6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE4NQorIywgbm8td3JhcAorbXNnaWQgIiAgZXhwb3J0IERFQl9CVUlMRF9NQUlOVF9PUFRJT05TPWhhcmRlbmluZz0tYWxsLCtmb3JtYXQsK2ZvcnRpZnlcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTg2CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8Rm9ybWF0PiIKK21zZ2lkICJCPGZvcm1hdD4iCittc2dzdHIgIkI8Rm9ybWF0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTk4Cittc2dpZCAiIgorIlRoaXMgc2V0dGluZyAoZW5hYmxlZCBieSBkZWZhdWx0KSBhZGRzIEI8LVdmb3JtYXQgLVdmb3JtYXQtc2VjdXJpdHkgLSIKKyJXZXJyb3I9Zm9ybWF0LXNlY3VyaXR5PiB0byBCPENGTEFHUz4gYW5kIEI8Q1hYRkxBR1M+LiBUaGlzIHdpbGwgd2FybiBhYm91dCAiCisiaW1wcm9wZXIgZm9ybWF0IHN0cmluZyB1c2VzLCBhbmQgd2lsbCBmYWlsIHdoZW4gZm9ybWF0IGZ1bmN0aW9ucyBhcmUgdXNlZCBpbiAiCisiYSB3YXkgdGhhdCB0aGF0IHJlcHJlc2VudCBwb3NzaWJsZSBzZWN1cml0eSBwcm9ibGVtcy4gQXQgcHJlc2VudCwgdGhpcyB3YXJucyAiCisiYWJvdXQgY2FsbHMgdG8gQjxwcmludGY+IGFuZCBCPHNjYW5mPiBmdW5jdGlvbnMgd2hlcmUgdGhlIGZvcm1hdCBzdHJpbmcgaXMgIgorIm5vdCBhIHN0cmluZyBsaXRlcmFsIGFuZCB0aGVyZSBhcmUgbm8gZm9ybWF0IGFyZ3VtZW50cywgYXMgaW4gQjxwcmludGYoZm9vKTsiCisiPiBpbnN0ZWFkIG9mIEI8cHJpbnRmKFwiJXNcIiwgZm9vKTs+IFRoaXMgbWF5IGJlIGEgc2VjdXJpdHkgaG9sZSBpZiB0aGUgIgorImZvcm1hdCBzdHJpbmcgY2FtZSBmcm9tIHVudHJ1c3RlZCBpbnB1dCBhbmQgY29udGFpbnMgXCIlblwiLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTk5CisjLCBuby13cmFwCittc2dpZCAiQjxmb3J0aWZ5PiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyMTAKK21zZ2lkICIiCisiVGhpcyBzZXR0aW5nIChlbmFibGVkIGJ5IGRlZmF1bHQpIGFkZHMgQjwtRF9GT1JUSUZZX1NPVVJDRT0yPiB0byBCPENGTEFHUz4gIgorImFuZCBCPENYWEZMQUdTPi4gRHVyaW5nIGNvZGUgZ2VuZXJhdGlvbiB0aGUgY29tcGlsZXIga25vd3MgYSBncmVhdCBkZWFsIG9mICIKKyJpbmZvcm1hdGlvbiBhYm91dCBidWZmZXIgc2l6ZXMgKHdoZXJlIHBvc3NpYmxlKSwgYW5kIGF0dGVtcHRzIHRvIHJlcGxhY2UgIgorImluc2VjdXJlIHVubGltaXRlZCBsZW5ndGggYnVmZmVyIGZ1bmN0aW9uIGNhbGxzIHdpdGggbGVuZ3RoLWxpbWl0ZWQgb25lcy4gIgorIlRoaXMgaXMgZXNwZWNpYWxseSB1c2VmdWwgZm9yIG9sZCwgY3J1ZnR5IGNvZGUuICBBZGRpdGlvbmFsbHksIGZvcm1hdCAiCisic3RyaW5ncyBpbiB3cml0YWJsZSBtZW1vcnkgdGhhdCBjb250YWluICclbicgYXJlIGJsb2NrZWQuIElmIGFuIGFwcGxpY2F0aW9uICIKKyJkZXBlbmRzIG9uIHN1Y2ggYSBmb3JtYXQgc3RyaW5nLCBpdCB3aWxsIG5lZWQgdG8gYmUgd29ya2VkIGFyb3VuZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjEzCittc2dpZCAiIgorIk5vdGUgdGhhdCBmb3IgdGhpcyBvcHRpb24gdG8gaGF2ZSBhbnkgZWZmZWN0LCB0aGUgc291cmNlIG11c3QgYWxzbyBiZSAiCisiY29tcGlsZWQgd2l0aCBCPC1PMT4gb3IgaGlnaGVyLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjEzCisjLCBuby13cmFwCittc2dpZCAiQjxzdGFja3Byb3RlY3Rvcj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjIyCittc2dpZCAiIgorIlRoaXMgc2V0dGluZyAoZW5hYmxlZCBieSBkZWZhdWx0KSBhZGRzIEI8LWZzdGFjay1wcm90ZWN0b3IgLS1wYXJhbT1zc3AtIgorImJ1ZmZlci1zaXplPTQ+IHRvIEI8Q0ZMQUdTPiBhbmQgQjxDWFhGTEFHUz4uIFRoaXMgYWRkcyBzYWZldHkgY2hlY2tzIGFnYWluc3QgIgorInN0YWNrIG92ZXJ3cml0ZXMuIFRoaXMgcmVuZGVycyBtYW55IHBvdGVudGlhbCBjb2RlIGluamVjdGlvbiBhdHRhY2tzIGludG8gIgorImFib3J0aW5nIHNpdHVhdGlvbnMuIEluIHRoZSBiZXN0IGNhc2UgdGhpcyB0dXJucyBjb2RlIGluamVjdGlvbiAiCisidnVsbmVyYWJpbGl0aWVzIGludG8gZGVuaWFsIG9mIHNlcnZpY2Ugb3IgaW50byBub24taXNzdWVzIChkZXBlbmRpbmcgb24gdGhlICIKKyJhcHBsaWNhdGlvbikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjIyNgorbXNnaWQgIiIKKyJUaGlzIGZlYXR1cmUgcmVxdWlyZXMgbGlua2luZyBhZ2FpbnN0IGdsaWJjIChvciBhbm90aGVyIHByb3ZpZGVyIG9mICIKKyJCPF9fc3RhY2tfY2hrX2ZhaWw+KSwgc28gbmVlZHMgdG8gYmUgZGlzYWJsZWQgd2hlbiBidWlsZGluZyB3aXRoIEI8LSIKKyJub3N0ZGxpYj4gb3IgQjwtZmZyZWVzdGFuZGluZz4gb3Igc2ltaWxhci4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjIyNworIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPHJlZ2V4PiIKK21zZ2lkICJCPHJlbHJvPiIKK21zZ3N0ciAiQjxyZWdleD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjIzNQorbXNnaWQgIiIKKyJUaGlzIHNldHRpbmcgKGVuYWJsZWQgYnkgZGVmYXVsdCkgYWRkcyBCPC1XbCwteixyZWxybz4gdG8gQjxMREZMQUdTPi4gICIKKyJEdXJpbmcgcHJvZ3JhbSBsb2FkLCBzZXZlcmFsIEVMRiBtZW1vcnkgc2VjdGlvbnMgbmVlZCB0byBiZSB3cml0dGVuIHRvIGJ5ICIKKyJ0aGUgbGlua2VyLiBUaGlzIGZsYWdzIHRoZSBsb2FkZXIgdG8gdHVybiB0aGVzZSBzZWN0aW9ucyByZWFkLW9ubHkgYmVmb3JlICIKKyJ0dXJuaW5nIG92ZXIgY29udHJvbCB0byB0aGUgcHJvZ3JhbS4gTW9zdCBub3RhYmx5IHRoaXMgcHJldmVudHMgR09UICIKKyJvdmVyd3JpdGUgYXR0YWNrcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjIzNgorIywgbm8td3JhcAorbXNnaWQgIkI8YmluZG5vdz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjQzCittc2dpZCAiIgorIlRoaXMgc2V0dGluZyAoZGlzYWJsZWQgYnkgZGVmYXVsdCkgYWRkcyBCPC1XbCwteixub3c+IHRvIEI8TERGTEFHUz4uIER1cmluZyAiCisicHJvZ3JhbSBsb2FkLCBhbGwgZHluYW1pYyBzeW1ib2xzIGFyZSByZXNvbHZlZCwgYWxsb3dpbmcgZm9yIHRoZSBlbnRpcmUgUExUICIKKyJ0byBiZSBtYXJrZWQgcmVhZC1vbmx5IChkdWUgdG8gQjxyZWxybz4gYWJvdmUpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjQ0CisjLCBuby13cmFwCittc2dpZCAiQjxwaWU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjI1NgorbXNnaWQgIiIKKyJUaGlzIHNldHRpbmcgKGRpc2FibGVkIGJ5IGRlZmF1bHQpIGFkZHMgQjwtZlBJRT4gdG8gQjxDRkxBR1M+IGFuZCAiCisiQjxDWFhGTEFHUz4sIGFuZCBCPC1mUElFIC1waWU+IHRvIEI8TERGTEFHUz4uIFBvc2l0aW9uIEluZGVwZW5kZW50ICIKKyJFeGVjdXRhYmxlIGFyZSBuZWVkZWQgdG8gdGFrZSBhZHZhbnRhZ2Ugb2YgQWRkcmVzcyBTcGFjZSBMYXlvdXQgIgorIlJhbmRvbWl6YXRpb24sIHN1cHBvcnRlZCBieSBzb21lIGtlcm5lbCB2ZXJzaW9ucy4gV2hpbGUgQVNMUiBjYW4gYWxyZWFkeSBiZSAiCisiZW5mb3JjZWQgZm9yIGRhdGEgYXJlYXMgaW4gdGhlIHN0YWNrIGFuZCBoZWFwIChicmsgYW5kIG1tYXApLCB0aGUgY29kZSBhcmVhcyAiCisibXVzdCBiZSBjb21waWxlZCBhcyBwb3NpdGlvbi1pbmRlcGVuZGVudC4gU2hhcmVkIGxpYnJhcmllcyBhbHJlYWR5IGRvIHRoaXMgKC0iCisiZlBJQyksIHNvIHRoZXkgZ2FpbiBBU0xSIGF1dG9tYXRpY2FsbHksIGJ1dCBiaW5hcnkgLnRleHQgcmVnaW9ucyBuZWVkIHRvIGJlICIKKyJidWlsZCBQSUUgdG8gZ2FpbiBBU0xSLiBXaGVuIHRoaXMgaGFwcGVucywgUk9QIChSZXR1cm4gT3JpZW50ZWQgUHJvZ3JhbW1pbmcpICIKKyJhdHRhY2tzIGFyZSBtdWNoIGhhcmRlciBzaW5jZSB0aGVyZSBhcmUgbm8gc3RhdGljIGxvY2F0aW9ucyB0byBib3VuY2Ugb2ZmIG9mICIKKyJkdXJpbmcgYSBtZW1vcnkgY29ycnVwdGlvbiBhdHRhY2suIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjI1OQorbXNnaWQgIiIKKyJUaGlzIGlzIG5vdCBjb21wYXRpYmxlIHdpdGggQjwtZlBJQz4gc28gY2FyZSBtdXN0IGJlIHRha2VuIHdoZW4gYnVpbGRpbmcgIgorInNoYXJlZCBvYmplY3RzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyNjUKK21zZ2lkICIiCisiQWRkaXRpb25hbGx5LCBzaW5jZSBQSUUgaXMgaW1wbGVtZW50ZWQgdmlhIGEgZ2VuZXJhbCByZWdpc3Rlciwgc29tZSAiCisiYXJjaGl0ZWN0dXJlcyAobW9zdCBub3RhYmx5IGkzODYpIGNhbiBzZWUgcGVyZm9ybWFuY2UgbG9zc2VzIG9mIHVwIHRvIDE1JSBpbiAiCisidmVyeSB0ZXh0LXNlZ21lbnQtaGVhdnkgYXBwbGljYXRpb24gd29ya2xvYWRzOyBtb3N0IHdvcmtsb2FkcyBzZWUgbGVzcyB0aGFuICIKKyIxJS4gQXJjaGl0ZWN0dXJlcyB3aXRoIG1vcmUgZ2VuZXJhbCByZWdpc3RlcnMgKGUuZy4gYW1kNjQpICBkbyBub3Qgc2VlIGFzICIKKyJoaWdoIGEgd29yc3QtY2FzZSBwZW5hbHR5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyNjgKKyMsIGZ1enp5CisjfCBtc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMDgtMjAxMCBSYXBoYVxcWzplXWwgSGVydHpvZyIKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAxMC0yMDExIFJhcGhhXFxbOmVdbCBIZXJ0em9nIgorbXNnc3RyICJDb3B5cmlnaHQgXFwoY28gMjAwOC0yMDEwIFJhcGhhXFxbOmVdbCBIZXJ0em9nIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyNzAKKyMsIGZ1enp5CisjfCBtc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMDEgSm9leSBIZXNzIgorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDExIEtlZXMgQ29vayIKK21zZ3N0ciAiQ29weXJpZ2h0IFxcKGNvIDIwMDEgSm9leSBIZXNzIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxCisjLCBuby13cmFwCittc2dpZCAiZHBrZy1idWlsZHBhY2thZ2UiCittc2dzdHIgImRwa2ctYnVpbGRwYWNrYWdlIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjQKK21zZ2lkICJkcGtnLWJ1aWxkcGFja2FnZSAtIGJ1aWxkIGJpbmFyeSBvciBzb3VyY2UgcGFja2FnZXMgZnJvbSBzb3VyY2VzIgorbXNnc3RyICIiCisiZHBrZy1idWlsZHBhY2thZ2UgLSBDb25zdHJ1aXJlIGRlcHVpcyBsZXMgc291cmNlcyBkZXMgcGFxdWV0cyBiaW5haXJlcyBvdSAiCisic291cmNlcyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo4CisjLCBmdXp6eQorI3wgbXNnaWQgIkI8ZHBrZy1idWlsZHBhY2thZ2U+IFtJPG9wdGlvbnM+XSIKK21zZ2lkICJCPGRwa2ctYnVpbGRwYWNrYWdlPiBbSTxvcHRpb24+Li4uXSIKK21zZ3N0ciAiQjxkcGtnLWJ1aWxkcGFja2FnZT4gW0k8b3B0aW9ucz5dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEzCittc2dpZCAiIgorIkI8ZHBrZy1idWlsZHBhY2thZ2U+IGlzIGEgcHJvZ3JhbSB0aGF0IGF1dG9tYXRlcyB0aGUgcHJvY2VzcyBvZiBidWlsZGluZyBhICIKKyJEZWJpYW4gcGFja2FnZS4gSXQgY29uc2lzdHMgb2YgdGhlIGZvbGxvd2luZyBzdGVwczoiCittc2dzdHIgIiIKKyJCPGRwa2ctYnVpbGRwYWNrYWdlPiBlc3QgdW4gcHJvZ3JhbW1lIHF1aSBwZXJtZXQgZCdhdXRvbWF0aXNlciBsYSAiCisiY29uc3RydWN0aW9uIGQndW4gcGFxdWV0IERlYmlhbi4gSWwgY29tcG9ydGUgbGVzIMOpdGFwZXMgc3VpdmFudGVzwqA6IgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxMworIywgbm8td3JhcAorbXNnaWQgIkI8MS4+IgorbXNnc3RyICJCPDEuPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxNworbXNnaWQgIiIKKyJJdCBwcmVwYXJlcyB0aGUgYnVpbGQgZW52aXJvbm1lbnQgYnkgc2V0dGluZyB2YXJpb3VzIGVudmlyb25tZW50IHZhcmlhYmxlcyAiCisiKHNlZSBCPEVOVklST05NRU5UPikgYW5kIGNhbGxzIEI8ZHBrZy1zb3VyY2UgLS1iZWZvcmUtYnVpbGQ+ICh1bmxlc3MgQjwtVD4gIgorIm9yIEI8LS10YXJnZXQ+IGhhcyBiZWVuIHVzZWQpLiIKK21zZ3N0ciAiIgorIlByw6lwYXJhdGlvbiBkZSBsJ2Vudmlyb25uZW1lbnQgZGUgY29tcGlsYXRpb24gcGFyIHBvc2l0aW9ubmVtZW50IGRlIGRpdmVyc2VzICIKKyJ2YXJpYWJsZXMgZCdlbnZpcm9ubmVtZW50ICh2b2lyIEI8VkFSSUFCTEVTIEQnRU5WSVJPTk5FTUVOVD4pIGV0IGFwcGVsIGRlICIKKyJCPGRwa2ctc291cmNlIC0tYmVmb3JlLWJ1aWxkPiAoc2F1ZiBzaSBCPC1UPiBvdSBCPC0tdGFyZ2V0PiBvbnQgw6l0w6kgIgorInV0aWxpc8OpcykuIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxNworIywgbm8td3JhcAorbXNnaWQgIkI8Mi4+IgorbXNnc3RyICJCPDIuPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMAorbXNnaWQgIiIKKyJJdCBjaGVja3MgdGhhdCB0aGUgYnVpbGQtZGVwZW5kZW5jaWVzIGFuZCBidWlsZC1jb25mbGljdHMgYXJlIHNhdGlzZmllZCAiCisiKHVubGVzcyBCPC1kPiBpcyBzcGVjaWZpZWQpLiIKK21zZ3N0ciAiIgorIkNvbnRyw7RsZSBkZXMgZMOpcGVuZGFuY2VzIGRlIGNvbnN0cnVjdGlvbnMgZXQgZGVzIGNvbmZsaXRzIGRlIGNvbnN0cnVjdGlvbiAiCisiKG5vbiBlZmZlY3R1w6kgc2kgQjwtZD4gZXN0IHV0aWxpc8OpKS4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIwCisjLCBuby13cmFwCittc2dpZCAiQjwzLj4iCittc2dzdHIgIkI8My4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjI1Cittc2dpZCAiIgorIklmIGEgc3BlY2lmaWMgdGFyZ2V0IGhhcyBiZWVuIHNlbGVjdGVkIHdpdGggdGhlIEI8LVQ+IG9yIEI8LS10YXJnZXQ+IG9wdGlvbiwgIgorIml0IGNhbGxzIHRoYXQgdGFyZ2V0IGFuZCBzdG9wcyBoZXJlLiBPdGhlcndpc2UgaXQgY2FsbHMgQjxmYWtlcm9vdCBkZWJpYW4vIgorInJ1bGVzIGNsZWFuPiB0byBjbGVhbiB0aGUgYnVpbGQtdHJlZSAodW5sZXNzIEI8LW5jPiBpcyBzcGVjaWZpZWQpLiIKK21zZ3N0ciAiIgorIlNpIHVuZSBjaWJsZSBwYXJ0aWN1aWzDqHJlIGEgw6l0w6kgaW5kaXF1w6llIGF2ZWMgbGVzIG9wdGlvbnMgQjwtVD4gb3UgQjwtLSIKKyJ0YXJnZXQ+LCBhcHBlbCBkZSBjZXR0ZSBjaWJsZSBldCBhcnLDqnQuIERhbnMgbGUgY2FzIGNvbnRyYWlyZSwgYXBwZWwgZGUgIgorIkI8ZmFrZXJvb3QgZGViaWFuL3J1bGVzIGNsZWFuPiBwb3VyIG5ldHRveWFnZSBkZSBsJ2FyYm9yZXNjZW5jZSBzb3VyY2UgKHNhdWYgIgorInNpIEI8LW5jPiBhIMOpdMOpIHV0aWxpc8OpKS4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjI1CisjLCBuby13cmFwCittc2dpZCAiQjw0Lj4iCittc2dzdHIgIkI8NC4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjI5Cittc2dpZCAiIgorIkl0IGNhbGxzIEI8ZHBrZy1zb3VyY2UgLWI+IHRvIGdlbmVyYXRlIHRoZSBzb3VyY2UgcGFja2FnZSAodW5sZXNzIGEgYmluYXJ5LSIKKyJvbmx5IGJ1aWxkIGhhcyBiZWVuIHJlcXVlc3RlZCB3aXRoIEI8LWI+LCBCPC1CPiBvciBCPC1BPikuIgorbXNnc3RyICIiCisiQXBwZWwgZGUgQjxkcGtnLXNvdXJjZSAtYj4gcG91ciBjcsOpZXIgbGUgcGFxdWV0IHNvdXJjZSAoc2F1ZiBzaSB1bmUgIgorImNvbnRydWN0aW9uIGJpbmFpcmUgc2V1bGUgYSDDqXTDqSBkZW1hbmTDqWUgYXZlYyBCPC1iPiwgQjwtQj4gb3UgQjwtQT4pLiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPDUuPiIKK21zZ3N0ciAiQjw1Lj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MzYKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIkl0IGNhbGxzIEI8ZGViaWFuL3J1bGVzPiBCPGJ1aWxkPiBmb2xsb3dlZCBieSBCPGZha2Vyb290IGRlYmlhbi9ydWxlcz4gIgorI3wgIkk8YmluYXJ5LXRhcmdldD4gKHVubGVzcyBhIHNvdXJjZS1vbmx5IGJ1aWxkIGhhcyBiZWVuIHJlcXVlc3RlZCB3aXRoIEI8LSIKKyN8ICJTPikuIE5vdGUgdGhhdCBJPGJpbmFyeS10YXJnZXQ+IGlzIGVpdGhlciBCPGJpbmFyeT4gKGRlZmF1bHQgY2FzZSwgb3IgaWYgIgorI3wgIkI8LWI+IGlzIHNwZWNpZmllZCkgIG9yIEI8YmluYXJ5LWFyY2g+IChpZiBCPC1CPiBpcyBzcGVjaWZpZWQpIG9yICIKKyN8ICJCPGJpbmFyeS1pbmRlcD4gKGlmIEI8LUE+IGlzIHNwZWNpZmllZCkuIgorbXNnaWQgIiIKKyJJdCBjYWxscyBCPGRlYmlhbi9ydWxlcz4gQjxidWlsZD4gZm9sbG93ZWQgYnkgQjxmYWtlcm9vdCBkZWJpYW4vcnVsZXM+ICIKKyJJPGJpbmFyeS10YXJnZXQ+ICh1bmxlc3MgYSBzb3VyY2Utb25seSBidWlsZCBoYXMgYmVlbiByZXF1ZXN0ZWQgd2l0aCBCPC1TPikuICIKKyJOb3RlIHRoYXQgSTxiaW5hcnktdGFyZ2V0PiBpcyBlaXRoZXIgQjxiaW5hcnk+IChkZWZhdWx0IGNhc2UsIG9yIGlmIEI8LWI+IGlzICIKKyJzcGVjaWZpZWQpICBvciBCPGJpbmFyeS1hcmNoPiAoaWYgQjwtQj4gaXMgc3BlY2lmaWVkKSBvciBCPGJpbmFyeS1pbmRlcD4gKGlmICIKKyJCPC1BPiBpcyBzcGVjaWZpZWQpLiIKK21zZ3N0ciAiIgorIkFwcGVsIGRlIEI8ZGViaWFuL3J1bGVzPiBCPGJ1aWxkPiBzdWl2aSBkZSBCPGZha2Vvb3QgZGViaWFuL3J1bGVzPiBJPGJpbmFyeS0iCisidGFyZ2V0PiAoc2F1ZiBzaSB1bmUgY29uc3RydWN0aW9uIHNvdXJjZSBzZXVsZSBhIMOpdMOpIGRlbWFuZMOpZSBhdmVjIEI8LVM+KS4gIgorIk5vdGVyIHF1ZSBJPGJpbmFyeS10YXJnZXQ+IGVzdCBzb2l0IEI8YmluYXJ5PiAoY2FzIHBhciBkw6lmYXV0LCBvdSBhdmVjICIKKyJ1dGlsaXNhdGlvbiBkZSBCPC1iPikgc29pdCBCPGJpbmFyeS1hcmNoPiAoc2kgQjwtQj4gZXN0IHV0aWxpc8OpKS4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjM2CisjLCBuby13cmFwCittc2dpZCAiQjw2Lj4iCittc2dzdHIgIkI8Ni4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjM5Cittc2dpZCAiIgorIkl0IGNhbGxzIEI8Z3BnPiB0byBzaWduIHRoZSBCPC5kc2M+IGZpbGUgKGlmIGFueSwgdW5sZXNzIEI8LXVzPiBpcyAiCisic3BlY2lmaWVkKS4iCittc2dzdHIgIiIKKyJBcHBlbCBkZSBCPGdwZz4gcG91ciBzaWduYXR1cmUgZHUgZmljaGllciBCPC5kc2M+IChzYXVmIHNpIEI8LXVzPiBlc3QgIgorInV0aWxpc8OpKS4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjM5CisjLCBuby13cmFwCittc2dpZCAiQjw3Lj4iCittc2dzdHIgIkI8Ny4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjQzCittc2dpZCAiIgorIkl0IGNhbGxzIEI8ZHBrZy1nZW5jaGFuZ2VzPiB0byBnZW5lcmF0ZSBhIEI8LmNoYW5nZXM+IGZpbGUuICBNYW55IEI8ZHBrZy0iCisiYnVpbGRwYWNrYWdlPiBvcHRpb25zIGFyZSBmb3J3YXJkZWQgdG8gQjxkcGtnLWdlbmNoYW5nZXM+LiIKK21zZ3N0ciAiIgorIkFwcGVsIGRlIEI8ZHBrZy1nZW5jaGFuZ2VzPiBwb3VyIGNyw6llciB1biBmaWNoaWVyIEI8LmNoYW5nZXM+LiBEZSBub21icmV1c2VzICIKKyJvcHRpb25zIGRlIEI8ZHBrZy1idWlsZHBhY2thZ2U+IHNvbnQgcGFzc8OpZXMgw6AgQjxkcGtnLWdlbmNoYW5nZXM+LiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NDMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPDguPiIKK21zZ3N0ciAiQjw4Lj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NDYKK21zZ2lkICIiCisiSXQgY2FsbHMgQjxncGc+IHRvIHNpZ24gdGhlIEI8LmNoYW5nZXM+IGZpbGUgKHVubGVzcyBCPC11Yz4gaXMgc3BlY2lmaWVkKS4iCittc2dzdHIgIiIKKyJBcHBlbCBkZSBCPGdwZz4gcG91ciBzaWduZXIgbGUgZmljaGllciBCPC5jaGFuZ2VzPiAoc2F1ZiBzaSBCPC11Yz4gZXN0ICIKKyJ1dGlsaXPDqSkuIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo0NgorIywgbm8td3JhcAorbXNnaWQgIkI8OS4+IgorbXNnc3RyICJCPDkuPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo0OQorbXNnaWQgIiIKKyJJZiBCPC10Yz4gaXMgc3BlY2lmaWVkLCBpdCB3aWxsIGNhbGwgQjxmYWtlcm9vdCBkZWJpYW4vcnVsZXMgY2xlYW4+IGFnYWluLiAiCisiRmluYWxseSBpdCBjYWxscyBCPGRwa2ctc291cmNlIC0tYWZ0ZXItYnVpbGQ+LiIKK21zZ3N0ciAiIgorIlNpIEI8LXRjPiBlc3QgdXRpbGlzw6ksIGFwcGVsIGRlIEI8ZmFrZXJvb3QgZGViaWFuL3J1bGVzIGNsZWFuPiDDoCBub3V2ZWF1LiAiCisiRW5maW4sIGFwcGVsIGRlIEI8ZHBrZy1zb3VyY2UgLS1hZnRlci1idWlsZD4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo1MQorIywgbm8td3JhcAorbXNnaWQgIkI8LWI+IgorbXNnc3RyICJCPC1iPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo1NQorbXNnaWQgIiIKKyJTcGVjaWZpZXMgYSBiaW5hcnktb25seSBidWlsZCwgbm8gc291cmNlIGZpbGVzIGFyZSB0byBiZSBidWlsdCBhbmQvb3IgIgorImRpc3RyaWJ1dGVkLiBQYXNzZWQgdG8gQjxkcGtnLWdlbmNoYW5nZXM+LiIKK21zZ3N0ciAiIgorIkluZGlxdWUgcXVlIHNldWwgdW4gcGFxdWV0IGJpbmFpcmUgZXN0IMOgIGNvbnN0cnVpcmXCoDsgYXVjdW4gZmljaGllciBzb3VyY2UgIgorIm4nZXN0IMOgIGNvbnN0cnVpcmUgZXQvb3Ugw6AgZGlzdHJpYnVlci4gUGFzc8OpIMOgIEI8ZHBrZy1nZW5jaGFuZ2VzPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjU1IGRwa2ctY2hlY2tidWlsZGRlcHMuMToyMworIywgbm8td3JhcAorbXNnaWQgIkI8LUI+IgorbXNnc3RyICJCPC1CPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo1OQorbXNnaWQgIiIKKyJTcGVjaWZpZXMgYSBiaW5hcnktb25seSBidWlsZCwgbGltaXRlZCB0byBhcmNoaXRlY3R1cmUgZGVwZW5kZW50IHBhY2thZ2VzLiAgIgorIlBhc3NlZCB0byBCPGRwa2ctZ2VuY2hhbmdlcz4uIgorbXNnc3RyICIiCisiSW5kaXF1ZSBxdWUgc2V1bCB1biBwYXF1ZXQgYmluYWlyZSBlc3Qgw6AgY29uc3RydWlyZcKgOyBhdWN1biBmaWNoaWVyLCAiCisiYXBwYXJ0ZW5hbnQgw6AgdW4gcGFxdWV0IGJpbmFpcmUgbmUgZMOpcGVuZGFudCBwYXMgZCd1bmUgYXJjaGl0ZWN0dXJlLCBuJ2VzdCDDoCAiCisiZGlzdHJpYnVlci4gUGFzc8OpIMOgIEI8ZHBrZy1nZW5jaGFuZ2VzPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjU5CisjLCBuby13cmFwCittc2dpZCAiQjwtQT4iCittc2dzdHIgIkI8LUE+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjYzCittc2dpZCAiIgorIlNwZWNpZmllcyBhIGJpbmFyeS1vbmx5IGJ1aWxkLCBsaW1pdGVkIHRvIGFyY2hpdGVjdHVyZSBpbmRlcGVuZGVudCBwYWNrYWdlcy4gIgorIlBhc3NlZCB0byBCPGRwa2ctZ2VuY2hhbmdlcz4uIgorbXNnc3RyICIiCisiSW5kaXF1ZSBxdWUgc2V1bCB1biBwYXF1ZXQgYmluYWlyZSBlc3Qgw6AgY29uc3RydWlyZcKgOyBhdWN1biBmaWNoaWVyLCAiCisiYXBwYXJ0ZW5hbnQgw6AgdW4gcGFxdWV0IGJpbmFpcmUgbmUgZMOpcGVuZGFudCBwYXMgZCd1bmUgYXJjaGl0ZWN0dXJlLCBuJ2VzdCDDoCAiCisiZGlzdHJpYnVlci4gUGFzc8OpIMOgIEI8ZHBrZy1nZW5jaGFuZ2VzPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjYzIGRwa2ctZ2VuY2hhbmdlcy4xOjI3CisjLCBuby13cmFwCittc2dpZCAiQjwtUz4iCittc2dzdHIgIkI8LVM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjY3Cittc2dpZCAiIgorIlNwZWNpZmllcyBhIHNvdXJjZS1vbmx5IGJ1aWxkLCBubyBiaW5hcnkgcGFja2FnZXMgbmVlZCB0byBiZSBtYWRlLiAgUGFzc2VkICIKKyJ0byBCPGRwa2ctZ2VuY2hhbmdlcz4uIgorbXNnc3RyICIiCisiTmUgY29uc3RydWl0IHF1J3VuIHBhcXVldCBzb3VyY2UsIGF1Y3VuIHBhcXVldCBiaW5haXJlIG5lIHNlcmEgY29uc3RydWl0LiAiCisiUGFzc8OpIMOgIEI8ZHBrZy1nZW5jaGFuZ2VzPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjY3CisjLCBuby13cmFwCittc2dpZCAiQjwtRj4iCittc2dzdHIgIkI8LUY+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjcxCittc2dpZCAiIgorIlNwZWNpZmllcyBhIG5vcm1hbCBmdWxsIGJ1aWxkLCBiaW5hcnkgYW5kIHNvdXJjZSBwYWNrYWdlcyB3aWxsIGJlIGJ1aWx0LiAgIgorIlRoaXMgaXMgdGhlIHNhbWUgYXMgdGhlIGRlZmF1bHQgY2FzZSB3aGVuIG5vIGJ1aWxkIG9wdGlvbiBpcyBzcGVjaWZpZWQuIgorbXNnc3RyICIiCisiQ29uc3RydWN0aW9uIGNvbXBsw6h0ZSBvw7kgbGVzIHBhcXVldHMgc291cmNlcyBldCBiaW5haXJlcyBzb250IGNvbnN0cnVpdHMuICIKKyJJZGVudGlxdWUgYXUgY2FzIHBhciBkw6lmYXV0IG/DuSBhdWN1bmUgb3B0aW9uIGRlIGNvbnN0cnVjdGlvbiBuJ2VzdCBpbmRpcXXDqWUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjczCittc2dpZCAiQjwtLXRhcmdldD0+STx0YXJnZXQ+IgorbXNnc3RyICJCPC0tdGFyZ2V0PT5JPGNpYmxlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo3NQorbXNnaWQgIkI8LS10YXJnZXQgPkk8dGFyZ2V0PiIKK21zZ3N0ciAiQjwtLXRhcmdldCA+STxjaWJsZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NzcKK21zZ2lkICJCPC1UPkk8dGFyZ2V0PiIKK21zZ3N0ciAiQjwtVD5JPGNpYmxlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo4MworbXNnaWQgIiIKKyJDYWxscyBCPGRlYmlhbi9ydWxlcz4gSTx0YXJnZXQ+IGFmdGVyIGhhdmluZyBzZXR1cCB0aGUgYnVpbGQgZW52aXJvbm1lbnQgYW5kICIKKyJzdG9wcyB0aGUgcGFja2FnZSBidWlsZCBwcm9jZXNzIGhlcmUuIElmIEI8LS1hcy1yb290PiBpcyBhbHNvIGdpdmVuLCB0aGVuICIKKyJ0aGUgY29tbWFuZCBpcyBleGVjdXRlZCBhcyByb290IChzZWUgQjwtcj4pLiBOb3RlIHRoYXQgb2ZmaWNpYWwgdGFyZ2V0cyB0aGF0ICIKKyJhcmUgcmVxdWlyZWQgdG8gYmUgcnVuIGFzIHJvb3QgYnkgdGhlIERlYmlhbiBwb2xpY3kgZG8gbm90IG5lZWQgdGhpcyBvcHRpb24uIgorbXNnc3RyICIiCisiQXBwZWxsZSBCPGRlYmlhbi9ydWxlcz4gSTxjaWJsZT4gYXByw6hzIGF2b2lyIG1pcyBlbiBwbGFjZSBsJ2Vudmlyb25uZW1lbnQgZGUgIgorImNvbnN0cnVjdGlvbiwgcHVpcyBpbnRlcnJvbXB0IGxlIHByb2Nlc3N1cyBkZSBjb25zdHJ1Y3Rpb24uIFNpIEI8LS1hcy1yb290PiAiCisiZXN0IMOpZ2FsZW1lbnQgdXRpbGlzw6ksIGxhIGNvbW1hbmRlIHNlcmEgZXjDqWN1dMOpZSBhdmVjIGxlcyBwcml2aWzDqGdlcyBkdSAiCisic3VwZXJ1dGlsaXNhdGV1ciAodm9pciBCPC1yPikuIE5vdGVyIHF1ZSBsZXMgY2libGVzIGRvbnQgbCdleMOpY3V0aW9uIHBhciAiCisicm9vdCBlc3QgaW1wb3PDqWUgcGFyIGxhIENoYXJ0ZSBEZWJpYW4gbidvbnQgcGFzIGJlc29pbiBkZSBjZXR0ZSBvcHRpb24uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo4NAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1hcy1yb290PiIKK21zZ3N0ciAiQjwtLWFzLXJvb3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjg4Cittc2dpZCAiIgorIk9ubHkgbWVhbmluZ2Z1bCB0b2dldGhlciB3aXRoIEI8LS10YXJnZXQ+LiBSZXF1aXJlcyB0aGF0IHRoZSB0YXJnZXQgYmUgcnVuICIKKyJ3aXRoIHJvb3QgcmlnaHRzLiIKK21zZ3N0ciAiIgorIk4nZXN0IHV0aWxlIHF1J2F2ZWMgQjwtLXRhcmdldD4uIEltcG9zZSBkJ2V4w6ljdXRlciBsYSBjaWJsZSBhdmVjIGxlcyAiCisicHJpdmlsw6hnZXMgZHUgc3VwZXJ1dGlsaXNhdGV1ci4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjkwIGRwa2ctZ2VuY2hhbmdlcy4xOjM2CisjLCBuby13cmFwCittc2dpZCAiQjwtc2k+IgorbXNnc3RyICJCPC1zaT4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjkyIGRwa2ctZ2VuY2hhbmdlcy4xOjQyCisjLCBuby13cmFwCittc2dpZCAiQjwtc2E+IgorbXNnc3RyICJCPC1zYT4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjk0IGRwa2ctZ2VuY2hhbmdlcy4xOjQ1CisjLCBuby13cmFwCittc2dpZCAiQjwtc2Q+IgorbXNnc3RyICJCPC1zZD4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjk2IGRwa2ctZ2VuY2hhbmdlcy4xOjQ5IGRwa2ctZ2VuY29udHJvbC4xOjM4CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozNzcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC12Pkk8dmVyc2lvbj4iCittc2dzdHIgIkI8LXY+STx2ZXJzaW9uPiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6OTggZHBrZy1nZW5jaGFuZ2VzLjE6NTQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1DPkk8Y2hhbmdlc2Rlc2NyaXB0aW9uPiIKK21zZ3N0ciAiQjwtQz5JPGRlc2NyaXB0aW9uLWRlcy1jaGFuZ2VtZW50cz4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEwMCBkcGtnLWdlbmNoYW5nZXMuMTo2MAorIywgbm8td3JhcAorbXNnaWQgIkI8LW0+STxtYWludGFpbmVyYWRkcmVzcz4iCittc2dzdHIgIkI8LW0+STxhZHJlc3NlLWR1LXJlc3BvbnNhYmxlPiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTAyIGRwa2ctZ2VuY2hhbmdlcy4xOjY2CisjLCBuby13cmFwCittc2dpZCAiQjwtZT5JPG1haW50YWluZXJhZGRyZXNzPiIKK21zZ3N0ciAiQjwtZT5JPGFkcmVzc2UtZHUtcmVzcG9uc2FibGU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEwNAorbXNnaWQgIlBhc3NlZCB1bmNoYW5nZWQgdG8gQjxkcGtnLWdlbmNoYW5nZXM+LiBTZWUgaXRzIG1hbnVhbCBwYWdlLiIKK21zZ3N0ciAiUGFzc8OpIHRlbCBxdWVsIMOgIEI8ZHBrZy1nZW5jaGFuZ2VzPi4gVm9pciBzYSBwYWdlIGRlIG1hbnVlbC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEwNQorIywgbm8td3JhcAorbXNnaWQgIkI8LWE+STxhcmNoaXRlY3R1cmU+IgorbXNnc3RyICJCPC1hPkk8YXJjaGl0ZWN0dXJlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxMTAKK21zZ2lkICIiCisiU3BlY2lmeSB0aGUgRGViaWFuIGFyY2hpdGVjdHVyZSB3ZSBidWlsZCBmb3IuIFRoZSBhcmNoaXRlY3R1cmUgb2YgdGhlICIKKyJtYWNoaW5lIHdlIGJ1aWxkIG9uIGlzIGRldGVybWluZWQgYXV0b21hdGljYWxseSwgYW5kIGlzIGFsc28gdGhlIGRlZmF1bHQgZm9yICIKKyJ0aGUgaG9zdCBtYWNoaW5lLiIKK21zZ3N0ciAiIgorIlByw6ljaXNlIGwnYXJjaGl0ZWN0dXJlIERlYmlhbiBwb3VyIGxhcXVlbGxlIG9uIGNvbnN0cnVpdC4gTCdhcmNoaXRlY3R1cmUgZGUgIgorImxhIG1hY2hpbmUgc3VyIGxhcXVlbGxlIG9uIGNvbnN0cnVpdCBlc3QgYXV0b21hdGlxdWVtZW50IGTDqXRlcm1pbsOpZcKgOyBjJ2VzdCAiCisiYXVzc2kgbCdhcmNoaXRlY3R1cmUgcGFyIGTDqWZhdXQgZGUgbGEgbWFjaGluZSBow7R0ZS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTE1Cittc2dpZCAiIgorIlNwZWNpZnkgdGhlIEdOVSBzeXN0ZW0gdHlwZSB3ZSBidWlsZCBmb3IuIEl0IGNhbiBiZSB1c2VkIGluIHBsYWNlIG9mIC1hIG9yICIKKyJhcyBhIGNvbXBsZW1lbnQgdG8gb3ZlcnJpZGUgdGhlIGRlZmF1bHQgR05VIHN5c3RlbSB0eXBlIG9mIHRoZSB0YXJnZXQgRGViaWFuICIKKyJhcmNoaXRlY3R1cmUuIgorbXNnc3RyICIiCisiUHLDqWNpc2UgbGUgdHlwZSBkZSBzeXN0w6htZSBHTlUgcG91ciBsZXF1ZWwgY29uc3RydWlyZS4gSWwgcGV1dCDDqnRyZSB1dGlsaXPDqSAiCisiw6AgbGEgcGxhY2UgZGUgQjwtYT4gb3UgZW4gdGFudCBxdWUgY29tcGzDqW1lbnQgYWZpbiBkZSByZW1wbGFjZXIgbGUgdHlwZSBkZSAiCisic3lzdMOobWUgR05VIHBhciBkw6lmYXV0IGRlIGwnYXJjaGl0ZWN0dXJlIERlYmlhbiBjaWJsZS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjExNQorIywgbm8td3JhcAorbXNnaWQgIkI8LWo+STxqb2JzPiIKK21zZ3N0ciAiQjwtaj5JPGpvYnM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEyNgorbXNnaWQgIiIKKyJOdW1iZXIgb2Ygam9icyBhbGxvd2VkIHRvIGJlIHJ1biBzaW11bHRhbmVvdXNseSwgZXF1aXZhbGVudCB0byB0aGUgQjxtYWtlPiIKKyIoMSkgIG9wdGlvbiBvZiB0aGUgc2FtZSBuYW1lLiBXaWxsIGFkZCBpdHNlbGYgdG8gdGhlIE1BS0VGTEFHUyBlbnZpcm9ubWVudCAiCisidmFyaWFibGUsIHdoaWNoIHNob3VsZCBjYXVzZSBhbGwgc3Vic2VxdWVudCBtYWtlIGludm9jYXRpb25zIHRvIGluaGVyaXQgdGhlICIKKyJvcHRpb24uIEFsc28gYWRkcyBCPHBhcmFsbGVsPT5JPGpvYnM+IHRvIHRoZSBERUJfQlVJTERfT1BUSU9OUyBlbnZpcm9ubWVudCAiCisidmFyaWFibGUgd2hpY2ggYWxsb3dzIGRlYmlhbi9ydWxlcyBmaWxlcyB0byB1c2UgdGhpcyBpbmZvcm1hdGlvbiBmb3IgdGhlaXIgIgorIm93biBwdXJwb3Nlcy4gIFRoZSBCPHBhcmFsbGVsPT5JPGpvYnM+IGluIERFQl9CVUlMRF9PUFRJT05TIGVudmlyb25tZW50ICIKKyJ2YXJpYWJsZSB3aWxsIG92ZXJyaWRlIHRoZSBCPC1qPiB2YWx1ZSBpZiB0aGlzIG9wdGlvbiBpcyBnaXZlbi4iCittc2dzdHIgIiIKKyJOb21icmUgZGUgcHJvY2Vzc3VzIHNpbXVsdGFuw6lzIHF1aSBwZXV2ZW50IMOqdHJlIGV4w6ljdXTDqXMsIMOpcXVpdmFsZW50IMOgICIKKyJsJ29wdGlvbiBCPG1ha2U+KDEpIGR1IG3Dqm1lIG5vbS4gUydham91dGVyYSB0b3V0IHNldWwgw6AgbGEgdmFyaWFibGUgIgorImQnZW52aXJvbm5lbWVudCBNQUtFRkxBR1MsIGFmaW4gcXVlIGxlcyBhcHBlbHMgc3VpdmFudHMgZGUgbWFrZSBlbiBow6lyaXRlbnQuICIKKyJBam91dGUgYXVzc2kgQjxwYXJhbGxlbD0+STxqb2JzPiDDoCBsYSB2YXJpYWJsZSBkJ2Vudmlyb25uZW1lbnQgIgorIkRFQl9CVUlMRF9PUFRJT05TIGNlIHF1aSBwZXJtZXQgYXV4IGZpY2hpZXJzIGRlYmlhbi9ydWxlcyBkJ3V0aWxpc2VyIGNldHRlICIKKyJpbmZvcm1hdGlvbiBwb3VyIGxldXJzIHByb3ByZXMgYmVzb2lucy4gTGEgcHLDqXNlbmNlIGRlIEI8cGFyYWxsZWw9Pkk8am9icz4gIgorImRhbnMgbGEgdmFyaWFibGUgZCdlbnZpcm9ubmVtZW50IERFQl9CVUlMRF9PUFRJT05TIHJlbXBsYWNlIGxhIHZhbGV1ciBkZSAiCisibCdvcHRpb24gQjwtaj4gc2kgZWxsZSBlc3QgcHLDqWNpc8OpZS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEyNgorIywgbm8td3JhcAorbXNnaWQgIkI8LUQ+IgorbXNnc3RyICJCPC1EPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxMzAKK21zZ2lkICIiCisiQ2hlY2sgYnVpbGQgZGVwZW5kZW5jaWVzIGFuZCBjb25mbGljdHM7IGFib3J0IGlmIHVuc2F0aXNmaWVkLiBUaGlzIGlzIHRoZSAiCisiZGVmYXVsdCBiZWhhdmlvci4iCittc2dzdHIgIiIKKyJWw6lyaWZpZXIgbGVzIGTDqXBlbmRhbmNlcyBkZSBjb25zdHJ1Y3Rpb25zIGV0IGxlcyBjb25mbGl0c8KgOyBzZSB0ZXJtaW5lIGVuICIKKyJjYXMgZGUgcHJvYmzDqG1lcy4gQ2VjaSBlc3QgbGUgY29tcG9ydGVtZW50IHBhciBkw6lmYXV0LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTMwIGRwa2ctZ2Vuc3ltYm9scy4xOjQzMgorIywgbm8td3JhcAorbXNnaWQgIkI8LWQ+IgorbXNnc3RyICJCPC1kPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxMzMKK21zZ2lkICJEbyBub3QgY2hlY2sgYnVpbGQgZGVwZW5kZW5jaWVzIGFuZCBjb25mbGljdHMuIgorbXNnc3RyICJOZSBwYXMgdsOpcmlmaWVyIGxlcyBkw6lwZW5kYW5jZXMgZGUgY29uc3RydWN0aW9ucyBldCBsZXMgY29uZmxpdHMuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxMzMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1uYz4iCittc2dzdHIgIkI8LW5jPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxMzcKK21zZ2lkICIiCisiRG8gbm90IGNsZWFuIHRoZSBzb3VyY2UgdHJlZSAoaW1wbGllcyBCPC1iPiBpZiBub3RoaW5nIGVsc2UgaGFzIGJlZW4gIgorInNlbGVjdGVkIGFtb25nIEI8LUI+LCBCPC1BPiBvciBCPC1TPikuIgorbXNnc3RyICIiCisiTmUgcGFzIG5ldHRveWVyIGwnYXJib3Jlc2NlbmNlIGRlcyBzb3VyY2VzIChpbXBsaXF1ZSBCPC1iPiBzaSBhdWN1bmUgZGVzICIKKyJvcHRpb25zIEI8LUI+LCBCPC1BPiBvdSBCPC1TPiBuJ2VzdCB1dGlsaXPDqWUpLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTM3CisjLCBuby13cmFwCittc2dpZCAiQjwtdGM+IgorbXNnc3RyICJCPC10Yz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTQzCittc2dpZCAiIgorIkNsZWFuIHRoZSBzb3VyY2UgdHJlZSAodXNpbmcgSTxnYWluLXJvb3QtY29tbWFuZD4gQjxkZWJpYW4vcnVsZXMgY2xlYW4+KSAgIgorImFmdGVyIHRoZSBwYWNrYWdlIGhhcyBiZWVuIGJ1aWx0LiIKK21zZ3N0ciAiIgorIk5ldHRveWFnZSBkZSBsJ2FyYm9yZXNjZW5jZSAoZW4gdXRpbGlzYW50IEk8Y29tbWFuZGUtcG91ci1vYnRlbmlyLXByaXZpbMOoZ2VzLSIKKyJkZS1yb290PiBCPGRlYmlhbi9ydWxlcyBjbGVhbj4pICBhcHLDqHMgbGEgY29uc3RydWN0aW9uIGR1IHBhcXVldC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE0MworIywgbm8td3JhcAorbXNnaWQgIkI8LXI+STxnYWluLXJvb3QtY29tbWFuZD4iCittc2dzdHIgIkI8LXI+STxjb21tYW5kZS1wb3VyLW9idGVuaXItcHJpdmlsw6hnZXMtZGUtcm9vdD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTY3Cittc2dpZCAiIgorIldoZW4gQjxkcGtnLWJ1aWxkcGFja2FnZT4gbmVlZHMgdG8gZXhlY3V0ZSBwYXJ0IG9mIHRoZSBidWlsZCBwcm9jZXNzIGFzICIKKyJyb290LCBpdCBwcmVmaXhlcyB0aGUgY29tbWFuZCBpdCBleGVjdXRlcyB3aXRoIEk8Z2Fpbi1yb290LWNvbW1hbmQ+IGlmIG9uZSAiCisiaGFzIGJlZW4gc3BlY2lmaWVkLiBPdGhlcndpc2UsIGlmIG5vbmUgaGFzIGJlZW4gc3BlY2lmaWVkLCBCPGZha2Vyb290PiB3aWxsICIKKyJiZSB1c2VkIGJ5IGRlZmF1bHQsIGlmIHRoZSBjb21tYW5kIGlzIHByZXNlbnQuICBJPGdhaW4tcm9vdC1jb21tYW5kPiBzaG91bGQgIgorInN0YXJ0IHdpdGggdGhlIG5hbWUgb2YgYSBwcm9ncmFtIG9uIHRoZSBCPFBBVEg+IGFuZCB3aWxsIGdldCBhcyBhcmd1bWVudHMgIgorInRoZSBuYW1lIG9mIHRoZSByZWFsIGNvbW1hbmQgdG8gcnVuIGFuZCB0aGUgYXJndW1lbnRzIGl0IHNob3VsZCB0YWtlLiAgIgorIkk8Z2Fpbi1yb290LWNvbW1hbmQ+IGNhbiBpbmNsdWRlIHBhcmFtZXRlcnMgKHRoZXkgbXVzdCBiZSBzcGFjZS1zZXBhcmF0ZWQpICIKKyJidXQgbm8gc2hlbGwgbWV0YWNoYXJhY3RlcnMuICBJPGdhaW4tcm9vdC1jb21tYW5kPiBtaWdodCB0eXBpY2FsbHkgYmUgIgorIkI8ZmFrZXJvb3Q+LCBCPHN1ZG8+LCBCPHN1cGVyPiBvciBCPHJlYWxseT4uICBCPHN1PiBpcyBub3Qgc3VpdGFibGUsIHNpbmNlICIKKyJpdCBjYW4gb25seSBpbnZva2UgdGhlIHVzZXIncyBzaGVsbCB3aXRoIEI8LWM+IGluc3RlYWQgb2YgcGFzc2luZyBhcmd1bWVudHMgIgorImluZGl2aWR1YWxseSB0byB0aGUgY29tbWFuZCB0byBiZSBydW4uIgorbXNnc3RyICIiCisiUXVhbmQgQjxkcGtnLWJ1aWxkcGFja2FnZT4gZG9pdCBleMOpY3V0ZXIgdW5lIHBhcnRpZSBkdSBwcm9jZXNzdXMgZGUgIgorImNvbnN0cnVjdGlvbiBlbiB0YW50IHF1ZSByb290LCBpbCBwcsOpZml4ZSBsYSBjb21tYW5kZSBleMOpY3V0w6llIHBhciAiCisiSTxjb21tYW5kZS1wb3VyLW9idGVuaXItcHJpdmlsw6hnZXMtZGUtcm9vdD4sIHNpIHVuZSBhIMOpdMOpIHNww6ljaWZpw6kuIFNpIGNlICIKKyJuJ2VzdCBwYXMgbGUgY2FzIGFsb3JzIEI8ZmFrZXJvb3Q+IGVzdCB1dGlsaXPDqSBwYXIgZMOpZmF1dC4gSTxjb21tYW5kZS1wb3VyLSIKKyJvYnRlbmlyLXByaXZpbMOoZ2VzLWRlLXJvb3Q+IGRvaXQgZMOpYnV0ZXIgcGFyIGxlIG5vbSBkJ3VuIHByb2dyYW1tZSAiCisiYWNjZXNzaWJsZSBkZXB1aXMgQjxQQVRIPiBldCBhdm9pciBjb21tZSBhcmd1bWVudHMgbGUgbm9tIGRlIGxhIGNvbW1hbmRlICIKKyJyw6llbGxlIGF2ZWMgbGVzIGFyZ3VtZW50cyBxdSdlbGxlIGRvaXQgcHJlbmRyZS4gSTxjb21tYW5kZS1wb3VyLW9idGVuaXItIgorInByaXZpbMOoZ2VzLWRlLXJvb3Q+IHBldXQgcmVjZXZvaXIgZGVzIHBhcmFtw6h0cmVzIChpbHMgZG9pdmVudCDDqnRyZSBzw6lwYXLDqXMgIgorInBhciBkZXMgZXNwYWNlcykgbWFpcyBhdWN1biDCq8KgbcOpdGFjYXJhY3TDqHJlwqDCuyBkZSBsJ2ludGVycHLDqXRldXIgZGUgIgorImNvbW1hbmRlcy4gQ2xhc3NpcXVlbWVudCBJPGNvbW1hbmRlLXBvdXItb2J0ZW5pci1wcml2aWzDqGdlcy1kZS1yb290PiBkZXZyYWl0ICIKKyLDqnRyZSBCPGZha2Vyb290PiwgQjxzdWRvPiwgQjxzdXBlcj4gb3UgQjxyZWFsbHk+LiBCPHN1PiBuZSB2YSBwYXMsIHB1aXNxdWUgIgorImNlIHByb2dyYW1tZSBwZXV0IHVuaXF1ZW1lbnQgdXRpbGlzZXIgbCdpbnRlcnByw6l0ZXVyIGRlIGNvbW1hbmRlcyBkZSAiCisibCd1dGlsaXNhdGV1ciBhdmVjIGwnb3B0aW9uIEI8LWM+IGF1IGxpZXUgZGUgcGFzc2VyIGRpcmVjdGVtZW50IGxlcyAiCisiYXJndW1lbnRzIMOgIGxhIGNvbW1hbmRlIHF1aSBkb2l0IMOqdHJlIGV4w6ljdXTDqWUuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxNjcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1SPkk8cnVsZXMtZmlsZT4iCittc2dzdHIgIkI8LVI+STxmaWNoaWVyLXJ1bGVzPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxNzgKK21zZ2lkICIiCisiQnVpbGRpbmcgYSBEZWJpYW4gcGFja2FnZSB1c3VhbGx5IGludm9sdmVzIGludm9raW5nIEI8ZGViaWFuL3J1bGVzPiBhcyBhICIKKyJjb21tYW5kIHdpdGggc2V2ZXJhbCBzdGFuZGFyZCBwYXJhbWV0ZXJzLiBXaXRoIHRoaXMgb3B0aW9uIGl0J3MgcG9zc2libGUgdG8gIgorInVzZSBhbm90aGVyIHByb2dyYW0gaW52b2NhdGlvbiB0byBidWlsZCB0aGUgcGFja2FnZSAoaXQgY2FuIGluY2x1ZGUgc3BhY2UgIgorInNlcGFyYXRlZCBwYXJhbWV0ZXJzKS4gIEFsdGVybmF0aXZlbHkgaXQgY2FuIGJlIHVzZWQgdG8gZXhlY3V0ZSB0aGUgc3RhbmRhcmQgIgorInJ1bGVzIGZpbGUgd2l0aCBhbm90aGVyIG1ha2UgcHJvZ3JhbSAoZm9yIGV4YW1wbGUgYnkgdXNpbmcgQjwvdXNyL2xvY2FsL2Jpbi8iCisibWFrZSAtZiBkZWJpYW4vcnVsZXM+IGFzIEk8cnVsZXMtZmlsZT4pLiIKK21zZ3N0ciAiIgorIkNvbnN0cnVpcmUgdW4gcGFxdWV0IERlYmlhbiBpbXBsaXF1ZSBnw6luw6lyYWxlbWVudCBsJ2ludm9jYXRpb24gZGUgQjxkZWJpYW4vIgorInJ1bGVzPiBjb21tZSB1bmUgY29tbWFuZGUgYXZlYyBkZSBub21icmV1eCBwYXJhbcOodHJlcyBzdGFuZGFyZHMuIEF2ZWMgY2V0dGUgIgorIm9wdGlvbiwgaWwgZXN0IHBvc3NpYmxlIGQndXRpbGlzZXIgdW4gYXV0cmUgcHJvZ3JhbW1lIMOgIHV0aWxpc2VyIHBvdXIgbGEgIgorImNvbnN0cnVjdGlvbiBkZSBwYXF1ZXQgKGFpbnNpIHF1ZSBzZXMgcGFyYW3DqHRyZXMgc8OpcGFyw6lzIHBhciBkZXMgZXNwYWNlcykuICIKKyJVbmUgYXV0cmUgdXRpbGlzYXRpb24gcG9zc2libGUgZXN0IGQnZXjDqWN1dGVyIGxlIGZpY2hpZXIgcnVsZXMgc3RhbmRhcmQgYXZlYyAiCisidW4gYXV0cmUgcHJvZ3JhbW1lIGRlIGNvbnN0cnVjdGlvbiAocGFyIGV4ZW1wbGUgZW4gdXRpbGlzYW50IEI8L3Vzci9sb2NhbC8iCisiYmluL21ha2UgLWYgZGViaWFuL3J1bGVzPiBjb21tZSBJPGZpY2hpZXItcnVsZXM+KS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE3OAorIywgbm8td3JhcAorbXNnaWQgIkI8LXA+STxzaWduLWNvbW1hbmQ+IgorbXNnc3RyICJCPC1wPkk8Y29tbWFuZGUtZGUtc2lnbmF0dXJlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxODgKK21zZ2lkICIiCisiV2hlbiBCPGRwa2ctYnVpbGRwYWNrYWdlPiBuZWVkcyB0byBleGVjdXRlIEdQRyBvciBQR1AgdG8gc2lnbiBhIHNvdXJjZSAiCisiY29udHJvbCAoQjwuZHNjPikgZmlsZSBvciBhIEI8LmNoYW5nZXM+IGZpbGUgaXQgd2lsbCBydW4gSTxzaWduLWNvbW1hbmQ+ICIKKyIoc2VhcmNoaW5nIHRoZSBCPFBBVEg+IGlmIG5lY2Vzc2FyeSkgaW5zdGVhZCBvZiBCPGdwZz4uIEk8c2lnbi1jb21tYW5kPiB3aWxsICIKKyJnZXQgYWxsIHRoZSBhcmd1bWVudHMgdGhhdCBCPHBncD4gd291bGQgaGF2ZSBnb3R0ZW4uIElmIEk8c2lnbi1jb21tYW5kPiAiCisidGFrZXMgaXRzIGFyZ3VtZW50cyBpbiBHUEcgcmF0aGVyIHRoYW4gUEdQIHN0eWxlLCB5b3Ugc2hvdWxkIGdpdmUgdGhlIEI8LSIKKyJzZ3BnPiBvcHRpb24uIEk8c2lnbi1jb21tYW5kPiBzaG91bGQgbm90IGNvbnRhaW4gc3BhY2VzIG9yIGFueSBvdGhlciBzaGVsbCAiCisibWV0YWNoYXJhY3RlcnMuIgorbXNnc3RyICIiCisiUXVhbmQgQjxkcGtnLWJ1aWxkcGFja2FnZT4gZG9pdCBleMOpY3V0ZXIgR1BHIG91IFBHUCBwb3VyIHNpZ25lciB1biBmaWNoaWVyICIKKyJzb3VyY2UgZGUgY29udHLDtGxlIChCPC5kc2M+KSBvdSB1biBmaWNoaWVyIEI8LmNoYW5nZXM+LCBpbCBleMOpY3V0ZSAiCisiSTxjb21tYW5kZS1kZS1zaWduYXR1cmU+IChyZWNoZXJjaMOpIHZpYSBCPFBBVEg+IHNpIG7DqWNlc3NhaXJlKSBhdSBsaWV1IGRlICIKKyJCPHBncD4uIEk8Y29tbWFuZGUtZGUtc2lnbmF0dXJlPiByZcOnb2l0IHRvdXMgbGVzIHBhcmFtw6h0cmVzIHF1J2F1cmFpdCAiCisicmXDp3VCPHBncD4uIFNpIEk8Y29tbWFuZGUtZGUtc2lnbmF0dXJlPiB2ZXV0IHJlY2V2b2lyIHNlcyBwYXJhbcOodHJlcyDDoCBsYSAiCisibWFuacOocmUgZGUgR1BHIHBsdXTDtHQgcXUnw6AgbGEgbWFuacOocmUgZGUgUEdQLCBpbCBmYXV0IHV0aWxpc2VyIGwnb3B0aW9uIEI8LSIKKyJzZ3BnPi4gSTxjb21tYW5kZS1kZS1zaWduYXR1cmU+IG5lIGNvbnRpZW5kcmEgcGFzIGQnZXNwYWNlIG5pIGF1Y3VuICIKKyLCq8KgbcOpdGFjYXJhY3TDqHJlwqDCuyBkZSBsJ2ludGVycHLDqXRldXIgZGUgY29tbWFuZGVzLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTg4CisjLCBuby13cmFwCittc2dpZCAiQjwtaz5JPGtleS1pZD4iCittc2dzdHIgIkI8LWs+STxrZXktaWQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE5MQorbXNnaWQgIlNwZWNpZnkgYSBrZXktSUQgdG8gdXNlIHdoZW4gc2lnbmluZyBwYWNrYWdlcy4iCittc2dzdHIgIlByw6ljaXNlIHVuZSBjbMOpIHBvdXIgbGEgc2lnbmF0dXJlIGRlcyBwYXF1ZXRzLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTkxCisjLCBuby13cmFwCittc2dpZCAiQjwtdXM+IgorbXNnc3RyICJCPC11cz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTk0Cittc2dpZCAiRG8gbm90IHNpZ24gdGhlIHNvdXJjZSBwYWNrYWdlLiIKK21zZ3N0ciAiTmUgcGFzIHNpZ25lciBsZSBwYXF1ZXQgc291cmNlLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTk0CisjLCBuby13cmFwCittc2dpZCAiQjwtdWM+IgorbXNnc3RyICJCPC11Yz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTk3Cittc2dpZCAiRG8gbm90IHNpZ24gdGhlIEI8LmNoYW5nZXM+IGZpbGUuIgorbXNnc3RyICJOZSBwYXMgc2lnbmVyIGxlIGZpY2hpZXIgQjwuY2hhbmdlcz4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE5OQorbXNnaWQgIkI8LWk+W0k8cmVnZXhwPl0iCittc2dzdHIgIkI8LWk+W0k8cmVnZXhwPl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjAxCittc2dpZCAiQjwtST5JPFtwYXR0ZXJuXT4iCittc2dzdHIgIkI8LUk+STxbbW90aWZdPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMDMKK21zZ2lkICJCPC1zPltCPG5zQWt1cktVUj5dIgorbXNnc3RyICJCPC1zPltCPG5zQWt1cktVUj5dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIwNQorbXNnaWQgIkI8LXo+LCBCPC1aPiIKK21zZ3N0ciAiQjwtej4sIEI8LVo+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIwOAorbXNnaWQgIlBhc3NlZCB1bmNoYW5nZWQgdG8gQjxkcGtnLXNvdXJjZT4uIFNlZSBpdHMgbWFudWFsIHBhZ2UuIgorbXNnc3RyICIiCisiQ2hhw65uZSBwYXNzw6llIHRlbGxlIHF1ZWxsZSDDoCBCPGRwa2ctc291cmNlPi4gVm9pciBsYSBwYWdlIGRlIG1hbnVlbCAiCisiY29ycmVzcG9uZGFudGUuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMDkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tc291cmNlLW9wdGlvbj0+STxvcHQ+IgorbXNnc3RyICJCPC0tc291cmNlLW9wdGlvbj0+STxvcHQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIxMgorbXNnaWQgIlBhc3Mgb3B0aW9uIEk8b3B0PiB0byBCPGRwa2ctc291cmNlPi4iCittc2dzdHIgIlBhc3NlIGwnb3B0aW9uIEk8b3B0PiDDoCBCPGRwa2ctc291cmNlPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIxMgorIywgbm8td3JhcAorbXNnaWQgIkI8LS1jaGFuZ2VzLW9wdGlvbj0+STxvcHQ+IgorbXNnc3RyICJCPC0tY2hhbmdlcy1vcHRpb249Pkk8b3B0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMTUKK21zZ2lkICJQYXNzIG9wdGlvbiBJPG9wdD4gdG8gQjxkcGtnLWdlbmNoYW5nZXM+LiIKK21zZ3N0ciAiUGFzc2UgbCdvcHRpb24gSTxvcHQ+IMOgIEI8ZHBrZy1nZW5jaGFuZ2VzPi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjE5Cittc2dpZCAiQjwtLWFkbWluZGlyID5JPGRpcj4iCittc2dzdHIgIkI8LS1hZG1pbmRpciA+STxyw6lwPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMjIgZHBrZy1jaGVja2J1aWxkZGVwcy4xOjIzIGRwa2ctcXVlcnkuMToxMjIKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjE1IGRwa2ctdHJpZ2dlci4xOjQzCittc2dpZCAiIgorIkNoYW5nZSB0aGUgbG9jYXRpb24gb2YgdGhlIEI8ZHBrZz4gZGF0YWJhc2UuIFRoZSBkZWZhdWx0IGxvY2F0aW9uIGlzIEk8L3Zhci8iCisibGliL2Rwa2c+LiIKK21zZ3N0ciAiIgorIkNoYW5nZSBsJ2VuZHJvaXQgb8O5IHNlIHRyb3V2ZSBsYSBiYXNlIGRlIGRvbm7DqWVzIGRlIEI8ZHBrZz4uIFBhciBkw6lmYXV0LCAiCisiYydlc3QgSTwvdmFyL2xpYi9kcGtnPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIyMyBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6MzMgZHBrZy1kaXN0YWRkZmlsZS4xOjMyCisjOiBkcGtnLWRlYi4xOjE3MiBkcGtnLWdlbmNoYW5nZXMuMToxMzEgZHBrZy1nZW5jb250cm9sLjE6MTIxCisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0NDMgZHBrZy1uYW1lLjE6NTggZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjMzCisjOiBkcGtnLXF1ZXJ5LjE6MTEwIGRwa2ctc2NhbnBhY2thZ2VzLjE6OTYgZHBrZy1zaGxpYmRlcHMuMToyMTUKKyM6IGRwa2ctc291cmNlLjE6OTYgZHBrZy1zcGxpdC4xOjEyNiBkcGtnLXRyaWdnZXIuMTozMQorIywgbm8td3JhcAorbXNnaWQgIkI8LWg+LCBCPC0taGVscD4iCittc2dzdHIgIkI8LWg+LCBCPC0taGVscD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjM0CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJFdmVuIGlmIEI8ZHBrZy1idWlsZHBhY2thZ2U+IGV4cG9ydCBzb21lIHZhcmlhYmxlcywgQjxkZWJpYW4vcnVsZXM+ICIKKyN8ICJzaG91bGQgbm90IHJlbHkgb24gdGhlaXIgcHJlc2VuY2UgYW5kIHNob3VsZCBpbnN0ZWFkIHVzZSB0aGUgcmVzcGVjdGl2ZSAiCisjfCAiaW50ZXJmYWNlIHRvIHJldHJpZXZlIHRoZSBuZWVkZWQgdmFsdWVzLiIKK21zZ2lkICIiCisiRXZlbiBpZiBCPGRwa2ctYnVpbGRwYWNrYWdlPiBleHBvcnRzIHNvbWUgdmFyaWFibGVzLCBCPGRlYmlhbi9ydWxlcz4gc2hvdWxkICIKKyJub3QgcmVseSBvbiB0aGVpciBwcmVzZW5jZSBhbmQgc2hvdWxkIGluc3RlYWQgdXNlIHRoZSByZXNwZWN0aXZlIGludGVyZmFjZSAiCisidG8gcmV0cmlldmUgdGhlIG5lZWRlZCB2YWx1ZXMuIgorbXNnc3RyICIiCisiTcOqbWUgc2kgQjxkcGtnLWJ1aWxkcGFja2FnZT4gZXhwb3J0ZSBjZXJ0YWluZXMgdmFyaWFibGVzLCBCPGRlYmlhbi9ydWxlcz4gbmUgIgorImRvaXQgcGFzIGTDqXBlbmRyZSBkZSBsZXVyIHByw6lzZW5jZSwgbWFpcyBkb2l0IHByw6lmw6lyYWJsZW1lbnQgdXRpbGlzZXIgIgorImwnaW50ZXJmYWNlIGNvcnJlc3BvbmRhbnRlIHBvdXIgcmV0cm91dmVyIGxlcyB2YWxldXJzIG7DqWNlc3NhaXJlcy4iCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIzNAorIywgbm8td3JhcAorbXNnaWQgIlZhcmlhYmxlcyBzZXQgYnkgZHBrZy1hcmNoaXRlY3R1cmUiCittc2dzdHIgIlZhcmlhYmxlcyBwb3NpdGlvbm7DqWVzIHBhciBCPGRwa2ctYXJjaGl0ZWN0dXJlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMzgKK21zZ2lkICIiCisiQjxkcGtnLWFyY2hpdGVjdHVyZT4gaXMgY2FsbGVkIHdpdGggdGhlIEI8LWE+IGFuZCBCPC10PiBwYXJhbWV0ZXJzICIKKyJmb3J3YXJkZWQuIEFueSB2YXJpYWJsZSB0aGF0IGlzIG91dHB1dCBieSBpdHMgQjwtcz4gb3B0aW9uIGlzIGludGVncmF0ZWQgaW4gIgorInRoZSBidWlsZCBlbnZpcm9ubWVudC4iCittc2dzdHIgIiIKKyJCPGRwa2ctYXJjaGl0ZWN0dXJlPiBlc3QgbGFuY8OpIGF2ZWMgbGVzIHBhcmFtw6h0cmVzIGRlIEI8LWE+IGFuZCBCPC10Pi4gVG91dGUgIgorInZhcmlhYmxlIHJldG91cm7DqWUgcGFyIGwnb3B0aW9uIEI8LXM+IGVzdCBpbnTDqWdyw6llIGRhbnMgbCdlbnZpcm9ubmVtZW50IGRlICIKKyJjb25zdHJ1Y3Rpb24uIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMzgKKyMsIG5vLXdyYXAKK21zZ2lkICJDb21waWxlciBmbGFncyBhcmUgbm8gbG9uZ2VyIGV4cG9ydGVkIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjQzCittc2dpZCAiIgorIkJldHdlZW4gdmVyc2lvbnMgMS4xNC4xNyBhbmQgMS4xNi4xLCBCPGRwa2ctYnVpbGRwYWNrYWdlPiBleHBvcnRlZCBjb21waWxlciAiCisiZmxhZ3MgKEI8Q0ZMQUdTPiwgQjxDWFhGTEFHUz4sIEI8RkZMQUdTPiwgQjxDUFBGTEFHUz4gYW5kIEI8TERGTEFHUz4pIHdpdGggIgorInZhbHVlcyBhcyByZXR1cm5lZCBieSBCPGRwa2ctYnVpbGRmbGFncz4uIFRoaXMgaXMgbm8gbG9uZ2VyIHRoZSBjYXNlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjI0OAorbXNnaWQgIiIKKyJJdCBzaG91bGQgYmUgcG9zc2libGUgdG8gc3BlY2lmeSBzcGFjZXMgYW5kIHNoZWxsIG1ldGFjaGFyYWN0ZXJzIGluIGFuZCAiCisiaW5pdGlhbCBhcmd1bWVudHMgZm9yIEk8Z2Fpbi1yb290LWNvbW1hbmQ+IGFuZCBJPHNpZ24tY29tbWFuZD4uIgorbXNnc3RyICIiCisiT24gZGV2cmFpdCBwb3V2b2lyIG1ldHRyZSBkZXMgZXNwYWNlcyBldCBkZXMgbcOpdGFjYXJhY3TDqHJlcyBkdSBzaGVsbCBkYW5zICIKKyJsZXMgYXJndW1lbnRzIGluaXRpYXV4IGRlIEk8Y29tbWFuZGUtcG91ci1vYnRlbmlyLXByaXZpbMOoZ2VzLWRlLXJvb3Q+IGV0ICIKKyJJPGNvbW1hbmRlLWRlLXNpZ25hdHVyZT4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjI1NgorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiQjxkcGtnLXNvdXJjZT4oMSksIEI8ZHBrZy1hcmNoaXRlY3R1cmU+KDEpLCBCPGRwa2ctZ2VuY2hhbmdlcz4oMSksICIKKyN8ICJCPGZha2Vyb290PigxKSwgQjxncGc+KDEpLiIKK21zZ2lkICIiCisiQjxkcGtnLXNvdXJjZT4oMSksIEI8ZHBrZy1hcmNoaXRlY3R1cmU+KDEpLCBCPGRwa2ctYnVpbGRmbGFncz4oMSksIEI8ZHBrZy0iCisiZ2VuY2hhbmdlcz4oMSksIEI8ZmFrZXJvb3Q+KDEpLCBCPGdwZz4oMSkuIgorbXNnc3RyICIiCisiQjxkcGtnLXNvdXJjZT4oMSksIEI8ZHBrZy1hcmNoaXRlY3R1cmU+KDEpLCBCPGRwa2ctZ2VuY2hhbmdlcz4oMSksICIKKyJCPGZha2Vyb290PigxKSwgQjxncGc+KDEpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyNjUKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAwOC0yMDEwIFJhcGhhXFxbOmVdbCBIZXJ0em9nIgorbXNnc3RyICJDb3B5cmlnaHQgXFwoY28gMjAwOC0yMDEwIFJhcGhhXFxbOmVdbCBIZXJ0em9nIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1jaGVja2J1aWxkZGVwcy4xOjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLWNoZWNrYnVpbGRkZXBzIgorbXNnc3RyICJkcGtnLWNoZWNrYnVpbGRkZXBzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6NAorbXNnaWQgImRwa2ctY2hlY2tidWlsZGRlcHMgLSBjaGVjayBidWlsZCBkZXBlbmRlbmNpZXMgYW5kIGNvbmZsaWN0cyIKK21zZ3N0ciAiIgorImRwa2ctY2hlY2tidWlsZGRlcHMgLSB2w6lyaWZpZXIgbGVzIGTDqXBlbmRhbmNlcyBldCBsZXMgY29uZmxpdHMgZGUgIgorImNvbnN0cnVjdGlvbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1jaGVja2J1aWxkZGVwcy4xOjkKKyMsIGZ1enp5CisjfCBtc2dpZCAiQjxkcGtnLWNoZWNrYnVpbGRkZXBzPiBbSTxvcHRpb25zPl0gW0k8Y29udHJvbC1maWxlPl0iCittc2dpZCAiQjxkcGtnLWNoZWNrYnVpbGRkZXBzPiBbSTxvcHRpb24+Li4uXSBbSTxjb250cm9sLWZpbGU+XSIKK21zZ3N0ciAiQjxkcGtnLWNoZWNrYnVpbGRkZXBzPiBbSTxvcHRpb25zPl0gW0k8ZmljaGllci1jb250cm9sPl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctY2hlY2tidWlsZGRlcHMuMToxNAorbXNnaWQgIiIKKyJUaGlzIHByb2dyYW0gY2hlY2tzIHRoZSBpbnN0YWxsZWQgcGFja2FnZXMgaW4gdGhlIHN5c3RlbSBhZ2FpbnN0IHRoZSBidWlsZCAiCisiZGVwZW5kZW5jaWVzIGFuZCBidWlsZCBjb25mbGljdHMgbGlzdGVkIGluIHRoZSBjb250cm9sIGZpbGUuIElmIGFueSBhcmUgbm90ICIKKyJtZXQsIGl0IGRpc3BsYXlzIHRoZW0gYW5kIGV4aXRzIHdpdGggYSBub256ZXJvIHJldHVybiBjb2RlLiIKK21zZ3N0ciAiIgorIkNlIHByb2dyYW1tZSB2w6lyaWZpZSBzaSBsZXMgZMOpcGVuZGFuY2VzIGV0IGxlcyBjb25mbGl0cyBkZSBjb25zdHJ1Y3Rpb24gIgorImxpc3TDqXMgZGFucyBsZSBmaWNoaWVyIGNvbnRyb2wgZXhpc3RlbnQgZGFucyBsZXMgcGFxdWV0cyBpbnN0YWxsw6lzIHN1ciBsZSAiCisic3lzdMOobWUuIFMnaWwgZW4gZXhpc3RlLCBpbCBsZXMgYWZmaWNoZSBldCBzZSB0ZXJtaW5lIGF2ZWMgdW4gY29kZSBkZSByZXRvdXIgIgorImRpZmbDqXJlbnQgZGUgMC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctY2hlY2tidWlsZGRlcHMuMToxNworIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiQnkgZGVmYXVsdCwgSTxkZWJpYW4vY29udHJvbD4gaXMgcmVhZCwgYnV0IGFuIGFsdGVybmF0ZSBjb250cm9sIGZpbGVuYW1lICIKKyN8ICJtYXkgYmUgc3BlY2lmaWVkIG9uIHRoZSBjb21tYW5kIGxpbmUuIgorbXNnaWQgIiIKKyJCeSBkZWZhdWx0LCBCPGRlYmlhbi9jb250cm9sPiBpcyByZWFkLCBidXQgYW4gYWx0ZXJuYXRlIGNvbnRyb2wgZmlsZW5hbWUgbWF5ICIKKyJiZSBzcGVjaWZpZWQgb24gdGhlIGNvbW1hbmQgbGluZS4iCittc2dzdHIgIiIKKyJOb3JtYWxlbWVudCwgbGUgZmljaGllciBJPGRlYmlhbi9jb250cm9sPiBlc3QgbHUsIG1haXMgdW4gYXV0cmUgZmljaGllciBwZXV0ICIKKyLDqnRyZSBpbmRpcXXDqSBzdXIgbGEgbGlnbmUgZGUgY29tbWFuZGUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6MjcKK21zZ2lkICIiCisiSWdub3JlIEk8QnVpbGQtRGVwZW5kcy1JbmRlcD4gbGluZXMuIFVzZSB3aGVuIG5vIGFyY2gtaW5kZXAgcGFja2FnZXMgd2lsbCBiZSAiCisiYnVpbHQuIgorbXNnc3RyICIiCisiSWdub3JlIGxlcyBsaWduZXMgSTxCdWlsZC1EZXBlbmRzLUluZGVwPi4gw4AgdXRpbGlzZXIgbG9yc3F1ZSBhdWN1biBwYXF1ZXQgIgorImluZMOpcGVuZGFudCBkJ3VuZSBhcmNoaXRlY3R1cmUgbmUgdmEgw6p0cmUgY29uc3RydWl0LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctY2hlY2tidWlsZGRlcHMuMToyNworIywgbm8td3JhcAorbXNnaWQgIkI8LWQgPkk8YnVpbGQtZGVwZW5kcy1zdHJpbmc+IgorbXNnc3RyICJCPC1kID5JPGNoYWluZS1kZXMtZMOpcGVuZGFuY2VzLXBvdXItbGEtY29uc3RydWN0aW9uPiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctY2hlY2tidWlsZGRlcHMuMToyOQorIywgbm8td3JhcAorbXNnaWQgIkI8LWMgPkk8YnVpbGQtY29uZmxpY3RzLXN0cmluZz4iCittc2dzdHIgIkI8LWMgPkk8Y2hhw65uZS1kZXMtY29uZmxpdHMtZGUtY29uc3RydWN0aW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1jaGVja2J1aWxkZGVwcy4xOjMzCittc2dpZCAiIgorIlVzZSB0aGUgZ2l2ZW4gYnVpbGQgZGVwZW5kZW5jaWVzL2NvbmZsaWN0cyBpbnN0ZWFkIG9mIHRob3NlIGNvbnRhaW5lZCBpbiB0aGUgIgorIkk8ZGViaWFuL2NvbnRyb2w+IGZpbGUuIgorbXNnc3RyICIiCisiVXRpbGlzZSBsZXMgZMOpcGVuZGFuY2VzIGV0IGNvbmZsaXRzIGRlIGNvbnN0cnVjdGlvbiBkb25uw6lzIGF1IGxpZXUgZGUgY2V1eCAiCisiaW5kaXF1w6lzIGRhbnMgbGUgZmljaGllciBJPGRlYmlhbi9jb250cm9sPi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctY2hlY2tidWlsZGRlcHMuMTo0MgorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDAxIEpvZXkgSGVzcyIKK21zZ3N0ciAiQ29weXJpZ2h0IFxcKGNvIDIwMDEgSm9leSBIZXNzIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1kaXN0YWRkZmlsZS4xOjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLWRpc3RhZGRmaWxlIgorbXNnc3RyICJkcGtnLWRpc3RhZGRmaWxlIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpc3RhZGRmaWxlLjE6NAorbXNnaWQgImRwa2ctZGlzdGFkZGZpbGUgLSBhZGQgZW50cmllcyB0byBkZWJpYW4vZmlsZXMiCittc2dzdHIgImRwa2ctZGlzdGFkZGZpbGUgLSBBam91dGVyIHVuZSBlbnRyw6llIGF1IGZpY2hpZXIgZGViaWFuL2ZpbGVzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXN0YWRkZmlsZS4xOjgKKyMsIGZ1enp5CisjfCBtc2dpZCAiQjxkcGtnLWRpc3RhZGRmaWxlPiBbSTxvcHRpb25zPl1JPCBmaWxlbmFtZSBzZWN0aW9uIHByaW9yaXR5PiIKK21zZ2lkICJCPGRwa2ctZGlzdGFkZGZpbGU+IFtJPG9wdGlvbj4uLi5dSTwgZmlsZW5hbWUgc2VjdGlvbiBwcmlvcml0eT4iCittc2dzdHIgIkI8ZHBrZy1kaXN0YWRkZmlsZT4gW0k8b3B0aW9ucz5dSTwgZmljaGllciBzZWN0aW9uIHByaW9yaXTDqT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGlzdGFkZGZpbGUuMToxMworbXNnaWQgIkI8ZHBrZy1kaXN0YWRkZmlsZT4gYWRkcyBhbiBlbnRyeSBmb3IgYSBuYW1lZCBmaWxlIHRvIEI8ZGViaWFuL2ZpbGVzPi4iCittc2dzdHIgIiIKKyJCPGRwa2ctZGlzdGFkZGZpbGU+IGFqb3V0ZSB1bmUgZW50csOpZSBwb3VyIHVuIGZpY2hpZXIgZGFucyBCPGRlYmlhbi9maWxlcz4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpc3RhZGRmaWxlLjE6MTgKK21zZ2lkICIiCisiSXQgdGFrZXMgdGhyZWUgbm9uLW9wdGlvbiBhcmd1bWVudHMsIHRoZSBmaWxlbmFtZSBhbmQgdGhlIHNlY3Rpb24gYW5kICIKKyJwcmlvcml0eSBmb3IgdGhlIEI8LmNoYW5nZXM+IGZpbGUuIgorbXNnc3RyICIiCisiSWwgcHJlbmQgdHJvaXMgYXJndW1lbnRzIHNhbnMgb3B0aW9uLCDDoCBzYXZvaXIgbGUgbm9tIGR1IGZpY2hpZXIsIGxhIHNlY3Rpb24gIgorImV0IGxhIHByaW9yaXTDqSwgcG91ciBsZSBmaWNoaWVyIEI8LmNoYW5nZXM+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXN0YWRkZmlsZS4xOjI2Cittc2dpZCAiIgorIlRoZSBmaWxlbmFtZSBzaG91bGQgYmUgc3BlY2lmaWVkIHJlbGF0aXZlIHRvIHRoZSBkaXJlY3Rvcnkgd2hlcmUgQjxkcGtnLSIKKyJnZW5jaGFuZ2VzPiB3aWxsIGV4cGVjdCB0byBmaW5kIHRoZSBmaWxlcywgdXN1YWxseSBCPC4uPiwgcmF0aGVyIHRoYW4gYmVpbmcgIgorImEgcGF0aG5hbWUgcmVsYXRpdmUgdG8gdGhlIGN1cnJlbnQgZGlyZWN0b3J5IHdoZW4gQjxkcGtnLWRpc3RhZGRmaWxlPiBpcyBydW4uIgorbXNnc3RyICIiCisiTGUgbm9tIGR1IGZpY2hpZXIgc2VyYSBpbmRpcXXDqSByZWxhdGl2ZW1lbnQgYXUgcsOpcGVydG9pcmUgZGFucyBsZXF1ZWwgQjxkcGtnLSIKKyJnZW5jaGFuZ2VzPiBzJ2F0dGVuZCDDoCB0cm91dmVyIGxlcyBmaWNoaWVycywgaGFiaXR1ZWxsZW1lbnQgQjwuLj4sIHBsdXTDtHQgIgorInF1ZSByZWxhdGl2ZW1lbnQgYXUgcsOpcGVydG9pcmUgZGFucyBsZXF1ZWwgZXN0IGV4w6ljdXTDqSBCPGRwa2ctZGlzdGFkZGZpbGUuPiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGlzdGFkZGZpbGUuMToyOCBkcGtnLWdlbmNoYW5nZXMuMToxMDMgZHBrZy1nZW5jb250cm9sLjE6NjkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1mPkk8ZmlsZXNsaXN0ZmlsZT4iCittc2dzdHIgIkI8LWY+STxmaWNoaWVyL2xpc3RlLWRlcy1maWNoaWVycz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGlzdGFkZGZpbGUuMTozMiBkcGtnLWdlbmNvbnRyb2wuMTo3MworbXNnaWQgIiIKKyJSZWFkIG9yIHdyaXRlIHRoZSBsaXN0IG9mIGZpbGVzIHRvIGJlIHVwbG9hZGVkIGhlcmUsIHJhdGhlciB0aGFuIHVzaW5nICIKKyJCPGRlYmlhbi9maWxlcz4uIgorbXNnc3RyICIiCisiTGl0IG91IMOpY3JpdCBsYSBsaXN0ZSBkZXMgZmljaGllcnMgcXVpIGRvaXZlbnQgw6p0cmUgZW52b3nDqXMgdmVycyBsJ2FyY2hpdmUgIgorImRhbnMgY2UgZmljaGllciBwbHV0w7R0IHF1ZSBkYW5zIGxlIGZpY2hpZXIgQjxkZWJpYW4vZmlsZXM+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGlzdGFkZGZpbGUuMTo0MCBkcGtnLWdlbmNoYW5nZXMuMToxMzkgZHBrZy1nZW5jb250cm9sLjE6MTM0CisjLCBuby13cmFwCittc2dpZCAiQjxkZWJpYW4vZmlsZXM+IgorbXNnc3RyICJCPGRlYmlhbi9maWxlcz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGlzdGFkZGZpbGUuMTo0NgorbXNnaWQgIiIKKyJUaGUgbGlzdCBvZiBnZW5lcmF0ZWQgZmlsZXMgd2hpY2ggYXJlIHBhcnQgb2YgdGhlIHVwbG9hZCBiZWluZyBwcmVwYXJlZC4gICIKKyJCPGRwa2ctZGlzdGFkZGZpbGU+IGNhbiBiZSB1c2VkIHRvIGFkZCBhZGRpdGlvbmFsIGZpbGVzLiIKK21zZ3N0ciAiIgorIkxhIGxpc3RlIGRlcyBmaWNoaWVycyBjcsOpw6lzIHF1aSBzZXJvbnQgaW5zdGFsbMOpcyBzdXIgbGUgc2VydmV1ci4gQjxkcGtnLSIKKyJkaXN0YWRkZmlsZT4gcGV1dCDDqnRyZSB1dGlsaXPDqSBwb3VyIGFqb3V0ZXIgZGVzIGZpY2hpZXJzIHN1cHBsw6ltZW50YWlyZXMuIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1kZWIuMToxCisjLCBuby13cmFwCittc2dpZCAiZHBrZy1kZWIiCittc2dzdHIgImRwa2ctZGViIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjQKK21zZ2lkICJkcGtnLWRlYiAtIERlYmlhbiBwYWNrYWdlIGFyY2hpdmUgKC5kZWIpIG1hbmlwdWxhdGlvbiB0b29sIgorbXNnc3RyICIiCisiZHBrZy1kZWIgLSBvdXRpbCBwb3VyIGxhIG1hbmlwdWxhdGlvbiBkZXMgYXJjaGl2ZXMgKC5kZWIpIGRlcyBwYXF1ZXRzIERlYmlhbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMTo4CisjLCBmdXp6eQorI3wgbXNnaWQgIkI8ZHBrZy1kZWI+IFtJPG9wdGlvbnM+XSBJPGNvbW1hbmQ+IgorbXNnaWQgIkI8ZHBrZy1kZWI+IFtJPG9wdGlvbj4uLi5dIEk8Y29tbWFuZD4iCittc2dzdHIgIkI8ZHBrZy1kZWI+IFtJPG9wdGlvbnM+XSBJPGNvbW1hbmRlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxMgorbXNnaWQgIiIKKyJCPGRwa2ctZGViPiBwYWNrcywgdW5wYWNrcyBhbmQgcHJvdmlkZXMgaW5mb3JtYXRpb24gYWJvdXQgRGViaWFuIGFyY2hpdmVzLiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1kZWI+IGNyw6llIHVuIHBhcXVldCwgZMOpcGFxdWV0dGUgdW5lIGFyY2hpdmUgb3UgZG9ubmUgZGVzICIKKyJyZW5zZWlnbmVtZW50cyBzdXIgbGVzIGFyY2hpdmVzIERlYmlhbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxNgorbXNnaWQgIlVzZSBCPGRwa2c+IHRvIGluc3RhbGwgYW5kIHJlbW92ZSBwYWNrYWdlcyBmcm9tIHlvdXIgc3lzdGVtLiIKK21zZ3N0ciAiQjxkcGtnPiBzZXJ0IMOgIGluc3RhbGxlciBvdSDDoCBzdXBwcmltZXIgZGVzIHBhcXVldHMgc3VyIGxlIHN5c3TDqG1lLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToyNgorbXNnaWQgIiIKKyJZb3UgY2FuIGFsc28gaW52b2tlIEI8ZHBrZy1kZWI+IGJ5IGNhbGxpbmcgQjxkcGtnPiB3aXRoIHdoYXRldmVyIG9wdGlvbnMgeW91ICIKKyJ3YW50IHRvIHBhc3MgdG8gQjxkcGtnLWRlYj4uIEI8ZHBrZz4gd2lsbCBzcG90IHRoYXQgeW91IHdhbnRlZCBCPGRwa2ctZGViPiAiCisiYW5kIHJ1biBpdCBmb3IgeW91LiIKK21zZ3N0ciAiIgorIklsIGVzdCBwb3NzaWJsZSBkJ2V4w6ljdXRlciBCPGRwa2ctZGViPiBlbiBhcHBlbGFudCBCPGRwa2c+IGF2ZWMgbGVzIG9wdGlvbnMgIgorImRlIEI8ZHBrZy1kZWI+LiBCPGRwa2c+IGNvbXByZW5kIHF1ZSBCPGRwa2ctZGViPiBlc3QgYXBwZWzDqSBldCBsZSBsYW5jZS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRlYi4xOjI4CisjLCBuby13cmFwCittc2dpZCAiQjwtYj4sIEI8LS1idWlsZD4gSTxkaXJlY3Rvcnk+IFtJPGFyY2hpdmU+fEk8ZGlyZWN0b3J5Pl0iCittc2dzdHIgIkI8LWI+LCBCPC0tYnVpbGQ+IEk8csOpcGVydG9pcmU+IFtJPGFyY2hpdmU+fEk8csOpcGVydG9pcmU+XSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMTo0MAorbXNnaWQgIiIKKyJDcmVhdGVzIGEgZGViaWFuIGFyY2hpdmUgZnJvbSB0aGUgZmlsZXN5c3RlbSB0cmVlIHN0b3JlZCBpbiBJPGRpcmVjdG9yeT4uICIKKyJJPGRpcmVjdG9yeT4gbXVzdCBoYXZlIGEgQjxERUJJQU4+IHN1YmRpcmVjdG9yeSwgd2hpY2ggY29udGFpbnMgdGhlIGNvbnRyb2wgIgorImluZm9ybWF0aW9uIGZpbGVzIHN1Y2ggYXMgdGhlIGNvbnRyb2wgZmlsZSBpdHNlbGYuIFRoaXMgZGlyZWN0b3J5IHdpbGwgIgorIkk8bm90PiBhcHBlYXIgaW4gdGhlIGJpbmFyeSBwYWNrYWdlJ3MgZmlsZXN5c3RlbSBhcmNoaXZlLCBidXQgaW5zdGVhZCB0aGUgIgorImZpbGVzIGluIGl0IHdpbGwgYmUgcHV0IGluIHRoZSBiaW5hcnkgcGFja2FnZSdzIGNvbnRyb2wgaW5mb3JtYXRpb24gYXJlYS4iCittc2dzdHIgIiIKKyJDcsOpZSB1bmUgYXJjaGl2ZSBEZWJpYW4gYXZlYyBsJ2FyYm9yZXNjZW5jZSBjb250ZW51ZSBkYW5zIEk8csOpcGVydG9pcmU+LiAiCisiSTxyw6lwZXJ0b2lyZT4gZG9pdCBwb3Nzw6lkZXIgdW4gc291cy1yw6lwZXJ0b2lyZSBCPERFQklBTj4gcXVpIGNvbnRpZW50IGxlcyAiCisiZmljaGllcnMgZGUgY29udHLDtGxlIHRlbCBxdWUgbGUgZmljaGllciDCq8KgY29udHJvbMKgwrsgbHVpLW3Dqm1lLiBDZSByw6lwZXJ0b2lyZSAiCisiSTxuJ2FwcGFyYcOudCBwYXM+IGRhbnMgbCdhcmNoaXZlIGRlIGwnYXJib3Jlc2NlbmNlIGR1IHBhcXVldCBiaW5haXJlwqA7IG1haXMgIgorImxlcyBmaWNoaWVycyBxdSdpbCBjb250aWVudCBzb250IG1pcyBkYW5zIGxhIHpvbmUgZGUgY29udHLDtGxlIGR1IHBhcXVldCAiCisiYmluYWlyZS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6NTIKK21zZ2lkICIiCisiVW5sZXNzIHlvdSBzcGVjaWZ5IEI8LS1ub2NoZWNrPiwgQjxkcGtnLWRlYj4gd2lsbCByZWFkIEI8REVCSUFOL2NvbnRyb2w+IGFuZCAiCisicGFyc2UgaXQuIEl0IHdpbGwgY2hlY2sgaXQgZm9yIHN5bnRheCBlcnJvcnMgYW5kIG90aGVyIHByb2JsZW1zLCBhbmQgZGlzcGxheSAiCisidGhlIG5hbWUgb2YgdGhlIGJpbmFyeSBwYWNrYWdlIGJlaW5nIGJ1aWx0LiAgQjxkcGtnLWRlYj4gd2lsbCBhbHNvIGNoZWNrIHRoZSAiCisicGVybWlzc2lvbnMgb2YgdGhlIG1haW50YWluZXIgc2NyaXB0cyBhbmQgb3RoZXIgZmlsZXMgZm91bmQgaW4gdGhlIEI8REVCSUFOPiAiCisiY29udHJvbCBpbmZvcm1hdGlvbiBkaXJlY3RvcnkuIgorbXNnc3RyICIiCisiw4AgbW9pbnMgZGUgcHLDqWNpc2VyIEI8LS1ub2NoZWNrPiwgQjxkcGtnLWRlYj4gbGl0IEI8REVCSUFOL2NvbnRyb2w+IGV0ICIKKyJsJ2FuYWx5c2UuIElsIGNoZXJjaGUgbGVzIGVycmV1cnMgZGUgc3ludGF4ZSBldCBkJ2F1dHJlcyBwcm9ibMOobWVzICIKKyJleGlzdGFudHPCoDsgcHVpcyBpbCBhZmZpY2hlIGxlIG5vbSBkdSBwYXF1ZXQgYmluYWlyZSBxdSdpbCBjb25zdHJ1aXQuIEI8ZHBrZy0iCisiZGViPiB2w6lyaWZpZSBhdXNzaSBsZXMgcGVybWlzc2lvbnMgZGVzIHNjcmlwdHMgZHUgcmVzcG9uc2FibGUgZXQgZGVzIGF1dHJlcyAiCisiZmljaGllcnMgcXUnaWwgdHJvdXZlIGRhbnMgbGUgcsOpcGVydG9pcmUgZGUgY29udHLDtGxlIEI8REVCSUFOPi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6NTkKK21zZ2lkICIiCisiSWYgbm8gSTxhcmNoaXZlPiBpcyBzcGVjaWZpZWQgdGhlbiBCPGRwa2ctZGViPiB3aWxsIHdyaXRlIHRoZSBwYWNrYWdlIGludG8gIgorInRoZSBmaWxlIEk8ZGlyZWN0b3J5PkI8LmRlYj4uIgorbXNnc3RyICIiCisiUXVhbmQgYXVjdW5lIEk8YXJjaGl2ZT4gbidlc3QgZG9ubsOpZSwgQjxkcGtnLWRlYj4gYXBwZWxsZSBsZSBwYXF1ZXQgIgorIkk8csOpcGVydG9pcmU+QjwuZGViPi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6NjEKK21zZ2lkICJJZiB0aGUgYXJjaGl2ZSB0byBiZSBjcmVhdGVkIGFscmVhZHkgZXhpc3RzIGl0IHdpbGwgYmUgb3ZlcndyaXR0ZW4uIgorbXNnc3RyICJTaSBsJ2FyY2hpdmUgcXVpIGRvaXQgw6p0cmUgY3LDqcOpZSBleGlzdGUgZMOpasOgLCBlbGxlIGVzdCByZW1wbGFjw6llLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMTo3NworbXNnaWQgIiIKKyJJZiB0aGUgc2Vjb25kIGFyZ3VtZW50IGlzIGEgZGlyZWN0b3J5IHRoZW4gQjxkcGtnLWRlYj4gd2lsbCB3cml0ZSB0byB0aGUgIgorImZpbGUgSTxwYWNrYWdlPkI8Xz5JPHZlcnNpb24+QjxfPkk8YXJjaD5CPC5kZWI+LCBvciAiCisiSTxwYWNrYWdlPkI8Xz5JPHZlcnNpb24+QjwuZGViPiBpZiBubyBCPEFyY2hpdGVjdHVyZT4gZmllbGQgaXMgcHJlc2VudCBpbiAiCisidGhlIHBhY2thZ2UgY29udHJvbCBmaWxlLiBXaGVuIGEgdGFyZ2V0IGRpcmVjdG9yeSBpcyBzcGVjaWZpZWQsIHJhdGhlciB0aGFuICIKKyJhIGZpbGUsIHRoZSBCPC0tbm9jaGVjaz4gb3B0aW9uIG1heSBub3QgYmUgdXNlZCAoc2luY2UgQjxkcGtnLWRlYj4gbmVlZHMgdG8gIgorInJlYWQgYW5kIHBhcnNlIHRoZSBwYWNrYWdlIGNvbnRyb2wgZmlsZSB0byBkZXRlcm1pbmUgd2hpY2ggZmlsZW5hbWUgdG8gdXNlKS4iCittc2dzdHIgIiIKKyJRdWFuZCBsZSBzZWNvbmQgYXJndW1lbnQgZXN0IHVuIHLDqXBlcnRvaXJlLCBCPGRwa2ctZGViPiBhcHBlbGxlIGxlIHBhcXVldCAiCisiSTxwYXF1ZXQ+QjxfPkk8dmVyc2lvbj5CPF8+STxhcmNoPkI8LmRlYj4sQjwgb3UgYmllbiAiCisiPkk8cGFxdWV0PkI8Xz5JPHZlcnNpb24+QjwuZGViPiBzaSBhdWN1biBjaGFtcCBCPEFyY2hpdGVjdHVyZT4gbidlc3QgcHLDqXNlbnQgIgorImRhbnMgbGUgZmljaGllciBkZSBjb250csO0bGUgZHUgcGFxdWV0LiBRdWFuZCB1biByw6lwZXJ0b2lyZSBjaWJsZSBlc3QgcHLDqWNpc8OpICIKKyLDoCBsYSBwbGFjZSBkJ3VuIGZpY2hpZXIsIGwnb3B0aW9uIEI8LS1ub2NoZWNrPiBuZSBkb2l0IHBhcyDDqnRyZSB1dGlsaXPDqWUgIgorIihwdWlzcXVlIEI8ZHBrZy1kZWI+IGEgYmVzb2luIGRlIGxpcmUgZXQgZCdhbmFseXNlciBsZSBmaWNoaWVyIGRlIGNvbnRyw7RsZSAiCisiZHUgcGFxdWV0IHBvdXIgY29ubmHDrnRyZSBsZSBub20gZGUgZmljaGllciDDoCB1dGlsaXNlcikuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMTo3NworIywgbm8td3JhcAorbXNnaWQgIkI8LUk+LCBCPC0taW5mbz4gSTxhcmNoaXZlPiBbSTxjb250cm9sLWZpbGUtbmFtZT4uLi5dIgorbXNnc3RyICJCPC1JPiwgQjwtLWluZm8+IEk8YXJjaGl2ZT4gW0k8bm9tLWZpY2hpZXItY29udHJvbD4uLi5dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjgwCittc2dpZCAiUHJvdmlkZXMgaW5mb3JtYXRpb24gYWJvdXQgYSBiaW5hcnkgcGFja2FnZSBhcmNoaXZlLiIKK21zZ3N0ciAiRG9ubmUgZGVzIHJlbnNlaWduZW1lbnRzIHN1ciB1bmUgYXJjaGl2ZSBkZSBwYXF1ZXQgYmluYWlyZS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6ODUKK21zZ2lkICIiCisiSWYgbm8gSTxjb250cm9sLWZpbGUtbmFtZT5zIGFyZSBzcGVjaWZpZWQgdGhlbiBpdCB3aWxsIHByaW50IGEgc3VtbWFyeSBvZiAiCisidGhlIGNvbnRlbnRzIG9mIHRoZSBwYWNrYWdlIGFzIHdlbGwgYXMgaXRzIGNvbnRyb2wgZmlsZS4iCittc2dzdHIgIiIKKyJRdWFuZCBhdWN1biBhcmd1bWVudCBJPGZpY2hpZXItY29udHJvbD4gbidlc3QgcHLDqWNpc8OpLCB1biByw6lzdW3DqSBkdSBjb250ZW51ICIKKyJkdSBwYXF1ZXQgYWluc2kgcXVlIHNvbiBmaWNoaWVyIMKrwqBjb250cm9swqDCuyBzb250IGFmZmljaMOpcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6OTMKK21zZ2lkICIiCisiSWYgYW55IEk8Y29udHJvbC1maWxlLW5hbWU+cyBhcmUgc3BlY2lmaWVkIHRoZW4gQjxkcGtnLWRlYj4gd2lsbCBwcmludCB0aGVtICIKKyJpbiB0aGUgb3JkZXIgdGhleSB3ZXJlIHNwZWNpZmllZDsgaWYgYW55IG9mIHRoZSBjb21wb25lbnRzIHdlcmVuJ3QgcHJlc2VudCAiCisiaXQgd2lsbCBwcmludCBhbiBlcnJvciBtZXNzYWdlIHRvIHN0ZGVyciBhYm91dCBlYWNoIG9uZSBhbmQgZXhpdCB3aXRoIHN0YXR1cyAiCisiMi4iCittc2dzdHIgIiIKKyJRdWFuZCB1biBhcmd1bWVudCBJPGZpY2hpZXItY29udHJvbD4gZXN0IHByw6ljaXPDqSwgQjxkcGtnLWRlYj4gYWZmaWNoZSBsZXMgIgorIsOpbMOpbWVudHMgZGFucyBsJ29yZHJlIGQnYXBwYXJpdGlvbsKgOyBxdWFuZCBsJ3VuIGRlcyDDqWzDqW1lbnRzIG4nZXN0IHBhcyAiCisicHLDqXNlbnQsIGlsIGFmZmljaGUgdW4gbWVzc2FnZSBkJ2VycmV1ciBzdXIgwqvCoHN0ZGVycsKgwrsgZXQgcXVpdHRlIGF2ZWMgdW4gIgorImNvZGUgw6lnYWwgw6AgMi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRlYi4xOjkzCisjLCBuby13cmFwCittc2dpZCAiQjwtVz4sIEI8LS1zaG93PiBJPGFyY2hpdmU+IgorbXNnc3RyICJCPC1XPiwgQjwtLXNob3c+IEk8YXJjaGl2ZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTAwCittc2dpZCAiIgorIlByb3ZpZGVzIGluZm9ybWF0aW9uIGFib3V0IGEgYmluYXJ5IHBhY2thZ2UgYXJjaGl2ZSBpbiB0aGUgZm9ybWF0IHNwZWNpZmllZCAiCisiYnkgdGhlIEI8LS1zaG93Zm9ybWF0PiBhcmd1bWVudC4gVGhlIGRlZmF1bHQgZm9ybWF0IGRpc3BsYXlzIHRoZSBwYWNrYWdlJ3MgIgorIm5hbWUgYW5kIHZlcnNpb24gb24gb25lIGxpbmUsIHNlcGFyYXRlZCBieSBhIHRhYnVsYXRvci4iCittc2dzdHIgIiIKKyJDZXR0ZSBvcHRpb24gZG9ubmUgZGVzIGluZm9ybWF0aW9ucyBzdXIgbCdhcmNoaXZlIGQndW4gcGFxdWV0IGJpbmFpcmUgc2Vsb24gIgorImxlIGZvcm1hdCBzcMOpY2lmacOpIHBhciBsJ2FyZ3VtZW50IEI8LS1zaG93Zm9ybWF0Pi4gTGUgZm9ybWF0IHBhciBkw6lmYXV0ICIKKyJhZmZpY2hlIGxlIG5vbSBldCBsYSB2ZXJzaW9uIGR1IHBhcXVldCBzdXIgdW5lIHNldWxlIGxpZ25lLCBzw6lwYXLDqXMgcGFyIHVuZSAiCisidGFidWxhdGlvbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRlYi4xOjEwMAorIywgbm8td3JhcAorbXNnaWQgIkI8LWY+LCBCPC0tZmllbGQ+IEk8YXJjaGl2ZT4gW0k8Y29udHJvbC1maWVsZC1uYW1lPi4uLl0iCittc2dzdHIgIkI8LWY+LCBCPC0tZmllbGQ+IEk8YXJjaGl2ZT4gW0k8bm9tLWR1LWNoYW1wLWRlLWNvbnRyb2w+Li4uXSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxMDMKK21zZ2lkICJFeHRyYWN0cyBjb250cm9sIGZpbGUgaW5mb3JtYXRpb24gZnJvbSBhIGJpbmFyeSBwYWNrYWdlIGFyY2hpdmUuIgorbXNnc3RyICIiCisiRXh0cmFpdCBsZXMgcmVuc2VpZ25lbWVudHMgZHUgZmljaGllciDCq8KgY29udHJvbMKgwrsgZGUgbCdhcmNoaXZlIGR1IHBhcXVldCAiCisiYmluYWlyZS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTA3Cittc2dpZCAiIgorIklmIG5vIEI8Y29udHJvbC1maWxlLWZpZWxkPnMgYXJlIHNwZWNpZmllZCB0aGVuIGl0IHdpbGwgcHJpbnQgdGhlIHdob2xlICIKKyJjb250cm9sIGZpbGUuIgorbXNnc3RyICIiCisiUXVhbmQgYXVjdW4gYXJndW1lbnQgQjxjb250cm9sLWZpY2hpZXItY2hhbXA+IG4nZXN0IHByw6ljaXPDqSwgbGUgZmljaGllciAiCisiwqvCoGNvbnRyb2zCoMK7IGVzdCBhZmZpY2jDqSBlbiBlbnRpZXIuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjExNgorbXNnaWQgIiIKKyJJZiBhbnkgYXJlIHNwZWNpZmllZCB0aGVuIEI8ZHBrZy1kZWI+IHdpbGwgcHJpbnQgdGhlaXIgY29udGVudHMsIGluIHRoZSAiCisib3JkZXIgaW4gd2hpY2ggdGhleSBhcHBlYXIgaW4gdGhlIGNvbnRyb2wgZmlsZS4gSWYgbW9yZSB0aGFuIG9uZSBCPGNvbnRyb2wtIgorImZpbGUtZmllbGQ+IGlzIHNwZWNpZmllZCB0aGVuIEI8ZHBrZy1kZWI+IHdpbGwgcHJlY2VkZSBlYWNoIHdpdGggaXRzIGZpZWxkICIKKyJuYW1lIChhbmQgYSBjb2xvbiBhbmQgc3BhY2UpLiIKK21zZ3N0ciAiIgorIlF1YW5kIGlsIHkgZW4gYSB1biwgQjxkcGtnLWRlYj4gYWZmaWNoZSBzZXMgw6lsw6ltZW50cyBlbiBzdWl2YW50IGxldXIgb3JkcmUgIgorImQnYXBwYXJpdGlvbiBkYW5zIGxlIGZpY2hpZXIgwqvCoGNvbnRyb2zCoMK7LiBRdWFuZCBpbCB5IGEgcGx1cyBkJ3VuIGFyZ3VtZW50ICIKKyJCPGNvbnRyb2wtZmljaGllci1maWVsZCw+IEI8ZHBrZy1kZWI+IGZhaXQgcHLDqWPDqWRlciBjaGFjdW4gcGFyIGxlIG5vbSBkZSBzb24gIgorImNoYW1wIChwdWlzIHBhciB1biDCq8KgZGV1eC1wb2ludHPCoMK7IGV0IHVuZSBlc3BhY2UpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxMTgKK21zZ2lkICJObyBlcnJvcnMgYXJlIHJlcG9ydGVkIGZvciBmaWVsZHMgcmVxdWVzdGVkIGJ1dCBub3QgZm91bmQuIgorbXNnc3RyICJMJ2Fic2VuY2UgZGVzIGNoYW1wcyBkZW1hbmTDqXMgbmUgcHJvdm9xdWUgcGFzIGRlIG1lc3NhZ2UgZCdlcnJldXIuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToxMTgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1jPiwgQjwtLWNvbnRlbnRzPiBJPGFyY2hpdmU+IgorbXNnc3RyICJCPC1jPiwgQjwtLWNvbnRlbnRzPiBJPGFyY2hpdmU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjEyNAorbXNnaWQgIiIKKyJMaXN0cyB0aGUgY29udGVudHMgb2YgdGhlIGZpbGVzeXN0ZW0gdHJlZSBhcmNoaXZlIHBvcnRpb24gb2YgdGhlIHBhY2thZ2UgIgorImFyY2hpdmUuIEl0IGlzIGN1cnJlbnRseSBwcm9kdWNlZCBpbiB0aGUgZm9ybWF0IGdlbmVyYXRlZCBieSBCPHRhcj4ncyAiCisidmVyYm9zZSBsaXN0aW5nLiIKK21zZ3N0ciAiIgorIkxpc3RlIHNldWxlbWVudCBsJ2FyYm9yZXNjZW5jZSBkZXMgZmljaGllcnMgZCd1bmUgYXJjaGl2ZSBkZSBwYXF1ZXQuIEMnZXN0ICIKKyJlbiBmYWl0IGxlIHLDqXN1bHRhdCBwcm9kdWl0IHBhciBsYSBjb21tYW5kZSBCPHRhcj4gZXQgdW5lIG9wdGlvbiAiCisiZCfDqW51bcOpcmF0aW9uIHZlcmJldXNlLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MTI0CisjLCBuby13cmFwCittc2dpZCAiQjwteD4sIEI8LS1leHRyYWN0PiBJPGFyY2hpdmUgZGlyZWN0b3J5PiIKK21zZ3N0ciAiQjwteD4sIEI8LS1leHRyYWN0PiBJPGFyY2hpdmUgcsOpcGVydG9pcmU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjEyOAorbXNnaWQgIiIKKyJFeHRyYWN0cyB0aGUgZmlsZXN5c3RlbSB0cmVlIGZyb20gYSBwYWNrYWdlIGFyY2hpdmUgaW50byB0aGUgc3BlY2lmaWVkICIKKyJkaXJlY3RvcnkuIgorbXNnc3RyICIiCisiRXh0cmFpdCBsJ2FyYm9yZXNjZW5jZSBkZXMgZmljaGllcnMgZCd1biBwYXF1ZXQgYXJjaGl2ZSBkYW5zIGxlIHLDqXBlcnRvaXJlICIKKyJzcMOpY2lmacOpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxMzQKK21zZ2lkICIiCisiTm90ZSB0aGF0IGV4dHJhY3RpbmcgYSBwYWNrYWdlIHRvIHRoZSByb290IGRpcmVjdG9yeSB3aWxsIEk8bm90PiByZXN1bHQgaW4gYSAiCisiY29ycmVjdCBpbnN0YWxsYXRpb24hIFVzZSBCPGRwa2c+IHRvIGluc3RhbGwgcGFja2FnZXMuIgorbXNnc3RyICIiCisiSWwgZmF1dCByZW1hcnF1ZXIgcXVlIGwnZXh0cmFjdGlvbiBkJ3VuIHBhcXVldCBkYW5zIGxlIHLDqXBlcnRvaXJlIHJvb3QgSTxuZSAiCisicHJvZHVpdCBwYXM+IHVuZSBpbnN0YWxsYXRpb24gY29ycmVjdGXCoCEgVXRpbGlzZXogQjxkcGtnPiBwb3VyICIKKyJsJ2luc3RhbGxhdGlvbiBkZXMgcGFxdWV0cy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTM4Cittc2dpZCAiIgorIkk8ZGlyZWN0b3J5PiAoYnV0IG5vdCBpdHMgcGFyZW50cykgd2lsbCBiZSBjcmVhdGVkIGlmIG5lY2Vzc2FyeSwgYW5kIGl0cyAiCisicGVybWlzc2lvbnMgbW9kaWZpZWQgdG8gbWF0Y2ggdGhlIGNvbnRlbnRzIG9mIHRoZSBwYWNrYWdlLiIKK21zZ3N0ciAiIgorIkk8csOpcGVydG9pcmU+IGVzdCBjcsOpw6kgc2kgbsOpY2Vzc2FpcmUgKG1haXMgcGFzIHNlcyByw6lwZXJ0b2lyZXMgcGFyZW50cykgZXQgIgorInNlcyBwZXJtaXNzaW9ucyBzb250IG1vZGlmacOpZXMgcG91ciBjb3JyZXNwb25kcmUgYXUgY25vdGVudSBkdSBwYXF1ZXQuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToxMzgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1YPiwgQjwtLXZleHRyYWN0PiBJPGFyY2hpdmUgZGlyZWN0b3J5PiIKK21zZ3N0ciAiQjwtWD4sIEI8LS12ZXh0cmFjdD4gSTxhcmNoaXZlIHLDqXBlcnRvaXJlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxNDUKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIklzIGxpa2UgQjwtLWV4dHJhY3Q+IChCPC14PikgIGJ1dCBwcmludHMgYSBsaXN0aW5nIG9mIHRoZSBmaWxlcyBleHRyYWN0ZWQgIgorI3wgImFzIGl0IGdvZXMuIgorbXNnaWQgIiIKKyJJcyBsaWtlIEI8LS1leHRyYWN0PiAoQjwteD4pICB3aXRoIEI8LS12ZXJib3NlPiAoQjwtdj4pICB3aGljaCBwcmludHMgYSAiCisibGlzdGluZyBvZiB0aGUgZmlsZXMgZXh0cmFjdGVkIGFzIGl0IGdvZXMuIgorbXNnc3RyICIiCisiQ29tbWUgQjwtLWV4dHJhY3Q+IChCPC14PiksIG1haXMgYWZmaWNoZSBsYSBsaXN0ZSBkZXMgZmljaGllcnMgYXUgZnVyIGV0IMOgICIKKyJtZXN1cmUgcXUnaWxzIHNvbnQgZXh0cmFpdHMuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToxNDUKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjwteD4sIEI8LS1leHRyYWN0PiBJPGFyY2hpdmUgZGlyZWN0b3J5PiIKK21zZ2lkICJCPC1SPiwgQjwtLXJhdy1leHRyYWN0PiBJPGFyY2hpdmUgZGlyZWN0b3J5PiIKK21zZ3N0ciAiQjwteD4sIEI8LS1leHRyYWN0PiBJPGFyY2hpdmUgcsOpcGVydG9pcmU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjE1MAorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiRXh0cmFjdHMgdGhlIGZpbGVzeXN0ZW0gdHJlZSBmcm9tIGEgcGFja2FnZSBhcmNoaXZlIGludG8gdGhlIHNwZWNpZmllZCAiCisjfCAiZGlyZWN0b3J5LiIKK21zZ2lkICIiCisiRXh0cmFjdHMgdGhlIGZpbGVzeXN0ZW0gdHJlZSBmcm9tIGEgcGFja2FnZSBhcmNoaXZlIGludG8gYSBzcGVjaWZpZWQgIgorImRpcmVjdG9yeSwgYW5kIHRoZSBjb250cm9sIGluZm9ybWF0aW9uIGZpbGVzIGludG8gYSBERUJJQU4gc3ViZGlyZWN0b3J5IG9mICIKKyJ0aGUgc3BlY2lmaWVkIGRpcmVjdG9yeS4iCittc2dzdHIgIiIKKyJFeHRyYWl0IGwnYXJib3Jlc2NlbmNlIGRlcyBmaWNoaWVycyBkJ3VuIHBhcXVldCBhcmNoaXZlIGRhbnMgbGUgcsOpcGVydG9pcmUgIgorInNww6ljaWZpw6kuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjE1MiBkcGtnLWRlYi4xOjE3MgorbXNnaWQgIiIKKyJUaGUgdGFyZ2V0IGRpcmVjdG9yeSAoYnV0IG5vdCBpdHMgcGFyZW50cykgd2lsbCBiZSBjcmVhdGVkIGlmIG5lY2Vzc2FyeS4iCittc2dzdHIgIiIKKyJMZSByw6lwZXJ0b2lyZSBjaWJsZSBlc3QgY3LDqcOpIHNpIG7DqWNlc3NhaXJlIChtYWlzIHBhcyBzZXMgcsOpcGVydG9pcmVzICIKKyJwYXJlbnRzKS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRlYi4xOjE1MgorIywgbm8td3JhcAorbXNnaWQgIkI8LS1mc3lzLXRhcmZpbGU+IEk8YXJjaGl2ZT4iCittc2dzdHIgIkI8LS1mc3lzLXRhcmZpbGU+IEk8YXJjaGl2ZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTYxCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJFeHRyYWN0cyB0aGUgZmlsZXN5c3RlbSB0cmVlIGRhdGEgZnJvbSBhIGJpbmFyeSBwYWNrYWdlIGFuZCBzZW5kcyBpdCB0byAiCisjfCAic3RhbmRhcmQgb3V0cHV0IGluIEI8dGFyPiBmb3JtYXQuIFRvZ2V0aGVyIHdpdGggQjx0YXI+KDEpICB0aGlzIGNhbiBiZSAiCisjfCAidXNlZCB0byBleHRyYWN0IGEgcGFydGljdWxhciBmaWxlIGZyb20gYSBwYWNrYWdlIGFyY2hpdmUuIgorbXNnaWQgIiIKKyJFeHRyYWN0cyB0aGUgZmlsZXN5c3RlbSB0cmVlIGRhdGEgZnJvbSBhIGJpbmFyeSBwYWNrYWdlIGFuZCBzZW5kcyBpdCB0byAiCisic3RhbmRhcmQgb3V0cHV0IGluIEI8dGFyPiBmb3JtYXQuIFRvZ2V0aGVyIHdpdGggQjx0YXI+KDEpICB0aGlzIGNhbiBiZSB1c2VkICIKKyJ0byBleHRyYWN0IGEgcGFydGljdWxhciBmaWxlIGZyb20gYSBwYWNrYWdlIGFyY2hpdmUuICBUaGUgaW5wdXQgYXJjaGl2ZSB3aWxsICIKKyJhbHdheXMgYmUgcHJvY2Vzc2VkIHNlcXVlbnRpYWxseS4iCittc2dzdHIgIiIKKyJFeHRyYWl0IGxlcyBkb25uw6llcyBkZSBsJ2FyYm9yZXNjZW5jZSBkJ3VuIHBhcXVldCBiaW5haXJlIGV0IGxlcyBlbnZvaWUgc3VyICIKKyJsYSBzb3J0aWUgc3RhbmRhcmQgZGFucyBsZSBmb3JtYXQgcHJvcHJlIMOgIGxhIGNvbW1hbmRlIEI8dGFyPi4gRW4gY29tYmluYW50ICIKKyJjZXR0ZSBvcHRpb24gYXZlYyBsYSBjb21tYW5kZSBCPHRhcj4oMSksIG9uIHBldXQgYWluc2kgZXh0cmFpcmUgdW4gZmljaGllciAiCisicHLDqWNpcyBkJ3VuZSBhcmNoaXZlIGRlIHBhcXVldC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRlYi4xOjE2MQorIywgbm8td3JhcAorbXNnaWQgIkI8LWU+LCBCPC0tY29udHJvbD4gSTxhcmNoaXZlPiBbSTxkaXJlY3Rvcnk+XSIKK21zZ3N0ciAiQjwtZT4sIEI8LS1jb250cm9sPiBJPGFyY2hpdmU+IFtJPHLDqXBlcnRvaXJlPl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTY1Cittc2dpZCAiIgorIkV4dHJhY3RzIHRoZSBjb250cm9sIGluZm9ybWF0aW9uIGZpbGVzIGZyb20gYSBwYWNrYWdlIGFyY2hpdmUgaW50byB0aGUgIgorInNwZWNpZmllZCBkaXJlY3RvcnkuIgorbXNnc3RyICIiCisiRXh0cmFpdCBsZXMgZmljaGllcnMgZGUgY29udHLDtGxlIGQndW5lIGFyY2hpdmUgZGUgcGFxdWV0IGRhbnMgbGUgcsOpcGVydG9pcmUgIgorInNww6ljaWZpw6kuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjE2OQorbXNnaWQgIiIKKyJJZiBubyBkaXJlY3RvcnkgaXMgc3BlY2lmaWVkIHRoZW4gYSBzdWJkaXJlY3RvcnkgQjxERUJJQU4+IGluIHRoZSBjdXJyZW50ICIKKyJkaXJlY3RvcnkgaXMgdXNlZC4iCittc2dzdHIgIiIKKyJRdWFuZCBhdWN1biByw6lwZXJ0b2lyZSBuJ2VzdCBwcsOpY2lzw6ksIG9uIHV0aWxpc2UgdW4gc291cy1yw6lwZXJ0b2lyZSAiCisiQjxERUJJQU4+IGR1IHLDqXBlcnRvaXJlIGFjdHVlbC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRlYi4xOjE4MAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1zaG93Zm9ybWF0PT5JPGZvcm1hdD4iCittc2dzdHIgIkI8LS1zaG93Zm9ybWF0PT5JPGZvcm1hdD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTg1IGRwa2ctcXVlcnkuMToxMjcKK21zZ2lkICIiCisiVGhpcyBvcHRpb24gaXMgdXNlZCB0byBzcGVjaWZ5IHRoZSBmb3JtYXQgb2YgdGhlIG91dHB1dCBCPC0tc2hvdz4gd2lsbCAiCisicHJvZHVjZS4gVGhlIGZvcm1hdCBpcyBhIHN0cmluZyB0aGF0IHdpbGwgYmUgb3V0cHV0IGZvciBlYWNoIHBhY2thZ2UgbGlzdGVkLiIKK21zZ3N0ciAiIgorIkNldHRlIG9wdGlvbiBzZXJ0IMOgIHNww6ljaWZpZXIgbGUgZm9ybWF0IGRlIHNvcnRpZSBkZSBsJ29wdGlvbiBCPC0tc2hvdz4uIENlICIKKyJmb3JtYXQgc2VyYSB1dGlsaXPDqSBwb3VyIGNoYXF1ZSBwYXF1ZXQgbGlzdMOpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxOTQKK21zZ2lkICIiCisiVGhlIHN0cmluZyBtYXkgcmVmZXJlbmNlIGFueSBzdGF0dXMgZmllbGQgdXNpbmcgdGhlIFwiJHtJPGZpZWxkLW5hbWU+fVwiICIKKyJmb3JtLCBhIGxpc3Qgb2YgdGhlIHZhbGlkIGZpZWxkcyBjYW4gYmUgZWFzaWx5IHByb2R1Y2VkIHVzaW5nIEI8LUk+IG9uIHRoZSAiCisic2FtZSBwYWNrYWdlLiBBIGNvbXBsZXRlIGV4cGxhbmF0aW9uIG9mIHRoZSBmb3JtYXR0aW5nIG9wdGlvbnMgKGluY2x1ZGluZyAiCisiZXNjYXBlIHNlcXVlbmNlcyBhbmQgZmllbGQgdGFiYmluZykgY2FuIGJlIGZvdW5kIGluIHRoZSBleHBsYW5hdGlvbiBvZiB0aGUgIgorIkI8LS1zaG93Zm9ybWF0PiBvcHRpb24gaW4gQjxkcGtnLXF1ZXJ5PigxKS4iCittc2dzdHIgIiIKKyJDZXQgYXJndW1lbnQgZXN0IHVuZSBjaGHDrm5lIHF1aSBwZXV0IHLDqWbDqXJlbmNlciB0b3V0IGNoYW1wIGF2ZWMgbGEgZm9ybWUgIgorIiR7STxmaWVsZC1uYW1lPn3CoDsgdW5lIGxpc3RlIGRlcyBjaGFtcHMgdmFsYWJsZXMgcGV1dCDDqnRyZSBmYWNpbGVtZW50ICIKKyJwcm9kdWl0ZSBhdmVjIGwnb3B0aW9uIEI8LUk+IHN1ciBsZSBtw6ptZSBwYXF1ZXQuIFVuZSBleHBsaWNhdGlvbiBjb21wbMOodGUgIgorImRlcyBvcHRpb25zIGRlIGZvcm1hdGFnZSAoYXZlYyBsZXMgc8OpcXVlbmNlcyBkJ8OpY2hhcHBlbWVudCBldCBsZXMgZXNwYWNlcyAiCisiZW50cmUgbGVzIGNoYW1wcykgc2UgdHJvdXZlIGRhbnMgbGEgcGFnZSBCPGRwa2ctcXVlcnk+KDEpLCBvcHRpb24gQjwtLSIKKyJzaG93Zm9ybWF0Pi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTk2Cittc2dpZCAiVGhlIGRlZmF1bHQgZm9yIHRoaXMgZmllbGQgaXMgXCIke1BhY2thZ2V9XFxldCR7VmVyc2lvbn1cXGVuXCIuIgorbXNnc3RyICJQYXIgZMOpZmF1dCwgbGEgdmFsZXVyIGRlIGNlIGNoYW1wIGVzdCAke1BhY2thZ2V9XFxldCR7VmVyc2lvbn1cXGVuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MTk2CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8LXo+STxjb21wcmVzc19sZXZlbD4iCittc2dpZCAiQjwtej5JPGNvbXByZXNzLWxldmVsPiIKK21zZ3N0ciAiQjwtej5JPG5pdmVhdV9jb21wcmVzc2lvbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MjAwCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJTcGVjaWZ5IHdoaWNoIGNvbXByZXNzaW9uIGxldmVsIHRvIHBhc3MgdG8gdGhlIGNvbXByZXNzb3IgYmFja2VuZCAiCisjfCAicHJvZ3JhbSwgd2hlbiBidWlsZGluZyBhIHBhY2thZ2UuIgorbXNnaWQgIiIKKyJTcGVjaWZ5IHdoaWNoIGNvbXByZXNzaW9uIGxldmVsIHRvIHVzZSBvbiB0aGUgY29tcHJlc3NvciBiYWNrZW5kLCB3aGVuICIKKyJidWlsZGluZyBhIHBhY2thZ2UgKGRlZmF1bHQgaXMgOSBmb3IgZ3ppcCBhbmQgYnppcDIsIDYgZm9yIHh6IGFuZCBsem1hKS4iCittc2dzdHIgIiIKKyJJbmRpcXVlIGxlIG5pdmVhdSBkZSBjb21wcmVzc2lvbiDDoCBmb3VybmlyIGF1IGxvZ2ljaWVsIGRlIGNvbXByZXNzaW9uIGFwcGVsw6kgIgorImVuIHNvdXMtbWFpbiBsb3JzIGRlIGxhIGNvbXByZXNzaW9uIGR1IHBhcXVldC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRlYi4xOjIwMAorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPC1aPkk8Y29tcHJlc3NfdHlwZT4iCittc2dpZCAiQjwtWj5JPGNvbXByZXNzLXR5cGU+IgorbXNnc3RyICJCPC1aPkk8dHlwZV9jb21wcmVzc2lvbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MjA1Cittc2dpZCAiIgorIlNwZWNpZnkgd2hpY2ggY29tcHJlc3Npb24gdHlwZSB0byB1c2Ugd2hlbiBidWlsZGluZyBhIHBhY2thZ2UuIEFsbG93ZWQgIgorInZhbHVlcyBhcmUgSTxnemlwPiwgSTx4ej4sIEk8YnppcDI+LCBJPGx6bWE+LCBhbmQgSTxub25lPiAoZGVmYXVsdCBpcyAiCisiSTxnemlwPikuIgorbXNnc3RyICIiCisiSW5kaXF1ZSBsZSB0eXBlIGRlIGNvbXByZXNzaW9uIMOgIHV0aWxpc2VyIGxvcnMgZGUgbGEgY29uc3RydWN0aW9uIGQndW4gIgorInBhcXVldC4gTGVzIHZhbGV1cnMgYXV0b3Jpc8OpZXMgc29udCBJPGd6aXA+IChsYSB2YWxldXIgcGFyIGTDqWZhdXQpLCBJPHh6PiwgIgorIkk8YnppcDI+LCBJPGx6bWE+IGV0IEk8bm9uZT4gKGF1Y3VuZSBjb21wcmVzc2lvbikuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToyMDUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tbmV3PiIKK21zZ3N0ciAiQjwtLW5ldz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MjEwCittc2dpZCAiIgorIkVuc3VyZXMgdGhhdCBCPGRwa2ctZGViPiBidWlsZHMgYSBgbmV3JyBmb3JtYXQgYXJjaGl2ZS4gVGhpcyBpcyB0aGUgZGVmYXVsdC4iCittc2dzdHIgIiIKKyJTJ2Fzc3VyZSBxdWUgQjxkcGtnLWRlYj4gY29uc3RydWl0IHVuZSBhcmNoaXZlIGF2ZWMgbGUgwqvCoG5vdXZlYXXCoMK7IGZvcm1hdC4gIgorIkMnZXN0IGxlIGNvbXBvcnRlbWVudCBwYXIgZMOpZmF1dC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRlYi4xOjIxMAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1vbGQ+IgorbXNnc3RyICJCPC0tb2xkPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToyMTgKK21zZ2lkICIiCisiRm9yY2VzIEI8ZHBrZy1kZWI+IHRvIGJ1aWxkIGFuIGBvbGQnIGZvcm1hdCBhcmNoaXZlLiBUaGlzIG9sZCBhcmNoaXZlIGZvcm1hdCAiCisiaXMgbGVzcyBlYXNpbHkgcGFyc2VkIGJ5IG5vbi1EZWJpYW4gdG9vbHMgYW5kIGlzIG5vdyBvYnNvbGV0ZTsgaXRzIG9ubHkgdXNlICIKKyJpcyB3aGVuIGJ1aWxkaW5nIHBhY2thZ2VzIHRvIGJlIHBhcnNlZCBieSB2ZXJzaW9ucyBvZiBkcGtnIG9sZGVyIHRoYW4gIgorIjAuOTMuNzYgKFNlcHRlbWJlciAxOTk1KSwgd2hpY2ggd2FzIHJlbGVhc2VkIGFzIGkzODYgYS5vdXQgb25seS4iCittc2dzdHIgIiIKKyJPYmxpZ2UgQjxkcGtnLWRlYj4gw6AgY29uc3RydWlyZSB1bmUgYXJjaGl2ZSBhdmVjIGwnwqvCoGFuY2llbsKgwrsgZm9ybWF0LiBDZSAiCisiZm9ybWF0LCBtb2lucyBmYWNpbGVtZW50IGNvbXByaXMgcGFyIGxlcyBvdXRpbHMgbm9uLURlYmlhbiwgZXN0IG1haW50ZW5hbnQgIgorImTDqXBhc3PDqS4gT24gbCd1dGlsaXNlIHNldWxlbWVudCBxdWFuZCBvbiBjb25zdHJ1aXQgZGVzIHBhcXVldHMgcXVpIGRvaXZlbnQgIgorIsOqdHJlIGFuYWx5c8OpcyBwYXIgZGVzIHZlcnNpb25zIGRlIGRwa2cgcGx1cyBhbmNpZW5uZXMgcXVlIGxhIHZlcnNpb24gMC45My43NiAiCisiKHNlcHRlbWJyZSAxOTk1KSwgcXVpIGZ1dCBwcm9kdWl0ZSB1bmlxdWVtZW50IHBvdXIgbGUgZm9ybWF0IMKrwqBpMzg2IGEub3V0wqDCuy4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRlYi4xOjIxOAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1ub2NoZWNrPiIKK21zZ3N0ciAiQjwtLW5vY2hlY2s+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjIyNAorbXNnaWQgIiIKKyJJbmhpYml0cyBCPGRwa2ctZGViIC0tYnVpbGQ+J3MgdXN1YWwgY2hlY2tzIG9uIHRoZSBwcm9wb3NlZCBjb250ZW50cyBvZiBhbiAiCisiYXJjaGl2ZS4gWW91IGNhbiBidWlsZCBhbnkgYXJjaGl2ZSB5b3Ugd2FudCwgbm8gbWF0dGVyIGhvdyBicm9rZW4sIHRoaXMgd2F5LiIKK21zZ3N0ciAiIgorIkVtcMOqY2hlIGxlcyB2w6lyaWZpY2F0aW9ucyBub3JtYWxlcyBkZSBCPGRwa2ctZGViIC0tYnVpbGQ+IHF1YW50IGF1IGNvbnRlbnUgIgorInByb3Bvc8OpIGQndW5lIGFyY2hpdmUuIERlIGNldHRlIGZhw6dvbiwgb24gcGV1dCBjb25zdHJ1aXJlIG4naW1wb3J0ZSBxdWVsbGUgIgorImFyY2hpdmUsIGF1c3NpIGTDqWZlY3R1ZXVzZSBzb2l0LWVsbGUuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToyMjQgc3RhcnQtc3RvcC1kYWVtb24uODoyNTUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC12PiwgQjwtLXZlcmJvc2U+IgorbXNnc3RyICJCPC12PiwgQjwtLXZlcmJvc2U+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjIyOAorbXNnaWQgIiIKKyJFbmFibGVzIHZlcmJvc2Ugb3V0cHV0LiBUaGlzIGN1cnJlbnRseSBvbmx5IGFmZmVjdHMgQjwtLWV4dHJhY3Q+IG1ha2luZyBpdCAiCisiYmVoYXZlIGxpa2UgQjwtLXZleHRyYWN0Pi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MjI4CisjLCBuby13cmFwCittc2dpZCAiQjwtRD4sIEI8LS1kZWJ1Zz4iCittc2dzdHIgIkI8LUQ+LCBCPC0tZGVidWc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjIzMQorbXNnaWQgIkVuYWJsZXMgZGVidWdnaW5nIG91dHB1dC4gVGhpcyBpcyBub3QgdmVyeSBpbnRlcmVzdGluZy4iCittc2dzdHIgIlBlcm1ldCBsZXMgbWVzc2FnZXMgZGUgZMOpYm9nYWdlLiBDZSBuJ2VzdCBwYXMgdHLDqHMgaW50w6lyZXNzYW50LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToyMzcKK21zZ2lkICIiCisiSWYgc2V0LCBCPGRwa2ctZGViPiB3aWxsIHVzZSBpdCBhcyB0aGUgZGlyZWN0b3J5IGluIHdoaWNoIHRvIGNyZWF0ZSAiCisidGVtcG9yYXJ5IGZpbGVzIGFuZCBkaXJlY3Rvcmllcy4iCittc2dzdHIgIiIKKyJTaSBjZXR0ZSBvcHRpb24gZXN0IHV0aWxpc8OpZSwgQjxkcGtnPiBsJ3V0aWxpc2VyYSBjb21tZSByw6lwZXJ0b2lyZSBwb3VyICIKKyJjcsOpZXIgbGVzIGZpY2hpZXJzIGV0IHLDqXBlcnRvaXJlIHRlbXBvcmFpcmVzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToyNDMKK21zZ2lkICIiCisiQjxkcGtnLWRlYiAtST4gSTxwYWNrYWdlMT5CPC5kZWI+IEk8cGFja2FnZTI+QjwuZGViPiBkb2VzIHRoZSB3cm9uZyB0aGluZy4iCittc2dzdHIgIkI8ZHBrZy1kZWIgLUk+IEk8cGFxdWV0MT5CPC5kZWI+IEk8cGFxdWV0Mj5CPC5kZWI+IHNlIHRyb21wZS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MjUxCittc2dpZCAiIgorIlRoZXJlIGlzIG5vIGF1dGhlbnRpY2F0aW9uIG9uIEI8LmRlYj4gZmlsZXM7IGluIGZhY3QsIHRoZXJlIGlzbid0IGV2ZW4gYSAiCisic3RyYWlnaHRmb3J3YXJkIGNoZWNrc3VtLiAgKEhpZ2hlciBsZXZlbCB0b29scyBsaWtlIEFQVCBzdXBwb3J0ICIKKyJhdXRoZW50aWNhdGluZyBCPC5kZWI+IHBhY2thZ2VzIHJldHJpZXZlZCBmcm9tIGEgZ2l2ZW4gcmVwb3NpdG9yeSwgYW5kIG1vc3QgIgorInBhY2thZ2VzIG5vd2FkYXlzIHByb3ZpZGUgYW4gbWQ1c3VtIGNvbnRyb2wgZmlsZSBnZW5lcmF0ZWQgYnkgZGViaWFuL3J1bGVzLiAiCisiVGhvdWdoIHRoaXMgaXMgbm90IGRpcmVjdGx5IHN1cHBvcnRlZCBieSB0aGUgbG93ZXIgbGV2ZWwgdG9vbHMuKSIKK21zZ3N0ciAiIgorIklsIG4nZXhpc3RlIHBhcyBkJ2F1dGhlbnRpZmljYXRpb24gZGVzIGZpY2hpZXJzIEI8LmRlYj4uIElsIG4nZXhpc3RlIG3Dqm1lICIKKyJwYXMgZGUgc3lzdMOobWUgZGUgc29tbWUgZGUgY29udHLDtGxlIGltbcOpZGlhdC4gTGVzIG91dGlscyBkZSBoYXV0IG5pdmVhdSAiCisiY29tbWUgQVBUIGfDqHJlbnQgbCdhdXRoZW50aWZpY2F0aW9uIGRlcyBwYXF1ZXRzIEI8LmRlYj4gcsOpY3Vww6lyw6lzIGRlcHVpcyB1biAiCisiZMOpcMO0dCBkb25uw6kgZXQgbGEgcGx1cGFydCBkZXMgcGFxdWV0cyBmb3Vybmlzc2VudCBkw6lzb3JtYWlzIHVuZSBjb21tZSBkZSAiCisiY29udHLDtGxlIE1ENSBjcsOpw6llIHBhciBkZWJpYW4vcnVsZXMuIENlcGVuZGFudCwgY2VjaSBuJ2VzdCBwYXMgZGlyZWN0ZW1lbnQgIgorImfDqXLDqSBwYXIgbGVzIG91dGlscyBkZSBwbHVzIGJhcyBuaXZlYXUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjI1OAorbXNnaWQgIiIKKyJEbyBub3QgYXR0ZW1wdCB0byB1c2UganVzdCBCPGRwa2ctZGViPiB0byBpbnN0YWxsIHNvZnR3YXJlISBZb3UgbXVzdCB1c2UgIgorIkI8ZHBrZz4gcHJvcGVyIHRvIGVuc3VyZSB0aGF0IGFsbCB0aGUgZmlsZXMgYXJlIGNvcnJlY3RseSBwbGFjZWQgYW5kIHRoZSAiCisicGFja2FnZSdzIHNjcmlwdHMgcnVuIGFuZCBpdHMgc3RhdHVzIGFuZCBjb250ZW50cyByZWNvcmRlZC4iCittc2dzdHIgIiIKKyJOJ2Vzc2F5ZXogcGFzIGQnaW5zdGFsbGVyIHVuIGxvZ2ljaWVsIGF2ZWMgQjxkcGtnLWRlYsKgIT4gVm91cyBkZXZleiB1dGlsaXNlciAiCisiQjxkcGtnPiBwb3VyIMOqdHJlIHPDu3IgcXVlIHRvdXMgc2VzIGZpY2hpZXJzIHNvbnQgY29ycmVjdGVtZW50IG1pcyBlbiBwbGFjZSwgIgorInF1ZSBsZXMgc2NyaXB0cyBkdSBwYXF1ZXQgc29udCBleMOpY3V0w6lzIGV0IHF1ZSBzb24gY29udGVudSBldCBzb24gw6l0YXQgc29udCAiCisiZW5yZWdpc3Ryw6lzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToyNjQKK21zZ2lkICJCPGRlYj4oNSksIEI8ZGViLWNvbnRyb2w+KDUpLCBCPGRwa2c+KDEpLCBCPGRzZWxlY3Q+KDEpLiIKK21zZ3N0ciAiQjxkZWI+KDUpLCBCPGRlYi1jb250cm9sPig1KSwgQjxkcGtnPigxKSwgQjxkc2VsZWN0PigxKS4iCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLWRpdmVydC44OjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLWRpdmVydCIKK21zZ3N0ciAiZHBrZy1kaXZlcnQiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6NAorbXNnaWQgImRwa2ctZGl2ZXJ0IC0gb3ZlcnJpZGUgYSBwYWNrYWdlJ3MgdmVyc2lvbiBvZiBhIGZpbGUiCittc2dzdHIgIiIKKyJkcGtnLWRpdmVydCAtIHJlbXBsYWNlciBsYSB2ZXJzaW9uIGQndW4gZmljaGllciBjb250ZW51IGRhbnMgdW4gcGFxdWV0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo5CisjLCBmdXp6eQorI3wgbXNnaWQgIkI8ZHBrZy1kaXZlcnQ+IFtJPG9wdGlvbnM+XSBJPGNvbW1hbmQ+IgorbXNnaWQgIkI8ZHBrZy1kaXZlcnQ+IFtJPG9wdGlvbj4uLi5dIEk8Y29tbWFuZD4iCittc2dzdHIgIkI8ZHBrZy1kaXZlcnQ+IFtJPG9wdGlvbnM+XSBJPGNvbW1hbmRlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODoxMworbXNnaWQgIiIKKyJCPGRwa2ctZGl2ZXJ0PiBpcyB0aGUgdXRpbGl0eSB1c2VkIHRvIHNldCB1cCBhbmQgdXBkYXRlIHRoZSBsaXN0IG9mICIKKyJkaXZlcnNpb25zLiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1kaXZlcnQ+IHNlcnQgw6AgY3LDqWVyIGV0IMOgIG1ldHRyZSDDoCBqb3VyIGxhIGxpc3RlIGRlcyBkw6l0b3VybmVtZW50cy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6MjMKK21zZ2lkICIiCisiRmlsZSBJPGRpdmVyc2lvbnM+IGFyZSBhIHdheSBvZiBmb3JjaW5nIEI8ZHBrZz4oMSkgIG5vdCB0byBpbnN0YWxsIGEgZmlsZSAiCisiaW50byBpdHMgbG9jYXRpb24sIGJ1dCB0byBhIEk8ZGl2ZXJ0ZWQ+IGxvY2F0aW9uLiBEaXZlcnNpb25zIGNhbiBiZSB1c2VkICIKKyJ0aHJvdWdoIHRoZSBEZWJpYW4gcGFja2FnZSBzY3JpcHRzIHRvIG1vdmUgYSBmaWxlIGF3YXkgd2hlbiBpdCBjYXVzZXMgYSAiCisiY29uZmxpY3QuIFN5c3RlbSBhZG1pbmlzdHJhdG9ycyBjYW4gYWxzbyB1c2UgaXQgdG8gb3ZlcnJpZGUgc29tZSBwYWNrYWdlJ3MgIgorImNvbmZpZ3VyYXRpb24gZmlsZSwgb3Igd2hlbmV2ZXIgc29tZSBmaWxlcyAod2hpY2ggYXJlbid0IG1hcmtlZCBhcyAiCisiJ2NvbmZmaWxlcycpIG5lZWQgdG8gYmUgcHJlc2VydmVkIGJ5IGRwa2csIHdoZW4gaW5zdGFsbGluZyBhIG5ld2VyIHZlcnNpb24gIgorIm9mIGEgcGFja2FnZSB3aGljaCBjb250YWlucyB0aG9zZSBmaWxlcy4iCittc2dzdHIgIiIKKyJMZSDCq8KgZMOpdG91cm5lbWVudMKgwrsgZGUgZmljaGllciBlc3QgdW4gbW95ZW4gZCdvYmxpZ2VyIEI8ZHBrZz4oMSkgw6AgaW5zdGFsbGVyICIKKyJ1biBmaWNoaWVyIG5vbiBwYXMgZGFucyBsJ2VtcGxhY2VtZW50IHByw6l2dSBtYWlzIGRhbnMgdW4gYXV0cmUuIExlcyBzY3JpcHRzICIKKyJkZXMgcGFxdWV0cyBEZWJpYW4gc2Ugc2VydmVudCBkZSBsYSBkw6l2aWF0aW9uIHBvdXIgZMOpcGxhY2VyIGxlcyBmaWNoaWVycyBxdWkgIgorImNyw6llbnQgZGVzIGNvbmZsaXRzLiBMZXMgYWRtaW5pc3RyYXRldXJzIHMnZW4gc2VydmVudCwgbG9ycyBkZSAiCisibCdpbnN0YWxsYXRpb24gZCd1bmUgdmVyc2lvbiBwbHVzIHLDqWNlbnRlIGQndW4gcGFxdWV0LCBwb3VyIHJlbXBsYWNlciBsZXMgIgorImZpY2hpZXJzIGRlIGNvbmZpZ3VyYXRpb24gZGUgY2VydGFpbnMgcGFxdWV0cywgb3UgYmllbiDDoCBjaGFxdWUgZm9pcyBxdWUgZGVzICIKKyJmaWNoaWVycyAocXVpIG5lIHNvbnQgcGFzIGRlcyDCq8KgY29uZmZpbGVzwqDCuykgZG9pdmVudCDDqnRyZSBwcsOpc2VydsOpcyBwYXIgZHBrZy4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRpdmVydC44OjI1CisjLCBuby13cmFwCittc2dpZCAiW0I8LS1hZGQ+XSBJPGZpbGU+IgorbXNnc3RyICJbQjwtLWFkZD5dIEk8ZmljaGllcj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6MjgKK21zZ2lkICJBZGQgYSBkaXZlcnNpb24gZm9yIEk8ZmlsZT4uIgorbXNnc3RyICJBam91dGVyIHVuIGTDqXRvdXJuZW1lbnQgcG91ciBsZSBJPGZpY2hpZXI+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGl2ZXJ0Ljg6MjggZHBrZy1zdGF0b3ZlcnJpZGUuODozNQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1yZW1vdmU+STwgZmlsZT4iCittc2dzdHIgIkI8LS1yZW1vdmU+STwgZmljaGllcj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6MzEKK21zZ2lkICJSZW1vdmUgYSBkaXZlcnNpb24gZm9yIEk8ZmlsZT4uIgorbXNnc3RyICJTdXBwcmltZXIgdW4gZMOpdG91cm5lbWVudCBwb3VyIGxlIEk8ZmljaGllcj4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kaXZlcnQuODozMQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1saXN0Pkk8IGdsb2ItcGF0dGVybj4iCittc2dzdHIgIkI8LS1saXN0PiBJPGV4cC1yZWc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjM0Cittc2dpZCAiTGlzdCBkaXZlcnNpb25zIG1hdGNoaW5nIEk8Z2xvYi1wYXR0ZXJuPi4iCittc2dzdHIgIkxpc3RlciBsZXMgZMOpdG91cm5lbWVudHMgcXVpIGNvcnJlc3BvbmRlbnQgw6AgSTxleHAtcmVnPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRpdmVydC44OjM0CisjLCBuby13cmFwCittc2dpZCAiQjwtLWxpc3RwYWNrYWdlPkk8IGZpbGU+IgorbXNnc3RyICJCPC0tbGlzdHBhY2thZ2U+STwgZmljaGllcj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6MzgKK21zZ2lkICIiCisiUHJpbnQgdGhlIG5hbWUgb2YgdGhlIHBhY2thZ2UgdGhhdCBkaXZlcnRzIEk8ZmlsZT4uICBQcmludHMgTE9DQUwgaWYgSTxmaWxlPiAiCisiaXMgbG9jYWxseSBkaXZlcnRlZCBhbmQgbm90aGluZyBpZiBJPGZpbGU+IGlzIG5vdCBkaXZlcnRlZC4iCittc2dzdHIgIiIKKyJBZmZpY2hlciBsZSBub20gZHUgcGFxdWV0IHF1aSBkw6lyaXZlICjCq8KgZGl2ZXJ0wqDCuykgSTxmaWNoaWVyPi4gQWZmaWNoZSBMT0NBTCAiCisic2kgSTxmaWNoaWVyPiBlc3QgZMOpcml2w6kgbG9jYWxlbWVudCBldCBuJ2FmZmljaGUgcmllbiBzaSBJPGZpY2hpZXI+IG4nZXN0ICIKKyJwYXMgZMOpcml2w6kuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kaXZlcnQuODozOAorIywgbm8td3JhcAorbXNnaWQgIkI8LS10cnVlbmFtZT5JPCBmaWxlPiIKK21zZ3N0ciAiQjwtLXRydWVuYW1lPkk8IGZpY2hpZXI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjQxCittc2dpZCAiUHJpbnQgdGhlIHJlYWwgbmFtZSBmb3IgYSBkaXZlcnRlZCBmaWxlLiIKK21zZ3N0ciAiQWZmaWNoZXIgbGUgdnJhaSBub20gZCd1biBmaWNoaWVyIGTDqXRvdXJuw6kuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kaXZlcnQuODo0MyBkcGtnLXN0YXRvdmVycmlkZS44OjUyIGRzZWxlY3QuMTo0NAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjMyOAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1hZG1pbmRpcj5JPCBkaXJlY3Rvcnk+IgorbXNnc3RyICJCPC0tYWRtaW5kaXI+STwgcsOpcGVydG9pcmU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjQ2Cittc2dpZCAiIgorIlNldCB0aGUgZHBrZyBkYXRhIGRpcmVjdG9yeSB0byBJPGRpcmVjdG9yeT4gKGRlZmF1bHQ6IEk8L3Zhci9saWIvZHBrZz4pLiIKK21zZ3N0ciAiIgorIkTDqWZpbmlyIGxlIHLDqXBlcnRvaXJlIGRlIGRvbm7DqWVzIGRlIERwa2cgY29tbWUgSTxyw6lwZXJ0b2lyZT4gKHBhciBkw6lmYXV0ICIKKyJjJ2VzdCBJPC92YXIvbGliL2Rwa2c+KS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRpdmVydC44OjQ2CisjLCBuby13cmFwCittc2dpZCAiQjwtLWRpdmVydD5JPCBkaXZlcnQtdG8+IgorbXNnc3RyICJCPC0tZGl2ZXJ0Pkk8IGTDqXRvdXJuZXItZGFucz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6NTAKK21zZ2lkICIiCisiSTxkaXZlcnQtdG8+IGlzIHRoZSBsb2NhdGlvbiB3aGVyZSB0aGUgdmVyc2lvbnMgb2YgSTxmaWxlPiwgYXMgcHJvdmlkZWQgYnkgIgorIm90aGVyIHBhY2thZ2VzLCB3aWxsIGJlIGRpdmVydGVkLiIKK21zZ3N0ciAiIgorIkk8ZMOpdG91cm5lci1kYW5zPiBlc3QgbCdlbXBsYWNlbWVudCB2ZXJzIGxlcXVlbCBsZXMgdmVyc2lvbnMgZGUgSTxmaWNoaWVyPiwgIgorInRlbCBxdSdpbCBlc3QgZG9ubsOpIHBhciBkJ2F1dHJlcyBwYXF1ZXRzLCBzZXJvbnQgZMOpdG91cm7DqWVzLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGl2ZXJ0Ljg6NTAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tbG9jYWw+IgorbXNnc3RyICJCPC0tbG9jYWw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjU2Cittc2dpZCAiIgorIlNwZWNpZmllcyB0aGF0IGFsbCBwYWNrYWdlcycgdmVyc2lvbnMgb2YgdGhpcyBmaWxlIGFyZSBkaXZlcnRlZC4gIFRoaXMgIgorIm1lYW5zLCB0aGF0IHRoZXJlIGFyZSBubyBleGNlcHRpb25zLCBhbmQgd2hhdGV2ZXIgcGFja2FnZSBpcyBpbnN0YWxsZWQsIHRoZSAiCisiZmlsZSBpcyBkaXZlcnRlZC4gVGhpcyBjYW4gYmUgdXNlZCBieSBhbiBhZG1pbiB0byBpbnN0YWxsIGEgbG9jYWxseSBtb2RpZmllZCAiCisidmVyc2lvbi4iCittc2dzdHIgIiIKKyJJbmRpcXVlIHF1ZSB0b3V0ZXMgbGVzIHZlcnNpb25zIGRlIGNlIGZpY2hpZXIgc29udCBkw6l0b3VybsOpZXMuIENlbGEgc2lnbmlmaWUgIgorInF1J2lsIG4neSBhIHBhcyBkJ2V4Y2VwdGlvbiBldCBxdWVsIHF1ZSBzb2l0IGxlIHBhcXVldCBpbnN0YWxsw6ksIGNlIGZpY2hpZXIgIgorInNlcmEgZMOpdG91cm7DqS4gVW4gYWRtaW5pc3RyYXRldXIgcGV1dCBwYXIgZXhlbXBsZSBpbnN0YWxsZXIgdW5lIHZlcnNpb24gIgorIm1vZGlmacOpZSBsb2NhbGVtZW50LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGl2ZXJ0Ljg6NTYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tcGFja2FnZT5JPCBwYWNrYWdlPiIKK21zZ3N0ciAiQjwtLXBhY2thZ2U+STwgcGFxdWV0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo2MQorbXNnaWQgIiIKKyJJPHBhY2thZ2U+IGlzIHRoZSBuYW1lIG9mIGEgcGFja2FnZSB3aG9zZSBjb3B5IG9mIEk8ZmlsZT4gd2lsbCBub3QgYmUgIgorImRpdmVydGVkLiBpLmUuIEk8ZmlsZT4gd2lsbCBiZSBkaXZlcnRlZCBmb3IgYWxsIHBhY2thZ2VzIGV4Y2VwdCBJPHBhY2thZ2U+LiIKK21zZ3N0ciAiIgorIkk8cGFxdWV0PiBlc3QgbGUgbm9tIGR1IHBhcXVldCBkb250IGxhIGNvcGllIGRlIEk8ZmljaGllcj4gbmUgc2VyYSBwYXMgIgorImTDqXRvdXJuw6llLiBBdXRyZW1lbnQgZGl0LCBJPGZpY2hpZXI+IHNlcmEgZMOpdG91cm7DqSBzYXVmIHMnaWwgYXBwYXJ0aWVudCDDoCAiCisiSTxwYXF1ZXQ+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGl2ZXJ0Ljg6NjEgZHBrZy1zdGF0b3ZlcnJpZGUuODo2NCB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzUwCisjLCBuby13cmFwCittc2dpZCAiQjwtLXF1aWV0PiIKK21zZ3N0ciAiQjwtLXF1aWV0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo2NAorbXNnaWQgIlF1aWV0IG1vZGUsIGkuZS4gbm8gdmVyYm9zZSBvdXRwdXQuIgorbXNnc3RyICJNb2RlIHNpbGVuY2lldXgsIHBhcyBkZSBiYXZhcmRhZ2UuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kaXZlcnQuODo2NAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1yZW5hbWU+IgorbXNnc3RyICJCPC0tcmVuYW1lPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo2OAorbXNnaWQgIiIKKyJBY3R1YWxseSBtb3ZlIHRoZSBmaWxlIGFzaWRlIChvciBiYWNrKS4gQjxkcGtnLWRpdmVydD4gd2lsbCBhYm9ydCBvcGVyYXRpb24gIgorImluIGNhc2UgdGhlIGRlc3RpbmF0aW9uIGZpbGUgYWxyZWFkeSBleGlzdHMuIgorbXNnc3RyICIiCisiTWV0IGVuIGZhaXQgbGUgZmljaGllciBkZSBjw7R0w6kuIFF1YW5kIGxlIGZpY2hpZXIgZGUgZGVzdGluYXRpb24gZXhpc3RlLCAiCisiQjxkcGtnLWRpdmVydD4gaW50ZXJyb21wdCBsJ29ww6lyYXRpb24uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kaXZlcnQuODo2OAorIywgbm8td3JhcAorbXNnaWQgIkI8LS10ZXN0PiIKK21zZ3N0ciAiQjwtLXRlc3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjcxCittc2dpZCAiVGVzdCBtb2RlLCBpLmUuIGRvbid0IGFjdHVhbGx5IHBlcmZvcm0gYW55IGNoYW5nZXMsIGp1c3QgZGVtb25zdHJhdGUuIgorbXNnc3RyICJNb2RlIGRlIHRlc3QsIG5lIHJpZW4gbW9kaWZpZXIgcsOpZWxsZW1lbnQsIHNldWxlbWVudCBtb250cmVyLiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctZGl2ZXJ0Ljg6NzgKKyMsIG5vLXdyYXAKK21zZ2lkICJOT1RFUyIKK21zZ3N0ciAiTk9URVMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6ODIKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIldoZW4gYWRkaW5nLCBkZWZhdWx0IGlzIEI8LS1sb2NhbD4gYW5kIEI8LS1kaXZlcnQ+IEk8RTxsdD5vcmlnaW5hbEU8Z3Q+LiIKKyN8ICJkaXN0cmliPi4gV2hlbiByZW1vdmluZywgQjwtLXBhY2thZ2U+IG9yIEI8LS1sb2NhbD4gYW5kIEI8LS1kaXZlcnQ+IG11c3QgIgorI3wgIm1hdGNoIGlmIHNwZWNpZmllZC4iCittc2dpZCAiIgorIldoZW4gYWRkaW5nLCBkZWZhdWx0IGlzIEI8LS1sb2NhbD4gYW5kIEI8LS1kaXZlcnQ+IEk8b3JpZ2luYWw+QjwuZGlzdHJpYj4uICIKKyJXaGVuIHJlbW92aW5nLCBCPC0tcGFja2FnZT4gb3IgQjwtLWxvY2FsPiBhbmQgQjwtLWRpdmVydD4gbXVzdCBtYXRjaCBpZiAiCisic3BlY2lmaWVkLiIKK21zZ3N0ciAiIgorIlBvdXIgbCdham91dCwgbGUgZMOpZmF1dCBlc3QgQjwtLWxvY2FsPiBldCBCPC0tZGl2ZXJ0PiBJPCBFPGx0Pm9yaWdpbmFsRTxndD4uIgorImRpc3RyaWI+LiBQb3VyIGxhIHN1cHByZXNzaW9uLCBCPC0tcGFja2FnZT4gb3UgQjwtLWxvY2FsPiBldCBCPC0tZGl2ZXJ0PiAiCisiZG9pdmVudCBjb3JyZXNwb25kcmUgcXVhbmQgaWxzIHNvbnQgcHLDqWNpc8Opcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6ODQKK21zZ2lkICJEaXJlY3RvcmllcyBjYW4ndCBiZSBkaXZlcnRlZCB3aXRoIEI8ZHBrZy1kaXZlcnQ+LiIKK21zZ3N0ciAiT24gbmUgcGV1dCBwYXMgZMOpdG91cm5lciBkZXMgcsOpcGVydG9pcmVzIGF2ZWMgQjxkcGtnLWRpdmVydD4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjkwCittc2dpZCAiIgorIkNhcmUgc2hvdWxkIGJlIHRha2VuIHdoZW4gZGl2ZXJ0aW5nIHNoYXJlZCBsaWJyYXJpZXMsIEI8bGRjb25maWc+KDgpICAiCisiY3JlYXRlcyBhIHN5bWJvbGljIGxpbmsgYmFzZWQgb24gdGhlIERUX1NPTkFNRSBmaWVsZCBlbWJlZGRlZCBpbiB0aGUgIgorImxpYnJhcnkuICBCZWNhdXNlIGxkY29uZmlnIGRvZXNuJ3QgaG9ub3VyIGRpdmVydHMgKG9ubHkgZHBrZyBkb2VzKSwgdGhlICIKKyJzeW1saW5rIG1heSBlbmQgdXAgcG9pbnRpbmcgYXQgdGhlIGRpdmVydGVkIGxpYnJhcnksIGlmIGEgZGl2ZXJ0ZWQgbGlicmFyeSAiCisiaGFzIHRoZSBzYW1lIFNPTkFNRSBhcyB0aGUgdW5kaXZlcnRlZCBvbmUuIgorbXNnc3RyICIiCisiSWwgZmF1dCBmYWlyZSBhdHRlbnRpb24gcXVhbmQgdW5lIGJpYmxpb3Row6hxdWUgcGFydGFnw6llIGVzdCBkw6l0b3VybsOpZS4gIgorIkI8bGRjb25maWc+KDgpIGNyw6llIHVuIGxpZW4gc3ltYm9saXF1ZSDDoCBwYXJ0aXIgZHUgY2hhbXAgRFRfU09OQU1FIGVtYmFycXXDqSAiCisiZGFucyBsYSBiaWJsaW90aMOocXVlLiBsZGNvbmZpZyBuZSBjb25uYcOudCBwYXMgbGVzIGTDqXRvdXJuZW1lbnRzIChzZXVsIGRwa2cgIgorImxlIGZhaXQpLCBldCBzaSB1bmUgYmlibGlvdGjDqHF1ZSBkw6l0b3VybsOpZSBwb3Nzw6hkZSBsZSBtw6ptZSBTT05BTUUgcXVlIGxhICIKKyJiaWJsaW90aMOocXVlIG5vbiBkw6l0b3VybsOpZSwgbGUgbGllbiBzeW1ib2xpcXVlIHBldXQgcG9pbnRlciBlbiBmaW4gZGUgY29tcHRlICIKKyJzdXIgbGEgYmlibGlvdGjDqHF1ZSBkw6l0b3VybsOpZS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6OTUKK21zZ2lkICIiCisiVG8gZGl2ZXJ0IGFsbCBjb3BpZXMgb2YgYSBJPC91c3IvYmluL2V4YW1wbGU+IHRvIEk8L3Vzci9iaW4vZXhhbXBsZS5mb28+LCBpLiIKKyJlLiBkaXJlY3RzIGFsbCBwYWNrYWdlcyBwcm92aWRpbmcgSTwvdXNyL2Jpbi9leGFtcGxlPiB0byBpbnN0YWxsIGl0IGFzIEk8LyIKKyJ1c3IvYmluL2V4YW1wbGUuZm9vPiwgcGVyZm9ybWluZyB0aGUgcmVuYW1lIGlmIHJlcXVpcmVkOiIKK21zZ3N0ciAiIgorIlBvdXIgZMOpdG91cm5lciB0b3V0ZXMgbGVzIGNvcGllcyBkZSBJPC91c3IvYmluL2V4YW1wbGU+IHZlcnMgSTwvdXNyL2Jpbi8iCisiZXhhbXBsZS5mb28+LCBjJ2VzdC3DoC1kaXJlIGRlbWFuZGVyIGF1eCBwYXF1ZXRzIHF1aSBmb3Vybmlzc2VudCBJPC91c3IvYmluLyIKKyJleGFtcGxlPiBkZSBsJ2luc3RhbGxlciBkYW5zIEk8L3Vzci9iaW4vZXhhbXBsZS5mb28+LCBlbiBlZmZlY3R1YW50IGxlICIKKyJjaGFuZ2VtZW50IGRlIG5vbSBzaSBuw6ljZXNzYWlyZcKgOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo5NworbXNnaWQgImRwa2ctZGl2ZXJ0IC0tZGl2ZXJ0IC91c3IvYmluL2V4YW1wbGUuZm9vIC0tcmVuYW1lIC91c3IvYmluL2V4YW1wbGUiCittc2dzdHIgImRwa2ctZGl2ZXJ0IC0tZGl2ZXJ0IC91c3IvYmluL2V4YW1wbGUuZm9vIC0tcmVuYW1lIC91c3IvYmluL2V4YW1wbGUiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6OTkgZHBrZy1kaXZlcnQuODoxMDkKK21zZ2lkICJUbyByZW1vdmUgdGhhdCBkaXZlcnNpb246IgorbXNnc3RyICJQb3VyIHN1cHByaW1lciBjZSBkw6l0b3VybmVtZW50wqA6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjEwMQorbXNnaWQgImRwa2ctZGl2ZXJ0IC0tcmVuYW1lIC0tcmVtb3ZlIC91c3IvYmluL2V4YW1wbGUiCittc2dzdHIgImRwa2ctZGl2ZXJ0IC0tcmVuYW1lIC0tcmVtb3ZlIC91c3IvYmluL2V4YW1wbGUiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6MTA1Cittc2dpZCAiIgorIlRvIGRpdmVydCBhbnkgcGFja2FnZSB0cnlpbmcgdG8gaW5zdGFsbCBJPC91c3IvYmluL2V4YW1wbGU+IHRvIEk8L3Vzci9iaW4vIgorImV4YW1wbGUuZm9vPiwgZXhjZXB0IHlvdXIgb3duIEk8d2liYmxlPiBwYWNrYWdlOiIKK21zZ3N0ciAiIgorIlBvdXIgZMOpdG91cm5lciB1biBwYXF1ZXQgcXVpIHZldXQgaW5zdGFsbGVyIEk8L3Vzci9iaW4vZXhhbXBsZT4gZGFucyBJPC91c3IvIgorImJpbi9leGFtcGxlLmZvbz4sIHNhdWYgdm90cmUgcHJvcHJlIHBhcXVldCBJPHdpYmJsZT7CoDoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6MTA3Cittc2dpZCAiIgorImRwa2ctZGl2ZXJ0IC0tcGFja2FnZSB3aWJibGUgLS1kaXZlcnQgL3Vzci9iaW4vZXhhbXBsZS5mb28gLS1yZW5hbWUgL3Vzci9iaW4vIgorImV4YW1wbGUiCittc2dzdHIgIiIKKyJkcGtnLWRpdmVydCAtLXBhY2thZ2Ugd2liYmxlIC0tZGl2ZXJ0IC91c3IvYmluL2V4YW1wbGUuZm9vIC0tcmVuYW1lIC91c3IvYmluLyIKKyJleGFtcGxlIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjExMQorbXNnaWQgImRwa2ctZGl2ZXJ0IC0tcGFja2FnZSB3aWJibGUgLS1yZW5hbWUgLS1yZW1vdmUgL3Vzci9iaW4vZXhhbXBsZSIKK21zZ3N0ciAiZHBrZy1kaXZlcnQgLS1wYWNrYWdlIHdpYmJsZSAtLXJlbmFtZSAtLXJlbW92ZSAvdXNyL2Jpbi9leGFtcGxlIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kaXZlcnQuODoxMTMgZHBrZy1xdWVyeS4xOjIwNSBkcGtnLXN0YXRvdmVycmlkZS44OjY5IGRwa2ctdHJpZ2dlci4xOjYxCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzU1CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8RFBLR19NQUlOVFNDUklQVF9BUkNIPiIKK21zZ2lkICJCPERQS0dfQURNSU5ESVI+IgorbXNnc3RyICJCPERQS0dfTUFJTlRTQ1JJUFRfQVJDSD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6MTE3IGRwa2ctcXVlcnkuMToyMDkgZHBrZy1zdGF0b3ZlcnJpZGUuODo3MyBkcGtnLXRyaWdnZXIuMTo2NQorbXNnaWQgIiIKKyJJZiBzZXQgYW5kIHRoZSBCPC0tYWRtaW5kaXI+IG9wdGlvbiBoYXMgbm90IGJlZW4gc3BlY2lmaWVkLCBpdCB3aWxsIGJlIHVzZWQgIgorImFzIHRoZSBkcGtnIGRhdGEgZGlyZWN0b3J5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjEyMQorbXNnaWQgIiIKKyJJZiBzZXQgYW5kIHRoZSBCPC0tbG9jYWw+IGFuZCBCPC0tcGFja2FnZT4gb3B0aW9ucyBoYXZlIG5vdCBiZWVuIHNwZWNpZmllZCwgIgorIkI8ZHBrZy1kaXZlcnQ+IHdpbGwgdXNlIGl0IGFzIHRoZSBwYWNrYWdlIG5hbWUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRpdmVydC44OjEyMworIywgbm8td3JhcAorbXNnaWQgIkk8L3Zhci9saWIvZHBrZy9kaXZlcnNpb25zPiIKK21zZ3N0ciAiSTwvdmFyL2xpYi9kcGtnL2RpdmVyc2lvbnM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjEyOAorbXNnaWQgIiIKKyJGaWxlIHdoaWNoIGNvbnRhaW5zIHRoZSBjdXJyZW50IGxpc3Qgb2YgZGl2ZXJzaW9ucyBvZiB0aGUgc3lzdGVtLiBJdCBpcyAiCisibG9jYXRlZCBpbiB0aGUgZHBrZyBhZG1pbmlzdHJhdGlvbiBkaXJlY3RvcnksIGFsb25nIHdpdGggb3RoZXIgZmlsZXMgIgorImltcG9ydGFudCB0byBkcGtnLCBzdWNoIGFzIEk8c3RhdHVzPiBvciBJPGF2YWlsYWJsZT4uIgorbXNnc3RyICIiCisiQ2UgZmljaGllciBjb250aWVudCBsYSBsaXN0ZSBkZXMgZMOpdG91cm5lbWVudHMgZW4gb2V1dnJlIHN1ciBsZSBzeXN0w6htZS4gSWwgIgorInNlIHRyb3V2ZSBkYW5zIGxlIHLDqXBlcnRvaXJlIGQnYWRtaW5pc3RyYXRpb24gZGUgZHBrZywgYXZlYyBkJ2F1dHJlcyAiCisiZmljaGllcnMgaW1wb3J0YW50cyBjb21tZSDCq8Kgc3RhdHVzwqDCuyBvdSDCq8KgYXZhaWxhYmxlwqDCuy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6MTMxCittc2dpZCAiIgorIk5vdGU6IEI8ZHBrZy1kaXZlcnQ+IHByZXNlcnZlcyB0aGUgb2xkIGNvcHkgb2YgdGhpcyBmaWxlLCB3aXRoIGV4dGVuc2lvbiBJPC0iCisib2xkPiwgYmVmb3JlIHJlcGxhY2luZyBpdCB3aXRoIHRoZSBuZXcgb25lLiIKK21zZ3N0ciAiIgorIk5vdGXCoDogQjxkcGtnLWRpdmVydD4gcHLDqXNlcnZlIGwnYW5jaWVubmUgY29waWUgZGUgY2UgZmljaGllciwgYXZlYyAiCisibCdleHRlbnNpb24gwqvCoC1vbGTCoMK7LCBhdmFudCBkZSBsYSByZW1wbGFjZXIgcGFyIGxhIG5vdXZlbGxlLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODoxMzcgdXBkYXRlLWFsdGVybmF0aXZlcy44OjQ5NgorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAxOTk1IElhbiBKYWNrc29uIgorbXNnc3RyICJDb3B5cmlnaHQgXFwoY28gMTk5NSBJYW4gSmFja3NvbiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLWdlbmNoYW5nZXMiCittc2dzdHIgImRwa2ctZ2VuY2hhbmdlcyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6NAorbXNnaWQgImRwa2ctZ2VuY2hhbmdlcyAtIGdlbmVyYXRlIERlYmlhbiAuY2hhbmdlcyBmaWxlcyIKK21zZ3N0ciAiZHBrZy1nZW5jaGFuZ2VzIC0gQ3LDqWVyIGRlcyBmaWNoaWVycyDCq8KgLmNoYW5nZXPCoMK7LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6OAorIywgZnV6enkKKyN8IG1zZ2lkICJCPGRwa2ctZ2VuY2hhbmdlcz4gW0k8b3B0aW9ucz5dIgorbXNnaWQgIkI8ZHBrZy1nZW5jaGFuZ2VzPiBbSTxvcHRpb24+Li4uXSIKK21zZ3N0ciAiQjxkcGtnLWdlbmNoYW5nZXM+IFtJPG9wdGlvbnM+XSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6MTYKK21zZ2lkICIiCisiQjxkcGtnLWdlbmNoYW5nZXM+IHJlYWRzIGluZm9ybWF0aW9uIGZyb20gYW4gdW5wYWNrZWQgYW5kIGJ1aWx0IERlYmlhbiAiCisic291cmNlIHRyZWUgYW5kIGZyb20gdGhlIGZpbGVzIGl0IGhhcyBnZW5lcmF0ZWQgYW5kIGdlbmVyYXRlcyBhIERlYmlhbiAiCisidXBsb2FkIGNvbnRyb2wgZmlsZSAoQjwuY2hhbmdlcz4gZmlsZSkuIgorbXNnc3RyICIiCisiQjxkcGtnLWdlbmNoYW5nZXM+IGxpdCBsZXMgaW5mb3JtYXRpb25zIMOgIGxhIGZvaXMgZGFucyB1bmUgYXJib3Jlc2NlbmNlICIKKyJkZWJpYW4gZMOpcGFxdWV0w6llIGV0IGTDqWrDoCBjb25zdHJ1aXRlIGV0IHN1ciBsZXMgZmljaGllcnMgcXVpIG9udCDDqXTDqSBjcsOpw6lzwqA7ICIKKyJwdWlzIGlsIGNyw6llIHVuIGZpY2hpZXIgZGUgY29udHLDtGxlIHBvdXIgbGEgbWlzZSBlbiBwbGFjZSBkYW5zIGwnYXJjaGl2ZSAiCisiRGViaWFuIChjJ2VzdCBsZSBmaWNoaWVyIEI8LmNoYW5nZXM+KS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbmNoYW5nZXMuMToxOAorIywgbm8td3JhcAorbXNnaWQgIkI8LWI+LCBCPC1CPiwgQjwtQT4iCittc2dzdHIgIkI8LWI+LCBCPC1CPiwgQjwtQT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjI3Cittc2dpZCAiIgorIlNwZWNpZmllcyB0aGF0IGEgYmluYXJ5LW9ubHkgYnVpbGQgaXMgdGFraW5nIHBsYWNlIChubyBzb3VyY2UgZmlsZXMgYXJlIHRvICIKKyJiZSBpbmNsdWRlZCkuIFRoZXJlJ3Mgbm8gZGlzdGluY3Rpb24gYmV0d2VlbiBCPC1iPiwgQjwtQj4gYW5kIEI8LUE+LCB0aGUgIgorInByb2R1Y2VkIEI8LmNoYW5nZXM+IGZpbGUgd2lsbCBpbmNsdWRlIHdoYXRldmVyIGZpbGVzIHdlcmUgY3JlYXRlZCBieSB0aGUgIgorIkI8YmluYXJ5LSo+IHRhcmdldChzKSBvZiB0aGUgcGFja2FnZSBiZWluZyBidWlsdC4iCittc2dzdHIgIiIKKyJQcsOpY2lzZSBxdWUgbCdvbiB2ZXV0IHVuaXF1ZW1lbnQgdW5lIGNvbnN0cnVjdGlvbiBkdSBiaW5haXJlIChsZXMgZmljaGllcnMgIgorInNvdXJjZXMgbmUgc2Vyb250IHBhcyBpbmNsdXMpLiBJbCBuJ3kgYSBwYXMgZGUgZGlzdGluY3Rpb24gZW50cmUgQjwtYj4sIEI8LSIKKyJCPiBldCBCPC1BPsKgOyBsZSBmaWNoaWVyIHByb2R1aXQgQjwuY2hhbmdlcz4gcmVwcmVuZHJhIHRvdXMgbGVzIGZpY2hpZXJzICIKKyJjcsOpw6lzIHBhciBsZXMgY2libGVzIEI8YmluYXJ5LSo+IGR1IHBhcXVldCBlbiBjb3VycyBkZSBjb25zdHJ1Y3Rpb24uLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6MzEKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRoYXQgb25seSB0aGUgc291cmNlIHNob3VsZCBiZSB1cGxvYWRlZCAobm8gYmluYXJ5IHBhY2thZ2VzIHdpbGwgIgorImJlIGluY2x1ZGVkKS4iCittc2dzdHIgIiIKKyJOZSBjb25zdHJ1aXQgcXVlIGxlIHBhcXVldCBzb3VyY2UgKGF1Y3VuIHBhcXVldCBiaW5haXJlIG5lIHNlcmEgY29uc3RydWl0KS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjM2Cittc2dpZCAiIgorIlRoZSBCPC1zPkk8eD4gb3B0aW9ucyBjb250cm9sIHdoZXRoZXIgdGhlIG9yaWdpbmFsIHNvdXJjZSBhcmNoaXZlIGlzICIKKyJpbmNsdWRlZCBpbiB0aGUgdXBsb2FkIGlmIGFueSBzb3VyY2UgaXMgYmVpbmcgZ2VuZXJhdGVkIChpLmUuICBCPC1iPiBvciBCPC0iCisiQj4gaGF2ZW4ndCBiZWVuIHVzZWQpLiIKK21zZ3N0ciAiIgorIkxlcyBvcHRpb25zIEI8LXM+STx4PiBjb250csO0bGVudCBzaSBsJ2FyY2hpdmUgc291cmNlIGQnb3JpZ2luZSBlc3QgaW5jbHVzZSAiCisiZGFucyBsJ2luc3RhbGxhdGlvbiBwcm9kdWl0ZSBzaSB1biBwYXF1ZXQgc291cmNlIGVzdCBjcsOpw6kgKGNhZC4gcXVlIGxlcyAiCisib3B0aW9ucyBCPC1iPiBvdSBCPC1CPiBuJ29udCBwYXMgw6l0w6kgdXRpbGlzw6llcykuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMTo0MgorbXNnaWQgIiIKKyJCeSBkZWZhdWx0LCBvciBpZiBzcGVjaWZpZWQsIHRoZSBvcmlnaW5hbCBzb3VyY2Ugd2lsbCBiZSBpbmNsdWRlZCBvbmx5IGlmICIKKyJ0aGUgdXBzdHJlYW0gdmVyc2lvbiBudW1iZXIgKHRoZSB2ZXJzaW9uIHdpdGhvdXQgZXBvY2ggYW5kIHdpdGhvdXQgRGViaWFuICIKKyJyZXZpc2lvbikgZGlmZmVycyBmcm9tIHRoZSB1cHN0cmVhbSB2ZXJzaW9uIG51bWJlciBvZiB0aGUgcHJldmlvdXMgY2hhbmdlbG9nICIKKyJlbnRyeS4iCittc2dzdHIgIiIKKyJQYXIgZMOpZmF1dCwgb3UgcXVhbmQgbCdvcHRpb24gZXN0IGluZGlxdcOpZSwgbGVzIHNvdXJjZXMgZCdvcmlnaW5lIHNvbnQgIgorImluY2x1c2VzIHVuaXF1ZW1lbnQgc2kgbGUgbnVtw6lybyBkZSB2ZXJzaW9uIG1hamV1ciAoYy7DoC5kLiBsYSB2ZXJzaW9uIHNhbnMgIgorImxlcyBwYXJ0aWVzIGVwb2NoIGV0IMKrwqByw6l2aXNpb24gRGViaWFuwqDCuykgZGlmZsOocmUgZGUgbGEgdmVyc2lvbiBwcsOpY8OpZGVudGUgIgorImluZGlxdcOpZSBkYW5zIGxlIGZpY2hpZXIgZGUgY2hhbmdlbG9nLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6NDUKK21zZ2lkICJGb3JjZXMgdGhlIGluY2x1c2lvbiBvZiB0aGUgb3JpZ2luYWwgc291cmNlLiIKK21zZ3N0ciAiRm9yY2UgbCdpbmNsdXNpb24gZGVzIHNvdXJjZXMgZCdvcmlnaW5lLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6NDgKK21zZ2lkICJGb3JjZXMgdGhlIGV4Y2x1c2lvbiBvZiB0aGUgb3JpZ2luYWwgc291cmNlIGFuZCBpbmNsdWRlcyBvbmx5IHRoZSBkaWZmLiIKK21zZ3N0ciAiIgorIkZvcmNlIGwnZXhjbHVzaW9uIGRlcyBzb3VyY2VzIGQnb3JpZ2luZSBldCBpbmNsdXQgc2V1bGVtZW50IGxlIMKrwqBkaWZmwqDCuy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjU0Cittc2dpZCAiIgorIkNhdXNlcyBjaGFuZ2Vsb2cgaW5mb3JtYXRpb24gZnJvbSBhbGwgdmVyc2lvbnMgc3RyaWN0bHkgbGF0ZXIgdGhhbiAiCisiSTx2ZXJzaW9uPiB0byBiZSB1c2VkLiIKK21zZ3N0ciAiIgorIkZvcmNlIGwndXRpbGlzYXRpb24gZGVzIGluZm9ybWF0aW9ucyBjb250ZW51ZXMgZGFucyBsZSBmaWNoaWVyIMKrwqBjaGFuZ2Vsb2fCoMK7ICIKKyJldCBxdWkgY29uY2VybmVudCB0b3V0ZXMgbGVzIHZlcnNpb25zIHN0cmljdGVtZW50IHBsdXMgcsOpY2VudGVzIHF1ZSAiCisiSTx2ZXJzaW9uPi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjYwCittc2dpZCAiIgorIlJlYWQgdGhlIGRlc2NyaXB0aW9uIG9mIHRoZSBjaGFuZ2VzIGZyb20gdGhlIGZpbGUgSTxjaGFuZ2VzZGVzY3JpcHRpb24+ICIKKyJyYXRoZXIgdGhhbiB1c2luZyB0aGUgaW5mb3JtYXRpb24gZnJvbSB0aGUgc291cmNlIHRyZWUncyBjaGFuZ2Vsb2cgZmlsZS4iCittc2dzdHIgIiIKKyJMaXQgbGEgZGVzY3JpcHRpb24gZGVzIGNoYW5nZW1lbnRzIGRhbnMgbGUgZmljaGllciBJPGRlc2NyaXB0aW9uLWRlcy0iCisiY2hhbmdlbWVudHM+IHBsdXTDtHQgcXVlIGRhbnMgbGUgZmljaGllciDCq8KgY2hhbmdlbG9nwqDCuyBkZSBsJ2FyYm9yZXNjZW5jZSAiCisic291cmNlLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6NjYKK21zZ2lkICIiCisiVXNlIEk8bWFpbnRhaW5lcmFkZHJlc3M+IGFzIHRoZSBuYW1lIGFuZCBlbWFpbCBhZGRyZXNzIG9mIHRoZSBtYWludGFpbmVyIGZvciAiCisidGhpcyBwYWNrYWdlLCByYXRoZXIgdGhhbiB1c2luZyB0aGUgaW5mb3JtYXRpb24gZnJvbSB0aGUgc291cmNlIHRyZWUncyAiCisiY29udHJvbCBmaWxlLiIKK21zZ3N0ciAiIgorIlV0aWxpc2UgSTxhZHJlc3NlLWR1LXJlc3BvbnNhYmxlPiBjb21tZSBub20gZXQgYWRyZXNzZSDDqWxlY3Ryb25pcXVlIGR1ICIKKyJyZXNwb25zYWJsZSBkZSBwYXF1ZXQgcGx1dMO0dCBxdWUgZCd1dGlsaXNlciBsZXMgaW5mb3JtYXRpb25zIGNvbnRlbnVlcyBkYW5zICIKKyJsZSBmaWNoaWVyIMKrwqBjb250cm9swqDCuyBkZSBsJ2FyYm9yZXNjZW5jZSBzb3VyY2UuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMTo3MgorbXNnaWQgIiIKKyJVc2UgSTxtYWludGFpbmVyYWRkcmVzcz4gYXMgdGhlIG5hbWUgYW5kIGVtYWlsIGFkZHJlc3Mgb2YgdGhlIG1haW50YWluZXIgZm9yICIKKyJ0aGlzIHVwbG9hZCwgcmF0aGVyIHRoYW4gdXNpbmcgdGhlIGluZm9ybWF0aW9uIGZyb20gdGhlIHNvdXJjZSB0cmVlJ3MgIgorImNoYW5nZWxvZy4iCittc2dzdHIgIiIKKyJVdGlsaXNlIEk8YWRyZXNzZS1kdS1yZXNwb25zYWJsZT4gY29tbWUgbm9tIGV0IGFkcmVzc2Ugw6lsZWN0cm9uaXF1ZSBkdSAiCisicmVzcG9uc2FibGUgZGUgcGFxdWV0IHBvdXIgY2V0dGUgbWlzZSBlbiBwbGFjZSwgcGx1dMO0dCBxdWUgZCd1dGlsaXNlciBsZXMgIgorImluZm9ybWF0aW9ucyBjb250ZW51ZXMgZGFucyBsZSBmaWNoaWVyIMKrwqBjaGFuZ2Vsb2fCoMK7IGRlIGwnYXJib3Jlc2NlbmNlICIKKyJzb3VyY2UuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6NzIgZHBrZy1nZW5jb250cm9sLjE6NDEgZHBrZy1zb3VyY2UuMToxMjcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1WPkk8bmFtZT5CPD0+STx2YWx1ZT4iCittc2dzdHIgIkI8LVY+STxub20+Qjw9Pkk8dmFsZXVyPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6NzYgZHBrZy1zb3VyY2UuMToxMzEKK21zZ2lkICIiCisiU2V0IGFuIG91dHB1dCBzdWJzdGl0dXRpb24gdmFyaWFibGUuICBTZWUgQjxkZWItc3Vic3R2YXJzPig1KSBmb3IgYSAiCisiZGlzY3Vzc2lvbiBvZiBvdXRwdXQgc3Vic3RpdHV0aW9uLiIKK21zZ3N0ciAiIgorIkZpeGUgbGEgdmFsZXVyIGQndW5lIHZhcmlhYmxlIGRlIHN1YnN0aXR1dGlvbi4gQ29uc3VsdGV6IEI8ZGViLXN1YnN0dmFycz4oNSkgIgorInBvdXIgdW5lIGRpc2N1c3Npb24gc3VyIGxhIHZhbGV1ciBkZSBzdWJzdGl0dXRpb24uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6NzYgZHBrZy1nZW5jb250cm9sLjE6NDUgZHBrZy1zaGxpYmRlcHMuMToxNjkKKyM6IGRwa2ctc291cmNlLjE6MTMxCisjLCBuby13cmFwCittc2dpZCAiQjwtVD5JPHN1YnN0dmFyc2ZpbGU+IgorbXNnc3RyICJCPC1UPkk8ZmljaGllci9zdWJzdHZhcnM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMTo4NgorbXNnaWQgIiIKKyJSZWFkIHN1YnN0aXR1dGlvbiB2YXJpYWJsZXMgaW4gSTxzdWJzdHZhcnNmaWxlPjsgdGhlIGRlZmF1bHQgaXMgQjxkZWJpYW4vIgorInN1YnN0dmFycz4uICBObyB2YXJpYWJsZSBzdWJzdGl0dXRpb24gaXMgZG9uZSBvbiBhbnkgb2YgdGhlIGZpZWxkcyB0aGF0IGFyZSAiCisib3V0cHV0LCBob3dldmVyIHRoZSBzcGVjaWFsIHZhcmlhYmxlIEk8Rm9ybWF0PiB3aWxsIG92ZXJyaWRlIHRoZSBmaWVsZCBvZiAiCisidGhlIHNhbWUgbmFtZS4gVGhpcyBvcHRpb24gY2FuIGJlIHVzZWQgbXVsdGlwbGUgdGltZXMgdG8gcmVhZCBzdWJzdGl0dXRpb24gIgorInZhcmlhYmxlcyBmcm9tIG11bHRpcGxlIGZpbGVzLiIKK21zZ3N0ciAiIgorIkxlY3R1cmUgZGVzIHZhcmlhYmxlcyBkZSBzdWJzdGl0dXRpb24gZGVwdWlzIEk8c3Vic3R2YXJzZmlsZT7CoDsgbGEgdmFsZXVyICIKKyJwYXIgZMOpZmF1dCBlc3QgQjxkZWJpYW4vc3Vic3R2YXJzPi4gQXVjdW5lIHN1YnN0aXR1dGlvbiBkZSB2YXJpYWJsZSBuJ2VzdCAiCisiZmFpdGUgc3VyIGxlcyBjaGFtcHMgZGUgc29ydGllcywgY2VwZW5kYW50IGxhIHZhcmlhYmxlIHNww6ljaWFsZSBJPEZvcm1hdD4gIgorInJlbXBsYWNlcmEgbGUgY2hhbXBzIHF1aSBwb3J0ZSBsZSBtw6ptZSBub20uIENldHRlIG9wdGlvbiBwZXV0IMOqdHJlIHV0aWxpc8OpZSAiCisicGx1c2lldXJzIGZvaXMgcG91ciBsaXJlIGxlcyB2YXJpYWJsZXMgZGUgc3Vic3RpdHV0aW9uIGRlcHVpcyBwbHVzaWV1cnMgIgorImZpY2hpZXJzLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjg3IGRwa2ctZ2VuY29udHJvbC4xOjUzIGRwa2ctc291cmNlLjE6MTM3CisjLCBuby13cmFwCittc2dpZCAiQjwtRD5JPGZpZWxkPkI8PT5JPHZhbHVlPiIKK21zZ3N0ciAiQjwtRD5JPGNoYW1wPkI8PT5JPHZhbGV1cj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjkwIGRwa2ctZ2VuY29udHJvbC4xOjU2IGRwa2ctc291cmNlLjE6MTQwCittc2dpZCAiT3ZlcnJpZGUgb3IgYWRkIGFuIG91dHB1dCBjb250cm9sIGZpbGUgZmllbGQuIgorbXNnc3RyICJSZW1wbGFjZSBvdSBham91dGUgZW4gc29ydGllIHVuIGNoYW1wIGRhbnMgbGUgZmljaGllciBkZSBjb250csO0bGUuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6OTAgZHBrZy1nZW5jb250cm9sLjE6NTYgZHBrZy1zb3VyY2UuMToxNDAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1VPkk8ZmllbGQ+IgorbXNnc3RyICJCPC1VPkk8Y2hhbXA+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMTo5MyBkcGtnLWdlbmNvbnRyb2wuMTo1OSBkcGtnLXNvdXJjZS4xOjE0MworbXNnaWQgIlJlbW92ZSBhbiBvdXRwdXQgY29udHJvbCBmaWxlIGZpZWxkLiIKK21zZ3N0ciAiU3VwcHJpbWUgZW4gc29ydGllIHVuIGNoYW1wIGRhbnMgbGUgZmljaGllciBkZSBjb250csO0bGUuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6OTMgZHBrZy1nZW5jb250cm9sLjE6NTkgZHBrZy1zb3VyY2UuMToxMDQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1jPkk8Y29udHJvbGZpbGU+IgorbXNnc3RyICJCPC1jPkk8ZmljaGllci9jb250cm9sPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6OTggZHBrZy1nZW5jb250cm9sLjE6NjQKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRoZSBtYWluIHNvdXJjZSBjb250cm9sIGZpbGUgdG8gcmVhZCBpbmZvcm1hdGlvbiBmcm9tLiBUaGUgZGVmYXVsdCAiCisiaXMgQjxkZWJpYW4vY29udHJvbD4uIgorbXNnc3RyICIiCisiSW5kaXF1ZSBsZSBwcmluY2lwYWwgZmljaGllciBkZSBjb250csO0bGUgZGVzIHNvdXJjZXMgb8O5IHRyb3V2ZXIgZGVzICIKKyJyZW5zZWlnbmVtZW50cy4gUGFyIGTDqWZhdXQsIGMnZXN0IGxlIGZpY2hpZXIgQjxkZWJpYW4vY29udHJvbD4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6OTggZHBrZy1nZW5jb250cm9sLjE6NjQgZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjE2CisjOiBkcGtnLXNvdXJjZS4xOjExMQorIywgbm8td3JhcAorbXNnaWQgIkI8LWw+STxjaGFuZ2Vsb2dmaWxlPiIKK21zZ3N0ciAiQjwtbD5JPGZpY2hpZXIvY2hhbmdlbG9nPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6MTAzIGRwa2ctZ2VuY29udHJvbC4xOjY5IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToyMQorbXNnaWQgIiIKKyJTcGVjaWZpZXMgdGhlIGNoYW5nZSBsb2cgZmlsZSB0byByZWFkIGluZm9ybWF0aW9uIGZyb20uIFRoZSBkZWZhdWx0IGlzICIKKyJCPGRlYmlhbi9jaGFuZ2Vsb2c+LiIKK21zZ3N0ciAiIgorIkluZGlxdWUgbGUgZmljaGllciBkJ2VucmVnaXN0cmVtZW50IGRlcyBjaGFuZ2VtZW50cyBvw7kgdHJvdXZlciBkZXMgIgorInJlbnNlaWduZW1lbnRzLiBQYXIgZMOpZmF1dCwgYydlc3QgbGUgZmljaGllciBCPGRlYmlhbi9jaGFuZ2Vsb2c+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6MTA3Cittc2dpZCAiIgorIlJlYWQgdGhlIGxpc3Qgb2YgZmlsZXMgdG8gYmUgdXBsb2FkZWQgaGVyZSwgcmF0aGVyIHRoYW4gdXNpbmcgQjxkZWJpYW4vIgorImZpbGVzPi4iCittc2dzdHIgIiIKKyJMaXQgb3Ugw6ljcml0IGxhIGxpc3RlIGRlcyBmaWNoaWVycyBxdWkgZG9pdmVudCDDqnRyZSBlbnZvecOpcyB2ZXJzIGwnYXJjaGl2ZSAiCisiZGFucyBjZSBmaWNoaWVyIHBsdXTDtHQgcXVlIGRhbnMgbGUgZmljaGllciBCPGRlYmlhbi9maWxlcz4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6MTA3IGRwa2ctZ2VuY29udHJvbC4xOjczIGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToyMQorIzogZHBrZy1zb3VyY2UuMToxMTgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1GPkk8Y2hhbmdlbG9nZm9ybWF0PiIKK21zZ3N0ciAiQjwtRj5JPGZvcm1hdC1kdS1jaGFuZ2Vsb2c+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMToxMTIgZHBrZy1nZW5jb250cm9sLjE6NzggZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjI2CisjOiBkcGtnLXNvdXJjZS4xOjEyMworbXNnaWQgIiIKKyJTcGVjaWZpZXMgdGhlIGZvcm1hdCBvZiB0aGUgY2hhbmdlbG9nLiBCeSBkZWZhdWx0IHRoZSBmb3JtYXQgaXMgcmVhZCBmcm9tIGEgIgorInNwZWNpYWwgbGluZSBuZWFyIHRoZSBib3R0b20gb2YgdGhlIGNoYW5nZWxvZyBvciBmYWlsaW5nIHRoYXQgZGVmYXVsdHMgdG8gIgorInRoZSBkZWJpYW4gc3RhbmRhcmQgZm9ybWF0LiIKK21zZ3N0ciAiIgorIkRvbm5lIGxlIGZvcm1hdCBkdSBmaWNoaWVyIGNoYW5nZWxvZy4gUGFyIGTDqWZhdXQsIGMnZXN0IHVuZSBsaWduZSBzcMOpY2lhbGUsICIKKyJwcsOocyBkZSBsYSBmaW4gZHUgZmljaGllciwgcXVpIGwnaW5kaXF1ZcKgOyBzaW5vbiwgb24gdXRpbGlzZSBsZSBmb3JtYXQgIgorImNsYXNzaXF1ZSBCPGRlYmlhbj4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6MTEyCisjLCBuby13cmFwCittc2dpZCAiQjwtdT5JPHVwbG9hZGZpbGVzZGlyPiIKK21zZ3N0ciAiQjwtdT5JPHLDqXBlcnRvaXJlLWRlcy1maWNoaWVycy3DoC1pbnN0YWxsZXI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMToxMjMKK21zZ2lkICIiCisiTG9vayBmb3IgdGhlIGZpbGVzIHRvIGJlIHVwbG9hZGVkIGluIEk8dXBsb2FkZmlsZXNkaXI+IHJhdGhlciB0aGFuIEI8Li4+ICIKKyIoQjxkcGtnLWdlbmNoYW5nZXM+IG5lZWRzIHRvIGZpbmQgdGhlc2UgZmlsZXMgc28gdGhhdCBpdCBjYW4gaW5jbHVkZSB0aGVpciAiCisic2l6ZXMgYW5kIGNoZWNrc3VtcyBpbiB0aGUgQjwuY2hhbmdlcz4gZmlsZSkuIgorbXNnc3RyICIiCisiQ2hlcmNoZSBsZXMgZmljaGllcnMgw6AgaW5zdGFsbGVyIGRhbnMgSTxyw6lwZXJ0b2lyZS1kZXMtZmljaGllcnMtw6AtaW5zdGFsbGVyPiAiCisicGx1dMO0dCBxdWUgZGFucyBCPC4uPiAoQjxkcGtnLWdlbmNoYW5nZXM+IGRvaXQgdHJvdXZlciBjZXMgZmljaGllcnMgZGUgIgorIm1hbmnDqHJlIMOgIG1ldHRyZSBsZXVycyB0YWlsbGVzIGV0IGxldXJzIHNvbW1lcyBkZSBjb250csO0bGUgZGFucyBsZSBmaWNoaWVyICIKKyJCPC5jaGFuZ2VzLik+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6MTIzIGRwa2ctZ2Vuc3ltYm9scy4xOjQyMQorIywgbm8td3JhcAorbXNnaWQgIkI8LXE+IgorbXNnc3RyICJCPC1xPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6MTMxCittc2dpZCAiIgorIlVzdWFsbHkgQjxkcGtnLWdlbmNoYW5nZXM+IHdpbGwgcHJvZHVjZSBpbmZvcm1hdGl2ZSBtZXNzYWdlcyBvbiBzdGFuZGFyZCAiCisiZXJyb3IsIGZvciBleGFtcGxlIGFib3V0IGhvdyBtYW55IG9mIHRoZSBwYWNrYWdlJ3Mgc291cmNlIGZpbGVzIGFyZSBiZWluZyAiCisidXBsb2FkZWQuICBCPC1xPiBzdXBwcmVzc2VzIHRoZXNlIG1lc3NhZ2VzLiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1nZW5jaGFuZ2VzPiBhZmZpY2hlIGhhYml0dWVsbGVtZW50IGRlcyBtZXNzYWdlcyBkJ2luZm9ybWF0aW9uIHN1ciBsYSAiCisic29ydGllIGQnZXJyZXVyIHN0YW5kYXJkwqA7IHBhciBleGVtcGxlLCBjb21iaWVuIGRlIGZpY2hpZXJzIHNvdXJjZSBkdSBwYXF1ZXQgIgorInNvbnQgZW4gY291cnMgZCdpbnN0YWxsYXRpb24uIEI8LXE+IHN1cHByaW1lIGNlcyBtZXNzYWdlcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjE0NworbXNnaWQgIiIKKyJUaGUgbGlzdCBvZiBnZW5lcmF0ZWQgZmlsZXMgd2hpY2ggYXJlIHBhcnQgb2YgdGhlIHVwbG9hZCBiZWluZyBwcmVwYXJlZC4gICIKKyJCPGRwa2ctZ2VuY2hhbmdlcz4gcmVhZHMgdGhlIGRhdGEgaGVyZSB3aGVuIHByb2R1Y2luZyBhIEI8LmNoYW5nZXM+IGZpbGUuIgorbXNnc3RyICIiCisiTGEgbGlzdGUgZGVzIGZpY2hpZXJzIGNyw6nDqXMgcXVpIHNlcm9udCBpbnN0YWxsw6lzIHN1ciBsZSBzZXJ2ZXVyLiBCPGRwa2ctIgorImdlbmNoYW5nZXM+IGxpdCBkYW5zIGNlIGZpY2hpZXIgbGVzIGRvbm7DqWVzIG7DqWNlc3NhaXJlcyDDoCBsYSBjcsOpYXRpb24gZHUgIgorImZpY2hpZXIgQjwuY2hhbmdlcz4uIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1nZW5jb250cm9sLjE6MQorIywgbm8td3JhcAorbXNnaWQgImRwa2ctZ2VuY29udHJvbCIKK21zZ3N0ciAiZHBrZy1nZW5jb250cm9sIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMTo0Cittc2dpZCAiZHBrZy1nZW5jb250cm9sIC0gZ2VuZXJhdGUgRGViaWFuIGNvbnRyb2wgZmlsZXMiCittc2dzdHIgImRwa2ctZ2VuY29udHJvbCAtIENyw6llciBkZXMgZmljaGllcnMgZGUgY29udHLDtGxlIERlYmlhbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjgKKyMsIGZ1enp5CisjfCBtc2dpZCAiQjxkcGtnLWdlbmNvbnRyb2w+IFtJPG9wdGlvbnM+XSIKK21zZ2lkICJCPGRwa2ctZ2VuY29udHJvbD4gW0k8b3B0aW9uPi4uLl0iCittc2dzdHIgIkI8ZHBrZy1nZW5jb250cm9sPiBbSTxvcHRpb25zPl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjE0Cittc2dpZCAiIgorIkI8ZHBrZy1nZW5jb250cm9sPiByZWFkcyBpbmZvcm1hdGlvbiBmcm9tIGFuIHVucGFja2VkIERlYmlhbiBzb3VyY2UgdHJlZSBhbmQgIgorImdlbmVyYXRlcyBhIGJpbmFyeSBwYWNrYWdlIGNvbnRyb2wgZmlsZSAod2hpY2ggZGVmYXVsdHMgdG8gZGViaWFuL3RtcC9ERUJJQU4vIgorImNvbnRyb2wpOyBkdXJpbmcgdGhpcyBwcm9jZXNzIGl0IHdpbGwgc2ltcGxpZnkgdGhlIHJlbGF0aW9uIGZpZWxkcy4iCittc2dzdHIgIiIKKyJCPGRwa2ctZ2VuY29udHJvbD4gbGl0IGxlcyBpbmZvcm1hdGlvbnMgY29udGVudWVzIGRhbnMgdW5lIGFyYm9yZXNjZW5jZSAiCisiRGViaWFuIGTDqXBhcXVldMOpZSBldCBjcsOpZSBsZSBmaWNoaWVyIMKrwqBjb250cm9swqDCuyBkJ3VuIHBhcXVldCBiaW5haXJlIChwYXIgIgorImTDqWZhdXQsIGMnZXN0IGxlIGZpY2hpZXIgZGViaWFuL3RtcC9ERUJJQU4vY29udHJvbCnCoDsgZHVyYW50IGNldHRlIGFjdGlvbiBpbCAiCisieSBhIHNpbXBsaWZpY2F0aW9uIGRlcyBjaGFtcHMgZGUgcmVsYXRpb25zLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jb250cm9sLjE6MjcKK21zZ2lkICIiCisiVGh1cyBJPFByZS1EZXBlbmRzPiwgSTxEZXBlbmRzPiwgSTxSZWNvbW1lbmRzPiBhbmQgSTxTdWdnZXN0cz4gYXJlICIKKyJzaW1wbGlmaWVkIGluIHRoaXMgb3JkZXIgYnkgcmVtb3ZpbmcgZGVwZW5kZW5jaWVzIHdoaWNoIGFyZSBrbm93biB0byBiZSB0cnVlICIKKyJhY2NvcmRpbmcgdG8gdGhlIHN0cm9uZ2VyIGRlcGVuZGVuY2llcyBhbHJlYWR5IHBhcnNlZC4gSXQgd2lsbCBhbHNvIHJlbW92ZSAiCisiYW55IHNlbGYtZGVwZW5kZW5jeSAoaW4gZmFjdCBpdCB3aWxsIHJlbW92ZSBhbnkgZGVwZW5kZW5jeSB3aGljaCBldmFsdWF0ZXMgIgorInRvIHRydWUgZ2l2ZW4gdGhlIGN1cnJlbnQgdmVyc2lvbiBvZiB0aGUgcGFja2FnZSBhcyBpbnN0YWxsZWQpLiBMb2dpY2FsbHkgaXQgIgorImtlZXBzIHRoZSBpbnRlcnNlY3Rpb24gb2YgbXVsdGlwbGUgZGVwZW5kZW5jaWVzIG9uIHRoZSBzYW1lIHBhY2thZ2UuIFRoZSAiCisib3JkZXIgb2YgZGVwZW5kZW5jaWVzIGlzIHByZXNlcnZlZCBhcyBiZXN0IGFzIHBvc3NpYmxlOiBpZiBhbnkgZGVwZW5kZW5jeSAiCisibXVzdCBiZSBkaXNjYXJkZWQgZHVlIHRvIGFub3RoZXIgZGVwZW5kZW5jeSBhcHBlYXJpbmcgZnVydGhlciBpbiB0aGUgZmllbGQsICIKKyJ0aGUgc3VwZXJzZWRpbmcgZGVwZW5kZW5jeSB3aWxsIHRha2UgdGhlIHBsYWNlIG9mIHRoZSBkaXNjYXJkZWQgb25lLiIKK21zZ3N0ciAiIgorIkk8UHJlLURlcGVuZHM+LCBJPERlcGVuZHM+LCBJPFJlY29tbWVuZHM+IGV0IEk8U3VnZ2VzdHM+IHNvbnQgc2ltcGxpZmnDqXMgIgorImRhbnMgY2V0IG9yZHJlIHN1cHByaW1lciBsZXMgZMOpcGVuZGFuY2VzIHF1aSBzb250IGNvbm51ZXMgcG91ciDDqnRyZSB2w6lyaWZpw6kgIgorInBhciBsYSBwbHVzIGZvcnRlIGTDqXBlbmRhbmNlIGTDqWrDoCB0cmFpdMOpZS4gU29udCBhdXNzaSBzdXBwcmltw6llcyB0b3V0ZXMgbGVzICIKKyJhdXRvLWTDqXBlbmRhbmNlcyAoZGFucyBsZXMgZmFpdHMsIGNlbGEgc3VwcHJpbWUgbGVzIGTDqXBlbmRhbmNlcyBxdWkgc29udCAiCisiZMOpasOgIHZhbGlkw6llcyBwYXIgbGEgdmVyc2lvbiBkdSBwYXF1ZXQgZMOpasOgIGluc3RhbGzDqSkuIExvZ2lxdWVtZW50LCBpbCAiCisiY29uc2VydmUgbGVzIGNvcnJlc3BvbmRhbmNlcyBlbnRyZSBwbHVzaWV1cnMgZMOpcGVuZGFuY2VzIGRhbnMgbGUgbcOqbWUgIgorInBhcXVldC4gTCdvcmRyZSBkZXMgZMOpcGVuZGFuY2VzIGVzdCBjb25zZXJ2w6kgZHUgbWlldXggcG9zc2libGXCoDogc2kgdW5lICIKKyJkw6lwZW5kYW5jZSBkb2l0IMOqdHJlIHN1cHByaW3DqWUgw6AgY2F1c2UgZCd1bmUgYXV0cmUgZMOpcGVuZGFuY2UgcXVpIHNlIHRyb3V2ZSAiCisiZGFucyB1biBjaGFtcHMgc3VpdmFudCwgbGEgZMOpcGVuZGFuY2UgcmVtcGxhw6dhbnRlIHByZW5kcmEgbGEgcGxhY2UgZGUgY2VsbGUgIgorIsOpbGltaW7DqWUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMTozMgorbXNnaWQgIiIKKyJUaGUgb3RoZXIgcmVsYXRpb24gZmllbGRzIChJPEVuaGFuY2VzPiwgSTxDb25mbGljdHM+LCBJPEJyZWFrcz4sIEk8UmVwbGFjZXM+ICIKKyJhbmQgSTxQcm92aWRlcz4pICBhcmUgYWxzbyBzaW1wbGlmaWVkIGluZGl2aWR1YWxseSBieSBjb21wdXRpbmcgdGhlIHVuaW9uIG9mICIKKyJ0aGUgdmFyaW91cyBkZXBlbmRlbmNpZXMgd2hlbiBhIHBhY2thZ2UgaXMgbGlzdGVkIG11bHRpcGxlIHRpbWVzIGluIHRoZSAiCisiZmllbGQuIgorbXNnc3RyICIiCisiTGVzIGF1dHJlIGNoYW1wcyAoSTxFbmhhbmNlcz4sIEk8Q29uZmxpY3RzPiwgSTxCcmVha3M+LCBJPFJlcGxhY2VzPiBldCAiCisiSTxQcm92aWRlcz4pIHNvbnQgw6lnYWxlbWVudCBzaW1wbGlmacOpcyBpbmRpdmlkdWVsbGVtZW50IHBhciBsJ2FuYWx5c2UgZGVzICIKKyJkaWZmw6lyZW50ZXMgZMOpcGVuZGFuY2VzIGxvcnNxdWUgdW4gcGFxdWV0IGVzdCBpbmRpcXXDqSBwbHVzaWV1cnMgZm9pcyBkYW5zIGxlICIKKyJjaGFtcC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjM2Cittc2dpZCAiIgorIkI8ZHBrZy1nZW5jb250cm9sPiBhbHNvIGFkZHMgYW4gZW50cnkgZm9yIHRoZSBiaW5hcnkgcGFja2FnZSB0byBCPGRlYmlhbi8iCisiZmlsZXM+LiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1nZW5jb250cm9sPiBham91dGUgYXVzc2kgdW5lIGVudHLDqWUgcG91ciB1biBwYXF1ZXQgYmluYWlyZSBkYW5zICIKKyJCPGRlYmlhbi9maWxlcz4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMTo0MQorbXNnaWQgIlNldHMgdGhlIHZlcnNpb24gbnVtYmVyIG9mIHRoZSBiaW5hcnkgcGFja2FnZSB3aGljaCB3aWxsIGJlIGdlbmVyYXRlZC4iCittc2dzdHIgIkZpeGUgbGUgbnVtw6lybyBkZSB2ZXJzaW9uIGR1IHBhcXVldCBiaW5haXJlIHF1aSBzZXJhIGNyw6nDqS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjQ1Cittc2dpZCAiIgorIlNldCBhbiBvdXRwdXQgc3Vic3RpdHV0aW9uIHZhcmlhYmxlLiBTZWUgQjxkZWItc3Vic3R2YXJzPig1KSBmb3IgZGlzY3Vzc2lvbiAiCisib2Ygb3V0cHV0IHN1YnN0aXR1dGlvbi4iCittc2dzdHIgIiIKKyJGaXhlIGxhIHZhbGV1ciBkJ3VuZSB2YXJpYWJsZSBkZSBzdWJzdGl0dXRpb24uIENvbnN1bHRleiBCPGRlYi1zdWJzdHZhcnM+KDUpICIKKyJwb3VyIHVuZSBkaXNjdXNzaW9uIHN1ciBsYSB2YWxldXIgZGUgc3Vic3RpdHV0aW9uLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jb250cm9sLjE6NTMKK21zZ2lkICIiCisiUmVhZCBzdWJzdGl0dXRpb24gdmFyaWFibGVzIGluIEk8c3Vic3R2YXJzZmlsZT47IHRoZSBkZWZhdWx0IGlzIEI8ZGViaWFuLyIKKyJzdWJzdHZhcnM+LiAgVGhpcyBvcHRpb24gY2FuIGJlIHVzZWQgbXVsdGlwbGUgdGltZXMgdG8gcmVhZCBzdWJzdGl0dXRpb24gIgorInZhcmlhYmxlcyBmcm9tIG11bHRpcGxlIGZpbGVzLiIKK21zZ3N0ciAiIgorIkxlY3R1cmUgZGVzIHZhcmlhYmxlcyBkZSBzdWJzdGl0dXRpb24gZGVwdWlzIEk8c3Vic3R2YXJzZmlsZT7CoDsgbGEgdmFsZXVyICIKKyJwYXIgZMOpZmF1dCBlc3QgQjxkZWJpYW4vc3Vic3R2YXJzPi4gQ2V0dGUgb3B0aW9uIHBldXQgw6p0cmUgdXRpbGlzw6llICIKKyJwbHVzaWV1cnMgZm9pcyBwb3VyIGxpcmUgbGVzIHZhcmlhYmxlcyBkZSBzdWJzdGl0dXRpb24gZGVwdWlzIHBsdXNpZXVycyAiCisiZmljaGllcnMuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5jb250cm9sLjE6NzggZHBrZy1nZW5zeW1ib2xzLjE6MzczCisjLCBuby13cmFwCittc2dpZCAiQjwtcD5JPHBhY2thZ2U+IgorbXNnc3RyICJCPC1wPkk8cGFxdWV0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jb250cm9sLjE6ODUKK21zZ2lkICIiCisiR2VuZXJhdGUgaW5mb3JtYXRpb24gZm9yIHRoZSBiaW5hcnkgcGFja2FnZSBJPHBhY2thZ2U+LiAgSWYgdGhlIHNvdXJjZSAiCisiY29udHJvbCBmaWxlIGxpc3RzIG9ubHkgb25lIGJpbmFyeSBwYWNrYWdlIHRoZW4gdGhpcyBvcHRpb24gbWF5IGJlIG9taXR0ZWQ7ICIKKyJvdGhlcndpc2UgaXQgaXMgZXNzZW50aWFsIHRvIHNlbGVjdCB3aGljaCBiaW5hcnkgcGFja2FnZSdzIGluZm9ybWF0aW9uIHRvICIKKyJnZW5lcmF0ZS4iCittc2dzdHIgIiIKKyJDZXR0ZSBvcHRpb24gcHJvZHVpdCBsZXMgaW5mb3JtYXRpb25zIGNvbmNlcm5hbnQgbGUgcGFxdWV0IGJpbmFpcmUgSTxwYXF1ZXQ+LiIKKyJTaSBsZSBmaWNoaWVyIGRlIGNvbnRyw7RsZSBkZXMgc291cmNlcyBsaXN0ZSB1biBzZXVsIHBhcXVldCBiaW5haXJlLCBvbiBwZXV0ICIKKyJvbWV0dHJlIGNldHRlIG9wdGlvbsKgOyBzaW5vbiBpbCBlc3QgaW5kaXNwZW5zYWJsZSBkJ2luZGlxdWVyIGxlIHBhcXVldCBwb3VyICIKKyJsZXF1ZWwgb24gdmV1dCBwcm9kdWlyZSBsZXMgaW5mb3JtYXRpb25zLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjg1CisjLCBuby13cmFwCittc2dpZCAiQjwtbj5JPGZpbGVuYW1lPiIKK21zZ3N0ciAiQjwtbj5JPG5vbS1kZS1maWNoaWVyPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jb250cm9sLjE6OTAKK21zZ2lkICIiCisiQXNzdW1lIHRoZSBmaWxlbmFtZSBvZiB0aGUgcGFja2FnZSB3aWxsIGJlIEk8ZmlsZW5hbWU+IGluc3RlYWQgb2YgdGhlIG5vcm1hbCAiCisicGFja2FnZV92ZXJzaW9uX2FyY2guZGViIGZpbGVuYW1lLiIKK21zZ3N0ciAiIgorIkxlIG5vbSBkdSBwYXF1ZXQgZXN0IEk8bm9tLWRlLWZpY2hpZXI+IGF1IGxpZXUgZGUgbCdoYWJpdHVlbMKgOiAiCisicGFxdWV0X3ZlcnNpb25fYXJjaC5kZWIuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5jb250cm9sLjE6OTAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1pcz4sIEI8LWlwPiwgQjwtaXNwPiIKK21zZ3N0ciAiQjwtaXM+LCBCPC1pcD4sIEI8LWlzcD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjk5Cittc2dpZCAiIgorIlRoZXNlIG9wdGlvbnMgYXJlIGlnbm9yZWQgZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBvbGRlciB2ZXJzaW9ucyBvZiBkcGtnLWRldiAiCisiYnV0IGFyZSBub3cgZGVwcmVjYXRlZC4gUHJldmlvdXNseSB0aGV5IHdlcmUgdXNlZCB0byB0ZWxsIGRwa2ctZ2VuY29udHJvbCB0byAiCisiaW5jbHVkZSB0aGUgU2VjdGlvbiBhbmQgUHJpb3JpdHkgZmllbGRzIGluIHRoZSBjb250cm9sIGZpbGUuIFRoaXMgaXMgbm93IHRoZSAiCisiZGVmYXVsdCBiZWhhdmlvdXIuIElmIHlvdSB3YW50IHRvIGdldCB0aGUgb2xkIGJlaGF2aW91ciB5b3UgY2FuIHVzZSB0aGUgQjwtIgorIlU+IG9wdGlvbiB0byBkZWxldGUgdGhlIGZpZWxkcyBmcm9tIHRoZSBjb250cm9sIGZpbGUuIgorbXNnc3RyICIiCisiQ2VzIG9wdGlvbnMsIGNvbnNlcnbDqWVzIHBvdXIgY29tcGF0aWJpbGl0w6kgYXZlYyBsZXMgYW5jaWVubmVzIHZlcnNpb25zIGRlICIKKyJkcGtnLWRldiwgc29udCBtYWludGVuYW50IGTDqWNvbnNlaWxsw6llcy4gRWxsZXMgc2VydmFpZW50IMOgIGRpcmUgw6AgZHBrZy0iCisiZ2VuY29udHJvbCBkJ2luY2x1cmUgbGVzIGNoYW1wcyDCq8KgU2VjdGlvbsKgwrsgZXQgwqvCoFByaW9yaXR5wqDCuyBkYW5zIGxlIGZpY2hpZXIgIgorIsKrwqBjb250cm9swqDCuy4gQydlc3QgbWFpbnRlbmFudCBsZSBjb21wb3J0ZW1lbnQgcGFyIGTDqWZhdXQuIFNpIHZvdXMgdm91bGV6ICIKKyJsJ2FuY2llbiBjb21wb3J0ZW1lbnQsIHZvdXMgcG91dmV6IHV0aWxpc2VyIGwnb3B0aW9uIEI8LVU+IHBvdXIgc3VwcHJpbWVyICIKKyJjZXMgY2hhbXBzIGR1IGZpY2hpZXIgwqvCoGNvbnRyb2zCoMK7LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjk5CisjLCBuby13cmFwCittc2dpZCAiQjwtUD5JPHBhY2thZ2VidWlsZGRpcj4iCittc2dzdHIgIkI8LVA+STxyZXAtZGUtY29uc3RydWN0aW9uLWR1LXBhcXVldD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjExMgorbXNnaWQgIiIKKyJUZWxscyBCPGRwa2ctc291cmNlPiB0aGF0IHRoZSBwYWNrYWdlIGlzIGJlaW5nIGJ1aWx0IGluIEk8cGFja2FnZWJ1aWxkZGlyPiAiCisiaW5zdGVhZCBvZiBCPGRlYmlhbi90bXA+LiAgVGhpcyB2YWx1ZSBpcyB1c2VkIHRvIGZpbmQgdGhlIGRlZmF1bHQgdmFsdWUgb2YgIgorInRoZSBCPEluc3RhbGxlZC1TaXplPiBzdWJzdGl0dXRpb24gdmFyaWFibGUgYW5kIGNvbnRyb2wgZmlsZSBmaWVsZCAodXNpbmcgIgorIkI8ZHU+KSwgYW5kIGZvciB0aGUgZGVmYXVsdCBsb2NhdGlvbiBvZiB0aGUgb3V0cHV0IGZpbGUuIgorbXNnc3RyICIiCisiQ2V0dGUgb3B0aW9uIGluZGlxdWUgw6AgQjxkcGtnLXNvdXJjZT4gcXVlIGxlIHLDqXBlcnRvaXJlIGRlIGNvbnN0cnVjdGlvbiBkdSAiCisicGFxdWV0IGVzdCBJPHJlcC1kZS1jb25zdHJ1Y3Rpb24tZHUtcGFxdWV0PiBhdSBsaWV1IGRlIEI8ZGViaWFuL3RtcC4+IENldHRlICIKKyJ2YWxldXIgc2VydCDDoCB0cm91dmVyIGxhIHZhbGV1ciBwYXIgZMOpZmF1dCBkZSBsYSB2YXJpYWJsZSBkZSBzdWJzdGl0dXRpb24gIgorIkI8SW5zdGFsbGVkLVNpemU+IGV0IGNlbGxlIGR1IGNoYW1wIGNvcnJlc3BvbmRhbnQgZGFucyBsZSBmaWNoaWVyIGRlICIKKyJjb250csO0bGUgKG9uIHV0aWxpc2UgbGEgY29tbWFuZGUgQjxkdT4pwqA7IGVsbGUgZG9ubmUgYXVzc2kgbCdlbXBsYWNlbWVudCBwYXIgIgorImTDqWZhdXQgcG91ciBsZSBmaWNoaWVyIGRlIHNvcnRpZS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbmNvbnRyb2wuMToxMTIgZHBrZy1nZW5zeW1ib2xzLjE6MzkxIGRwa2ctc2hsaWJkZXBzLjE6MTUwCisjLCBuby13cmFwCittc2dpZCAiQjwtTz4iCittc2dzdHIgIkI8LU8+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMToxMjEKK21zZ2lkICIiCisiUHJpbnQgdGhlIGNvbnRyb2wgZmlsZSB0byBzdGFuZGFyZCBvdXRwdXQsIHJhdGhlciB0aGFuIHRvIEI8ZGViaWFuL3RtcC8iCisiREVCSUFOL2NvbnRyb2w+IChvciBJPHBhY2thZ2VidWlsZGRpcj5CPC9ERUJJQU4vY29udHJvbD4gaWYgQjwtUD4gd2FzIHVzZWQpLiIKK21zZ3N0ciAiIgorIkFmZmljaGUgbGUgZmljaGllciBkZSBjb250csO0bGUgc3VyIGxhIHNvcnRpZSBzdGFuZGFyZCBhdSBsaWV1IGRlIEI8ZGViaWFuLyIKKyJ0bXAvREVCSUFOL2NvbnRyb2w+IChvdSBJPHJlcC1kZS1jb25zdHJ1Y3Rpb24tZHUtcGFxdWV0PkI8L0RFQklBTi9jb250cm9sPiAiCisic2kgbCdvcHRpb24gQjwtUD4gYSDDqXTDqSB1dGlsaXPDqWUpLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjEyOQorIywgbm8td3JhcAorbXNnaWQgIkI8ZGViaWFuL2NvbnRyb2w+IgorbXNnc3RyICJCPGRlYmlhbi9jb250cm9sPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jb250cm9sLjE6MTM0Cittc2dpZCAiIgorIlRoZSBtYWluIHNvdXJjZSBjb250cm9sIGluZm9ybWF0aW9uIGZpbGUsIGdpdmluZyB2ZXJzaW9uLWluZGVwZW5kZW50ICIKKyJpbmZvcm1hdGlvbiBhYm91dCB0aGUgc291cmNlIHBhY2thZ2UgYW5kIHRoZSBiaW5hcnkgcGFja2FnZXMgaXQgY2FuIHByb2R1Y2UuIgorbXNnc3RyICIiCisiTGUgcHJpbmNpcGFsIGZpY2hpZXIgZCdpbmZvcm1hdGlvbiBzdXIgbGVzIHNvdXJjZXPCoDsgaWwgZG9ubmUgZGVzICIKKyJyZW5zZWlnbmVtZW50cyBxdWkgbmUgZMOpcGVuZGVudCBwYXMgZCd1bmUgdmVyc2lvbiBjb25jZXJuYW50IGxlIHBhcXVldCAiCisic291cmNlIGV0IGxlcyBwYXF1ZXRzIGJpbmFpcmVzIHF1aSBwZXV2ZW50IMOqdHJlIGNyw6nDqXMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMToxNDEKK21zZ2lkICIiCisiVGhlIGxpc3Qgb2YgZ2VuZXJhdGVkIGZpbGVzIHdoaWNoIGFyZSBwYXJ0IG9mIHRoZSB1cGxvYWQgYmVpbmcgcHJlcGFyZWQuICAiCisiQjxkcGtnLWdlbmNvbnRyb2w+IGFkZHMgdGhlIHByZXN1bWVkIGZpbGVuYW1lcyBvZiBiaW5hcnkgcGFja2FnZXMgd2hvc2UgIgorImNvbnRyb2wgZmlsZXMgaXQgZ2VuZXJhdGVzIGhlcmUuIgorbXNnc3RyICIiCisiTGEgbGlzdGUgZGVzIGZpY2hpZXJzIGNyw6nDqXMgcXVpIGZvbnQgcGFydGllIGRlIGNldXggcXVpIHNlcm9udCBpbnN0YWxsw6lzIHN1ciAiCisibGUgc2VydmV1ci4gQjxkcGtnLWdlbmNvbnRyb2w+IGFqb3V0ZSBsZXMgbm9tcyBwcsOpc3Vtw6lzIGRlcyBmaWNoaWVycyBkZXMgIgorInBhcXVldHMgYmluYWlyZXMgw6AgcGFydGlyIGRlcyBmaWNoaWVycyDCq8KgY29udHJvbMKgwrsgcXUnaWwgY3LDqWUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMToxNDggZHBrZy1zaGxpYmRlcHMuMTozMzcKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAwNy0yMDA4IFJhcGhhXFxbOmVdbCBIZXJ0em9nIgorbXNnc3RyICJDb3B5cmlnaHQgXFwoY28gMjAwNy0yMDA4IFJhcGhhXFxbOmVdbCBIZXJ0em9nIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MgorIywgbm8td3JhcAorbXNnaWQgImRwa2ctZ2Vuc3ltYm9scyIKK21zZ3N0ciAiZHBrZy1nZW5zeW1ib2xzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo1Cittc2dpZCAiIgorImRwa2ctZ2Vuc3ltYm9scyAtIGdlbmVyYXRlIHN5bWJvbHMgZmlsZXMgKHNoYXJlZCBsaWJyYXJ5IGRlcGVuZGVuY3kgIgorImluZm9ybWF0aW9uKSIKK21zZ3N0ciAiIgorImRwa2ctZ2Vuc3ltYm9scyAtIGNyw6lhdGlvbiBkZXMgZmljaGllcnMgZGUgc3ltYm9sZXMgKGluZm9ybWF0aW9uIGRlc3RpbsOpZSAiCisiYXV4IGTDqXBlbmRhbmNlcyBkZSBiaWJsaW90aMOocXVlcyBwYXJ0YWfDqWVzKSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6OQorIywgZnV6enkKKyN8IG1zZ2lkICJCPGRwa2ctZ2Vuc3ltYm9scz4gW0k8b3B0aW9ucz5dIgorbXNnaWQgIkI8ZHBrZy1nZW5zeW1ib2xzPiBbSTxvcHRpb24+Li4uXSIKK21zZ3N0ciAiQjxkcGtnLWdlbnN5bWJvbHM+IFtJPG9wdGlvbnM+XSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTYKK21zZ2lkICIiCisiQjxkcGtnLWdlbnN5bWJvbHM+IHNjYW5zIGEgdGVtcG9yYXJ5IGJ1aWxkIHRyZWUgKGRlYmlhbi90bXAgYnkgZGVmYXVsdCkgIgorImxvb2tpbmcgZm9yIGxpYnJhcmllcyBhbmQgZ2VuZXJhdGUgYSBJPHN5bWJvbHM+IGZpbGUgZGVzY3JpYmluZyB0aGVtLiBUaGlzICIKKyJmaWxlLCBpZiBub24tZW1wdHksIGlzIHRoZW4gaW5zdGFsbGVkIGluIHRoZSBERUJJQU4gc3ViZGlyZWN0b3J5IG9mIHRoZSAiCisiYnVpbGQgdHJlZSBzbyB0aGF0IGl0IGVuZHMgdXAgaW5jbHVkZWQgaW4gdGhlIGNvbnRyb2wgaW5mb3JtYXRpb24gb2YgdGhlICIKKyJwYWNrYWdlLiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1nZW5zeW1ib2xzPiBhbmFseXNlIHVuIHLDqXBlcnRvaXJlIHRlbXBvcmFpcmUgZGUgY29uc3RydWN0aW9uIChwYXIgIgorImTDqWZhdXQgZGViaWFuL3RtcCksIHkgcmVjaGVyY2hlIGxlcyBiaWJsaW90aMOocXVlcyBldCBjcsOpZSB1biBmaWNoaWVyICIKKyJJPHN5bWJvbHM+IGZpbGUgcXVpIGxlcyBkw6ljcml0LiBTaSBjZSBmaWNoaWVyIG4nZXN0IHBhcyB2aWRlLCBpbCBlc3QgIgorImluc3RhbGzDqSBkYW5zIGxlIHNvdXMtcsOpcGVydG9pcmUgREVCSUFOIGR1IHLDqXBlcnRvaXJlIGRlIGNvbnN0cnVjdGlvbiBhZmluICIKKyJkZSBwb3V2b2lyIMOqdHJlIGluY2x1cyBkYW5zIGxlcyBpbmZvcm1hdGlvbnMgZGUgY29udHLDtGxlIGR1IHBhcXVldC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjIwCittc2dpZCAiIgorIldoZW4gZ2VuZXJhdGluZyB0aG9zZSBmaWxlcywgaXQgdXNlcyBhcyBpbnB1dCBzb21lIHN5bWJvbHMgZmlsZXMgcHJvdmlkZWQgYnkgIgorInRoZSBtYWludGFpbmVyLiBJdCBsb29rcyBmb3IgdGhlIGZvbGxvd2luZyBmaWxlcyAoYW5kIHVzZSB0aGUgZmlyc3QgdGhhdCBpcyAiCisiZm91bmQpOiIKK21zZ3N0ciAiIgorIkxvcnMgZGUgbGEgY3LDqWF0aW9uIGRlIGNlcyBmaWNoaWVycywgaWwgdXRpbGlzZSBlbiBlbnRyw6llIGNlcnRhaW5zIGZpY2hpZXJzICIKKyJkZSBzeW1ib2xlcyBmb3VybmlzIHBhciBsZSByZXNwb25zYWJsZS4gSWwgcmVjaGVyY2hlIGxlcyBmaWNoaWVycyBzdWl2YW50cyAiCisiKGVuIHV0aWxpc2FudCBsZSBwcmVtaWVyIHRyb3V2w6kpwqA6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyMgorbXNnaWQgImRlYmlhbi9JPHBhY2thZ2U+LnN5bWJvbHMuSTxhcmNoPiIKK21zZ3N0ciAiZGViaWFuL0k8cGFxdWV0Pi5zeW1ib2xzLkk8YXJjaD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjI0Cittc2dpZCAiZGViaWFuL3N5bWJvbHMuSTxhcmNoPiIKK21zZ3N0ciAiZGViaWFuL3N5bWJvbHMuSTxhcmNoPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjYKK21zZ2lkICJkZWJpYW4vSTxwYWNrYWdlPi5zeW1ib2xzIgorbXNnc3RyICJkZWJpYW4vSTxwYXF1ZXQ+LnN5bWJvbHMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjI4Cittc2dpZCAiZGViaWFuL3N5bWJvbHMiCittc2dzdHIgImRlYmlhbi9zeW1ib2xzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozNgorbXNnaWQgIiIKKyJUaGUgbWFpbiBpbnRlcmVzdCBvZiB0aG9zZSBmaWxlcyBpcyB0byBwcm92aWRlIHRoZSBtaW5pbWFsIHZlcnNpb24gIgorImFzc29jaWF0ZWQgdG8gZWFjaCBzeW1ib2wgcHJvdmlkZWQgYnkgdGhlIGxpYnJhcmllcy4gVXN1YWxseSBpdCBjb3JyZXNwb25kcyAiCisidG8gdGhlIGZpcnN0IHZlcnNpb24gb2YgdGhhdCBwYWNrYWdlIHRoYXQgcHJvdmlkZWQgdGhlIHN5bWJvbCwgYnV0IGl0IGNhbiBiZSAiCisibWFudWFsbHkgaW5jcmVtZW50ZWQgYnkgdGhlIG1haW50YWluZXIgaWYgdGhlIEFCSSBvZiB0aGUgc3ltYm9sIGlzIGV4dGVuZGVkICIKKyJ3aXRob3V0IGJyZWFraW5nIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5LiBJdCdzIHRoZSByZXNwb25zaWJpbGl0eSBvZiB0aGUgIgorIm1haW50YWluZXIgdG8ga2VlcCB0aG9zZSBmaWxlcyB1cC10by1kYXRlIGFuZCBhY2N1cmF0ZSwgYnV0IEI8ZHBrZy0iCisiZ2Vuc3ltYm9scz4gaGVscHMgaGltLiIKK21zZ3N0ciAiIgorIkwnaW50w6lyw6p0IHByaW5jaXBhbCBkZSBjZXMgZmljaGllcnMgZXN0IGRlIGZvdXJuaXIgbGEgdmVyc2lvbiBtaW5pbWFsZSAiCisiYXNzb2Npw6llIMOgIGNoYXF1ZSBzeW1ib2xlIGZvdXJuaSBwYXIgbGVzIGJpYmxpb3Row6hxdWVzLiBFbiBnw6luw6lyYWwsIGNlbGEgIgorImNvcnJlc3BvbmQgw6AgbGEgcHJlbWnDqHJlIHZlcnNpb24gZHUgcGFxdWV0IHF1aSBhIGZvdXJuaSBjZSBzeW1ib2xlLCBtYWlzICIKKyJjZXR0ZSB2YWxldXIgcGV1dCDDqnRyZSBhdWdtZW50w6llIG1hbnVlbGxlbWVudCBwYXIgbGUgcmVzcG9uc2FibGUgc2kgIgorImwnaW50ZXJmYWNlIGJpbmFpcmUgYXBwbGljYXRpdmUgKEFCSSkgZHUgc3ltYm9sZSBlc3Qgw6l0ZW5kdWUgc2FucyBjYXNzZXIgbGEgIgorImNvbXBhdGliaWxpdMOpIGF2ZWMgbGVzIHZlcnNpb25zIHByw6ljw6lkZW50ZXMuIExhIHRlbnVlIMOgIGpvdXIgZGUgY2VzIGZpY2hpZXJzICIKKyJlc3Qgw6AgbGEgY2hhcmdlIGR1IHJlc3BvbnNhYmxlIGR1IHBhcXVldCwgYXZlYyBsJ2FpZGUgZGUgQjxkcGtnLSIKKyJnZW5zeW1ib2xzPiAuICIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDIKK21zZ2lkICIiCisiV2hlbiB0aGUgZ2VuZXJhdGVkIHN5bWJvbHMgZmlsZXMgZGlmZmVyIGZyb20gdGhlIG1haW50YWluZXIgc3VwcGxpZWQgb25lLCAiCisiQjxkcGtnLWdlbnN5bWJvbHM+IHdpbGwgcHJpbnQgYSBkaWZmIGJldHdlZW4gdGhlIHR3byB2ZXJzaW9ucy4gIEZ1cnRoZXJtb3JlICIKKyJpZiB0aGUgZGlmZmVyZW5jZSBpcyB0b28gc2lnbmlmaWNhbnQsIGl0IHdpbGwgZXZlbiBmYWlsICh5b3UgY2FuIGN1c3RvbWl6ZSAiCisiaG93IG11Y2ggZGlmZmVyZW5jZSB5b3UgY2FuIHRvbGVyYXRlLCBzZWUgdGhlIEI8LWM+IG9wdGlvbikuIgorbXNnc3RyICIiCisiUXVhbmQgbGVzIGZpY2hpZXJzIGRlIHN5bWJvbGVzIGNyw6nDqXMgc29udCBkaWZmw6lyZW50cyBkZSBjZXV4IGZvdXJuaXMgcGFyIGxlICIKKyJyZXNwb25zYWJsZSwgQjxkcGtnLWdlbnN5bWJvbHM+IGFmZmljaGVyYSBsZXMgZGlmZsOpcmVuY2VzIGVudHJlIGxlcyBkZXV4ICIKKyJmaWNoaWVycy4gU2kgY2VzIGRpZmbDqXJlbmNlcyBzb250IHRyb3AgaW1wb3J0YW50ZXMsIGxlIHByb2dyYW1tZSBwZXV0IG3Dqm1lICIKKyJzZSB0ZXJtaW5lciBlbiDDqWNoZWMgKGxlIG5vbWJyZSBkZSBkaWZmw6lyZW5jZXMgdG9sw6lyw6llcyBwZXV0IMOqdHJlIHLDqWdsw6kgYXZlYyAiCisibCdvcHRpb24gQjwtYz4pLiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQyCisjLCBuby13cmFwCittc2dpZCAiTUFJTlRBSU5JTkcgU1lNQk9MUyBGSUxFUyIKK21zZ3N0ciAiVEVOVUUgw4AgSk9VUiBERVMgRklDSElFUlMgU1lNQk9MRVMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjU1Cittc2dpZCAiIgorIlRoZSBzeW1ib2xzIGZpbGVzIGFyZSByZWFsbHkgdXNlZnVsIG9ubHkgaWYgdGhleSByZWZsZWN0IHRoZSBldm9sdXRpb24gb2YgIgorInRoZSBwYWNrYWdlIHRocm91Z2ggc2V2ZXJhbCByZWxlYXNlcy4gVGh1cyB0aGUgbWFpbnRhaW5lciBoYXMgdG8gdXBkYXRlIHRoZW0gIgorImV2ZXJ5IHRpbWUgdGhhdCBhIG5ldyBzeW1ib2wgaXMgYWRkZWQgc28gdGhhdCBpdHMgYXNzb2NpYXRlZCBtaW5pbWFsIHZlcnNpb24gIgorIm1hdGNoZXMgcmVhbGl0eS4gVG8gZG8gdGhpcyBwcm9wZXJseSBoZSBjYW4gdXNlIHRoZSBkaWZmcyBjb250YWluZWQgaW4gdGhlICIKKyJidWlsZCBsb2dzLiBJbiBtb3N0IGNhc2VzLCB0aGUgZGlmZiBhcHBsaWVzIGRpcmVjdGx5IHRvIGhpcyBkZWJpYW4vIgorIkk8cGFja2FnZT4uc3ltYm9scyBmaWxlLiBUaGF0IHNhaWQsIGZ1cnRoZXIgdHdlYWtzIGFyZSB1c3VhbGx5IG5lZWRlZDogaXQncyAiCisicmVjb21tZW5kZWQgZm9yIGV4YW1wbGUgdG8gZHJvcCB0aGUgRGViaWFuIHJldmlzaW9uIGZyb20gdGhlIG1pbmltYWwgdmVyc2lvbiAiCisic28gdGhhdCBiYWNrcG9ydHMgd2l0aCBhIGxvd2VyIHZlcnNpb24gbnVtYmVyIGJ1dCB0aGUgc2FtZSB1cHN0cmVhbSB2ZXJzaW9uICIKKyJzdGlsbCBzYXRpc2Z5IHRoZSBnZW5lcmF0ZWQgZGVwZW5kZW5jaWVzLiAgSWYgdGhlIERlYmlhbiByZXZpc2lvbiBjYW4ndCBiZSAiCisiZHJvcHBlZCBiZWNhdXNlIHRoZSBzeW1ib2wgcmVhbGx5IGdvdCBhZGRlZCBieSB0aGUgRGViaWFuIHNwZWNpZmljIGNoYW5nZSwgIgorInRoZW4gb25lIHNob3VsZCBzdWZmaXggdGhlIHZlcnNpb24gd2l0aCBcIn5cIi4iCittc2dzdHIgIiIKKyJMZXMgZmljaGllcnMgZGUgc3ltYm9sZXMgZGV2aWVubmVudCByw6llbGxlbWVudCB1dGlsZXMgbG9yc3F1J2lscyBwZXJtZXR0ZW50ICIKKyJkZSBzdWl2cmUgbCfDqXZvbHV0aW9uIGR1IHBhcXVldCBzdXIgcGx1c2lldXJzIHZlcnNpb25zLiBFbiBjb25zw6lxdWVuY2UsIGxlICIKKyJyZXNwb25zYWJsZSBkb2l0IGxlcyBtZXR0cmUgw6Agam91ciBjaGFxdWUgZm9pcyBxdSd1biBub3V2ZWF1IHN5bWJvbGUgZXN0ICIKKyJham91dMOpIGFmaW4gcXVlIGxhIHZlcnNpb24gbWluaW1hbGUgYXNzb2Npw6llIGNvcnJlc3BvbmRlIMOgIGxhIHLDqWFsaXTDqS4gUG91ciAiCisiZWZmZWN0dWVyIGNldHRlIG9ww6lyYXRpb24gY29ycmVjdGVtZW50LCBpbCBlc3QgbsOpY2Vzc2FpcmUgZCd1dGlsaXNlciBsZSAiCisiZmljaGllciBkZSBkaWZmw6lyZW5jZSBpbmRpcXXDqSBkYW5zIGxlIGpvdXJuYWwgZGUgY29uc3RydWN0aW9uLiBEYW5zIGxhICIKKyJwbHVwYXJ0IGRlcyBjYXMsIGNlIGZpY2hpZXIgZGUgZGlmZsOpcmVuY2VzIHBldXQgw6p0cmUgYXBwbGlxdcOpIHRlbCBxdWVsIGF1ICIKKyJmaWNoaWVyIGRlYmlhbi9JPHBhcXVldD4uc3ltYm9scy4gQ2VsYSDDqXRhbnQsIHF1ZWxxdWVzIGFkYXB0YXRpb25zIHNvbnQgIgorImfDqW7DqXJhbGVtZW50IG7DqWNlc3NhaXJlc8KgOsKgaWwgZXN0IHBhciBleGVtcGxlIHJlY29tbWFuZMOpIGRlIHJldGlyZXIgbGUgIgorIm51bcOpcm8gZGUgcsOpdmlzaW9uIERlYmlhbiBkZSBsYSB2ZXJzaW9uIG1pbmltYWxlIGFmaW4gcXVlIGxlcyBwYXF1ZXRzIHLDqXRyby0iCisicG9ydMOpcywgZGUgbnVtw6lybyBkZSB2ZXJzaW9uIGluZsOpcmlldXIgbWFpcyBhdmVjIGxhIG3Dqm1lIHZlcnNpb24gYW1vbnQgIgorImNvbnRpbnVlbnQgw6AgcsOpcG9uZHJlIGF1eCBwcsOpLXJlcXVpcy4gU2kgbGUgbnVtw6lybyBkZSByw6l2aXNpb24gRGViaWFuIG5lICIKKyJwZXV0IHZyYWltZW50IHBhcyDDqnRyZSByZXRpcsOpIGNhciBsZSBub3V2ZWF1IHN5bWJvbGUgZXN0IGxhIGNvbnPDqXF1ZW5jZSAiCisiZCd1bmUgbW9kaWZpY2F0aW9uIHByb3ByZSDDoCBEZWJpYW4sIGlsIGVzdCBzdWdnw6lyw6kgZCdham91dGVyIHVuIHN1ZmZpeGUgIgorIsKrwqB+wqDCuyBhdSBudW3DqXJvIGRlIHZlcnNpb24uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo1OQorbXNnaWQgIiIKKyJCZWZvcmUgYXBwbHlpbmcgYW55IHBhdGNoIHRvIHRoZSBzeW1ib2xzIGZpbGUsIHRoZSBtYWludGFpbmVyIHNob3VsZCBkb3VibGUtIgorImNoZWNrIHRoYXQgaXQncyBzYW5lLiBQdWJsaWMgc3ltYm9scyBhcmUgbm90IHN1cHBvc2VkIHRvIGRpc2FwcGVhciwgc28gdGhlICIKKyJwYXRjaCBzaG91bGQgaWRlYWxseSBvbmx5IGFkZCBuZXcgbGluZXMuIgorbXNnc3RyICIiCisiQXZhbnQgZCdhcHBsaXF1ZXIgbGUgY29ycmVjdGlmIGF1IGZpY2hpZXIgZGUgc3ltYm9sZXMsIGxlIHJlc3BvbnNhYmxlIGRvaXQgIgorImNvbnRyw7RsZXIgcXUnaWwgZXN0IGNvcnJlY3QuIExlcyBzeW1ib2xlcyBwdWJsaWNzIHNvbnQgc3VwcG9zw6lzIG5lIGphbWFpcyAiCisiZGlzcGFyYcOudHJlIGV0IGxlIGNvcnJlY3RpZiBuZSBkZXZyYWl0IGRvbmMgcXUnYWpvdXRlciBkZXMgbGlnbmVzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NjQKK21zZ2lkICIiCisiTm90ZSB0aGF0IHlvdSBjYW4gcHV0IGNvbW1lbnRzIGluIHN5bWJvbHMgZmlsZXM6IGFueSBsaW5lIHdpdGggJyMnIGFzIHRoZSAiCisiZmlyc3QgY2hhcmFjdGVyIGlzIGEgY29tbWVudCBleGNlcHQgaWYgaXQgc3RhcnRzIHdpdGggJyNpbmNsdWRlJyAoc2VlICIKKyJzZWN0aW9uIEI8VXNpbmcgaW5jbHVkZXM+KS4gTGluZXMgc3RhcnRpbmcgd2l0aCAnI01JU1NJTkc6JyBhcmUgc3BlY2lhbCAiCisiY29tbWVudHMgZG9jdW1lbnRpbmcgc3ltYm9scyB0aGF0IGhhdmUgZGlzYXBwZWFyZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLWdlbnN5bWJvbHMuMTo2NAorIywgbm8td3JhcAorbXNnaWQgIlVzaW5nICNQQUNLQUdFIyBzdWJzdGl0dXRpb24iCittc2dzdHIgIlV0aWxpc2F0aW9uIGR1IHJlbXBsYWNlbWVudCBkZSAjUEFDS0FHRSMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjcyCittc2dpZCAiIgorIkluIHNvbWUgcmFyZSBjYXNlcywgdGhlIG5hbWUgb2YgdGhlIGxpYnJhcnkgdmFyaWVzIGJldHdlZW4gYXJjaGl0ZWN0dXJlcy4gICIKKyJUbyBhdm9pZCBoYXJkY29kaW5nIHRoZSBuYW1lIG9mIHRoZSBwYWNrYWdlIGluIHRoZSBzeW1ib2xzIGZpbGUsIHlvdSBjYW4gdXNlICIKKyJ0aGUgbWFya2VyIEk8I1BBQ0tBR0UjPi4gSXQgd2lsbCBiZSByZXBsYWNlZCBieSB0aGUgcmVhbCBwYWNrYWdlIG5hbWUgZHVyaW5nICIKKyJpbnN0YWxsYXRpb24gb2YgdGhlIHN5bWJvbHMgZmlsZXMuIENvbnRyYXJ5IHRvIHRoZSBJPCNNSU5WRVIjPiBtYXJrZXIsICIKKyJJPCNQQUNLQUdFIz4gd2lsbCBuZXZlciBhcHBlYXIgaW4gYSBzeW1ib2xzIGZpbGUgaW5zaWRlIGEgYmluYXJ5IHBhY2thZ2UuIgorbXNnc3RyICIiCisiRGFucyBkZSByYXJlcyBjYXMsIGxlIG5vbSBkZSBsYSBiaWJsaW90aMOocXVlIGTDqXBlbmQgZGUgbCdhcmNoaXRlY3R1cmUuIEFmaW4gIgorImQnw6l2aXRlciBkZSBjb2RlciBsZSBub20gZHUgcGFxdWV0IGVuIGR1ciBkYW5zIGxlIGZpY2hpZXIgZGUgc3ltYm9sZXMsIGlsICIKKyJlc3QgcG9zc2libGUgZCd1dGlsaXNlciBsZSBtYXJxdWV1ciBJPCNQQUNLQUdFIz4uIElsIHNlcmEgcmVtcGxhY8OpIHBhciBsZSAiCisidnJhaSBub20gZHUgcGFxdWV0IGxvcnMgZGUgbCdpbnN0YWxsYXRpb24gZGVzIGZpY2hpZXJzIGRlIHN5bWJvbGVzLiDDgCBsYSAiCisiZGlmZsOpcmVuY2UgZHUgbWFycXVldXIgSTwjTUlOVkVSIz4sIEk8I1BBQ0tBR0UjPiBuJ2FwcGFyYcOudHJhIGphbWFpcyBkYW5zIGxlICIKKyJmaWNoaWVyIGRlIHN5bWJvbGVzIGQndW4gcGFxdWV0IGJpbmFpcmUuIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1nZW5zeW1ib2xzLjE6NzIKKyMsIG5vLXdyYXAKK21zZ2lkICJVc2luZyBzeW1ib2wgdGFncyIKK21zZ3N0ciAiVXRpbGlzYXRpb24gZGVzIMOpdGlxdWV0dGVzIGRlIHN5bWJvbGVzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo3OQorbXNnaWQgIiIKKyJTeW1ib2wgdGFnZ2luZyBpcyB1c2VmdWwgZm9yIG1hcmtpbmcgc3ltYm9scyB0aGF0IGFyZSBzcGVjaWFsIGluIHNvbWUgd2F5LiAgIgorIkFueSBzeW1ib2wgY2FuIGhhdmUgYW4gYXJiaXRyYXJ5IG51bWJlciBvZiB0YWdzIGFzc29jaWF0ZWQgd2l0aCBpdC4gV2hpbGUgIgorImFsbCB0YWdzIGFyZSBwYXJzZWQgYW5kIHN0b3JlZCwgb25seSBhIHNvbWUgb2YgdGhlbSBhcmUgdW5kZXJzdG9vZCBieSBCPGRwa2ctIgorImdlbnN5bWJvbHM+IGFuZCB0cmlnZ2VyIHNwZWNpYWwgaGFuZGxpbmcgb2YgdGhlIHN5bWJvbHMuIFNlZSBzdWJzZWN0aW9uICIKKyJCPFN0YW5kYXJkIHN5bWJvbCB0YWdzPiBmb3IgcmVmZXJlbmNlIG9mIHRoZXNlIHRhZ3MuIgorbXNnc3RyICIiCisiTCfDqXRpcXVldGFnZSBkZXMgc3ltYm9sZXMgKMKrwqBzeW1ib2wgdGFnZ2luZ8KgwrspIGVzdCB1dGlsZSBwb3VyIG1hcnF1ZXIgZGVzICIKKyJzeW1ib2xlcyBxdWkgc29udCBwYXJ0aWN1bGllcnMgZCd1bmUgbWFuacOocmUgb3UgZCd1bmUgYXV0cmUuIFRvdXQgc3ltYm9sZSAiCisicGV1dCBhdm9pciB1biBub21icmUgcXVlbGNvbnF1ZSBkJ8OpdGlxdWV0dGVzIGFzc29jacOpZXMuICBCaWVuIHF1ZSB0b3V0ZXMgbGVzICIKKyLDqXRpcXVldHRlcyBzb2llbnQgYW5hbHlzw6llcyBldCBjb25zZXJ2w6llcywgc2V1bGVzIGNlcnRhaW5lcyBkJ2VudHJlIGVsbGVzICIKKyJzb250IGNvbXByaXNlcyBwYXIgQjxkcGtnLWdlbnN5bWJvbHM+IGV0IGTDqWNsZW5jaGVudCB1biB0cmFpdGVtZW50ICIKKyJzcMOpY2lmaXF1ZSBkZXMgc3ltYm9sZXMuIFZldWlsbGV6IGNvbnN1bHRlciBsYSBzb3VzLXNlY3Rpb24gQjzDiXRpcXVldHRlcyAiCisic3RhbmRhcmQgZGUgc3ltYm9sZXM+IHBvdXIgdW5lIHLDqWbDqXJlbmNlIGNvbXBsw6h0ZSDDoCBwcm9wb3MgZGUgY2VzIMOpdGlxdWV0dGVzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6OTEKK21zZ2lkICIiCisiVGFnIHNwZWNpZmljYXRpb24gY29tZXMgcmlnaHQgYmVmb3JlIHRoZSBzeW1ib2wgbmFtZSAobm8gd2hpdGVzcGFjZSBpcyAiCisiYWxsb3dlZCBpbiBiZXR3ZWVuKS4gSXQgYWx3YXlzIHN0YXJ0cyB3aXRoIGFuIG9wZW5pbmcgYnJhY2tldCBCPCg+LCBlbmRzICIKKyJ3aXRoIGEgY2xvc2luZyBicmFja2V0IEI8KT4gYW5kIG11c3QgY29udGFpbiBhdCBsZWFzdCBvbmUgdGFnLiBNdWx0aXBsZSB0YWdzICIKKyJhcmUgc2VwYXJhdGVkIGJ5IHRoZSBCPHw+IGNoYXJhY3Rlci4gRWFjaCB0YWcgY2FuIG9wdGlvbmFsbHkgaGF2ZSBhIHZhbHVlICIKKyJ3aGljaCBpcyBzZXBhcmF0ZWQgZm9ybSB0aGUgdGFnIG5hbWUgYnkgdGhlIEI8PT4gY2hhcmFjdGVyLiBUYWcgbmFtZXMgYW5kICIKKyJ2YWx1ZXMgY2FuIGJlIGFyYml0cmFyeSBzdHJpbmdzIGV4Y2VwdCB0aGV5IGNhbm5vdCBjb250YWluIGFueSBvZiB0aGUgIgorInNwZWNpYWwgQjwpPiBCPHw+IEI8PT4gY2hhcmFjdGVycy4gU3ltYm9sIG5hbWVzIGZvbGxvd2luZyBhIHRhZyAiCisic3BlY2lmaWNhdGlvbiBjYW4gb3B0aW9uYWxseSBiZSBxdW90ZWQgd2l0aCBlaXRoZXIgQjwnPiBvciBCPFwiPiBjaGFyYWN0ZXJzICIKKyJ0byBhbGxvdyB3aGl0ZXNwYWNlcyBpbiB0aGVtLiBIb3dldmVyLCBpZiB0aGVyZSBhcmUgbm8gdGFncyBzcGVjaWZpZWQgZm9yICIKKyJ0aGUgc3ltYm9sLCBxdW90ZXMgYXJlIHRyZWF0ZWQgYXMgcGFydCBvZiB0aGUgc3ltYm9sIG5hbWUgd2hpY2ggY29udGludWVzIHVwICIKKyJ1bnRpbCB0aGUgZmlyc3Qgc3BhY2UuIgorbXNnc3RyICIiCisiTCdpbmRpY2F0aW9uIGRlIGwnw6l0aXF1ZXR0ZSB2aWVudCBqdXN0ZSBhdmFudCBsZSBub20gZHUgc3ltYm9sZSAoc2FucyAiCisiZXNwYWNlKS4gRWxsZSBjb21tZW5jZSB0b3Vqb3VycyBwYXIgdW5lIHBhcmVudGjDqHNlIG91dnJhbnRlIEI8KD4sIHNlIHRlcm1pbmUgIgorImF2ZWMgdW5lIHBhcmVudGjDqHNlIGZlcm1hbnRlIEI8KT4gZXQgZG9pdCBjb250ZW5pciBhdSBtb2lucyB1bmUgw6l0aXF1ZXR0ZS4gIgorIkxlcyDDqXRpcXVldHRlcyBtdWx0aXBsZXMgZG9pdmVudCDDqnRyZSBzw6lwYXLDqWVzIHBhciBsZSBjYXJhY3TDqHJlIEI8fD4uIENoYXF1ZSAiCisiw6l0aXF1ZXR0ZSBwZXV0IGNvbXBvcnRlciBvcHRpb25uZWxsZW1lbnQgdW5lIHZhbGV1ciwgc8OpcGFyw6llIGR1IG5vbSBkZSAiCisibCfDqXRpcXVldHRlIHBhciBsZSBjYXJhY3TDqHJlIEI8PT4uIExlcyBub21zIGV0IHZhbGV1cnMgZGVzIMOpdGlxdWV0dGVzIHNvbnQgIgorImRlcyBjaGHDrm5lcyBxdWVsY29ucXVlcyBxdWkgbmUgZG9pdmVudCBwYXMgY29tcG9ydGVyIGxlcyBjYXJhY3TDqHJlcyBCPCk+IEI8fCIKKyI+IGV0IEI8PT4uIExlcyBub21zIGRlIHN5bWJvbGVzIHF1aSBzdWl2ZW50IHVuZSDDqXRpcXVldHRlIHBldXZlbnQgIgorIm9wdGlvbm5lbGxlbWVudCDDqnRyZSBtaXMgZW50cmUgZ3VpbGxlbWV0cyBhdmVjIGxlcyBjYXJhY3TDqHJlcyBCPCc+IG91IEI8XCI+ICIKKyJhZmluIGQneSBhdXRvcmlzZXIgbGEgcHLDqXNlbmNlIGQnZXNwYWNlcy4gQ2VwZW5kYW50LCBzaSBhdWN1bmUgw6l0aXF1ZXR0ZSAiCisibidlc3QgdXRpbGlzw6llLCBsZXMgZ3VpbGxlbWV0cyBzb250IGFsb3JzIHRyYWl0w6lzIGNvbW1lIHVuZSBwYXJ0aWUgZHUgbm9tIGR1ICIKKyJzeW1ib2xlLCBxdWkgcydhcnLDqnRlIGFsb3JzIGF1IHByZW1pZXIgZXNwYWNlLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6OTUKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiICh0YWcxPWkgYW0gbWFya2VkfHRhZyBuYW1lIHdpdGggc3BhY2UpXCJ0YWdnZWQgcXVvdGVkIHN5bWJvbFwiQEJhc2UgMS4wXG4iCisiIChvcHRpb25hbCl0YWdnZWRfdW5xdW90ZWRfc3ltYm9sQEJhc2UgMS4wIDFcbiIKKyIgdW50YWdnZWRfc3ltYm9sQEJhc2UgMS4wXG4iCittc2dzdHIgIiIKKyIgKMOpdGlxMT1qZSBzdWlzIG1hcnF1w6l8w6l0aXF1ZXR0ZSBhdmVjIGVzcGFjZSlcInN5bWJvbGUgY29tcG9ydGFudCBkZXMgZXNwYWNlc1wiQEJhc2UgMS4wXG4iCisiIChvcHRpb25hbClzeW1ib2xlX25vbl9wcm90w6lnw6lAQmFzZSAxLjAgMVxuIgorIiBzeW1ib2xlX25vbl/DqXRpcXVldMOpQEJhc2UgMS4wXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjEwMQorbXNnaWQgIiIKKyJUaGUgZmlyc3Qgc3ltYm9sIGluIHRoZSBleGFtcGxlIGlzIG5hbWVkIEk8dGFnZ2VkIHF1b3RlZCBzeW1ib2w+IGFuZCBoYXMgdHdvICIKKyJ0YWdzOiBJPHRhZzE+IHdpdGggdmFsdWUgSTxpIGFtIG1hcmtlZD4gYW5kIEk8dGFnIG5hbWUgd2l0aCBzcGFjZT4gdGhhdCBoYXMgIgorIm5vIHZhbHVlLiBUaGUgc2Vjb25kIHN5bWJvbCBuYW1lZCBJPHRhZ2dlZF91bnF1b3RlZF9zeW1ib2w+IGlzIG9ubHkgdGFnZ2VkICIKKyJ3aXRoIHRoZSB0YWcgbmFtZWQgSTxvcHRpb25hbD4uIFRoZSBsYXN0IHN5bWJvbCBpcyBhbiBleGFtcGxlIG9mIHRoZSBub3JtYWwgIgorInVudGFnZ2VkIHN5bWJvbC4iCittc2dzdHIgIiIKKyJMZSBwcmVtaWVyIHN5bWJvbGUgZGUgY2V0IGV4ZW1wbGUgZXN0IGFwcGVsw6kgSTxzeW1ib2xlIGNvbXBvcnRhbnQgZGVzICIKKyJlc3BhY2VzPiBldCB1dGlsaXNlIGRldXggw6l0aXF1ZXR0ZXPCoDrCoEk8w6l0aXExPiBhdmVjIGxhIHZhbGV1ciBJPGplIHN1aXMgIgorIm1hcnF1w6k+IGV0IEk8w6l0aXF1ZXR0ZSBhdmVjIGVzcGFjZT4gc2FucyB2YWxldXIuIExlIGRldXhpw6htZSBzeW1ib2xlLCBhcHBlbMOpICIKKyJJPHN5bWJvbGVfbm9uX3Byb3TDqWfDqT4gbmUgY29tcG9ydGUgcXVlIGwnw6l0aXF1ZXR0ZSBJPG9wdGlvbmFsPi4gTGUgZGVybmllciAiCisic3ltYm9sZSBlc3QgdW4gZXhlbXBsZSBkZSBzeW1ib2xlIG5vcm1hbCBzYW5zIMOpdGlxdWV0dGUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToxMTMKK21zZ2lkICIiCisiU2luY2Ugc3ltYm9sIHRhZ3MgYXJlIGFuIGV4dGVuc2lvbiBvZiB0aGUgSTxkZWItc3ltYm9scyg1KT4gZm9ybWF0LCB0aGV5IGNhbiAiCisib25seSBiZSBwYXJ0IG9mIHRoZSBzeW1ib2xzIGZpbGVzIHVzZWQgaW4gc291cmNlIHBhY2thZ2VzICh0aG9zZSBmaWxlcyAiCisic2hvdWxkIHRoZW4gYmUgc2VlbiBhcyB0ZW1wbGF0ZXMgdXNlZCB0byBidWlsZCB0aGUgc3ltYm9scyBmaWxlcyB0aGF0IGFyZSAiCisiZW1iZWRkZWQgaW4gYmluYXJ5IHBhY2thZ2VzKS4gV2hlbiBCPGRwa2ctZ2Vuc3ltYm9scz4gaXMgY2FsbGVkIHdpdGhvdXQgdGhlICIKKyJJPC10PiBvcHRpb24sIGl0IHdpbGwgb3V0cHV0IHN5bWJvbHMgZmlsZXMgY29tcGF0aWJsZSB0byB0aGUgSTxkZWItc3ltYm9scyg1KSIKKyI+IGZvcm1hdDogaXQgZnVsbHkgcHJvY2Vzc2VzIHN5bWJvbHMgYWNjb3JkaW5nIHRvIHRoZSByZXF1aXJlbWVudHMgb2YgdGhlaXIgIgorInN0YW5kYXJkIHRhZ3MgYW5kIHN0cmlwcyBhbGwgdGFncyBmcm9tIHRoZSBvdXRwdXQuIE9uIHRoZSBjb250cmFyeSwgaW4gIgorInRlbXBsYXRlIG1vZGUgKEk8LXQ+KSBhbGwgc3ltYm9scyBhbmQgdGhlaXIgdGFncyAoYm90aCBzdGFuZGFyZCBhbmQgdW5rbm93biAiCisib25lcykgIGFyZSBrZXB0IGluIHRoZSBvdXRwdXQgYW5kIGFyZSB3cml0dGVuIGluIHRoZWlyIG9yaWdpbmFsIGZvcm0gYXMgdGhleSAiCisid2VyZSBsb2FkZWQuIgorbXNnc3RyICIiCisiQ29tbWUgbGVzIMOpdGlxdWV0dGVzIGRlIHN5bWJvbGVzIHNvbnQgdW5lIGV4dGVuc2lvbiBkdSBmb3JtYXQgZGUgSTxkZWItIgorInN5bWJvbHMoNSk+LCBlbGxlcyBuZSBwZXV2ZW50IGFwcGFyYcOudHJlIHF1ZSBkYW5zIGxlcyBmaWNoaWVycyBkZSBzeW1ib2xlcyAiCisiZGVzIHBhcXVldHMgc291cmNlIChjZXMgZmljaGllcnMgcGV1dmVudCBlbnN1aXRlIMOqdHJlIHZ1cyBjb21tZSBkZXMgbW9kw6hsZXMgIgorInBlcm1ldHRhbnQgZGUgY29uc3RydWlyZSBsZXMgZmljaGllcnMgZGUgc3ltYm9sZXMgaW5jbHVzIGRhbnMgbGVzIHBhcXVldHMgIgorImJpbmFpcmVzKS4gTG9yc3F1ZSBCPGRwa2ctZ2Vuc3ltYm9scz4gZXN0IGxhbmPDqSBzYW5zIGwnb3B0aW9uIEk8LXQ+LCBpbCAiCisiYWZmaWNoZSBsZXMgZmljaGllcnMgZGUgc3ltYm9sZXMgY29tcGF0aWJsZXMgYXZlYyBsZSBmb3JtYXQgSTxkZWItc3ltYm9scyg1KSIKKyI+wqA6wqBpbCB0cmFpdGUgZW50acOocmVtZW50IGxlcyBzeW1ib2xlcyBkJ2FwcsOocyBsZXMgZXhpZ2VuY2VzIGRlcyDDqXRpcXVldHRlcyAiCisic3RhbmRhcmQgZXQgc3VwcHJpbWUgbGVzIMOpdGlxdWV0dGVzIGRhbnMgc2Egc29ydGllLiBBdSBjb250cmFpcmUsIGRhbnMgbGUgIgorIm1vZGUgbW9kw6hsZSAowqvCoHRlbXBsYXRlwqDCuywgb3B0aW9uIEk8LXQ+KSwgdG91cyBsZXMgc3ltYm9sZXMgZXQgbGV1cnMgIgorIsOpdGlxdWV0dGVzIChzdGFuZGFyZCBldCBpbmNvbm51ZXMpIHNvbnQgY29uc2VydsOpcyBkYW5zIGxhIHNvcnRpZSBldCDDqWNyaXRzICIKKyJkYW5zIGxldXIgZm9ybWUgZCdvcmlnaW5lLiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjExMworIywgbm8td3JhcAorbXNnaWQgIlN0YW5kYXJkIHN5bWJvbCB0YWdzIgorbXNnc3RyICLDiXRpcXVldHRlcyBzdGFuZGFyZCBkZSBzeW1ib2xlcyIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjExNAorIywgbm8td3JhcAorbXNnaWQgIkI8b3B0aW9uYWw+IgorbXNnc3RyICJCPG9wdGlvbmFsPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTI0Cittc2dpZCAiIgorIkEgc3ltYm9sIG1hcmtlZCBhcyBvcHRpb25hbCBjYW4gZGlzYXBwZWFyIGZyb20gdGhlIGxpYnJhcnkgYXQgYW55IHRpbWUgYW5kICIKKyJ0aGF0IHdpbGwgbmV2ZXIgY2F1c2UgQjxkcGtnLWdlbnN5bWJvbHM+IHRvIGZhaWwuIEhvd2V2ZXIsIGRpc2FwcGVhcmVkICIKKyJvcHRpb25hbCBzeW1ib2xzIHdpbGwgY29udGludW91c2x5IGFwcGVhciBhcyBNSVNTSU5HIGluIHRoZSBkaWZmIGluIGVhY2ggbmV3ICIKKyJwYWNrYWdlIHJldmlzaW9uLiAgVGhpcyBiZWhhdmlvdXIgc2VydmVzIGFzIGEgcmVtaW5kZXIgZm9yIHRoZSBtYWludGFpbmVyICIKKyJ0aGF0IHN1Y2ggYSBzeW1ib2wgbmVlZHMgdG8gYmUgcmVtb3ZlZCBmcm9tIHRoZSBzeW1ib2wgZmlsZSBvciByZWFkZGVkIHRvICIKKyJ0aGUgbGlicmFyeS4gV2hlbiB0aGUgb3B0aW9uYWwgc3ltYm9sLCB3aGljaCB3YXMgcHJldmlvdXNseSBkZWNsYXJlZCBhcyAiCisiTUlTU0lORywgc3VkZGVubHkgcmVhcHBlYXJzIGluIHRoZSBuZXh0IHJldmlzaW9uLCBpdCB3aWxsIGJlIHVwZ3JhZGVkIGJhY2sgIgorInRvIHRoZSBcImV4aXN0aW5nXCIgc3RhdHVzIHdpdGggaXRzIG1pbmltdW0gdmVyc2lvbiB1bmNoYW5nZWQuIgorbXNnc3RyICIiCisiVW4gc3ltYm9sZSBtYXJxdcOpIGNvbW1lIG9wdGlvbm5lbCBwZXV0IGRpc3BhcmHDrnRyZSBkZSBsYSBiaWJsaW90aMOocXVlIMOgIHRvdXQgIgorIm1vbWVudCBldCBuZSBwcm92b3F1ZXJhIHBhcyBsJ8OpY2hlYyBkZSBCPGRwa2ctZ2Vuc3ltYm9scz4uIENlcGVuZGFudCwgbGVzICIKKyJzeW1ib2xlcyBvcHRpb25uZWxzIGRpc3BhcnVzIGFwcGFyYcOudHJvbnQgZW4gcGVybWFuZW5jZSBjb21tZSBtYW5xdWFudHMgZGFucyAiCisibGUgZmljaGllciBkZSBkaWZmw6lyZW5jZXMsIMOgIGNoYXF1ZSBub3V2ZWxsZSB2ZXJzaW9uIGR1IHBhcXVldC4gQ2UgIgorImNvbXBvcnRlbWVudCBzZXJ0IGRlIHJhcHBlbCBhdSByZXNwb25zYWJsZSBxdSd1biB0ZWwgc3ltYm9sZSBkb2l0IMOqdHJlICIKKyJzdXBwcmltw6kgZHUgZmljaGllciBkZSBzeW1ib2xlcyBvdSBiaWVuIHLDqWFqb3V0w6kgw6AgbGEgYmlibGlvdGjDqHF1ZS4gVW4gIgorInRlbHN5bWJvbGUgb3B0aW9ubmVsLCBwcsOpY8OpZGVtbWVudCBkw6ljbGFyw6kgY29tbWUgbWFucXVhbnQgKMKrwqBNSVNTSU5HwqDCuyksICIKKyJyw6lhcHBhcmHDrnRyZSBzb3VkYWluZW1lbnQgZGFucyBsYSB2ZXJzaW9uIHN1aXZhbnRlIGVuIMOpdGFudCByZW1pcyDDoCBsJ8OpdGF0ICIKKyJleGlzdGFudCAowqvCoGV4aXN0aW5nwqDCuyksIHNhbnMgbW9kaWZpY2F0aW9uIGRlIHNhIHZlcnNpb24gbWluaW1hbGUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToxMjkKK21zZ2lkICIiCisiVGhpcyB0YWcgaXMgdXNlZnVsIGZvciBzeW1ib2xzIHdoaWNoIGFyZSBwcml2YXRlIHdoZXJlIHRoZWlyIGRpc2FwcGVhcmFuY2UgIgorImRvIG5vdCBjYXVzZSBBQkkgYnJlYWthZ2UuIEZvciBleGFtcGxlLCBtb3N0IG9mIEMrKyB0ZW1wbGF0ZSBpbnN0YW50aWF0aW9ucyAiCisiZmFsbCBpbnRvIHRoaXMgY2F0ZWdvcnkuIExpa2UgYW55IG90aGVyIHRhZywgdGhpcyBvbmUgbWF5IGFsc28gaGF2ZSBhbiAiCisiYXJiaXRyYXJ5IHZhbHVlOiBpdCBjb3VsZCBiZSB1c2VkIHRvIGluZGljYXRlIHdoeSB0aGUgc3ltYm9sIGlzIGNvbnNpZGVyZWQgIgorIm9wdGlvbmFsLiIKK21zZ3N0ciAiIgorIkNldHRlIMOpdGlxdWV0dGUgZXN0IHV0aWxlIHBvdXIgbGVzIHN5bWJvbGVzIHF1aSBzb250IHByaXbDqXMgY2FyIGxldXIgIgorImRpc3Bhcml0aW9uIG5lIHByb3ZvcXVlIHBhcyBkZSBjaGFuZ2VtZW50IGQnaW50ZXJmYWNlIGFwcGxpY2F0aXZlIChBQkkpLiBQYXIgIgorImV4ZW1wbGUsIGxlcyBwbHVwYXJ0IGRlcyBtb2TDqGxlcyBkJ2luc3RhbnRpYWNpb24gQysrIHNvbnQgZGFucyBjZXR0ZSAiCisiY2F0w6lnb3JpZS4gQ29tbWUgdG91dGUgYXV0cmUgw6l0aXF1ZXR0ZSwgY2VsbGUtY2kgcGV1dCBjb21wcm90ZXIgdW5lIHZhbGV1ciAiCisiYXJiaXRyYWlyZSBxdWkgcGV1dCBzZXJ2aXIgw6AgaW5kaXF1ZXIgcG91ciBxdWVsbGUgcmFpc29uIGxlIHN5bWJvbGUgZXN0ICIKKyJvcHRpb25uZWwuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTI5CisjLCBuby13cmFwCittc2dpZCAiQjxhcmNoPT5JPGFyY2hpdGVjdHVyZSBsaXN0PiIKK21zZ3N0ciAiQjxhcmNoPT5JPGxpc3RlIGQnYXJjaGl0ZWN0dXJlcz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjE0MgorbXNnaWQgIiIKKyJUaGlzIHRhZyBhbGxvd3Mgb25lIHRvIHJlc3RyaWN0IHRoZSBzZXQgb2YgYXJjaGl0ZWN0dXJlcyB3aGVyZSB0aGUgc3ltYm9sIGlzICIKKyJzdXBwb3NlZCB0byBleGlzdC4gV2hlbiB0aGUgc3ltYm9scyBsaXN0IGlzIHVwZGF0ZWQgd2l0aCB0aGUgc3ltYm9scyAiCisiZGlzY292ZXJlZCBpbiB0aGUgbGlicmFyeSwgYWxsIGFyY2gtc3BlY2lmaWMgc3ltYm9scyB3aGljaCBkbyBub3QgY29uY2VybiAiCisidGhlIGN1cnJlbnQgaG9zdCBhcmNoaXRlY3R1cmUgYXJlIHRyZWF0ZWQgYXMgaWYgdGhleSBkaWQgbm90IGV4aXN0LiBJZiBhbiAiCisiYXJjaC1zcGVjaWZpYyBzeW1ib2wgbWF0Y2hpbmcgdGhlIGN1cnJlbnQgaG9zdCBhcmNoaXRlY3R1cmUgZG9lcyBub3QgZXhpc3QgIgorImluIHRoZSBsaWJyYXJ5LCBub3JtYWwgcHJvY2VkdXJlcyBmb3IgbWlzc2luZyBzeW1ib2xzIGFwcGx5IGFuZCBpdCBtYXkgY2F1c2UgIgorIkI8ZHBrZy1nZW5zeW1ib2xzPiB0byBmYWlsLiBPbiB0aGUgb3RoZXIgaGFuZCwgaWYgdGhlIGFyY2gtc3BlY2lmaWMgc3ltYm9sICIKKyJpcyBmb3VuZCB3aGVuIGl0IHdhcyBub3Qgc3VwcG9zZWQgdG8gZXhpc3QgKGJlY2F1c2UgdGhlIGN1cnJlbnQgaG9zdCAiCisiYXJjaGl0ZWN0dXJlIGlzIG5vdCBsaXN0ZWQgaW4gdGhlIHRhZyksIGl0IGlzIG1hZGUgYXJjaCBuZXV0cmFsIChpLmUuIHRoZSAiCisiYXJjaCB0YWcgaXMgZHJvcHBlZCBhbmQgdGhlIHN5bWJvbCB3aWxsIGFwcGVhciBpbiB0aGUgZGlmZiBkdWUgdG8gdGhpcyAiCisiY2hhbmdlKSwgYnV0IGl0IGlzIG5vdCBjb25zaWRlcmVkIGFzIG5ldy4iCittc2dzdHIgIiIKKyJDZXR0ZSDDqXRpcXVldHRlIHBlcm1ldCBkZSByZXN0cmVpbmRyZSBsYSBsaXN0ZSBkZXMgYXJjaGl0ZWN0dXJlcyBhdmVjICIKKyJsZXNxdWVsbGVzIGxlIHN5bWJvbGUgZXN0IGNlbnPDqSBleGlzdGVyLiBMb3JzcXVlIGxhIGxpc3RlIGRlcyB5bWJvbGVzIGVzdCAiCisibWlzZSDDoCBqb3VyIGF2ZWMgY2V1eCBkw6ljb3V2ZXJ0cyBkYW5zIGxhIGJpYmxpb3Row6hxdWUsIHRvdXMgbGVzIHN5bWJvbGVzICIKKyJzcMOpY2lmaXF1ZXMgZCdhcmNoaXRlY3R1cmVzIHF1aSBuZSBjb25jZXJuZW50IHBhcyBsJ2FyY2hpdGVjdHVyZSBlbiBjb3VycyAiCisic29udCBpZ25vcsOpcy4gU2kgdW4gc3ltYm9sZSBwcm9wcmUgw6AgbCdhcmNoaXRlY3R1cmUgZW4gY291cnMgbidleGlzdGUgcGFzICIKKyJkYW5zIGxhIGJpYmxpb3Row6hxdWUsIGxlcyBwcm9jZXNzdXMgbm9ybWF1eCBwb3VyIGRlcyBzeW1ib2xlcyBtYW5xdWFudHMgIgorInMnYXBwbGlxdWVudCBqdXNxdSfDoCDDqXZlbnR1ZWxsZW1lbnQgcHJvdm9xdWVyIGwnw6ljaGVjIGRlIEI8ZHBrZy1nZW5zeW1ib2xzPi4gIgorIkQndW4gYXV0cmUgY8O0dMOpLCBzaSBsZSBzeW1ib2xlIHByb3ByZSDDoCB1bmUgYXJjaGl0ZWN0dXJlIGVzdCB0cm91dsOpIGFsb3JzICIKKyJxdSdpbCBuJ2VzdCBwYXMgY2Vuc8OpIGV4aXN0ZXIgKHBhcmNlIHF1ZSBsJ2FyY2hpdGVjdHVyZSBjb3VyYW50ZSBuJ2VzdCBwYXMgIgorIm1lbnRpb25uw6llIGRhbnMgbCfDqXRpcXVldHRlKSwgaWwgZXN0IHJlbmR1IGluZMOpcGVuZGFudCBkZSBsJ2FyY2hpdGVjdHVyZSAiCisiKGwnw6l0aXF1ZXR0ZSBkJ2FyY2hpdGVjdHVyZSBlc3QgYWJhbmRvbm7DqWUgZXQgbGUgc3ltYm9sZSBhcHBhcmHDrnQgZGFucyBsZSAiCisiZmljaGllciBkZSBkaWZmw6lyZW5jZXMpIG1haXMgbm9uIGNvbnNpZMOpcsOpIGNvbW1lIG5vdXZlYXUuIChOZFTCoDogdW5lICIKKyJhc3BpcmluZSBwZXV0IMOqdHJlIG7DqWNlc3NhaXJlIGFwcsOocyBsYSBsZWN0dXJlIGRlIGNlIHBhcmFncmFwaGUpIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToxNDgKK21zZ2lkICIiCisiV2hlbiBvcGVyYXRpbmcgaW4gdGhlIGRlZmF1bHQgbm9uLXRlbXBsYXRlIG1vZGUsIGFtb25nIGFyY2gtc3BlY2lmaWMgc3ltYm9scyAiCisib25seSB0aG9zZSB0aGF0IG1hdGNoIHRoZSBjdXJyZW50IGhvc3QgYXJjaGl0ZWN0dXJlIGFyZSB3cml0dGVuIHRvIHRoZSAiCisic3ltYm9scyBmaWxlLiBPbiB0aGUgY29udHJhcnksIGFsbCBhcmNoLXNwZWNpZmljIHN5bWJvbHMgKGluY2x1ZGluZyB0aG9zZSAiCisiZnJvbSBmb3JlaWduIGFyY2hlcykgYXJlIGFsd2F5cyB3cml0dGVuIHRvIHRoZSBzeW1ib2wgZmlsZSB3aGVuIG9wZXJhdGluZyBpbiAiCisidGVtcGxhdGUgbW9kZS4iCittc2dzdHIgIiIKKyJEYW5zIGxlIG1vZGUgZGUgZm9uY3Rpb25uZW1lbnQgcGFyIGTDqWZhdXQgKHBhcyBlbiBtb2RlIMKrwqBtb2TDqGxlwqDCuyksIHNldWxzICIKKyJsZXMgc3ltYm9sZXMgc3DDqWNpZmlxdWVzIGRlIGNlcnRhaW5lcyBhcmNoaXRlY3R1cmVzIHF1aSBjb3JyZXNwb25kZW50IMOgICIKKyJsJ2FyY2hpdGVjdHVyZSBjb3VyYW50ZSBzb250IMOpY3JpdHMgZGFucyBsZSBmaWNoaWVyIGRlIHN5bWJvbGVzLiBBdSAiCisiY29udHJhaXJlLCB0b3VzIGxlcyBzeW1ib2xlcyBzcMOpY2lmaXF1ZXMgZCdhcmNoaXRlY3R1cmVzICh5IGNvbXByaXMgY2V1eCBkZXMgIgorImFyY2hpdGVjdHVyZXMgZGlmZsOpcmVudGVzKSBzZXJvbnQgw6ljcml0cyBkYW5zIGxlIGZpY2hpZXIgZGUgc3ltYm9sZXMsIGRhbnMgIgorImxlIG1vZGUgwqvCoG1vZMOobGXCoMK7LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTU0Cittc2dpZCAiIgorIlRoZSBmb3JtYXQgb2YgSTxhcmNoaXRlY3R1cmUgbGlzdD4gaXMgdGhlIHNhbWUgYXMgdGhlIG9uZSB1c2VkIGluIHRoZSAiCisiSTxCdWlsZC1EZXBlbmRzPiBmaWVsZCBvZiBJPGRlYmlhbi9jb250cm9sPiAoZXhjZXB0IHRoZSBlbmNsb3Npbmcgc3F1YXJlICIKKyJicmFja2V0cyBbXSkuIEZvciBleGFtcGxlLCB0aGUgZmlyc3Qgc3ltYm9sIGZyb20gdGhlIGxpc3QgYmVsb3cgd2lsbCBiZSAiCisiY29uc2lkZXJlZCBvbmx5IG9uIGFscGhhLCBhbWQ2NCwga2ZyZWVic2QtYW1kNjQgYW5kIGlhNjQgYXJjaGl0ZWN0dXJlcyB3aGlsZSAiCisidGhlIHNlY29uZCBvbmUgYW55d2hlcmUgZXhjZXB0IG9uIGFybWVsLiIKK21zZ3N0ciAiIgorIkxlIGZvcm1hdCBkZSBJPGFyY2hpdGVjdHVyZSBsaXN0PiBlc3QgbGUgbcOqbWUgcXVlIGxlIGZvcm1hdCB1dGlsaXPDqSBkYW5zIGxlcyAiCisiY2hhbXBzIEk8QnVpbGQtRGVwZW5kcz4gZGVzIGZpY2hpZXJzIEk8ZGViaWFuL2NvbnRyb2w+ICjDoCBsJ2V4Y2VwdGlvbiBkZXMgIgorImNyb2NoZXRzIGQnaW5jbHVzaW9uIFtdKS4gUGFyIGV4ZW1wbGUsIGxlIHByZW1pZXIgc3ltYm9sZSBkZSBsYSBsaXN0ZSBxdWkgIgorInN1aXQgc2VyYSBwcmlzIGVuIGNvbXB0ZSBzdXIgbGVzIGFyY2hpdGVjdHVyZXMgYWxwaGEsIGFtZDY0LCBrZnJlZWJzZC1hbWQ2NCAiCisiZXQgaWE2NCwgbWFpcyBsZSBzZWNvbmQgdW5pcXVlbWVudCBzdXIgYXJtZWwuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToxNTcKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiIChhcmNoPWFscGhhIGFtZDY0IGtmcmVlYnNkLWFtZDY0IGlhNjQpYV82NGJpdF9zcGVjaWZpY19zeW1ib2xAQmFzZSAxLjBcbiIKKyIgKGFyY2g9IWFybWVsKXN5bWJvbF9hcm1lbF9kb2VzX25vdF9oYXZlQEJhc2UgMS4wXG4iCittc2dzdHIgIiIKKyIgKGFyY2g9YWxwaGEgYW1kNjQga2ZyZWVic2QtYW1kNjQgaWE2NCl1bl9zeW1ib2xlX3Nww6ljaWZpcXVlXzY0Yml0QEJhc2UgMS4wXG4iCisiIChhcmNoPSFhcm1lbCl1bl9zeW1ib2xlX2luZXhpc3RhbnRfc3VyX2FybWVsQEJhc2UgMS4wXG4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbnN5bWJvbHMuMToxNTcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGlnbm9yZS1ibGFja2xpc3Q+IgorbXNnc3RyICJCPGlnbm9yZS1ibGFja2xpc3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToxNjUKK21zZ2lkICIiCisiZHBrZy1nZW5zeW1ib2xzIGhhcyBhbiBpbnRlcm5hbCBibGFja2xpc3Qgb2Ygc3ltYm9scyB0aGF0IHNob3VsZCBub3QgYXBwZWFyICIKKyJpbiBzeW1ib2xzIGZpbGVzIGFzIHRoZXkgYXJlIHVzdWFsbHkgb25seSBzaWRlLWVmZmVjdHMgb2YgaW1wbGVtZW50YXRpb24gIgorImRldGFpbHMgb2YgdGhlIHRvb2xjaGFpbi4gSWYgZm9yIHNvbWUgcmVhc29uLCB5b3UgcmVhbGx5IHdhbnQgb25lIG9mIHRob3NlICIKKyJzeW1ib2xzIHRvIGJlIGluY2x1ZGVkIGluIHRoZSBzeW1ib2xzIGZpbGUsIHlvdSBzaG91bGQgdGFnIHRoZSBzeW1ib2wgd2l0aCAiCisiQjxpZ25vcmUtYmxhY2tsaXN0Pi4gSXQgY2FuIGJlIG5lY2Vzc2FyeSBmb3Igc29tZSBsb3cgbGV2ZWwgdG9vbGNoYWluICIKKyJsaWJyYXJpZXMgbGlrZSBsaWJnY2MuIgorbXNnc3RyICIiCisiZHBrZy1nZW5zeW1ib2xzIGNvbXBvcnRlIHVuZSBsaXN0ZSBpbnRlcm5lIGRlIHN5bWJvbGVzIGlnbm9yw6lzIHF1aSBuZSAiCisiZGV2cmFpZW50IHBhcyBhcHBhcmHDrnRyZSBkYW5zIGxlcyBmaWNoaWVycyBkZSBzeW1ib2xlcyBjYXIgaWxzIHNvbnQgZW4gIgorImfDqW7DqXJhbCB1bmlxdWVtZW50IGRlcyBlZmZldHMgZGUgYm9yZCBkZSBkw6l0YWlscyBkZSBtaXNlIGVuIG9ldXZyZSBkZSBsYSAiCisiY2hhw65uZSBkJ291dGlscyBkZSBjb25zdHJ1Y3Rpb24uIFNpLCBwb3VyIHVuZSByw6lpc29uIHByw6ljaXNlLCB2b3VzIHZvdWxleiAiCisidnJhaW1lbnQgaW5jbHVyZSB1biBkZSBjZXMgc3ltYm9sZXMgZGFucyBsZSBmaWNoaWVyLCB2b3VzIHBvdXZleiBpbXBvc2VyICIKKyJxdSdpbCBzb2l0IGlnbm9yw6ksIGF2ZWMgQjxpZ25vcmUtYmxhY2tsaXN0Pi4gQ2VsYSBwZXV0IMOqdHJlIHV0aWxlIHBvdXIgIgorImNlcnRhaW5lcyBiaWJsaW90aMOocXVlcyBkZSBiYXMgbml2ZWF1IHRlbGxlcyBxdWUgbGliZ2NjLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjE2NSBkcGtnLWdlbnN5bWJvbHMuMToyMDIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGMrKz4iCittc2dzdHIgIkI8YysrPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTY5Cittc2dpZCAiIgorIkRlbm90ZXMgSTxjKys+IHN5bWJvbCBwYXR0ZXJuLiBTZWUgQjxVc2luZyBzeW1ib2wgcGF0dGVybnM+IHN1YnNlY3Rpb24gYmVsb3cuIgorbXNnc3RyICIiCisiSW5kaXF1ZSB1biBtb3RpZiBkZSBzeW1ib2xlIEk8YysrPi4gVm9pciBsYSBzb3VzLXNlY3Rpb24gQjxVdGlsaXNhdGlvbiBkZSAiCisiY2FuZXZhcyBkZSBzeW1ib2xlcz4gcGx1cyBsb2luLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjE2OSBkcGtnLWdlbnN5bWJvbHMuMToyMzMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHN5bXZlcj4iCittc2dzdHIgIkI8c3ltdmVyPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTczCittc2dpZCAiIgorIkRlbm90ZXMgSTxzeW12ZXI+IChzeW1ib2wgdmVyc2lvbikgc3ltYm9sIHBhdHRlcm4uIFNlZSBCPFVzaW5nIHN5bWJvbCAiCisicGF0dGVybnM+IHN1YnNlY3Rpb24gYmVsb3cuIgorbXNnc3RyICJJbmRpcXVlIHVuIG1vdGlmIGRlIHN5bWJvbGUgSTxzeW12ZXI+ICh2ZXJzaW9uIGRlIHN5bWJvbGUpLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjE3MyBkcGtnLWdlbnN5bWJvbHMuMToyNTgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHJlZ2V4PiIKK21zZ3N0ciAiQjxyZWdleD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjE3NworbXNnaWQgIiIKKyJEZW5vdGVzIEk8cmVnZXg+IHN5bWJvbCBwYXR0ZXJuLiBTZWUgQjxVc2luZyBzeW1ib2wgcGF0dGVybnM+IHN1YnNlY3Rpb24gIgorImJlbG93LiIKK21zZ3N0ciAiIgorIkluZGlxdWUgdW4gbW90aWYgZGUgc3ltYm9sZSBiYXPDqSBzdXIgZGVzIEk8ZXhwcmVzc2lvbnMgcmF0aW9ubmVsbGVzPi4gVm9pciAiCisibGEgc291cy1zZWN0aW9uIEI8VXRpbGlzYXRpb24gZGVzIG1vdGlmcyBkZSBzeW1ib2xlcz4gcGx1cyBsb2luLiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjE3NworIywgbm8td3JhcAorbXNnaWQgIlVzaW5nIHN5bWJvbCBwYXR0ZXJucyIKK21zZ3N0ciAiVXRpbGlzYXRpb24gZGVzIG1vdGlmcyBkZSBzeW1ib2xlcyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTg1Cittc2dpZCAiIgorIlVubGlrZSBhIHN0YW5kYXJkIHN5bWJvbCBzcGVjaWZpY2F0aW9uLCBhIHBhdHRlcm4gbWF5IGNvdmVyIG11bHRpcGxlIHJlYWwgIgorInN5bWJvbHMgZnJvbSB0aGUgbGlicmFyeS4gQjxkcGtnLWdlbnN5bWJvbHM+IHdpbGwgYXR0ZW1wdCB0byBtYXRjaCBlYWNoICIKKyJwYXR0ZXJuIGFnYWluc3QgZWFjaCByZWFsIHN5bWJvbCB0aGF0IGRvZXMgSTxub3Q+IGhhdmUgYSBzcGVjaWZpYyBzeW1ib2wgIgorImNvdW50ZXJwYXJ0IGRlZmluZWQgaW4gdGhlIHN5bWJvbCBmaWxlLiBXaGVuZXZlciB0aGUgZmlyc3QgbWF0Y2hpbmcgcGF0dGVybiAiCisiaXMgZm91bmQsIGFsbCBpdHMgdGFncyBhbmQgcHJvcGVydGllcyB3aWxsIGJlIHVzZWQgYXMgYSBiYXNpcyBzcGVjaWZpY2F0aW9uICIKKyJvZiB0aGUgc3ltYm9sLiBJZiBub25lIG9mIHRoZSBwYXR0ZXJucyBtYXRjaGVzLCB0aGUgc3ltYm9sIHdpbGwgYmUgIgorImNvbnNpZGVyZWQgYXMgbmV3LiIKK21zZ3N0ciAiIgorIkF1IGNvbnRyYWlyZSBkJ3VuZSBpbmRpY2F0aW9uIG5vcm1hbGUgZGUgc3ltYm9sZSwgdW4gbW90aWYgcGVybWV0IGRlIGNvdXZyaXIgIgorImRlcyBzeW1ib2xlcyBtdWx0aXBsZXMgZGUgbGEgYmlibGlvdGjDqHF1ZS4gQjxkcGtnLWdlbnN5bWJvbHM+IGVzc2FpZSBkZSAiCisiZmFpcmUgY29ycmVzcG9uZHJlIGNoYXF1ZSBtb3RpZiDDoCBjaGFxdWUgc3ltYm9sZSBxdWkgbidlc3QgcGFzIGV4cGxpY2l0ZW1lbnQgIgorImTDqWZpbmkgZGFucyBsZSBmaWNoaWVyIGRlIHN5bWJvbGVzLiBEw6hzIHF1J3VuIG1vdGlmIGVzdCB0cm91dsOpIHF1aSAiCisiY29ycmVzcG9uZGUgYXUgc3ltYm9sZSwgbCdlbnNlbWJsZSBkZSBzZXMgw6l0aXF1ZXR0ZXMgZXQgcHJvcHJpw6l0w6lzIHNvbnQgIgorInV0aWxpc8OpcyBjb21tZSBzcMOpY2lmaWNhdGlvbiBkZSBiYXNlIGR1IHN5bWJvbGUuIFNpIGF1Y3VuIGRlcyBtb3RpZnMgbmUgIgorImNvcnJlc3BvbmQsIGxlIHN5bWJvbGUgc2VyYSBjb25zaWTDqXLDqSBjb21tZSBub3V2ZWF1LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTkzCittc2dpZCAiIgorIkEgcGF0dGVybiBpcyBjb25zaWRlcmVkIGxvc3QgaWYgaXQgZG9lcyBub3QgbWF0Y2ggYW55IHN5bWJvbCBpbiB0aGUgbGlicmFyeS4gIgorIkJ5IGRlZmF1bHQgdGhpcyB3aWxsIHRyaWdnZXIgYSBCPGRwa2ctZ2Vuc3ltYm9scz4gZmFpbHVyZSB1bmRlciBJPC1jMT4gb3IgIgorImhpZ2hlciBsZXZlbC4gSG93ZXZlciwgaWYgdGhlIGZhaWx1cmUgaXMgdW5kZXNpcmVkLCB0aGUgcGF0dGVybiBtYXkgYmUgIgorIm1hcmtlZCB3aXRoIHRoZSBJPG9wdGlvbmFsPiB0YWcuIFRoZW4gaWYgdGhlIHBhdHRlcm4gZG9lcyBub3QgbWF0Y2ggIgorImFueXRoaW5nLCBpdCB3aWxsIG9ubHkgYXBwZWFyIGluIHRoZSBkaWZmIGFzIE1JU1NJTkcuIE1vcmVvdmVyLCBsaWtlIGFueSAiCisic3ltYm9sLCB0aGUgcGF0dGVybiBtYXkgYmUgbGltaXRlZCB0byB0aGUgc3BlY2lmaWMgYXJjaGl0ZWN0dXJlcyB3aXRoIHRoZSAiCisiSTxhcmNoPiB0YWcuIFBsZWFzZSByZWZlciB0byBCPFN0YW5kYXJkIHN5bWJvbCB0YWdzPiBzdWJzZWN0aW9uIGFib3ZlIGZvciAiCisibW9yZSBpbmZvcm1hdGlvbi4iCittc2dzdHIgIiIKKyJBIG1vdGlmIGVzdCBjb25zaWTDqXLDqSBjb21tZSBwZXJkdSBzaSBhdWN1biBzeW1ib2xlIG5lIGx1aSBjb3JyZXNwb25kIGRhbnMgbGEgIgorImJpYmxpb3Row6hxdWUuIFBhciBkw6lmYXV0LCBjZWxhIHByb3ZvcXVlcmEgdW4gw6ljaGVjIGRlIEI8ZHBrZy1nZW5zeW1ib2xzPiAiCisicydpbCBlc3QgdXRpbGlzw6kgYXZlYyBsJ29wdGlvbiBJPC1jMT4gKG91IHVuZSB2YWxldXIgcGx1cyDDqWxldsOpZSkuICIKKyJDZXBlbmRhbnQsIHNpIGwnw6ljaGVjIG4nZXN0IHBhcyBzb3VoYWl0w6ksIGxlIG1vdGlmIHBldXQgw6p0cmUgbWFycXXDqSBjb21tZSAiCisib3B0aW9ubmVsIGF2ZWMgbCfDqXRpcXVldHRlIEk8b3B0aW9uYWw+LiBEYW5zIGNlIGNhcywgc2kgbGVtb3RpZiBuZSAiCisiY29ycmVzcG9uZCDDoCByaWVuLCBpbCBzZXJhIHNpbXBsZW1lbnQgbWVudGlvbm7DqSBkYW5zIGxlIGZpY2hpZXIgZGUgIgorImRpZmbDqXJlbmNlcyBjb21tZSBJPE1JU1NJTkc+IChtYW5xdWFudCkuIERlIHBsdXMsIGNvbW1lIHBvdXIgdG91dCBhdXRyZSAiCisic3ltYm9sZSwgbGUgbW90aWYgcGV1dCDDqnRyZSBsaW1pdMOpIMOgIGRlcyBhcmNoaXRlY3R1cmVzIGRvbm7DqWVzIGF2ZWMgIgorImwnw6l0aXF1ZXR0ZSBJPGFyY2g+LiBWZXVpbGxleiBjb25zdWx0ZXIgbGEgc291cy1zZWN0aW9uIEI8w4l0aXF1ZXR0ZXMgIgorInN0YW5kYXJkIGRlIHN5bWJvbGVzPiBwb3VyIHBsdXMgZCdpbmZvcm1hdGlvbnMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyMDAKK21zZ2lkICIiCisiUGF0dGVybnMgYXJlIGFuIGV4dGVuc2lvbiBvZiB0aGUgSTxkZWItc3ltYm9scyg1KT4gZm9ybWF0IGhlbmNlIHRoZXkgYXJlICIKKyJvbmx5IHZhbGlkIGluIHN5bWJvbCBmaWxlIHRlbXBsYXRlcy4gUGF0dGVybiBzcGVjaWZpY2F0aW9uIHN5bnRheCBpcyBub3QgYW55ICIKKyJkaWZmZXJlbnQgZnJvbSB0aGUgb25lIG9mIGEgc3BlY2lmaWMgc3ltYm9sLiBIb3dldmVyLCBzeW1ib2wgbmFtZSBwYXJ0IG9mICIKKyJ0aGUgc3BlY2lmaWNhdGlvbiBzZXJ2ZXMgYXMgYW4gZXhwcmVzc2lvbiB0byBiZSBtYXRjaGVkIGFnYWluc3QgIgorIkk8bmFtZUB2ZXJzaW9uPiBvZiB0aGUgcmVhbCBzeW1ib2wuIEluIG9yZGVyIHRvIGRpc3Rpbmd1aXNoIGFtb25nIGRpZmZlcmVudCAiCisicGF0dGVybiB0eXBlcywgYSBwYXR0ZXJuIHdpbGwgdHlwaWNhbGx5IGJlIHRhZ2dlZCB3aXRoIGEgc3BlY2lhbCB0YWcuIgorbXNnc3RyICIiCisiTGVzIG1vdGlmcyBzb250IHVuZSBleHRlbnNpb24gZHUgZm9ybWF0IGRlIEk8ZGViLXN5bWJvbHMoNSk+IGVuIGNlIHNlbnMgIgorInF1J2lscyBuZSBzb250IHZhbGFibGVzIHF1ZSBkYW5zIGxlcyBtb2TDqGxlcyBkZSBmaWNoaWVycyBkZSBzeW1ib2xlcy4gIgorIkNlcGVuZGFudCwgbGEgcGFydGllIGNvbXBvcnRhbnQgbGUgbm9tIGRlIHN5bWJvbGUgZXN0IHV0aWxpc8OpZSBjb21tZSB1bmUgIgorImV4cHJlc3Npb24gw6AgZmFpcmUgY29ycmVzcG9uZHJlIMOgIEk8bmFtZUB2ZXJzaW9uPiBkdSBzeW1ib2xlIHLDqWVsLiBBZmluIGRlICIKKyJmYWlyZSBsYSBkaXN0aW5jdGlvbiBlbnRyZSBsZXMgZGlmZsOpcmVudHMgdHlwZXMgZGUgbW90aWZzLCB1biBtb3RpZiBzZXJhICIKKyJ1c3VlbGxlbWVudCBtYXJxdcOpIGF2ZWMgdW5lIMOpdGlxdWV0dGUgc3DDqWNpYWxlLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjAyCittc2dpZCAiQXQgdGhlIG1vbWVudCwgQjxkcGtnLWdlbnN5bWJvbHM+IHN1cHBvcnRzIHRocmVlIGJhc2ljIHBhdHRlcm4gdHlwZXM6IgorbXNnc3RyICJBY3R1ZWxsZW1lbnQsIEI8ZHBrZy1nZW5zeW1ib2xzPiBnw6hyZXMgdHJvaXMgdHlwZSBkZSBiYXNlIGRlIG1vdGlmc8KgOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjE0Cittc2dpZCAiIgorIlRoaXMgcGF0dGVybiBpcyBkZW5vdGVkIGJ5IHRoZSBJPGMrKz4gdGFnLiBJdCBtYXRjaGVzIG9ubHkgQysrIHN5bWJvbHMgYnkgIgorInRoZWlyIGRlbWFuZ2xlZCBzeW1ib2wgbmFtZSAoYXMgZW1pdHRlZCBieSBCPGMrK2ZpbHQ+KDEpIHV0aWxpdHkpLiBUaGlzICIKKyJwYXR0ZXJuIGlzIHZlcnkgaGFuZHkgZm9yIG1hdGNoaW5nIHN5bWJvbHMgd2hpY2ggbWFuZ2xlZCBuYW1lcyBtaWdodCB2YXJ5ICIKKyJhY3Jvc3MgZGlmZmVyZW50IGFyY2hpdGVjdHVyZXMgd2hpbGUgdGhlaXIgZGVtYW5nbGVkIG5hbWVzIHJlbWFpbiB0aGUgc2FtZS4gIgorIk9uZSBncm91cCBvZiBzdWNoIHN5bWJvbHMgaXMgSTxub24tdmlydHVhbCB0aHVua3M+IHdoaWNoIGhhdmUgYXJjaGl0ZWN0dXJlICIKKyJzcGVjaWZpYyBvZmZzZXRzIGVtYmVkZGVkIGluIHRoZWlyIG1hbmdsZWQgbmFtZXMuIEEgY29tbW9uIGluc3RhbmNlIG9mIHRoaXMgIgorImNhc2UgaXMgYSB2aXJ0dWFsIGRlc3RydWN0b3Igd2hpY2ggdW5kZXIgZGlhbW9uZCBpbmhlcml0YW5jZSBuZWVkcyBhIG5vbi0iCisidmlydHVhbCB0aHVuayBzeW1ib2wuIEZvciBleGFtcGxlLCBldmVuIGlmIF9aVGhuOF9OM05TQjZDbGFzc0REMUV2QEJhc2Ugb24gIgorIjMyYml0IGFyY2hpdGVjdHVyZXMgd2lsbCBwcm9iYWJseSBiZSBfWlRobjE2X04zTlNCNkNsYXNzREQxRXZAQmFzZSBvbiA2NGJpdCAiCisib25lcywgaXQgY2FuIGJlIG1hdGNoZWQgd2l0aCBhIHNpbmdsZSBJPGMrKz4gcGF0dGVybjoiCittc2dzdHIgIiIKKyJDZSBtb3RpZiBlc3QgcmVww6lyw6kgcGFyIGwnw6l0aXF1ZXR0ZSBJPGMrKz4uIElsIG5lIHNlcmEgY29tcGFyw6kgcXUnYXV4ICIKKyJzeW1ib2xlcyBDKysgYXZlYyBsZXVyIG5vbSBkZSBzeW1ib2xlIGNvbXBsZXQgKGRlbWFuZ2xlZCkgdGVsIHF1J2FmZmljaMOpICIKKyJhdmVjIGwndXRpbGl0YWlyZSBCPGMrK2ZpbHQ+LiBDZSBtb3RpZiBlc3QgdHLDqHMgcHJhdGlxdWUgcG91ciBmYWlyZSAiCisiY29ycmVzcG9uZHJlIGxlcyBzeW1ib2xlcyBkb250IGxlcyBub21zIHJhY2NvdXJjaXMgKG1hbmdsZWQpIHBldXQgZGlmZsOpcmVyICIKKyJzZWxvbiBsZXMgYXJjaGl0ZWN0dXJlcyBiaWVuIHF1ZSBsZXVycyBub21zIGNvbXBsZXQgcmVzdGVudCBsZXMgbcOqbWVzLiBVbiAiCisidGVsIGdyb3VwZSBkZSBzeW1ib2xlcyBzb250IGxlcyBJPG5vbi12aXJ0dWFsIHRodW5rcz4gcG91IHJsZXNxdWVscyBsZXMgIgorImTDqWNhbGFnZXMgKG9mZnNldHMpIHNww6ljaWZpcXVlcyBkJ2FyY2hpdGVjdHVyZXMgc29udCBpbmNsdXMgZGFucyBsZXVyIG5vbSAiCisiY291cnQuIFVuZSBtYW5pZmVzdGF0aW9uICB1c3VlbGxlIGRlIGNlIGNhcyBlc3QgbGUgZGVzdHJ1Y3RldXIgdmlydHVlbCBxdWksICIKKyJlbiDCq8KgZGlhbW9uIGluaGVyaXRhbmNlwqDCuyAoTmRUOiBpbnRyYWR1aXNpYmxlPykgYSBiZXNvaW4gZCd1biBzeW1ib2xlICIKKyLCq8KgdGh1bmvCoMK7IChOZHQ6IGRpdHRvKSBub24gdmlydHVlbC4gUGFyIGV4ZW1wbGUsIG3Dqm1lIHNpICIKKyJfWlRobjhfTjNOU0I2Q2xhc3NERDFFdkBCYXNlIHN1ciB1bmUgYXJjaGl0ZWN0dXJlIDMyYml0IGVzdCBpZGVudGlxdWUgw6AgIgorIl9aVGhuMTZfTjNOU0I2Q2xhc3NERDFFdkBCYXNlIHN1ciB1bmUgYXJjaGl0ZWN0dXJlIDY0Yml0LCBsZXMgZGV1eCBwZXV2ZW50ICIKKyLDqnRyZSBpbmRpcXXDqXMgYXZlYyBsZSBtw6ptZSBtb3RpZiBJPGMrKz7CoDoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjIyMAorIywgbm8td3JhcAorbXNnaWQgIiIKKyJsaWJkdW1teS5zby4xIGxpYmR1bW15MSAjTUlOVkVSI1xuIgorIiBbLi4uXVxuIgorIiAoYysrKVwibm9uLXZpcnR1YWwgdGh1bmsgdG8gTlNCOjpDbGFzc0Q6On5DbGFzc0QoKUBCYXNlXCIgMS4wXG4iCisiIFsuLi5dXG4iCittc2dzdHIgIiIKKyJsaWJkdW1teS5zby4xIGxpYmR1bW15MSAjTUlOVkVSI1xuIgorIiBbLi4uXVxuIgorIiAoYysrKVwibm9uLXZpcnR1YWwgdGh1bmsgdG8gTlNCOjpDbGFzc0Q6On5DbGFzc0QoKUBCYXNlXCIgMS4wXG4iCisiIFsuLi5dXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjIyMgorbXNnaWQgIiIKKyJUaGUgZGVtYW5nbGVkIG5hbWUgYWJvdmUgY2FuIGJlIG9idGFpbmVkIGJ5IGV4ZWN1dGluZyB0aGUgZm9sbG93aW5nIGNvbW1hbmQ6IgorbXNnc3RyICJMZSBub20gY29tcGxldCBjaS1kZXNzdXMgcGV1dCDDqnRyZSBvYnRlbnUgYXZlYyBsYSBjb21tYW5kZSBzdWl2YW50ZcKgOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjI0CisjLCBuby13cmFwCittc2dpZCAiICQgZWNobyAnX1pUaG44X04zTlNCNkNsYXNzREQxRXZAQmFzZScgfCBjKytmaWx0XG4iCittc2dzdHIgIiAkIGVjaG8gJ19aVGhuOF9OM05TQjZDbGFzc0REMUV2QEJhc2UnIHwgYysrZmlsdFxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyMzIKK21zZ2lkICIiCisiUGxlYXNlIG5vdGUgdGhhdCB3aGlsZSBtYW5nbGVkIG5hbWUgaXMgdW5pcXVlIGluIHRoZSBsaWJyYXJ5IGJ5IGRlZmluaXRpb24sICIKKyJ0aGlzIGlzIG5vdCBuZWNlc3NhcmlseSB0cnVlIGZvciBkZW1hbmdsZWQgbmFtZXMuIEEgY291cGxlIG9mIGRpc3RpbmN0IHJlYWwgIgorInN5bWJvbHMgbWF5IGhhdmUgdGhlIHNhbWUgZGVtYW5nbGVkIG5hbWUuIEZvciBleGFtcGxlLCB0aGF0J3MgdGhlIGNhc2Ugd2l0aCAiCisibm9uLXZpcnR1YWwgdGh1bmsgc3ltYm9scyBpbiBjb21wbGV4IGluaGVyaXRhbmNlIGNvbmZpZ3VyYXRpb25zIG9yIHdpdGggbW9zdCAiCisiY29uc3RydWN0b3JzIGFuZCBkZXN0cnVjdG9ycyAoc2luY2UgZysrIHR5cGljYWxseSBnZW5lcmF0ZXMgdHdvIHJlYWwgc3ltYm9scyAiCisiZm9yIHRoZW0pLiBIb3dldmVyLCBhcyB0aGVzZSBjb2xsaXNpb25zIGhhcHBlbiBvbiB0aGUgQUJJIGxldmVsLCB0aGV5IHNob3VsZCAiCisibm90IGRlZ3JhZGUgcXVhbGl0eSBvZiB0aGUgc3ltYm9sIGZpbGUuIgorbXNnc3RyICIiCisiVmV1aWxsZXogbm90ZXIgcXVlLCBiaWVuIHF1ZSBsZSBub20gY29tcGxldCBzb2l0IHVuaXF1ZSBkYW5zIGxhIGJpYmxpb3Row6hxdWUgIgorInBhciBkw6lmaW5pdGlvbiwgY2VsYSBuJ2VzdCBwYXMgZm9yY8OpbWVudCB2cmFpIHBvdXIgbGUgbm9tIHJhY2NvdXJjaS4gRGV1eCAiCisic3ltYm9sZXMgcsOpZWxzIGRpZmbDqXJlbnRzIHBldXZlbnQgYXZvaXIgbGUgbcOqbWUgbm9tIHJhY2NvdXJjaS4gQydlc3QgcGFyICIKKyJleGVtcGxlIGxlIGNhcyBhdmVjIGxlcyBzeW1ib2xlcyDCq8KgdGh1bmvCoMK7IG5vbiB2aXJ0dWVscyBkYW5zIGRlcyAiCisiY29uZmlndXJhdGlvbnMgZCdow6lyaXRhZ2UgY29tcGxleGVzIG91IGF2ZWMgbGEgcGx1cGFydCBkZXMgY29uc3RydWN0ZXVycyBldCAiCisiZGVzdHJ1Y3RldXJzIChwdWlzcXVlIGcrKyBjcsOpZSB1c3VlbGxlbWVudCBkZXV4IHN5bWJvbGVzIHLDqWVscyBwb3VyIGV1eCkuICIKKyJDZXBlbmRhbnQsIGNvbW1lIGNlcyBjb2xsaXNpb25zIHNlIHByb2R1aXNlbnQgYXUgbml2ZWF1IGRlIGwnaW50ZXJmYWNlICIKKyJhcHBsaWNhdGl2ZSBiaW5haXJlIChBQkkpLCBlbGxlIG5lIGRldnJhaWVudCBwYXMgZMOpZ3JhZGVyIGxhIHF1YWxpdMOpIGR1ICIKKyJmaWNoaWVyIGRlIHN5bWJvbGVzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjM5Cittc2dpZCAiIgorIlRoaXMgcGF0dGVybiBpcyBkZW5vdGVkIGJ5IHRoZSBJPHN5bXZlcj4gdGFnLiBXZWxsIG1haW50YWluZWQgbGlicmFyaWVzIGhhdmUgIgorInZlcnNpb25lZCBzeW1ib2xzIHdoZXJlIGVhY2ggdmVyc2lvbiBjb3JyZXNwb25kcyB0byB0aGUgdXBzdHJlYW0gdmVyc2lvbiAiCisid2hlcmUgdGhlIHN5bWJvbCBnb3QgYWRkZWQuIElmIHRoYXQncyB0aGUgY2FzZSwgeW91IGNhbiB1c2UgYSBJPHN5bXZlcj4gIgorInBhdHRlcm4gdG8gbWF0Y2ggYW55IHN5bWJvbCBhc3NvY2lhdGVkIHRvIHRoZSBzcGVjaWZpYyB2ZXJzaW9uLiBGb3IgZXhhbXBsZToiCittc2dzdHIgIiIKKyJDZSBtb3RpZiBlc3QgaW5kaXF1w6kgcGFyIGwnw6l0aXF1ZXR0ZSBJPHN5bXZlcj4uIExlcyBiaWJsaW90aMOocXVlcyBiaWVuICIKKyJnw6lyw6llcyB1dGlsaXNlbnQgZGVzIHN5bWJvbGVzIHZlcnNpb25uw6lzIG/DuSBjaGFxdWUgdmVyc2lvbiBjb3JyZXNwb25kIMOgIGxhICIKKyJ2ZXJzaW9uIGFtb250IMOgIGxhcXVlbGxlIGxlIHN5bWJvbGUgYSDDqXTDqSBham91dMOpLiBTaSBjJ2VzdCBsZSBjYXMsIGlsIGVzdCAiCisicG9zc2libGUgZCd1dGlsaXNlciB1biBtb3RpZiBJPHN5bXZlcj4gcG91ciBmYWlyZSBjb3JyZXNwb25kcmUgY2hhcXVlICIKKyJzeW1ib2xlIGFzc29jacOpZSDDoCBsYSB2ZXJzaW9uIHNww6ljaWZpcXVlLiBQYXIgZXhlbXBsZcKgOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjQ2CisjLCBuby13cmFwCittc2dpZCAiIgorImxpYmMuc28uNiBsaWJjNiAjTUlOVkVSI1xuIgorIiAoc3ltdmVyKUdMSUJDXzIuMCAyLjBcbiIKKyIgWy4uLl1cbiIKKyIgKHN5bXZlcilHTElCQ18yLjcgMi43XG4iCisiIGFjY2Vzc0BHTElCQ18yLjAgMi4yXG4iCittc2dzdHIgIiIKKyJsaWJjLnNvLjYgbGliYzYgI01JTlZFUiNcbiIKKyIgKHN5bXZlcilHTElCQ18yLjAgMi4wXG4iCisiIFsuLi5dXG4iCisiIChzeW12ZXIpR0xJQkNfMi43IDIuN1xuIgorIiBhY2Nlc3NAR0xJQkNfMi4wIDIuMlxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyNTIKK21zZ2lkICIiCisiQWxsIHN5bWJvbHMgYXNzb2NpYXRlZCB3aXRoIHZlcnNpb25zIEdMSUJDXzIuMCBhbmQgR0xJQkNfMi43IHdpbGwgbGVhZCB0byAiCisibWluaW1hbCB2ZXJzaW9uIG9mIDIuMCBhbmQgMi43IHJlc3BlY3RpdmVseSB3aXRoIHRoZSBleGNlcHRpb24gb2YgdGhlIHN5bWJvbCAiCisiYWNjZXNzQEdMSUJDXzIuMC4gVGhlIGxhdHRlciB3aWxsIGxlYWQgdG8gYSBtaW5pbWFsIGRlcGVuZGVuY3kgb24gbGliYzYgIgorInZlcnNpb24gMi4yIGRlc3BpdGUgYmVpbmcgaW4gdGhlIHNjb3BlIG9mIHRoZSBcIihzeW12ZXIpR0xJQkNfMi4wXCIgcGF0dGVybiAiCisiYmVjYXVzZSBzcGVjaWZpYyBzeW1ib2xzIHRha2UgcHJlY2VkZW5jZSBvdmVyIHBhdHRlcm5zLiIKK21zZ3N0ciAiIgorIlRvdXMgbGVzIHN5bWJvbGVzIGFzc29jacOpcyBhdmVjIGxlcyB2ZXJzaW9ucyBHTElCQ18yLjAgZXQgR0xJQkNfMi43ICIKKyJjb25kdWlyb250IHJlc3BlY3RpdmVtZW50IMOgIGRlcyB2ZXJzaW9ucyBtaW5pbWFsZXMgZGUgMi4wIGV0IDIuNywgw6AgIgorImwnZXhjZXB0aW9uIGR1IHN5bWJvbGUgYWNjZXNzQEdMSUJDXzIuMC4gQ2UgZGVybmllciBhbcOobmUgw6AgdW5lIGTDqXBlbmRhbmNlICIKKyJtaW5pbWFsZSBzdXIgbGEgdmVyc2lvbiAyLjIgZGUgbGliYzYgYmllbiBxdSdpbCBzb2l0IGRhbnMgbGUgc2NvcGUgZGUgIgorIsKrwqAoc3ltdmFyKUdMSUJDXzIuMMKgwrsuIENlbGEgZXN0IGTDuyBhdSBmYWl0IHF1ZSBsZXMgc3ltYm9sZXMgc3DDqWNpZmlxdWVzICIKKyJwcmVubmVudCBsZSBwYXMgc3VyIGxlcyBtb3RpZnMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyNTcKK21zZ2lkICIiCisiUGxlYXNlIG5vdGUgdGhhdCB3aGlsZSBvbGQgc3R5bGUgd2lsZGNhcmQgcGF0dGVybnMgKGRlbm90ZWQgYnkgXCIqQHZlcnNpb25cIiAiCisiaW4gdGhlIHN5bWJvbCBuYW1lIGZpZWxkKSBhcmUgc3RpbGwgc3VwcG9ydGVkLCB0aGV5IGhhdmUgYmVlbiBkZXByZWNhdGVkIGJ5ICIKKyJuZXcgc3R5bGUgc3ludGF4IFwiKHN5bXZlcnxvcHRpb25hbCl2ZXJzaW9uXCIuIEZvciBleGFtcGxlLCBcIipAR0xJQkNfMi4wICIKKyIyLjBcIiBzaG91bGQgYmUgd3JpdHRlbiBhcyBcIihzeW12ZXJ8b3B0aW9uYWwpR0xJQkNfMi4wIDIuMFwiIGlmIHRoZSBzYW1lICIKKyJiZWhhdmlvdXIgaXMgbmVlZGVkLiIKK21zZ3N0ciAiIgorIlZldWlsbGV6IG5vdGVyIHF1ZSBsZXMgYW5jaWVucyBtb3RpZnMgYXZlYyBjYXJhY3TDqHJlcyBnw6luw6lyaXF1ZXMgKGluZGlxdcOpcyAiCisic291cyBsYSBmb3JtZSDCq8KgKkB2ZXJzaW9uwqDCuykgZGFucyBsZSBjaGFtcCBkZSBub20gZGUgc3ltYm9sZSBzb250IHRvdWpvdXJzICIKKyJnw6lyw6lzLiBMYSBub3V2ZWxsZSBzeW50YXhlIMKrwqAoc3ltdmVyfG9wdGlvbmFsKXZlcnNpb27CoMK7IGRvaXQgdG91dGVmb2lzIGxldXIgIgorIsOqdHJlIHByw6lmw6lyw6llLiBQYXIgZXhlbXBsZSwgwqvCoCpAR0xJQkNfMi4wIDIuMMKgwrsgZGV2cmFpdCDDqnRyZSDDqWNyaXQgc291cyBsYSAiCisiZm9ybWUgwqvCoChzeW12ZXJ8b3B0aW9uYWwpR0xJQkNfMi4wIDIuMMKgwrsgc2kgdW4gY29tcG9ydGVtZW50IGFuYWxvZ3VlIGVzdCAiCisicmVjaGVyY2jDqS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjI2NQorbXNnaWQgIiIKKyJSZWd1bGFyIGV4cHJlc3Npb24gcGF0dGVybnMgYXJlIGRlbm90ZWQgYnkgdGhlIEk8cmVnZXg+IHRhZy4gVGhleSBtYXRjaCBieSAiCisidGhlIHBlcmwgcmVndWxhciBleHByZXNzaW9uIHNwZWNpZmllZCBpbiB0aGUgc3ltYm9sIG5hbWUgZmllbGQuIEEgcmVndWxhciAiCisiZXhwcmVzc2lvbiBpcyBtYXRjaGVkIGFzIGl0IGlzLCB0aGVyZWZvcmUgZG8gbm90IGZvcmdldCB0byBzdGFydCBpdCB3aXRoIHRoZSAiCisiSTxePiBjaGFyYWN0ZXIgb3IgaXQgbWF5IG1hdGNoIGFueSBwYXJ0IG9mIHRoZSByZWFsIHN5bWJvbCBJPG5hbWVAdmVyc2lvbj4gIgorInN0cmluZy4gRm9yIGV4YW1wbGU6IgorbXNnc3RyICIiCisiTGVzIG1vdGlmcyBkJ2V4cHJlc3Npb25zIHJhdGlvbm5lbGxlcyBzb250IGluZGlxdcOpcyBwYXIgbCfDqXRpcXVldHRlICIKKyJJPHJlZ2V4Pi4gTGEgY29ycmVzcG9uZGFuY2Ugc2UgZmFpdCBhdmVjIHVuZSBleHByZXNzaW9uIHJhdGlvbm5lbGxlIFBlcmwgc3VyICIKKyJsZSBjaGFtcCBkZSBub20gZGUgc3ltYm9sZS4gbGEgY29ycmVzcG9uZGFuY2UgZXN0IGZhaXRlIHRlbGxlIHF1ZWxsZSBldCBpbCAiCisibmUgZmF1dCBkb25jIHBhcyBvdWJsaWVyIGxlIGNhcmFjdMOocmUgSTxePiwgc2lub24gbGEgY29ycmVzcG9uZGFuY2UgZXN0ICIKKyJmYWl0ZSBzdXIgbidpbXBvcnRlIHF1ZWxsZSBwYXJ0aWUgZHUgc3ltYm9sZSByw6llbCBJPG5hbWVAdmVyc2lvbj4uIFBhciAiCisiZXhlbXBsZcKgOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjcwCisjLCBuby13cmFwCittc2dpZCAiIgorImxpYmR1bW15LnNvLjEgbGliZHVtbXkxICNNSU5WRVIjXG4iCisiIChyZWdleClcIl5teXN0YWNrXy4qQEJhc2UkXCIgMS4wXG4iCisiIChyZWdleHxvcHRpb25hbClcInByaXZhdGVcIiAxLjBcbiIKK21zZ3N0ciAiIgorImxpYmR1bW15LnNvLjEgbGliZHVtbXkxICNNSU5WRVIjXG4iCisiIChyZWdleClcIl5teXN0YWNrXy4qQEJhc2UkXCIgMS4wXG4iCisiIChyZWdleHxvcHRpb25hbClcInByaXZhdGVcIiAxLjBcbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6Mjc1Cittc2dpZCAiIgorIlN5bWJvbHMgbGlrZSBcIm15c3RhY2tfbmV3QEJhc2VcIiwgXCJteXN0YWNrX3B1c2hAQmFzZVwiLCBcIm15c3RhY2tfcG9wQEJhc2UiCisiXCIgZXRjLiAgd2lsbCBiZSBtYXRjaGVkIGJ5IHRoZSBmaXJzdCBwYXR0ZXJuIHdoaWxlIGUuZy4gIgorIlwibmdfbXlzdGFja19uZXdAQmFzZVwiIHdvbid0LiAgVGhlIHNlY29uZCBwYXR0ZXJuIHdpbGwgbWF0Y2ggYWxsIHN5bWJvbHMgIgorImhhdmluZyB0aGUgc3RyaW5nIFwicHJpdmF0ZVwiIGluIHRoZWlyIG5hbWVzIGFuZCBtYXRjaGVzIHdpbGwgaW5oZXJpdCAiCisiSTxvcHRpb25hbD4gdGFnIGZyb20gdGhlIHBhdHRlcm4uIgorbXNnc3RyICIiCisiTGVzIHN5bWJvbGVzIHRlbHMgcXVlIMKrwqBteXN0YWNrX25ld0BCYXNlwqDCuywgwqvCoG15c3RhY2tfcHVzaEBCYXNlwqDCuywgIgorIsKrwqBteXN0YWNrX3BvcEBCYXNlwqDCuywgZXRjLiBzZXJvbnQgZW4gY29ycmVzcG9uZGFuY2UgYXZlYyBsZSBwcmVtaWVyIG1vdGlmICIKKyJhbG9ycyBxdWUsIHBhciBleGVtcGxlLCDCq8KgbmdfbXlzdGFja19uZXdAQmFzZcKgwrsgbmUgbGUgc2VyYSBwYXMuIExlIGRldXhpw6htZSAiCisibW90aWYgY29ycmVzcG9uZHJhIHBvdXIgdG91cyBsZXMgc3ltYm9sZXMgcXVpIGNvbXBvcnRlbnQgbGEgY2hhw65uZSAiCisiwqvCoHByaXZhdGXCoMK7IGRhbnMgbGV1ciBub20gZXQgbGVzIGNvcnJlc3BvbmRhbmNlcyBow6lyaXRlcm9udCBkZSBsJ8OpdGlxdWV0dGUgIgorIkk8b3B0aW9uYWw+IGRlcHVpcyBsZSBtb3RpZi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjI4MAorbXNnaWQgIiIKKyJCYXNpYyBwYXR0ZXJucyBsaXN0ZWQgYWJvdmUgY2FuIGJlIGNvbWJpbmVkIHdoZXJlIGl0IG1ha2VzIHNlbnNlLiBJbiB0aGF0ICIKKyJjYXNlLCB0aGV5IGFyZSBwcm9jZXNzZWQgaW4gdGhlIG9yZGVyIGluIHdoaWNoIHRoZSB0YWdzIGFyZSBzcGVjaWZpZWQuIEZvciAiCisiZXhhbXBsZSwgYm90aCIKK21zZ3N0ciAiIgorIkxlcyBtb3RpZnMgZGUgYmFzZSBpbmRpcXXDqXMgcHLDqWPDqWRlbW1lbnQgcGV1dmVudCDDqnRyZSBjb21iaW7DqXMgYXUgYmVzb2luLiAiCisiRGFucyBjZSBjYXMsIGlscyBzb250IHRyYWl0w6lzIGRhbnMgbCdvcmRyZSBvw7kgbGVzIMOpdGlxdWV0dGVzIHNvbnQgaW5kaXF1w6llcy4gIgorIlBhciBleGVtcGxlLCBsZXMgZGV1eCBtb3RpZnMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjI4MworIywgbm8td3JhcAorbXNnaWQgIiIKKyIgKGMrK3xyZWdleClcIl5OU0E6OkNsYXNzQTo6UHJpdmF0ZTo6cHJpdm1ldGhvZFxcZWRcXGUoaW50XFxlKUBCYXNlXCIgMS4wXG4iCisiIChyZWdleHxjKyspTjNOU0E2Q2xhc3NBN1ByaXZhdGUxMXByaXZtZXRob2RcXGVkRWlAQmFzZSAxLjBcbiIKK21zZ3N0ciAiIgorIiAoYysrfHJlZ2V4KVwiXk5TQTo6Q2xhc3NBOjpQcml2YXRlOjpwcml2bWV0aG9kXFxlZFxcZShpbnRcXGUpQEJhc2VcIiAxLjBcbiIKKyIgKHJlZ2V4fGMrKylOM05TQTZDbGFzc0E3UHJpdmF0ZTExcHJpdm1ldGhvZFxcZWRFaUBCYXNlIDEuMFxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyOTMKK21zZ2lkICIiCisid2lsbCBtYXRjaCBzeW1ib2xzIFwiX1pOM05TQTZDbGFzc0E3UHJpdmF0ZTExcHJpdm1ldGhvZDFFaUBCYXNlXCIgYW5kICIKKyJcIl9aTjNOU0E2Q2xhc3NBN1ByaXZhdGUxMXByaXZtZXRob2QyRWlAQmFzZVwiLiBXaGVuIG1hdGNoaW5nIHRoZSBmaXJzdCAiCisicGF0dGVybiwgdGhlIHJhdyBzeW1ib2wgaXMgZmlyc3QgZGVtYW5nbGVkIGFzIEMrKyBzeW1ib2wsIHRoZW4gdGhlIGRlbWFuZ2xlZCAiCisibmFtZSBpcyBtYXRjaGVkIGFnYWluc3QgdGhlIHJlZ3VsYXIgZXhwcmVzc2lvbi4gT24gdGhlIG90aGVyIGhhbmQsIHdoZW4gIgorIm1hdGNoaW5nIHRoZSBzZWNvbmQgcGF0dGVybiwgcmVndWxhciBleHByZXNzaW9uIGlzIG1hdGNoZWQgYWdhaW5zdCB0aGUgcmF3ICIKKyJzeW1ib2wgbmFtZSwgdGhlbiB0aGUgc3ltYm9sIGlzIHRlc3RlZCBpZiBpdCBpcyBDKysgb25lIGJ5IGF0dGVtcHRpbmcgdG8gIgorImRlbWFuZ2xlIGl0LiBBIGZhaWx1cmUgb2YgYW55IGJhc2ljIHBhdHRlcm4gd2lsbCByZXN1bHQgaW4gdGhlIGZhaWx1cmUgb2YgIgorInRoZSB3aG9sZSBwYXR0ZXJuLiAgVGhlcmVmb3JlLCBmb3IgZXhhbXBsZSwgIgorIlwiX19OM05TQTZDbGFzc0E3UHJpdmF0ZTExcHJpdm1ldGhvZFxcZWRFaUBCYXNlXCIgd2lsbCBub3QgbWF0Y2ggZWl0aGVyIG9mICIKKyJ0aGUgcGF0dGVybnMgYmVjYXVzZSBpdCBpcyBub3QgYSB2YWxpZCBDKysgc3ltYm9sLiIKK21zZ3N0ciAiIgorIlNlcm9udCBlbiBjb3JyZXNwb25kYW5jZSBhdmVjIGxlcyBzeW1ib2xlcyAiCisiwqvCoF9aTjNOU0E2Q2xhc3NBN1ByaXZhdGUxMXByaXZtZXRob2QxRWlAQmFzZVwiwqDCuyBldCAiCisiwqvCoF9aTjNOU0E2Q2xhc3NBN1ByaXZhdGUxMXByaXZtZXRob2QyRWlAQmFzZcKgwrsuIExvcnMgZGUgbGEgY29ycmVzcG9uZGFuY2UgIgorImF2ZWMgbGUgcHJlbWllciBtb3RpZiwgbGUgc3ltYm9sZSBjb21wbGV0IGVzdCBkJ2Fib3JkIGTDqWNvZMOpIGVuIHRhbnQgcXVlICIKKyJzeW1ib2xlIEMrKywgcHVpcyBjb21ww6lyw6kgw6AgbCdleHByZXNzaW9uIHJhdGlvbm5lbGxlLiBEJ3VuIGF1dHJlIGPDtHTDqSwgbG9ycyAiCisiZGUgbGEgY29ycmVzcG9uZGFuY2UgYXZlYyBsZSBkZXV4acOobWUgbW90aWYsIGwnZXhwcmVzc2lvbiByYXRpb25uZWxsZSBlc3QgIgorImNvbXBhcsOpZSBhdSBub20gZGUgc3ltYm9sZSBicnV0LCBwdWlzIGxlIHN5bWJvbGUgZXN0IHRlc3TDqSBlbiB0YW50IHF1ZSAiCisic3ltYm9sZSBDKysgZW4gdGVudGFudCBkZSBsZSBkw6ljb2Rlci4gTCfDqWNoZWMgZGUgbidpbXBvcnRlIHF1ZWwgbW90aWYgZGUgIgorImJhc2UgcHJvdm9xdWVyYSBsJ8OpY2hlYyBkZSBsJ2Vuc2VtYmxlIGR1IG1vdGlmLiBBaW5zaSwgcGFyIGV4ZW1wbGUsICIKKyLCq8KgX19OM05TQTZDbGFzc0E3UHJpdmF0ZTExcHJpdm1ldGhvZFxcZWRFaUBCYXNlwqDCuyBuZSBjb3JyZXNwb25kcmEgw6AgYXVjdW4gIgorImRlcyBtb3RpZnMgY2FyIGNlIG4nZXN0IHBhcyB1biBzeW1ib2xlIEMrKyB2YWxhYmxlIChOZHTCoDrCoGonYWkgbCdpbXByZXNzaW9uICIKKyJkZSB0cmFkdWlyZSBkdSBLbGluZ29uwqAhKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjI5OQorbXNnaWQgIiIKKyJJbiBnZW5lcmFsLCBhbGwgcGF0dGVybnMgYXJlIGRpdmlkZWQgaW50byB0d28gZ3JvdXBzOiBhbGlhc2VzIChiYXNpYyBJPGMrKz4gIgorImFuZCBJPHN5bXZlcj4pIGFuZCBnZW5lcmljIHBhdHRlcm5zIChJPHJlZ2V4PiwgYWxsIGNvbWJpbmF0aW9ucyBvZiBtdWx0aXBsZSAiCisiYmFzaWMgcGF0dGVybnMpLiBNYXRjaGluZyBvZiBiYXNpYyBhbGlhcy1iYXNlZCBwYXR0ZXJucyBpcyBmYXN0IChPKDEpKSAgIgorIndoaWxlIGdlbmVyaWMgcGF0dGVybnMgYXJlIE8oTikgKE4gLSBnZW5lcmljIHBhdHRlcm4gY291bnQpIGZvciBlYWNoICIKKyJzeW1ib2wuICBUaGVyZWZvcmUsIGl0IGlzIHJlY29tbWVuZGVkIG5vdCB0byBvdmVydXNlIGdlbmVyaWMgcGF0dGVybnMuIgorbXNnc3RyICIiCisiRW4gZ8OpbsOpcmFsLCBsZXMgbW90aWZzIHNvbnQgZGl2aXPDqXMgZW4gZGV1eCBncm91cGVzwqA6wqBsZXMgYWxpYXMgKEk8YysrPiBldCAiCisiSTxzeW12ZXI+IGRlIGJhc2UpIGV0IGxlcyBtb3RpZnMgZ8OpbsOpcmlxdWVzIChJPHJlZ2V4PiBldCB0b3V0ZXMgbGVzICIKKyJjb21iaW5haXNvbnMgZGUgbW90aWZzIGRlIGJhc2UgbXVsdGlwbGVzKS4gTGEgY29ycmVzcG9uZGFuY2UgZGUgbW90aWZzIGJhc8OpcyAiCisic3VyIGRlcyBhbGlhcyBlc3QgcmFwaWRlICgwKDEpKSBhbG9ycyBxdWUgbGVzIG1vdGlmcyBnw6luw6lyaXF1ZXMgc29udCAwKE4pIChOICIKKyLDqXRhbnQgbGUgbm9tYnJlIGRlIG1vdGlmcyBnw6luw6lyaXF1ZXMpIHBvdXIgY2hhcXVlIHN5bWJvbGUuIEVuIGNvbnPDqXF1ZW5jZSwgIgorImlsIGVzdCBkw6ljb25zZWlsbMOpIGQnYWJ1c2VyIGRlcyBtb3RpZnMgZ8OpbsOpcmlxdWVzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzA2Cittc2dpZCAiIgorIldoZW4gbXVsdGlwbGUgcGF0dGVybnMgbWF0Y2ggdGhlIHNhbWUgcmVhbCBzeW1ib2wsIGFsaWFzZXMgKGZpcnN0IEk8YysrPiwgIgorInRoZW4gSTxzeW12ZXI+KSBhcmUgcHJlZmVycmVkIG92ZXIgZ2VuZXJpYyBwYXR0ZXJucy4gR2VuZXJpYyBwYXR0ZXJucyBhcmUgIgorIm1hdGNoZWQgaW4gdGhlIG9yZGVyIHRoZXkgYXJlIGZvdW5kIGluIHRoZSBzeW1ib2wgZmlsZSB0ZW1wbGF0ZSB1bnRpbCB0aGUgIgorImZpcnN0IHN1Y2Nlc3MuICBQbGVhc2Ugbm90ZSwgaG93ZXZlciwgdGhhdCBtYW51YWwgcmVvcmRlcmluZyBvZiB0ZW1wbGF0ZSAiCisiZmlsZSBlbnRyaWVzIGlzIG5vdCByZWNvbW1lbmRlZCBiZWNhdXNlIEI8ZHBrZy1nZW5zeW1ib2xzPiBnZW5lcmF0ZXMgZGlmZnMgIgorImJhc2VkIG9uIHRoZSBhbHBoYW51bWVyaWNhbCBvcmRlciBvZiB0aGVpciBuYW1lcy4iCittc2dzdHIgIiIKKyJMb3JzcXVlIHBsdXNpZXVycyBtb3RpZnMgY29ycmVzcG9uZGVudCBwb3VyIGxlIG3Dqm1lIHN5bWJvbGUgcsOpZWwsIGxlcyBhbGlhYXMgIgorIihkJ2Fib3JkIEk8YysrPiwgcHVpcyBJPHN5bXZlcj4pIHNvbnQgcHJpdmlsw6lnacOpcyBwYXIgcmFwcG9ydCBhdXggbW90aWZzICIKKyJnw6luw6lyaXF1ZXMuIENldXgtY2kgc29udCBlc3NhecOpcyBkYW5zIGwnb3JkcmUgb8O5IGlscyBhcHBhcmFpc3NlbnQgZGFucyBsZSAiCisibW9kw6hsZSBkZSBmaWNoaWVyIGRlIHN5bWJvbGUsIGVuIHMnYXJyw6p0YW50IMOgIGxhIHByZW1pw6hyZSBjb3JyZXNwb25kYW5jZS4gIgorIlZldWlsbGV6IG5vdGVyLCBjZXBlbmRhbnQsIHF1ZSBsYSBtb2RpZmljYXRpb24gbWFudWVsbGUgZGUgbCdvcmRyZSBkZXMgIgorImVudHLDqWVzIGRlIGZpY2hpZXJzIG4nZXN0IHBhcyByZWNvbW1hbmTDqWUgY2FyIEI8ZHBrZy1nZW5zeW1ib2xzPiBjcsOpZSBkZXMgIgorImZpY2hpZXJzIGRlIGRpZmbDqXJlbmNlcyBkJ2FwcsOocyBsJ29yZHJlIGFscGhhYsOpdGljby1udW3DqXJpcXVlIGRlIGxldXIgbm9tLiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjMwNgorIywgbm8td3JhcAorbXNnaWQgIlVzaW5nIGluY2x1ZGVzIgorbXNnc3RyICJVdGlsaXNhdGlvbiBkZXMgaW5jbHVzaW9ucyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzExCittc2dpZCAiIgorIldoZW4gdGhlIHNldCBvZiBleHBvcnRlZCBzeW1ib2xzIGRpZmZlciBiZXR3ZWVuIGFyY2hpdGVjdHVyZXMsIGl0IG1heSBiZWNvbWUgIgorImluZWZmaWNpZW50IHRvIHVzZSBhIHNpbmdsZSBzeW1ib2wgZmlsZS4gSW4gdGhvc2UgY2FzZXMsIGFuIGluY2x1ZGUgIgorImRpcmVjdGl2ZSBtYXkgcHJvdmUgdG8gYmUgdXNlZnVsIGluIGEgY291cGxlIG9mIHdheXM6IgorbXNnc3RyICIiCisiTG9yc3F1J3VuIGpldSBkZSBzeW1ib2xlcyBleHBvcnTDqXMgdmFyaWUgc2Vsb24gbGVzIGFyY2hpdGVjdHVyZXMsIGlsIGVzdCAiCisic291dmVudCBwZXUgZWZmaWNhY2UgZCd1dGlsaXNlciB1biBzZXVsIGZpY2hpZXIgZGUgc3ltYm9sZXMuICBQb3VyIGNvdXZyaXIgIgorImNlcyBjYXMsIHVuZSBkaXJlY3RpdmUgZCdpbmNsdXNpb24gcGV1dCBkZXZlbmlyIHV0aWxlIGRhbnMgY2VydGFpbnMgY2FzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzE1Cittc2dpZCAiIgorIllvdSBjYW4gZmFjdG9yaXplIHRoZSBjb21tb24gcGFydCBpbiBzb21lIGV4dGVybmFsIGZpbGUgYW5kIGluY2x1ZGUgdGhhdCAiCisiZmlsZSBpbiB5b3VyIEk8cGFja2FnZT4uc3ltYm9scy5JPGFyY2g+IGZpbGUgYnkgdXNpbmcgYW4gaW5jbHVkZSBkaXJlY3RpdmUgIgorImxpa2UgdGhpczoiCittc2dzdHIgIiIKKyJJbCBlc3QgcG9zc2libGUgZGUgZmFjdG9yaXNlciBsYSBwYXJ0aWUgY29tbXVuZSBkYW5zIHVuIGZpY2hpZXIgZXh0ZXJuZSAiCisiZG9ubsOpIGV0IGwnaW5jbHVyZSBkYW5zIGxlIGZpY2hpZXIgSTxwYXF1ZXQ+LnN5bWJvbHMuSTxhcmNoPiBhdmVjIHVuZSAiCisiZGlyZWN0aXZlIMKrwqBpbmNsdWRlwqDCuyB1dGlsaXPDqWUgZGUgbGEgbWFuacOocmUgc3VpdmFudGXCoDoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjMxNworbXNnaWQgIiNpbmNsdWRlIFwiSTxwYWNrYWdlcz4uc3ltYm9scy5jb21tb25cIiIKK21zZ3N0ciAiI2luY2x1ZGUgXCJJPHBhcXVldHM+LnN5bWJvbHMuY29tbW9uXCIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjMxOQorbXNnaWQgIlRoZSBpbmNsdWRlIGRpcmVjdGl2ZSBtYXkgYWxzbyBiZSB0YWdnZWQgbGlrZSBhbnkgc3ltYm9sOiIKK21zZ3N0ciAiIgorIkxhIGRpcmVjdGl2ZSBkJ2luY2x1c2lvbiBwZXV0IMOpZ2FsZW1lbnQgw6p0cmUgw6l0aXF1ZXTDqWUgY29tbWUgdG91dCBhdXRyZSAiCisic3ltYm9sZcKgOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzIxCisjLCBmdXp6eQorI3wgbXNnaWQgIih0YWd8Li58dGFnTikjaW5jbHVkZSBcImZpbGVfdG9faW5jbHVkZVwiIgorbXNnaWQgIih0YWd8Li58dGFnTikjaW5jbHVkZSBcImZpbGUtdG8taW5jbHVkZVwiIgorbXNnc3RyICIoZXRpcXVldHRlfC4ufGV0aXF1ZXR0ZU4pI2luY2x1ZGUgXCJmaWNoaWVyX2FfaW5jbGx1cmVcIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzI2CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJBcyBhIHJlc3VsdCwgYWxsIHN5bWJvbHMgaW5jbHVkZWQgZnJvbSBJPGZpbGVfdG9faW5jbHVkZT4gd2lsbCBiZSAiCisjfCAiY29uc2lkZXJlZCB0byBiZSB0YWdnZWQgd2l0aCBJPHRhZz4gLi4gSTx0YWdOPiBieSBkZWZhdWx0LiBZb3UgY2FuIHVzZSAiCisjfCAidGhpcyBmZWF0dXJlIHRvIGNyZWF0ZSBhIGNvbW1vbiBJPHBhY2thZ2U+LnN5bWJvbHMgZmlsZSB3aGljaCBpbmNsdWRlcyAiCisjfCAiYXJjaGl0ZWN0dXJlIHNwZWNpZmljIHN5bWJvbCBmaWxlczoiCittc2dpZCAiIgorIkFzIGEgcmVzdWx0LCBhbGwgc3ltYm9scyBpbmNsdWRlZCBmcm9tIEk8ZmlsZS10by1pbmNsdWRlPiB3aWxsIGJlIGNvbnNpZGVyZWQgIgorInRvIGJlIHRhZ2dlZCB3aXRoIEk8dGFnPiAuLiBJPHRhZ04+IGJ5IGRlZmF1bHQuIFlvdSBjYW4gdXNlIHRoaXMgZmVhdHVyZSB0byAiCisiY3JlYXRlIGEgY29tbW9uIEk8cGFja2FnZT4uc3ltYm9scyBmaWxlIHdoaWNoIGluY2x1ZGVzIGFyY2hpdGVjdHVyZSBzcGVjaWZpYyAiCisic3ltYm9sIGZpbGVzOiIKK21zZ3N0ciAiIgorIkxlIHLDqXN1bHRhdCBzZXJhIHF1ZSB0b3VzIGxlcyBzeW1ib2xlcyBpbmNsdXMgZGVwdWlzIEk8ZmljaGllcl/DoF9pbmNsdXJlPiAiCisic2Vyb250IGNvbnNpZMOpcsOpcyBjb21tZSDDqXRpcXVldMOpcyBhdmVjIEk8ZXRpPi4uLkk8ZXRpcU4+LiBDZWxhIHBlcm1ldGRlICIKKyJjcsOpZXJ1biBmaWNoaWVyIEk8cGFxdWV0Pi5zeW1ib2xzIGNvbW11biBxdWkgaW5jbHV0IGxlcyBmaWNoaWVycyBkZSBzeW1ib2xlcyAiCisic3DDqWNpZmlxdWVzIGRlcyBhcmNoaXRlY3R1cmVzwqA6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozMzEKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiICBjb21tb25fc3ltYm9sMUBCYXNlIDEuMFxuIgorIiAoYXJjaD1hbWQ2NCBpYTY0IGFscGhhKSNpbmNsdWRlIFwicGFja2FnZS5zeW1ib2xzLjY0Yml0XCJcbiIKKyIgKGFyY2g9IWFtZDY0ICFpYTY0ICFhbHBoYSkjaW5jbHVkZSBcInBhY2thZ2Uuc3ltYm9scy4zMmJpdFwiXG4iCisiICBjb21tb25fc3ltYm9sMkBCYXNlIDEuMFxuIgorbXNnc3RyICIiCisiICBzeW1ib2xlX2NvbW11bjFAQmFzZSAxLjBcbiIKKyIgKGFyY2g9YW1kNjQgaWE2NCBhbHBoYSkjaW5jbHVkZSBcInBhY2thZ2Uuc3ltYm9scy42NGJpdFwiXG4iCisiIChhcmNoPSFhbWQ2NCAhaWE2NCAhYWxwaGEpI2luY2x1ZGUgXCJwYWNrYWdlLnN5bWJvbHMuMzJiaXRcIlxuIgorIiAgc3ltYm9sZV9jb21tdW4yQEJhc2UgMS4wXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM0MAorbXNnaWQgIiIKKyJUaGUgc3ltYm9scyBmaWxlcyBhcmUgcmVhZCBsaW5lIGJ5IGxpbmUsIGFuZCBpbmNsdWRlIGRpcmVjdGl2ZXMgYXJlICIKKyJwcm9jZXNzZWQgYXMgc29vbiBhcyB0aGV5IGFyZSBlbmNvdW50ZXJlZC4gVGhpcyBtZWFucyB0aGF0IHRoZSBjb250ZW50IG9mICIKKyJ0aGUgaW5jbHVkZWQgZmlsZSBjYW4gb3ZlcnJpZGUgYW55IGNvbnRlbnQgdGhhdCBhcHBlYXJlZCBiZWZvcmUgdGhlIGluY2x1ZGUgIgorImRpcmVjdGl2ZSBhbmQgdGhhdCBhbnkgY29udGVudCBhZnRlciB0aGUgZGlyZWN0aXZlIGNhbiBvdmVycmlkZSBhbnl0aGluZyAiCisiY29udGFpbmVkIGluIHRoZSBpbmNsdWRlZCBmaWxlLiBBbnkgc3ltYm9sIChvciBldmVuIGFub3RoZXIgI2luY2x1ZGUgIgorImRpcmVjdGl2ZSkgaW4gdGhlIGluY2x1ZGVkIGZpbGUgY2FuIHNwZWNpZnkgYWRkaXRpb25hbCB0YWdzIG9yIG92ZXJyaWRlICIKKyJ2YWx1ZXMgb2YgdGhlIGluaGVyaXRlZCB0YWdzIGluIGl0cyB0YWcgc3BlY2lmaWNhdGlvbi4gSG93ZXZlciwgdGhlcmUgaXMgbm8gIgorIndheSBmb3IgdGhlIHN5bWJvbCB0byByZW1vdmUgYW55IG9mIHRoZSBpbmhlcml0ZWQgdGFncy4iCittc2dzdHIgIiIKKyJMZXMgZmljaGllcnMgZGUgc3ltYm9sZXMgc29udCBsdXMgbGlnbmUgcGFyIGxpZ25lIGV0IGxlcyBkaXJlY3RpdmVzICIKKyJkJ2luY2x1c2lvbiBzb250IHRyYWl0w6llcyBkw6hzIHF1J2VsbGVzIHNvbnQgdHJvdXbDqWVzLiBFbiBjb25zw6lxdWVuY2UsIGxlICIKKyJjb250ZW51IGR1IGZpY2hpZXIgZCdpbmNsdXNpb24gcGV1dCByZW1wbGFjZXIgdW5lIGTDqWZpbml0aW9uIHF1aSBwcsOpY8OoZGUgIgorImwnaW5jbHVzaW9uIGF0IHF1ZSBjZSBxdWkgc3VpdCBsJ2luY2x1c2lvbiBwZXV0IHJlbXBsYWNlciB1bmUgZMOpZmluaXRpb24gIgorInF1J2VsbGUgYWpvdXRhaXQuIFRvdXQgc3ltYm9sZSAob3UgbcOqbWUgdW5lIGF1dHJlIGRpcmVjdGl2ZSBkJ2luY2x1c2lvbikgIgorImRhbnMgbGUgZmljaGllciBpbmNsdXMgcGV0IGTDqWZpbmlyIGRlcyDDqXRpcXVldHRlcyBzdXBwbMOpbWVudGFpcmVzIG91ICIKKyJyZW1wbGFjZXIgbGVzIHZhbGV1cnMgZCfDqXRpcXVldHRlcyBow6lyaXTDqWVzLCBkYW5zIHNhIGTDqWZpbml0aW9uICIKKyJkJ8OpdGlxdWV0dGVzLi4gQ2VwZW5kYW50LCBwb3VyIHVuIHN5bWJvbGUgZG9ubsOpLCBpbCBuJ2V4aXN0ZSBwYXMgZGUgbcOpdGhvZGUgIgorInBlcm1ldHRhbnQgZGUgcmVtcGxhY2VyIHVuZSBkZSBzZXMgw6l0aXF1ZXR0ZXMgaMOpcml0w6llcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM0NQorbXNnaWQgIiIKKyJBbiBpbmNsdWRlZCBmaWxlIGNhbiByZXBlYXQgdGhlIGhlYWRlciBsaW5lIGNvbnRhaW5pbmcgdGhlIFNPTkFNRSBvZiB0aGUgIgorImxpYnJhcnkuIEluIHRoYXQgY2FzZSwgaXQgb3ZlcnJpZGVzIGFueSBoZWFkZXIgbGluZSBwcmV2aW91c2x5IHJlYWQuICAiCisiSG93ZXZlciwgaW4gZ2VuZXJhbCBpdCdzIGJlc3QgdG8gYXZvaWQgZHVwbGljYXRpbmcgaGVhZGVyIGxpbmVzLiBPbmUgd2F5IHRvICIKKyJkbyBpdCBpcyB0aGUgZm9sbG93aW5nOiIKK21zZ3N0ciAiIgorIlVuIGZpY2hpZXIgaW5jbHVzIHBldXQgcmVwcmVuZHJlIGxhIGxpZ25lIGQnZW4tdMOqdGUgcXVpIGNvbnRpZW50IGxlICIKKyLCq8KgU09OQU1FwqDCuyBkZSBsYSBiaWJsaW90aMOocXVlLiBEYW5zIGNlIGNhcywgY2VsYSByZW1wbGFjZSB0b3V0ZSBsaWduZSBkJ2VuLSIKKyJ0w6p0ZSBwcsOpY8OpZGVudGUuIElsIGVzdCBjZXBlbmRhbnQgZMOpY29uc2VpbGzDqSBkZSBkdXBsaXF1ZXIgbGVzIGxpZ25lcyBkJ2VuLSIKKyJ0w6p0ZS4gVW5lIGZhw6dvbiBkZSBsZSBmYWlyZSBlc3QgbGEgbcOpdGhvZGUgc3VpdmFudGXCoDoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM0OAorIywgbm8td3JhcAorbXNnaWQgIiIKKyIjaW5jbHVkZSBcImxpYnNvbWV0aGluZzEuc3ltYm9scy5jb21tb25cIlxuIgorIiBhcmNoX3NwZWNpZmljX3N5bWJvbEBCYXNlIDEuMFxuIgorbXNnc3RyICIiCisiI2luY2x1ZGUgXCJsaWJtYWNoaW4xLnN5bWJvbHMuY29tbW9uXCJcbiIKKyIgc3ltYm9sZXNfc3BlY2lmaXF1ZV9hcmNoaXRlY3R1cmVAQmFzZSAxLjBcbiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM0OAorIywgbm8td3JhcAorbXNnaWQgIkdvb2QgbGlicmFyeSBtYW5hZ2VtZW50IgorbXNnc3RyICJCb25uZXMgcHJhdGlxdWVzIGRlIGdlc3Rpb24gZGVzIGJpYmxpb3Row6hxdWVzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozNTEKK21zZ2lkICJBIHdlbGwtbWFpbnRhaW5lZCBsaWJyYXJ5IGhhcyB0aGUgZm9sbG93aW5nIGZlYXR1cmVzOiIKK21zZ3N0ciAidW5lIGJpYmxpb3Row6hxdWUgYmllbiBtYWludGVudWUgb2ZmcmUgbGVzIHBvc3NpYmlsaXTDqXMgc3VpdmFudGVzwqA6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozNTUKK21zZ2lkICIiCisiaXRzIEFQSSBpcyBzdGFibGUgKHB1YmxpYyBzeW1ib2xzIGFyZSBuZXZlciBkcm9wcGVkLCBvbmx5IG5ldyBwdWJsaWMgc3ltYm9scyAiCisiYXJlIGFkZGVkKSBhbmQgY2hhbmdlcyBpbiBpbmNvbXBhdGlibGUgd2F5cyBvbmx5IHdoZW4gdGhlIFNPTkFNRSBjaGFuZ2VzOyIKK21zZ3N0ciAiIgorInNvbiBpbnRlcmZhY2UgZGUgcHJvZ3JhbW1hdGlvbiAoQVBJKSBlc3Qgc3RhYmxlIChsZXMgc3ltYm9sZXMgcHVibGljcyBuZSAiCisic29udCBqYW1haXMgc3VwcHJpbcOpcyBldCBsZXMgY2hhbmdlbWVudCBuZSBjb25jZXJuYW50IHF1ZSBkZXMgYWpvdXRzIGRlICIKKyJub3V2ZWF1eCBzeW1ib2xlcyBwdWJsaWNzKSBldCBsZXMgbW9kaWZpY2F0aW9ucyBwcm92b3F1YW50IHVuICIKKyJpbmNvbXBhdGliaWxpdMOpIGRvaXZlbnQgw6p0cmUgY29tYmluw6lzIGF2ZWMgdW4gY2hhbmdlbWVudCBkZSBTT05BTUXCoDsiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM1OAorbXNnaWQgIiIKKyJpZGVhbGx5LCBpdCB1c2VzIHN5bWJvbCB2ZXJzaW9uaW5nIHRvIGFjaGlldmUgQUJJIHN0YWJpbGl0eSBkZXNwaXRlIGludGVybmFsICIKKyJjaGFuZ2VzIGFuZCBBUEkgZXh0ZW5zaW9uOyIKK21zZ3N0ciAiIgorImlkw6lhbGVtZW50LCBlbGxlIHV0aWxpc2UgbGUgdmVyc2lvbm5lbWVudCBkZXMgc3ltYm9sZXMgcG91ciBnYXJhbnRpciBsYSAiCisic3RhYmlsaXTDqSBkZSBpbnRlcmZhY2UgYXBwbGljYXRpdmUgYmluYWlyZSAoQUJJKSBtYWxncsOpIHNlcyBtb2RpZmljYXRpb25zICIKKyJpbnRlcm5lcyBldCBsJ2V4dGVuc2lvbiBkZSBzb24gQVBJwqA7IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozNjEKK21zZ2lkICIiCisiaXQgZG9lc24ndCBleHBvcnQgcHJpdmF0ZSBzeW1ib2xzIChzdWNoIHN5bWJvbHMgY2FuIGJlIHRhZ2dlZCBvcHRpb25hbCBhcyAiCisid29ya2Fyb3VuZCkuIgorbXNnc3RyICIiCisiZWxsZSBuJ2V4cG9ydGUgcGFzIGxlcyBzeW1ib2xlcyBwcml2w6lzIChhZmluIGRlIGNvbnRvdXJuZXIgY2VsYSwgZGUgdGVscyAiCisic3ltYm9sZXMgcGV1dmVudCDDqnRyZSDDqXRpcXVldMOpcyBjb21tZSBvcHRpb25uZWxzKSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzY5Cittc2dpZCAiIgorIldoaWxlIG1haW50YWluaW5nIHRoZSBzeW1ib2xzIGZpbGUsIGl0J3MgZWFzeSB0byBub3RpY2UgYXBwZWFyYW5jZSBhbmQgIgorImRpc2FwcGVhcmFuY2Ugb2Ygc3ltYm9scy4gQnV0IGl0J3MgbW9yZSBkaWZmaWN1bHQgdG8gY2F0Y2ggaW5jb21wYXRpYmxlIEFQSSAiCisiYW5kIEFCSSBjaGFuZ2UuIFRodXMgdGhlIG1haW50YWluZXIgc2hvdWxkIHJlYWQgdGhvcm91Z2hseSB0aGUgdXBzdHJlYW0gIgorImNoYW5nZWxvZyBsb29raW5nIGZvciBjYXNlcyB3aGVyZSB0aGUgcnVsZXMgb2YgZ29vZCBsaWJyYXJ5IG1hbmFnZW1lbnQgaGF2ZSAiCisiYmVlbiBicm9rZW4uIElmIHBvdGVudGlhbCBwcm9ibGVtcyBhcmUgZGlzY292ZXJlZCwgdGhlIHVwc3RyZWFtIGF1dGhvciAiCisic2hvdWxkIGJlIG5vdGlmaWVkIGFzIGFuIHVwc3RyZWFtIGZpeCBpcyBhbHdheXMgYmV0dGVyIHRoYW4gYSBEZWJpYW4gIgorInNwZWNpZmljIHdvcmstYXJvdW5kLiIKK21zZ3N0ciAiIgorIkVuIG1haW50ZW5hbnQgbGUgZmljaGllciBkZSBzeW1ib2xlcywgaWwgZXN0IGZhY2lsZSBkJ2VuIHZvaXIgYXBwYXJhw650cmUgZXQgIgorImRpc3BhcmHDrnRyZS4gQ2VwZW5kYW50LCBpbCBlc3QgcGx1cyBkaWZmaWNpbGUgZGUgY29udHLDtGxlciBsYSBwcsOpc2VuY2UgIgorImQnw6l2ZW50dWVsbGVzIG1vZGlmaWNhdGlvbnMgZCdBUEkgb3UgQUJJLiBFbiBjb25zw6lxdWVuY2UsIGxlIG1haW50ZW5ldXIgZG9pdCAiCisiY29udHLDtGxlciBzb2lnbmV1c2VtZW50IGxlIGpvdXJuYWwgZGVzIG1vZGlmaWNhdGlvbnMgYW1vbnQsIMOgIGxhIHJlY2hlcmNoZSAiCisiZGUgY2FzIG/DuSB1bmUgc2FpbmUgZ2VzdGlvbiBkZXMgYmlibGlvdGjDqHF1ZSBwdXQgYXZvaXIgw6l0w6kgb21pc2UuIFNpIGRlcyAiCisicHJvYmzDqG1lcyBwb3RlbnRpZWxzIHNvbnQgZMOpY291dmVydHMsIGwnYXV0ZXVyIGFtb250IGRvaXQgw6p0cmUgYXZlcnRpKGUpIGNhciAiCisidW5lIGNvcnJlY3Rpb24gZW4gYW1vbnQgZXN0IG1laWxsZXVyZSBxdSd1biB0cmF2YWlsIHNww6ljaWZpcXVlIGF1IHBhcXVldCAiCisiRGViaWFuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM3MAorIywgbm8td3JhcAorbXNnaWQgIkI8LVA+STxwYWNrYWdlLWJ1aWxkLWRpcj4iCittc2dzdHIgIkI8LVA+STxyw6lwZXJ0b2lyZS1jb25zdHJ1Y3Rpb24tcGFxdWV0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzczCittc2dpZCAiU2NhbiBJPHBhY2thZ2UtYnVpbGQtZGlyPiBpbnN0ZWFkIG9mIGRlYmlhbi90bXAuIgorbXNnc3RyICJBbmFseXNlIGRlIEk8csOpcGVydG9pcmUtY29uc3RydWN0aW9uLXBhcXVldD4sIHBsdXTDtHQgcXVlIGRlYmlhbi90bXAuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozNzcKK21zZ2lkICIiCisiRGVmaW5lIHRoZSBwYWNrYWdlIG5hbWUuIFJlcXVpcmVkIGlmIG1vcmUgdGhhbiBvbmUgYmluYXJ5IHBhY2thZ2UgaXMgbGlzdGVkICIKKyJpbiBkZWJpYW4vY29udHJvbCAob3IgaWYgdGhlcmUncyBubyBkZWJpYW4vY29udHJvbCBmaWxlKS4iCittc2dzdHIgIiIKKyJEw6lmaW5pdCBsZSBub20gZHUgcGFxdWV0LiBSZXF1aXMgc2kgcGx1cyBkJ3VuIHBhcXVldCBiaW5haXJlIGVzdCBpbmRpcXXDqSAiCisiZGFucyBkZWJpYW4vY29udHJvbCAob3UgcydpbCBuJ3kgYSBwYXMgZGUgZmljaGllciBkZWJpYW4vY29udHJvbCkuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozODEKK21zZ2lkICIiCisiRGVmaW5lIHRoZSBwYWNrYWdlIHZlcnNpb24uIERlZmF1bHRzIHRvIHRoZSB2ZXJzaW9uIGV4dHJhY3RlZCBmcm9tIGRlYmlhbi8iCisiY2hhbmdlbG9nLiBSZXF1aXJlZCBpZiBjYWxsZWQgb3V0c2lkZSBvZiBhIHNvdXJjZSBwYWNrYWdlIHRyZWUuIgorbXNnc3RyICIiCisiRMOpZmluaXQgbGEgdmVyc2lvbiBkdSBwYXF1ZXQuIExhIHZhbGV1ciBwYXIgZMOpZmF1dCBlc3QgbGEgdmVyc2lvbiBleHRyYWl0ZSAiCisiZGUgZGViaWFuL2NoYW5nZWxvZy4gQ2UgcGFyYW3DqHRyZSBlc3QgcmVxdWlzIHNpIGxlIHByb2dyYW1tZSBlc3QgbGFuY8OpIGVuICIKKyJkZWhvcnMgZGUgbCdhcmJvcmVzY2VuY2Ugc291cmNlIGQndW4gcGFxdWV0LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM4MQorIywgbm8td3JhcAorbXNnaWQgIkI8LWU+STxsaWJyYXJ5LWZpbGU+IgorbXNnc3RyICJCPC1lPkk8ZmljaGllci1iaWJsaW90aMOocXVlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6Mzg3Cittc2dpZCAiIgorIk9ubHkgYW5hbHl6ZSBsaWJyYXJpZXMgZXhwbGljaXRseSBsaXN0ZWQgaW5zdGVhZCBvZiBmaW5kaW5nIGFsbCBwdWJsaWMgIgorImxpYnJhcmllcy4gWW91IGNhbiB1c2UgYSByZWd1bGFyIGV4cHJlc3Npb24gaW4gSTxsaWJyYXJ5LWZpbGU+IHRvIG1hdGNoICIKKyJtdWx0aXBsZSBsaWJyYXJpZXMgd2l0aCBhIHNpbmdsZSBhcmd1bWVudCAob3RoZXJ3aXNlIHlvdSBuZWVkIG11bHRpcGxlIEI8LSIKKyJlPikuIgorbXNnc3RyICIiCisiTidhbmFseXNlIHF1ZSBsZXMgYmlibGlvdGjDqHF1ZXMgZXhwbGljaXRlbWVudCBtZW50aW9ubsOpZXMgYXUgbGlldSBkZSAiCisicmVjaGVyY2hlciB0b3V0ZXMgbGVzIGJpYmxpb3Row6hxdWVzIHB1YmxpcXVlcy4gVW5lIGV4cHJlc3Npb24gcmF0aW9ubmVsbGUgIgorInBldXQgw6p0cmUgdXRpbGlzw6llIGRhbnMgSTxmaWNoaWVyLWJpYmxpb3Row6hxdWU+IHBvdXIgY29ycmVzcG9uZHJlIMOgICIKKyJwbHVzaWV1cnMgYmlibGlvdGjDqHF1ZXMgYXZlYyB1biBzZXVsIHBhcmFtw6h0cmUgKGRhbnMgbGUgY2FzIGNvbnRyYWlyZSwgIgorInBsdXNpZXVycyBwYXJhbcOodHJlcyBCPC1lPiBzb250IG7DqWNlc3NhaXJlcykuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5zeW1ib2xzLjE6Mzg3CisjLCBuby13cmFwCittc2dpZCAiQjwtST5JPGZpbGVuYW1lPiIKK21zZ3N0ciAiQjwtST5JPG5vbS1kZS1maWNoaWVyPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzkxCittc2dpZCAiIgorIlVzZSBJPGZpbGVuYW1lPiBhcyByZWZlcmVuY2UgZmlsZSB0byBnZW5lcmF0ZSB0aGUgc3ltYm9scyBmaWxlIHRoYXQgaXMgIgorImludGVncmF0ZWQgaW4gdGhlIHBhY2thZ2UgaXRzZWxmLiIKK21zZ3N0ciAiIgorIlV0aWxpc2UgSTxub20tZGUtZmljaGllcj4gY29tbWUgZmljaGllciBkZSByw6lmw6lyZW5jZSBwb3VyIGNyw6llciBsZSBmaWNoaWVyICIKKyJkZSBzeW1ib2xlcyDDoCBpbnTDqWdyZXIgZGFucyBsZSBwYXF1ZXQgbHVpLW3Dqm1lLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6Mzk1Cittc2dpZCAiIgorIlByaW50IHRoZSBnZW5lcmF0ZWQgc3ltYm9scyBmaWxlIHRvIHN0YW5kYXJkIG91dHB1dCwgcmF0aGVyIHRoYW4gYmVpbmcgIgorInN0b3JlZCBpbiB0aGUgcGFja2FnZSBidWlsZCB0cmVlLiIKK21zZ3N0ciAiIgorIkFmZmljaGUgbGUgZmljaGllciBkZSBzeW1ib2xlcyBjcsOpw6kgc3VyIGxhIHNvcnRpZSBzdGFuZGFyZCBhdSBsaWV1IGRlICIKKyJsJ8OpY3JpcmUgZGFucyBsJ2FyYm9yZXNjZW5jZSBzb3VyY2UgZHUgcGFxdWV0LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM5NQorIywgbm8td3JhcAorbXNnaWQgIkI8LU8+STxmaWxlbmFtZT4iCittc2dzdHIgIkI8LU8+STxub20tZGUtZmljaGllcj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQwMQorbXNnaWQgIiIKKyJTdG9yZSB0aGUgZ2VuZXJhdGVkIHN5bWJvbHMgZmlsZSBhcyBJPGZpbGVuYW1lPi4gSWYgSTxmaWxlbmFtZT4gaXMgcHJlLSIKKyJleGlzdGluZywgaXRzIGNvbnRlbnQgaXMgdXNlZCBhcyBiYXNpcyBmb3IgdGhlIGdlbmVyYXRlZCBzeW1ib2xzIGZpbGUuICBZb3UgIgorImNhbiB1c2UgdGhpcyBmZWF0dXJlIHRvIHVwZGF0ZSBhIHN5bWJvbHMgZmlsZSBzbyB0aGF0IGl0IG1hdGNoZXMgYSBuZXdlciAiCisidXBzdHJlYW0gdmVyc2lvbiBvZiB5b3VyIGxpYnJhcnkuIgorbXNnc3RyICIiCisiRW5yZWdpc3RyZSBsZSBmaWNoaWVyIGRlIHN5bWJvbGVzIGNyw6nDqSBhdmVjIGxlIG5vbSBJPG5vbS1kZS1maWNoaWVyPi4gU2kgIgorIkk8bm9tLWRlLWZpY2hpZXI+IGV4aXN0ZSBkw6lqw6AsIHNvbiBjb250ZW51IHNlcmEgdXRpbGlzw6kgY29tbWUgYmFzZSBwb3VyIGxlICIKKyJmaWNoaWVyIGNyw6nDqS4gQ2V0dGUgZm9uY3Rpb25uYWxpdMOpIHBlcm1ldCBkZSBtZXR0cmUgw6Agam91ciBsZSBmaWNoaWVyIGRlICIKKyJzeW1ib2xlcyBwb3VyIHF1J2lsIGNvcnJlc3BvbmRlIMOgIHVuZSBub3V2ZWxsZSB2ZXJzaW9uIGFtb250IGRlIGxhICIKKyJiaWJsaW90aMOocXVlLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQwMQorIywgbm8td3JhcAorbXNnaWQgIkI8LXQ+IgorbXNnc3RyICJCPC10PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDEwCittc2dpZCAiIgorIldyaXRlIHRoZSBzeW1ib2wgZmlsZSBpbiB0ZW1wbGF0ZSBtb2RlIHJhdGhlciB0aGFuIHRoZSBmb3JtYXQgY29tcGF0aWJsZSAiCisid2l0aCBJPGRlYi1zeW1ib2xzKDUpPi4gVGhlIG1haW4gZGlmZmVyZW5jZSBpcyB0aGF0IGluIHRoZSB0ZW1wbGF0ZSBtb2RlICIKKyJzeW1ib2wgbmFtZXMgYW5kIHRhZ3MgYXJlIHdyaXR0ZW4gaW4gdGhlaXIgb3JpZ2luYWwgZm9ybSBjb250cmFyeSB0byB0aGUgIgorInBvc3QtcHJvY2Vzc2VkIHN5bWJvbCBuYW1lcyB3aXRoIHRhZ3Mgc3RyaXBwZWQgaW4gdGhlIGNvbXBhdGliaWxpdHkgbW9kZS4gICIKKyJNb3Jlb3Zlciwgc29tZSBzeW1ib2xzIG1pZ2h0IGJlIG9taXR0ZWQgd2hlbiB3cml0aW5nIGEgc3RhbmRhcmQgSTxkZWItc3ltYm9scyIKKyIoNSk+IGZpbGUgKGFjY29yZGluZyB0byB0aGUgdGFnIHByb2Nlc3NpbmcgcnVsZXMpIHdoaWxlIGFsbCBzeW1ib2xzIGFyZSAiCisiYWx3YXlzIHdyaXR0ZW4gdG8gdGhlIHN5bWJvbCBmaWxlIHRlbXBsYXRlLiIKK21zZ3N0ciAiIgorIsOJY3JpdCBsZSBmaWNoaWVyIGRlIHN5bWJvbGVzIGVuIG1vZGUgbW9kw6hsZSBwbHV0w7R0IHF1ZSBkYW5zIHVuIGZvcm1hdCAiCisiY29tcGF0aWJsZSBhdmVjIEk8ZGViLXN5bWJvbHMoNSk+LiBMYSBkaWZmw6lyZW5jZSBtYWpldXJlIHLDqXNpZGUgZGFucyBsZSBmYWl0ICIKKyJxdWUgbGVzIG5vbXMgZGUgc3ltYm9sZXMgZXQgbGVzIMOpdGlxdWV0dGVzIHNvbnQgw6ljcml0cyBkYW5zIGxldXIgZm9ybWUgIgorImQnb3JpZ2luZSBhdSBsaWV1IGQnw6p0cmUgaW50ZXJwcsOpdMOpcywgYXZlYyByw6lkdWN0aW9uIGRlcyDDqXRpcXVldHRlcyBlbiBtb2RlICIKKyJkZSBjb21wYXRpYmlsaXTDqS4gRGUgcGx1cywgY2VydGFpbnMgc3ltYm9sZXMgcGV1dmVudCDDqnRyZSBvbWlzIGxvcnMgZGUgIgorImwnw6ljcml0dXJlIGQndW4gZmljaGllciBJPGRlYi1zeW1ib2xzKDUpPiBzdGFuZGFyZCAoc2Vsb24gbGVzIHLDqGdsZXMgZGUgIgorInRyYWl0ZW1lbnQgZGVzIMOpdGlxdWV0dGVzKSBhbG9ycyBxdWUgdG91cyBsZXMgc3ltYm9sZXMgc29udCDDqWNyaXRzIGxvcnMgZGUgIgorImxhIGNyw6lhdGlvbiBkJ3VuIG1vZMOobGUgZGUgZmljaGllciBkZSBzeW1ib2xlcy4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0MTAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1jPkk8WzAtNF0+IgorbXNnc3RyICJCPC1jPkk8WzAtNF0+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0MTgKK21zZ2lkICIiCisiRGVmaW5lIHRoZSBjaGVja3MgdG8gZG8gd2hlbiBjb21wYXJpbmcgdGhlIGdlbmVyYXRlZCBzeW1ib2xzIGZpbGUgd2l0aCB0aGUgIgorInRlbXBsYXRlIGZpbGUgdXNlZCBhcyBzdGFydGluZyBwb2ludC4gQnkgZGVmYXVsdCB0aGUgbGV2ZWwgaXMgMS4gSW5jcmVhc2luZyAiCisibGV2ZWxzIGRvIG1vcmUgY2hlY2tzIGFuZCBpbmNsdWRlIGFsbCBjaGVja3Mgb2YgbG93ZXIgbGV2ZWxzLiBMZXZlbCAwIG5ldmVyICIKKyJmYWlscy4gTGV2ZWwgMSBmYWlscyBpZiBzb21lIHN5bWJvbHMgaGF2ZSBkaXNhcHBlYXJlZC4gTGV2ZWwgMiBmYWlscyBpZiBzb21lICIKKyJuZXcgc3ltYm9scyBoYXZlIGJlZW4gaW50cm9kdWNlZC4gTGV2ZWwgMyBmYWlscyBpZiBzb21lIGxpYnJhcmllcyBoYXZlICIKKyJkaXNhcHBlYXJlZC4gTGV2ZWwgNCBmYWlscyBpZiBzb21lIGxpYnJhcmllcyBoYXZlIGJlZW4gaW50cm9kdWNlZC4iCittc2dzdHIgIiIKKyJEw6lmaW5pdCBsZXMgY29udHLDtGxlcyDDoCBlZmZlY3R1ZXIgbG9ycyBkZSBsYSBjb21wYXJhaXNvbiBkZXMgc3ltYm9sZXMgY3LDqcOpcyAiCisiZW4gdXRpbGlzYW50IGxlIGZpY2hpZXIgZGUgbW9kw6hsZSBjb21tZSBwb2ludCBkZSBkw6lwYXJ0LiBMZSBuaXZlYXUgcGFyICIKKyJkw6lmYXV0IGVzdCAxLiBQbHVzIGxlIG5pdmVhdSBlc3QgYXVnbWVudMOpLCBwbHVzIGxlIG5vbWJyZSBkZSBjb250csO0bGUgIgorImVmZmVjdHXDqXMgZXN0IGltcG9ydGFudC4gQ2hhcXVlIG5pdmVhdSBkZSBjb250csO0bGUgIGNvbXBvcnRlIGxlcyBjb250csO0bGVzICIKKyJlZmZlY3R1w6lzIHBvdXIgbGVzIG5pdmVhdXggaW5mw6lyaWV1cnMuIExlIG5pdmVhdSAwIG4nw6ljaG91ZSBqYW1haXMuIExlICIKKyJuaXZlYXUgMSDDqWNob3VlIHNpIGNlcnRhaW5zIHN5bWJvbGVzIG9udCBkaXNwYXJ1LiBMZSBuaXZlYXUgMiDDqWNob3VlIHNpIGRlICIKKyJub3V2ZWF1eCBzeW1ib2xlcyBvbnQgw6l0w6kgYWpvdXTDqXMuIExlIG5pdmVhdSAzIMOpY2hvdWUgc2kgY2VydGFpbmVzICIKKyJiaWJsaW90aMOocXVlcyBvbnQgZGlzcGFydS4gTGUgbml2ZWF1IDQgw6ljaG91ZSBzaSBkZXMgYmlibGlvdGjDqHF1ZXMgb250IMOpdMOpICIKKyJham91dMOpZXMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0MjEKK21zZ2lkICIiCisiVGhpcyB2YWx1ZSBjYW4gYmUgb3ZlcnJpZGRlbiBieSB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGUgIgorIkRQS0dfR0VOU1lNQk9MU19DSEVDS19MRVZFTC4iCittc2dzdHIgIiIKKyJDZXR0ZSB2YWxldXIgcGV1dCDDqnRyZSByZW1wbGFjw6llIHBhciBsYSB2YWxldXIgZGUgbGEgdmFyaWFibGUgIgorImQnZW52aXJvbm5lbWVudCBEUEtHX0dFTlNZTUJPTFNfQ0hFQ0tfTEVWRUwuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0MjcKK21zZ2lkICIiCisiS2VlcCBxdWlldCBhbmQgbmV2ZXIgZ2VuZXJhdGUgYSBkaWZmIGJldHdlZW4gZ2VuZXJhdGVkIHN5bWJvbHMgZmlsZSBhbmQgdGhlICIKKyJ0ZW1wbGF0ZSBmaWxlIHVzZWQgYXMgc3RhcnRpbmcgcG9pbnQgb3Igc2hvdyBhbnkgd2FybmluZ3MgYWJvdXQgbmV3L2xvc3QgIgorImxpYnJhcmllcyBvciBuZXcvbG9zdCBzeW1ib2xzLiBUaGlzIG9wdGlvbiBvbmx5IGRpc2FibGVzIGluZm9ybWF0aW9uYWwgIgorIm91dHB1dCBidXQgbm90IHRoZSBjaGVja3MgdGhlbXNlbHZlcyAoc2VlIEk8LWM+IG9wdGlvbikuIgorbXNnc3RyICIiCisiRm9uY3Rpb25uZSBlbiBtb2RlIHNpbGVuY2lldXggZXQgbmUgY3LDqWUgamFtYWlzIGRlIGZpY2hpZXIgZGUgZGlmZsOpcmVuY2VzICIKKyJlbnRyZSBsZSBmaWNoaWVyIGRlIHN5bWJvbGVzIGNyw6nDqSBldCBsZSBmaWNoaWVyIG1vZMOobGUgdXRpbGlzw6kgY29tbWUgcG9pbnQgIgorImRlIGTDqXBhcnQuIE4nYWZmaWNoZSDDqWdhbGVtZW50IGF1Y3VuIGF2ZXJ0aXNzZW1lbnQgw6AgcHJvcG9zIGRlIGJpYmxpb3Row6hxdWVzICIKKyJub3V2ZWxsZXMgb3UgZGlzcGFydWVzIG91IGRlIHN5bWJvbGVzIG5vdXZlYXV4IG91IGRpc3BhcnVzLiBDZXR0ZSBvcHRpb24gbmUgIgorImTDqXNhY3RpdmUgcXVlIGwnYWZmaWNoYWdlIGluZm9ybWF0aWYsIG1haXMgcGFzIGxlcyBjb250csO0bGVzIGV1eC1tw6ptZXMgKHZvaXIgIgorImwnb3B0aW9uIEk8LWM+KS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0MjcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1hPkk8YXJjaD4iCittc2dzdHIgIkI8LWE+STxhcmNoPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDMyCittc2dpZCAiIgorIkFzc3VtZSBJPGFyY2g+IGFzIGhvc3QgYXJjaGl0ZWN0dXJlIHdoZW4gcHJvY2Vzc2luZyBzeW1ib2wgZmlsZXMuIFVzZSB0aGlzICIKKyJvcHRpb24gdG8gZ2VuZXJhdGUgYSBzeW1ib2wgZmlsZSBvciBkaWZmIGZvciBhbnkgYXJjaGl0ZWN0dXJlIHByb3ZpZGVkIGl0cyAiCisiYmluYXJpZXMgYXJlIGFscmVhZHkgYXZhaWxhYmxlLiIKK21zZ3N0ciAiIgorIkTDqWZpbml0IEk8YXJjaD4gY29tbWUgYXJjaGl0ZWN0dXJlIGxvcnMgZHUgdHJhaXRlbWVudCBkZXMgZmljaGllcnMgZGUgIgorInN5bWJvbGVzLiBDZXR0ZSBvcHRpb24gcGVybWV0IGRlIGNyw6llciB1biBmaWNoaWVyIGRlIHN5bWJvbGVzIG91IHVuIGZpY2hpZXIgIgorImRlIGRpZmbDqXJlbmNlcyBwb3VyIG4naW1wb3J0ZSBxdWVsbGUgYXJjaGl0ZWN0dXJlLCDDoCBjb25kaXRpb24gcXVlIGxlcyAiCisiZmljaGllcnMgYmluYWlyZXMgY29ycmVzcG9uZGFudHMgc29pZW50IGTDqWrDoCBkaXNwb25pYmxlcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQzNworbXNnaWQgIiIKKyJFbmFibGUgZGVidWcgbW9kZS4gTnVtZXJvdXMgbWVzc2FnZXMgYXJlIGRpc3BsYXllZCB0byBleHBsYWluIHdoYXQgQjxkcGtnLSIKKyJnZW5zeW1ib2xzPiBkb2VzLiIKK21zZ3N0ciAiIgorIkFjdGl2ZSBsZSBtb2RlIHZlcmJldXguIERlIG5vbWJyZXV4IG1lc3NhZ2VzIHNvbnQgYWZmaWNow6lzIHBvdXIgZXhwbGlxdWVyIGNlICIKKyJxdWUgQjxkcGtnLWdlbnN5bWJvbHM+IGZhaXQuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDM3CisjLCBuby13cmFwCittc2dpZCAiQjwtVj4iCittc2dzdHIgIkI8LVY+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0NDMKK21zZ2lkICIiCisiRW5hYmxlIHZlcmJvc2UgbW9kZS4gVGhlIGdlbmVyYXRlZCBzeW1ib2xzIGZpbGUgY29udGFpbnMgZGVwcmVjYXRlZCBzeW1ib2xzICIKKyJhcyBjb21tZW50cy4gRnVydGhlcm1vcmUgaW4gdGVtcGxhdGUgbW9kZSwgcGF0dGVybiBzeW1ib2xzIGFyZSBmb2xsb3dlZCBieSAiCisiY29tbWVudHMgbGlzdGluZyByZWFsIHN5bWJvbHMgdGhhdCBoYXZlIG1hdGNoZWQgdGhlIHBhdHRlcm4uIgorbXNnc3RyICIiCisiQWN0aXZlIGxlIG1vZGUgdmVyYmV1eC4gTGUgZmljaGllciBkZSBzeW1ib2xlcyBjcsOpw6kgY29udGllbmRyYSBsZXMgc3ltYm9scyAiCisiZMOpcHLDqWNpw6lzIHNvdXMgZm9ybWUgZGUgY29tbWVudGFpcmVzLiBEZSBwbHVzLCBlbiBtb2RlIG1vZMOobGUsIGxlcyBtb3RpZnMgZGUgIgorInN5bWJvbGVzIHNlcm9udCBzdWl2aXMgZGUgY29tbWVudGFpcmVzIGFmZmljaGFudCBsZXMgc3ltYm9sZXMgcsOpZWxzIHF1aSAiCisiY29ycmVzcG9uZGVudCBhdSBtb3RpZi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQ1MgorbXNnaWQgIkI8aHR0cDovL3Blb3BsZS5yZWRoYXQuY29tL2RyZXBwZXIvc3ltYm9sLXZlcnNpb25pbmc+IgorbXNnc3RyICJCPGh0dHA6Ly9wZW9wbGUucmVkaGF0LmNvbS9kcmVwcGVyL3N5bWJvbC12ZXJzaW9uaW5nPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDU0Cittc2dpZCAiQjxodHRwOi8vcGVvcGxlLnJlZGhhdC5jb20vZHJlcHBlci9nb29kcHJhY3RpY2UucGRmPiIKK21zZ3N0ciAiQjxodHRwOi8vcGVvcGxlLnJlZGhhdC5jb20vZHJlcHBlci9nb29kcHJhY3RpY2UucGRmPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDU2Cittc2dpZCAiQjxodHRwOi8vcGVvcGxlLnJlZGhhdC5jb20vZHJlcHBlci9kc29ob3d0by5wZGY+IgorbXNnc3RyICJCPGh0dHA6Ly9wZW9wbGUucmVkaGF0LmNvbS9kcmVwcGVyL2Rzb2hvd3RvLnBkZj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQ1OQorbXNnaWQgIkI8ZGViLXN5bWJvbHM+KDUpLCBCPGRwa2ctc2hsaWJkZXBzPigxKS4iCittc2dzdHIgIkI8ZGViLXN5bWJvbHM+KDUpLCBCPGRwa2ctc2hsaWJkZXBzPigxKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQ2MgorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDA3LTIwMDkgUmFwaGFcXFs6ZV1sIEhlcnR6b2ciCittc2dzdHIgIkNvcHlyaWdodCBcXChjbyAyMDA3LTIwMDkgUmFwaGFcXFs6ZV1sIEhlcnR6b2ciCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLW1haW50c2NyaXB0LWhlbHBlciIKK21zZ3N0ciAiZHBrZy1tYWludHNjcmlwdC1oZWxwZXIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6NAorbXNnaWQgIiIKKyJkcGtnLW1haW50c2NyaXB0LWhlbHBlciAtIHdvcmtzIGFyb3VuZCBrbm93biBkcGtnIGxpbWl0YXRpb25zIGluIG1haW50YWluZXIgIgorInNjcmlwdHMiCittc2dzdHIgIiIKKyJkcGtnLW1haW50c2NyaXB0LWhlbHBlciAtIGNvbnRvdXJuZW1lbnQgZGVzIGxpbWl0YXRpb25zIGNvbm51ZXMgZGUgZHBrZyBkYW5zICIKKyJsZXMgc2NyaXB0cyBkdSByZXNwb25zYWJsZSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMTo4CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJCPGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyPiBJPGNvbW1hbmQ+IFtJPHBhcmFtZXRlcnM+Li4uXSAtLSBJPG1haW50LSIKKyN8ICJzY3JpcHQtcGFyYW1ldGVycz4iCittc2dpZCAiIgorIkI8ZHBrZy1tYWludHNjcmlwdC1oZWxwZXI+IEk8Y29tbWFuZD4gW0k8cGFyYW1ldGVyPi4uLl0gQjwtLT4gSTxtYWludC1zY3JpcHQtIgorInBhcmFtZXRlcj4uLi4iCittc2dzdHIgIiIKKyJCPGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyPiBJPGNvbW1hbmRlPiBbSTxwYXJhbcOodHJlcz4uLi5dIC0tIEk8cGFyYW3DqHRyZXMtIgorInNjcmlwdC1yZXNwb25zYWJsZT4iCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjkKKyMsIG5vLXdyYXAKK21zZ2lkICJDT01NQU5EUyBBTkQgUEFSQU1FVEVSUyIKK21zZ3N0ciAiQ09NTUFOREVTIEVUIFBBUkFNw4hUUkVTIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjEyCittc2dpZCAiQjxybV9jb25mZmlsZT4gSTxjb25mZmlsZT4gW0k8bGFzdHZlcnNpb24+IFtJPHBhY2thZ2U+XV0iCittc2dzdHIgIiIKKyJCPHJtX2NvbmZmaWxlPiBJPGZpY2hpZXItZGUtY29uZmlndXJhdGlvbj4gW0k8ZGVybmnDqHJlLXZlcnNpb24+IFtJPHBhcXVldD5dXSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxNAorbXNnaWQgIiIKKyJCPG12X2NvbmZmaWxlPiBJPG9sZGNvbmZmaWxlPiBJPG5ld2NvbmZmaWxlPiBbSTxsYXN0dmVyc2lvbj4gW0k8cGFja2FnZT5dXSIKK21zZ3N0ciAiIgorIkI8bXZfY29uZmZpbGU+IEk8YW5jaWVuLWZpY2hpZXItZGUtY29uZmlndXJhdGlvbj4gSTxub3V2ZWF1LWZpY2hpZXItZGUtIgorImNvbmZpZ3VyYXRpb24+IFtJPGRlcm5pw6hyZS12ZXJzaW9uPiBbSTxwYXF1ZXQ+XV0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MjAKK21zZ2lkICIiCisiVGhpcyBwcm9ncmFtIGlzIGRlc2lnbmVkIHRvIGJlIHJ1biB3aXRoaW4gbWFpbnRhaW5lciBzY3JpcHRzIHRvIGFjaGlldmUgc29tZSAiCisidGFza3MgdGhhdCBkcGtnIGNhbid0ICh5ZXQpIGhhbmRsZSBuYXRpdmVseSBlaXRoZXIgYmVjYXVzZSBvZiBkZXNpZ24gIgorImRlY2lzaW9ucyBvciBkdWUgdG8gY3VycmVudCBsaW1pdGF0aW9ucy4iCittc2dzdHIgIiIKKyJDZSBwcm9ncmFtbWUgZXN0IHByw6l2dSBwb3VyIMOqdHJlIGV4w6ljdXTDqSBkYW5zIGxlcyBzY3JpcHRzIGR1IHJlc3BvbnNhYmxlICIKKyJhZmluIGRlIHLDqWFsaXNlciBjZXJ0YWluZXMgdMOiY2hlcyBxdWUgZHBrZyBuZSBwZXV0IHBhcyAoZW5jb3JlKSBwcmVuZHJlIGVuICIKKyJjaGFyZ2UgZGlyZWN0ZW1lbnQgw6AgY2F1c2UgZGUgbGltaXRlcyBkZSBjb25jZXB0aW9uIG91IGRlIGxpbWl0YXRpb25zICIKKyJhY3R1ZWxsZXMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjI3CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJNYW55IG9mIHRob3NlIHRhc2tzIHJlcXVpcmUgY29vcmRpbmF0ZWQgYWN0aW9ucyBmcm9tIHNldmVyYWwgbWFpbnRhaW5lciAiCisjfCAic2NyaXB0cyAoQjxwcmVpbnN0PiwgQjxwb3N0aW5zdD4sIEI8cHJlcm0+LCBCPHBvc3RybT4pLiBUbyBhdm9pZCBtaXN0YWtlcyAiCisjfCAidGhlIHNhbWUgY2FsbCBzaW1wbHkgbmVlZHMgdG8gYmUgcHV0IGluIGFsbCBzY3JpcHRzIGFuZCB0aGUgcHJvZ3JhbSB3aWxsICIKKyN8ICJhdXRvbWF0aWNhbGx5IGFkYXB0IGl0cyBiZWhhdmlvdXIgYmFzZWQgb24gdGhlIGVudmlyb25tZW50IHZhcmlhYmxlICIKKyN8ICJEUEtHX01BSU5UU0NSSVBUX05BTUUgYW5kIG9uIHRoZSBtYWludGFpbmVyIHNjcmlwdHMgYXJndW1lbnRzIHRoYXQgeW91ICIKKyN8ICJoYXZlIHRvIGZvcndhcmQgYWZ0ZXIgYSBkb3VibGUgZGFzaC4iCittc2dpZCAiIgorIk1hbnkgb2YgdGhvc2UgdGFza3MgcmVxdWlyZSBjb29yZGluYXRlZCBhY3Rpb25zIGZyb20gc2V2ZXJhbCBtYWludGFpbmVyICIKKyJzY3JpcHRzIChCPHByZWluc3Q+LCBCPHBvc3RpbnN0PiwgQjxwcmVybT4sIEI8cG9zdHJtPikuIFRvIGF2b2lkIG1pc3Rha2VzICIKKyJ0aGUgc2FtZSBjYWxsIHNpbXBseSBuZWVkcyB0byBiZSBwdXQgaW4gYWxsIHNjcmlwdHMgYW5kIHRoZSBwcm9ncmFtIHdpbGwgIgorImF1dG9tYXRpY2FsbHkgYWRhcHQgaXRzIGJlaGF2aW91ciBiYXNlZCBvbiB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGUgIgorIkI8RFBLR19NQUlOVFNDUklQVF9OQU1FPiBhbmQgb24gdGhlIG1haW50YWluZXIgc2NyaXB0cyBhcmd1bWVudHMgdGhhdCB5b3UgIgorImhhdmUgdG8gZm9yd2FyZCBhZnRlciBhIGRvdWJsZSBkYXNoLiIKK21zZ3N0ciAiIgorIkxhIHBsdXBhcnQgZGUgY2VzIHTDomNoZXMgbsOpY2Vzc2l0ZW50IGxhIGNvb3JkaW5hdGlvbiBkZSBwbHVzaWV1cnMgc2NyaXB0IGR1ICIKKyJyZXNwb25zYWJsZSAoQjxwcmVpbnN0PiwgQjxwb3N0aW5zdD4sIEI8cHJlcm0+LCBCPHBvc3RybT4pLiBQb3VyIMOpdml0ZXIgZGVzICIKKyJlcnJldXJzLCBsZSBtw6ptZSBhcHBlbCBhIHNpbXBsZW1lbnQgYmVzb2luIGQnw6p0cmUgcGxhY8OpIGRhbnMgdG91cyBsZXMgIgorInNjcmlwdHMuIExlIHByb2dyYW1tZSBhZGFwdGVyYSBhbG9ycyBjb24gY29tcG9ydGVtZW50IGVuIGZvbmN0aW9uIGRlIGxhICIKKyJ2YXJpYWJsZSBkJ2Vudmlyb25uZW1lbnQiCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjI4CisjLCBuby13cmFwCittc2dpZCAiQ09ORkZJTEUgUkVMQVRFRCBUQVNLUyIKK21zZ3N0ciAiVMOCQ0hFUyBMScOJRVMgQVVYIEZJQ0hJRVJTIERFIENPTkZJR1VSQVRJT04iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MzgKK21zZ2lkICIiCisiV2hlbiB1cGdyYWRpbmcgYSBwYWNrYWdlLCBkcGtnIHdpbGwgbm90IGF1dG9tYXRpY2FsbHkgcmVtb3ZlIGEgY29uZmZpbGUgKGEgIgorImNvbmZpZ3VyYXRpb24gZmlsZSBmb3Igd2hpY2ggZHBrZyBzaG91bGQgcHJlc2VydmUgdXNlciBjaGFuZ2VzKSBpZiBpdCBpcyBub3QgIgorInByZXNlbnQgaW4gdGhlIG5ld2VyIHZlcnNpb24uIFRoZXJlIGFyZSB0d28gcHJpbmNpcGFsIHJlYXNvbnMgZm9yIHRoaXM7IHRoZSAiCisiZmlyc3QgaXMgdGhhdCB0aGUgY29uZmZpbGUgY291bGQndmUgYmVlbiBkcm9wcGVkIGJ5IGFjY2lkZW50IGFuZCB0aGUgbmV4dCAiCisidmVyc2lvbiBjb3VsZCByZXN0b3JlIGl0LCB1c2VycyB3b3VsZG4ndCB3YW50IHRoZWlyIGNoYW5nZXMgdGhyb3duIGF3YXkuIFRoZSAiCisic2Vjb25kIGlzIHRvIGFsbG93IHBhY2thZ2VzIHRvIHRyYW5zaXRpb24gZmlsZXMgZnJvbSBhIGRwa2ctbWFpbnRhaW5lZCAiCisiY29uZmZpbGUgdG8gYSBmaWxlIG1haW50YWluZWQgYnkgdGhlIHBhY2thZ2UncyBtYWludGFpbmVyIHNjcmlwdHMsIHVzdWFsbHkgIgorIndpdGggYSB0b29sIGxpa2UgZGViY29uZiBvciB1Y2YuIgorbXNnc3RyICIiCisiTG9ycyBkZSBsYSBtaXNlIMOgIGpvdXIgZCd1biBwYXF1ZXQsIGRwa2cgbmUgc3VwcHJpbWUgcGFzIGF1dG9tYXRpcXVlbWVudCBsZXMgIgorImZpY2hpZXJzIGRlIGNvbmZpZ3VyYXRpb24gKGNvbXBvcnRhbnQgZGVzIG1vZGlmaWNhdGlvbnMgbG9jYWxlcyDDoCBwcsOpc2VydmVyKSAiCisicydpbCBuJ2VzdCBwYXMgcHLDqXNlbnQgZGFucyBsYSBub3V2ZWxsZSB2ZXJzaW9uLiBJbCBleGlzdGUgZGV1eCByYWlzb25zICIKKyJwcmluY2lwYWxlcyDDoCBjZWxhLiBFbiBwcmVtaWVyIGxpZXUsIGxlIGZpY2hpZXIgZGUgY29uZmlndXJhdGlvbiBwZXV0IGF2b2lyICIKKyLDqXTDqSBzdXBwcmltw6kgcGFyIGFjY2lkZW50LCDDqnRyZSByw6lpbnTDqWdyw6kgZGFucyBsYSB2ZXJzaW9uIHN1aXZhbnRlIGV0IGlsICIKKyJwZXV0IMOqdHJlIG7DqWNlc3NhaXJlIGRlIHJldHJvdXZlciBsZXMgbW9kaWZpY2F0aW9ucyBsb2NhbGVzLiBFbnN1aXRlLCAiCisibCdvYmplY3RpZiBlc3Qgw6lnYWxlbWVudCBkZSBwZXJtZXR0cmUgZCdlZmZlY3R1ZXIgbGEgdHJhbnNpdGlvbiBkZXB1aXMgZGVzICIKKyJmaWNoaWVycyBkZSBjb25maWd1cmF0aW9uIGfDqXLDqXMgcGFyIGRwa2cgdmVycyB1biBmaWNoaWVyIGfDqXLDqSB2aWEgbGVzICIKKyJzY3JpcHRzIGR1IHJlc3BvbnNhYmxlLCBlbiBnw6luw6lyYWwgw6AgbCdhaWRlIGQndW4gb3V0aWwgY29tbWUgZGViY29uZiBvdSB1Y2YuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjQzCittc2dpZCAiIgorIlRoaXMgbWVhbnMgdGhhdCBpZiBhIHBhY2thZ2UgaXMgaW50ZW5kZWQgdG8gcmVuYW1lIG9yIHJlbW92ZSBhIGNvbmZmaWxlLCBpdCAiCisibXVzdCBleHBsaWNpdGx5IGRvIHNvIGFuZCBCPGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyPiBjYW4gYmUgdXNlZCB0byAiCisiaW1wbGVtZW50IGdyYWNlZnVsIGRlbGV0aW9uIGFuZCBtb3Zpbmcgb2YgY29uZmZpbGVzIHdpdGhpbiBtYWludGFpbmVyICIKKyJzY3JpcHRzLiIKK21zZ3N0ciAiIgorIkNlbGEgc2lnbmlmaWUgcXVlIHNpIHVuIHBhcXVldCBhIGJlc29pbiBkZSByZW5vbW1lciBvdSBzdXBwcmltZXIgdW4gZmljaGllciAiCisiZGUgY29uZmlndXJhdGlvbiwgaWwgZG9pdCBsZSBmYWlyZSBleHBsaWNpdGVtZW50LiBMJ29iamVjdGlmIGRlIEI8ZHBrZy0iCisibWFpbnRzY3JpcHQtaGVscGVyPiBlc3QgZG9uYyBkZSBmb3VybmlyIGRlcyBtw6l0aG9kZXMgZGUgc3VwcHJlc3Npb24gb3UgIgorInJlbm9tbWFnZSBkZSBmaWNoaWVycyBkZSBjb25maWd1cmF0aW9uIHZpYSBsZXMgc2NyaXB0cyBkdSByZXNwb25zYWJsZS4iCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjQ0CisjLCBuby13cmFwCittc2dpZCAiUkVNT1ZJTkcgQSBDT05GRklMRSIKK21zZ3N0ciAiU1VQUFJFU1NJT04gRCdVTiBGSUNISUVSIERFIENPTkZJR1VSQVRJT04iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6NTAKK21zZ2lkICIiCisiSWYgYSBjb25mZmlsZSBpcyBjb21wbGV0ZWx5IHJlbW92ZWQsIGl0IHNob3VsZCBiZSByZW1vdmVkIGZyb20gZGlzaywgdW5sZXNzICIKKyJ0aGUgdXNlciBoYXMgbW9kaWZpZWQgaXQuIElmIHRoZXJlIGFyZSBsb2NhbCBtb2RpZmljYXRpb25zLCB0aGV5IHNob3VsZCBiZSAiCisicHJlc2VydmVkLiBJZiB0aGUgcGFja2FnZSB1cGdyYWRlcyBhYm9ydHMsIHRoZSBuZXdseSBvYnNvbGV0ZSBjb25mZmlsZSAiCisic2hvdWxkIG5vdCBkaXNhcHBlYXIuIgorbXNnc3RyICIiCisiU2kgdW4gZmljaGllciBkZSBjb25maWd1cmF0aW9uIGVzdCBjb21wbMOodGVtZW50IHN1cHByaW3DqSwgaWwgZG9pdCDDqnRyZSAiCisiZWZmYWPDqSBkdSBkaXNxdWUgc2F1ZiBzaSBsJ2FkbWluaXN0cmF0ZXVyIGxvY2FsIGwnYSBtb2RpZmnDqS4gTGVzIMOpdmVudHVlbGxlcyAiCisibW9kaWZpY2F0aW9ucyBsb2NhbGVzIGRvaXZlbnQgw6p0cmUgY29uc2VydsOpZXMuIFNpIGxhIG1pc2Ugw6Agam91ciBkdSBwYXF1ZXQgIgorImVzdCBpbnRlcnJvbXB1ZSwgbGUgZmljaGllciBkZSBjb25maWd1cmF0aW9uIHJlbmR1IG9ic29sw6h0ZSBuZSBkb2l0IHBhcyAiCisiYXZvaXIgZGlzcGFydS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6NTMKK21zZ2lkICIiCisiQWxsIG9mIHRoaXMgaXMgaW1wbGVtZW50ZWQgYnkgcHV0dGluZyB0aGUgZm9sbG93aW5nIHNoZWxsIHNuaXBwZXQgaW4gdGhlICIKKyJCPHByZWluc3Q+LCBCPHBvc3RpbnN0PiBhbmQgQjxwb3N0cm0+IG1haW50YWluZXIgc2NyaXB0czoiCittc2dzdHIgIiIKKyJMJ2Vuc2VtYmxlIGRlIGNlcyBwcsOpLXJlcXVpcyBlc3QgbWlzIGVuIG9ldXZyZSBlbiB1dGlsaXNhbnQgbGVzIGNvbW1hbmRlcyAiCisic2hlbGwgc3VpdmFudGVzIGRhbnMgbGVzIHNjcmlwdHMgQjxwcmVpbnN0PiwgQjxwb3N0aW5zdD4gZXQgQjxwb3N0cm0+wqA6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjU2CisjLCBuby13cmFwCittc2dpZCAiIgorIiAgICBkcGtnLW1haW50c2NyaXB0LWhlbHBlciBybV9jb25mZmlsZSBcXGVcbiIKKyIgICAgICAgIEk8Y29uZmZpbGU+IEk8bGFzdHZlcnNpb24+IEk8cGFja2FnZT4gLS0gXCIkQFwiXG4iCittc2dzdHIgIiIKKyIgICAgZHBrZy1tYWludHNjcmlwdC1oZWxwZXIgcm1fY29uZmZpbGUgXFxlXG4iCisiICAgICAgICBJPGZpY2hpZXItZGUtY29uZmlndXJhdGlvbj4gSTxkZXJuacOocmUtdmVyc2lvbj4gSTxwYXF1ZXQ+IC0tIFwiJEBcIlxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjY2Cittc2dpZCAiIgorIkk8Y29uZmZpbGU+IGlzIHRoZSBmaWxlbmFtZSBvZiB0aGUgY29uZmZpbGUgdG8gcmVtb3ZlLiAgSTxsYXN0dmVyc2lvbj4gaXMgIgorInRoZSBsYXN0IHZlcnNpb24gb2YgdGhlIHBhY2thZ2UgdGhhdCBjb250YWluZWQgdGhlIGNvbmZmaWxlIChvciB0aGUgbGFzdCAiCisidmVyc2lvbiBvZiB0aGUgcGFja2FnZSB0aGF0IGRpZCBub3QgdGFrZSBjYXJlIHRvIHJlbW92ZSB0aGUgb2Jzb2xldGUgIgorImNvbmZmaWxlIGlmIHRoaXMgd2FzIG5vdCBpbW1lZGlhdGVseSBpbXBsZW1lbnRlZCkuICBJZiBJPGxhc3R2ZXJzaW9uPiBpcyAiCisiZW1wdHkgb3Igb21pdHRlZCwgdGhlbiB0aGUgb3BlcmF0aW9uIGlzIHRyaWVkIG9uIGV2ZXJ5IHVwZ3JhZGUuIEk8cGFja2FnZT4gIgorImlzIHRoZSBwYWNrYWdlIG5hbWUsIGl0J3Mgb3B0aW9uYWwgYXMgaXQgd2lsbCBkZWZhdWx0IHRvICIKKyIkRFBLR19NQUlOVFNDUklQVF9QQUNLQUdFICh0aGlzIHZhcmlhYmxlIGlzIHNldCBieSBkcGtnIHRvIHRoZSBuYW1lIG9mIHRoZSAiCisicGFja2FnZSBhY3RlZCB1cG9uKS4gQWxsIHRoZSBwYXJhbWV0ZXJzIG9mIHRoZSBtYWludGFpbmVyIHNjcmlwdHMgaGF2ZSB0byBiZSAiCisiZm9yd2FyZGVkIHRvIHRoZSBwcm9ncmFtIGFmdGVyIFwiLS1cIi4iCittc2dzdHIgIiIKKyJJPGZpY2hpZXItZGUtY29uZmlndXJhdGlvbj4gZXN0IGxlIG5vbSBkdSBmaWNoaWVyIGRlIGNvbmZpZ3VyYXRpb24gw6AgIgorInN1cHByaW1lci4gSTxkZXJuacOocmUtdmVyc2lvbj4gZXN0IGxhIGRlcm5pw6hyZSB2ZXJzaW9uIGR1IHBhcXVldCBxdWkgbGUgIgorImZvdXJuaXNzYWl0IChvdSBsYSBkZXJuacOocmUgdmVyc2lvbiBkdSBwYXF1ZXQgcXVpIG5lIHByZW5haXQgcGFzIHNvaW4gZGUgIgorInN1cHByaW1lciBsZSBmaWNoaWVyIGRlIGNvbmZpZ3VyYXRpb24gb2Jzb2zDqHRlIHNpIGxhIHN1cHByZXNzaW9uIGNvcnJlY3RlICIKKyJuJ2EgcGFzIMOpdMOpIGltbcOpZGlhdGVtZW50IG1pc2UgZW4gb2V1dnJlKS4gU2kgSTxkZXJuacOocmUtdmVyc2lvbj4gZXN0IHZpZGUgIgorIm91IGVzdCBvbWlzLCBjZXR0ZSBzdXBwcmVzc2lvbiBzZXJhIHRlbnTDqSBwb3VyIHRvdXRlIG1pc2Ugw6Agam91ci4gSTxwYXF1ZXQ+ICIKKyJlc3QgbGUgbm9tIGR1IHBhcXVldC4gQ2UgcGFyYW3DqHRyZSBlc3Qgb3B0aW9ubmVsLCBsYSB2YWxldXIgcGFyIGTDqWZhdXQgw6l0YW50ICIKKyIkRFBLR19NQUlOVFNDUklQVF9QQUNLQUdFIChjZXR0ZSB2YXJpYWJsZSBlc3QgcG9zaXRpb25uw6llIHBhciBkcGtnIHN1ciBsZSAiCisibm9tIGR1IHBhcXVldCBzdXIgbGVxdWVsIGlsIHRyYXZhaWxsZSkuIFRvdXMgbGVzIHBhcmFtw6h0cmVzIGRlcyBzY3JpcHRzIGR1ICIKKyJyZXNwb25zYWJsZSBkb2l2ZW50IMOqdHJlIHJlZGlyaWfDqXMgYXUgcHJvZ3JhbW1lIGFwcsOocyDCq8KgLS3CoMK7LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMTo3NQorbXNnaWQgIiIKKyJDdXJyZW50IGltcGxlbWVudGF0aW9uOiBpbiB0aGUgQjxwcmVpbnN0PiwgaXQgY2hlY2tzIGlmIHRoZSBjb25mZmlsZSB3YXMgIgorIm1vZGlmaWVkIGFuZCByZW5hbWVzIGl0IGVpdGhlciB0byBJPGNvbmZmaWxlPkI8LmRwa2ctcmVtb3ZlPiAoaWYgbm90ICIKKyJtb2RpZmllZCkgb3IgdG8gSTxjb25mZmlsZT5CPC5kcGtnLWJhY2t1cD4gKGlmIG1vZGlmaWVkKS4gSW4gdGhlICIKKyJCPHBvc3RpbnN0PiwgdGhlIGxhdHRlciBmaWxlIGlzIHJlbmFtZWQgdG8gSTxjb25mZmlsZT5CPC5kcGtnLWJhaz4gYW5kIGtlcHQgIgorImZvciByZWZlcmVuY2UgYXMgaXQgY29udGFpbnMgdXNlciBtb2RpZmljYXRpb25zIGJ1dCB0aGUgZm9ybWVyIHdpbGwgYmUgIgorInJlbW92ZWQuIElmIHRoZSBwYWNrYWdlIHVwZ3JhZGUgYWJvcnRzLCB0aGUgQjxwb3N0cm0+IHJlaW5zdGFsbHMgdGhlICIKKyJvcmlnaW5hbCBjb25mZmlsZS4gRHVyaW5nIHB1cmdlLCB0aGUgQjxwb3N0cm0+IHdpbGwgYWxzbyBkZWxldGUgdGhlIEI8LmRwa2ctIgorImJhaz4gZmlsZSBrZXB0IHVwIHRvIG5vdy4iCittc2dzdHIgIiIKKyJEw6l0YWlscyBkZSBsYSBtaXNlIGVuIG9ldXZyZSBhY3R1ZWxsZcKgOsKgZGFucyBsZSBzY3JpcHQgQjxwcmVpbnN0PiwgaWwgZXN0ICIKKyJ2w6lyaWZpw6kgc2kgbGUgZmljaGllciBkZSBjb25maWd1cmF0aW9uIGEgw6l0w6kgbW9kaWZpw6kuIENlbHVpLWNpIGVzdCBhbG9ycyAiCisicmVub21tw6ksIHNvaXQgZW4gSTxmaWNoaWVyLWRlLWNvbmZpZ3VyYXRpb24+QjwuZHBrZy1yZW1vdmU+IHMnaWwgbidhIHBhcyDDqXTDqSAiCisibW9kaWZpw6ksIHNvaXQgZW4gSTxmaWNoaWVyLWRlLWNvbmZpZ3VyYXRpb24+QjwuZHBrZy1iYWNrdXA+IHMnaWwgbCdhIMOpdMOpLiAiCisiRGFucyBsZSBzY3JpcHQgQjxwb3N0aW5zdD4sIGNlIGRlcm5pZXIgZmljaGllciBlc3QgZW5zdWl0ZSByZW5vbW3DqSBlbiAiCisiSTxmaWNoaWVyLWRlLWNvbmZpZ3VyYXRpb24+QjwuZHBrZy1iYWs+IGV0IGNvbnNlcnbDqSBwb3VyIHLDqWbDqXJlbmNlIHB1aXNxdSdpbCAiCisiY29udGllbnQgZGVzIG1vZGlmaWNhdGlvbnMgbG9jYWxlcywgbWFpcyBsZSBwcmVtaWVyIGVzdCBzdXBwcmltw6kuIFNpIGxhIG1pc2UgIgorIsOgIGpvdXIgZHUgcGFxdWV0IGVzdCBpbnRlcnJvbXB1ZSwgbGUgc2NyaXB0IEI8cG9zdHJtPiByZW1ldCBlbiBwbGFjZSBsZSAiCisiZmljaGllciBkZSBjb25maWd1cmF0aW9uIGQnb3JpZ2luZS4gw4AgbGEgcHVyZ2UgZHUgcGFxdWV0LCBsZSBzY3JpcHQgIgorIkI8cG9zdHJtPiBzdXBwcmltZXJhIMOpZ2FsZW1lbnQgbGUgZmljaGllciBCPC5kcGtnLWJhaz4gcXVpIGF2YWl0IMOpdMOpICIKKyJjb25zZXJ2w6kganVzcXVlIGzDoC4iCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjc2CisjLCBuby13cmFwCittc2dpZCAiUkVOQU1JTkcgQSBDT05GRklMRSIKK21zZ3N0ciAiUkVOT01NQUdFIEQnVU4gRklDSElFUiBERSBDT05GSUdVUkFUSU9OIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjgzCittc2dpZCAiIgorIklmIGEgY29uZmZpbGUgaXMgbW92ZWQgZnJvbSBvbmUgbG9jYXRpb24gdG8gYW5vdGhlciwgeW91IG5lZWQgdG8gbWFrZSBzdXJlICIKKyJ5b3UgbW92ZSBhY3Jvc3MgYW55IGNoYW5nZXMgdGhlIHVzZXIgaGFzIG1hZGUuIFRoaXMgbWF5IHNlZW0gYSBzaW1wbGUgY2hhbmdlICIKKyJ0byB0aGUgQjxwcmVpbnN0PiBzY3JpcHQgYXQgZmlyc3QsIGhvd2V2ZXIgdGhhdCB3aWxsIHJlc3VsdCBpbiB0aGUgdXNlciAiCisiYmVpbmcgcHJvbXB0ZWQgYnkgZHBrZyB0byBhcHByb3ZlIHRoZSBjb25mZmlsZSBlZGl0cyBldmVuIHRob3VnaCB0aGV5IGFyZSAiCisibm90IHJlc3BvbnNpYmxlIG9mIHRoZW0uIgorbXNnc3RyICIiCisiU2kgdW4gZmljaGllciBkZSBjb25maWd1cmF0aW9uIGVzdCBkw6lwbGFjw6kgw6AgdW4gYXV0cmUgZW5kcm9pdCwgaWwgZXN0ICIKKyJuw6ljZXNzYWlyZSBkZSBnYXJhbnRpciBsYSBwcsOpc2VydmF0aW9uIGRlcyBtb2RpZmljYXRpb25zIGxvY2FsZXMuIMOAIHByZW1pw6hyZSAiCisidnVlLCBjZWxhIHBldXQgc2VtYmxlciDDqnRyZSB1bmUgc2ltcGxlIG1vZGlmaWNhdGlvbiBkYW5zIGxlIHNjcmlwdCAiCisiQjxwcmVpbnN0PiwgbWFpcyBjZWxhIHJpc3F1ZSBkZSByw6lzdWx0YXQgZGFucyB1bmUgZGVtYW5kZSwgcGFyIGRwa2csICIKKyJkJ2FwcHJvYmF0aW9uIGRlIG1vZGlmaWNhdGlvbnMgbG9jYWxlcyBxdWkgbidleGlzdGVudCBwYXMgcsOpZWxsZW1lbnQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjg3Cittc2dpZCAiIgorIkdyYWNlZnVsIHJlbmFtaW5nIGNhbiBiZSBpbXBsZW1lbnRlZCBieSBwdXR0aW5nIHRoZSBmb2xsb3dpbmcgc2hlbGwgc25pcHBldCAiCisiaW4gdGhlIEI8cHJlaW5zdD4sIEI8cG9zdGluc3Q+IGFuZCBCPHBvc3RybT4gbWFpbnRhaW5lciBzY3JpcHRzOiIKK21zZ3N0ciAiIgorIlVuIHJlbm9tbWFnZSDDqWzDqWdhbnQgcGV1dCDDqnRyZSBtaXMgZW4gb2V1dnJlIGF2ZWMgbGVzIGV4dHJhaXRzIHNoZWxsIHF1aSAiCisic3VpdmVudCwgZGFucyBsZXMgc2NyaXB0cyBCPHByZWluc3Q+LCBCPHBvc3RpbnN0PiBldCBCPHBvc3RybT4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjkwCisjLCBuby13cmFwCittc2dpZCAiIgorIiAgICBkcGtnLW1haW50c2NyaXB0LWhlbHBlciBtdl9jb25mZmlsZSBcXGVcbiIKKyIgICAgICAgIEk8b2xkY29uZmZpbGU+IEk8bmV3Y29uZmZpbGU+IEk8bGFzdHZlcnNpb24+IEk8cGFja2FnZT4gLS0gXCIkQFwiXG4iCittc2dzdHIgIiIKKyIgICAgZHBrZy1tYWludHNjcmlwdC1oZWxwZXIgbXZfY29uZmZpbGUgXFxlXG4iCisiICAgICAgICBJPGFuY2llbi1maWNoaWVyPiBJPG5vdXZlYXUtZmljaGllcj4gSTxkZXJuacOocmUtdmVyc2lvbj4gSTxwYXF1ZXQ+IC0tIFwiJEBcIlxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjEwMAorbXNnaWQgIiIKKyJJPG9sZGNvbmZmaWxlPiBhbmQgSTxuZXdjb25mZmlsZT4gYXJlIHRoZSBvbGQgYW5kIG5ldyBuYW1lIG9mIHRoZSBjb25mZmlsZSAiCisidG8gcmVuYW1lLiBJPGxhc3R2ZXJzaW9uPiBpcyB0aGUgbGFzdCB2ZXJzaW9uIG9mIHRoZSBwYWNrYWdlIHRoYXQgY29udGFpbmVkICIKKyJ0aGUgY29uZmZpbGUgd2l0aCB0aGUgb2xkIG5hbWUuIElmIEk8bGFzdHZlcnNpb24+IGlzIGVtcHR5IG9yIG9taXR0ZWQsIHRoZW4gIgorInRoZSBvcGVyYXRpb24gaXMgdHJpZWQgb24gZXZlcnkgdXBncmFkZSAobm90ZTogaXQncyBzYWZlciB0byBnaXZlIHRoZSAiCisidmVyc2lvbiBhbmQgaGF2ZSB0aGUgb3BlcmF0aW9uIHRyaWVkIG9ubHkgb25jZSkuIEk8cGFja2FnZT4gaXMgdGhlIHBhY2thZ2UgIgorIm5hbWUsIGl0J3Mgb3B0aW9uYWwgYXMgaXQgd2lsbCBkZWZhdWx0IHRvICREUEtHX01BSU5UU0NSSVBUX1BBQ0tBR0UgKHRoaXMgIgorInZhcmlhYmxlIGlzIHNldCBieSBkcGtnIHRvIHRoZSBuYW1lIG9mIHRoZSBwYWNrYWdlIGFjdGVkIHVwb24pLiBBbGwgdGhlICIKKyJwYXJhbWV0ZXJzIG9mIHRoZSBtYWludGFpbmVyIHNjcmlwdHMgaGF2ZSB0byBiZSBmb3J3YXJkZWQgdG8gdGhlIHByb2dyYW0gIgorImFmdGVyIFwiLS1cIi4iCittc2dzdHIgIiIKKyJJPGFuY2llbi1maWNoaWVyPiBldCBJPG5vdXZlYXUtZmljaGllcj4gc29udCBsZXMgZGV1eCBub21zIHN1Y2Nlc3NpZnMgZHUgIgorImZpY2hpZXIgZGUgY29uZmlndXJhdGlvbi4gSTxkZXJuacOocmUtdmVyc2lvbj4gZXN0IGxhIGRlcm5pw6hyZSB2ZXJzaW9uIGR1ICIKKyJwYXF1ZXQgcXVpIGNvbnRlbmFpdCBsZSBmaWNoaWVyIGRlIGNvbmZpZ3VyYXRpb24gYXZlYyBsJ2FuY2llbiBubm9tLiBTaSAiCisiSTxkZXJuacOocmUtdmVyc2lvbj4gZXN0IHZpZGUgb3UgbWFucXVhbnQsIGwnb3DDqXJhdGlvbiBzZXJhIHRlbnTDqWUgw6AgY2hhcXVlICIKKyJtaXNlIMOgIGpvdXIgKGlsIGVzdCBwbHVzIHPDu3IgZCdpbmRpcXVlciBsYSBib25uZSB2ZXJzaW9uIGFmaW4gcWUgbCdvcMOpcmF0aW9uICIKKyJuZSBzb2l0IHRlbnTDqWUgcXUndW5lIGZvaXMpLiBJPHBhcXVldD4gZXN0IGxlIG5vbSBkdSBwYXF1ZXQuIENlIHBhcmFtw6h0cmUgIgorImVzdCBvcHRpb25uZWwsIGxhIHZhbGV1ciBwYXIgZMOpZmF1dCDDqXRhbnQgJERQS0dfTUFJTlRTQ1JJUFRfUEFDS0FHRSAoY2V0dGUgIgorInZhcmlhYmxlIGVzdCBwb3NpdGlvbm7DqWUgcGFyIGRwa2cgc3VyIGxlIG5vbSBkdSBwYXF1ZXQgc3VyIGxlcXVlbCBpbCAiCisidHJhdmFpbGxlKS4gVG91cyBsZXMgcGFyYW3DqHRyZXMgZGVzIHNjcmlwdHMgZHUgcmVzcG9uc2FibGUgZG9pdmVudCDDqnRyZSAiCisicmVkaXJpZ8OpcyBhdSBwcm9ncmFtbWUgYXByw6hzIMKrwqAtLcKgwrsuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjEwOAorbXNnaWQgIiIKKyJDdXJyZW50IGltcGxlbWVudGF0aW9uOiB0aGUgQjxwcmVpbnN0PiBjaGVja3MgaWYgdGhlIGNvbmZmaWxlIGhhcyBiZWVuICIKKyJtb2RpZmllZCwgaWYgeWVzIGl0J3MgbGVmdCBvbiBwbGFjZSBvdGhlcndpc2UgaXQncyByZW5hbWVkIHRvICIKKyJJPG9sZGNvbmZmaWxlPkI8LmRwa2ctcmVtb3ZlPi4gT24gY29uZmlndXJhdGlvbiwgdGhlIEI8cG9zdGluc3Q+IHJlbW92ZXMgIgorIkk8b2xkY29uZmZpbGU+QjwuZHBrZy1yZW1vdmU+IGFuZCByZW5hbWVzIEk8b2xkY29uZmZpbGU+IHRvIEk8bmV3Y29uZmZpbGU+ICIKKyJpZiBJPG9sZGNvbmZmaWxlPiBpcyBzdGlsbCBhdmFpbGFibGUuIE9uIGFib3J0LXVwZ3JhZGUvYWJvcnQtaW5zdGFsbCwgdGhlICIKKyJCPHBvc3RybT4gcmVuYW1lcyBJPG9sZGNvbmZmaWxlPkI8LmRwa2ctcmVtb3ZlPiBiYWNrIHRvIEk8b2xkY29uZmZpbGU+IGlmICIKKyJyZXF1aXJlZC4iCittc2dzdHIgIiIKKyJEw6l0YWlscyBkZSBsYSBtaXNlIGVuIG9ldXZyZSBhY3R1ZWxsZcKgOsKgZGFucyBsZSBzY3JpcHQgQjxwcmVpbnN0PiwgaWwgZXN0ICIKKyJ2w6lyaWZpw6kgc2kgbGUgZmljaGllciBkZSBjb25maWd1cmF0aW9uIGEgw6l0w6kgbW9kaWZpw6kuIENlbHVpLWNpIGVzdCBhbG9ycyAiCisic29pdCBsYWlzc8OpIGVuIHBsYWNlIHMnaWwgYSDDqXTDqSBtb2RpZmnDqSwgc29pdCByZW5vbW3DqSBlbiBJPGFuY2llbi1maWNoaWVyPkI8LiIKKyJkcGtnLXJlbW92ZT4gcydpbCBuZSBsJ2EgcGFzIMOpdMOpLiBMb3JzIGRlIGxhIGNvbmZpZ3VyYXRpb25zLCBsZSBzY3JpcHQgIgorIkI8cG9zdGluc3Q+IHN1cHByaW1lIEk8YW5jaWVuLWZpY2hpZXI+QjwuZHBrZy1yZW1vdmU+IGV0IHJlbm9tbWUgSTxhbmNpZW4tIgorImZpY2hpZXI+IGFuZCBJPG5vdXZlYXUtZmljaGllcj4gc2kgSTxhbmNpZW4tZmljaGllcj4gZXhpc3RlIHRvdWpvdXJzIFNpIGxhICIKKyJtaXNlIMOgIGpvdXIgb3UgbCdpbnN0YWxsYXRpb24gc29udCBpbnRlcnJvbXB1ZXMsIGxlIHNjcmlwdCBCPHBvc3RybT4gcmVub21tZSAiCisiSTxhbmNpZW4tZmljaGllcj5CPC5kcGtnLXJlbW92ZT4gZW4gSTxhbmNpZW4tZmljaGllcj4gc2kgYydlc3QgaW5kaXNwZW5zYWJsZS4iCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjEwOQorIywgbm8td3JhcAorbXNnaWQgIklOVEVHUkFUSU9OIElOIFBBQ0tBR0VTIgorbXNnc3RyICJJTlTDiUdSQVRJT04gREFOUyBMRVMgUEFRVUVUUyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxMTYKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIkdpdmVuIHRoYXQgQjxkcGtnLW1haW50c2NyaXB0LWhlbHBlcj4gaXMgdXNlZCBpbiB0aGUgQjxwcmVpbnN0PiwgdXNpbmcgaXQgIgorI3wgInVuY29uZGl0aW9uYWxseSByZXF1aXJlcyBhIHByZS1kZXBlbmRlbmN5IHRvIGVuc3VyZSB0aGF0IHRoZSByZXF1aXJlZCAiCisjfCAidmVyc2lvbiBvZiBkcGtnIGhhcyBiZWVuIGNvbmZpZ3VyZWQgYmVmb3JlLiBUaGUgcmVxdWlyZWQgdmVyc2lvbiBkZXBlbmRzICIKKyN8ICJvbiB0aGUgY29tbWFuZCB1c2VkLCBmb3IgQjxybV9jb25mZmlsZT4gYW5kIEI8bXZfY29uZmZpbGU+IGl0IGlzIDEuMTUuNy4yOiIKK21zZ2lkICIiCisiR2l2ZW4gdGhhdCBCPGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyPiBpcyB1c2VkIGluIHRoZSBCPHByZWluc3Q+LCB1c2luZyBpdCAiCisidW5jb25kaXRpb25hbGx5IHJlcXVpcmVzIGEgcHJlLWRlcGVuZGVuY3kgdG8gZW5zdXJlIHRoYXQgdGhlIHJlcXVpcmVkICIKKyJ2ZXJzaW9uIG9mIGRwa2cgaGFzIGJlZW4gdW5wYWNrZWQgYmVmb3JlLiBUaGUgcmVxdWlyZWQgdmVyc2lvbiBkZXBlbmRzIG9uICIKKyJ0aGUgY29tbWFuZCB1c2VkLCBmb3IgQjxybV9jb25mZmlsZT4gYW5kIEI8bXZfY29uZmZpbGU+IGl0IGlzIDEuMTUuNy4yOiIKK21zZ3N0ciAiIgorIkNvbW1lIEI8ZHBrZy1tYWludHNjcmlwdC1oZWxwZXI+IGVzdCB1dGlsaXPDqSBkYW5zIGxlIHNjcmlwdCBCPHByZWluc3Q+LCAiCisibCd1dGlsaXNlciBzYW5zIGNvbmRpdGlvbnMgaW1wb3NlIHVuZSBwcsOpLWTDqXBlbmRhbmNlIGFmaW4gZGUgZ2FyYW50aXIgcXVlIGxhICIKKyJ2ZXJzaW9uIG1pbmltYWxlIG7DqWNlc3NhaXJlIGRlIGRwa2cgZXQgYmllbiDDqXTDqSBwcsOpYWxhYmxlbWVudCBjb25maWd1csOpZS4gTGEgIgorInZlcnNpb24gbsOpY2Vzc2FpcmUgZMOpcGVuZCBkZSBsYSBjb21tYW5kZSB1dGlsaXPDqWUuIExhIHZlcnNpb24gbWluaW1hbGUgIgorImTDqXBlbmQgZGUgbGEgY29tbWFuZGUgw6AgdXRpbGlzZXLCoDogYWluc2kgcG91ciBCPHJtX2NvbmZmaWxlPiBldCAiCisiQjxtd19jb25mZmlsZT4sIGNldHRlIHZlcnNpb24gZXN0IDEuMTUuNy4ywqA6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjExOAorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICIgICAgUHJlLURlcGVuZHM6IGRwa2cgKEU8Z3Q+PSAxLjE1LjcuMilcbiIKK21zZ2lkICIgICAgQjxQcmUtRGVwZW5kczo+IGRwa2cgKEU8Z3Q+PSAxLjE1LjcuMilcbiIKK21zZ3N0ciAiICAgIFByZS1EZXBlbmRzOiBkcGtnIChFPGd0Pj0gMS4xNS43LjIpXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MTIzCittc2dpZCAiIgorIkJ1dCBpbiBtYW55IGNhc2VzIHRoZSBvcGVyYXRpb24gZG9uZSBieSB0aGUgcHJvZ3JhbSBpcyBub3QgY3JpdGljYWwgZm9yIHRoZSAiCisicGFja2FnZSwgYW5kIGluc3RlYWQgb2YgdXNpbmcgYSBwcmUtZGVwZW5kZW5jeSB3ZSBjYW4gY2FsbCB0aGUgcHJvZ3JhbSBvbmx5ICIKKyJpZiB3ZSBrbm93IHRoYXQgdGhlIHJlcXVpcmVkIGNvbW1hbmQgaXMgc3VwcG9ydGVkIGJ5IHRoZSBjdXJyZW50bHkgaW5zdGFsbGVkICIKKyJkcGtnOiIKK21zZ3N0ciAiIgorIkNlcGVuZGFudCwgZGFucyBkZSBub21icmV1eCBjYXMsIGwnb3DDqXJhdGlvbiByw6lhbGlzw6llIHBhciBsZSBwcm9ncmFtbWUgbidlc3QgIgorInBhcyBjcml0aXF1ZSBwb3VyIGxlIHBhcXVldCBldCBhdSBsaWV1IGQndXRpbGlzZXIgdW5lIHByw6ktZMOpcGVuZGFuY2UsIGlsIGVzdCAiCisicG9zc2libGUgZGUgbmUgbGFuY2VyIGxlIHByb2dyYW1tZSBxdWUgc2kgb24gYSBsYSBjZXJ0aXR1ZGUgcXVlIGxhIGNvbW1hbmRlICIKKyJuw6ljZXNzYWlyZSBlc3QgZ8OpcsOpZSBwYXIgbGEgdmVyc2lvbiBhY3R1ZWxsZW1lbnQgaW5zdGFsbMOpZSBkZSBkcGtnwqA6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjEyNworIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICIiCisjfCAiICAgIGlmIGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyIHN1cHBvcnRzIEU8bHQ+Y29tbWFuZEU8Z3Q+OyB0aGVuXG4iCisjfCAiICAgICAgICBkcGtnLW1haW50c2NyaXB0LWhlbHBlciBFPGx0PmNvbW1hbmRFPGd0PiAuLi5cbiIKKyN8ICIgICAgZmlcbiIKK21zZ2lkICIiCisiICAgIGlmIGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyIHN1cHBvcnRzIEk8Y29tbWFuZD47IHRoZW5cbiIKKyIgICAgICAgIGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyIEk8Y29tbWFuZD4gLi4uXG4iCisiICAgIGZpXG4iCittc2dzdHIgIiIKKyIgICAgaWYgZHBrZy1tYWludHNjcmlwdC1oZWxwZXIgc3VwcG9ydHMgRTxsdD5jb21tYW5kRTxndD47IHRoZW5cbiIKKyIgICAgICAgIGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyIEU8bHQ+Y29tbWFuZEU8Z3Q+IC4uLlxuIgorIiAgICBmaVxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjEzMAorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDEwIFJhcGhhXFxbOmVdbCBIZXJ0em9nIgorbXNnc3RyICJDb3B5cmlnaHQgXFwoY28gMjAxMCBSYXBoYVxcWzplXWwgSGVydHpvZyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxMzIKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAwOCBKb2V5IEhlc3MiCittc2dzdHIgIkNvcHlyaWdodCBcXChjbyAyMDA4IEpvZXkgSGVzcyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxMzQKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAwNyBHdWlsbGVtIEpvdmVyIgorbXNnc3RyICJDb3B5cmlnaHQgXFwoY28gMjAwNyBHdWlsbGVtIEpvdmVyIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjEzNgorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDA1IFNjb3R0IEphbWVzIFJlbW5hbnQiCittc2dzdHIgIkNvcHlyaWdodCBcXChjbyAyMDA1IFNjb3R0IEphbWVzIFJlbW5hbnQiCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLW1lcmdlY2hhbmdlbG9ncyIKK21zZ3N0ciAiZHBrZy1tZXJnZWNoYW5nZWxvZ3MiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6NAorbXNnaWQgImRwa2ctbWVyZ2VjaGFuZ2Vsb2dzIC0gMy13YXkgbWVyZ2Ugb2YgZGViaWFuL2NoYW5nZWxvZyBmaWxlcyIKK21zZ3N0ciAiZHBrZy1tZXJnZWNoYW5nZWxvZ3MgLSBmdXNpb24gdHJpcGxlIGRlIGZpY2hpZXJzIGRlYmlhbi9jaGFuZ2Vsb2ciCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6OAorbXNnaWQgIiIKKyJCPGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzPiBbSTxvcHRpb24+Li4uXSBJPG9sZD4gSTxuZXctYT4gSTxuZXctYj4gW0k8b3V0Pl0iCittc2dzdHIgIiIKKyJCPGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzPiBbSTxvcHRpb24+Li4uXSBJPGFuY2llbj4gSTxub3V2ZWF1LWE+IEk8bm91dmVhdS1iPiAiCisiW0k8c29ydGllPl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6MTUKK21zZ2lkICIiCisiVGhpcyBwcm9ncmFtIHdpbGwgdXNlIHRoZSAzIHByb3ZpZGVkIHZlcnNpb25zIG9mIHRoZSBEZWJpYW4gY2hhbmdlbG9nIHRvICIKKyJnZW5lcmF0ZSBhIG1lcmdlZCBjaGFuZ2Vsb2cgZmlsZS4gVGhlIHJlc3VsdGluZyBjaGFuZ2Vsb2cgaXMgc3RvcmVkIGluIHRoZSAiCisiZmlsZSBJPG91dD4gb3Igb3V0cHV0IHRvIHRoZSBzdGFuZGFyZCBvdXRwdXQgaWYgdGhhdCBwYXJhbWV0ZXIgaXMgbm90IGdpdmVuLiIKK21zZ3N0ciAiIgorIkNlIHByb2dyYW1tZSB1dGlsaXNlIGxlcyAzIHZlcnNpb25zIGZvdXJuaWVzIGRlIGpvdXJuYWwgZGVzIG1vZGlmaWNhdGlvbnMgIgorIijCq8KgY2hhbmdlbG9nwqDCuykgRGViaWFuIHBvdXIgY3LDqWVyIHVuIGZpY2hpZXIgZGUgam91cm5hbGlzYXRpb24gZnVzaW9ubsOpLiBMZSAiCisicsOpc3VsdGF0IGVzdCBwbGFjw6kgZGFucyBsZSBmaWNoaWVyIEk8c29ydGllPiBvdSBhZmZpY2jDqSBzdXIgbGEgc29ydGllICIKKyJzdGFuZGFyZCBzaSBjZSBwYXJhbcOodHJlIGVzdCBvbWlzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMToyNgorbXNnaWQgIiIKKyJFYWNoIGVudHJ5IGlzIGlkZW50aWZpZWQgYnkgaXRzIHZlcnNpb24gbnVtYmVyIGFuZCB0aGV5IGFyZSBhc3N1bWVkIHRvIGJlICIKKyJub3QgY29uZmxpY3RpbmcsIHRoZXkgYXJlIHNpbXBseSBtZXJnZWQgaW4gdGhlIHJpZ2h0IG9yZGVyIChieSBkZWNyZWFzaW5nICIKKyJ2ZXJzaW9uIG51bWJlcikuIFdoZW4gQjwtLW1lcmdlLXByZXJlbGVhc2VzPiBpcyB1c2VkLCB0aGUgcGFydCBvZiB0aGUgIgorInZlcnNpb24gbnVtYmVyIGFmdGVyIHRoZSBsYXN0IHRpbGRlIGlzIGRyb3BwZWQgc28gdGhhdCAxLjAtMX5leHAxIGFuZCAiCisiMS4wLTF+ZXhwNSBhcmUgY29uc2lkZXJlZCB0byBiZSB0aGUgc2FtZSBlbnRyeS4gV2hlbiB0aGUgc2FtZSB2ZXJzaW9uIGlzICIKKyJhdmFpbGFibGUgaW4gYm90aCBJPG5ldy1hPiBhbmQgSTxuZXctYj4sIGEgc3RhbmRhcmQgbGluZS1iYXNlZCAzLXdheSBtZXJnZSAiCisiaXMgYXR0ZW1wdGVkIChwcm92aWRlZCB0aGF0IHRoZSBtb2R1bGUgQWxnb3JpdGhtOjpNZXJnZSBpcyBhdmFpbGFibGUgXFxbZW1dICIKKyJpdCdzIHBhcnQgb2YgdGhlIHBhY2thZ2UgbGliYWxnb3JpdGhtLW1lcmdlLXBlcmwgXFxbZW1dIG90aGVyd2lzZSB5b3UgZ2V0IGEgIgorImdsb2JhbCBjb25mbGljdCBvbiB0aGUgY29udGVudCBvZiB0aGUgZW50cnkpLiIKK21zZ3N0ciAiIgorIkNoYXF1ZSBlbnRyw6llIGVzdCBpZGVudGlmacOpZSBwYXIgc29uIG51bcOpcm8gZGUgdmVyc2lvbi4gTGVzIGVudHLDqWVzIG5lIHNvbnQgIgorInBhcyBjZW5zw6llcyBlbnRyZXIgZW4gY29uZmxpdCwgbWFpcyBzb250IHNpbXBsZW1lbnQgZnVzaW9ubsOpZXMgZGFucyBsZSBib24gIgorIm9yZHJlIChwYXIgbnVtw6lybyBkZSB2ZXJzaW9uIGTDqWNyb2lzc2FudCkuIFNpIGwnb3B0aW9uIEI8LS1tZXJnZS0iCisicHJlcmVsZWFzZXM+IGVzdCB1dGlsaXPDqWUsIGxhIHBhcnRpZSBkZSBudW3DqXJvIGRlIHZlcnNpb24gcXVpIHN1aXQgbGUgIgorImRlcm5pZXIgY2FyYWN0w6hyZSB0aWxkZSBlc3Qgb21pc2XCoDvCoGxlcyB2ZXJzaW9ucyAxLjAtMX5leHAxIGV0IDEuMC0xZXhwNSAiCisic29udCBhaW5zaSBjb25zaWTDqXLDqWVzIGNvbW1lIGxhIG3Dqm1lIGVudHLDqWUuICBRdWFuZCBsYSBtw6ptZSB2ZXJzaW9uIGVzdCAiCisibWVudGlvbm7DqWUgZGFucyBJPG5vdXZlYXUtYT4gZXQgSTxub3V2ZWF1LWI+LCB1bmUgZnVzaW9uIHRyaXBsZSBsaWduZSDDoCAiCisibGlnbmUgIHN0YW5kYXJkIGVzdCB0ZW50w6llIChzb3VzIHLDqXNlcnZlIHF1ZSBsZSBtb2R1bGUgQWxnb3JpdGhtOjpNZXJnZSBzb2l0ICIKKyJkaXNwb25pYmxlIFxcW2VtXSBpbCBlc3QgZm91cm5pIHBhciBsZSBwYXF1ZXQgbGliYWxnb3JpdGhtLW1lcmdlLXBlcmwgIgorIlxcW2VtXS4gRGFucyBsZSBjYXMgY29udHJhaXJlLCB1biBjb25mbGl0IGdsb2JhbCBlc3QgY3LDqcOpIGRhbnMgbGUgY29udGV4dGUgIgorImRlIGNldHRlIGVudHLDqWUuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMToyOAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1tZXJnZS1wcmVyZWxlYXNlcz4sIEI8LW0+IgorbXNnc3RyICJCPC0tbWVyZ2UtcHJlcmVsZWFzZXM+LCBCPC1tPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTozMworbXNnaWQgIiIKKyJEcm9wIHRoZSBwYXJ0IGFmdGVyIHRoZSBsYXN0IHRpbGRlIGluIHRoZSB2ZXJzaW9uIG51bWJlciB3aGVuIGRvaW5nIHZlcnNpb24gIgorImNvbXBhcmlzb24gdG8gaWRlbnRpZnkgaWYgdHdvIGVudHJpZXMgYXJlIHN1cHBvc2VkIHRvIGJlIHRoZSBzYW1lIG9yIG5vdC4iCittc2dzdHIgIiIKKyJPbWV0IGxhIHZlcnNpb24gcXVpIHN1aXQgbGUgZGVybmllciBjYXJhY3TDqHJlIHRpbGRlIGRhbnMgbGVzIG51bcOpcm9zIGRlICIKKyJ2ZXJzaW9ucywgbG9ycyBkZSBsYSBjb21wYXJhaXNvbiBxdWkgcGVybWV0IGQnaWRlbnRpZmllciBzaSBjZXV4IGVudHLDqWVzICIKKyJzb250IGxlcyBtw6ptZXMgb3UgcGFzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTozOAorbXNnaWQgIiIKKyJUaGlzIGlzIHVzZWZ1bCB3aGVuIHlvdSBrZWVwIHVzaW5nIHRoZSBzYW1lIGNoYW5nZWxvZyBlbnRyeSBidXQgeW91IGluY3JlYXNlICIKKyJpdHMgdmVyc2lvbiBudW1iZXIgcmVndWxhcmx5LiBGb3IgaW5zdGFuY2UsIHlvdSBtaWdodCBoYXZlIDIuMy0xfmV4cDEsICIKKyIyLjMtMX5leHAyLCAuLi4gdW50aWwgdGhlIG9mZmljaWFsIHJlbGVhc2UgMi4zLTEgYW5kIHRoZXkgYXJlIGFsbCB0aGUgc2FtZSAiCisiY2hhbmdlbG9nIGVudHJ5IHRoYXQgaGFzIGV2b2x2ZWQgb3ZlciB0aW1lLiIKK21zZ3N0ciAiIgorIkNldHRlIG9wdGlvbiB1dGlsZSBsb3JzcXUnb24gY29uc2VydmUgbGEgbcOqbWUgZW50csOpZSBkZSBqb3VybmFsIG1haXMgcXVlIGxhICIKKyJ2ZXJzaW9uIGVzdCBpbmNyw6ltZW50w6llIHLDqWd1bGnDqHJlbWVudC4gUGFyIGV4ZW1wbGUsIGNlbGEgcGVybWV0IGQndXRpbGlzZXIgIgorImxlcyBudW3DqXJvcyAyLjMtMX5leHAxLCAyLjMtMX5leHAyLCBldGMuIGp1c3F1J8OgIHVuZSBwdWJsaWNhdGlvbiBvZmZpY2llbGxlICIKKyJudW3DqXJvdMOpZSAyLjMtMSwgdG91dGVzIGNlcyB2ZXJzaW9ucyDDqXRhbnQgY29uc2lkw6lyw6llcyBjb21tZSBsJ8Opdm9sdXRpb24gIgorImRhbnMgbGUgdGVtcHMgZGUgbGEgbcOqbWUgdmVyc2lvbi4iCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjQ1CisjLCBuby13cmFwCittc2dpZCAiTElNSVRBVElPTlMiCittc2dzdHIgIkxJTUlUQVRJT05TIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjUwCittc2dpZCAiIgorIkFueXRoaW5nIHRoYXQgaXMgbm90IHBhcnNlZCBieSBEcGtnOjpDaGFuZ2Vsb2cgaXMgbG9zdCBkdXJpbmcgdGhlIG1lcmdlLiAgIgorIlRoaXMgbWlnaHQgaW5jbHVkZSBzdHVmZiBsaWtlIHZpbSBtb2RlbGluZXMsIGNvbW1lbnRzIHdoaWNoIHdlcmUgbm90ICIKKyJzdXBwb3NlZCB0byBiZSB0aGVyZSwgZXRjLiIKK21zZ3N0ciAiIgorIlRvdXQgY2UgcXVpIG5lIHBldXQgcGFzIMOqdHJlIGFuYWx5c8OpIHBhciBEcGtnOjpDaGFuZ2Vsb2cgZXN0IHBlcmR1IGxvcnMgZGUgIgorImxhIGZ1c2lvbi4gQ2VsYSBwZXV0IGNvbXByZW5kcmUgZGVzIGxpZ25lcyBkZSBtb2RlIHZpbSwgZGVzIGNvbW1lbnRhaXJlcyBxdWkgIgorIm5lIHNvbnQgcGFzIGNlbnPDqXMgc2UgdHJvdXZlciBsw6AsIGV0Yy4iCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjUxCisjLCBuby13cmFwCittc2dpZCAiSU5URUdSQVRJT04gV0lUSCBHSVQiCittc2dzdHIgIklOVMOJR1JBVElPTiBBVkVDIEdJVCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTo1NgorbXNnaWQgIiIKKyJJZiB5b3Ugd2FudCB0byB1c2UgdGhpcyBwcm9ncmFtIHRvIG1lcmdlIERlYmlhbiBjaGFuZ2Vsb2cgZmlsZXMgaW4gYSBnaXQgIgorInJlcG9zaXRvcnksIHlvdSBoYXZlIGZpcnN0IHRvIHJlZ2lzdGVyIGEgbmV3IG1lcmdlIGRyaXZlciBpbiBCPC5naXQvY29uZmlnPiAiCisib3IgQjx+Ly5naXRjb25maWc+OiIKK21zZ3N0ciAiIgorIlNpIHZvdXMgc291aGFpdGV6IHV0aWxpc2VyIGNlIHByb2dyYW1tZSBwb3VyIGZ1c2lvbm5lciBkZXMgam91cm5hdXggZGUgIgorIm1vZGlmaWNhdGlvbnMgRGViaWFuIGRhbnMgdW4gZMOpcMO0dCBnaXQsIHZvdXMgZGV2ZXogdG91dCBkJ2Fib3JkIGVucmVnaXN0cmVyICIKKyJ1biBub3V2ZWF1IHBpbG90ZSBkZSBmdXNpb24gZGFuIEI8LmdpdC9jb25maWc+IG91IEI8fi8uZ2l0Y29uZmlnPsKgOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTo2MAorIywgbm8td3JhcAorbXNnaWQgIiIKKyIgW21lcmdlIFwiZHBrZy1tZXJnZWNoYW5nZWxvZ3NcIl1cbiIKKyIgICAgIG5hbWUgPSBkZWJpYW4vY2hhbmdlbG9nIG1lcmdlIGRyaXZlclxuIgorIiAgICAgZHJpdmVyID0gZHBrZy1tZXJnZWNoYW5nZWxvZ3MgLW0gJU8gJUEgJUIgJUFcbiIKK21zZ3N0ciAiIgorIiBbbWVyZ2UgXCJkcGtnLW1lcmdlY2hhbmdlbG9nc1wiXVxuIgorIiAgICAgbmFtZSA9IGRlYmlhbi9jaGFuZ2Vsb2cgbWVyZ2UgZHJpdmVyXG4iCisiICAgICBkcml2ZXIgPSBkcGtnLW1lcmdlY2hhbmdlbG9ncyAtbSAlTyAlQSAlQiAlQVxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjY0Cittc2dpZCAiIgorIlRoZW4geW91IGhhdmUgdG8gc2V0dXAgdGhlIG1lcmdlIGF0dHJpYnV0ZSBmb3IgdGhlIGRlYmlhbi9jaGFuZ2Vsb2cgZmlsZSAiCisiZWl0aGVyIGluIEI8LmdpdGF0dHJpYnV0ZXM+IGluIHRoZSByZXBvc2l0b3J5IGl0c2VsZiwgb3IgaW4gQjwuZ2l0L2luZm8vIgorImF0dHJpYnV0ZXM+OiIKK21zZ3N0ciAiIgorIlZvdXMgZGV2ZXogZW5zdWl0ZSBjb25maWd1cmVyIGwnYXR0cmlidXQgZGUgZnVzaW9uIHBvdXIgbGUgZmljaGllciBkZWJpYW4vIgorImNoYW5nZWxvZywgc29pdCBkYW5zIEI8LmdpdGF0dHJpYnV0ZXM+IGR1IGTDqXDDtHQgbHVpLW3Dqm1lLCBzb2l0IGRhbnMgQjwuZ2l0LyIKKyJpbmZvL2F0dHJpYnV0ZXM+wqA6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjY2CisjLCBuby13cmFwCittc2dpZCAiIGRlYmlhbi9jaGFuZ2Vsb2cgbWVyZ2U9ZHBrZy1tZXJnZWNoYW5nZWxvZ3NcbiIKK21zZ3N0ciAiIGRlYmlhbi9jaGFuZ2Vsb2cgbWVyZ2U9ZHBrZy1tZXJnZWNoYW5nZWxvZ3NcbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTo2OAorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDA5LTIwMTAgUmFwaGFcXFs6ZV1sIEhlcnR6b2ciCittc2dzdHIgIkNvcHlyaWdodCBcXChjbyAyMDA5LTIwMTAgUmFwaGFcXFs6ZV1sIEhlcnR6b2ciCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLW5hbWUuMTo2CisjLCBuby13cmFwCittc2dpZCAiZHBrZy1uYW1lIgorbXNnc3RyICJkcGtnLW5hbWUiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbmFtZS4xOjkKK21zZ2lkICJkcGtnLW5hbWUgLSByZW5hbWUgRGViaWFuIHBhY2thZ2VzIHRvIGZ1bGwgcGFja2FnZSBuYW1lcyIKK21zZ3N0ciAiZHBrZy1uYW1lIC0gcmVkb25uZSBhdXggcGFxdWV0cyBEZWJpYW4gbGV1ciBub20gY29tcGxldCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6MTUKKyMsIGZ1enp5CisjfCBtc2dpZCAiQjxkcGtnLW5hbWU+IFtJPG9wdGlvbnM+XSBbQjwtLT5dIEk8ZmlsZXM+IgorbXNnaWQgIkI8ZHBrZy1uYW1lPiBbSTxvcHRpb24+Li4uXSBbQjwtLT5dIEk8ZmlsZT4uLi4iCittc2dzdHIgIkI8ZHBrZy1uYW1lPiBbSTxvcHRpb25zPl0gW0I8LS0+XSBJPGZpY2hpZXJzPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6MjkKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlRoaXMgbWFudWFsIHBhZ2UgZG9jdW1lbnRzIHRoZSBCPGRwa2ctbmFtZT4gcHJvZ3JhbSB3aGljaCBwcm92aWRlcyBhbiAiCisjfCAiZWFzeSB3YXkgdG8gcmVuYW1lIEI8RGViaWFuPiBwYWNrYWdlcyBpbnRvIHRoZWlyIGZ1bGwgcGFja2FnZSBuYW1lcy4gQSAiCisjfCAiZnVsbCBwYWNrYWdlIG5hbWUgY29uc2lzdHMgb2YgIgorI3wgIkk8RTxsdD5wYWNrYWdlRTxndD5fRTxsdD52ZXJzaW9uRTxndD5fRTxsdD5hcmNoaXRlY3R1cmVFPGd0Pi4iCisjfCAiRTxsdD5wYWNrYWdlX3R5cGVFPGd0Pj4gYXMgc3BlY2lmaWVkIGluIHRoZSBjb250cm9sIGZpbGUgb2YgdGhlIHBhY2thZ2UuICIKKyN8ICJUaGUgSTxFPGx0PnZlcnNpb25FPGd0Pj4gcGFydCBvZiB0aGUgZmlsZW5hbWUgY29uc2lzdHMgb2YgdGhlIHVwc3RyZWFtICIKKyN8ICJ2ZXJzaW9uIGluZm9ybWF0aW9uIG9wdGlvbmFsbHkgZm9sbG93ZWQgYnkgYSBoeXBoZW4gYW5kIHRoZSByZXZpc2lvbiAiCisjfCAiaW5mb3JtYXRpb24uIFRoZSBJPEU8bHQ+cGFja2FnZV90eXBlRTxndD4+IHBhcnQgY29tZXMgZnJvbSB0aGF0IGZpZWxkIGlmICIKKyN8ICJwcmVzZW50IG9yIGZhbGxiYWNrcyB0byBCPGRlYj4uIgorbXNnaWQgIiIKKyJUaGlzIG1hbnVhbCBwYWdlIGRvY3VtZW50cyB0aGUgQjxkcGtnLW5hbWU+IHByb2dyYW0gd2hpY2ggcHJvdmlkZXMgYW4gZWFzeSAiCisid2F5IHRvIHJlbmFtZSBCPERlYmlhbj4gcGFja2FnZXMgaW50byB0aGVpciBmdWxsIHBhY2thZ2UgbmFtZXMuIEEgZnVsbCAiCisicGFja2FnZSBuYW1lIGNvbnNpc3RzIG9mIEk8cGFja2FnZT5CPF8+STx2ZXJzaW9uPkI8Xz5JPGFyY2hpdGVjdHVyZT5CPC4iCisiPkk8cGFja2FnZS10eXBlPiBhcyBzcGVjaWZpZWQgaW4gdGhlIGNvbnRyb2wgZmlsZSBvZiB0aGUgcGFja2FnZS4gVGhlICIKKyJJPHZlcnNpb24+IHBhcnQgb2YgdGhlIGZpbGVuYW1lIGNvbnNpc3RzIG9mIHRoZSB1cHN0cmVhbSB2ZXJzaW9uIGluZm9ybWF0aW9uICIKKyJvcHRpb25hbGx5IGZvbGxvd2VkIGJ5IGEgaHlwaGVuIGFuZCB0aGUgcmV2aXNpb24gaW5mb3JtYXRpb24uIFRoZSBJPHBhY2thZ2UtIgorInR5cGU+IHBhcnQgY29tZXMgZnJvbSB0aGF0IGZpZWxkIGlmIHByZXNlbnQgb3IgZmFsbGJhY2tzIHRvIEI8ZGViPi4iCittc2dzdHIgIiIKKyJDZXR0ZSBwYWdlIGRlIG1hbnVlbCBkb2N1bWVudGUgbGUgcHJvZ3JhbW1lIEI8ZHBrZy1uYW1lPiBxdWkgZm91cm5pdCB1bmUgIgorImZhw6dvbiBzaW1wbGUgZGUgcmVkb25uZXIgYXV4IHBhcXVldHMgQjxEZWJpYW4+IGxldXIgbm9tIGNvbXBsZXQuIENlIG5vbSAiCisiY29uc2lzdGUgZW4gdW5lIGNoYcOubmUgIgorIsKrwqBJPEU8bHQ+cGFxdWV0RTxndD5fRTxsdD52ZXJzaW9uRTxndD5fRTxsdD5hcmNoaXRlY3R1cmVFPGd0PnR5cGVfZGVfcGFxdWV0RTxndD4+wqDCuyAiCisidGVsbGUgcXUnZWxsZSBlc3QgaW5kaXF1w6llIGRhbnMgbGUgZmljaGllciDCq8KgY29udHJvbMKgwrsgZHUgcGFxdWV0LiBMYSBwYXJ0aWUgIgorIkk8RTxsdD52ZXJzaW9uRTxndD4+IGR1IG5vbSBlc3QgY29tcG9zw6llIGQnaW5mb3JtYXRpb25zIHN1ciBsYSB2ZXJzaW9uICIKKyJvcmlnaW5lbGxlIHF1aSBwZXV2ZW50IG91IG5vbiDDqnRyZSBzdWl2aWVzIGQndW4gdHJhaXQgZCd1bmlvbiBldCAiCisiZCdpbmZvcm1hdGlvbnMgc3VyIGxhIHLDqXZpc2lvbi4gTGEgcGFydGllIEk8RTxsdD50eXBlX2RlX3BhcXVldEU8Z3Q+PiAiCisicHJvdmllbnQgZGUgY2UgY2hhbXAgcydpbCBleGlzdGUuIExhIHZhbGV1ciBwYXIgZMOpZmF1bHQgw6l0YW50IEI8ZGViPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLW5hbWUuMTozMQorIywgbm8td3JhcAorbXNnaWQgIkI8LWE+LCBCPC0tbm8tYXJjaGl0ZWN0dXJlPiIKK21zZ3N0ciAiQjwtYT4sIEI8LS1uby1hcmNoaXRlY3R1cmU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW5hbWUuMTozNAorbXNnaWQgIlRoZSBkZXN0aW5hdGlvbiBmaWxlbmFtZSB3aWxsIG5vdCBoYXZlIHRoZSBhcmNoaXRlY3R1cmUgaW5mb3JtYXRpb24uIgorbXNnc3RyICJMZSBub20gZHUgZmljaGllciBuJ2F1cmEgcGFzIGwnaW5mb3JtYXRpb24gc3VyIGwnYXJjaGl0ZWN0dXJlLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctbmFtZS4xOjM0CisjLCBuby13cmFwCittc2dpZCAiQjwtaz4sIEI8LS1zeW1saW5rPiIKK21zZ3N0ciAiQjwtaz4sIEI8LS1zeW1saW5rPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6MzcKK21zZ2lkICJDcmVhdGUgYSBzeW1saW5rLCBpbnN0ZWFkIG9mIG1vdmluZy4iCittc2dzdHIgIkZhaXJlIHVuIGxpZW4gc3ltYm9saXF1ZSBwbHV0w7R0IHF1J3VuZSBjcsOpYXRpb24gZGUgZmljaGllci4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLW5hbWUuMTozNworIywgbm8td3JhcAorbXNnaWQgIkI8LW8+LCBCPC0tb3ZlcndyaXRlPiIKK21zZ3N0ciAiQjwtbz4sIEI8LS1vdmVyd3JpdGU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW5hbWUuMTo0MQorbXNnaWQgIiIKKyJFeGlzdGluZyBmaWxlcyB3aWxsIGJlIG92ZXJ3cml0dGVuIGlmIHRoZXkgaGF2ZSB0aGUgc2FtZSBuYW1lIGFzIHRoZSAiCisiZGVzdGluYXRpb24gZmlsZW5hbWUuIgorbXNnc3RyICIiCisiUmVtcGxhY2UgZGVzIGZpY2hpZXJzIGV4aXN0YW50cyBzJ2lscyBvbnQgbGUgbcOqbWUgbm9tIHF1ZSBsZSBmaWNoaWVyIGRlICIKKyJkZXN0aW5hdGlvbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLW5hbWUuMTo0MQorIywgbm8td3JhcAorbXNnaWQgIkI8LXM+LCBCPC0tc3ViZGlyPiBbSTxkaXI+XSIKK21zZ3N0ciAiQjwtcz4sIEI8LS1zdWJkaXI+IFtJPHJlcD5dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW5hbWUuMTo1MworIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiRmlsZXMgd2lsbCBiZSBtb3ZlZCBpbnRvIGEgc3ViZGlyZWN0b3J5LiBJZiB0aGUgZGlyZWN0b3J5IGdpdmVuIGFzICIKKyN8ICJhcmd1bWVudCBleGlzdHMgdGhlIGZpbGVzIHdpbGwgYmUgbW92ZWQgaW50byB0aGF0IGRpcmVjdG9yeSBvdGhlcndpc2UgdGhlICIKKyN8ICJuYW1lIG9mIHRoZSB0YXJnZXQgZGlyZWN0b3J5IGlzIGV4dHJhY3RlZCBmcm9tIHRoZSBzZWN0aW9uIGZpZWxkIGluIHRoZSAiCisjfCAiY29udHJvbCBwYXJ0IG9mIHRoZSBwYWNrYWdlLiBUaGUgdGFyZ2V0IGRpcmVjdG9yeSB3aWxsIGJlIGB1bnN0YWJsZS8iCisjfCAiYmluYXJ5LUU8bHQ+YXJjaGl0ZWN0dXJlRTxndD4vRTxsdD5zZWN0aW9uRTxndD4nLiBJZiB0aGUgc2VjdGlvbiBpcyBub3QgIgorI3wgImZvdW5kIGluIHRoZSBjb250cm9sLCB0aGVuIGBuby1zZWN0aW9uJyBpcyBhc3N1bWVkLCBhbmQgaW4gdGhpcyBjYXNlLCBhcyAiCisjfCAid2VsbCBhcyBmb3Igc2VjdGlvbnMgYG5vbi1mcmVlJyBhbmQgYGNvbnRyaWInIHRoZSB0YXJnZXQgZGlyZWN0b3J5IGlzICIKKyN8ICJgRTxsdD5zZWN0aW9uRTxndD4vYmluYXJ5LUU8bHQ+YXJjaGl0ZWN0dXJlRTxndD4nLiBUaGUgc2VjdGlvbiBmaWVsZCAiCisjfCAiaXNuJ3QgcmVxdWlyZWQgc28gYSBsb3Qgb2YgcGFja2FnZXMgd2lsbCBmaW5kIHRoZWlyIHdheSB0byB0aGUgYG5vLSIKKyN8ICJzZWN0aW9uJyBhcmVhLiBVc2UgdGhpcyBvcHRpb24gd2l0aCBjYXJlLCBpdCdzIG1lc3N5LiIKK21zZ2lkICIiCisiRmlsZXMgd2lsbCBiZSBtb3ZlZCBpbnRvIGEgc3ViZGlyZWN0b3J5LiBJZiB0aGUgZGlyZWN0b3J5IGdpdmVuIGFzIGFyZ3VtZW50ICIKKyJleGlzdHMgdGhlIGZpbGVzIHdpbGwgYmUgbW92ZWQgaW50byB0aGF0IGRpcmVjdG9yeSBvdGhlcndpc2UgdGhlIG5hbWUgb2YgdGhlICIKKyJ0YXJnZXQgZGlyZWN0b3J5IGlzIGV4dHJhY3RlZCBmcm9tIHRoZSBzZWN0aW9uIGZpZWxkIGluIHRoZSBjb250cm9sIHBhcnQgb2YgIgorInRoZSBwYWNrYWdlLiBUaGUgdGFyZ2V0IGRpcmVjdG9yeSB3aWxsIGJlIGB1bnN0YWJsZS9iaW5hcnktSTxhcmNoaXRlY3R1cmU+LyIKKyJJPHNlY3Rpb24+Jy4gSWYgdGhlIHNlY3Rpb24gaXMgbm90IGZvdW5kIGluIHRoZSBjb250cm9sLCB0aGVuIGBuby1zZWN0aW9uJyAiCisiaXMgYXNzdW1lZCwgYW5kIGluIHRoaXMgY2FzZSwgYXMgd2VsbCBhcyBmb3Igc2VjdGlvbnMgYG5vbi1mcmVlJyBhbmQgIgorImBjb250cmliJyB0aGUgdGFyZ2V0IGRpcmVjdG9yeSBpcyBgSTxzZWN0aW9uPi9iaW5hcnktSTxhcmNoaXRlY3R1cmU+Jy4gVGhlICIKKyJzZWN0aW9uIGZpZWxkIGlzbid0IHJlcXVpcmVkIHNvIGEgbG90IG9mIHBhY2thZ2VzIHdpbGwgZmluZCB0aGVpciB3YXkgdG8gdGhlICIKKyJgbm8tc2VjdGlvbicgYXJlYS4gVXNlIHRoaXMgb3B0aW9uIHdpdGggY2FyZSwgaXQncyBtZXNzeS4iCittc2dzdHIgIiIKKyJNZXQgbGVzIGZpY2hpZXJzIGRhbnMgcmVwLiBTaSBsZSByw6lwZXJ0b2lyZSBkb25uw6kgZW4gYXJndW1lbnQgZXhpc3RlLCBsZXMgIgorImZpY2hpZXJzIHNvbnQgZMOpcGxhY8OpcyBkYW5zIGNlIHLDqXBlcnRvaXJlwqA7IHNpbm9uIGxlIHLDqXBlcnRvaXJlIGNpYmxlLCAiCisiZXh0cmFpdCBkdSBjaGFtcCDCq8Kgc2VjdGlvbsKgwrsgcXVlIGNvbnRpZW50IGxhIHBhcnRpZSBkZSBjb250csO0bGUgZHUgcGFxdWV0LCAiCisic2VyYSDCq8KgdW5zdGFibGUvYmluYXJ5LUU8bHQ+YXJjaGl0ZWN0dXJlRTxndD4vRTxsdD5zZWN0aW9uRTxndD7CoMK7LiBRdWFuZCBsYSAiCisic2VjdGlvbiBlc3QgwqvCoG5vbi1mcmVlwqDCuyBvdSDCq8KgY29udHJpYsKgwrssIG91IGJpZW4gcXVhbmQgYXVjdW5lIGluZm9ybWF0aW9uICIKKyJzdXIgbGEgc2VjdGlvbiBuJ2VzdCB0cm91dsOpZSBkYW5zIGxlIGZpY2hpZXIgwqvCoGNvbnRyb2zCoMK7LCBsZSByw6lwZXJ0b2lyZSAiCisiY2libGUgZXN0IMKrwqBFPGx0PnNlY3Rpb25FPGd0Pi9iaW5hcnktRTxsdD5hcmNoaXRlY3R1cmVFPGd0PsKgwrsuIExlIGNoYW1wICIKKyLCq8Kgc2VjdGlvbsKgwrsgZXN0IGZhY3VsdGF0aWbCoDsgYXVzc2kgYmVhdWNvdXAgZGUgcGFxdWV0cyBzb250IGRhbnMgbGEgem9uZSAiCisiwqvCoG5vLXNlY3Rpb27CoMK7LiBVdGlsaXNleiBjZXR0ZSBvcHRpb24gYXZlYyBzb2luwqA6IGVsbGUgZXN0IGNvbXBsaXF1w6llLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctbmFtZS4xOjUzCisjLCBuby13cmFwCittc2dpZCAiQjwtYz4sIEI8LS1jcmVhdGUtZGlyPiIKK21zZ3N0ciAiQjwtYz4sIEI8LS1jcmVhdGUtZGlyPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6NTgKK21zZ2lkICIiCisiVGhpcyBvcHRpb24gY2FuIHVzZWQgdG9nZXRoZXIgd2l0aCB0aGUgLXMgb3B0aW9uLiBJZiBhIHRhcmdldCBkaXJlY3RvcnkgIgorImlzbid0IGZvdW5kIGl0IHdpbGwgYmUgY3JlYXRlZCBhdXRvbWF0aWNhbGx5LiAgQjxVc2UgdGhpcyBvcHRpb24gd2l0aCBjYXJlLj4iCittc2dzdHIgIiIKKyJPbiBwZXV0IHV0aWxpc2VyIGNldHRlIG9wdGlvbiBhdmVjIGwnb3B0aW9uIC1zLiBRdWFuZCB1biByw6lwZXJ0b2lyZSBjaWJsZSAiCisibidlc3QgcGFzIHRyb3V2w6ksIGlsIGVzdCBjcsOpw6kgYXV0b21hdGlxdWVtZW50LiAgQjxVdGlsaXNleiBjZXR0ZSBvcHRpb24gYXZlYyAiCisic29pbi4+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1uYW1lLjE6NjEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC12PiwgQjwtLXZlcnNpb24+IgorbXNnc3RyICJCPC12PiwgQjwtLXZlcnNpb24+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1uYW1lLjE6NjYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGRwa2ctbmFtZSBiYXItZm9vLmRlYj4iCittc2dzdHIgIkI8ZHBrZy1uYW1lIGJhci1mb28uZGViPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6NzEKK21zZ2lkICIiCisiVGhlIGZpbGUgYGJhci1mb28uZGViJyB3aWxsIGJlIHJlbmFtZWQgdG8gYmFyLWZvb18xLjAtMl9pMzg2LmRlYiBvciAiCisic29tZXRoaW5nIHNpbWlsYXIgKGRlcGVuZGluZyBvbiB3aGF0ZXZlciBpbmZvcm1hdGlvbiBpcyBpbiB0aGUgY29udHJvbCBwYXJ0ICIKKyJvZiBgYmFyLWZvby5kZWInKS4iCittc2dzdHIgIiIKKyJMZSBub20gZHUgZmljaGllciDCq8KgYmFyLWZvby5kZWLCoMK7IGRldmllbnQgwqvCoGJhci1mb29fMS4wLTJfaTM4Ni5kZWLCoMK7IG91ICIKKyJxdWVscXVlIGNob3NlIGRlIHNpbWlsYWlyZSBzdWl2YW50IGxlcyByZW5zZWlnbmVtZW50cyBxdWUgY29udGllbnQgbGEgcGFydGllICIKKyJkZSBjb250csO0bGUgZGUgwqvCoGJhci1mb28uZGViwqDCuy4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLW5hbWUuMTo3MQorIywgbm8td3JhcAorbXNnaWQgIkI8ZmluZCAvcm9vdC9kZWJpYW4vIC1uYW1lIFxcKGFxKi5kZWJcXChhcSB8IHhhcmdzIC1uIDEgZHBrZy1uYW1lIC1hPiIKK21zZ3N0ciAiQjxmaW5kIC9yb290L2RlYmlhbi8gLW5hbWUgXFwoYXEqLmRlYlxcKGFxIHwgeGFyZ3MgLW4gMSBkcGtnLW5hbWUgLWE+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW5hbWUuMTo3NgorbXNnaWQgIiIKKyJBbGwgZmlsZXMgd2l0aCB0aGUgZXh0ZW5zaW9uIGBkZWInIGluIHRoZSBkaXJlY3RvcnkgL3Jvb3QvZGViaWFuIGFuZCBpdHMgIgorInN1YmRpcmVjdG9yeSdzIHdpbGwgYmUgcmVuYW1lZCBieSBkcGtnLW5hbWUgaWYgcmVxdWlyZWQgaW50byBuYW1lcyB3aXRoIG5vICIKKyJhcmNoaXRlY3R1cmUgaW5mb3JtYXRpb24uIgorbXNnc3RyICIiCisiQ2V0dGUgY29tbWFuZGUgcmVkb25uZSBsZXVyIG5vbSBjb21wbGV0IMOgIHRvdXMgbGVzIGZpY2hpZXJzIHF1aSBzZSB0cm91dmVudCAiCisiZGFucyBsZSByw6lwZXJ0b2lyZSAvcm9vdC9kZWJpYW4gZXQgc2VzIHNvdXMtcsOpcGVydG9pcmVzIGV0IHF1aSBwb3Nzw6hkZW50IHVuZSAiCisiZXh0ZW5zaW9uIMKrwqBkZWLCoMK7LCBtYWlzIHN1cHByaW1lIGwnaW5mb3JtYXRpb24gc3VyIGwnYXJjaGl0ZWN0dXJlLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctbmFtZS4xOjc2CisjLCBuby13cmFwCittc2dpZCAiQjxmaW5kIC1uYW1lIFxcKGFxKi5kZWJcXChhcSB8IHhhcmdzIC1uIDEgZHBrZy1uYW1lIC1hIC1vIC1zIC1jPiIKK21zZ3N0ciAiQjxmaW5kIC1uYW1lIFxcKGFxKi5kZWJcXChhcSB8IHhhcmdzIC1uIDEgZHBrZy1uYW1lIC1hIC1vIC1zIC1jPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6ODIKK21zZ2lkICIiCisiQjxEb24ndCBkbyB0aGlzLj4gWW91ciBhcmNoaXZlIHdpbGwgYmUgbWVzc2VkIHVwIGNvbXBsZXRlbHkgYmVjYXVzZSBhIGxvdCBvZiAiCisicGFja2FnZXMgZG9uJ3QgY29tZSB3aXRoIHNlY3Rpb24gaW5mb3JtYXRpb24uICBCPERvbid0IGRvIHRoaXMuPiIKK21zZ3N0ciAiIgorIkI8TmUgZmFpdGVzIHBhcyDDp2HCoCE+IEwnYXJjaGl2ZSBzZXJhIGNvbXBsw6h0ZW1lbnQgZ8OiY2jDqWUgcGFyIGRlcyBwYXF1ZXRzIHF1aSAiCisibmUgcG9zc8OoZGVudCBwYXMgZCdpbmZvcm1hdGlvbnMgc3VyIGxhIHNlY3Rpb24uIEI8TmUgZmFpdGVzIHBhcyDDp2HCoCE+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1uYW1lLjE6ODIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGRwa2cgLS1idWlsZCBkZWJpYW4tdG1wICYmIGRwa2ctbmFtZSAtbyAtcyAuLiBkZWJpYW4tdG1wLmRlYj4iCittc2dzdHIgIkI8ZHBrZyAtLWJ1aWxkIGRlYmlhbi10bXAgJiYgZHBrZy1uYW1lIC1vIC1zIC4uIGRlYmlhbi10bXAuZGViPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6ODUKK21zZ2lkICJUaGlzIGNhbiBiZSB1c2VkIHdoZW4gYnVpbGRpbmcgbmV3IHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorIk9uIHBldXQgc2Ugc2VydmlyIGRlIGNldHRlIGNvbW1hbmRlIGxvcnMgZGUgbGEgY29uc3RydWN0aW9uIGQndW4gbm91dmVhdSAiCisicGFxdWV0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6OTUKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlNvbWUgcGFja2FnZXMgZG9uJ3QgZm9sbG93IHRoZSBuYW1lIHN0cnVjdHVyZSAiCisjfCAiRTxsdD5wYWNrYWdlRTxndD5fRTxsdD52ZXJzaW9uRTxndD5fRTxsdD5hcmNoaXRlY3R1cmVFPGd0Pi5kZWIuIFBhY2thZ2VzICIKKyN8ICJyZW5hbWVkIGJ5IGRwa2ctbmFtZSB3aWxsIGZvbGxvdyB0aGlzIHN0cnVjdHVyZS4gR2VuZXJhbGx5IHRoaXMgd2lsbCBoYXZlICIKKyN8ICJubyBpbXBhY3Qgb24gaG93IHBhY2thZ2VzIGFyZSBpbnN0YWxsZWQgYnkgQjxkc2VsZWN0PigxKS8gQjxkcGtnPigxKSwgYnV0ICIKKyN8ICJvdGhlciBpbnN0YWxsYXRpb24gdG9vbHMgbWlnaHQgZGVwZW5kIG9uIHRoaXMgbmFtaW5nIHN0cnVjdHVyZS4iCittc2dpZCAiIgorIlNvbWUgcGFja2FnZXMgZG9uJ3QgZm9sbG93IHRoZSBuYW1lIHN0cnVjdHVyZSAiCisiSTxwYWNrYWdlPkI8Xz5JPHZlcnNpb24+QjxfPkk8YXJjaGl0ZWN0dXJlPkI8LmRlYj4uICBQYWNrYWdlcyByZW5hbWVkIGJ5ICIKKyJkcGtnLW5hbWUgd2lsbCBmb2xsb3cgdGhpcyBzdHJ1Y3R1cmUuIEdlbmVyYWxseSB0aGlzIHdpbGwgaGF2ZSBubyBpbXBhY3Qgb24gIgorImhvdyBwYWNrYWdlcyBhcmUgaW5zdGFsbGVkIGJ5IEI8ZHNlbGVjdD4oMSkvQjxkcGtnPigxKSwgYnV0IG90aGVyICIKKyJpbnN0YWxsYXRpb24gdG9vbHMgbWlnaHQgZGVwZW5kIG9uIHRoaXMgbmFtaW5nIHN0cnVjdHVyZS4iCittc2dzdHIgIiIKKyJDZXJ0YWlucyBwYXF1ZXRzIG5lIHJlc3BlY3RlbnQgcGFzIGwnb3JnYW5pc2F0aW9uICIKKyJFPGx0PnBhcXVldEU8Z3Q+X0U8bHQ+dmVyc2lvbkU8Z3Q+X0U8bHQ+YXJjaGl0ZWN0dXJlRTxndD4uZGViLiBMZXMgcGFxdWV0cyAiCisidHJhaXTDqXMgcGFyIGRwa2ctbmFtZSBsYSByZXNwZWN0ZS4gQ2VsYSBuJ2EgcGFzIGRlIGNvbnPDqXF1ZW5jZSBzdXIgbGEgZmHDp29uICIKKyJkb250IEI8ZHNlbGVjdD4oMSkgb3UgQjxkcGtnPigxKSBpbnN0YWxsZSBsZXMgcGFxdWV0cywgbWFpcyBpbCBzZSBwZXV0IHF1ZSAiCisiZCdhdXRyZXMgc3lzdMOobWVzIGQnaW5zdGFsbGF0aW9uIGFpZW50IGJlc29pbiBkZSBjZXR0ZSBvcmdhbmlzYXRpb24uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW5hbWUuMToxMDMKK21zZ2lkICIiCisiQjxkZWI+KDUpLCBCPGRlYi1jb250cm9sPig1KSwgQjxkcGtnPigxKSwgQjxkcGtnLWRlYj4oMSksIEI8ZmluZD4oMSksICIKKyJCPHhhcmdzPigxKS4iCittc2dzdHIgIiIKKyJCPGRlYj4oNSksIEI8ZGViLWNvbnRyb2w+KDUpLCBCPGRwa2c+KDEpLCBCPGRwa2ctZGViPigxKSwgQjxmaW5kPigxKSwgIgorIkI8eGFyZ3M+KDEpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6MTA2Cittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDE5OTUsMTk5NiBFcmljayBCcmFuZGVyaG9yc3QiCittc2dzdHIgIkNvcHlyaWdodCBcXChjbyAxOTk1LDE5OTYgRXJpY2sgQnJhbmRlcmhvcnN0IgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLXBhcnNlY2hhbmdlbG9nIgorbXNnc3RyICJkcGtnLXBhcnNlY2hhbmdlbG9nIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6NAorbXNnaWQgImRwa2ctcGFyc2VjaGFuZ2Vsb2cgLSBwYXJzZSBEZWJpYW4gY2hhbmdlbG9nIGZpbGVzIgorbXNnc3RyICJkcGtnLXBhcnNlY2hhbmdlbG9nIC0gQW5hbHlzZXIgdW4gZmljaGllciBjaGFuZ2Vsb2cgRGViaWFuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjgKKyMsIGZ1enp5CisjfCBtc2dpZCAiQjxkcGtnLXBhcnNlY2hhbmdlbG9nPiBbSTxvcHRpb25zPl0iCittc2dpZCAiQjxkcGtnLXBhcnNlY2hhbmdlbG9nPiBbSTxvcHRpb24+Li4uXSIKK21zZ3N0ciAiQjxkcGtnLXBhcnNlY2hhbmdlbG9nPiBbSTxvcHRpb25zPl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxNAorbXNnaWQgIiIKKyJCPGRwa2ctcGFyc2VjaGFuZ2Vsb2c+IHJlYWRzIGFuZCBwYXJzZXMgdGhlIGNoYW5nZWxvZyBvZiBhbiB1bnBhY2tlZCBEZWJpYW4gIgorInNvdXJjZSB0cmVlIGFuZCBvdXRwdXRzIHRoZSBpbmZvcm1hdGlvbiBpbiBpdCB0byBzdGFuZGFyZCBvdXRwdXQgaW4gYSAiCisibWFjaGluZS1yZWFkYWJsZSBmb3JtLiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1wYXJzZWNoYW5nZWxvZz4gbGl0IGV0IGZhaXQgbCdhbmFseXNlIGR1IGZpY2hpZXIgwqvCoGNoYW5nZWxvZ8KgwrsgZCd1bmUgIgorImFyYm9yZXNjZW5jZSBzb3VyY2UgZMOpcGFxdWV0w6llIGV0IGFmZmljaGUgbGVzIGluZm9ybWF0aW9ucyBxdSdpbCBjb250aWVudCAiCisic3VyIGxhIHNvcnRpZSBzdGFuZGFyZCBldCBzb3VzIHVuZSBmb3JtZSBsaXNpYmxlIHBhciBsYSBtYWNoaW5lLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToyNgorIywgbm8td3JhcAorbXNnaWQgIkI8LUw+STxsaWJkaXI+IgorbXNnc3RyICJCPC1MPkk8cmVwX2xpYj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTozMworbXNnaWQgIiIKKyJTcGVjaWZ5IGFuIGFkZGl0aW9uYWwgZGlyZWN0b3J5IHRvIHNlYXJjaCBmb3IgcGFyc2VyIHNjcmlwdHMuICBUaGlzICIKKyJkaXJlY3RvcnkgaXMgc2VhcmNoZWQgYmVmb3JlIHRoZSBkZWZhdWx0IGRpcmVjdG9yaWVzIHdoaWNoIGFyZSBjdXJyZW50bHkgQjwvIgorInVzci9sb2NhbC9saWIvZHBrZy9wYXJzZWNoYW5nZWxvZz4gYW5kIEI8L3Vzci9saWIvZHBrZy9wYXJzZWNoYW5nZWxvZz4uIgorbXNnc3RyICIiCisiU3DDqWNpZmllIHVuIHLDqXBlcnRvaXJlIHN1cHBsw6ltZW50YWlyZSBwb3VyIGxhIHJlY2hlcmNoZSBkZSBzY3JpcHRzICIKKyJkJ2FuYWx5c2UuIENlIHLDqXBlcnRvaXJlIGVzdCBleGFtaW7DqSBhdmFudCBsZXMgcsOpcGVydG9pcmVzIHBhciBkw6lmYXV0IHF1aSAiCisic29udCBCPC91c3IvbG9jYWwvbGliL2Rwa2cvcGFyc2VjaGFuZ2Vsb2c+IGV0IEI8L3Vzci9saWIvZHBrZy8iCisicGFyc2VjaGFuZ2Vsb2c+LiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTozOQorIywgbm8td3JhcAorbXNnaWQgIlBhcnNlciBPcHRpb25zIgorbXNnc3RyICJPcHRpb25zIGRlIGZpbHRyYWdlIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6NDQKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBvcHRpb25zIGNhbiBiZSB1c2VkIHRvIGluZmx1ZW5jZSB0aGUgb3V0cHV0IG9mIHRoZSBjaGFuZ2Vsb2cgIgorInBhcnNlciwgZS5nLiB0aGUgcmFuZ2Ugb2YgZW50cmllcyBvciB0aGUgZm9ybWF0IG9mIHRoZSBvdXRwdXQuIFRoZXkgbmVlZCB0byAiCisiYmUgc3VwcG9ydGVkIGJ5IHRoZSBwYXJzZXIgc2NyaXB0IGluIHF1ZXN0aW9uLiBTZWUgYWxzbyBCPENBVkVBVFM+LiIKK21zZ3N0ciAiIgorIkxlcyBvcHRpb25zIHN1aXZhbnRlcyBwZXV2ZW50IMOqdHJlIHV0aWxpc8OpZXMgcG91ciBpbmZsdWVuY2VyIGxhIHNvcnRpZSBkZSAiCisibCdhbmFseXNldXIgZHUgam91cm5hbCBkZXMgbW9kaWZpY2F0aW9ucyAowqvCoGNoYW5nZWxvZ8KgwrspLCBwYXIgZXhlbXBsZSBsYSAiCisiZ2FtbWUgZCdlbnRyw6llcyBvdSBsZSBmb3JtYXQgZGUgc29ydGllLiBJbHMgZG9pdmVudCDDqnRyZSBnw6lyw6lzIHBhciBsZSBzY3JpcHQgIgorImQnYW5hbHlzZSBlbiBxdWVzdGlvbi4gVm9pciBhdXNzaSBCPENBVkVBVFM+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo0NAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1mb3JtYXQ+STwgb3V0cHV0Zm9ybWF0PiIKK21zZ3N0ciAiQjwtLWZvcm1hdD5JPCBvdXRwdXRmb3JtYXQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6NTMKK21zZ2lkICIiCisiU2V0IHRoZSBvdXRwdXQgZm9ybWF0LiBDdXJyZW50bHkgc3VwcG9ydGVkIHZhbHVlcyBhcmUgSTxkcGtnPiBhbmQgIgorIkk8cmZjODIyPi4gIEk8ZHBrZz4gaXMgdGhlIGNsYXNzaWMgb3V0cHV0IGZvcm1hdCAoZnJvbSBiZWZvcmUgdGhpcyBvcHRpb24gIgorImV4aXN0ZWQpIGFuZCB0aGUgZGVmYXVsdC4gSXQgY29uc2lzdHMgb2Ygb25lIHBhcmFncmFwaCBpbiBEZWJpYW4gY29udHJvbCAiCisiZm9ybWF0IChzZWUgQjxkZWItY29udHJvbD4oNSkpLiBJZiBtb3JlIHRoYW4gb25lIGVudHJ5IGlzIHJlcXVlc3RlZCwgdGhlbiAiCisibW9zdCBmaWVsZHMgYXJlIHRha2VuIGZyb20gdGhlIGxhdGVzdCBlbnRyeSwgZXhjZXB0IG90aGVyd2lzZSBzdGF0ZWQ6IgorbXNnc3RyICIiCisiUsOoZ2xlIGxlIGZvcm1hdCBkZSBzb3J0aWUuIEFjdHVlbGxlbWVudCBsZXMgdmFsZXVycyBnw6lyw6llcyBzb250IEk8ZHBrZz4gZXQgIgorIkk8cmZjODIyPi4gSTxkcGtnPiBlc3QgbGUgZm9ybWF0IGNsYXNzaXF1ZSBkZSBzb3J0aWUgKGF2YW50IHF1ZSBjZXR0ZSBvcHRpb24gIgorIm4nZXhpc3RlKSBldCBsJ29wdGlvbiBwYXIgZMOpZmF1dC4gSWwgc2UgY29tcG9zZSBkJ3VuIHBhcmFncmFwaGUgZGFucyBsZSAiCisiZm9ybWF0IGR1IGZpY2hpZXIgZGUgY29udHLDtGxlIERlYmlhbiAodm9pciBCPGRlYi1jb250cm9sPig1KSkuIFNpIHBsdXMgZCd1bmUgIgorImVudHLDqWUgZXN0IGRlbWFuZMOpZSwgYWxvcnMgbGEgcGx1cGFydCBkZXMgY2hhbXBzIHNvbnQgdGlyw6lzIGRlIGxhIGRlcm5pw6hyZSAiCisiZW50csOpZSwgc2F1ZiBzJ2lsIHkgYSBsJ2luZGljYXRpb27CoDoiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6NTQKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxTb3VyY2U6PiBFPGx0PnBrZyBuYW1lRTxndD4iCittc2dpZCAiQjxTb3VyY2U6Pkk8IHBrZy1uYW1lPiIKK21zZ3N0ciAiQjxTb3VyY2U6PiBFPGx0Pm5vbSBkdSBwYXF1ZXRFPGd0PiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo1NgorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPFZlcnNpb246PiBFPGx0PnZlcnNpb25FPGd0PiIKK21zZ2lkICJCPFZlcnNpb246Pkk8IHZlcnNpb24+IgorbXNnc3RyICJCPFZlcnNpb246PiBFPGx0PnZlcnNpb25FPGd0PiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo1OAorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPERpc3RyaWJ1dGlvbjo+IEU8bHQ+dGFyZ2V0IGRpc3RyaWJ1dGlvbkU8Z3Q+IgorbXNnaWQgIkI8RGlzdHJpYnV0aW9uOj5JPCB0YXJnZXQtZGlzdHJpYnV0aW9uPiIKK21zZ3N0ciAiQjxEaXN0cmlidXRpb246PiBFPGx0PmRpc3RyaWJ1dGlvbiBjaWJsZUU8Z3Q+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjYwCisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8VXJnZW5jeTo+IEU8bHQ+dXJnZW5jeUU8Z3Q+IgorbXNnaWQgIkI8VXJnZW5jeTo+STwgdXJnZW5jeT4iCittc2dzdHIgIkI8VXJnZW5jeTo+IEU8bHQ+cHJpb3JpdMOpRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo2MworbXNnaWQgIlRoZSBoaWdoZXN0IHVyZ2VuY3kgb2YgYWxsIGluY2x1ZGVkIGVudHJpZXMgaXMgdXNlZC4iCittc2dzdHIgIkxhIHByaW9yaXTDqSBsYSBwbHVzIGhhdXRlIGRlIGNlbGxlcyBpbmRpcXXDqWVzIGVzdCB1dGlsaXPDqWUuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjYzCisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8TWFpbnRhaW5lcjo+IEU8bHQ+YXV0aG9yRTxndD4iCittc2dpZCAiQjxNYWludGFpbmVyOj5JPCBhdXRob3I+IgorbXNnc3RyICJCPE1haW50YWluZXI6PiBFPGx0PmF1dGV1ckU8Z3Q+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjY1CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8RGF0ZTo+IEU8bHQ+ZGF0ZUU8Z3Q+IgorbXNnaWQgIkI8RGF0ZTo+STwgZGF0ZT4iCittc2dzdHIgIkI8RGF0ZTo+IEU8bHQ+ZGF0ZUU8Z3Q+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjY3CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8Q2xvc2VzOj4gRTxsdD5idWcgbnVtYmVyRTxndD4iCittc2dpZCAiQjxDbG9zZXM6Pkk8IGJ1Zy1udW1iZXI+IgorbXNnc3RyICJCPENsb3Nlczo+IEU8bHQ+TnVtw6lybyBkZSBib2d1ZUU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6NzAKK21zZ2lkICJUaGUgQ2xvc2VzIGZpZWxkcyBvZiBhbGwgaW5jbHVkZWQgZW50cmllcyBhcmUgbWVyZ2VkLiIKK21zZ3N0ciAiTGVzIGNoYW1wcyDCq8KgQ2xvc2VzwqDCuyBkZSB0b3V0ZXMgbGVzIGVudHLDqWVzIGluY2x1c2VzIHNvbnQgZnVzaW9ubsOpcy4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6NzAKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxDaGFuZ2VzOj4gRTxsdD5jaGFuZ2Vsb2cgZW50cmllc0U8Z3Q+IgorbXNnaWQgIkI8Q2hhbmdlczo+STwgY2hhbmdlbG9nLWVudHJpZXM+IgorbXNnc3RyICJCPENoYW5nZXM6PiBFPGx0PmVudHLDqWVzIGR1IGZpY2hpZXIgZGVzIGNoYW5nZW1lbnRzRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo3NworbXNnaWQgIiIKKyJUaGUgdGV4dCBvZiBhbGwgY2hhbmdlbG9nIGVudHJpZXMgaXMgY29uY2F0ZW5hdGVkLiBUbyBtYWtlIHRoaXMgZmllbGQgYSAiCisidmFsaWQgRGViaWFuIGNvbnRyb2wgZm9ybWF0IG11bHRpbGluZSBmaWVsZCBlbXB0eSBsaW5lcyBhcmUgcmVwbGFjZWQgd2l0aCBhICIKKyJzaW5nbGUgZnVsbCBzdG9wIGFuZCBhbGwgbGluZXMgaXMgaW50ZW5kZWQgYnkgb25lIHNwYWNlIGNoYXJhY3Rlci4gVGhlIGV4YWN0ICIKKyJjb250ZW50IGRlcGVuZHMgb24gdGhlIGNoYW5nZWxvZyBmb3JtYXQuIgorbXNnc3RyICIiCisiTGUgdGV4dGUgZGUgdG91dGVzIGxlcyBlbnRyw6llcyBkZSBjaGFuZ2Vsb2cgZXN0IGNvbmNhdMOpbsOpLiBQb3VyIGZhaXJlIGRlIGNlICIKKyJjaGFtcCB1biBjaGFtcCBkZSBjb250csO0bGUgRGViaWFuIHZhbGlkZSwgbGVzIGxpZ25lcyBtdWx0aXBsZXMgcXVpIHNvbnQgIgorInZpZGVzIHNvbnQgcmVtcGxhY8OpZXMgcGFyIHVuIHBvaW50IEI8XCIuXCI+IGV0IHRvdXRlcyBsZXMgbGlnbmVzIHNvbnQgIgorImludGVudMOpZXMgcGFyIHVuIHNldWwgZXNwYWNlLiBMZSBjb250ZW51IGV4YWN0IGTDqXBlbmQgZHUgZm9ybWF0IGR1IGNoYW5nZWxvZy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo4MAorbXNnaWQgIlRoZXJlIG1pZ2h0IGJlIGFkZGl0aW9uYWwgdXNlci1kZWZpbmVkIGZpZWxkcyBwcmVzZW50LiIKK21zZ3N0ciAiIgorIklsIGVzdCBwb3NzaWJsZSBkJ2F2b2lyIGQnYXV0cmVzIGNoYW1wcyBxdWkgc29udCBkw6lmaW5pcyBwYXIgbCd1dGlsaXNhdGV1ci4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo4NAorbXNnaWQgIiIKKyJUaGUgQjxyZmM4MjI+IGZvcm1hdCB1c2VzIHRoZSBzYW1lIGZpZWxkcyBidXQgb3V0cHV0cyBhIHNlcGFyYXRlIHBhcmFncmFwaCAiCisiZm9yIGVhY2ggY2hhbmdlbG9nIGVudHJ5IHNvIHRoYXQgYWxsIG1ldGFkYXRhIGZvciBlYWNoIGVudHJ5IGlzIHByZXNlcnZlZC4iCittc2dzdHIgIiIKKyJMZSBmb3JtYXQgQjxyZmM4MjI+IHV0aWxpc2UgbGVzIG3Dqm1lcyBjaGFtcHMgbWFpcyBsZSByw6lzdWx0YXQgZXN0IHVuICIKKyJwYXJhZ3JhcGhlIGRpc3RpbmN0IHBvdXIgY2hhcXVlIGVudHLDqWUgZHUgY2hhbmdlbG9nIGFmaW4gcXVlIHRvdXRlcyBsZXMgIgorIm3DqXRhZG9ubsOpZXMgZGUgY2hhcXVlIGVudHLDqWUgc29pdCBwcsOpc2VydsOpZXMuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjg0CisjLCBuby13cmFwCittc2dpZCAiQjwtLXNpbmNlPiBJPHZlcnNpb24+LCBCPC1zPkk8dmVyc2lvbj4sQjwgLXY+STx2ZXJzaW9uPiIKK21zZ3N0ciAiQjwtLXNpbmNlPiBJPHZlcnNpb24+LCBCPC1zPkk8dmVyc2lvbj4sQjwgLXY+STx2ZXJzaW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjg3Cittc2dpZCAiaW5jbHVkZSBhbGwgY2hhbmdlcyBsYXRlciB0aGFuIEk8dmVyc2lvbj4uIgorbXNnc3RyICJpbmNsdXQgdG91cyBsZXMgY2hhbmdlbWVudHMgcXVpIG9udCBzdWl2aSBsYSBJPHZlcnNpb24+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo4NworIywgbm8td3JhcAorbXNnaWQgIkI8LS11bnRpbD4gSTx2ZXJzaW9uPiwgQjwtdT5JPHZlcnNpb24+IgorbXNnc3RyICJCPC0tdW50aWw+IEk8dmVyc2lvbj4sIEI8LXU+STx2ZXJzaW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjkwCittc2dpZCAiaW5jbHVkZSBhbGwgY2hhbmdlcyBlYXJsaWVyIHRoYW4gSTx2ZXJzaW9uPi4iCittc2dzdHIgImluY2x1dCB0b3VzIGxlcyBjaGFuZ2VtZW50cyBxdWkgb250IGV1IGxpZXUgYXZhbnQgbGEgSTx2ZXJzaW9uPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6OTAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tZnJvbT4gSTx2ZXJzaW9uPiwgQjwtZj5JPHZlcnNpb24+IgorbXNnc3RyICJCPC0tZnJvbT4gSTx2ZXJzaW9uPiwgQjwtZj5JPHZlcnNpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6OTMKK21zZ2lkICJpbmNsdWRlIGFsbCBjaGFuZ2VzIGVxdWFsIG9yIGxhdGVyIHRoYW4gSTx2ZXJzaW9uPi4iCittc2dzdHIgImluY2x1dCB0b3VzIGxlcyBjaGFuZ2VtZW50cyBkZXB1aXMgbGEgSTx2ZXJzaW9uPiAoaW5jbHVzZSkuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjkzCisjLCBuby13cmFwCittc2dpZCAiQjwtLXRvPiBJPHZlcnNpb24+LCBCPC10Pkk8dmVyc2lvbj4iCittc2dzdHIgIkI8LS10bz4gSTx2ZXJzaW9uPiwgQjwtdD5JPHZlcnNpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6OTYKK21zZ2lkICJpbmNsdWRlIGFsbCBjaGFuZ2VzIHVwIHRvIG9yIGVxdWFsIHRoYW4gSTx2ZXJzaW9uPi4iCittc2dzdHIgImluY2x1dCB0b3VzIGxlcyBjaGFuZ2VtZW50cyBhcHBvcnTDqXMganVzcXUnw6AgbGEgSTx2ZXJzaW9uPiBjb21wcmlzZS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6OTYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tY291bnQ+IEk8bnVtYmVyPiwgQjwtYz5JPG51bWJlcj4sIEI8LW4+STxudW1iZXI+IgorbXNnc3RyICJCPC0tY291bnQ+IEk8bm9tYnJlPiwgQjwtYz5JPG5vbWJyZT4sIEI8LW4+STxub21icmU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTAwCittc2dpZCAiIgorImluY2x1ZGUgSTxudW1iZXI+IGVudHJpZXMgZnJvbSB0aGUgdG9wIChvciB0aGUgdGFpbCBpZiBJPG51bWJlcj4gaXMgbG93ZXIgIgorInRoYW4gMCkuIgorbXNnc3RyICIiCisiaW5jbHV0IGNlIEk8bm9tYnJlPiBkJ2VudHLDqWVzIGRlcHVpcyBsZSBkw6lidXQgKG91IGxhIGZpbiBzaSBsZSBJPG5vbWJyZT4gZXN0ICIKKyJpbmbDqXJpZXVyIMOgIDApLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxMDAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tb2Zmc2V0PiBJPG51bWJlcj4sIEI8LW8+STxudW1iZXI+IgorbXNnc3RyICJCPC0tb2Zmc2V0PiBJPG5vbWJyZT4sIEI8LW8+STxub21icmU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTA0Cittc2dpZCAiIgorImNoYW5nZSB0aGUgc3RhcnRpbmcgcG9pbnQgZm9yIC0tY291bnQsIGNvdW50ZWQgZnJvbSB0aGUgdG9wIChvciB0aGUgdGFpbCBpZiAiCisiSTxudW1iZXI+IGlzIGxvd2VyIHRoYW4gMCkuIgorbXNnc3RyICIiCisibW9kaWZpZSBsZSBwb2ludCBkZSBkw6lwYXJ0IHBvdXIgwqvCoC0tY291bnTCoMK7LCDDoCBjb21wdGVyIGR1IGTDqWJ1dCAob3UgbGEgZmluICIKKyJzaSBsZSBJPG5vbWJyZT4gZXN0IGluZsOpcmlldXJlIMOgIDApLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxMDQgdXBkYXRlLWFsdGVybmF0aXZlcy44OjI2OAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1hbGw+IgorbXNnc3RyICJCPC0tYWxsPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjEwOAorbXNnaWQgIiIKKyJpbmNsdWRlIGFsbCBjaGFuZ2VzLiBOb3RlOiBvdGhlciBvcHRpb25zIGhhdmUgbm8gZWZmZWN0IHdoZW4gdGhpcyBpcyBpbiB1c2UuIgorbXNnc3RyICIiCisiaW5jbHV0IHRvdXRlcyBsZXMgbW9kaWZpY2F0aW9ucy4gTm90ZcKgOsKgZCdhdXRyZXMgb3B0aW9ucyBkZXZpZW5uZW50IHNhbnMgIgorImVmZmV0IGxvcnNxdWUgY2VsbGUtY2kgZXN0IHV0aWxpc8OpZS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxMTQKK21zZ2lkICIiCisiQWxsIEI8UGFyc2VyIE9wdGlvbnM+IGV4Y2VwdCBmb3IgLXYgYXJlIG9ubHkgc3VwcG9ydGVkIGluIEI8ZHBrZz4sIHZlcnNpb24gIgorIjEuMTQuMTYgYW5kIGxhdGVyLiBUaGlyZCBwYXJ0eSBwYXJzZXJzIGZvciBjaGFuZ2Vsb2cgZm9ybWF0cyBvdGhlciB0aGFuICIKKyJJPGRlYmlhbj4gbWlnaHQgbm90IHN1cHBvcnQgYWxsIG9wdGlvbnMuIgorbXNnc3RyICIiCisiVG91dGVzIGxlcyBCPE9wdGlvbnMgZCdhbmFseXNlPiBzYXVmIMKrwqAtdsKgwrsgc29udCBnw6lyw6llcyBwYXIgQjxkcGtnPiBhdmVjIGxhICIKKyJ2ZXJzaW9uIDEuMTQuMTYgZXQgc3VpdmFudGVzLiBMZXMgYW5hbHlzZXVycyB0aWVycyBwb3VyIGxlIGZvcm1hdCBkdSAiCisiY2hhbmdlbG9nIHBsdXMgdmlldXggcXVlIEk8ZGViaWFuPiBuZSBnw6hyZW50IHBldXQtw6p0cmUgcGFzIHRvdXRlcyBsZXMgIgorIm9wdGlvbnMuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjExNgorIywgbm8td3JhcAorbXNnaWQgIkI8ZGViaWFuL2NoYW5nZWxvZz4iCittc2dzdHIgIkI8ZGViaWFuL2NoYW5nZWxvZz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxMjIKK21zZ2lkICIiCisiVGhlIGNoYW5nZWxvZyBmaWxlLCB1c2VkIHRvIG9idGFpbiB2ZXJzaW9uLWRlcGVuZGVudCBpbmZvcm1hdGlvbiBhYm91dCB0aGUgIgorInNvdXJjZSBwYWNrYWdlLCBzdWNoIGFzIHRoZSB1cmdlbmN5IGFuZCBkaXN0cmlidXRpb24gb2YgYW4gdXBsb2FkLCB0aGUgIgorImNoYW5nZXMgbWFkZSBzaW5jZSBhIHBhcnRpY3VsYXIgcmVsZWFzZSwgYW5kIHRoZSBzb3VyY2UgdmVyc2lvbiBudW1iZXIgIgorIml0c2VsZi4iCittc2dzdHIgIiIKKyJMZSBmaWNoaWVyIGQnZW5yZWdpc3RyZW1lbnQgZGVzIG1vZGlmaWNhdGlvbnPCoDsgb24gcydlbiBzZXJ0IHBvdXIgY29ubmHDrnRyZSAiCisibGVzIGluZm9ybWF0aW9ucyBxdWkgZMOpcGVuZGVudCBkJ3VuZSB2ZXJzaW9uIGR1IHBhcXVldCBzb3VyY2UsIHBhciBleGVtcGxlICIKKyJsJ3VyZ2VuY2Ugb3UgbGEgZGlzdHJpYnV0aW9uIGQndW5lIGluc3RhbGxhdGlvbiBzdXIgbGUgc2VydmV1ciwgbGVzICIKKyJtb2RpZmljYXRpb25zIGZhaXRlcyBkZXB1aXMgdGVsbGUgw6lkaXRpb24gZXQgbGUgbnVtw6lybyBkZSBsYSB2ZXJzaW9uIHNvdXJjZSAiCisibHVpLW3Dqm1lLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjEyOQorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDA3LCAyMDA4IEZyYW5rIExpY2h0ZW5oZWxkIgorbXNnc3RyICJDb3B5cmlnaHQgXFwoY28gMjAwNywgMjAwOCBGcmFuayBMaWNodGVuaGVsZCIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctcXVlcnkuMToxCisjLCBuby13cmFwCittc2dpZCAiZHBrZy1xdWVyeSIKK21zZ3N0ciAiZHBrZy1xdWVyeSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjQKK21zZ2lkICJkcGtnLXF1ZXJ5IC0gYSB0b29sIHRvIHF1ZXJ5IHRoZSBkcGtnIGRhdGFiYXNlIgorbXNnc3RyICJkcGtnLXF1ZXJ5IC0gVW4gb3V0aWwgcG91ciBpbnRlcnJvZ2VyIGxhIGJhc2UgZGUgZG9ubsOpZXMgZGUgZHBrZyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjgKK21zZ2lkICJCPGRwa2ctcXVlcnk+IFtJPG9wdGlvbj4uLi5dIEk8Y29tbWFuZD4iCittc2dzdHIgIkI8ZHBrZy1xdWVyeT4gW0k8b3B0aW9uPi4uLl0gSTxjb21tYW5kZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMToxMgorbXNnaWQgIiIKKyJCPGRwa2ctcXVlcnk+IGlzIGEgdG9vbCB0byBzaG93IGluZm9ybWF0aW9uIGFib3V0IHBhY2thZ2VzIGxpc3RlZCBpbiB0aGUgIgorIkI8ZHBrZz4gZGF0YWJhc2UuIgorbXNnc3RyICIiCisiQjxkcGtnLXF1ZXJ5PiBlc3QgdW4gb3V0aWwgcG91ciBhZmZpY2hlciBkZXMgaW5mb3JtYXRpb25zIHN1ciBsZXMgcGFxdWV0cyAiCisiY29ubnVzIHBhciBsYSBiYXNlIGRlIGRvbm7DqWVzIGRlIEI8ZHBrZz4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1xdWVyeS4xOjE0CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8LWw+LCBCPC0tbGlzdD4gSTxwYWNrYWdlLW5hbWUtcGF0dGVybj4uLi4iCittc2dpZCAiQjwtbD4sIEI8LS1saXN0PiBbSTxwYWNrYWdlLW5hbWUtcGF0dGVybj4uLi5dIgorbXNnc3RyICJCPC1sPiwgQjwtLWxpc3Q+IEk8bW90aWYtZGUtbm9tLWRlLXBhcXVldD4uLi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMToyNAorbXNnaWQgIiIKKyJMaXN0IHBhY2thZ2VzIG1hdGNoaW5nIGdpdmVuIHBhdHRlcm4uIElmIG5vIEk8cGFja2FnZS1uYW1lLXBhdHRlcm4+IGlzICIKKyJnaXZlbiwgbGlzdCBhbGwgcGFja2FnZXMgaW4gSTwvdmFyL2xpYi9kcGtnL3N0YXR1cz4sIGV4Y2x1ZGluZyB0aGUgb25lcyAiCisibWFya2VkIGFzIG5vdC1pbnN0YWxsZWQgKGkuZS4gdGhvc2Ugd2hpY2ggaGF2ZSBiZWVuIHByZXZpb3VzbHkgcHVyZ2VkKS4gIgorIk5vcm1hbCBzaGVsbCB3aWxkY2hhcnMgYXJlIGFsbG93ZWQgaW4gSTxwYWNrYWdlLW5hbWUtcGF0dGVybj4uIFBsZWFzZSBub3RlICIKKyJ5b3Ugd2lsbCBwcm9iYWJseSBoYXZlIHRvIHF1b3RlIEk8cGFja2FnZS1uYW1lLXBhdHRlcm4+IHRvIHByZXZlbnQgdGhlIHNoZWxsICIKKyJmcm9tIHBlcmZvcm1pbmcgZmlsZW5hbWUgZXhwYW5zaW9uLiBGb3IgZXhhbXBsZSB0aGlzIHdpbGwgbGlzdCBhbGwgcGFja2FnZSAiCisibmFtZXMgc3RhcnRpbmcgd2l0aCBgYGxpYmM2Jyc6IgorbXNnc3RyICIiCisiQWZmaWNoZSBsZXMgcGFxdWV0cyBjb3JyZXNwb25kYW50cyBhdSBtb3RpZiBkb25uw6kuIFNpIGF1Y3VuIEk8bm9tLXBhcXVldC0iCisibW90aWY+IG4nZXN0IGluZGlxdcOpLCBhZmZpY2hlIHRvdXMgbGVzIHBhcXVldHMgZGUgSTwvdmFyL2xpYi9kcGtnL3N0YXR1cz4sICIKKyJzYXVmIGNldXggcXVpIG5lIHNvbnQgcGFzIGluc3RhbGzDqXMgKGMnZXN0IMOgIGRpcmUgY2V1eCBxdWkgb250IMOpdMOpICIKKyJwcsOpY8OpZGVtbWVudCBwdXJnw6lzKS4gTGVzIG3DqXRhY2FyYWN0w6hyZXMgb3JkaW5haXJlcyBkZSBsJ2ludGVycHLDqXRldXIgZGUgIgorImNvbW1hbmRlcyBzb250IGF1dG9yaXPDqXMgZGFucyBJPG5vbS1wYXF1ZXQtbW90aWY+LiBJbCBmYXVkcmEgc2FucyBkb3V0ZSAiCisibWV0dHJlIEk8bm9tLXBhcXVldC1tb3RpZj4gZW50cmUgYXBvc3Ryb3BoZXMgcG91ciDDqXZpdGVyIGwnZXhwYW5zaW9uIGRlcyAiCisibm9tcyBkZSBmaWNoaWVyIHBhciBsJ2ludGVycHLDqXRldXIgZGUgY29tbWFuZGVzLiBQYXIgZXhlbXBsZSwgdG91cyBsZXMgIgorInBhcXVldHMgZG9udCBsZSBub20gY29tbWVuY2UgcGFyIMKrwqBsaWJjNsKgwrsgc2Vyb250IGFmZmljaMOpcyBwYXIgbGEgY29tbWFuZGXCoDoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMToyNworIywgbm8td3JhcAorbXNnaWQgIiAgQjxkcGtnLXF1ZXJ5IC1sIFxcKGFxbGliYzYqXFwoYXE+XG4iCittc2dzdHIgIkI8ZHBrZy1xdWVyeSAtbCBcXChhcWxpYmM2KlxcKGFxPlxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6MzEKK21zZ2lkICIiCisiVGhlIGZpcnN0IHRocmVlIGNvbHVtbnMgb2YgdGhlIG91dHB1dCBzaG93IHRoZSBkZXNpcmVkIGFjdGlvbiwgdGhlIHBhY2thZ2UgIgorInN0YXR1cywgYW5kIGVycm9ycywgaW4gdGhhdCBvcmRlci4iCittc2dzdHIgIiIKKyJMZXMgdHJvaXMgcHJlbWnDqHJlcyBjb2xvbm5lcyBhZmZpY2jDqWVzIG1vbnRyZW50IGRhbnMgbCdvcmRyZcKgOiBsJ2FjdGlvbiAiCisic291aGFpdMOpZSwgbCfDqXRhdCBkdSBwYXF1ZXQgZXQgbGVzIGVycmV1cnMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6MzMKK21zZ2lkICJEZXNpcmVkIGFjdGlvbjoiCittc2dzdHIgIkFjdGlvbiBzb3VoYWl0w6llwqA6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6MzkKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiICB1ID0gVW5rbm93blxuIgorIiAgaSA9IEluc3RhbGxcbiIKKyIgIGggPSBIb2xkXG4iCisiICByID0gUmVtb3ZlXG4iCisiICBwID0gUHVyZ2VcbiIKK21zZ3N0ciAiIgorIiAgdSA9IEluY29ubnUgKFVua25vd24pXG4iCisiICBpID0gSW5zdGFsbGVyIChJbnN0YWxsKVxuIgorIiAgaCA9IEdhcmRlciAoSG9sZClcbiIKKyIgIHIgPSBTdXBwcmltZXIgKFJlbW92ZSlcbiIKKyIgIHAgPSBQdXJnZXIgKFB1cmdlKVxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6NDIKK21zZ2lkICJQYWNrYWdlIHN0YXR1czoiCittc2dzdHIgIsOJdGF0IGR1IHBhcXVldMKgOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjUxCisjLCBuby13cmFwCittc2dpZCAiIgorIiAgbiA9IE5vdC1pbnN0YWxsZWRcbiIKKyIgIGMgPSBDb25maWctZmlsZXNcbiIKKyIgIEggPSBIYWxmLWluc3RhbGxlZFxuIgorIiAgVSA9IFVucGFja2VkXG4iCisiICBGID0gSGFsZi1jb25maWd1cmVkXG4iCisiICBXID0gVHJpZ2dlcnMtYXdhaXRpbmdcbiIKKyIgIHQgPSBUcmlnZ2Vycy1wZW5kaW5nXG4iCisiICBpID0gSW5zdGFsbGVkXG4iCittc2dzdHIgIiIKKyIgIG4gPSBOb24gaW5zdGFsbMOpIChOb3QtaW5zdGFsbGVkXG4iCisiKSAgYyA9IEZpY2hpZXJzIGRlIGNvbmZpZ3VyYXRpb24gKENvbmZpZy1maWxlcylcbiIKKyIgIEggPSBTZW1pLWluc3RhbGzDqSAoSGFsZi1pbnN0YWxsZWQpXG4iCisiICBVID0gRMOpY29tcHJlc3PDqSAoVW5wYWNrZWQpXG4iCisiICBGID0gU2VtaS1jb25maWd1csOpIChIYWxmLWNvbmZpZ3VyZWQpXG4iCisiICBXID0gQXR0ZW50ZSBkZSBkw6ljbGVuY2hlbWVudHMgKFRyaWdnZXJzLWF3YWl0aW5nKVxuIgorIiAgdCA9IETDqWNsZW5jaGVtZW50cyBlbiBhdHRlbnRlIChUcmlnZ2Vycy1wZW5kaW5nKVxuIgorIiAgaSA9IEluc3RhbGzDqSAoSW5zdGFsbGVkKVxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6NTQKK21zZ2lkICJFcnJvciBmbGFnczoiCittc2dzdHIgIkRyYXBlYXV4IGQnZXJyZXVywqA6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6NTcKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiICBFPGx0PmVtcHR5RTxndD4gPSAobm9uZSlcbiIKKyIgIFIgPSBSZWluc3QtcmVxdWlyZWRcbiIKK21zZ3N0ciAiIgorIiAgRTxsdD5lbXB0eUU8Z3Q+ID0gKG5vbmUpXG4iCisiICBSID0gUmVpbnN0LXJlcXVpcmVkXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMTo2MgorbXNnaWQgIiIKKyJBbiB1cHBlcmNhc2Ugc3RhdHVzIG9yIGVycm9yIGxldHRlciBpbmRpY2F0ZXMgdGhlIHBhY2thZ2UgaXMgbGlrZWx5IHRvIGNhdXNlICIKKyJzZXZlcmUgcHJvYmxlbXMuIFBsZWFzZSByZWZlciB0byBCPGRwa2c+KDEpIGZvciBpbmZvcm1hdGlvbiBhYm91dCB0aGUgYWJvdmUgIgorInN0YXRlcyBhbmQgZmxhZ3MuIgorbXNnc3RyICIiCisiVW4gw6l0YXQgZW4gbWFqdXNjdWxlcyBvdSB1bmUgbGV0dHJlIGQnZXJyZXVyIGluZGlxdWVudCBxdWUgbGUgcGFxdWV0IHBldXQgIgorInByb3ZvcXVlciBkZXMgcHJvYmzDqG1lcyBncmF2ZXMuIFZldWlsbGV6IGNvbnN1bHRlciBCPGRwa2c+KDEpIMOgIHByb3BvcyBkZXMgIgorIsOpdGF0cyBldCBkcmFwZWF1eCBjaS1kZXNzdXMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6NjcKK21zZ2lkICIiCisiVGhlIG91dHB1dCBmb3JtYXQgb2YgdGhpcyBvcHRpb24gaXMgbm90IGNvbmZpZ3VyYWJsZSwgYnV0IHZhcmllcyAiCisiYXV0b21hdGljYWxseSB0byBmaXQgdGhlIHRlcm1pbmFsIHdpZHRoLiBJdCBpcyBpbnRlbmRlZCBmb3IgaHVtYW4gcmVhZGVycywgIgorImFuZCBpcyBub3QgZWFzaWx5IG1hY2hpbmUtcmVhZGFibGUuIFNlZSBCPC1XPiAoQjwtLXNob3c+KSAgYW5kIEI8LS0iCisic2hvd2Zvcm1hdD4gZm9yIGEgd2F5IHRvIGNvbmZpZ3VyZSB0aGUgb3V0cHV0IGZvcm1hdC4iCittc2dzdHIgIiIKKyJPbiBuZSBwZXV0IHBhcyBjb25maWd1cmVyIGxlIGZvcm1hdCBkZSBzb3J0aWUgZGUgY2V0dGUgb3B0aW9uLiBJbCBzJ2FkYXB0ZSAiCisiYXV0b21hdGlxdWVtZW50IMOgIGxhIGxhcmdldXIgZHUgdGVybWluYWwuIENlIGZvcm1hdCBlc3QgZGVzdGluw6kgYXV4IGh1bWFpbnMgIgorImV0IGxhIG1hY2hpbmUgbGUgbGl0IG1hbC4gVm95ZXogQjwtVz4gKEI8LS1zaG93PikgZXQgQjwtLXNob3dmb3JtYXQ+IHBvdXIgIgorInVuZSBwb3NzaWJsZSBjb25maWd1cmF0aW9uIGRlIGNlIGZvcm1hdC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXF1ZXJ5LjE6NjcKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjwtVz4sIEI8LS1zaG93PiBJPHBhY2thZ2UtbmFtZS1wYXR0ZXJuPi4uLiIKK21zZ2lkICJCPC1XPiwgQjwtLXNob3c+IFtJPHBhY2thZ2UtbmFtZS1wYXR0ZXJuPi4uLl0iCittc2dzdHIgIkI8LVc+LCBCPC0tc2hvdz4gSTxtb3RpZi1kZS1ub20tZGUtcGFxdWV0Pi4uLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjc0Cittc2dpZCAiIgorIkp1c3QgbGlrZSB0aGUgQjwtLWxpc3Q+IG9wdGlvbiB0aGlzIHdpbGwgbGlzdCBhbGwgcGFja2FnZXMgbWF0Y2hpbmcgdGhlICIKKyJnaXZlbiBwYXR0ZXJuLiBIb3dldmVyIHRoZSBvdXRwdXQgY2FuIGJlIGN1c3RvbWl6ZWQgdXNpbmcgdGhlIEI8LS0iCisic2hvd2Zvcm1hdD4gb3B0aW9uLiAgVGhlIGRlZmF1bHQgb3V0cHV0IGZvcm1hdCBnaXZlcyBvbmUgbGluZSBwZXIgbWF0Y2hpbmcgIgorInBhY2thZ2UsIGVhY2ggbGluZSBoYXZpbmcgdGhlIG5hbWUgYW5kIGluc3RhbGxlZCB2ZXJzaW9uIG9mIHRoZSBwYWNrYWdlLCAiCisic2VwYXJhdGVkIGJ5IGEgdGFiLiIKK21zZ3N0ciAiIgorIlRvdXQgY29tbWUgbCdvcHRpb24gQjwtLWxpc3Q+LCBjZXR0ZSBvcHRpb24gYWZmaWNoZSBsYSBsaXN0ZSBkZXMgcGFxdWV0cyBxdWkgIgorImNvcnJlc3BvbmRlbnQgYXUgbW90aWYgZG9ubsOpLiBMYSBzb3J0aWUgcGV1dCBjZXBlbmRhbnQgw6p0cmUgZm9ybWF0w6llIGVuICIKKyJ1dGlsaXNhbnQgbCdvcHRpb24gQjwtLXNob3dmb3JtYXQ+LiBMZSBmb3JtYXQgZGUgc29ydGllIHBhciBkw6lmYXV0IGVzdCBsZSAiCisic3VpdmFudMKgOiB1bmUgbGlnbmUgcG91ciBjaGFxdWUgcGFxdWV0LCBhdmVjIGxlIG5vbSBldCBsYSB2ZXJzaW9uIGluc3RhbGzDqWUsICIKKyJzw6lwYXLDqSBwYXIgdW5lIHRhYnVsYXRpb24uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1xdWVyeS4xOjc0CisjLCBuby13cmFwCittc2dpZCAiQjwtcz4sIEI8LS1zdGF0dXM+IEk8cGFja2FnZS1uYW1lPi4uLiIKK21zZ3N0ciAiQjwtcz4sIEI8LS1zdGF0dXM+IEk8bm9tLXBhcXVldD4gLi4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6NzkKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlJlcG9ydCBzdGF0dXMgb2Ygc3BlY2lmaWVkIHBhY2thZ2UuIFRoaXMganVzdCBkaXNwbGF5cyB0aGUgZW50cnkgaW4gdGhlICIKKyN8ICJpbnN0YWxsZWQgcGFja2FnZSBzdGF0dXMgZGF0YWJhc2UuIgorbXNnaWQgIiIKKyJSZXBvcnQgc3RhdHVzIG9mIHNwZWNpZmllZCBwYWNrYWdlLiBUaGlzIGp1c3QgZGlzcGxheXMgdGhlIGVudHJ5IGluIHRoZSAiCisiaW5zdGFsbGVkIHBhY2thZ2Ugc3RhdHVzIGRhdGFiYXNlLiBXaGVuIG11bHRpcGxlIEk8cGFja2FnZS1uYW1lPiBhcmUgbGlzdGVkLCAiCisidGhlIHJlcXVlc3RlZCBzdGF0dXMgZW50cmllcyBhcmUgc2VwYXJhdGVkIGJ5IGFuIGVtcHR5IGxpbmUuIgorbXNnc3RyICIiCisiRG9ubmUgbCfDqXRhdCBkdSBwYXF1ZXQgaW5kaXF1w6kuIEMnZXN0IHNpbXBsZW1lbnQgbCdhZmZpY2hhZ2UgZGUgbCdlbnRyw6llIGRlICIKKyJsYSBiYXNlIGRlIGRvbm7DqWVzIGNvbmNlcm5hbnQgbGVzIMOpdGF0cyBkZXMgcGFxdWV0cyBpbnN0YWxsw6lzLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcXVlcnkuMTo3OQorIywgbm8td3JhcAorbXNnaWQgIkI8LUw+LCBCPC0tbGlzdGZpbGVzPiBJPHBhY2thZ2UtbmFtZT4uLi4iCittc2dzdHIgIkI8LUw+LCBCPC0tbGlzdGZpbGVzPiBJPG5vbS1wYXF1ZXQ+Li4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6ODUKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIkxpc3QgZmlsZXMgaW5zdGFsbGVkIHRvIHlvdXIgc3lzdGVtIGZyb20gSTxwYWNrYWdlLW5hbWU+LiAgSG93ZXZlciwgbm90ZSAiCisjfCAidGhhdCBmaWxlcyBjcmVhdGVkIGJ5IHBhY2thZ2Utc3BlY2lmaWMgaW5zdGFsbGF0aW9uLXNjcmlwdHMgYXJlIG5vdCAiCisjfCAibGlzdGVkLiIKK21zZ2lkICIiCisiTGlzdCBmaWxlcyBpbnN0YWxsZWQgdG8geW91ciBzeXN0ZW0gZnJvbSBJPHBhY2thZ2UtbmFtZT4uIFdoZW4gbXVsdGlwbGUgIgorIkk8cGFja2FnZS1uYW1lPiBhcmUgbGlzdGVkLCB0aGUgcmVxdWVzdGVkIGxpc3RzIG9mIGZpbGVzIGFyZSBzZXBhcmF0ZWQgYnkgYW4gIgorImVtcHR5IGxpbmUuIEhvd2V2ZXIsIG5vdGUgdGhhdCBmaWxlcyBjcmVhdGVkIGJ5IHBhY2thZ2Utc3BlY2lmaWMgIgorImluc3RhbGxhdGlvbi1zY3JpcHRzIGFyZSBub3QgbGlzdGVkLiIKK21zZ3N0ciAiIgorIkFmZmljaGUgbGEgbGlzdGUgZGVzIGZpY2hpZXJzIGR1IEk8bm9tLXBhcXVldD4gaW5zdGFsbMOpcyBzdXIgbGUgc3lzdMOobWUuIElsICIKKyJmYXV0IHJlbWFycXVlciBjZXBlbmRhbnQgcXVlIGxlcyBmaWNoaWVycyBjcsOpw6lzIHBhciBsZXMgc2NyaXB0cyAiCisiZCdpbnN0YWxsYXRpb24gcGFydGljdWxpZXJzIGF1IHBhcXVldCBuZSBzb250IHBhcyBhZmZpY2jDqXMuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1xdWVyeS4xOjg1CisjLCBuby13cmFwCittc2dpZCAiQjwtYz4sIEI8LS1jb250cm9sLXBhdGg+IEk8cGFja2FnZS1uYW1lPiBbSTxjb250cm9sLWZpbGU+XSIKK21zZ3N0ciAiQjwtYz4sIEI8LS1jb250cm9sLXBhdGg+IEk8bm9tLXBhcXVldD4gW0k8ZmljaGllci1jb250csO0bGU+XSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjkzCittc2dpZCAiIgorIkxpc3QgcGF0aHMgZm9yIGNvbnRyb2wgZmlsZXMgaW5zdGFsbGVkIHRvIHlvdXIgc3lzdGVtIGZyb20gSTxwYWNrYWdlLW5hbWU+LiAgIgorIklmIEk8Y29udHJvbC1maWxlPiBpcyBzcGVjaWZpZWQgdGhlbiBvbmx5IGxpc3QgdGhlIHBhdGggZm9yIHRoYXQgY29udHJvbCAiCisiZmlsZSBpZiBpdCBpcyBwcmVzZW50LiBCPFdhcm5pbmc+OiB0aGlzIGNvbW1hbmQgaXMgc2VtaS1wdWJsaWMsIGl0IHNob3VsZCBiZSAiCisidXNlZCBvbmx5IGFzIGEgbGFzdCByZXNvcnQgc29sdXRpb24sIGFuZCBpZiBubyBvdGhlciBpbnRlcmZhY2UgaXMgYXZhaWxhYmxlLiAiCisiSXQgbWlnaHQgZ2V0IGRlcHJlY2F0ZWQgbGF0ZXIgb24gaWYgYmV0dGVyIGludGVyZmFjZXMgb3IgdGhlIGN1cnJlbnQgIgorImFyY2hpdGVjdHVyYWwgZGVmaWNpZW5jaWVzIGhhdmUgYmVlbiBzb2x2ZWQuIgorbXNnc3RyICIiCisiQWZmaWNoZSBsZXMgY2hlbWlucyBwb3VyIGxlcyBmaWNoaWVycyBkZSBjb250csO0bGUgaW5zdGFsbMOpcyBzdXIgdm90cmUgIgorInN5c3TDqG1lIHBvdXIgSTxub20tcGFxdWV0Pi4gU2kgSTxmaWNoaWVyLWNvbnRyw7RsZT4gZXN0IGluZGlxdcOpLCBzZXVsIGxlICIKKyJjaGVtaW4gcG91ciBjZSBmaWNoaWVyIGRlIGNvbnRyw7RsZSBzZXJhIGFmZmljaMOpLCBzJ2lsIGVzdCBwcsOpc2VudC4gIgorIkI8QXR0ZW50aW9uPsKgOsKgY2V0dGUgY29tbWFuZGUgZXN0IHNlbWktcHVibGlxdWUgZXQgbmUgZGV2cmFpdCDDqnRyZSB1dGlsaXPDqWUgIgorInF1J2VuIGRlcm5pZXIgcmVzc29ydCBldCBzaSBhdWN1bmUgYXV0cmUgaW50ZXJmYWNlIG4nZXN0IGRpc3BvbmlibGUuIEVsbGUgIgorInBvdXJyYWl0IGRldmVuaXIgb2Jzb2zDqHRlIGRhbnMgbGUgZnV0dXIgc2kgZGUgbWVpbGxldXJlcyBpbnRlcmZhY2VzIHNvbnQgIgorIm1pc2VzIGVuIHBsYWNlIG91IHNpIGxlcyBkw6lmYXV0cyBhY3R1ZWxzIGQnYXJjaGl0ZWN0dXJlIHNvbnQgcsOpc29sdXMuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1xdWVyeS4xOjkzCisjLCBuby13cmFwCittc2dpZCAiQjwtUz4sIEI8LS1zZWFyY2g+IEk8ZmlsZW5hbWUtc2VhcmNoLXBhdHRlcm4+Li4uIgorbXNnc3RyICJCPC1TPiwgQjwtLXNlYXJjaD4gSTxtb3RpZi1kZS1ub20tYS1yZWNoZXJjaGVyPi4uLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjk5CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJTZWFyY2ggZm9yIGEgZmlsZW5hbWUgZnJvbSBpbnN0YWxsZWQgcGFja2FnZXMuIEFsbCBzdGFuZGFyZCBzaGVsbCAiCisjfCAid2lsZGNoYXJzIGNhbiBiZSB1c2VkIGluIHRoZSBwYXR0ZXJuLiBUaGlzIGNvbW1hbmQgd2lsbCBub3QgbGlzdCBleHRyYSAiCisjfCAiZmlsZXMgY3JlYXRlZCBieSBtYWludGFpbmVyIHNjcmlwdHMsIG5vciB3aWxsIGl0IGxpc3QgYWx0ZXJuYXRpdmVzLiIKK21zZ2lkICIiCisiU2VhcmNoIGZvciBwYWNrYWdlcyB0aGF0IG93biBmaWxlcyBjb3JyZXNwb25kaW5nIHRvIHRoZSBnaXZlbiBwYXR0ZXJuLiAgIgorIlN0YW5kYXJkIHNoZWxsIHdpbGRjaGFycyBjYW4gYmUgdXNlZCBpbiB0aGUgcGF0dGVybi4gIFRoaXMgY29tbWFuZCB3aWxsIG5vdCAiCisibGlzdCBleHRyYSBmaWxlcyBjcmVhdGVkIGJ5IG1haW50YWluZXIgc2NyaXB0cywgbm9yIHdpbGwgaXQgbGlzdCAiCisiYWx0ZXJuYXRpdmVzLiIKK21zZ3N0ciAiIgorIlJlY2hlcmNoZSB1biBub20gZGUgZmljaGllciBkYW5zIGxlcyBwYXF1ZXRzIGluc3RhbGzDqXMuIE9uIHBldXQgdXRpbGlzZXIgIgorImRhbnMgbGUgbW90aWYgdG91cyBsZXMgbcOpdGFjYXJhY3TDqHJlcyBkZSBsJ2ludGVycHLDqXRldXIgZGUgY29tbWFuZGVzLiBDZXR0ZSAiCisiY29tbWFuZGUgbmUgZG9ubmUgcGFzIGxlcyBmaWNoaWVycyBzdXBwbMOpbWVudGFpcmVzIGNyw6nDqXMgcGFyIGxlcyBzY3JpcHRzIGR1ICIKKyJyZXNwb25zYWJsZSBkZSBwYXF1ZXQsIG5pIGxlcyBhbHRlcm5hdGl2ZXMuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1xdWVyeS4xOjk5CisjLCBuby13cmFwCittc2dpZCAiQjwtcD4sIEI8LS1wcmludC1hdmFpbD4gSTxwYWNrYWdlLW5hbWU+Li4uIgorbXNnc3RyICJCPC1wPiwgQjwtLXByaW50LWF2YWlsPiBJPG5vbS1wYXF1ZXQ+Li4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6MTA1CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJEaXNwbGF5IGRldGFpbHMgYWJvdXQgSTxwYWNrYWdlLW5hbWU+LCBhcyBmb3VuZCBpbiBJPC92YXIvbGliL2Rwa2cvIgorI3wgImF2YWlsYWJsZT4uIFVzZXJzIG9mIEFQVC1iYXNlZCBmcm9udGVuZHMgc2hvdWxkIHVzZSBCPGFwdC1jYWNoZSBzaG93PiAiCisjfCAiSTxwYWNrYWdlLW5hbWU+IGluc3RlYWQgYXMgdGhlIEk8YXZhaWxhYmxlPiBmaWxlIGlzIG9ubHkga2VwdCB1cC10by1kYXRlICIKKyN8ICJ3aGVuIHVzaW5nIEI8ZHNlbGVjdD4uIgorbXNnaWQgIiIKKyJEaXNwbGF5IGRldGFpbHMgYWJvdXQgSTxwYWNrYWdlLW5hbWU+LCBhcyBmb3VuZCBpbiBJPC92YXIvbGliL2Rwa2cvIgorImF2YWlsYWJsZT4uIFdoZW4gbXVsdGlwbGUgSTxwYWNrYWdlLW5hbWU+IGFyZSBsaXN0ZWQsIHRoZSByZXF1ZXN0ZWQgIgorIkk8YXZhaWxhYmxlPiBlbnRyaWVzIGFyZSBzZXBhcmF0ZWQgYnkgYW4gZW1wdHkgbGluZS4iCittc2dzdHIgIiIKKyJBZmZpY2hlIGxlcyBkw6l0YWlscyByZWxhdGlmcyDDoCBJPG5vbS1wYXF1ZXQ+LCB0ZWxzIHF1ZSBwcsOpc2VudHMgZGFucyBJPC92YXIvIgorImxpYi9kcGtnL2F2YWlsYWJsZT4uIExlcyB1dGlsaXNhdGV1cnMgZGVzIG91dGlscyBiYXPDqXMgc3VyIEFQVCBkZXZyYWllbnQgIgorInBsdXTDtHQgdXRpbGlzZXIgbGEgY29tbWFuZGUgQjxhcHQtY2FjaGUgc2hvdz4gSTxub20tcGFxdWV0PiBjYXIgbGUgZmljaGllciAiCisiSTxhdmFpbGFibGU+IG4nZXN0IHRlbnUgw6Agam91ciBxdWUgbG9yc3F1ZSBCPGRzZWxlY3Q+IGVzdCB1dGlsaXPDqS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMToxMTAKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIkRpc3BsYXkgZGV0YWlscyBhYm91dCBJPHBhY2thZ2UtbmFtZT4sIGFzIGZvdW5kIGluIEk8L3Zhci9saWIvZHBrZy8iCisjfCAiYXZhaWxhYmxlPi4gVXNlcnMgb2YgQVBULWJhc2VkIGZyb250ZW5kcyBzaG91bGQgdXNlIEI8YXB0LWNhY2hlIHNob3c+ICIKKyN8ICJJPHBhY2thZ2UtbmFtZT4gaW5zdGVhZCBhcyB0aGUgSTxhdmFpbGFibGU+IGZpbGUgaXMgb25seSBrZXB0IHVwLXRvLWRhdGUgIgorI3wgIndoZW4gdXNpbmcgQjxkc2VsZWN0Pi4iCittc2dpZCAiIgorIlVzZXJzIG9mIEFQVC1iYXNlZCBmcm9udGVuZHMgc2hvdWxkIHVzZSBCPGFwdC1jYWNoZSBzaG93PiBJPHBhY2thZ2UtbmFtZT4gIgorImluc3RlYWQgYXMgdGhlIEk8YXZhaWxhYmxlPiBmaWxlIGlzIG9ubHkga2VwdCB1cC10by1kYXRlIHdoZW4gdXNpbmcgIgorIkI8ZHNlbGVjdD4uIgorbXNnc3RyICIiCisiQWZmaWNoZSBsZXMgZMOpdGFpbHMgcmVsYXRpZnMgw6AgSTxub20tcGFxdWV0PiwgdGVscyBxdWUgcHLDqXNlbnRzIGRhbnMgSTwvdmFyLyIKKyJsaWIvZHBrZy9hdmFpbGFibGU+LiBMZXMgdXRpbGlzYXRldXJzIGRlcyBvdXRpbHMgYmFzw6lzIHN1ciBBUFQgZGV2cmFpZW50ICIKKyJwbHV0w7R0IHV0aWxpc2VyIGxhIGNvbW1hbmRlIEI8YXB0LWNhY2hlIHNob3c+IEk8bm9tLXBhcXVldD4gY2FyIGxlIGZpY2hpZXIgIgorIkk8YXZhaWxhYmxlPiBuJ2VzdCB0ZW51IMOgIGpvdXIgcXVlIGxvcnNxdWUgQjxkc2VsZWN0PiBlc3QgdXRpbGlzw6kuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1xdWVyeS4xOjEyMgorIywgbm8td3JhcAorbXNnaWQgIkI8LWY+LCBCPC0tc2hvd2Zvcm1hdD0+STxmb3JtYXQ+IgorbXNnc3RyICJCPC1mPiwgQjwtLXNob3dmb3JtYXQ9Pkk8Zm9ybWF0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjEyOQorbXNnaWQgIkluIHRoZSBmb3JtYXQgc3RyaW5nLCBcXChscUI8XFxlPlxcKHJxIGludHJvZHVjZXMgZXNjYXBlczoiCittc2dzdHIgIkRhbnMgbGEgY2hhw65uZSwgXFwobHFCPFxcZT5cXChycSBkw6lzcMOpY2lmaWUgbGUgY2FyYWN0w6hyZSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjEzNAorIywgbm8td3JhcAorbXNnaWQgIiIKKyIgICAgQjxcXGVuPiAgbmV3bGluZVxuIgorIiAgICBCPFxcZXI+ICBjYXJyaWFnZSByZXR1cm5cbiIKKyIgICAgQjxcXGV0PiAgdGFiXG4iCittc2dzdHIgIiIKKyIgICAgQjxcXGVuPiAgbm91dmVsbGUgbGlnbmVcbiIKKyIgICAgQjxcXGVyPiAgcmV0b3VyIGNoYXJpb3RcbiIKKyIgICAgQjxcXGV0PiAgdGFidWxhdGlvblxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6MTM5Cittc2dpZCAiIgorIlxcKGxxQjxcXGU+XFwocnEgYmVmb3JlIGFueSBvdGhlciBjaGFyYWN0ZXIgc3VwcHJlc3NlcyBhbnkgc3BlY2lhbCBtZWFuaW5nICIKKyJvZiB0aGUgZm9sbG93aW5nIGNoYXJhY3Rlciwgd2hpY2ggaXMgdXNlZnVsIGZvciBcXChscUI8XFxlPlxcKHJxIGFuZCBcXChscUI8IgorIiQ+XFwocnEuIgorbXNnc3RyICIiCisiXFwobHFCPFxcZT5cXChycSBhdmFudCB1biBjYXJhY3TDqHJlIHN1cHByaW1lIGxhIHNpZ25pZmljYXRpb24gZHUgY2FyYWN0w6hyZSAiCisicXVpIHN1aXQuIEMnZXN0IHV0aWxlIHBvdXIgbGVzIGNhcmFjdMOocmVzIFxcKGxxQjxcXGU+XFwocnEgYW5kIFxcKGxxQjwkPiIKKyJcXChycS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMToxNDcKK21zZ2lkICIiCisiUGFja2FnZSBpbmZvcm1hdGlvbiBjYW4gYmUgaW5jbHVkZWQgYnkgaW5zZXJ0aW5nIHZhcmlhYmxlIHJlZmVyZW5jZXMgdG8gIgorInBhY2thZ2UgZmllbGRzIHVzaW5nIHRoZSBzeW50YXggXFwobHFCPCR7Pkk8ZmllbGQ+W0I8Oz5JPHdpZHRoPl1CPH0+XFwocnEuICIKKyJGaWVsZHMgYXJlIHByaW50ZWQgcmlnaHQtYWxpZ25lZCB1bmxlc3MgdGhlIHdpZHRoIGlzIG5lZ2F0aXZlIGluIHdoaWNoIGNhc2UgIgorImxlZnQgYWxpZ25tZW50IHdpbGwgYmUgdXNlZC4gVGhlIGZvbGxvd2luZyBJPGZpZWxkPnMgYXJlIHJlY29nbmlzZWQgYnV0IHRoZXkgIgorImFyZSBub3QgbmVjZXNzYXJpbHkgYXZhaWxhYmxlIGluIHRoZSBzdGF0dXMgZmlsZSAob25seSBpbnRlcm5hbCBmaWVsZHMgb3IgIgorImZpZWxkcyBzdG9yZWQgaW4gdGhlIGJpbmFyeSBwYWNrYWdlIGVuZCB1cCBpbiBpdCk6IgorbXNnc3RyICIiCisiTCdpbmZvcm1hdGlvbiByZWxhdGl2ZSDDoCB1biBwYXF1ZXQgcGV1dCDDqnRyZSBpbmRpcXXDqWUgZW4gaW5zw6lyYW50IGRlcyBhcHBlbHMgIgorImRlIHZhcmlhYmxlcyBzcMOpY2lmaWFudCBkZXMgY2hhbXBzIGR1IHBhcXVldCBhdmVjIGxhIHN5bnRheGUgc3VpdmFudGXCoDogIgorIlxcKGxxQjwkez5JPGZpZWxkPltCPDs+STx3aWR0aD5dQjx9PlxcKHJxLiBMZXMgY2hhbXBzIHNvbnQgYWxpZ27DqXMgw6AgZHJvaXRlLCAiCisiw6AgbW9pbnMgcXVlIGxhIGxhcmdldXIgbmUgc29pdCBuw6lnYXRpdmUsIGF1cXVlbCBjYXMgaWxzIHNvbnQgYWxpZ27DqXMgw6AgIgorImdhdWNoZS4gTGVzIGNoYW1wcyBzdWl2YW50cyBzb250IHJlY29ubnVzLCBtYWlzIHBhcyBuw6ljZXNzYWlyZW1lbnQgIgorImRpc3BvbmlibGVzIGRhbnMgbGUgZmljaGllciBkJ8OpdGF0IChzZXVscyBsZXMgY2hhbXBzIGludGVybmVzIG91IGxlcyBjaGFtcHMgIgorImNvbnNlcnbDqXMgYXZlYyBsZSBwYXF1ZXQgYmluYWlyZSBsZSBzb250KcKgOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjE4MgorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICIiCisjfCAiICAgIEI8QXJjaGl0ZWN0dXJlPlxuIgorI3wgIiAgICBCPEJ1Z3M+XG4iCisjfCAiICAgIEI8Q29uZmZpbGVzPiAoaW50ZXJuYWwpXG4iCisjfCAiICAgIEI8Q29uZmlnLVZlcnNpb24+IChpbnRlcm5hbClcbiIKKyN8ICIgICAgQjxDb25mbGljdHM+XG4iCisjfCAiICAgIEI8QnJlYWtzPlxuIgorI3wgIiAgICBCPERlcGVuZHM+XG4iCisjfCAiICAgIEI8RGVzY3JpcHRpb24+XG4iCisjfCAiICAgIEI8RW5oYW5jZXM+XG4iCisjfCAiICAgIEI8RXNzZW50aWFsPlxuIgorI3wgIiAgICBCPEZpbGVuYW1lPiAoaW50ZXJuYWwsIGRzZWxlY3QgcmVsYXRlZClcbiIKKyN8ICIgICAgQjxIb21lcGFnZT5cbiIKKyN8ICIgICAgQjxJbnN0YWxsZWQtU2l6ZT5cbiIKKyN8ICIgICAgQjxNRDVzdW0+IChpbnRlcm5hbCwgZHNlbGVjdCByZWxhdGVkKVxuIgorI3wgIiAgICBCPE1TRE9TLUZpbGVuYW1lPiAoaW50ZXJuYWwsIGRzZWxlY3QgcmVsYXRlZClcbiIKKyN8ICIgICAgQjxNYWludGFpbmVyPlxuIgorI3wgIiAgICBCPE9yaWdpbj5cbiIKKyN8ICIgICAgQjxQYWNrYWdlPlxuIgorI3wgIiAgICBCPFByZS1EZXBlbmRzPlxuIgorI3wgIiAgICBCPFByaW9yaXR5PlxuIgorI3wgIiAgICBCPFByb3ZpZGVzPlxuIgorI3wgIiAgICBCPFJlY29tbWVuZHM+XG4iCisjfCAiICAgIEI8UmVwbGFjZXM+XG4iCisjfCAiICAgIEI8UmV2aXNpb24+IChvYnNvbGV0ZSlcbiIKKyN8ICIgICAgQjxTZWN0aW9uPlxuIgorI3wgIiAgICBCPFNpemU+IChpbnRlcm5hbCwgZHNlbGVjdCByZWxhdGVkKVxuIgorI3wgIiAgICBCPFNvdXJjZT5cbiIKKyN8ICIgICAgQjxTdGF0dXM+IChpbnRlcm5hbClcbiIKKyN8ICIgICAgQjxTdWdnZXN0cz5cbiIKKyN8ICIgICAgQjxUYWc+ICh1c3VhbGx5IG5vdCBpbiB0aGUgLmRlYiBidXQgaW4gQVBUJ3MgUGFja2FnZXMgZmlsZXMpXG4iCisjfCAiICAgIEI8VHJpZ2dlcnMtQXdhaXRlZD4gKGludGVybmFsKVxuIgorI3wgIiAgICBCPFRyaWdnZXJzLVBlbmRpbmc+IChpbnRlcm5hbClcbiIKKyN8ICIgICAgQjxWZXJzaW9uPlxuIgorbXNnaWQgIiIKKyIgICAgQjxBcmNoaXRlY3R1cmU+XG4iCisiICAgIEI8QnVncz5cbiIKKyIgICAgQjxDb25mZmlsZXM+IChpbnRlcm5hbClcbiIKKyIgICAgQjxDb25maWctVmVyc2lvbj4gKGludGVybmFsKVxuIgorIiAgICBCPENvbmZsaWN0cz5cbiIKKyIgICAgQjxCcmVha3M+XG4iCisiICAgIEI8RGVwZW5kcz5cbiIKKyIgICAgQjxEZXNjcmlwdGlvbj5cbiIKKyIgICAgQjxFbmhhbmNlcz5cbiIKKyIgICAgQjxFc3NlbnRpYWw+XG4iCisiICAgIEI8RmlsZW5hbWU+IChpbnRlcm5hbCwgZnJvbnQtZW5kIHJlbGF0ZWQpXG4iCisiICAgIEI8SG9tZXBhZ2U+XG4iCisiICAgIEI8SW5zdGFsbGVkLVNpemU+XG4iCisiICAgIEI8TUQ1c3VtPiAoaW50ZXJuYWwsIGZyb250LWVuZCByZWxhdGVkKVxuIgorIiAgICBCPE1TRE9TLUZpbGVuYW1lPiAoaW50ZXJuYWwsIGZyb250LWVuZCByZWxhdGVkKVxuIgorIiAgICBCPE1haW50YWluZXI+XG4iCisiICAgIEI8T3JpZ2luPlxuIgorIiAgICBCPFBhY2thZ2U+XG4iCisiICAgIEI8UHJlLURlcGVuZHM+XG4iCisiICAgIEI8UHJpb3JpdHk+XG4iCisiICAgIEI8UHJvdmlkZXM+XG4iCisiICAgIEI8UmVjb21tZW5kcz5cbiIKKyIgICAgQjxSZXBsYWNlcz5cbiIKKyIgICAgQjxSZXZpc2lvbj4gKG9ic29sZXRlKVxuIgorIiAgICBCPFNlY3Rpb24+XG4iCisiICAgIEI8U2l6ZT4gKGludGVybmFsLCBmcm9udC1lbmQgcmVsYXRlZClcbiIKKyIgICAgQjxTb3VyY2U+XG4iCisiICAgIEI8U3RhdHVzPiAoaW50ZXJuYWwpXG4iCisiICAgIEI8U3VnZ2VzdHM+XG4iCisiICAgIEI8VGFnPiAodXN1YWxseSBub3QgaW4gdGhlIC5kZWIgYnV0IGluIHRoZSByZXBvc2l0b3J5IFBhY2thZ2VzIGZpbGVzKVxuIgorIiAgICBCPFRyaWdnZXJzLUF3YWl0ZWQ+IChpbnRlcm5hbClcbiIKKyIgICAgQjxUcmlnZ2Vycy1QZW5kaW5nPiAoaW50ZXJuYWwpXG4iCisiICAgIEI8VmVyc2lvbj5cbiIKK21zZ3N0ciAiIgorIiAgICBCPEFyY2hpdGVjdHVyZT5cbiIKKyIgICAgQjxCdWdzPlxuIgorIiAgICBCPENvbmZmaWxlcz4gKGludGVybmUpXG4iCisiICAgIEI8Q29uZmlnLVZlcnNpb24+IChpbnRlcm5lKVxuIgorIiAgICBCPENvbmZsaWN0cz5cbiIKKyIgICAgQjxCcmVha3M+XG4iCisiICAgIEI8RGVwZW5kcz5cbiIKKyIgICAgQjxEZXNjcmlwdGlvbj5cbiIKKyIgICAgQjxFbmhhbmNlcz5cbiIKKyIgICAgQjxFc3NlbnRpYWw+XG4iCisiICAgIEI8RmlsZW5hbWU+IChpbnRlcm5lLCBsacOpIMOgIGRzZWxlY3QpXG4iCisiICAgIEI8SG9tZXBhZ2U+XG4iCisiICAgIEI8SW5zdGFsbGVkLVNpemU+XG4iCisiICAgIEI8TUQ1c3VtPiAoaW50ZXJuZSwgbGnDqSDDoCBkc2VsZWN0KVxuIgorIiAgICBCPE1TRE9TLUZpbGVuYW1lPiAoaW50ZXJuZSwgbGnDqSDDoCBkc2VsZWN0KVxuIgorIiAgICBCPE1haW50YWluZXI+XG4iCisiICAgIEI8T3JpZ2luPlxuIgorIiAgICBCPFBhY2thZ2U+XG4iCisiICAgIEI8UHJlLURlcGVuZHM+XG4iCisiICAgIEI8UHJpb3JpdHk+XG4iCisiICAgIEI8UHJvdmlkZXM+XG4iCisiICAgIEI8UmVjb21tZW5kcz5cbiIKKyIgICAgQjxSZXBsYWNlcz5cbiIKKyIgICAgQjxSZXZpc2lvbj4gKG9ic29sw6h0ZSlcbiIKKyIgICAgQjxTZWN0aW9uPlxuIgorIiAgICBCPFNpemU+IChpbnRlcm5lLCBsacOpIMOgIGRzZWxlY3QpXG4iCisiICAgIEI8U291cmNlPlxuIgorIiAgICBCPFN0YXR1cz4gKGludGVybmUpXG4iCisiICAgIEI8U3VnZ2VzdHM+XG4iCisiICAgIEI8VGFnPiAocGFzIGRhbnMgbGUgLmRlYiBtYWlzIGRhbnMgbGVzIGZpY2hpZXJzIFBhY2thZ2VzIGQnQVBUKVxuIgorIiAgICBCPFRyaWdnZXJzLUF3YWl0ZWQ+IChpbnRlcm5lKVxuIgorIiAgICBCPFRyaWdnZXJzLVBlbmRpbmc+IChpbnRlcm5lKVxuIgorIiAgICBCPFZlcnNpb24+XG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMToxOTAKK21zZ2lkICIiCisiVGhlIGRlZmF1bHQgZm9ybWF0IHN0cmluZyBpcyBcXChscUI8JHtQYWNrYWdlfVxcZXQke1ZlcnNpb259XFxlbj5cXChycS4gICIKKyJBY3R1YWxseSwgYWxsIG90aGVyIGZpZWxkcyBmb3VuZCBpbiB0aGUgc3RhdHVzIGZpbGUgKGkuZS4gdXNlciBkZWZpbmVkICIKKyJmaWVsZHMpIGNhbiBiZSByZXF1ZXN0ZWQsIHRvby4gVGhleSB3aWxsIGJlIHByaW50ZWQgYXMtaXMsIHRob3VnaCwgbm8gIgorImNvbnZlcnNpb24gbm9yIGVycm9yIGNoZWNraW5nIGlzIGRvbmUgb24gdGhlbS4gIFRvIGdldCB0aGUgbmFtZSBvZiB0aGUgZHBrZyAiCisibWFpbnRhaW5lciBhbmQgdGhlIGluc3RhbGxlZCB2ZXJzaW9uLCB5b3UgY291bGQgcnVuOiIKK21zZ3N0ciAiIgorIkxlIGZvcm1hdCBwYXIgZMOpZmF1dCBlc3QgbGUgc3VpdmFudMKgOiBcXChscUI8JHtQYWNrYWdlfVxcZXQke1ZlcnNpb259XFxlbj4iCisiXFwocnEuIFRvdXMgbGVzIGF1dHJlcyBjaGFtcHMgZHUgZmljaGllciBzdGF0dXMsIHBhciBleGVtcGxlIGRlcyBjaGFtcHMgIgorImTDqWZpbmlzIHBhciBsJ3V0aWxpc2F0ZXVyLCBwZXV2ZW50IMOqdHJlIGRlbWFuZMOpcy4gSWxzIHNlcm9udCBhZmZpY2jDqXMgbWFpcyAiCisic2FucyBhdWN1bmUgbWlzZSBlbiBmb3JtZSBldCBhdWN1bmUgdsOpcmlmaWNhdGlvbiBuJ2VzdCBmYWl0ZS4gUG91ciBvYnRlbmlyICIKKyJsZSBub20gZHUgcmVzcG9uc2FibGUgZGUgZHBrZyBldCBsYSB2ZXJzaW9uIGluc3RhbGzDqWUsIGV4w6ljdXRleiBwYXIgZXhlbXBsZcKgOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjE5MworIywgbm8td3JhcAorbXNnaWQgIiAgQjxkcGtnLXF1ZXJ5IC1XIC1mPVxcKGFxJHtQYWNrYWdlfSAke1ZlcnNpb259XFxldCR7TWFpbnRhaW5lcn1cXGVuXFwoYXEgZHBrZz5cbiIKK21zZ3N0ciAiICBCPGRwa2ctcXVlcnkgLVcgLWY9XFwoYXEke1BhY2thZ2V9ICR7VmVyc2lvbn1cXGV0JHtNYWludGFpbmVyfVxcZW5cXChhcSBkcGtnPlxuIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1xdWVyeS4xOjE5NSBkcGtnLXNwbGl0LjE6MTc5IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjU5CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6Mzc0CisjLCBuby13cmFwCittc2dpZCAiRVhJVCBTVEFUVVMiCittc2dzdHIgIkNPREUgREUgU09SVElFIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1xdWVyeS4xOjE5NiBkcGtnLXNwbGl0LjE6MTgwIHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjYwCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjI4OSB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6Mzc1CisjLCBuby13cmFwCittc2dpZCAiQjwwPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6MTk5Cittc2dpZCAiVGhlIHJlcXVlc3RlZCBxdWVyeSB3YXMgc3VjY2Vzc2Z1bGx5IHBlcmZvcm1lZC4iCittc2dzdHIgIkxhIHJlcXXDqnRlIGRlbWFuZMOpZSBzJ2VzdCBjb3JyZWN0ZW1lbnQgZMOpcm91bMOpZS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXF1ZXJ5LjE6MTk5IGRwa2ctc3BsaXQuMToxODYgc3RhcnQtc3RvcC1kYWVtb24uODoyNzAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjkyCisjLCBuby13cmFwCittc2dpZCAiQjwxPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6MjAzCittc2dpZCAiIgorIlByb2JsZW1zIHdlcmUgZW5jb3VudGVyZWQgd2hpbGUgcGFyc2luZyB0aGUgY29tbWFuZCBsaW5lIG9yIHBlcmZvcm1pbmcgdGhlICIKKyJxdWVyeSwgaW5jbHVkaW5nIG5vIGZpbGUgb3IgcGFja2FnZSBiZWluZyBmb3VuZCAoZXhjZXB0IGZvciAtLWNvbnRyb2wtcGF0aCkuIgorbXNnc3RyICIiCisiRGVzIHByb2Jsw6htZXMgc29udCBzdXJ2ZW51cyBsb3JzIGRlIGwnYW5hbHlzZSBkZSBsYSBsaWduZSBkZSBjb21tYW5kZSBvdSAiCisiYmllbiBwZW5kYW50IGwnZXjDqWN1dGlvbiBkZSBsYSByZXF1w6p0ZS4gQ2VsYSBwZXV0IMOqdHJlIHVuZSBhYnNlbmNlIGRlICIKKyJmaWNoaWVyIG91IGRlIHBhcXVldCAoc2F1ZiBwb3VyIC0tY29udHJvbC1wYXRoKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMToyMTMKK21zZ2lkICIiCisiVGhpcyBzZXR0aW5nIGluZmx1ZW5jZXMgdGhlIG91dHB1dCBvZiB0aGUgQjwtLWxpc3Q+IG9wdGlvbiBieSBjaGFuZ2luZyB0aGUgIgorIndpZHRoIG9mIGl0cyBvdXRwdXQuIgorbXNnc3RyICIiCisiQ2UgcsOpZ2xhZ2UgaW5mbHVlbmNlIGxhIHNvcnRpZSBkZSBsJ29wdGlvbiBCPC0tbGlzdD4gZW4gbW9kaWZpYW50IGxhIGxhcmdldXIgIgorImQnYWZmaWNoYWdlLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjIxNgorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDAxIFdpY2hlcnQgQWtrZXJtYW4iCittc2dzdHIgIkNvcHlyaWdodCBcXChjbyAyMDAxIFdpY2hlcnQgQWtrZXJtYW4iCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjE1CisjLCBuby13cmFwCittc2dpZCAiZHBrZy1zY2FucGFja2FnZXMiCittc2dzdHIgImRwa2ctc2NhbnBhY2thZ2VzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjE4Cittc2dpZCAiZHBrZy1zY2FucGFja2FnZXMgLSBjcmVhdGUgUGFja2FnZXMgaW5kZXggZmlsZXMiCittc2dzdHIgImRwa2ctc2NhbnBhY2thZ2VzIC0gY3LDqWVyIGRlcyBmaWNoaWVycyBkJ2luZGV4IGRlIHBhcXVldHMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjI2CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJCPGRwa2ctc2NhbnBhY2thZ2VzPiBbSTxvcHRpb25zPl0gSTxiaW5hcnktZGlyPiBbSTxvdmVycmlkZS1maWxlPiBbSTxwYXRoLSIKKyN8ICJwcmVmaXg+XV0gQjxFPGd0Pj4gSTxQYWNrYWdlcz4iCittc2dpZCAiIgorIkI8ZHBrZy1zY2FucGFja2FnZXM+IFtJPG9wdGlvbj4uLi5dIEk8YmluYXJ5LWRpcj4gW0k8b3ZlcnJpZGUtZmlsZT4gW0k8cGF0aC0iCisicHJlZml4Pl1dIEI8RTxndD4+IEk8UGFja2FnZXM+IgorbXNnc3RyICIiCisiQjxkcGtnLXNjYW5wYWNrYWdlcz4gW0k8b3B0aW9ucz5dIEk8cmVwLWRlLWJpbmFpcmVzPiBbSTxmaWNoaWVyLW92ZXJyaWRlPiAiCisiW0k8Y2hlbWluLcOgLXByw6lmaXhlcj5dXSBCPEU8Z3Q+PiBJPFBhY2thZ2VzPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2FucGFja2FnZXMuMTozOQorbXNnaWQgIiIKKyJCPGRwa2ctc2NhbnBhY2thZ2VzPiBzb3J0cyB0aHJvdWdoIGEgdHJlZSBvZiBEZWJpYW4gYmluYXJ5IHBhY2thZ2VzIGFuZCAiCisiY3JlYXRlcyBhIFBhY2thZ2VzIGZpbGUsIHVzZWQgYnkgQjxhcHQ+KDgpLCBCPGRzZWxlY3Q+KDEpLCBldGMsIHRvIHRlbGwgdGhlICIKKyJ1c2VyIHdoYXQgcGFja2FnZXMgYXJlIGF2YWlsYWJsZSBmb3IgaW5zdGFsbGF0aW9uLiBUaGVzZSBQYWNrYWdlcyBmaWxlcyBhcmUgIgorInRoZSBzYW1lIGFzIHRob3NlIGZvdW5kIG9uIERlYmlhbiBhcmNoaXZlIHNpdGVzIGFuZCBDRC1ST01zLiBZb3UgbWlnaHQgdXNlICIKKyJCPGRwa2ctc2NhbnBhY2thZ2VzPiB5b3Vyc2VsZiBpZiBtYWtpbmcgYSBkaXJlY3Rvcnkgb2YgbG9jYWwgcGFja2FnZXMgdG8gIgorImluc3RhbGwgb24gYSBjbHVzdGVyIG9mIG1hY2hpbmVzLiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1zY2FucGFja2FnZXM+IHRyaWUgdW5lIGFyYm9yZXNjZW5jZSBjb250ZW5hbnQgZGVzIHBhcXVldHMgYmluYWlyZXMgIgorIkRlYmlhbiBldCBjcsOpZSB1biBmaWNoaWVyIMKrwqBQYWNrYWdlc8KgwrsgcXVpIHBlcm1ldHRyYSDDoCBCPGFwdD4oOCksIEI8ZHNlbGVjdD4iCisiKDEpLCBvdSDDoCB1biBhdXRyZSBwcm9ncmFtbWUsIGRlIHNhdm9pciBxdWVscyBzb250IGxlcyBwYXF1ZXRzIGluc3RhbGxhYmxlcy4gIgorIkNlcyBmaWNoaWVycyDCq8KgUGFja2FnZXPCoMK7IHNvbnQgc2VtYmxhYmxlcyDDoCBjZXV4IHF1J29uIHBldXQgdHJvdXZlciBzdXIgbGVzICIKKyJzaXRlcyBkJ2FyY2hpdmVzIERlYmlhbiBvdSBzdXIgZGVzIENELiBRdWFuZCBvbiBjcsOpZSB1biByw6lwZXJ0b2lyZSBjb250ZW5hbnQgIgorImRlcyBwYXF1ZXRzIHF1J29uIHZldXQgaW5zdGFsbGVyIHN1ciB1biBlbnNlbWJsZSBkZSBtYWNoaW5lcywgb24gcGV1dCBzZSAiCisic2VydmlyIHNvaS1tw6ptZSBkZSBCPGRwa2ctc2NhbnBhY2thZ2VzPi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6NTEKK21zZ2lkICIiCisiQjxOb3RlOj4gSWYgeW91IHdhbnQgdG8gYWNjZXNzIHRoZSBnZW5lcmF0ZWQgUGFja2FnZXMgZmlsZSB3aXRoIEI8YXB0PiB5b3UgIgorIndpbGwgcHJvYmFibHkgbmVlZCB0byBjb21wcmVzcyB0aGUgZmlsZSB3aXRoIEI8YnppcDI+KDEpICAoZ2VuZXJhdGluZyBhICIKKyJQYWNrYWdlcy5iejIgZmlsZSkgb3IgQjxnemlwPigxKSAgKGdlbmVyYXRpbmcgYSBQYWNrYWdlcy5neiBmaWxlKS4gYXB0ICIKKyJpZ25vcmVzIHVuY29tcHJlc3NlZCBQYWNrYWdlcyBmaWxlcyBleGNlcHQgb24gbG9jYWwgYWNjZXNzIChpLmUuICBCPGZpbGU6Ly8+ICIKKyJzb3VyY2VzKS4iCittc2dzdHIgIiIKKyJCPE5vdGXCoDo+IFBvdXIgcG91dm9pciBhY2PDqWRlciBhdmVjIEI8YXB0PiBhdSBmaWNoaWVyIFBhY2thZ2VzIGNyw6nDqSwgaWwgIgorImZhdWRyYSBzYW5zIGRvdXRlIGxlIGNvbXByZXNzZXIgYXZlYyBCPGJ6aXAyPigxKSAocXVpIGNyw6llIHVuIGZpY2hpZXIgIgorIlBhY2thZ2VzLmJ6Mikgb3UgQjxnemlwPigxKSAocXVpIGNyw6llIHVuIGZpY2hpZXIgUGFja2FnZXMuZ3opLiBhcHQgaWdub3JlICIKKyJsZXMgZmljaGllcnMgUGFja2FnZXMgbm9uIGNvbXByZXNzw6lzLCBzYXVmIHBvdXIgZGVzIHNvdXJjZXMgbG9jYWxlcyAoY2FkICIKKyJCPGZpbGU6Ly8+KS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6NTgKK21zZ2lkICIiCisiSTxiaW5hcnlkaXI+IGlzIHRoZSBuYW1lIG9mIHRoZSB0cmVlIG9mIHRoZSBiaW5hcnkgcGFja2FnZXMgdG8gcHJvY2VzcyAoZm9yICIKKyJleGFtcGxlLCBCPGNvbnRyaWIvYmluYXJ5LWkzODY+KS4gIEl0IGlzIGJlc3QgdG8gbWFrZSB0aGlzIHJlbGF0aXZlIHRvIHRoZSAiCisicm9vdCBvZiB0aGUgRGViaWFuIGFyY2hpdmUsIGJlY2F1c2UgZXZlcnkgRmlsZW5hbWUgZmllbGQgaW4gdGhlIG5ldyBQYWNrYWdlcyAiCisiZmlsZSB3aWxsIHN0YXJ0IHdpdGggdGhpcyBzdHJpbmcuIgorbXNnc3RyICIiCisiSTxyZXAtZGUtYmluYWlyZXM+IGVzdCBsZSBub20gZGUgbCdhcmJvcmVzY2VuY2UgZGVzIHBhcXVldHMgYmluYWlyZXMgKHBhciAiCisiZXhlbXBsZSBCPGNvbnRyaWIvYmluYXJ5LWkzODYpPiBxdWUgbCdvbiB2ZXV0IHRyYWl0ZXIuIElsIHZhdXQgbWlldXggcXUnZWxsZSAiCisic29pdCByZWxhdGl2ZSDDoCBsYSByYWNpbmUgZGUgbCdhcmNoaXZlIERlYmlhbsKgOyBhaW5zaSBjaGFxdWUgY2hhbXAgIgorIsKrwqBGaWxlbmFtZcKgwrsgZGFucyBsZSBub3V2ZWF1IGZpY2hpZXIgwqvCoFBhY2thZ2VzwqDCuyBjb21tZW5jZXJhIHBhciBjZXR0ZSAiCisiY2hhw65uZS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6NjMKK21zZ2lkICIiCisiSTxvdmVycmlkZWZpbGU+IGlzIHRoZSBuYW1lIG9mIGEgZmlsZSB0byByZWFkIHdoaWNoIGNvbnRhaW5zIGluZm9ybWF0aW9uICIKKyJhYm91dCBob3cgdGhlIHBhY2thZ2UgZml0cyBpbnRvIHRoZSBkaXN0cmlidXRpb24gKGl0IGNhbiBiZSBhIGNvbXByZXNzZWQgIgorImZpbGUpOyBzZWUgQjxkZWItb3ZlcnJpZGU+KDUpLiIKK21zZ3N0ciAiIgorIkk8ZmljaGllci1kJy1vdmVycmlkZT4gZXN0IGxlIG5vbSBkdSBmaWNoaWVyIHF1aSBjb250aWVudCBsZXMgcmVuc2VpZ25lbWVudHMgIgorInN1ciBsYSBtYW5pw6hyZSBkb250IGxlIHBhcXVldCBzJ2luc8OocmUgZGFucyBsYSBkaXN0cmlidXRpb24gKGNlIGZpY2hpZXIgcGV1dCAiCisiw6p0cmUgY29tcHJlc3PDqSnCoDsgdm9pciBCPGRlYi1vdmVycmlkZT4oNSkuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjY2Cittc2dpZCAiIgorIkk8cGF0aHByZWZpeD4gaXMgYW4gb3B0aW9uYWwgc3RyaW5nIHRvIGJlIHByZXBlbmRlZCB0byB0aGUgRmlsZW5hbWUgZmllbGRzLiIKK21zZ3N0ciAiIgorIkk8Y2hlbWluLcOgLXByw6lmaXhlcj4gZXN0IHVuZSBjaGHDrm5lIGZhY3VsdGF0aXZlIHF1aSBwcsOpZml4ZXJhIGxlcyBjaGFtcHMgIgorIsKrwqBGaWxlbmFtZcKgwrsuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjcwCittc2dpZCAiIgorIklmIG1vcmUgdGhhbiBvbmUgdmVyc2lvbiBvZiBhIHBhY2thZ2UgaXMgZm91bmQgb25seSB0aGUgbmV3ZXN0IG9uZSBpcyAiCisiaW5jbHVkZWQgaW4gdGhlIG91dHB1dC4gSWYgdGhleSBoYXZlIHRoZSBzYW1lIHZlcnNpb24gYW5kIG9ubHkgZGlmZmVyIGluICIKKyJhcmNoaXRlY3R1cmUgb25seSB0aGUgZmlyc3Qgb25lIGZvdW5kIGlzIHVzZWQuIgorbXNnc3RyICIiCisiUydpbCBleGlzdGUgcGx1c2lldXJzIHZlcnNpb25zIGQndW4gcGFxdWV0LCBzZXVsZSBsYSBwbHVzIHLDqWNlbnRlIGVzdCAiCisiYWZmaWNow6llIGVuIHNvcnRpZS4gU2kgbGVzIHBhcXVldHMgb250IGxhIG3Dqm1lIHZlcnNpb24gbWFpcyBkaWZmw6hyZW50IHBhciAiCisibCdhcmNoaXRlY3R1cmUsIHNldWwgbGUgcHJlbWllciB0cm91dsOpIGVzdCB1dGlsaXPDqS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjcyCisjLCBuby13cmFwCittc2dpZCAiQjwtdD4sIEI8LS10eXBlPiBJPHR5cGU+IgorbXNnc3RyICJCPC10PiwgQjwtLXR5cGU+IEk8dHlwZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6NzUKK21zZ2lkICJTY2FuIGZvciAqLkk8dHlwZT4gcGFja2FnZXMsIGluc3RlYWQgb2YgKi5kZWIuIgorbXNnc3RyICJSZWNoZXJjaGUgZGVzIGZpY2hpZXJzICouSTx0eXBlPiwgcGx1dMO0dCBxdWUgSTwqLmRlYj4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zY2FucGFja2FnZXMuMTo3NQorIywgbm8td3JhcAorbXNnaWQgIkI8LXU+LCBCPC0tdWRlYj4iCittc2dzdHIgIkI8LXU+LCBCPC0tdWRlYj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6NzgKK21zZ2lkICJCPE9ic29sZXRlPiBhbGlhcyBmb3IgQjwtdHVkZWI+LiIKK21zZ3N0ciAiQWxpYXMgQjxvYnNvbGV0ZT4gcG91ciBCPC10dWRlYj4uIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1zY2FucGFja2FnZXMuMTo3OCBkcGtnLXNjYW5zb3VyY2VzLjE6NDkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1lPiwgQjwtLWV4dHJhLW92ZXJyaWRlPiBJPGZpbGU+IgorbXNnc3RyICJCPC1lPiwgQjwtLWV4dHJhLW92ZXJyaWRlPiBJPGZpY2hpZXI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjg0IGRwa2ctc2NhbnNvdXJjZXMuMTo1NAorbXNnaWQgIiIKKyJTY2FuIEk8ZmlsZT4gdG8gZmluZCBzdXBwbGVtZW50YXJ5IG92ZXJyaWRlcyAodGhlIGZpbGUgY2FuIGJlIGNvbXByZXNzZWQpLiAiCisiU2VlIEI8ZGViLWV4dHJhLW92ZXJyaWRlPig1KSAgZm9yIG1vcmUgaW5mb3JtYXRpb24gb24gaXRzIGZvcm1hdC4iCittc2dzdHIgIiIKKyJFeGFtaW5lIEk8ZmljaGllcj4gw6AgbGEgcmVjaGVyY2hlIGQnwqvCoG92ZXJyaWRlc8Kgwrsgc3VwcGzDqW1lbnRhaXJlcyAoY2UgIgorImZpY2hpZXIgcGV1dCDDqnRyZSBjb21wcmVzc8OpKS4gVm9pciBCPGRlYi1leHRyYS1vdmVycmlkZT4oNSkgcG91ciBwbHVzICIKKyJkJ2luZm9ybWF0aW9uIHN1ciBsZSBmb3JtYXQgdXRpbGlzw6kuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zY2FucGFja2FnZXMuMTo4NAorIywgbm8td3JhcAorbXNnaWQgIkI8LWE+LCBCPC0tYXJjaD4gSTxhcmNoPiIKK21zZ3N0ciAiQjwtYT4sIEI8LS1hcmNoPiBJPGFyY2g+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjg4Cittc2dpZCAiIgorIlVzZSBhIHBhdHRlcm4gY29uc2lzdGluZyBvZiBJPCpfYWxsLmRlYj4gYW5kIEk8Kl9hcmNoLmRlYj4gaW5zdGVhZCBvZiAiCisic2Nhbm5pbmcgZm9yIGFsbCBkZWJzLiIKK21zZ3N0ciAiIgorIlV0aWxpc2VyIHVuIG1vdGlmIMOpcXVpdmFsZW50IMOgIEk8Kl9hbGwuZGViPiBldCDDoCBJPCpfYXJjaC5kZWI+LCBwbHV0w7R0IHF1ZSAiCisiZGUgcmVjaGVyY2hlciB0b3VzIGxlcyBmaWNoaWVycyBkZWJzLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6ODgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1tPiwgQjwtLW11bHRpdmVyc2lvbj4iCittc2dzdHIgIkI8LW0+LCBCPC0tbXVsdGl2ZXJzaW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2FucGFja2FnZXMuMTo5MQorbXNnaWQgIkluY2x1ZGUgYWxsIGZvdW5kIHBhY2thZ2VzIGluIHRoZSBvdXRwdXQuIgorbXNnc3RyICJBZmZpY2hlIHRvdXMgbGVzIHBhcXVldHMgdHJvdXbDqXMgZW4gc29ydGllLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6OTEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1NPiwgQjwtLW1lZGl1bT4gSTxpZC1zdHJpbmc+IgorbXNnc3RyICJCPC1NPiwgQjwtLW1lZGl1bT4gSTxpZC1jaGHDrm5lPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2FucGFja2FnZXMuMTo5NgorbXNnaWQgIiIKKyJBZGQgYW4gWC1NZWRpdW0gZmllbGQgY29udGFpbmluZyB0aGUgdmFsdWUgSTxpZC1zdHJpbmc+LiBUaGlzIGZpZWxkIGlzICIKKyJyZXF1aXJlZCBpZiB5b3Ugd2FudCB0byBnZW5lcmF0ZSBCPFBhY2thZ2VzLmNkPiBmaWxlcyBmb3IgdXNlIGJ5IHRoZSBtdWx0aWNkICIKKyJhY2Nlc3MgbWV0aG9kIG9mIGRzZWxlY3QuIgorbXNnc3RyICIiCisiQWpvdXRlIHVuIGNoYW1wIFgtTWVkaXVtIHF1aSBjb250aWVudCBsYSB2YWxldXIgSTxpZC1jaGHDrm5lPi4gQ2UgY2hhbXAgZXN0ICIKKyJvYmxpZ2F0b2lyZSBzaSB2b3VzIHZvdWxleiBjcsOpZXIgZGVzIGZpY2hpZXJzIEI8UGFja2FnZXMuY2Q+IGZpbGVzIGRlc3RpbsOpcyAiCisiw6Agw6p0cmUgdXRpbGlzw6lzIGF2ZWMgbGEgbcOpdGhvZGUgbXVsdGljZCBkZSBkc2VsZWN0LiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6MTAzIHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0NDgKKyMsIG5vLXdyYXAKK21zZ2lkICJESUFHTk9TVElDUyIKK21zZ3N0ciAiRElBR05PU1RJQ1MiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6MTA5Cittc2dpZCAiIgorIkI8ZHBrZy1zY2FucGFja2FnZXM+IG91dHB1dHMgdGhlIHVzdWFsIHNlbGYtZXhwbGFuYXRvcnkgZXJyb3JzLiBJdCBhbHNvICIKKyJ3YXJucyBhYm91dCBwYWNrYWdlcyB0aGF0IGFyZSBpbiB0aGUgd3Jvbmcgc3ViZGlyZWN0b3J5LCBhcmUgZHVwbGljYXRlZCwgIgorImhhdmUgYSBGaWxlbmFtZSBmaWVsZCBpbiB0aGVpciBjb250cm9sIGZpbGUsIGFyZSBtaXNzaW5nIGZyb20gdGhlIG92ZXJyaWRlICIKKyJmaWxlLCBvciBoYXZlIG1haW50YWluZXIgc3Vic3RpdHV0aW9ucyB3aGljaCBkbyBub3QgdGFrZSBlZmZlY3QuIgorbXNnc3RyICIiCisiQjxkcGtnLXNjYW5wYWNrYWdlcz4gYWZmaWNoZSBsZXMgZXJyZXVycyBoYWJpdHVlbGxlcyBxdWkgc2UgY29tcHJlbm5lbnQgIgorImQnZWxsZXMtbcOqbWVzLiBJbCBhZmZpY2hlIGF1c3NpIGRlcyBhdmVydGlzc2VtZW50cyBxdWFuZCBkZXMgcGFxdWV0cyBzb250ICIKKyJkYW5zIHVuIG1hdXZhaXMgc291cy1yw6lwZXJ0b2lyZSwgZXhpc3RlbnQgZW4gZG91YmxlIGV4ZW1wbGFpcmUsIG9udCBkZXMgIgorImNoYW1wcyDCq8KgRmlsZW5hbWXCoMK7IGRhbnMgbGV1ciBmaWNoaWVyIMKrwqBjb250cm9swqDCuywgc29udCBhYnNlbnRzIGR1IGZpY2hpZXIgIgorIsKrwqBvdmVycmlkZcKgwrsgb3UgYmllbiBkb250IGxlcyBzdWJzdGl0dXRpb25zIGRlIHJlc3BvbnNhYmxlIG5lIHBldXZlbnQgcGFzICIKKyJzJ2FwcGxpcXVlci4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6MTE1Cittc2dpZCAiIgorIkI8ZHBrZz4oMSksIEI8ZHNlbGVjdD4oMSksIEI8ZGViLW92ZXJyaWRlPig1KSwgQjxkZWItZXh0cmEtb3ZlcnJpZGU+KDUpLCAiCisiQjxkcGtnLXNjYW5zb3VyY2VzPigxKS4iCittc2dzdHIgIiIKKyJCPGRwa2c+KDEpLCBCPGRzZWxlY3Q+KDEpLCBCPGRlYi1vdmVycmlkZT4oNSksIEI8ZGViLWV4dHJhLW92ZXJyaWRlPig1KSwgIgorIkI8ZHBrZy1zY2Fuc291cmNlcz4oMSkuIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1zY2Fuc291cmNlcy4xOjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLXNjYW5zb3VyY2VzIgorbXNnc3RyICJkcGtnLXNjYW5zb3VyY2VzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6NAorbXNnaWQgImRwa2ctc2NhbnNvdXJjZXMgLSBjcmVhdGUgU291cmNlcyBpbmRleCBmaWxlcyIKK21zZ3N0ciAiZHBrZy1zY2Fuc291cmNlcyAtIGNyw6llciBkZXMgZmljaGllcnMgZCdpbmRleCBkZSBzb3VyY2VzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6MTIKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIkI8ZHBrZy1zY2Fuc291cmNlcz4gW0k8b3B0aW9ucz5dIEk8YmluYXJ5LWRpcj4gW0k8b3ZlcnJpZGUtZmlsZT4gW0k8cGF0aC0iCisjfCAicHJlZml4Pl1dIEI8RTxndD4+IEk8U291cmNlcz4iCittc2dpZCAiIgorIkI8ZHBrZy1zY2Fuc291cmNlcz4gW0k8b3B0aW9uPi4uLl0gSTxiaW5hcnktZGlyPiBbSTxvdmVycmlkZS1maWxlPiBbSTxwYXRoLSIKKyJwcmVmaXg+XV0gQjxFPGd0Pj4gSTxTb3VyY2VzPiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1zY2Fuc291cmNlcz4gW0k8b3B0aW9ucz5dIEk8cmVwLWRlLWJpbmFpcmVzPiBbSTxmaWNoaWVyLW92ZXJyaWRlPiAiCisiW0k8Y2hlbWluLcOgLXByw6lmaXhlcj5dXSBCPEU8Z3Q+PiBJPFNvdXJjZXM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6MTcKK21zZ2lkICIiCisiQjxkcGtnLXNjYW5zb3VyY2VzPiBzY2FucyB0aGUgZ2l2ZW4gSTxiaW5hcnktZGlyPiBmb3IgSTwuZHNjPiBmaWxlcy4gIFRoZXNlICIKKyJhcmUgdXNlZCB0byBjcmVhdGUgYSBEZWJpYW4gc291cmNlIGluZGV4LCB3aGljaCBpcyBvdXRwdXQgdG8gc3Rkb3V0LiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1zY2Fuc291cmNlcz4gcmVjaGVyY2hlIGRlcyBmaWNoaWVycyBJPC5kc2M+IGRhbnMgbGUgcsOpcGVydG9pcmUgSTxyZXAtIgorImRlLWJpbmFpcmVzPiBpbmRpcXXDqS4gQ2VzIGZpY2hpZXJzIHNvbnQgdXRpbGlzw6lzIHBvdXIgY3LDqWVyIHVuIGluZGV4IGRlICIKKyJzb3VyY2VzIERlYmlhbiwgcXVpIGVzdCBlbnZvecOpIHN1ciBsYSBzb3J0aWUgc3RhbmRhcmQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6MjgKK21zZ2lkICIiCisiVGhlIEk8b3ZlcnJpZGUtZmlsZT4sIGlmIGdpdmVuLCBpcyB1c2VkIHRvIHNldCBwcmlvcml0aWVzIGluIHRoZSByZXN1bHRpbmcgIgorImluZGV4IHJlY29yZHMgYW5kIHRvIG92ZXJyaWRlIHRoZSBtYWludGFpbmVyIGZpZWxkIGdpdmVuIGluIHRoZSBJPC5kc2M+ICIKKyJmaWxlcy4gVGhlIGZpbGUgY2FuIGJlIGNvbXByZXNzZWQuIFNlZSBCPGRlYi1vdmVycmlkZT4oNSkgIGZvciB0aGUgZm9ybWF0IG9mICIKKyJ0aGlzIGZpbGUuIFxccy0xTkI6XFxzMCBTaW5jZSB0aGUgb3ZlcnJpZGUgZmlsZSBpcyBpbmRleGVkIGJ5IGJpbmFyeSwgbm90ICIKKyJzb3VyY2UsIHBhY2thZ2VzLCB0aGVyZSdzIGEgYml0IG9mIGEgcHJvYmxlbSBoZXJlLiBUaGUgY3VycmVudCAiCisiaW1wbGVtZW50YXRpb24gdXNlcyB0aGUgaGlnaGVzdCBwcmlvcml0eSBvZiBhbGwgdGhlIGJpbmFyeSBwYWNrYWdlcyBwcm9kdWNlZCAiCisiYnkgYSBJPC5kc2M+IGZpbGUgZm9yIHRoZSBwcmlvcml0eSBvZiB0aGUgc291cmNlIHBhY2thZ2UsIGFuZCB0aGUgb3ZlcnJpZGUgIgorImVudHJ5IGZvciB0aGUgZmlyc3QgYmluYXJ5IHBhY2thZ2UgbGlzdGVkIGluIHRoZSBJPC5kc2M+IGZpbGUgdG8gbW9kaWZ5ICIKKyJtYWludGFpbmVyIGluZm9ybWF0aW9uLiBUaGlzIG1pZ2h0IGNoYW5nZS4iCittc2dzdHIgIiIKKyJMZSBJPGZpY2hpZXItb3ZlcnJpZGU+LCBzJ2lsIGVzdCBpbmRpcXXDqSwgZXN0IHV0aWxpc8OpIHBvdXIgZml4ZXIgbGVzICIKKyJwcmlvcml0w6lzIGRhbnMgbCdpbmRleCBjcsOpw6kgZXQgcG91ciBtb2RpZmllciBsZSByZXNwb25zYWJsZSBkb25uw6kgcGFyIGxlcyAiCisiZmljaGllcnMgSTwuZHNjPi4gQ29uc3VsdGV6IEI8ZGViLW92ZXJyaWRlPig1KSBwb3VyIHBsdXMgZGUgZMOpdGFpbHMgc3VyIGxlICIKKyJmb3JtYXQgZGUgY2UgZmljaGllci4gXFxzLTFOb3RlwqA6XFxzMCBTIGNvbW1lIGxlIGZpY2hpZXIgb3ZlcnJpZGUgZXN0IGluZGV4w6kgIgorInBhciBwYXF1ZXQgYmluYWlyZSBldCBub24gcGFzIHBhciBwYXF1ZXQgc291cmNlLCBjZWxhIHBvc2UgdW4gbMOpZ2VyICIKKyJwcm9ibMOobWUuIEwnaW1wbMOpbWVudGF0aW9uIGFjdHVlbGxlIHV0aWxpc2UgbGEgcHJpb3JpdMOpIGxhIHBsdXMgw6lsZXbDqWUgZGVzICIKKyJwYXF1ZXRzIHByb2R1aXQgcGFyIHVuIGZpY2hpZXIgSTwuZHNjPiBjb21tZSBwcmlvcml0w6kgZHUgcGFxdWV0IHNvdXJjZSwgZXQgIgorImwnZW50csOpZSBkdSBmaWNoaWVyIG92ZXJyaWRlIGR1IHByZW1pZXIgcGFxdWV0IGJpbmFpcmUgbGlzdMOpIGRhbnMgbGUgZmljaGllciAiCisiSTwuZHNjPiBwb3VyIG1vZGlmaWVyIGwnaW5mb3JtYXRpb24gc3VyIGxlIHJlc3BvbnNhYmxlLiBDZWNpIHBvdXJyYSBjaGFuZ2VyLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2Fuc291cmNlcy4xOjMyCittc2dpZCAiIgorIlRoZSBJPHBhdGgtcHJlZml4PiwgaWYgZ2l2ZW4sIGlzIHByZXBlbmRlZCB0byB0aGUgZGlyZWN0b3J5IGZpZWxkIGluIHRoZSAiCisiZ2VuZXJhdGVkIHNvdXJjZSBpbmRleC4gWW91IGdlbmVyYWxseSB1c2UgdGhpcyB0byBtYWtlIHRoZSBkaXJlY3RvcnkgZmllbGRzICIKKyJjb250YWluIHRoZSBwYXRoIGZyb20gdGhlIHRvcCBvZiB0aGUgRGViaWFuIGFyY2hpdmUgaGllcmFyY2h5LiIKK21zZ3N0ciAiIgorIkxlIEk8Y2hlbWluLcOgLXByw6lmaXhlcj4sIHMnaWwgZXN0IGluZGlxdcOpLCBlc3QgYWpvdXTDqSBhdSBkw6lidXQgZHUgY2hhbXAgIgorIkRpcmVjdG9yeSAowqvCoHLDqXBlcnRvaXJlwqDCuykgZGFucyBsJ2luZGV4IGRlcyBzb3VyY2VzIGfDqW7DqXLDqS4gQydlc3QgZW4gcsOoZ2xlICIKKyJnw6luw6lyYWxlIHV0aWxpc8OpIHBvdXIgcXVlIGxlIGNoYW1wIERpcmVjdG9yeSBjb250aWVubmUgdW4gY2hlbWluIGRlcHVpcyBsYSAiCisicmFjaW5lIGRlIGwnYXJjaGl2ZSBEZWJpYW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6NDMKK21zZ2lkICIiCisiQjxOb3RlOj4gSWYgeW91IHdhbnQgdG8gYWNjZXNzIHRoZSBnZW5lcmF0ZWQgU291cmNlcyBmaWxlIHdpdGggQjxhcHQ+KDgpICAiCisieW91IHdpbGwgcHJvYmFibHkgbmVlZCB0byBjb21wcmVzcyB0aGUgZmlsZSB3aXRoIEI8Z3ppcD4oMSkgIChnZW5lcmF0aW5nIGEgIgorIlNvdXJjZXMuZ3ogZmlsZSkuIGFwdCBpZ25vcmVzIHVuY29tcHJlc3NlZCBTb3VyY2VzIGZpbGVzIGV4Y2VwdCBvbiBsb2NhbCAiCisiYWNjZXNzIChpLmUuICBCPGZpbGU6Ly8+IHNvdXJjZXMpLiIKK21zZ3N0ciAiIgorIkI8Tm90ZcKgOj4gU2kgdm91cyB2b3VsZXogYWNjw6lkZXIgYXUgZmljaGllciBTb3VyY2VzIGfDqW7DqXLDqSBhdmVjIEI8YXB0Pig4KSwgIgorInZvdXMgZGV2cmV6IHByb2JhYmxlbWVudCBjb21wcmVzc2VyIGNlIGZpY2hpZXIgYXZlYyBCPGd6aXA+KDEpIChwb3VyIGNyw6llciAiCisidW4gZmljaGllciBTb3VyY2VzLmd6KS4gQXB0IGlnbm9yZSBsZXMgZmljaGllcnMgU291cmNlcyBub24gY29tcHJlc3PDqXMgc2F1ZiAiCisicG91ciBsZXMgYWNjw6hzIGxvY2F1eCAoYydlc3Qtw6AtZGlyZSBsZXMgc291cmNlcyBCPGZpbGU6Ly8+KS4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6NDUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1uPiwgQjwtLW5vLXNvcnQ+IgorbXNnc3RyICJCPC1uPiwgQjwtLW5vLXNvcnQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6NDgKK21zZ2lkICIiCisiRG9uJ3Qgc29ydCB0aGUgaW5kZXggcmVjb3Jkcy4gTm9ybWFsbHkgdGhleSBhcmUgc29ydGVkIGJ5IHNvdXJjZSBwYWNrYWdlICIKKyJuYW1lLiIKK21zZ3N0ciAiIgorIk5lIHRyaWUgcGFzIGxlcyBlbnRyw6llcyBkZSBsJ2luZGV4LiBFbGxlcyBzb250IGQnaGFiaXR1ZGUgdHJpw6llcyBlbiBmb25jdGlvbiAiCisiZHUgbm9tIGR1IHBhcXVldCBzb3VyY2UuIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1zY2Fuc291cmNlcy4xOjU0CisjLCBuby13cmFwCittc2dpZCAiQjwtcz4sIEI8LS1zb3VyY2Utb3ZlcnJpZGU+IEk8ZmlsZT4iCittc2dzdHIgIkI8LXM+LCBCPC0tc291cmNlLW92ZXJyaWRlPiBJPGZpY2hpZXI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6NTgKK21zZ2lkICIiCisiVXNlIEk8ZmlsZT4gYXMgdGhlIHNvdXJjZSBvdmVycmlkZSBmaWxlICh0aGUgZmlsZSBjYW4gYmUgY29tcHJlc3NlZCkuICBUaGUgIgorImRlZmF1bHQgaXMgdGhlIG5hbWUgb2YgdGhlIG92ZXJyaWRlIGZpbGUgeW91IHNwZWNpZmllZCB3aXRoIEk8LnNyYz4gYXBwZW5kZWQuIgorbXNnc3RyICIiCisiVXRpbGlzZSBJPGZpY2hpZXI+IGNvbW1lIGZpY2hpZXIgb3ZlcnJpZGUgZGVzIHNvdXJjZXMgKGNlIGZpY2hpZXIgcGV1dCDDqnRyZSAiCisiY29tcHJlc3PDqSkuIExhIHZhbGV1ciBwYXIgZMOpZmF1dCBlc3QgbGUgZmljaGllciBvdmVycmlkZSBpbmRpcXXDqSBhdXF1ZWwgZXN0ICIKKyJham91dMOpZSBsJ2V4dGVuc2lvbiBJPC5zcmM+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2Fuc291cmNlcy4xOjY0Cittc2dpZCAiIgorIlRoZSBzb3VyY2Ugb3ZlcnJpZGUgZmlsZSBpcyBpbiBhIGRpZmZlcmVudCBmb3JtYXQgZnJvbSB0aGUgYmluYXJ5IG92ZXJyaWRlICIKKyJmaWxlLiBJdCBjb250YWlucyBvbmx5IHR3byB3aGl0ZXNwYWNlIHNlcGFyYXRlZCBmaWVsZHMsIHRoZSBmaXJzdCBpcyB0aGUgIgorInNvdXJjZSBwYWNrYWdlIG5hbWUgYW5kIHRoZSBzZWNvbmQgaXMgdGhlIHNlY3Rpb24uIEJsYW5rIGxpbmVzIGFuZCBjb21tZW50ICIKKyJsaW5lcyBhcmUgaWdub3JlZCBpbiB0aGUgbm9ybWFsIG1hbm5lci4gSWYgYSBwYWNrYWdlIGFwcGVhcnMgaW4gYm90aCBmaWxlcyAiCisidGhlIHNvdXJjZSBvdmVycmlkZSB0YWtlcyBwcmVjZWRlbmNlIGZvciBzZXR0aW5nIHRoZSBzZWN0aW9uLiIKK21zZ3N0ciAiIgorIkxlIGZvcm1hdCBkZXMgZmljaGllcnMgb3ZlcnJpZGUgZGVzIHNvdXJjZXMgZXN0IGRpZmbDqXJlbnQgZGVzIGZpY2hpZXJzICIKKyJvdmVycmlkZSBkZXMgYmluYWlyZXMuIElsIG5lIGNvbnRpZW50IHF1ZSBkZXV4IGNoYW1wcyBzw6lwYXLDqXMgcGFyIGRlcyAiCisiZXNwYWNlcywgbGUgcHJlbWllciBpbmRpcXVlIGxlIHBhcXVldCBzb3VyY2UgZXQgbGUgc2Vjb25kLCBsYSBzZWN0aW9uLiBMZXMgIgorImxpZ25lcyBibGFuY2hlcyBldCBsZXMgbGlnbmVzIGRlIGNvbW1lbnRhaXJlIHNvbnQgaWdub3LDqWVzIGNvbW1lIMOgICIKKyJsJ2hhYml0dWRlLiBTaSB1biBwYXF1ZXQgYXBwYXJhw650IGRhbnMgY2hhcXVlIGZpY2hpZXIsIGxlIGZpY2hpZXIgZGVzICIKKyJzb3VyY2VzIGVzdCBwcmlvcml0YWlyZSBwb3VyIGZpeGVyIGxhIHNlY3Rpb24uIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1zY2Fuc291cmNlcy4xOjY0CisjLCBuby13cmFwCittc2dpZCAiQjwtLWRlYnVnPiIKK21zZ3N0ciAiQjwtLWRlYnVnPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2Fuc291cmNlcy4xOjY2Cittc2dpZCAiVHVybiBkZWJ1Z2dpbmcgb24uIgorbXNnc3RyICJBY3RpdmUgbGUgZMOpYm9nYWdlLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2Fuc291cmNlcy4xOjc1Cittc2dpZCAiQjxkZWItb3ZlcnJpZGU+KDUpLCBCPGRlYi1leHRyYS1vdmVycmlkZT4oNSksIEI8ZHBrZy1zY2FucGFja2FnZXM+KDEpLiIKK21zZ3N0ciAiQjxkZWItb3ZlcnJpZGU+KDUpLCBCPGRlYi1leHRyYS1vdmVycmlkZT4oNSksIEI8ZHBrZy1zY2FucGFja2FnZXM+KDEpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2Fuc291cmNlcy4xOjc3Cittc2dpZCAiUm9kZXJpY2sgU2NoZXJ0bGVyIEU8bHQ+cm9kZXJpY2tAYXJnb24ub3JnRTxndD4iCittc2dzdHIgIlJvZGVyaWNrIFNjaGVydGxlciBFPGx0PnJvZGVyaWNrQGFyZ29uLm9yZ0U8Z3Q+IgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1zaGxpYmRlcHMuMToxCisjLCBuby13cmFwCittc2dpZCAiZHBrZy1zaGxpYmRlcHMiCittc2dzdHIgImRwa2ctc2hsaWJkZXBzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjQKK21zZ2lkICJkcGtnLXNobGliZGVwcyAtIGdlbmVyYXRlIHNoYXJlZCBsaWJyYXJ5IHN1YnN0dmFyIGRlcGVuZGVuY2llcyIKK21zZ3N0ciAiIgorImRwa2ctc2hsaWJkZXBzIC0gZ8OpbsOpcmF0ZXVyIGRlIHZhcmlhYmxlcyBkZSBzdWJzdGl0dXRpb24gZGUgZMOpcGVuZGFuY2VzIHBvdXIgIgorImJpYmxpb3Row6hxdWVzIHBhcnRhZ8OpZXMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6OAorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiQjxkcGtnLXNobGliZGVwcz4gW0k8b3B0aW9ucz5dIEk8ZXhlY3V0YWJsZT58QjwtZT5JPGV4ZWN1dGFibGU+ICIKKyN8ICJbSTxvcHRpb25zPl0iCittc2dpZCAiQjxkcGtnLXNobGliZGVwcz4gW0k8b3B0aW9uPi4uLl0gW0I8LWU+XUk8ZXhlY3V0YWJsZT4gW0k8b3B0aW9uPi4uLl0iCittc2dzdHIgIiIKKyJCPGRwa2ctc2hsaWJkZXBzPiBbSTxvcHRpb25zPl0gSTxleMOpY3V0YWJsZT58QjwtZT5JPGV4w6ljdXRhYmxlPiBbSTxvcHRpb25zPl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjIKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIkI8ZHBrZy1zaGxpYmRlcHM+IGNhbGN1bGF0ZXMgc2hhcmVkIGxpYnJhcnkgZGVwZW5kZW5jaWVzIGZvciBleGVjdXRhYmxlcyAiCisjfCAibmFtZWQgaW4gaXRzIGFyZ3VtZW50cy4gVGhlIGRlcGVuZGVuY2llcyBhcmUgYWRkZWQgdG8gdGhlIHN1YnN0aXR1dGlvbiAiCisjfCAidmFyaWFibGVzIGZpbGUgQjxkZWJpYW4vc3Vic3R2YXJzPiBhcyB2YXJpYWJsZSBuYW1lcyBCPHNobGliczoiCisjfCAiPkk8ZGVwZW5kZW5jeWZpZWxkPiB3aGVyZSBJPGRlcGVuZGVuY3lmaWVsZD4gaXMgYSBkZXBlbmRlbmN5IGZpZWxkIG5hbWUuICIKKyN8ICJBbnkgb3RoZXIgdmFyaWFibGVzIHN0YXJ0aW5nIEk8c2hsaWJzOj4gYXJlIHJlbW92ZWQgZnJvbSB0aGUgZmlsZS4iCittc2dpZCAiIgorIkI8ZHBrZy1zaGxpYmRlcHM+IGNhbGN1bGF0ZXMgc2hhcmVkIGxpYnJhcnkgZGVwZW5kZW5jaWVzIGZvciBleGVjdXRhYmxlcyAiCisibmFtZWQgaW4gaXRzIGFyZ3VtZW50cy4gVGhlIGRlcGVuZGVuY2llcyBhcmUgYWRkZWQgdG8gdGhlIHN1YnN0aXR1dGlvbiAiCisidmFyaWFibGVzIGZpbGUgQjxkZWJpYW4vc3Vic3R2YXJzPiBhcyB2YXJpYWJsZSBuYW1lcyBCPHNobGliczoiCisiPkk8ZGVwZW5kZW5jeWZpZWxkPiB3aGVyZSBJPGRlcGVuZGVuY3lmaWVsZD4gaXMgYSBkZXBlbmRlbmN5IGZpZWxkIG5hbWUuIEFueSAiCisib3RoZXIgdmFyaWFibGVzIHN0YXJ0aW5nIHdpdGggQjxzaGxpYnM6PiBhcmUgcmVtb3ZlZCBmcm9tIHRoZSBmaWxlLiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1zaGxpYmRlcHM+IGNhbGN1bGUsIHBvdXIgbGVzIGV4w6ljdXRhYmxlcyBub21tw6lzIGRhbnMgc2VzIGFyZ3VtZW50cywgIgorImxlcyBkw6lwZW5kYW5jZXMgZW52ZXJzIGxlcyBiaWJsaW90aMOocXVlcyBwYXJ0YWfDqWVzLiBDZXMgZMOpcGVuZGFuY2VzIHNvbnQgIgorImFqb3V0w6llcyBhdSBmaWNoaWVyIEI8ZGViaWFuL3N1YnN0dmFycz4gc291cyBsYSBmb3JtZSBCPHNobGliczoiCisiPkk8ZGVwZW5kZW5jeWZpZWxkPiBvw7kgSTxkZXBlbmRlbmN5ZmllbGQ+IGVzdCBsZSBub20gZHUgY2hhbXAgZGUgIgorIsKrwqBkw6lwZW5kYW5jZcKgwrsuIFRvdXRlIGF1dHJlIHZhcmlhYmxlIGFwcsOocyBJPHNobGliczo+IGVzdCBzdXBwcmltw6llIGR1ICIKKyJmaWNoaWVyLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTo0NQorbXNnaWQgIiIKKyJCPGRwa2ctc2hsaWJkZXBzPiBoYXMgdHdvIHBvc3NpYmxlIHNvdXJjZXMgb2YgaW5mb3JtYXRpb24gdG8gZ2VuZXJhdGUgIgorImRlcGVuZGVuY3kgaW5mb3JtYXRpb24uIEVpdGhlciBJPHN5bWJvbHM+IGZpbGVzIG9yIEk8c2hsaWJzPiBmaWxlcy4gRm9yIGVhY2ggIgorImJpbmFyeSB0aGF0IEI8ZHBrZy1zaGxpYmRlcHM+IGFuYWx5emVzLCBpdCBmaW5kcyBvdXQgdGhlIGxpc3Qgb2YgbGlicmFyaWVzICIKKyJ0aGF0IGl0J3MgbGlua2VkIHdpdGguICBUaGVuLCBmb3IgZWFjaCBsaWJyYXJ5LCBpdCBsb29rcyB1cCBlaXRoZXIgdGhlICIKKyJJPHN5bWJvbHM+IGZpbGUsIG9yIHRoZSBJPHNobGlicz4gZmlsZSAoaWYgdGhlIGZvcm1lciBkb2Vzbid0IGV4aXN0IG9yIGlmICIKKyJkZWJpYW4vc2hsaWJzLmxvY2FsIGNvbnRhaW5zIHRoZSByZWxldmFudCBkZXBlbmRlbmN5KS4gQm90aCBmaWxlcyBhcmUgIgorInN1cHBvc2VkIHRvIGJlIHByb3ZpZGVkIGJ5IHRoZSBsaWJyYXJ5IHBhY2thZ2UgYW5kIHNob3VsZCB0aHVzIGJlIGF2YWlsYWJsZSAiCisiYXMgL3Zhci9saWIvZHBrZy9pbmZvL0k8cGFja2FnZT4uSTxzeW1ib2xzPiBvciAvdmFyL2xpYi9kcGtnL2luZm8vSTxwYWNrYWdlPi4iCisiSTxzaGxpYnM+LiBUaGUgcGFja2FnZSBuYW1lIGlzIGlkZW50aWZpZWQgaW4gdHdvIHN0ZXBzOiBmaW5kIHRoZSBsaWJyYXJ5ICIKKyJmaWxlIG9uIHRoZSBzeXN0ZW0gKGxvb2tpbmcgaW4gdGhlIHNhbWUgZGlyZWN0b3JpZXMgdGhhdCBCPGxkLnNvPiB3b3VsZCAiCisidXNlKSwgdGhlbiB1c2UgQjxkcGtnIC1TID5JPGxpYnJhcnktZmlsZT4gdG8gbG9va3VwIHRoZSBwYWNrYWdlIHByb3ZpZGluZyAiCisidGhlIGxpYnJhcnkuIgorbXNnc3RyICIiCisiQjxkcGtnLXNobGliZGVwcz4gYSBkZXV4IHNvdXJjZXMgcG9zc2libGVzIHBvdXIgY3LDqcOpZXIgbGVzIGluZm9ybWF0aW9ucyAiCisiY29uY2VybmFudCBsZXMgZMOpcGVuZGFuY2VzLiBTb2l0IGxlcyBmaWNoaWVycyBJPHN5bWJvbHM+LCBzb2l0IGxlcyBmaWNoaWVycyAiCisiSTxzaGxpYnM+LiBQb3VyIGNoYXF1ZSBmaWNoaWVyIGJpbmFpcmUgcXUnaWwgYW5hbHlzZSwgQjxkcGtnLXNobGliZGVwcz4gIgorInJlY2hlcmNoZSBsYSBsaXN0ZSBkZXMgYmlibGlvdGjDqHF1ZXMgcGFydGFnw6llcyBxdWkgbHVpIHNvbnQgbGnDqWVzLiBQdWlzLCAiCisicG91ciBjaGFjdW5lIGQnZWxsZXMgaWwgYW5hbHlzZSBzb2l0IGxlIGZpY2hpZXIgSTxzeW1ib2xzPiwgc29pdCBsZSBmaWNoaWVyICIKKyJJPHNobGlicz4gKHNpIGxlIHByZW1pZXIgbidleGlzdGUgcGFzIG91IHNpIGRlYmlhbi9zaGxpYnMubG9jYWwgY29udGllbnQgbGVzICIKKyJkw6lwZW5kYW5jZXMgYXBwcm9wcmnDqWVzKS4gQ2VzIGRldXggZmljaGllcnMgc29udCBzZW5zw6lzIMOqdHJlIGZvdXJuaXMgcGFyIGxlICIKKyJwYXF1ZXQgZGUgbGEgYmlibGlvdGjDqHF1ZSBldCBkaXNwb25pYmxlcyBkYW5zIC92YXIvbGliL2Rwa2cvaW5mby9JPHBhcXVldD4uIgorIkk8c3ltYm9scz4gb3UgL3Zhci9saWIvZHBrZy9pbmZvL0k8cGFxdWV0Pi5JPHNobGlicz4uIExlIG5vbSBkdSBwYXF1ZXQgZXN0ICIKKyJ0cm91dsOpIGVuIGRldXggw6l0YXBlc8KgOiBlbiBjaGVyY2hhbnQgbGVzIGZpY2hpZXJzIGRlIGxhIGJpYmxpb3Row6hxdWUgc3VyIGxlICIKKyJzeXN0w6htZSwgZGFucyBsZSByw6lwZXJ0b2lyZSBxdWUgQjxsZC5zbz4gdXRpbGlzZXJhaXQsIHB1aXMgdW4gdXRpbGlzYW50ICIKKyJCPGRwa2cgLVMgPkk8ZmljaGllci1iaWJsaW90aMOocXVlPiBwb3VyIHRyb3V2ZXIgbGUgcGFxdWV0IHF1aSBmb3Vybml0IGNldHRlICIKKyJiaWJsaW90aMOocXVlLiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc2hsaWJkZXBzLjE6NDUKKyMsIG5vLXdyYXAKK21zZ2lkICJTeW1ib2xzIGZpbGVzIgorbXNnc3RyICJGaWNoaWVycyBzeW1ib2xlcyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTo1MAorbXNnaWQgIiIKKyJTeW1ib2xzIGZpbGVzIGNvbnRhaW4gZmluZXItZ3JhaW5lZCBkZXBlbmRlbmN5IGluZm9ybWF0aW9uIGJ5IHByb3ZpZGluZyB0aGUgIgorIm1pbmltdW0gZGVwZW5kZW5jeSBmb3IgZWFjaCBzeW1ib2wgdGhhdCB0aGUgbGlicmFyeSBleHBvcnRzLiBUaGUgc2NyaXB0ICIKKyJ0cmllcyB0byBmaW5kIGEgc3ltYm9scyBmaWxlIGFzc29jaWF0ZWQgdG8gYSBsaWJyYXJ5IHBhY2thZ2UgaW4gdGhlICIKKyJmb2xsb3dpbmcgcGxhY2VzIChmaXJzdCBtYXRjaCBpcyB1c2VkKToiCittc2dzdHIgIiIKKyJMZXMgZmljaGllcnMgc3ltYm9sZXMgY29udGllbm5lbnQgZGVzIGluZm9ybWF0aW9ucyBkZSBkw6lwZW5kYW5jZXMgcGx1cyBmaW5lcyAiCisiZW4gZm91cm5pc3NhbnQgbGVzIGTDqXBlbmRhbmNlcyBtaW5pbWFsZXMgcG91ciBjaGFxdWUgc3ltYm9sZSBkZSBsYSAiCisiYmlibGlvdGjDqHF1ZSBleHBvcnTDqWUuIExlIHNjcmlwdCBlc3NhaWUgZGUgdHJvdXZlciB1biBmaWNoaWVyIGRlIHN5bWJvbGVzICIKKyJhc3NvY2nDqSDDoCB1biBwYXF1ZXQgZGUgYmlibGlvdGjDqHF1ZSBkYW5zIGxlcyBlbXBsYWNlbWVudHMgc3VpdmFudHMgKGxlICIKKyJwcmVtaWVyIHRyb3V2w6kgZXN0IHV0aWxpc8OpKcKgOiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6NTAKKyMsIG5vLXdyYXAKK21zZ2lkICJkZWJpYW4vKi9ERUJJQU4vc3ltYm9scyIKK21zZ3N0ciAiZGViaWFuLyovREVCSUFOL3N5bWJvbHMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6NTgKK21zZ2lkICIiCisiU2hhcmVkIGxpYnJhcnkgaW5mb3JtYXRpb24gZ2VuZXJhdGVkIGJ5IHRoZSBjdXJyZW50IGJ1aWxkIHByb2Nlc3MgdGhhdCBhbHNvICIKKyJpbnZva2VkIEI8ZHBrZy1zaGxpYmRlcHM+LiAgVGhleSBhcmUgZ2VuZXJhdGVkIGJ5IEI8ZHBrZy1nZW5zeW1ib2xzPigxKS4gICIKKyJUaGV5IGFyZSBvbmx5IHVzZWQgaWYgdGhlIGxpYnJhcnkgaXMgZm91bmQgaW4gYSBwYWNrYWdlJ3MgYnVpbGQgdHJlZS4gVGhlICIKKyJzeW1ib2xzIGZpbGUgaW4gdGhhdCBidWlsZCB0cmVlIHRha2VzIHByZWNlZGVuY2Ugb3ZlciBzeW1ib2xzIGZpbGVzIGZyb20gIgorIm90aGVyIGJpbmFyeSBwYWNrYWdlcy4iCittc2dzdHIgIiIKKyJMJ2luZm9ybWF0aW9uIGRlcyBiaWJsaW90aMOocXVlcyBwYXJ0YWfDqWVzIGfDqW7DqXLDqWUgcGFyIGwnYWN0dWVsIHByb2Nlc3N1cyBkZSAiCisiY29uc3RydWN0aW9uIHF1aSBpbnZvcXVlIGF1c3NpIEI8ZHBrZy1zaGxpYmRlcHM+LiBFbGxlcyBzb250IGfDqW7DqXLDqWVzIHBhciAiCisiQjxkcGtnLWdlbnN5bWJvbHM+KDEpIGV0IG5lIHNvbnQgdXRpbGlzw6llcyBxdWUgc2kgbGEgYmlibGlvdGjDqHF1ZSBzZSB0cm91dmUgIgorImRhbnMgbCdhcmJyZSBkZSBjb25zdHJ1Y3Rpb24gZCd1biBwYXF1ZXQuIExlIGZpY2hpZXIgZGVzIHN5bWJvbGVzIHF1aSAiCisiY29uc3RydWl0IGwnYXJicmUgcydhcHB1aWUgc3VyIGxlcyBmaWNoaWVycyBkZSBzeW1ib2xlcyBkJ2F1dHJlcyBwYXF1ZXRzICIKKyJiaW5haXJlcy4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLXNobGliZGVwcy4xOjU4CisjLCBuby13cmFwCittc2dpZCAiL2V0Yy9kcGtnL3N5bWJvbHMvSTxwYWNrYWdlPi5zeW1ib2xzLkk8YXJjaD4iCittc2dzdHIgIi9ldGMvZHBrZy9zeW1ib2xzL0k8cGFxdWV0Pi5zeW1ib2xzLkk8YXJjaGl0ZWN0dXJlPiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6NTkKKyMsIG5vLXdyYXAKK21zZ2lkICIvZXRjL2Rwa2cvc3ltYm9scy9JPHBhY2thZ2U+LnN5bWJvbHMiCittc2dzdHIgIi9ldGMvZHBrZy9zeW1ib2xzL0k8cGFxdWV0Pi5zeW1ib2xzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjYzCittc2dpZCAiIgorIlBlci1zeXN0ZW0gb3ZlcnJpZGluZyBzaGFyZWQgbGlicmFyeSBkZXBlbmRlbmN5IGluZm9ybWF0aW9uLiAgSTxhcmNoPiBpcyB0aGUgIgorImFyY2hpdGVjdHVyZSBvZiB0aGUgY3VycmVudCBzeXN0ZW0gKG9idGFpbmVkIGJ5IEI8ZHBrZy1hcmNoaXRlY3R1cmUgLSIKKyJxREVCX0hPU1RfQVJDSD4pLiIKK21zZ3N0ciAiIgorIkwnaW5mb3JtYXRpb24gZGUgZMOpcGVuZGFuY2UgZGVzIGJpYmxpb3Row6hxdWVzIHBhcnRhZ8OpZXMgYXNzb2Npw6llIGF1eCAiCisic3lzdMOobWVzLiBJPGFyY2g+IGVzdCBsJ2FyY2hpdGVjdHVyZSBkdSBzeXN0w6htZSBhY3R1ZWwgKG9idGVudSBwYXIgQjxkcGtnLSIKKyJhcmNoaXRlY3R1cmUgLXFERUJfSE9TVF9BUkNIPikuIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1zaGxpYmRlcHMuMTo2MworIywgbm8td3JhcAorbXNnaWQgIk91dHB1dCBmcm9tIFxcKGxxQjxkcGtnLXF1ZXJ5IC0tY29udHJvbC1wYXRoPiBJPHBhY2thZ2U+IHN5bWJvbHNcXChycSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjY2IGRwa2ctc2hsaWJkZXBzLjE6MTAwCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJQYWNrYWdlLXByb3ZpZGVkIHNoYXJlZCBsaWJyYXJ5IGRlcGVuZGVuY3kgaW5mb3JtYXRpb24uICBVbmxlc3MgIgorI3wgIm92ZXJyaWRkZW4sIEk8YWRtaW5kaXI+IGlzIC92YXIvbGliL2Rwa2cuIgorbXNnaWQgIiIKKyJQYWNrYWdlLXByb3ZpZGVkIHNoYXJlZCBsaWJyYXJ5IGRlcGVuZGVuY3kgaW5mb3JtYXRpb24uICBVbmxlc3Mgb3ZlcnJpZGRlbiAiCisiYnkgLS1hZG1pbmRpciwgdGhvc2UgZmlsZXMgYXJlIGxvY2F0ZWQgaW4gL3Zhci9saWIvZHBrZy4iCittc2dzdHIgIiIKKyJQYXF1ZXQgZm91cm5pc3NhbnQgZGVzIGluZm9ybWF0aW9ucyBjb25jZXJuYW50IGxlcyBkw6lwZW5kYW5jZXMgZW52ZXJzIGRlcyAiCisiYmlibGlvdGjDqHF1ZXMgcGFydGFnw6llcy4gU2F1ZiBpbmRpY2F0aW9uIGNvbnRyYWlyZSwgSTxhZG1pbmRpcj4gZXN0IHBhciAiCisiZMOpZmF1dCDCq8KgL3Zhci9saWIvZHBrZ8KgwrsuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjczCittc2dpZCAiIgorIldoaWxlIHNjYW5uaW5nIHRoZSBzeW1ib2xzIHVzZWQgYnkgYWxsIGJpbmFyaWVzLCBCPGRwa2ctc2hsaWJkZXBzPiByZW1lbWJlcnMgIgorInRoZSAoYmlnZ2VzdCkgbWluaW1hbCB2ZXJzaW9uIG5lZWRlZCBmb3IgZWFjaCBsaWJyYXJ5LiBBdCB0aGUgZW5kIG9mIHRoZSAiCisicHJvY2VzcywgaXQgaXMgYWJsZSB0byB3cml0ZSBvdXQgdGhlIG1pbmltYWwgZGVwZW5kZW5jeSBmb3IgZXZlcnkgbGlicmFyeSAiCisidXNlZCAocHJvdmlkZWQgdGhhdCB0aGUgaW5mb3JtYXRpb24gb2YgdGhlIEk8c3ltYm9scz4gZmlsZXMgYXJlIGFjY3VyYXRlKS4iCittc2dzdHIgIiIKKyJMb3JzIGRlIGwnYW5hbHlzZSBkZXMgc3ltYm9sZXMgdXRpbGlzw6lzIHBhciB0b3VzIGxlcyBiaW5haXJlcywgQjxkcGtnLSIKKyJzaGxpYmRlcHM+IHJldGllbnQgbGEgKHBsdXMgZ3JhbmRlKSB2ZXJzaW9uIG1pbmltYWxlIG7DqWNlc3NhaXJlIHBvdXIgY2hhcXVlICIKKyJiaWJsaW90aMOocXVlLiDDgCBsYSBmaW4gZHUgcHJvY2Vzc3VzLCBpbCBlc3QgY2FwYWJsZSBkJ8OpY3JpcmUgbGEgZMOpcGVuZGFuY2UgIgorIm1pbmltYWxlIHBvdXIgdG91dGVzIGxlcyBiaWJsaW90aMOocXVlcyB1dGlsaXPDqWVzICjDoCBjb25kaXRpb24gcXVlICIKKyJsJ2luZm9ybWF0aW9uIGRlcyBmaWNoaWVycyBJPHN5bWJvbHM+IHNvaXQgZXhhY3RlKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6ODAKK21zZ2lkICIiCisiQXMgYSBzYWZlLWd1YXJkIG1lYXN1cmUsIGEgc3ltYm9scyBmaWxlIGNhbiBwcm92aWRlIGEgSTxCdWlsZC1EZXBlbmRzLSIKKyJQYWNrYWdlPiBtZXRhLWluZm9ybWF0aW9uIGZpZWxkIGFuZCBCPGRwa2ctc2hsaWJkZXBzPiB3aWxsIGV4dHJhY3QgdGhlICIKKyJtaW5pbWFsIHZlcnNpb24gcmVxdWlyZWQgYnkgdGhlIGNvcnJlc3BvbmRpbmcgcGFja2FnZSBpbiB0aGUgQnVpbGQtRGVwZW5kcyAiCisiZmllbGQgYW5kIHVzZSB0aGlzIHZlcnNpb24gaWYgaXQncyBoaWdoZXIgdGhhbiB0aGUgbWluaW1hbCB2ZXJzaW9uIGNvbXB1dGVkICIKKyJieSBzY2FubmluZyBzeW1ib2xzLiIKK21zZ3N0ciAiIgorIkNvbW1lIGdhcmRlLWZvdSwgdW4gZmljaGllciBkZSBzeW1ib2xlcyBwZXV0IGZvdXJuaXIgdW4gY2hhbXAgSTxCdWlsZC0iCisiRGVwZW5kcy1QYWNrYWdlPiBkZSBtw6l0YS1pbmZvcm1hdGlvbiBldCBCPGRwa2ctc2hsaWJkZXBzPiBlbiBleHRyYWlyYSBsYSAiCisidmVyc2lvbiBtaW5pbWFsZSByZXF1aXNlIHBhciBsZSBwYXF1ZXQgY29ycmVzcG9uZGFudCBkZXB1aXMgY2UgY2hhbXAgQnVpbGQtIgorIkRlcGVuZHMgZXQgdXRpbGlzZXIgY2V0dGUgdmVyc2lvbiBzaSBlbGxlIGVzdCBzdXDDqXJpZXVyZSDDoCBsYSB2ZXJzaW9uICIKKyJtaW5pbWFsZSBjYWxjdWzDqWUgcGFyIGwnZXhhbWVuIGRlcyBzeW1ib2xlcy4iCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNobGliZGVwcy4xOjgwCisjLCBuby13cmFwCittc2dpZCAiU2hsaWJzIGZpbGVzIgorbXNnc3RyICJGaWNoaWVycyBTaGxpYnMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6ODQKK21zZ2lkICIiCisiU2hsaWJzIGZpbGVzIGFzc29jaWF0ZSBkaXJlY3RseSBhIGxpYnJhcnkgdG8gYSBkZXBlbmRlbmN5ICh3aXRob3V0IGxvb2tpbmcgIgorImF0IHRoZSBzeW1ib2xzKS4gSXQncyB0aHVzIG9mdGVuIHN0cm9uZ2VyIHRoYW4gcmVhbGx5IG5lZWRlZCBidXQgdmVyeSBzYWZlICIKKyJhbmQgZWFzeSB0byBoYW5kbGUuIgorbXNnc3RyICIiCisiTGVzIGZpY2hpZXJzIFNobGlicyBhc3NvY2llbnQgZGlyZWN0ZW1lbnQgdW5lIGJpYmxpb3Row6hxdWUgw6AgdW5lIGTDqXBlbmRhbmNlICIKKyIoc2FucyByZWdhcmRlciBsZXMgc3ltYm9sZXMpLiBJbCBhZ2l0IGRvbmMgc291dmVudCBwbHVzIGZvcnRlbWVudCBxdWUgY2UgIgorImRvbnQgb24gYXVyYWl0IGJlc29pbiBtYWlzIGlsIHJlc3RlIHRyw6hzIHPDu3IgZXQgZmFjaWxlIMOgIG1hbmlwdWxlci4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6ODcKK21zZ2lkICIiCisiVGhlIGRlcGVuZGVuY2llcyBmb3IgYSBsaWJyYXJ5IGFyZSBsb29rZWQgdXAgaW4gc2V2ZXJhbCBwbGFjZXMuIFRoZSBmaXJzdCAiCisiZmlsZSBwcm92aWRpbmcgaW5mb3JtYXRpb24gZm9yIHRoZSBsaWJyYXJ5IG9mIGludGVyZXN0IGlzIHVzZWQ6IgorbXNnc3RyICIiCisiTGVzIGTDqXBlbmRhbmNlcyBkJ3VuZSBiaWJsaW90aMOocXVlIHNvbnQgcmVjaGVyY2jDqWVzIMOgIHBsdXNpZXVycyBlbmRyb2l0cy4gTGUgIgorInByZW1pZXIgZmljaGllciBkJ2luZm9ybWF0aW9ucyB0cm91dsOpIHF1aSBjb25jZXJuZSBsYSBiaWJsaW90aMOocXVlIGVzdCAiCisidXRpbGlzw6nCoDoiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLXNobGliZGVwcy4xOjg3CisjLCBuby13cmFwCittc2dpZCAiZGViaWFuL3NobGlicy5sb2NhbCIKK21zZ3N0ciAiZGViaWFuL3NobGlicy5sb2NhbCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTo4OQorbXNnaWQgIlBhY2thZ2UtbG9jYWwgb3ZlcnJpZGluZyBzaGFyZWQgbGlicmFyeSBkZXBlbmRlbmN5IGluZm9ybWF0aW9uLiIKK21zZ3N0ciAiIgorIkZpY2hpZXIgcGFydGljdWxpZXIgw6AgdW4gcGFxdWV0IHJlbXBsYcOnYW50IGxlcyBpbmZvcm1hdGlvbnMgcXVpIGNvbmNlcm5lbnQgIgorImxlcyBkw6lwZW5kYW5jZXMgZW52ZXJzIGRlcyBiaWJsaW90aMOocXVlcyBwYXJ0YWfDqWVzLiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6ODkKKyMsIG5vLXdyYXAKK21zZ2lkICIvZXRjL2Rwa2cvc2hsaWJzLm92ZXJyaWRlIgorbXNnc3RyICIvZXRjL2Rwa2cvc2hsaWJzLm92ZXJyaWRlIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjkxCittc2dpZCAiUGVyLXN5c3RlbSBvdmVycmlkaW5nIHNoYXJlZCBsaWJyYXJ5IGRlcGVuZGVuY3kgaW5mb3JtYXRpb24uIgorbXNnc3RyICIiCisiRmljaGllciBzeXN0w6htZSByZW1wbGHDp2FudCBsZXMgaW5mb3JtYXRpb25zIHF1aSBjb25jZXJuZW50IGxlcyBkw6lwZW5kYW5jZXMgIgorImVudmVycyBkZXMgYmlibGlvdGjDqHF1ZXMgcGFydGFnw6llcy4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLXNobGliZGVwcy4xOjkxCisjLCBuby13cmFwCittc2dpZCAiZGViaWFuLyovREVCSUFOL3NobGlicyIKK21zZ3N0ciAiZGViaWFuLyovREVCSUFOL3NobGlicyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTo5NworbXNnaWQgIiIKKyJTaGFyZWQgbGlicmFyeSBpbmZvcm1hdGlvbiBnZW5lcmF0ZWQgYnkgdGhlIGN1cnJlbnQgYnVpbGQgcHJvY2VzcyB0aGF0IGFsc28gIgorImludm9rZWQgQjxkcGtnLXNobGliZGVwcz4uICBUaGV5IGFyZSBvbmx5IHVzZWQgaWYgdGhlIGxpYnJhcnkgaXMgZm91bmQgaW4gYSAiCisicGFja2FnZSdzIGJ1aWxkIHRyZWUuIFRoZSBzaGxpYnMgZmlsZSBpbiB0aGF0IGJ1aWxkIHRyZWUgdGFrZXMgcHJlY2VkZW5jZSAiCisib3ZlciBzaGxpYnMgZmlsZXMgZnJvbSBvdGhlciBiaW5hcnkgcGFja2FnZXMuIgorbXNnc3RyICIiCisiSW5mb3JtYXRpb24gc3VyIGxhIGJpYmxpb3Row6hxdWUgcGFydGFnw6llIGfDqW7DqXLDqSBwYXIgbGUgcHJvY2Vzc3VzIGFjdHVlbCBkZSAiCisiY29uc3RydWN0aW9uIHF1aSBpbnZvcXVlIGF1c3NpIEI8ZHBrZy1zaGxpYmRlcHM+LiBJbCBuJ2VzdCB1dGlsaXPDqSBxdWUgc2kgbGEgIgorImJpYmxpb3Row6hxdWUgc2UgdHJvdXZlIGRhbnMgbCdhcmJyZSBkZSBjb25zdHJ1Y3Rpb24gZHUgcGFxdWV0LiBMZSBmaWNoaWVyICIKKyJzaGxpYnMgcXVpIGNvbnN0cnVpdCBsJ2FyYnJlIGEgcHJpb3JpdMOpIHN1ciBsZXMgZmljaGllcnMgc2hsaWJzIGRlcyBhdXRyZXMgIgorInBhcXVldHMgYmluYWlyZXMuIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1zaGxpYmRlcHMuMTo5NworIywgbm8td3JhcAorbXNnaWQgIk91dHB1dCBmcm9tIFxcKGxxQjxkcGtnLXF1ZXJ5IC0tY29udHJvbC1wYXRoPiBJPHBhY2thZ2U+IHNobGlic1xcKHJxIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLXNobGliZGVwcy4xOjEwMAorIywgbm8td3JhcAorbXNnaWQgIi9ldGMvZHBrZy9zaGxpYnMuZGVmYXVsdCIKK21zZ3N0ciAiL2V0Yy9kcGtnL3NobGlicy5kZWZhdWx0IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjEwMgorbXNnaWQgIlBlci1zeXN0ZW0gZGVmYXVsdCBzaGFyZWQgbGlicmFyeSBkZXBlbmRlbmN5IGluZm9ybWF0aW9uLiIKK21zZ3N0ciAiIgorIkZpY2hpZXIgc3lzdMOobWUgcGFyIGTDqWZhdXQgY29uY2VybmFudCBsZXMgaW5mb3JtYXRpb25zIGRlIGTDqXBlbmRhbmNlIGVudmVycyAiCisiZGVzIGJpYmxpb3Row6hxdWVzIHBhcnRhZ8OpZXMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjEwNgorbXNnaWQgIiIKKyJUaGUgZXh0cmFjdGVkIGRlcGVuZGVuY2llcyBhcmUgdGhlbiBkaXJlY3RseSB1c2VkIChleGNlcHQgaWYgdGhleSBhcmUgIgorImZpbHRlcmVkIG91dCBiZWNhdXNlIHRoZXkgaGF2ZSBiZWVuIGlkZW50aWZpZWQgYXMgZHVwbGljYXRlLCBvciBhcyB3ZWFrZXIgIgorInRoYW4gYW5vdGhlciBkZXBlbmRlbmN5KS4iCittc2dzdHIgIiIKKyJMZXMgZMOpcGVuZGFuY2VzIHRyb3V2w6llcyBzb250IGVuc3VpdGUgZGlyZWN0ZW1lbnQgdXRpbGlzw6llcyAoc2F1ZiBzaSBlbGxlcyAiCisic29udCBmaWx0csOpZXMgcGFyY2UgcXUnZWxsZXMgb250IMOpdMOpIGlkZW50aWZpw6llcyBjb21tZSDDqXRhbnQgZW4gZG91YmxlLCBvdSAiCisiZCd1biBuaXZlYXUgcGx1cyBmYWlibGUgcXUndW5lIGF1dHJlIGTDqXBlbmRhbmNlKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTExCittc2dpZCAiIgorIkI8ZHBrZy1zaGxpYmRlcHM+IGludGVycHJldHMgbm9uLW9wdGlvbiBhcmd1bWVudHMgYXMgZXhlY3V0YWJsZSBuYW1lcywganVzdCAiCisiYXMgaWYgdGhleSdkIGJlZW4gc3VwcGxpZWQgYXMgQjwtZT5JPGV4ZWN1dGFibGU+LiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1zaGxpYmRlcHM+IGludGVycHLDqHRlIGRlcyBhcmd1bWVudHMgc2FucyBvcHRpb24gY29tbWUgZGVzIGNvbW1hbmRlcyAiCisiZXjDqWN1dGFibGVzLCBjb21tZSBzaSBvbiBhdmFpdCBzaW1wbGVtZW50IGRvbm7DqSBCPC1lPkk8ZXjDqWN1dGFibGU+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTExCisjLCBuby13cmFwCittc2dpZCAiQjwtZT5JPGV4ZWN1dGFibGU+IgorbXNnc3RyICJCPC1lPkk8ZXjDqWN1dGFibGU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjExNQorbXNnaWQgIiIKKyJJbmNsdWRlIGRlcGVuZGVuY2llcyBhcHByb3ByaWF0ZSBmb3IgdGhlIHNoYXJlZCBsaWJyYXJpZXMgcmVxdWlyZWQgYnkgIgorIkk8ZXhlY3V0YWJsZT4uIgorbXNnc3RyICIiCisiQ2V0dGUgb3B0aW9uIGluY2x1dCBsZXMgYm9ubmVzIGTDqXBlbmRhbmNlcyBlbnZlcnMgbGVzIGJpYmxpb3Row6hxdWVzICIKKyJwYXJ0YWfDqWVzIHF1ZSBkZW1hbmRlIEk8ZXjDqWN1dGFibGU+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTE1CisjLCBuby13cmFwCittc2dpZCAiQjwtZD5JPGRlcGVuZGVuY3lmaWVsZD4iCittc2dzdHIgIkI8LWQ+STxjaGFtcC1kw6lwZW5kYW5jZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTIxCittc2dpZCAiIgorIkFkZCBkZXBlbmRlbmNpZXMgdG8gYmUgYWRkZWQgdG8gdGhlIGNvbnRyb2wgZmlsZSBkZXBlbmRlbmN5IGZpZWxkICIKKyJJPGRlcGVuZGVuY3lmaWVsZD4uICAoVGhlIGRlcGVuZGVuY2llcyBmb3IgdGhpcyBmaWVsZCBhcmUgcGxhY2VkIGluIHRoZSAiCisidmFyaWFibGUgQjxzaGxpYnM6Pkk8ZGVwZW5kZW5jeWZpZWxkPi4pIgorbXNnc3RyICIiCisiQ2V0dGUgb3B0aW9uIGFqb3V0ZSBsZXMgZMOpcGVuZGFuY2VzIGRlc3RpbsOpZXMgYXUgY2hhbXAgwqvCoGTDqXBlbmRhbmNlwqDCuyBkdSAiCisiZmljaGllciBkZSBjb250csO0bGUgSTxjaGFtcC1kw6lwZW5kYW5jZS4+IChMZXMgZMOpcGVuZGFuY2VzIHBvdXIgY2UgY2hhbXAgc29udCAiCisiZGFucyBsYSB2YXJpYWJsZSBCPHNobGliczo+STxjaGFtcC1kw6lwZW5kYW5jZT4uKSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToxMzEKK21zZ2lkICIiCisiVGhlIEI8LWQ+STxkZXBlbmRlbmN5ZmllbGQ+IG9wdGlvbiB0YWtlcyBlZmZlY3QgZm9yIGFsbCBleGVjdXRhYmxlcyBhZnRlciAiCisidGhlIG9wdGlvbiwgdW50aWwgdGhlIG5leHQgQjwtZD5JPGRlcGVuZGVuY3lmaWVsZD4uICBUaGUgZGVmYXVsdCAiCisiSTxkZXBlbmRlbmN5ZmllbGQ+IGlzIEI8RGVwZW5kcz4uIgorbXNnc3RyICIiCisiTCdvcHRpb24gQjwtZD5JPGNoYW1wLWTDqXBlbmRhbmNlPiBjb25jZXJuZSB0b3VzIGxlcyBleMOpY3V0YWJsZXMgcXVpIHN1aXZlbnQgIgorImwnb3B0aW9uLCBqdXNxdSfDoCBsYSBwcm9jaGFpbmUgb3B0aW9uIEI8LWQ+STxjaGFtcC1kw6lwZW5kYW5jZT4uIFBhciBkw6lmYXV0LCAiCisiSTxjaGFtcC1kw6lwZW5kYW5jZT4gdmF1dCBCPERlcGVuZHM+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToxMzkKK21zZ2lkICIiCisiSWYgdGhlIHNhbWUgZGVwZW5kZW5jeSBlbnRyeSAob3Igc2V0IG9mIGFsdGVybmF0aXZlcykgYXBwZWFycyBpbiBtb3JlIHRoYW4gIgorIm9uZSBvZiB0aGUgcmVjb2duaXNlZCBkZXBlbmRlbmN5IGZpZWxkIG5hbWVzIEI8UHJlLURlcGVuZHM+LCBCPERlcGVuZHM+LCAiCisiQjxSZWNvbW1lbmRzPiwgQjxFbmhhbmNlcz4gb3IgQjxTdWdnZXN0cz4gdGhlbiBCPGRwa2ctc2hsaWJkZXBzPiB3aWxsICIKKyJhdXRvbWF0aWNhbGx5IHJlbW92ZSB0aGUgZGVwZW5kZW5jeSBmcm9tIGFsbCBmaWVsZHMgZXhjZXB0IHRoZSBvbmUgIgorInJlcHJlc2VudGluZyB0aGUgbW9zdCBpbXBvcnRhbnQgZGVwZW5kZW5jaWVzLiIKK21zZ3N0ciAiIgorIlF1YW5kLCBkYW5zIHBsdXNpZXVycyBjaGFtcHMgcmVjb25udXMgYXlhbnQgdHJhaXQgYXV4IGTDqXBlbmRhbmNlcyBjb21tZSBsZXMgIgorImNoYW1wcyBCPFByZS1EZXBlbmRzPiwgQjxEZXBlbmRzPiwgQjxSZWNvbW1lbmRzPiwgQjxFbmhhbmNlcz4gb3UgQjxTdWdnZXN0cz4gIgorImFwcGFyYcOudCBsYSBtw6ptZSBlbnRyw6llIChvdSBiaWVuIHVuIGVuc2VtYmxlIGQnYWx0ZXJuYXRpdmVzKSwgQjxkcGtnLSIKKyJzaGxpYmRlcHM+IHN1cHByaW1lIGF1dG9tYXRpcXVlbWVudCBsZXMgZMOpcGVuZGFuY2VzIGRhbnMgdG91cyBsZXMgY2hhbXBzICIKKyJzYXVmIGNlbHVpIHF1aSByZXByw6lzZW50ZSBsZXMgZMOpcGVuZGFuY2VzIGxlcyBwbHVzIGltcG9ydGFudGVzLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTM5CisjLCBuby13cmFwCittc2dpZCAiQjwtcD5JPHZhcm5hbWVwcmVmaXg+IgorbXNnc3RyICJCPC1wPkk8cHLDqWZpeGUtcG91ci1sZS1ub20tZGVzLXZhcmlhYmxlcz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTUwCittc2dpZCAiIgorIlN0YXJ0IHN1YnN0aXR1dGlvbiB2YXJpYWJsZXMgd2l0aCBJPHZhcm5hbWVwcmVmaXg+Qjw6PiBpbnN0ZWFkIG9mIEI8c2hsaWJzOiIKKyI+LiAgTGlrZXdpc2UsIGFueSBleGlzdGluZyBzdWJzdGl0dXRpb24gdmFyaWFibGVzIHN0YXJ0aW5nIHdpdGggIgorIkk8dmFybmFtZXByZWZpeD5CPDo+IChyYXRoZXIgdGhhbiBCPHNobGliczo+KSAgYXJlIHJlbW92ZWQgZnJvbSB0aGUgdGhlICIKKyJzdWJzdGl0dXRpb24gdmFyaWFibGVzIGZpbGUuIgorbXNnc3RyICIiCisiRmFpdCBjb21tZW5jZXIgbGVzIHZhcmlhYmxlcyBkZSBzdWJzdGl0dXRpb24gcGFyIEk8cHLDqWZpeGUtcG91ci1sZS1ub20tZGVzLSIKKyJ2YXJpYWJsZXM+Qjw6PiBhdSBsaWV1IGRlIEI8c2hsaWJzOj4uIERlIG3Dqm1lLCB0b3V0ZSB2YXJpYWJsZSBkZSAiCisic3Vic3RpdHV0aW9uIGNvbW1lbsOnYW50IHBhciBJPHByw6lmaXhlLXBvdXItbGUtbm9tLWRlcy12YXJpYWJsZXM+Qjw6PiAoYXUgIgorImxpZXUgZGUgQjxzaGxpYnM6PikgZXN0IGVubGV2w6llIGR1IGZpY2hpZXIgZGUgc3Vic3RpdHV0aW9uIGRlcyB2YXJpYWJsZXMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjE1NgorbXNnaWQgIiIKKyJQcmludCBzdWJzdGl0dXRpb24gdmFyaWFibGUgc2V0dGluZ3MgdG8gc3RhbmRhcmQgb3V0cHV0LCByYXRoZXIgdGhhbiBiZWluZyAiCisiYWRkZWQgdG8gdGhlIHN1YnN0aXR1dGlvbiB2YXJpYWJsZXMgZmlsZSAoQjxkZWJpYW4vc3Vic3R2YXJzPiBieSBkZWZhdWx0KS4iCittc2dzdHIgIiIKKyJBZmZpY2hlIGxlcyBkw6lmaW5pdGlvbnMgZGVzIHZhcmlhYmxlcyBkZSBzdWJzdGl0dXRpb24gc3VyIGxhIHNvcnRpZSAiCisic3RhbmRhcmQsIHBsdXTDtHQgcXVlIGRlIGxlcyBham91dGVyIGRhbnMgbGUgZmljaGllciBkZSBzdWJzdGl0dXRpb24gZGVzICIKKyJ2YXJpYWJsZXMgcXVpIGVzdCBwYXIgZMOpZmF1dCBkZWJpYW4vc3Vic3R2YXJzLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTU2CisjLCBuby13cmFwCittc2dpZCAiQjwtdD5JPHR5cGU+IgorbXNnc3RyICJCPC10Pkk8dHlwZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTYzCittc2dpZCAiIgorIlByZWZlciBzaGFyZWQgbGlicmFyeSBkZXBlbmRlbmN5IGluZm9ybWF0aW9uIHRhZ2dlZCBmb3IgdGhlIGdpdmVuIHBhY2thZ2UgIgorInR5cGUuIElmIG5vIHRhZ2dlZCBpbmZvcm1hdGlvbiBpcyBhdmFpbGFibGUsIGZhbGxzIGJhY2sgdG8gdW50YWdnZWQgIgorImluZm9ybWF0aW9uLiBUaGUgZGVmYXVsdCBwYWNrYWdlIHR5cGUgaXMgXCJkZWJcIi4gU2hhcmVkIGxpYnJhcnkgZGVwZW5kZW5jeSAiCisiaW5mb3JtYXRpb24gaXMgdGFnZ2VkIGZvciBhIGdpdmVuIHR5cGUgYnkgcHJlZml4aW5nIGl0IHdpdGggdGhlIG5hbWUgb2YgdGhlICIKKyJ0eXBlLCBhIGNvbG9uLCBhbmQgd2hpdGVzcGFjZS4iCittc2dzdHIgIiIKKyJQcsOpZsOpcmVyIGxlcyBpbmZvcm1hdGlvbnMgc3VyIGxlcyBkw6lwZW5kYW5jZXMgZGVzIGJpYmxpb3Row6hxdWVzIHBhcnRhZ8OpZXMgIgorInF1aSBzb250IMOpdGlxdWV0w6llcyBwb3VyIHVuIHR5cGUgZGUgcGFxdWV0IGRvbm7DqS4gU2kgYXVjdW5lIGluZm9ybWF0aW9uIGRlICIKKyJ0eXBlIG4nZXN0IGRvbm7DqWUsIGlsIG4ndXRpbGlzZXJhIHBhcyBkJ2luZm9ybWF0aW9uLiBQYXIgZMOpZmF1dCwgbGUgdHlwZSBkZSAiCisicGFxdWV0IGVzdCDCq8KgZGViwqDCuy4gT24gcGV1dCBjcsOpZXIgdW5lIMOpdGlxdWV0dGUgcG91ciBjZXMgaW5mb3JtYXRpb25zIGVuIGxlcyAiCisicHLDqWZpeGFudCBwYXIgbGUgbm9tIGR1IHR5cGUsIHVuIGRldXgtcG9pbnRzIGV0IHVuZSBlc3BhY2UuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zaGxpYmRlcHMuMToxNjMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1MPkk8bG9jYWxzaGxpYnNmaWxlPiIKK21zZ3N0ciAiQjwtTD5JPGZpY2hpZXItbG9jYWwtc2hsaWJzPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToxNjkKK21zZ2lkICIiCisiUmVhZCBvdmVycmlkaW5nIHNoYXJlZCBsaWJyYXJ5IGRlcGVuZGVuY3kgaW5mb3JtYXRpb24gZnJvbSAiCisiSTxsb2NhbHNobGlic2ZpbGU+IGluc3RlYWQgb2YgQjxkZWJpYW4vc2hsaWJzLmxvY2FsPi4iCittc2dzdHIgIiIKKyJMaXJlIGxlcyBpbmZvcm1hdGlvbnMgZGUgcmVtcGxhY2VtZW50IGNvbmNlcm5hbnQgbGVzIGTDqXBlbmRhbmNlcyBlbnZlcnMgbGVzICIKKyJiaWJsaW90aMOocXVlcyBwYXJ0YWfDqWVzIGRhbnMgSTxmaWNoaWVyLWxvY2FsLXNobGlicz4gYXUgbGlldSBkZSBCPGRlYmlhbi8iCisic2hsaWJzLmxvY2FsPi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTc1Cittc2dpZCAiIgorIldyaXRlIHN1YnN0aXR1dGlvbiB2YXJpYWJsZXMgaW4gSTxzdWJzdHZhcnNmaWxlPjsgdGhlIGRlZmF1bHQgaXMgQjxkZWJpYW4vIgorInN1YnN0dmFycz4uIgorbXNnc3RyICIiCisiw4ljcmlyZSBsZXMgdmFyaWFibGVzIGRlIHN1YnN0aXR1dGlvbiBkYW5zIEk8ZmljaGllci9zdWJzdHZhcnM+wqA7IGxlIGZpY2hpZXIgIgorInBhciBkw6lmYXV0IGVzdCBCPGRlYmlhbi9zdWJzdHZhcnM+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTc1CisjLCBuby13cmFwCittc2dpZCAiQjwtdj4iCittc2dzdHIgIkI8LXY+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjE4MAorbXNnaWQgIiIKKyJFbmFibGUgdmVyYm9zZSBtb2RlLiBOdW1lcm91cyBtZXNzYWdlcyBhcmUgZGlzcGxheWVkIHRvIGV4cGxhaW4gd2hhdCBCPGRwa2ctIgorInNobGliZGVwcz4gZG9lcy4iCittc2dzdHIgIiIKKyJBY3RpdmUgbGUgbW9kZSB2ZXJiZXV4LiBEZSBub21icmV1eCBtZXNzYWdlcyBzb250IGFmZmljaMOpcyBwb3VyIGV4cGxpcXVlciBjZSAiCisicXVlIEI8ZHBrZy1zaGxpYmRlcHM+IGZhaXQuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zaGxpYmRlcHMuMToxODAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC14Pkk8cGFja2FnZT4iCittc2dzdHIgIkI8LXg+STxwYWNrYWdlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToxODcKK21zZ2lkICIiCisiRXhjbHVkZSB0aGUgcGFja2FnZSBmcm9tIHRoZSBnZW5lcmF0ZWQgZGVwZW5kZW5jaWVzLiBUaGlzIGlzIHVzZWZ1bCB0byBhdm9pZCAiCisic2VsZi1kZXBlbmRlbmNpZXMgZm9yIHBhY2thZ2VzIHdoaWNoIHByb3ZpZGUgRUxGIGJpbmFyaWVzIChleGVjdXRhYmxlcyBvciAiCisibGlicmFyeSBwbHVnaW5zKSB1c2luZyBhIGxpYnJhcnkgY29udGFpbmVkIGluIHRoZSBzYW1lIHBhY2thZ2UuIFRoaXMgb3B0aW9uICIKKyJjYW4gYmUgdXNlZCBtdWx0aXBsZSB0aW1lcyB0byBleGNsdWRlIHNldmVyYWwgcGFja2FnZXMuIgorbXNnc3RyICIiCisiRXhjbHV0IGxlIHBhcXVldCBkZXMgZMOpcGVuZGFuY2VzIGfDqW7DqXLDqWVzLiBDZWxhIMOpdml0ZSBsZXMgYXV0by1kw6lwZW5kYW5jZXMgIgorInBvdXIgbGVzIHBhcXVldHMgZm91cm5pc3NhbnQgZGVzIGV4w6ljdXRhYmxlcyBFTEYgKGV4w6ljdXRhYmxlcyBvdSBtb2R1bGVzICIKKyJjb21wbMOpbWVudGFpcmVzIGRlIGJpYmxpb3Row6hxdWUpIHF1aSB1dGlsaXNlbnQgdW5lIGJpYmxpb3Row6hxdWUgaW5jbHVzZSBkYW5zICIKKyJjZSBtw6ptZSBwYXF1ZXQuIENldHRlIG9wdGlvbiBwZXV0IMOqdHJlIHV0aWxpc8OpZSBwbHVzaWV1cnMgZm9pcyBwb3VyIGV4Y2x1cmUgIgorInBsdXNpZXVycyBwYXF1ZXRzLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTg3CisjLCBuby13cmFwCittc2dpZCAiQjwtUz5JPHBrZ2J1aWxkZGlyPiIKK21zZ3N0ciAiQjwtUz5JPHBrZ2J1aWxkZGlyPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToxOTQKK21zZ2lkICIiCisiTG9vayBpbnRvIEk8cGtnYnVpbGRkaXI+IGZpcnN0IHdoZW4gdHJ5aW5nIHRvIGZpbmQgYSBsaWJyYXJ5LiBUaGlzIGlzIHVzZWZ1bCAiCisid2hlbiB0aGUgc291cmNlIHBhY2thZ2UgYnVpbGRzIG11bHRpcGxlIGZsYXZvcnMgb2YgdGhlIHNhbWUgbGlicmFyeSBhbmQgeW91ICIKKyJ3YW50IHRvIGVuc3VyZSB0aGF0IHlvdSBnZXQgdGhlIGRlcGVuZGVuY3kgZnJvbSBhIGdpdmVuIGJpbmFyeSBwYWNrYWdlLiBZb3UgIgorImNhbiB1c2UgdGhpcyBvcHRpb24gbXVsdGlwbGUgdGltZXM6IGRpcmVjdG9yaWVzIHdpbGwgYmUgdHJpZWQgaW4gdGhlIHNhbWUgIgorIm9yZGVyIGJlZm9yZSBkaXJlY3RvcmllcyBvZiBvdGhlciBiaW5hcnkgcGFja2FnZXMuIgorbXNnc3RyICIiCisiUmVjaGVyY2hlIGRhbnMgSTxwa2didWlsZGRpcj4gZW4gcHJlbWllciBldCBlc3NhaWUgZGUgdHJvdXZlciB1bmUgIgorImJpYmxpb3Row6hxdWUuIEMnZXN0IHV0aWxlIGxvcnNxdWUgbGUgcGFxdWV0IHNvdXJjZSBjb25zdHJ1aXQgcGx1c2lldXJzICIKKyJzYXZldXJzIGRlIGxhIG3Dqm1lIGJpYmxpb3Row6hxdWUgZXQgcXVlIHZvdXMgdm91bGV6IHZvdXMgYXNzdXJlciBxdWUgdm91cyAiCisib2J0aWVuZHJleiBsYSBkw6lwZW5kYW5jZSBkJ3VuIHBhcXVldCBiaW5haXJlIGRvbm7DqS4gQ2V0dGUgb3B0aW9uIHBldXQgw6p0cmUgIgorInV0aWxpc8OpZSBwbHVzaWV1cnMgZm9pc8KgOiBsZXMgcsOpcGVydG9pcmVzIHNlcm9udCBleGFtaW7DqXMgZGFucyBsZSBtw6ptZSBvcmRyZSAiCisiYXZhbnQgbGVzIHLDqXBlcnRvaXJlcyBkJ2F1dHJlcyBwYXF1ZXRzIGJpbmFpcmVzLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTk0CisjLCBuby13cmFwCittc2dpZCAiQjwtLWlnbm9yZS1taXNzaW5nLWluZm8+IgorbXNnc3RyICJCPC0taWdub3JlLW1pc3NpbmctaW5mbz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjAwCittc2dpZCAiIgorIkRvIG5vdCBmYWlsIGlmIGRlcGVuZGVuY3kgaW5mb3JtYXRpb24gY2FuJ3QgYmUgZm91bmQgZm9yIGEgc2hhcmVkIGxpYnJhcnkuICAiCisiVXNhZ2Ugb2YgdGhpcyBvcHRpb24gaXMgZGlzY291cmFnZWQsIGFsbCBsaWJyYXJpZXMgc2hvdWxkIHByb3ZpZGUgZGVwZW5kZW5jeSAiCisiaW5mb3JtYXRpb24gKGVpdGhlciB3aXRoIHNobGlicyBmaWxlcywgb3Igd2l0aCBzeW1ib2xzIGZpbGVzKSAgZXZlbiBpZiB0aGV5ICIKKyJhcmUgbm90IHlldCB1c2VkIGJ5IG90aGVyIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorIlBhcyBkJ8OpY2hlYyBzaSBsJ2luZm9ybWF0aW9uIGRlIGTDqXBlbmRhbmNlIG5lIHBldXQgcGFzIMOqdHJlIHRyb3V2w6llIHBvdXIgdW5lICIKKyJiaWJsaW90aMOocXVlIHBhcnRhZ8OpZS4gTCd1dGlsaXNhdGlvbiBkZSBjZXR0ZSBvcHRpb24gZXN0IGTDqWNvbnNlaWxsw6llLCAiCisidG91dGVzIGxlcyBiaWJsaW90aMOocXVlcyBkZXZyYWllbnQgZm91cm5pciBsZXVycyBpbmZvcm1hdGlvbnMgZGUgZMOpcGVuZGFuY2UgIgorIihxdWUgY2Ugc29pdCBhdmVjIGxlcyBmaWNoaWVycyBzaGxpYnMsIG91IGF2ZWMgbGVzIGZpY2hpZXJzIHN5bWJvbGVzKSwgbcOqbWUgIgorInNpIGVsbGVzIG5lIHNvbnQgcGFzIGVuY29yZSB1dGlsaXPDqWVzIHBhciBkJ2F1dHJlcyBwYXF1ZXRzLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjAwCisjLCBuby13cmFwCittc2dpZCAiQjwtLXdhcm5pbmdzPT5JPHZhbHVlPiIKK21zZ3N0ciAiQjwtLXdhcm5pbmdzPT5JPHZhbGV1cj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjExCittc2dpZCAiIgorIkk8dmFsdWU+IGlzIGEgYml0IGZpZWxkIGRlZmluaW5nIHRoZSBzZXQgb2Ygd2FybmluZ3MgdGhhdCBjYW4gYmUgZW1pdHRlZCBieSAiCisiQjxkcGtnLXNobGliZGVwcz4uICBCaXQgMCAodmFsdWU9MSkgZW5hYmxlcyB0aGUgd2FybmluZyBcInN5bWJvbCBJPHN5bT4gdXNlZCAiCisiYnkgSTxiaW5hcnk+IGZvdW5kIGluIG5vbmUgb2YgdGhlIGxpYnJhcmllc1wiLCBiaXQgMSAodmFsdWU9MikgZW5hYmxlcyB0aGUgIgorIndhcm5pbmcgXCJkZXBlbmRlbmN5IG9uIEk8bGlicmFyeT4gY291bGQgYmUgYXZvaWRlZFwiIGFuZCBiaXQgMiAodmFsdWU9NCkgICIKKyJlbmFibGVzIHRoZSB3YXJuaW5nIFwiSTxiaW5hcnk+IHNob3VsZG4ndCBiZSBsaW5rZWQgd2l0aCBJPGxpYnJhcnk+XCIuICBUaGUgIgorImRlZmF1bHQgSTx2YWx1ZT4gaXMgMzogdGhlIGZpcnN0IHR3byB3YXJuaW5ncyBhcmUgYWN0aXZlIGJ5IGRlZmF1bHQsIHRoZSAiCisibGFzdCBvbmUgaXMgbm90LiBTZXQgSTx2YWx1ZT4gdG8gNyBpZiB5b3Ugd2FudCBhbGwgd2FybmluZ3MgdG8gYmUgYWN0aXZlLiIKK21zZ3N0ciAiIgorIkk8dmFsZXVyPiBlc3QgdW4gY2hhbXAgZGUgwqvCoGJpdMKgwrsgZMOpZmluaXNzYW50IGwnZW5zZW1ibGUgZGVzIGF2ZXJ0aXNzZW1lbnRzICIKKyJxdWkgcGV1dmVudCDDqnRyZSDDqW1pcyBwYXIgQjxkcGtnLXNobGliZGVwcz4uIExlIGJpdCAwICh2YWxldXIgPSAxKSBhY3RpdmUgIgorImwnYXZlcnRpc3NlbWVudCDCq8Kgc3ltYm9sZSBJPHN5bT4gdXRpbGlzw6kgcGFyIGxlIEk8YmluYWlyZT4gdHJvdXbDqSBkYW5zICIKKyJhdWN1bmUgZGVzIGJpYmxpb3Row6hxdWVzwqDCuy4gTGUgYml0IDEgKHZhbGV1ciA9IDIpIGFjdGl2ZSBsJ2F2ZXJ0aXNzZW1lbnQgIgorIsKrwqBsYSBkw6lwZW5kYW5jZSDDoCBsYSBJPGJpYmxpb3Row6hxdWU+IHBvdXJyYWl0IMOqdHJlIMOpdml0w6llwqDCuy4gTGUgYml0IDIgIgorIih2YWxldXIgPSA0KSBhY3RpdmUgbCdhdmVydGlzc2VtZW50IMKrwqBMZSBJPGJpbmFpcmU+IG5lIGRldnJhaXQgcGFzIMOqdHJlIGxpw6kgIgorIsOgIGxhIEk8YmlibGlvdGjDqHF1ZT7CoMK7LiBMYSBJPHZhbGV1cj4gcGFyIGTDqWZhdXQgZXN0IDPCoDogbGVzIGRldXggcHJlbWnDqHJlcyAiCisibWlzZXMgZW4gZ2FyZGUgc29udCBhY3RpdmVzIHBhciBkw6lmYXV0LCBsYSBkZXJuacOocmUgbmUgbCdlc3QgcGFzLiAiCisiUG9zaXRpb25uZXogbGEgSTx2YWxldXI+IMOgIDcgc2kgdm91cyBzb3VoYWl0ZXogcXVlIHRvdXMgbGVzIGF2ZXJ0aXNzZW1lbnRzICIKKyJzb2llbnQgYWN0aWZzLiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjIyCisjLCBuby13cmFwCittc2dpZCAiV0FSTklOR1MiCittc2dzdHIgIkFWRVJUSVNTRU1FTlRTIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjIzMAorbXNnaWQgIiIKKyJTaW5jZSBCPGRwa2ctc2hsaWJkZXBzPiBhbmFseXplcyB0aGUgc2V0IG9mIHN5bWJvbHMgdXNlZCBieSBlYWNoIGJpbmFyeSBvZiAiCisidGhlIGdlbmVyYXRlZCBwYWNrYWdlLCBpdCBpcyBhYmxlIHRvIGVtaXQgd2FybmluZ3MgaW4gc2V2ZXJhbCBjYXNlcy4gVGhleSAiCisiaW5mb3JtIHlvdSBvZiB0aGluZ3MgdGhhdCBjYW4gYmUgaW1wcm92ZWQgaW4gdGhlIHBhY2thZ2UuIEluIG1vc3QgY2FzZXMsICIKKyJ0aG9zZSBpbXByb3ZlbWVudHMgY29uY2VybiB0aGUgdXBzdHJlYW0gc291cmNlcyBkaXJlY3RseS4gQnkgb3JkZXIgb2YgIgorImRlY3JlYXNpbmcgaW1wb3J0YW5jZSwgaGVyZSBhcmUgdGhlIHZhcmlvdXMgd2FybmluZ3MgdGhhdCB5b3UgY2FuIGVuY291bnRlcjoiCittc2dzdHIgIiIKKyJEZXB1aXMgcXVlIEI8ZHBrZy1zaGxpYmRlcHM+IGFuYWx5c2UgbCdlbnNlbWJsZSBkZXMgc3ltYm9sZXMgdXRpbGlzw6lzIHBhciAiCisiY2hhcXVlIGJpbmFpcmUgZ8OpbsOpcsOpIHBhciBsZSBwYXF1ZXQsIGlsIGVzdCBlbiBtZXN1cmUgZCfDqW1ldHRyZSBkZXMgIgorImF2ZXJ0aXNzZW1lbnRzIGRhbnMgcGx1c2lldXJzIGNhcy4gSWxzIHZvdXMgaW5mb3JtZW50IGRlcyBjaG9zZXMgcXVpIHBldXZlbnQgIgorIsOqdHJlIGFtw6lsaW9yw6llcyBkYW5zIGxlIHBhcXVldC4gRGFucyBsYSBwbHVwYXJ0IGRlcyBjYXMsIGNlcyBhbcOpbGlvcmF0aW9ucyAiCisiY29uY2VybmVudCBkaXJlY3RlbWVudCBsZXMgc291cmNlcyBhbW9udC4gRGFucyBsJ29yZHJlIGQnaW1wb3J0YW5jZSAiCisiZMOpY3JvaXNzYW50LCB2b2ljaSBsZXMgZGlmZsOpcmVudHMgYXZlcnRpc3NlbWVudHMgcXVlIHZvdXMgcG91dmV6IHJlbmNvbnRyZXLCoDoiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNobGliZGVwcy4xOjIzMAorIywgbm8td3JhcAorbXNnaWQgIkI8c3ltYm9sPkk8IHN5bT5CPCB1c2VkIGJ5ID5JPGJpbmFyeT5CPCBmb3VuZCBpbiBub25lIG9mIHRoZSBsaWJyYXJpZXMuPiIKK21zZ3N0ciAiQjxzeW1ib2xlPkk8IHN5bT5CPCB1dGlsaXPDqSBwYXIgPkk8YmluYWlyZT5CPCB0cm91dsOpIGRhbnMgYXVjdW5lIGRlcyBiaWJsaW90aMOocXVlcy4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjIzNgorbXNnaWQgIiIKKyJUaGUgaW5kaWNhdGVkIHN5bWJvbCBoYXMgbm90IGJlZW4gZm91bmQgaW4gdGhlIGxpYnJhcmllcyBsaW5rZWQgd2l0aCB0aGUgIgorImJpbmFyeS4gVGhlIEk8YmluYXJ5PiBpcyBtb3N0IGxpa2VseSBhIGxpYnJhcnkgYW5kIGl0IG5lZWRzIHRvIGJlIGxpbmtlZCAiCisid2l0aCBhbiBhZGRpdGlvbmFsIGxpYnJhcnkgZHVyaW5nIHRoZSBidWlsZCBwcm9jZXNzIChvcHRpb24gQjwtbD5JPGxpYnJhcnk+ICIKKyJvZiB0aGUgbGlua2VyKS4iCittc2dzdHIgIiIKKyJMZSBzeW1ib2xlIGluZGlxdcOpIG4nYSBwYXMgw6l0w6kgdHJvdXbDqSBkYW5zIGxlcyBiaWJsaW90aMOocXVlcyBsacOpZXMgYXUgIgorImJpbmFpcmUuIExlIEk8YmluYWlyZT4gZXN0IHByb2JhYmxlbWVudCBwbHV0w7R0IHVuZSBiaWJsaW90aMOocXVlIGV0IGVsbGUgZG9pdCAiCisiw6p0cmUgbGnDqWUgYXZlYyB1bmUgYmlibGlvdGjDqHF1ZSBzdXBwbMOpbWVudGFpcmUgZHVyYW50IGxlIHByb2Nlc3N1cyBkZSAiCisiY29uc3RydWN0aW9uIChsJ29wdGlvbiBCPC1sPkk8YmlibGlvdGjDqHF1ZT4gZGUgbCfDqWRpdGV1ciBkZSBsaWVucykuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zaGxpYmRlcHMuMToyMzYKKyMsIG5vLXdyYXAKK21zZ2lkICJJPGJpbmFyeT5CPCBjb250YWlucyBhbiB1bnJlc29sdmFibGUgcmVmZXJlbmNlIHRvIHN5bWJvbCA+STxzeW0+Qjw6IGl0J3MgcHJvYmFibHkgYSBwbHVnaW4+IgorbXNnc3RyICJJPGJpbmFyeT5CPCBjb250aWVudCB1bmUgcsOpZsOpcmVuY2Ugbm9uIHLDqXNvbHVlIGF1IHN5bWJvbGUgPkk8c3ltPkI8OiBpbCBzJ2FnaXQgcHJvYmFibGVtZW50IGQndW4gZ3JlZmZvbiAocGx1Z2luKT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjQ5Cittc2dpZCAiIgorIlRoZSBpbmRpY2F0ZWQgc3ltYm9sIGhhcyBub3QgYmVlbiBmb3VuZCBpbiB0aGUgbGlicmFyaWVzIGxpbmtlZCB3aXRoIHRoZSAiCisiYmluYXJ5LiBUaGUgSTxiaW5hcnk+IGlzIG1vc3QgbGlrZWx5IGEgcGx1Z2luIGFuZCB0aGUgc3ltYm9sIGlzIHByb2JhYmx5ICIKKyJwcm92aWRlZCBieSB0aGUgcHJvZ3JhbSB0aGF0IGxvYWRzIHRoaXMgcGx1Z2luLiBJbiB0aGVvcnkgYSBwbHVnaW4gZG9lc24ndCAiCisiaGF2ZSBhbnkgU09OQU1FIGJ1dCB0aGlzIGJpbmFyeSBkb2VzIGhhdmUgb25lIGFuZCBhcyBzdWNoIGl0IGNvdWxkIG5vdCBiZSAiCisiY2xlYXJseSBpZGVudGlmaWVkIGFzIHN1Y2guIEhvd2V2ZXIgdGhlIGZhY3QgdGhhdCB0aGUgYmluYXJ5IGlzIHN0b3JlZCBpbiBhICIKKyJub24tcHVibGljIGRpcmVjdG9yeSBpcyBhIHN0cm9uZyBpbmRpY2F0aW9uIHRoYXQncyBpdCdzIG5vdCBhIG5vcm1hbCBzaGFyZWQgIgorImxpYnJhcnkuIElmIHRoZSBiaW5hcnkgaXMgcmVhbGx5IGEgcGx1Z2luLCB0aGVuIGRpc3JlZ2FyZCB0aGlzIHdhcm5pbmcuIEJ1dCAiCisidGhlcmUncyBhbHdheXMgdGhlIHBvc3NpYmlsaXR5IHRoYXQgaXQncyBhIHJlYWwgbGlicmFyeSBhbmQgdGhhdCBwcm9ncmFtcyAiCisibGlua2luZyB0byBpdCBhcmUgdXNpbmcgYW4gUlBBVEggc28gdGhhdCB0aGUgZHluYW1pYyBsb2FkZXIgZmluZHMgaXQuIEluICIKKyJ0aGF0IGNhc2UsIHRoZSBsaWJyYXJ5IGlzIGJyb2tlbiBhbmQgbmVlZHMgdG8gYmUgZml4ZWQuIgorbXNnc3RyICIiCisiTGUgc3ltYm9sZSBpbmRpcXXDqSBuJ2EgcGFzIMOpdMOpIHRyb3V2w6kgZGFucyBsZXMgYmlsYmlvaHTDqHF1ZXMgbGnDqWVzIGF2ZWMgbGUgIgorImZpY2hpZXIgYmluYWlyZS4gTGUgSTxiaW5haXJlPiBlcyB0csOocyBwcm9iYWJsZW1lbnQgdW4gZ3JlZmZvbiAocGx1Z2luKSBldCAiCisibGUgc3ltYm9sZSBlc3QgcHJvYmFibGVtZW50IGZvdXJuaSBwYXIgbGUgcHJvZ3JhbW1lIHF1aSBjaGFyZ2UgY2UgZ3JlZmZvbi4gIgorIkVuIHRow6lvcmksIHVuIGdyZWZmb24gbidhIHBhcyBkZSDCq8KgU09OQU1FwqDCuyBtYWlzIGNlIGJpbmFpcmUgZW4gcG9zc8OoZGUgdW4gZXQgIgorIm4nYSBwYXMgcHUgw6p0cmUgaWRlbnRpZmnDqSBlbiB0YW50IHF1ZSB0ZWwuIENlcGVuZGFudCwgbGUgZmFpdCBxdWUgbGUgYmluYWlyZSAiCisic29pdCBzdG9ja8OpIGRhbnMgdW4gcsOpcGVydG9pcmUgbm9uIHB1YmxpYyBlc3QgdW5lIGluZGljYXRpb24gZm9ydGUgcXUnaWwgbmUgIgorInMnYWdpdCBwYXMgZCd1bmUgYmlibGlvdGjDqHF1ZSBwYXJ0YWfDqWUgbm9ybWFsZS4gU2kgbGUgYmluYWlyZSBlc3QgdnJhaW1lbnQgIgorInVuIGdyZWZmb24sIHZvdXMgcG91dmV6IGlnbm9yZXIgY2V0IGF2ZXJ0aXNzZW1lbnQuIElsIGV4aXN0ZSBjZXBlbmRhbnQgdW5lICIKKyJwb3NzaWJpbGl0w6kgcXUnaWwgcydhZ2lzc2UgZCd1biB2cmFpIGJpbmFpcmUgZXQgcXVlIGxlcyBwcm9ncmFtbWVzIGF2ZWMgIgorImxlcXVlbCBpbCBlc3QgbGnDqSB1dGlsaXNlbnQgdW4gUlBBVEggYWZpbiBxdWUgbGUgY2hhcmdldXIgZHluYW1pcXVlIGxlICIKKyJ0cm91dmUuIERhbnMgY2UgY2FzLCBsYSBiaWJsaW90aMOocXVlIGVzdCBpbmNvcnJlY3RlIGV0IGRvaXQgw6p0cmUgY29ycmlnw6llLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjQ5CisjLCBuby13cmFwCittc2dpZCAiQjxkZXBlbmRlbmN5IG9uID5JPGxpYnJhcnk+QjwgY291bGQgYmUgYXZvaWRlZCBpZiA+STxiaW5hcmllcz5CPCB3ZXJlIG5vdCB1c2VsZXNzbHkgbGlua2VkIGFnYWluc3QgaXQgKHRoZXkgdXNlIG5vbmUgb2YgaXRzIHN5bWJvbHMpLj4iCittc2dzdHIgIkI8bGEgZMOpcGVuZGFuY2Ugc3VyIGxhPiBJPGJpYmxpb3Row6hxdWU+IEI8cG91cnJhaXQgw6p0cmUgw6l2aXTDqWUgc2k+IEk8bGVzIGJpbmFpcmVzPkI8IGludXRpbGVzIG4nw6l0YWllbnQgcGFzIGxpw6lzIMOgIGNlbGxlLWNpIChpbHMgbid1dGlsaXNlbnQgYXVjdW4gZGUgc2VzIHN5bWJvbGVzKS4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjI1NQorbXNnaWQgIiIKKyJOb25lIG9mIHRoZSBJPGJpbmFyaWVzPiB0aGF0IGFyZSBsaW5rZWQgd2l0aCBJPGxpYnJhcnk+IHVzZSBhbnkgb2YgdGhlICIKKyJzeW1ib2xzIHByb3ZpZGVkIGJ5IHRoZSBsaWJyYXJ5LiBCeSBmaXhpbmcgYWxsIHRoZSBiaW5hcmllcywgeW91IHdvdWxkIGF2b2lkICIKKyJ0aGUgZGVwZW5kZW5jeSBhc3NvY2lhdGVkIHRvIHRoaXMgbGlicmFyeSAodW5sZXNzIHRoZSBzYW1lIGRlcGVuZGVuY3kgaXMgIgorImFsc28gZ2VuZXJhdGVkIGJ5IGFub3RoZXIgbGlicmFyeSB0aGF0IGlzIHJlYWxseSB1c2VkKS4iCittc2dzdHIgIiIKKyJBdWN1biBkZXMgSTxiaW5haXJlcz4gbGnDqXMgw6AgbGEgSTxiaWJsaW90aMOocXVlPiB1dGlsaXNlIGxlcyBzeW1ib2xlcyBxdSdlbGxlICIKKyJmb3Vybml0LiBFbiBjb3JyaWdlYW50IHRvdXMgbGVzIGJpbmFpcmVzLCB2b3VzIMOpdml0ZXJpZXogbGEgZMOpcGVuZGFuY2UgIgorImFzc29jacOpZSDDoCBjZXR0ZSBiaWJsaW90aMOocXVlICjDoCBtb2lucyBxdWUgbGEgbcOqbWUgZMOpcGVuZGFuY2Ugc29pdCDDqWdhbGVtZW50ICIKKyJsacOpZSDDoCB1bmUgYXV0cmUgYmlibGlvdGjDqHF1ZSBxdWkgZXN0IGVsbGUgcsOpZWxsZW1lbnQgdXRpbGlzw6llKS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNobGliZGVwcy4xOjI1NQorIywgbm8td3JhcAorbXNnaWQgIkk8YmluYXJ5PkI8IHNob3VsZG4ndCBiZSBsaW5rZWQgd2l0aCA+STxsaWJyYXJ5PkI8IChpdCB1c2VzIG5vbmUgb2YgaXRzIHN5bWJvbHMpLj4iCittc2dzdHIgIkk8bGUgYmluYWlyZT5CPCBuZSBkZXZyYWl0IHBhcyDDqnRyZSBsacOpIGF2ZWMgbGEgPkk8YmlibGlvdGjDqHF1ZT5CPCAoaWwgbmUgZmFpdCB1c2FnZSBkJ2F1Y3VuIGRlIHNlcyBzeW1ib2xlcykuPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToyNjIKK21zZ2lkICIiCisiVGhlIEk8YmluYXJ5PiBpcyBsaW5rZWQgdG8gYSBsaWJyYXJ5IHRoYXQgaXQgZG9lc24ndCBuZWVkLiBJdCdzIG5vdCBhICIKKyJwcm9ibGVtIGJ1dCBzb21lIHNtYWxsIHBlcmZvcm1hbmNlIGltcHJvdmVtZW50cyBpbiBiaW5hcnkgbG9hZCB0aW1lIGNhbiBiZSAiCisib2J0YWluZWQgYnkgbm90IGxpbmtpbmcgdGhpcyBsaWJyYXJ5IHRvIHRoaXMgYmluYXJ5LiBUaGlzIHdhcm5pbmcgY2hlY2tzIHRoZSAiCisic2FtZSBpbmZvcm1hdGlvbiB0aGFuIHRoZSBwcmV2aW91cyBvbmUgYnV0IGRvZXMgaXQgZm9yIGVhY2ggYmluYXJ5IGluc3RlYWQgIgorIm9mIGRvaW5nIHRoZSBjaGVjayBnbG9iYWxseSBvbiBhbGwgYmluYXJpZXMgYW5hbHl6ZWQuIgorbXNnc3RyICIiCisiTGUgSTxiaW5haXJlPiBlc3QgbGnDqSDDoCB1bmUgYmlibGlvdGjDqHF1ZSBkb250IGlsIG4nYSBwYXMgYmVzb2luLiBDZSBuJ2VzdCAiCisicGFzIHVuIHByb2Jsw6htZSBtYWlzIGRlIHBldGl0ZXMgYW3DqWxpb3JhdGlvbnMgZGUgcGVyZm9ybWFuY2UgZGFucyBsZSB0ZW1wcyAiCisiZGUgY2hhcmdlbWVudCBkZSBjZWx1aS1jaSBwZXV2ZW50IMOqdHJlIG9idGVudWVzIGVuIG5lIGxlIGxpYW50IHBhcyDDoCBjZXR0ZSAiCisiYmlibGlvdGjDqHF1ZS4gQ2V0IGF2ZXJ0aXNzZW1lbnQgdsOpcmlmaWUgbGEgbcOqbWUgaW5mb3JtYXRpb24gcXVlIGxhICIKKyJwcsOpY8OpZGVudGUgbWFpcyBlbGxlIGxlIGZhaXQgcG91ciB0b3VzIGxlcyBiaW5haXJlcyBhdSBsaWV1IGRlIG5lIGZhaXJlIGxlICIKKyJjb250csO0bGUgcXUnYXUgbml2ZWF1IGdsb2JhbCBzdXIgdG91cyBsZXMgYmluYWlyZXMgYW5hbHlzw6lzLiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjYyCisjLCBuby13cmFwCittc2dpZCAiRVJST1JTIgorbXNnc3RyICJFUlJFVVJTIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjI2OQorbXNnaWQgIiIKKyJCPGRwa2ctc2hsaWJkZXBzPiB3aWxsIGZhaWwgaWYgaXQgY2FuJ3QgZmluZCBhIHB1YmxpYyBsaWJyYXJ5IHVzZWQgYnkgYSAiCisiYmluYXJ5IG9yIGlmIHRoaXMgbGlicmFyeSBoYXMgbm8gYXNzb2NpYXRlZCBkZXBlbmRlbmN5IGluZm9ybWF0aW9uIChlaXRoZXIgIgorInNobGlicyBmaWxlIG9yIHN5bWJvbHMgZmlsZSkuIEEgcHVibGljIGxpYnJhcnkgaGFzIGEgU09OQU1FIGFuZCBpcyB2ZXJzaW9uZWQgIgorIihsaWJzb21ldGhpbmcuc28uSTxYPikuIEEgcHJpdmF0ZSBsaWJyYXJ5IChsaWtlIGEgcGx1Z2luKSBzaG91bGQgbm90IGhhdmUgYSAiCisiU09OQU1FIGFuZCBkb2Vzbid0IG5lZWQgdG8gYmUgdmVyc2lvbmVkLiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1zaGxpYmRlcHM+IMOpY2hvdWVyYSBzJ2lsIG5lIHBldXQgcGFzIHRyb3V2ZXIgZGUgYmlibGlvdGjDqHF1ZSBwdWJsaXF1ZSAiCisidXRpbGlzw6llIHBhciB1biBiaW5haXJlIG91IHNpIGNldHRlIGJpYmxpb3Row6hxdWUgbidhIHBhcyBkJ2luZm9ybWF0aW9ucyBzdXIgIgorImxlcyBkw6lwZW5kYW5jZXMgYXNzb2Npw6llcyAoc29pdCBsZXMgZmljaGllciBzaGxpYnMsIHNvaXQgbGUgZmljaGllciBkZXMgIgorInN5bWJvbGVzKS4gVW5lIGJpYmxpb3Row6hxdWUgcHVibGlxdWUgYSB1biBTT05BTUUgZXQgdW4gbnVtw6lybyBkZSB2ZXJzaW9uICIKKyIobGlic29tZXRoaW5nLnNvLkk8WD4pLiBVbmUgYmlibGlvdGjDqHF1ZSBwcml2w6llIChjb21tZSB1biBtb2R1bGUgIgorImFkZGl0aW9ubmVsKSBuZSBkZXZyYWl0IHBhcyBhdm9pciBkZSBTT05BTUUgZXQgbidhIHBhcyBiZXNvaW4gZCdhdm9pciBkZSAiCisidmVyc2lvbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNobGliZGVwcy4xOjI2OQorIywgbm8td3JhcAorbXNnaWQgIkI8Y291bGRuJ3QgZmluZCBsaWJyYXJ5ID5JPGxpYnJhcnktc29uYW1lPkI8IG5lZWRlZCBieSA+STxiaW5hcnk+QjwgKGl0cyBSUEFUSCBpcyAnPkk8cnBhdGg+QjwnKT4iCittc2dzdHIgIkI8aW1wb3NzaWJsZSBkZSB0cm91dmVyIGxhIGJpYmxpb3Row6hxdWUgPkk8bGlicmFyeS1zb25hbWU+IEI8ZGVtYW5kw6llIHBhciBsZT4gSTxiaW5haXJlPiBCPChzb24gUlBBVEggZXN0ICc+STxycGF0aD5CPCcpPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToyODUKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlRoZSBJPGJpbmFyeT4gdXNlcyBhIGxpYnJhcnkgY2FsbGVkIEk8bGlicmFyeS1zb25hbWU+IGJ1dCBCPGRwa2ctIgorI3wgInNobGliZGVwcz4gaGFzIGJlZW4gdW5hYmxlIHRvIGZpbmQgdGhlIGxpYnJhcnkuICBCPGRwa2ctc2hsaWJkZXBzPiAiCisjfCAiY3JlYXRlcyBhIGxpc3Qgb2YgZGlyZWN0b3JpZXMgdG8gY2hlY2sgYXMgZm9sbG93aW5nOiBkaXJlY3RvcmllcyBsaXN0ZWQgIgorI3wgImluIHRoZSBSUEFUSCBvZiB0aGUgYmluYXJ5LCBkaXJlY3RvcmllcyBsaXN0ZWQgaW4gL2V0Yy9sZC5zby5jb25mLCAiCisjfCAiZGlyZWN0b3JpZXMgbGlzdGVkIGluIHRoZSBMRF9MSUJSQVJZX1BBVEggZW52aXJvbm1lbnQgdmFyaWFibGUsIGFuZCAiCisjfCAic3RhbmRhcmQgcHVibGljIGRpcmVjdG9yaWVzICgvbGliLCAvdXNyL2xpYiwgL2xpYjMyLCAvdXNyL2xpYjMyLCAvbGliNjQsIC8iCisjfCAidXNyL2xpYjY0KS4gVGhlbiBpdCBjaGVja3MgdGhvc2UgZGlyZWN0b3JpZXMgaW4gdGhlIHBhY2thZ2UncyBidWlsZCB0cmVlICIKKyN8ICJvZiB0aGUgYmluYXJ5IGJlaW5nIGFuYWx5emVkLCBpbiB0aGUgcGFja2FnZXMncyBidWlsZCB0cmVlcyBpbmRpY2F0ZWQgIgorI3wgIndpdGggdGhlIC1TIGNvbW1hbmQtbGluZSBvcHRpb24sIGluIG90aGVyIHBhY2thZ2VzJ3MgYnVpbGQgdHJlZXMgdGhhdCAiCisjfCAiY29udGFpbnMgYSBERUJJQU4vc2hsaWJzIG9yIERFQklBTi9zeW1ib2xzIGZpbGUgYW5kIGZpbmFsbHkgaW4gdGhlIHJvb3QgIgorI3wgImRpcmVjdG9yeS4gIElmIHRoZSBsaWJyYXJ5IGlzIG5vdCBmb3VuZCBpbiBhbnkgb2YgdGhvc2UgZGlyZWN0b3JpZXMsIHRoZW4gIgorI3wgInlvdSBnZXQgdGhpcyBlcnJvci4iCittc2dpZCAiIgorIlRoZSBJPGJpbmFyeT4gdXNlcyBhIGxpYnJhcnkgY2FsbGVkIEk8bGlicmFyeS1zb25hbWU+IGJ1dCBCPGRwa2ctc2hsaWJkZXBzPiAiCisiaGFzIGJlZW4gdW5hYmxlIHRvIGZpbmQgdGhlIGxpYnJhcnkuICBCPGRwa2ctc2hsaWJkZXBzPiBjcmVhdGVzIGEgbGlzdCBvZiAiCisiZGlyZWN0b3JpZXMgdG8gY2hlY2sgYXMgZm9sbG93aW5nOiBkaXJlY3RvcmllcyBsaXN0ZWQgaW4gdGhlIFJQQVRIIG9mIHRoZSAiCisiYmluYXJ5LCBkaXJlY3RvcmllcyBsaXN0ZWQgaW4gL2V0Yy9sZC5zby5jb25mLCBkaXJlY3RvcmllcyBsaXN0ZWQgaW4gdGhlICIKKyJMRF9MSUJSQVJZX1BBVEggZW52aXJvbm1lbnQgdmFyaWFibGUsIGFuZCBzdGFuZGFyZCBwdWJsaWMgZGlyZWN0b3JpZXMgKC8iCisibGliLCAvdXNyL2xpYiwgL2xpYjMyLCAvdXNyL2xpYjMyLCAvbGliNjQsIC91c3IvbGliNjQpLiBUaGVuIGl0IGNoZWNrcyB0aG9zZSAiCisiZGlyZWN0b3JpZXMgaW4gdGhlIHBhY2thZ2UncyBidWlsZCB0cmVlIG9mIHRoZSBiaW5hcnkgYmVpbmcgYW5hbHl6ZWQsIGluIHRoZSAiCisicGFja2FnZXMnIGJ1aWxkIHRyZWVzIGluZGljYXRlZCB3aXRoIHRoZSAtUyBjb21tYW5kLWxpbmUgb3B0aW9uLCBpbiBvdGhlciAiCisicGFja2FnZXMnIGJ1aWxkIHRyZWVzIHRoYXQgY29udGFpbnMgYSBERUJJQU4vc2hsaWJzIG9yIERFQklBTi9zeW1ib2xzIGZpbGUgIgorImFuZCBmaW5hbGx5IGluIHRoZSByb290IGRpcmVjdG9yeS4gIElmIHRoZSBsaWJyYXJ5IGlzIG5vdCBmb3VuZCBpbiBhbnkgb2YgIgorInRob3NlIGRpcmVjdG9yaWVzLCB0aGVuIHlvdSBnZXQgdGhpcyBlcnJvci4iCittc2dzdHIgIiIKKyJMZSBJPGJpbmFpcmU+IHV0aWxpc2UgdW5lIGJpYmxpb3Row6hxdWUgYXBwZWzDqWUgSTxsaWJyYXJ5LXNvbmFtZT4gbWFpcyBCPGRwa2ctIgorInNobGliZGVwcz4gbidhIHBhcyDDqXTDqSBlbiBtZXN1cmUgZGUgdHJvdXZlciBjZXR0ZSBiaWJsaW90aMOocXVlLiBCPGRwa2ctIgorInNobGliZGVwcz4gY3LDqWUgdW5lIGxpc3RlIGRlIHLDqXBlcnRvaXJlcyDDoCB2w6lyaWZpZXIgZGUgbGEgbWFuacOocmUgc3VpdmFudGXCoDogIgorImxlcyByw6lwZXJ0b2lyZXMgw6ludW3DqXLDqXMgZGFucyBsZSBSUEFUSCBkdSBiaW5haXJlLCBsZXMgcsOpcGVydG9pcmVzIGxpc3TDqXMgIgorImRhbnMgL2V0Yy9sZC5zby5jb25mLCBsZXMgcsOpcGVydG9pcmVzIGxpc3TDqXMgZGFucyBsYSB2YXJpYWJsZSAiCisiZCdlbnZpcm9ubmVtZW50IExEX0xJQlJBUllfUEFUSCwgZXQgbGVzIHLDqXBlcnRvaXJlcyBwdWJsaWNzIHN0YW5kYXJkICgvbGliLCAvIgorInVzci9saWIsIC9saWIzMiwgL3Vzci9saWIzMiwgL2xpYjY0LCAvdXNyL2xpYjY0KS4gRW5zdWl0ZSwgaWwgdsOpcmlmaWUgbGVzICIKKyJyw6lwZXJ0b2lyZXMgcXVpIHNvbnQgZGFucyBsJ2FyYnJlIGRlIGNvbnN0cnVjdGlvbiBkdSBwYXF1ZXQgYmluYWlyZSBlbiBjb3VycyAiCisiZCdhbmFseXNlLCBkYW5zIGwnYXJicmUgZGUgY29uc3RydWN0aW9uIGR1IHBhcXVldHMgaW5kaXF1w6kgYXZlYyBsJ29wdGlvbiBkZSAiCisibGlnbmUgZGUgY29tbWFuZGUgLVMsIGRhbnMgbGVzIGF1dHJlcyBhcmJyZXMgZGUgcGFxdWV0cyBxdWkgY29udGllbm5lbnQgZGVzICIKKyJmaWNoaWVycyBERUJJQU4vc2hsaWJzIG91IHVuIERFQklBTi9zeW1ib2xzIGV0IGVuZmluIGRhbnMgbGUgcsOpcGVydG9pcmUgIgorInJhY2luZS4gU2kgbGEgYmlibGlvdGjDqHF1ZSBuJ2VzdCBwYXMgdHJvdXbDqWUgZGFucyBsJ3VuIGRlIGNlcyByw6lwZXJ0b2lyZXMsICIKKyJhbG9ycyBjZSBtZXNzYWdlIGQnZXJyZXVyIGVzdCBvYnRlbnUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjI5MQorbXNnaWQgIiIKKyJJZiB0aGUgbGlicmFyeSBub3QgZm91bmQgaXMgaW4gYSBwcml2YXRlIGRpcmVjdG9yeSBvZiB0aGUgc2FtZSBwYWNrYWdlLCB0aGVuICIKKyJ5b3Ugd2FudCB0byBhZGQgdGhlIGRpcmVjdG9yeSB0byBMRF9MSUJSQVJZX1BBVEguIElmIGl0J3MgaW4gYW5vdGhlciBiaW5hcnkgIgorInBhY2thZ2UgYmVpbmcgYnVpbHQsIHlvdSB3YW50IHRvIG1ha2Ugc3VyZSB0aGF0IHRoZSBzaGxpYnMvc3ltYm9scyBmaWxlIG9mICIKKyJ0aGlzIHBhY2thZ2UgaXMgYWxyZWFkeSBjcmVhdGVkIGFuZCB0aGF0IExEX0xJQlJBUllfUEFUSCBjb250YWlucyB0aGUgIgorImFwcHJvcHJpYXRlIGRpcmVjdG9yeSBpZiBpdCBhbHNvIGlzIGluIGEgcHJpdmF0ZSBkaXJlY3RvcnkuIgorbXNnc3RyICIiCisiU2kgbGEgYmlibGlvdGjDqHF1ZSBub24gdHJvdXbDqWUgZXN0IGNlcGVuZGFudCBkaXNwb25pYmxlIGRhbnMgbGUgcsOpcGVydG9pcmUgIgorInByaXbDqSBkZSBjZSBtw6ptZSBwYXF1ZXQsIGFsb3JzIGlsIHZvdXMgZmF1dCBham91dGVyIGNlIHLDqXBlcnRvaXJlIGRhbnMgIgorIkxEX0xJQlJBUllfUEFUSC4gUydpbCBlc3QgZGFucyB1biBhdXRyZSBwYXF1ZXQgYmluYWlyZSBlbiBjb3VycyBkZSAiCisiY29uc3RydWN0aW9uLCBhbG9ycyBhc3N1cmV6LXZvdXMgcXVlIGxlIGZpY2hpZXIgc2hsaWJzL3N5bWJvbHMgZGUgY2UgcGFxdWV0ICIKKyJlc3QgZMOpasOgIGNyw6nDqSBldCBxdWUgTERfTElCUkFSWV9QQVRIIGNvbnRpZW50IGxlIHLDqXBlcnRvaXJlIGFwcHJvcHJpw6kgc2kgIgorImMnZXN0IGF1c3NpIHVuIHLDqXBlcnRvaXJlIHByaXbDqS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNobGliZGVwcy4xOjI5MQorIywgbm8td3JhcAorbXNnaWQgIkI8bm8gZGVwZW5kZW5jeSBpbmZvcm1hdGlvbiBmb3VuZCBmb3IgPkk8bGlicmFyeS1maWxlPkI8ICh1c2VkIGJ5ID5JPGJpbmFyeT5CPCkuPiIKK21zZ3N0ciAiQjxhdWN1bmUgaW5mb3JtYXRpb24gZGUgZMOpcGVuZGFuY2UgdHJvdXbDqSBwb3VyPiBJPGxhIGJpYmxpb3Row6hxdWU+IEI8KHV0aWxpc8OpZSBwYXIgbGU+IEk8YmluYWlyZT5CPCkuPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTozMDQKK21zZ2lkICIiCisiVGhlIGxpYnJhcnkgbmVlZGVkIGJ5IEk8YmluYXJ5PiBoYXMgYmVlbiBmb3VuZCBieSBCPGRwa2ctc2hsaWJkZXBzPiBpbiAiCisiSTxsaWJyYXJ5LWZpbGU+IGJ1dCBCPGRwa2ctc2hsaWJkZXBzPiBoYXMgYmVlbiB1bmFibGUgdG8gZmluZCBhbnkgZGVwZW5kZW5jeSAiCisiaW5mb3JtYXRpb24gZm9yIHRoYXQgbGlicmFyeS4gVG8gZmluZCBvdXQgdGhlIGRlcGVuZGVuY3ksIGl0IGhhcyB0cmllZCB0byAiCisibWFwIHRoZSBsaWJyYXJ5IHRvIGEgRGViaWFuIHBhY2thZ2Ugd2l0aCB0aGUgaGVscCBvZiBCPGRwa2cgLVMgPkk8bGlicmFyeS0iCisiZmlsZT4uICBUaGVuIGl0IGNoZWNrZWQgdGhlIGNvcnJlc3BvbmRpbmcgc2hsaWJzIGFuZCBzeW1ib2xzIGZpbGVzIGluIC92YXIvIgorImxpYi9kcGtnL2luZm8vLCBhbmQgaW4gdGhlIHZhcmlvdXMgcGFja2FnZSdzIGJ1aWxkIHRyZWVzIChkZWJpYW4vKi9ERUJJQU4vKS4iCittc2dzdHIgIiIKKyJMYSBiaWJsaW90aMOocXVlIG7DqWNlc3NhaXJlIGF1IEk8YmluYWlyZT4gYSDDqXTDqSB0cm91dsOpZSBwYXIgQjxkcGtnLXNobGliZGVwcz4gIgorImRhbnMgSTxmaWNoaWVyLWJpYmxpb3Row6hxdWU+IG1haXMgQjxkcGtnLXNobGliZGVwcz4gbidhIHBhcyDDqXTDqSBlbiBtZXN1cmUgZGUgIgorInRyb3V2ZXIgZCdpbmZvcm1hdGlvbnMgZGUgZMOpcGVuZGFuY2UgcG91ciBjZXR0ZSBiaWJsaW90aMOocXVlLiBQb3VyIHRyb3V2ZXIgIgorImxhIGTDqXBlbmRhbmNlLCBpbCBhIGVzc2F5w6kgZGUgbGllciBsYSBiaWJsaW90aMOocXVlIMOgIHVuIHBhcXVldCBEZWJpYW4gYXZlYyAiCisibCdhaWRlIGRlIEI8ZHBrZyAtUyA+STxmaWNoaWVyLWJpYmxpb3Row6hxdWU+LiBQdWlzLCBpbCBhIHbDqXJpZmnDqSBsZXMgc2hsaWJzICIKKyJjb3JyZXNwb25kYW50cyBldCBsZXMgZmljaGllcnMgc3ltYm9sZXMgZGUgL3Zhci9saWIvZHBrZy9pbmZvLyBldCBlbmZpbiBsZXMgIgorImRpZmbDqXJlbnRzIGFyYnJlcyBkZXMgcGFxdWV0cyBjb25zdHJ1aXRzIChkZWJpYW4vKi9ERUJJQU4vKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MzE4Cittc2dpZCAiIgorIlRoaXMgZmFpbHVyZSBjYW4gYmUgY2F1c2VkIGJ5IGEgYmFkIG9yIG1pc3Npbmcgc2hsaWJzIG9yIHN5bWJvbHMgZmlsZSBpbiB0aGUgIgorInBhY2thZ2Ugb2YgdGhlIGxpYnJhcnkuIEl0IG1pZ2h0IGFsc28gaGFwcGVuIGlmIHRoZSBsaWJyYXJ5IGlzIGJ1aWx0IHdpdGhpbiAiCisidGhlIHNhbWUgc291cmNlIHBhY2thZ2UgYW5kIGlmIHRoZSBzaGxpYnMgZmlsZXMgaGFzIG5vdCB5ZXQgYmVlbiBjcmVhdGVkIChpbiAiCisid2hpY2ggY2FzZSB5b3UgbXVzdCBmaXggZGViaWFuL3J1bGVzIHRvIGNyZWF0ZSB0aGUgc2hsaWJzIGJlZm9yZSBjYWxsaW5nICIKKyJCPGRwa2ctc2hsaWJkZXBzPikuIEJhZCBSUEFUSCBjYW4gYWxzbyBsZWFkIHRvIHRoZSBsaWJyYXJ5IGJlaW5nIGZvdW5kIHVuZGVyICIKKyJhIG5vbi1jYW5vbmljYWwgbmFtZSAoZXhhbXBsZTogL3Vzci9saWIvb3Blbm9mZmljZS5vcmcvLi4vbGliL2xpYnNzbC4iCisic28uMC45LjggaW5zdGVhZCBvZiAvdXNyL2xpYi9saWJzc2wuc28uMC45LjgpIHRoYXQncyBub3QgYXNzb2NpYXRlZCB0byBhbnkgIgorInBhY2thZ2UsIEI8ZHBrZy1zaGxpYmRlcHM+IHRyaWVzIHRvIHdvcmsgYXJvdW5kIHRoaXMgYnkgdHJ5aW5nIHRvIGZhbGxiYWNrICIKKyJvbiBhIGNhbm9uaWNhbCBuYW1lICh1c2luZyBCPHJlYWxwYXRoPigzKSkgIGJ1dCBpdCBtaWdodCBub3QgYWx3YXlzIHdvcmsuICIKKyJJdCdzIGFsd2F5cyBiZXN0IHRvIGNsZWFuIHVwIHRoZSBSUEFUSCBvZiB0aGUgYmluYXJ5IHRvIGF2b2lkIHByb2JsZW1zLiIKK21zZ3N0ciAiIgorIkNldCDDqWNoZWMgcGV1dCDDqnRyZSBjYXVzw6kgcGFyIHVuIHNobGlicyBvdSB1biBmaWNoaWVyIGRlIHN5bWJvbGVzIHF1aSBzZXJhaXQgIgorIm1hdXZhaXMgb3UgbWFucXVhbnQgZGFucyBsZSBwYXF1ZXQuIFVuZSBhdXRyZSBjYXVzZSBzZXJhaXQgcXVlIGxhICIKKyJiaWJsaW90aMOocXVlIHNvaXQgY29uc3RydWl0ZSBhdSBzZWluIGR1IG3Dqm1lIHBhcXVldCBzb3VyY2UgZXQgcXVlIGxlcyAiCisiZmljaGllcnMgc2hsaWJzIG4nYWllbnQgcGFzIGVuY29yZSDDqXTDqSBjcsOpw6lzIChkYW5zIGNlIGNhcyBkZWJpYW4vcnVsZXMgZG9pdCAiCisiw6p0cmUgbW9kaWZpw6kgcG91ciBjcsOpZXIgbGUgc2hsaWJzIGF2YW50IGwnYXBwZWwgZGUgQjxkcGtnLXNobGliZGVwcz4pLiBVbiAiCisibWF1dmFpcyBSUEFUSCBwZXV0IGF1c3NpIGNvbmR1aXJlIMOgIGNlIHF1ZSBsYSBiaWJsaW90aMOocXVlIHNvaXQgdHJvdXbDqWUgc291cyAiCisidW4gbm9tIG5vbi1jYW5vbmlxdWUgKGNvbW1lOiAvdXNyL2xpYi9vcGVub2ZmaWNlLm9yZy8uLi9saWIvbGlic3NsLnNvLjAuOS44ICIKKyJhdSBsaWV1IGRlIC91c3IvbGliL2xpYnNzbC5zby4wLjkuOCkgcXVpIG4nZXN0IGFzc29jacOpIMOgIGF1Y3VuIHBhcXVldCwgIgorIkI8ZHBrZy1zaGxpYmRlcHM+IGVzc2FpZSBkZSB0cmF2YWlsbGVyIHN1ciBjZSBub20gbm9uLWNhbm9uaXF1ZSAoZW4gIgorInV0aWxpc2FudCBCPHJlYWxwYXRoPigzKSksIG1haXMgY2VsYSBuZSBmb25jdGlvbm5lIHBhcyB0b3Vqb3Vycy4gSWwgZXN0ICIKKyJ0b3Vqb3VycyBwcsOpZsOpcmFibGUgZGUgYmllbiBuZXR0b3llciBsZSBSUEFUSCBkdSBiaW5haXJlIGFmaW4gZCfDqXZpdGVyIGNlcyAiCisicHJvYmzDqG1lcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MzI0Cittc2dpZCAiIgorIkNhbGxpbmcgQjxkcGtnLXNobGliZGVwcz4gaW4gdmVyYm9zZSBtb2RlICgtdikgd2lsbCBwcm92aWRlIG11Y2ggbW9yZSAiCisiaW5mb3JtYXRpb24gYWJvdXQgd2hlcmUgaXQgdHJpZWQgdG8gZmluZCB0aGUgZGVwZW5kZW5jeSBpbmZvcm1hdGlvbi4gVGhpcyAiCisibWlnaHQgYmUgdXNlZnVsIGlmIHlvdSBkb24ndCB1bmRlcnN0YW5kIHdoeSBpdCdzIGdpdmluZyB5b3UgdGhpcyBlcnJvci4iCittc2dzdHIgIiIKKyJMJ2FwcGVsIGRlIEI8ZHBrZy1zaGxpYmRlcHM+IGVuIG1vZGUgdmVyYmV1eCAoLXYpIGZvdXJuaXJhIGJlYXVjb3VwIHBsdXMgIgorImluZm9ybWF0aW9ucyBzdXIgbCdlbmRyb2l0IG/DuSBpbCBhIGVzc2F5w6kgZGUgdHJvdXZlciBsJ2luZm9ybWF0aW9uIHN1ciBsZXMgIgorImTDqXBlbmRhbmNlcy4gQ2VjaSBwZXV0IMOqdHJlIHV0aWxlIHNpIHZvdXMgbmUgY29tcHJlbmV6IHBhcyBwb3VycXVvaSB2b3VzICIKKyJvYnRlbmV6IGNldHRlIGVycmV1ci4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MzI4Cittc2dpZCAiQjxkZWItc2hsaWJzPig1KSwgQjxkZWItc3ltYm9scz4oNSksIEI8ZHBrZy1nZW5zeW1ib2xzPigxKS4iCittc2dzdHIgIkI8ZGViLXNobGlicz4oNSksIEI8ZGViLXN5bWJvbHM+KDUpLCBCPGRwa2ctZ2Vuc3ltYm9scz4oMSkuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjMzNQorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDA2IEZyYW5rIExpY2h0ZW5oZWxkIgorbXNnc3RyICJDb3B5cmlnaHQgXFwoY28gMjAwNiBGcmFuayBMaWNodGVuaGVsZCIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctc291cmNlLjE6MgorIywgbm8td3JhcAorbXNnaWQgImRwa2ctc291cmNlIgorbXNnc3RyICJkcGtnLXNvdXJjZSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1Cittc2dpZCAiZHBrZy1zb3VyY2UgLSBEZWJpYW4gc291cmNlIHBhY2thZ2UgKC5kc2MpIG1hbmlwdWxhdGlvbiB0b29sIgorbXNnc3RyICJkcGtnLXNvdXJjZSAtIG91dGlsIGRlIG1hbmlwdWxhdGlvbiBkZXMgcGFxdWV0cyBzb3VyY2VzIERlYmlhbiAoLmRzYykuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjkKKyMsIGZ1enp5CisjfCBtc2dpZCAiQjxkcGtnLXNvdXJjZT4gW0k8b3B0aW9ucz5dIEk8Y29tbWFuZD4iCittc2dpZCAiQjxkcGtnLXNvdXJjZT4gW0k8b3B0aW9uPi4uLl0gSTxjb21tYW5kPiIKK21zZ3N0ciAiQjxkcGtnLXNvdXJjZT4gW0k8b3B0aW9ucz5dIEk8Y29tbWFuZGU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjEzCittc2dpZCAiQjxkcGtnLXNvdXJjZT4gcGFja3MgYW5kIHVucGFja3MgRGViaWFuIHNvdXJjZSBhcmNoaXZlcy4iCittc2dzdHIgIkI8ZHBrZy1zb3VyY2U+IGVtcGFxdWV0ZSBvdSBkw6lwYXF1ZXRlIHVuZSBhcmNoaXZlIHNvdXJjZSBEZWJpYW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjE3Cittc2dpZCAiIgorIk5vbmUgb2YgdGhlc2UgY29tbWFuZHMgYWxsb3cgbXVsdGlwbGUgb3B0aW9ucyB0byBiZSBjb21iaW5lZCBpbnRvIG9uZSwgYW5kICIKKyJ0aGV5IGRvIG5vdCBhbGxvdyB0aGUgdmFsdWUgZm9yIGFuIG9wdGlvbiB0byBiZSBzcGVjaWZpZWQgaW4gYSBzZXBhcmF0ZSAiCisiYXJndW1lbnQuIgorbXNnc3RyICIiCisiQXVjdW5lIGRlIGNlcyBjb21tYW5kZXMgbmUgcGVybWV0IGxhIGNvbWJpbmFpc29uIGRlIHBsdXNpZXVycyBvcHRpb25zIGVuIHVuZSAiCisic2V1bGUgZXQgZWxsZXMgbmUgcGVybWV0dGVudCBwYXMgZCdpbmRpcXVlciBsYSB2YWxldXIgZCd1bmUgb3B0aW9uIGRhbnMgdW4gIgorImFyZ3VtZW50IHPDqXBhcsOpLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6MTkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC14ID5JPGZpbGVuYW1lPkI8LmRzYyA+W0k8b3V0cHV0LWRpcmVjdG9yeT5dIgorbXNnc3RyICJCPC14ID5JPGZpY2hpZXI+QjwuZHNjPiBbSTxyw6lwZXJ0b2lyZS1kZS1zb3J0aWU+XSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToyOQorbXNnaWQgIiIKKyJFeHRyYWN0IGEgc291cmNlIHBhY2thZ2UuIE9uZSBub24tb3B0aW9uIGFyZ3VtZW50IG11c3QgYmUgc3VwcGxpZWQsIHRoZSBuYW1lICIKKyJvZiB0aGUgRGViaWFuIHNvdXJjZSBjb250cm9sIGZpbGUgKEI8LmRzYz4pLiAgQW4gb3B0aW9uYWwgc2Vjb25kIG5vbi1vcHRpb24gIgorImFyZ3VtZW50IG1heSBiZSBzdXBwbGllZCB0byBzcGVjaWZ5IHRoZSBkaXJlY3RvcnkgdG8gZXh0cmFjdCB0aGUgc291cmNlICIKKyJwYWNrYWdlIHRvLCB0aGlzIG11c3Qgbm90IGV4aXN0LiBJZiBubyBvdXRwdXQgZGlyZWN0b3J5IGlzIHNwZWNpZmllZCwgdGhlICIKKyJzb3VyY2UgcGFja2FnZSBpcyBleHRyYWN0ZWQgaW50byBhIGRpcmVjdG9yeSBuYW1lZCBJPHNvdXJjZT4tSTx2ZXJzaW9uPiAiCisidW5kZXIgdGhlIGN1cnJlbnQgd29ya2luZyBkaXJlY3RvcnkuIgorbXNnc3RyICIiCisiQ2V0dGUgb3B0aW9uIHNlcnQgw6AgZXh0cmFpcmUgdW4gcGFxdWV0IHNvdXJjZS4gT24gZG9pdCBkb25uZXIgdW4gc2V1bCAiCisiYXJndW1lbnQgc2FucyBvcHRpb27CoDogbGUgbm9tIGR1IGZpY2hpZXIgZGUgY29udHLDtGxlIGRlcyBzb3VyY2VzIERlYmlhbiAoQjwuIgorImRzYz4pLiAgVW4gZGV1eGnDqG1lIGFyZ3VtZW50IHNhbnMgb3B0aW9uIHBldXQgw6p0cmUgZG9ubsOpIHBvdXIgaW5kaXF1ZXIgbGUgIgorInLDqXBlcnRvaXJlIG/DuSBleHRyYWlyZSBsZSBwYXF1ZXQgc291cmNlLCBjZWxhIG5lIGRvaXQgcGFzIGV4aXN0ZXIuIFF1YW5kICIKKyJhdWN1biByw6lwZXJ0b2lyZSBuJ2VzdCBpbmRpcXXDqSwgbGUgcGFxdWV0IHNvdXJjZSBlc3QgZXh0cmFpdCBkYW5zIHVuICIKKyJyw6lwZXJ0b2lyZSBJPHNvdXJjZT4tSTx2ZXJzaW9uPiBkdSByw6lwZXJ0b2lyZSBjb3VyYW50LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTozNQorbXNnaWQgIiIKKyJCPGRwa2ctc291cmNlPiB3aWxsIHJlYWQgdGhlIG5hbWVzIG9mIHRoZSBvdGhlciBmaWxlKHMpIG1ha2luZyB1cCB0aGUgc291cmNlICIKKyJwYWNrYWdlIGZyb20gdGhlIGNvbnRyb2wgZmlsZTsgdGhleSBhcmUgYXNzdW1lZCB0byBiZSBpbiB0aGUgc2FtZSBkaXJlY3RvcnkgIgorImFzIHRoZSBCPC5kc2M+LiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1zb3VyY2U+IGxpdCwgZGFucyBsZSBmaWNoaWVyIGRlIGNvbnRyw7RsZSwgbGVzIG5vbXMgZGVzIGZpY2hpZXJzIHF1aSAiCisiY29tcG9zZW50IGxlIHBhcXVldCBzb3VyY2XCoDsgaWwgc3VwcG9zZSBxdSdpbHMgc29udCBkYW5zIGxlIG3Dqm1lIHLDqXBlcnRvaXJlICIKKyJxdWUgbGUgZmljaGllciBCPC5kc2M+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo0MworbXNnaWQgIiIKKyJUaGUgZmlsZXMgaW4gdGhlIGV4dHJhY3RlZCBwYWNrYWdlIHdpbGwgaGF2ZSB0aGVpciBwZXJtaXNzaW9ucyBhbmQgIgorIm93bmVyc2hpcHMgc2V0IHRvIHRob3NlIHdoaWNoIHdvdWxkIGhhdmUgYmVlbiBleHBlY3RlZCBpZiB0aGUgZmlsZXMgYW5kICIKKyJkaXJlY3RvcmllcyBoYWQgc2ltcGx5IGJlZW4gY3JlYXRlZCAtIGRpcmVjdG9yaWVzIGFuZCBleGVjdXRhYmxlIGZpbGVzIHdpbGwgIgorImJlIDA3NzcgYW5kIHBsYWluIGZpbGVzIHdpbGwgYmUgMDY2NiwgYm90aCBtb2RpZmllZCBieSB0aGUgZXh0cmFjdG9ycycgIgorInVtYXNrOyBpZiB0aGUgcGFyZW50IGRpcmVjdG9yeSBpcyBzZXRnaWQgdGhlbiB0aGUgZXh0cmFjdGVkIGRpcmVjdG9yaWVzIHdpbGwgIgorImJlIHRvbywgYW5kIGFsbCB0aGUgZmlsZXMgYW5kIGRpcmVjdG9yaWVzIHdpbGwgaW5oZXJpdCBpdHMgZ3JvdXAgb3duZXJzaGlwLiIKK21zZ3N0ciAiIgorIkxlcyBmaWNoaWVycyBleHRyYWl0cyBkdSBwYXF1ZXQgYXVyb250IGxlIG3Dqm1lIHN5c3TDqG1lIGRlIHByb3ByacOpdMOpIGV0IGRlICIKKyJwZXJtaXNzaW9uIHF1ZSBzJ2lscyBhdmFpZW50IMOpdMOpIHNpbXBsZW1lbnQgY3LDqcOpcyAtLSBsZXMgcsOpcGVydG9pcmVzIGV0IGxlcyAiCisiZmljaGllcnMgZXjDqWN1dGFibGVzIGF1cm9udCB1biBzeXN0w6htZSBkZSBwZXJtaXNzaW9uIMOpZ2FsIMOgIDA3NzcgZXQgbGVzICIKKyJzaW1wbGVzIGZpY2hpZXJzLCAwNjY2wqA7IGNlcyBkZXV4IHN5c3TDqG1lcyDDqXRhbnQgbW9kaWZpw6lzIHBhciBsZSBtYXNxdWUgZGUgIgorImNlbHVpIHF1aSBmYWl0IGwnZXh0cmFjdGlvbsKgOyBzaSBsZSByw6lwZXJ0b2lyZSBwYXJlbnQgZXN0IMKrwqBzZXRnaWTCoMK7LCBsZXMgIgorInLDqXBlcnRvaXJlcyBleHRyYWl0cyBsZSBzZXJvbnQgYXVzc2kgZXQgdG91cyBsZXMgZmljaGllcnMgZXQgcsOpcGVydG9pcmVzICIKKyJow6lyaXRlcm9udCBkdSBzeXN0w6htZSBkZSBwcm9wcmnDqXTDqSBkZSBjZSBncm91cGUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjQ4Cittc2dpZCAiIgorIklmIHRoZSBzb3VyY2UgcGFja2FnZSB1c2VzIGEgbm9uLXN0YW5kYXJkIGZvcm1hdCAoY3VycmVudGx5IHRoaXMgbWVhbnMgYWxsICIKKyJmb3JtYXRzIGV4Y2VwdCBcIjEuMFwiKSwgaXRzIG5hbWUgd2lsbCBiZSBzdG9yZWQgaW4gQjxkZWJpYW4vc291cmNlL2Zvcm1hdD4gIgorInNvIHRoYXQgdGhlIGZvbGxvd2luZyBidWlsZHMgb2YgdGhlIHNvdXJjZSBwYWNrYWdlIHVzZSB0aGUgc2FtZSBmb3JtYXQgYnkgIgorImRlZmF1bHQuIgorbXNnc3RyICIiCisiU2kgbGUgcGFxdWV0IHNvdXJjZSB1dGlsaXNlIHVuIGZvcm1hdCBub24tc3RhbmRhcmQgKGFjdHVlbGxlbWVudCwgY2VsYSAiCisic2lnbmlmaWUgdG91cyBsZXMgZm9ybWF0cyBzYXVmIGxlIFwiMS4wXCIpLCBzb24gbm9tIHNlcmEgZW5yZWdpc3Ryw6kgZGFucyAiCisiQjxkZWJpYW4vc291cmNlL2Zvcm1hdD4gZGUgc29ydGUgcXVlIGxhIGNvbnN0cnVjdGlvbiBkdSBwYXF1ZXQgc291cmNlICIKKyJ1dGlsaXNlIGxlIG3Dqm1lIGZvcm1hdCBwYXIgZMOpZmF1dC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjQ5CisjLCBuby13cmFwCittc2dpZCAiQjwtYj4gSTxkaXJlY3Rvcnk+IFtJPGZvcm1hdC1zcGVjaWZpYy1wYXJhbWV0ZXJzPl0iCittc2dzdHIgIkI8LWI+IEk8csOpcGVydG9pcmU+IFtJPHBhcmFtw6h0cmVzLWRhbnMtdW4tZm9ybWF0LXNww6ljaWZpcXVlPl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTYKK21zZ2lkICIiCisiQnVpbGQgYSBzb3VyY2UgcGFja2FnZS4gVGhlIGZpcnN0IG5vbi1vcHRpb24gYXJndW1lbnQgaXMgdGFrZW4gYXMgdGhlIG5hbWUgIgorIm9mIHRoZSBkaXJlY3RvcnkgY29udGFpbmluZyB0aGUgZGViaWFuaXplZCBzb3VyY2UgdHJlZSAoaS5lLiB3aXRoIGEgZGViaWFuICIKKyJzdWItZGlyZWN0b3J5IGFuZCBtYXliZSBjaGFuZ2VzIHRvIHRoZSBvcmlnaW5hbCBmaWxlcykuICBEZXBlbmRpbmcgb24gdGhlICIKKyJzb3VyY2UgcGFja2FnZSBmb3JtYXQgdXNlZCB0byBidWlsZCB0aGUgcGFja2FnZSwgYWRkaXRpb25hbCBwYXJhbWV0ZXJzIG1pZ2h0ICIKKyJiZSBhY2NlcHRlZC4iCittc2dzdHIgIiIKKyJDb25zdHJ1aXQgdW4gcGFxdWV0IHNvdXJjZS4gTGUgcHJlbWllciBhcmd1bWVudCBub24gb3B0aW9ubmVsIGVzdCBwcmlzIGNvbW1lICIKKyJub20gZHUgcsOpcGVydG9pcmUgY29udGVuYW50IGwnYXJib3Jlc2NlbmNlIGRlcyBzb3VyY2VzIERlYmlhbmlzw6llcyAoYydlc3Qtw6AtIgorImRpcmUgYXZlYyB1biBzb3VzLXLDqXBlcnRvaXJlIGRlYmlhbiBldCBwZXV0LcOqdHJlIGRlcyBtb2RpZmljYXRpb25zIHN1ciBsZXMgIgorImZpY2hpZXJzIGQnb3JpZ2luZSkuIFNlbG9uIGxlIGZvcm1hdCBkdSBwYXF1ZXQgc291cmNlIHV0aWxpc8OpIHBvdXIgIgorImNvbnN0cnVpcmUgbGUgcGFxdWV0LCBkJ2F1dHJlcyBwYXJhbcOodHJlcyBwZXV2ZW50IMOqdHJlIGFjY2VwdMOpcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NjUKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIkI8ZHBrZy1zb3VyY2U+IHdpbGwgYnVpbGQgdGhlIHNvdXJjZSBwYWNrYWdlIHdpdGggdGhlIGZpcnN0IGZvcm1hdCBmb3VuZCAiCisjfCAiaW4gdGhpcyBvcmRlcmVkIGxpc3Q6IHRoZSBmb3JtYXQgaW5kaWNhdGVkIHdpdGggdGhlIEk8LS1mb3JtYXQ+IGNvbW1hbmQtIgorI3wgImxpbmUgb3B0aW9uLCB0aGUgZm9ybWF0IGluZGljYXRlZCBpbiBCPGRlYmlhbi9zb3VyY2UvZm9ybWF0PiwgXCIxLjBcIi4gIgorI3wgIlRoZSBmYWxsYmFjayB0byBcIjEuMFwiIGlzIGRlcHJlY2F0ZWQgYW5kIHdpbGwgYmUgcmVtb3ZlZCBhdCBzb21lIHBvaW50ICIKKyN8ICJpbiB0aGUgZnV0dXJlLCB5b3Ugc2hvdWxkIGFsd2F5cyBkb2N1bWVudCB0aGUgZGVzaXJlZCBzb3VyY2UgZm9ybWF0IGluICIKKyN8ICJCPGRlYmlhbi9zb3VyY2UvZm9ybWF0Pi4gU2VlIHNlY3Rpb24gQjxTT1VSQ0UgUEFDS0FHRSBGT1JNQVRTPiBmb3IgYW4gIgorI3wgImV4dGVuc2l2ZSBkZXNjcmlwdGlvbiBvZiB0aGUgdmFyaW91cyBzb3VyY2UgcGFja2FnZSBmb3JtYXRzLiIKK21zZ2lkICIiCisiQjxkcGtnLXNvdXJjZT4gd2lsbCBidWlsZCB0aGUgc291cmNlIHBhY2thZ2Ugd2l0aCB0aGUgZmlyc3QgZm9ybWF0IGZvdW5kIGluICIKKyJ0aGlzIG9yZGVyZWQgbGlzdDogdGhlIGZvcm1hdCBpbmRpY2F0ZWQgd2l0aCB0aGUgSTwtLWZvcm1hdD4gY29tbWFuZCBsaW5lICIKKyJvcHRpb24sIHRoZSBmb3JtYXQgaW5kaWNhdGVkIGluIEI8ZGViaWFuL3NvdXJjZS9mb3JtYXQ+LCBcIjEuMFwiLiBUaGUgIgorImZhbGxiYWNrIHRvIFwiMS4wXCIgaXMgZGVwcmVjYXRlZCBhbmQgd2lsbCBiZSByZW1vdmVkIGF0IHNvbWUgcG9pbnQgaW4gdGhlICIKKyJmdXR1cmUsIHlvdSBzaG91bGQgYWx3YXlzIGRvY3VtZW50IHRoZSBkZXNpcmVkIHNvdXJjZSBmb3JtYXQgaW4gQjxkZWJpYW4vIgorInNvdXJjZS9mb3JtYXQ+LiBTZWUgc2VjdGlvbiBCPFNPVVJDRSBQQUNLQUdFIEZPUk1BVFM+IGZvciBhbiBleHRlbnNpdmUgIgorImRlc2NyaXB0aW9uIG9mIHRoZSB2YXJpb3VzIHNvdXJjZSBwYWNrYWdlIGZvcm1hdHMuIgorbXNnc3RyICIiCisiQjxkcGtnLXNvdXJjZT4gdmEgY29uc3RydWlyZSBsZSBwYXF1ZXQgc291cmNlIGRhbnMgbGUgcHJlbWllciBmb3JtYXQgcXVpICIKKyJmb25jdGlvbm5lcmEgZGFucyBsYSBsaXN0ZSBzdWl2YW50ZcKgOiBsZShzKSBmb3JtYXQocykgaW5kaXF1w6kocykgYXZlYyBsZSAiCisicGFyYW3DqHRyZSBkZSBsYSBsaWduZSBkZSBjb21tYW5kZSBJPC0tZm9ybWF0PiwgbGUgZm9ybWF0IGluZGlxdcOpIGRhbnMgIgorIkI8ZGViaWFuL3NvdXJjZS9mb3JtYXQ+LCDCq8KgMS4wwqDCuy4gTCd1dGlsaXNhdGlvbiBkZSDCq8KgMS4wwqDCuyBjb21tZSBkZXJuaWVyICIKKyJyZWNvdXJzIGVzdCBkw6lwcsOpY2nDqWUgZXQgc2VyYSByZXRpcsOpZSBkYW5zIGxlIGZ1dHVyLiBMZSBmb3JtYXQgc291cmNlICIKKyJkZXZyYWl0IHRvdWpvdXJzIMOqdHJlIGluZGlxdcOpIGRhbnMgQjxkZWJpYW4vc291cmNlL2Zvcm1hdD4uIFZvaXIgbGEgc2VjdGlvbiAiCisiQjxGT1JNQVRTIERFIFBBUVVFVFMgU09VUkNFPiBwb3VyIHVuZSBkZXNjcmlwdGlvbiBwbHVzIGTDqXRhaWxsw6llIGRlcyAiCisiZGlmZsOpcmVudHMgZm9ybWF0cyBkZSBwYXF1ZXQgc291cmNlLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NjYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tcHJpbnQtZm9ybWF0PiBJPGRpcmVjdG9yeT4iCittc2dzdHIgIkI8LS1wcmludC1mb3JtYXQ+IEk8csOpcGVydG9pcmU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjcxCittc2dpZCAiIgorIlByaW50IHRoZSBzb3VyY2UgZm9ybWF0IHRoYXQgd291bGQgYmUgdXNlZCB0byBidWlsZCB0aGUgc291cmNlIHBhY2thZ2UgaWYgIgorIkI8ZHBrZy1zb3VyY2UgLWIgPkk8ZGlyZWN0b3J5PiB3YXMgY2FsbGVkIChpbiB0aGUgc2FtZSBjb25kaXRpb25zIGFuZCB3aXRoICIKKyJ0aGUgc2FtZSBwYXJhbWV0ZXJzKS4iCittc2dzdHIgIiIKKyJBZmZpY2hlIGxlIGZvcm1hdCBzb3VyY2UgcXVpIHNlcmFpdCB1dGlsaXPDqSBwb3VyIGNvbnN0cnVpcmUgbGUgcGFxdWV0IHNvdXJjZSAiCisic2kgQjxkcGtnLXNvdXJjZSAtYiA+STxyw6lwZXJ0b2lyZT4gw6l0YWl0IHV0aWxpc8OpIChkYW5zIGxlcyBtw6ptZXMgY29uZGl0aW9ucyAiCisiZXQgYXZlYyBsZXMgbcOqbWVzIG9wdGlvbnMpLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NzIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tYmVmb3JlLWJ1aWxkPiBJPGRpcmVjdG9yeT4iCittc2dzdHIgIkI8LS1iZWZvcmUtYnVpbGQ+IEk8csOpcGVydG9pcmU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjgxCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJUaGlzIGNvbW1hbmQgc2hvdWxkIGJlIGNhbGxlZCBiZWZvcmUgYW55IGJ1aWxkIG9mIHRoZSBwYWNrYWdlIChCPGRwa2ctIgorI3wgImJ1aWxkcGFja2FnZT4gY2FsbHMgaXQgdmVyeSBlYXJseSBldmVuIGJlZm9yZSBCPGRlYmlhbi9ydWxlcyBjbGVhbj4pLiAiCisjfCAiVGhpcyBjb21tYW5kIHNob3VsZCBiZSBpZGVtcG90ZW50IGFuZCBjYW4gYmUgY2FsbGVkIG11bHRpcGxlIHRpbWVzLiBOb3QgIgorI3wgImFsbCBzb3VyY2UgZm9ybWF0cyBpbXBsZW1lbnQgc29tZXRoaW5nIGluIHRoaXMgaG9vaywgYW5kIHRob3NlIHRoYXQgZG8gIgorI3wgInVzdWFsbHkgcHJlcGFyZSB0aGUgc291cmNlIHRyZWUgZm9yIHRoZSBidWlsZCBmb3IgZXhhbXBsZSBieSBlbnN1cmluZyAiCisjfCAidGhhdCB0aGUgRGViaWFuIHBhdGNoZXMgYXJlIGFwcGxpZWQuIgorbXNnaWQgIiIKKyJSdW4gdGhlIGNvcnJlc3BvbmRpbmcgaG9vayBvZiB0aGUgc291cmNlIHBhY2thZ2UgZm9ybWF0LiBUaGlzIGhvb2sgaXMgY2FsbGVkICIKKyJiZWZvcmUgYW55IGJ1aWxkIG9mIHRoZSBwYWNrYWdlIChCPGRwa2ctYnVpbGRwYWNrYWdlPiBjYWxscyBpdCB2ZXJ5IGVhcmx5ICIKKyJldmVuIGJlZm9yZSBCPGRlYmlhbi9ydWxlcyBjbGVhbj4pLiBUaGlzIGNvbW1hbmQgaXMgaWRlbXBvdGVudCBhbmQgY2FuIGJlICIKKyJjYWxsZWQgbXVsdGlwbGUgdGltZXMuIE5vdCBhbGwgc291cmNlIGZvcm1hdHMgaW1wbGVtZW50IHNvbWV0aGluZyBpbiB0aGlzICIKKyJob29rLCBhbmQgdGhvc2UgdGhhdCBkbyB1c3VhbGx5IHByZXBhcmUgdGhlIHNvdXJjZSB0cmVlIGZvciB0aGUgYnVpbGQgZm9yICIKKyJleGFtcGxlIGJ5IGVuc3VyaW5nIHRoYXQgdGhlIERlYmlhbiBwYXRjaGVzIGFyZSBhcHBsaWVkLiIKK21zZ3N0ciAiIgorIkNldHRlIGNvbW1hbmRlIGRvaXQgw6p0cmUgdXRpbGlzw6llIGF2YW50IHRvdXRlIGNvbnN0cnVjdGlvbiBkdSBwYXF1ZXQgKEI8ZHBrZy0iCisiYnVpbGRwYWNrYWdlPiBsJ3V0aWxpc2UgdHLDqHMgdMO0dCwgYXZhbnQgbcOqbWUgQjxkZWJpYW4vcnVsZXMgY2xlYW4+KS4gRWxsZSAiCisiZG9pdCDDqnRyZSDCq8KgaWRlbXBvdGVudMKgwrsgZXQgcGV1dCDDqnRyZSBsYW5jw6llIHBsdXNpZXVycyBmb2lzLiBUb3VzIGxlcyAiCisiZm9ybWF0cyBzb3VyY2UgbmUgbWV0dGVudCBwYXMgZW4gb2V1dnJlIGNlIGJyYW5jaGVtZW50IGV0IGNldXggcXVpIGxlIGZvbnQgIgorInByw6lwYXJlbnQgbCdhcmJvcmVzY2VuY2Ugc291cmNlIHBvdXIgbGEgY29uc3RydWN0aW9uLCBwYXIgZXhlbXBsZSBlbiAiCisiZ2FyYW50aXNzYW50IHF1ZSBsZXMgY29ycmVjdGlmcyBEZWJpYW4gc29udCBhcHBsaXF1w6lzLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6ODIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tYWZ0ZXItYnVpbGQ+IEk8ZGlyZWN0b3J5PiIKK21zZ3N0ciAiQjwtLWFmdGVyLWJ1aWxkPiBJPHLDqXBlcnRvaXJlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo4OQorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiVGhpcyBjb21tYW5kIHNob3VsZCBiZSBjYWxsZWQgYWZ0ZXIgYW55IGJ1aWxkIG9mIHRoZSBwYWNrYWdlIChCPGRwa2ctIgorI3wgImJ1aWxkcGFja2FnZT4gY2FsbHMgaXQgbGFzdCkuIFRoaXMgY29tbWFuZCBzaG91bGQgYmUgaWRlbXBvdGVudCBhbmQgY2FuICIKKyN8ICJiZSBjYWxsZWQgbXVsdGlwbGUgdGltZXMuIE5vdCBhbGwgc291cmNlIGZvcm1hdHMgaW1wbGVtZW50IHNvbWV0aGluZyBpbiAiCisjfCAidGhpcyBob29rLCBhbmQgdGhvc2UgdGhhdCBkbyB1c3VhbGx5IHVzZSBpdCB0byB1bmRvIHdoYXQgQjwtLWJlZm9yZS0iCisjfCAiYnVpbGQ+IGhhcyBkb25lLiIKK21zZ2lkICIiCisiUnVuIHRoZSBjb3JyZXNwb25kaW5nIGhvb2sgb2YgdGhlIHNvdXJjZSBwYWNrYWdlIGZvcm1hdC4gVGhpcyBob29rIGlzIGNhbGxlZCAiCisiYWZ0ZXIgYW55IGJ1aWxkIG9mIHRoZSBwYWNrYWdlIChCPGRwa2ctYnVpbGRwYWNrYWdlPiBjYWxscyBpdCBsYXN0KS4gVGhpcyAiCisiY29tbWFuZCBpcyBpZGVtcG90ZW50IGFuZCBjYW4gYmUgY2FsbGVkIG11bHRpcGxlIHRpbWVzLiBOb3QgYWxsIHNvdXJjZSAiCisiZm9ybWF0cyBpbXBsZW1lbnQgc29tZXRoaW5nIGluIHRoaXMgaG9vaywgYW5kIHRob3NlIHRoYXQgZG8gdXN1YWxseSB1c2UgaXQgIgorInRvIHVuZG8gd2hhdCBCPC0tYmVmb3JlLWJ1aWxkPiBoYXMgZG9uZS4iCittc2dzdHIgIiIKKyJDZXR0ZSBjb21tYW5kZSBkb2l0IMOqdHJlIHV0aWxpc8OpZSBhcHLDqHMgdG91dGUgY29uc3RydWN0aW9uIGR1IHBhcXVldCAoQjxkcGtnLSIKKyJidWlsZHBhY2thZ2U+IGwndXRpbGlzZSBlbiBkZXJuaWVyKS4gRWxsZSBkb2l0IMOqdHJlIMKrwqBpZGVtcG90ZW50wqDCuyBldCBwZXV0ICIKKyLDqnRyZSBsYW5jw6llIHBsdXNpZXVycyBmb2lzLiBUb3VzIGxlcyBmb3JtYXRzIHNvdXJjZSBuZSBtZXR0ZW50IHBhcyBlbiBvZXV2cmUgIgorImNlIGJyYW5jaGVtZW50IGV0IGNldXggcXVpIGxlIGZvbnQgcydlbiBzZXJ2ZW50IHBvdXIgZMOpZmFpcmUgY2UgcXVpIGEgw6l0w6kgIgorImZhaXQgcGFyIEI8LS1iZWZvcmUtYnVpbGQ+Li4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjkwCisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8LS1wcmludC1mb3JtYXQ+IEk8ZGlyZWN0b3J5PiIKK21zZ2lkICJCPC0tY29tbWl0PiBbSTxkaXJlY3Rvcnk+XSAuLi4iCittc2dzdHIgIkI8LS1wcmludC1mb3JtYXQ+IEk8csOpcGVydG9pcmU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjk1Cittc2dpZCAiIgorIlJlY29yZCBjaGFuZ2VzIGluIHRoZSBzb3VyY2UgdHJlZSB1bnBhY2tlZCBpbiBJPGRpcmVjdG9yeT4uIFRoaXMgY29tbWFuZCBjYW4gIgorInRha2Ugc3VwcGxlbWVudGFyeSBwYXJhbWV0ZXJzIGRlcGVuZGluZyBvbiB0aGUgc291cmNlIGZvcm1hdC4gIEl0IHdpbGwgZXJyb3IgIgorIm91dCBmb3IgZm9ybWF0cyB3aGVyZSB0aGlzIG9wZXJhdGlvbiBkb2Vzbid0IG1lYW4gYW55dGhpbmcuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLXNvdXJjZS4xOjEwMworIywgbm8td3JhcAorbXNnaWQgIkdFTkVSSUMgQlVJTEQgT1BUSU9OUyIKK21zZ3N0ciAiT1BUSU9OUyBERSBDT05TVFJVQ1RJT04gR8OJTsOJUklRVUVTIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjExMQorbXNnaWQgIiIKKyJTcGVjaWZpZXMgdGhlIG1haW4gc291cmNlIGNvbnRyb2wgZmlsZSB0byByZWFkIGluZm9ybWF0aW9uIGZyb20uIFRoZSBkZWZhdWx0ICIKKyJpcyBCPGRlYmlhbi9jb250cm9sPi4gIElmIGdpdmVuIHdpdGggcmVsYXRpdmUgcGF0aG5hbWUgdGhpcyBpcyBpbnRlcnByZXRlZCAiCisic3RhcnRpbmcgYXQgdGhlIHNvdXJjZSB0cmVlJ3MgdG9wIGxldmVsIGRpcmVjdG9yeS4iCittc2dzdHIgIiIKKyJJbmRpcXVlIGxlIHByaW5jaXBhbCBmaWNoaWVyIGRlIGNvbnRyw7RsZSBkZXMgc291cmNlcyBvw7kgdHJvdXZlciBsZXMgIgorInJlbnNlaWduZW1lbnRzLiBQYXIgZMOpZmF1dCwgYydlc3QgbGUgZmljaGllciBCPGRlYmlhbi9jb250cm9sPi4gTG9yc3F1J3VuICIKKyJjaGVtaW4gcmVsYXRpZiBlc3QgZm91cm5pLCBvbiBjb25zaWTDqHJlIHF1J2lsIGVzdCByZWxhdGlmIGF1IHLDqXBlcnRvaXJlIGxlICIKKyJwbHVzIMOpbGV2w6kgZGUgbCdhcmJvcmVzY2VuY2Ugc291cmNlLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToxMTgKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRoZSBjaGFuZ2UgbG9nIGZpbGUgdG8gcmVhZCBpbmZvcm1hdGlvbiBmcm9tLiBUaGUgZGVmYXVsdCBpcyAiCisiQjxkZWJpYW4vY2hhbmdlbG9nPi4gIElmIGdpdmVuIHdpdGggcmVsYXRpdmUgcGF0aG5hbWUgdGhpcyBpcyBpbnRlcnByZXRlZCAiCisic3RhcnRpbmcgYXQgdGhlIHNvdXJjZSB0cmVlJ3MgdG9wIGxldmVsIGRpcmVjdG9yeS4iCittc2dzdHIgIiIKKyJJbmRpcXVlIGxlIGZpY2hpZXIgZCdlbnJlZ2lzdHJlbWVudCBkZXMgY2hhbmdlbWVudHMgb8O5IHRyb3V2ZXIgZGVzICIKKyJyZW5zZWlnbmVtZW50cy4gUGFyIGTDqWZhdXQsIGMnZXN0IGxlIGZpY2hpZXIgQjxkZWJpYW4vY2hhbmdlbG9nPi4gTG9yc3F1J3VuICIKKyJjaGVtaW4gcmVsYXRpZiBlc3QgZm91cm5pLCBvbiBjb25zaWTDqHJlIHF1J2lsIGVzdCByZWxhdGlmIGF1IHLDqXBlcnRvaXJlIGxlICIKKyJwbHVzIMOpbGV2w6kgZGUgbCdhcmJvcmVzY2VuY2Ugc291cmNlLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6MTIzCisjLCBuby13cmFwCittc2dpZCAiQjwtLWZvcm1hdD0+STx2YWx1ZT4iCittc2dzdHIgIkI8LS1mb3JtYXQ9Pkk8dmFsZXVyPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToxMjcKK21zZ2lkICIiCisiVXNlIHRoZSBnaXZlbiBmb3JtYXQgZm9yIGJ1aWxkaW5nIHRoZSBzb3VyY2UgcGFja2FnZS4gSXQgZG9lcyBvdmVycmlkZSBhbnkgIgorImZvcm1hdCBnaXZlbiBpbiBCPGRlYmlhbi9zb3VyY2UvZm9ybWF0Pi4iCittc2dzdHIgIiIKKyJVdGlsaXNlIGxlIGZvcm1hdCBpbmRpcXXDqSBwb3VyIGxhIGNvbnN0cnVjdGlvbiBkdSBwYXF1ZXQgc291cmNlLiBDZSBjaG9peCAiCisicmVtcGxhY2UgbGUgZm9ybWF0IGluZGlxdcOpIGRhbnMgQjxkZWJpYW4vc291cmNlL2Zvcm1hdD4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjEzNworbXNnaWQgIiIKKyJSZWFkIHN1YnN0aXR1dGlvbiB2YXJpYWJsZXMgaW4gSTxzdWJzdHZhcnNmaWxlPjsgdGhlIGRlZmF1bHQgaXMgdG8gbm90IHJlYWQgIgorImFueSBmaWxlLiBUaGlzIG9wdGlvbiBjYW4gYmUgdXNlZCBtdWx0aXBsZSB0aW1lcyB0byByZWFkIHN1YnN0aXR1dGlvbiAiCisidmFyaWFibGVzIGZyb20gbXVsdGlwbGUgZmlsZXMuIgorbXNnc3RyICIiCisiTGl0IGxlcyB2YXJpYWJsZXMgZGUgc3Vic3RpdHV0aW9uIGRhbnMgSTxmaWNoaWVyLXN1YnN0dmFycz7CoDsgcGFyIGTDqWZhdXQgIgorImF1Y3VuIGZpY2hpZXIgbidlc3QgbHUuIENldHRlIG9wdGlvbiBwZXV0IMOqdHJlIHV0aWxpc8OpZSBwbHVzaWV1cnMgZm9pcyBwb3VyICIKKyJsaXJlIGRlcyB2YXJpYWJsZXMgZGUgc3Vic3RpdHV0aW9uIGRlcHVpcyBwbHVzaWV1cnMgZmljaGllcnMuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMToxNDMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1aPkk8Y29tcHJlc3Npb24+LCBCPC0tY29tcHJlc3Npb24+PUk8Y29tcHJlc3Npb24+IgorbXNnc3RyICJCPC1aPkk8Y29tcHJlc3Npb24+LCBCPC0tY29tcHJlc3Npb24+PUk8Y29tcHJlc3Npb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjE1MQorbXNnaWQgIiIKKyJTcGVjaWZ5IHRoZSBjb21wcmVzc2lvbiB0byB1c2UgZm9yIGNyZWF0ZWQgZmlsZXMgKHRhcmJhbGxzIGFuZCBkaWZmcykuICBOb3RlICIKKyJ0aGF0IHRoaXMgb3B0aW9uIHdpbGwgbm90IGNhdXNlIGV4aXN0aW5nIHRhcmJhbGxzIHRvIGJlIHJlY29tcHJlc3NlZCwgaXQgIgorIm9ubHkgYWZmZWN0cyBuZXcgZmlsZXMuIFN1cHBvcnRlZCB2YWx1ZXMgYXJlOiBJPGd6aXA+LCBJPGJ6aXAyPiwgSTxsem1hPiBhbmQgIgorIkk8eHo+LiAgSTxnemlwPiBpcyB0aGUgZGVmYXVsdC4gSTx4ej4gaXMgb25seSBzdXBwb3J0ZWQgc2luY2UgZHBrZy1kZXYgIgorIjEuMTUuNS4iCittc2dzdHIgIiIKKyJTcMOpY2lmaWUgbGUgbml2ZWF1IGRlIGNvbXByZXNzaW9uIMOgIHV0aWxpc2VyIHBvdXIgbGVzIGZpY2hpZXJzIGNyw6nDqXMgIgorIihhcmNoaXZlcyBldCBmaWNoaWVycyBkaWZmcykuIE5vdGV6IHF1ZSBjZXR0ZSBvcHRpb24gbmUgY2F1c2VyYSBwYXMgbGEgIgorInJlY29tcHJlc3Npb24gZGVzIGFyY2hpdmVzIGV4aXN0YW50ZXMsIGNlbGEgbmUgY29uY2VybmUgcXVlIGxlcyBub3V2ZWF1eCAiCisiZmljaGllcnMuIExlcyB2YWxldXJzIGFjY2VwdMOpZXMgc29udCBsZXMgc3VpdmFudGVzwqA6IEk8Z3ppcD4sIEk8YnppcDI+LCAiCisiSTxsem1hPiBldCBJPHh6Pi4gSTxnemlwPiDDqXRhbnQgbCdvcHRpb24gcGFyIGTDqWZhdXQuIEk8eHo+IG4nZXN0IGfDqXLDqSBxdWUgIgorImRlcHVpcyBkcGtnLWRldiAxLjE1LjUuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMToxNTEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC16Pkk8bGV2ZWw+LCBCPC0tY29tcHJlc3Npb24tbGV2ZWw+PUk8bGV2ZWw+IgorbXNnc3RyICJCPC16Pkk8bml2ZWF1PiwgQjwtLWNvbXByZXNzaW9uLWxldmVsPj1JPG5pdmVhdT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MTU3CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJDb21wcmVzc2lvbiBsZXZlbCB0byB1c2UuIEFzIHdpdGggQjwtWj4gaXQgb25seSBhZmZlY3RzIG5ld2x5IGNyZWF0ZWQgIgorI3wgImZpbGVzLiBTdXBwb3J0ZWQgdmFsdWVzIGFyZTogSTwxPiB0byBJPDk+LCBJPGJlc3Q+LCBhbmQgSTxmYXN0Pi4gIEk8OT4gaXMgIgorI3wgInRoZSBkZWZhdWx0LiIKK21zZ2lkICIiCisiQ29tcHJlc3Npb24gbGV2ZWwgdG8gdXNlLiBBcyB3aXRoIEI8LVo+IGl0IG9ubHkgYWZmZWN0cyBuZXdseSBjcmVhdGVkIGZpbGVzLiAiCisiU3VwcG9ydGVkIHZhbHVlcyBhcmU6IEk8MT4gdG8gSTw5PiwgSTxiZXN0PiwgYW5kIEk8ZmFzdD4uICBUaGUgZGVmYXVsdCBpcyAiCisiSTw5PiBmb3IgZ3ppcCBhbmQgYnppcDIsIEk8Nj4gZm9yIHh6IGFuZCBsem1hLiIKK21zZ3N0ciAiIgorIk5pdmVhdSBkZSBjb21wcmVzc2lvbiDDoCB1dGlsaXNlci4gQ29tbWUgYXZlYyBCPC1aPiBjZWxhIG5lIGNvbmNlcm5lIHF1ZSBsZXMgIgorImZpY2hpZXJzIG5vdXZlbGxlbWVudCBjcsOpw6lzLiBMZXMgdmFsZXVycyBwcmlzZXMgcG9zc2libGVzIHNvbnQgbGVzICIKKyJzdWl2YW50ZXPCoDogSTwxPiDDoCBJPDk+LCBJPGJlc3Q+LCBldCBJPGZhc3Q+LiBJPDk+IGVzdCBsYSB2YWxldXIgcGFyIGTDqWZhdXQuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMToxNTcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1pPltJPHJlZ2V4cD5dLCBCPC0tZGlmZi1pZ25vcmU+Wz1JPHJlZ2V4cD5dIgorbXNnc3RyICJCPC1pPltJPGV4cHIuIHJhdC4+XSwgQjwtLWRpZmYtaWdub3JlPls9STxleHByLiByYXQuPl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MTY5Cittc2dpZCAiIgorIllvdSBtYXkgc3BlY2lmeSBhIHBlcmwgcmVndWxhciBleHByZXNzaW9uIHRvIG1hdGNoIGZpbGVzIHlvdSB3YW50IGZpbHRlcmVkICIKKyJvdXQgb2YgdGhlIGxpc3Qgb2YgZmlsZXMgZm9yIHRoZSBkaWZmLiAoVGhpcyBsaXN0IGlzIGdlbmVyYXRlZCBieSBhIGZpbmQgIgorImNvbW1hbmQuKSAoSWYgdGhlIHNvdXJjZSBwYWNrYWdlIGlzIGJlaW5nIGJ1aWx0IGFzIGEgdmVyc2lvbiAzIHNvdXJjZSAiCisicGFja2FnZSB1c2luZyBhIFZDUywgdGhpcyBjYW4gYmUgdXNlZCB0byBpZ25vcmUgdW5jb21taXRlZCBjaGFuZ2VzIG9uICIKKyJzcGVjaWZpYyBmaWxlcy4gVXNpbmcgLWkuKiB3aWxsIGlnbm9yZSBhbGwgb2YgdGhlbS4pICBCPC1pPiBieSBpdHNlbGYgIgorImVuYWJsZXMgdGhlIG9wdGlvbiwgd2l0aCBhIGRlZmF1bHQgcmVnZXhwIHRoYXQgd2lsbCBmaWx0ZXIgb3V0IGNvbnRyb2wgZmlsZXMgIgorImFuZCBkaXJlY3RvcmllcyBvZiB0aGUgbW9zdCBjb21tb24gcmV2aXNpb24gY29udHJvbCBzeXN0ZW1zLCBiYWNrdXAgYW5kIHN3YXAgIgorImZpbGVzIGFuZCBMaWJ0b29sIGJ1aWxkIG91dHB1dCBkaXJlY3Rvcmllcy4gVGhlcmUgY2FuIG9ubHkgYmUgb25lIGFjdGl2ZSAiCisicmVnZXhwLCBvZiBtdWx0aXBsZSBCPC1pPiBvcHRpb25zIG9ubHkgdGhlIGxhc3Qgb25lIHdpbGwgdGFrZSBlZmZlY3QuIgorbXNnc3RyICIiCisiSWwgZXN0IHBvc3NpYmxlIGRlIGRvbm5lciB1bmUgZXhwcmVzc2lvbiByYXRpb25uZWxsZSBQZXJsIHBvdXIgZmlsdHJlciBsZXMgIgorImZpY2hpZXJzIHF1aSBkb2l2ZW50IMOqdHJlIMOpbGltaW7DqXMgZGUgbGEgbGlzdGUgZGVzIGZpY2hpZXJzIHBvdXIgbGUgIgorIsKrwqBkaWZmwqDCuy4gQ2V0dGUgbGlzdGUgZXN0IGNyw6nDqWUgYXZlYyB1bmUgY29tbWFuZGUgwqvCoGZpbmTCoMK7LiBTaSBsZSBmaWNoaWVyICIKKyJzb3VyY2UgZW4gY29uc3RydWN0aW9uIGVzdCB1biBmaWNoaWVyIHNvdXJjZSBkZSB2ZXJzaW9uIDMgdXRpbGlzYW50IHVuICIKKyJzeXN0w6htZSBkZSBzdWl2aSBkZSB2ZXJzaW9ucywgY2V0dGUgb3B0aW9uIGVzdCB1dGlsZSBwb3VyIGlnbm9yZXIgbGVzICIKKyJtb2RpZmljYXRpb25zIG5vbiBlbnZvecOpZXMuIEwnb3B0aW9uIEI8LWk+IGFjdGl2ZSBjZXR0ZSBmb25jdGlvbiBhdmVjIHVuZSAiCisiZXhwcmVzc2lvbiByYXRpb25uZWxsZSBxdWkgY291dnJlIGxlcyBmaWNoaWVycyBkZSBjb250csO0bGUgZGVzIHBsdXMgdXN1ZWxzICIKKyJzeXN0w6htZXMgZGUgZ2VzdGlvbiBkZSB2ZXJzaW9uLCBsZXMgZmljaGllcnMgZGUgc2F1dmVnYXJkZXMsIGxlcyBmaWNoaWVycyAiCisiZCfDqWNoYW5nZSBldCBsZXMgcsOpcGVydG9pcmVzIHV0aWxpc8OpcyBwYXIgTGlidG9vbC4gSWwgbmUgcGV1dCB5IGF2b2lyIHF1J3VuZSAiCisic2V1bGUgZXhwcmVzc2lvbiByYXRpb25uZWxsZSBhY3RpdmXCoDsgc2V1bGUgbGEgZGVybmnDqHJlIG1lbnRpb25uw6llIHNlcmEgIgorInByaXNlIGVuIGNvbXB0ZS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MTc5Cittc2dpZCAiIgorIlRoaXMgaXMgdmVyeSBoZWxwZnVsIGluIGN1dHRpbmcgb3V0IGV4dHJhbmVvdXMgZmlsZXMgdGhhdCBnZXQgaW5jbHVkZWQgaW4gIgorInRoZSBkaWZmLCBlLmcuIGlmIHlvdSBtYWludGFpbiB5b3VyIHNvdXJjZSBpbiBhIHJldmlzaW9uIGNvbnRyb2wgc3lzdGVtIGFuZCAiCisid2FudCB0byB1c2UgYSBjaGVja291dCB0byBidWlsZCBhIHNvdXJjZSBwYWNrYWdlIHdpdGhvdXQgaW5jbHVkaW5nIHRoZSAiCisiYWRkaXRpb25hbCBmaWxlcyBhbmQgZGlyZWN0b3JpZXMgdGhhdCBpdCB3aWxsIHVzdWFsbHkgY29udGFpbiAoZS5nLiBDVlMvLCAuIgorImN2c2lnbm9yZSwgLnN2bi8pLiBUaGUgZGVmYXVsdCByZWdleHAgaXMgYWxyZWFkeSB2ZXJ5IGV4aGF1c3RpdmUsIGJ1dCBpZiB5b3UgIgorIm5lZWQgdG8gcmVwbGFjZSBpdCwgcGxlYXNlIG5vdGUgdGhhdCBieSBkZWZhdWx0IGl0IGNhbiBtYXRjaCBhbnkgcGFydCBvZiBhICIKKyJwYXRoLCBzbyBpZiB5b3Ugd2FudCB0byBtYXRjaCB0aGUgYmVnaW4gb2YgYSBmaWxlbmFtZSBvciBvbmx5IGZ1bGwgIgorImZpbGVuYW1lcywgeW91IHdpbGwgbmVlZCB0byBwcm92aWRlIHRoZSBuZWNlc3NhcnkgYW5jaG9ycyAoZS5nLiAnKF58LyknLCAiCisiJygkfC8pJykgeW91cnNlbGYuIgorbXNnc3RyICIiCisiQydlc3QgdHLDqHMgdXRpbGUgcG91ciBzdXBwcmltZXIgZGVzIGZpY2hpZXJzIHF1aSBzb250IGluY2x1cyBkYW5zIGxlIGRpZmYsICIKKyJwYXIgZXhlbXBsZSwgc2kgdm91cyBtYWludGVuZXogdW4gc291cmNlIGF2ZWMgdW4gc3lzdMOobWUgZGUgY29udHLDtGxlIGRlICIKKyJyw6l2aXNpb24gZXQgcXVlIHZvdWxleiBjb25zdHJ1aXJlIHVuIHBhcXVldCBzb3VyY2Ugc2FucyBpbmNsdXJlIGRlcyBmaWNoaWVycyAiCisiZXQgcsOpcGVydG9pcmVzIGFkZGl0aW9ubmVscyBxdSdpbCBjb250aWVudCBnw6luw6lyYWxlbWVudCAocGFyIGV4ZW1wbGUgQ1ZTLywgLiIKKyJjdnNpZ25vcmUsIC5zdm4vKS4gTCdleHByZXNzaW9uIHJhdGlvbm5lbGxlIHBhciBkw6lmYXV0ICBlc3QgZMOpasOgIHRyw6hzICIKKyJleGhhdXN0aXZlLCBtYWlzIHNpIGF2ZXogYmVzb2luIGRlIGxhIHJlbXBsYWNlciwgdmV1aWxsZXogbm90ZXIgcXVlIHBhciAiCisiZMOpZmF1dCwgaWwgc2FpdCB2w6lyaWZpZXIgbidpbXBvcnRlIHF1ZWxsZSBwYXJ0aWUgZCd1biBjaGVtaW4sIGRvbmMgc2kgdm91cyAiCisidm91bGV6IHRyb3V2ZXIgbGUgZMOpYnV0IGQndW4gbm9tIGRlIGZpY2hpZXIgb3UgZGVzIG5vbXMgZGUgZmljaGllcnMgIgorImNvbXBsZXRzLCB2b3VzIGRldnJleiBmb3VybmlyIGxlcyBjYXJhY3TDqHJlcyBzcMOpY2lhdXggdm91cy1tw6ptZSAocGFyICIKKyJleGVtcGxlJyhefC8pJywgJygkfC8pJykuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMToxNzkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tZXh0ZW5kLWRpZmYtaWdub3JlPj1JPHJlZ2V4cD4iCittc2dzdHIgIkI8LS1leHRlbmQtZGlmZi1pZ25vcmU+PUk8ZXhwci5yYXQuPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToxODYKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlRoZSBwZXJsIHJlZ3VsYXIgZXhwcmVzc2lvbiBzcGVjaWZpZWQgd2lsbCBleHRlbmQgdGhlIGRlZmF1bHQgcmVndWxhciAiCisjfCAiZXhwcmVzc2lvbiBhc3NvY2lhdGVkIHRvIEI8LWk+IGJ5IGNvbmNhdGVuYXRpbmcgXCJCPHw+STxyZWdleHA+XCIgdG8gdGhlICIKKyN8ICJkZWZhdWx0IHJlZ2V4cC4gIFRoaXMgb3B0aW9uIGlzIGNvbnZlbmllbnQgdG8gdXNlIGluIEI8ZGViaWFuL3NvdXJjZS8iCisjfCAib3B0aW9ucz4gdG8gZXhjbHVkZSBzb21lIGF1dG8tZ2VuZXJhdGVkIGZpbGVzIGZyb20gdGhlIGF1dG9tYXRpYyBwYXRjaCAiCisjfCAiZ2VuZXJhdGlvbi4iCittc2dpZCAiIgorIlRoZSBwZXJsIHJlZ3VsYXIgZXhwcmVzc2lvbiBzcGVjaWZpZWQgd2lsbCBleHRlbmQgdGhlIGRlZmF1bHQgdmFsdWUgb2YgQjwtLSIKKyJkaWZmLWlnbm9yZT4gYW5kIGl0cyBjdXJyZW50IHZhbHVlIChpZiBzZXQpLiBJdCBkb2VzIHRoaXMgYnkgY29uY2F0ZW5hdGluZyAiCisiXCJCPHw+STxyZWdleHA+XCIgdG8gdGhlIGV4aXN0aW5nIHZhbHVlLiAgVGhpcyBvcHRpb24gaXMgY29udmVuaWVudCB0byB1c2UgIgorImluIEI8ZGViaWFuL3NvdXJjZS9vcHRpb25zPiB0byBleGNsdWRlIHNvbWUgYXV0by1nZW5lcmF0ZWQgZmlsZXMgZnJvbSB0aGUgIgorImF1dG9tYXRpYyBwYXRjaCBnZW5lcmF0aW9uLiIKK21zZ3N0ciAiIgorIkwnZXhwcmVzc2lvbiByYXRpb25uZWxsZSBQZXJsIGluZGlxdcOpZSBjb21wbMOpdGVyYSBjZWxsZSBhc3NvY2nDqWUgw6AgQjwtaT4gZW4gIgorImNvbmNhdMOpbmFudCBcIkI8fD5JPGV4cHIucmF0Lj4gw6AgbCdleHByZXNzaW9uIHJhdGlvbm5lbGxlIHBhciBkw6lmYXV0LiBDZXR0ZSAiCisib3B0aW9uIGVzdCBwcmF0aXF1ZSBkYXMgQjxkZWJpYW4vc291cmNlL29wdGlvbnM+IHBvdXIgZXhjbHVyZSBjZXJ0YWlucyAiCisiZmljaGllcnMgYXV0by1jcsOpw6lzIGRlIGxhIGNyw6lhdGlvbiBhdXRvbWF0aXF1ZSBkZSBjb3JyZWN0aWZzLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6MTg2CisjLCBuby13cmFwCittc2dpZCAiQjwtST5bSTxmaWxlLXBhdHRlcm4+XSwgQjwtLXRhci1pZ25vcmU+Wz1JPGZpbGUtcGF0dGVybj5dIgorbXNnc3RyICJCPC1JPltJPG1vdGlmLWZpY2hpZXI+XSwgQjwtLXRhci1pZ25vcmU+Wz1JPG1vdGlmLWZpY2hpZXI+XSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToxOTUKK21zZ2lkICIiCisiSWYgdGhpcyBvcHRpb24gaXMgc3BlY2lmaWVkLCB0aGUgcGF0dGVybiB3aWxsIGJlIHBhc3NlZCB0byBCPHRhcj4oMSkncyAtLSIKKyJleGNsdWRlIG9wdGlvbiB3aGVuIGl0IGlzIGNhbGxlZCB0byBnZW5lcmF0ZSBhIC5vcmlnLnRhciBvciAudGFyIGZpbGUuIEZvciAiCisiZXhhbXBsZSwgLUlDVlMgd2lsbCBtYWtlIHRhciBza2lwIG92ZXIgQ1ZTIGRpcmVjdG9yaWVzIHdoZW4gZ2VuZXJhdGluZyBhIC4iCisidGFyLmd6IGZpbGUuIFRoZSBvcHRpb24gbWF5IGJlIHJlcGVhdGVkIG11bHRpcGxlIHRpbWVzIHRvIGxpc3QgbXVsdGlwbGUgIgorInBhdHRlcm5zIHRvIGV4Y2x1ZGUuIgorbXNnc3RyICIiCisiQXZlYyBjZXR0ZSBvcHRpb24sIGxlIGZpY2hpZXIgZXN0IHBhc3PDqSDDoCBsJ29wdGlvbiBCPHRhcj4oMSkgcXVhbmQgb24gdmV1dCAiCisiY3LDqWVyIHVuIGZpY2hpZXIgLm9yaWcudGFyLmd6IG91IC50YXIuZ3ouIFBhciBleGVtcGxlLCAtSUNWUyBmZXJhIHF1ZSB0YXIgIgorInNhdXRlcmEgbGVzIHLDqXBlcnRvaXJlcyBkdSBDVlMgcXVhbmQgaWwgZG9pdCBjcsOpZXIgdW4gZmljaGllciAudGFyLmd6LiBPbiAiCisicGV1dCByw6lww6l0ZXIgY2V0dGUgb3B0aW9uIHBvdXIgZXhjbHVyZSBwbHVzaWV1cnMgZmljaGllcnMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjIwMAorbXNnaWQgIiIKKyJCPC1JPiBieSBpdHNlbGYgYWRkcyBkZWZhdWx0IC0tZXhjbHVkZSBvcHRpb25zIHRoYXQgd2lsbCBmaWx0ZXIgb3V0IGNvbnRyb2wgIgorImZpbGVzIGFuZCBkaXJlY3RvcmllcyBvZiB0aGUgbW9zdCBjb21tb24gcmV2aXNpb24gY29udHJvbCBzeXN0ZW1zLCBiYWNrdXAgIgorImFuZCBzd2FwIGZpbGVzIGFuZCBMaWJ0b29sIGJ1aWxkIG91dHB1dCBkaXJlY3Rvcmllcy4iCittc2dzdHIgIiIKKyJCPC1JPiBham91dGUgcGFyIGTDqWZhdXQgZGVzIG9wdGlvbnMgwqtcXC0tZXhjbHVkZcKgwrsgcXVpIMOpbGltaW5lcm9udCBsZXMgIgorImZpY2hpZXJzIGV0IGxlcyByw6lwZXJ0b2lyZXMgZGUgY29udHLDtGxlcyBkZXMgc3lzdMOobWVzIGxlcyBwbHVzIGNvbm51cyBkZSAiCisiY29udHLDtGxlIGRlIHZlcnNpb24sIGxlcyBmaWNoaWVycyBkJ8OpY2hhbmdlIGV0IGRlIHNhdXZlZ2FyZGUgZXQgbGVzICIKKyJyw6lwZXJ0b2lyZXMgdXRpbGlzw6lzIHBhciBMaWJ0b29sLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToyMTIKK21zZ2lkICIiCisiQjxOb3RlOj4gV2hpbGUgdGhleSBoYXZlIHNpbWlsYXIgcHVycG9zZXMsIEI8LWk+IGFuZCBCPC1JPiBoYXZlIHZlcnkgIgorImRpZmZlcmVudCBzeW50YXggYW5kIHNlbWFudGljcy4gQjwtaT4gY2FuIG9ubHkgYmUgc3BlY2lmaWVkIG9uY2UgYW5kIHRha2VzIGEgIgorInBlcmwgY29tcGF0aWJsZSByZWd1bGFyIGV4cHJlc3Npb24gd2hpY2ggaXMgbWF0Y2hlZCBhZ2FpbnN0IHRoZSBmdWxsICIKKyJyZWxhdGl2ZSBwYXRoIG9mIGVhY2ggZmlsZS4gQjwtST4gY2FuIHNwZWNpZmllZCBtdWx0aXBsZSB0aW1lcyBhbmQgdGFrZXMgYSAiCisiZmlsZW5hbWUgcGF0dGVybiB3aXRoIHNoZWxsIHdpbGRjYXJkcy4gIFRoZSBwYXR0ZXJuIGlzIGFwcGxpZWQgdG8gdGhlIGZ1bGwgIgorInJlbGF0aXZlIHBhdGggYnV0IGFsc28gdG8gZWFjaCBwYXJ0IG9mIHRoZSBwYXRoIGluZGl2aWR1YWxseS4gVGhlIGV4YWN0ICIKKyJzZW1hbnRpYyBvZiB0YXIncyAtLWV4Y2x1ZGUgb3B0aW9uIGlzIHNvbWV3aGF0IGNvbXBsaWNhdGVkLCBzZWUgaHR0cDovL3d3dy4iCisiZ251Lm9yZy9zb2Z0d2FyZS90YXIvbWFudWFsL3Rhci5odG1sI3dpbGRjYXJkcyBmb3IgYSBmdWxsIGRvY3VtZW50YXRpb24uIgorbXNnc3RyICIiCisiQjxOb3RlwqA6PiBtw6ptZSBzaSBlbGxlcyBvbnQgZGVzIHLDtGxlcyBzaW1pbGFpcmVzLCBCPC1pPiBldCBCPC1JPiBvbnQgdW5lICIKKyJzeW50YXhlIGV0IHVuZSBzw6ltYW50aXF1ZSB0csOocyBkaWZmw6lyZW50ZXMuIEI8LWk+IG5lIHBldXQgw6p0cmUgc3DDqWNpZmnDqSAiCisicXUndW5lIGZvaXMgZXQgcmXDp29pdCB1bmUgZXhwcmVzc2lvbiByYXRpb25uZWxsZSBjb21wYXRpYmxlIGF2ZWMgbGUgbGFuZ2FnZSAiCisiUGVybCBxdWkgZXN0IGFwcGxpcXXDqWUgc3VyIGNoYXF1ZSBjaGVtaW4gcmVsYXRpZiBjb21wbGV0IGRlIGNoYXF1ZSBmaWNoaWVyLiAiCisiQjxJPiBwZXV0IMOqdHJlIHNww6ljaWZpw6kgcGx1c2lldXJzIGZvaXMgZXQgcHJlbmQgdW4gbW90aWYgZGUgbm9tIGRlIGZpY2hpZXIgIgorImF2ZWMgbGVzIG3DqXRhLWNhcmFjdMOocmVzIGR1IHNoZWxsLiBMZSBtb3RpZiBlc3QgYXBwbGlxdcOpIGF1IGNoZW1pbiByZWxhdGlmICIKKyJjb21wbGV0IG1haXMgYXVzc2kgw6AgY2hhcXVlIHBhcnRpZSBkdSBjaGVtaW4gaW5kaXZpZHVlbGxlbWVudC4gTGEgc8OpbWFudGlxdWUgIgorImV4YWN0ZSBkZSBsJ29wdGlvbiDCq8KgdGFyIC0tZXhjbHVkZcKgwrsgZXN0IHVuIHBldSBjb21wbGlxdcOpZSwgdm9pciBodHRwOi8vd3d3LiIKKyJnbnUub3JnL3NvZnR3YXJlL3Rhci9tYW51ZWwvdGFyLmh0bWwjd2lsZGNhcmRzIHBvdXIgdW5lIGRvY3VtZW50YXRpb24gcGx1cyAiCisiY29tcGzDqHRlLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToyMTUKK21zZ2lkICIiCisiVGhlIGRlZmF1bHQgcmVnZXhwIGFuZCBwYXR0ZXJucyBmb3IgYm90aCBvcHRpb25zIGNhbiBiZSBzZWVuIGluIHRoZSBvdXRwdXQgIgorIm9mIHRoZSBCPC0taGVscD4gY29tbWFuZC4iCittc2dzdHIgIiIKKyJMJ2V4cHJlc3Npb24gcmF0aW9ubmVsbGUgZXQgbGUgbW90aWYgcGFyIGTDqWZhdXQgcG91ciBsZXMgZGV1eCBvcHRpb25zICIKKyJwZXV2ZW50IMOqdHJlIHRyb3V2w6lzIGRhbnMgbGEgc29ydGllIGRlIGxhIGNvbW1hbmRlIEI8LS1oZWxwPi4iCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLXNvdXJjZS4xOjIxNQorIywgbm8td3JhcAorbXNnaWQgIkdFTkVSSUMgRVhUUkFDVCBPUFRJT05TIgorbXNnc3RyICJMRVMgT1BUSU9OUyBHRU5FUklRVUVTIFBPVVIgRVhUUkFDVElPTiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6MjE2CisjLCBuby13cmFwCittc2dpZCAiQjwtLW5vLWNvcHk+IgorbXNnc3RyICJCPC0tbm8tY29weT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MjE5Cittc2dpZCAiRG8gbm90IGNvcHkgb3JpZ2luYWwgdGFyYmFsbHMgbmVhciB0aGUgZXh0cmFjdGVkIHNvdXJjZSBwYWNrYWdlLiIKK21zZ3N0ciAiIgorIk5lIHBhcyBjb3BpZXIgbCdhcmNoaXZlIGQnb3JpZ2luZSBwcsOocyBkZSBsJ2V4dHJhY3Rpb24gZHUgcGFxdWV0IHNvdXJjZS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjIxOQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1uby1jaGVjaz4iCittc2dzdHIgIkI8LS1uby1jaGVjaz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MjIyCittc2dpZCAiRG8gbm90IGNoZWNrIHNpZ25hdHVyZXMgYW5kIGNoZWNrc3VtcyBiZWZvcmUgdW5wYWNraW5nLiIKK21zZ3N0ciAiIgorIk5lIHbDqXJpZmllIHBhcyBsZXMgc2lnbmF0dXJlcyBldCBsZXMgc29tbWVzIGRlIGNvbnRyw7RsZSBhdmFudCBkZSBkw6lwYXF1ZXRlci4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjIyMgorIywgbm8td3JhcAorbXNnaWQgIkI8LS1yZXF1aXJlLXZhbGlkLXNpZ25hdHVyZT4iCittc2dzdHIgIkI8LS1yZXF1aXJlLXZhbGlkLXNpZ25hdHVyZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MjMwCittc2dpZCAiIgorIlJlZnVzZSB0byB1bnBhY2sgdGhlIHNvdXJjZSBwYWNrYWdlIGlmIGl0IGRvZXNuJ3QgY29udGFpbiBhbiBPcGVuUEdQICIKKyJzaWduYXR1cmUgdGhhdCBjYW4gYmUgdmVyaWZpZWQgZWl0aGVyIHdpdGggdGhlIHVzZXIncyBJPHRydXN0ZWRrZXlzLmdwZz4gIgorImtleXJpbmcsIG9uZSBvZiB0aGUgdmVuZG9yLXNwZWNpZmljIGtleXJpbmdzLCBvciBvbmUgb2YgdGhlIG9mZmljaWFsIERlYmlhbiAiCisia2V5cmluZ3MgKEk8L3Vzci9zaGFyZS9rZXlyaW5ncy9kZWJpYW4ta2V5cmluZy5ncGc+IGFuZCBJPC91c3Ivc2hhcmUvIgorImtleXJpbmdzL2RlYmlhbi1tYWludGFpbmVycy5ncGc+KS4iCittc2dzdHIgIiIKKyJSZWZ1c2UgZGUgZMOpY29tcHJlc3NlciBsZSBwYXF1ZXQgc291cmNlIHMnaWwgbmUgY29udGllbnQgcGFzIGRlIHNpZ25hdHVyZSAiCisiT3BlblBHUCBwb3V2YW50IMOqdHJlIHbDqXJpZmnDqWUgc29pdCBhdmVjIGxlIGZpY2hpZXIgZGUgY2zDqXMgSTx0cnVzdGVka2V5cy4iCisiZ3BnPiBkZSBsJ3V0aWxpc2F0ZXVyLCB1biBkZXMgZmljaGllcnMgZGUgY2zDqXMgcHJvcHJlIMOgIHVuIGRpc3RyaWJ1dGV1ciBvdSAiCisidW4gZGVzIGZpY2hpZXJzIGRlIGNsw6lzIG9mZmljaWVscyBkZSBEZWJpYW4gKEk8L3Vzci9zaGFyZS9rZXlyaW5ncy9kZWJpYW4tIgorImtleXJpbmcuZ3BnPiBldCBJPC91c3Ivc2hhcmUva2V5cmluZ3MvZGViaWFuLW1haW50YWluZXJzLmdwZz4pLiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctc291cmNlLjE6MjMxCisjLCBuby13cmFwCittc2dpZCAiU09VUkNFIFBBQ0tBR0UgRk9STUFUUyIKK21zZ3N0ciAiRk9STUFUUyBERSBQQVFVRVQgU09VUkNFIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjIzNgorbXNnaWQgIiIKKyJJZiB5b3UgZG9uJ3Qga25vdyB3aGF0IHNvdXJjZSBmb3JtYXQgdG8gdXNlLCB5b3Ugc2hvdWxkIHByb2JhYmx5IHBpY2sgZWl0aGVyICIKKyJcIjMuMCAocXVpbHQpXCIgb3IgXCIzLjAgKG5hdGl2ZSlcIi4gU2VlIGh0dHA6Ly93aWtpLmRlYmlhbi5vcmcvUHJvamVjdHMvIgorIkRlYlNyYzMuMCBmb3IgaW5mb3JtYXRpb24gb24gdGhlIGRlcGxveW1lbnQgb2YgdGhvc2UgZm9ybWF0cyB3aXRoaW4gRGViaWFuLiIKK21zZ3N0ciAiIgorIlNpIHZvdXMgbmUgc2F2ZXogcGFzIHF1ZWwgZm9ybWF0IHNvdXJjZSB1dGlsaXNlciwgaWwgZXN0IGNvbnNlaWxsw6kgZGUgIgorImNob2lzaXIgc29pdCDCq8KgMy4wIChxdWlsdClcIiBzb2l0IFwiMy4wIChuYXRpdmUpXCIuIFZvaXIgaHR0cDovL3dpa2kuZGViaWFuLiIKKyJvcmcvUHJvamVjdHMvRGViU3JjMy4wIHBvdXIgcGx1cyBkJ2luZm9ybWF0aW9ucyBzdXIgbGEgbWlzZSBlbiBvZXV2cmUgZGUgY2VzICIKKyJmb3JtYXRzIGRhbnMgRGViaWFuLiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6MjM3CisjLCBuby13cmFwCittc2dpZCAiRm9ybWF0OiAxLjAiCittc2dzdHIgIkZvcm1hdDogMS4wIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjI0MQorbXNnaWQgIiIKKyJBIHNvdXJjZSBwYWNrYWdlIGluIHRoaXMgZm9ybWF0IGNvbnNpc3RzIGVpdGhlciBvZiBhIEI8Lm9yaWcudGFyLmd6PiAiCisiYXNzb2NpYXRlZCB0byBhIEI8LmRpZmYuZ3o+IG9yIGEgc2luZ2xlIEI8LnRhci5nej4gKGluIHRoYXQgY2FzZSB0aGUgcGFja2FnZSAiCisiaXMgc2FpZCB0byBiZSBJPG5hdGl2ZT4pLiIKK21zZ3N0ciAiIgorIlVuIHBhcXVldCBzb3VyY2UgZGFucyBjZSBmb3JtYXQgc2UgY29tcG9zZSBzb2l0IGQndW4gQjwub3JpZy50YXIuZ3o+IGFzc29jacOpICIKKyLDoCB1biBCPC5kaWZmLmd6PiBvdSB1biBzaW1wbGUgQjwudGFyLmd6PiAoZGFucyBjZSBjYXMsIGxlIHBhcXVldCBlc3QgYXBwZWzDqSAiCisibmF0aWYgSTxcIm5hdGl2ZVwiPikuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjI0MyBkcGtnLXNvdXJjZS4xOjQxMSBkcGtnLXNvdXJjZS4xOjU4NiBkcGtnLXNvdXJjZS4xOjYyNQorbXNnaWQgIkI8RXh0cmFjdGluZz4iCittc2dzdHIgIkI8RXh0cmFjdGluZz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MjUzCittc2dpZCAiIgorIkV4dHJhY3RpbmcgYSBuYXRpdmUgcGFja2FnZSBpcyBhIHNpbXBsZSBleHRyYWN0aW9uIG9mIHRoZSBzaW5nbGUgdGFyYmFsbCBpbiAiCisidGhlIHRhcmdldCBkaXJlY3RvcnkuIEV4dHJhY3RpbmcgYSBub24tbmF0aXZlIHBhY2thZ2UgaXMgZG9uZSBieSBmaXJzdCAiCisidW5wYWNraW5nIHRoZSBCPC5vcmlnLnRhci5nej4gYW5kIHRoZW4gYXBwbHlpbmcgdGhlIHBhdGNoIGNvbnRhaW5lZCBpbiB0aGUgIgorIkI8LmRpZmYuZ3o+IGZpbGUuIFRoZSB0aW1lc3RhbXAgb2YgYWxsIHBhdGNoZWQgZmlsZXMgaXMgcmVzZXQgdG8gdGhlICIKKyJleHRyYWN0aW9uIHRpbWUgb2YgdGhlIHNvdXJjZSBwYWNrYWdlICh0aGlzIGF2b2lkcyB0aW1lc3RhbXAgc2tld3MgbGVhZGluZyAiCisidG8gcHJvYmxlbXMgd2hlbiBhdXRvZ2VuZXJhdGVkIGZpbGVzIGFyZSBwYXRjaGVkKS4gVGhlIGRpZmYgY2FuIGNyZWF0ZSBuZXcgIgorImZpbGVzICh0aGUgd2hvbGUgZGViaWFuIGRpcmVjdG9yeSBpcyBjcmVhdGVkIHRoYXQgd2F5KSBidXQgY2FuJ3QgcmVtb3ZlICIKKyJmaWxlcyAoZW1wdHkgZmlsZXMgd2lsbCBiZSBsZWZ0IG92ZXIpLiIKK21zZ3N0ciAiIgorIkV4dHJhaXJlIHVuIHBhcXVldCBuYXRpZiByZXZpZW50IMOgIHVuZSBzaW1wbGUgZXh0cmFjdGlvbiBkZSBsJ2FyY2hpdmUgVEFSICIKKyJkYW5zIGxlIHLDqXBlcnRvaXJlIGNpYmxlLiBMJ2V4dHJhY3Rpb24gZCd1biBwYXF1ZXQgbm9uLW5hdGlmIGNvbnNpc3RlIGF1ICIKKyJkw6lwYXF1ZXRhZ2UgZHUgQjwub3JpZy50YXIuZ3o+IHB1aXMgbCdhcHBsaWNhdGlvbiBkZXMgY29ycmVjdGlmcyBjb250ZW51ZXMgIgorImRhbnMgbGUgQjwuZGlmZi5nej4uIExhIGRhdGUgZGUgdG91cyBsZXMgZmljaGllcnMgY29ycmVjdGlmcyBlc3QgY2VsbGUgZHUgIgorIm1vbWVudCBvw7kgYSBldSBsaWV1IGwnZXh0cmFjdGlvbiBkZXB1aXMgbGUgcGFxdWV0IHNvdXJjZSAoY2VsYSDDqXZpdGUgbGVzICIKKyJoZXVyZXMgZmF1c3NlcyBtZW5hbnQgw6AgZGVzIHByb2Jsw6htZXMgbG9yc3F1ZSBkZXMgZmljaGllcnMgZ8OpbsOpcsOpcyAiCisiYXV0b21hdGlxdWVtZW50IHNvbnQgbW9kaWZpw6lzKS4gTGUgZGlmZiBwZXV0IGNyw6llciBkZSBub3V2ZWF1eCBmaWNoaWVycyAiCisiKHRvdXQgbGUgcsOpcGVydG9pcmUgZGViaWFuIGVzdCBjcsOpw6kgZGUgY2V0dGUgZmHDp29uKSBtYWlzIG5lIHBldXQgcGFzICIKKyJzdXBwcmltZXIgZGUgZmljaGllcnMgKGxlcyBmaWNoaWVycyB2aWRlcyBzZXJvbnQgbGFpc3PDqSBsw6ApLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToyNTUgZHBrZy1zb3VyY2UuMTo0MzkgZHBrZy1zb3VyY2UuMTo1OTcgZHBrZy1zb3VyY2UuMTo2MzAKK21zZ2lkICJCPEJ1aWxkaW5nPiIKK21zZ3N0ciAiQjxDb25zdHJ1Y3Rpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjI2MQorbXNnaWQgIiIKKyJCdWlsZGluZyBhIG5hdGl2ZSBwYWNrYWdlIGlzIGp1c3QgY3JlYXRpbmcgYSBzaW5nbGUgdGFyYmFsbCB3aXRoIHRoZSBzb3VyY2UgIgorImRpcmVjdG9yeS4gQnVpbGRpbmcgYSBub24tbmF0aXZlIHBhY2thZ2UgaW52b2x2ZXMgZXh0cmFjdGluZyB0aGUgb3JpZ2luYWwgIgorInRhcmJhbGwgaW4gYSBzZXBhcmF0ZSBcIi5vcmlnXCIgZGlyZWN0b3J5IGFuZCByZWdlbmVyYXRpbmcgdGhlIEI8LmRpZmYuZ3o+ICIKKyJieSBjb21wYXJpbmcgdGhlIHNvdXJjZSBwYWNrYWdlIEk8ZGlyZWN0b3J5PiB3aXRoIHRoZSAub3JpZyBkaXJlY3RvcnkuIgorbXNnc3RyICIiCisiQ29uc3RydWlyZSB1biBwYXF1ZXQgbmF0aWYgcmV2aWVudCBzaW1wbGVtZW50IMOgIGNyw6llciB1bmUgYXJjaGl2ZSBUQVIgYXZlYyAiCisibGUgcsOpcGVydG9pcmUgZHUgc291cmNlLiBMYSBjcsOpYXRpb24gZCd1biBwYXF1ZXQgbm9uLW5hdGlmIGNvbnNpc3RlIMOgICIKKyJleHRyYWlyZSBsJ2FyY2hpdmUgZCdvcmlnaW5lIGRhbnMgdW4gcsOpcGVydG9pcmUgc8OpcGFyw6kgXCIub3JpZ1wiIHB1aXMgIgorInLDqWfDqW7DqXJlciBsZSBCPC5kaWZmLmd6PiBlbiBjb21wYXJhbnQgbGUgSTxyw6lwZXJ0b2lyZT4gZHUgcGFxdWV0IHNvdXJjZSBhdmVjICIKKyJyw6lwZXJ0b2lyZSBcIi5vcmlnXCIuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMToyNjIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPEJ1aWxkIG9wdGlvbnMgKHdpdGggLWIpOj4iCittc2dzdHIgIkI8T3B0aW9ucyBkZSBjb25zdHJ1Y3Rpb24gKGF2ZWMgLWIpOj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6Mjc1Cittc2dpZCAiIgorIklmIGEgc2Vjb25kIG5vbi1vcHRpb24gYXJndW1lbnQgaXMgc3VwcGxpZWQgaXQgc2hvdWxkIGJlIHRoZSBuYW1lIG9mIHRoZSAiCisib3JpZ2luYWwgc291cmNlIGRpcmVjdG9yeSBvciB0YXJmaWxlIG9yIHRoZSBlbXB0eSBzdHJpbmcgaWYgdGhlIHBhY2thZ2UgaXMgYSAiCisiRGViaWFuLXNwZWNpZmljIG9uZSBhbmQgc28gaGFzIG5vIERlYmlhbmlzYXRpb24gZGlmZnMuIElmIG5vIHNlY29uZCBhcmd1bWVudCAiCisiaXMgc3VwcGxpZWQgdGhlbiBCPGRwa2ctc291cmNlPiB3aWxsIGxvb2sgZm9yIHRoZSBvcmlnaW5hbCBzb3VyY2UgdGFyZmlsZSAiCisiSTxwYWNrYWdlPkI8Xz5JPHVwc3RyZWFtLXZlcnNpb24+Qjwub3JpZy50YXIuZ3o+IG9yIHRoZSBvcmlnaW5hbCBzb3VyY2UgIgorImRpcmVjdG9yeSBJPGRpcmVjdG9yeT5CPC5vcmlnPiBkZXBlbmRpbmcgb24gdGhlIEI8LXNYPiBhcmd1bWVudHMuIgorbXNnc3RyICIiCisiU2kgbCdvbiBkb25uZSB1biBzZWNvbmQgYXJndW1lbnQsIGNlIHNlcmEgbGUgbm9tIGR1IHLDqXBlcnRvaXJlIHNvdXJjZSAiCisiZCdvcmlnaW5lIG91IGxlIG5vbSBkdSBmaWNoaWVyIMKrwqB0YXLCoMK7IG91IGJpZW4gdW5lIGNoYcOubmUgdmlkZSBzaSBsZSBwYXF1ZXQgIgorImVzdCB1biDCq8KgZGViaWFuIHB1cmUgc291Y2hlwqDCuyBldCBuJ2EgZG9uYyBwYXMgZGUgZmljaGllcnMgwqvCoGRpZmZzwqDCuyAiCisiY29uY2VybmFudCBzYSDCq8KgZGViaWFuaXNhdGlvbsKgwrsuIFMnaWwgbid5IGEgcGFzIGRlIHNlY29uZCBhcmd1bWVudCwgZXQgc2Vsb24gIgorImxlcyBhdXRyZXMgYXJndW1lbnRzIGRvbm7DqXMsIEI8ZHBrZy1zb3VyY2U+IGNoZXJjaGUgbGUgZmljaGllciDCq8KgdGFywqDCuyBkZXMgIgorInNvdXJjZXMgZCdvcmlnaW5lIEk8cGFxdWV0PkI8Xz5JPHZlcnNpb24tZCdvcmlnaW5lPkI8Lm9yaWcudGFyLmd6PiBvdSBiaWVuICIKKyJsZSByw6lwZXJ0b2lyZSBzb3VyY2UgZCdvcmlnaW5lIEk8csOpcGVydG9pcmU+Qjwub3JpZz4gc2Vsb24gbGVzIHBhcmFtw6h0cmVzIEI8LSIKKyJzWD4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjI4MQorbXNnaWQgIiIKKyJCPC1zYT4sIEI8LXNwPiwgQjwtc2s+LCBCPC1zdT4gYW5kIEI8LXNyPiB3aWxsIG5vdCBvdmVyd3JpdGUgZXhpc3RpbmcgIgorInRhcmZpbGVzIG9yIGRpcmVjdG9yaWVzLiBJZiB0aGlzIGlzIGRlc2lyZWQgdGhlbiBCPC1zQT4sIEI8LXNQPiwgQjwtc0s+LCBCPC0iCisic1U+IGFuZCBCPC1zUj4gc2hvdWxkIGJlIHVzZWQgaW5zdGVhZC4iCittc2dzdHIgIiIKKyJMZXMgb3B0aW9ucyBCPC1zYT4sIEI8LXNwPiwgQjwtc2s+LCBCPC1zdT4gZXQgQjwtc3I+IG5lIHJlbXBsYWNlbnQgcGFzIGxlcyAiCisiZmljaGllcnMgwqvCoHRhcsKgwrsgb3UgbGVzIHLDqXBlcnRvaXJlcyBleGlzdGFudHMuIFBvdXIgY2VsYSwgaWwgZmF1dCB1dGlsaXNlciAiCisibGVzIG9wdGlvbnMgQjwtc0E+LCBCPC1zUD4sIEI8LXNLPiwgQjwtc1U+IGV0IEI8LXNSLj4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjI4MQorIywgbm8td3JhcAorbXNnaWQgIkI8LXNrPiIKK21zZ3N0ciAiQjwtc2s+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjI5MAorbXNnaWQgIiIKKyJTcGVjaWZpZXMgdG8gZXhwZWN0IHRoZSBvcmlnaW5hbCBzb3VyY2UgYXMgYSB0YXJmaWxlLCBieSBkZWZhdWx0ICIKKyJJPHBhY2thZ2U+QjxfPkk8dXBzdHJlYW0tdmVyc2lvbj5CPC5vcmlnLnRhci4+STxleHRlbnNpb24+LiAgSXQgd2lsbCBsZWF2ZSAiCisidGhpcyBvcmlnaW5hbCBzb3VyY2UgaW4gcGxhY2UgYXMgYSB0YXJmaWxlLCBvciBjb3B5IGl0IHRvIHRoZSBjdXJyZW50ICIKKyJkaXJlY3RvcnkgaWYgaXQgaXNuJ3QgYWxyZWFkeSB0aGVyZS4gVGhlIHRhcmJhbGwgd2lsbCBiZSB1bnBhY2tlZCBpbnRvICIKKyJJPGRpcmVjdG9yeT5CPC5vcmlnPiBmb3IgdGhlIGdlbmVyYXRpb24gb2YgdGhlIGRpZmYuIgorbXNnc3RyICIiCisiUXVhbmQgb24gc3DDqWNpZmllIGVuIGZpY2hpZXIgc291cmNlIGQnb3JpZ2luZSB1biBmaWNoaWVyIMKrwqB0YXLCoMK7wqA7IHBhciAiCisiZMOpZmF1dCwgSTxwYXF1ZXQ+QjxfPkk8dmVyc2lvbi1kJ29yaWdpbmU+Qjwub3JpZy50YXI+STxleHRlbnNpb24+LiBJbCBsZSAiCisibGFpc3NlIGVuIHBsYWNlIGVuIHRhbnQgcXVlIGZpY2hpZXIgwqvCoHRhcsKgwrsgb3UgbGUgY29waWUgZGFucyBsZSByw6lwZXJ0b2lyZSAiCisiZW4gY291cnMgcydpbCBuJ3kgZXN0IHBhcyBkw6lqw6AuIExlIGZpY2hpZXIgc2VyYSBkw6lwYXF1ZXTDqSBkYW5zICIKKyJJPHLDqXBlcnRvaXJlPkI8Lm9yaWc+IHBvdXIgbGEgZ8OpbsOpcmF0aW9uIGR1IGZpY2hpZXIgZGlmZi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjI5MCBkcGtnLXNvdXJjZS4xOjM1OQorIywgbm8td3JhcAorbXNnaWQgIkI8LXNwPiIKK21zZ3N0ciAiQjwtc3A+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjI5NQorbXNnaWQgIkxpa2UgQjwtc2s+IGJ1dCB3aWxsIHJlbW92ZSB0aGUgZGlyZWN0b3J5IGFnYWluIGFmdGVyd2FyZHMuIgorbXNnc3RyICJDb21tZSBCPC1zaz4gbWFpcyBzdXBwcmltZXJhIGxlIHLDqXBlcnRvaXJlIMOgIG5vdXZlYXUgcGFyIGxhIHN1aXRlLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6Mjk1IGRwa2ctc291cmNlLjE6MzY1CisjLCBuby13cmFwCittc2dpZCAiQjwtc3U+IgorbXNnc3RyICJCPC1zdT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MzAzCittc2dpZCAiIgorIlNwZWNpZmllcyB0aGF0IHRoZSBvcmlnaW5hbCBzb3VyY2UgaXMgZXhwZWN0ZWQgYXMgYSBkaXJlY3RvcnksIGJ5IGRlZmF1bHQgIgorIkk8cGFja2FnZT5CPC0+STx1cHN0cmVhbS12ZXJzaW9uPkI8Lm9yaWc+IGFuZCBCPGRwa2ctc291cmNlPiB3aWxsIGNyZWF0ZSBhICIKKyJuZXcgb3JpZ2luYWwgc291cmNlIGFyY2hpdmUgZnJvbSBpdC4iCittc2dzdHIgIiIKKyJRdWFuZCBvbiBzcMOpY2lmaWUgcXVlIGxlIHNvdXJjZSBkJ29yaWdpbmUgZXN0IHVuIHLDqXBlcnRvaXJlwqA7IGxhIHZhbGV1ciBwYXIgIgorImTDqWZhdXQgZXN0IGxlIHLDqXBlcnRvaXJlIEk8cGFxdWV0PkI8LT5JPHZlcnNpb24tZCdvcmlnaW5lPkI8Lm9yaWc+IGV0IEI8ZHBrZy0iCisic291cmNlPiBjcsOpZSB1bmUgbm91dmVsbGUgYXJjaGl2ZSBkdSBzb3VyY2UgZCdvcmlnaW5lLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6MzAzCisjLCBuby13cmFwCittc2dpZCAiQjwtc3I+IgorbXNnc3RyICJCPC1zcj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MzA4Cittc2dpZCAiTGlrZSBCPC1zdT4gYnV0IHdpbGwgcmVtb3ZlIHRoYXQgZGlyZWN0b3J5IGFmdGVyIGl0IGhhcyBiZWVuIHVzZWQuIgorbXNnc3RyICJDb21tZSBCPC1zdT4gbWFpcyBzdXBwcmltZXJhIGNlIHLDqXBlcnRvaXJlIGFwcsOocyB1dGlsaXNhdGlvbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjMwOAorIywgbm8td3JhcAorbXNnaWQgIkI8LXNzPiIKK21zZ3N0ciAiQjwtc3M+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjMxNgorbXNnaWQgIiIKKyJTcGVjaWZpZXMgdGhhdCB0aGUgb3JpZ2luYWwgc291cmNlIGlzIGF2YWlsYWJsZSBib3RoIGFzIGEgZGlyZWN0b3J5IGFuZCBhcyBhICIKKyJ0YXJmaWxlLiBkcGtnLXNvdXJjZSB3aWxsIHVzZSB0aGUgZGlyZWN0b3J5IHRvIGNyZWF0ZSB0aGUgZGlmZiwgYnV0IHRoZSAiCisidGFyZmlsZSB0byBjcmVhdGUgdGhlIEI8LmRzYz4uICBUaGlzIG9wdGlvbiBtdXN0IGJlIHVzZWQgd2l0aCBjYXJlIC0gaWYgdGhlICIKKyJkaXJlY3RvcnkgYW5kIHRhcmZpbGUgZG8gbm90IG1hdGNoIGEgYmFkIHNvdXJjZSBhcmNoaXZlIHdpbGwgYmUgZ2VuZXJhdGVkLiIKK21zZ3N0ciAiIgorIkluZGlxdWUgcXVlIGxlIHNvdXJjZSBkJ29yaWdpbmUgZXN0IGRpc3BvbmlibGUgw6AgbGEgZm9pcyBjb21tZSB1biByw6lwZXJ0b2lyZSAiCisiZXQgY29tbWUgdW4gZmljaGllciDCq8KgdGFywqDCuy4gwqvCoGRwa2ctc291cmNlwqDCuyBzZSBzZXJ2aXJhIGR1IHLDqXBlcnRvaXJlIHBvdXIgIgorImNyw6llciBsZSDCq8KgZGlmZsKgwrssIG1haXMgZHUgZmljaGllciDCq8KgdGFywqDCuyBwb3VyIGNyw6llciBsZSBmaWNoaWVyIEI8LmRzYz4uICIKKyJBdXNzaSwgZmFpcmUgYXR0ZW50aW9uIGF2ZWMgY2V0dGUgb3B0aW9uLiBTaSBsZSByw6lwZXJ0b2lyZSBldCBsZSBmaWNoaWVyICIKKyLCq8KgdGFywqDCuyBuZSBjb3JyZXNwb25kZW50IHBhcywgdW5lIG1hdXZhaXNlIGFyY2hpdmUgc291cmNlIGVuIHLDqXN1bHRlLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6MzE2IGRwa2ctc291cmNlLjE6MzY4CisjLCBuby13cmFwCittc2dpZCAiQjwtc24+IgorbXNnc3RyICJCPC1zbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MzIyCittc2dpZCAiIgorIlNwZWNpZmllcyB0byBub3QgbG9vayBmb3IgYW55IG9yaWdpbmFsIHNvdXJjZSwgYW5kIHRvIG5vdCBnZW5lcmF0ZSBhIGRpZmYuICAiCisiVGhlIHNlY29uZCBhcmd1bWVudCwgaWYgc3VwcGxpZWQsIG11c3QgYmUgdGhlIGVtcHR5IHN0cmluZy4gVGhpcyBpcyB1c2VkIGZvciAiCisiRGViaWFuLXNwZWNpZmljIHBhY2thZ2VzIHdoaWNoIGRvIG5vdCBoYXZlIGEgc2VwYXJhdGUgdXBzdHJlYW0gc291cmNlIGFuZCAiCisidGhlcmVmb3JlIGhhdmUgbm8gZGViaWFuaXNhdGlvbiBkaWZmcy4iCittc2dzdHIgIiIKKyJJbmRpcXVlIGRlIG5lIHBhcyBjaGVyY2hlciBkZSBzb3VyY2UgZCdvcmlnaW5lIGV0IGRlIG5lIHBhcyBjcsOpZXIgZGUgIgorIsKrwqBkaWZmwqDCuy4gTGUgc2Vjb25kIGFyZ3VtZW50LCBzJ2lsIGV4aXN0ZSwgZG9pdCDDqnRyZSB1bmUgY2hhw65uZSB2aWRlLiBDZWxhICIKKyJzZXJ0IHBvdXIgbGVzIHBhcXVldHMgRGViaWFuIHB1cmUgc291Y2hlIHF1aSBuJ29udCBwYXMgdW5lIHNvdXJjZSBkJ29yaWdpbmUgIgorImRpc3RpbmN0ZSBldCBkb25jIHBhcyBkZSBmaWNoaWVyIMKrwqBkaWZmwqDCuyBkZSBkZWJpYW5pc2F0aW9uLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6MzIyCisjLCBuby13cmFwCittc2dpZCAiQjwtc2E+IG9yIEI8LXNBPiIKK21zZ3N0ciAiQjwtc2E+IG9yIEI8LXNBPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTozNDgKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRvIGxvb2sgZm9yIHRoZSBvcmlnaW5hbCBzb3VyY2UgYXJjaGl2ZSBhcyBhIHRhcmZpbGUgb3IgYXMgYSAiCisiZGlyZWN0b3J5IC0gdGhlIHNlY29uZCBhcmd1bWVudCwgaWYgYW55LCBtYXkgYmUgZWl0aGVyLCBvciB0aGUgZW1wdHkgc3RyaW5nICIKKyIodGhpcyBpcyBlcXVpdmFsZW50IHRvIHVzaW5nIEI8LXNuPikuICBJZiBhIHRhcmZpbGUgaXMgZm91bmQgaXQgd2lsbCB1bnBhY2sgIgorIml0IHRvIGNyZWF0ZSB0aGUgZGlmZiBhbmQgcmVtb3ZlIGl0IGFmdGVyd2FyZHMgKHRoaXMgaXMgZXF1aXZhbGVudCB0byBCPC0iCisic3A+KTsgaWYgYSBkaXJlY3RvcnkgaXMgZm91bmQgaXQgd2lsbCBwYWNrIGl0IHRvIGNyZWF0ZSB0aGUgb3JpZ2luYWwgc291cmNlICIKKyJhbmQgcmVtb3ZlIGl0IGFmdGVyd2FyZHMgKHRoaXMgaXMgZXF1aXZhbGVudCB0byBCPC1zcj4pOyBpZiBuZWl0aGVyIGlzIGZvdW5kICIKKyJpdCB3aWxsIGFzc3VtZSB0aGF0IHRoZSBwYWNrYWdlIGhhcyBubyBkZWJpYW5pc2F0aW9uIGRpZmZzLCBvbmx5IGEgIgorInN0cmFpZ2h0Zm9yd2FyZCBzb3VyY2UgYXJjaGl2ZSAodGhpcyBpcyBlcXVpdmFsZW50IHRvIEI8LXNuPikuICBJZiBib3RoIGFyZSAiCisiZm91bmQgdGhlbiBCPGRwa2ctc291cmNlPiB3aWxsIGlnbm9yZSB0aGUgZGlyZWN0b3J5LCBvdmVyd3JpdGluZyBpdCwgaWYgQjwtIgorInNBPiB3YXMgc3BlY2lmaWVkICh0aGlzIGlzIGVxdWl2YWxlbnQgdG8gQjwtc1A+KSAgb3IgcmFpc2UgYW4gZXJyb3IgaWYgQjwtIgorInNhPiB3YXMgc3BlY2lmaWVkLiAgQjwtc0E+IGlzIHRoZSBkZWZhdWx0LiIKK21zZ3N0ciAiIgorIkluZGlxdWUgY29tbWUgc291cmNlIGQnb3JpZ2luZSBzb2l0IHVuIGZpY2hpZXIgwqvCoHRhcsKgwrssIHNvaXQgdW4gcsOpcGVydG9pcmUgLSAiCisibGUgZGV1eGnDqG1lIGFyZ3VtZW50LCBzJ2lsIGV4aXN0ZSwgZG9pdCDDqnRyZSBsJ3VuIGQnZXV4IG91IGJpZW4gdW5lIGNoYcOubmUgIgorInZpZGUgKGNlbGEgcmV2aWVudCDDoCB1dGlsaXNlciBsJ29wdGlvbiBCPC1zbik+LiBRdWFuZCB1biBmaWNoaWVyIMKrwqB0YXLCoMK7ICIKKyJleGlzdGUsIGlsIGVzdCBkw6lwYXF1ZXTDqSBwb3VyIGNyw6llciBsZSBmaWNoaWVyIMKrwqBkaWZmwqDCu8KgOyBlbnN1aXRlIGlsIGVzdCAiCisic3VwcHJpbcOpIChjZWxhIHJldmllbnQgw6AgdXRpbGlzZXIgbCdvcHRpb24gQjwtc3ApPsKgOyBxdWFuZCB1biByw6lwZXJ0b2lyZSBlc3QgIgorInRyb3V2w6ksIGlsIGVzdCBkw6lwYXF1ZXTDqSBldCBCPGRwa2ctc291cmNlPiBjcsOpZSBsZSBzb3VyY2UgZCdvcmlnaW5lIGV0ICIKKyJzdXBwcmltZSBlbnN1aXRlIGNlIHLDqXBlcnRvaXJlIChjZWxhIHJldmllbnQgw6AgdXRpbGlzZXIgbCdvcHRpb24gQjwtc3IpPsKgOyAiCisicXVhbmQgbmkgbCd1biBuaSBsJ2F1dHJlIG4nZXN0IHRyb3V2w6ksIEI8ZHBrZy1zb3VyY2U+IHN1cHBvc2UgcXVlIGxlIHBhcXVldCAiCisibmUgcG9zc8OoZGUgcGFzIGRlIGZpY2hpZXIgwqvCoGRpZmbCoMK7IGRlIGRlYmlhbmlzYXRpb24sIG1haXMgc2V1bGVtZW50IHVuZSAiCisic2ltcGxlIGFyY2hpdmUgc291cmNlIChjZWxhIHJldmllbnQgw6AgdXRpbGlzZXIgbCdvcHRpb24gQjwtc24+KS4gUXVhbmQgbGVzICIKKyJkZXV4IHNvbnQgdHJvdXbDqXMsIEI8ZHBrZy1zb3VyY2U+IGlnbm9yZSBsZSByw6lwZXJ0b2lyZSBldCBsZSByZW1wbGFjZSBzaSAiCisibCdvcHRpb24gQjwtc0E+IGEgw6l0w6kgc3DDqWNpZmnDqWUgKGNlbGEgcmV2aWVudCDDoCB1dGlsaXNlciBsJ29wdGlvbiBCPC1zUCk+IG91ICIKKyJpbCBwcm92b3F1ZSB1bmUgZXJyZXVyIHNpIGwnb3B0aW9uIEI8LXNhPiBhIMOpdMOpIHNww6ljaWZpw6llLiBMJ29wdGlvbiBwYXIgIgorImTDqWZhdXQgZXN0IEI8LXNBPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjM0OCBkcGtnLXNvdXJjZS4xOjU0MQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1hYm9ydC1vbi11cHN0cmVhbS1jaGFuZ2VzPiIKK21zZ3N0ciAiQjwtLWFib3J0LW9uLXVwc3RyZWFtLWNoYW5nZXM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjM1NAorbXNnaWQgIiIKKyJUaGUgcHJvY2VzcyBmYWlscyBpZiB0aGUgZ2VuZXJhdGVkIGRpZmYgY29udGFpbnMgY2hhbmdlcyB0byBmaWxlcyBvdXRzaWRlIG9mICIKKyJ0aGUgZGViaWFuIHN1Yi1kaXJlY3RvcnkuIFRoaXMgb3B0aW9uIGlzIG5vdCBhbGxvd2VkIGluIEI8ZGViaWFuL3NvdXJjZS8iCisib3B0aW9ucz4gYnV0IGNhbiBiZSB1c2VkIGluIEI8ZGViaWFuL3NvdXJjZS9sb2NhbC1vcHRpb25zPi4iCittc2dzdHIgIiIKKyJDZSBwcm9jZXNzdXMgw6ljaG91ZSBzaSBsZSBmaWNoaWVyIGRlIGRpZmbDqXJlbmNlcyBjb250aWVudCBkZXMgbW9kaWZpY2F0aW9ucyAiCisiYXBwb3J0w6llcyDDoCBkZXMgZmljaGllcnMgZW4gZGVob3JzIGR1IHNvdXMtcsOpcGVydG9pcmUgZGViaWFuLiBDZXR0ZSBvcHRpb24gIgorIm4nZXN0IHBhcyBhdXRvcmlzw6llIGRhbnMgQjxkZWJpYW4vc291cmNlL29wdGlvbnM+IG1haXMgcGV1dCDDqnRyZSB1dGlsaXPDqWUgIgorImRhbnMgQjxkZWJpYW4vc291cmNlL2xvY2FsLW9wdGlvbnM+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6MzU1CisjLCBuby13cmFwCittc2dpZCAiQjxFeHRyYWN0IG9wdGlvbnMgKHdpdGggLXgpOj4iCittc2dzdHIgIkI8b3B0aW9ucyBkJ2V4dHJhY3Rpb25zIChhdmVjIC14KTo+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjM1OQorbXNnaWQgIkluIGFsbCBjYXNlcyBhbnkgZXhpc3Rpbmcgb3JpZ2luYWwgc291cmNlIHRyZWUgd2lsbCBiZSByZW1vdmVkLiIKK21zZ3N0ciAiIgorIkRhbnMgdG91cyBjZXMgY2FzLCBsJ2FyYm9yZXNjZW5jZSBleGlzdGFudGUgZGVzIHNvdXJjZXMgZCdvcmlnaW5lIGVzdCAiCisic3VwcHJpbcOpZS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MzY1Cittc2dpZCAiIgorIlVzZWQgd2hlbiBleHRyYWN0aW5nIHRoZW4gdGhlIG9yaWdpbmFsIHNvdXJjZSAoaWYgYW55KSB3aWxsIGJlIGxlZnQgYXMgYSAiCisidGFyZmlsZS4gSWYgaXQgaXMgbm90IGFscmVhZHkgbG9jYXRlZCBpbiB0aGUgY3VycmVudCBkaXJlY3Rvcnkgb3IgaWYgYW4gIgorImV4aXN0aW5nIGJ1dCBkaWZmZXJlbnQgZmlsZSBpcyB0aGVyZSBpdCB3aWxsIGJlIGNvcGllZCB0aGVyZS4gIChCPFRoaXMgaXMgIgorInRoZSBkZWZhdWx0PikuIgorbXNnc3RyICIiCisiUXVhbmQgb24gZXh0cmFpdCBsZSByw6lwZXJ0b2lyZSBzb3VyY2UgZCdvcmlnaW5lIChzJ2lsIGV4aXN0ZSksIGlsIGVzdCAiCisiY29uc2VydsOpIGVuIHRhbnQgcXVlIGZpY2hpZXIgwqvCoHRhcsKgwrsuIFMnaWwgbidlc3QgcGFzIGTDqWrDoCBkYW5zIGxlIHLDqXBlcnRvaXJlICIKKyJjb3VyYW50IG91IHNpIGNlIHLDqXBlcnRvaXJlIGNvbnRpZW50IHVuIGZpY2hpZXIgZGlmZsOpcmVudCwgbGUgZmljaGllciAiCisiwqvCoHRhcsKgwrsgZXN0IGNvcGnDqSBkYW5zIGNlIHLDqXBlcnRvaXJlLiAoQjxDZWNpIGVzdCBsZSBjb21wb3J0ZW1lbnQgcGFyICIKKyJkw6lmYXV0PikuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjM2OAorbXNnaWQgIlVucGFja3MgdGhlIG9yaWdpbmFsIHNvdXJjZSB0cmVlLiIKK21zZ3N0ciAiRMOpcGFxdWV0YWdlIGRlIGwnYXJib3Jlc2NlbmNlIGR1IHLDqXBlcnRvaXJlIHNvdXJjZSBkJ29yaWdpbmUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjM3MworbXNnaWQgIiIKKyJFbnN1cmVzIHRoYXQgdGhlIG9yaWdpbmFsIHNvdXJjZSBpcyBuZWl0aGVyIGNvcGllZCB0byB0aGUgY3VycmVudCBkaXJlY3RvcnkgIgorIm5vciB1bnBhY2tlZC4gQW55IG9yaWdpbmFsIHNvdXJjZSB0cmVlIHRoYXQgd2FzIGluIHRoZSBjdXJyZW50IGRpcmVjdG9yeSBpcyAiCisic3RpbGwgcmVtb3ZlZC4iCittc2dzdHIgIiIKKyJBc3N1cmUgcXVlIGxlIHLDqXBlcnRvaXJlIHNvdXJjZSBkJ29yaWdpbmUgbmUgc2VyYSBuaSBjb3Bpw6kgZGFucyBsZSAiCisicsOpcGVydG9pcmUgZW4gY291cnMsIG5pIGTDqXBhcXVldMOpLiBTaSB1bmUgYXJib3Jlc2NlbmNlIHNvdXJjZSBkJ29yaWdpbmUgZXN0ICIKKyJwcsOpc2VudGUgZGFucyBsZSByw6lwZXJ0b2lyZSBjb3VyYW50LCBlbGxlIGVzdCB0b3Vqb3VycyBzdXBwcmltw6llLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTozNzgKK21zZ2lkICIiCisiQWxsIHRoZSBCPC1zPkk8WD4gb3B0aW9ucyBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlLiBJZiB5b3Ugc3BlY2lmeSBtb3JlIHRoYW4gIgorIm9uZSBvbmx5IHRoZSBsYXN0IG9uZSB3aWxsIGJlIHVzZWQuIgorbXNnc3RyICIiCisiVG91dGVzIGxlcyBvcHRpb25zIEI8LXM+STxYPiBzJ2V4Y2x1ZW50IG11dHVlbGxlbWVudC4gU2kgdm91cyBlbiBpbmRpcXVleiAiCisicGx1c2lldXJzLCBzZXVsZSBsYSBkZXJuacOocmUgc2VyYSBwcmlzZSBlbiBjb21wdGUuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTozNzggZHBrZy1zb3VyY2UuMTo1NTUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tc2tpcC1kZWJpYW5pemF0aW9uPiIKK21zZ3N0ciAiQjwtLXNraXAtZGViaWFuaXphdGlvbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MzgxCittc2dpZCAiU2tpcHMgYXBwbGljYXRpb24gb2YgdGhlIGRlYmlhbiBkaWZmIG9uIHRvcCBvZiB0aGUgdXBzdHJlYW0gc291cmNlcy4iCittc2dzdHIgIiIKKyJQYXNzZSBsJ8OpdGFwZSBkJ2FwcGxpY2F0aW9uIGR1IGZpY2hpZXIgZGUgZGlmZsOpcmVuY2VzIERlYmlhbiBhdXggc291cmNlcyAiCisiYW1vbnQuIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTozODIKKyMsIG5vLXdyYXAKK21zZ2lkICJGb3JtYXQ6IDIuMCIKK21zZ3N0ciAiRm9ybWF0OiAyLjAiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6Mzg2Cittc2dpZCAiIgorIkFsc28ga25vd24gYXMgd2lnJnBlbi4gVGhpcyBmb3JtYXQgaXMgbm90IHJlY29tbWVuZGVkIGZvciB3aWRlLXNwcmVhZCB1c2FnZSwgIgorInRoZSBmb3JtYXQgXCIzLjAgKHF1aWx0KVwiIHJlcGxhY2VzIGl0LiBXaWcmcGVuIHdhcyB0aGUgZmlyc3Qgc3BlY2lmaWNhdGlvbiAiCisib2YgYSBuZXctZ2VuZXJhdGlvbiBzb3VyY2UgcGFja2FnZSBmb3JtYXQuIgorbXNnc3RyICIiCisiQXVzc2kgY29ubnUgc291cyBsZSBub20gZGUgwqvCoHdpZyZwZW7CoMK7LiBDZSBmb3JtYXQgbidlc3QgcGFzIHJlY29tbWFuZMOpIGFmaW4gIgorImQnYXNzdXJlciB1bmUgdXRpbGlzYXRpb24gbWFzc2l2ZSBkdSBmb3JtYXQgXCIzLjAgKHF1aWx0KVwiIHF1aSBsZSByZW1wbGFjZS4gIgorIldpZyZwZW4gYSDDqXTDqSBsYSBwcmVtacOocmUgc3DDqWNpZmljYXRpb24gZCd1bmUgbm91dmVsbGUgZ8OpbsOpcmF0aW9uIGRlIGZvcm1hdCAiCisiZGUgcGFxdWV0IHNvdXJjZS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MzkxCittc2dpZCAiIgorIlRoZSBiZWhhdmlvdXIgb2YgdGhpcyBmb3JtYXQgaXMgdGhlIHNhbWUgYXMgdGhlIFwiMy4wIChxdWlsdClcIiBmb3JtYXQgIgorImV4Y2VwdCB0aGF0IGl0IGRvZXNuJ3QgdXNlIGFuIGV4cGxpY2l0IGxpc3Qgb2YgcGF0Y2hlcy4gQWxsIGZpbGVzIGluICIKKyJCPGRlYmlhbi9wYXRjaGVzLz4gbWF0Y2hpbmcgdGhlIHBlcmwgcmVndWxhciBleHByZXNzaW9uIEI8W1xcZXctXSs+IG11c3QgYmUgIgorInZhbGlkIHBhdGNoZXM6IHRoZXkgYXJlIGFwcGxpZWQgYXQgZXh0cmFjdGlvbiB0aW1lLiIKK21zZ3N0ciAiIgorIkxlIGNvbXBvcnRlbWVudCBkZSBjZSBmb3JtYXQgZXN0IGxlIG3Dqm1lIHF1ZSBwb3VyIGxlIGZvcm1hdCBcIjMuMCAocXVpbHQpXCIgIgorInNhdWYgcXUnaWwgbid1dGlsaXNlIHBhcyBkZSBsaXN0ZSBleHBsaWNpdGUgZGUgY29ycmVjdGlmcy4gVG91cyBsZXMgZmljaGllcnMgIgorImRhbnMgQjxkZWJpYW4vcGF0Y2hlcy8+IGNvcnJlc3BvbmRhbnQgw6AgbCdleHByZXNzaW9uIHJhdGlvbm5lbGxlIFBlcmwgQjwiCisiW1xcZXctXSs+IGRvaXZlbnQgw6p0cmUgZGVzIGNvcnJlY3RpZnMgdmFsaWRlc8KgOiBpbHMgc29udCBhcHBsaXF1w6lzIGF1IG1vbWVudCAiCisiZGUgbCdleHRyYWN0aW9uLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTozOTQKK21zZ2lkICIiCisiV2hlbiBidWlsZGluZyBhIG5ldyBzb3VyY2UgcGFja2FnZSwgYW55IGNoYW5nZSB0byB0aGUgdXBzdHJlYW0gc291cmNlIGlzICIKKyJzdG9yZWQgaW4gYSBwYXRjaCBuYW1lZCBCPHp6X2RlYmlhbi1kaWZmLWF1dG8+LiIKK21zZ3N0ciAiIgorIkxvcnMgZGUgbGEgY29uc3RydWN0aW9uIGQndW4gbm91dmVhdSBwYXF1ZXQgc291cmNlLCB0b3V0ZSBtb2RpZmljYXRpb24gIgorImFwcG9ydMOpZSDDoCBsYSBzb3VyY2UgYW1vbnQgZXN0IGVucmVnaXN0csOpIGRhbnMgdW4gY29ycmVjdGlmIG5vbW3DqSAiCisiQjx6el9kZWJpYW4tZGlmZi1hdXRvPi4iCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjM5NQorIywgbm8td3JhcAorbXNnaWQgIkZvcm1hdDogMy4wIChuYXRpdmUpIgorbXNnc3RyICJGb3JtYXQ6IDMuMCAobmF0aXZlKSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo0MDEKK21zZ2lkICIiCisiVGhpcyBmb3JtYXQgaXMgYW4gZXh0ZW5zaW9uIG9mIHRoZSBuYXRpdmUgcGFja2FnZSBmb3JtYXQgYXMgZGVmaW5lZCBpbiB0aGUgIgorIjEuMCBmb3JtYXQuIEl0IHN1cHBvcnRzIGFsbCBjb21wcmVzc2lvbiBtZXRob2RzIGFuZCB3aWxsIGlnbm9yZSBieSBkZWZhdWx0ICIKKyJhbnkgVkNTIHNwZWNpZmljIGZpbGVzIGFuZCBkaXJlY3RvcmllcyBhcyB3ZWxsIGFzIG1hbnkgdGVtcG9yYXJ5IGZpbGVzIChzZWUgIgorImRlZmF1bHQgdmFsdWUgYXNzb2NpYXRlZCB0byBCPC1JPiBvcHRpb24gaW4gdGhlIEI8LS1oZWxwPiBvdXRwdXQpLiIKK21zZ3N0ciAiIgorIkNlIGZvcm1hdCBlc3QgdW5lIGV4dGVuc2lvbiBkdSBmb3JtYXQgZGUgcGFxdWV0IG5hdGlmIHRlbCBxdWUgZMOpZmluaSBkYW5zIGxlICIKKyJmb3JtYXQgMS4wLiBJbCBnw6hyZSB0b3V0ZXMgbGVzIG3DqXRob2RlcyBkZSBjb21wcmVzc2lvbiBldCBpZ25vcmUgcGFyIGTDqWZhdXQgIgorInRvdXQgZmljaGllciBldCByw6lwZXJ0b2lyZSBWQ1MgYWluc2kgcXVlIGRlIG5vbWJyZXV4IGZpY2hpZXJzIHRlbXBvcmFpcmVzICIKKyIodm9pciBsYSB2YWxldXIgcGFyIGTDqWZhdXQgYXNzb2Npw6kgw6AgbCdvcHRpb24gQjwtST4gZGFucyBsYSBzb3J0aWUgZGUgQjwtLSIKKyJoZWxwPikuIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo0MDIKKyMsIG5vLXdyYXAKK21zZ2lkICJGb3JtYXQ6IDMuMCAocXVpbHQpIgorbXNnc3RyICJGb3JtYXQ6IDMuMCAocXVpbHQpIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjQwOQorbXNnaWQgIiIKKyJBIHNvdXJjZSBwYWNrYWdlIGluIHRoaXMgZm9ybWF0IGNvbnRhaW5zIGF0IGxlYXN0IGFuIG9yaWdpbmFsIHRhcmJhbGwgKEI8LiIKKyJvcmlnLnRhci4+STxleHQ+IHdoZXJlIEk8ZXh0PiBjYW4gYmUgQjxnej4sIEI8YnoyPiwgQjxsem1hPiBhbmQgQjx4ej4pIGFuZCBhICIKKyJkZWJpYW4gdGFyYmFsbCAoQjwuZGViaWFuLnRhci4+STxleHQ+KS4gSXQgY2FuIGFsc28gY29udGFpbiBhZGRpdGlvbmFsICIKKyJvcmlnaW5hbCB0YXJiYWxscyAoQjwub3JpZy0+STxjb21wb25lbnQ+QjwudGFyLj5JPGV4dD4pLiAgSTxjb21wb25lbnQ+IGNhbiAiCisib25seSBjb250YWluIGFscGhhbnVtZXJpYyBjaGFyYWN0ZXJzIGFuZCBkYXNoZXMgKFwiLVwiKS4iCittc2dzdHIgIiIKKyJVbiBwYXF1ZXQgc291cmNlIGRhbnMgY2UgZm9ybWF0IGNvbnRpZW50IGF1IG1vaW5zIHVuZSBhcmNoaXZlIHRhciBkJ29yaWdpbmUgIgorIihCPC5vcmlnLnRhci4+STxleHQ+IG/DuSBJPGV4dD4gcGV1dCDDqnRyZSBCPGd6PiwgQjxiejI+IEI8bHptYT4gZXQgQjx4ej4pIGV0ICIKKyJ1bmUgYXJjaGl2ZSB0YXIgZGViaWFuIChCPC5kZWJpYW4udGFyLj5JPGV4dD4pLiBJbCBwZXV0IMOpZ2FsZW1lbnQgY29udGVuaXIgIgorImQnYXV0cmVzIGFyY2hpdmVzIHRhciBkJ29yaWdpbmUgKEI8Lm9yaWctPkk8Y29tcG9zYW50PkI8LnRhci4+STxleHQ+KS4gIgorIkk8Y29tcG9zYW50PiBuZSBwZXV0IMOqdHJlIGNvbnN0aXR1w6kgcXVlIGRlIGNhcmFjdMOocmVzIGFscGhhbnVtw6lyaXF1ZXMgZXQgZGUgIgorInRpcmV0cyAowqvCoC3CoMK7KS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NDIwCittc2dpZCAiIgorIlRoZSBtYWluIG9yaWdpbmFsIHRhcmJhbGwgaXMgZXh0cmFjdGVkIGZpcnN0LCB0aGVuIGFsbCBhZGRpdGlvbmFsIG9yaWdpbmFsICIKKyJ0YXJiYWxscyBhcmUgZXh0cmFjdGVkIGluIHN1YmRpcmVjdG9yaWVzIG5hbWVkIGFmdGVyIHRoZSBJPGNvbXBvbmVudD4gcGFydCAiCisib2YgdGhlaXIgZmlsZW5hbWUgKGFueSBwcmUtZXhpc3RpbmcgZGlyZWN0b3J5IGlzIHJlcGxhY2VkKS4gVGhlIGRlYmlhbiAiCisidGFyYmFsbCBpcyBleHRyYWN0ZWQgb24gdG9wIG9mIHRoZSBzb3VyY2UgZGlyZWN0b3J5IGFmdGVyIHByaW9yIHJlbW92YWwgb2YgIgorImFueSBwcmUtZXhpc3RpbmcgQjxkZWJpYW4+IGRpcmVjdG9yeS4gTm90ZSB0aGF0IHRoZSBkZWJpYW4gdGFyYmFsbCBtdXN0ICIKKyJjb250YWluIGEgQjxkZWJpYW4+IHN1Yi1kaXJlY3RvcnkgYnV0IGl0IGNhbiBhbHNvIGNvbnRhaW4gYmluYXJ5IGZpbGVzICIKKyJvdXRzaWRlIG9mIHRoYXQgZGlyZWN0b3J5IChzZWUgQjwtLWluY2x1ZGUtYmluYXJpZXM+IG9wdGlvbikuIgorbXNnc3RyICIiCisiTCdhcmNoaXZlIHByaW5jaXBhbGUgdGFyIGQnb3JpZ2luZSBlc3QgZXh0cmFpdGUgdG91dCBkJ2Fib3JkLCBwdWlzIHRvdXRlcyAiCisibGVzIGF1dHJlcyBhcmNoaXZlcyB0YXIgZCdvcmlnaW5lIHNvbnQgZXh0cmFpdGVzIGRhbnMgZGVzIHNvdXMtcsOpcGVydG9pcmVzICIKKyJkb250IGxlIG5vbSBlc3QgZm9ybcOpIMOgIHBhcnRpciBkZSBsYSBwYXJ0aWUgSTxjb21wb3NhbnQ+IGRlIGxldXIgbm9tLiAiCisiTCdhcmNoaXZlIHRhciBEZWJpYW4gZXN0IGV4dHJhaXRlIHBhciBkZXNzdXMgbGUgcsOpcGVydG9pcmUgc291cmNlLCBhcHLDqHMgbGEgIgorInN1cHByZXNzaW9uIGRlIHRvdXQgcsOpcGVydG9pcmUgQjxkZWJpYW4+IGV4aXN0YW50LiBOb3RleiBxdWUgbCdhcmNoaXZlIHRhciAiCisiRGViaWFuIGRvaXQgY29udGVuaXIgdW4gc291cy1yw6lwZXJ0b2lyZSBCPGRlYmlhbj4sIG1haXMgaWwgcGV1dCDDqWdhbGVtZW50ICIKKyJjb250ZW5pciBkZXMgZmljaGllcnMgYmluYWlyZXMgZW4gZGVob3JzIGRlIGNlIHLDqXBlcnRvaXJlICh2b2lyIGwnb3B0aW9uIEI8LS0iCisiaW5jbHVkZS1iaW5hcmllcz4pLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo0MzIKK21zZ2lkICIiCisiQWxsIHBhdGNoZXMgbGlzdGVkIGluIEI8ZGViaWFuL3BhdGNoZXMvZGViaWFuLnNlcmllcz4gb3IgQjxkZWJpYW4vcGF0Y2hlcy8iCisic2VyaWVzPiBhcmUgdGhlbiBhcHBsaWVkLiAgSWYgdGhlIGZvcm1lciBmaWxlIGlzIHVzZWQgYW5kIHRoZSBsYXR0ZXIgb25lICIKKyJkb2Vzbid0IGV4aXN0IChvciBpcyBhIHN5bWxpbmspLCB0aGVuIHRoZSBsYXR0ZXIgaXMgcmVwbGFjZWQgd2l0aCBhIHN5bWxpbmsgIgorInRvIHRoZSBmb3JtZXIuIFRoaXMgaXMgbWVhbnQgdG8gc2ltcGxpZnkgdXNhZ2Ugb2YgcXVpbHQgdG8gbWFuYWdlIHRoZSBzZXQgb2YgIgorInBhdGNoZXMuIE5vdGUgaG93ZXZlciB0aGF0IHdoaWxlIEI8ZHBrZy1zb3VyY2U+IHBhcnNlcyBjb3JyZWN0bHkgc2VyaWVzICIKKyJmaWxlcyB3aXRoIGV4cGxpY2l0IG9wdGlvbnMgdXNlZCBmb3IgcGF0Y2ggYXBwbGljYXRpb24gKHN0b3JlZCBvbiBlYWNoIGxpbmUgIgorImFmdGVyIHRoZSBwYXRjaCBmaWxlbmFtZSBhbmQgb25lIG9yIG1vcmUgc3BhY2VzKSwgaXQgZG9lcyBpZ25vcmUgdGhvc2UgIgorIm9wdGlvbnMgYW5kIGFsd2F5cyBleHBlY3QgcGF0Y2hlcyB0aGF0IGNhbiBiZSBhcHBsaWVkIHdpdGggdGhlIEI8LXAxPiBvcHRpb24gIgorIm9mIEI8cGF0Y2g+LiBJdCB3aWxsIHRodXMgZW1pdCBhIHdhcm5pbmcgd2hlbiBpdCBlbmNvdW50ZXJzIHN1Y2ggb3B0aW9ucywgIgorImFuZCB0aGUgYnVpbGQgaXMgbGlrZWx5IHRvIGZhaWwuIgorbXNnc3RyICIiCisiVG91dGVzIGxlcyBtb2RpZmljYXRpb25zIGZpZ3VyYW50IGRhbnMgQjxkZWJpYW4vcGF0Y2hlcy9kZWJpYW4uc2VyaWVzPiBvdSAiCisiQjxkZWJpYW4vcGF0Y2hlcy9zZXJpZXM+IHNvbnQgYWxvcnMgYXBwbGlxdcOpZXMuIFNpIGwnYW5jaWVuIGZpY2hpZXIgZXN0ICIKKyJ1dGlsaXPDqSBldCBxdSdpbCBuJ3kgYSBwYXMgZGUgcGx1cyByw6ljZW50IChvdSBxdWUgYydlc3QgdW4gbGllbiBzeW1ib2xpcXVlKSwgIgorImFsb3JzIGNlbHVpLWNpIGVzdCByZW1wbGFjw6kgcGFyIHVuIGxpZW4gc3ltYm9saXF1ZSB2ZXJzIGwnYW5jaWVuLiBDZXR0ZSAiCisiZGlzcG9zaXRpb24gdmlzZSDDoCBzaW1wbGlmaWVyIGwndXRpbGlzYXRpb24gZGUgwqvCoHF1aWx0wqDCuyBwb3VyIGfDqXJlciAiCisibCdlbnNlbWJsZSBkZXMgcGF0Y2hlcy4gTm90ZXogdG91dGVmb2lzIHF1ZSBzaSBCPGRwa2ctc291cmNlPiBhbmFseXNlICIKKyJjb3JyZWN0ZW1lbnQgdW5lIHPDqXJpZSBkZSBmaWNoaWVycyBhdmVjIGxlcyBvcHRpb25zIHV0aWxpc8OpZXMgcG91ciAiCisibCdhcHBsaWNhdGlvbiBkdSBjb3JyZWN0aWYgKHN0b2Nrw6llcyBzdXIgY2hhcXVlIGxpZ25lIGFwcsOocyBsZSBub20gZHUgcGF0Y2ggIgorImV0IGQndW4gb3UgcGx1c2lldXJzIGVzcGFjZXMpLCBpbCBuJ2lnbm9yZSBwYXMgY2Vzb3B0aW9ucyBldCBzJ2F0dGVuZHJhICIKKyJ0b3Vqb3VycyBxdWUgbGVzIGNvcnJlY3RpZnMgcHVpc3NlbnQgw6p0cmUgYXBwbGlxdcOpcyBhdmVjIGwnb3B0aW9uIEI8LXAxPiBkZSAiCisiQjxwYXRjaD4uIElsIHZhIGRvbmMgw6ltZXR0cmUgdW4gYXZlcnRpc3NlbWVudCBsb3JzcXUnaWwgcmVuY29udHJlIGNlcyAiCisib3B0aW9ucywgZXQgbGEgY29uc3RydWN0aW9uIGVzdCBzdXNjZXB0aWJsZSBkJ8OpY2hvdWVyLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo0MzQKK21zZ2lkICIiCisiU2ltaWxhcmx5IHRvIHF1aWx0J3MgZGVmYXVsdCBiZWhhdmlvdXIsIHRoZSBwYXRjaGVzIGNhbiByZW1vdmUgZmlsZXMgdG9vLiIKK21zZ3N0ciAiIgorIlNpbWlsYWlyZSBhdSBjb21wb3J0ZW1lbnQgcGFyIGTDqWZhdXQgZGUgwqvCoHF1aWx0wqDCuywgbGVzIG1vZGlmaWNhdGlvbnMgcGV1dmVudCAiCisiYXVzc2kgc3VwcHJpbWVyIGRlcyBmaWNoaWVycy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NDM3Cittc2dpZCAiIgorIlRoZSBmaWxlIEI8LnBjL2FwcGxpZWQtcGF0Y2hlcz4gaXMgY3JlYXRlZCBpZiBzb21lIHBhdGNoZXMgaGF2ZSBiZWVuIGFwcGxpZWQgIgorImR1cmluZyB0aGUgZXh0cmFjdGlvbi4iCittc2dzdHIgIiIKKyJMZSBmaWNoaWVyIEI8LnBjL2FwcGxpZWQtcGF0Y2hlcz4gZXN0IGNyw6nDqSBzaSBjZXJ0YWlucyBjb3JyZWN0aWZzIG9udCDDqXTDqSAiCisiYXBwbGlxdcOpcyBhdSBjb3VycyBkZSBsJ2V4dHJhY3Rpb24uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjQ1MQorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiQWxsIG9yaWdpbmFsIHRhcmJhbGxzIGZvdW5kIGluIHRoZSBjdXJyZW50IGRpcmVjdG9yeSBhcmUgZXh0cmFjdGVkIGluIGEgIgorI3wgInRlbXBvcmFyeSBkaXJlY3RvcnkgYnkgZm9sbG93aW5nIHRoZSBzYW1lIGxvZ2ljIGFzIGZvciB0aGUgdW5wYWNrLCB0aGUgIgorI3wgImRlYmlhbiBkaXJlY3RvcnkgaXMgY29waWVkIG92ZXIgaW4gdGhlIHRlbXBvcmFyeSBkaXJlY3RvcnksIGFuZCBhbGwgIgorI3wgInBhdGNoZXMgZXhjZXB0IHRoZSBhdXRvbWF0aWMgcGF0Y2ggKEI8ZGViaWFuLWNoYW5nZXMtPkk8dmVyc2lvbj4gb3IgIgorI3wgIkI8ZGViaWFuLWNoYW5nZXM+LCBkZXBlbmRpbmcgb24gQjwtLXNpbmdsZS1kZWJpYW4tcGF0Y2g+KSBhcmUgYXBwbGllZC4gIgorI3wgIlRoZSB0ZW1wb3JhcnkgZGlyZWN0b3J5IGlzIGNvbXBhcmVkIHRvIHRoZSBzb3VyY2UgcGFja2FnZSBkaXJlY3RvcnkgYW5kICIKKyN8ICJ0aGUgZGlmZiAoaWYgbm9uLWVtcHR5KSBpcyBzdG9yZWQgaW4gdGhlIGF1dG9tYXRpYyBwYXRjaC4gIElmIHRoZSAiCisjfCAiYXV0b21hdGljIHBhdGNoIGlzIGNyZWF0ZWQvZGVsZXRlZCwgaXQncyBhZGRlZC9yZW1vdmVkIGZyb20gdGhlIHNlcmllcyAiCisjfCAiZmlsZSBhbmQgZnJvbSB0aGUgcXVpbHQgbWV0YWRhdGEuIgorbXNnaWQgIiIKKyJBbGwgb3JpZ2luYWwgdGFyYmFsbHMgZm91bmQgaW4gdGhlIGN1cnJlbnQgZGlyZWN0b3J5IGFyZSBleHRyYWN0ZWQgaW4gYSAiCisidGVtcG9yYXJ5IGRpcmVjdG9yeSBieSBmb2xsb3dpbmcgdGhlIHNhbWUgbG9naWMgYXMgZm9yIHRoZSB1bnBhY2ssIHRoZSAiCisiZGViaWFuIGRpcmVjdG9yeSBpcyBjb3BpZWQgb3ZlciBpbiB0aGUgdGVtcG9yYXJ5IGRpcmVjdG9yeSwgYW5kIGFsbCBwYXRjaGVzICIKKyJleGNlcHQgdGhlIGF1dG9tYXRpYyBwYXRjaCAoQjxkZWJpYW4tY2hhbmdlcy0+STx2ZXJzaW9uPiBvciBCPGRlYmlhbi0iCisiY2hhbmdlcz4sIGRlcGVuZGluZyBvbiBCPC0tc2luZ2xlLWRlYmlhbi1wYXRjaD4pIGFyZSBhcHBsaWVkLiBUaGUgdGVtcG9yYXJ5ICIKKyJkaXJlY3RvcnkgaXMgY29tcGFyZWQgdG8gdGhlIHNvdXJjZSBwYWNrYWdlIGRpcmVjdG9yeS4gV2hlbiB0aGUgZGlmZiBpcyBub24tIgorImVtcHR5LCB0aGUgYnVpbGQgZmFpbHMgdW5sZXNzIEI8LS1zaW5nbGUtZGViaWFuLXBhdGNoPiBvciBCPC0tYXV0by1jb21taXQ+ICIKKyJoYXMgYmVlbiB1c2VkLCBpbiB3aGljaCBjYXNlIHRoZSBkaWZmIGlzIHN0b3JlZCBpbiB0aGUgYXV0b21hdGljIHBhdGNoLiAgSWYgIgorInRoZSBhdXRvbWF0aWMgcGF0Y2ggaXMgY3JlYXRlZC9kZWxldGVkLCBpdCdzIGFkZGVkL3JlbW92ZWQgZnJvbSB0aGUgc2VyaWVzICIKKyJmaWxlIGFuZCBmcm9tIHRoZSBxdWlsdCBtZXRhZGF0YS4iCittc2dzdHIgIiIKKyJMZXMgb3JpZ2luYXV4IGRlIHRvdXRlcyBsZXMgYXJjaGl2ZXMgdGFyIHRyb3V2w6llcyBkYW5zIGxlIHLDqXBlcnRvaXJlIGNvdXJhbnQgIgorInNvbnQgZXh0cmFpdHMgZGFucyB1biByw6lwZXJ0b2lyZSB0ZW1wb3JhaXJlIGVuIHN1aXZhbnQgbGEgbcOqbWUgbG9naXF1ZSBxdWUgIgorInBvdXIgbGUgZMOpcGFxdWV0YWdlLCBsZSByw6lwZXJ0b2lyZSBkZWJpYW4gZXN0IGNvcGnDqSBkYW5zIGxlIHLDqXBlcnRvaXJlICIKKyJ0ZW1wb3JhaXJlLCBldCB0b3V0ZXMgbGVzIG1pc2VzIMOgIGpvdXIgc2F1ZiBCPGRlYmlhbi1jaGFuZ2VzLT5JPHZlcnNpb24+ICIKKyJzb250IGFwcGxpcXXDqWVzLiBMZSByw6lwZXJ0b2lyZSB0ZW1wb3JhaXJlIGVzdCBjb21wYXLDqSDDoCBjZWx1aSBkdSBwYXF1ZXQgIgorInNvdXJjZSBldCBsZSBmaWNoaWVyIGRlIGRpZmbDqXJlbmNlcyAocydpbCBlc3Qgbm9uIHZpZGUpIGVzdCBzdG9ja8OpIGRhbnMgbGUgIgorImNvcnJlY3RpZiBhdXRvbWF0aXF1ZS4gU2kgbGUgY29ycmVjdGlmIGF1dG9tYXRpcXVlIGVzdCBjcsOpw6kgb3Ugc3VwcHJpbcOpLCBpbCAiCisiZXN0IGFqb3V0w6kgb3Ugc3VwcHJpbcOpIGRhbnMgbGUgZmljaGllciBzZXJpZXMgZXQgbGVzIG3DqXRhLWRvbm7DqWVzIGRlIHF1aWx0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo0NTkKK21zZ2lkICIiCisiQW55IGNoYW5nZSBvbiBhIGJpbmFyeSBmaWxlIGlzIG5vdCByZXByZXNlbnRhYmxlIGluIGEgZGlmZiBhbmQgd2lsbCB0aHVzICIKKyJsZWFkIHRvIGEgZmFpbHVyZSB1bmxlc3MgdGhlIG1haW50YWluZXIgZGVsaWJlcmF0ZWx5IGRlY2lkZWQgdG8gaW5jbHVkZSB0aGF0ICIKKyJtb2RpZmllZCBiaW5hcnkgZmlsZSBpbiB0aGUgZGViaWFuIHRhcmJhbGwgKGJ5IGxpc3RpbmcgaXQgaW4gQjxkZWJpYW4vc291cmNlLyIKKyJpbmNsdWRlLWJpbmFyaWVzPikuIFRoZSBidWlsZCB3aWxsIGFsc28gZmFpbCBpZiBpdCBmaW5kcyBiaW5hcnkgZmlsZXMgaW4gdGhlICIKKyJkZWJpYW4gc3ViLWRpcmVjdG9yeSB1bmxlc3MgdGhleSBoYXZlIGJlZW4gd2hpdGVsaXN0ZWQgdGhyb3VnaCBCPGRlYmlhbi8iCisic291cmNlL2luY2x1ZGUtYmluYXJpZXM+LiIKK21zZ3N0ciAiIgorIlRvdXQgY2hhbmdlbWVudCBkYW5zIHVuIGZpY2hpZXIgYmluYWlyZSBuZSBwZXV0IMOqdHJlIGluZGlxdcOpIGRhbnMgbGUgZGlmZiBldCAiCisidmEgZMOpYm91Y2hlciBzdXIgdW4gw6ljaGVjIMOgIG1vaW5zIHF1ZSBsZSBtYWludGVuZXVyIGTDqWNpZGUgZMOpbGliw6lyw6ltZW50ICIKKyJkJ2luY2x1cmUgY2V0dGUgbW9kaWZpY2F0aW9uIGJpbmFpcmUgZGFucyBsJ2FyY2hpdmUgdGFyIERlYmlhbiAoZW4gbGUgIgorImxpc3RhbnQgZGFucyBCPGRlYmlhbi9zb3VyY2UvaW5jbHVkZS1iaW5hcmllcz4pLiBMYSBjb25zdHJ1Y3Rpb24gcG91cnJhICIKKyLDqWdhbGVtZW50IMOpY2hvdWVyIHNpIGRlcyBmaWNoaWVycyBiaW5haXJlcyBzb250IHRyb3V2w6lzIGRhbnMgbGUgc291cy0iCisicsOpcGVydG9pcmUgZGViaWFuIHNhbnMgw6p0cmUgaW5kaXF1w6kgZGFucyBsYSBsaXN0ZSBibGFuY2hlIGRlIEI8ZGViaWFuL3NvdXJjZS8iCisiaW5jbHVkZS1iaW5hcmllcz4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjQ2MgorbXNnaWQgIiIKKyJUaGUgdXBkYXRlZCBkZWJpYW4gZGlyZWN0b3J5IGFuZCB0aGUgbGlzdCBvZiBtb2RpZmllZCBiaW5hcmllcyBpcyB0aGVuIHVzZWQgIgorInRvIGdlbmVyYXRlIHRoZSBkZWJpYW4gdGFyYmFsbC4iCittc2dzdHIgIiIKKyJMZSByw6lwZXJ0b2lyZSBkZWJpYW4gbWlzIMOgIGpvdXIgZXQgbGEgbGlzdGUgZGVzIGJpbmFpcmVzIG1vZGlmacOpcyBzb250ICIKKyJlbnN1aXRlIHV0aWxpc8OpcyBwb3VyIHJlY3LDqWVyIGwnYXJjaGl2ZSB0YXIgZGViaWFuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo0NjgKK21zZ2lkICIiCisiVGhlIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGRpZmYgZG9lc24ndCBpbmNsdWRlIGNoYW5nZXMgb24gVkNTIHNwZWNpZmljICIKKyJmaWxlcyBhcyB3ZWxsIGFzIG1hbnkgdGVtcG9yYXJ5IGZpbGVzIChzZWUgZGVmYXVsdCB2YWx1ZSBhc3NvY2lhdGVkIHRvIEI8LWk+ICIKKyJvcHRpb24gaW4gdGhlIEI8LS1oZWxwPiBvdXRwdXQpLiBJbiBwYXJ0aWN1bGFyLCB0aGUgQjwucGM+IGRpcmVjdG9yeSB1c2VkIGJ5ICIKKyJxdWlsdCBpcyBpZ25vcmVkIGR1cmluZyBnZW5lcmF0aW9uIG9mIHRoZSBhdXRvbWF0aWMgcGF0Y2guIgorbXNnc3RyICIiCisiTGUgZGlmZiBnw6luw6lyw6kgYXV0b21hdGlxdWVtZW50IG4naW5jbHV0IHBhcyBsZXMgY2hhbmdlbWVudHMgc3DDqWNpZmlxdWVzIHN1ciAiCisibGVzIGZpY2hpZXJzIFZDUyBhaW5zaSBzdXIgcXVlIGRlIG5vbWJyZXV4IGZpY2hpZXJzIHRlbXBvcmFpcmVzIChwb3VyIGxhICIKKyJ2YWxldXIgcGFyIGTDqWZhdXQgYXNzb2Npw6llIMOgIGwnb3B0aW9uIEI8LWk+LCB2b2lyIGxhIHNvcnRpZSBkZSBCPC0taGVscD4pLiAiCisiRW4gcGFydGljdWxpZXIsIGxlIHLDqXBlcnRvaXJlIEI8LnBjPiB1dGlsaXPDqSBwYXIgwqvCoHF1aWx0wqDCuyBlc3QgaWdub3LDqSBsb3JzICIKKyJkZSBsYSBnw6luw6lyYXRpb24gYXV0b21hdGlxdWUgZHUgcGF0Y2guIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjQ3NworIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiTm90ZTogQjxkcGtnLXNvdXJjZT4gZXhwZWN0cyB0aGUgc291cmNlIHRyZWUgdG8gaGF2ZSBhbGwgcGF0Y2hlcyBsaXN0ZWQgIgorI3wgImluIHRoZSBzZXJpZXMgZmlsZSBhcHBsaWVkIHdoZW4geW91IGdlbmVyYXRlIHRoZSBzb3VyY2UgcGFja2FnZS4gIFRoaXMgaXMgIgorI3wgIm5vdCB0aGUgY2FzZSB3aGVuIHRoZSBzb3VyY2UgdHJlZSBoYXMgYmVlbiBvYnRhaW5lZCBieSB1bnBhY2tpbmcgYSBzb3VyY2UgIgorI3wgInBhY2thZ2UgdXNpbmcgdGhlIEZvcm1hdDogMS4wIGZvciBpbnN0YW5jZS4gVG8gbWl0aWdhdGUgdGhlIHByb2JsZW0sICIKKyN8ICJCPGRwa2ctc291cmNlPiB3aWxsIGFwcGx5IHRoZSBwYXRjaGVzIGJ5IGl0c2VsZiBpZiBpdCBiZWxpZXZlcyB0aGF0IHRoZXkgIgorI3wgImhhdmUgbm90IHlldCBiZWVuIGFwcGxpZWQuIFRvIGRldGVjdCB0aGlzIHNpdHVhdGlvbiwgaXQgdXNlcyB0aGUgIgorI3wgImZvbGxvd2luZyBoZXVyaXN0aWM6IGl0IGZpbmRzIHRoZSBsaXN0IG9mIHN1cHBvc2VkbHkgdW5hcHBsaWVkIHBhdGNoZXMgIgorI3wgIih0aGV5IGFyZSBsaXN0ZWQgaW4gdGhlIEI8c2VyaWVzPiBmaWxlIGJ1dCBub3QgaW4gQjwucGMvYXBwbGllZC0iCisjfCAicGF0Y2hlcz4pLCBhbmQgaWYgdGhlIGZpcnN0IHBhdGNoIGluIHRoYXQgc2V0IGNhbiBiZSBhcHBsaWVkIHdpdGhvdXQgIgorI3wgImVycm9ycywgaXQgd2lsbCBhcHBseSB0aGVtIGFsbC4gIFRoZSBvcHRpb24gQjwtLW5vLXByZXBhcmF0aW9uPiBjYW4gYmUgIgorI3wgInVzZWQgdG8gZGlzYWJsZSB0aGlzIGJlaGF2aW91ci4gVGhpcyBvcGVyYXRpb24gaXMgdXN1YWxseSBkb25lIGFzIHBhcnQgb2YgIgorI3wgInRoZSBCPC0tcHJlcGFyZS1idWlsZD4gY29tbWFuZC4iCittc2dpZCAiIgorIk5vdGU6IEI8ZHBrZy1zb3VyY2U+IEI8LS1iZWZvcmUtYnVpbGQ+IChhbmQgQjwtYj4pIHdpbGwgZW5zdXJlIHRoYXQgYWxsICIKKyJwYXRjaGVzIGxpc3RlZCBpbiB0aGUgc2VyaWVzIGZpbGUgYXJlIGFwcGxpZWQgc28gdGhhdCBhIHBhY2thZ2UgYnVpbGQgYWx3YXlzICIKKyJoYXMgYWxsIHBhdGNoZXMgYXBwbGllZC4gSXQgZG9lcyB0aGlzIGJ5IGZpbmRpbmcgdW5hcHBsaWVkIHBhdGNoZXMgKHRoZXkgYXJlICIKKyJsaXN0ZWQgaW4gdGhlIEI8c2VyaWVzPiBmaWxlIGJ1dCBub3QgaW4gQjwucGMvYXBwbGllZC1wYXRjaGVzPiksIGFuZCBpZiB0aGUgIgorImZpcnN0IHBhdGNoIGluIHRoYXQgc2V0IGNhbiBiZSBhcHBsaWVkIHdpdGhvdXQgZXJyb3JzLCBpdCB3aWxsIGFwcGx5IHRoZW0gIgorImFsbC4gVGhlIG9wdGlvbiBCPC0tbm8tcHJlcGFyYXRpb24+IGNhbiBiZSB1c2VkIHRvIGRpc2FibGUgdGhpcyBiZWhhdmlvci4iCittc2dzdHIgIiIKKyJOb3RlwqA6IEI8ZHBrZy1zb3VyY2U+IHMnYXR0ZW5kIMOgIGNlIHF1ZSBsJ2FyYnJlIHNvdXJjZSBhaXQgdG91dGVzIGxlcyAiCisiY29ycmVjdGlvbnMgZCdhcHBsaXF1w6llcyBsb3JzcXVlIHZvdXMgY3LDqWV6IGxlIHBhcXVldCBzb3VyY2UuIENlIG4nZXN0IHBhcyAiCisibGUgY2FzIGxvcnNxdWUgbCdhcmJyZSBzb3VyY2UgYSDDqXTDqSBvYnRlbnUgcGFyIGxlIGTDqXBhcXVldGFnZSBkJ3VuIHBhcXVldCAiCisic291cmNlIHV0aWxpc2FudCBsZSBmb3JtYXTCoDogMS4wIHBhciBleGVtcGxlLiBQb3VyIHLDqWR1aXJlIGxlIHByb2Jsw6htZSwgIgorIkI8ZHBrZy1zb3VyY2U+IGFwcGxpcXVlcmEgbGVzIGNvcnJlY3Rpb25zIGx1aS1tw6ptZSBzJ2lsIGTDqXRlY3RlIHF1J2VsbGVzIG5lICIKKyJsJ29udCBwYXMgw6l0w6kuIFBvdXIgZWZmZWN0dWVyIGNldHRlIGTDqXRlY3Rpb24sIGlsIHN1aXQgbGUgcmFpc29ubmVtZW50ICIKKyJzdWl2YW50wqA6wqBpbCByZWNoZXJjaGUgbGEgbGlzdGUgZGVzIGNvcnJlY3RpZnMgc3VwcG9zw6ltZW50IG5vbiBhcHBsaXF1w6lzICIKKyIoaWxzIHNvbnQgbWVudGlvbm7DqXMgZGFucyBsZSBmaWNoaWVyIEI8c2VyaWVzPiBtYWlzIHBhcyBkYW5zIEI8LnBjL2FwcGxpZWQtIgorInBhdGNoZXM+KSBldCBzaSBsZSBwcmVtaWVyIGRlIGNldHRlIGxpc3RlIHBldXQgw6p0cmUgYXBwbGlxdcOpIGRhbnMgZXJyZXVyLCBpbCAiCisibGVzIGFwcGxpcXVlIHRvdXMuIEwnb3B0aW9uIEI8LS1uby1wcmVwYXJhdGlvbj4gcGV1dCDDqnRyZSB1dGlsaXPDqWUgcG91ciAiCisiZMOpc2FjdGl2ZXIgY2UgY29tcG9ydGVtZW50LiBDZXR0ZSBvcMOpcmF0aW9uIGVzdCBlbiBnw6luw6lyYWwgZWZmZWN0dcOpZSBkYW5zIGxlICIKKyJjYWRyZSBkZSBsJ3V0aWxpc2F0aW9uIGRlIGxhIGNvbW1hbmRlIEI8LS1wcmVwYXJlLWJ1aWxkPi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NDgwCisjLCBmdXp6eQorI3wgbXNnaWQgIkI8ZGViaWFuL2NoYW5nZWxvZz4iCittc2dpZCAiQjxSZWNvcmRpbmcgY2hhbmdlcz4iCittc2dzdHIgIkI8ZGViaWFuL2NoYW5nZWxvZz4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjQ4MAorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPC1jPiwgQjwtLWNvbnRyb2wtcGF0aD4gSTxwYWNrYWdlLW5hbWU+IFtJPGNvbnRyb2wtZmlsZT5dIgorbXNnaWQgIkI8LS1jb21taXQ+IFtJPGRpcmVjdG9yeT5dIFtJPHBhdGNoLW5hbWU+XSBbSTxwYXRjaC1maWxlPl0iCittc2dzdHIgIkI8LWM+LCBCPC0tY29udHJvbC1wYXRoPiBJPG5vbS1wYXF1ZXQ+IFtJPGZpY2hpZXItY29udHLDtGxlPl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NDkwCittc2dpZCAiIgorIkdlbmVyYXRlcyBhIHBhdGNoIGNvcnJlc3BvbmRpbmcgdG8gdGhlIGxvY2FsIGNoYW5nZXMgdGhhdCBhcmUgbm90IG1hbmFnZWQgYnkgIgorInRoZSBxdWlsdCBwYXRjaCBzeXN0ZW0gYW5kIGludGVncmF0ZXMgaXQgaW4gdGhlIHBhdGNoIHN5c3RlbSB1bmRlciB0aGUgbmFtZSAiCisiSTxwYXRjaC1uYW1lPi4gSWYgdGhlIG5hbWUgaXMgbWlzc2luZywgaXQgd2lsbCBiZSBhc2tlZCBpbnRlcmFjdGl2ZWx5LiBJZiAiCisiSTxwYXRjaC1maWxlPiBpcyBnaXZlbiwgaXQgaXMgdXNlZCBhcyB0aGUgcGF0Y2ggY29ycmVzcG9uZGluZyB0byB0aGUgbG9jYWwgIgorImNoYW5nZXMgdG8gaW50ZWdyYXRlLiBUaGlzIGlzIG1haW5seSB1c2VmdWwgYWZ0ZXIgYSBidWlsZCBmYWlsdXJlIHRoYXQgcHJlLSIKKyJnZW5lcmF0ZWQgdGhpcyBmaWxlLiBPbmNlIGludGVncmF0ZWQsIGFuIGVkaXRvciBpcyBsYXVuY2hlZCBzbyB0aGF0IHlvdSBjYW4gIgorImVkaXQgdGhlIG1ldGEtaW5mb3JtYXRpb24gaW4gdGhlIHBhdGNoIGhlYWRlci4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo0OTMgZHBrZy1zb3VyY2UuMTo1NjcgZHBrZy1zb3VyY2UuMTo2MDYKK21zZ2lkICJCPEJ1aWxkIG9wdGlvbnM+IgorbXNnc3RyICJCPE9wdGlvbnMgZGUgY29uc3RydWN0aW9uPiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NDkzCisjLCBuby13cmFwCittc2dpZCAiQjwtLWFsbG93LXZlcnNpb24tb2YtcXVpbHQtZGI9Pkk8dmVyc2lvbj4iCittc2dzdHIgIkI8LS1hbGxvdy12ZXJzaW9uLW9mLXF1aWx0LWRiPT5JPHZlcnNpb24+IgorCisjIHR5cGU6IFBsYWluIHRleHQKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTAxCittc2dpZCAiIgorIkFsbG93IEI8ZHBrZy1zb3VyY2U+IHRvIGJ1aWxkIHRoZSBzb3VyY2UgcGFja2FnZSBpZiB0aGUgdmVyc2lvbiBvZiB0aGUgcXVpbHQgIgorIm1ldGFkYXRhIGlzIHRoZSBvbmUgc3BlY2lmaWVkLCBldmVuIGlmIEI8ZHBrZy1zb3VyY2U+IGRvZXNuJ3Qga25vdyBhYm91dCBpdC4gIgorIkVmZmVjdGl2ZWx5IHRoaXMgc2F5cyB0aGF0IHRoZSBnaXZlbiB2ZXJzaW9uIG9mIHRoZSBxdWlsdCBtZXRhZGF0YSBpcyAiCisiY29tcGF0aWJsZSB3aXRoIHRoZSB2ZXJzaW9uIDIgdGhhdCBCPGRwa2ctc291cmNlPiBjdXJyZW50bHkgc3VwcG9ydHMuIFRoZSAiCisidmVyc2lvbiBvZiB0aGUgcXVpbHQgbWV0YWRhdGEgaXMgc3RvcmVkIGluIEI8LnBjLy52ZXJzaW9uPi4iCittc2dzdHIgIiIKKyJBdXRvcmlzZSBCPGRwa2ctc291cmNlPiDDoCBjb25zdHJ1aXJlIGxlIGZpY2hpZXIgc2kgbGEgdmVyc2lvbiBkZXMgbcOpdGEtIgorImRvbm7DqWVzIGRlIHF1aWx0IGVzdCBjZWxsZSBpbmRpcXXDqWUsIG3Dqm1lIHNpIEI8ZHBrZy1zb3VyY2U+IG4nZW4gbidhIHBhcyAiCisiY29ubmFpc3NhbmNlLiBFbiBmYWl0LCBjZWxhIGluZGlxdWUgcXVlIGxhIHZlcnNpb24gaW5kaXF1w6llIGRlcyBtw6l0YS1kb25uw6llcyAiCisiZGUgcXVpbHQgZXN0IGNvbXBhdGlibGUgYXZlYyBsYSB2ZXJzaW9uIDIgcXVlIEI8ZHBrZy1zb3VyY2U+IGfDqHJlLiBMYSAiCisidmVyc2lvbiBkZXMgbcOpdGEtZG9ubsOpZXMgZGUgcXVpbHQgZXN0IGNvbnNlcnbDqWUgZGFucyBCPC5wYy8udmVyc2lvbj4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTo1MDEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0taW5jbHVkZS1yZW1vdmFsPiIKK21zZ3N0ciAiQjwtLWluY2x1ZGUtcmVtb3ZhbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTA1Cittc2dpZCAiIgorIkRvIG5vdCBpZ25vcmUgcmVtb3ZlZCBmaWxlcyBhbmQgaW5jbHVkZSB0aGVtIGluIHRoZSBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlZCAiCisicGF0Y2guIgorbXNnc3RyICIiCisiTmUgcGFzIGlnbm9yZXIgbGVzIGZpY2hpZXJzIHN1cHByaW3DqXMgZXQgbGVzIGluY2x1cmUgZGFucyBsZSBmaWNoaWVyIGRlICIKKyJtb2RpZmljYXRpb24gZ8OpbsOpcsOpIGF1dG9tYXRpcXVlbWVudC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjUwNQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1pbmNsdWRlLXRpbWVzdGFtcD4iCittc2dzdHIgIkI8LS1pbmNsdWRlLXRpbWVzdGFtcD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTA4Cittc2dpZCAiSW5jbHVkZSB0aW1lc3RhbXAgaW4gdGhlIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIHBhdGNoLiIKK21zZ3N0ciAiSW5jbHVyZSBsYSBkYXRlIGRhbnMgbGUgcGF0Y2ggZ8OpbsOpcsOpIGF1dG9tYXRpcXVlbWVudC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjUwOAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1pbmNsdWRlLWJpbmFyaWVzPiIKK21zZ3N0ciAiQjwtLWluY2x1ZGUtYmluYXJpZXM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjUxMworbXNnaWQgIiIKKyJBZGQgYWxsIG1vZGlmaWVkIGJpbmFyaWVzIGluIHRoZSBkZWJpYW4gdGFyYmFsbC4gQWxzbyBhZGQgdGhlbSB0byBCPGRlYmlhbi8iCisic291cmNlL2luY2x1ZGUtYmluYXJpZXM+OiB0aGV5IHdpbGwgYmUgYWRkZWQgYnkgZGVmYXVsdCBpbiBzdWJzZXF1ZW50IGJ1aWxkcyAiCisiYW5kIHRoaXMgb3B0aW9uIGlzIHRodXMgbm8gbW9yZSBuZWVkZWQuIgorbXNnc3RyICIiCisiQWpvdXRlciB0b3VzIGxlcyBiaW5haXJlcyBtb2RpZmnDqXMgZGFucyBsJ2FyY2hpdmUgdGFyIGRlYmlhbi4gTGVzIGFqb3V0ZXIgIgorImF1c3NpIMOgIEI8ZGViaWFuL3NvdXJjZS9pbmNsdWRlLWJpbmFyaWVzPsKgOiBlbGxlcyBzZXJvbnQgYWpvdXTDqWVzIHBhciBkw6lmYXV0ICIKKyJkYW5zIGxlcyBjb25zdHJ1Y3Rpb25zIGNvcnJlc3BvbmRhbnRlcyBhdXNzaSBjZXR0ZSBvcHRpb24gbidlc3QgZG9uYyBwbHVzICIKKyJuw6ljZXNzYWlyZS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjUxMworIywgbm8td3JhcAorbXNnaWQgIkI8LS1uby1wcmVwYXJhdGlvbj4iCittc2dzdHIgIkI8LS1uby1wcmVwYXJhdGlvbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTE3Cittc2dpZCAiIgorIkRvIG5vdCB0cnkgdG8gcHJlcGFyZSB0aGUgYnVpbGQgdHJlZSBieSBhcHBseWluZyBwYXRjaGVzIHdoaWNoIGFyZSAiCisiYXBwYXJlbnRseSB1bmFwcGxpZWQuIgorbXNnc3RyICIiCisiTmUgcGFzIGVzc2F5ZXIgZGUgcHLDqXBhcmVyIGwnYXJicmUgZGUgbGEgY29uc3RydWN0aW9uIGVuIGFwcGxpcXVhbnQgbGVzICIKKyJjb3JyZWN0aWZzIHF1aSBuZSBsdWkgc29udCBhcHBhcmVtbWVudCBwYXMgYXBwbGlxdcOpcy4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjUxNworIywgbm8td3JhcAorbXNnaWQgIkI8LS1zaW5nbGUtZGViaWFuLXBhdGNoPiIKK21zZ3N0ciAiQjwtLXNpbmdsZS1kZWJpYW4tcGF0Y2g+IgorCisjIHR5cGU6IFBsYWluIHRleHQKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTI4CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJVc2UgQjxkZWJpYW4vcGF0Y2hlcy9kZWJpYW4tY2hhbmdlcz4gaW5zdGVhZCBvZiBCPGRlYmlhbi9wYXRjaGVzL2RlYmlhbi0iCisjfCAiY2hhbmdlcy0+STx2ZXJzaW9uPiBmb3IgdGhlIG5hbWUgb2YgdGhlIGF1dG9tYXRpYyBwYXRjaCBnZW5lcmF0ZWQgZHVyaW5nICIKKyN8ICJidWlsZC4gVGhpcyBvcHRpb24gaXMgcGFydGljdWxhcmx5IHVzZWZ1bCB3aGVuIHRoZSBwYWNrYWdlIGlzIG1haW50YWluZWQgIgorI3wgImluIGEgVkNTIGFuZCBhIHBhdGNoIHNldCBjYW4ndCByZWxpYWJseSBiZSBnZW5lcmF0ZWQuIEluc3RlYWQgdGhlIGN1cnJlbnQgIgorI3wgImRpZmYgd2l0aCB1cHN0cmVhbSBzaG91bGQgYmUgc3RvcmVkIGluIGEgc2luZ2xlIHBhdGNoLiBXaGVuIHVzaW5nIHRoaXMgIgorI3wgIm9wdGlvbiwgaXQgaXMgcmVjb21tZW5kZWQgdG8gY3JlYXRlIGEgZGViaWFuL3NvdXJjZS9wYXRjaC1oZWFkZXIgZmlsZSAiCisjfCAiZXhwbGFpbmluZyBob3cgdGhlIERlYmlhbiBjaGFuZ2VzIGNhbiBiZSBiZXN0IHJldmlld2VkLCBmb3IgZXhhbXBsZSBpbiAiCisjfCAidGhlIFZDUyB0aGF0IGlzIHVzZWQuIgorbXNnaWQgIiIKKyJVc2UgQjxkZWJpYW4vcGF0Y2hlcy9kZWJpYW4tY2hhbmdlcz4gaW5zdGVhZCBvZiBCPGRlYmlhbi9wYXRjaGVzL2RlYmlhbi0iCisiY2hhbmdlcy0+STx2ZXJzaW9uPiBmb3IgdGhlIG5hbWUgb2YgdGhlIGF1dG9tYXRpYyBwYXRjaCBnZW5lcmF0ZWQgZHVyaW5nICIKKyJidWlsZC4gVGhpcyBvcHRpb24gaXMgcGFydGljdWxhcmx5IHVzZWZ1bCB3aGVuIHRoZSBwYWNrYWdlIGlzIG1haW50YWluZWQgaW4gIgorImEgVkNTIGFuZCBhIHBhdGNoIHNldCBjYW4ndCByZWxpYWJseSBiZSBnZW5lcmF0ZWQuIEluc3RlYWQgdGhlIGN1cnJlbnQgZGlmZiAiCisid2l0aCB1cHN0cmVhbSBzaG91bGQgYmUgc3RvcmVkIGluIGEgc2luZ2xlIHBhdGNoLiBUaGUgb3B0aW9uIHdvdWxkIGJlIHB1dCBpbiAiCisiQjxkZWJpYW4vc291cmNlL2xvY2FsLW9wdGlvbnM+IGFuZCB3b3VsZCBiZSBhY2NvbXBhbmllZCBieSBhIEI8ZGViaWFuL3NvdXJjZS8iCisibG9jYWwtcGF0Y2gtaGVhZGVyPiBmaWxlIGV4cGxhaW5pbmcgaG93IHRoZSBEZWJpYW4gY2hhbmdlcyBjYW4gYmUgYmVzdCAiCisicmV2aWV3ZWQsIGZvciBleGFtcGxlIGluIHRoZSBWQ1MgdGhhdCBpcyB1c2VkLiIKK21zZ3N0ciAiIgorIlV0aWxpc2UgQjxkZWJpYW4vcGF0Y2hlcy9kZWJpYW4tY2hhbmdlcz4gYXUgbGlldSBkZSBCPGRlYmlhbi9wYXRjaGVzL2RlYmlhbi0iCisiY2hhbmdlcy0+STx2ZXJzaW9uPiBjb21tZSBub20gZHUgY29ycmVjdGlmIGF1dG9tYXRpcXVlbWVudCBjcsOpw6kgYXUgY291cnMgZGUgIgorImxhIGNvbnN0cnVjdGlvbi4gQ2V0dGUgb3B0aW9uIGVzdCBwYXJ0aWN1bGnDqHJlbWVudCBwcmF0aXF1ZSBsb3JzcXVlIGxlICIKKyJwYXF1ZXQgZXN0IGfDqXLDqSBhdmVjIHVuIG91dGlsIGRlIGdlc3Rpb24gZGUgdmVyc2lvbnMgZXQgcXUndW4gamV1IGRlICIKKyJjb3JyZWN0aWZzIG5lIHBldXQgw6p0cmUgY3LDqcOpIGRlIGZhw6dvbiBmaWFibGUuIERhbnMgY2UgY2FzLCBsZXMgZGlmZsOpcmVuY2VzICIKKyJhdmVjIGxhIHZlcnNpb24gYW1vbnQgZG9pdmVudCDDqnRyZSBjb25zZXJ2w6llcyBkYW5zIHVuIGNvcnJlY3RpZiB1bmlxdWUuICIKKyJMb3JzcXVlIGNldHRlIG9wdGlvbiBlc3QgdXRpbGlzw6llLCBpbCBlc3QgcmVjb21tYW5kw6kgZCd1dGlsaXNlciB1biBmaWNoaWVyICIKKyJkZWJpYW4vc291cmNlL3BhdGNoLWhlYWRlciBxdWkgZXhwbGlxdWUgbGEgbWFpbGxldXJlIG3DqXRob2RlIHBvdXIgcmVsaXJlIGxlcyAiCisiY29ycmVjdGlvbnMgc3DDqWNpZmlxdWVzIMOgIERlYmlhbiwgcGFyIGV4ZW1wbGUgZGFucyBsZSBnZXN0aW9ubmFpcmUgZGUgIgorInZlcnNpb25zIHV0aWxpc8OpLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NTI4CisjLCBuby13cmFwCittc2dpZCAiQjwtLWNyZWF0ZS1lbXB0eS1vcmlnPiIKK21zZ3N0ciAiQjwtLWNyZWF0ZS1lbXB0eS1vcmlnPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1MzQKK21zZ2lkICIiCisiQXV0b21hdGljYWxseSBjcmVhdGUgdGhlIG1haW4gb3JpZ2luYWwgdGFyYmFsbCBhcyBlbXB0eSBpZiBpdCdzIG1pc3NpbmcgYW5kICIKKyJpZiB0aGVyZSBhcmUgc3VwcGxlbWVudGFyeSBvcmlnaW5hbCB0YXJiYWxscy4gVGhpcyBvcHRpb24gaXMgbWVhbnQgdG8gYmUgIgorInVzZWQgd2hlbiB0aGUgc291cmNlIHBhY2thZ2UgaXMganVzdCBhIGJ1bmRsZSBvZiBtdWx0aXBsZSB1cHN0cmVhbSBzb2Z0d2FyZSAiCisiYW5kIHdoZXJlIHRoZXJlJ3Mgbm8gXCJtYWluXCIgc29mdHdhcmUuIgorbXNnc3RyICIiCisiQ3LDqWUgYXV0b21hdGlxdWVtZW50IHVuZSBhcmNoaXZlIHRhciBkJ29yaWdpbmUgdmlkZSBzaSBlbGxlIGVzdCBtYW5xdWFudGUgZXQgIgorInF1J2lsIGV4aXN0ZSBkZXMgYXJjaGl2ZXMgdGFyIGQnb3JpZ2luZSBhZGRpdGlvbm5lbGxlcy4gQ2V0dGUgb3B0aW9uIHBldXQgIgorIsOqdHJlIHV0aWxpc8OpZSBsb3JzcXVlIGxlIHBhcXVldCBzb3VyY2UgZXN0IHVuZSBjb2xsZWN0aW9uIGRlIGRpZmbDqXJlbnRlcyAiCisic291cmNlcyBhbW9udCBldCBxdSdpbCBuJ2V4aXN0ZSBwYXMgZGUgbG9naWNpZWwgwqsgcHJpbmNpcGFswqDCuy4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjUzNAorIywgbm8td3JhcAorbXNnaWQgIkI8LS11bmFwcGx5LXBhdGNoZXM+IgorbXNnc3RyICJCPC0tdW5hcHBseS1wYXRjaGVzPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1NDEKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlVuYXBwbHkgdGhlIHBhdGNoZXMgaW4gdGhlIEI8LS1hZnRlci1idWlsZD4gaG9vay4gVGhpcyBpcyBtYWlubHkgdXNlZnVsICIKKyN8ICJ3aGVuIHlvdSBidWlsZCB5b3VyIHBhY2thZ2UgZGlyZWN0bHkgaW4gYSBWQ1MgdGhhdCBjb250YWlucyB1bnBhdGNoZWQgIgorI3wgInVwc3RyZWFtIHNvdXJjZSBhbmQgd2hlcmUgeW91IHdhbnQgdG8ga2VlcCB0aGUgdHJlZSB1bnBhdGNoZWQgZXZlbiBhZnRlciAiCisjfCAiYSBwYWNrYWdlIGJ1aWxkLiBUaGlzIG9wdGlvbiBpcyB1c3VhbGx5IHB1dCBpbiBCPGRlYmlhbi9zb3VyY2UvbG9jYWwtIgorI3wgIm9wdGlvbnM+IChpdCdzIG5vdCBhbGxvd2VkIGluIEI8ZGViaWFuL3NvdXJjZS9vcHRpb25zPiBzbyB0aGF0IGFsbCAiCisjfCAiZ2VuZXJhdGVkIHNvdXJjZSBwYWNrYWdlcyBoYXZlIHRoZSBzYW1lIGJlaGF2aW91ciBieSBkZWZhdWx0KS4iCittc2dpZCAiIgorIlVuYXBwbHkgdGhlIHBhdGNoZXMgaW4gdGhlIEI8LS1hZnRlci1idWlsZD4gaG9vay4gWW91IHVzdWFsbHkgZG9uJ3QgbmVlZCAiCisidGhpcyBvcHRpb24gYXMgZHBrZy1zb3VyY2Ugd2lsbCBhdXRvbWF0aWNhbGx5IHVuYXBwbHkgdGhlIHBhdGNoZXMgaWYgaXQgZGlkICIKKyJhcHBseSB0aGVtIGR1cmluZyBCPC0tYmVmb3JlLWJ1aWxkPi4gVGhpcyBvcHRpb24gaXMgb25seSBhbGxvd2VkIGluIEI8ZGViaWFuLyIKKyJzb3VyY2UvbG9jYWwtb3B0aW9ucz4gc28gdGhhdCBhbGwgZ2VuZXJhdGVkIHNvdXJjZSBwYWNrYWdlcyBoYXZlIHRoZSBzYW1lICIKKyJiZWhhdmlvciBieSBkZWZhdWx0LiIKK21zZ3N0ciAiIgorIlJldGlyZSBsZXMgY29ycmVjdGlmcyBkYW5zIGxlIHBvaW50IGQnZW50csOpZSBCPC0tYWZ0ZXItYnVpbGQ+LiBDZXR0ZSBvcHRpb24gIgorImVzdCBwcmluY2lwYWxlbWVudCB1dGlsZSBsb3JzcXVlIGxlIHBhcXVldCBlc3QgY29uc3RydWl0IGRpcmVjdGVtZW50IGRlcHVpcyAiCisidW4gZ2VzdGlvbm5haXJlIGRlIHZlcnNpb25zIHF1aSBjb250aWVudCBsZXMgc291cmNlcyBhbW9udCBub24gbW9kaWZpw6llcyBldCAiCisicXVlIGwnb24gc291aGFpdGUgY29uc2VydmVyIGwnYXJib3Jlc2NlbmNlIG5vbiBtb2RpZmnDqWUgYXByw6hzIGxhICIKKyJjb25zdHJ1Y3Rpb24gZHUgcGFxdWV0LiBDZXR0ZSBvcHRpb24gZXN0IGVuIGfDqW7DqXJhbCB1dGlsaXPDqWUgZGFucyBCPGRlYmlhbi8iCisic291cmNlL2xvY2FsLW9wdGlvbnM+IChlbGxlIG4nZXN0IHBhcyBwZXJtaXMgZGFucyAgQjxkZWJpYW4vc291cmNlL29wdGlvbnM+ICIKKyJhZmluIHF1ZSB0b3VzIGxlcyBwYXF1ZXRzIHNvdXJjZSBjcsOpw6lzIGFpZW50IGxlIG3Dqm1lIGNvbXBvcnRlbWVudCBwYXIgZMOpZmF1dC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTQ4Cittc2dpZCAiIgorIlRoZSBwcm9jZXNzIGZhaWxzIGlmIGFuIGF1dG9tYXRpYyBwYXRjaCBoYXMgYmVlbiBnZW5lcmF0ZWQuIFRoaXMgb3B0aW9uIGNhbiAiCisiYmUgdXNlZCB0byBlbnN1cmUgdGhhdCBhbGwgY2hhbmdlcyB3ZXJlIHByb3Blcmx5IHJlY29yZGVkIGluIHNlcGFyYXRlIHF1aWx0ICIKKyJwYXRjaGVzIHByaW9yIHRvIHRoZSBzb3VyY2UgcGFja2FnZSBidWlsZC4gVGhpcyBvcHRpb24gaXMgbm90IGFsbG93ZWQgaW4gIgorIkI8ZGViaWFuL3NvdXJjZS9vcHRpb25zPiBidXQgY2FuIGJlIHVzZWQgaW4gQjxkZWJpYW4vc291cmNlL2xvY2FsLW9wdGlvbnM+LiIKK21zZ3N0ciAiIgorIkNlIHByb2Nlc3N1cyDDqWNob3VlcmEgc2kgdW4gY29ycmVjdGlmIGF1dG9tYXRpcXVlIGEgw6l0w6kgY3LDqcOpLiBFbGxlIHBldXQgIgorInNlcnZpciDDoCB2w6lyaWZpZXIgcXVlIHRvdXRlcyBsZXMgbW9kaWZpY2F0aW9ucyBvbnQgw6l0w6kgZW5yZWdpc3Ryw6llcyAiCisiY29ycmVjdGVtZW50IGRhbnMgZGVzIGNvcnJlY3RpZnMgcXVpbHQgZGlzdGluY3RzIGF2YW50IGxhIGNvbnN0cnVjdGlvbiBkdSAiCisicGFxdWV0IHNvdXJjZS4gRWxsZSBuJ2VzdCBwYXMgYXV0b3Jpc8OpZSBkYW5zIEI8ZGViaWFuL3NvdXJjZS9vcHRpb25zPiBtYWlzICIKKyJwZXV0IHByZW5kcmUgcGxhY2UgZGFucyBCPGRlYmlhbi9zb3VyY2UvbG9jYWwtb3B0aW9ucz4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTo1NDgKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjwtLW5vLWFjdD4iCittc2dpZCAiQjwtLWF1dG8tY29tbWl0PiIKK21zZ3N0ciAiQjwtLW5vLWFjdD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTUyCittc2dpZCAiIgorIlRoZSBwcm9jZXNzIGRvZXNuJ3QgZmFpbCBpZiBhbiBhdXRvbWF0aWMgcGF0Y2ggaGFzIGJlZW4gZ2VuZXJhdGVkLCBpbnN0ZWFkICIKKyJpdCdzIGltbWVkaWF0ZWx5IHJlY29yZGVkIGluIHRoZSBxdWlsdCBzZXJpZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTU1Cittc2dpZCAiQjxFeHRyYWN0IG9wdGlvbnM+IgorbXNnc3RyICJCPE9wdGlvbnMgZCdleHRyYWN0aW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1NTgKK21zZ2lkICJTa2lwcyBleHRyYWN0aW9uIG9mIHRoZSBkZWJpYW4gdGFyYmFsbCBvbiB0b3Agb2YgdGhlIHVwc3RyZWFtIHNvdXJjZXMuIgorbXNnc3RyICIiCisiUGFzc2UgbCfDqXRhcGUgZCdleHRyYWN0aW9uIGRlIGwnYXJjaGl2ZSB0YXIgZGViaWFuIHBhciBkZXNzdXMgbGVzIHNvdXJjZXMgIgorImFtb250IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTo1NTgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tc2tpcC1wYXRjaGVzPiIKK21zZ3N0ciAiQjwtLXNraXAtcGF0Y2hlcz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTYxCittc2dpZCAiRG8gbm90IGFwcGx5IHBhdGNoZXMgYXQgdGhlIGVuZCBvZiB0aGUgZXh0cmFjdGlvbi4iCittc2dzdHIgIk5lIHBhcyBhcHBsaXF1ZXIgZGVzIGNvcnJlY3RpZnMgw6AgbGEgZmluIGRlIGwnZXh0cmFjdGlvbi4iCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjU2MgorIywgbm8td3JhcAorbXNnaWQgIkZvcm1hdDogMy4wIChjdXN0b20pIgorbXNnc3RyICJGb3JtYXQ6IDMuMCAoY3VzdG9tKSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1NjUKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlRoaXMgZm9ybWF0IGlzIHBhcnRpY3VsYXIuIEl0IGRvZXNuJ3QgcmVwcmVzZW50IGEgcmVhbCBzb3VyY2UgcGFja2FnZSAiCisjfCAiZm9ybWF0IGJ1dCBjYW4gYmUgdXNlZCB0byBjcmVhdGUgc291cmNlIHBhY2thZ2VzIHdpdGggYXJiaXRyYXJ5IGZpbGVzLiIKK21zZ2lkICIiCisiVGhpcyBmb3JtYXQgaXMgc3BlY2lhbC4gSXQgZG9lc24ndCByZXByZXNlbnQgYSByZWFsIHNvdXJjZSBwYWNrYWdlIGZvcm1hdCAiCisiYnV0IGNhbiBiZSB1c2VkIHRvIGNyZWF0ZSBzb3VyY2UgcGFja2FnZXMgd2l0aCBhcmJpdHJhcnkgZmlsZXMuIgorbXNnc3RyICIiCisiQ2UgZm9ybWF0IGVzdCBwYXJ0aWN1bGllci4gSWwgbmUgcmVwcsOpc2VudGUgcGFzIHVuIHLDqWVsIGZvcm1hdCBkZSBwYXF1ZXQgIgorInNvdXJjZSBtYWlzIHBldXQgw6p0cmUgdXRpbGlzw6kgcG91ciBjcsOpZXIgZGVzIHBhcXVldHMgc291cmNlcyBhdmVjIGRlcyAiCisiZmljaGllcnMgYXJiaXRyYWlyZXMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjU3MQorbXNnaWQgIiIKKyJBbGwgbm9uLW9wdGlvbiBhcmd1bWVudHMgYXJlIHRha2VuIGFzIGZpbGVzIHRvIGludGVncmF0ZSBpbiB0aGUgZ2VuZXJhdGVkICIKKyJzb3VyY2UgcGFja2FnZS4gVGhleSBtdXN0IGV4aXN0IGFuZCBhcmUgcHJlZmVyYWJseSBpbiB0aGUgY3VycmVudCBkaXJlY3RvcnkuICIKKyJBdCBsZWFzdCBvbmUgZmlsZSBtdXN0IGJlIGdpdmVuLiIKK21zZ3N0ciAiIgorIlRvdXMgbGVzIGFyZ3VtZW50cyBxdWkgbmUgc29udCBwYXMgZGVzIG9wdGlvbnMgc29udCBwcmlzIHBvdXIgZGVzIGZpY2hpZXJzIMOgICIKKyJpbnTDqWdyZXIgZGFucyBsZSBwYXF1ZXQgc291cmNlIGfDqW7DqXLDqS4gSWxzIGRvaXZlbnQgZXhpc3RlciBldCDDqnRyZSBkZSAiCisicHLDqWbDqXJlbmNlIGRhbnMgbGUgcsOpcGVydG9pcmUgY291cmFudC4gQXUgbW9pbnMgdW4gZmljaGllciBkb2l0IMOqdHJlIGRvbm7DqS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjU3MQorIywgbm8td3JhcAorbXNnaWQgIkI8LS10YXJnZXQtZm9ybWF0PT5JPHZhbHVlPiIKK21zZ3N0ciAiQjwtLXRhcmdldC1mb3JtYXQ9Pkk8dmFsZXVyPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1NzYKK21zZ2lkICIiCisiQjxSZXF1aXJlZD4uIERlZmluZXMgdGhlIHJlYWwgZm9ybWF0IG9mIHRoZSBnZW5lcmF0ZWQgc291cmNlIHBhY2thZ2UuICBUaGUgIgorImdlbmVyYXRlZCAuZHNjIGZpbGUgd2lsbCBjb250YWluIHRoaXMgdmFsdWUgaW4gaXRzIEk8Rm9ybWF0PiBmaWVsZCBhbmQgbm90ICIKKyJcIjMuMCAoY3VzdG9tKVwiLiIKK21zZ3N0ciAiIgorIkI8UmVxdWlyZWQ+LiBEw6lmaW5pdCBsZSBmb3JtYXQgcsOpZWwgZHUgcGFxdWV0IHNvdXJjZSBnw6luw6lyw6kuIExlIGZpY2hpZXIgIgorImfDqW7DqXLDqSAuZHNjIGNvbnRpZW5kcmEgY2V0dGUgdmFsZXVyIGRhbnMgc29uIGNoYW1wIEk8Zm9ybWF0PiBldCBub24gXCIzLjAgIgorIihjdXN0b20pXCIuIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo1NzcKKyMsIG5vLXdyYXAKK21zZ2lkICJGb3JtYXQ6IDMuMCAoZ2l0KSIKK21zZ3N0ciAiRm9ybWF0OiAzLjAgKGdpdCkiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTc5Cittc2dpZCAiVGhpcyBmb3JtYXQgaXMgZXhwZXJpbWVudGFsLiIKK21zZ3N0ciAiQ2UgZm9ybWF0IGVzdCBleHDDqXJpbWVudGFsLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1ODQKK21zZ2lkICIiCisiQSBzb3VyY2UgcGFja2FnZSBpbiB0aGlzIGZvcm1hdCBjb25zaXN0cyBvZiBhIHNpbmdsZSBidW5kbGUgb2YgYSBnaXQgIgorInJlcG9zaXRvcnkgQjwuZ2l0PiB0byBob2xkIHRoZSBzb3VyY2Ugb2YgYSBwYWNrYWdlLiAgVGhlcmUgbWF5IGFsc28gYmUgYSBCPC4iCisiZ2l0c2hhbGxvdz4gZmlsZSBsaXN0aW5nIHJldmlzaW9ucyBmb3IgYSBzaGFsbG93IGdpdCBjbG9uZS4iCittc2dzdHIgIiIKKyJVbiBwYXF1ZXQgc291cmNlIHF1aSB1dGlsaXNlIGNlIGZvcm1hdCBlc3QgY29uc3RpdHXDqSBkJ3VuIGVuc2VtYmxlIGQndW4gc2V1bCAiCisiZMOpcMO0dCBnaXQgQjwuZ2l0PiBxdWkgY29udGllbnQgbGVzIHNvdXJjZXMgZHUgcGFxdWV0LiAgSWwgcGV1dCDDqWdhbGVtZW50ICIKKyJleGlzdGVyIHVuIGZpY2hpZXIgQjwuZ2l0c2hhbGxvdz4gcXVpIGRvbm5lIGxlcyByw6l2aXNpb25zIGQndW4gY2xvbmUgZ2l0ICIKKyLCq8Kgc2hhbGxvd8KgwrsuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjU5MAorbXNnaWQgIiIKKyJUaGUgYnVuZGxlIGlzIGNsb25lZCBhcyBhIGdpdCByZXBvc2l0b3J5IHRvIHRoZSB0YXJnZXQgZGlyZWN0b3J5LiAgSWYgdGhlcmUgIgorImlzIGEgZ2l0c2hhbGxvdyBmaWxlLCBpdCBpcyBpbnN0YWxsZWQgYXMgYC5naXQvc2hhbGxvd2AgaW5zaWRlIHRoZSBjbG9uZWQgIgorImdpdCByZXBvc2l0b3J5LiIKK21zZ3N0ciAiIgorIkNldCBlbnNlbWJsZSBlc3QgY2xvbsOpIHNvdXMgZm9ybWUgZCd1biBkw6lww7R0IGdpdCBkYW5zIGxlIHLDqXBlcnRvaXJlIGNpYmxlLiAiCisiUydpbCBleGlzdGUgdW4gZmljaGllciAuZ2l0c2hhbGxvdywgaWwgZXN0IGluc3RhbGzDqSBlbiB0YW50IHF1ZSDCq8KgLmdpdC8iCisic2hhbGxvd8KgwrsgZGFucyBsZSBkw6lww7R0IGdpdCBjbG9uw6kuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjU5NQorbXNnaWQgIiIKKyJOb3RlIHRoYXQgYnkgZGVmYXVsdCB0aGUgbmV3IHJlcG9zaXRvcnkgd2lsbCBoYXZlIHRoZSBzYW1lIGJyYW5jaCBjaGVja2VkICIKKyJvdXQgdGhhdCB3YXMgY2hlY2tlZCBvdXQgaW4gdGhlIG9yaWdpbmFsIHNvdXJjZS4gKFR5cGljYWxseSBcIm1hc3RlclwiLCBidXQgIgorIml0IGNvdWxkIGJlIGFueXRoaW5nLikgQW55IG90aGVyIGJyYW5jaGVzIHdpbGwgYmUgYXZhaWxhYmxlIHVuZGVyIGByZW1vdGVzLyIKKyJvcmlnaW4vYC4iCittc2dzdHIgIiIKKyJWZXVpbGxleiBub3RlciBxdWUsIHBhciBkw6lmYXV0LCBsZSBub3V2ZWF1IGTDqXDDtHQgYXVyYSBsYSBtw6ptZSBicmFuY2hlICIKKyJyw6ljdXDDqXLDqWUgcXVlIGNlbGxlIHF1aSDDqXRhaXQgcsOpY3Vww6lyw6llIGRhbnMgbGVzIHNvdXJjZXMgZCdvcmlnaW5lIChzb3V2ZW50ICIKKyLCq8KgbWFzdGVywqDCuyBtYWlzIGNlbGEgcGV1dCDDqnRyZSB0b3V0IMOgIGZhaXQgYXV0cmUgY2hvc2UpLiBUb3V0ZXMgbGVzIGF1dHJlcyAiCisiYnJhbmNoZXMgc2Vyb250IGRpc3BvbmlibGVzIHNvdXMgwqvCoHJlbW90ZXMvb3JpZ2luwqDCuy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NjAwIGRwa2ctc291cmNlLjE6NjMzCittc2dpZCAiIgorIkJlZm9yZSBnb2luZyBhbnkgZnVydGhlciwgc29tZSBjaGVja3MgYXJlIGRvbmUgdG8gZW5zdXJlIHRoYXQgd2UgZG9uJ3QgaGF2ZSAiCisiYW55IG5vbi1pZ25vcmVkIHVuY29tbWl0dGVkIGNoYW5nZXMuIgorbXNnc3RyICIiCisiQXZhbnQgZCdhbGxlciBwbHVzIGxvaW4sIHF1ZWxxdWVzIHbDqXJpZmljYXRpb25zIHNvbnQgZWZmZWN0dcOpZXMgYWZpbiBkZSAiCisicydhc3N1cmVyIHF1J2lsIG4nZXhpc3RlIGF1Y3VuIGNoYW5nZW1lbnQgbm9uLXNvdW1pcyBldCDDoCBuZSBwYXMgaWdub3Jlci4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NjA0Cittc2dpZCAiIgorIkI8Z2l0LWJ1bmRsZT4oMSkgaXMgdXNlZCB0byBnZW5lcmF0ZSBhIGJ1bmRsZSBvZiB0aGUgZ2l0IHJlcG9zaXRvcnkuICBCeSAiCisiZGVmYXVsdCwgYWxsIGJyYW5jaGVzIGFuZCB0YWdzIGluIHRoZSByZXBvc2l0b3J5IGFyZSBpbmNsdWRlZCBpbiB0aGUgYnVuZGxlLiIKK21zZ3N0ciAiIgorIkI8Z2l0LWJ1bmRsZT4oMSkgcGVybWV0IGRlIGNyw6llciB1biBlbnNlbWJsZSDDoCBwYXJ0aXIgZHUgZMOpcMO0dCBnaXQuIFBhciAiCisiZMOpZmF1dCwgdG91dGVzIGxlcyBicmFuY2hlcyBldCDDqXRpcXVldHRlcyBkdSBkw6lww7R0IHNvbnQgaW5jbHVzIGRhbnMgY2V0ICIKKyJlbnNlbWJsZS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjYwNgorIywgbm8td3JhcAorbXNnaWQgIkI8LS1naXQtcmVmPT5JPHJlZj4iCittc2dzdHIgIkI8LS1naXQtcmVmPT5JPHLDqWY+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjYxNgorbXNnaWQgIiIKKyJBbGxvd3Mgc3BlY2lmeWluZyBhIGdpdCByZWYgdG8gaW5jbHVkZSBpbiB0aGUgZ2l0IGJ1bmRsZS4gVXNlIGRpc2FibGVzIHRoZSAiCisiZGVmYXVsdCBiZWhhdmlvciBvZiBpbmNsdWRpbmcgYWxsIGJyYW5jaGVzIGFuZCB0YWdzLiBNYXkgYmUgc3BlY2lmaWVkICIKKyJtdWx0aXBsZSB0aW1lcy4gVGhlIEk8cmVmPiBjYW4gYmUgdGhlIG5hbWUgb2YgYSBicmFuY2ggb3IgdGFnIHRvIGluY2x1ZGUuIEl0ICIKKyJtYXkgYWxzbyBiZSBhbnkgcGFyYW1ldGVyIHRoYXQgY2FuIGJlIHBhc3NlZCB0byBCPGdpdC1yZXYtbGlzdD4oMSkuIEZvciAiCisiZXhhbXBsZSwgdG8gaW5jbHVkZSBvbmx5IHRoZSBtYXN0ZXIgYnJhbmNoLCB1c2UgLS1naXQtcmVmPW1hc3Rlci4gVG8gaW5jbHVkZSAiCisiYWxsIHRhZ3MgYW5kIGJyYW5jaGVzLCBleGNlcHQgZm9yIHRoZSBwcml2YXRlIGJyYW5jaCwgdXNlIC0tZ2l0LXJlZj0tLWFsbCAtLSIKKyJnaXQtcmVmPV5wcml2YXRlIgorbXNnc3RyICIiCisiUGVybWV0IGQnaW5kaXF1ZXIgdW5lIHLDqWbDqXJlbmNlIGdpdCDDoCBpbmNsdXJlIGRhbnMgbCdlbnNlbWJsZSBnaXQuICIKKyJMJ3V0aWxpc2F0aW9uIGRlIGNldHRlIG9wdGlvbiBkw6lzYWN0aXZlIGxlIGNvbXBvcnRlbWVudCBwYXIgZMOpZmF1dCBxdWkgZXN0ICIKKyJkJ2luY2x1cmUgdG91dGVzIGxlcyBicmFuY2hlcyBldCDDqXRpcXVldHRlcy4gQ2V0dGUgb3B0aW9uIHBldXQtw6p0cmUgICIKKyJ1dGlsaXPDqWUgcGx1c2lldXJzIGZvaXMuIExlIHBhcmFtw6h0cmUgSTxyw6lmPiBwZXV0IMOqdHJlIGxlIG5vbSBkJ3VuZSBicmFuY2hlICIKKyJvdSB1bmUgw6l0aXF1ZXR0ZSDDoCBpbmNsdXJlLiBJbCBwZXV0IMOpZ2FsZW1lbnQgw6p0cmUgdG91dCBwYXJhbcOodHJlIHF1ZSBsJ29uICIKKyJwZXV0IHBhc3NlciDDoCBCPGdpdC1yZXYtbGlzdD4oMSkuIFBhciBleGVtcGxlLCBwb3VyIG4naW5jbHVyZSBxdWUgbGEgICIKKyLCq8KgbWFzdGVywqDCuywgb24gcGV1dCB1dGlsaXNlciAtLWdpdC1yZWY9bWFzdGVyLiBQb3VyIGluY2x1cmUgdG91dGVzIGxlcyAiCisiw6l0aXF1ZXR0ZXMgZXQgdG91dGVzIGxlcyBicmFuY2hlcywgc2F1ZiBsYSBicmFuY2hlIHByaXbDqWUsIG9uIHBldXQgdXRpbGlzZXIgLSIKKyJnaXQtcmVmPS0tYWxsIC0tIGdpdC1yZWY9XnByaXZhdGUuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTo2MTYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tZ2l0LWRlcHRoPT5JPG51bWJlcj4iCittc2dzdHIgIkI8LS1naXQtZGVwdGg9Pkk8bm9tYnJlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2MjAKK21zZ2lkICIiCisiQ3JlYXRlcyBhIHNoYWxsb3cgY2xvbmUgd2l0aCBhIGhpc3RvcnkgdHJ1bmNhdGVkIHRvIHRoZSBzcGVjaWZpZWQgbnVtYmVyIG9mICIKKyJyZXZpc2lvbnMuIgorbXNnc3RyICIiCisiQ3LDqWUgdW4gY2xvbmUgwqvCoHNoYWxsb3fCoMK7IGRvbnQgbCdoaXN0b3JpcXVlIGVzdCB0cm9ucXXDqSBhdSBub21icmUgaW5kaXF1w6kgZGUgIgorInLDqXZpc2lvbnMuIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo2MjAKKyMsIG5vLXdyYXAKK21zZ2lkICJGb3JtYXQ6IDMuMCAoYnpyKSIKK21zZ3N0ciAiRm9ybWF0OiAzLjAgKGJ6cikiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NjIzCittc2dpZCAiIgorIlRoaXMgZm9ybWF0IGlzIGV4cGVyaW1lbnRhbC4gSXQgZ2VuZXJhdGVzIGEgc2luZ2xlIHRhcmJhbGwgY29udGFpbmluZyB0aGUgIgorImJ6ciByZXBvc2l0b3J5LiIKK21zZ3N0ciAiIgorIkNlIGZvcm1hdCBlc3QgZXhww6lyaW1lbnRhbC4gSWwgY3LDqWUgdW5lIGFyY2hpdmUgdGFyIGNvbnRlbmFudCBsZSBkw6lww7R0IGJ6ciAiCisiY29ycmVzcG9uZGFudC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NjI4Cittc2dpZCAiIgorIlRoZSB0YXJiYWxsIGlzIHVucGFja2VkIGFuZCB0aGVuIGJ6ciBpcyB1c2VkIHRvIGNoZWNrb3V0IHRoZSBjdXJyZW50IGJyYW5jaC4iCittc2dzdHIgIiIKKyJMJ2FyY2hpdmUgdGFyIGVzdCBkw6ljb21wcmVzc8OpZSBwdWlzIGJ6ciBlc3QgdXRpbGlzw6kgYWZpbiBkZSByw6ljdXDDqXJlciBsYSAiCisiYnJhbmNoZSBjb3VyYW50ZS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NjM3Cittc2dpZCAiIgorIlRoZW4gdGhlIFZDUyBzcGVjaWZpYyBwYXJ0IG9mIHRoZSBzb3VyY2UgZGlyZWN0b3J5IGlzIGNvcGllZCBvdmVyIHRvIGEgIgorInRlbXBvcmFyeSBkaXJlY3RvcnkuIEJlZm9yZSB0aGlzIHRlbXBvcmFyeSBkaXJlY3RvcnkgaXMgcGFja2VkIGluIGEgdGFyYmFsbCwgIgorInZhcmlvdXMgY2xlYW51cCBhcmUgZG9uZSB0byBzYXZlIHNwYWNlLiIKK21zZ3N0ciAiIgorIkVuc3VpdGUsIGxhIHBhcnRpZSBzcMOpY2lmaXF1ZSBkdSByw6lwZXJ0b2lyZSBzb3VyY2UgZHUgZ2VzdGlvbm5haXJlIGRlICIKKyJ2ZXJzaW9ucyBlc3QgY29wacOpZSBkYW5zIHVuIHLDqXBlcnRvaXJlIHRlbXBvcmFpcmUuIEF2YW50IHF1ZSBjZSByw6lwZXJ0b2lyZSAiCisidGVtcG9yYWlyZSBuZSBzb2l0IGVtcGFxdWV0w6kgZGFucyB1bmUgYXJjaGl2ZSB0YXIsIGRpdmVycyBuZXR0b3lhZ2VzIHNvbnQgIgorImVmZmVjdHXDqWVzIHBvdXIgw6ljb25vbWlzZXIgZGUgbCdlc3BhY2UuIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1zb3VyY2UuMTo2MzcKKyMsIG5vLXdyYXAKK21zZ2lkICJXQVJOSU5HUyBBTkQgRVJST1JTIgorbXNnc3RyICJBVkVSVElTU0VNRU5UUyBFVCBFUlJFVVJTIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo2MzgKKyMsIG5vLXdyYXAKK21zZ2lkICJubyBzb3VyY2UgZm9ybWF0IHNwZWNpZmllZCBpbiBkZWJpYW4vc291cmNlL2Zvcm1hdCIKK21zZ3N0ciAiYXVjdW4gZm9ybWF0IHNvdXJjZSBpbmRpcXXDqSBkYW5zIGRlYmlhbi9zb3VyY2UvZm9ybWF0IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjY0NAorbXNnaWQgIiIKKyJUaGUgZmlsZSBCPGRlYmlhbi9zb3VyY2UvZm9ybWF0PiBzaG91bGQgYWx3YXlzIGV4aXN0IGFuZCBpbmRpY2F0ZSB0aGUgIgorImRlc2lyZWQgc291cmNlIGZvcm1hdC4gRm9yIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5LCBmb3JtYXQgXCIxLjBcIiBpcyAiCisiYXNzdW1lZCB3aGVuIHRoZSBmaWxlIGRvZXNuJ3QgZXhpc3QgYnV0IHlvdSBzaG91bGQgbm90IHJlbHkgb24gdGhpczogYXQgc29tZSAiCisicG9pbnQgaW4gdGhlIGZ1dHVyZSBkcGtnLXNvdXJjZSB3aWxsIGJlIG1vZGlmaWVkIHRvIGZhaWwgd2hlbiB0aGF0IGZpbGUgIgorImRvZXNuJ3QgZXhpc3QuIgorbXNnc3RyICIiCisiTGUgZmljaGllciBCPGRlYmlhbi9zb3VyY2UvZm9ybWF0PiBkZXZyYWl0IHRvdWpvdXJzIGV4aXN0ZXIgZXQgaW5kaXF1ZXIgbGUgIgorImZvcm1hdCBzb3VyY2Ugc291aGFpdMOpLiBQb3VyIHByw6lzZXJ2ZXIgbGEgY29tcGF0aWJpbGl0w6kgYXZlYyBkJ2FuY2llbm5lcyAiCisidmVyc2lvbnMsIGxlIGZvcm1hdCDCq8KgMS4wwqDCuyBlc3QgaW1wbGljaXRlIHF1YW5kIGxlIGZpY2hpZXIgbidleGlzdGUgcGFzLiBJbCAiCisiZXN0IGTDqWNvbnNlaWxsw6kgZGUgZMOpcGVuZHJlIGRlIGNlIGNvbXBvcnRlbWVudCBxdWkgcG91cnJhaXQgw6p0cmUgbW9kaWZpw6kgIgorImRhbnMgZGUgZnV0dXJlcyB2ZXJzaW9ucyBkZSBkcGtnLXNvdXJjZSwgcXVpIMOpY2hvdWVyb250IGFsb3JzIGVuIGwnYWJzZW5jZSAiCisiZCd1bmUgbWVudGlvbiBleHBsaWNpdGUgZGUgZm9ybWF0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2NTAKK21zZ2lkICIiCisiVGhlIHJhdGlvbmFsZSBpcyB0aGF0IGZvcm1hdCBcIjEuMFwiIGlzIG5vIGxvbmdlciB0aGUgcmVjb21tZW5kZWQgZm9ybWF0LCAiCisieW91IHNob3VsZCB1c3VhbGx5IHBpY2sgb25lIG9mIHRoZSBuZXdlciBmb3JtYXRzIChcIjMuMCAocXVpbHQpXCIsIFwiMy4wICIKKyIobmF0aXZlKVwiKSBidXQgQjxkcGtnLXNvdXJjZT4gd2lsbCBub3QgZG8gdGhpcyBhdXRvbWF0aWNhbGx5IGZvciB5b3UuICBJZiAiCisieW91IHdhbnQgdG8gY29udGludWUgdXNpbmcgdGhlIG9sZCBmb3JtYXQsIHlvdSBzaG91bGQgYmUgZXhwbGljaXQgYWJvdXQgaXQgIgorImFuZCBwdXQgXCIxLjBcIiBpbiBCPGRlYmlhbi9zb3VyY2UvZm9ybWF0Pi4iCittc2dzdHIgIiIKKyJDZWxhIGVzdCBkw7sgYXUgZmFpdCBxdWUgbGUgZm9ybWF0IMKrwqAxLjDCoMK7IG4nZXN0IHBsdXMgbGUgZm9ybWF0IHJlY29tbWFuZMOpLCAiCisicXUnaWwgZXN0IGNvbnNlaWxsw6kgZGUgY2hvaXNpciB1biBkZXMgZm9ybWF0cyBsZXMgcGx1cyByw6ljZW50cyAowqvCoDMuMCAiCisiKHF1aWx0KcKgwrsgb3UgwqvCoDMuMCAobmF0aXZlKcKgwrspIG1haXMgcXVlIGRwa2ctc291cmNlIG5lIGxlIGZlcmEgcGFzICIKKyJhdXRvbWF0aXF1ZW1lbnQuIFNpIHZvdXMgc291aGFpdGV6IGNvbnRpbnVlciDDoCB1dGlsaXNlciBsJ2FuY2llbiBmb3JtYXQsIGlsICIKKyJlc3QgbsOpY2Vzc2FpcmUgZCfDqnRyZSBleHBsaWNpdGUgZXQgaW5kaXF1ZXIgwqvCoDEuMMKgwrsgZGFucyBCPGRlYmlhbi9zb3VyY2UvIgorImZvcm1hdD4uIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo2NTAKKyMsIG5vLXdyYXAKK21zZ2lkICJ0aGUgZGlmZiBtb2RpZmllcyB0aGUgZm9sbG93aW5nIHVwc3RyZWFtIGZpbGVzIgorbXNnc3RyICJsZSBmaWNoaWVyIGRlIGRpZmbDqXJlbmNlcyBtb2RpZmllIGxlcyBmaWNoaWVycyBhbW9udCBzdWl2YW50cyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2NTcKK21zZ2lkICIiCisiV2hlbiB1c2luZyBzb3VyY2UgZm9ybWF0IFwiMS4wXCIgaXQgaXMgdXN1YWxseSBhIGJhZCBpZGVhIHRvIG1vZGlmeSB1cHN0cmVhbSAiCisiZmlsZXMgZGlyZWN0bHkgYXMgdGhlIGNoYW5nZXMgZW5kIHVwIGhpZGRlbiBhbmQgbW9zdGx5IHVuZG9jdW1lbnRlZCBpbiB0aGUgLiIKKyJkaWZmLmd6IGZpbGUuIEluc3RlYWQgeW91IHNob3VsZCBzdG9yZSB5b3VyIGNoYW5nZXMgYXMgcGF0Y2hlcyBpbiB0aGUgZGViaWFuICIKKyJkaXJlY3RvcnkgYW5kIGFwcGx5IHRoZW0gYXQgYnVpbGQtdGltZS4gVG8gYXZvaWQgdGhpcyBjb21wbGV4aXR5IHlvdSBjYW4gIgorImFsc28gdXNlIHRoZSBmb3JtYXQgXCIzLjAgKHF1aWx0KVwiIHRoYXQgb2ZmZXJzIHRoaXMgbmF0aXZlbHkuIgorbXNnc3RyICIiCisiTG9ycyBkZSBsJ3V0aWxpc2F0aW9uIGR1IGZvcm1hdCBzb3VyY2UgwqvCoDEuMMKgwrssIGlsIGVzdCBkw6ljb25zZWlsbMOpIGRlICIKKyJtb2RpZmllciBkaXJlY3RlbWVudCBsZXMgZmljaGllcnMgYW1vbnQgY2FyIGxlcyBtb2RpZmljYXRpb25zIHJlc3RlbnQgYWxvcnMgIgorImNhY2jDqWVzIGV0IHNvdXZlbnQgbm9uIGRvY3VtZW50w6llcyBkYW5zIGxlIGZpY2hpZXIgZGlmZi5nei4gQVUgY29udHJhaXJlLCBpbCAiCisiZXN0IGNvbnNlaWxsw6kgZGUgY29uc2VydmVyIGxlcyBtb2RpZmljYXRpb25zIHNvdXMgZm9ybWUgZGUgY29ycmVjdGlmcyBkYW5zICIKKyJsZSByw6lwZXJ0b2lyZSBkZWJpYW4gZXQgZGUgbGVzIGFwcGxpcXVlciBhdSBtb21lbnQgZGUgbGEgY29uc3RydWN0aW9uLiBQb3VyICIKKyLDqXZpdGVyIGNlcyBvcMOpcmF0aW9ucyBwbHVzIGNvbXBsZXhlcywgdm91cyBwb3V2ZXogw6lnYWxlbWVudCBjaG9pc2lyIGxlICIKKyJmb3JtYXQgwqvCoDMuMCAocXVpbHQpwqDCuyBxdWkgcGVybWV0IGNlcyBvcMOpcmF0aW9ucyBkZSBtYW5pw6hyZSBuYXRpdmUuIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo2NTcKKyMsIG5vLXdyYXAKK21zZ2lkICJjYW5ub3QgcmVwcmVzZW50IGNoYW5nZSB0byBJPGZpbGU+IgorbXNnc3RyICJpbXBvc3NpYmxlIGQnaWRlbnRpZmllciBsZXMgY2hhbmdlbWVudHMgZGUgSTxmaWNoaWVyPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2NjMKK21zZ2lkICIiCisiQ2hhbmdlcyB0byB1cHN0cmVhbSBzb3VyY2VzIGFyZSB1c3VhbGx5IHN0b3JlZCB3aXRoIHBhdGNoIGZpbGVzLCBidXQgbm90IGFsbCAiCisiY2hhbmdlcyBjYW4gYmUgcmVwcmVzZW50ZWQgd2l0aCBwYXRjaGVzOiB0aGV5IGNhbiBvbmx5IGFsdGVyIHRoZSBjb250ZW50IG9mICIKKyJwbGFpbiB0ZXh0IGZpbGVzLiBJZiB5b3UgdHJ5IHJlcGxhY2luZyBhIGZpbGUgd2l0aCBzb21ldGhpbmcgb2YgYSBkaWZmZXJlbnQgIgorInR5cGUgKGZvciBleGFtcGxlIHJlcGxhY2luZyBhIHBsYWluIGZpbGUgd2l0aCBhIHN5bWxpbmsgb3IgYSBkaXJlY3RvcnkpLCB5b3UgIgorIndpbGwgZ2V0IHRoaXMgZXJyb3IgbWVzc2FnZS4iCittc2dzdHIgIiIKKyJMZXMgbW9kaWZpY2F0aW9ucyBkZXMgc291cmNlcyBhbW9udCBzb250IGVuIGfDqW7DqXJhbCBjb25zZXJ2w6llcyBkYW5zIGRlcyAiCisiZmljaGllcnMgZGUgY29ycmVjdGlmcyBtYWlzIGNlcnRhaW5lcyBtb2RpZmljYXRpb25zIG5lIHBldXZlbnQgw6p0cmUgIgorInJlcHLDqXNlbnTDqWVzIHNvdXMgZm9ybWUgZGUgdGVscyBmaWNoaWVycyBxdWkgbmUgcGV1dmVudCBtb2RpZmllciBxdWUgZGVzICIKKyJmaWNoaWVycyB0ZXh0ZS4gU2kgdm91cyBlc3NheWV6IGRlIHJlbXBsYWNlciB1biBmaWNoaWVyIGF2ZWMgdW4gb2JqZXQgZCd1biAiCisidHlwZSBkaWZmw6lyZW50IChwYXIgZXhlbXBsZSByZW1wbGFjZXIgdW4gZmljaGllciBwYXIgdW4gbGllbiBvdSB1biAiCisicsOpcGVydG9pcmUpLCBjZSBtZXNzYWdlIGQnZXJyZXVyIHMnYWZmaWNoZXJhLiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6NjYzCisjLCBuby13cmFwCittc2dpZCAibmV3bHkgY3JlYXRlZCBlbXB0eSBmaWxlIEk8ZmlsZT4gd2lsbCBub3QgYmUgcmVwcmVzZW50ZWQgaW4gZGlmZiIKK21zZ3N0ciAibGUgZmljaGllciBJPGZpY2hpZXI+LCBub3V2ZWxsZW1lbnQgY3LDqcOpLCBuZSBzZXJhIHBhcyByZXByw6lzZW50w6kgZGFucyBsZSBmaWNoaWVyIGRlIGRpZmbDqXJlbmNlcyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2NjYKK21zZ2lkICIiCisiRW1wdHkgZmlsZXMgY2FuJ3QgYmUgY3JlYXRlZCB3aXRoIHBhdGNoIGZpbGVzLiBUaHVzIHRoaXMgY2hhbmdlIGlzIG5vdCAiCisicmVjb3JkZWQgaW4gdGhlIHNvdXJjZSBwYWNrYWdlIGFuZCB5b3UgYXJlIHdhcm5lZCBhYm91dCBpdC4iCittc2dzdHIgIiIKKyJMZXMgZmljaGllcnMgdmlkZXMgbmUgcGV1dmVudCBwYXMgw6p0cmUgY3LDqcOpcyBhdmVjIGRlcyBjb3JyZWN0aWZzLiBFbiAiCisiY29uc8OpcXVlbmNlLCBsYSBtb2RpZmljYXRpb24gbidlc3QgcGFzIGVucmVnaXN0csOpZSBkYW5zIGxlIHBhcXVldCBzb3VyY2UsIGNlICIKKyJxdWkgcHJvdm9xdWUgY2V0IGF2ZXJ0aXNzZW1lbnQuIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo2NjYKKyMsIG5vLXdyYXAKK21zZ2lkICJleGVjdXRhYmxlIG1vZGUgSTxwZXJtcz4gb2YgSTxmaWxlPiB3aWxsIG5vdCBiZSByZXByZXNlbnRlZCBpbiBkaWZmIgorbXNnc3RyICJsZSBtb2RlIGV4w6ljdXRhYmxlIEk8cGVybWlzc2lvbnM+IGRlIEk8ZmljaGllcj4gbmUgc2VyYSBwYXMgcmVwcsOpc2VudMOpIGRhbnMgbGUgZmljaGllciBkZSBkaWZmw6lyZW5jZXMiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjY2NworIywgbm8td3JhcAorbXNnaWQgInNwZWNpYWwgbW9kZSBJPHBlcm1zPiBvZiBJPGZpbGU+IHdpbGwgbm90IGJlIHJlcHJlc2VudGVkIGluIGRpZmYiCittc2dzdHIgImxlIG1vZGUgc3DDqWNpYWwgSTxwZXJtaXNzaW9ucz4gZGUgSTxmaWNoaWVyPiBuZSBzZXJhIHBhcyByZXByw6lzZW50w6kgZGFucyBsZSBmaWNoaWVyIGRlIGRpZmbDqXJlbmNlcyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2NzEKK21zZ2lkICIiCisiUGF0Y2ggZmlsZXMgZG8gbm90IHJlY29yZCBwZXJtaXNzaW9ucyBvZiBmaWxlcyBhbmQgdGh1cyBtb2RpZmllZCBwZXJtaXNzaW9ucyAiCisiYXJlIG5vdCBzdG9yZWQgaW4gdGhlIHNvdXJjZSBwYWNrYWdlLiBUaGlzIHdhcm5pbmcgcmVtaW5kcyB5b3Ugb2YgdGhhdCBmYWN0LiIKK21zZ3N0ciAiIgorIkxlcyBmaWNoaWVycyBjb3JyZWN0aWZzIG4nZW5yZWdpc3RyZW50IHBhcyBsZXMgcGVybWlzc2lvbnMgZGUgZmljaGllcnMgZXQsICIKKyJlbiBjb25zw6lxdWVuY2UsIGxlcyBwZXJtaXNzaW9ucyBtb2RpZmnDqWVzIG5lIHNvbnQgcGFzIGVucmVnaXN0csOpZXMgZGFucyBsZSAiCisicGFxdWV0IHNvdXJjZSwgY2UgcXVpIHByb3ZvcXVlIGNldCBhdmVydGlzc2VtZW50LiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctc291cmNlLjE6NjcxCisjLCBuby13cmFwCittc2dpZCAiRklMRSBGT1JNQVRTIgorbXNnc3RyICJGT1JNQVRTIERFIEZJQ0hJRVJTIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo2NzIKKyMsIG5vLXdyYXAKK21zZ2lkICJkZWJpYW4vc291cmNlL2Zvcm1hdCIKK21zZ3N0ciAiZGViaWFuL3NvdXJjZS9mb3JtYXQiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6Njc2Cittc2dpZCAiIgorIlRoaXMgZmlsZSBjb250YWlucyBvbiBhIHNpbmdsZSBsaW5lIHRoZSBmb3JtYXQgdGhhdCBzaG91bGQgYmUgdXNlZCB0byBidWlsZCAiCisidGhlIHNvdXJjZSBwYWNrYWdlIChwb3NzaWJsZSBmb3JtYXRzIGFyZSBkZXNjcmliZWQgYWJvdmUpLiBObyBsZWFkaW5nIG9yICIKKyJ0cmFpbGluZyBzcGFjZXMgYXJlIGFsbG93ZWQuIgorbXNnc3RyICIiCisiQ2UgZmljaGllciBjb250aWVudCBzdXIgdW5lIHNldWxlIGxpZ25lIGxlIGZvcm1hdCDDoCB1dGlsaXNlciBwb3VyIGNvbnN0cnVpcmUgIgorImxlIHBhcXVldCBzb3VyY2UgKGxlcyBmb3JtYXRzIGFjY2VwdMOpcyBzb250IGTDqWNyaXRzIHBsdXMgaGF1dCkuIElsIG5lIGRvaXQgIgorInBhcyBjb250ZW5pciBkJ2VzcGFjZXMgYXZhbnQgb3UgYXByw6hzIGwnaW5kaWNhdGlvbiBkdSBmb3JtYXQuIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo2NzYKKyMsIG5vLXdyYXAKK21zZ2lkICJkZWJpYW4vc291cmNlL2luY2x1ZGUtYmluYXJpZXMiCittc2dzdHIgImRlYmlhbi9zb3VyY2UvaW5jbHVkZS1iaW5hcmllcyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2ODAKK21zZ2lkICIiCisiVGhpcyBmaWxlIGNvbnRhaW5zIGEgbGlzdCBvZiBiaW5hcnkgZmlsZXMgKG9uZSBwZXIgbGluZSkgdGhhdCBzaG91bGQgYmUgIgorImluY2x1ZGVkIGluIHRoZSBkZWJpYW4gdGFyYmFsbC4gTGVhZGluZyBhbmQgdHJhaWxpbmcgc3BhY2VzIGFyZSBzdHJpcHBlZC4gICIKKyJMaW5lcyBzdGFydGluZyB3aXRoIFwiI1wiIGFyZSBjb21tZW50cyBhbmQgYXJlIHNraXBwZWQuIEVtcHR5IGxpbmVzIGFyZSAiCisiaWdub3JlZC4iCittc2dzdHIgIiIKKyJDZSBmaWNoaWVyIGNvbnRpZW50IHVuZSBsaXN0ZSBkZSBmaWNoaWVycyBiaW5haXJlcyAodW4gcGFyIGxpZ25lKSBxdWkgIgorImRvaXZlbnQgw6p0cmUgaW5jbHVzIGRhbnMgbCdhcmNoaXZlIHRhciBkZWJpYW4uIExlcyBlc3BhY2VzIHBsYWPDqXMgYXZhbnQgb3UgIgorImFwcsOocyBjZXMgbm9tcyBzb250IHN1cHByaW3DqXMuIExlcyBsaWduZXMgY29tbWVuw6dhbnQgcGFyIMKrwqAjwqDCuyBzb250IGRlcyAiCisiY29tbWVudGFpcmVzIGV0IHNvbnQgaWdub3LDqWVzLCBhaW5zaSBxdWUgbGVzIGxpZ25lcyB2aWRlcy4iCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjY4MAorIywgbm8td3JhcAorbXNnaWQgImRlYmlhbi9zb3VyY2Uvb3B0aW9ucyIKK21zZ3N0ciAiZGViaWFuL3NvdXJjZS9vcHRpb25zIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjY4NgorbXNnaWQgIiIKKyJUaGlzIGZpbGUgY29udGFpbnMgYSBsaXN0IG9mIGxvbmcgb3B0aW9ucyB0aGF0IHNob3VsZCBiZSBhdXRvbWF0aWNhbGx5ICIKKyJwcmVwZW5kZWQgdG8gdGhlIHNldCBvZiBjb21tYW5kIGxpbmUgb3B0aW9ucyBvZiBhIEI8ZHBrZy1zb3VyY2UgLWI+IG9yICIKKyJCPGRwa2ctc291cmNlIC0tcHJpbnQtZm9ybWF0PiBjYWxsLiBPcHRpb25zIGxpa2UgQjwtLWNvbXByZXNzaW9uPiBhbmQgQjwtLSIKKyJjb21wcmVzc2lvbi1sZXZlbD4gYXJlIHdlbGwgc3VpdGVkIGZvciB0aGlzIGZpbGUuIgorbXNnc3RyICIiCisiQ2UgZmljaGllciBjb250aWVudCBsYSBsaXN0ZSBkZXMgb3B0aW9ucyBxdWkgc2Vyb250IGF1dG9tYXRpcXVlbWVudCBham91dMOpZXMgIgorImF1IGpldSBkJ29wdGlvbnMgZGUgbGlnbmUgZGUgY29tbWFuZGUgdXRpbGlzw6llcyBwYXIgQjxkcGtnLXNvdXJjZSAtYj4gb3UgIgorIkI8ZHBrZy1zb3VyY2UgLS1wcmludC1mb3JtYXQ+LiBEZXMgb3B0aW9ucyBjb21tZSBCPC0tY29tcHJlc3Npb24+IGV0IEI8LS0iCisiY29tcHJlc3Npb24tbGV2ZWw+IGNvbnZpZW5uZW50IGJpZW4gcG91ciBjZSBmaWNoaWVyLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2OTIKK21zZ2lkICIiCisiRWFjaCBvcHRpb24gc2hvdWxkIGJlIHB1dCBvbiBhIHNlcGFyYXRlIGxpbmUuIEVtcHR5IGxpbmVzIGFuZCBsaW5lcyBzdGFydGluZyAiCisid2l0aCBcIiNcIiBhcmUgaWdub3JlZC4gVGhlIGxlYWRpbmcgXCItLVwiIHNob3VsZCBiZSBzdHJpcHBlZCBhbmQgc2hvcnQgIgorIm9wdGlvbnMgYXJlIG5vdCBhbGxvd2VkLiBPcHRpb25hbCBzcGFjZXMgYXJlIGFsbG93ZWQgYXJvdW5kIHRoZSBcIj1cIiBzeW1ib2wgIgorImFuZCBvcHRpb25hbCBxdW90ZXMgYXJlIGFsbG93ZWQgYXJvdW5kIHRoZSB2YWx1ZS4gIEhlcmUncyBhbiBleGFtcGxlIG9mIHN1Y2ggIgorImEgZmlsZToiCittc2dzdHIgIiIKKyJDaGFxdWUgb3B0aW9uIGRvaXQgw6p0cmUgcGxhY8OpZSBzdXIgdW5lIGxpZ25lIGRpc3RpbmN0ZS4gTGVzIGxpZ25lcyB2aWRlcyBldCAiCisibGVzIGxpZ25lcyBjb21tZW7Dp2FudCBwYXIgbGUgY2FyYWN0w6hyZSDCq8KgI8Kgwrsgc29udCBpZ25vcsOpZXMuIExlcyBjYXJhY3TDqHJlcyAiCisiaW5pdGlhdXggwqvCoC0twqDCuyBkb2l2ZW50IMOqdHJlIHJldGlyw6lzIGV0IGxlcyBvcHRpb25zIGNvdXJ0ZXMgbmUgcGV1dmVudCBwYXMgIgorIsOqdHJlIHV0aWxpc8OpZXMuIERlcyBlc3BhY2VzIG9wdGlvbm5lbHMgc29udCBhdXRvcmlzw6lzIGF1dG91ciBkdSBzeW1ib2xlICIKKyLCq8KgPcKgwrssIGFpbnNpIHF1ZSBkZXMgZ3VpbGxlbWV0cyBvcHRpb25uZWxzIGF1dG91ciBkZSBsYSB2YWxldXIgZCd1bmUgb3B0aW9uICIKKyJkb25uw6llLiBWb2ljaSB1biBleGVtcGxlIGQndW4gdGVsIGZpY2hpZXLCoDoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NzAwCisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIiIKKyN8ICIgICMgbGV0IGRwa2ctc291cmNlIGNyZWF0ZSBhIGRlYmlhbi50YXIuYnoyIHdpdGggbWF4aW1hbCBjb21wcmVzc2lvblxuIgorI3wgIiAgY29tcHJlc3Npb24gPSBcImJ6aXAyXCJcbiIKKyN8ICIgIGNvbXByZXNzaW9uLWxldmVsID0gOVxuIgorI3wgIiAgIyB1c2UgZGViaWFuL3BhdGNoZXMvZGViaWFuLWNoYW5nZXMgYXMgYXV0b21hdGljIHBhdGNoXG4iCisjfCAiICBzaW5nbGUtZGViaWFuLXBhdGNoXG4iCittc2dpZCAiIgorIiAgIyBsZXQgZHBrZy1zb3VyY2UgY3JlYXRlIGEgZGViaWFuLnRhci5iejIgd2l0aCBtYXhpbWFsIGNvbXByZXNzaW9uXG4iCisiICBjb21wcmVzc2lvbiA9IFwiYnppcDJcIlxuIgorIiAgY29tcHJlc3Npb24tbGV2ZWwgPSA5XG4iCisiICAjIHVzZSBkZWJpYW4vcGF0Y2hlcy9kZWJpYW4tY2hhbmdlcyBhcyBhdXRvbWF0aWMgcGF0Y2hcbiIKKyIgIHNpbmdsZS1kZWJpYW4tcGF0Y2hcbiIKKyIgICMgaWdub3JlIGNoYW5nZXMgb24gY29uZmlnLntzdWIsZ3Vlc3N9XG4iCisiICBleHRlbmQtZGlmZi1pZ25vcmUgPSBcIihefC8pKGNvbmZpZy5zdWJ8Y29uZmlnLmd1ZXNzKSRcIlxuIgorbXNnc3RyICIiCisiICAjIGF1dG9yaXNlciBkcGtnLXNvdXJjZSDDoCBjcsOpZXIgdW4gZmljaGllciBkZWJpYW4udGFyLmJ6MiBhdmVjIGxhIGNvbXByZXNzaW9uIG1heGltYWxlXG4iCisiICBjb21wcmVzc2lvbiA9IFwiYnppcDJcIlxuIgorIiAgY29tcHJlc3Npb24tbGV2ZWwgPSA5XG4iCisiICAjIHV0aWxpc2VyIGRlYmlhbi9wYXRjaGVzL2RlYmlhbi1jaGFuZ2VzIGNvbW1lIGNvcnJlY3RpZiBhdXRvbWF0aXF1ZVxuIgorIiAgc2luZ2xlLWRlYmlhbi1wYXRjaFxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjcwMworbXNnaWQgIiIKKyJOb3RlOiBCPGZvcm1hdD4gb3B0aW9ucyBhcmUgbm90IGFjY2VwdGVkIGluIHRoaXMgZmlsZSwgeW91IHNob3VsZCB1c2UgIgorIkI8ZGViaWFuL3NvdXJjZS9mb3JtYXQ+IGluc3RlYWQuIgorbXNnc3RyICIiCisiTm90ZcKgOiBsZXMgb3B0aW9ucyBkZSBCPGZvcm1hdD4gbmUgc29udCBwYXMgYWNjZXB0w6llcyBkYW5zIGNlIGZpY2hpZXIuIFZvdXMgIgorImRldnJpZXogdXRpbGlzZXIgQjxkZWJpYW4vc291cmNlL2Zvcm1hdD4gw6AgbGEgcGxhY2UuIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo3MDMKKyMsIG5vLXdyYXAKK21zZ2lkICJkZWJpYW4vc291cmNlL2xvY2FsLW9wdGlvbnMiCittc2dzdHIgImRlYmlhbi9zb3VyY2UvbG9jYWwtb3B0aW9ucyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo3MDgKK21zZ2lkICIiCisiRXhhY3RseSBsaWtlIEI8ZGViaWFuL3NvdXJjZS9vcHRpb25zPiBleGNlcHQgdGhhdCB0aGUgZmlsZSBpcyBub3QgaW5jbHVkZWQgIgorImluIHRoZSBnZW5lcmF0ZWQgc291cmNlIHBhY2thZ2UuIEl0IGNhbiBiZSB1c2VmdWwgdG8gc3RvcmUgYSBwcmVmZXJlbmNlIHRpZWQgIgorInRvIHRoZSBtYWludGFpbmVyIG9yIHRvIHRoZSBWQ1MgcmVwb3NpdG9yeSB3aGVyZSB0aGUgc291cmNlIHBhY2thZ2UgaXMgIgorIm1haW50YWluZWQuIgorbXNnc3RyICIiCisiSWRlbnRpcXVlIMOgIEI8ZGViaWFuL3NvdXJjZS9vcHRpb25zPiBtYWlzIG4nZXN0IHBhcyBlbnJlZ2lzdHLDqSBkYW5zIGxlICIKKyJwYXF1ZXQgc291cmNlIGNyw6nDqS4gQ2UgZmljaGllciBwZXV0IMOqdHJlIHV0aWxlIHBvdXIgY29uc2VydmVyIHVuZSBwcsOpZsOpcmVuY2UgIgorInByb3ByZSBhdSByZXNwb25zYWJsZSBvdSBhdSBkw6lww7R0IGRlIGdlc3Rpb25uYWlyZSBkZSB2ZXJzaW9ucyBvw7kgbGUgcGFxdWV0ICIKKyJzb3VyY2UgZXN0IGfDqXLDqS4iCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjcwOAorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJkZWJpYW4vc291cmNlL3BhdGNoLWhlYWRlciIKK21zZ2lkICJkZWJpYW4vc291cmNlL2xvY2FsLXBhdGNoLWhlYWRlciIKK21zZ3N0ciAiZGViaWFuL3NvdXJjZS9wYXRjaC1oZWFkZXIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjcwOQorIywgbm8td3JhcAorbXNnaWQgImRlYmlhbi9zb3VyY2UvcGF0Y2gtaGVhZGVyIgorbXNnc3RyICJkZWJpYW4vc291cmNlL3BhdGNoLWhlYWRlciIKKworIyB0eXBlOiBQbGFpbiB0ZXh0CisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjcxMworIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiRnJlZSBmb3JtIHRleHQgdGhhdCBpcyBwdXQgb24gdG9wIG9mIHRoZSBhdXRvbWF0aWMgcGF0Y2ggZ2VuZXJhdGVkIGluICIKKyN8ICJmb3JtYXRzIFwiMi4wXCIgb3IgXCIzLjAgKHF1aWx0KVwiLiIKK21zZ2lkICIiCisiRnJlZSBmb3JtIHRleHQgdGhhdCBpcyBwdXQgb24gdG9wIG9mIHRoZSBhdXRvbWF0aWMgcGF0Y2ggZ2VuZXJhdGVkIGluICIKKyJmb3JtYXRzIFwiMi4wXCIgb3IgXCIzLjAgKHF1aWx0KVwiLiBCPGxvY2FsLXBhdGNoLWhlYWRlcj4gaXMgbm90IGluY2x1ZGVkIGluICIKKyJ0aGUgZ2VuZXJhdGVkIHNvdXJjZSBwYWNrYWdlIHdoaWxlIEI8cGF0Y2gtaGVhZGVyPiBpcy4iCittc2dzdHIgIiIKKyJUZXh0ZSBlbiBmb3JtYXQgbGlicmUgcXVpIHNlcmEgYWpvdXTDqSBhdSBjb3JyZWN0aWYgYXV0b21hdGlxdWUgY3LDqcOpIGRhbnMgbGVzICIKKyJmb3JtYXRzIMKrwqAyLjDCoMK7IGV0IMKrwqAzLjAgKHF1aWx0KcKgwrsuIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo3MTMKKyMsIG5vLXdyYXAKK21zZ2lkICJkZWJpYW4vcGF0Y2hlcy9zZXJpZXMiCittc2dzdHIgImRlYmlhbi9wYXRjaGVzL3NlcmllcyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo3MjIKK21zZ2lkICIiCisiVGhpcyBmaWxlIGxpc3RzIGFsbCBwYXRjaGVzIHRoYXQgaGF2ZSB0byBiZSBhcHBsaWVkIChpbiB0aGUgZ2l2ZW4gb3JkZXIpICBvbiAiCisidG9wIG9mIHRoZSB1cHN0cmVhbSBzb3VyY2UgcGFja2FnZS4gTGVhZGluZyBhbmQgdHJhaWxpbmcgc3BhY2VzIGFyZSAiCisic3RyaXBwZWQuIExpbmVzIHN0YXJ0aW5nIHdpdGggXCIjXCIgYXJlIGNvbW1lbnRzIGFuZCBhcmUgc2tpcHBlZC4gRW1wdHkgIgorImxpbmVzIGFyZSBpZ25vcmVkLiBSZW1haW5pbmcgbGluZXMgc3RhcnQgd2l0aCBhIHBhdGNoIGZpbGVuYW1lIChyZWxhdGl2ZSB0byAiCisidGhlIEI8ZGViaWFuL3BhdGNoZXMvPiBkaXJlY3RvcnkpIHVwIHRvIHRoZSBmaXJzdCBzcGFjZSBjaGFyYWN0ZXIgb3IgdGhlIGVuZCAiCisib2YgbGluZS4gT3B0aW9uYWwgcXVpbHQgb3B0aW9ucyBjYW4gZm9sbG93IHVwIHRvIHRoZSBlbmQgb2YgbGluZSBvciB0aGUgIgorImZpcnN0IFwiI1wiIHByZWNlZGVkIGJ5IG9uZSBvciBtb3JlIHNwYWNlcyAod2hpY2ggbWFya3MgdGhlIHN0YXJ0IG9mIGEgIgorImNvbW1lbnQgdXAgdG8gdGhlIGVuZCBvZiBsaW5lKS4iCittc2dzdHIgIiIKKyJDZSBmaWNoaWVyIGNvbXBvcnRlIGxhIGxpc3RlIGRlIHRvdXRlcyBsZXMgY29ycmVjdGlvbnMgcXVpIG9udCDDqXTDqSAiCisiYXBwbGlxdcOpZXMgKGRhbnMgbCdvcmRyZSBpbmRpcXXDqSkgYXV4IHNvdXJjZXMgYW1vbnQuIExlcyBlc3BhY2VzIHNpdHXDqXMgIgorImF2YW50IGV0IGFwcsOocyBsZXMgbm9tcyBzb250IGlnbm9yw6lzLiBMZXMgbGlnbmVzIGNvbW1lbsOnYW50IHBhciDCq8KgI8Kgwrsgc29udCAiCisiZGVzIGNvbW1lbnRhaXJlcyBldCBzb250IGlnbm9yw6llcywgYWluc2kgcXVlIGxlcyBsaWduZXMgdmlkZXMuIExlcyBhdXRyZXMgIgorImxpZ25lcyBkw6lidXRlbnQgcGFyIGxlIG5vbSBkdSBmaWNoaWVyIGRlIGNvcnJlY3Rpb24gKHJlbGF0aWYgYXUgcsOpcGVydG9pcmUgIgorIkI8ZGViaWFuL3BhdGNoZXMvPikgcXVpIHNlIHRlcm1pbmUgYXUgcHJlbWllciBlc3BhY2Ugb3Ugw6AgbGEgZmluIGRlIGxhICIKKyJsaWduZS4gRGVzIG9wdGlvbnMgZmFjdWx0YXRpdmVzIGRlIHF1aWx0IHBldXZlbnQgw6p0cmUgcGxhY8OpZXMganVzcXUnw6AgbGEgZmluICIKKyJkZSBsYSBsaWduZSBvdSBqdXNxdSdhdSBwcmVtaWVyIGNhcmFjdMOocmUgwqvCoCPCoMK7IHByw6ljw6lkw6kgcGFyIHVuIG91IHBsdXNpZXVycyAiCisiZXNwYWNlcyAocXVpIGluZGlxdWUgdW4gY29tbWVudGFpcmUgcXVpIHNlIHBvdXJzdWl0IGp1c3F1J8OgIGxhIGZpbiBkZSBsYSAiCisibGlnbmUpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo3MjkKK21zZ2lkICJCPGRwa2ctZGViPigxKSwgQjxkcGtnPigxKSwgQjxkc2VsZWN0PigxKS4iCittc2dzdHIgIkI8ZHBrZy1kZWI+KDEpLCBCPGRwa2c+KDEpLCBCPGRzZWxlY3Q+KDEpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo3MzYKKyMsIGZ1enp5CisjfCBtc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMDgtMjAxMCBSYXBoYVxcWzplXWwgSGVydHpvZyIKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAwOC0yMDExIFJhcGhhXFxbOmVdbCBIZXJ0em9nIgorbXNnc3RyICJDb3B5cmlnaHQgXFwoY28gMjAwOC0yMDEwIFJhcGhhXFxbOmVdbCBIZXJ0em9nIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1zcGxpdC4xOjIKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLXNwbGl0IgorbXNnc3RyICJkcGtnLXNwbGl0IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6NQorbXNnaWQgImRwa2ctc3BsaXQgLSBEZWJpYW4gcGFja2FnZSBhcmNoaXZlIHNwbGl0L2pvaW4gdG9vbCIKK21zZ3N0ciAiZHBrZy1zcGxpdCAtIG91dGlsIGRlIGTDqWNvbXBvc2l0aW9uL3JlY29tcG9zaXRpb24gZGVzIHBhcXVldHMgRGViaWFuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6OQorIywgZnV6enkKKyN8IG1zZ2lkICJCPGRwa2ctc3BsaXQ+IFtJPG9wdGlvbnM+XSBJPGNvbW1hbmQ+IgorbXNnaWQgIkI8ZHBrZy1zcGxpdD4gW0k8b3B0aW9uPi4uLl0gSTxjb21tYW5kPiIKK21zZ3N0ciAiQjxkcGtnLXNwbGl0PiBbSTxvcHRpb25zPl0gSTxjb21tYW5kZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxNQorbXNnaWQgIiIKKyJCPGRwa2ctc3BsaXQ+IHNwbGl0cyBEZWJpYW4gYmluYXJ5IHBhY2thZ2UgZmlsZXMgaW50byBzbWFsbGVyIHBhcnRzIGFuZCAiCisicmVhc3NlbWJsZXMgdGhlbSBhZ2FpbiwgdG8gc3VwcG9ydCB0aGUgc3RvcmFnZSBvZiBsYXJnZSBwYWNrYWdlIGZpbGVzIG9uICIKKyJzbWFsbCBtZWRpYSBzdWNoIGFzIGZsb3BweSBkaXNrcy4iCittc2dzdHIgIiIKKyJCPGRwa2ctc3BsaXQ+IGTDqWNvbXBvc2UgbGVzIGZpY2hpZXJzIGQndW4gcGFxdWV0IGJpbmFpcmUgRGViaWFuIGVuIHBhcnRpZXMgIgorInBsdXMgcGV0aXRlcyAoZXQgbGVzIHJlY29tcG9zZSksIHBvdXIgcGVybWV0dHJlIGwnZW5yZWdpc3RyZW1lbnQgZGVzICIKKyJmaWNoaWVycyBkJ3VuIHBhcXVldCB2b2x1bWluZXV4IHN1ciBkZXMgbcOpZGlhIGRlIGZhaWJsZSBjYXBhY2l0w6kgdGVscyBxdWUgIgorImxlcyBkaXNxdWV0dGVzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjE5Cittc2dpZCAiIgorIkl0IGNhbiBiZSBvcGVyYXRlZCBtYW51YWxseSB1c2luZyB0aGUgQjwtLXNwbGl0PiwgQjwtLWpvaW4+IGFuZCBCPC0taW5mbz4gIgorIm9wdGlvbnMuIgorbXNnc3RyICIiCisiT24gcGV1dCBzJ2VuIHNlcnZpciDCq8Kgw6AgbGEgbWFpbsKgwrsgYXZlYyBsZXMgb3B0aW9ucyBCPC0tc3BsaXQ+LCBCPC0tam9pbj4gZXQgIgorIkI8LS1pbmZvPi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToyNworbXNnaWQgIiIKKyJJdCBhbHNvIGhhcyBhbiBhdXRvbWF0aWMgbW9kZSwgaW52b2tlZCB1c2luZyB0aGUgQjwtLWF1dG8+IG9wdGlvbiwgd2hlcmUgaXQgIgorIm1haW50YWlucyBhIHF1ZXVlIG9mIHBhcnRzIHNlZW4gYnV0IG5vdCB5ZXQgcmVhc3NlbWJsZWQgYW5kIHJlYXNzZW1ibGVzIGEgIgorInBhY2thZ2UgZmlsZSB3aGVuIGl0IGhhcyBzZWVuIGFsbCBvZiBpdHMgcGFydHMuIFRoZSBCPC0tbGlzdHE+IGFuZCBCPC0tIgorImRpc2NhcmQ+IG9wdGlvbnMgYWxsb3cgdGhlIG1hbmFnZW1lbnQgb2YgdGhlIHF1ZXVlLiIKK21zZ3N0ciAiIgorIklsIHBvc3PDqGRlIGF1c3NpIHVuIG1vZGUgYXV0b21hdGlxdWUsIGFwcGVsw6kgYXZlYyBsJ29wdGlvbiBCPC0tYXV0bz4sIGRhbnMgIgorImxlcXVlbCBpbCBjb25zZXJ2ZSBzw6lwYXLDqW1lbnQgZGFucyB1bmUgZmlsZSBsZXMgcGFydGllcyBjb25udWVzIG91IHJlY29tcG9zZSAiCisibGUgZmljaGllciBkJ3VuIHBhcXVldCBxdWFuZCBpbCBjb25uYcOudCB0b3V0ZXMgc2VzIHBhcnRpZXMuIExlcyBvcHRpb25zIEI8LS0iCisibGlzdHE+IGV0IEI8LS1kaXNjYXJkPiBwZXJtZXR0ZW50IGxhIGdlc3Rpb24gZGUgY2V0dGUgZmlsZS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMTozMAorbXNnaWQgIiIKKyJBbGwgc3BsaXR0aW5nLCBqb2luaW5nIGFuZCBxdWV1ZWluZyBvcGVyYXRpb25zIHByb2R1Y2UgaW5mb3JtYXRpdmUgbWVzc2FnZXMgIgorIm9uIHN0YW5kYXJkIG91dHB1dDsgdGhlc2UgbWF5IHNhZmVseSBiZSBpZ25vcmVkLiIKK21zZ3N0ciAiIgorIlRvdXRlcyBsZXMgb3DDqXJhdGlvbnMgZGUgZMOpY29tcG9zaXRpb24sIHJlY29tcG9zaXRpb24gb3UgZGUgbWlzZSBlbiBmaWxlICIKKyJwcm9kdWlzZW50IGRlcyBtZXNzYWdlcyBzdXIgbGEgc29ydGllIHN0YW5kYXJkwqA7IGlscyBwZXV2ZW50IMOqdHJlICIKKyJ0cmFucXVpbGxlbWVudCBpZ25vcsOpcy4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNwbGl0LjE6MzIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1zPiwgQjwtLXNwbGl0PiBJPGNvbXBsZXRlLWFyY2hpdmU+IFtJPHByZWZpeD5dIgorbXNnc3RyICJCPC1zPiwgQjwtLXNwbGl0PiBJPGFyY2hpdmUtY29tcGzDqHRlPiBbSTxwcsOpZml4ZT5dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MzUKK21zZ2lkICJTcGxpdHMgYSBzaW5nbGUgRGViaWFuIGJpbmFyeSBwYWNrYWdlIGludG8gc2V2ZXJhbCBwYXJ0cy4iCittc2dzdHIgIkTDqWNvbXBvc2UgZW4gcGx1c2lldXJzIHBhcnRpZXMgdW4gcGFxdWV0IGJpbmFpcmUgRGViaWFuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjQzCittc2dpZCAiIgorIlRoZSBwYXJ0cyBhcmUgbmFtZWQgSTxwcmVmaXg+QjwuPkk8Tj5CPG9mPkk8TT5CPC5kZWI+IHdoZXJlIEk8Tj4gaXMgdGhlIHBhcnQgIgorIm51bWJlciwgc3RhcnRpbmcgYXQgMSwgYW5kIEk8TT4gaXMgdGhlIHRvdGFsIG51bWJlciBvZiBwYXJ0cyAoYm90aCBpbiAiCisiZGVjaW1hbCkuIgorbXNnc3RyICIiCisiTGUgbm9tIGQndW5lIHBhcnRpZSBlc3TCoDogSTxwcsOpZml4ZT5CPC4+STxOPkI8ZGU+STxNPkI8LmRlYj4gb8O5IEk8Tj4gbGUgIgorIm51bcOpcm8gZGUgcGFydGllLCBjb21tZW7Dp2FudCDDoCAxLCBldCBJPE0+IGVzdCBsZSBub21icmUgdG90YWwgZGUgcGFydGllcyAiCisiKGxlcyBkZXV4IHNvbnQgZGVzIGTDqWNpbWF1eCkuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6NTEKK21zZ2lkICIiCisiSWYgbm8gSTxwcmVmaXg+IGlzIHN1cHBsaWVkIHRoZW4gdGhlIEk8Y29tcGxldGUtYXJjaGl2ZT4gZmlsZW5hbWUgaXMgdGFrZW4sICIKKyJpbmNsdWRpbmcgZGlyZWN0b3J5LCB3aXRoIGFueSB0cmFpbGluZyBCPC5kZWI+IHJlbW92ZWQuIgorbXNnc3RyICIiCisiUXVhbmQgb24gbmUgZG9ubmUgcGFzIGRlIEk8cHLDqWZpeGU+LCBsZSBub20gZHUgZmljaGllciBJPGFyY2hpdmUtY29tcGzDqHRlPiAiCisiZXN0IHV0aWxpc8OpLCBlbiBpbmNsdWFudCBsZSByw6lwZXJ0b2lyZSBldCBlbiBzdXBwcmltYW50IHRvdXQgQjwuZGViPiByZXN0YW50LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc3BsaXQuMTo1MQorIywgbm8td3JhcAorbXNnaWQgIkI8LWo+LCBCPC0tam9pbj4gSTxwYXJ0Pi4uLiIKK21zZ3N0ciAiQjwtaj4sIEI8LS1qb2luPiBJPHBhcnRpZT4uLi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMTo1NQorbXNnaWQgIiIKKyJKb2lucyB0aGUgcGFydHMgb2YgYSBwYWNrYWdlIGZpbGUgdG9nZXRoZXIsIHJlYXNzZW1ibGluZyB0aGUgb3JpZ2luYWwgZmlsZSAiCisiYXMgaXQgd2FzIGJlZm9yZSBpdCB3YXMgc3BsaXQuIgorbXNnc3RyICIiCisiUmFzc2VtYmxlIGxlcyBwYXJ0aWVzIGQndW4gZmljaGllciwgcmVjb21wb3NhbnQgYWluc2kgbGUgZmljaGllciBkJ29yaWdpbmUgIgorInRlbCBxdSdpbCDDqXRhaXQgYXZhbnQgbGEgZMOpY29tcG9zaXRpb24uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6NTkKK21zZ2lkICIiCisiVGhlIHBhcnQgZmlsZXMgZ2l2ZW4gYXMgYXJndW1lbnRzIG11c3QgYmUgYWxsIHRoZSBwYXJ0cyBvZiBleGFjdGx5IHRoZSBzYW1lICIKKyJvcmlnaW5hbCBiaW5hcnkgZmlsZS4gRWFjaCBwYXJ0IG11c3Qgb2NjdXIgZXhhY3RseSBvbmNlIGluIHRoZSBhcmd1bWVudCAiCisibGlzdCwgdGhvdWdoIHRoZSBwYXJ0cyB0byBub3QgbmVlZCB0byBiZSBsaXN0ZWQgaW4gb3JkZXIuIgorbXNnc3RyICIiCisiQ2VzIHBhcnRpZXMsIGRvbm7DqWVzIGNvbW1lIGFyZ3VtZW50cywgZG9pdmVudCBhcHBhcnRlbmlyIHRvdXRlcyBhdSBtw6ptZSAiCisiZmljaGllciBiaW5haXJlIGQnb3JpZ2luZS4gQ2hhcXVlIHBhcnRpZSBuZSBkb2l0IGFwcGFyYcOudHJlIHF1J3VuZSBzZXVsZSAiCisiZm9pcyBkYW5zIGxhIGxpc3RlIGRlcyBhcmd1bWVudHPCoDsgbWFpcyBpbCBlc3QgaW51dGlsZSBkZSBsZXMgb3Jkb25uZXIuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6NjQKK21zZ2lkICIiCisiVGhlIHBhcnRzIG11c3Qgb2YgY291cnNlIGFsbCBoYXZlIGJlZW4gZ2VuZXJhdGVkIHdpdGggdGhlIHNhbWUgcGFydCBzaXplICIKKyJzcGVjaWZpZWQgYXQgc3BsaXQgdGltZSwgd2hpY2ggbWVhbnMgdGhhdCB0aGV5IG11c3QgdXN1YWxseSBoYXZlIGJlZW4gIgorImdlbmVyYXRlZCBieSB0aGUgc2FtZSBpbnZvY2F0aW9uIG9mIEI8ZHBrZy1zcGxpdCAtLXNwbGl0Pi4iCittc2dzdHIgIiIKKyJMZXMgcGFydGllcyBkb2l2ZW50IGJpZW4gc8O7ciBhdm9pciDDqXTDqSBjcsOpw6llcyBzZWxvbiBsZSBtw6ptZSBtb2TDqGxlICh0YWlsbGUgIgorIm1heGltdW0gZGVzIHBhcnRpZXMpLCBxdWkgZXN0IGTDqWNsYXLDqSBhdSBtb21lbnQgZGUgbGEgZMOpY29tcG9zaXRpb27CoDsgY2UgcXVpICIKKyJzaWduaWZpZSBlbiBmYWl0IHF1J2VsbGVzIGRvaXZlbnQgYXZvaXIgw6l0w6kgY3LDqcOpZXMgcGFyIGxlIG3Dqm1lIGFwcGVsIMOgICIKKyJCPGRwa2ctc3BsaXQgLS1zcGxpdD4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6NjYKK21zZ2lkICJUaGUgcGFydHMnIGZpbGVuYW1lcyBhcmUgbm90IHNpZ25pZmljYW50IGZvciB0aGUgcmVhc3NlbWJseSBwcm9jZXNzLiIKK21zZ3N0ciAiIgorIkxlcyBwYXJ0aWVzIGRlcyBub21zIG5lIHNvbnQgcGFzIHNpZ25pZmljYXRpdmVzIHBvdXIgbGUgcHJvY2Vzc3VzIGRlICIKKyJyZWNvbXBvc2l0aW9uLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjY5CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJCeSBkZWZhdWx0IHRoZSBvdXRwdXQgZmlsZSBpcyBjYWxsZWQgSTxwYWNrYWdlPkI8LT5JPHZlcnNpb24+QjwuZGViPi4iCittc2dpZCAiIgorIkJ5IGRlZmF1bHQgdGhlIG91dHB1dCBmaWxlIGlzIGNhbGxlZCBJPHBhY2thZ2U+QjxfPkk8dmVyc2lvbj5CPF8+STxhcmNoPkI8LiIKKyJkZWI+LiIKK21zZ3N0ciAiIgorIlBhciBkw6lmYXV0LCBsZSBmaWNoaWVyIHByb2R1aXQgcydhcHBlbGxlwqA6IEk8cGFxdWV0PkI8LT5JPHZlcnNpb24+QjwuZGViPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNwbGl0LjE6NzAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1JPiwgQjwtLWluZm8+IEk8cGFydD4uLi4iCittc2dzdHIgIkI8LUk+LCBCPC0taW5mbz4gSTxwYXJ0aWU+Li4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6NzUKK21zZ2lkICIiCisiUHJpbnRzIGluZm9ybWF0aW9uLCBpbiBhIGh1bWFuLXJlYWRhYmxlIGZvcm1hdCwgYWJvdXQgdGhlIHBhcnQgZmlsZShzKSAgIgorInNwZWNpZmllZC4gQXJndW1lbnRzIHdoaWNoIGFyZSBub3QgYmluYXJ5IHBhY2thZ2UgcGFydHMgcHJvZHVjZSBhIG1lc3NhZ2UgIgorInNheWluZyBzbyBpbnN0ZWFkIChidXQgc3RpbGwgb24gc3RhbmRhcmQgb3V0cHV0KS4iCittc2dzdHIgIiIKKyJBZmZpY2hlIGxlcyByZW5zZWlnbmVtZW50cyBjb25jZXJuYW50IHRlbGxlIHBhcnRpZSBkYW5zIHVuIGZvcm1hdCBsaXNpYmxlICIKKyJwYXIgdG91cy4gTGVzIGFyZ3VtZW50cyBuZSByZXByw6lzZW50YW50IHBhcyBsYSBwYXJ0aWUgZCd1biBmaWNoaWVyIGJpbmFpcmUgIgorImxlIGRpc2VudCBhdXNzaSBzdXIgbGEgc29ydGllIHN0YW5kYXJkLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc3BsaXQuMTo3NQorIywgbm8td3JhcAorbXNnaWQgIkI8LWE+LCBCPC0tYXV0byAtbz4gSTxjb21wbGV0ZS1vdXRwdXQgcGFydD4iCittc2dzdHIgIkI8LWE+LCBCPC0tYXV0byAtbz4gSTxmaWNoaWVyLWNvbXBsZXQgcGFydGllPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjc4Cittc2dpZCAiQXV0b21hdGljYWxseSBxdWV1ZSBwYXJ0cyBhbmQgcmVhc3NlbWJsZSBhIHBhY2thZ2UgaWYgcG9zc2libGUuIgorbXNnc3RyICIiCisiTWV0IGVuIGZpbGUgYXV0b21hdGlxdWVtZW50IGxlcyBwYXJ0aWVzIGVuIHZ1ZSBkZSBsYSByZWNvbXBvc2l0aW9uIGQndW4gIgorInBhcXVldC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMTo4MworbXNnaWQgIiIKKyJUaGUgSTxwYXJ0PiBzcGVjaWZpZWQgaXMgZXhhbWluZWQsIGFuZCBjb21wYXJlZCB3aXRoIG90aGVyIHBhcnRzIG9mIHRoZSBzYW1lICIKKyJwYWNrYWdlIChpZiBhbnkpIGluIHRoZSBxdWV1ZSBvZiBwYWNrYWdlcyBmaWxlIHBhcnRzLiIKK21zZ3N0ciAiIgorIkxhIEk8cGFydGllPiBkw6ljbGFyw6llIGVzdCBleGFtaW7DqWUgZXQgY29tcGFyw6llIGF2ZWMgbGVzIGF1dHJlcyBwYXJ0aWVzIGR1ICIKKyJtw6ptZSBwYXF1ZXQgcXVpIHNlIHRyb3V2ZW50IChzaSBlbGxlcyBleGlzdGVudCkgZGFucyBsYSBmaWxlLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjkwCittc2dpZCAiIgorIklmIGFsbCBwYXJ0cyBvZiB0aGUgcGFja2FnZSBmaWxlIG9mIHdoaWNoIEk8cGFydD4gaXMgYSBwYXJ0IGFyZSBhdmFpbGFibGUgIgorInRoZW4gdGhlIHBhY2thZ2UgaXMgcmVhc3NlbWJsZWQgYW5kIHdyaXR0ZW4gdG8gSTxjb21wbGV0ZS1vdXRwdXQ+ICh3aGljaCAiCisic2hvdWxkIG5vdCB1c3VhbGx5IGFscmVhZHkgZXhpc3QsIHRob3VnaCB0aGlzIGlzIG5vdCBhbiBlcnJvcikuIgorbXNnc3RyICIiCisiUXVhbmQgdG91dGVzIGxlcyBwYXJ0aWVzIGQndW4gZmljaGllciAoYXVxdWVsIGFwcGFydGllbnQgbGEgcGFydGllIEk8cGFydD4pICIKKyJzb250IHByw6lzZW50ZXMsIGxlIGZpY2hpZXIgZXN0IHJlY29tcG9zw6kgZXQgY3LDqcOpIGVuIHRhbnQgcXVlIEk8ZmljaGllci0iCisiY29tcGxldD4gKGNlIGZpY2hpZXIgbmUgZGV2cmFpdCBwYXMgZMOpasOgIGV4aXN0ZXIsIG1haXMgY2Ugbidlc3QgcGFzIHVuZSAiCisiZXJyZXVyKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMTo5NgorbXNnaWQgIiIKKyJJZiBub3QgdGhlbiB0aGUgSTxwYXJ0PiBpcyBjb3BpZWQgaW50byB0aGUgcXVldWUgYW5kIEk8Y29tcGxldGUtb3V0cHV0PiBpcyAiCisibm90IGNyZWF0ZWQuIgorbXNnc3RyICIiCisiUXVhbmQgY2Ugbidlc3QgcGFzIGxlIGNhcywgbGEgcGFydGllIEk8cGFydD4gZXN0IG1pc2UgZGFucyBsYSBmaWxlIGV0IGxlICIKKyJmaWNoaWVyIEk8ZmljaGllci1jb21wbGV0PiBuJ2VzdCBwYXMgY3LDqcOpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjEwMworIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiSWYgSTxwYXJ0PiBpcyBub3QgYSBzcGxpdCBiaW5hcnkgcGFja2FnZSBwYXJ0IHRoZW4gQjxkcGtnLXNwbGl0PiB3aWxsICIKKyN8ICJleGl0IHdpdGggc3RhdHVzIDE7IGlmIHNvbWUgb3RoZXIgdHJvdWJsZSBvY2N1cnMgdGhlbiBpdCB3aWxsIGV4aXQgd2l0aCAiCisjfCAic3RhdHVzIDIuIgorbXNnaWQgIiIKKyJJZiBJPHBhcnQ+IGlzIG5vdCBhIHNwbGl0IGJpbmFyeSBwYWNrYWdlIHBhcnQgdGhlbiBCPGRwa2ctc3BsaXQ+IHdpbGwgZXhpdCAiCisid2l0aCBzdGF0dXMgQjwxPjsgaWYgc29tZSBvdGhlciB0cm91YmxlIG9jY3VycyB0aGVuIGl0IHdpbGwgZXhpdCB3aXRoIHN0YXR1cyAiCisiQjwyPi4iCittc2dzdHIgIiIKKyJRdWFuZCBsYSBwYXJ0aWUgSTxwYXJ0PiBuJ2FwcGFydGllbnQgcGFzIMOgIHVuIHBhcXVldCBiaW5haXJlIGTDqWNvbXBvc8OpLCAiCisiQjxkcGtnLXNwbGl0PiBzZSB0ZXJtaW5lIGF2ZWMgdW4gY29kZSBkZSBzb3J0aWUgw6lnYWwgw6AgMcKgOyBzJ2lsIHkgYSB1bmUgIgorImF1dHJlIGVycmV1ciwgYydlc3QgdW4gY29kZSBkZSBzb3J0aWUgw6lnYWwgw6AgMi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxMTAKK21zZ2lkICIiCisiVGhlIEI8LS1vdXRwdXQ+IG9yIEI8LW8+IG9wdGlvbiBtdXN0IGJlIHN1cHBsaWVkIHdoZW4gdXNpbmcgQjwtLWF1dG8+LiAgKElmICIKKyJ0aGlzIHdlcmUgbm90IG1hbmRhdG9yeSB0aGUgY2FsbGluZyBwcm9ncmFtIHdvdWxkIG5vdCBrbm93IHdoYXQgb3V0cHV0IGZpbGUgIgorInRvIGV4cGVjdC4pIgorbXNnc3RyICIiCisiTCdvcHRpb24gQjwtLW91dHB1dD4gb3UgQjwtbz4gZG9pdCDDqnRyZSBmb3VybmllIGF2ZWMgbCdhY3Rpb24gQjwtLWF1dG8+LiBTaSAiCisiY2VsYSBuJ8OpdGFpdCBwYXMgb2JsaWdhdG9pcmUsIGxlIHByb2dyYW1tZSBhcHBlbGFudCBuZSBzYXVyYWl0IHBhcyBxdWVsICIKKyJmaWNoaWVyIGF0dGVuZHJlLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc3BsaXQuMToxMTAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1sPiwgQjwtLWxpc3RxPiIKK21zZ3N0ciAiQjwtbD4sIEI8LS1saXN0cT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxMTMKK21zZ2lkICJMaXN0cyB0aGUgY29udGVudHMgb2YgdGhlIHF1ZXVlIG9mIHBhY2thZ2VzIHRvIGJlIHJlYXNzZW1ibGVkLiIKK21zZ3N0ciAiTGlzdGUgbGUgY29udGVudSBkJ3VuZSBmaWxlIGRlIHBhcXVldHMgw6AgcmVjb21wb3Nlci4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxMTcKK21zZ2lkICIiCisiRm9yIGVhY2ggcGFja2FnZSBmaWxlIG9mIHdoaWNoIHBhcnRzIGFyZSBpbiB0aGUgcXVldWUgdGhlIG91dHB1dCBnaXZlcyB0aGUgIgorIm5hbWUgb2YgdGhlIHBhY2thZ2UsIHRoZSBwYXJ0cyBpbiB0aGUgcXVldWUsIGFuZCB0aGUgdG90YWwgbnVtYmVyIG9mIGJ5dGVzICIKKyJzdG9yZWQgaW4gdGhlIHF1ZXVlLiIKK21zZ3N0ciAiIgorIlBvdXIgY2hhcXVlIGZpY2hpZXIgcG9zc8OpZGFudCBkZXMgcGFydGllcyBkYW5zIGxhIGZpbGUsIGNldHRlIGFjdGlvbiBkb25uZSAiCisibGUgbm9tIGR1IGZpY2hpZXIsIGxlcyBwYXJ0aWVzIHByw6lzZW50ZXMgZGFucyBsYSBmaWxlIGV0IGxlIG5vbWJyZSB0b3RhbCAiCisiZCdvY3RldHMgY29uc2VydsOpcy4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNwbGl0LjE6MTE3CisjLCBuby13cmFwCittc2dpZCAiQjwtZD4sIEI8LS1kaXNjYXJkPiBbSTxwYWNrYWdlPi4uLl0iCittc2dzdHIgIkI8LWQ+LCBCPC0tZGlzY2FyZD4gW0k8cGFxdWV0Pi4uLl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxMjEKK21zZ2lkICIiCisiVGhpcyBkaXNjYXJkcyBwYXJ0cyBmcm9tIHRoZSBxdWV1ZSBvZiB0aG9zZSB3YWl0aW5nIGZvciB0aGUgcmVtYWluaW5nIHBhcnRzICIKKyJvZiB0aGVpciBwYWNrYWdlcy4iCittc2dzdHIgIiIKKyJDZXR0ZSBhY3Rpb24gbGFpc3NlIGRlIGPDtHTDqSBjZXJ0YWluZXMgcGFydGllcyBkYW5zIGxhIGZpbGUsIGNlbGxlcyBxdWkgc29udCAiCisiZW4gYXR0ZW50ZSBkZXMgYXV0cmVzIHBhcnRpZXMgY29tcG9zYW50IGxlIHBhcXVldC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxMjYKK21zZ2lkICIiCisiSWYgbm8gSTxwYWNrYWdlPiBpcyBzcGVjaWZpZWQgdGhlbiB0aGUgcXVldWUgaXMgY2xlYXJlZCBjb21wbGV0ZWx5OyBpZiBhbnkgIgorImFyZSBzcGVjaWZpZWQgdGhlbiBvbmx5IHBhcnRzIG9mIHRoZSByZWxldmFudCBwYWNrYWdlKHMpIGFyZSBkZWxldGVkLiIKK21zZ3N0ciAiIgorIlF1YW5kIGF1Y3VuIEk8cGFxdWV0PiBuJ2VzdCBkb25uw6ksIGxhIGZpbGUgZXN0IHZpZMOpZcKgOyBzaSB1biBwYXF1ZXQgZXN0ICIKKyJkb25uw6ksIHNldWxlcyBsZXMgcGFydGllcyBkZSBjZSBwYXF1ZXQgc29udCBkw6l0cnVpdGVzLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc3BsaXQuMToxMzQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tZGVwb3RkaXI+STwgZGlyZWN0b3J5PiIKK21zZ3N0ciAiQjwtLWRlcG90ZGlyPkk8IHLDqXBlcnRvaXJlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjEzOQorbXNnaWQgIiIKKyJTcGVjaWZpZXMgYW4gYWx0ZXJuYXRpdmUgZGlyZWN0b3J5IGZvciB0aGUgcXVldWUgb2YgcGFydHMgYXdhaXRpbmcgYXV0b21hdGljICIKKyJyZWFzc2VtYmx5LiBUaGUgZGVmYXVsdCBpcyBCPC92YXIvbGliL2Rwa2c+LiIKK21zZ3N0ciAiIgorIkluZGlxdWUgdW4gcsOpcGVydG9pcmUgZGlmZsOpcmVudCBwb3VyIGxhIGZpbGUgY29tcHJlbmFudCBsZXMgcGFydGllcyBlbiAiCisiYXR0ZW50ZSBkJ3VuZSByZWNvbXBvc2l0aW9uIGF1dG9tYXRpcXVlLiBQYXIgZMOpZmF1dCwgYydlc3QgbGUgcsOpcGVydG9pcmUgQjwvIgorInZhci9saWIvZHBrZz4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zcGxpdC4xOjEzOQorIywgbm8td3JhcAorbXNnaWQgIkI8LVM+LCBCPC0tcGFydHNpemU+IEk8a2liaWJ5dGVzPiIKK21zZ3N0ciAiQjwtUz4sIEI8LS1wYXJ0c2l6ZT4gSTxraWJpLW9jdGV0cz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxNDMKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRoZSBtYXhpbXVtIHBhcnQgc2l6ZSB3aGVuIHNwbGl0dGluZywgaW4ga2liaWJ5dGVzICgxMDI0IGJ5dGVzKS4gIgorIlRoZSBkZWZhdWx0IGlzIDQ1MCBLaUIuIgorbXNnc3RyICIiCisiSW5kaXF1ZSwgZW4ga2liaS1vY3RldHMgKDEwMjQgb2N0ZXRzKSwgbGEgdGFpbGxlIG1heGltdW0gZCd1bmUgcGFydGllIGxvcnMgIgorImQndW5lIGTDqWNvbXBvc2l0aW9uLiBQYXIgZMOpZmF1dCwgbGEgdGFpbGxlIG1heGltdW0gZXN0IGRlIDQ1MMKgS2lvLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc3BsaXQuMToxNDMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1vPiwgQjwtLW91dHB1dD4gSTxjb21wbGV0ZS1vdXRwdXQ+IgorbXNnc3RyICJCPC1vPiwgQjwtLW91dHB1dD4gSTxmaWNoaWVyLWNvbXBsZXQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTQ2Cittc2dpZCAiU3BlY2lmaWVzIHRoZSBvdXRwdXQgZmlsZSBuYW1lIGZvciBhIHJlYXNzZW1ibHkuIgorbXNnc3RyICJJbmRpcXVlIGxlIG5vbSBkdSBmaWNoaWVyIMOgIHByb2R1aXJlIHBvdXIgdW5lIHJlY29tcG9zaXRpb24uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTUxCittc2dpZCAiIgorIlRoaXMgb3ZlcnJpZGVzIHRoZSBkZWZhdWx0IGZvciBhIG1hbnVhbCByZWFzc2VtYmx5IChCPC0tam9pbj4pICBhbmQgaXMgIgorIm1hbmRhdG9yeSBmb3IgYW4gYXV0b21hdGljIHF1ZXVlLW9yLXJlYXNzZW1ibGUgKEI8LS1hdXRvPikuIgorbXNnc3RyICIiCisiQ2VsYSBhbm51bGUgbGUgZmljaGllciBwYXIgZMOpZmF1dCBsb3JzIGQndW5lIHJlY29tcG9zaXRpb24gwqvCoMOgIGxhICIKKyJtYWluwqDCuyAoQjwtLWpvaW4+KSBldCBjJ2VzdCBvYmxpZ2F0b2lyZSBwb3VyIHVuZSByZWNvbXBvc2l0aW9uIG91IHVuZSBtaXNlICIKKyJlbiBmaWxlIGF1dG9tYXRpcXVlcyAoQjwtLWF1dG8+KS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNwbGl0LjE6MTUxCisjLCBuby13cmFwCittc2dpZCAiQjwtUT4sIEI8LS1ucHF1aWV0PiIKK21zZ3N0ciAiQjwtUT4sIEI8LS1ucHF1aWV0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjE2MgorbXNnaWQgIiIKKyJXaGVuIGRvaW5nIGF1dG9tYXRpYyBxdWV1ZS1vci1yZWFzc2VtYmx5IEI8ZHBrZy1zcGxpdD4gdXN1YWxseSBwcmludHMgYSAiCisibWVzc2FnZSBpZiBpdCBpcyBnaXZlbiBhIEk8cGFydD4gdGhhdCBpcyBub3QgYSBiaW5hcnkgcGFja2FnZSBwYXJ0LiBUaGlzICIKKyJvcHRpb24gc3VwcHJlc3NlcyB0aGlzIG1lc3NhZ2UsIHRvIGFsbG93IHByb2dyYW1zIHN1Y2ggYXMgQjxkcGtnPiB0byBjb3BlICIKKyJ3aXRoIGJvdGggc3BsaXQgYW5kIHVuc3BsaXQgcGFja2FnZXMgd2l0aG91dCBwcm9kdWNpbmcgc3B1cmlvdXMgbWVzc2FnZXMuIgorbXNnc3RyICIiCisiUG91ciB1bmUgcmVjb21wb3NpdGlvbiBvdSB1bmUgbWlzZSBlbiBmaWxlIGF1dG9tYXRpcXVlcywgQjxkcGtnLXNwbGl0PiAiCisiYWZmaWNoZSBoYWJpdHVlbGxlbWVudCB1biBtZXNzYWdlIHNpIG9uIGx1aSBkb25uZSB1bmUgSTxwYXJ0aWU+IHF1aSBuJ2VzdCAiCisicGFzIHVuZSBwYXJ0aWUgZCd1biBwYXF1ZXQgYmluYWlyZS4gQ2V0dGUgb3B0aW9uIHN1cHByaW1lIGNlIG1lc3NhZ2XCoDsgY2VsYSAiCisicGVybWV0IMOgIGRlcyBwcm9ncmFtbWVzIGNvbW1lIEI8ZHBrZz4gZGUgbmUgcGFzIGFmZmljaGVyIGRlIGZhdXggbWVzc2FnZXMgIgorInF1YW5kIGlsIGVzdCBjb25mcm9udMOpIMOgIGRlcyBwYXF1ZXRzIGTDqWNvbXBvc8OpcyBldCBkZXMgcGFxdWV0cyBub24gIgorImTDqWNvbXBvc8Opcy4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNwbGl0LjE6MTYyCisjLCBuby13cmFwCittc2dpZCAiQjwtLW1zZG9zPiIKK21zZ3N0ciAiQjwtLW1zZG9zPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjE2NworbXNnaWQgIiIKKyJGb3JjZXMgdGhlIG91dHB1dCBmaWxlbmFtZXMgZ2VuZXJhdGVkIGJ5IEI8LS1zcGxpdD4gdG8gYmUgbXNkb3MtY29tcGF0aWJsZS4iCittc2dzdHIgIiIKKyJPYmxpZ2UgbGUgbm9tIGRlcyBmaWNoaWVycyBwcm9kdWl0cyBwYXIgQjwtLXNwbGl0PiDDoCBzZSBjb25mb3JtZXIgw6AgbXNkb3MuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTczCittc2dpZCAiIgorIlRoaXMgbWFuZ2xlcyB0aGUgcHJlZml4IC0gZWl0aGVyIHRoZSBkZWZhdWx0IGRlcml2ZWQgZnJvbSB0aGUgaW5wdXQgZmlsZW5hbWUgIgorIm9yIHRoZSBvbmUgc3VwcGxpZWQgYXMgYW4gYXJndW1lbnQ6IGFscGhhbnVtZXJpY3MgYXJlIGxvd2VyY2FzZWQsIHBsdXMgc2lnbnMgIgorImFyZSByZXBsYWNlZCBieSBCPHg+J3MgYW5kIGFsbCBvdGhlciBjaGFyYWN0ZXJzIGFyZSBkaXNjYXJkZWQuIgorbXNnc3RyICIiCisiQ2VsYSBzdXBwcmltZSBsZSBwcsOpZml4ZSAtIHNvaXQgY2VsdWkgcGFyIGTDqWZhdXQgZMOpcml2w6kgZHUgZmljaGllciBkJ2VudHLDqWUsICIKKyJzb2l0IGNlbHVpIGRvbm7DqSBjb21tZSBhcmd1bWVudMKgOiBsZXMgY2FyYWN0w6hyZXMgYWxwaGFudW3DqXJpcXVlcyBzb250IGVuICIKKyJtaW51c2N1bGVzLCBsZXMgc2lnbmVzIHBsdXMgc29udCByZW1wbGFjw6lzIHBhciBkZXMgQjx4PiBldCB0b3VzIGxlcyBhdXRyZXMgIgorImNhcmFjdMOocmVzIHNvbnQgYWJhbmRvbm7DqXMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTc4Cittc2dpZCAiIgorIlRoZSByZXN1bHQgaXMgdGhlbiB0cnVuY2F0ZWQgYXMgbXVjaCBhcyBpcyBuZWNlc3NhcnksIGFuZCBmaWxlbmFtZXMgb2YgdGhlICIKKyJmb3JtIEk8cHJlZml4Tj5CPG9mPkk8TT5CPC5kZWI+IGFyZSBnZW5lcmF0ZWQuIgorbXNnc3RyICIiCisibGUgcsOpc3VsdGF0IGVzdCBhbG9ycyB0cm9ucXXDqSBhdXRhbnQgcXVlIG7DqWNlc3NhaXJlIGV0IGRlcyBmaWNoaWVycyBkZSBsYSAiCisiZm9ybWXCoDogSTxwcmVmaXhOPkI8b2Y+STxNPkI8LmRlYj4gc29udCBjcsOpw6lzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjE4NgorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiQW4gZXhpdCBzdGF0dXMgb2YgMCBpbmRpY2F0ZXMgdGhhdCB0aGUgcmVxdWVzdGVkIHNwbGl0LCBtZXJnZSwgb3Igb3RoZXIgIgorI3wgImNvbW1hbmQgc3VjY2VlZGVkLiAgQjwtLWluZm8+IGNvbW1hbmRzIGNvdW50IGFzIHN1Y2Nlc3NmdWwgZXZlbiBpZiB0aGUgIgorI3wgImZpbGVzIGFyZSBub3QgYmluYXJ5IHBhY2thZ2UgcGFydHMuIgorbXNnaWQgIiIKKyJUaGUgcmVxdWVzdGVkIHNwbGl0LCBtZXJnZSwgb3Igb3RoZXIgY29tbWFuZCBzdWNjZWVkZWQuICBCPC0taW5mbz4gY29tbWFuZHMgIgorImNvdW50IGFzIHN1Y2Nlc3NmdWwgZXZlbiBpZiB0aGUgZmlsZXMgYXJlIG5vdCBiaW5hcnkgcGFja2FnZSBwYXJ0cy4iCittc2dzdHIgIiIKKyJVbiBjb2RlIGRlIHNvcnRpZSDDqWdhbCDDoCAwIHNpZ25pZmllIHF1ZSBsYSBkw6ljb21wb3NpdGlvbiBkZW1hbmTDqWUsIGxhICIKKyJyZWNvbXBvc2l0aW9uIG91IGJpZW4gdG91dGUgYXV0cmUgY29tbWFuZGUgYSByw6l1c3NpLiBMZXMgY29tbWFuZGVzIEI8LS1pbmZvPiAiCisicsOpdXNzaXNzZW50IHRvdWpvdXJzIG3Dqm1lIHNpIGxlcyBmaWNoaWVycyBuZSBzb250IHBhcyBkZXMgcGFydGllcyBkJ3VuICIKKyJwYXF1ZXQgYmluYWlyZS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxOTMKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIkFuIGV4aXQgc3RhdHVzIG9mIDEgb2NjdXJzIG9ubHkgd2l0aCBCPC0tYXV0bz4gYW5kIGluZGljYXRlcyB0aGF0IHRoZSAiCisjfCAiSTxwYXJ0PiBmaWxlIHdhcyBub3QgYSBiaW5hcnkgcGFja2FnZSBwYXJ0LiIKK21zZ2lkICIiCisiT25seSBvY2N1cnMgd2l0aCBCPC0tYXV0bz4gYW5kIGluZGljYXRlcyB0aGF0IHRoZSBJPHBhcnQ+IGZpbGUgd2FzIG5vdCBhICIKKyJiaW5hcnkgcGFja2FnZSBwYXJ0LiIKK21zZ3N0ciAiIgorIlVuIGNvZGUgZGUgc29ydGllIMOpZ2FsIMOgIDEgbmUgcGV1dCBhcHBhcmHDrnRyZSBxdSdhdmVjIGwnYWN0aW9uIEI8LS1hdXRvPiBldCAiCisic2lnbmFsZSBxdWUgbGUgZmljaGllciBJPHBhcnRpZT4gbidlc3QgcGFzIHVuZSBwYXJ0aWUgZCd1biBwYXF1ZXQgYmluYWlyZS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNwbGl0LjE6MTkzIHN0YXJ0LXN0b3AtZGFlbW9uLjg6Mjc1IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozNzgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPDI+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxOTgKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIkFuIGV4aXQgc3RhdHVzIG9mIDIgaW5kaWNhdGVzIHNvbWUga2luZCBvZiB0cm91YmxlLCBzdWNoIGFzIGEgc3lzdGVtIGNhbGwgIgorI3wgImZhaWx1cmUsIGEgZmlsZSB0aGF0IGxvb2tlZCBsaWtlIGEgcGFja2FnZSBwYXJ0IGZpbGUgYnV0IHdhcyBjb3JydXB0ZWQsIGEgIgorI3wgInVzYWdlIGVycm9yIG9yIHNvbWUgb3RoZXIgcHJvYmxlbS4iCittc2dpZCAiIgorIlNvbWUga2luZCBvZiB0cm91YmxlIGhhcHBlbmVkLCBzdWNoIGFzIGEgc3lzdGVtIGNhbGwgZmFpbHVyZSwgYSBmaWxlIHRoYXQgIgorImxvb2tlZCBsaWtlIGEgcGFja2FnZSBwYXJ0IGZpbGUgYnV0IHdhcyBjb3JydXB0ZWQsIGEgdXNhZ2UgZXJyb3Igb3Igc29tZSAiCisib3RoZXIgcHJvYmxlbS4iCittc2dzdHIgIiIKKyJVbiBjb2RlIGRlIHNvcnRpZSDDqWdhbCDDoCAyIHNpZ25hbGUgZGVzIHByb2Jsw6htZXMsIGNvbW1lIGwnw6ljaGVjIGQndW4gYXBwZWwgIgorInN5c3TDqG1lLCBvdSB1biBmaWNoaWVyIHF1aSwgYmllbiBxdWUgcmVzc2VtYmxhbnQgw6AgdW5lIHBhcnRpZSBkZSBmaWNoaWVyLCAiCisiZXN0IGTDqWZlY3R1ZXV4LCBvdSBiaWVuIHVuZSBlcnJldXIgZCd1dGlsaXNhdGlvbiwgZXRjLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjIwMgorbXNnaWQgIiIKKyJGdWxsIGRldGFpbHMgb2YgdGhlIHBhY2thZ2VzIGluIHRoZSBxdWV1ZSBhcmUgaW1wb3NzaWJsZSB0byBnZXQgd2l0aG91dCAiCisiZGlnZ2luZyBpbnRvIHRoZSBxdWV1ZSBkaXJlY3RvcnkgeW91cnNlbGYuIgorbXNnc3RyICIiCisiT24gbmUgcGV1dCBwYXMgb2J0ZW5pciB0b3VzIGxlcyBkw6l0YWlscyB2b3VsdXMgc3VyIGxlcyBwYXF1ZXRzIHByw6lzZW50cyBkYW5zICIKKyJsYSBmaWxlIMOgIG1vaW5zIGQnYWxsZXIgdm9pciBzb2ktbcOqbWUgZGFucyBsZSByw6lwZXJ0b2lyZSBkZSBsYSBmaWxlLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjIwNQorbXNnaWQgIiIKKyJUaGVyZSBpcyBubyBlYXN5IHdheSB0byB0ZXN0IHdoZXRoZXIgYSBmaWxlIHRoYXQgbWF5IGJlIGEgYmluYXJ5IHBhY2thZ2UgIgorInBhcnQgaXMgb25lLiIKK21zZ3N0ciAiIgorIk9uIG5lIHBldXQgcGFzIGZhY2lsZW1lbnQgc2F2b2lyIHNpIHVuIGZpY2hpZXIgZXN0IHZyYWltZW50IGxhIHBhcnRpZSBkJ3VuICIKKyJwYXF1ZXQgYmluYWlyZSBvdSBub24uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zcGxpdC4xOjIwNworIywgbm8td3JhcAorbXNnaWQgIkk8L3Zhci9saWIvZHBrZy9wYXJ0cz4iCittc2dzdHIgIkk8L3Zhci9saWIvZHBrZy9wYXJ0cz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToyMTEKK21zZ2lkICIiCisiVGhlIGRlZmF1bHQgcXVldWUgZGlyZWN0b3J5IGZvciBwYXJ0IGZpbGVzIGF3YWl0aW5nIGF1dG9tYXRpYyByZWFzc2VtYmx5LiIKK21zZ3N0ciAiIgorIkxlIHLDqXBlcnRvaXJlIHBhciBkw6lmYXV0IGRlIGxhIGZpbGUgY29udGVuYW50IGxlcyBmaWNoaWVycyBxdWkgYXR0ZW5kZW50IHVuZSAiCisicmVjb21wb3NpdGlvbiBhdXRvbWF0aXF1ZS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToyMTYKK21zZ2lkICIiCisiVGhlIGZpbGVuYW1lcyB1c2VkIGluIHRoaXMgZGlyZWN0b3J5IGFyZSBpbiBhIGZvcm1hdCBpbnRlcm5hbCB0byBCPGRwa2ctIgorInNwbGl0PiBhbmQgYXJlIHVubGlrZWx5IHRvIGJlIHVzZWZ1bCB0byBvdGhlciBwcm9ncmFtcywgYW5kIGluIGFueSBjYXNlIHRoZSAiCisiZmlsZW5hbWUgZm9ybWF0IHNob3VsZCBub3QgYmUgcmVsaWVkIHVwb24uIgorbXNnc3RyICIiCisiTGVzIG5vbXMgZGUgZmljaGllcnMgdXRpbGlzw6lzIGRhbnMgY2UgcsOpcGVydG9pcmUgc29udCBkYW5zIHVuIGZvcm1hdCAiCisicGFydGljdWxpZXIgw6AgQjxkcGtnLXNwbGl0PiBldCBuZSBzb250IHNhbnMgZG91dGUgcGFzIHV0aWxlcyBwb3VyIGQnYXV0cmVzICIKKyJwcm9ncmFtbWVzwqA7IGVuIHRvdXMgY2FzIG9uIG5lIHBldXQgcGFzIGNvbXB0ZXIgc3VyIGNlIGZvcm1hdCBkZSBub20gZGUgIgorImZpY2hpZXIuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MjIyCittc2dpZCAiQjxkZWI+KDUpLCBCPGRlYi1jb250cm9sPig1KSwgQjxkcGtnLWRlYj4oMSksIEI8ZHBrZz4oMSkuIgorbXNnc3RyICJCPGRlYj4oNSksIEI8ZGViLWNvbnRyb2w+KDUpLCBCPGRwa2ctZGViPigxKSwgQjxkcGtnPigxKS4iCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLXN0YXRvdmVycmlkZSIKK21zZ3N0ciAiZHBrZy1zdGF0b3ZlcnJpZGUiCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjEKKyMsIG5vLXdyYXAKK21zZ2lkICJEZWJpYW4gcHJvamVjdCIKK21zZ3N0ciAiUHJvamV0IERlYmlhbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo0Cittc2dpZCAiZHBrZy1zdGF0b3ZlcnJpZGUgLSBvdmVycmlkZSBvd25lcnNoaXAgYW5kIG1vZGUgb2YgZmlsZXMiCittc2dzdHIgImRwa2ctc3RhdG92ZXJyaWRlIC0gYW5udWxlciBsYSBwcm9wcmnDqXTDqSBldCBsZSBtb2RlIGRlcyBmaWNoaWVycyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo4CisjLCBmdXp6eQorI3wgbXNnaWQgIkI8ZHBrZy1zdGF0b3ZlcnJpZGU+IFtJPG9wdGlvbnM+XSBJPGNvbW1hbmQ+IgorbXNnaWQgIkI8ZHBrZy1zdGF0b3ZlcnJpZGU+IFtJPG9wdGlvbj4uLi5dIEk8Y29tbWFuZD4iCittc2dzdHIgIkI8ZHBrZy1zdGF0b3ZlcnJpZGU+IFtJPG9wdGlvbnM+XSBJPGNvbW1hbmRlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODoxOAorbXNnaWQgIiIKKyJgQjxzdGF0IG92ZXJyaWRlcz4nIGFyZSBhIHdheSB0byB0ZWxsIEI8ZHBrZz4oMSkgIHRvIHVzZSBhIGRpZmZlcmVudCBvd25lciAiCisib3IgbW9kZSBmb3IgYSBmaWxlIHdoZW4gYSBwYWNrYWdlIGlzIGluc3RhbGxlZC4gKG5vdGU6IEkgdXNlIHRoZSB3b3JkIGBmaWxlJyAiCisiaGVyZSwgYnV0IGluIHJlYWxpdHkgdGhpcyBjYW4gYmUgYW55IGZpbGVzeXN0ZW0gb2JqZWN0IHRoYXQgZHBrZyBoYW5kbGVzLCAiCisiaW5jbHVkaW5nIGRpcmVjdG9yaWVzLCBkZXZpY2VzLCBldGMuKS4gVGhpcyBjYW4gYmUgdXNlZCB0byBmb3JjZSBwcm9ncmFtcyAiCisidGhhdCBhcmUgbm9ybWFsbHkgc2V0dWlkIHRvIGJlIGluc3RhbGwgd2l0aG91dCBhIHNldHVpZCBmbGFnLCBvciBvbmx5ICIKKyJleGVjdXRhYmxlIGJ5IGEgY2VydGFpbiBncm91cC4iCittc2dzdHIgIiIKKyJMZXMgwqvCoEI8ZMOpcm9nYXRpb25zIGF1IHN0YXR1dD7CoMK7IHNvbnQgdW5lIGZhw6dvbiBkZSBkZW1hbmRlciDDoCBCPGRwa2c+KDEpIGRlICIKKyJjaGFuZ2VyIGxlIHByb3ByacOpdGFpcmUgb3UgbGUgbW9kZSBkJ3VuIGZpY2hpZXIgbG9ycyBkZSBsJ2luc3RhbGxhdGlvbiBkJ3VuICIKKyJwYXF1ZXQuIChOb3RlwqA6IGplIGRpcyDCq8KgZmljaGllcsKgwrsgaWNpLCBtYWlzIGNlbGEgcGV1dCDDqnRyZSBlbiByw6lhbGl0w6kgIgorIm4naW1wb3J0ZSBxdWVsIHN5c3TDqG1lIGRlIGZpY2hpZXJzIGfDqXJhYmxlIHBhciBEcGtnLCBwYXIgZXhlbXBsZSwgZGVzICIKKyJyw6lwZXJ0b2lyZXMsIGRlcyBww6lyaXBow6lyaXF1ZXMsIGV0Yy4pIE9uIHBldXQgcydlbiBzZXJ2aXIgcG91ciBmb3JjZXIgIgorImwnaW5zdGFsbGF0aW9uIGRlIHByb2dyYW1tZXMgcXVpIHNvbnQgbm9ybWFsZW1lbnQgwqvCoHNldHVpZMKgwrsgc2FucyBjZSBkcmFwZWF1ICIKKyLCq8Kgc2V0dWlkwqDCuywgb3UgcG91ciBsZXMgcmVuZHJlIGV4w6ljdXRhYmxlcyBzZXVsZW1lbnQgcGFyIHVuIGdyb3VwZSBkb25uw6kuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjIyCittc2dpZCAiIgorIkI8ZHBrZy1zdGF0b3ZlcnJpZGU+IGlzIGEgdXRpbGl0eSB0byBtYW5hZ2UgdGhlIGxpc3Qgb2Ygc3RhdCBvdmVycmlkZXMuIEl0ICIKKyJoYXMgdGhyZWUgYmFzaWMgZnVuY3Rpb25zOiBhZGRpbmcsIHJlbW92aW5nIGFuZCBsaXN0aW5nIG92ZXJyaWRlcy4iCittc2dzdHIgIiIKKyJCPGRwa2ctc3RhdG92ZXJyaWRlPiBlc3QgdW4gdXRpbGl0YWlyZSBwb3VyIGfDqXJlciBsYSBsaXN0ZSBkZXMgZMOpcm9nYXRpb25zLiAiCisiSWwgcG9zc8OoZGUgdHJvaXMgZm9uY3Rpb25zIMOpbMOpbWVudGFpcmVzwqA6IGwnYWpvdXQsIGxhIHN1cHByZXNzaW9uIGV0IGxlICIKKyJsaXN0YWdlIGRlcyBkw6lyb2dhdGlvbnMuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODoyNAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1hZGQ+STwgdXNlciBncm91cCBtb2RlIGZpbGU+IgorbXNnc3RyICJCPC0tYWRkPkk8IHV0aWxpc2F0ZXVyIGdyb3VwZSBtb2RlIGZpY2hpZXI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjMyCittc2dpZCAiIgorIkFkZCBhbiBvdmVycmlkZSBmb3IgSTxmaWxlPi4gSTxmaWxlPiBkb2VzIG5vdCBuZWVkIHRvIGV4aXN0IHdoZW4gdGhpcyAiCisiY29tbWFuZCBpcyB1c2VkOyB0aGUgb3ZlcnJpZGUgd2lsbCBiZSBzdG9yZWQgYW5kIHVzZWQgbGF0ZXIuICBVc2VycyBhbmQgIgorImdyb3VwcyBjYW4gYmUgc3BlY2lmaWVkIGJ5IHRoZWlyIG5hbWUgKGZvciBleGFtcGxlIEI8cm9vdD4gb3IgQjxub2JvZHk+KSwgb3IgIgorImJ5IHRoZWlyIG51bWJlciBieSBwcmVwZW5kaW5nIHRoZSBudW1iZXIgd2l0aCBhIGBCPCM+JyAoZm9yIGV4YW1wbGUgQjwjMD4gb3IgIgorIkI8IzY1NTM0PikuIFRoZSBJPG1vZGU+IG5lZWRzIHRvIGJlIHNwZWNpZmllZCBpbiBvY3RhbC4iCittc2dzdHIgIiIKKyJBam91dGUgdW5lIGTDqXJvZ2F0aW9uICjCq8Kgb3ZlcnJpZGXCoMK7KSBwb3VyIEk8ZmljaGllcj4uIEk8ZmljaGllcj4gbidhIHBhcyAiCisiYmVzb2luIGQnZXhpc3RlciBxdWFuZCBjZXR0ZSBjb21tYW5kZSBlc3QgdXRpbGlzw6llwqA7IGxhIGTDqXJvZ2F0aW9uIGVzdCAiCisic3RvY2vDqWUgZXQgdXRpbGlzw6llIHBhciBsYSBzdWl0ZS4gTGVzIHV0aWxpc2F0ZXVycyBvdSBsZXMgZ3JvdXBlcyBwZXV2ZW50ICIKKyLDqnRyZSBpbmRpcXXDqXMgcGFyIGxldXIgbm9tIChwYXIgZXhlbXBsZSBCPHJvb3Q+IG91IEI8bm9ib2R5PiksIG91IGJpZW4gcGFyICIKKyJsZXVyIG51bcOpcm8sIGVuIHByw6lmaXhhbnQgY2UgbnVtw6lybyBwYXIgbGUgY2FyYWN0w6hyZSDCq8KgQjwjPsKgwrsgKHBhciBleGVtcGxlLCAiCisiQjwjMD4gb3UgQjwjNjU1MzQ+KS4gTGUgSTxtb2RlPiBkb2l0IMOqdHJlIGluZGlxdcOpIGVuIG51bcOpcm90YXRpb24gb2N0YWxlLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODozNQorbXNnaWQgIiIKKyJJZiAtLXVwZGF0ZSBpcyBzcGVjaWZpZWQgYW5kIEk8ZmlsZT4gZXhpc3RzLCBpdCBpcyBpbW1lZGlhdGVseSBzZXQgdG8gdGhlICIKKyJuZXcgb3duZXIgYW5kIG1vZGUuIgorbXNnc3RyICIiCisiU2kgLS11cGRhdGUgZXN0IHV0aWxpc8OpZSBldCBzaSBJPGZpY2hpZXI+IGV4aXN0ZSwgbGUgZmljaGllciBvYnRpZW50IHVuICIKKyJub3V2ZWF1IHByb3ByacOpdGFpcmUgZXQgdW4gbm91dmVhdSBtb2RlLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODozOQorbXNnaWQgIiIKKyJSZW1vdmUgYW4gb3ZlcnJpZGUgZm9yIEk8ZmlsZT4sIHRoZSBzdGF0dXMgb2YgSTxmaWxlPiBpcyBsZWZ0IHVuY2hhbmdlZCBieSAiCisidGhpcyBjb21tYW5kLiIKK21zZ3N0ciAiIgorIlN1cHByaW1lIHVuZSBkw6lyb2dhdGlvbiAowqvCoG92ZXJyaWRlwqDCuykgcG91ciBJPGZpY2hpZXI+LCBsJ8OpdGF0IGRlIEk8ZmljaGllcj4gIgorImVzdCBpbmNoYW5nw6kuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODozOQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1saXN0PiBbSTxnbG9iLXBhdHRlcm4+XSIKK21zZ3N0ciAiQjwtLWxpc3Q+IFtJPGV4cC1yZWc+XSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo0NAorbXNnaWQgIiIKKyJMaXN0IGFsbCBvdmVycmlkZXMuIElmIGEgZ2xvYiBwYXR0ZXJuIGlzIHNwZWNpZmllZCByZXN0cmljdCB0aGUgb3V0cHV0IHRvICIKKyJvdmVycmlkZXMgd2hpY2ggbWF0Y2ggdGhlIGdsb2IuIElmIHRoZXJlIGFyZSBubyBvdmVycmlkZXMgb3Igbm9uZSBtYXRjaCB0aGUgIgorImdsb2IgQjxkcGtnLXN0YXRvdmVycmlkZT4gd2lsbCBleGl0IHdpdGggYW4gZXhpdGNvZGUgb2YgMS4iCittc2dzdHIgIiIKKyJMaXN0ZSB0b3V0ZXMgbGVzIGTDqXJvZ2F0aW9ucy4gUXVhbmQgb24gZG9ubmUgdW5lIGV4cHJlc3Npb24gcmF0aW9ubmVsbGUsIG9uICIKKyJyw6lkdWl0IGxhIHNvcnRpZSBhdXggZMOpcm9nYXRpb25zIHF1aSBjb3JyZXNwb25kZW50IGF1IG1vdGlmLiBRdWFuZCBpbCBuJ3kgYSAiCisicGFzIGRlIGTDqXJvZ2F0aW9uLCBvdSBxdWFuZCBhdWN1bmUgbmUgY29ycmVzcG9uZCBhdSBtb3RpZiwgQjxkcGtnLSIKKyJzdGF0b3ZlcnJpZGU+IHNlIHRlcm1pbmUgYXZlYyB1biBjb2RlIGRlIHNvcnRpZSDDqWdhbCDDoCAxLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo1NgorbXNnaWQgIiIKKyJDaGFuZ2UgdGhlIEk8ZGlyZWN0b3J5PiBvZiB0aGUgZHBrZyBkYXRhYmFzZSB3aGVyZSB0aGUgc3RhdG92ZXJyaWRlIGZpbGUgaXMgIgorImFsc28gc3RvcmVkLiBEZWZhdWx0cyB0byBJPC92YXIvbGliL2Rwa2c+LiIKK21zZ3N0ciAiIgorIkNoYW5nZSBsZSBJPHLDqXBlcnRvaXJlPiBkZSBsYSBiYXNlIGRlIGRvbm7DqWVzIGRlIGRwa2csIG/DuSBzZSB0cm91dmUgYXVzc2kgbGUgIgorImZpY2hpZXIgc3RhdG92ZXJyaWRlLiBMYSB2YWxldXIgcGFyIGTDqWZhdXQgZXN0IEk8L3Zhci9saWIvZHBrZz4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo1NiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzM2CisjLCBuby13cmFwCittc2dpZCAiQjwtLWZvcmNlPiIKK21zZ3N0ciAiQjwtLWZvcmNlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo2MAorbXNnaWQgIiIKKyJGb3JjZSBhbiBhY3Rpb24sIGV2ZW4gaWYgYSBzYW5pdHkgY2hlY2sgd291bGQgb3RoZXJ3aXNlIHByb2hpYml0IGl0LiAgVGhpcyAiCisiaXMgbmVjZXNzYXJ5IHRvIG92ZXJyaWRlIGFuIGV4aXN0aW5nIG92ZXJyaWRlLiIKK21zZ3N0ciAiIgorIkZvcmNlciB1bmUgb3DDqXJhdGlvbiwgbcOqbWUgc2kgdW5lIHbDqXJpZmljYXRpb24gcmFpc29ubmFibGUgbCdpbnRlcmRpcmFpdC4gIgorIkMnZXN0IG7DqWNlc3NhaXJlIHBvdXIgYW5udWxlciB1bmUgcHLDqWPDqWRlbnRlIGTDqXJvZ2F0aW9uLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6NjAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tdXBkYXRlPiIKK21zZ3N0ciAiQjwtLXVwZGF0ZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6NjQKK21zZ2lkICIiCisiSW1tZWRpYXRlbHkgdHJ5IHRvIGNoYW5nZSB0aGUgZmlsZSB0byB0aGUgbmV3IG93bmVyIGFuZCBtb2RlIGlmIGl0IGV4aXN0cy4iCittc2dzdHIgIiIKKyJFc3NheWVyIGRlIGNoYW5nZXIgaW1tw6lkaWF0ZW1lbnQgbGUgcHJvcHJpw6l0YWlyZSBldCBsZSBtb2RlIGR1IGZpY2hpZXIgc2kgY2UgIgorImZpY2hpZXIgZXhpc3RlLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo2NworbXNnaWQgIkJlIGxlc3MgdmVyYm9zZSBhYm91dCB3aGF0IHdlIGRvLiIKK21zZ3N0ciAiTW9pbnMgZGUgYmF2YXJkYWdlIHN1ciBjZSBxdWkgZXN0IGZhaXQuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo3NQorIywgbm8td3JhcAorbXNnaWQgIkk8L3Zhci9saWIvZHBrZy9zdGF0b3ZlcnJpZGU+IgorbXNnc3RyICJJPC92YXIvbGliL2Rwa2cvc3RhdG92ZXJyaWRlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo4MAorbXNnaWQgIiIKKyJGaWxlIHdoaWNoIGNvbnRhaW5zIHRoZSBjdXJyZW50IGxpc3Qgb2Ygc3RhdCBvdmVycmlkZXMgb2YgdGhlIHN5c3RlbS4gSXQgaXMgIgorImxvY2F0ZWQgaW4gdGhlIGRwa2cgYWRtaW5pc3RyYXRpb24gZGlyZWN0b3J5LCBhbG9uZyB3aXRoIG90aGVyIGZpbGVzICIKKyJpbXBvcnRhbnQgdG8gZHBrZywgc3VjaCBhcyBgc3RhdHVzJyBvciBgYXZhaWxhYmxlJy4iCittc2dzdHIgIiIKKyJDZSBmaWNoaWVyIGNvbnRpZW50IGxhIGxpc3RlIGFjdHVlbGxlIGRlcyBkw6lyb2dhdGlvbnMgY29uY2VybmFudCBsZSBzeXN0w6htZS4gIgorIklsIHNlIHRyb3V2ZSBkYW5zIGxlIHLDqXBlcnRvaXJlIGQnYWRtaW5pc3RyYXRpb24gZGUgRHBrZywgYXZlYyBsZXMgYXV0cmVzICIKKyJmaWNoaWVycyBpbXBvcnRhbnRzIGNvbW1lIMKrwqBzdGF0dXPCoMK7IG91IMKrwqBhdmFpbGFibGXCoMK7LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo4MworbXNnaWQgIiIKKyJOb3RlOiBCPGRwa2ctc3RhdG92ZXJyaWRlPiBwcmVzZXJ2ZXMgdGhlIG9sZCBjb3B5IG9mIHRoaXMgZmlsZSwgd2l0aCAiCisiZXh0ZW5zaW9uIFwiLW9sZFwiLCBiZWZvcmUgcmVwbGFjaW5nIGl0IHdpdGggdGhlIG5ldyBvbmUuIgorbXNnc3RyICIiCisiTm90ZcKgOiBCPGRwa2ctc3RhdG92ZXJyaWRlPiBnYXJkZSB1bmUgY29waWUgZGUgY2UgZmljaGllciwgYXZlYyB1bmUgIgorImV4dGVuc2lvbiBcIi1vbGRcIiwgYXZhbnQgZGUgbGUgcmVtcGxhY2VyIHBhciB1biBub3V2ZWF1LiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctdHJpZ2dlci4xOjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLXRyaWdnZXIiCittc2dzdHIgImRwa2ctdHJpZ2dlciIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy10cmlnZ2VyLjE6NAorbXNnaWQgImRwa2ctdHJpZ2dlciAtIGEgcGFja2FnZSB0cmlnZ2VyIHV0aWxpdHkiCittc2dzdHIgIiIKKyJkcGtnLXRyaWdnZXIgLSB1biB1dGlsaXRhaXJlIHBvdXIgYWN0aXZlciBsZXMgYWN0aW9ucyBkaWZmw6lyw6llcyBkZSBwYXF1ZXRzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXRyaWdnZXIuMTo4Cittc2dpZCAiQjxkcGtnLXRyaWdnZXI+IFtJPG9wdGlvbj4uLi5dIEk8dHJpZ2dlci1uYW1lPiIKK21zZ3N0ciAiQjxkcGtnLXRyaWdnZXI+IFtJPG9wdGlvbj4uLi5dIEk8bm9tLWFjdGlvbi1kaWZmw6lyw6llPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy10cmlnZ2VyLjE6MTEKK21zZ2lkICJCPGRwa2ctdHJpZ2dlcj4gW0k8b3B0aW9uPi4uLl0gSTxjb21tYW5kPiIKK21zZ3N0ciAiQjxkcGtnLXRyaWdnZXI+IFtJPG9wdGlvbj4uLi5dIEk8Y29tbWFuZGU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXRyaWdnZXIuMToxNQorbXNnaWQgIiIKKyJCPGRwa2ctdHJpZ2dlcj4gaXMgYSB0b29sIHRvIGV4cGxpY2l0bHkgYWN0aXZhdGUgdHJpZ2dlcnMgYW5kIGNoZWNrIGZvciBpdHMgIgorInN1cHBvcnQgb24gdGhlIHJ1bm5pbmcgQjxkcGtnPi4iCittc2dzdHIgIiIKKyJCPGRwa2ctdHJpZ2dlcj4gZXN0IHVuIG91dGlsIHBvdXIgYWN0aXZlciBleHBsaWNpdGVtZW50IGxlcyBhY3Rpb25zICIKKyJkaWZmw6lyw6llcyBldCBwb3VyIHbDqXJpZmllciBsZXVyIGdlc3Rpb24gZGFucyBsZSBmb25jdGlvbm5lbWVudCBkZSBCPGRwa2c+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy10cmlnZ2VyLjE6MjEKK21zZ2lkICIiCisiVGhpcyBjYW4gYmUgdXNlZCBieSBtYWludGFpbmVyIHNjcmlwdHMgaW4gY29tcGxleCBhbmQgY29uZGl0aW9uYWwgc2l0dWF0aW9ucyAiCisid2hlcmUgdGhlIGZpbGUgdHJpZ2dlcnMsIG9yIHRoZSBkZWNsYXJhdGl2ZSBCPGFjdGl2YXRlPiB0cmlnZ2VycyBjb250cm9sICIKKyJmaWxlIGRpcmVjdGl2ZSwgYXJlIGluc3VmZmljaWVudGx5IHJpY2guIEl0IGNhbiBhbHNvIGJlIHVzZWQgZm9yIHRlc3RpbmcgYW5kICIKKyJieSBzeXN0ZW0gYWRtaW5pc3RyYXRvcnMgKGJ1dCBub3RlIHRoYXQgdGhlIHRyaWdnZXJzIHdvbid0IGFjdHVhbGx5IGJlIHJ1biAiCisiYnkgQjxkcGtnLXRyaWdnZXI+KS4iCittc2dzdHIgIiIKKyJVdGlsaXNhYmxlIHBhciBsZXMgc2NyaXB0cyBkdSBtYWludGVuZXVyIGRhbnMgY2VydGFpbmVzIHNpdHVhdGlvbnMgY29tcGxleGVzICIKKyJvw7kgdW4gZmljaGllciBkJ2FjdGlvbnMgZGlmZsOpcsOpZXMgKMKrwqB0cmlnZ2Vyc8KgwrspIG91IGxhIGRpcmVjdGl2ZSBCPGFjdGl2YXRlPiAiCisiZHUgZmljaGllciBkZSBjb250csO0bGUgZGVzIGFjdGlvbnMgZGlmZsOpcsOpZXMgbmUgc29udCBwYXMgc3VmZmlzYW50cy4gUGV1dCAiCisiw6lnYWxlbWVudCDDqnRyZSB1dGlsaXPDqSBwb3VyIGRlcyBlc3NhaXMgb3UgcGFyIGxlcyBhZG1pbmlzdHJhdGV1cnMgc3lzdMOobWUgIgorIihub3RlciBxdWUgbGVzIGFjdGlvbnMgZGlmZsOpcsOpZXMgbmUgc2Vyb250IGFsb3JzIHBhcyBleMOpY3V0w6llcyBwYXIgQjxkcGtnLSIKKyJ0cmlnZ2VyPikuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXRyaWdnZXIuMToyMworbXNnaWQgIlVucmVjb2duaXNlZCB0cmlnZ2VyIG5hbWUgc3ludGF4ZXMgYXJlIGFuIGVycm9yIGZvciBCPGRwa2ctdHJpZ2dlcj4uIgorbXNnc3RyICIiCisiTGVzIHN5bnRheGVzIG5vbi1yZWNvbm51ZXMgcG91ciBsZSBub20gZGVzIGFjdGlvbnMgZGlmZsOpcsOpZXMgY29uc3RpdHVlbnQgdW5lICIKKyJlcnJldXIgcG91ciBCPGRwa2ctdHJpZ2dlcj4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy10cmlnZ2VyLjE6MjUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tY2hlY2stc3VwcG9ydGVkPiIKK21zZ3N0ciAiQjwtLWNoZWNrLXN1cHBvcnRlZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctdHJpZ2dlci4xOjMxCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJDaGVjayBpZiB0aGUgcnVubmluZyBCPGRwa2c+IHN1cHBvcnRzIHRyaWdnZXJzICh1c3VhbGx5IGNhbGxlZCBmcm9tIGEgIgorI3wgInBvc3RpbnN0KS4gV2lsbCBleGl0IDAgaWYgYSB0cmlnZ2Vycy1jYXBhYmxlIEI8ZHBrZz4gaGFzIHJ1biwgb3IgMSB3aXRoICIKKyN8ICJhbiBlcnJvciBtZXNzYWdlIHRvIHN0ZGVyciBpZiBub3QuIE5vcm1hbGx5LCBob3dldmVyLCBpdCBpcyBiZXR0ZXIganVzdCAiCisjfCAidG8gYWN0aXZhdGUgdGhlIGRlc2lyZWQgdHJpZ2dlciB3aXRoIEI8ZHBrZy10cmlnZ2VyPi4iCittc2dpZCAiIgorIkNoZWNrIGlmIHRoZSBydW5uaW5nIEI8ZHBrZz4gc3VwcG9ydHMgdHJpZ2dlcnMgKHVzdWFsbHkgY2FsbGVkIGZyb20gYSAiCisicG9zdGluc3QpLiBXaWxsIGV4aXQgQjwwPiBpZiBhIHRyaWdnZXJzLWNhcGFibGUgQjxkcGtnPiBoYXMgcnVuLCBvciBCPDE+ICIKKyJ3aXRoIGFuIGVycm9yIG1lc3NhZ2UgdG8gc3RkZXJyIGlmIG5vdC4gTm9ybWFsbHksIGhvd2V2ZXIsIGl0IGlzIGJldHRlciBqdXN0ICIKKyJ0byBhY3RpdmF0ZSB0aGUgZGVzaXJlZCB0cmlnZ2VyIHdpdGggQjxkcGtnLXRyaWdnZXI+LiIKK21zZ3N0ciAiIgorIlbDqXJpZmllIHNpIEI8ZHBrZz4gc2FpdCBnw6lyZXIgbGVzIGFjdGlvbnMgZGlmZsOpcsOpZXMgKGfDqW7DqXJhbGVtZW50IGFwcGVsw6llcyAiCisiZGVwdWlzIHVuIHNjcmlwdCBkZSBwb3N0LWluc3RhbGxhdGlvbikuIFJldG91cm5lIGVuIHNvcnRpZSAwIHNpIGMnZXN0IGxlICIKKyJjYXMsIG91IDEgYXZlYyB1biBtZXNzYWdlIGQnZXJyZXVyIHN1ciBzdGRlcnIgc2kgY2Ugbidlc3QgcGFzIGxlIGNhcy4gIgorIlRvdXRlZm9pcywgZW4gcsOoZ2xlIGfDqW7DqXJhbGUsIGlsIGVzdCBwcsOpZsOpcmFibGUgZGUgc2ltcGxlbWVudCBhY3RpdmVyICIKKyJsJ2FjdGlvbiBkaWZmw6lyw6llIGTDqXNpcsOpZSDDoCBsJ2FpZGUgZGUgQjxkcGtnLXRyaWdnZXI+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctdHJpZ2dlci4xOjQzCisjLCBuby13cmFwCittc2dpZCAiQjwtLWJ5LXBhY2thZ2U9Pkk8cGFja2FnZT4iCittc2dzdHIgIkI8LS1ieS1wYWNrYWdlPT5JPHBhcXVldD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctdHJpZ2dlci4xOjQ5CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJPdmVycmlkZSB0cmlnZ2VyIGF3YWl0ZXIgKG5vcm1hbGx5IHNldCBieSBCPGRwa2c+IHRocm91Z2ggdGhlICIKKyN8ICJEUEtHX01BSU5UU0NSSVBUX1BBQ0tBR0UgZW52aXJvbm1lbnQgdmFyaWFibGUgb2YgdGhlIG1haW50YWluZXIgc2NyaXB0cywgIgorI3wgIm5hbWluZyB0aGUgcGFja2FnZSB0byB3aGljaCB0aGUgc2NyaXB0IGJlbG9uZ3MsIGFuZCB0aGlzIHdpbGwgYmUgdXNlZCBieSAiCisjfCAiZGVmYXVsdCkuIgorbXNnaWQgIiIKKyJPdmVycmlkZSB0cmlnZ2VyIGF3YWl0ZXIgKG5vcm1hbGx5IHNldCBieSBCPGRwa2c+IHRocm91Z2ggdGhlICIKKyJCPERQS0dfTUFJTlRTQ1JJUFRfUEFDS0FHRT4gZW52aXJvbm1lbnQgdmFyaWFibGUgb2YgdGhlIG1haW50YWluZXIgc2NyaXB0cywgIgorIm5hbWluZyB0aGUgcGFja2FnZSB0byB3aGljaCB0aGUgc2NyaXB0IGJlbG9uZ3MsIGFuZCB0aGlzIHdpbGwgYmUgdXNlZCBieSAiCisiZGVmYXVsdCkuIgorbXNnc3RyICIiCisiSW5kaXF1ZSBsZSBwYXF1ZXQgcXVpIHNlcmEgbWFycXXDqSBlbiBhdHRlbnRlIGRlIGwnZXjDqWN1dGlvbiBkZSBsJ2FjdGlvbiAiCisiZGlmZsOpcsOpZSAobm9ybWFsZW1lbnQgZMOpZmluaSBwYXIgbGEgdmFyaWFibGUgZCdlbnZpcm9ubmVtZW50ICIKKyJEUEtHX01BSU5UU0NSSVBUX1BBQ0tBR0UgZGFucyBsZXMgc2NyaXB0cyBkdSBtYWludGVuZXVyLCBxdWkgbm9tbWUgbGUgcGFxdWV0ICIKKyJhdXF1ZWwgbGUgc2NyaXB0IGFwcGFydGllbnQsIGV0IHF1aSBjb25zdGl0dWUgbGEgdmFsZXVyIHBhciBkw6lmYXV0KS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXRyaWdnZXIuMTo0OQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1uby1hd2FpdD4iCittc2dzdHIgIkI8LS1uby1hd2FpdD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctdHJpZ2dlci4xOjU2Cittc2dpZCAiIgorIlRoaXMgb3B0aW9uIGFycmFuZ2VzIHRoYXQgdGhlIGNhbGxpbmcgcGFja2FnZSBUIChpZiBhbnkpIG5lZWQgbm90IGF3YWl0IHRoZSAiCisicHJvY2Vzc2luZyBvZiB0aGlzIHRyaWdnZXI7IHRoZSBpbnRlcmVzdGVkIHBhY2thZ2UocykgSSwgd2lsbCBub3QgYmUgYWRkZWQgIgorInRvIFQncyB0cmlnZ2VyIHByb2Nlc3NpbmcgYXdhaXRlZCBsaXN0IGFuZCBUJ3Mgc3RhdHVzIGlzIHVuY2hhbmdlZC4gIFQgbWF5ICIKKyJiZSBjb25zaWRlcmVkIGluc3RhbGxlZCBldmVuIHRob3VnaCBJIG1heSBub3QgeWV0IGhhdmUgcHJvY2Vzc2VkIHRoZSB0cmlnZ2VyLiIKK21zZ3N0ciAiIgorIkNldHRlIG9wdGlvbiBmYWl0IGVuIHNvcnRlIHF1ZSBsZSBwYXF1ZXQgYXBwZWxhbnQgVCAocydpbCBleGlzdGUpIG4nYSBwYXMgIgorImJlc29pbiBkJ2F0dGVuZHJlIGwnZXjDqWN1dGlvbiBkZSBjZXR0ZSBhY3Rpb24gZGlmZsOpcsOpZcKgOyBJLCBsZShzKSBwYXF1ZXQocykgIgorImFzc29jacOpKHMpIMOgIGwnYWN0aW9uIGRpZmbDqXLDqWUsIG5lIHNlcmEgcGFzIGFqb3V0w6kgw6AgbGlzdGUgZGVzIHBhcXVldHMgZG9udCAiCisibGUgdHJhaXRlbWVudCBkZXMgYWN0aW9ucyBkaWZmw6lyw6llcyBlc3QgYXR0ZW5kdSBwYXIgVCBldCBsJ8OpdGF0IGRlIFQgcmVzdGUgIgorImluY2hhbmfDqS4gVCBwZXV0IMOqdHJlIGNvbnNpZMOpcsOpIGluc3RhbGzDqSBtw6ptZSBzaSBsZXMgYWN0aW9ucyBkaWZmw6lyw6llcyBkZSBJICIKKyJuJ29udCBwYXMgZW5jb3JlIMOpdMOpIGV4w6ljdXTDqWVzLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctdHJpZ2dlci4xOjU2CisjLCBuby13cmFwCittc2dpZCAiQjwtLW5vLWFjdD4iCittc2dzdHIgIkI8LS1uby1hY3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXRyaWdnZXIuMTo1OQorbXNnaWQgIkp1c3QgdGVzdCwgZG8gbm90IGFjdHVhbGx5IGNoYW5nZSBhbnl0aGluZy4iCittc2dzdHIgIlRlc3RlIHVuaXF1ZW1lbnQsIG4nYXBwb3J0ZSBhdWN1biBjaGFuZ2VtZW50LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy10cmlnZ2VyLjE6NjkKK21zZ2lkICIiCisiQjxkcGtnPigxKSwgQjxkZWItdHJpZ2dlcnM+KDUpLCBCPC91c3Ivc2hhcmUvZG9jL2Rwa2ctZGV2L3RyaWdnZXJzLnR4dC5nej4uIgorbXNnc3RyICIiCisiQjxkcGtnPigxKSwgQjxkZWItdHJpZ2dlcnM+KDUpLCBCPC91c3Ivc2hhcmUvZG9jL2Rwa2ctZGV2L3RyaWdnZXJzLnR4dC5nej4uIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy12ZW5kb3IuMToxCisjLCBuby13cmFwCittc2dpZCAiZHBrZy12ZW5kb3IiCittc2dzdHIgImRwa2ctdmVuZG9yIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXZlbmRvci4xOjQKK21zZ2lkICJkcGtnLXZlbmRvciAtIHF1ZXJpZXMgaW5mb3JtYXRpb24gYWJvdXQgZGlzdHJpYnV0aW9uIHZlbmRvcnMiCittc2dzdHIgIiIKKyJkcGtnLXZlbmRvciAtIHLDqWN1cMOpcmUgbGVzIGluZm9ybWF0aW9ucyBzdXIgbGVzIMOpZGl0ZXVycyBkZSBkaXN0cmlidXRpb24iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctdmVuZG9yLjE6OAorbXNnaWQgIkI8ZHBrZy12ZW5kb3I+IFtJPG9wdGlvbj4uLi5dIEk8Y29tbWFuZD4iCittc2dzdHIgIkI8ZHBrZy12ZW5kb3I+IFtJPG9wdGlvbj4uLi5dIEk8Y29tbWFuZGU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXZlbmRvci4xOjEzCittc2dpZCAiIgorIkI8ZHBrZy12ZW5kb3I+IGlzIGEgdG9vbCB0byBxdWVyeSBpbmZvcm1hdGlvbiBhYm91dCB2ZW5kb3JzIGxpc3RlZCBpbiBCPC9ldGMvIgorImRwa2cvb3JpZ2lucz4uIEI8L2V0Yy9kcGtnL29yaWdpbnMvZGVmYXVsdD4gY29udGFpbnMgaW5mb3JtYXRpb24gYWJvdXQgdGhlICIKKyJjdXJyZW50IHZlbmRvci4iCittc2dzdHIgIiIKKyJCPGRwa2ctdmVuZG9yPiBlc3QgdW4gb3V0aWwgcXVpIHBlcm1ldCBkZSByw6ljdXDDqXJlciBkZXMgaW5mb3JtYXRpb25zIHN1ciBsZXMgIgorIsOpZGl0ZXVycyAowqvCoHZlbmRvcnPCoMK7KSBkZSBkaXN0cmlidXRpb25zIHLDqWbDqXJlbmPDqXMgZGFucyBCPC9ldGMvZHBrZy8iCisib3JpZ2lucz4uIEI8L2V0Yy9kcGtnL29yaWdpbnMvZGVmYXVsdD4gY29udGllbnQgbCdpbmZvcm1hdGlvbiByZWxhdGl2ZSDDoCAiCisibCfDqWRpdGV1ciBhY3R1ZWxsZW1lbnQgdXRpbGlzw6kuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy12ZW5kb3IuMToxNQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1pcz5JPCB2ZW5kb3I+IgorbXNnc3RyICJCPC0taXM+STwgw6lkaXRldXI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXZlbmRvci4xOjE5CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJFeGl0cyB3aXRoIDAgaWYgdGhlIGN1cnJlbnQgdmVuZG9yIGlzIEk8dmVuZG9yPi4gT3RoZXJ3aXNlIGV4aXRzIHdpdGggbm9uLSIKKyN8ICJ6ZXJvLiIKK21zZ2lkICIiCisiRXhpdHMgd2l0aCBCPDA+IGlmIHRoZSBjdXJyZW50IHZlbmRvciBpcyBJPHZlbmRvcj4uIE90aGVyd2lzZSBleGl0cyB3aXRoIG5vbi0iCisiemVyby4iCittc2dzdHIgIiIKKyJSZXRvdXJuZSAwIHNpIGwnw6lkaXRldXIgZXN0IEk8w6lkaXRldXI+LiBSZXRvdXJuZSB1bmUgdmFsZXVyIG5vbiBudWxsZSBkYW5zICIKKyJsZSBjYXMgY29udHJhaXJlLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctdmVuZG9yLjE6MTkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tZGVyaXZlcy1mcm9tPkk8IHZlbmRvcj4iCittc2dzdHIgIkI8LS1kZXJpdmVzLWZyb20+STwgw6lkaXRldXI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXZlbmRvci4xOjI0CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJFeGl0cyB3aXRoIDAgaWYgdGhlIGN1cnJlbnQgdmVuZG9yIGRpc3RyaWJ1dGlvbiBpcyBhIGRlcml2YXRpdmUgb2YgIgorI3wgIkk8dmVuZG9yPiwgb3RoZXJ3aXNlIGV4aXRzIHdpdGggbm9uLXplcm8uIEl0IHVzZXMgdGhlIFwiUGFyZW50XCIgZmllbGQgdG8gIgorI3wgImJyb3dzZSBhbGwgYW5jZXN0b3JzIG9mIHRoZSBjdXJyZW50IHZlbmRvci4iCittc2dpZCAiIgorIkV4aXRzIHdpdGggQjwwPiBpZiB0aGUgY3VycmVudCB2ZW5kb3IgZGlzdHJpYnV0aW9uIGlzIGEgZGVyaXZhdGl2ZSBvZiAiCisiSTx2ZW5kb3I+LCBvdGhlcndpc2UgZXhpdHMgd2l0aCBub24temVyby4gSXQgdXNlcyB0aGUgXCJQYXJlbnRcIiBmaWVsZCB0byAiCisiYnJvd3NlIGFsbCBhbmNlc3RvcnMgb2YgdGhlIGN1cnJlbnQgdmVuZG9yLiIKK21zZ3N0ciAiIgorIlJldG91cm5lIDAgc2kgbGEgZGlzdHJpYnV0aW9uIGRlIGwnw6lkaXRldXIgYWN0dWVsIGVzdCB1bmUgZGlzdHJpYnV0aW9uICIKKyJkw6lyaXbDqWUgZGUgSTzDqWRpdGV1cj4uIExlIGNoYW1wIMKrwqBQYXJlbnTCoMK7IGVzdCB1dGlsaXPDqSBwb3VyIHBhcmNvdXJpciB0b3VzICIKKyJsZXMgYW5jw6p0cmVzIGRlIGwnw6lkaXRldXIgYWN0dWVsLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctdmVuZG9yLjE6MjQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tcXVlcnk+STwgZmllbGQ+IgorbXNnc3RyICJCPC0tcXVlcnk+STwgY2hhbXA+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXZlbmRvci4xOjI4Cittc2dpZCAiIgorIlByaW50IG9uIHN0YW5kYXJkIG91dHB1dCB0aGUgdmFsdWUgb2YgdGhlIHZlbmRvci1zcGVjaWZpYyBJPGZpZWxkPiBmb3IgdGhlICIKKyJjdXJyZW50IHZlbmRvci4iCittc2dzdHIgIiIKKyJBZmZpY2hlIHN1ciBsYSBzb3J0aWUgc3RhbmRhcmQgbGEgdmFsZXVyIGR1IGNoYW1wIHNww6ljaWZpcXVlIEk8Y2hhbXA+IGRlICIKKyJsJ8OpZGl0ZXVyIGFjdHVlbC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXZlbmRvci4xOjM2CisjLCBuby13cmFwCittc2dpZCAiQjwtLXZlbmRvcj5JPCB2ZW5kb3I+IgorbXNnc3RyICJCPC0tdmVuZG9yPkk8IMOpZGl0ZXVyPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy12ZW5kb3IuMTo0MQorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiQXNzdW1lcyB0aGUgY3VycmVudCB2ZW5kb3IgaXMgSTx2ZW5kb3I+IGluc3RlYWQgb2YgZGlzY292ZXJpbmcgaXQgd2l0aCAiCisjfCAidGhlIERFQl9WRU5ET1IgZW52aXJvbm1lbnQgdmFyaWFibGUgb3IgQjwvZXRjL2Rwa2cvb3JpZ2lucy9kZWZhdWx0Pi4iCittc2dpZCAiIgorIkFzc3VtZXMgdGhlIGN1cnJlbnQgdmVuZG9yIGlzIEk8dmVuZG9yPiBpbnN0ZWFkIG9mIGRpc2NvdmVyaW5nIGl0IHdpdGggdGhlICIKKyJCPERFQl9WRU5ET1I+IGVudmlyb25tZW50IHZhcmlhYmxlIG9yIEI8L2V0Yy9kcGtnL29yaWdpbnMvZGVmYXVsdD4uIgorbXNnc3RyICIiCisiU3VwcG9zZSBxdWUgbCfDqWRpdGV1ciBhY3R1ZWwgZXN0IEk8w6lkaXRldXI+IGF1IGxpZXUgZCd1dGlsaXNlciBsYSB2YXJpYWJsZSAiCisiREVCX1ZFTkRPUiBvdSBCPC9ldGMvZHBrZy9vcmlnaW5zL2RlZmF1bHQ+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctdmVuZG9yLjE6NDMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPERFQl9WRU5ET1I+IgorbXNnc3RyICJCPERFQl9WRU5ET1I+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXZlbmRvci4xOjQ3Cittc2dpZCAiIgorIlRoaXMgc2V0dGluZyBkZWZpbmVzIHRoZSBjdXJyZW50IHZlbmRvci4gSWYgbm90IHNldCwgaXQgd2lsbCBkaXNjb3ZlciB0aGUgIgorImN1cnJlbnQgdmVuZG9yIGJ5IHJlYWRpbmcgQjwvZXRjL2Rwa2cvb3JpZ2lucy9kZWZhdWx0Pi4iCittc2dzdHIgIiIKKyJDZSByw6lnbGFnZSBkw6lmaW5pdCBsJ8OpZGl0ZXVyICjCq8KgdmVuZG9ywqDCuykgYWN0dWVsLiBTaSBjZXR0ZSB2YWxldXIgZXN0IHZpZGUsICIKKyJsZSBjb250ZW51IGR1IGZpY2hpZXIgQjwvZXRjL2Rwa2cvb3JpZ2lucy9kZWZhdWx0PiBlc3QgdXRpbGlzw6kuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXZlbmRvci4xOjUwIHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0OTgKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAwOSBSYXBoYVxcWzplXWwgSGVydHpvZyIKK21zZ3N0ciAiQ29weXJpZ2h0IFxcKGNvIDIwMDkgUmFwaGFcXFs6ZV1sIEhlcnR6b2ciCisKKyMuIHR5cGU6IFRICisjOiBkc2VsZWN0LjE6MQorIywgbm8td3JhcAorbXNnaWQgImRzZWxlY3QiCittc2dzdHIgImRzZWxlY3QiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0Cittc2dpZCAiZHNlbGVjdCAtIERlYmlhbiBwYWNrYWdlIG1hbmFnZW1lbnQgZnJvbnRlbmQiCittc2dzdHIgImRzZWxlY3QgLSBJbnRlcmZhY2UgZGUgZ2VzdGlvbiBkZSBwYXF1ZXRzIERlYmlhbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo4CisjLCBmdXp6eQorI3wgbXNnaWQgIkI8ZHBrZz4gW0k8b3B0aW9ucz5dIEk8YWN0aW9uPiIKK21zZ2lkICJCPGRzZWxlY3Q+IFtJPG9wdGlvbj4uLi5dIFtJPGFjdGlvbj5dIgorbXNnc3RyICJCPGRwa2c+IFtJPG9wdGlvbnM+XSBJPGFjdGlvbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxNworIywgbm8td3JhcAorbXNnaWQgIiIKKyJCPGRzZWxlY3Q+XG4iCisiaXMgb25lIG9mIHRoZSBwcmltYXJ5IHVzZXIgaW50ZXJmYWNlcyBmb3IgbWFuYWdpbmcgcGFja2FnZXMgb24gYSBEZWJpYW5cbiIKKyJzeXN0ZW0uIEF0IHRoZSBCPGRzZWxlY3Q+IG1haW4gbWVudSwgdGhlIHN5c3RlbSBhZG1pbmlzdHJhdG9yIGNhbjpcbiIKKyIgLSBVcGRhdGUgdGhlIGxpc3Qgb2YgYXZhaWxhYmxlIHBhY2thZ2UgdmVyc2lvbnMsXG4iCisiIC0gVmlldyB0aGUgc3RhdHVzIG9mIGluc3RhbGxlZCBhbmQgYXZhaWxhYmxlIHBhY2thZ2VzLFxuIgorIiAtIEFsdGVyIHBhY2thZ2Ugc2VsZWN0aW9ucyBhbmQgbWFuYWdlIGRlcGVuZGVuY2llcyxcbiIKKyIgLSBJbnN0YWxsIG5ldyBwYWNrYWdlcyBvciB1cGdyYWRlIHRvIG5ld2VyIHZlcnNpb25zLlxuIgorbXNnc3RyICIiCisiQjxkc2VsZWN0PiBlc3QgdW5lIGRlcyBwcmluY2lwYWxlcyBpbnRlcmZhY2VzIGRlIGdlc3Rpb24gZGVzIHBhcXVldHMgc3VyIHVuIHN5c3TDqG1lIERlYmlhbi4gw4AgcGFydGlyIGR1IG1lbnUgcHJpbmNpcGFsIGRlIEI8ZHNlbGVjdD4sIGwnYWRtaW5pc3RyYXRldXIgc3lzdMOobWUgcGV1dMKgOlxuIgorIiAtIE1ldHRyZSDDoCBqb3VyIGxhIGxpc3RlIGRlcyB2ZXJzaW9ucyBkZXMgcGFxdWV0cyBkaXNwb25pYmxlcyxcbiIKKyIgLSBWb2lyIGwnw6l0YXQgZGVzIHBhcXVldHMgaW5zdGFsbMOpcyBvdSBkaXNwb25pYmxlcyxcbiIKKyIgLSBNb2RpZmllciBsZXMgc8OpbGVjdGlvbnMgZGUgcGFxdWV0cyBldCBnw6lyZXIgbGVzIGTDqXBlbmRhbmNlcyxcbiIKKyIgLSBJbnN0YWxsZXIgZGUgbm91dmVhdXggcGFxdWV0cyBvdSBtZXR0cmUgw6Agam91ciB2ZXJzIGRlIG5vdXZlbGxlcyB2ZXJzaW9ucy5cbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjI5Cittc2dpZCAiIgorIkI8ZHNlbGVjdD4gb3BlcmF0ZXMgYXMgYSBmcm9udC1lbmQgdG8gQjxkcGtnPigxKSwgdGhlIGxvdy1sZXZlbCBkZWJpYW4gIgorInBhY2thZ2UgaGFuZGxpbmcgdG9vbC4gSXQgZmVhdHVyZXMgYSBmdWxsLXNjcmVlbiBwYWNrYWdlIHNlbGVjdGlvbnMgbWFuYWdlciAiCisid2l0aCBwYWNrYWdlIGRlcGVuZHMgYW5kIGNvbmZsaWN0cyByZXNvbHZlci4gV2hlbiBydW4gd2l0aCBhZG1pbmlzdHJhdG9yICIKKyJwcml2aWxlZ2VzLCBwYWNrYWdlcyBjYW4gYmUgaW5zdGFsbGVkLCB1cGdyYWRlZCBhbmQgcmVtb3ZlZC4gVmFyaW91cyBhY2Nlc3MgIgorIm1ldGhvZHMgY2FuIGJlIGNvbmZpZ3VyZWQgdG8gcmV0cmlldmUgYXZhaWxhYmxlIHBhY2thZ2UgdmVyc2lvbiBpbmZvcm1hdGlvbiAiCisiYW5kIGluc3RhbGxhYmxlIHBhY2thZ2VzIGZyb20gcGFja2FnZSByZXBvc2l0b3JpZXMuICBEZXBlbmRpbmcgb24gdGhlIHVzZWQgIgorImFjY2VzcyBtZXRob2QsIHRoZXNlIHJlcG9zaXRvcmllcyBjYW4gYmUgcHVibGljIGFyY2hpdmUgc2VydmVycyBvbiB0aGUgIgorImludGVybmV0LCBsb2NhbCBhcmNoaXZlIHNlcnZlcnMgb3IgY2Ryb21zLiAgVGhlIHJlY29tbWVuZGVkIGFjY2VzcyBtZXRob2QgaXMgIgorIkk8YXB0Piwgd2hpY2ggaXMgcHJvdmlkZWQgYnkgdGhlIHBhY2thZ2UgQjxhcHQ+LiIKK21zZ3N0ciAiIgorIkI8ZHNlbGVjdD4gZXN0IHVuZSBpbnRlcmZhY2UgYXUgZGVzc3VzIGRlIEI8ZHBrZz4oMSksIGwnb3V0aWwgYmFzIG5pdmVhdSBkZSAiCisiZ2VzdGlvbiBkZXMgcGFxdWV0cyBEZWJpYW4uIElsIHByb3Bvc2Ugw6AgbCfDqWNyYW4gdW4gZ2VzdGlvbm5haXJlIGRlICIKKyJzw6lsZWN0aW9ucyBkZSBwYXF1ZXRzIGF2ZWMgbGEgcG9zc2liaWxpdMOpIGRlIHLDqXNvdWRyZSBsZXMgY29uZmxpdHMgZXQgIgorImTDqXBlbmRhbmNlcy4gRXjDqWN1dMOpIGF2ZWMgbGVzIGRyb2l0cyBhZG1pbmlzdHJhdGV1ciwgaWwgcGVybWV0IGQnaW5zdGFsbGVyICIKKyJkZXMgcGFxdWV0cywgbGVzIG1ldHRyZSDDoCBqb3VyIG91IGxlcyByZXRpcmVyLiBQbHVzaWV1cnMgbcOpdGhvZGUgZCdhY2PDqHMgIgorInBldXZlbnQgw6p0cmUgY29uZmlndXLDqWVzIHBvdXIgcsOpY3Vww6lyZXIgbGVzIGluZm9ybWF0aW9ucyBzdXIgbGVzIHZlcnNpb25zICIKKyJkZXMgcGFxdWV0cyBkaXNwb25pYmxlcyBldCBsZXMgcGFxdWV0cyBldXgtbcOqbWVzIGRhbnMgbGVzIGTDqXDDtHRzIGRlIHBhcXVldHMuICIKKyJTdWl2YW50IGxhIG3DqXRob2RlIGQnYWNjw6hzIHV0aWxpc8OpZSwgY2VzIGTDqXDDtHRzIHBldXZlbnQgw6p0cmUgZGVzIHNlcnZldXJzICIKKyJkJ2FyY2hpdmVzIHB1YmxpY3Mgc3VyIEludGVybmV0LCBkZXMgc2VydmV1cnMgbG9jYXV4IG91IGRlcyBDRFJPTS4gTGEgIgorIm3DqXRob2RlIGQnYWNjw6hzIHJlY29tbWFuZMOpZSBlc3QgSTxhcHQ+LCBxdWkgZXN0IGZvdXJuaWUgcGFyIGxlIHBhcXVldCBCPGFwdD4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MzUKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIk5vcm1hbGx5IEI8ZHNlbGVjdD4gaXMgaW52b2tlZCB3aXRob3V0IHBhcmFtZXRlcnMuIEFuIGludGVyYWN0aXZlIG1lbnUgaXMgIgorI3wgInByZXNlbnRlZCwgb2ZmZXJpbmcgdGhlIHVzZXIgYSBsaXN0IG9mIGFjdGlvbnMuIElmIGFuIGFjdGlvbiBpcyBnaXZlbiBhcyAiCisjfCAiYXJndW1lbnQsIHRoZW4gdGhhdCBhY3Rpb24gaXMgc3RhcnRlZCBpbW1lZGlhdGVseS4gU2V2ZXJhbCBjb21tYW5kbGluZSAiCisjfCAicGFyYW1ldGVycyBhcmUgc3RpbGwgYXZhaWxhYmxlIHRvIG1vZGlmeSB0aGUgcnVubmluZyBiZWhhdmlvdXIgb2YgIgorI3wgIkI8ZHNlbGVjdD4gb3Igc2hvdyBhZGRpdGlvbmFsIGluZm9ybWF0aW9uIGFib3V0IHRoZSBwcm9ncmFtLiIKK21zZ2lkICIiCisiTm9ybWFsbHkgQjxkc2VsZWN0PiBpcyBpbnZva2VkIHdpdGhvdXQgcGFyYW1ldGVycy4gQW4gaW50ZXJhY3RpdmUgbWVudSBpcyAiCisicHJlc2VudGVkLCBvZmZlcmluZyB0aGUgdXNlciBhIGxpc3Qgb2YgYWN0aW9ucy4gSWYgYW4gYWN0aW9uIGlzIGdpdmVuIGFzICIKKyJhcmd1bWVudCwgdGhlbiB0aGF0IGFjdGlvbiBpcyBzdGFydGVkIGltbWVkaWF0ZWx5LiBTZXZlcmFsIGNvbW1hbmQgbGluZSAiCisicGFyYW1ldGVycyBhcmUgc3RpbGwgYXZhaWxhYmxlIHRvIG1vZGlmeSB0aGUgcnVubmluZyBiZWhhdmlvdXIgb2YgQjxkc2VsZWN0PiAiCisib3Igc2hvdyBhZGRpdGlvbmFsIGluZm9ybWF0aW9uIGFib3V0IHRoZSBwcm9ncmFtLiIKK21zZ3N0ciAiIgorIk5vcm1hbGVtZW50LCBCPGRzZWxlY3Q+IGVzdCBhcHBlbMOpIHNhbnMgcGFyYW3DqHRyZS4gVW4gbWVudSBpbnRlcmFjdGlmIGVzdCAiCisicHLDqXNlbnTDqSwgb2ZmcmFudCDDoCBsJ3V0aWxpc2F0ZXVyIHVuZSBsaXN0ZSBkJ2FjdGlvbnMuIFNpIHVuZSBhY3Rpb24gZXN0ICIKKyJkb25uw6llIGVuIHBhcmFtw6h0cmUsIGFsb3JzIGNldHRlIGFjdGlvbiBlc3QgZMOpbWFycsOpZSBpbW3DqWRpYXRlbWVudC4gIgorIlBsdXNpZXVycyBwYXJhbcOodHJlcyBlbiBsaWduZSBkZSBjb21tYW5kZSBzb250IGRpc3BvbmlibGVzIHBvdXIgbW9kaWZpZXIgbGUgIgorImNvbXBvcnRlbWVudCBkZSBCPGRzZWxlY3Q+IG91IHBvdXIgbW9udHJlciBkZXMgaW5mb3JtYXRpb25zIHN1cHBsw6ltZW50YWlyZXMgIgorInN1ciBsZSBwcm9ncmFtbWUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NDMKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIkFsbCBvcHRpb25zIGNhbiBiZSBzcGVjaWZpZWQgYm90aCBvbiB0aGUgY29tbWFuZGxpbmUgYW5kIGluIHRoZSAiCisjfCAiQjxkc2VsZWN0PiBjb25maWd1cmF0aW9uIGZpbGUgSTwvZXRjL2Rwa2cvZHNlbGVjdC5jZmc+IG9yIHRoZSBmaWxlcyBvbiAiCisjfCAidGhlIGNvbmZpZ3VyYXRpb24gZGlyZWN0b3J5IEk8L2V0Yy9kcGtnL2Rwa2cuY2ZnLmQvPi4gRWFjaCBsaW5lIGluIHRoZSAiCisjfCAiY29uZmlndXJhdGlvbiBmaWxlIGlzIGVpdGhlciBhbiBvcHRpb24gKGV4YWN0bHkgdGhlIHNhbWUgYXMgdGhlICIKKyN8ICJjb21tYW5kbGluZSBvcHRpb24gYnV0IHdpdGhvdXQgbGVhZGluZyBkYXNoZXMpIG9yIGEgY29tbWVudCAoaWYgaXQgc3RhcnRzICIKKyN8ICJ3aXRoIGEgQjwjPikuIgorbXNnaWQgIiIKKyJBbGwgb3B0aW9ucyBjYW4gYmUgc3BlY2lmaWVkIGJvdGggb24gdGhlIGNvbW1hbmQgbGluZSBhbmQgaW4gdGhlIEI8ZHNlbGVjdD4gIgorImNvbmZpZ3VyYXRpb24gZmlsZSBJPC9ldGMvZHBrZy9kc2VsZWN0LmNmZz4gb3IgdGhlIGZpbGVzIG9uIHRoZSAiCisiY29uZmlndXJhdGlvbiBkaXJlY3RvcnkgSTwvZXRjL2Rwa2cvZHNlbGVjdC5jZmcuZC8+LiBFYWNoIGxpbmUgaW4gdGhlICIKKyJjb25maWd1cmF0aW9uIGZpbGUgaXMgZWl0aGVyIGFuIG9wdGlvbiAoZXhhY3RseSB0aGUgc2FtZSBhcyB0aGUgY29tbWFuZCBsaW5lICIKKyJvcHRpb24gYnV0IHdpdGhvdXQgbGVhZGluZyBkYXNoZXMpIG9yIGEgY29tbWVudCAoaWYgaXQgc3RhcnRzIHdpdGggYSBCPCM+KS4iCittc2dzdHIgIiIKKyJPbiBwZXV0IHNww6ljaWZpZXIgdW5lIG9wdGlvbiDDoCBsYSBmb2lzIHN1ciBsYSBsaWduZSBkZSBjb21tYW5kZSwgZGFucyBsZSAiCisiZmljaGllciBkZSBjb25maWd1cmF0aW9uIGRlIGRzZWxlY3QsIEk8L2V0Yy9kcGtnL2RzZWxlY3QuY2ZnPiBvdSBkYW5zIGxlcyAiCisiZmljaGllcnMgZHUgcsOpcGVydG9pcmUgZGUgY29uZmlndXJhdGlvbiBJPC9ldGMvZHBrZy9kcGtnLmNmZy5kLz4uIENoYXF1ZSAiCisibGlnbmUgZGUgY2UgZmljaGllciBlc3Qgc29pdCB1bmUgb3B0aW9uIChpZGVudGlxdWUgw6AgdW5lIG9wdGlvbiBlbiBsaWduZSBkZSAiCisiY29tbWFuZGUgbWFpcyBzYW5zIHRpcmV0KSwgc29pdCB1biBjb21tZW50YWlyZSwgY29tbWVuw6dhbnQgcGFyIEI8Iz4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NDkKK21zZ2lkICIiCisiQ2hhbmdlcyB0aGUgZGlyZWN0b3J5IHdoZXJlIHRoZSBkcGtnIGBJPHN0YXR1cz4nLCBgSTxhdmFpbGFibGU+JyBhbmQgc2ltaWxhciAiCisiZmlsZXMgYXJlIGxvY2F0ZWQuIFRoaXMgZGVmYXVsdHMgdG8gSTwvdmFyL2xpYi9kcGtnPiBhbmQgbm9ybWFsbHkgdGhlcmUgIgorInNob3VsZG4ndCBiZSBhbnkgbmVlZCB0byBjaGFuZ2UgaXQuIgorbXNnc3RyICIiCisiQ2hhbmdlIGxlIHLDqXBlcnRvaXJlIG/DuSBsZXMgZmljaGllcnMgwqvCoEk8c3RhdHVzPsKgwrssIMKrwqBJPGF2YWlsYWJsZT7CoMK7IGV0ICIKKyJhdXRyZXMgc29udCBzaXR1w6lzLiBMZSByw6lwZXJ0b2lyZSBwYXIgZMOpZmF1dCBlc3QgSTwvdmFyL2xpYi9kcGtnPiBldCBpbCBuZSAiCisiZGV2cmFpdCBwYXMgYXZvaXIgYmVzb2luIGRlIGxlIG1vZGlmaWVyLiIKKworIy4gdHlwZTogVFAKKyM6IGRzZWxlY3QuMTo0OQorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPC0tZGVidWc+STwgRTxsdD5maWxlRTxndD4gPnxJPCA+QjwtRD5JPEU8bHQ+ZmlsZUU8Z3Q+PiIKK21zZ2lkICJCPC0tZGVidWc+STwgZmlsZSA+fEk8ID5CPC1EPkk8ZmlsZT4iCittc2dzdHIgIkI8LS1kZWJ1Zz5JPCBFPGx0PmZpY2hpZXJFPGd0PiA+fEk8ID5CPC1EPkk8RTxsdD5maWNoaWVyRTxndD4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NTIKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlR1cm4gb24gZGVidWdnaW5nLiBEZWJ1Z2dpbmcgaW5mb3JtYXRpb24gaXMgc2VudCB0byBJPEU8bHQ+ZmlsZUU8Z3Q+Pi4iCittc2dpZCAiVHVybiBvbiBkZWJ1Z2dpbmcuIERlYnVnZ2luZyBpbmZvcm1hdGlvbiBpcyBzZW50IHRvIEk8ZmlsZT4uIgorbXNnc3RyICIiCisiQWN0aXZlciBsZSBkw6lib2dhZ2UuIExlcyBpbmZvcm1hdGlvbnMgZGUgZMOpYm9nYWdlIHNvbnQgZW52b3nDqWVzIGRhbnMgbGUgIgorIkk8RTxsdD5maWNoaWVyRTxndD4+LiIKKworIy4gdHlwZTogVFAKKyM6IGRzZWxlY3QuMTo1MgorIywgbm8td3JhcAorbXNnaWQgIkI8LS1leHBlcnQ+IgorbXNnc3RyICJCPC0tZXhwZXJ0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjU2Cittc2dpZCAiIgorIlR1cm5zIG9uIGV4cGVydCBtb2RlLCBpLmUuIGRvZXNuJ3QgZGlzcGxheSBwb3NzaWJseSBhbm5veWluZyBoZWxwIG1lc3NhZ2VzLiIKK21zZ3N0ciAiIgorIkFjdGl2ZXIgbGUgbW9kZSBleHBlcnQsIGMnZXN0LcOgLWRpcmUgbmUgcGFzIGFmZmljaGVyIGxlcyBtZXNzYWdlcyBkJ2FpZGUgIgorImVubnV5ZXV4LiIKKworIy4gdHlwZTogVFAKKyM6IGRzZWxlY3QuMTo1NgorIywgbm8td3JhcAorbXNnaWQgIkI8LS1jb2xvdXI+fEI8LS1jb2xvcj4gSTxzY3JlZW5wYXJ0Oj5bSTxmb3JlZ3JvdW5kPl0sW0k8YmFja2dyb3VuZD5dW0k8OmF0dHI+W0k8K2F0dHIrLi4+XV0iCittc2dzdHIgIkI8LS1jb2xvdXI+fEI8LS1jb2xvcj4gSTxwYXJ0aWVfw6ljcmFuOj5bSTxwcmVtaWVyX3BsYW4+XSxbSTxhcnJpw6hyZV9wbGFuPl1bSTw6YXR0cj5bSTwrYXR0cisuLj5dXSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjYzCittc2dpZCAiIgorIkNvbmZpZ3VyZXMgc2NyZWVuIGNvbG9ycy4gVGhpcyB3b3JrcyBvbmx5IGlmIHlvdXIgZGlzcGxheSBzdXBwb3J0cyBjb2xvcnMuICAiCisiVGhpcyBvcHRpb24gbWF5IGJlIHVzZWQgbXVsdGlwbGUgdGltZXMgKGFuZCBpcyBiZXN0IHVzZWQgaW4gSTxkc2VsZWN0LmNmZz4pLiAiCisiRWFjaCB1c2UgY2hhbmdlcyB0aGUgY29sb3IgKGFuZCBvcHRpb25hbGx5LCBvdGhlciBhdHRyaWJ1dGVzKSBvZiBvbmUgcGFydCBvZiAiCisidGhlIHNjcmVlbi4gIFRoZSBwYXJ0cyBvZiB0aGUgc2NyZWVuIChmcm9tIHRvcCB0byBib3R0b20pIGFyZToiCittc2dzdHIgIiIKKyJDb25maWd1cmUgbGVzIGNvdWxldXJzIGRlcyDDqWNyYW5zLiBDZWNpIG5lIGZvbmN0aW9ubmUgcXVlIHNpIHZvdHJlIHRlcm1pbmFsICIKKyJnw6hyZSBsZXMgY291bGV1cnMuIENldHRlIG9wdGlvbiBwZXV0LcOqdHJlIHV0aWxpc8OpZSBwbHVzaWV1cnMgZm9pcyAoZXQgaWwgZXN0ICIKKyJwcsOpZsOpcmFibGUgZGUgbCd1dGlsaXNlciBkYW5zIEk8ZHNlbGVjdC5jZmc+KS4gQ2hhcXVlIHV0aWxpc2F0aW9uIGNoYW5nZSBsYSAiCisiY291bGV1ciAoZXQsIGVuIG9wdGlvbiwgZCdhdXRyZXMgYXR0cmlidXRzKSBkJ3VuZSBwYXJ0aWUgZGUgbCfDqWNyYW4uIExlcyAiCisicGFydGllcyBkZSBsJ8OpY3JhbiAoZGUgaGF1dCBlbiBiYXMpIHNvbnTCoDoiCisKKyMuIHR5cGU6IFRQCisjOiBkc2VsZWN0LjE6NjQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHRpdGxlPiIKK21zZ3N0ciAiQjx0aXRsZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo2NworbXNnaWQgIlRoZSBzY3JlZW4gdGl0bGUuIgorbXNnc3RyICJMZSB0aXRyZSBkZSBsJ8OpY3Jhbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkc2VsZWN0LjE6NjcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGxpc3RoZWFkPiIKK21zZ3N0ciAiQjxsaXN0aGVhZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo3MAorbXNnaWQgIlRoZSBoZWFkZXIgbGluZSBhYm92ZSB0aGUgbGlzdCBvZiBwYWNrYWdlcy4iCittc2dzdHIgIkxhIGxpZ25lIGQnZW4tdMOqdGUgYXUgZGVzc3VzIGRlIGxhIGxpc3RlIGRlIHBhcXVldHMuIgorCisjLiB0eXBlOiBUUAorIzogZHNlbGVjdC4xOjcwCisjLCBuby13cmFwCittc2dpZCAiQjxsaXN0PiIKK21zZ3N0ciAiQjxsaXN0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjczCittc2dpZCAiVGhlIHNjcm9sbGluZyBsaXN0IG9mIHBhY2thZ2VzIChhbmQgYWxzbyBzb21lIGhlbHAgdGV4dCkuIgorbXNnc3RyICJMYSBsaXN0ZSBkw6lyb3VsYW50ZSBkZSBwYXF1ZXRzIChldCBkZSB0ZXh0ZXMgZXhwbGljYXRpZnMpLiIKKworIy4gdHlwZTogVFAKKyM6IGRzZWxlY3QuMTo3MworIywgbm8td3JhcAorbXNnaWQgIkI8bGlzdHNlbD4iCittc2dzdHIgIkI8bGlzdHNlbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo3NgorbXNnaWQgIlRoZSBzZWxlY3RlZCBpdGVtIGluIHRoZSBsaXN0LiIKK21zZ3N0ciAiTCfDqWzDqW1lbnQgc8OpbGVjdGlvbm7DqSBkYW5zIGxhIGxpc3RlLiIKKworIy4gdHlwZTogVFAKKyM6IGRzZWxlY3QuMTo3NgorIywgbm8td3JhcAorbXNnaWQgIkI8cGtnc3RhdGU+IgorbXNnc3RyICJCPHBrZ3N0YXRlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjgwCittc2dpZCAiIgorIkluIHRoZSBsaXN0IG9mIHBhY2thZ2VzLCB0aGUgdGV4dCBpbmRpY2F0aW5nIHRoZSBjdXJyZW50IHN0YXRlIG9mIGVhY2ggIgorInBhY2thZ2UuIgorbXNnc3RyICIiCisiRGFucyBsYSBsaXN0ZSBkZXMgcGFxdWV0cywgbGUgdGV4dGUgcXVpIGluZGlxdWUgbCfDqXRhdCBhY3R1ZWwgZGUgY2hhcXVlICIKKyJwYXF1ZXQuIgorCisjLiB0eXBlOiBUUAorIzogZHNlbGVjdC4xOjgwCisjLCBuby13cmFwCittc2dpZCAiQjxwa2dzdGF0ZXNlbD4iCittc2dzdHIgIkI8cGtnc3RhdGVzZWw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6ODQKK21zZ2lkICIiCisiSW4gdGhlIGxpc3Qgb2YgcGFja2FnZXMsIHRoZSB0ZXh0IGluZGljYXRpbmcgdGhlIGN1cnJlbnQgc3RhdGUgb2YgdGhlICIKKyJjdXJyZW50bHkgc2VsZWN0ZWQgcGFja2FnZS4iCittc2dzdHIgIiIKKyJEYW5zIGxhIGxpc3RlIGRlcyBwYXF1ZXRzLCBsZSB0ZXh0ZSBxdWkgaW5kaXF1ZSBsJ8OpdGF0IGFjdHVlbCBkdSBwYXF1ZXQgIgorInPDqWxlY3Rpb25uw6kuIgorCisjLiB0eXBlOiBUUAorIzogZHNlbGVjdC4xOjg0CisjLCBuby13cmFwCittc2dpZCAiQjxpbmZvaGVhZD4iCittc2dzdHIgIkI8aW5mb2hlYWQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6ODcKK21zZ2lkICIiCisiVGhlIGhlYWRlciBsaW5lIHRoYXQgZGlzcGxheXMgdGhlIHN0YXRlIG9mIHRoZSBjdXJyZW50bHkgc2VsZWN0ZWQgcGFja2FnZS4iCittc2dzdHIgIkxhIGxpZ25lIGQnZW4tdMOqdGUgcXVpIGFmZmljaGUgbCfDqXRhdCBkdSBwYXF1ZXQgc8OpbGVjdGlvbm7DqS4iCisKKyMuIHR5cGU6IFRQCisjOiBkc2VsZWN0LjE6ODcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGluZm9kZXNjPiIKK21zZ3N0ciAiQjxpbmZvZGVzYz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo5MAorbXNnaWQgIlRoZSBwYWNrYWdlJ3Mgc2hvcnQgZGVzY3JpcHRpb24uIgorbXNnc3RyICJMYSBkZXNjcmlwdGlvbiBjb3VydGUgZHUgcGFxdWV0LiIKKworIy4gdHlwZTogVFAKKyM6IGRzZWxlY3QuMTo5MAorIywgbm8td3JhcAorbXNnaWQgIkI8aW5mbz4iCittc2dzdHIgIkI8aW5mbz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo5MworbXNnaWQgIlVzZWQgdG8gZGlzcGxheSBwYWNrYWdlIGluZm8gc3VjaCBhcyB0aGUgcGFja2FnZSdzIGRlc2NyaXB0aW9uLiIKK21zZ3N0ciAiIgorIlV0aWxpc8OpIHBvdXIgYWZmaWNoZXIgbGVzIGluZm9ybWF0aW9ucyBzdXIgbGUgcGFxdWV0LCBjb21tZSBwYXIgZXhlbXBsZSBsYSAiCisiZGVzY3JpcHRpb24gZHUgcGFxdWV0LiIKKworIy4gdHlwZTogVFAKKyM6IGRzZWxlY3QuMTo5MworIywgbm8td3JhcAorbXNnaWQgIkI8aW5mb2Zvb3Q+IgorbXNnc3RyICJCPGluZm9mb290PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjk2Cittc2dpZCAiVGhlIGxhc3QgbGluZSBvZiB0aGUgc2NyZWVuIHdoZW4gc2VsZWN0aW5nIHBhY2thZ2VzLiIKK21zZ3N0ciAiTGEgZGVybmnDqHJlIGxpZ25lIGRlIGwnw6ljcmFuIGxvcnMgZGUgbGEgc8OpbGVjdGlvbiBkZXMgcGFxdWV0cy4iCisKKyMuIHR5cGU6IFRQCisjOiBkc2VsZWN0LjE6OTYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHF1ZXJ5PiIKK21zZ3N0ciAiQjxxdWVyeT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo5OQorbXNnaWQgIlVzZWQgdG8gZGlzcGxheSBxdWVyeSBsaW5lcyIKK21zZ3N0ciAiVXRpbGlzw6kgcG91ciBsZXMgbGlnbmVzIGRlcyByZWNoZXJjaGVzLiIKKworIy4gdHlwZTogVFAKKyM6IGRzZWxlY3QuMTo5OQorIywgbm8td3JhcAorbXNnaWQgIkI8aGVscHNjcmVlbj4iCittc2dzdHIgIkI8aGVscHNjcmVlbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxMDIKK21zZ2lkICJDb2xvciBvZiBoZWxwIHNjcmVlbnMuIgorbXNnc3RyICJMYSBjb3VsZXVyIGRlcyDDqWNyYW5zIGQnYWlkZS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxMDcKK21zZ2lkICIiCisiQWZ0ZXIgdGhlIHBhcnQgb2YgdGhlIHNjcmVlbiBjb21lcyBhIGNvbG9uIGFuZCB0aGUgY29sb3Igc3BlY2lmaWNhdGlvbi4gWW91ICIKKyJjYW4gc3BlY2lmeSBlaXRoZXIgdGhlIGZvcmVncm91bmQgY29sb3IsIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLCBvciBib3RoLCAiCisib3ZlcnJpZGluZyB0aGUgY29tcGlsZWQtaW4gY29sb3JzLiBVc2Ugc3RhbmRhcmQgY3Vyc2VzIGNvbG9yIG5hbWVzLiIKK21zZ3N0ciAiIgorIkFwcsOocyBsYSBwYXJ0aWUgZGUgbCfDqWNyYW4gY29uY2VybsOpZSwgdmllbnQgdW4gc2lnbmUgZGV1eC1wb2ludHMgZXQgbGEgIgorInNww6ljaWZpY2F0aW9uIGRlcyBjb3VsZXVycy4gUG91ciBzdXJjaGFyZ2VyIGxlcyB2YWxldXJzIGRlcyBjb3VsZXVycyAiCisiY29tcGlsw6llcywgdm91cyBwb3V2ZXogaW5kaXF1ZXIgbGEgY291bGV1ciBkdSBwcmVtaWVyIHBsYW4sIGRlIGwnYXJyacOocmUtIgorInBsYW4sIG91IGxlcyBkZXV4LiBVdGlsaXNleiBsZXMgbm9tcyBzdGFuZGFyZCBkZSBjb3VsZXVycyBjdXJzZXMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTEzCittc2dpZCAiIgorIk9wdGlvbmFsbHksIGFmdGVyIHRoZSBjb2xvciBzcGVjaWZpY2F0aW9uIGlzIGFub3RoZXIgY29sb24sIGFuZCBhbiBhdHRyaWJ1dGUgIgorInNwZWNpZmljYXRpb24uIFRoaXMgaXMgYSBsaXN0IG9mIG9uZSBvciBtb3JlIGF0dHJpYnV0ZXMsIHNlcGFyYXRlZCBieSBwbHVzICIKKyIoXCIrXCIpIGNoYXJhY3RlcnMuIEF2YWlsYWJsZSBhdHRyaWJ1dGVzIGluY2x1ZGUgKG5vdCBhbGwgb2YgdGhlc2Ugd2lsbCB3b3JrICIKKyJvbiBhbGwgdGVybWluYWxzKTogbm9ybWFsLCBzdGFuZG91dCwgdW5kZXJsaW5lLCByZXZlcnNlLCBibGluaywgYnJpZ2h0LCBkaW0sICIKKyJib2xkIgorbXNnc3RyICIiCisiRW4gb3B0aW9uLCBsZXMgc3DDqWNpZmljYXRpb25zIGRlcyBjb3VsZXVycyBwZXV2ZW50IMOqdHJlIHN1aXZpZXMgZCd1biBzaWduZSAiCisiZGV1eC1wb2ludHMgZXQgZGUgbGEgc3DDqWNpZmljYXRpb24gZCd1biBhdHRyaWJ1dC4gSWwgcydhZ2l0IGQndW5lIGxpc3RlICIKKyJkJ2F0dHJpYnV0cywgc8OpcGFyw6lzIHBhciBkZXMgY2FyYWN0w6hyZXMgcGx1cyAowqvCoCvCoMK7KS4gUGFybWkgbGVzIGF0dHJpYnV0cyAiCisiZGlzcG9uaWJsZXMsIG9uIHRyb3V2ZSAodG91cyBuZSBmb25jdGlvbm5lbnQgcGFzIHN1ciB0b3VzIGxlcyB0ZXJtaW5hdXgpwqA6ICIKKyJub3JtYWwsIHN0YW5kb3V0LCB1bmRlcmxpbmUsIHJldmVyc2UsIGJsaW5rLCBicmlnaHQsIGRpbSBldCBib2xkLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjExNgorbXNnaWQgIlByaW50IGEgYnJpZWYgaGVscCB0ZXh0IGFuZCBleGl0IHN1Y2Nlc3NmdWxseS4iCittc2dzdHIgIkFmZmljaGUgdW5lIGFpZGUgcmFwaWRlIGV0IHNlIHRlcm1pbmUgbm9ybWFsZW1lbnQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTE5Cittc2dpZCAiUHJpbnQgdmVyc2lvbiBpbmZvcm1hdGlvbiBhbmQgZXhpdCBzdWNjZXNzZnVsbHkuIgorbXNnc3RyICJBZmZpY2hlIGxhIHZlcnNpb24gZXQgc2UgdGVybWluZSBub3JtYWxlbWVudC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxMjYKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIldoZW4gQjxkc2VsZWN0PiBpcyBzdGFydGVkIGludGVyYWN0aXZlbHksIGl0IHByb21wdHMgdGhlIHVzZXIgd2l0aCBhIG1lbnUgIgorI3wgIm9mIGF2YWlsYWJsZSBhY3Rpb25zOiIKK21zZ2lkICIiCisiV2hlbiBCPGRzZWxlY3Q+IGlzIHN0YXJ0ZWQgaXQgY2FuIHBlcmZvcm0gdGhlIGZvbGxvd2luZyBhY3Rpb25zLCBlaXRoZXIgIgorImRpcmVjdGx5IGlmIGl0IHdhcyBzcGVjaWZpZWQgb24gdGhlIGNvbW1hbmQgbGluZSBvciBieSBwcm9tcHRpbmcgdGhlIHVzZXIgIgorIndpdGggYSBtZW51IG9mIGF2YWlsYWJsZSBhY3Rpb25zIGlmIHJ1bm5pbmcgaW50ZXJhY3RpdmVseToiCittc2dzdHIgIiIKKyJRdWFuZCBCPGRzZWxlY3Q+IGVzdCBkw6ltYXJyw6kgZW4gbW9kZSBpbnRlcmFjdGlmLCB1biBtZW51IHByb3Bvc2Ugw6AgIgorImwndXRpbGlzYXRldXIgdW5lIGxpc3RlIGQnYWN0aW9uc8KgOiIKKworIy4gdHlwZTogU1MKKyM6IGRzZWxlY3QuMToxMjYKKyMsIG5vLXdyYXAKK21zZ2lkICJhY2Nlc3MiCittc2dzdHIgIkFjY8OpZGVyIChhY2Nlc3MpIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTI4Cittc2dpZCAiQ2hvb3NlIGFuZCBjb25maWd1cmUgYW4gYWNjZXNzIG1ldGhvZCB0byBhY2Nlc3MgcGFja2FnZSByZXBvc2l0b3JpZXMuIgorbXNnc3RyICJDaG9pc2lyIGV0IGNvbmZpZ3VyZXIgdW5lIG3DqXRob2RlIGQnYWNjw6hzIGF1eCBkw6lww7R0cyBkZSBwYXF1ZXRzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjEzNAorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiQnkgZGVmYXVsdCwgQjxkc2VsZWN0PiBwcm92aWRlcyBzZXZlcmFsIG1ldGhvZHMgc3VjaCBhcyBJPGZsb3BweT4sICIKKyN8ICJJPGhhcmRkaXNrPiBvciBJPGNkcm9tPiwgYnV0IG90aGVyIHBhY2thZ2VzIG1heSBwcm92aWRlIGFkZGl0aW9uYWwgIgorI3wgIm1ldGhvZHMsIGVnLiB0aGUgSTxhcHQ+IGFjY2VzcyBtZXRob2QgcHJvdmlkZWQgYnkgdGhlIEI8YXB0PiBwYWNrYWdlIG9yICIKKyN8ICJJPG11bHRpX2NkPiBieSB0aGUgQjxkcGtnLW11bHRpY2Q+IHBhY2thZ2UuIgorbXNnaWQgIiIKKyJCeSBkZWZhdWx0LCBCPGRzZWxlY3Q+IHByb3ZpZGVzIHNldmVyYWwgbWV0aG9kcyBzdWNoIGFzIEk8Y2Ryb20+LCAiCisiSTxtdWx0aV9jZD4sIEk8bmZzPiwgSTxtdWx0aV9uZnM+LCBJPGhhcmRkaXNrPiwgSTxtb3VudGVkPiwgSTxtdWx0aV9tb3VudD4sICIKKyJJPGZsb3BweT4gb3IgSTxmdHA+LCBidXQgb3RoZXIgcGFja2FnZXMgbWF5IHByb3ZpZGUgYWRkaXRpb25hbCBtZXRob2RzLCBlZy4gIgorInRoZSBJPGFwdD4gYWNjZXNzIG1ldGhvZCBwcm92aWRlZCBieSB0aGUgQjxhcHQ+IHBhY2thZ2UuIgorbXNnc3RyICIiCisiUGFyIGTDqWZhdXQsIEI8ZHNlbGVjdD4gZm91cm5pdCBwbHVzaWV1cnMgbcOpdGhvZGVzIHRlbGxlcyBxdWUgSTxmbG9wcHk+ICIKKyIoZGlzcXVldHRlKSwgSTxoYXJkZGlzaz4gKGRpc3F1ZSBkdXIpIG91IEk8Y2Ryb20+LCBtYWlzIGQnYXV0cmVzIHBhcXVldHMgIgorInBldXZlbnQgZm91cm5pciBkZXMgbcOpdGhvZGVzIHN1cHBsw6ltZW50YWlyZXMsIGNvbW1lIGxhIG3DqXRob2RlIGQnYWNjw6hzICIKKyJJPGFwdD4gZm91cm5pZSBwYXIgbGUgcGFxdWV0IEI8YXB0PiBvdSBJPG11bHRpX2NkPiBmb3VybmllIHBhciBsZSBwYXF1ZXQgIgorIkI8ZHBrZy1tdWx0aWNkPi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxMzYKK21zZ2lkICJUaGUgdXNlIG9mIHRoZSBJPGFwdD4gYWNjZXNzIG1ldGhvZCBpcyBzdHJvbmdseSByZWNvbW1lbmRlZC4iCittc2dzdHIgIkwndXRpbGlzYXRpb24gZGUgbGEgbcOpdGhvZGUgZCdhY2PDqHMgSTxhcHQ+IGVzdCBmb3J0ZW1lbnQgY29uc2VpbGzDqWUuIgorCisjLiB0eXBlOiBTUworIzogZHNlbGVjdC4xOjEzNworIywgbm8td3JhcAorbXNnaWQgInVwZGF0ZSIKK21zZ3N0ciAiTWlzZSDDoCBqb3VyICh1cGRhdGUpIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTM5Cittc2dpZCAiUmVmcmVzaCB0aGUgYXZhaWxhYmxlIHBhY2thZ2VzIGRhdGFiYXNlLiIKK21zZ3N0ciAiUmFmcmHDrmNoaXIgbGEgbGlzdGUgZGVzIHBhcXVldHMgZGlzcG9uaWJsZXMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTQ2Cittc2dpZCAiIgorIlJldHJpZXZlcyBhIGxpc3Qgb2YgYXZhaWxhYmxlIHBhY2thZ2UgdmVyc2lvbnMgZnJvbSB0aGUgcGFja2FnZSByZXBvc2l0b3J5LCAiCisiY29uZmlndXJlZCBmb3IgdGhlIGN1cnJlbnQgYWNjZXNzIG1ldGhvZCwgYW5kIHVwZGF0ZSB0aGUgZHBrZyBkYXRhYmFzZS4gVGhlICIKKyJwYWNrYWdlIGxpc3RzIGFyZSBjb21tb25seSBwcm92aWRlZCBieSB0aGUgcmVwb3NpdG9yeSBhcyBmaWxlcyBuYW1lZCAiCisiSTxQYWNrYWdlcz4gb3IgSTxQYWNrYWdlcy5nej4uICBUaGVzZSBmaWxlcyBjYW4gYmUgZ2VuZXJhdGVkIGJ5IHJlcG9zaXRvcnkgIgorIm1haW50YWluZXJzLCB1c2luZyB0aGUgcHJvZ3JhbSBCPGRwa2ctc2NhbnBhY2thZ2VzPigxKS4iCittc2dzdHIgIiIKKyJSw6ljdXDDqHJlIHVuZSBsaXN0ZSBkZSB2ZXJzaW9ucyBkZSBwYXF1ZXRzIGRpc3BvbmlibGVzIGRlcHVpcyB1biBkw6lww7R0IGRlICIKKyJwYXF1ZXRzLCBxdWkgYSDDqXTDqSBjb25maWd1csOpIHBvdXIgbGEgbcOpdGhvZGUgZCdhY2PDqHMgYWN0dWVsbGUsIHB1aXMgbWV0IMOgICIKKyJqb3VyIGxhIGJhc2UgZGUgZG9ubsOpZXMgZGUgZHBrZy4gTGVzIGxpc3RlcyBkZSBwYXF1ZXRzIHNvbnQgZCdoYWJpdHVkZSAiCisiZm91cm5pcyBwYXIgbGVzIGTDqXDDtHRzIHNvdXMgbGEgZm9ybWUgZGUgZmljaGllcnMgSTxQYWNrYWdlcz4gb3UgSTxQYWNrYWdlcy4iCisiZ3o+LiBDZXMgZmljaGllcnMgcGV1dmVudCDDqnRyZSBnw6luw6lyw6lzIHBhciBsZXMgcmVzcG9uc2FibGVzIGRlcyBkw6lww7R0cyBncsOiY2UgIgorImF1IHByb2dyYW1tZSBCPGRwa2ctc2NhbnBhY2thZ2VzPigxKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxNDkKK21zZ2lkICIiCisiRGV0YWlscyBvZiB0aGUgdXBkYXRlIGFjdGlvbiBkZXBlbmQgb24gdGhlIGFjY2VzcyBtZXRob2QncyBpbXBsZW1lbnRhdGlvbi4gICIKKyJOb3JtYWxseSB0aGUgcHJvY2VzcyBpcyBzdHJhaWdodGZvcndhcmQgYW5kIHJlcXVpcmVzIG5vIHVzZXIgaW50ZXJhY3Rpb24uIgorbXNnc3RyICIiCisiTGUgZm9uY3Rpb25uZW1lbnQgZMOpdGFpbGzDqSBkZXMgbWlzZXMgw6Agam91ciBkw6lwZW5kIGRlIGwnaW1wbMOpbWVudGF0aW9uIGRlIGxhICIKKyJtw6l0aG9kZSBkJ2FjY8Oocy4gTm9ybWFsZW1lbnQgbGUgcHJvY2Vzc3VzIHNlIHBhc3NlIHRvdXQgc2V1bCwgc2FucyAiCisiaW50ZXJ2ZW50aW9uIGRlIGwndXRpbGlzYXRldXIuIgorCisjLiB0eXBlOiBTUworIzogZHNlbGVjdC4xOjE1MAorIywgbm8td3JhcAorbXNnaWQgInNlbGVjdCIKK21zZ3N0ciAiU8OpbGVjdGlvbm5lciAoc2VsZWN0KSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjE1MgorbXNnaWQgIlZpZXcgb3IgbWFuYWdlIHBhY2thZ2Ugc2VsZWN0aW9ucyBhbmQgZGVwZW5kZW5jaWVzLiIKK21zZ3N0ciAiVm9pciBvdSBnw6lyZXIgbGVzIHBhcXVldHMgc8OpbGVjdGlvbm7DqXMgZXQgbGVzIGTDqXBlbmRhbmNlcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxNTgKK21zZ2lkICIiCisiVGhpcyBpcyB0aGUgbWFpbiBmdW5jdGlvbiBvZiBCPGRzZWxlY3Q+LiBJbiB0aGUgc2VsZWN0IHNjcmVlbiwgdGhlIHVzZXIgY2FuICIKKyJyZXZpZXcgYSBsaXN0IG9mIGFsbCBhdmFpbGFibGUgYW5kIGluc3RhbGxlZCBwYWNrYWdlcy4gV2hlbiBydW4gd2l0aCAiCisiYWRtaW5pc3RyYXRvciBwcml2aWxlZ2VzLCBpdCBpcyBhbHNvIHBvc3NpYmxlIHRvIGludGVyYWN0aXZlbHkgY2hhbmdlICIKKyJwYWNrYWdlcyBzZWxlY3Rpb24gc3RhdGUuIEI8ZHNlbGVjdD4gdHJhY2tzIHRoZSBpbXBsaWNhdGlvbnMgb2YgdGhlc2UgIgorImNoYW5nZXMgdG8gb3RoZXIgZGVwZW5kaW5nIG9yIGNvbmZsaWN0aW5nIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorIklsIHMnYWdpdCBkZSBsYSBmb25jdGlvbiBwcmluY2lwYWxlIGRlIEI8ZHNlbGVjdD4uIERhbnMgbCfDqWNyYW4gZGUgIgorInPDqWxlY3Rpb24sIGwndXRpbGlzYXRldXIgcGV1dCBjb25zdWx0ZXIgbGEgbGlzdGUgZGUgdG91cyBsZXMgcGFxdWV0cyAiCisiZGlzcG9uaWJsZXMgb3UgaW5zdGFsbMOpcy4gRXjDqWN1dMOpIGF2ZWMgbGVzIHByaXZpbMOoZ2VzIGFkbWluaXN0cmF0ZXVyLCBpbCAiCisicGVybWV0IMOpZ2FsZW1lbnQgZGUgY2hhbmdlciBkZSBmYcOnb24gaW50ZXJhY3RpdmUgbCfDqXRhdCBkZSBwYXF1ZXRzICIKKyJzw6lsZWN0aW9ubsOpcy4gQjxkc2VsZWN0PiB2w6lyaWZpZSBsZXMgaW1wbGljYXRpb25zIGRlIGNlcyBjaGFuZ2VtZW50cyB2aXMtw6AtIgorInZpcyBkZXMgZMOpcGVuZGFuY2VzIGV0IGRlcyBjb25mbGl0cyBlbnRyZSBwYXF1ZXRzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjE2NQorbXNnaWQgIiIKKyJXaGVuIGEgY29uZmxpY3Qgb3IgZmFpbGVkIGRlcGVuZHMgaXMgZGV0ZWN0ZWQsIGEgZGVwZW5kZW5jeSByZXNvbHV0aW9uICIKKyJzdWJzY3JlZW4gaXMgcHJvbXB0ZWQgdG8gdGhlIHVzZXIuIEluIHRoaXMgc2NyZWVuLCBhIGxpc3Qgb2YgY29uZmxpY3Rpbmcgb3IgIgorImRlcGVuZGluZyBwYWNrYWdlcyBpcyBzaG93biwgYW5kIGZvciBlYWNoIHBhY2thZ2UgbGlzdGVkLCB0aGUgcmVhc29uIGZvciBpdHMgIgorImxpc3RpbmcgaXMgc2hvd24uIFRoZSB1c2VyIG1heSBhcHBseSB0aGUgc3VnZ2VzdGlvbnMgcHJvcG9zZWQgYnkgQjxkc2VsZWN0PiwgIgorIm92ZXJyaWRlIHRoZW0sIG9yIGJhY2sgb3V0IGFsbCB0aGUgY2hhbmdlcywgaW5jbHVkaW5nIHRoZSBvbmVzIHRoYXQgY3JlYXRlZCAiCisidGhlIHVucmVzb2x2ZWQgZGVwZW5kcyBvciBjb25mbGljdHMuIgorbXNnc3RyICIiCisiTG9yc3F1J3VuIGNvbmZsaXQgb3UgdW5lIGTDqXBlbmRhbmNlIG1hbnF1YW50ZSBlc3QgZMOpdGVjdMOpLCB1biBzb3VzLcOpY3JhbiBkZSAiCisicsOpc29sdXRpb24gZGVzIGTDqXBlbmRhbmNlcyBlc3QgcHJvcG9zw6kgw6AgbCd1dGlsaXNhdGV1ci4gRGFucyBjZXQgw6ljcmFuLCB1bmUgIgorImxpc3RlIGRlIHBhcXVldHMgYXZlYyBkZXMgY29uZmxpdHMgb3UgYXZlYyBkZXMgZMOpcGVuZGFuY2VzIG1hbnF1YW50ZXMgZXN0ICIKKyJhZmZpY2jDqWUgZXQgcG91ciBjaGFxdWUgcGFxdWV0IGxpc3TDqSwgbGEgcmFpc29uIGRlIHNhIHByw6lzZW5jZSBkYW5zIGNldHRlICIKKyJsaXN0ZSBlc3QgaW5kaXF1w6llLiBMJ3V0aWxpc2F0ZXVyIHBldXQgZW5zdWl0ZSBhcHBsaXF1ZXIgbGVzIHN1Z2dlc3Rpb24gZGUgIgorIkI8ZHNlbGVjdD4sIGxlcyBtb2RpZmllciBvdSBzdXBwcmltZXIgdG91dGVzIGxlcyBtb2RpZmljYXRpb25zLCBkb250IGNlbGxlcyAiCisicXVpIG9udCBjcsOpw6kgbGVzIGNvbmZsaXRzIG91IGTDqXBlbmRhbmNlcyBub24gcsOpc29sdWVzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjE2OAorbXNnaWQgIiIKKyJUaGUgdXNlIG9mIHRoZSBpbnRlcmFjdGl2ZSBwYWNrYWdlIHNlbGVjdGlvbnMgbWFuYWdlbWVudCBzY3JlZW4gaXMgZXhwbGFpbmVkICIKKyJpbiBtb3JlIGRldGFpbCBiZWxvdy4iCittc2dzdHIgIiIKKyJMJ3V0aWxpc2F0aW9uIGRlIGwnw6ljcmFuIGludGVyYWN0aWYgZGVzIHPDqWxlY3Rpb25zIGRlIHBhcXVldHMgZXN0IGV4cGxpcXXDqWUgIgorImRlIGZhw6dvbiBwbHVzIGTDqXRhaWxsw6llIGNpLWRlc3NvdXMuIgorCisjLiB0eXBlOiBTUworIzogZHNlbGVjdC4xOjE2OQorIywgbm8td3JhcAorbXNnaWQgImluc3RhbGwiCittc2dzdHIgIkluc3RhbGxlciAoaW5zdGFsbCkiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxNzEKK21zZ2lkICJJbnN0YWxscyBzZWxlY3RlZCBwYWNrYWdlcy4iCittc2dzdHIgIkluc3RhbGxlciBsZXMgcGFxdWV0cyBzw6lsZWN0aW9ubsOpcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxNzcKK21zZ2lkICIiCisiVGhlIGNvbmZpZ3VyZWQgYWNjZXNzIG1ldGhvZCB3aWxsIGZldGNoIGluc3RhbGxhYmxlIG9yIHVwZ3JhZGFibGUgcGFja2FnZXMgIgorImZyb20gdGhlIHJlbGV2YW50IHJlcG9zaXRvcmllcyBhbmQgaW5zdGFsbCB0aGVzZSB1c2luZyBCPGRwa2c+LiAgRGVwZW5kaW5nICIKKyJvbiB0aGUgaW1wbGVtZW50YXRpb24gb2YgdGhlIGFjY2VzcyBtZXRob2QsIGFsbCBwYWNrYWdlcyBjYW4gYmUgcHJlZmV0Y2hlZCAiCisiYmVmb3JlIGluc3RhbGxhdGlvbiwgb3IgZmV0Y2hlZCB3aGVuIG5lZWRlZC4gIFNvbWUgYWNjZXNzIG1ldGhvZHMgbWF5IGFsc28gIgorInJlbW92ZSBwYWNrYWdlcyB0aGF0IHdlcmUgbWFya2VkIGZvciByZW1vdmFsLiIKK21zZ3N0ciAiIgorIkxhIG3DqXRob2RlIGQnYWNjw6hzIHLDqWN1cMOpcmVyYSBkYW5zIGxlcyBkw6lww7R0cyBsZXMgcGFxdWV0cyBxdWkgcGV1dmVudCDDqnRyZSAiCisiaW5zdGFsbMOpcyBvdSBtaXMgw6Agam91ciwgcHVpcyBsZXMgaW5zdGFsbGUgYXZlYyBCPGRwa2c+LiBFbiBmb25jdGlvbiBkZSBsYSAiCisibcOpdGhvZGUgZCdhY2PDqHMsIGxlcyBwYXF1ZXRzIHBldXZlbnQgw6p0cmUgdG91cyByw6ljdXDDqXLDqXMgYXZhbnQgaW5zdGFsbGF0aW9uLCAiCisib3UgcsOpY3Vww6lyw6lzIMOgIGxhIGRlbWFuZGUuIENlcnRhaW5lcyBtw6l0aG9kZXMgZCdhY2PDqHMgcmV0aXJlbnQgw6lnYWxlbWVudCBsZXMgIgorInBhcXVldHMgcXVpIG9udCDDqXTDqSBtYXJxdcOpcyBwb3VyIMOqdHJlIHJldGlyw6lzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjE4NQorbXNnaWQgIiIKKyJJZiBhbiBlcnJvciBvY2N1cnJlZCBkdXJpbmcgaW5zdGFsbCwgaXQgaXMgdXN1YWxseSBhZHZpc2FibGUgdG8gcnVuIGluc3RhbGwgIgorImFnYWluLiBJbiBtb3N0IGNhc2VzLCB0aGUgcHJvYmxlbXMgd2lsbCBkaXNhcHBlYXIgb3IgYmUgc29sdmVkLiAgSWYgcHJvYmxlbXMgIgorInBlcnNpc3Qgb3IgdGhlIGluc3RhbGxhdGlvbiBwZXJmb3JtZWQgd2FzIGluY29ycmVjdCwgcGxlYXNlIGludmVzdGlnYXRlIGludG8gIgorInRoZSBjYXVzZXMgYW5kIGNpcmN1bXN0YW5jZXMsIGFuZCBmaWxlIGEgYnVnIGluIHRoZSBEZWJpYW4gYnVnIHRyYWNraW5nICIKKyJzeXN0ZW0uIEluc3RydWN0aW9ucyBvbiBob3cgdG8gZG8gdGhpcyBjYW4gYmUgZm91bmQgYXQgaHR0cDovL2J1Z3MuZGViaWFuLiIKKyJvcmcvIG9yIGJ5IHJlYWRpbmcgdGhlIGRvY3VtZW50YXRpb24gZm9yIEI8YnVnPigxKSBvciBCPHJlcG9ydGJ1Zz4oMSksIGlmICIKKyJ0aGVzZSBhcmUgaW5zdGFsbGVkLiIKK21zZ3N0ciAiIgorIlNpIHVuZSBlcnJldXIgYXBwYXJhw650IGxvcnMgZGUgbCdpbnN0YWxsYXRpb24sIGlsIGVzdCByZWNvbW1hbmTDqSBkZSAiCisicmVkw6ltYXJyZXIgdW5lIGluc3RhbGxhdGlvbi4gTGEgcGx1cGFydCBkZXMgZm9pcywgbGVzIHByb2Jsw6htZXMgIgorImRpc3BhcmFpc3NlbnQgb3Ugc29udCByw6lzb2x1cy4gU2kgbGVzIHByb2Jsw6htZXMgcGVyc2lzdGVudCBvdSBzaSAiCisibCdpbnN0YWxsYXRpb24gbidlc3QgcGFzIGNvcnJlY3RlLCB2ZXVpbGxleiBleGFtaW5lciBsZXMgY2F1c2VzIGV0ICIKKyJjaXJjb25zdGFuY2VzIHB1aXMgc291bWV0dGV6IHVuIHJhcHBvcnQgZGUgYm9ndWUgYXUgc3lzdMOobWUgZGUgc3VpdmkgZGVzICIKKyJib2d1ZXMgRGViaWFuLiBMZXMgaW5zdHJ1Y3Rpb25zIHBvdXIgc291bWV0dHJlIGNlcyByYXBwb3J0cyBkZSBib2d1ZXMgc2UgIgorInRyb3V2ZW50IHN1ciBodHRwOi8vYnVncy5kZWJpYW4ub3JnLyBvdSBkYW5zIGxhIHBhZ2UgZGUgbWFudWVsIGRlICIKKyJCPHJlcG9ydGJ1Zz4oMSksIHNpIGNlIHBhcXVldCBlc3QgaW5zdGFsbMOpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjE5MgorbXNnaWQgIiIKKyJEZXRhaWxzIG9mIHRoZSBpbnN0YWxsIGFjdGlvbiBkZXBlbmQgb24gdGhlIGFjY2VzcyBtZXRob2QncyBpbXBsZW1lbnRhdGlvbi4gICIKKyJUaGUgdXNlcidzIGF0dGVudGlvbiBhbmQgaW5wdXQgbWF5IGJlIHJlcXVpcmVkIGR1cmluZyBpbnN0YWxsYXRpb24sICIKKyJjb25maWd1cmF0aW9uIG9yIHJlbW92YWwgb2YgcGFja2FnZXMuIFRoaXMgZGVwZW5kcyBvbiB0aGUgbWFpbnRhaW5lciBzY3JpcHRzICIKKyJpbiB0aGUgcGFja2FnZS4gU29tZSBwYWNrYWdlcyBtYWtlIHVzZSBvZiB0aGUgQjxkZWJjb25mPigxKSAgbGlicmFyeSwgIgorImFsbG93aW5nIGZvciBtb3JlIGZsZXhpYmxlIG9yIGV2ZW4gYXV0b21hdGVkIGluc3RhbGxhdGlvbiBzZXR1cHMuIgorbXNnc3RyICIiCisiTGVzIGTDqXRhaWxzIGRlIGwnYWN0aW9uIGQnaW5zdGFsbGF0aW9uIGTDqXBlbmRlbnQgZGUgbCdpbXBsw6ltZW50YXRpb24gZGUgbGEgIgorIm3DqXRob2RlIGQnYWNjw6hzLiBMJ2F0dGVudGlvbiBldCBsYSBjb250cmlidXRpb24gZGUgbCd1dGlsaXNhdGV1ciBwZXV2ZW50ICIKKyLDqnRyZSBuw6ljZXNzYWlyZSBsb3JzIGRlIGwnaW5zdGFsbGF0aW9uIG91IGR1IHJldHJhaXQgZGVzIHBhcXVldHMuIENlY2kgIgorImTDqXBlbmQgZGVzIHNjcmlwdHMgZGVzIHJlc3BvbnNhYmxlcyBkZXMgcGFxdWV0cy4gQ2VydGFpbnMgcGFxdWV0cyB1dGlsaXNlbnQgIgorImxhIGJpYmxpb3Row6hxdWUgQjxkZWJjb25mPigxKSwgY2UgcXVpIHBlcm1ldCBsYSBtaXNlIGVuIHBsYWNlICIKKyJkJ2luc3RhbGxhdGlvbnMgcGx1cyBmbGV4aWJsZXMgb3UgbcOqbWUgYXV0b21hdGlzw6llcy4iCisKKyMuIHR5cGU6IFNTCisjOiBkc2VsZWN0LjE6MTkzCisjLCBuby13cmFwCittc2dpZCAiY29uZmlnIgorbXNnc3RyICJDb25maWd1cmVyIChjb25maWcpIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTk1Cittc2dpZCAiQ29uZmlndXJlcyBhbnkgcHJldmlvdXNseSBpbnN0YWxsZWQsIGJ1dCBub3QgZnVsbHkgY29uZmlndXJlZCBwYWNrYWdlcy4iCittc2dzdHIgIiIKKyJDb25maWd1cmUgbGVzIHBhcXVldHMgZMOpasOgIGluc3RhbGzDqXMgbWFpcyBuJ8OpdGFudCBwYXMgY29tcGzDqHRlbWVudCBpbnN0YWxsw6lzLiIKKworIy4gdHlwZTogU1MKKyM6IGRzZWxlY3QuMToxOTYKKyMsIG5vLXdyYXAKK21zZ2lkICJyZW1vdmUiCittc2dzdHIgIlJldGlyZXIgKHJlbW92ZSkiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxOTgKK21zZ2lkICJSZW1vdmVzIG9yIHB1cmdlcyBpbnN0YWxsZWQgcGFja2FnZXMsIHRoYXQgYXJlIG1hcmtlZCBmb3IgcmVtb3ZhbC4iCittc2dzdHIgIiIKKyJSZXRpcmVyIG91IHB1cmdlciBsZXMgcGFxdWV0cyBpbnN0YWxsw6lzIHF1aSBzb250IG1hcnF1w6lzIGNvbW1lIMOpdGFudCDDoCAiCisicmV0aXJlci4iCisKKyMuIHR5cGU6IFNTCisjOiBkc2VsZWN0LjE6MTk5CisjLCBuby13cmFwCittc2dpZCAicXVpdCIKK21zZ3N0ciAiUXVpdHRlciAocXVpdCkiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToyMDEKK21zZ2lkICJRdWl0IEI8ZHNlbGVjdD4iCittc2dzdHIgIlF1aXR0ZXIgQjxkc2VsZWN0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjIwMworbXNnaWQgIkV4aXRzIHRoZSBwcm9ncmFtIHdpdGggemVybyAoc3VjY2Vzc2Z1bCkgZXJyb3Jjb2RlLiIKK21zZ3N0ciAiUXVpdHRlIGxlIHByb2dyYW1tZSBhdmVjIHVuIGNvZGUgZCdlcnJldXIgZGUgMCAoc3VjY8OocykuIgorCisjLiB0eXBlOiBTSAorIzogZHNlbGVjdC4xOjIwNQorIywgbm8td3JhcAorbXNnaWQgIlBhY2thZ2Ugc2VsZWN0aW9ucyBtYW5hZ2VtZW50IgorbXNnc3RyICJHZXN0aW9uIGRlcyBzw6lsZWN0aW9ucyBkZSBwYXF1ZXRzIgorCisjLiB0eXBlOiBTUworIzogZHNlbGVjdC4xOjIwNworIywgbm8td3JhcAorbXNnaWQgIkludHJvZHVjdGlvbiIKK21zZ3N0ciAiSW50cm9kdWN0aW9uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MjIzCittc2dpZCAiIgorIkI8ZHNlbGVjdD4gZGlyZWN0bHkgZXhwb3NlcyB0aGUgYWRtaW5pc3RyYXRvciB0byBzb21lIG9mIHRoZSBjb21wbGV4aXRpZXMgIgorImludm9sdmVkIHdpdGggbWFuYWdpbmcgbGFyZ2Ugc2V0cyBvZiBwYWNrYWdlcyB3aXRoIG1hbnkgaW50ZXJkZXBlbmRlbmNpZXMuICIKKyJGb3IgYSB1c2VyIHdobyBpcyB1bmZhbWlsaWFyIHdpdGggdGhlIGNvbmNlcHRzIGFuZCB0aGUgd2F5cyBvZiB0aGUgZGViaWFuICIKKyJwYWNrYWdlIG1hbmFnZW1lbnQgc3lzdGVtLCBpdCBjYW4gYmUgcXVpdGUgb3ZlcndoZWxtaW5nLiBBbHRob3VnaCBCPGRzZWxlY3Q+ICIKKyJpcyBhaW1lZCBhdCBlYXNpbmcgcGFja2FnZSBtYW5hZ2VtZW50IGFuZCBhZG1pbmlzdHJhdGlvbiwgaXQgaXMgb25seSAiCisiaW5zdHJ1bWVudGFsIGluIGRvaW5nIHNvIGFuZCBjYW4gbm90IGJlIGFzc3VtZWQgdG8gYmUgYSBzdWZmaWNpZW50ICIKKyJzdWJzdGl0dXRlIGZvciBhZG1pbmlzdHJhdG9yIHNraWxsIGFuZCB1bmRlcnN0YW5kaW5nLiBUaGUgdXNlciBpcyByZXF1aXJlZCAiCisidG8gYmUgZmFtaWxpYXIgd2l0aCB0aGUgY29uY2VwdHMgdW5kZXJseWluZyB0aGUgRGViaWFuIHBhY2thZ2luZyBzeXN0ZW0uICBJbiAiCisiY2FzZSBvZiBkb3VidCwgY29uc3VsdCB0aGUgQjxkcGtnPigxKSBtYW5wYWdlIGFuZCB0aGUgRGViaWFuIFBvbGljeSBtYW51YWwsICIKKyJjb250YWluZWQgaW4gdGhlIEI8ZGViaWFuLXBvbGljeT4gcGFja2FnZS4iCittc2dzdHIgIiIKKyJCPGRzZWxlY3Q+IGV4cG9zZSBkaXJlY3RlbWVudCBsJ2FkbWluaXN0cmF0ZXVyIMOgIHVuZSBwYXJ0aWUgZGUgbGEgY29tcGxleGl0w6kgIgorImxpw6llIMOgIGxhIGdlc3Rpb24gZCd1biBncmFuZCBub21icmUgZGUgcGFxdWV0cyBheWFudCBiZWF1Y291cCBkZSBsaWVucyBlbnRyZSAiCisiZXV4LiBQb3VyIHVuIHV0aWxpc2F0ZXVyIHF1aSBuJ2VzdCBwYXMgaGFiaXR1w6kgYXV4IGNvbmNlcHRzIGV0IGF1IHN5c3TDqG1lIGRlICIKKyJnZXN0aW9uIGRlcyBwYXF1ZXRzIERlYmlhbiwgY2VsYSBwZXV0IMOqdHJlIHBlcnR1cmJhbnQuIE1haXMgQjxkc2VsZWN0PiBlc3QgIgorImNvbsOndSBwb3VyIGFpZGVyIGxhIGdlc3Rpb24gZXQgbCdhZG1pbmlzdHJhdGlvbiBkZXMgcGFxdWV0cy4gQ2Ugbidlc3QgcXUndW4gIgorIm91dGlsLCBldCBuZSBkb2l0IHBhcyByZW1wbGFjZXIgbGEgY29tcHLDqWhlbnNpb24gZXQgbGVzIGFwdGl0dWRlcyBkJ3VuICIKKyJhZG1pbmlzdHJhdGV1ci4gTCd1dGlsaXNhdGV1ciBkb2l0IMOqdHJlIGZhbWlsaWVyIGRlcyBjb25jZXB0cyBzb3VzLWphY2VudHMgIgorImF1IHN5c3TDqG1lIGRlIGdlc3Rpb24gZGVzIHBhcXVldHMgRGViaWFuLiBFbiBjYXMgZGUgZG91dGUsIGNvbnN1bHRleiBsYSBwYWdlICIKKyJkZSBtYW51ZWwgQjxkcGtnPigxKSBldCBsYSBjaGFydGUgRGViaWFuIHByw6lzZW50ZSBkYW5zIGxlIHBhcXVldCBCPGRlYmlhbi0iCisicG9saWN5Pi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToyMjkKK21zZ2lkICIiCisiVW5sZXNzIEI8ZHNlbGVjdD4gaXMgcnVuIGluIGV4cGVydCBvciBpbW1lZGlhdGUgbW9kZSwgYSBoZWxwIHNjcmVlbiBpcyBmaXJzdCAiCisiZGlzcGxheWVkIHdoZW4gY2hvb3NpbmcgdGhpcyBhY3Rpb24gZnJvbSB0aGUgbWVudS4gVGhlIHVzZXIgaXMgSTxzdHJvbmdseT4gIgorImFkdmlzZWQgdG8gc3R1ZHkgYWxsIG9mIHRoZSBpbmZvcm1hdGlvbiBwcmVzZW50ZWQgaW4gdGhlIG9ubGluZSBoZWxwICIKKyJzY3JlZW5zLCB3aGVuIG9uZSBwb3BzIHVwLiAgVGhlIG9ubGluZSBoZWxwIHNjcmVlbnMgY2FuIGF0IGFueSB0aW1lIGJlICIKKyJpbnZva2VkIHdpdGggdGhlIEI8Jz8nPiBrZXkuIgorbXNnc3RyICIiCisiQSBtb2lucyBxdWUgQjxkc2VsZWN0PiBzb2l0IGxhbmPDqSBlbiBtb2RlIGV4cGVydCBvdSBpbnRlcm3DqWRpYWlyZSwgdW4gIgorIm1lc3NhZ2UgZCdhaWRlIGVzdCBkJ2Fib3JkIGFmZmljaMOpIGxvcnNxdWUgY2V0dGUgYWN0aW9uIGVzdCBjaG9pc2llIGRhbnMgbGUgIgorIm1lbnUuIElsIGVzdCBCPGZvcnRlbWVudD4gY29uc2VpbGzDqSDDoCBsJ3V0aWxpc2F0ZXVyIGQnw6l0dWRpZXIgdG91dGVzIGxlcyAiCisiaW5mb3JtYXRpb25zIGRhbnMgY2VzIMOpY3JhbnMgZCdhaWRlIGxvcnNxdSdpbHMgYXBwYXJhaXNzZW50LiBMZXMgw6ljcmFucyAiCisiZCdhaWRlIHBldXZlbnQgw6p0cmUgYWZmaWNow6lzIMOgIHRvdXQgbW9tZW50IMOgIGwnYWlkZSBkZSBsYSB0b3VjaGUgwqvCoEI8Pz7CoMK7LiIKKworIy4gdHlwZTogU1MKKyM6IGRzZWxlY3QuMToyMzAKKyMsIG5vLXdyYXAKK21zZ2lkICJTY3JlZW4gbGF5b3V0IgorbXNnc3RyICJEaXNwb3NpdGlvbiBkZSBsJ8OpY3JhbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjIzOAorbXNnaWQgIiIKKyJUaGUgc2VsZWN0IHNjcmVlbiBpcyBieSBkZWZhdWx0IHNwbGl0IGluIGEgdG9wIGFuZCBhIGJvdHRvbSBoYWxmLiAgVGhlIHRvcCAiCisiaGFsZiBzaG93cyBhIGxpc3Qgb2YgcGFja2FnZXMuIEEgY3Vyc29yIGJhciBjYW4gc2VsZWN0IGFuIGluZGl2aWR1YWwgIgorInBhY2thZ2UsIG9yIGEgZ3JvdXAgb2YgcGFja2FnZXMsIGlmIGFwcGxpY2FibGUsIGJ5IHNlbGVjdGluZyB0aGUgZ3JvdXAgIgorImhlYWRlci4gVGhlIGJvdHRvbSBoYWxmIG9mIHRoZSBzY3JlZW4gc2hvd3Mgc29tZSBkZXRhaWxzIGFib3V0IHRoZSBwYWNrYWdlICIKKyJjdXJyZW50bHkgc2VsZWN0ZWQgaW4gdGhlIHRvcCBoYWxmIG9mIHRoZSBzY3JlZW4uICBUaGUgdHlwZSBvZiBkZXRhaWwgdGhhdCAiCisiaXMgZGlzcGxheWVkIGNhbiBiZSB2YXJpZWQuIgorbXNnc3RyICIiCisiTCfDqWNyYW4gZGUgc8OpbGVjdGlvbiBlc3QgZMOpY291cMOpIHBhciBkw6lmYXV0IGVuIHVuZSBtb2l0acOpIHN1cMOpcmlldXJlIGV0IHVuZSAiCisibW9pdGnDqSBpbmbDqXJpZXVyZS4gTGEgbW9pdGnDqSBzdXDDqXJpZXVyZSBhZmZpY2hlIHVuZSBsaXN0ZSBkZSBwYXF1ZXRzLiBVbiAiCisiY3Vyc2V1ciBwZXJtZXQgZGUgc8OpbGVjdGlvbm5lciB1biBwYXF1ZXQsIG91IHVuIGdyb3VwZSBkZSBwYXF1ZXQgZW4gIgorInPDqWxlY3Rpb25uYW50IGxlIHRpdHJlIGR1IGdyb3VwZSwgc2kgw6dhIHMnYXBwbGlxdWUuIExhIG1vaXRpw6kgaW5mw6lyaWV1cmUgZGUgIgorImwnw6ljcmFuIGFmZmljaGUgbGVzIGTDqXRhaWxzIGR1IHBhcXVldCBzw6lsZWN0aW9ubsOpIGRhbnMgbGEgbW9pdGnDqSBzdXDDqXJpZXVyZS4gIgorIkxlIHR5cGUgZGUgZMOpdGFpbCBhZmZpY2jDqSBwZXV0IHZhcmllci4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToyNDEKK21zZ2lkICIiCisiUHJlc3NpbmcgdGhlIEI8J0knPiBrZXkgdG9nZ2xlcyBhIGZ1bGwtc2NyZWVuIGRpc3BsYXkgb2YgdGhlIHBhY2thZ2VzIGxpc3QsICIKKyJhbiBlbmxhcmdlZCB2aWV3IG9mIHRoZSBwYWNrYWdlIGRldGFpbHMsIG9yIHRoZSBlcXVhbGx5IHNwbGl0IHNjcmVlbi4iCittc2dzdHIgIiIKKyJBcHB1eWV6IHN1ciBsYSB0b3VjaGUgwqvCoEI8ST7CoMK7IHBvdXIgcGFzc2VyIGQndW4gYWZmaWNoYWdlIGRlIGxhIGxpc3RlIGRlcyAiCisicGFxdWV0cyBlbiBtb2RlIHBsZWluLcOpY3Jhbiwgw6AgdW4gYWZmaWNoYWdlIHBsdXMgaW1wb3J0YW50IGRlcyBkw6l0YWlscyBkZXMgIgorInBhcXVldHMgb3Ugw6AgdW4gbW9kZSBwYXJ0YWfDqSDDqXF1aXRhYmxlbWVudC4iCisKKyMuIHR5cGU6IFNTCisjOiBkc2VsZWN0LjE6MjQyCisjLCBuby13cmFwCittc2dpZCAiUGFja2FnZSBkZXRhaWxzIHZpZXciCittc2dzdHIgIlZ1ZSBkZXMgZMOpdGFpbHMgZCd1biBwYXF1ZXQiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToyNTEKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiVGhlIHBhY2thZ2UgZGV0YWlscyB2aWV3IGJ5IGRlZmF1bHQgc2hvd3MgdGhlIGV4dGVuZGVkIHBhY2thZ2UgZGVzY3JpcHRpb25cbiIKKyJmb3IgdGhlIHBhY2thZ2UgdGhhdCBpcyBjdXJyZW50bHkgc2VsZWN0ZWQgaW4gdGhlIHBhY2thZ2VzIHN0YXR1cyBsaXN0LlxuIgorIlRoZSB0eXBlIG9mIGRldGFpbCBjYW4gYmUgdG9nZ2xlZCBieSBwcmVzc2luZyB0aGUgQjwnaSc+IGtleS4gVGhpc1xuIgorImFsdGVybmF0ZXMgYmV0d2VlbjpcbiIKKyIgLSB0aGUgZXh0ZW5kZWQgZGVzY3JpcHRpb25cbiIKKyIgLSB0aGUgY29udHJvbCBpbmZvcm1hdGlvbiBmb3IgdGhlIGluc3RhbGxlZCB2ZXJzaW9uXG4iCisiIC0gdGhlIGNvbnRyb2wgaW5mb3JtYXRpb24gZm9yIHRoZSBhdmFpbGFibGUgdmVyc2lvblxuIgorbXNnc3RyICIiCisiTGEgdnVlIGRlcyBkw6l0YWlscyBkJ3VuIHBhcXVldCBhZmZpY2hlIHBhciBkw6lmYXV0IGxhIGRlc2NyaXB0aW9uIGxvbmd1ZSBkdSBwYXF1ZXQgc8OpbGVjdGlvbm7DqSBkYW5zIGxhIGxpc3RlIGRlcyBwYXF1ZXRzLiBMZSB0eXBlIGRlIGTDqXRhaWwgcGV1dCDDqnRyZSBtb2RpZmnDqSBlbiBwcmVzc2FudCBsYSB0b3VjaGUgwqvCoEI8aT7CoMK7LiBDZWNpIHBlcm1ldCBkZSBwYXNzZXIgZGXCoDpcbiIKKyIgLSBsYSBkZXNjcmlwdGlvbiBsb25ndWVcbiIKKyIgLSBsZXMgaW5mb3JtYXRpb25zIGRlIGNvbnRyw7RsZSBkZSBsYSB2ZXJzaW9uIGluc3RhbGzDqWVcbiIKKyIgLSBsZXMgaW5mb3JtYXRpb25zIGRlIGNvbnRyw7RsZSBkZSBsYSB2ZXJzaW9uIGRpc3BvbmlibGVcbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjI1NQorbXNnaWQgIiIKKyJJbiBhIGRlcGVuZGVuY3kgcmVzb2x1dGlvbiBzY3JlZW4sIHRoZXJlIGlzIGFsc28gdGhlIHBvc3NpYmlsaXR5IG9mIHZpZXdpbmcgIgorInRoZSBzcGVjaWZpYyB1bnJlc29sdmVkIGRlcGVuZHMgb3IgY29uZmxpY3RzIHJlbGF0ZWQgdG8gdGhlIHBhY2thZ2UgYW5kICIKKyJjYXVzaW5nIGl0IHRvIGJlIGxpc3RlZC4iCittc2dzdHIgIiIKKyJEYW5zIHVuIMOpY3JhbiBkZSByw6lzb2x1dGlvbiBkZXMgZMOpcGVuZGFuY2VzLCBvbiBwZXV0IMOpZ2FsZW1lbnQgdm9pciBsZXMgIgorImTDqXBlbmRhbmNlcyBldCBjb25mbGl0cyBzcMOpY2lmaXF1ZXMgYXUgcGFxdWV0IGV0IHF1aSBleHBsaXF1ZW50IGxhIHByw6lzZW5jZSAiCisiZHUgcGFxdWV0IGRhbnMgbGEgbGlzdGUuIgorCisjLiB0eXBlOiBTUworIzogZHNlbGVjdC4xOjI1NgorIywgbm8td3JhcAorbXNnaWQgIlBhY2thZ2VzIHN0YXR1cyBsaXN0IgorbXNnc3RyICJMaXN0ZSBkZXMgw6l0YXRzIGRlcyBwYXF1ZXRzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MjYxCittc2dpZCAiIgorIlRoZSBtYWluIHNlbGVjdCBzY3JlZW4gZGlzcGxheXMgYSBsaXN0IG9mIGFsbCBwYWNrYWdlcyBrbm93biB0byB0aGUgZGViaWFuICIKKyJwYWNrYWdlIG1hbmFnZW1lbnQgc3lzdGVtLiBUaGlzIGluY2x1ZGVzIHBhY2thZ2VzIGluc3RhbGxlZCBvbiB0aGUgc3lzdGVtICIKKyJhbmQgcGFja2FnZXMga25vd24gZnJvbSB0aGUgYXZhaWxhYmxlIHBhY2thZ2VzIGRhdGFiYXNlLiIKK21zZ3N0ciAiIgorIkwnw6ljcmFuIHByaW5jaXBhbCBkZSBzw6lsZWN0aW9uIGFmZmljaGUgdW5lIGxpc3RlIGRlIHRvdXMgbGVzIHBhcXVldHMgY29ubnVzICIKKyJwYXIgbGUgc3lzdMOobWUgZGUgZ2VzdGlvbiBkZXMgcGFxdWV0cyBEZWJpYW4uIENlY2kgaW5jbHVzIGxlcyBwYXF1ZXRzICIKKyJpbnN0YWxsw6lzIHN1ciBsZSBzeXN0w6htZSBldCBsZXMgcGFxdWV0cyBjb25udXMgcGFyIGxhIGJhc2UgZGUgZG9ubsOpZXMgZGVzICIKKyJwYXF1ZXRzIGRpc3BvbmlibGVzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjI2OQorbXNnaWQgIiIKKyJGb3IgZXZlcnkgcGFja2FnZSwgdGhlIGxpc3Qgc2hvd3MgdGhlIHBhY2thZ2UncyBzdGF0dXMsIHByaW9yaXR5LCBzZWN0aW9uLCAiCisiaW5zdGFsbGVkIGFuZCBhdmFpbGFibGUgdmVyc2lvbnMsIHRoZSBwYWNrYWdlIG5hbWUgYW5kIGl0cyBzaG9ydCAiCisiZGVzY3JpcHRpb24sIGFsbCBpbiBvbmUgbGluZS4gQnkgcHJlc3NpbmcgdGhlIEI8J1YnPiBrZXksIHRoZSBkaXNwbGF5IG9mIHRoZSAiCisiaW5zdGFsbGVkIGFuZCBhdmFpbGFibGUgdmVyc2lvbiBjYW4gYmUgdG9nZ2xlZCBiZXR3ZWVuIG9uIGFuIG9mZi4gQnkgIgorInByZXNzaW5nIHRoZSBCPCd2Jz4ga2V5LCB0aGUgcGFja2FnZSBzdGF0dXMgZGlzcGxheSBpcyB0b2dnbGVkIGJldHdlZW4gIgorInZlcmJvc2UgYW5kIHNob3J0aGFuZC4gIFNob3J0aGFuZCBkaXNwbGF5IGlzIHRoZSBkZWZhdWx0LiIKK21zZ3N0ciAiIgorIlBvdXIgdG91cyBsZXMgcGFxdWV0cywgbGEgbGlzdGUgYWZmaWNoZSBzdXIgdW5lIGxpZ25lIGwnw6l0YXQgZHUgcGFxdWV0LCBzYSAiCisicHJpb3JpdMOpLCBzYSBzZWN0aW9uLCBsZXMgdmVyc2lvbnMgaW5zdGFsbMOpZXMgZXQgZGlzcG9uaWJsZXMsIGxlIG5vbSBkdSAiCisicGFxdWV0IGV0IHNhIGRlc2NyaXB0aW9uIGNvdXJ0ZS4gRW4gYXBwdXlhbnQgc3VyIGxhIHRvdWNoZSDCq8KgQjxWPsKgwrssIG9uIHBldXQgIgorImFjdGl2ZXIgb3UgZMOpc2FjdGl2ZXIgbCdhZmZpY2hhZ2UgZGVzIHZlcnNpb25zIGluc3RhbGzDqWVzIGV0IGRpc3BvbmlibGVzLiBFbiAiCisiYXBwdXlhbnQgc3VyIGxhIHRvdWNoZSDCq8KgQjx2PsKgwrssIGwnYWZmaWNoYWdlIGRlIGwnw6l0YXQgcGFzc2UgZCd1biBtb2RlICIKKyJ2ZXJiZXV4IMOgIHVuIG1vZGUgcmFjY291cmNpLiBQYXIgZMOpZmF1dCwgbCfDqXRhdCByYWNjb3VyY2kgZXN0IHV0aWxpc8OpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjI3NQorbXNnaWQgIiIKKyJUaGUgc2hvcnRoYW5kIHN0YXR1cyBpbmRpY2F0aW9uIGNvbnNpc3RzIG9mIGZvdXIgcGFydHM6IGFuIGVycm9yIGZsYWcsIHdoaWNoICIKKyJzaG91bGQgbm9ybWFsbHkgYmUgY2xlYXIsIHRoZSBjdXJyZW50IHN0YXR1cywgdGhlIGxhc3Qgc2VsZWN0aW9uIHN0YXRlIGFuZCAiCisidGhlIGN1cnJlbnQgc2VsZWN0aW9uIHN0YXRlLiAgVGhlIGZpcnN0IHR3byByZWxhdGUgdG8gdGhlIGFjdHVhbCBzdGF0ZSBvZiAiCisidGhlIHBhY2thZ2UsIHRoZSBzZWNvbmQgcGFpciBhcmUgYWJvdXQgdGhlIHNlbGVjdGlvbnMgc2V0IGJ5IHRoZSB1c2VyLiIKK21zZ3N0ciAiIgorIkwnw6l0YXQgcmFjY291cmNpIGNvbnNpc3RlIGVuIDQgcGFydGllc8KgOiB1biBkcmFwZWF1IGQnZXJyZXVyLCBxdWkgZXN0ICIKKyJkJ2hhYml0dWRlIHZpZGUsIGwnw6l0YXQgY291cmFudCwgbCfDqXRhdCBkZSBzw6lsZWN0aW9uIHByw6ljw6lkZW50IGV0IGwnw6l0YXQgZGUgIgorInPDqWxlY3Rpb24gYWN0dWVsLiBMZXMgZGV1eCBwcmVtaWVycyBkb25uZW50IGRlcyBpbmRpY2F0aW9ucyBzdXIgbCfDqXRhdCAiCisiY291cmFudCBkdSBwYXF1ZXQsIGxlcyBkZXV4IHN1aXZhbnRzIGNvbmNlcm5lbnQgbGVzIHPDqWxlY3Rpb25zIGTDqWZpbmllcyBwYXIgIgorImwndXRpbGlzYXRldXIuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MjkzCisjLCBuby13cmFwCittc2dpZCAiIgorIlRoZXNlIGFyZSB0aGUgbWVhbmluZ3Mgb2YgdGhlIHNob3J0aGFuZCBwYWNrYWdlIHN0YXR1cyBpbmRpY2F0b3IgY29kZXM6XG4iCisiIEVycm9yIGZsYWc6XG4iCisiICBJPGVtcHR5PiAgIG5vIGVycm9yXG4iCisiICBCPFI+ICAgICAgIHNlcmlvdXMgZXJyb3IsIG5lZWRzIHJlaW5zdGFsbGF0aW9uO1xuIgorIiBJbnN0YWxsZWQgc3RhdGU6XG4iCisiICBJPGVtcHR5PiAgIG5vdCBpbnN0YWxsZWQ7XG4iCisiICBCPCo+ICAgICAgIGZ1bGx5IGluc3RhbGxlZCBhbmQgY29uZmlndXJlZDtcbiIKKyIgIEI8LT4gICAgICAgbm90IGluc3RhbGxlZCBidXQgc29tZSBjb25maWcgZmlsZXMgbWF5IHJlbWFpbjtcbiIKKyIgIEI8VT4gICAgICAgdW5wYWNrZWQgYnV0IG5vdCB5ZXQgY29uZmlndXJlZDtcbiIKKyIgIEI8Qz4gICAgICAgaGFsZi1jb25maWd1cmVkIChhbiBlcnJvciBoYXBwZW5lZCk7XG4iCisiICBCPEk+ICAgICAgIGhhbGYtaW5zdGFsbGVkIChhbiBlcnJvciBoYXBwZW5lZCkuXG4iCisiIEN1cnJlbnQgYW5kIHJlcXVlc3RlZCBzZWxlY3Rpb25zOlxuIgorIiAgQjwqPiAgICAgICBtYXJrZWQgZm9yIGluc3RhbGxhdGlvbiBvciB1cGdyYWRlO1xuIgorIiAgQjwtPiAgICAgICBtYXJrZWQgZm9yIHJlbW92YWwsIGNvbmZpZ3VyYXRpb24gZmlsZXMgcmVtYWluO1xuIgorIiAgQjw9PiAgICAgICBvbiBob2xkOiBwYWNrYWdlIHdpbGwgbm90IGJlIHByb2Nlc3NlZCBhdCBhbGw7XG4iCisiICBCPF8+ICAgICAgIG1hcmtlZCBmb3IgcHVyZ2UsIGFsc28gcmVtb3ZlIGNvbmZpZ3VyYXRpb247XG4iCisiICBCPG4+ICAgICAgIHBhY2thZ2UgaXMgbmV3IGFuZCBoYXMgeWV0IHRvIGJlIG1hcmtlZC5cbiIKK21zZ3N0ciAiIgorIlZvaWNpIGxhIHNpZ25pZmljYXRpb24gZGVzIGNvZGVzIGQnaW5kaWNhdGlvbiBkZXMgw6l0YXRzwqA6XG4iCisiIERyYXBlYXUgZCdlcnJldXLCoDpcbiIKKyIgIEk8dmlkZT4gICAgYXVjdW5lIGVycmV1csKgO1xuIgorIiAgQjxSPiAgICAgICBlcnJldXIgc8OpcmlldXNlLCByw6lpbnN0YWxsYXRpb24gbsOpY2Vzc2FpcmUuXG4iCisiIMOJdGF0IGQnaW5zdGFsbGF0aW9uwqA6XG4iCisiICBJPHZpZGU+ICAgIHBhcyBpbnN0YWxsw6nCoDtcbiIKKyIgIEI8Kj4gICAgICAgY29tcGzDqHRlbWVudCBpbnN0YWxsw6kgZXQgY29uZmlndXLDqcKgO1xuIgorIiAgQjwtPiAgICAgICBwYXMgaW5zdGFsbMOpLCBtYWlzIGRlcyBmaWNoaWVycyBkZSBjb25maWd1cmF0aW9uIGV4aXN0ZW50IHRvdWpvdXJzwqA7XG4iCisiICBCPFU+ICAgICAgIGTDqXBhcXVldMOpLCBtYWlzIHRvdWpvdXJzIHBhcyBjb25maWd1csOpwqA7XG4iCisiICBCPEM+ICAgICAgIMOgIG1vaXRpw6kgY29uZmlndXLDqSAoaWwgeSBhIGV1IHVuZSBlcnJldXIpwqA7XG4iCisiICBCPEk+ICAgICAgIMOgIG1vaXRpw6kgaW5zdGFsbMOpIChpbCB5IGEgZXUgdW5lIGVycmV1cikuXG4iCisiIFPDqWxlY3Rpb24gYWN0dWVsbGUgZXQgZGVtYW5kw6llwqA6XG4iCisiICBCPCo+ICAgICAgIG1hcnF1w6kgY29tbWUgw6l0YW50IMOgIGluc3RhbGxlciBvdSDDoCBtZXR0cmUgw6Agam91csKgO1xuIgorIiAgQjwtPiAgICAgICBtYXJxdcOpIGNvbW1lIMOpdGFudCDDoCByZXRpcmVyLCBlbiBjb25zZXJ2YW50IGxhIGNvbmZpZ3VyYXRpb27CoDtcbiIKKyIgIEI8PT4gICAgICAgbWFycXXDqSBjb21tZSDDoCBjb25zZXJ2ZXLCoDogbGUgcGFxdWV0IG5lIHNlcmEgcGFzIHRyYWl0w6nCoDtcbiIKKyIgIEI8Xz4gICAgICAgbWFycXXDqSBjb21tZSDDqXRhbnQgw6AgbmV0dG95w6ksIGxhIGNvbmZpZ3VyYXRpb24gc2VyYSByZXRpcsOpZSDDqWdhbGVtZW50wqA7XG4iCisiICBCPG4+ICAgICAgIG5vdXZlYXUgcGFxdWV0LCBuJ2EgdG91am91cnMgcGFzIMOpdMOpIG1hcnF1w6kuXG4iCisKKyMuIHR5cGU6IFNTCisjOiBkc2VsZWN0LjE6Mjk0CisjLCBuby13cmFwCittc2dpZCAiQ3Vyc29yIGFuZCBzY3JlZW4gbW92ZW1lbnQiCittc2dzdHIgIkTDqXBsYWNlbWVudCBkdSBjdXJzZXVyIGV0IGRlIGwnw6ljcmFuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6Mjk5Cittc2dpZCAiIgorIlRoZSBwYWNrYWdlIHNlbGVjdGlvbiBsaXN0IGFuZCB0aGUgZGVwZW5kZW5jeSBjb25mbGljdCByZXNvbHV0aW9uIHNjcmVlbnMgIgorImNhbiBiZSBuYXZpZ2F0ZWQgdXNpbmcgbW90aW9uIGNvbW1hbmRzIG1hcHBlZCB0byB0aGUgZm9sbG93aW5nIGtleXM6IgorbXNnc3RyICIiCisiVm91cyBwb3V2ZXogbmF2aWd1ZXIgZGFucyBsYSBsaXN0ZSBkZSBzw6lsZWN0aW9uIGRlcyBwYXF1ZXRzIGV0IGRhbnMgbCfDqWNyYW4gIgorImRlIHLDqXNvbHV0aW9uIGRlcyBkw6lwZW5kYW5jZXMgZXQgZGVzIGNvbmZsaXRzIMOgIGwnYWlkZSBkZXMgdG91Y2hlcyAiCisic3VpdmFudGVzwqA6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MzE2CisjLCBuby13cmFwCittc2dpZCAiIgorIiAgQjxwLCBVcCwgaz4gICAgICAgICAgIG1vdmUgY3Vyc29yIGJhciB1cFxuIgorIiAgQjxuLCBEb3duLCBqPiAgICAgICAgIG1vdmUgY3Vyc29yIGJhciBkb3duXG4iCisiICBCPFAsIFBndXAsIEJhY2tzcGFjZT4gc2Nyb2xsIGxpc3QgMSBwYWdlIHVwXG4iCisiICBCPE4sIFBnZG4sIFNwYWNlPiAgICAgc2Nyb2xsIGxpc3QgMSBwYWdlIGRvd25cbiIKKyIgIEI8XnA+ICAgICAgICAgICAgICAgICBzY3JvbGwgbGlzdCAxIGxpbmUgdXBcbiIKKyIgIEI8Xm4+ICAgICAgICAgICAgICAgICBzY3JvbGwgbGlzdCAxIGxpbmUgZG93blxuIgorIiAgQjx0LCBIb21lPiAgICAgICAgICAgIGp1bXAgdG8gdG9wIG9mIGxpc3RcbiIKKyIgIEI8ZSwgRW5kPiAgICAgICAgICAgICBqdW1wIHRvIGVuZCBvZiBsaXN0XG4iCisiICBCPHU+ICAgICAgICAgICAgICAgICAgc2Nyb2xsIGluZm8gMSBwYWdlIHVwXG4iCisiICBCPGQ+ICAgICAgICAgICAgICAgICAgc2Nyb2xsIGluZm8gMSBwYWdlIGRvd25cbiIKKyIgIEI8XnU+ICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyAxIGxpbmUgdXBcbiIKKyIgIEI8XmQ+ICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyAxIGxpbmUgZG93blxuIgorIiAgQjxCLCBMZWZ0LWFycm93PiAgICAgIHBhbiBkaXNwbGF5IDEvMyBzY3JlZW4gbGVmdFxuIgorIiAgQjxGLCBSaWdodC1hcnJvdz4gICAgIHBhbiBkaXNwbGF5IDEvMyBzY3JlZW4gcmlnaHRcbiIKKyIgIEI8XmI+ICAgICAgICAgICAgICAgICBwYW4gZGlzcGxheSAxIGNoYXJhY3RlciBsZWZ0XG4iCisiICBCPF5mPiAgICAgICAgICAgICAgICAgcGFuIGRpc3BsYXkgMSBjaGFyYWN0ZXIgcmlnaHRcbiIKK21zZ3N0ciAiIgorIiAgQjxwLCBIYXV0LCBrPiAgICAgICAgICAgICBkw6lwbGFjZSBsZSBjdXJzZXVyIHZlcnMgbGUgaGF1dFxuIgorIiAgQjxuLCBCYXMsIGo+ICAgICAgICAgICAgICBkw6lwbGFjZSBsZSBjdXJzZXVyIHZlcnMgbGUgYmFzXG4iCisiICBCPFAsIFBhZ2UtcHLDqWMuLCBFZmZhY2VyPiBmYWl0IGTDqWZpbGVyIGxhIGxpc3RlIGQndW5lIHBhZ2UgdmVycyBsZSBoYXV0XG4iCisiICBCPE4sIFBhZ2Utc3Vpdi4sIEVzcGFjZT4gIGZhaXQgZMOpZmlsZXIgbGEgbGlzdGUgZCd1bmUgcGFnZSB2ZXJzIGxlIGJhc1xuIgorIiAgQjxecD4gICAgICAgICAgICAgICAgICAgICBmYWl0IGTDqWZpbGVyIGxhIGxpc3RlIGQndW5lIGxpZ25lIHZlcnMgbGUgaGF1dFxuIgorIiAgQjxebj4gICAgICAgICAgICAgICAgICAgICBmYWl0IGTDqWZpbGVyIGxhIGxpc3RlIGQndW5lIGxpZ25lIHZlcnMgbGUgYmFzXG4iCisiICBCPHQsIEhvbWU+ICAgICAgICAgICAgICAgIHNhdXRlIGF1IGTDqWJ1dCBkZSBsYSBsaXN0ZVxuIgorIiAgQjxlLCBGaW4+ICAgICAgICAgICAgICAgICBzYXV0ZSDDoCBsYSBmaW4gZGUgbGEgbGlzdGVcbiIKKyIgIEI8dT4gICAgICAgICAgICAgICAgICAgICAgZmFpdCBkw6lmaWxlciBsZXMgaW5mb3JtYXRpb25zIGQndW5lIHBhZ2UgdmVycyBsZSBoYXV0XG4iCisiICBCPGQ+ICAgICAgICAgICAgICAgICAgICAgIGZhaXQgZMOpZmlsZXIgbGVzIGluZm9ybWF0aW9ucyBkJ3VuZSBwYWdlIHZlcnMgbGUgYmFzXG4iCisiICBCPF51PiAgICAgICAgICAgICAgICAgICAgIGZhaXQgZMOpZmlsZXIgbGVzIGluZm9ybWF0aW9ucyBkJ3VuZSBsaWduZSB2ZXJzIGxlIGhhdXRcbiIKKyIgIEI8XmQ+ICAgICAgICAgICAgICAgICAgICAgZmFpdCBkw6lmaWxlciBsZXMgaW5mb3JtYXRpb25zIGQndW5lIGxpZ25lIHZlcnMgbGUgYmFzXG4iCisiICBCPEIsIGdhdWNoZT4gICAgICAgICAgICAgIGTDqXBsYWNlIGwnYWZmaWNoYWdlIGRlIDEvMyB2ZXJzIGxhIGdhdWNoZVxuIgorIiAgQjxGLCBkcm9pdGU+ICAgICAgICAgICAgICBkw6lwbGFjZSBsJ2FmZmljaGFnZSBkZSAxLzMgdmVycyBsYSBkcm9pdGVcbiIKKyIgIEI8XmI+ICAgICAgICAgICAgICAgICAgICAgZMOpcGxhY2UgbCdhZmZpY2hhZ2UgZCd1biBjYXJhY3TDqHJlIHZlcnMgbGEgZ2F1Y2hlXG4iCisiICBCPF5mPiAgICAgICAgICAgICAgICAgICAgIGTDqXBsYWNlIGwnYWZmaWNoYWdlIGQndW4gY2FyYWN0w6hyZSB2ZXJzIGxhIGRyb2l0ZVxuIgorCisjLiB0eXBlOiBTUworIzogZHNlbGVjdC4xOjMxNworIywgbm8td3JhcAorbXNnaWQgIlNlYXJjaGluZyBhbmQgc29ydGluZyIKK21zZ3N0ciAiUmVjaGVyY2hlcyBldCB0cmlzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MzMxCittc2dpZCAiIgorIlRoZSBsaXN0IG9mIHBhY2thZ2VzIGNhbiBiZSBzZWFyY2hlZCBieSBwYWNrYWdlIG5hbWUuIFRoaXMgaXMgZG9uZSBieSAiCisicHJlc3NpbmcgQjwnLyc+LCBhbmQgdHlwaW5nIGEgc2ltcGxlIHNlYXJjaCBzdHJpbmcuIFRoZSBzdHJpbmcgaXMgIgorImludGVycHJldGVkIGFzIGEgQjxyZWdleD4oNykgIHJlZ3VsYXIgZXhwcmVzc2lvbi4gIElmIHlvdSBhZGQgQjwnL2QnPiB0byB0aGUgIgorInNlYXJjaCBleHByZXNzaW9uLCBkc2VsZWN0IHdpbGwgYWxzbyBzZWFyY2ggaW4gZGVzY3JpcHRpb25zLiBJZiB5b3UgYWRkIEI8Jy8iCisiaSc+IHRoZSBzZWFyY2ggd2lsbCBiZSBjYXNlIGluc2Vuc2l0aXZlLiAgWW91IG1heSBjb21iaW5lIHRoZXNlIHR3byBzdWZmaXhlcyAiCisibGlrZSB0aGlzOiBCPCcvaWQnPi4gIFJlcGVhdGVkIHNlYXJjaGluZyBpcyBhY2NvbXBsaXNoZWQgYnkgcmVwZWF0ZWRseSAiCisicHJlc3NpbmcgdGhlIEI8J24nPiBvciBCPCdcXGUnPiBrZXlzLCB1bnRpbCB0aGUgd2FudGVkIHBhY2thZ2UgaXMgZm91bmQuICBJZiAiCisidGhlIHNlYXJjaCByZWFjaGVzIHRoZSBib3R0b20gb2YgdGhlIGxpc3QsIGl0IHdyYXBzIHRvIHRoZSB0b3AgYW5kIGNvbnRpbnVlcyAiCisic2VhcmNoaW5nIGZyb20gdGhlcmUuIgorbXNnc3RyICIiCisiT24gcGV1dCByZWNoZXJjaGVyIHVuIHBhcXVldCBwYXIgc29uIG5vbSBkYW5zIGxhIGxpc3RlIGRlcyBwYXF1ZXRzLiBQb3VyICIKKyJjZWxhLCBpbCBmYXV0IHByZXNzZXIgbGEgdG91Y2hlIMKrwqBCPC8+wqDCuywgcHVpcyB0YXBlciBsZSB0ZXh0ZSDDoCByZWNoZXJjaGVyLiAiCisiQ2UgdGV4dGUgZXN0IGludGVycHLDqXTDqSBjb21tZSB1bmUgZXhwcmVzc2lvbiByYXRpb25uZWxsZSAodm9pciBCPHJlZ2V4Pig3KSkuICIKKyJTaSB2b3VzIGFqb3V0ZXogwqvCoEI8L2Q+wqDCuyDDoCBsYSByZWNoZXJjaGUsIGRzZWxlY3QgcmVjaGVyY2hlcmEgw6lnYWxlbWVudCBkYW5zICIKKyJsZXMgZGVzY3JpcHRpb25zLiBTaSB2b3VzIGFqb3V0ZXogwqvCoEI8L2k+wqDCuywgbGEgcmVjaGVyY2hlIG5lIHByZW5kIHBhcyBlbiAiCisiY29tcHRlIGxhIGNhc3NlLiBMZXMgZGV1eCBzdWZmaXhlcyBwZXV2ZW50IMOqdHJlIGNvbWJpbsOpcyBjb21tZSBjZWNpwqA6IMKrwqBCPC8iCisiaWQ+wqDCuy4gTGEgcmVjaGVyY2hlIHBldXQgw6p0cmUgcsOpcMOpdMOpZSBlbiBhcHB1eWFudCBzdXIgbGEgdG91Y2hlIMKrwqBCPG4+wqDCuyBvdSAiCisiwqvCoEI8XFxlPsKgwrssIGp1c3F1J8OgIGNlIHF1ZSBsZSBwYXF1ZXQgc29pdCB0cm91dsOpLiBMb3JzcXVlIGxhIHJlY2hlcmNoZSAiCisiYXR0ZWludCBsYSBmaW4gZGUgbGEgbGlzdGUsIGVsbGUgcmVjb21tZW5jZSBhdSBkw6lidXQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MzM4CisjLCBuby13cmFwCittc2dpZCAiIgorIlRoZSBsaXN0IHNvcnQgb3JkZXIgY2FuIGJlIHZhcmllZCBieSBwcmVzc2luZ1xuIgorInRoZSBCPCdvJz4gYW5kIEI8J08nPiBrZXlzIHJlcGVhdGVkbHkuXG4iCisiVGhlIGZvbGxvd2luZyBuaW5lIHNvcnQgb3JkZXJpbmdzIGNhbiBiZSBzZWxlY3RlZDpcbiIKKyIgYWxwaGFiZXQgICAgICAgICAgYXZhaWxhYmxlICAgICAgICAgICBzdGF0dXNcbiIKKyIgcHJpb3JpdHkrc2VjdGlvbiAgYXZhaWxhYmxlK3ByaW9yaXR5ICBzdGF0dXMrcHJpb3JpdHlcbiIKKyIgc2VjdGlvbitwcmlvcml0eSAgYXZhaWxhYmxlK3NlY3Rpb24gICBzdGF0dXMrc2VjdGlvblxuIgorbXNnc3RyICIiCisiT24gcGV1dCBjaGFuZ2VyIGwnb3JkcmUgZHUgdHJpIGVuIGFwcHV5YW50IHN1ciBsYSB0b3VjaGUgwqvCoEI8bz7CoMK7IG91IMKrwqBCPE8+wqDCuy4gTGVzIG5ldWYgc3lzdMOobWVzIGRlIHRyaXMgc3VpdmFudHMgZXhpc3RlbnTCoDpcbiIKKyIgYWxwaGFiw6l0aXF1ZSAgICAgIGRpc3BvbmlibGUgICAgICAgICAgIMOpdGF0XG4iCisiIHByaW9yaXTDqStzZWN0aW9uICBkaXNwb25pYmxlK3ByaW9yaXTDqSAgw6l0YXQrcHJpb3JpdMOpXG4iCisiIHNlY3Rpb24rcHJpb3JpdMOpICBkaXNwb25pYmxlK3NlY3Rpb24gICDDqXRhdCtzZWN0aW9uXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTozNDEKK21zZ2lkICIiCisiV2hlcmUgbm90IGxpc3RlZCBhYm92ZSBleHBsaWNpdGx5LCBhbHBoYWJldGljIG9yZGVyIGlzIHVzZWQgYXMgdGhlIGZpbmFsICIKKyJzdWJvcmRlcmluZyBzb3J0IGtleS4iCittc2dzdHIgIiIKKyJMb3JzcXUnaWwgbidlc3QgcGFzIGluZGlxdcOpLCBsJ29yZHJlIGFscGhhYsOpdGlxdWUgZXN0IHV0aWxpc8OpIGNvbW1lIGRlcm5pZXIgIgorImNyaXTDqHJlIGRlIHRyaS4iCisKKyMuIHR5cGU6IFNTCisjOiBkc2VsZWN0LjE6MzQyCisjLCBuby13cmFwCittc2dpZCAiQWx0ZXJpbmcgc2VsZWN0aW9ucyIKK21zZ3N0ciAiTW9kaWZpZXIgbGVzIHPDqWxlY3Rpb25zIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MzUxCisjLCBuby13cmFwCittc2dpZCAiIgorIlRoZSByZXF1ZXN0ZWQgc2VsZWN0aW9uIHN0YXRlIG9mIGluZGl2aWR1YWwgcGFja2FnZXMgbWF5IGJlXG4iCisiYWx0ZXJlZCB3aXRoIHRoZSBmb2xsb3dpbmcgY29tbWFuZHM6XG4iCisiICBCPCssIEluc2VydD4gICAgaW5zdGFsbCBvciB1cGdyYWRlXG4iCisiICBCPD0sIEg+ICAgICAgICAgaG9sZCBpbiBwcmVzZW50IHN0YXRlIGFuZCB2ZXJzaW9uXG4iCisiICBCPDosIEc+ICAgICAgICAgdW5ob2xkOiB1cGdyYWRlIG9yIGxlYXZlIHVuaW5zdGFsbGVkXG4iCisiICBCPC0sIERlbGV0ZT4gICAgcmVtb3ZlLCBidXQgbGVhdmUgY29uZmlndXJhdGlvblxuIgorIiAgQjxfPiAgICAgICAgICAgIHJlbW92ZSAmIHB1cmdlIGNvbmZpZ3VyYXRpb25cbiIKK21zZ3N0ciAiIgorIkxlIHR5cGUgZGUgc8OpbGVjdGlvbiBkZW1hbmTDqSBkJ3VuIHBhcXVldCBwZXV0IMOqdHJlIGNoYW5nw6kgw6AgbCdhaWRlIGRlcyBjb21tYW5kZXMgc3VpdmFudGVzwqA6XG4iCisiICBCPCssIEluc2VyPiAgICAgaW5zdGFsbGVyIG91IG1ldHRyZSDDoCBqb3VyXG4iCisiICBCPD0sIEg+ICAgICAgICAgw6AgZ2FyZGVyIGRhbnMgbCfDqXRhdCBldCBsYSB2ZXJzaW9uIGFjdHVlbHNcbiIKKyIgIEI8OiwgRz4gICAgICAgICBuZSBwbHVzIGdhcmRlcsKgOiBtZXR0cmUgw6Agam91ciBvdSBsYWlzc2VyIG5vbiBpbnN0YWxsw6lcbiIKKyIgIEI8LSwgU3VwcHI+ICAgICByZXRpcmVyLCBlbiBnYXJkYW50IGxhIGNvbmZpZ3VyYXRpb25cbiIKKyIgIEI8Xz4gICAgICAgICAgICByZXRpcmVyIGV0IHN1cHByaW1lciBsYSBjb25maWd1cmF0aW9uXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTozNTUKK21zZ2lkICIiCisiV2hlbiB0aGUgY2hhbmdlIHJlcXVlc3QgcmVzdWx0cyBpbiBvbmUgb3IgbW9yZSB1bnNhdGlzZmllZCBkZXBlbmRzIG9yICIKKyJjb25mbGljdHMsIEI8ZHNlbGVjdD4gcHJvbXB0cyB0aGUgdXNlciB3aXRoIGEgZGVwZW5kZW5jeSByZXNvbHV0aW9uIHNjcmVlbi4gIgorIlRoaXMgd2lsbCBiZSBmdXJ0aGVyIGV4cGxhaW5lZCBiZWxvdy4iCittc2dzdHIgIiIKKyJMb3JzcXVlIGxhIGRlbWFuZGUgZGUgbW9kaWZpY2F0aW9uIGVudHJhw65uZSBkZXMgZMOpcGVuZGFuY2VzIG5vbiBzYXRpc2ZhaXRlcyAiCisib3UgZGVzIGNvbmZsaXRzLCBCPGRzZWxlY3Q+IGZvdXJuaXQgw6AgbCd1dGlsaXNhdGV1ciB1biDDqWNyYW4gZGUgcsOpc29sdXRpb24gIgorImRlcyBkw6lwZW5kYW5jZXMuIENlY2kgc2VyYSBkw6ljcml0IHBsdXMgdGFyZC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTozNjAKK21zZ2lkICIiCisiSXQgaXMgYWxzbyBwb3NzaWJsZSB0byBhcHBseSB0aGVzZSBjb21tYW5kcyB0byBncm91cHMgb2YgcGFja2FnZSBzZWxlY3Rpb25zLCAiCisiYnkgcG9pbnRpbmcgdGhlIGN1cnNvciBiYXIgb250byBhIGdyb3VwIGhlYWRlci4gVGhlIGV4YWN0IGdyb3VwaW5nIG9mICIKKyJwYWNrYWdlcyBpcyBkZXBlbmRlbnQgb24gdGhlIGN1cnJlbnQgbGlzdCBvcmRlcmluZyBzZXR0aW5ncy4iCittc2dzdHIgIiIKKyJJbCBlc3Qgw6lnYWxlbWVudCBwb3NzaWJsZSBkJ2FwcGxpcXVlciBjZXMgY29tbWFuZGVzIMOgIGRlcyBncm91cGVzIGRlICIKKyJzw6lsZWN0aW9ucyBkZSBwYXF1ZXRzIGVuIHBsYcOnYW50IGxlIGN1cnNldXIgc3VyIGxlIHRpdHJlIGQndW4gZ3JvdXBlLiBMZSAiCisicmVncm91cGVtZW50IGRlcyBwYXF1ZXRzIGTDqXBlbmQgZGUgbGEgZmHDp29uIGRvbnQgbGVzIHBhcXVldHMgc29udCB0cmnDqXMgZGFucyAiCisibGEgbGlzdGUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MzY2Cittc2dpZCAiIgorIlByb3BlciBjYXJlIHNob3VsZCBiZSB0YWtlbiB3aGVuIGFsdGVyaW5nIGxhcmdlIGdyb3VwcyBvZiBzZWxlY3Rpb25zLCAiCisiYmVjYXVzZSB0aGlzIGNhbiBpbnN0YW50YW5lb3VzbHkgY3JlYXRlIGxhcmdlIG51bWJlcnMgb2YgdW5yZXNvbHZlZCBkZXBlbmRzICIKKyJvciBjb25mbGljdHMsIGFsbCBvZiB3aGljaCB3aWxsIGJlIGxpc3RlZCBpbiBvbmUgZGVwZW5kZW5jeSByZXNvbHV0aW9uICIKKyJzY3JlZW4sIG1ha2luZyB0aGVtIHZlcnkgaGFyZCB0byBoYW5kbGUuIEluIHByYWN0aWNlLCBvbmx5IGhvbGQgYW5kIHVuaG9sZCAiCisib3BlcmF0aW9ucyBhcmUgdXNlZnVsIHdoZW4gYXBwbGllZCB0byBncm91cHMuIgorbXNnc3RyICIiCisiVW5lIGF0dGVudGlvbiBwYXJ0aWN1bGnDqHJlIGRvaXQgw6p0cmUgcHJpc2UgbG9ycyBkZSBsYSBtb2RpZmljYXRpb24gZGUgZ3JhbmRzICIKKyJncm91cGVzIGRlIHPDqWxlY3Rpb25zLCBwYXJjZSBxdSdpbHMgcGV1dmVudCBjcsOpZXIgcmFwaWRlbWVudCB1biBub21icmUgIgorImltcG9ydGFudCBkZSBkw6lwZW5kYW5jZXMgbm9uIHLDqXNvbHVlcyBvdSBkZSBjb25mbGl0cywgcXVpIHNlcmFpZW50IHRvdXMgIgorImxpc3TDqXMgZGFucyB1biDDqWNyYW4gZGUgcsOpc29sdXRpb24gZGUgZMOpcGVuZGFuY2VzLCBsZSByZW5kYW50IGRpZmZpY2lsZSDDoCAiCisidXRpbGlzZXIuIEVuIHByYXRpcXVlLCBzZXVsZXMgbGVzIG9ww6lyYXRpb25zIMKrwqDDoCBnYXJkZXLCoMK7IGV0IMKrwqBuZSBwbHVzICIKKyJnYXJkZXLCoMK7IHNvbnQgdXRpbGVzIHBvdXIgbGVzIGdyb3VwZXMuIgorCisjLiB0eXBlOiBTUworIzogZHNlbGVjdC4xOjM2NworIywgbm8td3JhcAorbXNnaWQgIlJlc29sdmluZyBkZXBlbmRzIGFuZCBjb25mbGljdHMiCittc2dzdHIgIlLDqXNvdWRyZSBsZXMgZMOpcGVuZGFuY2VzIGV0IGxlcyBjb25mbGl0cyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjM3MgorbXNnaWQgIiIKKyJXaGVuIHRoZSBjaGFuZ2UgcmVxdWVzdCByZXN1bHRzIGluIG9uZSBvciBtb3JlIHVuc2F0aXNmaWVkIGRlcGVuZHMgb3IgIgorImNvbmZsaWN0cywgQjxkc2VsZWN0PiBwcm9tcHRzIHRoZSB1c2VyIHdpdGggYSBkZXBlbmRlbmN5IHJlc29sdXRpb24gc2NyZWVuLiAiCisiRmlyc3QgaG93ZXZlciwgYW4gaW5mb3JtYXRpdmUgaGVscCBzY3JlZW4gaXMgZGlzcGxheWVkLiIKK21zZ3N0ciAiIgorIkxvcnNxdWUgbGEgZGVtYW5kZSBkZSBtb2RpZmljYXRpb24gZW50cmHDrm5lIGRlcyBkw6lwZW5kYW5jZXMgbm9uIHNhdGlzZmFpdGVzICIKKyJvdSBkZXMgY29uZmxpdHMsIEI8ZHNlbGVjdD4gZm91cm5pdCDDoCBsJ3V0aWxpc2F0ZXVyIHVuIMOpY3JhbiBkZSByw6lzb2x1dGlvbiAiCisiZGVzIGTDqXBlbmRhbmNlcy4gTWFpcyB1biDDqWNyYW4gZCdpbmZvcm1hdGlvbiBlc3QgYWZmaWNow6kgZGFucyB1biBwcmVtaWVyICIKKyJ0ZW1wcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTozNzkKK21zZ2lkICIiCisiVGhlIHRvcCBoYWxmIG9mIHRoaXMgc2NyZWVuIGxpc3RzIGFsbCB0aGUgcGFja2FnZXMgdGhhdCB3aWxsIGhhdmUgdW5yZXNvbHZlZCAiCisiZGVwZW5kcyBvciBjb25mbGljdHMsIGFzIGEgcmVzdWx0IG9mIHRoZSByZXF1ZXN0ZWQgY2hhbmdlLCBhbmQgYWxsIHRoZSAiCisicGFja2FnZXMgd2hvc2UgaW5zdGFsbGF0aW9uIGNhbiByZXNvbHZlIGFueSBvZiB0aGVzZSBkZXBlbmRzIG9yIHdob3NlICIKKyJyZW1vdmFsIGNhbiByZXNvbHZlIGFueSBvZiB0aGUgY29uZmxpY3RzLiAgVGhlIGJvdHRvbSBoYWxmIGRlZmF1bHRzIHRvIHNob3cgIgorInRoZSBkZXBlbmRzIG9yIGNvbmZsaWN0cyB0aGF0IGNhdXNlIHRoZSBjdXJyZW50bHkgc2VsZWN0ZWQgcGFja2FnZSB0byBiZSAiCisibGlzdGVkLiIKK21zZ3N0ciAiIgorIkxhIG1vaXRpw6kgc3Vww6lyaWV1cmUgZGUgY2V0IMOpY3JhbiBsaXN0ZSB0b3VzIGxlcyBwYXF1ZXRzIGF5YW50IGRlcyAiCisiZMOpcGVuZGFuY2VzIG5vbiByw6lzb2x1ZXMgb3UgZGVzIGNvbmZsaXRzIGR1cyBhdXggbW9kaWZpY2F0aW9ucyBkZW1hbmTDqWVzLCAiCisiYWluc2kgcXVlIGxlcyBwYXF1ZXRzIGRvbnQgbCdpbnN0YWxsYXRpb24gcGVybWV0dHJhaXQgZGUgcsOpc291ZHJlIHVuZSAiCisiZMOpcGVuZGFuY2Ugb3UgZG9udCBsZSByZXRyYWl0IHBlcm1ldHRyYWl0IGRlIHLDqXNvdWRyZSB1biBjb25mbGl0LiBMYSBtb2l0acOpICIKKyJpbmbDqXJpZXVyZSBhZmZpY2hlIHBhciBkw6lmYXV0IGxlcyBkw6lwZW5kYW5jZXMgb3UgY29uZmxpdHMgcG91ciBsZXNxdWVscyBsZSAiCisicGFxdWV0IHPDqWxlY3Rpb25uw6kgc2UgdHJvdXZlIHByw6lzZW50IGRhbnMgbGEgbGlzdGUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6Mzg1Cittc2dpZCAiIgorIldoZW4gdGhlIHN1Ymxpc3Qgb2YgcGFja2FnZXMgaXMgZGlzcGxheWVkIGluaXRpYWxseSwgQjxkc2VsZWN0PiBtYXkgaGF2ZSAiCisiYWxyZWFkeSBzZXQgdGhlIHJlcXVlc3RlZCBzZWxlY3Rpb24gc3RhdHVzIG9mIHNvbWUgb2YgdGhlIGxpc3RlZCBwYWNrYWdlcywgIgorImluIG9yZGVyIHRvIHJlc29sdmUgdGhlIGRlcGVuZHMgb3IgY29uZmxpY3RzIHRoYXQgY2F1c2VkIHRoZSBkZXBlbmRlbmN5ICIKKyJyZXNvbHV0aW9uIHNjcmVlbiB0byBiZSBkaXNwbGF5ZWQuIFVzdWFsbHksIGl0IGlzIGJlc3QgdG8gZm9sbG93IHVwIHRoZSAiCisic3VnZ2VzdGlvbnMgbWFkZSBieSBCPGRzZWxlY3Q+LiIKK21zZ3N0ciAiIgorIlF1YW5kIGxhIHNvdXMtbGlzdGUgZGUgcGFxdWV0cyBlc3QgYWZmaWNow6llIHBvdXIgbGEgcHJlbWnDqHJlIGZvaXMsICIKKyJCPGRzZWxlY3Q+IHBldXQgYXZvaXIgZMOpasOgIGZpeMOpIGxlcyDDqXRhdHMgZGVtYW5kw6lzIHBvdXIgY2VydGFpbnMgZGVzIHBhcXVldHMgIgorImxpc3TDqXMsIGNlY2kgYWZpbiBkZSByw6lzb3VkcmUgbGVzIGTDqXBlbmRhbmNlcyBvdSBsZXMgY29uZmxpdHMgcXVpIG9udCBjYXVzw6kgIgorImwnYXBwYXJpdGlvbiBkZSBsJ8OpY3JhbiBkZSByw6lzb2x1dGlvbiBkZXMgZMOpcGVuZGFuY2VzLiBJbCBlc3QgZCdoYWJpdHVkZSAiCisicmVjb21tYW5kw6kgZGUgc3VpdnJlIGxlcyBzdWdnZXN0aW9ucyBkZSBCPGRzZWxlY3Q+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjM5MworbXNnaWQgIiIKKyJUaGUgbGlzdGVkIHBhY2thZ2VzJyBzZWxlY3Rpb24gc3RhdGUgbWF5IGJlIHJldmVydGVkIHRvIHRoZSBvcmlnaW5hbCAiCisic2V0dGluZ3MsIGFzIHRoZXkgd2VyZSBiZWZvcmUgdGhlIHVucmVzb2x2ZWQgZGVwZW5kcyBvciBjb25mbGljdHMgd2VyZSAiCisiY3JlYXRlZCwgYnkgcHJlc3NpbmcgdGhlIEI8J1InPiBrZXkuIEJ5IHByZXNzaW5nIHRoZSBCPCdEJz4ga2V5LCB0aGUgIgorImF1dG9tYXRpYyBzdWdnZXN0aW9ucyBhcmUgcmVzZXQsIGJ1dCB0aGUgY2hhbmdlIHRoYXQgY2F1c2VkIHRoZSBkZXBlbmRlbmN5ICIKKyJyZXNvbHV0aW9uIHNjcmVlbiB0byBiZSBwcm9tcHRlZCBpcyBrZXB0IGFzIHJlcXVlc3RlZC4gIEZpbmFsbHksIGJ5IHByZXNzaW5nICIKKyJCPCdVJz4sIHRoZSBzZWxlY3Rpb25zIGFyZSBhZ2FpbiBzZXQgdG8gdGhlIGF1dG9tYXRpYyBzdWdnZXN0aW9uIHZhbHVlcy4iCittc2dzdHIgIiIKKyJMZSB0eXBlIGRlIHPDqWxlY3Rpb24gZGVzIHBhcXVldHMgbGlzdMOpcyBwZXV0IMOqdHJlIHJlbWlzIGRhbnMgbGV1cnMgw6l0YXRzICIKKyJwcsOpY8OpZGVudHMsIGF2YW50IHF1ZSBsZSBwcm9ibMOobWUgZGUgZMOpcGVuZGFuY2Ugb3UgbGUgY29uZmxpdCBzb2l0IGNyw6nDqSwgZW4gIgorImFwcHV5YW50IHN1ciBsYSB0b3VjaGUgwqvCoEI8Uj7CoMK7LiBMYSB0b3VjaGUgwqvCoEI8RD7CoMK7IHBlcm1ldCBkZSByZW1ldHRyZSDDoCAiCisiesOpcm8gbGVzIHN1Z2dlc3Rpb25zIGF1dG9tYXRpcXVlcywgdG91dCBlbiBjb25zZXJ2YW50IGxlcyBtb2RpZmljYXRpb25zIHF1aSAiCisib250IGNhdXPDqWVzIGwnYXBwYXJpdGlvbiBkZSBsJ8OpY3JhbiBkZSByw6lzb2x1dGlvbiBkZXMgZMOpcGVuZGFuY2VzLiBFbmZpbiwgbGEgIgorInRvdWNoZSDCq8KgQjxVPsKgwrsgcGVybWV0IGRlIHLDqXRhYmxpciBsZXMgc3VnZ2VzdGlvbnMgYXV0b21hdGlxdWVzLiIKKworIy4gdHlwZTogU1MKKyM6IGRzZWxlY3QuMTozOTQKKyMsIG5vLXdyYXAKK21zZ2lkICJFc3RhYmxpc2hpbmcgdGhlIHJlcXVlc3RlZCBzZWxlY3Rpb25zIgorbXNnc3RyICLDiXRhYmxpciBsZXMgc8OpbGVjdGlvbnMgZGVtYW5kw6llcyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjQwMQorbXNnaWQgIiIKKyJCeSBwcmVzc2luZyBCPGVudGVyPiwgdGhlIGN1cnJlbnRseSBkaXNwbGF5ZWQgc2V0IG9mIHNlbGVjdGlvbnMgaXMgYWNjZXB0ZWQuICIKKyJJZiBCPGRzZWxlY3Q+IGRldGVjdHMgbm8gdW5yZXNvbHZlZCBkZXBlbmRzIGFzIGEgcmVzdWx0IG9mIHRoZSByZXF1ZXN0ZWQgIgorInNlbGVjdGlvbnMsIHRoZSBuZXcgc2VsZWN0aW9ucyB3aWxsIGJlIHNldC4gIEhvd2V2ZXIsIGlmIHRoZXJlIGFyZSBhbnkgIgorInVucmVzb2x2ZWQgZGVwZW5kcywgQjxkc2VsZWN0PiB3aWxsIGFnYWluIHByb21wdCB0aGUgdXNlciB3aXRoIGEgZGVwZW5kZW5jeSAiCisicmVzb2x1dGlvbiBzY3JlZW4uIgorbXNnc3RyICIiCisiRW4gYXBwdXlhbnQgc3VyIEI8RW50csOpZT4sIGxlcyBzw6lsZWN0aW9ucyBhZmZpY2jDqWVzIHNvbnQgYWNjZXB0w6llcy4gU2kgIgorIkI8ZHNlbGVjdD4gbmUgZMOpdGVjdGUgcGFzIGRlIGTDqXBlbmRhbmNlcyBub24gcsOpc29sdWVzIGR1IGZhaXQgZGUgY2VzICIKKyJzw6lsZWN0aW9ucywgbGVzIG5vdXZlbGxlcyBzw6lsZWN0aW9ucyBzb250IMOpdGFibGllcy4gQ2VwZW5kYW50LCBzaSBkZXMgIgorImTDqXBlbmRhbmNlcyBub24gcsOpc29sdWVzIHNvbnQgdHJvdXbDqWVzLCBCPGRzZWxlY3Q+IGFmZmljaGVyYSBkZSBub3V2ZWF1IHVuICIKKyLDqWNyYW4gZGUgcsOpc29sdXRpb24gZGVzIGTDqXBlbmRhbmNlcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0MDcKK21zZ2lkICIiCisiVG8gYWx0ZXIgYSBzZXQgb2Ygc2VsZWN0aW9ucyB0aGF0IGNyZWF0ZXMgdW5yZXNvbHZlZCBkZXBlbmRzIG9yIGNvbmZsaWN0cyAiCisiYW5kIGZvcmNpbmcgQjxkc2VsZWN0PiB0byBhY2NlcHQgaXQsIHByZXNzIHRoZSBCPCdRJz4ga2V5LiBUaGlzIHNldHMgdGhlICIKKyJzZWxlY3Rpb25zIGFzIHNwZWNpZmllZCBieSB0aGUgdXNlciwgdW5jb25kaXRpb25hbGx5LiBHZW5lcmFsbHksIGRvbid0IGRvICIKKyJ0aGlzIHVubGVzcyB5b3UndmUgcmVhZCB0aGUgZmluZSBwcmludC4iCittc2dzdHIgIiIKKyJQb3VyIG1vZGlmaWVyIHVuIGpldSBkZSBzw6lsZWN0aW9ucyBxdWkgY2F1c2VudCBkZXMgZMOpcGVuZGFuY2VzIG5vbiByw6lzb2x1ZXMgIgorIm91IGRlcyBjb25mbGl0cywgZXQgZm9yY2VyIEI8ZHNlbGVjdD4gw6AgbCdhY2NlcHRlciwgYXBwdXlleiBzdXIgbGEgdG91Y2hlICIKKyLCq8KgQjxRPsKgwrsuIENlY2kgZml4ZSBsZXMgc8OpbGVjdGlvbnMgdGVsbGVzIHF1J2VsbGVzIHNvbnQgZMOpZmluaWVzIHBhciAiCisibCd1dGlsaXNhdGV1ciwgc2FucyBjb25kaXRpb24uIEVuIGfDqW7DqXJhbCwgbmUgZmFpdGVzIHBhcyBjZWxhLCBzYXVmIHNpIHZvdXMgIgorImF2ZXogYmllbiBsdSBjZSBxdSdpbCB5IGEgZCfDqWNyaXQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NDE0Cittc2dpZCAiIgorIlRoZSBvcHBvc2l0ZSBlZmZlY3QsIHRvIGJhY2sgb3V0IGFueSBzZWxlY3Rpb25zIGNoYW5nZSByZXF1ZXN0cyBhbmQgZ28gYmFjayAiCisidG8gdGhlIHByZXZpb3VzIGxpc3Qgb2Ygc2VsZWN0aW9ucywgaXMgYXR0YWluZWQgYnkgcHJlc3NpbmcgdGhlIEI8J1gnPiBvciAiCisiQjxlc2NhcGU+IGtleXMuIEJ5IHJlcGVhdGVkbHkgcHJlc3NpbmcgdGhlc2Uga2V5cywgYW55IHBvc3NpYmx5IGRldHJpbWVudGFsICIKKyJjaGFuZ2VzIHRvIHRoZSByZXF1ZXN0ZWQgcGFja2FnZSBzZWxlY3Rpb25zIGNhbiBiZSBiYWNrZWQgb3V0IGNvbXBsZXRlbHkgdG8gIgorInRoZSBsYXN0IGVzdGFibGlzaGVkIHNldHRpbmdzLiIKK21zZ3N0ciAiIgorIkwnZWZmZXQgaW52ZXJzZSwgcXVpIGNvbnNpc3RlIMOgIG91YmxpZXIgbGVzIGRlbWFuZGVzIGRlIG1vZGlmaWNhdGlvbiBkZXMgIgorInPDqWxlY3Rpb25zIGV0IHJldmVuaXIgw6AgbGEgbGlzdGUgcHLDqWPDqWRlbnRlIGRlIHPDqWxlY3Rpb25zLCBwZXV0IMOqdHJlIG9idGVudSAiCisiZW4gYXBwdXlhbnQgc3VyIGxhIHRvdWNoZSDCq8KgQjxYPsKgwrsgb3UgwqvCoEI8RWNoYXA+wqDCuy4gRW4gcsOpcMOpdGFudCBsJ29ww6lyYXRpb24sICIKKyJvbiBwZXV0IGNvbXBsw6h0ZW1lbnQgcmV2ZW5pciDDoCBsYSBkZXJuacOocmUgY29uZmlndXJhdGlvbiDDqXRhYmxpZS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0MjEKK21zZ2lkICIiCisiSWYgeW91IG1pc3Rha2VubHkgZXN0YWJsaXNoIHNvbWUgc2V0dGluZ3MgYW5kIHdpc2ggdG8gcmV2ZXJ0IGFsbCB0aGUgIgorInNlbGVjdGlvbnMgdG8gd2hhdCBpcyBjdXJyZW50bHkgaW5zdGFsbGVkIG9uIHRoZSBzeXN0ZW0sIHByZXNzIHRoZSBCPCdDJz4gIgorImtleS4gIFRoaXMgaXMgc29tZXdoYXQgc2ltaWxhciB0byB1c2luZyB0aGUgdW5ob2xkIGNvbW1hbmQgb24gYWxsIHBhY2thZ2VzLCAiCisiYnV0IHByb3ZpZGVzIGEgbW9yZSBvYnZpb3VzIHBhbmljIGJ1dHRvbiBpbiBjYXNlcyB3aGVyZSB0aGUgdXNlciBwcmVzc2VkICIKKyJCPGVudGVyPiBieSBhY2NpZGVudC4iCittc2dzdHIgIiIKKyJTaSBwYXIgZXJyZXVyIHZvdXMgYXZleiBmaXjDqSBjZXJ0YWlucyBwYXJhbcOodHJlcyBldCBxdWUgdm91cyBzb3VoYWl0ZXogIgorInJldmVuaXIgZW4gYXJyacOocmUgc3VyIGNlIHF1aSBlc3QgYWN0dWVsbGVtZW50IGluc3RhbGzDqSBzdXIgbGUgc3lzdMOobWUsICIKKyJhcHB1eWV6IHN1ciBsYSB0b3VjaGUgQjwnQyc+LiBDJ2VzdCB1biBwZXUgY29tbWUgdXRpbGlzZXIgbGEgY29tbWFuZGUgZGUgIgorImTDqWJsb2NhZ2Ugc3VyIHRvdXMgbGVzIHBhcXVldHMsIG1haXMgY2VsYSBvZmZyZSB1biBib3V0b24gcGFuaXF1ZSBwbHVzICIKKyLDqXZpZGVudCBwb3VyIGxlcyBjYXMgb8O5IGwndXRpbGlzYXRldXIgw6AgYXBwdXnDqSBzdXIgQjxlbnRyZXI+ICIKKyJhY2NpZGVudGVsbGVtZW50LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjQyOAorbXNnaWQgIiIKKyJJZiBzZXQsIEI8ZHNlbGVjdD4gd2lsbCB1c2UgaXQgYXMgdGhlIGRpcmVjdG9yeSBmcm9tIHdoaWNoIHRvIHJlYWQgdGhlIHVzZXIgIgorInNwZWNpZmljIGNvbmZpZ3VyYXRpb24gZmlsZS4iCittc2dzdHIgIiIKKyJTaSBwb3NpdGlvbm7DqSwgc2VyYSB1dGlsaXPDqSBwYXIgQjxkc2VsZWN0PiBjb21tZSBsZSByw6lwZXJ0b2lyZSBkJ2/DuSBzZXJhIGx1ICIKKyJsZSBmaWNoaWVyIGRlIGNvbmZpZ3VyYXRpb24gcHJvcHJlIMOgIGwndXRpbGlzYXRldXIuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NDM0Cittc2dpZCAiIgorIlRoZSBCPGRzZWxlY3Q+IHBhY2thZ2Ugc2VsZWN0aW9uIGludGVyZmFjZSBpcyBjb25mdXNpbmcgdG8gc29tZSBuZXcgdXNlcnMuICAiCisiUmVwb3J0ZWRseSwgaXQgZXZlbiBtYWtlcyBzZWFzb25lZCBrZXJuZWwgZGV2ZWxvcGVycyBjcnkuIgorbXNnc3RyICIiCisiTCdpbnRlcmZhY2UgQjxkc2VsZWN0PiBkZSBzw6lsZWN0aW9uIGRlIHBhcXVldHMgZXN0IGTDqXJvdXRhbnRlIHBvdXIgbGVzICIKKyJub3V2ZWF1eCB1dGlsaXNhdGV1cnMuIE9uIHJhcHBvcnRlIG3Dqm1lIHF1J2VsbGUgZmFpdCBwbGV1cmVyIGNlcnRhaW5zICIKKyJkw6l2ZWxvcHBldXJzIGNoZXZyb25uw6lzIGR1IG5veWF1IChOZFTCoDrCoGR1IG1vaW5zIGxlcyBkZXJuaWVycyBoaXN0b3JpcXVlcyAiCisiZGlub3NhdXJlcyBxdWkgcydlbiBzZXJ2ZW50IGVuY29yZSkuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NDM2Cittc2dpZCAiVGhlIGRvY3VtZW50YXRpb24gaXMgbGFja2luZy4iCittc2dzdHIgIkxhIGRvY3VtZW50YXRpb24gbWFucXVlLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjQzOAorbXNnaWQgIlRoZXJlIGlzIG5vIGhlbHAgb3B0aW9uIGluIHRoZSBtYWluIG1lbnUuIgorbXNnc3RyICJJbCBuJ2V4aXN0ZSBwYXMgZCdvcHRpb24gZCdhaWRlIGRhbnMgbGUgbWVudS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0NDAKK21zZ2lkICJUaGUgdmlzaWJsZSBsaXN0IG9mIGF2YWlsYWJsZSBwYWNrYWdlcyBjYW5ub3QgYmUgcmVkdWNlZC4iCittc2dzdHIgIkxhIGxpc3RlIHZpc2libGUgZGVzIHBhcXVldHMgZGlzcG9uaWJsZXMgbmUgcGV1dCBwYXMgw6p0cmUgcsOpZHVpdGUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NDQ0Cittc2dpZCAiIgorIlRoZSBidWlsdCBpbiBhY2Nlc3MgbWV0aG9kcyBjYW4gbm8gbG9uZ2VyIHN0YW5kIHVwIHRvIGN1cnJlbnQgcXVhbGl0eSAiCisic3RhbmRhcmRzLiBVc2UgdGhlIGFjY2VzcyBtZXRob2QgcHJvdmlkZWQgYnkgYXB0LCBpdCBpcyBub3Qgb25seSBub3QgYnJva2VuLCAiCisiaXQgaXMgYWxzbyBtdWNoIG1vcmUgZmxleGlibGUgdGhhbiB0aGUgYnVpbHQgaW4gYWNjZXNzIG1ldGhvZHMuIgorbXNnc3RyICIiCisiTGEgbcOpdGhvZGUgZCdhY2PDqHMgaW50w6lncsOpZSBuZSBzYXRpc2ZhaXQgcGFzIGxlcyBub3JtZXMgZGUgcXVhbGl0w6kgIgorImFjdHVlbGxlcy4gVXRpbGlzZXogcGx1dMO0dCBsYSBtw6l0aG9kZSBmb3VybmllIHBhciBBUFQuIE5vbiBzZXVsZW1lbnQgZWxsZSAiCisibidlc3QgcGFzIGNhc3PDqWUsIG1haXMgZW4gcGx1cyBlbGxlIGVzdCBwbHVzIHNvdXBsZSBxdWUgbGEgbcOpdGhvZGUgZCdhY2PDqHMgIgorImludMOpZ3LDqWUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NDUwCittc2dpZCAiQjxkcGtnPigxKSwgQjxhcHQtZ2V0Pig4KSwgQjxzb3VyY2VzLmxpc3Q+KDUpLCBCPGRlYj4oNSkuIgorbXNnc3RyICJCPGRwa2c+KDEpLCBCPGFwdC1nZXQ+KDgpLCBCPHNvdXJjZXMubGlzdD4oNSksIEI8ZGViPig1KS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0NTUKK21zZ2lkICIiCisiQjxkc2VsZWN0PiB3YXMgd3JpdHRlbiBieSBJYW4gSmFja3NvbiAoaWphY2tzb25AZ251LmFpLm1pdC5lZHUpLiBGdWxsIGxpc3QgIgorIm9mIGNvbnRyaWJ1dG9ycyBtYXkgYmUgZm91bmQgaW4gJ2RzZWxlY3QgLS12ZXJzaW9uJy4iCittc2dzdHIgIiIKKyJCPGRzZWxlY3Q+IGEgw6l0w6kgw6ljcml0IHBhciBJYW4gSmFja3NvbiAoaWphY2tzb25AZ251LmFpLm1pdC5lZHUpLiBMYSBsaXN0ZSAiCisiY29tcGzDqHRlIGRlcyBjb250cmlidXRldXJzIGVzdCBhZmZpY2jDqWUgcGFyIMKrwqBkc2VsZWN0IC0tdmVyc2lvbsKgwrsuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NDU4Cittc2dpZCAiIgorIlRoaXMgbWFudWFsIHBhZ2Ugd2FzIHdyaXR0ZW4gYnkgSnVobyBWdW9yaSBFPGx0PmphdnVvcmlAY2MuaGVsc2lua2kuZmlFPGd0PiwgIgorIkpvc2lwIFJvZGluIGFuZCBKb29zdCBrb29pai4iCittc2dzdHIgIiIKKyJDZXR0ZSBwYWdlIGRlIG1hbnVlbCBhIMOpdMOpIMOpY3JpdGUgcGFyIEp1aG8gVnVvcmkgRTxsdD5qYXZ1b3JpQGNjLmhlbHNpbmtpLiIKKyJmaUU8Z3Q+LCBKb3NpcCBSb2RpbiBldCBKb29zdCBrb29pai4iCisKKyMuIHR5cGU6IFRICisjOiBkc2VsZWN0LmNmZy41OjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkc2VsZWN0LmNmZyIKK21zZ3N0ciAiZHNlbGVjdC5jZmciCisKKyMuIHR5cGU6IFRICisjOiBkc2VsZWN0LmNmZy41OjEKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiMjAwOS0wMi0yNyIKK21zZ2lkICIyMDExLTA3LTAzIgorbXNnc3RyICIyNy0wMi0yMDA5IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LmNmZy41OjQKK21zZ2lkICJkc2VsZWN0LmNmZyAtIGRzZWxlY3QgY29uZmlndXJhdGlvbiBmaWxlIgorbXNnc3RyICJkc2VsZWN0LmNmZyAtIEZpY2hpZXIgZGUgY29uZmlndXJhdGlvbiBkZSBkc2VsZWN0IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LmNmZy41OjExCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJUaGlzIGZpbGUgY29udGFpbnMgZGVmYXVsdCBvcHRpb25zIGZvciBkc2VsZWN0LiBFYWNoIGxpbmUgY29udGFpbnMgYSAiCisjfCAic2luZ2xlIG9wdGlvbiB3aGljaCBpcyBleGFjdGx5IHRoZSBzYW1lIGFzIGEgbm9ybWFsIGNvbW1hbmRsaW5lIG9wdGlvbiAiCisjfCAiZm9yIGRzZWxlY3QgZXhjZXB0IGZvciB0aGUgbGVhZGluZyBkYXNoZXMgd2hpY2ggYXJlIG5vdCB1c2VkIGhlcmUuIFF1b3RlcyAiCisjfCAic3Vycm91bmRpbmcgb3B0aW9uIHZhbHVlcyBhcmUgc3RyaXBwZWQuIENvbW1lbnRzIGFyZSBhbGxvd2VkIGJ5IHN0YXJ0aW5nICIKKyN8ICJhIGxpbmUgd2l0aCBhIGhhc2ggc2lnbiAoXCJCPCM+XCIpLiIKK21zZ2lkICIiCisiVGhpcyBmaWxlIGNvbnRhaW5zIGRlZmF1bHQgb3B0aW9ucyBmb3IgZHNlbGVjdC4gRWFjaCBsaW5lIGNvbnRhaW5zIGEgc2luZ2xlICIKKyJvcHRpb24gd2hpY2ggaXMgZXhhY3RseSB0aGUgc2FtZSBhcyBhIG5vcm1hbCBjb21tYW5kIGxpbmUgb3B0aW9uIGZvciBkc2VsZWN0ICIKKyJleGNlcHQgZm9yIHRoZSBsZWFkaW5nIGRhc2hlcyB3aGljaCBhcmUgbm90IHVzZWQgaGVyZS4gUXVvdGVzIHN1cnJvdW5kaW5nICIKKyJvcHRpb24gdmFsdWVzIGFyZSBzdHJpcHBlZC4gQ29tbWVudHMgYXJlIGFsbG93ZWQgYnkgc3RhcnRpbmcgYSBsaW5lIHdpdGggYSAiCisiaGFzaCBzaWduIChcIkI8Iz5cIikuIgorbXNnc3RyICIiCisiQ2UgZmljaGllciBsaXN0ZSBsZXMgb3B0aW9ucyBhcHBsaXF1w6llcyBwYXIgZMOpZmF1dCDDoCBkc2VsZWN0LiBDaGFxdWUgbGlnbmUgIgorImNvbnRpZW50IHVuZSBzZXVsZSBvcHRpb24sIMOpY3JpdGUgZXhhY3RlbWVudCBjb21tZSBzdXIgbGEgbGlnbmUgZGUgY29tbWFuZGUgIgorIm1haXMgc2FucyBsZXMgdGlyZXRzIGluaXRpYXV4LCBpbnV0aWxpc8Opcy4gTGVzIGd1aWxsZW1ldHMgcGxhY8OpcyBhdXRvdXIgZGVzICIKKyJvcHRpb25zIHNvbnQgc3VwcHJpbcOpcy4gTGVzIGNvbW1lbnRhaXJlcyBzb250IGF1dG9yaXPDqXMgZW4gZmFpc2FudCBjb21tZW5jZXIgIgorImxhIGxpZ25lIHBhciB1biBjYXJhY3TDqHJlIEI8Iz4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LmNmZy41OjE0Cittc2dpZCAiSTwvZXRjL2Rwa2cvZHNlbGVjdC5jZmcuZC9bMC05YS16QS1aXy1dKj4iCittc2dzdHIgIkk8L2V0Yy9kcGtnL2RzZWxlY3QuY2ZnLmQvWzAtOWEtekEtWl8tXSo+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LmNmZy41OjE2Cittc2dpZCAiSTwvZXRjL2Rwa2cvZHNlbGVjdC5jZmc+IgorbXNnc3RyICJJPC9ldGMvZHBrZy9kc2VsZWN0LmNmZz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuY2ZnLjU6MTgKK21zZ2lkICJJPH4vLmRzZWxlY3QuY2ZnPiIKK21zZ3N0ciAiSTx+Ly5kc2VsZWN0LmNmZz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuY2ZnLjU6MjIKK21zZ2lkICIiCisiU2VlIEk8L3Vzci9zaGFyZS9kb2MvZHBrZy9USEFOS1M+IGZvciB0aGUgbGlzdCBvZiBwZW9wbGUgd2hvIGhhdmUgIgorImNvbnRyaWJ1dGVkIHRvIEI8ZHNlbGVjdD4uIgorbXNnc3RyICIiCisiQ29uc3VsdGV6IEk8L3Vzci9zaGFyZS9kb2MvZHBrZy9USEFOS1M+IHBvdXIgbGEgbGlzdGUgZGUgY2V1eCBxdWkgb250ICIKKyJjb250cmlidcOpIMOgIEI8ZHNlbGVjdD4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LmNmZy41OjI0Cittc2dpZCAiQjxkc2VsZWN0PigxKS4iCittc2dzdHIgIkI8ZHNlbGVjdD4oMSkuIgorCisjLiB0eXBlOiBUSAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxCisjLCBuby13cmFwCittc2dpZCAic3RhcnQtc3RvcC1kYWVtb24iCittc2dzdHIgInN0YXJ0LXN0b3AtZGFlbW9uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjQKK21zZ2lkICJzdGFydC1zdG9wLWRhZW1vbiAtIHN0YXJ0IGFuZCBzdG9wIHN5c3RlbSBkYWVtb24gcHJvZ3JhbXMiCittc2dzdHIgInN0YXJ0LXN0b3AtZGFlbW9uIC0gbGFuY2Ugb3UgYXJyw6p0ZSBkZXMgZMOpbW9ucyBzeXN0w6htZSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo4CisjLCBmdXp6eQorI3wgbXNnaWQgIkI8c3RhcnQtc3RvcC1kYWVtb24+IFtJPG9wdGlvbnM+XSBJPGNvbW1hbmQ+IgorbXNnaWQgIkI8c3RhcnQtc3RvcC1kYWVtb24+IFtJPG9wdGlvbj4uLi5dIEk8Y29tbWFuZD4iCittc2dzdHIgIkI8c3RhcnQtc3RvcC1kYWVtb24+IFtJPG9wdGlvbnM+XSBJPGNvbW1hbmRlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxNAorbXNnaWQgIiIKKyJCPHN0YXJ0LXN0b3AtZGFlbW9uPiBpcyB1c2VkIHRvIGNvbnRyb2wgdGhlIGNyZWF0aW9uIGFuZCB0ZXJtaW5hdGlvbiBvZiAiCisic3lzdGVtLWxldmVsIHByb2Nlc3Nlcy4gIFVzaW5nIG9uZSBvZiB0aGUgbWF0Y2hpbmcgb3B0aW9ucywgQjxzdGFydC1zdG9wLSIKKyJkYWVtb24+IGNhbiBiZSBjb25maWd1cmVkIHRvIGZpbmQgZXhpc3RpbmcgaW5zdGFuY2VzIG9mIGEgcnVubmluZyBwcm9jZXNzLiIKK21zZ3N0ciAiIgorIk9uIHNlIHNlcnQgZGUgQjxzdGFydC1zdG9wLWRhZW1vbj4gcG91ciBjb250csO0bGVyIGxhIGNyw6lhdGlvbiBvdSBsJ2FycsOqdCBkZSAiCisicHJvY2Vzc3VzIHN5c3TDqG1lLiBFbiB1dGlsaXNhbnQgbGVzIG9wdGlvbnMgY29ycmVzcG9uZGFudGVzLCBCPHN0YXJ0LXN0b3AtIgorImRhZW1vbj4gcGV1dCDDqnRyZSBjb25maWd1csOpIHBvdXIgdHJvdXZlciBsZXMgZXhlbXBsYWlyZXMgcHLDqXNlbnRzIGQndW4gIgorInByb2Nlc3N1cyBlbiBmb25jdGlvbm5lbWVudC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MzMKK21zZ2lkICIiCisiTm90ZTogdW5sZXNzIEI8LS1waWRmaWxlPiBpcyBzcGVjaWZpZWQsIEI8c3RhcnQtc3RvcC1kYWVtb24+IGJlaGF2ZXMgc2ltaWxhciAiCisidG8gQjxraWxsYWxsPigxKS4gIEI8c3RhcnQtc3RvcC1kYWVtb24+IHdpbGwgc2NhbiB0aGUgcHJvY2VzcyB0YWJsZSBsb29raW5nICIKKyJmb3IgYW55IHByb2Nlc3NlcyB3aGljaCBtYXRjaCB0aGUgcHJvY2VzcyBuYW1lLCB1aWQsIGFuZC9vciBnaWQgKGlmICIKKyJzcGVjaWZpZWQpLiBBbnkgbWF0Y2hpbmcgcHJvY2VzcyB3aWxsIHByZXZlbnQgQjwtLXN0YXJ0PiBmcm9tIHN0YXJ0aW5nIHRoZSAiCisiZGFlbW9uLiBBbGwgbWF0Y2hpbmcgcHJvY2Vzc2VzIHdpbGwgYmUgc2VudCB0aGUgVEVSTSBzaWduYWwgKG9yIHRoZSBvbmUgIgorInNwZWNpZmllZCB2aWEgQjwtLXNpZ25hbD4gb3IgQjwtLXJldHJ5PikgaWYgQjwtLXN0b3A+IGlzIHNwZWNpZmllZC4gRm9yICIKKyJkYWVtb25zIHdoaWNoIGhhdmUgbG9uZy1saXZlZCBjaGlsZHJlbiB3aGljaCBuZWVkIHRvIGxpdmUgdGhyb3VnaCBhIEI8LS0iCisic3RvcD4sIHlvdSBtdXN0IHNwZWNpZnkgYSBwaWRmaWxlLiIKK21zZ3N0ciAiIgorIlZldWlsbGV6IG5vdGVyIHF1J8OgIG1vaW5zIGQndXRpbGlzZXIgQjwtLXBpZGZpbGU+LCBsZSBwcm9ncmFtbWUgQjxzdGFydC1zdG9wLSIKKyJkYWVtb24+IHNlIGNvbXBvcnRlIGNvbW1lIEI8a2lsbGFsbD4oMSkuIEI8c3RhcnQtc3RvcC1kYWVtb24+IHJlY2hlcmNoZSBkYW5zICIKKyJsZSB0YWJsZWF1IGRlcyBwcm9jZXNzdXMgdG91dCBwcm9jZXNzdXMgcXVpIGNvcnJlc3BvbmQgYXUgbm9tLCB1aWQgZXQvb3UgZ2lkICIKKyJkdSBwcm9jZXNzdXMgKHNpIGluZGlxdcOpKS4gVG91dGUgY29ycmVzcG9uZGFuY2UgZW1ww6pjaGVyYSBCPC0tc3RhcnQ+IGRlICIKKyJkw6ltYXJyZXIgbGUgZMOpbW9uLiBUb3VzIGxlcyBwcm9jZXNzdXMgcXVpIGNvcnJlc3BvbmRlbnQgcmVjZXZyb250IGxlIHNpZ25hbCAiCisiVEVSTSAob3UgbGUgc2lnbmFsIGluZGlxdcOpIHBhciBCPC0tc2lnbmFsPiBvciBCPC0tcmV0cnk+KS4gUG91ciBsZXMgZMOpbW9ucyAiCisiYXZlYyBkZXMgcHJvY2Vzc3VzIGVuZmFudCBxdWkgZG9pdmVudCBzdXJ2aXZyZSDDoCB1biBCPC0tc3RvcD4sIGlsIGVzdCAiCisibsOpY2Vzc2FpcmVkJ2luZGlxdWVyIHVuIGZpY2hpZXIgcGlkICjCq8KgcGlkZmlsZcKgwrspLiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MzUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1TPiwgQjwtLXN0YXJ0PiBbQjwtLT5dIEk8YXJndW1lbnRzPiIKK21zZ3N0ciAiQjwtUz4sIEI8LS1zdGFydD4gW0I8LS0+XSBJPHBhcmFtw6h0cmVzPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo1MgorbXNnaWQgIiIKKyJDaGVjayBmb3IgdGhlIGV4aXN0ZW5jZSBvZiBhIHNwZWNpZmllZCBwcm9jZXNzLiAgSWYgc3VjaCBhIHByb2Nlc3MgZXhpc3RzLCAiCisiQjxzdGFydC1zdG9wLWRhZW1vbj4gZG9lcyBub3RoaW5nLCBhbmQgZXhpdHMgd2l0aCBlcnJvciBzdGF0dXMgMSAoMCBpZiBCPC0tIgorIm9rbm9kbz4gaXMgc3BlY2lmaWVkKS4gIElmIHN1Y2ggYSBwcm9jZXNzIGRvZXMgbm90IGV4aXN0LCBpdCBzdGFydHMgYW4gIgorImluc3RhbmNlLCB1c2luZyBlaXRoZXIgdGhlIGV4ZWN1dGFibGUgc3BlY2lmaWVkIGJ5IEI8LS1leGVjPiBvciwgaWYgIgorInNwZWNpZmllZCwgYnkgQjwtLXN0YXJ0YXM+LiAgQW55IGFyZ3VtZW50cyBnaXZlbiBhZnRlciBCPC0tPiBvbiB0aGUgY29tbWFuZCAiCisibGluZSBhcmUgcGFzc2VkIHVubW9kaWZpZWQgdG8gdGhlIHByb2dyYW0gYmVpbmcgc3RhcnRlZC4iCittc2dzdHIgIiIKKyJWw6lyaWZpZXIgbCdleGlzdGVuY2UgZCd1biBwcm9jZXNzdXMgcGFydGljdWxpZXIuIFF1YW5kIGlsIGV4aXN0ZSB1biB0ZWwgIgorInByb2Nlc3N1cywgQjxzdGFydC1zdG9wLWRhZW1vbj4gbmUgZmFpdCByaWVuIGV0IHNlIHRlcm1pbmUgYXZlYyB1biBjb2RlICIKKyJkJ2VycmV1ciDDqWdhbCDDoCAxICgwIHNpIEI8LS1va25vZG8+IGVzdCBwcsOpY2lzw6kpLiBRdWFuZCB1biB0ZWwgcHJvY2Vzc3VzICIKKyJuJ2V4aXN0ZSBwYXMsIHVuIGV4ZW1wbGFpcmUgZGUgbCdleMOpY3V0YWJsZSBlc3QgbGFuY8OpLCBlbiB1dGlsaXNhbnQgbGUgIgorInBhcmFtw6h0cmUgZGUgQjwtLWV4ZWM+IG91LCBjZWx1aSBkZSBCPC0tc3RhcnRhcz4gc2kgY2V0dGUgb3B0aW9uIGVzdCAiCisicHLDqWNpc8OpZS4gVG91dCBhcmd1bWVudCBkb25uw6kgYXByw6hzIEI8LS0+IHN1ciBsYSBsaWduZSBkZSBjb21tYW5kZSBlc3QgcGFzc8OpICIKKyJ0ZWwgcXVlbCBhdSBwcm9ncmFtbWUgcXVpIGRvaXQgw6p0cmUgbGFuY8OpLiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6NTIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1LPiwgQjwtLXN0b3A+IgorbXNnc3RyICJCPC1LPiwgQjwtLXN0b3A+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjcwCittc2dpZCAiIgorIkNoZWNrcyBmb3IgdGhlIGV4aXN0ZW5jZSBvZiBhIHNwZWNpZmllZCBwcm9jZXNzLiAgSWYgc3VjaCBhIHByb2Nlc3MgZXhpc3RzLCAiCisiQjxzdGFydC1zdG9wLWRhZW1vbj4gc2VuZHMgaXQgdGhlIHNpZ25hbCBzcGVjaWZpZWQgYnkgQjwtLXNpZ25hbD4sIGFuZCBleGl0cyAiCisid2l0aCBlcnJvciBzdGF0dXMgMC4gIElmIHN1Y2ggYSBwcm9jZXNzIGRvZXMgbm90IGV4aXN0LCBCPHN0YXJ0LXN0b3AtZGFlbW9uPiAiCisiZXhpdHMgd2l0aCBlcnJvciBzdGF0dXMgMSAoMCBpZiBCPC0tb2tub2RvPiBpcyBzcGVjaWZpZWQpLiBJZiBCPC0tcmV0cnk+IGlzICIKKyJzcGVjaWZpZWQsIHRoZW4gQjxzdGFydC1zdG9wLWRhZW1vbj4gd2lsbCBjaGVjayB0aGF0IHRoZSBwcm9jZXNzKGVzKSBoYXZlICIKKyJ0ZXJtaW5hdGVkLiIKK21zZ3N0ciAiIgorIlbDqXJpZmllciBhdXNzaSBsJ2V4aXN0ZW5jZSBkJ3VuIHByb2Nlc3N1cyBwYXJ0aWN1bGllci4gUXVhbmQgdW4gdGVsICIKKyJwcm9jZXNzdXMgZXhpc3RlIEI8c3RhcnQtc3RvcC1kYWVtb24+IGx1aSBlbnZvaWUgbGUgc2lnbmFsIHByw6ljaXPDqSBhdmVjIEI8LS0iCisic2lnbmFsPiBldCBzZSB0ZXJtaW5lIGF2ZWMgdW4gY29kZSBkJ2VycmV1ciDDqWdhbCDDoCAwLiBRdWFuZCB1biB0ZWwgcHJvY2Vzc3VzICIKKyJuJ2V4aXN0ZSBwYXMgQjxzdGFydC1zdG9wLWRhZW1vbj4gc2UgdGVybWluZSBhdmVjIHVuIGNvZGUgZCdlcnJldXIgw6lnYWwgw6AgMSAiCisiKDAgaWYgQjwtLW9rbm9kbz4gZXN0IHByw6ljaXPDqSkuIFNpIEI8LS1yZXRyeT4gZXN0IGluZGlxdcOpZSwgQjxzdGFydC1zdG9wLSIKKyJkYWVtb24+IHJlY2hlcmNoZSBzaSBsZSBwcm9jZXNzdXMgb3UgbGVzIHByb2Nlc3N1cyBzZSBzb250IGJpZW4gdGVybWluw6lzLiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6NzAKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjwtSz4sIEI8LS1zdG9wPiIKK21zZ2lkICJCPC1UPiwgQjwtLXN0YXR1cz4iCittc2dzdHIgIkI8LUs+LCBCPC0tc3RvcD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6NzQKK21zZ2lkICIiCisiQ2hlY2sgZm9yIHRoZSBleGlzdGVuY2Ugb2YgYSBzcGVjaWZpZWQgcHJvY2VzcywgYW5kIHJldHVybnMgYW4gZXhpdCBzdGF0dXMgIgorImNvZGUsIGFjY29yZGluZyB0byB0aGUgTFNCIEluaXQgU2NyaXB0IEFjdGlvbnMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44Ojc0CisjLCBuby13cmFwCittc2dpZCAiQjwtSD4sIEI8LS1oZWxwPiIKK21zZ3N0ciAiQjwtSD4sIEI8LS1oZWxwPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo3NworbXNnaWQgIlNob3cgdXNhZ2UgaW5mb3JtYXRpb24gYW5kIGV4aXQuIgorbXNnc3RyICJBZmZpY2hlIHVuIG1lc3NhZ2UgZCdhaWRlLCBwdWlzIHF1aXR0ZS4iCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44Ojc3CisjLCBuby13cmFwCittc2dpZCAiQjwtVj4sIEI8LS12ZXJzaW9uPiIKK21zZ3N0ciAiQjwtVj4sIEI8LS12ZXJzaW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo4MAorbXNnaWQgIlNob3cgdGhlIHByb2dyYW0gdmVyc2lvbiBhbmQgZXhpdC4iCittc2dzdHIgIkFmZmljaGUgbGEgdmVyc2lvbiBkdSBwcm9ncmFtbWUgZXQgbGUgY29weXJpZ2h0LCBwdWlzIHF1aXR0ZS4iCisKKyMuIHR5cGU6IFNICisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjgxCisjLCBuby13cmFwCittc2dpZCAiTUFUQ0hJTkcgT1BUSU9OUyIKK21zZ3N0ciAiT1BUSU9OUyBERSBDT1JSRVNQT05EQU5DRSIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6ODIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1wPiwgQjwtLXBpZGZpbGU+IEk8cGlkLWZpbGU+IgorbXNnc3RyICJCPC1wPiwgQjwtLXBpZGZpbGU+IEk8cGlkLWZpbGU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44Ojg2Cittc2dpZCAiQ2hlY2sgd2hldGhlciBhIHByb2Nlc3MgaGFzIGNyZWF0ZWQgdGhlIGZpbGUgSTxwaWQtZmlsZT4uIgorbXNnc3RyICIiCisiQ2hlcmNoZSBsZXMgcHJvY2Vzc3VzIGRvbnQgbGVzIGlkZW50aWZpYW50cyBzb250IHByw6ljaXPDqXMgZGFucyBJPHBpZC1maWxlPi4iCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44Ojg2CisjLCBuby13cmFwCittc2dpZCAiQjwteD4sIEI8LS1leGVjPiBJPGV4ZWN1dGFibGU+IgorbXNnc3RyICJCPC14PiwgQjwtLWV4ZWM+IEk8ZXjDqWN1dGFibGU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjkwCittc2dpZCAiIgorIkNoZWNrIGZvciBwcm9jZXNzZXMgdGhhdCBhcmUgaW5zdGFuY2VzIG9mIHRoaXMgZXhlY3V0YWJsZSAoYWNjb3JkaW5nIHRvIEI8LyIKKyJwcm9jLz5JPHBpZD5CPC9leGU+KS4iCittc2dzdHIgIiIKKyJDaGVyY2hlIGxlcyBwcm9jZXNzdXMgcXVpIHNvbnQgZGVzIGV4ZW1wbGFpcmVzIGRlIGNldCBleMOpY3V0YWJsZSAoc2Vsb24gQjwvIgorInByb2MvPkk8cGlkPkI8L2V4ZT4pLiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6OTAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1uPiwgQjwtLW5hbWU+IEk8cHJvY2Vzcy1uYW1lPiIKK21zZ3N0ciAiQjwtbj4sIEI8LS1uYW1lPiBJPG5vbWRlcHJvY2Vzc3VzPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo5NgorbXNnaWQgIiIKKyJDaGVjayBmb3IgcHJvY2Vzc2VzIHdpdGggdGhlIG5hbWUgSTxwcm9jZXNzLW5hbWU+IChhY2NvcmRpbmcgdG8gQjwvcHJvYy8iCisiPkk8cGlkPkI8L3N0YXQ+KS4iCittc2dzdHIgIiIKKyJDaGVyY2hlIGxlcyBwcm9jZXNzdXMgZG9udCBsZSBub20gZXN0IEk8bm9tZGVwcm9jZXNzdXM+IChzZWxvbiBCPC9wcm9jLyIKKyI+STxwaWQ+Qjwvc3RhdD4pLiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6OTYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC11PiwgQjwtLXVzZXI+IEk8dXNlcm5hbWU+fEk8dWlkPiIKK21zZ3N0ciAiQjwtdT4sIEI8LS11c2VyPiBJPG5vbWR1dGlsaXNhdGV1cj58STx1aWQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjEwMgorbXNnaWQgIiIKKyJDaGVjayBmb3IgcHJvY2Vzc2VzIG93bmVkIGJ5IHRoZSB1c2VyIHNwZWNpZmllZCBieSBJPHVzZXJuYW1lPiBvciBJPHVpZD4uIgorbXNnc3RyICIiCisiQ2hlcmNoZSBsZXMgcHJvY2Vzc3VzIHF1aSBhcHBhcnRpZW5uZW50IMOgIGwndXRpbGlzYXRldXIgZMOpZmluaSBwYXIgIgorIkk8bm9tZHV0aWxpc2F0ZXVyPiBvdSBJPHVpZC4+IgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxMDQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1nPiwgQjwtLWdyb3VwPiBJPGdyb3VwPnxJPGdpZD4iCittc2dzdHIgIkI8LWc+LCBCPC0tZ3JvdXA+IEk8Z3JvdXA+fEk8Z2lkPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxMDcKK21zZ2lkICJDaGFuZ2UgdG8gSTxncm91cD4gb3IgSTxnaWQ+IHdoZW4gc3RhcnRpbmcgdGhlIHByb2Nlc3MuIgorbXNnc3RyICJNb2RpZmllIGxlIEk8Z3JvdXA+IG91IGxlIEk8Z2lkPiBhdSBkw6lidXQgZHUgcHJvY2Vzc3VzLiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTA3CisjLCBuby13cmFwCittc2dpZCAiQjwtcz4sIEI8LS1zaWduYWw+IEk8c2lnbmFsPiIKK21zZ3N0ciAiQjwtcz4sIEI8LS1zaWduYWw+IEk8c2lnbmFsPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxMTIKK21zZ2lkICIiCisiV2l0aCBCPC0tc3RvcD4sIHNwZWNpZmllcyB0aGUgc2lnbmFsIHRvIHNlbmQgdG8gcHJvY2Vzc2VzIGJlaW5nIHN0b3BwZWQgIgorIihkZWZhdWx0IFRFUk0pLiIKK21zZ3N0ciAiIgorIkwnYWN0aW9uIEI8LS1zdG9wLD4gZMOpZmluaXQgbGUgc2lnbmFsIMOgIGVudm95ZXIgYXUgcHJvY2Vzc3VzIHF1aSBkb2l0IMOqdHJlICIKKyJhcnLDqnTDqSAocGFyIGTDqWZhdXTCoDogVEVSTSkuIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxMTIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1SPiwgQjwtLXJldHJ5PiBJPHRpbWVvdXQ+fEk8c2NoZWR1bGU+IgorbXNnc3RyICJCPC1SPiwgQjwtLXJldHJ5PiBJPGR1csOpZT58STxhY3Rpb24tcHLDqXZ1ZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTIyCittc2dpZCAiIgorIldpdGggQjwtLXN0b3A+LCBzcGVjaWZpZXMgdGhhdCBCPHN0YXJ0LXN0b3AtZGFlbW9uPiBpcyB0byBjaGVjayB3aGV0aGVyIHRoZSAiCisicHJvY2VzcyhlcykgIGRvIGZpbmlzaC4gSXQgd2lsbCBjaGVjayByZXBlYXRlZGx5IHdoZXRoZXIgYW55IG1hdGNoaW5nICIKKyJwcm9jZXNzZXMgYXJlIHJ1bm5pbmcsIHVudGlsIG5vbmUgYXJlLiBJZiB0aGUgcHJvY2Vzc2VzIGRvIG5vdCBleGl0IGl0IHdpbGwgIgorInRoZW4gdGFrZSBmdXJ0aGVyIGFjdGlvbiBhcyBkZXRlcm1pbmVkIGJ5IHRoZSBzY2hlZHVsZS4iCittc2dzdHIgIiIKKyJBdmVjIGwnYWN0aW9uIEI8LS1zdG9wPiwgQjxzdGFydC1zdG9wLWRhZW1vbj4gZG9pdCB2w6lyaWZpZXIgcXVlIGxlcyAiCisicHJvY2Vzc3VzIHNlIHNvbnQgdGVybWluw6lzLiBJbCBsZSBmYWl0IHBvdXIgdG91cyBsZXMgcHJvY2Vzc3VzICIKKyJjb3JyZXNwb25kYW50cyBxdWkgdG91cm5lbnQsIGp1c3F1J8OgIGNlIHF1J2lsIG4neSBlbiBhaXQgcGx1cy4gUXVhbmQgbGUgIgorInByb2Nlc3N1cyBuZSBzZSB0ZXJtaW5lIHBhcywgaWwgcHJlbmQgZCdhdXRyZXMgbWVzdXJlcyBkw6l0ZXJtaW7DqWVzIHBhciAiCisibCdhY3Rpb24tcHLDqXZ1ZS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTMzCittc2dpZCAiIgorIklmIEk8dGltZW91dD4gaXMgc3BlY2lmaWVkIGluc3RlYWQgb2YgSTxzY2hlZHVsZT4sIHRoZW4gdGhlIHNjaGVkdWxlICIKKyJJPHNpZ25hbD5CPC8+STx0aW1lb3V0PkI8L0tJTEwvPkk8dGltZW91dD4gaXMgdXNlZCwgd2hlcmUgSTxzaWduYWw+IGlzIHRoZSAiCisic2lnbmFsIHNwZWNpZmllZCB3aXRoIEI8LS1zaWduYWw+LiIKK21zZ3N0ciAiIgorIlNpIEk8ZHVyw6llPiBlc3QgaW5kaXF1w6kgcGx1dMO0dCBxdWUgSTxhY3Rpb24tcHLDqXZ1ZT4sIGwnYWN0aW9uLXByw6l2dWUgIgorIkk8c2lnbmFsPkI8Lz5JPGR1csOpZT5CPC9LSUxMLz5JPGR1csOpZT4gZXN0IHV0aWxpc8OpZSwgb8O5IEk8c2lnbmFsPiBlc3QgbGUgIgorInNpZ25hbCBpbmRpcXXDqSBwYXIgQjwtLXNpZ25hbD4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjE0OQorbXNnaWQgIiIKKyJJPHNjaGVkdWxlPiBpcyBhIGxpc3Qgb2YgYXQgbGVhc3QgdHdvIGl0ZW1zIHNlcGFyYXRlZCBieSBzbGFzaGVzIChCPC8+KTsgIgorImVhY2ggaXRlbSBtYXkgYmUgQjwtPkk8c2lnbmFsLW51bWJlcj4gb3IgW0I8LT5dSTxzaWduYWwtbmFtZT4sIHdoaWNoIG1lYW5zICIKKyJ0byBzZW5kIHRoYXQgc2lnbmFsLCBvciBJPHRpbWVvdXQ+LCB3aGljaCBtZWFucyB0byB3YWl0IHRoYXQgbWFueSBzZWNvbmRzICIKKyJmb3IgcHJvY2Vzc2VzIHRvIGV4aXQsIG9yIEI8Zm9yZXZlcj4sIHdoaWNoIG1lYW5zIHRvIHJlcGVhdCB0aGUgcmVzdCBvZiB0aGUgIgorInNjaGVkdWxlIGZvcmV2ZXIgaWYgbmVjZXNzYXJ5LiIKK21zZ3N0ciAiIgorIkk8YWN0aW9uLXByw6l2dWU+IGVzdCB1bmUgbGlzdGUgZCdhdSBtb2lucyBkZXV4IGl0ZW1zIHPDqXBhcsOpcyBwYXIgZGVzIGJhcnJlcyAiCisib2JsaXF1ZXMgKEI8Lz4pwqA7IGNoYXF1ZSBpdGVtIHBldXQgw6p0cmUgZGUgbGEgZm9ybWUgQjwtPkk8c2lnbmFsLW51bWJlcj4gb3UgIgorImRlIGxhIGZvcm1lIFtCPC0+XUk8c2lnbmFsLW5hbWU+LCBjZSBxdWkgZGVtYW5kZSBkJ2Vudm95ZXIgY2Ugc2lnbmFswqA7IG91ICIKKyJiaWVuIGRlIGxhIGZvcm1lIEk8ZHVyw6llLD4gY2UgcXVpIGRlbWFuZGUgZCdhdHRlbmRyZSB0YW50IGRlIHNlY29uZGVzIGF2YW50ICIKKyJkZSB0ZXJtaW5lciBsZXMgcHJvY2Vzc3VzLCBvdSBiaWVuIGRlIGxhIGZvcm1lIEI8Zm9yZXZlcj4sIGNlIHF1aSBkZW1hbmRlIGRlICIKKyJyw6lww6l0ZXIgY29uc3RhbW1lbnQgbGUgcmVzdGUgZGUgYWN0aW9uLXByw6l2dWUsIHNpIG7DqWNlc3NhaXJlLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxNTkKK21zZ2lkICIiCisiSWYgdGhlIGVuZCBvZiB0aGUgc2NoZWR1bGUgaXMgcmVhY2hlZCBhbmQgQjxmb3JldmVyPiBpcyBub3Qgc3BlY2lmaWVkLCB0aGVuICIKKyJCPHN0YXJ0LXN0b3AtZGFlbW9uPiBleGl0cyB3aXRoIGVycm9yIHN0YXR1cyAyLiAgSWYgYSBzY2hlZHVsZSBpcyBzcGVjaWZpZWQsICIKKyJ0aGVuIGFueSBzaWduYWwgc3BlY2lmaWVkIHdpdGggQjwtLXNpZ25hbD4gaXMgaWdub3JlZC4iCittc2dzdHIgIiIKKyJRdWFuZCBsYSBmaW4gZGUgbCdhY3Rpb24tcHLDqXZ1ZSBlc3QgYXR0ZWludGUgZXQgcXVlIEI8Zm9yZXZlcj4gbidhIHBhcyDDqXTDqSAiCisicHLDqWNpc8OpLCBCPHN0YXJ0LXN0b3AtZGFlbW9uPiBzZSB0ZXJtaW5lIGF2ZWMgdW4gY29kZSBkJ2VycmV1ciDDqWdhbCDDoCAyLiAiCisiUXVhbmQgdW5lIGFjdGlvbi1wcsOpdnVlIGVzdCBpbmRpcXXDqWUsIHRvdXQgc2lnbmFsIGRvbm7DqSBwYXIgQjwtLXNpZ25hbD4gZXN0ICIKKyJpZ25vcsOpLiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTU5CisjLCBuby13cmFwCittc2dpZCAiQjwtYT4sIEI8LS1zdGFydGFzPiBJPHBhdGhuYW1lPiIKK21zZ3N0ciAiSTwtYT4sIEI8LS1zdGFydGFzPiBJPGNoZW1pbi9ub20+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjE2NworbXNnaWQgIiIKKyJXaXRoIEI8LS1zdGFydD4sIHN0YXJ0IHRoZSBwcm9jZXNzIHNwZWNpZmllZCBieSBJPHBhdGhuYW1lPi4gIElmIG5vdCAiCisic3BlY2lmaWVkLCBkZWZhdWx0cyB0byB0aGUgYXJndW1lbnQgZ2l2ZW4gdG8gQjwtLWV4ZWM+LiIKK21zZ3N0ciAiIgorIkF2ZWMgbCdhY3Rpb24gQjwtLXN0YXJ0PiwgbGFuY2UgbGUgcHJvY2Vzc3VzIHNww6ljaWZpw6kgcGFyIEk8Y2hlbWluL25vbS4+IFNpICIKKyJyaWVuIG4nZXN0IHByw6ljaXPDqSwgYydlc3QgcGFyIGTDqWZhdXQgbCdhcmd1bWVudCBkb25uw6kgw6AgQjwtLWV4ZWMuPiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTY3CisjLCBuby13cmFwCittc2dpZCAiQjwtdD4sIEI8LS10ZXN0PiIKK21zZ3N0ciAiQjwtdD4sIEI8LS10ZXN0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxNzEKK21zZ2lkICIiCisiUHJpbnQgYWN0aW9ucyB0aGF0IHdvdWxkIGJlIHRha2VuIGFuZCBzZXQgYXBwcm9wcmlhdGUgcmV0dXJuIHZhbHVlLCBidXQgdGFrZSAiCisibm8gYWN0aW9uLiIKK21zZ3N0ciAiIgorIkFmZmljaGUgbGVzIGFjdGlvbnMgcXVpIHNlcmFpZW50IGVudHJlcHJpc2VzIGV0IGTDqXRlcm1pbmUgbGEgYm9ubmUgdmFsZXVyIGRlICIKKyJyZXRvdXIsIG1haXMgbmUgZmFpdCByaWVuLiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTcxCisjLCBuby13cmFwCittc2dpZCAiQjwtbz4sIEI8LS1va25vZG8+IgorbXNnc3RyICJCPC1vPiwgQjwtLW9rbm9kbz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTc0Cittc2dpZCAiUmV0dXJuIGV4aXQgc3RhdHVzIDAgaW5zdGVhZCBvZiAxIGlmIG5vIGFjdGlvbnMgYXJlICh3b3VsZCBiZSkgdGFrZW4uIgorbXNnc3RyICIiCisiUmV0b3VybmUgdW4gY29kZSBkZSBzb3J0aWUgw6lnYWwgw6AgMCBhdSBsaWV1IGRlIDEgc2kgcmllbiBuJ2VzdCBvdSBuZSBzZXJhICIKKyJmYWl0LiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTc0CisjLCBuby13cmFwCittc2dpZCAiQjwtcT4sIEI8LS1xdWlldD4iCittc2dzdHIgIkI8LXE+LCBCPC0tcXVpZXQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjE3NworbXNnaWQgIkRvIG5vdCBwcmludCBpbmZvcm1hdGlvbmFsIG1lc3NhZ2VzOyBvbmx5IGRpc3BsYXkgZXJyb3IgbWVzc2FnZXMuIgorbXNnc3RyICIiCisiTidhZmZpY2hlIHBhcyBkZSBtZXNzYWdlcyBkJ2luZm9ybWF0aW9uwqA7IGFmZmljaGUgc2V1bGVtZW50IGxlcyBtZXNzYWdlcyAiCisiZCdlcnJldXIuIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxNzcKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjwtYz4sIEI8LS1jaHVpZD4gSTx1c2VybmFtZT58STx1aWQ+IgorbXNnaWQgIkI8LWM+LCBCPC0tY2h1aWQ+IEk8dXNlcm5hbWU+fEk8dWlkPltCPDo+STxncm91cD58STxnaWQ+XSIKK21zZ3N0ciAiQjwtYz4sIEI8LS1jaHVpZD4gSTx1dGlsaXNhdGV1cj58STx1aWQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjE5NQorbXNnaWQgIiIKKyJDaGFuZ2UgdG8gdGhpcyB1c2VybmFtZS91aWQgYmVmb3JlIHN0YXJ0aW5nIHRoZSBwcm9jZXNzLiBZb3UgY2FuIGFsc28gIgorInNwZWNpZnkgYSBncm91cCBieSBhcHBlbmRpbmcgYSBCPDo+LCB0aGVuIHRoZSBncm91cCBvciBnaWQgaW4gdGhlIHNhbWUgd2F5ICIKKyJhcyB5b3Ugd291bGQgZm9yIHRoZSBgY2hvd24nIGNvbW1hbmQgKEk8dXNlcj5CPDo+STxncm91cD4pLiAgSWYgYSB1c2VyIGlzICIKKyJzcGVjaWZpZWQgd2l0aG91dCBhIGdyb3VwLCB0aGUgcHJpbWFyeSBHSUQgZm9yIHRoYXQgdXNlciBpcyB1c2VkLiAgV2hlbiAiCisidXNpbmcgdGhpcyBvcHRpb24geW91IG11c3QgcmVhbGl6ZSB0aGF0IHRoZSBwcmltYXJ5IGFuZCBzdXBwbGVtZW50YWwgZ3JvdXBzICIKKyJhcmUgc2V0IGFzIHdlbGwsIGV2ZW4gaWYgdGhlIEI8LS1ncm91cD4gb3B0aW9uIGlzIG5vdCBzcGVjaWZpZWQuIFRoZSBCPC0tIgorImdyb3VwPiBvcHRpb24gaXMgb25seSBmb3IgZ3JvdXBzIHRoYXQgdGhlIHVzZXIgaXNuJ3Qgbm9ybWFsbHkgYSBtZW1iZXIgb2YgIgorIihsaWtlIGFkZGluZyBwZXIgcHJvY2VzcyBncm91cCBtZW1iZXJzaGlwIGZvciBnZW5lcmljIHVzZXJzIGxpa2UgQjxub2JvZHk+KS4iCittc2dzdHIgIiIKKyJDaGFuZ2UgcG91ciBjZXQgdXRpbGlzYXRldXIgb3UgwqvCoHVpZMKgwrsgYXZhbnQgZGUgbGFuY2VyIGxlIHByb2Nlc3N1cy4gT24gcGV1dCAiCisiYXVzc2kgcHLDqWNpc2VyIHVuIGdyb3VwZSBlbiBham91dGFudCB1biBCPDo+LCBwdWlzIGxlIGdyb3VwZSBvdSB1biDCq8KgZ2lkwqDCuyAiCisiZGUgbGEgbcOqbWUgZmHDp29uIHF1J2F2ZWMgbGEgY29tbWFuZGUgwqvCoGNob3duwqDCuyAoSTx1dGlsaXNhdGV1cj5CPDoiCisiPkk8Z3JvdXBlPikuIExvcnNxdWUgdW4gdXRpbGlzYXRldXIgZXN0IGluZGlxdcOpIG1haXMgcGFzIGRlIGdyb3VwZSBhbG9ycyBsZSAiCisiZ3JvdXBlIHByaW1haXJlIGRlIGNlbHVpLWNpIGVzdCB1dGlsaXPDqS4gUXVhbmQgb24gdXRpbGlzZSBjZXR0ZSBvcHRpb24sIG9uICIKKyJkb2l0IHZlaWxsZXIgw6AgY2UgcXVlIGxlcyBncm91cGVzIHByaW1haXJlcyBhaW5zaSBxdWUgbGVzIGdyb3VwZXMgIgorInNlY29uZGFpcmVzIGV4aXN0ZW50IGJpZW4sIG3Dqm1lIHNpIGwnb3B0aW9uIEI8LS1ncm91cD4gbidlc3QgcGFzIHNww6ljaWZpw6llLiAiCisiTCdvcHRpb24gQjwtLWdyb3VwPsKgwrsgc2VydCBzZXVsZW1lbnQgcG91ciBsZXMgZ3JvdXBlcyBkb250IGwndXRpbGlzYXRldXIgIgorIm4nZXN0IHBhcyBtZW1icmUgKGMnZXN0IGNvbW1lIHJlbmRyZSBtZW1icmUgZCd1biBncm91cGUtcG91ci1wcm9jZXNzdXMgZGVzICIKKyJ1dGlsaXNhdGV1cnMgZ8OpbsOpcmlxdWVzIGNvbW1lIEI8bm9ib2R5PikuIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxOTUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1yPiwgQjwtLWNocm9vdD4gSTxyb290PiIKK21zZ3N0ciAiQjwtcj4sIEI8LS1jaHJvb3Q+IEk8cm9vdD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjAxCittc2dpZCAiIgorIkNoZGlyIGFuZCBjaHJvb3QgdG8gSTxyb290PiBiZWZvcmUgc3RhcnRpbmcgdGhlIHByb2Nlc3MuIFBsZWFzZSBub3RlIHRoYXQgIgorInRoZSBwaWRmaWxlIGlzIGFsc28gd3JpdHRlbiBhZnRlciB0aGUgY2hyb290LiIKK21zZ3N0ciAiIgorIkNoYW5nZSBkZSByw6lwZXJ0b2lyZSByYWNpbmUgcG91ciBCPHJvb3Q+IGF2YW50IGRlIGxhbmNlciBsZSBwcm9jZXNzdXMuICIKKyJSZW1hcnF1ZXogcXVlIGxlIMKrwqBwaWRmaWxlwqDCuyBlc3QgYXVzc2kgw6ljcml0IGFwcsOocyBsZSBjaGFuZ2VtZW50IGRlIHJhY2luZS4iCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjIwMQorIywgbm8td3JhcAorbXNnaWQgIkI8LWQ+LCBCPC0tY2hkaXI+IEk8cGF0aD4iCittc2dzdHIgIkI8LWQ+LCBCPC0tY2hkaXI+IEk8cGF0aD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjA5Cittc2dpZCAiIgorIkNoZGlyIHRvIEk8cGF0aD4gYmVmb3JlIHN0YXJ0aW5nIHRoZSBwcm9jZXNzLiBUaGlzIGlzIGRvbmUgYWZ0ZXIgdGhlIGNocm9vdCAiCisiaWYgdGhlIEI8LXI+fEI8LS1jaHJvb3Q+IG9wdGlvbiBpcyBzZXQuIFdoZW4gbm90IHNwZWNpZmllZCwgc3RhcnQtc3RvcC0iCisiZGFlbW9uIHdpbGwgY2hkaXIgdG8gdGhlIHJvb3QgZGlyZWN0b3J5IGJlZm9yZSBzdGFydGluZyB0aGUgcHJvY2Vzcy4iCittc2dzdHIgIiIKKyJDaGFuZ2UgZGUgcsOpcGVydG9pcmUgcG91ciBJPGNoZW1pbj4gYXZhbnQgZGUgY29tbWVuY2VyIGxlIHByb2Nlc3N1cy4gQ2VsYSAiCisiZXN0IGZhaXQgYXByw6hzIGxlIGNoYW5nZW1lbnQgZGUgcsOpcGVydG9pcmUgcmFjaW5lIHNpIGwnb3B0aW9uIEI8LXI+fEI8LS0iCisiY2hyb290PiBlc3QgZGVtYW5kw6llLiBTaSByaWVuIG4nZXN0IGRlbWFuZMOpLCBzdGFydC1zdG9wLWRhZW1vbiBjaGFuZ2VyYSBkZSAiCisicsOpcGVydG9pcmUgcmFjaW5lIGF2YW50IGRlIGNvbW1lbmNlciBsZSBwcm9jZXNzdXMuIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyMDkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1iPiwgQjwtLWJhY2tncm91bmQ+IgorbXNnc3RyICJCPC1iPiwgQjwtLWJhY2tncm91bmQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjIyMQorbXNnaWQgIiIKKyJUeXBpY2FsbHkgdXNlZCB3aXRoIHByb2dyYW1zIHRoYXQgZG9uJ3QgZGV0YWNoIG9uIHRoZWlyIG93bi4gVGhpcyBvcHRpb24gIgorIndpbGwgZm9yY2UgQjxzdGFydC1zdG9wLWRhZW1vbj4gdG8gZm9yayBiZWZvcmUgc3RhcnRpbmcgdGhlIHByb2Nlc3MsIGFuZCAiCisiZm9yY2UgaXQgaW50byB0aGUgYmFja2dyb3VuZC4gIEI8V0FSTklORzogc3RhcnQtc3RvcC1kYWVtb24+IGNhbm5vdCBjaGVjayAiCisidGhlIGV4aXQgc3RhdHVzIGlmIHRoZSBwcm9jZXNzIGZhaWxzIHRvIGV4ZWN1dGUgZm9yIEI8YW55PiByZWFzb24uIFRoaXMgaXMgYSAiCisibGFzdCByZXNvcnQsIGFuZCBpcyBvbmx5IG1lYW50IGZvciBwcm9ncmFtcyB0aGF0IGVpdGhlciBtYWtlIG5vIHNlbnNlICIKKyJmb3JraW5nIG9uIHRoZWlyIG93biwgb3Igd2hlcmUgaXQncyBub3QgZmVhc2libGUgdG8gYWRkIHRoZSBjb2RlIGZvciB0aGVtIHRvICIKKyJkbyB0aGlzIHRoZW1zZWx2ZXMuIgorbXNnc3RyICIiCisiVXRpbGlzw6kgZ8OpbsOpcmFsZW1lbnQgcG91ciBsZXMgcHJvZ3JhbW1lcyBxdWkgbmUgwqvCoHNlIGTDqXRhY2hlbnTCoMK7IHBhcyBkJ2V1eC0iCisibcOqbWVzLiBDZXR0ZSBvcHRpb24gb2JsaWdlIEI8c3RhcnQtc3RvcC1kYWVtb24+IMOgIHNlIGR1cGxpcXVlciAoZm9yaykgYXZhbnQgIgorImRlIGxhbmNlciBsZSBwcm9jZXNzdXMsIGV0IGwnb2JsaWdlIMOgIHBhc3NlciBlbiBhcnJpw6hyZS1wbGFuLiAiCisiQjxBVkVSVElTU0VNRU5UwqA6IHN0YXJ0LXN0b3AtZGFlbW9uPiBuZSBwZXV0IHBhcyB2w6lyaWZpZXIgbGUgY29kZSBkZSBzb3J0aWUgIgorInF1YW5kLCBwb3VyIEI8dW5lIHJhaXNvbiBvdSB1bmUgYXV0cmU+LCBsZSBwcm9jZXNzdXMgw6ljaG91ZS4gQydlc3QgdW4gIgorImV4cMOpZGllbnQgZG9udCBvbiBzZSBzZXJ2aXJhIHNldWxlbWVudCBwb3VyIGRlcyBwcm9ncmFtbWVzIGRvbnQgbGEgIgorImR1cGxpY2F0aW9uIG4nYSBwYXMgZGUgc2VucyBvdSBiaWVuIGRlcyBwcm9ncmFtbWVzIGRvbnQgbGUgY29kZSBuJ2VzdCBwYXMgIgorImFkYXB0YWJsZSBwb3VyIGxldXIgYWpvdXRlciBjZXR0ZSBmb25jdGlvbm5hbGl0w6kuIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyMjEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1OPiwgQjwtLW5pY2VsZXZlbD4gSTxpbnQ+IgorbXNnc3RyICJCPC1OPiwgQjwtLW5pY2VsZXZlbD4gSTxpbnQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjIyNAorbXNnaWQgIlRoaXMgYWx0ZXJzIHRoZSBwcmlvcml0eSBvZiB0aGUgcHJvY2VzcyBiZWZvcmUgc3RhcnRpbmcgaXQuIgorbXNnc3RyICJDZWxhIG1vZGlmaWUgbGEgcHJpb3JpdMOpIGR1IHByb2Nlc3N1cyBhdmFudCBxdSdpbCBuZSBzb2l0IGxhbmPDqS4iCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjIyNAorIywgbm8td3JhcAorbXNnaWQgIkI8LVA+LCBCPC0tcHJvY3NjaGVkPiBJPHBvbGljeT5CPDo+STxwcmlvcml0eT4iCittc2dzdHIgIkI8LVA+LCBCPC0tcHJvY3NjaGVkPiBJPHBvbGl0aXF1ZT5CPDo+STxwcmlvcml0w6k+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjIzMAorbXNnaWQgIiIKKyJUaGlzIGFsdGVycyB0aGUgcHJvY2VzcyBzY2hlZHVsZXIgcG9saWN5IGFuZCBwcmlvcml0eSBvZiB0aGUgcHJvY2VzcyBiZWZvcmUgIgorInN0YXJ0aW5nIGl0LiBUaGUgcHJpb3JpdHkgY2FuIGJlIG9wdGlvbmFsbHkgc3BlY2lmaWVkIGJ5IGFwcGVuZGluZyBhIEI8Oj4gIgorImZvbGxvd2VkIGJ5IHRoZSB2YWx1ZS4gVGhlIGRlZmF1bHQgSTxwcmlvcml0eT4gaXMgMC4gVGhlIGN1cnJlbnRseSBzdXBwb3J0ZWQgIgorInBvbGljeSB2YWx1ZXMgYXJlIEI8b3RoZXI+LCBCPGZpZm8+IGFuZCBCPHJyPi4iCittc2dzdHIgIiIKKyJNb2RpZmllIGxhIHBvbGl0aXF1ZSBkdSBwcm9ncmFtbWF0ZXVyIGRlIHByb2Nlc3N1cyAowqvCoHByb2Nlc3Mgc2NoZWR1bGVyICIKKyJwb2xpY3nCoMK7KSBldCBsYSBwcmlvcml0w6kgZHUgcHJvY2Vzc3VzIGF2YW50IGRlIGxlIGTDqW1hcnJlci4gTGEgcHJpb3JpdMOpIHBldXQgIgorIsOqdHJlIGluZGlxdcOpZSBkZSBtYW5pw6hyZSBmYWN1bHRhdGl2ZSBhdmVjIEI8Oj4gc3VpdmkgZGUgbGEgdmFsZXVyIHNvdWhhaXTDqWUuICIKKyJMYSBJPHByaW9yaXTDqT4gcGFyIGTDqWZhdXQgZXN0IDAuIExlcyB2YWxldXJzIGRlIHBvbGl0aXF1ZXMgYWN0dWVsbGVtZW50ICIKKyJnw6lyw6llcyBzb250IEI8b3RoZXI+LCBCPGZpZm8+IGV0IEI8cnI+LiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjMwCisjLCBuby13cmFwCittc2dpZCAiQjwtST4sIEI8LS1pb3NjaGVkPiBJPGNsYXNzPkI8Oj5JPHByaW9yaXR5PiIKK21zZ3N0ciAiQjwtST4sIEI8LS1pb3NjaGVkPiBJPGNsYXNzZT5CPDo+STxwcmlvcml0w6k+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjIzNworbXNnaWQgIiIKKyJUaGlzIGFsdGVycyB0aGUgSU8gc2NoZWR1bGVyIGNsYXNzIGFuZCBwcmlvcml0eSBvZiB0aGUgcHJvY2VzcyBiZWZvcmUgIgorInN0YXJ0aW5nIGl0LiBUaGUgcHJpb3JpdHkgY2FuIGJlIG9wdGlvbmFsbHkgc3BlY2lmaWVkIGJ5IGFwcGVuZGluZyBhIEI8Oj4gIgorImZvbGxvd2VkIGJ5IHRoZSB2YWx1ZS4gVGhlIGRlZmF1bHQgSTxwcmlvcml0eT4gaXMgNCwgdW5sZXNzIEk8Y2xhc3M+IGlzICIKKyJCPGlkbGU+LCB0aGVuIEk8cHJpb3JpdHk+IHdpbGwgYWx3YXlzIGJlIDcuIFRoZSBjdXJyZW50bHkgc3VwcG9ydGVkIHZhbHVlcyAiCisiZm9yIEk8Y2xhc3M+IGFyZSBCPGlkbGU+LCBCPGJlc3QtZWZmb3J0PiBhbmQgQjxyZWFsLXRpbWU+LiIKK21zZ3N0ciAiIgorIk1vZGlmaWUgbGEgY2xhc3NlIGR1IHByb2dyYW1tYXRldXIgZCdlbnRyw6llL3NvcnRpZSAowqvCoElPIHNjaGVkdWxlcsKgwrspIGV0IGxhICIKKyJwcmlvcml0w6kgZHUgcHJvY2Vzc3VzIGF2YW50IGRlIGxlIGTDqW1hcnJlci4gTGEgcHJpb3JpdMOpIHBldXQgw6p0cmUgaW5kaXF1w6llICIKKyJkZSBtYW5pw6hyZSBmYWN1bHRhdGl2ZSBhdmVjIEI8Oj4gc3VpdmkgZGUgbGEgdmFsZXVyIHNvdWhhaXTDqWUuIExhICIKKyJJPHByaW9yaXTDqT4gcGFyIGTDqWZhdXQgZXN0IDQsIHNhdWYgc2kgSTxjbGFzc2U+IGVzdCBCPGlkbGU+LCBhdXF1ZWwgY2FzICIKKyJJPHByaW9yaXTDqT4gc2VyYSB0b3Vqb3VycyDDqWdhbGUgw6AgNy4gTGVzIHZhbGV1cnMgZGUgSTxjbGFzc2U+IGFjdHVlbGxlbWVudCAiCisiZ8OpcsOpZXMgc29udCBCPGlkbGU+LCBCPGJlc3QtZWZmb3J0PiBldCBCPHJlYWwtdGltZT4uIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyMzcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1rPiwgQjwtLXVtYXNrPiBJPG1hc2s+IgorbXNnc3RyICJCPC1rPiwgQjwtLXVtYXNrPiBJPG1hc2s+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjI0MAorbXNnaWQgIlRoaXMgc2V0cyB0aGUgdW1hc2sgb2YgdGhlIHByb2Nlc3MgYmVmb3JlIHN0YXJ0aW5nIGl0LiIKK21zZ3N0ciAiIgorIkNlbGEgbW9kaWZpZSBsZSBtYXNxdWUgdXRpbGlzYXRldXIgZHUgcHJvY2Vzc3VzIGF2YW50IHF1J2lsIG5lIHNvaXQgbGFuY8OpLiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjQwCisjLCBuby13cmFwCittc2dpZCAiQjwtbT4sIEI8LS1tYWtlLXBpZGZpbGU+IgorbXNnc3RyICJCPC1tPiwgQjwtLW1ha2UtcGlkZmlsZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjU1Cittc2dpZCAiIgorIlVzZWQgd2hlbiBzdGFydGluZyBhIHByb2dyYW0gdGhhdCBkb2VzIG5vdCBjcmVhdGUgaXRzIG93biBwaWQgZmlsZS4gVGhpcyAiCisib3B0aW9uIHdpbGwgbWFrZSBCPHN0YXJ0LXN0b3AtZGFlbW9uPiBjcmVhdGUgdGhlIGZpbGUgcmVmZXJlbmNlZCB3aXRoIEI8LS0iCisicGlkZmlsZT4gYW5kIHBsYWNlIHRoZSBwaWQgaW50byBpdCBqdXN0IGJlZm9yZSBleGVjdXRpbmcgdGhlIHByb2Nlc3MuIE5vdGUsICIKKyJ0aGUgZmlsZSB3aWxsIG5vdCBiZSByZW1vdmVkIHdoZW4gc3RvcHBpbmcgdGhlIHByb2dyYW0uICBCPE5PVEU6PiBUaGlzICIKKyJmZWF0dXJlIG1heSBub3Qgd29yayBpbiBhbGwgY2FzZXMuIE1vc3Qgbm90YWJseSB3aGVuIHRoZSBwcm9ncmFtIGJlaW5nICIKKyJleGVjdXRlZCBmb3JrcyBmcm9tIGl0cyBtYWluIHByb2Nlc3MuIEJlY2F1c2Ugb2YgdGhpcywgaXQgaXMgdXN1YWxseSBvbmx5ICIKKyJ1c2VmdWwgd2hlbiBjb21iaW5lZCB3aXRoIHRoZSBCPC0tYmFja2dyb3VuZD4gb3B0aW9uLiIKK21zZ3N0ciAiIgorIlV0aWxpc8OpIGxvcnMgZHUgbGFuY2VtZW50IGQndW4gcHJvZ3JhbW1lIHF1aSBuZSBjcsOpZSBwYXMgc29uIHByb3ByZSBmaWNoaWVyICIKKyJpZGVudGlmaWNhdGV1ciDCq8KgcGlkwqDCuy4gQ2V0dGUgb3B0aW9uIGluZGlxdWUgw6AgQjxzdGFydC1zdG9wLWRhZW1vbj4gZGUgY3LDqWVyICIKKyJsZSBmaWNoaWVyIHLDqWbDqXJlbmPDqSBwYXIgQjwtLXBpZGZpbGU+IGV0IHBsYWNlciBsZSDCq8KgcGlkwqDCuyBkYW5zIGNlIGZpY2hpZXIgIgorImp1c3RlIGF2YW50IGQnZXjDqWN1dGVyIGxlIHByb2Nlc3N1cy4gSWwgZmF1dCByZW1hcnF1ZXIgcXVlIGNlIGZpY2hpZXIgbidlc3QgIgorInBhcyBzdXBwcmltw6kgcXVhbmQgbGUgcHJvZ3JhbW1lIHMnYXJyw6p0ZS4gQjxOT1RFwqA6PiBpbCBzZSBwZXV0IHF1ZSBjZXR0ZSAiCisiY2FyYWN0w6lyaXN0aXF1ZSBuZSBtYXJjaGUgcGFzIGRhbnMgdG91cyBsZXMgY2FzLiBOb3RhbW1lbnQgcXVhbmQgbGUgIgorInByb2dyYW1tZSBxdWkgZXN0IGV4w6ljdXTDqSBzZSBkdXBsaXF1ZS4gw4AgY2F1c2UgZGUgY2VsYSwgY2V0dGUgb3B0aW9uIG4nZXN0ICIKKyJoYWJpdHVlbGxlbWVudCB1dGlsZSBxdWUgY29tYmluw6llIGF2ZWMgbCdvcHRpb24gQjwtLWJhY2tncm91bmQ+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyNTgKK21zZ2lkICJQcmludCB2ZXJib3NlIGluZm9ybWF0aW9uYWwgbWVzc2FnZXMuIgorbXNnc3RyICJBZmZpY2hlIGRlcyBtZXNzYWdlcyBwcm9saXhlcyBlbiByZW5zZWlnbmVtZW50cy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjcwCittc2dpZCAiIgorIlRoZSByZXF1ZXN0ZWQgYWN0aW9uIHdhcyBwZXJmb3JtZWQuIElmIEI8LS1va25vZG8+IHdhcyBzcGVjaWZpZWQsIGl0J3MgYWxzbyAiCisicG9zc2libGUgdGhhdCBub3RoaW5nIGhhZCB0byBiZSBkb25lLiAgVGhpcyBjYW4gaGFwcGVuIHdoZW4gQjwtLXN0YXJ0PiB3YXMgIgorInNwZWNpZmllZCBhbmQgYSBtYXRjaGluZyBwcm9jZXNzIHdhcyBhbHJlYWR5IHJ1bm5pbmcsIG9yIHdoZW4gQjwtLXN0b3A+IHdhcyAiCisic3BlY2lmaWVkIGFuZCB0aGVyZSB3ZXJlIG5vIG1hdGNoaW5nIHByb2Nlc3Nlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyNzUKK21zZ2lkICJJZiBCPC0tb2tub2RvPiB3YXMgbm90IHNwZWNpZmllZCBhbmQgbm90aGluZyB3YXMgZG9uZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyODMKK21zZ2lkICIiCisiSWYgQjwtLXN0b3A+IGFuZCBCPC0tcmV0cnk+IHdlcmUgc3BlY2lmaWVkLCBidXQgdGhlIGVuZCBvZiB0aGUgc2NoZWR1bGUgd2FzICIKKyJyZWFjaGVkIGFuZCB0aGUgcHJvY2Vzc2VzIHdlcmUgc3RpbGwgcnVubmluZy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjgzIHN0YXJ0LXN0b3AtZGFlbW9uLjg6Mjk1CisjLCBuby13cmFwCittc2dpZCAiQjwzPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjI4NgorbXNnaWQgIkFueSBvdGhlciBlcnJvci4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyODkKK21zZ2lkICIiCisiV2hlbiB1c2luZyB0aGUgQjwtLXN0YXR1cz4gY29tbWFuZCwgdGhlIGZvbGxvd2luZyBzdGF0dXMgY29kZXMgYXJlIHJldHVybmVkOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjI5MgorbXNnaWQgIlByb2dyYW0gaXMgcnVubmluZy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyOTUKK21zZ2lkICJQcm9ncmFtIGlzIG5vdCBydW5uaW5nIGFuZCB0aGUgcGlkIGZpbGUgZXhpc3RzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjI5OAorbXNnaWQgIlByb2dyYW0gaXMgbm90IHJ1bm5pbmcuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjI5OAorIywgbm8td3JhcAorbXNnaWQgIkI8ND4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODozMDEKK21zZ2lkICJVbmFibGUgdG8gZGV0ZXJtaW5lIHByb2dyYW0gc3RhdHVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjMwNQorbXNnaWQgIiIKKyJTdGFydCB0aGUgQjxmb29kPiBkYWVtb24sIHVubGVzcyBvbmUgaXMgYWxyZWFkeSBydW5uaW5nIChhIHByb2Nlc3MgbmFtZWQgIgorImZvb2QsIHJ1bm5pbmcgYXMgdXNlciBmb29kLCB3aXRoIHBpZCBpbiBmb29kLnBpZCk6IgorbXNnc3RyICIiCisiRMOpbWFycmUgbGUgZMOpbW9uIEI8Zm9vZD4sIMOgIG1vaW5zIHF1J2lsIHNvaXQgZMOpasOgIGVuIGNvdXJzIGQnZXjDqWN1dGlvbiAodW4gIgorInByb2Nlc3N1cyBub21tw6kgQjxmb29kPiwgdG91cm5hbnQgc291cyBsZSBub20gZCd1dGlsaXNhdGV1ciBCPGZvb2Q+LCBhdmVjIHVuICIKKyJwaWQgZGFucyBmb29kLnBpZCnCoDoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MzA4CisjLCBuby13cmFwCittc2dpZCAic3RhcnQtc3RvcC1kYWVtb24gLS1zdGFydCAtLW9rbm9kbyAtLXVzZXIgZm9vZCAtLW5hbWUgZm9vZCAtLXBpZGZpbGUgL3Zhci9ydW4vZm9vZC5waWQgLS1zdGFydGFzIC91c3Ivc2Jpbi9mb29kIC0tY2h1aWQgZm9vZCAtLSAtLWRhZW1vblxuIgorbXNnc3RyICJzdGFydC1zdG9wLWRhZW1vbiAtLXN0YXJ0IC0tb2tub2RvIC0tdXNlciBmb29kIC0tbmFtZSBmb29kIC0tcGlkZmlsZSAvdmFyL3J1bi9mb29kLnBpZCAtLXN0YXJ0YXMgL3Vzci9zYmluL2Zvb2QgLS1jaHVpZCBmb29kIC0tIC0tZGFlbW9uXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MzExCittc2dpZCAiU2VuZCBCPFNJR1RFUk0+IHRvIEI8Zm9vZD4gYW5kIHdhaXQgdXAgdG8gNSBzZWNvbmRzIGZvciBpdCB0byBzdG9wOiIKK21zZ3N0ciAiIgorIkVudm9pZSBsZSBzaWduYWwgQjxTSUdURVJNPiDDoCBCPGZvb2Q+IGV0IGF0dGVuZCBkdXJhbnQgNSBzZWNvbmRlcyBzb24gYXJyw6p0wqA6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjMxNAorIywgbm8td3JhcAorbXNnaWQgInN0YXJ0LXN0b3AtZGFlbW9uIC0tc3RvcCAtLW9rbm9kbyAtLXVzZXIgZm9vZCAtLW5hbWUgZm9vZCAtLXBpZGZpbGUgL3Zhci9ydW4vZm9vZC5waWQgLS1yZXRyeSA1XG4iCittc2dzdHIgInN0YXJ0LXN0b3AtZGFlbW9uIC0tc3RvcCAtLW9rbm9kbyAtLXVzZXIgZm9vZCAtLW5hbWUgZm9vZCAtLXBpZGZpbGUgL3Zhci9ydW4vZm9vZC5waWQgLS1yZXRyeSA1XG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MzE3Cittc2dpZCAiRGVtb25zdHJhdGlvbiBvZiBhIGN1c3RvbSBzY2hlZHVsZSBmb3Igc3RvcHBpbmcgQjxmb29kPjoiCittc2dzdHIgIkTDqW1vbnN0cmF0aW9uIGQndW4gb3Jkb25uYW5jZXVyIHBlcnNvbm5hbGlzw6kgcG91ciBsJ2FycsOqdCBkZSBCPGZvb2Q+wqA6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjMyMAorIywgbm8td3JhcAorbXNnaWQgInN0YXJ0LXN0b3AtZGFlbW9uIC0tc3RvcCAtLW9rbm9kbyAtLXVzZXIgZm9vZCAtLW5hbWUgZm9vZCAtLXBpZGZpbGUgL3Zhci9ydW4vZm9vZC5waWQgLS1yZXRyeT1URVJNLzMwL0tJTEwvNVxuIgorbXNnc3RyICJzdGFydC1zdG9wLWRhZW1vbiAtLXN0b3AgLS1va25vZG8gLS11c2VyIGZvb2QgLS1uYW1lIGZvb2QgLS1waWRmaWxlIC92YXIvcnVuL2Zvb2QucGlkIC0tcmV0cnk9VEVSTS8zMC9LSUxMLzVcbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODozMjYKK21zZ2lkICIiCisiTWFyZWsgTWljaGFsa2lld2ljeiBFPGx0Pm1hcmVrbUBpMTdsaW51eGIuaXN0cy5wd3Iud3JvYy5wbEU8Z3Q+IGJhc2VkIG9uIGEgIgorInByZXZpb3VzIHZlcnNpb24gYnkgSWFuIEphY2tzb24gRTxsdD5pYW5AY2hpYXJrLmdyZWVuZW5kLm9yZy51a0U8Z3Q+LiIKK21zZ3N0ciAiIgorIk1hcmVrIE1pY2hhbGtpZXdpY3ogRTxsdD5tYXJla21AaTE3bGludXhiLmlzdHMucHdyLndyb2MucGxFPGd0PiDDoCBwYXJ0aXIgIgorImQndW5lIHZlcnNpb24gZmFpdGUgcGFyIElhbiBKYWNrc29uIEU8bHQ+aWFuQGNoaWFyay5ncmVlbmVuZC5vcmcudWtFPGd0Pi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MzI4Cittc2dpZCAiIgorIk1hbnVhbCBwYWdlIGJ5IEtsZWUgRGllbmVzIEU8bHQ+a2xlZUBtaXQuZWR1RTxndD4sIHBhcnRpYWxseSByZWZvcm1hdHRlZCBieSAiCisiSWFuIEphY2tzb24uIgorbXNnc3RyICIiCisiUGFnZSBkZSBtYW51ZWwgcGFyIEtsZWUgRGllbmVzIEU8bHQ+a2xlZUBtaXQuZWR1RTxndD4sIHBhcnRpZWxsZW1lbnQgIgorInJlZm9ybWF0dMOpZSBwYXIgSWFuIEphY2tzb24uIgorCisjLiB0eXBlOiBUSAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjgKKyMsIG5vLXdyYXAKK21zZ2lkICJ1cGRhdGUtYWx0ZXJuYXRpdmVzIgorbXNnc3RyICJ1cGRhdGUtYWx0ZXJuYXRpdmVzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTEKK21zZ2lkICIiCisidXBkYXRlLWFsdGVybmF0aXZlcyAtIG1haW50YWluIHN5bWJvbGljIGxpbmtzIGRldGVybWluaW5nIGRlZmF1bHQgY29tbWFuZHMiCittc2dzdHIgIiIKKyJ1cGRhdGUtYWx0ZXJuYXRpdmVzIC0gbWFpbnRlbmFuY2UgZGVzIGxpZW5zIHN5bWJvbGlxdWVzIGTDqXRlcm1pbmFudCBsZXMgbm9tcyAiCisicGFyIGTDqWZhdXQgZGUgY2VydGFpbmVzIGNvbW1hbmRlcyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE1CisjLCBmdXp6eQorI3wgbXNnaWQgIkI8dXBkYXRlLWFsdGVybmF0aXZlcz4gW0k8b3B0aW9ucz5dIEk8Y29tbWFuZD4iCittc2dpZCAiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBbSTxvcHRpb24+Li4uXSBJPGNvbW1hbmQ+IgorbXNnc3RyICJCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IFtJPG9wdGlvbnM+XSBJPGNvbW1hbmRlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjIwCittc2dpZCAiIgorIkI8dXBkYXRlLWFsdGVybmF0aXZlcz4gY3JlYXRlcywgcmVtb3ZlcywgbWFpbnRhaW5zIGFuZCBkaXNwbGF5cyBpbmZvcm1hdGlvbiAiCisiYWJvdXQgdGhlIHN5bWJvbGljIGxpbmtzIGNvbXByaXNpbmcgdGhlIERlYmlhbiBhbHRlcm5hdGl2ZXMgc3lzdGVtLiIKK21zZ3N0ciAiIgorIkI8dXBkYXRlLWFsdGVybmF0aXZlcz4gY3LDqWUsIGVubMOodmUsIGNvbnNlcnZlIGV0IGFmZmljaGUgZGVzIGluZm9ybWF0aW9ucyAiCisiY29uY2VybmFudCBsZXMgbGllbnMgc3ltYm9saXF1ZXMgcXVpIGZvcm1lbnQgbGUgc3lzdMOobWUgRGViaWFuIGRlcyAiCisiwqvCoGFsdGVybmF0aXZlc8KgwrsuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjgKK21zZ2lkICIiCisiSXQgaXMgcG9zc2libGUgZm9yIHNldmVyYWwgcHJvZ3JhbXMgZnVsZmlsbGluZyB0aGUgc2FtZSBvciBzaW1pbGFyIGZ1bmN0aW9ucyAiCisidG8gYmUgaW5zdGFsbGVkIG9uIGEgc2luZ2xlIHN5c3RlbSBhdCB0aGUgc2FtZSB0aW1lLiAgRm9yIGV4YW1wbGUsIG1hbnkgIgorInN5c3RlbXMgaGF2ZSBzZXZlcmFsIHRleHQgZWRpdG9ycyBpbnN0YWxsZWQgYXQgb25jZS4gIFRoaXMgZ2l2ZXMgY2hvaWNlIHRvICIKKyJ0aGUgdXNlcnMgb2YgYSBzeXN0ZW0sIGFsbG93aW5nIGVhY2ggdG8gdXNlIGEgZGlmZmVyZW50IGVkaXRvciwgaWYgZGVzaXJlZCwgIgorImJ1dCBtYWtlcyBpdCBkaWZmaWN1bHQgZm9yIGEgcHJvZ3JhbSB0byBtYWtlIGEgZ29vZCBjaG9pY2UgZm9yIGFuIGVkaXRvciB0byAiCisiaW52b2tlIGlmIHRoZSB1c2VyIGhhcyBub3Qgc3BlY2lmaWVkIGEgcGFydGljdWxhciBwcmVmZXJlbmNlLiIKK21zZ3N0ciAiIgorIklsIGVzdCBwb3NzaWJsZSBkJ2luc3RhbGxlciwgc3VyIHVuIG3Dqm1lIHN5c3TDqG1lIGV0IGVuIG3Dqm1lIHRlbXBzLCBkZXMgIgorInByb2dyYW1tZXMgcXVpIHJlbXBsaXNzZW50IGRlcyBmb25jdGlvbnMgaWRlbnRpcXVlcyBvdSBzZW1ibGFibGVzLiBQYXIgIgorImV4ZW1wbGUsIGJlYXVjb3VwIGRlIHN5c3TDqG1lcyBpbnN0YWxsZW50IHBsdXNpZXVycyDDqWRpdGV1cnMgZGUgdGV4dGUgZW4gbcOqbWUgIgorInRlbXBzLiBDZWxhIHBlcm1ldCDDoCBjaGFxdWUgdXRpbGlzYXRldXIgZCd1biBzeXN0w6htZSBkZSBjaG9pc2lyLCBzJ2lsIGxlICIKKyJkw6lzaXJlLCB1biDDqWRpdGV1ciBkZSB0ZXh0ZSBkaWZmw6lyZW50wqA7IG1haXMgY2VsYSByZW5kIGxlcyBjaG9zZXMgZGlmZmljaWxlcyAiCisicG91ciBsZSBwcm9ncmFtbWUgcXVpIGRvaXQgY2hvaXNpciB1biBib24gw6lkaXRldXIgZGUgdGV4dGUgcXVhbmQgIgorImwndXRpbGlzYXRldXIgbidhIHBhcyBmYWl0IGRlIGNob2l4IHByw6ljaXMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NTAKK21zZ2lkICIiCisiRGViaWFuJ3MgYWx0ZXJuYXRpdmVzIHN5c3RlbSBhaW1zIHRvIHNvbHZlIHRoaXMgcHJvYmxlbS4gIEEgZ2VuZXJpYyBuYW1lIGluICIKKyJ0aGUgZmlsZXN5c3RlbSBpcyBzaGFyZWQgYnkgYWxsIGZpbGVzIHByb3ZpZGluZyBpbnRlcmNoYW5nZWFibGUgIgorImZ1bmN0aW9uYWxpdHkuICBUaGUgYWx0ZXJuYXRpdmVzIHN5c3RlbSBhbmQgdGhlIHN5c3RlbSBhZG1pbmlzdHJhdG9yICIKKyJ0b2dldGhlciBkZXRlcm1pbmUgd2hpY2ggYWN0dWFsIGZpbGUgaXMgcmVmZXJlbmNlZCBieSB0aGlzIGdlbmVyaWMgbmFtZS4gICIKKyJGb3IgZXhhbXBsZSwgaWYgdGhlIHRleHQgZWRpdG9ycyBCPGVkPigxKSAgYW5kIEI8bnZpPigxKSAgYXJlIGJvdGggaW5zdGFsbGVkICIKKyJvbiB0aGUgc3lzdGVtLCB0aGUgYWx0ZXJuYXRpdmVzIHN5c3RlbSB3aWxsIGNhdXNlIHRoZSBnZW5lcmljIG5hbWUgSTwvdXNyLyIKKyJiaW4vZWRpdG9yPiB0byByZWZlciB0byBJPC91c3IvYmluL252aT4gYnkgZGVmYXVsdC4gVGhlIHN5c3RlbSBhZG1pbmlzdHJhdG9yICIKKyJjYW4gb3ZlcnJpZGUgdGhpcyBhbmQgY2F1c2UgaXQgdG8gcmVmZXIgdG8gSTwvdXNyL2Jpbi9lZD4gaW5zdGVhZCwgYW5kIHRoZSAiCisiYWx0ZXJuYXRpdmVzIHN5c3RlbSB3aWxsIG5vdCBhbHRlciB0aGlzIHNldHRpbmcgdW50aWwgZXhwbGljaXRseSByZXF1ZXN0ZWQgIgorInRvIGRvIHNvLiIKK21zZ3N0ciAiIgorIkxlIHN5c3TDqG1lIERlYmlhbiBkZXMgwqvCoGFsdGVybmF0aXZlc8KgwrsgZXNzYWllIGRlIHLDqXNvdWRyZSBjZSBwcm9ibMOobWUuIFRvdXMgIgorImxlcyBmaWNoaWVycyBxdWkgcHJvcG9zZW50IGRlcyBmb25jdGlvbnMgaW50ZXJjaGFuZ2VhYmxlcyBzZSBzZXJ2ZW50IGQndW4gIgorIm5vbSBnw6luw6lyaXF1ZSBxdWkgc2UgdHJvdXZlIGRhbnMgbCdhcmJvcmVzY2VuY2UuIExlIHN5c3TDqG1lIGRlcyAiCisiwqvCoGFsdGVybmF0aXZlc8KgwrsgZXQgbCdhZG1pbmlzdHJhdGV1ciBzeXN0w6htZSBmb250IGNvbm5hw650cmUgZW5zZW1ibGUgbGUgIgorImZpY2hpZXIgcXVpIGVzdCByw6llbGxlbWVudCB2aXPDqSBwYXIgY2Ugbm9tIGfDqW7DqXJpcXVlLiBQYXIgZXhlbXBsZSwgc2kgbGVzICIKKyLDqWRpdGV1cnMgZGUgdGV4dGUgQjxlZD4oMSkgZXQgQjxudmk+KDEpIHNvbnQgdG91cyBsZXMgZGV1eCBpbnN0YWxsw6lzLCBsZSAiCisic3lzdMOobWUgZGVzIMKrwqBhbHRlcm5hdGl2ZXPCoMK7IGZhaXQgcXVlIGxlIG5vbSBnw6luw6lyaXF1ZSBJPC91c3IvYmluL2VkaXRvcj4gIgorInJlbnZvaWUgcGFyIGTDqWZhdXQgw6AgSTwvdXNyL2Jpbi9udmk+LiBMJ2FkbWluaXN0cmF0ZXVyIHN5c3TDqG1lIHBldXQgIgorInJlbXBsYWNlciBjZXR0ZSBhc3NpZ25hdGlvbiBwYXIgSTwvdXNyL2Jpbi9lZD4gZXQgbGUgc3lzdMOobWUgZGVzICIKKyLCq8KgYWx0ZXJuYXRpdmVzwqDCuyBuZSBsYSBjaGFuZ2VyYSBwYXMgdGFudCBxdSdvbiBuZSBsdWkgYXVyYSBwYXMgZGVtYW5kw6kgIgorImV4cGxpY2l0ZW1lbnQgZGUgbGUgZmFpcmUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NjAKK21zZ2lkICIiCisiVGhlIGdlbmVyaWMgbmFtZSBpcyBub3QgYSBkaXJlY3Qgc3ltYm9saWMgbGluayB0byB0aGUgc2VsZWN0ZWQgYWx0ZXJuYXRpdmUuICAiCisiSW5zdGVhZCwgaXQgaXMgYSBzeW1ib2xpYyBsaW5rIHRvIGEgbmFtZSBpbiB0aGUgSTxhbHRlcm5hdGl2ZXM+ICIKKyJJPGRpcmVjdG9yeT4sIHdoaWNoIGluIHR1cm4gaXMgYSBzeW1ib2xpYyBsaW5rIHRvIHRoZSBhY3R1YWwgZmlsZSAiCisicmVmZXJlbmNlZC4gIFRoaXMgaXMgZG9uZSBzbyB0aGF0IHRoZSBzeXN0ZW0gYWRtaW5pc3RyYXRvcidzIGNoYW5nZXMgY2FuIGJlICIKKyJjb25maW5lZCB3aXRoaW4gdGhlIEk8L2V0Yz4gZGlyZWN0b3J5OiB0aGUgRkhTIChxLnYuKSBnaXZlcyByZWFzb25zIHdoeSB0aGlzICIKKyJpcyBhIEdvb2QgVGhpbmcuIgorbXNnc3RyICIiCisiTGUgbm9tIGfDqW7DqXJpcXVlIG4nZXN0IHBhcyB1biBsaWVuIHN5bWJvbGlxdWUgZGlyZWN0IHZlcnMgbCdhbHRlcm5hdGl2ZSAiCisiY2hvaXNpZS4gQydlc3QgZW4gZmFpdCB1biBsaWVuIHN5bWJvbGlxdWUgdmVycyB1biBub20gc2l0dcOpIGRhbnMgbGUgIgorIkk8csOpcGVydG9pcmU+IEk8ZGVzIMKrwqBhbHRlcm5hdGl2ZXPCoMK7PiwgbGVxdWVsIG5vbSBlc3Qgw6Agc29uIHRvdXIgdW4gbGllbiAiCisic3ltYm9saXF1ZSB2ZXJzIGxlIGZpY2hpZXIgcsOpZWxsZW1lbnQgdmlzw6kuIExlcyBtb2RpZmljYXRpb25zIGZhaXRlcyBwYXIgIgorImwnYWRtaW5pc3RyYXRldXIgc3lzdMOobWUgc29udCBhaW5zaSBjb25maW7DqWVzIGRhbnMgbGUgcsOpcGVydG9pcmUgSTwvZXRjPsKgOyAiCisibGUgRkhTIChsaXNlei1sZSkgZG9ubmUgZGUgQm9ubmVzIFJhaXNvbnMgZGUgZmFpcmUgYWluc2kuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NzIKK21zZ2lkICIiCisiV2hlbiBlYWNoIHBhY2thZ2UgcHJvdmlkaW5nIGEgZmlsZSB3aXRoIGEgcGFydGljdWxhciBmdW5jdGlvbmFsaXR5IGlzICIKKyJpbnN0YWxsZWQsIGNoYW5nZWQgb3IgcmVtb3ZlZCwgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBpcyBjYWxsZWQgdG8gdXBkYXRlICIKKyJpbmZvcm1hdGlvbiBhYm91dCB0aGF0IGZpbGUgaW4gdGhlIGFsdGVybmF0aXZlcyBzeXN0ZW0uICBCPHVwZGF0ZS0iCisiYWx0ZXJuYXRpdmVzPiBpcyB1c3VhbGx5IGNhbGxlZCBmcm9tIHRoZSBCPHBvc3RpbnN0PiAoY29uZmlndXJlKSBvciBCPHByZXJtPiAiCisiKGluc3RhbGwpIHNjcmlwdHMgaW4gRGViaWFuIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorIkNoYXF1ZSBmb2lzIHF1J3VuIHBhcXVldCBwcm9wb3NhbnQgdW4gZmljaGllciBwb3VyIHVuZSBmb25jdGlvbiBkw6l0ZXJtaW7DqWUsICIKKyJlc3QgaW5zdGFsbMOpLCBtb2RpZmnDqSBvdSBkw6lzaW5zdGFsbMOpLCBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IGVzdCBhcHBlbMOpIHBvdXIgIgorIm1ldHRyZSDDoCBqb3VyIGxlcyBpbmZvcm1hdGlvbnMgY29uY2VybmFudCBjZSBmaWNoaWVyIGRhbnMgbGUgc3lzdMOobWUgZGVzICIKKyLCq8KgYWx0ZXJuYXRpdmVzwqDCuy4gRW4gZ8OpbsOpcmFsLCBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IGVzdCBhcHBlbMOpIGRhbnMgbGVzICIKKyJzY3JpcHRzIEI8cG9zdGluc3Q+IChjb25maWd1cmUpIGV0IEI8cHJlcm0+IChpbnN0YWxsKSBkZXMgcGFxdWV0cyBEZWJpYW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6OTEKK21zZ2lkICIiCisiSXQgaXMgb2Z0ZW4gdXNlZnVsIGZvciBhIG51bWJlciBvZiBhbHRlcm5hdGl2ZXMgdG8gYmUgc3luY2hyb25pc2VkLCBzbyB0aGF0ICIKKyJ0aGV5IGFyZSBjaGFuZ2VkIGFzIGEgZ3JvdXA7IGZvciBleGFtcGxlLCB3aGVuIHNldmVyYWwgdmVyc2lvbnMgb2YgdGhlIEI8dmk+IgorIigxKSAgZWRpdG9yIGFyZSBpbnN0YWxsZWQsIHRoZSBtYW4gcGFnZSByZWZlcmVuY2VkIGJ5IEk8L3Vzci9zaGFyZS9tYW4vbWFuMS8iCisidmkuMT4gc2hvdWxkIGNvcnJlc3BvbmQgdG8gdGhlIGV4ZWN1dGFibGUgcmVmZXJlbmNlZCBieSBJPC91c3IvYmluL3ZpPi4gICIKKyJCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IGhhbmRsZXMgdGhpcyBieSBtZWFucyBvZiBJPG1hc3Rlcj4gYW5kIEk8c2xhdmU+ICIKKyJsaW5rczsgd2hlbiB0aGUgbWFzdGVyIGlzIGNoYW5nZWQsIGFueSBhc3NvY2lhdGVkIHNsYXZlcyBhcmUgY2hhbmdlZCB0b28uICBBICIKKyJtYXN0ZXIgbGluayBhbmQgaXRzIGFzc29jaWF0ZWQgc2xhdmVzIG1ha2UgdXAgYSBJPGxpbms+IEk8Z3JvdXA+LiIKK21zZ3N0ciAiIgorIklsIGVzdCBzb3V2ZW50IHV0aWxlIGRlIHN5bmNocm9uaXNlciBjZXJ0YWluZXMgYWx0ZXJuYXRpdmVzLCBkZSBtYW5pw6hyZSDDoCAiCisicG91dm9pciBsZXMgbWFuaXB1bGVyIGdsb2JhbGVtZW50wqA7IHBhciBleGVtcGxlLCBxdWFuZCBwbHVzaWV1cnMgdmVyc2lvbnMgZGUgIgorIkI8dmk+KDEpICBzb250IGluc3RhbGzDqWVzLCBsYSBwYWdlIGRlIG1hbnVlbCBxdWkgZXN0IHZpc8OpZSBwYXIgSTwvdXNyL3NoYXJlLyIKKyJtYW4vbWFuMS92aS4xPiBkZXZyYWl0IGNvcnJlc3BvbmRyZSDDoCBJPC91c3IvYmluL3ZpPi4gQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiAiCisiZ8OocmUgY2UgcHJvYmzDqG1lIGF2ZWMgbGVzIGxpZW5zIEk8cHJpbmNpcGF1eCAowqvCoG1hc3RlcsKgwrspPiBldCBsZXMgbGllbnMgIgorIkk8c2Vjb25kYWlyZXMgKMKrwqBzbGF2ZcKgwrspPi4gUXVhbmQgbGUgbGllbiBwcmluY2lwYWwgZXN0IGNoYW5nw6ksIHRvdXMgbGVzICIKKyJsaWVucyBzZWNvbmRhaXJlcyBhc3NvY2nDqXMgc29udCBjaGFuZ8Opcy4gVW4gbGllbiBwcmluY2lwYWwgZXQgc2VzIGxpZW5zICIKKyJzZWNvbmRhaXJlcyBhc3NvY2nDqXMgY29tcG9zZW50IHVuIEk8Z3JvdXBlPiBkZSBJPGxpZW5zLj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxMDAKK21zZ2lkICIiCisiRWFjaCBsaW5rIGdyb3VwIGlzLCBhdCBhbnkgZ2l2ZW4gdGltZSwgaW4gb25lIG9mIHR3byBtb2RlczogYXV0b21hdGljIG9yICIKKyJtYW51YWwuICBXaGVuIGEgZ3JvdXAgaXMgaW4gYXV0b21hdGljIG1vZGUsIHRoZSBhbHRlcm5hdGl2ZXMgc3lzdGVtIHdpbGwgIgorImF1dG9tYXRpY2FsbHkgZGVjaWRlLCBhcyBwYWNrYWdlcyBhcmUgaW5zdGFsbGVkIGFuZCByZW1vdmVkLCB3aGV0aGVyIGFuZCBob3cgIgorInRvIHVwZGF0ZSB0aGUgbGlua3MuICBJbiBtYW51YWwgbW9kZSwgdGhlIGFsdGVybmF0aXZlcyBzeXN0ZW0gd2lsbCByZXRhaW4gIgorInRoZSBjaG9pY2Ugb2YgdGhlIGFkbWluaXN0cmF0b3IgYW5kIGF2b2lkIGNoYW5naW5nIHRoZSBsaW5rcyAoZXhjZXB0IHdoZW4gIgorInNvbWV0aGluZyBpcyBicm9rZW4pLiIKK21zZ3N0ciAiIgorIsOAIHRvdXQgbW9tZW50LCB1biBncm91cGUgZGUgbGllbnMgZXN0IGRhbnMgbCd1biBkZXMgZGV1eCBtb2RlcyBzdWl2YW50c8KgOiAiCisiYXV0b21hdGlxdWUgb3UgbWFudWVsLiBRdWFuZCB1biBncm91cGUgZXN0IGRhbnMgbGUgbW9kZSBhdXRvbWF0aXF1ZSBldCBxdWUgIgorImRlcyBwYXF1ZXRzIHNvbnQgaW5zdGFsbMOpcyBvdSBkw6lzaW5zdGFsbMOpcywgbGUgc3lzdMOobWUgZGVzIMKrwqBhbHRlcm5hdGl2ZXPCoMK7ICIKKyJkw6ljaWRlIGF1dG9tYXRpcXVlbWVudCBzJ2lsIGRvaXQgbWV0dHJlIMOgIGpvdXIgbGVzIGxpZW5zIGV0IGNvbW1lbnQgbGUgIgorImZhaXJlLiBEYW5zIGxlIG1vZGUgbWFudWVsLCBsZSBzeXN0w6htZSBkZXMgwqvCoGFsdGVybmF0aXZlc8KgwrsgbmUgY2hhbmdlIHBhcyAiCisibGVzIGxpZW5zIGV0IGxhaXNzZSBsJ2FkbWluaXN0cmF0ZXVyIHN5c3TDqG1lIHByZW5kcmUgdG91dGVzIGxlcyBkw6ljaXNpb25zICIKKyIoc2F1ZiBzaSBxdWVscXVlIGNob3NlIGVzdCBjYXNzw6kpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjEwOQorbXNnaWQgIiIKKyJMaW5rIGdyb3VwcyBhcmUgaW4gYXV0b21hdGljIG1vZGUgd2hlbiB0aGV5IGFyZSBmaXJzdCBpbnRyb2R1Y2VkIHRvIHRoZSAiCisic3lzdGVtLiAgSWYgdGhlIHN5c3RlbSBhZG1pbmlzdHJhdG9yIG1ha2VzIGNoYW5nZXMgdG8gdGhlIHN5c3RlbSdzIGF1dG9tYXRpYyAiCisic2V0dGluZ3MsIHRoaXMgd2lsbCBiZSBub3RpY2VkIHRoZSBuZXh0IHRpbWUgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBpcyBydW4gIgorIm9uIHRoZSBjaGFuZ2VkIGxpbmsncyBncm91cCwgYW5kIHRoZSBncm91cCB3aWxsIGF1dG9tYXRpY2FsbHkgYmUgc3dpdGNoZWQgdG8gIgorIm1hbnVhbCBtb2RlLiIKK21zZ3N0ciAiIgorIlVuIGdyb3VwZSBkZSBsaWVucyBlc3QgZW4gbW9kZSBhdXRvbWF0aXF1ZSBxdWFuZCBpbCBlc3QgY3LDqWUgc3VyIHVuIHN5c3TDqG1lICIKKyJwb3VyIGxhIHByZW1pw6hyZSBmb2lzLiBRdWFuZCBsJ2FkbWluaXN0cmF0ZXVyIHN5c3TDqG1lIG1vZGlmaWUgbGUgcGFyYW3DqXRyYWdlICIKKyJhdXRvbWF0aXF1ZSBkdSBzeXN0w6htZSwgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBsZSByZW1hcnF1ZXJhIGxhIHByb2NoYWluZSAiCisiZm9pcyBxdSdpbCBzZXJhIGxhbmPDqSBwb3VyIGNlIGdyb3VwZSBhdXggbGllbnMgbW9kaWZpw6lzIGV0IGlsIGZlcmEgcGFzc2VyIGNlICIKKyJncm91cGUgZW4gbW9kZSBtYW51ZWwuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTE2Cittc2dpZCAiIgorIkVhY2ggYWx0ZXJuYXRpdmUgaGFzIGEgSTxwcmlvcml0eT4gYXNzb2NpYXRlZCB3aXRoIGl0LiAgV2hlbiBhIGxpbmsgZ3JvdXAgaXMgIgorImluIGF1dG9tYXRpYyBtb2RlLCB0aGUgYWx0ZXJuYXRpdmVzIHBvaW50ZWQgdG8gYnkgbWVtYmVycyBvZiB0aGUgZ3JvdXAgd2lsbCAiCisiYmUgdGhvc2Ugd2hpY2ggaGF2ZSB0aGUgaGlnaGVzdCBwcmlvcml0eS4iCittc2dzdHIgIiIKKyLDgCBjaGFxdWUgYWx0ZXJuYXRpdmUgZXN0IGFzc29jacOpZSB1bmUgSTxwcmlvcml0w6k+LiBRdWFuZCB1biBncm91cGUgZGUgbGllbnMgIgorImVzdCBlbiBtb2RlIGF1dG9tYXRpcXVlLCBsJ2FsdGVybmF0aXZlIHZpc8OpZSBwYXIgbGVzIMOpbMOpbWVudHMgZHUgZ3JvdXBlIGVzdCAiCisiY2VsbGUgcXVpIHBvc3PDqGRlIGxhIHByaW9yaXTDqSBsYSBwbHVzIMOpbGV2w6llLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjEzMworIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiV2hlbiB1c2luZyB0aGUgSTwtLWNvbmZpZz4gb3B0aW9uLCBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IHdpbGwgbGlzdCBhbGwgIgorI3wgIm9mIHRoZSBjaG9pY2VzIGZvciB0aGUgbGluayBncm91cCBvZiB3aGljaCBnaXZlbiBJPG5hbWU+IGlzIHRoZSBtYXN0ZXIgIgorI3wgImFsdGVybmF0aXZlIG5hbWUuIFRoZSBjdXJyZW50IGNob2ljZSBpcyBtYXJrZWQgd2l0aCBhICcqJy4gIFlvdSB3aWxsIHRoZW4gIgorI3wgImJlIHByb21wdGVkIGZvciB5b3VyIGNob2ljZSByZWdhcmRpbmcgdGhpcyBsaW5rIGdyb3VwLiAgRGVwZW5kaW5nIG9uIHRoZSAiCisjfCAiY2hvaWNlIG1hZGUsIHRoZSBsaW5rIGdyb3VwIG1pZ2h0IG5vIGxvbmdlciBiZSBpbiBJPGF1dG8+IG1vZGUuIFlvdSB3aWxsICIKKyN8ICJuZWVkIHRvIHVzZSB0aGUgSTwtLWF1dG8+IG9wdGlvbiBpbiBvcmRlciB0byByZXR1cm4gdG8gdGhlIGF1dG9tYXRpYyBtb2RlICIKKyN8ICIob3IgeW91IGNhbiByZXJ1biBJPC0tY29uZmlnPiBhbmQgc2VsZWN0IHRoZSBlbnRyeSBtYXJrZWQgYXMgYXV0b21hdGljKS4iCittc2dpZCAiIgorIldoZW4gdXNpbmcgdGhlIEI8LS1jb25maWc+IG9wdGlvbiwgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiB3aWxsIGxpc3QgYWxsIG9mICIKKyJ0aGUgY2hvaWNlcyBmb3IgdGhlIGxpbmsgZ3JvdXAgb2Ygd2hpY2ggZ2l2ZW4gSTxuYW1lPiBpcyB0aGUgbWFzdGVyICIKKyJhbHRlcm5hdGl2ZSBuYW1lLiBUaGUgY3VycmVudCBjaG9pY2UgaXMgbWFya2VkIHdpdGggYSAnKicuICBZb3Ugd2lsbCB0aGVuIGJlICIKKyJwcm9tcHRlZCBmb3IgeW91ciBjaG9pY2UgcmVnYXJkaW5nIHRoaXMgbGluayBncm91cC4gIERlcGVuZGluZyBvbiB0aGUgY2hvaWNlICIKKyJtYWRlLCB0aGUgbGluayBncm91cCBtaWdodCBubyBsb25nZXIgYmUgaW4gSTxhdXRvPiBtb2RlLiBZb3Ugd2lsbCBuZWVkIHRvICIKKyJ1c2UgdGhlIEI8LS1hdXRvPiBvcHRpb24gaW4gb3JkZXIgdG8gcmV0dXJuIHRvIHRoZSBhdXRvbWF0aWMgbW9kZSAob3IgeW91ICIKKyJjYW4gcmVydW4gQjwtLWNvbmZpZz4gYW5kIHNlbGVjdCB0aGUgZW50cnkgbWFya2VkIGFzIGF1dG9tYXRpYykuIgorbXNnc3RyICIiCisiUXVhbmQgbCdvcHRpb24gSTwtLWNvbmZpZz4gZXN0IHV0aWxpc8OpZSwgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBhZmZpY2hlICIKKyJ0b3V0ZXMgbGVzIHBvc3NpYmlsaXTDqXMgZHUgZ3JvdXBlIHBvdXIgbGVxdWVsIEk8bm9tPiBlc3QgbGUgbGllbiBwcmluY2lwYWwuICIKKyJMZSBjaG9peCBhY3R1ZWwgZXN0IG5vdMOpIHBhciB1biDCq8KgKsKgwrsuIElsIHNlcmEgYWxvcnMgZGVtYW5kw6kgcXVlbCBjaG9peCBkb2l0ICIKKyLDqnRyZSBmYWl0IHBvdXIgY2UgZ3JvdXBlLiBTdWl2YW50IGxlIGNob2l4IGVmZmVjdHXDqSwgbGUgZ3JvdXBlIGRlIGxpZW5zIHBldXQgIgorIm5lIHBsdXMgw6p0cmUgZW4gbW9kZSBJPGF1dG8+LiBJbCB2b3VzIGZhdWRyYSB1dGlsaXNlciBsJ29wdGlvbiBJPC0tYXV0bz4gIgorInBvdXIgcmV2ZW5pciBhdSBtb2RlIGF1dG9tYXRpcXVlIChvdSAgcsOpdXRpbGlzZXIgSTwtLWNvbmZpZz4gZXQgY2hvaXNpciAiCisibCdlbnRyw6llIG1hcnF1w6llIGNvbW1lIGF1dG9tYXRpcXVlKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxMzcKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIklmIHlvdSB3YW50IHRvIGNvbmZpZ3VyZSBub24taW50ZXJhY3RpdmVseSB5b3UgY2FuIHVzZSB0aGUgSTwtLXNldD4gIgorI3wgIm9wdGlvbiBpbnN0ZWFkIChzZWUgYmVsb3cpLiIKK21zZ2lkICIiCisiSWYgeW91IHdhbnQgdG8gY29uZmlndXJlIG5vbi1pbnRlcmFjdGl2ZWx5IHlvdSBjYW4gdXNlIHRoZSBCPC0tc2V0PiBvcHRpb24gIgorImluc3RlYWQgKHNlZSBiZWxvdykuIgorbXNnc3RyICIiCisiU2kgdm91cyB2b3VsZXogY29uZmlndXJlciBkZSBtYW5pw6hyZSBub24gaW50ZXJhY3RpdmUsIHZvdXMgcG91dmV6IHV0aWxpc2VyICIKKyJsJ29wdGlvbiBJPC0tc2V0PiAodm95ZXogY2ktZGVzc291cykuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTQ4Cittc2dpZCAiIgorIkRpZmZlcmVudCBwYWNrYWdlcyBwcm92aWRpbmcgdGhlIHNhbWUgZmlsZSBuZWVkIHRvIGRvIHNvIEI8Y29vcGVyYXRpdmVseT4uICAiCisiSW4gb3RoZXIgd29yZHMsIHRoZSB1c2FnZSBvZiBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IGlzIEI8bWFuZGF0b3J5PiBmb3IgYWxsICIKKyJpbnZvbHZlZCBwYWNrYWdlcyBpbiBzdWNoIGNhc2UuIEl0IGlzIG5vdCBwb3NzaWJsZSB0byBvdmVycmlkZSBzb21lIGZpbGUgaW4gIgorImEgcGFja2FnZSB0aGF0IGRvZXMgbm90IGVtcGxveSB0aGUgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBtZWNoYW5pc20uIgorbXNnc3RyICIiCisiTGVzIGRpZmbDqXJlbnRzIHBhcXVldHMgcXVpIGZvdXJuaXNzZW50IHVuIG3Dqm1lIGZpY2hpZXIgZG9pdmVudCBsZSBmYWlyZSBlbiAiCisiQjxjb2xsYWJvcmFudD4uIEVuIGQnYXV0cmVzIHRlcm1lcywgbCd1dGlsaXNhdGlvbiBkZSBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+ICIKKyJlc3QgQjxvYmxpZ2F0b2lyZT4gcG91ciB0b3VzIGxlcyBwYXF1ZXRzIHF1aSBzb250IGRhbnMgY2UgY2FzIGV0IGlsIG4nZXN0ICIKKyJwYXMgcG9zc2libGUgZGUgcmVtcGxhY2VyIHVuIGZpY2hpZXIgZCd1biBwYXF1ZXQgcXVpIG4ndXRpbGlzZSBwYXMgbGUgIgorIm3DqWNhbmlzbWUgb2ZmZXJ0IHBhciBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+LiIKKworIy4gdHlwZTogU0gKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNDkKKyMsIG5vLXdyYXAKK21zZ2lkICJURVJNSU5PTE9HWSIKK21zZ3N0ciAiVEVSTUlOT0xPR0lFIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTU0Cittc2dpZCAiIgorIlNpbmNlIHRoZSBhY3Rpdml0aWVzIG9mIEI8dXBkYXRlLWFsdGVybmF0aXZlcz4gYXJlIHF1aXRlIGludm9sdmVkLCBzb21lICIKKyJzcGVjaWZpYyB0ZXJtcyB3aWxsIGhlbHAgdG8gZXhwbGFpbiBpdHMgb3BlcmF0aW9uLiIKK21zZ3N0ciAiIgorIkNvbW1lIGxlcyBvcMOpcmF0aW9ucyBkZSBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IHNvbnQgdHLDqHMgY29tcGxpcXXDqWVzLCB2b2ljaSAiCisicXVlbHF1ZXMgdGVybWVzIHF1aSBmYWNpbGl0ZXJvbnQgbCdleHBsaWNhdGlvbi4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTU0CisjLCBuby13cmFwCittc2dpZCAiZ2VuZXJpYyBuYW1lIChvciBhbHRlcm5hdGl2ZSBsaW5rKSIKK21zZ3N0ciAibm9tIGfDqW7DqXJpcXVlIChvdSBsaWVuIGFsdGVybmF0aWYpIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTYwCittc2dpZCAiIgorIkEgbmFtZSwgbGlrZSBJPC91c3IvYmluL2VkaXRvcj4sIHdoaWNoIHJlZmVycywgdmlhIHRoZSBhbHRlcm5hdGl2ZXMgc3lzdGVtLCAiCisidG8gb25lIG9mIGEgbnVtYmVyIG9mIGZpbGVzIG9mIHNpbWlsYXIgZnVuY3Rpb24uIgorbXNnc3RyICIiCisiQydlc3QgdW4gbm9tLCBwYXIgZXhlbXBsZSBJPC91c3IvYmluL2VkaXRvcj4sIHF1aSByZW52b2llLCDDoCB0cmF2ZXJzIGxlICIKKyJzeXN0w6htZSBkZXMgwqvCoGFsdGVybmF0aXZlc8KgwrssIMOgIGwndW4gZGVzIGZpY2hpZXJzIHF1aSByZW1wbGlzc2VudCBkZXMgIgorImZvbmN0aW9ucyBzaW1pbGFpcmVzLiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNjAKKyMsIG5vLXdyYXAKK21zZ2lkICJhbHRlcm5hdGl2ZSBuYW1lIgorbXNnc3RyICJub20gYWx0ZXJuYXRpZiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE2MworbXNnaWQgIlRoZSBuYW1lIG9mIGEgc3ltYm9saWMgbGluayBpbiB0aGUgYWx0ZXJuYXRpdmVzIGRpcmVjdG9yeS4iCittc2dzdHIgIk5vbSBkJ3VuIGxpZW4gc3ltYm9saXF1ZSBkYW5zIGxlIHLDqXBlcnRvaXJlIGRlcyBhbHRlcm5hdGl2ZXMuIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE2MworIywgbm8td3JhcAorbXNnaWQgImFsdGVybmF0aXZlIChvciBhbHRlcm5hdGl2ZSBwYXRoKSIKK21zZ3N0ciAiYWx0ZXJuYXRpdmUgKG91IGNoZW1pbiBhbHRlcm5hdGlmKSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE2NworbXNnaWQgIiIKKyJUaGUgbmFtZSBvZiBhIHNwZWNpZmljIGZpbGUgaW4gdGhlIGZpbGVzeXN0ZW0sIHdoaWNoIG1heSBiZSBtYWRlIGFjY2Vzc2libGUgIgorInZpYSBhIGdlbmVyaWMgbmFtZSB1c2luZyB0aGUgYWx0ZXJuYXRpdmVzIHN5c3RlbS4iCittc2dzdHIgIiIKKyJDJ2VzdCBsZSBub20gZCd1biBmaWNoaWVyIHBhcnRpY3VsaWVyIGRhbnMgbCdhcmJvcmVzY2VuY2XCoDsgaWwgcGV1dCDDqnRyZSAiCisiYWNjZXNzaWJsZSBhdmVjIHVuIG5vbSBnw6luw6lyaXF1ZXMgZ3LDomNlIGF1IHN5c3TDqG1lIGQnYWx0ZXJuYXRpdmVzLiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNjcKKyMsIG5vLXdyYXAKK21zZ2lkICJhbHRlcm5hdGl2ZXMgZGlyZWN0b3J5IgorbXNnc3RyICJyw6lwZXJ0b2lyZSBkZXMgYWx0ZXJuYXRpdmVzICIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE3MgorbXNnaWQgIkEgZGlyZWN0b3J5LCBieSBkZWZhdWx0IEk8L2V0Yy9hbHRlcm5hdGl2ZXM+LCBjb250YWluaW5nIHRoZSBzeW1saW5rcy4iCittc2dzdHIgIiIKKyJDJ2VzdCBsZSByw6lwZXJ0b2lyZSBxdWkgY29udGllbnQgbGVzIGxpZW5zIHN5bWJvbGlxdWVzwqA7IGlsIHMnYWdpdCBwYXIgIgorImTDqWZhdXQgZGUgSTwvZXRjL2FsdGVybmF0aXZlcy4+IgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE3MgorIywgbm8td3JhcAorbXNnaWQgImFkbWluaXN0cmF0aXZlIGRpcmVjdG9yeSIKK21zZ3N0ciAicsOpcGVydG9pcmUgYWRtaW5pc3RyYXRpZiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE3OQorbXNnaWQgIiIKKyJBIGRpcmVjdG9yeSwgYnkgZGVmYXVsdCBJPC92YXIvbGliL2Rwa2cvYWx0ZXJuYXRpdmVzPiwgY29udGFpbmluZyBCPHVwZGF0ZS0iCisiYWx0ZXJuYXRpdmVzPicgc3RhdGUgaW5mb3JtYXRpb24uIgorbXNnc3RyICIiCisiQydlc3QgbGUgcsOpcGVydG9pcmUgcXVpIGNvbnRpZW50IGRlcyByZW5zZWlnbmVtZW50cyBzdXIgbCfDqXRhdCBkZSBCPHVwZGF0ZS0iCisiYWx0ZXJuYXRpdmVzLj4gSWwgcydhZ2l0IHBhciBkw6lmYXV0IGRlIEk8L3Zhci9saWIvZHBrZy9hbHRlcm5hdGl2ZXMuPiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNzkKKyMsIG5vLXdyYXAKK21zZ2lkICJsaW5rIGdyb3VwIgorbXNnc3RyICJncm91cGUgZGUgbGllbnMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxODIKK21zZ2lkICJBIHNldCBvZiByZWxhdGVkIHN5bWxpbmtzLCBpbnRlbmRlZCB0byBiZSB1cGRhdGVkIGFzIGEgZ3JvdXAuIgorbXNnc3RyICIiCisiQydlc3QgdW4gZW5zZW1ibGUgZGUgbGllbnMgc3ltYm9saXF1ZXMgY29ycsOpbMOpcywgZGUgbWFuacOocmUgcXUnb24gcHVpc3NlIGxlcyAiCisibWV0dHJlIMOgIGpvdXIgZW4gdW5lIHNldWxlIGZvaXMuIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE4MgorIywgbm8td3JhcAorbXNnaWQgIm1hc3RlciBsaW5rIgorbXNnc3RyICJsaWVuIHByaW5jaXBhbCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE4NgorbXNnaWQgIiIKKyJUaGUgYWx0ZXJuYXRpdmUgbGluayBpbiBhIGxpbmsgZ3JvdXAgd2hpY2ggZGV0ZXJtaW5lcyBob3cgdGhlIG90aGVyIGxpbmtzIGluICIKKyJ0aGUgZ3JvdXAgYXJlIGNvbmZpZ3VyZWQuIgorbXNnc3RyICIiCisiRGFucyB1biBncm91cGUgZGUgbGllbnMsIGxlIGxpZW50IGFsdGVybmF0aWYgZXN0IGxlIGxpZW4gcXVpIGTDqXRlcm1pbmUgIgorImNvbW1lbnQgc29udCBjb25maWd1csOpcyBsZXMgYXV0cmVzIGxpZW5zIGR1IGdyb3VwZS4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTg2CisjLCBuby13cmFwCittc2dpZCAic2xhdmUgbGluayIKK21zZ3N0ciAibGllbiBzZWNvbmRhaXJlICjCq8Kgc2xhdmXCoMK7KSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE5MAorbXNnaWQgIiIKKyJBbiBhbHRlcm5hdGl2ZSBsaW5rIGluIGEgbGluayBncm91cCB3aGljaCBpcyBjb250cm9sbGVkIGJ5IHRoZSBzZXR0aW5nIG9mICIKKyJ0aGUgbWFzdGVyIGxpbmsuIgorbXNnc3RyICIiCisiVW4gbGllbiBhbHRlcm5hdGlmIGVzdCB1biBncm91cGUgZGUgbGllbnMgY29udHLDtGzDqXMgcGFyIGxlIHLDqWdsYWdlIGR1IGxpZW4gIgorInByaW5jaXBhbC4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTkwCisjLCBuby13cmFwCittc2dpZCAiYXV0b21hdGljIG1vZGUiCittc2dzdHIgIm1vZGUgYXV0b21hdGlxdWUiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxOTYKK21zZ2lkICIiCisiV2hlbiBhIGxpbmsgZ3JvdXAgaXMgaW4gYXV0b21hdGljIG1vZGUsIHRoZSBhbHRlcm5hdGl2ZXMgc3lzdGVtIGVuc3VyZXMgdGhhdCAiCisidGhlIGxpbmtzIGluIHRoZSBncm91cCBwb2ludCB0byB0aGUgaGlnaGVzdCBwcmlvcml0eSBhbHRlcm5hdGl2ZSBhcHByb3ByaWF0ZSAiCisiZm9yIHRoZSBncm91cC4iCittc2dzdHIgIiIKKyJRdWFuZCB1biBncm91cGUgZGUgbGllbnMgZXN0IGVuIG1vZGUgYXV0b21hdGlxdWUsIGxlIHN5c3TDqG1lIGRlcyAiCisiwqvCoGFsdGVybmF0aXZlc8KgwrsgYXNzdXJlIHF1ZSBsZXMgbGllbnMgZGFucyBsZSBncm91cGUgcG9pbnRlbnQgdmVycyAiCisibCdhbHRlcm5hdGl2ZSBwb3Nzw6lkYW50IGxhIHByaW9yaXTDqSBsYSBwbHVzIMOpbGV2w6llIGRhbnMgY2UgZ3JvdXBlLiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxOTYKKyMsIG5vLXdyYXAKK21zZ2lkICJtYW51YWwgbW9kZSIKK21zZ3N0ciAibW9kZSBtYW51ZWwgIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjAxCittc2dpZCAiIgorIldoZW4gYSBsaW5rIGdyb3VwIGlzIGluIG1hbnVhbCBtb2RlLCB0aGUgYWx0ZXJuYXRpdmVzIHN5c3RlbSB3aWxsIG5vdCBtYWtlICIKKyJhbnkgY2hhbmdlcyB0byB0aGUgc3lzdGVtIGFkbWluaXN0cmF0b3IncyBzZXR0aW5ncy4iCittc2dzdHIgIiIKKyJRdWFuZCB1biBncm91cGUgZGUgbGllbnMgZXN0IGVuIG1vZGUgbWFudWVsLCBsZSBzeXN0w6htZSBkZXMgwqvCoGFsdGVybmF0aXZlc8KgwrsgIgorIm5lIG1vZGlmaWUgcGFzIGxlIHBhcmFtw6l0cmFnZSBkZSBsJ2FkbWluaXN0cmF0ZXVyIHN5c3TDqG1lLiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyMDMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0taW5zdGFsbD4gSTxsaW5rIG5hbWUgcGF0aCBwcmlvcml0eT4gW0I8LS1zbGF2ZT4gSTxsaW5rIG5hbWUgcGF0aD5dLi4uIgorbXNnc3RyICJCPC0taW5zdGFsbD4gSTxsaWVuIG5vbSBjaGVtaW4gcHJpb3JpdMOpPiBbQjwtLXNsYXZlPiBJPGxpZW4gbm9tIGNoZW1pbj5dLi4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjIyCittc2dpZCAiIgorIkFkZCBhIGdyb3VwIG9mIGFsdGVybmF0aXZlcyB0byB0aGUgc3lzdGVtLiAgSTxsaW5rPiBpcyB0aGUgZ2VuZXJpYyBuYW1lIGZvciAiCisidGhlIG1hc3RlciBsaW5rLCBJPG5hbWU+IGlzIHRoZSBuYW1lIG9mIGl0cyBzeW1saW5rIGluIHRoZSBhbHRlcm5hdGl2ZXMgIgorImRpcmVjdG9yeSwgYW5kIEk8cGF0aD4gaXMgdGhlIGFsdGVybmF0aXZlIGJlaW5nIGludHJvZHVjZWQgZm9yIHRoZSBtYXN0ZXIgIgorImxpbmsuICBUaGUgYXJndW1lbnRzIGFmdGVyIEI8LS1zbGF2ZT4gYXJlIHRoZSBnZW5lcmljIG5hbWUsIHN5bWxpbmsgbmFtZSBpbiAiCisidGhlIGFsdGVybmF0aXZlcyBkaXJlY3RvcnkgYW5kIHRoZSBhbHRlcm5hdGl2ZSBwYXRoIGZvciBhIHNsYXZlIGxpbmsuICBaZXJvICIKKyJvciBtb3JlIEI8LS1zbGF2ZT4gb3B0aW9ucywgZWFjaCBmb2xsb3dlZCBieSB0aHJlZSBhcmd1bWVudHMsIG1heSBiZSAiCisic3BlY2lmaWVkLiBOb3RlIHRoYXQgdGhlIG1hc3RlciBhbHRlcm5hdGl2ZSBtdXN0IGV4aXN0IG9yIHRoZSBjYWxsIHdpbGwgIgorImZhaWwuIEhvd2V2ZXIgaWYgYSBzbGF2ZSBhbHRlcm5hdGl2ZSBkb2Vzbid0IGV4aXN0LCB0aGUgY29ycmVzcG9uZGluZyBzbGF2ZSAiCisiYWx0ZXJuYXRpdmUgbGluayB3aWxsIHNpbXBseSBub3QgYmUgaW5zdGFsbGVkIChhIHdhcm5pbmcgd2lsbCBzdGlsbCBiZSAiCisiZGlzcGxheWVkKS4gSWYgc29tZSByZWFsIGZpbGUgaXMgaW5zdGFsbGVkIHdoZXJlIGFuIGFsdGVybmF0aXZlIGxpbmsgaGFzIHRvICIKKyJiZSBpbnN0YWxsZWQsIGl0IGlzIGtlcHQgdW5sZXNzIEI8LS1mb3JjZT4gaXMgdXNlZC4iCittc2dzdHIgIiIKKyJBam91dGUgdW4gZ3JvdXBlIGQnYWx0ZXJuYXRpdmVzIGF1IHN5c3TDqG1lLiBJPGxpZW4+IGVzdCBsZSBub20gZ8OpbsOpcmlxdWUgZHUgIgorImxpZW4gcHJpbmNpcGFsLCBJPG5vbT4gZXN0IGxlIG5vbSBkZSBzb24gbGllbiBzeW1ib2xpcXVlLCBldCBJPGNoZW1pbj4gZXN0ICIKKyJsJ2FsdGVybmF0aXZlIHByw6lzZW50w6llIHBvdXIgbGUgbGllbiBwcmluY2lwYWwuIExlcyBwYXJhbcOodHJlcyBxdWkgc3VpdmVudCAiCisiQjwtLXNsYXZlPiBzb250IGxlIG5vbSBnw6luw6lyaXF1ZSwgbGUgbGllbiBzeW1ib2xpcXVlIGRhbnMgbGUgcsOpcGVydG9pcmUgZGVzICIKKyJhbHRlcm5hdGl2ZXMgZXQgbCdhbHRlcm5hdGl2ZSBwb3VyIHVuIGxpZW4gc2Vjb25kYWlyZS4gT24gcGV1dCBpbmRpcXVlciB6w6lybyAiCisib3UgcGx1c2lldXJzIG9wdGlvbnMgQjwtLXNsYXZlPiBjaGFjdW5lIHN1aXZpZSBwYXIgdHJvaXMgcGFyYW3DqHRyZXMuICIKKyJMJ2FsdGVybmF0aXZlIHByaW5jaXBhbGUgZG9pdCBleGlzdGVyLCBzaW5vbiBsYSBjb21tYW5kZSDDqWNob3VlcmEuICIKKyJDZXBlbmRhbnQsIHNpIHVuZSBhbHRlcm5hdGl2ZSBzZWNvbmRhaXJlIG4nZXhpc3RlIHBhcywgbGUgbGllbiBzZWNvbmRhaXJlIG5lICIKKyJzZXJhIHNpbXBsZW1lbnQgcGFzIGluc3RhbGzDqSAobWFpcyB1biBhdmVydGlzc2VtZW50IHNlcmEgYWZmaWNow6kpLiBTaSB1biAiCisiZmljaGllciBleGlzdGUgw6AgbCdlbXBsYWNlbWVudCBvw7kgbCdhbHRlcm5hdGl2ZSBkb2l0IMOqdHJlIGluc3RhbGzDqWUsIGlsIGVzdCAiCisiY29uc2VydsOpIHNhdWYgc2kgQjwtLWZvcmNlPiBlc3QgdXRpbGlzw6kuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjMzCittc2dpZCAiIgorIklmIHRoZSBhbHRlcm5hdGl2ZSBuYW1lIHNwZWNpZmllZCBleGlzdHMgYWxyZWFkeSBpbiB0aGUgYWx0ZXJuYXRpdmVzICIKKyJzeXN0ZW0ncyByZWNvcmRzLCB0aGUgaW5mb3JtYXRpb24gc3VwcGxpZWQgd2lsbCBiZSBhZGRlZCBhcyBhIG5ldyBzZXQgb2YgIgorImFsdGVybmF0aXZlcyBmb3IgdGhlIGdyb3VwLiAgT3RoZXJ3aXNlLCBhIG5ldyBncm91cCwgc2V0IHRvIGF1dG9tYXRpYyBtb2RlLCAiCisid2lsbCBiZSBhZGRlZCB3aXRoIHRoaXMgaW5mb3JtYXRpb24uICBJZiB0aGUgZ3JvdXAgaXMgaW4gYXV0b21hdGljIG1vZGUsIGFuZCAiCisidGhlIG5ld2x5IGFkZGVkIGFsdGVybmF0aXZlcycgcHJpb3JpdHkgaXMgaGlnaGVyIHRoYW4gYW55IG90aGVyIGluc3RhbGxlZCAiCisiYWx0ZXJuYXRpdmVzIGZvciB0aGlzIGdyb3VwLCB0aGUgc3ltbGlua3Mgd2lsbCBiZSB1cGRhdGVkIHRvIHBvaW50IHRvIHRoZSAiCisibmV3bHkgYWRkZWQgYWx0ZXJuYXRpdmVzLiIKK21zZ3N0ciAiIgorIlF1YW5kIGxlIGxpZW4gcHJpbmNpcGFsIHNww6ljaWZpw6kgZXhpc3RlIGTDqWrDoCBkYW5zIGxlcyBlbnJlZ2lzdHJlbWVudHMgZHUgIgorInN5c3TDqG1lIGRlcyDCq8KgYWx0ZXJuYXRpdmVzwqDCuywgbGVzIHJlbnNlaWduZW1lbnRzIGZvdXJuaXMgc29udCBham91dMOpcyBkYW5zICIKKyJ1biBub3V2ZWwgZW5zZW1ibGUgZCdhbHRlcm5hdGl2ZXMgcG91ciBsZSBncm91cGUuIFNpbm9uLCB1biBub3V2ZWF1IGdyb3VwZSAiCisiY29udGVuYW50IGNlcyBpbmZvcm1hdGlvbnMgZXN0IGFqb3V0w6kgZXQgbWlzIGVuIG1vZGUgYXV0b21hdGlxdWUuIFF1YW5kIHVuICIKKyJncm91cGUgZXN0IGVuIG1vZGUgYXV0b21hdGlxdWUsIGV0IHF1ZSBsYSBwcmlvcml0w6kgZGVzIGFsdGVybmF0aXZlcyAiCisibm91dmVsbGVtZW50IGFqb3V0w6llcyBlc3Qgc3Vww6lyaWV1cmUgw6AgY2VsbGUgZGUgdG91dGVzIGxlcyBhbHRlcm5hdGl2ZXMgIgorImluc3RhbGzDqWVzIGRhbnMgY2UgZ3JvdXBlLCBsZXMgbGllbnMgc3ltYm9saXF1ZXMgc29udCBtaXMgw6Agam91ciBldCBwb2ludGVudCAiCisidmVycyBsZXMgYWx0ZXJuYXRpdmVzIG5vdXZlbGxlbWVudCBham91dMOpZXMuIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjIzMworIywgbm8td3JhcAorbXNnaWQgIkI8LS1zZXQ+IEk8bmFtZSBwYXRoPiIKK21zZ3N0ciAiQjwtLXNldD4gSTxub20gY2hlbWluPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjI0MgorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiU2V0IHRoZSBwcm9ncmFtIEk8cGF0aD4gYXMgYWx0ZXJuYXRpdmUgZm9yIEk8bmFtZS4+IFRoaXMgaXMgZXF1aXZhbGVudCB0byAiCisjfCAiSTwtLWNvbmZpZz4gYnV0IGlzIG5vbi1pbnRlcmFjdGl2ZSBhbmQgdGh1cyBzY3JpcHRhYmxlLiIKK21zZ2lkICIiCisiU2V0IHRoZSBwcm9ncmFtIEk8cGF0aD4gYXMgYWx0ZXJuYXRpdmUgZm9yIEk8bmFtZS4+IFRoaXMgaXMgZXF1aXZhbGVudCB0byAiCisiQjwtLWNvbmZpZz4gYnV0IGlzIG5vbi1pbnRlcmFjdGl2ZSBhbmQgdGh1cyBzY3JpcHRhYmxlLiIKK21zZ3N0ciAiIgorIkFqb3V0ZSBsZSBwcm9ncmFtbWUgSTxjaGVtaW4+IGNvbW1lIGFsdGVybmF0aXZlIHBvdXIgSTxub20+LiBDJ2VzdCAiCisiw6lxdWl2YWxlbnQgw6AgSTwtLWNvbmZpZz4gbWFpcyBjZSBuJ2VzdCBwYXMgaW50ZXJhY3RpZiBldCBvbiBwZXV0IGRvbmMgw6ljcmlyZSAiCisidW4gc2NyaXB0LiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyNDIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tcmVtb3ZlPiBJPG5hbWUgcGF0aD4iCittc2dzdHIgIkI8LS1yZW1vdmU+IEk8bm9tIGNoZW1pbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyNjMKK21zZ2lkICIiCisiUmVtb3ZlIGFuIGFsdGVybmF0aXZlIGFuZCBhbGwgb2YgaXRzIGFzc29jaWF0ZWQgc2xhdmUgbGlua3MuICBJPG5hbWU+IGlzIGEgIgorIm5hbWUgaW4gdGhlIGFsdGVybmF0aXZlcyBkaXJlY3RvcnksIGFuZCBJPHBhdGg+IGlzIGFuIGFic29sdXRlIGZpbGVuYW1lIHRvICIKKyJ3aGljaCBJPG5hbWU+IGNvdWxkIGJlIGxpbmtlZC4gSWYgSTxuYW1lPiBpcyBpbmRlZWQgbGlua2VkIHRvIEk8cGF0aD4sICIKKyJJPG5hbWU+IHdpbGwgYmUgdXBkYXRlZCB0byBwb2ludCB0byBhbm90aGVyIGFwcHJvcHJpYXRlIGFsdGVybmF0aXZlIChhbmQgdGhlICIKKyJncm91cCBpcyBwdXQgYmFjayBpbiBhdXRvbWF0aWMgbW9kZSksIG9yIHJlbW92ZWQgaWYgdGhlcmUgaXMgbm8gc3VjaCAiCisiYWx0ZXJuYXRpdmUgbGVmdC4gIEFzc29jaWF0ZWQgc2xhdmUgbGlua3Mgd2lsbCBiZSB1cGRhdGVkIG9yIHJlbW92ZWQsICIKKyJjb3JyZXNwb25kaW5nbHkuICBJZiB0aGUgbGluayBpcyBub3QgY3VycmVudGx5IHBvaW50aW5nIHRvIEk8cGF0aD4sIG5vIGxpbmtzICIKKyJhcmUgY2hhbmdlZDsgb25seSB0aGUgaW5mb3JtYXRpb24gYWJvdXQgdGhlIGFsdGVybmF0aXZlIGlzIHJlbW92ZWQuIgorbXNnc3RyICIiCisiRW5sw6h2ZSB1bmUgYWx0ZXJuYXRpdmUgZXQgdG91cyBzZXMgbGllbnMgc2Vjb25kYWlyZXMgYXNzb2Npw6lzLiBJPG5vbT4gZXN0IHVuICIKKyJub20gZGFucyBsZSByw6lwZXJ0b2lyZSBkZXMgwqvCoGFsdGVybmF0aXZlc8KgwrssIGV0IEk8Y2hlbWluPiBlc3QgdW4gbm9tIGRlICIKKyJmaWNoaWVyIGF1cXVlbCBJPG5vbT4gcGV1dCDDqnRyZSBsacOpLiBRdWFuZCBJPG5vbT4gZXN0IGVuIGVmZmV0IGxpw6kgw6AgIgorIkk8Y2hlbWluPiwgSTxub20+IGVzdCBtaXMgw6Agam91ciBldCBwb2ludGUgdmVycyB1bmUgYXV0cmUgYWx0ZXJuYXRpdmUgIgorImFkw6lxdWF0ZSBvdSBiaWVuIGVzdCBlbmxldsOpIHMnaWwgbid5IGVuIGEgcGFzIGQnYXV0cmUuIERlIG3Dqm1lLCBsZXMgbGllbnMgIgorInNlY29uZGFpcmVzIGFzc29jacOpcyBzb250IG1pcyDDoCBqb3VyIG91IGVubGV2w6lzLiBRdWFuZCBsZSBsaWVuIG5lIHBvaW50ZSBwYXMgIgorImTDqWrDoCBzdXIgSTxjaGVtaW4+LCBhdWN1biBsaWVuIG4nZXN0IG1vZGlmacOpwqA7IHNldWxlcyBsZXMgaW5mb3JtYXRpb25zIHN1ciAiCisibCdhbHRlcm5hdGl2ZSBzb250IHN1cHByaW3DqWVzLiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyNjMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tcmVtb3ZlLWFsbD4gSTxuYW1lPiIKK21zZ3N0ciAiQjwtLXJlbW92ZS1hbGw+IEk8bm9tPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjI2OAorbXNnaWQgIiIKKyJSZW1vdmUgYWxsIGFsdGVybmF0aXZlcyBhbmQgYWxsIG9mIHRoZWlyIGFzc29jaWF0ZWQgc2xhdmUgbGlua3MuICBJPG5hbWU+IGlzICIKKyJhIG5hbWUgaW4gdGhlIGFsdGVybmF0aXZlcyBkaXJlY3RvcnkuIgorbXNnc3RyICIiCisiU3VwcHJpbWUgdG91dGVzIGxlcyBhbHRlcm5hdGl2ZXMgZXQgdG91cyBsZXMgbGllbnMgc2Vjb25kYWlyZXMgYXNzb2Npw6lzLiAiCisiSTxub20+IGVzdCB1biBub20gZGFucyBsZSByw6lwZXJ0b2lyZSBkZXMgYWx0ZXJuYXRpdmVzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjI3NQorbXNnaWQgIiIKKyJDYWxsIEI8LS1jb25maWc+IG9uIGFsbCBhbHRlcm5hdGl2ZXMuIEl0IGNhbiBiZSB1c2VmdWxseSBjb21iaW5lZCB3aXRoIEI8LS0iCisic2tpcC1hdXRvPiB0byByZXZpZXcgYW5kIGNvbmZpZ3VyZSBhbGwgYWx0ZXJuYXRpdmVzIHdoaWNoIGFyZSBub3QgY29uZmlndXJlZCAiCisiaW4gYXV0b21hdGljIG1vZGUuIEJyb2tlbiBhbHRlcm5hdGl2ZXMgYXJlIGFsc28gZGlzcGxheWVkLiAgVGh1cyBhIHNpbXBsZSAiCisid2F5IHRvIGZpeCBhbGwgYnJva2VuIGFsdGVybmF0aXZlcyBpcyB0byBjYWxsIEI8eWVzIFxcW2FxXVxcW2FxXSB8IHVwZGF0ZS0iCisiYWx0ZXJuYXRpdmVzIC0tZm9yY2UgLS1hbGw+LiIKK21zZ3N0ciAiIgorIlV0aWxpc2UgQjwtLWNhbGw+IHN1ciB0b3V0ZXMgbGVzIGFsdGVybmF0aXZlcy4gQ2V0dGUgb3B0aW9uIHBldXQgw6p0cmUgIgorImNvbWJpbsOpZSBhdmVjIEI8LS1za2lwLWF1dG8+IHBvdXIgcmV2b2lyIGV0IGNvbmZpZ3VyZXIgdG91dGVzIGxlcyAiCisiYWx0ZXJuYXRpdmVzIHF1aSBuZSBzb250IHBhcyBlbiBtb2RlIGF1dG9tYXRpcXVlLiBMZXMgYWx0ZXJuYXRpdmVzIGVycm9uw6llcyAiCisic29udCBhdXNzaSBhZmZpY2jDqWVzLiBBaW5zaSwgdW5lIG3DqXRob2RlIHNpbXBsZSBwb3VyIGNvcnJpZ2VyIGxlcyAiCisiYWx0ZXJuYXRpdmVzIGNhc3PDqWVzIGVzdCBkJ3V0aWxpc2VyIEI8eWVzIFxcW2FxXVxcW2FxXSB8IHVwZGF0ZS1hbHRlcm5hdGl2ZXMgIgorIi0tZm9yY2UgLS1hbGw+LiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyNzUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tYXV0bz4gSTxuYW1lPiIKK21zZ3N0ciAiQjwtLWF1dG8+IEk8bm9tPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjI4MgorbXNnaWQgIiIKKyJTd2l0Y2ggdGhlIGxpbmsgZ3JvdXAgYmVoaW5kIHRoZSBhbHRlcm5hdGl2ZSBmb3IgSTxuYW1lPiB0byBhdXRvbWF0aWMgbW9kZS4gICIKKyJJbiB0aGUgcHJvY2VzcywgdGhlIG1hc3RlciBzeW1saW5rIGFuZCBpdHMgc2xhdmVzIGFyZSB1cGRhdGVkIHRvIHBvaW50IHRvICIKKyJ0aGUgaGlnaGVzdCBwcmlvcml0eSBpbnN0YWxsZWQgYWx0ZXJuYXRpdmVzLiIKK21zZ3N0ciAiIgorIlBhc3NlIGxlIGxpZW4gc3ltYm9saXF1ZSBwcmluY2lwYWwgSTxub20+IGVuIG1vZGUgYXV0b21hdGlxdWUuIEVuIG3Dqm1lICIKKyJ0ZW1wcywgbGUgbGllbiBzeW1ib2xpcXVlIHByaW5jaXBhbCBldCBzZXMgbGllbnMgc2Vjb25kYWlyZXMgc29udCBtaXMgw6Agam91ciAiCisiZXQgcG9pbnRlbnQgdmVycyBsZXMgYWx0ZXJuYXRpdmVzIGF2ZWMgbGVzIHByaW9yaXTDqXMgbGVzIHBsdXMgw6lsZXbDqWVzLiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyODIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tZGlzcGxheT4gSTxuYW1lPiIKK21zZ3N0ciAiQjwtLWRpc3BsYXk+IEk8bm9tPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjI5MQorbXNnaWQgIiIKKyJEaXNwbGF5IGluZm9ybWF0aW9uIGFib3V0IHRoZSBsaW5rIGdyb3VwLiAgSW5mb3JtYXRpb24gZGlzcGxheWVkIGluY2x1ZGVzICIKKyJ0aGUgZ3JvdXAncyBtb2RlIChhdXRvIG9yIG1hbnVhbCksIHdoaWNoIGFsdGVybmF0aXZlIHRoZSBtYXN0ZXIgbGluayAiCisiY3VycmVudGx5IHBvaW50cyB0bywgd2hhdCBvdGhlciBhbHRlcm5hdGl2ZXMgYXJlIGF2YWlsYWJsZSAoYW5kIHRoZWlyICIKKyJjb3JyZXNwb25kaW5nIHNsYXZlIGFsdGVybmF0aXZlcyksIGFuZCB0aGUgaGlnaGVzdCBwcmlvcml0eSBhbHRlcm5hdGl2ZSAiCisiY3VycmVudGx5IGluc3RhbGxlZC4iCittc2dzdHIgIiIKKyJBZmZpY2hlIGRlcyByZW5zZWlnbmVtZW50cyBzdXIgbGUgZ3JvdXBlIGRlIGxpZW5zLiBMJ2luZm9ybWF0aW9uIGFmZmljaMOpZSAiCisiY29tcHJlbmQgbGUgbW9kZSBkdSBncm91cGUgKGF1dG8gb3UgbWFudWVsKSwgdmVycyBxdWVsbGUgYWx0ZXJuYXRpdmUgbGUgbGllbiAiCisic3ltYm9saXF1ZSBwb2ludGUgYWN0dWVsbGVtZW50LCBxdWVsbGVzIGF1dHJlcyBhbHRlcm5hdGl2ZXMgc29udCBkaXNwb25pYmxlcyAiCisiKGV0IGxlcyBsaWVucyBzZWNvbmRhaXJlcyBhc3NvY2nDqXMpLCBldCBsJ2FsdGVybmF0aXZlIGFjdHVlbGxlbWVudCBpbnN0YWxsw6llICIKKyJxdWkgcG9zc8OoZGUgbGEgcHJpb3JpdMOpIGxhIHBsdXMgw6lsZXbDqWUuIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjI5MQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1nZXQtc2VsZWN0aW9ucz4iCittc2dzdHIgIkI8LS1nZXQtc2VsZWN0aW9ucz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyOTkKK21zZ2lkICIiCisiTGlzdCBhbGwgbWFzdGVyIGFsdGVybmF0aXZlIG5hbWVzICh0aG9zZSBjb250cm9sbGluZyBhIGxpbmsgZ3JvdXApICBhbmQgIgorInRoZWlyIHN0YXR1cy4gRWFjaCBsaW5lIGNvbnRhaW5zIHVwIHRvIDMgZmllbGRzIChzZXBhcmF0ZWQgYnkgb25lIG9yIG1vcmUgIgorInNwYWNlcykuIFRoZSBmaXJzdCBmaWVsZCBpcyB0aGUgYWx0ZXJuYXRpdmUgbmFtZSwgdGhlIHNlY29uZCBvbmUgaXMgdGhlICIKKyJzdGF0dXMgKGVpdGhlciBcImF1dG9cIiBvciBcIm1hbnVhbFwiKSwgYW5kIHRoZSBsYXN0IG9uZSBjb250YWlucyB0aGUgIgorImN1cnJlbnQgY2hvaWNlIGluIHRoZSBhbHRlcm5hdGl2ZSAoYmV3YXJlOiBpdCdzIGEgZmlsZW5hbWUgYW5kIHRodXMgbWlnaHQgIgorImNvbnRhaW4gc3BhY2VzKS4iCittc2dzdHIgIiIKKyJBZmZpY2hlIHRvdXMgbGVzIG5vbXMgcHJpbmNpcGF1eCBkJ2FsdGVybmF0aXZlcyAoY2V1eCBxdWkgY29udHLDtGxlbnQgdW4gIgorImdyb3VwZSBkZSBsaWVucykgYWluc2kgcXVlIGxldXIgw6l0YXQuIENoYXF1ZSBsaWduZSBjb21wb3J0ZSBqdXNxdSfDoCB0cm9pcyAiCisiY2hhbXBzIChzw6lwYXLDqXMgcGFyIHVuIG91IHBsdXNpZXVycyBlc3BhY2VzKS4gTGUgcHJlbWllciBlc3QgbGUgbm9tIGRlICIKKyJsJ2FsdGVybmF0aXZlLCBsZSBzZWNvbmQgZXN0IHNvbiDDqXRhdCAowqvCoGF1dG/CoMK7IG91IMKrwqBtYW51YWzCoMK7KSBldCBsZSBkZXJuaWVyICIKKyJtb250cmUgbGUgY2hvaXggYWN0dWVsIHBvdXIgbCdhbHRlcm5hdGl2ZSAoaWwgcydhZ2l0IGQndW4gbm9tIGRlIGZpY2hpZXIsICIKKyJxdWkgcGV1dCBjb250ZW5pciBkZXMgZXNwYWNlcykuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzA0Cittc2dpZCAiIgorIlJlYWQgY29uZmlndXJhdGlvbiBvZiBhbHRlcm5hdGl2ZXMgb24gc3RhbmRhcmQgaW5wdXQgaW4gdGhlIGZvcm1hdCBnZW5lcmF0ZWQgIgorImJ5IEI8dXBkYXRlLWFsdGVybmF0aXZlcyAtLWdldC1zZWxlY3Rpb25zPiBhbmQgcmVjb25maWd1cmUgdGhlbSBhY2NvcmRpbmdseS4iCittc2dzdHIgIiIKKyJMaXQgbGEgY29uZmlndXJhdGlvbiBkZXMgYWx0ZXJuYXRpdmVzIHN1ciBsJ2VudHLDqWUgc3RhbmRhcmQsIGRhbnMgbGUgZm9ybWF0ICIKKyJ1dGlsaXPDqSBwYXIgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzIC0tZ2V0LXNlbGVjdGlvbnM+IGV0IGxlcyBjb25maWd1cmUgZW4gIgorImNvbnPDqXF1ZW5jZS4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzA0CisjLCBuby13cmFwCittc2dpZCAiQjwtLXF1ZXJ5PiBJPG5hbWU+IgorbXNnc3RyICJCPC0tcXVlcnk+IEk8bm9tPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjMwOQorbXNnaWQgIiIKKyJEaXNwbGF5IGluZm9ybWF0aW9uIGFib3V0IHRoZSBsaW5rIGdyb3VwIGxpa2UgLS1kaXNwbGF5IGRvZXMsIGJ1dCBpbiBhICIKKyJtYWNoaW5lIHBhcnNlYWJsZSB3YXkgKHNlZSBzZWN0aW9uIEI8UVVFUlkgRk9STUFUPiBiZWxvdykuIgorbXNnc3RyICIiCisiQWZmaWNoZSBkZXMgaW5mb3JtYXRpb25zIHN1ciBsZSBncm91cGUgZGUgbGllbnMgZGUgbWFuacOocmUgYW5hbG9ndWUgw6AgLS0iCisiZGlzcGxheSwgbWFpcyBzb3VzIHVuZSBmb3JtZSBxdWkgcGV1dCDDqnRyZSBhbmFseXPDqWUgYXV0b21hdGlxdWVtZW50ICh2b2lyIGxhICIKKyJzZWN0aW9uIEI8Rk9STUFUIERFIFJFUVXDilRFPiBjaS1kZXNzb3VzKS4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzA5CisjLCBuby13cmFwCittc2dpZCAiQjwtLWxpc3Q+IEk8bmFtZT4iCittc2dzdHIgIkI8LS1saXN0PiBJPG5vbT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMTIKK21zZ2lkICJEaXNwbGF5IGFsbCB0YXJnZXRzIG9mIHRoZSBsaW5rIGdyb3VwLiIKK21zZ3N0ciAiQWZmaWNoZSB0b3V0ZXMgbGVzIGNpYmxlcyBkdSBncm91cGUgZGUgbGllbnMuIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjMxMgorIywgbm8td3JhcAorbXNnaWQgIkI8LS1jb25maWc+IEk8bmFtZT4iCittc2dzdHIgIkI8LS1jb25maWc+IEk8bm9tPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjMxNgorbXNnaWQgIiIKKyJTaG93IGF2YWlsYWJsZSBhbHRlcm5hdGl2ZXMgZm9yIGEgbGluayBncm91cCBhbmQgYWxsb3cgdGhlIHVzZXIgdG8gIgorImludGVyYWN0aXZlbHkgc2VsZWN0IHdoaWNoIG9uZSB0byB1c2UuIFRoZSBsaW5rIGdyb3VwIGlzIHVwZGF0ZWQuIgorbXNnc3RyICIiCisiQWZmaWNoZSBsZXMgYWx0ZXJuYXRpdmVzIGRpc3BvbmlibGVzIHBvdXIgdW4gZ3JvdXBlIGRlIGxpZW5zIGV0IHBlcm1ldGRlICIKKyJjaG9pc2lyIGludGVyYWN0aXZlbWVudCBsYXF1ZWxsZSBkb2l0IMOqdHJlIHV0aWxpc8OpZS4gTGUgZ3JvdXBlIGRlIGxpZW5zIGVzdCAiCisibWlzIMOgIGpvdXIuIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjMyNAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1hbHRkaXI+STwgZGlyZWN0b3J5PiIKK21zZ3N0ciAiQjwtLWFsdGRpcj5JPCByw6lwZXJ0b2lyZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMjgKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRoZSBhbHRlcm5hdGl2ZXMgZGlyZWN0b3J5LCB3aGVuIHRoaXMgaXMgdG8gYmUgZGlmZmVyZW50IGZyb20gdGhlICIKKyJkZWZhdWx0LiIKK21zZ3N0ciAiIgorIkRvbm5lIGxlIHLDqXBlcnRvaXJlIGRlcyBhbHRlcm5hdGl2ZXMsIHF1YW5kIGlsIGVzdCBkaWZmw6lyZW50IGRlIGNlbHVpIHBhciAiCisiZMOpZmF1dC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMzIKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRoZSBhZG1pbmlzdHJhdGl2ZSBkaXJlY3RvcnksIHdoZW4gdGhpcyBpcyB0byBiZSBkaWZmZXJlbnQgZnJvbSAiCisidGhlIGRlZmF1bHQuIgorbXNnc3RyICIiCisiRG9ubmUgbGUgcsOpcGVydG9pcmUgYWRtaW5pc3RyYXRpZiwgcXVhbmQgaWwgZXN0IGRpZmbDqXJlbnQgZGUgY2VsdWkgcGFyICIKKyJkw6lmYXV0LiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMzIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tbG9nPkk8IGZpbGU+IgorbXNnc3RyICJCPC0tbG9nPkk8IGZpY2hpZXI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzM2Cittc2dpZCAiIgorIlNwZWNpZmllcyB0aGUgbG9nIGZpbGUsIHdoZW4gdGhpcyBpcyB0byBiZSBkaWZmZXJlbnQgZnJvbSB0aGUgZGVmYXVsdCAoL3Zhci8iCisibG9nL2FsdGVybmF0aXZlcy5sb2cpLiIKK21zZ3N0ciAiIgorIkluZGlxdWUgbGUgZmljaGllciBqb3VybmFsLCBwb3VyIHV0aWxpc2VyIHVuIGZpY2hpZXIgZGlmZsOpcmVudCBkdSBmaWNoaWVyICIKKyJwYXIgZMOpZmF1dCAoL3Zhci9sb2cvYWx0ZXJuYXRpdmVzLmxvZykuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzQwCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJMZXQgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiByZXBsYWNlIGFueSByZWFsIGZpbGUgdGhhdCBpcyBpbnN0YWxsZWQgd2hlcmUgIgorI3wgImFuIGFsdGVybmF0aXZlIGxpbmsgaGFzIHRvIGJlIGluc3RhbGxlZC4iCittc2dpZCAiIgorIkxldCBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IHJlcGxhY2Ugb3IgZHJvcCBhbnkgcmVhbCBmaWxlIHRoYXQgaXMgaW5zdGFsbGVkICIKKyJ3aGVyZSBhbiBhbHRlcm5hdGl2ZSBsaW5rIGhhcyB0byBiZSBpbnN0YWxsZWQgb3IgcmVtb3ZlZC4iCittc2dzdHIgIiIKKyJBdXRvcmlzZSBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IMOgIHJlbXBsYWNlciB0b3V0IGZpY2hpZXIgaW5zdGFsbMOpIMOgIGxhIHBsYWNlICIKKyJkJ3VuIGxpZW4gZCdhbHRlcm5hdGl2ZSBxdWkgZG9pdCDDqnRyZSBjcsOpw6kuIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM0MAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1za2lwLWF1dG8+IgorbXNnc3RyICJCPC0tc2tpcC1hdXRvPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM0NQorbXNnaWQgIiIKKyJTa2lwIGNvbmZpZ3VyYXRpb24gcHJvbXB0IGZvciBhbHRlcm5hdGl2ZXMgd2hpY2ggYXJlIHByb3Blcmx5IGNvbmZpZ3VyZWQgaW4gIgorImF1dG9tYXRpYyBtb2RlLiBUaGlzIG9wdGlvbiBpcyBvbmx5IHJlbGV2YW50IHdpdGggQjwtLWNvbmZpZz4gb3IgQjwtLWFsbD4uIgorbXNnc3RyICIiCisiUGFzc2UgbCdpbnZpdGUgZGUgY29uZmlndXJhdGlvbiBwb3VyIGxlcyBhbHRlcm5hdGl2ZXMgcXVpIHNvbnQgY29ycmVjdGVtZW50ICIKKyJjb25maWd1csOpZXMgZW4gbW9kZSBhdXRvbWF0aXF1ZS4gQ2V0dGUgb3B0aW9uIG4nZXN0IHBlcnRpbmVudGUgcXUnYXZlYyBCPC0tIgorImNvbmZpZz4gb3UgQjwtLWFsbD4uIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM0NQorIywgbm8td3JhcAorbXNnaWQgIkI8LS12ZXJib3NlPiIKK21zZ3N0ciAiQjwtLXZlcmJvc2U+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzUwCittc2dpZCAiR2VuZXJhdGUgbW9yZSBjb21tZW50cyBhYm91dCB3aGF0IEI8dXBkYXRlLWFsdGVybmF0aXZlcz4gaXMgZG9pbmcuIgorbXNnc3RyICJwcm9kdWl0IHBsdXMgZGUgY29tbWVudGFpcmVzIHN1ciBjZSBxdWUgZmFpdCBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM1MworbXNnaWQgIkRvbid0IGdlbmVyYXRlIGFueSBjb21tZW50cyB1bmxlc3MgZXJyb3JzIG9jY3VyLiIKK21zZ3N0ciAiTmUgY3LDqWUgcGFzIGRlIGNvbW1lbnRhaXJlIMOgIG1vaW5zIHF1J3VuZSBlcnJldXIgbmUgc3Vydmllbm5lLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM1OQorbXNnaWQgIiIKKyJJZiBzZXQgYW5kIHRoZSBCPC0tYWRtaW5kaXI+IG9wdGlvbiBoYXMgbm90IGJlZW4gc3BlY2lmaWVkLCBpdCB3aWxsIGJlIHVzZWQgIgorImFzIHRoZSBiYXNlIGFkbWluaXN0cmF0aXZlIGRpcmVjdG9yeS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozNjEKKyMsIG5vLXdyYXAKK21zZ2lkICJJPC9ldGMvYWx0ZXJuYXRpdmVzLz4iCittc2dzdHIgIkk8L2V0Yy9hbHRlcm5hdGl2ZXMvPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM2NworbXNnaWQgIiIKKyJUaGUgZGVmYXVsdCBhbHRlcm5hdGl2ZXMgZGlyZWN0b3J5LiAgQ2FuIGJlIG92ZXJyaWRkZW4gYnkgdGhlIEI8LS1hbHRkaXI+ICIKKyJvcHRpb24uIgorbXNnc3RyICIiCisiTGUgcsOpcGVydG9pcmUgZGVzIMKrwqBhbHRlcm5hdGl2ZXPCoMK7IHBhciBkw6lmYXV0LiBQZXV0IMOqdHJlIHJlbXBsYWPDqSBhdmVjICIKKyJsJ29wdGlvbiBCPC0tYWx0ZGlyPi4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzY3CisjLCBuby13cmFwCittc2dpZCAiSTwvdmFyL2xpYi9kcGtnL2FsdGVybmF0aXZlcy8+IgorbXNnc3RyICJJPC92YXIvbGliL2Rwa2cvYWx0ZXJuYXRpdmVzLz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozNzMKK21zZ2lkICIiCisiVGhlIGRlZmF1bHQgYWRtaW5pc3RyYXRpb24gZGlyZWN0b3J5LiAgQ2FuIGJlIG92ZXJyaWRkZW4gYnkgdGhlIEI8LS0iCisiYWRtaW5kaXI+IG9wdGlvbi4iCittc2dzdHIgIiIKKyJMZSByw6lwZXJ0b2lyZSBhZG1pbmlzdHJhdGlmIHBhciBkw6lmYXV0LiBQZXV0IMOqdHJlIHJlbXBsYWPDqSBhdmVjIGwnb3B0aW9uIEI8LS0iCisiYWRtaW5kaXI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6Mzc4Cittc2dpZCAiVGhlIHJlcXVlc3RlZCBhY3Rpb24gd2FzIHN1Y2Nlc3NmdWxseSBwZXJmb3JtZWQuIgorbXNnc3RyICJMJ2FjdGlvbiBkZW1hbmTDqWUgcydlc3QgY29ycmVjdGVtZW50IGTDqXJvdWzDqWUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzgyCittc2dpZCAiIgorIlByb2JsZW1zIHdlcmUgZW5jb3VudGVyZWQgd2hpbHN0IHBhcnNpbmcgdGhlIGNvbW1hbmQgbGluZSBvciBwZXJmb3JtaW5nIHRoZSAiCisiYWN0aW9uLiIKK21zZ3N0ciAiIgorIkRlcyBwcm9ibMOobWVzIHNvbnQgc3VydmVudXMgbG9ycyBkZSBsJ2FuYWx5c2UgZGUgbGEgbGlnbmUgZGUgY29tbWFuZGUgb3UgIgorImJpZW4gcGVuZGFudCBsJ2V4w6ljdXRpb24gZGUgbCdhY3Rpb24uIgorCisjLiB0eXBlOiBTSAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM4MworIywgbm8td3JhcAorbXNnaWQgIlFVRVJZIEZPUk1BVCIKK21zZ3N0ciAiRk9STUFUIERFIFJFUVXDilRFIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6Mzg4CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJUaGUgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBJPC0tcXVlcnk+IGZvcm1hdCBpcyB1c2luZyBhbiBSRkM4MjItbGlrZSBmbGF0ICIKKyN8ICJmb3JtYXQuIEl0J3MgbWFkZSBvZiBJPG4+ICsgMSBibG9ja3Mgd2hlcmUgSTxuPiBpcyB0aGUgbnVtYmVyIG9mICIKKyN8ICJhbHRlcm5hdGl2ZXMgYXZhaWxhYmxlIGluIHRoZSBxdWVyaWVkIGxpbmsgZ3JvdXAuIFRoZSBmaXJzdCBibG9jayAiCisjfCAiY29udGFpbnMgdGhlIGZvbGxvd2luZyBmaWVsZHM6IgorbXNnaWQgIiIKKyJUaGUgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzIC0tcXVlcnk+IGZvcm1hdCBpcyB1c2luZyBhbiBSRkM4MjItbGlrZSBmbGF0ICIKKyJmb3JtYXQuIEl0J3MgbWFkZSBvZiBJPG4+ICsgMSBibG9ja3Mgd2hlcmUgSTxuPiBpcyB0aGUgbnVtYmVyIG9mICIKKyJhbHRlcm5hdGl2ZXMgYXZhaWxhYmxlIGluIHRoZSBxdWVyaWVkIGxpbmsgZ3JvdXAuIFRoZSBmaXJzdCBibG9jayBjb250YWlucyAiCisidGhlIGZvbGxvd2luZyBmaWVsZHM6IgorbXNnc3RyICIiCisiTGUgZm9ybWF0IGQnQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBJPC0tcXVlcnk+IGVzdCB1biBmb3JtYXQgw6AgcGxhdCBkZSB0eXBlICIKKyJSRkM4MjIuIElsIGVzdCBjb25zdGl0dcOpIGRlIEk8bj4rMSBibG9jcyBvw7kgSTxuPiBlc3QgbGUgbm9tYnJlICIKKyJkJ2FsdGVybmF0aXZlcyBkaXNwb25pYmxlcyBkYW5zIGxlIGdyb3VwZSBkZSBsaWVucyBpbnRlcnJvZ8OpLiBMZSBwcmVtaWVyICIKKyJibG9jIGNvbnRpZW50IGxlcyBjaGFtcHMgc3VpdmFudHPCoDoiCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6Mzg4CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8TGluazo+IEU8bHQ+bGlua0U8Z3Q+IgorbXNnaWQgIkI8TGluazo+STwgbGluaz4iCittc2dzdHIgIkI8TGluazo+IEU8bHQ+bGllbkU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzkxCittc2dpZCAiVGhlIGdlbmVyaWMgbmFtZSBvZiB0aGUgYWx0ZXJuYXRpdmUuIgorbXNnc3RyICJOb20gZ8OpbsOpcmlxdWUgZGUgbCdhbHRlcm5hdGl2ZS4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzkxCisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8U3RhdHVzOj4gRTxsdD5zdGF0dXNFPGd0PiIKK21zZ2lkICJCPFN0YXR1czo+STwgc3RhdHVzPiIKK21zZ3N0ciAiQjxTdGF0dXM6PiBFPGx0PsOpdGF0RTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozOTQKK21zZ2lkICJUaGUgc3RhdHVzIG9mIHRoZSBhbHRlcm5hdGl2ZSAoQjxhdXRvPiBvciBCPG1hbnVhbD4pLiIKK21zZ3N0ciAiw4l0YXQgZGUgbCdhbHRlcm5hdGl2ZSAoQjxhdXRvPiBvdSBCPG1hbnVhbD4pLiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozOTQKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxCZXN0Oj4gRTxsdD5iZXN0IGNob2ljZUU8Z3Q+IgorbXNnaWQgIkI8QmVzdDo+STwgYmVzdC1jaG9pY2U+IgorbXNnc3RyICJCPEJlc3Q6PiBFPGx0Pm1laWxsZXVyIGNob2l4RTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozOTgKK21zZ2lkICIiCisiVGhlIHBhdGggb2YgdGhlIGJlc3QgYWx0ZXJuYXRpdmUgZm9yIHRoaXMgbGluayBncm91cC4gTm90IHByZXNlbnQgaWYgdGhlcmUgIgorImlzIG5vIGFsdGVybmF0aXZlcyBhdmFpbGFibGUuIgorbXNnc3RyICIiCisiQ2hlbWluIGRlIGxhIG1laWxsZXVyZSBhbHRlcm5hdGl2ZSBwb3VyIGNlIGdyb3VwZSBkZSBsaWVucy4gTidlc3QgcGFzICIKKyJwcsOpc2VudCBzaSBhdWN1biBhbHRlcm5hdGl2ZSBuJ2VzdCBkaXNwb25pYmxlLiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozOTgKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxWYWx1ZTo+IEU8bHQ+Y3VycmVudGx5IHNlbGVjdGVkIGFsdGVybmF0aXZlRTxndD4gIgorbXNnaWQgIkI8VmFsdWU6Pkk8IGN1cnJlbnRseS1zZWxlY3RlZC1hbHRlcm5hdGl2ZT4iCittc2dzdHIgIkI8VmFsdWU6PiBFPGx0PmFsdGVybmF0aXZlIGFjdHVlbGxlbWVudCBjaG9pc2llRTxndD4gIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDAyCittc2dpZCAiIgorIlRoZSBwYXRoIG9mIHRoZSBjdXJyZW50bHkgc2VsZWN0ZWQgYWx0ZXJuYXRpdmUuIEl0IGNhbiBhbHNvIHRha2UgdGhlIG1hZ2ljICIKKyJ2YWx1ZSBCPG5vbmU+LiBJdCBpcyB1c2VkIGlmIHRoZSBsaW5rIGRvZXNuJ3QgZXhpc3QuIgorbXNnc3RyICIiCisiQ2hlbWluIGRlIGwnYWx0ZXJuYXRpdmUgYWN0dWVsbGVtZW50IGNob2lzaWUuIFBldXQgYXVzc2kgcHJlbmRyZSBsYSB2YWxldXIgIgorInNww6ljaWFsZSBCPG5vbmU+LCB1dGlsaXPDqWUgc2kgbGUgbGllbiBuJ2V4aXN0ZSBwYXMuIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQwMworIywgbm8td3JhcAorbXNnaWQgIlRoZSBvdGhlciBibG9ja3MgZGVzY3JpYmUgdGhlIGF2YWlsYWJsZSBhbHRlcm5hdGl2ZXMgaW4gdGhlIHF1ZXJpZWQgbGluayBncm91cDoiCittc2dzdHIgIkxlcyBhdXRyZXMgYmxvY3MgZMOpY3JpdmVudCBsZXMgYWx0ZXJuYXRpdmVzIGRpc3BvbmlibGVzIGRhbnMgbGUgZ3JvdXBlIGRlIGxpZW5zIGludGVycm9nw6kuIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQwNQorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPEFsdGVybmF0aXZlOj4gRTxsdD5wYXRoIG9mIHRoaXMgYWx0ZXJuYXRpdmVFPGd0PiIKK21zZ2lkICJCPEFsdGVybmF0aXZlOj5JPCBwYXRoLW9mLXRoaXMtYWx0ZXJuYXRpdmU+IgorbXNnc3RyICJCPEFsdGVybmF0aXZlOj4gRTxsdD5jaGVtaW4gZGUgY2V0dGUgYWx0ZXJuYXRpdmVFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQwOAorbXNnaWQgIlBhdGggdG8gdGhpcyBibG9jaydzIGFsdGVybmF0aXZlLiIKK21zZ3N0ciAiQ2hlbWluIHZlcnMgbCdhbHRlcm5hdGl2ZSBkZSBjZSBibG9jIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQwOAorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPFByaW9yaXR5Oj4gRTxsdD5wcmlvcml0eSB2YWx1ZUU8Z3Q+IgorbXNnaWQgIkI8UHJpb3JpdHk6Pkk8IHByaW9yaXR5LXZhbHVlPiIKK21zZ3N0ciAiQjxQcmlvcml0eTo+IEU8bHQ+dmFsZXVyIGRlIGxhIHByaW9yaXTDqUU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDExCittc2dpZCAiVmFsdWUgb2YgdGhlIHByaW9yaXR5IG9mIHRoaXMgYWx0ZXJuYXRpdmUuIgorbXNnc3RyICJWYWxldXIgZGUgbGEgcHJpb3JpdMOpIGFsdGVybmF0aXZlLiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0MTEKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxTbGF2ZXM6PiBFPGx0Pmxpc3Qgb2Ygc2xhdmVzRTxndD4iCittc2dpZCAiQjxTbGF2ZXM6Pkk8IGxpc3Qtb2Ytc2xhdmVzPiIKK21zZ3N0ciAiQjxSZXBsYWNlczo+IEU8bHQ+bGlzdGUgZGVzIGxpZW5zIHNlY29uZGFpcmVzRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0MTcKK21zZ2lkICIiCisiV2hlbiB0aGlzIGhlYWRlciBpcyBwcmVzZW50LCB0aGUgQjxuZXh0PiBsaW5lcyBob2xkIGFsbCBzbGF2ZSBhbHRlcm5hdGl2ZXMgIgorImFzc29jaWF0ZWQgdG8gdGhlIG1hc3RlciBsaW5rIG9mIHRoZSBhbHRlcm5hdGl2ZS4gVGhlcmUgaXMgb25lIHNsYXZlIHBlciAiCisibGluZS4gRWFjaCBsaW5lIGNvbnRhaW5zIG9uZSBzcGFjZSwgdGhlIGdlbmVyaWMgbmFtZSBvZiB0aGUgc2xhdmUgIgorImFsdGVybmF0aXZlLCBhbm90aGVyIHNwYWNlLCBhbmQgdGhlIHBhdGggdG8gdGhlIHNsYXZlIGFsdGVybmF0aXZlLiIKK21zZ3N0ciAiIgorIkxvcnNxdWUgY2V0IGVuLXTDqnRlIGVzdCBwcsOpc2VudCwgbGEgbGlnbmUgc3VpdmFudGUgY29udGllbnQgdG91dGVzIGxlcyAiCisiYWx0ZXJuYXRpdmVzIHNlY29uZGFpcmVzIGFzc29jacOpZXMgYXUgbGllbiBwcmluY2lwYWwgZGUgY2V0dGUgYWx0ZXJuYXRpdmUsIMOgICIKKyJyYWlzb24gZCd1bmUgYWx0ZXJuYXRpdmUgc2Vjb25kYWlyZSBwYXIgbGlnbmUuIENoYXF1ZSBsaWduZSBjb21wb3J0ZSB1biAiCisiZXNwYWNlLCBsZSBub20gZGUgbCdhbHRlcm5hdGl2ZSBzZWNvbmRhaXJlLCB1biBlc3BhY2UgZXQgbGUgY2hlbWluIHZlcnMgIgorImwnYWx0ZXJuYXRpdmUgc2Vjb25kYWlyZS4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDE4CisjLCBuby13cmFwCittc2dpZCAiQjxFeGFtcGxlPiIKK21zZ3N0ciAiQjxFeGVtcGxlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQyNgorIywgbm8td3JhcAorbXNnaWQgIiIKKyIkIHVwZGF0ZS1hbHRlcm5hdGl2ZXMgLS1xdWVyeSBlZGl0b3JcbiIKKyJMaW5rOiBlZGl0b3JcbiIKKyJTdGF0dXM6IGF1dG9cbiIKKyJCZXN0OiAvdXNyL2Jpbi92aW0uZ3RrXG4iCisiVmFsdWU6IC91c3IvYmluL3ZpbS5ndGtcbiIKK21zZ3N0ciAiIgorIiQgdXBkYXRlLWFsdGVybmF0aXZlcyAtLXF1ZXJ5IGVkaXRvclxuIgorIkxpbms6IGVkaXRvclxuIgorIlN0YXR1czogYXV0b1xuIgorIkJlc3Q6IC91c3IvYmluL3ZpbS5ndGtcbiIKKyJWYWx1ZTogL3Vzci9iaW4vdmltLmd0a1xuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDMxCisjLCBuby13cmFwCittc2dpZCAiIgorIkFsdGVybmF0aXZlOiAvYmluL2VkXG4iCisiUHJpb3JpdHk6IC0xMDBcbiIKKyJTbGF2ZXM6XG4iCisiIGVkaXRvci4xLmd6IC91c3Ivc2hhcmUvbWFuL21hbjEvZWQuMS5nelxuIgorbXNnc3RyICIiCisiQWx0ZXJuYXRpdmU6IC9iaW4vZWRcbiIKKyJQcmlvcml0eTogLTEwMFxuIgorIlNsYXZlczpcbiIKKyIgZWRpdG9yLjEuZ3ogL3Vzci9zaGFyZS9tYW4vbWFuMS9lZC4xLmd6XG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0NDYKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiQWx0ZXJuYXRpdmU6IC91c3IvYmluL3ZpbS5ndGtcbiIKKyJQcmlvcml0eTogNTBcbiIKKyJTbGF2ZXM6XG4iCisiIGVkaXRvci4xLmd6IC91c3Ivc2hhcmUvbWFuL21hbjEvdmltLjEuZ3pcbiIKKyIgZWRpdG9yLnJ1LjEuZ3ogL3Vzci9zaGFyZS9tYW4vcnUvbWFuMS92aW0uMS5nelxuIgorIiBlZGl0b3IucGwuSVNPODg1OS0yLjEuZ3ogL3Vzci9zaGFyZS9tYW4vcGwuSVNPODg1OS0yL21hbjEvdmltLjEuZ3pcbiIKKyIgZWRpdG9yLml0LklTTzg4NTktMS4xLmd6IC91c3Ivc2hhcmUvbWFuL2l0LklTTzg4NTktMS9tYW4xL3ZpbS4xLmd6XG4iCisiIGVkaXRvci5wbC5VVEYtOC4xLmd6IC91c3Ivc2hhcmUvbWFuL3BsLlVURi04L21hbjEvdmltLjEuZ3pcbiIKKyIgZWRpdG9yLml0LjEuZ3ogL3Vzci9zaGFyZS9tYW4vaXQvbWFuMS92aW0uMS5nelxuIgorIiBlZGl0b3IuZnIuVVRGLTguMS5neiAvdXNyL3NoYXJlL21hbi9mci5VVEYtOC9tYW4xL3ZpbS4xLmd6XG4iCisiIGVkaXRvci5mci4xLmd6IC91c3Ivc2hhcmUvbWFuL2ZyL21hbjEvdmltLjEuZ3pcbiIKKyIgZWRpdG9yLml0LlVURi04LjEuZ3ogL3Vzci9zaGFyZS9tYW4vaXQuVVRGLTgvbWFuMS92aW0uMS5nelxuIgorIiBlZGl0b3IucGwuMS5neiAvdXNyL3NoYXJlL21hbi9wbC9tYW4xL3ZpbS4xLmd6XG4iCisiIGVkaXRvci5mci5JU084ODU5LTEuMS5neiAvdXNyL3NoYXJlL21hbi9mci5JU084ODU5LTEvbWFuMS92aW0uMS5nelxuIgorbXNnc3RyICIiCisiQWx0ZXJuYXRpdmU6IC91c3IvYmluL3ZpbS5ndGtcbiIKKyJQcmlvcml0eTogNTBcbiIKKyJTbGF2ZXM6XG4iCisiIGVkaXRvci4xLmd6IC91c3Ivc2hhcmUvbWFuL21hbjEvdmltLjEuZ3pcbiIKKyIgZWRpdG9yLnJ1LjEuZ3ogL3Vzci9zaGFyZS9tYW4vcnUvbWFuMS92aW0uMS5nelxuIgorIiBlZGl0b3IucGwuSVNPODg1OS0yLjEuZ3ogL3Vzci9zaGFyZS9tYW4vcGwuSVNPODg1OS0yL21hbjEvdmltLjEuZ3pcbiIKKyIgZWRpdG9yLml0LklTTzg4NTktMS4xLmd6IC91c3Ivc2hhcmUvbWFuL2l0LklTTzg4NTktMS9tYW4xL3ZpbS4xLmd6XG4iCisiIGVkaXRvci5wbC5VVEYtOC4xLmd6IC91c3Ivc2hhcmUvbWFuL3BsLlVURi04L21hbjEvdmltLjEuZ3pcbiIKKyIgZWRpdG9yLml0LjEuZ3ogL3Vzci9zaGFyZS9tYW4vaXQvbWFuMS92aW0uMS5nelxuIgorIiBlZGl0b3IuZnIuVVRGLTguMS5neiAvdXNyL3NoYXJlL21hbi9mci5VVEYtOC9tYW4xL3ZpbS4xLmd6XG4iCisiIGVkaXRvci5mci4xLmd6IC91c3Ivc2hhcmUvbWFuL2ZyL21hbjEvdmltLjEuZ3pcbiIKKyIgZWRpdG9yLml0LlVURi04LjEuZ3ogL3Vzci9zaGFyZS9tYW4vaXQuVVRGLTgvbWFuMS92aW0uMS5nelxuIgorIiBlZGl0b3IucGwuMS5neiAvdXNyL3NoYXJlL21hbi9wbC9tYW4xL3ZpbS4xLmd6XG4iCisiIGVkaXRvci5mci5JU084ODU5LTEuMS5neiAvdXNyL3NoYXJlL21hbi9mci5JU084ODU5LTEvbWFuMS92aW0uMS5nelxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDU4CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJXaXRoIEk8LS12ZXJib3NlPiBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IGNoYXR0ZXJzIGluY2Vzc2FudGx5IGFib3V0IGl0cyAiCisjfCAiYWN0aXZpdGllcyBvbiBpdHMgc3RhbmRhcmQgb3V0cHV0IGNoYW5uZWwuICBJZiBwcm9ibGVtcyBvY2N1ciwgQjx1cGRhdGUtIgorI3wgImFsdGVybmF0aXZlcz4gb3V0cHV0cyBlcnJvciBtZXNzYWdlcyBvbiBpdHMgc3RhbmRhcmQgZXJyb3IgY2hhbm5lbCBhbmQgIgorI3wgInJldHVybnMgYW4gZXhpdCBzdGF0dXMgb2YgMi4gIFRoZXNlIGRpYWdub3N0aWNzIHNob3VsZCBiZSBzZWxmLSIKKyN8ICJleHBsYW5hdG9yeTsgaWYgeW91IGRvIG5vdCBmaW5kIHRoZW0gc28sIHBsZWFzZSByZXBvcnQgdGhpcyBhcyBhIGJ1Zy4iCittc2dpZCAiIgorIldpdGggQjwtLXZlcmJvc2U+IEI8dXBkYXRlLWFsdGVybmF0aXZlcz4gY2hhdHRlcnMgaW5jZXNzYW50bHkgYWJvdXQgaXRzICIKKyJhY3Rpdml0aWVzIG9uIGl0cyBzdGFuZGFyZCBvdXRwdXQgY2hhbm5lbC4gIElmIHByb2JsZW1zIG9jY3VyLCBCPHVwZGF0ZS0iCisiYWx0ZXJuYXRpdmVzPiBvdXRwdXRzIGVycm9yIG1lc3NhZ2VzIG9uIGl0cyBzdGFuZGFyZCBlcnJvciBjaGFubmVsIGFuZCAiCisicmV0dXJucyBhbiBleGl0IHN0YXR1cyBvZiAyLiAgVGhlc2UgZGlhZ25vc3RpY3Mgc2hvdWxkIGJlIHNlbGYtZXhwbGFuYXRvcnk7ICIKKyJpZiB5b3UgZG8gbm90IGZpbmQgdGhlbSBzbywgcGxlYXNlIHJlcG9ydCB0aGlzIGFzIGEgYnVnLiIKK21zZ3N0ciAiIgorIkF2ZWMgbCdvcHRpb24gSTwtLXZlcmJvc2U+LCBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IGFmZmljaGUgZGUgdHLDqHMgIgorIm5vbWJyZXVzZXMgaW5mb3JtYXRpb25zIHN1ciBsYSBzb3J0aWUgc3RhbmRhcmQuIFF1YW5kIHVuIHByb2Jsw6htZSBzdXJ2aWVudCwgIgorIkI8dXBkYXRlLWFsdGVybmF0aXZlcz4gZW52b2llIGRlcyBtZXNzYWdlcyBkJ2VycmV1ciBzdXIgbGEgc29ydGllIGQnZXJyZXVyICIKKyJzdGFuZGFyZCBldCByZXRvdXJuZSB1biDDqXRhdCBkZSBzb3J0aWUgw6lnYWwgw6AgMi4gQ2VzIGRpYWdub3N0aWNzIGRldnJhaWVudCAiCisiw6p0cmUgc2ltcGxlcyDDoCBjb21wcmVuZHJlwqA7IHNpIGNlIG4nZXN0IHBhcyBsZSBjYXMsIHZldWlsbGV6IGVudm95ZXIgdW4gIgorInJhcHBvcnQgZGUgYm9ndWUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDY0Cittc2dpZCAiIgorIlRoZXJlIGFyZSBzZXZlcmFsIHBhY2thZ2VzIHdoaWNoIHByb3ZpZGUgYSB0ZXh0IGVkaXRvciBjb21wYXRpYmxlIHdpdGggIgorIkI8dmk+LCBmb3IgZXhhbXBsZSBCPG52aT4gYW5kIEI8dmltPi4gV2hpY2ggb25lIGlzIHVzZWQgaXMgY29udHJvbGxlZCBieSB0aGUgIgorImxpbmsgZ3JvdXAgQjx2aT4sIHdoaWNoIGluY2x1ZGVzIGxpbmtzIGZvciB0aGUgcHJvZ3JhbSBpdHNlbGYgYW5kIHRoZSAiCisiYXNzb2NpYXRlZCBtYW5wYWdlLiIKK21zZ3N0ciAiIgorIlBsdXNpZXVycyBwYXF1ZXRzIGZvdXJuaXNzZW50IHVuIMOpZGl0ZXVyIGRlIHRleHRlIGNvbXBhdGlibGUgYXZlYyBCPHZpPiwgcGFyICIKKyJleGVtcGxlIEI8bnZpPiBldCBCPHZpbT4uIENlbHVpIHF1aSBzZXJhIHV0aWxpc8OpIGVzdCBkw6l0ZXJtaW7DqSBwYXIgbGUgZ3JvdXBlICIKKyJkZSBsaWVucyBCPHZpPiwgcXVpIGNvbXByZW5kIGRlcyBsaWVucyBwb3VyIGxlIHByb2dyYW1tZSBsdWktbcOqbWUgZXQgc2EgcGFnZSAiCisiZGUgbWFudWVsLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQ2NworIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiVG8gZGlzcGxheSB0aGUgYXZhaWxhYmxlIHBhY2thZ2VzIHdoaWNoIHByb3ZpZGUgQjx2aT4gYW5kIHRoZSBjdXJyZW50ICIKKyN8ICJzZXR0aW5nIGZvciBpdCwgdXNlIHRoZSBJPC0tZGlzcGxheT4gYWN0aW9uOiIKK21zZ2lkICIiCisiVG8gZGlzcGxheSB0aGUgYXZhaWxhYmxlIHBhY2thZ2VzIHdoaWNoIHByb3ZpZGUgQjx2aT4gYW5kIHRoZSBjdXJyZW50ICIKKyJzZXR0aW5nIGZvciBpdCwgdXNlIHRoZSBCPC0tZGlzcGxheT4gYWN0aW9uOiIKK21zZ3N0ciAiIgorIlBvdXIgYWZmaWNoZXIgbGVzIHBhcXVldHMgZGlzcG9uaWJsZXMgcXVpIGZvdXJuaXNzZW50IEI8dmk+IGV0IHNvbiAiCisicGFyYW3DqXRyYWdlIGFjdHVlbCwgb24gcGV1dCB1dGlsaXNlciBsJ2FjdGlvbiBJPC0tZGlzcGxheT7CoDoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0NzAKK21zZ2lkICJCPHVwZGF0ZS1hbHRlcm5hdGl2ZXMgLS1kaXNwbGF5IHZpPiIKK21zZ3N0ciAiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzIC0tZGlzcGxheSB2aT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0NzQKK21zZ2lkICIiCisiVG8gY2hvb3NlIGEgcGFydGljdWxhciBCPHZpPiBpbXBsZW1lbnRhdGlvbiwgdXNlIHRoaXMgY29tbWFuZCBhcyByb290IGFuZCAiCisidGhlbiBzZWxlY3QgYSBudW1iZXIgZnJvbSB0aGUgbGlzdDoiCittc2dzdHIgIiIKKyJQb3VyIGNob2lzaXIgdW5lIGltcGzDqW1lbnRhdGlvbiBwYXJ0aWN1bGnDqHJlIGRlIEI8dmk+IG9uIHBldXQgdXRpbGlzZXIgY2V0dGUgIgorImNvbW1hbmRlIGVuIHRhbnQgcXVlIHN1cGVydXRpbGlzYXRldXIgZXQgY2hvaXNpciB1biBub21icmUgZGFucyBsYSBsaXN0ZcKgOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQ3NworbXNnaWQgIkI8dXBkYXRlLWFsdGVybmF0aXZlcyAtLWNvbmZpZyB2aT4iCittc2dzdHIgIkI8dXBkYXRlLWFsdGVybmF0aXZlcyAtLWNvbmZpZyB2aT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0ODEKK21zZ2lkICIiCisiVG8gZ28gYmFjayB0byBoYXZpbmcgdGhlIEI8dmk+IGltcGxlbWVudGF0aW9uIGNob3NlbiBhdXRvbWF0aWNhbGx5LCBkbyB0aGlzICIKKyJhcyByb290OiIKK21zZ3N0ciAiIgorIlBvdXIgcmV0cm91dmVyIGwnaW1wbMOpbWVudGF0aW9uIHBhciBkw6lmYXV0IGRlIEI8dmk+IG9uIHBldXQgdXRpbGlzZXIgY2V0dGUgIgorImNvbW1hbmRlIGVuIHRhbnQgcXVlIHN1cGVyLXV0aWxpc2F0ZXVywqA6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDg0Cittc2dpZCAiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzIC0tYXV0byB2aT4iCittc2dzdHIgIkI8dXBkYXRlLWFsdGVybmF0aXZlcyAtLWF1dG8gdmk+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDg4Cittc2dpZCAiIgorIklmIHlvdSBmaW5kIGEgYnVnLCBwbGVhc2UgcmVwb3J0IGl0IHVzaW5nIHRoZSBEZWJpYW4gYnVnLXRyYWNraW5nIHN5c3RlbS4iCittc2dzdHIgIiIKKyJTaSB2b3VzIHRyb3V2ZXogdW4gYm9ndWUsIHZldWlsbGV6IGxlIHNpZ25hbGVyIGF1IHN5c3TDqG1lIGRlIHN1aXZpIGRlcyAiCisiYm9ndWVzIGRlIERlYmlhbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0OTMKK21zZ2lkICIiCisiSWYgeW91IGZpbmQgYW55IGRpc2NyZXBhbmN5IGJldHdlZW4gdGhlIG9wZXJhdGlvbiBvZiBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+ICIKKyJhbmQgdGhpcyBtYW51YWwgcGFnZSwgaXQgaXMgYSBidWcsIGVpdGhlciBpbiB0aGUgaW1wbGVtZW50YXRpb24gb3IgdGhlICIKKyJkb2N1bWVudGF0aW9uOyBwbGVhc2UgcmVwb3J0IGl0LiIKK21zZ3N0ciAiIgorIlNpIHZvdXMgdHJvdXZleiB1bmUgZGlzY29yZGFuY2UgZW50cmUgbCdhY3Rpb24gZGUgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBldCAiCisiY2V0dGUgcGFnZSBkZSBtYW51ZWwsIGMnZXN0IHF1J2lsIHkgYSB1biBib2d1ZSwgc29pdCBkYW5zIGwnaW1wbMOpbWVudGF0aW9uICIKKyJzb2l0IGRhbnMgbGEgZG9jdW1lbnRhdGlvbsKgOyBmYWl0ZXMgdW4gcmFwcG9ydC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo1MDQKK21zZ2lkICIiCisiVGhpcyBtYW51YWwgcGFnZSBpcyBjb3B5cmlnaHQgMTk5NywxOTk4IENoYXJsZXMgQnJpc2NvZS1TbWl0aCBhbmQgb3RoZXJzLiIKK21zZ3N0ciAiIgorIkNldHRlIHBhZ2UgZGUgbWFudWVsIGVzdCBjb3B5cmlnaHQgMTk5NywgMTk5OCBDaGFybGVzIEJyaXNjb2UtU21pdGggZXQgIgorImF1dHJlcyBhdXRldXJzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjUwNworbXNnaWQgIiIKKyJUaGlzIGlzIGZyZWUgZG9jdW1lbnRhdGlvbjsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSB2ZXJzaW9uIDIgb3IgIgorImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIFdBUlJBTlRZLiIKK21zZ3N0ciAiIgorIkNldHRlIGRvY3VtZW50YXRpb24gZXN0IGxpYnJlwqA7IHZveWV6IGxhIMKrwqBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZcKgwrsgIgorInZlcnNpb24gMiBvdSBzdXDDqXJpZXVyZSBwb3VyIGxlIGNvcHlyaWdodC4gSWwgbid5IGEgUEFTIGRlIGdhcmFudGllLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjUxMAorbXNnaWQgIkI8bG4+KDEpLCBGSFMsIHRoZSBGaWxlc3lzdGVtIEhpZXJhcmNoeSBTdGFuZGFyZC4iCittc2dzdHIgIkI8bG4+KDEpLCBGSFMsIGxlIHN0YW5kYXJkIHBvdXIgbCdvcmdhbmlzYXRpb24gZHUgc3lzdMOobWUgZGUgZmljaGllcnMuIgorCisjfiBtc2dpZCAiMjAwOS0wMi0yNyIKKyN+IG1zZ3N0ciAiMjctMDItMjAwOSIKKworI34gbXNnaWQgIjIwMTEtMDQtMjkiCisjfiBtc2dzdHIgIjI5LTA0LTIwMTEiCisKKyN+IG1zZ2lkICIyMDA2LTAyLTI4IgorI34gbXNnc3RyICIyOC0wMi0yMDA2IgorCisjfiBtc2dpZCAiMjAwNy0wMy0wNyIKKyN+IG1zZ3N0ciAiMDctMDMtMjAwNyIKKworI34gbXNnaWQgIjIwMDctMDctMTYiCisjfiBtc2dzdHIgIjE2LTA3LTIwMDciCisKKyN+IG1zZ2lkICIyMDA5LTAzLTE1IgorI34gbXNnc3RyICIxNS0wMy0yMDA5IgorCisjLCBmdXp6eQorI358IG1zZ2lkICIyMDA5LTAyLTI3IgorI34gbXNnaWQgIjIwMTEtMDQtMjciCisjfiBtc2dzdHIgIjI3LTAyLTIwMDkiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgIjIwMDktMDItMjciCisjfiBtc2dpZCAiMjAxMS0wNy0wNyIKKyN+IG1zZ3N0ciAiMjctMDItMjAwOSIKKworI34gbXNnaWQgIjIwMTAtMDQtMTgiCisjfiBtc2dzdHIgIjE4LTA0LTIwMTAiCisKKyN+IG1zZ2lkICJCPEJ1aWxkLUZlYXR1cmVzOj5JPCBmZWF0dXJlcy1saXN0PiIKKyN+IG1zZ3N0ciAiQjxCdWlsZC1GZWF0dXJlczo+STwgbGlzdGUgZGUgZm9uY3Rpb25uYWxpdMOpcz4iCisKKyN+IG1zZ2lkICIiCisjfiAiQSBjb21tYS1zZXBhcmF0ZWQgbGlzdCBvZiBuYW1lcyBvZiBidWlsZC10aW1lIGZlYXR1cmVzIHRoYXQgYXJlIHN1cHBvcnRlZCAiCisjfiAiYnkgdGhlIHNvdXJjZSBwYWNrYWdlLiBDdXJyZW50bHksIHRoZSBvbmx5IHN1cHBvcnRlZCBmZWF0dXJlIGlzIEI8YnVpbGQtIgorI34gImFyY2g+LiBJdCBhbGxvd3MgZHBrZy1idWlsZHBhY2thZ2UgdG8gY2FsbCB0aGUgSTxidWlsZC1hcmNoPiBvciBJPGJ1aWxkLSIKKyN+ICJpbmRlcD4gdGFyZ2V0cyBpbiBwbGFjZSBvZiBJPGJ1aWxkPi4iCisjfiBtc2dzdHIgIiIKKyN+ICJkb25uZSBsYSBsaXN0ZSBkZXMgbm9tcyBkZXMgZm9uY3Rpb25uYWxpdMOpcyBxdWkgc29udCBnw6lyw6llcyBwYXIgbGUgcGFxdWV0ICIKKyN+ICJzb3VyY2UuIMOAIGNlIGpvdXIsIGxhIHNldWxlIGZvbmN0aW9ubmFsaXTDqSBnw6lyw6llIGVzdCBCPGJ1aWxkLWFyY2g+LiBFbGxlICIKKyN+ICJwZXJtZXQgw6AgZHBrZy1idWlsZHBhY2thZ2UgZCd1dGlsaXNlciBsZXMgY2libGVzIEk8YnVpbGQtYXJjaD4gb3UgSTxidWlsZC0iCisjfiAiaW5kZXA+IMOgIGxhIHBsYWNlIGRlIEk8YnVpbGQ+IgorCisjLCBmdXp6eQorI358IG1zZ2lkICJVc2VyIGNvbmZpZ3VyYXRpb24gZmlsZS4iCisjfiBtc2dpZCAiUGFja2FnZSBtYWludGFpbmVyIGNvbmZpZ3VyYXRpb24gZmlsZS4iCisjfiBtc2dzdHIgIkZpY2hpZXIgZGUgY29uZmlndXJhdGlvbiBwcm9wcmUgw6AgbCd1dGlsaXNhdGV1ciIKKworI34gbXNnaWQgIjIwMTAtMDctMjkiCisjfiBtc2dzdHIgIjI5LTA3LTIwMTAiCisKKyN+IG1zZ2lkICJCPFBhY2thZ2U6PiBFPGx0PnBhY2thZ2UgbmFtZUU8Z3Q+IgorI34gbXNnc3RyICJCPFBhY2thZ2U6PiBFPGx0Pm5vbSBkdSBwYXF1ZXRFPGd0PiIKKworIywgZnV6enkKKyN+fCBtc2dpZCAiMjAwNy0xMS0yMiIKKyN+IG1zZ2lkICIyMDEwLTExLTIyIgorI34gbXNnc3RyICIyMi0xMS0yMDA3IgorCisjLCBmdXp6eQorI358IG1zZ2lkICJCPFNvdXJjZTo+IEU8bHQ+c291cmNlIG5hbWVFPGd0PiIKKyN+IG1zZ2lkICJCPE11bHRpLUFyY2g6PiBFPGx0PnNhbWV8Zm9yZWlnbnxhbGxvd2VkRTxndD4gIgorI34gbXNnc3RyICJCPFNvdXJjZTo+IEU8bHQ+bm9tIGR1IHNvdXJjZUU8Z3Q+IgorCisjfiBtc2dpZCAiMjAxMC0wMS0yOCIKKyN+IG1zZ3N0ciAiMjgtMDEtMjAxMCIKKworI34gbXNnaWQgIiIKKyN+ICJUaGUgZmlyc3QgbWVtYmVyIGlzIG5hbWVkIEI8ZGViaWFuLXNwbGl0PiBhbmQgY29udGFpbnMgYSBzZXJpZXMgb2YgbGluZXMsICIKKyN+ICJzZXBhcmF0ZWQgYnkgbmV3bGluZXMuIEN1cnJlbnRseSBzZXZlbiBsaW5lcyBhcmUgcHJlc2VudC4gIFRoZSBmaXJzdCBpcyAiCisjfiAidGhlIGZvcm1hdCB2ZXJzaW9uIG51bWJlciwgQjwyLjE+IGF0IHRoZSB0aW1lIHRoaXMgbWFudWFsIHBhZ2Ugd2FzICIKKyN+ICJ3cml0dGVuLiBUaGUgc2Vjb25kIGlzIHRoZSBwYWNrYWdlIG5hbWUuIFRoZSB0aGlyZCBpcyB0aGUgcGFja2FnZSAiCisjfiAidmVyc2lvbi4gVGhlIGZvdXJ0aCBpcyB0aGUgbWQ1c3VtIG9mIHRoZSBwYWNrYWdlLiAgVGhlIGZpZnRoIGlzIHRoZSB0b3RhbCAiCisjfiAic2l6ZSBvZiB0aGUgcGFja2FnZS4gVGhlIHNpeHRoIGlzIHRoZSBtYXhpbXVtIHBhcnQgc2l6ZS4gVGhlIHNldmVudGggaXMgIgorI34gInRoZSBjdXJyZW50IHBhcnQgbnVtYmVyLCBmb2xsb3dlZCBieSBhIHNsYXNoIGFuZCB0aGUgdG90YWwgYW1vdW50IG9mICIKKyN+ICJwYXJ0cyAoYXMgaW4gXFwob3ExLzEwXFwoY3EpLiIKKyN+IG1zZ3N0ciAiIgorI34gIkxlIHByZW1pZXIgbWVtYnJlIGVzdCBub21tw6kgQjxkZWJpYW4tc3BsaXQ+IGV0IGNvbnRpZW50IHVuZSBzdWNjZXNzaW9uIGRlICIKKyN+ICJsaWduZXMsIHPDqXBhcsOpZXMgcGFyIGRlcyByZXRvdXJzLWNoYXJpb3QuIFBvdXIgbGUgbW9tZW50LCBzZXB0IGxpZ25lcyAiCisjfiAic29udCBwcsOpc2VudGVzLiBMYSBwcmVtacOocmUgZXN0IGxlIG51bcOpcm8gZGUgdmVyc2lvbiBkdSBmb3JtYXQsIEI8Mi4xPiDDoCAiCisjfiAibCdoZXVyZSBvw7kgY2UgZG9jdW1lbnQgYSDDqXTDqSDDqWNyaXQuIExlIHNlY29uZCBlc3QgbGUgbm9tIGR1IHBhcXVldC4gTGUgIgorI34gInRyb2lzacOobWUgZXN0IGxhIHZlcnNpb24gZHUgcGFxdWV0LiBMZSBxdWF0cmnDqG1lIGVzdCBsYSBzb21tZSBNRDUgZHUgIgorI34gInBhcXVldC4gTGUgY2lucXVpw6htZSBlc3QgbGEgdGFpbGxlIHRvdGFsZSBkdSBwYXF1ZXQuIExlIHNpeGnDqG1lIGVzdCBsYSAiCisjfiAidGFpbGxlIG1heGltYWxlIGQndW5lIHBhcnRpZS4gTGUgc2VwdGnDqG1lIGVzdCBsZSBudW3DqXJvIGQnb3JkcmUgZGUgbGEgIgorI34gInBhcnRpZSBjb25jZXJuw6llLCBzdWl2aSBkdSBjYXJhY3TDqHJlIMKrwqAvwqDCuyBldCBkdSBub21icmUgdG90YWwgZGUgcGFydGllcyAiCisjfiAiKGRlIGxlIGZvcm1lIFxcKG9xMS8xMFxcKGNxKS4iCisKKyN+IG1zZ2lkICIyMDA4LTA4LTE4IgorI34gbXNnc3RyICIxOC0wOC0yMDA4IgorCisjfiBtc2dpZCAiIgorI34gIkI8ZHBrZz4gY2FuIGFsc28gYmUgdXNlZCBhcyBhIGZyb250LWVuZCB0byBCPGRwa2ctZGViPigxKS4gIFRoZSBmb2xsb3dpbmcgIgorI34gImFyZSBCPGRwa2ctZGViPiBhY3Rpb25zLCBhbmQgaWYgdGhleSBhcmUgZW5jb3VudGVyZWQsIEI8ZHBrZz4ganVzdCBydW5zICIKKyN+ICJCPGRwa2ctZGViPiB3aXRoIHRoZSBwYXJhbWV0ZXJzIGdpdmVuIHRvIGl0OiIKKyN+IG1zZ3N0ciAiIgorI34gIk9uIHBldXQgYXVzc2kgdXRpbGlzZXIgQjxkcGtnPiBjb21tZSB1bmUgaW50ZXJmYWNlIMOgIEI8ZHBrZy1kZWI+KDEpLiAiCisjfiAiUXVhbmQgQjxkcGtnPiByZW5jb250cmUgbGVzIGFjdGlvbnMgc3VpdmFudGVzLCBxdWkgc29udCBkZXMgYWN0aW9ucyBkZSAiCisjfiAiQjxkcGtnLWRlYj4sIGlsIGxhbmNlIHNpbXBsZW1lbnQgQjxkcGtnLWRlYj4gYXZlYyBsZXMgcGFyYW3DqHRyZXMgcXVpIGx1aSAiCisjfiAib250IMOpdMOpIGZvdXJuaXPCoDoiCisKKyN+IG1zZ2lkICIiCisjfiAiICAgIEI8LWI+LCBCPC0tYnVpbGQ+LFxuIgorI34gIiAgICBCPC1jPiwgQjwtLWNvbnRlbnRzPixcbiIKKyN+ICIgICAgQjwtST4sIEI8LS1pbmZvPixcbiIKKyN+ICIgICAgQjwtZj4sIEI8LS1maWVsZD4sXG4iCisjfiAiICAgIEI8LWU+LCBCPC0tY29udHJvbD4sXG4iCisjfiAiICAgIEI8LXg+LCBCPC0tZXh0cmFjdD4sXG4iCisjfiAiICAgIEI8LVg+LCBCPC0tdmV4dHJhY3Q+LCBhbmRcbiIKKyN+ICIgICAgQjwtLWZzeXMtdGFyZmlsZT4uXG4iCisjfiBtc2dzdHIgIiIKKyN+ICIgICAgQjwtYj4sIEI8LS1idWlsZD4sXG4iCisjfiAiICAgIEI8LWM+LCBCPC0tY29udGVudHM+LFxuIgorI34gIiAgICBCPC1JPiwgQjwtLWluZm8+LFxuIgorI34gIiAgICBCPC1mPiwgQjwtLWZpZWxkPixcbiIKKyN+ICIgICAgQjwtZT4sIEI8LS1jb250cm9sPixcbiIKKyN+ICIgICAgQjwteD4sIEI8LS1leHRyYWN0PixcbiIKKyN+ICIgICAgQjwtWD4sIEI8LS12ZXh0cmFjdD4sIGV0XG4iCisjfiAiICAgIEI8LS1mc3lzLXRhcmZpbGU+LlxuIgorCisjfiBtc2dpZCAiUGxlYXNlIHJlZmVyIHRvIEI8ZHBrZy1kZWI+KDEpIGZvciBpbmZvcm1hdGlvbiBhYm91dCB0aGVzZSBhY3Rpb25zLiIKKyN+IG1zZ3N0ciAiIgorI34gIlZveWV6IEI8ZHBrZy1kZWI+KDEpIHBvdXIgZGVzIHJlbnNlaWduZW1lbnRzIHN1cHBsw6ltZW50YWlyZXMgc3VyIGNlcyAiCisjfiAiYWN0aW9ucy4iCisKKyN+IG1zZ2lkICJCPC0tbmV3PiwgQjwtLW9sZD4iCisjfiBtc2dzdHIgIkI8LS1uZXc+LCBCPC0tb2xkPiIKKworI34gbXNnaWQgIiIKKyN+ICJTZWxlY3QgbmV3IG9yIG9sZCBiaW5hcnkgcGFja2FnZSBmb3JtYXQuIFRoaXMgaXMgYSBCPGRwa2ctZGViPigxKSAgb3B0aW9uLiIKKyN+IG1zZ3N0ciAiIgorI34gIlPDqWxlY3Rpb25uZSBzb2l0IGwnYW5jaWVuIGZvcm1hdCBkZXMgcGFxdWV0IGJpbmFpcmVzLCBzb2l0IGxlIG5vdXZlYXUuICIKKyN+ICJDJ2VzdCB1bmUgb3B0aW9uIGRlIEI8ZHBrZy1kZWI+KDEpLiIKKworI34gbXNnaWQgIiIKKyN+ICJEb24ndCByZWFkIG9yIGNoZWNrIGNvbnRlbnRzIG9mIGNvbnRyb2wgZmlsZSB3aGlsZSBidWlsZGluZyBhIHBhY2thZ2UuICAiCisjfiAiVGhpcyBpcyBhIEI8ZHBrZy1kZWI+KDEpIG9wdGlvbi4iCisjfiBtc2dzdHIgIiIKKyN+ICJOZSBwYXMgbGlyZSBuaSB2w6lyaWZpZXIgbGUgY29udGVudSBkdSBmaWNoaWVyIGRlIGNvbnRyw7RsZSBwZW5kYW50IGxhICIKKyN+ICJjb25zdHJ1Y3Rpb24gZCd1biBwYXF1ZXQuIEMnZXN0IHVuZSBvcHRpb24gZGUgQjxkcGtnLWRlYj4oMSkuIgorCisjfiBtc2dpZCAiMjAwOS0wOC0xNSIKKyN+IG1zZ3N0ciAiMTUtMDgtMjAwOSIKKworI34gbXNnaWQgIkNvbXBpbGVyIGZsYWdzIgorI34gbXNnc3RyICJEcmFwZWF1eCBkZSBjb21waWxhdGlvbiIKKworI34gbXNnaWQgIiIKKyN+ICJUaGUgQjxDRkxBR1M+LCBCPENYWEZMQUdTPiwgQjxGRkxBR1M+LCBCPENQUEZMQUdTPiBhbmQgQjxMREZMQUdTPiAiCisjfiAiZW52aXJvbm1lbnQgdmFyaWFibGVzIGFyZSBzZXQgdG8gdGhlIHZhbHVlcyB0aGF0IEI8ZHBrZy1idWlsZGZsYWdzPiAiCisjfiAicmV0dXJuZWQuIFNlZSBpdHMgbWFudWFsIHBhZ2UgZm9yIG1vcmUgaW5mb3JtYXRpb24uIgorI34gbXNnc3RyICIiCisjfiAiTGVzIHZhcmlhYmxlcyBkJ2Vudmlyb25uZW1lbnQgQjxDRkxBR1M+LCBCPENYWEZMQUdTPiwgQjxGRkxBR1M+LCAiCisjfiAiQjxDUFBGTEFHUz4gZXQgQjxMREZMQUdTPiBwcmVubmVudCBsZXMgdmFsZXVycyByZW52b3nDqWVzIHBhciBCPGRwa2ctIgorI34gImJ1aWxkZmxhZ3M+LiBWZXVpbGxleiBjb25zdWx0ZXIgbGEgcGFnZSBkZSBtYW51ZWwgZGUgY2UgcHJvZ3JhbW1lIHBvdXIgIgorI34gInBsdXMgZCdpbmZvcm1hdGlvbnMuIgorCisjfiBtc2dpZCAiMjAwOS0xMS0yMSIKKyN+IG1zZ3N0ciAiMjEtMTEtMjAwOSIKKworI34gbXNnaWQgIjIwMTAtMDMtMDciCisjfiBtc2dzdHIgIjA3LTAzLTIwMTAiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgIjIwMTAtMTAtMTAiCisjfiBtc2dpZCAiMjAxMC0xMC0xMiIKKyN+IG1zZ3N0ciAiMTAtMTAtMjAxMCIKKworI34gbXNnaWQgIjIwMDktMDgtMDciCisjfiBtc2dzdHIgIjA3LTA4LTIwMDkiCisKKyN+IG1zZ2lkICIyMDEwLTA0LTE2IgorI34gbXNnc3RyICIxNi0wNC0yMDEwIgorCisjfiBtc2dpZCAiMjAwOS0wNS0xOSIKKyN+IG1zZ3N0ciAiMTktMDUtMjAwOSIKKworI34gbXNnaWQgIjAiCisjfiBtc2dzdHIgIjAiCisKKyN+IG1zZ2lkICIxIgorI34gbXNnc3RyICIxIgorCisjfiBtc2dpZCAiMjAwOS0xMC0wMSIKKyN+IG1zZ3N0ciAiMDEtMTAtMjAwOSIKKworI34gbXNnaWQgIjIwMDktMDYtMjYiCisjfiBtc2dzdHIgIjI2LTA2LTIwMDkiCisKKyN+IG1zZ2lkICIiCisjfiAiQjxkcGtnLXNwbGl0PiB1c2VzIHNvbWUgcmF0aGVyIG91dC1vZi1kYXRlIGNvbnZlbnRpb25zIGZvciB0aGUgdGhlICIKKyN+ICJmaWxlbmFtZXMgb2YgRGViaWFuIHBhY2thZ2VzLiIKKyN+IG1zZ3N0ciAiIgorI34gIkI8ZHBrZy1zcGxpdD4gdXRpbGlzZSBkZXMgY29udmVudGlvbnMgcGx1dMO0dCBww6lyaW3DqWVzIHBvdXIgbGVzIG5vbXMgZGVzICIKKyN+ICJwYXF1ZXRzIERlYmlhbi4iCisKKyN+IG1zZ2lkICIiCisjfiAiVGhlIGFyY2hpdGVjdHVyZSBpcyBub3QgcmVwcmVzZW50ZWQgaW4gdGhlIHBhcnQgZmlsZXMnIGhlYWRlciwgb25seSBpbiAiCisjfiAidGhlIGNvbnRyb2wgaW5mb3JtYXRpb24gb2YgdGhlIGNvbnRhaW5lZCBiaW5hcnkgcGFja2FnZSBmaWxlLCBhbmQgaXQgaXMgIgorI34gIm5vdCBwcmVzZW50IGluIHRoZSBmaWxlbmFtZXMgZ2VuZXJhdGVkLiIKKyN+IG1zZ3N0ciAiIgorI34gIkwnYXJjaGl0ZWN0dXJlIG4nZXN0IHBhcyBpbmRpcXXDqWUgZGFucyBsJ2VuLXTDqnRlIGRlcyBmaWNoaWVyc8KgOyBlbGxlICIKKyN+ICJsJ2VzdCBzZXVsZW1lbnQgZGFucyBsZXMgaW5mb3JtYXRpb25zIGRlIGNvbnRyw7RsZSBkdSBwYXF1ZXQgYmluYWlyZcKgOyBldCAiCisjfiAiZWxsZSBuJ2VzdCBwYXMgcHLDqXNlbnRlIGRhbnMgbGVzIGZpY2hpZXJzIHByb2R1aXRzLiIKKworI34gbXNnaWQgIjIwMDktMDUtMTAiCisjfiBtc2dzdHIgIjEwLTA1LTIwMDkiCisKKyN+IG1zZ2lkICIiCisjfiAiQjxkc2VsZWN0PiBbQjwtLWFkbWluZGlyPiBJPEU8bHQ+ZGlyZWN0b3J5RTxndD4+XSBbQjwtLWhlbHA+XSBbQjwtLSIKKyN+ICJ2ZXJzaW9uPl0gW0I8LS1leHBlcnQ+XSBbQjwtLWRlYnVnPnxCPC1EPkk8RTxsdD5maWxlRTxndD4+XSAiCisjfiAiW0k8RTxsdD5hY3Rpb25FPGd0Pj5dIFtCPC0tY29sb3VyPnxCPC0tY29sb3I+IEk8c2NyZWVucGFydDo+IgorI34gIltJPGZvcmVncm91bmQ+XSxbSTxiYWNrZ3JvdW5kPl1bSTw6YXR0cj5bSTwrYXR0cisuLj5dXV0iCisjfiBtc2dzdHIgIiIKKyN+ICJCPGRzZWxlY3Q+IFtCPC0tYWRtaW5kaXI+IEk8RTxsdD5yw6lwZXJ0b2lyZUU8Z3Q+Pl0gW0I8LS1oZWxwPl0gW0I8LS0iCisjfiAidmVyc2lvbj5dIFtCPC0tZXhwZXJ0Pl0gW0I8LS1kZWJ1Zz58QjwtRD5JPEU8bHQ+ZmljaGllckU8Z3Q+Pl0gIgorI34gIltJPEU8bHQ+YWN0aW9uRTxndD4+XSBbQjwtLWNvbG91cj58QjwtLWNvbG9yPiBJPHBhcnRpZS3DqWNyYW46PltJPGF2YW50LSIKKyN+ICJwbGFuPl0sW0k8YXJyacOocmUtcGxhbj5dW0k8OmF0dHI+W0k8K2F0dHIrLi4+XV1dIgorCisjfiBtc2dpZCAiQjwtLWFkbWluZGlyPkk8IEU8bHQ+ZGlyZWN0b3J5RTxndD4+IgorI34gbXNnc3RyICJCPC0tYWRtaW5kaXI+STwgRTxsdD5yw6lwZXJ0b2lyZUU8Z3Q+PiIKKworI34gbXNnaWQgIlVTQUdFIgorI34gbXNnc3RyICJVVElMSVNBVElPTiIKKworI34gbXNnaWQgIiIKKyN+ICJCPHN0YXJ0LXN0b3AtZGFlbW9uPiByZXR1cm5zIDAgaWYgdGhlIHJlcXVlc3RlZCBhY3Rpb24gd2FzIHBlcmZvcm1lZCwgb3IgIgorI34gImlmIEI8LS1va25vZG8+IGlzIHNwZWNpZmllZCBhbmQgZWl0aGVyIEI8LS1zdGFydD4gd2FzIHNwZWNpZmllZCBhbmQgYSAiCisjfiAibWF0Y2hpbmcgcHJvY2VzcyB3YXMgYWxyZWFkeSBydW5uaW5nLCBvciBCPC0tc3RvcD4gd2FzIHNwZWNpZmllZCBhbmQgIgorI34gInRoZXJlIHdlcmUgbm8gbWF0Y2hpbmcgcHJvY2Vzc2VzLiBJZiBCPC0tb2tub2RvPiB3YXMgbm90IHNwZWNpZmllZCBhbmQgIgorI34gIm5vdGhpbmcgd2FzIGRvbmUsIDEgaXMgcmV0dXJuZWQuIElmIEI8LS1zdG9wPiBhbmQgQjwtLXJldHJ5PiB3ZXJlICIKKyN+ICJzcGVjaWZpZWQsIGJ1dCB0aGUgZW5kIG9mIHRoZSBzY2hlZHVsZSB3YXMgcmVhY2hlZCBhbmQgdGhlIHByb2Nlc3NlcyB3ZXJlICIKKyN+ICJzdGlsbCBydW5uaW5nLCB0aGUgZXJyb3IgdmFsdWUgaXMgMi4gRm9yIGFsbCBvdGhlciBlcnJvcnMsIHRoZSBzdGF0dXMgaXMgIgorI34gIjMuIgorI34gbXNnc3RyICIiCisjfiAiQjxzdGFydC1zdG9wLWRhZW1vbj4gcmVudm9pZSAwIHNpIGwnYWN0aW9uIGRlbWFuZMOpZSBhIMOpdMOpIGVmZmVjdHXDqWUsIG91ICIKKyN+ICJzaSBCPC0tb2tub2RvPiBlc3Qgc3DDqWNpZmnDqSBldCBhdXNzaSBzaSBCPC0tc3RhcnQ+IGEgw6l0w6kgc3DDqWNpZmnDqSBldCAiCisjfiAicXUndW4gcHJvY2Vzc3VzIGRlIGNvbXBhcmFpc29uIGVzdCBkw6lqw6AgZW4gY291cnMgZCdleMOpY3V0aW9uLCBvdSBzaSBCPC0tIgorI34gInN0b3A+IGEgw6l0w6kgc3DDqWNpZmnDqSBldCBxdSdpbCBuJ3kgYXZhaXQgcGFzIGRlIHByb2Nlc3N1cyBjb3JyZXNwb25kYW50LiAiCisjfiAiU2kgQjwtLW9rbm9kbz4gbidhIHBhcyDDqXTDqSBzcMOpY2lmacOpIGV0IHJpZW4gbidhIMOpdMOpIGZhaXQsIGFsb3JzIDEgZXN0ICIKKyN+ICJyZXRvdXJuw6kuIFNpIEI8LS1zdG9wPiBldCBCPC0tcmV0cnk+IG9udCDDqXTDqSBwcsOpY2lzw6lzLCBtYWlzIHF1ZSAiCisjfiAibCdvcmRvbm5hbmNldXIgYSBhdHRlaW50IGxhIGZpbiBkdSBjYWxlbmRyaWVyIGVuIGF5YW50IHRvdWpvdXJzIGxlICIKKyN+ICJwcm9jZXNzdXMgZW4gY291cnMgZCdleMOpY3V0aW9uLCBsYSB2YWxldXIgZCdlcnJldXIgZXN0IDIuIFBvdXIgdG91dGVzIGxlcyAiCisjfiAiYXV0cmVzIGVycmV1cnMsIGwnw6l0YXQgZXN0IDMuIgorCisjfiBtc2dpZCAiMiIKKyN+IG1zZ3N0ciAiMiIKKworI34gbXNnaWQgIiIKKyN+ICJBbiBlcnJvciBvY2N1cnJlZC4gVW5mb3J0dW5hdGVseSBhdCB0aGUgdGltZSBvZiB3cml0aW5nIEk8ZXh0ZW5kZWQtZXJyb3ItIgorI34gIm1lc3NhZ2U+IGNhbiBjb250YWluIG5ld2xpbmVzLCBhbHRob3VnaCBpbiBsb2NhbGVzIHdoZXJlIHRoZSB0cmFuc2xhdG9ycyAiCisjfiAiaGF2ZSBub3QgbWFkZSBtaXN0YWtlcyBldmVyeSBuZXdsaW5lIGlzIGZvbGxvd2VkIGJ5IGF0IGxlYXN0IG9uZSBzcGFjZS4iCisjfiBtc2dzdHIgIiIKKyN+ICJVbmUgZXJyZXVyIHMnZXN0IHByb2R1aXRlLiBNYWxoZXVyZXVzZW1lbnQsIGxvcnMgZGUgbCfDqWNyaXR1cmUgaWwgc2UgIgorI34gInRyb3V2ZSBxdWUgSTxtZXNzYWdlLWQnZXJyZXVyLWNvbXBsZXQ+IHBldXQgY29udGVuaXIgZGVzIHJldG91ciDDoCBsYSAiCisjfiAibGlnbmUsIGFsb3JzIHF1ZSBkYW5zIGxlcyBsb2NhbGVzIG/DuSBsZXMgdHJhZHVjdGV1cnMgbidvbnQgcGFzIGZhaXQgIgorI34gImQnZXJyZXVycywgY2hhcXVlIG5vdXZlbGxlIGxpZ25lIGVzdCBzdWl2aWUgcGFyIGF1IG1vaW5zIHVuZSBlc3BhY2UuIgorCisjfiBtc2dpZCAiMjAwOS0wMy0wOCIKKyN+IG1zZ3N0ciAiMDgtMDMtMjAwOSIKKworI34gbXNnaWQgIkk8YWRtaW5kaXI+L2luZm8vSTxwYWNrYWdlPi5zeW1ib2xzIgorI34gbXNnc3RyICJJPGFkbWluZGlyPi9pbmZvL0k8cGFxdWV0Pi5zeW1ib2xzIgorCisjfiBtc2dpZCAiSTxhZG1pbmRpcj4vaW5mby9JPHBhY2thZ2U+LnNobGlicyIKKyN+IG1zZ3N0ciAiSTxhZG1pbmRpcj4vaW5mby9JPHBhcXVldD4uc2hsaWJzIgorCisjfiBtc2dpZCAiMjAwOS0xMS0xMSIKKyN+IG1zZ3N0ciAiMTEtMTEtMjAwOSIKKworI34gbXNnaWQgIjIwMDktMDItMjYiCisjfiBtc2dzdHIgIjI2LTAyLTIwMDkiCisKKyN+IG1zZ2lkICIyMDA5LTA0LTEzIgorI34gbXNnc3RyICIxMy0wNC0yMDA5IgorCisjfiBtc2dpZCAiMjAwNy0xMC0wOCIKKyN+IG1zZ3N0ciAiMDgtMTAtMjAwNyIKKworIywgZnV6enkKKyN+fCBtc2dpZCAiIgorI358ICJEZWZpbmVkIGJ5IEI8ZHBrZz4gb24gdGhlIG1haW50YWluZXIgc2NyaXB0IGVudmlyb25tZW50IHRvIHRoZSB2ZXJzaW9uICIKKyN+fCAib2YgdGhlIGN1cnJlbnRseSBydW5uaW5nIEI8ZHBrZz4gaW5zdGFuY2UuIgorI34gbXNnaWQgIiIKKyN+ICJEZWZpbmVkIGJ5IEI8ZHBrZz4gb24gdGhlIG1haW50YWluZXIgc2NyaXB0IGVudmlyb25tZW50IHRvIHRoZSBwcml2YXRlICIKKyN+ICJsaWJyYXJ5IGRpcmVjdG9yeSBvZiB0aGUgY3VycmVudGx5IHJ1bm5pbmcgQjxkcGtnPiBpbnN0YW5jZS4iCisjfiBtc2dzdHIgIiIKKyN+ICJEw6lmaW5pZSBwYXIgQjxkcGtnPiBkYW5zIGwnZW52aXJvbm5lbWVudCBkdSBzY3JpcHQgZHUgcmVzcG9uc2FibGUsIGNldHRlICIKKyN+ICJ2YXJpYWJsZSBjb250aWVudCBsYSB2ZXJzaW9uIGRlIGwnaW5zdGFuY2UgZGUgQjxkcGtnPiBlbiBjb3VycyAiCisjfiAiZCdleMOpY3V0aW9uLiIKKworIywgZnV6enkKKyN+fCBtc2dpZCAiMjAwOS0wNC0xMyIKKyN+IG1zZ2lkICIyMDEwLTA0LTExIgorI34gbXNnc3RyICIxMy0wNC0yMDA5IgorCisjfiBtc2dpZCAiRm9ybWF0OiAzLjAgKGdpdCkgYW5kIDMuMCAoYnpyKSIKKyN+IG1zZ3N0ciAiRm9ybWF0OiAzLjAgKGdpdCkgZXQgMy4wIChienIpIgorCisjfiBtc2dpZCAiIgorI34gIkk8cHJpb3JpdHk+IGFuZCBJPHNlY3Rpb24+IHBsYWNlIHRoZSBwYWNrYWdlIHdpdGhpbiB0aGUgcmVsZWFzZSB0cmVlOyAiCisjfiAidGhlc2Ugb3VnaHQgbm90IHRvIGJlIGZvdW5kIGluIHRoZSBjb250cm9sIGZpbGUuIElmIHRoZSBwYWNrYWdlIGlzIGZvdW5kICIKKyN+ICJpbiBhIHN1YmRpcmVjdG9yeSBvZiBJPGJpbmFyeWRpcj4sIHRoYXQgd2lsbCBiZSBjaGVja2VkIGFnYWluc3QgIgorI34gIkk8c2VjdGlvbj4uIgorI34gbXNnc3RyICIiCisjfiAiTGVzIMOpbMOpbWVudHMgSTxwcmlvcml0w6k+IGV0IEk8c2VjdGlvbj4gcGxhY2VudCBsZSBwYXF1ZXQgZGFucyAiCisjfiAibCdhcmJvcmVzY2VuY2XCoDsgb24gbmUgZGV2cmFpdCBwYXMgbGVzIHRyb3V2ZXIgZGFucyBsZSBmaWNoaWVyICIKKyN+ICLCq8KgY29udHJvbMKgwrsuIFF1YW5kIGxlIHBhcXVldCBzZSB0cm91dmUgZGFucyB1biBzb3VzLXLDqXBlcnRvaXJlIGRlIEk8cmVwLSIKKyN+ICJkZS1iaW5haXJlcyw+IG9uIGxlIGNvbXBhcmUgYXZlYyBsZSBjb250ZW51IGRlIEk8c2VjdGlvbj4uIgorCisjfiBtc2dpZCAiIgorI34gIklmIHRoZSBob3N0IGFyY2hpdGVjdHVyZSBkaWZmZXJzIGZyb20gdGhlIGJ1aWxkIGFyY2hpdGVjdHVyZSAoYXMgaXMgdGhlICIKKyN+ICJjYXNlIGZvciBhIGNyb3NzLWNvbXBpbGF0aW9uKSwgYW5kIGlmIHRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZSAiCisjfiAiQjxQS0dfQ09ORklHX0xJQkRJUj4gaXMgbm90IHNldCwgdGhlbiBpdCBpcyBzZXQgdG8gYSB2YWx1ZSBzdWl0YWJsZSBmb3IgIgorI34gImNyb3NzLWNvbXBpbGF0aW9uIChcIi91c3IvSTxnbnUtc3lzdGVtLXR5cGU+L2xpYi9wa2djb25maWcvOi91c3Ivc2hhcmUvIgorI34gInBrZ2NvbmZpZ1wiKS4iCisjfiBtc2dzdHIgIiIKKyN+ICJTaSBsJ2FyY2hpdGVjdHVyZSBkZSBsJ2jDtHRlIGVzdCBkaWZmw6lyZW50ZSBkZSBsJ2FyY2hpdGVjdHVyZSBjb25zdHJ1aXRlICIKKyN+ICIoY29tbWUgYydlc3QgbGUgY2FzIGxvcnMgZGUgY29tcGlsYXRpb24gY3JvaXPDqWUpIGV0IHNpIGxhIHZhcmlhYmxlICIKKyN+ICJkJ2Vudmlyb25uZW1lbnQgQjxQS0dfQ09ORklHX0xJQkRJUj4gbidlc3QgcGFzIHJlbnNlaWduw6llLCBhbG9ycyBlbGxlIGVzdCAiCisjfiAicG9zaXRpb25uw6llIMOgIHVuZSB2YWxldXIgYWRhcHTDqWUgw6AgbGEgY29tcGlsYXRpb24gY3JvaXPDqWUgKFwiL3Vzci9JPHNlbG9uLSIKKyN+ICJzeXN0w6htZS1nbnU+L2xpYi9wa2djb25maWcvOi91c3Ivc2hhcmUvcGtnY29uZmlnXCIpLiIKKworI34gbXNnaWQgIiIKKyN+ICJTb21lIGVudmlyb25tZW50IHZhcmlhYmxlcyBkZWZpbmluZyBjb21waWxlciBhbmQgbGlua2VyIG9wdGlvbnMgYXJlIHNldCAiCisjfiAidG8gZGVmYXVsdCB2YWx1ZXMgdW5sZXNzIGFscmVhZHkgcHJlc2VudCBpbiB0aGUgZW52aXJvbm1lbnQuIE5vdGUgdGhhdCAiCisjfiAidGhpcyBtZWNoYW5pc20gd2FzIG9ubHkgaW50cm9kdWNlZCBpbiB2ZXJzaW9uIDEuMTQuMTcgb2YgZHBrZy1kZXYgYW5kIG5vdCAiCisjfiAiYWxsIEk8cnVsZXM+IGZpbGVzIGFuZCBidWlsZCB0b29scyB3aWxsIGhvbm91ciB0aGVzZSB2YXJpYWJsZXMsIHlldC4iCisjfiBtc2dzdHIgIiIKKyN+ICJDZXJ0YWluZXMgdmFyaWFibGVzIGQnZW52aXJvbm5lbWVudCBxdWkgZMOpZmluaXNzZW50IGxlcyBvcHRpb25zIGR1ICIKKyN+ICJjb21waWxhdGV1ciBldCBkZSBsJ8OpZGl0ZXVyIGRlIGxpZW4gc29udCByw6lnbMOpcyBwYXIgZMOpZmF1dCBzYXVmIHNpIGVsbGVzICIKKyN+ICJvbnQgZMOpasOgIMOpdMOpIGZpeMOpZXMgZGFucyBsJ2Vudmlyb25uZW1lbnQuIFZldWlsbGV6IG5vdGVyIHF1ZSBjZSBtw6ljYW5pc21lICIKKyN+ICJuJ2Egw6l0w6kgbWlzIGVuIHBsYWNlIHF1J8OgIHBhcnRpciBkZSBsYSB2ZXJzaW9uIDEuMTQuMTcgZGUgZHBrZy1kZXYgZXQgcXVlICIKKyN+ICJ0b3VzIGxlcyBmaWNoaWVycyBJPHJ1bGVzPiBldCBsZXMgb3V0aWxzIGRlIGNvbnN0cnVjdGlvbiBuJ3V0aWxpc2VudCBwYXMgIgorI34gImVuY29yZSBjZXMgdmFyaWFibGVzLiIKKworI34gbXNnaWQgIiIKKyN+ICJPcHRpbWl6YXRpb24gb3B0aW9ucyB3aGljaCBhcmUgcGFzc2VkIHRvIHRoZSBEZWJpYW4gYnVpbGQgc3lzdGVtIGFuZCBjYW4vIgorI34gInNob3VsZCBiZSBvdmVycmlkZGVuIGJ5IHRoZSBwYWNrYWdlIGJ1aWxkIGlmIG5lZWRlZCAoZGVmYXVsdCB2YWx1ZTogQjwtZyAtIgorI34gIk8yPiwgb3IgQjwtZ1xcIC1PMD4gaWYgQjxub29wdD4gaXMgc3BlY2lmaWVkIGluIERFQl9CVUlMRF9PUFRJT05TKS4gIgorI34gIk92ZXJyaWRpbmcgb3B0aW9ucyBjYW4gYmUgdXNlZCB0byBleHBsaWNpdGx5IHNldCBhIGhpZ2hlciBvcHRpbWl6YXRpb24gIgorI34gImxldmVsLCBvciB3b3JrIGFyb3VuZCBjb21waWxlciBidWdzLCB3aGljaCBvbmx5IGNhbiBiZSBzZWVuIHdpdGggc29tZSAiCisjfiAib3B0aW1pemF0aW9uIGxldmVscyAodGhlIGxhc3Qgb3B0IGxldmVsIFwid2luc1wiKS4iCisjfiBtc2dzdHIgIiIKKyN+ICJMZXMgb3B0aW9ucyBkJ29wdGltaXNhdGlvbiBxdWkgc29udCBwYXNzw6llcyBhdSBzeXN0w6htZSBkZSBjb25zdHJ1Y3Rpb24gIgorI34gIkRlYmlhbiBldCBxdWkgcGV1dmVudCDDqnRyZSByZW1wbGFjw6llcyBwYXIgbGUgZ8OpbsOpcmF0ZXVyIGRlIHBhcXVldCBzaSAiCisjfiAiYmVzb2luICh2YWxldXIgcGFyIGTDqWZhdXTCoDogQjwtZ1xcIC1PMj4sIG91IEI8LWdcXCAtTzA+IHNpIEI8bm9vcHQ+IGVzdCAiCisjfiAiaW5kaXF1w6kgZGFucyBERUJfQlVJTERfT1BUSU9OUykuIFJlbXBsYWNlciBjZXMgb3B0aW9ucyBwZXV0IMOqdHJlIHV0aWxpc8OpICIKKyN+ICJwb3VyIGZpeGVyIHVuIG5pdmVhdSBkJ29wdGltaXNhdGlvbiBwbHVzIMOpbGV2w6ksIG91IHBsdXMgZGUgdHJhdmFpbCBkYW5zICIKKyN+ICJsYSByZWNoZXJjaGUgZGUgYm9ndWVzLCBxdWkgbmUgcGV1dmVudCDDqnRyZSBkw6l0ZWN0w6lzIHF1J2F2ZWMgY2VydGFpbnMgIgorI34gIm5pdmVhdXggZCdvcHRpbWlzYXRpb24gKGxlIGRlcm5pZXIgbml2ZWF1IGQnb3B0aW1pc2F0aW9uIFwiZ2FnbmVcIikuIgorCisjfiBtc2dpZCAiQjxDRkxBR1NfQVBQRU5EPiIKKyN+IG1zZ3N0ciAiQjxDRkxBR1NfQVBQRU5EPiIKKworI34gbXNnaWQgIiIKKyN+ICJPcHRpbWl6YXRpb24gb3B0aW9ucyBhcHBlbmRlZCB0byB0aGUgY29tcGlsZXIgZmxhZ3MsIHdoaWNoIG11c3Qgbm90IGJlICIKKyN+ICJvdmVyd3JpdHRlbiBieSB0aGUgcGFja2FnZSAobW9zdGx5IHVzZWQgdG8gZm9yIHRlc3QgYnVpbGRzKS4gRGVmYXVsdCAiCisjfiAidmFsdWU6IGVtcHR5LiIKKyN+IG1zZ3N0ciAiIgorI34gIkxlcyBvcHRpb25zIGQnb3B0aW1pc2F0aW9uIHBhc3PDqWVzIHN1ciBsZXMgZHJhcGVhdXggZHUgY29tcGlsYXRldXIsIHF1aSAiCisjfiAibmUgZG9pdmVudCBwYXMgw6p0cmUgcmVtcGxhY8OpIHBhciBjZXV4IGR1IHBhcXVldCAobGUgcGx1cyBzb3V2ZW50IHV0aWxpc8OpICIKKyN+ICJwb3VyIGZhaXJlIGRlcyB0ZXN0cyBkZSBjb25zdHJ1Y3Rpb24pLiBWYWxldXIgcGFyIGTDqWZhdXTCoDogYXVjdW5lLiIKKworI34gbXNnaWQgIlNhbWUgYXMgQjxDRkxBR1M+IGZvciBDKysgc291cmNlcy4iCisjfiBtc2dzdHIgIklkZW50aXF1ZSDDoCBCPENGTEFHUz4gcG91ciBkZXMgc291cmNlcyBlbiBDKysuIgorCisjfiBtc2dpZCAiQjxDWFhGTEFHU19BUFBFTkQ+IgorI34gbXNnc3RyICJCPENYWEZMQUdTX0FQUEVORD4iCisKKyN+IG1zZ2lkICJTYW1lIGFzIEI8Q0ZMQUdTX0FQUEVORD4gZm9yIEMrKyBzb3VyY2VzLiIKKyN+IG1zZ3N0ciAiSWRlbnRpcXVlIMOgIEI8Q0ZMQUdTX0FQUEVORD4gcG91ciBkZXMgc291cmNlcyBlbiBDKysuIgorCisjfiBtc2dpZCAiU2FtZSBhcyBCPENGTEFHUz4gZm9yIEZvcnRyYW4gc291cmNlcy4iCisjfiBtc2dzdHIgIklkZW50aXF1ZSDDoCBCPENGTEFHUz4gcG91ciBkZXMgc291cmNlcyBlbiBGb3J0cmFuLiIKKworI34gbXNnaWQgIkI8RkZMQUdTX0FQUEVORD4iCisjfiBtc2dzdHIgIkI8RkZMQUdTX0FQUEVORD4iCisKKyN+IG1zZ2lkICJTYW1lIGFzIEI8Q0ZMQUdTX0FQUEVORD4gZm9yIEZvcnRyYW4gc291cmNlcy4iCisjfiBtc2dzdHIgImlkZW50aXF1ZSDDoCBCPENGTEFHU19BUFBFTkQ+IHBvdXIgZGVzIHNvdXJjZXMgZW4gRm9ydHJhbi4iCisKKyN+IG1zZ2lkICIiCisjfiAiUHJlcHJvY2Vzc29yIGZsYWdzIHdoaWNoIGFyZSBwYXNzZWQgdG8gdGhlIERlYmlhbiBidWlsZCBzeXN0ZW0gYW5kIGNhbi8iCisjfiAic2hvdWxkIGJlIG92ZXJyaWRkZW4gYnkgdGhlIHBhY2thZ2UgYnVpbGQgaWYgbmVlZGVkIChkZWZhdWx0OiBlbXB0eSkuICIKKyN+ICJUaGlzIG1hY3JvIGlzIHNlbGRvbSB1c2VkIChtb3N0IGJ1aWxkIHN5c3RlbXMganVzdCB1c2UgQjxDRkxBR1M+IGluc3RlYWQgIgorI34gIm9mIEI8Q1BQRkxBR1M+KS4iCisjfiBtc2dzdHIgIiIKKyN+ICJMZXMgZHJhcGVhdXggZHUgcHLDqXByb2Nlc3NldXIgcXVpIHNvbnQgcGFzc8OpcyBhdSBzeXN0w6htZSBkZSBjb25zdHJ1Y3Rpb24gIgorI34gIkRlYmlhbiBwZXV2ZW50IMOqdHJlIHJlbXBsYWPDqXMgcGFyIGNldXggZHUgcGFxdWV0IGVuIGNvbnN0cnVjdGlvbiBzaSAiCisjfiAiYmVzb2luIChwYXIgZMOpZmF1dMKgOiBhdWN1bikuIENldHRlIG1hY3JvIGVzdCByYXJlbWVudCB1dGlsaXPDqWUgKGxhICIKKyN+ICJwbHVwYXJ0IGRlcyBzeXN0w6htZXMgZGUgY29uc3RydWN0aW9uIHV0aWxpc2VudCBzaW1wbGVtZW50IEI8Q0ZMQUdTPiBhdSAiCisjfiAibGlldSBkZSBCPENQUEZMQUdTPikuIgorCisjfiBtc2dpZCAiQjxDUFBGTEFHU19BUFBFTkQ+IgorI34gbXNnc3RyICJCPENQUEZMQUdTX0FQUEVORD4iCisKKyN+IG1zZ2lkICIiCisjfiAiUHJlcHJvY2Vzc29yIGZsYWdzIGFwcGVuZGVkIHRvIHRoZSBwcmVwcm9jZXNzb3IgZmxhZ3MsIHdoaWNoIG11c3Qgbm90IGJlICIKKyN+ICJvdmVyd3JpdHRlbiBieSB0aGUgcGFja2FnZSAobW9zdGx5IHVzZWQgdG8gZm9yIHRlc3QgYnVpbGRzKS4gRGVmYXVsdCAiCisjfiAidmFsdWU6IGVtcHR5LiIKKyN+IG1zZ3N0ciAiIgorI34gIkRyYXBlYXV4IGR1IHByw6lwcm9jZXNzZXVyIGxpw6lzIMOgIGNldXggZGUgY2UgZGVybmllciwgcXVpIG5lIGRvaXZlbnQgcGFzICIKKyN+ICLDqnRyZSByZW1wbGFjw6lzIHBhciBjZXV4IGR1IHBhcXVldCAobGUgcGx1cyBzb3V2ZW50IHV0aWxpc8OpIHBvdXIgZGVzIHRlc3RzICIKKyN+ICJkZSBjb25zdHJ1Y3Rpb24pLiBWYWxldXIgcGFyIGTDqWZhdXTCoDogYXVjdW5zLiIKKworI34gbXNnaWQgIkI8TERGTEFHU19BUFBFTkQ+IgorI34gbXNnc3RyICJCPExERkxBR1NfQVBQRU5EPiIKKworI34gbXNnaWQgIiIKKyN+ICJPcHRpbWl6YXRpb24gb3B0aW9ucyBhcHBlbmRlZCB0byB0aGUgY29tcGlsZXIgZmxhZ3Mgd2hlbiBsaW5raW5nIGNvZGUsICIKKyN+ICJ3aGljaCBtdXN0IG5vdCBiZSBvdmVyd3JpdHRlbiBieSB0aGUgcGFja2FnZSAobW9zdGx5IHVzZWQgdG8gZm9yIHRlc3QgIgorI34gImJ1aWxkcykuIERlZmF1bHQgdmFsdWU6IGVtcHR5LiIKKyN+IG1zZ3N0ciAiIgorI34gIk9wdGlvbnMgZCdvcHRpbWlzYXRpb24gcGFzc8OpZXMgcGFyIGxlcyBkcmFwZWF1eCBkdSBjb21waWxhdGV1ciBkdXJhbnQgbGEgIgorI34gInBoYXNlIGRlIGxpYWlzb24sIHF1aSBuZSBkb2l2ZW50IHBhcyDDqnRyZSByZW1wbGFjw6lzIHBhciBjZXV4IGR1IHBhcXVldCAiCisjfiAiKGxlIHBsdXMgc291dmVudCB1dGlsaXPDqSBwb3VyIGRlcyB0ZXN0cyBkZSBjb25zdHJ1Y3Rpb24pLiBWYWxldXIgcGFyICIKKyN+ICJkw6lmYXV0wqA6IGF1Y3VuZXMuIgorCisjfiBtc2dpZCAiaW5jbHVkZSBhbGwgY2hhbmdlcy4iCisjfiBtc2dzdHIgImluY2x1dCB0b3VzIGxlcyBjaGFuZ2VtZW50cy4iCisKKyN+IG1zZ2lkICIyMDA5LTExLTEyIgorI34gbXNnc3RyICIxMi0xMS0yMDA5IgorCisjfiBtc2dpZCAiQjwtLWxpY2VuY2U+LCBCPC0tbGljZW5zZT4iCisjfiBtc2dzdHIgIkI8LS1saWNlbmNlPiwgQjwtLWxpY2Vuc2U+IgorCisjfiBtc2dpZCAiRGlzcGxheSBCPGRwa2c+IGxpY2VuY2UuIgorI34gbXNnc3RyICJBZmZpY2hlIGxhIGxpY2VuY2UgZGUgQjxkcGtnPi4iCisKKyN+IG1zZ2lkICJFTlZJUk9OTUVOVCBWQVJJQUJMRVMiCisjfiBtc2dzdHIgIlZBUklBQkxFUyBEJ0VOVklST05ORU1FTlQiCisKKyN+IG1zZ2lkICJCPERQS0dfTk9fVFNUUD4iCisjfiBtc2dzdHIgIkI8RFBLR19OT19UU1RQPiIKKworI34gbXNnaWQgIiIKKyN+ICJEZWZpbmUgdGhpcyB0byBzb21ldGhpbmcgaWYgeW91IHByZWZlciBCPGRwa2c+IHN0YXJ0aW5nIGEgbmV3IHNoZWxsICIKKyN+ICJyYXRoZXIgdGhhbiBzdXNwZW5kaW5nIGl0c2VsZiwgd2hpbGUgZG9pbmcgYSBzaGVsbCBlc2NhcGUuIgorI34gbXNnc3RyICIiCisjfiAiRG9ubmV6IGx1aSB1bmUgdmFsZXVyIHNpIHZvdXMgcHLDqWbDqXJleiBxdWUgQjxkcGtnPiBsYW5jZSB1biBub3V2ZWwgIgorI34gImludGVycHLDqXRldXIgZGUgY29tbWFuZGVzIHBsdXTDtHQgcXVlIGRlIHMnaW50ZXJyb21wcmUsIHBvdXIgZmFpcmUgdW4gIgorI34gImFwcGVsIMOgIGwnaW50ZXJwcsOpdGV1ciBkZSBjb21tYW5kZXMuIgorCisjfiBtc2dpZCAiMjAwOS0wNi0xMyIKKyN+IG1zZ3N0ciAiMTMtMDYtMjAwOSIKKworI34gbXNnaWQgIjIwMDktMDEtMDciCisjfiBtc2dzdHIgIjA3LTAxLTIwMDkiCisKKyN+IG1zZ2lkICJCPC0tbGljZW5zZT4sIEI8LS1saWNlbmNlPiIKKyN+IG1zZ3N0ciAiQjwtLWxpY2Vuc2U+LCBCPC0tbGljZW5jZT4iCisKKyN+IG1zZ2lkICJTaG93IHRoZSBjb3B5cmlnaHQgbGljZW5zaW5nIHRlcm1zIGFuZCBleGl0LiIKKyN+IG1zZ3N0ciAiIgorI34gIkFmZmljaGUgZGVzIHJlbnNlaWduZW1lbnRzIHN1ciBsZSBjb3B5cmlnaHQgZXQgbGEgbGljZW5jZSwgcHVpcyBxdWl0dGUuIgorCisjfiBtc2dpZCAiIgorI34gIlJlYWQgc3Vic3RpdHV0aW9uIHZhcmlhYmxlcyBpbiBJPHN1YnN0dmFyc2ZpbGU+OyB0aGUgZGVmYXVsdCBpcyBCPGRlYmlhbi8iCisjfiAic3Vic3R2YXJzPi4iCisjfiBtc2dzdHIgIiIKKyN+ICJMaXJlIGxlcyB2YXJpYWJsZXMgZGUgc3Vic3RpdHV0aW9uIGRhbnMgSTxmaWNoaWVyL3N1YnN0dmFycz7CoDsgbGUgZmljaGllciAiCisjfiAicGFyIGTDqWZhdXQgZXN0IEI8ZGViaWFuL3N1YnN0dmFycz4uIgorCisjfiBtc2dpZCAiQjwtbD4sIEI8LS1saWNlbnNlPiIKKyN+IG1zZ3N0ciAiQjwtbD4sIEI8LS1saWNlbnNlPiIKKworI34gbXNnaWQgIjIwMDktMDktMDYiCisjfiBtc2dzdHIgIjA2LTA5LTIwMDkiCisKKyN+IG1zZ2lkICJCPC1JPltJPGZpbGUtcGF0dGVybj5dIgorI34gbXNnc3RyICJCPC1JPltJPG1vdGlmLWRlLWZpY2hpZXI+XSIKKworI34gbXNnaWQgIjIwMDktMDgtMjAiCisjfiBtc2dzdHIgIjIwLTA4LTIwMDkiCisKKyN+IG1zZ2lkICJCPC0tbGljZW5jZT58QjwtLWxpY2Vuc2U+IgorI34gbXNnc3RyICJCPC0tbGljZW5jZT58QjwtLWxpY2Vuc2U+IgorCisjfiBtc2dpZCAiIgorI34gIkRpc3BsYXlzIHRoZSBCPGRzZWxlY3Q+IGNvcHlyaWdodCBhbmQgbGljZW5zZSBpbmZvcm1hdGlvbiBhbmQgZXhpdHMgIgorI34gInN1Y2Nlc3NmdWxseS4iCisjfiBtc2dzdHIgIiIKKyN+ICJBZmZpY2hlIGxlcyBpbmZvcm1hdGlvbnMgc3VyIGxlIGNvcHlyaWdodCBldCBzdXIgbGEgbGljZW5jZSBkZSAiCisjfiAiQjxkc2VsZWN0PiwgcHVpcyBzZSB0ZXJtaW5lIG5vcm1hbGVtZW50LiIKKworI34gbXNnaWQgIkI8LWg+IgorI34gbXNnc3RyICJCPC1oPiIKKworI34gbXNnaWQgIkI8LS13aXRob3V0LXF1aWx0PiIKKyN+IG1zZ3N0ciAiQjwtLXdpdGhvdXQtcXVpbHQ+IgorCisjfiBtc2dpZCAiIgorI34gIkRvbid0IHVzZSBxdWlsdCB0byBhcHBseSBwYXRjaGVzIGJ1dCBkcGtnLXNvdXJjZSdzIG93biBjb2RlLiBJdCB3b24ndCBiZSAiCisjfiAicG9zc2libGUgdG8gdXNlIHF1aWx0IGRpcmVjdGx5IG9uIHRoZSB1bnBhY2tlZCBkaXJlY3RvcnkgYnV0IGl0IHdpbGwgYmUgIgorI34gImZyZWUgb2YgcXVpbHQncyB0ZW1wb3JhcnkgZmlsZXMgYXMgd2VsbC4iCisjfiBtc2dzdHIgIiIKKyN+ICJOZSBwYXMgdXRpbGlzZXIgwqvCoHF1aWx0wqDCuyBhZmluIGQnYXBwbGlxdWVyIGRlcyBjb3JyZWN0aWZzLCBtYWlzIGxlIGNvZGUgIgorI34gIm3Dqm1lIGRlIGRwa2ctc291cmNlLiBJbCBuZSBzZXJhIHBhcyBwb3NzaWJsZSBkJ3V0aWxpc2VyIGRpcmVjdGVtZW50ICIKKyN+ICLCq8KgcXVpbHTCoMK7IHN1ciBsZSByw6lwZXJ0b2lyZSBkw6lwYXF1ZXTDqSBtYWlzIGlsIHNlcmEgbGlicmUgZCdlbiBmYWlyZSB1c2FnZSAiCisjfiAic3VyIGxlcyBmaWNoaWVycyB0ZW1wb3JhaXJlcy4iCisKKyN+IG1zZ2lkICIyMDA4LTA0LTA5IgorI34gbXNnc3RyICIwOS0wNC0yMDA4IgorCisjfiBtc2dpZCAiMjAwNy0wMy0wNiIKKyN+IG1zZ3N0ciAiMDYtMDMtMjAwNyIKKworI34gbXNnaWQgIjIwMDctMDYtMTIiCisjfiBtc2dzdHIgIjEyLTA2LTIwMDciCisKKyN+IG1zZ2lkICJCPC1aPkk8Y29tcHJlc3Npb24+IgorI34gbXNnc3RyICJCPC1aPkk8Y29tcHJlc3Npb24+IgorCisjfiBtc2dpZCAiQjwtej5JPGxldmVsPiIKKyN+IG1zZ3N0ciAiQjwtej5JPG5pdmVhdT4iCisKKyN+IG1zZ2lkICIyMDA5LTAxLTA0IgorI34gbXNnc3RyICIwNC0wMS0yMDA5IgorCisjfiBtc2dpZCAiMjAwOS0wMi0xOCIKKyN+IG1zZ3N0ciAiMTgtMDItMjAwOSIKKworI34gbXNnaWQgIkZvcmdldCBhYm91dCB1bmluc3RhbGxlZCB1bmF2YWlsYWJsZSBwYWNrYWdlcy4iCisjfiBtc2dzdHIgIiIKKyN+ICJPdWJsaWUgY2UgcXVpIGNvbmNlcm5lIGxlcyBwYXF1ZXRzIG5vbiBpbnN0YWxsw6lzIG91IG5vbiBkaXNwb25pYmxlcy4iCisKKyN+IG1zZ2lkICJpbnN0YWxsLWluZm8iCisjfiBtc2dzdHIgImluc3RhbGwtaW5mbyIKKworI34gbXNnaWQgImluc3RhbGwtaW5mbyAtIGNyZWF0ZSBvciB1cGRhdGUgZW50cnkgaW4gSW5mbyBkaXIgZmlsZSIKKyN+IG1zZ3N0ciAiIgorI34gImluc3RhbGwtaW5mbyAtIENyw6lhdGlvbiBvdSBtaXNlIMOgIGpvdXIgZCd1bmUgZW50csOpZSBkYW5zIGxlIGZpY2hpZXIgZGlyICIKKyN+ICJkdSBzeXN0w6htZSBJbmZvLiIKKworI34gbXNnaWQgIiIKKyN+ICJCPGluc3RhbGwtaW5mbz4gW0I8LS12ZXJzaW9uPl0gW0I8LS1oZWxwPl0gW0I8LS1kZWJ1Zz5dIFtCPC0tIgorI34gIm1heHdpZHRoPT5JPG5ubj5dIFtCPC0tc2VjdGlvbiA+STxyZWdleHA+QjwgPkk8dGl0bGU+XSBbQjwtLSIKKyN+ICJpbmZvZGlyPT5JPHh4eD5dIFtCPC0tYWxpZ249Pkk8bm5uPl0gW0I8LS1xdWlldD5dIFtCPC0tbWVudWVudHJ5PT5JPHh4eD5dICIKKyN+ICJbQjwtLWRlc2NyaXB0aW9uPT5JPHh4eD5dIFtCPC0tcmVtb3ZlPnxCPC0tcmVtb3ZlLWV4YWN0bHk+XSBbQjwtLT5dICIKKyN+ICJJPGZpbGVuYW1lPiIKKyN+IG1zZ3N0ciAiIgorI34gIkI8aW5zdGFsbC1pbmZvPiBbQjwtLXZlcnNpb24+XSBbQjwtLWhlbHA+XSBbQjwtLWRlYnVnPl0gW0I8LS0iCisjfiAibWF4d2lkdGg9bm5uPl0gW0I8LS1zZWN0aW9uID5JPHJlZ2V4cD5CPCA+STx0aXRsZT5dIFtCPC0taW5mb2Rpcj0+STx4eHg+XSAiCisjfiAiW0I8LS1hbGlnbj0+STxubm4+XSBbQjwtLXF1aWV0Pl0gW0I8LS1tZW51ZW50cnk9Pkk8eHh4Pl0gW0I8LS0iCisjfiAiZGVzY3JpcHRpb249Pkk8eHh4Pl0gW0I8LS1yZW1vdmU+fEI8LS1yZW1vdmUtZXhhY3RseT5dIFtCPC0tPl0gSTxmaWNoaWVyPiIKKworI34gbXNnaWQgIiIKKyN+ICJCPGluc3RhbGwtaW5mbz4gY3JlYXRlcywgdXBkYXRlcyBvciByZW1vdmVzIGVudHJpZXMgaW4gdGhlIEluZm8gQjxkaXI+ICIKKyN+ICJmaWxlLiBXaGVuIHVwZGF0aW5nIG9yIGNyZWF0aW5nIGVudHJpZXMsIGlmIG5vIGRlc2NyaXB0aW9uIGlzIHNwZWNpZmllZCAiCisjfiAib24gdGhlIGNvbW1hbmQgbGluZSBvciBpbiB0aGUgSW5mbyBmaWxlLCBpdCBhdHRlbXB0cyB0byBndWVzcyBhICIKKyN+ICJkZXNjcmlwdGlvbiBmcm9tIHRoZSBjb250ZW50cyBvZiB0aGUgZmlsZS4iCisjfiBtc2dzdHIgIiIKKyN+ICJCPGluc3RhbGwtaW5mbz4gY3LDqWUsIG1ldCDDoCBqb3VyIG91IHN1cHByaW1lIGRlcyBlbnRyw6llcyBkYW5zIGxlIGZpY2hpZXIgIgorI34gIkI8ZGlyPiBkJ0luZm8uIFF1YW5kLCBwb3VyIGxhIGNyw6lhdGlvbiBvdSBsYSBtaXNlIMOgIGpvdXIgZCd1bmUgZW50csOpZSwgb24gIgorI34gIm5lIGRvbm5lIGF1Y3VuZSBkZXNjcmlwdGlvbiBzdXIgbGEgbGlnbmUgZGUgY29tbWFuZGUgb3UgZGFucyBsZSBmaWNoaWVyICIKKyN+ICJJbmZvLCBCPGluc3RhbGwtaW5mbz4gZXNzYWllIGQnZW4gZGV2aW5lciB1bmUgw6AgdHJhdmVycyBsZSBjb250ZW51IGR1ICIKKyN+ICJmaWNoaWVyLiIKKworI34gbXNnaWQgIiIKKyN+ICJTZWUgdGhlIGRlc2NyaXB0aW9uIG9mIHRoZSBCPC0tc2VjdGlvbj4gb3B0aW9uIGZvciBkZXRhaWxzIG9mIHdoZXJlIHRoZSAiCisjfiAiZW50cnkgd2lsbCBiZSBwbGFjZWQgYW5kIGEgZGVzY3JpcHRpb24gb2YgdGhlIGV4cGVjdGVkIGZvcm1hdCBvZiB0aGUgIgorI34gIkI8ZGlyPiBmaWxlLiIKKyN+IG1zZ3N0ciAiIgorI34gIlZveWV6IGxhIGRlc2NyaXB0aW9uIGRlIGwnb3B0aW9uIEI8LS1zZWN0aW9uPiBwb3VyIGRlcyBwcsOpY2lzaW9ucyBzdXIgIgorI34gImwnZW1wbGFjZW1lbnQgY2hvaXNpIHBvdXIgbCdlbnRyw6llIGV0IHN1ciBsZSBmb3JtYXQgYXR0ZW5kdSBkdSBmaWNoaWVyICIKKyN+ICJCPGRpci4+IgorCisjfiBtc2dpZCAiQjxbLS1dID5JPGZpbGVuYW1lPiIKKyN+IG1zZ3N0ciAiQjxbLS1dID5JPG5vbS1kZS1maWNoaWVyPiIKKworI34gbXNnaWQgIiIKKyN+ICJHaXZlcyB0aGUgZmlsZW5hbWUgb2YgdGhlIEluZm8gZmlsZSB3aG9zZSBtZW51IGVudHJ5IGlzIHRvIGJlIGNyZWF0ZWQsICIKKyN+ICJ1cGRhdGVkIG9yIHJlbW92ZWQuIElmIEI8LS1yZW1vdmUtZXhhY3RseT4gaXMgc3BlY2lmaWVkLCB0aGVuIEk8ZmlsZW5hbWU+ICIKKyN+ICJzaG91bGQgYmUgdGhlIGV4YWN0IGVudHJ5IG5hbWUgdG8gYmUgcmVtb3ZlZCAoZS5nLiBcImVtYWNzLTIwL2VtYWNzXCIgb3IgIgorI34gIlwiZ2NjXCIpLCBvdGhlcndpc2UgdGhlIGJhc2VuYW1lIG9mIHRoaXMgZmlsZW5hbWUgaXMgdXNlZCBhcyB0aGUgcmVmZXJlbnQgIgorI34gIm9mIHRoZSBtZW51IGVudHJ5IHdoaWNoIGlzIGNyZWF0ZWQsIHVubGVzcyB0aGVyZSdzIGFuIG92ZXJyaWRpbmcgU1RBUlQtIgorI34gIklORk8tRElSIGVudHJ5IGluc2lkZSB0aGUgZ2l2ZW4gZmlsZS4gVGhpcyBmaWxlIG11c3QgdGhlcmVmb3JlIGV4aXN0IChvciAiCisjfiAiYmUgYWJvdXQgdG8gYmUgaW5zdGFsbGVkLCBvciBoYXZlIHByZXZpb3VzbHkgZXhpc3RlZCB3aGVuIHJlbW92aW5nIGFuICIKKyN+ICJlbnRyeSkgaW4gdGhlIHNhbWUgZGlyZWN0b3J5IGFzIHRoZSBCPGRpcj4gZmlsZSAoc2VlIHRoZSBCPC0taW5mb2Rpcj4gIgorI34gIm9wdGlvbikuIgorI34gbXNnc3RyICIiCisjfiAiRG9ubmUgbGUgbm9tIGR1IGZpY2hpZXIgSW5mbyBkb250IGwnZW50csOpZSBkZSBtZW51IGRvaXQgw6p0cmUgY3LDqcOpZSwgbWlzZSAiCisjfiAiw6Agam91ciBvdSBzdXBwcmltw6llLiBTaSBsJ29wdGlvbiBCPC0tcmVtb3ZlLWV4YWN0bHk+IGVzdCBwcsOpY2lzw6llLCAiCisjfiAiSTxmaWNoaWVyPiBzZXJhIGxlIG5vbSBleGFjdCBkZSBsJ2VudHLDqWUgw6Agc3VwcHJpbWVyIChwLiBleC4gwqvCoGVtYWNzLTIwLyIKKyN+ICJlbWFjc8Kgwrsgb3UgwqvCoGdjY8KgwrspwqA7IGRhbnMgbGVzIGF1dHJlcyBjYXMsIGxhIHBhcnRpZSBwcmluY2lwYWxlIGRlIGNlIG5vbSAiCisjfiAic2VydCBkZSByw6lmw6lyZW50IHBvdXIgbCdlbnRyw6llIGRlIG1lbnUgcXVpIGVzdCBjcsOpw6llLCDDoCBtb2lucyBxdSdpbCB5ICIKKyN+ICJhaXQsIGRhbnMgbGUgZmljaGllciBkb25uw6ksIHVuZSBlbnRyw6llIFNUQVJULUlORk8tRElSLiBDZSBmaWNoaWVyIGRvaXQgIgorI34gImRvbmMgZXhpc3RlciAob3UgYmllbiDDqnRyZSBzdXIgbGUgcG9pbnQgZCfDqnRyZSBpbnN0YWxsw6ksIG91IGJpZW4gZG9pdCAiCisjfiAiYXZvaXIgZXhpc3TDqSBlbiBjYXMgZGUgc3VwcHJlc3Npb24gZCdlbnRyw6llKSBkYW5zIGxlIG3Dqm1lIHLDqXBlcnRvaXJlIHF1ZSAiCisjfiAibGUgZmljaGllciBCPGRpcj4gKHZveWV6IGwnb3B0aW9uIEI8LS1pbmZvZGlyPikuIgorCisjfiBtc2dpZCAiIgorI34gIklmIEk8ZmlsZW5hbWU+IGVuZHMgaW4gQjwuZ3o+LCBpdCBpcyB0YWtlbiB0byByZWZlciB0byBhIGZpbGUgY29tcHJlc3NlZCAiCisjfiAid2l0aCBCPGd6aXA+OyBpZiBpdCBkb2Vzbid0IGV4aXN0LCBidXQgYSBjb3JyZXNwb25kaW5nIEk8ZmlsZW5hbWU+QjwuZ3o+ICIKKyN+ICJkb2VzLCB0aGUgbGF0dGVyIGlzIHVzZWQgaW5zdGVhZC4iCisjfiBtc2dzdHIgIiIKKyN+ICJJbmRpcXVlIHF1ZSBzaSB1bmUgZW50csOpZSBkb2l0IMOqdHJlIGNyw6nDqWUsIGVsbGUgc2VyYSBwbGFjw6llIGRhbnMgbGEgIgorI34gInNlY3Rpb24gZHUgdW4gZmljaGllciBjb21wcmltw6kgYXZlYyBCPGd6aXA+IDsgcydpbCBuJ2V4aXN0ZSBwYXMsIG1haXMgIgorI34gInF1J2lsIHkgYSB1biBJPG5vbS1kZS1maWNoaWVyPkI8Lmd6Piwgb24gdXRpbGlzZXJhIGNlIGRlcm5pZXIuIgorCisjfiBtc2dpZCAiIgorI34gIldoZW4gYWRkaW5nIG9yIHVwZGF0aW5nIGVudHJpZXMsIHRoZSBmaWxlIG11c3QgZXhpc3QgYXQgdGhlIHBhdGggIgorI34gInNwZWNpZmllZCAocG9zc2libHkgd2l0aCBhbiBhZGRpdGlvbmFsIEI8Lmd6PiBleHRlbnNpb24pLiIKKyN+IG1zZ3N0ciAiIgorI34gIlF1YW5kIG9uIGFqb3V0ZSBvdSBvbiBtZXQgw6Agam91ciBkZXMgZW50csOpZXMsIGNlIGZpY2hpZXIgZG9pdCBleGlzdGVyICIKKyN+ICJkYW5zIGxlIGNoZW1pbiBzcMOpY2lmacOpIChzaSBwb3NzaWJsZSBhdmVjIGwnZXh0ZW5zaW9uIEI8Lmd6PiAiCisjfiAic3VwcGzDqW1lbnRhaXJlKS4iCisKKyN+IG1zZ2lkICJCPC0tcmVtb3ZlPiIKKyN+IG1zZ3N0ciAiQjwtLXJlbW92ZT4iCisKKyN+IG1zZ2lkICIiCisjfiAiU3BlY2lmaWVzIHRoYXQgdGhlIGVudHJ5IGZvciB0aGUgZmlsZSBJPGZpbGVuYW1lPiBpcyB0byBiZSByZW1vdmVkOyBieSAiCisjfiAiZGVmYXVsdCBlbnRyaWVzIGFyZSBjcmVhdGVkIG9yIHVwZGF0ZWQuIgorI34gbXNnc3RyICIiCisjfiAiRGVtYW5kZSBxdWUgbCdlbnRyw6llIHBvdXIgbGUgZmljaGllciBJPG5vbS1kZS1maWNoaWVyPiBzb2l0IGTDqXRydWl0ZcKgOyAiCisjfiAicGFyIGTDqWZhdXQgbGVzIGVudHLDqWVzIHNvbnQgY3LDqcOpZXMgb3UgbWlzZXMgw6Agam91ci4iCisKKyN+IG1zZ2lkICIiCisjfiAiSWYgdGhlIHJlbW92YWwgcmVzdWx0cyBpbiBhIHNlY3Rpb24gYmVjb21pbmcgZW1wdHksIHRoZSBzZWN0aW9uIGhlYWRpbmcgIgorI34gIihhbmQgdGhlIHNwYXJlIGJsYW5rIGxpbmUpIHdpbGwgYmUgcmVtb3ZlZCBhcyB3ZWxsLCB1bmxlc3MgdGhpcyBpcyB0aGUgIgorI34gImxhc3Qgc2VjdGlvbiBpbiB0aGUgZmlsZSBvciBCPC0ta2VlcC1vbGQ+IGlzIHNwZWNpZmllZC4gU2VlIHRoZSBCPC0tIgorI34gInNlY3Rpb24+IG9wdGlvbiBmb3IgZGV0YWlscyBhYm91dCB0aGUgZXhwZWN0ZWQgZm9ybWF0IG9mIHRoZSBCPGRpcj4gZmlsZS4iCisjfiBtc2dzdHIgIiIKKyN+ICJRdWFuZCBsYSBzdXBwcmVzc2lvbiBkJ3VuZSBlbnRyw6llIHZpZGUgdW5lIHNlY3Rpb24sIGwnZW4tdMOqdGUgKGV0IGxhICIKKyN+ICJsaWduZSBibGFuY2hlIGTDqXRhY2jDqWUpIGRlIGxhIHNlY3Rpb24gZXN0IHN1cHByaW3DqWUgYXVzc2ksIMOgIG1vaW5zIHF1ZSBjZSAiCisjfiAibmUgc29pdCBsYSBkZXJuacOocmUgc2VjdGlvbiBkdSBmaWNoaWVyIG91IGJpZW4gcXVlIGwnb3B0aW9uIEI8LS1rZWVwLW9sZD4gIgorI34gInNvaXQgaW5kaXF1w6llLiBWb3lleiBsJ29wdGlvbiBCPC0tc2VjdGlvbj4gcG91ciBkZXMgcHLDqWNpc2lvbnMgc3VyIGxlICIKKyN+ICJmb3JtYXQgYXR0ZW5kdSBkdSBmaWNoaWVyIEI8ZGlyPi4iCisKKyN+IG1zZ2lkICIiCisjfiAiSWYgdGhlcmUgYXJlIHNldmVyYWwgc3VpdGFibGUgZW50cmllcyBpbiB0aGUgQjxkaXI+IGZpbGUsIG9ubHkgdGhvc2UgaW4gIgorI34gInRoZSBmaXJzdCBtYXRjaGluZyBjb250aWd1b3VzIGdyb3VwIHdpbGwgYmUgcmVtb3ZlZCBhbmQgdGhlIG90aGVycyAiCisjfiAic2lsZW50bHkgaWdub3JlZC4iCisjfiBtc2dzdHIgIiIKKyN+ICJRdWFuZCBpbCB5IGEgcGx1c2lldXJzIGVudHLDqWVzIHBvc3NpYmxlcyBkYW5zIGxlIGZpY2hpZXIgQjxkaXI+LCBzZXVsZXMgIgorI34gImNlbGxlcyBxdWkgYXBwYXJ0aWVubmVudCBhdSBwcmVtaWVyIGdyb3VwZSBjb250aWd1IGNvcnJlc3BvbmRhbnQgc29udCAiCisjfiAic3VwcHJpbcOpZXPCoDsgbGVzIGF1dHJlcyBzb250IHNpbGVuY2lldXNlbWVudCBpZ25vcsOpZXMuIgorCisjfiBtc2dpZCAiIgorI34gIkl0IGlzIG5vdCBhbiBlcnJvciBmb3Igbm8gc3VpdGFibGUgZW50cnkgdG8gYmUgZm91bmQsIHRob3VnaCBCPGluc3RhbGwtIgorI34gImluZm8+IHdpbGwgaXNzdWUgYSB3YXJuaW5nIHVubGVzcyB0aGUgQjwtLXF1aWV0PiBvcHRpb24gd2FzIHNwZWNpZmllZC4iCisjfiBtc2dzdHIgIiIKKyN+ICJOZSBwYXMgdHJvdXZlciBkJ2VudHLDqWUgcG9zc2libGUgbidlc3QgcGFzIHVuZSBlcnJldXIsIGJpZW4gcXVlIEI8aW5zdGFsbC0iCisjfiAiaW5mbz4gYXZlcnRpc3NlIGR1IHByb2Jsw6htZSBxdWFuZCBsJ29wdGlvbiBCPC0tcXVpZXQ+IG4nYSBwYXMgw6l0w6kgIgorI34gImRlbWFuZMOpZS4iCisKKyN+IG1zZ2lkICIiCisjfiAiV2hlbiBCPC0tcmVtb3ZlPiBpcyBzcGVjaWZpZWQgdGhlIEI8LS1tYXh3aWR0aD4sIEI8LS1hbGlnbj4gYW5kIEI8LS0iCisjfiAiY2FsaWduPiBmb3JtYXR0aW5nIG9wdGlvbnMgYXJlIHNpbGVudGx5IGlnbm9yZWQuIgorI34gbXNnc3RyICIiCisjfiAiUXVhbmQgQjwtLXJlbW92ZT4gZXN0IHNww6ljaWZpw6ksIGxlcyBvcHRpb25zIGRlIGZvcm1hdGFnZSBCPC0tbWF4d2lkdGg+LCAiCisjfiAiQjwtLWFsaWduPiBldCBCPC0tY2FsaWduPiBzb250IHNpbGVuY2lldXNlbWVudCBpZ25vcsOpZXMuIgorCisjfiBtc2dpZCAiQjwtLXJlbW92ZS1leGFjdGx5PiIKKyN+IG1zZ3N0ciAiQjwtLXJlbW92ZS1leGFjdGx5PiIKKworI34gbXNnaWQgIiIKKyN+ICJUaGlzIG9wdGlvbiBpcyBlc3NlbnRpYWxseSB0aGUgc2FtZSBhcyBCPC0tcmVtb3ZlPiBleGNlcHQgdGhhdCAiCisjfiAiSTxmaWxlbmFtZT4gaXMgdGFrZW4gYXMgdGhlIGV4YWN0IGVudHJ5IHRvIGJlIHJlbW92ZWQsIHJhdGhlciB0aGFuIGFzIHRoZSAiCisjfiAibmFtZSBvZiBhbiBleGlzdGluZyBmaWxlLiBUaGlzIGNhbiBiZSBpbXBvcnRhbnQgd2hlbiB0cnlpbmcgdG8gcmVtb3ZlICIKKyN+ICJlbnRyaWVzIHRoYXQgcmVmZXIgdG8gaW5mbyBmaWxlcyBpbiBzdWJkaXJlY3RvcmllcyAoZS5nLiBcImVtYWNzLTIwL2VtYWNzIgorI34gIlwiKSBiZWNhdXNlIEI8LS1yZW1vdmU+IHdpbGwgb3BlcmF0ZSBvbiB0aGUgYmFzZW5hbWUgb2YgdGhlIGdpdmVuICIKKyN+ICJJPGZpbGVuYW1lPiByYXRoZXIgdGhhbiB0aGUgZXhhY3QgbmFtZSBnaXZlbi4gKGkuZS4gIEI8LS1yZW1vdmU+ICIKKyN+ICJcImVtYWNzLTIwL2VtYWNzXCIgd291bGQgY2F1c2UgQjxpbnN0YWxsLWluZm8+IHRvIGxvb2sgZm9yIFwiZW1hY3NcIiwgbm90ICIKKyN+ICJcImVtYWNzLTIwL2VtYWNzXCIpLiIKKyN+IG1zZ3N0ciAiIgorI34gIkNldHRlIG9wdGlvbiBlc3QgcHJhdGlxdWVtZW50IGlkZW50aXF1ZSDDoCBCPC0tcmVtb3ZlPiBtYWlzIEk8ZmljaGllcj4gZXN0ICIKKyN+ICJjb21wcmlzIGNvbW1lIGxlIG5vbSBleGFjdCBkZSBsJ2VudHLDqWUgw6Agc3VwcHJpbWVyIHBsdXTDtHQgcXVlIGNvbW1lIGxlICIKKyN+ICJub20gZCd1biBmaWNoaWVyIGV4aXN0YW50LiBDZWxhIHBldXQgw6p0cmUgaW1wb3J0YW50IHF1YW5kIG9uIGVzc2FpZSBkZSAiCisjfiAic3VwcHJpbWVyIGRlcyBlbnRyw6llcyBwb3VyIGRlcyBmaWNoaWVycyBpbmZvIGRhbnMgZGVzIHNvdXMtcsOpcGVydG9pcmVzICIKKyN+ICIocC7CoGV4LiDCq8KgZW1hY3MtMjAvZW1hY3PCoMK7KcKgY2FyIEI8LS1yZW1vdmU+IG9ww6hyZSBzdXIgbGEgcGFydGllICIKKyN+ICJwcmluY2lwYWxlIGR1IEk8ZmljaGllcj4gcGx1dMO0dCBxdWUgc3VyIGxlIG5vbSBleGFjdC4gKHAuwqBleC4gIEI8LS0iCisjfiAicmVtb3ZlPiDCq8KgZW1hY3MtMjAvZW1hY3PCoMK7IGZvcmNlcmFpdCBCPGluc3RhbGwtaW5mbz4gw6AgY2hlcmNoZXIgIgorI34gIsKrwqBlbWFjc8KgwrssIHBhcyDCq8KgZW1hY3MtMjAvZW1hY3PCoMK7KS4iCisKKyN+IG1zZ2lkICJCPC0tc2VjdGlvbiA+STxyZWdleHAgdGl0bGU+IgorI34gbXNnc3RyICJCPC0tc2VjdGlvbiA+STxleHAtcmVnIHRpdHJlPiIKKworI34gbXNnaWQgIiIKKyN+ICJTcGVjaWZpZXMgdGhhdCBpZiBhIG5ldyBlbnRyeSBpcyB0byBiZSBtYWRlLCBpdCBzaG91bGQgYmUgcGxhY2VkIGluIGEgIgorI34gInNlY3Rpb24gb2YgdGhlIEI8ZGlyPiBmaWxlIHdob3NlIHRpdGxlIG1hdGNoZXMgSTxyZWdleHA+LiAgSWYgbm8gc3VjaCAiCisjfiAic2VjdGlvbiBleGlzdHMsIG9uZSB3aWxsIGJlIGNyZWF0ZWQgYXMgdGhlIHNlY29uZCB0byBsYXN0IHNlY3Rpb24gaW4gdGhlICIKKyN+ICJmaWxlIChzZWUgYmVsb3cpIHdpdGggdGl0bGUgSTx0aXRsZT4uICBBIHNlY3Rpb24gaXMgYSBwYXJ0IG9mIHRoZSBCPGRpcj4gIgorI34gIm1lbnUgZGVsaW1pdGVkIGJ5IGJsYW5rIGxpbmVzOyB0aGUgZmlyc3QgbGluZSBpcyBhc3N1bWVkIHRvIGJlIHRoZSB0aXRsZS4iCisjfiBtc2dzdHIgIiIKKyN+ICJJbmRpcXVlIHF1ZSBsJ2VudHLDqWUgcXVpIGRvaXQgw6p0cmUgY3LDqcOpZSBzZXJhIHBsYWPDqWUgZGFucyBsYSBzZWN0aW9uIGR1ICIKKyN+ICJmaWNoaWVyIEI8ZGlyPiBkb250IGxlIHRpdHJlIGNvcnJlc3BvbmQgw6AgSTxleHAtcmVnPi4gU2kgdW5lIHRlbGxlICIKKyN+ICJzZWN0aW9uIG4nZXhpc3RlIHBhcywgdW5lIG5vdXZlbGxlIGRlcm5pw6hyZSBzZWN0aW9uICh2b3lleiBjaS1hcHLDqHMpIGVzdCAiCisjfiAiY3LDqcOpZSBkYW5zIGxlIGZpY2hpZXIsIGF2ZWMgdW4gdGl0cmUgw6lnYWwgw6AgSTx0aXRyZT4uIFVuZSBzZWN0aW9uIGVzdCB1biAiCisjfiAiY2hvaXggcG9zc2libGUgZGFucyBsZSBtZW51IGRlIEI8ZGlyPsKgOyBsZXMgY2hvaXggc29udCBzw6lwYXLDqXMgcGFyIGRlcyAiCisjfiAibGlnbmVzIGJsYW5jaGVzwqA7IGxhIHByZW1pw6hyZSBsaWduZSBlc3Qgc3VwcG9zw6llIHJlcHLDqXNlbnRlciBsZSB0aXRyZS4iCisKKyN+IG1zZ2lkICIiCisjfiAiSWYgYSBuZXcgZW50cnkgaXMgdG8gYmUgY3JlYXRlZCwgQjxpbnN0YWxsLWluZm8+IHdpbGwgYXR0ZW1wdCB0byBpbnNlcnQgIgorI34gIml0IHdpdGhpbiB0aGUgc2VjdGlvbiBpbiBhbHBoYWJldGljIG9yZGVyLiBJZiB0aGUgZW50cmllcyBpbiB0aGUgc2VjdGlvbiAiCisjfiAiYXJlbid0IGFscmVhZHkgc29ydGVkLCB0aGUgbmV3IGxvY2F0aW9uIHdpdGhpbiB0aGUgc2VjdGlvbiB3aWxsIGJlICIKKyN+ICJ1bnByZWRpY3RhYmxlLiBUaGUgb3JkZXIgb2YgZXhpc3RpbmcgZW50cmllcyB3aWxsIG5vdCBiZSBjaGFuZ2VkLiIKKyN+IG1zZ3N0ciAiIgorI34gIlF1YW5kIHVuZSBub3V2ZWxsZSBlbnRyw6llIGRvaXQgw6p0cmUgY3LDqcOpZSwgQjxpbnN0YWxsLWluZm8+IGVzc2FpZSBkZSAiCisjfiAibCdpbnPDqXJlciBkYW5zIGxhIHNlY3Rpb24gc2Vsb24gbCdvcmRyZSBhbHBoYWLDqXRpcXVlLiBTaSBsZXMgZW50csOpZXMgZGUgIgorI34gImxhIHNlY3Rpb24gbmUgc29udCBwYXMgZMOpasOgIHRyacOpZXMsIG9uIG5lIHBldXQgcHLDqXZvaXIgbCdlbXBsYWNlbWVudCBxdWkgIgorI34gInNlcmEgY2hvaXNpLiBMJ29yZHJlIGV4aXN0YW50IGRlcyBlbnRyw6llcyBuJ2VzdCBwYXMgbW9kaWZpw6kuIgorCisjfiBtc2dpZCAiIgorI34gIklmIHRoZSBCPC0tc2VjdGlvbj4gb3B0aW9uIGlzIG5vdCBzcGVjaWZpZWQsIEI8aW5zdGFsbC1pbmZvPiB3aWxsIGxvb2sgIgorI34gImZvciBhIHRpdGxlIGluIHRoZSBJbmZvIGZpbGUgaXRzZWxmIGJ5IGxvb2tpbmcgZm9yIGFuIGVudHJ5IG9mIHRoZSBmb3JtIgorI34gbXNnc3RyICIiCisjfiAiU2kgbCdvcHRpb24gQjwtLXNlY3Rpb24+IG4nZXN0IHBhcyBzcMOpY2lmacOpZSwgQjxpbnN0YWxsLWluZm8+IHJlY2hlcmNoZXJhICIKKyN+ICJ1biB0aXRyZSBkYW5zIGxlIGZpY2hpZXIgSW5mbyBsdWktbcOqbWUsIGVuIHJlY2hlcmNoYW50IHVuZSBlbnRyw6llIGRlIGxhICIKKyN+ICJmb3JtZcKgOiIKKworI34gbXNnaWQgIkI8SU5GTy1ESVItU0VDVElPTj5JPCB0aXRsZT4iCisjfiBtc2dzdHIgIkI8SU5GTy1ESVItU0VDVElPTj5JPCB0aXRyZT4iCisKKyN+IG1zZ2lkICIiCisjfiAiSWYgbm8gc2VjdGlvbiB0aXRsZSBpcyBmb3VuZCwgdGhlIGRlZmF1bHQgaXMgdG8gYXBwZW5kIG5ldyBlbnRyaWVzIHRvIHRoZSAiCisjfiAiZW5kIG9mIHRoZSBmaWxlLiBUaGUgbGFzdCBzZWN0aW9uIChldmVuIGlmIGl0IG9ubHkgY29uc2lzdHMgb2YgdGhlIHRpdGxlICIKKyN+ICJsaW5lKSBzaG91bGQgYWx3YXlzIGV4aXN0IHRvIGVuc3VyZSB0aGF0IG5ldyBzZWN0aW9ucyBhcmUgY3JlYXRlZCBpbiB0aGUgIgorI34gInJpZ2h0IHBsYWNlLiBUaGUgZmluYWwgc2VjdGlvbiBzaG91bGQgYmUgdGl0bGVkIHRvIHJlZmxlY3QgdGhlIGZhY3QgdGhhdCAiCisjfiAiSW5mbyBmaWxlcyB3aXRoIG5vIGJldHRlciBzcGVjaWZpZWQgbG9jYXRpb24gYXJlIGFwcGVuZGVkIHRvIGl0LiIKKyN+IG1zZ3N0ciAiIgorI34gIlBhciBkw6lmYXV0LCBzaSBhdWN1biB0aXRyZSBkZSBzZWN0aW9uIG4nZXN0IHRyb3V2w6ksIGxlcyBlbnRyw6llcyBub3V2ZWxsZXMgIgorI34gInNvbnQgYWpvdXTDqWVzIMOgIGxhIGZpbiBkdSBmaWNoaWVyLiBMYSBkZXJuacOocmUgc2VjdGlvbiBkb2l0IHRvdWpvdXJzICIKKyN+ICJleGlzdGVyIChtw6ptZSBzaSBlbGxlIGNvbnNpc3RlIGVuIHVuZSBzaW1wbGUgbGlnbmUgZGUgdGl0cmUpIGRlIG1hbmnDqHJlICIKKyN+ICJxdWUgbGVzIG5vdXZlbGxlcyBzZWN0aW9ucyBwdWlzc2VudCDDqnRyZSBjcsOpw6llcyBhdSBib24gZW5kcm9pdC4gTGUgdGl0cmUgIgorI34gImRlIGxhIGRlcm5pw6hyZSBzZWN0aW9uIGRldnJhaXQgcmVmbMOpdGVyIGxlIGZhaXQgcXVlIGRlcyBmaWNoaWVycyBJbmZvICIKKyN+ICJzYW5zIGVtcGxhY2VtZW50IGJpZW4gZMOpZmluaSBzb250IGFqb3V0w6lzIMOgIGxhIGZpbiBkZSBjZXR0ZSBzZWN0aW9uLiIKKworI34gbXNnaWQgIiIKKyN+ICJJZiB0aGVyZSBpcyBhbHJlYWR5IGFuIGVudHJ5IGZvciB0aGUgSW5mbyBmaWxlIGJlaW5nIGluc3RhbGxlZCwgaXQgaXMgIgorI34gInJlcGxhY2VkIGluIHNpdHUgd2l0aCB0aGUgbmV3IGVudHJ5LiIKKyN+IG1zZ3N0ciAiIgorI34gIlF1YW5kIGxlIGZpY2hpZXIgSW5mbyBxdWUgbCdvbiBkb2l0IGluc3RhbGxlciBwb3Nzw6hkZSBkw6lqw6AgdW5lIGVudHLDqWUsICIKKyN+ICJjZWxsZS1jaSBlc3QgcmVtcGxhY8OpZSBpbiBzaXR1IHBhciBsYSBub3V2ZWxsZSBlbnRyw6llLiIKKworI34gbXNnaWQgIiIKKyN+ICJJZiBhIHNlY3Rpb24gaXMgc3BlY2lmaWVkIHdoZW4gcmVtb3ZpbmcgYW4gZW50cnksIHRoZSBzZWN0aW9uIGlzIGlnbm9yZWQgIgorI34gImFuZCBhIHdhcm5pbmcgaXMgaXNzdWVkLiIKKyN+IG1zZ3N0ciAiIgorI34gIlF1YW5kIG9uIHN1cHByaW1lIHVuZSBlbnRyw6llLCB1bmUgc2VjdGlvbiBzcMOpY2lmacOpZSBlc3QgaWdub3LDqWUgZXQgdW4gIgorI34gImF2ZXJ0aXNzZW1lbnQgZXN0IHByb2R1aXQuIgorCisjfiBtc2dpZCAiIgorI34gIklmIGEgc2VjdGlvbiBpcyByZXF1ZXN0ZWQgd2hlbiBhZGRpbmcgYW4gZW50cnksIGJ1dCB0aGUgZmlsZSBjb250YWlucyBubyAiCisjfiAic2VjdGlvbiBoZWFkaW5ncyBhdCBhbGwsIHRoZW4gQjxpbnN0YWxsLWluZm8+IHdpbGwgY3JlYXRlIGJvdGggdGhlICIKKyN+ICJyZXF1ZXN0ZWQgc2VjdGlvbiBhbmQgYSBNaXNjZWxsYW5lb3VzIHNlY3Rpb24gYXQgdGhlIGVuZCBvZiB0aGUgZmlsZS4iCisjfiBtc2dzdHIgIiIKKyN+ICJRdWFuZCBvbiBham91dGUgdW5lIGVudHLDqWUgZXQgcXUndW5lIHNlY3Rpb24gZXN0IHNww6ljaWZpw6llLCBtYWlzIHF1ZSBsZSAiCisjfiAiZmljaGllciBuZSBjb250aWVudCBhdWN1biBlbi10w6p0ZSBkZSBzZWN0aW9uLCBCPGluc3RhbGwtaW5mbz4gY3LDqWUgw6AgbGEgIgorI34gImZvaXMgbGEgc2VjdGlvbiBkZW1hbmTDqWUgZXQgdW5lIHNlY3Rpb24gwqvCoE1pc2NlbGxhbmVvdXPCoMK7IMOgIGxhIGZpbiBkdSAiCisjfiAiZmljaGllci4iCisKKyN+IG1zZ2lkICJCPC0taW5mb2Rpcj0+STxpbmZvZGlyPiIKKyN+IG1zZ3N0ciAiQjwtLWluZm9kaXI9Pkk8cmVwLWluZm8+IgorCisjfiBtc2dpZCAiIgorI34gIlNwZWNpZmllcyB0aGF0IHRoZSBCPGRpcj4gZmlsZSBpcywgYW5kIHRoZSBpbnN0YWxsZWQgY29weSBvZiB0aGUgbmV3IEluZm8gIgorI34gImZpbGUgd2FzLCBpcyBvciB3aWxsIGJlIGxvY2F0ZWQgaW4gSTxpbmZvZGlyPi4gIFRoZSBkZWZhdWx0IGlzIEI8L3Vzci8iCisjfiAic2hhcmUvaW5mby8+LiIKKyN+IG1zZ3N0ciAiIgorI34gIlNww6ljaWZpZSBxdWUgbGUgZmljaGllciBCPGRpcj4gZXN0IHNpdHXDqSBkYW5zIEk8aW5mb2Rpcj4sIG91IHF1ZSBsYSBjb3BpZSAiCisjfiAiaW5zdGFsbMOpZSBkdSBub3V2ZWF1IGZpY2hpZXIgSW5mbyDDqXRhaXQsIGVzdCBvdSBzZXJhIHNpdHXDqWUgZGFucyAiCisjfiAiSTxpbmZvZGlyPi4gUGFyIGTDqWZhdXQsIGMnZXN0IEI8L3Vzci9zaGFyZS9pbmZvPi4iCisKKyN+IG1zZ2lkICJCPC0tYWxpZ249Pkk8bm5uPkI8IFtkZXByZWNhdGVkXT4iCisjfiBtc2dzdHIgIkI8LS1hbGlnbj0+STxubm4+QjwgW2TDqWNvbnNlaWxsw6ldPiIKKworI34gbXNnaWQgIiIKKyN+ICJTcGVjaWZpZXMgdGhhdCB0aGUgZmlyc3QgbGluZSBvZiB0aGUgZGVzY3JpcHRpb24gc2hvdWxkIGJlIGluZGVudGVkIGF0ICIKKyN+ICJsZWFzdCBJPG5ubj4gY2hhcmFjdGVyczsgZXh0cmEgc3BhY2VzIHdpbGwgYmUgYWRkZWQgYXMgcmVxdWlyZWQuIElmICIKKyN+ICJuZWNlc3NhcnkgYmVjYXVzZSBvZiB0aGUgbGVuZ3RoIG9mIHRoZSBCPGRpcj4gbWVudSBlbnRyeSBkZXRhaWxzLCBpdCBtYXkgIgorI34gImJlIG9mZnNldCBtb3JlLiBUaGUgZGVmYXVsdCBpcyAyNy4iCisjfiBtc2dzdHIgIiIKKyN+ICJQcsOpY2lzZSBxdWUgbCdlc3BhY2UgZCdpbmRlbnRhdGlvbiBkZSBsYSBwcmVtacOocmUgbGlnbmUgZGUgbGEgZGVzY3JpcHRpb24gIgorI34gInNlcmEgZCdhdSBtb2lucyBJPG5ubj4gY2FyYWN0w6hyZXPCoDsgZGVzIGVzcGFjZXMgc3VwcGzDqW1lbnRhaXJlcyBwZXV2ZW50ICIKKyN+ICLDqnRyZSBham91dMOpZXMuIFF1YW5kIGxhIGxvbmd1ZXVyIGRlcyDDqWzDqW1lbnRzIGRlIGwnZW50csOpZSBkdSBtZW51IEI8ZGlyPiAiCisjfiAibGUgZGVtYW5kZSwgb24gcGV1dCBsZSBkw6ljYWxlciBkYXZhbnRhZ2UuIFBhciBkw6lmYXV0IGNlIG5vbWJyZSBlc3Qgw6lnYWwgw6AgIgorI34gIjI3LiIKKworI34gbXNnaWQgIkI8LS1jYWxpZ249Pkk8bm5uPkI8IFtkZXByZWNhdGVkXT4iCisjfiBtc2dzdHIgIkI8LS1jYWxpZ249Pkk8bm5uPkI8IFtkw6ljb25zZWlsbMOpXT4iCisKKyN+IG1zZ2lkICIiCisjfiAiU3BlY2lmaWVzIHRoYXQgdGhlIHNlY29uZCBhbmQgc3Vic2VxdWVudCBsaW5lcyBvZiB0aGUgZGVzY3JpcHRpb24gc2hvdWxkICIKKyN+ICJiZSBpbmRlbnRlZCBhdCBsZWFzdCBJPG5ubj4gY2hhcmFjdGVycy4gVGhlIGRlZmF1bHQgaXMgMjkuIgorI34gbXNnc3RyICIiCisjfiAiUHLDqWNpc2UgcXVlIGwnZXNwYWNlIGQnaW5kZW50YXRpb24gZGUgbGEgZGV1eGnDqG1lIGxpZ25lIGV0IGRlcyBsaWduZXMgIgorI34gInN1aXZhbnRlcyBkZSBsYSBkZXNjcmlwdGlvbiBzZXJhIGQnYXUgbW9pbnMgSTxubm4+IGNhcmFjdMOocmVzLiBQYXIgZMOpZmF1dCAiCisjfiAiY2Ugbm9tYnJlIGVzdCDDqWdhbCDDoCAyOS4iCisKKyN+IG1zZ2lkICJCPC0tbWF4d2lkdGg9Pkk8bm5uPkI8IFtkZXByZWNhdGVkXT4iCisjfiBtc2dzdHIgIkI8LS1tYXh3aWR0aD0+STxubm4+QjwgW2TDqWNvbnNlaWxsw6ldPiIKKworI34gbXNnaWQgIiIKKyN+ICJTcGVjaWZpZXMgdGhhdCB0aGUgbWF4aW11bSB3aWR0aCBmb3IgdGhlIEluZm8gZmlsZSBpcyBJPG5ubj4uICBUaGlzIGlzICIKKyN+ICJ1c2VkIHdoZW4gd29yZC13cmFwcGluZyB0aGUgZGVzY3JpcHRpdmUgdGV4dC4gIFRoZSBkZWZhdWx0IGlzIDc5LiIKKyN+IG1zZ3N0ciAiIgorI34gIlByw6ljaXNlIHF1ZSBsYSBsYXJnZXVyIG1heGltYWxlIGQndW5lIGxpZ25lIGR1IGZpY2hpZXIgSW5mbyBlc3QgZGUgIgorI34gIkk8bm5uPi4gQ2VsYSBzZXJ0IHBvdXIgwqvCoGNvdXBlcsKgwrsgYXV0b21hdGlxdWVtZW50IGxlcyBsaWduZXMgZHUgdGV4dGUgIgorI34gImRlc2NyaXB0aWYuIFBhciBkw6lmYXV0IGNlIG5vbWJyZSBlc3Qgw6lnYWwgw6AgNzkuIgorCisjfiBtc2dpZCAiIgorI34gIlByZXZlbnRzIHRoZSB1c3VhbCBkaXNwbGF5IG9mIHRoZSBuZXcgbWVudSBlbnRyeSBqdXN0IGJlZm9yZSBpdCBpcyAiCisjfiAiaW5zZXJ0ZWQgYW5kIG9mIHRoZSBtZXNzYWdlcyBhbm5vdW5jaW5nIHRoZSByZXBsYWNlbWVudCBhbmQgcmVtb3ZhbCBvZiAiCisjfiAiZXhpc3RpbmcgZW50cmllcyBhbmQgdGhlIGNyZWF0aW9uIGFuZCBkZWxldGlvbiBvZiBzZWN0aW9ucy4iCisjfiBtc2dzdHIgIiIKKyN+ICJFbXDDqmNoZSBsJ2FmZmljaGFnZSBub3JtYWwgZGUgbGEgbm91dmVsbGUgZW50csOpZSBkdSBtZW51IGp1c3RlIGF2YW50ICIKKyN+ICJxdSdlbGxlIHNvaXQgaW5zw6lyw6llIGV0IGwnYWZmaWNoYWdlIGRlIG1lc3NhZ2VzIGFubm9uw6dhbnQgbGUgcmVtcGxhY2VtZW50ICIKKyN+ICJvdSBsYSBzdXBwcmVzc2lvbiBkJ2VudHLDqWVzIGV4aXN0YW50ZXMgb3UgbGEgY3LDqWF0aW9uIG91IGxhIHN1cHByZXNzaW9uICIKKyN+ICJkZSBzZWN0aW9uLiIKKworI34gbXNnaWQgIkNhdXNlcyBCPGluc3RhbGwtaW5mbz4gdG8gZGlzcGxheSBpdHMgdXNhZ2UgaW5mb3JtYXRpb24gYW5kIGV4aXQuIgorI34gbXNnc3RyICJPcHRpb24gcG91ciBhZmZpY2hlciB1bmUgYWlkZSBzdXIgbCd1dGlsaXNhdGlvbiBkZSBCPGluc3RhbGwtaW5mbz4iCisKKyN+IG1zZ2lkICIiCisjfiAiQ2F1c2VzIEI8aW5zdGFsbC1pbmZvPiB0byBkaXNwbGF5IGl0cyB2ZXJzaW9uIGFuZCBjb3B5cmlnaHQgaW5mb3JtYXRpb24gIgorI34gImFuZCBleGl0LiIKKyN+IG1zZ3N0ciAiT3B0aW9uIHBvdXIgYWZmaWNoZXIgbGEgdmVyc2lvbiBldCBsZSBjb3B5cmlnaHQgZGUgQjxpbnN0YWxsLWluZm8+IgorCisjfiBtc2dpZCAiIgorI34gIlNwZWNpZmllcyB0aGF0IHRoZSBkZXNjcmlwdGlvbiB0byB1c2UgYWZ0ZXIgdGhlIG1lbnUgZW50cnkgaW4gbmV3IG9yICIKKyN+ICJ1cGRhdGVkIGVudHJpZXMgYmUgSTx4eHg+LiAgVGhlIGRlZmF1bHQgaXMgdG8gdXNlIHRoZSB0aGUgdmFsdWUgc3BlY2lmaWVkICIKKyN+ICJpbiB0aGUgSW5mbyBmaWxlIGl0c2VsZjsgdGhpcyBpcyBmb3VuZCBieSBzZWFyY2hpbmcgZm9yIGEgc2VjdGlvbiBvZiB0aGUgIgorI34gImZvcm0iCisjfiBtc2dzdHIgIiIKKyN+ICJQcsOpY2lzZSBxdWUgbGEgZGVzY3JpcHRpb24gZW1wbG95w6llIGFwcsOocyBsJ2VudHLDqWUgZHUgbWVudSBwb3VyIHVuZSAiCisjfiAibm91dmVsbGUgZW50csOpZSBvdSBiaWVuIHBvdXIgdW5lIGVudHLDqWUgbWlzZSDDoCBqb3VyIHNlcmEgSTx4eHg+LiBQYXIgIgorI34gImTDqWZhdXQsIG9uIGVtcGxvaWUgbGEgdmFsZXVyIGluZGlxdcOpZSBwYXIgbGUgZmljaGllciBJbmZvIGx1aS1tw6ptZcKgOyBvbiAiCisjfiAicGV1dCBsYSB0cm91dmVyIGVuIGNoZXJjaGFudCB1bmUgc2VjdGlvbiBkZSBsYSBmb3JtZSBzdWl2YW50ZcKgOiIKKworI34gbXNnaWQgIkI8U1RBUlQtSU5GTy1ESVItRU5UUlk+IgorI34gbXNnc3RyICJCPFNUQVJULUlORk8tRElSLUVOVFJZPiIKKworI34gbXNnaWQgIkI8KiBBdXRvLVBHUDogKGF1dG8tcGdwKS4gUEdQIHVuZGVyIEdOVSBFbWFjcy4+IgorI34gbXNnc3RyICJCPCogQXV0by1QR1A6IChhdXRvLXBncCkuIFBHUCB1bmRlciBHTlUgRW1hY3MuPiIKKworI34gbXNnaWQgIkI8RU5ELUlORk8tRElSLUVOVFJZPiIKKyN+IG1zZ3N0ciAiQjxFTkQtSU5GTy1ESVItRU5UUlk+IgorCisjfiBtc2dpZCAiIgorI34gIklmIHRoZSBlbnRyeSBmb3VuZCBpbiB0aGUgSW5mbyBmaWxlIGl0c2VsZiBleHRlbmRzIGFjcm9zcyBzZXZlcmFsIGxpbmVzLCAiCisjfiAiZWFjaCBnaXZpbmcgYSBtZW51IGVudHJ5LCB0aGUgdGV4dCBmb3VuZCBpbiB0aGUgZmlsZSBpcyB1c2VkIHZlcmJhdGltLiBJbiAiCisjfiAidGhpcyBjYXNlLCB0aGUgYWxwaGFiZXRpYyBvcmRlcmluZyBzY2hlbWUgaXMgdHVybmVkIG9mZiwgYW5kIHRoZSBlbnRyaWVzICIKKyN+ICJhcmUgaW5zZXJ0ZWQgYXQgdGhlIHRvcCBvZiBzZWN0aW9uIGluIHF1ZXN0aW9uLiBJbiB0aGlzIGNhc2UsIHRoZSBCPC0tIgorI34gIm1lbnVlbnRyeT4sIEI8LS1tYXh3aWR0aD4sIEI8LS1hbGlnbj4sIEI8LS1jYWxpZ24+IGFuZCBCPC0tbWVudWVudHJ5PiAiCisjfiAib3B0aW9ucyBhcmUgaWdub3JlZC4iCisjfiBtc2dzdHIgIiIKKyN+ICJRdWFuZCBsJ2VudHLDqWUgdHJvdXbDqWUgZGFucyBsZSBmaWNoaWVyIEluZm8gbHVpLW3Dqm1lIHMnw6l0ZW5kIHN1ciAiCisjfiAicGx1c2lldXJzIGxpZ25lcywgY2hhY3VuZSBkb25uYW50IHVuZSBlbnRyw6llIGR1IG1lbnUsIG9uIHJlcHJlbmQgbGUgdGV4dGUgIgorI34gInRyb3V2w6kgwqvCoHZlcmJhdGltwqDCuy4gRGFucyBjZSBjYXMsIG9uIG5lIHRpZW50IHBhcyBjb21wdGUgZGUgbCdvcmRyZSAiCisjfiAiYWxwaGFiw6l0aXF1ZSBldCBsZXMgZW50csOpZXMgc29udCBpbnPDqXLDqWVzIGF1IGTDqWJ1dCBkZSBsYSBzZWN0aW9uIGVuICIKKyN+ICJxdWVzdGlvbi4gIEV0IGxlcyBvcHRpb25zIEI8LS1tZW51ZW50cnk+LCBCPC0tbWF4d2lkdGg+LCBCPC0tYWxpZ24+LCBCPC0tIgorI34gImNhbGlnbj4gc29udCBpZ25vcsOpZXMuIgorCisjfiBtc2dpZCAiIgorI34gIklmIHRoZXJlIGlzIG5vIEI8ZGlyPiBlbnRyeSBpbiB0aGUgZmlsZSwgdGhlIHByb2dyYW0gd2lsbCB0cnkgdG8gZmluZCBhICIKKyN+ICJwYXJhZ3JhcGggZWFybHkgaW4gdGhlIGZpbGUgc3RhcnRpbmcgQjx0aGlzIGZpbGUgZG9jdW1lbnRzPi4gIEl0IHdpbGwgIgorI34gImNhcGl0YWxpc2UgdGhlIGZpcnN0IGNoYXJhY3RlciBvZiB0aGUgcmVtYWluZGVyLCBhbmQgdXNlIHRoYXQuIgorI34gbXNnc3RyICIiCisjfiAiUXVhbmQgaWwgbid5IGEgcGFzIGQnZW50csOpZSBwb3VyIEI8ZGlyPiBkYW5zIGxlIGZpY2hpZXIsIGxlIHByb2dyYW1tZSAiCisjfiAiZXNzYWllIGRlIHRyb3V2ZXIgdW4gcGFyYWdyYXBoZSBhdSBkw6lidXQgZHUgZmljaGllciBxdWkgY29tbWVuY2UgcGFyICIKKyN+ICJCPHRoaXMgZmlsZSBkb2N1bWVudHM+LiBJbCBtZXQgdW5lIGNhcGl0YWxlIGF1IHByZW1pZXIgY2FyYWN0w6hyZSBkZSBsYSAiCisjfiAic3VpdGUgZXQgbCd1dGlsaXNlIGNvbW1lIGRlc2NyaXB0aW9uLiIKKworI34gbXNnaWQgIkl0IGlzIGFuIGVycm9yIGZvciBub25lIG9mIHRoZXNlIG1ldGhvZHMgdG8geWllbGQgYSBkZXNjcmlwdGlvbi4iCisjfiBtc2dzdHIgIiIKKyN+ICJDJ2VzdCB1bmUgZXJyZXVyIHNpIGF1Y3VuZSBkZSBjZXMgbcOpdGhvZGVzIG5lIHBldXQgZG9ubmVyIHVuZSBkZXNjcmlwdGlvbi4iCisKKyN+IG1zZ2lkICIiCisjfiAiSWYgYSBkZXNjcmlwdGlvbiBhcmd1bWVudCBpcyBnaXZlbiB3aGVuIEI8LS1yZW1vdmU+IGlzIHNwZWNpZmllZCwgaXQgaXMgIgorI34gImlnbm9yZWQgYW5kIGEgd2FybmluZyBpcyBpc3N1ZWQuIgorI34gbXNnc3RyICIiCisjfiAiUXVhbmQgbCdvcHRpb24gQjwtLXJlbW92ZT4gZXN0IGRvbm7DqWUsIGwnYXJndW1lbnQgcG91ciBsJ29wdGlvbiDCqyAiCisjfiAiZGVzY3JpcHRpb24gwrsgZXN0IGlnbm9yw6kgZXQgdW4gYXZlcnRpc3NlbWVudCBlc3QgcHJvZHVpdC4iCisKKyN+IG1zZ2lkICJCPC0tbWVudWVudHJ5PT5JPHh4eD4iCisjfiBtc2dzdHIgIkI8LS1tZW51ZW50cnk9Pkk8eHh4PiIKKworI34gbXNnaWQgIiIKKyN+ICJTcGVjaWZpZXMgdGhhdCB0aGUgZW50cnkgaW4gdGhlIG1lbnUgc2hvdWxkIGJlIEk8eHh4Pi4gIFRoZSBkZWZhdWx0IGlzIHRvICIKKyN+ICJ1c2UgdGhlIHRoZSB2YWx1ZSBzcGVjaWZpZWQgaW4gdGhlIEluZm8gZmlsZSBpdHNlbGYuICBJZiB0aGlzIGlzIG5vdCAiCisjfiAicHJlc2VudCwgdGhlIGJhc2VuYW1lIG9mIHRoZSBJbmZvIGZpbGUgaXMgdXNlZCAoYW55IEI8LmluZm8gPmlzIGRlbGV0ZWQsICIKKyN+ICJhbmQgdGhlIGVudHJ5IGlzIG1hZGUgbWl4ZWQgY2FzZSkuICBTZWUgYWJvdmUgZm9yIGRldGFpbHMgb2YgdGhlIGZvcm1hdCAiCisjfiAiZXhwZWN0ZWQgZm9yIHRoZSBtZW51IGVudHJ5IGluIHRoZSBJbmZvIGZpbGUuIgorI34gbXNnc3RyICIiCisjfiAiUHLDqWNpc2UgcXVlIGwnZW50csOpZSBkZSBtZW51IHNlcmEgSTx4eHg+LiBQYXIgZMOpZmF1dCwgb24gZW1wbG9pZSBsYSAiCisjfiAidmFsZXVyIGluZGlxdcOpZSBwYXIgbGUgZmljaGllciBJbmZvIGx1aS1tw6ptZS4gUXVhbmQgZWxsZSBuJ2VzdCBwYXMgIgorI34gInByw6lzZW50ZSwgbGEgcGFydGllIHByaW5jaXBhbGUgZHUgbm9tIGR1IGZpY2hpZXIgSW5mbyBlc3QgdXRpbGlzw6llICh0b3V0ICIKKyN+ICJmaWNoaWVyIEI8LmluZm8gPmVzdCBzdXBwcmltw6kgZXQgbGEgcHJlbWnDqHJlIGxldHRyZSBkZSBsJ2VudHLDqWUgZXN0ICIKKyN+ICJjYXBpdGFsaXPDqWUpLiBWb3lleiBjaS1kZXNzdXMgcG91ciBkZXMgcHLDqWNpc2lvbnMgc3VyIGxlIGZvcm1hdCBhdHRlbmR1ICIKKyN+ICJwb3VyIGwnZW50csOpZSBkZSBtZW51IGRhbnMgbGUgZmljaGllciBJbmZvLiIKKworI34gbXNnaWQgIiIKKyN+ICJXaGVuIHJlbW92aW5nIGVudHJpZXMsIHRoZSB2YWx1ZSBvZiB0aGUgQjwtLW1lbnVlbnRyeT4gb3B0aW9uIG11c3QgbWF0Y2ggIgorI34gInRoZSBhY3R1YWwgbWVudSBlbnRyeSBmaWVsZCBpbiB0aGUgbWVudSBpdGVtIHRvIGJlIHJlbW92ZWQgKGNhc2Ugbm90ICIKKyN+ICJzaWduaWZpY2FudCkuIElmIEI8LS1tZW51ZW50cnk+IGlzIG9taXR0ZWQsIG5vIGNoZWNrIG9uIHRoZSBtZW51IGVudHJ5IGlzICIKKyN+ICJkb25lLiIKKyN+IG1zZ3N0ciAiIgorI34gIlF1YW5kIG9uIHN1cHByaW1lIGRlcyBlbnRyw6llcywgbGEgdmFsZXVyIGRlIGwnb3B0aW9uIEI8LS1tZW51ZW50cnk+IGRvaXQgIgorI34gImNvcnJlc3BvbmRyZSBhdSBjaGFtcCByw6llbCBkZSBsJ2VudHLDqWUgZGUgbWVudSBxdWkgZG9pdCDDqnRyZSBzdXBwcmltw6llICIKKyN+ICIocGV1IGltcG9ydGUgbGEgY2Fzc2UpLiBRdWFuZCBsJ29wdGlvbiBCPC0tbWVudWVudHJ5PiBlc3Qgb21pc2UsIGF1Y3VuZSAiCisjfiAidsOpcmlmaWNhdGlvbiBzdXIgbCdlbnRyw6llIGRlIG1lbnUgbidlc3QgZmFpdGUuIgorCisjfiBtc2dpZCAiQjwtLWtlZXAtb2xkPiIKKyN+IG1zZ3N0ciAiQjwtLWtlZXAtb2xkPiIKKworI34gbXNnaWQgIiIKKyN+ICJJbmhpYml0cyB0aGUgcmVwbGFjZW1lbnQgb2YgZXhpc3RpbmcgZW50cmllcyBhbmQgdGhlIHJlbW92YWwgb2YgZW1wdHkgIgorI34gInNlY3Rpb25zLiIKKyN+IG1zZ3N0ciAiIgorI34gIkVtcMOqY2hlIGxlIHJlbXBsYWNlbWVudCBkJ2VudHLDqWVzIGV4aXN0YW50ZXMgZXQgbGEgc3VwcHJlc3Npb24gZGVzICIKKyN+ICJzZWN0aW9ucyB2aWRlcy4iCisKKyN+IG1zZ2lkICIiCisjfiAiSWYgdGhlIGZpbGUgYmVpbmcgaW5zdGFsbGVkIGFscmVhZHkgaGFzIGFuIGVudHJ5IGluIHRoZSBJbmZvIEI8ZGlyPiBmaWxlLCAiCisjfiAidGhlIG9sZCBlbnRyeSB3aWxsIGJlIGxlZnQgYWxvbmUgaW5zdGVhZCBvZiBiZWluZyByZXBsYWNlZDsgdGhlIGRlZmF1bHQgIgorI34gImlzIHRvIG92ZXJ3cml0ZSBhbnkgb2xkIGVudHJ5IGZvdW5kIHdpdGggdGhlIG5ld2x5IGdlbmVyYXRlZCBvbmUuIgorI34gbXNnc3RyICIiCisjfiAiUXVhbmQgbGUgZmljaGllciBxdSdvbiBkb2l0IGluc3RhbGxlciBwb3Nzw6hkZSBkw6lqw6AgdW5lIGVudHLDqWUgZGFucyBsZSAiCisjfiAiZmljaGllciBCPGRpcj4gZCdJbmZvLCBsJ2FuY2llbm5lIGVudHLDqWUgZXN0IGxhaXNzw6llIHNldWxlIHBsdXTDtHQgcXVlICIKKyN+ICJyZW1wbGFjw6llLiBQYXIgZMOpZmF1dCwgdG91dGUgZW50csOpZSBhbmNpZW5uZSB0cm91dsOpZSBlc3QgcmVtcGxhY8OpZSBwYXIgbGEgIgorI34gIm5vdXZlbGxlLiIKKworI34gbXNnaWQgIiIKKyN+ICJJZiBCPC0tcmVtb3ZlPiBpcyBzcGVjaWZpZWQsIEI8LS1rZWVwLW9sZD4gd2lsbCBwcmV2ZW50IHRoZSByZW1vdmFsIG9mICIKKyN+ICJ0aGUgc2VjdGlvbiBoZWFkaW5nIHdoaWNoIHdvdWxkIG90aGVyd2lzZSBoYXBwZW4gaWYgdGhlIHNlY3Rpb24gaXMgbWFkZSAiCisjfiAiZW1wdHkgYnkgdGhlIHJlbW92YWwuIgorI34gbXNnc3RyICIiCisjfiAiUXVhbmQgbCdvcHRpb24gQjwtLXJlbW92ZT4gZXN0IGluZGlxdcOpZSwgQjwtLWtlZXAtb2xkPiBlbXDDqmNoZSBsYSAiCisjfiAic3VwcHJlc3Npb24gZGUgbCdlbi10w6p0ZSBkZSBzZWN0aW9uIHF1aSBzYW5zIGNlbGEgc2VyYWl0IHN1cHByaW3DqSBzaSBsYSAiCisjfiAic3VwcHJlc3Npb24gdmlkYWl0IGxhIHNlY3Rpb24uIgorCisjfiBtc2dpZCAiIgorI34gIkVuYWJsZXMgdGVzdCBtb2RlLCB3aGljaCBpbmhpYml0cyB0aGUgdXBkYXRlIG9mIHRoZSBJbmZvIEI8ZGlyPiBmaWxlLiIKKyN+IG1zZ3N0ciAiIgorI34gIk1ldCBlbiBtb2RlIHRlc3QsIGxlcXVlbCBlbXDDqmNoZSBsYSBtaXNlIMOgIGpvdXIgZHUgZmljaGllciBCPGRpcj4gZCdJbmZvLiIKKworI34gbXNnaWQgIiIKKyN+ICJFbmFibGVzIGRlYnVnZ2luZyBtb2RlLCBpbiB3aGljaCB0aGUgcmVzdWx0cyBvZiBzb21lIGludGVybmFsIHByb2Nlc3NpbmcgIgorI34gInN0ZXBzIGFyZSBzaG93bi4iCisjfiBtc2dzdHIgIiIKKyN+ICJNZXQgZW4gbW9kZSBkw6lib2dhZ2UsIGxlcXVlbCBtb250cmUgbGVzIHLDqXN1bHRhdHMgZGUgY2VydGFpbmVzIMOpdGFwZXMgZHUgIgorI34gInRyYWl0ZW1lbnQuIgorCisjfiBtc2dpZCAiQjxlbWFjcz4oMSksIEI8aW5mbz4oMSksIEI8Z3ppcCgxKS4+IgorI34gbXNnc3RyICJCPGVtYWNzPigxKSwgQjxpbmZvPigxKSwgQjxnemlwPigxKS4iCisKKyN+IG1zZ2lkICJDb3B5cmlnaHQgXFwoY28gMTk5NCBJYW4gSmFja3NvbiIKKyN+IG1zZ3N0ciAiQ29weXJpZ2h0IFxcKGNvIDE5OTQgSWFuIEphY2tzb24iCisKKyN+IG1zZ2lkICJWZW5kb3IgaWRlbnRpZmljYXRpb24iCisjfiBtc2dzdHIgIklkZW50aWZ6aWVydW5nIGRlcyBMaWVmZXJhbnRlbiIKKworI34gbXNnaWQgIiIKKyN+ICJUaGUgdmFyaWFibGUgQjxERUJfVkVORE9SPiB3aWxsIGJlIHNldCB0byB0aGUgbmFtZSBvZiB0aGUgY3VycmVudCB2ZW5kb3IgIgorI34gImlmIEk8L2V0Yy9kcGtnL29yaWdpbnMvZGVmYXVsdD4gZXhpc3RzIGFuZCBjYW4gYmUgdXNlZCB0byBsb29rIHVwIHRoZSAiCisjfiAidmVuZG9yIG5hbWUuIElmIHRoZSB2YXJpYWJsZSBhbHJlYWR5IGV4aXN0cywgYW5kIGNvbnRhaW5zIHRoZSBuYW1lIG9mIGFuICIKKyN+ICJleGlzdGluZyB2ZW5kb3IgaW4gSTwvZXRjL2Rwa2cvb3JpZ2lucz4sIGl0IHdpbGwgYmUga2VwdDsgb3RoZXJ3aXNlIHRoZSAiCisjfiAidmFyaWFibGUgaXMgdW5zZXQuIgorI34gbXNnc3RyICIiCisjfiAiRGllIFZhcmlhYmxlIEI8REVCX1ZFTkRPUj4gd2lyZCBhdWYgZGVuIE5hbWVuIGRlcyBkZXJ6ZWl0aWdlbiBMaWVmZXJhbnRlbiAiCisjfiAiKGVuZ2xpc2NoOiB2ZW5kb3IpIGdlc2V0enQsIGZhbGxzIEk8L2V0Yy9kcGtnL29yaWdpbnMvZGVmYXVsdD4gZXhpc3RpZXJ0ICIKKyN+ICJ1bmQgenVtIE5hY2hzY2hsYWdlbiBkZXMgTGllZmVyYW50ZW4gZ2VudXR6dCB3ZXJkZW4ga2Fubi4gRmFsbHMgZGllICIKKyN+ICJWYXJpYWJsZSBiZXJlaXRzIGV4aXN0aWVydCB1bmQgZGVuIE5hbWVuIGVpbmVzIGV4aXN0aWVyZW5kZW4gTGllZmVyYW50ZW4gIgorI34gImluIEk8L2V0Yy9kcGtnL29yaWdpbnM+IGVudGhsdCwgd2lyZCBkaWVzZSBiZWliZWhhbHRlbjsgYW5kZXJuZmFsbHMgd2lyZCAiCisjfiAiZGllIFZhcmlhYmxlIHp1cmNrZ2VzZXR6dCAoZC5oLiBzaWUgaXN0IGltIEJhdXByb3plc3MgbmljaHQgZ2VzZXR6dCkuIgorCisjfiBtc2dpZCAiIgorI34gIlRoaXMgaXMgYSB2YXJpYW50IG9mIHRoZSAyLjAgZm9ybWF0LiBUaGUgZGlmZmVyZW5jZXMgY29uY2VybiB0aGUgIgorI34gIm1hbmFnZW1lbnQgb2YgdGhlIHBhdGNoZXMuIFRoaXMgZm9ybWF0IHVzZXMgYW4gZXhwbGljaXQgbGlzdCBvZiBwYXRjaGVzICIKKyN+ICJjb250YWluZWQgaW4gQjxkZWJpYW4vcGF0Y2hlcy9kZWJpYW4uc2VyaWVzPiBvciBCPGRlYmlhbi9wYXRjaGVzL3Nlcmllcz4uIgorI34gbXNnc3RyICIiCisjfiAiRGllcyBpc3QgZWluZSBWYXJpYW50ZSBkZXMgMi4wLUZvcm1hdHMuIERpZSBVbnRlcnNjaGllZGUgYmV0cmVmZmVuIGRpZSAiCisjfiAiVmVyd2FsdHVuZyBkZXIgUGF0Y2hlcy4gRGllc2VzIEZvcm1hdCB2ZXJ3ZW5kZXQgZWluZSBleHBsaXppdGUgTGlzdGUgdm9uICIKKyN+ICJQYXRjaGVzLCBkaWUgaW4gQjxkZWJpYW4vcGF0Y2hlcy9kZWJpYW4uc2VyaWVzPiBvZGVyIEI8ZGViaWFuL3BhdGNoZXMvIgorI34gInNlcmllcz4gZW50aGFsdGVuIHNpbmQuIgorCisjfiBtc2dpZCAiVW5wYWNraW5nIG9mIHRhcmJhbGxzIGlzIGRvbmUgZXhhY3RseSBsaWtlIGluIHRoZSAyLjAgZm9ybWF0LiIKKyN+IG1zZ3N0ciAiRGFzIEVudHBhY2tlbiBkZXMgVGFyYmFsbHMgZXJmb2xndCBleGFrdCB3aWUgaW0gMi4wLUZvcm1hdC4iCisKKyN+IG1zZ2lkICIiCisjfiAiVGhlIEI8LnBjPiBkaXJlY3RvcnkgdXNlZCBieSBxdWlsdCBpcyBpZ25vcmVkIGR1cmluZyBnZW5lcmF0aW9uIG9mIHRoZSAiCisjfiAiYXV0b21hdGljIHBhdGNoLiIKKyN+IG1zZ3N0ciAiIgorI34gIkRhcyB2b24gUXVpbHQgdmVyd2FuZHRlIEI8LnBjPi1WZXJ6ZWljaG5pcyB3aXJkIHdocmVuZCBkZXIgRXJzdGVsbHVuZyBkZXMgIgorI34gImF1dG9tYXRpc2NoZW4gUGF0Y2hlcyBpZ25vcmllcnQuIgorCisjfiBtc2dpZCAiSXQgc3VwcG9ydHMgYWxsIHRoZSBvcHRpb25zIG9mIHRoZSAyLjAgZm9ybWF0LiIKKyN+IG1zZ3N0ciAiRXMgdW50ZXJzdHR6dCBhbGxlIE9wdGlvbmVuIGRlcyAyLjAtRm9ybWF0cy4iCisKKyN+IG1zZ2lkICIiCisjfiAiRnVydGhlcm1vcmUsIGluIHNvbWUgY2FzZXMsIHRoaXMgd2lsbCBsZWFkIHRvIGEgbm9uLXZlcnNpb25lZCBkZXBlbmRlbmN5ICIKKyN+ICJvbiB0aGUgbGlicmFyeSB0aGF0IGNvdWxkIGhhdmUgYmVlbiBhdm9pZGVkIGlmIHRoZSBiaW5hcnkgd2FzIG9ubHkgbGlua2VkICIKKyN+ICJhZ2FpbnN0IGxpYnJhcmllcyB0aGF0IGl0IHJlYWxseSB1c2VzLiBUaGUgZXhjZXB0aW9uIHRvIHRoaXMgcnVsZSBpcyB3aGVuICIKKyN+ICJzZXZlcmFsIGJpbmFyaWVzIGFyZSBsaW5rZWQgYWdhaW5zdCB0aGUgc2FtZSBzZXQgb2YgbGlicmFyaWVzIGJ1dCBlYWNoICIKKyN+ICJiaW5hcnkgb25seSB1c2VzIGEgc3Vic2V0IG9mIHRob3NlLiBZb3Ugd2lsbCBoYXZlIHdhcm5pbmdzIG9uIGluZGl2aWR1YWwgIgorI34gImJpbmFyaWVzLCBidXQgdGhlIHNldCBvZiBsaWJyYXJpZXMgbmVlZGVkIGF0IHRoZSBwYWNrYWdlIGxldmVsIGlzIHRoZSAiCisjfiAic2FtZSB3aGV0aGVyIHlvdSBmaXggdGhlIGJpbmFyaWVzIG9yIG5vdC4iCisjfiBtc2dzdHIgIiIKKyN+ICJEZXN3ZWl0ZXJlbiBmaHJ0IGRpZXMgaW4gZWluaWdlbiBGbGxlbiB6dSBlaW5lciB1bnZlcnNpb25pZXJ0ZW4gIgorI34gIkFiaG5naWdrZWl0IGF1ZiBkaWVzZSBCaWJsaW90aGVrLCBkaWUgdmVybWllZGVuIHdlcmRlbiBrbm50ZSwgZmFsbHMgZGFzICIKKyN+ICJQcm9ncmFtbSBudXIgZ2VnZW4gQmlibGlvdGhla2VuIGdlbGlua3Qgd3JlLCBkaWUgZXMgd2lya2xpY2ggdmVyd2VuZGV0LiAiCisjfiAiRGllIEF1c25haG1lIGRpZXNlciBSZWdlbCBsaWVndCBkYW5uIHZvciwgd2VubiBtZWhyZXJlIFByb2dyYW1tZSBnZWdlbiAiCisjfiAiZGVuIGdsZWljaGVuIFNhdHogYW4gQmlibGlvdGhla2VuIGdlbGlua3Qgc2luZCwgYWJlciBqZWRlcyBQcm9ncmFtbSBudXIgIgorI34gImVpbmUgVGVpbG1lbmdlIGRhdm9uIHZlcndlbmRldC4gU2llIHdlcmRlbiBmciBkaWUgZWluemVsbmVuIFByb2dyYW1tZSAiCisjfiAiaW5kaXZpZHVlbGxlIFdhcm51bmdlbiBlcmhhbHRlbiwgYWJlciBkZXIgYmVudGlndGUgU2F0eiBhbiBCaWJsaW90aGVrZW4gIgorI34gImlzdCBhdWYgZGVyIFBha2V0ZWJlbmUgaWRlbnRpc2NoLCBvYiBzaWUgZGllIFByb2dyYW1tZSBrb3JyaWdpZXJlbiBvZGVyICIKKyN+ICJuaWNodC4iCisKKyN+IG1zZ2lkICIiCisjfiAiU2hhcmVkIGxpYnJhcnkgaW5mb3JtYXRpb24gZ2VuZXJhdGVkIGJ5IHRoZSBjdXJyZW50IGJ1aWxkIHByb2Nlc3MgdGhhdCAiCisjfiAiYWxzbyBpbnZva2VkIEI8ZHBrZy1zaGxpYmRlcHM+LiIKKyN+IG1zZ3N0ciAiIgorI34gIkxhdWZ6ZWl0YmlibGlvdGhla3NpbmZvcm1hdGlvbmVuLCBkaWUgdm9tIGFrdHVlbGxlbiBCYXVwcm96ZXNzIGVyc3RlbGx0ICIKKyN+ICJ3ZXJkZW4sIGRlciBhdWNoIEI8ZHBrZy1zaGxpYmRlcHM+IGF1ZnJ1ZnQuIgorCisjfiBtc2dpZCAiSTxFPGx0PmRpdmVydC10b0U8Z3Q+PiBpcyB0aGUgbmFtZSB1c2VkIGJ5IG90aGVyIHBhY2thZ2VzJyB2ZXJzaW9ucy4iCisjfiBtc2dzdHIgIiIKKyN+ICJJPEU8bHQ+dW16dWxlaXRlbmRlPGd0Pj4gaXN0IGRlciBOYW1lIGRlciBEYXRlaSwgZGVyIHZvbiBWZXJzaW9uZW4gIgorI34gImFuZGVyZXIgUGFrZXRlIGJlbnV0enQgd2lyZC4iCisKKyN+IG1zZ2lkICJTcGVjaWZpZXMgdGhhdCBhbGwgcGFja2FnZXMnIHZlcnNpb25zIGFyZSBkaXZlcnRlZC4iCisjfiBtc2dzdHIgIkdpYnQgYW4sIGRhc3MgZGllIFZlcnNpb25lbiBhdXMgYWxsZW4gUGFrZXRlbiB1bWdlbGVpdGV0IHNpbmQuIgorCisjfiBtc2dpZCAiODIyLWRhdGUiCisjfiBtc2dzdHIgIjgyMi1kYXRlIgorCisjfiBtc2dpZCAiMjAwNy0wMS0yNCIKKyN+IG1zZ3N0ciAiMjQtMDEtMjAwNyIKKworI34gbXNnaWQgIjgyMi1kYXRlIC0gUHJpbnQgZGF0ZSBhbmQgdGltZSBpbiBSRkMyODIyIGZvcm1hdCIKKyN+IG1zZ3N0ciAiODIyLWRhdGUgLSBBZmZpY2hlciBsYSBkYXRlIGF1IGZvcm1hdCBSRkMyODIyIgorCisjfiBtc2dpZCAiQjw4MjItZGF0ZT4iCisjfiBtc2dzdHIgIkI8ODIyLWRhdGU+IgorCisjfiBtc2dpZCAiIgorI34gIkI8ODIyLWRhdGU+IGRpc3BsYXlzIHRoZSBjdXJyZW50IGRhdGUgYW5kIHRpbWUgaW4gdGhlIGZvcm1hdCBkZXNjcmliZWQgaW4gIgorI34gIlJGQzI4MjIuICBJdCBkb2VzIHNvIGJ5IHNpbXBseSBjYWxsaW5nIEI8ZGF0ZT4oMSkgIHdpdGggdGhlIEI8LVI+IG9wdGlvbi4iCisjfiBtc2dzdHIgIiIKKyN+ICJCPDgyMi1kYXRlPiBhZmZpY2hlIGxhIGRhdGUgZXQgbCdoZXVyZSBjb3VyYW50ZSBkYW5zIGxlIGZvcm1hdCBkw6ljcml0IHBhciAiCisjfiAibGEgUkZDwqAyODIyLiBQb3VyIGNlY2ksIGxhIGNvbW1hbmRlIEI8ZGF0ZT4oMSkgZXN0IHNpbXBsZW1lbnQgYXBwZWzDqWUgIgorI34gImF2ZWMgbCdvcHRpb24gQjwtUj4uIgorCisjfiBtc2dpZCAiIgorI34gIkI8VXNpbmcgODIyLWRhdGUgaXMgZGVwcmVjYXRlZCBzaW5jZT4gQjxkYXRlPigxKSAgcHJvdmlkZXMgdGhlIHNhbWUgIgorI34gImZ1bmN0aW9uYWxpdHkgd2hlbiBjYWxsZWQgd2l0aCB0aGUgQjwtUj4uIgorI34gbXNnc3RyICIiCisjfiAiQjxMJ3V0aWxpc2F0aW9uIGRlIDgyMi1kYXRlIGVzdCBvYnNvbMOodGU+IHBhcmNlIHF1ZSBCPGRhdGU+KDEpIGZvdXJuaXQgbGEgIgorI34gIm3Dqm1lIGZvbmN0aW9ubmFsaXTDqSBncsOiY2Ugw6Agc29uIG9wdGlvbiBCPC1SPi4iCisKKyN+IG1zZ2lkICJCPDgyMi1kYXRlPiBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudHMgb3Igb3B0aW9ucy4iCisjfiBtc2dzdHIgIkI8ODIyLWRhdGU+IG5lIHByZW5kIGF1Y3VuIHBhcmFtw6h0cmUgbmkgYXVjdW5lIG9wdGlvbi4iCisKKyN+IG1zZ2lkICJUaGlzIGZhY2lsaXR5IHJlYWxseSBvdWdodCB0byBiZSBwYXJ0IG9mIEI8ZGF0ZT4oMSkuIgorI34gbXNnc3RyICJDZXR0ZSBmb25jdGlvbm5hbGl0w6kgZGV2cmFpdCB2cmFpbWVudCDDqnRyZSBpbnTDqWdyw6llIMOgIEI8ZGF0ZT4oMSkuIgorCisjfiBtc2dpZCAiSTxJbnRlcm5ldCBNZXNzYWdlIEZvcm1hdD4gKFJGQzI4MjIpLCBCPGRhdGU+KDEpLiIKKyN+IG1zZ3N0ciAiIgorI34gIkk8SW50ZXJuZXQgTWVzc2FnZSBGb3JtYXQ+IChSRkMyODIyLCBmb3JtYXQgZGVzIG1lc3NhZ2VzIEludGVybmV0KSwgIgorI34gIkI8ZGF0ZT4oMSkuIgorCisjfiBtc2dpZCAiIgorI34gIkI8ODIyLWRhdGU+IGlzIGEgcmVhbGx5IHNpbXBsZSB3cmFwcGVyIGFyb3VuZCBCPGRhdGU+KDEpLiAgQnkgaXRzICIKKyN+ICJzaW1wbGljaXR5LCB0aGUgY29kZSBpcyBwcm9iYWJseSBub3QgY29weXJpZ2h0YWJsZSBhbmQgc2hvdWxkIGJlICIKKyN+ICJjb25zaWRlcmVkIHRvIGJlIGluIHRoZSBwdWJsaWMgZG9tYWluLiBUaGlzIG1hbiBwYWdlIHdhcyB3cml0dGVuIGJ5IEZyYW5rICIKKyN+ICJMaWNodGVuaGVsZCBiYXNlZCBvbiBhbiBlYXJsaWVyIHZlcnNpb24gYnkgSWFuIEphY2tzb24gYW5kIHdhcyBhbHNvIHB1dCAiCisjfiAiaW4gdGhlIHB1YmxpYyBkb21haW4uIgorI34gbXNnc3RyICIiCisjfiAiQjw4MjItZGF0ZT4gbmUgZmFpdCBxdSdhcHBlbGVyIEI8ZGF0ZT4oMSkuIERlIHBhciBzYSBzaW1wbGljaXTDqSwgc29uIGNvZGUgIgorI34gIm4nZXN0IHByb2JhYmxlbWVudCBwYXMgc291bWlzIGF1eCByw6hnbGVzIGRlcyBjb3B5cmlnaHQgZXQgZG9pdCDDqnRyZSAiCisjfiAiY29uc2lkw6lyw6kgY29tbWUgw6l0YW50IGRhbnMgbGUgZG9tYWluZSBwdWJsaWMuIENldHRlIHBhZ2UgZGUgbWFudWVsIGEgw6l0w6kgIgorI34gIsOpY3JpdGUgcGFyIEZyYW5rIExpY2h0ZW5oZWxkIGVuIHNlIGJhc2FudCBzdXIgbGEgdmVyc2lvbiBwcsOpY8OpZGVudGUgIgorI34gIsOpY3JpdGUgcGFyIElhbiBKYWNrc29uLCBxdWkgw6l0YWl0IMOpZ2FsZW1lbnQgZGFucyBsZSBkb21haW5lIHB1YmxpYy4iCisKKyN+IG1zZ2lkICJEbyBub3QgY2xlYW4gdGhlIHNvdXJjZSB0cmVlIChpbXBsaWVzIEI8LWI+KS4iCisjfiBtc2dzdHIgIk5lIHBhcyBuZXR0b3llciBsJ2FyYm9yZXNjZW5jZSBzb3VyY2UgKGltcGxpcXVlIGwnb3B0aW9uIEI8LWI+KS4iCisKKyN+IG1zZ2lkICIiCisjfiAiQjxEZXByZWNhdGVkPi4gU2V0IGFuIG91dHB1dCBzdWJzdGl0dXRpb24gdmFyaWFibGUuICBTZWUgQjxkZWItc3Vic3R2YXJzPiIKKyN+ICIoNSkgZm9yIGEgZGlzY3Vzc2lvbiBvZiBvdXRwdXQgc3Vic3RpdHV0aW9uLiIKKyN+IG1zZ3N0ciAiIgorI34gIkI8RGVwcmVjYXRlZD4uIEZpeGUgbGEgdmFsZXVyIGQndW5lIHZhcmlhYmxlIGRlIHN1YnN0aXR1dGlvbi4gQ29uc3VsdGV6ICIKKyN+ICJCPGRlYi1zdWJzdHZhcnM+KDUpIHBvdXIgdW5lIGRpc2N1c3Npb24gc3VyIGxhIHZhbGV1ciBkZSBzdWJzdGl0dXRpb24uIgorCisjfiBtc2dpZCAiY2xlYW51cC1pbmZvIgorI34gbXNnc3RyICJjbGVhbnVwLWluZm8iCisKKyN+IG1zZ2lkICIiCisjfiAiY2xlYW51cC1pbmZvIC0gY2xlYW4gdXAgdGhlIG1lc3MgdGhhdCBib2d1cyBpbnN0YWxsLWluZm8gbWF5IGhhdmUgZG9uZSIKKyN+IG1zZ3N0ciAiIgorI34gImNsZWFudXAtaW5mbyAtIG5ldHRvaWUgbGUgZMOpc29yZHJlIHF1aSBhIHB1IMOqdHJlIG1pcyBwYXIgdW4gaW5zdGFsbC1pbmZvICIKKyN+ICJib2d1w6kiCisKKyN+IG1zZ2lkICJCPGNsZWFudXAtaW5mbz4gW0k8b3B0aW9ucz5dIFtCPC0tPl0gW0k8ZGlybmFtZT5dIgorI34gbXNnc3RyICJCPGNsZWFudXAtaW5mbz4gW0k8b3B0aW9ucz5dIFtCPC0tPl0gW0k8csOpcGVydG9pcmU+XSIKKworI34gbXNnaWQgIiIKKyN+ICJCPGNsZWFudXAtaW5mbz4gaXMgYSBQZXJsIHNjcmlwdCB0aGF0IHRyaWVzIHRvIGNsZWFuIHVwIHRoZSBtZXNzIHRoYXQgIgorI34gImJvZ3VzIEI8aW5zdGFsbC1pbmZvPig4KSAgbWF5IGhhdmUgZG9uZS4gIEl0IGdhdGhlcnMgYWxsIHNlY3Rpb25zIHdpdGggIgorI34gInRoZSBzYW1lIGhlYWRpbmcgaW50byBhIHNpbmdsZSBvbmUuICBJdCB0cmllcyB0byBiZSBzbWFydCBhYm91dCBjYXNlcyBhbmQgIgorI34gInRyYWlsaW5nIGNvbG9uL3NwYWNlcy4iCisjfiBtc2dzdHIgIiIKKyN+ICJCPGNsZWFudXAtaW5mbz4gZXN0IHVuIHNjcmlwdCBQZXJsIHF1aSBlc3NheWUgZGUgbmV0dG95ZXIgbGUgZMOpc29yZHJlIHF1aSAiCisjfiAiYSBwdSDDqnRyZSBtaXMgcGFyIHVuIEI8aW5zdGFsbC1pbmZvPig4KSBib2d1w6kuIElsIHJhc3NlbWJsZSBlbiB1bmUgc2V1bGUgIgorI34gInNlY3Rpb24gdG91dGVzIGxlcyBzZWN0aW9ucyBxdWkgcG9zc8OoZGVudCBsZSBtw6ptZSBlbi10w6p0ZS4gSWwgZXNzYXllIGRlICIKKyN+ICJzZSBkw6licm91aWxsZXIgYXZlYyBsZXMgcHJvYmzDqG1lcyBkZSBjYXNzZSBkZXMgbGV0dHJlcyBvdSBhdmVjIGxlcyAiCisjfiAiZXNwYWNlcyBvdSBsZXMgZGV1eC1wb2ludHMgcXVpIHBldXZlbnQgYXZvaXIgw6l0w6kgbGFpc3PDqXMuIgorCisjfiBtc2dpZCAiIgorI34gIk90aGVyIGNsZWFuLXVwcyBpbmNsdWRlIHJlbW92aW5nIG9mIGVtcHR5IHNlY3Rpb25zLCBhbmQgc3F1ZWV6aW5nIHRoZSAiCisjfiAiYmxhbmsgbGluZXMgKGluIGVudHJpZXMgcGFydCBvbmx5KS4iCisjfiBtc2dzdHIgIiIKKyN+ICJJbCBwcm9jw6hkZSBhdXNzaSDDoCBsYSBzdXBwcmVzc2lvbiBkZXMgc2VjdGlvbnMgdmlkZXMgZXQgw6AgbCfDqWxpbWluYXRpb24gIgorI34gImRlcyBsaWduZXMgYmxhbmNoZXMgKGRhbnMgbGVzIGVudHLDqWVzIHNldWxlbWVudCkuIgorCisjfiBtc2dpZCAiIgorI34gIk9yZGVyIG9mIHNlY3Rpb25zIGlzIHByZXNlcnZlZCAodGhlIGZpcnN0IGVuY291bnRlcmVkIHNlY3Rpb24gY291bnRzKS4gICIKKyN+ICJPcmRlciBvZiBlbnRyaWVzIHdpdGhpbiBhIHNlY3Rpb24gaXMgcHJlc2VydmVkLiIKKyN+IG1zZ3N0ciAiIgorI34gIkwnb3JkcmUgZGVzIHNlY3Rpb25zIGVzdCBwcsOpc2VydsOpIChsYSBwcmVtacOocmUgc2VjdGlvbiByZW5jb250csOpZSBlc3QgIgorI34gInByaXNlIGVuIGNvbXB0ZSkuIEwnb3JkcmUgZGVzIGVudHLDqWVzIMOgIGwnaW50w6lyaWV1ciBkZXMgc2VjdGlvbnMgZXN0ICIKKyN+ICJwcsOpc2VydsOpLiIKKworI34gbXNnaWQgIiIKKyN+ICJQbGVhc2UgYmUgQjxleHRyZW1lbHkgY2FyZWZ1bD4gd2hlbiB1c2luZyB0aGlzIHV0aWxpdHkgLSBpdCBtaWdodCBub3QgYmUgIgorI34gIjEwMCUgc2FmZS4gY2xlYW51cC1pbmZvIHRyaWVzIHRvIGJlIGNhcmVmdWwgd2l0aCB5b3VyIGluZm8gZGlyIGZpbGUsIGJ1dCAiCisjfiAib25seSB1bnRpbCBpdCB3cml0ZXMgaXQuIFlvdSBzaG91bGQgYmFjayB0aGUgZmlsZSB1cCBwcmlvciB0byB1c2luZyB0aGlzICIKKyN+ICJzY3JpcHQuIgorI34gbXNnc3RyICIiCisjfiAiQjxGYWl0ZXMgdHLDqHMgYXR0ZW50aW9uPiBlbiB1dGlsaXNhbnQgY2Ugc2NyaXB0LCBpbCBuJ2VzdCBwZXV0LcOqdHJlIHBhcyAiCisjfiAiZW50acOocmVtZW50IGZpYWJsZS4gY2xlYW51cC1pbmZvIGVzc2F5ZSBkZSBmYWlyZSBhdHRlbnRpb24gYXUgZmljaGllciAiCisjfiAiwqvCoGluZm8vZGlywqDCuywgbWFpcyBzZXVsZW1lbnQganVzcXUnw6AgY2UgcXUnaWwgbCdhaXQgbW9kaWZpw6kuIElsIHZhdXQgIgorI34gIm1pZXV4IHNhdXZlZ2FyZGVyIGNlIGZpY2hpZXIgYXZhbnQgZCd1dGlsaXNlciBjZSBzY3JpcHQuIgorCisjfiBtc2dpZCAiQjwtLXVuc2FmZT4iCisjfiBtc2dzdHIgIkI8LS11bnNhZmU+IgorCisjfiBtc2dpZCAiU2V0IHNvbWUgYWRkaXRpb25hbCBwb3NzaWJseSB1c2VmdWwgb3B0aW9ucy4iCisjfiBtc2dzdHIgIkFwcG9ydGUgcXVlbHF1ZXMgb3B0aW9ucyBzdXBwbMOpbWVudGFpcmVzIHF1aSBwZXV2ZW50IMOqdHJlIHV0aWxlcy4iCisKKyN+IG1zZ2lkICIiCisjfiAiQjxXYXJuaW5nOiB0aGUgYC0tdW5zYWZlJyBvcHRpb24gbWF5IGdhcmJsZSBhbiBvdGhlcndpc2UgY29ycmVjdCBmaWxlIT4iCisjfiBtc2dzdHIgIiIKKyN+ICJCPEF0dGVudGlvbiA6IGwnb3B0aW9uIMKrIC0tdW5zYWZlIMK7IHBldXQgYWx0w6lyZXIgdW4gZmljaGllciBxdWkgw6l0YWl0ICIKKyN+ICJjb3JyZWN0wqAhPlwiIgorCisjfiBtc2dpZCAiSTwvdXNyL2luZm8vZGlyPiBvciBJPEU8bHQ+ZGlybmFtZUU8Z3Q+L2Rpcj4iCisjfiBtc2dzdHIgIkk8L3Vzci9pbmZvL2Rpcj4gb3UgSTxFPGx0PnLDqXBlcnRvaXJlRTxndD4vZGlyPiIKKworI34gbXNnaWQgIiIKKyN+ICJUaGUgaW5mbyBkaXJlY3RvcnkgZmlsZS4gVGhlIGxvY2sgZmlsZSBpcyBuYW1lZCB0aGUgc2FtZSwgd2l0aCBcIi5sb2NrXCIgIgorI34gInN1ZmZpeC4iCisjfiBtc2dzdHIgIiIKKyN+ICJMZSBmaWNoaWVyIMKrwqBkaXLCoMK7IGR1IHLDqXBlcnRvaXJlIMKrwqBpbmZvwqDCuy4gTGUgZmljaGllciB2ZXJyb3VpbGzDqSBwb3J0ZSBsZSAiCisjfiAibcOqbWUgbm9tIHN1aXZpIGRlIMKrIC5sb2NrIMK7LiIKKworI34gbXNnaWQgIlByb2JhYmx5IG1hbnkuIgorI34gbXNnc3RyICJCZWF1Y291cCwgc2FucyBkb3V0ZS4iCisKKyN+IG1zZ2lkICJCPGluc3RhbGwtaW5mbz4oOCksIEI8aW5mbz4oMSkuIgorI34gbXNnc3RyICJCPGluc3RhbGwtaW5mbz4oOCksIEI8aW5mbz4oMSkuIgorCisjLCBmdXp6eQorI34gbXNnaWQgIkNvcHlyaWdodCBcXChjbyAxOTk2IEtpbS1NaW5oIEthcGxhbiIKKyN+IG1zZ3N0ciAiQ29weXJpZ2h0IChDKSAxOTk2IEtpbS1NaW5oIEthcGxhbi4iCisKKyN+IG1zZ2lkICIyMDA4LTAxLTMwIgorI34gbXNnc3RyICIzMC0wMS0yMDA4IgorCisjfiBtc2dpZCAiZ2VuZXJpYyBuYW1lIgorI34gbXNnc3RyICJub20gZ8OpbsOpcmlxdWUiCisKKyN+IG1zZ2lkICJzeW1saW5rIgorI34gbXNnc3RyICJsaWVuIHN5bWJvbGlxdWUiCisKKyN+IG1zZ2lkICIiCisjfiAiV2l0aG91dCBhbnkgZnVydGhlciBxdWFsaWZpY2F0aW9uLCB0aGlzIG1lYW5zIGEgc3ltYm9saWMgbGluayBpbiB0aGUgIgorI34gImFsdGVybmF0aXZlcyBkaXJlY3Rvcnk6IG9uZSB3aGljaCB0aGUgc3lzdGVtIGFkbWluaXN0cmF0b3IgaXMgZXhwZWN0ZWQgdG8gIgorI34gImFkanVzdC4iCisjfiBtc2dzdHIgIiIKKyN+ICJTYW5zIGF1dHJlIGluZm9ybWF0aW9uLCBjJ2VzdCB1biBsaWVuIHN5bWJvbGlxdWUgcXVpIHNlIHRyb3V2ZSBkYW5zIGxlICIKKyN+ICJyw6lwZXJ0b2lyZSBhbHRlcm5hdGl2ZXMsIGxpZW4gcXVlIGwnYWRtaW5pc3RyYXRldXIgc3lzdMOobWUgZXN0IHN1cHBvc8OpICIKKyN+ICLDqXRhYmxpci4iCisKKyN+IG1zZ2lkICJDYWxsIEI8LS1jb25maWc+IG9uIGFsbCBhbHRlcm5hdGl2ZXMuIgorI34gbXNnc3RyICJBcHBlbGxlIEI8LS1jb25maWc+IHN1ciB0b3V0ZXMgbGVzIGFsdGVybmF0aXZlcy4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjxFcnJvcjo+IEU8bHQ+ZXJyb3IgZGV0YWlsc0U8Z3Q+IgorI34gbXNnc3RyICJCPFByaW9yaXR5Oj4gRTxsdD5wcmlvcml0w6lFPGd0PiIKKworI34gbXNnaWQgIm1haWx0bzpqb2V5aEBkZWJpYW4ub3JnIgorI34gbXNnc3RyICJtYWlsdG86am9leWhAZGViaWFuLm9yZyIKKworIywgZnV6enkKKyN+IG1zZ2lkICJFPGx0PmpvZXloQGRlYmlhbi5vcmdFPGd0PiIKKyN+IG1zZ3N0ciAiRTxsdD5qb2V5aEBkZWJpYW4ub3JnRTxndD4uIgorCisjfiBtc2dpZCAibWFpbHRvOndha2tlcm1hQGRlYmlhbi5vcmciCisjfiBtc2dzdHIgIm1haWx0bzp3YWtrZXJtYUBkZWJpYW4ub3JnIgorCisjfiBtc2dpZCAiRTxsdD53YWtrZXJtYUBkZWJpYW4ub3JnRTxndD4iCisjfiBtc2dzdHIgIkU8bHQ+d2Fra2VybWFAZGViaWFuLm9yZ0U8Z3Q+IgorCisjLCBmdXp6eQorI358IG1zZ2lkICIyMDA3LTA3LTE2IgorI34gbXNnaWQgIjIwMDctMDctMTgiCisjfiBtc2dzdHIgIjE2LTA3LTIwMDciCisKKyN+IG1zZ2lkICIyMDA3LTEwLTA2IgorI34gbXNnc3RyICIwNi0xMC0yMDA3IgorCisjfiBtc2dpZCAiMjAwOC0wMy0xNCIKKyN+IG1zZ3N0ciAiMTQtMDMtMjAwOCIKKworIywgZnV6enkKKyN+IG1zZ2lkICIiCisjfiAiVGhlIEI8LXM+STx4PiBvcHRpb25zIGNvbnRyb2wgd2hldGhlciB0aGUgb3JpZ2luYWwgc291cmNlIGFyY2hpdmUgaXMgIgorI34gImluY2x1ZGVkIGluIHRoZSB1cGxvYWQgaWYgYW55IHNvdXJjZSBpcyBiZWluZyBnZW5lcmF0ZWQgKGkuZS4gIEI8LWI+LCBCPC0iCisjfiAiQj4gb3IgQjwtQT4gaGF2ZW4ndCBiZWVuIHVzZWQpLiIKKyN+IG1zZ3N0ciAiIgorI34gIkxlcyBvcHRpb25zIEI8LXM+STx4PiBjb250csO0bGVudCBzaSBsJ2FyY2hpdmUgc291cmNlIG9yaWdpbmFsZSBlc3QgIgorI34gImluY2x1c2UgZGFucyBsJ2luc3RhbGxhdGlvbiBwcm9kdWl0ZSBzaSB1biBwYXF1ZXQgc291cmNlIGVzdCBjcsOpw6kgKGNhZC4gIgorI34gInF1ZSBsZXMgb3B0aW9ucyBCPC1iPiBvdSBCPC1CPiBuJ29udCBwYXMgw6l0w6kgdXRpbGlzw6llcykuIgorCisjfiBtc2dpZCAiIgorI34gIkJ5IGRlZmF1bHQsIG9yIGlmIHNwZWNpZmllZCwgdGhlIG9yaWdpbmFsIHNvdXJjZSB3aWxsIGJlIGluY2x1ZGVkIGlmIHRoZSAiCisjfiAidmVyc2lvbiBudW1iZXIgZW5kcyBpbiBCPC0wPiBvciBCPC0xPiwgaS5lLiBpZiB0aGUgRGViaWFuIHJldmlzaW9uIHBhcnQgIgorI34gIm9mIHRoZSB2ZXJzaW9uIG51bWJlciBpcyBCPDA+IG9yIEI8MT4uIgorI34gbXNnc3RyICIiCisjfiAiUGFyIGTDqWZhdXQsIG91IHNpIHNww6ljaWZpw6ksIGxlcyBzb3VyY2VzIG9yaWdpbmFsZXMgc29udCBpbmNsdXNlcyBzaSBsZSAiCisjfiAibnVtw6lybyBkZSB2ZXJzaW9uIHNlIHRlcm1pbmUgcGFyIEI8LTA+IG91IEI8LTE+LCBjJ2VzdC3DoC1kaXJlIHNpIGxhICIKKyN+ICJwYXJ0aWUgwqvCoHLDqXZpc2lvbiBEZWJpYW7CoMK7IGR1IG51bcOpcm8gZGUgdmVyc2lvbiBlc3Qgw6lnYWwgw6AgQjwwPiBvdSBCPDE+LiIKKworI34gbXNnaWQgIiIKKyN+ICJVc2UgY2hhbmdlbG9nIGluZm9ybWF0aW9uIGZyb20gYWxsIHZlcnNpb25zIHN0cmljdGx5IGxhdGVyIHRoYW4gIgorI34gIkk8dmVyc2lvbj4uIgorI34gbXNnc3RyICIiCisjfiAiVXRpbGlzZSBsZXMgaW5mb3JtYXRpb25zIGNvbnRlbnVlcyBkYW5zIGxlIGZpY2hpZXIgwqvCoGNoYW5nZWxvZ8KgwrsgZXQgcXVpICIKKyN+ICJjb25jZXJuZW50IHRvdXRlcyBsZXMgdmVyc2lvbnMgc3RyaWN0ZW1lbnQgcGx1cyByw6ljZW50ZXMgcXVlIEk8dmVyc2lvbj4uIgorCisjfiBtc2dpZCAiQjwtRT4iCisjfiBtc2dzdHIgIkI8LUU+IgorCisjfiBtc2dpZCAiIgorI34gIlR1cm4gY2VydGFpbiB3YXJuaW5ncyBpbnRvIGVycm9ycy4gT25seSBCPGRwa2ctc291cmNlPiB1c2VzIHRoaXMsIGJ1dCAiCisjfiAiQjxkcGtnLWJ1aWxkcGFja2FnZT4gcmVjb2duaXplcyBpdCwgYW5kIHBhc3NlcyBpdCB0aHJ1IHRvIEI8ZHBrZy1zb3VyY2U+LiIKKyN+IG1zZ3N0ciAiIgorI34gIlRyYW5zZm9ybWUgY2VydGFpbnMgYXZlcnRpc3NlbWVudHMgZW4gZXJyZXVycy4gU2V1bCBCPGRwa2ctc291cmNlPiAiCisjfiAibCd1dGlsaXNlLCBtYWlzIEI8ZHBrZy1idWlsZHBhY2thZ2U+IGxhIHJlY29ubmHDrnQgZXQgbGEgdHJhbnNtZXQgw6AgQjxkcGtnLSIKKyN+ICJzb3VyY2U+LiIKKworI34gbXNnaWQgIkI8LVc+IgorI34gbXNnc3RyICJCPC1XPiIKKworI34gbXNnaWQgIiIKKyN+ICJOZWdhdGVzIGEgcHJldmlvdXNseSBzZXQgQjwtRT4uICBPbmx5IEI8ZHBrZy1zb3VyY2U+IHVzZXMgdGhpcywgYnV0ICIKKyN+ICJCPGRwa2ctYnVpbGRwYWNrYWdlPiByZWNvZ25pemVzIGl0LCBhbmQgcGFzc2VzIGl0IHRocnUgdG8gQjxkcGtnLXNvdXJjZT4uIgorI34gbXNnc3RyICIiCisjfiAiQW5udWxlIHVuZSBvcHRpb24gQjwtRT4gdXRpbGlzw6llIHByw6ljw6lkZW1tZW50LiBTZXVsIEI8ZHBrZy1zb3VyY2U+ICIKKyN+ICJsJ3V0aWxpc2UsIG1haXMgQjxkcGtnLWJ1aWxkcGFja2FnZT4gbGEgcmVjb25uYcOudCBldCBsYSB0cmFuc21ldCDDoCBCPGRwa2ctIgorI34gInNvdXJjZT4uIgorCisjfiBtc2dpZCAiMjAwNy0wOS0wOCIKKyN+IG1zZ3N0ciAiMDgtMDktMjAwNyIKKworI34gbXNnaWQgIiIKKyN+ICJUaGVyZSBpcyBubyBhdXRoZW50aWNhdGlvbiBvbiBCPC5kZWI+IGZpbGVzOyBpbiBmYWN0LCB0aGVyZSBpc24ndCBldmVuIGEgIgorI34gInN0cmFpZ2h0Zm9yd2FyZCBjaGVja3N1bS4iCisjfiBtc2dzdHIgIiIKKyN+ICJJbCBuJ3kgYSBwYXMgZGUgdmFsaWRhdGlvbiBkZXMgZmljaGllcnMgQjwuZGViIDs+IGVuIGZhaXQsIGlsIG4neSBhIG3Dqm1lICIKKyN+ICJwYXMgZGUgc2ltcGxlIHNvbW1lIGRlIGNvbnRyw7RsZS4iCisKKyN+IG1zZ2lkICIyMDA4LTAzLTAyIgorI34gbXNnc3RyICIwMi0wMy0yMDA4IgorCisjfiBtc2dpZCAiMjAwOC0wMS0xMyIKKyN+IG1zZ3N0ciAiMTMtMDEtMjAwOCIKKworI34gbXNnaWQgIjIwMDgtMDMtMjUiCisjfiBtc2dzdHIgIjI1LTAzLTIwMDgiCisKKyN+IG1zZ2lkICIyMDA4LTAzLTE2IgorI34gbXNnc3RyICIxNi0wMy0yMDA4IgorCisjfiBtc2dpZCAiMjAwOC0wNC0wOCIKKyN+IG1zZ3N0ciAiMDgtMDQtMjAwOCIKKworI34gbXNnaWQgIiIKKyN+ICJBIHNpbXBsZXIgb25lLXNob3QgY29tbWFuZCB0byByZXRyaWV2ZSBhbmQgdXBkYXRlIHRoZSBJPGF2YWlsYWJsZT4gZmlsZSAiCisjfiAiaXMgQjxkc2VsZWN0IHVwZGF0ZT4uIgorI34gbXNnc3RyICIiCisjfiAiUG91ciByw6ljdXDDqXJlciBldCBtZXR0cmUgw6Agam91ciBsZSBmaWNoaWVyIEk8YXZhaWxhYmxlPiwgaWwgZXhpc3RlIHVuZSAiCisjfiAiY29tbWFuZGUgcGx1cyBzaW1wbGXCoDogQjxkc2VsZWN0IHVwZGF0ZT4uIgorCisjfiBtc2dpZCAiIgorI34gIkRpc3BsYXkgZGV0YWlscyBhYm91dCBJPHBhY2thZ2UtbmFtZT4sIGFzIGZvdW5kIGluIEk8L3Zhci9saWIvZHBrZy8iCisjfiAiYXZhaWxhYmxlPi4iCisjfiBtc2dzdHIgIiIKKyN+ICJBZmZpY2hlIGRlcyByZW5zZWlnbmVtZW50cyBkw6l0YWlsbMOpcyBzdXIgSTxwYXF1ZXQ+LCB0ZWxzIHF1J2lscyBzb250ICIKKyN+ICJ0cm91dsOpcyBkYW5zIGxlIGZpY2hpZXIgSTwvdmFyL2xpYi9kcGtnL2F2YWlsYWJsZT4uIgorCisjfiBtc2dpZCAiIgorI34gIlNlbmQgcGFja2FnZSBzdGF0dXMgaW5mbyB0byBmaWxlIGRlc2NyaXB0b3IgSTxFPGx0Pm5FPGd0Pj4uIFRoaXMgY2FuIGJlICIKKyN+ICJnaXZlbiBtdWx0aXBsZSB0aW1lcy4gU3RhdHVzIHVwZGF0ZXMgYXJlIG9mIHRoZSBmb3JtIGBzdGF0dXM6ICIKKyN+ICJFPGx0PnBrZ0U8Z3Q+OiBFPGx0PnBrZyBzdGF0ZUU8Z3Q+Jy4gIEVycm9ycyBhcmUgcmVwb3J0ZWQgYXMgYHN0YXR1czogIgorI34gIkU8bHQ+cGtnRTxndD46IGVycm9yOiBleHRlbmQtZXJyb3ItbWVzc2FnZScuICBDb25maWd1cmF0aW9uIGZpbGUgIgorI34gImNvbmZsaWN0cyBhcmUgcmVwb3J0ZWQgYXMgYHN0YXR1czogY29uZmZpbGUtcHJvbXB0OiBjb25mZmlsZSA6ICdjdXJyZW50LSIKKyN+ICJjb25mZmlsZScgJ25ldy1jb25mZmlsZScgdXNlcmVkaXRlZCBkaXN0ZWRpdGVkJy4iCisjfiBtc2dzdHIgIiIKKyN+ICJDZXR0ZSBhY3Rpb24gZW52b2llIGRlcyBpbmZvcm1hdGlvbnMgc3VyIGwnw6l0YXQgZCd1biBwYXF1ZXQgYXUgIgorI34gImRlc2NyaXB0ZXVyIGRlIGZpY2hpZXIgSTxFPGx0Pm5FPGd0Pj4uIE9uIHBldXQgcsOpcMOpdGVyIGwnb3DDqXJhdGlvbiAiCisjfiAicGx1c2lldXJzIGZvaXMuIExhIG1pc2Ugw6Agam91ciBkJ3VuIMOpdGF0IGVzdCBkZSBsYSBmb3JtZcKgOiDCq8Kgc3RhdHVzOiAiCisjfiAiRTxsdD5wa2dFPGd0PjogRTxsdD5wa2cgc3RhdGVFPGd0PsKgwrsuICBVbmUgZXJyZXVyIGVzdCBzaWduYWzDqWUgc291cyBsYSAiCisjfiAiZm9ybWUgOiBFPGx0PnBrZ0U8Z3Q+OiBlcnJvcjogZXh0ZW5kLWVycm9yLW1lc3NhZ2UuICBVbiBjb25mbGl0IGF2ZWMgdW4gIgorI34gImZpY2hpZXIgZGUgY29uZmlndXJhdGlvbiBlc3Qgc2lnbmFsw6kgc291cyBsYSBmb3JtZSA6IHN0YXR1czogY29uZmZpbGUtIgorI34gInByb21wdDogY29uZmZpbGUgOiAnY3VycmVudC1jb25mZmlsZScgJ25ldy1jb25mZmlsZScgdXNlcmVkaXRlZCBkaXN0ZWRpdGVkIgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDgtMDEtMDMiCisjfiBtc2dzdHIgIjEzLTAxLTIwMDgiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjwtYj4gSTxkaXJlY3Rvcnk+IFtJPG9yaWctZGlyZWN0b3J5PnxJPG9yaWctdGFyZ3o+fFxcKGFxXFwoYXFdIgorI34gbXNnc3RyICIiCisjfiAiQjwtYj4gW0k8b3B0aW9ucz5dIEk8csOpcGVydG9pcmU+IFtJPHLDqXBlcnRvaXJlLWQnb3JpZ2luZT58QjxvcmlnLSIKKyN+ICJ0YXJnej58JyddIgorCisjLCBmdXp6eQorI34gbXNnaWQgIlRoaXMgb3B0aW9uIHR1cm5zIGNlcnRhaW4gd2FybmluZ3MgaW50byBlcnJvcnMuIgorI34gbXNnc3RyICJDZXR0ZSBvcHRpb24gdHJhbnNmb3JtZSBjZXJ0YWluZXMgZXJyZXVycyBlbiBhdmVydGlzc2VtZW50cy4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiVGhpcyBvcHRpb24gbmVnYXRlcyBhIHByZXZpb3VzbHkgc2V0IEI8LUU+LiIKKyN+IG1zZ3N0ciAiQ2V0dGUgb3B0aW9uIGFubnVsZSB1bmUgb3B0aW9uIEI8LVc+IHV0aWxpc8OpZSBwcsOpY8OpZGVtbWVudC4iCisKKyN+IG1zZ2lkICIiCisjfiAiVGhlIGJpbmFyeSBwYWNrYWdlIGVudHJpZXMgaW4gdGhlIEI8ZGViaWFuL2ZpbGVzPiBmaWxlIHdpbGwgYmUgcGFzc2VkICIKKyN+ICJ0aHJvdWdoIHZhcmlhYmxlIHN1YnN0aXR1dGlvbiB0d2ljZS4gVGhpcyBzaG91bGQgbm90IG1hdHRlciwgc2luY2UgQjwkPiwgIgorI34gIkI8ez4gYW5kIEI8fT4gYXJlIG5vdCBsZWdhbCBpbiBwYWNrYWdlIG5hbWVzIG9yIHZlcnNpb24gbnVtYmVycy4iCisjfiBtc2dzdHIgIiIKKyN+ICJPbiBvcMOocmUgZGV1eCBmb2lzIGxhIHN1YnN0aXR1dGlvbiBkZSB2YXJpYWJsZSBzdXIgbGVzIGVudHLDqWVzIGQndW4gIgorI34gInBhcXVldCBiaW5haXJlIGRhbnMgbGUgZmljaGllciBCPGRlYmlhbi9maWxlcz4uIENlbGEgbmUgZGV2cmFpdCBwYXMgcG9zZXIgIgorI34gImRlIHByb2Jsw6htZSBwdWlzcXVlIEI8JD4sIEI8ez4gZXQgQjx9PiBuZSBzb250IHBhcyBwZXJtaXMgZGFucyBsZXMgbm9tcyAiCisjfiAiZGUgcGFxdWV0IGV0IGxlcyBudW3DqXJvcyBkZSB2ZXJzaW9uLiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJzaGxpYnMiCisjfiBtc2dzdHIgImRlYi1zaGxpYnMiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiRklYTUUgbm90IHVzZWQgaW4gdGhlIHNvdXJjZSE/IgorI34gbXNnc3RyICJOZSBwYXMgc2lnbmVyIGxlIHBhcXVldCBzb3VyY2UuIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICJEb24ndCBhY3R1YWxseSBkbyBhbnl0aGluZywganVzdCBzYXkgd2hhdCB3b3VsZCBiZSBkb25lLiAgVGhpcyBvcHRpb24gaXMgIgorI34gIm5vdCB5ZXQgaW1wbGVtZW50ZWQuIgorI34gbXNnc3RyICIiCisjfiAiTmUgcHJvZHVpdCBwYXMgZGUgY29tbWVudGFpcmUgw6AgbW9pbnMgcXUndW5lIGVycmV1ciBzdXJ2aWVubmUuIENldHRlICIKKyN+ICJvcHRpb24gbidlc3QgcGFzIGVuY29yZSBpbXBsw6ltZW50w6llLiIKKworIywgZnV6enkKKyN+IG1zZ2lkICIiCisjfiAiU2VlIEk8L3Vzci9zaGFyZS9kb2MvZHBrZy9USEFOS1M+IGZvciB0aGUgbGlzdCBvZiBwZW9wbGUgd2hvIGhhdmVcbiIKKyN+ICJjb250cmlidXRlZCB0byBCPGRwa2c+LlxuIgorI34gbXNnc3RyICIiCisjfiAiQ29uc3VsdGV6IEk8L3Vzci9zaGFyZS9kb2MvZHBrZy9USEFOS1M+IHBvdXIgbGEgbGlzdGUgZGUgY2V1eCBxdWkgb250ICIKKyN+ICJjb250cmlidcOpIMOgIEI8ZHBrZz4uIgorCisjfiBtc2dpZCAiIgorI34gIlRoaXMgaXMgdmVyeSBoZWxwZnVsIGluIGN1dHRpbmcgb3V0IGV4dHJhbmVvdXMgZmlsZXMgdGhhdCBnZXQgaW5jbHVkZWQgaW4gIgorI34gInRoZSAuZGlmZi5neiwgKGVnOiBcImRlYmlhbi9CVUdTX1RPRE8vKlwiIG9yIFwiZGViaWFuL1JDUy8qLHZcIikuIEZvciAiCisjfiAiaW5zdGFuY2UsIGlmIHlvdSBtYWludGFpbiBhIHBhY2thZ2UgdGhhdCB5b3UgdHJhY2sgdmlhIHJlbW90ZSBDVlMsIHdoZXJlICIKKyN+ICJ5b3UgZG9uJ3QgaGF2ZSBhY2Nlc3MgcGVybWlzc2lvbnMgZm9yIGNvbW1pdHRpbmcgdGhlIGRlYmlhbiBjb250cm9sIGZpbGVzICIKKyN+ICJhbmQgbWFraW5nIHRhZ3MgZm9yIEk8Y3ZzLWJ1aWxkcGFja2FnZSgxKT4sIGl0IGlzIG5lY2Vzc2FyeSB0byBwZXJmb3JtIGFuICIKKyN+ICJleHRyYSBjaGVja291dC91cGRhdGUgaW50byBhIGRpcmVjdG9yeSB5b3Uga2VlcCBwcmlzdGluZSwgdG8gZ2VuZXJhdGUgIgorI34gInRoZSAub3JpZy50YXIuZ3ogZnJvbS4gVGhhdCBkaXJlY3Rvcnkgd2lsbCBoYXZlIENWUy9FbnRyaWVzIGZpbGVzIGluIGl0ICIKKyN+ICJ0aGF0IHdpbGwgY29udGFpbiB0aW1lc3RhbXBzIHRoYXQgZGlmZmVyIGZyb20gdGhlIG9uZXMgaW4geW91ciB3b3JraW5nICIKKyN+ICJkaXJlY3RvcnksIHRodXMgY2F1c2luZyB0aGVtIHRvIGJlIHVubmVjZXNzYXJpbHkgaW5jbHVkZWQgaW4gZXZlcnkgLmRpZmYuIgorI34gImd6LCB1bmxlc3MgeW91IHVzZSB0aGUgQjwtaT4gc3dpdGNoLiIKKyN+IG1zZ3N0ciAiIgorI34gIkMnZXN0IHRyw6hzIHV0aWxlIHBvdXIgc3VwcHJpbWVyIGxlcyBmaWNoaWVycyBzdXBlcmZsdXMgcXVpIHNvbnQgaW5jbHVzICIKKyN+ICJkYW5zIGxlIC5kaWZmLmd6IChwLiBleC4gwqvCoGRlYmlhbi9CVUdTX1RPRE8vKsKgwrsgb3UgwqvCoGRlYmlhbi9SQ1MvKix2wqDCuykuICIKKyN+ICJRdWFuZCBvbiBzdWl0IGF2ZWMgdW4gQ1ZTIGRpc3RhbnQgdW4gcGFxdWV0IHF1ZSBsJ29uIG1haW50aWVudCwgZXQgcXUnb24gIgorI34gImEgcGFzIGxhIHBvc3NpYmlsaXTDqSBkJ2VucmVnaXN0cmVyIGxlcyBmaWNoaWVycyBkZWJpYW4gZGUgY29udHLDtGxlIG91ICIKKyN+ICJkJ8OpdGlxdWV0ZXIgSTxjdnMtYnVpbGRwYWNrYWdlKDEpPiwgaWwgZmF1dCBmYWlyZSB1biDCq8KgY2hlY2tvdXQvdXBkYXRlwqDCuyAiCisjfiAic3VwcGzDqW1lbnRhaXJlIGRhbnMgdW4gcsOpcGVydG9pcmUgdGVudSB2aWVyZ2UgcG91ciBjcsOpZXIgbGUgZmljaGllciBvcmlnLiIKKyN+ICJ0YXIuZ3ouIExlcyBmaWNoaWVycyDCq8KgQ1ZTL0VudHJpZXPCoMK7IGRlIGNlIHLDqXBlcnRvaXJlIGNvbnRpZW5uZW50IGRlcyAiCisjfiAiZGF0ZXMgcXVpIGRpZmbDqHJlbnQgZGUgY2VsbGVzIGR1IHLDqXBlcnRvaXJlIGRlIHRyYXZhaWzCoDsgY2VsYSBwcm92b3F1ZSAiCisjfiAiaW5kw7ttZW50IGxldXIgaW5jbHVzaW9uIGRhbnMgY2hhcXVlIC5kaWZmLmd6IGNyw6nDqSwgw6AgbW9pbnMgZCd1dGlsaXNlciAiCisjfiAibCdvcHRpb24gQjwtaT4uIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgdmVyc2lvbiAyIG9yICIKKyN+ICJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS4iCisjfiBtc2dzdHIgIiIKKyN+ICJDZSBwcm9ncmFtbWUgZXN0IHVuIGxvZ2ljaWVsIGxpYnJlwqA7IHZveWV6IGxhIMKrwqBHTlUgR2VuZXJhbCBQdWJsaWMgIgorI34gIkxpY2VuY2XCoMK7IHZlcnNpb24gMiBvdSBzdXDDqXJpZXVyZSBwb3VyIGxlIGNvcHlyaWdodC4gSWwgbid5IGEgUEFTIGRlICIKKyN+ICJnYXJhbnRpZS4iCisKKyN+IG1zZ2lkICJUaGUgdXRpbGl0aWVzIGFuZCB0aGlzIG1hbnBhZ2Ugd2VyZSB3cml0dGVuIGJ5IElhbiBKYWNrc29uLiIKKyN+IG1zZ3N0ciAiQ2VzIG91dGlscyBldCBjZXR0ZSBwYWdlIGRlIG1hbnVlbCBvbnQgw6l0w6kgw6ljcml0cyBwYXIgSWFuIEphY2tzb24uIgorCisjfiBtc2dpZCAiQjwtLXJvb3Q9Pkk8ZGlyPiB8IEI8LS1hZG1pbmRpcj0+STxkaXI+IHwgQjwtLWluc3RkaXI9Pkk8ZGlyPiIKKyN+IG1zZ3N0ciAiQjwtLXJvb3Q9Pkk8cmVwPiB8IEI8LS1hZG1pbmRpcj0+STxyZXA+IHwgQjwtLWluc3RkaXI9Pkk8cmVwPiIKKworIywgZnV6enkKKyN+IG1zZ2lkICIiCisjfiAiVGhlc2Ugb3B0aW9ucyBjb250cm9sIHdoZXRoZXIgdGhlIG9yaWdpbmFsIHNvdXJjZSBhcmNoaXZlIGlzIGluY2x1ZGVkIGluICIKKyN+ICJ0aGUgdXBsb2FkIGdlbmVyYXRlZCBieSBCPGRwa2ctYnVpbGRwYWNrYWdlPiBpZiBhbnkgc291cmNlIGlzIGJlaW5nICIKKyN+ICJnZW5lcmF0ZWQgKGkuZS4sIEI8LWI+IG9yIEI8LUI+IGhhdmVuJ3QgYmVlbiB1c2VkKS4iCisjfiBtc2dzdHIgIiIKKyN+ICJMZXMgb3B0aW9ucyBCPC1zPkk8eD4gY29udHLDtGxlbnQgc2kgbCdhcmNoaXZlIHNvdXJjZSBvcmlnaW5hbGUgZXN0ICIKKyN+ICJpbmNsdXNlIGRhbnMgbCdpbnN0YWxsYXRpb24gcHJvZHVpdGUgc2kgdW4gcGFxdWV0IHNvdXJjZSBlc3QgY3LDqcOpIChjYWQuICIKKyN+ICJxdWUgbGVzIG9wdGlvbnMgQjwtYj4gb3UgQjwtQj4gbidvbnQgcGFzIMOpdMOpIHV0aWxpc8OpZXMpLiIKKworIywgZnV6enkKKyN+IG1zZ2lkICIiCisjfiAiSW5jbHVkZSB0aGUgb3JpZ2luYWwgc291cmNlIGlmIHRoZSB2ZXJzaW9uIG51bWJlciBlbmRzIGluIEI8LTA+IG9yIEI8LTE+LCAiCisjfiAiaS5lLiBpZiB0aGUgRGViaWFuIHJldmlzaW9uIHBhcnQgb2YgdGhlIHZlcnNpb24gbnVtYmVyIGlzIEI8MD4gb3IgQjwxPi4gICIKKyN+ICJCPFRoaXMgaXMgdGhlIGRlZmF1bHQuPiIKKyN+IG1zZ3N0ciAiIgorI34gIlBhciBkw6lmYXV0LCBvdSBzaSBzcMOpY2lmacOpLCBsZXMgc291cmNlcyBvcmlnaW5hbGVzIHNvbnQgaW5jbHVzZXMgc2kgbGUgIgorI34gIm51bcOpcm8gZGUgdmVyc2lvbiBzZSB0ZXJtaW5lIHBhciBCPC0wPiBvdSBCPC0xPiwgYydlc3Qtw6AtZGlyZSBzaSBsYSAiCisjfiAicGFydGllIMKrwqByw6l2aXNpb24gRGViaWFuwqDCuyBkdSBudW3DqXJvIGRlIHZlcnNpb24gZXN0IMOpZ2FsIMOgIEI8MD4gb3UgQjwxPi4iCisKKyN+IG1zZ2lkICIiCisjfiAiQjxkcGtnLWRlYj4gYW5kIHRoaXMgbWFucGFnZSB3ZXJlIHdyaXR0ZW4gYnkgSWFuIEphY2tzb24uICBUaGV5IGFyZSAiCisjfiAiQ29weXJpZ2h0IChDKSAxOTk1LTE5OTYgYnkgaGltIGFuZCByZWxlYXNlZCB1bmRlciB0aGUgR05VIEdlbmVyYWwgUHVibGljICIKKyN+ICJMaWNlbmNlIHZlcnNpb24gMiBvciBsYXRlcjsgdGhlcmUgaXMgTk8gV0FSUkFOVFkuIFNlZSBJPC91c3Ivc2hhcmUvZG9jLyIKKyN+ICJkcGtnL2NvcHlyaWdodD4gYW5kIEk8L3Vzci9zaGFyZS9jb21tb24tbGljZW5zZXMvR1BMPiBmb3IgZGV0YWlscy4iCisjfiBtc2dzdHIgIiIKKyN+ICJCPGRwa2ctZGViPiBldCBjZXR0ZSBwYWdlIGRlIG1hbnVlbCBvbnQgw6l0w6kgw6ljcml0cyBwYXIgSWFuIEphY2tzb24uIExlICIKKyN+ICJjb3B5cmlnaHQgKEMpIGRhdGUgZGUgMTk5NS0xOTk2IGV0IGlscyBvbnQgcGFydSBzb3VzIGxhIGxpY2VuY2UgwqvCoEdOVSAiCisjfiAiR2VuZXJhbCBQdWJsaWMgTGljZW5jZcKgwrssIHZlcnNpb24gMiBvdSBzdXDDqXJpZXVyZcKgOyBpbCBuJ3kgYSBQQVMgZGUgIgorI34gImdhcmFudGllLiBWb3lleiBCPC91c3Ivc2hhcmUvZG9jL2Rwa2cvY29weXJpZ2h0PiBldCBCPC91c3Ivc2hhcmUvY29tbW9uLSIKKyN+ICJsaWNlbnNlcy9HUEw+IHBvdXIgZGVzIHByw6ljaXNpb25zLiIKKworIywgZnV6enkKKyN+IG1zZ2lkICIiCisjfiAiQjwtc2E+IGZvcmNlcyB0aGUgaW5jbHVzaW9uIG9mIHRoZSBvcmlnaW5hbCBzb3VyY2U7IEI8LXNkPiBmb3JjZXMgaXRzICIKKyN+ICJleGNsdXNpb24gYW5kIGluY2x1ZGVzIG9ubHkgdGhlIGRpZmYuIgorI34gbXNnc3RyICIiCisjfiAiRm9yY2UgbCdleGNsdXNpb24gZGVzIHNvdXJjZXMgb3JpZ2luZWxsZXMgZXQgaW5jbHV0IHNldWxlbWVudCBsZSDCq8KgZGlmZsKgwrsuIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICJDb3B5cmlnaHQgMTk5NSwxOTk2IEVyaWNrIEJyYW5kZXJob3JzdC4gIEI8ZHBrZy1uYW1lPiBpcyBmcmVlIHNvZnR3YXJlOyAiCisjfiAic2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSB2ZXJzaW9uIDIgb3IgbGF0ZXIgZm9yIGNvcHlpbmcgIgorI34gImNvbmRpdGlvbnMuIFRoZXJlIGlzIEI8bm8+IHdhcnJhbnR5LiIKKyN+IG1zZ3N0ciAiIgorI34gIkNlIHByb2dyYW1tZSBlc3QgdW4gbG9naWNpZWwgbGlicmXCoDsgdm95ZXogbGEgwqvCoEdOVSBHZW5lcmFsIFB1YmxpYyAiCisjfiAiTGljZW5jZcKgwrsgdmVyc2lvbiAyIG91IHN1cMOpcmlldXJlIHBvdXIgbGUgY29weXJpZ2h0LiBJbCBuJ3kgYSBQQVMgZGUgIgorI34gImdhcmFudGllLiIKKworI34gbXNnaWQgIiIKKyN+ICJCPGRwa2ctc3BsaXQ+IGFuZCB0aGlzIG1hbnBhZ2Ugd2VyZSB3cml0dGVuIGJ5IElhbiBKYWNrc29uLiBUaGV5IGFyZSAiCisjfiAiQ29weXJpZ2h0IChDKSAxOTk1LTE5OTYgYnkgaGltIGFuZCByZWxlYXNlZCB1bmRlciB0aGUgR05VIEdlbmVyYWwgUHVibGljICIKKyN+ICJMaWNlbmNlIHZlcnNpb24gMiBvciBsYXRlcjsgdGhlcmUgaXMgTk8gV0FSUkFOVFkuIFNlZSBJPC91c3Ivc2hhcmUvZG9jLyIKKyN+ICJkcGtnL2NvcHlyaWdodD4gYW5kIEk8L3Vzci9zaGFyZS9jb21tb24tbGljZW5zZXMvR1BMPiBmb3IgZGV0YWlscy4iCisjfiBtc2dzdHIgIiIKKyN+ICJCPGRwa2ctc3BsaXQ+IGV0IGNldHRlIHBhZ2UgZGUgbWFudWVsIG9udCDDqXTDqSDDqWNyaXRzIHBhciBJYW4gSmFja3Nvbi4gICIKKyN+ICJDb3B5cmlnaHQgKEMpIDE5OTUtMTk5NiBJbHMgb250IMOpdMOpIMOpZGl0w6lzIHNvdXMgbGEgwqvCoEdOVSBHZW5lcmFsIFB1YmxpYyAiCisjfiAiTGljZW5jZcKgwrssIHZlcnNpb24gMiBvdSBzdXDDqXJpZXVyZcKgOyBpbCBuJ3kgYSBQQVMgZGUgR0FSQU5USUUuIFZveWV6IEI8LyIKKyN+ICJ1c3Ivc2hhcmUvZHBrZy9jb3B5cmlnaHQ+IGV0IEI8L3Vzci9zaGFyZS9jb21tb24tbGljZW5zZXMvR1BMPiBwb3VyIGRlcyAiCisjfiAicHLDqWNpc2lvbnMuIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICJDb3B5cmlnaHQgMTk5NCwgSWFuIEphY2tzb24uICBCPGluc3RhbGwtaW5mbz4gaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSAiCisjfiAiR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgdmVyc2lvbiAyIG9yIGxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuICIKKyN+ICJUaGVyZSBpcyBJPG5vPiB3YXJyYW50eS4iCisjfiBtc2dzdHIgIiIKKyN+ICJDZSBwcm9ncmFtbWUgZXN0IHVuIGxvZ2ljaWVsIGxpYnJlwqA7IHZveWV6IGxhIMKrwqBHTlUgR2VuZXJhbCBQdWJsaWMgIgorI34gIkxpY2VuY2XCoMK7IHZlcnNpb24gMiBvdSBzdXDDqXJpZXVyZSBwb3VyIGxlIGNvcHlyaWdodC4gSWwgbid5IGEgUEFTIGRlICIKKyN+ICJnYXJhbnRpZS4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiIgorI34gIkRlYmlhbiB1cGRhdGUtYWx0ZXJuYXRpdmVzIGlzIGNvcHlyaWdodCAxOTk1IElhbiBKYWNrc29uLiBJdCBpcyBmcmVlICIKKyN+ICJzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSB2ZXJzaW9uIDIgb3IgbGF0ZXIgZm9yICIKKyN+ICJjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LiIKKyN+IG1zZ3N0ciAiIgorI34gIkNlIHByb2dyYW1tZSBlc3QgdW4gbG9naWNpZWwgbGlicmXCoDsgdm95ZXogbGEgwqvCoEdOVSBHZW5lcmFsIFB1YmxpYyAiCisjfiAiTGljZW5jZcKgwrsgdmVyc2lvbiAyIG91IHN1cMOpcmlldXJlIHBvdXIgbGUgY29weXJpZ2h0LiBJbCBuJ3kgYSBQQVMgZGUgIgorI34gImdhcmFudGllLiIKKworIywgZnV6enkKKyN+IG1zZ2lkICIiCisjfiAiVGhpcyBtYW51YWwgcGFnZSBpcyBjb3B5cmlnaHQgMTk5Ny85OCBDaGFybGVzIEJyaXNjb2UtU21pdGguICBUaGlzIGlzICIKKyN+ICJmcmVlIGRvY3VtZW50YXRpb247IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgdmVyc2lvbiAyIG9yIGxhdGVyICIKKyN+ICJmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyBXQVJSQU5UWS4iCisjfiBtc2dzdHIgIiIKKyN+ICJDZXR0ZSBkb2N1bWVudGF0aW9uIGVzdCBsaWJyZcKgOyB2b3lleiBsYSDCq8KgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2XCoMK7ICIKKyN+ICJ2ZXJzaW9uIDIgb3Ugc3Vww6lyaWV1cmUgcG91ciBsZSBjb3B5cmlnaHQuIElsIG4neSBhIFBBUyBkZSBnYXJhbnRpZS4iCisKKyN+IG1zZ2lkICIiCisjfiAiWW91IGNhbiBmaW5kIHRoZSBHTlUgR1BMIGluIC91c3Ivc2hhcmUvY29tbW9uLWxpY2Vuc2VzL0dQTCBvbiBhbnkgRGViaWFuICIKKyN+ICJzeXN0ZW0uIgorI34gbXNnc3RyICIiCisjfiAiT24gcGV1dCB0cm91dmVyIGxhIGxpY2VuY2UgR05VIEdQTCBkYW5zIC91c3Ivc2hhcmUvY29tbW9uLWxpY2Vuc2VzL0dQTCAiCisjfiAic3VyIHRvdXMgbGVzIHN5c3TDqG1lcyBEZWJpYW4uIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICJkcGtnLXNjYW5zb3VyY2VzIC0gc2VhcmNoIGZvciAnLmRzYycgZmlsZXMgYW5kIGJ1aWxkIHRoZSAnU291cmNlcycgaW5kZXgiCisjfiBtc2dzdHIgImRwa2ctc2NhbnNvdXJjZXMgLSBjcsOpZXIgZGVzIGZpY2hpZXJzIGQnaW5kZXggZGUgc291cmNlcyIKKworI34gbXNnaWQgIkk8U3RhbmRhcmQgZm9yIHRoZSBGb3JtYXQgb2YgQVJQQSBJbnRlcm5ldCBUZXh0IE1lc3NhZ2VzPiAoUkZDODIyKSwiCisjfiBtc2dzdHIgIiIKKyN+ICJJPFN0YW5kYXJkIGZvciB0aGUgRm9ybWF0IG9mIEFSUEEgSW50ZXJuZXQgVGV4dCBNZXNzYWdlcz4gKFJGQ8KgODIyKSwiCisKKyN+IG1zZ2lkICIiCisjfiAiSTxSZXF1aXJlbWVudHMgZm9yIEludGVybmV0IEhvc3RzIC0tIEFwcGxpY2F0aW9uIGFuZCBTdXBwb3J0PiAoUkZDMTEyMykgIgorI34gInNlY3Rpb24gNS4yLjE0LCIKKyN+IG1zZ3N0ciAiIgorI34gIkk8UmVxdWlyZW1lbnRzIGZvciBJbnRlcm5ldCBIb3N0cyAtLSBBcHBsaWNhdGlvbiBhbmQgU3VwcG9ydD4gKFJGQ8KgMTEyMykgIgorI34gInNlY3Rpb24gNS4yLjE0LCIKKworI34gbXNnaWQgIiIKKyN+ICJCPDgyMi1kYXRlPiBhbmQgdGhpcyBtYW5wYWdlIHdlcmUgd3JpdHRlbiBieSBJYW4gSmFja3Nvbi4gVGhleSBhcmUgaGVyZWJ5ICIKKyN+ICJwbGFjZWQgYnkgaGltIGludG8gdGhlIHB1YmxpYyBkb21haW4uIgorI34gbXNnc3RyICIiCisjfiAiQjw4MjItZGF0ZT4gZXQgY2V0dGUgcGFnZSBkZSBtYW51ZWwgb250IMOpdMOpIMOpY3JpdGVzIHBhciBJYW4gSmFja3NvbiwgcXVpICIKKyN+ICJsZXMgYSBwbGFjw6kgZGFucyBsZSBkb21haW5lIHB1YmxpYy4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiIgorI34gIkI8Y2xlYW51cC1pbmZvPiBbQjwtLWhlbHA+XSBbQjwtLXVuc2FmZT5dIFtCPC0tdmVyc2lvbj5dIFtCPC0tPl0gIgorI34gIltJPEU8bHQ+ZGlybmFtZUU8Z3Q+Pl0iCisjfiBtc2dzdHIgIkI8Y2xlYW51cC1pbmZvPiBbSTxvcHRpb25zPl0gW0I8LS0+XSBbSTxyw6lwZXJ0b2lyZT5dIgorCisjLCBmdXp6eQorI34gbXNnaWQgIk91dHB1dCB0aGUgaGVscCBzY3JlZW4gYW5kIGV4aXQgc3VjY2Vzc2Z1bGx5LiIKKyN+IG1zZ3N0ciAiQWZmaWNoZSB1bmUgYWlkZSByYXBpZGUgZXQgc2UgdGVybWluZSBub3JtYWxlbWVudC4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiT3V0cHV0IHZlcnNpb24gYW5kIGV4aXQgc3VjY2Vzc2Z1bGx5LiIKKyN+IG1zZ3N0ciAiQWZmaWNoZSBsYSB2ZXJzaW9uIGV0IHNlIHRlcm1pbmUgbm9ybWFsZW1lbnQuIgorCisjfiBtc2dpZCAiUHJpbnQgYSB1c2FnZSBtZXNzYWdlLiIKKyN+IG1zZ3N0ciAiQWZmaWNoZSB1biBtZXNzYWdlIGQnYWlkZS4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiUHJpbnQgcHJvZ3JhbSB2ZXJzaW9uLiIKKyN+IG1zZ3N0ciAiQWZmaWNoZSBsYSB2ZXJzaW9uIGR1IHByb2dyYW1tZSBldCBsZSBjb3B5cmlnaHQsIHB1aXMgcXVpdHRlLiIKKworI34gbXNnaWQgIkI8ZHBrZy1kZWI+IEI8LVc+fEI8LS1zaG93PiBbQjwtLXNob3dmb3JtYXQ+PUk8Zm9ybWF0Pl0gSTxhcmNoaXZlPiIKKyN+IG1zZ3N0ciAiQjxkcGtnLWRlYj4gQjwtVz58QjwtLXNob3c+IFtCPC0tc2hvd2Zvcm1hdD49STxmb3JtYXQ+XSBJPGFyY2hpdmU+IgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICJCPGRwa2ctZGViPiBCPC14PnxCPC0tZXh0cmFjdD58QjwtWD58QjwtLXZleHRyYWN0PiBJPGFyY2hpdmUgZGlyZWN0b3J5PiIKKyN+IG1zZ3N0ciAiQjwtWD4sIEI8LS12ZXh0cmFjdD4gSTxhcmNoaXZlIHLDqXBlcnRvaXJlPiIKKworI34gbXNnaWQgIiIKKyN+ICJQcmludHMgQjxkcGtnLWRlYj4ncyB1c2FnZSBtZXNzYWdlLCBnaXZpbmcgYSBzdW1tYXJ5IG9mIGl0cyBvcHRpb25zIGFuZCAiCisjfiAidGhlaXIgdXNlcy4iCisjfiBtc2dzdHIgIiIKKyN+ICJBZmZpY2hlIGwnYWlkZSBkZSBCPGRwa2ctZGViPiBxdWkgcsOpc3VtZSBsYSBtYW5pw6hyZSBkJ3V0aWxpc2VyIHNlcyAiCisjfiAib3B0aW9ucy4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiUHJpbnRzIEI8ZHBrZy1kZWI+J3MgdmVyc2lvbiBudW1iZXIuIgorI34gbXNnc3RyICJBZmZpY2hlIGxhIHZlcnNpb24gZGUgQjxkcGtnPi4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjxkcGtnLWRpdmVydD4gW0k8b3B0aW9ucz5dIEI8LS1yZW1vdmU+IEk8RTxsdD5maWxlRTxndD4+IgorI34gbXNnc3RyICJCPGRwa2ctbmFtZT4gW0k8b3B0aW9ucz5dIFtCPC0tPl0gSTxmaWNoaWVycz4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjxkcGtnLWRpdmVydD4gW0k8b3B0aW9ucz5dIEI8LS1saXN0PiBJPEU8bHQ+Z2xvYi1wYXR0ZXJuRTxndD4+IgorI34gbXNnc3RyICJCPGRwa2ctZGl2ZXJ0PiBbSTxvcHRpb25zPl0gSTxjb21tYW5kZT4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjxkcGtnLWRpdmVydD4gW0k8b3B0aW9ucz5dIEI8LS10cnVlbmFtZT4gSTxFPGx0PmZpbGVFPGd0Pj4iCisjfiBtc2dzdHIgIkI8ZHBrZy1uYW1lPiBbSTxvcHRpb25zPl0gW0I8LS0+XSBJPGZpY2hpZXJzPiIKKworI34gbXNnaWQgIiIKKyN+ICJCPGRwa2ctZGl2ZXJ0PiBpcyB0aGUgdXRpbGl0eSB1c2VkIHRvIHNldCB1cCBhbmQgdXBkYXRlIHRoZSBsaXN0IG9mICIKKyN+ICJkaXZlcnNpb25zLiBJdCBmdW5jdGlvbnMgaW4gdGhyZWUgYmFzaWMgbW9kZXMgLSBhZGRpbmcsIHJlbW92aW5nLCBhbmQgIgorI34gImxpc3RpbmcgZGl2ZXJzaW9ucy4gIFRoZSBvcHRpb25zIGFyZSBCPC0tYWRkPiwgQjwtLXJlbW92ZT4sIGFuZCBCPC0tIgorI34gImxpc3Q+LCByZXNwZWN0aXZlbHkuIEFkZGl0aW9uYWxseSwgaXQgY2FuIHByaW50IG91dCB0aGUgcmVhbCBuYW1lIGZvciBhICIKKyN+ICJkaXZlcnRlZCBmaWxlIHdpdGggQjwtLXRydWVuYW1lPi4gT3RoZXIgb3B0aW9ucyAobGlzdGVkIGJlbG93KSBtYXkgYWxzbyAiCisjfiAiYmUgc3BlY2lmaWVkLiIKKyN+IG1zZ3N0ciAiIgorI34gIkI8ZHBrZy1kaXZlcnQ+IHNlcnQgw6AgY3LDqWVyIGV0IMOgIG1ldHRyZSDDoCBqb3VyIGxhIGxpc3RlIGRlcyAiCisjfiAiZMOpdG91cm5lbWVudHMuIElsIHBvc3PDqGRlIHRyb2lzIG1vZGVzIMOpbMOpbWVudGFpcmVzLCBsJ2Fqb3V0LCBsYSAiCisjfiAic3VwcHJlc3Npb24gZXQgbGUgbGlzdGFnZSBkJ3VuIGTDqXRvdXJuZW1lbnQuIExlcyBvcHRpb25zIHNvbnQgIgorI34gInJlc3BlY3RpdmVtZW50IEI8LS1hZGQ+LCBCPC0tcmVtb3ZlPiBldCBCPC0tbGlzdD4uIERlIHBsdXMsIGlsIHBldXQgIgorI34gImFmZmljaGVyIGxlIHZyYWkgbm9tIGQndW4gZmljaGllciBkw6l0b3VybsOpIGF2ZWMgQjwtLXRydWVuYW1lPi4gT24gcGV1dCAiCisjfiAiaW5kaXF1ZXIgZCdhdXRyZXMgb3B0aW9ucyAodm95ZXogbGEgbGlzdGUgY2ktZGVzc291cykuIgorCisjLCBmdXp6eQorI34gbXNnaWQgIk91dHB1dCBzaG9ydCB1c2FnZSBpbnN0cnVjdGlvbnMsIGFuZCBleGl0IHN1Y2Nlc3NmdWxseS4iCisjfiBtc2dzdHIgIkFmZmljaGUgbGEgdmVyc2lvbiBldCBzZSB0ZXJtaW5lIG5vcm1hbGVtZW50LiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJPdXRwdXQgcHJvZ3JhbSBuYW1lIGFuZCB2ZXJzaW9uIGFuZCBleGl0IHN1Y2Nlc3NmdWxseS4iCisjfiBtc2dzdHIgIkFmZmljaGUgbGEgdmVyc2lvbiBldCBzZSB0ZXJtaW5lIG5vcm1hbGVtZW50LiIKKworI34gbXNnaWQgIiIKKyN+ICJCPGRwa2ctbmFtZT4gW0I8LWE+fEI8LS1uby1hcmNoaXRlY3R1cmU+XSBbQjwtbz58QjwtLW92ZXJ3cml0ZT5dIFtCPC1zPnwiCisjfiAiQjwtLXN1YmRpcj4gW0k8ZGlyPl1dIFtCPC1jPnxCPC0tY3JlYXRlLWRpcj5dIFtCPC1oPnxCPC0taGVscD5dIFtCPC12PnwiCisjfiAiQjwtLXZlcnNpb24+XSBbQjwtbD58QjwtLWxpY2Vuc2U+XSBbQjwtaz58QjwtLXN5bWxpbms+XSBbQjwtLT5dIFtJPGZpbGVzPl0iCisjfiBtc2dzdHIgIiIKKyN+ICJCPGRwa2ctbmFtZT4gW0I8LWE+fEI8LS1uby1hcmNoaXRlY3R1cmU+XSBbQjwtbz58QjwtLW92ZXJ3cml0ZT5dIFtCPC1zPnwiCisjfiAiQjwtLXN1YmRpcj4gW0k8cmVwPl1dIFtCPC1jPnxCPC0tY3JlYXRlLWRpcj5dIFtCPC1oPnxCPC0taGVscD5dIFtCPC12PnwiCisjfiAiQjwtLXZlcnNpb24+IFtCPC1sPnxCPC0tbGljZW5zZT5dIFtCPC1rPnxCPC0tc3ltbGluaz5dIFtCPC0tPl0gIgorI34gIltJPGZpY2hpZXJzPl0iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiUHJpbnQgYSB1c2FnZSBtZXNzYWdlIGFuZCBleGl0IHN1Y2Nlc3NmdWxseS4iCisjfiBtc2dzdHIgIkFmZmljaGUgdW5lIGFpZGUgcmFwaWRlIGV0IHNlIHRlcm1pbmUgbm9ybWFsZW1lbnQuIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICJQcmludCBjb3B5cmlnaHQgaW5mb3JtYXRpb24gYW5kIChhIHJlZmVyZW5jZSB0byBHTlUpIGxpY2Vuc2UgaW5mb3JtYXRpb24gIgorI34gImFuZCBleGl0IHN1Y2Nlc3NmdWxseS4iCisjfiBtc2dzdHIgIiIKKyN+ICJBZmZpY2hlIGxlcyBpbmZvcm1hdGlvbnMgc3VyIGxlIGNvcHlyaWdodCBldCBzdXIgbGEgbGljZW5jZSBkZSAiCisjfiAiQjxkc2VsZWN0PiwgcHVpcyBzZSB0ZXJtaW5lIG5vcm1hbGVtZW50LiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJEaXNwbGF5IGxpY2VuY2UgYW5kIGNvcHlyaWdodCBpbmZvcm1hdGlvbi4iCisjfiBtc2dzdHIgIkFmZmljaGUgbGEgdmVyc2lvbiBkZSBCPGRwa2c+LiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJEaXNwbGF5IHZlcnNpb24gaW5mb3JtYXRpb24uIgorI34gbXNnc3RyICJBZmZpY2hlIGxhIHZlcnNpb24gZGUgQjxkcGtnPi4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiIgorI34gIkI8ZHBrZy1zY2FucGFja2FnZXM+IFtCPC11Pl0gW0I8LWE+IEk8RTxsdD5hcmNoRTxndD4+IF0gW0I8LW0+XSAiCisjfiAiSTxiaW5hcnlkaXI+IEk8b3ZlcnJpZGVmaWxlPiBbSTxwYXRocHJlZml4Pl0gQjxFPGd0Pj4gSTxQYWNrYWdlcz4iCisjfiBtc2dzdHIgIiIKKyN+ICJCPGRwa2ctc2NhbnBhY2thZ2VzPiBbSTxvcHRpb25zPl0gSTxyZXAtZGUtYmluYWlyZXM+IFtJPGZpY2hpZXItb3ZlcnJpZGU+ICIKKyN+ICJbSTxjaGVtaW4tw6AtcHLDqWZpeGVyPl1dIEI8RTxndD4+IEk8UGFja2FnZXM+IgorCisjfiBtc2dpZCAiIgorI34gIldoZW4gQjwtYT5JPEU8bHQ+YXJjaEU8Z3Q+PiBpcyBzcGVjaWZpZWQsIHRoZW4gaW5zdGVhZCBvZiBzY2FubmluZyBmb3IgIgorI34gImFsbCBkZWJzLCBhIHBhdHRlcm4gY29uc2lzdGluZyBvZiAqX2FsbC5kZWIgYW5kICpfYXJjaC5kZWIgaXMgdXNlZC4iCisjfiBtc2dzdHIgIiIKKyN+ICJRdWFuZCBCPC1hPkk8RTxsdD5hcmNoRTxndD4+IGVzdCBzcMOpY2lmacOpZSwgbGEgY29tbWFuZGUgbmUgcmVjaGVyY2hlIHBhcyAiCisjfiAidG91cyBsZXMgZmljaGllcnMgZGVic8KgOyBlbGxlIHV0aWxpc2UgdW4gbW90aWYgw6lxdWl2YWxlbnQgw6AgKl9hbGwuZGViIGV0ICIKKyN+ICLDoCAqX2FyY2guZGViLiIKKworI34gbXNnaWQgIlRIRSBPVkVSUklERSBGSUxFIgorI34gbXNnc3RyICJMRSBGSUNISUVSIMKrIE9WRVJSSURFIMK7IgorCisjfiBtc2dpZCAiIgorI34gImRwa2ctc291cmNlLCBkcGtnLWdlbmNvbnRyb2wsIGRwa2ctc2hsaWJkZXBzLCBkcGtnLWdlbmNoYW5nZXMsIGRwa2ctIgorI34gImJ1aWxkcGFja2FnZSwgZHBrZy1kaXN0YWRkZmlsZSwgZHBrZy1wYXJzZWNoYW5nZWxvZyAtIERlYmlhbiBzb3VyY2UgIgorI34gInBhY2thZ2UgdG9vbHMiCisjfiBtc2dzdHIgIiIKKyN+ICJkcGtnLXNvdXJjZSwgZHBrZy1nZW5jb250cm9sLCBkcGtnLXNobGliZGVwcywgZHBrZy1nZW5jaGFuZ2VzLCBkcGtnLSIKKyN+ICJidWlsZHBhY2thZ2UsIGRwa2ctZGlzdGFkZGZpbGUsIGRwa2ctcGFyc2VjaGFuZ2Vsb2cgLSBMZXMgb3V0aWxzIGRlICIKKyN+ICJEZWJpYW4gcG91ciBsZXMgcGFxdWV0cyBzb3VyY2UuIgorCisjLCBmdXp6eQorI34gbXNnaWQgIkNPTU1PTiBPUFRJT05TIgorI34gbXNnc3RyICJPUFRJT05TIgorCisjfiBtc2dpZCAiIgorI34gIk1hbnkgb2YgdGhlc2UgcHJvZ3JhbXMgc2hhcmUgb3B0aW9uczsgdGhlc2UgYXJlIGRlc2NyaWJlZCBoZXJlLCB0b2dldGhlciAiCisjfiAid2l0aCB0aGUgcHJvZ3JhbXMgdGhhdCBhY2NlcHQgdGhlbS4iCisjfiBtc2dzdHIgIiIKKyN+ICJCZWF1Y291cCBkZSBjZXMgcHJvZ3JhbW1lcyBwYXJ0YWdlbnQgbGVzIG9wdGlvbnMgcXVpIHNvbnQgZMOpY3JpdGVzIGljacKgOyAiCisjfiAib24gZMOpY3JpdCBlbiBtw6ptZSB0ZW1wcyBsZXMgcHJvZ3JhbW1lcyBxdWkgbGVzIGFjY2VwdGVudC4iCisKKyN+IG1zZ2lkICIiCisjfiAiRGlzcGxheSB0aGUgcGFydGljdWxhciBwcm9ncmFtJ3MgdXNhZ2UgbWVzc2FnZSwgaW5jbHVkaW5nIGEgc3lub3BzaXMgb2YgIgorI34gInRoZSBvcHRpb25zIGl0IHVuZGVyc3RhbmRzLiAgVGhpcyBvcHRpb24gaXMgdW5kZXJzdG9vZCBieSBhbGwgdGhlIHNvdXJjZSAiCisjfiAicGFja2FnZSB0b29scy4iCisjfiBtc2dzdHIgIiIKKyN+ICJBZmZpY2hlIGxlIG1lc3NhZ2UgZCdhaWRlIGFzc29jacOpIGF1IHByb2dyYW1tZcKgOiBpbCBjb21wcmVuZCB1biByw6lzdW3DqSAiCisjfiAiZGVzIG9wdGlvbnMgYWNjZXB0w6llcy4gVG91cyBsZXMgb3V0aWxzIHBvdXIgbGVzIHBhcXVldHMgc291cmNlICIKKyN+ICJjb21wcmVubmVudCBjZXR0ZSBvcHRpb24uIgorCisjfiBtc2dpZCAiIgorI34gIkRpc3BsYXkgdGhlIHBhcnRpY3VsYXIgcHJvZ3JhbSdzIHZlcnNpb24sIGluY2x1ZGluZyBjb3B5cmlnaHQgYW5kIGxpY2Vuc2UgIgorI34gImluZm9ybWF0aW9uLiAgVGhpcyBvcHRpb24gaXMgdW5kZXJzdG9vZCBieSBhbGwgdGhlIHNvdXJjZSBwYWNrYWdlIHRvb2xzLiIKKyN+IG1zZ3N0ciAiIgorI34gIkFmZmljaGUgbGEgdmVyc2lvbiBkdSBwcm9ncmFtbWXCoDsgbGUgbWVzc2FnZSBjb21wcmVuZCBkZXMgaW5mb3JtYXRpb25zICIKKyN+ICJzdXIgbGEgbGljZW5jZSBldCBsZSBjb3B5cmlnaHQuIFRvdXMgbGVzIG91dGlscyBwb3VyIGxlcyBwYXF1ZXRzIHNvdXJjZSAiCisjfiAiY29tcHJlbm5lbnQgY2V0dGUgb3B0aW9uLiIKKworIywgZnV6enkKKyN+IG1zZ2lkICIiCisjfiAiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbmNlIHZlcnNpb24gMiBvciAiCisjfiAibGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gV0FSUkFOVFkuIFNlZSBCPC91c3Ivc2hhcmUvZG9jLyIKKyN+ICJkcGtnL2NvcHlyaWdodD4gYW5kIEI8L3Vzci9zaGFyZS9jb21tb24tbGljZW5zZXMvR1BMPiBmb3IgZGV0YWlscy4iCisjfiBtc2dzdHIgIiIKKyN+ICJDZSBwcm9ncmFtbWUgZXN0IHVuIGxvZ2ljaWVsIGxpYnJlwqA7IHZveWV6IGxhIMKrwqBHTlUgR2VuZXJhbCBQdWJsaWMgIgorI34gIkxpY2VuY2XCoMK7IHZlcnNpb24gMiBvdSBzdXDDqXJpZXVyZSBwb3VyIGxlIGNvcHlyaWdodC4gSWwgbid5IGEgUEFTIGRlICIKKyN+ICJnYXJhbnRpZS4iCisKKyN+IG1zZ2lkICIiCisjfiAiUHJpbnRzIEI8ZHBrZy1zcGxpdD4ncyB1c2FnZSBtZXNzYWdlLCBnaXZpbmcgYSBzdW1tYXJ5IG9mIGl0cyBvcHRpb25zIGFuZCAiCisjfiAidGhlaXIgdXNlcy4iCisjfiBtc2dzdHIgIiIKKyN+ICJBZmZpY2hlIHVuIG1lc3NhZ2UgZGUgQjxkcGtnLXNwbGl0PiBkb25uYW50IHVuIHLDqXN1bcOpIGRlIHNlcyBvcHRpb25zIGV0ICIKKyN+ICJkZSBsZXVyIHV0aWxpc2F0aW9uLiIKKworI34gbXNnaWQgIlByaW50cyBCPGRwa2ctc3BsaXQ+J3MgdmVyc2lvbiBudW1iZXIuIgorI34gbXNnc3RyICJBZmZpY2hlIGxlIG51bcOpcm8gZGUgdmVyc2lvbiBkZSBCPGRwa2ctc3BsaXQ+LiIKKworI34gbXNnaWQgIiIKKyN+ICJCPGRwa2ctc3RhdG92ZXJyaWRlPiBbSTxvcHRpb25zPl0gQjwtLWFkZD5JPCBFPGx0PnVzZXJFPGd0PiAiCisjfiAiRTxsdD5ncm91cEU8Z3Q+IEU8bHQ+bW9kZUU8Z3Q+IEU8bHQ+ZmlsZUU8Z3Q+PiIKKyN+IG1zZ3N0ciAiIgorI34gIkI8ZHBrZy1zdGF0b3ZlcnJpZGU+IFtJPG9wdGlvbnM+XSBCPC0tYWRkPkk8IEU8bHQ+dXRpbGlzYXRldXJFPGd0PiAiCisjfiAiRTxsdD5ncm91cGVFPGd0PiBFPGx0Pm1vZGVFPGd0PiBFPGx0PmZpY2hpZXJFPGd0Pj4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjxkcGtnLXN0YXRvdmVycmlkZT4gW0k8b3B0aW9ucz5dIEI8LS1yZW1vdmU+STwgRTxsdD5maWxlRTxndD4+IgorI34gbXNnc3RyICJCPGRwa2ctc3RhdG92ZXJyaWRlPiBbSTxvcHRpb25zPl0gSTxjb21tYW5kZT4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiIgorI34gIkI8ZHBrZy1zdGF0b3ZlcnJpZGU+IFtJPG9wdGlvbnM+XSBCPC0tbGlzdD4gW0k8RTxsdD5nbG9iLXBhdHRlcm5FPGd0Pj5dIgorI34gbXNnc3RyICJCPGRwa2ctc3RhdG92ZXJyaWRlPiBbSTxvcHRpb25zPl0gSTxjb21tYW5kZT4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiUHJpbnQgaGVscCBpbmZvcm1hdGlvbjsgdGhlbiBleGl0LiIKKyN+IG1zZ3N0ciAiQWZmaWNoZSB1biBtZXNzYWdlIGQnYWlkZSwgcHVpcyBxdWl0dGUuIgorCisjLCBmdXp6eQorI34gbXNnaWQgIlByaW50IHZlcnNpb24gaW5mb3JtYXRpb247IHRoZW4gZXhpdC4iCisjfiBtc2dzdHIgIkFmZmljaGUgbGEgdmVyc2lvbiBldCBzZSB0ZXJtaW5lIG5vcm1hbGVtZW50LiIKKworIywgZnV6enkKKyN+IG1zZ2lkICIiCisjfiAiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBbSTxvcHRpb25zPl0gQjwtLWluc3RhbGw+IEk8Z2VubmFtZSBzeW1saW5rIGFsdGVybiAiCisjfiAicHJpb3JpdHk+IFtCPC0tc2xhdmU+IEk8Z2VubmFtZSBzeW1saW5rPiBJPGFsdGVybj5dLi4uIgorI34gbXNnc3RyICIiCisjfiAiQjwtLWluc3RhbGw+IEk8Z2VubmFtZSBsaWVuIGFsdGVybiBwcmlvcml0eT4gW0I8LS1zbGF2ZT4gSTxnZW5uYW1lIGxpZW4gIgorI34gImFsdGVybj5dLi4uIgorCisjLCBmdXp6eQorI34gbXNnaWQgIkI8dXBkYXRlLWFsdGVybmF0aXZlcz4gW0k8b3B0aW9ucz5dIEI8LS1yZW1vdmU+IEk8bmFtZSBwYXRoPiIKKyN+IG1zZ3N0ciAiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBbSTxvcHRpb25zPl0gSTxjb21tYW5kZT4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBbSTxvcHRpb25zPl0gQjwtLXJlbW92ZS1hbGw+IEk8bmFtZT4iCisjfiBtc2dzdHIgIkI8dXBkYXRlLWFsdGVybmF0aXZlcz4gW0k8b3B0aW9ucz5dIEk8Y29tbWFuZGU+IgorCisjLCBmdXp6eQorI34gbXNnaWQgIkI8dXBkYXRlLWFsdGVybmF0aXZlcz4gW0k8b3B0aW9ucz5dIEI8LS1kaXNwbGF5PiBJPG5hbWU+IgorI34gbXNnc3RyICJCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IFtJPG9wdGlvbnM+XSBJPGNvbW1hbmRlPiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IFtJPG9wdGlvbnM+XSBCPC0tbGlzdD4gSTxuYW1lPiIKKyN+IG1zZ3N0ciAiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBbSTxvcHRpb25zPl0gSTxjb21tYW5kZT4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBbSTxvcHRpb25zPl0gQjwtLWNvbmZpZz4gSTxuYW1lPiIKKyN+IG1zZ3N0ciAiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBbSTxvcHRpb25zPl0gSTxjb21tYW5kZT4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBbSTxvcHRpb25zPl0gQjwtLXNldD4gSTxuYW1lIHBhdGg+IgorI34gbXNnc3RyICJCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IFtJPG9wdGlvbnM+XSBJPGNvbW1hbmRlPiIKKworI34gbXNnaWQgIiIKKyN+ICJFeGFjdGx5IG9uZSBhY3Rpb24gbXVzdCBiZSBzcGVjaWZpZWQgaWYgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBpcyB0byAiCisjfiAicGVyZm9ybSBhbnkgbWVhbmluZ2Z1bCB0YXNrLiAgQW55IG51bWJlciBvZiB0aGUgY29tbW9uIG9wdGlvbnMgbWF5IGJlICIKKyN+ICJzcGVjaWZpZWQgdG9nZXRoZXIgd2l0aCBhbnkgYWN0aW9uLiIKKyN+IG1zZ3N0ciAiIgorI34gIlBvdXIgdG91dGUgb3DDqXJhdGlvbiBzaWduaWZpY2F0aXZlLCBvbiBkb2l0IGRlbWFuZGVyIHVuZSBzZXVsZSBhY3Rpb24gw6AgIgorI34gIkI8dXBkYXRlLWFsdGVybmF0aXZlcy4+IFBvdXIgdG91dGUgYWN0aW9uLCBvbiBwZXV0IHByw6ljaXNlciB1biBjZXJ0YWluICIKKyN+ICJub21icmUgZCdvcHRpb25zLiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJHaXZlIHNvbWUgdXNhZ2UgaW5mb3JtYXRpb24uIgorI34gbXNnc3RyICJBZmZpY2hlIHVuIG1lc3NhZ2UgZCdhaWRlLCBwdWlzIHF1aXR0ZS4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiVGVsbCB3aGljaCB2ZXJzaW9uIG9mIEI8dXBkYXRlLWFsdGVybmF0aXZlcz4gdGhpcyBpcy4iCisjfiBtc2dzdHIgIiIKKyN+ICJwcm9kdWl0IHBsdXMgZGUgY29tbWVudGFpcmVzIHN1ciBjZSBxdWUgZmFpdCBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+LiIKKworIywgZnV6enkKKyN+IG1zZ2lkICIiCisjfiAiR2l2ZSBzb21lIHVzYWdlIGluZm9ybWF0aW9uIChhbmQgc2F5IHdoaWNoIHZlcnNpb24gb2YgQjx1cGRhdGUtIgorI34gImFsdGVybmF0aXZlcz4gdGhpcyBpcykuIgorI34gbXNnc3RyICIiCisjfiAicHJvZHVpdCBwbHVzIGRlIGNvbW1lbnRhaXJlcyBzdXIgY2UgcXVlIGZhaXQgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPi4iCisKKyN+IG1zZ2lkICJDT1BZUklHSFQiCisjfiBtc2dzdHIgIkNPUFlSSUdIVCIKKworI34gbXNnaWQgIiIKKyN+ICJGb3IgQjxkcGtnLWdlbmNoYW5nZXM+IGFuZCBCPGRwa2ctYnVpbGRwYWNrYWdlPiBCPC1iPiBhbmQgQjwtQj4gc3BlY2lmeSAiCisjfiAidGhhdCBhIGJpbmFyeS1vbmx5IGJ1aWxkIGlzIHRha2luZyBwbGFjZS4gIEI8LWI+IGluZGljYXRlcyB0aGF0IG5vIHNvdXJjZSAiCisjfiAiZmlsZXMgYXJlIHRvIGJlIGJ1aWx0IGFuZC9vciBkaXN0cmlidXRlZCwgYW5kIEI8LUI+IHRoYXQgbm8gYXJjaGl0ZWN0dXJlLSIKKyN+ICJpbmRlcGVuZGVudCBiaW5hcnkgcGFja2FnZSBmaWxlcyBhcmUgdG8gYmUgZGlzdHJpYnV0ZWQgZWl0aGVyLiAgQjwtUz4gIgorI34gInNwZWNpZmllcyB0aGF0IG9ubHkgdGhlIHNvdXJjZSBzaG91bGQgYmUgdXBsb2FkZWQgYW5kIG5vIGJpbmFyeSBwYWNrYWdlcyAiCisjfiAibmVlZCB0byBiZSBtYWRlLiBUaGUgZGlzdGluY3Rpb24gYmV0d2VlbiBCPC1iPiBhbmQgQjwtQj4gaXMgb25seSB1c2VkIGJ5ICIKKyN+ICJCPGRwa2ctYnVpbGRwYWNrYWdlPjsgQjxkcGtnLWdlbmNoYW5nZXM+IGp1c3QgcHJvZHVjZXMgYSBCPC5jaGFuZ2VzPiBmaWxlICIKKyN+ICJmb3Igd2hhdGV2ZXIgZmlsZXMgd2VyZSBwcm9kdWNlZCBieSB0aGUgQjxiaW5hcnktKj4gdGFyZ2V0KHMpIG9mIHRoZSAiCisjfiAicGFja2FnZSBiZWluZyBidWlsdC4iCisjfiBtc2dzdHIgIiIKKyN+ICJBdmVjIEI8ZHBrZy1nZW5jaGFuZ2VzPiBldCBCPGRwa2ctYnVpbGRwYWNrYWdlPiBsZXMgb3B0aW9ucyBCPC1iPiBldCBCPC0iCisjfiAiQj4gaW5kaXF1ZW50IHF1J29uIHZldXQgc2V1bGVtZW50IGNvbnN0cnVpcmUgdW4gcGFxdWV0IGJpbmFpcmUuIEwnb3B0aW9uICIKKyN+ICJCPC1iPiBpbmRpcXVlIHF1J2F1Y3VuIGZpY2hpZXIgc291cmNlIG4nZXN0IMOgIGNvbnN0cnVpcmUgb3Ugw6AgZGlzdHJpYnVlciwgIgorI34gImV0IGwnb3B0aW9uIEI8LUI+IGluZGlxdWUgZW4gcGx1cyBxdSdhdWN1biBmaWNoaWVyLCBhcHBhcnRlbmFudCDDoCB1biAiCisjfiAicGFxdWV0IGJpbmFpcmUgbmUgZMOpcGVuZGFudCBwYXMgZCd1bmUgYXJjaGl0ZWN0dXJlLCBuJ2VzdCDDoCBkaXN0cmlidWVyLiAiCisjfiAiTCdvcHRpb24gQjwtUz4gaW5kaXF1ZSBxdWUgc2V1bCBsZSBzb3VyY2UgZG9pdCDDqnRyZSBpbnN0YWxsw6kgZXQgcXUnb24gYSAiCisjfiAicGFzIGJlc29pbiBkZSBjb25zdHJ1aXJlIHVuIHBhcXVldCBiaW5haXJlLiBTZXVsIEI8ZHBrZy1idWlsZHBhY2thZ2U+IHNlICIKKyN+ICJzZXJ0IGRlcyBvcHRpb25zIEI8LWI+IGV0IEI8LUI+LiBCPGRwa2ctZ2VuY2hhbmdlcz4gY3LDqWUgc2V1bGVtZW50IHVuICIKKyN+ICJmaWNoaWVyIEI8LmNoYW5nZXM+IHBvdXIgdG91cyBsZXMgZmljaGllcnMgcHJvZHVpdHMgcGFyIGxhIGNpYmxlIEI8YmluYXJ5LSIKKyN+ICIqPiBkdSBwYXF1ZXQgcXVpIGVzdCBjb25zdHJ1aXQuIgorCisjfiBtc2dpZCAiIgorI34gIkI8LXNhPixCPC1zcD4sQjwtc3U+LEI8LXNrPixCPC1zQT4sQjwtc1A+LEI8LXNVPixCPC1zSz4sQjwtc3M+IHdpdGggQjwtYj4iCisjfiBtc2dzdHIgIiIKKyN+ICJCPC1zYT4sQjwtc3A+LEI8LXN1PixCPC1zaz4sQjwtc0E+LEI8LXNQPixCPC1zVT4sQjwtc0s+LEI8LXNzPiBhdmVjIEI8LWI+IgorCisjfiBtc2dpZCAiQjwtc3A+LEI8LXN1PixCPC1zbj4gd2l0aCBCPC14PiIKKyN+IG1zZ3N0ciAiQjwtc3A+LEI8LXN1PixCPC1zbj4gYXZlYyBCPC14PiIKKworI34gbXNnaWQgIiIKKyN+ICJZb3UgY2FuIHNwZWNpZnkgdGhlIGNvbXByZXNzaW9uIGxldmVsIHVzZWQgYnkgYWRkaW5nIGEgQjwteiM+IG9wdGlvbi4gICIKKyN+ICJCPGRwa2ctZGViPiB3aWxsIHBhc3MgdGhhdCBvcHRpb24gb24gdG8gZ3ppcC4iCisjfiBtc2dzdHIgIiIKKyN+ICJPbiBwZXV0IHByw6ljaXNlciBsZSBkZWdyw6kgZGUgY29tcHJlc3Npb24gZW4gYWpvdXRhbnQgdW5lIG9wdGlvbiBCPC16Iz4uICAiCisjfiAiQjxkcGtnLWRlYj4gcGFzc2UgY2V0dGUgb3B0aW9uIMOgIGd6aXAuIgorCisjfiBtc2dpZCAiQjwtLWV4dHJhY3Q+LCBCPC14PiwgQjwtLXZleHRyYWN0PiwgQjwtWD4iCisjfiBtc2dzdHIgIkI8LS1leHRyYWN0PiwgQjwteD4sIEI8LS12ZXh0cmFjdD4sIEI8LVg+IgorCisjfiBtc2dpZCAiIgorI34gIlByaW50cyBpbmZvcm1hdGlvbiBhYm91dCBCPGRwa2ctZGViPidzIGNvcHlyaWdodCBsaWNlbnNpbmcgYW5kIGxhY2sgb2YgIgorI34gIndhcnJhbnR5LiAoVGhlIEFtZXJpY2FuIHNwZWxsaW5nIEI8LS1saWNlbnNlPiBpcyBhbHNvIHN1cHBvcnRlZCkuIgorI34gbXNnc3RyICIiCisjfiAiQWZmaWNoZSBkZXMgcmVuc2VpZ25lbWVudHMgc3VyIGxlIGNvcHlyaWdodCBkZSBCPGRwa2ctZGViPiBldCBsJ2Fic2VuY2UgIgorI34gImRlIGdhcmFudGllLiAoT24gcGV1dCB1dGlsaXNlciBsJ8OpY3JpdHVyZSBhbcOpcmljYWluZSBCPC0tbGljZW5zZS4+KSIKKworI34gbXNnaWQgIiIKKyN+ICJSZWFkIChvciwgZm9yIEI8ZHBrZy1zaGxpYmRlcHM+LCB3cml0ZSkgc3Vic3RpdHV0aW9uIHZhcmlhYmxlcyBpbiAiCisjfiAiSTxzdWJzdHZhcnNmaWxlPjsgdGhlIGRlZmF1bHQgaXMgQjxkZWJpYW4vc3Vic3R2YXJzPi4gIFRoaXMgb3B0aW9uIGlzICIKKyN+ICJ1bmRlcnN0b29kIGJ5IEI8ZHBrZy1zb3VyY2U+LCBCPGRwa2ctZ2VuY29udHJvbD4sIEI8ZHBrZy1zaGxpYmRlcHM+IGFuZCAiCisjfiAiQjxkcGtnLWdlbmNoYW5nZXM+LiIKKyN+IG1zZ3N0ciAiIgorI34gIkxpdCAob3UsIMOpY3JpdCwgcG91ciBCPGRwa2ctc2hsaWJkZXBzKSw+IGxlcyB2YXJpYWJsZXMgZGUgc3Vic3RpdHV0aW9uICIKKyN+ICJkYW5zIGxlIGZpY2hpZXIgSTxmaWNoaWVyL3N1YnN0dmFycz47IFBhciBkw6lmYXV0IGMnZXN0IGxlIGZpY2hpZXIgIgorI34gIkI8ZGViaWFuL3N1YnN0dmFycy4+IEI8ZHBrZy1zb3VyY2U+LCBCPGRwa2ctZ2VuY29udHJvbD4sIEI8ZHBrZy0iCisjfiAic2hsaWJkZXBzPiBldCBkcGtnLWdlbmNoYW5nZXMgYWNjZXB0ZW50IGNldHRlIG9wdGlvbi4iCisKKyN+IG1zZ2lkICIiCisjfiAiT3ZlcnJpZGUgb3IgYWRkIGFuIG91dHB1dCBjb250cm9sIGZpbGUgZmllbGQuICBUaGlzIG9wdGlvbiBpcyB1bmRlcnN0b29kICIKKyN+ICJieSBCPGRwa2ctc291cmNlPiwgQjxkcGtnLWdlbmNvbnRyb2w+IGFuZCBCPGRwa2ctZ2VuY2hhbmdlcz4uIgorI34gbXNnc3RyICIiCisjfiAiUmVtcGxhY2Ugb3UgYWpvdXRlIGVuIHNvcnRpZSB1biBjaGFtcCBkYW5zIGxlIGZpY2hpZXIgZGUgY29udHLDtGxlLiBCPGRwa2ctIgorI34gInNvdXJjZT4sIEI8ZHBrZy1nZW5jb250cm9sPiBldCBCPGRwa2ctZ2VuY2hhbmdlcz4gYWNjZXB0ZW50IGNldHRlIG9wdGlvbi4iCisKKyN+IG1zZ2lkICIiCisjfiAiUmVtb3ZlIGFuIG91dHB1dCBjb250cm9sIGZpbGUgZmllbGQuICBUaGlzIG9wdGlvbiBpcyB1bmRlcnN0b29kIGJ5IEI8ZHBrZy0iCisjfiAic291cmNlPiwgQjxkcGtnLWdlbmNvbnRyb2w+IGFuZCBCPGRwa2ctZ2VuY2hhbmdlcz4uIgorI34gbXNnc3RyICIiCisjfiAiU3VwcHJpbWUgZW4gc29ydGllIHVuIGNoYW1wIGRhbnMgbGUgZmljaGllciBkZSBjb250csO0bGUuIEI8ZHBrZy1zb3VyY2U+LCAiCisjfiAiQjxkcGtnLWdlbmNvbnRyb2w+IGV0IEI8ZHBrZy1nZW5jaGFuZ2VzPiBhY2NlcHRlbnQgY2V0dGUgb3B0aW9uLiIKKworI34gbXNnaWQgIiIKKyN+ICJCPC1iPiB0ZWxscyBCPGRwa2ctc291cmNlPiB0byBidWlsZCBhIHNvdXJjZSBwYWNrYWdlIChyYXRoZXIgdGhhbiB0byAiCisjfiAiZXh0cmFjdCBvbmUpIC0gc2VlIGJlbG93LiIKKyN+IG1zZ3N0ciAiIgorI34gIkwnb3B0aW9uIEI8LWI+IGluZGlxdWUgw6AgQjxkcGtnLXNvdXJjZT4gZGUgY29uc3RydWlyZSB1biBwYXF1ZXQgc291cmNlICIKKyN+ICIocGx1dMO0dCBxdWUgZCdlbiBleHRyYWlyZSB1biksIHZveWV6IGNpLWRlc3NvdXMuIgorCisjfiBtc2dpZCAiZHBrZy1TT1VSQ0UgT1BUSU9OUyIKKyN+IG1zZ3N0ciAiTEVTIE9QVElPTlMgREUgRFBLRy1TT1VSQ0UiCisKKyN+IG1zZ2lkICJkcGtnLVNITElCREVQUyBPUFRJT05TIgorI34gbXNnc3RyICJMRVMgT1BUSU9OUyBQT1VSIERQS0ctU0hMSUJERVBTIgorCisjfiBtc2dpZCAiZHBrZy1CVUlMRFBBQ0tBR0UgT1BUSU9OUyIKKyN+IG1zZ3N0ciAiTEVTIE9QVElPTlMgREUgRFBLRy1CVUlMRFBBQ0tBR0UiCisKKyN+IG1zZ2lkICJkcGtnLURJU1RBRERGSUxFIEFSR1VNRU5UUyIKKyN+IG1zZ3N0ciAiTEVTIEFSR1VNRU5UUyBERSBEUEtHLURJU1RBRERGSUxFIgorCisjfiBtc2dpZCAiZHBrZy1QQVJTRUNIQU5HRUxPRyBBUkdVTUVOVFMiCisjfiBtc2dzdHIgIkxFUyBBUkdVTUVOVFMgREUgRFBLRy1QQVJTRUNIQU5HRUxPRyIKKworI34gbXNnaWQgIiIKKyN+ICJQcmludHMgaW5mb3JtYXRpb24gYWJvdXQgQjxkcGtnLXNwbGl0PidzIGNvcHlyaWdodCBsaWNlbnNpbmcgYW5kIGxhY2sgb2YgIgorI34gIndhcnJhbnR5LiAoVGhlIEFtZXJpY2FuIHNwZWxsaW5nIEI8LS1saWNlbnNlPiBpcyBhbHNvIHN1cHBvcnRlZC4pIgorI34gbXNnc3RyICIiCisjfiAiQWZmaWNoZSBsZXMgcmVuc2VpZ25lbWVudHMgc3VyIGxlIGNvcHlyaWdodCBldCBsJ2Fic2VuY2UgZGUgZ2FyYW50aWUuICAiCisjfiAiKEwnb3J0aG9ncmFwaGUgYW3DqXJpY2FpbmXCoDogQjwtLWxpY2Vuc2U+IGVzdCBhY2NlcHTDqWUuKSIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA3LTA5LTI0IgorI34gbXNnc3RyICIyNC0wMS0yMDA3IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDctMDMtMDgiCisjfiBtc2dzdHIgIjA4LTEwLTIwMDciCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwNy0wOS0yOCIKKyN+IG1zZ3N0ciAiMDgtMDktMjAwNyIKKworIywgZnV6enkKKyN+IG1zZ2lkICJCPGRlYi1zaGxpYnM+KDUpLiIKKyN+IG1zZ3N0ciAiZGViLXNobGlicyIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA3LTA4LTMxIgorI34gbXNnc3RyICIxOC0wNy0yMDA3IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDctMDUtMTUiCisjfiBtc2dzdHIgIjE4LTA3LTIwMDciCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjxkcGtnIC1DPiB8IEI8LS1hdWRpdD4iCisjfiBtc2dzdHIgIkI8LUM+LCBCPC0tYXVkaXQ+IgorCisjLCBmdXp6eQorI34gbXNnaWQgIkI8ZHBrZyAtLWhlbHA+IgorI34gbXNnc3RyICJCPC0taGVscD4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjxkcGtnIC1EaCA+fEI8IC0tZGVidWc9aGVscD4iCisjfiBtc2dzdHIgIkI8LURoPiwgQjwtLWRlYnVnPWhlbHA+IgorCisjLCBmdXp6eQorI34gbXNnaWQgIkI8ZHBrZyAtLWxpY2VuY2U+IHwgQjxkcGtnIC0tbGljZW5zZT4iCisjfiBtc2dzdHIgIkI8LS1saWNlbmNlPnxCPC0tbGljZW5zZT4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjxkcGtnIC0tdmVyc2lvbj4iCisjfiBtc2dzdHIgIkI8LS12ZXJzaW9uPiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJDb3B5cmlnaHQgMjAwMSBXaWNoZXJ0IEFra2VybWFuIgorI34gbXNnc3RyICJDb3B5cmlnaHQgKEMpIDIwMDEgV2ljaGVydCBBa2tlcm1hbiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJDb3B5cmlnaHQgMjAwMCBXaWNoZXJ0IEFra2VybWFuIgorI34gbXNnc3RyICJDb3B5cmlnaHQgKEMpIDIwMDAgV2ljaGVydCBBa2tlcm1hbiIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA2LTA0LTA5IgorI34gbXNnc3RyICIwOS0wNC0yMDA4IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDctMDMtMTMiCisjfiBtc2dzdHIgIjE4LTA3LTIwMDciCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjxkYXRlPigxKS4iCisjfiBtc2dzdHIgIkI8ZHBrZz4oMSkuIgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDYtMDUtMjMiCisjfiBtc2dzdHIgIjI4LTAyLTIwMDYiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjwtLWJ1aWxkPiwgQjwtYj4iCisjfiBtc2dzdHIgIkI8LWI+LCBCPC1CPiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJCPC0taW5mbz4sIEI8LUk+IgorI34gbXNnc3RyICJCPC16PiwgQjwtWj4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjwtLXNob3c+LCBCPC1XPiIKKyN+IG1zZ3N0ciAiQjwtej4sIEI8LVo+IgorCisjLCBmdXp6eQorI34gbXNnaWQgIkI8LS1maWVsZD4sIEI8LWY+IgorI34gbXNnc3RyICJCPC16PiwgQjwtWj4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjwtLWNvbnRlbnRzPiwgQjwtYz4iCisjfiBtc2dzdHIgIkI8LS1saWNlbnNlPiwgQjwtLWxpY2VuY2U+IgorCisjLCBmdXp6eQorI34gbXNnaWQgIkI8LS1mc3lzLXRhcmZpbGU+IgorI34gbXNnc3RyICJCPC0tZnN5cy10YXJmaWxlPiBJPGFyY2hpdmU+IgorCisjLCBmdXp6eQorI34gbXNnaWQgIkI8LS1jb250cm9sPiwgQjwtZT4iCisjfiBtc2dzdHIgIkI8LXQ+LCBCPC0tdGVzdD4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjwtLWhlbHA+LCBCPC1oPiIKKyN+IG1zZ3N0ciAiQjwtaD4sIEI8LS1oZWxwPiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJCPC0tbGljZW5jZT4iCisjfiBtc2dzdHIgIkI8LWw+LCBCPC0tbGljZW5zZT4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiT1RIRVIgT1BUSU9OUyIKKyN+IG1zZ3N0ciAiT1BUSU9OUyIKKworIywgZnV6enkKKyN+IG1zZ2lkICJCPC0tZGVidWc+LCBCPC1EPiIKKyN+IG1zZ3N0ciAiQjwtYj4sIEI8LUI+IgorCisjLCBmdXp6eQorI34gbXNnaWQgIkI8LWgsIC0taGVscD4iCisjfiBtc2dzdHIgIkI8LWg+LCBCPC0taGVscD4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjxkcGtnLXF1ZXJ5PiBCPC1sPnxCPC0tbGlzdD4gSTxwYWNrYWdlLW5hbWUtcGF0dGVybj4gLi4uIgorI34gbXNnc3RyICJCPC1sPiwgQjwtLWxpc3Q+IEk8bW90aWYtZGUtbm9tLWRlLXBhcXVldD4uLi4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjxkcGtnLXF1ZXJ5PiBCPC1XPnxCPC0tc2hvdz4gSTxwYWNrYWdlLW5hbWUtcGF0dGVybj4gLi4uIgorI34gbXNnc3RyICJCPC1XPiwgQjwtLXNob3c+IEk8bW90aWYtZGUtbm9tLWRlLXBhcXVldD4uLi4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjxkcGtnLXF1ZXJ5PiBCPC1zPnxCPC0tc3RhdHVzPiBJPHBhY2thZ2UtbmFtZT4gLi4uIgorI34gbXNnc3RyICJCPC1zPiwgQjwtLXN0YXR1cz4gSTxub20tcGFxdWV0PiAuLi4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjxkcGtnLXF1ZXJ5PiBCPC1MPnxCPC0tbGlzdGZpbGVzPiBJPHBhY2thZ2UtbmFtZT4gLi4uIgorI34gbXNnc3RyICJCPC1MPiwgQjwtLWxpc3RmaWxlcz4gSTxub20tcGFxdWV0Pi4uLiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJCPGRwa2ctcXVlcnk+IEI8LVM+fEI8LS1zZWFyY2g+IEk8ZmlsZW5hbWUtc2VhcmNoLXBhdHRlcm4+IC4uLiIKKyN+IG1zZ3N0ciAiQjwtUz4sIEI8LS1zZWFyY2g+IEk8bW90aWYtZGUtbm9tLWEtcmVjaGVyY2hlcj4uLi4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjxkcGtnLXF1ZXJ5PiBCPC1wPnxCPC0tcHJpbnQtYXZhaWw+IEk8cGFja2FnZS1uYW1lPiAuLi4iCisjfiBtc2dzdHIgIkI8LXA+LCBCPC0tcHJpbnQtYXZhaWw+IEk8bm9tLXBhcXVldD4uLi4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjxkcGtnLXF1ZXJ5PiBCPC0tbGljZW5jZT58QjwtLWxpY2Vuc2U+IgorI34gbXNnc3RyICJCPC0tbGljZW5jZT58QjwtLWxpY2Vuc2U+IgorCisjLCBmdXp6eQorI34gbXNnaWQgIkI8ZHBrZy1xdWVyeT4gQjwtLXZlcnNpb24+IgorI34gbXNnc3RyICJCPC12PiwgQjwtLXZlcnNpb24+IgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICJUaGlzIG9wdGlvbiBuZWdhdGVzIGEgcHJldmlvdXNseSBzZXQgQjwtVz4uICBJdCBpcyBjdXJyZW50bHkgb25seSAiCisjfiAidW5kZXJzdG9vZCBieSBCPGRwa2ctYnVpbGRwYWNrYWdlPiBhbmQgQjxkcGtnLXNvdXJjZT4uIgorI34gbXNnc3RyICIiCisjfiAiQW5udWxlIHVuZSBvcHRpb24gQjwtRT4gdXRpbGlzw6llIHByw6ljw6lkZW1tZW50LiBTZXVsIEI8ZHBrZy1zb3VyY2U+ICIKKyN+ICJsJ3V0aWxpc2UsIG1haXMgQjxkcGtnLWJ1aWxkcGFja2FnZT4gbGEgcmVjb25uYcOudCBldCBsYSB0cmFuc21ldCDDoCBCPGRwa2ctIgorI34gInNvdXJjZT4uIgorCisjLCBmdXp6eQorI34gbXNnaWQgIkI8LXg+IgorI34gbXNnc3RyICJCPC1HPiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJCPC1JRTxsdD5maWxlbmFtZUU8Z3Q+PiIKKyN+IG1zZ3N0ciAiQjwtbj5JPG5vbS1kZS1maWNoaWVyPiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJCPGRwa2ctZ2VuY29udHJvbD4gZG9lcyBub3QgdGFrZSBhbnkgbm9uLW9wdGlvbiBhcmd1bWVudHMuIgorI34gbXNnc3RyICJCPDgyMi1kYXRlPiBuZSBwcmVuZCBhdWN1biBwYXJhbcOodHJlIG5pIGF1Y3VuZSBvcHRpb24uIgorCisjLCBmdXp6eQorI34gbXNnaWQgImRwa2ctR0VOQ0hBTkdFUyBPUFRJT05TIgorI34gbXNnc3RyICJPUFRJT05TIERFIENPUlJFU1BPTkRBTkNFIgorCisjLCBmdXp6eQorI34gbXNnaWQgIkI8ZHBrZy1nZW5jaGFuZ2VzPiBkb2VzIG5vdCB0YWtlIGFueSBub24tb3B0aW9uIGFyZ3VtZW50cy4iCisjfiBtc2dzdHIgIkI8ODIyLWRhdGU+IG5lIHByZW5kIGF1Y3VuIHBhcmFtw6h0cmUgbmkgYXVjdW5lIG9wdGlvbi4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjxkcGtnLWJ1aWxkcGFja2FnZT4gZG9lcyBub3QgdGFrZSBhbnkgbm9uLW9wdGlvbiBhcmd1bWVudHMuIgorI34gbXNnc3RyICJCPDgyMi1kYXRlPiBuZSBwcmVuZCBhdWN1biBwYXJhbcOodHJlIG5pIGF1Y3VuZSBvcHRpb24uIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICJCPGRwa2ctcGFyc2VjaGFuZ2Vsb2c+IGRvZXMgbm90IHRha2UgYW55IG5vbi1jb21tb24gb3B0aW9ucyBvciBub24tb3B0aW9uICIKKyN+ICJhcmd1bWVudHMuIgorI34gbXNnc3RyICJCPDgyMi1kYXRlPiBuZSBwcmVuZCBhdWN1biBwYXJhbcOodHJlIG5pIGF1Y3VuZSBvcHRpb24uIgorCisjLCBmdXp6eQorI34gbXNnaWQgIlZBUklBQkxFIFNVQlNUSVRVVElPTiIKKyN+IG1zZ3N0ciAiVkFSSUFCTEVTIEQnRU5WSVJPTk5FTUVOVCIKKworIywgZnV6enkKKyN+IG1zZ2lkICJCPGRwa2ctc3BsaXQ+IEI8LWw+fEI8LS1saXN0cT4iCisjfiBtc2dzdHIgIkI8LWw+LCBCPC0tbGlzdHE+IgorCisjLCBmdXp6eQorI34gbXNnaWQgIkI8LS1qb2luPiwgQjwtaj4iCisjfiBtc2dzdHIgIkI8LXo+LCBCPC1aPiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJCPC0tYXV0bz4sIEI8LWE+IgorI34gbXNnc3RyICJCPC0tYXV0bz4gSTxub20+IgorCisjLCBmdXp6eQorI34gbXNnaWQgIkI8LS1saXN0cT4sIEI8LWw+IgorI34gbXNnc3RyICJCPC0tbGlzdD4gSTxsaW5rPiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJCPC0tZGlzY2FyZD4sIEI8LWQ+IgorI34gbXNnc3RyICJCPC0tbmV3PiwgQjwtLW9sZD4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjwtLW5wcXVpZXQ+LCBCPC1RPiIKKyN+IG1zZ3N0ciAiQjwtLW5ldz4sIEI8LS1vbGQ+IgorCisjLCBmdXp6eQorI34gbXNnaWQgIkI8LS1hZG1pbmRpcj4iCisjfiBtc2dzdHIgIkI8LS1hZG1pbmRpcj49STxkaXI+IgorCisjLCBmdXp6eQorI34gbXNnaWQgIkI8c3RhcnQtc3RvcC1kYWVtb24+IEI8LUg+fEI8LS1oZWxwPiIKKyN+IG1zZ3N0ciAic3RhcnQtc3RvcC1kYWVtb24iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjxzdGFydC1zdG9wLWRhZW1vbj4gQjwtVj58QjwtLXZlcnNpb24+IgorI34gbXNnc3RyICJCPHN0YXJ0LXN0b3AtZGFlbW9uPiBbSTxvcHRpb25zPl0gSTxjb21tYW5kZT4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjwtSD58QjwtLWhlbHA+IgorI34gbXNnc3RyICJCPC1IPiwgQjwtLWhlbHA+IgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vcG8vaHUuYWRkIGIvZHBrZy0xLjE2LjEuMS9tYW4vcG8vaHUuYWRkCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjA2OTFmZjUKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9wby9odS5hZGQKQEAgLTAsMCArMSwzIEBACitQTzRBLUhFQURFUjptb2RlPWFmdGVyO3Bvc2l0aW9uPV5cLlRIO2JlZ2luYm91bmRhcnk9RmFrZVBvNGFCb3VuZGFyeQorLlAKK0ZvcmQ6IFNaRVJWw4FDIEF0dGlsYQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vcG8vaHUucG8gYi9kcGtnLTEuMTYuMS4xL21hbi9wby9odS5wbwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kZTg3MzgwCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vcG8vaHUucG8KQEAgLTAsMCArMSwxNTY2MiBAQAorIyBIdW5nYXJpYW4gdHJhbnNsYXRpb24gb2YgdGhlIG1hbnBhZ2VzIGluIHRoZSBkcGtnIHBhY2thZ2UKKyMgVGhpcyBmaWxlIGlzIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBzYW1lIGxpY2Vuc2UgYXMgdGhlIGRwa2cgcGFja2FnZS4KKyMgQ29weXJpZ2h0IChDKSBGSVJTVCBBVVRIT1IgPEVNQUlMQEFERFJFU1M+LCBZRUFSLgorIworbXNnaWQgIiIKK21zZ3N0ciAiIgorIlByb2plY3QtSWQtVmVyc2lvbjogXG4iCisiUE9ULUNyZWF0aW9uLURhdGU6IDIwMTEtMTAtMTQgMDc6MTErMDMwMFxuIgorIlBPLVJldmlzaW9uLURhdGU6IDIwMTAtMDMtMDcgMjI6MTcrMDEwMFxuIgorIkxhc3QtVHJhbnNsYXRvcjogU1pFUlbDgUMgQXR0aWxhIDxzYXNAMzIxLmh1PlxuIgorIkxhbmd1YWdlLVRlYW06IEh1bmdhcmlhblxuIgorIkxhbmd1YWdlOiBcbiIKKyJNSU1FLVZlcnNpb246IDEuMFxuIgorIkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD1VVEYtOFxuIgorIkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXRcbiIKKyJYLVBvZWRpdC1MYW5ndWFnZTogSHVuZ2FyaWFuXG4iCisiWC1Qb2VkaXQtQ291bnRyeTogSFVOR0FSWVxuIgorCisjLiB0eXBlOiBUSAorIzogZGViLjU6MQorIywgbm8td3JhcAorbXNnaWQgImRlYiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUSAorIzogZGViLjU6MSBkZWItY29udHJvbC41OjMgZGViLXNyYy1jb250cm9sLjU6MyBkZWItdmVyc2lvbi41OjUgZGViLW9sZC41OjEKKyM6IGRlYi1vdmVycmlkZS41OjE1IGRlYi1zeW1ib2xzLjU6MiBkZWItdHJpZ2dlcnMuNToxIGRwa2cuMToxCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEgZHBrZy1idWlsZHBhY2thZ2UuMToxIGRwa2ctZGViLjE6MSBkcGtnLWRpdmVydC44OjEKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjEgZHBrZy1nZW5jb250cm9sLjE6MSBkcGtnLWdlbnN5bWJvbHMuMToyCisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjEgZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMToxIGRwa2ctbmFtZS4xOjYKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxIGRwa2ctcXVlcnkuMToxIGRwa2ctc2NhbnBhY2thZ2VzLjE6MTUKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMToxIGRwa2ctc2hsaWJkZXBzLjE6MSBkcGtnLXNvdXJjZS4xOjIgZHBrZy10cmlnZ2VyLjE6MQorIzogZHNlbGVjdC4xOjEgdXBkYXRlLWFsdGVybmF0aXZlcy44OjgKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiMjAxMS0wOC0xNCIKK21zZ3N0ciAiMjAwNi0wMi0yOCIKKworIy4gdHlwZTogVEgKKyM6IGRlYi41OjEgZGViLWNvbnRyb2wuNTozIGRlYi1zcmMtY29udHJvbC41OjMgZGViLXNwbGl0LjU6MSBkZWItdmVyc2lvbi41OjUKKyM6IGRlYi1vbGQuNToxIGRlYi1vdmVycmlkZS41OjE1IGRlYi1leHRyYS1vdmVycmlkZS41OjEgZGViLXNobGlicy41OjE2CisjOiBkZWItc3Vic3R2YXJzLjU6MiBkZWItc3ltYm9scy41OjIgZGViLXRyaWdnZXJzLjU6MSBkcGtnLjE6MQorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxIGRwa2cuY2ZnLjU6MSBkcGtnLWJ1aWxkZmxhZ3MuMToxCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEgZHBrZy1jaGVja2J1aWxkZGVwcy4xOjEgZHBrZy1kaXN0YWRkZmlsZS4xOjEKKyM6IGRwa2ctZGViLjE6MSBkcGtnLWRpdmVydC44OjEgZHBrZy1nZW5jaGFuZ2VzLjE6MSBkcGtnLWdlbmNvbnRyb2wuMToxCisjOiBkcGtnLWdlbnN5bWJvbHMuMToyIGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MSBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjEKKyM6IGRwa2ctbmFtZS4xOjYgZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjEgZHBrZy1xdWVyeS4xOjEgZHBrZy1zY2FucGFja2FnZXMuMToxNQorIzogZHBrZy1zY2Fuc291cmNlcy4xOjEgZHBrZy1zaGxpYmRlcHMuMToxIGRwa2ctc291cmNlLjE6MiBkcGtnLXNwbGl0LjE6MgorIzogZHBrZy10cmlnZ2VyLjE6MSBkcGtnLXZlbmRvci4xOjEgZHNlbGVjdC4xOjEgZHNlbGVjdC5jZmcuNToxCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjEgdXBkYXRlLWFsdGVybmF0aXZlcy44OjgKKyMsIG5vLXdyYXAKK21zZ2lkICJEZWJpYW4gUHJvamVjdCIKK21zZ3N0ciAiRGViaWFuIFByb2plY3QiCisKKyMuIHR5cGU6IFRICisjOiBkZWIuNToxIGRlYi1jb250cm9sLjU6MyBkZWItc3JjLWNvbnRyb2wuNTozIGRlYi1zcGxpdC41OjEgZGViLXZlcnNpb24uNTo1CisjOiBkZWItb2xkLjU6MSBkc2VsZWN0LjE6MQorIywgbm8td3JhcAorbXNnaWQgIkRlYmlhbiIKK21zZ3N0ciAiRGViaWFuIgorCisjLiB0eXBlOiBTSAorIzogZGViLjU6MiBkZWItY29udHJvbC41OjQgZGViLXNyYy1jb250cm9sLjU6NCBkZWItc3BsaXQuNToyIGRlYi12ZXJzaW9uLjU6NgorIzogZGViLW9sZC41OjIgZGViLW92ZXJyaWRlLjU6MTYgZGViLWV4dHJhLW92ZXJyaWRlLjU6MiBkZWItc2hsaWJzLjU6MTcKKyM6IGRlYi1zdWJzdHZhcnMuNTozIGRlYi1zeW1ib2xzLjU6MyBkZWItdHJpZ2dlcnMuNToyIGRwa2cuMToyCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjIgZHBrZy5jZmcuNToyIGRwa2ctYnVpbGRmbGFncy4xOjIKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MiBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6MiBkcGtnLWRpc3RhZGRmaWxlLjE6MgorIzogZHBrZy1kZWIuMToyIGRwa2ctZGl2ZXJ0Ljg6MiBkcGtnLWdlbmNoYW5nZXMuMToyIGRwa2ctZ2VuY29udHJvbC4xOjIKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjMgZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToyIGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6MgorIzogZHBrZy1uYW1lLjE6NyBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MiBkcGtnLXF1ZXJ5LjE6MiBkcGtnLXNjYW5wYWNrYWdlcy4xOjE2CisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6MiBkcGtnLXNobGliZGVwcy4xOjIgZHBrZy1zb3VyY2UuMTozIGRwa2ctc3BsaXQuMTozCisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjIgZHBrZy10cmlnZ2VyLjE6MiBkcGtnLXZlbmRvci4xOjIgZHNlbGVjdC4xOjIKKyM6IGRzZWxlY3QuY2ZnLjU6MiBzdGFydC1zdG9wLWRhZW1vbi44OjIgdXBkYXRlLWFsdGVybmF0aXZlcy44OjkKKyMsIG5vLXdyYXAKK21zZ2lkICJOQU1FIgorbXNnc3RyICJOw4lWIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWIuNTo0Cittc2dpZCAiZGViIC0gRGViaWFuIGJpbmFyeSBwYWNrYWdlIGZvcm1hdCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZGViLjU6NCBkZWItY29udHJvbC41OjcgZGViLXNyYy1jb250cm9sLjU6NyBkZWItc3BsaXQuNTo0IGRlYi12ZXJzaW9uLjU6OQorIzogZGViLW9sZC41OjUgZGViLW92ZXJyaWRlLjU6MTkgZGViLWV4dHJhLW92ZXJyaWRlLjU6NSBkZWItc3Vic3R2YXJzLjU6NgorIzogZGViLXN5bWJvbHMuNTo2IGRlYi10cmlnZ2Vycy41OjUgZHBrZy4xOjUgZHBrZy1hcmNoaXRlY3R1cmUuMTo1CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo1IGRwa2ctYnVpbGRwYWNrYWdlLjE6NSBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6NQorIzogZHBrZy1kaXN0YWRkZmlsZS4xOjUgZHBrZy1kZWIuMTo1IGRwa2ctZGl2ZXJ0Ljg6NSBkcGtnLWdlbmNoYW5nZXMuMTo1CisjOiBkcGtnLWdlbmNvbnRyb2wuMTo1IGRwa2ctZ2Vuc3ltYm9scy4xOjYgZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMTo1CisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjUgZHBrZy1uYW1lLjE6MTAgZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjUKKyM6IGRwa2ctcXVlcnkuMTo1IGRwa2ctc2NhbnBhY2thZ2VzLjE6MTkgZHBrZy1zY2Fuc291cmNlcy4xOjUKKyM6IGRwa2ctc2hsaWJkZXBzLjE6NSBkcGtnLXNvdXJjZS4xOjYgZHBrZy1zcGxpdC4xOjYgZHBrZy1zdGF0b3ZlcnJpZGUuODo1CisjOiBkcGtnLXRyaWdnZXIuMTo1IGRwa2ctdmVuZG9yLjE6NSBkc2VsZWN0LjE6NSBzdGFydC1zdG9wLWRhZW1vbi44OjUKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxMgorIywgbm8td3JhcAorbXNnaWQgIlNZTk9QU0lTIgorbXNnc3RyICJTWklOT1BTWklTIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWIuNTo2IGRlYi1zcGxpdC41OjYgZGViLW9sZC41OjcKK21zZ2lkICJJPGZpbGVuYW1lPkI8LmRlYj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRlYi41OjYgZGViLWNvbnRyb2wuNToxMCBkZWItc3JjLWNvbnRyb2wuNToxMCBkZWItc3BsaXQuNTo2CisjOiBkZWItdmVyc2lvbi41OjExIGRlYi1vbGQuNTo4IGRlYi1vdmVycmlkZS41OjIyIGRlYi1leHRyYS1vdmVycmlkZS41OjgKKyM6IGRlYi1zaGxpYnMuNToyMCBkZWItc3Vic3R2YXJzLjU6OSBkZWItc3ltYm9scy41OjkgZGViLXRyaWdnZXJzLjU6OAorIzogZHBrZy4xOjE5IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTAgZHBrZy5jZmcuNTo1IGRwa2ctYnVpbGRmbGFncy4xOjkKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6OSBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6MTAgZHBrZy1kaXN0YWRkZmlsZS4xOjkKKyM6IGRwa2ctZGViLjE6OSBkcGtnLWRpdmVydC44OjEwIGRwa2ctZ2VuY2hhbmdlcy4xOjEwIGRwa2ctZ2VuY29udHJvbC4xOjkKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjEwIGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MTUgZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTo5CisjOiBkcGtnLW5hbWUuMToxNiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6OSBkcGtnLXF1ZXJ5LjE6OQorIzogZHBrZy1zY2FucGFja2FnZXMuMToyNyBkcGtnLXNjYW5zb3VyY2VzLjE6MTMgZHBrZy1zaGxpYmRlcHMuMTo5CisjOiBkcGtnLXNvdXJjZS4xOjEwIGRwa2ctc3BsaXQuMToxMCBkcGtnLXN0YXRvdmVycmlkZS44OjkgZHBrZy10cmlnZ2VyLjE6MTIKKyM6IGRwa2ctdmVuZG9yLjE6OSBkc2VsZWN0LjE6OSBkc2VsZWN0LmNmZy41OjUgc3RhcnQtc3RvcC1kYWVtb24uODo5CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTYKKyMsIG5vLXdyYXAKK21zZ2lkICJERVNDUklQVElPTiIKK21zZ3N0ciAiTEXDjVLDgVMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi41OjEyCittc2dpZCAiIgorIlRoZSBCPC5kZWI+IGZvcm1hdCBpcyB0aGUgRGViaWFuIGJpbmFyeSBwYWNrYWdlIGZpbGUgZm9ybWF0LiBJdCBpcyAiCisidW5kZXJzdG9vZCBieSBkcGtnIDAuOTMuNzYgYW5kIGxhdGVyLCBhbmQgaXMgZ2VuZXJhdGVkIGJ5IGRlZmF1bHQgYnkgYWxsICIKKyJ2ZXJzaW9ucyBvZiBkcGtnIHNpbmNlIDEuMi4wIGFuZCBhbGwgaTM4Ni9FTEYgdmVyc2lvbnMgc2luY2UgMS4xLjFlbGYuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi41OjE2Cittc2dpZCAiIgorIlRoZSBmb3JtYXQgZGVzY3JpYmVkIGhlcmUgaXMgdXNlZCBzaW5jZSBEZWJpYW4gMC45MzsgZGV0YWlscyBvZiB0aGUgb2xkICIKKyJmb3JtYXQgYXJlIGRlc2NyaWJlZCBpbiBCPGRlYi1vbGQ+KDUpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZGViLjU6MTYgZGViLXNwbGl0LjU6OSBkZWItb2xkLjU6MTgKKyMsIG5vLXdyYXAKK21zZ2lkICJGT1JNQVQiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLjU6MjIKK21zZ2lkICIiCisiVGhlIGZpbGUgaXMgYW4gQjxhcj4gYXJjaGl2ZSB3aXRoIGEgbWFnaWMgdmFsdWUgb2YgQjwhRTxsdD5hcmNoRTxndD4+LiAgVGhlICIKKyJmaWxlIG5hbWVzIG1pZ2h0IGNvbnRhaW4gYSB0cmFpbGluZyBzbGFzaC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLjU6MjgKK21zZ2lkICIiCisiVGhlIEI8dGFyPiBhcmNoaXZlcyBjdXJyZW50bHkgYWxsb3dlZCBhcmUsIHRoZSBvbGQtc3R5bGUgKHY3KSBmb3JtYXQsIHRoZSAiCisicHJlLVBPU0lYIHVzdGFyIGZvcm1hdCwgYSBzdWJzZXQgb2YgdGhlIEdOVSBmb3JtYXQgKG9ubHkgdGhlIG5ldyBzdHlsZSBsb25nICIKKyJwYXRobmFtZXMgYW5kIGxvbmcgbGlua25hbWVzLCBzdXBwb3J0ZWQgc2luY2UgZHBrZyAxLjQuMS4xNyksIGFuZCB0aGUgUE9TSVggIgorInVzdGFyIGZvcm1hdCAobG9uZyBuYW1lcyBzdXBwb3J0ZWQgc2luY2UgZHBrZyAxLjE1LjApLiAgVW5yZWNvZ25pemVkIHRhciAiCisidHlwZWZsYWdzIGFyZSBjb25zaWRlcmVkIGFuIGVycm9yLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWIuNTozOAorbXNnaWQgIiIKKyJUaGUgZmlyc3QgbWVtYmVyIGlzIG5hbWVkIEI8ZGViaWFuLWJpbmFyeT4gYW5kIGNvbnRhaW5zIGEgc2VyaWVzIG9mIGxpbmVzLCAiCisic2VwYXJhdGVkIGJ5IG5ld2xpbmVzLiBDdXJyZW50bHkgb25seSBvbmUgbGluZSBpcyBwcmVzZW50LCB0aGUgZm9ybWF0ICIKKyJ2ZXJzaW9uIG51bWJlciwgQjwyLjA+IGF0IHRoZSB0aW1lIHRoaXMgbWFudWFsIHBhZ2Ugd2FzIHdyaXR0ZW4uICBQcm9ncmFtcyAiCisid2hpY2ggcmVhZCBuZXctZm9ybWF0IGFyY2hpdmVzIHNob3VsZCBiZSBwcmVwYXJlZCBmb3IgdGhlIG1pbm9yIG51bWJlciB0byBiZSAiCisiaW5jcmVhc2VkIGFuZCBuZXcgbGluZXMgdG8gYmUgcHJlc2VudCwgYW5kIHNob3VsZCBpZ25vcmUgdGhlc2UgaWYgdGhpcyBpcyAiCisidGhlIGNhc2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi41OjQzCittc2dpZCAiIgorIklmIHRoZSBtYWpvciBudW1iZXIgaGFzIGNoYW5nZWQsIGFuIGluY29tcGF0aWJsZSBjaGFuZ2UgaGFzIGJlZW4gbWFkZSBhbmQgIgorInRoZSBwcm9ncmFtIHNob3VsZCBzdG9wLiBJZiBpdCBoYXMgbm90LCB0aGVuIHRoZSBwcm9ncmFtIHNob3VsZCBiZSBhYmxlIHRvICIKKyJzYWZlbHkgY29udGludWUsIHVubGVzcyBpdCBlbmNvdW50ZXJzIGFuIHVuZXhwZWN0ZWQgbWVtYmVyIGluIHRoZSBhcmNoaXZlICIKKyIoZXhjZXB0IGF0IHRoZSBlbmQpLCBhcyBkZXNjcmliZWQgYmVsb3cuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi41OjUzCittc2dpZCAiIgorIlRoZSBzZWNvbmQgcmVxdWlyZWQgbWVtYmVyIGlzIG5hbWVkIEI8Y29udHJvbC50YXIuZ3o+LiAgSXQgaXMgYSBnemlwcGVkIHRhciAiCisiYXJjaGl2ZSBjb250YWluaW5nIHRoZSBwYWNrYWdlIGNvbnRyb2wgaW5mb3JtYXRpb24sIGFzIGEgc2VyaWVzIG9mIHBsYWluICIKKyJmaWxlcywgb2Ygd2hpY2ggdGhlIGZpbGUgQjxjb250cm9sPiBpcyBtYW5kYXRvcnkgYW5kIGNvbnRhaW5zIHRoZSBjb3JlICIKKyJjb250cm9sIGluZm9ybWF0aW9uLiBUaGUgY29udHJvbCB0YXJiYWxsIG1heSBvcHRpb25hbGx5IGNvbnRhaW4gYW4gZW50cnkgZm9yICIKKyJgQjwuPicsIHRoZSBjdXJyZW50IGRpcmVjdG9yeS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLjU6NjIKK21zZ2lkICIiCisiVGhlIHRoaXJkLCBsYXN0IHJlcXVpcmVkIG1lbWJlciBpcyBuYW1lZCBCPGRhdGEudGFyPi4gIEl0IGNvbnRhaW5zIHRoZSAiCisiZmlsZXN5c3RlbSBhcyBhIHRhciBhcmNoaXZlLCBlaXRoZXIgbm90IGNvbXByZXNzZWQgKHN1cHBvcnRlZCBzaW5jZSBkcGtnICIKKyIxLjEwLjI0KSwgb3IgY29tcHJlc3NlZCB3aXRoIGd6aXAgKHdpdGggQjwuZ3o+IGV4dGVuc2lvbiksIHh6ICh3aXRoIEI8Lnh6PiAiCisiZXh0ZW5zaW9uLCBzdXBwb3J0ZWQgc2luY2UgZHBrZyAxLjE1LjYpLCBiemlwMiAod2l0aCBCPC5iejI+IGV4dGVuc2lvbiwgIgorInN1cHBvcnRlZCBzaW5jZSBkcGtnIDEuMTAuMjQpIG9yIGx6bWEgKHdpdGggQjwubHptYT4gZXh0ZW5zaW9uLCBzdXBwb3J0ZWQgIgorInNpbmNlIGRwa2cgMS4xMy4yNSkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi41OjczCittc2dpZCAiIgorIlRoZXNlIG1lbWJlcnMgbXVzdCBvY2N1ciBpbiB0aGlzIGV4YWN0IG9yZGVyLiBDdXJyZW50IGltcGxlbWVudGF0aW9ucyBzaG91bGQgIgorImlnbm9yZSBhbnkgYWRkaXRpb25hbCBtZW1iZXJzIGFmdGVyIEI8ZGF0YS50YXI+LiAgRnVydGhlciBtZW1iZXJzIG1heSBiZSAiCisiZGVmaW5lZCBpbiB0aGUgZnV0dXJlLCBhbmQgKGlmIHBvc3NpYmxlKSB3aWxsIGJlIHBsYWNlZCBhZnRlciB0aGVzZSB0aHJlZS4gIgorIkFueSBhZGRpdGlvbmFsIG1lbWJlcnMgdGhhdCBtYXkgbmVlZCB0byBiZSBpbnNlcnRlZCBiZWZvcmUgQjxkYXRhLnRhcj4gYW5kICIKKyJ3aGljaCBzaG91bGQgYmUgc2FmZWx5IGlnbm9yZWQgYnkgb2xkZXIgcHJvZ3JhbXMsIHdpbGwgaGF2ZSBuYW1lcyBzdGFydGluZyAiCisid2l0aCBhbiB1bmRlcnNjb3JlLCBgQjxfPicuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi41Ojc5Cittc2dpZCAiIgorIlRob3NlIG5ldyBtZW1iZXJzIHdoaWNoIHdvbid0IGJlIGFibGUgdG8gYmUgc2FmZWx5IGlnbm9yZWQgd2lsbCBiZSBpbnNlcnRlZCAiCisiYmVmb3JlIEI8ZGF0YS50YXI+IHdpdGggbmFtZXMgc3RhcnRpbmcgd2l0aCBzb21ldGhpbmcgb3RoZXIgdGhhbiAiCisidW5kZXJzY29yZXMsIG9yIHdpbGwgKG1vcmUgbGlrZWx5KSBjYXVzZSB0aGUgbWFqb3IgdmVyc2lvbiBudW1iZXIgdG8gYmUgIgorImluY3JlYXNlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRlYi41Ojc5IGRlYi1jb250cm9sLjU6MjcxIGRlYi1zcmMtY29udHJvbC41OjMyNyBkZWItc3BsaXQuNTo0OQorIzogZGViLXZlcnNpb24uNToxMTYgZGViLW9sZC41OjUxIGRlYi1vdmVycmlkZS41OjYyIGRlYi1leHRyYS1vdmVycmlkZS41OjM3CisjOiBkZWItc2hsaWJzLjU6NjEgZGViLXN1YnN0dmFycy41OjE1NCBkZWItc3ltYm9scy41OjYxIGRlYi10cmlnZ2Vycy41OjY3CisjOiBkcGtnLjE6NzY4IGRwa2ctYXJjaGl0ZWN0dXJlLjE6Mjk5IGRwa2cuY2ZnLjU6MjMgZHBrZy1idWlsZHBhY2thZ2UuMToyNDkKKyM6IGRwa2ctZGViLjE6MjU5IGRwa2ctZGl2ZXJ0Ljg6MTMyIGRwa2ctZ2Vuc3ltYm9scy4xOjQ1MCBkcGtnLW5hbWUuMTo5NgorIzogZHBrZy1xdWVyeS4xOjIyMCBkcGtnLXNjYW5wYWNrYWdlcy4xOjExMCBkcGtnLXNjYW5zb3VyY2VzLjE6NzEKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MzI0IGRwa2ctc291cmNlLjE6NzI1IGRwa2ctc3BsaXQuMToyMTcKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6ODQgZHBrZy10cmlnZ2VyLjE6NjYgZHNlbGVjdC4xOjQ0NSBkc2VsZWN0LmNmZy41OjIzCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NTA4CisjLCBuby13cmFwCittc2dpZCAiU0VFIEFMU08iCittc2dzdHIgIkzDgVNEIE3DiUciCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi41OjgyCisjLCBmdXp6eQorbXNnaWQgIkI8ZGViLW9sZD4oNSksIEI8ZHBrZy1kZWI+KDEpLCBCPGRlYi1jb250cm9sPig1KS4iCittc2dzdHIgIkI8ZGViPig1KSwgQjxkcGtnPigxKSwgQjxkcGtnLWRlYj4oMSkuIgorCisjLiB0eXBlOiBUSAorIzogZGViLWNvbnRyb2wuNTozCisjLCBuby13cmFwCittc2dpZCAiZGViLWNvbnRyb2wiCittc2dzdHIgImRlYi1jb250cm9sIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjYKK21zZ2lkICJkZWItY29udHJvbCAtIERlYmlhbiBwYWNrYWdlcycgbWFzdGVyIGNvbnRyb2wgZmlsZSBmb3JtYXQiCittc2dzdHIgImRlYi1jb250cm9sIC0gRGViaWFuIGNzb21hZyBmxZEga29udHJvbGwgZsOhamwgZm9ybcOhdHVtIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjkgZGViLXNyYy1jb250cm9sLjU6OQorbXNnaWQgImNvbnRyb2wiCittc2dzdHIgImtvbnRyb2xsIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjI0CisjLCBmdXp6eQorbXNnaWQgIiIKKyJFYWNoIERlYmlhbiBwYWNrYWdlIGNvbnRhaW5zIHRoZSBtYXN0ZXIgYGNvbnRyb2wnIGZpbGUsIHdoaWNoIGNvbnRhaW5zIGEgIgorIm51bWJlciBvZiBmaWVsZHMsIG9yIGNvbW1lbnRzIHdoZW4gdGhlIGxpbmUgc3RhcnRzIHdpdGggQjwnIyc+LiBFYWNoIGZpZWxkICIKKyJiZWdpbnMgd2l0aCBhIHRhZywgc3VjaCBhcyBCPFBhY2thZ2U+IG9yIEI8VmVyc2lvbj4gKGNhc2UgaW5zZW5zaXRpdmUpLCAiCisiZm9sbG93ZWQgYnkgYSBjb2xvbiwgYW5kIHRoZSBib2R5IG9mIHRoZSBmaWVsZC4gIEZpZWxkcyBhcmUgZGVsaW1pdGVkIG9ubHkgIgorImJ5IGZpZWxkIHRhZ3MuIEluIG90aGVyIHdvcmRzLCBmaWVsZCB0ZXh0IG1heSBiZSBtdWx0aXBsZSBsaW5lcyBpbiBsZW5ndGgsICIKKyJidXQgdGhlIGluc3RhbGxhdGlvbiB0b29scyB3aWxsIGdlbmVyYWxseSBqb2luIGxpbmVzIHdoZW4gcHJvY2Vzc2luZyB0aGUgIgorImJvZHkgb2YgdGhlIGZpZWxkIChleGNlcHQgaW4gdGhlIGNhc2Ugb2YgdGhlIEI8RGVzY3JpcHRpb24+IGZpZWxkLCBzZWUgIgorImJlbG93KS4iCittc2dzdHIgIiIKKyJNaW5kZW4gRGViaWFuIGNzb21hZyB0YXJ0YWxtYXp6YSBhIG1lc3RlciBgY29udHJvbCcgZsOhamx0LCBtZWx5IG1lesWRa2LFkWwgIgorIsOhbGwuIE1pbmRlbiBtZXrFkSBlZ3kgdGFnLWdlbCBrZXpkxZFkaWssIHBsLiBCPFBhY2thZ2U+IHZhZ3kgQjxWZXJzaW9uPiAiCisiKG5hZ3liZXTFsS3DqXJ6w6lrZXRsZW4pLCBtZWx5ZXQga2V0dMWRc3BvbnQgw6lzIG1lesWRdMO2cnpzIGvDtnZldC4gQSBtZXrFkWtldCBjc2FrICIKKyJhIG1lesWRIHRhZy1layB2w6FsYXN6dGrDoWsgZWwuIFZhZ3lpcywgYSBtZXrFkSBzesO2dmVnZSB0w7ZiYiBzb3Jiw7NsIGlzIMOhbGxoYXQsICIKKyJkZSBhIHRlbGVww610xZEgZXN6a8O2esO2ayDDoWx0YWzDoWJhbiDDtnNzemVmxbF6aWsgZXpla2V0IGVneSBtZXrFkXTDtnJ6cyAiCisiZmVsZG9sZ296w6FzYWtvciAoa2l2w6l2ZSBhIEI8RGVzY3JpcHRpb24+IG1lesWRdCwgbC4gYWzDoWJiKS4iCisKKyMuIHR5cGU6IFNICisjOiBkZWItY29udHJvbC41OjI1CisjLCBuby13cmFwCittc2dpZCAiUkVRVUlSRUQgRklFTERTIgorbXNnc3RyICJLw5ZURUxFWsWQIE1FWsWQSyIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MjYKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxQYWNrYWdlOj5JPCBwYWNrYWdlLW5hbWU+IgorbXNnc3RyICJCPFBhY2thZ2U6PiBFPGx0PmNzb21hZyBuw6l2RTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MzAKK21zZ2lkICIiCisiVGhlIHZhbHVlIG9mIHRoaXMgZmllbGQgZGV0ZXJtaW5lcyB0aGUgcGFja2FnZSBuYW1lLCBhbmQgaXMgdXNlZCB0byBnZW5lcmF0ZSAiCisiZmlsZSBuYW1lcyBieSBtb3N0IGluc3RhbGxhdGlvbiB0b29scy4iCittc2dzdHIgIiIKKyJFIG1lesWRIMOpcnTDqWtlIGFkamEgbWVnIGEgY3NvbWFnIG5ldsOpdCwgbWVseWLFkWwgYSBsZWd0w7ZiYiB0ZWxlcMOtdMWRIGVzemvDtnogIgorImbDoWpsbmV2ZWtldCDDoWxsw610IGVsxZEuIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNTozMAorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPFZlcnNpb246PiBFPGx0PnZlcnNpb24gc3RyaW5nRTxndD4iCittc2dpZCAiQjxWZXJzaW9uOj5JPCB2ZXJzaW9uLXN0cmluZz4iCittc2dzdHIgIkI8VmVyc2lvbjo+IEU8bHQ+dmVyemnDs0U8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjM3CisjLCBmdXp6eQorbXNnaWQgIiIKKyJUeXBpY2FsbHksIHRoaXMgaXMgdGhlIG9yaWdpbmFsIHBhY2thZ2UncyB2ZXJzaW9uIG51bWJlciBpbiB3aGF0ZXZlciBmb3JtICIKKyJ0aGUgcHJvZ3JhbSdzIGF1dGhvciB1c2VzLiBJdCBtYXkgYWxzbyBpbmNsdWRlIGEgRGViaWFuIHJldmlzaW9uIG51bWJlciAoZm9yICIKKyJub24tbmF0aXZlIHBhY2thZ2VzKS4gVGhlIGV4YWN0IGZvcm1hdCBhbmQgc29ydGluZyBhbGdvcml0aG0gYXJlIGRlc2NyaWJlZCAiCisiaW4gQjxkZWItdmVyc2lvbj4oNSkuIgorbXNnc3RyICIiCisiRXogw6FsdGFsw6FiYW4gYXogZXJlZGV0aSBjc29tYWcgdmVyemnDsyBzesOhbSwgYSBwcm9ncmFtIHN6ZXJ6xZFqZSDDoWx0YWwgIgorImhhc3puw6FsdCBmb3Jtw6FiYW4uIERlYmlhbiByZXbDrXppw7Mgc3rDoW1vdCBpcyB0YXJ0YWxtYXpoYXQgKG5lbS1uYXTDrXYgIgorImNzb21hZ29rbsOhbCkuIEhhIG1pbmRrZXR0xZEgbWVnIHZhbiBhZHZhLCBlbHbDoWxhc3p0w6FzdWsga8O2dMWRamVsbGVsIHTDtnJ0w6luaWssICIKKyJgLScuIEV6w6lydCBheiBlcmVkZXRpIHbDoWx0b3phdCBuZW0gdGFydGFsbWF6aGF0IGvDtnTFkWplbGV0IHZlcnppw7NzesOhbcOhYmFuLiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MzcKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxNYWludGFpbmVyOj4gRTxsdD5mdWxsbmFtZSBlbWFpbEU8Z3Q+IgorbXNnaWQgIkI8TWFpbnRhaW5lcjo+STwgZnVsbG5hbWUtZW1haWw+IgorbXNnc3RyICJCPE1haW50YWluZXI6PiBFPGx0PnRlbGplcy5uw6l2IGVtYWlsRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6NDIKK21zZ2lkICIiCisiU2hvdWxkIGJlIGluIHRoZSBmb3JtYXQgYEpvZSBCbG9nZ3MgRTxsdD5qYmxvZ2dzQGZvby5jb21FPGd0PicsIGFuZCBpcyAiCisidHlwaWNhbGx5IHRoZSBwZXJzb24gd2hvIGNyZWF0ZWQgdGhlIHBhY2thZ2UsIGFzIG9wcG9zZWQgdG8gdGhlIGF1dGhvciBvZiAiCisidGhlIHNvZnR3YXJlIHRoYXQgd2FzIHBhY2thZ2VkLiIKK21zZ3N0ciAiIgorIkZvcm3DoWphIGlseWVuIGxlaGV0OiBgSm9lIEJsb2dncyBFPGx0PmpibG9nZ3NAZm9vLmNvbUU8Z3Q+Jywgw6lzIMOhbHRhbMOhYmFuICIKKyJuZW0gYSBzem9mdHZlciBzemVyesWRasOpdCBoYW5lbSBhIGNzb21hZyBrw6lzesOtdMWRasOpdCB0YXJ0YWxtYXp6YS4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjQyCisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8RGVzY3JpcHRpb246PiBFPGx0PnNob3J0IGRlc2NyaXB0aW9uRTxndD4iCittc2dpZCAiQjxEZXNjcmlwdGlvbjo+STwgc2hvcnQtZGVzY3JpcHRpb24+IgorbXNnc3RyICJCPERlc2NyaXB0aW9uOj4gRTxsdD5yw7Z2aWQgbGXDrXLDoXNFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNTo0NQorIywgZnV6enkKKyN8IG1zZ2lkICJCPCA+RTxsdD5sb25nIGRlc2NyaXB0aW9uRTxndD4iCittc2dpZCAiQjwgPkk8bG9uZy1kZXNjcmlwdGlvbj4iCittc2dzdHIgIkI8ID5FPGx0Pmhvc3N6w7ogbGXDrXLDoXNFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNTo1MQorbXNnaWQgIiIKKyJUaGUgZm9ybWF0IGZvciB0aGUgcGFja2FnZSBkZXNjcmlwdGlvbiBpcyBhIHNob3J0IGJyaWVmIHN1bW1hcnkgb24gdGhlIGZpcnN0ICIKKyJsaW5lIChhZnRlciB0aGUgXCJEZXNjcmlwdGlvblwiIGZpZWxkKS4gVGhlIGZvbGxvd2luZyBsaW5lcyBzaG91bGQgYmUgdXNlZCAiCisiYXMgYSBsb25nZXIsIG1vcmUgZGV0YWlsZWQgZGVzY3JpcHRpb24uIEVhY2ggbGluZSBvZiB0aGUgbG9uZyBkZXNjcmlwdGlvbiAiCisibXVzdCBiZSBwcmVjZWRlZCBieSBhIHNwYWNlLCBhbmQgYmxhbmsgbGluZXMgaW4gdGhlIGxvbmcgZGVzY3JpcHRpb24gbXVzdCAiCisiY29udGFpbiBhIHNpbmdsZSAnLicgZm9sbG93aW5nIHRoZSBwcmVjZWRpbmcgc3BhY2UuIgorbXNnc3RyICIiCisiQSBjc29tYWdvayBsZcOtcsOhc8OhbmFrIGZvcm3DoXR1bWEgZWd5IHLDtnZpZCDDtnNzemVmb2dsYWzDsyBheiAxLiBzb3JiYW4gKGEgIgorIlwiRGVzY3JpcHRpb25cIiB0YWcgdXTDoW4pLiBBIGvDtnZldGtlesWRIHNvcm9rIGhvc3N6YWJiIGxlw61yw6FzcmEgaGFzem7DoWxoYXTDs2suICIKKyJBIGhvc3N6w7ogbGXDrXLDoXMgbWluZGVuIHNvcmEgc3rDs2vDtnp6ZWwga2VsbCBrZXpkxZFkasO2biwgw6lzIGEgaG9zc3rDuiBsZcOtcsOhcyAiCisiw7xyZXMgc29yYWkgZWd5ICcuJy10IGtlbGwgdGFydGFsbWF6emFuYWsgYSB2ZXpldMWRIHN6w7Nrw7Z6IHV0w6FuLiIKKworIy4gdHlwZTogU0gKKyM6IGRlYi1jb250cm9sLjU6NTIKKyMsIG5vLXdyYXAKK21zZ2lkICJPUFRJT05BTCBGSUVMRFMiCittc2dzdHIgIkxFSEVUU8OJR0VTIE1FWsWQSyIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6NTMgZGViLXNyYy1jb250cm9sLjU6OTAKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxTZWN0aW9uOj4gRTxsdD5zZWN0aW9uRTxndD4iCittc2dpZCAiQjxTZWN0aW9uOj5JPCBzZWN0aW9uPiIKK21zZ3N0ciAiQjxTZWN0aW9uOj4gRTxsdD5zemFrYXN6RTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6NTgKK21zZ2lkICIiCisiVGhpcyBpcyBhIGdlbmVyYWwgZmllbGQgdGhhdCBnaXZlcyB0aGUgcGFja2FnZSBhIGNhdGVnb3J5IGJhc2VkIG9uIHRoZSAiCisic29mdHdhcmUgdGhhdCBpdCBpbnN0YWxscy4gU29tZSBjb21tb24gc2VjdGlvbnMgYXJlIGB1dGlscycsIGBuZXQnLCBgbWFpbCcsICIKKyJgdGV4dCcsIGB4MTEnIGV0Yy4iCittc2dzdHIgIiIKKyJFeiBlZ3kgw6FsdGFsw6Fub3MgbWV6xZEsIG1lbHkgYSBjc29tYWdvdCBlZ3kgdMOpbWFrw7ZyaMO2eiAoc3pha2FzemhveikgdMOhcnPDrXRqYSwgIgorInDDqWxkw6F1bCBpbHllbmVraGV6OiBgdXRpbHMnLCBgbmV0JywgYG1haWwnLCBgdGV4dCcsIGB4MTEnIHN0Yi4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjU4IGRlYi1zcmMtY29udHJvbC41Ojk2CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8UHJpb3JpdHk6PiBFPGx0PnByaW9yaXR5RTxndD4iCittc2dpZCAiQjxQcmlvcml0eTo+STwgcHJpb3JpdHk+IgorbXNnc3RyICJCPFByaW9yaXR5Oj4gRTxsdD5lbHPFkWJic8OpZ0U8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjYyCittc2dpZCAiIgorIlNldHMgdGhlIGltcG9ydGFuY2Ugb2YgdGhpcyBwYWNrYWdlIGluIHJlbGF0aW9uIHRvIHRoZSBzeXN0ZW0gYXMgYSB3aG9sZS4gICIKKyJDb21tb24gcHJpb3JpdGllcyBhcmUgYHJlcXVpcmVkJywgYHN0YW5kYXJkJywgYG9wdGlvbmFsJywgYGV4dHJhJyBldGMuIgorbXNnc3RyICIiCisiTWVnYWRqYSBlIGNzb21hZyBmb250b3Nzw6Fnw6F0IGEgcmVuZHN6ZXIgZWfDqXN6w6liZW4uIElseWVuZWsgcMOpbGTDoXVsOiAiCisiYHJlcXVpcmVkJywgYHN0YW5kYXJkJywgYG9wdGlvbmFsJywgYGV4dHJhJyAoa8O2dGVsZXrFkSwgc3pva8Ohc29zLi4uKSBzdGIuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjcxIGRlYi1zcmMtY29udHJvbC41OjEwOQorIywgZnV6enkKK21zZ2lkICIiCisiSW4gRGViaWFuLCB0aGUgQjxTZWN0aW9uPiBhbmQgQjxQcmlvcml0eT4gZmllbGRzIGhhdmUgYSBkZWZpbmVkIHNldCBvZiAiCisiYWNjZXB0ZWQgdmFsdWVzIGJhc2VkIG9uIHRoZSBQb2xpY3kgTWFudWFsLiAgQSBsaXN0IG9mIHRoZXNlIHZhbHVlcyBjYW4gYmUgIgorIm9idGFpbmVkIGZyb20gdGhlIGxhdGVzdCB2ZXJzaW9uIG9mIHRoZSBCPGRlYmlhbi1wb2xpY3k+IHBhY2thZ2UuIgorbXNnc3RyICIiCisiQSBEZWJpYW5iYW4gYSBCPFNlY3Rpb24+IMOpcyBCPFByaW9yaXR5PiBtZXrFkWsgYSBQb2xpY3kgTWFudWFsIGxlw61yw6FzYmFuICIKKyJhZG90dCDDqXJ0w6lrZWtldCB2ZWhldGlrIGZlbC4gRXplayBhZGrDoWsgbWVnIGVneSBjc29tYWcgZWxoZWx5ZXprZWTDqXPDqXQgYXogIgorImFyY2jDrXZ1bWJhbi4gRXplayBtZWd0ZWtpbnRoZXTFkWsgYSBCPGRlYmlhbi1wb2xpY3k+IGNzb21hZyBsZWd1dMOzYmJpICIKKyJ2ZXJ6acOzasOhYmFuLiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6NzEgZGViLXNyYy1jb250cm9sLjU6MjE2CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8RXNzZW50aWFsOj4gRTxsdD55ZXN8bm9FPGd0PiIKK21zZ2lkICJCPEVzc2VudGlhbDo+IEI8eWVzPnxCPG5vPiIKK21zZ3N0ciAiQjxFc3NlbnRpYWw6PiBFPGx0Pnllc3xub0U8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41Ojc4CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJUaGlzIGZpZWxkIGlzIHVzdWFsbHkgb25seSBuZWVkZWQgd2hlbiB0aGUgYW5zd2VyIGlzIGB5ZXMnLiBJdCBkZW5vdGVzIGEgIgorI3wgInBhY2thZ2UgdGhhdCBpcyByZXF1aXJlZCBmb3IgcHJvcGVyIG9wZXJhdGlvbiBvZiB0aGUgc3lzdGVtLiBEcGtnIG9yIGFueSAiCisjfCAib3RoZXIgaW5zdGFsbGF0aW9uIHRvb2wgd2lsbCBub3QgYWxsb3cgYW4gQjxFc3NlbnRpYWw+IHBhY2thZ2UgdG8gYmUgIgorI3wgInJlbW92ZWQgKGF0IGxlYXN0IG5vdCB3aXRob3V0IHVzaW5nIG9uZSBvZiB0aGUgZm9yY2Ugb3B0aW9ucykuIgorbXNnaWQgIiIKKyJUaGlzIGZpZWxkIGlzIHVzdWFsbHkgb25seSBuZWVkZWQgd2hlbiB0aGUgYW5zd2VyIGlzIEI8eWVzPi4gSXQgZGVub3RlcyBhICIKKyJwYWNrYWdlIHRoYXQgaXMgcmVxdWlyZWQgZm9yIHByb3BlciBvcGVyYXRpb24gb2YgdGhlIHN5c3RlbS4gRHBrZyBvciBhbnkgIgorIm90aGVyIGluc3RhbGxhdGlvbiB0b29sIHdpbGwgbm90IGFsbG93IGFuIEI8RXNzZW50aWFsPiBwYWNrYWdlIHRvIGJlIHJlbW92ZWQgIgorIihhdCBsZWFzdCBub3Qgd2l0aG91dCB1c2luZyBvbmUgb2YgdGhlIGZvcmNlIG9wdGlvbnMpLiIKK21zZ3N0ciAiIgorIkUgbWV6xZEgw6FsdGFsw6FiYW4gY3NhayBha2tvciBrZWxsLCBoYSB2w6FsYXN6IGB5ZXMnIChpZ2VuKS4gRXogYSBjc29tYWdvdCBhICIKKyJyZW5kc3plciBoZWx5ZXMgbcWxa8O2ZMOpc8OpaGV6IGzDqW55ZWdlc25layDDrXJqYSBsZS4gQSBkcGtnIHZhZ3kgbcOhcyB0ZWxlcMOtdMWRICIKKyJlc3prw7Z6IGFsYXDDqXJ0ZWxtZXpldHRlbiBuZW0gaGFqdGphIHbDqWdyZSBheiBCPEVzc2VudGlhbD4gKGzDqW55ZWdlcykgIgorImNzb21hZ29rIGVsdMOhdm9sw610w6Fzw6F0IChjc2FrIGvDqW55c3plcsOtdMWRIGxlaGV0xZFzw6lnZWtrZWwpLiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6NzgKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxBcmNoaXRlY3R1cmU6PiBFPGx0PmFyY2h8YWxsRTxndD4iCittc2dpZCAiQjxBcmNoaXRlY3R1cmU6PiBJPGFyY2g+fEI8YWxsPiIKK21zZ3N0ciAiQjxBcmNoaXRlY3R1cmU6PiBFPGx0PmFyY2h8YWxsRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6ODYKK21zZ2lkICIiCisiVGhlIGFyY2hpdGVjdHVyZSBzcGVjaWZpZXMgd2hpY2ggdHlwZSBvZiBoYXJkd2FyZSB0aGlzIHBhY2thZ2Ugd2FzIGNvbXBpbGVkICIKKyJmb3IuIENvbW1vbiBhcmNoaXRlY3R1cmVzIGFyZSBgaTM4NicsIGBtNjhrJywgYHNwYXJjJywgYGFscGhhJywgYHBvd2VycGMnICIKKyJldGMuIE5vdGUgdGhhdCB0aGUgQjxhbGw+IG9wdGlvbiBpcyBtZWFudCBmb3IgcGFja2FnZXMgdGhhdCBhcmUgYXJjaGl0ZWN0dXJlICIKKyJpbmRlcGVuZGVudC4gU29tZSBleGFtcGxlcyBvZiB0aGlzIGFyZSBzaGVsbCBhbmQgUGVybCBzY3JpcHRzLCBhbmQgIgorImRvY3VtZW50YXRpb24uIgorbXNnc3RyICIiCisiQXogYXJjaGl0ZWt0w7pyYSBtZWdhZGphLCBob2d5IGUgY3NvbWFnIG1pbHllbiBnw6lwcmUgZm9yZMOtdG90dC4gQSAiCisibGVnZ3lha3JhYmJhayBgaTM4NicsIGBhbWQ2NCcsIGBwb3dlcnBjJywgYG02OGsnLCBgc3BhcmMnLCBgYWxwaGEnLCBzdGIuIEF6ICIKKyJCPGFsbD4gbGVoZXTFkXPDqWcgYXogZXR0xZFsIGbDvGdnZXRsZW4gY3NvbWFnb2thdCBqZWxlbnRpLiBQw6lsZMOhdWwgaWx5ZW5layBhICIKKyJQZXJsIHBhcmFuY3Nmw6FqbG9rIMOpcyBkb2t1bWVudMOhY2nDs2suIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNTo4NiBkZWItc3JjLWNvbnRyb2wuNTo4NQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPE9yaWdpbjo+STwgbmFtZT4iCittc2dzdHIgIkI8U291cmNlOj4gRTxsdD5mb3Jyw6FzIG7DqXZFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNTo4OQorbXNnaWQgIlRoZSBuYW1lIG9mIHRoZSBkaXN0cmlidXRpb24gdGhpcyBwYWNrYWdlIGlzIG9yaWdpbmF0aW5nIGZyb20uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41Ojg5IGRlYi1zcmMtY29udHJvbC41OjY2CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8QnVnczo+STwgdXJsPiIKK21zZ3N0ciAiQjxSZXBsYWNlczo+IEU8bHQ+Y3NvbWFnIGxpc3RhRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6OTQKK21zZ2lkICIiCisiVGhlIEk8dXJsPiBvZiB0aGUgYnVnIHRyYWNraW5nIHN5c3RlbSBmb3IgdGhpcyBwYWNrYWdlLiBUaGUgY3VycmVudCB1c2VkICIKKyJmb3JtYXQgaXMgSTxidHMtdHlwZT5CPDovLz5JPGJ0cy1hZGRyZXNzPiwgbGlrZSBCPGRlYmJ1Z3M6Ly9idWdzLmRlYmlhbi5vcmc+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNTo5NCBkZWItc3JjLWNvbnRyb2wuNTo2MgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPEhvbWVwYWdlOj5JPCB1cmw+IgorbXNnc3RyICJCPFJlcGxhY2VzOj4gRTxsdD5jc29tYWcgbGlzdGFFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNTo5NworbXNnaWQgIlRoZSB1cHN0cmVhbSBwcm9qZWN0IGhvbWUgcGFnZSBJPHVybD4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41Ojk3IGRlYi1zcmMtY29udHJvbC41OjIyMgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPFRhZzo+STwgdGFnLWxpc3Q+IgorbXNnc3RyICJCPFJlcGxhY2VzOj4gRTxsdD5jc29tYWcgbGlzdGFFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToxMDEKK21zZ2lkICIiCisiTGlzdCBvZiB0YWdzIGRlc2NyaWJpbmcgdGhlIHF1YWxpdGllcyBvZiB0aGUgcGFja2FnZS4gVGhlIGRlc2NyaXB0aW9uIGFuZCAiCisibGlzdCBvZiBzdXBwb3J0ZWQgdGFncyBjYW4gYmUgZm91bmQgaW4gdGhlIEI8ZGVidGFncz4gcGFja2FnZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MTAxIGRlYi1zcmMtY29udHJvbC41OjIxOQorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPFNvdXJjZTo+IEU8bHQ+c291cmNlIG5hbWVFPGd0PiIKK21zZ2lkICJCPE11bHRpLUFyY2g6PiBCPHNhbWU+fEI8Zm9yZWlnbj58QjxhbGxvd2VkPiIKK21zZ3N0ciAiQjxTb3VyY2U6PiBFPGx0PmZvcnLDoXMgbsOpdkU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjExMworbXNnaWQgIiIKKyJUaGlzIGZpZWxkIGlzIHVzZWQgdG8gaW5kaWNhdGUgaG93IHRoaXMgcGFja2FnZSBzaG91bGQgYmVoYXZlIG9uIGEgbXVsdGktIgorImFyY2ggaW5zdGFsbGF0aW9ucy4gVGhlIHZhbHVlIEI8c2FtZT4gbWVhbnMgdGhhdCB0aGUgcGFja2FnZSBpcyBjby0iCisiaW5zdGFsbGFibGUgd2l0aCBpdHNlbGYsIGJ1dCBpdCBtdXN0IG5vdCBiZSB1c2VkIHRvIHNhdGlzZnkgdGhlIGRlcGVuZGVuY3kgIgorIm9mIGFueSBwYWNrYWdlIG9mIGEgZGlmZmVyZW50IGFyY2hpdGVjdHVyZSBmcm9tIGl0c2VsZi4gVGhlIHZhbHVlIEI8Zm9yZWlnbj4gIgorIm1lYW5zIHRoYXQgdGhlIHBhY2thZ2UgaXMgbm90IGNvLWluc3RhbGxhYmxlIHdpdGggaXRzZWxmLCBidXQgc2hvdWxkIGJlICIKKyJhbGxvd2VkIHRvIHNhdGlzZnkgdGhlIGRlcGVuZGVuY3kgb2YgYSBwYWNrYWdlIG9mIGEgZGlmZmVyZW50IGFyY2ggZnJvbSAiCisiaXRzZWxmLiBUaGUgdmFsdWUgQjxhbGxvd2VkPiBhbGxvd3MgcmV2ZXJzZS1kZXBlbmRlbmNpZXMgdG8gaW5kaWNhdGUgaW4gIgorInRoZWlyIERlcGVuZHMgZmllbGQgdGhhdCB0aGV5IG5lZWQgYSBwYWNrYWdlIGZyb20gYSBmb3JlaWduIGFyY2hpdGVjdHVyZSwgIgorImJ1dCBoYXMgbm8gZWZmZWN0IG90aGVyd2lzZS4gVGhpcyBmaWVsZCBzaG91bGQgbm90IGJlIHByZXNlbnQgaW4gcGFja2FnZXMgIgorIndpdGggdGhlIEI8QXJjaGl0ZWN0dXJlOiBhbGw+IGZpZWxkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNToxMTMKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxTb3VyY2U6PiBFPGx0PnNvdXJjZSBuYW1lRTxndD4iCittc2dpZCAiQjxTb3VyY2U6Pkk8IHNvdXJjZS1uYW1lPiIKK21zZ3N0ciAiQjxTb3VyY2U6PiBFPGx0PmZvcnLDoXMgbsOpdkU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjExNworbXNnaWQgIiIKKyJUaGUgbmFtZSBvZiB0aGUgc291cmNlIHBhY2thZ2UgdGhhdCB0aGlzIGJpbmFyeSBwYWNrYWdlIGNhbWUgZnJvbSwgaWYgIgorImRpZmZlcmVudCB0aGFuIHRoZSBuYW1lIG9mIHRoZSBwYWNrYWdlIGl0c2VsZi4iCittc2dzdHIgIiIKKyJBbm5hayBhIGZvcnLDoXMgY3NvbWFnbmFrIGEgbmV2ZSwgYWhvbm5hbiBlIGJpbsOhcmlzIGlzIHN6w6FybWF6aWssIGhhIGVsdMOpci4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjExOCBkZWItc3JjLWNvbnRyb2wuNToyMDIKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxBcmNoaXRlY3R1cmU6PiBFPGx0PmFyY2h8YWxsRTxndD4iCittc2dpZCAiQjxTdWJhcmNoaXRlY3R1cmU6Pkk8IHZhbHVlPiIKK21zZ3N0ciAiQjxBcmNoaXRlY3R1cmU6PiBFPGx0PmFyY2h8YWxsRTxndD4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjEyMSBkZWItc3JjLWNvbnRyb2wuNToyMDUKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxLZXJuZWwtVmVyc2lvbjo+STwgdmFsdWU+IgorbXNnc3RyICJCPFZlcnNpb246PiBFPGx0PnZlcnppw7NFPGd0PiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MTI0IGRlYi1zcmMtY29udHJvbC41OjIwOAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPEluc3RhbGxlci1NZW51LUl0ZW06Pkk8IHZhbHVlPiIKK21zZ3N0ciAiQjxSZXBsYWNlczo+IEU8bHQ+Y3NvbWFnIGxpc3RhRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MTMxIGRlYi1zcmMtY29udHJvbC41OjIxNQorbXNnaWQgIiIKKyJUaGVzZSBmaWVsZHMgYXJlIHVzZWQgYnkgdGhlIGRlYmlhbi1pbnN0YWxsZXIgYW5kIGFyZSB1c3VhbGx5IG5vdCBuZWVkZWQuICAiCisiU2VlIC91c3Ivc2hhcmUvZG9jL2RlYmlhbi1pbnN0YWxsZXIvZGV2ZWwvbW9kdWxlcy50eHQgZnJvbSB0aGUgQjxkZWJpYW4tIgorImluc3RhbGxlcj4gcGFja2FnZSBmb3IgbW9yZSBkZXRhaWxzIGFib3V0IHRoZW0uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjEzMiBkZWItc3JjLWNvbnRyb2wuNToyMzMKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxEZXBlbmRzOj4gRTxsdD5wYWNrYWdlIGxpc3RFPGd0PiIKK21zZ2lkICJCPERlcGVuZHM6Pkk8IHBhY2thZ2UtbGlzdD4iCittc2dzdHIgIkI8RGVwZW5kczo+IEU8bHQ+Y3NvbWFnIGxpc3RhRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MTQzCisjLCBmdXp6eQorbXNnaWQgIiIKKyJMaXN0IG9mIHBhY2thZ2VzIHRoYXQgYXJlIHJlcXVpcmVkIGZvciB0aGlzIHBhY2thZ2UgdG8gcHJvdmlkZSBhIG5vbi10cml2aWFsICIKKyJhbW91bnQgb2YgZnVuY3Rpb25hbGl0eS4gVGhlIHBhY2thZ2UgbWFpbnRlbmFuY2Ugc29mdHdhcmUgd2lsbCBub3QgYWxsb3cgYSAiCisicGFja2FnZSB0byBiZSBpbnN0YWxsZWQgaWYgdGhlIHBhY2thZ2VzIGxpc3RlZCBpbiBpdHMgQjxEZXBlbmRzPiBmaWVsZCAiCisiYXJlbid0IGluc3RhbGxlZCAoYXQgbGVhc3Qgbm90IHdpdGhvdXQgdXNpbmcgdGhlIGZvcmNlIG9wdGlvbnMpLiAgSW4gYW4gIgorImluc3RhbGxhdGlvbiwgdGhlIHBvc3RpbnN0IHNjcmlwdHMgb2YgcGFja2FnZXMgbGlzdGVkIGluIERlcGVuZHM6IGZpZWxkcyBhcmUgIgorInJ1biBiZWZvcmUgdGhvc2Ugb2YgdGhlIHBhY2thZ2VzIHdoaWNoIGRlcGVuZCBvbiB0aGVtLiBPbiB0aGUgb3Bwb3NpdGUsIGluIGEgIgorInJlbW92YWwsIHRoZSBwcmVybSBzY3JpcHQgb2YgYSBwYWNrYWdlIGlzIHJ1biBiZWZvcmUgdGhvc2Ugb2YgdGhlIHBhY2thZ2VzICIKKyJsaXN0ZWQgaW4gaXRzIERlcGVuZHM6IGZpZWxkLiIKK21zZ3N0ciAiIgorIkF6b24gY3NvbWFnb2sgbGlzdMOhamEsIG1lbHllayBzesO8a3PDqWdlc2VrIGVneSBjc29tYWcgcmVuZGVzIG3FsWvDtmTDqXPDqWhlei4gQSAiCisiY3NvbWFnLWthcmJhbnRhcnTDsyBzem9mdHZlciBuZW0gZW5nZWRpIGEgdGVsZXDDrXTDqXN0IGEgQjxEZXBlbmRzPiBtZXrFkWJlbiAiCisibWVnYWRvdHQgY3NvbWFnb2sgdGVsZXDDrXTDqXNlIG7DqWxrw7xsIChjc2FrIGvDqW55c3plcsOtdMWRIGxlaGV0xZFzw6lnZWtrZWwpLCDDqXMgIgorImxlZnV0dGF0amEgYSBwb3N0aW5zdCDDqXMgcHJlcm0gcGFyYW5jc2bDoWpsb2thdC4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjE0MyBkZWItc3JjLWNvbnRyb2wuNToyMzYKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxQcmUtRGVwZW5kczo+IEU8bHQ+cGFja2FnZSBsaXN0RTxndD4iCittc2dpZCAiQjxQcmUtRGVwZW5kczo+STwgcGFja2FnZS1saXN0PiIKK21zZ3N0ciAiQjxQcmUtRGVwZW5kczo+IEU8bHQ+Y3NvbWFnIGxpc3RhRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MTUwCittc2dpZCAiIgorIkxpc3Qgb2YgcGFja2FnZXMgdGhhdCBtdXN0IGJlIGluc3RhbGxlZCBCPGFuZD4gY29uZmlndXJlZCBiZWZvcmUgdGhpcyBvbmUgIgorImNhbiBiZSBpbnN0YWxsZWQuIFRoaXMgaXMgdXN1YWxseSB1c2VkIGluIHRoZSBjYXNlIHdoZXJlIHRoaXMgcGFja2FnZSAiCisicmVxdWlyZXMgYW5vdGhlciBwYWNrYWdlIGZvciBydW5uaW5nIGl0cyBwcmVpbnN0IHNjcmlwdC4iCittc2dzdHIgIiIKKyJBem9uIGNzb21hZ29rIGxpc3TDoWphLCBtZWx5ZWsgdGVsZXDDrXTDqXNlIEI8w6lzPiBrb25maWd1csOhbMOhc2Ega8O2dGVsZXrFkSBlbm5layAiCisidGVsZXDDrXTDqXNlIGVsxZF0dC4gw4FsdGFsw6FiYW4gYWtrb3IgaGFzem7DoWxhdG9zLCBoYSBlIGNzb21hZyBhIHRlbGVww610w6lzICIKKyJlbMWRdHRpIChwcmVpbnN0KSBwYXJhbmNzZsOhamwgbGVmdXR0YXTDoXPDoWhveiBlZ3kgbcOhc2lrIGNzb21hZ290IGlnw6lueWVsICIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MTUwIGRlYi1zcmMtY29udHJvbC41OjIzOQorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPFJlY29tbWVuZHM6PiBFPGx0PnBhY2thZ2UgbGlzdEU8Z3Q+IgorbXNnaWQgIkI8UmVjb21tZW5kczo+STwgcGFja2FnZS1saXN0PiIKK21zZ3N0ciAiQjxSZWNvbW1lbmRzOj4gRTxsdD5jc29tYWcgbGlzdGFFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToxNTcKK21zZ2lkICIiCisiTGlzdHMgcGFja2FnZXMgdGhhdCB3b3VsZCBiZSBmb3VuZCB0b2dldGhlciB3aXRoIHRoaXMgb25lIGluIGFsbCBidXQgdW51c3VhbCAiCisiaW5zdGFsbGF0aW9ucy4gVGhlIHBhY2thZ2UgbWFpbnRlbmFuY2Ugc29mdHdhcmUgd2lsbCB3YXJuIHRoZSB1c2VyIGlmIHRoZXkgIgorImluc3RhbGwgYSBwYWNrYWdlIHdpdGhvdXQgdGhvc2UgbGlzdGVkIGluIGl0cyBCPFJlY29tbWVuZHM+IGZpZWxkLiIKK21zZ3N0ciAiIgorIkF6b24gY3NvbWFnb2sgbGlzdMOhamEsIG1lbHlla2V0IGUgY3NvbWFnZ2FsIG1pbmRpZyBlZ3nDvHR0IHN6b2vDoXMgaGFzem7DoWxuaSwgIgorImtpdsOpdmUgZWd5ZXMsIHN6b2vDoXNvc3TDs2wgZWx0w6lyxZEgdGVsZXDDrXTDqXNla2V0LiBBIGNzb21hZy1rYXJiYW50YXJ0w7MgIgorInN6b2Z0dmVyIGZpZ3llbG1lenRldGkgYSBmZWxoYXN6bsOhbMOzdCwgaGEgYSBCPFJlY29tbWVuZHM+IG1lesWRYmVuIGzDqXbFkSAiCisiY3NvbWFnb2sga2lqZWzDtmzDqXNlIG7DqWxrw7xsIHRlbGVww610LiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MTU3IGRlYi1zcmMtY29udHJvbC41OjI0MgorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPFN1Z2dlc3RzOj4gRTxsdD5wYWNrYWdlIGxpc3RFPGd0PiIKK21zZ2lkICJCPFN1Z2dlc3RzOj5JPCBwYWNrYWdlLWxpc3Q+IgorbXNnc3RyICJCPFN1Z2dlc3RzOj4gRTxsdD5jc29tYWcgbGlzdGFFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToxNjIKK21zZ2lkICIiCisiTGlzdHMgcGFja2FnZXMgdGhhdCBhcmUgcmVsYXRlZCB0byB0aGlzIG9uZSBhbmQgY2FuIHBlcmhhcHMgZW5oYW5jZSBpdHMgIgorInVzZWZ1bG5lc3MsIGJ1dCB3aXRob3V0IHdoaWNoIGluc3RhbGxpbmcgdGhpcyBwYWNrYWdlIGlzIHBlcmZlY3RseSAiCisicmVhc29uYWJsZS4iCittc2dzdHIgIiIKKyJBem9uIGNzb21hZ29rIGxpc3TDoWphLCBtZWx5ZWsgZW5uZWsga8OpcGVzc8OpZ2VpdCBuw7Z2ZWxoZXRpaywgZGUgbWVseWVrICIKKyJtZWxsxZF6aGV0xZFrLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToxNzQKK21zZ2lkICIiCisiVGhlIHN5bnRheCBvZiBCPERlcGVuZHM+LCBCPFByZS1EZXBlbmRzPiwgQjxSZWNvbW1lbmRzPiBhbmQgQjxTdWdnZXN0cz4gIgorImZpZWxkcyBpcyBhIGxpc3Qgb2YgZ3JvdXBzIG9mIGFsdGVybmF0aXZlIHBhY2thZ2VzLiBFYWNoIGdyb3VwIGlzIGEgbGlzdCBvZiAiCisicGFja2FnZXMgc2VwYXJhdGVkIGJ5IHZlcnRpY2FsIGJhciAob3IgYHBpcGUnKSBzeW1ib2xzLCBgfCcuIFRoZSBncm91cHMgYXJlICIKKyJzZXBhcmF0ZWQgYnkgY29tbWFzLiBDb21tYXMgYXJlIHRvIGJlIHJlYWQgYXMgYEFORCcsIGFuZCBwaXBlcyBhcyBgT1InLCB3aXRoICIKKyJwaXBlcyBiaW5kaW5nIG1vcmUgdGlnaHRseS4gRWFjaCBwYWNrYWdlIG5hbWUgaXMgb3B0aW9uYWxseSBmb2xsb3dlZCBieSBhICIKKyJ2ZXJzaW9uIG51bWJlciBzcGVjaWZpY2F0aW9uIGluIHBhcmVudGhlc2VzLiIKK21zZ3N0ciAiIgorIkEgQjxEZXBlbmRzPiwgQjxQcmUtRGVwZW5kcz4sIEI8UmVjb21tZW5kcz4gw6lzIEI8U3VnZ2VzdHM+IG1lesWRayBzemludGF4aXNhICIKKyJtw6FzIGNzb21hZ29rIGNzb3BvcnRqYWluYWsgbGlzdMOhamEuIE1pbmRlbiBjc29wb3J0IGVneSBmw7xnZ8WRbGVnZXMgdm9uYWxha2thbCAiCisiKMO6bi4gYHBpcGEnLCBgfCcgamVsZWtrZWwpIGVsdsOhbGFzenRvdHQgY3NvbWFnbGlzdGEuIEEgY3NvcG9ydG9rIHZlc3N6xZFra2VsICIKKyJ2YW5uYWsgZWx2w6FsYXN6dHZhLiBBIHZlc3N6xZEgamVsZW50w6lzZSBgw4lTJywgYSBwaXDDocOpIGBWQUdZJywgYWvDoXIgbmFneW9iYiAiCisia8O2dMOpc2Vra2VsLiBNaW5kZW4gY3NvbWFnbmV2ZXQgYSB2ZXJ6acOzc3rDoW0gbWVnYWTDoXNhIGvDtnZldGhldCB6w6Fyw7NqZWxiZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjE4MAorbXNnaWQgIiIKKyJBIHZlcnNpb24gbnVtYmVyIG1heSBzdGFydCB3aXRoIGEgYEU8Z3Q+RTxndD4nLCBpbiB3aGljaCBjYXNlIGFueSBsYXRlciAiCisidmVyc2lvbiB3aWxsIG1hdGNoLCBhbmQgbWF5IHNwZWNpZnkgb3Igb21pdCB0aGUgRGViaWFuIHBhY2thZ2luZyByZXZpc2lvbiAiCisiKHNlcGFyYXRlZCBieSBhIGh5cGhlbikuIEFjY2VwdGVkIHZlcnNpb24gcmVsYXRpb25zaGlwcyBhcmUgXCJFPGd0PkU8Z3Q+XCIgIgorImZvciBncmVhdGVyIHRoYW4sIFwiRTxsdD5FPGx0PlwiIGZvciBsZXNzIHRoYW4sIFwiRTxndD49XCIgZm9yIGdyZWF0ZXIgdGhhbiAiCisib3IgZXF1YWwgdG8sIFwiRTxsdD49XCIgZm9yIGxlc3MgdGhhbiBvciBlcXVhbCB0bywgYW5kIFwiPVwiIGZvciBlcXVhbCB0by4iCittc2dzdHIgIiIKKyJBIHZlcnppw7NzesOhbSBrZXpkxZFkaGV0IMOtZ3k6IGBFPGd0PkU8Z3Q+JywgZWtrb3IgYsOhcm1lbHkga8Opc8WRYmJpIHZlcnppw7MgIgorIm1lZ2ZlbGVsLCDDqXMgbWVnYWRoYXQgRGViaWFuIGNzb21hZyByZXbDrXppw7N0IChrw7Z0xZFqZWxsZWwgZWx2w6FsYXN6dHZhKS4gIgorIkVsZm9nYWRvdHQgdmVyemnDs3Zpc3pvbnlvazogXCJFPGd0PkU8Z3Q+XCIgbmFneW9iYiBtaW50LCBcIkU8bHQ+RTxsdD5cIiAiCisia2lzZWJiIG1pbnQsIFwiRTxndD49XCIgbmFneW9iYiB2YWd5IGVneWVubMWRLCBcIkU8bHQ+PVwiIGtpc2ViYiB2YWd5ICIKKyJlZ3llbmzFkSwgw6lzIFwiPVwiIGVneWVubMWRLiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MTgwIGRlYi1zcmMtY29udHJvbC41OjI0NQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPEJyZWFrczo+STwgcGFja2FnZS1saXN0PiIKK21zZ3N0ciAiQjxSZXBsYWNlczo+IEU8bHQ+Y3NvbWFnIGxpc3RhRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MTg4CisjLCBmdXp6eQorbXNnaWQgIiIKKyJMaXN0cyBwYWNrYWdlcyB0aGF0IHRoaXMgb25lIGJyZWFrcywgZm9yIGV4YW1wbGUgYnkgZXhwb3NpbmcgYnVncyB3aGVuIHRoZSAiCisibmFtZWQgcGFja2FnZXMgcmVseSBvbiB0aGlzIG9uZS4gVGhlIHBhY2thZ2UgbWFpbnRlbmFuY2Ugc29mdHdhcmUgd2lsbCBub3QgIgorImFsbG93IGJyb2tlbiBwYWNrYWdlcyB0byBiZSBjb25maWd1cmVkOyBnZW5lcmFsbHkgdGhlIHJlc29sdXRpb24gaXMgdG8gIgorInVwZ3JhZGUgdGhlIHBhY2thZ2VzIG5hbWVkIGluIGEgQjxCcmVha3M+IGZpZWxkLiIKK21zZ3N0ciAiIgorIsOcdGvDtnrFkSBjc29tYWdvaywgcMOpbGTDoXVsIGF6b25vcyBuZXbFsSBmw6FqbG9rYXQgdGFydGFsbWF6w7NrLiBBICIKKyJjc29tYWdrYXJiYW50YXJ0w7Mgc3pvZnR2ZXIgbmVtIGVuZ2VkaSBlemVrIGVneWlkZWrFsSB0ZWxlcMOtdMOpc8OpdC4gMiDDvHRrw7Z6xZEgIgorImNzb21hZyAxLTEgQjxDb25mbGljdHM+IG1lesWRYmVuIGhpdmF0a296aWsgZWd5bcOhc3JhLiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MTg4IGRlYi1zcmMtY29udHJvbC41OjI1NAorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPENvbmZsaWN0czo+IEU8bHQ+cGFja2FnZSBsaXN0RTxndD4iCittc2dpZCAiQjxDb25mbGljdHM6Pkk8IHBhY2thZ2UtbGlzdD4iCittc2dzdHIgIkI8Q29uZmxpY3RzOj4gRTxsdD5jc29tYWcgbGlzdGFFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToxOTYKK21zZ2lkICIiCisiTGlzdHMgcGFja2FnZXMgdGhhdCBjb25mbGljdCB3aXRoIHRoaXMgb25lLCBmb3IgZXhhbXBsZSBieSBjb250YWluaW5nIGZpbGVzICIKKyJ3aXRoIHRoZSBzYW1lIG5hbWVzLiBUaGUgcGFja2FnZSBtYWludGVuYW5jZSBzb2Z0d2FyZSB3aWxsIG5vdCBhbGxvdyAiCisiY29uZmxpY3RpbmcgcGFja2FnZXMgdG8gYmUgaW5zdGFsbGVkIGF0IHRoZSBzYW1lIHRpbWUuIFR3byBjb25mbGljdGluZyAiCisicGFja2FnZXMgc2hvdWxkIGVhY2ggaW5jbHVkZSBhIEI8Q29uZmxpY3RzPiBsaW5lIG1lbnRpb25pbmcgdGhlIG90aGVyLiIKK21zZ3N0ciAiIgorIsOcdGvDtnrFkSBjc29tYWdvaywgcMOpbGTDoXVsIGF6b25vcyBuZXbFsSBmw6FqbG9rYXQgdGFydGFsbWF6w7NrLiBBICIKKyJjc29tYWdrYXJiYW50YXJ0w7Mgc3pvZnR2ZXIgbmVtIGVuZ2VkaSBlemVrIGVneWlkZWrFsSB0ZWxlcMOtdMOpc8OpdC4gMiDDvHRrw7Z6xZEgIgorImNzb21hZyAxLTEgQjxDb25mbGljdHM+IG1lesWRYmVuIGhpdmF0a296aWsgZWd5bcOhc3JhLiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MTk2IGRlYi1zcmMtY29udHJvbC41OjI1MQorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPFJlcGxhY2VzOj4gRTxsdD5wYWNrYWdlIGxpc3RFPGd0PiIKK21zZ2lkICJCPFJlcGxhY2VzOj5JPCBwYWNrYWdlLWxpc3Q+IgorbXNnc3RyICJCPFJlcGxhY2VzOj4gRTxsdD5jc29tYWcgbGlzdGFFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToyMDQKK21zZ2lkICIiCisiTGlzdCBvZiBwYWNrYWdlcyBmaWxlcyBmcm9tIHdoaWNoIHRoaXMgb25lIHJlcGxhY2VzLiBUaGlzIGlzIHVzZWQgZm9yICIKKyJhbGxvd2luZyB0aGlzIHBhY2thZ2UgdG8gb3ZlcndyaXRlIHRoZSBmaWxlcyBvZiBhbm90aGVyIHBhY2thZ2UgYW5kIGlzICIKKyJ1c3VhbGx5IHVzZWQgd2l0aCB0aGUgQjxDb25mbGljdHM+IGZpZWxkIHRvIGZvcmNlIHJlbW92YWwgb2YgdGhlIG90aGVyICIKKyJwYWNrYWdlLCBpZiB0aGlzIG9uZSBhbHNvIGhhcyB0aGUgc2FtZSBmaWxlcyBhcyB0aGUgY29uZmxpY3RlZCBwYWNrYWdlLiIKK21zZ3N0ciAiIgorIkF6IGUgY3NvbWFnIMOhbHRhbCBsZWNzZXLDqWx0IGNzb21hZyBmw6FqbG9rIGxpc3TDoWphLiAgRXogbGVoZXTFkXbDqSB0ZXN6aSBlICIKKyJjc29tYWduYWsgbcOhcyBjc29tYWcgZsOhamxqYWluYWsgZmVsw7xsw61yw6Fzw6F0IMOpcyDDoWx0YWzDoWJhbiBhIEI8Q29uZmxpY3RzPiAiCisibWV6xZF2ZWwgaGFzem7DoWxhdG9zIGEgbcOhc2lrIGNzb21hZyB0w7ZybMOpc8OpcmUsIGhhIGV6IGF6b25vcyBuZXbFsSBmw6FqbHQgIgorInRhcnRhbG1heiwgbWludCBheiDDvHRrw7Z6xZEgY3NvbWFnLiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MjA0IGRlYi1zcmMtY29udHJvbC41OjI1NworIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPFByb3ZpZGVzOj4gRTxsdD5wYWNrYWdlIGxpc3RFPGd0PiIKK21zZ2lkICJCPFByb3ZpZGVzOj5JPCBwYWNrYWdlLWxpc3Q+IgorbXNnc3RyICJCPFByb3ZpZGVzOj4gRTxsdD5jc29tYWcgbGlzdGFFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToyMTQKK21zZ2lkICIiCisiVGhpcyBpcyBhIGxpc3Qgb2YgdmlydHVhbCBwYWNrYWdlcyB0aGF0IHRoaXMgb25lIHByb3ZpZGVzLiBVc3VhbGx5IHRoaXMgaXMgIgorInVzZWQgaW4gdGhlIGNhc2Ugb2Ygc2V2ZXJhbCBwYWNrYWdlcyBhbGwgcHJvdmlkaW5nIHRoZSBzYW1lIHNlcnZpY2UuICBGb3IgIgorImV4YW1wbGUsIHNlbmRtYWlsIGFuZCBleGltIGNhbiBzZXJ2ZSBhcyBhIG1haWwgc2VydmVyLCBzbyB0aGV5IHByb3ZpZGUgYSAiCisiY29tbW9uIHBhY2thZ2UgKGBtYWlsLXRyYW5zcG9ydC1hZ2VudCcpIG9uIHdoaWNoIG90aGVyIHBhY2thZ2VzIGNhbiBkZXBlbmQuICIKKyJUaGlzIHdpbGwgYWxsb3cgc2VuZG1haWwgb3IgZXhpbSB0byBzZXJ2ZSBhcyBhIHZhbGlkIG9wdGlvbiB0byBzYXRpc2Z5IHRoZSAiCisiZGVwZW5kZW5jeS4gVGhpcyBwcmV2ZW50cyB0aGUgcGFja2FnZXMgdGhhdCBkZXBlbmQgb24gYSBtYWlsIHNlcnZlciBmcm9tICIKKyJoYXZpbmcgdG8ga25vdyB0aGUgcGFja2FnZSBuYW1lcyBmb3IgYWxsIG9mIHRoZW0sIGFuZCB1c2luZyBgfCcgdG8gc2VwYXJhdGUgIgorInRoZSBsaXN0LiIKK21zZ3N0ciAiIgorIkV6IGVneSBlIGNzb21hZyDDoWx0YWwgYWRvdHQgdmlydHXDoWxpcyBjc29tYWdsaXN0YS4gw4FsdGFsw6FiYW4gZWx0w6lyxZEgY3NvbWFnb2sgIgorIsOhbHRhbCBuecO6anRvdHQgaGFzb25sw7Mgc3pvbGfDoWx0YXTDoXMgZXNldMOpbiBoYXN6bsOhbHQuIFDDqWxkw6F1bCBhIHNlbmRtYWlsIMOpcyAiCisiZXhpbSBsZXZlbGV6xZEta2lzem9sZ8OhbMOzaywgw61neSBlZ3kgw6FsdGFsw6Fub3MgY3NvbWFnb3QgYWRuYWsgKGBtYWlsLXRyYW5zcG9ydC0iCisiYWdlbnQnKSwgbWVseXTFkWwgbcOhcyBjc29tYWdvayBmw7xnZ2hldG5lay4gw41neSBhIHNlbmRtYWlsIHZhZ3kgZXhpbSDDqXJ2w6lueWVzICIKKyJmw7xnZ8WRc8OpZ2vDqW50IHN6b2xnw6FsaGF0LiDDjWd5IGEgY3NvbWFnb2tuYWsgbmVtIGtlbGwgaXNtZXJuacO8ayBheiDDtnNzemVzICIKKyJsZXZlbGV6xZEta2lzem9sZ8OhbMOzdCBlZ3kgYHwnLWtrYWwgZWx2w6FsYXN6dG90dCBsaXN0w6FiYW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjIzMworIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiVGhlIHN5bnRheCBvZiBCPENvbmZsaWN0cz4sIEI8UmVwbGFjZXM+IGFuZCBCPFByb3ZpZGVzPiBpcyBhIGxpc3Qgb2YgIgorI3wgInBhY2thZ2UgbmFtZXMsIHNlcGFyYXRlZCBieSBjb21tYXMgKGFuZCBvcHRpb25hbCB3aGl0ZXNwYWNlKS4gIEluIHRoZSAiCisjfCAiQjxDb25mbGljdHM+IGZpZWxkLCB0aGUgY29tbWEgc2hvdWxkIGJlIHJlYWQgYXMgYE9SJy4gQW4gb3B0aW9uYWwgdmVyc2lvbiAiCisjfCAiY2FuIGFsc28gYmUgZ2l2ZW4gd2l0aCB0aGUgc2FtZSBzeW50YXggYXMgYWJvdmUgZm9yIHRoZSBCPENvbmZsaWN0cz4gYW5kICIKKyN8ICJCPFJlcGxhY2VzPiBmaWVsZHMuIgorbXNnaWQgIiIKKyJUaGUgc3ludGF4IG9mIEI8QnJlYWtzPiwgQjxDb25mbGljdHM+LCBCPFJlcGxhY2VzPiBhbmQgQjxQcm92aWRlcz4gaXMgYSBsaXN0ICIKKyJvZiBwYWNrYWdlIG5hbWVzLCBzZXBhcmF0ZWQgYnkgY29tbWFzIChhbmQgb3B0aW9uYWwgd2hpdGVzcGFjZSkuICBJbiB0aGUgIgorIkI8QnJlYWtzPiBhbmQgQjxDb25mbGljdHM+IGZpZWxkcywgdGhlIGNvbW1hIHNob3VsZCBiZSByZWFkIGFzIGBPUicuIEFuICIKKyJvcHRpb25hbCB2ZXJzaW9uIGNhbiBhbHNvIGJlIGdpdmVuIHdpdGggdGhlIHNhbWUgc3ludGF4IGFzIGFib3ZlIGZvciB0aGUgIgorIkI8QnJlYWtzPiwgQjxDb25mbGljdHM+IGFuZCBCPFJlcGxhY2VzPiBmaWVsZHMuIgorbXNnc3RyICIiCisiQSBCPENvbmZsaWN0cz4sIEI8UmVwbGFjZXM+IMOpcyBCPFByb3ZpZGVzPiBzemludGF4aXNhIGVneSB2ZXNzesWRa2tlbCAow6lzICIKKyJ0ZXRzesWRbGVnZXMgaGVseWtpdMO2bHTFkWtrZWwpIGVsdsOhbGFzenRvdHQgY3NvbWFnbsOpdiBsaXN0YS4gQSBCPENvbmZsaWN0cz4gIgorIm1lesWRYmVuLCBhIHZlc3N6xZEgYFZBR1knLiBBIHZlcnppw7Mgc3ppbnTDqW4gbWVnYWRoYXTDsyBhIG3DoXIgaXNtZXJ0IG3Ds2Rvbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjIzNCBkZWItc3JjLWNvbnRyb2wuNToyNjAKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxEZXBlbmRzOj4gRTxsdD5wYWNrYWdlIGxpc3RFPGd0PiIKK21zZ2lkICJCPEJ1aWx0LVVzaW5nOj5JPCBwYWNrYWdlLWxpc3Q+IgorbXNnc3RyICJCPERlcGVuZHM6PiBFPGx0PmNzb21hZyBsaXN0YUU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjI0NAorbXNnaWQgIiIKKyJUaGlzIGZpZWxkIGxpc3RzIGV4dHJhIHNvdXJjZSBwYWNrYWdlcyB0aGF0IHdlcmUgdXNlZCBkdXJpbmcgdGhlIGJ1aWxkIG9mICIKKyJ0aGlzIGJpbmFyeSBwYWNrYWdlLiAgVGhpcyBpcyBhbiBpbmRpY2F0aW9uIHRvIHRoZSBhcmNoaXZlIG1haW50ZW5hbmNlICIKKyJzb2Z0d2FyZSB0aGF0IHRoZXNlIGV4dHJhIHNvdXJjZSBwYWNrYWdlcyBtdXN0IGJlIGtlcHQgd2hpbHN0IHRoaXMgYmluYXJ5ICIKKyJwYWNrYWdlIGlzIG1haW50YWluZWQuICBUaGlzIGZpZWxkIG11c3QgYmUgYSBsaXN0IG9mIHNvdXJjZSBwYWNrYWdlIG5hbWVzICIKKyJ3aXRoIHN0cmljdCAoPSkgIHZlcnNpb24gcmVsYXRpb25zaGlwcy4gIE5vdGUgdGhhdCB0aGUgYXJjaGl2ZSBtYWludGVuYW5jZSAiCisic29mdHdhcmUgaXMgbGlrZWx5IHRvIHJlZnVzZSB0byBhY2NlcHQgYW4gdXBsb2FkIHdoaWNoIGRlY2xhcmVzIGEgQjxCdWlsdC0iCisiVXNpbmc+IHJlbGF0aW9uc2hpcCB3aGljaCBjYW5ub3QgYmUgc2F0aXNmaWVkIHdpdGhpbiB0aGUgYXJjaGl2ZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRlYi1jb250cm9sLjU6MjQ1IGRlYi1zcmMtY29udHJvbC41OjI4OCBzdGFydC1zdG9wLWRhZW1vbi44OjMwMgorIywgbm8td3JhcAorbXNnaWQgIkVYQU1QTEUiCittc2dzdHIgIlDDiUxEQSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToyNjgKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiIgorIiMgQ29tbWVudFxuIgorIlBhY2thZ2U6IGdyZXBcbiIKKyJFc3NlbnRpYWw6IHllc1xuIgorIlByaW9yaXR5OiByZXF1aXJlZFxuIgorIlNlY3Rpb246IGJhc2VcbiIKKyJNYWludGFpbmVyOiBXaWNoZXJ0IEFra2VybWFuIEU8bHQ+d2Fra2VybWFAZGViaWFuLm9yZ0U8Z3Q+XG4iCisiQXJjaGl0ZWN0dXJlOiBzcGFyY1xuIgorIlZlcnNpb246IDIuNC0xXG4iCisiUHJlLURlcGVuZHM6IGxpYmM2IChFPGd0Pj0gMi4wLjEwNSlcbiIKKyJQcm92aWRlczogcmdyZXBcbiIKKyJDb25mbGljdHM6IHJncmVwXG4iCisiRGVzY3JpcHRpb246IEdOVSBncmVwLCBlZ3JlcCBhbmQgZmdyZXAuXG4iCisiIFRoZSBHTlUgZmFtaWx5IG9mIGdyZXAgdXRpbGl0aWVzIG1heSBiZSB0aGUgXCJmYXN0ZXN0IGdyZXAgaW4gdGhlIHdlc3RcIi5cbiIKKyIgR05VIGdyZXAgaXMgYmFzZWQgb24gYSBmYXN0IGxhenktc3RhdGUgZGV0ZXJtaW5pc3RpYyBtYXRjaGVyIChhYm91dFxuIgorIiB0d2ljZSBhcyBmYXN0IGFzIHN0b2NrIFVuaXggZWdyZXApIGh5YnJpZGl6ZWQgd2l0aCBhIEJveWVyLU1vb3JlLUdvc3BlclxuIgorIiBzZWFyY2ggZm9yIGEgZml4ZWQgc3RyaW5nIHRoYXQgZWxpbWluYXRlcyBpbXBvc3NpYmxlIHRleHQgZnJvbSBiZWluZ1xuIgorIiBjb25zaWRlcmVkIGJ5IHRoZSBmdWxsIHJlZ2V4cCBtYXRjaGVyIHdpdGhvdXQgbmVjZXNzYXJpbHkgaGF2aW5nIHRvXG4iCisiIGxvb2sgYXQgZXZlcnkgY2hhcmFjdGVyLiBUaGUgcmVzdWx0IGlzIHR5cGljYWxseSBtYW55IHRpbWVzIGZhc3RlclxuIgorIiB0aGFuIFVuaXggZ3JlcCBvciBlZ3JlcC4gKFJlZ3VsYXIgZXhwcmVzc2lvbnMgY29udGFpbmluZyBiYWNrcmVmZXJlbmNpbmdcbiIKKyIgd2lsbCBydW4gbW9yZSBzbG93bHksIGhvd2V2ZXIpLlxuIgorbXNnc3RyICIiCisiUGFja2FnZTogZ3JlcFxuIgorIkVzc2VudGlhbDogeWVzXG4iCisiUHJpb3JpdHk6IHJlcXVpcmVkXG4iCisiU2VjdGlvbjogYmFzZVxuIgorIk1haW50YWluZXI6IFdpY2hlcnQgQWtrZXJtYW4gRTxsdD53YWtrZXJtYUBkZWJpYW4ub3JnRTxndD5cbiIKKyJBcmNoaXRlY3R1cmU6IHNwYXJjXG4iCisiVmVyc2lvbjogMi40LTFcbiIKKyJQcmUtRGVwZW5kczogbGliYzYgKEU8Z3Q+PSAyLjAuMTA1KVxuIgorIlByb3ZpZGVzOiByZ3JlcFxuIgorIkNvbmZsaWN0czogcmdyZXBcbiIKKyJEZXNjcmlwdGlvbjogR05VIGdyZXAsIGVncmVwIGFuZCBmZ3JlcC5cbiIKKyIgVGhlIEdOVSBmYW1pbHkgb2YgZ3JlcCB1dGlsaXRpZXMgbWF5IGJlIHRoZSBcImZhc3Rlc3QgZ3JlcCBpbiB0aGUgd2VzdFwiLlxuIgorIiBHTlUgZ3JlcCBpcyBiYXNlZCBvbiBhIGZhc3QgbGF6eS1zdGF0ZSBkZXRlcm1pbmlzdGljIG1hdGNoZXIgKGFib3V0XG4iCisiIHR3aWNlIGFzIGZhc3QgYXMgc3RvY2sgVW5peCBlZ3JlcCkgaHlicmlkaXplZCB3aXRoIGEgQm95ZXItTW9vcmUtR29zcGVyXG4iCisiIHNlYXJjaCBmb3IgYSBmaXhlZCBzdHJpbmcgdGhhdCBlbGltaW5hdGVzIGltcG9zc2libGUgdGV4dCBmcm9tIGJlaW5nXG4iCisiIGNvbnNpZGVyZWQgYnkgdGhlIGZ1bGwgcmVnZXhwIG1hdGNoZXIgd2l0aG91dCBuZWNlc3NhcmlseSBoYXZpbmcgdG9cbiIKKyIgbG9vayBhdCBldmVyeSBjaGFyYWN0ZXIuIFRoZSByZXN1bHQgaXMgdHlwaWNhbGx5IG1hbnkgdGltZXMgZmFzdGVyXG4iCisiIHRoYW4gVW5peCBncmVwIG9yIGVncmVwLiAoUmVndWxhciBleHByZXNzaW9ucyBjb250YWluaW5nIGJhY2tyZWZlcmVuY2luZ1xuIgorIiB3aWxsIHJ1biBtb3JlIHNsb3dseSwgaG93ZXZlci4pXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6Mjc2CisjLCBmdXp6eQorbXNnaWQgIiIKKyJCPGRlYj4oNSksIEI8ZGViLXZlcnNpb24+KDUpLCBCPGRlYnRhZ3M+KDEpLCBCPGRwa2c+KDEpLCBCPGRwa2ctZGViPigxKS4iCittc2dzdHIgIkI8ZGViPig1KSwgQjxkcGtnPigxKSwgQjxkcGtnLWRlYj4oMSkuIgorCisjLiB0eXBlOiBUSAorIzogZGViLXNyYy1jb250cm9sLjU6MworIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJkZWItY29udHJvbCIKK21zZ2lkICJkZWItc3JjLWNvbnRyb2wiCittc2dzdHIgImRlYi1jb250cm9sIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNTo2CisjLCBmdXp6eQorI3wgbXNnaWQgImRlYi1jb250cm9sIC0gRGViaWFuIHBhY2thZ2VzJyBtYXN0ZXIgY29udHJvbCBmaWxlIGZvcm1hdCIKK21zZ2lkICJkZWItc3JjLWNvbnRyb2wgLSBEZWJpYW4gc291cmNlIHBhY2thZ2VzJyBtYXN0ZXIgY29udHJvbCBmaWxlIGZvcm1hdCIKK21zZ3N0ciAiZGViLWNvbnRyb2wgLSBEZWJpYW4gY3NvbWFnIGbFkSBrb250cm9sbCBmw6FqbCBmb3Jtw6F0dW0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjI4Cittc2dpZCAiIgorIkVhY2ggRGViaWFuIHNvdXJjZSBwYWNrYWdlIGNvbnRhaW5zIHRoZSBtYXN0ZXIgXCJjb250cm9sXCIgZmlsZSwgd2hpY2ggIgorImNvbnRhaW5zIGF0IGxlYXN0IDIgcGFyYWdyYXBocywgc2VwYXJhdGVkIGJ5IGEgYmxhbmsgbGluZS4gVGhlIGZpcnN0ICIKKyJwYXJhZ3JhcGggbGlzdHMgYWxsIGluZm9ybWF0aW9uIGFib3V0IHRoZSBzb3VyY2UgcGFja2FnZSBpbiBnZW5lcmFsLCB3aGlsZSAiCisiZWFjaCBmb2xsb3dpbmcgcGFyYWdyYXBoIGRlc2NyaWJlcyBleGFjdGx5IG9uZSBiaW5hcnkgcGFja2FnZS4gRWFjaCAiCisicGFyYWdyYXBoIGNvbnNpc3RzIG9mIGF0IGxlYXN0IG9uZSBmaWVsZC4gQSBmaWVsZCBzdGFydHMgd2l0aCBhIGZpZWxkbmFtZSwgIgorInN1Y2ggYXMgQjxQYWNrYWdlPiBvciBCPFNlY3Rpb24+IChjYXNlIGluc2Vuc2l0aXZlKSwgZm9sbG93ZWQgYnkgYSBjb2xvbiwgIgorInRoZSBib2R5IG9mIHRoZSBmaWVsZCBhbmQgYSBuZXdsaW5lLiAgTXVsdGktbGluZSBmaWVsZHMgYXJlIGFsc28gYWxsb3dlZCwgIgorImJ1dCBlYWNoIHN1cHBsZW1lbnRhcnkgbGluZSwgd2l0aG91dCBhIGZpZWxkbmFtZSwgc2hvdWxkIHN0YXJ0IHdpdGggYXQgbGVhc3QgIgorIm9uZSBzcGFjZS4gVGhlIGNvbnRlbnQgb2YgdGhlIG11bHRpLWxpbmUgZmllbGRzIGlzIGdlbmVyYWxseSBqb2luZWQgdG8gYSAiCisic2luZ2xlIGxpbmUgYnkgdGhlIHRvb2xzIChleGNlcHQgaW4gdGhlIGNhc2Ugb2YgdGhlIEI8RGVzY3JpcHRpb24+IGZpZWxkLCAiCisic2VlIGJlbG93KS4gVG8gaW5zZXJ0IGVtcHR5IGxpbmVzIGludG8gYSBtdWx0aS1saW5lIGZpZWxkLCBpbnNlcnQgYSBkb3QgIgorImFmdGVyIHRoZSBzcGFjZS4gTGluZXMgc3RhcnRpbmcgd2l0aCBhIEI8JyMnPiBhcmUgdHJlYXRlZCBhcyBjb21tZW50cy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRlYi1zcmMtY29udHJvbC41OjI5CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIlJFUVVJUkVEIEZJRUxEUyIKK21zZ2lkICJTT1VSQ0UgRklFTERTIgorbXNnc3RyICJLw5ZURUxFWsWQIE1FWsWQSyIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zcmMtY29udHJvbC41OjMwCisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8U291cmNlOj4gRTxsdD5zb3VyY2UgbmFtZUU8Z3Q+IgorbXNnaWQgIkI8U291cmNlOj4gSTxzb3VyY2UtcGFja2FnZS1uYW1lPiAocmVxdWlyZWQpIgorbXNnc3RyICJCPFNvdXJjZTo+IEU8bHQ+Zm9ycsOhcyBuw6l2RTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjM3Cittc2dpZCAiIgorIlRoZSB2YWx1ZSBvZiB0aGlzIGZpZWxkIGlzIHRoZSBuYW1lIG9mIHRoZSBzb3VyY2UgcGFja2FnZSwgYW5kIHNob3VsZCBtYXRjaCAiCisidGhlIG5hbWUgb2YgdGhlIHNvdXJjZSBwYWNrYWdlIGluIHRoZSBkZWJpYW4vY2hhbmdlbG9nIGZpbGUuIEEgcGFja2FnZSBuYW1lICIKKyJtdXN0IGNvbnNpc3Qgb25seSBvZiBsb3dlciBjYXNlIGxldHRlcnMgKGEteiksIGRpZ2l0cyAoMC05KSwgcGx1cyAoKykgYW5kICIKKyJtaW51cyAoLSkgc2lnbnMsIGFuZCBwZXJpb2RzICguKS4gUGFja2FnZSBuYW1lcyBtdXN0IGJlIGF0IGxlYXN0IHR3byAiCisiY2hhcmFjdGVycyBsb25nIGFuZCBtdXN0IHN0YXJ0IHdpdGggYW4gYWxwaGFudW1lcmljIGNoYXJhY3Rlci4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zcmMtY29udHJvbC41OjM4CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8TWFpbnRhaW5lcjo+IEU8bHQ+ZnVsbG5hbWUgZW1haWxFPGd0PiIKK21zZ2lkICJCPE1haW50YWluZXI6PiBJPGZ1bGxuYW1lLWVtYWlsPiAocmVxdWlyZWQpIgorbXNnc3RyICJCPE1haW50YWluZXI6PiBFPGx0PnRlbGplcy5uw6l2IGVtYWlsRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjQzCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJTaG91bGQgYmUgaW4gdGhlIGZvcm1hdCBgSm9lIEJsb2dncyBFPGx0PmpibG9nZ3NAZm9vLmNvbUU8Z3Q+JywgYW5kIGlzICIKKyN8ICJ0eXBpY2FsbHkgdGhlIHBlcnNvbiB3aG8gY3JlYXRlZCB0aGUgcGFja2FnZSwgYXMgb3Bwb3NlZCB0byB0aGUgYXV0aG9yIG9mICIKKyN8ICJ0aGUgc29mdHdhcmUgdGhhdCB3YXMgcGFja2FnZWQuIgorbXNnaWQgIiIKKyJTaG91bGQgYmUgaW4gdGhlIGZvcm1hdCBcIkpvZSBCbG9nZ3MgRTxsdD5qYmxvZ2dzQGZvby5jb21FPGd0PlwiLCBhbmQgIgorInJlZmVyZW5jZXMgdGhlIHBlcnNvbiB3aG8gY3VycmVudGx5IG1haW50YWlucyB0aGUgcGFja2FnZSwgYXMgb3Bwb3NlZCB0byB0aGUgIgorImF1dGhvciBvZiB0aGUgc29mdHdhcmUgb3IgdGhlIG9yaWdpbmFsIHBhY2thZ2VyLiIKK21zZ3N0ciAiIgorIkZvcm3DoWphIGlseWVuIGxlaGV0OiBgSm9lIEJsb2dncyBFPGx0PmpibG9nZ3NAZm9vLmNvbUU8Z3Q+Jywgw6lzIMOhbHRhbMOhYmFuICIKKyJuZW0gYSBzem9mdHZlciBzemVyesWRasOpdCBoYW5lbSBhIGNzb21hZyBrw6lzesOtdMWRasOpdCB0YXJ0YWxtYXp6YS4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3JjLWNvbnRyb2wuNTo0NAorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPE1haW50YWluZXI6PiBFPGx0PmZ1bGxuYW1lIGVtYWlsRTxndD4iCittc2dpZCAiQjxVcGxvYWRlcnM6Pkk8IGZ1bGxuYW1lLWVtYWlsPiIKK21zZ3N0ciAiQjxNYWludGFpbmVyOj4gRTxsdD50ZWxqZXMubsOpdiBlbWFpbEU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNTo0OQorbXNnaWQgIiIKKyJMaXN0cyBhbGwgdGhlIG5hbWVzIGFuZCBlbWFpbCBhZGRyZXNzZXMgb2YgY28tbWFpbnRhaW5lcnMgb2YgdGhlIHBhY2thZ2UsIGluICIKKyJ0aGUgc2FtZSBmb3JtYXQgYXMgdGhlIE1haW50YWluZXIgZmllbGQuIE11bHRpcGxlIGNvLW1haW50YWluZXJzIHNob3VsZCBiZSAiCisic2VwYXJhdGVkIGJ5IGEgY29tbWEuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3JjLWNvbnRyb2wuNTo1MAorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPFZlcnNpb246PiBFPGx0PnZlcnNpb24gc3RyaW5nRTxndD4iCittc2dpZCAiQjxTdGFuZGFyZHMtVmVyc2lvbjo+STwgdmVyc2lvbi1zdHJpbmc+IgorbXNnc3RyICJCPFZlcnNpb246PiBFPGx0PnZlcnppw7NFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6NTYKK21zZ2lkICIiCisiVGhpcyBkb2N1bWVudHMgdGhlIG1vc3QgcmVjZW50IHZlcnNpb24gb2YgdGhlIHN0YW5kYXJkcyAod2hpY2ggY29uc2lzdHMgb2YgIgorInRoZSBEZWJpYW4gUG9saWN5IE1hbnVhbCBhbmQgcmVmZXJlbmNlZCB0ZXh0cyBmcm9tIHRoZSBCPGRlYmlhbi1wb2xpY3k+ICIKKyJwYWNrYWdlKSB0aGlzIHBhY2thZ2UgY29tcGxpZXMgdG8uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3JjLWNvbnRyb2wuNTo1NworIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPEVzc2VudGlhbDo+IEU8bHQ+eWVzfG5vRTxndD4iCittc2dpZCAiQjxETS1VcGxvYWQtQWxsb3dlZDo+IEI8eWVzPnxCPG5vPiIKK21zZ3N0ciAiQjxFc3NlbnRpYWw6PiBFPGx0Pnllc3xub0U8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNTo2MQorbXNnaWQgIiIKKyJUaGlzIGZpZWxkIGluZGljYXRlcyB3aGV0aGVyIHRoZSBwYWNrYWdlIGNhbiBiZSB1cGxvYWRlZCBieSBEZWJpYW4gIgorIk1haW50YWluZXJzIGFwcGVhcmluZyBpbiB0aGUgTWFpbnRhaW5lciBvciBVcGxvYWRlcnMgZmllbGQuIFRoZSBkZWZhdWx0ICIKKyJ2YWx1ZSBpcyBcIm5vXCIuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjY1Cittc2dpZCAiVGhlIHVwc3RyZWFtIHByb2plY3QgaG9tZSBwYWdlIFVSTC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6NzEKK21zZ2lkICIiCisiVGhlIEk8dXJsPiBvZiB0aGUgYnVnIHRyYWNraW5nIHN5c3RlbSBmb3IgdGhpcyBwYWNrYWdlLiBUaGUgY3VycmVudCB1c2VkICIKKyJmb3JtYXQgaXMgSTxidHMtdHlwZT5CPDovLz5JPGJ0cy1hZGRyZXNzPiwgbGlrZSBCPGRlYmJ1Z3M6Ly9idWdzLmRlYmlhbi4iCisib3JnPi4gVGhpcyBmaWVsZCBpcyB1c3VhbGx5IG5vdCBuZWVkZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3JjLWNvbnRyb2wuNTo3MgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPFZjcy0qOj5JPCB1cmw+IgorbXNnc3RyICJCPFJlcGxhY2VzOj4gRTxsdD5jc29tYWcgbGlzdGFFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6NzkKK21zZ2lkICIiCisiVGhlIEk8dXJsPiBvZiB0aGUgVmVyc2lvbiBDb250cm9sIFN5c3RlbSByZXBvc2l0b3J5IHVzZWQgdG8gbWFpbnRhaW4gdGhpcyAiCisicGFja2FnZS4gQ3VycmVudGx5IHN1cHBvcnRlZCBhcmUgQjxBcmNoPiwgQjxCenI+IChCYXphYXIpLCBCPEN2cz4sIEI8RGFyY3M+LCAiCisiQjxHaXQ+LCBCPEhnPiAoTWVyY3VyaWFsKSwgQjxNdG4+IChNb25vdG9uZSkgYW5kIEI8U3ZuPiAoU3VidmVyc2lvbikuICIKKyJVc3VhbGx5IHRoaXMgZmllbGQgcG9pbnRzIHRvIHRoZSBsYXRlc3QgdmVyc2lvbiBvZiB0aGUgcGFja2FnZSwgc3VjaCBhcyB0aGUgIgorIm1haW4gYnJhbmNoIG9yIHRoZSB0cnVuay4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zcmMtY29udHJvbC41OjgwCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8VmNzLUJyb3dzZXI6Pkk8IHVybD4iCittc2dzdHIgIkI8UmVwbGFjZXM6PiBFPGx0PmNzb21hZyBsaXN0YUU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNTo4NAorbXNnaWQgIiIKKyJUaGUgSTx1cmw+IG9mIGEgd2ViaW50ZXJmYWNlIHRvIGJyb3dzZSB0aGUgVmVyc2lvbiBDb250cm9sIFN5c3RlbSByZXBvc2l0b3J5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNTo4OQorbXNnaWQgIiIKKyJUaGUgbmFtZSBvZiB0aGUgZGlzdHJpYnV0aW9uIHRoaXMgcGFja2FnZSBpcyBvcmlnaW5hdGluZyBmcm9tLiBUaGlzIGZpZWxkIGlzICIKKyJ1c3VhbGx5IG5vdCBuZWVkZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41Ojk1CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJUaGlzIGlzIGEgZ2VuZXJhbCBmaWVsZCB0aGF0IGdpdmVzIHRoZSBwYWNrYWdlIGEgY2F0ZWdvcnkgYmFzZWQgb24gdGhlICIKKyN8ICJzb2Z0d2FyZSB0aGF0IGl0IGluc3RhbGxzLiBTb21lIGNvbW1vbiBzZWN0aW9ucyBhcmUgYHV0aWxzJywgYG5ldCcsICIKKyN8ICJgbWFpbCcsIGB0ZXh0JywgYHgxMScgZXRjLiIKK21zZ2lkICIiCisiVGhpcyBpcyBhIGdlbmVyYWwgZmllbGQgdGhhdCBnaXZlcyB0aGUgcGFja2FnZSBhIGNhdGVnb3J5IGJhc2VkIG9uIHRoZSAiCisic29mdHdhcmUgdGhhdCBpdCBpbnN0YWxscy4gU29tZSBjb21tb24gc2VjdGlvbnMgYXJlIFwidXRpbHNcIiwgXCJuZXRcIiwgIgorIlwibWFpbFwiLCBcInRleHRcIiwgXCJ4MTFcIiwgZXRjLiIKK21zZ3N0ciAiIgorIkV6IGVneSDDoWx0YWzDoW5vcyBtZXrFkSwgbWVseSBhIGNzb21hZ290IGVneSB0w6ltYWvDtnJow7Z6IChzemFrYXN6aG96KSB0w6Fyc8OtdGphLCAiCisicMOpbGTDoXVsIGlseWVuZWtoZXo6IGB1dGlscycsIGBuZXQnLCBgbWFpbCcsIGB0ZXh0JywgYHgxMScgc3RiLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MTAwCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJTZXRzIHRoZSBpbXBvcnRhbmNlIG9mIHRoaXMgcGFja2FnZSBpbiByZWxhdGlvbiB0byB0aGUgc3lzdGVtIGFzIGEgIgorI3wgIndob2xlLiAgQ29tbW9uIHByaW9yaXRpZXMgYXJlIGByZXF1aXJlZCcsIGBzdGFuZGFyZCcsIGBvcHRpb25hbCcsIGBleHRyYScgIgorI3wgImV0Yy4iCittc2dpZCAiIgorIlNldHMgdGhlIGltcG9ydGFuY2Ugb2YgdGhpcyBwYWNrYWdlIGluIHJlbGF0aW9uIHRvIHRoZSBzeXN0ZW0gYXMgYSB3aG9sZS4gICIKKyJDb21tb24gcHJpb3JpdGllcyBhcmUgXCJyZXF1aXJlZFwiLCBcInN0YW5kYXJkXCIsIFwib3B0aW9uYWxcIiwgXCJleHRyYVwiLCAiCisiZXRjLiIKK21zZ3N0ciAiIgorIk1lZ2FkamEgZSBjc29tYWcgZm9udG9zc8OhZ8OhdCBhIHJlbmRzemVyIGVnw6lzesOpYmVuLiBJbHllbmVrIHDDqWxkw6F1bDogIgorImByZXF1aXJlZCcsIGBzdGFuZGFyZCcsIGBvcHRpb25hbCcsIGBleHRyYScgKGvDtnRlbGV6xZEsIHN6b2vDoXNvcy4uLikgc3RiLiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zcmMtY29udHJvbC41OjExMAorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPERlcGVuZHM6PiBFPGx0PnBhY2thZ2UgbGlzdEU8Z3Q+IgorbXNnaWQgIkI8QnVpbGQtRGVwZW5kczo+STwgcGFja2FnZS1saXN0PiIKK21zZ3N0ciAiQjxEZXBlbmRzOj4gRTxsdD5jc29tYWcgbGlzdGFFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MTE0Cittc2dpZCAiIgorIkEgbGlzdCBvZiBwYWNrYWdlcyB0aGF0IG5lZWQgdG8gYmUgaW5zdGFsbGVkIGFuZCBjb25maWd1cmVkIHRvIGJlIGFibGUgdG8gIgorImJ1aWxkIHRoZSBzb3VyY2UgcGFja2FnZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zcmMtY29udHJvbC41OjExNQorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPERlcGVuZHM6PiBFPGx0PnBhY2thZ2UgbGlzdEU8Z3Q+IgorbXNnaWQgIkI8QnVpbGQtRGVwZW5kcy1JbmRlcDo+STwgcGFja2FnZS1saXN0PiIKK21zZ3N0ciAiQjxEZXBlbmRzOj4gRTxsdD5jc29tYWcgbGlzdGFFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MTIwCittc2dpZCAiIgorIlNhbWUgYXMgQjxCdWlsZC1EZXBlbmRzPiwgYnV0IHRoZXkgYXJlIG9ubHkgbmVlZGVkIHdoZW4gYnVpbGRpbmcgdGhlICIKKyJhcmNoaXRlY3R1cmUgaW5kZXBlbmRlbnQgcGFja2FnZXMuIFRoZSBCPEJ1aWxkLURlcGVuZHM+IGFyZSBhbHNvIGluc3RhbGxlZCAiCisiaW4gdGhpcyBjYXNlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLXNyYy1jb250cm9sLjU6MTIxCisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8Q29uZmxpY3RzOj4gRTxsdD5wYWNrYWdlIGxpc3RFPGd0PiIKK21zZ2lkICJCPEJ1aWxkLUNvbmZsaWN0czo+STwgcGFja2FnZS1saXN0PiIKK21zZ3N0ciAiQjxDb25mbGljdHM6PiBFPGx0PmNzb21hZyBsaXN0YUU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToxMjUKK21zZ2lkICIiCisiQSBsaXN0IG9mIHBhY2thZ2VzIHRoYXQgc2hvdWxkIG5vdCBiZSBpbnN0YWxsZWQgd2hlbiB0aGUgcGFja2FnZSBpcyBidWlsZCwgIgorImZvciBleGFtcGxlIGJlY2F1c2UgdGhleSBpbnRlcmZlcmUgd2l0aCB0aGUgdXNlZCBidWlsZCBzeXN0ZW0uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3JjLWNvbnRyb2wuNToxMjYKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxDb25mbGljdHM6PiBFPGx0PnBhY2thZ2UgbGlzdEU8Z3Q+IgorbXNnaWQgIkI8QnVpbGQtQ29uZmxpY3RzLUluZGVwOj5JPCBwYWNrYWdlLWxpc3Q+IgorbXNnc3RyICJCPENvbmZsaWN0czo+IEU8bHQ+Y3NvbWFnIGxpc3RhRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjEzMAorbXNnaWQgIiIKKyJTYW1lIGFzIEI8QnVpbGQtQ29uZmxpY3RzPiwgYnV0IG9ubHkgd2hlbiBidWlsZGluZyB0aGUgYXJjaGl0ZWN0dXJlICIKKyJpbmRlcGVuZGVudCBwYWNrYWdlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MTQxCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJUaGUgc3ludGF4IG9mIEI8RGVwZW5kcz4sIEI8UHJlLURlcGVuZHM+LCBCPFJlY29tbWVuZHM+IGFuZCBCPFN1Z2dlc3RzPiAiCisjfCAiZmllbGRzIGlzIGEgbGlzdCBvZiBncm91cHMgb2YgYWx0ZXJuYXRpdmUgcGFja2FnZXMuIEVhY2ggZ3JvdXAgaXMgYSBsaXN0ICIKKyN8ICJvZiBwYWNrYWdlcyBzZXBhcmF0ZWQgYnkgdmVydGljYWwgYmFyIChvciBgcGlwZScpIHN5bWJvbHMsIGB8Jy4gVGhlICIKKyN8ICJncm91cHMgYXJlIHNlcGFyYXRlZCBieSBjb21tYXMuIENvbW1hcyBhcmUgdG8gYmUgcmVhZCBhcyBgQU5EJywgYW5kIHBpcGVzICIKKyN8ICJhcyBgT1InLCB3aXRoIHBpcGVzIGJpbmRpbmcgbW9yZSB0aWdodGx5LiBFYWNoIHBhY2thZ2UgbmFtZSBpcyBvcHRpb25hbGx5ICIKKyN8ICJmb2xsb3dlZCBieSBhIHZlcnNpb24gbnVtYmVyIHNwZWNpZmljYXRpb24gaW4gcGFyZW50aGVzZXMuIgorbXNnaWQgIiIKKyJUaGUgc3ludGF4IG9mIHRoZSBCPEJ1aWxkLURlcGVuZHM+IGFuZCBCPEJ1aWxkLURlcGVuZHMtSW5kZXA+IGZpZWxkcyBpcyBhICIKKyJsaXN0IG9mIGdyb3VwcyBvZiBhbHRlcm5hdGl2ZSBwYWNrYWdlcy4gRWFjaCBncm91cCBpcyBhIGxpc3Qgb2YgcGFja2FnZXMgIgorInNlcGFyYXRlZCBieSB2ZXJ0aWNhbCBiYXIgKG9yIFwicGlwZVwiKSBzeW1ib2xzLCBcInxcIi4gVGhlIGdyb3VwcyBhcmUgIgorInNlcGFyYXRlZCBieSBjb21tYXMuIENvbW1hcyBhcmUgdG8gYmUgcmVhZCBhcyBcIkFORFwiLCBhbmQgcGlwZXMgYXMgXCJPUlwiLCAiCisid2l0aCBwaXBlcyBiaW5kaW5nIG1vcmUgdGlnaHRseS4gRWFjaCBwYWNrYWdlIG5hbWUgaXMgb3B0aW9uYWxseSBmb2xsb3dlZCBieSAiCisiYSB2ZXJzaW9uIG51bWJlciBzcGVjaWZpY2F0aW9uIGluIHBhcmVudGhlc2VzIGFuZCBhbiBhcmNoaXRlY3R1cmUgIgorInNwZWNpZmljYXRpb24gaW4gc3F1YXJlIGJyYWNrZXRzLiIKK21zZ3N0ciAiIgorIkEgQjxEZXBlbmRzPiwgQjxQcmUtRGVwZW5kcz4sIEI8UmVjb21tZW5kcz4gw6lzIEI8U3VnZ2VzdHM+IG1lesWRayBzemludGF4aXNhICIKKyJtw6FzIGNzb21hZ29rIGNzb3BvcnRqYWluYWsgbGlzdMOhamEuIE1pbmRlbiBjc29wb3J0IGVneSBmw7xnZ8WRbGVnZXMgdm9uYWxha2thbCAiCisiKMO6bi4gYHBpcGEnLCBgfCcgamVsZWtrZWwpIGVsdsOhbGFzenRvdHQgY3NvbWFnbGlzdGEuIEEgY3NvcG9ydG9rIHZlc3N6xZFra2VsICIKKyJ2YW5uYWsgZWx2w6FsYXN6dHZhLiBBIHZlc3N6xZEgamVsZW50w6lzZSBgw4lTJywgYSBwaXDDocOpIGBWQUdZJywgYWvDoXIgbmFneW9iYiAiCisia8O2dMOpc2Vra2VsLiBNaW5kZW4gY3NvbWFnbmV2ZXQgYSB2ZXJ6acOzc3rDoW0gbWVnYWTDoXNhIGvDtnZldGhldCB6w6Fyw7NqZWxiZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToxNTAKK21zZ2lkICIiCisiVGhlIHN5bnRheCBvZiB0aGUgQjxCdWlsZC1Db25mbGljdHM+IGFuZCBCPEJ1aWxkLUNvbmZsaWN0cy1JbmRlcD4gZmllbGRzIGlzICIKKyJhIGxpc3Qgb2YgY29tbWEtc2VwYXJhdGVkIHBhY2thZ2UgbmFtZXMsIHdoZXJlIHRoZSBjb21tYSBpcyByZWFkIGFzIGFuIFwiQU5EIgorIlwiLiBTcGVjaWZ5aW5nIGFsdGVybmF0aXZlIHBhY2thZ2VzIHVzaW5nIGEgXCJwaXBlXCIgaXMgbm90IHN1cHBvcnRlZC4gIEVhY2ggIgorInBhY2thZ2UgbmFtZSBpcyBvcHRpb25hbGx5IGZvbGxvd2VkIGJ5IGEgdmVyc2lvbiBudW1iZXIgc3BlY2lmaWNhdGlvbiBpbiAiCisicGFyZW50aGVzZXMgYW5kIGFuIGFyY2hpdGVjdHVyZSBzcGVjaWZpY2F0aW9uIGluIHNxdWFyZSBicmFja2V0cy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MTU2CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJBIHZlcnNpb24gbnVtYmVyIG1heSBzdGFydCB3aXRoIGEgYEU8Z3Q+RTxndD4nLCBpbiB3aGljaCBjYXNlIGFueSBsYXRlciAiCisjfCAidmVyc2lvbiB3aWxsIG1hdGNoLCBhbmQgbWF5IHNwZWNpZnkgb3Igb21pdCB0aGUgRGViaWFuIHBhY2thZ2luZyByZXZpc2lvbiAiCisjfCAiKHNlcGFyYXRlZCBieSBhIGh5cGhlbikuIEFjY2VwdGVkIHZlcnNpb24gcmVsYXRpb25zaGlwcyBhcmUgXCJFPGd0PkU8Z3Q+IgorI3wgIlwiIGZvciBncmVhdGVyIHRoYW4sIFwiRTxsdD5FPGx0PlwiIGZvciBsZXNzIHRoYW4sIFwiRTxndD49XCIgZm9yIGdyZWF0ZXIgIgorI3wgInRoYW4gb3IgZXF1YWwgdG8sIFwiRTxsdD49XCIgZm9yIGxlc3MgdGhhbiBvciBlcXVhbCB0bywgYW5kIFwiPVwiIGZvciAiCisjfCAiZXF1YWwgdG8uIgorbXNnaWQgIiIKKyJBIHZlcnNpb24gbnVtYmVyIG1heSBzdGFydCB3aXRoIGEgXCJFPGd0PkU8Z3Q+XCIsIGluIHdoaWNoIGNhc2UgYW55IGxhdGVyICIKKyJ2ZXJzaW9uIHdpbGwgbWF0Y2gsIGFuZCBtYXkgc3BlY2lmeSBvciBvbWl0IHRoZSBEZWJpYW4gcGFja2FnaW5nIHJldmlzaW9uICIKKyIoc2VwYXJhdGVkIGJ5IGEgaHlwaGVuKS4gQWNjZXB0ZWQgdmVyc2lvbiByZWxhdGlvbnNoaXBzIGFyZSBcIkU8Z3Q+RTxndD5cIiAiCisiZm9yIGdyZWF0ZXIgdGhhbiwgXCJFPGx0PkU8bHQ+XCIgZm9yIGxlc3MgdGhhbiwgXCJFPGd0Pj1cIiBmb3IgZ3JlYXRlciB0aGFuICIKKyJvciBlcXVhbCB0bywgXCJFPGx0Pj1cIiBmb3IgbGVzcyB0aGFuIG9yIGVxdWFsIHRvLCBhbmQgXCI9XCIgZm9yIGVxdWFsIHRvLiIKK21zZ3N0ciAiIgorIkEgdmVyemnDs3N6w6FtIGtlemTFkWRoZXQgw61neTogYEU8Z3Q+RTxndD4nLCBla2tvciBiw6FybWVseSBrw6lzxZFiYmkgdmVyemnDsyAiCisibWVnZmVsZWwsIMOpcyBtZWdhZGhhdCBEZWJpYW4gY3NvbWFnIHJldsOtemnDs3QgKGvDtnTFkWplbGxlbCBlbHbDoWxhc3p0dmEpLiAiCisiRWxmb2dhZG90dCB2ZXJ6acOzdmlzem9ueW9rOiBcIkU8Z3Q+RTxndD5cIiBuYWd5b2JiIG1pbnQsIFwiRTxsdD5FPGx0PlwiICIKKyJraXNlYmIgbWludCwgXCJFPGd0Pj1cIiBuYWd5b2JiIHZhZ3kgZWd5ZW5sxZEsIFwiRTxsdD49XCIga2lzZWJiIHZhZ3kgIgorImVneWVubMWRLCDDqXMgXCI9XCIgZWd5ZW5sxZEuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToxNjAKK21zZ2lkICIiCisiQSBhcmNoaXRlY3R1cmUgc3BlY2lmaWNhdGlvbiBjb25zaXN0cyBvZiBvbmUgb3IgbW9yZSBhcmNoaXRlY3R1cmUgbmFtZXMsICIKKyJzZXBhcmF0ZWQgYnkgd2hpdGVzcGFjZS4gRXhjbGFtYXRpb24gbWFya3MgbWF5IGJlIHByZXBlbmRlZCB0byBlYWNoIG9mIHRoZSAiCisibmFtZXMsIG1lYW5pbmcgXCJOT1RcIi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MTY1Cittc2dpZCAiIgorIk5vdGUgdGhhdCBkZXBlbmRlbmNpZXMgb24gcGFja2FnZXMgaW4gdGhlIEI8YnVpbGQtZXNzZW50aWFsPiBzZXQgY2FuIGJlICIKKyJvbWl0dGVkIGFuZCB0aGF0IGRlY2xhcmluZyBidWlsZCBjb25mbGljdHMgYWdhaW5zdCB0aGVtIGlzIGltcG9zc2libGUuIEEgIgorImxpc3Qgb2YgdGhlc2UgcGFja2FnZXMgaXMgaW4gdGhlIGJ1aWxkLWVzc2VudGlhbCBwYWNrYWdlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZGViLXNyYy1jb250cm9sLjU6MTY3CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIk9QVElPTkFMIEZJRUxEUyIKK21zZ2lkICJCSU5BUlkgRklFTERTIgorbXNnc3RyICJMRUhFVFPDiUdFUyBNRVrFkEsiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjE3NgorbXNnaWQgIiIKKyJOb3RlIHRoYXQgdGhlIEI8UHJpb3JpdHk+LCBCPFNlY3Rpb24+IGFuZCBCPEhvbWVwYWdlPiBmaWVsZHMgY2FuIGFsc28gYmUgaW4gIgorImEgYmluYXJ5IHBhcmFncmFwaCB0byBvdmVycmlkZSB0aGUgZ2xvYmFsIHZhbHVlIGZyb20gdGhlIHNvdXJjZSBwYWNrYWdlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLXNyYy1jb250cm9sLjU6MTc3CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8UGFja2FnZTo+IEU8bHQ+cGFja2FnZSBuYW1lRTxndD4iCittc2dpZCAiQjxQYWNrYWdlOj4gSTxiaW5hcnktcGFja2FnZS1uYW1lPiAocmVxdWlyZWQpIgorbXNnc3RyICJCPFBhY2thZ2U6PiBFPGx0PmNzb21hZyBuw6l2RTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjE4MQorbXNnaWQgIiIKKyJUaGlzIGZpZWxkIGlzIHVzZWQgdG8gbmFtZSB0aGUgYmluYXJ5IHBhY2thZ2UgbmFtZS4gVGhlIHNhbWUgcmVzdHJpY3Rpb25zIGFzICIKKyJ0byBhIHNvdXJjZSBwYWNrYWdlIG5hbWUgYXBwbHkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3JjLWNvbnRyb2wuNToxODIKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxBcmNoaXRlY3R1cmU6PiBFPGx0PmFyY2h8YWxsRTxndD4iCittc2dpZCAiQjxBcmNoaXRlY3R1cmU6PiBJPGFyY2g+fEI8YWxsPnxCPGFueT4gKHJlcXVpcmVkKSIKK21zZ3N0ciAiQjxBcmNoaXRlY3R1cmU6PiBFPGx0PmFyY2h8YWxsRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjE5NQorbXNnaWQgIiIKKyJUaGUgYXJjaGl0ZWN0dXJlIHNwZWNpZmllcyBvbiB3aGljaCB0eXBlIG9mIGhhcmR3YXJlIHRoaXMgcGFja2FnZSBydW5zLiBGb3IgIgorInBhY2thZ2VzIHRoYXQgcnVuIG9uIGFsbCBhcmNoaXRlY3R1cmVzLCB1c2UgdGhlIEI8YW55PiB2YWx1ZS4gRm9yIHBhY2thZ2VzICIKKyJ0aGF0IGFyZSBhcmNoaXRlY3R1cmUgaW5kZXBlbmRlbnQsIHN1Y2ggYXMgc2hlbGwgYW5kIFBlcmwgc2NyaXB0cyBvciAiCisiZG9jdW1lbnRhdGlvbiwgdXNlIHRoZSBCPGFsbD4gdmFsdWUuIFRvIHJlc3RyaWN0IHRoZSBwYWNrYWdlcyB0byBhIGNlcnRhaW4gIgorInNldCBvZiBhcmNoaXRlY3R1cmVzLCBzcGVjaWZ5IHRoZSBhcmNoaXRlY3R1cmUgbmFtZXMsIHNlcGFyYXRlZCBieSBhIHNwYWNlLiAiCisiSXQncyBhbHNvIHBvc3NpYmxlIHRvIHB1dCBhcmNoaXRlY3R1cmUgd2lsZGNhcmRzIGluIHRoYXQgbGlzdCAoc2VlIEI8ZHBrZy0iCisiYXJjaGl0ZWN0dXJlPigxKSAgZm9yIG1vcmUgaW5mb3JtYXRpb24gYWJvdXQgdGhlbSkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3JjLWNvbnRyb2wuNToxOTYKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxQYWNrYWdlOj4gRTxsdD5wYWNrYWdlIG5hbWVFPGd0PiIKK21zZ2lkICJCPFBhY2thZ2UtVHlwZTo+IEI8ZGViPnxCPHVkZWI+IgorbXNnc3RyICJCPFBhY2thZ2U6PiBFPGx0PmNzb21hZyBuw6l2RTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjIwMQorbXNnaWQgIiIKKyJUaGlzIGZpZWxkIGRlZmluZXMgdGhlIHR5cGUgb2YgdGhlIHBhY2thZ2UuIFwidWRlYlwiIGlzIGZvciBzaXplLWNvbnN0cmFpbmVkICIKKyJwYWNrYWdlcyB1c2VkIGJ5IHRoZSBkZWJpYW4gaW5zdGFsbGVyLiBcImRlYlwiIGlzIHRoZSBkZWZhdWx0IHZhbHVlLCBpdCdzICIKKyJhc3N1bWVkIGlmIHRoZSBmaWVsZCBpcyBhYnNlbnQuIE1vcmUgdHlwZXMgbWlnaHQgYmUgYWRkZWQgaW4gdGhlIGZ1dHVyZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zcmMtY29udHJvbC41OjIyNQorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPERlc2NyaXB0aW9uOj4gRTxsdD5zaG9ydCBkZXNjcmlwdGlvbkU8Z3Q+IgorbXNnaWQgIkI8RGVzY3JpcHRpb246PiBJPHNob3J0LWRlc2NyaXB0aW9uPiAocmVxdWlyZWQpIgorbXNnc3RyICJCPERlc2NyaXB0aW9uOj4gRTxsdD5yw7Z2aWQgbGXDrXLDoXNFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MjMyCittc2dpZCAiIgorIlRoZXNlIGZpZWxkcyBhcmUgZGVzY3JpYmVkIGluIHRoZSBCPGRlYi1jb250cm9sPig1KSAgbWFudWFsIHBhZ2UsIGFzIHRoZXkgIgorImFyZSBjb3BpZWQgbGl0ZXJhbGx5IHRvIHRoZSBjb250cm9sIGZpbGUgb2YgdGhlIGJpbmFyeSBwYWNrYWdlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLXNyYy1jb250cm9sLjU6MjQ4CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8UmVwbGFjZXM6PiBFPGx0PnBhY2thZ2UgbGlzdEU8Z3Q+IgorbXNnaWQgIkI8RW5oYW5jZXM6Pkk8IHBhY2thZ2UtbGlzdD4iCittc2dzdHIgIkI8UmVwbGFjZXM6PiBFPGx0PmNzb21hZyBsaXN0YUU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToyNzAKK21zZ2lkICIiCisiVGhlc2UgZmllbGRzIGRlY2xhcmUgcmVsYXRpb25zaGlwcyBiZXR3ZWVuIHBhY2thZ2VzLiBUaGV5IGFyZSBkaXNjdXNzZWQgaW4gIgorInRoZSBCPGRlYi1jb250cm9sPig1KSAgbWFucGFnZSBhbmQgaW4gdGhlIEI8ZGViaWFuLXBvbGljeT4gcGFja2FnZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRlYi1zcmMtY29udHJvbC41OjI3MQorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJSRVFVSVJFRCBGSUVMRFMiCittc2dpZCAiVVNFUi1ERUZJTkVEIEZJRUxEUyIKK21zZ3N0ciAiS8OWVEVMRVrFkCBNRVrFkEsiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjI4NgorbXNnaWQgIiIKKyJJdCBpcyBhbGxvd2VkIHRvIGFkZCBhZGRpdGlvbmFsIHVzZXItZGVmaW5lZCBmaWVsZHMgdG8gdGhlIGNvbnRyb2wgZmlsZS4gVGhlICIKKyJ0b29scyB3aWxsIGlnbm9yZSB0aGVzZSBmaWVsZHMuIElmIHlvdSB3YW50IHRoZSBmaWVsZHMgdG8gYmUgY29waWVkIG92ZXIgdG8gIgorInRoZSBvdXRwdXQgZmlsZXMsIHN1Y2ggYXMgdGhlIGJpbmFyeSBwYWNrYWdlcywgeW91IG5lZWQgdG8gdXNlIGEgY3VzdG9tICIKKyJuYW1pbmcgc2NoZW1lOiB0aGUgZmllbGRzIHNob3VsZCBzdGFydCB3aXRoIGEgWCwgZm9sbG93ZWQgYnkgb25lIG9yIG1vcmUgb2YgIgorInRoZSBsZXR0ZXJzIEJDUyBhbmQgYSBoeXBlbi4gSWYgdGhlIGxldHRlciBCIGlzIHVzZWQsIHRoZSBmaWVsZCB3aWxsIGFwcGVhciAiCisiaW4gdGhlIGNvbnRyb2wgZmlsZSBpbiB0aGUgYmluYXJ5IHBhY2thZ2UsIHNlZSBCPGRlYi1jb250cm9sPig1KSwgZm9yIHRoZSAiCisibGV0dGVyIFMgaW4gdGhlIHNvdXJjZSBwYWNrYWdlIGNvbnRyb2wgZmlsZSBhcyBjb25zdHJ1Y3RlZCBieSBCPGRwa2ctc291cmNlPiIKKyIoMSkgIGFuZCBmb3IgdGhlIGxldHRlciBDIGluIHRoZSB1cGxvYWQgY29udHJvbCAoLmNoYW5nZXMpIGZpbGUuIE5vdGUgdGhhdCAiCisidGhlIFhbQkNTXS0gcHJlZml4ZXMgYXJlIHN0cmlwcGVkIHdoZW4gdGhlIGZpZWxkcyBhcmUgY29waWVkIG92ZXIgdG8gdGhlICIKKyJvdXRwdXQgZmlsZXMuIEEgZmllbGQgQjxYQy1BcHByb3ZlZC1CeT4gd2lsbCBhcHBlYXIgYXMgQjxBcHByb3ZlZC1CeT4gaW4gdGhlICIKKyJjaGFuZ2VzIGZpbGUgYW5kIHdpbGwgbm90IGFwcGVhciBpbiB0aGUgYmluYXJ5IG9yIHNvdXJjZSBwYWNrYWdlIGNvbnRyb2wgIgorImZpbGVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNTozMDQKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiIyBDb21tZW50XG4iCisiU291cmNlOiBkcGtnXG4iCisiU2VjdGlvbjogYWRtaW5cbiIKKyJQcmlvcml0eTogcmVxdWlyZWRcbiIKKyJNYWludGFpbmVyOiBEcGtnIERldmVsb3BlcnMgRTxsdD5kZWJpYW4tZHBrZ0BsaXN0cy5kZWJpYW4ub3JnRTxndD5cbiIKKyIjIHRoaXMgZmllbGQgaXMgY29waWVkIHRvIHRoZSBiaW5hcnkgYW5kIHNvdXJjZSBwYWNrYWdlc1xuIgorIlhCUy1VcHN0cmVhbS1SZWxlYXNlLVN0YXR1czogc3RhYmxlXG4iCisiSG9tZXBhZ2U6IGh0dHA6Ly93aWtpLmRlYmlhbi5vcmcvVGVhbXMvRHBrZ1xuIgorIlZjcy1Ccm93c2VyOiBodHRwOi8vZ2l0LmRlYmlhbi5vcmcvP3A9ZHBrZy9kcGtnLmdpdFxuIgorIlZjcy1HaXQ6IGdpdDovL2dpdC5kZWJpYW4ub3JnL2dpdC9kcGtnL2Rwa2cuZ2l0XG4iCisiU3RhbmRhcmRzLVZlcnNpb246IDMuNy4zXG4iCisiQnVpbGQtRGVwZW5kczogcGtnLWNvbmZpZywgZGViaGVscGVyIChFPGd0Pj0gNC4xLjgxKSxcbiIKKyIgbGlic2VsaW51eDEtZGV2IChFPGd0Pj0gMS4yOC00KSBbIWxpbnV4LWFueV1cbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNTozMjMKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiUGFja2FnZTogZHBrZy1kZXZcbiIKKyJTZWN0aW9uOiB1dGlsc1xuIgorIlByaW9yaXR5OiBvcHRpb25hbFxuIgorIkFyY2hpdGVjdHVyZTogYWxsXG4iCisiIyB0aGlzIGlzIGEgY3VzdG9tIGZpZWxkIGluIHRoZSBiaW5hcnkgcGFja2FnZVxuIgorIlhCLU1lbnRvcmluZy1Db250YWN0OiBSYXBoYWVsIEhlcnR6b2cgRTxsdD5oZXJ0em9nQGRlYmlhbi5vcmdFPGd0PlxuIgorIkRlcGVuZHM6IGRwa2cgKEU8Z3Q+PSAxLjE0LjYpLCBwZXJsNSwgcGVybC1tb2R1bGVzLCBjcGlvIChFPGd0Pj0gMi40LjItMiksXG4iCisiIGJ6aXAyLCBsem1hLCBwYXRjaCAoRTxndD49IDIuMi0xKSwgbWFrZSwgYmludXRpbHMsIGxpYnRpbWVkYXRlLXBlcmxcbiIKKyJSZWNvbW1lbmRzOiBnY2MgfCBjLWNvbXBpbGVyLCBidWlsZC1lc3NlbnRpYWxcbiIKKyJTdWdnZXN0czogZ251cGcsIGRlYmlhbi1rZXlyaW5nXG4iCisiQ29uZmxpY3RzOiBkcGtnLWNyb3NzIChFPGx0PkU8bHQ+IDIuMC4wKSwgZGV2c2NyaXB0cyAoRTxsdD5FPGx0PiAyLjEwLjI2KVxuIgorIlJlcGxhY2VzOiBtYW5wYWdlcy1wbCAoRTxsdD49IDIwMDUxMTE3LTEpXG4iCisiRGVzY3JpcHRpb246IERlYmlhbiBwYWNrYWdlIGRldmVsb3BtZW50IHRvb2xzXG4iCisiIFRoaXMgcGFja2FnZSBwcm92aWRlcyB0aGUgZGV2ZWxvcG1lbnQgdG9vbHMgKGluY2x1ZGluZyBkcGtnLXNvdXJjZSlcbiIKKyIgcmVxdWlyZWQgdG8gdW5wYWNrLCBidWlsZCBhbmQgdXBsb2FkIERlYmlhbiBzb3VyY2UgcGFja2FnZXMuXG4iCisiIC5cbiIKKyIgTW9zdCBEZWJpYW4gc291cmNlIHBhY2thZ2VzIHdpbGwgcmVxdWlyZSBhZGRpdGlvbmFsIHRvb2xzIHRvIGJ1aWxkO1xuIgorIiBmb3IgZXhhbXBsZSwgbW9zdCBwYWNrYWdlcyBuZWVkIG1ha2UgYW5kIHRoZSBDIGNvbXBpbGVyIGdjYy5cbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNTozMzAKKyMsIGZ1enp5Cittc2dpZCAiQjxkZWItY29udHJvbD4oNSksIEI8ZGViLXZlcnNpb24+KDUpLCBCPGRwa2ctc291cmNlPigxKSIKK21zZ3N0ciAiQjxkZWI+KDUpLCBCPGRlYi1jb250cm9sPig1KSwgQjxkcGtnPigxKSwgQjxkc2VsZWN0PigxKS4iCisKKyMuIHR5cGU6IFRICisjOiBkZWItc3BsaXQuNToxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgImRlYi1zcGxpdCIKK21zZ3N0ciAiZHBrZyBrw6lzemxldCIKKworIy4gdHlwZTogVEgKKyM6IGRlYi1zcGxpdC41OjEgZHBrZy1jaGVja2J1aWxkZGVwcy4xOjEgZHBrZy1kaXN0YWRkZmlsZS4xOjEgZHBrZy1zcGxpdC4xOjIKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6MSBkcGtnLXZlbmRvci4xOjEgc3RhcnQtc3RvcC1kYWVtb24uODoxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIjIwMTEtMDctMDQiCittc2dzdHIgIjIwMDYtMDItMjgiCisKKyMgdHlwZTogUGxhaW4gdGV4dAorIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNwbGl0LjU6NAorbXNnaWQgImRlYi1zcGxpdCAtIERlYmlhbiBtdWx0aS1wYXJ0IGJpbmFyeSBwYWNrYWdlIGZvcm1hdCIKK21zZ3N0ciAiIgorCisjIHR5cGU6IFBsYWluIHRleHQKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcGxpdC41OjkKK21zZ2lkICIiCisiVGhlIG11bHRpLXBhcnQgQjwuZGViPiBmb3JtYXQgaXMgdXNlZCB0byBzcGxpdCBiaWcgcGFja2FnZXMgaW50byBzbWFsbGVyICIKKyJwaWVjZXMgdG8gZWFzZSB0cmFuc3BvcnQgaW4gc21hbGwgbWVkaWEuIgorbXNnc3RyICIiCisKKyMgdHlwZTogUGxhaW4gdGV4dAorIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNwbGl0LjU6MTIKK21zZ2lkICIiCisiVGhlIGZpbGUgaXMgYW4gQjxhcj4gYXJjaGl2ZSB3aXRoIGEgbWFnaWMgdmFsdWUgb2YgQjwhRTxsdD5hcmNoRTxndD4+LiAgVGhlICIKKyJmaWxlIG5hbWVzIG1pZ2h0IGNvbnRhaW4gYSB0cmFpbGluZyBzbGFzaCAoc2luY2UgZHBrZyAxLjE1LjYpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3BsaXQuNToxNQorbXNnaWQgIiIKKyJUaGUgZmlyc3QgbWVtYmVyIGlzIG5hbWVkIEI8ZGViaWFuLXNwbGl0PiBhbmQgY29udGFpbnMgYSBzZXJpZXMgb2YgbGluZXMsICIKKyJzZXBhcmF0ZWQgYnkgbmV3bGluZXMuIEN1cnJlbnRseSBlaWdodCBsaW5lcyBhcmUgcHJlc2VudDoiCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRlYi1zcGxpdC41OjE1IGRlYi1zcGxpdC41OjE4IGRlYi1zcGxpdC41OjIwIGRlYi1zcGxpdC41OjIyIGRlYi1zcGxpdC41OjI0CisjOiBkZWItc3BsaXQuNToyNiBkZWItc3BsaXQuNToyOCBkZWItc3BsaXQuNTozMSBkcGtnLWdlbnN5bWJvbHMuMToyMAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjIgZHBrZy1nZW5zeW1ib2xzLjE6MjQgZHBrZy1nZW5zeW1ib2xzLjE6MjYKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjMxMSBkcGtnLWdlbnN5bWJvbHMuMTozMTcgZHBrZy1nZW5zeW1ib2xzLjE6MzUxCisjOiBkcGtnLWdlbnN5bWJvbHMuMTozNTUgZHBrZy1nZW5zeW1ib2xzLjE6MzU4CisjLCBuby13cmFwCittc2dpZCAiXFwoYnUiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNwbGl0LjU6MTgKK21zZ2lkICIiCisiVGhlIGZvcm1hdCB2ZXJzaW9uIG51bWJlciwgQjwyLjE+IGF0IHRoZSB0aW1lIHRoaXMgbWFudWFsIHBhZ2Ugd2FzIHdyaXR0ZW4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcGxpdC41OjIwCittc2dpZCAiVGhlIHBhY2thZ2UgbmFtZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNwbGl0LjU6MjIKK21zZ2lkICJUaGUgcGFja2FnZSB2ZXJzaW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3BsaXQuNToyNAorbXNnaWQgIlRoZSBtZDVzdW0gb2YgdGhlIHBhY2thZ2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcGxpdC41OjI2CisjLCBmdXp6eQorbXNnaWQgIlRoZSB0b3RhbCBzaXplIG9mIHRoZSBwYWNrYWdlLiIKK21zZ3N0ciAiS2lzemVkaSBheiBlbGxlbsWRcnrFkSBpbmZvcm3DoWNpw7NzIGbDoWpsdCBlZ3kgYmluw6FyaXMgY3NvbWFnYXJjaMOtdnVtYsOzbCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNwbGl0LjU6MjgKK21zZ2lkICJUaGUgbWF4aW11bSBwYXJ0IHNpemUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcGxpdC41OjMxCittc2dpZCAiIgorIlRoZSBjdXJyZW50IHBhcnQgbnVtYmVyLCBmb2xsb3dlZCBieSBhIHNsYXNoIGFuZCB0aGUgdG90YWwgYW1vdW50IG9mIHBhcnRzICIKKyIoYXMgaW4gXFwob3ExLzEwXFwoY3EpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3BsaXQuNTozMworbXNnaWQgIlRoZSBwYWNrYWdlIGFyY2hpdGVjdHVyZSAoc2luY2UgZHBrZyAxLjE2LjEpLiIKK21zZ3N0ciAiIgorCisjIHR5cGU6IFBsYWluIHRleHQKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcGxpdC41OjM2Cittc2dpZCAiIgorIlByb2dyYW1zIHdoaWNoIHJlYWQgbXVsdGktcGFydCBhcmNoaXZlcyBzaG91bGQgYmUgcHJlcGFyZWQgZm9yIGFkZGl0aW9uYWwgIgorImxpbmVzIHRvIGJlIHByZXNlbnQsIGFuZCBzaG91bGQgaWdub3JlIHRoZXNlIGlmIHRoaXMgaXMgdGhlIGNhc2UuIgorbXNnc3RyICIiCisKKyMgdHlwZTogUGxhaW4gdGV4dAorIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNwbGl0LjU6NDEKK21zZ2lkICIiCisiSWYgdGhlIHZlcnNpb24gbnVtYmVyIGhhcyBjaGFuZ2VkLCBhbiBpbmNvbXBhdGlibGUgY2hhbmdlIGhhcyBiZWVuIG1hZGUgYW5kICIKKyJ0aGUgcHJvZ3JhbSBzaG91bGQgc3RvcC4gSWYgaXQgaGFzIG5vdCwgdGhlbiB0aGUgcHJvZ3JhbSBzaG91bGQgYmUgYWJsZSB0byAiCisic2FmZWx5IGNvbnRpbnVlLCB1bmxlc3MgaXQgZW5jb3VudGVycyBhbiB1bmV4cGVjdGVkIG1lbWJlciBpbiB0aGUgYXJjaGl2ZSAiCisiKGV4Y2VwdCBhdCB0aGUgZW5kKSwgYXMgZGVzY3JpYmVkIGJlbG93LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3BsaXQuNTo0NAorbXNnaWQgIiIKKyJUaGUgc2Vjb25kLCBsYXN0IHJlcXVpcmVkIG1lbWJlciBpcyBuYW1lZCBCPGRhdGEuPkk8Tj4sIHdoZXJlIEk8Tj4gZGVub3RlcyAiCisidGhlIHBhcnQgbnVtYmVyLiBJdCBjb250YWlucyB0aGUgcmF3IHBhcnQgZGF0YS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNwbGl0LjU6NDkKK21zZ2lkICIiCisiVGhlc2UgbWVtYmVycyBtdXN0IG9jY3VyIGluIHRoaXMgZXhhY3Qgb3JkZXIuIEN1cnJlbnQgaW1wbGVtZW50YXRpb25zIHNob3VsZCAiCisiaWdub3JlIGFueSBhZGRpdGlvbmFsIG1lbWJlcnMgYWZ0ZXIgQjxkYXRhLj5JPE4+LiAgRnVydGhlciBtZW1iZXJzIG1heSBiZSAiCisiZGVmaW5lZCBpbiB0aGUgZnV0dXJlLCBhbmQgKGlmIHBvc3NpYmxlKSB3aWxsIGJlIHBsYWNlZCBhZnRlciB0aGVzZSB0d28uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcGxpdC41OjUxCisjLCBmdXp6eQorbXNnaWQgIkI8ZGViPig1KSwgQjxkcGtnLXNwbGl0PigxKS4iCittc2dzdHIgIkI8ZGViPig1KSwgQjxkZWItY29udHJvbD4oNSksIEI8ZHBrZz4oMSksIEI8ZHNlbGVjdD4oMSkuIgorCisjLiB0eXBlOiBUSAorIzogZGViLXZlcnNpb24uNTo1CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgImRlYi12ZXJzaW9uIgorbXNnc3RyICJCPC0tdmVyc2lvbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6OAorIywgZnV6enkKK21zZ2lkICJkZWItdmVyc2lvbiAtIERlYmlhbiBwYWNrYWdlIHZlcnNpb24gbnVtYmVyIGZvcm1hdCIKK21zZ3N0ciAiZGViLWNvbnRyb2wgLSBEZWJpYW4gY3NvbWFnIGbFkSBrb250cm9sbCBmw6FqbCBmb3Jtw6F0dW0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6MTEKK21zZ2lkICJbSTxlcG9jaD5CPDo+XUk8dXBzdHJlYW0tdmVyc2lvbj5bQjwtPkk8ZGViaWFuLXJldmlzaW9uPl0iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNToxNAorbXNnaWQgIiIKKyJWZXJzaW9uIG51bWJlcnMgYXMgdXNlZCBmb3IgRGViaWFuIGJpbmFyeSBhbmQgc291cmNlIHBhY2thZ2VzIGNvbnNpc3Qgb2YgIgorInRocmVlIGNvbXBvbmVudHMuIFRoZXNlIGFyZToiCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi12ZXJzaW9uLjU6MTQKKyMsIG5vLXdyYXAKK21zZ2lkICJJPGVwb2NoPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjIwCittc2dpZCAiIgorIlRoaXMgaXMgYSBzaW5nbGUgKGdlbmVyYWxseSBzbWFsbCkgdW5zaWduZWQgaW50ZWdlci4gIEl0IG1heSBiZSBvbWl0dGVkLCBpbiAiCisid2hpY2ggY2FzZSB6ZXJvIGlzIGFzc3VtZWQuICBJZiBpdCBpcyBvbWl0dGVkIHRoZW4gdGhlIEk8dXBzdHJlYW0tdmVyc2lvbj4gIgorIm1heSBub3QgY29udGFpbiBhbnkgY29sb25zLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjI0Cittc2dpZCAiIgorIkl0IGlzIHByb3ZpZGVkIHRvIGFsbG93IG1pc3Rha2VzIGluIHRoZSB2ZXJzaW9uIG51bWJlcnMgb2Ygb2xkZXIgdmVyc2lvbnMgb2YgIgorImEgcGFja2FnZSwgYW5kIGFsc28gYSBwYWNrYWdlJ3MgcHJldmlvdXMgdmVyc2lvbiBudW1iZXJpbmcgc2NoZW1lcywgdG8gYmUgIgorImxlZnQgYmVoaW5kLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLXZlcnNpb24uNToyNAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJJPHVwc3RyZWFtLXZlcnNpb24+IgorbXNnc3RyICJCPC0tdmVyc2lvbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6MzQKK21zZ2lkICIiCisiVGhpcyBpcyB0aGUgbWFpbiBwYXJ0IG9mIHRoZSB2ZXJzaW9uIG51bWJlci4gIEl0IGlzIHVzdWFsbHkgdGhlIHZlcnNpb24gIgorIm51bWJlciBvZiB0aGUgb3JpZ2luYWwgKFwidXBzdHJlYW1cIikgIHBhY2thZ2UgZnJvbSB3aGljaCB0aGUgSTwuZGViPiBmaWxlICIKKyJoYXMgYmVlbiBtYWRlLCBpZiB0aGlzIGlzIGFwcGxpY2FibGUuICBVc3VhbGx5IHRoaXMgd2lsbCBiZSBpbiB0aGUgc2FtZSAiCisiZm9ybWF0IGFzIHRoYXQgc3BlY2lmaWVkIGJ5IHRoZSB1cHN0cmVhbSBhdXRob3Iocyk7IGhvd2V2ZXIsIGl0IG1heSBuZWVkIHRvICIKKyJiZSByZWZvcm1hdHRlZCB0byBmaXQgaW50byB0aGUgcGFja2FnZSBtYW5hZ2VtZW50IHN5c3RlbSdzIGZvcm1hdCBhbmQgIgorImNvbXBhcmlzb24gc2NoZW1lLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjM5Cittc2dpZCAiIgorIlRoZSBjb21wYXJpc29uIGJlaGF2aW9yIG9mIHRoZSBwYWNrYWdlIG1hbmFnZW1lbnQgc3lzdGVtIHdpdGggcmVzcGVjdCB0byB0aGUgIgorIkk8dXBzdHJlYW0tdmVyc2lvbj4gaXMgZGVzY3JpYmVkIGJlbG93LiBUaGUgSTx1cHN0cmVhbS12ZXJzaW9uPiBwb3J0aW9uIG9mICIKKyJ0aGUgdmVyc2lvbiBudW1iZXIgaXMgbWFuZGF0b3J5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjQ4Cittc2dpZCAiIgorIlRoZSBJPHVwc3RyZWFtLXZlcnNpb24+IG1heSBjb250YWluIG9ubHkgYWxwaGFudW1lcmljcyAoXCJBLVphLXowLTlcIikgYW5kICIKKyJ0aGUgY2hhcmFjdGVycyBCPC4+IEI8Kz4gQjwtPiBCPDo+IEI8fj4gKGZ1bGwgc3RvcCwgcGx1cywgaHlwaGVuLCBjb2xvbiwgIgorInRpbGRlKSBhbmQgc2hvdWxkIHN0YXJ0IHdpdGggYSBkaWdpdC4gIElmIHRoZXJlIGlzIG5vIEk8ZGViaWFuLXJldmlzaW9uPiAiCisidGhlbiBoeXBoZW5zIGFyZSBub3QgYWxsb3dlZDsgaWYgdGhlcmUgaXMgbm8gSTxlcG9jaD4gdGhlbiBjb2xvbnMgYXJlIG5vdCAiCisiYWxsb3dlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi12ZXJzaW9uLjU6NDgKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiSTxkZWJpYW4tcmV2aXNpb24+IgorbXNnc3RyICJCPC0tdmVyc2lvbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6NTcKK21zZ2lkICIiCisiVGhpcyBwYXJ0IG9mIHRoZSB2ZXJzaW9uIG51bWJlciBzcGVjaWZpZXMgdGhlIHZlcnNpb24gb2YgdGhlIERlYmlhbiBwYWNrYWdlICIKKyJiYXNlZCBvbiB0aGUgdXBzdHJlYW0gdmVyc2lvbi4gIEl0IG1heSBjb250YWluIG9ubHkgYWxwaGFudW1lcmljcyBhbmQgdGhlICIKKyJjaGFyYWN0ZXJzIEI8Kz4gQjwuPiBCPH4+IChwbHVzLCBmdWxsIHN0b3AsIHRpbGRlKSBhbmQgaXMgY29tcGFyZWQgaW4gdGhlICIKKyJzYW1lIHdheSBhcyB0aGUgSTx1cHN0cmVhbS12ZXJzaW9uPiBpcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNTo2NAorbXNnaWQgIiIKKyJJdCBpcyBvcHRpb25hbDsgaWYgaXQgaXNuJ3QgcHJlc2VudCB0aGVuIHRoZSBJPHVwc3RyZWFtLXZlcnNpb24+IG1heSBub3QgIgorImNvbnRhaW4gYSBoeXBoZW4uICBUaGlzIGZvcm1hdCByZXByZXNlbnRzIHRoZSBjYXNlIHdoZXJlIGEgcGllY2Ugb2Ygc29mdHdhcmUgIgorIndhcyB3cml0dGVuIHNwZWNpZmljYWxseSB0byBiZSB0dXJuZWQgaW50byBhIERlYmlhbiBwYWNrYWdlLCBhbmQgc28gdGhlcmUgaXMgIgorIm9ubHkgb25lIFwiZGViaWFuaXNhdGlvblwiIG9mIGl0IGFuZCB0aGVyZWZvcmUgbm8gcmV2aXNpb24gaW5kaWNhdGlvbiBpcyAiCisicmVxdWlyZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6NjgKK21zZ2lkICIiCisiSXQgaXMgY29udmVudGlvbmFsIHRvIHJlc3RhcnQgdGhlIEk8ZGViaWFuLXJldmlzaW9uPiBhdCAnMScgZWFjaCB0aW1lIHRpbWUgIgorInRoZSBJPHVwc3RyZWFtLXZlcnNpb24+IGlzIGluY3JlYXNlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNTo3NgorbXNnaWQgIiIKKyJEcGtnIHdpbGwgYnJlYWsgdGhlIHZlcnNpb24gbnVtYmVyIGFwYXJ0IGF0IHRoZSBsYXN0IGh5cGhlbiBpbiB0aGUgc3RyaW5nICIKKyIoaWYgdGhlcmUgaXMgb25lKSB0byBkZXRlcm1pbmUgdGhlIEk8dXBzdHJlYW0tdmVyc2lvbj4gYW5kIEk8ZGViaWFuLSIKKyJyZXZpc2lvbj4uIFRoZSBhYnNlbmNlIG9mIGEgSTxkZWJpYW4tcmV2aXNpb24+IGNvbXBhcmVzIGVhcmxpZXIgdGhhbiB0aGUgIgorInByZXNlbmNlIG9mIG9uZSAoYnV0IG5vdGUgdGhhdCB0aGUgSTxkZWJpYW4tcmV2aXNpb24+IGlzIHRoZSBsZWFzdCAiCisic2lnbmlmaWNhbnQgcGFydCBvZiB0aGUgdmVyc2lvbiBudW1iZXIpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZGViLXZlcnNpb24uNTo3NgorIywgbm8td3JhcAorbXNnaWQgIlNvcnRpbmcgQWxnb3JpdGhtIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6ODAKK21zZ2lkICIiCisiVGhlIEk8dXBzdHJlYW0tdmVyc2lvbj4gYW5kIEk8ZGViaWFuLXJldmlzaW9uPiBwYXJ0cyBhcmUgY29tcGFyZWQgYnkgdGhlICIKKyJwYWNrYWdlIG1hbmFnZW1lbnQgc3lzdGVtIHVzaW5nIHRoZSBzYW1lIGFsZ29yaXRobToiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNTo4MgorbXNnaWQgIlRoZSBzdHJpbmdzIGFyZSBjb21wYXJlZCBmcm9tIGxlZnQgdG8gcmlnaHQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6OTIKK21zZ2lkICIiCisiRmlyc3QgdGhlIGluaXRpYWwgcGFydCBvZiBlYWNoIHN0cmluZyBjb25zaXN0aW5nIGVudGlyZWx5IG9mIG5vbi1kaWdpdCAiCisiY2hhcmFjdGVycyBpcyBkZXRlcm1pbmVkLiAgVGhlc2UgdHdvIHBhcnRzIChvbmUgb2Ygd2hpY2ggbWF5IGJlIGVtcHR5KSBhcmUgIgorImNvbXBhcmVkIGxleGljYWxseS4gIElmIGEgZGlmZmVyZW5jZSBpcyBmb3VuZCBpdCBpcyByZXR1cm5lZC4gIFRoZSBsZXhpY2FsICIKKyJjb21wYXJpc29uIGlzIGEgY29tcGFyaXNvbiBvZiBBU0NJSSB2YWx1ZXMgbW9kaWZpZWQgc28gdGhhdCBhbGwgdGhlIGxldHRlcnMgIgorInNvcnQgZWFybGllciB0aGFuIGFsbCB0aGUgbm9uLWxldHRlcnMgYW5kIHNvIHRoYXQgYSB0aWxkZSBzb3J0cyBiZWZvcmUgIgorImFueXRoaW5nLCBldmVuIHRoZSBlbmQgb2YgYSBwYXJ0LiAgRm9yIGV4YW1wbGUsIHRoZSBmb2xsb3dpbmcgcGFydHMgYXJlIGluICIKKyJzb3J0ZWQgb3JkZXI6ICd+ficsICd+fmEnLCAnficsIHRoZSBlbXB0eSBwYXJ0LCAnYScuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6MTAwCittc2dpZCAiIgorIlRoZW4gdGhlIGluaXRpYWwgcGFydCBvZiB0aGUgcmVtYWluZGVyIG9mIGVhY2ggc3RyaW5nIHdoaWNoIGNvbnNpc3RzICIKKyJlbnRpcmVseSBvZiBkaWdpdCBjaGFyYWN0ZXJzIGlzIGRldGVybWluZWQuICBUaGUgbnVtZXJpY2FsIHZhbHVlcyBvZiB0aGVzZSAiCisidHdvIHBhcnRzIGFyZSBjb21wYXJlZCwgYW5kIGFueSBkaWZmZXJlbmNlIGZvdW5kIGlzIHJldHVybmVkIGFzIHRoZSByZXN1bHQgIgorIm9mIHRoZSBjb21wYXJpc29uLiAgRm9yIHRoZXNlIHB1cnBvc2VzIGFuIGVtcHR5IHN0cmluZyAod2hpY2ggY2FuIG9ubHkgb2NjdXIgIgorImF0IHRoZSBlbmQgb2Ygb25lIG9yIGJvdGggdmVyc2lvbiBzdHJpbmdzIGJlaW5nIGNvbXBhcmVkKSBjb3VudHMgYXMgemVyby4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNToxMDQKK21zZ2lkICIiCisiVGhlc2UgdHdvIHN0ZXBzIChjb21wYXJpbmcgYW5kIHJlbW92aW5nIGluaXRpYWwgbm9uLWRpZ2l0IHN0cmluZ3MgYW5kICIKKyJpbml0aWFsIGRpZ2l0IHN0cmluZ3MpIGFyZSByZXBlYXRlZCB1bnRpbCBhIGRpZmZlcmVuY2UgaXMgZm91bmQgb3IgYm90aCAiCisic3RyaW5ncyBhcmUgZXhoYXVzdGVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjExMgorbXNnaWQgIiIKKyJOb3RlIHRoYXQgdGhlIHB1cnBvc2Ugb2YgZXBvY2hzIGlzIHRvIGFsbG93IHVzIHRvIGxlYXZlIGJlaGluZCBtaXN0YWtlcyBpbiAiCisidmVyc2lvbiBudW1iZXJpbmcsIGFuZCB0byBjb3BlIHdpdGggc2l0dWF0aW9ucyB3aGVyZSB0aGUgdmVyc2lvbiBudW1iZXJpbmcgIgorInNjaGVtZSBjaGFuZ2VzLiAgSXQgaXMgQjxub3Q+IGludGVuZGVkIHRvIGNvcGUgd2l0aCB2ZXJzaW9uIG51bWJlcnMgIgorImNvbnRhaW5pbmcgc3RyaW5ncyBvZiBsZXR0ZXJzIHdoaWNoIHRoZSBwYWNrYWdlIG1hbmFnZW1lbnQgc3lzdGVtIGNhbm5vdCAiCisiaW50ZXJwcmV0IChzdWNoIGFzICdBTFBIQScgb3IgJ3ByZS0nKSwgb3Igd2l0aCBzaWxseSBvcmRlcmluZ3MuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkZWItdmVyc2lvbi41OjExMiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTA5CisjLCBuby13cmFwCittc2dpZCAiQ0FWRUFUUyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjExNgorbXNnaWQgIiIKKyJUaGUgdGlsZGUgY2hhcmFjdGVyIGFuZCBpdHMgc3BlY2lhbCBzb3J0aW5nIHByb3BlcnRpZXMgd2VyZSBpbnRyb2R1Y2VkIGluICIKKyJkcGtnLCB2ZXJzaW9uIDEuMTAgYW5kIHNvbWUgcGFydHMgb2YgZHBrZy1kZXYgb25seSBnYWluZWQgc3VwcG9ydCBmb3IgaXQgIgorImxhdGVyIGluIHRoZSAxLjEwLnggc2VyaWVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjEyMAorIywgZnV6enkKK21zZ2lkICJCPGRlYi1jb250cm9sPig1KSwgQjxkZWI+KDUpLCBCPGRwa2c+KDEpIgorbXNnc3RyICJCPGRlYj4oNSksIEI8ZGViLWNvbnRyb2w+KDUpLCBCPGRwa2c+KDEpLCBCPGRzZWxlY3Q+KDEpLiIKKworIy4gdHlwZTogU0gKKyM6IGRlYi12ZXJzaW9uLjU6MTIwIGRwa2cuMTo3ODMgZHBrZy1idWlsZHBhY2thZ2UuMToyNTcgZHBrZy1kaXN0YWRkZmlsZS4xOjQ3CisjOiBkcGtnLWdlbmNoYW5nZXMuMToxNDggZHBrZy1nZW5jb250cm9sLjE6MTQyIGRwa2ctZ2Vuc3ltYm9scy4xOjQ2MAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxMjggZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjEyMworIzogZHBrZy1zaGxpYmRlcHMuMTozMjkgZHBrZy1zb3VyY2UuMTo3MzAgZHNlbGVjdC4xOjQ1MQorIzogc3RhcnQtc3RvcC1kYWVtb24uODozMjMgdXBkYXRlLWFsdGVybmF0aXZlcy44OjQ5NAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJBVVRIT1JTIgorbXNnc3RyICJTWkVSWsWQIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjEyMgorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAxOTk2LDE5OTcsMTk5OCBJYW4gSmFja3NvbiBhbmQgQ2hyaXN0aWFuIFNjaHdhcnoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNToxMjQgZHBrZy1idWlsZHBhY2thZ2UuMToyNjMKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAwNyBGcmFuayBMaWNodGVuaGVsZCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjEyNiBkZWItc3Vic3R2YXJzLjU6MTY3IGRwa2ctYnVpbGRmbGFncy4xOjI3MworIzogZHBrZy1idWlsZHBhY2thZ2UuMToyNjcgZHBrZy1jaGVja2J1aWxkZGVwcy4xOjQ0IGRwa2ctZGlzdGFkZGZpbGUuMTo1MworIzogZHBrZy1kZWIuMToyNjkgZHBrZy1kaXZlcnQuODoxMzkgZHBrZy1nZW5jaGFuZ2VzLjE6MTU0CisjOiBkcGtnLWdlbmNvbnRyb2wuMToxNTAgZHBrZy1nZW5zeW1ib2xzLjE6NDY0IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MTM5CisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjcxIGRwa2ctbmFtZS4xOjEwOCBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTMxCisjOiBkcGtnLXF1ZXJ5LjE6MjE5IGRwa2ctc2hsaWJkZXBzLjE6MzM5IGRwa2ctc291cmNlLjE6NzM4IGRwa2ctc3BsaXQuMToyMjcKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6OTEgZHBrZy12ZW5kb3IuMTo1MyB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NTAxCisjLCBmdXp6eQorbXNnaWQgIiIKKyJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgdmVyc2lvbiAyIG9yIGxhdGVyICIKKyJmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyBXQVJSQU5UWS4iCittc2dzdHIgIiIKKyJBIEI8ZHBrZy1kZWI+IMOpcyBlIG1hbm9sZGFsIHN6ZXJ6xZFqZSBJYW4gSmFja3Nvbi4gIMWQIGFkdGEgaG96esOhIGEgQ29weXJpZ2h0ICIKKyIoQykxOTk1LTE5OTYgYmVqZWd5esOpc3Qgw6lzIGFkdGEga2kgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgYWxhdHQ7IE5JTkNTICIKKyJHQVJBTkNJQS4gTMOhc2QgYSBJPC91c3Ivc2hhcmUvZG9jL2Rwa2cvY29weXJpZ2h0PiDDqXMgSTwvdXNyL3NoYXJlL2NvbW1vbi0iCisibGljZW5zZXMvR1BMPiBmw6FqbHQgYSByw6lzemxldGVrw6lydC4iCisKKyMuIHR5cGU6IFRICisjOiBkZWItb2xkLjU6MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJkZWItb2xkIgorbXNnc3RyICJkZWItY29udHJvbCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW9sZC41OjQKK21zZ2lkICJkZWItb2xkIC0gb2xkIHN0eWxlIERlYmlhbiBiaW5hcnkgcGFja2FnZSBmb3JtYXQiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW9sZC41OjE3Cittc2dpZCAiIgorIlRoZSBCPC5kZWI+IGZvcm1hdCBpcyB0aGUgRGViaWFuIGJpbmFyeSBwYWNrYWdlIGZpbGUgZm9ybWF0LiBUaGlzIG1hbnVhbCAiCisicGFnZSBkZXNjcmliZXMgdGhlIEI8b2xkPiBmb3JtYXQsIHVzZWQgYmVmb3JlIERlYmlhbiAwLjkzLiBQbGVhc2Ugc2VlIEI8ZGViPiIKKyIoNSkgIGZvciBkZXRhaWxzIG9mIHRoZSBuZXcgZm9ybWF0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb2xkLjU6MjEKK21zZ2lkICIiCisiVGhlIGZpbGUgaXMgdHdvIGxpbmVzIG9mIGZvcm1hdCBpbmZvcm1hdGlvbiBhcyBBU0NJSSB0ZXh0LCBmb2xsb3dlZCBieSB0d28gIgorImNvbmNhdGVuYXRlZCBnemlwcGVkIHVzdGFyIGZpbGVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb2xkLjU6MjUKK21zZ2lkICIiCisiVGhlIGZpcnN0IGxpbmUgaXMgdGhlIGZvcm1hdCB2ZXJzaW9uIG51bWJlciBwYWRkZWQgdG8gOCBkaWdpdHMsIGFuZCBpcyAiCisiQjwwLjkzOTAwMD4gZm9yIGFsbCBvbGQtZm9ybWF0IGFyY2hpdmVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb2xkLjU6MjgKK21zZ2lkICIiCisiVGhlIHNlY29uZCBsaW5lIGlzIGEgZGVjaW1hbCBzdHJpbmcgKHdpdGhvdXQgbGVhZGluZyB6ZXJvZXMpIGdpdmluZyB0aGUgIgorImxlbmd0aCBvZiB0aGUgZmlyc3QgZ3ppcHBlZCB0YXJmaWxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb2xkLjU6MzAKK21zZ2lkICJFYWNoIG9mIHRoZXNlIGxpbmVzIGlzIHRlcm1pbmF0ZWQgd2l0aCBhIHNpbmdsZSBuZXdsaW5lIGNoYXJhY3Rlci4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW9sZC41OjM1Cittc2dpZCAiIgorIlRoZSBmaXJzdCB0YXJmaWxlIGNvbnRhaW5zIHRoZSBjb250cm9sIGluZm9ybWF0aW9uLCBhcyBhIHNlcmllcyBvZiBvcmRpbmFyeSAiCisiZmlsZXMuIFRoZSBmaWxlIEI8Y29udHJvbD4gbXVzdCBiZSBwcmVzZW50LCBhcyBpdCBjb250YWlucyB0aGUgY29yZSBjb250cm9sICIKKyJpbmZvcm1hdGlvbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW9sZC41OjQ2Cittc2dpZCAiIgorIkluIHNvbWUgdmVyeSBvbGQgYXJjaGl2ZXMsIHRoZSBmaWxlcyBpbiB0aGUgY29udHJvbCB0YXJmaWxlIG1heSBvcHRpb25hbGx5ICIKKyJiZSBpbiBhIEI8REVCSUFOPiBzdWJkaXJlY3RvcnkuIEluIHRoYXQgY2FzZSwgdGhlIEI8REVCSUFOPiBzdWJkaXJlY3RvcnkgIgorIndpbGwgYmUgaW4gdGhlIGNvbnRyb2wgdGFyZmlsZSB0b28sIGFuZCB0aGUgY29udHJvbCB0YXJmaWxlIHdpbGwgaGF2ZSBvbmx5ICIKKyJmaWxlcyBpbiB0aGF0IGRpcmVjdG9yeS4gT3B0aW9uYWxseSB0aGUgY29udHJvbCB0YXJmaWxlIG1heSBjb250YWluIGFuIGVudHJ5ICIKKyJmb3IgYEI8Lj4nLCB0aGF0IGlzLCB0aGUgY3VycmVudCBkaXJlY3RvcnkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vbGQuNTo1MAorbXNnaWQgIiIKKyJUaGUgc2Vjb25kIGd6aXBwZWQgdGFyZmlsZSBpcyB0aGUgZmlsZXN5c3RlbSBhcmNoaXZlLCBjb250YWluaW5nIHBhdGhuYW1lcyAiCisicmVsYXRpdmUgdG8gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoZSBzeXN0ZW0gdG8gYmUgaW5zdGFsbGVkIG9uLiBUaGUgIgorInBhdGhuYW1lcyBkbyBub3QgaGF2ZSBsZWFkaW5nIHNsYXNoZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vbGQuNTo1NAorIywgZnV6enkKK21zZ2lkICJCPGRlYj4oNSksIEI8ZHBrZy1kZWI+KDEpLCBCPGRlYi1jb250cm9sPig1KS4iCittc2dzdHIgIkI8ZGViPig1KSwgQjxkcGtnPigxKSwgQjxkcGtnLWRlYj4oMSkuIgorCisjLiB0eXBlOiBUSAorIzogZGViLW92ZXJyaWRlLjU6MTUKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiZGViLW92ZXJyaWRlIgorbXNnc3RyICJkZWItY29udHJvbCIKKworIy4gdHlwZTogVEgKKyM6IGRlYi1vdmVycmlkZS41OjE1IGRlYi1leHRyYS1vdmVycmlkZS41OjEgZGViLXNobGlicy41OjE2IGRlYi1zdWJzdHZhcnMuNToyCisjOiBkZWItc3ltYm9scy41OjIgZGViLXRyaWdnZXJzLjU6MSBkcGtnLWFyY2hpdGVjdHVyZS4xOjEKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MSBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6MSBkcGtnLWRpc3RhZGRmaWxlLjE6MQorIzogZHBrZy1kaXZlcnQuODoxIGRwa2ctZ2VuY2hhbmdlcy4xOjEgZHBrZy1nZW5jb250cm9sLjE6MSBkcGtnLWdlbnN5bWJvbHMuMToyCisjOiBkcGtnLW5hbWUuMTo2IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxIGRwa2ctc2NhbnBhY2thZ2VzLjE6MTUKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMToxIGRwa2ctc2hsaWJkZXBzLjE6MSBkcGtnLXNvdXJjZS4xOjIgZHBrZy1zcGxpdC4xOjIKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6MSBzdGFydC1zdG9wLWRhZW1vbi44OjEgdXBkYXRlLWFsdGVybmF0aXZlcy44OjgKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiZHBrZyB1dGlsaXRpZXMiCittc2dzdHIgImRwa2cga8Opc3psZXQiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vdmVycmlkZS41OjE4Cittc2dpZCAiZGViLW92ZXJyaWRlIC0gRGViaWFuIGFyY2hpdmUgb3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb3ZlcnJpZGUuNToyMSBkZWItZXh0cmEtb3ZlcnJpZGUuNTo3Cittc2dpZCAib3ZlcnJpZGUiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW92ZXJyaWRlLjU6MjcKK21zZ2lkICIiCisiV2hpbGUgbW9zdCBpbmZvcm1hdGlvbiBhYm91dCBhIHBhY2thZ2UgY2FuIGJlIGZvdW5kIGluIHRoZSBjb250cm9sIGZpbGUsICIKKyJzb21lIGlzIG1hbmFnZWQgY2VudHJhbGx5IGJ5IHRoZSBkaXN0cmlidXRpb24gY3phcnMgcmF0aGVyIHRoYW4gYnkgdGhlICIKKyJtYWludGFpbmVyIGluIG9yZGVyIHRvIG9mZmVyIHNvbWUgZ2xvYmFsIGNvbnNpc3RlbmN5LiAgVGhpcyBpbmZvcm1hdGlvbiBpcyAiCisiZm91bmQgaW4gdGhlIG92ZXJyaWRlIGZpbGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vdmVycmlkZS41OjMxCittc2dpZCAiIgorIlRoZSBvdmVycmlkZSBmaWxlIGhhcyBhIHNpbXBsZSB3aGl0ZXNwYWNlLWRlbGltaXRlZCBmb3JtYXQuIENvbW1lbnRzIGFyZSAiCisiYWxsb3dlZCAoZGVub3RlZCB3aXRoIGEgQjwjPikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vdmVycmlkZS41OjM3Cittc2dpZCAiSTxwYWNrYWdlPiBJPHByaW9yaXR5PiBJPHNlY3Rpb24+IFtJPG1haW50YWluZXJpbmZvPl0iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW92ZXJyaWRlLjU6NDIKK21zZ2lkICIiCisiSTxwYWNrYWdlPiBpcyB0aGUgbmFtZSBvZiB0aGUgcGFja2FnZS4gRW50cmllcyBpbiB0aGUgb3ZlcnJpZGUgZmlsZSBmb3IgIgorInBhY2thZ2VzIG5vdCBmb3VuZCBpbiB0aGUgdHJlZSBvZiBiaW5hcnkgcGFja2FnZXMgYXJlIGlnbm9yZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vdmVycmlkZS41OjQ4Cittc2dpZCAiIgorIkk8cHJpb3JpdHk+IGFuZCBJPHNlY3Rpb24+IGNvcnJlc3BvbmQgdG8gdGhlIHJlc3BlY3RpdmUgY29udHJvbCBmaWVsZHMgIgorImF2YWlsYWJsZSBpbiB0aGUgLmRlYi4gVGhlIGFsbG93ZWQgdmFsdWVzIGFyZSBsaXN0ZWQgaW4gdGhlIERlYmlhbiBwb2xpY3kuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vdmVycmlkZS41OjU2Cittc2dpZCAiIgorIkk8bWFpbnRhaW5lcmluZm8+LCBpZiBwcmVzZW50LCBjYW4gYmUgZWl0aGVyIHRoZSBuYW1lIG9mIGEgbWFpbnRhaW5lciBmb3IgYW4gIgorInVuY29uZGl0aW9uYWwgb3ZlcnJpZGUsIG9yIGVsc2UgSTxvbGRtYWludGFpbmVyPiBCPD1FPGd0Pj4gSTxuZXdtYWludGFpbmVyPiAiCisidG8gcGVyZm9ybSBhIHN1YnN0aXR1dGlvbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW92ZXJyaWRlLjU6NjEKK21zZ2lkICIiCisiVGhlIG92ZXJyaWRlIGZpbGVzIHVzZWQgdG8gbWFrZSB0aGUgb2ZmaWNpYWwgUGFja2FnZXMgbGlzdHMgbWF5IGJlIGZvdW5kIGluICIKKyJ0aGUgSTxpbmRpY2VzPiBkaXJlY3Rvcnkgb24gYW55IERlYmlhbiBtaXJyb3IuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vdmVycmlkZS41OjY2CisjLCBmdXp6eQorbXNnaWQgIiIKKyJCPGRwa2ctc2NhbnBhY2thZ2VzPigxKSwgQjxkcGtnLXNjYW5zb3VyY2VzPigxKSwgQjxhcHQtZnRwYXJjaGl2ZT4oMSksIEI8LyIKKyJ1c3Ivc2hhcmUvZG9jL2RlYmlhbi1wb2xpY3kvcG9saWN5Lmh0bWwvaW5kZXguaHRtbD4uIgorbXNnc3RyICJCPGRlYj4oNSksIEI8ZHBrZz4oMSksIEI8ZHBrZy1kZWI+KDEpLiIKKworIy4gdHlwZTogVEgKKyM6IGRlYi1leHRyYS1vdmVycmlkZS41OjEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiZGViLWV4dHJhLW92ZXJyaWRlIgorbXNnc3RyICJkZWItY29udHJvbCIKKworIy4gdHlwZTogVEgKKyM6IGRlYi1leHRyYS1vdmVycmlkZS41OjEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiMjAwOS0wOC0xNiIKK21zZ3N0ciAiMjAwNi0wMi0yOCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWV4dHJhLW92ZXJyaWRlLjU6NAorbXNnaWQgImRlYi1leHRyYS1vdmVycmlkZSAtIERlYmlhbiBhcmNoaXZlIGV4dHJhIG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWV4dHJhLW92ZXJyaWRlLjU6MTIKK21zZ2lkICIiCisiV2hpbGUgbW9zdCBpbmZvcm1hdGlvbiBhYm91dCBhIGJpbmFyeS9zb3VyY2UgcGFja2FnZSBjYW4gYmUgZm91bmQgaW4gdGhlICIKKyJjb250cm9sLy5kc2MgZmlsZSwgYWxsIG9mIGl0IGNhbiBiZSBvdmVycmlkZGVuIHdoZW4gaXQncyBleHBvcnRlZCB0byAiCisiUGFja2FnZXMvU291cmNlcyBmaWxlcy4gVGhlIGV4dHJhIG92ZXJyaWRlIGZpbGUgY29udGFpbnMgdGhvc2Ugb3ZlcnJpZGVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItZXh0cmEtb3ZlcnJpZGUuNToxNgorbXNnaWQgIiIKKyJUaGUgZXh0cmEgb3ZlcnJpZGUgZmlsZSBoYXMgYSBzaW1wbGUgd2hpdGVzcGFjZS1kZWxpbWl0ZWQgZm9ybWF0LiBDb21tZW50cyAiCisiYXJlIGFsbG93ZWQgKGRlbm90ZWQgd2l0aCBhIEI8Iz4pLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItZXh0cmEtb3ZlcnJpZGUuNToyMQorbXNnaWQgIkk8cGFja2FnZT4gSTxmaWVsZC1uYW1lPiBJPHZhbHVlPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItZXh0cmEtb3ZlcnJpZGUuNToyNQorbXNnaWQgIkk8cGFja2FnZT4gaXMgdGhlIG5hbWUgb2YgdGhlIGJpbmFyeS9zb3VyY2UgcGFja2FnZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWV4dHJhLW92ZXJyaWRlLjU6MzEKK21zZ2lkICIiCisiSTxmaWVsZC1uYW1lPiBpcyB0aGUgbmFtZSBvZiB0aGUgZmllbGQgdGhhdCBpcyBvdmVycmlkZGVuLiAgSTx2YWx1ZT4gaXMgdGhlICIKKyJ2YWx1ZSB0byBwdXQgaW4gdGhlIGZpZWxkLiBJdCBjYW4gY29udGFpbiBzcGFjZXMgYXMgdGhlIGxpbmUgaXMgc3BsaXQgaW4gbm8gIgorIm1vcmUgdGhhbiAzIGNvbHVtbnMgd2hlbiBpdCdzIHBhcnNlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWV4dHJhLW92ZXJyaWRlLjU6MzYKK21zZ2lkICIiCisiVGhlIGV4dHJhIG92ZXJyaWRlIGZpbGVzIHVzZWQgdG8gbWFrZSB0aGUgb2ZmaWNpYWwgUGFja2FnZXMgbGlzdHMgbWF5IGJlICIKKyJmb3VuZCBpbiB0aGUgSTxpbmRpY2VzPiBkaXJlY3Rvcnkgb24gYW55IERlYmlhbiBtaXJyb3IuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1leHRyYS1vdmVycmlkZS41OjQwCisjLCBmdXp6eQorbXNnaWQgIkI8ZHBrZy1zY2FucGFja2FnZXM+KDEpLCBCPGRwa2ctc2NhbnNvdXJjZXM+KDEpLCBCPGFwdC1mdHBhcmNoaXZlPigxKS4iCittc2dzdHIgIkI8ZGViPig1KSwgQjxkcGtnPigxKSwgQjxkcGtnLWRlYj4oMSkuIgorCisjLiB0eXBlOiBUSAorIzogZGViLXNobGlicy41OjE2CisjLCBuby13cmFwCittc2dpZCAiZGViLXNobGlicyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUSAorIzogZGViLXNobGlicy41OjE2CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIjIwMDgtMDItMTciCittc2dzdHIgIjIwMDYtMDItMjgiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zaGxpYnMuNToxOQorbXNnaWQgImRlYi1zaGxpYnMgLSBEZWJpYW4gc2hhcmVkIGxpYnJhcnkgaW5mb3JtYXRpb24gZmlsZSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc2hsaWJzLjU6MjkKK21zZ2lkICIiCisiQjxzaGxpYnM+IGZpbGVzIG1hcCBzaGFyZWQgbGlicmFyeSBuYW1lcyBhbmQgdmVyc2lvbnMgKEk8c29uYW1lcz4pICB0byAiCisiZGVwZW5kZW5jaWVzIHN1aXRhYmxlIGZvciBhIHBhY2thZ2UgY29udHJvbCBmaWxlLiAgVGhlcmUgaXMgb25lIGVudHJ5IHBlciAiCisibGluZS4gQmxhbmsgbGluZXMgYXJlIEI8bm90PiBhbGxvd2VkLiAgTGluZXMgYmVnaW5uaW5nIHdpdGggYW4gQjwjPiAiCisiY2hhcmFjdGVyIGFyZSBjb25zaWRlcmVkIGNvbW1lbnRhcnksIGFuZCBhcmUgaWdub3JlZC4gIEFsbCBvdGhlciBsaW5lcyBtdXN0ICIKKyJoYXZlIHRoZSBmb3JtYXQiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNobGlicy41OjM0Cittc2dpZCAiW0k8dHlwZT5CPDo+XSBJPGxpYnJhcnk+IEk8dmVyc2lvbj4gSTxkZXBlbmRlbmNpZXM+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zaGxpYnMuNTozOAorbXNnaWQgIiIKKyJUaGUgSTxsaWJyYXJ5PiBhbmQgSTx2ZXJzaW9uPiBmaWVsZHMgYXJlIHdoaXRlc3BhY2UtZGVsaW1pdGVkLCBidXQgdGhlICIKKyJJPGRlcGVuZGVuY2llcz4gZmllbGQgZXh0ZW5kcyB0byB0aGUgZW5kIG9mIHRoZSBsaW5lLiAgVGhlIEk8dHlwZT4gZmllbGQgaXMgIgorIm9wdGlvbmFsIGFuZCBub3JtYWxseSBub3QgbmVlZGVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc2hsaWJzLjU6NDAKK21zZ2lkICJTZWUgdGhlIERlYmlhbiBQb2xpY3kgTWFudWFsIGZvciBmdXJ0aGVyIGRldGFpbHMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkZWItc2hsaWJzLjU6NDEgZGViLXN5bWJvbHMuNTo0MyBkcGtnLjE6NzE0IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjYyCisjOiBkcGtnLWRpdmVydC44OjkxIGRwa2ctbmFtZS4xOjY1IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0NTkKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiRVhBTVBMRVMiCittc2dzdHIgIlDDiUxEQSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNobGlicy41OjUwCittc2dpZCAiIgorIlRoZSBCPHNobGlicz4gZmlsZSBmb3IgYSB0eXBpY2FsIGxpYnJhcnkgcGFja2FnZSwgbmFtZWQgSTxsaWJjcnVuY2gxPiwgdGhhdCAiCisicHJvdmlkZXMgb25lIGxpYnJhcnkgd2hvc2Ugc29uYW1lIGlzIEk8bGliY3J1bmNoLnNvLjE+LCBtaWdodCByZWFkIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zaGxpYnMuNTo1MgorbXNnaWQgImxpYmNydW5jaCAxIGxpYmNydW5jaDEgKEU8Z3Q+PSAxLjItMSkiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNobGlicy41OjYwCittc2dpZCAiIgorIlRoZSBJPGRlcGVuZGVuY2llcz4gbXVzdCBtZW50aW9uIHRoZSBtb3N0IHJlY2VudCB2ZXJzaW9uIG9mIHRoZSBwYWNrYWdlIHRoYXQgIgorImFkZGVkIG5ldyBzeW1ib2xzIHRvIHRoZSBsaWJyYXJ5OiBpbiB0aGUgYWJvdmUgZXhhbXBsZSwgbmV3IHN5bWJvbHMgd2VyZSAiCisiYWRkZWQgdG8gdmVyc2lvbiAxLjIgb2YgSTxsaWJjcnVuY2g+LiAgVGhpcyBpcyBub3QgdGhlIG9ubHkgcmVhc29uIHRoZSAiCisiZGVwZW5kZW5jaWVzIG1pZ2h0IG5lZWQgdG8gYmUgdGlnaHRlbmVkOyBhZ2Fpbiwgc2VlIHRoZSBEZWJpYW4gUG9saWN5IE1hbnVhbCAiCisiZm9yIGRldGFpbHMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zaGxpYnMuNTo2MworIywgZnV6enkKK21zZ2lkICJCPGRwa2ctc2hsaWJkZXBzPigxKSwgQjxkZWItc3ltYm9scz4oNSkuIgorbXNnc3RyICJCPGRwa2c+KDEpLiIKKworIy4gdHlwZTogVEgKKyM6IGRlYi1zdWJzdHZhcnMuNToyCisjLCBuby13cmFwCittc2dpZCAiZGViLXN1YnN0dmFycyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUSAorIzogZGViLXN1YnN0dmFycy41OjIKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiMjAwOS0wNy0xNSIKK21zZ3N0ciAiMjAwNi0wMi0yOCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjUKK21zZ2lkICJkZWItc3Vic3R2YXJzIC0gRGViaWFuIHNvdXJjZSBzdWJzdGl0dXRpb24gdmFyaWFibGVzIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNTo4CisjLCBmdXp6eQorbXNnaWQgInN1YnN0dmFycyIKK21zZ3N0ciAiQjwtLWZzeXMtdGFyZmlsZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToxOQorbXNnaWQgIiIKKyJCZWZvcmUgQjxkcGtnLXNvdXJjZT4sIEI8ZHBrZy1nZW5jb250cm9sPiBhbmQgQjxkcGtnLWdlbmNoYW5nZXM+IHdyaXRlIHRoZWlyICIKKyJjb250cm9sIGluZm9ybWF0aW9uICh0byB0aGUgc291cmNlIGNvbnRyb2wgZmlsZSBCPC5kc2M+IGZvciBCPGRwa2ctc291cmNlPiAiCisiYW5kIHRvIHN0YW5kYXJkIG91dHB1dCBmb3IgQjxkcGtnLWdlbmNvbnRyb2w+IGFuZCBCPGRwa2ctZ2VuY2hhbmdlcz4pICB0aGV5ICIKKyJwZXJmb3JtIHNvbWUgdmFyaWFibGUgc3Vic3RpdHV0aW9ucyBvbiB0aGUgb3V0cHV0IGZpbGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToyNgorbXNnaWQgIiIKKyJBIHZhcmlhYmxlIHN1YnN0aXR1dGlvbiBoYXMgdGhlIGZvcm0gQjwkez5JPHZhcmlhYmxlLW5hbWU+Qjx9Pi4gIFZhcmlhYmxlICIKKyJuYW1lcyBjb25zaXN0IG9mIGFscGhhbnVtZXJpY3MsIGh5cGhlbnMgYW5kIGNvbG9ucyBhbmQgc3RhcnQgd2l0aCBhbiAiCisiYWxwaGFudW1lcmljLiBWYXJpYWJsZSBzdWJzdGl0dXRpb25zIGFyZSBwZXJmb3JtZWQgcmVwZWF0ZWRseSB1bnRpbCBub25lIGFyZSAiCisibGVmdDsgdGhlIGZ1bGwgdGV4dCBvZiB0aGUgZmllbGQgYWZ0ZXIgdGhlIHN1YnN0aXR1dGlvbiBpcyByZXNjYW5uZWQgdG8gbG9vayAiCisiZm9yIG1vcmUgc3Vic3RpdHV0aW9ucy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjMzCittc2dpZCAiIgorIkFmdGVyIGFsbCB0aGUgc3Vic3RpdHV0aW9ucyBoYXZlIGJlZW4gZG9uZSBlYWNoIG9jY3VycmVuY2Ugb2YgdGhlIHN0cmluZyBCPCIKKyIke30+ICh3aGljaCBpcyBub3QgYSBsZWdhbCBzdWJzdGl0dXRpb24pIGlzIHJlcGxhY2VkIHdpdGggYSBCPCQ+IHNpZ24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNTozOAorbXNnaWQgIiIKKyJXaGlsZSB2YXJpYWJsZSBzdWJzdGl0dXRpb24gaXMgZG9uZSBvbiBhbGwgY29udHJvbCBmaWVsZHMsIHNvbWUgb2YgdGhvc2UgIgorImZpZWxkcyBhcmUgdXNlZCBhbmQgbmVlZGVkIGR1cmluZyB0aGUgYnVpbGQgd2hlbiB0aGUgc3Vic3RpdHV0aW9uIGRpZCBub3QgIgorInlldCBvY2N1ci4gVGhhdCdzIHdoeSB5b3UgY2FuJ3QgdXNlIHZhcmlhYmxlcyBpbiB0aGUgQjxQYWNrYWdlPiwgQjxTb3VyY2U+ICIKKyJhbmQgQjxBcmNoaXRlY3R1cmU+IGZpZWxkcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjQ1Cittc2dpZCAiIgorIlZhcmlhYmxlIHN1YnN0aXR1dGlvbiBoYXBwZW5zIG9uIHRoZSBjb250ZW50IG9mIHRoZSBmaWVsZHMgYWZ0ZXIgdGhleSBoYXZlICIKKyJiZWVuIHBhcnNlZCwgdGh1cyBpZiB5b3Ugd2FudCBhIHZhcmlhYmxlIHRvIGV4cGFuZCBvdmVyIG11bHRpcGxlIGxpbmVzIHlvdSAiCisiZG8gbm90IGhhdmUgdG8gaW5jbHVkZSBhIHNwYWNlIGFmdGVyIHRoZSBuZXdsaW5lLiBUaGlzIGlzIGRvbmUgaW1wbGljaXRseSAiCisid2hlbiB0aGUgZmllbGQgaXMgb3V0cHV0LiBGb3IgZXhhbXBsZSwgaWYgdGhlIHZhcmlhYmxlIEI8JHtEZXNjcmlwdGlvbn0+IGlzICIKKyJzZXQgdG8gXCJmb28gaXMgYmFyLiR7TmV3bGluZX1mb28gaXMgZ3JlYXQuXCIgYW5kIGlmIHlvdSBoYXZlIHRoZSBmb2xsb3dpbmcgIgorImZpZWxkOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6NTAKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiIERlc2NyaXB0aW9uOiBmb28gYXBwbGljYXRpb25cbiIKKyIgICR7RGVzY3JpcHRpb259XG4iCisiICAuXG4iCisiICBNb3JlIHRleHQuXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjUyCittc2dpZCAiSXQgd2lsbCByZXN1bHQgaW46IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNTo1OAorIywgbm8td3JhcAorbXNnaWQgIiIKKyIgRGVzY3JpcHRpb246IGZvbyBhcHBsaWNhdGlvblxuIgorIiAgZm9vIGlzIGJhci5cbiIKKyIgIGZvbyBpcyBncmVhdC5cbiIKKyIgIC5cbiIKKyIgIE1vcmUgdGV4dC5cbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6NzEKK21zZ2lkICIiCisiVmFyaWFibGVzIGNhbiBiZSBzZXQgdXNpbmcgdGhlIEI8LVY+IGNvbW1vbiBvcHRpb24uIFRoZXkgY2FuIGJlIGFsc28gIgorInNwZWNpZmllZCBpbiB0aGUgZmlsZSBCPGRlYmlhbi9zdWJzdHZhcnM+IChvciB3aGF0ZXZlciBvdGhlciBmaWxlIGlzICIKKyJzcGVjaWZpZWQgdXNpbmcgdGhlIEI8LVQ+IG9wdGlvbikuIFRoaXMgZmlsZSBjb25zaXN0cyBvZiBsaW5lcyBvZiB0aGUgZm9ybSAiCisiSTxuYW1lPkI8PT5JPHZhbHVlPi4gIFRyYWlsaW5nIHdoaXRlc3BhY2Ugb24gZWFjaCBsaW5lLCBibGFuayBsaW5lcywgYW5kICIKKyJsaW5lcyBzdGFydGluZyB3aXRoIGEgQjwjPiBzeW1ib2wgKGNvbW1lbnRzKSBhcmUgaWdub3JlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjczCittc2dpZCAiQWRkaXRpb25hbGx5LCB0aGUgZm9sbG93aW5nIHN0YW5kYXJkIHZhcmlhYmxlcyBhcmUgYXZhaWxhYmxlOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLXN1YnN0dmFycy41OjczCisjLCBuby13cmFwCittc2dpZCAiQjxBcmNoPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6NzcKK21zZ2lkICJUaGUgY3VycmVudCBidWlsZCBhcmNoaXRlY3R1cmUgKGZyb20gQjxkcGtnIC0tcHJpbnQtYXJjaGl0ZWN0dXJlPikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3Vic3R2YXJzLjU6NzcKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxzb3VyY2U6VmVyc2lvbj4iCittc2dzdHIgIkI8LS12ZXJzaW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjgwCittc2dpZCAiVGhlIHNvdXJjZSBwYWNrYWdlIHZlcnNpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3Vic3R2YXJzLjU6ODAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHNvdXJjZTpVcHN0cmVhbS1WZXJzaW9uPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6ODQKK21zZ2lkICIiCisiVGhlIHVwc3RyZWFtIHNvdXJjZSBwYWNrYWdlIHZlcnNpb24sIGluY2x1ZGluZyB0aGUgRGViaWFuIHZlcnNpb24gZXBvY2ggaWYgIgorImFueS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zdWJzdHZhcnMuNTo4NAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPGJpbmFyeTpWZXJzaW9uPiIKK21zZ3N0ciAiQjwtLXZlcnNpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6ODgKK21zZ2lkICIiCisiVGhlIGJpbmFyeSBwYWNrYWdlIHZlcnNpb24gKHdoaWNoIG1heSBkaWZmZXIgZnJvbSBzb3VyY2U6VmVyc2lvbiBpbiBhIGJpbk5NVSAiCisiZm9yIGV4YW1wbGUpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLXN1YnN0dmFycy41Ojg4CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8U291cmNlLVZlcnNpb24+IgorbXNnc3RyICJCPC0tdmVyc2lvbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNTo5MworbXNnaWQgIiIKKyJUaGUgc291cmNlIHBhY2thZ2UgdmVyc2lvbiAoZnJvbSB0aGUgY2hhbmdlbG9nIGZpbGUpLiBUaGlzIHZhcmlhYmxlIGlzIG5vdyAiCisiQjxkZXByZWNhdGVkPiBhcyBpdHMgbWVhbmluZyBpcyBkaWZmZXJlbnQgZnJvbSBpdHMgZnVuY3Rpb24sIHBsZWFzZSB1c2UgdGhlICIKKyJCPHNvdXJjZTpWZXJzaW9uPiBvciBCPGJpbmFyeTpWZXJzaW9uPiBhcyBhcHByb3ByaWF0ZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zdWJzdHZhcnMuNTo5MworIywgbm8td3JhcAorbXNnaWQgIkI8SW5zdGFsbGVkLVNpemU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToxMDIKK21zZ2lkICIiCisiVGhlIHRvdGFsIHNpemUgb2YgdGhlIHBhY2thZ2UncyBpbnN0YWxsZWQgZmlsZXMuIFRoaXMgdmFsdWUgaXMgY29waWVkIGludG8gIgorInRoZSBjb3JyZXNwb25kaW5nIGNvbnRyb2wgZmlsZSBmaWVsZDsgc2V0dGluZyBpdCB3aWxsIG1vZGlmeSB0aGUgdmFsdWUgb2YgIgorInRoYXQgZmllbGQuIElmIHRoaXMgdmFyaWFibGUgaXNuJ3Qgc2V0IEI8ZHBrZy1nZW5jb250cm9sPiB3aWxsIHVzZSBCPGR1IC1rICIKKyJkZWJpYW4vdG1wPiB0byBmaW5kIHRoZSBkZWZhdWx0IHZhbHVlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLXN1YnN0dmFycy41OjEwMgorIywgbm8td3JhcAorbXNnaWQgIkI8RXh0cmEtU2l6ZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjExMQorbXNnaWQgIiIKKyJBZGRpdGlvbmFsIGRpc2sgc3BhY2UgdXNlZCB3aGVuIHRoZSBwYWNrYWdlIGlzIGluc3RhbGxlZC4gSWYgdGhpcyB2YXJpYWJsZSAiCisiaXMgc2V0IGl0cyB2YWx1ZSBpcyBhZGRlZCB0byB0aGF0IG9mIHRoZSBCPEluc3RhbGxlZC1TaXplPiB2YXJpYWJsZSAod2hldGhlciAiCisic2V0IGV4cGxpY2l0bHkgb3IgdXNpbmcgdGhlIGRlZmF1bHQgdmFsdWUpIGJlZm9yZSBpdCBpcyBjb3BpZWQgaW50byB0aGUgIgorIkI8SW5zdGFsbGVkLVNpemU+IGNvbnRyb2wgZmlsZSBmaWVsZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zdWJzdHZhcnMuNToxMTEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPEY6Pkk8ZmllbGRuYW1lPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MTE4Cittc2dpZCAiIgorIlRoZSB2YWx1ZSBvZiB0aGUgb3V0cHV0IGZpZWxkIEk8ZmllbGRuYW1lPiAod2hpY2ggbXVzdCBiZSBnaXZlbiBpbiB0aGUgIgorImNhbm9uaWNhbCBjYXBpdGFsaXNhdGlvbikuIFNldHRpbmcgdGhlc2UgdmFyaWFibGVzIGhhcyBubyBlZmZlY3Qgb3RoZXIgdGhhbiAiCisib24gcGxhY2VzIHdoZXJlIHRoZXkgYXJlIGV4cGFuZGVkIGV4cGxpY2l0bHkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3Vic3R2YXJzLjU6MTE4CisjLCBuby13cmFwCittc2dpZCAiQjxGb3JtYXQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToxMjgKK21zZ2lkICIiCisiVGhlIEI8LmNoYW5nZXM+IGZpbGUgZm9ybWF0IHZlcnNpb24gZ2VuZXJhdGVkIGJ5IHRoaXMgdmVyc2lvbiBvZiB0aGUgc291cmNlICIKKyJwYWNrYWdpbmcgc2NyaXB0cy4gSWYgeW91IHNldCB0aGlzIHZhcmlhYmxlIHRoZSBjb250ZW50cyBvZiB0aGUgQjxGb3JtYXQ+ICIKKyJmaWVsZCBpbiB0aGUgQjwuY2hhbmdlcz4gZmlsZSB3aWxsIGNoYW5nZSB0b28uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3Vic3R2YXJzLjU6MTI4CisjLCBuby13cmFwCittc2dpZCAiQjxOZXdsaW5lPiwgQjxTcGFjZT4sIEI8VGFiPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MTMxCittc2dpZCAiVGhlc2UgdmFyaWFibGVzIGVhY2ggaG9sZCB0aGUgY29ycmVzcG9uZGluZyBjaGFyYWN0ZXIuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3Vic3R2YXJzLjU6MTMxCisjLCBuby13cmFwCittc2dpZCAiQjxzaGxpYnM6Pkk8ZGVwZW5kZW5jeWZpZWxkPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MTM1Cittc2dpZCAiIgorIlZhcmlhYmxlIHNldHRpbmdzIHdpdGggbmFtZXMgb2YgdGhpcyBmb3JtIGFyZSBnZW5lcmF0ZWQgYnkgQjxkcGtnLXNobGliZGVwcz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3Vic3R2YXJzLjU6MTM1CisjLCBuby13cmFwCittc2dpZCAiQjxkcGtnOlVwc3RyZWFtLVZlcnNpb24+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToxMzgKK21zZ2lkICJUaGUgdXBzdHJlYW0gdmVyc2lvbiBvZiBkcGtnLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLXN1YnN0dmFycy41OjEzOAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPGRwa2c6VmVyc2lvbj4iCittc2dzdHIgIkI8LS12ZXJzaW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjE0MQorbXNnaWQgIlRoZSBmdWxsIHZlcnNpb24gb2YgZHBrZy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjE0NAorbXNnaWQgIiIKKyJJZiBhIHZhcmlhYmxlIGlzIHJlZmVycmVkIHRvIGJ1dCBub3QgZGVmaW5lZCBpdCBnZW5lcmF0ZXMgYSB3YXJuaW5nIGFuZCBhbiAiCisiZW1wdHkgdmFsdWUgaXMgYXNzdW1lZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRlYi1zdWJzdHZhcnMuNToxNDUgZHBrZy4xOjYyNyBkcGtnLWFyY2hpdGVjdHVyZS4xOjI4NCBkcGtnLmNmZy41OjEyCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMjEgZHBrZy1kaXN0YWRkZmlsZS4xOjM5IGRwa2ctZGl2ZXJ0Ljg6MTIyCisjOiBkcGtnLWdlbmNoYW5nZXMuMToxMzggZHBrZy1nZW5jb250cm9sLjE6MTI4IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxMTUKKyM6IGRwa2ctc3BsaXQuMToyMDYgZHBrZy1zdGF0b3ZlcnJpZGUuODo3NCBkc2VsZWN0LmNmZy41OjEyCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzYwCisjLCBuby13cmFwCittc2dpZCAiRklMRVMiCittc2dzdHIgIkbDgUpMT0siCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3Vic3R2YXJzLjU6MTQ2CisjLCBuby13cmFwCittc2dpZCAiQjxkZWJpYW4vc3Vic3R2YXJzPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MTQ5Cittc2dpZCAiTGlzdCBvZiBzdWJzdGl0dXRpb24gdmFyaWFibGVzIGFuZCB2YWx1ZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkZWItc3Vic3R2YXJzLjU6MTUwIGRwa2cuMTo3ODAgZHBrZy1idWlsZHBhY2thZ2UuMToyNDQgZHBrZy1kZWIuMToyMzgKKyM6IGRwa2ctbmFtZS4xOjg2IGRwa2ctc291cmNlLjE6NzIyIGRwa2ctc3BsaXQuMToxOTkgZHNlbGVjdC4xOjQyOQorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQ4NgorIywgbm8td3JhcAorbXNnaWQgIkJVR1MiCittc2dzdHIgIkhJQsOBSyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjE1MyBkcGtnLXNvdXJjZS4xOjcyNQorbXNnaWQgIiIKKyJUaGUgcG9pbnQgYXQgd2hpY2ggZmllbGQgb3ZlcnJpZGluZyBvY2N1cnMgY29tcGFyZWQgdG8gY2VydGFpbiBzdGFuZGFyZCAiCisib3V0cHV0IGZpZWxkIHNldHRpbmdzIGlzIHJhdGhlciBjb25mdXNlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjE2MAorIywgZnV6enkKK21zZ2lkICIiCisiQjxkcGtnPigxKSwgQjxkcGtnLWdlbmNoYW5nZXM+KDEpLCBCPGRwa2ctZ2VuY29udHJvbD4oMSksIEI8ZHBrZy1zaGxpYmRlcHM+IgorIigxKSwgQjxkcGtnLXNvdXJjZT4oMSkuIgorbXNnc3RyICJCPGRlYj4oNSksIEI8ZGViLWNvbnRyb2w+KDUpLCBCPGRwa2c+KDEpLCBCPGRzZWxlY3Q+KDEpLiIKKworIy4gdHlwZTogU0gKKyM6IGRlYi1zdWJzdHZhcnMuNToxNjEgZHBrZy1hcmNoaXRlY3R1cmUuMTozMDMgZHBrZy5jZmcuNToxOQorIzogZHBrZy1idWlsZGZsYWdzLjE6MjY2IGRwa2ctY2hlY2tidWlsZGRlcHMuMTo0MCBkcGtnLWRlYi4xOjI2NQorIzogZHBrZy1kaXZlcnQuODoxMzUgZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTo2NiBkcGtnLW5hbWUuMToxMDQKKyM6IGRwa2ctcXVlcnkuMToyMTQgZHBrZy1zY2Fuc291cmNlcy4xOjc2IGRwa2ctc3BsaXQuMToyMjMKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6ODcgZHBrZy12ZW5kb3IuMTo0OCBkc2VsZWN0LmNmZy41OjE5CisjLCBuby13cmFwCittc2dpZCAiQVVUSE9SIgorbXNnc3RyICJTWkVSWsWQIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MTYzIGRwa2ctYnVpbGRwYWNrYWdlLjE6MjU5IGRwa2ctZGlzdGFkZGZpbGUuMTo0OQorIzogZHBrZy1kZWIuMToyNjcgZHBrZy1nZW5jaGFuZ2VzLjE6MTUwIGRwa2ctZ2VuY29udHJvbC4xOjE0NAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjEyNSBkcGtnLXNobGliZGVwcy4xOjMzMSBkcGtnLXNvdXJjZS4xOjczMgorIzogZHBrZy1zcGxpdC4xOjIyNQorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAxOTk1LTE5OTYgSWFuIEphY2tzb24iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjE2NSBkcGtnLWJ1aWxkcGFja2FnZS4xOjI2MSBkcGtnLWRpc3RhZGRmaWxlLjE6NTEKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjE1MiBkcGtnLWdlbmNvbnRyb2wuMToxNDYgZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjEyNworIzogZHBrZy1zaGxpYmRlcHMuMTozMzMgZHBrZy1zb3VyY2UuMTo3MzQgZHBrZy1zdGF0b3ZlcnJpZGUuODo4OQorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDAwIFdpY2hlcnQgQWtrZXJtYW4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVEgKKyM6IGRlYi1zeW1ib2xzLjU6MgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJkZWItc3ltYm9scyIKK21zZ3N0ciAiZGViLWNvbnRyb2wiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6NQorbXNnaWQgImRlYi1zeW1ib2xzIC0gRGViaWFuJ3MgZXh0ZW5kZWQgc2hhcmVkIGxpYnJhcnkgaW5mb3JtYXRpb24gZmlsZSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3ltYm9scy41OjgKK21zZ2lkICJzeW1ib2xzIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6MTIKK21zZ2lkICIiCisiVGhlIGZvcm1hdCBmb3IgYW4gZXh0ZW5kZWQgc2hhcmVkIGxpYnJhcnkgZGVwZW5kZW5jeSBpbmZvcm1hdGlvbiBlbnRyeSBpbiAiCisidGhlc2UgZmlsZXMgaXM6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6MTQKK21zZ2lkICJJPGxpYnJhcnktc29uYW1lIG1haW4tZGVwZW5kZW5jeS10ZW1wbGF0ZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNToxNgorbXNnaWQgIlsgfCBJPGFsdGVybmF0aXZlLWRlcGVuZGVuY3ktdGVtcGxhdGU+IF0iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNToxOAorbXNnaWQgIlsgLi4uIF0iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNToyMAorbXNnaWQgIlsgKiBJPGZpZWxkLW5hbWU+OiBJPGZpZWxkLXZhbHVlPiBdIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6MjMKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiWyAuLi4gXVxuIgorIiBJPHN5bWJvbD4gSTxtaW5pbWFsLXZlcnNpb24+WyBJPGlkLW9mLWRlcGVuZGVuY3ktdGVtcGxhdGU+IF1cbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3ltYm9scy41OjI5Cittc2dpZCAiIgorIlRoZSBJPGxpYnJhcnktc29uYW1lPiBpcyBleGFjdGx5IHRoZSB2YWx1ZSBvZiB0aGUgU09OQU1FIGZpZWxkIGFzIGV4cG9ydGVkICIKKyJieSBCPG9iamR1bXA+KDEpLiBBIEk8ZGVwZW5kZW5jeS10ZW1wbGF0ZT4gaXMgYSBkZXBlbmRlbmN5IHdoZXJlIEk8I01JTlZFUiM+ICIKKyJpcyBkeW5hbWljYWxseSByZXBsYWNlZCBlaXRoZXIgYnkgYSB2ZXJzaW9uIGNoZWNrIGxpa2UgXCIoRTxndD49IEk8bWluaW1hbC0iCisidmVyc2lvbj4pXCIgb3IgYnkgbm90aGluZyAoaWYgYW4gdW52ZXJzaW9uZWQgZGVwZW5kZW5jeSBpcyBkZWVtZWQgIgorInN1ZmZpY2llbnQpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3ltYm9scy41OjM2Cittc2dpZCAiIgorIkVhY2ggZXhwb3J0ZWQgSTxzeW1ib2w+IChsaXN0ZWQgYXMgSTxuYW1lPkBJPHZlcnNpb24+LCB3aXRoIEk8dmVyc2lvbj4gYmVpbmcgIgorIlwiQmFzZVwiIGlmIHRoZSBsaWJyYXJ5IGlzIG5vdCB2ZXJzaW9uZWQpIGlzIGFzc29jaWF0ZWQgdG8gYSBJPG1pbmltYWwtIgorInZlcnNpb24+IG9mIGl0cyBkZXBlbmRlbmN5IHRlbXBsYXRlICh0aGUgbWFpbiBkZXBlbmRlbmN5IHRlbXBsYXRlIGlzIHVzZWQgaWYgIgorIkk8aWQtb2YtZGVwZW5kZW5jeS10ZW1wbGF0ZT4gaXMgbm90IHByZXNlbnQpLiBUaGUgZmlyc3QgYWx0ZXJuYXRpdmUgIgorImRlcGVuZGVuY3kgdGVtcGxhdGUgaXMgbnVtYmVyZWQgMSwgdGhlIHNlY29uZCBvbmUgMiwgZXRjLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3ltYm9scy41OjQzCittc2dpZCAiIgorIkVhY2ggZW50cnkgZm9yIGEgbGlicmFyeSBjYW4gYWxzbyBoYXZlIHNvbWUgZmllbGRzIG9mIG1ldGEtaW5mb3JtYXRpb24uICAiCisiVGhvc2UgZmllbGRzIGFyZSBzdG9yZWQgb24gbGluZXMgc3RhcnRpbmcgd2l0aCBhbiBhc3Rlcmlzay4gQ3VycmVudGx5LCB0aGUgIgorIm9ubHkgdmFsaWQgZmllbGQgaXMgSTxCdWlsZC1EZXBlbmRzLVBhY2thZ2U+LCBpdCBpbmRpY2F0ZXMgdGhlIG5hbWUgb2YgdGhlICIKKyJcIi1kZXZcIiBwYWNrYWdlIGFzc29jaWF0ZWQgdG8gdGhlIGxpYnJhcnkgYW5kIGlzIHVzZWQgYnkgQjxkcGtnLXNobGliZGVwcz4gIgorInRvIG1ha2Ugc3VyZSB0aGF0IHRoZSBkZXBlbmRlbmN5IGdlbmVyYXRlZCBpcyBhdCBsZWFzdCBhcyBzdHJpY3QgYXMgdGhlICIKKyJjb3JyZXNwb25kaW5nIGJ1aWxkIGRlcGVuZGVuY3kuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkZWItc3ltYm9scy41OjQ0CisjLCBuby13cmFwCittc2dpZCAiU2ltcGxlIHN5bWJvbHMgZmlsZSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3ltYm9scy41OjUwCisjLCBuby13cmFwCittc2dpZCAiIgorImxpYmZ0cC5zby4zIGxpYmZ0cDMgI01JTlZFUiNcbiIKKyIgRGVmYXVsdE5ldGJ1ZkBCYXNlIDMuMS0xLTZcbiIKKyIgRnRwQWNjZXNzQEJhc2UgMy4xLTEtNlxuIgorIiBbLi4uXVxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkZWItc3ltYm9scy41OjUwCisjLCBuby13cmFwCittc2dpZCAiQWR2YW5jZWQgc3ltYm9scyBmaWxlIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6NTMKK21zZ2lkICJsaWJHTC5zby4xIGxpYmdsMSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3ltYm9scy41OjU1Cittc2dpZCAifCBsaWJnbDEtbWVzYS1nbHggI01JTlZFUiMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNTo2MQorIywgbm8td3JhcAorbXNnaWQgIiIKKyIqIEJ1aWxkLURlcGVuZHMtUGFja2FnZTogbGliZ2wxLW1lc2EtZGV2XG4iCisiIHB1YmxpY0dsU3ltYm9sQEJhc2UgNi4zLTFcbiIKKyIgWy4uLl1cbiIKKyIgaW1wbGVtZW50YXRpb25TcGVjaWZpY1N5bWJvbEBCYXNlIDYuNS4yLTcgMVxuIgorIiBbLi4uXVxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6NjMKK21zZ2lkICJCPGh0dHA6Ly93aWtpLmRlYmlhbi5vcmcvUHJvamVjdHMvSW1wcm92ZWREcGtnU2hsaWJkZXBzPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3ltYm9scy41OjY1CisjLCBmdXp6eQorbXNnaWQgIkI8ZHBrZy1zaGxpYmRlcHM+KDEpLCBCPGRwa2ctZ2Vuc3ltYm9scz4oMSkuIgorbXNnc3RyICJCPGRwa2c+KDEpLiIKKworIy4gdHlwZTogVEgKKyM6IGRlYi10cmlnZ2Vycy41OjEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiZGViLXRyaWdnZXJzIgorbXNnc3RyICJCPC0tdmVyc2lvbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi10cmlnZ2Vycy41OjQKK21zZ2lkICJkZWItdHJpZ2dlcnMgLSBwYWNrYWdlIHRyaWdnZXJzIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi10cmlnZ2Vycy41OjcKK21zZ2lkICJ0cmlnZ2VycyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdHJpZ2dlcnMuNToxMgorbXNnaWQgIiIKKyJBIHBhY2thZ2UgZGVjbGFyZXMgaXRzIHJlbGF0aW9uc2hpcCB0byBzb21lIHRyaWdnZXIocykgYnkgaW5jbHVkaW5nIGEgIgorIkk8dHJpZ2dlcnM+IGZpbGUgaW4gaXRzIGNvbnRyb2wgYXJjaGl2ZSAoaS5lLiBJPERFQklBTi90cmlnZ2Vycz4gZHVyaW5nICIKKyJwYWNrYWdlIGNyZWF0aW9uKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXRyaWdnZXJzLjU6MTYKK21zZ2lkICIiCisiVGhpcyBmaWxlIGNvbnRhaW5zIGRpcmVjdGl2ZXMsIG9uZSBwZXIgbGluZS4gTGVhZGluZyBhbmQgdHJhaWxpbmcgd2hpdGVzcGFjZSAiCisiYW5kIGV2ZXJ5dGhpbmcgYWZ0ZXIgdGhlIGZpcnN0IEI8Iz4gb24gYW55IGxpbmUgd2lsbCBiZSB0cmltbWVkLCBhbmQgZW1wdHkgIgorImxpbmVzIHdpbGwgYmUgaWdub3JlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXRyaWdnZXJzLjU6MTgKK21zZ2lkICJUaGUgdHJpZ2dlciBjb250cm9sIGRpcmVjdGl2ZXMgY3VycmVudGx5IHN1cHBvcnRlZCBhcmU6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi10cmlnZ2Vycy41OjIyCittc2dpZCAiQjxpbnRlcmVzdD4gSTx0cmlnZ2VyLW5hbWU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi10cmlnZ2Vycy41OjI2Cittc2dpZCAiQjxpbnRlcmVzdC1ub2F3YWl0PiBJPHRyaWdnZXItbmFtZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXRyaWdnZXJzLjU6MzMKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRoYXQgdGhlIHBhY2thZ2UgaXMgaW50ZXJlc3RlZCBpbiB0aGUgbmFtZWQgdHJpZ2dlci4gQWxsIHRyaWdnZXJzICIKKyJpbiB3aGljaCBhIHBhY2thZ2UgaXMgaW50ZXJlc3RlZCBtdXN0IGJlIGxpc3RlZCB1c2luZyB0aGlzIGRpcmVjdGl2ZSBpbiB0aGUgIgorInRyaWdnZXJzIGNvbnRyb2wgZmlsZS4gVGhlIFwibm9hd2FpdFwiIHZhcmlhbnQgZG9lcyBub3QgcHV0IHRoZSB0cmlnZ2VyaW5nICIKKyJwYWNrYWdlcyBpbiB0cmlnZ2Vycy1hd2FpdGVkIHN0YXRlLiBUaGlzIHNob3VsZCBiZSB1c2VkIHdoZW4gdGhlICIKKyJmdW5jdGlvbmFsaXR5IHByb3ZpZGVkIGJ5IHRoZSB0cmlnZ2VyIGlzIG5vdCBjcnVjaWFsLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdHJpZ2dlcnMuNTozNworbXNnaWQgIkI8YWN0aXZhdGU+IEk8dHJpZ2dlci1uYW1lPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdHJpZ2dlcnMuNTo0MQorbXNnaWQgIkI8YWN0aXZhdGUtbm9hd2FpdD4gSTx0cmlnZ2VyLW5hbWU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi10cmlnZ2Vycy41OjUwCittc2dpZCAiIgorIkFycmFuZ2VzIHRoYXQgY2hhbmdlcyB0byB0aGlzIHBhY2thZ2UncyBzdGF0ZSB3aWxsIGFjdGl2YXRlIHRoZSBzcGVjaWZpZWQgIgorInRyaWdnZXIuIFRoZSB0cmlnZ2VyIHdpbGwgYmUgYWN0aXZhdGVkIGF0IHRoZSBzdGFydCBvZiB0aGUgZm9sbG93aW5nICIKKyJvcGVyYXRpb25zOiB1bnBhY2ssIGNvbmZpZ3VyZSwgcmVtb3ZlIChpbmNsdWRpbmcgZm9yIHRoZSBiZW5lZml0IG9mIGEgIgorImNvbmZsaWN0aW5nIHBhY2thZ2UpLCBwdXJnZSBhbmQgZGVjb25maWd1cmUuICBUaGUgXCJub2F3YWl0XCIgdmFyaWFudCBkb2VzICIKKyJub3QgcHV0IHRoZSB0cmlnZ2VyaW5nIHBhY2thZ2VzIGluIHRyaWdnZXJzLWF3YWl0ZWQgc3RhdGUuIFRoaXMgc2hvdWxkIGJlICIKKyJ1c2VkIHdoZW4gdGhlIGZ1bmN0aW9uYWxpdHkgcHJvdmlkZWQgYnkgdGhlIHRyaWdnZXIgaXMgbm90IGNydWNpYWwuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi10cmlnZ2Vycy41OjU4Cittc2dpZCAiIgorIklmIHRoaXMgcGFja2FnZSBkaXNhcHBlYXJzIGR1cmluZyB0aGUgdW5wYWNraW5nIG9mIGFub3RoZXIgcGFja2FnZSB0aGUgIgorInRyaWdnZXIgd2lsbCBiZSBhY3RpdmF0ZWQgd2hlbiB0aGUgZGlzYXBwZWFyYW5jZSBpcyBub3RlZCB0b3dhcmRzIHRoZSBlbmQgb2YgIgorInRoZSB1bnBhY2suIFRyaWdnZXIgcHJvY2Vzc2luZywgYW5kIHRyYW5zaXRpb24gZnJvbSB0cmlnZ2Vycy1hd2FpdGVkIHRvICIKKyJpbnN0YWxsZWQsIGRvZXMgbm90IGNhdXNlIGFjdGl2YXRpb25zLiAgSW4gdGhlIGNhc2Ugb2YgdW5wYWNrLCB0cmlnZ2VycyAiCisibWVudGlvbmVkIGluIGJvdGggdGhlIG9sZCBhbmQgbmV3IHZlcnNpb25zIG9mIHRoZSBwYWNrYWdlIHdpbGwgYmUgYWN0aXZhdGVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdHJpZ2dlcnMuNTo2MQorbXNnaWQgIiIKKyJVbmtub3duIGRpcmVjdGl2ZXMgYXJlIGFuIGVycm9yIHdoaWNoIHdpbGwgcHJldmVudCBpbnN0YWxsYXRpb24gb2YgdGhlICIKKyJwYWNrYWdlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdHJpZ2dlcnMuNTo2NgorbXNnaWQgIiIKKyJUaGUgXCItbm9hd2FpdFwiIHZhcmlhbnRzIGFyZSBvbmx5IHN1cHBvcnRlZCBieSBkcGtnIDEuMTYuMSBvciBuZXdlciwgYW5kICIKKyJ3aWxsIGxlYWQgdG8gZXJyb3JzIGlmIHVzZWQgd2l0aCBhbiBvbGRlciBkcGtnLiBJdCBpcyB0aHVzIHJlY29tbWVuZGVkIHRvICIKKyJhZGQgYSBcIlByZS1EZXBlbmRzOiBkcGtnIChFPGd0Pj0gMS4xNi4xKVwiIHRvIGFueSBwYWNrYWdlIHRoYXQgd2lzaCB0byB1c2UgIgorInRob3NlIGRpcmVjdGl2ZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi10cmlnZ2Vycy41OjcwCisjLCBmdXp6eQorbXNnaWQgIiIKKyJCPGRwa2ctdHJpZ2dlcj4oMSksIEI8ZHBrZz4oMSksIEI8L3Vzci9zaGFyZS9kb2MvZHBrZy1kZXYvdHJpZ2dlcnMudHh0Lmd6Pi4iCittc2dzdHIgIkI8ZGViPig1KSwgQjxkcGtnPigxKSwgQjxkcGtnLWRlYj4oMSkuIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy4xOjEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiZHBrZyIKK21zZ3N0ciAiZHBrZy1kZWIiCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLjE6MSBkcGtnLmNmZy41OjEgZHBrZy1idWlsZGZsYWdzLjE6MSBkcGtnLWRlYi4xOjEKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MSBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjEgZHBrZy1xdWVyeS4xOjEKKyM6IGRwa2ctdHJpZ2dlci4xOjEgZHBrZy12ZW5kb3IuMToxIGRzZWxlY3QuY2ZnLjU6MQorIywgbm8td3JhcAorbXNnaWQgImRwa2cgc3VpdGUiCittc2dzdHIgImRwa2cga8Opc3psZXQiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0Cittc2dpZCAiZHBrZyAtIHBhY2thZ2UgbWFuYWdlciBmb3IgRGViaWFuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo4CisjLCBmdXp6eQorbXNnaWQgIkI8ZHBrZz4gW0k8b3B0aW9uPi4uLl0gSTxhY3Rpb24+IgorbXNnc3RyICJCPGRwa2ctZGViPiBCPC1jPnxCPC0tY29udGVudHM+IEk8YXJjaMOtdnVtPiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2cuMTo5CisjLCBuby13cmFwCittc2dpZCAiV0FSTklORyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTMKK21zZ2lkICIiCisiVGhpcyBtYW51YWwgaXMgaW50ZW5kZWQgZm9yIHVzZXJzIHdpc2hpbmcgdG8gdW5kZXJzdGFuZCBCPGRwa2c+J3MgY29tbWFuZCAiCisibGluZSBvcHRpb25zIGFuZCBwYWNrYWdlIHN0YXRlcyBpbiBtb3JlIGRldGFpbCB0aGFuIHRoYXQgcHJvdmlkZWQgYnkgQjxkcGtnICIKKyItLWhlbHA+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTgKK21zZ2lkICIiCisiSXQgc2hvdWxkIEk8bm90PiBiZSB1c2VkIGJ5IHBhY2thZ2UgbWFpbnRhaW5lcnMgd2lzaGluZyB0byB1bmRlcnN0YW5kIGhvdyAiCisiQjxkcGtnPiB3aWxsIGluc3RhbGwgdGhlaXIgcGFja2FnZXMuIFRoZSBkZXNjcmlwdGlvbnMgb2Ygd2hhdCBCPGRwa2c+IGRvZXMgIgorIndoZW4gaW5zdGFsbGluZyBhbmQgcmVtb3ZpbmcgcGFja2FnZXMgYXJlIHBhcnRpY3VsYXJseSBpbmFkZXF1YXRlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MjYKK21zZ2lkICIiCisiQjxkcGtnPiBpcyBhIHRvb2wgdG8gaW5zdGFsbCwgYnVpbGQsIHJlbW92ZSBhbmQgbWFuYWdlIERlYmlhbiBwYWNrYWdlcy4gVGhlICIKKyJwcmltYXJ5IGFuZCBtb3JlIHVzZXItZnJpZW5kbHkgZnJvbnQtZW5kIGZvciBCPGRwa2c+IGlzIEI8YXB0aXR1ZGU+KDEpLiAiCisiQjxkcGtnPiBpdHNlbGYgaXMgY29udHJvbGxlZCBlbnRpcmVseSB2aWEgY29tbWFuZCBsaW5lIHBhcmFtZXRlcnMsIHdoaWNoICIKKyJjb25zaXN0IG9mIGV4YWN0bHkgb25lIGFjdGlvbiBhbmQgemVybyBvciBtb3JlIG9wdGlvbnMuIFRoZSBhY3Rpb24tcGFyYW1ldGVyICIKKyJ0ZWxscyBCPGRwa2c+IHdoYXQgdG8gZG8gYW5kIG9wdGlvbnMgY29udHJvbCB0aGUgYmVoYXZpb3Igb2YgdGhlIGFjdGlvbiBpbiAiCisic29tZSB3YXkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTozMworbXNnaWQgIiIKKyJCPGRwa2c+IGNhbiBhbHNvIGJlIHVzZWQgYXMgYSBmcm9udC1lbmQgdG8gQjxkcGtnLWRlYj4oMSkgYW5kIEI8ZHBrZy1xdWVyeT4iCisiKDEpLiBUaGUgbGlzdCBvZiBzdXBwb3J0ZWQgYWN0aW9ucyBjYW4gYmUgZm91bmQgbGF0ZXIgb24gaW4gdGhlIEI8QUNUSU9OUz4gIgorInNlY3Rpb24uIElmIGFueSBzdWNoIGFjdGlvbiBpcyBlbmNvdW50ZXJlZCBCPGRwa2c+IGp1c3QgcnVucyBCPGRwa2ctZGViPiBvciAiCisiQjxkcGtnLXF1ZXJ5PiB3aXRoIHRoZSBwYXJhbWV0ZXJzIGdpdmVuIHRvIGl0LCBidXQgbm8gc3BlY2lmaWMgb3B0aW9ucyBhcmUgIgorImN1cnJlbnRseSBwYXNzZWQgdG8gdGhlbSwgdG8gdXNlIGFueSBzdWNoIG9wdGlvbiB0aGUgYmFjay1lbmRzIG5lZWQgdG8gYmUgIgorImNhbGxlZCBkaXJlY3RseS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2cuMTozNAorIywgbm8td3JhcAorbXNnaWQgIklORk9STUFUSU9OIEFCT1VUIFBBQ0tBR0VTIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTozOQorbXNnaWQgIiIKKyJCPGRwa2c+IG1haW50YWlucyBzb21lIHVzYWJsZSBpbmZvcm1hdGlvbiBhYm91dCBhdmFpbGFibGUgcGFja2FnZXMuIFRoZSAiCisiaW5mb3JtYXRpb24gaXMgZGl2aWRlZCBpbiB0aHJlZSBjbGFzc2VzOiBCPHN0YXRlcz4sIEI8c2VsZWN0aW9uIHN0YXRlcz4gYW5kICIKKyJCPGZsYWdzPi4gVGhlc2UgdmFsdWVzIGFyZSBpbnRlbmRlZCB0byBiZSBjaGFuZ2VkIG1haW5seSB3aXRoIEI8ZHNlbGVjdD4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLjE6MzkKKyMsIG5vLXdyYXAKK21zZ2lkICJQQUNLQUdFIFNUQVRFUyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjQwCisjLCBuby13cmFwCittc2dpZCAiQjxub3QtaW5zdGFsbGVkPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDMKK21zZ2lkICJUaGUgcGFja2FnZSBpcyBub3QgaW5zdGFsbGVkIG9uIHlvdXIgc3lzdGVtLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjQzCisjLCBuby13cmFwCittc2dpZCAiQjxjb25maWctZmlsZXM+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0NgorbXNnaWQgIk9ubHkgdGhlIGNvbmZpZ3VyYXRpb24gZmlsZXMgb2YgdGhlIHBhY2thZ2UgZXhpc3Qgb24gdGhlIHN5c3RlbS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo0NgorIywgbm8td3JhcAorbXNnaWQgIkI8aGFsZi1pbnN0YWxsZWQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1MAorbXNnaWQgIiIKKyJUaGUgaW5zdGFsbGF0aW9uIG9mIHRoZSBwYWNrYWdlIGhhcyBiZWVuIHN0YXJ0ZWQsIGJ1dCBub3QgY29tcGxldGVkIGZvciBzb21lICIKKyJyZWFzb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHVucGFja2VkPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTMKK21zZ2lkICJUaGUgcGFja2FnZSBpcyB1bnBhY2tlZCwgYnV0IG5vdCBjb25maWd1cmVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjUzCisjLCBuby13cmFwCittc2dpZCAiQjxoYWxmLWNvbmZpZ3VyZWQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1NworbXNnaWQgIiIKKyJUaGUgcGFja2FnZSBpcyB1bnBhY2tlZCBhbmQgY29uZmlndXJhdGlvbiBoYXMgYmVlbiBzdGFydGVkLCBidXQgbm90IHlldCAiCisiY29tcGxldGVkIGZvciBzb21lIHJlYXNvbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo1NworIywgbm8td3JhcAorbXNnaWQgIkI8dHJpZ2dlcnMtYXdhaXRlZD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjYwCittc2dpZCAiVGhlIHBhY2thZ2UgYXdhaXRzIHRyaWdnZXIgcHJvY2Vzc2luZyBieSBhbm90aGVyIHBhY2thZ2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NjAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHRyaWdnZXJzLXBlbmRpbmc+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2MworbXNnaWQgIlRoZSBwYWNrYWdlIGhhcyBiZWVuIHRyaWdnZXJlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2MworIywgbm8td3JhcAorbXNnaWQgIkI8aW5zdGFsbGVkPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NjYKK21zZ2lkICJUaGUgcGFja2FnZSBpcyB1bnBhY2tlZCBhbmQgY29uZmlndXJlZCBPSy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2cuMTo2NgorIywgbm8td3JhcAorbXNnaWQgIlBBQ0tBR0UgU0VMRUNUSU9OIFNUQVRFUyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjY3CisjLCBuby13cmFwCittc2dpZCAiQjxpbnN0YWxsPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzAKK21zZ2lkICJUaGUgcGFja2FnZSBpcyBzZWxlY3RlZCBmb3IgaW5zdGFsbGF0aW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjcwCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8aG9sZD4iCittc2dzdHIgIkI8LS1vbGQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzQKK21zZ2lkICIiCisiQSBwYWNrYWdlIG1hcmtlZCB0byBiZSBvbiBCPGhvbGQ+IGlzIG5vdCBoYW5kbGVkIGJ5IEI8ZHBrZz4sIHVubGVzcyBmb3JjZWQgIgorInRvIGRvIHRoYXQgd2l0aCBvcHRpb24gQjwtLWZvcmNlLWhvbGQ+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjc0CisjLCBuby13cmFwCittc2dpZCAiQjxkZWluc3RhbGw+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3OAorbXNnaWQgIiIKKyJUaGUgcGFja2FnZSBpcyBzZWxlY3RlZCBmb3IgZGVpbnN0YWxsYXRpb24gKGkuZS4gd2Ugd2FudCB0byByZW1vdmUgYWxsICIKKyJmaWxlcywgZXhjZXB0IGNvbmZpZ3VyYXRpb24gZmlsZXMpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjc4CisjLCBuby13cmFwCittc2dpZCAiQjxwdXJnZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjgyCittc2dpZCAiIgorIlRoZSBwYWNrYWdlIGlzIHNlbGVjdGVkIHRvIGJlIHB1cmdlZCAoaS5lLiB3ZSB3YW50IHRvIHJlbW92ZSBldmVyeXRoaW5nIGZyb20gIgorInN5c3RlbSBkaXJlY3RvcmllcywgZXZlbiBjb25maWd1cmF0aW9uIGZpbGVzKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2cuMTo4MgorIywgbm8td3JhcAorbXNnaWQgIlBBQ0tBR0UgRkxBR1MiCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo4MworIywgbm8td3JhcAorbXNnaWQgIkI8cmVpbnN0LXJlcXVpcmVkPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6ODgKK21zZ2lkICIiCisiQSBwYWNrYWdlIG1hcmtlZCBCPHJlaW5zdC1yZXF1aXJlZD4gaXMgYnJva2VuIGFuZCByZXF1aXJlcyByZWluc3RhbGxhdGlvbi4gIgorIlRoZXNlIHBhY2thZ2VzIGNhbm5vdCBiZSByZW1vdmVkLCB1bmxlc3MgZm9yY2VkIHdpdGggb3B0aW9uIEI8LS1mb3JjZS1yZW1vdmUtIgorInJlaW5zdHJlcT4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLjE6ODkgZHNlbGVjdC4xOjEyMAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJBQ1RJT05TIgorbXNnc3RyICJNxbBWRUxFVEkgTEVIRVTFkFPDiUdFSyIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo5MAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1pPiwgQjwtLWluc3RhbGw+IEk8cGFja2FnZS1maWxlPi4uLiIKK21zZ3N0ciAiQjxkcGtnLWRlYj4gQjwtZj58QjwtLWZpZWxkPiBJPGFyY2jDrXZ1bT4gW0k8ZWxsZW7FkXJ6xZEtbWV6xZEtbsOpdj4gLi4uXSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjk0Cittc2dpZCAiIgorIkluc3RhbGwgdGhlIHBhY2thZ2UuIElmIEI8LS1yZWN1cnNpdmU+IG9yIEI8LVI+IG9wdGlvbiBpcyBzcGVjaWZpZWQsICIKKyJJPHBhY2thZ2UtZmlsZT4gbXVzdCByZWZlciB0byBhIGRpcmVjdG9yeSBpbnN0ZWFkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6OTYKK21zZ2lkICJJbnN0YWxsYXRpb24gY29uc2lzdHMgb2YgdGhlIGZvbGxvd2luZyBzdGVwczoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjk5CisjLCBmdXp6eQorbXNnaWQgIkI8MS4+IEV4dHJhY3QgdGhlIGNvbnRyb2wgZmlsZXMgb2YgdGhlIG5ldyBwYWNrYWdlLiIKK21zZ3N0ciAiS2lzemVkaSBheiBlbGxlbsWRcnrFkSBpbmZvcm3DoWNpw7NzIGbDoWpsdCBlZ3kgYmluw6FyaXMgY3NvbWFnYXJjaMOtdnVtYsOzbCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjEwMworbXNnaWQgIiIKKyJCPDIuPiBJZiBhbm90aGVyIHZlcnNpb24gb2YgdGhlIHNhbWUgcGFja2FnZSB3YXMgaW5zdGFsbGVkIGJlZm9yZSB0aGUgbmV3ICIKKyJpbnN0YWxsYXRpb24sIGV4ZWN1dGUgSTxwcmVybT4gc2NyaXB0IG9mIHRoZSBvbGQgcGFja2FnZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjEwNgorbXNnaWQgIkI8My4+IFJ1biBJPHByZWluc3Q+IHNjcmlwdCwgaWYgcHJvdmlkZWQgYnkgdGhlIHBhY2thZ2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxMTAKK21zZ2lkICIiCisiQjw0Lj4gVW5wYWNrIHRoZSBuZXcgZmlsZXMsIGFuZCBhdCB0aGUgc2FtZSB0aW1lIGJhY2sgdXAgdGhlIG9sZCBmaWxlcywgc28gIgorInRoYXQgaWYgc29tZXRoaW5nIGdvZXMgd3JvbmcsIHRoZXkgY2FuIGJlIHJlc3RvcmVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTE3Cittc2dpZCAiIgorIkI8NS4+IElmIGFub3RoZXIgdmVyc2lvbiBvZiB0aGUgc2FtZSBwYWNrYWdlIHdhcyBpbnN0YWxsZWQgYmVmb3JlIHRoZSBuZXcgIgorImluc3RhbGxhdGlvbiwgZXhlY3V0ZSB0aGUgSTxwb3N0cm0+IHNjcmlwdCBvZiB0aGUgb2xkIHBhY2thZ2UuIE5vdGUgdGhhdCAiCisidGhpcyBzY3JpcHQgaXMgZXhlY3V0ZWQgYWZ0ZXIgdGhlIEk8cHJlaW5zdD4gc2NyaXB0IG9mIHRoZSBuZXcgcGFja2FnZSwgIgorImJlY2F1c2UgbmV3IGZpbGVzIGFyZSB3cml0dGVuIGF0IHRoZSBzYW1lIHRpbWUgb2xkIGZpbGVzIGFyZSByZW1vdmVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTIxCittc2dpZCAiIgorIkI8Ni4+IENvbmZpZ3VyZSB0aGUgcGFja2FnZS4gU2VlIEI8LS1jb25maWd1cmU+IGZvciBkZXRhaWxlZCBpbmZvcm1hdGlvbiAiCisiYWJvdXQgaG93IHRoaXMgaXMgZG9uZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToxMjEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLXVucGFjayA+STxwYWNrYWdlLWZpbGU+Li4uIgorbXNnc3RyICJCPFBhY2thZ2U6PiBFPGx0PmNzb21hZyBuw6l2RTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxMjYKK21zZ2lkICIiCisiVW5wYWNrIHRoZSBwYWNrYWdlLCBidXQgZG9uJ3QgY29uZmlndXJlIGl0LiBJZiBCPC0tcmVjdXJzaXZlPiBvciBCPC1SPiAiCisib3B0aW9uIGlzIHNwZWNpZmllZCwgSTxwYWNrYWdlLWZpbGU+IG11c3QgcmVmZXIgdG8gYSBkaXJlY3RvcnkgaW5zdGVhZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToxMjYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tY29uZmlndXJlID5JPHBhY2thZ2U+Li4ufEI8LWE+fEI8LS1wZW5kaW5nPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTMxCittc2dpZCAiIgorIkNvbmZpZ3VyZSBhIHBhY2thZ2Ugd2hpY2ggaGFzIGJlZW4gdW5wYWNrZWQgYnV0IG5vdCB5ZXQgY29uZmlndXJlZC4gIElmIEI8LSIKKyJhPiBvciBCPC0tcGVuZGluZz4gaXMgZ2l2ZW4gaW5zdGVhZCBvZiBJPHBhY2thZ2U+LCBhbGwgdW5wYWNrZWQgYnV0ICIKKyJ1bmNvbmZpZ3VyZWQgcGFja2FnZXMgYXJlIGNvbmZpZ3VyZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxMzUKK21zZ2lkICIiCisiVG8gcmVjb25maWd1cmUgYSBwYWNrYWdlIHdoaWNoIGhhcyBhbHJlYWR5IGJlZW4gY29uZmlndXJlZCwgdHJ5IHRoZSBCPGRwa2ctIgorInJlY29uZmlndXJlPig4KSAgY29tbWFuZCBpbnN0ZWFkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTM3Cittc2dpZCAiQ29uZmlndXJpbmcgY29uc2lzdHMgb2YgdGhlIGZvbGxvd2luZyBzdGVwczoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjE0MgorbXNnaWQgIiIKKyJCPDEuPiBVbnBhY2sgdGhlIGNvbmZmaWxlcywgYW5kIGF0IHRoZSBzYW1lIHRpbWUgYmFjayB1cCB0aGUgb2xkIGNvbmZmaWxlcywgIgorInNvIHRoYXQgdGhleSBjYW4gYmUgcmVzdG9yZWQgaWYgc29tZXRoaW5nIGdvZXMgd3JvbmcuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxNDUKK21zZ2lkICJCPDIuPiBSdW4gSTxwb3N0aW5zdD4gc2NyaXB0LCBpZiBwcm92aWRlZCBieSB0aGUgcGFja2FnZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToxNDUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tdHJpZ2dlcnMtb25seT4gSTxwYWNrYWdlPi4uLnxCPC1hPnxCPC0tcGVuZGluZz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjE1MgorbXNnaWQgIiIKKyJQcm9jZXNzZXMgb25seSB0cmlnZ2Vycy4gQWxsIHBlbmRpbmcgdHJpZ2dlcnMgd2lsbCBiZSBwcm9jZXNzZWQuIElmIHBhY2thZ2UgIgorIm5hbWVzIGFyZSBzdXBwbGllZCBvbmx5IHRob3NlIHBhY2thZ2VzJyB0cmlnZ2VycyB3aWxsIGJlIHByb2Nlc3NlZCwgZXhhY3RseSAiCisib25jZSBlYWNoIHdoZXJlIG5lY2Vzc2FyeS4gVXNlIG9mIHRoaXMgb3B0aW9uIG1heSBsZWF2ZSBwYWNrYWdlcyBpbiB0aGUgIgorImltcHJvcGVyIEI8dHJpZ2dlcnMtYXdhaXRlZD4gYW5kIEI8dHJpZ2dlcnMtcGVuZGluZz4gc3RhdGVzLiBUaGlzIGNhbiBiZSAiCisiZml4ZWQgbGF0ZXIgYnkgcnVubmluZzogQjxkcGtnIC0tY29uZmlndXJlIC0tcGVuZGluZz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MTUyCisjLCBuby13cmFwCittc2dpZCAiQjwtcj4sIEI8LS1yZW1vdmU+LCBCPC1QPiwgQjwtLXB1cmdlID5JPHBhY2thZ2U+Li4ufEI8LWE+fEI8LS1wZW5kaW5nPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTY5Cittc2dpZCAiIgorIlJlbW92ZSBhbiBpbnN0YWxsZWQgcGFja2FnZS4gQjwtcj4gb3IgQjwtLXJlbW92ZT4gcmVtb3ZlIGV2ZXJ5dGhpbmcgZXhjZXB0ICIKKyJjb25mZmlsZXMuIFRoaXMgbWF5IGF2b2lkIGhhdmluZyB0byByZWNvbmZpZ3VyZSB0aGUgcGFja2FnZSBpZiBpdCBpcyAiCisicmVpbnN0YWxsZWQgbGF0ZXIuIChDb25mZmlsZXMgYXJlIGNvbmZpZ3VyYXRpb24gZmlsZXMgdGhhdCBhcmUgbGlzdGVkIGluIHRoZSAiCisiSTxERUJJQU4vY29uZmZpbGVzPiBjb250cm9sIGZpbGUpLiBCPC1QPiBvciBCPC0tcHVyZ2U+IHJlbW92ZXMgZXZlcnl0aGluZywgIgorImluY2x1ZGluZyBjb25mZmlsZXMuIElmIEI8LWE+IG9yIEI8LS1wZW5kaW5nPiBpcyBnaXZlbiBpbnN0ZWFkIG9mIGEgcGFja2FnZSAiCisibmFtZSwgdGhlbiBhbGwgcGFja2FnZXMgdW5wYWNrZWQsIGJ1dCBtYXJrZWQgdG8gYmUgcmVtb3ZlZCBvciBwdXJnZWQgaW4gZmlsZSAiCisiSTwvdmFyL2xpYi9kcGtnL3N0YXR1cz4sIGFyZSByZW1vdmVkIG9yIHB1cmdlZCwgcmVzcGVjdGl2ZWx5LiBOb3RlOiBzb21lICIKKyJjb25maWd1cmF0aW9uIGZpbGVzIG1pZ2h0IGJlIHVua25vd24gdG8gQjxkcGtnPiBiZWNhdXNlIHRoZXkgYXJlIGNyZWF0ZWQgYW5kICIKKyJoYW5kbGVkIHNlcGFyYXRlbHkgdGhyb3VnaCB0aGUgY29uZmlndXJhdGlvbiBzY3JpcHRzLiBJbiB0aGF0IGNhc2UsIEI8ZHBrZz4gIgorIndvbid0IHJlbW92ZSB0aGVtIGJ5IGl0c2VsZiwgYnV0IHRoZSBwYWNrYWdlJ3MgSTxwb3N0cm0+IHNjcmlwdCAod2hpY2ggaXMgIgorImNhbGxlZCBieSBCPGRwa2c+KSwgaGFzIHRvIHRha2UgY2FyZSBvZiB0aGVpciByZW1vdmFsIGR1cmluZyBwdXJnZS4gT2YgIgorImNvdXJzZSwgdGhpcyBvbmx5IGFwcGxpZXMgdG8gZmlsZXMgaW4gc3lzdGVtIGRpcmVjdG9yaWVzLCBub3QgY29uZmlndXJhdGlvbiAiCisiZmlsZXMgd3JpdHRlbiB0byBpbmRpdmlkdWFsIHVzZXJzJyBob21lIGRpcmVjdG9yaWVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTcxCittc2dpZCAiUmVtb3Zpbmcgb2YgYSBwYWNrYWdlIGNvbnNpc3RzIG9mIHRoZSBmb2xsb3dpbmcgc3RlcHM6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxNzQKK21zZ2lkICJCPDEuPiBSdW4gSTxwcmVybT4gc2NyaXB0IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxNzcKK21zZ2lkICJCPDIuPiBSZW1vdmUgdGhlIGluc3RhbGxlZCBmaWxlcyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTgwCittc2dpZCAiQjwzLj4gUnVuIEk8cG9zdHJtPiBzY3JpcHQiCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToxODEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLXVwZGF0ZS1hdmFpbD4sIEI8LS1tZXJnZS1hdmFpbD4gSTxQYWNrYWdlcy1maWxlPiIKK21zZ3N0ciAiQjxkcGtnLWRlYj4gQjwtST58QjwtLWluZm8+IEk8YXJjaMOtdnVtPiBbSTxlbGxlbsWRcnrFkS1mw6FqbC1uw6l2PiAuLl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxOTAKK21zZ2lkICIiCisiVXBkYXRlIEI8ZHBrZz4ncyBhbmQgQjxkc2VsZWN0PidzIGlkZWEgb2Ygd2hpY2ggcGFja2FnZXMgYXJlIGF2YWlsYWJsZS4gV2l0aCAiCisiYWN0aW9uIEI8LS1tZXJnZS1hdmFpbD4sIG9sZCBpbmZvcm1hdGlvbiBpcyBjb21iaW5lZCB3aXRoIGluZm9ybWF0aW9uIGZyb20gIgorIkk8UGFja2FnZXMtZmlsZT4uIFdpdGggYWN0aW9uIEI8LS11cGRhdGUtYXZhaWw+LCBvbGQgaW5mb3JtYXRpb24gaXMgcmVwbGFjZWQgIgorIndpdGggdGhlIGluZm9ybWF0aW9uIGluIHRoZSBJPFBhY2thZ2VzLWZpbGU+LiBUaGUgSTxQYWNrYWdlcy1maWxlPiAiCisiZGlzdHJpYnV0ZWQgd2l0aCBEZWJpYW4gaXMgc2ltcGx5IG5hbWVkIEk8UGFja2FnZXM+LiBCPGRwa2c+IGtlZXBzIGl0cyAiCisicmVjb3JkIG9mIGF2YWlsYWJsZSBwYWNrYWdlcyBpbiBJPC92YXIvbGliL2Rwa2cvYXZhaWxhYmxlPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjE5NQorbXNnaWQgIiIKKyJBIHNpbXBsZXIgb25lLXNob3QgY29tbWFuZCB0byByZXRyaWV2ZSBhbmQgdXBkYXRlIHRoZSBJPGF2YWlsYWJsZT4gZmlsZSBpcyAiCisiQjxkc2VsZWN0IHVwZGF0ZT4uIE5vdGUgdGhhdCB0aGlzIGZpbGUgaXMgbW9zdGx5IHVzZWxlc3MgaWYgeW91IGRvbid0IHVzZSAiCisiQjxkc2VsZWN0PiBidXQgYW4gQVBULWJhc2VkIGZyb250ZW5kOiBBUFQgaGFzIGl0cyBvd24gc3lzdGVtIHRvIGtlZXAgdHJhY2sgIgorIm9mIGF2YWlsYWJsZSBwYWNrYWdlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToxOTUKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtQT4sIEI8LS1yZWNvcmQtYXZhaWw+IEk8cGFja2FnZS1maWxlPi4uLiIKK21zZ3N0ciAiQjxkcGtnLWRlYj4gQjwtST58QjwtLWluZm8+IEk8YXJjaMOtdnVtPiBbSTxlbGxlbsWRcnrFkS1mw6FqbC1uw6l2PiAuLl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyMDEKK21zZ2lkICIiCisiVXBkYXRlIEI8ZHBrZz4gYW5kIEI8ZHNlbGVjdD4ncyBpZGVhIG9mIHdoaWNoIHBhY2thZ2VzIGFyZSBhdmFpbGFibGUgd2l0aCAiCisiaW5mb3JtYXRpb24gZnJvbSB0aGUgcGFja2FnZSBJPHBhY2thZ2UtZmlsZT4uIElmIEI8LS1yZWN1cnNpdmU+IG9yIEI8LVI+ICIKKyJvcHRpb24gaXMgc3BlY2lmaWVkLCBJPHBhY2thZ2UtZmlsZT4gbXVzdCByZWZlciB0byBhIGRpcmVjdG9yeSBpbnN0ZWFkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjIwMQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1mb3JnZXQtb2xkLXVuYXZhaWw+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyMDUKK21zZ2lkICIiCisiTm93IEI8b2Jzb2xldGU+IGFuZCBhIG5vLW9wIGFzIEI8ZHBrZz4gd2lsbCBhdXRvbWF0aWNhbGx5IGZvcmdldCB1bmluc3RhbGxlZCAiCisidW5hdmFpbGFibGUgcGFja2FnZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MjA1CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1jbGVhci1hdmFpbD4iCittc2dzdHIgIkI8LS1vbGQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MjA4CisjLCBmdXp6eQorbXNnaWQgIkVyYXNlIHRoZSBleGlzdGluZyBpbmZvcm1hdGlvbiBhYm91dCB3aGF0IHBhY2thZ2VzIGFyZSBhdmFpbGFibGUuIgorbXNnc3RyICJFZ3kgYmluw6FyaXMgY3NvbWFnYXJjaMOtdnVtcsOzbCBhZCBpbmZvcm3DoWNpw7NrYXQuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjIwOAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICIgQjwtQz4sIEI8LS1hdWRpdD4iCittc2dzdHIgIkI8LS1uZXc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MjEzCittc2dpZCAiIgorIlNlYXJjaGVzIGZvciBwYWNrYWdlcyB0aGF0IGhhdmUgYmVlbiBpbnN0YWxsZWQgb25seSBwYXJ0aWFsbHkgb24geW91ciAiCisic3lzdGVtLiBCPGRwa2c+IHdpbGwgc3VnZ2VzdCB3aGF0IHRvIGRvIHdpdGggdGhlbSB0byBnZXQgdGhlbSB3b3JraW5nLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjIxMworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tZ2V0LXNlbGVjdGlvbnM+IFtJPHBhY2thZ2UtbmFtZS1wYXR0ZXJuPi4uLl0iCittc2dzdHIgIkI8ZHBrZy1kZWI+IEI8LWY+fEI8LS1maWVsZD4gSTxhcmNow612dW0+IFtJPGVsbGVuxZFyesWRLW1lesWRLW7DqXY+IC4uLl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyMTgKK21zZ2lkICIiCisiR2V0IGxpc3Qgb2YgcGFja2FnZSBzZWxlY3Rpb25zLCBhbmQgd3JpdGUgaXQgdG8gc3Rkb3V0LiBXaXRob3V0IGEgcGF0dGVybiwgIgorIm5vbi1pbnN0YWxsZWQgcGFja2FnZXMgKGkuZS4gdGhvc2Ugd2hpY2ggaGF2ZSBiZWVuIHByZXZpb3VzbHkgcHVyZ2VkKSAgd2lsbCAiCisibm90IGJlIHNob3duLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjIxOCB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6Mjk5CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1zZXQtc2VsZWN0aW9ucz4iCittc2dzdHIgIkI8LS12ZXJzaW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjIyNAorbXNnaWQgIiIKKyJTZXQgcGFja2FnZSBzZWxlY3Rpb25zIHVzaW5nIGZpbGUgcmVhZCBmcm9tIHN0ZGluLiBUaGlzIGZpbGUgc2hvdWxkIGJlIGluICIKKyJ0aGUgZm9ybWF0ICdJPHBhY2thZ2U+IEk8c3RhdGU+Jywgd2hlcmUgc3RhdGUgaXMgb25lIG9mIEI8aW5zdGFsbD4sIEI8aG9sZD4sICIKKyJCPGRlaW5zdGFsbD4gb3IgQjxwdXJnZT4uIEJsYW5rIGxpbmVzIGFuZCBjb21tZW50IGxpbmVzIGJlZ2lubmluZyB3aXRoICcjJyAiCisiYXJlIGFsc28gcGVybWl0dGVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjIyNAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tY2xlYXItc2VsZWN0aW9ucz4iCittc2dzdHIgIkI8LS12ZXJzaW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjIyOQorbXNnaWQgIiIKKyJTZXQgdGhlIHJlcXVlc3RlZCBzdGF0ZSBvZiBldmVyeSBub24tZXNzZW50aWFsIHBhY2thZ2UgdG8gZGVpbnN0YWxsLiAgVGhpcyAiCisiaXMgaW50ZW5kZWQgdG8gYmUgdXNlZCBpbW1lZGlhdGVseSBiZWZvcmUgLS1zZXQtc2VsZWN0aW9ucywgdG8gZGVpbnN0YWxsIGFueSAiCisicGFja2FnZXMgbm90IGluIGxpc3QgZ2l2ZW4gdG8gLS1zZXQtc2VsZWN0aW9ucy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToyMjkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0teWV0LXRvLXVucGFjaz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjIzMworbXNnaWQgIiIKKyJTZWFyY2hlcyBmb3IgcGFja2FnZXMgc2VsZWN0ZWQgZm9yIGluc3RhbGxhdGlvbiwgYnV0IHdoaWNoIGZvciBzb21lIHJlYXNvbiAiCisic3RpbGwgaGF2ZW4ndCBiZWVuIGluc3RhbGxlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToyMzQKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLXByaW50LWFyY2hpdGVjdHVyZT4iCittc2dzdHIgIkI8LS1ub2NoZWNrPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjIzNworbXNnaWQgIiIKKyJQcmludCBhcmNoaXRlY3R1cmUgb2YgcGFja2FnZXMgQjxkcGtnPiBpbnN0YWxscyAoZm9yIGV4YW1wbGUsIFwiaTM4NlwiKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToyMzcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tY29tcGFyZS12ZXJzaW9ucyA+STx2ZXIxIG9wIHZlcjI+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyNDgKK21zZ2lkICIiCisiQ29tcGFyZSB2ZXJzaW9uIG51bWJlcnMsIHdoZXJlIEk8b3A+IGlzIGEgYmluYXJ5IG9wZXJhdG9yLiBCPGRwa2c+IHJldHVybnMgIgorInN1Y2Nlc3MgKHplcm8gcmVzdWx0KSBpZiB0aGUgc3BlY2lmaWVkIGNvbmRpdGlvbiBpcyBzYXRpc2ZpZWQsIGFuZCBmYWlsdXJlICIKKyIobm9uemVybyByZXN1bHQpIG90aGVyd2lzZS4gVGhlcmUgYXJlIHR3byBncm91cHMgb2Ygb3BlcmF0b3JzLCB3aGljaCBkaWZmZXIgIgorImluIGhvdyB0aGV5IHRyZWF0IGFuIGVtcHR5IEk8dmVyMT4gb3IgSTx2ZXIyPi4gVGhlc2UgdHJlYXQgYW4gZW1wdHkgdmVyc2lvbiAiCisiYXMgZWFybGllciB0aGFuIGFueSB2ZXJzaW9uOiBCPGx0IGxlIGVxIG5lIGdlIGd0Pi4gVGhlc2UgdHJlYXQgYW4gZW1wdHkgIgorInZlcnNpb24gYXMgbGF0ZXIgdGhhbiBhbnkgdmVyc2lvbjogQjxsdC1ubCBsZS1ubCBnZS1ubCBndC1ubD4uIFRoZXNlIGFyZSAiCisicHJvdmlkZWQgb25seSBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIGNvbnRyb2wgZmlsZSBzeW50YXg6IEI8RTxsdD4gRTxsdD5FPGx0PiAiCisiRTxsdD49ID0gRTxndD49IEU8Z3Q+RTxndD4gRTxndD4+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjI0OAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tY29tbWFuZC1mZCA+STxuPiIKK21zZ3N0ciAiQjxTZWN0aW9uOj4gRTxsdD5zemFrYXN6RTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyNTMKK21zZ2lkICIiCisiQWNjZXB0IGEgc2VyaWVzIG9mIGNvbW1hbmRzIG9uIGlucHV0IGZpbGUgZGVzY3JpcHRvciBJPG4+LiBOb3RlOiBhZGRpdGlvbmFsICIKKyJvcHRpb25zIHNldCBvbiB0aGUgY29tbWFuZCBsaW5lLCBhbmQgdGhyb3VnaCB0aGlzIGZpbGUgZGVzY3JpcHRvciwgYXJlIG5vdCAiCisicmVzZXQgZm9yIHN1YnNlcXVlbnQgY29tbWFuZHMgZXhlY3V0ZWQgZHVyaW5nIHRoZSBzYW1lIHJ1bi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToyNTMgZHBrZy1hcmNoaXRlY3R1cmUuMTo2MCBkcGtnLWJ1aWxkZmxhZ3MuMTo4OSBkcGtnLWRpdmVydC44OjcxCisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjM4IGRwa2ctc2NhbnNvdXJjZXMuMTo2NiBkcGtnLXN0YXRvdmVycmlkZS44OjQ0CisjOiBkcGtnLXZlbmRvci4xOjI4IGRzZWxlY3QuMToxMTMgdXBkYXRlLWFsdGVybmF0aXZlcy44OjMxNgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0taGVscD4iCittc2dzdHIgIkI8LS1oZWxwPiwgQjwtaD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyNTYKK21zZ2lkICJEaXNwbGF5IGEgYnJpZWYgaGVscCBtZXNzYWdlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjI1NgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tZm9yY2UtaGVscD4iCittc2dzdHIgIkI8LS1ub2NoZWNrPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjI1OQorbXNnaWQgIkdpdmUgaGVscCBhYm91dCB0aGUgQjwtLWZvcmNlLT5JPHRoaW5nPiBvcHRpb25zLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjI1OQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1EaD4sIEI8LS1kZWJ1Zz1oZWxwPiIKK21zZ3N0ciAiQjwtLWRlYnVnPiwgQjwtRD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyNjIKK21zZ2lkICJHaXZlIGhlbHAgYWJvdXQgZGVidWdnaW5nIG9wdGlvbnMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MjYyIGRwa2ctYXJjaGl0ZWN0dXJlLjE6NjMgZHBrZy1idWlsZGZsYWdzLjE6OTIKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjI2IGRwa2ctY2hlY2tidWlsZGRlcHMuMTozNiBkcGtnLWRpc3RhZGRmaWxlLjE6MzUKKyM6IGRwa2ctZGViLjE6MTc1IGRwa2ctZGl2ZXJ0Ljg6NzQgZHBrZy1nZW5jaGFuZ2VzLjE6MTM0IGRwa2ctZ2VuY29udHJvbC4xOjEyNAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDQ2IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6NDEgZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjM2CisjOiBkcGtnLXF1ZXJ5LjE6MTEzIGRwa2ctc2NhbnBhY2thZ2VzLjE6OTkgZHBrZy1zY2Fuc291cmNlcy4xOjY4CisjOiBkcGtnLXNobGliZGVwcy4xOjIxOCBkcGtnLXNvdXJjZS4xOjk5IGRwa2ctc3BsaXQuMToxMjkKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6NDcgZHBrZy10cmlnZ2VyLjE6MzQgZHBrZy12ZW5kb3IuMTozMSBkc2VsZWN0LjE6MTE2CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzE5CisjLCBuby13cmFwCittc2dpZCAiQjwtLXZlcnNpb24+IgorbXNnc3RyICJCPC0tdmVyc2lvbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyNjUKKyMsIGZ1enp5Cittc2dpZCAiRGlzcGxheSBCPGRwa2c+IHZlcnNpb24gaW5mb3JtYXRpb24uIgorbXNnc3RyICJLacOtcmphIGEgQjxkcGtnLWRlYj4gdmVyemnDs3N6w6Ftw6F0LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToyNjUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGRwa2ctZGViIGFjdGlvbnM+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyNjgKKyMsIGZ1enp5Cittc2dpZCAiU2VlIEI8ZHBrZy1kZWI+KDEpIGZvciBtb3JlIGluZm9ybWF0aW9uIGFib3V0IHRoZSBmb2xsb3dpbmcgYWN0aW9ucy4iCittc2dzdHIgIiIKKyJBIEI8ZHBrZy1kZWI+IERlYmlhbiBhcmNow612dW1va2F0IGNzb21hZ29sLCBraWJvbnQgw6lzIGluZm9ybcOhY2nDs2thdCBuecO6anQgIgorInLDs2x1ay4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyODgKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiQjwtYj4sIEI8LS1idWlsZD4gSTxkaXJlY3Rvcnk+IFtJPGFyY2hpdmU+fEk8ZGlyZWN0b3J5Pl1cbiIKKyIgICAgQnVpbGQgYSBkZWIgcGFja2FnZS5cbiIKKyJCPC1jPiwgQjwtLWNvbnRlbnRzPiBJPGFyY2hpdmU+XG4iCisiICAgIExpc3QgY29udGVudHMgb2YgYSBkZWIgcGFja2FnZS5cbiIKKyJCPC1lPiwgQjwtLWNvbnRyb2w+IEk8ZmlsZW5hbWU+IFtJPGRpcmVjdG9yeT5dXG4iCisiICAgIEV4dHJhY3QgY29udHJvbC1pbmZvcm1hdGlvbiBmcm9tIGEgcGFja2FnZS5cbiIKKyJCPC14PiwgQjwtLWV4dHJhY3Q+IEk8YXJjaGl2ZSBkaXJlY3Rvcnk+XG4iCisiICAgIEV4dHJhY3QgdGhlIGZpbGVzIGNvbnRhaW5lZCBieSBwYWNrYWdlLlxuIgorIkI8LVg+LCBCPC0tdmV4dHJhY3Q+IEk8YXJjaGl2ZSBkaXJlY3Rvcnk+XG4iCisiICAgIEV4dHJhY3QgYW5kIGRpc3BsYXkgdGhlIGZpbGVuYW1lcyBjb250YWluZWQgYnkgYVxuIgorIiAgICBwYWNrYWdlLlxuIgorIkI8LWY+LCBCPC0tZmllbGQ+ICBJPGFyY2hpdmU+IFtJPGNvbnRyb2wtZmllbGQ+Li4uXVxuIgorIiAgICBEaXNwbGF5IGNvbnRyb2wgZmllbGQocykgb2YgYSBwYWNrYWdlLlxuIgorIkI8LS1mc3lzLXRhcmZpbGU+IEk8YXJjaGl2ZT5cbiIKKyIgICAgRGlzcGxheSB0aGUgZmlsZXN5c3RlbSB0YXItZmlsZSBjb250YWluZWQgYnkgYVxuIgorIiAgICBEZWJpYW4gcGFja2FnZS5cbiIKKyJCPC1JPiwgQjwtLWluZm8+IEk8YXJjaGl2ZT4gW0k8Y29udHJvbC1maWxlPi4uLl1cbiIKKyIgICAgU2hvdyBpbmZvcm1hdGlvbiBhYm91dCBhIHBhY2thZ2UuXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToyOTAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGRwa2ctcXVlcnkgYWN0aW9ucz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjI5MworbXNnaWQgIlNlZSBCPGRwa2ctcXVlcnk+KDEpIGZvciBtb3JlIGluZm9ybWF0aW9uIGFib3V0IHRoZSBmb2xsb3dpbmcgYWN0aW9ucy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjMwOAorIywgbm8td3JhcAorbXNnaWQgIiIKKyJCPC1sPiwgQjwtLWxpc3Q+IEk8cGFja2FnZS1uYW1lLXBhdHRlcm4+Li4uXG4iCisiICAgIExpc3QgcGFja2FnZXMgbWF0Y2hpbmcgZ2l2ZW4gcGF0dGVybi5cbiIKKyJCPC1zPiwgQjwtLXN0YXR1cz4gSTxwYWNrYWdlLW5hbWU+Li4uXG4iCisiICAgIFJlcG9ydCBzdGF0dXMgb2Ygc3BlY2lmaWVkIHBhY2thZ2UuXG4iCisiQjwtTD4sIEI8LS1saXN0ZmlsZXM+IEk8cGFja2FnZS1uYW1lPi4uLlxuIgorIiAgICBMaXN0IGZpbGVzIGluc3RhbGxlZCB0byB5b3VyIHN5c3RlbSBmcm9tIEk8cGFja2FnZS1uYW1lPi5cbiIKKyJCPC1TPiwgQjwtLXNlYXJjaD4gSTxmaWxlbmFtZS1zZWFyY2gtcGF0dGVybj4uLi5cbiIKKyIgICAgU2VhcmNoIGZvciBhIGZpbGVuYW1lIGZyb20gaW5zdGFsbGVkIHBhY2thZ2VzLlxuIgorIkI8LXA+LCBCPC0tcHJpbnQtYXZhaWw+IEk8cGFja2FnZS1uYW1lPi4uLlxuIgorIiAgICBEaXNwbGF5IGRldGFpbHMgYWJvdXQgSTxwYWNrYWdlLW5hbWU+LCBhcyBmb3VuZCBpblxuIgorIiAgICBJPC92YXIvbGliL2Rwa2cvYXZhaWxhYmxlPi4gVXNlcnMgb2YgQVBULWJhc2VkIGZyb250ZW5kc1xuIgorIiAgICBzaG91bGQgdXNlIEI8YXB0LWNhY2hlIHNob3c+IEk8cGFja2FnZS1uYW1lPiBpbnN0ZWFkLlxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLjE6MzEwIGRwa2ctYXJjaGl0ZWN0dXJlLjE6NjcgZHBrZy1idWlsZHBhY2thZ2UuMTo1MAorIzogZHBrZy1jaGVja2J1aWxkZGVwcy4xOjE4IGRwa2ctZGlzdGFkZGZpbGUuMToyNyBkcGtnLWRlYi4xOjE3OQorIzogZHBrZy1kaXZlcnQuODo0MiBkcGtnLWdlbmNoYW5nZXMuMToxNyBkcGtnLWdlbmNvbnRyb2wuMTozNworIzogZHBrZy1nZW5zeW1ib2xzLjE6MzY5IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6MjcgZHBrZy1uYW1lLjE6MzAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxNSBkcGtnLXF1ZXJ5LjE6MTE3IGRwa2ctc2NhbnBhY2thZ2VzLjE6NzEKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMTo0NCBkcGtnLXNobGliZGVwcy4xOjEwNiBkcGtnLXNwbGl0LjE6MTMzCisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjUxIGRwa2ctdHJpZ2dlci4xOjM4IGRwa2ctdmVuZG9yLjE6MzUgZHNlbGVjdC4xOjM2CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjEwMyB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzIzCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIk9QVElPTlMiCittc2dzdHIgIk3DgVMgTEVIRVTFkFPDiUdFSyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjMxNgorbXNnaWQgIiIKKyJBbGwgb3B0aW9ucyBjYW4gYmUgc3BlY2lmaWVkIGJvdGggb24gdGhlIGNvbW1hbmQgbGluZSBhbmQgaW4gdGhlIEI8ZHBrZz4gIgorImNvbmZpZ3VyYXRpb24gZmlsZSBJPC9ldGMvZHBrZy9kcGtnLmNmZz4gb3IgdGhlIGZpbGVzIG9uIHRoZSBjb25maWd1cmF0aW9uICIKKyJkaXJlY3RvcnkgSTwvZXRjL2Rwa2cvZHBrZy5jZmcuZC8+LiBFYWNoIGxpbmUgaW4gdGhlIGNvbmZpZ3VyYXRpb24gZmlsZSBpcyAiCisiZWl0aGVyIGFuIG9wdGlvbiAoZXhhY3RseSB0aGUgc2FtZSBhcyB0aGUgY29tbWFuZCBsaW5lIG9wdGlvbiBidXQgd2l0aG91dCAiCisibGVhZGluZyBkYXNoZXMpIG9yIGEgY29tbWVudCAoaWYgaXQgc3RhcnRzIHdpdGggYSBCPCM+KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTozMTcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tYWJvcnQtYWZ0ZXI9Pkk8bnVtYmVyPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzIwCittc2dpZCAiQ2hhbmdlIGFmdGVyIGhvdyBtYW55IGVycm9ycyBCPGRwa2c+IHdpbGwgYWJvcnQuIFRoZSBkZWZhdWx0IGlzIDUwLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjMyMAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1CPiwgQjwtLWF1dG8tZGVjb25maWd1cmU+IgorbXNnc3RyICJCPC0taW5mbz4sIEI8LUk+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzI2Cittc2dpZCAiIgorIldoZW4gYSBwYWNrYWdlIGlzIHJlbW92ZWQsIHRoZXJlIGlzIGEgcG9zc2liaWxpdHkgdGhhdCBhbm90aGVyIGluc3RhbGxlZCAiCisicGFja2FnZSBkZXBlbmRlZCBvbiB0aGUgcmVtb3ZlZCBwYWNrYWdlLiBTcGVjaWZ5aW5nIHRoaXMgb3B0aW9uIHdpbGwgY2F1c2UgIgorImF1dG9tYXRpYyBkZWNvbmZpZ3VyYXRpb24gb2YgdGhlIHBhY2thZ2Ugd2hpY2ggZGVwZW5kZWQgb24gdGhlIHJlbW92ZWQgIgorInBhY2thZ2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MzI2CisjLCBuby13cmFwCittc2dpZCAiQjwtRD5JPG9jdGFsPkI8LCAtLWRlYnVnPT5JPG9jdGFsPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzMyCittc2dpZCAiIgorIlN3aXRjaCBkZWJ1Z2dpbmcgb24uIEk8b2N0YWw+IGlzIGZvcm1lZCBieSBiaXR3aXNlLW9ycmluZyBkZXNpcmVkIHZhbHVlcyAiCisidG9nZXRoZXIgZnJvbSB0aGUgbGlzdCBiZWxvdyAobm90ZSB0aGF0IHRoZXNlIHZhbHVlcyBtYXkgY2hhbmdlIGluIGZ1dHVyZSAiCisicmVsZWFzZXMpLiBCPC1EaD4gb3IgQjwtLWRlYnVnPWhlbHA+IGRpc3BsYXkgdGhlc2UgZGVidWdnaW5nIHZhbHVlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjM0NworIywgbm8td3JhcAorbXNnaWQgIiIKKyIgICAgTnVtYmVyICAgRGVzY3JpcHRpb25cbiIKKyIgICAgICAgICAxICAgR2VuZXJhbGx5IGhlbHBmdWwgcHJvZ3Jlc3MgaW5mb3JtYXRpb25cbiIKKyIgICAgICAgICAyICAgSW52b2NhdGlvbiBhbmQgc3RhdHVzIG9mIG1haW50YWluZXIgc2NyaXB0c1xuIgorIiAgICAgICAgMTAgICBPdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWRcbiIKKyIgICAgICAgMTAwICAgTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWRcbiIKKyIgICAgICAgIDIwICAgT3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZVxuIgorIiAgICAgICAyMDAgICBMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGVcbiIKKyIgICAgICAgIDQwICAgRGVwZW5kZW5jaWVzIGFuZCBjb25mbGljdHNcbiIKKyIgICAgICAgNDAwICAgTG90cyBvZiBkZXBlbmRlbmNpZXMvY29uZmxpY3RzIG91dHB1dFxuIgorIiAgICAgMTAwMDAgICBUcmlnZ2VyIGFjdGl2YXRpb24gYW5kIHByb2Nlc3NpbmdcbiIKKyIgICAgIDIwMDAwICAgTG90cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzXG4iCisiICAgICA0MDAwMCAgIFNpbGx5IGFtb3VudHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2Vyc1xuIgorIiAgICAgIDEwMDAgICBMb3RzIG9mIGRyaXZlbCBhYm91dCBlLmcuIHRoZSBkcGtnL2luZm8gZGlyXG4iCisiICAgICAgMjAwMCAgIEluc2FuZSBhbW91bnRzIG9mIGRyaXZlbFxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MzQ3CisjLCBuby13cmFwCittc2dpZCAiQjwtLWZvcmNlLT5JPHRoaW5ncz4sIEI8LS1uby1mb3JjZS0+STx0aGluZ3M+LCBCPC0tcmVmdXNlLT5JPHRoaW5ncz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjM1NAorbXNnaWQgIiIKKyJGb3JjZSBvciByZWZ1c2UgKEI8bm8tZm9yY2U+IGFuZCBCPHJlZnVzZT4gbWVhbiB0aGUgc2FtZSB0aGluZykgIHRvIGRvIHNvbWUgIgorInRoaW5ncy4gSTx0aGluZ3M+IGlzIGEgY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2YgdGhpbmdzIHNwZWNpZmllZCBiZWxvdy4gQjwtLSIKKyJmb3JjZS1oZWxwPiBkaXNwbGF5cyBhIG1lc3NhZ2UgZGVzY3JpYmluZyB0aGVtLiAgVGhpbmdzIG1hcmtlZCB3aXRoICgqKSBhcmUgIgorImZvcmNlZCBieSBkZWZhdWx0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzU4Cittc2dpZCAiIgorIkk8V2FybmluZzogVGhlc2Ugb3B0aW9ucyBhcmUgbW9zdGx5IGludGVuZGVkIHRvIGJlIHVzZWQgYnkgZXhwZXJ0cyBvbmx5LiAiCisiVXNpbmcgdGhlbSB3aXRob3V0IGZ1bGx5IHVuZGVyc3RhbmRpbmcgdGhlaXIgZWZmZWN0cyBtYXkgYnJlYWsgeW91ciB3aG9sZSAiCisic3lzdGVtLj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjM2MQorbXNnaWQgIkI8YWxsPjogVHVybnMgb24gKG9yIG9mZikgYWxsIGZvcmNlIG9wdGlvbnMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTozNjQKK21zZ2lkICIiCisiQjxkb3duZ3JhZGU+KCopOiBJbnN0YWxsIGEgcGFja2FnZSwgZXZlbiBpZiBuZXdlciB2ZXJzaW9uIG9mIGl0IGlzIGFscmVhZHkgIgorImluc3RhbGxlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjM3MQorbXNnaWQgIiIKKyJJPFdhcm5pbmc6IEF0IHByZXNlbnQgZHBrZyBkb2VzIG5vdCBkbyBhbnkgZGVwZW5kZW5jeSBjaGVja2luZyBvbiBkb3duZ3JhZGVzICIKKyJhbmQgdGhlcmVmb3JlIHdpbGwgbm90IHdhcm4geW91IGlmIHRoZSBkb3duZ3JhZGUgYnJlYWtzIHRoZSBkZXBlbmRlbmN5IG9mICIKKyJzb21lIG90aGVyIHBhY2thZ2UuIFRoaXMgY2FuIGhhdmUgc2VyaW91cyBzaWRlIGVmZmVjdHMsIGRvd25ncmFkaW5nICIKKyJlc3NlbnRpYWwgc3lzdGVtIGNvbXBvbmVudHMgY2FuIGV2ZW4gbWFrZSB5b3VyIHdob2xlIHN5c3RlbSB1bnVzYWJsZS4gVXNlICIKKyJ3aXRoIGNhcmUuPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6Mzc1Cittc2dpZCAiIgorIkI8Y29uZmlndXJlLWFueT46IENvbmZpZ3VyZSBhbHNvIGFueSB1bnBhY2tlZCBidXQgdW5jb25maWd1cmVkIHBhY2thZ2VzIG9uICIKKyJ3aGljaCB0aGUgY3VycmVudCBwYWNrYWdlIGRlcGVuZHMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTozNzgKK21zZ2lkICJCPGhvbGQ+OiBQcm9jZXNzIHBhY2thZ2VzIGV2ZW4gd2hlbiBtYXJrZWQgXCJob2xkXCIuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTozODMKK21zZ2lkICIiCisiQjxyZW1vdmUtcmVpbnN0cmVxPjogUmVtb3ZlIGEgcGFja2FnZSwgZXZlbiBpZiBpdCdzIGJyb2tlbiBhbmQgbWFya2VkIHRvICIKKyJyZXF1aXJlIHJlaW5zdGFsbGF0aW9uLiBUaGlzIG1heSwgZm9yIGV4YW1wbGUsIGNhdXNlIHBhcnRzIG9mIHRoZSBwYWNrYWdlIHRvICIKKyJyZW1haW4gb24gdGhlIHN5c3RlbSwgd2hpY2ggd2lsbCB0aGVuIGJlIGZvcmdvdHRlbiBieSBCPGRwa2c+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6Mzg4Cittc2dpZCAiIgorIkI8cmVtb3ZlLWVzc2VudGlhbD46IFJlbW92ZSwgZXZlbiBpZiB0aGUgcGFja2FnZSBpcyBjb25zaWRlcmVkIGVzc2VudGlhbC4gIgorIkVzc2VudGlhbCBwYWNrYWdlcyBjb250YWluIG1vc3RseSB2ZXJ5IGJhc2ljIFVuaXggY29tbWFuZHMuIFJlbW92aW5nIHRoZW0gIgorIm1pZ2h0IGNhdXNlIHRoZSB3aG9sZSBzeXN0ZW0gdG8gc3RvcCB3b3JraW5nLCBzbyB1c2Ugd2l0aCBjYXV0aW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzkxCittc2dpZCAiQjxkZXBlbmRzPjogVHVybiBhbGwgZGVwZW5kZW5jeSBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6Mzk0Cittc2dpZCAiIgorIkI8ZGVwZW5kcy12ZXJzaW9uPjogRG9uJ3QgY2FyZSBhYm91dCB2ZXJzaW9ucyB3aGVuIGNoZWNraW5nIGRlcGVuZGVuY2llcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjM5NworbXNnaWQgIkI8YnJlYWtzPjogSW5zdGFsbCwgZXZlbiBpZiB0aGlzIHdvdWxkIGJyZWFrIGFub3RoZXIgcGFja2FnZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQwMQorbXNnaWQgIiIKKyJCPGNvbmZsaWN0cz46IEluc3RhbGwsIGV2ZW4gaWYgaXQgY29uZmxpY3RzIHdpdGggYW5vdGhlciBwYWNrYWdlLiBUaGlzIGlzICIKKyJkYW5nZXJvdXMsIGZvciBpdCB3aWxsIHVzdWFsbHkgY2F1c2Ugb3ZlcndyaXRpbmcgb2Ygc29tZSBmaWxlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQwNgorbXNnaWQgIiIKKyJCPGNvbmZtaXNzPjogQWx3YXlzIGluc3RhbGwgYSBtaXNzaW5nIGNvbmZmaWxlLiBUaGlzIGlzIGRhbmdlcm91cywgc2luY2UgaXQgIgorIm1lYW5zIG5vdCBwcmVzZXJ2aW5nIGEgY2hhbmdlIChyZW1vdmluZykgbWFkZSB0byB0aGUgZmlsZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQxMQorbXNnaWQgIiIKKyJCPGNvbmZuZXc+OiBJZiBhIGNvbmZmaWxlIGhhcyBiZWVuIG1vZGlmaWVkIGFsd2F5cyBpbnN0YWxsIHRoZSBuZXcgdmVyc2lvbiAiCisid2l0aG91dCBwcm9tcHRpbmcsIHVubGVzcyB0aGUgQjwtLWZvcmNlLWNvbmZkZWY+IGlzIGFsc28gc3BlY2lmaWVkLCBpbiB3aGljaCAiCisiY2FzZSB0aGUgZGVmYXVsdCBhY3Rpb24gaXMgcHJlZmVycmVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDE2Cittc2dpZCAiIgorIkI8Y29uZm9sZD46IElmIGEgY29uZmZpbGUgaGFzIGJlZW4gbW9kaWZpZWQgYWx3YXlzIGtlZXAgdGhlIG9sZCB2ZXJzaW9uICIKKyJ3aXRob3V0IHByb21wdGluZywgdW5sZXNzIHRoZSBCPC0tZm9yY2UtY29uZmRlZj4gaXMgYWxzbyBzcGVjaWZpZWQsIGluIHdoaWNoICIKKyJjYXNlIHRoZSBkZWZhdWx0IGFjdGlvbiBpcyBwcmVmZXJyZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0MjIKK21zZ2lkICIiCisiQjxjb25mZGVmPjogSWYgYSBjb25mZmlsZSBoYXMgYmVlbiBtb2RpZmllZCBhbHdheXMgY2hvb3NlIHRoZSBkZWZhdWx0ICIKKyJhY3Rpb24uIElmIHRoZXJlIGlzIG5vIGRlZmF1bHQgYWN0aW9uIGl0IHdpbGwgc3RvcCB0byBhc2sgdGhlIHVzZXIgdW5sZXNzICIKKyJCPC0tZm9yY2UtY29uZm5ldz4gb3IgQjwtLWZvcmNlLWNvbmZvbGQ+IGlzIGFsc28gYmVlbiBnaXZlbiwgaW4gd2hpY2ggY2FzZSAiCisiaXQgd2lsbCB1c2UgdGhhdCB0byBkZWNpZGUgdGhlIGZpbmFsIGFjdGlvbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQyOQorbXNnaWQgIiIKKyJCPGNvbmZhc2s+OiBJZiBhIGNvbmZmaWxlIGhhcyBiZWVuIG1vZGlmaWVkIGFsd2F5cyBvZmZlciB0byByZXBsYWNlIGl0IHdpdGggIgorInRoZSB2ZXJzaW9uIGluIHRoZSBwYWNrYWdlLCBldmVuIGlmIHRoZSB2ZXJzaW9uIGluIHRoZSBwYWNrYWdlIGRpZCBub3QgIgorImNoYW5nZS4gSWYgYW55IG9mIEI8LS1mb3JjZS1jb25mbWlzcz4sIEI8LS1mb3JjZS1jb25mbmV3PiwgQjwtLWZvcmNlLSIKKyJjb25mb2xkPiwgb3IgQjwtLWZvcmNlLWNvbmZkZWY+IGlzIGFsc28gZ2l2ZW4sIGl0IHdpbGwgYmUgdXNlZCB0byBkZWNpZGUgdGhlICIKKyJmaW5hbCBhY3Rpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0MzIKK21zZ2lkICJCPG92ZXJ3cml0ZT46IE92ZXJ3cml0ZSBvbmUgcGFja2FnZSdzIGZpbGUgd2l0aCBhbm90aGVyJ3MgZmlsZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQzNQorbXNnaWQgIkI8b3ZlcndyaXRlLWRpcj4gT3ZlcndyaXRlIG9uZSBwYWNrYWdlJ3MgZGlyZWN0b3J5IHdpdGggYW5vdGhlcidzIGZpbGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0MzgKK21zZ2lkICIiCisiQjxvdmVyd3JpdGUtZGl2ZXJ0ZWQ+OiBPdmVyd3JpdGUgYSBkaXZlcnRlZCBmaWxlIHdpdGggYW4gdW5kaXZlcnRlZCB2ZXJzaW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDQ2Cittc2dpZCAiIgorIkI8dW5zYWZlLWlvPjogRG8gbm90IHBlcmZvcm0gc2FmZSBJL08gb3BlcmF0aW9ucyB3aGVuIHVucGFja2luZy4gQ3VycmVudGx5ICIKKyJ0aGlzIGltcGxpZXMgbm90IHBlcmZvcm1pbmcgZmlsZSBzeXN0ZW0gc3luY3MgYmVmb3JlIGZpbGUgcmVuYW1lcywgd2hpY2ggaXMgIgorImtub3duIHRvIGNhdXNlIHN1YnN0YW50aWFsIHBlcmZvcm1hbmNlIGRlZ3JhZGF0aW9uIG9uIHNvbWUgZmlsZSBzeXN0ZW1zLCAiCisidW5mb3J0dW5hdGVseSB0aGUgb25lcyB0aGF0IHJlcXVpcmUgdGhlIHNhZmUgSS9PIG9uIHRoZSBmaXJzdCBwbGFjZSBkdWUgdG8gIgorInRoZWlyIHVucmVsaWFibGUgYmVoYXZpb3VyIGNhdXNpbmcgemVyby1sZW5ndGggZmlsZXMgb24gYWJydXB0IHN5c3RlbSAiCisiY3Jhc2hlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQ1MgorbXNnaWQgIiIKKyJJPE5vdGU+OiBGb3IgZXh0NCwgdGhlIG1haW4gb2ZmZW5kZXIsIGNvbnNpZGVyIHVzaW5nIGluc3RlYWQgdGhlIG1vdW50ICIKKyJvcHRpb24gQjxub2RlbGFsbG9jPiwgd2hpY2ggd2lsbCBmaXggYm90aCB0aGUgcGVyZm9ybWFuY2UgZGVncmFkYXRpb24gYW5kICIKKyJ0aGUgZGF0YSBzYWZldHkgaXNzdWVzLCB0aGUgbGF0dGVyIGJ5IG1ha2luZyB0aGUgZmlsZSBzeXN0ZW0gbm90IHByb2R1Y2UgIgorInplcm8tbGVuZ3RoIGZpbGVzIG9uIGFicnVwdCBzeXN0ZW0gY3Jhc2hlcyB3aXRoIGFueSBzb2Z0d2FyZSBub3QgZG9pbmcgc3luY3MgIgorImJlZm9yZSBhdG9taWMgcmVuYW1lcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQ1NQorbXNnaWQgIiIKKyJJPFdhcm5pbmc6IFVzaW5nIHRoaXMgb3B0aW9uIG1pZ2h0IGltcHJvdmUgcGVyZm9ybWFuY2UgYXQgdGhlIGNvc3Qgb2YgbG9zaW5nICIKKyJkYXRhLCB1c2Ugd2l0aCBjYXJlLj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQ1OAorbXNnaWQgIkI8YXJjaGl0ZWN0dXJlPjogUHJvY2VzcyBldmVuIHBhY2thZ2VzIHdpdGggd3Jvbmcgb3Igbm8gYXJjaGl0ZWN0dXJlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDYxCittc2dpZCAiQjxiYWQtdmVyc2lvbj46IFByb2Nlc3MgZXZlbiBwYWNrYWdlcyB3aXRoIHdyb25nIHZlcnNpb25zLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDY0Cittc2dpZCAiIgorIkI8YmFkLXBhdGg+OiBCPFBBVEg+IGlzIG1pc3NpbmcgaW1wb3J0YW50IHByb2dyYW1zLCBzbyBwcm9ibGVtcyBhcmUgbGlrZWx5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDY3Cittc2dpZCAiQjxub3Qtcm9vdD46IFRyeSB0byAoZGUpaW5zdGFsbCB0aGluZ3MgZXZlbiB3aGVuIG5vdCByb290LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDcwCittc2dpZCAiQjxiYWQtdmVyaWZ5PjogSW5zdGFsbCBhIHBhY2thZ2UgZXZlbiBpZiBpdCBmYWlscyBhdXRoZW50aWNpdHkgY2hlY2suIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NDcxCisjLCBuby13cmFwCittc2dpZCAiQjwtLWlnbm9yZS1kZXBlbmRzPj1JPHBhY2thZ2U+LC4uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDc1Cittc2dpZCAiIgorIklnbm9yZSBkZXBlbmRlbmN5LWNoZWNraW5nIGZvciBzcGVjaWZpZWQgcGFja2FnZXMgKGFjdHVhbGx5LCBjaGVja2luZyBpcyAiCisicGVyZm9ybWVkLCBidXQgb25seSB3YXJuaW5ncyBhYm91dCBjb25mbGljdHMgYXJlIGdpdmVuLCBub3RoaW5nIGVsc2UpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjQ3NQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1uby1hY3Q+LCBCPC0tZHJ5LXJ1bj4sIEI8LS1zaW11bGF0ZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQ4MAorbXNnaWQgIiIKKyJEbyBldmVyeXRoaW5nIHdoaWNoIGlzIHN1cHBvc2VkIHRvIGJlIGRvbmUsIGJ1dCBkb24ndCB3cml0ZSBhbnkgY2hhbmdlcy4gIgorIlRoaXMgaXMgdXNlZCB0byBzZWUgd2hhdCB3b3VsZCBoYXBwZW4gd2l0aCB0aGUgc3BlY2lmaWVkIGFjdGlvbiwgd2l0aG91dCAiCisiYWN0dWFsbHkgbW9kaWZ5aW5nIGFueXRoaW5nLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDg1Cittc2dpZCAiIgorIkJlIHN1cmUgdG8gZ2l2ZSBCPC0tbm8tYWN0PiBiZWZvcmUgdGhlIGFjdGlvbi1wYXJhbWV0ZXIsIG9yIHlvdSBtaWdodCBlbmQgdXAgIgorIndpdGggdW5kZXNpcmFibGUgcmVzdWx0cy4gKGUuZy4gQjxkcGtnIC0tcHVyZ2UgZm9vIC0tbm8tYWN0PiB3aWxsIGZpcnN0ICIKKyJwdXJnZSBwYWNrYWdlIGZvbyBhbmQgdGhlbiB0cnkgdG8gcHVyZ2UgcGFja2FnZSAtLW5vLWFjdCwgZXZlbiB0aG91Z2ggeW91ICIKKyJwcm9iYWJseSBleHBlY3RlZCBpdCB0byBhY3R1YWxseSBkbyBub3RoaW5nKSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjQ4NQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1SPiwgQjwtLXJlY3Vyc2l2ZT4iCittc2dzdHIgIkI8LS12ZXJzaW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQ5MQorbXNnaWQgIiIKKyJSZWN1cnNpdmVseSBoYW5kbGUgYWxsIHJlZ3VsYXIgZmlsZXMgbWF0Y2hpbmcgcGF0dGVybiBCPCouZGViPiBmb3VuZCBhdCAiCisic3BlY2lmaWVkIGRpcmVjdG9yaWVzIGFuZCBhbGwgb2YgaXRzIHN1YmRpcmVjdG9yaWVzLiBUaGlzIGNhbiBiZSB1c2VkIHdpdGggIgorIkI8LWk+LCBCPC1BPiwgQjwtLWluc3RhbGw+LCBCPC0tdW5wYWNrPiBhbmQgQjwtLWF2YWlsPiBhY3Rpb25zLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjQ5MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1HPiIKK21zZ3N0ciAiQjwtLW5ldz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0OTUKK21zZ2lkICIiCisiRG9uJ3QgaW5zdGFsbCBhIHBhY2thZ2UgaWYgYSBuZXdlciB2ZXJzaW9uIG9mIHRoZSBzYW1lIHBhY2thZ2UgaXMgYWxyZWFkeSAiCisiaW5zdGFsbGVkLiBUaGlzIGlzIGFuIGFsaWFzIG9mIEI8LS1yZWZ1c2UtZG93bmdyYWRlPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo0OTUgZHBrZy1idWlsZHBhY2thZ2UuMToyMTcgZHBrZy1jaGVja2J1aWxkZGVwcy4xOjE5CisjOiBkcGtnLXF1ZXJ5LjE6MTE4IGRwa2ctc2hsaWJkZXBzLjE6MjExIGRwa2ctdHJpZ2dlci4xOjM5CisjLCBuby13cmFwCittc2dpZCAiQjwtLWFkbWluZGlyPT5JPGRpcj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjUwMAorbXNnaWQgIiIKKyJDaGFuZ2UgZGVmYXVsdCBhZG1pbmlzdHJhdGl2ZSBkaXJlY3RvcnksIHdoaWNoIGNvbnRhaW5zIG1hbnkgZmlsZXMgdGhhdCBnaXZlICIKKyJpbmZvcm1hdGlvbiBhYm91dCBzdGF0dXMgb2YgaW5zdGFsbGVkIG9yIHVuaW5zdGFsbGVkIHBhY2thZ2VzLCBldGMuICAiCisiKERlZmF1bHRzIHRvIEk8L3Zhci9saWIvZHBrZz4pIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTAwCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1pbnN0ZGlyPT5JPGRpcj4iCittc2dzdHIgIkI8LS1zaG93Zm9ybWF0PT5JPGZvcm3DoXR1bT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1MDcKK21zZ2lkICIiCisiQ2hhbmdlIGRlZmF1bHQgaW5zdGFsbGF0aW9uIGRpcmVjdG9yeSB3aGljaCByZWZlcnMgdG8gdGhlIGRpcmVjdG9yeSB3aGVyZSAiCisicGFja2FnZXMgYXJlIHRvIGJlIGluc3RhbGxlZC4gQjxpbnN0ZGlyPiBpcyBhbHNvIHRoZSBkaXJlY3RvcnkgcGFzc2VkIHRvICIKKyJCPGNocm9vdD4oMikgYmVmb3JlIHJ1bm5pbmcgcGFja2FnZSdzIGluc3RhbGxhdGlvbiBzY3JpcHRzLCB3aGljaCBtZWFucyB0aGF0ICIKKyJ0aGUgc2NyaXB0cyBzZWUgQjxpbnN0ZGlyPiBhcyBhIHJvb3QgZGlyZWN0b3J5LiAgKERlZmF1bHRzIHRvIEk8Lz4pIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTA3CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1yb290PT5JPGRpcj4iCittc2dzdHIgIkI8LS1maWVsZD4sIEI8LWY+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTExCittc2dpZCAiIgorIkNoYW5naW5nIEI8cm9vdD4gY2hhbmdlcyBCPGluc3RkaXI+IHRvIEk8ZGlyPiBhbmQgQjxhZG1pbmRpcj4gdG8gSTxkaXI+QjwvIgorInZhci9saWIvZHBrZz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTExCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LU8+LCBCPC0tc2VsZWN0ZWQtb25seT4iCittc2dzdHIgIkI8LS1pbmZvPiwgQjwtST4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1MTcKK21zZ2lkICIiCisiT25seSBwcm9jZXNzIHRoZSBwYWNrYWdlcyB0aGF0IGFyZSBzZWxlY3RlZCBmb3IgaW5zdGFsbGF0aW9uLiBUaGUgYWN0dWFsICIKKyJtYXJraW5nIGlzIGRvbmUgd2l0aCBCPGRzZWxlY3Q+IG9yIGJ5IEI8ZHBrZz4sIHdoZW4gaXQgaGFuZGxlcyBwYWNrYWdlcy4gRm9yICIKKyJleGFtcGxlLCB3aGVuIGEgcGFja2FnZSBpcyByZW1vdmVkLCBpdCB3aWxsIGJlIG1hcmtlZCBzZWxlY3RlZCBmb3IgIgorImRlaW5zdGFsbGF0aW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjUxNworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1FPiwgQjwtLXNraXAtc2FtZS12ZXJzaW9uPiIKK21zZ3N0ciAiQjwtLXZlcnNpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTIxCittc2dpZCAiIgorIkRvbid0IGluc3RhbGwgdGhlIHBhY2thZ2UgaWYgdGhlIHNhbWUgdmVyc2lvbiBvZiB0aGUgcGFja2FnZSBpcyBhbHJlYWR5ICIKKyJpbnN0YWxsZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1MjMKK21zZ2lkICJCPC0tcHJlLWludm9rZT0+STxjb21tYW5kPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTI1Cittc2dpZCAiQjwtLXBvc3QtaW52b2tlPT5JPGNvbW1hbmQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1MzQKK21zZ2lkICIiCisiU2V0IGFuIGludm9rZSBob29rIEk8Y29tbWFuZD4gdG8gYmUgcnVuIHZpYSBgYHNoIC1jJycgYmVmb3JlIG9yIGFmdGVyIHRoZSAiCisiZHBrZyBydW4gZm9yIHRoZSBJPHVucGFjaz4sIEk8Y29uZmlndXJlPiwgSTxpbnN0YWxsPiwgSTx0cmlnZ2Vycy1vbmx5PiwgIgorIkk8cmVtb3ZlPiBhbmQgSTxwdXJnZT4gZHBrZyBhY3Rpb25zLiBUaGlzIG9wdGlvbiBjYW4gYmUgc3BlY2lmaWVkIG11bHRpcGxlICIKKyJ0aW1lcy4gVGhlIG9yZGVyIHRoZSBvcHRpb25zIGFyZSBzcGVjaWZpZWQgaXMgcHJlc2VydmVkLCB3aXRoIHRoZSBvbmVzIGZyb20gIgorInRoZSBjb25maWd1cmF0aW9uIGZpbGVzIHRha2luZyBwcmVjZWRlbmNlLiAgVGhlIGVudmlyb25tZW50IHZhcmlhYmxlICIKKyJCPERQS0dfSE9PS19BQ1RJT04+IGlzIHNldCBmb3IgdGhlIGhvb2tzIHRvIHRoZSBjdXJyZW50IGRwa2cgYWN0aW9uLiBOb3RlOiAiCisiZnJvbnQtZW5kcyBtaWdodCBjYWxsIGRwa2cgc2V2ZXJhbCB0aW1lcyBwZXIgaW52b2NhdGlvbiwgd2hpY2ggbWlnaHQgcnVuIHRoZSAiCisiaG9va3MgbW9yZSB0aW1lcyB0aGFuIGV4cGVjdGVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTM3Cittc2dpZCAiQjwtLXBhdGgtZXhjbHVkZT0+STxnbG9iLXBhdHRlcm4+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1MzkKK21zZ2lkICJCPC0tcGF0aC1pbmNsdWRlPT5JPGdsb2ItcGF0dGVybj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjU0MgorbXNnaWQgIiIKKyJTZXQgSTxnbG9iLXBhdHRlcm4+IGFzIGEgcGF0aCBmaWx0ZXIsIGVpdGhlciBieSBleGNsdWRpbmcgb3IgcmUtaW5jbHVkaW5nICIKKyJwcmV2aW91c2x5IGV4Y2x1ZGVkIHBhdGhzIG1hdGNoaW5nIHRoZSBzcGVjaWZpZWQgcGF0dGVybnMgZHVyaW5nIGluc3RhbGwuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1NDUKK21zZ2lkICIiCisiSTxXYXJuaW5nOiB0YWtlIGludG8gYWNjb3VudCB0aGF0IGRlcGVuZGluZyBvbiB0aGUgZXhjbHVkZWQgcGF0aHMgeW91IG1pZ2h0ICIKKyJjb21wbGV0ZWx5IGJyZWFrIHlvdXIgc3lzdGVtLCB1c2Ugd2l0aCBjYXV0aW9uLj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjU1NQorbXNnaWQgIiIKKyJUaGUgZ2xvYiBwYXR0ZXJucyB1c2UgdGhlIHNhbWUgd2lsZGNhcmRzIHVzZWQgaW4gdGhlIHNoZWxsLCB3ZXJlICcqJyBtYXRjaGVzICIKKyJhbnkgc2VxdWVuY2Ugb2YgY2hhcmFjdGVycywgaW5jbHVkaW5nIHRoZSBlbXB0eSBzdHJpbmcgYW5kIGFsc28gJy8nLiBGb3IgIgorImV4YW1wbGUsIEk8Jy91c3IvKi9SRUFEKic+IG1hdGNoZXMgSTwnL3Vzci9zaGFyZS9kb2MvcGFja2FnZS9SRUFETUUnPi4gIEFzICIKKyJ1c3VhbCwgJz8nIG1hdGNoZXMgYW55IHNpbmdsZSBjaGFyYWN0ZXIgKGFnYWluLCBpbmNsdWRpbmcgJy8nKS4gQW5kICdbJyAiCisic3RhcnRzIGEgY2hhcmFjdGVyIGNsYXNzLCB3aGljaCBjYW4gY29udGFpbiBhIGxpc3Qgb2YgY2hhcmFjdGVycywgcmFuZ2VzIGFuZCAiCisiY29tcGxlbWVudGF0aW9ucy4gU2VlIEI8Z2xvYj4oNykgZm9yIGRldGFpbGVkIGluZm9ybWF0aW9uIGFib3V0IGdsb2JiaW5nLiAiCisiTm90ZTogdGhlIGN1cnJlbnQgaW1wbGVtZW50YXRpb24gbWlnaHQgcmUtaW5jbHVkZSBtb3JlIGRpcmVjdG9yaWVzIGFuZCAiCisic3ltbGlua3MgdGhhbiBuZWVkZWQsIHRvIGJlIG9uIHRoZSBzYWZlIHNpZGUgYW5kIGF2b2lkIHBvc3NpYmxlIHVucGFjayAiCisiZmFpbHVyZXMsIGZ1dHVyZSB3b3JrIG1pZ2h0IGZpeCB0aGlzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTU4Cittc2dpZCAiIgorIlRoaXMgY2FuIGJlIHVzZWQgdG8gcmVtb3ZlIGFsbCBwYXRocyBleGNlcHQgc29tZSBwYXJ0aWN1bGFyIG9uZXM7IGEgdHlwaWNhbCAiCisiY2FzZSBpczoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjU2MgorIywgbm8td3JhcAorbXNnaWQgIiIKKyJCPC0tcGF0aC1leGNsdWRlPS91c3Ivc2hhcmUvZG9jLyo+XG4iCisiQjwtLXBhdGgtaW5jbHVkZT0vdXNyL3NoYXJlL2RvYy8qL2NvcHlyaWdodD5cbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTY1Cittc2dpZCAidG8gcmVtb3ZlIGFsbCBkb2N1bWVudGF0aW9uIGZpbGVzIGV4Y2VwdCB0aGUgY29weXJpZ2h0IGZpbGVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTY5Cittc2dpZCAiIgorIlRoZXNlIHR3byBvcHRpb25zIGNhbiBiZSBzcGVjaWZpZWQgbXVsdGlwbGUgdGltZXMsIGFuZCBpbnRlcmxlYXZlZCB3aXRoIGVhY2ggIgorIm90aGVyLiBCb3RoIGFyZSBwcm9jZXNzZWQgaW4gdGhlIGdpdmVuIG9yZGVyLCB3aXRoIHRoZSBsYXN0IHJ1bGUgdGhhdCAiCisibWF0Y2hlcyBhIGZpbGUgbmFtZSBtYWtpbmcgdGhlIGRlY2lzaW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjU3MAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1zdGF0dXMtZmQgPkk8bj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjU3NgorbXNnaWQgIiIKKyJTZW5kIG1hY2hpbmUtcmVhZGFibGUgcGFja2FnZSBzdGF0dXMgYW5kIHByb2dyZXNzIGluZm9ybWF0aW9uIHRvIGZpbGUgIgorImRlc2NyaXB0b3IgSTxuPi4gVGhpcyBvcHRpb24gY2FuIGJlIHNwZWNpZmllZCBtdWx0aXBsZSB0aW1lcy4gVGhlICIKKyJpbmZvcm1hdGlvbiBpcyBnZW5lcmFsbHkgb25lIHJlY29yZCBwZXIgbGluZSwgaW4gb25lIG9mIHRoZSBmb2xsb3dpbmcgZm9ybXM6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTc3CisjLCBuby13cmFwCittc2dpZCAiQjxzdGF0dXM6ID5JPHBhY2thZ2U+Qjw6ID5JPHN0YXR1cz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjU4MAorbXNnaWQgIlBhY2thZ2Ugc3RhdHVzIGNoYW5nZWQ7IEk8c3RhdHVzPiBpcyBhcyBpbiB0aGUgc3RhdHVzIGZpbGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTgwCisjLCBuby13cmFwCittc2dpZCAiQjxzdGF0dXM6ID5JPHBhY2thZ2U+QjwgOiBlcnJvciA6ID5JPGV4dGVuZGVkLWVycm9yLW1lc3NhZ2U+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1ODQKK21zZ2lkICIiCisiQW4gZXJyb3Igb2NjdXJyZWQuIEFueSBwb3NzaWJsZSBuZXdsaW5lcyBpbiBJPGV4dGVuZGVkLWVycm9yLW1lc3NhZ2U+IHdpbGwgIgorImJlIGNvbnZlcnRlZCB0byBzcGFjZXMgYmVmb3JlIG91dHB1dC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo1ODQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHN0YXR1czogPkk8ZmlsZT5CPCA6IGNvbmZmaWxlLXByb21wdCA6ICc+STxyZWFsLW9sZD5CPCcgJz5JPHJlYWwtbmV3PkI8JyA+STx1c2VyZWRpdGVkPkI8ID5JPGRpc3RlZGl0ZWQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1ODcKK21zZ2lkICJVc2VyIGlzIGJlaW5nIGFza2VkIGEgY29uZmZpbGUgcXVlc3Rpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTg3CisjLCBuby13cmFwCittc2dpZCAiQjxwcm9jZXNzaW5nOiA+STxzdGFnZT5CPDogPkk8cGFja2FnZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjU5MgorbXNnaWQgIiIKKyJTZW50IGp1c3QgYmVmb3JlIGEgcHJvY2Vzc2luZyBzdGFnZSBzdGFydHMuIEk8c3RhZ2U+IGlzIG9uZSBvZiBCPHVwZ3JhZGU+LCAiCisiQjxpbnN0YWxsPiAoYm90aCBzZW50IGJlZm9yZSB1bnBhY2tpbmcpLCBCPGNvbmZpZ3VyZT4sIEI8dHJpZ3Byb2M+LCAiCisiQjxkaXNhcHBlYXI+LCBCPHJlbW92ZT4sIEI8cHVyZ2U+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjU5MworIywgbm8td3JhcAorbXNnaWQgIkI8LS1zdGF0dXMtbG9nZ2VyPj1JPGNvbW1hbmQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1OTgKK21zZ2lkICIiCisiU2VuZCBtYWNoaW5lLXJlYWRhYmxlIHBhY2thZ2Ugc3RhdHVzIGFuZCBwcm9ncmVzcyBpbmZvcm1hdGlvbiB0byB0aGUgc2hlbGwgIgorIkk8Y29tbWFuZD4ncyBzdGFuZGFyZCBpbnB1dC4gVGhpcyBvcHRpb24gY2FuIGJlIHNwZWNpZmllZCBtdWx0aXBsZSB0aW1lcy4gIgorIlRoZSBvdXRwdXQgZm9ybWF0IHVzZWQgaXMgdGhlIHNhbWUgYXMgaW4gQjwtLXN0YXR1cy1mZC4+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTk5CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1sb2c9Pkk8ZmlsZW5hbWU+IgorbXNnc3RyICJCPC0tbGljZW5jZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2MTEKK21zZ2lkICIiCisiTG9nIHN0YXR1cyBjaGFuZ2UgdXBkYXRlcyBhbmQgYWN0aW9ucyB0byBJPGZpbGVuYW1lPiwgaW5zdGVhZCBvZiB0aGUgZGVmYXVsdCAiCisiSTwvdmFyL2xvZy9kcGtnLmxvZz4uIElmIHRoaXMgb3B0aW9uIGlzIGdpdmVuIG11bHRpcGxlIHRpbWVzLCB0aGUgbGFzdCAiCisiZmlsZW5hbWUgaXMgdXNlZC4gTG9nIG1lc3NhZ2VzIGFyZSBvZiB0aGUgZm9ybSBgWVlZWS1NTS1ERCBISDpNTTpTUyBzdGF0dXMgIgorIkk8c3RhdGU+IEk8cGtnPiBJPGluc3RhbGxlZC12ZXJzaW9uPicgZm9yIHN0YXR1cyBjaGFuZ2UgdXBkYXRlczsgYFlZWVktTU0tREQgIgorIkhIOk1NOlNTIEk8YWN0aW9uPiBJPHBrZz4gSTxpbnN0YWxsZWQtdmVyc2lvbj4gSTxhdmFpbGFibGUtdmVyc2lvbj4nIGZvciAiCisiYWN0aW9ucyB3aGVyZSBJPGFjdGlvbj4gaXMgb25lIG9mIEI8aW5zdGFsbD4sIEI8dXBncmFkZT4sIEI8cmVtb3ZlPiwgIgorIkI8cHVyZ2U+OyBhbmQgYFlZWVktTU0tREQgSEg6TU06U1MgY29uZmZpbGUgSTxmaWxlbmFtZT4gSTxkZWNpc2lvbj4nIGZvciAiCisiY29uZmZpbGUgY2hhbmdlcyB3aGVyZSBJPGRlY2lzaW9uPiBpcyBlaXRoZXIgQjxpbnN0YWxsPiBvciBCPGtlZXA+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjYxMQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tbm8tZGVic2lnPiIKK21zZ3N0ciAiQjwtLW5ldz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2MTQKK21zZ2lkICJEbyBub3QgdHJ5IHRvIHZlcmlmeSBwYWNrYWdlIHNpZ25hdHVyZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NjE0CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1uby10cmlnZ2Vycz4iCittc2dzdHIgIkI8LS1uZXc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NjIzCittc2dpZCAiIgorIkRvIG5vdCBydW4gYW55IHRyaWdnZXJzIGluIHRoaXMgcnVuIChhY3RpdmF0aW9ucyB3aWxsIHN0aWxsIGJlIHJlY29yZGVkKS4gICIKKyJJZiB1c2VkIHdpdGggQjwtLWNvbmZpZ3VyZT4gSTxwYWNrYWdlPiBvciBCPC0tdHJpZ2dlcnMtb25seT4gSTxwYWNrYWdlPiB0aGVuICIKKyJ0aGUgbmFtZWQgcGFja2FnZSBwb3N0aW5zdCB3aWxsIHN0aWxsIGJlIHJ1biBldmVuIGlmIG9ubHkgYSB0cmlnZ2VycyBydW4gaXMgIgorIm5lZWRlZC4gVXNlIG9mIHRoaXMgb3B0aW9uIG1heSBsZWF2ZSBwYWNrYWdlcyBpbiB0aGUgaW1wcm9wZXIgQjx0cmlnZ2Vycy0iCisiYXdhaXRlZD4gYW5kIEI8dHJpZ2dlcnMtcGVuZGluZz4gc3RhdGVzLiBUaGlzIGNhbiBiZSBmaXhlZCBsYXRlciBieSBydW5uaW5nOiAiCisiQjxkcGtnIC0tY29uZmlndXJlIC0tcGVuZGluZz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NjIzCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS10cmlnZ2Vycz4iCittc2dzdHIgIkI8LS1uZXc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NjI2Cittc2dpZCAiQ2FuY2VscyBhIHByZXZpb3VzIEI8LS1uby10cmlnZ2Vycz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2MjggZHBrZy5jZmcuNToxNgorIywgbm8td3JhcAorbXNnaWQgIkk8L2V0Yy9kcGtnL2Rwa2cuY2ZnPiIKK21zZ3N0ciAiSTwvZXRjL2Rwa2cvZHBrZy5jZmc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NjMxCittc2dpZCAiQ29uZmlndXJhdGlvbiBmaWxlIHdpdGggZGVmYXVsdCBvcHRpb25zLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjYzMQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJJPC92YXIvbG9nL2Rwa2cubG9nPiIKK21zZ3N0ciAiSTwvZXRjL2Rwa2cvZHBrZy5jZmc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NjM1Cittc2dpZCAiRGVmYXVsdCBsb2cgZmlsZSAoc2VlIEk8L2V0Yy9kcGtnL2Rwa2cuY2ZnPig1KSBhbmQgb3B0aW9uIEI8LS1sb2c+KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjYzOAorbXNnaWQgIiIKKyJUaGUgb3RoZXIgZmlsZXMgbGlzdGVkIGJlbG93IGFyZSBpbiB0aGVpciBkZWZhdWx0IGRpcmVjdG9yaWVzLCBzZWUgb3B0aW9uICIKKyJCPC0tYWRtaW5kaXI+IHRvIHNlZSBob3cgdG8gY2hhbmdlIGxvY2F0aW9ucyBvZiB0aGVzZSBmaWxlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2MzgKKyMsIG5vLXdyYXAKK21zZ2lkICJJPC92YXIvbGliL2Rwa2cvYXZhaWxhYmxlPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NjQxCittc2dpZCAiTGlzdCBvZiBhdmFpbGFibGUgcGFja2FnZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NjQxCisjLCBuby13cmFwCittc2dpZCAiSTwvdmFyL2xpYi9kcGtnL3N0YXR1cz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjY0NworbXNnaWQgIiIKKyJTdGF0dXNlcyBvZiBhdmFpbGFibGUgcGFja2FnZXMuIFRoaXMgZmlsZSBjb250YWlucyBpbmZvcm1hdGlvbiBhYm91dCB3aGV0aGVyICIKKyJhIHBhY2thZ2UgaXMgbWFya2VkIGZvciByZW1vdmluZyBvciBub3QsIHdoZXRoZXIgaXQgaXMgaW5zdGFsbGVkIG9yIG5vdCwgIgorImV0Yy4gU2VlIHNlY3Rpb24gQjxJTkZPUk1BVElPTiBBQk9VVCBQQUNLQUdFUz4gZm9yIG1vcmUgaW5mby4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjY1MAorbXNnaWQgIiIKKyJUaGUgc3RhdHVzIGZpbGUgaXMgYmFja2VkIHVwIGRhaWx5IGluIEk8L3Zhci9iYWNrdXBzPi4gSXQgY2FuIGJlIHVzZWZ1bCBpZiAiCisiaXQncyBsb3N0IG9yIGNvcnJ1cHRlZCBkdWUgdG8gZmlsZXN5c3RlbXMgdHJvdWJsZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2NTMKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBmaWxlcyBhcmUgY29tcG9uZW50cyBvZiBhIGJpbmFyeSBwYWNrYWdlLiBTZWUgQjxkZWI+KDUpICBmb3IgIgorIm1vcmUgaW5mb3JtYXRpb24gYWJvdXQgdGhlbToiCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2NTMKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiSTxjb250cm9sPiIKK21zZ3N0ciAia29udHJvbGwiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NjU1CisjLCBuby13cmFwCittc2dpZCAiSTxjb25mZmlsZXM+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NjU3CisjLCBuby13cmFwCittc2dpZCAiSTxwcmVpbnN0PiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjY1OQorIywgbm8td3JhcAorbXNnaWQgIkk8cG9zdGluc3Q+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NjYxCisjLCBuby13cmFwCittc2dpZCAiSTxwcmVybT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2NjMKKyMsIG5vLXdyYXAKK21zZ2lkICJJPHBvc3RybT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2cuMTo2NjYgZHBrZy1idWlsZGZsYWdzLjE6MTI4IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjMwIGRwa2ctZGViLjE6MjMyCisjOiBkcGtnLWRpdmVydC44OjExMiBkcGtnLXF1ZXJ5LjE6MjA0IGRwa2ctc3RhdG92ZXJyaWRlLjg6NjggZHBrZy10cmlnZ2VyLjE6NjAKKyM6IGRwa2ctdmVuZG9yLjE6NDIgZHNlbGVjdC4xOjQyMyB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzU0CisjLCBuby13cmFwCittc2dpZCAiRU5WSVJPTk1FTlQiCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2NjcgZHNlbGVjdC4xOjQyNAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPEhPTUU+IgorbXNnc3RyICJCPC0tbmV3PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjY3MQorbXNnaWQgIiIKKyJJZiBzZXQsIEI8ZHBrZz4gd2lsbCB1c2UgaXQgYXMgdGhlIGRpcmVjdG9yeSBmcm9tIHdoaWNoIHRvIHJlYWQgdGhlIHVzZXIgIgorInNwZWNpZmljIGNvbmZpZ3VyYXRpb24gZmlsZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2NzEgZHBrZy1kZWIuMToyMzMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPFRNUERJUj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjY3NQorbXNnaWQgIiIKKyJJZiBzZXQsIEI8ZHBrZz4gd2lsbCB1c2UgaXQgYXMgdGhlIGRpcmVjdG9yeSBpbiB3aGljaCB0byBjcmVhdGUgdGVtcG9yYXJ5ICIKKyJmaWxlcyBhbmQgZGlyZWN0b3JpZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6Njc1CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8UEFHRVI+IgorbXNnc3RyICJCPC0tbmV3PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjY3OAorbXNnaWQgIlRoZSBwcm9ncmFtIEI8ZHBrZz4gd2lsbCBleGVjdXRlIHdoZW4gZGlzcGxheWluZyB0aGUgY29uZmZpbGVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjY3OAorIywgbm8td3JhcAorbXNnaWQgIkI8U0hFTEw+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2ODEKK21zZ2lkICJUaGUgcHJvZ3JhbSBCPGRwa2c+IHdpbGwgZXhlY3V0ZSB3aGVuIHN0YXJ0aW5nIGEgbmV3IHNoZWxsLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjY4MSBkcGtnLXF1ZXJ5LjE6MjA5CisjLCBuby13cmFwCittc2dpZCAiQjxDT0xVTU5TPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6Njg1Cittc2dpZCAiIgorIlNldHMgdGhlIG51bWJlciBvZiBjb2x1bW5zIEI8ZHBrZz4gc2hvdWxkIHVzZSB3aGVuIGRpc3BsYXlpbmcgZm9ybWF0dGVkICIKKyJ0ZXh0LiBDdXJyZW50bHkgb25seSB1c2VkIGJ5IC1sLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjY4NQorIywgbm8td3JhcAorbXNnaWQgIkI8RFBLR19TSEVMTF9SRUFTT04+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2ODkKK21zZ2lkICIiCisiRGVmaW5lZCBieSBCPGRwa2c+IG9uIHRoZSBzaGVsbCBzcGF3bmVkIG9uIHRoZSBjb25mZmlsZSBwcm9tcHQgdG8gZXhhbWluZSAiCisidGhlIHNpdHVhdGlvbi4gQ3VycmVudCB2YWxpZCB2YWx1ZTogQjxjb25mZmlsZS1wcm9tcHQ+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjY4OQorIywgbm8td3JhcAorbXNnaWQgIkI8RFBLR19DT05GRklMRV9PTEQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2OTMKK21zZ2lkICIiCisiRGVmaW5lZCBieSBCPGRwa2c+IG9uIHRoZSBzaGVsbCBzcGF3bmVkIG9uIHRoZSBjb25mZmlsZSBwcm9tcHQgdG8gZXhhbWluZSAiCisidGhlIHNpdHVhdGlvbi4gQ29udGFpbnMgdGhlIHBhdGggdG8gdGhlIG9sZCBjb25mZmlsZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2OTMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPERQS0dfQ09ORkZJTEVfTkVXPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6Njk3Cittc2dpZCAiIgorIkRlZmluZWQgYnkgQjxkcGtnPiBvbiB0aGUgc2hlbGwgc3Bhd25lZCBvbiB0aGUgY29uZmZpbGUgcHJvbXB0IHRvIGV4YW1pbmUgIgorInRoZSBzaXR1YXRpb24uIENvbnRhaW5zIHRoZSBwYXRoIHRvIHRoZSBuZXcgY29uZmZpbGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6Njk3CisjLCBuby13cmFwCittc2dpZCAiQjxEUEtHX1JVTk5JTkdfVkVSU0lPTj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjcwMQorbXNnaWQgIiIKKyJEZWZpbmVkIGJ5IEI8ZHBrZz4gb24gdGhlIG1haW50YWluZXIgc2NyaXB0IGVudmlyb25tZW50IHRvIHRoZSB2ZXJzaW9uIG9mICIKKyJ0aGUgY3VycmVudGx5IHJ1bm5pbmcgQjxkcGtnPiBpbnN0YW5jZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo3MDEgZHBrZy1kaXZlcnQuODoxMTcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPERQS0dfTUFJTlRTQ1JJUFRfUEFDS0FHRT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjcwNQorbXNnaWQgIiIKKyJEZWZpbmVkIGJ5IEI8ZHBrZz4gb24gdGhlIG1haW50YWluZXIgc2NyaXB0IGVudmlyb25tZW50IHRvIHRoZSBwYWNrYWdlIG5hbWUgIgorImJlaW5nIGhhbmRsZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NzA1CisjLCBuby13cmFwCittc2dpZCAiQjxEUEtHX01BSU5UU0NSSVBUX0FSQ0g+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3MDkKK21zZ2lkICIiCisiRGVmaW5lZCBieSBCPGRwa2c+IG9uIHRoZSBtYWludGFpbmVyIHNjcmlwdCBlbnZpcm9ubWVudCB0byB0aGUgYXJjaGl0ZWN0dXJlICIKKyJ0aGUgcGFja2FnZSBnb3QgYnVpbHQgZm9yLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjcwOQorIywgbm8td3JhcAorbXNnaWQgIkI8RFBLR19NQUlOVFNDUklQVF9OQU1FPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzEzCittc2dpZCAiIgorIkRlZmluZWQgYnkgQjxkcGtnPiBvbiB0aGUgbWFpbnRhaW5lciBzY3JpcHQgZW52aXJvbm1lbnQgdG8gdGhlIG5hbWUgb2YgdGhlICIKKyJzY3JpcHQgcnVubmluZyAocHJlaW5zdCwgcG9zdGluc3QsIHByZXJtLCBwb3N0cm0pLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzE2Cittc2dpZCAiVG8gbGlzdCBwYWNrYWdlcyByZWxhdGVkIHRvIHRoZSBlZGl0b3IgQjx2aT4oMSk6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3MTgKKyMsIG5vLXdyYXAKK21zZ2lkICIgICAgIEI8ZHBrZyAtbCBcXChhcSp2aSpcXChhcT5cbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzIxCittc2dpZCAiVG8gc2VlIHRoZSBlbnRyaWVzIGluIEk8L3Zhci9saWIvZHBrZy9hdmFpbGFibGU+IG9mIHR3byBwYWNrYWdlczoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjcyMworIywgbm8td3JhcAorbXNnaWQgIiAgICAgQjxkcGtnIC0tcHJpbnQtYXZhaWwgZWx2aXMgdmltIHwgbGVzcz5cbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzI2Cittc2dpZCAiVG8gc2VhcmNoIHRoZSBsaXN0aW5nIG9mIHBhY2thZ2VzIHlvdXJzZWxmOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzI4CisjLCBuby13cmFwCittc2dpZCAiICAgICBCPGxlc3MgL3Zhci9saWIvZHBrZy9hdmFpbGFibGU+XG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjczMQorbXNnaWQgIlRvIHJlbW92ZSBhbiBpbnN0YWxsZWQgZWx2aXMgcGFja2FnZToiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjczMworIywgbm8td3JhcAorbXNnaWQgIiAgICAgQjxkcGtnIC1yIGVsdmlzPlxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3MzgKK21zZ2lkICIiCisiVG8gaW5zdGFsbCBhIHBhY2thZ2UsIHlvdSBmaXJzdCBuZWVkIHRvIGZpbmQgaXQgaW4gYW4gYXJjaGl2ZSBvciBDRFJPTS4gVGhlICIKKyJcImF2YWlsYWJsZVwiIGZpbGUgc2hvd3MgdGhhdCB0aGUgdmltIHBhY2thZ2UgaXMgaW4gc2VjdGlvbiBcImVkaXRvcnNcIjoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjc0MQorIywgbm8td3JhcAorbXNnaWQgIiIKKyIgICAgIEI8Y2QgL21lZGlhL2Nkcm9tL3Bvb2wvbWFpbi92L3ZpbT5cbiIKKyIgICAgIEI8ZHBrZyAtaSB2aW1fNC41LTMuZGViPlxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3NDQKK21zZ2lkICJUbyBtYWtlIGEgbG9jYWwgY29weSBvZiB0aGUgcGFja2FnZSBzZWxlY3Rpb24gc3RhdGVzOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzQ2CisjLCBuby13cmFwCittc2dpZCAiICAgICBCPGRwa2cgLS1nZXQtc2VsZWN0aW9ucyBFPGd0Pm15c2VsZWN0aW9ucz5cbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzUwCittc2dpZCAiIgorIllvdSBtaWdodCB0cmFuc2ZlciB0aGlzIGZpbGUgdG8gYW5vdGhlciBjb21wdXRlciwgYW5kIGluc3RhbGwgaXQgdGhlcmUgd2l0aDoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjc1MworIywgbm8td3JhcAorbXNnaWQgIiIKKyIgICAgIEI8ZHBrZyAtLWNsZWFyLXNlbGVjdGlvbnM+XG4iCisiICAgICBCPGRwa2cgLS1zZXQtc2VsZWN0aW9ucyBFPGx0Pm15c2VsZWN0aW9ucz5cbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzU5Cittc2dpZCAiIgorIk5vdGUgdGhhdCB0aGlzIHdpbGwgbm90IGFjdHVhbGx5IGluc3RhbGwgb3IgcmVtb3ZlIGFueXRoaW5nLCBidXQganVzdCBzZXQgIgorInRoZSBzZWxlY3Rpb24gc3RhdGUgb24gdGhlIHJlcXVlc3RlZCBwYWNrYWdlcy4gWW91IHdpbGwgbmVlZCBzb21lIG90aGVyICIKKyJhcHBsaWNhdGlvbiB0byBhY3R1YWxseSBkb3dubG9hZCBhbmQgaW5zdGFsbCB0aGUgcmVxdWVzdGVkIHBhY2thZ2VzLiBGb3IgIgorImV4YW1wbGUsIHJ1biBCPGFwdC1nZXQgZHNlbGVjdC11cGdyYWRlPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjc2MgorbXNnaWQgIiIKKyJPcmRpbmFyaWx5LCB5b3Ugd2lsbCBmaW5kIHRoYXQgQjxkc2VsZWN0PigxKSBwcm92aWRlcyBhIG1vcmUgY29udmVuaWVudCB3YXkgIgorInRvIG1vZGlmeSB0aGUgcGFja2FnZSBzZWxlY3Rpb24gc3RhdGVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy4xOjc2NAorIywgbm8td3JhcAorbXNnaWQgIkFERElUSU9OQUwgRlVOQ1RJT05BTElUWSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzY3Cittc2dpZCAiIgorIkFkZGl0aW9uYWwgZnVuY3Rpb25hbGl0eSBjYW4gYmUgZ2FpbmVkIGJ5IGluc3RhbGxpbmcgYW55IG9mIHRoZSBmb2xsb3dpbmcgIgorInBhY2thZ2VzOiBCPGFwdD4sIEI8YXB0aXR1ZGU+IGFuZCBCPGRlYnN1bXM+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6Nzc5Cittc2dpZCAiIgorIkI8YXB0aXR1ZGU+KDEpLCBCPGFwdD4oMSksIEI8ZHNlbGVjdD4oMSksIEI8ZHBrZy1kZWI+KDEpLCBCPGRwa2ctcXVlcnk+KDEpLCAiCisiQjxkZWI+KDUpLCBCPGRlYi1jb250cm9sPig1KSwgQjxkcGtnLmNmZz4oNSksIGFuZCBCPGRwa2ctcmVjb25maWd1cmU+KDgpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzgyCittc2dpZCAiQjwtLW5vLWFjdD4gdXN1YWxseSBnaXZlcyBsZXNzIGluZm9ybWF0aW9uIHRoYW4gbWlnaHQgYmUgaGVscGZ1bC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjc4NSBkcGtnLmNmZy41OjIyCittc2dpZCAiIgorIlNlZSBJPC91c3Ivc2hhcmUvZG9jL2Rwa2cvVEhBTktTPiBmb3IgdGhlIGxpc3Qgb2YgcGVvcGxlIHdobyBoYXZlICIKKyJjb250cmlidXRlZCB0byBCPGRwa2c+LiIKK21zZ3N0ciAiIgorIkzDoXNkIGEgSTwvdXNyL3NoYXJlL2RvYy9kcGtnL1RIQU5LUz4gZsOhamx0LCBtZWx5YmVuIGEgQjxkcGtnPiBrw6lzesOtdMOpc8OpdCAiCisic2Vnw610xZEgc3plbcOpbHllayBsaXN0w6FqYSB0YWzDoWxoYXTDsy4iCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLWFyY2hpdGVjdHVyZSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjQKK21zZ2lkICIiCisiZHBrZy1hcmNoaXRlY3R1cmUgLSBzZXQgYW5kIGRldGVybWluZSB0aGUgYXJjaGl0ZWN0dXJlIGZvciBwYWNrYWdlIGJ1aWxkaW5nIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6OAorIywgZnV6enkKK21zZ2lkICJCPGRwa2ctYXJjaGl0ZWN0dXJlPiBbSTxvcHRpb24+Li4uXSBbSTxjb21tYW5kPl0iCittc2dzdHIgIkI8ZHBrZy1kZWI+IEI8LWM+fEI8LS1jb250ZW50cz4gSTxhcmNow612dW0+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEzCittc2dpZCAiIgorImRwa2ctYXJjaGl0ZWN0dXJlIGRvZXMgcHJvdmlkZSBhIGZhY2lsaXR5IHRvIGRldGVybWluZSBhbmQgc2V0IHRoZSBidWlsZCBhbmQgIgorImhvc3QgYXJjaGl0ZWN0dXJlIGZvciBwYWNrYWdlIGJ1aWxkaW5nLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjE2Cittc2dpZCAiIgorIlRoZSBidWlsZCBhcmNoaXRlY3R1cmUgaXMgYWx3YXlzIGRldGVybWluZWQgYnkgYW4gZXh0ZXJuYWwgY2FsbCB0byBCPGRwa2c+IgorIigxKSwgYW5kIGNhbiBub3QgYmUgc2V0IGF0IHRoZSBjb21tYW5kIGxpbmUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjUKK21zZ2lkICIiCisiWW91IGNhbiBzcGVjaWZ5IHRoZSBob3N0IGFyY2hpdGVjdHVyZSBieSBwcm92aWRpbmcgb25lIG9yIGJvdGggb2YgdGhlICIKKyJvcHRpb25zIEI8LWE+IGFuZCBCPC10Pi4gVGhlIGRlZmF1bHQgaXMgZGV0ZXJtaW5lZCBieSBhbiBleHRlcm5hbCBjYWxsIHRvICIKKyJCPGdjYz4oMSksIG9yIHRoZSBzYW1lIGFzIHRoZSBidWlsZCBhcmNoaXRlY3R1cmUgaWYgXFxzLTFDQ1xcczAgb3IgZ2NjIGFyZSAiCisiYm90aCBub3QgYXZhaWxhYmxlLiBPbmUgb3V0IG9mIEI8LWE+IGFuZCBCPC10PiBpcyBzdWZmaWNpZW50LCB0aGUgdmFsdWUgb2YgIgorInRoZSBvdGhlciB3aWxsIGJlIHNldCB0byBhIHVzYWJsZSBkZWZhdWx0LiBJbmRlZWQsIGl0IGlzIG9mdGVuIGJldHRlciB0byAiCisib25seSBzcGVjaWZ5IG9uZSwgYmVjYXVzZSBCPGRwa2ctYXJjaGl0ZWN0dXJlPiB3aWxsIHdhcm4geW91IGlmIHlvdXIgY2hvaWNlICIKKyJkb2VzIG5vdCBtYXRjaCB0aGUgZGVmYXVsdC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjYgZHBrZy1idWlsZGZsYWdzLjE6NDUgZHBrZy1kZWIuMToyNyBkcGtnLWRpdmVydC44OjI0CisjOiBkcGtnLXF1ZXJ5LjE6MTMgZHBrZy1zb3VyY2UuMToxOCBkcGtnLXNwbGl0LjE6MzEgZHBrZy1zdGF0b3ZlcnJpZGUuODoyMworIzogZHBrZy10cmlnZ2VyLjE6MjQgZHBrZy12ZW5kb3IuMToxNCBzdGFydC1zdG9wLWRhZW1vbi44OjM0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjAyCisjLCBuby13cmFwCittc2dpZCAiQ09NTUFORFMiCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjcKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtbD4iCittc2dzdHIgIkI8LS1vbGQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjMxCittc2dpZCAiIgorIlByaW50IHRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZXMsIG9uZSBlYWNoIGxpbmUsIGluIHRoZSBmb3JtYXQgIgorIkk8VkFSSUFCTEU9dmFsdWU+LiBUaGlzIGlzIHRoZSBkZWZhdWx0IGFjdGlvbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MzEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1lPkk8ZGViaWFuLWFyY2hpdGVjdHVyZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTozNworbXNnaWQgIiIKKyJDaGVjayBmb3IgZXF1YWxpdHkgb2YgYXJjaGl0ZWN0dXJlLiBCeSBkZWZhdWx0IEk8ZGViaWFuLWFyY2hpdGVjdHVyZT4gaXMgIgorImNvbXBhcmVkIGFnYWluc3QgdGhlIGN1cnJlbnQgRGViaWFuIGFyY2hpdGVjdHVyZSwgYmVpbmcgdGhlIGhvc3QuICBUaGlzICIKKyJhY3Rpb24gd2lsbCBub3QgZXhwYW5kIHRoZSBhcmNoaXRlY3R1cmUgd2lsZGNhcmRzLiBDb21tYW5kIGZpbmlzaGVzIHdpdGggYW4gIgorImV4aXQgc3RhdHVzIG9mIDAgaWYgbWF0Y2hlZCwgMSBpZiBub3QgbWF0Y2hlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MzcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1pPkk8YXJjaGl0ZWN0dXJlLXdpbGRjYXJkPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjQzCittc2dpZCAiIgorIkNoZWNrIGZvciBpZGVudGl0eSBvZiBhcmNoaXRlY3R1cmUgYnkgZXhwYW5kaW5nIEk8YXJjaGl0ZWN0dXJlLXdpbGRjYXJkPiBhcyAiCisiYW4gYXJjaGl0ZWN0dXJlIHdpbGRjYXJkIGFuZCBjb21wYXJpbmcgYWdhaW5zdCB0aGUgY3VycmVudCBEZWJpYW4gIgorImFyY2hpdGVjdHVyZS4gQ29tbWFuZCBmaW5pc2hlcyB3aXRoIGFuIGV4aXQgc3RhdHVzIG9mIDAgaWYgbWF0Y2hlZCwgMSBpZiBub3QgIgorIm1hdGNoZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjQzCisjLCBuby13cmFwCittc2dpZCAiQjwtcT5JPHZhcmlhYmxlLW5hbWU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NDYKK21zZ2lkICJQcmludCB0aGUgdmFsdWUgb2YgYSBzaW5nbGUgdmFyaWFibGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjQ2CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LXM+IgorbXNnc3RyICJCPC0tbmV3PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo1MAorbXNnaWQgIiIKKyJQcmludCBhbiBleHBvcnQgY29tbWFuZC4gVGhpcyBjYW4gYmUgdXNlZCB0byBzZXQgdGhlIGVudmlyb25tZW50IHZhcmlhYmxlcyAiCisidXNpbmcgZXZhbC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NTAKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtdT4iCittc2dzdHIgIkI8LS1uZXc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjUzCittc2dpZCAiUHJpbnQgYSBzaW1pbGFyIGNvbW1hbmQgdG8gQjwtcz4gYnV0IHRvIHVuc2V0IGFsbCB2YXJpYWJsZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjUzCisjLCBuby13cmFwCittc2dpZCAiQjwtYz5JPCBjb21tYW5kPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjU3Cittc2dpZCAiIgorIkV4ZWN1dGUgYSBJPGNvbW1hbmQ+IGluIGFuIGVudmlyb25tZW50IHdoaWNoIGhhcyBhbGwgdmFyaWFibGVzIHNldCB0byB0aGUgIgorImRldGVybWluZWQgdmFsdWUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjU3CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LUw+IgorbXNnc3RyICJCPC0tbmV3PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo2MAorbXNnaWQgIlByaW50IGEgbGlzdCBvZiB2YWxpZCBhcmNoaXRlY3R1cmUgbmFtZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NjMgZHBrZy1idWlsZGZsYWdzLjE6OTIgZHBrZy1idWlsZHBhY2thZ2UuMToyMjYKKyM6IGRwa2ctY2hlY2tidWlsZGRlcHMuMTozNiBkcGtnLWRpc3RhZGRmaWxlLjE6MzUgZHBrZy1kZWIuMToxNzUKKyM6IGRwa2ctZGl2ZXJ0Ljg6NzQgZHBrZy1nZW5jaGFuZ2VzLjE6MTM0IGRwa2ctZ2VuY29udHJvbC4xOjEyNAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDQ2IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6NDEgZHBrZy1uYW1lLjE6NjEKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTozNiBkcGtnLXF1ZXJ5LjE6MTEzIGRwa2ctc2NhbnBhY2thZ2VzLjE6OTkKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMTo2OCBkcGtnLXNobGliZGVwcy4xOjIxOCBkcGtnLXNvdXJjZS4xOjk5CisjOiBkcGtnLXNwbGl0LjE6MTI5IGRwa2ctc3RhdG92ZXJyaWRlLjg6NDcgZHBrZy10cmlnZ2VyLjE6MzQgZHBrZy12ZW5kb3IuMTozMQorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjMxOQorbXNnaWQgIlNob3cgdGhlIHVzYWdlIG1lc3NhZ2UgYW5kIGV4aXQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NjYgZHBrZy1idWlsZGZsYWdzLjE6OTUgZHBrZy1idWlsZHBhY2thZ2UuMToyMjkKKyM6IGRwa2ctY2hlY2tidWlsZGRlcHMuMTozOSBkcGtnLWRpc3RhZGRmaWxlLjE6MzggZHBrZy1kZWIuMToxNzgKKyM6IGRwa2ctZGl2ZXJ0Ljg6NzcgZHBrZy1nZW5jaGFuZ2VzLjE6MTM3IGRwa2ctZ2VuY29udHJvbC4xOjEyNworIzogZHBrZy1nZW5zeW1ib2xzLjE6NDQ5IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6NDQgZHBrZy1uYW1lLjE6NjQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTozOSBkcGtnLXF1ZXJ5LjE6MTE2IGRwa2ctc2NhbnBhY2thZ2VzLjE6MTAyCisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6NzAgZHBrZy1zaGxpYmRlcHMuMToyMjEgZHBrZy1zb3VyY2UuMToxMDIKKyM6IGRwa2ctc3BsaXQuMToxMzIgZHBrZy1zdGF0b3ZlcnJpZGUuODo1MCBkcGtnLXRyaWdnZXIuMTozNyBkcGtnLXZlbmRvci4xOjM0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzIyCisjLCBmdXp6eQorbXNnaWQgIlNob3cgdGhlIHZlcnNpb24gYW5kIGV4aXQuIgorbXNnc3RyICJLacOtcmphIGEgQjxkcGtnLWRlYj4gdmVyemnDs3N6w6Ftw6F0LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NjgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1hPkk8ZGViaWFuLWFyY2hpdGVjdHVyZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo3MQorbXNnaWQgIlNldCB0aGUgRGViaWFuIGFyY2hpdGVjdHVyZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NzEgZHBrZy1idWlsZHBhY2thZ2UuMToxMTAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC10Pkk8Z251LXN5c3RlbS10eXBlPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjc0Cittc2dpZCAiU2V0IHRoZSBHTlUgc3lzdGVtIHR5cGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjc0CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LWY+IgorbXNnc3RyICJCPC0tbmV3PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo4MQorbXNnaWQgIiIKKyJWYWx1ZXMgc2V0IGJ5IGV4aXN0aW5nIGVudmlyb25tZW50IHZhcmlhYmxlcyB3aXRoIHRoZSBzYW1lIG5hbWUgYXMgdXNlZCBieSAiCisidGhlIHNjcmlwdHMgYXJlIGhvbm9yZWQgKGkuZS4gdXNlZCBieSBCPGRwa2ctYXJjaGl0ZWN0dXJlPiksIGV4Y2VwdCBpZiB0aGlzICIKKyJmb3JjZSBmbGFnIGlzIHByZXNlbnQuIFRoaXMgYWxsb3dzIHRoZSB1c2VyIHRvIG92ZXJyaWRlIGEgdmFsdWUgZXZlbiB3aGVuICIKKyJ0aGUgY2FsbCB0byBCPGRwa2ctYXJjaGl0ZWN0dXJlPiBpcyBidXJpZWQgaW4gc29tZSBvdGhlciBzY3JpcHQgKGZvciBleGFtcGxlICIKKyJCPGRwa2ctYnVpbGRwYWNrYWdlPigxKSkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjgyCisjLCBuby13cmFwCittc2dpZCAiVEVSTVMiCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6ODMKKyMsIG5vLXdyYXAKK21zZ2lkICJidWlsZCBtYWNoaW5lIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6ODUKK21zZ2lkICJUaGUgbWFjaGluZSB0aGUgcGFja2FnZSBpcyBidWlsdCBvbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6ODUKKyMsIG5vLXdyYXAKK21zZ2lkICJob3N0IG1hY2hpbmUiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo4NworbXNnaWQgIlRoZSBtYWNoaW5lIHRoZSBwYWNrYWdlIGlzIGJ1aWx0IGZvci4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6ODcKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiRGViaWFuIGFyY2hpdGVjdHVyZSIKK21zZ3N0ciAiRGViaWFuIFByb2plY3QiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6OTAKK21zZ2lkICIiCisiVGhlIERlYmlhbiBhcmNoaXRlY3R1cmUgc3RyaW5nLCB3aGljaCBzcGVjaWZpZXMgdGhlIGJpbmFyeSB0cmVlIGluIHRoZSAiCisiXFxzLTFGVFBcXHMwIGFyY2hpdmUuIEV4YW1wbGVzOiBpMzg2LCBzcGFyYywgaHVyZC1pMzg2LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo5MAorIywgbm8td3JhcAorbXNnaWQgImFyY2hpdGVjdHVyZSB3aWxkY2FyZCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjk0Cittc2dpZCAiIgorIkFuIGFyY2hpdGVjdHVyZSB3aWxkY2FyZCBpcyBhIHNwZWNpYWwgYXJjaGl0ZWN0dXJlIHN0cmluZyB0aGF0IHdpbGwgbWF0Y2ggIgorImFueSByZWFsIGFyY2hpdGVjdHVyZSBiZWluZyBwYXJ0IG9mIGl0LiBUaGUgZ2VuZXJhbCBmb3JtIGlzIEU8bHQ+a2VybmVsRTxndD4tIgorIkU8bHQ+Y3B1RTxndD4uICBFeGFtcGxlczogbGludXgtYW55LCBhbnktaTM4NiwgaHVyZC1hbnkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjk0CisjLCBuby13cmFwCittc2dpZCAiXFxzLTFHTlVcXHMwIHN5c3RlbSB0eXBlIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6OTgKK21zZ2lkICIiCisiQW4gYXJjaGl0ZWN0dXJlIHNwZWNpZmljYXRpb24gc3RyaW5nIGNvbnNpc3Rpbmcgb2YgdHdvIHBhcnRzIHNlcGFyYXRlZCBieSBhICIKKyJkYXNoOiBjcHUgYW5kIHN5c3RlbS4gRXhhbXBsZXM6IGkzODYtbGludXgtZ251LCBzcGFyYy1saW51eC1nbnUsIGkzODYtZ251LCAiCisieDg2XzY0LW5ldGJzZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6OTkKKyMsIG5vLXdyYXAKK21zZ2lkICJWQVJJQUJMRVMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMDEKK21zZ2lkICJUaGUgZm9sbG93aW5nIHZhcmlhYmxlcyBhcmUgc2V0IGJ5IEI8ZHBrZy1hcmNoaXRlY3R1cmU+OiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMDEKKyMsIG5vLXdyYXAKK21zZ2lkICJcXHMtMURFQl9CVUlMRF9BUkNIXFxzMCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEwMworbXNnaWQgIlRoZSBEZWJpYW4gYXJjaGl0ZWN0dXJlIG9mIHRoZSBidWlsZCBtYWNoaW5lLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMDMKKyMsIG5vLXdyYXAKK21zZ2lkICJcXHMtMURFQl9CVUlMRF9BUkNIX09TXFxzMCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEwNQorbXNnaWQgIlRoZSBEZWJpYW4gc3lzdGVtIG5hbWUgb2YgdGhlIGJ1aWxkIG1hY2hpbmUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEwNQorIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0JVSUxEX0FSQ0hfQ1BVXFxzMCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEwNworbXNnaWQgIlRoZSBEZWJpYW4gY3B1IG5hbWUgb2YgdGhlIGJ1aWxkIG1hY2hpbmUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEwNworIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0JVSUxEX0FSQ0hfQklUU1xcczAiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMDkKK21zZ2lkICJUaGUgcG9pbnRlciBzaXplIG9mIHRoZSBidWlsZCBtYWNoaW5lIChpbiBiaXRzKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTA5CisjLCBuby13cmFwCittc2dpZCAiXFxzLTFERUJfQlVJTERfQVJDSF9FTkRJQU5cXHMwIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTExCittc2dpZCAiVGhlIGVuZGlhbm5lc3Mgb2YgdGhlIGJ1aWxkIG1hY2hpbmUgKGxpdHRsZSAvIGJpZykuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjExMQorIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0JVSUxEX0dOVV9DUFVcXHMwIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTEzCittc2dpZCAiVGhlIFxccy0xQ1BVXFxzMCBwYXJ0IG9mIFxccy0xREVCX0JVSUxEX0dOVV9UWVBFXFxzMC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTEzCisjLCBuby13cmFwCittc2dpZCAiXFxzLTFERUJfQlVJTERfR05VX1NZU1RFTVxcczAiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMTUKK21zZ2lkICJUaGUgU3lzdGVtIHBhcnQgb2YgXFxzLTFERUJfQlVJTERfR05VX1RZUEVcXHMwLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMTUKKyMsIG5vLXdyYXAKK21zZ2lkICJcXHMtMURFQl9CVUlMRF9HTlVfVFlQRVxcczAiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMTcKK21zZ2lkICJUaGUgXFxzLTFHTlVcXHMwIHN5c3RlbSB0eXBlIG9mIHRoZSBidWlsZCBtYWNoaW5lLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMTcKKyMsIG5vLXdyYXAKK21zZ2lkICJcXHMtMURFQl9CVUlMRF9NVUxUSUFSQ0hcXHMwIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTIwCittc2dpZCAiIgorIlRoZSBjbGFyaWZpZWQgXFxzLTFHTlVcXHMwIHN5c3RlbSB0eXBlIG9mIHRoZSBidWlsZCBtYWNoaW5lLCB1c2VkIGZvciAiCisiZmlsZXN5c3RlbSBwYXRocy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTIwCisjLCBuby13cmFwCittc2dpZCAiXFxzLTFERUJfSE9TVF9BUkNIXFxzMCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEyMgorbXNnaWQgIlRoZSBEZWJpYW4gYXJjaGl0ZWN0dXJlIG9mIHRoZSBob3N0IG1hY2hpbmUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEyMgorIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0hPU1RfQVJDSF9PU1xcczAiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMjQKK21zZ2lkICJUaGUgRGViaWFuIHN5c3RlbSBuYW1lIG9mIHRoZSBob3N0IG1hY2hpbmUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEyNAorIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0hPU1RfQVJDSF9DUFVcXHMwIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTI2Cittc2dpZCAiVGhlIERlYmlhbiBjcHUgbmFtZSBvZiB0aGUgaG9zdCBtYWNoaW5lLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMjYKKyMsIG5vLXdyYXAKK21zZ2lkICJcXHMtMURFQl9IT1NUX0FSQ0hfQklUU1xcczAiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMjgKK21zZ2lkICJUaGUgcG9pbnRlciBzaXplIG9mIHRoZSBob3N0IG1hY2hpbmUgKGluIGJpdHMpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMjgKKyMsIG5vLXdyYXAKK21zZ2lkICJcXHMtMURFQl9IT1NUX0FSQ0hfRU5ESUFOXFxzMCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEzMAorbXNnaWQgIlRoZSBlbmRpYW5uZXNzIG9mIHRoZSBob3N0IG1hY2hpbmUgKGxpdHRsZSAvIGJpZykuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEzMAorIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0hPU1RfR05VX0NQVVxcczAiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMzIKK21zZ2lkICJUaGUgXFxzLTFDUFVcXHMwIHBhcnQgb2YgXFxzLTFERUJfSE9TVF9HTlVfVFlQRVxcczAuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEzMgorIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0hPU1RfR05VX1NZU1RFTVxcczAiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMzQKK21zZ2lkICJUaGUgU3lzdGVtIHBhcnQgb2YgXFxzLTFERUJfSE9TVF9HTlVfVFlQRVxcczAuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEzNAorIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0hPU1RfR05VX1RZUEVcXHMwIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTM2Cittc2dpZCAiVGhlIFxccy0xR05VXFxzMCBzeXN0ZW0gdHlwZSBvZiB0aGUgaG9zdCBtYWNoaW5lLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMzYKKyMsIG5vLXdyYXAKK21zZ2lkICJcXHMtMURFQl9IT1NUX01VTFRJQVJDSFxcczAiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMzkKK21zZ2lkICIiCisiVGhlIGNsYXJpZmllZCBcXHMtMUdOVVxcczAgc3lzdGVtIHR5cGUgb2YgdGhlIGhvc3QgbWFjaGluZSwgdXNlZCBmb3IgIgorImZpbGVzeXN0ZW0gcGF0aHMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjE0MAorIywgbm8td3JhcAorbXNnaWQgIkRFQklBTi9SVUxFUyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjE0OAorbXNnaWQgIiIKKyJUaGUgZW52aXJvbm1lbnQgdmFyaWFibGVzIHNldCBieSBCPGRwa2ctYXJjaGl0ZWN0dXJlPiBhcmUgcGFzc2VkIHRvIEk8ZGViaWFuLyIKKyJydWxlcz4gYXMgbWFrZSB2YXJpYWJsZXMgKHNlZSBtYWtlIGRvY3VtZW50YXRpb24pLiBIb3dldmVyLCB5b3Ugc2hvdWxkIG5vdCAiCisicmVseSBvbiB0aGVtLCBhcyB0aGlzIGJyZWFrcyBtYW51YWwgaW52b2NhdGlvbiBvZiB0aGUgc2NyaXB0LiBJbnN0ZWFkLCB5b3UgIgorInNob3VsZCBhbHdheXMgaW5pdGlhbGl6ZSB0aGVtIHVzaW5nIEI8ZHBrZy1hcmNoaXRlY3R1cmU+IHdpdGggdGhlIC1xIG9wdGlvbi4gIgorIkhlcmUgYXJlIHNvbWUgZXhhbXBsZXMsIHdoaWNoIGFsc28gc2hvdyBob3cgeW91IGNhbiBpbXByb3ZlIHRoZSBjcm9zcyAiCisiY29tcGlsYXRpb24gc3VwcG9ydCBpbiB5b3VyIHBhY2thZ2U6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTUxIGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTY4Cittc2dpZCAiSW5zdGVhZCBvZjoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxNTUKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiQVJDSD1cXGBkcGtnIC0tcHJpbnQtYXJjaGl0ZWN0dXJlXFxgXG4iCisiY29uZmlndXJlICQoXFxzLTFBUkNIXFxzMCktbGludXhcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjE1OAorbXNnaWQgInBsZWFzZSB1c2UgdGhlIGZvbGxvd2luZzoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxNjIKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiXFwmXFxzLTFERUJfQlVJTERfR05VX1RZUEVcXHMwIDo9ICQoc2hlbGwgZHBrZy1hcmNoaXRlY3R1cmUgLXFERUJfQlVJTERfR05VX1RZUEUpXG4iCisiXFwmXFxzLTFERUJfSE9TVF9HTlVfVFlQRVxcczAgOj0gJChzaGVsbCBkcGtnLWFyY2hpdGVjdHVyZSAtcURFQl9IT1NUX0dOVV9UWVBFKVxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTY0CisjLCBuby13cmFwCittc2dpZCAiY29uZmlndXJlIC0tYnVpbGQ9JChcXHMtMURFQl9CVUlMRF9HTlVfVFlQRVxcczApIC0taG9zdD0kKFxccy0xREVCX0hPU1RfR05VX1RZUEVcXHMwKVxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTc0CisjLCBuby13cmFwCittc2dpZCAiIgorIkFSQ0g9XFxgZHBrZyAtLXByaW50LWFyY2hpdGVjdHVyZVxcYFxuIgorImlmZXEgKCQoXFxzLTFBUkNIXFxzMCksYWxwaGEpXG4iCisiICAuLi5cbiIKKyJlbmRpZlxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTc3Cittc2dpZCAicGxlYXNlIHVzZToiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxODAKKyMsIG5vLXdyYXAKK21zZ2lkICJcXCZcXHMtMURFQl9IT1NUX0FSQ0hcXHMwIDo9ICQoc2hlbGwgZHBrZy1hcmNoaXRlY3R1cmUgLXFERUJfSE9TVF9BUkNIKVxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTg0CisjLCBuby13cmFwCittc2dpZCAiIgorImlmZXEgKCQoXFxzLTFERUJfSE9TVF9BUkNIXFxzMCksYWxwaGEpXG4iCisiICAuLi5cbiIKKyJlbmRpZlxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTg4Cittc2dpZCAiIgorIm9yIGlmIHlvdSBvbmx5IG5lZWQgdG8gY2hlY2sgdGhlIENQVSBvciBPUyB0eXBlLCB1c2UgdGhlIERFQl9IT1NUX0FSQ0hfQ1BVICIKKyJvciBERUJfSE9TVF9BUkNIX09TIHZhcmlhYmxlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxOTMKK21zZ2lkICIiCisiSW4gZ2VuZXJhbCwgY2FsbGluZyBkcGtnIGluIHRoZSBydWxlcyBmaWxlIHRvIGdldCBhcmNoaXRlY3R1cmUgaW5mb3JtYXRpb24gIgorImlzIGRlcHJlY2F0ZWQgKHVubGVzcyB5b3Ugd2FudCB0byBwcm92aWRlIGJhY2t3YXJkIGNvbXBhdGliaWxpdHksIHNlZSAiCisiYmVsb3cpLiAgRXNwZWNpYWxseSB0aGUgLS1wcmludC1hcmNoaXRlY3R1cmUgb3B0aW9uIGlzIHVucmVsaWFibGUgc2luY2Ugd2UgIgorImhhdmUgRGViaWFuIGFyY2hpdGVjdHVyZXMgd2hpY2ggZG9uJ3QgZXF1YWwgYSBwcm9jZXNzb3IgbmFtZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTk0CisjLCBuby13cmFwCittc2dpZCAiQkFDS1dBUkQgQ09NUEFUSUJJTElUWSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjE5OAorbXNnaWQgIiIKKyJUaGUgREVCXypfQVJDSF9CSVRTIGFuZCBERUJfKl9BUkNIX0VORElBTiB2YXJpYWJsZXMgd2VyZSBpbnRyb2R1Y2VkIGluIGRwa2ctIgorImRldiAxLjE1LjQuIFVzaW5nIHRoZW0gaW4gSTxkZWJpYW4vcnVsZXM+IHRodXMgcmVxdWlyZXMgYSBidWlsZC1kZXBlbmRlbmN5ICIKKyJvbiBkcGtnLWRldiAoRTxndD49IDEuMTUuNCkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjAzCittc2dpZCAiIgorIlRoZSBERUJfSE9TVF9BUkNIX0NQVSBhbmQgREVCX0hPU1RfQVJDSF9PUyB2YXJpYWJsZXMgd2VyZSBpbnRyb2R1Y2VkIGluIGRwa2ctIgorImRldiAxLjEzLjIuIEJlZm9yZSB0aGlzIEk8ZGViaWFuL3J1bGVzPiBmaWxlcyB0ZW5kZWQgdG8gY2hlY2sgdGhlIHZhbHVlcyBvZiAiCisidGhlIERFQl9IT1NUX0dOVV9DUFUgb3IgREVCX0hPU1RfR05VX1RZUEUgdmFyaWFibGVzIHdoaWNoIGhhdmUgYmVlbiBzdWJqZWN0ICIKKyJ0byBjaGFuZ2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjA4Cittc2dpZCAiIgorIldoZXJlIEk8ZGViaWFuL3J1bGVzPiBmaWxlcyBjaGVjayB0aGVzZSB2YXJpYWJsZXMgdG8gZGVjaWRlIGhvdyBvciB3aGF0IHRvICIKKyJjb21waWxlLCB0aGlzIHNob3VsZCBiZSB1cGRhdGVkIHRvIHVzZSB0aGUgbmV3IHZhcmlhYmxlcyBhbmQgdmFsdWVzLiAgWW91ICIKKyJtYXkgd2lzaCB0byByZXRhaW4gYmFja3dhcmRzIGNvbXBhdGliaWxpdHkgd2l0aCBvbGRlciB2ZXJzaW9uIG9mIGRwa2ctZGV2IGJ5ICIKKyJ1c2luZyB0aGUgZm9sbG93aW5nIGNvZGU6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjEyCisjLCBuby13cmFwCittc2dpZCAiIgorIkRFQl9IT1NUX0FSQ0hfQ1BVIDo9ICQoc2hlbGwgZHBrZy1hcmNoaXRlY3R1cmUgLXFERUJfSE9TVF9BUkNIX0NQVSAyRTxndD4vZGV2L251bGwpXG4iCisiREVCX0hPU1RfQVJDSF9PUyA6PSAkKHNoZWxsIGRwa2ctYXJjaGl0ZWN0dXJlIC1xREVCX0hPU1RfQVJDSF9PUyAyRTxndD4vZGV2L251bGwpXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyMjYKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiIyBUYWtlIGFjY291bnQgb2Ygb2xkIGRwa2ctYXJjaGl0ZWN0dXJlIG91dHB1dC5cbiIKKyJpZmVxICgkKERFQl9IT1NUX0FSQ0hfQ1BVKSwpXG4iCisiICBERUJfSE9TVF9BUkNIX0NQVSA6PSAkKHNoZWxsIGRwa2ctYXJjaGl0ZWN0dXJlIC1xREVCX0hPU1RfR05VX0NQVSlcbiIKKyIgIGlmZXEgKCQoREVCX0hPU1RfQVJDSF9DUFUpLHg4Nl82NClcbiIKKyIgICAgREVCX0hPU1RfQVJDSF9DUFUgOj0gYW1kNjRcbiIKKyIgIGVuZGlmXG4iCisiZW5kaWZcbiIKKyJpZmVxICgkKERFQl9IT1NUX0FSQ0hfT1MpLClcbiIKKyIgIERFQl9IT1NUX0FSQ0hfT1MgOj0gJChzdWJzdCAtZ251LCwkKHNoZWxsIGRwa2ctYXJjaGl0ZWN0dXJlIC1xREVCX0hPU1RfR05VX1NZU1RFTSkpXG4iCisiICBpZmVxICgkKERFQl9IT1NUX0FSQ0hfT1MpLGdudSlcbiIKKyIgICAgREVCX0hPU1RfQVJDSF9PUyA6PSBodXJkXG4iCisiICBlbmRpZlxuIgorImVuZGlmXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyMjkKK21zZ2lkICJBbmQgc2ltaWxhcmx5IGZvciBERUJfQlVJTERfQVJDSF9DUFUgYW5kIERFQl9CVUlMRF9BUkNIX09TLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjIzMgorbXNnaWQgIiIKKyJJZiB5b3Ugc3RpbGwgd2lzaCB0byBzdXBwb3J0IHZlcnNpb25zIG9mIGRwa2ctZGV2IHRoYXQgZGlkIG5vdCBpbmNsdWRlICIKKyJCPGRwa2ctYXJjaGl0ZWN0dXJlPiwgdGhlIGZvbGxvd2luZyBkb2VzIHRoZSBqb2I6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjQyCisjLCBuby13cmFwCittc2dpZCAiIgorIlxcJlxccy0xREVCX0JVSUxEX0FSQ0hcXHMwIDo9ICQoc2hlbGwgZHBrZyAtLXByaW50LWFyY2hpdGVjdHVyZSlcbiIKKyJcXCZcXHMtMURFQl9CVUlMRF9HTlVfQ1BVXFxzMCA6PSAkKHBhdHN1YnN0IGh1cmQtJSwlLCQoXFxzLTFERUJfQlVJTERfQVJDSFxcczApKVxuIgorImlmZXEgKCQoZmlsdGVyLW91dCBodXJkLSUsJChcXHMtMURFQl9CVUlMRF9BUkNIXFxzMCkpLClcbiIKKyIgIFxccy0xREVCX0JVSUxEX0dOVV9TWVNURU1cXHMwIDo9IGdudVxuIgorImVsc2VcbiIKKyIgIFxccy0xREVCX0JVSUxEX0dOVV9TWVNURU1cXHMwIDo9IGxpbnV4LWdudVxuIgorImVuZGlmXG4iCisiREVCX0JVSUxEX0dOVV9UWVBFPSQoXFxzLTFERUJfQlVJTERfR05VX0NQVVxcczApLSQoXFxzLTFERUJfQlVJTERfR05VX1NZU1RFTVxcczApXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyNDcKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiXFwmXFxzLTFERUJfSE9TVF9BUkNIXFxzMCA6PSAkKFxccy0xREVCX0JVSUxEX0FSQ0hcXHMwKVxuIgorIlxcJlxccy0xREVCX0hPU1RfR05VX0NQVVxcczAgOj0gJChcXHMtMURFQl9CVUlMRF9HTlVfQ1BVXFxzMClcbiIKKyJcXCZcXHMtMURFQl9IT1NUX0dOVV9TWVNURU1cXHMwIDo9ICQoXFxzLTFERUJfQlVJTERfR05VX1NZU1RFTVxcczApXG4iCisiXFwmXFxzLTFERUJfSE9TVF9HTlVfVFlQRVxcczAgOj0gJChcXHMtMURFQl9CVUlMRF9HTlVfVFlQRVxcczApXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyNTEKK21zZ2lkICIiCisiUHV0IGEgc3Vic2V0IG9mIHRoZXNlIGxpbmVzIGF0IHRoZSB0b3Agb2YgeW91ciBkZWJpYW4vcnVsZXMgZmlsZTsgdGhlc2UgIgorImRlZmF1bHQgdmFsdWVzIHdpbGwgYmUgb3ZlcndyaXR0ZW4gaWYgZHBrZy1hcmNoaXRlY3R1cmUgaXMgdXNlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyNTgKK21zZ2lkICIiCisiWW91IGRvbid0IG5lZWQgdGhlIGZ1bGwgc2V0LiBDaG9vc2UgYSBjb25zaXN0ZW50IHNldCB3aGljaCBjb250YWlucyB0aGUgIgorInZhbHVlcyB5b3UgdXNlIGluIHRoZSBydWxlcyBmaWxlLiBGb3IgZXhhbXBsZSwgaWYgeW91IG9ubHkgbmVlZCB0aGUgaG9zdCAiCisiRGViaWFuIGFyY2hpdGVjdHVyZSwgYERFQl9IT1NUX0FSQ0g9XFxgZHBrZyAtLXByaW50LWFyY2hpdGVjdHVyZVxcYCcgaXMgIgorInN1ZmZpY2llbnQgKHRoaXMgaXMgaW5kZWVkIHRoZSBEZWJpYW4gYXJjaGl0ZWN0dXJlIG9mIHRoZSBidWlsZCBtYWNoaW5lLCBidXQgIgorInJlbWVtYmVyIHRoYXQgd2UgYXJlIG9ubHkgdHJ5aW5nIHRvIGJlIGJhY2t3YXJkIGNvbXBhdGlibGUgd2l0aCBuYXRpdmUgIgorImNvbXBpbGF0aW9uKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyNjEKK21zZ2lkICIiCisiVGhlIEI8LWU+IGFuZCBCPC1pPiBvcHRpb25zIHdlcmUgb25seSBpbnRyb2R1Y2VkIGluIHJlbGF0aXZlbHkgcmVjZW50ICIKKyJ2ZXJzaW9ucyBvZiBCPGRwa2ctYXJjaGl0ZWN0dXJlPiAoc2luY2UgZHBrZyAxLjEzLjEzKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyNjUKK21zZ2lkICIiCisiQjxkcGtnLWJ1aWxkcGFja2FnZT4gYWNjZXB0cyB0aGUgQjwtYT4gb3B0aW9uIGFuZCBwYXNzZXMgaXQgdG8gQjxkcGtnLSIKKyJhcmNoaXRlY3R1cmU+LiBPdGhlciBleGFtcGxlczoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyNjcKK21zZ2lkICJDQz1pMzg2LWdudS1nY2MgZHBrZy1hcmNoaXRlY3R1cmUgLWMgZGViaWFuL3J1bGVzIGJ1aWxkIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjY5CisjLCBmdXp6eQorbXNnaWQgImV2YWwgXFxgZHBrZy1hcmNoaXRlY3R1cmUgLXVcXGAiCittc2dzdHIgIkRlYmlhbiBQcm9qZWN0IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI3MgorbXNnaWQgIiIKKyJDaGVjayBpZiBhbiBhcmNoaXRlY3R1cmUgaXMgZXF1YWwgdG8gdGhlIGN1cnJlbnQgYXJjaGl0ZWN0dXJlIG9yIGEgZ2l2ZW4gb25lOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI3NAorbXNnaWQgImRwa2ctYXJjaGl0ZWN0dXJlIC1lbGludXgtYWxwaGEiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyNzYKK21zZ2lkICJkcGtnLWFyY2hpdGVjdHVyZSAtYW1pcHMgLWVsaW51eC1taXBzIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6Mjc5Cittc2dpZCAiIgorIkNoZWNrIGlmIHRoZSBjdXJyZW50IGFyY2hpdGVjdHVyZSBvciBhbiBhcmNoaXRlY3R1cmUgcHJvdmlkZWQgd2l0aCAtYSBhcmUgIgorIkxpbnV4IHN5c3RlbXM6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjgxCittc2dpZCAiZHBrZy1hcmNoaXRlY3R1cmUgLWlsaW51eC1hbnkiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyODMKK21zZ2lkICJkcGtnLWFyY2hpdGVjdHVyZSAtYWkzODYgLWlsaW51eC1hbnkiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyODgKK21zZ2lkICIiCisiQWxsIHRoZXNlIGZpbGVzIGhhdmUgdG8gYmUgcHJlc2VudCBmb3IgQjxkcGtnLWFyY2hpdGVjdHVyZT4gdG8gd29yay4gVGhlaXIgIgorImxvY2F0aW9uIGNhbiBiZSBvdmVycmlkZGVuIGF0IHJ1bnRpbWUgd2l0aCB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGUgIgorIkI8RFBLR19EQVRBRElSPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6Mjg4CisjLCBuby13cmFwCittc2dpZCAiSTwvdXNyL3NoYXJlL2Rwa2cvY3B1dGFibGU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjkxCittc2dpZCAiVGFibGUgb2Yga25vd24gQ1BVIG5hbWVzIGFuZCBtYXBwaW5nIHRvIHRoZWlyIEdOVSBuYW1lLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyOTEKKyMsIG5vLXdyYXAKK21zZ2lkICJJPC91c3Ivc2hhcmUvZHBrZy9vc3RhYmxlPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI5NAorbXNnaWQgIlRhYmxlIG9mIGtub3duIG9wZXJhdGluZyBzeXN0ZW0gbmFtZXMgYW5kIG1hcHBpbmcgdG8gdGhlaXIgR05VIG5hbWUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI5NAorIywgbm8td3JhcAorbXNnaWQgIkk8L3Vzci9zaGFyZS9kcGtnL3RyaXBsZXR0YWJsZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyOTgKK21zZ2lkICIiCisiTWFwcGluZyBiZXR3ZWVuIERlYmlhbiBhcmNoaXRlY3R1cmUgdHJpcGxldHMgYW5kIERlYmlhbiBhcmNoaXRlY3R1cmUgbmFtZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MzAyCisjLCBmdXp6eQorbXNnaWQgIkI8ZHBrZy1idWlsZHBhY2thZ2U+KDEpLCBCPGRwa2ctY3Jvc3M+KDEpLiIKK21zZ3N0ciAiQjxkZWI+KDUpLCBCPGRwa2c+KDEpLCBCPGRwa2ctZGViPigxKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MzA3Cittc2dpZCAiIgorIkI8ZHBrZy1hcmNoaXRlY3R1cmU+IGFuZCB0aGlzIG1hbiBwYWdlIHdlcmUgaW5pdGlhbGx5IHdyaXR0ZW4gYnkgTWFyY3VzICIKKyJCcmlua21hbm4gRTxsdD5icmlua21kQGRlYmlhbi5vcmdFPGd0Pi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2cuY2ZnLjU6MQorIywgbm8td3JhcAorbXNnaWQgImRwa2cuY2ZnIgorbXNnc3RyICJkcGtnLmNmZyIKKworIy4gdHlwZTogVEgKKyM6IGRwa2cuY2ZnLjU6MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICIyMDA5LTA5LTA1IgorbXNnc3RyICIyMDA2LTAyLTI4IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLmNmZy41OjQKK21zZ2lkICJkcGtnLmNmZyAtIGRwa2cgY29uZmlndXJhdGlvbiBmaWxlIgorbXNnc3RyICJkcGtnLmNmZyAtIGRwa2cga29uZmlndXLDoWNpw7NzIGbDoWpsIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLmNmZy41OjExCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJUaGlzIGZpbGUgY29udGFpbnMgZGVmYXVsdCBvcHRpb25zIGZvciBkcGtnLiBFYWNoIGxpbmUgY29udGFpbnMgYSBzaW5nbGUgIgorI3wgIm9wdGlvbiB3aGljaCBpcyBleGFjdGx5IHRoZSBzYW1lIGFzIGEgbm9ybWFsIGNvbW1hbmQgbGluZSBvcHRpb24gZm9yIGRwa2cgIgorI3wgImV4Y2VwdCBmb3IgdGhlIGxlYWRpbmcgZGFzaGVzIHdoaWNoIGFyZSBub3QgdXNlZCBoZXJlLiBDb21tZW50cyBhcmUgIgorI3wgImFsbG93ZWQgYnkgc3RhcnRpbmcgYSBsaW5lIHdpdGggYSBoYXNoIHNpZ24gKFwiQjwjPlwiKS4iCittc2dpZCAiIgorIlRoaXMgZmlsZSBjb250YWlucyBkZWZhdWx0IG9wdGlvbnMgZm9yIGRwa2cuIEVhY2ggbGluZSBjb250YWlucyBhIHNpbmdsZSAiCisib3B0aW9uIHdoaWNoIGlzIGV4YWN0bHkgdGhlIHNhbWUgYXMgYSBub3JtYWwgY29tbWFuZCBsaW5lIG9wdGlvbiBmb3IgZHBrZyAiCisiZXhjZXB0IGZvciB0aGUgbGVhZGluZyBkYXNoZXMgd2hpY2ggYXJlIG5vdCB1c2VkIGhlcmUuIFF1b3RlcyBzdXJyb3VuZGluZyAiCisib3B0aW9uIHZhbHVlcyBhcmUgc3RyaXBwZWQuIENvbW1lbnRzIGFyZSBhbGxvd2VkIGJ5IHN0YXJ0aW5nIGEgbGluZSB3aXRoIGEgIgorImhhc2ggc2lnbiAoXCJCPCM+XCIpLiIKK21zZ3N0ciAiIgorIkUgZsOhamwgdGFydGFsbWF6emEgYSBkcGtnIGFsYXBiZcOhbGzDrXTDoXNhaXQuIE1pbmRlbiBzb3IgMSBsZWhldMWRc8OpZ2V0ICIKKyJ0YXJ0YWxtYXosIG1lbHkgcG9udG9zYW4gbWVnZmVsZWwgYSBzaW1hIHBhcmFuY3Nzb3JvcyBkcGtnIGxlaGV0xZFzw6lnZWtuZWsgIgorImtpdsOpdmUgYSB2ZXpldMWRIGvDtnTFkWplbGVrZXQsIG1lbHllayBpdHQgbmluY3NlbmVrLiBNZWdqZWd5esOpc2VrIGVneSBzb3IgIgorImVsZWrDqW4gYSAoXCJCPCM+XCIpIGplbGxlbCBsZWhldHPDqWdlc2VrLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy5jZmcuNToxNAorIywgZnV6enkKKyN8IG1zZ2lkICJJPC9ldGMvZHBrZy9kcGtnLmNmZz4iCittc2dpZCAiSTwvZXRjL2Rwa2cvZHBrZy5jZmcuZC9bMC05YS16QS1aXy1dKj4iCittc2dzdHIgIkk8L2V0Yy9kcGtnL2Rwa2cuY2ZnPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy5jZmcuNToxOAorbXNnaWQgIkk8fi8uZHBrZy5jZmc+IgorbXNnc3RyICJJPH4vLmRwa2cuY2ZnPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy5jZmcuNToyNCBkcGtnLWRpdmVydC44OjEzNCBkcGtnLXF1ZXJ5LjE6MjIyIGRwa2ctc3RhdG92ZXJyaWRlLjg6ODYKK21zZ2lkICJCPGRwa2c+KDEpLiIKK21zZ3N0ciAiQjxkcGtnPigxKS4iCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxCisjLCBuby13cmFwCittc2dpZCAiZHBrZy1idWlsZGZsYWdzIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIjIwMTEtMDktMTMiCittc2dzdHIgIjIwMDYtMDItMjgiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjQKK21zZ2lkICJkcGtnLWJ1aWxkZmxhZ3MgLSByZXR1cm5zIGJ1aWxkIGZsYWdzIHRvIHVzZSBkdXJpbmcgcGFja2FnZSBidWlsZCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo4CisjLCBmdXp6eQorbXNnaWQgIkI8ZHBrZy1idWlsZGZsYWdzPiBbSTxvcHRpb24+Li4uXSBbSTxjb21tYW5kPl0iCittc2dzdHIgIkI8ZHBrZy1kZWI+IEI8LWM+fEI8LS1jb250ZW50cz4gSTxhcmNow612dW0+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMgorbXNnaWQgIiIKKyJCPGRwa2ctYnVpbGRmbGFncz4gaXMgYSB0b29sIHRvIHJldHJpZXZlIGNvbXBpbGF0aW9uIGZsYWdzIHRvIHVzZSBkdXJpbmcgIgorImJ1aWxkIG9mIERlYmlhbiBwYWNrYWdlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTUKK21zZ2lkICIiCisiVGhlIGRlZmF1bHQgZmxhZ3MgYXJlIGRlZmluZWQgYnkgdGhlIHZlbmRvciBidXQgdGhleSBjYW4gYmUgZXh0ZW5kZWQvIgorIm92ZXJyaWRlbiBpbiBzZXZlcmFsIHdheXM6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNQorIywgbm8td3JhcAorbXNnaWQgIjEuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE3Cittc2dpZCAic3lzdGVtLXdpZGUgd2l0aCBCPC9ldGMvZHBrZy9idWlsZGZsYWdzLmNvbmY+OyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTcKKyMsIG5vLXdyYXAKK21zZ2lkICIyLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyMAorbXNnaWQgIiIKKyJmb3IgdGhlIGN1cnJlbnQgdXNlciB3aXRoIEI8JFhER19DT05GSUdfSE9NRS9kcGtnL2J1aWxkZmxhZ3MuY29uZj4gd2hlcmUgQjwiCisiJFhER19DT05GSUdfSE9NRT4gZGVmYXVsdHMgdG8gQjwkSE9NRS8uY29uZmlnPjsiCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjIwCisjLCBuby13cmFwCittc2dpZCAiMy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjMKK21zZ2lkICIiCisidGVtcG9yYXJpbHkgYnkgdGhlIHVzZXIgd2l0aCBlbnZpcm9ubWVudCB2YXJpYWJsZXMgKHNlZSBzZWN0aW9uICIKKyJCPEVOVklST05NRU5UPik7IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyMworIywgbm8td3JhcAorbXNnaWQgIjQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjI2Cittc2dpZCAiIgorImR5bmFtaWNhbGx5IGJ5IHRoZSBwYWNrYWdlIG1haW50YWluZXIgd2l0aCBlbnZpcm9ubWVudCB2YXJpYWJsZXMgc2V0IHZpYSAiCisiQjxkZWJpYW4vcnVsZXM+IChzZWUgc2VjdGlvbiBCPEVOVklST05NRU5UPikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjI4Cittc2dpZCAiVGhlIGNvbmZpZ3VyYXRpb24gZmlsZXMgY2FuIGNvbnRhaW4gdHdvIHR5cGVzIG9mIGRpcmVjdGl2ZXM6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyOAorIywgbm8td3JhcAorbXNnaWQgIkI8U0VUPkk8IGZsYWcgdmFsdWU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjMxCittc2dpZCAiT3ZlcnJpZGUgdGhlIGZsYWcgbmFtZWQgSTxmbGFnPiB0byBoYXZlIHRoZSB2YWx1ZSBJPHZhbHVlPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjMxCisjLCBuby13cmFwCittc2dpZCAiQjxTVFJJUD5JPCBmbGFnIHZhbHVlPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTozNAorbXNnaWQgIiIKKyJTdHJpcCBmcm9tIHRoZSBmbGFnIG5hbWVkIEk8ZmxhZz4gYWxsIHRoZSBidWlsZCBmbGFncyBsaXN0ZWQgaW4gSTx2YWx1ZT4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTozNAorIywgbm8td3JhcAorbXNnaWQgIkI8QVBQRU5EPkk8IGZsYWcgdmFsdWU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjM4Cittc2dpZCAiIgorIkV4dGVuZCB0aGUgZmxhZyBuYW1lZCBJPGZsYWc+IGJ5IGFwcGVuZGluZyB0aGUgb3B0aW9ucyBnaXZlbiBpbiBJPHZhbHVlPi4gIEEgIgorInNwYWNlIGlzIHByZXBlbmRlZCB0byB0aGUgYXBwZW5kZWQgdmFsdWUgaWYgdGhlIGZsYWcncyBjdXJyZW50IHZhbHVlIGlzIG5vbi0iCisiZW1wdHkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTozOAorIywgbm8td3JhcAorbXNnaWQgIkI8UFJFUEVORD5JPCBmbGFnIHZhbHVlPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo0MgorbXNnaWQgIiIKKyJFeHRlbmQgdGhlIGZsYWcgbmFtZWQgSTxmbGFnPiBieSBwcmVwZW5kaW5nIHRoZSBvcHRpb25zIGdpdmVuIGluIEk8dmFsdWU+LiAgIgorIkEgc3BhY2UgaXMgYXBwZW5kZWQgdG8gdGhlIHByZXBlbmRlZCB2YWx1ZSBpZiB0aGUgZmxhZydzIGN1cnJlbnQgdmFsdWUgaXMgIgorIm5vbi1lbXB0eS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6NDUKK21zZ2lkICIiCisiVGhlIGNvbmZpZ3VyYXRpb24gZmlsZXMgY2FuIGNvbnRhaW4gY29tbWVudHMgb24gbGluZXMgc3RhcnRpbmcgd2l0aCBhIGhhc2ggIgorIigjKS4gRW1wdHkgbGluZXMgYXJlIGFsc28gaWdub3JlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjQ2CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1kdW1wPiIKK21zZ3N0ciAiQjwtLWRlYnVnPiwgQjwtRD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjUxCittc2dpZCAiIgorIlByaW50IHRvIHN0YW5kYXJkIG91dHB1dCBhbGwgY29tcGlsYXRpb24gZmxhZ3MgYW5kIHRoZWlyIHZhbHVlcy4gSXQgcHJpbnRzICIKKyJvbmUgZmxhZyBwZXIgbGluZSBzZXBhcmF0ZWQgZnJvbSBpdHMgdmFsdWUgYnkgYW4gZXF1YWwgc2lnbiAiCisiKFwiSTxmbGFnPj1JPHZhbHVlPlwiKS4gVGhpcyBpcyB0aGUgZGVmYXVsdCBhY3Rpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo1MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tbGlzdD4iCittc2dzdHIgIkI8LS1uZXc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo1NgorbXNnaWQgIiIKKyJQcmludCB0aGUgbGlzdCBvZiBmbGFncyBzdXBwb3J0ZWQgYnkgdGhlIGN1cnJlbnQgdmVuZG9yIChvbmUgcGVyIGxpbmUpLiBTZWUgIgorInRoZSBCPFNVUFBPUlRFRCBGTEFHUz4gc2VjdGlvbiBmb3IgbW9yZSBpbmZvcm1hdGlvbiBhYm91dCB0aGVtLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6NTYKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjwtLXNob3dmb3JtYXQ9Pkk8Zm9ybWF0PiIKK21zZ2lkICJCPC0tZXhwb3J0PT5JPGZvcm1hdD4iCittc2dzdHIgIkI8LS1zaG93Zm9ybWF0PT5JPGZvcm3DoXR1bT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjY2Cittc2dpZCAiIgorIlByaW50IHRvIHN0YW5kYXJkIG91dHB1dCBzaGVsbCAoaWYgSTxmb3JtYXQ+IGlzIEI8c2g+KSBvciBtYWtlIChpZiBJPGZvcm1hdD4gIgorImlzIEI8bWFrZT4pIGNvbW1hbmRzIHRoYXQgY2FuIGJlIHVzZWQgdG8gZXhwb3J0IGFsbCB0aGUgY29tcGlsYXRpb24gZmxhZ3MgaW4gIgorInRoZSBlbnZpcm9ubWVudC4gSWYgSTxmb3JtYXQ+IGlzIEI8Y29uZmlndXJlPiB0aGVuIHRoZSBvdXRwdXQgY2FuIGJlIHVzZWQgb24gIgorImEgQjwuL2NvbmZpZ3VyZT4gY29tbWFuZC1saW5lLiBJZiB0aGUgSTxmb3JtYXQ+IHZhbHVlIGlzIG5vdCBnaXZlbiwgQjxzaD4gaXMgIgorImFzc3VtZWQuIE9ubHkgY29tcGlsYXRpb24gZmxhZ3Mgc3RhcnRpbmcgd2l0aCBhbiB1cHBlciBjYXNlIGNoYXJhY3RlciBhcmUgIgorImluY2x1ZGVkLCBvdGhlcnMgYXJlIGFzc3VtZWQgdG8gbm90IGJlIHN1aXRhYmxlIGZvciB0aGUgZW52aXJvbm1lbnQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo2NgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tZ2V0Pkk8IGZsYWc+IgorbXNnc3RyICJCPC0tbGljZW5jZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjcwCittc2dpZCAiIgorIlByaW50IHRoZSB2YWx1ZSBvZiB0aGUgZmxhZyBvbiBzdGFuZGFyZCBvdXRwdXQuIEV4aXRzIHdpdGggMCBpZiB0aGUgZmxhZyBpcyAiCisia25vd24gb3RoZXJ3aXNlIGV4aXRzIHdpdGggMS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjcwCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1vcmlnaW4+STwgZmxhZz4iCittc2dzdHIgIkI8LS1saWNlbmNlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6NzUKK21zZ2lkICIiCisiUHJpbnQgdGhlIG9yaWdpbiBvZiB0aGUgdmFsdWUgdGhhdCBpcyByZXR1cm5lZCBieSBCPC0tZ2V0Pi4gRXhpdHMgd2l0aCAwIGlmICIKKyJ0aGUgZmxhZyBpcyBrbm93biBvdGhlcndpc2UgZXhpdHMgd2l0aCAxLiBUaGUgb3JpZ2luIGNhbiBiZSBvbmUgb2YgdGhlICIKKyJmb2xsb3dpbmcgdmFsdWVzOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6NzYKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjx2ZW5kb3I+IgorbXNnc3RyICJCPC0tc2hvd2Zvcm1hdD0+STxmb3Jtw6F0dW0+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo3OQorbXNnaWQgInRoZSBvcmlnaW5hbCBmbGFnIHNldCBieSB0aGUgdmVuZG9yIGlzIHJldHVybmVkOyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6NzkKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxzeXN0ZW0+IgorbXNnc3RyICJCPC0tbmV3PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6ODIKK21zZ2lkICJ0aGUgZmxhZyBpcyBzZXQvbW9kaWZpZWQgYnkgYSBzeXN0ZW0td2lkZSBjb25maWd1cmF0aW9uOyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6ODIKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjx1c2VyPiIKK21zZ3N0ciAiQjwtLW5ldz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjg1Cittc2dpZCAidGhlIGZsYWcgaXMgc2V0L21vZGlmaWVkIGJ5IGEgdXNlci1zcGVjaWZpYyBjb25maWd1cmF0aW9uOyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6ODUKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxlbnY+IgorbXNnc3RyICJCPC0tbmV3PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6ODgKK21zZ2lkICJ0aGUgZmxhZyBpcyBzZXQvbW9kaWZpZWQgYnkgYW4gZW52aXJvbm1lbnQtc3BlY2lmaWMgY29uZmlndXJhdGlvbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjk2CisjLCBuby13cmFwCittc2dpZCAiU1VQUE9SVEVEIEZMQUdTIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo5NworIywgbm8td3JhcAorbXNnaWQgIkI8Q0ZMQUdTPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMDMKK21zZ2lkICIiCisiT3B0aW9ucyBmb3IgdGhlIEMgY29tcGlsZXIuIFRoZSBkZWZhdWx0IHZhbHVlIHNldCBieSB0aGUgdmVuZG9yIGluY2x1ZGVzIEk8LSIKKyJnPiBhbmQgdGhlIGRlZmF1bHQgb3B0aW1pemF0aW9uIGxldmVsIChJPC1PMj4gdXN1YWxseSwgb3IgSTwtTzA+IGlmIHRoZSAiCisiQjxERUJfQlVJTERfT1BUSU9OUz4gZW52aXJvbm1lbnQgdmFyaWFibGUgZGVmaW5lcyBJPG5vb3B0PikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMDMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPENQUEZMQUdTPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMDYKK21zZ2lkICJPcHRpb25zIGZvciB0aGUgQyBwcmVwcm9jZXNzb3IuIERlZmF1bHQgdmFsdWU6IGVtcHR5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTA2CisjLCBuby13cmFwCittc2dpZCAiQjxDWFhGTEFHUz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTA5Cittc2dpZCAiT3B0aW9ucyBmb3IgdGhlIEMrKyBjb21waWxlci4gU2FtZSBhcyBCPENGTEFHUz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMDkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPEZGTEFHUz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTEyCittc2dpZCAiT3B0aW9ucyBmb3IgdGhlIEZvcnRyYW4gY29tcGlsZXIuIFNhbWUgYXMgQjxDRkxBR1M+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTEyCisjLCBuby13cmFwCittc2dpZCAiQjxMREZMQUdTPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMjAKK21zZ2lkICIiCisiT3B0aW9ucyBwYXNzZWQgdG8gdGhlIGNvbXBpbGVyIHdoZW4gbGlua2luZyBleGVjdXRhYmxlcyBvciBzaGFyZWQgb2JqZWN0cyAiCisiKGlmIHRoZSBsaW5rZXIgaXMgY2FsbGVkIGRpcmVjdGx5LCB0aGVuIEI8LVdsPiBhbmQgQjwsPiBoYXZlIHRvIGJlIHN0cmlwcGVkICIKKyJmcm9tIHRoZXNlIG9wdGlvbnMpLiBEZWZhdWx0IHZhbHVlOiBlbXB0eS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEyMgorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJJPC9ldGMvZHBrZy9kcGtnLmNmZz4iCittc2dpZCAiQjwvZXRjL2Rwa2cvYnVpbGRmbGFncy5jb25mPiIKK21zZ3N0ciAiSTwvZXRjL2Rwa2cvZHBrZy5jZmc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMjUKKyMsIGZ1enp5CisjfCBtc2dpZCAiZHNlbGVjdC5jZmcgLSBkc2VsZWN0IGNvbmZpZ3VyYXRpb24gZmlsZSIKK21zZ2lkICJTeXN0ZW0gd2lkZSBjb25maWd1cmF0aW9uIGZpbGUuIgorbXNnc3RyICJkc2VsZWN0LmNmZyAtIGRzZWxlY3Qga29uZmlndXLDoWNpw7NzIGbDoWpsIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTI1CisjLCBuby13cmFwCittc2dpZCAiQjwkWERHX0NPTkZJR19IT01FL2Rwa2cvYnVpbGRmbGFncy5jb25mPiBvciBCPCRIT01FLy5jb25maWcvZHBrZy9idWlsZGZsYWdzLmNvbmY+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEyOAorIywgZnV6enkKKyN8IG1zZ2lkICJkc2VsZWN0LmNmZyAtIGRzZWxlY3QgY29uZmlndXJhdGlvbiBmaWxlIgorbXNnaWQgIlVzZXIgY29uZmlndXJhdGlvbiBmaWxlLiIKK21zZ3N0ciAiZHNlbGVjdC5jZmcgLSBkc2VsZWN0IGtvbmZpZ3Vyw6FjacOzcyBmw6FqbCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTM1Cittc2dpZCAiIgorIlRoZXJlIGFyZSAyIHNldHMgb2YgZW52aXJvbm1lbnQgdmFyaWFibGVzIGRvaW5nIHRoZSBzYW1lIG9wZXJhdGlvbnMsIHRoZSAiCisiZmlyc3Qgb25lIChERUJfSTxmbGFnPl9JPG9wPikgc2hvdWxkIG5ldmVyIGJlIHVzZWQgd2l0aGluIEI8ZGViaWFuL3J1bGVzPi4gIgorIkl0J3MgbWVhbnQgZm9yIGFueSB1c2VyIHRoYXQgd2FudHMgdG8gcmVidWlsZCB0aGUgc291cmNlIHBhY2thZ2Ugd2l0aCAiCisiZGlmZmVyZW50IGJ1aWxkIGZsYWdzLiBUaGUgc2Vjb25kIHNldCAoREVCX0k8ZmxhZz5fTUFJTlRfSTxvcD4pIHNob3VsZCBvbmx5ICIKKyJiZSB1c2VkIGluIEI8ZGViaWFuL3J1bGVzPiBieSBwYWNrYWdlIG1haW50YWluZXJzIHRvIGNoYW5nZSB0aGUgcmVzdWx0aW5nICIKKyJidWlsZCBmbGFncy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEzNQorIywgbm8td3JhcAorbXNnaWQgIkI8REVCXz5JPGZsYWc+QjxfU0VUPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUQorIzogZHBrZy1idWlsZGZsYWdzLjE6MTM3CisjLCBuby13cmFwCittc2dpZCAiQjxERUJfPkk8ZmxhZz5CPF9NQUlOVF9TRVQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE0MQorbXNnaWQgIiIKKyJUaGlzIHZhcmlhYmxlIGNhbiBiZSB1c2VkIHRvIGZvcmNlIHRoZSB2YWx1ZSByZXR1cm5lZCBmb3IgdGhlIGdpdmVuIEk8ZmxhZz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNDEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPERFQl8+STxmbGFnPkI8X1NUUklQPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUQorIzogZHBrZy1idWlsZGZsYWdzLjE6MTQzCisjLCBuby13cmFwCittc2dpZCAiQjxERUJfPkk8ZmxhZz5CPF9NQUlOVF9TVFJJUD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTQ4Cittc2dpZCAiIgorIlRoaXMgdmFyaWFibGUgY2FuIGJlIHVzZWQgdG8gcHJvdmlkZSBhIHNwYWNlIHNlcGFyYXRlZCBsaXN0IG9mIG9wdGlvbnMgdGhhdCAiCisid2lsbCBiZSBzdHJpcHBlZCBmcm9tIHRoZSBzZXQgb2YgZmxhZ3MgcmV0dXJuZWQgZm9yIHRoZSBnaXZlbiBJPGZsYWc+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTQ4CisjLCBuby13cmFwCittc2dpZCAiQjxERUJfPkk8ZmxhZz5CPF9BUFBFTkQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRRCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNTAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPERFQl8+STxmbGFnPkI8X01BSU5UX0FQUEVORD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTU0Cittc2dpZCAiIgorIlRoaXMgdmFyaWFibGUgY2FuIGJlIHVzZWQgdG8gYXBwZW5kIHN1cHBsZW1lbnRhcnkgb3B0aW9ucyB0byB0aGUgdmFsdWUgIgorInJldHVybmVkIGZvciB0aGUgZ2l2ZW4gSTxmbGFnPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE1NAorIywgbm8td3JhcAorbXNnaWQgIkI8REVCXz5JPGZsYWc+QjxfUFJFUEVORD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFEKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE1NgorIywgbm8td3JhcAorbXNnaWQgIkI8REVCXz5JPGZsYWc+QjxfTUFJTlRfUFJFUEVORD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTYwCittc2dpZCAiIgorIlRoaXMgdmFyaWFibGUgY2FuIGJlIHVzZWQgdG8gcHJlcGVuZCBzdXBwbGVtZW50YXJ5IG9wdGlvbnMgdG8gdGhlIHZhbHVlICIKKyJyZXR1cm5lZCBmb3IgdGhlIGdpdmVuIEk8ZmxhZz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNjAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPERFQl9CVUlMRF9NQUlOVF9PUFRJT05TPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNjUKK21zZ2lkICIiCisiVGhpcyB2YXJpYWJsZSBjYW4gYmUgdXNlZCB0byBkaXNhYmxlL2VuYWJsZSB2YXJpb3VzIGhhcmRlbmluZyBidWlsZCBmbGFncyAiCisidGhyb3VnaCB0aGUgQjxoYXJkZW5pbmc+IG9wdGlvbi4gU2VlIHRoZSBCPEhBUkRFTklORz4gc2VjdGlvbiBmb3IgZGV0YWlscy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE2NgorIywgbm8td3JhcAorbXNnaWQgIkhBUkRFTklORyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNzEKK21zZ2lkICIiCisiU2V2ZXJhbCBjb21waWxlLXRpbWUgb3B0aW9ucyAoZGV0YWlsZWQgYmVsb3cpIGNhbiBiZSB1c2VkIHRvIGhlbHAgaGFyZGVuIGEgIgorInJlc3VsdGluZyBiaW5hcnkgYWdhaW5zdCBtZW1vcnkgY29ycnVwdGlvbiBhdHRhY2tzLCBvciBwcm92aWRlIGFkZGl0aW9uYWwgIgorIndhcm5pbmcgbWVzc2FnZXMgZHVyaW5nIGNvbXBpbGF0aW9uLiBFeGNlcHQgYXMgbm90ZWQgYmVsb3csIHRoZXNlIGFyZSAiCisiZW5hYmxlZCBieSBkZWZhdWx0IGZvciBhcmNoaXRlY3R1cmVzIHRoYXQgc3VwcG9ydCB0aGVtLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNzcKK21zZ2lkICIiCisiRWFjaCBoYXJkZW5pbmcgZmVhdHVyZSBjYW4gYmUgZW5hYmxlZCBhbmQgZGlzYWJsZWQgaW4gdGhlICIKKyJCPERFQl9CVUlMRF9NQUlOVF9PUFRJT05TPiBlbnZpcm9ubWVudCB2YXJpYWJsZSdzIEI8aGFyZGVuaW5nPiB2YWx1ZSB3aXRoICIKKyJ0aGUgXCIrXCIgYW5kIFwiLVwiIG1vZGlmaWVyLiBGb3IgZXhhbXBsZSwgdG8gZW5hYmxlIHRoZSBcInBpZVwiIGZlYXR1cmUgYW5kICIKKyJkaXNhYmxlIHRoZSBcImZvcnRpZnlcIiBmZWF0dXJlIHlvdSBjYW4gZG8gdGhpcyBpbiBCPGRlYmlhbi9ydWxlcz46IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE3OQorIywgbm8td3JhcAorbXNnaWQgIiAgZXhwb3J0IERFQl9CVUlMRF9NQUlOVF9PUFRJT05TPWhhcmRlbmluZz0rcGllLC1mb3J0aWZ5XG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTgzCittc2dpZCAiIgorIlRoZSBzcGVjaWFsIGZlYXR1cmUgQjxhbGw+IGNhbiBiZSB1c2VkIHRvIGVuYWJsZSBvciBkaXNhYmxlIGFsbCBoYXJkZW5pbmcgIgorImZlYXR1cmVzIGF0IHRoZSBzYW1lIHRpbWUuIFRodXMgZGlzYWJsaW5nIGV2ZXJ5dGhpbmcgYW5kIGVuYWJsaW5nIG9ubHkgIgorIlwiZm9ybWF0XCIgYW5kIFwiZm9ydGlmeVwiIGNhbiBiZSBhY2hpZXZlZCB3aXRoOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxODUKKyMsIG5vLXdyYXAKK21zZ2lkICIgIGV4cG9ydCBERUJfQlVJTERfTUFJTlRfT1BUSU9OUz1oYXJkZW5pbmc9LWFsbCwrZm9ybWF0LCtmb3J0aWZ5XG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE4NgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPGZvcm1hdD4iCittc2dzdHIgIkI8LS1zaG93Zm9ybWF0PT5JPGZvcm3DoXR1bT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE5OAorbXNnaWQgIiIKKyJUaGlzIHNldHRpbmcgKGVuYWJsZWQgYnkgZGVmYXVsdCkgYWRkcyBCPC1XZm9ybWF0IC1XZm9ybWF0LXNlY3VyaXR5IC0iCisiV2Vycm9yPWZvcm1hdC1zZWN1cml0eT4gdG8gQjxDRkxBR1M+IGFuZCBCPENYWEZMQUdTPi4gVGhpcyB3aWxsIHdhcm4gYWJvdXQgIgorImltcHJvcGVyIGZvcm1hdCBzdHJpbmcgdXNlcywgYW5kIHdpbGwgZmFpbCB3aGVuIGZvcm1hdCBmdW5jdGlvbnMgYXJlIHVzZWQgaW4gIgorImEgd2F5IHRoYXQgdGhhdCByZXByZXNlbnQgcG9zc2libGUgc2VjdXJpdHkgcHJvYmxlbXMuIEF0IHByZXNlbnQsIHRoaXMgd2FybnMgIgorImFib3V0IGNhbGxzIHRvIEI8cHJpbnRmPiBhbmQgQjxzY2FuZj4gZnVuY3Rpb25zIHdoZXJlIHRoZSBmb3JtYXQgc3RyaW5nIGlzICIKKyJub3QgYSBzdHJpbmcgbGl0ZXJhbCBhbmQgdGhlcmUgYXJlIG5vIGZvcm1hdCBhcmd1bWVudHMsIGFzIGluIEI8cHJpbnRmKGZvbyk7IgorIj4gaW5zdGVhZCBvZiBCPHByaW50ZihcIiVzXCIsIGZvbyk7PiBUaGlzIG1heSBiZSBhIHNlY3VyaXR5IGhvbGUgaWYgdGhlICIKKyJmb3JtYXQgc3RyaW5nIGNhbWUgZnJvbSB1bnRydXN0ZWQgaW5wdXQgYW5kIGNvbnRhaW5zIFwiJW5cIi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE5OQorIywgbm8td3JhcAorbXNnaWQgIkI8Zm9ydGlmeT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjEwCittc2dpZCAiIgorIlRoaXMgc2V0dGluZyAoZW5hYmxlZCBieSBkZWZhdWx0KSBhZGRzIEI8LURfRk9SVElGWV9TT1VSQ0U9Mj4gdG8gQjxDRkxBR1M+ICIKKyJhbmQgQjxDWFhGTEFHUz4uIER1cmluZyBjb2RlIGdlbmVyYXRpb24gdGhlIGNvbXBpbGVyIGtub3dzIGEgZ3JlYXQgZGVhbCBvZiAiCisiaW5mb3JtYXRpb24gYWJvdXQgYnVmZmVyIHNpemVzICh3aGVyZSBwb3NzaWJsZSksIGFuZCBhdHRlbXB0cyB0byByZXBsYWNlICIKKyJpbnNlY3VyZSB1bmxpbWl0ZWQgbGVuZ3RoIGJ1ZmZlciBmdW5jdGlvbiBjYWxscyB3aXRoIGxlbmd0aC1saW1pdGVkIG9uZXMuICIKKyJUaGlzIGlzIGVzcGVjaWFsbHkgdXNlZnVsIGZvciBvbGQsIGNydWZ0eSBjb2RlLiAgQWRkaXRpb25hbGx5LCBmb3JtYXQgIgorInN0cmluZ3MgaW4gd3JpdGFibGUgbWVtb3J5IHRoYXQgY29udGFpbiAnJW4nIGFyZSBibG9ja2VkLiBJZiBhbiBhcHBsaWNhdGlvbiAiCisiZGVwZW5kcyBvbiBzdWNoIGEgZm9ybWF0IHN0cmluZywgaXQgd2lsbCBuZWVkIHRvIGJlIHdvcmtlZCBhcm91bmQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjIxMworbXNnaWQgIiIKKyJOb3RlIHRoYXQgZm9yIHRoaXMgb3B0aW9uIHRvIGhhdmUgYW55IGVmZmVjdCwgdGhlIHNvdXJjZSBtdXN0IGFsc28gYmUgIgorImNvbXBpbGVkIHdpdGggQjwtTzE+IG9yIGhpZ2hlci4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjIxMworIywgbm8td3JhcAorbXNnaWQgIkI8c3RhY2twcm90ZWN0b3I+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjIyMgorbXNnaWQgIiIKKyJUaGlzIHNldHRpbmcgKGVuYWJsZWQgYnkgZGVmYXVsdCkgYWRkcyBCPC1mc3RhY2stcHJvdGVjdG9yIC0tcGFyYW09c3NwLSIKKyJidWZmZXItc2l6ZT00PiB0byBCPENGTEFHUz4gYW5kIEI8Q1hYRkxBR1M+LiBUaGlzIGFkZHMgc2FmZXR5IGNoZWNrcyBhZ2FpbnN0ICIKKyJzdGFjayBvdmVyd3JpdGVzLiBUaGlzIHJlbmRlcnMgbWFueSBwb3RlbnRpYWwgY29kZSBpbmplY3Rpb24gYXR0YWNrcyBpbnRvICIKKyJhYm9ydGluZyBzaXR1YXRpb25zLiBJbiB0aGUgYmVzdCBjYXNlIHRoaXMgdHVybnMgY29kZSBpbmplY3Rpb24gIgorInZ1bG5lcmFiaWxpdGllcyBpbnRvIGRlbmlhbCBvZiBzZXJ2aWNlIG9yIGludG8gbm9uLWlzc3VlcyAoZGVwZW5kaW5nIG9uIHRoZSAiCisiYXBwbGljYXRpb24pLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyMjYKK21zZ2lkICIiCisiVGhpcyBmZWF0dXJlIHJlcXVpcmVzIGxpbmtpbmcgYWdhaW5zdCBnbGliYyAob3IgYW5vdGhlciBwcm92aWRlciBvZiAiCisiQjxfX3N0YWNrX2Noa19mYWlsPiksIHNvIG5lZWRzIHRvIGJlIGRpc2FibGVkIHdoZW4gYnVpbGRpbmcgd2l0aCBCPC0iCisibm9zdGRsaWI+IG9yIEI8LWZmcmVlc3RhbmRpbmc+IG9yIHNpbWlsYXIuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyMjcKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxyZWxybz4iCittc2dzdHIgIkI8LS1uZXc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyMzUKK21zZ2lkICIiCisiVGhpcyBzZXR0aW5nIChlbmFibGVkIGJ5IGRlZmF1bHQpIGFkZHMgQjwtV2wsLXoscmVscm8+IHRvIEI8TERGTEFHUz4uICAiCisiRHVyaW5nIHByb2dyYW0gbG9hZCwgc2V2ZXJhbCBFTEYgbWVtb3J5IHNlY3Rpb25zIG5lZWQgdG8gYmUgd3JpdHRlbiB0byBieSAiCisidGhlIGxpbmtlci4gVGhpcyBmbGFncyB0aGUgbG9hZGVyIHRvIHR1cm4gdGhlc2Ugc2VjdGlvbnMgcmVhZC1vbmx5IGJlZm9yZSAiCisidHVybmluZyBvdmVyIGNvbnRyb2wgdG8gdGhlIHByb2dyYW0uIE1vc3Qgbm90YWJseSB0aGlzIHByZXZlbnRzIEdPVCAiCisib3ZlcndyaXRlIGF0dGFja3MuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyMzYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGJpbmRub3c+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjI0MworbXNnaWQgIiIKKyJUaGlzIHNldHRpbmcgKGRpc2FibGVkIGJ5IGRlZmF1bHQpIGFkZHMgQjwtV2wsLXosbm93PiB0byBCPExERkxBR1M+LiBEdXJpbmcgIgorInByb2dyYW0gbG9hZCwgYWxsIGR5bmFtaWMgc3ltYm9scyBhcmUgcmVzb2x2ZWQsIGFsbG93aW5nIGZvciB0aGUgZW50aXJlIFBMVCAiCisidG8gYmUgbWFya2VkIHJlYWQtb25seSAoZHVlIHRvIEI8cmVscm8+IGFib3ZlKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjI0NAorIywgbm8td3JhcAorbXNnaWQgIkI8cGllPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyNTYKK21zZ2lkICIiCisiVGhpcyBzZXR0aW5nIChkaXNhYmxlZCBieSBkZWZhdWx0KSBhZGRzIEI8LWZQSUU+IHRvIEI8Q0ZMQUdTPiBhbmQgIgorIkI8Q1hYRkxBR1M+LCBhbmQgQjwtZlBJRSAtcGllPiB0byBCPExERkxBR1M+LiBQb3NpdGlvbiBJbmRlcGVuZGVudCAiCisiRXhlY3V0YWJsZSBhcmUgbmVlZGVkIHRvIHRha2UgYWR2YW50YWdlIG9mIEFkZHJlc3MgU3BhY2UgTGF5b3V0ICIKKyJSYW5kb21pemF0aW9uLCBzdXBwb3J0ZWQgYnkgc29tZSBrZXJuZWwgdmVyc2lvbnMuIFdoaWxlIEFTTFIgY2FuIGFscmVhZHkgYmUgIgorImVuZm9yY2VkIGZvciBkYXRhIGFyZWFzIGluIHRoZSBzdGFjayBhbmQgaGVhcCAoYnJrIGFuZCBtbWFwKSwgdGhlIGNvZGUgYXJlYXMgIgorIm11c3QgYmUgY29tcGlsZWQgYXMgcG9zaXRpb24taW5kZXBlbmRlbnQuIFNoYXJlZCBsaWJyYXJpZXMgYWxyZWFkeSBkbyB0aGlzICgtIgorImZQSUMpLCBzbyB0aGV5IGdhaW4gQVNMUiBhdXRvbWF0aWNhbGx5LCBidXQgYmluYXJ5IC50ZXh0IHJlZ2lvbnMgbmVlZCB0byBiZSAiCisiYnVpbGQgUElFIHRvIGdhaW4gQVNMUi4gV2hlbiB0aGlzIGhhcHBlbnMsIFJPUCAoUmV0dXJuIE9yaWVudGVkIFByb2dyYW1taW5nKSAiCisiYXR0YWNrcyBhcmUgbXVjaCBoYXJkZXIgc2luY2UgdGhlcmUgYXJlIG5vIHN0YXRpYyBsb2NhdGlvbnMgdG8gYm91bmNlIG9mZiBvZiAiCisiZHVyaW5nIGEgbWVtb3J5IGNvcnJ1cHRpb24gYXR0YWNrLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyNTkKK21zZ2lkICIiCisiVGhpcyBpcyBub3QgY29tcGF0aWJsZSB3aXRoIEI8LWZQSUM+IHNvIGNhcmUgbXVzdCBiZSB0YWtlbiB3aGVuIGJ1aWxkaW5nICIKKyJzaGFyZWQgb2JqZWN0cy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjY1Cittc2dpZCAiIgorIkFkZGl0aW9uYWxseSwgc2luY2UgUElFIGlzIGltcGxlbWVudGVkIHZpYSBhIGdlbmVyYWwgcmVnaXN0ZXIsIHNvbWUgIgorImFyY2hpdGVjdHVyZXMgKG1vc3Qgbm90YWJseSBpMzg2KSBjYW4gc2VlIHBlcmZvcm1hbmNlIGxvc3NlcyBvZiB1cCB0byAxNSUgaW4gIgorInZlcnkgdGV4dC1zZWdtZW50LWhlYXZ5IGFwcGxpY2F0aW9uIHdvcmtsb2FkczsgbW9zdCB3b3JrbG9hZHMgc2VlIGxlc3MgdGhhbiAiCisiMSUuIEFyY2hpdGVjdHVyZXMgd2l0aCBtb3JlIGdlbmVyYWwgcmVnaXN0ZXJzIChlLmcuIGFtZDY0KSAgZG8gbm90IHNlZSBhcyAiCisiaGlnaCBhIHdvcnN0LWNhc2UgcGVuYWx0eS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjY4Cittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMTAtMjAxMSBSYXBoYVxcWzplXWwgSGVydHpvZyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyNzAKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAxMSBLZWVzIENvb2siCittc2dzdHIgIiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MQorIywgbm8td3JhcAorbXNnaWQgImRwa2ctYnVpbGRwYWNrYWdlIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NAorIywgZnV6enkKK21zZ2lkICJkcGtnLWJ1aWxkcGFja2FnZSAtIGJ1aWxkIGJpbmFyeSBvciBzb3VyY2UgcGFja2FnZXMgZnJvbSBzb3VyY2VzIgorbXNnc3RyICIiCisiQSBCPGRwa2ctZGViPiBEZWJpYW4gYXJjaMOtdnVtb2thdCBjc29tYWdvbCwga2lib250IMOpcyBpbmZvcm3DoWNpw7NrYXQgbnnDump0ICIKKyJyw7NsdWsuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjgKKyMsIGZ1enp5Cittc2dpZCAiQjxkcGtnLWJ1aWxkcGFja2FnZT4gW0k8b3B0aW9uPi4uLl0iCittc2dzdHIgIkI8ZHBrZy1kZWI+IEI8LWM+fEI8LS1jb250ZW50cz4gSTxhcmNow612dW0+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEzCittc2dpZCAiIgorIkI8ZHBrZy1idWlsZHBhY2thZ2U+IGlzIGEgcHJvZ3JhbSB0aGF0IGF1dG9tYXRlcyB0aGUgcHJvY2VzcyBvZiBidWlsZGluZyBhICIKKyJEZWJpYW4gcGFja2FnZS4gSXQgY29uc2lzdHMgb2YgdGhlIGZvbGxvd2luZyBzdGVwczoiCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTMKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwxLj4iCittc2dzdHIgIkI8LS1uZXc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE3Cittc2dpZCAiIgorIkl0IHByZXBhcmVzIHRoZSBidWlsZCBlbnZpcm9ubWVudCBieSBzZXR0aW5nIHZhcmlvdXMgZW52aXJvbm1lbnQgdmFyaWFibGVzICIKKyIoc2VlIEI8RU5WSVJPTk1FTlQ+KSBhbmQgY2FsbHMgQjxkcGtnLXNvdXJjZSAtLWJlZm9yZS1idWlsZD4gKHVubGVzcyBCPC1UPiAiCisib3IgQjwtLXRhcmdldD4gaGFzIGJlZW4gdXNlZCkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE3CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8Mi4+IgorbXNnc3RyICJCPC0tbmV3PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMAorbXNnaWQgIiIKKyJJdCBjaGVja3MgdGhhdCB0aGUgYnVpbGQtZGVwZW5kZW5jaWVzIGFuZCBidWlsZC1jb25mbGljdHMgYXJlIHNhdGlzZmllZCAiCisiKHVubGVzcyBCPC1kPiBpcyBzcGVjaWZpZWQpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPDMuPiIKK21zZ3N0ciAiQjwtLW5ldz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjUKK21zZ2lkICIiCisiSWYgYSBzcGVjaWZpYyB0YXJnZXQgaGFzIGJlZW4gc2VsZWN0ZWQgd2l0aCB0aGUgQjwtVD4gb3IgQjwtLXRhcmdldD4gb3B0aW9uLCAiCisiaXQgY2FsbHMgdGhhdCB0YXJnZXQgYW5kIHN0b3BzIGhlcmUuIE90aGVyd2lzZSBpdCBjYWxscyBCPGZha2Vyb290IGRlYmlhbi8iCisicnVsZXMgY2xlYW4+IHRvIGNsZWFuIHRoZSBidWlsZC10cmVlICh1bmxlc3MgQjwtbmM+IGlzIHNwZWNpZmllZCkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjI1CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8NC4+IgorbXNnc3RyICJCPC0tbmV3PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyOQorbXNnaWQgIiIKKyJJdCBjYWxscyBCPGRwa2ctc291cmNlIC1iPiB0byBnZW5lcmF0ZSB0aGUgc291cmNlIHBhY2thZ2UgKHVubGVzcyBhIGJpbmFyeS0iCisib25seSBidWlsZCBoYXMgYmVlbiByZXF1ZXN0ZWQgd2l0aCBCPC1iPiwgQjwtQj4gb3IgQjwtQT4pLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyOQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPDUuPiIKK21zZ3N0ciAiQjwtLW5ldz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MzYKK21zZ2lkICIiCisiSXQgY2FsbHMgQjxkZWJpYW4vcnVsZXM+IEI8YnVpbGQ+IGZvbGxvd2VkIGJ5IEI8ZmFrZXJvb3QgZGViaWFuL3J1bGVzPiAiCisiSTxiaW5hcnktdGFyZ2V0PiAodW5sZXNzIGEgc291cmNlLW9ubHkgYnVpbGQgaGFzIGJlZW4gcmVxdWVzdGVkIHdpdGggQjwtUz4pLiAiCisiTm90ZSB0aGF0IEk8YmluYXJ5LXRhcmdldD4gaXMgZWl0aGVyIEI8YmluYXJ5PiAoZGVmYXVsdCBjYXNlLCBvciBpZiBCPC1iPiBpcyAiCisic3BlY2lmaWVkKSAgb3IgQjxiaW5hcnktYXJjaD4gKGlmIEI8LUI+IGlzIHNwZWNpZmllZCkgb3IgQjxiaW5hcnktaW5kZXA+IChpZiAiCisiQjwtQT4gaXMgc3BlY2lmaWVkKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MzYKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjw2Lj4iCittc2dzdHIgIkI8LS1uZXc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjM5Cittc2dpZCAiIgorIkl0IGNhbGxzIEI8Z3BnPiB0byBzaWduIHRoZSBCPC5kc2M+IGZpbGUgKGlmIGFueSwgdW5sZXNzIEI8LXVzPiBpcyAiCisic3BlY2lmaWVkKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MzkKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjw3Lj4iCittc2dzdHIgIkI8LS1uZXc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjQzCittc2dpZCAiIgorIkl0IGNhbGxzIEI8ZHBrZy1nZW5jaGFuZ2VzPiB0byBnZW5lcmF0ZSBhIEI8LmNoYW5nZXM+IGZpbGUuICBNYW55IEI8ZHBrZy0iCisiYnVpbGRwYWNrYWdlPiBvcHRpb25zIGFyZSBmb3J3YXJkZWQgdG8gQjxkcGtnLWdlbmNoYW5nZXM+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo0MworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPDguPiIKK21zZ3N0ciAiQjwtLW5ldz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NDYKK21zZ2lkICIiCisiSXQgY2FsbHMgQjxncGc+IHRvIHNpZ24gdGhlIEI8LmNoYW5nZXM+IGZpbGUgKHVubGVzcyBCPC11Yz4gaXMgc3BlY2lmaWVkKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NDYKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjw5Lj4iCittc2dzdHIgIkI8LS1uZXc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjQ5Cittc2dpZCAiIgorIklmIEI8LXRjPiBpcyBzcGVjaWZpZWQsIGl0IHdpbGwgY2FsbCBCPGZha2Vyb290IGRlYmlhbi9ydWxlcyBjbGVhbj4gYWdhaW4uICIKKyJGaW5hbGx5IGl0IGNhbGxzIEI8ZHBrZy1zb3VyY2UgLS1hZnRlci1idWlsZD4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjUxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LWI+IgorbXNnc3RyICJCPC0tbmV3PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo1NQorbXNnaWQgIiIKKyJTcGVjaWZpZXMgYSBiaW5hcnktb25seSBidWlsZCwgbm8gc291cmNlIGZpbGVzIGFyZSB0byBiZSBidWlsdCBhbmQvb3IgIgorImRpc3RyaWJ1dGVkLiBQYXNzZWQgdG8gQjxkcGtnLWdlbmNoYW5nZXM+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo1NSBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6MjMKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtQj4iCittc2dzdHIgIkI8LS1uZXc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjU5Cittc2dpZCAiIgorIlNwZWNpZmllcyBhIGJpbmFyeS1vbmx5IGJ1aWxkLCBsaW1pdGVkIHRvIGFyY2hpdGVjdHVyZSBkZXBlbmRlbnQgcGFja2FnZXMuICAiCisiUGFzc2VkIHRvIEI8ZHBrZy1nZW5jaGFuZ2VzPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NTkKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtQT4iCittc2dzdHIgIkI8LS1uZXc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjYzCittc2dpZCAiIgorIlNwZWNpZmllcyBhIGJpbmFyeS1vbmx5IGJ1aWxkLCBsaW1pdGVkIHRvIGFyY2hpdGVjdHVyZSBpbmRlcGVuZGVudCBwYWNrYWdlcy4gIgorIlBhc3NlZCB0byBCPGRwa2ctZ2VuY2hhbmdlcz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjYzIGRwa2ctZ2VuY2hhbmdlcy4xOjI3CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LVM+IgorbXNnc3RyICJCPC0tbmV3PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo2NworbXNnaWQgIiIKKyJTcGVjaWZpZXMgYSBzb3VyY2Utb25seSBidWlsZCwgbm8gYmluYXJ5IHBhY2thZ2VzIG5lZWQgdG8gYmUgbWFkZS4gIFBhc3NlZCAiCisidG8gQjxkcGtnLWdlbmNoYW5nZXM+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo2NworIywgbm8td3JhcAorbXNnaWQgIkI8LUY+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NzEKK21zZ2lkICIiCisiU3BlY2lmaWVzIGEgbm9ybWFsIGZ1bGwgYnVpbGQsIGJpbmFyeSBhbmQgc291cmNlIHBhY2thZ2VzIHdpbGwgYmUgYnVpbHQuICAiCisiVGhpcyBpcyB0aGUgc2FtZSBhcyB0aGUgZGVmYXVsdCBjYXNlIHdoZW4gbm8gYnVpbGQgb3B0aW9uIGlzIHNwZWNpZmllZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo3MworIywgZnV6enkKK21zZ2lkICJCPC0tdGFyZ2V0PT5JPHRhcmdldD4iCittc2dzdHIgIkI8LS1zaG93Zm9ybWF0PT5JPGZvcm3DoXR1bT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NzUKKyMsIGZ1enp5Cittc2dpZCAiQjwtLXRhcmdldCA+STx0YXJnZXQ+IgorbXNnc3RyICJCPC0tc2hvd2Zvcm1hdD0+STxmb3Jtw6F0dW0+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjc3CisjLCBmdXp6eQorbXNnaWQgIkI8LVQ+STx0YXJnZXQ+IgorbXNnc3RyICJCPFBhY2thZ2U6PiBFPGx0PmNzb21hZyBuw6l2RTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6ODMKK21zZ2lkICIiCisiQ2FsbHMgQjxkZWJpYW4vcnVsZXM+IEk8dGFyZ2V0PiBhZnRlciBoYXZpbmcgc2V0dXAgdGhlIGJ1aWxkIGVudmlyb25tZW50IGFuZCAiCisic3RvcHMgdGhlIHBhY2thZ2UgYnVpbGQgcHJvY2VzcyBoZXJlLiBJZiBCPC0tYXMtcm9vdD4gaXMgYWxzbyBnaXZlbiwgdGhlbiAiCisidGhlIGNvbW1hbmQgaXMgZXhlY3V0ZWQgYXMgcm9vdCAoc2VlIEI8LXI+KS4gTm90ZSB0aGF0IG9mZmljaWFsIHRhcmdldHMgdGhhdCAiCisiYXJlIHJlcXVpcmVkIHRvIGJlIHJ1biBhcyByb290IGJ5IHRoZSBEZWJpYW4gcG9saWN5IGRvIG5vdCBuZWVkIHRoaXMgb3B0aW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo4NAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tYXMtcm9vdD4iCittc2dzdHIgIkI8LS1uZXc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjg4Cittc2dpZCAiIgorIk9ubHkgbWVhbmluZ2Z1bCB0b2dldGhlciB3aXRoIEI8LS10YXJnZXQ+LiBSZXF1aXJlcyB0aGF0IHRoZSB0YXJnZXQgYmUgcnVuICIKKyJ3aXRoIHJvb3QgcmlnaHRzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo5MCBkcGtnLWdlbmNoYW5nZXMuMTozNgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1zaT4iCittc2dzdHIgIkI8LS1uZXc+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo5MiBkcGtnLWdlbmNoYW5nZXMuMTo0MgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1zYT4iCittc2dzdHIgIkI8LS1uZXc+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo5NCBkcGtnLWdlbmNoYW5nZXMuMTo0NQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1zZD4iCittc2dzdHIgIkI8LS1uZXc+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo5NiBkcGtnLWdlbmNoYW5nZXMuMTo0OSBkcGtnLWdlbmNvbnRyb2wuMTozOAorIzogZHBrZy1nZW5zeW1ib2xzLjE6Mzc3CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LXY+STx2ZXJzaW9uPiIKK21zZ3N0ciAiQjwtLXZlcnNpb24+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo5OCBkcGtnLWdlbmNoYW5nZXMuMTo1NAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1DPkk8Y2hhbmdlc2Rlc2NyaXB0aW9uPiIKK21zZ3N0ciAiQjwgPkU8bHQ+aG9zc3rDuiBsZcOtcsOhc0U8Z3Q+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxMDAgZHBrZy1nZW5jaGFuZ2VzLjE6NjAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1tPkk8bWFpbnRhaW5lcmFkZHJlc3M+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEwMiBkcGtnLWdlbmNoYW5nZXMuMTo2NgorIywgbm8td3JhcAorbXNnaWQgIkI8LWU+STxtYWludGFpbmVyYWRkcmVzcz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxMDQKK21zZ2lkICJQYXNzZWQgdW5jaGFuZ2VkIHRvIEI8ZHBrZy1nZW5jaGFuZ2VzPi4gU2VlIGl0cyBtYW51YWwgcGFnZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTA1CisjLCBuby13cmFwCittc2dpZCAiQjwtYT5JPGFyY2hpdGVjdHVyZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxMTAKK21zZ2lkICIiCisiU3BlY2lmeSB0aGUgRGViaWFuIGFyY2hpdGVjdHVyZSB3ZSBidWlsZCBmb3IuIFRoZSBhcmNoaXRlY3R1cmUgb2YgdGhlICIKKyJtYWNoaW5lIHdlIGJ1aWxkIG9uIGlzIGRldGVybWluZWQgYXV0b21hdGljYWxseSwgYW5kIGlzIGFsc28gdGhlIGRlZmF1bHQgZm9yICIKKyJ0aGUgaG9zdCBtYWNoaW5lLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjExNQorbXNnaWQgIiIKKyJTcGVjaWZ5IHRoZSBHTlUgc3lzdGVtIHR5cGUgd2UgYnVpbGQgZm9yLiBJdCBjYW4gYmUgdXNlZCBpbiBwbGFjZSBvZiAtYSBvciAiCisiYXMgYSBjb21wbGVtZW50IHRvIG92ZXJyaWRlIHRoZSBkZWZhdWx0IEdOVSBzeXN0ZW0gdHlwZSBvZiB0aGUgdGFyZ2V0IERlYmlhbiAiCisiYXJjaGl0ZWN0dXJlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxMTUKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtaj5JPGpvYnM+IgorbXNnc3RyICJCPC0tZmllbGQ+LCBCPC1mPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxMjYKK21zZ2lkICIiCisiTnVtYmVyIG9mIGpvYnMgYWxsb3dlZCB0byBiZSBydW4gc2ltdWx0YW5lb3VzbHksIGVxdWl2YWxlbnQgdG8gdGhlIEI8bWFrZT4iCisiKDEpICBvcHRpb24gb2YgdGhlIHNhbWUgbmFtZS4gV2lsbCBhZGQgaXRzZWxmIHRvIHRoZSBNQUtFRkxBR1MgZW52aXJvbm1lbnQgIgorInZhcmlhYmxlLCB3aGljaCBzaG91bGQgY2F1c2UgYWxsIHN1YnNlcXVlbnQgbWFrZSBpbnZvY2F0aW9ucyB0byBpbmhlcml0IHRoZSAiCisib3B0aW9uLiBBbHNvIGFkZHMgQjxwYXJhbGxlbD0+STxqb2JzPiB0byB0aGUgREVCX0JVSUxEX09QVElPTlMgZW52aXJvbm1lbnQgIgorInZhcmlhYmxlIHdoaWNoIGFsbG93cyBkZWJpYW4vcnVsZXMgZmlsZXMgdG8gdXNlIHRoaXMgaW5mb3JtYXRpb24gZm9yIHRoZWlyICIKKyJvd24gcHVycG9zZXMuICBUaGUgQjxwYXJhbGxlbD0+STxqb2JzPiBpbiBERUJfQlVJTERfT1BUSU9OUyBlbnZpcm9ubWVudCAiCisidmFyaWFibGUgd2lsbCBvdmVycmlkZSB0aGUgQjwtaj4gdmFsdWUgaWYgdGhpcyBvcHRpb24gaXMgZ2l2ZW4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEyNgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1EPiIKK21zZ3N0ciAiQjwtLW5ldz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTMwCittc2dpZCAiIgorIkNoZWNrIGJ1aWxkIGRlcGVuZGVuY2llcyBhbmQgY29uZmxpY3RzOyBhYm9ydCBpZiB1bnNhdGlzZmllZC4gVGhpcyBpcyB0aGUgIgorImRlZmF1bHQgYmVoYXZpb3IuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEzMCBkcGtnLWdlbnN5bWJvbHMuMTo0MzIKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtZD4iCittc2dzdHIgIkI8LS1vbGQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEzMworbXNnaWQgIkRvIG5vdCBjaGVjayBidWlsZCBkZXBlbmRlbmNpZXMgYW5kIGNvbmZsaWN0cy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTMzCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LW5jPiIKK21zZ3N0ciAiQjwtLW5ldz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTM3Cittc2dpZCAiIgorIkRvIG5vdCBjbGVhbiB0aGUgc291cmNlIHRyZWUgKGltcGxpZXMgQjwtYj4gaWYgbm90aGluZyBlbHNlIGhhcyBiZWVuICIKKyJzZWxlY3RlZCBhbW9uZyBCPC1CPiwgQjwtQT4gb3IgQjwtUz4pLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxMzcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC10Yz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxNDMKK21zZ2lkICIiCisiQ2xlYW4gdGhlIHNvdXJjZSB0cmVlICh1c2luZyBJPGdhaW4tcm9vdC1jb21tYW5kPiBCPGRlYmlhbi9ydWxlcyBjbGVhbj4pICAiCisiYWZ0ZXIgdGhlIHBhY2thZ2UgaGFzIGJlZW4gYnVpbHQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE0MworIywgbm8td3JhcAorbXNnaWQgIkI8LXI+STxnYWluLXJvb3QtY29tbWFuZD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxNjcKK21zZ2lkICIiCisiV2hlbiBCPGRwa2ctYnVpbGRwYWNrYWdlPiBuZWVkcyB0byBleGVjdXRlIHBhcnQgb2YgdGhlIGJ1aWxkIHByb2Nlc3MgYXMgIgorInJvb3QsIGl0IHByZWZpeGVzIHRoZSBjb21tYW5kIGl0IGV4ZWN1dGVzIHdpdGggSTxnYWluLXJvb3QtY29tbWFuZD4gaWYgb25lICIKKyJoYXMgYmVlbiBzcGVjaWZpZWQuIE90aGVyd2lzZSwgaWYgbm9uZSBoYXMgYmVlbiBzcGVjaWZpZWQsIEI8ZmFrZXJvb3Q+IHdpbGwgIgorImJlIHVzZWQgYnkgZGVmYXVsdCwgaWYgdGhlIGNvbW1hbmQgaXMgcHJlc2VudC4gIEk8Z2Fpbi1yb290LWNvbW1hbmQ+IHNob3VsZCAiCisic3RhcnQgd2l0aCB0aGUgbmFtZSBvZiBhIHByb2dyYW0gb24gdGhlIEI8UEFUSD4gYW5kIHdpbGwgZ2V0IGFzIGFyZ3VtZW50cyAiCisidGhlIG5hbWUgb2YgdGhlIHJlYWwgY29tbWFuZCB0byBydW4gYW5kIHRoZSBhcmd1bWVudHMgaXQgc2hvdWxkIHRha2UuICAiCisiSTxnYWluLXJvb3QtY29tbWFuZD4gY2FuIGluY2x1ZGUgcGFyYW1ldGVycyAodGhleSBtdXN0IGJlIHNwYWNlLXNlcGFyYXRlZCkgIgorImJ1dCBubyBzaGVsbCBtZXRhY2hhcmFjdGVycy4gIEk8Z2Fpbi1yb290LWNvbW1hbmQ+IG1pZ2h0IHR5cGljYWxseSBiZSAiCisiQjxmYWtlcm9vdD4sIEI8c3Vkbz4sIEI8c3VwZXI+IG9yIEI8cmVhbGx5Pi4gIEI8c3U+IGlzIG5vdCBzdWl0YWJsZSwgc2luY2UgIgorIml0IGNhbiBvbmx5IGludm9rZSB0aGUgdXNlcidzIHNoZWxsIHdpdGggQjwtYz4gaW5zdGVhZCBvZiBwYXNzaW5nIGFyZ3VtZW50cyAiCisiaW5kaXZpZHVhbGx5IHRvIHRoZSBjb21tYW5kIHRvIGJlIHJ1bi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTY3CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LVI+STxydWxlcy1maWxlPiIKK21zZ3N0ciAiQjwtLWZzeXMtdGFyZmlsZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTc4Cittc2dpZCAiIgorIkJ1aWxkaW5nIGEgRGViaWFuIHBhY2thZ2UgdXN1YWxseSBpbnZvbHZlcyBpbnZva2luZyBCPGRlYmlhbi9ydWxlcz4gYXMgYSAiCisiY29tbWFuZCB3aXRoIHNldmVyYWwgc3RhbmRhcmQgcGFyYW1ldGVycy4gV2l0aCB0aGlzIG9wdGlvbiBpdCdzIHBvc3NpYmxlIHRvICIKKyJ1c2UgYW5vdGhlciBwcm9ncmFtIGludm9jYXRpb24gdG8gYnVpbGQgdGhlIHBhY2thZ2UgKGl0IGNhbiBpbmNsdWRlIHNwYWNlICIKKyJzZXBhcmF0ZWQgcGFyYW1ldGVycykuICBBbHRlcm5hdGl2ZWx5IGl0IGNhbiBiZSB1c2VkIHRvIGV4ZWN1dGUgdGhlIHN0YW5kYXJkICIKKyJydWxlcyBmaWxlIHdpdGggYW5vdGhlciBtYWtlIHByb2dyYW0gKGZvciBleGFtcGxlIGJ5IHVzaW5nIEI8L3Vzci9sb2NhbC9iaW4vIgorIm1ha2UgLWYgZGViaWFuL3J1bGVzPiBhcyBJPHJ1bGVzLWZpbGU+KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTc4CisjLCBuby13cmFwCittc2dpZCAiQjwtcD5JPHNpZ24tY29tbWFuZD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxODgKK21zZ2lkICIiCisiV2hlbiBCPGRwa2ctYnVpbGRwYWNrYWdlPiBuZWVkcyB0byBleGVjdXRlIEdQRyBvciBQR1AgdG8gc2lnbiBhIHNvdXJjZSAiCisiY29udHJvbCAoQjwuZHNjPikgZmlsZSBvciBhIEI8LmNoYW5nZXM+IGZpbGUgaXQgd2lsbCBydW4gSTxzaWduLWNvbW1hbmQ+ICIKKyIoc2VhcmNoaW5nIHRoZSBCPFBBVEg+IGlmIG5lY2Vzc2FyeSkgaW5zdGVhZCBvZiBCPGdwZz4uIEk8c2lnbi1jb21tYW5kPiB3aWxsICIKKyJnZXQgYWxsIHRoZSBhcmd1bWVudHMgdGhhdCBCPHBncD4gd291bGQgaGF2ZSBnb3R0ZW4uIElmIEk8c2lnbi1jb21tYW5kPiAiCisidGFrZXMgaXRzIGFyZ3VtZW50cyBpbiBHUEcgcmF0aGVyIHRoYW4gUEdQIHN0eWxlLCB5b3Ugc2hvdWxkIGdpdmUgdGhlIEI8LSIKKyJzZ3BnPiBvcHRpb24uIEk8c2lnbi1jb21tYW5kPiBzaG91bGQgbm90IGNvbnRhaW4gc3BhY2VzIG9yIGFueSBvdGhlciBzaGVsbCAiCisibWV0YWNoYXJhY3RlcnMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE4OAorIywgbm8td3JhcAorbXNnaWQgIkI8LWs+STxrZXktaWQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTkxCittc2dpZCAiU3BlY2lmeSBhIGtleS1JRCB0byB1c2Ugd2hlbiBzaWduaW5nIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxOTEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtdXM+IgorbXNnc3RyICJCPC0tbmV3PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxOTQKK21zZ2lkICJEbyBub3Qgc2lnbiB0aGUgc291cmNlIHBhY2thZ2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE5NAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC11Yz4iCittc2dzdHIgIkI8LS1uZXc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE5NworbXNnaWQgIkRvIG5vdCBzaWduIHRoZSBCPC5jaGFuZ2VzPiBmaWxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE5OQorbXNnaWQgIkI8LWk+W0k8cmVnZXhwPl0iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMDEKKyMsIGZ1enp5Cittc2dpZCAiQjwtST5JPFtwYXR0ZXJuXT4iCittc2dzdHIgIkI8LS12ZXJzaW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMDMKK21zZ2lkICJCPC1zPltCPG5zQWt1cktVUj5dIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjA1CisjLCBmdXp6eQorbXNnaWQgIkI8LXo+LCBCPC1aPiIKK21zZ3N0ciAiQjwtLXNob3c+LCBCPC1XPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMDgKK21zZ2lkICJQYXNzZWQgdW5jaGFuZ2VkIHRvIEI8ZHBrZy1zb3VyY2U+LiBTZWUgaXRzIG1hbnVhbCBwYWdlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMDkKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjwtLXNob3dmb3JtYXQ9Pkk8Zm9ybWF0PiIKK21zZ2lkICJCPC0tc291cmNlLW9wdGlvbj0+STxvcHQ+IgorbXNnc3RyICJCPC0tc2hvd2Zvcm1hdD0+STxmb3Jtw6F0dW0+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIxMgorbXNnaWQgIlBhc3Mgb3B0aW9uIEk8b3B0PiB0byBCPGRwa2ctc291cmNlPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjEyCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1jaGFuZ2VzLW9wdGlvbj0+STxvcHQ+IgorbXNnc3RyICJCPCA+RTxsdD5ob3NzesO6IGxlw61yw6FzRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjE1Cittc2dpZCAiUGFzcyBvcHRpb24gSTxvcHQ+IHRvIEI8ZHBrZy1nZW5jaGFuZ2VzPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMTkKKyMsIGZ1enp5Cittc2dpZCAiQjwtLWFkbWluZGlyID5JPGRpcj4iCittc2dzdHIgIkI8U2VjdGlvbjo+IEU8bHQ+c3pha2FzekU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIyMiBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6MjMgZHBrZy1xdWVyeS4xOjEyMgorIzogZHBrZy1zaGxpYmRlcHMuMToyMTUgZHBrZy10cmlnZ2VyLjE6NDMKK21zZ2lkICIiCisiQ2hhbmdlIHRoZSBsb2NhdGlvbiBvZiB0aGUgQjxkcGtnPiBkYXRhYmFzZS4gVGhlIGRlZmF1bHQgbG9jYXRpb24gaXMgSTwvdmFyLyIKKyJsaWIvZHBrZz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIyMyBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6MzMgZHBrZy1kaXN0YWRkZmlsZS4xOjMyCisjOiBkcGtnLWRlYi4xOjE3MiBkcGtnLWdlbmNoYW5nZXMuMToxMzEgZHBrZy1nZW5jb250cm9sLjE6MTIxCisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0NDMgZHBrZy1uYW1lLjE6NTggZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjMzCisjOiBkcGtnLXF1ZXJ5LjE6MTEwIGRwa2ctc2NhbnBhY2thZ2VzLjE6OTYgZHBrZy1zaGxpYmRlcHMuMToyMTUKKyM6IGRwa2ctc291cmNlLjE6OTYgZHBrZy1zcGxpdC4xOjEyNiBkcGtnLXRyaWdnZXIuMTozMQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1oPiwgQjwtLWhlbHA+IgorbXNnc3RyICJCPC0taGVscD4sIEI8LWg+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIzNAorbXNnaWQgIiIKKyJFdmVuIGlmIEI8ZHBrZy1idWlsZHBhY2thZ2U+IGV4cG9ydHMgc29tZSB2YXJpYWJsZXMsIEI8ZGViaWFuL3J1bGVzPiBzaG91bGQgIgorIm5vdCByZWx5IG9uIHRoZWlyIHByZXNlbmNlIGFuZCBzaG91bGQgaW5zdGVhZCB1c2UgdGhlIHJlc3BlY3RpdmUgaW50ZXJmYWNlICIKKyJ0byByZXRyaWV2ZSB0aGUgbmVlZGVkIHZhbHVlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjM0CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIlZhcmlhYmxlcyBzZXQgYnkgZHBrZy1hcmNoaXRlY3R1cmUiCittc2dzdHIgIkRlYmlhbiBQcm9qZWN0IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIzOAorbXNnaWQgIiIKKyJCPGRwa2ctYXJjaGl0ZWN0dXJlPiBpcyBjYWxsZWQgd2l0aCB0aGUgQjwtYT4gYW5kIEI8LXQ+IHBhcmFtZXRlcnMgIgorImZvcndhcmRlZC4gQW55IHZhcmlhYmxlIHRoYXQgaXMgb3V0cHV0IGJ5IGl0cyBCPC1zPiBvcHRpb24gaXMgaW50ZWdyYXRlZCBpbiAiCisidGhlIGJ1aWxkIGVudmlyb25tZW50LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMzgKKyMsIG5vLXdyYXAKK21zZ2lkICJDb21waWxlciBmbGFncyBhcmUgbm8gbG9uZ2VyIGV4cG9ydGVkIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjQzCittc2dpZCAiIgorIkJldHdlZW4gdmVyc2lvbnMgMS4xNC4xNyBhbmQgMS4xNi4xLCBCPGRwa2ctYnVpbGRwYWNrYWdlPiBleHBvcnRlZCBjb21waWxlciAiCisiZmxhZ3MgKEI8Q0ZMQUdTPiwgQjxDWFhGTEFHUz4sIEI8RkZMQUdTPiwgQjxDUFBGTEFHUz4gYW5kIEI8TERGTEFHUz4pIHdpdGggIgorInZhbHVlcyBhcyByZXR1cm5lZCBieSBCPGRwa2ctYnVpbGRmbGFncz4uIFRoaXMgaXMgbm8gbG9uZ2VyIHRoZSBjYXNlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjI0OAorbXNnaWQgIiIKKyJJdCBzaG91bGQgYmUgcG9zc2libGUgdG8gc3BlY2lmeSBzcGFjZXMgYW5kIHNoZWxsIG1ldGFjaGFyYWN0ZXJzIGluIGFuZCAiCisiaW5pdGlhbCBhcmd1bWVudHMgZm9yIEk8Z2Fpbi1yb290LWNvbW1hbmQ+IGFuZCBJPHNpZ24tY29tbWFuZD4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjU2CisjLCBmdXp6eQorbXNnaWQgIiIKKyJCPGRwa2ctc291cmNlPigxKSwgQjxkcGtnLWFyY2hpdGVjdHVyZT4oMSksIEI8ZHBrZy1idWlsZGZsYWdzPigxKSwgQjxkcGtnLSIKKyJnZW5jaGFuZ2VzPigxKSwgQjxmYWtlcm9vdD4oMSksIEI8Z3BnPigxKS4iCittc2dzdHIgIkI8ZGViPig1KSwgQjxkZWItY29udHJvbD4oNSksIEI8ZHBrZz4oMSksIEI8ZHNlbGVjdD4oMSkuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjI2NQorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDA4LTIwMTAgUmFwaGFcXFs6ZV1sIEhlcnR6b2ciCittc2dzdHIgIiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctY2hlY2tidWlsZGRlcHMuMToxCisjLCBuby13cmFwCittc2dpZCAiZHBrZy1jaGVja2J1aWxkZGVwcyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6NAorbXNnaWQgImRwa2ctY2hlY2tidWlsZGRlcHMgLSBjaGVjayBidWlsZCBkZXBlbmRlbmNpZXMgYW5kIGNvbmZsaWN0cyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6OQorIywgZnV6enkKK21zZ2lkICJCPGRwa2ctY2hlY2tidWlsZGRlcHM+IFtJPG9wdGlvbj4uLi5dIFtJPGNvbnRyb2wtZmlsZT5dIgorbXNnc3RyICJCPGRwa2ctZGViPiBCPC1JPnxCPC0taW5mbz4gSTxhcmNow612dW0+IFtJPGVsbGVuxZFyesWRLWbDoWpsLW7DqXY+IC4uXSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1jaGVja2J1aWxkZGVwcy4xOjE0Cittc2dpZCAiIgorIlRoaXMgcHJvZ3JhbSBjaGVja3MgdGhlIGluc3RhbGxlZCBwYWNrYWdlcyBpbiB0aGUgc3lzdGVtIGFnYWluc3QgdGhlIGJ1aWxkICIKKyJkZXBlbmRlbmNpZXMgYW5kIGJ1aWxkIGNvbmZsaWN0cyBsaXN0ZWQgaW4gdGhlIGNvbnRyb2wgZmlsZS4gSWYgYW55IGFyZSBub3QgIgorIm1ldCwgaXQgZGlzcGxheXMgdGhlbSBhbmQgZXhpdHMgd2l0aCBhIG5vbnplcm8gcmV0dXJuIGNvZGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctY2hlY2tidWlsZGRlcHMuMToxNworbXNnaWQgIiIKKyJCeSBkZWZhdWx0LCBCPGRlYmlhbi9jb250cm9sPiBpcyByZWFkLCBidXQgYW4gYWx0ZXJuYXRlIGNvbnRyb2wgZmlsZW5hbWUgbWF5ICIKKyJiZSBzcGVjaWZpZWQgb24gdGhlIGNvbW1hbmQgbGluZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1jaGVja2J1aWxkZGVwcy4xOjI3Cittc2dpZCAiIgorIklnbm9yZSBJPEJ1aWxkLURlcGVuZHMtSW5kZXA+IGxpbmVzLiBVc2Ugd2hlbiBubyBhcmNoLWluZGVwIHBhY2thZ2VzIHdpbGwgYmUgIgorImJ1aWx0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1jaGVja2J1aWxkZGVwcy4xOjI3CisjLCBuby13cmFwCittc2dpZCAiQjwtZCA+STxidWlsZC1kZXBlbmRzLXN0cmluZz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctY2hlY2tidWlsZGRlcHMuMToyOQorIywgbm8td3JhcAorbXNnaWQgIkI8LWMgPkk8YnVpbGQtY29uZmxpY3RzLXN0cmluZz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1jaGVja2J1aWxkZGVwcy4xOjMzCittc2dpZCAiIgorIlVzZSB0aGUgZ2l2ZW4gYnVpbGQgZGVwZW5kZW5jaWVzL2NvbmZsaWN0cyBpbnN0ZWFkIG9mIHRob3NlIGNvbnRhaW5lZCBpbiB0aGUgIgorIkk8ZGViaWFuL2NvbnRyb2w+IGZpbGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctY2hlY2tidWlsZGRlcHMuMTo0MgorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDAxIEpvZXkgSGVzcyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1kaXN0YWRkZmlsZS4xOjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLWRpc3RhZGRmaWxlIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGlzdGFkZGZpbGUuMTo0Cittc2dpZCAiZHBrZy1kaXN0YWRkZmlsZSAtIGFkZCBlbnRyaWVzIHRvIGRlYmlhbi9maWxlcyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpc3RhZGRmaWxlLjE6OAorIywgZnV6enkKK21zZ2lkICJCPGRwa2ctZGlzdGFkZGZpbGU+IFtJPG9wdGlvbj4uLi5dSTwgZmlsZW5hbWUgc2VjdGlvbiBwcmlvcml0eT4iCittc2dzdHIgIkI8ZHBrZy1kZWI+IEI8LWM+fEI8LS1jb250ZW50cz4gSTxhcmNow612dW0+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpc3RhZGRmaWxlLjE6MTMKK21zZ2lkICJCPGRwa2ctZGlzdGFkZGZpbGU+IGFkZHMgYW4gZW50cnkgZm9yIGEgbmFtZWQgZmlsZSB0byBCPGRlYmlhbi9maWxlcz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGlzdGFkZGZpbGUuMToxOAorbXNnaWQgIiIKKyJJdCB0YWtlcyB0aHJlZSBub24tb3B0aW9uIGFyZ3VtZW50cywgdGhlIGZpbGVuYW1lIGFuZCB0aGUgc2VjdGlvbiBhbmQgIgorInByaW9yaXR5IGZvciB0aGUgQjwuY2hhbmdlcz4gZmlsZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXN0YWRkZmlsZS4xOjI2Cittc2dpZCAiIgorIlRoZSBmaWxlbmFtZSBzaG91bGQgYmUgc3BlY2lmaWVkIHJlbGF0aXZlIHRvIHRoZSBkaXJlY3Rvcnkgd2hlcmUgQjxkcGtnLSIKKyJnZW5jaGFuZ2VzPiB3aWxsIGV4cGVjdCB0byBmaW5kIHRoZSBmaWxlcywgdXN1YWxseSBCPC4uPiwgcmF0aGVyIHRoYW4gYmVpbmcgIgorImEgcGF0aG5hbWUgcmVsYXRpdmUgdG8gdGhlIGN1cnJlbnQgZGlyZWN0b3J5IHdoZW4gQjxkcGtnLWRpc3RhZGRmaWxlPiBpcyBydW4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRpc3RhZGRmaWxlLjE6MjggZHBrZy1nZW5jaGFuZ2VzLjE6MTAzIGRwa2ctZ2VuY29udHJvbC4xOjY5CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LWY+STxmaWxlc2xpc3RmaWxlPiIKK21zZ3N0ciAiQjwtLWZzeXMtdGFyZmlsZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGlzdGFkZGZpbGUuMTozMiBkcGtnLWdlbmNvbnRyb2wuMTo3MworbXNnaWQgIiIKKyJSZWFkIG9yIHdyaXRlIHRoZSBsaXN0IG9mIGZpbGVzIHRvIGJlIHVwbG9hZGVkIGhlcmUsIHJhdGhlciB0aGFuIHVzaW5nICIKKyJCPGRlYmlhbi9maWxlcz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRpc3RhZGRmaWxlLjE6NDAgZHBrZy1nZW5jaGFuZ2VzLjE6MTM5IGRwa2ctZ2VuY29udHJvbC4xOjEzNAorIywgbm8td3JhcAorbXNnaWQgIkI8ZGViaWFuL2ZpbGVzPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpc3RhZGRmaWxlLjE6NDYKK21zZ2lkICIiCisiVGhlIGxpc3Qgb2YgZ2VuZXJhdGVkIGZpbGVzIHdoaWNoIGFyZSBwYXJ0IG9mIHRoZSB1cGxvYWQgYmVpbmcgcHJlcGFyZWQuICAiCisiQjxkcGtnLWRpc3RhZGRmaWxlPiBjYW4gYmUgdXNlZCB0byBhZGQgYWRkaXRpb25hbCBmaWxlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctZGViLjE6MQorIywgbm8td3JhcAorbXNnaWQgImRwa2ctZGViIgorbXNnc3RyICJkcGtnLWRlYiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMTo0Cittc2dpZCAiZHBrZy1kZWIgLSBEZWJpYW4gcGFja2FnZSBhcmNoaXZlICguZGViKSBtYW5pcHVsYXRpb24gdG9vbCIKK21zZ3N0ciAiZHBrZy1kZWIgLSBEZWJpYW4gY3NvbWFnIGFyY2jDrXZ1bSAoLmRlYikga2V6ZWzFkSBlc3prw7Z6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjgKKyMsIGZ1enp5Cittc2dpZCAiQjxkcGtnLWRlYj4gW0k8b3B0aW9uPi4uLl0gSTxjb21tYW5kPiIKK21zZ3N0ciAiQjxkcGtnLWRlYj4gQjwtYz58QjwtLWNvbnRlbnRzPiBJPGFyY2jDrXZ1bT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTIKK21zZ2lkICIiCisiQjxkcGtnLWRlYj4gcGFja3MsIHVucGFja3MgYW5kIHByb3ZpZGVzIGluZm9ybWF0aW9uIGFib3V0IERlYmlhbiBhcmNoaXZlcy4iCittc2dzdHIgIiIKKyJBIEI8ZHBrZy1kZWI+IERlYmlhbiBhcmNow612dW1va2F0IGNzb21hZ29sLCBraWJvbnQgw6lzIGluZm9ybcOhY2nDs2thdCBuecO6anQgIgorInLDs2x1ay4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTYKK21zZ2lkICJVc2UgQjxkcGtnPiB0byBpbnN0YWxsIGFuZCByZW1vdmUgcGFja2FnZXMgZnJvbSB5b3VyIHN5c3RlbS4iCittc2dzdHIgIiIKKyJDc29tYWdvayB0ZWxlcMOtdMOpc8OpaGV6IMOpcyBlbHTDoXZvbMOtdMOhc8OhaG96IGEgcmVuZHN6ZXJixZFsIGEgQjxkcGtnPiBwcm9ncmFtb3QgIgorImtlbGwgaGFzem7DoWxuaS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MjYKK21zZ2lkICIiCisiWW91IGNhbiBhbHNvIGludm9rZSBCPGRwa2ctZGViPiBieSBjYWxsaW5nIEI8ZHBrZz4gd2l0aCB3aGF0ZXZlciBvcHRpb25zIHlvdSAiCisid2FudCB0byBwYXNzIHRvIEI8ZHBrZy1kZWI+LiBCPGRwa2c+IHdpbGwgc3BvdCB0aGF0IHlvdSB3YW50ZWQgQjxkcGtnLWRlYj4gIgorImFuZCBydW4gaXQgZm9yIHlvdS4iCittc2dzdHIgIiIKKyJBIEI8ZHBrZy1kZWI+IGEgQjxkcGtnPi12YWwgaXMgaMOtdmhhdMOzIG1pbmRlbiBsZWhldMOpc8OpZ2dlbCwgbWVseWV0IMOhdCBha2Fyc3ogIgorImFkbmkgYSBCPGRwa2ctZGViPi1uZWsuIEEgQjxkcGtnPiBsw6F0amEsIGhvZ3kgYSBCPGRwa2ctZGViPi1ldCBha2Fyb2Qgw6lzIGVsICIKKyJmb2dqYSBpbmTDrXRhbmkuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToyOAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1iPiwgQjwtLWJ1aWxkPiBJPGRpcmVjdG9yeT4gW0k8YXJjaGl2ZT58STxkaXJlY3Rvcnk+XSIKK21zZ3N0ciAiQjxkcGtnLWRlYj4gQjwtYj58QjwtLWJ1aWxkPiBJPGvDtm55dnTDoXI+IFtJPGFyY2jDrXZ1bT58STxrw7ZueXZ0w6FyPl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6NDAKK21zZ2lkICIiCisiQ3JlYXRlcyBhIGRlYmlhbiBhcmNoaXZlIGZyb20gdGhlIGZpbGVzeXN0ZW0gdHJlZSBzdG9yZWQgaW4gSTxkaXJlY3Rvcnk+LiAiCisiSTxkaXJlY3Rvcnk+IG11c3QgaGF2ZSBhIEI8REVCSUFOPiBzdWJkaXJlY3RvcnksIHdoaWNoIGNvbnRhaW5zIHRoZSBjb250cm9sICIKKyJpbmZvcm1hdGlvbiBmaWxlcyBzdWNoIGFzIHRoZSBjb250cm9sIGZpbGUgaXRzZWxmLiBUaGlzIGRpcmVjdG9yeSB3aWxsICIKKyJJPG5vdD4gYXBwZWFyIGluIHRoZSBiaW5hcnkgcGFja2FnZSdzIGZpbGVzeXN0ZW0gYXJjaGl2ZSwgYnV0IGluc3RlYWQgdGhlICIKKyJmaWxlcyBpbiBpdCB3aWxsIGJlIHB1dCBpbiB0aGUgYmluYXJ5IHBhY2thZ2UncyBjb250cm9sIGluZm9ybWF0aW9uIGFyZWEuIgorbXNnc3RyICIiCisiTMOpdHJlaG96IGVneSBEZWJpYW4gYXJjaMOtdnVtb3QgYSBJPGvDtm55dnTDoXI+LWJhbiBsw6l2xZEgZsOhamxva2LDs2wuIEEgIgorIkk8a8O2bnl2dMOhcj4gZWd5IEI8REVCSUFOPiBhbGvDtm55dnTDoXIga2VsbCBsZWd5ZW4sIG1lbHkgZWd5YXLDoW50IHRhcnRhbG1henphICIKKyJheiBlbGxlbsWRcnrFkSBpbmZvcm3DoWNpw7NzIGbDoWpsb2thdCDDqXMgYXogZWxsZW7FkXJ6xZEgZsOhamx0IG1hZ8OhdC4gRSBrw7ZueXZ0w6FyICIKKyJJPG5lbT4gamVsZW5payBtZWcgYSBiaW7DoXJpcyBjc29tYWcgZsOhamxyZW5kc3plciBhcmNow612dW3DoWJhbiwgYSBiZW5uZSBsw6l2xZEgIgorImbDoWpsb2sgYSBiaW7DoXJpcyBjc29tYWcgZWxsZW7FkXJ6xZEgaW5mb3Jtw6FjacOzcyB0ZXLDvGxldMOpcmUga2Vyw7xsbmVrLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMTo1MgorbXNnaWQgIiIKKyJVbmxlc3MgeW91IHNwZWNpZnkgQjwtLW5vY2hlY2s+LCBCPGRwa2ctZGViPiB3aWxsIHJlYWQgQjxERUJJQU4vY29udHJvbD4gYW5kICIKKyJwYXJzZSBpdC4gSXQgd2lsbCBjaGVjayBpdCBmb3Igc3ludGF4IGVycm9ycyBhbmQgb3RoZXIgcHJvYmxlbXMsIGFuZCBkaXNwbGF5ICIKKyJ0aGUgbmFtZSBvZiB0aGUgYmluYXJ5IHBhY2thZ2UgYmVpbmcgYnVpbHQuICBCPGRwa2ctZGViPiB3aWxsIGFsc28gY2hlY2sgdGhlICIKKyJwZXJtaXNzaW9ucyBvZiB0aGUgbWFpbnRhaW5lciBzY3JpcHRzIGFuZCBvdGhlciBmaWxlcyBmb3VuZCBpbiB0aGUgQjxERUJJQU4+ICIKKyJjb250cm9sIGluZm9ybWF0aW9uIGRpcmVjdG9yeS4iCittc2dzdHIgIiIKKyJBIEI8LS1ub2NoZWNrPiBtZWdhZMOhc2EgbsOpbGvDvGwsIGEgQjxkcGtnLWRlYj4gZWxvbHZhc3NhIMOpcyDDqXJ0ZWxtZXppIGEgIgorIkI8REVCSUFOL2NvbnRyb2w+IGbDoWpsdC4gTnllbHZ0YW5pIMOpcyBtw6FzIGhpYsOha2F0IGVsbGVuxZFyaXogw6lzIGtpw61yamEgYSAiCisiYmluw6FyaXMgY3NvbWFnIG5ldsOpdC4gQSBCPGRwa2ctZGViPiBlbGxlbsWRcnppIGEga2FyYmFudGFydMOzaSBzemtyaXB0ZWsgIgorImpvZ2FpdCDDqXMgYSBCPERFQklBTj4gZWxsZW7FkXJ6xZEgaW5mb3Jtw6FjacOzcyBrw7ZueXZ0w6FyYmFuIGzDqXbFkSBtw6FzIGbDoWpsb2thdC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6NTkKK21zZ2lkICIiCisiSWYgbm8gSTxhcmNoaXZlPiBpcyBzcGVjaWZpZWQgdGhlbiBCPGRwa2ctZGViPiB3aWxsIHdyaXRlIHRoZSBwYWNrYWdlIGludG8gIgorInRoZSBmaWxlIEk8ZGlyZWN0b3J5PkI8LmRlYj4uIgorbXNnc3RyICIiCisiSGEgbmluY3MgSTxhcmNow612dW0+IG1lZ2FkdmEsIGEgQjxkcGtnLWRlYj4gYSBjc29tYWdvdCBhIEk8ZGlyZWN0b3J5PkI8LmRlYj4gIgorImbDoWpsYmEga8Opc3rDrXRpIGVsLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMTo2MQorbXNnaWQgIklmIHRoZSBhcmNoaXZlIHRvIGJlIGNyZWF0ZWQgYWxyZWFkeSBleGlzdHMgaXQgd2lsbCBiZSBvdmVyd3JpdHRlbi4iCittc2dzdHIgIkEgbcOhciBsw6l0ZXrFkSBoYXNvbmzDsyBhcmNow612dW1vdCBmZWzDvGzDrXJqYS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6NzcKK21zZ2lkICIiCisiSWYgdGhlIHNlY29uZCBhcmd1bWVudCBpcyBhIGRpcmVjdG9yeSB0aGVuIEI8ZHBrZy1kZWI+IHdpbGwgd3JpdGUgdG8gdGhlICIKKyJmaWxlIEk8cGFja2FnZT5CPF8+STx2ZXJzaW9uPkI8Xz5JPGFyY2g+QjwuZGViPiwgb3IgIgorIkk8cGFja2FnZT5CPF8+STx2ZXJzaW9uPkI8LmRlYj4gaWYgbm8gQjxBcmNoaXRlY3R1cmU+IGZpZWxkIGlzIHByZXNlbnQgaW4gIgorInRoZSBwYWNrYWdlIGNvbnRyb2wgZmlsZS4gV2hlbiBhIHRhcmdldCBkaXJlY3RvcnkgaXMgc3BlY2lmaWVkLCByYXRoZXIgdGhhbiAiCisiYSBmaWxlLCB0aGUgQjwtLW5vY2hlY2s+IG9wdGlvbiBtYXkgbm90IGJlIHVzZWQgKHNpbmNlIEI8ZHBrZy1kZWI+IG5lZWRzIHRvICIKKyJyZWFkIGFuZCBwYXJzZSB0aGUgcGFja2FnZSBjb250cm9sIGZpbGUgdG8gZGV0ZXJtaW5lIHdoaWNoIGZpbGVuYW1lIHRvIHVzZSkuIgorbXNnc3RyICIiCisiSGEgYSBtw6Fzb2RpayBhcmd1bWVudHVtIGVneSBrw7ZueXZ0w6FyLCBhIEI8ZHBrZy1kZWI+IGEgIgorIkk8Y3NvbWFnPkI8Xz5JPHZlcnppw7M+QjxfPkk8YXJjaGl0ZWt0w7pyYT5CPC5kZWI+LCB2YWd5IGhhIG5pbmNzICIKKyJCPEFyY2hpdGVrdMO6cmE+IG1lesWRIGEgY3NvbWFnIGVsbGVuxZFyesWRIGbDoWpsYmFuLCBhIEk8Y3NvbWFnPkI8Xz5JPHZlcnppw7M+QjwuIgorImRlYj4gZsOhamxiYSDDrXIuICBIYSBuZW0gZsOhamwsIGhhbmVtIGPDqWxrw7ZueXZ0w6FyIHZhbiBtZWdhZHZhLCBhIEI8LS1ub2NoZWNrPiAiCisibGVoZXTFkXPDqWcgbmVtIGhhc3puw6FsaGF0w7MgKG1pdmVsIGEgQjxkcGtnLWRlYj4tbmVrIGVsIGtlbGwgb2x2YXNuaSBhIGNzb21hZyAiCisiZWxsZW7FkXJ6xZEgZsOhamx0IGEgZsOhamxuw6l2IG1lZ2hhdMOhcm96w6Fzw6Fob3opLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6NzcKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtST4sIEI8LS1pbmZvPiBJPGFyY2hpdmU+IFtJPGNvbnRyb2wtZmlsZS1uYW1lPi4uLl0iCittc2dzdHIgIkI8ZHBrZy1kZWI+IEI8LUk+fEI8LS1pbmZvPiBJPGFyY2jDrXZ1bT4gW0k8ZWxsZW7FkXJ6xZEtZsOhamwtbsOpdj4gLi5dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjgwCittc2dpZCAiUHJvdmlkZXMgaW5mb3JtYXRpb24gYWJvdXQgYSBiaW5hcnkgcGFja2FnZSBhcmNoaXZlLiIKK21zZ3N0ciAiRWd5IGJpbsOhcmlzIGNzb21hZ2FyY2jDrXZ1bXLDs2wgYWQgaW5mb3Jtw6FjacOza2F0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMTo4NQorbXNnaWQgIiIKKyJJZiBubyBJPGNvbnRyb2wtZmlsZS1uYW1lPnMgYXJlIHNwZWNpZmllZCB0aGVuIGl0IHdpbGwgcHJpbnQgYSBzdW1tYXJ5IG9mICIKKyJ0aGUgY29udGVudHMgb2YgdGhlIHBhY2thZ2UgYXMgd2VsbCBhcyBpdHMgY29udHJvbCBmaWxlLiIKK21zZ3N0ciAiIgorIkhhIG5pbmNzIG1lZ2FkdmEgSTxlbGxlbsWRcnrFkS1mw6FqbC1uw6l2Piwga2nDrXJqYSBhIGNzb21hZyDDqXMgZWxsZW7FkXJ6xZEgZsOhamxqYSAiCisidGFydGFsbcOhdCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMTo5MworbXNnaWQgIiIKKyJJZiBhbnkgSTxjb250cm9sLWZpbGUtbmFtZT5zIGFyZSBzcGVjaWZpZWQgdGhlbiBCPGRwa2ctZGViPiB3aWxsIHByaW50IHRoZW0gIgorImluIHRoZSBvcmRlciB0aGV5IHdlcmUgc3BlY2lmaWVkOyBpZiBhbnkgb2YgdGhlIGNvbXBvbmVudHMgd2VyZW4ndCBwcmVzZW50ICIKKyJpdCB3aWxsIHByaW50IGFuIGVycm9yIG1lc3NhZ2UgdG8gc3RkZXJyIGFib3V0IGVhY2ggb25lIGFuZCBleGl0IHdpdGggc3RhdHVzICIKKyIyLiIKK21zZ3N0ciAiIgorIkhhIG1lZyB2YW4gYWR2YSBJPGVsbGVuxZFyesWRLWbDoWpsLW7DqXY+LCBhIEI8ZHBrZy1kZWI+IGEgbWVnYWRvdHQgc29ycmVuZGJlbiAiCisibXV0YXQgcsOhanVrLCDDqXMgaGEgYsOhcm1lbHkgw7Zzc3pldGV2xZEgaGnDoW55emlrLCBhem9rcsOzbCBoaWJhw7x6ZW5ldGV0IGvDvGxkIGEgIgorInN0ZGVyci1yZSDDqXMga2lsw6lwIDItZXMga8OzZGRhbC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRlYi4xOjkzCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LVc+LCBCPC0tc2hvdz4gSTxhcmNoaXZlPiIKK21zZ3N0ciAiQjxkcGtnLWRlYj4gQjwtYz58QjwtLWNvbnRlbnRzPiBJPGFyY2jDrXZ1bT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTAwCisjLCBmdXp6eQorbXNnaWQgIiIKKyJQcm92aWRlcyBpbmZvcm1hdGlvbiBhYm91dCBhIGJpbmFyeSBwYWNrYWdlIGFyY2hpdmUgaW4gdGhlIGZvcm1hdCBzcGVjaWZpZWQgIgorImJ5IHRoZSBCPC0tc2hvd2Zvcm1hdD4gYXJndW1lbnQuIFRoZSBkZWZhdWx0IGZvcm1hdCBkaXNwbGF5cyB0aGUgcGFja2FnZSdzICIKKyJuYW1lIGFuZCB2ZXJzaW9uIG9uIG9uZSBsaW5lLCBzZXBhcmF0ZWQgYnkgYSB0YWJ1bGF0b3IuIgorbXNnc3RyICIiCisiRWd5IGJpbsOhcmlzIGNzb21hZ2FyY2jDrXZ1bXLDs2wgYWQgaW5mb3Jtw6FjacOza2F0IGEgQjwtLXNob3dmb3JtYXQ+ICIKKyJhcmd1bWVudHVtYmFuIG1lZ2Fkb3R0IGZvcm3DoXR1bWJhbi4gQXogYWxhcCBmb3Jtw6F0dW0ga2nDrXJqYSBhIGNzb21hZyBuZXbDqXQgIgorIsOpcyB2ZXJ6acOzasOhdCAxIHNvcmJhbiB0YWJ1bMOhdG9ycmFsIGVsdsOhbGFzenR2YS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRlYi4xOjEwMAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1mPiwgQjwtLWZpZWxkPiBJPGFyY2hpdmU+IFtJPGNvbnRyb2wtZmllbGQtbmFtZT4uLi5dIgorbXNnc3RyICJCPGRwa2ctZGViPiBCPC1mPnxCPC0tZmllbGQ+IEk8YXJjaMOtdnVtPiBbSTxlbGxlbsWRcnrFkS1tZXrFkS1uw6l2PiAuLi5dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjEwMworbXNnaWQgIkV4dHJhY3RzIGNvbnRyb2wgZmlsZSBpbmZvcm1hdGlvbiBmcm9tIGEgYmluYXJ5IHBhY2thZ2UgYXJjaGl2ZS4iCittc2dzdHIgIktpc3plZGkgYXogZWxsZW7FkXJ6xZEgaW5mb3Jtw6FjacOzcyBmw6FqbHQgZWd5IGJpbsOhcmlzIGNzb21hZ2FyY2jDrXZ1bWLDs2wiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTA3Cittc2dpZCAiIgorIklmIG5vIEI8Y29udHJvbC1maWxlLWZpZWxkPnMgYXJlIHNwZWNpZmllZCB0aGVuIGl0IHdpbGwgcHJpbnQgdGhlIHdob2xlICIKKyJjb250cm9sIGZpbGUuIgorbXNnc3RyICIiCisiSGEgbmluY3NlbmVrIEI8ZWxsZW7FkXJ6xZEtZsOhamwtbWV6xZFrPmsgbWVnYWR2YSwga2nDrXJqYSBheiBlZ8Opc3ogZWxsZW7FkXJ6xZEgIgorImbDoWpsdC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTE2Cittc2dpZCAiIgorIklmIGFueSBhcmUgc3BlY2lmaWVkIHRoZW4gQjxkcGtnLWRlYj4gd2lsbCBwcmludCB0aGVpciBjb250ZW50cywgaW4gdGhlICIKKyJvcmRlciBpbiB3aGljaCB0aGV5IGFwcGVhciBpbiB0aGUgY29udHJvbCBmaWxlLiBJZiBtb3JlIHRoYW4gb25lIEI8Y29udHJvbC0iCisiZmlsZS1maWVsZD4gaXMgc3BlY2lmaWVkIHRoZW4gQjxkcGtnLWRlYj4gd2lsbCBwcmVjZWRlIGVhY2ggd2l0aCBpdHMgZmllbGQgIgorIm5hbWUgKGFuZCBhIGNvbG9uIGFuZCBzcGFjZSkuIgorbXNnc3RyICIiCisiSGEgdmFubmFrLCBhIEI8ZHBrZy1kZWI+IGtpw61yamEgdGFydGFsbXVrYXQgYXogZWxsZW7FkXJ6xZEgZsOhamxiYW4gbWVnYWRvdHQgIgorInNvcnJlbmRiZW4uIEhhIHTDtmJiLCBtaW50IDEgQjxlbGxlbsWRcnrFkS1mw6FqbC1tZXrFkT4ga2Vyw7xsdCBtZWdhZMOhc3JhLCBhICIKKyJCPGRwa2ctZGViPiBtZXrFkW5ldsO8a2tlbCAow6lzIGVneSBrZXR0xZFzcG9udHRhbCDDqXMgc3rDs2vDtnp6ZWwpIGF6b25vc8OtdGphIMWRa2V0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxMTgKK21zZ2lkICJObyBlcnJvcnMgYXJlIHJlcG9ydGVkIGZvciBmaWVsZHMgcmVxdWVzdGVkIGJ1dCBub3QgZm91bmQuIgorbXNnc3RyICJOZW0gYWQgaGliYWplbGV0IGvDqXJ0LCBkZSBuZW0gbGVsdCBtZXrFkWtyZS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRlYi4xOjExOAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1jPiwgQjwtLWNvbnRlbnRzPiBJPGFyY2hpdmU+IgorbXNnc3RyICJCPGRwa2ctZGViPiBCPC1jPnxCPC0tY29udGVudHM+IEk8YXJjaMOtdnVtPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxMjQKK21zZ2lkICIiCisiTGlzdHMgdGhlIGNvbnRlbnRzIG9mIHRoZSBmaWxlc3lzdGVtIHRyZWUgYXJjaGl2ZSBwb3J0aW9uIG9mIHRoZSBwYWNrYWdlICIKKyJhcmNoaXZlLiBJdCBpcyBjdXJyZW50bHkgcHJvZHVjZWQgaW4gdGhlIGZvcm1hdCBnZW5lcmF0ZWQgYnkgQjx0YXI+J3MgIgorInZlcmJvc2UgbGlzdGluZy4iCittc2dzdHIgIiIKKyJLaWxpc3TDoXp6YSBhIGNzb21hZyBhcmNow612dW0gZsOhamxyZW5kc3plciBmYSBhcmNow612dW0gcsOpc3rDqXQuIEplbGVubGVnIGEgIgorIkI8dGFyPiByw6lzemxldGVzIGxpc3RhIGZvcm3DoXR1bWJhbiB0ZXN6aSBtZWcgZXp0LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MTI0CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LXg+LCBCPC0tZXh0cmFjdD4gSTxhcmNoaXZlIGRpcmVjdG9yeT4iCittc2dzdHIgIkI8ZHBrZy1kZWI+IEI8LWU+fEI8LS1jb250cm9sPiBJPGFyY2jDrXZ1bSBrw7ZueXZ0w6FyPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxMjgKK21zZ2lkICIiCisiRXh0cmFjdHMgdGhlIGZpbGVzeXN0ZW0gdHJlZSBmcm9tIGEgcGFja2FnZSBhcmNoaXZlIGludG8gdGhlIHNwZWNpZmllZCAiCisiZGlyZWN0b3J5LiIKK21zZ3N0ciAiIgorIktpYm9udGphIGVneSBjc29tYWcgYXJjaMOtdnVtIGbDoWpscmVuZHN6ZXIgZsOhasOhdCBlZ3kgbWVnYWRvdHQga8O2bnl2dMOhcmJhLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxMzQKK21zZ2lkICIiCisiTm90ZSB0aGF0IGV4dHJhY3RpbmcgYSBwYWNrYWdlIHRvIHRoZSByb290IGRpcmVjdG9yeSB3aWxsIEk8bm90PiByZXN1bHQgaW4gYSAiCisiY29ycmVjdCBpbnN0YWxsYXRpb24hIFVzZSBCPGRwa2c+IHRvIGluc3RhbGwgcGFja2FnZXMuIgorbXNnc3RyICIiCisiRWd5IGNzb21hZyBraWJvbnTDoXNhIGEgZ3nDtmvDqXJrw7ZueXZ0w6FyYmEgSTxuZW0+IGFkIGhlbHllcyB0ZWxlcMOtdMOpc3QhIEEgIgorIkI8ZHBrZz4gdmFneSB2YWxhbWVseSBmZWzDvGxldGUgaGFzem7DoWxoYXTDsyBjc29tYWdvayB0ZWxlcMOtdMOpc8OpcmUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjEzOAorIywgZnV6enkKK21zZ2lkICIiCisiSTxkaXJlY3Rvcnk+IChidXQgbm90IGl0cyBwYXJlbnRzKSB3aWxsIGJlIGNyZWF0ZWQgaWYgbmVjZXNzYXJ5LCBhbmQgaXRzICIKKyJwZXJtaXNzaW9ucyBtb2RpZmllZCB0byBtYXRjaCB0aGUgY29udGVudHMgb2YgdGhlIHBhY2thZ2UuIgorbXNnc3RyICJMw6l0cmVob3p6YSBhIEk8a8O2bnl2dMOhcj5hdCAoZGUgc3rDvGxlaXQgbmVtKSwgaGEgc3rDvGtzw6lnZXMuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToxMzgKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtWD4sIEI8LS12ZXh0cmFjdD4gSTxhcmNoaXZlIGRpcmVjdG9yeT4iCittc2dzdHIgIkI8ZHBrZy1kZWI+IEI8LWU+fEI8LS1jb250cm9sPiBJPGFyY2jDrXZ1bSBrw7ZueXZ0w6FyPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxNDUKKyMsIGZ1enp5Cittc2dpZCAiIgorIklzIGxpa2UgQjwtLWV4dHJhY3Q+IChCPC14PikgIHdpdGggQjwtLXZlcmJvc2U+IChCPC12PikgIHdoaWNoIHByaW50cyBhICIKKyJsaXN0aW5nIG9mIHRoZSBmaWxlcyBleHRyYWN0ZWQgYXMgaXQgZ29lcy4iCittc2dzdHIgIiIKKyJBIEI8LS12ZXh0cmFjdD4gKEI8LVg+KSAga2nDrXJqYSBhIGtpYm9udMOhc3JhIGtlcsO8bHQgZsOhamxva2F0LCBhIEI8LS1leHRyYWN0PiAiCisiKEI8LXg+KSAgY3NhayBoaWLDoW7DoWwgw61yLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MTQ1CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LVI+LCBCPC0tcmF3LWV4dHJhY3Q+IEk8YXJjaGl2ZSBkaXJlY3Rvcnk+IgorbXNnc3RyICJCPGRwa2ctZGViPiBCPC1lPnxCPC0tY29udHJvbD4gSTxhcmNow612dW0ga8O2bnl2dMOhcj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTUwCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJFeHRyYWN0cyB0aGUgZmlsZXN5c3RlbSB0cmVlIGZyb20gYSBwYWNrYWdlIGFyY2hpdmUgaW50byB0aGUgc3BlY2lmaWVkICIKKyN8ICJkaXJlY3RvcnkuIgorbXNnaWQgIiIKKyJFeHRyYWN0cyB0aGUgZmlsZXN5c3RlbSB0cmVlIGZyb20gYSBwYWNrYWdlIGFyY2hpdmUgaW50byBhIHNwZWNpZmllZCAiCisiZGlyZWN0b3J5LCBhbmQgdGhlIGNvbnRyb2wgaW5mb3JtYXRpb24gZmlsZXMgaW50byBhIERFQklBTiBzdWJkaXJlY3Rvcnkgb2YgIgorInRoZSBzcGVjaWZpZWQgZGlyZWN0b3J5LiIKK21zZ3N0ciAiIgorIktpYm9udGphIGVneSBjc29tYWcgYXJjaMOtdnVtIGbDoWpscmVuZHN6ZXIgZsOhasOhdCBlZ3kgbWVnYWRvdHQga8O2bnl2dMOhcmJhLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxNTIgZHBrZy1kZWIuMToxNzIKK21zZ2lkICIiCisiVGhlIHRhcmdldCBkaXJlY3RvcnkgKGJ1dCBub3QgaXRzIHBhcmVudHMpIHdpbGwgYmUgY3JlYXRlZCBpZiBuZWNlc3NhcnkuIgorbXNnc3RyICJMw6l0cmVob3p6YSBhIGPDqWxrw7ZueXZ0w6FyYXQgKGRlIHN6w7xsZWl0IG5lbSksIGhhIHN6w7xrc8OpZ2VzLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MTUyCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1mc3lzLXRhcmZpbGU+IEk8YXJjaGl2ZT4iCittc2dzdHIgIkI8ZHBrZy1kZWIgLS1mc3lzLXRhcmZpbGU+IEk8YXJjaMOtdnVtPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxNjEKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIkV4dHJhY3RzIHRoZSBmaWxlc3lzdGVtIHRyZWUgZGF0YSBmcm9tIGEgYmluYXJ5IHBhY2thZ2UgYW5kIHNlbmRzIGl0IHRvICIKKyN8ICJzdGFuZGFyZCBvdXRwdXQgaW4gQjx0YXI+IGZvcm1hdC4gVG9nZXRoZXIgd2l0aCBCPHRhcj4oMSkgIHRoaXMgY2FuIGJlICIKKyN8ICJ1c2VkIHRvIGV4dHJhY3QgYSBwYXJ0aWN1bGFyIGZpbGUgZnJvbSBhIHBhY2thZ2UgYXJjaGl2ZS4iCittc2dpZCAiIgorIkV4dHJhY3RzIHRoZSBmaWxlc3lzdGVtIHRyZWUgZGF0YSBmcm9tIGEgYmluYXJ5IHBhY2thZ2UgYW5kIHNlbmRzIGl0IHRvICIKKyJzdGFuZGFyZCBvdXRwdXQgaW4gQjx0YXI+IGZvcm1hdC4gVG9nZXRoZXIgd2l0aCBCPHRhcj4oMSkgIHRoaXMgY2FuIGJlIHVzZWQgIgorInRvIGV4dHJhY3QgYSBwYXJ0aWN1bGFyIGZpbGUgZnJvbSBhIHBhY2thZ2UgYXJjaGl2ZS4gIFRoZSBpbnB1dCBhcmNoaXZlIHdpbGwgIgorImFsd2F5cyBiZSBwcm9jZXNzZWQgc2VxdWVudGlhbGx5LiIKK21zZ3N0ciAiIgorIktpYm9udGphIGEgZsOhamxyZW5kc3plciBmYSBhZGF0b2thdCBlZ3kgYmluw6FyaXMgY3NvbWFnYsOzbCDDqXMgYSBzemFidsOhbnkgIgorImtpbWVuZXRyZSBrw7xsZGkgQjx0YXI+IGZvcm3DoXR1bWJhbi4gQSBCPHRhcj4oMSktcmFsIGVnecO8dHQgZWd5ZXMgZsOhamxvayAiCisia2lib250w6Fzw6FyYSBoYXN6bsOhbGhhdMOzIGVneSBjc29tYWcgYXJjaMOtdnVtYsOzbC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRlYi4xOjE2MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1lPiwgQjwtLWNvbnRyb2w+IEk8YXJjaGl2ZT4gW0k8ZGlyZWN0b3J5Pl0iCittc2dzdHIgIkI8ZHBrZy1kZWI+IEI8LWU+fEI8LS1jb250cm9sPiBJPGFyY2jDrXZ1bSBrw7ZueXZ0w6FyPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxNjUKK21zZ2lkICIiCisiRXh0cmFjdHMgdGhlIGNvbnRyb2wgaW5mb3JtYXRpb24gZmlsZXMgZnJvbSBhIHBhY2thZ2UgYXJjaGl2ZSBpbnRvIHRoZSAiCisic3BlY2lmaWVkIGRpcmVjdG9yeS4iCittc2dzdHIgIiIKKyJLaXN6ZWRpIGEgY3NvbWFnIGluZm9ybcOhY2nDs3MgZsOhamxva2F0IGVneSBjc29tYWcgYXJjaMOtdnVtYsOzbCBhIG1lZ2Fkb3R0ICIKKyJrw7ZueXZ0w6FyYmEuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjE2OQorbXNnaWQgIiIKKyJJZiBubyBkaXJlY3RvcnkgaXMgc3BlY2lmaWVkIHRoZW4gYSBzdWJkaXJlY3RvcnkgQjxERUJJQU4+IGluIHRoZSBjdXJyZW50ICIKKyJkaXJlY3RvcnkgaXMgdXNlZC4iCittc2dzdHIgIiIKKyJIYSBuaW5jcyBtZWdhZHZhIGvDtm55dnTDoXIgYSBqZWxlbiBrw7ZueXZ0w6FyIEI8REVCSUFOPiBhbGvDtm55dnTDoXLDoXQgZm9namEgIgorImhhc3puw6FsbmkuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToxODAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tc2hvd2Zvcm1hdD0+STxmb3JtYXQ+IgorbXNnc3RyICJCPC0tc2hvd2Zvcm1hdD0+STxmb3Jtw6F0dW0+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjE4NSBkcGtnLXF1ZXJ5LjE6MTI3Cittc2dpZCAiIgorIlRoaXMgb3B0aW9uIGlzIHVzZWQgdG8gc3BlY2lmeSB0aGUgZm9ybWF0IG9mIHRoZSBvdXRwdXQgQjwtLXNob3c+IHdpbGwgIgorInByb2R1Y2UuIFRoZSBmb3JtYXQgaXMgYSBzdHJpbmcgdGhhdCB3aWxsIGJlIG91dHB1dCBmb3IgZWFjaCBwYWNrYWdlIGxpc3RlZC4iCittc2dzdHIgIiIKKyJFIGxlaGV0xZFzw6lnIGFkamEgbWVnIGEgQjwtLXNob3c+IGtpbWVudMOpbmVrIGZvcm3DoXR1bcOhdC4gQSBmb3Jtw6F0dW0gZWd5ICIKKyJzesO2dmVnLCBtZWx5ZXQgbWluZGVuIGxpc3TDoXpvdHQgY3NvbWFnIHZpc3N6YWFkLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxOTQKK21zZ2lkICIiCisiVGhlIHN0cmluZyBtYXkgcmVmZXJlbmNlIGFueSBzdGF0dXMgZmllbGQgdXNpbmcgdGhlIFwiJHtJPGZpZWxkLW5hbWU+fVwiICIKKyJmb3JtLCBhIGxpc3Qgb2YgdGhlIHZhbGlkIGZpZWxkcyBjYW4gYmUgZWFzaWx5IHByb2R1Y2VkIHVzaW5nIEI8LUk+IG9uIHRoZSAiCisic2FtZSBwYWNrYWdlLiBBIGNvbXBsZXRlIGV4cGxhbmF0aW9uIG9mIHRoZSBmb3JtYXR0aW5nIG9wdGlvbnMgKGluY2x1ZGluZyAiCisiZXNjYXBlIHNlcXVlbmNlcyBhbmQgZmllbGQgdGFiYmluZykgY2FuIGJlIGZvdW5kIGluIHRoZSBleHBsYW5hdGlvbiBvZiB0aGUgIgorIkI8LS1zaG93Zm9ybWF0PiBvcHRpb24gaW4gQjxkcGtnLXF1ZXJ5PigxKS4iCittc2dzdHIgIiIKKyJFeiBheiBhcmd1bWVudHVtIGVneSBzesO2dmVnLCBtZWx5IGEgXCIke0k8ZmllbGQtbmFtZT59XCIgZm9ybcOhdCBoYXN6bsOhbMOzICIKKyJiw6FybWVseSDDoWxsYXBvdG1lesWRcmUgaGl2YXRrb3poYXQsIGF6IMOpcnbDqW55ZXMgbWV6xZFrIGxpc3TDoWphIGvDtm5ueWVuICIKKyJlbMWRw6FsbMOtdGhhdMOzIGEgQjwtST4tbGVsIHVneWFuYXpvbiBjc29tYWdvbi4gQSBmb3Jtw6F6w6FzaSBsZWhldMWRc8OpZ2VrIHRlbGplcyAiCisibWFneWFyw6F6YXRhIChpZGXDqXJ0dmUgYXogZXNjYXBlIHNvcm96YXRva2F0IMOpcyBtZXrFkSBvc3psb3Bva2F0KSBhIEI8ZHBrZy0iCisicXVlcnk+KDEpIEI8LS1zaG93Zm9ybWF0PiBsZWhldMWRc8OpZ8OpbmVrIG1hZ3lhcsOhemF0w6FiYW4gdGFsw6FsaGF0w7MuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjE5NgorbXNnaWQgIlRoZSBkZWZhdWx0IGZvciB0aGlzIGZpZWxkIGlzIFwiJHtQYWNrYWdlfVxcZXQke1ZlcnNpb259XFxlblwiLiIKK21zZ3N0ciAiRSBtZXrFkSBhbGFww6lydGVsbWV6ZXR0amU6IFwiJHtQYWNrYWdlfVxcZXQke1ZlcnNpb259XFxlblwiLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MTk2CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LXo+STxjb21wcmVzcy1sZXZlbD4iCittc2dzdHIgIkI8LS1maWVsZD4sIEI8LWY+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjIwMAorbXNnaWQgIiIKKyJTcGVjaWZ5IHdoaWNoIGNvbXByZXNzaW9uIGxldmVsIHRvIHVzZSBvbiB0aGUgY29tcHJlc3NvciBiYWNrZW5kLCB3aGVuICIKKyJidWlsZGluZyBhIHBhY2thZ2UgKGRlZmF1bHQgaXMgOSBmb3IgZ3ppcCBhbmQgYnppcDIsIDYgZm9yIHh6IGFuZCBsem1hKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MjAwCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LVo+STxjb21wcmVzcy10eXBlPiIKK21zZ3N0ciAiQjwtLXZlcnNpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjIwNQorbXNnaWQgIiIKKyJTcGVjaWZ5IHdoaWNoIGNvbXByZXNzaW9uIHR5cGUgdG8gdXNlIHdoZW4gYnVpbGRpbmcgYSBwYWNrYWdlLiBBbGxvd2VkICIKKyJ2YWx1ZXMgYXJlIEk8Z3ppcD4sIEk8eHo+LCBJPGJ6aXAyPiwgSTxsem1hPiwgYW5kIEk8bm9uZT4gKGRlZmF1bHQgaXMgIgorIkk8Z3ppcD4pLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToyMDUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tbmV3PiIKK21zZ3N0ciAiQjwtLW5ldz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MjEwCittc2dpZCAiIgorIkVuc3VyZXMgdGhhdCBCPGRwa2ctZGViPiBidWlsZHMgYSBgbmV3JyBmb3JtYXQgYXJjaGl2ZS4gVGhpcyBpcyB0aGUgZGVmYXVsdC4iCittc2dzdHIgImDDmmonIGZvcm3DoXR1bcO6IGFyY2jDrXZ1bSBoYXN6bsOhbGF0YS4gRXogYXogYWxhcC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRlYi4xOjIxMAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1vbGQ+IgorbXNnc3RyICJCPC0tb2xkPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToyMTgKK21zZ2lkICIiCisiRm9yY2VzIEI8ZHBrZy1kZWI+IHRvIGJ1aWxkIGFuIGBvbGQnIGZvcm1hdCBhcmNoaXZlLiBUaGlzIG9sZCBhcmNoaXZlIGZvcm1hdCAiCisiaXMgbGVzcyBlYXNpbHkgcGFyc2VkIGJ5IG5vbi1EZWJpYW4gdG9vbHMgYW5kIGlzIG5vdyBvYnNvbGV0ZTsgaXRzIG9ubHkgdXNlICIKKyJpcyB3aGVuIGJ1aWxkaW5nIHBhY2thZ2VzIHRvIGJlIHBhcnNlZCBieSB2ZXJzaW9ucyBvZiBkcGtnIG9sZGVyIHRoYW4gIgorIjAuOTMuNzYgKFNlcHRlbWJlciAxOTk1KSwgd2hpY2ggd2FzIHJlbGVhc2VkIGFzIGkzODYgYS5vdXQgb25seS4iCittc2dzdHIgIiIKKyJBIEI8ZHBrZy1kZWI+LWV0IGByw6lnaScgZm9ybcOhdHVtw7ogYXJjaMOtdnVtcmEgYsOtcmphLiBFIHLDqWdpIGFyY2jDrXZ1bSAiCisiZm9ybcOhdHVtb3QgbmVoZXplYmJlbiDDqXJ0aWsgbmVtLURlYmlhbiBlc3prw7Z6w7ZrIMOpcyBlbGF2dWx0OyBlZ3lldGxlbiAiCisiaGFzem7DoWxhdGEgb2x5YW4gY3NvbWFnb2sga8Opc3rDrXTDqXNlLCBtZWx5IGEgMC45My43Ni1uw6FsICgxOTk1IHN6ZXB0ZW1iZXIpICIKKyJyw6lnZWJiaSB2ZXJ6acOzasO6IGRwa2cgc3rDoW3DoXJhIGlzIMOpcnRoZXTFkSwgbWVseSBjc2FrIGkzODYgYS5vdXQta8OpbnQgdm9sdCAiCisia2lhZHZhLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MjE4CisjLCBuby13cmFwCittc2dpZCAiQjwtLW5vY2hlY2s+IgorbXNnc3RyICJCPC0tbm9jaGVjaz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MjI0Cittc2dpZCAiIgorIkluaGliaXRzIEI8ZHBrZy1kZWIgLS1idWlsZD4ncyB1c3VhbCBjaGVja3Mgb24gdGhlIHByb3Bvc2VkIGNvbnRlbnRzIG9mIGFuICIKKyJhcmNoaXZlLiBZb3UgY2FuIGJ1aWxkIGFueSBhcmNoaXZlIHlvdSB3YW50LCBubyBtYXR0ZXIgaG93IGJyb2tlbiwgdGhpcyB3YXkuIgorbXNnc3RyICIiCisiVGlsdGphIGVneSB0ZXJ2ZXpldHQgYXJjaMOtdnVtIHRhcnRhbG9tIHN6b2vDoXNvcyBCPGRwa2ctZGViIC0tYnVpbGQ+ICIKKyJlbGxlbsWRcnrDqXPDqXQuIMONZ3kgYsOhcm1pbHllbiBhcmNow612dW0ga8Opc3rDrXRoZXTFkSwgdmFneWlzIG5lbSBzesOhbcOtdCwgbWlseWVuICIKKyJoaWLDoWthdCB0YXJ0YWxtYXouIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToyMjQgc3RhcnQtc3RvcC1kYWVtb24uODoyNTUKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtdj4sIEI8LS12ZXJib3NlPiIKK21zZ3N0ciAiQjwtLXZlcnNpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjIyOAorbXNnaWQgIiIKKyJFbmFibGVzIHZlcmJvc2Ugb3V0cHV0LiBUaGlzIGN1cnJlbnRseSBvbmx5IGFmZmVjdHMgQjwtLWV4dHJhY3Q+IG1ha2luZyBpdCAiCisiYmVoYXZlIGxpa2UgQjwtLXZleHRyYWN0Pi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MjI4CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LUQ+LCBCPC0tZGVidWc+IgorbXNnc3RyICJCPC0tZGVidWc+LCBCPC1EPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToyMzEKK21zZ2lkICJFbmFibGVzIGRlYnVnZ2luZyBvdXRwdXQuIFRoaXMgaXMgbm90IHZlcnkgaW50ZXJlc3RpbmcuIgorbXNnc3RyICJIaWJhamF2w610w7Mga2ltZW5ldCBiZWthcGNzb2x2YS4gTmVtIHTDumwgw6lyZGVrZXMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjIzNworbXNnaWQgIiIKKyJJZiBzZXQsIEI8ZHBrZy1kZWI+IHdpbGwgdXNlIGl0IGFzIHRoZSBkaXJlY3RvcnkgaW4gd2hpY2ggdG8gY3JlYXRlICIKKyJ0ZW1wb3JhcnkgZmlsZXMgYW5kIGRpcmVjdG9yaWVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjI0MworbXNnaWQgIiIKKyJCPGRwa2ctZGViIC1JPiBJPHBhY2thZ2UxPkI8LmRlYj4gSTxwYWNrYWdlMj5CPC5kZWI+IGRvZXMgdGhlIHdyb25nIHRoaW5nLiIKK21zZ3N0ciAiQjxkcGtnLWRlYiAtST4gSTxjc29tYWcxPkI8LmRlYj4gSTxjc29tYWcyPkI8LmRlYj4gaGliw6F0IG9rb3ouIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjI1MQorbXNnaWQgIiIKKyJUaGVyZSBpcyBubyBhdXRoZW50aWNhdGlvbiBvbiBCPC5kZWI+IGZpbGVzOyBpbiBmYWN0LCB0aGVyZSBpc24ndCBldmVuIGEgIgorInN0cmFpZ2h0Zm9yd2FyZCBjaGVja3N1bS4gIChIaWdoZXIgbGV2ZWwgdG9vbHMgbGlrZSBBUFQgc3VwcG9ydCAiCisiYXV0aGVudGljYXRpbmcgQjwuZGViPiBwYWNrYWdlcyByZXRyaWV2ZWQgZnJvbSBhIGdpdmVuIHJlcG9zaXRvcnksIGFuZCBtb3N0ICIKKyJwYWNrYWdlcyBub3dhZGF5cyBwcm92aWRlIGFuIG1kNXN1bSBjb250cm9sIGZpbGUgZ2VuZXJhdGVkIGJ5IGRlYmlhbi9ydWxlcy4gIgorIlRob3VnaCB0aGlzIGlzIG5vdCBkaXJlY3RseSBzdXBwb3J0ZWQgYnkgdGhlIGxvd2VyIGxldmVsIHRvb2xzLikiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToyNTgKK21zZ2lkICIiCisiRG8gbm90IGF0dGVtcHQgdG8gdXNlIGp1c3QgQjxkcGtnLWRlYj4gdG8gaW5zdGFsbCBzb2Z0d2FyZSEgWW91IG11c3QgdXNlICIKKyJCPGRwa2c+IHByb3BlciB0byBlbnN1cmUgdGhhdCBhbGwgdGhlIGZpbGVzIGFyZSBjb3JyZWN0bHkgcGxhY2VkIGFuZCB0aGUgIgorInBhY2thZ2UncyBzY3JpcHRzIHJ1biBhbmQgaXRzIHN0YXR1cyBhbmQgY29udGVudHMgcmVjb3JkZWQuIgorbXNnc3RyICIiCisiQSBCPGRwa2ctZGViPiDDtm5tYWfDoWJhbiBuZW0gaGFzem7DoWxoYXTDsyB0ZWxlcMOtdMOpc3JlISBBIEI8ZHBrZz4gcHJvZ3JhbW90ICIKKyJrZWxsIGhhc3puw6FsbmkgYW5uYWsgYml6dG9zw610w6Fzw6Fob3osIGhvZ3kgbWluZGVuIGbDoWpsIGEgaGVsecOpcmUga2Vyw7xsasO2biwgYSAiCisiY3NvbWFnb2sgc3prcmlwdGplaSBsZWZ1c3NhbmFrIMOpcyDDoWxsYXBvdHVrIMOpcyB0YXJ0YWxtdWsgcsO2Z3rDrXTDqXNyZSBrZXLDvGxqw7ZuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToyNjQKK21zZ2lkICJCPGRlYj4oNSksIEI8ZGViLWNvbnRyb2w+KDUpLCBCPGRwa2c+KDEpLCBCPGRzZWxlY3Q+KDEpLiIKK21zZ3N0ciAiQjxkZWI+KDUpLCBCPGRlYi1jb250cm9sPig1KSwgQjxkcGtnPigxKSwgQjxkc2VsZWN0PigxKS4iCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLWRpdmVydC44OjEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiZHBrZy1kaXZlcnQiCittc2dzdHIgImRwa2ctZGViIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjQKK21zZ2lkICJkcGtnLWRpdmVydCAtIG92ZXJyaWRlIGEgcGFja2FnZSdzIHZlcnNpb24gb2YgYSBmaWxlIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6OQorIywgZnV6enkKK21zZ2lkICJCPGRwa2ctZGl2ZXJ0PiBbSTxvcHRpb24+Li4uXSBJPGNvbW1hbmQ+IgorbXNnc3RyICJCPGRwa2ctZGViPiBCPC1jPnxCPC0tY29udGVudHM+IEk8YXJjaMOtdnVtPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODoxMworbXNnaWQgIiIKKyJCPGRwa2ctZGl2ZXJ0PiBpcyB0aGUgdXRpbGl0eSB1c2VkIHRvIHNldCB1cCBhbmQgdXBkYXRlIHRoZSBsaXN0IG9mICIKKyJkaXZlcnNpb25zLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjIzCittc2dpZCAiIgorIkZpbGUgSTxkaXZlcnNpb25zPiBhcmUgYSB3YXkgb2YgZm9yY2luZyBCPGRwa2c+KDEpICBub3QgdG8gaW5zdGFsbCBhIGZpbGUgIgorImludG8gaXRzIGxvY2F0aW9uLCBidXQgdG8gYSBJPGRpdmVydGVkPiBsb2NhdGlvbi4gRGl2ZXJzaW9ucyBjYW4gYmUgdXNlZCAiCisidGhyb3VnaCB0aGUgRGViaWFuIHBhY2thZ2Ugc2NyaXB0cyB0byBtb3ZlIGEgZmlsZSBhd2F5IHdoZW4gaXQgY2F1c2VzIGEgIgorImNvbmZsaWN0LiBTeXN0ZW0gYWRtaW5pc3RyYXRvcnMgY2FuIGFsc28gdXNlIGl0IHRvIG92ZXJyaWRlIHNvbWUgcGFja2FnZSdzICIKKyJjb25maWd1cmF0aW9uIGZpbGUsIG9yIHdoZW5ldmVyIHNvbWUgZmlsZXMgKHdoaWNoIGFyZW4ndCBtYXJrZWQgYXMgIgorIidjb25mZmlsZXMnKSBuZWVkIHRvIGJlIHByZXNlcnZlZCBieSBkcGtnLCB3aGVuIGluc3RhbGxpbmcgYSBuZXdlciB2ZXJzaW9uICIKKyJvZiBhIHBhY2thZ2Ugd2hpY2ggY29udGFpbnMgdGhvc2UgZmlsZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRpdmVydC44OjI1CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIltCPC0tYWRkPl0gSTxmaWxlPiIKK21zZ3N0ciAiQjwtLWZpZWxkPiwgQjwtZj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6MjgKK21zZ2lkICJBZGQgYSBkaXZlcnNpb24gZm9yIEk8ZmlsZT4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRpdmVydC44OjI4IGRwa2ctc3RhdG92ZXJyaWRlLjg6MzUKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLXJlbW92ZT5JPCBmaWxlPiIKK21zZ3N0ciAiQjwtLW5ldz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6MzEKK21zZ2lkICJSZW1vdmUgYSBkaXZlcnNpb24gZm9yIEk8ZmlsZT4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRpdmVydC44OjMxCisjLCBuby13cmFwCittc2dpZCAiQjwtLWxpc3Q+STwgZ2xvYi1wYXR0ZXJuPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjM0Cittc2dpZCAiTGlzdCBkaXZlcnNpb25zIG1hdGNoaW5nIEk8Z2xvYi1wYXR0ZXJuPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGl2ZXJ0Ljg6MzQKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWxpc3RwYWNrYWdlPkk8IGZpbGU+IgorbXNnc3RyICJCPFBhY2thZ2U6PiBFPGx0PmNzb21hZyBuw6l2RTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6MzgKK21zZ2lkICIiCisiUHJpbnQgdGhlIG5hbWUgb2YgdGhlIHBhY2thZ2UgdGhhdCBkaXZlcnRzIEk8ZmlsZT4uICBQcmludHMgTE9DQUwgaWYgSTxmaWxlPiAiCisiaXMgbG9jYWxseSBkaXZlcnRlZCBhbmQgbm90aGluZyBpZiBJPGZpbGU+IGlzIG5vdCBkaXZlcnRlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGl2ZXJ0Ljg6MzgKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLXRydWVuYW1lPkk8IGZpbGU+IgorbXNnc3RyICJCPC0tbmV3PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo0MQorbXNnaWQgIlByaW50IHRoZSByZWFsIG5hbWUgZm9yIGEgZGl2ZXJ0ZWQgZmlsZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGl2ZXJ0Ljg6NDMgZHBrZy1zdGF0b3ZlcnJpZGUuODo1MiBkc2VsZWN0LjE6NDQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMjgKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWFkbWluZGlyPkk8IGRpcmVjdG9yeT4iCittc2dzdHIgIkI8U2VjdGlvbjo+IEU8bHQ+c3pha2FzekU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjQ2Cittc2dpZCAiIgorIlNldCB0aGUgZHBrZyBkYXRhIGRpcmVjdG9yeSB0byBJPGRpcmVjdG9yeT4gKGRlZmF1bHQ6IEk8L3Zhci9saWIvZHBrZz4pLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kaXZlcnQuODo0NgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tZGl2ZXJ0Pkk8IGRpdmVydC10bz4iCittc2dzdHIgIkI8UHJpb3JpdHk6PiBFPGx0PmVsc8WRYmJzw6lnRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6NTAKK21zZ2lkICIiCisiSTxkaXZlcnQtdG8+IGlzIHRoZSBsb2NhdGlvbiB3aGVyZSB0aGUgdmVyc2lvbnMgb2YgSTxmaWxlPiwgYXMgcHJvdmlkZWQgYnkgIgorIm90aGVyIHBhY2thZ2VzLCB3aWxsIGJlIGRpdmVydGVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kaXZlcnQuODo1MAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tbG9jYWw+IgorbXNnc3RyICJCPC0tb2xkPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo1NgorbXNnaWQgIiIKKyJTcGVjaWZpZXMgdGhhdCBhbGwgcGFja2FnZXMnIHZlcnNpb25zIG9mIHRoaXMgZmlsZSBhcmUgZGl2ZXJ0ZWQuICBUaGlzICIKKyJtZWFucywgdGhhdCB0aGVyZSBhcmUgbm8gZXhjZXB0aW9ucywgYW5kIHdoYXRldmVyIHBhY2thZ2UgaXMgaW5zdGFsbGVkLCB0aGUgIgorImZpbGUgaXMgZGl2ZXJ0ZWQuIFRoaXMgY2FuIGJlIHVzZWQgYnkgYW4gYWRtaW4gdG8gaW5zdGFsbCBhIGxvY2FsbHkgbW9kaWZpZWQgIgorInZlcnNpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRpdmVydC44OjU2CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1wYWNrYWdlPkk8IHBhY2thZ2U+IgorbXNnc3RyICJCPFBhY2thZ2U6PiBFPGx0PmNzb21hZyBuw6l2RTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6NjEKK21zZ2lkICIiCisiSTxwYWNrYWdlPiBpcyB0aGUgbmFtZSBvZiBhIHBhY2thZ2Ugd2hvc2UgY29weSBvZiBJPGZpbGU+IHdpbGwgbm90IGJlICIKKyJkaXZlcnRlZC4gaS5lLiBJPGZpbGU+IHdpbGwgYmUgZGl2ZXJ0ZWQgZm9yIGFsbCBwYWNrYWdlcyBleGNlcHQgSTxwYWNrYWdlPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGl2ZXJ0Ljg6NjEgZHBrZy1zdGF0b3ZlcnJpZGUuODo2NCB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzUwCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1xdWlldD4iCittc2dzdHIgIkI8LS1uZXc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjY0Cittc2dpZCAiUXVpZXQgbW9kZSwgaS5lLiBubyB2ZXJib3NlIG91dHB1dC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGl2ZXJ0Ljg6NjQKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLXJlbmFtZT4iCittc2dzdHIgIkI8LS1uZXc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjY4Cittc2dpZCAiIgorIkFjdHVhbGx5IG1vdmUgdGhlIGZpbGUgYXNpZGUgKG9yIGJhY2spLiBCPGRwa2ctZGl2ZXJ0PiB3aWxsIGFib3J0IG9wZXJhdGlvbiAiCisiaW4gY2FzZSB0aGUgZGVzdGluYXRpb24gZmlsZSBhbHJlYWR5IGV4aXN0cy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGl2ZXJ0Ljg6NjgKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLXRlc3Q+IgorbXNnc3RyICJCPC0tbmV3PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo3MQorbXNnaWQgIlRlc3QgbW9kZSwgaS5lLiBkb24ndCBhY3R1YWxseSBwZXJmb3JtIGFueSBjaGFuZ2VzLCBqdXN0IGRlbW9uc3RyYXRlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1kaXZlcnQuODo3OAorIywgbm8td3JhcAorbXNnaWQgIk5PVEVTIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6ODIKK21zZ2lkICIiCisiV2hlbiBhZGRpbmcsIGRlZmF1bHQgaXMgQjwtLWxvY2FsPiBhbmQgQjwtLWRpdmVydD4gSTxvcmlnaW5hbD5CPC5kaXN0cmliPi4gIgorIldoZW4gcmVtb3ZpbmcsIEI8LS1wYWNrYWdlPiBvciBCPC0tbG9jYWw+IGFuZCBCPC0tZGl2ZXJ0PiBtdXN0IG1hdGNoIGlmICIKKyJzcGVjaWZpZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6ODQKK21zZ2lkICJEaXJlY3RvcmllcyBjYW4ndCBiZSBkaXZlcnRlZCB3aXRoIEI8ZHBrZy1kaXZlcnQ+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjkwCittc2dpZCAiIgorIkNhcmUgc2hvdWxkIGJlIHRha2VuIHdoZW4gZGl2ZXJ0aW5nIHNoYXJlZCBsaWJyYXJpZXMsIEI8bGRjb25maWc+KDgpICAiCisiY3JlYXRlcyBhIHN5bWJvbGljIGxpbmsgYmFzZWQgb24gdGhlIERUX1NPTkFNRSBmaWVsZCBlbWJlZGRlZCBpbiB0aGUgIgorImxpYnJhcnkuICBCZWNhdXNlIGxkY29uZmlnIGRvZXNuJ3QgaG9ub3VyIGRpdmVydHMgKG9ubHkgZHBrZyBkb2VzKSwgdGhlICIKKyJzeW1saW5rIG1heSBlbmQgdXAgcG9pbnRpbmcgYXQgdGhlIGRpdmVydGVkIGxpYnJhcnksIGlmIGEgZGl2ZXJ0ZWQgbGlicmFyeSAiCisiaGFzIHRoZSBzYW1lIFNPTkFNRSBhcyB0aGUgdW5kaXZlcnRlZCBvbmUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6OTUKK21zZ2lkICIiCisiVG8gZGl2ZXJ0IGFsbCBjb3BpZXMgb2YgYSBJPC91c3IvYmluL2V4YW1wbGU+IHRvIEk8L3Vzci9iaW4vZXhhbXBsZS5mb28+LCBpLiIKKyJlLiBkaXJlY3RzIGFsbCBwYWNrYWdlcyBwcm92aWRpbmcgSTwvdXNyL2Jpbi9leGFtcGxlPiB0byBpbnN0YWxsIGl0IGFzIEk8LyIKKyJ1c3IvYmluL2V4YW1wbGUuZm9vPiwgcGVyZm9ybWluZyB0aGUgcmVuYW1lIGlmIHJlcXVpcmVkOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44Ojk3Cittc2dpZCAiZHBrZy1kaXZlcnQgLS1kaXZlcnQgL3Vzci9iaW4vZXhhbXBsZS5mb28gLS1yZW5hbWUgL3Vzci9iaW4vZXhhbXBsZSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44Ojk5IGRwa2ctZGl2ZXJ0Ljg6MTA5Cittc2dpZCAiVG8gcmVtb3ZlIHRoYXQgZGl2ZXJzaW9uOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjEwMQorbXNnaWQgImRwa2ctZGl2ZXJ0IC0tcmVuYW1lIC0tcmVtb3ZlIC91c3IvYmluL2V4YW1wbGUiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODoxMDUKK21zZ2lkICIiCisiVG8gZGl2ZXJ0IGFueSBwYWNrYWdlIHRyeWluZyB0byBpbnN0YWxsIEk8L3Vzci9iaW4vZXhhbXBsZT4gdG8gSTwvdXNyL2Jpbi8iCisiZXhhbXBsZS5mb28+LCBleGNlcHQgeW91ciBvd24gSTx3aWJibGU+IHBhY2thZ2U6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6MTA3Cittc2dpZCAiIgorImRwa2ctZGl2ZXJ0IC0tcGFja2FnZSB3aWJibGUgLS1kaXZlcnQgL3Vzci9iaW4vZXhhbXBsZS5mb28gLS1yZW5hbWUgL3Vzci9iaW4vIgorImV4YW1wbGUiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODoxMTEKK21zZ2lkICJkcGtnLWRpdmVydCAtLXBhY2thZ2Ugd2liYmxlIC0tcmVuYW1lIC0tcmVtb3ZlIC91c3IvYmluL2V4YW1wbGUiCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGl2ZXJ0Ljg6MTEzIGRwa2ctcXVlcnkuMToyMDUgZHBrZy1zdGF0b3ZlcnJpZGUuODo2OSBkcGtnLXRyaWdnZXIuMTo2MQorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM1NQorIywgbm8td3JhcAorbXNnaWQgIkI8RFBLR19BRE1JTkRJUj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODoxMTcgZHBrZy1xdWVyeS4xOjIwOSBkcGtnLXN0YXRvdmVycmlkZS44OjczIGRwa2ctdHJpZ2dlci4xOjY1Cittc2dpZCAiIgorIklmIHNldCBhbmQgdGhlIEI8LS1hZG1pbmRpcj4gb3B0aW9uIGhhcyBub3QgYmVlbiBzcGVjaWZpZWQsIGl0IHdpbGwgYmUgdXNlZCAiCisiYXMgdGhlIGRwa2cgZGF0YSBkaXJlY3RvcnkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6MTIxCittc2dpZCAiIgorIklmIHNldCBhbmQgdGhlIEI8LS1sb2NhbD4gYW5kIEI8LS1wYWNrYWdlPiBvcHRpb25zIGhhdmUgbm90IGJlZW4gc3BlY2lmaWVkLCAiCisiQjxkcGtnLWRpdmVydD4gd2lsbCB1c2UgaXQgYXMgdGhlIHBhY2thZ2UgbmFtZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGl2ZXJ0Ljg6MTIzCisjLCBuby13cmFwCittc2dpZCAiSTwvdmFyL2xpYi9kcGtnL2RpdmVyc2lvbnM+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6MTI4Cittc2dpZCAiIgorIkZpbGUgd2hpY2ggY29udGFpbnMgdGhlIGN1cnJlbnQgbGlzdCBvZiBkaXZlcnNpb25zIG9mIHRoZSBzeXN0ZW0uIEl0IGlzICIKKyJsb2NhdGVkIGluIHRoZSBkcGtnIGFkbWluaXN0cmF0aW9uIGRpcmVjdG9yeSwgYWxvbmcgd2l0aCBvdGhlciBmaWxlcyAiCisiaW1wb3J0YW50IHRvIGRwa2csIHN1Y2ggYXMgSTxzdGF0dXM+IG9yIEk8YXZhaWxhYmxlPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODoxMzEKK21zZ2lkICIiCisiTm90ZTogQjxkcGtnLWRpdmVydD4gcHJlc2VydmVzIHRoZSBvbGQgY29weSBvZiB0aGlzIGZpbGUsIHdpdGggZXh0ZW5zaW9uIEk8LSIKKyJvbGQ+LCBiZWZvcmUgcmVwbGFjaW5nIGl0IHdpdGggdGhlIG5ldyBvbmUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6MTM3IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0OTYKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMTk5NSBJYW4gSmFja3NvbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJkcGtnLWdlbmNoYW5nZXMiCittc2dzdHIgImRwa2ctZGViIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMTo0Cittc2dpZCAiZHBrZy1nZW5jaGFuZ2VzIC0gZ2VuZXJhdGUgRGViaWFuIC5jaGFuZ2VzIGZpbGVzIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjgKKyMsIGZ1enp5Cittc2dpZCAiQjxkcGtnLWdlbmNoYW5nZXM+IFtJPG9wdGlvbj4uLi5dIgorbXNnc3RyICJCPGRwa2ctZGViPiBCPC1jPnxCPC0tY29udGVudHM+IEk8YXJjaMOtdnVtPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6MTYKK21zZ2lkICIiCisiQjxkcGtnLWdlbmNoYW5nZXM+IHJlYWRzIGluZm9ybWF0aW9uIGZyb20gYW4gdW5wYWNrZWQgYW5kIGJ1aWx0IERlYmlhbiAiCisic291cmNlIHRyZWUgYW5kIGZyb20gdGhlIGZpbGVzIGl0IGhhcyBnZW5lcmF0ZWQgYW5kIGdlbmVyYXRlcyBhIERlYmlhbiAiCisidXBsb2FkIGNvbnRyb2wgZmlsZSAoQjwuY2hhbmdlcz4gZmlsZSkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbmNoYW5nZXMuMToxOAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1iPiwgQjwtQj4sIEI8LUE+IgorbXNnc3RyICJCPC0tc2hvdz4sIEI8LVc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMToyNworbXNnaWQgIiIKKyJTcGVjaWZpZXMgdGhhdCBhIGJpbmFyeS1vbmx5IGJ1aWxkIGlzIHRha2luZyBwbGFjZSAobm8gc291cmNlIGZpbGVzIGFyZSB0byAiCisiYmUgaW5jbHVkZWQpLiBUaGVyZSdzIG5vIGRpc3RpbmN0aW9uIGJldHdlZW4gQjwtYj4sIEI8LUI+IGFuZCBCPC1BPiwgdGhlICIKKyJwcm9kdWNlZCBCPC5jaGFuZ2VzPiBmaWxlIHdpbGwgaW5jbHVkZSB3aGF0ZXZlciBmaWxlcyB3ZXJlIGNyZWF0ZWQgYnkgdGhlICIKKyJCPGJpbmFyeS0qPiB0YXJnZXQocykgb2YgdGhlIHBhY2thZ2UgYmVpbmcgYnVpbHQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjMxCittc2dpZCAiIgorIlNwZWNpZmllcyB0aGF0IG9ubHkgdGhlIHNvdXJjZSBzaG91bGQgYmUgdXBsb2FkZWQgKG5vIGJpbmFyeSBwYWNrYWdlcyB3aWxsICIKKyJiZSBpbmNsdWRlZCkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjM2Cittc2dpZCAiIgorIlRoZSBCPC1zPkk8eD4gb3B0aW9ucyBjb250cm9sIHdoZXRoZXIgdGhlIG9yaWdpbmFsIHNvdXJjZSBhcmNoaXZlIGlzICIKKyJpbmNsdWRlZCBpbiB0aGUgdXBsb2FkIGlmIGFueSBzb3VyY2UgaXMgYmVpbmcgZ2VuZXJhdGVkIChpLmUuICBCPC1iPiBvciBCPC0iCisiQj4gaGF2ZW4ndCBiZWVuIHVzZWQpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMTo0MgorbXNnaWQgIiIKKyJCeSBkZWZhdWx0LCBvciBpZiBzcGVjaWZpZWQsIHRoZSBvcmlnaW5hbCBzb3VyY2Ugd2lsbCBiZSBpbmNsdWRlZCBvbmx5IGlmICIKKyJ0aGUgdXBzdHJlYW0gdmVyc2lvbiBudW1iZXIgKHRoZSB2ZXJzaW9uIHdpdGhvdXQgZXBvY2ggYW5kIHdpdGhvdXQgRGViaWFuICIKKyJyZXZpc2lvbikgZGlmZmVycyBmcm9tIHRoZSB1cHN0cmVhbSB2ZXJzaW9uIG51bWJlciBvZiB0aGUgcHJldmlvdXMgY2hhbmdlbG9nICIKKyJlbnRyeS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6NDUKK21zZ2lkICJGb3JjZXMgdGhlIGluY2x1c2lvbiBvZiB0aGUgb3JpZ2luYWwgc291cmNlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMTo0OAorbXNnaWQgIkZvcmNlcyB0aGUgZXhjbHVzaW9uIG9mIHRoZSBvcmlnaW5hbCBzb3VyY2UgYW5kIGluY2x1ZGVzIG9ubHkgdGhlIGRpZmYuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjU0Cittc2dpZCAiIgorIkNhdXNlcyBjaGFuZ2Vsb2cgaW5mb3JtYXRpb24gZnJvbSBhbGwgdmVyc2lvbnMgc3RyaWN0bHkgbGF0ZXIgdGhhbiAiCisiSTx2ZXJzaW9uPiB0byBiZSB1c2VkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMTo2MAorbXNnaWQgIiIKKyJSZWFkIHRoZSBkZXNjcmlwdGlvbiBvZiB0aGUgY2hhbmdlcyBmcm9tIHRoZSBmaWxlIEk8Y2hhbmdlc2Rlc2NyaXB0aW9uPiAiCisicmF0aGVyIHRoYW4gdXNpbmcgdGhlIGluZm9ybWF0aW9uIGZyb20gdGhlIHNvdXJjZSB0cmVlJ3MgY2hhbmdlbG9nIGZpbGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjY2Cittc2dpZCAiIgorIlVzZSBJPG1haW50YWluZXJhZGRyZXNzPiBhcyB0aGUgbmFtZSBhbmQgZW1haWwgYWRkcmVzcyBvZiB0aGUgbWFpbnRhaW5lciBmb3IgIgorInRoaXMgcGFja2FnZSwgcmF0aGVyIHRoYW4gdXNpbmcgdGhlIGluZm9ybWF0aW9uIGZyb20gdGhlIHNvdXJjZSB0cmVlJ3MgIgorImNvbnRyb2wgZmlsZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6NzIKK21zZ2lkICIiCisiVXNlIEk8bWFpbnRhaW5lcmFkZHJlc3M+IGFzIHRoZSBuYW1lIGFuZCBlbWFpbCBhZGRyZXNzIG9mIHRoZSBtYWludGFpbmVyIGZvciAiCisidGhpcyB1cGxvYWQsIHJhdGhlciB0aGFuIHVzaW5nIHRoZSBpbmZvcm1hdGlvbiBmcm9tIHRoZSBzb3VyY2UgdHJlZSdzICIKKyJjaGFuZ2Vsb2cuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbmNoYW5nZXMuMTo3MiBkcGtnLWdlbmNvbnRyb2wuMTo0MSBkcGtnLXNvdXJjZS4xOjEyNworIywgbm8td3JhcAorbXNnaWQgIkI8LVY+STxuYW1lPkI8PT5JPHZhbHVlPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMTo3NiBkcGtnLXNvdXJjZS4xOjEzMQorbXNnaWQgIiIKKyJTZXQgYW4gb3V0cHV0IHN1YnN0aXR1dGlvbiB2YXJpYWJsZS4gIFNlZSBCPGRlYi1zdWJzdHZhcnM+KDUpIGZvciBhICIKKyJkaXNjdXNzaW9uIG9mIG91dHB1dCBzdWJzdGl0dXRpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbmNoYW5nZXMuMTo3NiBkcGtnLWdlbmNvbnRyb2wuMTo0NSBkcGtnLXNobGliZGVwcy4xOjE2OQorIzogZHBrZy1zb3VyY2UuMToxMzEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtVD5JPHN1YnN0dmFyc2ZpbGU+IgorbXNnc3RyICJCPC0tZnN5cy10YXJmaWxlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6ODYKK21zZ2lkICIiCisiUmVhZCBzdWJzdGl0dXRpb24gdmFyaWFibGVzIGluIEk8c3Vic3R2YXJzZmlsZT47IHRoZSBkZWZhdWx0IGlzIEI8ZGViaWFuLyIKKyJzdWJzdHZhcnM+LiAgTm8gdmFyaWFibGUgc3Vic3RpdHV0aW9uIGlzIGRvbmUgb24gYW55IG9mIHRoZSBmaWVsZHMgdGhhdCBhcmUgIgorIm91dHB1dCwgaG93ZXZlciB0aGUgc3BlY2lhbCB2YXJpYWJsZSBJPEZvcm1hdD4gd2lsbCBvdmVycmlkZSB0aGUgZmllbGQgb2YgIgorInRoZSBzYW1lIG5hbWUuIFRoaXMgb3B0aW9uIGNhbiBiZSB1c2VkIG11bHRpcGxlIHRpbWVzIHRvIHJlYWQgc3Vic3RpdHV0aW9uICIKKyJ2YXJpYWJsZXMgZnJvbSBtdWx0aXBsZSBmaWxlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjg3IGRwa2ctZ2VuY29udHJvbC4xOjUzIGRwa2ctc291cmNlLjE6MTM3CisjLCBuby13cmFwCittc2dpZCAiQjwtRD5JPGZpZWxkPkI8PT5JPHZhbHVlPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMTo5MCBkcGtnLWdlbmNvbnRyb2wuMTo1NiBkcGtnLXNvdXJjZS4xOjE0MAorbXNnaWQgIk92ZXJyaWRlIG9yIGFkZCBhbiBvdXRwdXQgY29udHJvbCBmaWxlIGZpZWxkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6OTAgZHBrZy1nZW5jb250cm9sLjE6NTYgZHBrZy1zb3VyY2UuMToxNDAKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtVT5JPGZpZWxkPiIKK21zZ3N0ciAiQjwtLWZpZWxkPiwgQjwtZj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjkzIGRwa2ctZ2VuY29udHJvbC4xOjU5IGRwa2ctc291cmNlLjE6MTQzCittc2dpZCAiUmVtb3ZlIGFuIG91dHB1dCBjb250cm9sIGZpbGUgZmllbGQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbmNoYW5nZXMuMTo5MyBkcGtnLWdlbmNvbnRyb2wuMTo1OSBkcGtnLXNvdXJjZS4xOjEwNAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1jPkk8Y29udHJvbGZpbGU+IgorbXNnc3RyICJCPC0tY29udHJvbD4sIEI8LWU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMTo5OCBkcGtnLWdlbmNvbnRyb2wuMTo2NAorbXNnaWQgIiIKKyJTcGVjaWZpZXMgdGhlIG1haW4gc291cmNlIGNvbnRyb2wgZmlsZSB0byByZWFkIGluZm9ybWF0aW9uIGZyb20uIFRoZSBkZWZhdWx0ICIKKyJpcyBCPGRlYmlhbi9jb250cm9sPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjk4IGRwa2ctZ2VuY29udHJvbC4xOjY0IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxNgorIzogZHBrZy1zb3VyY2UuMToxMTEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1sPkk8Y2hhbmdlbG9nZmlsZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6MTAzIGRwa2ctZ2VuY29udHJvbC4xOjY5IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToyMQorbXNnaWQgIiIKKyJTcGVjaWZpZXMgdGhlIGNoYW5nZSBsb2cgZmlsZSB0byByZWFkIGluZm9ybWF0aW9uIGZyb20uIFRoZSBkZWZhdWx0IGlzICIKKyJCPGRlYmlhbi9jaGFuZ2Vsb2c+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMToxMDcKK21zZ2lkICIiCisiUmVhZCB0aGUgbGlzdCBvZiBmaWxlcyB0byBiZSB1cGxvYWRlZCBoZXJlLCByYXRoZXIgdGhhbiB1c2luZyBCPGRlYmlhbi8iCisiZmlsZXM+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6MTA3IGRwa2ctZ2VuY29udHJvbC4xOjczIGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToyMQorIzogZHBrZy1zb3VyY2UuMToxMTgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1GPkk8Y2hhbmdlbG9nZm9ybWF0PiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMToxMTIgZHBrZy1nZW5jb250cm9sLjE6NzggZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjI2CisjOiBkcGtnLXNvdXJjZS4xOjEyMworbXNnaWQgIiIKKyJTcGVjaWZpZXMgdGhlIGZvcm1hdCBvZiB0aGUgY2hhbmdlbG9nLiBCeSBkZWZhdWx0IHRoZSBmb3JtYXQgaXMgcmVhZCBmcm9tIGEgIgorInNwZWNpYWwgbGluZSBuZWFyIHRoZSBib3R0b20gb2YgdGhlIGNoYW5nZWxvZyBvciBmYWlsaW5nIHRoYXQgZGVmYXVsdHMgdG8gIgorInRoZSBkZWJpYW4gc3RhbmRhcmQgZm9ybWF0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6MTEyCisjLCBuby13cmFwCittc2dpZCAiQjwtdT5JPHVwbG9hZGZpbGVzZGlyPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMToxMjMKK21zZ2lkICIiCisiTG9vayBmb3IgdGhlIGZpbGVzIHRvIGJlIHVwbG9hZGVkIGluIEk8dXBsb2FkZmlsZXNkaXI+IHJhdGhlciB0aGFuIEI8Li4+ICIKKyIoQjxkcGtnLWdlbmNoYW5nZXM+IG5lZWRzIHRvIGZpbmQgdGhlc2UgZmlsZXMgc28gdGhhdCBpdCBjYW4gaW5jbHVkZSB0aGVpciAiCisic2l6ZXMgYW5kIGNoZWNrc3VtcyBpbiB0aGUgQjwuY2hhbmdlcz4gZmlsZSkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbmNoYW5nZXMuMToxMjMgZHBrZy1nZW5zeW1ib2xzLjE6NDIxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LXE+IgorbXNnc3RyICJCPC0tbmV3PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6MTMxCittc2dpZCAiIgorIlVzdWFsbHkgQjxkcGtnLWdlbmNoYW5nZXM+IHdpbGwgcHJvZHVjZSBpbmZvcm1hdGl2ZSBtZXNzYWdlcyBvbiBzdGFuZGFyZCAiCisiZXJyb3IsIGZvciBleGFtcGxlIGFib3V0IGhvdyBtYW55IG9mIHRoZSBwYWNrYWdlJ3Mgc291cmNlIGZpbGVzIGFyZSBiZWluZyAiCisidXBsb2FkZWQuICBCPC1xPiBzdXBwcmVzc2VzIHRoZXNlIG1lc3NhZ2VzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMToxNDcKK21zZ2lkICIiCisiVGhlIGxpc3Qgb2YgZ2VuZXJhdGVkIGZpbGVzIHdoaWNoIGFyZSBwYXJ0IG9mIHRoZSB1cGxvYWQgYmVpbmcgcHJlcGFyZWQuICAiCisiQjxkcGtnLWdlbmNoYW5nZXM+IHJlYWRzIHRoZSBkYXRhIGhlcmUgd2hlbiBwcm9kdWNpbmcgYSBCPC5jaGFuZ2VzPiBmaWxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1nZW5jb250cm9sLjE6MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJkcGtnLWdlbmNvbnRyb2wiCittc2dzdHIgImRlYi1jb250cm9sIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMTo0Cittc2dpZCAiZHBrZy1nZW5jb250cm9sIC0gZ2VuZXJhdGUgRGViaWFuIGNvbnRyb2wgZmlsZXMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jb250cm9sLjE6OAorIywgZnV6enkKK21zZ2lkICJCPGRwa2ctZ2VuY29udHJvbD4gW0k8b3B0aW9uPi4uLl0iCittc2dzdHIgIkI8ZHBrZy1kZWI+IEI8LWM+fEI8LS1jb250ZW50cz4gSTxhcmNow612dW0+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMToxNAorbXNnaWQgIiIKKyJCPGRwa2ctZ2VuY29udHJvbD4gcmVhZHMgaW5mb3JtYXRpb24gZnJvbSBhbiB1bnBhY2tlZCBEZWJpYW4gc291cmNlIHRyZWUgYW5kICIKKyJnZW5lcmF0ZXMgYSBiaW5hcnkgcGFja2FnZSBjb250cm9sIGZpbGUgKHdoaWNoIGRlZmF1bHRzIHRvIGRlYmlhbi90bXAvREVCSUFOLyIKKyJjb250cm9sKTsgZHVyaW5nIHRoaXMgcHJvY2VzcyBpdCB3aWxsIHNpbXBsaWZ5IHRoZSByZWxhdGlvbiBmaWVsZHMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjI3Cittc2dpZCAiIgorIlRodXMgSTxQcmUtRGVwZW5kcz4sIEk8RGVwZW5kcz4sIEk8UmVjb21tZW5kcz4gYW5kIEk8U3VnZ2VzdHM+IGFyZSAiCisic2ltcGxpZmllZCBpbiB0aGlzIG9yZGVyIGJ5IHJlbW92aW5nIGRlcGVuZGVuY2llcyB3aGljaCBhcmUga25vd24gdG8gYmUgdHJ1ZSAiCisiYWNjb3JkaW5nIHRvIHRoZSBzdHJvbmdlciBkZXBlbmRlbmNpZXMgYWxyZWFkeSBwYXJzZWQuIEl0IHdpbGwgYWxzbyByZW1vdmUgIgorImFueSBzZWxmLWRlcGVuZGVuY3kgKGluIGZhY3QgaXQgd2lsbCByZW1vdmUgYW55IGRlcGVuZGVuY3kgd2hpY2ggZXZhbHVhdGVzICIKKyJ0byB0cnVlIGdpdmVuIHRoZSBjdXJyZW50IHZlcnNpb24gb2YgdGhlIHBhY2thZ2UgYXMgaW5zdGFsbGVkKS4gTG9naWNhbGx5IGl0ICIKKyJrZWVwcyB0aGUgaW50ZXJzZWN0aW9uIG9mIG11bHRpcGxlIGRlcGVuZGVuY2llcyBvbiB0aGUgc2FtZSBwYWNrYWdlLiBUaGUgIgorIm9yZGVyIG9mIGRlcGVuZGVuY2llcyBpcyBwcmVzZXJ2ZWQgYXMgYmVzdCBhcyBwb3NzaWJsZTogaWYgYW55IGRlcGVuZGVuY3kgIgorIm11c3QgYmUgZGlzY2FyZGVkIGR1ZSB0byBhbm90aGVyIGRlcGVuZGVuY3kgYXBwZWFyaW5nIGZ1cnRoZXIgaW4gdGhlIGZpZWxkLCAiCisidGhlIHN1cGVyc2VkaW5nIGRlcGVuZGVuY3kgd2lsbCB0YWtlIHRoZSBwbGFjZSBvZiB0aGUgZGlzY2FyZGVkIG9uZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jb250cm9sLjE6MzIKK21zZ2lkICIiCisiVGhlIG90aGVyIHJlbGF0aW9uIGZpZWxkcyAoSTxFbmhhbmNlcz4sIEk8Q29uZmxpY3RzPiwgSTxCcmVha3M+LCBJPFJlcGxhY2VzPiAiCisiYW5kIEk8UHJvdmlkZXM+KSAgYXJlIGFsc28gc2ltcGxpZmllZCBpbmRpdmlkdWFsbHkgYnkgY29tcHV0aW5nIHRoZSB1bmlvbiBvZiAiCisidGhlIHZhcmlvdXMgZGVwZW5kZW5jaWVzIHdoZW4gYSBwYWNrYWdlIGlzIGxpc3RlZCBtdWx0aXBsZSB0aW1lcyBpbiB0aGUgIgorImZpZWxkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMTozNgorbXNnaWQgIiIKKyJCPGRwa2ctZ2VuY29udHJvbD4gYWxzbyBhZGRzIGFuIGVudHJ5IGZvciB0aGUgYmluYXJ5IHBhY2thZ2UgdG8gQjxkZWJpYW4vIgorImZpbGVzPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jb250cm9sLjE6NDEKK21zZ2lkICJTZXRzIHRoZSB2ZXJzaW9uIG51bWJlciBvZiB0aGUgYmluYXJ5IHBhY2thZ2Ugd2hpY2ggd2lsbCBiZSBnZW5lcmF0ZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjQ1Cittc2dpZCAiIgorIlNldCBhbiBvdXRwdXQgc3Vic3RpdHV0aW9uIHZhcmlhYmxlLiBTZWUgQjxkZWItc3Vic3R2YXJzPig1KSBmb3IgZGlzY3Vzc2lvbiAiCisib2Ygb3V0cHV0IHN1YnN0aXR1dGlvbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jb250cm9sLjE6NTMKK21zZ2lkICIiCisiUmVhZCBzdWJzdGl0dXRpb24gdmFyaWFibGVzIGluIEk8c3Vic3R2YXJzZmlsZT47IHRoZSBkZWZhdWx0IGlzIEI8ZGViaWFuLyIKKyJzdWJzdHZhcnM+LiAgVGhpcyBvcHRpb24gY2FuIGJlIHVzZWQgbXVsdGlwbGUgdGltZXMgdG8gcmVhZCBzdWJzdGl0dXRpb24gIgorInZhcmlhYmxlcyBmcm9tIG11bHRpcGxlIGZpbGVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5jb250cm9sLjE6NzggZHBrZy1nZW5zeW1ib2xzLjE6MzczCisjLCBuby13cmFwCittc2dpZCAiQjwtcD5JPHBhY2thZ2U+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjg1Cittc2dpZCAiIgorIkdlbmVyYXRlIGluZm9ybWF0aW9uIGZvciB0aGUgYmluYXJ5IHBhY2thZ2UgSTxwYWNrYWdlPi4gIElmIHRoZSBzb3VyY2UgIgorImNvbnRyb2wgZmlsZSBsaXN0cyBvbmx5IG9uZSBiaW5hcnkgcGFja2FnZSB0aGVuIHRoaXMgb3B0aW9uIG1heSBiZSBvbWl0dGVkOyAiCisib3RoZXJ3aXNlIGl0IGlzIGVzc2VudGlhbCB0byBzZWxlY3Qgd2hpY2ggYmluYXJ5IHBhY2thZ2UncyBpbmZvcm1hdGlvbiB0byAiCisiZ2VuZXJhdGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbmNvbnRyb2wuMTo4NQorIywgbm8td3JhcAorbXNnaWQgIkI8LW4+STxmaWxlbmFtZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jb250cm9sLjE6OTAKK21zZ2lkICIiCisiQXNzdW1lIHRoZSBmaWxlbmFtZSBvZiB0aGUgcGFja2FnZSB3aWxsIGJlIEk8ZmlsZW5hbWU+IGluc3RlYWQgb2YgdGhlIG5vcm1hbCAiCisicGFja2FnZV92ZXJzaW9uX2FyY2guZGViIGZpbGVuYW1lLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5jb250cm9sLjE6OTAKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtaXM+LCBCPC1pcD4sIEI8LWlzcD4iCittc2dzdHIgIkI8LS1pbmZvPiwgQjwtST4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjk5Cittc2dpZCAiIgorIlRoZXNlIG9wdGlvbnMgYXJlIGlnbm9yZWQgZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBvbGRlciB2ZXJzaW9ucyBvZiBkcGtnLWRldiAiCisiYnV0IGFyZSBub3cgZGVwcmVjYXRlZC4gUHJldmlvdXNseSB0aGV5IHdlcmUgdXNlZCB0byB0ZWxsIGRwa2ctZ2VuY29udHJvbCB0byAiCisiaW5jbHVkZSB0aGUgU2VjdGlvbiBhbmQgUHJpb3JpdHkgZmllbGRzIGluIHRoZSBjb250cm9sIGZpbGUuIFRoaXMgaXMgbm93IHRoZSAiCisiZGVmYXVsdCBiZWhhdmlvdXIuIElmIHlvdSB3YW50IHRvIGdldCB0aGUgb2xkIGJlaGF2aW91ciB5b3UgY2FuIHVzZSB0aGUgQjwtIgorIlU+IG9wdGlvbiB0byBkZWxldGUgdGhlIGZpZWxkcyBmcm9tIHRoZSBjb250cm9sIGZpbGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbmNvbnRyb2wuMTo5OQorIywgbm8td3JhcAorbXNnaWQgIkI8LVA+STxwYWNrYWdlYnVpbGRkaXI+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjExMgorbXNnaWQgIiIKKyJUZWxscyBCPGRwa2ctc291cmNlPiB0aGF0IHRoZSBwYWNrYWdlIGlzIGJlaW5nIGJ1aWx0IGluIEk8cGFja2FnZWJ1aWxkZGlyPiAiCisiaW5zdGVhZCBvZiBCPGRlYmlhbi90bXA+LiAgVGhpcyB2YWx1ZSBpcyB1c2VkIHRvIGZpbmQgdGhlIGRlZmF1bHQgdmFsdWUgb2YgIgorInRoZSBCPEluc3RhbGxlZC1TaXplPiBzdWJzdGl0dXRpb24gdmFyaWFibGUgYW5kIGNvbnRyb2wgZmlsZSBmaWVsZCAodXNpbmcgIgorIkI8ZHU+KSwgYW5kIGZvciB0aGUgZGVmYXVsdCBsb2NhdGlvbiBvZiB0aGUgb3V0cHV0IGZpbGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbmNvbnRyb2wuMToxMTIgZHBrZy1nZW5zeW1ib2xzLjE6MzkxIGRwa2ctc2hsaWJkZXBzLjE6MTUwCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LU8+IgorbXNnc3RyICJCPC0tbmV3PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jb250cm9sLjE6MTIxCittc2dpZCAiIgorIlByaW50IHRoZSBjb250cm9sIGZpbGUgdG8gc3RhbmRhcmQgb3V0cHV0LCByYXRoZXIgdGhhbiB0byBCPGRlYmlhbi90bXAvIgorIkRFQklBTi9jb250cm9sPiAob3IgSTxwYWNrYWdlYnVpbGRkaXI+QjwvREVCSUFOL2NvbnRyb2w+IGlmIEI8LVA+IHdhcyB1c2VkKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjEyOQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPGRlYmlhbi9jb250cm9sPiIKK21zZ3N0ciAiZGViLWNvbnRyb2wiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjEzNAorbXNnaWQgIiIKKyJUaGUgbWFpbiBzb3VyY2UgY29udHJvbCBpbmZvcm1hdGlvbiBmaWxlLCBnaXZpbmcgdmVyc2lvbi1pbmRlcGVuZGVudCAiCisiaW5mb3JtYXRpb24gYWJvdXQgdGhlIHNvdXJjZSBwYWNrYWdlIGFuZCB0aGUgYmluYXJ5IHBhY2thZ2VzIGl0IGNhbiBwcm9kdWNlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMToxNDEKK21zZ2lkICIiCisiVGhlIGxpc3Qgb2YgZ2VuZXJhdGVkIGZpbGVzIHdoaWNoIGFyZSBwYXJ0IG9mIHRoZSB1cGxvYWQgYmVpbmcgcHJlcGFyZWQuICAiCisiQjxkcGtnLWdlbmNvbnRyb2w+IGFkZHMgdGhlIHByZXN1bWVkIGZpbGVuYW1lcyBvZiBiaW5hcnkgcGFja2FnZXMgd2hvc2UgIgorImNvbnRyb2wgZmlsZXMgaXQgZ2VuZXJhdGVzIGhlcmUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjE0OCBkcGtnLXNobGliZGVwcy4xOjMzNworbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDA3LTIwMDggUmFwaGFcXFs6ZV1sIEhlcnR6b2ciCittc2dzdHIgIiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjIKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiZHBrZy1nZW5zeW1ib2xzIgorbXNnc3RyICJkZWItY29udHJvbCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NQorbXNnaWQgIiIKKyJkcGtnLWdlbnN5bWJvbHMgLSBnZW5lcmF0ZSBzeW1ib2xzIGZpbGVzIChzaGFyZWQgbGlicmFyeSBkZXBlbmRlbmN5ICIKKyJpbmZvcm1hdGlvbikiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6OQorIywgZnV6enkKK21zZ2lkICJCPGRwa2ctZ2Vuc3ltYm9scz4gW0k8b3B0aW9uPi4uLl0iCittc2dzdHIgIkI8ZHBrZy1kZWI+IEI8LWM+fEI8LS1jb250ZW50cz4gSTxhcmNow612dW0+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToxNgorbXNnaWQgIiIKKyJCPGRwa2ctZ2Vuc3ltYm9scz4gc2NhbnMgYSB0ZW1wb3JhcnkgYnVpbGQgdHJlZSAoZGViaWFuL3RtcCBieSBkZWZhdWx0KSAiCisibG9va2luZyBmb3IgbGlicmFyaWVzIGFuZCBnZW5lcmF0ZSBhIEk8c3ltYm9scz4gZmlsZSBkZXNjcmliaW5nIHRoZW0uIFRoaXMgIgorImZpbGUsIGlmIG5vbi1lbXB0eSwgaXMgdGhlbiBpbnN0YWxsZWQgaW4gdGhlIERFQklBTiBzdWJkaXJlY3Rvcnkgb2YgdGhlICIKKyJidWlsZCB0cmVlIHNvIHRoYXQgaXQgZW5kcyB1cCBpbmNsdWRlZCBpbiB0aGUgY29udHJvbCBpbmZvcm1hdGlvbiBvZiB0aGUgIgorInBhY2thZ2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjIwCittc2dpZCAiIgorIldoZW4gZ2VuZXJhdGluZyB0aG9zZSBmaWxlcywgaXQgdXNlcyBhcyBpbnB1dCBzb21lIHN5bWJvbHMgZmlsZXMgcHJvdmlkZWQgYnkgIgorInRoZSBtYWludGFpbmVyLiBJdCBsb29rcyBmb3IgdGhlIGZvbGxvd2luZyBmaWxlcyAoYW5kIHVzZSB0aGUgZmlyc3QgdGhhdCBpcyAiCisiZm91bmQpOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyMgorbXNnaWQgImRlYmlhbi9JPHBhY2thZ2U+LnN5bWJvbHMuSTxhcmNoPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyNAorIywgZnV6enkKK21zZ2lkICJkZWJpYW4vc3ltYm9scy5JPGFyY2g+IgorbXNnc3RyICJkZWItY29udHJvbCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjYKK21zZ2lkICJkZWJpYW4vSTxwYWNrYWdlPi5zeW1ib2xzIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjI4CisjLCBmdXp6eQorbXNnaWQgImRlYmlhbi9zeW1ib2xzIgorbXNnc3RyICJkZWItY29udHJvbCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzYKK21zZ2lkICIiCisiVGhlIG1haW4gaW50ZXJlc3Qgb2YgdGhvc2UgZmlsZXMgaXMgdG8gcHJvdmlkZSB0aGUgbWluaW1hbCB2ZXJzaW9uICIKKyJhc3NvY2lhdGVkIHRvIGVhY2ggc3ltYm9sIHByb3ZpZGVkIGJ5IHRoZSBsaWJyYXJpZXMuIFVzdWFsbHkgaXQgY29ycmVzcG9uZHMgIgorInRvIHRoZSBmaXJzdCB2ZXJzaW9uIG9mIHRoYXQgcGFja2FnZSB0aGF0IHByb3ZpZGVkIHRoZSBzeW1ib2wsIGJ1dCBpdCBjYW4gYmUgIgorIm1hbnVhbGx5IGluY3JlbWVudGVkIGJ5IHRoZSBtYWludGFpbmVyIGlmIHRoZSBBQkkgb2YgdGhlIHN5bWJvbCBpcyBleHRlbmRlZCAiCisid2l0aG91dCBicmVha2luZyBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eS4gSXQncyB0aGUgcmVzcG9uc2liaWxpdHkgb2YgdGhlICIKKyJtYWludGFpbmVyIHRvIGtlZXAgdGhvc2UgZmlsZXMgdXAtdG8tZGF0ZSBhbmQgYWNjdXJhdGUsIGJ1dCBCPGRwa2ctIgorImdlbnN5bWJvbHM+IGhlbHBzIGhpbS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDIKK21zZ2lkICIiCisiV2hlbiB0aGUgZ2VuZXJhdGVkIHN5bWJvbHMgZmlsZXMgZGlmZmVyIGZyb20gdGhlIG1haW50YWluZXIgc3VwcGxpZWQgb25lLCAiCisiQjxkcGtnLWdlbnN5bWJvbHM+IHdpbGwgcHJpbnQgYSBkaWZmIGJldHdlZW4gdGhlIHR3byB2ZXJzaW9ucy4gIEZ1cnRoZXJtb3JlICIKKyJpZiB0aGUgZGlmZmVyZW5jZSBpcyB0b28gc2lnbmlmaWNhbnQsIGl0IHdpbGwgZXZlbiBmYWlsICh5b3UgY2FuIGN1c3RvbWl6ZSAiCisiaG93IG11Y2ggZGlmZmVyZW5jZSB5b3UgY2FuIHRvbGVyYXRlLCBzZWUgdGhlIEI8LWM+IG9wdGlvbikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0MgorIywgbm8td3JhcAorbXNnaWQgIk1BSU5UQUlOSU5HIFNZTUJPTFMgRklMRVMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NTUKK21zZ2lkICIiCisiVGhlIHN5bWJvbHMgZmlsZXMgYXJlIHJlYWxseSB1c2VmdWwgb25seSBpZiB0aGV5IHJlZmxlY3QgdGhlIGV2b2x1dGlvbiBvZiAiCisidGhlIHBhY2thZ2UgdGhyb3VnaCBzZXZlcmFsIHJlbGVhc2VzLiBUaHVzIHRoZSBtYWludGFpbmVyIGhhcyB0byB1cGRhdGUgdGhlbSAiCisiZXZlcnkgdGltZSB0aGF0IGEgbmV3IHN5bWJvbCBpcyBhZGRlZCBzbyB0aGF0IGl0cyBhc3NvY2lhdGVkIG1pbmltYWwgdmVyc2lvbiAiCisibWF0Y2hlcyByZWFsaXR5LiBUbyBkbyB0aGlzIHByb3Blcmx5IGhlIGNhbiB1c2UgdGhlIGRpZmZzIGNvbnRhaW5lZCBpbiB0aGUgIgorImJ1aWxkIGxvZ3MuIEluIG1vc3QgY2FzZXMsIHRoZSBkaWZmIGFwcGxpZXMgZGlyZWN0bHkgdG8gaGlzIGRlYmlhbi8iCisiSTxwYWNrYWdlPi5zeW1ib2xzIGZpbGUuIFRoYXQgc2FpZCwgZnVydGhlciB0d2Vha3MgYXJlIHVzdWFsbHkgbmVlZGVkOiBpdCdzICIKKyJyZWNvbW1lbmRlZCBmb3IgZXhhbXBsZSB0byBkcm9wIHRoZSBEZWJpYW4gcmV2aXNpb24gZnJvbSB0aGUgbWluaW1hbCB2ZXJzaW9uICIKKyJzbyB0aGF0IGJhY2twb3J0cyB3aXRoIGEgbG93ZXIgdmVyc2lvbiBudW1iZXIgYnV0IHRoZSBzYW1lIHVwc3RyZWFtIHZlcnNpb24gIgorInN0aWxsIHNhdGlzZnkgdGhlIGdlbmVyYXRlZCBkZXBlbmRlbmNpZXMuICBJZiB0aGUgRGViaWFuIHJldmlzaW9uIGNhbid0IGJlICIKKyJkcm9wcGVkIGJlY2F1c2UgdGhlIHN5bWJvbCByZWFsbHkgZ290IGFkZGVkIGJ5IHRoZSBEZWJpYW4gc3BlY2lmaWMgY2hhbmdlLCAiCisidGhlbiBvbmUgc2hvdWxkIHN1ZmZpeCB0aGUgdmVyc2lvbiB3aXRoIFwiflwiLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo1OQorbXNnaWQgIiIKKyJCZWZvcmUgYXBwbHlpbmcgYW55IHBhdGNoIHRvIHRoZSBzeW1ib2xzIGZpbGUsIHRoZSBtYWludGFpbmVyIHNob3VsZCBkb3VibGUtIgorImNoZWNrIHRoYXQgaXQncyBzYW5lLiBQdWJsaWMgc3ltYm9scyBhcmUgbm90IHN1cHBvc2VkIHRvIGRpc2FwcGVhciwgc28gdGhlICIKKyJwYXRjaCBzaG91bGQgaWRlYWxseSBvbmx5IGFkZCBuZXcgbGluZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjY0Cittc2dpZCAiIgorIk5vdGUgdGhhdCB5b3UgY2FuIHB1dCBjb21tZW50cyBpbiBzeW1ib2xzIGZpbGVzOiBhbnkgbGluZSB3aXRoICcjJyBhcyB0aGUgIgorImZpcnN0IGNoYXJhY3RlciBpcyBhIGNvbW1lbnQgZXhjZXB0IGlmIGl0IHN0YXJ0cyB3aXRoICcjaW5jbHVkZScgKHNlZSAiCisic2VjdGlvbiBCPFVzaW5nIGluY2x1ZGVzPikuIExpbmVzIHN0YXJ0aW5nIHdpdGggJyNNSVNTSU5HOicgYXJlIHNwZWNpYWwgIgorImNvbW1lbnRzIGRvY3VtZW50aW5nIHN5bWJvbHMgdGhhdCBoYXZlIGRpc2FwcGVhcmVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1nZW5zeW1ib2xzLjE6NjQKKyMsIG5vLXdyYXAKK21zZ2lkICJVc2luZyAjUEFDS0FHRSMgc3Vic3RpdHV0aW9uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjcyCittc2dpZCAiIgorIkluIHNvbWUgcmFyZSBjYXNlcywgdGhlIG5hbWUgb2YgdGhlIGxpYnJhcnkgdmFyaWVzIGJldHdlZW4gYXJjaGl0ZWN0dXJlcy4gICIKKyJUbyBhdm9pZCBoYXJkY29kaW5nIHRoZSBuYW1lIG9mIHRoZSBwYWNrYWdlIGluIHRoZSBzeW1ib2xzIGZpbGUsIHlvdSBjYW4gdXNlICIKKyJ0aGUgbWFya2VyIEk8I1BBQ0tBR0UjPi4gSXQgd2lsbCBiZSByZXBsYWNlZCBieSB0aGUgcmVhbCBwYWNrYWdlIG5hbWUgZHVyaW5nICIKKyJpbnN0YWxsYXRpb24gb2YgdGhlIHN5bWJvbHMgZmlsZXMuIENvbnRyYXJ5IHRvIHRoZSBJPCNNSU5WRVIjPiBtYXJrZXIsICIKKyJJPCNQQUNLQUdFIz4gd2lsbCBuZXZlciBhcHBlYXIgaW4gYSBzeW1ib2xzIGZpbGUgaW5zaWRlIGEgYmluYXJ5IHBhY2thZ2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLWdlbnN5bWJvbHMuMTo3MgorIywgbm8td3JhcAorbXNnaWQgIlVzaW5nIHN5bWJvbCB0YWdzIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjc5Cittc2dpZCAiIgorIlN5bWJvbCB0YWdnaW5nIGlzIHVzZWZ1bCBmb3IgbWFya2luZyBzeW1ib2xzIHRoYXQgYXJlIHNwZWNpYWwgaW4gc29tZSB3YXkuICAiCisiQW55IHN5bWJvbCBjYW4gaGF2ZSBhbiBhcmJpdHJhcnkgbnVtYmVyIG9mIHRhZ3MgYXNzb2NpYXRlZCB3aXRoIGl0LiBXaGlsZSAiCisiYWxsIHRhZ3MgYXJlIHBhcnNlZCBhbmQgc3RvcmVkLCBvbmx5IGEgc29tZSBvZiB0aGVtIGFyZSB1bmRlcnN0b29kIGJ5IEI8ZHBrZy0iCisiZ2Vuc3ltYm9scz4gYW5kIHRyaWdnZXIgc3BlY2lhbCBoYW5kbGluZyBvZiB0aGUgc3ltYm9scy4gU2VlIHN1YnNlY3Rpb24gIgorIkI8U3RhbmRhcmQgc3ltYm9sIHRhZ3M+IGZvciByZWZlcmVuY2Ugb2YgdGhlc2UgdGFncy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6OTEKK21zZ2lkICIiCisiVGFnIHNwZWNpZmljYXRpb24gY29tZXMgcmlnaHQgYmVmb3JlIHRoZSBzeW1ib2wgbmFtZSAobm8gd2hpdGVzcGFjZSBpcyAiCisiYWxsb3dlZCBpbiBiZXR3ZWVuKS4gSXQgYWx3YXlzIHN0YXJ0cyB3aXRoIGFuIG9wZW5pbmcgYnJhY2tldCBCPCg+LCBlbmRzICIKKyJ3aXRoIGEgY2xvc2luZyBicmFja2V0IEI8KT4gYW5kIG11c3QgY29udGFpbiBhdCBsZWFzdCBvbmUgdGFnLiBNdWx0aXBsZSB0YWdzICIKKyJhcmUgc2VwYXJhdGVkIGJ5IHRoZSBCPHw+IGNoYXJhY3Rlci4gRWFjaCB0YWcgY2FuIG9wdGlvbmFsbHkgaGF2ZSBhIHZhbHVlICIKKyJ3aGljaCBpcyBzZXBhcmF0ZWQgZm9ybSB0aGUgdGFnIG5hbWUgYnkgdGhlIEI8PT4gY2hhcmFjdGVyLiBUYWcgbmFtZXMgYW5kICIKKyJ2YWx1ZXMgY2FuIGJlIGFyYml0cmFyeSBzdHJpbmdzIGV4Y2VwdCB0aGV5IGNhbm5vdCBjb250YWluIGFueSBvZiB0aGUgIgorInNwZWNpYWwgQjwpPiBCPHw+IEI8PT4gY2hhcmFjdGVycy4gU3ltYm9sIG5hbWVzIGZvbGxvd2luZyBhIHRhZyAiCisic3BlY2lmaWNhdGlvbiBjYW4gb3B0aW9uYWxseSBiZSBxdW90ZWQgd2l0aCBlaXRoZXIgQjwnPiBvciBCPFwiPiBjaGFyYWN0ZXJzICIKKyJ0byBhbGxvdyB3aGl0ZXNwYWNlcyBpbiB0aGVtLiBIb3dldmVyLCBpZiB0aGVyZSBhcmUgbm8gdGFncyBzcGVjaWZpZWQgZm9yICIKKyJ0aGUgc3ltYm9sLCBxdW90ZXMgYXJlIHRyZWF0ZWQgYXMgcGFydCBvZiB0aGUgc3ltYm9sIG5hbWUgd2hpY2ggY29udGludWVzIHVwICIKKyJ1bnRpbCB0aGUgZmlyc3Qgc3BhY2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjk1CisjLCBuby13cmFwCittc2dpZCAiIgorIiAodGFnMT1pIGFtIG1hcmtlZHx0YWcgbmFtZSB3aXRoIHNwYWNlKVwidGFnZ2VkIHF1b3RlZCBzeW1ib2xcIkBCYXNlIDEuMFxuIgorIiAob3B0aW9uYWwpdGFnZ2VkX3VucXVvdGVkX3N5bWJvbEBCYXNlIDEuMCAxXG4iCisiIHVudGFnZ2VkX3N5bWJvbEBCYXNlIDEuMFxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjEwMQorbXNnaWQgIiIKKyJUaGUgZmlyc3Qgc3ltYm9sIGluIHRoZSBleGFtcGxlIGlzIG5hbWVkIEk8dGFnZ2VkIHF1b3RlZCBzeW1ib2w+IGFuZCBoYXMgdHdvICIKKyJ0YWdzOiBJPHRhZzE+IHdpdGggdmFsdWUgSTxpIGFtIG1hcmtlZD4gYW5kIEk8dGFnIG5hbWUgd2l0aCBzcGFjZT4gdGhhdCBoYXMgIgorIm5vIHZhbHVlLiBUaGUgc2Vjb25kIHN5bWJvbCBuYW1lZCBJPHRhZ2dlZF91bnF1b3RlZF9zeW1ib2w+IGlzIG9ubHkgdGFnZ2VkICIKKyJ3aXRoIHRoZSB0YWcgbmFtZWQgSTxvcHRpb25hbD4uIFRoZSBsYXN0IHN5bWJvbCBpcyBhbiBleGFtcGxlIG9mIHRoZSBub3JtYWwgIgorInVudGFnZ2VkIHN5bWJvbC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTEzCittc2dpZCAiIgorIlNpbmNlIHN5bWJvbCB0YWdzIGFyZSBhbiBleHRlbnNpb24gb2YgdGhlIEk8ZGViLXN5bWJvbHMoNSk+IGZvcm1hdCwgdGhleSBjYW4gIgorIm9ubHkgYmUgcGFydCBvZiB0aGUgc3ltYm9scyBmaWxlcyB1c2VkIGluIHNvdXJjZSBwYWNrYWdlcyAodGhvc2UgZmlsZXMgIgorInNob3VsZCB0aGVuIGJlIHNlZW4gYXMgdGVtcGxhdGVzIHVzZWQgdG8gYnVpbGQgdGhlIHN5bWJvbHMgZmlsZXMgdGhhdCBhcmUgIgorImVtYmVkZGVkIGluIGJpbmFyeSBwYWNrYWdlcykuIFdoZW4gQjxkcGtnLWdlbnN5bWJvbHM+IGlzIGNhbGxlZCB3aXRob3V0IHRoZSAiCisiSTwtdD4gb3B0aW9uLCBpdCB3aWxsIG91dHB1dCBzeW1ib2xzIGZpbGVzIGNvbXBhdGlibGUgdG8gdGhlIEk8ZGViLXN5bWJvbHMoNSkiCisiPiBmb3JtYXQ6IGl0IGZ1bGx5IHByb2Nlc3NlcyBzeW1ib2xzIGFjY29yZGluZyB0byB0aGUgcmVxdWlyZW1lbnRzIG9mIHRoZWlyICIKKyJzdGFuZGFyZCB0YWdzIGFuZCBzdHJpcHMgYWxsIHRhZ3MgZnJvbSB0aGUgb3V0cHV0LiBPbiB0aGUgY29udHJhcnksIGluICIKKyJ0ZW1wbGF0ZSBtb2RlIChJPC10PikgYWxsIHN5bWJvbHMgYW5kIHRoZWlyIHRhZ3MgKGJvdGggc3RhbmRhcmQgYW5kIHVua25vd24gIgorIm9uZXMpICBhcmUga2VwdCBpbiB0aGUgb3V0cHV0IGFuZCBhcmUgd3JpdHRlbiBpbiB0aGVpciBvcmlnaW5hbCBmb3JtIGFzIHRoZXkgIgorIndlcmUgbG9hZGVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1nZW5zeW1ib2xzLjE6MTEzCisjLCBuby13cmFwCittc2dpZCAiU3RhbmRhcmQgc3ltYm9sIHRhZ3MiCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjExNAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPG9wdGlvbmFsPiIKK21zZ3N0ciAiQjwtLXZlcnNpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToxMjQKK21zZ2lkICIiCisiQSBzeW1ib2wgbWFya2VkIGFzIG9wdGlvbmFsIGNhbiBkaXNhcHBlYXIgZnJvbSB0aGUgbGlicmFyeSBhdCBhbnkgdGltZSBhbmQgIgorInRoYXQgd2lsbCBuZXZlciBjYXVzZSBCPGRwa2ctZ2Vuc3ltYm9scz4gdG8gZmFpbC4gSG93ZXZlciwgZGlzYXBwZWFyZWQgIgorIm9wdGlvbmFsIHN5bWJvbHMgd2lsbCBjb250aW51b3VzbHkgYXBwZWFyIGFzIE1JU1NJTkcgaW4gdGhlIGRpZmYgaW4gZWFjaCBuZXcgIgorInBhY2thZ2UgcmV2aXNpb24uICBUaGlzIGJlaGF2aW91ciBzZXJ2ZXMgYXMgYSByZW1pbmRlciBmb3IgdGhlIG1haW50YWluZXIgIgorInRoYXQgc3VjaCBhIHN5bWJvbCBuZWVkcyB0byBiZSByZW1vdmVkIGZyb20gdGhlIHN5bWJvbCBmaWxlIG9yIHJlYWRkZWQgdG8gIgorInRoZSBsaWJyYXJ5LiBXaGVuIHRoZSBvcHRpb25hbCBzeW1ib2wsIHdoaWNoIHdhcyBwcmV2aW91c2x5IGRlY2xhcmVkIGFzICIKKyJNSVNTSU5HLCBzdWRkZW5seSByZWFwcGVhcnMgaW4gdGhlIG5leHQgcmV2aXNpb24sIGl0IHdpbGwgYmUgdXBncmFkZWQgYmFjayAiCisidG8gdGhlIFwiZXhpc3RpbmdcIiBzdGF0dXMgd2l0aCBpdHMgbWluaW11bSB2ZXJzaW9uIHVuY2hhbmdlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTI5Cittc2dpZCAiIgorIlRoaXMgdGFnIGlzIHVzZWZ1bCBmb3Igc3ltYm9scyB3aGljaCBhcmUgcHJpdmF0ZSB3aGVyZSB0aGVpciBkaXNhcHBlYXJhbmNlICIKKyJkbyBub3QgY2F1c2UgQUJJIGJyZWFrYWdlLiBGb3IgZXhhbXBsZSwgbW9zdCBvZiBDKysgdGVtcGxhdGUgaW5zdGFudGlhdGlvbnMgIgorImZhbGwgaW50byB0aGlzIGNhdGVnb3J5LiBMaWtlIGFueSBvdGhlciB0YWcsIHRoaXMgb25lIG1heSBhbHNvIGhhdmUgYW4gIgorImFyYml0cmFyeSB2YWx1ZTogaXQgY291bGQgYmUgdXNlZCB0byBpbmRpY2F0ZSB3aHkgdGhlIHN5bWJvbCBpcyBjb25zaWRlcmVkICIKKyJvcHRpb25hbC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjEyOQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPGFyY2g9Pkk8YXJjaGl0ZWN0dXJlIGxpc3Q+IgorbXNnc3RyICJCPC0tbm9jaGVjaz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjE0MgorbXNnaWQgIiIKKyJUaGlzIHRhZyBhbGxvd3Mgb25lIHRvIHJlc3RyaWN0IHRoZSBzZXQgb2YgYXJjaGl0ZWN0dXJlcyB3aGVyZSB0aGUgc3ltYm9sIGlzICIKKyJzdXBwb3NlZCB0byBleGlzdC4gV2hlbiB0aGUgc3ltYm9scyBsaXN0IGlzIHVwZGF0ZWQgd2l0aCB0aGUgc3ltYm9scyAiCisiZGlzY292ZXJlZCBpbiB0aGUgbGlicmFyeSwgYWxsIGFyY2gtc3BlY2lmaWMgc3ltYm9scyB3aGljaCBkbyBub3QgY29uY2VybiAiCisidGhlIGN1cnJlbnQgaG9zdCBhcmNoaXRlY3R1cmUgYXJlIHRyZWF0ZWQgYXMgaWYgdGhleSBkaWQgbm90IGV4aXN0LiBJZiBhbiAiCisiYXJjaC1zcGVjaWZpYyBzeW1ib2wgbWF0Y2hpbmcgdGhlIGN1cnJlbnQgaG9zdCBhcmNoaXRlY3R1cmUgZG9lcyBub3QgZXhpc3QgIgorImluIHRoZSBsaWJyYXJ5LCBub3JtYWwgcHJvY2VkdXJlcyBmb3IgbWlzc2luZyBzeW1ib2xzIGFwcGx5IGFuZCBpdCBtYXkgY2F1c2UgIgorIkI8ZHBrZy1nZW5zeW1ib2xzPiB0byBmYWlsLiBPbiB0aGUgb3RoZXIgaGFuZCwgaWYgdGhlIGFyY2gtc3BlY2lmaWMgc3ltYm9sICIKKyJpcyBmb3VuZCB3aGVuIGl0IHdhcyBub3Qgc3VwcG9zZWQgdG8gZXhpc3QgKGJlY2F1c2UgdGhlIGN1cnJlbnQgaG9zdCAiCisiYXJjaGl0ZWN0dXJlIGlzIG5vdCBsaXN0ZWQgaW4gdGhlIHRhZyksIGl0IGlzIG1hZGUgYXJjaCBuZXV0cmFsIChpLmUuIHRoZSAiCisiYXJjaCB0YWcgaXMgZHJvcHBlZCBhbmQgdGhlIHN5bWJvbCB3aWxsIGFwcGVhciBpbiB0aGUgZGlmZiBkdWUgdG8gdGhpcyAiCisiY2hhbmdlKSwgYnV0IGl0IGlzIG5vdCBjb25zaWRlcmVkIGFzIG5ldy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTQ4Cittc2dpZCAiIgorIldoZW4gb3BlcmF0aW5nIGluIHRoZSBkZWZhdWx0IG5vbi10ZW1wbGF0ZSBtb2RlLCBhbW9uZyBhcmNoLXNwZWNpZmljIHN5bWJvbHMgIgorIm9ubHkgdGhvc2UgdGhhdCBtYXRjaCB0aGUgY3VycmVudCBob3N0IGFyY2hpdGVjdHVyZSBhcmUgd3JpdHRlbiB0byB0aGUgIgorInN5bWJvbHMgZmlsZS4gT24gdGhlIGNvbnRyYXJ5LCBhbGwgYXJjaC1zcGVjaWZpYyBzeW1ib2xzIChpbmNsdWRpbmcgdGhvc2UgIgorImZyb20gZm9yZWlnbiBhcmNoZXMpIGFyZSBhbHdheXMgd3JpdHRlbiB0byB0aGUgc3ltYm9sIGZpbGUgd2hlbiBvcGVyYXRpbmcgaW4gIgorInRlbXBsYXRlIG1vZGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjE1NAorbXNnaWQgIiIKKyJUaGUgZm9ybWF0IG9mIEk8YXJjaGl0ZWN0dXJlIGxpc3Q+IGlzIHRoZSBzYW1lIGFzIHRoZSBvbmUgdXNlZCBpbiB0aGUgIgorIkk8QnVpbGQtRGVwZW5kcz4gZmllbGQgb2YgSTxkZWJpYW4vY29udHJvbD4gKGV4Y2VwdCB0aGUgZW5jbG9zaW5nIHNxdWFyZSAiCisiYnJhY2tldHMgW10pLiBGb3IgZXhhbXBsZSwgdGhlIGZpcnN0IHN5bWJvbCBmcm9tIHRoZSBsaXN0IGJlbG93IHdpbGwgYmUgIgorImNvbnNpZGVyZWQgb25seSBvbiBhbHBoYSwgYW1kNjQsIGtmcmVlYnNkLWFtZDY0IGFuZCBpYTY0IGFyY2hpdGVjdHVyZXMgd2hpbGUgIgorInRoZSBzZWNvbmQgb25lIGFueXdoZXJlIGV4Y2VwdCBvbiBhcm1lbC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTU3CisjLCBuby13cmFwCittc2dpZCAiIgorIiAoYXJjaD1hbHBoYSBhbWQ2NCBrZnJlZWJzZC1hbWQ2NCBpYTY0KWFfNjRiaXRfc3BlY2lmaWNfc3ltYm9sQEJhc2UgMS4wXG4iCisiIChhcmNoPSFhcm1lbClzeW1ib2xfYXJtZWxfZG9lc19ub3RfaGF2ZUBCYXNlIDEuMFxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbnN5bWJvbHMuMToxNTcKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxpZ25vcmUtYmxhY2tsaXN0PiIKK21zZ3N0ciAiQjwtLW5vY2hlY2s+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToxNjUKK21zZ2lkICIiCisiZHBrZy1nZW5zeW1ib2xzIGhhcyBhbiBpbnRlcm5hbCBibGFja2xpc3Qgb2Ygc3ltYm9scyB0aGF0IHNob3VsZCBub3QgYXBwZWFyICIKKyJpbiBzeW1ib2xzIGZpbGVzIGFzIHRoZXkgYXJlIHVzdWFsbHkgb25seSBzaWRlLWVmZmVjdHMgb2YgaW1wbGVtZW50YXRpb24gIgorImRldGFpbHMgb2YgdGhlIHRvb2xjaGFpbi4gSWYgZm9yIHNvbWUgcmVhc29uLCB5b3UgcmVhbGx5IHdhbnQgb25lIG9mIHRob3NlICIKKyJzeW1ib2xzIHRvIGJlIGluY2x1ZGVkIGluIHRoZSBzeW1ib2xzIGZpbGUsIHlvdSBzaG91bGQgdGFnIHRoZSBzeW1ib2wgd2l0aCAiCisiQjxpZ25vcmUtYmxhY2tsaXN0Pi4gSXQgY2FuIGJlIG5lY2Vzc2FyeSBmb3Igc29tZSBsb3cgbGV2ZWwgdG9vbGNoYWluICIKKyJsaWJyYXJpZXMgbGlrZSBsaWJnY2MuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbnN5bWJvbHMuMToxNjUgZHBrZy1nZW5zeW1ib2xzLjE6MjAyCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8YysrPiIKK21zZ3N0ciAiQjwtLW5ldz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjE2OQorbXNnaWQgIiIKKyJEZW5vdGVzIEk8YysrPiBzeW1ib2wgcGF0dGVybi4gU2VlIEI8VXNpbmcgc3ltYm9sIHBhdHRlcm5zPiBzdWJzZWN0aW9uIGJlbG93LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTY5IGRwa2ctZ2Vuc3ltYm9scy4xOjIzMworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPHN5bXZlcj4iCittc2dzdHIgIkI8LS1uZXc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToxNzMKK21zZ2lkICIiCisiRGVub3RlcyBJPHN5bXZlcj4gKHN5bWJvbCB2ZXJzaW9uKSBzeW1ib2wgcGF0dGVybi4gU2VlIEI8VXNpbmcgc3ltYm9sICIKKyJwYXR0ZXJucz4gc3Vic2VjdGlvbiBiZWxvdy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjE3MyBkcGtnLWdlbnN5bWJvbHMuMToyNTgKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxyZWdleD4iCittc2dzdHIgIkI8LS1uZXc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToxNzcKK21zZ2lkICIiCisiRGVub3RlcyBJPHJlZ2V4PiBzeW1ib2wgcGF0dGVybi4gU2VlIEI8VXNpbmcgc3ltYm9sIHBhdHRlcm5zPiBzdWJzZWN0aW9uICIKKyJiZWxvdy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjE3NworIywgbm8td3JhcAorbXNnaWQgIlVzaW5nIHN5bWJvbCBwYXR0ZXJucyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToxODUKK21zZ2lkICIiCisiVW5saWtlIGEgc3RhbmRhcmQgc3ltYm9sIHNwZWNpZmljYXRpb24sIGEgcGF0dGVybiBtYXkgY292ZXIgbXVsdGlwbGUgcmVhbCAiCisic3ltYm9scyBmcm9tIHRoZSBsaWJyYXJ5LiBCPGRwa2ctZ2Vuc3ltYm9scz4gd2lsbCBhdHRlbXB0IHRvIG1hdGNoIGVhY2ggIgorInBhdHRlcm4gYWdhaW5zdCBlYWNoIHJlYWwgc3ltYm9sIHRoYXQgZG9lcyBJPG5vdD4gaGF2ZSBhIHNwZWNpZmljIHN5bWJvbCAiCisiY291bnRlcnBhcnQgZGVmaW5lZCBpbiB0aGUgc3ltYm9sIGZpbGUuIFdoZW5ldmVyIHRoZSBmaXJzdCBtYXRjaGluZyBwYXR0ZXJuICIKKyJpcyBmb3VuZCwgYWxsIGl0cyB0YWdzIGFuZCBwcm9wZXJ0aWVzIHdpbGwgYmUgdXNlZCBhcyBhIGJhc2lzIHNwZWNpZmljYXRpb24gIgorIm9mIHRoZSBzeW1ib2wuIElmIG5vbmUgb2YgdGhlIHBhdHRlcm5zIG1hdGNoZXMsIHRoZSBzeW1ib2wgd2lsbCBiZSAiCisiY29uc2lkZXJlZCBhcyBuZXcuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjE5MworbXNnaWQgIiIKKyJBIHBhdHRlcm4gaXMgY29uc2lkZXJlZCBsb3N0IGlmIGl0IGRvZXMgbm90IG1hdGNoIGFueSBzeW1ib2wgaW4gdGhlIGxpYnJhcnkuICIKKyJCeSBkZWZhdWx0IHRoaXMgd2lsbCB0cmlnZ2VyIGEgQjxkcGtnLWdlbnN5bWJvbHM+IGZhaWx1cmUgdW5kZXIgSTwtYzE+IG9yICIKKyJoaWdoZXIgbGV2ZWwuIEhvd2V2ZXIsIGlmIHRoZSBmYWlsdXJlIGlzIHVuZGVzaXJlZCwgdGhlIHBhdHRlcm4gbWF5IGJlICIKKyJtYXJrZWQgd2l0aCB0aGUgSTxvcHRpb25hbD4gdGFnLiBUaGVuIGlmIHRoZSBwYXR0ZXJuIGRvZXMgbm90IG1hdGNoICIKKyJhbnl0aGluZywgaXQgd2lsbCBvbmx5IGFwcGVhciBpbiB0aGUgZGlmZiBhcyBNSVNTSU5HLiBNb3Jlb3ZlciwgbGlrZSBhbnkgIgorInN5bWJvbCwgdGhlIHBhdHRlcm4gbWF5IGJlIGxpbWl0ZWQgdG8gdGhlIHNwZWNpZmljIGFyY2hpdGVjdHVyZXMgd2l0aCB0aGUgIgorIkk8YXJjaD4gdGFnLiBQbGVhc2UgcmVmZXIgdG8gQjxTdGFuZGFyZCBzeW1ib2wgdGFncz4gc3Vic2VjdGlvbiBhYm92ZSBmb3IgIgorIm1vcmUgaW5mb3JtYXRpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjIwMAorbXNnaWQgIiIKKyJQYXR0ZXJucyBhcmUgYW4gZXh0ZW5zaW9uIG9mIHRoZSBJPGRlYi1zeW1ib2xzKDUpPiBmb3JtYXQgaGVuY2UgdGhleSBhcmUgIgorIm9ubHkgdmFsaWQgaW4gc3ltYm9sIGZpbGUgdGVtcGxhdGVzLiBQYXR0ZXJuIHNwZWNpZmljYXRpb24gc3ludGF4IGlzIG5vdCBhbnkgIgorImRpZmZlcmVudCBmcm9tIHRoZSBvbmUgb2YgYSBzcGVjaWZpYyBzeW1ib2wuIEhvd2V2ZXIsIHN5bWJvbCBuYW1lIHBhcnQgb2YgIgorInRoZSBzcGVjaWZpY2F0aW9uIHNlcnZlcyBhcyBhbiBleHByZXNzaW9uIHRvIGJlIG1hdGNoZWQgYWdhaW5zdCAiCisiSTxuYW1lQHZlcnNpb24+IG9mIHRoZSByZWFsIHN5bWJvbC4gSW4gb3JkZXIgdG8gZGlzdGluZ3Vpc2ggYW1vbmcgZGlmZmVyZW50ICIKKyJwYXR0ZXJuIHR5cGVzLCBhIHBhdHRlcm4gd2lsbCB0eXBpY2FsbHkgYmUgdGFnZ2VkIHdpdGggYSBzcGVjaWFsIHRhZy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjAyCittc2dpZCAiQXQgdGhlIG1vbWVudCwgQjxkcGtnLWdlbnN5bWJvbHM+IHN1cHBvcnRzIHRocmVlIGJhc2ljIHBhdHRlcm4gdHlwZXM6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjIxNAorbXNnaWQgIiIKKyJUaGlzIHBhdHRlcm4gaXMgZGVub3RlZCBieSB0aGUgSTxjKys+IHRhZy4gSXQgbWF0Y2hlcyBvbmx5IEMrKyBzeW1ib2xzIGJ5ICIKKyJ0aGVpciBkZW1hbmdsZWQgc3ltYm9sIG5hbWUgKGFzIGVtaXR0ZWQgYnkgQjxjKytmaWx0PigxKSB1dGlsaXR5KS4gVGhpcyAiCisicGF0dGVybiBpcyB2ZXJ5IGhhbmR5IGZvciBtYXRjaGluZyBzeW1ib2xzIHdoaWNoIG1hbmdsZWQgbmFtZXMgbWlnaHQgdmFyeSAiCisiYWNyb3NzIGRpZmZlcmVudCBhcmNoaXRlY3R1cmVzIHdoaWxlIHRoZWlyIGRlbWFuZ2xlZCBuYW1lcyByZW1haW4gdGhlIHNhbWUuICIKKyJPbmUgZ3JvdXAgb2Ygc3VjaCBzeW1ib2xzIGlzIEk8bm9uLXZpcnR1YWwgdGh1bmtzPiB3aGljaCBoYXZlIGFyY2hpdGVjdHVyZSAiCisic3BlY2lmaWMgb2Zmc2V0cyBlbWJlZGRlZCBpbiB0aGVpciBtYW5nbGVkIG5hbWVzLiBBIGNvbW1vbiBpbnN0YW5jZSBvZiB0aGlzICIKKyJjYXNlIGlzIGEgdmlydHVhbCBkZXN0cnVjdG9yIHdoaWNoIHVuZGVyIGRpYW1vbmQgaW5oZXJpdGFuY2UgbmVlZHMgYSBub24tIgorInZpcnR1YWwgdGh1bmsgc3ltYm9sLiBGb3IgZXhhbXBsZSwgZXZlbiBpZiBfWlRobjhfTjNOU0I2Q2xhc3NERDFFdkBCYXNlIG9uICIKKyIzMmJpdCBhcmNoaXRlY3R1cmVzIHdpbGwgcHJvYmFibHkgYmUgX1pUaG4xNl9OM05TQjZDbGFzc0REMUV2QEJhc2Ugb24gNjRiaXQgIgorIm9uZXMsIGl0IGNhbiBiZSBtYXRjaGVkIHdpdGggYSBzaW5nbGUgSTxjKys+IHBhdHRlcm46IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjIyMAorIywgbm8td3JhcAorbXNnaWQgIiIKKyJsaWJkdW1teS5zby4xIGxpYmR1bW15MSAjTUlOVkVSI1xuIgorIiBbLi4uXVxuIgorIiAoYysrKVwibm9uLXZpcnR1YWwgdGh1bmsgdG8gTlNCOjpDbGFzc0Q6On5DbGFzc0QoKUBCYXNlXCIgMS4wXG4iCisiIFsuLi5dXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjIyCittc2dpZCAiIgorIlRoZSBkZW1hbmdsZWQgbmFtZSBhYm92ZSBjYW4gYmUgb2J0YWluZWQgYnkgZXhlY3V0aW5nIHRoZSBmb2xsb3dpbmcgY29tbWFuZDoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjI0CisjLCBuby13cmFwCittc2dpZCAiICQgZWNobyAnX1pUaG44X04zTlNCNkNsYXNzREQxRXZAQmFzZScgfCBjKytmaWx0XG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjMyCittc2dpZCAiIgorIlBsZWFzZSBub3RlIHRoYXQgd2hpbGUgbWFuZ2xlZCBuYW1lIGlzIHVuaXF1ZSBpbiB0aGUgbGlicmFyeSBieSBkZWZpbml0aW9uLCAiCisidGhpcyBpcyBub3QgbmVjZXNzYXJpbHkgdHJ1ZSBmb3IgZGVtYW5nbGVkIG5hbWVzLiBBIGNvdXBsZSBvZiBkaXN0aW5jdCByZWFsICIKKyJzeW1ib2xzIG1heSBoYXZlIHRoZSBzYW1lIGRlbWFuZ2xlZCBuYW1lLiBGb3IgZXhhbXBsZSwgdGhhdCdzIHRoZSBjYXNlIHdpdGggIgorIm5vbi12aXJ0dWFsIHRodW5rIHN5bWJvbHMgaW4gY29tcGxleCBpbmhlcml0YW5jZSBjb25maWd1cmF0aW9ucyBvciB3aXRoIG1vc3QgIgorImNvbnN0cnVjdG9ycyBhbmQgZGVzdHJ1Y3RvcnMgKHNpbmNlIGcrKyB0eXBpY2FsbHkgZ2VuZXJhdGVzIHR3byByZWFsIHN5bWJvbHMgIgorImZvciB0aGVtKS4gSG93ZXZlciwgYXMgdGhlc2UgY29sbGlzaW9ucyBoYXBwZW4gb24gdGhlIEFCSSBsZXZlbCwgdGhleSBzaG91bGQgIgorIm5vdCBkZWdyYWRlIHF1YWxpdHkgb2YgdGhlIHN5bWJvbCBmaWxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyMzkKK21zZ2lkICIiCisiVGhpcyBwYXR0ZXJuIGlzIGRlbm90ZWQgYnkgdGhlIEk8c3ltdmVyPiB0YWcuIFdlbGwgbWFpbnRhaW5lZCBsaWJyYXJpZXMgaGF2ZSAiCisidmVyc2lvbmVkIHN5bWJvbHMgd2hlcmUgZWFjaCB2ZXJzaW9uIGNvcnJlc3BvbmRzIHRvIHRoZSB1cHN0cmVhbSB2ZXJzaW9uICIKKyJ3aGVyZSB0aGUgc3ltYm9sIGdvdCBhZGRlZC4gSWYgdGhhdCdzIHRoZSBjYXNlLCB5b3UgY2FuIHVzZSBhIEk8c3ltdmVyPiAiCisicGF0dGVybiB0byBtYXRjaCBhbnkgc3ltYm9sIGFzc29jaWF0ZWQgdG8gdGhlIHNwZWNpZmljIHZlcnNpb24uIEZvciBleGFtcGxlOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyNDYKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisibGliYy5zby42IGxpYmM2ICNNSU5WRVIjXG4iCisiIChzeW12ZXIpR0xJQkNfMi4wIDIuMFxuIgorIiBbLi4uXVxuIgorIiAoc3ltdmVyKUdMSUJDXzIuNyAyLjdcbiIKKyIgYWNjZXNzQEdMSUJDXzIuMCAyLjJcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyNTIKK21zZ2lkICIiCisiQWxsIHN5bWJvbHMgYXNzb2NpYXRlZCB3aXRoIHZlcnNpb25zIEdMSUJDXzIuMCBhbmQgR0xJQkNfMi43IHdpbGwgbGVhZCB0byAiCisibWluaW1hbCB2ZXJzaW9uIG9mIDIuMCBhbmQgMi43IHJlc3BlY3RpdmVseSB3aXRoIHRoZSBleGNlcHRpb24gb2YgdGhlIHN5bWJvbCAiCisiYWNjZXNzQEdMSUJDXzIuMC4gVGhlIGxhdHRlciB3aWxsIGxlYWQgdG8gYSBtaW5pbWFsIGRlcGVuZGVuY3kgb24gbGliYzYgIgorInZlcnNpb24gMi4yIGRlc3BpdGUgYmVpbmcgaW4gdGhlIHNjb3BlIG9mIHRoZSBcIihzeW12ZXIpR0xJQkNfMi4wXCIgcGF0dGVybiAiCisiYmVjYXVzZSBzcGVjaWZpYyBzeW1ib2xzIHRha2UgcHJlY2VkZW5jZSBvdmVyIHBhdHRlcm5zLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyNTcKK21zZ2lkICIiCisiUGxlYXNlIG5vdGUgdGhhdCB3aGlsZSBvbGQgc3R5bGUgd2lsZGNhcmQgcGF0dGVybnMgKGRlbm90ZWQgYnkgXCIqQHZlcnNpb25cIiAiCisiaW4gdGhlIHN5bWJvbCBuYW1lIGZpZWxkKSBhcmUgc3RpbGwgc3VwcG9ydGVkLCB0aGV5IGhhdmUgYmVlbiBkZXByZWNhdGVkIGJ5ICIKKyJuZXcgc3R5bGUgc3ludGF4IFwiKHN5bXZlcnxvcHRpb25hbCl2ZXJzaW9uXCIuIEZvciBleGFtcGxlLCBcIipAR0xJQkNfMi4wICIKKyIyLjBcIiBzaG91bGQgYmUgd3JpdHRlbiBhcyBcIihzeW12ZXJ8b3B0aW9uYWwpR0xJQkNfMi4wIDIuMFwiIGlmIHRoZSBzYW1lICIKKyJiZWhhdmlvdXIgaXMgbmVlZGVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyNjUKK21zZ2lkICIiCisiUmVndWxhciBleHByZXNzaW9uIHBhdHRlcm5zIGFyZSBkZW5vdGVkIGJ5IHRoZSBJPHJlZ2V4PiB0YWcuIFRoZXkgbWF0Y2ggYnkgIgorInRoZSBwZXJsIHJlZ3VsYXIgZXhwcmVzc2lvbiBzcGVjaWZpZWQgaW4gdGhlIHN5bWJvbCBuYW1lIGZpZWxkLiBBIHJlZ3VsYXIgIgorImV4cHJlc3Npb24gaXMgbWF0Y2hlZCBhcyBpdCBpcywgdGhlcmVmb3JlIGRvIG5vdCBmb3JnZXQgdG8gc3RhcnQgaXQgd2l0aCB0aGUgIgorIkk8Xj4gY2hhcmFjdGVyIG9yIGl0IG1heSBtYXRjaCBhbnkgcGFydCBvZiB0aGUgcmVhbCBzeW1ib2wgSTxuYW1lQHZlcnNpb24+ICIKKyJzdHJpbmcuIEZvciBleGFtcGxlOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyNzAKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisibGliZHVtbXkuc28uMSBsaWJkdW1teTEgI01JTlZFUiNcbiIKKyIgKHJlZ2V4KVwiXm15c3RhY2tfLipAQmFzZSRcIiAxLjBcbiIKKyIgKHJlZ2V4fG9wdGlvbmFsKVwicHJpdmF0ZVwiIDEuMFxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjI3NQorbXNnaWQgIiIKKyJTeW1ib2xzIGxpa2UgXCJteXN0YWNrX25ld0BCYXNlXCIsIFwibXlzdGFja19wdXNoQEJhc2VcIiwgXCJteXN0YWNrX3BvcEBCYXNlIgorIlwiIGV0Yy4gIHdpbGwgYmUgbWF0Y2hlZCBieSB0aGUgZmlyc3QgcGF0dGVybiB3aGlsZSBlLmcuICIKKyJcIm5nX215c3RhY2tfbmV3QEJhc2VcIiB3b24ndC4gIFRoZSBzZWNvbmQgcGF0dGVybiB3aWxsIG1hdGNoIGFsbCBzeW1ib2xzICIKKyJoYXZpbmcgdGhlIHN0cmluZyBcInByaXZhdGVcIiBpbiB0aGVpciBuYW1lcyBhbmQgbWF0Y2hlcyB3aWxsIGluaGVyaXQgIgorIkk8b3B0aW9uYWw+IHRhZyBmcm9tIHRoZSBwYXR0ZXJuLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyODAKK21zZ2lkICIiCisiQmFzaWMgcGF0dGVybnMgbGlzdGVkIGFib3ZlIGNhbiBiZSBjb21iaW5lZCB3aGVyZSBpdCBtYWtlcyBzZW5zZS4gSW4gdGhhdCAiCisiY2FzZSwgdGhleSBhcmUgcHJvY2Vzc2VkIGluIHRoZSBvcmRlciBpbiB3aGljaCB0aGUgdGFncyBhcmUgc3BlY2lmaWVkLiBGb3IgIgorImV4YW1wbGUsIGJvdGgiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjgzCisjLCBuby13cmFwCittc2dpZCAiIgorIiAoYysrfHJlZ2V4KVwiXk5TQTo6Q2xhc3NBOjpQcml2YXRlOjpwcml2bWV0aG9kXFxlZFxcZShpbnRcXGUpQEJhc2VcIiAxLjBcbiIKKyIgKHJlZ2V4fGMrKylOM05TQTZDbGFzc0E3UHJpdmF0ZTExcHJpdm1ldGhvZFxcZWRFaUBCYXNlIDEuMFxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjI5MworbXNnaWQgIiIKKyJ3aWxsIG1hdGNoIHN5bWJvbHMgXCJfWk4zTlNBNkNsYXNzQTdQcml2YXRlMTFwcml2bWV0aG9kMUVpQEJhc2VcIiBhbmQgIgorIlwiX1pOM05TQTZDbGFzc0E3UHJpdmF0ZTExcHJpdm1ldGhvZDJFaUBCYXNlXCIuIFdoZW4gbWF0Y2hpbmcgdGhlIGZpcnN0ICIKKyJwYXR0ZXJuLCB0aGUgcmF3IHN5bWJvbCBpcyBmaXJzdCBkZW1hbmdsZWQgYXMgQysrIHN5bWJvbCwgdGhlbiB0aGUgZGVtYW5nbGVkICIKKyJuYW1lIGlzIG1hdGNoZWQgYWdhaW5zdCB0aGUgcmVndWxhciBleHByZXNzaW9uLiBPbiB0aGUgb3RoZXIgaGFuZCwgd2hlbiAiCisibWF0Y2hpbmcgdGhlIHNlY29uZCBwYXR0ZXJuLCByZWd1bGFyIGV4cHJlc3Npb24gaXMgbWF0Y2hlZCBhZ2FpbnN0IHRoZSByYXcgIgorInN5bWJvbCBuYW1lLCB0aGVuIHRoZSBzeW1ib2wgaXMgdGVzdGVkIGlmIGl0IGlzIEMrKyBvbmUgYnkgYXR0ZW1wdGluZyB0byAiCisiZGVtYW5nbGUgaXQuIEEgZmFpbHVyZSBvZiBhbnkgYmFzaWMgcGF0dGVybiB3aWxsIHJlc3VsdCBpbiB0aGUgZmFpbHVyZSBvZiAiCisidGhlIHdob2xlIHBhdHRlcm4uICBUaGVyZWZvcmUsIGZvciBleGFtcGxlLCAiCisiXCJfX04zTlNBNkNsYXNzQTdQcml2YXRlMTFwcml2bWV0aG9kXFxlZEVpQEJhc2VcIiB3aWxsIG5vdCBtYXRjaCBlaXRoZXIgb2YgIgorInRoZSBwYXR0ZXJucyBiZWNhdXNlIGl0IGlzIG5vdCBhIHZhbGlkIEMrKyBzeW1ib2wuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjI5OQorbXNnaWQgIiIKKyJJbiBnZW5lcmFsLCBhbGwgcGF0dGVybnMgYXJlIGRpdmlkZWQgaW50byB0d28gZ3JvdXBzOiBhbGlhc2VzIChiYXNpYyBJPGMrKz4gIgorImFuZCBJPHN5bXZlcj4pIGFuZCBnZW5lcmljIHBhdHRlcm5zIChJPHJlZ2V4PiwgYWxsIGNvbWJpbmF0aW9ucyBvZiBtdWx0aXBsZSAiCisiYmFzaWMgcGF0dGVybnMpLiBNYXRjaGluZyBvZiBiYXNpYyBhbGlhcy1iYXNlZCBwYXR0ZXJucyBpcyBmYXN0IChPKDEpKSAgIgorIndoaWxlIGdlbmVyaWMgcGF0dGVybnMgYXJlIE8oTikgKE4gLSBnZW5lcmljIHBhdHRlcm4gY291bnQpIGZvciBlYWNoICIKKyJzeW1ib2wuICBUaGVyZWZvcmUsIGl0IGlzIHJlY29tbWVuZGVkIG5vdCB0byBvdmVydXNlIGdlbmVyaWMgcGF0dGVybnMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjMwNgorbXNnaWQgIiIKKyJXaGVuIG11bHRpcGxlIHBhdHRlcm5zIG1hdGNoIHRoZSBzYW1lIHJlYWwgc3ltYm9sLCBhbGlhc2VzIChmaXJzdCBJPGMrKz4sICIKKyJ0aGVuIEk8c3ltdmVyPikgYXJlIHByZWZlcnJlZCBvdmVyIGdlbmVyaWMgcGF0dGVybnMuIEdlbmVyaWMgcGF0dGVybnMgYXJlICIKKyJtYXRjaGVkIGluIHRoZSBvcmRlciB0aGV5IGFyZSBmb3VuZCBpbiB0aGUgc3ltYm9sIGZpbGUgdGVtcGxhdGUgdW50aWwgdGhlICIKKyJmaXJzdCBzdWNjZXNzLiAgUGxlYXNlIG5vdGUsIGhvd2V2ZXIsIHRoYXQgbWFudWFsIHJlb3JkZXJpbmcgb2YgdGVtcGxhdGUgIgorImZpbGUgZW50cmllcyBpcyBub3QgcmVjb21tZW5kZWQgYmVjYXVzZSBCPGRwa2ctZ2Vuc3ltYm9scz4gZ2VuZXJhdGVzIGRpZmZzICIKKyJiYXNlZCBvbiB0aGUgYWxwaGFudW1lcmljYWwgb3JkZXIgb2YgdGhlaXIgbmFtZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLWdlbnN5bWJvbHMuMTozMDYKKyMsIG5vLXdyYXAKK21zZ2lkICJVc2luZyBpbmNsdWRlcyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozMTEKK21zZ2lkICIiCisiV2hlbiB0aGUgc2V0IG9mIGV4cG9ydGVkIHN5bWJvbHMgZGlmZmVyIGJldHdlZW4gYXJjaGl0ZWN0dXJlcywgaXQgbWF5IGJlY29tZSAiCisiaW5lZmZpY2llbnQgdG8gdXNlIGEgc2luZ2xlIHN5bWJvbCBmaWxlLiBJbiB0aG9zZSBjYXNlcywgYW4gaW5jbHVkZSAiCisiZGlyZWN0aXZlIG1heSBwcm92ZSB0byBiZSB1c2VmdWwgaW4gYSBjb3VwbGUgb2Ygd2F5czoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzE1Cittc2dpZCAiIgorIllvdSBjYW4gZmFjdG9yaXplIHRoZSBjb21tb24gcGFydCBpbiBzb21lIGV4dGVybmFsIGZpbGUgYW5kIGluY2x1ZGUgdGhhdCAiCisiZmlsZSBpbiB5b3VyIEk8cGFja2FnZT4uc3ltYm9scy5JPGFyY2g+IGZpbGUgYnkgdXNpbmcgYW4gaW5jbHVkZSBkaXJlY3RpdmUgIgorImxpa2UgdGhpczoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzE3Cittc2dpZCAiI2luY2x1ZGUgXCJJPHBhY2thZ2VzPi5zeW1ib2xzLmNvbW1vblwiIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjMxOQorbXNnaWQgIlRoZSBpbmNsdWRlIGRpcmVjdGl2ZSBtYXkgYWxzbyBiZSB0YWdnZWQgbGlrZSBhbnkgc3ltYm9sOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozMjEKK21zZ2lkICIodGFnfC4ufHRhZ04pI2luY2x1ZGUgXCJmaWxlLXRvLWluY2x1ZGVcIiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozMjYKK21zZ2lkICIiCisiQXMgYSByZXN1bHQsIGFsbCBzeW1ib2xzIGluY2x1ZGVkIGZyb20gSTxmaWxlLXRvLWluY2x1ZGU+IHdpbGwgYmUgY29uc2lkZXJlZCAiCisidG8gYmUgdGFnZ2VkIHdpdGggSTx0YWc+IC4uIEk8dGFnTj4gYnkgZGVmYXVsdC4gWW91IGNhbiB1c2UgdGhpcyBmZWF0dXJlIHRvICIKKyJjcmVhdGUgYSBjb21tb24gSTxwYWNrYWdlPi5zeW1ib2xzIGZpbGUgd2hpY2ggaW5jbHVkZXMgYXJjaGl0ZWN0dXJlIHNwZWNpZmljICIKKyJzeW1ib2wgZmlsZXM6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjMzMQorIywgbm8td3JhcAorbXNnaWQgIiIKKyIgIGNvbW1vbl9zeW1ib2wxQEJhc2UgMS4wXG4iCisiIChhcmNoPWFtZDY0IGlhNjQgYWxwaGEpI2luY2x1ZGUgXCJwYWNrYWdlLnN5bWJvbHMuNjRiaXRcIlxuIgorIiAoYXJjaD0hYW1kNjQgIWlhNjQgIWFscGhhKSNpbmNsdWRlIFwicGFja2FnZS5zeW1ib2xzLjMyYml0XCJcbiIKKyIgIGNvbW1vbl9zeW1ib2wyQEJhc2UgMS4wXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzQwCittc2dpZCAiIgorIlRoZSBzeW1ib2xzIGZpbGVzIGFyZSByZWFkIGxpbmUgYnkgbGluZSwgYW5kIGluY2x1ZGUgZGlyZWN0aXZlcyBhcmUgIgorInByb2Nlc3NlZCBhcyBzb29uIGFzIHRoZXkgYXJlIGVuY291bnRlcmVkLiBUaGlzIG1lYW5zIHRoYXQgdGhlIGNvbnRlbnQgb2YgIgorInRoZSBpbmNsdWRlZCBmaWxlIGNhbiBvdmVycmlkZSBhbnkgY29udGVudCB0aGF0IGFwcGVhcmVkIGJlZm9yZSB0aGUgaW5jbHVkZSAiCisiZGlyZWN0aXZlIGFuZCB0aGF0IGFueSBjb250ZW50IGFmdGVyIHRoZSBkaXJlY3RpdmUgY2FuIG92ZXJyaWRlIGFueXRoaW5nICIKKyJjb250YWluZWQgaW4gdGhlIGluY2x1ZGVkIGZpbGUuIEFueSBzeW1ib2wgKG9yIGV2ZW4gYW5vdGhlciAjaW5jbHVkZSAiCisiZGlyZWN0aXZlKSBpbiB0aGUgaW5jbHVkZWQgZmlsZSBjYW4gc3BlY2lmeSBhZGRpdGlvbmFsIHRhZ3Mgb3Igb3ZlcnJpZGUgIgorInZhbHVlcyBvZiB0aGUgaW5oZXJpdGVkIHRhZ3MgaW4gaXRzIHRhZyBzcGVjaWZpY2F0aW9uLiBIb3dldmVyLCB0aGVyZSBpcyBubyAiCisid2F5IGZvciB0aGUgc3ltYm9sIHRvIHJlbW92ZSBhbnkgb2YgdGhlIGluaGVyaXRlZCB0YWdzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozNDUKK21zZ2lkICIiCisiQW4gaW5jbHVkZWQgZmlsZSBjYW4gcmVwZWF0IHRoZSBoZWFkZXIgbGluZSBjb250YWluaW5nIHRoZSBTT05BTUUgb2YgdGhlICIKKyJsaWJyYXJ5LiBJbiB0aGF0IGNhc2UsIGl0IG92ZXJyaWRlcyBhbnkgaGVhZGVyIGxpbmUgcHJldmlvdXNseSByZWFkLiAgIgorIkhvd2V2ZXIsIGluIGdlbmVyYWwgaXQncyBiZXN0IHRvIGF2b2lkIGR1cGxpY2F0aW5nIGhlYWRlciBsaW5lcy4gT25lIHdheSB0byAiCisiZG8gaXQgaXMgdGhlIGZvbGxvd2luZzoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzQ4CisjLCBuby13cmFwCittc2dpZCAiIgorIiNpbmNsdWRlIFwibGlic29tZXRoaW5nMS5zeW1ib2xzLmNvbW1vblwiXG4iCisiIGFyY2hfc3BlY2lmaWNfc3ltYm9sQEJhc2UgMS4wXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM0OAorIywgbm8td3JhcAorbXNnaWQgIkdvb2QgbGlicmFyeSBtYW5hZ2VtZW50IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM1MQorbXNnaWQgIkEgd2VsbC1tYWludGFpbmVkIGxpYnJhcnkgaGFzIHRoZSBmb2xsb3dpbmcgZmVhdHVyZXM6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM1NQorbXNnaWQgIiIKKyJpdHMgQVBJIGlzIHN0YWJsZSAocHVibGljIHN5bWJvbHMgYXJlIG5ldmVyIGRyb3BwZWQsIG9ubHkgbmV3IHB1YmxpYyBzeW1ib2xzICIKKyJhcmUgYWRkZWQpIGFuZCBjaGFuZ2VzIGluIGluY29tcGF0aWJsZSB3YXlzIG9ubHkgd2hlbiB0aGUgU09OQU1FIGNoYW5nZXM7IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM1OAorbXNnaWQgIiIKKyJpZGVhbGx5LCBpdCB1c2VzIHN5bWJvbCB2ZXJzaW9uaW5nIHRvIGFjaGlldmUgQUJJIHN0YWJpbGl0eSBkZXNwaXRlIGludGVybmFsICIKKyJjaGFuZ2VzIGFuZCBBUEkgZXh0ZW5zaW9uOyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozNjEKK21zZ2lkICIiCisiaXQgZG9lc24ndCBleHBvcnQgcHJpdmF0ZSBzeW1ib2xzIChzdWNoIHN5bWJvbHMgY2FuIGJlIHRhZ2dlZCBvcHRpb25hbCBhcyAiCisid29ya2Fyb3VuZCkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM2OQorbXNnaWQgIiIKKyJXaGlsZSBtYWludGFpbmluZyB0aGUgc3ltYm9scyBmaWxlLCBpdCdzIGVhc3kgdG8gbm90aWNlIGFwcGVhcmFuY2UgYW5kICIKKyJkaXNhcHBlYXJhbmNlIG9mIHN5bWJvbHMuIEJ1dCBpdCdzIG1vcmUgZGlmZmljdWx0IHRvIGNhdGNoIGluY29tcGF0aWJsZSBBUEkgIgorImFuZCBBQkkgY2hhbmdlLiBUaHVzIHRoZSBtYWludGFpbmVyIHNob3VsZCByZWFkIHRob3JvdWdobHkgdGhlIHVwc3RyZWFtICIKKyJjaGFuZ2Vsb2cgbG9va2luZyBmb3IgY2FzZXMgd2hlcmUgdGhlIHJ1bGVzIG9mIGdvb2QgbGlicmFyeSBtYW5hZ2VtZW50IGhhdmUgIgorImJlZW4gYnJva2VuLiBJZiBwb3RlbnRpYWwgcHJvYmxlbXMgYXJlIGRpc2NvdmVyZWQsIHRoZSB1cHN0cmVhbSBhdXRob3IgIgorInNob3VsZCBiZSBub3RpZmllZCBhcyBhbiB1cHN0cmVhbSBmaXggaXMgYWx3YXlzIGJldHRlciB0aGFuIGEgRGViaWFuICIKKyJzcGVjaWZpYyB3b3JrLWFyb3VuZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM3MAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1QPkk8cGFja2FnZS1idWlsZC1kaXI+IgorbXNnc3RyICJCPC0tZmllbGQ+LCBCPC1mPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzczCittc2dpZCAiU2NhbiBJPHBhY2thZ2UtYnVpbGQtZGlyPiBpbnN0ZWFkIG9mIGRlYmlhbi90bXAuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM3NworbXNnaWQgIiIKKyJEZWZpbmUgdGhlIHBhY2thZ2UgbmFtZS4gUmVxdWlyZWQgaWYgbW9yZSB0aGFuIG9uZSBiaW5hcnkgcGFja2FnZSBpcyBsaXN0ZWQgIgorImluIGRlYmlhbi9jb250cm9sIChvciBpZiB0aGVyZSdzIG5vIGRlYmlhbi9jb250cm9sIGZpbGUpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozODEKK21zZ2lkICIiCisiRGVmaW5lIHRoZSBwYWNrYWdlIHZlcnNpb24uIERlZmF1bHRzIHRvIHRoZSB2ZXJzaW9uIGV4dHJhY3RlZCBmcm9tIGRlYmlhbi8iCisiY2hhbmdlbG9nLiBSZXF1aXJlZCBpZiBjYWxsZWQgb3V0c2lkZSBvZiBhIHNvdXJjZSBwYWNrYWdlIHRyZWUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbnN5bWJvbHMuMTozODEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtZT5JPGxpYnJhcnktZmlsZT4iCittc2dzdHIgIkI8LS1mc3lzLXRhcmZpbGU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozODcKK21zZ2lkICIiCisiT25seSBhbmFseXplIGxpYnJhcmllcyBleHBsaWNpdGx5IGxpc3RlZCBpbnN0ZWFkIG9mIGZpbmRpbmcgYWxsIHB1YmxpYyAiCisibGlicmFyaWVzLiBZb3UgY2FuIHVzZSBhIHJlZ3VsYXIgZXhwcmVzc2lvbiBpbiBJPGxpYnJhcnktZmlsZT4gdG8gbWF0Y2ggIgorIm11bHRpcGxlIGxpYnJhcmllcyB3aXRoIGEgc2luZ2xlIGFyZ3VtZW50IChvdGhlcndpc2UgeW91IG5lZWQgbXVsdGlwbGUgQjwtIgorImU+KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM4NworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1JPkk8ZmlsZW5hbWU+IgorbXNnc3RyICJCPC0tbGljZW5jZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM5MQorbXNnaWQgIiIKKyJVc2UgSTxmaWxlbmFtZT4gYXMgcmVmZXJlbmNlIGZpbGUgdG8gZ2VuZXJhdGUgdGhlIHN5bWJvbHMgZmlsZSB0aGF0IGlzICIKKyJpbnRlZ3JhdGVkIGluIHRoZSBwYWNrYWdlIGl0c2VsZi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6Mzk1Cittc2dpZCAiIgorIlByaW50IHRoZSBnZW5lcmF0ZWQgc3ltYm9scyBmaWxlIHRvIHN0YW5kYXJkIG91dHB1dCwgcmF0aGVyIHRoYW4gYmVpbmcgIgorInN0b3JlZCBpbiB0aGUgcGFja2FnZSBidWlsZCB0cmVlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5zeW1ib2xzLjE6Mzk1CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LU8+STxmaWxlbmFtZT4iCittc2dzdHIgIkI8LS1saWNlbmNlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDAxCittc2dpZCAiIgorIlN0b3JlIHRoZSBnZW5lcmF0ZWQgc3ltYm9scyBmaWxlIGFzIEk8ZmlsZW5hbWU+LiBJZiBJPGZpbGVuYW1lPiBpcyBwcmUtIgorImV4aXN0aW5nLCBpdHMgY29udGVudCBpcyB1c2VkIGFzIGJhc2lzIGZvciB0aGUgZ2VuZXJhdGVkIHN5bWJvbHMgZmlsZS4gIFlvdSAiCisiY2FuIHVzZSB0aGlzIGZlYXR1cmUgdG8gdXBkYXRlIGEgc3ltYm9scyBmaWxlIHNvIHRoYXQgaXQgbWF0Y2hlcyBhIG5ld2VyICIKKyJ1cHN0cmVhbSB2ZXJzaW9uIG9mIHlvdXIgbGlicmFyeS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQwMQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC10PiIKK21zZ3N0ciAiQjwtLW5ldz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQxMAorbXNnaWQgIiIKKyJXcml0ZSB0aGUgc3ltYm9sIGZpbGUgaW4gdGVtcGxhdGUgbW9kZSByYXRoZXIgdGhhbiB0aGUgZm9ybWF0IGNvbXBhdGlibGUgIgorIndpdGggSTxkZWItc3ltYm9scyg1KT4uIFRoZSBtYWluIGRpZmZlcmVuY2UgaXMgdGhhdCBpbiB0aGUgdGVtcGxhdGUgbW9kZSAiCisic3ltYm9sIG5hbWVzIGFuZCB0YWdzIGFyZSB3cml0dGVuIGluIHRoZWlyIG9yaWdpbmFsIGZvcm0gY29udHJhcnkgdG8gdGhlICIKKyJwb3N0LXByb2Nlc3NlZCBzeW1ib2wgbmFtZXMgd2l0aCB0YWdzIHN0cmlwcGVkIGluIHRoZSBjb21wYXRpYmlsaXR5IG1vZGUuICAiCisiTW9yZW92ZXIsIHNvbWUgc3ltYm9scyBtaWdodCBiZSBvbWl0dGVkIHdoZW4gd3JpdGluZyBhIHN0YW5kYXJkIEk8ZGViLXN5bWJvbHMiCisiKDUpPiBmaWxlIChhY2NvcmRpbmcgdG8gdGhlIHRhZyBwcm9jZXNzaW5nIHJ1bGVzKSB3aGlsZSBhbGwgc3ltYm9scyBhcmUgIgorImFsd2F5cyB3cml0dGVuIHRvIHRoZSBzeW1ib2wgZmlsZSB0ZW1wbGF0ZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQxMAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1jPkk8WzAtNF0+IgorbXNnc3RyICJCPC0tdmVyc2lvbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQxOAorbXNnaWQgIiIKKyJEZWZpbmUgdGhlIGNoZWNrcyB0byBkbyB3aGVuIGNvbXBhcmluZyB0aGUgZ2VuZXJhdGVkIHN5bWJvbHMgZmlsZSB3aXRoIHRoZSAiCisidGVtcGxhdGUgZmlsZSB1c2VkIGFzIHN0YXJ0aW5nIHBvaW50LiBCeSBkZWZhdWx0IHRoZSBsZXZlbCBpcyAxLiBJbmNyZWFzaW5nICIKKyJsZXZlbHMgZG8gbW9yZSBjaGVja3MgYW5kIGluY2x1ZGUgYWxsIGNoZWNrcyBvZiBsb3dlciBsZXZlbHMuIExldmVsIDAgbmV2ZXIgIgorImZhaWxzLiBMZXZlbCAxIGZhaWxzIGlmIHNvbWUgc3ltYm9scyBoYXZlIGRpc2FwcGVhcmVkLiBMZXZlbCAyIGZhaWxzIGlmIHNvbWUgIgorIm5ldyBzeW1ib2xzIGhhdmUgYmVlbiBpbnRyb2R1Y2VkLiBMZXZlbCAzIGZhaWxzIGlmIHNvbWUgbGlicmFyaWVzIGhhdmUgIgorImRpc2FwcGVhcmVkLiBMZXZlbCA0IGZhaWxzIGlmIHNvbWUgbGlicmFyaWVzIGhhdmUgYmVlbiBpbnRyb2R1Y2VkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0MjEKK21zZ2lkICIiCisiVGhpcyB2YWx1ZSBjYW4gYmUgb3ZlcnJpZGRlbiBieSB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGUgIgorIkRQS0dfR0VOU1lNQk9MU19DSEVDS19MRVZFTC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDI3Cittc2dpZCAiIgorIktlZXAgcXVpZXQgYW5kIG5ldmVyIGdlbmVyYXRlIGEgZGlmZiBiZXR3ZWVuIGdlbmVyYXRlZCBzeW1ib2xzIGZpbGUgYW5kIHRoZSAiCisidGVtcGxhdGUgZmlsZSB1c2VkIGFzIHN0YXJ0aW5nIHBvaW50IG9yIHNob3cgYW55IHdhcm5pbmdzIGFib3V0IG5ldy9sb3N0ICIKKyJsaWJyYXJpZXMgb3IgbmV3L2xvc3Qgc3ltYm9scy4gVGhpcyBvcHRpb24gb25seSBkaXNhYmxlcyBpbmZvcm1hdGlvbmFsICIKKyJvdXRwdXQgYnV0IG5vdCB0aGUgY2hlY2tzIHRoZW1zZWx2ZXMgKHNlZSBJPC1jPiBvcHRpb24pLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDI3CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LWE+STxhcmNoPiIKK21zZ3N0ciAiQjxQYWNrYWdlOj4gRTxsdD5jc29tYWcgbsOpdkU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0MzIKK21zZ2lkICIiCisiQXNzdW1lIEk8YXJjaD4gYXMgaG9zdCBhcmNoaXRlY3R1cmUgd2hlbiBwcm9jZXNzaW5nIHN5bWJvbCBmaWxlcy4gVXNlIHRoaXMgIgorIm9wdGlvbiB0byBnZW5lcmF0ZSBhIHN5bWJvbCBmaWxlIG9yIGRpZmYgZm9yIGFueSBhcmNoaXRlY3R1cmUgcHJvdmlkZWQgaXRzICIKKyJiaW5hcmllcyBhcmUgYWxyZWFkeSBhdmFpbGFibGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQzNworbXNnaWQgIiIKKyJFbmFibGUgZGVidWcgbW9kZS4gTnVtZXJvdXMgbWVzc2FnZXMgYXJlIGRpc3BsYXllZCB0byBleHBsYWluIHdoYXQgQjxkcGtnLSIKKyJnZW5zeW1ib2xzPiBkb2VzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDM3CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LVY+IgorbXNnc3RyICJCPC0tbmV3PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDQzCittc2dpZCAiIgorIkVuYWJsZSB2ZXJib3NlIG1vZGUuIFRoZSBnZW5lcmF0ZWQgc3ltYm9scyBmaWxlIGNvbnRhaW5zIGRlcHJlY2F0ZWQgc3ltYm9scyAiCisiYXMgY29tbWVudHMuIEZ1cnRoZXJtb3JlIGluIHRlbXBsYXRlIG1vZGUsIHBhdHRlcm4gc3ltYm9scyBhcmUgZm9sbG93ZWQgYnkgIgorImNvbW1lbnRzIGxpc3RpbmcgcmVhbCBzeW1ib2xzIHRoYXQgaGF2ZSBtYXRjaGVkIHRoZSBwYXR0ZXJuLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0NTIKK21zZ2lkICJCPGh0dHA6Ly9wZW9wbGUucmVkaGF0LmNvbS9kcmVwcGVyL3N5bWJvbC12ZXJzaW9uaW5nPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0NTQKK21zZ2lkICJCPGh0dHA6Ly9wZW9wbGUucmVkaGF0LmNvbS9kcmVwcGVyL2dvb2RwcmFjdGljZS5wZGY+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQ1NgorbXNnaWQgIkI8aHR0cDovL3Blb3BsZS5yZWRoYXQuY29tL2RyZXBwZXIvZHNvaG93dG8ucGRmPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0NTkKKyMsIGZ1enp5Cittc2dpZCAiQjxkZWItc3ltYm9scz4oNSksIEI8ZHBrZy1zaGxpYmRlcHM+KDEpLiIKK21zZ3N0ciAiQjxkZWI+KDUpLCBCPGRlYi1jb250cm9sPig1KSwgQjxkcGtnPigxKSwgQjxkc2VsZWN0PigxKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQ2MgorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDA3LTIwMDkgUmFwaGFcXFs6ZV1sIEhlcnR6b2ciCittc2dzdHIgIiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MQorIywgbm8td3JhcAorbXNnaWQgImRwa2ctbWFpbnRzY3JpcHQtaGVscGVyIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6NAorbXNnaWQgIiIKKyJkcGtnLW1haW50c2NyaXB0LWhlbHBlciAtIHdvcmtzIGFyb3VuZCBrbm93biBkcGtnIGxpbWl0YXRpb25zIGluIG1haW50YWluZXIgIgorInNjcmlwdHMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMTo4Cittc2dpZCAiIgorIkI8ZHBrZy1tYWludHNjcmlwdC1oZWxwZXI+IEk8Y29tbWFuZD4gW0k8cGFyYW1ldGVyPi4uLl0gQjwtLT4gSTxtYWludC1zY3JpcHQtIgorInBhcmFtZXRlcj4uLi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6OQorIywgbm8td3JhcAorbXNnaWQgIkNPTU1BTkRTIEFORCBQQVJBTUVURVJTIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MTIKK21zZ2lkICJCPHJtX2NvbmZmaWxlPiBJPGNvbmZmaWxlPiBbSTxsYXN0dmVyc2lvbj4gW0k8cGFja2FnZT5dXSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjE0Cittc2dpZCAiIgorIkI8bXZfY29uZmZpbGU+IEk8b2xkY29uZmZpbGU+IEk8bmV3Y29uZmZpbGU+IFtJPGxhc3R2ZXJzaW9uPiBbSTxwYWNrYWdlPl1dIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MjAKK21zZ2lkICIiCisiVGhpcyBwcm9ncmFtIGlzIGRlc2lnbmVkIHRvIGJlIHJ1biB3aXRoaW4gbWFpbnRhaW5lciBzY3JpcHRzIHRvIGFjaGlldmUgc29tZSAiCisidGFza3MgdGhhdCBkcGtnIGNhbid0ICh5ZXQpIGhhbmRsZSBuYXRpdmVseSBlaXRoZXIgYmVjYXVzZSBvZiBkZXNpZ24gIgorImRlY2lzaW9ucyBvciBkdWUgdG8gY3VycmVudCBsaW1pdGF0aW9ucy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToyNworbXNnaWQgIiIKKyJNYW55IG9mIHRob3NlIHRhc2tzIHJlcXVpcmUgY29vcmRpbmF0ZWQgYWN0aW9ucyBmcm9tIHNldmVyYWwgbWFpbnRhaW5lciAiCisic2NyaXB0cyAoQjxwcmVpbnN0PiwgQjxwb3N0aW5zdD4sIEI8cHJlcm0+LCBCPHBvc3RybT4pLiBUbyBhdm9pZCBtaXN0YWtlcyAiCisidGhlIHNhbWUgY2FsbCBzaW1wbHkgbmVlZHMgdG8gYmUgcHV0IGluIGFsbCBzY3JpcHRzIGFuZCB0aGUgcHJvZ3JhbSB3aWxsICIKKyJhdXRvbWF0aWNhbGx5IGFkYXB0IGl0cyBiZWhhdmlvdXIgYmFzZWQgb24gdGhlIGVudmlyb25tZW50IHZhcmlhYmxlICIKKyJCPERQS0dfTUFJTlRTQ1JJUFRfTkFNRT4gYW5kIG9uIHRoZSBtYWludGFpbmVyIHNjcmlwdHMgYXJndW1lbnRzIHRoYXQgeW91ICIKKyJoYXZlIHRvIGZvcndhcmQgYWZ0ZXIgYSBkb3VibGUgZGFzaC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MjgKKyMsIG5vLXdyYXAKK21zZ2lkICJDT05GRklMRSBSRUxBVEVEIFRBU0tTIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MzgKK21zZ2lkICIiCisiV2hlbiB1cGdyYWRpbmcgYSBwYWNrYWdlLCBkcGtnIHdpbGwgbm90IGF1dG9tYXRpY2FsbHkgcmVtb3ZlIGEgY29uZmZpbGUgKGEgIgorImNvbmZpZ3VyYXRpb24gZmlsZSBmb3Igd2hpY2ggZHBrZyBzaG91bGQgcHJlc2VydmUgdXNlciBjaGFuZ2VzKSBpZiBpdCBpcyBub3QgIgorInByZXNlbnQgaW4gdGhlIG5ld2VyIHZlcnNpb24uIFRoZXJlIGFyZSB0d28gcHJpbmNpcGFsIHJlYXNvbnMgZm9yIHRoaXM7IHRoZSAiCisiZmlyc3QgaXMgdGhhdCB0aGUgY29uZmZpbGUgY291bGQndmUgYmVlbiBkcm9wcGVkIGJ5IGFjY2lkZW50IGFuZCB0aGUgbmV4dCAiCisidmVyc2lvbiBjb3VsZCByZXN0b3JlIGl0LCB1c2VycyB3b3VsZG4ndCB3YW50IHRoZWlyIGNoYW5nZXMgdGhyb3duIGF3YXkuIFRoZSAiCisic2Vjb25kIGlzIHRvIGFsbG93IHBhY2thZ2VzIHRvIHRyYW5zaXRpb24gZmlsZXMgZnJvbSBhIGRwa2ctbWFpbnRhaW5lZCAiCisiY29uZmZpbGUgdG8gYSBmaWxlIG1haW50YWluZWQgYnkgdGhlIHBhY2thZ2UncyBtYWludGFpbmVyIHNjcmlwdHMsIHVzdWFsbHkgIgorIndpdGggYSB0b29sIGxpa2UgZGViY29uZiBvciB1Y2YuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6NDMKK21zZ2lkICIiCisiVGhpcyBtZWFucyB0aGF0IGlmIGEgcGFja2FnZSBpcyBpbnRlbmRlZCB0byByZW5hbWUgb3IgcmVtb3ZlIGEgY29uZmZpbGUsIGl0ICIKKyJtdXN0IGV4cGxpY2l0bHkgZG8gc28gYW5kIEI8ZHBrZy1tYWludHNjcmlwdC1oZWxwZXI+IGNhbiBiZSB1c2VkIHRvICIKKyJpbXBsZW1lbnQgZ3JhY2VmdWwgZGVsZXRpb24gYW5kIG1vdmluZyBvZiBjb25mZmlsZXMgd2l0aGluIG1haW50YWluZXIgIgorInNjcmlwdHMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjQ0CisjLCBuby13cmFwCittc2dpZCAiUkVNT1ZJTkcgQSBDT05GRklMRSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjUwCittc2dpZCAiIgorIklmIGEgY29uZmZpbGUgaXMgY29tcGxldGVseSByZW1vdmVkLCBpdCBzaG91bGQgYmUgcmVtb3ZlZCBmcm9tIGRpc2ssIHVubGVzcyAiCisidGhlIHVzZXIgaGFzIG1vZGlmaWVkIGl0LiBJZiB0aGVyZSBhcmUgbG9jYWwgbW9kaWZpY2F0aW9ucywgdGhleSBzaG91bGQgYmUgIgorInByZXNlcnZlZC4gSWYgdGhlIHBhY2thZ2UgdXBncmFkZXMgYWJvcnRzLCB0aGUgbmV3bHkgb2Jzb2xldGUgY29uZmZpbGUgIgorInNob3VsZCBub3QgZGlzYXBwZWFyLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjUzCittc2dpZCAiIgorIkFsbCBvZiB0aGlzIGlzIGltcGxlbWVudGVkIGJ5IHB1dHRpbmcgdGhlIGZvbGxvd2luZyBzaGVsbCBzbmlwcGV0IGluIHRoZSAiCisiQjxwcmVpbnN0PiwgQjxwb3N0aW5zdD4gYW5kIEI8cG9zdHJtPiBtYWludGFpbmVyIHNjcmlwdHM6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6NTYKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiICAgIGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyIHJtX2NvbmZmaWxlIFxcZVxuIgorIiAgICAgICAgSTxjb25mZmlsZT4gSTxsYXN0dmVyc2lvbj4gSTxwYWNrYWdlPiAtLSBcIiRAXCJcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjY2Cittc2dpZCAiIgorIkk8Y29uZmZpbGU+IGlzIHRoZSBmaWxlbmFtZSBvZiB0aGUgY29uZmZpbGUgdG8gcmVtb3ZlLiAgSTxsYXN0dmVyc2lvbj4gaXMgIgorInRoZSBsYXN0IHZlcnNpb24gb2YgdGhlIHBhY2thZ2UgdGhhdCBjb250YWluZWQgdGhlIGNvbmZmaWxlIChvciB0aGUgbGFzdCAiCisidmVyc2lvbiBvZiB0aGUgcGFja2FnZSB0aGF0IGRpZCBub3QgdGFrZSBjYXJlIHRvIHJlbW92ZSB0aGUgb2Jzb2xldGUgIgorImNvbmZmaWxlIGlmIHRoaXMgd2FzIG5vdCBpbW1lZGlhdGVseSBpbXBsZW1lbnRlZCkuICBJZiBJPGxhc3R2ZXJzaW9uPiBpcyAiCisiZW1wdHkgb3Igb21pdHRlZCwgdGhlbiB0aGUgb3BlcmF0aW9uIGlzIHRyaWVkIG9uIGV2ZXJ5IHVwZ3JhZGUuIEk8cGFja2FnZT4gIgorImlzIHRoZSBwYWNrYWdlIG5hbWUsIGl0J3Mgb3B0aW9uYWwgYXMgaXQgd2lsbCBkZWZhdWx0IHRvICIKKyIkRFBLR19NQUlOVFNDUklQVF9QQUNLQUdFICh0aGlzIHZhcmlhYmxlIGlzIHNldCBieSBkcGtnIHRvIHRoZSBuYW1lIG9mIHRoZSAiCisicGFja2FnZSBhY3RlZCB1cG9uKS4gQWxsIHRoZSBwYXJhbWV0ZXJzIG9mIHRoZSBtYWludGFpbmVyIHNjcmlwdHMgaGF2ZSB0byBiZSAiCisiZm9yd2FyZGVkIHRvIHRoZSBwcm9ncmFtIGFmdGVyIFwiLS1cIi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMTo3NQorbXNnaWQgIiIKKyJDdXJyZW50IGltcGxlbWVudGF0aW9uOiBpbiB0aGUgQjxwcmVpbnN0PiwgaXQgY2hlY2tzIGlmIHRoZSBjb25mZmlsZSB3YXMgIgorIm1vZGlmaWVkIGFuZCByZW5hbWVzIGl0IGVpdGhlciB0byBJPGNvbmZmaWxlPkI8LmRwa2ctcmVtb3ZlPiAoaWYgbm90ICIKKyJtb2RpZmllZCkgb3IgdG8gSTxjb25mZmlsZT5CPC5kcGtnLWJhY2t1cD4gKGlmIG1vZGlmaWVkKS4gSW4gdGhlICIKKyJCPHBvc3RpbnN0PiwgdGhlIGxhdHRlciBmaWxlIGlzIHJlbmFtZWQgdG8gSTxjb25mZmlsZT5CPC5kcGtnLWJhaz4gYW5kIGtlcHQgIgorImZvciByZWZlcmVuY2UgYXMgaXQgY29udGFpbnMgdXNlciBtb2RpZmljYXRpb25zIGJ1dCB0aGUgZm9ybWVyIHdpbGwgYmUgIgorInJlbW92ZWQuIElmIHRoZSBwYWNrYWdlIHVwZ3JhZGUgYWJvcnRzLCB0aGUgQjxwb3N0cm0+IHJlaW5zdGFsbHMgdGhlICIKKyJvcmlnaW5hbCBjb25mZmlsZS4gRHVyaW5nIHB1cmdlLCB0aGUgQjxwb3N0cm0+IHdpbGwgYWxzbyBkZWxldGUgdGhlIEI8LmRwa2ctIgorImJhaz4gZmlsZSBrZXB0IHVwIHRvIG5vdy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6NzYKKyMsIG5vLXdyYXAKK21zZ2lkICJSRU5BTUlORyBBIENPTkZGSUxFIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6ODMKK21zZ2lkICIiCisiSWYgYSBjb25mZmlsZSBpcyBtb3ZlZCBmcm9tIG9uZSBsb2NhdGlvbiB0byBhbm90aGVyLCB5b3UgbmVlZCB0byBtYWtlIHN1cmUgIgorInlvdSBtb3ZlIGFjcm9zcyBhbnkgY2hhbmdlcyB0aGUgdXNlciBoYXMgbWFkZS4gVGhpcyBtYXkgc2VlbSBhIHNpbXBsZSBjaGFuZ2UgIgorInRvIHRoZSBCPHByZWluc3Q+IHNjcmlwdCBhdCBmaXJzdCwgaG93ZXZlciB0aGF0IHdpbGwgcmVzdWx0IGluIHRoZSB1c2VyICIKKyJiZWluZyBwcm9tcHRlZCBieSBkcGtnIHRvIGFwcHJvdmUgdGhlIGNvbmZmaWxlIGVkaXRzIGV2ZW4gdGhvdWdoIHRoZXkgYXJlICIKKyJub3QgcmVzcG9uc2libGUgb2YgdGhlbS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMTo4NworbXNnaWQgIiIKKyJHcmFjZWZ1bCByZW5hbWluZyBjYW4gYmUgaW1wbGVtZW50ZWQgYnkgcHV0dGluZyB0aGUgZm9sbG93aW5nIHNoZWxsIHNuaXBwZXQgIgorImluIHRoZSBCPHByZWluc3Q+LCBCPHBvc3RpbnN0PiBhbmQgQjxwb3N0cm0+IG1haW50YWluZXIgc2NyaXB0czoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMTo5MAorIywgbm8td3JhcAorbXNnaWQgIiIKKyIgICAgZHBrZy1tYWludHNjcmlwdC1oZWxwZXIgbXZfY29uZmZpbGUgXFxlXG4iCisiICAgICAgICBJPG9sZGNvbmZmaWxlPiBJPG5ld2NvbmZmaWxlPiBJPGxhc3R2ZXJzaW9uPiBJPHBhY2thZ2U+IC0tIFwiJEBcIlxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MTAwCittc2dpZCAiIgorIkk8b2xkY29uZmZpbGU+IGFuZCBJPG5ld2NvbmZmaWxlPiBhcmUgdGhlIG9sZCBhbmQgbmV3IG5hbWUgb2YgdGhlIGNvbmZmaWxlICIKKyJ0byByZW5hbWUuIEk8bGFzdHZlcnNpb24+IGlzIHRoZSBsYXN0IHZlcnNpb24gb2YgdGhlIHBhY2thZ2UgdGhhdCBjb250YWluZWQgIgorInRoZSBjb25mZmlsZSB3aXRoIHRoZSBvbGQgbmFtZS4gSWYgSTxsYXN0dmVyc2lvbj4gaXMgZW1wdHkgb3Igb21pdHRlZCwgdGhlbiAiCisidGhlIG9wZXJhdGlvbiBpcyB0cmllZCBvbiBldmVyeSB1cGdyYWRlIChub3RlOiBpdCdzIHNhZmVyIHRvIGdpdmUgdGhlICIKKyJ2ZXJzaW9uIGFuZCBoYXZlIHRoZSBvcGVyYXRpb24gdHJpZWQgb25seSBvbmNlKS4gSTxwYWNrYWdlPiBpcyB0aGUgcGFja2FnZSAiCisibmFtZSwgaXQncyBvcHRpb25hbCBhcyBpdCB3aWxsIGRlZmF1bHQgdG8gJERQS0dfTUFJTlRTQ1JJUFRfUEFDS0FHRSAodGhpcyAiCisidmFyaWFibGUgaXMgc2V0IGJ5IGRwa2cgdG8gdGhlIG5hbWUgb2YgdGhlIHBhY2thZ2UgYWN0ZWQgdXBvbikuIEFsbCB0aGUgIgorInBhcmFtZXRlcnMgb2YgdGhlIG1haW50YWluZXIgc2NyaXB0cyBoYXZlIHRvIGJlIGZvcndhcmRlZCB0byB0aGUgcHJvZ3JhbSAiCisiYWZ0ZXIgXCItLVwiLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjEwOAorbXNnaWQgIiIKKyJDdXJyZW50IGltcGxlbWVudGF0aW9uOiB0aGUgQjxwcmVpbnN0PiBjaGVja3MgaWYgdGhlIGNvbmZmaWxlIGhhcyBiZWVuICIKKyJtb2RpZmllZCwgaWYgeWVzIGl0J3MgbGVmdCBvbiBwbGFjZSBvdGhlcndpc2UgaXQncyByZW5hbWVkIHRvICIKKyJJPG9sZGNvbmZmaWxlPkI8LmRwa2ctcmVtb3ZlPi4gT24gY29uZmlndXJhdGlvbiwgdGhlIEI8cG9zdGluc3Q+IHJlbW92ZXMgIgorIkk8b2xkY29uZmZpbGU+QjwuZHBrZy1yZW1vdmU+IGFuZCByZW5hbWVzIEk8b2xkY29uZmZpbGU+IHRvIEk8bmV3Y29uZmZpbGU+ICIKKyJpZiBJPG9sZGNvbmZmaWxlPiBpcyBzdGlsbCBhdmFpbGFibGUuIE9uIGFib3J0LXVwZ3JhZGUvYWJvcnQtaW5zdGFsbCwgdGhlICIKKyJCPHBvc3RybT4gcmVuYW1lcyBJPG9sZGNvbmZmaWxlPkI8LmRwa2ctcmVtb3ZlPiBiYWNrIHRvIEk8b2xkY29uZmZpbGU+IGlmICIKKyJyZXF1aXJlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MTA5CisjLCBuby13cmFwCittc2dpZCAiSU5URUdSQVRJT04gSU4gUEFDS0FHRVMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxMTYKK21zZ2lkICIiCisiR2l2ZW4gdGhhdCBCPGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyPiBpcyB1c2VkIGluIHRoZSBCPHByZWluc3Q+LCB1c2luZyBpdCAiCisidW5jb25kaXRpb25hbGx5IHJlcXVpcmVzIGEgcHJlLWRlcGVuZGVuY3kgdG8gZW5zdXJlIHRoYXQgdGhlIHJlcXVpcmVkICIKKyJ2ZXJzaW9uIG9mIGRwa2cgaGFzIGJlZW4gdW5wYWNrZWQgYmVmb3JlLiBUaGUgcmVxdWlyZWQgdmVyc2lvbiBkZXBlbmRzIG9uICIKKyJ0aGUgY29tbWFuZCB1c2VkLCBmb3IgQjxybV9jb25mZmlsZT4gYW5kIEI8bXZfY29uZmZpbGU+IGl0IGlzIDEuMTUuNy4yOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjExOAorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPFByZS1EZXBlbmRzOj4gRTxsdD5wYWNrYWdlIGxpc3RFPGd0PiIKK21zZ2lkICIgICAgQjxQcmUtRGVwZW5kczo+IGRwa2cgKEU8Z3Q+PSAxLjE1LjcuMilcbiIKK21zZ3N0ciAiQjxQcmUtRGVwZW5kczo+IEU8bHQ+Y3NvbWFnIGxpc3RhRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MTIzCittc2dpZCAiIgorIkJ1dCBpbiBtYW55IGNhc2VzIHRoZSBvcGVyYXRpb24gZG9uZSBieSB0aGUgcHJvZ3JhbSBpcyBub3QgY3JpdGljYWwgZm9yIHRoZSAiCisicGFja2FnZSwgYW5kIGluc3RlYWQgb2YgdXNpbmcgYSBwcmUtZGVwZW5kZW5jeSB3ZSBjYW4gY2FsbCB0aGUgcHJvZ3JhbSBvbmx5ICIKKyJpZiB3ZSBrbm93IHRoYXQgdGhlIHJlcXVpcmVkIGNvbW1hbmQgaXMgc3VwcG9ydGVkIGJ5IHRoZSBjdXJyZW50bHkgaW5zdGFsbGVkICIKKyJkcGtnOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjEyNworIywgbm8td3JhcAorbXNnaWQgIiIKKyIgICAgaWYgZHBrZy1tYWludHNjcmlwdC1oZWxwZXIgc3VwcG9ydHMgSTxjb21tYW5kPjsgdGhlblxuIgorIiAgICAgICAgZHBrZy1tYWludHNjcmlwdC1oZWxwZXIgSTxjb21tYW5kPiAuLi5cbiIKKyIgICAgZmlcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjEzMAorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDEwIFJhcGhhXFxbOmVdbCBIZXJ0em9nIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MTMyCittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMDggSm9leSBIZXNzIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MTM0Cittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMDcgR3VpbGxlbSBKb3ZlciIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjEzNgorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDA1IFNjb3R0IEphbWVzIFJlbW5hbnQiCittc2dzdHIgIiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJkcGtnLW1lcmdlY2hhbmdlbG9ncyIKK21zZ3N0ciAiZHBrZy1kZWIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6NAorbXNnaWQgImRwa2ctbWVyZ2VjaGFuZ2Vsb2dzIC0gMy13YXkgbWVyZ2Ugb2YgZGViaWFuL2NoYW5nZWxvZyBmaWxlcyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjgKKyMsIGZ1enp5Cittc2dpZCAiIgorIkI8ZHBrZy1tZXJnZWNoYW5nZWxvZ3M+IFtJPG9wdGlvbj4uLi5dIEk8b2xkPiBJPG5ldy1hPiBJPG5ldy1iPiBbSTxvdXQ+XSIKK21zZ3N0ciAiQjxkcGtnLWRlYj4gQjwtYz58QjwtLWNvbnRlbnRzPiBJPGFyY2jDrXZ1bT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6MTUKK21zZ2lkICIiCisiVGhpcyBwcm9ncmFtIHdpbGwgdXNlIHRoZSAzIHByb3ZpZGVkIHZlcnNpb25zIG9mIHRoZSBEZWJpYW4gY2hhbmdlbG9nIHRvICIKKyJnZW5lcmF0ZSBhIG1lcmdlZCBjaGFuZ2Vsb2cgZmlsZS4gVGhlIHJlc3VsdGluZyBjaGFuZ2Vsb2cgaXMgc3RvcmVkIGluIHRoZSAiCisiZmlsZSBJPG91dD4gb3Igb3V0cHV0IHRvIHRoZSBzdGFuZGFyZCBvdXRwdXQgaWYgdGhhdCBwYXJhbWV0ZXIgaXMgbm90IGdpdmVuLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjI2Cittc2dpZCAiIgorIkVhY2ggZW50cnkgaXMgaWRlbnRpZmllZCBieSBpdHMgdmVyc2lvbiBudW1iZXIgYW5kIHRoZXkgYXJlIGFzc3VtZWQgdG8gYmUgIgorIm5vdCBjb25mbGljdGluZywgdGhleSBhcmUgc2ltcGx5IG1lcmdlZCBpbiB0aGUgcmlnaHQgb3JkZXIgKGJ5IGRlY3JlYXNpbmcgIgorInZlcnNpb24gbnVtYmVyKS4gV2hlbiBCPC0tbWVyZ2UtcHJlcmVsZWFzZXM+IGlzIHVzZWQsIHRoZSBwYXJ0IG9mIHRoZSAiCisidmVyc2lvbiBudW1iZXIgYWZ0ZXIgdGhlIGxhc3QgdGlsZGUgaXMgZHJvcHBlZCBzbyB0aGF0IDEuMC0xfmV4cDEgYW5kICIKKyIxLjAtMX5leHA1IGFyZSBjb25zaWRlcmVkIHRvIGJlIHRoZSBzYW1lIGVudHJ5LiBXaGVuIHRoZSBzYW1lIHZlcnNpb24gaXMgIgorImF2YWlsYWJsZSBpbiBib3RoIEk8bmV3LWE+IGFuZCBJPG5ldy1iPiwgYSBzdGFuZGFyZCBsaW5lLWJhc2VkIDMtd2F5IG1lcmdlICIKKyJpcyBhdHRlbXB0ZWQgKHByb3ZpZGVkIHRoYXQgdGhlIG1vZHVsZSBBbGdvcml0aG06Ok1lcmdlIGlzIGF2YWlsYWJsZSBcXFtlbV0gIgorIml0J3MgcGFydCBvZiB0aGUgcGFja2FnZSBsaWJhbGdvcml0aG0tbWVyZ2UtcGVybCBcXFtlbV0gb3RoZXJ3aXNlIHlvdSBnZXQgYSAiCisiZ2xvYmFsIGNvbmZsaWN0IG9uIHRoZSBjb250ZW50IG9mIHRoZSBlbnRyeSkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjI4CisjLCBuby13cmFwCittc2dpZCAiQjwtLW1lcmdlLXByZXJlbGVhc2VzPiwgQjwtbT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTozMworbXNnaWQgIiIKKyJEcm9wIHRoZSBwYXJ0IGFmdGVyIHRoZSBsYXN0IHRpbGRlIGluIHRoZSB2ZXJzaW9uIG51bWJlciB3aGVuIGRvaW5nIHZlcnNpb24gIgorImNvbXBhcmlzb24gdG8gaWRlbnRpZnkgaWYgdHdvIGVudHJpZXMgYXJlIHN1cHBvc2VkIHRvIGJlIHRoZSBzYW1lIG9yIG5vdC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTozOAorbXNnaWQgIiIKKyJUaGlzIGlzIHVzZWZ1bCB3aGVuIHlvdSBrZWVwIHVzaW5nIHRoZSBzYW1lIGNoYW5nZWxvZyBlbnRyeSBidXQgeW91IGluY3JlYXNlICIKKyJpdHMgdmVyc2lvbiBudW1iZXIgcmVndWxhcmx5LiBGb3IgaW5zdGFuY2UsIHlvdSBtaWdodCBoYXZlIDIuMy0xfmV4cDEsICIKKyIyLjMtMX5leHAyLCAuLi4gdW50aWwgdGhlIG9mZmljaWFsIHJlbGVhc2UgMi4zLTEgYW5kIHRoZXkgYXJlIGFsbCB0aGUgc2FtZSAiCisiY2hhbmdlbG9nIGVudHJ5IHRoYXQgaGFzIGV2b2x2ZWQgb3ZlciB0aW1lLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTo0NQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJMSU1JVEFUSU9OUyIKK21zZ3N0ciAiTcWwVkVMRVRJIExFSEVUxZBTw4lHRUsiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6NTAKK21zZ2lkICIiCisiQW55dGhpbmcgdGhhdCBpcyBub3QgcGFyc2VkIGJ5IERwa2c6OkNoYW5nZWxvZyBpcyBsb3N0IGR1cmluZyB0aGUgbWVyZ2UuICAiCisiVGhpcyBtaWdodCBpbmNsdWRlIHN0dWZmIGxpa2UgdmltIG1vZGVsaW5lcywgY29tbWVudHMgd2hpY2ggd2VyZSBub3QgIgorInN1cHBvc2VkIHRvIGJlIHRoZXJlLCBldGMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjUxCisjLCBuby13cmFwCittc2dpZCAiSU5URUdSQVRJT04gV0lUSCBHSVQiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTo1NgorbXNnaWQgIiIKKyJJZiB5b3Ugd2FudCB0byB1c2UgdGhpcyBwcm9ncmFtIHRvIG1lcmdlIERlYmlhbiBjaGFuZ2Vsb2cgZmlsZXMgaW4gYSBnaXQgIgorInJlcG9zaXRvcnksIHlvdSBoYXZlIGZpcnN0IHRvIHJlZ2lzdGVyIGEgbmV3IG1lcmdlIGRyaXZlciBpbiBCPC5naXQvY29uZmlnPiAiCisib3IgQjx+Ly5naXRjb25maWc+OiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjYwCisjLCBuby13cmFwCittc2dpZCAiIgorIiBbbWVyZ2UgXCJkcGtnLW1lcmdlY2hhbmdlbG9nc1wiXVxuIgorIiAgICAgbmFtZSA9IGRlYmlhbi9jaGFuZ2Vsb2cgbWVyZ2UgZHJpdmVyXG4iCisiICAgICBkcml2ZXIgPSBkcGtnLW1lcmdlY2hhbmdlbG9ncyAtbSAlTyAlQSAlQiAlQVxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6NjQKK21zZ2lkICIiCisiVGhlbiB5b3UgaGF2ZSB0byBzZXR1cCB0aGUgbWVyZ2UgYXR0cmlidXRlIGZvciB0aGUgZGViaWFuL2NoYW5nZWxvZyBmaWxlICIKKyJlaXRoZXIgaW4gQjwuZ2l0YXR0cmlidXRlcz4gaW4gdGhlIHJlcG9zaXRvcnkgaXRzZWxmLCBvciBpbiBCPC5naXQvaW5mby8iCisiYXR0cmlidXRlcz46IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6NjYKKyMsIG5vLXdyYXAKK21zZ2lkICIgZGViaWFuL2NoYW5nZWxvZyBtZXJnZT1kcGtnLW1lcmdlY2hhbmdlbG9nc1xuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6NjgKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAwOS0yMDEwIFJhcGhhXFxbOmVdbCBIZXJ0em9nIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLW5hbWUuMTo2CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgImRwa2ctbmFtZSIKK21zZ3N0ciAiZHBrZy1kZWIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbmFtZS4xOjkKK21zZ2lkICJkcGtnLW5hbWUgLSByZW5hbWUgRGViaWFuIHBhY2thZ2VzIHRvIGZ1bGwgcGFja2FnZSBuYW1lcyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW5hbWUuMToxNQorIywgZnV6enkKK21zZ2lkICJCPGRwa2ctbmFtZT4gW0k8b3B0aW9uPi4uLl0gW0I8LS0+XSBJPGZpbGU+Li4uIgorbXNnc3RyICJCPGRwa2ctZGViPiBCPC1jPnxCPC0tY29udGVudHM+IEk8YXJjaMOtdnVtPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6MjkKK21zZ2lkICIiCisiVGhpcyBtYW51YWwgcGFnZSBkb2N1bWVudHMgdGhlIEI8ZHBrZy1uYW1lPiBwcm9ncmFtIHdoaWNoIHByb3ZpZGVzIGFuIGVhc3kgIgorIndheSB0byByZW5hbWUgQjxEZWJpYW4+IHBhY2thZ2VzIGludG8gdGhlaXIgZnVsbCBwYWNrYWdlIG5hbWVzLiBBIGZ1bGwgIgorInBhY2thZ2UgbmFtZSBjb25zaXN0cyBvZiBJPHBhY2thZ2U+QjxfPkk8dmVyc2lvbj5CPF8+STxhcmNoaXRlY3R1cmU+QjwuIgorIj5JPHBhY2thZ2UtdHlwZT4gYXMgc3BlY2lmaWVkIGluIHRoZSBjb250cm9sIGZpbGUgb2YgdGhlIHBhY2thZ2UuIFRoZSAiCisiSTx2ZXJzaW9uPiBwYXJ0IG9mIHRoZSBmaWxlbmFtZSBjb25zaXN0cyBvZiB0aGUgdXBzdHJlYW0gdmVyc2lvbiBpbmZvcm1hdGlvbiAiCisib3B0aW9uYWxseSBmb2xsb3dlZCBieSBhIGh5cGhlbiBhbmQgdGhlIHJldmlzaW9uIGluZm9ybWF0aW9uLiBUaGUgSTxwYWNrYWdlLSIKKyJ0eXBlPiBwYXJ0IGNvbWVzIGZyb20gdGhhdCBmaWVsZCBpZiBwcmVzZW50IG9yIGZhbGxiYWNrcyB0byBCPGRlYj4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLW5hbWUuMTozMQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1hPiwgQjwtLW5vLWFyY2hpdGVjdHVyZT4iCittc2dzdHIgIkI8LS1ub2NoZWNrPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6MzQKK21zZ2lkICJUaGUgZGVzdGluYXRpb24gZmlsZW5hbWUgd2lsbCBub3QgaGF2ZSB0aGUgYXJjaGl0ZWN0dXJlIGluZm9ybWF0aW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1uYW1lLjE6MzQKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtaz4sIEI8LS1zeW1saW5rPiIKK21zZ3N0ciAiQjwtLXZlcnNpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW5hbWUuMTozNworbXNnaWQgIkNyZWF0ZSBhIHN5bWxpbmssIGluc3RlYWQgb2YgbW92aW5nLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1uYW1lLjE6MzcKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtbz4sIEI8LS1vdmVyd3JpdGU+IgorbXNnc3RyICJCPC0tdmVyc2lvbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbmFtZS4xOjQxCittc2dpZCAiIgorIkV4aXN0aW5nIGZpbGVzIHdpbGwgYmUgb3ZlcndyaXR0ZW4gaWYgdGhleSBoYXZlIHRoZSBzYW1lIG5hbWUgYXMgdGhlICIKKyJkZXN0aW5hdGlvbiBmaWxlbmFtZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctbmFtZS4xOjQxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LXM+LCBCPC0tc3ViZGlyPiBbSTxkaXI+XSIKK21zZ3N0ciAiQjwtLXNob3c+LCBCPC1XPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6NTMKK21zZ2lkICIiCisiRmlsZXMgd2lsbCBiZSBtb3ZlZCBpbnRvIGEgc3ViZGlyZWN0b3J5LiBJZiB0aGUgZGlyZWN0b3J5IGdpdmVuIGFzIGFyZ3VtZW50ICIKKyJleGlzdHMgdGhlIGZpbGVzIHdpbGwgYmUgbW92ZWQgaW50byB0aGF0IGRpcmVjdG9yeSBvdGhlcndpc2UgdGhlIG5hbWUgb2YgdGhlICIKKyJ0YXJnZXQgZGlyZWN0b3J5IGlzIGV4dHJhY3RlZCBmcm9tIHRoZSBzZWN0aW9uIGZpZWxkIGluIHRoZSBjb250cm9sIHBhcnQgb2YgIgorInRoZSBwYWNrYWdlLiBUaGUgdGFyZ2V0IGRpcmVjdG9yeSB3aWxsIGJlIGB1bnN0YWJsZS9iaW5hcnktSTxhcmNoaXRlY3R1cmU+LyIKKyJJPHNlY3Rpb24+Jy4gSWYgdGhlIHNlY3Rpb24gaXMgbm90IGZvdW5kIGluIHRoZSBjb250cm9sLCB0aGVuIGBuby1zZWN0aW9uJyAiCisiaXMgYXNzdW1lZCwgYW5kIGluIHRoaXMgY2FzZSwgYXMgd2VsbCBhcyBmb3Igc2VjdGlvbnMgYG5vbi1mcmVlJyBhbmQgIgorImBjb250cmliJyB0aGUgdGFyZ2V0IGRpcmVjdG9yeSBpcyBgSTxzZWN0aW9uPi9iaW5hcnktSTxhcmNoaXRlY3R1cmU+Jy4gVGhlICIKKyJzZWN0aW9uIGZpZWxkIGlzbid0IHJlcXVpcmVkIHNvIGEgbG90IG9mIHBhY2thZ2VzIHdpbGwgZmluZCB0aGVpciB3YXkgdG8gdGhlICIKKyJgbm8tc2VjdGlvbicgYXJlYS4gVXNlIHRoaXMgb3B0aW9uIHdpdGggY2FyZSwgaXQncyBtZXNzeS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctbmFtZS4xOjUzCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LWM+LCBCPC0tY3JlYXRlLWRpcj4iCittc2dzdHIgIkI8LS1pbmZvPiwgQjwtST4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbmFtZS4xOjU4Cittc2dpZCAiIgorIlRoaXMgb3B0aW9uIGNhbiB1c2VkIHRvZ2V0aGVyIHdpdGggdGhlIC1zIG9wdGlvbi4gSWYgYSB0YXJnZXQgZGlyZWN0b3J5ICIKKyJpc24ndCBmb3VuZCBpdCB3aWxsIGJlIGNyZWF0ZWQgYXV0b21hdGljYWxseS4gIEI8VXNlIHRoaXMgb3B0aW9uIHdpdGggY2FyZS4+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLW5hbWUuMTo2MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC12PiwgQjwtLXZlcnNpb24+IgorbXNnc3RyICJCPC0tdmVyc2lvbj4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLW5hbWUuMTo2NgorIywgbm8td3JhcAorbXNnaWQgIkI8ZHBrZy1uYW1lIGJhci1mb28uZGViPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW5hbWUuMTo3MQorbXNnaWQgIiIKKyJUaGUgZmlsZSBgYmFyLWZvby5kZWInIHdpbGwgYmUgcmVuYW1lZCB0byBiYXItZm9vXzEuMC0yX2kzODYuZGViIG9yICIKKyJzb21ldGhpbmcgc2ltaWxhciAoZGVwZW5kaW5nIG9uIHdoYXRldmVyIGluZm9ybWF0aW9uIGlzIGluIHRoZSBjb250cm9sIHBhcnQgIgorIm9mIGBiYXItZm9vLmRlYicpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1uYW1lLjE6NzEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGZpbmQgL3Jvb3QvZGViaWFuLyAtbmFtZSBcXChhcSouZGViXFwoYXEgfCB4YXJncyAtbiAxIGRwa2ctbmFtZSAtYT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6NzYKK21zZ2lkICIiCisiQWxsIGZpbGVzIHdpdGggdGhlIGV4dGVuc2lvbiBgZGViJyBpbiB0aGUgZGlyZWN0b3J5IC9yb290L2RlYmlhbiBhbmQgaXRzICIKKyJzdWJkaXJlY3RvcnkncyB3aWxsIGJlIHJlbmFtZWQgYnkgZHBrZy1uYW1lIGlmIHJlcXVpcmVkIGludG8gbmFtZXMgd2l0aCBubyAiCisiYXJjaGl0ZWN0dXJlIGluZm9ybWF0aW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1uYW1lLjE6NzYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGZpbmQgLW5hbWUgXFwoYXEqLmRlYlxcKGFxIHwgeGFyZ3MgLW4gMSBkcGtnLW5hbWUgLWEgLW8gLXMgLWM+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbmFtZS4xOjgyCittc2dpZCAiIgorIkI8RG9uJ3QgZG8gdGhpcy4+IFlvdXIgYXJjaGl2ZSB3aWxsIGJlIG1lc3NlZCB1cCBjb21wbGV0ZWx5IGJlY2F1c2UgYSBsb3Qgb2YgIgorInBhY2thZ2VzIGRvbid0IGNvbWUgd2l0aCBzZWN0aW9uIGluZm9ybWF0aW9uLiAgQjxEb24ndCBkbyB0aGlzLj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctbmFtZS4xOjgyCisjLCBuby13cmFwCittc2dpZCAiQjxkcGtnIC0tYnVpbGQgZGViaWFuLXRtcCAmJiBkcGtnLW5hbWUgLW8gLXMgLi4gZGViaWFuLXRtcC5kZWI+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbmFtZS4xOjg1Cittc2dpZCAiVGhpcyBjYW4gYmUgdXNlZCB3aGVuIGJ1aWxkaW5nIG5ldyBwYWNrYWdlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6OTUKK21zZ2lkICIiCisiU29tZSBwYWNrYWdlcyBkb24ndCBmb2xsb3cgdGhlIG5hbWUgc3RydWN0dXJlICIKKyJJPHBhY2thZ2U+QjxfPkk8dmVyc2lvbj5CPF8+STxhcmNoaXRlY3R1cmU+QjwuZGViPi4gIFBhY2thZ2VzIHJlbmFtZWQgYnkgIgorImRwa2ctbmFtZSB3aWxsIGZvbGxvdyB0aGlzIHN0cnVjdHVyZS4gR2VuZXJhbGx5IHRoaXMgd2lsbCBoYXZlIG5vIGltcGFjdCBvbiAiCisiaG93IHBhY2thZ2VzIGFyZSBpbnN0YWxsZWQgYnkgQjxkc2VsZWN0PigxKS9CPGRwa2c+KDEpLCBidXQgb3RoZXIgIgorImluc3RhbGxhdGlvbiB0b29scyBtaWdodCBkZXBlbmQgb24gdGhpcyBuYW1pbmcgc3RydWN0dXJlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW5hbWUuMToxMDMKKyMsIGZ1enp5Cittc2dpZCAiIgorIkI8ZGViPig1KSwgQjxkZWItY29udHJvbD4oNSksIEI8ZHBrZz4oMSksIEI8ZHBrZy1kZWI+KDEpLCBCPGZpbmQ+KDEpLCAiCisiQjx4YXJncz4oMSkuIgorbXNnc3RyICJCPGRlYj4oNSksIEI8ZGViLWNvbnRyb2w+KDUpLCBCPGRwa2c+KDEpLCBCPGRzZWxlY3Q+KDEpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6MTA2Cittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDE5OTUsMTk5NiBFcmljayBCcmFuZGVyaG9yc3QiCittc2dzdHIgIiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxCisjLCBuby13cmFwCittc2dpZCAiZHBrZy1wYXJzZWNoYW5nZWxvZyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6NAorbXNnaWQgImRwa2ctcGFyc2VjaGFuZ2Vsb2cgLSBwYXJzZSBEZWJpYW4gY2hhbmdlbG9nIGZpbGVzIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo4CisjLCBmdXp6eQorbXNnaWQgIkI8ZHBrZy1wYXJzZWNoYW5nZWxvZz4gW0k8b3B0aW9uPi4uLl0iCittc2dzdHIgIkI8ZHBrZy1kZWI+IEI8LWM+fEI8LS1jb250ZW50cz4gSTxhcmNow612dW0+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTQKK21zZ2lkICIiCisiQjxkcGtnLXBhcnNlY2hhbmdlbG9nPiByZWFkcyBhbmQgcGFyc2VzIHRoZSBjaGFuZ2Vsb2cgb2YgYW4gdW5wYWNrZWQgRGViaWFuICIKKyJzb3VyY2UgdHJlZSBhbmQgb3V0cHV0cyB0aGUgaW5mb3JtYXRpb24gaW4gaXQgdG8gc3RhbmRhcmQgb3V0cHV0IGluIGEgIgorIm1hY2hpbmUtcmVhZGFibGUgZm9ybS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToyNgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1MPkk8bGliZGlyPiIKK21zZ3N0ciAiQjwtLWZpZWxkPiwgQjwtZj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTozMworbXNnaWQgIiIKKyJTcGVjaWZ5IGFuIGFkZGl0aW9uYWwgZGlyZWN0b3J5IHRvIHNlYXJjaCBmb3IgcGFyc2VyIHNjcmlwdHMuICBUaGlzICIKKyJkaXJlY3RvcnkgaXMgc2VhcmNoZWQgYmVmb3JlIHRoZSBkZWZhdWx0IGRpcmVjdG9yaWVzIHdoaWNoIGFyZSBjdXJyZW50bHkgQjwvIgorInVzci9sb2NhbC9saWIvZHBrZy9wYXJzZWNoYW5nZWxvZz4gYW5kIEI8L3Vzci9saWIvZHBrZy9wYXJzZWNoYW5nZWxvZz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MzkKKyMsIG5vLXdyYXAKK21zZ2lkICJQYXJzZXIgT3B0aW9ucyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6NDQKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBvcHRpb25zIGNhbiBiZSB1c2VkIHRvIGluZmx1ZW5jZSB0aGUgb3V0cHV0IG9mIHRoZSBjaGFuZ2Vsb2cgIgorInBhcnNlciwgZS5nLiB0aGUgcmFuZ2Ugb2YgZW50cmllcyBvciB0aGUgZm9ybWF0IG9mIHRoZSBvdXRwdXQuIFRoZXkgbmVlZCB0byAiCisiYmUgc3VwcG9ydGVkIGJ5IHRoZSBwYXJzZXIgc2NyaXB0IGluIHF1ZXN0aW9uLiBTZWUgYWxzbyBCPENBVkVBVFM+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjQ0CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1mb3JtYXQ+STwgb3V0cHV0Zm9ybWF0PiIKK21zZ3N0ciAiQjwtLXNob3dmb3JtYXQ9Pkk8Zm9ybcOhdHVtPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjUzCittc2dpZCAiIgorIlNldCB0aGUgb3V0cHV0IGZvcm1hdC4gQ3VycmVudGx5IHN1cHBvcnRlZCB2YWx1ZXMgYXJlIEk8ZHBrZz4gYW5kICIKKyJJPHJmYzgyMj4uICBJPGRwa2c+IGlzIHRoZSBjbGFzc2ljIG91dHB1dCBmb3JtYXQgKGZyb20gYmVmb3JlIHRoaXMgb3B0aW9uICIKKyJleGlzdGVkKSBhbmQgdGhlIGRlZmF1bHQuIEl0IGNvbnNpc3RzIG9mIG9uZSBwYXJhZ3JhcGggaW4gRGViaWFuIGNvbnRyb2wgIgorImZvcm1hdCAoc2VlIEI8ZGViLWNvbnRyb2w+KDUpKS4gSWYgbW9yZSB0aGFuIG9uZSBlbnRyeSBpcyByZXF1ZXN0ZWQsIHRoZW4gIgorIm1vc3QgZmllbGRzIGFyZSB0YWtlbiBmcm9tIHRoZSBsYXRlc3QgZW50cnksIGV4Y2VwdCBvdGhlcndpc2Ugc3RhdGVkOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjU0CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8U291cmNlOj5JPCBwa2ctbmFtZT4iCittc2dzdHIgIkI8U291cmNlOj4gRTxsdD5mb3Jyw6FzIG7DqXZFPGd0PiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo1NgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPFZlcnNpb246Pkk8IHZlcnNpb24+IgorbXNnc3RyICJCPFZlcnNpb246PiBFPGx0PnZlcnppw7NFPGd0PiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo1OAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPERpc3RyaWJ1dGlvbjo+STwgdGFyZ2V0LWRpc3RyaWJ1dGlvbj4iCittc2dzdHIgIkI8RGVzY3JpcHRpb246PiBFPGx0PnLDtnZpZCBsZcOtcsOhc0U8Z3Q+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjYwCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8VXJnZW5jeTo+STwgdXJnZW5jeT4iCittc2dzdHIgIkI8UmVwbGFjZXM6PiBFPGx0PmNzb21hZyBsaXN0YUU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6NjMKK21zZ2lkICJUaGUgaGlnaGVzdCB1cmdlbmN5IG9mIGFsbCBpbmNsdWRlZCBlbnRyaWVzIGlzIHVzZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6NjMKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxNYWludGFpbmVyOj5JPCBhdXRob3I+IgorbXNnc3RyICJCPE1haW50YWluZXI6PiBFPGx0PnRlbGplcy5uw6l2IGVtYWlsRTxndD4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6NjUKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxEYXRlOj5JPCBkYXRlPiIKK21zZ3N0ciAiQjxSZXBsYWNlczo+IEU8bHQ+Y3NvbWFnIGxpc3RhRTxndD4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6NjcKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxDbG9zZXM6Pkk8IGJ1Zy1udW1iZXI+IgorbXNnc3RyICJCPFNvdXJjZTo+IEU8bHQ+Zm9ycsOhcyBuw6l2RTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo3MAorbXNnaWQgIlRoZSBDbG9zZXMgZmllbGRzIG9mIGFsbCBpbmNsdWRlZCBlbnRyaWVzIGFyZSBtZXJnZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6NzAKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxDaGFuZ2VzOj5JPCBjaGFuZ2Vsb2ctZW50cmllcz4iCittc2dzdHIgIkI8UGFja2FnZTo+IEU8bHQ+Y3NvbWFnIG7DqXZFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjc3Cittc2dpZCAiIgorIlRoZSB0ZXh0IG9mIGFsbCBjaGFuZ2Vsb2cgZW50cmllcyBpcyBjb25jYXRlbmF0ZWQuIFRvIG1ha2UgdGhpcyBmaWVsZCBhICIKKyJ2YWxpZCBEZWJpYW4gY29udHJvbCBmb3JtYXQgbXVsdGlsaW5lIGZpZWxkIGVtcHR5IGxpbmVzIGFyZSByZXBsYWNlZCB3aXRoIGEgIgorInNpbmdsZSBmdWxsIHN0b3AgYW5kIGFsbCBsaW5lcyBpcyBpbnRlbmRlZCBieSBvbmUgc3BhY2UgY2hhcmFjdGVyLiBUaGUgZXhhY3QgIgorImNvbnRlbnQgZGVwZW5kcyBvbiB0aGUgY2hhbmdlbG9nIGZvcm1hdC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjgwCittc2dpZCAiVGhlcmUgbWlnaHQgYmUgYWRkaXRpb25hbCB1c2VyLWRlZmluZWQgZmllbGRzIHByZXNlbnQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo4NAorbXNnaWQgIiIKKyJUaGUgQjxyZmM4MjI+IGZvcm1hdCB1c2VzIHRoZSBzYW1lIGZpZWxkcyBidXQgb3V0cHV0cyBhIHNlcGFyYXRlIHBhcmFncmFwaCAiCisiZm9yIGVhY2ggY2hhbmdlbG9nIGVudHJ5IHNvIHRoYXQgYWxsIG1ldGFkYXRhIGZvciBlYWNoIGVudHJ5IGlzIHByZXNlcnZlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo4NAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tc2luY2U+IEk8dmVyc2lvbj4sIEI8LXM+STx2ZXJzaW9uPixCPCAtdj5JPHZlcnNpb24+IgorbXNnc3RyICJCPC0tc2hvdz4sIEI8LVc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6ODcKK21zZ2lkICJpbmNsdWRlIGFsbCBjaGFuZ2VzIGxhdGVyIHRoYW4gSTx2ZXJzaW9uPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo4NworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tdW50aWw+IEk8dmVyc2lvbj4sIEI8LXU+STx2ZXJzaW9uPiIKK21zZ3N0ciAiQjwtLXZlcnNpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6OTAKK21zZ2lkICJpbmNsdWRlIGFsbCBjaGFuZ2VzIGVhcmxpZXIgdGhhbiBJPHZlcnNpb24+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjkwCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1mcm9tPiBJPHZlcnNpb24+LCBCPC1mPkk8dmVyc2lvbj4iCittc2dzdHIgIkI8LS12ZXJzaW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjkzCittc2dpZCAiaW5jbHVkZSBhbGwgY2hhbmdlcyBlcXVhbCBvciBsYXRlciB0aGFuIEk8dmVyc2lvbj4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6OTMKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLXRvPiBJPHZlcnNpb24+LCBCPC10Pkk8dmVyc2lvbj4iCittc2dzdHIgIkI8LS12ZXJzaW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjk2Cittc2dpZCAiaW5jbHVkZSBhbGwgY2hhbmdlcyB1cCB0byBvciBlcXVhbCB0aGFuIEk8dmVyc2lvbj4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6OTYKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWNvdW50PiBJPG51bWJlcj4sIEI8LWM+STxudW1iZXI+LCBCPC1uPkk8bnVtYmVyPiIKK21zZ3N0ciAiQjwtLXNob3c+LCBCPC1XPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjEwMAorbXNnaWQgIiIKKyJpbmNsdWRlIEk8bnVtYmVyPiBlbnRyaWVzIGZyb20gdGhlIHRvcCAob3IgdGhlIHRhaWwgaWYgSTxudW1iZXI+IGlzIGxvd2VyICIKKyJ0aGFuIDApLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjEwMAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tb2Zmc2V0PiBJPG51bWJlcj4sIEI8LW8+STxudW1iZXI+IgorbXNnc3RyICJCPC0taW5mbz4sIEI8LUk+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTA0Cittc2dpZCAiIgorImNoYW5nZSB0aGUgc3RhcnRpbmcgcG9pbnQgZm9yIC0tY291bnQsIGNvdW50ZWQgZnJvbSB0aGUgdG9wIChvciB0aGUgdGFpbCBpZiAiCisiSTxudW1iZXI+IGlzIGxvd2VyIHRoYW4gMCkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTA0IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyNjgKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWFsbD4iCittc2dzdHIgIkI8LS1vbGQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTA4Cittc2dpZCAiIgorImluY2x1ZGUgYWxsIGNoYW5nZXMuIE5vdGU6IG90aGVyIG9wdGlvbnMgaGF2ZSBubyBlZmZlY3Qgd2hlbiB0aGlzIGlzIGluIHVzZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjExNAorbXNnaWQgIiIKKyJBbGwgQjxQYXJzZXIgT3B0aW9ucz4gZXhjZXB0IGZvciAtdiBhcmUgb25seSBzdXBwb3J0ZWQgaW4gQjxkcGtnPiwgdmVyc2lvbiAiCisiMS4xNC4xNiBhbmQgbGF0ZXIuIFRoaXJkIHBhcnR5IHBhcnNlcnMgZm9yIGNoYW5nZWxvZyBmb3JtYXRzIG90aGVyIHRoYW4gIgorIkk8ZGViaWFuPiBtaWdodCBub3Qgc3VwcG9ydCBhbGwgb3B0aW9ucy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxMTYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGRlYmlhbi9jaGFuZ2Vsb2c+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxMjIKK21zZ2lkICIiCisiVGhlIGNoYW5nZWxvZyBmaWxlLCB1c2VkIHRvIG9idGFpbiB2ZXJzaW9uLWRlcGVuZGVudCBpbmZvcm1hdGlvbiBhYm91dCB0aGUgIgorInNvdXJjZSBwYWNrYWdlLCBzdWNoIGFzIHRoZSB1cmdlbmN5IGFuZCBkaXN0cmlidXRpb24gb2YgYW4gdXBsb2FkLCB0aGUgIgorImNoYW5nZXMgbWFkZSBzaW5jZSBhIHBhcnRpY3VsYXIgcmVsZWFzZSwgYW5kIHRoZSBzb3VyY2UgdmVyc2lvbiBudW1iZXIgIgorIml0c2VsZi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjEyOQorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDA3LCAyMDA4IEZyYW5rIExpY2h0ZW5oZWxkIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLXF1ZXJ5LjE6MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJkcGtnLXF1ZXJ5IgorbXNnc3RyICJkcGtnLWRlYiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjQKK21zZ2lkICJkcGtnLXF1ZXJ5IC0gYSB0b29sIHRvIHF1ZXJ5IHRoZSBkcGtnIGRhdGFiYXNlIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMTo4Cittc2dpZCAiQjxkcGtnLXF1ZXJ5PiBbSTxvcHRpb24+Li4uXSBJPGNvbW1hbmQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMToxMgorbXNnaWQgIiIKKyJCPGRwa2ctcXVlcnk+IGlzIGEgdG9vbCB0byBzaG93IGluZm9ybWF0aW9uIGFib3V0IHBhY2thZ2VzIGxpc3RlZCBpbiB0aGUgIgorIkI8ZHBrZz4gZGF0YWJhc2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXF1ZXJ5LjE6MTQKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtbD4sIEI8LS1saXN0PiBbSTxwYWNrYWdlLW5hbWUtcGF0dGVybj4uLi5dIgorbXNnc3RyICJCPGRwa2ctZGViPiBCPC1mPnxCPC0tZmllbGQ+IEk8YXJjaMOtdnVtPiBbSTxlbGxlbsWRcnrFkS1tZXrFkS1uw6l2PiAuLi5dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6MjQKK21zZ2lkICIiCisiTGlzdCBwYWNrYWdlcyBtYXRjaGluZyBnaXZlbiBwYXR0ZXJuLiBJZiBubyBJPHBhY2thZ2UtbmFtZS1wYXR0ZXJuPiBpcyAiCisiZ2l2ZW4sIGxpc3QgYWxsIHBhY2thZ2VzIGluIEk8L3Zhci9saWIvZHBrZy9zdGF0dXM+LCBleGNsdWRpbmcgdGhlIG9uZXMgIgorIm1hcmtlZCBhcyBub3QtaW5zdGFsbGVkIChpLmUuIHRob3NlIHdoaWNoIGhhdmUgYmVlbiBwcmV2aW91c2x5IHB1cmdlZCkuICIKKyJOb3JtYWwgc2hlbGwgd2lsZGNoYXJzIGFyZSBhbGxvd2VkIGluIEk8cGFja2FnZS1uYW1lLXBhdHRlcm4+LiBQbGVhc2Ugbm90ZSAiCisieW91IHdpbGwgcHJvYmFibHkgaGF2ZSB0byBxdW90ZSBJPHBhY2thZ2UtbmFtZS1wYXR0ZXJuPiB0byBwcmV2ZW50IHRoZSBzaGVsbCAiCisiZnJvbSBwZXJmb3JtaW5nIGZpbGVuYW1lIGV4cGFuc2lvbi4gRm9yIGV4YW1wbGUgdGhpcyB3aWxsIGxpc3QgYWxsIHBhY2thZ2UgIgorIm5hbWVzIHN0YXJ0aW5nIHdpdGggYGBsaWJjNicnOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6MjcKKyMsIG5vLXdyYXAKK21zZ2lkICIgIEI8ZHBrZy1xdWVyeSAtbCBcXChhcWxpYmM2KlxcKGFxPlxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMTozMQorbXNnaWQgIiIKKyJUaGUgZmlyc3QgdGhyZWUgY29sdW1ucyBvZiB0aGUgb3V0cHV0IHNob3cgdGhlIGRlc2lyZWQgYWN0aW9uLCB0aGUgcGFja2FnZSAiCisic3RhdHVzLCBhbmQgZXJyb3JzLCBpbiB0aGF0IG9yZGVyLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6MzMKK21zZ2lkICJEZXNpcmVkIGFjdGlvbjoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjM5CisjLCBuby13cmFwCittc2dpZCAiIgorIiAgdSA9IFVua25vd25cbiIKKyIgIGkgPSBJbnN0YWxsXG4iCisiICBoID0gSG9sZFxuIgorIiAgciA9IFJlbW92ZVxuIgorIiAgcCA9IFB1cmdlXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjQyCittc2dpZCAiUGFja2FnZSBzdGF0dXM6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMTo1MQorIywgbm8td3JhcAorbXNnaWQgIiIKKyIgIG4gPSBOb3QtaW5zdGFsbGVkXG4iCisiICBjID0gQ29uZmlnLWZpbGVzXG4iCisiICBIID0gSGFsZi1pbnN0YWxsZWRcbiIKKyIgIFUgPSBVbnBhY2tlZFxuIgorIiAgRiA9IEhhbGYtY29uZmlndXJlZFxuIgorIiAgVyA9IFRyaWdnZXJzLWF3YWl0aW5nXG4iCisiICB0ID0gVHJpZ2dlcnMtcGVuZGluZ1xuIgorIiAgaSA9IEluc3RhbGxlZFxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMTo1NAorbXNnaWQgIkVycm9yIGZsYWdzOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6NTcKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiICBFPGx0PmVtcHR5RTxndD4gPSAobm9uZSlcbiIKKyIgIFIgPSBSZWluc3QtcmVxdWlyZWRcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6NjIKK21zZ2lkICIiCisiQW4gdXBwZXJjYXNlIHN0YXR1cyBvciBlcnJvciBsZXR0ZXIgaW5kaWNhdGVzIHRoZSBwYWNrYWdlIGlzIGxpa2VseSB0byBjYXVzZSAiCisic2V2ZXJlIHByb2JsZW1zLiBQbGVhc2UgcmVmZXIgdG8gQjxkcGtnPigxKSBmb3IgaW5mb3JtYXRpb24gYWJvdXQgdGhlIGFib3ZlICIKKyJzdGF0ZXMgYW5kIGZsYWdzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6NjcKK21zZ2lkICIiCisiVGhlIG91dHB1dCBmb3JtYXQgb2YgdGhpcyBvcHRpb24gaXMgbm90IGNvbmZpZ3VyYWJsZSwgYnV0IHZhcmllcyAiCisiYXV0b21hdGljYWxseSB0byBmaXQgdGhlIHRlcm1pbmFsIHdpZHRoLiBJdCBpcyBpbnRlbmRlZCBmb3IgaHVtYW4gcmVhZGVycywgIgorImFuZCBpcyBub3QgZWFzaWx5IG1hY2hpbmUtcmVhZGFibGUuIFNlZSBCPC1XPiAoQjwtLXNob3c+KSAgYW5kIEI8LS0iCisic2hvd2Zvcm1hdD4gZm9yIGEgd2F5IHRvIGNvbmZpZ3VyZSB0aGUgb3V0cHV0IGZvcm1hdC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcXVlcnkuMTo2NworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1XPiwgQjwtLXNob3c+IFtJPHBhY2thZ2UtbmFtZS1wYXR0ZXJuPi4uLl0iCittc2dzdHIgIkI8ZHBrZy1kZWI+IEI8LWM+fEI8LS1jb250ZW50cz4gSTxhcmNow612dW0+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6NzQKK21zZ2lkICIiCisiSnVzdCBsaWtlIHRoZSBCPC0tbGlzdD4gb3B0aW9uIHRoaXMgd2lsbCBsaXN0IGFsbCBwYWNrYWdlcyBtYXRjaGluZyB0aGUgIgorImdpdmVuIHBhdHRlcm4uIEhvd2V2ZXIgdGhlIG91dHB1dCBjYW4gYmUgY3VzdG9taXplZCB1c2luZyB0aGUgQjwtLSIKKyJzaG93Zm9ybWF0PiBvcHRpb24uICBUaGUgZGVmYXVsdCBvdXRwdXQgZm9ybWF0IGdpdmVzIG9uZSBsaW5lIHBlciBtYXRjaGluZyAiCisicGFja2FnZSwgZWFjaCBsaW5lIGhhdmluZyB0aGUgbmFtZSBhbmQgaW5zdGFsbGVkIHZlcnNpb24gb2YgdGhlIHBhY2thZ2UsICIKKyJzZXBhcmF0ZWQgYnkgYSB0YWIuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXF1ZXJ5LjE6NzQKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtcz4sIEI8LS1zdGF0dXM+IEk8cGFja2FnZS1uYW1lPi4uLiIKK21zZ3N0ciAiQjxkcGtnLWRlYj4gQjwtYz58QjwtLWNvbnRlbnRzPiBJPGFyY2jDrXZ1bT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMTo3OQorbXNnaWQgIiIKKyJSZXBvcnQgc3RhdHVzIG9mIHNwZWNpZmllZCBwYWNrYWdlLiBUaGlzIGp1c3QgZGlzcGxheXMgdGhlIGVudHJ5IGluIHRoZSAiCisiaW5zdGFsbGVkIHBhY2thZ2Ugc3RhdHVzIGRhdGFiYXNlLiBXaGVuIG11bHRpcGxlIEk8cGFja2FnZS1uYW1lPiBhcmUgbGlzdGVkLCAiCisidGhlIHJlcXVlc3RlZCBzdGF0dXMgZW50cmllcyBhcmUgc2VwYXJhdGVkIGJ5IGFuIGVtcHR5IGxpbmUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXF1ZXJ5LjE6NzkKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtTD4sIEI8LS1saXN0ZmlsZXM+IEk8cGFja2FnZS1uYW1lPi4uLiIKK21zZ3N0ciAiQjxkcGtnLWRlYj4gQjwtZj58QjwtLWZpZWxkPiBJPGFyY2jDrXZ1bT4gW0k8ZWxsZW7FkXJ6xZEtbWV6xZEtbsOpdj4gLi4uXSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjg1Cittc2dpZCAiIgorIkxpc3QgZmlsZXMgaW5zdGFsbGVkIHRvIHlvdXIgc3lzdGVtIGZyb20gSTxwYWNrYWdlLW5hbWU+LiBXaGVuIG11bHRpcGxlICIKKyJJPHBhY2thZ2UtbmFtZT4gYXJlIGxpc3RlZCwgdGhlIHJlcXVlc3RlZCBsaXN0cyBvZiBmaWxlcyBhcmUgc2VwYXJhdGVkIGJ5IGFuICIKKyJlbXB0eSBsaW5lLiBIb3dldmVyLCBub3RlIHRoYXQgZmlsZXMgY3JlYXRlZCBieSBwYWNrYWdlLXNwZWNpZmljICIKKyJpbnN0YWxsYXRpb24tc2NyaXB0cyBhcmUgbm90IGxpc3RlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcXVlcnkuMTo4NQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1jPiwgQjwtLWNvbnRyb2wtcGF0aD4gSTxwYWNrYWdlLW5hbWU+IFtJPGNvbnRyb2wtZmlsZT5dIgorbXNnc3RyICJCPGRwa2ctZGViPiBCPC1JPnxCPC0taW5mbz4gSTxhcmNow612dW0+IFtJPGVsbGVuxZFyesWRLWbDoWpsLW7DqXY+IC4uXSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjkzCittc2dpZCAiIgorIkxpc3QgcGF0aHMgZm9yIGNvbnRyb2wgZmlsZXMgaW5zdGFsbGVkIHRvIHlvdXIgc3lzdGVtIGZyb20gSTxwYWNrYWdlLW5hbWU+LiAgIgorIklmIEk8Y29udHJvbC1maWxlPiBpcyBzcGVjaWZpZWQgdGhlbiBvbmx5IGxpc3QgdGhlIHBhdGggZm9yIHRoYXQgY29udHJvbCAiCisiZmlsZSBpZiBpdCBpcyBwcmVzZW50LiBCPFdhcm5pbmc+OiB0aGlzIGNvbW1hbmQgaXMgc2VtaS1wdWJsaWMsIGl0IHNob3VsZCBiZSAiCisidXNlZCBvbmx5IGFzIGEgbGFzdCByZXNvcnQgc29sdXRpb24sIGFuZCBpZiBubyBvdGhlciBpbnRlcmZhY2UgaXMgYXZhaWxhYmxlLiAiCisiSXQgbWlnaHQgZ2V0IGRlcHJlY2F0ZWQgbGF0ZXIgb24gaWYgYmV0dGVyIGludGVyZmFjZXMgb3IgdGhlIGN1cnJlbnQgIgorImFyY2hpdGVjdHVyYWwgZGVmaWNpZW5jaWVzIGhhdmUgYmVlbiBzb2x2ZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXF1ZXJ5LjE6OTMKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtUz4sIEI8LS1zZWFyY2g+IEk8ZmlsZW5hbWUtc2VhcmNoLXBhdHRlcm4+Li4uIgorbXNnc3RyICJCPGRwa2ctZGViPiBCPC1mPnxCPC0tZmllbGQ+IEk8YXJjaMOtdnVtPiBbSTxlbGxlbsWRcnrFkS1tZXrFkS1uw6l2PiAuLi5dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6OTkKK21zZ2lkICIiCisiU2VhcmNoIGZvciBwYWNrYWdlcyB0aGF0IG93biBmaWxlcyBjb3JyZXNwb25kaW5nIHRvIHRoZSBnaXZlbiBwYXR0ZXJuLiAgIgorIlN0YW5kYXJkIHNoZWxsIHdpbGRjaGFycyBjYW4gYmUgdXNlZCBpbiB0aGUgcGF0dGVybi4gIFRoaXMgY29tbWFuZCB3aWxsIG5vdCAiCisibGlzdCBleHRyYSBmaWxlcyBjcmVhdGVkIGJ5IG1haW50YWluZXIgc2NyaXB0cywgbm9yIHdpbGwgaXQgbGlzdCAiCisiYWx0ZXJuYXRpdmVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1xdWVyeS4xOjk5CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LXA+LCBCPC0tcHJpbnQtYXZhaWw+IEk8cGFja2FnZS1uYW1lPi4uLiIKK21zZ3N0ciAiQjxkcGtnLWRlYj4gQjwtST58QjwtLWluZm8+IEk8YXJjaMOtdnVtPiBbSTxlbGxlbsWRcnrFkS1mw6FqbC1uw6l2PiAuLl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMToxMDUKK21zZ2lkICIiCisiRGlzcGxheSBkZXRhaWxzIGFib3V0IEk8cGFja2FnZS1uYW1lPiwgYXMgZm91bmQgaW4gSTwvdmFyL2xpYi9kcGtnLyIKKyJhdmFpbGFibGU+LiBXaGVuIG11bHRpcGxlIEk8cGFja2FnZS1uYW1lPiBhcmUgbGlzdGVkLCB0aGUgcmVxdWVzdGVkICIKKyJJPGF2YWlsYWJsZT4gZW50cmllcyBhcmUgc2VwYXJhdGVkIGJ5IGFuIGVtcHR5IGxpbmUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMToxMTAKK21zZ2lkICIiCisiVXNlcnMgb2YgQVBULWJhc2VkIGZyb250ZW5kcyBzaG91bGQgdXNlIEI8YXB0LWNhY2hlIHNob3c+IEk8cGFja2FnZS1uYW1lPiAiCisiaW5zdGVhZCBhcyB0aGUgSTxhdmFpbGFibGU+IGZpbGUgaXMgb25seSBrZXB0IHVwLXRvLWRhdGUgd2hlbiB1c2luZyAiCisiQjxkc2VsZWN0Pi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcXVlcnkuMToxMjIKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtZj4sIEI8LS1zaG93Zm9ybWF0PT5JPGZvcm1hdD4iCittc2dzdHIgIkI8LS1zaG93Zm9ybWF0PT5JPGZvcm3DoXR1bT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMToxMjkKK21zZ2lkICJJbiB0aGUgZm9ybWF0IHN0cmluZywgXFwobHFCPFxcZT5cXChycSBpbnRyb2R1Y2VzIGVzY2FwZXM6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMToxMzQKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiICAgIEI8XFxlbj4gIG5ld2xpbmVcbiIKKyIgICAgQjxcXGVyPiAgY2FycmlhZ2UgcmV0dXJuXG4iCisiICAgIEI8XFxldD4gIHRhYlxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMToxMzkKK21zZ2lkICIiCisiXFwobHFCPFxcZT5cXChycSBiZWZvcmUgYW55IG90aGVyIGNoYXJhY3RlciBzdXBwcmVzc2VzIGFueSBzcGVjaWFsIG1lYW5pbmcgIgorIm9mIHRoZSBmb2xsb3dpbmcgY2hhcmFjdGVyLCB3aGljaCBpcyB1c2VmdWwgZm9yIFxcKGxxQjxcXGU+XFwocnEgYW5kIFxcKGxxQjwiCisiJD5cXChycS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjE0NworbXNnaWQgIiIKKyJQYWNrYWdlIGluZm9ybWF0aW9uIGNhbiBiZSBpbmNsdWRlZCBieSBpbnNlcnRpbmcgdmFyaWFibGUgcmVmZXJlbmNlcyB0byAiCisicGFja2FnZSBmaWVsZHMgdXNpbmcgdGhlIHN5bnRheCBcXChscUI8JHs+STxmaWVsZD5bQjw7Pkk8d2lkdGg+XUI8fT5cXChycS4gIgorIkZpZWxkcyBhcmUgcHJpbnRlZCByaWdodC1hbGlnbmVkIHVubGVzcyB0aGUgd2lkdGggaXMgbmVnYXRpdmUgaW4gd2hpY2ggY2FzZSAiCisibGVmdCBhbGlnbm1lbnQgd2lsbCBiZSB1c2VkLiBUaGUgZm9sbG93aW5nIEk8ZmllbGQ+cyBhcmUgcmVjb2duaXNlZCBidXQgdGhleSAiCisiYXJlIG5vdCBuZWNlc3NhcmlseSBhdmFpbGFibGUgaW4gdGhlIHN0YXR1cyBmaWxlIChvbmx5IGludGVybmFsIGZpZWxkcyBvciAiCisiZmllbGRzIHN0b3JlZCBpbiB0aGUgYmluYXJ5IHBhY2thZ2UgZW5kIHVwIGluIGl0KToiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjE4MgorIywgbm8td3JhcAorbXNnaWQgIiIKKyIgICAgQjxBcmNoaXRlY3R1cmU+XG4iCisiICAgIEI8QnVncz5cbiIKKyIgICAgQjxDb25mZmlsZXM+IChpbnRlcm5hbClcbiIKKyIgICAgQjxDb25maWctVmVyc2lvbj4gKGludGVybmFsKVxuIgorIiAgICBCPENvbmZsaWN0cz5cbiIKKyIgICAgQjxCcmVha3M+XG4iCisiICAgIEI8RGVwZW5kcz5cbiIKKyIgICAgQjxEZXNjcmlwdGlvbj5cbiIKKyIgICAgQjxFbmhhbmNlcz5cbiIKKyIgICAgQjxFc3NlbnRpYWw+XG4iCisiICAgIEI8RmlsZW5hbWU+IChpbnRlcm5hbCwgZnJvbnQtZW5kIHJlbGF0ZWQpXG4iCisiICAgIEI8SG9tZXBhZ2U+XG4iCisiICAgIEI8SW5zdGFsbGVkLVNpemU+XG4iCisiICAgIEI8TUQ1c3VtPiAoaW50ZXJuYWwsIGZyb250LWVuZCByZWxhdGVkKVxuIgorIiAgICBCPE1TRE9TLUZpbGVuYW1lPiAoaW50ZXJuYWwsIGZyb250LWVuZCByZWxhdGVkKVxuIgorIiAgICBCPE1haW50YWluZXI+XG4iCisiICAgIEI8T3JpZ2luPlxuIgorIiAgICBCPFBhY2thZ2U+XG4iCisiICAgIEI8UHJlLURlcGVuZHM+XG4iCisiICAgIEI8UHJpb3JpdHk+XG4iCisiICAgIEI8UHJvdmlkZXM+XG4iCisiICAgIEI8UmVjb21tZW5kcz5cbiIKKyIgICAgQjxSZXBsYWNlcz5cbiIKKyIgICAgQjxSZXZpc2lvbj4gKG9ic29sZXRlKVxuIgorIiAgICBCPFNlY3Rpb24+XG4iCisiICAgIEI8U2l6ZT4gKGludGVybmFsLCBmcm9udC1lbmQgcmVsYXRlZClcbiIKKyIgICAgQjxTb3VyY2U+XG4iCisiICAgIEI8U3RhdHVzPiAoaW50ZXJuYWwpXG4iCisiICAgIEI8U3VnZ2VzdHM+XG4iCisiICAgIEI8VGFnPiAodXN1YWxseSBub3QgaW4gdGhlIC5kZWIgYnV0IGluIHRoZSByZXBvc2l0b3J5IFBhY2thZ2VzIGZpbGVzKVxuIgorIiAgICBCPFRyaWdnZXJzLUF3YWl0ZWQ+IChpbnRlcm5hbClcbiIKKyIgICAgQjxUcmlnZ2Vycy1QZW5kaW5nPiAoaW50ZXJuYWwpXG4iCisiICAgIEI8VmVyc2lvbj5cbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6MTkwCittc2dpZCAiIgorIlRoZSBkZWZhdWx0IGZvcm1hdCBzdHJpbmcgaXMgXFwobHFCPCR7UGFja2FnZX1cXGV0JHtWZXJzaW9ufVxcZW4+XFwocnEuICAiCisiQWN0dWFsbHksIGFsbCBvdGhlciBmaWVsZHMgZm91bmQgaW4gdGhlIHN0YXR1cyBmaWxlIChpLmUuIHVzZXIgZGVmaW5lZCAiCisiZmllbGRzKSBjYW4gYmUgcmVxdWVzdGVkLCB0b28uIFRoZXkgd2lsbCBiZSBwcmludGVkIGFzLWlzLCB0aG91Z2gsIG5vICIKKyJjb252ZXJzaW9uIG5vciBlcnJvciBjaGVja2luZyBpcyBkb25lIG9uIHRoZW0uICBUbyBnZXQgdGhlIG5hbWUgb2YgdGhlIGRwa2cgIgorIm1haW50YWluZXIgYW5kIHRoZSBpbnN0YWxsZWQgdmVyc2lvbiwgeW91IGNvdWxkIHJ1bjoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjE5MworIywgbm8td3JhcAorbXNnaWQgIiAgQjxkcGtnLXF1ZXJ5IC1XIC1mPVxcKGFxJHtQYWNrYWdlfSAke1ZlcnNpb259XFxldCR7TWFpbnRhaW5lcn1cXGVuXFwoYXEgZHBrZz5cbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1xdWVyeS4xOjE5NSBkcGtnLXNwbGl0LjE6MTc5IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjU5CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6Mzc0CisjLCBuby13cmFwCittc2dpZCAiRVhJVCBTVEFUVVMiCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcXVlcnkuMToxOTYgZHBrZy1zcGxpdC4xOjE4MCBzdGFydC1zdG9wLWRhZW1vbi44OjI2MAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyODkgdXBkYXRlLWFsdGVybmF0aXZlcy44OjM3NQorIywgbm8td3JhcAorbXNnaWQgIkI8MD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjE5OQorbXNnaWQgIlRoZSByZXF1ZXN0ZWQgcXVlcnkgd2FzIHN1Y2Nlc3NmdWxseSBwZXJmb3JtZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXF1ZXJ5LjE6MTk5IGRwa2ctc3BsaXQuMToxODYgc3RhcnQtc3RvcC1kYWVtb24uODoyNzAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjkyCisjLCBuby13cmFwCittc2dpZCAiQjwxPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6MjAzCittc2dpZCAiIgorIlByb2JsZW1zIHdlcmUgZW5jb3VudGVyZWQgd2hpbGUgcGFyc2luZyB0aGUgY29tbWFuZCBsaW5lIG9yIHBlcmZvcm1pbmcgdGhlICIKKyJxdWVyeSwgaW5jbHVkaW5nIG5vIGZpbGUgb3IgcGFja2FnZSBiZWluZyBmb3VuZCAoZXhjZXB0IGZvciAtLWNvbnRyb2wtcGF0aCkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMToyMTMKK21zZ2lkICIiCisiVGhpcyBzZXR0aW5nIGluZmx1ZW5jZXMgdGhlIG91dHB1dCBvZiB0aGUgQjwtLWxpc3Q+IG9wdGlvbiBieSBjaGFuZ2luZyB0aGUgIgorIndpZHRoIG9mIGl0cyBvdXRwdXQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMToyMTYKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAwMSBXaWNoZXJ0IEFra2VybWFuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjE1CisjLCBuby13cmFwCittc2dpZCAiZHBrZy1zY2FucGFja2FnZXMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2FucGFja2FnZXMuMToxOAorbXNnaWQgImRwa2ctc2NhbnBhY2thZ2VzIC0gY3JlYXRlIFBhY2thZ2VzIGluZGV4IGZpbGVzIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6MjYKK21zZ2lkICIiCisiQjxkcGtnLXNjYW5wYWNrYWdlcz4gW0k8b3B0aW9uPi4uLl0gSTxiaW5hcnktZGlyPiBbSTxvdmVycmlkZS1maWxlPiBbSTxwYXRoLSIKKyJwcmVmaXg+XV0gQjxFPGd0Pj4gSTxQYWNrYWdlcz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2FucGFja2FnZXMuMTozOQorbXNnaWQgIiIKKyJCPGRwa2ctc2NhbnBhY2thZ2VzPiBzb3J0cyB0aHJvdWdoIGEgdHJlZSBvZiBEZWJpYW4gYmluYXJ5IHBhY2thZ2VzIGFuZCAiCisiY3JlYXRlcyBhIFBhY2thZ2VzIGZpbGUsIHVzZWQgYnkgQjxhcHQ+KDgpLCBCPGRzZWxlY3Q+KDEpLCBldGMsIHRvIHRlbGwgdGhlICIKKyJ1c2VyIHdoYXQgcGFja2FnZXMgYXJlIGF2YWlsYWJsZSBmb3IgaW5zdGFsbGF0aW9uLiBUaGVzZSBQYWNrYWdlcyBmaWxlcyBhcmUgIgorInRoZSBzYW1lIGFzIHRob3NlIGZvdW5kIG9uIERlYmlhbiBhcmNoaXZlIHNpdGVzIGFuZCBDRC1ST01zLiBZb3UgbWlnaHQgdXNlICIKKyJCPGRwa2ctc2NhbnBhY2thZ2VzPiB5b3Vyc2VsZiBpZiBtYWtpbmcgYSBkaXJlY3Rvcnkgb2YgbG9jYWwgcGFja2FnZXMgdG8gIgorImluc3RhbGwgb24gYSBjbHVzdGVyIG9mIG1hY2hpbmVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjUxCittc2dpZCAiIgorIkI8Tm90ZTo+IElmIHlvdSB3YW50IHRvIGFjY2VzcyB0aGUgZ2VuZXJhdGVkIFBhY2thZ2VzIGZpbGUgd2l0aCBCPGFwdD4geW91ICIKKyJ3aWxsIHByb2JhYmx5IG5lZWQgdG8gY29tcHJlc3MgdGhlIGZpbGUgd2l0aCBCPGJ6aXAyPigxKSAgKGdlbmVyYXRpbmcgYSAiCisiUGFja2FnZXMuYnoyIGZpbGUpIG9yIEI8Z3ppcD4oMSkgIChnZW5lcmF0aW5nIGEgUGFja2FnZXMuZ3ogZmlsZSkuIGFwdCAiCisiaWdub3JlcyB1bmNvbXByZXNzZWQgUGFja2FnZXMgZmlsZXMgZXhjZXB0IG9uIGxvY2FsIGFjY2VzcyAoaS5lLiAgQjxmaWxlOi8vPiAiCisic291cmNlcykuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6NTgKK21zZ2lkICIiCisiSTxiaW5hcnlkaXI+IGlzIHRoZSBuYW1lIG9mIHRoZSB0cmVlIG9mIHRoZSBiaW5hcnkgcGFja2FnZXMgdG8gcHJvY2VzcyAoZm9yICIKKyJleGFtcGxlLCBCPGNvbnRyaWIvYmluYXJ5LWkzODY+KS4gIEl0IGlzIGJlc3QgdG8gbWFrZSB0aGlzIHJlbGF0aXZlIHRvIHRoZSAiCisicm9vdCBvZiB0aGUgRGViaWFuIGFyY2hpdmUsIGJlY2F1c2UgZXZlcnkgRmlsZW5hbWUgZmllbGQgaW4gdGhlIG5ldyBQYWNrYWdlcyAiCisiZmlsZSB3aWxsIHN0YXJ0IHdpdGggdGhpcyBzdHJpbmcuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6NjMKK21zZ2lkICIiCisiSTxvdmVycmlkZWZpbGU+IGlzIHRoZSBuYW1lIG9mIGEgZmlsZSB0byByZWFkIHdoaWNoIGNvbnRhaW5zIGluZm9ybWF0aW9uICIKKyJhYm91dCBob3cgdGhlIHBhY2thZ2UgZml0cyBpbnRvIHRoZSBkaXN0cmlidXRpb24gKGl0IGNhbiBiZSBhIGNvbXByZXNzZWQgIgorImZpbGUpOyBzZWUgQjxkZWItb3ZlcnJpZGU+KDUpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjY2Cittc2dpZCAiIgorIkk8cGF0aHByZWZpeD4gaXMgYW4gb3B0aW9uYWwgc3RyaW5nIHRvIGJlIHByZXBlbmRlZCB0byB0aGUgRmlsZW5hbWUgZmllbGRzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjcwCittc2dpZCAiIgorIklmIG1vcmUgdGhhbiBvbmUgdmVyc2lvbiBvZiBhIHBhY2thZ2UgaXMgZm91bmQgb25seSB0aGUgbmV3ZXN0IG9uZSBpcyAiCisiaW5jbHVkZWQgaW4gdGhlIG91dHB1dC4gSWYgdGhleSBoYXZlIHRoZSBzYW1lIHZlcnNpb24gYW5kIG9ubHkgZGlmZmVyIGluICIKKyJhcmNoaXRlY3R1cmUgb25seSB0aGUgZmlyc3Qgb25lIGZvdW5kIGlzIHVzZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjcyCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LXQ+LCBCPC0tdHlwZT4gSTx0eXBlPiIKK21zZ3N0ciAiQjwtLWluZm8+LCBCPC1JPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2FucGFja2FnZXMuMTo3NQorbXNnaWQgIlNjYW4gZm9yICouSTx0eXBlPiBwYWNrYWdlcywgaW5zdGVhZCBvZiAqLmRlYi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6NzUKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtdT4sIEI8LS11ZGViPiIKK21zZ3N0ciAiQjwtLXNob3c+LCBCPC1XPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2FucGFja2FnZXMuMTo3OAorbXNnaWQgIkI8T2Jzb2xldGU+IGFsaWFzIGZvciBCPC10dWRlYj4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjc4IGRwa2ctc2NhbnNvdXJjZXMuMTo0OQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1lPiwgQjwtLWV4dHJhLW92ZXJyaWRlPiBJPGZpbGU+IgorbXNnc3RyICJCPC0taGVscD4sIEI8LWg+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjg0IGRwa2ctc2NhbnNvdXJjZXMuMTo1NAorbXNnaWQgIiIKKyJTY2FuIEk8ZmlsZT4gdG8gZmluZCBzdXBwbGVtZW50YXJ5IG92ZXJyaWRlcyAodGhlIGZpbGUgY2FuIGJlIGNvbXByZXNzZWQpLiAiCisiU2VlIEI8ZGViLWV4dHJhLW92ZXJyaWRlPig1KSAgZm9yIG1vcmUgaW5mb3JtYXRpb24gb24gaXRzIGZvcm1hdC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6ODQKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtYT4sIEI8LS1hcmNoPiBJPGFyY2g+IgorbXNnc3RyICJCPC0tc2hvdz4sIEI8LVc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjg4Cittc2dpZCAiIgorIlVzZSBhIHBhdHRlcm4gY29uc2lzdGluZyBvZiBJPCpfYWxsLmRlYj4gYW5kIEk8Kl9hcmNoLmRlYj4gaW5zdGVhZCBvZiAiCisic2Nhbm5pbmcgZm9yIGFsbCBkZWJzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zY2FucGFja2FnZXMuMTo4OAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1tPiwgQjwtLW11bHRpdmVyc2lvbj4iCittc2dzdHIgIkI8LS12ZXJzaW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2FucGFja2FnZXMuMTo5MQorbXNnaWQgIkluY2x1ZGUgYWxsIGZvdW5kIHBhY2thZ2VzIGluIHRoZSBvdXRwdXQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjkxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LU0+LCBCPC0tbWVkaXVtPiBJPGlkLXN0cmluZz4iCittc2dzdHIgIkI8LS1zaG93PiwgQjwtVz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6OTYKK21zZ2lkICIiCisiQWRkIGFuIFgtTWVkaXVtIGZpZWxkIGNvbnRhaW5pbmcgdGhlIHZhbHVlIEk8aWQtc3RyaW5nPi4gVGhpcyBmaWVsZCBpcyAiCisicmVxdWlyZWQgaWYgeW91IHdhbnQgdG8gZ2VuZXJhdGUgQjxQYWNrYWdlcy5jZD4gZmlsZXMgZm9yIHVzZSBieSB0aGUgbXVsdGljZCAiCisiYWNjZXNzIG1ldGhvZCBvZiBkc2VsZWN0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1zY2FucGFja2FnZXMuMToxMDMgdXBkYXRlLWFsdGVybmF0aXZlcy44OjQ0OAorIywgbm8td3JhcAorbXNnaWQgIkRJQUdOT1NUSUNTIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6MTA5Cittc2dpZCAiIgorIkI8ZHBrZy1zY2FucGFja2FnZXM+IG91dHB1dHMgdGhlIHVzdWFsIHNlbGYtZXhwbGFuYXRvcnkgZXJyb3JzLiBJdCBhbHNvICIKKyJ3YXJucyBhYm91dCBwYWNrYWdlcyB0aGF0IGFyZSBpbiB0aGUgd3Jvbmcgc3ViZGlyZWN0b3J5LCBhcmUgZHVwbGljYXRlZCwgIgorImhhdmUgYSBGaWxlbmFtZSBmaWVsZCBpbiB0aGVpciBjb250cm9sIGZpbGUsIGFyZSBtaXNzaW5nIGZyb20gdGhlIG92ZXJyaWRlICIKKyJmaWxlLCBvciBoYXZlIG1haW50YWluZXIgc3Vic3RpdHV0aW9ucyB3aGljaCBkbyBub3QgdGFrZSBlZmZlY3QuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6MTE1CisjLCBmdXp6eQorbXNnaWQgIiIKKyJCPGRwa2c+KDEpLCBCPGRzZWxlY3Q+KDEpLCBCPGRlYi1vdmVycmlkZT4oNSksIEI8ZGViLWV4dHJhLW92ZXJyaWRlPig1KSwgIgorIkI8ZHBrZy1zY2Fuc291cmNlcz4oMSkuIgorbXNnc3RyICJCPGRlYj4oNSksIEI8ZHBrZz4oMSksIEI8ZHBrZy1kZWI+KDEpLiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMToxCisjLCBuby13cmFwCittc2dpZCAiZHBrZy1zY2Fuc291cmNlcyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6NAorIywgZnV6enkKK21zZ2lkICJkcGtnLXNjYW5zb3VyY2VzIC0gY3JlYXRlIFNvdXJjZXMgaW5kZXggZmlsZXMiCittc2dzdHIgIiIKKyJBIEI8ZHBrZy1kZWI+IERlYmlhbiBhcmNow612dW1va2F0IGNzb21hZ29sLCBraWJvbnQgw6lzIGluZm9ybcOhY2nDs2thdCBuecO6anQgIgorInLDs2x1ay4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMToxMgorbXNnaWQgIiIKKyJCPGRwa2ctc2NhbnNvdXJjZXM+IFtJPG9wdGlvbj4uLi5dIEk8YmluYXJ5LWRpcj4gW0k8b3ZlcnJpZGUtZmlsZT4gW0k8cGF0aC0iCisicHJlZml4Pl1dIEI8RTxndD4+IEk8U291cmNlcz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2Fuc291cmNlcy4xOjE3Cittc2dpZCAiIgorIkI8ZHBrZy1zY2Fuc291cmNlcz4gc2NhbnMgdGhlIGdpdmVuIEk8YmluYXJ5LWRpcj4gZm9yIEk8LmRzYz4gZmlsZXMuICBUaGVzZSAiCisiYXJlIHVzZWQgdG8gY3JlYXRlIGEgRGViaWFuIHNvdXJjZSBpbmRleCwgd2hpY2ggaXMgb3V0cHV0IHRvIHN0ZG91dC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2Fuc291cmNlcy4xOjI4Cittc2dpZCAiIgorIlRoZSBJPG92ZXJyaWRlLWZpbGU+LCBpZiBnaXZlbiwgaXMgdXNlZCB0byBzZXQgcHJpb3JpdGllcyBpbiB0aGUgcmVzdWx0aW5nICIKKyJpbmRleCByZWNvcmRzIGFuZCB0byBvdmVycmlkZSB0aGUgbWFpbnRhaW5lciBmaWVsZCBnaXZlbiBpbiB0aGUgSTwuZHNjPiAiCisiZmlsZXMuIFRoZSBmaWxlIGNhbiBiZSBjb21wcmVzc2VkLiBTZWUgQjxkZWItb3ZlcnJpZGU+KDUpICBmb3IgdGhlIGZvcm1hdCBvZiAiCisidGhpcyBmaWxlLiBcXHMtMU5COlxcczAgU2luY2UgdGhlIG92ZXJyaWRlIGZpbGUgaXMgaW5kZXhlZCBieSBiaW5hcnksIG5vdCAiCisic291cmNlLCBwYWNrYWdlcywgdGhlcmUncyBhIGJpdCBvZiBhIHByb2JsZW0gaGVyZS4gVGhlIGN1cnJlbnQgIgorImltcGxlbWVudGF0aW9uIHVzZXMgdGhlIGhpZ2hlc3QgcHJpb3JpdHkgb2YgYWxsIHRoZSBiaW5hcnkgcGFja2FnZXMgcHJvZHVjZWQgIgorImJ5IGEgSTwuZHNjPiBmaWxlIGZvciB0aGUgcHJpb3JpdHkgb2YgdGhlIHNvdXJjZSBwYWNrYWdlLCBhbmQgdGhlIG92ZXJyaWRlICIKKyJlbnRyeSBmb3IgdGhlIGZpcnN0IGJpbmFyeSBwYWNrYWdlIGxpc3RlZCBpbiB0aGUgSTwuZHNjPiBmaWxlIHRvIG1vZGlmeSAiCisibWFpbnRhaW5lciBpbmZvcm1hdGlvbi4gVGhpcyBtaWdodCBjaGFuZ2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMTozMgorbXNnaWQgIiIKKyJUaGUgSTxwYXRoLXByZWZpeD4sIGlmIGdpdmVuLCBpcyBwcmVwZW5kZWQgdG8gdGhlIGRpcmVjdG9yeSBmaWVsZCBpbiB0aGUgIgorImdlbmVyYXRlZCBzb3VyY2UgaW5kZXguIFlvdSBnZW5lcmFsbHkgdXNlIHRoaXMgdG8gbWFrZSB0aGUgZGlyZWN0b3J5IGZpZWxkcyAiCisiY29udGFpbiB0aGUgcGF0aCBmcm9tIHRoZSB0b3Agb2YgdGhlIERlYmlhbiBhcmNoaXZlIGhpZXJhcmNoeS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2Fuc291cmNlcy4xOjQzCittc2dpZCAiIgorIkI8Tm90ZTo+IElmIHlvdSB3YW50IHRvIGFjY2VzcyB0aGUgZ2VuZXJhdGVkIFNvdXJjZXMgZmlsZSB3aXRoIEI8YXB0Pig4KSAgIgorInlvdSB3aWxsIHByb2JhYmx5IG5lZWQgdG8gY29tcHJlc3MgdGhlIGZpbGUgd2l0aCBCPGd6aXA+KDEpICAoZ2VuZXJhdGluZyBhICIKKyJTb3VyY2VzLmd6IGZpbGUpLiBhcHQgaWdub3JlcyB1bmNvbXByZXNzZWQgU291cmNlcyBmaWxlcyBleGNlcHQgb24gbG9jYWwgIgorImFjY2VzcyAoaS5lLiAgQjxmaWxlOi8vPiBzb3VyY2VzKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMTo0NQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1uPiwgQjwtLW5vLXNvcnQ+IgorbXNnc3RyICJCPC0taW5mbz4sIEI8LUk+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6NDgKK21zZ2lkICIiCisiRG9uJ3Qgc29ydCB0aGUgaW5kZXggcmVjb3Jkcy4gTm9ybWFsbHkgdGhleSBhcmUgc29ydGVkIGJ5IHNvdXJjZSBwYWNrYWdlICIKKyJuYW1lLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1zY2Fuc291cmNlcy4xOjU0CisjLCBuby13cmFwCittc2dpZCAiQjwtcz4sIEI8LS1zb3VyY2Utb3ZlcnJpZGU+IEk8ZmlsZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2Fuc291cmNlcy4xOjU4Cittc2dpZCAiIgorIlVzZSBJPGZpbGU+IGFzIHRoZSBzb3VyY2Ugb3ZlcnJpZGUgZmlsZSAodGhlIGZpbGUgY2FuIGJlIGNvbXByZXNzZWQpLiAgVGhlICIKKyJkZWZhdWx0IGlzIHRoZSBuYW1lIG9mIHRoZSBvdmVycmlkZSBmaWxlIHlvdSBzcGVjaWZpZWQgd2l0aCBJPC5zcmM+IGFwcGVuZGVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6NjQKK21zZ2lkICIiCisiVGhlIHNvdXJjZSBvdmVycmlkZSBmaWxlIGlzIGluIGEgZGlmZmVyZW50IGZvcm1hdCBmcm9tIHRoZSBiaW5hcnkgb3ZlcnJpZGUgIgorImZpbGUuIEl0IGNvbnRhaW5zIG9ubHkgdHdvIHdoaXRlc3BhY2Ugc2VwYXJhdGVkIGZpZWxkcywgdGhlIGZpcnN0IGlzIHRoZSAiCisic291cmNlIHBhY2thZ2UgbmFtZSBhbmQgdGhlIHNlY29uZCBpcyB0aGUgc2VjdGlvbi4gQmxhbmsgbGluZXMgYW5kIGNvbW1lbnQgIgorImxpbmVzIGFyZSBpZ25vcmVkIGluIHRoZSBub3JtYWwgbWFubmVyLiBJZiBhIHBhY2thZ2UgYXBwZWFycyBpbiBib3RoIGZpbGVzICIKKyJ0aGUgc291cmNlIG92ZXJyaWRlIHRha2VzIHByZWNlZGVuY2UgZm9yIHNldHRpbmcgdGhlIHNlY3Rpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6NjQKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWRlYnVnPiIKK21zZ3N0ciAiQjwtLWRlYnVnPiwgQjwtRD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMTo2NgorbXNnaWQgIlR1cm4gZGVidWdnaW5nIG9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6NzUKKyMsIGZ1enp5Cittc2dpZCAiQjxkZWItb3ZlcnJpZGU+KDUpLCBCPGRlYi1leHRyYS1vdmVycmlkZT4oNSksIEI8ZHBrZy1zY2FucGFja2FnZXM+KDEpLiIKK21zZ3N0ciAiQjxkcGtnPigxKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMTo3NworbXNnaWQgIlJvZGVyaWNrIFNjaGVydGxlciBFPGx0PnJvZGVyaWNrQGFyZ29uLm9yZ0U8Z3Q+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLXNobGliZGVwcy4xOjEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiZHBrZy1zaGxpYmRlcHMiCittc2dzdHIgImRwa2cga8Opc3psZXQiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6NAorbXNnaWQgImRwa2ctc2hsaWJkZXBzIC0gZ2VuZXJhdGUgc2hhcmVkIGxpYnJhcnkgc3Vic3R2YXIgZGVwZW5kZW5jaWVzIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6OAorIywgZnV6enkKK21zZ2lkICJCPGRwa2ctc2hsaWJkZXBzPiBbSTxvcHRpb24+Li4uXSBbQjwtZT5dSTxleGVjdXRhYmxlPiBbSTxvcHRpb24+Li4uXSIKK21zZ3N0ciAiQjxkcGtnLWRlYj4gQjwtYz58QjwtLWNvbnRlbnRzPiBJPGFyY2jDrXZ1bT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjIKK21zZ2lkICIiCisiQjxkcGtnLXNobGliZGVwcz4gY2FsY3VsYXRlcyBzaGFyZWQgbGlicmFyeSBkZXBlbmRlbmNpZXMgZm9yIGV4ZWN1dGFibGVzICIKKyJuYW1lZCBpbiBpdHMgYXJndW1lbnRzLiBUaGUgZGVwZW5kZW5jaWVzIGFyZSBhZGRlZCB0byB0aGUgc3Vic3RpdHV0aW9uICIKKyJ2YXJpYWJsZXMgZmlsZSBCPGRlYmlhbi9zdWJzdHZhcnM+IGFzIHZhcmlhYmxlIG5hbWVzIEI8c2hsaWJzOiIKKyI+STxkZXBlbmRlbmN5ZmllbGQ+IHdoZXJlIEk8ZGVwZW5kZW5jeWZpZWxkPiBpcyBhIGRlcGVuZGVuY3kgZmllbGQgbmFtZS4gQW55ICIKKyJvdGhlciB2YXJpYWJsZXMgc3RhcnRpbmcgd2l0aCBCPHNobGliczo+IGFyZSByZW1vdmVkIGZyb20gdGhlIGZpbGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6NDUKK21zZ2lkICIiCisiQjxkcGtnLXNobGliZGVwcz4gaGFzIHR3byBwb3NzaWJsZSBzb3VyY2VzIG9mIGluZm9ybWF0aW9uIHRvIGdlbmVyYXRlICIKKyJkZXBlbmRlbmN5IGluZm9ybWF0aW9uLiBFaXRoZXIgSTxzeW1ib2xzPiBmaWxlcyBvciBJPHNobGlicz4gZmlsZXMuIEZvciBlYWNoICIKKyJiaW5hcnkgdGhhdCBCPGRwa2ctc2hsaWJkZXBzPiBhbmFseXplcywgaXQgZmluZHMgb3V0IHRoZSBsaXN0IG9mIGxpYnJhcmllcyAiCisidGhhdCBpdCdzIGxpbmtlZCB3aXRoLiAgVGhlbiwgZm9yIGVhY2ggbGlicmFyeSwgaXQgbG9va3MgdXAgZWl0aGVyIHRoZSAiCisiSTxzeW1ib2xzPiBmaWxlLCBvciB0aGUgSTxzaGxpYnM+IGZpbGUgKGlmIHRoZSBmb3JtZXIgZG9lc24ndCBleGlzdCBvciBpZiAiCisiZGViaWFuL3NobGlicy5sb2NhbCBjb250YWlucyB0aGUgcmVsZXZhbnQgZGVwZW5kZW5jeSkuIEJvdGggZmlsZXMgYXJlICIKKyJzdXBwb3NlZCB0byBiZSBwcm92aWRlZCBieSB0aGUgbGlicmFyeSBwYWNrYWdlIGFuZCBzaG91bGQgdGh1cyBiZSBhdmFpbGFibGUgIgorImFzIC92YXIvbGliL2Rwa2cvaW5mby9JPHBhY2thZ2U+Lkk8c3ltYm9scz4gb3IgL3Zhci9saWIvZHBrZy9pbmZvL0k8cGFja2FnZT4uIgorIkk8c2hsaWJzPi4gVGhlIHBhY2thZ2UgbmFtZSBpcyBpZGVudGlmaWVkIGluIHR3byBzdGVwczogZmluZCB0aGUgbGlicmFyeSAiCisiZmlsZSBvbiB0aGUgc3lzdGVtIChsb29raW5nIGluIHRoZSBzYW1lIGRpcmVjdG9yaWVzIHRoYXQgQjxsZC5zbz4gd291bGQgIgorInVzZSksIHRoZW4gdXNlIEI8ZHBrZyAtUyA+STxsaWJyYXJ5LWZpbGU+IHRvIGxvb2t1cCB0aGUgcGFja2FnZSBwcm92aWRpbmcgIgorInRoZSBsaWJyYXJ5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zaGxpYmRlcHMuMTo0NQorIywgbm8td3JhcAorbXNnaWQgIlN5bWJvbHMgZmlsZXMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTo1MAorbXNnaWQgIiIKKyJTeW1ib2xzIGZpbGVzIGNvbnRhaW4gZmluZXItZ3JhaW5lZCBkZXBlbmRlbmN5IGluZm9ybWF0aW9uIGJ5IHByb3ZpZGluZyB0aGUgIgorIm1pbmltdW0gZGVwZW5kZW5jeSBmb3IgZWFjaCBzeW1ib2wgdGhhdCB0aGUgbGlicmFyeSBleHBvcnRzLiBUaGUgc2NyaXB0ICIKKyJ0cmllcyB0byBmaW5kIGEgc3ltYm9scyBmaWxlIGFzc29jaWF0ZWQgdG8gYSBsaWJyYXJ5IHBhY2thZ2UgaW4gdGhlICIKKyJmb2xsb3dpbmcgcGxhY2VzIChmaXJzdCBtYXRjaCBpcyB1c2VkKToiCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6NTAKKyMsIG5vLXdyYXAKK21zZ2lkICJkZWJpYW4vKi9ERUJJQU4vc3ltYm9scyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjU4Cittc2dpZCAiIgorIlNoYXJlZCBsaWJyYXJ5IGluZm9ybWF0aW9uIGdlbmVyYXRlZCBieSB0aGUgY3VycmVudCBidWlsZCBwcm9jZXNzIHRoYXQgYWxzbyAiCisiaW52b2tlZCBCPGRwa2ctc2hsaWJkZXBzPi4gIFRoZXkgYXJlIGdlbmVyYXRlZCBieSBCPGRwa2ctZ2Vuc3ltYm9scz4oMSkuICAiCisiVGhleSBhcmUgb25seSB1c2VkIGlmIHRoZSBsaWJyYXJ5IGlzIGZvdW5kIGluIGEgcGFja2FnZSdzIGJ1aWxkIHRyZWUuIFRoZSAiCisic3ltYm9scyBmaWxlIGluIHRoYXQgYnVpbGQgdHJlZSB0YWtlcyBwcmVjZWRlbmNlIG92ZXIgc3ltYm9scyBmaWxlcyBmcm9tICIKKyJvdGhlciBiaW5hcnkgcGFja2FnZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLXNobGliZGVwcy4xOjU4CisjLCBuby13cmFwCittc2dpZCAiL2V0Yy9kcGtnL3N5bWJvbHMvSTxwYWNrYWdlPi5zeW1ib2xzLkk8YXJjaD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6NTkKKyMsIG5vLXdyYXAKK21zZ2lkICIvZXRjL2Rwa2cvc3ltYm9scy9JPHBhY2thZ2U+LnN5bWJvbHMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTo2MworbXNnaWQgIiIKKyJQZXItc3lzdGVtIG92ZXJyaWRpbmcgc2hhcmVkIGxpYnJhcnkgZGVwZW5kZW5jeSBpbmZvcm1hdGlvbi4gIEk8YXJjaD4gaXMgdGhlICIKKyJhcmNoaXRlY3R1cmUgb2YgdGhlIGN1cnJlbnQgc3lzdGVtIChvYnRhaW5lZCBieSBCPGRwa2ctYXJjaGl0ZWN0dXJlIC0iCisicURFQl9IT1NUX0FSQ0g+KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6NjMKKyMsIG5vLXdyYXAKK21zZ2lkICJPdXRwdXQgZnJvbSBcXChscUI8ZHBrZy1xdWVyeSAtLWNvbnRyb2wtcGF0aD4gSTxwYWNrYWdlPiBzeW1ib2xzXFwocnEiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTo2NiBkcGtnLXNobGliZGVwcy4xOjEwMAorbXNnaWQgIiIKKyJQYWNrYWdlLXByb3ZpZGVkIHNoYXJlZCBsaWJyYXJ5IGRlcGVuZGVuY3kgaW5mb3JtYXRpb24uICBVbmxlc3Mgb3ZlcnJpZGRlbiAiCisiYnkgLS1hZG1pbmRpciwgdGhvc2UgZmlsZXMgYXJlIGxvY2F0ZWQgaW4gL3Zhci9saWIvZHBrZy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTo3MworbXNnaWQgIiIKKyJXaGlsZSBzY2FubmluZyB0aGUgc3ltYm9scyB1c2VkIGJ5IGFsbCBiaW5hcmllcywgQjxkcGtnLXNobGliZGVwcz4gcmVtZW1iZXJzICIKKyJ0aGUgKGJpZ2dlc3QpIG1pbmltYWwgdmVyc2lvbiBuZWVkZWQgZm9yIGVhY2ggbGlicmFyeS4gQXQgdGhlIGVuZCBvZiB0aGUgIgorInByb2Nlc3MsIGl0IGlzIGFibGUgdG8gd3JpdGUgb3V0IHRoZSBtaW5pbWFsIGRlcGVuZGVuY3kgZm9yIGV2ZXJ5IGxpYnJhcnkgIgorInVzZWQgKHByb3ZpZGVkIHRoYXQgdGhlIGluZm9ybWF0aW9uIG9mIHRoZSBJPHN5bWJvbHM+IGZpbGVzIGFyZSBhY2N1cmF0ZSkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6ODAKK21zZ2lkICIiCisiQXMgYSBzYWZlLWd1YXJkIG1lYXN1cmUsIGEgc3ltYm9scyBmaWxlIGNhbiBwcm92aWRlIGEgSTxCdWlsZC1EZXBlbmRzLSIKKyJQYWNrYWdlPiBtZXRhLWluZm9ybWF0aW9uIGZpZWxkIGFuZCBCPGRwa2ctc2hsaWJkZXBzPiB3aWxsIGV4dHJhY3QgdGhlICIKKyJtaW5pbWFsIHZlcnNpb24gcmVxdWlyZWQgYnkgdGhlIGNvcnJlc3BvbmRpbmcgcGFja2FnZSBpbiB0aGUgQnVpbGQtRGVwZW5kcyAiCisiZmllbGQgYW5kIHVzZSB0aGlzIHZlcnNpb24gaWYgaXQncyBoaWdoZXIgdGhhbiB0aGUgbWluaW1hbCB2ZXJzaW9uIGNvbXB1dGVkICIKKyJieSBzY2FubmluZyBzeW1ib2xzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zaGxpYmRlcHMuMTo4MAorIywgbm8td3JhcAorbXNnaWQgIlNobGlicyBmaWxlcyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjg0Cittc2dpZCAiIgorIlNobGlicyBmaWxlcyBhc3NvY2lhdGUgZGlyZWN0bHkgYSBsaWJyYXJ5IHRvIGEgZGVwZW5kZW5jeSAod2l0aG91dCBsb29raW5nICIKKyJhdCB0aGUgc3ltYm9scykuIEl0J3MgdGh1cyBvZnRlbiBzdHJvbmdlciB0aGFuIHJlYWxseSBuZWVkZWQgYnV0IHZlcnkgc2FmZSAiCisiYW5kIGVhc3kgdG8gaGFuZGxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjg3Cittc2dpZCAiIgorIlRoZSBkZXBlbmRlbmNpZXMgZm9yIGEgbGlicmFyeSBhcmUgbG9va2VkIHVwIGluIHNldmVyYWwgcGxhY2VzLiBUaGUgZmlyc3QgIgorImZpbGUgcHJvdmlkaW5nIGluZm9ybWF0aW9uIGZvciB0aGUgbGlicmFyeSBvZiBpbnRlcmVzdCBpcyB1c2VkOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1zaGxpYmRlcHMuMTo4NworIywgbm8td3JhcAorbXNnaWQgImRlYmlhbi9zaGxpYnMubG9jYWwiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTo4OQorbXNnaWQgIlBhY2thZ2UtbG9jYWwgb3ZlcnJpZGluZyBzaGFyZWQgbGlicmFyeSBkZXBlbmRlbmN5IGluZm9ybWF0aW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1zaGxpYmRlcHMuMTo4OQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICIvZXRjL2Rwa2cvc2hsaWJzLm92ZXJyaWRlIgorbXNnc3RyICJJPC9ldGMvZHBrZy9kc2VsZWN0LmNmZz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6OTEKK21zZ2lkICJQZXItc3lzdGVtIG92ZXJyaWRpbmcgc2hhcmVkIGxpYnJhcnkgZGVwZW5kZW5jeSBpbmZvcm1hdGlvbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6OTEKKyMsIG5vLXdyYXAKK21zZ2lkICJkZWJpYW4vKi9ERUJJQU4vc2hsaWJzIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6OTcKK21zZ2lkICIiCisiU2hhcmVkIGxpYnJhcnkgaW5mb3JtYXRpb24gZ2VuZXJhdGVkIGJ5IHRoZSBjdXJyZW50IGJ1aWxkIHByb2Nlc3MgdGhhdCBhbHNvICIKKyJpbnZva2VkIEI8ZHBrZy1zaGxpYmRlcHM+LiAgVGhleSBhcmUgb25seSB1c2VkIGlmIHRoZSBsaWJyYXJ5IGlzIGZvdW5kIGluIGEgIgorInBhY2thZ2UncyBidWlsZCB0cmVlLiBUaGUgc2hsaWJzIGZpbGUgaW4gdGhhdCBidWlsZCB0cmVlIHRha2VzIHByZWNlZGVuY2UgIgorIm92ZXIgc2hsaWJzIGZpbGVzIGZyb20gb3RoZXIgYmluYXJ5IHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1zaGxpYmRlcHMuMTo5NworIywgbm8td3JhcAorbXNnaWQgIk91dHB1dCBmcm9tIFxcKGxxQjxkcGtnLXF1ZXJ5IC0tY29udHJvbC1wYXRoPiBJPHBhY2thZ2U+IHNobGlic1xcKHJxIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLXNobGliZGVwcy4xOjEwMAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICIvZXRjL2Rwa2cvc2hsaWJzLmRlZmF1bHQiCittc2dzdHIgIkk8L2V0Yy9kcGtnL2RzZWxlY3QuY2ZnPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToxMDIKK21zZ2lkICJQZXItc3lzdGVtIGRlZmF1bHQgc2hhcmVkIGxpYnJhcnkgZGVwZW5kZW5jeSBpbmZvcm1hdGlvbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToxMDYKK21zZ2lkICIiCisiVGhlIGV4dHJhY3RlZCBkZXBlbmRlbmNpZXMgYXJlIHRoZW4gZGlyZWN0bHkgdXNlZCAoZXhjZXB0IGlmIHRoZXkgYXJlICIKKyJmaWx0ZXJlZCBvdXQgYmVjYXVzZSB0aGV5IGhhdmUgYmVlbiBpZGVudGlmaWVkIGFzIGR1cGxpY2F0ZSwgb3IgYXMgd2Vha2VyICIKKyJ0aGFuIGFub3RoZXIgZGVwZW5kZW5jeSkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTExCittc2dpZCAiIgorIkI8ZHBrZy1zaGxpYmRlcHM+IGludGVycHJldHMgbm9uLW9wdGlvbiBhcmd1bWVudHMgYXMgZXhlY3V0YWJsZSBuYW1lcywganVzdCAiCisiYXMgaWYgdGhleSdkIGJlZW4gc3VwcGxpZWQgYXMgQjwtZT5JPGV4ZWN1dGFibGU+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zaGxpYmRlcHMuMToxMTEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1lPkk8ZXhlY3V0YWJsZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToxMTUKK21zZ2lkICIiCisiSW5jbHVkZSBkZXBlbmRlbmNpZXMgYXBwcm9wcmlhdGUgZm9yIHRoZSBzaGFyZWQgbGlicmFyaWVzIHJlcXVpcmVkIGJ5ICIKKyJJPGV4ZWN1dGFibGU+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zaGxpYmRlcHMuMToxMTUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1kPkk8ZGVwZW5kZW5jeWZpZWxkPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjEyMQorbXNnaWQgIiIKKyJBZGQgZGVwZW5kZW5jaWVzIHRvIGJlIGFkZGVkIHRvIHRoZSBjb250cm9sIGZpbGUgZGVwZW5kZW5jeSBmaWVsZCAiCisiSTxkZXBlbmRlbmN5ZmllbGQ+LiAgKFRoZSBkZXBlbmRlbmNpZXMgZm9yIHRoaXMgZmllbGQgYXJlIHBsYWNlZCBpbiB0aGUgIgorInZhcmlhYmxlIEI8c2hsaWJzOj5JPGRlcGVuZGVuY3lmaWVsZD4uKSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjEzMQorbXNnaWQgIiIKKyJUaGUgQjwtZD5JPGRlcGVuZGVuY3lmaWVsZD4gb3B0aW9uIHRha2VzIGVmZmVjdCBmb3IgYWxsIGV4ZWN1dGFibGVzIGFmdGVyICIKKyJ0aGUgb3B0aW9uLCB1bnRpbCB0aGUgbmV4dCBCPC1kPkk8ZGVwZW5kZW5jeWZpZWxkPi4gIFRoZSBkZWZhdWx0ICIKKyJJPGRlcGVuZGVuY3lmaWVsZD4gaXMgQjxEZXBlbmRzPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToxMzkKK21zZ2lkICIiCisiSWYgdGhlIHNhbWUgZGVwZW5kZW5jeSBlbnRyeSAob3Igc2V0IG9mIGFsdGVybmF0aXZlcykgYXBwZWFycyBpbiBtb3JlIHRoYW4gIgorIm9uZSBvZiB0aGUgcmVjb2duaXNlZCBkZXBlbmRlbmN5IGZpZWxkIG5hbWVzIEI8UHJlLURlcGVuZHM+LCBCPERlcGVuZHM+LCAiCisiQjxSZWNvbW1lbmRzPiwgQjxFbmhhbmNlcz4gb3IgQjxTdWdnZXN0cz4gdGhlbiBCPGRwa2ctc2hsaWJkZXBzPiB3aWxsICIKKyJhdXRvbWF0aWNhbGx5IHJlbW92ZSB0aGUgZGVwZW5kZW5jeSBmcm9tIGFsbCBmaWVsZHMgZXhjZXB0IHRoZSBvbmUgIgorInJlcHJlc2VudGluZyB0aGUgbW9zdCBpbXBvcnRhbnQgZGVwZW5kZW5jaWVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zaGxpYmRlcHMuMToxMzkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1wPkk8dmFybmFtZXByZWZpeD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToxNTAKK21zZ2lkICIiCisiU3RhcnQgc3Vic3RpdHV0aW9uIHZhcmlhYmxlcyB3aXRoIEk8dmFybmFtZXByZWZpeD5CPDo+IGluc3RlYWQgb2YgQjxzaGxpYnM6IgorIj4uICBMaWtld2lzZSwgYW55IGV4aXN0aW5nIHN1YnN0aXR1dGlvbiB2YXJpYWJsZXMgc3RhcnRpbmcgd2l0aCAiCisiSTx2YXJuYW1lcHJlZml4PkI8Oj4gKHJhdGhlciB0aGFuIEI8c2hsaWJzOj4pICBhcmUgcmVtb3ZlZCBmcm9tIHRoZSB0aGUgIgorInN1YnN0aXR1dGlvbiB2YXJpYWJsZXMgZmlsZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToxNTYKK21zZ2lkICIiCisiUHJpbnQgc3Vic3RpdHV0aW9uIHZhcmlhYmxlIHNldHRpbmdzIHRvIHN0YW5kYXJkIG91dHB1dCwgcmF0aGVyIHRoYW4gYmVpbmcgIgorImFkZGVkIHRvIHRoZSBzdWJzdGl0dXRpb24gdmFyaWFibGVzIGZpbGUgKEI8ZGViaWFuL3N1YnN0dmFycz4gYnkgZGVmYXVsdCkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNobGliZGVwcy4xOjE1NgorIywgbm8td3JhcAorbXNnaWQgIkI8LXQ+STx0eXBlPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjE2MworbXNnaWQgIiIKKyJQcmVmZXIgc2hhcmVkIGxpYnJhcnkgZGVwZW5kZW5jeSBpbmZvcm1hdGlvbiB0YWdnZWQgZm9yIHRoZSBnaXZlbiBwYWNrYWdlICIKKyJ0eXBlLiBJZiBubyB0YWdnZWQgaW5mb3JtYXRpb24gaXMgYXZhaWxhYmxlLCBmYWxscyBiYWNrIHRvIHVudGFnZ2VkICIKKyJpbmZvcm1hdGlvbi4gVGhlIGRlZmF1bHQgcGFja2FnZSB0eXBlIGlzIFwiZGViXCIuIFNoYXJlZCBsaWJyYXJ5IGRlcGVuZGVuY3kgIgorImluZm9ybWF0aW9uIGlzIHRhZ2dlZCBmb3IgYSBnaXZlbiB0eXBlIGJ5IHByZWZpeGluZyBpdCB3aXRoIHRoZSBuYW1lIG9mIHRoZSAiCisidHlwZSwgYSBjb2xvbiwgYW5kIHdoaXRlc3BhY2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNobGliZGVwcy4xOjE2MworIywgbm8td3JhcAorbXNnaWQgIkI8LUw+STxsb2NhbHNobGlic2ZpbGU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTY5Cittc2dpZCAiIgorIlJlYWQgb3ZlcnJpZGluZyBzaGFyZWQgbGlicmFyeSBkZXBlbmRlbmN5IGluZm9ybWF0aW9uIGZyb20gIgorIkk8bG9jYWxzaGxpYnNmaWxlPiBpbnN0ZWFkIG9mIEI8ZGViaWFuL3NobGlicy5sb2NhbD4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTc1Cittc2dpZCAiIgorIldyaXRlIHN1YnN0aXR1dGlvbiB2YXJpYWJsZXMgaW4gSTxzdWJzdHZhcnNmaWxlPjsgdGhlIGRlZmF1bHQgaXMgQjxkZWJpYW4vIgorInN1YnN0dmFycz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNobGliZGVwcy4xOjE3NQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC12PiIKK21zZ3N0ciAiQjwtLW5ldz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTgwCittc2dpZCAiIgorIkVuYWJsZSB2ZXJib3NlIG1vZGUuIE51bWVyb3VzIG1lc3NhZ2VzIGFyZSBkaXNwbGF5ZWQgdG8gZXhwbGFpbiB3aGF0IEI8ZHBrZy0iCisic2hsaWJkZXBzPiBkb2VzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zaGxpYmRlcHMuMToxODAKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwteD5JPHBhY2thZ2U+IgorbXNnc3RyICJCPFBhY2thZ2U6PiBFPGx0PmNzb21hZyBuw6l2RTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTg3Cittc2dpZCAiIgorIkV4Y2x1ZGUgdGhlIHBhY2thZ2UgZnJvbSB0aGUgZ2VuZXJhdGVkIGRlcGVuZGVuY2llcy4gVGhpcyBpcyB1c2VmdWwgdG8gYXZvaWQgIgorInNlbGYtZGVwZW5kZW5jaWVzIGZvciBwYWNrYWdlcyB3aGljaCBwcm92aWRlIEVMRiBiaW5hcmllcyAoZXhlY3V0YWJsZXMgb3IgIgorImxpYnJhcnkgcGx1Z2lucykgdXNpbmcgYSBsaWJyYXJ5IGNvbnRhaW5lZCBpbiB0aGUgc2FtZSBwYWNrYWdlLiBUaGlzIG9wdGlvbiAiCisiY2FuIGJlIHVzZWQgbXVsdGlwbGUgdGltZXMgdG8gZXhjbHVkZSBzZXZlcmFsIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zaGxpYmRlcHMuMToxODcKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtUz5JPHBrZ2J1aWxkZGlyPiIKK21zZ3N0ciAiQjwtLWZpZWxkPiwgQjwtZj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTk0Cittc2dpZCAiIgorIkxvb2sgaW50byBJPHBrZ2J1aWxkZGlyPiBmaXJzdCB3aGVuIHRyeWluZyB0byBmaW5kIGEgbGlicmFyeS4gVGhpcyBpcyB1c2VmdWwgIgorIndoZW4gdGhlIHNvdXJjZSBwYWNrYWdlIGJ1aWxkcyBtdWx0aXBsZSBmbGF2b3JzIG9mIHRoZSBzYW1lIGxpYnJhcnkgYW5kIHlvdSAiCisid2FudCB0byBlbnN1cmUgdGhhdCB5b3UgZ2V0IHRoZSBkZXBlbmRlbmN5IGZyb20gYSBnaXZlbiBiaW5hcnkgcGFja2FnZS4gWW91ICIKKyJjYW4gdXNlIHRoaXMgb3B0aW9uIG11bHRpcGxlIHRpbWVzOiBkaXJlY3RvcmllcyB3aWxsIGJlIHRyaWVkIGluIHRoZSBzYW1lICIKKyJvcmRlciBiZWZvcmUgZGlyZWN0b3JpZXMgb2Ygb3RoZXIgYmluYXJ5IHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zaGxpYmRlcHMuMToxOTQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0taWdub3JlLW1pc3NpbmctaW5mbz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToyMDAKK21zZ2lkICIiCisiRG8gbm90IGZhaWwgaWYgZGVwZW5kZW5jeSBpbmZvcm1hdGlvbiBjYW4ndCBiZSBmb3VuZCBmb3IgYSBzaGFyZWQgbGlicmFyeS4gICIKKyJVc2FnZSBvZiB0aGlzIG9wdGlvbiBpcyBkaXNjb3VyYWdlZCwgYWxsIGxpYnJhcmllcyBzaG91bGQgcHJvdmlkZSBkZXBlbmRlbmN5ICIKKyJpbmZvcm1hdGlvbiAoZWl0aGVyIHdpdGggc2hsaWJzIGZpbGVzLCBvciB3aXRoIHN5bWJvbHMgZmlsZXMpICBldmVuIGlmIHRoZXkgIgorImFyZSBub3QgeWV0IHVzZWQgYnkgb3RoZXIgcGFja2FnZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNobGliZGVwcy4xOjIwMAorIywgbm8td3JhcAorbXNnaWQgIkI8LS13YXJuaW5ncz0+STx2YWx1ZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToyMTEKK21zZ2lkICIiCisiSTx2YWx1ZT4gaXMgYSBiaXQgZmllbGQgZGVmaW5pbmcgdGhlIHNldCBvZiB3YXJuaW5ncyB0aGF0IGNhbiBiZSBlbWl0dGVkIGJ5ICIKKyJCPGRwa2ctc2hsaWJkZXBzPi4gIEJpdCAwICh2YWx1ZT0xKSBlbmFibGVzIHRoZSB3YXJuaW5nIFwic3ltYm9sIEk8c3ltPiB1c2VkICIKKyJieSBJPGJpbmFyeT4gZm91bmQgaW4gbm9uZSBvZiB0aGUgbGlicmFyaWVzXCIsIGJpdCAxICh2YWx1ZT0yKSBlbmFibGVzIHRoZSAiCisid2FybmluZyBcImRlcGVuZGVuY3kgb24gSTxsaWJyYXJ5PiBjb3VsZCBiZSBhdm9pZGVkXCIgYW5kIGJpdCAyICh2YWx1ZT00KSAgIgorImVuYWJsZXMgdGhlIHdhcm5pbmcgXCJJPGJpbmFyeT4gc2hvdWxkbid0IGJlIGxpbmtlZCB3aXRoIEk8bGlicmFyeT5cIi4gIFRoZSAiCisiZGVmYXVsdCBJPHZhbHVlPiBpcyAzOiB0aGUgZmlyc3QgdHdvIHdhcm5pbmdzIGFyZSBhY3RpdmUgYnkgZGVmYXVsdCwgdGhlICIKKyJsYXN0IG9uZSBpcyBub3QuIFNldCBJPHZhbHVlPiB0byA3IGlmIHlvdSB3YW50IGFsbCB3YXJuaW5ncyB0byBiZSBhY3RpdmUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLXNobGliZGVwcy4xOjIyMgorIywgbm8td3JhcAorbXNnaWQgIldBUk5JTkdTIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjMwCittc2dpZCAiIgorIlNpbmNlIEI8ZHBrZy1zaGxpYmRlcHM+IGFuYWx5emVzIHRoZSBzZXQgb2Ygc3ltYm9scyB1c2VkIGJ5IGVhY2ggYmluYXJ5IG9mICIKKyJ0aGUgZ2VuZXJhdGVkIHBhY2thZ2UsIGl0IGlzIGFibGUgdG8gZW1pdCB3YXJuaW5ncyBpbiBzZXZlcmFsIGNhc2VzLiBUaGV5ICIKKyJpbmZvcm0geW91IG9mIHRoaW5ncyB0aGF0IGNhbiBiZSBpbXByb3ZlZCBpbiB0aGUgcGFja2FnZS4gSW4gbW9zdCBjYXNlcywgIgorInRob3NlIGltcHJvdmVtZW50cyBjb25jZXJuIHRoZSB1cHN0cmVhbSBzb3VyY2VzIGRpcmVjdGx5LiBCeSBvcmRlciBvZiAiCisiZGVjcmVhc2luZyBpbXBvcnRhbmNlLCBoZXJlIGFyZSB0aGUgdmFyaW91cyB3YXJuaW5ncyB0aGF0IHlvdSBjYW4gZW5jb3VudGVyOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zaGxpYmRlcHMuMToyMzAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHN5bWJvbD5JPCBzeW0+QjwgdXNlZCBieSA+STxiaW5hcnk+QjwgZm91bmQgaW4gbm9uZSBvZiB0aGUgbGlicmFyaWVzLj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToyMzYKK21zZ2lkICIiCisiVGhlIGluZGljYXRlZCBzeW1ib2wgaGFzIG5vdCBiZWVuIGZvdW5kIGluIHRoZSBsaWJyYXJpZXMgbGlua2VkIHdpdGggdGhlICIKKyJiaW5hcnkuIFRoZSBJPGJpbmFyeT4gaXMgbW9zdCBsaWtlbHkgYSBsaWJyYXJ5IGFuZCBpdCBuZWVkcyB0byBiZSBsaW5rZWQgIgorIndpdGggYW4gYWRkaXRpb25hbCBsaWJyYXJ5IGR1cmluZyB0aGUgYnVpbGQgcHJvY2VzcyAob3B0aW9uIEI8LWw+STxsaWJyYXJ5PiAiCisib2YgdGhlIGxpbmtlcikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNobGliZGVwcy4xOjIzNgorIywgbm8td3JhcAorbXNnaWQgIkk8YmluYXJ5PkI8IGNvbnRhaW5zIGFuIHVucmVzb2x2YWJsZSByZWZlcmVuY2UgdG8gc3ltYm9sID5JPHN5bT5CPDogaXQncyBwcm9iYWJseSBhIHBsdWdpbj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToyNDkKK21zZ2lkICIiCisiVGhlIGluZGljYXRlZCBzeW1ib2wgaGFzIG5vdCBiZWVuIGZvdW5kIGluIHRoZSBsaWJyYXJpZXMgbGlua2VkIHdpdGggdGhlICIKKyJiaW5hcnkuIFRoZSBJPGJpbmFyeT4gaXMgbW9zdCBsaWtlbHkgYSBwbHVnaW4gYW5kIHRoZSBzeW1ib2wgaXMgcHJvYmFibHkgIgorInByb3ZpZGVkIGJ5IHRoZSBwcm9ncmFtIHRoYXQgbG9hZHMgdGhpcyBwbHVnaW4uIEluIHRoZW9yeSBhIHBsdWdpbiBkb2Vzbid0ICIKKyJoYXZlIGFueSBTT05BTUUgYnV0IHRoaXMgYmluYXJ5IGRvZXMgaGF2ZSBvbmUgYW5kIGFzIHN1Y2ggaXQgY291bGQgbm90IGJlICIKKyJjbGVhcmx5IGlkZW50aWZpZWQgYXMgc3VjaC4gSG93ZXZlciB0aGUgZmFjdCB0aGF0IHRoZSBiaW5hcnkgaXMgc3RvcmVkIGluIGEgIgorIm5vbi1wdWJsaWMgZGlyZWN0b3J5IGlzIGEgc3Ryb25nIGluZGljYXRpb24gdGhhdCdzIGl0J3Mgbm90IGEgbm9ybWFsIHNoYXJlZCAiCisibGlicmFyeS4gSWYgdGhlIGJpbmFyeSBpcyByZWFsbHkgYSBwbHVnaW4sIHRoZW4gZGlzcmVnYXJkIHRoaXMgd2FybmluZy4gQnV0ICIKKyJ0aGVyZSdzIGFsd2F5cyB0aGUgcG9zc2liaWxpdHkgdGhhdCBpdCdzIGEgcmVhbCBsaWJyYXJ5IGFuZCB0aGF0IHByb2dyYW1zICIKKyJsaW5raW5nIHRvIGl0IGFyZSB1c2luZyBhbiBSUEFUSCBzbyB0aGF0IHRoZSBkeW5hbWljIGxvYWRlciBmaW5kcyBpdC4gSW4gIgorInRoYXQgY2FzZSwgdGhlIGxpYnJhcnkgaXMgYnJva2VuIGFuZCBuZWVkcyB0byBiZSBmaXhlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjQ5CisjLCBuby13cmFwCittc2dpZCAiQjxkZXBlbmRlbmN5IG9uID5JPGxpYnJhcnk+QjwgY291bGQgYmUgYXZvaWRlZCBpZiA+STxiaW5hcmllcz5CPCB3ZXJlIG5vdCB1c2VsZXNzbHkgbGlua2VkIGFnYWluc3QgaXQgKHRoZXkgdXNlIG5vbmUgb2YgaXRzIHN5bWJvbHMpLj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToyNTUKK21zZ2lkICIiCisiTm9uZSBvZiB0aGUgSTxiaW5hcmllcz4gdGhhdCBhcmUgbGlua2VkIHdpdGggSTxsaWJyYXJ5PiB1c2UgYW55IG9mIHRoZSAiCisic3ltYm9scyBwcm92aWRlZCBieSB0aGUgbGlicmFyeS4gQnkgZml4aW5nIGFsbCB0aGUgYmluYXJpZXMsIHlvdSB3b3VsZCBhdm9pZCAiCisidGhlIGRlcGVuZGVuY3kgYXNzb2NpYXRlZCB0byB0aGlzIGxpYnJhcnkgKHVubGVzcyB0aGUgc2FtZSBkZXBlbmRlbmN5IGlzICIKKyJhbHNvIGdlbmVyYXRlZCBieSBhbm90aGVyIGxpYnJhcnkgdGhhdCBpcyByZWFsbHkgdXNlZCkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNobGliZGVwcy4xOjI1NQorIywgbm8td3JhcAorbXNnaWQgIkk8YmluYXJ5PkI8IHNob3VsZG4ndCBiZSBsaW5rZWQgd2l0aCA+STxsaWJyYXJ5PkI8IChpdCB1c2VzIG5vbmUgb2YgaXRzIHN5bWJvbHMpLj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToyNjIKK21zZ2lkICIiCisiVGhlIEk8YmluYXJ5PiBpcyBsaW5rZWQgdG8gYSBsaWJyYXJ5IHRoYXQgaXQgZG9lc24ndCBuZWVkLiBJdCdzIG5vdCBhICIKKyJwcm9ibGVtIGJ1dCBzb21lIHNtYWxsIHBlcmZvcm1hbmNlIGltcHJvdmVtZW50cyBpbiBiaW5hcnkgbG9hZCB0aW1lIGNhbiBiZSAiCisib2J0YWluZWQgYnkgbm90IGxpbmtpbmcgdGhpcyBsaWJyYXJ5IHRvIHRoaXMgYmluYXJ5LiBUaGlzIHdhcm5pbmcgY2hlY2tzIHRoZSAiCisic2FtZSBpbmZvcm1hdGlvbiB0aGFuIHRoZSBwcmV2aW91cyBvbmUgYnV0IGRvZXMgaXQgZm9yIGVhY2ggYmluYXJ5IGluc3RlYWQgIgorIm9mIGRvaW5nIHRoZSBjaGVjayBnbG9iYWxseSBvbiBhbGwgYmluYXJpZXMgYW5hbHl6ZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLXNobGliZGVwcy4xOjI2MgorIywgbm8td3JhcAorbXNnaWQgIkVSUk9SUyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjI2OQorbXNnaWQgIiIKKyJCPGRwa2ctc2hsaWJkZXBzPiB3aWxsIGZhaWwgaWYgaXQgY2FuJ3QgZmluZCBhIHB1YmxpYyBsaWJyYXJ5IHVzZWQgYnkgYSAiCisiYmluYXJ5IG9yIGlmIHRoaXMgbGlicmFyeSBoYXMgbm8gYXNzb2NpYXRlZCBkZXBlbmRlbmN5IGluZm9ybWF0aW9uIChlaXRoZXIgIgorInNobGlicyBmaWxlIG9yIHN5bWJvbHMgZmlsZSkuIEEgcHVibGljIGxpYnJhcnkgaGFzIGEgU09OQU1FIGFuZCBpcyB2ZXJzaW9uZWQgIgorIihsaWJzb21ldGhpbmcuc28uSTxYPikuIEEgcHJpdmF0ZSBsaWJyYXJ5IChsaWtlIGEgcGx1Z2luKSBzaG91bGQgbm90IGhhdmUgYSAiCisiU09OQU1FIGFuZCBkb2Vzbid0IG5lZWQgdG8gYmUgdmVyc2lvbmVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zaGxpYmRlcHMuMToyNjkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGNvdWxkbid0IGZpbmQgbGlicmFyeSA+STxsaWJyYXJ5LXNvbmFtZT5CPCBuZWVkZWQgYnkgPkk8YmluYXJ5PkI8IChpdHMgUlBBVEggaXMgJz5JPHJwYXRoPkI8Jyk+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6Mjg1Cittc2dpZCAiIgorIlRoZSBJPGJpbmFyeT4gdXNlcyBhIGxpYnJhcnkgY2FsbGVkIEk8bGlicmFyeS1zb25hbWU+IGJ1dCBCPGRwa2ctc2hsaWJkZXBzPiAiCisiaGFzIGJlZW4gdW5hYmxlIHRvIGZpbmQgdGhlIGxpYnJhcnkuICBCPGRwa2ctc2hsaWJkZXBzPiBjcmVhdGVzIGEgbGlzdCBvZiAiCisiZGlyZWN0b3JpZXMgdG8gY2hlY2sgYXMgZm9sbG93aW5nOiBkaXJlY3RvcmllcyBsaXN0ZWQgaW4gdGhlIFJQQVRIIG9mIHRoZSAiCisiYmluYXJ5LCBkaXJlY3RvcmllcyBsaXN0ZWQgaW4gL2V0Yy9sZC5zby5jb25mLCBkaXJlY3RvcmllcyBsaXN0ZWQgaW4gdGhlICIKKyJMRF9MSUJSQVJZX1BBVEggZW52aXJvbm1lbnQgdmFyaWFibGUsIGFuZCBzdGFuZGFyZCBwdWJsaWMgZGlyZWN0b3JpZXMgKC8iCisibGliLCAvdXNyL2xpYiwgL2xpYjMyLCAvdXNyL2xpYjMyLCAvbGliNjQsIC91c3IvbGliNjQpLiBUaGVuIGl0IGNoZWNrcyB0aG9zZSAiCisiZGlyZWN0b3JpZXMgaW4gdGhlIHBhY2thZ2UncyBidWlsZCB0cmVlIG9mIHRoZSBiaW5hcnkgYmVpbmcgYW5hbHl6ZWQsIGluIHRoZSAiCisicGFja2FnZXMnIGJ1aWxkIHRyZWVzIGluZGljYXRlZCB3aXRoIHRoZSAtUyBjb21tYW5kLWxpbmUgb3B0aW9uLCBpbiBvdGhlciAiCisicGFja2FnZXMnIGJ1aWxkIHRyZWVzIHRoYXQgY29udGFpbnMgYSBERUJJQU4vc2hsaWJzIG9yIERFQklBTi9zeW1ib2xzIGZpbGUgIgorImFuZCBmaW5hbGx5IGluIHRoZSByb290IGRpcmVjdG9yeS4gIElmIHRoZSBsaWJyYXJ5IGlzIG5vdCBmb3VuZCBpbiBhbnkgb2YgIgorInRob3NlIGRpcmVjdG9yaWVzLCB0aGVuIHlvdSBnZXQgdGhpcyBlcnJvci4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToyOTEKK21zZ2lkICIiCisiSWYgdGhlIGxpYnJhcnkgbm90IGZvdW5kIGlzIGluIGEgcHJpdmF0ZSBkaXJlY3Rvcnkgb2YgdGhlIHNhbWUgcGFja2FnZSwgdGhlbiAiCisieW91IHdhbnQgdG8gYWRkIHRoZSBkaXJlY3RvcnkgdG8gTERfTElCUkFSWV9QQVRILiBJZiBpdCdzIGluIGFub3RoZXIgYmluYXJ5ICIKKyJwYWNrYWdlIGJlaW5nIGJ1aWx0LCB5b3Ugd2FudCB0byBtYWtlIHN1cmUgdGhhdCB0aGUgc2hsaWJzL3N5bWJvbHMgZmlsZSBvZiAiCisidGhpcyBwYWNrYWdlIGlzIGFscmVhZHkgY3JlYXRlZCBhbmQgdGhhdCBMRF9MSUJSQVJZX1BBVEggY29udGFpbnMgdGhlICIKKyJhcHByb3ByaWF0ZSBkaXJlY3RvcnkgaWYgaXQgYWxzbyBpcyBpbiBhIHByaXZhdGUgZGlyZWN0b3J5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zaGxpYmRlcHMuMToyOTEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPG5vIGRlcGVuZGVuY3kgaW5mb3JtYXRpb24gZm91bmQgZm9yID5JPGxpYnJhcnktZmlsZT5CPCAodXNlZCBieSA+STxiaW5hcnk+QjwpLj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTozMDQKK21zZ2lkICIiCisiVGhlIGxpYnJhcnkgbmVlZGVkIGJ5IEk8YmluYXJ5PiBoYXMgYmVlbiBmb3VuZCBieSBCPGRwa2ctc2hsaWJkZXBzPiBpbiAiCisiSTxsaWJyYXJ5LWZpbGU+IGJ1dCBCPGRwa2ctc2hsaWJkZXBzPiBoYXMgYmVlbiB1bmFibGUgdG8gZmluZCBhbnkgZGVwZW5kZW5jeSAiCisiaW5mb3JtYXRpb24gZm9yIHRoYXQgbGlicmFyeS4gVG8gZmluZCBvdXQgdGhlIGRlcGVuZGVuY3ksIGl0IGhhcyB0cmllZCB0byAiCisibWFwIHRoZSBsaWJyYXJ5IHRvIGEgRGViaWFuIHBhY2thZ2Ugd2l0aCB0aGUgaGVscCBvZiBCPGRwa2cgLVMgPkk8bGlicmFyeS0iCisiZmlsZT4uICBUaGVuIGl0IGNoZWNrZWQgdGhlIGNvcnJlc3BvbmRpbmcgc2hsaWJzIGFuZCBzeW1ib2xzIGZpbGVzIGluIC92YXIvIgorImxpYi9kcGtnL2luZm8vLCBhbmQgaW4gdGhlIHZhcmlvdXMgcGFja2FnZSdzIGJ1aWxkIHRyZWVzIChkZWJpYW4vKi9ERUJJQU4vKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTozMTgKK21zZ2lkICIiCisiVGhpcyBmYWlsdXJlIGNhbiBiZSBjYXVzZWQgYnkgYSBiYWQgb3IgbWlzc2luZyBzaGxpYnMgb3Igc3ltYm9scyBmaWxlIGluIHRoZSAiCisicGFja2FnZSBvZiB0aGUgbGlicmFyeS4gSXQgbWlnaHQgYWxzbyBoYXBwZW4gaWYgdGhlIGxpYnJhcnkgaXMgYnVpbHQgd2l0aGluICIKKyJ0aGUgc2FtZSBzb3VyY2UgcGFja2FnZSBhbmQgaWYgdGhlIHNobGlicyBmaWxlcyBoYXMgbm90IHlldCBiZWVuIGNyZWF0ZWQgKGluICIKKyJ3aGljaCBjYXNlIHlvdSBtdXN0IGZpeCBkZWJpYW4vcnVsZXMgdG8gY3JlYXRlIHRoZSBzaGxpYnMgYmVmb3JlIGNhbGxpbmcgIgorIkI8ZHBrZy1zaGxpYmRlcHM+KS4gQmFkIFJQQVRIIGNhbiBhbHNvIGxlYWQgdG8gdGhlIGxpYnJhcnkgYmVpbmcgZm91bmQgdW5kZXIgIgorImEgbm9uLWNhbm9uaWNhbCBuYW1lIChleGFtcGxlOiAvdXNyL2xpYi9vcGVub2ZmaWNlLm9yZy8uLi9saWIvbGlic3NsLiIKKyJzby4wLjkuOCBpbnN0ZWFkIG9mIC91c3IvbGliL2xpYnNzbC5zby4wLjkuOCkgdGhhdCdzIG5vdCBhc3NvY2lhdGVkIHRvIGFueSAiCisicGFja2FnZSwgQjxkcGtnLXNobGliZGVwcz4gdHJpZXMgdG8gd29yayBhcm91bmQgdGhpcyBieSB0cnlpbmcgdG8gZmFsbGJhY2sgIgorIm9uIGEgY2Fub25pY2FsIG5hbWUgKHVzaW5nIEI8cmVhbHBhdGg+KDMpKSAgYnV0IGl0IG1pZ2h0IG5vdCBhbHdheXMgd29yay4gIgorIkl0J3MgYWx3YXlzIGJlc3QgdG8gY2xlYW4gdXAgdGhlIFJQQVRIIG9mIHRoZSBiaW5hcnkgdG8gYXZvaWQgcHJvYmxlbXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MzI0Cittc2dpZCAiIgorIkNhbGxpbmcgQjxkcGtnLXNobGliZGVwcz4gaW4gdmVyYm9zZSBtb2RlICgtdikgd2lsbCBwcm92aWRlIG11Y2ggbW9yZSAiCisiaW5mb3JtYXRpb24gYWJvdXQgd2hlcmUgaXQgdHJpZWQgdG8gZmluZCB0aGUgZGVwZW5kZW5jeSBpbmZvcm1hdGlvbi4gVGhpcyAiCisibWlnaHQgYmUgdXNlZnVsIGlmIHlvdSBkb24ndCB1bmRlcnN0YW5kIHdoeSBpdCdzIGdpdmluZyB5b3UgdGhpcyBlcnJvci4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTozMjgKKyMsIGZ1enp5Cittc2dpZCAiQjxkZWItc2hsaWJzPig1KSwgQjxkZWItc3ltYm9scz4oNSksIEI8ZHBrZy1nZW5zeW1ib2xzPigxKS4iCittc2dzdHIgIkI8ZGViPig1KSwgQjxkZWItY29udHJvbD4oNSksIEI8ZHBrZz4oMSksIEI8ZHNlbGVjdD4oMSkuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjMzNQorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDA2IEZyYW5rIExpY2h0ZW5oZWxkIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLXNvdXJjZS4xOjIKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiZHBrZy1zb3VyY2UiCittc2dzdHIgImRwa2cga8Opc3psZXQiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NQorIywgZnV6enkKK21zZ2lkICJkcGtnLXNvdXJjZSAtIERlYmlhbiBzb3VyY2UgcGFja2FnZSAoLmRzYykgbWFuaXB1bGF0aW9uIHRvb2wiCittc2dzdHIgIiIKKyJBIEI8ZHBrZy1kZWI+IERlYmlhbiBhcmNow612dW1va2F0IGNzb21hZ29sLCBraWJvbnQgw6lzIGluZm9ybcOhY2nDs2thdCBuecO6anQgIgorInLDs2x1ay4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6OQorIywgZnV6enkKK21zZ2lkICJCPGRwa2ctc291cmNlPiBbSTxvcHRpb24+Li4uXSBJPGNvbW1hbmQ+IgorbXNnc3RyICJCPGRwa2ctZGViPiBCPC1jPnxCPC0tY29udGVudHM+IEk8YXJjaMOtdnVtPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToxMworIywgZnV6enkKK21zZ2lkICJCPGRwa2ctc291cmNlPiBwYWNrcyBhbmQgdW5wYWNrcyBEZWJpYW4gc291cmNlIGFyY2hpdmVzLiIKK21zZ3N0ciAiIgorIkEgQjxkcGtnLWRlYj4gRGViaWFuIGFyY2jDrXZ1bW9rYXQgY3NvbWFnb2wsIGtpYm9udCDDqXMgaW5mb3Jtw6FjacOza2F0IG55w7pqdCAiCisicsOzbHVrLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToxNworbXNnaWQgIiIKKyJOb25lIG9mIHRoZXNlIGNvbW1hbmRzIGFsbG93IG11bHRpcGxlIG9wdGlvbnMgdG8gYmUgY29tYmluZWQgaW50byBvbmUsIGFuZCAiCisidGhleSBkbyBub3QgYWxsb3cgdGhlIHZhbHVlIGZvciBhbiBvcHRpb24gdG8gYmUgc3BlY2lmaWVkIGluIGEgc2VwYXJhdGUgIgorImFyZ3VtZW50LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMToxOQorIywgbm8td3JhcAorbXNnaWQgIkI8LXggPkk8ZmlsZW5hbWU+QjwuZHNjID5bSTxvdXRwdXQtZGlyZWN0b3J5Pl0iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToyOQorbXNnaWQgIiIKKyJFeHRyYWN0IGEgc291cmNlIHBhY2thZ2UuIE9uZSBub24tb3B0aW9uIGFyZ3VtZW50IG11c3QgYmUgc3VwcGxpZWQsIHRoZSBuYW1lICIKKyJvZiB0aGUgRGViaWFuIHNvdXJjZSBjb250cm9sIGZpbGUgKEI8LmRzYz4pLiAgQW4gb3B0aW9uYWwgc2Vjb25kIG5vbi1vcHRpb24gIgorImFyZ3VtZW50IG1heSBiZSBzdXBwbGllZCB0byBzcGVjaWZ5IHRoZSBkaXJlY3RvcnkgdG8gZXh0cmFjdCB0aGUgc291cmNlICIKKyJwYWNrYWdlIHRvLCB0aGlzIG11c3Qgbm90IGV4aXN0LiBJZiBubyBvdXRwdXQgZGlyZWN0b3J5IGlzIHNwZWNpZmllZCwgdGhlICIKKyJzb3VyY2UgcGFja2FnZSBpcyBleHRyYWN0ZWQgaW50byBhIGRpcmVjdG9yeSBuYW1lZCBJPHNvdXJjZT4tSTx2ZXJzaW9uPiAiCisidW5kZXIgdGhlIGN1cnJlbnQgd29ya2luZyBkaXJlY3RvcnkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MzUKK21zZ2lkICIiCisiQjxkcGtnLXNvdXJjZT4gd2lsbCByZWFkIHRoZSBuYW1lcyBvZiB0aGUgb3RoZXIgZmlsZShzKSBtYWtpbmcgdXAgdGhlIHNvdXJjZSAiCisicGFja2FnZSBmcm9tIHRoZSBjb250cm9sIGZpbGU7IHRoZXkgYXJlIGFzc3VtZWQgdG8gYmUgaW4gdGhlIHNhbWUgZGlyZWN0b3J5ICIKKyJhcyB0aGUgQjwuZHNjPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo0MworbXNnaWQgIiIKKyJUaGUgZmlsZXMgaW4gdGhlIGV4dHJhY3RlZCBwYWNrYWdlIHdpbGwgaGF2ZSB0aGVpciBwZXJtaXNzaW9ucyBhbmQgIgorIm93bmVyc2hpcHMgc2V0IHRvIHRob3NlIHdoaWNoIHdvdWxkIGhhdmUgYmVlbiBleHBlY3RlZCBpZiB0aGUgZmlsZXMgYW5kICIKKyJkaXJlY3RvcmllcyBoYWQgc2ltcGx5IGJlZW4gY3JlYXRlZCAtIGRpcmVjdG9yaWVzIGFuZCBleGVjdXRhYmxlIGZpbGVzIHdpbGwgIgorImJlIDA3NzcgYW5kIHBsYWluIGZpbGVzIHdpbGwgYmUgMDY2NiwgYm90aCBtb2RpZmllZCBieSB0aGUgZXh0cmFjdG9ycycgIgorInVtYXNrOyBpZiB0aGUgcGFyZW50IGRpcmVjdG9yeSBpcyBzZXRnaWQgdGhlbiB0aGUgZXh0cmFjdGVkIGRpcmVjdG9yaWVzIHdpbGwgIgorImJlIHRvbywgYW5kIGFsbCB0aGUgZmlsZXMgYW5kIGRpcmVjdG9yaWVzIHdpbGwgaW5oZXJpdCBpdHMgZ3JvdXAgb3duZXJzaGlwLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjQ4Cittc2dpZCAiIgorIklmIHRoZSBzb3VyY2UgcGFja2FnZSB1c2VzIGEgbm9uLXN0YW5kYXJkIGZvcm1hdCAoY3VycmVudGx5IHRoaXMgbWVhbnMgYWxsICIKKyJmb3JtYXRzIGV4Y2VwdCBcIjEuMFwiKSwgaXRzIG5hbWUgd2lsbCBiZSBzdG9yZWQgaW4gQjxkZWJpYW4vc291cmNlL2Zvcm1hdD4gIgorInNvIHRoYXQgdGhlIGZvbGxvd2luZyBidWlsZHMgb2YgdGhlIHNvdXJjZSBwYWNrYWdlIHVzZSB0aGUgc2FtZSBmb3JtYXQgYnkgIgorImRlZmF1bHQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjQ5CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LWI+IEk8ZGlyZWN0b3J5PiBbSTxmb3JtYXQtc3BlY2lmaWMtcGFyYW1ldGVycz5dIgorbXNnc3RyICJCPGRwa2ctZGViPiBCPC1iPnxCPC0tYnVpbGQ+IEk8a8O2bnl2dMOhcj4gW0k8YXJjaMOtdnVtPnxJPGvDtm55dnTDoXI+XSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1NgorbXNnaWQgIiIKKyJCdWlsZCBhIHNvdXJjZSBwYWNrYWdlLiBUaGUgZmlyc3Qgbm9uLW9wdGlvbiBhcmd1bWVudCBpcyB0YWtlbiBhcyB0aGUgbmFtZSAiCisib2YgdGhlIGRpcmVjdG9yeSBjb250YWluaW5nIHRoZSBkZWJpYW5pemVkIHNvdXJjZSB0cmVlIChpLmUuIHdpdGggYSBkZWJpYW4gIgorInN1Yi1kaXJlY3RvcnkgYW5kIG1heWJlIGNoYW5nZXMgdG8gdGhlIG9yaWdpbmFsIGZpbGVzKS4gIERlcGVuZGluZyBvbiB0aGUgIgorInNvdXJjZSBwYWNrYWdlIGZvcm1hdCB1c2VkIHRvIGJ1aWxkIHRoZSBwYWNrYWdlLCBhZGRpdGlvbmFsIHBhcmFtZXRlcnMgbWlnaHQgIgorImJlIGFjY2VwdGVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjY1Cittc2dpZCAiIgorIkI8ZHBrZy1zb3VyY2U+IHdpbGwgYnVpbGQgdGhlIHNvdXJjZSBwYWNrYWdlIHdpdGggdGhlIGZpcnN0IGZvcm1hdCBmb3VuZCBpbiAiCisidGhpcyBvcmRlcmVkIGxpc3Q6IHRoZSBmb3JtYXQgaW5kaWNhdGVkIHdpdGggdGhlIEk8LS1mb3JtYXQ+IGNvbW1hbmQgbGluZSAiCisib3B0aW9uLCB0aGUgZm9ybWF0IGluZGljYXRlZCBpbiBCPGRlYmlhbi9zb3VyY2UvZm9ybWF0PiwgXCIxLjBcIi4gVGhlICIKKyJmYWxsYmFjayB0byBcIjEuMFwiIGlzIGRlcHJlY2F0ZWQgYW5kIHdpbGwgYmUgcmVtb3ZlZCBhdCBzb21lIHBvaW50IGluIHRoZSAiCisiZnV0dXJlLCB5b3Ugc2hvdWxkIGFsd2F5cyBkb2N1bWVudCB0aGUgZGVzaXJlZCBzb3VyY2UgZm9ybWF0IGluIEI8ZGViaWFuLyIKKyJzb3VyY2UvZm9ybWF0Pi4gU2VlIHNlY3Rpb24gQjxTT1VSQ0UgUEFDS0FHRSBGT1JNQVRTPiBmb3IgYW4gZXh0ZW5zaXZlICIKKyJkZXNjcmlwdGlvbiBvZiB0aGUgdmFyaW91cyBzb3VyY2UgcGFja2FnZSBmb3JtYXRzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTo2NgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tcHJpbnQtZm9ybWF0PiBJPGRpcmVjdG9yeT4iCittc2dzdHIgIkI8U2VjdGlvbjo+IEU8bHQ+c3pha2FzekU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjcxCittc2dpZCAiIgorIlByaW50IHRoZSBzb3VyY2UgZm9ybWF0IHRoYXQgd291bGQgYmUgdXNlZCB0byBidWlsZCB0aGUgc291cmNlIHBhY2thZ2UgaWYgIgorIkI8ZHBrZy1zb3VyY2UgLWIgPkk8ZGlyZWN0b3J5PiB3YXMgY2FsbGVkIChpbiB0aGUgc2FtZSBjb25kaXRpb25zIGFuZCB3aXRoICIKKyJ0aGUgc2FtZSBwYXJhbWV0ZXJzKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NzIKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWJlZm9yZS1idWlsZD4gSTxkaXJlY3Rvcnk+IgorbXNnc3RyICJCPFNlY3Rpb246PiBFPGx0PnN6YWthc3pFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo4MQorbXNnaWQgIiIKKyJSdW4gdGhlIGNvcnJlc3BvbmRpbmcgaG9vayBvZiB0aGUgc291cmNlIHBhY2thZ2UgZm9ybWF0LiBUaGlzIGhvb2sgaXMgY2FsbGVkICIKKyJiZWZvcmUgYW55IGJ1aWxkIG9mIHRoZSBwYWNrYWdlIChCPGRwa2ctYnVpbGRwYWNrYWdlPiBjYWxscyBpdCB2ZXJ5IGVhcmx5ICIKKyJldmVuIGJlZm9yZSBCPGRlYmlhbi9ydWxlcyBjbGVhbj4pLiBUaGlzIGNvbW1hbmQgaXMgaWRlbXBvdGVudCBhbmQgY2FuIGJlICIKKyJjYWxsZWQgbXVsdGlwbGUgdGltZXMuIE5vdCBhbGwgc291cmNlIGZvcm1hdHMgaW1wbGVtZW50IHNvbWV0aGluZyBpbiB0aGlzICIKKyJob29rLCBhbmQgdGhvc2UgdGhhdCBkbyB1c3VhbGx5IHByZXBhcmUgdGhlIHNvdXJjZSB0cmVlIGZvciB0aGUgYnVpbGQgZm9yICIKKyJleGFtcGxlIGJ5IGVuc3VyaW5nIHRoYXQgdGhlIERlYmlhbiBwYXRjaGVzIGFyZSBhcHBsaWVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTo4MgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tYWZ0ZXItYnVpbGQ+IEk8ZGlyZWN0b3J5PiIKK21zZ3N0ciAiQjxTZWN0aW9uOj4gRTxsdD5zemFrYXN6RTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6ODkKK21zZ2lkICIiCisiUnVuIHRoZSBjb3JyZXNwb25kaW5nIGhvb2sgb2YgdGhlIHNvdXJjZSBwYWNrYWdlIGZvcm1hdC4gVGhpcyBob29rIGlzIGNhbGxlZCAiCisiYWZ0ZXIgYW55IGJ1aWxkIG9mIHRoZSBwYWNrYWdlIChCPGRwa2ctYnVpbGRwYWNrYWdlPiBjYWxscyBpdCBsYXN0KS4gVGhpcyAiCisiY29tbWFuZCBpcyBpZGVtcG90ZW50IGFuZCBjYW4gYmUgY2FsbGVkIG11bHRpcGxlIHRpbWVzLiBOb3QgYWxsIHNvdXJjZSAiCisiZm9ybWF0cyBpbXBsZW1lbnQgc29tZXRoaW5nIGluIHRoaXMgaG9vaywgYW5kIHRob3NlIHRoYXQgZG8gdXN1YWxseSB1c2UgaXQgIgorInRvIHVuZG8gd2hhdCBCPC0tYmVmb3JlLWJ1aWxkPiBoYXMgZG9uZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6OTAKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWNvbW1pdD4gW0k8ZGlyZWN0b3J5Pl0gLi4uIgorbXNnc3RyICJCPFNlY3Rpb246PiBFPGx0PnN6YWthc3pFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo5NQorbXNnaWQgIiIKKyJSZWNvcmQgY2hhbmdlcyBpbiB0aGUgc291cmNlIHRyZWUgdW5wYWNrZWQgaW4gSTxkaXJlY3Rvcnk+LiBUaGlzIGNvbW1hbmQgY2FuICIKKyJ0YWtlIHN1cHBsZW1lbnRhcnkgcGFyYW1ldGVycyBkZXBlbmRpbmcgb24gdGhlIHNvdXJjZSBmb3JtYXQuICBJdCB3aWxsIGVycm9yICIKKyJvdXQgZm9yIGZvcm1hdHMgd2hlcmUgdGhpcyBvcGVyYXRpb24gZG9lc24ndCBtZWFuIGFueXRoaW5nLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1zb3VyY2UuMToxMDMKKyMsIG5vLXdyYXAKK21zZ2lkICJHRU5FUklDIEJVSUxEIE9QVElPTlMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToxMTEKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRoZSBtYWluIHNvdXJjZSBjb250cm9sIGZpbGUgdG8gcmVhZCBpbmZvcm1hdGlvbiBmcm9tLiBUaGUgZGVmYXVsdCAiCisiaXMgQjxkZWJpYW4vY29udHJvbD4uICBJZiBnaXZlbiB3aXRoIHJlbGF0aXZlIHBhdGhuYW1lIHRoaXMgaXMgaW50ZXJwcmV0ZWQgIgorInN0YXJ0aW5nIGF0IHRoZSBzb3VyY2UgdHJlZSdzIHRvcCBsZXZlbCBkaXJlY3RvcnkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MTE4Cittc2dpZCAiIgorIlNwZWNpZmllcyB0aGUgY2hhbmdlIGxvZyBmaWxlIHRvIHJlYWQgaW5mb3JtYXRpb24gZnJvbS4gVGhlIGRlZmF1bHQgaXMgIgorIkI8ZGViaWFuL2NoYW5nZWxvZz4uICBJZiBnaXZlbiB3aXRoIHJlbGF0aXZlIHBhdGhuYW1lIHRoaXMgaXMgaW50ZXJwcmV0ZWQgIgorInN0YXJ0aW5nIGF0IHRoZSBzb3VyY2UgdHJlZSdzIHRvcCBsZXZlbCBkaXJlY3RvcnkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjEyMworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tZm9ybWF0PT5JPHZhbHVlPiIKK21zZ3N0ciAiQjwtLXNob3dmb3JtYXQ9Pkk8Zm9ybcOhdHVtPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToxMjcKK21zZ2lkICIiCisiVXNlIHRoZSBnaXZlbiBmb3JtYXQgZm9yIGJ1aWxkaW5nIHRoZSBzb3VyY2UgcGFja2FnZS4gSXQgZG9lcyBvdmVycmlkZSBhbnkgIgorImZvcm1hdCBnaXZlbiBpbiBCPGRlYmlhbi9zb3VyY2UvZm9ybWF0Pi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToxMzcKK21zZ2lkICIiCisiUmVhZCBzdWJzdGl0dXRpb24gdmFyaWFibGVzIGluIEk8c3Vic3R2YXJzZmlsZT47IHRoZSBkZWZhdWx0IGlzIHRvIG5vdCByZWFkICIKKyJhbnkgZmlsZS4gVGhpcyBvcHRpb24gY2FuIGJlIHVzZWQgbXVsdGlwbGUgdGltZXMgdG8gcmVhZCBzdWJzdGl0dXRpb24gIgorInZhcmlhYmxlcyBmcm9tIG11bHRpcGxlIGZpbGVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMToxNDMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1aPkk8Y29tcHJlc3Npb24+LCBCPC0tY29tcHJlc3Npb24+PUk8Y29tcHJlc3Npb24+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MTUxCittc2dpZCAiIgorIlNwZWNpZnkgdGhlIGNvbXByZXNzaW9uIHRvIHVzZSBmb3IgY3JlYXRlZCBmaWxlcyAodGFyYmFsbHMgYW5kIGRpZmZzKS4gIE5vdGUgIgorInRoYXQgdGhpcyBvcHRpb24gd2lsbCBub3QgY2F1c2UgZXhpc3RpbmcgdGFyYmFsbHMgdG8gYmUgcmVjb21wcmVzc2VkLCBpdCAiCisib25seSBhZmZlY3RzIG5ldyBmaWxlcy4gU3VwcG9ydGVkIHZhbHVlcyBhcmU6IEk8Z3ppcD4sIEk8YnppcDI+LCBJPGx6bWE+IGFuZCAiCisiSTx4ej4uICBJPGd6aXA+IGlzIHRoZSBkZWZhdWx0LiBJPHh6PiBpcyBvbmx5IHN1cHBvcnRlZCBzaW5jZSBkcGtnLWRldiAiCisiMS4xNS41LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMToxNTEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC16Pkk8bGV2ZWw+LCBCPC0tY29tcHJlc3Npb24tbGV2ZWw+PUk8bGV2ZWw+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MTU3Cittc2dpZCAiIgorIkNvbXByZXNzaW9uIGxldmVsIHRvIHVzZS4gQXMgd2l0aCBCPC1aPiBpdCBvbmx5IGFmZmVjdHMgbmV3bHkgY3JlYXRlZCBmaWxlcy4gIgorIlN1cHBvcnRlZCB2YWx1ZXMgYXJlOiBJPDE+IHRvIEk8OT4sIEk8YmVzdD4sIGFuZCBJPGZhc3Q+LiAgVGhlIGRlZmF1bHQgaXMgIgorIkk8OT4gZm9yIGd6aXAgYW5kIGJ6aXAyLCBJPDY+IGZvciB4eiBhbmQgbHptYS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6MTU3CisjLCBuby13cmFwCittc2dpZCAiQjwtaT5bSTxyZWdleHA+XSwgQjwtLWRpZmYtaWdub3JlPls9STxyZWdleHA+XSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjE2OQorbXNnaWQgIiIKKyJZb3UgbWF5IHNwZWNpZnkgYSBwZXJsIHJlZ3VsYXIgZXhwcmVzc2lvbiB0byBtYXRjaCBmaWxlcyB5b3Ugd2FudCBmaWx0ZXJlZCAiCisib3V0IG9mIHRoZSBsaXN0IG9mIGZpbGVzIGZvciB0aGUgZGlmZi4gKFRoaXMgbGlzdCBpcyBnZW5lcmF0ZWQgYnkgYSBmaW5kICIKKyJjb21tYW5kLikgKElmIHRoZSBzb3VyY2UgcGFja2FnZSBpcyBiZWluZyBidWlsdCBhcyBhIHZlcnNpb24gMyBzb3VyY2UgIgorInBhY2thZ2UgdXNpbmcgYSBWQ1MsIHRoaXMgY2FuIGJlIHVzZWQgdG8gaWdub3JlIHVuY29tbWl0ZWQgY2hhbmdlcyBvbiAiCisic3BlY2lmaWMgZmlsZXMuIFVzaW5nIC1pLiogd2lsbCBpZ25vcmUgYWxsIG9mIHRoZW0uKSAgQjwtaT4gYnkgaXRzZWxmICIKKyJlbmFibGVzIHRoZSBvcHRpb24sIHdpdGggYSBkZWZhdWx0IHJlZ2V4cCB0aGF0IHdpbGwgZmlsdGVyIG91dCBjb250cm9sIGZpbGVzICIKKyJhbmQgZGlyZWN0b3JpZXMgb2YgdGhlIG1vc3QgY29tbW9uIHJldmlzaW9uIGNvbnRyb2wgc3lzdGVtcywgYmFja3VwIGFuZCBzd2FwICIKKyJmaWxlcyBhbmQgTGlidG9vbCBidWlsZCBvdXRwdXQgZGlyZWN0b3JpZXMuIFRoZXJlIGNhbiBvbmx5IGJlIG9uZSBhY3RpdmUgIgorInJlZ2V4cCwgb2YgbXVsdGlwbGUgQjwtaT4gb3B0aW9ucyBvbmx5IHRoZSBsYXN0IG9uZSB3aWxsIHRha2UgZWZmZWN0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjE3OQorbXNnaWQgIiIKKyJUaGlzIGlzIHZlcnkgaGVscGZ1bCBpbiBjdXR0aW5nIG91dCBleHRyYW5lb3VzIGZpbGVzIHRoYXQgZ2V0IGluY2x1ZGVkIGluICIKKyJ0aGUgZGlmZiwgZS5nLiBpZiB5b3UgbWFpbnRhaW4geW91ciBzb3VyY2UgaW4gYSByZXZpc2lvbiBjb250cm9sIHN5c3RlbSBhbmQgIgorIndhbnQgdG8gdXNlIGEgY2hlY2tvdXQgdG8gYnVpbGQgYSBzb3VyY2UgcGFja2FnZSB3aXRob3V0IGluY2x1ZGluZyB0aGUgIgorImFkZGl0aW9uYWwgZmlsZXMgYW5kIGRpcmVjdG9yaWVzIHRoYXQgaXQgd2lsbCB1c3VhbGx5IGNvbnRhaW4gKGUuZy4gQ1ZTLywgLiIKKyJjdnNpZ25vcmUsIC5zdm4vKS4gVGhlIGRlZmF1bHQgcmVnZXhwIGlzIGFscmVhZHkgdmVyeSBleGhhdXN0aXZlLCBidXQgaWYgeW91ICIKKyJuZWVkIHRvIHJlcGxhY2UgaXQsIHBsZWFzZSBub3RlIHRoYXQgYnkgZGVmYXVsdCBpdCBjYW4gbWF0Y2ggYW55IHBhcnQgb2YgYSAiCisicGF0aCwgc28gaWYgeW91IHdhbnQgdG8gbWF0Y2ggdGhlIGJlZ2luIG9mIGEgZmlsZW5hbWUgb3Igb25seSBmdWxsICIKKyJmaWxlbmFtZXMsIHlvdSB3aWxsIG5lZWQgdG8gcHJvdmlkZSB0aGUgbmVjZXNzYXJ5IGFuY2hvcnMgKGUuZy4gJyhefC8pJywgIgorIicoJHwvKScpIHlvdXJzZWxmLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMToxNzkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tZXh0ZW5kLWRpZmYtaWdub3JlPj1JPHJlZ2V4cD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToxODYKK21zZ2lkICIiCisiVGhlIHBlcmwgcmVndWxhciBleHByZXNzaW9uIHNwZWNpZmllZCB3aWxsIGV4dGVuZCB0aGUgZGVmYXVsdCB2YWx1ZSBvZiBCPC0tIgorImRpZmYtaWdub3JlPiBhbmQgaXRzIGN1cnJlbnQgdmFsdWUgKGlmIHNldCkuIEl0IGRvZXMgdGhpcyBieSBjb25jYXRlbmF0aW5nICIKKyJcIkI8fD5JPHJlZ2V4cD5cIiB0byB0aGUgZXhpc3RpbmcgdmFsdWUuICBUaGlzIG9wdGlvbiBpcyBjb252ZW5pZW50IHRvIHVzZSAiCisiaW4gQjxkZWJpYW4vc291cmNlL29wdGlvbnM+IHRvIGV4Y2x1ZGUgc29tZSBhdXRvLWdlbmVyYXRlZCBmaWxlcyBmcm9tIHRoZSAiCisiYXV0b21hdGljIHBhdGNoIGdlbmVyYXRpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjE4NgorIywgbm8td3JhcAorbXNnaWQgIkI8LUk+W0k8ZmlsZS1wYXR0ZXJuPl0sIEI8LS10YXItaWdub3JlPls9STxmaWxlLXBhdHRlcm4+XSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjE5NQorbXNnaWQgIiIKKyJJZiB0aGlzIG9wdGlvbiBpcyBzcGVjaWZpZWQsIHRoZSBwYXR0ZXJuIHdpbGwgYmUgcGFzc2VkIHRvIEI8dGFyPigxKSdzIC0tIgorImV4Y2x1ZGUgb3B0aW9uIHdoZW4gaXQgaXMgY2FsbGVkIHRvIGdlbmVyYXRlIGEgLm9yaWcudGFyIG9yIC50YXIgZmlsZS4gRm9yICIKKyJleGFtcGxlLCAtSUNWUyB3aWxsIG1ha2UgdGFyIHNraXAgb3ZlciBDVlMgZGlyZWN0b3JpZXMgd2hlbiBnZW5lcmF0aW5nIGEgLiIKKyJ0YXIuZ3ogZmlsZS4gVGhlIG9wdGlvbiBtYXkgYmUgcmVwZWF0ZWQgbXVsdGlwbGUgdGltZXMgdG8gbGlzdCBtdWx0aXBsZSAiCisicGF0dGVybnMgdG8gZXhjbHVkZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToyMDAKK21zZ2lkICIiCisiQjwtST4gYnkgaXRzZWxmIGFkZHMgZGVmYXVsdCAtLWV4Y2x1ZGUgb3B0aW9ucyB0aGF0IHdpbGwgZmlsdGVyIG91dCBjb250cm9sICIKKyJmaWxlcyBhbmQgZGlyZWN0b3JpZXMgb2YgdGhlIG1vc3QgY29tbW9uIHJldmlzaW9uIGNvbnRyb2wgc3lzdGVtcywgYmFja3VwICIKKyJhbmQgc3dhcCBmaWxlcyBhbmQgTGlidG9vbCBidWlsZCBvdXRwdXQgZGlyZWN0b3JpZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MjEyCittc2dpZCAiIgorIkI8Tm90ZTo+IFdoaWxlIHRoZXkgaGF2ZSBzaW1pbGFyIHB1cnBvc2VzLCBCPC1pPiBhbmQgQjwtST4gaGF2ZSB2ZXJ5ICIKKyJkaWZmZXJlbnQgc3ludGF4IGFuZCBzZW1hbnRpY3MuIEI8LWk+IGNhbiBvbmx5IGJlIHNwZWNpZmllZCBvbmNlIGFuZCB0YWtlcyBhICIKKyJwZXJsIGNvbXBhdGlibGUgcmVndWxhciBleHByZXNzaW9uIHdoaWNoIGlzIG1hdGNoZWQgYWdhaW5zdCB0aGUgZnVsbCAiCisicmVsYXRpdmUgcGF0aCBvZiBlYWNoIGZpbGUuIEI8LUk+IGNhbiBzcGVjaWZpZWQgbXVsdGlwbGUgdGltZXMgYW5kIHRha2VzIGEgIgorImZpbGVuYW1lIHBhdHRlcm4gd2l0aCBzaGVsbCB3aWxkY2FyZHMuICBUaGUgcGF0dGVybiBpcyBhcHBsaWVkIHRvIHRoZSBmdWxsICIKKyJyZWxhdGl2ZSBwYXRoIGJ1dCBhbHNvIHRvIGVhY2ggcGFydCBvZiB0aGUgcGF0aCBpbmRpdmlkdWFsbHkuIFRoZSBleGFjdCAiCisic2VtYW50aWMgb2YgdGFyJ3MgLS1leGNsdWRlIG9wdGlvbiBpcyBzb21ld2hhdCBjb21wbGljYXRlZCwgc2VlIGh0dHA6Ly93d3cuIgorImdudS5vcmcvc29mdHdhcmUvdGFyL21hbnVhbC90YXIuaHRtbCN3aWxkY2FyZHMgZm9yIGEgZnVsbCBkb2N1bWVudGF0aW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjIxNQorbXNnaWQgIiIKKyJUaGUgZGVmYXVsdCByZWdleHAgYW5kIHBhdHRlcm5zIGZvciBib3RoIG9wdGlvbnMgY2FuIGJlIHNlZW4gaW4gdGhlIG91dHB1dCAiCisib2YgdGhlIEI8LS1oZWxwPiBjb21tYW5kLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1zb3VyY2UuMToyMTUKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiR0VORVJJQyBFWFRSQUNUIE9QVElPTlMiCittc2dzdHIgIk3DgVMgTEVIRVTFkFPDiUdFSyIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6MjE2CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1uby1jb3B5PiIKK21zZ3N0ciAiQjwtLW5vY2hlY2s+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjIxOQorbXNnaWQgIkRvIG5vdCBjb3B5IG9yaWdpbmFsIHRhcmJhbGxzIG5lYXIgdGhlIGV4dHJhY3RlZCBzb3VyY2UgcGFja2FnZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6MjE5CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1uby1jaGVjaz4iCittc2dzdHIgIkI8LS1ub2NoZWNrPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToyMjIKK21zZ2lkICJEbyBub3QgY2hlY2sgc2lnbmF0dXJlcyBhbmQgY2hlY2tzdW1zIGJlZm9yZSB1bnBhY2tpbmcuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjIyMgorIywgbm8td3JhcAorbXNnaWQgIkI8LS1yZXF1aXJlLXZhbGlkLXNpZ25hdHVyZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToyMzAKK21zZ2lkICIiCisiUmVmdXNlIHRvIHVucGFjayB0aGUgc291cmNlIHBhY2thZ2UgaWYgaXQgZG9lc24ndCBjb250YWluIGFuIE9wZW5QR1AgIgorInNpZ25hdHVyZSB0aGF0IGNhbiBiZSB2ZXJpZmllZCBlaXRoZXIgd2l0aCB0aGUgdXNlcidzIEk8dHJ1c3RlZGtleXMuZ3BnPiAiCisia2V5cmluZywgb25lIG9mIHRoZSB2ZW5kb3Itc3BlY2lmaWMga2V5cmluZ3MsIG9yIG9uZSBvZiB0aGUgb2ZmaWNpYWwgRGViaWFuICIKKyJrZXlyaW5ncyAoSTwvdXNyL3NoYXJlL2tleXJpbmdzL2RlYmlhbi1rZXlyaW5nLmdwZz4gYW5kIEk8L3Vzci9zaGFyZS8iCisia2V5cmluZ3MvZGViaWFuLW1haW50YWluZXJzLmdwZz4pLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1zb3VyY2UuMToyMzEKKyMsIG5vLXdyYXAKK21zZ2lkICJTT1VSQ0UgUEFDS0FHRSBGT1JNQVRTIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MjM2Cittc2dpZCAiIgorIklmIHlvdSBkb24ndCBrbm93IHdoYXQgc291cmNlIGZvcm1hdCB0byB1c2UsIHlvdSBzaG91bGQgcHJvYmFibHkgcGljayBlaXRoZXIgIgorIlwiMy4wIChxdWlsdClcIiBvciBcIjMuMCAobmF0aXZlKVwiLiBTZWUgaHR0cDovL3dpa2kuZGViaWFuLm9yZy9Qcm9qZWN0cy8iCisiRGViU3JjMy4wIGZvciBpbmZvcm1hdGlvbiBvbiB0aGUgZGVwbG95bWVudCBvZiB0aG9zZSBmb3JtYXRzIHdpdGhpbiBEZWJpYW4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjIzNworIywgbm8td3JhcAorbXNnaWQgIkZvcm1hdDogMS4wIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MjQxCittc2dpZCAiIgorIkEgc291cmNlIHBhY2thZ2UgaW4gdGhpcyBmb3JtYXQgY29uc2lzdHMgZWl0aGVyIG9mIGEgQjwub3JpZy50YXIuZ3o+ICIKKyJhc3NvY2lhdGVkIHRvIGEgQjwuZGlmZi5nej4gb3IgYSBzaW5nbGUgQjwudGFyLmd6PiAoaW4gdGhhdCBjYXNlIHRoZSBwYWNrYWdlICIKKyJpcyBzYWlkIHRvIGJlIEk8bmF0aXZlPikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MjQzIGRwa2ctc291cmNlLjE6NDExIGRwa2ctc291cmNlLjE6NTg2IGRwa2ctc291cmNlLjE6NjI1Cittc2dpZCAiQjxFeHRyYWN0aW5nPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjI1MworbXNnaWQgIiIKKyJFeHRyYWN0aW5nIGEgbmF0aXZlIHBhY2thZ2UgaXMgYSBzaW1wbGUgZXh0cmFjdGlvbiBvZiB0aGUgc2luZ2xlIHRhcmJhbGwgaW4gIgorInRoZSB0YXJnZXQgZGlyZWN0b3J5LiBFeHRyYWN0aW5nIGEgbm9uLW5hdGl2ZSBwYWNrYWdlIGlzIGRvbmUgYnkgZmlyc3QgIgorInVucGFja2luZyB0aGUgQjwub3JpZy50YXIuZ3o+IGFuZCB0aGVuIGFwcGx5aW5nIHRoZSBwYXRjaCBjb250YWluZWQgaW4gdGhlICIKKyJCPC5kaWZmLmd6PiBmaWxlLiBUaGUgdGltZXN0YW1wIG9mIGFsbCBwYXRjaGVkIGZpbGVzIGlzIHJlc2V0IHRvIHRoZSAiCisiZXh0cmFjdGlvbiB0aW1lIG9mIHRoZSBzb3VyY2UgcGFja2FnZSAodGhpcyBhdm9pZHMgdGltZXN0YW1wIHNrZXdzIGxlYWRpbmcgIgorInRvIHByb2JsZW1zIHdoZW4gYXV0b2dlbmVyYXRlZCBmaWxlcyBhcmUgcGF0Y2hlZCkuIFRoZSBkaWZmIGNhbiBjcmVhdGUgbmV3ICIKKyJmaWxlcyAodGhlIHdob2xlIGRlYmlhbiBkaXJlY3RvcnkgaXMgY3JlYXRlZCB0aGF0IHdheSkgYnV0IGNhbid0IHJlbW92ZSAiCisiZmlsZXMgKGVtcHR5IGZpbGVzIHdpbGwgYmUgbGVmdCBvdmVyKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToyNTUgZHBrZy1zb3VyY2UuMTo0MzkgZHBrZy1zb3VyY2UuMTo1OTcgZHBrZy1zb3VyY2UuMTo2MzAKK21zZ2lkICJCPEJ1aWxkaW5nPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjI2MQorbXNnaWQgIiIKKyJCdWlsZGluZyBhIG5hdGl2ZSBwYWNrYWdlIGlzIGp1c3QgY3JlYXRpbmcgYSBzaW5nbGUgdGFyYmFsbCB3aXRoIHRoZSBzb3VyY2UgIgorImRpcmVjdG9yeS4gQnVpbGRpbmcgYSBub24tbmF0aXZlIHBhY2thZ2UgaW52b2x2ZXMgZXh0cmFjdGluZyB0aGUgb3JpZ2luYWwgIgorInRhcmJhbGwgaW4gYSBzZXBhcmF0ZSBcIi5vcmlnXCIgZGlyZWN0b3J5IGFuZCByZWdlbmVyYXRpbmcgdGhlIEI8LmRpZmYuZ3o+ICIKKyJieSBjb21wYXJpbmcgdGhlIHNvdXJjZSBwYWNrYWdlIEk8ZGlyZWN0b3J5PiB3aXRoIHRoZSAub3JpZyBkaXJlY3RvcnkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjI2MgorIywgbm8td3JhcAorbXNnaWQgIkI8QnVpbGQgb3B0aW9ucyAod2l0aCAtYik6PiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjI3NQorbXNnaWQgIiIKKyJJZiBhIHNlY29uZCBub24tb3B0aW9uIGFyZ3VtZW50IGlzIHN1cHBsaWVkIGl0IHNob3VsZCBiZSB0aGUgbmFtZSBvZiB0aGUgIgorIm9yaWdpbmFsIHNvdXJjZSBkaXJlY3Rvcnkgb3IgdGFyZmlsZSBvciB0aGUgZW1wdHkgc3RyaW5nIGlmIHRoZSBwYWNrYWdlIGlzIGEgIgorIkRlYmlhbi1zcGVjaWZpYyBvbmUgYW5kIHNvIGhhcyBubyBEZWJpYW5pc2F0aW9uIGRpZmZzLiBJZiBubyBzZWNvbmQgYXJndW1lbnQgIgorImlzIHN1cHBsaWVkIHRoZW4gQjxkcGtnLXNvdXJjZT4gd2lsbCBsb29rIGZvciB0aGUgb3JpZ2luYWwgc291cmNlIHRhcmZpbGUgIgorIkk8cGFja2FnZT5CPF8+STx1cHN0cmVhbS12ZXJzaW9uPkI8Lm9yaWcudGFyLmd6PiBvciB0aGUgb3JpZ2luYWwgc291cmNlICIKKyJkaXJlY3RvcnkgSTxkaXJlY3Rvcnk+Qjwub3JpZz4gZGVwZW5kaW5nIG9uIHRoZSBCPC1zWD4gYXJndW1lbnRzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjI4MQorbXNnaWQgIiIKKyJCPC1zYT4sIEI8LXNwPiwgQjwtc2s+LCBCPC1zdT4gYW5kIEI8LXNyPiB3aWxsIG5vdCBvdmVyd3JpdGUgZXhpc3RpbmcgIgorInRhcmZpbGVzIG9yIGRpcmVjdG9yaWVzLiBJZiB0aGlzIGlzIGRlc2lyZWQgdGhlbiBCPC1zQT4sIEI8LXNQPiwgQjwtc0s+LCBCPC0iCisic1U+IGFuZCBCPC1zUj4gc2hvdWxkIGJlIHVzZWQgaW5zdGVhZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6MjgxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LXNrPiIKK21zZ3N0ciAiQjwtLW5ldz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MjkwCittc2dpZCAiIgorIlNwZWNpZmllcyB0byBleHBlY3QgdGhlIG9yaWdpbmFsIHNvdXJjZSBhcyBhIHRhcmZpbGUsIGJ5IGRlZmF1bHQgIgorIkk8cGFja2FnZT5CPF8+STx1cHN0cmVhbS12ZXJzaW9uPkI8Lm9yaWcudGFyLj5JPGV4dGVuc2lvbj4uICBJdCB3aWxsIGxlYXZlICIKKyJ0aGlzIG9yaWdpbmFsIHNvdXJjZSBpbiBwbGFjZSBhcyBhIHRhcmZpbGUsIG9yIGNvcHkgaXQgdG8gdGhlIGN1cnJlbnQgIgorImRpcmVjdG9yeSBpZiBpdCBpc24ndCBhbHJlYWR5IHRoZXJlLiBUaGUgdGFyYmFsbCB3aWxsIGJlIHVucGFja2VkIGludG8gIgorIkk8ZGlyZWN0b3J5PkI8Lm9yaWc+IGZvciB0aGUgZ2VuZXJhdGlvbiBvZiB0aGUgZGlmZi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6MjkwIGRwa2ctc291cmNlLjE6MzU5CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LXNwPiIKK21zZ3N0ciAiQjwtLW5ldz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6Mjk1Cittc2dpZCAiTGlrZSBCPC1zaz4gYnV0IHdpbGwgcmVtb3ZlIHRoZSBkaXJlY3RvcnkgYWdhaW4gYWZ0ZXJ3YXJkcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6Mjk1IGRwa2ctc291cmNlLjE6MzY1CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LXN1PiIKK21zZ3N0ciAiQjwtLW5ldz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MzAzCittc2dpZCAiIgorIlNwZWNpZmllcyB0aGF0IHRoZSBvcmlnaW5hbCBzb3VyY2UgaXMgZXhwZWN0ZWQgYXMgYSBkaXJlY3RvcnksIGJ5IGRlZmF1bHQgIgorIkk8cGFja2FnZT5CPC0+STx1cHN0cmVhbS12ZXJzaW9uPkI8Lm9yaWc+IGFuZCBCPGRwa2ctc291cmNlPiB3aWxsIGNyZWF0ZSBhICIKKyJuZXcgb3JpZ2luYWwgc291cmNlIGFyY2hpdmUgZnJvbSBpdC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6MzAzCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LXNyPiIKK21zZ3N0ciAiQjwtLW5ldz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MzA4Cittc2dpZCAiTGlrZSBCPC1zdT4gYnV0IHdpbGwgcmVtb3ZlIHRoYXQgZGlyZWN0b3J5IGFmdGVyIGl0IGhhcyBiZWVuIHVzZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjMwOAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1zcz4iCittc2dzdHIgIkI8LS1uZXc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjMxNgorbXNnaWQgIiIKKyJTcGVjaWZpZXMgdGhhdCB0aGUgb3JpZ2luYWwgc291cmNlIGlzIGF2YWlsYWJsZSBib3RoIGFzIGEgZGlyZWN0b3J5IGFuZCBhcyBhICIKKyJ0YXJmaWxlLiBkcGtnLXNvdXJjZSB3aWxsIHVzZSB0aGUgZGlyZWN0b3J5IHRvIGNyZWF0ZSB0aGUgZGlmZiwgYnV0IHRoZSAiCisidGFyZmlsZSB0byBjcmVhdGUgdGhlIEI8LmRzYz4uICBUaGlzIG9wdGlvbiBtdXN0IGJlIHVzZWQgd2l0aCBjYXJlIC0gaWYgdGhlICIKKyJkaXJlY3RvcnkgYW5kIHRhcmZpbGUgZG8gbm90IG1hdGNoIGEgYmFkIHNvdXJjZSBhcmNoaXZlIHdpbGwgYmUgZ2VuZXJhdGVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTozMTYgZHBrZy1zb3VyY2UuMTozNjgKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtc24+IgorbXNnc3RyICJCPC0tbmV3PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTozMjIKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRvIG5vdCBsb29rIGZvciBhbnkgb3JpZ2luYWwgc291cmNlLCBhbmQgdG8gbm90IGdlbmVyYXRlIGEgZGlmZi4gICIKKyJUaGUgc2Vjb25kIGFyZ3VtZW50LCBpZiBzdXBwbGllZCwgbXVzdCBiZSB0aGUgZW1wdHkgc3RyaW5nLiBUaGlzIGlzIHVzZWQgZm9yICIKKyJEZWJpYW4tc3BlY2lmaWMgcGFja2FnZXMgd2hpY2ggZG8gbm90IGhhdmUgYSBzZXBhcmF0ZSB1cHN0cmVhbSBzb3VyY2UgYW5kICIKKyJ0aGVyZWZvcmUgaGF2ZSBubyBkZWJpYW5pc2F0aW9uIGRpZmZzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTozMjIKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtc2E+IG9yIEI8LXNBPiIKK21zZ3N0ciAiQjwtLWluZm8+LCBCPC1JPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTozNDgKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRvIGxvb2sgZm9yIHRoZSBvcmlnaW5hbCBzb3VyY2UgYXJjaGl2ZSBhcyBhIHRhcmZpbGUgb3IgYXMgYSAiCisiZGlyZWN0b3J5IC0gdGhlIHNlY29uZCBhcmd1bWVudCwgaWYgYW55LCBtYXkgYmUgZWl0aGVyLCBvciB0aGUgZW1wdHkgc3RyaW5nICIKKyIodGhpcyBpcyBlcXVpdmFsZW50IHRvIHVzaW5nIEI8LXNuPikuICBJZiBhIHRhcmZpbGUgaXMgZm91bmQgaXQgd2lsbCB1bnBhY2sgIgorIml0IHRvIGNyZWF0ZSB0aGUgZGlmZiBhbmQgcmVtb3ZlIGl0IGFmdGVyd2FyZHMgKHRoaXMgaXMgZXF1aXZhbGVudCB0byBCPC0iCisic3A+KTsgaWYgYSBkaXJlY3RvcnkgaXMgZm91bmQgaXQgd2lsbCBwYWNrIGl0IHRvIGNyZWF0ZSB0aGUgb3JpZ2luYWwgc291cmNlICIKKyJhbmQgcmVtb3ZlIGl0IGFmdGVyd2FyZHMgKHRoaXMgaXMgZXF1aXZhbGVudCB0byBCPC1zcj4pOyBpZiBuZWl0aGVyIGlzIGZvdW5kICIKKyJpdCB3aWxsIGFzc3VtZSB0aGF0IHRoZSBwYWNrYWdlIGhhcyBubyBkZWJpYW5pc2F0aW9uIGRpZmZzLCBvbmx5IGEgIgorInN0cmFpZ2h0Zm9yd2FyZCBzb3VyY2UgYXJjaGl2ZSAodGhpcyBpcyBlcXVpdmFsZW50IHRvIEI8LXNuPikuICBJZiBib3RoIGFyZSAiCisiZm91bmQgdGhlbiBCPGRwa2ctc291cmNlPiB3aWxsIGlnbm9yZSB0aGUgZGlyZWN0b3J5LCBvdmVyd3JpdGluZyBpdCwgaWYgQjwtIgorInNBPiB3YXMgc3BlY2lmaWVkICh0aGlzIGlzIGVxdWl2YWxlbnQgdG8gQjwtc1A+KSAgb3IgcmFpc2UgYW4gZXJyb3IgaWYgQjwtIgorInNhPiB3YXMgc3BlY2lmaWVkLiAgQjwtc0E+IGlzIHRoZSBkZWZhdWx0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTozNDggZHBrZy1zb3VyY2UuMTo1NDEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tYWJvcnQtb24tdXBzdHJlYW0tY2hhbmdlcz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTozNTQKK21zZ2lkICIiCisiVGhlIHByb2Nlc3MgZmFpbHMgaWYgdGhlIGdlbmVyYXRlZCBkaWZmIGNvbnRhaW5zIGNoYW5nZXMgdG8gZmlsZXMgb3V0c2lkZSBvZiAiCisidGhlIGRlYmlhbiBzdWItZGlyZWN0b3J5LiBUaGlzIG9wdGlvbiBpcyBub3QgYWxsb3dlZCBpbiBCPGRlYmlhbi9zb3VyY2UvIgorIm9wdGlvbnM+IGJ1dCBjYW4gYmUgdXNlZCBpbiBCPGRlYmlhbi9zb3VyY2UvbG9jYWwtb3B0aW9ucz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjM1NQorIywgbm8td3JhcAorbXNnaWQgIkI8RXh0cmFjdCBvcHRpb25zICh3aXRoIC14KTo+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MzU5Cittc2dpZCAiSW4gYWxsIGNhc2VzIGFueSBleGlzdGluZyBvcmlnaW5hbCBzb3VyY2UgdHJlZSB3aWxsIGJlIHJlbW92ZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MzY1Cittc2dpZCAiIgorIlVzZWQgd2hlbiBleHRyYWN0aW5nIHRoZW4gdGhlIG9yaWdpbmFsIHNvdXJjZSAoaWYgYW55KSB3aWxsIGJlIGxlZnQgYXMgYSAiCisidGFyZmlsZS4gSWYgaXQgaXMgbm90IGFscmVhZHkgbG9jYXRlZCBpbiB0aGUgY3VycmVudCBkaXJlY3Rvcnkgb3IgaWYgYW4gIgorImV4aXN0aW5nIGJ1dCBkaWZmZXJlbnQgZmlsZSBpcyB0aGVyZSBpdCB3aWxsIGJlIGNvcGllZCB0aGVyZS4gIChCPFRoaXMgaXMgIgorInRoZSBkZWZhdWx0PikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MzY4Cittc2dpZCAiVW5wYWNrcyB0aGUgb3JpZ2luYWwgc291cmNlIHRyZWUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MzczCittc2dpZCAiIgorIkVuc3VyZXMgdGhhdCB0aGUgb3JpZ2luYWwgc291cmNlIGlzIG5laXRoZXIgY29waWVkIHRvIHRoZSBjdXJyZW50IGRpcmVjdG9yeSAiCisibm9yIHVucGFja2VkLiBBbnkgb3JpZ2luYWwgc291cmNlIHRyZWUgdGhhdCB3YXMgaW4gdGhlIGN1cnJlbnQgZGlyZWN0b3J5IGlzICIKKyJzdGlsbCByZW1vdmVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjM3OAorbXNnaWQgIiIKKyJBbGwgdGhlIEI8LXM+STxYPiBvcHRpb25zIGFyZSBtdXR1YWxseSBleGNsdXNpdmUuIElmIHlvdSBzcGVjaWZ5IG1vcmUgdGhhbiAiCisib25lIG9ubHkgdGhlIGxhc3Qgb25lIHdpbGwgYmUgdXNlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6Mzc4IGRwa2ctc291cmNlLjE6NTU1CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1za2lwLWRlYmlhbml6YXRpb24+IgorbXNnc3RyICJCPC0tdmVyc2lvbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MzgxCittc2dpZCAiU2tpcHMgYXBwbGljYXRpb24gb2YgdGhlIGRlYmlhbiBkaWZmIG9uIHRvcCBvZiB0aGUgdXBzdHJlYW0gc291cmNlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6MzgyCisjLCBuby13cmFwCittc2dpZCAiRm9ybWF0OiAyLjAiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTozODYKK21zZ2lkICIiCisiQWxzbyBrbm93biBhcyB3aWcmcGVuLiBUaGlzIGZvcm1hdCBpcyBub3QgcmVjb21tZW5kZWQgZm9yIHdpZGUtc3ByZWFkIHVzYWdlLCAiCisidGhlIGZvcm1hdCBcIjMuMCAocXVpbHQpXCIgcmVwbGFjZXMgaXQuIFdpZyZwZW4gd2FzIHRoZSBmaXJzdCBzcGVjaWZpY2F0aW9uICIKKyJvZiBhIG5ldy1nZW5lcmF0aW9uIHNvdXJjZSBwYWNrYWdlIGZvcm1hdC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTozOTEKK21zZ2lkICIiCisiVGhlIGJlaGF2aW91ciBvZiB0aGlzIGZvcm1hdCBpcyB0aGUgc2FtZSBhcyB0aGUgXCIzLjAgKHF1aWx0KVwiIGZvcm1hdCAiCisiZXhjZXB0IHRoYXQgaXQgZG9lc24ndCB1c2UgYW4gZXhwbGljaXQgbGlzdCBvZiBwYXRjaGVzLiBBbGwgZmlsZXMgaW4gIgorIkI8ZGViaWFuL3BhdGNoZXMvPiBtYXRjaGluZyB0aGUgcGVybCByZWd1bGFyIGV4cHJlc3Npb24gQjxbXFxldy1dKz4gbXVzdCBiZSAiCisidmFsaWQgcGF0Y2hlczogdGhleSBhcmUgYXBwbGllZCBhdCBleHRyYWN0aW9uIHRpbWUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6Mzk0Cittc2dpZCAiIgorIldoZW4gYnVpbGRpbmcgYSBuZXcgc291cmNlIHBhY2thZ2UsIGFueSBjaGFuZ2UgdG8gdGhlIHVwc3RyZWFtIHNvdXJjZSBpcyAiCisic3RvcmVkIGluIGEgcGF0Y2ggbmFtZWQgQjx6el9kZWJpYW4tZGlmZi1hdXRvPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6Mzk1CisjLCBuby13cmFwCittc2dpZCAiRm9ybWF0OiAzLjAgKG5hdGl2ZSkiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo0MDEKK21zZ2lkICIiCisiVGhpcyBmb3JtYXQgaXMgYW4gZXh0ZW5zaW9uIG9mIHRoZSBuYXRpdmUgcGFja2FnZSBmb3JtYXQgYXMgZGVmaW5lZCBpbiB0aGUgIgorIjEuMCBmb3JtYXQuIEl0IHN1cHBvcnRzIGFsbCBjb21wcmVzc2lvbiBtZXRob2RzIGFuZCB3aWxsIGlnbm9yZSBieSBkZWZhdWx0ICIKKyJhbnkgVkNTIHNwZWNpZmljIGZpbGVzIGFuZCBkaXJlY3RvcmllcyBhcyB3ZWxsIGFzIG1hbnkgdGVtcG9yYXJ5IGZpbGVzIChzZWUgIgorImRlZmF1bHQgdmFsdWUgYXNzb2NpYXRlZCB0byBCPC1JPiBvcHRpb24gaW4gdGhlIEI8LS1oZWxwPiBvdXRwdXQpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo0MDIKKyMsIG5vLXdyYXAKK21zZ2lkICJGb3JtYXQ6IDMuMCAocXVpbHQpIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NDA5Cittc2dpZCAiIgorIkEgc291cmNlIHBhY2thZ2UgaW4gdGhpcyBmb3JtYXQgY29udGFpbnMgYXQgbGVhc3QgYW4gb3JpZ2luYWwgdGFyYmFsbCAoQjwuIgorIm9yaWcudGFyLj5JPGV4dD4gd2hlcmUgSTxleHQ+IGNhbiBiZSBCPGd6PiwgQjxiejI+LCBCPGx6bWE+IGFuZCBCPHh6PikgYW5kIGEgIgorImRlYmlhbiB0YXJiYWxsIChCPC5kZWJpYW4udGFyLj5JPGV4dD4pLiBJdCBjYW4gYWxzbyBjb250YWluIGFkZGl0aW9uYWwgIgorIm9yaWdpbmFsIHRhcmJhbGxzIChCPC5vcmlnLT5JPGNvbXBvbmVudD5CPC50YXIuPkk8ZXh0PikuICBJPGNvbXBvbmVudD4gY2FuICIKKyJvbmx5IGNvbnRhaW4gYWxwaGFudW1lcmljIGNoYXJhY3RlcnMgYW5kIGRhc2hlcyAoXCItXCIpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjQyMAorbXNnaWQgIiIKKyJUaGUgbWFpbiBvcmlnaW5hbCB0YXJiYWxsIGlzIGV4dHJhY3RlZCBmaXJzdCwgdGhlbiBhbGwgYWRkaXRpb25hbCBvcmlnaW5hbCAiCisidGFyYmFsbHMgYXJlIGV4dHJhY3RlZCBpbiBzdWJkaXJlY3RvcmllcyBuYW1lZCBhZnRlciB0aGUgSTxjb21wb25lbnQ+IHBhcnQgIgorIm9mIHRoZWlyIGZpbGVuYW1lIChhbnkgcHJlLWV4aXN0aW5nIGRpcmVjdG9yeSBpcyByZXBsYWNlZCkuIFRoZSBkZWJpYW4gIgorInRhcmJhbGwgaXMgZXh0cmFjdGVkIG9uIHRvcCBvZiB0aGUgc291cmNlIGRpcmVjdG9yeSBhZnRlciBwcmlvciByZW1vdmFsIG9mICIKKyJhbnkgcHJlLWV4aXN0aW5nIEI8ZGViaWFuPiBkaXJlY3RvcnkuIE5vdGUgdGhhdCB0aGUgZGViaWFuIHRhcmJhbGwgbXVzdCAiCisiY29udGFpbiBhIEI8ZGViaWFuPiBzdWItZGlyZWN0b3J5IGJ1dCBpdCBjYW4gYWxzbyBjb250YWluIGJpbmFyeSBmaWxlcyAiCisib3V0c2lkZSBvZiB0aGF0IGRpcmVjdG9yeSAoc2VlIEI8LS1pbmNsdWRlLWJpbmFyaWVzPiBvcHRpb24pLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjQzMgorbXNnaWQgIiIKKyJBbGwgcGF0Y2hlcyBsaXN0ZWQgaW4gQjxkZWJpYW4vcGF0Y2hlcy9kZWJpYW4uc2VyaWVzPiBvciBCPGRlYmlhbi9wYXRjaGVzLyIKKyJzZXJpZXM+IGFyZSB0aGVuIGFwcGxpZWQuICBJZiB0aGUgZm9ybWVyIGZpbGUgaXMgdXNlZCBhbmQgdGhlIGxhdHRlciBvbmUgIgorImRvZXNuJ3QgZXhpc3QgKG9yIGlzIGEgc3ltbGluayksIHRoZW4gdGhlIGxhdHRlciBpcyByZXBsYWNlZCB3aXRoIGEgc3ltbGluayAiCisidG8gdGhlIGZvcm1lci4gVGhpcyBpcyBtZWFudCB0byBzaW1wbGlmeSB1c2FnZSBvZiBxdWlsdCB0byBtYW5hZ2UgdGhlIHNldCBvZiAiCisicGF0Y2hlcy4gTm90ZSBob3dldmVyIHRoYXQgd2hpbGUgQjxkcGtnLXNvdXJjZT4gcGFyc2VzIGNvcnJlY3RseSBzZXJpZXMgIgorImZpbGVzIHdpdGggZXhwbGljaXQgb3B0aW9ucyB1c2VkIGZvciBwYXRjaCBhcHBsaWNhdGlvbiAoc3RvcmVkIG9uIGVhY2ggbGluZSAiCisiYWZ0ZXIgdGhlIHBhdGNoIGZpbGVuYW1lIGFuZCBvbmUgb3IgbW9yZSBzcGFjZXMpLCBpdCBkb2VzIGlnbm9yZSB0aG9zZSAiCisib3B0aW9ucyBhbmQgYWx3YXlzIGV4cGVjdCBwYXRjaGVzIHRoYXQgY2FuIGJlIGFwcGxpZWQgd2l0aCB0aGUgQjwtcDE+IG9wdGlvbiAiCisib2YgQjxwYXRjaD4uIEl0IHdpbGwgdGh1cyBlbWl0IGEgd2FybmluZyB3aGVuIGl0IGVuY291bnRlcnMgc3VjaCBvcHRpb25zLCAiCisiYW5kIHRoZSBidWlsZCBpcyBsaWtlbHkgdG8gZmFpbC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo0MzQKK21zZ2lkICIiCisiU2ltaWxhcmx5IHRvIHF1aWx0J3MgZGVmYXVsdCBiZWhhdmlvdXIsIHRoZSBwYXRjaGVzIGNhbiByZW1vdmUgZmlsZXMgdG9vLiIKK21zZ3N0ciAiIgorCisjIHR5cGU6IFBsYWluIHRleHQKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NDM3Cittc2dpZCAiIgorIlRoZSBmaWxlIEI8LnBjL2FwcGxpZWQtcGF0Y2hlcz4gaXMgY3JlYXRlZCBpZiBzb21lIHBhdGNoZXMgaGF2ZSBiZWVuIGFwcGxpZWQgIgorImR1cmluZyB0aGUgZXh0cmFjdGlvbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo0NTEKK21zZ2lkICIiCisiQWxsIG9yaWdpbmFsIHRhcmJhbGxzIGZvdW5kIGluIHRoZSBjdXJyZW50IGRpcmVjdG9yeSBhcmUgZXh0cmFjdGVkIGluIGEgIgorInRlbXBvcmFyeSBkaXJlY3RvcnkgYnkgZm9sbG93aW5nIHRoZSBzYW1lIGxvZ2ljIGFzIGZvciB0aGUgdW5wYWNrLCB0aGUgIgorImRlYmlhbiBkaXJlY3RvcnkgaXMgY29waWVkIG92ZXIgaW4gdGhlIHRlbXBvcmFyeSBkaXJlY3RvcnksIGFuZCBhbGwgcGF0Y2hlcyAiCisiZXhjZXB0IHRoZSBhdXRvbWF0aWMgcGF0Y2ggKEI8ZGViaWFuLWNoYW5nZXMtPkk8dmVyc2lvbj4gb3IgQjxkZWJpYW4tIgorImNoYW5nZXM+LCBkZXBlbmRpbmcgb24gQjwtLXNpbmdsZS1kZWJpYW4tcGF0Y2g+KSBhcmUgYXBwbGllZC4gVGhlIHRlbXBvcmFyeSAiCisiZGlyZWN0b3J5IGlzIGNvbXBhcmVkIHRvIHRoZSBzb3VyY2UgcGFja2FnZSBkaXJlY3RvcnkuIFdoZW4gdGhlIGRpZmYgaXMgbm9uLSIKKyJlbXB0eSwgdGhlIGJ1aWxkIGZhaWxzIHVubGVzcyBCPC0tc2luZ2xlLWRlYmlhbi1wYXRjaD4gb3IgQjwtLWF1dG8tY29tbWl0PiAiCisiaGFzIGJlZW4gdXNlZCwgaW4gd2hpY2ggY2FzZSB0aGUgZGlmZiBpcyBzdG9yZWQgaW4gdGhlIGF1dG9tYXRpYyBwYXRjaC4gIElmICIKKyJ0aGUgYXV0b21hdGljIHBhdGNoIGlzIGNyZWF0ZWQvZGVsZXRlZCwgaXQncyBhZGRlZC9yZW1vdmVkIGZyb20gdGhlIHNlcmllcyAiCisiZmlsZSBhbmQgZnJvbSB0aGUgcXVpbHQgbWV0YWRhdGEuIgorbXNnc3RyICIiCisKKyMgdHlwZTogUGxhaW4gdGV4dAorIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo0NTkKK21zZ2lkICIiCisiQW55IGNoYW5nZSBvbiBhIGJpbmFyeSBmaWxlIGlzIG5vdCByZXByZXNlbnRhYmxlIGluIGEgZGlmZiBhbmQgd2lsbCB0aHVzICIKKyJsZWFkIHRvIGEgZmFpbHVyZSB1bmxlc3MgdGhlIG1haW50YWluZXIgZGVsaWJlcmF0ZWx5IGRlY2lkZWQgdG8gaW5jbHVkZSB0aGF0ICIKKyJtb2RpZmllZCBiaW5hcnkgZmlsZSBpbiB0aGUgZGViaWFuIHRhcmJhbGwgKGJ5IGxpc3RpbmcgaXQgaW4gQjxkZWJpYW4vc291cmNlLyIKKyJpbmNsdWRlLWJpbmFyaWVzPikuIFRoZSBidWlsZCB3aWxsIGFsc28gZmFpbCBpZiBpdCBmaW5kcyBiaW5hcnkgZmlsZXMgaW4gdGhlICIKKyJkZWJpYW4gc3ViLWRpcmVjdG9yeSB1bmxlc3MgdGhleSBoYXZlIGJlZW4gd2hpdGVsaXN0ZWQgdGhyb3VnaCBCPGRlYmlhbi8iCisic291cmNlL2luY2x1ZGUtYmluYXJpZXM+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjQ2MgorbXNnaWQgIiIKKyJUaGUgdXBkYXRlZCBkZWJpYW4gZGlyZWN0b3J5IGFuZCB0aGUgbGlzdCBvZiBtb2RpZmllZCBiaW5hcmllcyBpcyB0aGVuIHVzZWQgIgorInRvIGdlbmVyYXRlIHRoZSBkZWJpYW4gdGFyYmFsbC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo0NjgKK21zZ2lkICIiCisiVGhlIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGRpZmYgZG9lc24ndCBpbmNsdWRlIGNoYW5nZXMgb24gVkNTIHNwZWNpZmljICIKKyJmaWxlcyBhcyB3ZWxsIGFzIG1hbnkgdGVtcG9yYXJ5IGZpbGVzIChzZWUgZGVmYXVsdCB2YWx1ZSBhc3NvY2lhdGVkIHRvIEI8LWk+ICIKKyJvcHRpb24gaW4gdGhlIEI8LS1oZWxwPiBvdXRwdXQpLiBJbiBwYXJ0aWN1bGFyLCB0aGUgQjwucGM+IGRpcmVjdG9yeSB1c2VkIGJ5ICIKKyJxdWlsdCBpcyBpZ25vcmVkIGR1cmluZyBnZW5lcmF0aW9uIG9mIHRoZSBhdXRvbWF0aWMgcGF0Y2guIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NDc3Cittc2dpZCAiIgorIk5vdGU6IEI8ZHBrZy1zb3VyY2U+IEI8LS1iZWZvcmUtYnVpbGQ+IChhbmQgQjwtYj4pIHdpbGwgZW5zdXJlIHRoYXQgYWxsICIKKyJwYXRjaGVzIGxpc3RlZCBpbiB0aGUgc2VyaWVzIGZpbGUgYXJlIGFwcGxpZWQgc28gdGhhdCBhIHBhY2thZ2UgYnVpbGQgYWx3YXlzICIKKyJoYXMgYWxsIHBhdGNoZXMgYXBwbGllZC4gSXQgZG9lcyB0aGlzIGJ5IGZpbmRpbmcgdW5hcHBsaWVkIHBhdGNoZXMgKHRoZXkgYXJlICIKKyJsaXN0ZWQgaW4gdGhlIEI8c2VyaWVzPiBmaWxlIGJ1dCBub3QgaW4gQjwucGMvYXBwbGllZC1wYXRjaGVzPiksIGFuZCBpZiB0aGUgIgorImZpcnN0IHBhdGNoIGluIHRoYXQgc2V0IGNhbiBiZSBhcHBsaWVkIHdpdGhvdXQgZXJyb3JzLCBpdCB3aWxsIGFwcGx5IHRoZW0gIgorImFsbC4gVGhlIG9wdGlvbiBCPC0tbm8tcHJlcGFyYXRpb24+IGNhbiBiZSB1c2VkIHRvIGRpc2FibGUgdGhpcyBiZWhhdmlvci4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo0ODAKK21zZ2lkICJCPFJlY29yZGluZyBjaGFuZ2VzPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTo0ODAKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWNvbW1pdD4gW0k8ZGlyZWN0b3J5Pl0gW0k8cGF0Y2gtbmFtZT5dIFtJPHBhdGNoLWZpbGU+XSIKK21zZ3N0ciAiQjxkcGtnLWRlYj4gQjwtST58QjwtLWluZm8+IEk8YXJjaMOtdnVtPiBbSTxlbGxlbsWRcnrFkS1mw6FqbC1uw6l2PiAuLl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NDkwCittc2dpZCAiIgorIkdlbmVyYXRlcyBhIHBhdGNoIGNvcnJlc3BvbmRpbmcgdG8gdGhlIGxvY2FsIGNoYW5nZXMgdGhhdCBhcmUgbm90IG1hbmFnZWQgYnkgIgorInRoZSBxdWlsdCBwYXRjaCBzeXN0ZW0gYW5kIGludGVncmF0ZXMgaXQgaW4gdGhlIHBhdGNoIHN5c3RlbSB1bmRlciB0aGUgbmFtZSAiCisiSTxwYXRjaC1uYW1lPi4gSWYgdGhlIG5hbWUgaXMgbWlzc2luZywgaXQgd2lsbCBiZSBhc2tlZCBpbnRlcmFjdGl2ZWx5LiBJZiAiCisiSTxwYXRjaC1maWxlPiBpcyBnaXZlbiwgaXQgaXMgdXNlZCBhcyB0aGUgcGF0Y2ggY29ycmVzcG9uZGluZyB0byB0aGUgbG9jYWwgIgorImNoYW5nZXMgdG8gaW50ZWdyYXRlLiBUaGlzIGlzIG1haW5seSB1c2VmdWwgYWZ0ZXIgYSBidWlsZCBmYWlsdXJlIHRoYXQgcHJlLSIKKyJnZW5lcmF0ZWQgdGhpcyBmaWxlLiBPbmNlIGludGVncmF0ZWQsIGFuIGVkaXRvciBpcyBsYXVuY2hlZCBzbyB0aGF0IHlvdSBjYW4gIgorImVkaXQgdGhlIG1ldGEtaW5mb3JtYXRpb24gaW4gdGhlIHBhdGNoIGhlYWRlci4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo0OTMgZHBrZy1zb3VyY2UuMTo1NjcgZHBrZy1zb3VyY2UuMTo2MDYKK21zZ2lkICJCPEJ1aWxkIG9wdGlvbnM+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjQ5MworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tYWxsb3ctdmVyc2lvbi1vZi1xdWlsdC1kYj0+STx2ZXJzaW9uPiIKK21zZ3N0ciAiQjwtLXZlcnNpb24+IgorCisjIHR5cGU6IFBsYWluIHRleHQKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTAxCittc2dpZCAiIgorIkFsbG93IEI8ZHBrZy1zb3VyY2U+IHRvIGJ1aWxkIHRoZSBzb3VyY2UgcGFja2FnZSBpZiB0aGUgdmVyc2lvbiBvZiB0aGUgcXVpbHQgIgorIm1ldGFkYXRhIGlzIHRoZSBvbmUgc3BlY2lmaWVkLCBldmVuIGlmIEI8ZHBrZy1zb3VyY2U+IGRvZXNuJ3Qga25vdyBhYm91dCBpdC4gIgorIkVmZmVjdGl2ZWx5IHRoaXMgc2F5cyB0aGF0IHRoZSBnaXZlbiB2ZXJzaW9uIG9mIHRoZSBxdWlsdCBtZXRhZGF0YSBpcyAiCisiY29tcGF0aWJsZSB3aXRoIHRoZSB2ZXJzaW9uIDIgdGhhdCBCPGRwa2ctc291cmNlPiBjdXJyZW50bHkgc3VwcG9ydHMuIFRoZSAiCisidmVyc2lvbiBvZiB0aGUgcXVpbHQgbWV0YWRhdGEgaXMgc3RvcmVkIGluIEI8LnBjLy52ZXJzaW9uPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NTAxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1pbmNsdWRlLXJlbW92YWw+IgorbXNnc3RyICJCPC0tb2xkPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1MDUKK21zZ2lkICIiCisiRG8gbm90IGlnbm9yZSByZW1vdmVkIGZpbGVzIGFuZCBpbmNsdWRlIHRoZW0gaW4gdGhlIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkICIKKyJwYXRjaC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NTA1CisjLCBuby13cmFwCittc2dpZCAiQjwtLWluY2x1ZGUtdGltZXN0YW1wPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjUwOAorbXNnaWQgIkluY2x1ZGUgdGltZXN0YW1wIGluIHRoZSBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlZCBwYXRjaC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NTA4CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1pbmNsdWRlLWJpbmFyaWVzPiIKK21zZ3N0ciAiQjwtLWxpY2VuY2U+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjUxMworbXNnaWQgIiIKKyJBZGQgYWxsIG1vZGlmaWVkIGJpbmFyaWVzIGluIHRoZSBkZWJpYW4gdGFyYmFsbC4gQWxzbyBhZGQgdGhlbSB0byBCPGRlYmlhbi8iCisic291cmNlL2luY2x1ZGUtYmluYXJpZXM+OiB0aGV5IHdpbGwgYmUgYWRkZWQgYnkgZGVmYXVsdCBpbiBzdWJzZXF1ZW50IGJ1aWxkcyAiCisiYW5kIHRoaXMgb3B0aW9uIGlzIHRodXMgbm8gbW9yZSBuZWVkZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjUxMworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tbm8tcHJlcGFyYXRpb24+IgorbXNnc3RyICJCPC0tdmVyc2lvbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTE3Cittc2dpZCAiIgorIkRvIG5vdCB0cnkgdG8gcHJlcGFyZSB0aGUgYnVpbGQgdHJlZSBieSBhcHBseWluZyBwYXRjaGVzIHdoaWNoIGFyZSAiCisiYXBwYXJlbnRseSB1bmFwcGxpZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjUxNworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tc2luZ2xlLWRlYmlhbi1wYXRjaD4iCittc2dzdHIgIkI8LS12ZXJzaW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1MjgKK21zZ2lkICIiCisiVXNlIEI8ZGViaWFuL3BhdGNoZXMvZGViaWFuLWNoYW5nZXM+IGluc3RlYWQgb2YgQjxkZWJpYW4vcGF0Y2hlcy9kZWJpYW4tIgorImNoYW5nZXMtPkk8dmVyc2lvbj4gZm9yIHRoZSBuYW1lIG9mIHRoZSBhdXRvbWF0aWMgcGF0Y2ggZ2VuZXJhdGVkIGR1cmluZyAiCisiYnVpbGQuIFRoaXMgb3B0aW9uIGlzIHBhcnRpY3VsYXJseSB1c2VmdWwgd2hlbiB0aGUgcGFja2FnZSBpcyBtYWludGFpbmVkIGluICIKKyJhIFZDUyBhbmQgYSBwYXRjaCBzZXQgY2FuJ3QgcmVsaWFibHkgYmUgZ2VuZXJhdGVkLiBJbnN0ZWFkIHRoZSBjdXJyZW50IGRpZmYgIgorIndpdGggdXBzdHJlYW0gc2hvdWxkIGJlIHN0b3JlZCBpbiBhIHNpbmdsZSBwYXRjaC4gVGhlIG9wdGlvbiB3b3VsZCBiZSBwdXQgaW4gIgorIkI8ZGViaWFuL3NvdXJjZS9sb2NhbC1vcHRpb25zPiBhbmQgd291bGQgYmUgYWNjb21wYW5pZWQgYnkgYSBCPGRlYmlhbi9zb3VyY2UvIgorImxvY2FsLXBhdGNoLWhlYWRlcj4gZmlsZSBleHBsYWluaW5nIGhvdyB0aGUgRGViaWFuIGNoYW5nZXMgY2FuIGJlIGJlc3QgIgorInJldmlld2VkLCBmb3IgZXhhbXBsZSBpbiB0aGUgVkNTIHRoYXQgaXMgdXNlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NTI4CisjLCBuby13cmFwCittc2dpZCAiQjwtLWNyZWF0ZS1lbXB0eS1vcmlnPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjUzNAorbXNnaWQgIiIKKyJBdXRvbWF0aWNhbGx5IGNyZWF0ZSB0aGUgbWFpbiBvcmlnaW5hbCB0YXJiYWxsIGFzIGVtcHR5IGlmIGl0J3MgbWlzc2luZyBhbmQgIgorImlmIHRoZXJlIGFyZSBzdXBwbGVtZW50YXJ5IG9yaWdpbmFsIHRhcmJhbGxzLiBUaGlzIG9wdGlvbiBpcyBtZWFudCB0byBiZSAiCisidXNlZCB3aGVuIHRoZSBzb3VyY2UgcGFja2FnZSBpcyBqdXN0IGEgYnVuZGxlIG9mIG11bHRpcGxlIHVwc3RyZWFtIHNvZnR3YXJlICIKKyJhbmQgd2hlcmUgdGhlcmUncyBubyBcIm1haW5cIiBzb2Z0d2FyZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NTM0CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS11bmFwcGx5LXBhdGNoZXM+IgorbXNnc3RyICJCPC0tbmV3PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1NDEKK21zZ2lkICIiCisiVW5hcHBseSB0aGUgcGF0Y2hlcyBpbiB0aGUgQjwtLWFmdGVyLWJ1aWxkPiBob29rLiBZb3UgdXN1YWxseSBkb24ndCBuZWVkICIKKyJ0aGlzIG9wdGlvbiBhcyBkcGtnLXNvdXJjZSB3aWxsIGF1dG9tYXRpY2FsbHkgdW5hcHBseSB0aGUgcGF0Y2hlcyBpZiBpdCBkaWQgIgorImFwcGx5IHRoZW0gZHVyaW5nIEI8LS1iZWZvcmUtYnVpbGQ+LiBUaGlzIG9wdGlvbiBpcyBvbmx5IGFsbG93ZWQgaW4gQjxkZWJpYW4vIgorInNvdXJjZS9sb2NhbC1vcHRpb25zPiBzbyB0aGF0IGFsbCBnZW5lcmF0ZWQgc291cmNlIHBhY2thZ2VzIGhhdmUgdGhlIHNhbWUgIgorImJlaGF2aW9yIGJ5IGRlZmF1bHQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTQ4Cittc2dpZCAiIgorIlRoZSBwcm9jZXNzIGZhaWxzIGlmIGFuIGF1dG9tYXRpYyBwYXRjaCBoYXMgYmVlbiBnZW5lcmF0ZWQuIFRoaXMgb3B0aW9uIGNhbiAiCisiYmUgdXNlZCB0byBlbnN1cmUgdGhhdCBhbGwgY2hhbmdlcyB3ZXJlIHByb3Blcmx5IHJlY29yZGVkIGluIHNlcGFyYXRlIHF1aWx0ICIKKyJwYXRjaGVzIHByaW9yIHRvIHRoZSBzb3VyY2UgcGFja2FnZSBidWlsZC4gVGhpcyBvcHRpb24gaXMgbm90IGFsbG93ZWQgaW4gIgorIkI8ZGViaWFuL3NvdXJjZS9vcHRpb25zPiBidXQgY2FuIGJlIHVzZWQgaW4gQjxkZWJpYW4vc291cmNlL2xvY2FsLW9wdGlvbnM+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTo1NDgKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWF1dG8tY29tbWl0PiIKK21zZ3N0ciAiQjwtLW5vY2hlY2s+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjU1MgorbXNnaWQgIiIKKyJUaGUgcHJvY2VzcyBkb2Vzbid0IGZhaWwgaWYgYW4gYXV0b21hdGljIHBhdGNoIGhhcyBiZWVuIGdlbmVyYXRlZCwgaW5zdGVhZCAiCisiaXQncyBpbW1lZGlhdGVseSByZWNvcmRlZCBpbiB0aGUgcXVpbHQgc2VyaWVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjU1NQorbXNnaWQgIkI8RXh0cmFjdCBvcHRpb25zPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjU1OAorbXNnaWQgIlNraXBzIGV4dHJhY3Rpb24gb2YgdGhlIGRlYmlhbiB0YXJiYWxsIG9uIHRvcCBvZiB0aGUgdXBzdHJlYW0gc291cmNlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NTU4CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1za2lwLXBhdGNoZXM+IgorbXNnc3RyICJCPC0tbmV3PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1NjEKK21zZ2lkICJEbyBub3QgYXBwbHkgcGF0Y2hlcyBhdCB0aGUgZW5kIG9mIHRoZSBleHRyYWN0aW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo1NjIKKyMsIG5vLXdyYXAKK21zZ2lkICJGb3JtYXQ6IDMuMCAoY3VzdG9tKSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjU2NQorbXNnaWQgIiIKKyJUaGlzIGZvcm1hdCBpcyBzcGVjaWFsLiBJdCBkb2Vzbid0IHJlcHJlc2VudCBhIHJlYWwgc291cmNlIHBhY2thZ2UgZm9ybWF0ICIKKyJidXQgY2FuIGJlIHVzZWQgdG8gY3JlYXRlIHNvdXJjZSBwYWNrYWdlcyB3aXRoIGFyYml0cmFyeSBmaWxlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1NzEKK21zZ2lkICIiCisiQWxsIG5vbi1vcHRpb24gYXJndW1lbnRzIGFyZSB0YWtlbiBhcyBmaWxlcyB0byBpbnRlZ3JhdGUgaW4gdGhlIGdlbmVyYXRlZCAiCisic291cmNlIHBhY2thZ2UuIFRoZXkgbXVzdCBleGlzdCBhbmQgYXJlIHByZWZlcmFibHkgaW4gdGhlIGN1cnJlbnQgZGlyZWN0b3J5LiAiCisiQXQgbGVhc3Qgb25lIGZpbGUgbXVzdCBiZSBnaXZlbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NTcxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS10YXJnZXQtZm9ybWF0PT5JPHZhbHVlPiIKK21zZ3N0ciAiQjwtLXNob3dmb3JtYXQ9Pkk8Zm9ybcOhdHVtPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1NzYKK21zZ2lkICIiCisiQjxSZXF1aXJlZD4uIERlZmluZXMgdGhlIHJlYWwgZm9ybWF0IG9mIHRoZSBnZW5lcmF0ZWQgc291cmNlIHBhY2thZ2UuICBUaGUgIgorImdlbmVyYXRlZCAuZHNjIGZpbGUgd2lsbCBjb250YWluIHRoaXMgdmFsdWUgaW4gaXRzIEk8Rm9ybWF0PiBmaWVsZCBhbmQgbm90ICIKKyJcIjMuMCAoY3VzdG9tKVwiLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo1NzcKKyMsIG5vLXdyYXAKK21zZ2lkICJGb3JtYXQ6IDMuMCAoZ2l0KSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjU3OQorbXNnaWQgIlRoaXMgZm9ybWF0IGlzIGV4cGVyaW1lbnRhbC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1ODQKK21zZ2lkICIiCisiQSBzb3VyY2UgcGFja2FnZSBpbiB0aGlzIGZvcm1hdCBjb25zaXN0cyBvZiBhIHNpbmdsZSBidW5kbGUgb2YgYSBnaXQgIgorInJlcG9zaXRvcnkgQjwuZ2l0PiB0byBob2xkIHRoZSBzb3VyY2Ugb2YgYSBwYWNrYWdlLiAgVGhlcmUgbWF5IGFsc28gYmUgYSBCPC4iCisiZ2l0c2hhbGxvdz4gZmlsZSBsaXN0aW5nIHJldmlzaW9ucyBmb3IgYSBzaGFsbG93IGdpdCBjbG9uZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1OTAKK21zZ2lkICIiCisiVGhlIGJ1bmRsZSBpcyBjbG9uZWQgYXMgYSBnaXQgcmVwb3NpdG9yeSB0byB0aGUgdGFyZ2V0IGRpcmVjdG9yeS4gIElmIHRoZXJlICIKKyJpcyBhIGdpdHNoYWxsb3cgZmlsZSwgaXQgaXMgaW5zdGFsbGVkIGFzIGAuZ2l0L3NoYWxsb3dgIGluc2lkZSB0aGUgY2xvbmVkICIKKyJnaXQgcmVwb3NpdG9yeS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1OTUKK21zZ2lkICIiCisiTm90ZSB0aGF0IGJ5IGRlZmF1bHQgdGhlIG5ldyByZXBvc2l0b3J5IHdpbGwgaGF2ZSB0aGUgc2FtZSBicmFuY2ggY2hlY2tlZCAiCisib3V0IHRoYXQgd2FzIGNoZWNrZWQgb3V0IGluIHRoZSBvcmlnaW5hbCBzb3VyY2UuIChUeXBpY2FsbHkgXCJtYXN0ZXJcIiwgYnV0ICIKKyJpdCBjb3VsZCBiZSBhbnl0aGluZy4pIEFueSBvdGhlciBicmFuY2hlcyB3aWxsIGJlIGF2YWlsYWJsZSB1bmRlciBgcmVtb3Rlcy8iCisib3JpZ2luL2AuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NjAwIGRwa2ctc291cmNlLjE6NjMzCittc2dpZCAiIgorIkJlZm9yZSBnb2luZyBhbnkgZnVydGhlciwgc29tZSBjaGVja3MgYXJlIGRvbmUgdG8gZW5zdXJlIHRoYXQgd2UgZG9uJ3QgaGF2ZSAiCisiYW55IG5vbi1pZ25vcmVkIHVuY29tbWl0dGVkIGNoYW5nZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NjA0Cittc2dpZCAiIgorIkI8Z2l0LWJ1bmRsZT4oMSkgaXMgdXNlZCB0byBnZW5lcmF0ZSBhIGJ1bmRsZSBvZiB0aGUgZ2l0IHJlcG9zaXRvcnkuICBCeSAiCisiZGVmYXVsdCwgYWxsIGJyYW5jaGVzIGFuZCB0YWdzIGluIHRoZSByZXBvc2l0b3J5IGFyZSBpbmNsdWRlZCBpbiB0aGUgYnVuZGxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTo2MDYKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWdpdC1yZWY9Pkk8cmVmPiIKK21zZ3N0ciAiQjwtLXNob3dmb3JtYXQ9Pkk8Zm9ybcOhdHVtPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2MTYKK21zZ2lkICIiCisiQWxsb3dzIHNwZWNpZnlpbmcgYSBnaXQgcmVmIHRvIGluY2x1ZGUgaW4gdGhlIGdpdCBidW5kbGUuIFVzZSBkaXNhYmxlcyB0aGUgIgorImRlZmF1bHQgYmVoYXZpb3Igb2YgaW5jbHVkaW5nIGFsbCBicmFuY2hlcyBhbmQgdGFncy4gTWF5IGJlIHNwZWNpZmllZCAiCisibXVsdGlwbGUgdGltZXMuIFRoZSBJPHJlZj4gY2FuIGJlIHRoZSBuYW1lIG9mIGEgYnJhbmNoIG9yIHRhZyB0byBpbmNsdWRlLiBJdCAiCisibWF5IGFsc28gYmUgYW55IHBhcmFtZXRlciB0aGF0IGNhbiBiZSBwYXNzZWQgdG8gQjxnaXQtcmV2LWxpc3Q+KDEpLiBGb3IgIgorImV4YW1wbGUsIHRvIGluY2x1ZGUgb25seSB0aGUgbWFzdGVyIGJyYW5jaCwgdXNlIC0tZ2l0LXJlZj1tYXN0ZXIuIFRvIGluY2x1ZGUgIgorImFsbCB0YWdzIGFuZCBicmFuY2hlcywgZXhjZXB0IGZvciB0aGUgcHJpdmF0ZSBicmFuY2gsIHVzZSAtLWdpdC1yZWY9LS1hbGwgLS0iCisiZ2l0LXJlZj1ecHJpdmF0ZSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTo2MTYKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWdpdC1kZXB0aD0+STxudW1iZXI+IgorbXNnc3RyICJCPC0taW5mbz4sIEI8LUk+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjYyMAorbXNnaWQgIiIKKyJDcmVhdGVzIGEgc2hhbGxvdyBjbG9uZSB3aXRoIGEgaGlzdG9yeSB0cnVuY2F0ZWQgdG8gdGhlIHNwZWNpZmllZCBudW1iZXIgb2YgIgorInJldmlzaW9ucy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6NjIwCisjLCBuby13cmFwCittc2dpZCAiRm9ybWF0OiAzLjAgKGJ6cikiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2MjMKK21zZ2lkICIiCisiVGhpcyBmb3JtYXQgaXMgZXhwZXJpbWVudGFsLiBJdCBnZW5lcmF0ZXMgYSBzaW5nbGUgdGFyYmFsbCBjb250YWluaW5nIHRoZSAiCisiYnpyIHJlcG9zaXRvcnkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NjI4Cittc2dpZCAiIgorIlRoZSB0YXJiYWxsIGlzIHVucGFja2VkIGFuZCB0aGVuIGJ6ciBpcyB1c2VkIHRvIGNoZWNrb3V0IHRoZSBjdXJyZW50IGJyYW5jaC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2MzcKK21zZ2lkICIiCisiVGhlbiB0aGUgVkNTIHNwZWNpZmljIHBhcnQgb2YgdGhlIHNvdXJjZSBkaXJlY3RvcnkgaXMgY29waWVkIG92ZXIgdG8gYSAiCisidGVtcG9yYXJ5IGRpcmVjdG9yeS4gQmVmb3JlIHRoaXMgdGVtcG9yYXJ5IGRpcmVjdG9yeSBpcyBwYWNrZWQgaW4gYSB0YXJiYWxsLCAiCisidmFyaW91cyBjbGVhbnVwIGFyZSBkb25lIHRvIHNhdmUgc3BhY2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLXNvdXJjZS4xOjYzNworIywgbm8td3JhcAorbXNnaWQgIldBUk5JTkdTIEFORCBFUlJPUlMiCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6NjM4CisjLCBuby13cmFwCittc2dpZCAibm8gc291cmNlIGZvcm1hdCBzcGVjaWZpZWQgaW4gZGViaWFuL3NvdXJjZS9mb3JtYXQiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2NDQKK21zZ2lkICIiCisiVGhlIGZpbGUgQjxkZWJpYW4vc291cmNlL2Zvcm1hdD4gc2hvdWxkIGFsd2F5cyBleGlzdCBhbmQgaW5kaWNhdGUgdGhlICIKKyJkZXNpcmVkIHNvdXJjZSBmb3JtYXQuIEZvciBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eSwgZm9ybWF0IFwiMS4wXCIgaXMgIgorImFzc3VtZWQgd2hlbiB0aGUgZmlsZSBkb2Vzbid0IGV4aXN0IGJ1dCB5b3Ugc2hvdWxkIG5vdCByZWx5IG9uIHRoaXM6IGF0IHNvbWUgIgorInBvaW50IGluIHRoZSBmdXR1cmUgZHBrZy1zb3VyY2Ugd2lsbCBiZSBtb2RpZmllZCB0byBmYWlsIHdoZW4gdGhhdCBmaWxlICIKKyJkb2Vzbid0IGV4aXN0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjY1MAorbXNnaWQgIiIKKyJUaGUgcmF0aW9uYWxlIGlzIHRoYXQgZm9ybWF0IFwiMS4wXCIgaXMgbm8gbG9uZ2VyIHRoZSByZWNvbW1lbmRlZCBmb3JtYXQsICIKKyJ5b3Ugc2hvdWxkIHVzdWFsbHkgcGljayBvbmUgb2YgdGhlIG5ld2VyIGZvcm1hdHMgKFwiMy4wIChxdWlsdClcIiwgXCIzLjAgIgorIihuYXRpdmUpXCIpIGJ1dCBCPGRwa2ctc291cmNlPiB3aWxsIG5vdCBkbyB0aGlzIGF1dG9tYXRpY2FsbHkgZm9yIHlvdS4gIElmICIKKyJ5b3Ugd2FudCB0byBjb250aW51ZSB1c2luZyB0aGUgb2xkIGZvcm1hdCwgeW91IHNob3VsZCBiZSBleHBsaWNpdCBhYm91dCBpdCAiCisiYW5kIHB1dCBcIjEuMFwiIGluIEI8ZGViaWFuL3NvdXJjZS9mb3JtYXQ+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo2NTAKKyMsIG5vLXdyYXAKK21zZ2lkICJ0aGUgZGlmZiBtb2RpZmllcyB0aGUgZm9sbG93aW5nIHVwc3RyZWFtIGZpbGVzIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NjU3Cittc2dpZCAiIgorIldoZW4gdXNpbmcgc291cmNlIGZvcm1hdCBcIjEuMFwiIGl0IGlzIHVzdWFsbHkgYSBiYWQgaWRlYSB0byBtb2RpZnkgdXBzdHJlYW0gIgorImZpbGVzIGRpcmVjdGx5IGFzIHRoZSBjaGFuZ2VzIGVuZCB1cCBoaWRkZW4gYW5kIG1vc3RseSB1bmRvY3VtZW50ZWQgaW4gdGhlIC4iCisiZGlmZi5neiBmaWxlLiBJbnN0ZWFkIHlvdSBzaG91bGQgc3RvcmUgeW91ciBjaGFuZ2VzIGFzIHBhdGNoZXMgaW4gdGhlIGRlYmlhbiAiCisiZGlyZWN0b3J5IGFuZCBhcHBseSB0aGVtIGF0IGJ1aWxkLXRpbWUuIFRvIGF2b2lkIHRoaXMgY29tcGxleGl0eSB5b3UgY2FuICIKKyJhbHNvIHVzZSB0aGUgZm9ybWF0IFwiMy4wIChxdWlsdClcIiB0aGF0IG9mZmVycyB0aGlzIG5hdGl2ZWx5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo2NTcKKyMsIG5vLXdyYXAKK21zZ2lkICJjYW5ub3QgcmVwcmVzZW50IGNoYW5nZSB0byBJPGZpbGU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NjYzCittc2dpZCAiIgorIkNoYW5nZXMgdG8gdXBzdHJlYW0gc291cmNlcyBhcmUgdXN1YWxseSBzdG9yZWQgd2l0aCBwYXRjaCBmaWxlcywgYnV0IG5vdCBhbGwgIgorImNoYW5nZXMgY2FuIGJlIHJlcHJlc2VudGVkIHdpdGggcGF0Y2hlczogdGhleSBjYW4gb25seSBhbHRlciB0aGUgY29udGVudCBvZiAiCisicGxhaW4gdGV4dCBmaWxlcy4gSWYgeW91IHRyeSByZXBsYWNpbmcgYSBmaWxlIHdpdGggc29tZXRoaW5nIG9mIGEgZGlmZmVyZW50ICIKKyJ0eXBlIChmb3IgZXhhbXBsZSByZXBsYWNpbmcgYSBwbGFpbiBmaWxlIHdpdGggYSBzeW1saW5rIG9yIGEgZGlyZWN0b3J5KSwgeW91ICIKKyJ3aWxsIGdldCB0aGlzIGVycm9yIG1lc3NhZ2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjY2MworIywgbm8td3JhcAorbXNnaWQgIm5ld2x5IGNyZWF0ZWQgZW1wdHkgZmlsZSBJPGZpbGU+IHdpbGwgbm90IGJlIHJlcHJlc2VudGVkIGluIGRpZmYiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2NjYKK21zZ2lkICIiCisiRW1wdHkgZmlsZXMgY2FuJ3QgYmUgY3JlYXRlZCB3aXRoIHBhdGNoIGZpbGVzLiBUaHVzIHRoaXMgY2hhbmdlIGlzIG5vdCAiCisicmVjb3JkZWQgaW4gdGhlIHNvdXJjZSBwYWNrYWdlIGFuZCB5b3UgYXJlIHdhcm5lZCBhYm91dCBpdC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6NjY2CisjLCBuby13cmFwCittc2dpZCAiZXhlY3V0YWJsZSBtb2RlIEk8cGVybXM+IG9mIEk8ZmlsZT4gd2lsbCBub3QgYmUgcmVwcmVzZW50ZWQgaW4gZGlmZiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo2NjcKKyMsIG5vLXdyYXAKK21zZ2lkICJzcGVjaWFsIG1vZGUgSTxwZXJtcz4gb2YgSTxmaWxlPiB3aWxsIG5vdCBiZSByZXByZXNlbnRlZCBpbiBkaWZmIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NjcxCittc2dpZCAiIgorIlBhdGNoIGZpbGVzIGRvIG5vdCByZWNvcmQgcGVybWlzc2lvbnMgb2YgZmlsZXMgYW5kIHRodXMgbW9kaWZpZWQgcGVybWlzc2lvbnMgIgorImFyZSBub3Qgc3RvcmVkIGluIHRoZSBzb3VyY2UgcGFja2FnZS4gVGhpcyB3YXJuaW5nIHJlbWluZHMgeW91IG9mIHRoYXQgZmFjdC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctc291cmNlLjE6NjcxCisjLCBuby13cmFwCittc2dpZCAiRklMRSBGT1JNQVRTIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjY3MgorIywgbm8td3JhcAorbXNnaWQgImRlYmlhbi9zb3VyY2UvZm9ybWF0IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6Njc2Cittc2dpZCAiIgorIlRoaXMgZmlsZSBjb250YWlucyBvbiBhIHNpbmdsZSBsaW5lIHRoZSBmb3JtYXQgdGhhdCBzaG91bGQgYmUgdXNlZCB0byBidWlsZCAiCisidGhlIHNvdXJjZSBwYWNrYWdlIChwb3NzaWJsZSBmb3JtYXRzIGFyZSBkZXNjcmliZWQgYWJvdmUpLiBObyBsZWFkaW5nIG9yICIKKyJ0cmFpbGluZyBzcGFjZXMgYXJlIGFsbG93ZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjY3NgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJkZWJpYW4vc291cmNlL2luY2x1ZGUtYmluYXJpZXMiCittc2dzdHIgIkI8LS1saWNlbmNlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2ODAKK21zZ2lkICIiCisiVGhpcyBmaWxlIGNvbnRhaW5zIGEgbGlzdCBvZiBiaW5hcnkgZmlsZXMgKG9uZSBwZXIgbGluZSkgdGhhdCBzaG91bGQgYmUgIgorImluY2x1ZGVkIGluIHRoZSBkZWJpYW4gdGFyYmFsbC4gTGVhZGluZyBhbmQgdHJhaWxpbmcgc3BhY2VzIGFyZSBzdHJpcHBlZC4gICIKKyJMaW5lcyBzdGFydGluZyB3aXRoIFwiI1wiIGFyZSBjb21tZW50cyBhbmQgYXJlIHNraXBwZWQuIEVtcHR5IGxpbmVzIGFyZSAiCisiaWdub3JlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6NjgwCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgImRlYmlhbi9zb3VyY2Uvb3B0aW9ucyIKK21zZ3N0ciAiQjwtLWxpY2VuY2U+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjY4NgorbXNnaWQgIiIKKyJUaGlzIGZpbGUgY29udGFpbnMgYSBsaXN0IG9mIGxvbmcgb3B0aW9ucyB0aGF0IHNob3VsZCBiZSBhdXRvbWF0aWNhbGx5ICIKKyJwcmVwZW5kZWQgdG8gdGhlIHNldCBvZiBjb21tYW5kIGxpbmUgb3B0aW9ucyBvZiBhIEI8ZHBrZy1zb3VyY2UgLWI+IG9yICIKKyJCPGRwa2ctc291cmNlIC0tcHJpbnQtZm9ybWF0PiBjYWxsLiBPcHRpb25zIGxpa2UgQjwtLWNvbXByZXNzaW9uPiBhbmQgQjwtLSIKKyJjb21wcmVzc2lvbi1sZXZlbD4gYXJlIHdlbGwgc3VpdGVkIGZvciB0aGlzIGZpbGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NjkyCittc2dpZCAiIgorIkVhY2ggb3B0aW9uIHNob3VsZCBiZSBwdXQgb24gYSBzZXBhcmF0ZSBsaW5lLiBFbXB0eSBsaW5lcyBhbmQgbGluZXMgc3RhcnRpbmcgIgorIndpdGggXCIjXCIgYXJlIGlnbm9yZWQuIFRoZSBsZWFkaW5nIFwiLS1cIiBzaG91bGQgYmUgc3RyaXBwZWQgYW5kIHNob3J0ICIKKyJvcHRpb25zIGFyZSBub3QgYWxsb3dlZC4gT3B0aW9uYWwgc3BhY2VzIGFyZSBhbGxvd2VkIGFyb3VuZCB0aGUgXCI9XCIgc3ltYm9sICIKKyJhbmQgb3B0aW9uYWwgcXVvdGVzIGFyZSBhbGxvd2VkIGFyb3VuZCB0aGUgdmFsdWUuICBIZXJlJ3MgYW4gZXhhbXBsZSBvZiBzdWNoICIKKyJhIGZpbGU6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NzAwCisjLCBuby13cmFwCittc2dpZCAiIgorIiAgIyBsZXQgZHBrZy1zb3VyY2UgY3JlYXRlIGEgZGViaWFuLnRhci5iejIgd2l0aCBtYXhpbWFsIGNvbXByZXNzaW9uXG4iCisiICBjb21wcmVzc2lvbiA9IFwiYnppcDJcIlxuIgorIiAgY29tcHJlc3Npb24tbGV2ZWwgPSA5XG4iCisiICAjIHVzZSBkZWJpYW4vcGF0Y2hlcy9kZWJpYW4tY2hhbmdlcyBhcyBhdXRvbWF0aWMgcGF0Y2hcbiIKKyIgIHNpbmdsZS1kZWJpYW4tcGF0Y2hcbiIKKyIgICMgaWdub3JlIGNoYW5nZXMgb24gY29uZmlnLntzdWIsZ3Vlc3N9XG4iCisiICBleHRlbmQtZGlmZi1pZ25vcmUgPSBcIihefC8pKGNvbmZpZy5zdWJ8Y29uZmlnLmd1ZXNzKSRcIlxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NzAzCittc2dpZCAiIgorIk5vdGU6IEI8Zm9ybWF0PiBvcHRpb25zIGFyZSBub3QgYWNjZXB0ZWQgaW4gdGhpcyBmaWxlLCB5b3Ugc2hvdWxkIHVzZSAiCisiQjxkZWJpYW4vc291cmNlL2Zvcm1hdD4gaW5zdGVhZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6NzAzCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgImRlYmlhbi9zb3VyY2UvbG9jYWwtb3B0aW9ucyIKK21zZ3N0ciAiQjwtLWxpY2VuY2U+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjcwOAorbXNnaWQgIiIKKyJFeGFjdGx5IGxpa2UgQjxkZWJpYW4vc291cmNlL29wdGlvbnM+IGV4Y2VwdCB0aGF0IHRoZSBmaWxlIGlzIG5vdCBpbmNsdWRlZCAiCisiaW4gdGhlIGdlbmVyYXRlZCBzb3VyY2UgcGFja2FnZS4gSXQgY2FuIGJlIHVzZWZ1bCB0byBzdG9yZSBhIHByZWZlcmVuY2UgdGllZCAiCisidG8gdGhlIG1haW50YWluZXIgb3IgdG8gdGhlIFZDUyByZXBvc2l0b3J5IHdoZXJlIHRoZSBzb3VyY2UgcGFja2FnZSBpcyAiCisibWFpbnRhaW5lZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6NzA4CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgImRlYmlhbi9zb3VyY2UvbG9jYWwtcGF0Y2gtaGVhZGVyIgorbXNnc3RyICJCPC0tbGljZW5jZT4iCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjcwOQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJkZWJpYW4vc291cmNlL3BhdGNoLWhlYWRlciIKK21zZ3N0ciAiQjwtLWxpY2VuY2U+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjcxMworbXNnaWQgIiIKKyJGcmVlIGZvcm0gdGV4dCB0aGF0IGlzIHB1dCBvbiB0b3Agb2YgdGhlIGF1dG9tYXRpYyBwYXRjaCBnZW5lcmF0ZWQgaW4gIgorImZvcm1hdHMgXCIyLjBcIiBvciBcIjMuMCAocXVpbHQpXCIuIEI8bG9jYWwtcGF0Y2gtaGVhZGVyPiBpcyBub3QgaW5jbHVkZWQgaW4gIgorInRoZSBnZW5lcmF0ZWQgc291cmNlIHBhY2thZ2Ugd2hpbGUgQjxwYXRjaC1oZWFkZXI+IGlzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo3MTMKKyMsIG5vLXdyYXAKK21zZ2lkICJkZWJpYW4vcGF0Y2hlcy9zZXJpZXMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo3MjIKK21zZ2lkICIiCisiVGhpcyBmaWxlIGxpc3RzIGFsbCBwYXRjaGVzIHRoYXQgaGF2ZSB0byBiZSBhcHBsaWVkIChpbiB0aGUgZ2l2ZW4gb3JkZXIpICBvbiAiCisidG9wIG9mIHRoZSB1cHN0cmVhbSBzb3VyY2UgcGFja2FnZS4gTGVhZGluZyBhbmQgdHJhaWxpbmcgc3BhY2VzIGFyZSAiCisic3RyaXBwZWQuIExpbmVzIHN0YXJ0aW5nIHdpdGggXCIjXCIgYXJlIGNvbW1lbnRzIGFuZCBhcmUgc2tpcHBlZC4gRW1wdHkgIgorImxpbmVzIGFyZSBpZ25vcmVkLiBSZW1haW5pbmcgbGluZXMgc3RhcnQgd2l0aCBhIHBhdGNoIGZpbGVuYW1lIChyZWxhdGl2ZSB0byAiCisidGhlIEI8ZGViaWFuL3BhdGNoZXMvPiBkaXJlY3RvcnkpIHVwIHRvIHRoZSBmaXJzdCBzcGFjZSBjaGFyYWN0ZXIgb3IgdGhlIGVuZCAiCisib2YgbGluZS4gT3B0aW9uYWwgcXVpbHQgb3B0aW9ucyBjYW4gZm9sbG93IHVwIHRvIHRoZSBlbmQgb2YgbGluZSBvciB0aGUgIgorImZpcnN0IFwiI1wiIHByZWNlZGVkIGJ5IG9uZSBvciBtb3JlIHNwYWNlcyAod2hpY2ggbWFya3MgdGhlIHN0YXJ0IG9mIGEgIgorImNvbW1lbnQgdXAgdG8gdGhlIGVuZCBvZiBsaW5lKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo3MjkKKyMsIGZ1enp5Cittc2dpZCAiQjxkcGtnLWRlYj4oMSksIEI8ZHBrZz4oMSksIEI8ZHNlbGVjdD4oMSkuIgorbXNnc3RyICJCPGRlYj4oNSksIEI8ZGViLWNvbnRyb2w+KDUpLCBCPGRwa2c+KDEpLCBCPGRzZWxlY3Q+KDEpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo3MzYKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAwOC0yMDExIFJhcGhhXFxbOmVdbCBIZXJ0em9nIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLXNwbGl0LjE6MgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJkcGtnLXNwbGl0IgorbXNnc3RyICJkcGtnIGvDqXN6bGV0IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6NQorIywgZnV6enkKK21zZ2lkICJkcGtnLXNwbGl0IC0gRGViaWFuIHBhY2thZ2UgYXJjaGl2ZSBzcGxpdC9qb2luIHRvb2wiCittc2dzdHIgImRwa2ctZGViIC0gRGViaWFuIGNzb21hZyBhcmNow612dW0gKC5kZWIpIGtlemVsxZEgZXN6a8O2eiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjkKKyMsIGZ1enp5Cittc2dpZCAiQjxkcGtnLXNwbGl0PiBbSTxvcHRpb24+Li4uXSBJPGNvbW1hbmQ+IgorbXNnc3RyICJCPGRwa2ctZGViPiBCPC1jPnxCPC0tY29udGVudHM+IEk8YXJjaMOtdnVtPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjE1Cittc2dpZCAiIgorIkI8ZHBrZy1zcGxpdD4gc3BsaXRzIERlYmlhbiBiaW5hcnkgcGFja2FnZSBmaWxlcyBpbnRvIHNtYWxsZXIgcGFydHMgYW5kICIKKyJyZWFzc2VtYmxlcyB0aGVtIGFnYWluLCB0byBzdXBwb3J0IHRoZSBzdG9yYWdlIG9mIGxhcmdlIHBhY2thZ2UgZmlsZXMgb24gIgorInNtYWxsIG1lZGlhIHN1Y2ggYXMgZmxvcHB5IGRpc2tzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTkKK21zZ2lkICIiCisiSXQgY2FuIGJlIG9wZXJhdGVkIG1hbnVhbGx5IHVzaW5nIHRoZSBCPC0tc3BsaXQ+LCBCPC0tam9pbj4gYW5kIEI8LS1pbmZvPiAiCisib3B0aW9ucy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjI3Cittc2dpZCAiIgorIkl0IGFsc28gaGFzIGFuIGF1dG9tYXRpYyBtb2RlLCBpbnZva2VkIHVzaW5nIHRoZSBCPC0tYXV0bz4gb3B0aW9uLCB3aGVyZSBpdCAiCisibWFpbnRhaW5zIGEgcXVldWUgb2YgcGFydHMgc2VlbiBidXQgbm90IHlldCByZWFzc2VtYmxlZCBhbmQgcmVhc3NlbWJsZXMgYSAiCisicGFja2FnZSBmaWxlIHdoZW4gaXQgaGFzIHNlZW4gYWxsIG9mIGl0cyBwYXJ0cy4gVGhlIEI8LS1saXN0cT4gYW5kIEI8LS0iCisiZGlzY2FyZD4gb3B0aW9ucyBhbGxvdyB0aGUgbWFuYWdlbWVudCBvZiB0aGUgcXVldWUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMTozMAorbXNnaWQgIiIKKyJBbGwgc3BsaXR0aW5nLCBqb2luaW5nIGFuZCBxdWV1ZWluZyBvcGVyYXRpb25zIHByb2R1Y2UgaW5mb3JtYXRpdmUgbWVzc2FnZXMgIgorIm9uIHN0YW5kYXJkIG91dHB1dDsgdGhlc2UgbWF5IHNhZmVseSBiZSBpZ25vcmVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zcGxpdC4xOjMyCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LXM+LCBCPC0tc3BsaXQ+IEk8Y29tcGxldGUtYXJjaGl2ZT4gW0k8cHJlZml4Pl0iCittc2dzdHIgIkI8ZHBrZy1kZWI+IEI8LUk+fEI8LS1pbmZvPiBJPGFyY2jDrXZ1bT4gW0k8ZWxsZW7FkXJ6xZEtZsOhamwtbsOpdj4gLi5dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MzUKK21zZ2lkICJTcGxpdHMgYSBzaW5nbGUgRGViaWFuIGJpbmFyeSBwYWNrYWdlIGludG8gc2V2ZXJhbCBwYXJ0cy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjQzCittc2dpZCAiIgorIlRoZSBwYXJ0cyBhcmUgbmFtZWQgSTxwcmVmaXg+QjwuPkk8Tj5CPG9mPkk8TT5CPC5kZWI+IHdoZXJlIEk8Tj4gaXMgdGhlIHBhcnQgIgorIm51bWJlciwgc3RhcnRpbmcgYXQgMSwgYW5kIEk8TT4gaXMgdGhlIHRvdGFsIG51bWJlciBvZiBwYXJ0cyAoYm90aCBpbiAiCisiZGVjaW1hbCkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMTo1MQorbXNnaWQgIiIKKyJJZiBubyBJPHByZWZpeD4gaXMgc3VwcGxpZWQgdGhlbiB0aGUgSTxjb21wbGV0ZS1hcmNoaXZlPiBmaWxlbmFtZSBpcyB0YWtlbiwgIgorImluY2x1ZGluZyBkaXJlY3RvcnksIHdpdGggYW55IHRyYWlsaW5nIEI8LmRlYj4gcmVtb3ZlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc3BsaXQuMTo1MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1qPiwgQjwtLWpvaW4+IEk8cGFydD4uLi4iCittc2dzdHIgIkI8ZHBrZy1kZWI+IEI8LWM+fEI8LS1jb250ZW50cz4gSTxhcmNow612dW0+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6NTUKK21zZ2lkICIiCisiSm9pbnMgdGhlIHBhcnRzIG9mIGEgcGFja2FnZSBmaWxlIHRvZ2V0aGVyLCByZWFzc2VtYmxpbmcgdGhlIG9yaWdpbmFsIGZpbGUgIgorImFzIGl0IHdhcyBiZWZvcmUgaXQgd2FzIHNwbGl0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6NTkKK21zZ2lkICIiCisiVGhlIHBhcnQgZmlsZXMgZ2l2ZW4gYXMgYXJndW1lbnRzIG11c3QgYmUgYWxsIHRoZSBwYXJ0cyBvZiBleGFjdGx5IHRoZSBzYW1lICIKKyJvcmlnaW5hbCBiaW5hcnkgZmlsZS4gRWFjaCBwYXJ0IG11c3Qgb2NjdXIgZXhhY3RseSBvbmNlIGluIHRoZSBhcmd1bWVudCAiCisibGlzdCwgdGhvdWdoIHRoZSBwYXJ0cyB0byBub3QgbmVlZCB0byBiZSBsaXN0ZWQgaW4gb3JkZXIuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMTo2NAorbXNnaWQgIiIKKyJUaGUgcGFydHMgbXVzdCBvZiBjb3Vyc2UgYWxsIGhhdmUgYmVlbiBnZW5lcmF0ZWQgd2l0aCB0aGUgc2FtZSBwYXJ0IHNpemUgIgorInNwZWNpZmllZCBhdCBzcGxpdCB0aW1lLCB3aGljaCBtZWFucyB0aGF0IHRoZXkgbXVzdCB1c3VhbGx5IGhhdmUgYmVlbiAiCisiZ2VuZXJhdGVkIGJ5IHRoZSBzYW1lIGludm9jYXRpb24gb2YgQjxkcGtnLXNwbGl0IC0tc3BsaXQ+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6NjYKK21zZ2lkICJUaGUgcGFydHMnIGZpbGVuYW1lcyBhcmUgbm90IHNpZ25pZmljYW50IGZvciB0aGUgcmVhc3NlbWJseSBwcm9jZXNzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6NjkKK21zZ2lkICIiCisiQnkgZGVmYXVsdCB0aGUgb3V0cHV0IGZpbGUgaXMgY2FsbGVkIEk8cGFja2FnZT5CPF8+STx2ZXJzaW9uPkI8Xz5JPGFyY2g+QjwuIgorImRlYj4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNwbGl0LjE6NzAKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtST4sIEI8LS1pbmZvPiBJPHBhcnQ+Li4uIgorbXNnc3RyICJCPGRwa2ctZGViPiBCPC1JPnxCPC0taW5mbz4gSTxhcmNow612dW0+IFtJPGVsbGVuxZFyesWRLWbDoWpsLW7DqXY+IC4uXSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjc1Cittc2dpZCAiIgorIlByaW50cyBpbmZvcm1hdGlvbiwgaW4gYSBodW1hbi1yZWFkYWJsZSBmb3JtYXQsIGFib3V0IHRoZSBwYXJ0IGZpbGUocykgICIKKyJzcGVjaWZpZWQuIEFyZ3VtZW50cyB3aGljaCBhcmUgbm90IGJpbmFyeSBwYWNrYWdlIHBhcnRzIHByb2R1Y2UgYSBtZXNzYWdlICIKKyJzYXlpbmcgc28gaW5zdGVhZCAoYnV0IHN0aWxsIG9uIHN0YW5kYXJkIG91dHB1dCkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNwbGl0LjE6NzUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1hPiwgQjwtLWF1dG8gLW8+IEk8Y29tcGxldGUtb3V0cHV0IHBhcnQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMTo3OAorbXNnaWQgIkF1dG9tYXRpY2FsbHkgcXVldWUgcGFydHMgYW5kIHJlYXNzZW1ibGUgYSBwYWNrYWdlIGlmIHBvc3NpYmxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6ODMKK21zZ2lkICIiCisiVGhlIEk8cGFydD4gc3BlY2lmaWVkIGlzIGV4YW1pbmVkLCBhbmQgY29tcGFyZWQgd2l0aCBvdGhlciBwYXJ0cyBvZiB0aGUgc2FtZSAiCisicGFja2FnZSAoaWYgYW55KSBpbiB0aGUgcXVldWUgb2YgcGFja2FnZXMgZmlsZSBwYXJ0cy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjkwCittc2dpZCAiIgorIklmIGFsbCBwYXJ0cyBvZiB0aGUgcGFja2FnZSBmaWxlIG9mIHdoaWNoIEk8cGFydD4gaXMgYSBwYXJ0IGFyZSBhdmFpbGFibGUgIgorInRoZW4gdGhlIHBhY2thZ2UgaXMgcmVhc3NlbWJsZWQgYW5kIHdyaXR0ZW4gdG8gSTxjb21wbGV0ZS1vdXRwdXQ+ICh3aGljaCAiCisic2hvdWxkIG5vdCB1c3VhbGx5IGFscmVhZHkgZXhpc3QsIHRob3VnaCB0aGlzIGlzIG5vdCBhbiBlcnJvcikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMTo5NgorbXNnaWQgIiIKKyJJZiBub3QgdGhlbiB0aGUgSTxwYXJ0PiBpcyBjb3BpZWQgaW50byB0aGUgcXVldWUgYW5kIEk8Y29tcGxldGUtb3V0cHV0PiBpcyAiCisibm90IGNyZWF0ZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxMDMKK21zZ2lkICIiCisiSWYgSTxwYXJ0PiBpcyBub3QgYSBzcGxpdCBiaW5hcnkgcGFja2FnZSBwYXJ0IHRoZW4gQjxkcGtnLXNwbGl0PiB3aWxsIGV4aXQgIgorIndpdGggc3RhdHVzIEI8MT47IGlmIHNvbWUgb3RoZXIgdHJvdWJsZSBvY2N1cnMgdGhlbiBpdCB3aWxsIGV4aXQgd2l0aCBzdGF0dXMgIgorIkI8Mj4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxMTAKK21zZ2lkICIiCisiVGhlIEI8LS1vdXRwdXQ+IG9yIEI8LW8+IG9wdGlvbiBtdXN0IGJlIHN1cHBsaWVkIHdoZW4gdXNpbmcgQjwtLWF1dG8+LiAgKElmICIKKyJ0aGlzIHdlcmUgbm90IG1hbmRhdG9yeSB0aGUgY2FsbGluZyBwcm9ncmFtIHdvdWxkIG5vdCBrbm93IHdoYXQgb3V0cHV0IGZpbGUgIgorInRvIGV4cGVjdC4pIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNwbGl0LjE6MTEwCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LWw+LCBCPC0tbGlzdHE+IgorbXNnc3RyICJCPC0tbGljZW5jZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxMTMKK21zZ2lkICJMaXN0cyB0aGUgY29udGVudHMgb2YgdGhlIHF1ZXVlIG9mIHBhY2thZ2VzIHRvIGJlIHJlYXNzZW1ibGVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTE3Cittc2dpZCAiIgorIkZvciBlYWNoIHBhY2thZ2UgZmlsZSBvZiB3aGljaCBwYXJ0cyBhcmUgaW4gdGhlIHF1ZXVlIHRoZSBvdXRwdXQgZ2l2ZXMgdGhlICIKKyJuYW1lIG9mIHRoZSBwYWNrYWdlLCB0aGUgcGFydHMgaW4gdGhlIHF1ZXVlLCBhbmQgdGhlIHRvdGFsIG51bWJlciBvZiBieXRlcyAiCisic3RvcmVkIGluIHRoZSBxdWV1ZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc3BsaXQuMToxMTcKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtZD4sIEI8LS1kaXNjYXJkPiBbSTxwYWNrYWdlPi4uLl0iCittc2dzdHIgIkI8ZHBrZy1kZWI+IEI8LWY+fEI8LS1maWVsZD4gSTxhcmNow612dW0+IFtJPGVsbGVuxZFyesWRLW1lesWRLW7DqXY+IC4uLl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxMjEKK21zZ2lkICIiCisiVGhpcyBkaXNjYXJkcyBwYXJ0cyBmcm9tIHRoZSBxdWV1ZSBvZiB0aG9zZSB3YWl0aW5nIGZvciB0aGUgcmVtYWluaW5nIHBhcnRzICIKKyJvZiB0aGVpciBwYWNrYWdlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjEyNgorbXNnaWQgIiIKKyJJZiBubyBJPHBhY2thZ2U+IGlzIHNwZWNpZmllZCB0aGVuIHRoZSBxdWV1ZSBpcyBjbGVhcmVkIGNvbXBsZXRlbHk7IGlmIGFueSAiCisiYXJlIHNwZWNpZmllZCB0aGVuIG9ubHkgcGFydHMgb2YgdGhlIHJlbGV2YW50IHBhY2thZ2UocykgYXJlIGRlbGV0ZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNwbGl0LjE6MTM0CisjLCBuby13cmFwCittc2dpZCAiQjwtLWRlcG90ZGlyPkk8IGRpcmVjdG9yeT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjEzOQorbXNnaWQgIiIKKyJTcGVjaWZpZXMgYW4gYWx0ZXJuYXRpdmUgZGlyZWN0b3J5IGZvciB0aGUgcXVldWUgb2YgcGFydHMgYXdhaXRpbmcgYXV0b21hdGljICIKKyJyZWFzc2VtYmx5LiBUaGUgZGVmYXVsdCBpcyBCPC92YXIvbGliL2Rwa2c+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zcGxpdC4xOjEzOQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1TPiwgQjwtLXBhcnRzaXplPiBJPGtpYmlieXRlcz4iCittc2dzdHIgIkI8LS1pbmZvPiwgQjwtST4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxNDMKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRoZSBtYXhpbXVtIHBhcnQgc2l6ZSB3aGVuIHNwbGl0dGluZywgaW4ga2liaWJ5dGVzICgxMDI0IGJ5dGVzKS4gIgorIlRoZSBkZWZhdWx0IGlzIDQ1MCBLaUIuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNwbGl0LjE6MTQzCisjLCBuby13cmFwCittc2dpZCAiQjwtbz4sIEI8LS1vdXRwdXQ+IEk8Y29tcGxldGUtb3V0cHV0PiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTQ2Cittc2dpZCAiU3BlY2lmaWVzIHRoZSBvdXRwdXQgZmlsZSBuYW1lIGZvciBhIHJlYXNzZW1ibHkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxNTEKK21zZ2lkICIiCisiVGhpcyBvdmVycmlkZXMgdGhlIGRlZmF1bHQgZm9yIGEgbWFudWFsIHJlYXNzZW1ibHkgKEI8LS1qb2luPikgIGFuZCBpcyAiCisibWFuZGF0b3J5IGZvciBhbiBhdXRvbWF0aWMgcXVldWUtb3ItcmVhc3NlbWJsZSAoQjwtLWF1dG8+KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc3BsaXQuMToxNTEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtUT4sIEI8LS1ucHF1aWV0PiIKK21zZ3N0ciAiQjwtLW5ldz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxNjIKK21zZ2lkICIiCisiV2hlbiBkb2luZyBhdXRvbWF0aWMgcXVldWUtb3ItcmVhc3NlbWJseSBCPGRwa2ctc3BsaXQ+IHVzdWFsbHkgcHJpbnRzIGEgIgorIm1lc3NhZ2UgaWYgaXQgaXMgZ2l2ZW4gYSBJPHBhcnQ+IHRoYXQgaXMgbm90IGEgYmluYXJ5IHBhY2thZ2UgcGFydC4gVGhpcyAiCisib3B0aW9uIHN1cHByZXNzZXMgdGhpcyBtZXNzYWdlLCB0byBhbGxvdyBwcm9ncmFtcyBzdWNoIGFzIEI8ZHBrZz4gdG8gY29wZSAiCisid2l0aCBib3RoIHNwbGl0IGFuZCB1bnNwbGl0IHBhY2thZ2VzIHdpdGhvdXQgcHJvZHVjaW5nIHNwdXJpb3VzIG1lc3NhZ2VzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zcGxpdC4xOjE2MgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tbXNkb3M+IgorbXNnc3RyICJCPC0tb2xkPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjE2NworbXNnaWQgIiIKKyJGb3JjZXMgdGhlIG91dHB1dCBmaWxlbmFtZXMgZ2VuZXJhdGVkIGJ5IEI8LS1zcGxpdD4gdG8gYmUgbXNkb3MtY29tcGF0aWJsZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjE3MworbXNnaWQgIiIKKyJUaGlzIG1hbmdsZXMgdGhlIHByZWZpeCAtIGVpdGhlciB0aGUgZGVmYXVsdCBkZXJpdmVkIGZyb20gdGhlIGlucHV0IGZpbGVuYW1lICIKKyJvciB0aGUgb25lIHN1cHBsaWVkIGFzIGFuIGFyZ3VtZW50OiBhbHBoYW51bWVyaWNzIGFyZSBsb3dlcmNhc2VkLCBwbHVzIHNpZ25zICIKKyJhcmUgcmVwbGFjZWQgYnkgQjx4PidzIGFuZCBhbGwgb3RoZXIgY2hhcmFjdGVycyBhcmUgZGlzY2FyZGVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTc4Cittc2dpZCAiIgorIlRoZSByZXN1bHQgaXMgdGhlbiB0cnVuY2F0ZWQgYXMgbXVjaCBhcyBpcyBuZWNlc3NhcnksIGFuZCBmaWxlbmFtZXMgb2YgdGhlICIKKyJmb3JtIEk8cHJlZml4Tj5CPG9mPkk8TT5CPC5kZWI+IGFyZSBnZW5lcmF0ZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxODYKK21zZ2lkICIiCisiVGhlIHJlcXVlc3RlZCBzcGxpdCwgbWVyZ2UsIG9yIG90aGVyIGNvbW1hbmQgc3VjY2VlZGVkLiAgQjwtLWluZm8+IGNvbW1hbmRzICIKKyJjb3VudCBhcyBzdWNjZXNzZnVsIGV2ZW4gaWYgdGhlIGZpbGVzIGFyZSBub3QgYmluYXJ5IHBhY2thZ2UgcGFydHMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxOTMKK21zZ2lkICIiCisiT25seSBvY2N1cnMgd2l0aCBCPC0tYXV0bz4gYW5kIGluZGljYXRlcyB0aGF0IHRoZSBJPHBhcnQ+IGZpbGUgd2FzIG5vdCBhICIKKyJiaW5hcnkgcGFja2FnZSBwYXJ0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zcGxpdC4xOjE5MyBzdGFydC1zdG9wLWRhZW1vbi44OjI3NSB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6Mzc4CisjLCBuby13cmFwCittc2dpZCAiQjwyPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTk4Cittc2dpZCAiIgorIlNvbWUga2luZCBvZiB0cm91YmxlIGhhcHBlbmVkLCBzdWNoIGFzIGEgc3lzdGVtIGNhbGwgZmFpbHVyZSwgYSBmaWxlIHRoYXQgIgorImxvb2tlZCBsaWtlIGEgcGFja2FnZSBwYXJ0IGZpbGUgYnV0IHdhcyBjb3JydXB0ZWQsIGEgdXNhZ2UgZXJyb3Igb3Igc29tZSAiCisib3RoZXIgcHJvYmxlbS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjIwMgorbXNnaWQgIiIKKyJGdWxsIGRldGFpbHMgb2YgdGhlIHBhY2thZ2VzIGluIHRoZSBxdWV1ZSBhcmUgaW1wb3NzaWJsZSB0byBnZXQgd2l0aG91dCAiCisiZGlnZ2luZyBpbnRvIHRoZSBxdWV1ZSBkaXJlY3RvcnkgeW91cnNlbGYuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToyMDUKK21zZ2lkICIiCisiVGhlcmUgaXMgbm8gZWFzeSB3YXkgdG8gdGVzdCB3aGV0aGVyIGEgZmlsZSB0aGF0IG1heSBiZSBhIGJpbmFyeSBwYWNrYWdlICIKKyJwYXJ0IGlzIG9uZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc3BsaXQuMToyMDcKKyMsIG5vLXdyYXAKK21zZ2lkICJJPC92YXIvbGliL2Rwa2cvcGFydHM+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToyMTEKK21zZ2lkICIiCisiVGhlIGRlZmF1bHQgcXVldWUgZGlyZWN0b3J5IGZvciBwYXJ0IGZpbGVzIGF3YWl0aW5nIGF1dG9tYXRpYyByZWFzc2VtYmx5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MjE2Cittc2dpZCAiIgorIlRoZSBmaWxlbmFtZXMgdXNlZCBpbiB0aGlzIGRpcmVjdG9yeSBhcmUgaW4gYSBmb3JtYXQgaW50ZXJuYWwgdG8gQjxkcGtnLSIKKyJzcGxpdD4gYW5kIGFyZSB1bmxpa2VseSB0byBiZSB1c2VmdWwgdG8gb3RoZXIgcHJvZ3JhbXMsIGFuZCBpbiBhbnkgY2FzZSB0aGUgIgorImZpbGVuYW1lIGZvcm1hdCBzaG91bGQgbm90IGJlIHJlbGllZCB1cG9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MjIyCisjLCBmdXp6eQorbXNnaWQgIkI8ZGViPig1KSwgQjxkZWItY29udHJvbD4oNSksIEI8ZHBrZy1kZWI+KDEpLCBCPGRwa2c+KDEpLiIKK21zZ3N0ciAiQjxkZWI+KDUpLCBCPGRlYi1jb250cm9sPig1KSwgQjxkcGtnPigxKSwgQjxkc2VsZWN0PigxKS4iCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLXN0YXRvdmVycmlkZSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODoxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkRlYmlhbiBwcm9qZWN0IgorbXNnc3RyICJEZWJpYW4gUHJvamVjdCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo0Cittc2dpZCAiZHBrZy1zdGF0b3ZlcnJpZGUgLSBvdmVycmlkZSBvd25lcnNoaXAgYW5kIG1vZGUgb2YgZmlsZXMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo4CisjLCBmdXp6eQorbXNnaWQgIkI8ZHBrZy1zdGF0b3ZlcnJpZGU+IFtJPG9wdGlvbj4uLi5dIEk8Y29tbWFuZD4iCittc2dzdHIgIkI8ZHBrZy1kZWI+IEI8LWM+fEI8LS1jb250ZW50cz4gSTxhcmNow612dW0+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjE4Cittc2dpZCAiIgorImBCPHN0YXQgb3ZlcnJpZGVzPicgYXJlIGEgd2F5IHRvIHRlbGwgQjxkcGtnPigxKSAgdG8gdXNlIGEgZGlmZmVyZW50IG93bmVyICIKKyJvciBtb2RlIGZvciBhIGZpbGUgd2hlbiBhIHBhY2thZ2UgaXMgaW5zdGFsbGVkLiAobm90ZTogSSB1c2UgdGhlIHdvcmQgYGZpbGUnICIKKyJoZXJlLCBidXQgaW4gcmVhbGl0eSB0aGlzIGNhbiBiZSBhbnkgZmlsZXN5c3RlbSBvYmplY3QgdGhhdCBkcGtnIGhhbmRsZXMsICIKKyJpbmNsdWRpbmcgZGlyZWN0b3JpZXMsIGRldmljZXMsIGV0Yy4pLiBUaGlzIGNhbiBiZSB1c2VkIHRvIGZvcmNlIHByb2dyYW1zICIKKyJ0aGF0IGFyZSBub3JtYWxseSBzZXR1aWQgdG8gYmUgaW5zdGFsbCB3aXRob3V0IGEgc2V0dWlkIGZsYWcsIG9yIG9ubHkgIgorImV4ZWN1dGFibGUgYnkgYSBjZXJ0YWluIGdyb3VwLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjIyCittc2dpZCAiIgorIkI8ZHBrZy1zdGF0b3ZlcnJpZGU+IGlzIGEgdXRpbGl0eSB0byBtYW5hZ2UgdGhlIGxpc3Qgb2Ygc3RhdCBvdmVycmlkZXMuIEl0ICIKKyJoYXMgdGhyZWUgYmFzaWMgZnVuY3Rpb25zOiBhZGRpbmcsIHJlbW92aW5nIGFuZCBsaXN0aW5nIG92ZXJyaWRlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6MjQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tYWRkPkk8IHVzZXIgZ3JvdXAgbW9kZSBmaWxlPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjMyCittc2dpZCAiIgorIkFkZCBhbiBvdmVycmlkZSBmb3IgSTxmaWxlPi4gSTxmaWxlPiBkb2VzIG5vdCBuZWVkIHRvIGV4aXN0IHdoZW4gdGhpcyAiCisiY29tbWFuZCBpcyB1c2VkOyB0aGUgb3ZlcnJpZGUgd2lsbCBiZSBzdG9yZWQgYW5kIHVzZWQgbGF0ZXIuICBVc2VycyBhbmQgIgorImdyb3VwcyBjYW4gYmUgc3BlY2lmaWVkIGJ5IHRoZWlyIG5hbWUgKGZvciBleGFtcGxlIEI8cm9vdD4gb3IgQjxub2JvZHk+KSwgb3IgIgorImJ5IHRoZWlyIG51bWJlciBieSBwcmVwZW5kaW5nIHRoZSBudW1iZXIgd2l0aCBhIGBCPCM+JyAoZm9yIGV4YW1wbGUgQjwjMD4gb3IgIgorIkI8IzY1NTM0PikuIFRoZSBJPG1vZGU+IG5lZWRzIHRvIGJlIHNwZWNpZmllZCBpbiBvY3RhbC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODozNQorbXNnaWQgIiIKKyJJZiAtLXVwZGF0ZSBpcyBzcGVjaWZpZWQgYW5kIEk8ZmlsZT4gZXhpc3RzLCBpdCBpcyBpbW1lZGlhdGVseSBzZXQgdG8gdGhlICIKKyJuZXcgb3duZXIgYW5kIG1vZGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6MzkKK21zZ2lkICIiCisiUmVtb3ZlIGFuIG92ZXJyaWRlIGZvciBJPGZpbGU+LCB0aGUgc3RhdHVzIG9mIEk8ZmlsZT4gaXMgbGVmdCB1bmNoYW5nZWQgYnkgIgorInRoaXMgY29tbWFuZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6MzkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tbGlzdD4gW0k8Z2xvYi1wYXR0ZXJuPl0iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo0NAorbXNnaWQgIiIKKyJMaXN0IGFsbCBvdmVycmlkZXMuIElmIGEgZ2xvYiBwYXR0ZXJuIGlzIHNwZWNpZmllZCByZXN0cmljdCB0aGUgb3V0cHV0IHRvICIKKyJvdmVycmlkZXMgd2hpY2ggbWF0Y2ggdGhlIGdsb2IuIElmIHRoZXJlIGFyZSBubyBvdmVycmlkZXMgb3Igbm9uZSBtYXRjaCB0aGUgIgorImdsb2IgQjxkcGtnLXN0YXRvdmVycmlkZT4gd2lsbCBleGl0IHdpdGggYW4gZXhpdGNvZGUgb2YgMS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo1NgorbXNnaWQgIiIKKyJDaGFuZ2UgdGhlIEk8ZGlyZWN0b3J5PiBvZiB0aGUgZHBrZyBkYXRhYmFzZSB3aGVyZSB0aGUgc3RhdG92ZXJyaWRlIGZpbGUgaXMgIgorImFsc28gc3RvcmVkLiBEZWZhdWx0cyB0byBJPC92YXIvbGliL2Rwa2c+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo1NiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzM2CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1mb3JjZT4iCittc2dzdHIgIkI8LS1ub2NoZWNrPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo2MAorbXNnaWQgIiIKKyJGb3JjZSBhbiBhY3Rpb24sIGV2ZW4gaWYgYSBzYW5pdHkgY2hlY2sgd291bGQgb3RoZXJ3aXNlIHByb2hpYml0IGl0LiAgVGhpcyAiCisiaXMgbmVjZXNzYXJ5IHRvIG92ZXJyaWRlIGFuIGV4aXN0aW5nIG92ZXJyaWRlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo2MAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tdXBkYXRlPiIKK21zZ3N0ciAiQjwtLW5ldz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6NjQKK21zZ2lkICIiCisiSW1tZWRpYXRlbHkgdHJ5IHRvIGNoYW5nZSB0aGUgZmlsZSB0byB0aGUgbmV3IG93bmVyIGFuZCBtb2RlIGlmIGl0IGV4aXN0cy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo2NworbXNnaWQgIkJlIGxlc3MgdmVyYm9zZSBhYm91dCB3aGF0IHdlIGRvLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo3NQorIywgbm8td3JhcAorbXNnaWQgIkk8L3Zhci9saWIvZHBrZy9zdGF0b3ZlcnJpZGU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6ODAKK21zZ2lkICIiCisiRmlsZSB3aGljaCBjb250YWlucyB0aGUgY3VycmVudCBsaXN0IG9mIHN0YXQgb3ZlcnJpZGVzIG9mIHRoZSBzeXN0ZW0uIEl0IGlzICIKKyJsb2NhdGVkIGluIHRoZSBkcGtnIGFkbWluaXN0cmF0aW9uIGRpcmVjdG9yeSwgYWxvbmcgd2l0aCBvdGhlciBmaWxlcyAiCisiaW1wb3J0YW50IHRvIGRwa2csIHN1Y2ggYXMgYHN0YXR1cycgb3IgYGF2YWlsYWJsZScuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6ODMKK21zZ2lkICIiCisiTm90ZTogQjxkcGtnLXN0YXRvdmVycmlkZT4gcHJlc2VydmVzIHRoZSBvbGQgY29weSBvZiB0aGlzIGZpbGUsIHdpdGggIgorImV4dGVuc2lvbiBcIi1vbGRcIiwgYmVmb3JlIHJlcGxhY2luZyBpdCB3aXRoIHRoZSBuZXcgb25lLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy10cmlnZ2VyLjE6MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJkcGtnLXRyaWdnZXIiCittc2dzdHIgImRwa2ctZGViIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXRyaWdnZXIuMTo0Cittc2dpZCAiZHBrZy10cmlnZ2VyIC0gYSBwYWNrYWdlIHRyaWdnZXIgdXRpbGl0eSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXRyaWdnZXIuMTo4CisjLCBmdXp6eQorbXNnaWQgIkI8ZHBrZy10cmlnZ2VyPiBbSTxvcHRpb24+Li4uXSBJPHRyaWdnZXItbmFtZT4iCittc2dzdHIgIkI8ZHBrZy1kZWI+IEI8LWM+fEI8LS1jb250ZW50cz4gSTxhcmNow612dW0+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXRyaWdnZXIuMToxMQorIywgZnV6enkKK21zZ2lkICJCPGRwa2ctdHJpZ2dlcj4gW0k8b3B0aW9uPi4uLl0gSTxjb21tYW5kPiIKK21zZ3N0ciAiQjxkcGtnLWRlYj4gQjwtYz58QjwtLWNvbnRlbnRzPiBJPGFyY2jDrXZ1bT4iCisKKyMgdHlwZTogUGxhaW4gdGV4dAorIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy10cmlnZ2VyLjE6MTUKK21zZ2lkICIiCisiQjxkcGtnLXRyaWdnZXI+IGlzIGEgdG9vbCB0byBleHBsaWNpdGx5IGFjdGl2YXRlIHRyaWdnZXJzIGFuZCBjaGVjayBmb3IgaXRzICIKKyJzdXBwb3J0IG9uIHRoZSBydW5uaW5nIEI8ZHBrZz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctdHJpZ2dlci4xOjIxCittc2dpZCAiIgorIlRoaXMgY2FuIGJlIHVzZWQgYnkgbWFpbnRhaW5lciBzY3JpcHRzIGluIGNvbXBsZXggYW5kIGNvbmRpdGlvbmFsIHNpdHVhdGlvbnMgIgorIndoZXJlIHRoZSBmaWxlIHRyaWdnZXJzLCBvciB0aGUgZGVjbGFyYXRpdmUgQjxhY3RpdmF0ZT4gdHJpZ2dlcnMgY29udHJvbCAiCisiZmlsZSBkaXJlY3RpdmUsIGFyZSBpbnN1ZmZpY2llbnRseSByaWNoLiBJdCBjYW4gYWxzbyBiZSB1c2VkIGZvciB0ZXN0aW5nIGFuZCAiCisiYnkgc3lzdGVtIGFkbWluaXN0cmF0b3JzIChidXQgbm90ZSB0aGF0IHRoZSB0cmlnZ2VycyB3b24ndCBhY3R1YWxseSBiZSBydW4gIgorImJ5IEI8ZHBrZy10cmlnZ2VyPikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctdHJpZ2dlci4xOjIzCittc2dpZCAiVW5yZWNvZ25pc2VkIHRyaWdnZXIgbmFtZSBzeW50YXhlcyBhcmUgYW4gZXJyb3IgZm9yIEI8ZHBrZy10cmlnZ2VyPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctdHJpZ2dlci4xOjI1CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1jaGVjay1zdXBwb3J0ZWQ+IgorbXNnc3RyICJCPC0tbm9jaGVjaz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctdHJpZ2dlci4xOjMxCittc2dpZCAiIgorIkNoZWNrIGlmIHRoZSBydW5uaW5nIEI8ZHBrZz4gc3VwcG9ydHMgdHJpZ2dlcnMgKHVzdWFsbHkgY2FsbGVkIGZyb20gYSAiCisicG9zdGluc3QpLiBXaWxsIGV4aXQgQjwwPiBpZiBhIHRyaWdnZXJzLWNhcGFibGUgQjxkcGtnPiBoYXMgcnVuLCBvciBCPDE+ICIKKyJ3aXRoIGFuIGVycm9yIG1lc3NhZ2UgdG8gc3RkZXJyIGlmIG5vdC4gTm9ybWFsbHksIGhvd2V2ZXIsIGl0IGlzIGJldHRlciBqdXN0ICIKKyJ0byBhY3RpdmF0ZSB0aGUgZGVzaXJlZCB0cmlnZ2VyIHdpdGggQjxkcGtnLXRyaWdnZXI+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy10cmlnZ2VyLjE6NDMKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWJ5LXBhY2thZ2U9Pkk8cGFja2FnZT4iCittc2dzdHIgIkI8UGFja2FnZTo+IEU8bHQ+Y3NvbWFnIG7DqXZFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy10cmlnZ2VyLjE6NDkKK21zZ2lkICIiCisiT3ZlcnJpZGUgdHJpZ2dlciBhd2FpdGVyIChub3JtYWxseSBzZXQgYnkgQjxkcGtnPiB0aHJvdWdoIHRoZSAiCisiQjxEUEtHX01BSU5UU0NSSVBUX1BBQ0tBR0U+IGVudmlyb25tZW50IHZhcmlhYmxlIG9mIHRoZSBtYWludGFpbmVyIHNjcmlwdHMsICIKKyJuYW1pbmcgdGhlIHBhY2thZ2UgdG8gd2hpY2ggdGhlIHNjcmlwdCBiZWxvbmdzLCBhbmQgdGhpcyB3aWxsIGJlIHVzZWQgYnkgIgorImRlZmF1bHQpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy10cmlnZ2VyLjE6NDkKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLW5vLWF3YWl0PiIKK21zZ3N0ciAiQjwtLW5ldz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctdHJpZ2dlci4xOjU2Cittc2dpZCAiIgorIlRoaXMgb3B0aW9uIGFycmFuZ2VzIHRoYXQgdGhlIGNhbGxpbmcgcGFja2FnZSBUIChpZiBhbnkpIG5lZWQgbm90IGF3YWl0IHRoZSAiCisicHJvY2Vzc2luZyBvZiB0aGlzIHRyaWdnZXI7IHRoZSBpbnRlcmVzdGVkIHBhY2thZ2UocykgSSwgd2lsbCBub3QgYmUgYWRkZWQgIgorInRvIFQncyB0cmlnZ2VyIHByb2Nlc3NpbmcgYXdhaXRlZCBsaXN0IGFuZCBUJ3Mgc3RhdHVzIGlzIHVuY2hhbmdlZC4gIFQgbWF5ICIKKyJiZSBjb25zaWRlcmVkIGluc3RhbGxlZCBldmVuIHRob3VnaCBJIG1heSBub3QgeWV0IGhhdmUgcHJvY2Vzc2VkIHRoZSB0cmlnZ2VyLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy10cmlnZ2VyLjE6NTYKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLW5vLWFjdD4iCittc2dzdHIgIkI8LS1ub2NoZWNrPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy10cmlnZ2VyLjE6NTkKK21zZ2lkICJKdXN0IHRlc3QsIGRvIG5vdCBhY3R1YWxseSBjaGFuZ2UgYW55dGhpbmcuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctdHJpZ2dlci4xOjY5CisjLCBmdXp6eQorbXNnaWQgIiIKKyJCPGRwa2c+KDEpLCBCPGRlYi10cmlnZ2Vycz4oNSksIEI8L3Vzci9zaGFyZS9kb2MvZHBrZy1kZXYvdHJpZ2dlcnMudHh0Lmd6Pi4iCittc2dzdHIgIkI8ZHBrZz4oMSkuIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy12ZW5kb3IuMToxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgImRwa2ctdmVuZG9yIgorbXNnc3RyICJkcGtnLWRlYiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy12ZW5kb3IuMTo0Cittc2dpZCAiZHBrZy12ZW5kb3IgLSBxdWVyaWVzIGluZm9ybWF0aW9uIGFib3V0IGRpc3RyaWJ1dGlvbiB2ZW5kb3JzIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctdmVuZG9yLjE6OAorIywgZnV6enkKK21zZ2lkICJCPGRwa2ctdmVuZG9yPiBbSTxvcHRpb24+Li4uXSBJPGNvbW1hbmQ+IgorbXNnc3RyICJCPGRwa2ctZGViPiBCPC1jPnxCPC0tY29udGVudHM+IEk8YXJjaMOtdnVtPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy12ZW5kb3IuMToxMworbXNnaWQgIiIKKyJCPGRwa2ctdmVuZG9yPiBpcyBhIHRvb2wgdG8gcXVlcnkgaW5mb3JtYXRpb24gYWJvdXQgdmVuZG9ycyBsaXN0ZWQgaW4gQjwvZXRjLyIKKyJkcGtnL29yaWdpbnM+LiBCPC9ldGMvZHBrZy9vcmlnaW5zL2RlZmF1bHQ+IGNvbnRhaW5zIGluZm9ybWF0aW9uIGFib3V0IHRoZSAiCisiY3VycmVudCB2ZW5kb3IuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXZlbmRvci4xOjE1CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1pcz5JPCB2ZW5kb3I+IgorbXNnc3RyICJCPC0tc2hvd2Zvcm1hdD0+STxmb3Jtw6F0dW0+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXZlbmRvci4xOjE5Cittc2dpZCAiIgorIkV4aXRzIHdpdGggQjwwPiBpZiB0aGUgY3VycmVudCB2ZW5kb3IgaXMgSTx2ZW5kb3I+LiBPdGhlcndpc2UgZXhpdHMgd2l0aCBub24tIgorInplcm8uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXZlbmRvci4xOjE5CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1kZXJpdmVzLWZyb20+STwgdmVuZG9yPiIKK21zZ3N0ciAiQjxQcmlvcml0eTo+IEU8bHQ+ZWxzxZFiYnPDqWdFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy12ZW5kb3IuMToyNAorbXNnaWQgIiIKKyJFeGl0cyB3aXRoIEI8MD4gaWYgdGhlIGN1cnJlbnQgdmVuZG9yIGRpc3RyaWJ1dGlvbiBpcyBhIGRlcml2YXRpdmUgb2YgIgorIkk8dmVuZG9yPiwgb3RoZXJ3aXNlIGV4aXRzIHdpdGggbm9uLXplcm8uIEl0IHVzZXMgdGhlIFwiUGFyZW50XCIgZmllbGQgdG8gIgorImJyb3dzZSBhbGwgYW5jZXN0b3JzIG9mIHRoZSBjdXJyZW50IHZlbmRvci4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctdmVuZG9yLjE6MjQKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLXF1ZXJ5Pkk8IGZpZWxkPiIKK21zZ3N0ciAiQjwtLXZlcnNpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXZlbmRvci4xOjI4Cittc2dpZCAiIgorIlByaW50IG9uIHN0YW5kYXJkIG91dHB1dCB0aGUgdmFsdWUgb2YgdGhlIHZlbmRvci1zcGVjaWZpYyBJPGZpZWxkPiBmb3IgdGhlICIKKyJjdXJyZW50IHZlbmRvci4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctdmVuZG9yLjE6MzYKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLXZlbmRvcj5JPCB2ZW5kb3I+IgorbXNnc3RyICJCPFByaW9yaXR5Oj4gRTxsdD5lbHPFkWJic8OpZ0U8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXZlbmRvci4xOjQxCittc2dpZCAiIgorIkFzc3VtZXMgdGhlIGN1cnJlbnQgdmVuZG9yIGlzIEk8dmVuZG9yPiBpbnN0ZWFkIG9mIGRpc2NvdmVyaW5nIGl0IHdpdGggdGhlICIKKyJCPERFQl9WRU5ET1I+IGVudmlyb25tZW50IHZhcmlhYmxlIG9yIEI8L2V0Yy9kcGtnL29yaWdpbnMvZGVmYXVsdD4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXZlbmRvci4xOjQzCisjLCBuby13cmFwCittc2dpZCAiQjxERUJfVkVORE9SPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXZlbmRvci4xOjQ3Cittc2dpZCAiIgorIlRoaXMgc2V0dGluZyBkZWZpbmVzIHRoZSBjdXJyZW50IHZlbmRvci4gSWYgbm90IHNldCwgaXQgd2lsbCBkaXNjb3ZlciB0aGUgIgorImN1cnJlbnQgdmVuZG9yIGJ5IHJlYWRpbmcgQjwvZXRjL2Rwa2cvb3JpZ2lucy9kZWZhdWx0Pi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy12ZW5kb3IuMTo1MCB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDk4Cittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMDkgUmFwaGFcXFs6ZV1sIEhlcnR6b2ciCittc2dzdHIgIiIKKworIy4gdHlwZTogVEgKKyM6IGRzZWxlY3QuMToxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgImRzZWxlY3QiCittc2dzdHIgImRzZWxlY3QuY2ZnIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NAorIywgZnV6enkKK21zZ2lkICJkc2VsZWN0IC0gRGViaWFuIHBhY2thZ2UgbWFuYWdlbWVudCBmcm9udGVuZCIKK21zZ3N0ciAiZGViLWNvbnRyb2wgLSBEZWJpYW4gY3NvbWFnIGbFkSBrb250cm9sbCBmw6FqbCBmb3Jtw6F0dW0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo4CisjLCBmdXp6eQorbXNnaWQgIkI8ZHNlbGVjdD4gW0k8b3B0aW9uPi4uLl0gW0k8YWN0aW9uPl0iCittc2dzdHIgIkI8ZHBrZy1kZWI+IEI8LWM+fEI8LS1jb250ZW50cz4gSTxhcmNow612dW0+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTcKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiQjxkc2VsZWN0PlxuIgorImlzIG9uZSBvZiB0aGUgcHJpbWFyeSB1c2VyIGludGVyZmFjZXMgZm9yIG1hbmFnaW5nIHBhY2thZ2VzIG9uIGEgRGViaWFuXG4iCisic3lzdGVtLiBBdCB0aGUgQjxkc2VsZWN0PiBtYWluIG1lbnUsIHRoZSBzeXN0ZW0gYWRtaW5pc3RyYXRvciBjYW46XG4iCisiIC0gVXBkYXRlIHRoZSBsaXN0IG9mIGF2YWlsYWJsZSBwYWNrYWdlIHZlcnNpb25zLFxuIgorIiAtIFZpZXcgdGhlIHN0YXR1cyBvZiBpbnN0YWxsZWQgYW5kIGF2YWlsYWJsZSBwYWNrYWdlcyxcbiIKKyIgLSBBbHRlciBwYWNrYWdlIHNlbGVjdGlvbnMgYW5kIG1hbmFnZSBkZXBlbmRlbmNpZXMsXG4iCisiIC0gSW5zdGFsbCBuZXcgcGFja2FnZXMgb3IgdXBncmFkZSB0byBuZXdlciB2ZXJzaW9ucy5cbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MjkKK21zZ2lkICIiCisiQjxkc2VsZWN0PiBvcGVyYXRlcyBhcyBhIGZyb250LWVuZCB0byBCPGRwa2c+KDEpLCB0aGUgbG93LWxldmVsIGRlYmlhbiAiCisicGFja2FnZSBoYW5kbGluZyB0b29sLiBJdCBmZWF0dXJlcyBhIGZ1bGwtc2NyZWVuIHBhY2thZ2Ugc2VsZWN0aW9ucyBtYW5hZ2VyICIKKyJ3aXRoIHBhY2thZ2UgZGVwZW5kcyBhbmQgY29uZmxpY3RzIHJlc29sdmVyLiBXaGVuIHJ1biB3aXRoIGFkbWluaXN0cmF0b3IgIgorInByaXZpbGVnZXMsIHBhY2thZ2VzIGNhbiBiZSBpbnN0YWxsZWQsIHVwZ3JhZGVkIGFuZCByZW1vdmVkLiBWYXJpb3VzIGFjY2VzcyAiCisibWV0aG9kcyBjYW4gYmUgY29uZmlndXJlZCB0byByZXRyaWV2ZSBhdmFpbGFibGUgcGFja2FnZSB2ZXJzaW9uIGluZm9ybWF0aW9uICIKKyJhbmQgaW5zdGFsbGFibGUgcGFja2FnZXMgZnJvbSBwYWNrYWdlIHJlcG9zaXRvcmllcy4gIERlcGVuZGluZyBvbiB0aGUgdXNlZCAiCisiYWNjZXNzIG1ldGhvZCwgdGhlc2UgcmVwb3NpdG9yaWVzIGNhbiBiZSBwdWJsaWMgYXJjaGl2ZSBzZXJ2ZXJzIG9uIHRoZSAiCisiaW50ZXJuZXQsIGxvY2FsIGFyY2hpdmUgc2VydmVycyBvciBjZHJvbXMuICBUaGUgcmVjb21tZW5kZWQgYWNjZXNzIG1ldGhvZCBpcyAiCisiSTxhcHQ+LCB3aGljaCBpcyBwcm92aWRlZCBieSB0aGUgcGFja2FnZSBCPGFwdD4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTozNQorbXNnaWQgIiIKKyJOb3JtYWxseSBCPGRzZWxlY3Q+IGlzIGludm9rZWQgd2l0aG91dCBwYXJhbWV0ZXJzLiBBbiBpbnRlcmFjdGl2ZSBtZW51IGlzICIKKyJwcmVzZW50ZWQsIG9mZmVyaW5nIHRoZSB1c2VyIGEgbGlzdCBvZiBhY3Rpb25zLiBJZiBhbiBhY3Rpb24gaXMgZ2l2ZW4gYXMgIgorImFyZ3VtZW50LCB0aGVuIHRoYXQgYWN0aW9uIGlzIHN0YXJ0ZWQgaW1tZWRpYXRlbHkuIFNldmVyYWwgY29tbWFuZCBsaW5lICIKKyJwYXJhbWV0ZXJzIGFyZSBzdGlsbCBhdmFpbGFibGUgdG8gbW9kaWZ5IHRoZSBydW5uaW5nIGJlaGF2aW91ciBvZiBCPGRzZWxlY3Q+ICIKKyJvciBzaG93IGFkZGl0aW9uYWwgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHByb2dyYW0uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0MworbXNnaWQgIiIKKyJBbGwgb3B0aW9ucyBjYW4gYmUgc3BlY2lmaWVkIGJvdGggb24gdGhlIGNvbW1hbmQgbGluZSBhbmQgaW4gdGhlIEI8ZHNlbGVjdD4gIgorImNvbmZpZ3VyYXRpb24gZmlsZSBJPC9ldGMvZHBrZy9kc2VsZWN0LmNmZz4gb3IgdGhlIGZpbGVzIG9uIHRoZSAiCisiY29uZmlndXJhdGlvbiBkaXJlY3RvcnkgSTwvZXRjL2Rwa2cvZHNlbGVjdC5jZmcuZC8+LiBFYWNoIGxpbmUgaW4gdGhlICIKKyJjb25maWd1cmF0aW9uIGZpbGUgaXMgZWl0aGVyIGFuIG9wdGlvbiAoZXhhY3RseSB0aGUgc2FtZSBhcyB0aGUgY29tbWFuZCBsaW5lICIKKyJvcHRpb24gYnV0IHdpdGhvdXQgbGVhZGluZyBkYXNoZXMpIG9yIGEgY29tbWVudCAoaWYgaXQgc3RhcnRzIHdpdGggYSBCPCM+KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjQ5Cittc2dpZCAiIgorIkNoYW5nZXMgdGhlIGRpcmVjdG9yeSB3aGVyZSB0aGUgZHBrZyBgSTxzdGF0dXM+JywgYEk8YXZhaWxhYmxlPicgYW5kIHNpbWlsYXIgIgorImZpbGVzIGFyZSBsb2NhdGVkLiBUaGlzIGRlZmF1bHRzIHRvIEk8L3Zhci9saWIvZHBrZz4gYW5kIG5vcm1hbGx5IHRoZXJlICIKKyJzaG91bGRuJ3QgYmUgYW55IG5lZWQgdG8gY2hhbmdlIGl0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHNlbGVjdC4xOjQ5CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8LS1kZWJ1Zz4sIEI8LUQ+IgorbXNnaWQgIkI8LS1kZWJ1Zz5JPCBmaWxlID58STwgPkI8LUQ+STxmaWxlPiIKK21zZ3N0ciAiQjwtLWRlYnVnPiwgQjwtRD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo1MgorbXNnaWQgIlR1cm4gb24gZGVidWdnaW5nLiBEZWJ1Z2dpbmcgaW5mb3JtYXRpb24gaXMgc2VudCB0byBJPGZpbGU+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHNlbGVjdC4xOjUyCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1leHBlcnQ+IgorbXNnc3RyICJCPC0tbmV3PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjU2Cittc2dpZCAiIgorIlR1cm5zIG9uIGV4cGVydCBtb2RlLCBpLmUuIGRvZXNuJ3QgZGlzcGxheSBwb3NzaWJseSBhbm5veWluZyBoZWxwIG1lc3NhZ2VzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHNlbGVjdC4xOjU2CisjLCBuby13cmFwCittc2dpZCAiQjwtLWNvbG91cj58QjwtLWNvbG9yPiBJPHNjcmVlbnBhcnQ6PltJPGZvcmVncm91bmQ+XSxbSTxiYWNrZ3JvdW5kPl1bSTw6YXR0cj5bSTwrYXR0cisuLj5dXSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NjMKK21zZ2lkICIiCisiQ29uZmlndXJlcyBzY3JlZW4gY29sb3JzLiBUaGlzIHdvcmtzIG9ubHkgaWYgeW91ciBkaXNwbGF5IHN1cHBvcnRzIGNvbG9ycy4gICIKKyJUaGlzIG9wdGlvbiBtYXkgYmUgdXNlZCBtdWx0aXBsZSB0aW1lcyAoYW5kIGlzIGJlc3QgdXNlZCBpbiBJPGRzZWxlY3QuY2ZnPikuICIKKyJFYWNoIHVzZSBjaGFuZ2VzIHRoZSBjb2xvciAoYW5kIG9wdGlvbmFsbHksIG90aGVyIGF0dHJpYnV0ZXMpIG9mIG9uZSBwYXJ0IG9mICIKKyJ0aGUgc2NyZWVuLiAgVGhlIHBhcnRzIG9mIHRoZSBzY3JlZW4gKGZyb20gdG9wIHRvIGJvdHRvbSkgYXJlOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHNlbGVjdC4xOjY0CisjLCBuby13cmFwCittc2dpZCAiQjx0aXRsZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjY3Cittc2dpZCAiVGhlIHNjcmVlbiB0aXRsZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRzZWxlY3QuMTo2NworIywgbm8td3JhcAorbXNnaWQgIkI8bGlzdGhlYWQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo3MAorbXNnaWQgIlRoZSBoZWFkZXIgbGluZSBhYm92ZSB0aGUgbGlzdCBvZiBwYWNrYWdlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRzZWxlY3QuMTo3MAorIywgbm8td3JhcAorbXNnaWQgIkI8bGlzdD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjczCittc2dpZCAiVGhlIHNjcm9sbGluZyBsaXN0IG9mIHBhY2thZ2VzIChhbmQgYWxzbyBzb21lIGhlbHAgdGV4dCkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkc2VsZWN0LjE6NzMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGxpc3RzZWw+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo3NgorbXNnaWQgIlRoZSBzZWxlY3RlZCBpdGVtIGluIHRoZSBsaXN0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHNlbGVjdC4xOjc2CisjLCBuby13cmFwCittc2dpZCAiQjxwa2dzdGF0ZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjgwCittc2dpZCAiIgorIkluIHRoZSBsaXN0IG9mIHBhY2thZ2VzLCB0aGUgdGV4dCBpbmRpY2F0aW5nIHRoZSBjdXJyZW50IHN0YXRlIG9mIGVhY2ggIgorInBhY2thZ2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkc2VsZWN0LjE6ODAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHBrZ3N0YXRlc2VsPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6ODQKK21zZ2lkICIiCisiSW4gdGhlIGxpc3Qgb2YgcGFja2FnZXMsIHRoZSB0ZXh0IGluZGljYXRpbmcgdGhlIGN1cnJlbnQgc3RhdGUgb2YgdGhlICIKKyJjdXJyZW50bHkgc2VsZWN0ZWQgcGFja2FnZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRzZWxlY3QuMTo4NAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPGluZm9oZWFkPiIKK21zZ3N0ciAiQjwtLW5vY2hlY2s+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6ODcKK21zZ2lkICIiCisiVGhlIGhlYWRlciBsaW5lIHRoYXQgZGlzcGxheXMgdGhlIHN0YXRlIG9mIHRoZSBjdXJyZW50bHkgc2VsZWN0ZWQgcGFja2FnZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRzZWxlY3QuMTo4NworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPGluZm9kZXNjPiIKK21zZ3N0ciAiQjwtLW5vY2hlY2s+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6OTAKK21zZ2lkICJUaGUgcGFja2FnZSdzIHNob3J0IGRlc2NyaXB0aW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHNlbGVjdC4xOjkwCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8aW5mbz4iCittc2dzdHIgIkI8LS1pbmZvPiwgQjwtST4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo5MworbXNnaWQgIlVzZWQgdG8gZGlzcGxheSBwYWNrYWdlIGluZm8gc3VjaCBhcyB0aGUgcGFja2FnZSdzIGRlc2NyaXB0aW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHNlbGVjdC4xOjkzCisjLCBuby13cmFwCittc2dpZCAiQjxpbmZvZm9vdD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjk2Cittc2dpZCAiVGhlIGxhc3QgbGluZSBvZiB0aGUgc2NyZWVuIHdoZW4gc2VsZWN0aW5nIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHNlbGVjdC4xOjk2CisjLCBuby13cmFwCittc2dpZCAiQjxxdWVyeT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjk5Cittc2dpZCAiVXNlZCB0byBkaXNwbGF5IHF1ZXJ5IGxpbmVzIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkc2VsZWN0LjE6OTkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGhlbHBzY3JlZW4+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxMDIKK21zZ2lkICJDb2xvciBvZiBoZWxwIHNjcmVlbnMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxMDcKK21zZ2lkICIiCisiQWZ0ZXIgdGhlIHBhcnQgb2YgdGhlIHNjcmVlbiBjb21lcyBhIGNvbG9uIGFuZCB0aGUgY29sb3Igc3BlY2lmaWNhdGlvbi4gWW91ICIKKyJjYW4gc3BlY2lmeSBlaXRoZXIgdGhlIGZvcmVncm91bmQgY29sb3IsIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLCBvciBib3RoLCAiCisib3ZlcnJpZGluZyB0aGUgY29tcGlsZWQtaW4gY29sb3JzLiBVc2Ugc3RhbmRhcmQgY3Vyc2VzIGNvbG9yIG5hbWVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTEzCittc2dpZCAiIgorIk9wdGlvbmFsbHksIGFmdGVyIHRoZSBjb2xvciBzcGVjaWZpY2F0aW9uIGlzIGFub3RoZXIgY29sb24sIGFuZCBhbiBhdHRyaWJ1dGUgIgorInNwZWNpZmljYXRpb24uIFRoaXMgaXMgYSBsaXN0IG9mIG9uZSBvciBtb3JlIGF0dHJpYnV0ZXMsIHNlcGFyYXRlZCBieSBwbHVzICIKKyIoXCIrXCIpIGNoYXJhY3RlcnMuIEF2YWlsYWJsZSBhdHRyaWJ1dGVzIGluY2x1ZGUgKG5vdCBhbGwgb2YgdGhlc2Ugd2lsbCB3b3JrICIKKyJvbiBhbGwgdGVybWluYWxzKTogbm9ybWFsLCBzdGFuZG91dCwgdW5kZXJsaW5lLCByZXZlcnNlLCBibGluaywgYnJpZ2h0LCBkaW0sICIKKyJib2xkIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxMTYKK21zZ2lkICJQcmludCBhIGJyaWVmIGhlbHAgdGV4dCBhbmQgZXhpdCBzdWNjZXNzZnVsbHkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxMTkKK21zZ2lkICJQcmludCB2ZXJzaW9uIGluZm9ybWF0aW9uIGFuZCBleGl0IHN1Y2Nlc3NmdWxseS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjEyNgorbXNnaWQgIiIKKyJXaGVuIEI8ZHNlbGVjdD4gaXMgc3RhcnRlZCBpdCBjYW4gcGVyZm9ybSB0aGUgZm9sbG93aW5nIGFjdGlvbnMsIGVpdGhlciAiCisiZGlyZWN0bHkgaWYgaXQgd2FzIHNwZWNpZmllZCBvbiB0aGUgY29tbWFuZCBsaW5lIG9yIGJ5IHByb21wdGluZyB0aGUgdXNlciAiCisid2l0aCBhIG1lbnUgb2YgYXZhaWxhYmxlIGFjdGlvbnMgaWYgcnVubmluZyBpbnRlcmFjdGl2ZWx5OiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHNlbGVjdC4xOjEyNgorIywgbm8td3JhcAorbXNnaWQgImFjY2VzcyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTI4Cittc2dpZCAiQ2hvb3NlIGFuZCBjb25maWd1cmUgYW4gYWNjZXNzIG1ldGhvZCB0byBhY2Nlc3MgcGFja2FnZSByZXBvc2l0b3JpZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxMzQKK21zZ2lkICIiCisiQnkgZGVmYXVsdCwgQjxkc2VsZWN0PiBwcm92aWRlcyBzZXZlcmFsIG1ldGhvZHMgc3VjaCBhcyBJPGNkcm9tPiwgIgorIkk8bXVsdGlfY2Q+LCBJPG5mcz4sIEk8bXVsdGlfbmZzPiwgSTxoYXJkZGlzaz4sIEk8bW91bnRlZD4sIEk8bXVsdGlfbW91bnQ+LCAiCisiSTxmbG9wcHk+IG9yIEk8ZnRwPiwgYnV0IG90aGVyIHBhY2thZ2VzIG1heSBwcm92aWRlIGFkZGl0aW9uYWwgbWV0aG9kcywgZWcuICIKKyJ0aGUgSTxhcHQ+IGFjY2VzcyBtZXRob2QgcHJvdmlkZWQgYnkgdGhlIEI8YXB0PiBwYWNrYWdlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTM2Cittc2dpZCAiVGhlIHVzZSBvZiB0aGUgSTxhcHQ+IGFjY2VzcyBtZXRob2QgaXMgc3Ryb25nbHkgcmVjb21tZW5kZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkc2VsZWN0LjE6MTM3CisjLCBuby13cmFwCittc2dpZCAidXBkYXRlIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxMzkKK21zZ2lkICJSZWZyZXNoIHRoZSBhdmFpbGFibGUgcGFja2FnZXMgZGF0YWJhc2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxNDYKK21zZ2lkICIiCisiUmV0cmlldmVzIGEgbGlzdCBvZiBhdmFpbGFibGUgcGFja2FnZSB2ZXJzaW9ucyBmcm9tIHRoZSBwYWNrYWdlIHJlcG9zaXRvcnksICIKKyJjb25maWd1cmVkIGZvciB0aGUgY3VycmVudCBhY2Nlc3MgbWV0aG9kLCBhbmQgdXBkYXRlIHRoZSBkcGtnIGRhdGFiYXNlLiBUaGUgIgorInBhY2thZ2UgbGlzdHMgYXJlIGNvbW1vbmx5IHByb3ZpZGVkIGJ5IHRoZSByZXBvc2l0b3J5IGFzIGZpbGVzIG5hbWVkICIKKyJJPFBhY2thZ2VzPiBvciBJPFBhY2thZ2VzLmd6Pi4gIFRoZXNlIGZpbGVzIGNhbiBiZSBnZW5lcmF0ZWQgYnkgcmVwb3NpdG9yeSAiCisibWFpbnRhaW5lcnMsIHVzaW5nIHRoZSBwcm9ncmFtIEI8ZHBrZy1zY2FucGFja2FnZXM+KDEpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTQ5Cittc2dpZCAiIgorIkRldGFpbHMgb2YgdGhlIHVwZGF0ZSBhY3Rpb24gZGVwZW5kIG9uIHRoZSBhY2Nlc3MgbWV0aG9kJ3MgaW1wbGVtZW50YXRpb24uICAiCisiTm9ybWFsbHkgdGhlIHByb2Nlc3MgaXMgc3RyYWlnaHRmb3J3YXJkIGFuZCByZXF1aXJlcyBubyB1c2VyIGludGVyYWN0aW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHNlbGVjdC4xOjE1MAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJzZWxlY3QiCittc2dzdHIgImRzZWxlY3QuY2ZnIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTUyCittc2dpZCAiVmlldyBvciBtYW5hZ2UgcGFja2FnZSBzZWxlY3Rpb25zIGFuZCBkZXBlbmRlbmNpZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxNTgKK21zZ2lkICIiCisiVGhpcyBpcyB0aGUgbWFpbiBmdW5jdGlvbiBvZiBCPGRzZWxlY3Q+LiBJbiB0aGUgc2VsZWN0IHNjcmVlbiwgdGhlIHVzZXIgY2FuICIKKyJyZXZpZXcgYSBsaXN0IG9mIGFsbCBhdmFpbGFibGUgYW5kIGluc3RhbGxlZCBwYWNrYWdlcy4gV2hlbiBydW4gd2l0aCAiCisiYWRtaW5pc3RyYXRvciBwcml2aWxlZ2VzLCBpdCBpcyBhbHNvIHBvc3NpYmxlIHRvIGludGVyYWN0aXZlbHkgY2hhbmdlICIKKyJwYWNrYWdlcyBzZWxlY3Rpb24gc3RhdGUuIEI8ZHNlbGVjdD4gdHJhY2tzIHRoZSBpbXBsaWNhdGlvbnMgb2YgdGhlc2UgIgorImNoYW5nZXMgdG8gb3RoZXIgZGVwZW5kaW5nIG9yIGNvbmZsaWN0aW5nIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTY1Cittc2dpZCAiIgorIldoZW4gYSBjb25mbGljdCBvciBmYWlsZWQgZGVwZW5kcyBpcyBkZXRlY3RlZCwgYSBkZXBlbmRlbmN5IHJlc29sdXRpb24gIgorInN1YnNjcmVlbiBpcyBwcm9tcHRlZCB0byB0aGUgdXNlci4gSW4gdGhpcyBzY3JlZW4sIGEgbGlzdCBvZiBjb25mbGljdGluZyBvciAiCisiZGVwZW5kaW5nIHBhY2thZ2VzIGlzIHNob3duLCBhbmQgZm9yIGVhY2ggcGFja2FnZSBsaXN0ZWQsIHRoZSByZWFzb24gZm9yIGl0cyAiCisibGlzdGluZyBpcyBzaG93bi4gVGhlIHVzZXIgbWF5IGFwcGx5IHRoZSBzdWdnZXN0aW9ucyBwcm9wb3NlZCBieSBCPGRzZWxlY3Q+LCAiCisib3ZlcnJpZGUgdGhlbSwgb3IgYmFjayBvdXQgYWxsIHRoZSBjaGFuZ2VzLCBpbmNsdWRpbmcgdGhlIG9uZXMgdGhhdCBjcmVhdGVkICIKKyJ0aGUgdW5yZXNvbHZlZCBkZXBlbmRzIG9yIGNvbmZsaWN0cy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjE2OAorbXNnaWQgIiIKKyJUaGUgdXNlIG9mIHRoZSBpbnRlcmFjdGl2ZSBwYWNrYWdlIHNlbGVjdGlvbnMgbWFuYWdlbWVudCBzY3JlZW4gaXMgZXhwbGFpbmVkICIKKyJpbiBtb3JlIGRldGFpbCBiZWxvdy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRzZWxlY3QuMToxNjkKKyMsIG5vLXdyYXAKK21zZ2lkICJpbnN0YWxsIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxNzEKK21zZ2lkICJJbnN0YWxscyBzZWxlY3RlZCBwYWNrYWdlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjE3NworbXNnaWQgIiIKKyJUaGUgY29uZmlndXJlZCBhY2Nlc3MgbWV0aG9kIHdpbGwgZmV0Y2ggaW5zdGFsbGFibGUgb3IgdXBncmFkYWJsZSBwYWNrYWdlcyAiCisiZnJvbSB0aGUgcmVsZXZhbnQgcmVwb3NpdG9yaWVzIGFuZCBpbnN0YWxsIHRoZXNlIHVzaW5nIEI8ZHBrZz4uICBEZXBlbmRpbmcgIgorIm9uIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgYWNjZXNzIG1ldGhvZCwgYWxsIHBhY2thZ2VzIGNhbiBiZSBwcmVmZXRjaGVkICIKKyJiZWZvcmUgaW5zdGFsbGF0aW9uLCBvciBmZXRjaGVkIHdoZW4gbmVlZGVkLiAgU29tZSBhY2Nlc3MgbWV0aG9kcyBtYXkgYWxzbyAiCisicmVtb3ZlIHBhY2thZ2VzIHRoYXQgd2VyZSBtYXJrZWQgZm9yIHJlbW92YWwuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxODUKK21zZ2lkICIiCisiSWYgYW4gZXJyb3Igb2NjdXJyZWQgZHVyaW5nIGluc3RhbGwsIGl0IGlzIHVzdWFsbHkgYWR2aXNhYmxlIHRvIHJ1biBpbnN0YWxsICIKKyJhZ2Fpbi4gSW4gbW9zdCBjYXNlcywgdGhlIHByb2JsZW1zIHdpbGwgZGlzYXBwZWFyIG9yIGJlIHNvbHZlZC4gIElmIHByb2JsZW1zICIKKyJwZXJzaXN0IG9yIHRoZSBpbnN0YWxsYXRpb24gcGVyZm9ybWVkIHdhcyBpbmNvcnJlY3QsIHBsZWFzZSBpbnZlc3RpZ2F0ZSBpbnRvICIKKyJ0aGUgY2F1c2VzIGFuZCBjaXJjdW1zdGFuY2VzLCBhbmQgZmlsZSBhIGJ1ZyBpbiB0aGUgRGViaWFuIGJ1ZyB0cmFja2luZyAiCisic3lzdGVtLiBJbnN0cnVjdGlvbnMgb24gaG93IHRvIGRvIHRoaXMgY2FuIGJlIGZvdW5kIGF0IGh0dHA6Ly9idWdzLmRlYmlhbi4iCisib3JnLyBvciBieSByZWFkaW5nIHRoZSBkb2N1bWVudGF0aW9uIGZvciBCPGJ1Zz4oMSkgb3IgQjxyZXBvcnRidWc+KDEpLCBpZiAiCisidGhlc2UgYXJlIGluc3RhbGxlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjE5MgorbXNnaWQgIiIKKyJEZXRhaWxzIG9mIHRoZSBpbnN0YWxsIGFjdGlvbiBkZXBlbmQgb24gdGhlIGFjY2VzcyBtZXRob2QncyBpbXBsZW1lbnRhdGlvbi4gICIKKyJUaGUgdXNlcidzIGF0dGVudGlvbiBhbmQgaW5wdXQgbWF5IGJlIHJlcXVpcmVkIGR1cmluZyBpbnN0YWxsYXRpb24sICIKKyJjb25maWd1cmF0aW9uIG9yIHJlbW92YWwgb2YgcGFja2FnZXMuIFRoaXMgZGVwZW5kcyBvbiB0aGUgbWFpbnRhaW5lciBzY3JpcHRzICIKKyJpbiB0aGUgcGFja2FnZS4gU29tZSBwYWNrYWdlcyBtYWtlIHVzZSBvZiB0aGUgQjxkZWJjb25mPigxKSAgbGlicmFyeSwgIgorImFsbG93aW5nIGZvciBtb3JlIGZsZXhpYmxlIG9yIGV2ZW4gYXV0b21hdGVkIGluc3RhbGxhdGlvbiBzZXR1cHMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkc2VsZWN0LjE6MTkzCisjLCBuby13cmFwCittc2dpZCAiY29uZmlnIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxOTUKK21zZ2lkICJDb25maWd1cmVzIGFueSBwcmV2aW91c2x5IGluc3RhbGxlZCwgYnV0IG5vdCBmdWxseSBjb25maWd1cmVkIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHNlbGVjdC4xOjE5NgorIywgbm8td3JhcAorbXNnaWQgInJlbW92ZSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTk4Cittc2dpZCAiUmVtb3ZlcyBvciBwdXJnZXMgaW5zdGFsbGVkIHBhY2thZ2VzLCB0aGF0IGFyZSBtYXJrZWQgZm9yIHJlbW92YWwuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkc2VsZWN0LjE6MTk5CisjLCBuby13cmFwCittc2dpZCAicXVpdCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MjAxCisjLCBmdXp6eQorbXNnaWQgIlF1aXQgQjxkc2VsZWN0PiIKK21zZ3N0ciAiQjxkc2VsZWN0PigxKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToyMDMKK21zZ2lkICJFeGl0cyB0aGUgcHJvZ3JhbSB3aXRoIHplcm8gKHN1Y2Nlc3NmdWwpIGVycm9yY29kZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRzZWxlY3QuMToyMDUKKyMsIG5vLXdyYXAKK21zZ2lkICJQYWNrYWdlIHNlbGVjdGlvbnMgbWFuYWdlbWVudCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHNlbGVjdC4xOjIwNworIywgbm8td3JhcAorbXNnaWQgIkludHJvZHVjdGlvbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MjIzCittc2dpZCAiIgorIkI8ZHNlbGVjdD4gZGlyZWN0bHkgZXhwb3NlcyB0aGUgYWRtaW5pc3RyYXRvciB0byBzb21lIG9mIHRoZSBjb21wbGV4aXRpZXMgIgorImludm9sdmVkIHdpdGggbWFuYWdpbmcgbGFyZ2Ugc2V0cyBvZiBwYWNrYWdlcyB3aXRoIG1hbnkgaW50ZXJkZXBlbmRlbmNpZXMuICIKKyJGb3IgYSB1c2VyIHdobyBpcyB1bmZhbWlsaWFyIHdpdGggdGhlIGNvbmNlcHRzIGFuZCB0aGUgd2F5cyBvZiB0aGUgZGViaWFuICIKKyJwYWNrYWdlIG1hbmFnZW1lbnQgc3lzdGVtLCBpdCBjYW4gYmUgcXVpdGUgb3ZlcndoZWxtaW5nLiBBbHRob3VnaCBCPGRzZWxlY3Q+ICIKKyJpcyBhaW1lZCBhdCBlYXNpbmcgcGFja2FnZSBtYW5hZ2VtZW50IGFuZCBhZG1pbmlzdHJhdGlvbiwgaXQgaXMgb25seSAiCisiaW5zdHJ1bWVudGFsIGluIGRvaW5nIHNvIGFuZCBjYW4gbm90IGJlIGFzc3VtZWQgdG8gYmUgYSBzdWZmaWNpZW50ICIKKyJzdWJzdGl0dXRlIGZvciBhZG1pbmlzdHJhdG9yIHNraWxsIGFuZCB1bmRlcnN0YW5kaW5nLiBUaGUgdXNlciBpcyByZXF1aXJlZCAiCisidG8gYmUgZmFtaWxpYXIgd2l0aCB0aGUgY29uY2VwdHMgdW5kZXJseWluZyB0aGUgRGViaWFuIHBhY2thZ2luZyBzeXN0ZW0uICBJbiAiCisiY2FzZSBvZiBkb3VidCwgY29uc3VsdCB0aGUgQjxkcGtnPigxKSBtYW5wYWdlIGFuZCB0aGUgRGViaWFuIFBvbGljeSBtYW51YWwsICIKKyJjb250YWluZWQgaW4gdGhlIEI8ZGViaWFuLXBvbGljeT4gcGFja2FnZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjIyOQorbXNnaWQgIiIKKyJVbmxlc3MgQjxkc2VsZWN0PiBpcyBydW4gaW4gZXhwZXJ0IG9yIGltbWVkaWF0ZSBtb2RlLCBhIGhlbHAgc2NyZWVuIGlzIGZpcnN0ICIKKyJkaXNwbGF5ZWQgd2hlbiBjaG9vc2luZyB0aGlzIGFjdGlvbiBmcm9tIHRoZSBtZW51LiBUaGUgdXNlciBpcyBJPHN0cm9uZ2x5PiAiCisiYWR2aXNlZCB0byBzdHVkeSBhbGwgb2YgdGhlIGluZm9ybWF0aW9uIHByZXNlbnRlZCBpbiB0aGUgb25saW5lIGhlbHAgIgorInNjcmVlbnMsIHdoZW4gb25lIHBvcHMgdXAuICBUaGUgb25saW5lIGhlbHAgc2NyZWVucyBjYW4gYXQgYW55IHRpbWUgYmUgIgorImludm9rZWQgd2l0aCB0aGUgQjwnPyc+IGtleS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRzZWxlY3QuMToyMzAKKyMsIG5vLXdyYXAKK21zZ2lkICJTY3JlZW4gbGF5b3V0IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToyMzgKK21zZ2lkICIiCisiVGhlIHNlbGVjdCBzY3JlZW4gaXMgYnkgZGVmYXVsdCBzcGxpdCBpbiBhIHRvcCBhbmQgYSBib3R0b20gaGFsZi4gIFRoZSB0b3AgIgorImhhbGYgc2hvd3MgYSBsaXN0IG9mIHBhY2thZ2VzLiBBIGN1cnNvciBiYXIgY2FuIHNlbGVjdCBhbiBpbmRpdmlkdWFsICIKKyJwYWNrYWdlLCBvciBhIGdyb3VwIG9mIHBhY2thZ2VzLCBpZiBhcHBsaWNhYmxlLCBieSBzZWxlY3RpbmcgdGhlIGdyb3VwICIKKyJoZWFkZXIuIFRoZSBib3R0b20gaGFsZiBvZiB0aGUgc2NyZWVuIHNob3dzIHNvbWUgZGV0YWlscyBhYm91dCB0aGUgcGFja2FnZSAiCisiY3VycmVudGx5IHNlbGVjdGVkIGluIHRoZSB0b3AgaGFsZiBvZiB0aGUgc2NyZWVuLiAgVGhlIHR5cGUgb2YgZGV0YWlsIHRoYXQgIgorImlzIGRpc3BsYXllZCBjYW4gYmUgdmFyaWVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MjQxCittc2dpZCAiIgorIlByZXNzaW5nIHRoZSBCPCdJJz4ga2V5IHRvZ2dsZXMgYSBmdWxsLXNjcmVlbiBkaXNwbGF5IG9mIHRoZSBwYWNrYWdlcyBsaXN0LCAiCisiYW4gZW5sYXJnZWQgdmlldyBvZiB0aGUgcGFja2FnZSBkZXRhaWxzLCBvciB0aGUgZXF1YWxseSBzcGxpdCBzY3JlZW4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkc2VsZWN0LjE6MjQyCisjLCBuby13cmFwCittc2dpZCAiUGFja2FnZSBkZXRhaWxzIHZpZXciCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjI1MQorIywgbm8td3JhcAorbXNnaWQgIiIKKyJUaGUgcGFja2FnZSBkZXRhaWxzIHZpZXcgYnkgZGVmYXVsdCBzaG93cyB0aGUgZXh0ZW5kZWQgcGFja2FnZSBkZXNjcmlwdGlvblxuIgorImZvciB0aGUgcGFja2FnZSB0aGF0IGlzIGN1cnJlbnRseSBzZWxlY3RlZCBpbiB0aGUgcGFja2FnZXMgc3RhdHVzIGxpc3QuXG4iCisiVGhlIHR5cGUgb2YgZGV0YWlsIGNhbiBiZSB0b2dnbGVkIGJ5IHByZXNzaW5nIHRoZSBCPCdpJz4ga2V5LiBUaGlzXG4iCisiYWx0ZXJuYXRlcyBiZXR3ZWVuOlxuIgorIiAtIHRoZSBleHRlbmRlZCBkZXNjcmlwdGlvblxuIgorIiAtIHRoZSBjb250cm9sIGluZm9ybWF0aW9uIGZvciB0aGUgaW5zdGFsbGVkIHZlcnNpb25cbiIKKyIgLSB0aGUgY29udHJvbCBpbmZvcm1hdGlvbiBmb3IgdGhlIGF2YWlsYWJsZSB2ZXJzaW9uXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjI1NQorbXNnaWQgIiIKKyJJbiBhIGRlcGVuZGVuY3kgcmVzb2x1dGlvbiBzY3JlZW4sIHRoZXJlIGlzIGFsc28gdGhlIHBvc3NpYmlsaXR5IG9mIHZpZXdpbmcgIgorInRoZSBzcGVjaWZpYyB1bnJlc29sdmVkIGRlcGVuZHMgb3IgY29uZmxpY3RzIHJlbGF0ZWQgdG8gdGhlIHBhY2thZ2UgYW5kICIKKyJjYXVzaW5nIGl0IHRvIGJlIGxpc3RlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRzZWxlY3QuMToyNTYKKyMsIG5vLXdyYXAKK21zZ2lkICJQYWNrYWdlcyBzdGF0dXMgbGlzdCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MjYxCittc2dpZCAiIgorIlRoZSBtYWluIHNlbGVjdCBzY3JlZW4gZGlzcGxheXMgYSBsaXN0IG9mIGFsbCBwYWNrYWdlcyBrbm93biB0byB0aGUgZGViaWFuICIKKyJwYWNrYWdlIG1hbmFnZW1lbnQgc3lzdGVtLiBUaGlzIGluY2x1ZGVzIHBhY2thZ2VzIGluc3RhbGxlZCBvbiB0aGUgc3lzdGVtICIKKyJhbmQgcGFja2FnZXMga25vd24gZnJvbSB0aGUgYXZhaWxhYmxlIHBhY2thZ2VzIGRhdGFiYXNlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MjY5Cittc2dpZCAiIgorIkZvciBldmVyeSBwYWNrYWdlLCB0aGUgbGlzdCBzaG93cyB0aGUgcGFja2FnZSdzIHN0YXR1cywgcHJpb3JpdHksIHNlY3Rpb24sICIKKyJpbnN0YWxsZWQgYW5kIGF2YWlsYWJsZSB2ZXJzaW9ucywgdGhlIHBhY2thZ2UgbmFtZSBhbmQgaXRzIHNob3J0ICIKKyJkZXNjcmlwdGlvbiwgYWxsIGluIG9uZSBsaW5lLiBCeSBwcmVzc2luZyB0aGUgQjwnVic+IGtleSwgdGhlIGRpc3BsYXkgb2YgdGhlICIKKyJpbnN0YWxsZWQgYW5kIGF2YWlsYWJsZSB2ZXJzaW9uIGNhbiBiZSB0b2dnbGVkIGJldHdlZW4gb24gYW4gb2ZmLiBCeSAiCisicHJlc3NpbmcgdGhlIEI8J3YnPiBrZXksIHRoZSBwYWNrYWdlIHN0YXR1cyBkaXNwbGF5IGlzIHRvZ2dsZWQgYmV0d2VlbiAiCisidmVyYm9zZSBhbmQgc2hvcnRoYW5kLiAgU2hvcnRoYW5kIGRpc3BsYXkgaXMgdGhlIGRlZmF1bHQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToyNzUKK21zZ2lkICIiCisiVGhlIHNob3J0aGFuZCBzdGF0dXMgaW5kaWNhdGlvbiBjb25zaXN0cyBvZiBmb3VyIHBhcnRzOiBhbiBlcnJvciBmbGFnLCB3aGljaCAiCisic2hvdWxkIG5vcm1hbGx5IGJlIGNsZWFyLCB0aGUgY3VycmVudCBzdGF0dXMsIHRoZSBsYXN0IHNlbGVjdGlvbiBzdGF0ZSBhbmQgIgorInRoZSBjdXJyZW50IHNlbGVjdGlvbiBzdGF0ZS4gIFRoZSBmaXJzdCB0d28gcmVsYXRlIHRvIHRoZSBhY3R1YWwgc3RhdGUgb2YgIgorInRoZSBwYWNrYWdlLCB0aGUgc2Vjb25kIHBhaXIgYXJlIGFib3V0IHRoZSBzZWxlY3Rpb25zIHNldCBieSB0aGUgdXNlci4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjI5MworIywgbm8td3JhcAorbXNnaWQgIiIKKyJUaGVzZSBhcmUgdGhlIG1lYW5pbmdzIG9mIHRoZSBzaG9ydGhhbmQgcGFja2FnZSBzdGF0dXMgaW5kaWNhdG9yIGNvZGVzOlxuIgorIiBFcnJvciBmbGFnOlxuIgorIiAgSTxlbXB0eT4gICBubyBlcnJvclxuIgorIiAgQjxSPiAgICAgICBzZXJpb3VzIGVycm9yLCBuZWVkcyByZWluc3RhbGxhdGlvbjtcbiIKKyIgSW5zdGFsbGVkIHN0YXRlOlxuIgorIiAgSTxlbXB0eT4gICBub3QgaW5zdGFsbGVkO1xuIgorIiAgQjwqPiAgICAgICBmdWxseSBpbnN0YWxsZWQgYW5kIGNvbmZpZ3VyZWQ7XG4iCisiICBCPC0+ICAgICAgIG5vdCBpbnN0YWxsZWQgYnV0IHNvbWUgY29uZmlnIGZpbGVzIG1heSByZW1haW47XG4iCisiICBCPFU+ICAgICAgIHVucGFja2VkIGJ1dCBub3QgeWV0IGNvbmZpZ3VyZWQ7XG4iCisiICBCPEM+ICAgICAgIGhhbGYtY29uZmlndXJlZCAoYW4gZXJyb3IgaGFwcGVuZWQpO1xuIgorIiAgQjxJPiAgICAgICBoYWxmLWluc3RhbGxlZCAoYW4gZXJyb3IgaGFwcGVuZWQpLlxuIgorIiBDdXJyZW50IGFuZCByZXF1ZXN0ZWQgc2VsZWN0aW9uczpcbiIKKyIgIEI8Kj4gICAgICAgbWFya2VkIGZvciBpbnN0YWxsYXRpb24gb3IgdXBncmFkZTtcbiIKKyIgIEI8LT4gICAgICAgbWFya2VkIGZvciByZW1vdmFsLCBjb25maWd1cmF0aW9uIGZpbGVzIHJlbWFpbjtcbiIKKyIgIEI8PT4gICAgICAgb24gaG9sZDogcGFja2FnZSB3aWxsIG5vdCBiZSBwcm9jZXNzZWQgYXQgYWxsO1xuIgorIiAgQjxfPiAgICAgICBtYXJrZWQgZm9yIHB1cmdlLCBhbHNvIHJlbW92ZSBjb25maWd1cmF0aW9uO1xuIgorIiAgQjxuPiAgICAgICBwYWNrYWdlIGlzIG5ldyBhbmQgaGFzIHlldCB0byBiZSBtYXJrZWQuXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRzZWxlY3QuMToyOTQKKyMsIG5vLXdyYXAKK21zZ2lkICJDdXJzb3IgYW5kIHNjcmVlbiBtb3ZlbWVudCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6Mjk5Cittc2dpZCAiIgorIlRoZSBwYWNrYWdlIHNlbGVjdGlvbiBsaXN0IGFuZCB0aGUgZGVwZW5kZW5jeSBjb25mbGljdCByZXNvbHV0aW9uIHNjcmVlbnMgIgorImNhbiBiZSBuYXZpZ2F0ZWQgdXNpbmcgbW90aW9uIGNvbW1hbmRzIG1hcHBlZCB0byB0aGUgZm9sbG93aW5nIGtleXM6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTozMTYKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiICBCPHAsIFVwLCBrPiAgICAgICAgICAgbW92ZSBjdXJzb3IgYmFyIHVwXG4iCisiICBCPG4sIERvd24sIGo+ICAgICAgICAgbW92ZSBjdXJzb3IgYmFyIGRvd25cbiIKKyIgIEI8UCwgUGd1cCwgQmFja3NwYWNlPiBzY3JvbGwgbGlzdCAxIHBhZ2UgdXBcbiIKKyIgIEI8TiwgUGdkbiwgU3BhY2U+ICAgICBzY3JvbGwgbGlzdCAxIHBhZ2UgZG93blxuIgorIiAgQjxecD4gICAgICAgICAgICAgICAgIHNjcm9sbCBsaXN0IDEgbGluZSB1cFxuIgorIiAgQjxebj4gICAgICAgICAgICAgICAgIHNjcm9sbCBsaXN0IDEgbGluZSBkb3duXG4iCisiICBCPHQsIEhvbWU+ICAgICAgICAgICAganVtcCB0byB0b3Agb2YgbGlzdFxuIgorIiAgQjxlLCBFbmQ+ICAgICAgICAgICAgIGp1bXAgdG8gZW5kIG9mIGxpc3RcbiIKKyIgIEI8dT4gICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyAxIHBhZ2UgdXBcbiIKKyIgIEI8ZD4gICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyAxIHBhZ2UgZG93blxuIgorIiAgQjxedT4gICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIDEgbGluZSB1cFxuIgorIiAgQjxeZD4gICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIDEgbGluZSBkb3duXG4iCisiICBCPEIsIExlZnQtYXJyb3c+ICAgICAgcGFuIGRpc3BsYXkgMS8zIHNjcmVlbiBsZWZ0XG4iCisiICBCPEYsIFJpZ2h0LWFycm93PiAgICAgcGFuIGRpc3BsYXkgMS8zIHNjcmVlbiByaWdodFxuIgorIiAgQjxeYj4gICAgICAgICAgICAgICAgIHBhbiBkaXNwbGF5IDEgY2hhcmFjdGVyIGxlZnRcbiIKKyIgIEI8XmY+ICAgICAgICAgICAgICAgICBwYW4gZGlzcGxheSAxIGNoYXJhY3RlciByaWdodFxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkc2VsZWN0LjE6MzE3CisjLCBuby13cmFwCittc2dpZCAiU2VhcmNoaW5nIGFuZCBzb3J0aW5nIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTozMzEKK21zZ2lkICIiCisiVGhlIGxpc3Qgb2YgcGFja2FnZXMgY2FuIGJlIHNlYXJjaGVkIGJ5IHBhY2thZ2UgbmFtZS4gVGhpcyBpcyBkb25lIGJ5ICIKKyJwcmVzc2luZyBCPCcvJz4sIGFuZCB0eXBpbmcgYSBzaW1wbGUgc2VhcmNoIHN0cmluZy4gVGhlIHN0cmluZyBpcyAiCisiaW50ZXJwcmV0ZWQgYXMgYSBCPHJlZ2V4Pig3KSAgcmVndWxhciBleHByZXNzaW9uLiAgSWYgeW91IGFkZCBCPCcvZCc+IHRvIHRoZSAiCisic2VhcmNoIGV4cHJlc3Npb24sIGRzZWxlY3Qgd2lsbCBhbHNvIHNlYXJjaCBpbiBkZXNjcmlwdGlvbnMuIElmIHlvdSBhZGQgQjwnLyIKKyJpJz4gdGhlIHNlYXJjaCB3aWxsIGJlIGNhc2UgaW5zZW5zaXRpdmUuICBZb3UgbWF5IGNvbWJpbmUgdGhlc2UgdHdvIHN1ZmZpeGVzICIKKyJsaWtlIHRoaXM6IEI8Jy9pZCc+LiAgUmVwZWF0ZWQgc2VhcmNoaW5nIGlzIGFjY29tcGxpc2hlZCBieSByZXBlYXRlZGx5ICIKKyJwcmVzc2luZyB0aGUgQjwnbic+IG9yIEI8J1xcZSc+IGtleXMsIHVudGlsIHRoZSB3YW50ZWQgcGFja2FnZSBpcyBmb3VuZC4gIElmICIKKyJ0aGUgc2VhcmNoIHJlYWNoZXMgdGhlIGJvdHRvbSBvZiB0aGUgbGlzdCwgaXQgd3JhcHMgdG8gdGhlIHRvcCBhbmQgY29udGludWVzICIKKyJzZWFyY2hpbmcgZnJvbSB0aGVyZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjMzOAorIywgbm8td3JhcAorbXNnaWQgIiIKKyJUaGUgbGlzdCBzb3J0IG9yZGVyIGNhbiBiZSB2YXJpZWQgYnkgcHJlc3NpbmdcbiIKKyJ0aGUgQjwnbyc+IGFuZCBCPCdPJz4ga2V5cyByZXBlYXRlZGx5LlxuIgorIlRoZSBmb2xsb3dpbmcgbmluZSBzb3J0IG9yZGVyaW5ncyBjYW4gYmUgc2VsZWN0ZWQ6XG4iCisiIGFscGhhYmV0ICAgICAgICAgIGF2YWlsYWJsZSAgICAgICAgICAgc3RhdHVzXG4iCisiIHByaW9yaXR5K3NlY3Rpb24gIGF2YWlsYWJsZStwcmlvcml0eSAgc3RhdHVzK3ByaW9yaXR5XG4iCisiIHNlY3Rpb24rcHJpb3JpdHkgIGF2YWlsYWJsZStzZWN0aW9uICAgc3RhdHVzK3NlY3Rpb25cbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MzQxCittc2dpZCAiIgorIldoZXJlIG5vdCBsaXN0ZWQgYWJvdmUgZXhwbGljaXRseSwgYWxwaGFiZXRpYyBvcmRlciBpcyB1c2VkIGFzIHRoZSBmaW5hbCAiCisic3Vib3JkZXJpbmcgc29ydCBrZXkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkc2VsZWN0LjE6MzQyCisjLCBuby13cmFwCittc2dpZCAiQWx0ZXJpbmcgc2VsZWN0aW9ucyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MzUxCisjLCBuby13cmFwCittc2dpZCAiIgorIlRoZSByZXF1ZXN0ZWQgc2VsZWN0aW9uIHN0YXRlIG9mIGluZGl2aWR1YWwgcGFja2FnZXMgbWF5IGJlXG4iCisiYWx0ZXJlZCB3aXRoIHRoZSBmb2xsb3dpbmcgY29tbWFuZHM6XG4iCisiICBCPCssIEluc2VydD4gICAgaW5zdGFsbCBvciB1cGdyYWRlXG4iCisiICBCPD0sIEg+ICAgICAgICAgaG9sZCBpbiBwcmVzZW50IHN0YXRlIGFuZCB2ZXJzaW9uXG4iCisiICBCPDosIEc+ICAgICAgICAgdW5ob2xkOiB1cGdyYWRlIG9yIGxlYXZlIHVuaW5zdGFsbGVkXG4iCisiICBCPC0sIERlbGV0ZT4gICAgcmVtb3ZlLCBidXQgbGVhdmUgY29uZmlndXJhdGlvblxuIgorIiAgQjxfPiAgICAgICAgICAgIHJlbW92ZSAmIHB1cmdlIGNvbmZpZ3VyYXRpb25cbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MzU1Cittc2dpZCAiIgorIldoZW4gdGhlIGNoYW5nZSByZXF1ZXN0IHJlc3VsdHMgaW4gb25lIG9yIG1vcmUgdW5zYXRpc2ZpZWQgZGVwZW5kcyBvciAiCisiY29uZmxpY3RzLCBCPGRzZWxlY3Q+IHByb21wdHMgdGhlIHVzZXIgd2l0aCBhIGRlcGVuZGVuY3kgcmVzb2x1dGlvbiBzY3JlZW4uICIKKyJUaGlzIHdpbGwgYmUgZnVydGhlciBleHBsYWluZWQgYmVsb3cuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTozNjAKK21zZ2lkICIiCisiSXQgaXMgYWxzbyBwb3NzaWJsZSB0byBhcHBseSB0aGVzZSBjb21tYW5kcyB0byBncm91cHMgb2YgcGFja2FnZSBzZWxlY3Rpb25zLCAiCisiYnkgcG9pbnRpbmcgdGhlIGN1cnNvciBiYXIgb250byBhIGdyb3VwIGhlYWRlci4gVGhlIGV4YWN0IGdyb3VwaW5nIG9mICIKKyJwYWNrYWdlcyBpcyBkZXBlbmRlbnQgb24gdGhlIGN1cnJlbnQgbGlzdCBvcmRlcmluZyBzZXR0aW5ncy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjM2NgorbXNnaWQgIiIKKyJQcm9wZXIgY2FyZSBzaG91bGQgYmUgdGFrZW4gd2hlbiBhbHRlcmluZyBsYXJnZSBncm91cHMgb2Ygc2VsZWN0aW9ucywgIgorImJlY2F1c2UgdGhpcyBjYW4gaW5zdGFudGFuZW91c2x5IGNyZWF0ZSBsYXJnZSBudW1iZXJzIG9mIHVucmVzb2x2ZWQgZGVwZW5kcyAiCisib3IgY29uZmxpY3RzLCBhbGwgb2Ygd2hpY2ggd2lsbCBiZSBsaXN0ZWQgaW4gb25lIGRlcGVuZGVuY3kgcmVzb2x1dGlvbiAiCisic2NyZWVuLCBtYWtpbmcgdGhlbSB2ZXJ5IGhhcmQgdG8gaGFuZGxlLiBJbiBwcmFjdGljZSwgb25seSBob2xkIGFuZCB1bmhvbGQgIgorIm9wZXJhdGlvbnMgYXJlIHVzZWZ1bCB3aGVuIGFwcGxpZWQgdG8gZ3JvdXBzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHNlbGVjdC4xOjM2NworIywgbm8td3JhcAorbXNnaWQgIlJlc29sdmluZyBkZXBlbmRzIGFuZCBjb25mbGljdHMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjM3MgorbXNnaWQgIiIKKyJXaGVuIHRoZSBjaGFuZ2UgcmVxdWVzdCByZXN1bHRzIGluIG9uZSBvciBtb3JlIHVuc2F0aXNmaWVkIGRlcGVuZHMgb3IgIgorImNvbmZsaWN0cywgQjxkc2VsZWN0PiBwcm9tcHRzIHRoZSB1c2VyIHdpdGggYSBkZXBlbmRlbmN5IHJlc29sdXRpb24gc2NyZWVuLiAiCisiRmlyc3QgaG93ZXZlciwgYW4gaW5mb3JtYXRpdmUgaGVscCBzY3JlZW4gaXMgZGlzcGxheWVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6Mzc5Cittc2dpZCAiIgorIlRoZSB0b3AgaGFsZiBvZiB0aGlzIHNjcmVlbiBsaXN0cyBhbGwgdGhlIHBhY2thZ2VzIHRoYXQgd2lsbCBoYXZlIHVucmVzb2x2ZWQgIgorImRlcGVuZHMgb3IgY29uZmxpY3RzLCBhcyBhIHJlc3VsdCBvZiB0aGUgcmVxdWVzdGVkIGNoYW5nZSwgYW5kIGFsbCB0aGUgIgorInBhY2thZ2VzIHdob3NlIGluc3RhbGxhdGlvbiBjYW4gcmVzb2x2ZSBhbnkgb2YgdGhlc2UgZGVwZW5kcyBvciB3aG9zZSAiCisicmVtb3ZhbCBjYW4gcmVzb2x2ZSBhbnkgb2YgdGhlIGNvbmZsaWN0cy4gIFRoZSBib3R0b20gaGFsZiBkZWZhdWx0cyB0byBzaG93ICIKKyJ0aGUgZGVwZW5kcyBvciBjb25mbGljdHMgdGhhdCBjYXVzZSB0aGUgY3VycmVudGx5IHNlbGVjdGVkIHBhY2thZ2UgdG8gYmUgIgorImxpc3RlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjM4NQorbXNnaWQgIiIKKyJXaGVuIHRoZSBzdWJsaXN0IG9mIHBhY2thZ2VzIGlzIGRpc3BsYXllZCBpbml0aWFsbHksIEI8ZHNlbGVjdD4gbWF5IGhhdmUgIgorImFscmVhZHkgc2V0IHRoZSByZXF1ZXN0ZWQgc2VsZWN0aW9uIHN0YXR1cyBvZiBzb21lIG9mIHRoZSBsaXN0ZWQgcGFja2FnZXMsICIKKyJpbiBvcmRlciB0byByZXNvbHZlIHRoZSBkZXBlbmRzIG9yIGNvbmZsaWN0cyB0aGF0IGNhdXNlZCB0aGUgZGVwZW5kZW5jeSAiCisicmVzb2x1dGlvbiBzY3JlZW4gdG8gYmUgZGlzcGxheWVkLiBVc3VhbGx5LCBpdCBpcyBiZXN0IHRvIGZvbGxvdyB1cCB0aGUgIgorInN1Z2dlc3Rpb25zIG1hZGUgYnkgQjxkc2VsZWN0Pi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjM5MworbXNnaWQgIiIKKyJUaGUgbGlzdGVkIHBhY2thZ2VzJyBzZWxlY3Rpb24gc3RhdGUgbWF5IGJlIHJldmVydGVkIHRvIHRoZSBvcmlnaW5hbCAiCisic2V0dGluZ3MsIGFzIHRoZXkgd2VyZSBiZWZvcmUgdGhlIHVucmVzb2x2ZWQgZGVwZW5kcyBvciBjb25mbGljdHMgd2VyZSAiCisiY3JlYXRlZCwgYnkgcHJlc3NpbmcgdGhlIEI8J1InPiBrZXkuIEJ5IHByZXNzaW5nIHRoZSBCPCdEJz4ga2V5LCB0aGUgIgorImF1dG9tYXRpYyBzdWdnZXN0aW9ucyBhcmUgcmVzZXQsIGJ1dCB0aGUgY2hhbmdlIHRoYXQgY2F1c2VkIHRoZSBkZXBlbmRlbmN5ICIKKyJyZXNvbHV0aW9uIHNjcmVlbiB0byBiZSBwcm9tcHRlZCBpcyBrZXB0IGFzIHJlcXVlc3RlZC4gIEZpbmFsbHksIGJ5IHByZXNzaW5nICIKKyJCPCdVJz4sIHRoZSBzZWxlY3Rpb25zIGFyZSBhZ2FpbiBzZXQgdG8gdGhlIGF1dG9tYXRpYyBzdWdnZXN0aW9uIHZhbHVlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRzZWxlY3QuMTozOTQKKyMsIG5vLXdyYXAKK21zZ2lkICJFc3RhYmxpc2hpbmcgdGhlIHJlcXVlc3RlZCBzZWxlY3Rpb25zIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0MDEKK21zZ2lkICIiCisiQnkgcHJlc3NpbmcgQjxlbnRlcj4sIHRoZSBjdXJyZW50bHkgZGlzcGxheWVkIHNldCBvZiBzZWxlY3Rpb25zIGlzIGFjY2VwdGVkLiAiCisiSWYgQjxkc2VsZWN0PiBkZXRlY3RzIG5vIHVucmVzb2x2ZWQgZGVwZW5kcyBhcyBhIHJlc3VsdCBvZiB0aGUgcmVxdWVzdGVkICIKKyJzZWxlY3Rpb25zLCB0aGUgbmV3IHNlbGVjdGlvbnMgd2lsbCBiZSBzZXQuICBIb3dldmVyLCBpZiB0aGVyZSBhcmUgYW55ICIKKyJ1bnJlc29sdmVkIGRlcGVuZHMsIEI8ZHNlbGVjdD4gd2lsbCBhZ2FpbiBwcm9tcHQgdGhlIHVzZXIgd2l0aCBhIGRlcGVuZGVuY3kgIgorInJlc29sdXRpb24gc2NyZWVuLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NDA3Cittc2dpZCAiIgorIlRvIGFsdGVyIGEgc2V0IG9mIHNlbGVjdGlvbnMgdGhhdCBjcmVhdGVzIHVucmVzb2x2ZWQgZGVwZW5kcyBvciBjb25mbGljdHMgIgorImFuZCBmb3JjaW5nIEI8ZHNlbGVjdD4gdG8gYWNjZXB0IGl0LCBwcmVzcyB0aGUgQjwnUSc+IGtleS4gVGhpcyBzZXRzIHRoZSAiCisic2VsZWN0aW9ucyBhcyBzcGVjaWZpZWQgYnkgdGhlIHVzZXIsIHVuY29uZGl0aW9uYWxseS4gR2VuZXJhbGx5LCBkb24ndCBkbyAiCisidGhpcyB1bmxlc3MgeW91J3ZlIHJlYWQgdGhlIGZpbmUgcHJpbnQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0MTQKK21zZ2lkICIiCisiVGhlIG9wcG9zaXRlIGVmZmVjdCwgdG8gYmFjayBvdXQgYW55IHNlbGVjdGlvbnMgY2hhbmdlIHJlcXVlc3RzIGFuZCBnbyBiYWNrICIKKyJ0byB0aGUgcHJldmlvdXMgbGlzdCBvZiBzZWxlY3Rpb25zLCBpcyBhdHRhaW5lZCBieSBwcmVzc2luZyB0aGUgQjwnWCc+IG9yICIKKyJCPGVzY2FwZT4ga2V5cy4gQnkgcmVwZWF0ZWRseSBwcmVzc2luZyB0aGVzZSBrZXlzLCBhbnkgcG9zc2libHkgZGV0cmltZW50YWwgIgorImNoYW5nZXMgdG8gdGhlIHJlcXVlc3RlZCBwYWNrYWdlIHNlbGVjdGlvbnMgY2FuIGJlIGJhY2tlZCBvdXQgY29tcGxldGVseSB0byAiCisidGhlIGxhc3QgZXN0YWJsaXNoZWQgc2V0dGluZ3MuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0MjEKK21zZ2lkICIiCisiSWYgeW91IG1pc3Rha2VubHkgZXN0YWJsaXNoIHNvbWUgc2V0dGluZ3MgYW5kIHdpc2ggdG8gcmV2ZXJ0IGFsbCB0aGUgIgorInNlbGVjdGlvbnMgdG8gd2hhdCBpcyBjdXJyZW50bHkgaW5zdGFsbGVkIG9uIHRoZSBzeXN0ZW0sIHByZXNzIHRoZSBCPCdDJz4gIgorImtleS4gIFRoaXMgaXMgc29tZXdoYXQgc2ltaWxhciB0byB1c2luZyB0aGUgdW5ob2xkIGNvbW1hbmQgb24gYWxsIHBhY2thZ2VzLCAiCisiYnV0IHByb3ZpZGVzIGEgbW9yZSBvYnZpb3VzIHBhbmljIGJ1dHRvbiBpbiBjYXNlcyB3aGVyZSB0aGUgdXNlciBwcmVzc2VkICIKKyJCPGVudGVyPiBieSBhY2NpZGVudC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjQyOAorbXNnaWQgIiIKKyJJZiBzZXQsIEI8ZHNlbGVjdD4gd2lsbCB1c2UgaXQgYXMgdGhlIGRpcmVjdG9yeSBmcm9tIHdoaWNoIHRvIHJlYWQgdGhlIHVzZXIgIgorInNwZWNpZmljIGNvbmZpZ3VyYXRpb24gZmlsZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjQzNAorbXNnaWQgIiIKKyJUaGUgQjxkc2VsZWN0PiBwYWNrYWdlIHNlbGVjdGlvbiBpbnRlcmZhY2UgaXMgY29uZnVzaW5nIHRvIHNvbWUgbmV3IHVzZXJzLiAgIgorIlJlcG9ydGVkbHksIGl0IGV2ZW4gbWFrZXMgc2Vhc29uZWQga2VybmVsIGRldmVsb3BlcnMgY3J5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NDM2Cittc2dpZCAiVGhlIGRvY3VtZW50YXRpb24gaXMgbGFja2luZy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjQzOAorbXNnaWQgIlRoZXJlIGlzIG5vIGhlbHAgb3B0aW9uIGluIHRoZSBtYWluIG1lbnUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0NDAKK21zZ2lkICJUaGUgdmlzaWJsZSBsaXN0IG9mIGF2YWlsYWJsZSBwYWNrYWdlcyBjYW5ub3QgYmUgcmVkdWNlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjQ0NAorbXNnaWQgIiIKKyJUaGUgYnVpbHQgaW4gYWNjZXNzIG1ldGhvZHMgY2FuIG5vIGxvbmdlciBzdGFuZCB1cCB0byBjdXJyZW50IHF1YWxpdHkgIgorInN0YW5kYXJkcy4gVXNlIHRoZSBhY2Nlc3MgbWV0aG9kIHByb3ZpZGVkIGJ5IGFwdCwgaXQgaXMgbm90IG9ubHkgbm90IGJyb2tlbiwgIgorIml0IGlzIGFsc28gbXVjaCBtb3JlIGZsZXhpYmxlIHRoYW4gdGhlIGJ1aWx0IGluIGFjY2VzcyBtZXRob2RzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NDUwCittc2dpZCAiQjxkcGtnPigxKSwgQjxhcHQtZ2V0Pig4KSwgQjxzb3VyY2VzLmxpc3Q+KDUpLCBCPGRlYj4oNSkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0NTUKK21zZ2lkICIiCisiQjxkc2VsZWN0PiB3YXMgd3JpdHRlbiBieSBJYW4gSmFja3NvbiAoaWphY2tzb25AZ251LmFpLm1pdC5lZHUpLiBGdWxsIGxpc3QgIgorIm9mIGNvbnRyaWJ1dG9ycyBtYXkgYmUgZm91bmQgaW4gJ2RzZWxlY3QgLS12ZXJzaW9uJy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjQ1OAorbXNnaWQgIiIKKyJUaGlzIG1hbnVhbCBwYWdlIHdhcyB3cml0dGVuIGJ5IEp1aG8gVnVvcmkgRTxsdD5qYXZ1b3JpQGNjLmhlbHNpbmtpLmZpRTxndD4sICIKKyJKb3NpcCBSb2RpbiBhbmQgSm9vc3Qga29vaWouIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRICisjOiBkc2VsZWN0LmNmZy41OjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkc2VsZWN0LmNmZyIKK21zZ3N0ciAiZHNlbGVjdC5jZmciCisKKyMuIHR5cGU6IFRICisjOiBkc2VsZWN0LmNmZy41OjEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiMjAxMS0wNy0wMyIKK21zZ3N0ciAiMjAwNi0wMi0yOCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC5jZmcuNTo0Cittc2dpZCAiZHNlbGVjdC5jZmcgLSBkc2VsZWN0IGNvbmZpZ3VyYXRpb24gZmlsZSIKK21zZ3N0ciAiZHNlbGVjdC5jZmcgLSBkc2VsZWN0IGtvbmZpZ3Vyw6FjacOzcyBmw6FqbCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC5jZmcuNToxMQorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiVGhpcyBmaWxlIGNvbnRhaW5zIGRlZmF1bHQgb3B0aW9ucyBmb3IgZHNlbGVjdC4gRWFjaCBsaW5lIGNvbnRhaW5zIGEgIgorI3wgInNpbmdsZSBvcHRpb24gd2hpY2ggaXMgZXhhY3RseSB0aGUgc2FtZSBhcyBhIG5vcm1hbCBjb21tYW5kbGluZSBvcHRpb24gIgorI3wgImZvciBkc2VsZWN0IGV4Y2VwdCBmb3IgdGhlIGxlYWRpbmcgZGFzaGVzIHdoaWNoIGFyZSBub3QgdXNlZCBoZXJlLiAiCisjfCAiQ29tbWVudHMgYXJlIGFsbG93ZWQgYnkgc3RhcnRpbmcgYSBsaW5lIHdpdGggYSBoYXNoIHNpZ24gKFwiQjwjPlwiKS4iCittc2dpZCAiIgorIlRoaXMgZmlsZSBjb250YWlucyBkZWZhdWx0IG9wdGlvbnMgZm9yIGRzZWxlY3QuIEVhY2ggbGluZSBjb250YWlucyBhIHNpbmdsZSAiCisib3B0aW9uIHdoaWNoIGlzIGV4YWN0bHkgdGhlIHNhbWUgYXMgYSBub3JtYWwgY29tbWFuZCBsaW5lIG9wdGlvbiBmb3IgZHNlbGVjdCAiCisiZXhjZXB0IGZvciB0aGUgbGVhZGluZyBkYXNoZXMgd2hpY2ggYXJlIG5vdCB1c2VkIGhlcmUuIFF1b3RlcyBzdXJyb3VuZGluZyAiCisib3B0aW9uIHZhbHVlcyBhcmUgc3RyaXBwZWQuIENvbW1lbnRzIGFyZSBhbGxvd2VkIGJ5IHN0YXJ0aW5nIGEgbGluZSB3aXRoIGEgIgorImhhc2ggc2lnbiAoXCJCPCM+XCIpLiIKK21zZ3N0ciAiIgorIkUgZsOhamwgdGFydGFsbWF6emEgYSBkc2VsZWN0IGFsYXBiZcOhbGzDrXTDoXNhaXQuIE1pbmRlbiBzb3IgMSBsZWhldMWRc8OpZ2V0ICIKKyJ0YXJ0YWxtYXosIG1lbHkgcG9udG9zYW4gbWVnZmVsZWwgYSBzaW1hIHBhcmFuY3Nzb3JvcyBkcGtnIGxlaGV0xZFzw6lnZWtuZWsgIgorImtpdsOpdmUgYSB2ZXpldMWRIGvDtnTFkWplbGVrZXQsIG1lbHllayBpdHQgbmluY3NlbmVrLiBNZWdqZWd5esOpc2VrIGVneSBzb3IgIgorImVsZWrDqW4gYSAoXCJCPCM+XCIpIGplbGxlbCBsZWhldHPDqWdlc2VrLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC5jZmcuNToxNAorIywgZnV6enkKKyN8IG1zZ2lkICJJPC9ldGMvZHBrZy9kc2VsZWN0LmNmZz4iCittc2dpZCAiSTwvZXRjL2Rwa2cvZHNlbGVjdC5jZmcuZC9bMC05YS16QS1aXy1dKj4iCittc2dzdHIgIkk8L2V0Yy9kcGtnL2RzZWxlY3QuY2ZnPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC5jZmcuNToxNgorbXNnaWQgIkk8L2V0Yy9kcGtnL2RzZWxlY3QuY2ZnPiIKK21zZ3N0ciAiSTwvZXRjL2Rwa2cvZHNlbGVjdC5jZmc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LmNmZy41OjE4Cittc2dpZCAiSTx+Ly5kc2VsZWN0LmNmZz4iCittc2dzdHIgIkk8fi8uZHNlbGVjdC5jZmc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LmNmZy41OjIyCittc2dpZCAiIgorIlNlZSBJPC91c3Ivc2hhcmUvZG9jL2Rwa2cvVEhBTktTPiBmb3IgdGhlIGxpc3Qgb2YgcGVvcGxlIHdobyBoYXZlICIKKyJjb250cmlidXRlZCB0byBCPGRzZWxlY3Q+LiIKK21zZ3N0ciAiIgorIkzDoXNkIGEgSTwvdXNyL3NoYXJlL2RvYy9kcGtnL1RIQU5LUz4gZsOhamx0LCBtZWx5YmVuIGEgQjxkc2VsZWN0PiBrw6lzesOtdMOpc8OpdCAiCisic2Vnw610xZEgc3plbcOpbHllayBsaXN0w6FqYSB0YWzDoWxoYXTDsy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuY2ZnLjU6MjQKK21zZ2lkICJCPGRzZWxlY3Q+KDEpLiIKK21zZ3N0ciAiQjxkc2VsZWN0PigxKS4iCisKKyMuIHR5cGU6IFRICisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjEKKyMsIG5vLXdyYXAKK21zZ2lkICJzdGFydC1zdG9wLWRhZW1vbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjQKK21zZ2lkICJzdGFydC1zdG9wLWRhZW1vbiAtIHN0YXJ0IGFuZCBzdG9wIHN5c3RlbSBkYWVtb24gcHJvZ3JhbXMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo4CisjLCBmdXp6eQorbXNnaWQgIkI8c3RhcnQtc3RvcC1kYWVtb24+IFtJPG9wdGlvbj4uLi5dIEk8Y29tbWFuZD4iCittc2dzdHIgIkI8ZHBrZy1kZWI+IEI8LWM+fEI8LS1jb250ZW50cz4gSTxhcmNow612dW0+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjE0Cittc2dpZCAiIgorIkI8c3RhcnQtc3RvcC1kYWVtb24+IGlzIHVzZWQgdG8gY29udHJvbCB0aGUgY3JlYXRpb24gYW5kIHRlcm1pbmF0aW9uIG9mICIKKyJzeXN0ZW0tbGV2ZWwgcHJvY2Vzc2VzLiAgVXNpbmcgb25lIG9mIHRoZSBtYXRjaGluZyBvcHRpb25zLCBCPHN0YXJ0LXN0b3AtIgorImRhZW1vbj4gY2FuIGJlIGNvbmZpZ3VyZWQgdG8gZmluZCBleGlzdGluZyBpbnN0YW5jZXMgb2YgYSBydW5uaW5nIHByb2Nlc3MuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MzMKK21zZ2lkICIiCisiTm90ZTogdW5sZXNzIEI8LS1waWRmaWxlPiBpcyBzcGVjaWZpZWQsIEI8c3RhcnQtc3RvcC1kYWVtb24+IGJlaGF2ZXMgc2ltaWxhciAiCisidG8gQjxraWxsYWxsPigxKS4gIEI8c3RhcnQtc3RvcC1kYWVtb24+IHdpbGwgc2NhbiB0aGUgcHJvY2VzcyB0YWJsZSBsb29raW5nICIKKyJmb3IgYW55IHByb2Nlc3NlcyB3aGljaCBtYXRjaCB0aGUgcHJvY2VzcyBuYW1lLCB1aWQsIGFuZC9vciBnaWQgKGlmICIKKyJzcGVjaWZpZWQpLiBBbnkgbWF0Y2hpbmcgcHJvY2VzcyB3aWxsIHByZXZlbnQgQjwtLXN0YXJ0PiBmcm9tIHN0YXJ0aW5nIHRoZSAiCisiZGFlbW9uLiBBbGwgbWF0Y2hpbmcgcHJvY2Vzc2VzIHdpbGwgYmUgc2VudCB0aGUgVEVSTSBzaWduYWwgKG9yIHRoZSBvbmUgIgorInNwZWNpZmllZCB2aWEgQjwtLXNpZ25hbD4gb3IgQjwtLXJldHJ5PikgaWYgQjwtLXN0b3A+IGlzIHNwZWNpZmllZC4gRm9yICIKKyJkYWVtb25zIHdoaWNoIGhhdmUgbG9uZy1saXZlZCBjaGlsZHJlbiB3aGljaCBuZWVkIHRvIGxpdmUgdGhyb3VnaCBhIEI8LS0iCisic3RvcD4sIHlvdSBtdXN0IHNwZWNpZnkgYSBwaWRmaWxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODozNQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1TPiwgQjwtLXN0YXJ0PiBbQjwtLT5dIEk8YXJndW1lbnRzPiIKK21zZ3N0ciAiQjwtLXNob3c+LCBCPC1XPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo1MgorbXNnaWQgIiIKKyJDaGVjayBmb3IgdGhlIGV4aXN0ZW5jZSBvZiBhIHNwZWNpZmllZCBwcm9jZXNzLiAgSWYgc3VjaCBhIHByb2Nlc3MgZXhpc3RzLCAiCisiQjxzdGFydC1zdG9wLWRhZW1vbj4gZG9lcyBub3RoaW5nLCBhbmQgZXhpdHMgd2l0aCBlcnJvciBzdGF0dXMgMSAoMCBpZiBCPC0tIgorIm9rbm9kbz4gaXMgc3BlY2lmaWVkKS4gIElmIHN1Y2ggYSBwcm9jZXNzIGRvZXMgbm90IGV4aXN0LCBpdCBzdGFydHMgYW4gIgorImluc3RhbmNlLCB1c2luZyBlaXRoZXIgdGhlIGV4ZWN1dGFibGUgc3BlY2lmaWVkIGJ5IEI8LS1leGVjPiBvciwgaWYgIgorInNwZWNpZmllZCwgYnkgQjwtLXN0YXJ0YXM+LiAgQW55IGFyZ3VtZW50cyBnaXZlbiBhZnRlciBCPC0tPiBvbiB0aGUgY29tbWFuZCAiCisibGluZSBhcmUgcGFzc2VkIHVubW9kaWZpZWQgdG8gdGhlIHByb2dyYW0gYmVpbmcgc3RhcnRlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6NTIKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtSz4sIEI8LS1zdG9wPiIKK21zZ3N0ciAiQjwtLWluZm8+LCBCPC1JPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo3MAorbXNnaWQgIiIKKyJDaGVja3MgZm9yIHRoZSBleGlzdGVuY2Ugb2YgYSBzcGVjaWZpZWQgcHJvY2Vzcy4gIElmIHN1Y2ggYSBwcm9jZXNzIGV4aXN0cywgIgorIkI8c3RhcnQtc3RvcC1kYWVtb24+IHNlbmRzIGl0IHRoZSBzaWduYWwgc3BlY2lmaWVkIGJ5IEI8LS1zaWduYWw+LCBhbmQgZXhpdHMgIgorIndpdGggZXJyb3Igc3RhdHVzIDAuICBJZiBzdWNoIGEgcHJvY2VzcyBkb2VzIG5vdCBleGlzdCwgQjxzdGFydC1zdG9wLWRhZW1vbj4gIgorImV4aXRzIHdpdGggZXJyb3Igc3RhdHVzIDEgKDAgaWYgQjwtLW9rbm9kbz4gaXMgc3BlY2lmaWVkKS4gSWYgQjwtLXJldHJ5PiBpcyAiCisic3BlY2lmaWVkLCB0aGVuIEI8c3RhcnQtc3RvcC1kYWVtb24+IHdpbGwgY2hlY2sgdGhhdCB0aGUgcHJvY2VzcyhlcykgaGF2ZSAiCisidGVybWluYXRlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6NzAKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtVD4sIEI8LS1zdGF0dXM+IgorbXNnc3RyICJCPC0taW5mbz4sIEI8LUk+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44Ojc0Cittc2dpZCAiIgorIkNoZWNrIGZvciB0aGUgZXhpc3RlbmNlIG9mIGEgc3BlY2lmaWVkIHByb2Nlc3MsIGFuZCByZXR1cm5zIGFuIGV4aXQgc3RhdHVzICIKKyJjb2RlLCBhY2NvcmRpbmcgdG8gdGhlIExTQiBJbml0IFNjcmlwdCBBY3Rpb25zLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo3NAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1IPiwgQjwtLWhlbHA+IgorbXNnc3RyICJCPC0taGVscD4sIEI8LWg+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44Ojc3Cittc2dpZCAiU2hvdyB1c2FnZSBpbmZvcm1hdGlvbiBhbmQgZXhpdC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6NzcKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtVj4sIEI8LS12ZXJzaW9uPiIKK21zZ3N0ciAiQjwtLXZlcnNpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjgwCisjLCBmdXp6eQorbXNnaWQgIlNob3cgdGhlIHByb2dyYW0gdmVyc2lvbiBhbmQgZXhpdC4iCittc2dzdHIgIktpw61yamEgYSBCPGRwa2ctZGViPiB2ZXJ6acOzc3rDoW3DoXQuIgorCisjLiB0eXBlOiBTSAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo4MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJNQVRDSElORyBPUFRJT05TIgorbXNnc3RyICJNxbBWRUxFVEkgTEVIRVTFkFPDiUdFSyIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6ODIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1wPiwgQjwtLXBpZGZpbGU+IEk8cGlkLWZpbGU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6ODYKK21zZ2lkICJDaGVjayB3aGV0aGVyIGEgcHJvY2VzcyBoYXMgY3JlYXRlZCB0aGUgZmlsZSBJPHBpZC1maWxlPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6ODYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC14PiwgQjwtLWV4ZWM+IEk8ZXhlY3V0YWJsZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo5MAorbXNnaWQgIiIKKyJDaGVjayBmb3IgcHJvY2Vzc2VzIHRoYXQgYXJlIGluc3RhbmNlcyBvZiB0aGlzIGV4ZWN1dGFibGUgKGFjY29yZGluZyB0byBCPC8iCisicHJvYy8+STxwaWQ+QjwvZXhlPikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjkwCisjLCBuby13cmFwCittc2dpZCAiQjwtbj4sIEI8LS1uYW1lPiBJPHByb2Nlc3MtbmFtZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo5NgorbXNnaWQgIiIKKyJDaGVjayBmb3IgcHJvY2Vzc2VzIHdpdGggdGhlIG5hbWUgSTxwcm9jZXNzLW5hbWU+IChhY2NvcmRpbmcgdG8gQjwvcHJvYy8iCisiPkk8cGlkPkI8L3N0YXQ+KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6OTYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC11PiwgQjwtLXVzZXI+IEk8dXNlcm5hbWU+fEk8dWlkPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjEwMgorbXNnaWQgIiIKKyJDaGVjayBmb3IgcHJvY2Vzc2VzIG93bmVkIGJ5IHRoZSB1c2VyIHNwZWNpZmllZCBieSBJPHVzZXJuYW1lPiBvciBJPHVpZD4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjEwNAorIywgbm8td3JhcAorbXNnaWQgIkI8LWc+LCBCPC0tZ3JvdXA+IEk8Z3JvdXA+fEk8Z2lkPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjEwNworbXNnaWQgIkNoYW5nZSB0byBJPGdyb3VwPiBvciBJPGdpZD4gd2hlbiBzdGFydGluZyB0aGUgcHJvY2Vzcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTA3CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LXM+LCBCPC0tc2lnbmFsPiBJPHNpZ25hbD4iCittc2dzdHIgIkI8LS1zaG93PiwgQjwtVz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTEyCittc2dpZCAiIgorIldpdGggQjwtLXN0b3A+LCBzcGVjaWZpZXMgdGhlIHNpZ25hbCB0byBzZW5kIHRvIHByb2Nlc3NlcyBiZWluZyBzdG9wcGVkICIKKyIoZGVmYXVsdCBURVJNKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTEyCisjLCBuby13cmFwCittc2dpZCAiQjwtUj4sIEI8LS1yZXRyeT4gSTx0aW1lb3V0PnxJPHNjaGVkdWxlPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjEyMgorbXNnaWQgIiIKKyJXaXRoIEI8LS1zdG9wPiwgc3BlY2lmaWVzIHRoYXQgQjxzdGFydC1zdG9wLWRhZW1vbj4gaXMgdG8gY2hlY2sgd2hldGhlciB0aGUgIgorInByb2Nlc3MoZXMpICBkbyBmaW5pc2guIEl0IHdpbGwgY2hlY2sgcmVwZWF0ZWRseSB3aGV0aGVyIGFueSBtYXRjaGluZyAiCisicHJvY2Vzc2VzIGFyZSBydW5uaW5nLCB1bnRpbCBub25lIGFyZS4gSWYgdGhlIHByb2Nlc3NlcyBkbyBub3QgZXhpdCBpdCB3aWxsICIKKyJ0aGVuIHRha2UgZnVydGhlciBhY3Rpb24gYXMgZGV0ZXJtaW5lZCBieSB0aGUgc2NoZWR1bGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTMzCittc2dpZCAiIgorIklmIEk8dGltZW91dD4gaXMgc3BlY2lmaWVkIGluc3RlYWQgb2YgSTxzY2hlZHVsZT4sIHRoZW4gdGhlIHNjaGVkdWxlICIKKyJJPHNpZ25hbD5CPC8+STx0aW1lb3V0PkI8L0tJTEwvPkk8dGltZW91dD4gaXMgdXNlZCwgd2hlcmUgSTxzaWduYWw+IGlzIHRoZSAiCisic2lnbmFsIHNwZWNpZmllZCB3aXRoIEI8LS1zaWduYWw+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjE0OQorbXNnaWQgIiIKKyJJPHNjaGVkdWxlPiBpcyBhIGxpc3Qgb2YgYXQgbGVhc3QgdHdvIGl0ZW1zIHNlcGFyYXRlZCBieSBzbGFzaGVzIChCPC8+KTsgIgorImVhY2ggaXRlbSBtYXkgYmUgQjwtPkk8c2lnbmFsLW51bWJlcj4gb3IgW0I8LT5dSTxzaWduYWwtbmFtZT4sIHdoaWNoIG1lYW5zICIKKyJ0byBzZW5kIHRoYXQgc2lnbmFsLCBvciBJPHRpbWVvdXQ+LCB3aGljaCBtZWFucyB0byB3YWl0IHRoYXQgbWFueSBzZWNvbmRzICIKKyJmb3IgcHJvY2Vzc2VzIHRvIGV4aXQsIG9yIEI8Zm9yZXZlcj4sIHdoaWNoIG1lYW5zIHRvIHJlcGVhdCB0aGUgcmVzdCBvZiB0aGUgIgorInNjaGVkdWxlIGZvcmV2ZXIgaWYgbmVjZXNzYXJ5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjE1OQorbXNnaWQgIiIKKyJJZiB0aGUgZW5kIG9mIHRoZSBzY2hlZHVsZSBpcyByZWFjaGVkIGFuZCBCPGZvcmV2ZXI+IGlzIG5vdCBzcGVjaWZpZWQsIHRoZW4gIgorIkI8c3RhcnQtc3RvcC1kYWVtb24+IGV4aXRzIHdpdGggZXJyb3Igc3RhdHVzIDIuICBJZiBhIHNjaGVkdWxlIGlzIHNwZWNpZmllZCwgIgorInRoZW4gYW55IHNpZ25hbCBzcGVjaWZpZWQgd2l0aCBCPC0tc2lnbmFsPiBpcyBpZ25vcmVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxNTkKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtYT4sIEI8LS1zdGFydGFzPiBJPHBhdGhuYW1lPiIKK21zZ3N0ciAiQjxkcGtnLWRlYj4gQjwtYz58QjwtLWNvbnRlbnRzPiBJPGFyY2jDrXZ1bT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTY3Cittc2dpZCAiIgorIldpdGggQjwtLXN0YXJ0Piwgc3RhcnQgdGhlIHByb2Nlc3Mgc3BlY2lmaWVkIGJ5IEk8cGF0aG5hbWU+LiAgSWYgbm90ICIKKyJzcGVjaWZpZWQsIGRlZmF1bHRzIHRvIHRoZSBhcmd1bWVudCBnaXZlbiB0byBCPC0tZXhlYz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjE2NworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC10PiwgQjwtLXRlc3Q+IgorbXNnc3RyICJCPC0taW5mbz4sIEI8LUk+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjE3MQorbXNnaWQgIiIKKyJQcmludCBhY3Rpb25zIHRoYXQgd291bGQgYmUgdGFrZW4gYW5kIHNldCBhcHByb3ByaWF0ZSByZXR1cm4gdmFsdWUsIGJ1dCB0YWtlICIKKyJubyBhY3Rpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjE3MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1vPiwgQjwtLW9rbm9kbz4iCittc2dzdHIgIkI8LS1pbmZvPiwgQjwtST4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTc0Cittc2dpZCAiUmV0dXJuIGV4aXQgc3RhdHVzIDAgaW5zdGVhZCBvZiAxIGlmIG5vIGFjdGlvbnMgYXJlICh3b3VsZCBiZSkgdGFrZW4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjE3NAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1xPiwgQjwtLXF1aWV0PiIKK21zZ3N0ciAiQjwtLW5ldz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTc3Cittc2dpZCAiRG8gbm90IHByaW50IGluZm9ybWF0aW9uYWwgbWVzc2FnZXM7IG9ubHkgZGlzcGxheSBlcnJvciBtZXNzYWdlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTc3CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LWM+LCBCPC0tY2h1aWQ+IEk8dXNlcm5hbWU+fEk8dWlkPltCPDo+STxncm91cD58STxnaWQ+XSIKK21zZ3N0ciAiQjwtLWluZm8+LCBCPC1JPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxOTUKK21zZ2lkICIiCisiQ2hhbmdlIHRvIHRoaXMgdXNlcm5hbWUvdWlkIGJlZm9yZSBzdGFydGluZyB0aGUgcHJvY2Vzcy4gWW91IGNhbiBhbHNvICIKKyJzcGVjaWZ5IGEgZ3JvdXAgYnkgYXBwZW5kaW5nIGEgQjw6PiwgdGhlbiB0aGUgZ3JvdXAgb3IgZ2lkIGluIHRoZSBzYW1lIHdheSAiCisiYXMgeW91IHdvdWxkIGZvciB0aGUgYGNob3duJyBjb21tYW5kIChJPHVzZXI+Qjw6Pkk8Z3JvdXA+KS4gIElmIGEgdXNlciBpcyAiCisic3BlY2lmaWVkIHdpdGhvdXQgYSBncm91cCwgdGhlIHByaW1hcnkgR0lEIGZvciB0aGF0IHVzZXIgaXMgdXNlZC4gIFdoZW4gIgorInVzaW5nIHRoaXMgb3B0aW9uIHlvdSBtdXN0IHJlYWxpemUgdGhhdCB0aGUgcHJpbWFyeSBhbmQgc3VwcGxlbWVudGFsIGdyb3VwcyAiCisiYXJlIHNldCBhcyB3ZWxsLCBldmVuIGlmIHRoZSBCPC0tZ3JvdXA+IG9wdGlvbiBpcyBub3Qgc3BlY2lmaWVkLiBUaGUgQjwtLSIKKyJncm91cD4gb3B0aW9uIGlzIG9ubHkgZm9yIGdyb3VwcyB0aGF0IHRoZSB1c2VyIGlzbid0IG5vcm1hbGx5IGEgbWVtYmVyIG9mICIKKyIobGlrZSBhZGRpbmcgcGVyIHByb2Nlc3MgZ3JvdXAgbWVtYmVyc2hpcCBmb3IgZ2VuZXJpYyB1c2VycyBsaWtlIEI8bm9ib2R5PikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjE5NQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1yPiwgQjwtLWNocm9vdD4gSTxyb290PiIKK21zZ3N0ciAiQjwtLWluZm8+LCBCPC1JPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyMDEKK21zZ2lkICIiCisiQ2hkaXIgYW5kIGNocm9vdCB0byBJPHJvb3Q+IGJlZm9yZSBzdGFydGluZyB0aGUgcHJvY2Vzcy4gUGxlYXNlIG5vdGUgdGhhdCAiCisidGhlIHBpZGZpbGUgaXMgYWxzbyB3cml0dGVuIGFmdGVyIHRoZSBjaHJvb3QuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjIwMQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1kPiwgQjwtLWNoZGlyPiBJPHBhdGg+IgorbXNnc3RyICJCPC0taW5mbz4sIEI8LUk+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjIwOQorbXNnaWQgIiIKKyJDaGRpciB0byBJPHBhdGg+IGJlZm9yZSBzdGFydGluZyB0aGUgcHJvY2Vzcy4gVGhpcyBpcyBkb25lIGFmdGVyIHRoZSBjaHJvb3QgIgorImlmIHRoZSBCPC1yPnxCPC0tY2hyb290PiBvcHRpb24gaXMgc2V0LiBXaGVuIG5vdCBzcGVjaWZpZWQsIHN0YXJ0LXN0b3AtIgorImRhZW1vbiB3aWxsIGNoZGlyIHRvIHRoZSByb290IGRpcmVjdG9yeSBiZWZvcmUgc3RhcnRpbmcgdGhlIHByb2Nlc3MuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjIwOQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1iPiwgQjwtLWJhY2tncm91bmQ+IgorbXNnc3RyICJCPC0tYnVpbGQ+LCBCPC1iPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyMjEKK21zZ2lkICIiCisiVHlwaWNhbGx5IHVzZWQgd2l0aCBwcm9ncmFtcyB0aGF0IGRvbid0IGRldGFjaCBvbiB0aGVpciBvd24uIFRoaXMgb3B0aW9uICIKKyJ3aWxsIGZvcmNlIEI8c3RhcnQtc3RvcC1kYWVtb24+IHRvIGZvcmsgYmVmb3JlIHN0YXJ0aW5nIHRoZSBwcm9jZXNzLCBhbmQgIgorImZvcmNlIGl0IGludG8gdGhlIGJhY2tncm91bmQuICBCPFdBUk5JTkc6IHN0YXJ0LXN0b3AtZGFlbW9uPiBjYW5ub3QgY2hlY2sgIgorInRoZSBleGl0IHN0YXR1cyBpZiB0aGUgcHJvY2VzcyBmYWlscyB0byBleGVjdXRlIGZvciBCPGFueT4gcmVhc29uLiBUaGlzIGlzIGEgIgorImxhc3QgcmVzb3J0LCBhbmQgaXMgb25seSBtZWFudCBmb3IgcHJvZ3JhbXMgdGhhdCBlaXRoZXIgbWFrZSBubyBzZW5zZSAiCisiZm9ya2luZyBvbiB0aGVpciBvd24sIG9yIHdoZXJlIGl0J3Mgbm90IGZlYXNpYmxlIHRvIGFkZCB0aGUgY29kZSBmb3IgdGhlbSB0byAiCisiZG8gdGhpcyB0aGVtc2VsdmVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyMjEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1OPiwgQjwtLW5pY2VsZXZlbD4gSTxpbnQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjI0Cittc2dpZCAiVGhpcyBhbHRlcnMgdGhlIHByaW9yaXR5IG9mIHRoZSBwcm9jZXNzIGJlZm9yZSBzdGFydGluZyBpdC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjI0CisjLCBuby13cmFwCittc2dpZCAiQjwtUD4sIEI8LS1wcm9jc2NoZWQ+IEk8cG9saWN5PkI8Oj5JPHByaW9yaXR5PiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjIzMAorbXNnaWQgIiIKKyJUaGlzIGFsdGVycyB0aGUgcHJvY2VzcyBzY2hlZHVsZXIgcG9saWN5IGFuZCBwcmlvcml0eSBvZiB0aGUgcHJvY2VzcyBiZWZvcmUgIgorInN0YXJ0aW5nIGl0LiBUaGUgcHJpb3JpdHkgY2FuIGJlIG9wdGlvbmFsbHkgc3BlY2lmaWVkIGJ5IGFwcGVuZGluZyBhIEI8Oj4gIgorImZvbGxvd2VkIGJ5IHRoZSB2YWx1ZS4gVGhlIGRlZmF1bHQgSTxwcmlvcml0eT4gaXMgMC4gVGhlIGN1cnJlbnRseSBzdXBwb3J0ZWQgIgorInBvbGljeSB2YWx1ZXMgYXJlIEI8b3RoZXI+LCBCPGZpZm8+IGFuZCBCPHJyPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjMwCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LUk+LCBCPC0taW9zY2hlZD4gSTxjbGFzcz5CPDo+STxwcmlvcml0eT4iCittc2dzdHIgIkI8ZHBrZy1kZWI+IEI8LUk+fEI8LS1pbmZvPiBJPGFyY2jDrXZ1bT4gW0k8ZWxsZW7FkXJ6xZEtZsOhamwtbsOpdj4gLi5dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjIzNworbXNnaWQgIiIKKyJUaGlzIGFsdGVycyB0aGUgSU8gc2NoZWR1bGVyIGNsYXNzIGFuZCBwcmlvcml0eSBvZiB0aGUgcHJvY2VzcyBiZWZvcmUgIgorInN0YXJ0aW5nIGl0LiBUaGUgcHJpb3JpdHkgY2FuIGJlIG9wdGlvbmFsbHkgc3BlY2lmaWVkIGJ5IGFwcGVuZGluZyBhIEI8Oj4gIgorImZvbGxvd2VkIGJ5IHRoZSB2YWx1ZS4gVGhlIGRlZmF1bHQgSTxwcmlvcml0eT4gaXMgNCwgdW5sZXNzIEk8Y2xhc3M+IGlzICIKKyJCPGlkbGU+LCB0aGVuIEk8cHJpb3JpdHk+IHdpbGwgYWx3YXlzIGJlIDcuIFRoZSBjdXJyZW50bHkgc3VwcG9ydGVkIHZhbHVlcyAiCisiZm9yIEk8Y2xhc3M+IGFyZSBCPGlkbGU+LCBCPGJlc3QtZWZmb3J0PiBhbmQgQjxyZWFsLXRpbWU+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyMzcKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtaz4sIEI8LS11bWFzaz4gSTxtYXNrPiIKK21zZ3N0ciAiQjwtLXNob3c+LCBCPC1XPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyNDAKK21zZ2lkICJUaGlzIHNldHMgdGhlIHVtYXNrIG9mIHRoZSBwcm9jZXNzIGJlZm9yZSBzdGFydGluZyBpdC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjQwCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LW0+LCBCPC0tbWFrZS1waWRmaWxlPiIKK21zZ3N0ciAiQjwtLWhlbHA+LCBCPC1oPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyNTUKK21zZ2lkICIiCisiVXNlZCB3aGVuIHN0YXJ0aW5nIGEgcHJvZ3JhbSB0aGF0IGRvZXMgbm90IGNyZWF0ZSBpdHMgb3duIHBpZCBmaWxlLiBUaGlzICIKKyJvcHRpb24gd2lsbCBtYWtlIEI8c3RhcnQtc3RvcC1kYWVtb24+IGNyZWF0ZSB0aGUgZmlsZSByZWZlcmVuY2VkIHdpdGggQjwtLSIKKyJwaWRmaWxlPiBhbmQgcGxhY2UgdGhlIHBpZCBpbnRvIGl0IGp1c3QgYmVmb3JlIGV4ZWN1dGluZyB0aGUgcHJvY2Vzcy4gTm90ZSwgIgorInRoZSBmaWxlIHdpbGwgbm90IGJlIHJlbW92ZWQgd2hlbiBzdG9wcGluZyB0aGUgcHJvZ3JhbS4gIEI8Tk9URTo+IFRoaXMgIgorImZlYXR1cmUgbWF5IG5vdCB3b3JrIGluIGFsbCBjYXNlcy4gTW9zdCBub3RhYmx5IHdoZW4gdGhlIHByb2dyYW0gYmVpbmcgIgorImV4ZWN1dGVkIGZvcmtzIGZyb20gaXRzIG1haW4gcHJvY2Vzcy4gQmVjYXVzZSBvZiB0aGlzLCBpdCBpcyB1c3VhbGx5IG9ubHkgIgorInVzZWZ1bCB3aGVuIGNvbWJpbmVkIHdpdGggdGhlIEI8LS1iYWNrZ3JvdW5kPiBvcHRpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjU4Cittc2dpZCAiUHJpbnQgdmVyYm9zZSBpbmZvcm1hdGlvbmFsIG1lc3NhZ2VzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjI3MAorbXNnaWQgIiIKKyJUaGUgcmVxdWVzdGVkIGFjdGlvbiB3YXMgcGVyZm9ybWVkLiBJZiBCPC0tb2tub2RvPiB3YXMgc3BlY2lmaWVkLCBpdCdzIGFsc28gIgorInBvc3NpYmxlIHRoYXQgbm90aGluZyBoYWQgdG8gYmUgZG9uZS4gIFRoaXMgY2FuIGhhcHBlbiB3aGVuIEI8LS1zdGFydD4gd2FzICIKKyJzcGVjaWZpZWQgYW5kIGEgbWF0Y2hpbmcgcHJvY2VzcyB3YXMgYWxyZWFkeSBydW5uaW5nLCBvciB3aGVuIEI8LS1zdG9wPiB3YXMgIgorInNwZWNpZmllZCBhbmQgdGhlcmUgd2VyZSBubyBtYXRjaGluZyBwcm9jZXNzZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6Mjc1Cittc2dpZCAiSWYgQjwtLW9rbm9kbz4gd2FzIG5vdCBzcGVjaWZpZWQgYW5kIG5vdGhpbmcgd2FzIGRvbmUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjgzCittc2dpZCAiIgorIklmIEI8LS1zdG9wPiBhbmQgQjwtLXJldHJ5PiB3ZXJlIHNwZWNpZmllZCwgYnV0IHRoZSBlbmQgb2YgdGhlIHNjaGVkdWxlIHdhcyAiCisicmVhY2hlZCBhbmQgdGhlIHByb2Nlc3NlcyB3ZXJlIHN0aWxsIHJ1bm5pbmcuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjI4MyBzdGFydC1zdG9wLWRhZW1vbi44OjI5NQorIywgbm8td3JhcAorbXNnaWQgIkI8Mz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyODYKK21zZ2lkICJBbnkgb3RoZXIgZXJyb3IuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6Mjg5Cittc2dpZCAiIgorIldoZW4gdXNpbmcgdGhlIEI8LS1zdGF0dXM+IGNvbW1hbmQsIHRoZSBmb2xsb3dpbmcgc3RhdHVzIGNvZGVzIGFyZSByZXR1cm5lZDoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyOTIKK21zZ2lkICJQcm9ncmFtIGlzIHJ1bm5pbmcuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6Mjk1Cittc2dpZCAiUHJvZ3JhbSBpcyBub3QgcnVubmluZyBhbmQgdGhlIHBpZCBmaWxlIGV4aXN0cy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyOTgKK21zZ2lkICJQcm9ncmFtIGlzIG5vdCBydW5uaW5nLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyOTgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPDQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MzAxCittc2dpZCAiVW5hYmxlIHRvIGRldGVybWluZSBwcm9ncmFtIHN0YXR1cy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODozMDUKK21zZ2lkICIiCisiU3RhcnQgdGhlIEI8Zm9vZD4gZGFlbW9uLCB1bmxlc3Mgb25lIGlzIGFscmVhZHkgcnVubmluZyAoYSBwcm9jZXNzIG5hbWVkICIKKyJmb29kLCBydW5uaW5nIGFzIHVzZXIgZm9vZCwgd2l0aCBwaWQgaW4gZm9vZC5waWQpOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjMwOAorIywgbm8td3JhcAorbXNnaWQgInN0YXJ0LXN0b3AtZGFlbW9uIC0tc3RhcnQgLS1va25vZG8gLS11c2VyIGZvb2QgLS1uYW1lIGZvb2QgLS1waWRmaWxlIC92YXIvcnVuL2Zvb2QucGlkIC0tc3RhcnRhcyAvdXNyL3NiaW4vZm9vZCAtLWNodWlkIGZvb2QgLS0gLS1kYWVtb25cbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjMxMQorbXNnaWQgIlNlbmQgQjxTSUdURVJNPiB0byBCPGZvb2Q+IGFuZCB3YWl0IHVwIHRvIDUgc2Vjb25kcyBmb3IgaXQgdG8gc3RvcDoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODozMTQKKyMsIG5vLXdyYXAKK21zZ2lkICJzdGFydC1zdG9wLWRhZW1vbiAtLXN0b3AgLS1va25vZG8gLS11c2VyIGZvb2QgLS1uYW1lIGZvb2QgLS1waWRmaWxlIC92YXIvcnVuL2Zvb2QucGlkIC0tcmV0cnkgNVxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MzE3Cittc2dpZCAiRGVtb25zdHJhdGlvbiBvZiBhIGN1c3RvbSBzY2hlZHVsZSBmb3Igc3RvcHBpbmcgQjxmb29kPjoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODozMjAKKyMsIG5vLXdyYXAKK21zZ2lkICJzdGFydC1zdG9wLWRhZW1vbiAtLXN0b3AgLS1va25vZG8gLS11c2VyIGZvb2QgLS1uYW1lIGZvb2QgLS1waWRmaWxlIC92YXIvcnVuL2Zvb2QucGlkIC0tcmV0cnk9VEVSTS8zMC9LSUxMLzVcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjMyNgorbXNnaWQgIiIKKyJNYXJlayBNaWNoYWxraWV3aWN6IEU8bHQ+bWFyZWttQGkxN2xpbnV4Yi5pc3RzLnB3ci53cm9jLnBsRTxndD4gYmFzZWQgb24gYSAiCisicHJldmlvdXMgdmVyc2lvbiBieSBJYW4gSmFja3NvbiBFPGx0PmlhbkBjaGlhcmsuZ3JlZW5lbmQub3JnLnVrRTxndD4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MzI4Cittc2dpZCAiIgorIk1hbnVhbCBwYWdlIGJ5IEtsZWUgRGllbmVzIEU8bHQ+a2xlZUBtaXQuZWR1RTxndD4sIHBhcnRpYWxseSByZWZvcm1hdHRlZCBieSAiCisiSWFuIEphY2tzb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRICisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6OAorIywgbm8td3JhcAorbXNnaWQgInVwZGF0ZS1hbHRlcm5hdGl2ZXMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjExCittc2dpZCAiIgorInVwZGF0ZS1hbHRlcm5hdGl2ZXMgLSBtYWludGFpbiBzeW1ib2xpYyBsaW5rcyBkZXRlcm1pbmluZyBkZWZhdWx0IGNvbW1hbmRzIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNQorIywgZnV6enkKK21zZ2lkICJCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IFtJPG9wdGlvbj4uLi5dIEk8Y29tbWFuZD4iCittc2dzdHIgIkI8ZHBrZy1kZWI+IEI8LWM+fEI8LS1jb250ZW50cz4gSTxhcmNow612dW0+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjAKK21zZ2lkICIiCisiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBjcmVhdGVzLCByZW1vdmVzLCBtYWludGFpbnMgYW5kIGRpc3BsYXlzIGluZm9ybWF0aW9uICIKKyJhYm91dCB0aGUgc3ltYm9saWMgbGlua3MgY29tcHJpc2luZyB0aGUgRGViaWFuIGFsdGVybmF0aXZlcyBzeXN0ZW0uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyOAorbXNnaWQgIiIKKyJJdCBpcyBwb3NzaWJsZSBmb3Igc2V2ZXJhbCBwcm9ncmFtcyBmdWxmaWxsaW5nIHRoZSBzYW1lIG9yIHNpbWlsYXIgZnVuY3Rpb25zICIKKyJ0byBiZSBpbnN0YWxsZWQgb24gYSBzaW5nbGUgc3lzdGVtIGF0IHRoZSBzYW1lIHRpbWUuICBGb3IgZXhhbXBsZSwgbWFueSAiCisic3lzdGVtcyBoYXZlIHNldmVyYWwgdGV4dCBlZGl0b3JzIGluc3RhbGxlZCBhdCBvbmNlLiAgVGhpcyBnaXZlcyBjaG9pY2UgdG8gIgorInRoZSB1c2VycyBvZiBhIHN5c3RlbSwgYWxsb3dpbmcgZWFjaCB0byB1c2UgYSBkaWZmZXJlbnQgZWRpdG9yLCBpZiBkZXNpcmVkLCAiCisiYnV0IG1ha2VzIGl0IGRpZmZpY3VsdCBmb3IgYSBwcm9ncmFtIHRvIG1ha2UgYSBnb29kIGNob2ljZSBmb3IgYW4gZWRpdG9yIHRvICIKKyJpbnZva2UgaWYgdGhlIHVzZXIgaGFzIG5vdCBzcGVjaWZpZWQgYSBwYXJ0aWN1bGFyIHByZWZlcmVuY2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo1MAorbXNnaWQgIiIKKyJEZWJpYW4ncyBhbHRlcm5hdGl2ZXMgc3lzdGVtIGFpbXMgdG8gc29sdmUgdGhpcyBwcm9ibGVtLiAgQSBnZW5lcmljIG5hbWUgaW4gIgorInRoZSBmaWxlc3lzdGVtIGlzIHNoYXJlZCBieSBhbGwgZmlsZXMgcHJvdmlkaW5nIGludGVyY2hhbmdlYWJsZSAiCisiZnVuY3Rpb25hbGl0eS4gIFRoZSBhbHRlcm5hdGl2ZXMgc3lzdGVtIGFuZCB0aGUgc3lzdGVtIGFkbWluaXN0cmF0b3IgIgorInRvZ2V0aGVyIGRldGVybWluZSB3aGljaCBhY3R1YWwgZmlsZSBpcyByZWZlcmVuY2VkIGJ5IHRoaXMgZ2VuZXJpYyBuYW1lLiAgIgorIkZvciBleGFtcGxlLCBpZiB0aGUgdGV4dCBlZGl0b3JzIEI8ZWQ+KDEpICBhbmQgQjxudmk+KDEpICBhcmUgYm90aCBpbnN0YWxsZWQgIgorIm9uIHRoZSBzeXN0ZW0sIHRoZSBhbHRlcm5hdGl2ZXMgc3lzdGVtIHdpbGwgY2F1c2UgdGhlIGdlbmVyaWMgbmFtZSBJPC91c3IvIgorImJpbi9lZGl0b3I+IHRvIHJlZmVyIHRvIEk8L3Vzci9iaW4vbnZpPiBieSBkZWZhdWx0LiBUaGUgc3lzdGVtIGFkbWluaXN0cmF0b3IgIgorImNhbiBvdmVycmlkZSB0aGlzIGFuZCBjYXVzZSBpdCB0byByZWZlciB0byBJPC91c3IvYmluL2VkPiBpbnN0ZWFkLCBhbmQgdGhlICIKKyJhbHRlcm5hdGl2ZXMgc3lzdGVtIHdpbGwgbm90IGFsdGVyIHRoaXMgc2V0dGluZyB1bnRpbCBleHBsaWNpdGx5IHJlcXVlc3RlZCAiCisidG8gZG8gc28uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo2MAorbXNnaWQgIiIKKyJUaGUgZ2VuZXJpYyBuYW1lIGlzIG5vdCBhIGRpcmVjdCBzeW1ib2xpYyBsaW5rIHRvIHRoZSBzZWxlY3RlZCBhbHRlcm5hdGl2ZS4gICIKKyJJbnN0ZWFkLCBpdCBpcyBhIHN5bWJvbGljIGxpbmsgdG8gYSBuYW1lIGluIHRoZSBJPGFsdGVybmF0aXZlcz4gIgorIkk8ZGlyZWN0b3J5Piwgd2hpY2ggaW4gdHVybiBpcyBhIHN5bWJvbGljIGxpbmsgdG8gdGhlIGFjdHVhbCBmaWxlICIKKyJyZWZlcmVuY2VkLiAgVGhpcyBpcyBkb25lIHNvIHRoYXQgdGhlIHN5c3RlbSBhZG1pbmlzdHJhdG9yJ3MgY2hhbmdlcyBjYW4gYmUgIgorImNvbmZpbmVkIHdpdGhpbiB0aGUgSTwvZXRjPiBkaXJlY3Rvcnk6IHRoZSBGSFMgKHEudi4pIGdpdmVzIHJlYXNvbnMgd2h5IHRoaXMgIgorImlzIGEgR29vZCBUaGluZy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjcyCittc2dpZCAiIgorIldoZW4gZWFjaCBwYWNrYWdlIHByb3ZpZGluZyBhIGZpbGUgd2l0aCBhIHBhcnRpY3VsYXIgZnVuY3Rpb25hbGl0eSBpcyAiCisiaW5zdGFsbGVkLCBjaGFuZ2VkIG9yIHJlbW92ZWQsIEI8dXBkYXRlLWFsdGVybmF0aXZlcz4gaXMgY2FsbGVkIHRvIHVwZGF0ZSAiCisiaW5mb3JtYXRpb24gYWJvdXQgdGhhdCBmaWxlIGluIHRoZSBhbHRlcm5hdGl2ZXMgc3lzdGVtLiAgQjx1cGRhdGUtIgorImFsdGVybmF0aXZlcz4gaXMgdXN1YWxseSBjYWxsZWQgZnJvbSB0aGUgQjxwb3N0aW5zdD4gKGNvbmZpZ3VyZSkgb3IgQjxwcmVybT4gIgorIihpbnN0YWxsKSBzY3JpcHRzIGluIERlYmlhbiBwYWNrYWdlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjkxCittc2dpZCAiIgorIkl0IGlzIG9mdGVuIHVzZWZ1bCBmb3IgYSBudW1iZXIgb2YgYWx0ZXJuYXRpdmVzIHRvIGJlIHN5bmNocm9uaXNlZCwgc28gdGhhdCAiCisidGhleSBhcmUgY2hhbmdlZCBhcyBhIGdyb3VwOyBmb3IgZXhhbXBsZSwgd2hlbiBzZXZlcmFsIHZlcnNpb25zIG9mIHRoZSBCPHZpPiIKKyIoMSkgIGVkaXRvciBhcmUgaW5zdGFsbGVkLCB0aGUgbWFuIHBhZ2UgcmVmZXJlbmNlZCBieSBJPC91c3Ivc2hhcmUvbWFuL21hbjEvIgorInZpLjE+IHNob3VsZCBjb3JyZXNwb25kIHRvIHRoZSBleGVjdXRhYmxlIHJlZmVyZW5jZWQgYnkgSTwvdXNyL2Jpbi92aT4uICAiCisiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBoYW5kbGVzIHRoaXMgYnkgbWVhbnMgb2YgSTxtYXN0ZXI+IGFuZCBJPHNsYXZlPiAiCisibGlua3M7IHdoZW4gdGhlIG1hc3RlciBpcyBjaGFuZ2VkLCBhbnkgYXNzb2NpYXRlZCBzbGF2ZXMgYXJlIGNoYW5nZWQgdG9vLiAgQSAiCisibWFzdGVyIGxpbmsgYW5kIGl0cyBhc3NvY2lhdGVkIHNsYXZlcyBtYWtlIHVwIGEgSTxsaW5rPiBJPGdyb3VwPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjEwMAorbXNnaWQgIiIKKyJFYWNoIGxpbmsgZ3JvdXAgaXMsIGF0IGFueSBnaXZlbiB0aW1lLCBpbiBvbmUgb2YgdHdvIG1vZGVzOiBhdXRvbWF0aWMgb3IgIgorIm1hbnVhbC4gIFdoZW4gYSBncm91cCBpcyBpbiBhdXRvbWF0aWMgbW9kZSwgdGhlIGFsdGVybmF0aXZlcyBzeXN0ZW0gd2lsbCAiCisiYXV0b21hdGljYWxseSBkZWNpZGUsIGFzIHBhY2thZ2VzIGFyZSBpbnN0YWxsZWQgYW5kIHJlbW92ZWQsIHdoZXRoZXIgYW5kIGhvdyAiCisidG8gdXBkYXRlIHRoZSBsaW5rcy4gIEluIG1hbnVhbCBtb2RlLCB0aGUgYWx0ZXJuYXRpdmVzIHN5c3RlbSB3aWxsIHJldGFpbiAiCisidGhlIGNob2ljZSBvZiB0aGUgYWRtaW5pc3RyYXRvciBhbmQgYXZvaWQgY2hhbmdpbmcgdGhlIGxpbmtzIChleGNlcHQgd2hlbiAiCisic29tZXRoaW5nIGlzIGJyb2tlbikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxMDkKK21zZ2lkICIiCisiTGluayBncm91cHMgYXJlIGluIGF1dG9tYXRpYyBtb2RlIHdoZW4gdGhleSBhcmUgZmlyc3QgaW50cm9kdWNlZCB0byB0aGUgIgorInN5c3RlbS4gIElmIHRoZSBzeXN0ZW0gYWRtaW5pc3RyYXRvciBtYWtlcyBjaGFuZ2VzIHRvIHRoZSBzeXN0ZW0ncyBhdXRvbWF0aWMgIgorInNldHRpbmdzLCB0aGlzIHdpbGwgYmUgbm90aWNlZCB0aGUgbmV4dCB0aW1lIEI8dXBkYXRlLWFsdGVybmF0aXZlcz4gaXMgcnVuICIKKyJvbiB0aGUgY2hhbmdlZCBsaW5rJ3MgZ3JvdXAsIGFuZCB0aGUgZ3JvdXAgd2lsbCBhdXRvbWF0aWNhbGx5IGJlIHN3aXRjaGVkIHRvICIKKyJtYW51YWwgbW9kZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjExNgorbXNnaWQgIiIKKyJFYWNoIGFsdGVybmF0aXZlIGhhcyBhIEk8cHJpb3JpdHk+IGFzc29jaWF0ZWQgd2l0aCBpdC4gIFdoZW4gYSBsaW5rIGdyb3VwIGlzICIKKyJpbiBhdXRvbWF0aWMgbW9kZSwgdGhlIGFsdGVybmF0aXZlcyBwb2ludGVkIHRvIGJ5IG1lbWJlcnMgb2YgdGhlIGdyb3VwIHdpbGwgIgorImJlIHRob3NlIHdoaWNoIGhhdmUgdGhlIGhpZ2hlc3QgcHJpb3JpdHkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxMzMKK21zZ2lkICIiCisiV2hlbiB1c2luZyB0aGUgQjwtLWNvbmZpZz4gb3B0aW9uLCBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IHdpbGwgbGlzdCBhbGwgb2YgIgorInRoZSBjaG9pY2VzIGZvciB0aGUgbGluayBncm91cCBvZiB3aGljaCBnaXZlbiBJPG5hbWU+IGlzIHRoZSBtYXN0ZXIgIgorImFsdGVybmF0aXZlIG5hbWUuIFRoZSBjdXJyZW50IGNob2ljZSBpcyBtYXJrZWQgd2l0aCBhICcqJy4gIFlvdSB3aWxsIHRoZW4gYmUgIgorInByb21wdGVkIGZvciB5b3VyIGNob2ljZSByZWdhcmRpbmcgdGhpcyBsaW5rIGdyb3VwLiAgRGVwZW5kaW5nIG9uIHRoZSBjaG9pY2UgIgorIm1hZGUsIHRoZSBsaW5rIGdyb3VwIG1pZ2h0IG5vIGxvbmdlciBiZSBpbiBJPGF1dG8+IG1vZGUuIFlvdSB3aWxsIG5lZWQgdG8gIgorInVzZSB0aGUgQjwtLWF1dG8+IG9wdGlvbiBpbiBvcmRlciB0byByZXR1cm4gdG8gdGhlIGF1dG9tYXRpYyBtb2RlIChvciB5b3UgIgorImNhbiByZXJ1biBCPC0tY29uZmlnPiBhbmQgc2VsZWN0IHRoZSBlbnRyeSBtYXJrZWQgYXMgYXV0b21hdGljKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjEzNworbXNnaWQgIiIKKyJJZiB5b3Ugd2FudCB0byBjb25maWd1cmUgbm9uLWludGVyYWN0aXZlbHkgeW91IGNhbiB1c2UgdGhlIEI8LS1zZXQ+IG9wdGlvbiAiCisiaW5zdGVhZCAoc2VlIGJlbG93KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE0OAorbXNnaWQgIiIKKyJEaWZmZXJlbnQgcGFja2FnZXMgcHJvdmlkaW5nIHRoZSBzYW1lIGZpbGUgbmVlZCB0byBkbyBzbyBCPGNvb3BlcmF0aXZlbHk+LiAgIgorIkluIG90aGVyIHdvcmRzLCB0aGUgdXNhZ2Ugb2YgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBpcyBCPG1hbmRhdG9yeT4gZm9yIGFsbCAiCisiaW52b2x2ZWQgcGFja2FnZXMgaW4gc3VjaCBjYXNlLiBJdCBpcyBub3QgcG9zc2libGUgdG8gb3ZlcnJpZGUgc29tZSBmaWxlIGluICIKKyJhIHBhY2thZ2UgdGhhdCBkb2VzIG5vdCBlbXBsb3kgdGhlIEI8dXBkYXRlLWFsdGVybmF0aXZlcz4gbWVjaGFuaXNtLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE0OQorIywgbm8td3JhcAorbXNnaWQgIlRFUk1JTk9MT0dZIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNTQKK21zZ2lkICIiCisiU2luY2UgdGhlIGFjdGl2aXRpZXMgb2YgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBhcmUgcXVpdGUgaW52b2x2ZWQsIHNvbWUgIgorInNwZWNpZmljIHRlcm1zIHdpbGwgaGVscCB0byBleHBsYWluIGl0cyBvcGVyYXRpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTU0CisjLCBuby13cmFwCittc2dpZCAiZ2VuZXJpYyBuYW1lIChvciBhbHRlcm5hdGl2ZSBsaW5rKSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTYwCittc2dpZCAiIgorIkEgbmFtZSwgbGlrZSBJPC91c3IvYmluL2VkaXRvcj4sIHdoaWNoIHJlZmVycywgdmlhIHRoZSBhbHRlcm5hdGl2ZXMgc3lzdGVtLCAiCisidG8gb25lIG9mIGEgbnVtYmVyIG9mIGZpbGVzIG9mIHNpbWlsYXIgZnVuY3Rpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTYwCisjLCBuby13cmFwCittc2dpZCAiYWx0ZXJuYXRpdmUgbmFtZSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTYzCittc2dpZCAiVGhlIG5hbWUgb2YgYSBzeW1ib2xpYyBsaW5rIGluIHRoZSBhbHRlcm5hdGl2ZXMgZGlyZWN0b3J5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE2MworIywgbm8td3JhcAorbXNnaWQgImFsdGVybmF0aXZlIChvciBhbHRlcm5hdGl2ZSBwYXRoKSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTY3Cittc2dpZCAiIgorIlRoZSBuYW1lIG9mIGEgc3BlY2lmaWMgZmlsZSBpbiB0aGUgZmlsZXN5c3RlbSwgd2hpY2ggbWF5IGJlIG1hZGUgYWNjZXNzaWJsZSAiCisidmlhIGEgZ2VuZXJpYyBuYW1lIHVzaW5nIHRoZSBhbHRlcm5hdGl2ZXMgc3lzdGVtLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE2NworIywgbm8td3JhcAorbXNnaWQgImFsdGVybmF0aXZlcyBkaXJlY3RvcnkiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE3MgorbXNnaWQgIkEgZGlyZWN0b3J5LCBieSBkZWZhdWx0IEk8L2V0Yy9hbHRlcm5hdGl2ZXM+LCBjb250YWluaW5nIHRoZSBzeW1saW5rcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNzIKKyMsIG5vLXdyYXAKK21zZ2lkICJhZG1pbmlzdHJhdGl2ZSBkaXJlY3RvcnkiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE3OQorbXNnaWQgIiIKKyJBIGRpcmVjdG9yeSwgYnkgZGVmYXVsdCBJPC92YXIvbGliL2Rwa2cvYWx0ZXJuYXRpdmVzPiwgY29udGFpbmluZyBCPHVwZGF0ZS0iCisiYWx0ZXJuYXRpdmVzPicgc3RhdGUgaW5mb3JtYXRpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTc5CisjLCBuby13cmFwCittc2dpZCAibGluayBncm91cCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTgyCittc2dpZCAiQSBzZXQgb2YgcmVsYXRlZCBzeW1saW5rcywgaW50ZW5kZWQgdG8gYmUgdXBkYXRlZCBhcyBhIGdyb3VwLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE4MgorIywgbm8td3JhcAorbXNnaWQgIm1hc3RlciBsaW5rIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxODYKK21zZ2lkICIiCisiVGhlIGFsdGVybmF0aXZlIGxpbmsgaW4gYSBsaW5rIGdyb3VwIHdoaWNoIGRldGVybWluZXMgaG93IHRoZSBvdGhlciBsaW5rcyBpbiAiCisidGhlIGdyb3VwIGFyZSBjb25maWd1cmVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE4NgorIywgbm8td3JhcAorbXNnaWQgInNsYXZlIGxpbmsiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE5MAorbXNnaWQgIiIKKyJBbiBhbHRlcm5hdGl2ZSBsaW5rIGluIGEgbGluayBncm91cCB3aGljaCBpcyBjb250cm9sbGVkIGJ5IHRoZSBzZXR0aW5nIG9mICIKKyJ0aGUgbWFzdGVyIGxpbmsuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTkwCisjLCBuby13cmFwCittc2dpZCAiYXV0b21hdGljIG1vZGUiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE5NgorbXNnaWQgIiIKKyJXaGVuIGEgbGluayBncm91cCBpcyBpbiBhdXRvbWF0aWMgbW9kZSwgdGhlIGFsdGVybmF0aXZlcyBzeXN0ZW0gZW5zdXJlcyB0aGF0ICIKKyJ0aGUgbGlua3MgaW4gdGhlIGdyb3VwIHBvaW50IHRvIHRoZSBoaWdoZXN0IHByaW9yaXR5IGFsdGVybmF0aXZlIGFwcHJvcHJpYXRlICIKKyJmb3IgdGhlIGdyb3VwLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE5NgorIywgbm8td3JhcAorbXNnaWQgIm1hbnVhbCBtb2RlIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyMDEKK21zZ2lkICIiCisiV2hlbiBhIGxpbmsgZ3JvdXAgaXMgaW4gbWFudWFsIG1vZGUsIHRoZSBhbHRlcm5hdGl2ZXMgc3lzdGVtIHdpbGwgbm90IG1ha2UgIgorImFueSBjaGFuZ2VzIHRvIHRoZSBzeXN0ZW0gYWRtaW5pc3RyYXRvcidzIHNldHRpbmdzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjIwMworIywgbm8td3JhcAorbXNnaWQgIkI8LS1pbnN0YWxsPiBJPGxpbmsgbmFtZSBwYXRoIHByaW9yaXR5PiBbQjwtLXNsYXZlPiBJPGxpbmsgbmFtZSBwYXRoPl0uLi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjIyMgorbXNnaWQgIiIKKyJBZGQgYSBncm91cCBvZiBhbHRlcm5hdGl2ZXMgdG8gdGhlIHN5c3RlbS4gIEk8bGluaz4gaXMgdGhlIGdlbmVyaWMgbmFtZSBmb3IgIgorInRoZSBtYXN0ZXIgbGluaywgSTxuYW1lPiBpcyB0aGUgbmFtZSBvZiBpdHMgc3ltbGluayBpbiB0aGUgYWx0ZXJuYXRpdmVzICIKKyJkaXJlY3RvcnksIGFuZCBJPHBhdGg+IGlzIHRoZSBhbHRlcm5hdGl2ZSBiZWluZyBpbnRyb2R1Y2VkIGZvciB0aGUgbWFzdGVyICIKKyJsaW5rLiAgVGhlIGFyZ3VtZW50cyBhZnRlciBCPC0tc2xhdmU+IGFyZSB0aGUgZ2VuZXJpYyBuYW1lLCBzeW1saW5rIG5hbWUgaW4gIgorInRoZSBhbHRlcm5hdGl2ZXMgZGlyZWN0b3J5IGFuZCB0aGUgYWx0ZXJuYXRpdmUgcGF0aCBmb3IgYSBzbGF2ZSBsaW5rLiAgWmVybyAiCisib3IgbW9yZSBCPC0tc2xhdmU+IG9wdGlvbnMsIGVhY2ggZm9sbG93ZWQgYnkgdGhyZWUgYXJndW1lbnRzLCBtYXkgYmUgIgorInNwZWNpZmllZC4gTm90ZSB0aGF0IHRoZSBtYXN0ZXIgYWx0ZXJuYXRpdmUgbXVzdCBleGlzdCBvciB0aGUgY2FsbCB3aWxsICIKKyJmYWlsLiBIb3dldmVyIGlmIGEgc2xhdmUgYWx0ZXJuYXRpdmUgZG9lc24ndCBleGlzdCwgdGhlIGNvcnJlc3BvbmRpbmcgc2xhdmUgIgorImFsdGVybmF0aXZlIGxpbmsgd2lsbCBzaW1wbHkgbm90IGJlIGluc3RhbGxlZCAoYSB3YXJuaW5nIHdpbGwgc3RpbGwgYmUgIgorImRpc3BsYXllZCkuIElmIHNvbWUgcmVhbCBmaWxlIGlzIGluc3RhbGxlZCB3aGVyZSBhbiBhbHRlcm5hdGl2ZSBsaW5rIGhhcyB0byAiCisiYmUgaW5zdGFsbGVkLCBpdCBpcyBrZXB0IHVubGVzcyBCPC0tZm9yY2U+IGlzIHVzZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyMzMKK21zZ2lkICIiCisiSWYgdGhlIGFsdGVybmF0aXZlIG5hbWUgc3BlY2lmaWVkIGV4aXN0cyBhbHJlYWR5IGluIHRoZSBhbHRlcm5hdGl2ZXMgIgorInN5c3RlbSdzIHJlY29yZHMsIHRoZSBpbmZvcm1hdGlvbiBzdXBwbGllZCB3aWxsIGJlIGFkZGVkIGFzIGEgbmV3IHNldCBvZiAiCisiYWx0ZXJuYXRpdmVzIGZvciB0aGUgZ3JvdXAuICBPdGhlcndpc2UsIGEgbmV3IGdyb3VwLCBzZXQgdG8gYXV0b21hdGljIG1vZGUsICIKKyJ3aWxsIGJlIGFkZGVkIHdpdGggdGhpcyBpbmZvcm1hdGlvbi4gIElmIHRoZSBncm91cCBpcyBpbiBhdXRvbWF0aWMgbW9kZSwgYW5kICIKKyJ0aGUgbmV3bHkgYWRkZWQgYWx0ZXJuYXRpdmVzJyBwcmlvcml0eSBpcyBoaWdoZXIgdGhhbiBhbnkgb3RoZXIgaW5zdGFsbGVkICIKKyJhbHRlcm5hdGl2ZXMgZm9yIHRoaXMgZ3JvdXAsIHRoZSBzeW1saW5rcyB3aWxsIGJlIHVwZGF0ZWQgdG8gcG9pbnQgdG8gdGhlICIKKyJuZXdseSBhZGRlZCBhbHRlcm5hdGl2ZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjMzCisjLCBuby13cmFwCittc2dpZCAiQjwtLXNldD4gSTxuYW1lIHBhdGg+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyNDIKK21zZ2lkICIiCisiU2V0IHRoZSBwcm9ncmFtIEk8cGF0aD4gYXMgYWx0ZXJuYXRpdmUgZm9yIEk8bmFtZS4+IFRoaXMgaXMgZXF1aXZhbGVudCB0byAiCisiQjwtLWNvbmZpZz4gYnV0IGlzIG5vbi1pbnRlcmFjdGl2ZSBhbmQgdGh1cyBzY3JpcHRhYmxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjI0MgorIywgbm8td3JhcAorbXNnaWQgIkI8LS1yZW1vdmU+IEk8bmFtZSBwYXRoPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjYzCittc2dpZCAiIgorIlJlbW92ZSBhbiBhbHRlcm5hdGl2ZSBhbmQgYWxsIG9mIGl0cyBhc3NvY2lhdGVkIHNsYXZlIGxpbmtzLiAgSTxuYW1lPiBpcyBhICIKKyJuYW1lIGluIHRoZSBhbHRlcm5hdGl2ZXMgZGlyZWN0b3J5LCBhbmQgSTxwYXRoPiBpcyBhbiBhYnNvbHV0ZSBmaWxlbmFtZSB0byAiCisid2hpY2ggSTxuYW1lPiBjb3VsZCBiZSBsaW5rZWQuIElmIEk8bmFtZT4gaXMgaW5kZWVkIGxpbmtlZCB0byBJPHBhdGg+LCAiCisiSTxuYW1lPiB3aWxsIGJlIHVwZGF0ZWQgdG8gcG9pbnQgdG8gYW5vdGhlciBhcHByb3ByaWF0ZSBhbHRlcm5hdGl2ZSAoYW5kIHRoZSAiCisiZ3JvdXAgaXMgcHV0IGJhY2sgaW4gYXV0b21hdGljIG1vZGUpLCBvciByZW1vdmVkIGlmIHRoZXJlIGlzIG5vIHN1Y2ggIgorImFsdGVybmF0aXZlIGxlZnQuICBBc3NvY2lhdGVkIHNsYXZlIGxpbmtzIHdpbGwgYmUgdXBkYXRlZCBvciByZW1vdmVkLCAiCisiY29ycmVzcG9uZGluZ2x5LiAgSWYgdGhlIGxpbmsgaXMgbm90IGN1cnJlbnRseSBwb2ludGluZyB0byBJPHBhdGg+LCBubyBsaW5rcyAiCisiYXJlIGNoYW5nZWQ7IG9ubHkgdGhlIGluZm9ybWF0aW9uIGFib3V0IHRoZSBhbHRlcm5hdGl2ZSBpcyByZW1vdmVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjI2MworIywgbm8td3JhcAorbXNnaWQgIkI8LS1yZW1vdmUtYWxsPiBJPG5hbWU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyNjgKK21zZ2lkICIiCisiUmVtb3ZlIGFsbCBhbHRlcm5hdGl2ZXMgYW5kIGFsbCBvZiB0aGVpciBhc3NvY2lhdGVkIHNsYXZlIGxpbmtzLiAgSTxuYW1lPiBpcyAiCisiYSBuYW1lIGluIHRoZSBhbHRlcm5hdGl2ZXMgZGlyZWN0b3J5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6Mjc1Cittc2dpZCAiIgorIkNhbGwgQjwtLWNvbmZpZz4gb24gYWxsIGFsdGVybmF0aXZlcy4gSXQgY2FuIGJlIHVzZWZ1bGx5IGNvbWJpbmVkIHdpdGggQjwtLSIKKyJza2lwLWF1dG8+IHRvIHJldmlldyBhbmQgY29uZmlndXJlIGFsbCBhbHRlcm5hdGl2ZXMgd2hpY2ggYXJlIG5vdCBjb25maWd1cmVkICIKKyJpbiBhdXRvbWF0aWMgbW9kZS4gQnJva2VuIGFsdGVybmF0aXZlcyBhcmUgYWxzbyBkaXNwbGF5ZWQuICBUaHVzIGEgc2ltcGxlICIKKyJ3YXkgdG8gZml4IGFsbCBicm9rZW4gYWx0ZXJuYXRpdmVzIGlzIHRvIGNhbGwgQjx5ZXMgXFxbYXFdXFxbYXFdIHwgdXBkYXRlLSIKKyJhbHRlcm5hdGl2ZXMgLS1mb3JjZSAtLWFsbD4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6Mjc1CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1hdXRvPiBJPG5hbWU+IgorbXNnc3RyICJCPC0taW5mbz4sIEI8LUk+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjgyCittc2dpZCAiIgorIlN3aXRjaCB0aGUgbGluayBncm91cCBiZWhpbmQgdGhlIGFsdGVybmF0aXZlIGZvciBJPG5hbWU+IHRvIGF1dG9tYXRpYyBtb2RlLiAgIgorIkluIHRoZSBwcm9jZXNzLCB0aGUgbWFzdGVyIHN5bWxpbmsgYW5kIGl0cyBzbGF2ZXMgYXJlIHVwZGF0ZWQgdG8gcG9pbnQgdG8gIgorInRoZSBoaWdoZXN0IHByaW9yaXR5IGluc3RhbGxlZCBhbHRlcm5hdGl2ZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjgyCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1kaXNwbGF5PiBJPG5hbWU+IgorbXNnc3RyICJCPC0tbGljZW5jZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyOTEKK21zZ2lkICIiCisiRGlzcGxheSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgbGluayBncm91cC4gIEluZm9ybWF0aW9uIGRpc3BsYXllZCBpbmNsdWRlcyAiCisidGhlIGdyb3VwJ3MgbW9kZSAoYXV0byBvciBtYW51YWwpLCB3aGljaCBhbHRlcm5hdGl2ZSB0aGUgbWFzdGVyIGxpbmsgIgorImN1cnJlbnRseSBwb2ludHMgdG8sIHdoYXQgb3RoZXIgYWx0ZXJuYXRpdmVzIGFyZSBhdmFpbGFibGUgKGFuZCB0aGVpciAiCisiY29ycmVzcG9uZGluZyBzbGF2ZSBhbHRlcm5hdGl2ZXMpLCBhbmQgdGhlIGhpZ2hlc3QgcHJpb3JpdHkgYWx0ZXJuYXRpdmUgIgorImN1cnJlbnRseSBpbnN0YWxsZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjkxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1nZXQtc2VsZWN0aW9ucz4iCittc2dzdHIgIkI8LS12ZXJzaW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjI5OQorbXNnaWQgIiIKKyJMaXN0IGFsbCBtYXN0ZXIgYWx0ZXJuYXRpdmUgbmFtZXMgKHRob3NlIGNvbnRyb2xsaW5nIGEgbGluayBncm91cCkgIGFuZCAiCisidGhlaXIgc3RhdHVzLiBFYWNoIGxpbmUgY29udGFpbnMgdXAgdG8gMyBmaWVsZHMgKHNlcGFyYXRlZCBieSBvbmUgb3IgbW9yZSAiCisic3BhY2VzKS4gVGhlIGZpcnN0IGZpZWxkIGlzIHRoZSBhbHRlcm5hdGl2ZSBuYW1lLCB0aGUgc2Vjb25kIG9uZSBpcyB0aGUgIgorInN0YXR1cyAoZWl0aGVyIFwiYXV0b1wiIG9yIFwibWFudWFsXCIpLCBhbmQgdGhlIGxhc3Qgb25lIGNvbnRhaW5zIHRoZSAiCisiY3VycmVudCBjaG9pY2UgaW4gdGhlIGFsdGVybmF0aXZlIChiZXdhcmU6IGl0J3MgYSBmaWxlbmFtZSBhbmQgdGh1cyBtaWdodCAiCisiY29udGFpbiBzcGFjZXMpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzA0Cittc2dpZCAiIgorIlJlYWQgY29uZmlndXJhdGlvbiBvZiBhbHRlcm5hdGl2ZXMgb24gc3RhbmRhcmQgaW5wdXQgaW4gdGhlIGZvcm1hdCBnZW5lcmF0ZWQgIgorImJ5IEI8dXBkYXRlLWFsdGVybmF0aXZlcyAtLWdldC1zZWxlY3Rpb25zPiBhbmQgcmVjb25maWd1cmUgdGhlbSBhY2NvcmRpbmdseS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMDQKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLXF1ZXJ5PiBJPG5hbWU+IgorbXNnc3RyICJCPC0tdmVyc2lvbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMDkKK21zZ2lkICIiCisiRGlzcGxheSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgbGluayBncm91cCBsaWtlIC0tZGlzcGxheSBkb2VzLCBidXQgaW4gYSAiCisibWFjaGluZSBwYXJzZWFibGUgd2F5IChzZWUgc2VjdGlvbiBCPFFVRVJZIEZPUk1BVD4gYmVsb3cpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjMwOQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tbGlzdD4gSTxuYW1lPiIKK21zZ3N0ciAiQjwtLWluZm8+LCBCPC1JPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjMxMgorbXNnaWQgIkRpc3BsYXkgYWxsIHRhcmdldHMgb2YgdGhlIGxpbmsgZ3JvdXAuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzEyCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1jb25maWc+IEk8bmFtZT4iCittc2dzdHIgIkI8LS1saWNlbmNlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjMxNgorbXNnaWQgIiIKKyJTaG93IGF2YWlsYWJsZSBhbHRlcm5hdGl2ZXMgZm9yIGEgbGluayBncm91cCBhbmQgYWxsb3cgdGhlIHVzZXIgdG8gIgorImludGVyYWN0aXZlbHkgc2VsZWN0IHdoaWNoIG9uZSB0byB1c2UuIFRoZSBsaW5rIGdyb3VwIGlzIHVwZGF0ZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzI0CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1hbHRkaXI+STwgZGlyZWN0b3J5PiIKK21zZ3N0ciAiQjxTZWN0aW9uOj4gRTxsdD5zemFrYXN6RTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMjgKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRoZSBhbHRlcm5hdGl2ZXMgZGlyZWN0b3J5LCB3aGVuIHRoaXMgaXMgdG8gYmUgZGlmZmVyZW50IGZyb20gdGhlICIKKyJkZWZhdWx0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzMyCittc2dpZCAiIgorIlNwZWNpZmllcyB0aGUgYWRtaW5pc3RyYXRpdmUgZGlyZWN0b3J5LCB3aGVuIHRoaXMgaXMgdG8gYmUgZGlmZmVyZW50IGZyb20gIgorInRoZSBkZWZhdWx0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjMzMgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tbG9nPkk8IGZpbGU+IgorbXNnc3RyICJCPC0tbGljZW5jZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMzYKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRoZSBsb2cgZmlsZSwgd2hlbiB0aGlzIGlzIHRvIGJlIGRpZmZlcmVudCBmcm9tIHRoZSBkZWZhdWx0ICgvdmFyLyIKKyJsb2cvYWx0ZXJuYXRpdmVzLmxvZykuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozNDAKK21zZ2lkICIiCisiTGV0IEI8dXBkYXRlLWFsdGVybmF0aXZlcz4gcmVwbGFjZSBvciBkcm9wIGFueSByZWFsIGZpbGUgdGhhdCBpcyBpbnN0YWxsZWQgIgorIndoZXJlIGFuIGFsdGVybmF0aXZlIGxpbmsgaGFzIHRvIGJlIGluc3RhbGxlZCBvciByZW1vdmVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM0MAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tc2tpcC1hdXRvPiIKK21zZ3N0ciAiQjwtLW5ldz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozNDUKK21zZ2lkICIiCisiU2tpcCBjb25maWd1cmF0aW9uIHByb21wdCBmb3IgYWx0ZXJuYXRpdmVzIHdoaWNoIGFyZSBwcm9wZXJseSBjb25maWd1cmVkIGluICIKKyJhdXRvbWF0aWMgbW9kZS4gVGhpcyBvcHRpb24gaXMgb25seSByZWxldmFudCB3aXRoIEI8LS1jb25maWc+IG9yIEI8LS1hbGw+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM0NQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tdmVyYm9zZT4iCittc2dzdHIgIkI8LS12ZXJzaW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM1MAorbXNnaWQgIkdlbmVyYXRlIG1vcmUgY29tbWVudHMgYWJvdXQgd2hhdCBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IGlzIGRvaW5nLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzUzCittc2dpZCAiRG9uJ3QgZ2VuZXJhdGUgYW55IGNvbW1lbnRzIHVubGVzcyBlcnJvcnMgb2NjdXIuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozNTkKK21zZ2lkICIiCisiSWYgc2V0IGFuZCB0aGUgQjwtLWFkbWluZGlyPiBvcHRpb24gaGFzIG5vdCBiZWVuIHNwZWNpZmllZCwgaXQgd2lsbCBiZSB1c2VkICIKKyJhcyB0aGUgYmFzZSBhZG1pbmlzdHJhdGl2ZSBkaXJlY3RvcnkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzYxCisjLCBuby13cmFwCittc2dpZCAiSTwvZXRjL2FsdGVybmF0aXZlcy8+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozNjcKK21zZ2lkICIiCisiVGhlIGRlZmF1bHQgYWx0ZXJuYXRpdmVzIGRpcmVjdG9yeS4gIENhbiBiZSBvdmVycmlkZGVuIGJ5IHRoZSBCPC0tYWx0ZGlyPiAiCisib3B0aW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM2NworIywgbm8td3JhcAorbXNnaWQgIkk8L3Zhci9saWIvZHBrZy9hbHRlcm5hdGl2ZXMvPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzczCittc2dpZCAiIgorIlRoZSBkZWZhdWx0IGFkbWluaXN0cmF0aW9uIGRpcmVjdG9yeS4gIENhbiBiZSBvdmVycmlkZGVuIGJ5IHRoZSBCPC0tIgorImFkbWluZGlyPiBvcHRpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozNzgKK21zZ2lkICJUaGUgcmVxdWVzdGVkIGFjdGlvbiB3YXMgc3VjY2Vzc2Z1bGx5IHBlcmZvcm1lZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM4MgorbXNnaWQgIiIKKyJQcm9ibGVtcyB3ZXJlIGVuY291bnRlcmVkIHdoaWxzdCBwYXJzaW5nIHRoZSBjb21tYW5kIGxpbmUgb3IgcGVyZm9ybWluZyB0aGUgIgorImFjdGlvbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozODMKKyMsIG5vLXdyYXAKK21zZ2lkICJRVUVSWSBGT1JNQVQiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM4OAorbXNnaWQgIiIKKyJUaGUgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzIC0tcXVlcnk+IGZvcm1hdCBpcyB1c2luZyBhbiBSRkM4MjItbGlrZSBmbGF0ICIKKyJmb3JtYXQuIEl0J3MgbWFkZSBvZiBJPG4+ICsgMSBibG9ja3Mgd2hlcmUgSTxuPiBpcyB0aGUgbnVtYmVyIG9mICIKKyJhbHRlcm5hdGl2ZXMgYXZhaWxhYmxlIGluIHRoZSBxdWVyaWVkIGxpbmsgZ3JvdXAuIFRoZSBmaXJzdCBibG9jayBjb250YWlucyAiCisidGhlIGZvbGxvd2luZyBmaWVsZHM6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6Mzg4CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8TGluazo+STwgbGluaz4iCittc2dzdHIgIkI8U291cmNlOj4gRTxsdD5mb3Jyw6FzIG7DqXZFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM5MQorbXNnaWQgIlRoZSBnZW5lcmljIG5hbWUgb2YgdGhlIGFsdGVybmF0aXZlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM5MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPFN0YXR1czo+STwgc3RhdHVzPiIKK21zZ3N0ciAiQjxSZXBsYWNlczo+IEU8bHQ+Y3NvbWFnIGxpc3RhRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozOTQKK21zZ2lkICJUaGUgc3RhdHVzIG9mIHRoZSBhbHRlcm5hdGl2ZSAoQjxhdXRvPiBvciBCPG1hbnVhbD4pLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM5NAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPEJlc3Q6Pkk8IGJlc3QtY2hvaWNlPiIKK21zZ3N0ciAiQjxSZXBsYWNlczo+IEU8bHQ+Y3NvbWFnIGxpc3RhRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozOTgKK21zZ2lkICIiCisiVGhlIHBhdGggb2YgdGhlIGJlc3QgYWx0ZXJuYXRpdmUgZm9yIHRoaXMgbGluayBncm91cC4gTm90IHByZXNlbnQgaWYgdGhlcmUgIgorImlzIG5vIGFsdGVybmF0aXZlcyBhdmFpbGFibGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6Mzk4CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8VmFsdWU6Pkk8IGN1cnJlbnRseS1zZWxlY3RlZC1hbHRlcm5hdGl2ZT4iCittc2dzdHIgIkI8U291cmNlOj4gRTxsdD5mb3Jyw6FzIG7DqXZFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQwMgorbXNnaWQgIiIKKyJUaGUgcGF0aCBvZiB0aGUgY3VycmVudGx5IHNlbGVjdGVkIGFsdGVybmF0aXZlLiBJdCBjYW4gYWxzbyB0YWtlIHRoZSBtYWdpYyAiCisidmFsdWUgQjxub25lPi4gSXQgaXMgdXNlZCBpZiB0aGUgbGluayBkb2Vzbid0IGV4aXN0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQwMworIywgbm8td3JhcAorbXNnaWQgIlRoZSBvdGhlciBibG9ja3MgZGVzY3JpYmUgdGhlIGF2YWlsYWJsZSBhbHRlcm5hdGl2ZXMgaW4gdGhlIHF1ZXJpZWQgbGluayBncm91cDoiCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0MDUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPEFsdGVybmF0aXZlOj5JPCBwYXRoLW9mLXRoaXMtYWx0ZXJuYXRpdmU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0MDgKK21zZ2lkICJQYXRoIHRvIHRoaXMgYmxvY2sncyBhbHRlcm5hdGl2ZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0MDgKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxQcmlvcml0eTo+STwgcHJpb3JpdHktdmFsdWU+IgorbXNnc3RyICJCPFByaW9yaXR5Oj4gRTxsdD5lbHPFkWJic8OpZ0U8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDExCittc2dpZCAiVmFsdWUgb2YgdGhlIHByaW9yaXR5IG9mIHRoaXMgYWx0ZXJuYXRpdmUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDExCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8U2xhdmVzOj5JPCBsaXN0LW9mLXNsYXZlcz4iCittc2dzdHIgIkI8UmVwbGFjZXM6PiBFPGx0PmNzb21hZyBsaXN0YUU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDE3Cittc2dpZCAiIgorIldoZW4gdGhpcyBoZWFkZXIgaXMgcHJlc2VudCwgdGhlIEI8bmV4dD4gbGluZXMgaG9sZCBhbGwgc2xhdmUgYWx0ZXJuYXRpdmVzICIKKyJhc3NvY2lhdGVkIHRvIHRoZSBtYXN0ZXIgbGluayBvZiB0aGUgYWx0ZXJuYXRpdmUuIFRoZXJlIGlzIG9uZSBzbGF2ZSBwZXIgIgorImxpbmUuIEVhY2ggbGluZSBjb250YWlucyBvbmUgc3BhY2UsIHRoZSBnZW5lcmljIG5hbWUgb2YgdGhlIHNsYXZlICIKKyJhbHRlcm5hdGl2ZSwgYW5vdGhlciBzcGFjZSwgYW5kIHRoZSBwYXRoIHRvIHRoZSBzbGF2ZSBhbHRlcm5hdGl2ZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0MTgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPEV4YW1wbGU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0MjYKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiJCB1cGRhdGUtYWx0ZXJuYXRpdmVzIC0tcXVlcnkgZWRpdG9yXG4iCisiTGluazogZWRpdG9yXG4iCisiU3RhdHVzOiBhdXRvXG4iCisiQmVzdDogL3Vzci9iaW4vdmltLmd0a1xuIgorIlZhbHVlOiAvdXNyL2Jpbi92aW0uZ3RrXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQzMQorIywgbm8td3JhcAorbXNnaWQgIiIKKyJBbHRlcm5hdGl2ZTogL2Jpbi9lZFxuIgorIlByaW9yaXR5OiAtMTAwXG4iCisiU2xhdmVzOlxuIgorIiBlZGl0b3IuMS5neiAvdXNyL3NoYXJlL21hbi9tYW4xL2VkLjEuZ3pcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDQ2CisjLCBuby13cmFwCittc2dpZCAiIgorIkFsdGVybmF0aXZlOiAvdXNyL2Jpbi92aW0uZ3RrXG4iCisiUHJpb3JpdHk6IDUwXG4iCisiU2xhdmVzOlxuIgorIiBlZGl0b3IuMS5neiAvdXNyL3NoYXJlL21hbi9tYW4xL3ZpbS4xLmd6XG4iCisiIGVkaXRvci5ydS4xLmd6IC91c3Ivc2hhcmUvbWFuL3J1L21hbjEvdmltLjEuZ3pcbiIKKyIgZWRpdG9yLnBsLklTTzg4NTktMi4xLmd6IC91c3Ivc2hhcmUvbWFuL3BsLklTTzg4NTktMi9tYW4xL3ZpbS4xLmd6XG4iCisiIGVkaXRvci5pdC5JU084ODU5LTEuMS5neiAvdXNyL3NoYXJlL21hbi9pdC5JU084ODU5LTEvbWFuMS92aW0uMS5nelxuIgorIiBlZGl0b3IucGwuVVRGLTguMS5neiAvdXNyL3NoYXJlL21hbi9wbC5VVEYtOC9tYW4xL3ZpbS4xLmd6XG4iCisiIGVkaXRvci5pdC4xLmd6IC91c3Ivc2hhcmUvbWFuL2l0L21hbjEvdmltLjEuZ3pcbiIKKyIgZWRpdG9yLmZyLlVURi04LjEuZ3ogL3Vzci9zaGFyZS9tYW4vZnIuVVRGLTgvbWFuMS92aW0uMS5nelxuIgorIiBlZGl0b3IuZnIuMS5neiAvdXNyL3NoYXJlL21hbi9mci9tYW4xL3ZpbS4xLmd6XG4iCisiIGVkaXRvci5pdC5VVEYtOC4xLmd6IC91c3Ivc2hhcmUvbWFuL2l0LlVURi04L21hbjEvdmltLjEuZ3pcbiIKKyIgZWRpdG9yLnBsLjEuZ3ogL3Vzci9zaGFyZS9tYW4vcGwvbWFuMS92aW0uMS5nelxuIgorIiBlZGl0b3IuZnIuSVNPODg1OS0xLjEuZ3ogL3Vzci9zaGFyZS9tYW4vZnIuSVNPODg1OS0xL21hbjEvdmltLjEuZ3pcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDU4Cittc2dpZCAiIgorIldpdGggQjwtLXZlcmJvc2U+IEI8dXBkYXRlLWFsdGVybmF0aXZlcz4gY2hhdHRlcnMgaW5jZXNzYW50bHkgYWJvdXQgaXRzICIKKyJhY3Rpdml0aWVzIG9uIGl0cyBzdGFuZGFyZCBvdXRwdXQgY2hhbm5lbC4gIElmIHByb2JsZW1zIG9jY3VyLCBCPHVwZGF0ZS0iCisiYWx0ZXJuYXRpdmVzPiBvdXRwdXRzIGVycm9yIG1lc3NhZ2VzIG9uIGl0cyBzdGFuZGFyZCBlcnJvciBjaGFubmVsIGFuZCAiCisicmV0dXJucyBhbiBleGl0IHN0YXR1cyBvZiAyLiAgVGhlc2UgZGlhZ25vc3RpY3Mgc2hvdWxkIGJlIHNlbGYtZXhwbGFuYXRvcnk7ICIKKyJpZiB5b3UgZG8gbm90IGZpbmQgdGhlbSBzbywgcGxlYXNlIHJlcG9ydCB0aGlzIGFzIGEgYnVnLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDY0Cittc2dpZCAiIgorIlRoZXJlIGFyZSBzZXZlcmFsIHBhY2thZ2VzIHdoaWNoIHByb3ZpZGUgYSB0ZXh0IGVkaXRvciBjb21wYXRpYmxlIHdpdGggIgorIkI8dmk+LCBmb3IgZXhhbXBsZSBCPG52aT4gYW5kIEI8dmltPi4gV2hpY2ggb25lIGlzIHVzZWQgaXMgY29udHJvbGxlZCBieSB0aGUgIgorImxpbmsgZ3JvdXAgQjx2aT4sIHdoaWNoIGluY2x1ZGVzIGxpbmtzIGZvciB0aGUgcHJvZ3JhbSBpdHNlbGYgYW5kIHRoZSAiCisiYXNzb2NpYXRlZCBtYW5wYWdlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDY3Cittc2dpZCAiIgorIlRvIGRpc3BsYXkgdGhlIGF2YWlsYWJsZSBwYWNrYWdlcyB3aGljaCBwcm92aWRlIEI8dmk+IGFuZCB0aGUgY3VycmVudCAiCisic2V0dGluZyBmb3IgaXQsIHVzZSB0aGUgQjwtLWRpc3BsYXk+IGFjdGlvbjoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQ3MAorbXNnaWQgIkI8dXBkYXRlLWFsdGVybmF0aXZlcyAtLWRpc3BsYXkgdmk+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0NzQKK21zZ2lkICIiCisiVG8gY2hvb3NlIGEgcGFydGljdWxhciBCPHZpPiBpbXBsZW1lbnRhdGlvbiwgdXNlIHRoaXMgY29tbWFuZCBhcyByb290IGFuZCAiCisidGhlbiBzZWxlY3QgYSBudW1iZXIgZnJvbSB0aGUgbGlzdDoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQ3NworbXNnaWQgIkI8dXBkYXRlLWFsdGVybmF0aXZlcyAtLWNvbmZpZyB2aT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQ4MQorbXNnaWQgIiIKKyJUbyBnbyBiYWNrIHRvIGhhdmluZyB0aGUgQjx2aT4gaW1wbGVtZW50YXRpb24gY2hvc2VuIGF1dG9tYXRpY2FsbHksIGRvIHRoaXMgIgorImFzIHJvb3Q6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0ODQKK21zZ2lkICJCPHVwZGF0ZS1hbHRlcm5hdGl2ZXMgLS1hdXRvIHZpPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDg4Cittc2dpZCAiIgorIklmIHlvdSBmaW5kIGEgYnVnLCBwbGVhc2UgcmVwb3J0IGl0IHVzaW5nIHRoZSBEZWJpYW4gYnVnLXRyYWNraW5nIHN5c3RlbS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQ5MworbXNnaWQgIiIKKyJJZiB5b3UgZmluZCBhbnkgZGlzY3JlcGFuY3kgYmV0d2VlbiB0aGUgb3BlcmF0aW9uIG9mIEI8dXBkYXRlLWFsdGVybmF0aXZlcz4gIgorImFuZCB0aGlzIG1hbnVhbCBwYWdlLCBpdCBpcyBhIGJ1ZywgZWl0aGVyIGluIHRoZSBpbXBsZW1lbnRhdGlvbiBvciB0aGUgIgorImRvY3VtZW50YXRpb247IHBsZWFzZSByZXBvcnQgaXQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo1MDQKK21zZ2lkICIiCisiVGhpcyBtYW51YWwgcGFnZSBpcyBjb3B5cmlnaHQgMTk5NywxOTk4IENoYXJsZXMgQnJpc2NvZS1TbWl0aCBhbmQgb3RoZXJzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NTA3CisjLCBmdXp6eQorbXNnaWQgIiIKKyJUaGlzIGlzIGZyZWUgZG9jdW1lbnRhdGlvbjsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSB2ZXJzaW9uIDIgb3IgIgorImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIFdBUlJBTlRZLiIKK21zZ3N0ciAiIgorIkEgQjxkcGtnLWRlYj4gw6lzIGUgbWFub2xkYWwgc3plcnrFkWplIElhbiBKYWNrc29uLiAgxZAgYWR0YSBob3p6w6EgYSBDb3B5cmlnaHQgIgorIihDKTE5OTUtMTk5NiBiZWplZ3l6w6lzdCDDqXMgYWR0YSBraSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSBhbGF0dDsgTklOQ1MgIgorIkdBUkFOQ0lBLiBMw6FzZCBhIEk8L3Vzci9zaGFyZS9kb2MvZHBrZy9jb3B5cmlnaHQ+IMOpcyBJPC91c3Ivc2hhcmUvY29tbW9uLSIKKyJsaWNlbnNlcy9HUEw+IGbDoWpsdCBhIHLDqXN6bGV0ZWvDqXJ0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjUxMAorbXNnaWQgIkI8bG4+KDEpLCBGSFMsIHRoZSBGaWxlc3lzdGVtIEhpZXJhcmNoeSBTdGFuZGFyZC4iCittc2dzdHIgIiIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA5LTAyLTI3IgorI34gbXNnc3RyICIyMDA2LTAyLTI4IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMTEtMDQtMjkiCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyN+IG1zZ2lkICIyMDA2LTAyLTI4IgorI34gbXNnc3RyICIyMDA2LTAyLTI4IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDctMDMtMDciCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwNy0wNy0xNiIKKyN+IG1zZ3N0ciAiMjAwNi0wNi0xNyIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA5LTAzLTE1IgorI34gbXNnc3RyICIyMDA2LTAyLTI4IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMTEtMDQtMjciCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAxMS0wNy0wNyIKKyN+IG1zZ3N0ciAiMjAwNi0wMi0yOCIKKworIywgZnV6enkKKyN+fCBtc2dpZCAiMjAwNi0wMi0yOCIKKyN+IG1zZ2lkICIyMDEwLTA0LTE4IgorI34gbXNnc3RyICIyMDA2LTAyLTI4IgorCisjLCBmdXp6eQorI358IG1zZ2lkICJkc2VsZWN0LmNmZyAtIGRzZWxlY3QgY29uZmlndXJhdGlvbiBmaWxlIgorI34gbXNnaWQgIlBhY2thZ2UgbWFpbnRhaW5lciBjb25maWd1cmF0aW9uIGZpbGUuIgorI34gbXNnc3RyICJkc2VsZWN0LmNmZyAtIGRzZWxlY3Qga29uZmlndXLDoWNpw7NzIGbDoWpsIgorCisjLCBmdXp6eQorI358IG1zZ2lkICIyMDA2LTAyLTI4IgorI34gbXNnaWQgIjIwMTAtMDctMjkiCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyN+IG1zZ2lkICJCPFBhY2thZ2U6PiBFPGx0PnBhY2thZ2UgbmFtZUU8Z3Q+IgorI34gbXNnc3RyICJCPFBhY2thZ2U6PiBFPGx0PmNzb21hZyBuw6l2RTxndD4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAxMC0xMS0yMiIKKyN+IG1zZ3N0ciAiMjAwNi0wMi0yOCIKKworIywgZnV6enkKKyN+fCBtc2dpZCAiQjxTb3VyY2U6PiBFPGx0PnNvdXJjZSBuYW1lRTxndD4iCisjfiBtc2dpZCAiQjxNdWx0aS1BcmNoOj4gRTxsdD5zYW1lfGZvcmVpZ258YWxsb3dlZEU8Z3Q+ICIKKyN+IG1zZ3N0ciAiQjxTb3VyY2U6PiBFPGx0PmZvcnLDoXMgbsOpdkU8Z3Q+IgorCisjLCBmdXp6eQorI358IG1zZ2lkICIyMDA2LTAyLTI4IgorI34gbXNnaWQgIjIwMTAtMDEtMjgiCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwOC0wOC0xOCIKKyN+IG1zZ3N0ciAiMjAwNi0wMi0yOCIKKworIywgZnV6enkKKyN+IG1zZ2lkICJCPC0tbmV3PiwgQjwtLW9sZD4iCisjfiBtc2dzdHIgIkI8LS1pbmZvPiwgQjwtST4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwOS0wOC0xNSIKKyN+IG1zZ3N0ciAiMjAwNi0wMi0yOCIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA5LTExLTIxIgorI34gbXNnc3RyICIyMDA2LTAyLTI4IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMTAtMDMtMDciCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgIjIwMDYtMDItMjgiCisjfiBtc2dpZCAiMjAxMC0xMC0xMiIKKyN+IG1zZ3N0ciAiMjAwNi0wMi0yOCIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA5LTA4LTA3IgorI34gbXNnc3RyICIyMDA2LTAyLTI4IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMTAtMDQtMTYiCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwOS0wNS0xOSIKKyN+IG1zZ3N0ciAiMjAwNi0wNi0xNyIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA5LTEwLTAxIgorI34gbXNnc3RyICIyMDA2LTAyLTI4IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDktMDYtMjYiCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwOS0wNS0xMCIKKyN+IG1zZ3N0ciAiMjAwNi0wNi0xNyIKKworIywgZnV6enkKKyN+IG1zZ2lkICJCPC0tYWRtaW5kaXI+STwgRTxsdD5kaXJlY3RvcnlFPGd0Pj4iCisjfiBtc2dzdHIgIkI8U2VjdGlvbjo+IEU8bHQ+c3pha2FzekU8Z3Q+IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDktMDMtMDgiCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwOS0xMS0xMSIKKyN+IG1zZ3N0ciAiMjAwNi0wMi0yOCIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA5LTAyLTI2IgorI34gbXNnc3RyICIyMDA2LTAyLTI4IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDktMDQtMTMiCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwNy0xMC0wOCIKKyN+IG1zZ3N0ciAiMjAwNi0wMi0yOCIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDEwLTA0LTExIgorI34gbXNnc3RyICIyMDA2LTAyLTI4IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDktMTEtMTIiCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjwtLWxpY2VuY2U+LCBCPC0tbGljZW5zZT4iCisjfiBtc2dzdHIgIkI8LS1saWNlbmNlPiIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA5LTA2LTEzIgorI34gbXNnc3RyICIyMDA2LTAyLTI4IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDktMDEtMDciCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjwtLWxpY2Vuc2U+LCBCPC0tbGljZW5jZT4iCisjfiBtc2dzdHIgIkI8LS1saWNlbmNlPiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJCPC1sPiwgQjwtLWxpY2Vuc2U+IgorI34gbXNnc3RyICJCPC0tbGljZW5jZT4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwOS0wOS0wNiIKKyN+IG1zZ3N0ciAiMjAwNi0wMi0yOCIKKworIywgZnV6enkKKyN+IG1zZ2lkICJCPC1JPltJPGZpbGUtcGF0dGVybj5dIgorI34gbXNnc3RyICJCPC0tbGljZW5jZT4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwOS0wOC0yMCIKKyN+IG1zZ3N0ciAiMjAwNi0wMi0yOCIKKworIywgZnV6enkKKyN+IG1zZ2lkICJCPC0tbGljZW5jZT58QjwtLWxpY2Vuc2U+IgorI34gbXNnc3RyICJCPC0tbGljZW5jZT4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjwtaD4iCisjfiBtc2dzdHIgIkI8LS1uZXc+IgorCisjLCBmdXp6eQorI34gbXNnaWQgIkI8LS13aXRob3V0LXF1aWx0PiIKKyN+IG1zZ3N0ciAiQjwtLW5ldz4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwOC0wNC0wOSIKKyN+IG1zZ3N0ciAiMjAwNi0wMi0yOCIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA3LTAzLTA2IgorI34gbXNnc3RyICIyMDA2LTAyLTI4IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDctMDYtMTIiCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwOS0wMS0wNCIKKyN+IG1zZ3N0ciAiMjAwNi0wMi0yOCIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA5LTAyLTE4IgorI34gbXNnc3RyICIyMDA2LTAyLTI4IgorCisjLCBmdXp6eQorI34gbXNnaWQgIkI8LS1yZW1vdmU+IgorI34gbXNnc3RyICJCPC0tbmV3PiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJCPC0taW5mb2Rpcj0+STxpbmZvZGlyPiIKKyN+IG1zZ3N0ciAiQjwtLXNob3dmb3JtYXQ9Pkk8Zm9ybcOhdHVtPiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJCPC0ta2VlcC1vbGQ+IgorI34gbXNnc3RyICJCPC0tb2xkPiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJCPGVtYWNzPigxKSwgQjxpbmZvPigxKSwgQjxnemlwKDEpLj4iCisjfiBtc2dzdHIgIkI8ZGViPig1KSwgQjxkcGtnPigxKSwgQjxkcGtnLWRlYj4oMSkuIgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDctMDEtMjQiCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjwtLXVuc2FmZT4iCisjfiBtc2dzdHIgIkI8LS1uZXc+IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDgtMDEtMzAiCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjxFcnJvcjo+IEU8bHQ+ZXJyb3IgZGV0YWlsc0U8Z3Q+IgorI34gbXNnc3RyICJCPFByaW9yaXR5Oj4gRTxsdD5lbHPFkWJic8OpZ0U8Z3Q+IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDctMTAtMDYiCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwOC0wMy0xNCIKKyN+IG1zZ3N0ciAiMjAwNi0wMi0yOCIKKworIywgZnV6enkKKyN+IG1zZ2lkICJCPC1FPiIKKyN+IG1zZ3N0ciAiQjwtLW5ldz4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjwtVz4iCisjfiBtc2dzdHIgIkI8LS1uZXc+IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDctMDktMDgiCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyN+IG1zZ2lkICIiCisjfiAiVGhlcmUgaXMgbm8gYXV0aGVudGljYXRpb24gb24gQjwuZGViPiBmaWxlczsgaW4gZmFjdCwgdGhlcmUgaXNuJ3QgZXZlbiBhICIKKyN+ICJzdHJhaWdodGZvcndhcmQgY2hlY2tzdW0uIgorI34gbXNnc3RyICIiCisjfiAiTmluY3MgaGl0ZWxlc8OtdMOpcyBhIEI8ZGViPiBmw6FqbG9raG96OyBpbGxldHZlIG5pbmNzIGVsbGVuxZFyesWRIMO2c3N6ZWcuIChFeiAiCisjfiAibWVnb2xkdmEgLSBhIGZvcmTDrXTDsykiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwOC0wMy0wMiIKKyN+IG1zZ3N0ciAiMjAwNi0wMi0yOCIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA4LTAxLTEzIgorI34gbXNnc3RyICIyMDA2LTAyLTI4IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDgtMDMtMjUiCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwOC0wMy0xNiIKKyN+IG1zZ3N0ciAiMjAwNi0wMi0yOCIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA4LTA0LTA4IgorI34gbXNnc3RyICIyMDA2LTAyLTI4IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDgtMDEtMDMiCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwNy0wOS0yNCIKKyN+IG1zZ3N0ciAiMjAwNi0wMi0yOCIKKworIywgZnV6enkKKyN+IG1zZ2lkICJCPC1iPiBJPGRpcmVjdG9yeT4gW0k8b3JpZy1kaXJlY3Rvcnk+fEk8b3JpZy10YXJnej58XFwoYXFcXChhcV0iCisjfiBtc2dzdHIgIkI8ZHBrZy1kZWI+IEI8LWI+fEI8LS1idWlsZD4gSTxrw7ZueXZ0w6FyPiBbSTxhcmNow612dW0+fEk8a8O2bnl2dMOhcj5dIgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDctMDMtMDgiCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwNy0wOS0yOCIKKyN+IG1zZ3N0ciAiMjAwNi0wMi0yOCIKKworIywgZnV6enkKKyN+IG1zZ2lkICIiCisjfiAiU2VlIEk8L3Vzci9zaGFyZS9kb2MvZHBrZy9USEFOS1M+IGZvciB0aGUgbGlzdCBvZiBwZW9wbGUgd2hvIGhhdmVcbiIKKyN+ICJjb250cmlidXRlZCB0byBCPGRwa2c+LlxuIgorI34gbXNnc3RyICIiCisjfiAiTMOhc2QgYSBJPC91c3Ivc2hhcmUvZG9jL2Rwa2cvVEhBTktTPiBmw6FqbHQsIG1lbHliZW4gYSBCPGRwa2c+IGvDqXN6w610w6lzw6l0ICIKKyN+ICJzZWfDrXTFkSBzemVtw6lseWVrIGxpc3TDoWphIHRhbMOhbGhhdMOzLiIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA3LTA4LTMxIgorI34gbXNnc3RyICIyMDA2LTA2LTE3IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDctMDUtMTUiCisjfiBtc2dzdHIgIjIwMDYtMDYtMTciCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjxkcGtnIC0taGVscD4iCisjfiBtc2dzdHIgIkI8LS1oZWxwPiwgQjwtaD4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjxkcGtnIC0tdmVyc2lvbj4iCisjfiBtc2dzdHIgIkI8LS12ZXJzaW9uPiIKKworIywgZnV6enkKKyN+IG1zZ2lkICIiCisjfiAiQjxkcGtnLWRlYj4gYW5kIHRoaXMgbWFucGFnZSB3ZXJlIHdyaXR0ZW4gYnkgSWFuIEphY2tzb24uICBUaGV5IGFyZSAiCisjfiAiQ29weXJpZ2h0IChDKSAxOTk1LTE5OTYgYnkgaGltIGFuZCByZWxlYXNlZCB1bmRlciB0aGUgR05VIEdlbmVyYWwgUHVibGljICIKKyN+ICJMaWNlbmNlIHZlcnNpb24gMiBvciBsYXRlcjsgdGhlcmUgaXMgTk8gV0FSUkFOVFkuIFNlZSBJPC91c3Ivc2hhcmUvZG9jLyIKKyN+ICJkcGtnL2NvcHlyaWdodD4gYW5kIEk8L3Vzci9zaGFyZS9jb21tb24tbGljZW5zZXMvR1BMPiBmb3IgZGV0YWlscy4iCisjfiBtc2dzdHIgIiIKKyN+ICJBIEI8ZHBrZy1kZWI+IMOpcyBlIG1hbm9sZGFsIHN6ZXJ6xZFqZSBJYW4gSmFja3Nvbi4gIMWQIGFkdGEgaG96esOhIGEgIgorI34gIkNvcHlyaWdodCAoQykxOTk1LTE5OTYgYmVqZWd5esOpc3Qgw6lzIGFkdGEga2kgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgIgorI34gImFsYXR0OyBOSU5DUyBHQVJBTkNJQS4gTMOhc2QgYSBJPC91c3Ivc2hhcmUvZG9jL2Rwa2cvY29weXJpZ2h0PiDDqXMgSTwvdXNyLyIKKyN+ICJzaGFyZS9jb21tb24tbGljZW5zZXMvR1BMPiBmw6FqbHQgYSByw6lzemxldGVrw6lydC4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiIgorI34gIkI8ZHBrZy1zcGxpdD4gYW5kIHRoaXMgbWFucGFnZSB3ZXJlIHdyaXR0ZW4gYnkgSWFuIEphY2tzb24uIFRoZXkgYXJlICIKKyN+ICJDb3B5cmlnaHQgKEMpIDE5OTUtMTk5NiBieSBoaW0gYW5kIHJlbGVhc2VkIHVuZGVyIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgIgorI34gIkxpY2VuY2UgdmVyc2lvbiAyIG9yIGxhdGVyOyB0aGVyZSBpcyBOTyBXQVJSQU5UWS4gU2VlIEk8L3Vzci9zaGFyZS9kb2MvIgorI34gImRwa2cvY29weXJpZ2h0PiBhbmQgSTwvdXNyL3NoYXJlL2NvbW1vbi1saWNlbnNlcy9HUEw+IGZvciBkZXRhaWxzLiIKKyN+IG1zZ3N0ciAiIgorI34gIkEgQjxkcGtnLWRlYj4gw6lzIGUgbWFub2xkYWwgc3plcnrFkWplIElhbiBKYWNrc29uLiAgxZAgYWR0YSBob3p6w6EgYSAiCisjfiAiQ29weXJpZ2h0IChDKTE5OTUtMTk5NiBiZWplZ3l6w6lzdCDDqXMgYWR0YSBraSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSAiCisjfiAiYWxhdHQ7IE5JTkNTIEdBUkFOQ0lBLiBMw6FzZCBhIEk8L3Vzci9zaGFyZS9kb2MvZHBrZy9jb3B5cmlnaHQ+IMOpcyBJPC91c3IvIgorI34gInNoYXJlL2NvbW1vbi1saWNlbnNlcy9HUEw+IGbDoWpsdCBhIHLDqXN6bGV0ZWvDqXJ0LiIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA2LTA0LTA5IgorI34gbXNnc3RyICIyMDA2LTAyLTI4IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDctMDMtMTMiCisjfiBtc2dzdHIgIjIwMDYtMDYtMTciCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjxkYXRlPigxKS4iCisjfiBtc2dzdHIgIkI8ZHBrZz4oMSkuIgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDYtMDUtMjMiCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyN+IG1zZ2lkICJCPGRwa2ctZGViPiBCPC1XPnxCPC0tc2hvdz4gW0I8LS1zaG93Zm9ybWF0Pj1JPGZvcm1hdD5dIEk8YXJjaGl2ZT4iCisjfiBtc2dzdHIgIiIKKyN+ICJCPGRwa2ctZGViPiBCPC1XPnxCPC0tc2hvdz4gW0I8LS1zaG93Zm9ybWF0Pj1JPGZvcm3DoXR1bT5dIEk8YXJjaMOtdnVtPiIKKworI34gbXNnaWQgIiIKKyN+ICJCPGRwa2ctZGViPiBCPC14PnxCPC0tZXh0cmFjdD58QjwtWD58QjwtLXZleHRyYWN0PiBJPGFyY2hpdmUgZGlyZWN0b3J5PiIKKyN+IG1zZ3N0ciAiIgorI34gIkI8ZHBrZy1kZWI+IEI8LXg+fEI8LS1leHRyYWN0PnxCPC1YPnxCPC0tdmV4dHJhY3Q+IEk8YXJjaMOtdnVtIGvDtm55dnTDoXI+IgorCisjfiBtc2dpZCAiIgorI34gIllvdSBjYW4gc3BlY2lmeSB0aGUgY29tcHJlc3Npb24gbGV2ZWwgdXNlZCBieSBhZGRpbmcgYSBCPC16Iz4gb3B0aW9uLiAgIgorI34gIkI8ZHBrZy1kZWI+IHdpbGwgcGFzcyB0aGF0IG9wdGlvbiBvbiB0byBnemlwLiIKKyN+IG1zZ3N0ciAiIgorI34gIkEgQjwteiM+IGxlaGV0xZFzw6lnZ2VsIG1lZ2FkaGF0w7MgYSB0w7Ztw7Zyw610w6FzaSBzemludC4gQSBCPGRwa2ctZGViPiDDoXRhZGphICIKKyN+ICJlenQgYSBnemlwLW5lay4uIgorCisjfiBtc2dpZCAiQjwtLWluZm8+LCBCPC1JPiIKKyN+IG1zZ3N0ciAiQjwtLWluZm8+LCBCPC1JPiIKKworI34gbXNnaWQgIkI8LS1zaG93PiwgQjwtVz4iCisjfiBtc2dzdHIgIkI8LS1zaG93PiwgQjwtVz4iCisKKyN+IG1zZ2lkICJCPC0tZmllbGQ+LCBCPC1mPiIKKyN+IG1zZ3N0ciAiQjwtLWZpZWxkPiwgQjwtZj4iCisKKyN+IG1zZ2lkICJCPC0tY29udGVudHM+LCBCPC1jPiIKKyN+IG1zZ3N0ciAiQjwtLWNvbnRlbnRzPiwgQjwtYz4iCisKKyN+IG1zZ2lkICJCPC0tZXh0cmFjdD4sIEI8LXg+LCBCPC0tdmV4dHJhY3Q+LCBCPC1YPiIKKyN+IG1zZ3N0ciAiQjwtLWV4dHJhY3Q+LCBCPC14PiwgQjwtLXZleHRyYWN0PiwgQjwtWD4iCisKKyN+IG1zZ2lkICJCPC0tZnN5cy10YXJmaWxlPiIKKyN+IG1zZ3N0ciAiQjwtLWZzeXMtdGFyZmlsZT4iCisKKyN+IG1zZ2lkICJCPC0tY29udHJvbD4sIEI8LWU+IgorI34gbXNnc3RyICJCPC0tY29udHJvbD4sIEI8LWU+IgorCisjfiBtc2dpZCAiQjwtLWhlbHA+LCBCPC1oPiIKKyN+IG1zZ3N0ciAiQjwtLWhlbHA+LCBCPC1oPiIKKworI34gbXNnaWQgIiIKKyN+ICJQcmludHMgQjxkcGtnLWRlYj4ncyB1c2FnZSBtZXNzYWdlLCBnaXZpbmcgYSBzdW1tYXJ5IG9mIGl0cyBvcHRpb25zIGFuZCAiCisjfiAidGhlaXIgdXNlcy4iCisjfiBtc2dzdHIgIiIKKyN+ICJLacOtcmphIGEgQjxkcGtnLWRlYj4gaGFzem7DoWxhdMOhdCwgbWVnYWR2YSBsZWhldMWRc8OpZ2VpIMOpcyBhem9rIGhhc3puw6FsYXRhICIKKyN+ICLDtnNzemVmb2dsYWzDs2rDoXQuIgorCisjfiBtc2dpZCAiUHJpbnRzIEI8ZHBrZy1kZWI+J3MgdmVyc2lvbiBudW1iZXIuIgorI34gbXNnc3RyICJLacOtcmphIGEgQjxkcGtnLWRlYj4gdmVyemnDs3N6w6Ftw6F0LiIKKworI34gbXNnaWQgIiIKKyN+ICJQcmludHMgaW5mb3JtYXRpb24gYWJvdXQgQjxkcGtnLWRlYj4ncyBjb3B5cmlnaHQgbGljZW5zaW5nIGFuZCBsYWNrIG9mICIKKyN+ICJ3YXJyYW50eS4gKFRoZSBBbWVyaWNhbiBzcGVsbGluZyBCPC0tbGljZW5zZT4gaXMgYWxzbyBzdXBwb3J0ZWQpLiIKKyN+IG1zZ3N0ciAiIgorI34gIktpw61yamEgYSBCPGRwa2ctZGViPiBzemVyesWRaSBqb2dpIGluZm9ybcOhY2nDs2l0LCBhIGZlbGhhc3puw6Fsw7NpIGVuZ2Vkw6lseXQgIgorI34gIihsaWNlbmMpIMOpcyBhIGdhcmFuY2lhIGhpw6FuecOhdC4gKEF6IGFtZXJpa2FpIEI8LS1saWNlbnNlPiBoZWx5ZXPDrXLDoXMgaXMgIgorI34gInTDoW1vZ2F0b3R0LikgIgorCisjfiBtc2dpZCAiT1RIRVIgT1BUSU9OUyIKKyN+IG1zZ3N0ciAiTcOBUyBMRUhFVMWQU8OJR0VLIgorCisjLCBmdXp6eQorI34gbXNnaWQgIkI8LWgsIC0taGVscD4iCisjfiBtc2dzdHIgIkI8LS1oZWxwPiwgQjwtaD4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjxkcGtnLXF1ZXJ5PiBCPC0tbGljZW5jZT58QjwtLWxpY2Vuc2U+IgorI34gbXNnc3RyICJCPGRwa2ctZGViPiBCPC1jPnxCPC0tY29udGVudHM+IEk8YXJjaMOtdnVtPiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJDT01NT04gT1BUSU9OUyIKKyN+IG1zZ3N0ciAiTcWwVkVMRVRJIExFSEVUxZBTw4lHRUsiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiZHBrZy1TT1VSQ0UgT1BUSU9OUyIKKyN+IG1zZ3N0ciAiTcOBUyBMRUhFVMWQU8OJR0VLIgorCisjLCBmdXp6eQorI34gbXNnaWQgIkI8LXg+IgorI34gbXNnc3RyICJCPC0tbmV3PiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJCPC1JRTxsdD5maWxlbmFtZUU8Z3Q+PiIKKyN+IG1zZ3N0ciAiQjxTb3VyY2U6PiBFPGx0PmZvcnLDoXMgbsOpdkU8Z3Q+IgorCisjLCBmdXp6eQorI34gbXNnaWQgIkI8LS1qb2luPiwgQjwtaj4iCisjfiBtc2dzdHIgIkI8LS1pbmZvPiwgQjwtST4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjwtLWRpc2NhcmQ+LCBCPC1kPiIKKyN+IG1zZ3N0ciAiQjwtLWJ1aWxkPiwgQjwtYj4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiIgorI34gIlByaW50cyBCPGRwa2ctc3BsaXQ+J3MgdXNhZ2UgbWVzc2FnZSwgZ2l2aW5nIGEgc3VtbWFyeSBvZiBpdHMgb3B0aW9ucyBhbmQgIgorI34gInRoZWlyIHVzZXMuIgorI34gbXNnc3RyICIiCisjfiAiS2nDrXJqYSBhIEI8ZHBrZy1kZWI+IGhhc3puw6FsYXTDoXQsIG1lZ2FkdmEgbGVoZXTFkXPDqWdlaSDDqXMgYXpvayBoYXN6bsOhbGF0YSAiCisjfiAiw7Zzc3plZm9nbGFsw7Nqw6F0LiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJQcmludHMgQjxkcGtnLXNwbGl0PidzIHZlcnNpb24gbnVtYmVyLiIKKyN+IG1zZ3N0ciAiS2nDrXJqYSBhIEI8ZHBrZy1kZWI+IHZlcnppw7NzesOhbcOhdC4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiIgorI34gIlByaW50cyBpbmZvcm1hdGlvbiBhYm91dCBCPGRwa2ctc3BsaXQ+J3MgY29weXJpZ2h0IGxpY2Vuc2luZyBhbmQgbGFjayBvZiAiCisjfiAid2FycmFudHkuIChUaGUgQW1lcmljYW4gc3BlbGxpbmcgQjwtLWxpY2Vuc2U+IGlzIGFsc28gc3VwcG9ydGVkLikiCisjfiBtc2dzdHIgIiIKKyN+ICJLacOtcmphIGEgQjxkcGtnLWRlYj4gc3plcnrFkWkgam9naSBpbmZvcm3DoWNpw7NpdCwgYSBmZWxoYXN6bsOhbMOzaSBlbmdlZMOpbHl0ICIKKyN+ICIobGljZW5jKSDDqXMgYSBnYXJhbmNpYSBoacOhbnnDoXQuIChBeiBhbWVyaWthaSBCPC0tbGljZW5zZT4gaGVseWVzw61yw6FzIGlzICIKKyN+ICJ0w6Ftb2dhdG90dC4pICIKKworIywgZnV6enkKKyN+IG1zZ2lkICJCPC0tbnBxdWlldD4sIEI8LVE+IgorI34gbXNnc3RyICJCPC0tYnVpbGQ+LCBCPC1iPiIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA3LTA3LTE4IgorI34gbXNnc3RyICIyMDA2LTA2LTE3IgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vcG8vamEuYWRkIGIvZHBrZy0xLjE2LjEuMS9tYW4vcG8vamEuYWRkCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjNlY2ZiMDgKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9wby9qYS5hZGQKQEAgLTAsMCArMSwxMiBAQAorUE80QS1IRUFERVI6bW9kZT1hZnRlcjtwb3NpdGlvbj1eXC5USDtiZWdpbmJvdW5kYXJ5PUZha2VQbzRhQm91bmRhcnkKKy5TSCDnv7voqLPogIUKK+mWouaIuCDlubjkuIAgPHNla2lkb0BtYm94Lmt5b3RvLWluZXQub3IuanA+Lgor6Y2L6LC3IOaghOWxlSA8bmFiZUBkZWJpYW4ub3IuanA+Lgor5YCJ5r6kIOacmyA8bmFiZXRhcm9AZGViaWFuLm9yLmpwPi4KK+efs+W3needpiA8aXNoaWthd2FAbGludXgub3IuanA+Lgor6bWc6aO85paH5pWPIDx1a2FpQGRlYmlhbi5vci5qcD4uCivllpzngKzmtakgPGtpc2VAZnV5dW5la28uanA+Lgor5Lit6YeO5q2m6ZuEIDxuYWthbm9AYXBtLnNlaWtlaS5hYy5qcD4uCivllpzngKzmtakgPGtpc2VAZnV5dW5la28uanA+LgorLlNIIOe/u+ios+agoeatoworRGViaWFuIEpQIERvY3VtZW50YXRpb24gTUwgPGRlYmlhbi1kb2NAZGViaWFuLm9yLmpwPi4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL3BvL2phLnBvIGIvZHBrZy0xLjE2LjEuMS9tYW4vcG8vamEucG8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTNkM2RmMgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL3BvL2phLnBvCkBAIC0wLDAgKzEsMTc5NjcgQEAKKyMgdHJhbnNsYXRpb24gb2YgdGhlIGRwa2cgbWFuIHBhZ2VzIHRvIEphcGFuZXNlCisjIFNPTUUgREVTQ1JJUFRJVkUgVElUTEUKKyMgQ29weXJpZ2h0IChDKSAyMDA2IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgorIyBLSVNFIEhpcm9zaGkgPGtpc2VAZnV5dW5la28uanA+LCAyMDA2LgorIworbXNnaWQgIiIKK21zZ3N0ciAiIgorIlByb2plY3QtSWQtVmVyc2lvbjogZHBrZyBtYW4gcGFnZXNcbiIKKyJQT1QtQ3JlYXRpb24tRGF0ZTogMjAxMS0xMC0xNCAwNzoxMSswMzAwXG4iCisiUE8tUmV2aXNpb24tRGF0ZTogMjAxMC0wMy0wNyAyMjoxNyswMTAwXG4iCisiTGFzdC1UcmFuc2xhdG9yOiBLSVNFIEhpcm9zaGkgPGtpc2VAZnV5dW5la28uanA+XG4iCisiTGFuZ3VhZ2UtVGVhbTogRGViaWFuIEphcGFuZXNlIExpc3QgPGRlYmlhbi1qYXBhbmVzZUBsaXN0cy5kZWJpYW4ub3JnPlxuIgorIkxhbmd1YWdlOiBcbiIKKyJNSU1FLVZlcnNpb246IDEuMFxuIgorIkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD1VVEYtOFxuIgorIkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXRcbiIKKworIy4gdHlwZTogVEgKKyM6IGRlYi41OjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkZWIiCittc2dzdHIgImRlYiIKKworIy4gdHlwZTogVEgKKyM6IGRlYi41OjEgZGViLWNvbnRyb2wuNTozIGRlYi1zcmMtY29udHJvbC41OjMgZGViLXZlcnNpb24uNTo1IGRlYi1vbGQuNToxCisjOiBkZWItb3ZlcnJpZGUuNToxNSBkZWItc3ltYm9scy41OjIgZGViLXRyaWdnZXJzLjU6MSBkcGtnLjE6MQorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxIGRwa2ctYnVpbGRwYWNrYWdlLjE6MSBkcGtnLWRlYi4xOjEgZHBrZy1kaXZlcnQuODoxCisjOiBkcGtnLWdlbmNoYW5nZXMuMToxIGRwa2ctZ2VuY29udHJvbC4xOjEgZHBrZy1nZW5zeW1ib2xzLjE6MgorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxIGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6MSBkcGtnLW5hbWUuMTo2CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MSBkcGtnLXF1ZXJ5LjE6MSBkcGtnLXNjYW5wYWNrYWdlcy4xOjE1CisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6MSBkcGtnLXNobGliZGVwcy4xOjEgZHBrZy1zb3VyY2UuMToyIGRwa2ctdHJpZ2dlci4xOjEKKyM6IGRzZWxlY3QuMToxIHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo4CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIjIwMTEtMDgtMTQiCittc2dzdHIgIjIwMDYtMDQtMDkiCisKKyMuIHR5cGU6IFRICisjOiBkZWIuNToxIGRlYi1jb250cm9sLjU6MyBkZWItc3JjLWNvbnRyb2wuNTozIGRlYi1zcGxpdC41OjEgZGViLXZlcnNpb24uNTo1CisjOiBkZWItb2xkLjU6MSBkZWItb3ZlcnJpZGUuNToxNSBkZWItZXh0cmEtb3ZlcnJpZGUuNToxIGRlYi1zaGxpYnMuNToxNgorIzogZGViLXN1YnN0dmFycy41OjIgZGViLXN5bWJvbHMuNToyIGRlYi10cmlnZ2Vycy41OjEgZHBrZy4xOjEKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MSBkcGtnLmNmZy41OjEgZHBrZy1idWlsZGZsYWdzLjE6MQorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxIGRwa2ctY2hlY2tidWlsZGRlcHMuMToxIGRwa2ctZGlzdGFkZGZpbGUuMToxCisjOiBkcGtnLWRlYi4xOjEgZHBrZy1kaXZlcnQuODoxIGRwa2ctZ2VuY2hhbmdlcy4xOjEgZHBrZy1nZW5jb250cm9sLjE6MQorIzogZHBrZy1nZW5zeW1ib2xzLjE6MiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjEgZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMToxCisjOiBkcGtnLW5hbWUuMTo2IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxIGRwa2ctcXVlcnkuMToxIGRwa2ctc2NhbnBhY2thZ2VzLjE6MTUKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMToxIGRwa2ctc2hsaWJkZXBzLjE6MSBkcGtnLXNvdXJjZS4xOjIgZHBrZy1zcGxpdC4xOjIKKyM6IGRwa2ctdHJpZ2dlci4xOjEgZHBrZy12ZW5kb3IuMToxIGRzZWxlY3QuMToxIGRzZWxlY3QuY2ZnLjU6MQorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxIHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo4CisjLCBuby13cmFwCittc2dpZCAiRGViaWFuIFByb2plY3QiCittc2dzdHIgIkRlYmlhbiBQcm9qZWN0IgorCisjLiB0eXBlOiBUSAorIzogZGViLjU6MSBkZWItY29udHJvbC41OjMgZGViLXNyYy1jb250cm9sLjU6MyBkZWItc3BsaXQuNToxIGRlYi12ZXJzaW9uLjU6NQorIzogZGViLW9sZC41OjEgZHNlbGVjdC4xOjEKKyMsIG5vLXdyYXAKK21zZ2lkICJEZWJpYW4iCittc2dzdHIgIkRlYmlhbiIKKworIy4gdHlwZTogU0gKKyM6IGRlYi41OjIgZGViLWNvbnRyb2wuNTo0IGRlYi1zcmMtY29udHJvbC41OjQgZGViLXNwbGl0LjU6MiBkZWItdmVyc2lvbi41OjYKKyM6IGRlYi1vbGQuNToyIGRlYi1vdmVycmlkZS41OjE2IGRlYi1leHRyYS1vdmVycmlkZS41OjIgZGViLXNobGlicy41OjE3CisjOiBkZWItc3Vic3R2YXJzLjU6MyBkZWItc3ltYm9scy41OjMgZGViLXRyaWdnZXJzLjU6MiBkcGtnLjE6MgorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyIGRwa2cuY2ZnLjU6MiBkcGtnLWJ1aWxkZmxhZ3MuMToyCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIgZHBrZy1jaGVja2J1aWxkZGVwcy4xOjIgZHBrZy1kaXN0YWRkZmlsZS4xOjIKKyM6IGRwa2ctZGViLjE6MiBkcGtnLWRpdmVydC44OjIgZHBrZy1nZW5jaGFuZ2VzLjE6MiBkcGtnLWdlbmNvbnRyb2wuMToyCisjOiBkcGtnLWdlbnN5bWJvbHMuMTozIGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjIKKyM6IGRwa2ctbmFtZS4xOjcgZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjIgZHBrZy1xdWVyeS4xOjIgZHBrZy1zY2FucGFja2FnZXMuMToxNgorIzogZHBrZy1zY2Fuc291cmNlcy4xOjIgZHBrZy1zaGxpYmRlcHMuMToyIGRwa2ctc291cmNlLjE6MyBkcGtnLXNwbGl0LjE6MworIzogZHBrZy1zdGF0b3ZlcnJpZGUuODoyIGRwa2ctdHJpZ2dlci4xOjIgZHBrZy12ZW5kb3IuMToyIGRzZWxlY3QuMToyCisjOiBkc2VsZWN0LmNmZy41OjIgc3RhcnQtc3RvcC1kYWVtb24uODoyIHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo5CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIk5BTUUiCittc2dzdHIgIiIKKyIjLSMtIy0jLSMgICAgIy0jLSMtIy0jXG4iCisi5ZCN5YmNXG4iCisiIy0jLSMtIy0jICAgICMtIy0jLSMtI1xuIgorIuWQjeensCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLjU6NAorbXNnaWQgImRlYiAtIERlYmlhbiBiaW5hcnkgcGFja2FnZSBmb3JtYXQiCittc2dzdHIgImRlYiAtIERlYmlhbiDjg5DjgqTjg4rjg6rjg5Hjg4PjgrHjg7zjgrjlvaLlvI8iCisKKyMuIHR5cGU6IFNICisjOiBkZWIuNTo0IGRlYi1jb250cm9sLjU6NyBkZWItc3JjLWNvbnRyb2wuNTo3IGRlYi1zcGxpdC41OjQgZGViLXZlcnNpb24uNTo5CisjOiBkZWItb2xkLjU6NSBkZWItb3ZlcnJpZGUuNToxOSBkZWItZXh0cmEtb3ZlcnJpZGUuNTo1IGRlYi1zdWJzdHZhcnMuNTo2CisjOiBkZWItc3ltYm9scy41OjYgZGViLXRyaWdnZXJzLjU6NSBkcGtnLjE6NSBkcGtnLWFyY2hpdGVjdHVyZS4xOjUKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjUgZHBrZy1idWlsZHBhY2thZ2UuMTo1IGRwa2ctY2hlY2tidWlsZGRlcHMuMTo1CisjOiBkcGtnLWRpc3RhZGRmaWxlLjE6NSBkcGtnLWRlYi4xOjUgZHBrZy1kaXZlcnQuODo1IGRwa2ctZ2VuY2hhbmdlcy4xOjUKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjUgZHBrZy1nZW5zeW1ib2xzLjE6NiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjUKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6NSBkcGtnLW5hbWUuMToxMCBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6NQorIzogZHBrZy1xdWVyeS4xOjUgZHBrZy1zY2FucGFja2FnZXMuMToxOSBkcGtnLXNjYW5zb3VyY2VzLjE6NQorIzogZHBrZy1zaGxpYmRlcHMuMTo1IGRwa2ctc291cmNlLjE6NiBkcGtnLXNwbGl0LjE6NiBkcGtnLXN0YXRvdmVycmlkZS44OjUKKyM6IGRwa2ctdHJpZ2dlci4xOjUgZHBrZy12ZW5kb3IuMTo1IGRzZWxlY3QuMTo1IHN0YXJ0LXN0b3AtZGFlbW9uLjg6NQorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjEyCisjLCBuby13cmFwCittc2dpZCAiU1lOT1BTSVMiCittc2dzdHIgIuabuOW8jyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLjU6NiBkZWItc3BsaXQuNTo2IGRlYi1vbGQuNTo3Cittc2dpZCAiSTxmaWxlbmFtZT5CPC5kZWI+IgorbXNnc3RyICJJPGZpbGVuYW1lPkI8LmRlYj4iCisKKyMuIHR5cGU6IFNICisjOiBkZWIuNTo2IGRlYi1jb250cm9sLjU6MTAgZGViLXNyYy1jb250cm9sLjU6MTAgZGViLXNwbGl0LjU6NgorIzogZGViLXZlcnNpb24uNToxMSBkZWItb2xkLjU6OCBkZWItb3ZlcnJpZGUuNToyMiBkZWItZXh0cmEtb3ZlcnJpZGUuNTo4CisjOiBkZWItc2hsaWJzLjU6MjAgZGViLXN1YnN0dmFycy41OjkgZGViLXN5bWJvbHMuNTo5IGRlYi10cmlnZ2Vycy41OjgKKyM6IGRwa2cuMToxOSBkcGtnLWFyY2hpdGVjdHVyZS4xOjEwIGRwa2cuY2ZnLjU6NSBkcGtnLWJ1aWxkZmxhZ3MuMTo5CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjkgZHBrZy1jaGVja2J1aWxkZGVwcy4xOjEwIGRwa2ctZGlzdGFkZGZpbGUuMTo5CisjOiBkcGtnLWRlYi4xOjkgZHBrZy1kaXZlcnQuODoxMCBkcGtnLWdlbmNoYW5nZXMuMToxMCBkcGtnLWdlbmNvbnRyb2wuMTo5CisjOiBkcGtnLWdlbnN5bWJvbHMuMToxMCBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjE1IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6OQorIzogZHBrZy1uYW1lLjE6MTYgZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjkgZHBrZy1xdWVyeS4xOjkKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6MjcgZHBrZy1zY2Fuc291cmNlcy4xOjEzIGRwa2ctc2hsaWJkZXBzLjE6OQorIzogZHBrZy1zb3VyY2UuMToxMCBkcGtnLXNwbGl0LjE6MTAgZHBrZy1zdGF0b3ZlcnJpZGUuODo5IGRwa2ctdHJpZ2dlci4xOjEyCisjOiBkcGtnLXZlbmRvci4xOjkgZHNlbGVjdC4xOjkgZHNlbGVjdC5jZmcuNTo1IHN0YXJ0LXN0b3AtZGFlbW9uLjg6OQorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE2CisjLCBuby13cmFwCittc2dpZCAiREVTQ1JJUFRJT04iCittc2dzdHIgIuiqrOaYjiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLjU6MTIKK21zZ2lkICIiCisiVGhlIEI8LmRlYj4gZm9ybWF0IGlzIHRoZSBEZWJpYW4gYmluYXJ5IHBhY2thZ2UgZmlsZSBmb3JtYXQuIEl0IGlzICIKKyJ1bmRlcnN0b29kIGJ5IGRwa2cgMC45My43NiBhbmQgbGF0ZXIsIGFuZCBpcyBnZW5lcmF0ZWQgYnkgZGVmYXVsdCBieSBhbGwgIgorInZlcnNpb25zIG9mIGRwa2cgc2luY2UgMS4yLjAgYW5kIGFsbCBpMzg2L0VMRiB2ZXJzaW9ucyBzaW5jZSAxLjEuMWVsZi4iCittc2dzdHIgIiIKKyJCPC5kZWI+IOODleOCqeODvOODnuODg+ODiOOBryBEZWJpYW4g44OQ44Kk44OK44Oq44OR44OD44Kx44O844K444Gu44OV44Kh44Kk44Or5b2i5byP44Gn44GC44KL44CC44GT44Gu5b2iIgorIuW8j+OBryBkcGtnIDAuOTMuNzYg44G+44Gf44Gv44Gd44KM5Lul6ZmN44Gu44OQ44O844K444On44Oz44Gn5omx44GG44GT44Go44GM44Gn44GN44CBZHBrZyAxLjIuMCDku6XpmY0iCisi44Gu44GZ44G544Gm44Gu44OQ44O844K444On44Oz44GoIDEuMS4xZWxmIOS7pemZjeOBruOBmeOBueOBpuOBriBpMzg2L0VMRiDjg5Djg7zjgrjjg6fjg7Pjgafjga/jg4fjg5XjgqkiCisi44Or44OI44Gn44GT44Gu5b2i5byP44GM5L2c5oiQ44GV44KM44KL44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWIuNToxNgorbXNnaWQgIiIKKyJUaGUgZm9ybWF0IGRlc2NyaWJlZCBoZXJlIGlzIHVzZWQgc2luY2UgRGViaWFuIDAuOTM7IGRldGFpbHMgb2YgdGhlIG9sZCAiCisiZm9ybWF0IGFyZSBkZXNjcmliZWQgaW4gQjxkZWItb2xkPig1KS4iCittc2dzdHIgIiIKKyLjgZPjga7jg57jg4vjg6XjgqLjg6vjgafoqJjov7DjgZXjgozjgovlvaLlvI/jga8gRGViaWFuIDAuOTMg44GL44KJ5L2/55So44GV44KM44Gm44GE44KL44CC5pen5b2i5byP44Gu6Kmz57SwIgorIuOBq+OBpOOBhOOBpuOBryBCPGRlYi1vbGQ+KDUpIOOCkuWPgueFp+OBleOCjOOBn+OBhOOAgiIKKworIy4gdHlwZTogU0gKKyM6IGRlYi41OjE2IGRlYi1zcGxpdC41OjkgZGViLW9sZC41OjE4CisjLCBuby13cmFwCittc2dpZCAiRk9STUFUIgorbXNnc3RyICLjg5Xjgqnjg7zjg57jg4Pjg4giCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi41OjIyCisjLCBmdXp6eQorbXNnaWQgIiIKKyJUaGUgZmlsZSBpcyBhbiBCPGFyPiBhcmNoaXZlIHdpdGggYSBtYWdpYyB2YWx1ZSBvZiBCPCFFPGx0PmFyY2hFPGd0Pj4uICBUaGUgIgorImZpbGUgbmFtZXMgbWlnaHQgY29udGFpbiBhIHRyYWlsaW5nIHNsYXNoLiIKK21zZ3N0ciAiIgorIuOBk+OBruODleOCoeOCpOODq+OBr+ODnuOCuOODg+OCr+ODiuODs+ODkOODvCBCPCFFPGx0PmFyY2hFPGd0Pj4g44KS5oyB44GkIEI8YXI+IOOCouODvOOCq+OCpOODluOBp+OBgiIKKyLjgovjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi41OjI4Cittc2dpZCAiIgorIlRoZSBCPHRhcj4gYXJjaGl2ZXMgY3VycmVudGx5IGFsbG93ZWQgYXJlLCB0aGUgb2xkLXN0eWxlICh2NykgZm9ybWF0LCB0aGUgIgorInByZS1QT1NJWCB1c3RhciBmb3JtYXQsIGEgc3Vic2V0IG9mIHRoZSBHTlUgZm9ybWF0IChvbmx5IHRoZSBuZXcgc3R5bGUgbG9uZyAiCisicGF0aG5hbWVzIGFuZCBsb25nIGxpbmtuYW1lcywgc3VwcG9ydGVkIHNpbmNlIGRwa2cgMS40LjEuMTcpLCBhbmQgdGhlIFBPU0lYICIKKyJ1c3RhciBmb3JtYXQgKGxvbmcgbmFtZXMgc3VwcG9ydGVkIHNpbmNlIGRwa2cgMS4xNS4wKS4gIFVucmVjb2duaXplZCB0YXIgIgorInR5cGVmbGFncyBhcmUgY29uc2lkZXJlZCBhbiBlcnJvci4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLjU6MzgKK21zZ2lkICIiCisiVGhlIGZpcnN0IG1lbWJlciBpcyBuYW1lZCBCPGRlYmlhbi1iaW5hcnk+IGFuZCBjb250YWlucyBhIHNlcmllcyBvZiBsaW5lcywgIgorInNlcGFyYXRlZCBieSBuZXdsaW5lcy4gQ3VycmVudGx5IG9ubHkgb25lIGxpbmUgaXMgcHJlc2VudCwgdGhlIGZvcm1hdCAiCisidmVyc2lvbiBudW1iZXIsIEI8Mi4wPiBhdCB0aGUgdGltZSB0aGlzIG1hbnVhbCBwYWdlIHdhcyB3cml0dGVuLiAgUHJvZ3JhbXMgIgorIndoaWNoIHJlYWQgbmV3LWZvcm1hdCBhcmNoaXZlcyBzaG91bGQgYmUgcHJlcGFyZWQgZm9yIHRoZSBtaW5vciBudW1iZXIgdG8gYmUgIgorImluY3JlYXNlZCBhbmQgbmV3IGxpbmVzIHRvIGJlIHByZXNlbnQsIGFuZCBzaG91bGQgaWdub3JlIHRoZXNlIGlmIHRoaXMgaXMgIgorInRoZSBjYXNlLiIKK21zZ3N0ciAiIgorIkI8LmRlYj4g44Gr5ZCr44G+44KM44KL56ysIDEg44Gu44Oh44Oz44OQ44O844GvIEI8ZGViaWFuLWJpbmFyeT4g44Go44GE44GG5ZCN56ew44Gn44CB5pS56KGM44Gn5Yy65YiHIgorIuOCieOCjOOBn+aVsOihjOOBi+OCieaIkOOCi+OAguePvuWcqOOBr+S4gOihjOOBoOOBkeOBp+OBguOCiuOAgWRlYiDlvaLlvI/jg5Djg7zjgrjjg6fjg7Pnlarlj7fjgYzkuI7jgYjjgonjgowiCisi44KL44CC44GT44Gu44Oe44OL44Ol44Ki44Or44GM5pu444GL44KM44Gf5pmC54K544Gn44GvIEI8Mi4wPiDjgafjgYLjgovjgILmlrDlvaLlvI/jga7jgqLjg7zjgqvjgqTjg5bjgpLoqq3jgb8iCisi6L6844KA44OX44Ot44Kw44Op44Og44Gv44CB44Oe44Kk44OK44O844OQ44O844K444On44Oz55Wq5Y+344GM5LiK44GM44Gj44Gf5aC05ZCI44KE44CB5paw44GX44GE6KGM44GM6L+95Yqg44GV44KMIgorIuOBpuOBhOOCi+WgtOWQiOOCkuaDs+WumuOBl+OBpuOBiuOBi+OBquOBkeOCjOOBsOOBquOCieOBquOBhOOAguOCguOBl+OAgeOBk+OCjOOBq+ipsuW9k+OBmeOCi+WgtOWQiOOBr+OBk+OCjOOCieOCkiIKKyLnhKHoppbjgZnjgovjgZPjgajjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi41OjQzCittc2dpZCAiIgorIklmIHRoZSBtYWpvciBudW1iZXIgaGFzIGNoYW5nZWQsIGFuIGluY29tcGF0aWJsZSBjaGFuZ2UgaGFzIGJlZW4gbWFkZSBhbmQgIgorInRoZSBwcm9ncmFtIHNob3VsZCBzdG9wLiBJZiBpdCBoYXMgbm90LCB0aGVuIHRoZSBwcm9ncmFtIHNob3VsZCBiZSBhYmxlIHRvICIKKyJzYWZlbHkgY29udGludWUsIHVubGVzcyBpdCBlbmNvdW50ZXJzIGFuIHVuZXhwZWN0ZWQgbWVtYmVyIGluIHRoZSBhcmNoaXZlICIKKyIoZXhjZXB0IGF0IHRoZSBlbmQpLCBhcyBkZXNjcmliZWQgYmVsb3cuIgorbXNnc3RyICIiCisi44Oh44K444Oj44O855Wq5Y+344GM5aSJ5pu044GV44KM44Gm44GE44KL5aC05ZCI44CB5LqS5o+b5oCn44Gu44Gq44GE5aSJ5pu044GM44Gq44GV44KM44Gm44GE44KL44Gf44KB44OX44Ot44Kw44OpIgorIuODoOOBr+WBnOatouOBl+OBquOBkeOCjOOBsOOBquOCieOBquOBhOOAguODoeOCuOODo+ODvOeVquWPt+OBjOWkieabtOOBleOCjOOBpuOBhOOBquOBhOWgtOWQiOOBr+OAgeOCouODvOOCq+OCpOODliIKKyLjgavkuojmnJ/jgZfjgarjgYTjg6Hjg7Pjg5Djg7zjgYzlkKvjgb7jgozjgabjgYTjgarjgYTpmZDjgooo44Ki44O844Kr44Kk44OW44Gu5pyA5b6M44Gr5ZCr44G+44KM44KL5aC05ZCI44KS6ZmkIgorIuOBjynjgIHjg5fjg63jgrDjg6njg6Djga/lronlhajjgavlrp/ooYzjgpLntpnntprjgafjgY3jgovjgILjgZPjgozjgavjgaTjgYTjgabjga/jgIHku6XkuIvjgafoqqzmmI7jgZnjgovjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi41OjUzCittc2dpZCAiIgorIlRoZSBzZWNvbmQgcmVxdWlyZWQgbWVtYmVyIGlzIG5hbWVkIEI8Y29udHJvbC50YXIuZ3o+LiAgSXQgaXMgYSBnemlwcGVkIHRhciAiCisiYXJjaGl2ZSBjb250YWluaW5nIHRoZSBwYWNrYWdlIGNvbnRyb2wgaW5mb3JtYXRpb24sIGFzIGEgc2VyaWVzIG9mIHBsYWluICIKKyJmaWxlcywgb2Ygd2hpY2ggdGhlIGZpbGUgQjxjb250cm9sPiBpcyBtYW5kYXRvcnkgYW5kIGNvbnRhaW5zIHRoZSBjb3JlICIKKyJjb250cm9sIGluZm9ybWF0aW9uLiBUaGUgY29udHJvbCB0YXJiYWxsIG1heSBvcHRpb25hbGx5IGNvbnRhaW4gYW4gZW50cnkgZm9yICIKKyJgQjwuPicsIHRoZSBjdXJyZW50IGRpcmVjdG9yeS4iCittc2dzdHIgIiIKKyIyIOeVquebruOBq+imgeiri+OBleOCjOOCi+ODoeODs+ODkOODvOOBryBCPGNvbnRyb2wudGFyLmd6PiDjgajjgYTjgYbjg5XjgqHjgqTjg6vlkI3jgpLmjIHjgaQgZ3ppcCDlnKciCisi57iuIHRhciDlvaLlvI/jgafjgYLjgovjgILjgZPjgozjga/jgIHjg5Hjg4PjgrHjg7zjgrjliLblvqHmg4XloLHjgpLjg4bjgq3jgrnjg4jjg5XjgqHjgqTjg6vnvqTjgajjgZfjgablkKvjgoDjgIIiCisi44Gd44Gu5Lit44Gn44KCIEI8Y29udHJvbD4g44OV44Kh44Kk44Or44Gv5b+F6aCI44Gn44GC44KK44CB5Lit5b+D44Go44Gq44KL5Yi25b6h5oOF5aCx44KS5ZCr44KA44CC44GT44GuICIKKyJjb250cm9sLnRhci5neiDjga/ku7vmhI/jgavjgqvjg6zjg7Pjg4jjg4fjgqPjg6zjgq/jg4jjg6ogYEI8Lj4nIOOBq+WvvuOBmeOCi+OCqOODs+ODiOODquOCkuWQq+OCgOOAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLjU6NjIKK21zZ2lkICIiCisiVGhlIHRoaXJkLCBsYXN0IHJlcXVpcmVkIG1lbWJlciBpcyBuYW1lZCBCPGRhdGEudGFyPi4gIEl0IGNvbnRhaW5zIHRoZSAiCisiZmlsZXN5c3RlbSBhcyBhIHRhciBhcmNoaXZlLCBlaXRoZXIgbm90IGNvbXByZXNzZWQgKHN1cHBvcnRlZCBzaW5jZSBkcGtnICIKKyIxLjEwLjI0KSwgb3IgY29tcHJlc3NlZCB3aXRoIGd6aXAgKHdpdGggQjwuZ3o+IGV4dGVuc2lvbiksIHh6ICh3aXRoIEI8Lnh6PiAiCisiZXh0ZW5zaW9uLCBzdXBwb3J0ZWQgc2luY2UgZHBrZyAxLjE1LjYpLCBiemlwMiAod2l0aCBCPC5iejI+IGV4dGVuc2lvbiwgIgorInN1cHBvcnRlZCBzaW5jZSBkcGtnIDEuMTAuMjQpIG9yIGx6bWEgKHdpdGggQjwubHptYT4gZXh0ZW5zaW9uLCBzdXBwb3J0ZWQgIgorInNpbmNlIGRwa2cgMS4xMy4yNSkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi41OjczCisjLCBmdXp6eQorbXNnaWQgIiIKKyJUaGVzZSBtZW1iZXJzIG11c3Qgb2NjdXIgaW4gdGhpcyBleGFjdCBvcmRlci4gQ3VycmVudCBpbXBsZW1lbnRhdGlvbnMgc2hvdWxkICIKKyJpZ25vcmUgYW55IGFkZGl0aW9uYWwgbWVtYmVycyBhZnRlciBCPGRhdGEudGFyPi4gIEZ1cnRoZXIgbWVtYmVycyBtYXkgYmUgIgorImRlZmluZWQgaW4gdGhlIGZ1dHVyZSwgYW5kIChpZiBwb3NzaWJsZSkgd2lsbCBiZSBwbGFjZWQgYWZ0ZXIgdGhlc2UgdGhyZWUuICIKKyJBbnkgYWRkaXRpb25hbCBtZW1iZXJzIHRoYXQgbWF5IG5lZWQgdG8gYmUgaW5zZXJ0ZWQgYmVmb3JlIEI8ZGF0YS50YXI+IGFuZCAiCisid2hpY2ggc2hvdWxkIGJlIHNhZmVseSBpZ25vcmVkIGJ5IG9sZGVyIHByb2dyYW1zLCB3aWxsIGhhdmUgbmFtZXMgc3RhcnRpbmcgIgorIndpdGggYW4gdW5kZXJzY29yZSwgYEI8Xz4nLiIKK21zZ3N0ciAiIgorIuOBk+OCjOOCieOBruODoeODs+ODkOODvOOBr+S4iuOBq+ekuuOBl+OBn+mghuW6j+OBp+ePvuOCjOOBquOBkeOCjOOBsOOBquOCieOBquOBhOOAguWwhuadpeOAgei/veWKoOODoeODs+ODkOODvOOBjCIKKyLlrprnvqnjgZXjgozjgZ/loLTlkIjjgIHlj6/og73jgarjgonjgbDjgZPjgozjgokgMyDjgaTjga7jg6Hjg7Pjg5Djg7zjga7lvozjgavphY3nva7jgZXjgozjgovjgafjgYLjgo3jgYbjgILnj77lnKgiCisi44Gu5a6f6KOF44Gn44Gv44CBQjxkYXRhLnRhci5nej4g5Lul5b6M44Gu44GE44GL44Gq44KL6L+95Yqg44Oh44Oz44OQ44O844KC54Sh6KaW44GV44KM44KL44CC5bCG5p2l44Gr44GK44GEIgorIuOBpiBCPGRhdGEudGFyLmd6PiDjga7liY3jgavmjL/lhaXjgZnjgovlv4XopoHjgYzjgYLjgorjgIHjgZ3jgozku6XliY3jga7jg5fjg63jgrDjg6njg6DjgYzlronlhajjgavnhKHoppYiCisi44GZ44KL44GT44Go44Gu44Gn44GN44KL6L+95Yqg44Oh44Oz44OQ44O844KS5a6a576p44GZ44KL44Gr44Gv44CB44Gd44Gu44Oh44Oz44OQ44O844Gv44Ki44Oz44OA44O844K544Kz44KiICIKKyJgQjxfPicg44Gn5aeL44G+44KL5ZCN5YmN44KS5oyB44Gm44Gw44KI44GE44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWIuNTo3OQorIywgZnV6enkKK21zZ2lkICIiCisiVGhvc2UgbmV3IG1lbWJlcnMgd2hpY2ggd29uJ3QgYmUgYWJsZSB0byBiZSBzYWZlbHkgaWdub3JlZCB3aWxsIGJlIGluc2VydGVkICIKKyJiZWZvcmUgQjxkYXRhLnRhcj4gd2l0aCBuYW1lcyBzdGFydGluZyB3aXRoIHNvbWV0aGluZyBvdGhlciB0aGFuICIKKyJ1bmRlcnNjb3Jlcywgb3Igd2lsbCAobW9yZSBsaWtlbHkpIGNhdXNlIHRoZSBtYWpvciB2ZXJzaW9uIG51bWJlciB0byBiZSAiCisiaW5jcmVhc2VkLiIKK21zZ3N0ciAiIgorIuWuieWFqOOBq+eEoeimluOBmeOCi+OBk+OBqOOBjOOBp+OBjeOBquOBhOaWsOOBl+OBhOODoeODs+ODkOODvOOBjOOBguOCi+WgtOWQiOOAgeOBk+OBruODoeODs+ODkOODvOOBq+OCouODs+ODgOODvCIKKyLjgrnjgrPjgqLku6XlpJbjga7mloflrZfjgaflp4vjgb7jgovlkI3liY3jgpLjgaTjgZHjgaYgQjxkYXRhLnRhci5nej4g44KI44KK5YmN44Gr5oy/5YWl44GZ44KL44GL44CB44G+44GfIgorIuOBryjjgZPjgaHjgonjga7lj6/og73mgKfjgYzpq5jjgYTjgYwp44Oh44K444Oj44O844OQ44O844K444On44Oz55Wq5Y+344KS5LiK44GS44KL44GT44Go44Gr44Gq44KL44Gn44GC44KN44GG44CCIgorCisjLiB0eXBlOiBTSAorIzogZGViLjU6NzkgZGViLWNvbnRyb2wuNToyNzEgZGViLXNyYy1jb250cm9sLjU6MzI3IGRlYi1zcGxpdC41OjQ5CisjOiBkZWItdmVyc2lvbi41OjExNiBkZWItb2xkLjU6NTEgZGViLW92ZXJyaWRlLjU6NjIgZGViLWV4dHJhLW92ZXJyaWRlLjU6MzcKKyM6IGRlYi1zaGxpYnMuNTo2MSBkZWItc3Vic3R2YXJzLjU6MTU0IGRlYi1zeW1ib2xzLjU6NjEgZGViLXRyaWdnZXJzLjU6NjcKKyM6IGRwa2cuMTo3NjggZHBrZy1hcmNoaXRlY3R1cmUuMToyOTkgZHBrZy5jZmcuNToyMyBkcGtnLWJ1aWxkcGFja2FnZS4xOjI0OQorIzogZHBrZy1kZWIuMToyNTkgZHBrZy1kaXZlcnQuODoxMzIgZHBrZy1nZW5zeW1ib2xzLjE6NDUwIGRwa2ctbmFtZS4xOjk2CisjOiBkcGtnLXF1ZXJ5LjE6MjIwIGRwa2ctc2NhbnBhY2thZ2VzLjE6MTEwIGRwa2ctc2NhbnNvdXJjZXMuMTo3MQorIzogZHBrZy1zaGxpYmRlcHMuMTozMjQgZHBrZy1zb3VyY2UuMTo3MjUgZHBrZy1zcGxpdC4xOjIxNworIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo4NCBkcGtnLXRyaWdnZXIuMTo2NiBkc2VsZWN0LjE6NDQ1IGRzZWxlY3QuY2ZnLjU6MjMKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo1MDgKKyMsIG5vLXdyYXAKK21zZ2lkICJTRUUgQUxTTyIKK21zZ3N0ciAi6Zai6YCj6aCF55uuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWIuNTo4MgorbXNnaWQgIkI8ZGViLW9sZD4oNSksIEI8ZHBrZy1kZWI+KDEpLCBCPGRlYi1jb250cm9sPig1KS4iCittc2dzdHIgIkI8ZGViLW9sZD4oNSksIEI8ZHBrZy1kZWI+KDEpLCBCPGRlYi1jb250cm9sPig1KS4iCisKKyMuIHR5cGU6IFRICisjOiBkZWItY29udHJvbC41OjMKKyMsIG5vLXdyYXAKK21zZ2lkICJkZWItY29udHJvbCIKK21zZ3N0ciAiZGViLWNvbnRyb2wiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6NgorbXNnaWQgImRlYi1jb250cm9sIC0gRGViaWFuIHBhY2thZ2VzJyBtYXN0ZXIgY29udHJvbCBmaWxlIGZvcm1hdCIKK21zZ3N0ciAiIgorImRlYi1jb250cm9sIC0gRGViaWFuIOODkeODg+OCseODvOOCuOOBruODnuOCueOCv+ODvOOCs+ODs+ODiOODreODvOODq+ODleOCoeOCpOODq+ODleOCqeODvOODnuODg+ODiCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNTo5IGRlYi1zcmMtY29udHJvbC41OjkKK21zZ2lkICJjb250cm9sIgorbXNnc3RyICJjb250cm9sIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjI0CisjLCBmdXp6eQorbXNnaWQgIiIKKyJFYWNoIERlYmlhbiBwYWNrYWdlIGNvbnRhaW5zIHRoZSBtYXN0ZXIgYGNvbnRyb2wnIGZpbGUsIHdoaWNoIGNvbnRhaW5zIGEgIgorIm51bWJlciBvZiBmaWVsZHMsIG9yIGNvbW1lbnRzIHdoZW4gdGhlIGxpbmUgc3RhcnRzIHdpdGggQjwnIyc+LiBFYWNoIGZpZWxkICIKKyJiZWdpbnMgd2l0aCBhIHRhZywgc3VjaCBhcyBCPFBhY2thZ2U+IG9yIEI8VmVyc2lvbj4gKGNhc2UgaW5zZW5zaXRpdmUpLCAiCisiZm9sbG93ZWQgYnkgYSBjb2xvbiwgYW5kIHRoZSBib2R5IG9mIHRoZSBmaWVsZC4gIEZpZWxkcyBhcmUgZGVsaW1pdGVkIG9ubHkgIgorImJ5IGZpZWxkIHRhZ3MuIEluIG90aGVyIHdvcmRzLCBmaWVsZCB0ZXh0IG1heSBiZSBtdWx0aXBsZSBsaW5lcyBpbiBsZW5ndGgsICIKKyJidXQgdGhlIGluc3RhbGxhdGlvbiB0b29scyB3aWxsIGdlbmVyYWxseSBqb2luIGxpbmVzIHdoZW4gcHJvY2Vzc2luZyB0aGUgIgorImJvZHkgb2YgdGhlIGZpZWxkIChleGNlcHQgaW4gdGhlIGNhc2Ugb2YgdGhlIEI8RGVzY3JpcHRpb24+IGZpZWxkLCBzZWUgIgorImJlbG93KS4iCittc2dzdHIgIiIKKyLlkIQgRGViaWFuIOODkeODg+OCseODvOOCuOOBr+ODnuOCueOCv+ODvOOBqOOBquOCiyBgY29udHJvbCfjg5XjgqHjgqTjg6vjgpLjgoLjgaPjgabjgYTjgovjgILjgZPjga4gIgorImBjb250cm9sJ+ODleOCoeOCpOODq+OBr+OBhOOBj+OBpOOBi+OBruODleOCo+ODvOODq+ODieOCkuWQq+OCk+OBp+OBhOOCi+OAguOBneOCjOOBnuOCjOOBruODleOCo+ODvOODq+ODieOBryAiCisiQjxQYWNrYWdlPiDjgoQgQjxWZXJzaW9uPiAo5aSn5paH5a2X5bCP5paH5a2X44Gv5Yy65Yil44GX44Gq44GEKSDjga7jgojjgYbjgarjgr/jgrDjgaflp4vjgb7jgorjgIHjgrMiCisi44Ot44Oz44CB44OV44Kj44O844Or44OJ44Gu5pys5L2T44Go44GE44GG6aCG5bqP44Gn6KiY6L+w44GV44KM44Gm44GE44KL44CC44OV44Kj44O844Or44OJ44Gv44OV44Kj44O844Or44OJ44K/44KwIgorIuOBq+OCiOOBo+OBpuOBruOBv+WMuuWIh+OCieOCjOOBpuOBhOOCi+OAguWIpeOBruiogOOBhOaWueOCkuOBmeOCjOOBsOOAgeODleOCo+ODvOODq+ODieODhuOCreOCueODiOOBr+ikh+aVsOihjOOBqyIKKyLjgb7jgZ/jgYzjgaPjgabjgoLjgYvjgb7jgo/jgarjgYTjgILjgZfjgYvjgZfjgqTjg7Pjgrnjg4jjg7zjg6vjgavkvb/jgYbjg4Tjg7zjg6vjga/jgZ3jgozjgonjga7jg5XjgqPjg7zjg6vjg4njga4iCisi5pys5L2T44KS5Yem55CG44GZ44KL5pmC44Gr5LiA6KGM44Gr44G+44Go44KB44Gm44GX44G+44GG44CCKOOBn+OBoOOBl+OAgeS7peS4i+OBp+iqrOaYjuOBmeOCiyAiCisiQjxEZXNjcmlwdGlvbj4g44OV44Kj44O844Or44OJ44Gv5L6L5aSW44Gn44GC44KLKSIKKworIy4gdHlwZTogU0gKKyM6IGRlYi1jb250cm9sLjU6MjUKKyMsIG5vLXdyYXAKK21zZ2lkICJSRVFVSVJFRCBGSUVMRFMiCittc2dzdHIgIuW/hemgiOODleOCo+ODvOODq+ODiSIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MjYKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxQYWNrYWdlOj5JPCBwYWNrYWdlLW5hbWU+IgorbXNnc3RyICJCPC0tcGFja2FnZT5JPCBFPGx0PnBhY2thZ2VFPGd0Pj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MzAKK21zZ2lkICIiCisiVGhlIHZhbHVlIG9mIHRoaXMgZmllbGQgZGV0ZXJtaW5lcyB0aGUgcGFja2FnZSBuYW1lLCBhbmQgaXMgdXNlZCB0byBnZW5lcmF0ZSAiCisiZmlsZSBuYW1lcyBieSBtb3N0IGluc3RhbGxhdGlvbiB0b29scy4iCittc2dzdHIgIiIKKyLjgZPjga7jg5XjgqPjg7zjg6vjg4njga7lgKTjgavjgojjgaPjgabjg5Hjg4PjgrHjg7zjgrjlkI3jgYzmsbrjgb7jgovjgILjgb7jgZ/jgqTjg7Pjgrnjg4jjg7zjg6vjgavkvb/jgYbjg4Tjg7zjg6siCisi44Gu44G744Go44KT44Gp44GM44OV44Kh44Kk44Or5ZCN44KS55Sf5oiQ44GZ44KL44Gf44KB44Gr5L2/44GG44CCIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNTozMAorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPFZlcnNpb246PiBFPGx0PnZlcnNpb24gc3RyaW5nRTxndD4iCittc2dpZCAiQjxWZXJzaW9uOj5JPCB2ZXJzaW9uLXN0cmluZz4iCittc2dzdHIgIkI8VmVyc2lvbjo+IEU8bHQ+44OQ44O844K444On44Oz5paH5a2X5YiXRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MzcKKyMsIGZ1enp5Cittc2dpZCAiIgorIlR5cGljYWxseSwgdGhpcyBpcyB0aGUgb3JpZ2luYWwgcGFja2FnZSdzIHZlcnNpb24gbnVtYmVyIGluIHdoYXRldmVyIGZvcm0gIgorInRoZSBwcm9ncmFtJ3MgYXV0aG9yIHVzZXMuIEl0IG1heSBhbHNvIGluY2x1ZGUgYSBEZWJpYW4gcmV2aXNpb24gbnVtYmVyIChmb3IgIgorIm5vbi1uYXRpdmUgcGFja2FnZXMpLiBUaGUgZXhhY3QgZm9ybWF0IGFuZCBzb3J0aW5nIGFsZ29yaXRobSBhcmUgZGVzY3JpYmVkICIKKyJpbiBCPGRlYi12ZXJzaW9uPig1KS4iCittc2dzdHIgIiIKKyLmma7pgJrjga/jgIHjgZPjgozjga/jg5Hjg4PjgrHjg7zjgrjjga7jg5fjg63jgrDjg6njg6Djga7kvZzogIXjgYzliKnnlKjjgZfjgabjgYTjgovjg5Hjg4PjgrHjg7zjgrjjga7jg5Djg7zjgrjjg6ciCisi44Oz55Wq5Y+344Gn44GC44KL44CCKERlYmlhbiDni6zoh6rjga7jg5Hjg4PjgrHjg7zjgrjjgafjgarjgYTloLTlkIjjga8pIERlYmlhbiDjg6rjg5Pjgrjjg6fjg7Pnlarlj7fjgYzov70iCisi5Yqg44GV44KM44KL44CC44KC44GX44CB44OQ44O844K444On44Oz44Go44Oq44OT44K444On44Oz5Lih5pa544KS5L2/44GG5aC05ZCI44Gr44Gv44Gd44KM44KJ44Gv44OP44Kk44OV44OzIGAtJyAiCisi44Gr44KI44KK5Yy65YiH44KJ44KM44Gm44GE44KL44CC44GT44Gu44Gf44KB44Gr44CB44Kq44Oq44K444OK44Or44Gu44OQ44O844K444On44Oz44Gr44Gv44Gd44Gu44OQ44O844K444On44Oz55WqIgorIuWPt+OBq+ODj+OCpOODleODs+OCkuS9v+OBhuOBk+OBqOOBjOOBp+OBjeOBquOBhOOAgiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MzcKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxNYWludGFpbmVyOj4gRTxsdD5mdWxsbmFtZSBlbWFpbEU8Z3Q+IgorbXNnaWQgIkI8TWFpbnRhaW5lcjo+STwgZnVsbG5hbWUtZW1haWw+IgorbXNnc3RyICJCPE1haW50YWluZXI6PiBFPGx0PuWQjeWJjSBlbWFpbEU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjQyCittc2dpZCAiIgorIlNob3VsZCBiZSBpbiB0aGUgZm9ybWF0IGBKb2UgQmxvZ2dzIEU8bHQ+amJsb2dnc0Bmb28uY29tRTxndD4nLCBhbmQgaXMgIgorInR5cGljYWxseSB0aGUgcGVyc29uIHdobyBjcmVhdGVkIHRoZSBwYWNrYWdlLCBhcyBvcHBvc2VkIHRvIHRoZSBhdXRob3Igb2YgIgorInRoZSBzb2Z0d2FyZSB0aGF0IHdhcyBwYWNrYWdlZC4iCittc2dzdHIgIiIKKyJgSm9lIEJsb2dncyBFPGx0PmpibG9nZ3NAZm9vLmNvbUU8Z3Q+JyDlvaLlvI/jgafjgarjgZHjgozjgbDjgYTjgZHjgarjgYTjgILjg5Hjg4PjgrHjg7zjgrjljJbjgZUiCisi44KM44Gf44K944OV44OI44Km44Kn44Ki44Gu5L2c6ICF44Gn44Gv44Gq44GP44CB44OR44OD44Kx44O844K45L2c5oiQ6ICF44Gu5ZCN5YmN44GK44KI44GzIGUtbWFpbCDjgqLjg4njg6zjgrkiCisi44KS5L2/44GG44GT44Go44Gr44Gq44Gj44Gm44GE44KL44CCIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNTo0MgorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPERlc2NyaXB0aW9uOj4gRTxsdD5zaG9ydCBkZXNjcmlwdGlvbkU8Z3Q+IgorbXNnaWQgIkI8RGVzY3JpcHRpb246Pkk8IHNob3J0LWRlc2NyaXB0aW9uPiIKK21zZ3N0ciAiQjxEZXNjcmlwdGlvbjo+IEU8bHQ+55+t44GE6Kqs5piORTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6NDUKKyMsIGZ1enp5CisjfCBtc2dpZCAiQjwgPkU8bHQ+bG9uZyBkZXNjcmlwdGlvbkU8Z3Q+IgorbXNnaWQgIkI8ID5JPGxvbmctZGVzY3JpcHRpb24+IgorbXNnc3RyICJCPCA+RTxsdD7plbfjgYToqqzmmI5FPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNTo1MQorbXNnaWQgIiIKKyJUaGUgZm9ybWF0IGZvciB0aGUgcGFja2FnZSBkZXNjcmlwdGlvbiBpcyBhIHNob3J0IGJyaWVmIHN1bW1hcnkgb24gdGhlIGZpcnN0ICIKKyJsaW5lIChhZnRlciB0aGUgXCJEZXNjcmlwdGlvblwiIGZpZWxkKS4gVGhlIGZvbGxvd2luZyBsaW5lcyBzaG91bGQgYmUgdXNlZCAiCisiYXMgYSBsb25nZXIsIG1vcmUgZGV0YWlsZWQgZGVzY3JpcHRpb24uIEVhY2ggbGluZSBvZiB0aGUgbG9uZyBkZXNjcmlwdGlvbiAiCisibXVzdCBiZSBwcmVjZWRlZCBieSBhIHNwYWNlLCBhbmQgYmxhbmsgbGluZXMgaW4gdGhlIGxvbmcgZGVzY3JpcHRpb24gbXVzdCAiCisiY29udGFpbiBhIHNpbmdsZSAnLicgZm9sbG93aW5nIHRoZSBwcmVjZWRpbmcgc3BhY2UuIgorbXNnc3RyICIiCisi44OR44OD44Kx44O844K46Kqs5piO44Gu5pu45byP44Gv44CB44G+44Ga5pyA5Yid44Gu6KGMIChcIkRlc2NyaXB0aW9uXCIg44OV44Kj44O844Or44OJ44K/44Kw44Gu5b6MKSDjgYwiCisi55+t44GE6KaB57SE44Gn44GC44KL44CC44Gd44Gu5b6M44Gr57aa44GP6KGM44Gv44KI44KK6ZW344GE6Kmz57Sw44Gq6Kqs5piO44Gr5L2/44GG44CC6ZW344GE6Kqs5piO44Gu5ZCE6KGM44Gv56m6IgorIueZveaWh+Wtl+OBp+OBr+OBmOOBvuOCi+OAguihjOmgreOBruOCueODmuODvOOCueOBq+e2muOBkeOBpiAnLicg5LiA44Gk44Gg44GR44Gu6KGM44Gv56m66KGM44KS5oSP5ZGz44GZ44KL44CCIgorCisjLiB0eXBlOiBTSAorIzogZGViLWNvbnRyb2wuNTo1MgorIywgbm8td3JhcAorbXNnaWQgIk9QVElPTkFMIEZJRUxEUyIKK21zZ3N0ciAi44Kq44OX44K344On44Oz44Gu44OV44Kj44O844Or44OJIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNTo1MyBkZWItc3JjLWNvbnRyb2wuNTo5MAorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPFNlY3Rpb246PiBFPGx0PnNlY3Rpb25FPGd0PiIKK21zZ2lkICJCPFNlY3Rpb246Pkk8IHNlY3Rpb24+IgorbXNnc3RyICJCPFNlY3Rpb246ID5FPGx0PuOCu+OCr+OCt+ODp+ODs0U8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjU4Cittc2dpZCAiIgorIlRoaXMgaXMgYSBnZW5lcmFsIGZpZWxkIHRoYXQgZ2l2ZXMgdGhlIHBhY2thZ2UgYSBjYXRlZ29yeSBiYXNlZCBvbiB0aGUgIgorInNvZnR3YXJlIHRoYXQgaXQgaW5zdGFsbHMuIFNvbWUgY29tbW9uIHNlY3Rpb25zIGFyZSBgdXRpbHMnLCBgbmV0JywgYG1haWwnLCAiCisiYHRleHQnLCBgeDExJyBldGMuIgorbXNnc3RyICIiCisi44OR44OD44Kx44O844K444Gr44KI44KK44Kk44Oz44K544OI44O844Or44GV44KM44KL44K944OV44OI44Km44Kn44Ki44GM44Gp44Gu44Kr44OG44K044Oq44O844Gr5bGe44GZ44KL44GL44KS56S6IgorIuOBmeODleOCo+ODvOODq+ODieOBp+OBguOCi+OAguS4gOiIrOeahOOBquOCu+OCr+OCt+ODp+ODs+OBryBgdXRpbHMnIOOChCBgbmV0J+OAgWBtYWlsJ+OAgWB0ZXh0J+OAgSIKKyJgeDExJyDjgarjganjgYzjgYLjgovjgIIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjU4IGRlYi1zcmMtY29udHJvbC41Ojk2CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8UHJpb3JpdHk6PiBFPGx0PnByaW9yaXR5RTxndD4iCittc2dpZCAiQjxQcmlvcml0eTo+STwgcHJpb3JpdHk+IgorbXNnc3RyICJCPFByaW9yaXR5Oj4gRTxsdD7lhKrlhYjluqZFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNTo2MgorbXNnaWQgIiIKKyJTZXRzIHRoZSBpbXBvcnRhbmNlIG9mIHRoaXMgcGFja2FnZSBpbiByZWxhdGlvbiB0byB0aGUgc3lzdGVtIGFzIGEgd2hvbGUuICAiCisiQ29tbW9uIHByaW9yaXRpZXMgYXJlIGByZXF1aXJlZCcsIGBzdGFuZGFyZCcsIGBvcHRpb25hbCcsIGBleHRyYScgZXRjLiIKK21zZ3N0ciAiIgorIuOCt+OCueODhuODoOWFqOS9k+OBi+OCieOBv+OBpuOBk+OBruODkeODg+OCseODvOOCuOOBrumHjeimgeW6puOCkuekuuOBmeOAguS4gOiIrOeahOOBq+S9v+OCj+OCjOOCi+WEquWFiOW6puOBqOOBlyIKKyLjgabjga8gYHJlcXVpcmVkJ+OAgWBzdGFuZGFyZCfjgIFgb3B0aW9uYWwn44CBYGV4dHJhJyDjgarjganjgYzjgYLjgovjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6NzEgZGViLXNyYy1jb250cm9sLjU6MTA5CisjLCBmdXp6eQorbXNnaWQgIiIKKyJJbiBEZWJpYW4sIHRoZSBCPFNlY3Rpb24+IGFuZCBCPFByaW9yaXR5PiBmaWVsZHMgaGF2ZSBhIGRlZmluZWQgc2V0IG9mICIKKyJhY2NlcHRlZCB2YWx1ZXMgYmFzZWQgb24gdGhlIFBvbGljeSBNYW51YWwuICBBIGxpc3Qgb2YgdGhlc2UgdmFsdWVzIGNhbiBiZSAiCisib2J0YWluZWQgZnJvbSB0aGUgbGF0ZXN0IHZlcnNpb24gb2YgdGhlIEI8ZGViaWFuLXBvbGljeT4gcGFja2FnZS4iCittc2dzdHIgIiIKKyJEZWJpYW4g44Gn44Gv44CBIEI8U2VjdGlvbj4g44GoIEI8UHJpb3JpdHk+IOODleOCo+ODvOODq+ODieOBp+S9v+OBiOOCi+WApOOBr+ODneODquOCt+ODvOODnuODi+ODpSIKKyLjgqLjg6vjgafmsbrjgoHjgonjgozjgabjgYTjgovjgILjgZPjgozjgonjga/jgqLjg7zjgqvjgqTjg5bjgafjganjga7jgojjgYbjgavjg5Hjg4PjgrHjg7zjgrjjgYzphY3nva7jgZXjgozjgovjgYsiCisi44KS5rG65a6a44GZ44KL44Gu44Gr5L2/44KP44KM44Gm44GE44KL44CC44GT44KM44KJ44Gu44Oq44K544OI44Gv5pyA5paw44GuIEI8ZGViaWFuLXBvbGljeT4g44OR44OD44Kx44O8IgorIuOCuOOBruS4reOBq+WQq+OBvuOCjOOBpuOBhOOCi+OAgiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6NzEgZGViLXNyYy1jb250cm9sLjU6MjE2CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8RXNzZW50aWFsOj4gRTxsdD55ZXN8bm9FPGd0PiIKK21zZ2lkICJCPEVzc2VudGlhbDo+IEI8eWVzPnxCPG5vPiIKK21zZ3N0ciAiQjxFc3NlbnRpYWw6PiBFPGx0Pnllc3xub0U8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41Ojc4CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJUaGlzIGZpZWxkIGlzIHVzdWFsbHkgb25seSBuZWVkZWQgd2hlbiB0aGUgYW5zd2VyIGlzIGB5ZXMnLiBJdCBkZW5vdGVzIGEgIgorI3wgInBhY2thZ2UgdGhhdCBpcyByZXF1aXJlZCBmb3IgcHJvcGVyIG9wZXJhdGlvbiBvZiB0aGUgc3lzdGVtLiBEcGtnIG9yIGFueSAiCisjfCAib3RoZXIgaW5zdGFsbGF0aW9uIHRvb2wgd2lsbCBub3QgYWxsb3cgYW4gQjxFc3NlbnRpYWw+IHBhY2thZ2UgdG8gYmUgIgorI3wgInJlbW92ZWQgKGF0IGxlYXN0IG5vdCB3aXRob3V0IHVzaW5nIG9uZSBvZiB0aGUgZm9yY2Ugb3B0aW9ucykuIgorbXNnaWQgIiIKKyJUaGlzIGZpZWxkIGlzIHVzdWFsbHkgb25seSBuZWVkZWQgd2hlbiB0aGUgYW5zd2VyIGlzIEI8eWVzPi4gSXQgZGVub3RlcyBhICIKKyJwYWNrYWdlIHRoYXQgaXMgcmVxdWlyZWQgZm9yIHByb3BlciBvcGVyYXRpb24gb2YgdGhlIHN5c3RlbS4gRHBrZyBvciBhbnkgIgorIm90aGVyIGluc3RhbGxhdGlvbiB0b29sIHdpbGwgbm90IGFsbG93IGFuIEI8RXNzZW50aWFsPiBwYWNrYWdlIHRvIGJlIHJlbW92ZWQgIgorIihhdCBsZWFzdCBub3Qgd2l0aG91dCB1c2luZyBvbmUgb2YgdGhlIGZvcmNlIG9wdGlvbnMpLiIKK21zZ3N0ciAiIgorIuOBk+OBruODleOCo+ODvOODq+ODieOBr+aZrumAmuOBryBgeWVzJyDjga7mmYLjgavjgaDjgZHkvb/jgYbjgILjgZPjgozjga/jg5Hjg4PjgrHjg7zjgrjjgYzjgrfjgrnjg4bjg6DjgpLpganliIciCisi44Gr6YGL55So44GZ44KL44Gf44KB44Gr5b+F6KaB44Go44GV44KM44KL44OR44OD44Kx44O844K444KS56S644GZ44CCIGRwa2cg44KE5LuW44Gu44Kk44Oz44K544OI44O844Or44Gr5L2/44GGIgorIuODhOODvOODq+OBryAo5by35Yi244Kq44OX44K344On44Oz44KS5LiO44GI44Gq44GE6ZmQ44KKKSBCPEVzc2VudGlhbD4g44OR44OD44Kx44O844K444KS5YmK6Zmk44GZ44KL44GT44GoIgorIuOCkuioseOBleOBquOBhOOAgiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6NzgKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxBcmNoaXRlY3R1cmU6PiBFPGx0PmFyY2h8YWxsRTxndD4iCittc2dpZCAiQjxBcmNoaXRlY3R1cmU6PiBJPGFyY2g+fEI8YWxsPiIKK21zZ3N0ciAiQjxBcmNoaXRlY3R1cmU6PiBFPGx0PmFyY2h8YWxsRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6ODYKK21zZ2lkICIiCisiVGhlIGFyY2hpdGVjdHVyZSBzcGVjaWZpZXMgd2hpY2ggdHlwZSBvZiBoYXJkd2FyZSB0aGlzIHBhY2thZ2Ugd2FzIGNvbXBpbGVkICIKKyJmb3IuIENvbW1vbiBhcmNoaXRlY3R1cmVzIGFyZSBgaTM4NicsIGBtNjhrJywgYHNwYXJjJywgYGFscGhhJywgYHBvd2VycGMnICIKKyJldGMuIE5vdGUgdGhhdCB0aGUgQjxhbGw+IG9wdGlvbiBpcyBtZWFudCBmb3IgcGFja2FnZXMgdGhhdCBhcmUgYXJjaGl0ZWN0dXJlICIKKyJpbmRlcGVuZGVudC4gU29tZSBleGFtcGxlcyBvZiB0aGlzIGFyZSBzaGVsbCBhbmQgUGVybCBzY3JpcHRzLCBhbmQgIgorImRvY3VtZW50YXRpb24uIgorbXNnc3RyICIiCisiQXJjaGl0ZWN0dXJlIOOBr+OBk+OBruODkeODg+OCseODvOOCuOOBjOOBqeOBruOCv+OCpOODl+OBruODj+ODvOODieOCpuOCp+OCouOCgOOBkeOBq+OCs+ODs+ODkeOCpOODq+OBleOCjCIKKyLjgZ8g44KC44Gu44GL44Gp44GG44GL44KS56S644GZ44CC5LiA6Iis55qE44GqIGFyY2hpdGVjdHVyZSDjgajjgZfjgabjga8gYGkzODYnLCBgbTY4aycsICIKKyJgc3BhcmMnLCBgYWxwaGEnLCBgcG93ZXJwYycg44Gq44Gp44GM44GC44KL44CCIEI8YWxsPiDjgqrjg5fjgrfjg6fjg7Pjga/jg5Hjg4PjgrHjg7zjgrjjgYwgIgorImFyY2hpdGVjdHVyZSDjgavkvp3lrZjjgZfjgarjgYTjgZPjgajjgpLmhI/lkbPjgZnjgovjgILkvovjgYjjgbDjgIHjgrfjgqfjg6vjgrnjgq/jg6rjg5fjg4jjgoQgUGVybCDjgrnjgq8iCisi44Oq44OX44OI44CB5paH5pu444Gq44Gp44GvIGFyY2hpdGVjdHVyZSDjgYwgYWxsIOOBqOOBquOCi+OAgiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6ODYgZGViLXNyYy1jb250cm9sLjU6ODUKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxPcmlnaW46Pkk8IG5hbWU+IgorbXNnc3RyICJCPFNvdXJjZTo+IEU8bHQ+44K944O844K55ZCNRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6ODkKK21zZ2lkICJUaGUgbmFtZSBvZiB0aGUgZGlzdHJpYnV0aW9uIHRoaXMgcGFja2FnZSBpcyBvcmlnaW5hdGluZyBmcm9tLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNTo4OSBkZWItc3JjLWNvbnRyb2wuNTo2NgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPEJ1Z3M6Pkk8IHVybD4iCittc2dzdHIgIkI8UmVwbGFjZXM6PiBFPGx0PuODkeODg+OCseODvOOCuOODquOCueODiEU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41Ojk0Cittc2dpZCAiIgorIlRoZSBJPHVybD4gb2YgdGhlIGJ1ZyB0cmFja2luZyBzeXN0ZW0gZm9yIHRoaXMgcGFja2FnZS4gVGhlIGN1cnJlbnQgdXNlZCAiCisiZm9ybWF0IGlzIEk8YnRzLXR5cGU+Qjw6Ly8+STxidHMtYWRkcmVzcz4sIGxpa2UgQjxkZWJidWdzOi8vYnVncy5kZWJpYW4ub3JnPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6OTQgZGViLXNyYy1jb250cm9sLjU6NjIKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxIb21lcGFnZTo+STwgdXJsPiIKK21zZ3N0ciAiQjxSZXBsYWNlczo+IEU8bHQ+44OR44OD44Kx44O844K444Oq44K544OIRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6OTcKK21zZ2lkICJUaGUgdXBzdHJlYW0gcHJvamVjdCBob21lIHBhZ2UgSTx1cmw+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNTo5NyBkZWItc3JjLWNvbnRyb2wuNToyMjIKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxUYWc6Pkk8IHRhZy1saXN0PiIKK21zZ3N0ciAiQjxSZXBsYWNlczo+IEU8bHQ+44OR44OD44Kx44O844K444Oq44K544OIRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MTAxCittc2dpZCAiIgorIkxpc3Qgb2YgdGFncyBkZXNjcmliaW5nIHRoZSBxdWFsaXRpZXMgb2YgdGhlIHBhY2thZ2UuIFRoZSBkZXNjcmlwdGlvbiBhbmQgIgorImxpc3Qgb2Ygc3VwcG9ydGVkIHRhZ3MgY2FuIGJlIGZvdW5kIGluIHRoZSBCPGRlYnRhZ3M+IHBhY2thZ2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjEwMSBkZWItc3JjLWNvbnRyb2wuNToyMTkKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxTb3VyY2U6PiBFPGx0PnNvdXJjZSBuYW1lRTxndD4iCittc2dpZCAiQjxNdWx0aS1BcmNoOj4gQjxzYW1lPnxCPGZvcmVpZ24+fEI8YWxsb3dlZD4iCittc2dzdHIgIkI8U291cmNlOj4gRTxsdD7jgr3jg7zjgrnlkI1FPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToxMTMKK21zZ2lkICIiCisiVGhpcyBmaWVsZCBpcyB1c2VkIHRvIGluZGljYXRlIGhvdyB0aGlzIHBhY2thZ2Ugc2hvdWxkIGJlaGF2ZSBvbiBhIG11bHRpLSIKKyJhcmNoIGluc3RhbGxhdGlvbnMuIFRoZSB2YWx1ZSBCPHNhbWU+IG1lYW5zIHRoYXQgdGhlIHBhY2thZ2UgaXMgY28tIgorImluc3RhbGxhYmxlIHdpdGggaXRzZWxmLCBidXQgaXQgbXVzdCBub3QgYmUgdXNlZCB0byBzYXRpc2Z5IHRoZSBkZXBlbmRlbmN5ICIKKyJvZiBhbnkgcGFja2FnZSBvZiBhIGRpZmZlcmVudCBhcmNoaXRlY3R1cmUgZnJvbSBpdHNlbGYuIFRoZSB2YWx1ZSBCPGZvcmVpZ24+ICIKKyJtZWFucyB0aGF0IHRoZSBwYWNrYWdlIGlzIG5vdCBjby1pbnN0YWxsYWJsZSB3aXRoIGl0c2VsZiwgYnV0IHNob3VsZCBiZSAiCisiYWxsb3dlZCB0byBzYXRpc2Z5IHRoZSBkZXBlbmRlbmN5IG9mIGEgcGFja2FnZSBvZiBhIGRpZmZlcmVudCBhcmNoIGZyb20gIgorIml0c2VsZi4gVGhlIHZhbHVlIEI8YWxsb3dlZD4gYWxsb3dzIHJldmVyc2UtZGVwZW5kZW5jaWVzIHRvIGluZGljYXRlIGluICIKKyJ0aGVpciBEZXBlbmRzIGZpZWxkIHRoYXQgdGhleSBuZWVkIGEgcGFja2FnZSBmcm9tIGEgZm9yZWlnbiBhcmNoaXRlY3R1cmUsICIKKyJidXQgaGFzIG5vIGVmZmVjdCBvdGhlcndpc2UuIFRoaXMgZmllbGQgc2hvdWxkIG5vdCBiZSBwcmVzZW50IGluIHBhY2thZ2VzICIKKyJ3aXRoIHRoZSBCPEFyY2hpdGVjdHVyZTogYWxsPiBmaWVsZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MTEzCisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8U291cmNlOj4gRTxsdD5zb3VyY2UgbmFtZUU8Z3Q+IgorbXNnaWQgIkI8U291cmNlOj5JPCBzb3VyY2UtbmFtZT4iCittc2dzdHIgIkI8U291cmNlOj4gRTxsdD7jgr3jg7zjgrnlkI1FPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToxMTcKK21zZ2lkICIiCisiVGhlIG5hbWUgb2YgdGhlIHNvdXJjZSBwYWNrYWdlIHRoYXQgdGhpcyBiaW5hcnkgcGFja2FnZSBjYW1lIGZyb20sIGlmICIKKyJkaWZmZXJlbnQgdGhhbiB0aGUgbmFtZSBvZiB0aGUgcGFja2FnZSBpdHNlbGYuIgorbXNnc3RyICIiCisi44GT44Gu44OQ44Kk44OK44Oq44OR44OD44Kx44O844K444KS5L2c44KL44Gf44KB44Gr5L2/44KP44KM44Gf44K944O844K544OR44OD44Kx44O844K444Gu5ZCN5YmN44Gn44GC44KL44CC44OQ44KkIgorIuODiuODquODkeODg+OCseODvOOCuOOBruWQjeWJjeOBqOOCveODvOOCueODkeODg+OCseODvOOCuOOBruWQjeWJjeOBjOmBleOBhuaZguOBq+S9v+OCj+OCjOOCi+OAgiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MTE4IGRlYi1zcmMtY29udHJvbC41OjIwMgorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPEFyY2hpdGVjdHVyZTo+IEU8bHQ+YXJjaHxhbGxFPGd0PiIKK21zZ2lkICJCPFN1YmFyY2hpdGVjdHVyZTo+STwgdmFsdWU+IgorbXNnc3RyICJCPEFyY2hpdGVjdHVyZTo+IEU8bHQ+YXJjaHxhbGxFPGd0PiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MTIxIGRlYi1zcmMtY29udHJvbC41OjIwNQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPEtlcm5lbC1WZXJzaW9uOj5JPCB2YWx1ZT4iCittc2dzdHIgIkI8VmVyc2lvbjo+IEU8bHQ+44OQ44O844K444On44Oz5paH5a2X5YiXRTxndD4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjEyNCBkZWItc3JjLWNvbnRyb2wuNToyMDgKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxJbnN0YWxsZXItTWVudS1JdGVtOj5JPCB2YWx1ZT4iCittc2dzdHIgIkI8UmVwbGFjZXM6PiBFPGx0PuODkeODg+OCseODvOOCuOODquOCueODiEU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjEzMSBkZWItc3JjLWNvbnRyb2wuNToyMTUKK21zZ2lkICIiCisiVGhlc2UgZmllbGRzIGFyZSB1c2VkIGJ5IHRoZSBkZWJpYW4taW5zdGFsbGVyIGFuZCBhcmUgdXN1YWxseSBub3QgbmVlZGVkLiAgIgorIlNlZSAvdXNyL3NoYXJlL2RvYy9kZWJpYW4taW5zdGFsbGVyL2RldmVsL21vZHVsZXMudHh0IGZyb20gdGhlIEI8ZGViaWFuLSIKKyJpbnN0YWxsZXI+IHBhY2thZ2UgZm9yIG1vcmUgZGV0YWlscyBhYm91dCB0aGVtLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNToxMzIgZGViLXNyYy1jb250cm9sLjU6MjMzCisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8RGVwZW5kczo+IEU8bHQ+cGFja2FnZSBsaXN0RTxndD4iCittc2dpZCAiQjxEZXBlbmRzOj5JPCBwYWNrYWdlLWxpc3Q+IgorbXNnc3RyICJCPERlcGVuZHM6PiBFPGx0PuODkeODg+OCseODvOOCuOODquOCueODiEU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjE0MworIywgZnV6enkKK21zZ2lkICIiCisiTGlzdCBvZiBwYWNrYWdlcyB0aGF0IGFyZSByZXF1aXJlZCBmb3IgdGhpcyBwYWNrYWdlIHRvIHByb3ZpZGUgYSBub24tdHJpdmlhbCAiCisiYW1vdW50IG9mIGZ1bmN0aW9uYWxpdHkuIFRoZSBwYWNrYWdlIG1haW50ZW5hbmNlIHNvZnR3YXJlIHdpbGwgbm90IGFsbG93IGEgIgorInBhY2thZ2UgdG8gYmUgaW5zdGFsbGVkIGlmIHRoZSBwYWNrYWdlcyBsaXN0ZWQgaW4gaXRzIEI8RGVwZW5kcz4gZmllbGQgIgorImFyZW4ndCBpbnN0YWxsZWQgKGF0IGxlYXN0IG5vdCB3aXRob3V0IHVzaW5nIHRoZSBmb3JjZSBvcHRpb25zKS4gIEluIGFuICIKKyJpbnN0YWxsYXRpb24sIHRoZSBwb3N0aW5zdCBzY3JpcHRzIG9mIHBhY2thZ2VzIGxpc3RlZCBpbiBEZXBlbmRzOiBmaWVsZHMgYXJlICIKKyJydW4gYmVmb3JlIHRob3NlIG9mIHRoZSBwYWNrYWdlcyB3aGljaCBkZXBlbmQgb24gdGhlbS4gT24gdGhlIG9wcG9zaXRlLCBpbiBhICIKKyJyZW1vdmFsLCB0aGUgcHJlcm0gc2NyaXB0IG9mIGEgcGFja2FnZSBpcyBydW4gYmVmb3JlIHRob3NlIG9mIHRoZSBwYWNrYWdlcyAiCisibGlzdGVkIGluIGl0cyBEZXBlbmRzOiBmaWVsZC4iCittc2dzdHIgIiIKKyLjgZPjga7jg5Hjg4PjgrHjg7zjgrjjgYzph43opoHjgarmqZ/og73jgpLmj5DkvpvjgZnjgovjgZ/jgoHjgavlv4XopoHjgajjgZfjgabjgYTjgovjg5Hjg4PjgrHjg7zjgrjjga7jg6rjgrnjg4jjgIIiCisi44OR44OD44Kx44O844K4566h55CG44K944OV44OI44Km44Kn44Ki44Gv44CB44KC44GX44GT44GuIEI8RGVwZW5kcz4g44OV44Kj44O844Or44OJ44Gr44GC44GS44KJ44KM44Gm44GE44KLIgorIuODkeODg+OCseODvOOCuOOBjOOCpOODs+OCueODiOODvOODq+OBleOCjOOBpuOBhOOBquOBkeOCjOOBsCAo5by35Yi244Kq44OX44K344On44Oz44GM44GC44Gf44GI44KJ44KM44Gq44GE6ZmQIgorIuOCiikg44GT44Gu44OR44OD44Kx44O844K444KS44Kk44Oz44K544OI44O844Or44GX44KI44GG44Go44GX44Gq44GE44CC44G+44GfIERlcGVuZHM6IOODleOCo+ODvOODq+ODieOBq+OBgiIKKyLjgZLjgonjgozjgabjgYTjgovjg5Hjg4PjgrHjg7zjgrjjga4gcG9zdGluc3Qg44K544Kv44Oq44OX44OI44KS44CB44Gd44KM44KJ44Gr5L6d5a2Y44GX44Gm44GE44KL44OR44OD44Kx44O8IgorIuOCuOOBjCBwcmVybSDjgrnjgq/jg6rjg5fjg4jjgpLlrp/ooYzjgZfjgojjgYbjgajjgZnjgovliY3jgavlrp/ooYzjgZfjgojjgYbjgajjgZnjgovjgIIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjE0MyBkZWItc3JjLWNvbnRyb2wuNToyMzYKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxQcmUtRGVwZW5kczo+IEU8bHQ+cGFja2FnZSBsaXN0RTxndD4iCittc2dpZCAiQjxQcmUtRGVwZW5kczo+STwgcGFja2FnZS1saXN0PiIKK21zZ3N0ciAiQjxQcmUtRGVwZW5kczo+IEU8bHQ+44OR44OD44Kx44O844K444Oq44K544OIRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MTUwCittc2dpZCAiIgorIkxpc3Qgb2YgcGFja2FnZXMgdGhhdCBtdXN0IGJlIGluc3RhbGxlZCBCPGFuZD4gY29uZmlndXJlZCBiZWZvcmUgdGhpcyBvbmUgIgorImNhbiBiZSBpbnN0YWxsZWQuIFRoaXMgaXMgdXN1YWxseSB1c2VkIGluIHRoZSBjYXNlIHdoZXJlIHRoaXMgcGFja2FnZSAiCisicmVxdWlyZXMgYW5vdGhlciBwYWNrYWdlIGZvciBydW5uaW5nIGl0cyBwcmVpbnN0IHNjcmlwdC4iCittc2dzdHIgIiIKKyLjg5Hjg4PjgrHjg7zjgrjjgYzjgqTjg7Pjgrnjg4jjg7zjg6vjgZXjgozjgaYgQjzjgYvjgaQ+IOOBneOBruODkeODg+OCseODvOOCuOOBjOOCpOODs+OCueODiOODvOODq+OBp+OBjeOCi+WJjeOBqyIKKyLoqK3lrprjgYzntYLjgo/jgaPjgabjgYTjgarjgYTjgajjgYTjgZHjgarjgYTjg5Hjg4PjgrHjg7zjgrjjga7jg6rjgrnjg4jjgILjgZPjgozjga/pgJrluLjjgZPjga7jg5Hjg4PjgrHjg7zjgrjjgYwiCisi5LuW44Gu44OR44OD44Kx44O844K444KSIHByZWluc3Qg44K544Kv44Oq44OX44OI44Gn5Yip55So44GZ44KL5aC05ZCI44Gr5L2/44KP44KM44KL44CCIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNToxNTAgZGViLXNyYy1jb250cm9sLjU6MjM5CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8UmVjb21tZW5kczo+IEU8bHQ+cGFja2FnZSBsaXN0RTxndD4iCittc2dpZCAiQjxSZWNvbW1lbmRzOj5JPCBwYWNrYWdlLWxpc3Q+IgorbXNnc3RyICJCPFJlY29tbWVuZHM6PiBFPGx0PuODkeODg+OCseODvOOCuOODquOCueODiEU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjE1NworbXNnaWQgIiIKKyJMaXN0cyBwYWNrYWdlcyB0aGF0IHdvdWxkIGJlIGZvdW5kIHRvZ2V0aGVyIHdpdGggdGhpcyBvbmUgaW4gYWxsIGJ1dCB1bnVzdWFsICIKKyJpbnN0YWxsYXRpb25zLiBUaGUgcGFja2FnZSBtYWludGVuYW5jZSBzb2Z0d2FyZSB3aWxsIHdhcm4gdGhlIHVzZXIgaWYgdGhleSAiCisiaW5zdGFsbCBhIHBhY2thZ2Ugd2l0aG91dCB0aG9zZSBsaXN0ZWQgaW4gaXRzIEI8UmVjb21tZW5kcz4gZmllbGQuIgorbXNnc3RyICIiCisi5L2Z56iL44Gu44GT44Go44GM44Gq44GR44KM44Gw44GT44Gu44OR44OD44Kx44O844K444Go44Go44KC44Gr44Kk44Oz44K544OI44O844Or44GV44KM44KL44G544GN44OR44OD44Kx44O844K444GuIgorIuODquOCueODiOOAguODpuODvOOCtuOBjOOBk+OBriBCPFJlY29tbWVuZHM+IOODleOCo+ODvOODq+ODieOBq+OBguOBkuOCieOCjOOBpuOBhOOCi+ODkeODg+OCseODvOOCuOOBquOBl+OBqyIKKyLjg5Hjg4PjgrHjg7zjgrjjgpLjgqTjg7Pjgrnjg4jjg7zjg6vjgZfjgojjgYbjgajjgZnjgovjgajjg5Hjg4PjgrHjg7zjgrjnrqHnkIbjgr3jg5Xjg4jjgqbjgqfjgqLjgYzorablkYrjgZnjgovjgZMiCisi44Go44GM44GC44KL44CCIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNToxNTcgZGViLXNyYy1jb250cm9sLjU6MjQyCisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8U3VnZ2VzdHM6PiBFPGx0PnBhY2thZ2UgbGlzdEU8Z3Q+IgorbXNnaWQgIkI8U3VnZ2VzdHM6Pkk8IHBhY2thZ2UtbGlzdD4iCittc2dzdHIgIkI8U3VnZ2VzdHM6PiBFPGx0PuODkeODg+OCseODvOOCuOODquOCueODiEU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjE2MgorbXNnaWQgIiIKKyJMaXN0cyBwYWNrYWdlcyB0aGF0IGFyZSByZWxhdGVkIHRvIHRoaXMgb25lIGFuZCBjYW4gcGVyaGFwcyBlbmhhbmNlIGl0cyAiCisidXNlZnVsbmVzcywgYnV0IHdpdGhvdXQgd2hpY2ggaW5zdGFsbGluZyB0aGlzIHBhY2thZ2UgaXMgcGVyZmVjdGx5ICIKKyJyZWFzb25hYmxlLiIKK21zZ3N0ciAiIgorIuOBk+OBruODkeODg+OCseODvOOCuOOBq+mWoumAo+OBl+OBpuOBhOOBpuOAgeOCiOOCiuS+v+WIqeOBq+OBmeOCi+ODkeODg+OCseODvOOCuOOBoOOBjOOAgeOBquOBj+OBpuOCguOBi+OBvuOCj+OBqiIKKyLjgYTjg5Hjg4PjgrHjg7zjgrjjga7jg6rjgrnjg4jjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MTc0Cittc2dpZCAiIgorIlRoZSBzeW50YXggb2YgQjxEZXBlbmRzPiwgQjxQcmUtRGVwZW5kcz4sIEI8UmVjb21tZW5kcz4gYW5kIEI8U3VnZ2VzdHM+ICIKKyJmaWVsZHMgaXMgYSBsaXN0IG9mIGdyb3VwcyBvZiBhbHRlcm5hdGl2ZSBwYWNrYWdlcy4gRWFjaCBncm91cCBpcyBhIGxpc3Qgb2YgIgorInBhY2thZ2VzIHNlcGFyYXRlZCBieSB2ZXJ0aWNhbCBiYXIgKG9yIGBwaXBlJykgc3ltYm9scywgYHwnLiBUaGUgZ3JvdXBzIGFyZSAiCisic2VwYXJhdGVkIGJ5IGNvbW1hcy4gQ29tbWFzIGFyZSB0byBiZSByZWFkIGFzIGBBTkQnLCBhbmQgcGlwZXMgYXMgYE9SJywgd2l0aCAiCisicGlwZXMgYmluZGluZyBtb3JlIHRpZ2h0bHkuIEVhY2ggcGFja2FnZSBuYW1lIGlzIG9wdGlvbmFsbHkgZm9sbG93ZWQgYnkgYSAiCisidmVyc2lvbiBudW1iZXIgc3BlY2lmaWNhdGlvbiBpbiBwYXJlbnRoZXNlcy4iCittc2dzdHIgIiIKKyJCPERlcGVuZHM+LCBCPFByZS1EZXBlbmRzPiwgQjxSZWNvbW1lbmRzPiwgQjxTdWdnZXN0cz4g44OV44Kj44O844Or44OJ44Gv44CB5Luj5pu/44OR44ODIgorIuOCseODvOOCuOOCsOODq+ODvOODl+OBruODquOCueODiOOBp+ihqOePvuOBmeOCi+OAguWQhOS7o+abv+OCsOODq+ODvOODl+OBp+OBr+ODkeODg+OCseODvOOCuOOCkue4puajkiAo44KC44GX44GPIgorIuOBryBg44OR44Kk44OXJykg6KiY5Y+3IGB8J+OBp+WMuuWIh+OCi+OAguOCsOODq+ODvOODl+OBr+OCs+ODs+ODnuOBp+WMuuWIh+OCi+OAguOCs+ODs+ODnuOBryBgQU5EJyDjgajop6MiCisi6YeI44GX44CB44OR44Kk44OX44GvIGBPUicg44Go6Kej6YeI44GZ44KL44GT44Go44GM44Gn44GN44KL44CC44OR44Kk44OXIChPUikg44Gu5pa544GM5ryU566X44Gu5YSq5YWI5bqm44GMIgorIumrmOOBj+OBquOBo+OBpuOBhOOCi+OAguOCquODl+OCt+ODp+ODs+OBp+OAgeOBneOCjOOBnuOCjOOBruODkeODg+OCseODvOOCuOWQjeOBq+e2muOBkeOBpuaLrOW8p+OBp+OBj+OBj+OCieOCjOOBnyIKKyLjg5Djg7zjgrjjg6fjg7Pnlarlj7fjga7mjIflrprjgYzjgafjgY3jgovjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MTgwCittc2dpZCAiIgorIkEgdmVyc2lvbiBudW1iZXIgbWF5IHN0YXJ0IHdpdGggYSBgRTxndD5FPGd0PicsIGluIHdoaWNoIGNhc2UgYW55IGxhdGVyICIKKyJ2ZXJzaW9uIHdpbGwgbWF0Y2gsIGFuZCBtYXkgc3BlY2lmeSBvciBvbWl0IHRoZSBEZWJpYW4gcGFja2FnaW5nIHJldmlzaW9uICIKKyIoc2VwYXJhdGVkIGJ5IGEgaHlwaGVuKS4gQWNjZXB0ZWQgdmVyc2lvbiByZWxhdGlvbnNoaXBzIGFyZSBcIkU8Z3Q+RTxndD5cIiAiCisiZm9yIGdyZWF0ZXIgdGhhbiwgXCJFPGx0PkU8bHQ+XCIgZm9yIGxlc3MgdGhhbiwgXCJFPGd0Pj1cIiBmb3IgZ3JlYXRlciB0aGFuICIKKyJvciBlcXVhbCB0bywgXCJFPGx0Pj1cIiBmb3IgbGVzcyB0aGFuIG9yIGVxdWFsIHRvLCBhbmQgXCI9XCIgZm9yIGVxdWFsIHRvLiIKK21zZ3N0ciAiIgorIuODkOODvOOCuOODp+ODs+eVquWPt+OBjCBgRTxndD5FPGd0Picg44Gn44Gv44GY44G+44KL5aC05ZCI44Gv44CB44Gd44KM5Lul6ZmN44Gu44OQ44O844K444On44Oz5YWo44Gm44GrIgorIuODnuODg+ODgeOBmeOCi+OAguODkOODvOOCuOODp+ODs+eVquWPt+OBr+OAgeODj+OCpOODleODs+OBq+e2muOBkeOBpiBEZWJpYW4g44OR44OD44Kx44O844K444Oq44OT44K444On44Oz44KSIgorIuaMh+WumuOBl+OBpuOCguOCiOOBhOOBl+OAgeecgeeVpeOBl+OBpuOCguOCiOOBhOOAguODkOODvOOCuOODp+ODs+mWouS/guOCkuekuuOBmeiomOWPt+OBqOOBl+OBpuOBr+OAgSAiCisiXCJFPGd0PkU8Z3Q+XCIg44CM44KI44KK5paw44GX44GE44CN44CBIFwiRTxsdD5FPGx0PlwiIOOAjOOCiOOCiuWPpOOBhOOAjeOAgSBcIkU8Z3Q+PVwiIOOAjOWQjCIKKyLjgZjjgYvmlrDjgZfjgYTjgI3jgIEgXCJFPGx0Pj1cIiDjgIzlkIzjgZjjgYvlj6TjgYTjgI3jgIEgXCI9XCIg44CM5ZCM44GY44CN44GM44GC44KL44CCIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNToxODAgZGViLXNyYy1jb250cm9sLjU6MjQ1CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8QnJlYWtzOj5JPCBwYWNrYWdlLWxpc3Q+IgorbXNnc3RyICJCPFJlcGxhY2VzOj4gRTxsdD7jg5Hjg4PjgrHjg7zjgrjjg6rjgrnjg4hFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToxODgKKyMsIGZ1enp5Cittc2dpZCAiIgorIkxpc3RzIHBhY2thZ2VzIHRoYXQgdGhpcyBvbmUgYnJlYWtzLCBmb3IgZXhhbXBsZSBieSBleHBvc2luZyBidWdzIHdoZW4gdGhlICIKKyJuYW1lZCBwYWNrYWdlcyByZWx5IG9uIHRoaXMgb25lLiBUaGUgcGFja2FnZSBtYWludGVuYW5jZSBzb2Z0d2FyZSB3aWxsIG5vdCAiCisiYWxsb3cgYnJva2VuIHBhY2thZ2VzIHRvIGJlIGNvbmZpZ3VyZWQ7IGdlbmVyYWxseSB0aGUgcmVzb2x1dGlvbiBpcyB0byAiCisidXBncmFkZSB0aGUgcGFja2FnZXMgbmFtZWQgaW4gYSBCPEJyZWFrcz4gZmllbGQuIgorbXNnc3RyICIiCisi44GT44Gu44OR44OD44Kx44O844K444Go6KGd56qB44GZ44KL44OR44OD44Kx44O844K444Gu44Oq44K544OI44CC5L6L44GI44Gw5ZCM44GY44OV44Kh44Kk44Or5ZCN44KS44KC44Gj44Gm44GE44KLIgorIuWgtOWQiOOBquOBqeOAguODkeODg+OCseODvOOCuOeuoeeQhuOCveODleODiOOCpuOCp+OCouOBr+ihneeqgeOBl+OBpuOBhOOCi+ODkeODg+OCseODvOOCuOWQjOWjq+OCkuWQjOaZguOBq+OCpOODsyIKKyLjgrnjg4jjg7zjg6vjgafjgY3jgarjgYTjgojjgYbjgavjgZfjgabjgYTjgovjgILkuozjgaTjga7ooZ3nqoHjgZfjgabjgYTjgovjg5Hjg4PjgrHjg7zjgrjjgYzjgZ3jgozjgZ7jgozjgYzjgYrkupIiCisi44GE44KSIEI8Q29uZmxpY3RzPiDjgavmm7jjgYTjgabjgYrjgY/jgbnjgY3jgafjgYLjgovjgIIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjE4OCBkZWItc3JjLWNvbnRyb2wuNToyNTQKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxDb25mbGljdHM6PiBFPGx0PnBhY2thZ2UgbGlzdEU8Z3Q+IgorbXNnaWQgIkI8Q29uZmxpY3RzOj5JPCBwYWNrYWdlLWxpc3Q+IgorbXNnc3RyICJCPENvbmZsaWN0czo+IEU8bHQ+44OR44OD44Kx44O844K444Oq44K544OIRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MTk2Cittc2dpZCAiIgorIkxpc3RzIHBhY2thZ2VzIHRoYXQgY29uZmxpY3Qgd2l0aCB0aGlzIG9uZSwgZm9yIGV4YW1wbGUgYnkgY29udGFpbmluZyBmaWxlcyAiCisid2l0aCB0aGUgc2FtZSBuYW1lcy4gVGhlIHBhY2thZ2UgbWFpbnRlbmFuY2Ugc29mdHdhcmUgd2lsbCBub3QgYWxsb3cgIgorImNvbmZsaWN0aW5nIHBhY2thZ2VzIHRvIGJlIGluc3RhbGxlZCBhdCB0aGUgc2FtZSB0aW1lLiBUd28gY29uZmxpY3RpbmcgIgorInBhY2thZ2VzIHNob3VsZCBlYWNoIGluY2x1ZGUgYSBCPENvbmZsaWN0cz4gbGluZSBtZW50aW9uaW5nIHRoZSBvdGhlci4iCittc2dzdHIgIiIKKyLjgZPjga7jg5Hjg4PjgrHjg7zjgrjjgajooZ3nqoHjgZnjgovjg5Hjg4PjgrHjg7zjgrjjga7jg6rjgrnjg4jjgILkvovjgYjjgbDlkIzjgZjjg5XjgqHjgqTjg6vlkI3jgpLjgoLjgaPjgabjgYTjgosiCisi5aC05ZCI44Gq44Gp44CC44OR44OD44Kx44O844K4566h55CG44K944OV44OI44Km44Kn44Ki44Gv6KGd56qB44GX44Gm44GE44KL44OR44OD44Kx44O844K45ZCM5aOr44KS5ZCM5pmC44Gr44Kk44OzIgorIuOCueODiOODvOODq+OBp+OBjeOBquOBhOOCiOOBhuOBq+OBl+OBpuOBhOOCi+OAguS6jOOBpOOBruihneeqgeOBl+OBpuOBhOOCi+ODkeODg+OCseODvOOCuOOBjOOBneOCjOOBnuOCjOOBjOOBiuS6kiIKKyLjgYTjgpIgQjxDb25mbGljdHM+IOOBq+abuOOBhOOBpuOBiuOBj+OBueOBjeOBp+OBguOCi+OAgiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MTk2IGRlYi1zcmMtY29udHJvbC41OjI1MQorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPFJlcGxhY2VzOj4gRTxsdD5wYWNrYWdlIGxpc3RFPGd0PiIKK21zZ2lkICJCPFJlcGxhY2VzOj5JPCBwYWNrYWdlLWxpc3Q+IgorbXNnc3RyICJCPFJlcGxhY2VzOj4gRTxsdD7jg5Hjg4PjgrHjg7zjgrjjg6rjgrnjg4hFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToyMDQKK21zZ2lkICIiCisiTGlzdCBvZiBwYWNrYWdlcyBmaWxlcyBmcm9tIHdoaWNoIHRoaXMgb25lIHJlcGxhY2VzLiBUaGlzIGlzIHVzZWQgZm9yICIKKyJhbGxvd2luZyB0aGlzIHBhY2thZ2UgdG8gb3ZlcndyaXRlIHRoZSBmaWxlcyBvZiBhbm90aGVyIHBhY2thZ2UgYW5kIGlzICIKKyJ1c3VhbGx5IHVzZWQgd2l0aCB0aGUgQjxDb25mbGljdHM+IGZpZWxkIHRvIGZvcmNlIHJlbW92YWwgb2YgdGhlIG90aGVyICIKKyJwYWNrYWdlLCBpZiB0aGlzIG9uZSBhbHNvIGhhcyB0aGUgc2FtZSBmaWxlcyBhcyB0aGUgY29uZmxpY3RlZCBwYWNrYWdlLiIKK21zZ3N0ciAiIgorIuOBk+OBruODkeODg+OCseODvOOCuOOBjOe9ruOBjeaPm+OBiOOCi+ODleOCoeOCpOODq+OCkuWQq+OCgOODkeODg+OCseODvOOCuOOBruODquOCueODiOOAguOBk+OBruODkeODg+OCseODvOOCuOOBjCIKKyLku5bjga7jg5Hjg4PjgrHjg7zjgrjjga7jg5XjgqHjgqTjg6vjgpLkuIrmm7jjgY3jgZnjgovjga7jgpLoqLHjgZnjgZ/jgoHjgavkvb/jgo/jgozjgovjgILjgb7jgZ/ooZ3nqoHjgZfjgabjgYTjgosiCisi44OR44OD44Kx44O844K444Go5ZCM44GY44OV44Kh44Kk44Or44KS5ZCr44KT44Gn44GE44KL5aC05ZCIIEI8Q29uZmxpY3RzPiDjg5XjgqPjg7zjg6vjg4njgajlhbHjgavkvb/jgYbjgZMiCisi44Go44Gn5LuW44Gu44OR44OD44Kx44O844K444KS5by35Yi255qE44Gr5YmK6Zmk44GZ44KL44GT44Go44KS5oyH56S644GZ44KL44Gf44KB44Gr5L2/44KP44KM44KL44CCIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNToyMDQgZGViLXNyYy1jb250cm9sLjU6MjU3CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8UHJvdmlkZXM6PiBFPGx0PnBhY2thZ2UgbGlzdEU8Z3Q+IgorbXNnaWQgIkI8UHJvdmlkZXM6Pkk8IHBhY2thZ2UtbGlzdD4iCittc2dzdHIgIkI8UHJvdmlkZXM6PiBFPGx0PuODkeODg+OCseODvOOCuOODquOCueODiEU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjIxNAorbXNnaWQgIiIKKyJUaGlzIGlzIGEgbGlzdCBvZiB2aXJ0dWFsIHBhY2thZ2VzIHRoYXQgdGhpcyBvbmUgcHJvdmlkZXMuIFVzdWFsbHkgdGhpcyBpcyAiCisidXNlZCBpbiB0aGUgY2FzZSBvZiBzZXZlcmFsIHBhY2thZ2VzIGFsbCBwcm92aWRpbmcgdGhlIHNhbWUgc2VydmljZS4gIEZvciAiCisiZXhhbXBsZSwgc2VuZG1haWwgYW5kIGV4aW0gY2FuIHNlcnZlIGFzIGEgbWFpbCBzZXJ2ZXIsIHNvIHRoZXkgcHJvdmlkZSBhICIKKyJjb21tb24gcGFja2FnZSAoYG1haWwtdHJhbnNwb3J0LWFnZW50Jykgb24gd2hpY2ggb3RoZXIgcGFja2FnZXMgY2FuIGRlcGVuZC4gIgorIlRoaXMgd2lsbCBhbGxvdyBzZW5kbWFpbCBvciBleGltIHRvIHNlcnZlIGFzIGEgdmFsaWQgb3B0aW9uIHRvIHNhdGlzZnkgdGhlICIKKyJkZXBlbmRlbmN5LiBUaGlzIHByZXZlbnRzIHRoZSBwYWNrYWdlcyB0aGF0IGRlcGVuZCBvbiBhIG1haWwgc2VydmVyIGZyb20gIgorImhhdmluZyB0byBrbm93IHRoZSBwYWNrYWdlIG5hbWVzIGZvciBhbGwgb2YgdGhlbSwgYW5kIHVzaW5nIGB8JyB0byBzZXBhcmF0ZSAiCisidGhlIGxpc3QuIgorbXNnc3RyICIiCisi44GT44Gu44OR44OD44Kx44O844K444GM5o+Q5L6b44GZ44KL5Luu5oOz44OR44OD44Kx44O844K444Gu44Oq44K544OI44CC6YCa5bi444Gv44GT44KM44Gv6KSH5pWw44Gu44OR44OD44Kx44O844K4IgorIuOBjOOBvuOBo+OBn+OBj+WQjOOBmOOCteODvOODk+OCueOCkuaPkOS+m+OBl+OBpuOBhOOCi+WgtOWQiOOBq+S9v+OCj+OCjOOCi+OAguS+i+OBiOOBsOOAgSBzZW5kbWFpbCDjgaggIgorImV4aW0g44Gv5YWx44Gr44Oh44O844Or44K144O844OQ44Go44GX44Gm44Gu5qmf6IO944KS5o+Q5L6b44GX44Gm44GE44KL44Gu44Gn44CB44GT44KM44KJ44Gv5YWx6YCa44Gu44OR44OD44Kx44O8IgorIuOCuCAoYG1haWwtdHJhbnNwb3J0LWFnZW50Jykg44KS5o+Q5L6b44GX44CB5LuW44Gu44OR44OD44Kx44O844K444GvIOOBk+OBriBgbWFpbC10cmFuc3BvcnQtIgorImFnZW50JyDjgavkvp3lrZjjgZnjgovjgojjgYbjgavjgZfjgabjgYrjgY/jgILjgZPjgYbjgZnjgovjgZPjgajjgafjgIEgc2VuZG1haWwg44KCIGV4aW0g44KC5L6d5a2Y6Zai5L+CIgorIuOCkua6gOOBn+OBmeOCiOOBhuOBq+OBmeOCi+OBk+OBqOOBjOOBp+OBjeOCi+OAguOBk+OCjOOBq+OCiOOCiuODoeODvOODq+OCteODvOODkOOBq+S+neWtmOOBmeOCi+ODkeODg+OCseODvOOCuCIKKyLjgYzjgIHjg6Hjg7zjg6vjgrXjg7zjg5Djgajjgarjgovjg5Hjg4PjgrHjg7zjgrjlhajjgabjga7jg5Hjg4PjgrHjg7zjgrjlkI3jgpLnn6Xjgovlv4XopoHjgoLjgarjgY/jgIHjgb7jgZ8gYHwnICIKKyLjgpLkvb/jgaPjgabliJfmjJnjgZnjgovlv4XopoHjgoLjgarjgY/jgarjgovjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MjMzCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJUaGUgc3ludGF4IG9mIEI8Q29uZmxpY3RzPiwgQjxSZXBsYWNlcz4gYW5kIEI8UHJvdmlkZXM+IGlzIGEgbGlzdCBvZiAiCisjfCAicGFja2FnZSBuYW1lcywgc2VwYXJhdGVkIGJ5IGNvbW1hcyAoYW5kIG9wdGlvbmFsIHdoaXRlc3BhY2UpLiAgSW4gdGhlICIKKyN8ICJCPENvbmZsaWN0cz4gZmllbGQsIHRoZSBjb21tYSBzaG91bGQgYmUgcmVhZCBhcyBgT1InLiBBbiBvcHRpb25hbCB2ZXJzaW9uICIKKyN8ICJjYW4gYWxzbyBiZSBnaXZlbiB3aXRoIHRoZSBzYW1lIHN5bnRheCBhcyBhYm92ZSBmb3IgdGhlIEI8Q29uZmxpY3RzPiBhbmQgIgorI3wgIkI8UmVwbGFjZXM+IGZpZWxkcy4iCittc2dpZCAiIgorIlRoZSBzeW50YXggb2YgQjxCcmVha3M+LCBCPENvbmZsaWN0cz4sIEI8UmVwbGFjZXM+IGFuZCBCPFByb3ZpZGVzPiBpcyBhIGxpc3QgIgorIm9mIHBhY2thZ2UgbmFtZXMsIHNlcGFyYXRlZCBieSBjb21tYXMgKGFuZCBvcHRpb25hbCB3aGl0ZXNwYWNlKS4gIEluIHRoZSAiCisiQjxCcmVha3M+IGFuZCBCPENvbmZsaWN0cz4gZmllbGRzLCB0aGUgY29tbWEgc2hvdWxkIGJlIHJlYWQgYXMgYE9SJy4gQW4gIgorIm9wdGlvbmFsIHZlcnNpb24gY2FuIGFsc28gYmUgZ2l2ZW4gd2l0aCB0aGUgc2FtZSBzeW50YXggYXMgYWJvdmUgZm9yIHRoZSAiCisiQjxCcmVha3M+LCBCPENvbmZsaWN0cz4gYW5kIEI8UmVwbGFjZXM+IGZpZWxkcy4iCittc2dzdHIgIiIKKyJCPENvbmZsaWN0cz4sIEI8UmVwbGFjZXM+LCBCPFByb3ZpZGVzPiDjga/jg5Hjg4PjgrHjg7zjgrjlkI3jgpLjgrPjg7Pjg57jgafljLrliIfjgaPjgabooajoqJjjgZkiCisi44KLICjnqbrnmb3jga/jgYLjgaPjgabjgoLjgYvjgb7jgo/jgarjgYQp44CCIEI8Q29uZmxpY3RzPiDjg5XjgqPjg7zjg6vjg4njga7kuK3jgafjga/jgIHjgrPjg7Pjg57jga8gIgorImBPUicg44Go6Kej6YeI44Gn44GN44KL44CCIEI8Q29uZmxpY3RzPiDjgaggQjxSZXBsYWNlcz4g44OV44Kj44O844Or44OJ44Gn44Gv44CB5LiK6KiY44Gu44OV44Kj44O8IgorIuODq+ODieOBqOWQjOOBmOihqOiomOOBp+ODkOODvOOCuOODp+ODs+OCguaMh+WumuOBmeOCi+OBk+OBqOOBjOOBp+OBjeOCi+OAgiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MjM0IGRlYi1zcmMtY29udHJvbC41OjI2MAorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPERlcGVuZHM6PiBFPGx0PnBhY2thZ2UgbGlzdEU8Z3Q+IgorbXNnaWQgIkI8QnVpbHQtVXNpbmc6Pkk8IHBhY2thZ2UtbGlzdD4iCittc2dzdHIgIkI8RGVwZW5kczo+IEU8bHQ+44OR44OD44Kx44O844K444Oq44K544OIRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MjQ0Cittc2dpZCAiIgorIlRoaXMgZmllbGQgbGlzdHMgZXh0cmEgc291cmNlIHBhY2thZ2VzIHRoYXQgd2VyZSB1c2VkIGR1cmluZyB0aGUgYnVpbGQgb2YgIgorInRoaXMgYmluYXJ5IHBhY2thZ2UuICBUaGlzIGlzIGFuIGluZGljYXRpb24gdG8gdGhlIGFyY2hpdmUgbWFpbnRlbmFuY2UgIgorInNvZnR3YXJlIHRoYXQgdGhlc2UgZXh0cmEgc291cmNlIHBhY2thZ2VzIG11c3QgYmUga2VwdCB3aGlsc3QgdGhpcyBiaW5hcnkgIgorInBhY2thZ2UgaXMgbWFpbnRhaW5lZC4gIFRoaXMgZmllbGQgbXVzdCBiZSBhIGxpc3Qgb2Ygc291cmNlIHBhY2thZ2UgbmFtZXMgIgorIndpdGggc3RyaWN0ICg9KSAgdmVyc2lvbiByZWxhdGlvbnNoaXBzLiAgTm90ZSB0aGF0IHRoZSBhcmNoaXZlIG1haW50ZW5hbmNlICIKKyJzb2Z0d2FyZSBpcyBsaWtlbHkgdG8gcmVmdXNlIHRvIGFjY2VwdCBhbiB1cGxvYWQgd2hpY2ggZGVjbGFyZXMgYSBCPEJ1aWx0LSIKKyJVc2luZz4gcmVsYXRpb25zaGlwIHdoaWNoIGNhbm5vdCBiZSBzYXRpc2ZpZWQgd2l0aGluIHRoZSBhcmNoaXZlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZGViLWNvbnRyb2wuNToyNDUgZGViLXNyYy1jb250cm9sLjU6Mjg4IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MzAyCisjLCBuby13cmFwCittc2dpZCAiRVhBTVBMRSIKK21zZ3N0ciAi5L6LIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjI2OAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICIiCisiIyBDb21tZW50XG4iCisiUGFja2FnZTogZ3JlcFxuIgorIkVzc2VudGlhbDogeWVzXG4iCisiUHJpb3JpdHk6IHJlcXVpcmVkXG4iCisiU2VjdGlvbjogYmFzZVxuIgorIk1haW50YWluZXI6IFdpY2hlcnQgQWtrZXJtYW4gRTxsdD53YWtrZXJtYUBkZWJpYW4ub3JnRTxndD5cbiIKKyJBcmNoaXRlY3R1cmU6IHNwYXJjXG4iCisiVmVyc2lvbjogMi40LTFcbiIKKyJQcmUtRGVwZW5kczogbGliYzYgKEU8Z3Q+PSAyLjAuMTA1KVxuIgorIlByb3ZpZGVzOiByZ3JlcFxuIgorIkNvbmZsaWN0czogcmdyZXBcbiIKKyJEZXNjcmlwdGlvbjogR05VIGdyZXAsIGVncmVwIGFuZCBmZ3JlcC5cbiIKKyIgVGhlIEdOVSBmYW1pbHkgb2YgZ3JlcCB1dGlsaXRpZXMgbWF5IGJlIHRoZSBcImZhc3Rlc3QgZ3JlcCBpbiB0aGUgd2VzdFwiLlxuIgorIiBHTlUgZ3JlcCBpcyBiYXNlZCBvbiBhIGZhc3QgbGF6eS1zdGF0ZSBkZXRlcm1pbmlzdGljIG1hdGNoZXIgKGFib3V0XG4iCisiIHR3aWNlIGFzIGZhc3QgYXMgc3RvY2sgVW5peCBlZ3JlcCkgaHlicmlkaXplZCB3aXRoIGEgQm95ZXItTW9vcmUtR29zcGVyXG4iCisiIHNlYXJjaCBmb3IgYSBmaXhlZCBzdHJpbmcgdGhhdCBlbGltaW5hdGVzIGltcG9zc2libGUgdGV4dCBmcm9tIGJlaW5nXG4iCisiIGNvbnNpZGVyZWQgYnkgdGhlIGZ1bGwgcmVnZXhwIG1hdGNoZXIgd2l0aG91dCBuZWNlc3NhcmlseSBoYXZpbmcgdG9cbiIKKyIgbG9vayBhdCBldmVyeSBjaGFyYWN0ZXIuIFRoZSByZXN1bHQgaXMgdHlwaWNhbGx5IG1hbnkgdGltZXMgZmFzdGVyXG4iCisiIHRoYW4gVW5peCBncmVwIG9yIGVncmVwLiAoUmVndWxhciBleHByZXNzaW9ucyBjb250YWluaW5nIGJhY2tyZWZlcmVuY2luZ1xuIgorIiB3aWxsIHJ1biBtb3JlIHNsb3dseSwgaG93ZXZlcikuXG4iCittc2dzdHIgIiIKKyJQYWNrYWdlOiBncmVwXG4iCisiRXNzZW50aWFsOiB5ZXNcbiIKKyJQcmlvcml0eTogcmVxdWlyZWRcbiIKKyJTZWN0aW9uOiBiYXNlXG4iCisiTWFpbnRhaW5lcjogV2ljaGVydCBBa2tlcm1hbiBFPGx0Pndha2tlcm1hQGRlYmlhbi5vcmdFPGd0PlxuIgorIkFyY2hpdGVjdHVyZTogc3BhcmNcbiIKKyJWZXJzaW9uOiAyLjQtMVxuIgorIlByZS1EZXBlbmRzOiBsaWJjNiAoRTxndD49IDIuMC4xMDUpXG4iCisiUHJvdmlkZXM6IHJncmVwXG4iCisiQ29uZmxpY3RzOiByZ3JlcFxuIgorIkRlc2NyaXB0aW9uOiBHTlUgZ3JlcCwgZWdyZXAgYW5kIGZncmVwLlxuIgorIiBUaGUgR05VIGZhbWlseSBvZiBncmVwIHV0aWxpdGllcyBtYXkgYmUgdGhlIFwiZmFzdGVzdCBncmVwIGluIHRoZSB3ZXN0XCIuXG4iCisiIEdOVSBncmVwIGlzIGJhc2VkIG9uIGEgZmFzdCBsYXp5LXN0YXRlIGRldGVybWluaXN0aWMgbWF0Y2hlciAoYWJvdXRcbiIKKyIgdHdpY2UgYXMgZmFzdCBhcyBzdG9jayBVbml4IGVncmVwKSBoeWJyaWRpemVkIHdpdGggYSBCb3llci1Nb29yZS1Hb3NwZXJcbiIKKyIgc2VhcmNoIGZvciBhIGZpeGVkIHN0cmluZyB0aGF0IGVsaW1pbmF0ZXMgaW1wb3NzaWJsZSB0ZXh0IGZyb20gYmVpbmdcbiIKKyIgY29uc2lkZXJlZCBieSB0aGUgZnVsbCByZWdleHAgbWF0Y2hlciB3aXRob3V0IG5lY2Vzc2FyaWx5IGhhdmluZyB0b1xuIgorIiBsb29rIGF0IGV2ZXJ5IGNoYXJhY3Rlci4gVGhlIHJlc3VsdCBpcyB0eXBpY2FsbHkgbWFueSB0aW1lcyBmYXN0ZXJcbiIKKyIgdGhhbiBVbml4IGdyZXAgb3IgZWdyZXAuIChSZWd1bGFyIGV4cHJlc3Npb25zIGNvbnRhaW5pbmcgYmFja3JlZmVyZW5jaW5nXG4iCisiIHdpbGwgcnVuIG1vcmUgc2xvd2x5LCBob3dldmVyKS5cbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToyNzYKKyMsIGZ1enp5Cittc2dpZCAiIgorIkI8ZGViPig1KSwgQjxkZWItdmVyc2lvbj4oNSksIEI8ZGVidGFncz4oMSksIEI8ZHBrZz4oMSksIEI8ZHBrZy1kZWI+KDEpLiIKK21zZ3N0ciAiQjxkZWI+KDUpLCBCPGRwa2c+KDEpLCBCPGRwa2ctZGViPigxKS4iCisKKyMuIHR5cGU6IFRICisjOiBkZWItc3JjLWNvbnRyb2wuNTozCisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgImRlYi1jb250cm9sIgorbXNnaWQgImRlYi1zcmMtY29udHJvbCIKK21zZ3N0ciAiZGViLWNvbnRyb2wiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjYKKyMsIGZ1enp5CisjfCBtc2dpZCAiZGViLWNvbnRyb2wgLSBEZWJpYW4gcGFja2FnZXMnIG1hc3RlciBjb250cm9sIGZpbGUgZm9ybWF0IgorbXNnaWQgImRlYi1zcmMtY29udHJvbCAtIERlYmlhbiBzb3VyY2UgcGFja2FnZXMnIG1hc3RlciBjb250cm9sIGZpbGUgZm9ybWF0IgorbXNnc3RyICIiCisiZGViLWNvbnRyb2wgLSBEZWJpYW4g44OR44OD44Kx44O844K444Gu44Oe44K544K/44O844Kz44Oz44OI44Ot44O844Or44OV44Kh44Kk44Or44OV44Kp44O844Oe44OD44OIIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToyOAorbXNnaWQgIiIKKyJFYWNoIERlYmlhbiBzb3VyY2UgcGFja2FnZSBjb250YWlucyB0aGUgbWFzdGVyIFwiY29udHJvbFwiIGZpbGUsIHdoaWNoICIKKyJjb250YWlucyBhdCBsZWFzdCAyIHBhcmFncmFwaHMsIHNlcGFyYXRlZCBieSBhIGJsYW5rIGxpbmUuIFRoZSBmaXJzdCAiCisicGFyYWdyYXBoIGxpc3RzIGFsbCBpbmZvcm1hdGlvbiBhYm91dCB0aGUgc291cmNlIHBhY2thZ2UgaW4gZ2VuZXJhbCwgd2hpbGUgIgorImVhY2ggZm9sbG93aW5nIHBhcmFncmFwaCBkZXNjcmliZXMgZXhhY3RseSBvbmUgYmluYXJ5IHBhY2thZ2UuIEVhY2ggIgorInBhcmFncmFwaCBjb25zaXN0cyBvZiBhdCBsZWFzdCBvbmUgZmllbGQuIEEgZmllbGQgc3RhcnRzIHdpdGggYSBmaWVsZG5hbWUsICIKKyJzdWNoIGFzIEI8UGFja2FnZT4gb3IgQjxTZWN0aW9uPiAoY2FzZSBpbnNlbnNpdGl2ZSksIGZvbGxvd2VkIGJ5IGEgY29sb24sICIKKyJ0aGUgYm9keSBvZiB0aGUgZmllbGQgYW5kIGEgbmV3bGluZS4gIE11bHRpLWxpbmUgZmllbGRzIGFyZSBhbHNvIGFsbG93ZWQsICIKKyJidXQgZWFjaCBzdXBwbGVtZW50YXJ5IGxpbmUsIHdpdGhvdXQgYSBmaWVsZG5hbWUsIHNob3VsZCBzdGFydCB3aXRoIGF0IGxlYXN0ICIKKyJvbmUgc3BhY2UuIFRoZSBjb250ZW50IG9mIHRoZSBtdWx0aS1saW5lIGZpZWxkcyBpcyBnZW5lcmFsbHkgam9pbmVkIHRvIGEgIgorInNpbmdsZSBsaW5lIGJ5IHRoZSB0b29scyAoZXhjZXB0IGluIHRoZSBjYXNlIG9mIHRoZSBCPERlc2NyaXB0aW9uPiBmaWVsZCwgIgorInNlZSBiZWxvdykuIFRvIGluc2VydCBlbXB0eSBsaW5lcyBpbnRvIGEgbXVsdGktbGluZSBmaWVsZCwgaW5zZXJ0IGEgZG90ICIKKyJhZnRlciB0aGUgc3BhY2UuIExpbmVzIHN0YXJ0aW5nIHdpdGggYSBCPCcjJz4gYXJlIHRyZWF0ZWQgYXMgY29tbWVudHMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkZWItc3JjLWNvbnRyb2wuNToyOQorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJSRVFVSVJFRCBGSUVMRFMiCittc2dpZCAiU09VUkNFIEZJRUxEUyIKK21zZ3N0ciAi5b+F6aCI44OV44Kj44O844Or44OJIgorCisjLiB0eXBlOiBUUAorIzogZGViLXNyYy1jb250cm9sLjU6MzAKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxTb3VyY2U6PiBFPGx0PnNvdXJjZSBuYW1lRTxndD4iCittc2dpZCAiQjxTb3VyY2U6PiBJPHNvdXJjZS1wYWNrYWdlLW5hbWU+IChyZXF1aXJlZCkiCittc2dzdHIgIkI8U291cmNlOj4gRTxsdD7jgr3jg7zjgrnlkI1FPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MzcKK21zZ2lkICIiCisiVGhlIHZhbHVlIG9mIHRoaXMgZmllbGQgaXMgdGhlIG5hbWUgb2YgdGhlIHNvdXJjZSBwYWNrYWdlLCBhbmQgc2hvdWxkIG1hdGNoICIKKyJ0aGUgbmFtZSBvZiB0aGUgc291cmNlIHBhY2thZ2UgaW4gdGhlIGRlYmlhbi9jaGFuZ2Vsb2cgZmlsZS4gQSBwYWNrYWdlIG5hbWUgIgorIm11c3QgY29uc2lzdCBvbmx5IG9mIGxvd2VyIGNhc2UgbGV0dGVycyAoYS16KSwgZGlnaXRzICgwLTkpLCBwbHVzICgrKSBhbmQgIgorIm1pbnVzICgtKSBzaWducywgYW5kIHBlcmlvZHMgKC4pLiBQYWNrYWdlIG5hbWVzIG11c3QgYmUgYXQgbGVhc3QgdHdvICIKKyJjaGFyYWN0ZXJzIGxvbmcgYW5kIG11c3Qgc3RhcnQgd2l0aCBhbiBhbHBoYW51bWVyaWMgY2hhcmFjdGVyLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLXNyYy1jb250cm9sLjU6MzgKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxNYWludGFpbmVyOj4gRTxsdD5mdWxsbmFtZSBlbWFpbEU8Z3Q+IgorbXNnaWQgIkI8TWFpbnRhaW5lcjo+IEk8ZnVsbG5hbWUtZW1haWw+IChyZXF1aXJlZCkiCittc2dzdHIgIkI8TWFpbnRhaW5lcjo+IEU8bHQ+5ZCN5YmNIGVtYWlsRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjQzCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJTaG91bGQgYmUgaW4gdGhlIGZvcm1hdCBgSm9lIEJsb2dncyBFPGx0PmpibG9nZ3NAZm9vLmNvbUU8Z3Q+JywgYW5kIGlzICIKKyN8ICJ0eXBpY2FsbHkgdGhlIHBlcnNvbiB3aG8gY3JlYXRlZCB0aGUgcGFja2FnZSwgYXMgb3Bwb3NlZCB0byB0aGUgYXV0aG9yIG9mICIKKyN8ICJ0aGUgc29mdHdhcmUgdGhhdCB3YXMgcGFja2FnZWQuIgorbXNnaWQgIiIKKyJTaG91bGQgYmUgaW4gdGhlIGZvcm1hdCBcIkpvZSBCbG9nZ3MgRTxsdD5qYmxvZ2dzQGZvby5jb21FPGd0PlwiLCBhbmQgIgorInJlZmVyZW5jZXMgdGhlIHBlcnNvbiB3aG8gY3VycmVudGx5IG1haW50YWlucyB0aGUgcGFja2FnZSwgYXMgb3Bwb3NlZCB0byB0aGUgIgorImF1dGhvciBvZiB0aGUgc29mdHdhcmUgb3IgdGhlIG9yaWdpbmFsIHBhY2thZ2VyLiIKK21zZ3N0ciAiIgorImBKb2UgQmxvZ2dzIEU8bHQ+amJsb2dnc0Bmb28uY29tRTxndD4nIOW9ouW8j+OBp+OBquOBkeOCjOOBsOOBhOOBkeOBquOBhOOAguODkeODg+OCseODvOOCuOWMluOBlSIKKyLjgozjgZ/jgr3jg5Xjg4jjgqbjgqfjgqLjga7kvZzogIXjgafjga/jgarjgY/jgIHjg5Hjg4PjgrHjg7zjgrjkvZzmiJDogIXjga7lkI3liY3jgYrjgojjgbMgZS1tYWlsIOOCouODieODrOOCuSIKKyLjgpLkvb/jgYbjgZPjgajjgavjgarjgaPjgabjgYTjgovjgIIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3JjLWNvbnRyb2wuNTo0NAorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPE1haW50YWluZXI6PiBFPGx0PmZ1bGxuYW1lIGVtYWlsRTxndD4iCittc2dpZCAiQjxVcGxvYWRlcnM6Pkk8IGZ1bGxuYW1lLWVtYWlsPiIKK21zZ3N0ciAiQjxNYWludGFpbmVyOj4gRTxsdD7lkI3liY0gZW1haWxFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6NDkKK21zZ2lkICIiCisiTGlzdHMgYWxsIHRoZSBuYW1lcyBhbmQgZW1haWwgYWRkcmVzc2VzIG9mIGNvLW1haW50YWluZXJzIG9mIHRoZSBwYWNrYWdlLCBpbiAiCisidGhlIHNhbWUgZm9ybWF0IGFzIHRoZSBNYWludGFpbmVyIGZpZWxkLiBNdWx0aXBsZSBjby1tYWludGFpbmVycyBzaG91bGQgYmUgIgorInNlcGFyYXRlZCBieSBhIGNvbW1hLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLXNyYy1jb250cm9sLjU6NTAKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxWZXJzaW9uOj4gRTxsdD52ZXJzaW9uIHN0cmluZ0U8Z3Q+IgorbXNnaWQgIkI8U3RhbmRhcmRzLVZlcnNpb246Pkk8IHZlcnNpb24tc3RyaW5nPiIKK21zZ3N0ciAiQjxWZXJzaW9uOj4gRTxsdD7jg5Djg7zjgrjjg6fjg7PmloflrZfliJdFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6NTYKK21zZ2lkICIiCisiVGhpcyBkb2N1bWVudHMgdGhlIG1vc3QgcmVjZW50IHZlcnNpb24gb2YgdGhlIHN0YW5kYXJkcyAod2hpY2ggY29uc2lzdHMgb2YgIgorInRoZSBEZWJpYW4gUG9saWN5IE1hbnVhbCBhbmQgcmVmZXJlbmNlZCB0ZXh0cyBmcm9tIHRoZSBCPGRlYmlhbi1wb2xpY3k+ICIKKyJwYWNrYWdlKSB0aGlzIHBhY2thZ2UgY29tcGxpZXMgdG8uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3JjLWNvbnRyb2wuNTo1NworIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPEVzc2VudGlhbDo+IEU8bHQ+eWVzfG5vRTxndD4iCittc2dpZCAiQjxETS1VcGxvYWQtQWxsb3dlZDo+IEI8eWVzPnxCPG5vPiIKK21zZ3N0ciAiQjxFc3NlbnRpYWw6PiBFPGx0Pnllc3xub0U8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNTo2MQorbXNnaWQgIiIKKyJUaGlzIGZpZWxkIGluZGljYXRlcyB3aGV0aGVyIHRoZSBwYWNrYWdlIGNhbiBiZSB1cGxvYWRlZCBieSBEZWJpYW4gIgorIk1haW50YWluZXJzIGFwcGVhcmluZyBpbiB0aGUgTWFpbnRhaW5lciBvciBVcGxvYWRlcnMgZmllbGQuIFRoZSBkZWZhdWx0ICIKKyJ2YWx1ZSBpcyBcIm5vXCIuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjY1Cittc2dpZCAiVGhlIHVwc3RyZWFtIHByb2plY3QgaG9tZSBwYWdlIFVSTC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6NzEKK21zZ2lkICIiCisiVGhlIEk8dXJsPiBvZiB0aGUgYnVnIHRyYWNraW5nIHN5c3RlbSBmb3IgdGhpcyBwYWNrYWdlLiBUaGUgY3VycmVudCB1c2VkICIKKyJmb3JtYXQgaXMgSTxidHMtdHlwZT5CPDovLz5JPGJ0cy1hZGRyZXNzPiwgbGlrZSBCPGRlYmJ1Z3M6Ly9idWdzLmRlYmlhbi4iCisib3JnPi4gVGhpcyBmaWVsZCBpcyB1c3VhbGx5IG5vdCBuZWVkZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3JjLWNvbnRyb2wuNTo3MgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPFZjcy0qOj5JPCB1cmw+IgorbXNnc3RyICJCPFJlcGxhY2VzOj4gRTxsdD7jg5Hjg4PjgrHjg7zjgrjjg6rjgrnjg4hFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6NzkKK21zZ2lkICIiCisiVGhlIEk8dXJsPiBvZiB0aGUgVmVyc2lvbiBDb250cm9sIFN5c3RlbSByZXBvc2l0b3J5IHVzZWQgdG8gbWFpbnRhaW4gdGhpcyAiCisicGFja2FnZS4gQ3VycmVudGx5IHN1cHBvcnRlZCBhcmUgQjxBcmNoPiwgQjxCenI+IChCYXphYXIpLCBCPEN2cz4sIEI8RGFyY3M+LCAiCisiQjxHaXQ+LCBCPEhnPiAoTWVyY3VyaWFsKSwgQjxNdG4+IChNb25vdG9uZSkgYW5kIEI8U3ZuPiAoU3VidmVyc2lvbikuICIKKyJVc3VhbGx5IHRoaXMgZmllbGQgcG9pbnRzIHRvIHRoZSBsYXRlc3QgdmVyc2lvbiBvZiB0aGUgcGFja2FnZSwgc3VjaCBhcyB0aGUgIgorIm1haW4gYnJhbmNoIG9yIHRoZSB0cnVuay4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zcmMtY29udHJvbC41OjgwCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8VmNzLUJyb3dzZXI6Pkk8IHVybD4iCittc2dzdHIgIkI8UmVwbGFjZXM6PiBFPGx0PuODkeODg+OCseODvOOCuOODquOCueODiEU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNTo4NAorbXNnaWQgIiIKKyJUaGUgSTx1cmw+IG9mIGEgd2ViaW50ZXJmYWNlIHRvIGJyb3dzZSB0aGUgVmVyc2lvbiBDb250cm9sIFN5c3RlbSByZXBvc2l0b3J5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNTo4OQorbXNnaWQgIiIKKyJUaGUgbmFtZSBvZiB0aGUgZGlzdHJpYnV0aW9uIHRoaXMgcGFja2FnZSBpcyBvcmlnaW5hdGluZyBmcm9tLiBUaGlzIGZpZWxkIGlzICIKKyJ1c3VhbGx5IG5vdCBuZWVkZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41Ojk1CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJUaGlzIGlzIGEgZ2VuZXJhbCBmaWVsZCB0aGF0IGdpdmVzIHRoZSBwYWNrYWdlIGEgY2F0ZWdvcnkgYmFzZWQgb24gdGhlICIKKyN8ICJzb2Z0d2FyZSB0aGF0IGl0IGluc3RhbGxzLiBTb21lIGNvbW1vbiBzZWN0aW9ucyBhcmUgYHV0aWxzJywgYG5ldCcsICIKKyN8ICJgbWFpbCcsIGB0ZXh0JywgYHgxMScgZXRjLiIKK21zZ2lkICIiCisiVGhpcyBpcyBhIGdlbmVyYWwgZmllbGQgdGhhdCBnaXZlcyB0aGUgcGFja2FnZSBhIGNhdGVnb3J5IGJhc2VkIG9uIHRoZSAiCisic29mdHdhcmUgdGhhdCBpdCBpbnN0YWxscy4gU29tZSBjb21tb24gc2VjdGlvbnMgYXJlIFwidXRpbHNcIiwgXCJuZXRcIiwgIgorIlwibWFpbFwiLCBcInRleHRcIiwgXCJ4MTFcIiwgZXRjLiIKK21zZ3N0ciAiIgorIuODkeODg+OCseODvOOCuOOBq+OCiOOCiuOCpOODs+OCueODiOODvOODq+OBleOCjOOCi+OCveODleODiOOCpuOCp+OCouOBjOOBqeOBruOCq+ODhuOCtOODquODvOOBq+WxnuOBmeOCi+OBi+OCkuekuiIKKyLjgZnjg5XjgqPjg7zjg6vjg4njgafjgYLjgovjgILkuIDoiKznmoTjgarjgrvjgq/jgrfjg6fjg7Pjga8gYHV0aWxzJyDjgoQgYG5ldCfjgIFgbWFpbCfjgIFgdGV4dCfjgIEiCisiYHgxMScg44Gq44Gp44GM44GC44KL44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToxMDAKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlNldHMgdGhlIGltcG9ydGFuY2Ugb2YgdGhpcyBwYWNrYWdlIGluIHJlbGF0aW9uIHRvIHRoZSBzeXN0ZW0gYXMgYSAiCisjfCAid2hvbGUuICBDb21tb24gcHJpb3JpdGllcyBhcmUgYHJlcXVpcmVkJywgYHN0YW5kYXJkJywgYG9wdGlvbmFsJywgYGV4dHJhJyAiCisjfCAiZXRjLiIKK21zZ2lkICIiCisiU2V0cyB0aGUgaW1wb3J0YW5jZSBvZiB0aGlzIHBhY2thZ2UgaW4gcmVsYXRpb24gdG8gdGhlIHN5c3RlbSBhcyBhIHdob2xlLiAgIgorIkNvbW1vbiBwcmlvcml0aWVzIGFyZSBcInJlcXVpcmVkXCIsIFwic3RhbmRhcmRcIiwgXCJvcHRpb25hbFwiLCBcImV4dHJhXCIsICIKKyJldGMuIgorbXNnc3RyICIiCisi44K344K544OG44Og5YWo5L2T44GL44KJ44G/44Gm44GT44Gu44OR44OD44Kx44O844K444Gu6YeN6KaB5bqm44KS56S644GZ44CC5LiA6Iis55qE44Gr5L2/44KP44KM44KL5YSq5YWI5bqm44Go44GXIgorIuOBpuOBryBgcmVxdWlyZWQn44CBYHN0YW5kYXJkJ+OAgWBvcHRpb25hbCfjgIFgZXh0cmEnIOOBquOBqeOBjOOBguOCi+OAgiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zcmMtY29udHJvbC41OjExMAorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPERlcGVuZHM6PiBFPGx0PnBhY2thZ2UgbGlzdEU8Z3Q+IgorbXNnaWQgIkI8QnVpbGQtRGVwZW5kczo+STwgcGFja2FnZS1saXN0PiIKK21zZ3N0ciAiQjxEZXBlbmRzOj4gRTxsdD7jg5Hjg4PjgrHjg7zjgrjjg6rjgrnjg4hFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MTE0CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJJbiB0aGUgbGlzdCBvZiBwYWNrYWdlcywgdGhlIHRleHQgaW5kaWNhdGluZyB0aGUgY3VycmVudCBzdGF0ZSBvZiB0aGUgIgorI3wgImN1cnJlbnRseSBzZWxlY3RlZCBwYWNrYWdlLiIKK21zZ2lkICIiCisiQSBsaXN0IG9mIHBhY2thZ2VzIHRoYXQgbmVlZCB0byBiZSBpbnN0YWxsZWQgYW5kIGNvbmZpZ3VyZWQgdG8gYmUgYWJsZSB0byAiCisiYnVpbGQgdGhlIHNvdXJjZSBwYWNrYWdlLiIKK21zZ3N0ciAi44OR44OD44Kx44O844K444Oq44K544OI5Lit44CB6YG45oqe44GX44Gf44OR44OD44Kx44O844K444Gu54++5Zyo54q25rOB6KGo56S66YOoIgorCisjLiB0eXBlOiBUUAorIzogZGViLXNyYy1jb250cm9sLjU6MTE1CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8RGVwZW5kczo+IEU8bHQ+cGFja2FnZSBsaXN0RTxndD4iCittc2dpZCAiQjxCdWlsZC1EZXBlbmRzLUluZGVwOj5JPCBwYWNrYWdlLWxpc3Q+IgorbXNnc3RyICJCPERlcGVuZHM6PiBFPGx0PuODkeODg+OCseODvOOCuOODquOCueODiEU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToxMjAKK21zZ2lkICIiCisiU2FtZSBhcyBCPEJ1aWxkLURlcGVuZHM+LCBidXQgdGhleSBhcmUgb25seSBuZWVkZWQgd2hlbiBidWlsZGluZyB0aGUgIgorImFyY2hpdGVjdHVyZSBpbmRlcGVuZGVudCBwYWNrYWdlcy4gVGhlIEI8QnVpbGQtRGVwZW5kcz4gYXJlIGFsc28gaW5zdGFsbGVkICIKKyJpbiB0aGlzIGNhc2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3JjLWNvbnRyb2wuNToxMjEKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxDb25mbGljdHM6PiBFPGx0PnBhY2thZ2UgbGlzdEU8Z3Q+IgorbXNnaWQgIkI8QnVpbGQtQ29uZmxpY3RzOj5JPCBwYWNrYWdlLWxpc3Q+IgorbXNnc3RyICJCPENvbmZsaWN0czo+IEU8bHQ+44OR44OD44Kx44O844K444Oq44K544OIRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjEyNQorbXNnaWQgIiIKKyJBIGxpc3Qgb2YgcGFja2FnZXMgdGhhdCBzaG91bGQgbm90IGJlIGluc3RhbGxlZCB3aGVuIHRoZSBwYWNrYWdlIGlzIGJ1aWxkLCAiCisiZm9yIGV4YW1wbGUgYmVjYXVzZSB0aGV5IGludGVyZmVyZSB3aXRoIHRoZSB1c2VkIGJ1aWxkIHN5c3RlbS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zcmMtY29udHJvbC41OjEyNgorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPENvbmZsaWN0czo+IEU8bHQ+cGFja2FnZSBsaXN0RTxndD4iCittc2dpZCAiQjxCdWlsZC1Db25mbGljdHMtSW5kZXA6Pkk8IHBhY2thZ2UtbGlzdD4iCittc2dzdHIgIkI8Q29uZmxpY3RzOj4gRTxsdD7jg5Hjg4PjgrHjg7zjgrjjg6rjgrnjg4hFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MTMwCittc2dpZCAiIgorIlNhbWUgYXMgQjxCdWlsZC1Db25mbGljdHM+LCBidXQgb25seSB3aGVuIGJ1aWxkaW5nIHRoZSBhcmNoaXRlY3R1cmUgIgorImluZGVwZW5kZW50IHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToxNDEKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlRoZSBzeW50YXggb2YgQjxEZXBlbmRzPiwgQjxQcmUtRGVwZW5kcz4sIEI8UmVjb21tZW5kcz4gYW5kIEI8U3VnZ2VzdHM+ICIKKyN8ICJmaWVsZHMgaXMgYSBsaXN0IG9mIGdyb3VwcyBvZiBhbHRlcm5hdGl2ZSBwYWNrYWdlcy4gRWFjaCBncm91cCBpcyBhIGxpc3QgIgorI3wgIm9mIHBhY2thZ2VzIHNlcGFyYXRlZCBieSB2ZXJ0aWNhbCBiYXIgKG9yIGBwaXBlJykgc3ltYm9scywgYHwnLiBUaGUgIgorI3wgImdyb3VwcyBhcmUgc2VwYXJhdGVkIGJ5IGNvbW1hcy4gQ29tbWFzIGFyZSB0byBiZSByZWFkIGFzIGBBTkQnLCBhbmQgcGlwZXMgIgorI3wgImFzIGBPUicsIHdpdGggcGlwZXMgYmluZGluZyBtb3JlIHRpZ2h0bHkuIEVhY2ggcGFja2FnZSBuYW1lIGlzIG9wdGlvbmFsbHkgIgorI3wgImZvbGxvd2VkIGJ5IGEgdmVyc2lvbiBudW1iZXIgc3BlY2lmaWNhdGlvbiBpbiBwYXJlbnRoZXNlcy4iCittc2dpZCAiIgorIlRoZSBzeW50YXggb2YgdGhlIEI8QnVpbGQtRGVwZW5kcz4gYW5kIEI8QnVpbGQtRGVwZW5kcy1JbmRlcD4gZmllbGRzIGlzIGEgIgorImxpc3Qgb2YgZ3JvdXBzIG9mIGFsdGVybmF0aXZlIHBhY2thZ2VzLiBFYWNoIGdyb3VwIGlzIGEgbGlzdCBvZiBwYWNrYWdlcyAiCisic2VwYXJhdGVkIGJ5IHZlcnRpY2FsIGJhciAob3IgXCJwaXBlXCIpIHN5bWJvbHMsIFwifFwiLiBUaGUgZ3JvdXBzIGFyZSAiCisic2VwYXJhdGVkIGJ5IGNvbW1hcy4gQ29tbWFzIGFyZSB0byBiZSByZWFkIGFzIFwiQU5EXCIsIGFuZCBwaXBlcyBhcyBcIk9SXCIsICIKKyJ3aXRoIHBpcGVzIGJpbmRpbmcgbW9yZSB0aWdodGx5LiBFYWNoIHBhY2thZ2UgbmFtZSBpcyBvcHRpb25hbGx5IGZvbGxvd2VkIGJ5ICIKKyJhIHZlcnNpb24gbnVtYmVyIHNwZWNpZmljYXRpb24gaW4gcGFyZW50aGVzZXMgYW5kIGFuIGFyY2hpdGVjdHVyZSAiCisic3BlY2lmaWNhdGlvbiBpbiBzcXVhcmUgYnJhY2tldHMuIgorbXNnc3RyICIiCisiQjxEZXBlbmRzPiwgQjxQcmUtRGVwZW5kcz4sIEI8UmVjb21tZW5kcz4sIEI8U3VnZ2VzdHM+IOODleOCo+ODvOODq+ODieOBr+OAgeS7o+abv+ODkeODgyIKKyLjgrHjg7zjgrjjgrDjg6vjg7zjg5fjga7jg6rjgrnjg4jjgafooajnj77jgZnjgovjgILlkITku6Pmm7/jgrDjg6vjg7zjg5fjgafjga/jg5Hjg4PjgrHjg7zjgrjjgpLnuKbmo5IgKOOCguOBl+OBjyIKKyLjga8gYOODkeOCpOODlycpIOiomOWPtyBgfCfjgafljLrliIfjgovjgILjgrDjg6vjg7zjg5fjga/jgrPjg7Pjg57jgafljLrliIfjgovjgILjgrPjg7Pjg57jga8gYEFORCcg44Go6KejIgorIumHiOOBl+OAgeODkeOCpOODl+OBryBgT1InIOOBqOino+mHiOOBmeOCi+OBk+OBqOOBjOOBp+OBjeOCi+OAguODkeOCpOODlyAoT1IpIOOBruaWueOBjOa8lOeul+OBruWEquWFiOW6puOBjCIKKyLpq5jjgY/jgarjgaPjgabjgYTjgovjgILjgqrjg5fjgrfjg6fjg7PjgafjgIHjgZ3jgozjgZ7jgozjga7jg5Hjg4PjgrHjg7zjgrjlkI3jgavntprjgZHjgabmi6zlvKfjgafjgY/jgY/jgonjgozjgZ8iCisi44OQ44O844K444On44Oz55Wq5Y+344Gu5oyH5a6a44GM44Gn44GN44KL44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToxNTAKK21zZ2lkICIiCisiVGhlIHN5bnRheCBvZiB0aGUgQjxCdWlsZC1Db25mbGljdHM+IGFuZCBCPEJ1aWxkLUNvbmZsaWN0cy1JbmRlcD4gZmllbGRzIGlzICIKKyJhIGxpc3Qgb2YgY29tbWEtc2VwYXJhdGVkIHBhY2thZ2UgbmFtZXMsIHdoZXJlIHRoZSBjb21tYSBpcyByZWFkIGFzIGFuIFwiQU5EIgorIlwiLiBTcGVjaWZ5aW5nIGFsdGVybmF0aXZlIHBhY2thZ2VzIHVzaW5nIGEgXCJwaXBlXCIgaXMgbm90IHN1cHBvcnRlZC4gIEVhY2ggIgorInBhY2thZ2UgbmFtZSBpcyBvcHRpb25hbGx5IGZvbGxvd2VkIGJ5IGEgdmVyc2lvbiBudW1iZXIgc3BlY2lmaWNhdGlvbiBpbiAiCisicGFyZW50aGVzZXMgYW5kIGFuIGFyY2hpdGVjdHVyZSBzcGVjaWZpY2F0aW9uIGluIHNxdWFyZSBicmFja2V0cy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MTU2CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJBIHZlcnNpb24gbnVtYmVyIG1heSBzdGFydCB3aXRoIGEgYEU8Z3Q+RTxndD4nLCBpbiB3aGljaCBjYXNlIGFueSBsYXRlciAiCisjfCAidmVyc2lvbiB3aWxsIG1hdGNoLCBhbmQgbWF5IHNwZWNpZnkgb3Igb21pdCB0aGUgRGViaWFuIHBhY2thZ2luZyByZXZpc2lvbiAiCisjfCAiKHNlcGFyYXRlZCBieSBhIGh5cGhlbikuIEFjY2VwdGVkIHZlcnNpb24gcmVsYXRpb25zaGlwcyBhcmUgXCJFPGd0PkU8Z3Q+IgorI3wgIlwiIGZvciBncmVhdGVyIHRoYW4sIFwiRTxsdD5FPGx0PlwiIGZvciBsZXNzIHRoYW4sIFwiRTxndD49XCIgZm9yIGdyZWF0ZXIgIgorI3wgInRoYW4gb3IgZXF1YWwgdG8sIFwiRTxsdD49XCIgZm9yIGxlc3MgdGhhbiBvciBlcXVhbCB0bywgYW5kIFwiPVwiIGZvciAiCisjfCAiZXF1YWwgdG8uIgorbXNnaWQgIiIKKyJBIHZlcnNpb24gbnVtYmVyIG1heSBzdGFydCB3aXRoIGEgXCJFPGd0PkU8Z3Q+XCIsIGluIHdoaWNoIGNhc2UgYW55IGxhdGVyICIKKyJ2ZXJzaW9uIHdpbGwgbWF0Y2gsIGFuZCBtYXkgc3BlY2lmeSBvciBvbWl0IHRoZSBEZWJpYW4gcGFja2FnaW5nIHJldmlzaW9uICIKKyIoc2VwYXJhdGVkIGJ5IGEgaHlwaGVuKS4gQWNjZXB0ZWQgdmVyc2lvbiByZWxhdGlvbnNoaXBzIGFyZSBcIkU8Z3Q+RTxndD5cIiAiCisiZm9yIGdyZWF0ZXIgdGhhbiwgXCJFPGx0PkU8bHQ+XCIgZm9yIGxlc3MgdGhhbiwgXCJFPGd0Pj1cIiBmb3IgZ3JlYXRlciB0aGFuICIKKyJvciBlcXVhbCB0bywgXCJFPGx0Pj1cIiBmb3IgbGVzcyB0aGFuIG9yIGVxdWFsIHRvLCBhbmQgXCI9XCIgZm9yIGVxdWFsIHRvLiIKK21zZ3N0ciAiIgorIuODkOODvOOCuOODp+ODs+eVquWPt+OBjCBgRTxndD5FPGd0Picg44Gn44Gv44GY44G+44KL5aC05ZCI44Gv44CB44Gd44KM5Lul6ZmN44Gu44OQ44O844K444On44Oz5YWo44Gm44GrIgorIuODnuODg+ODgeOBmeOCi+OAguODkOODvOOCuOODp+ODs+eVquWPt+OBr+OAgeODj+OCpOODleODs+OBq+e2muOBkeOBpiBEZWJpYW4g44OR44OD44Kx44O844K444Oq44OT44K444On44Oz44KSIgorIuaMh+WumuOBl+OBpuOCguOCiOOBhOOBl+OAgeecgeeVpeOBl+OBpuOCguOCiOOBhOOAguODkOODvOOCuOODp+ODs+mWouS/guOCkuekuuOBmeiomOWPt+OBqOOBl+OBpuOBr+OAgSAiCisiXCJFPGd0PkU8Z3Q+XCIg44CM44KI44KK5paw44GX44GE44CN44CBIFwiRTxsdD5FPGx0PlwiIOOAjOOCiOOCiuWPpOOBhOOAjeOAgSBcIkU8Z3Q+PVwiIOOAjOWQjCIKKyLjgZjjgYvmlrDjgZfjgYTjgI3jgIEgXCJFPGx0Pj1cIiDjgIzlkIzjgZjjgYvlj6TjgYTjgI3jgIEgXCI9XCIg44CM5ZCM44GY44CN44GM44GC44KL44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToxNjAKK21zZ2lkICIiCisiQSBhcmNoaXRlY3R1cmUgc3BlY2lmaWNhdGlvbiBjb25zaXN0cyBvZiBvbmUgb3IgbW9yZSBhcmNoaXRlY3R1cmUgbmFtZXMsICIKKyJzZXBhcmF0ZWQgYnkgd2hpdGVzcGFjZS4gRXhjbGFtYXRpb24gbWFya3MgbWF5IGJlIHByZXBlbmRlZCB0byBlYWNoIG9mIHRoZSAiCisibmFtZXMsIG1lYW5pbmcgXCJOT1RcIi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MTY1Cittc2dpZCAiIgorIk5vdGUgdGhhdCBkZXBlbmRlbmNpZXMgb24gcGFja2FnZXMgaW4gdGhlIEI8YnVpbGQtZXNzZW50aWFsPiBzZXQgY2FuIGJlICIKKyJvbWl0dGVkIGFuZCB0aGF0IGRlY2xhcmluZyBidWlsZCBjb25mbGljdHMgYWdhaW5zdCB0aGVtIGlzIGltcG9zc2libGUuIEEgIgorImxpc3Qgb2YgdGhlc2UgcGFja2FnZXMgaXMgaW4gdGhlIGJ1aWxkLWVzc2VudGlhbCBwYWNrYWdlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZGViLXNyYy1jb250cm9sLjU6MTY3CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIk9QVElPTkFMIEZJRUxEUyIKK21zZ2lkICJCSU5BUlkgRklFTERTIgorbXNnc3RyICLjgqrjg5fjgrfjg6fjg7Pjga7jg5XjgqPjg7zjg6vjg4kiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjE3NgorbXNnaWQgIiIKKyJOb3RlIHRoYXQgdGhlIEI8UHJpb3JpdHk+LCBCPFNlY3Rpb24+IGFuZCBCPEhvbWVwYWdlPiBmaWVsZHMgY2FuIGFsc28gYmUgaW4gIgorImEgYmluYXJ5IHBhcmFncmFwaCB0byBvdmVycmlkZSB0aGUgZ2xvYmFsIHZhbHVlIGZyb20gdGhlIHNvdXJjZSBwYWNrYWdlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLXNyYy1jb250cm9sLjU6MTc3CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8UGFja2FnZTo+IEU8bHQ+cGFja2FnZSBuYW1lRTxndD4iCittc2dpZCAiQjxQYWNrYWdlOj4gSTxiaW5hcnktcGFja2FnZS1uYW1lPiAocmVxdWlyZWQpIgorbXNnc3RyICJCPFBhY2thZ2U6PiBFPGx0PuODkeODg+OCseODvOOCuOWQjUU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToxODEKK21zZ2lkICIiCisiVGhpcyBmaWVsZCBpcyB1c2VkIHRvIG5hbWUgdGhlIGJpbmFyeSBwYWNrYWdlIG5hbWUuIFRoZSBzYW1lIHJlc3RyaWN0aW9ucyBhcyAiCisidG8gYSBzb3VyY2UgcGFja2FnZSBuYW1lIGFwcGx5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLXNyYy1jb250cm9sLjU6MTgyCisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8QXJjaGl0ZWN0dXJlOj4gRTxsdD5hcmNofGFsbEU8Z3Q+IgorbXNnaWQgIkI8QXJjaGl0ZWN0dXJlOj4gSTxhcmNoPnxCPGFsbD58Qjxhbnk+IChyZXF1aXJlZCkiCittc2dzdHIgIkI8QXJjaGl0ZWN0dXJlOj4gRTxsdD5hcmNofGFsbEU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToxOTUKK21zZ2lkICIiCisiVGhlIGFyY2hpdGVjdHVyZSBzcGVjaWZpZXMgb24gd2hpY2ggdHlwZSBvZiBoYXJkd2FyZSB0aGlzIHBhY2thZ2UgcnVucy4gRm9yICIKKyJwYWNrYWdlcyB0aGF0IHJ1biBvbiBhbGwgYXJjaGl0ZWN0dXJlcywgdXNlIHRoZSBCPGFueT4gdmFsdWUuIEZvciBwYWNrYWdlcyAiCisidGhhdCBhcmUgYXJjaGl0ZWN0dXJlIGluZGVwZW5kZW50LCBzdWNoIGFzIHNoZWxsIGFuZCBQZXJsIHNjcmlwdHMgb3IgIgorImRvY3VtZW50YXRpb24sIHVzZSB0aGUgQjxhbGw+IHZhbHVlLiBUbyByZXN0cmljdCB0aGUgcGFja2FnZXMgdG8gYSBjZXJ0YWluICIKKyJzZXQgb2YgYXJjaGl0ZWN0dXJlcywgc3BlY2lmeSB0aGUgYXJjaGl0ZWN0dXJlIG5hbWVzLCBzZXBhcmF0ZWQgYnkgYSBzcGFjZS4gIgorIkl0J3MgYWxzbyBwb3NzaWJsZSB0byBwdXQgYXJjaGl0ZWN0dXJlIHdpbGRjYXJkcyBpbiB0aGF0IGxpc3QgKHNlZSBCPGRwa2ctIgorImFyY2hpdGVjdHVyZT4oMSkgIGZvciBtb3JlIGluZm9ybWF0aW9uIGFib3V0IHRoZW0pLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLXNyYy1jb250cm9sLjU6MTk2CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8UGFja2FnZTo+IEU8bHQ+cGFja2FnZSBuYW1lRTxndD4iCittc2dpZCAiQjxQYWNrYWdlLVR5cGU6PiBCPGRlYj58Qjx1ZGViPiIKK21zZ3N0ciAiQjxQYWNrYWdlOj4gRTxsdD7jg5Hjg4PjgrHjg7zjgrjlkI1FPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MjAxCittc2dpZCAiIgorIlRoaXMgZmllbGQgZGVmaW5lcyB0aGUgdHlwZSBvZiB0aGUgcGFja2FnZS4gXCJ1ZGViXCIgaXMgZm9yIHNpemUtY29uc3RyYWluZWQgIgorInBhY2thZ2VzIHVzZWQgYnkgdGhlIGRlYmlhbiBpbnN0YWxsZXIuIFwiZGViXCIgaXMgdGhlIGRlZmF1bHQgdmFsdWUsIGl0J3MgIgorImFzc3VtZWQgaWYgdGhlIGZpZWxkIGlzIGFic2VudC4gTW9yZSB0eXBlcyBtaWdodCBiZSBhZGRlZCBpbiB0aGUgZnV0dXJlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLXNyYy1jb250cm9sLjU6MjI1CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8RGVzY3JpcHRpb246PiBFPGx0PnNob3J0IGRlc2NyaXB0aW9uRTxndD4iCittc2dpZCAiQjxEZXNjcmlwdGlvbjo+IEk8c2hvcnQtZGVzY3JpcHRpb24+IChyZXF1aXJlZCkiCittc2dzdHIgIkI8RGVzY3JpcHRpb246PiBFPGx0PuefreOBhOiqrOaYjkU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToyMzIKK21zZ2lkICIiCisiVGhlc2UgZmllbGRzIGFyZSBkZXNjcmliZWQgaW4gdGhlIEI8ZGViLWNvbnRyb2w+KDUpICBtYW51YWwgcGFnZSwgYXMgdGhleSAiCisiYXJlIGNvcGllZCBsaXRlcmFsbHkgdG8gdGhlIGNvbnRyb2wgZmlsZSBvZiB0aGUgYmluYXJ5IHBhY2thZ2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3JjLWNvbnRyb2wuNToyNDgKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxSZXBsYWNlczo+IEU8bHQ+cGFja2FnZSBsaXN0RTxndD4iCittc2dpZCAiQjxFbmhhbmNlczo+STwgcGFja2FnZS1saXN0PiIKK21zZ3N0ciAiQjxSZXBsYWNlczo+IEU8bHQ+44OR44OD44Kx44O844K444Oq44K544OIRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjI3MAorbXNnaWQgIiIKKyJUaGVzZSBmaWVsZHMgZGVjbGFyZSByZWxhdGlvbnNoaXBzIGJldHdlZW4gcGFja2FnZXMuIFRoZXkgYXJlIGRpc2N1c3NlZCBpbiAiCisidGhlIEI8ZGViLWNvbnRyb2w+KDUpICBtYW5wYWdlIGFuZCBpbiB0aGUgQjxkZWJpYW4tcG9saWN5PiBwYWNrYWdlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZGViLXNyYy1jb250cm9sLjU6MjcxCisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIlJFUVVJUkVEIEZJRUxEUyIKK21zZ2lkICJVU0VSLURFRklORUQgRklFTERTIgorbXNnc3RyICLlv4XpoIjjg5XjgqPjg7zjg6vjg4kiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjI4NgorbXNnaWQgIiIKKyJJdCBpcyBhbGxvd2VkIHRvIGFkZCBhZGRpdGlvbmFsIHVzZXItZGVmaW5lZCBmaWVsZHMgdG8gdGhlIGNvbnRyb2wgZmlsZS4gVGhlICIKKyJ0b29scyB3aWxsIGlnbm9yZSB0aGVzZSBmaWVsZHMuIElmIHlvdSB3YW50IHRoZSBmaWVsZHMgdG8gYmUgY29waWVkIG92ZXIgdG8gIgorInRoZSBvdXRwdXQgZmlsZXMsIHN1Y2ggYXMgdGhlIGJpbmFyeSBwYWNrYWdlcywgeW91IG5lZWQgdG8gdXNlIGEgY3VzdG9tICIKKyJuYW1pbmcgc2NoZW1lOiB0aGUgZmllbGRzIHNob3VsZCBzdGFydCB3aXRoIGEgWCwgZm9sbG93ZWQgYnkgb25lIG9yIG1vcmUgb2YgIgorInRoZSBsZXR0ZXJzIEJDUyBhbmQgYSBoeXBlbi4gSWYgdGhlIGxldHRlciBCIGlzIHVzZWQsIHRoZSBmaWVsZCB3aWxsIGFwcGVhciAiCisiaW4gdGhlIGNvbnRyb2wgZmlsZSBpbiB0aGUgYmluYXJ5IHBhY2thZ2UsIHNlZSBCPGRlYi1jb250cm9sPig1KSwgZm9yIHRoZSAiCisibGV0dGVyIFMgaW4gdGhlIHNvdXJjZSBwYWNrYWdlIGNvbnRyb2wgZmlsZSBhcyBjb25zdHJ1Y3RlZCBieSBCPGRwa2ctc291cmNlPiIKKyIoMSkgIGFuZCBmb3IgdGhlIGxldHRlciBDIGluIHRoZSB1cGxvYWQgY29udHJvbCAoLmNoYW5nZXMpIGZpbGUuIE5vdGUgdGhhdCAiCisidGhlIFhbQkNTXS0gcHJlZml4ZXMgYXJlIHN0cmlwcGVkIHdoZW4gdGhlIGZpZWxkcyBhcmUgY29waWVkIG92ZXIgdG8gdGhlICIKKyJvdXRwdXQgZmlsZXMuIEEgZmllbGQgQjxYQy1BcHByb3ZlZC1CeT4gd2lsbCBhcHBlYXIgYXMgQjxBcHByb3ZlZC1CeT4gaW4gdGhlICIKKyJjaGFuZ2VzIGZpbGUgYW5kIHdpbGwgbm90IGFwcGVhciBpbiB0aGUgYmluYXJ5IG9yIHNvdXJjZSBwYWNrYWdlIGNvbnRyb2wgIgorImZpbGVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNTozMDQKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiIyBDb21tZW50XG4iCisiU291cmNlOiBkcGtnXG4iCisiU2VjdGlvbjogYWRtaW5cbiIKKyJQcmlvcml0eTogcmVxdWlyZWRcbiIKKyJNYWludGFpbmVyOiBEcGtnIERldmVsb3BlcnMgRTxsdD5kZWJpYW4tZHBrZ0BsaXN0cy5kZWJpYW4ub3JnRTxndD5cbiIKKyIjIHRoaXMgZmllbGQgaXMgY29waWVkIHRvIHRoZSBiaW5hcnkgYW5kIHNvdXJjZSBwYWNrYWdlc1xuIgorIlhCUy1VcHN0cmVhbS1SZWxlYXNlLVN0YXR1czogc3RhYmxlXG4iCisiSG9tZXBhZ2U6IGh0dHA6Ly93aWtpLmRlYmlhbi5vcmcvVGVhbXMvRHBrZ1xuIgorIlZjcy1Ccm93c2VyOiBodHRwOi8vZ2l0LmRlYmlhbi5vcmcvP3A9ZHBrZy9kcGtnLmdpdFxuIgorIlZjcy1HaXQ6IGdpdDovL2dpdC5kZWJpYW4ub3JnL2dpdC9kcGtnL2Rwa2cuZ2l0XG4iCisiU3RhbmRhcmRzLVZlcnNpb246IDMuNy4zXG4iCisiQnVpbGQtRGVwZW5kczogcGtnLWNvbmZpZywgZGViaGVscGVyIChFPGd0Pj0gNC4xLjgxKSxcbiIKKyIgbGlic2VsaW51eDEtZGV2IChFPGd0Pj0gMS4yOC00KSBbIWxpbnV4LWFueV1cbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNTozMjMKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiUGFja2FnZTogZHBrZy1kZXZcbiIKKyJTZWN0aW9uOiB1dGlsc1xuIgorIlByaW9yaXR5OiBvcHRpb25hbFxuIgorIkFyY2hpdGVjdHVyZTogYWxsXG4iCisiIyB0aGlzIGlzIGEgY3VzdG9tIGZpZWxkIGluIHRoZSBiaW5hcnkgcGFja2FnZVxuIgorIlhCLU1lbnRvcmluZy1Db250YWN0OiBSYXBoYWVsIEhlcnR6b2cgRTxsdD5oZXJ0em9nQGRlYmlhbi5vcmdFPGd0PlxuIgorIkRlcGVuZHM6IGRwa2cgKEU8Z3Q+PSAxLjE0LjYpLCBwZXJsNSwgcGVybC1tb2R1bGVzLCBjcGlvIChFPGd0Pj0gMi40LjItMiksXG4iCisiIGJ6aXAyLCBsem1hLCBwYXRjaCAoRTxndD49IDIuMi0xKSwgbWFrZSwgYmludXRpbHMsIGxpYnRpbWVkYXRlLXBlcmxcbiIKKyJSZWNvbW1lbmRzOiBnY2MgfCBjLWNvbXBpbGVyLCBidWlsZC1lc3NlbnRpYWxcbiIKKyJTdWdnZXN0czogZ251cGcsIGRlYmlhbi1rZXlyaW5nXG4iCisiQ29uZmxpY3RzOiBkcGtnLWNyb3NzIChFPGx0PkU8bHQ+IDIuMC4wKSwgZGV2c2NyaXB0cyAoRTxsdD5FPGx0PiAyLjEwLjI2KVxuIgorIlJlcGxhY2VzOiBtYW5wYWdlcy1wbCAoRTxsdD49IDIwMDUxMTE3LTEpXG4iCisiRGVzY3JpcHRpb246IERlYmlhbiBwYWNrYWdlIGRldmVsb3BtZW50IHRvb2xzXG4iCisiIFRoaXMgcGFja2FnZSBwcm92aWRlcyB0aGUgZGV2ZWxvcG1lbnQgdG9vbHMgKGluY2x1ZGluZyBkcGtnLXNvdXJjZSlcbiIKKyIgcmVxdWlyZWQgdG8gdW5wYWNrLCBidWlsZCBhbmQgdXBsb2FkIERlYmlhbiBzb3VyY2UgcGFja2FnZXMuXG4iCisiIC5cbiIKKyIgTW9zdCBEZWJpYW4gc291cmNlIHBhY2thZ2VzIHdpbGwgcmVxdWlyZSBhZGRpdGlvbmFsIHRvb2xzIHRvIGJ1aWxkO1xuIgorIiBmb3IgZXhhbXBsZSwgbW9zdCBwYWNrYWdlcyBuZWVkIG1ha2UgYW5kIHRoZSBDIGNvbXBpbGVyIGdjYy5cbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNTozMzAKKyMsIGZ1enp5Cittc2dpZCAiQjxkZWItY29udHJvbD4oNSksIEI8ZGViLXZlcnNpb24+KDUpLCBCPGRwa2ctc291cmNlPigxKSIKK21zZ3N0ciAiQjxkZWI+KDUpLCBCPGRlYi1jb250cm9sPig1KSwgQjxkcGtnPigxKSwgQjxkc2VsZWN0PigxKS4iCisKKyMuIHR5cGU6IFRICisjOiBkZWItc3BsaXQuNToxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgImRlYi1zcGxpdCIKK21zZ3N0ciAiZHBrZyBzdWl0ZSIKKworIy4gdHlwZTogVEgKKyM6IGRlYi1zcGxpdC41OjEgZHBrZy1jaGVja2J1aWxkZGVwcy4xOjEgZHBrZy1kaXN0YWRkZmlsZS4xOjEgZHBrZy1zcGxpdC4xOjIKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6MSBkcGtnLXZlbmRvci4xOjEgc3RhcnQtc3RvcC1kYWVtb24uODoxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIjIwMTEtMDctMDQiCittc2dzdHIgIjIwMDYtMDQtMDkiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcGxpdC41OjQKKyMsIGZ1enp5CisjfCBtc2dpZCAiZGViIC0gRGViaWFuIGJpbmFyeSBwYWNrYWdlIGZvcm1hdCIKK21zZ2lkICJkZWItc3BsaXQgLSBEZWJpYW4gbXVsdGktcGFydCBiaW5hcnkgcGFja2FnZSBmb3JtYXQiCittc2dzdHIgImRlYiAtIERlYmlhbiDjg5DjgqTjg4rjg6rjg5Hjg4PjgrHjg7zjgrjlvaLlvI8iCisKKyMgdHlwZTogUGxhaW4gdGV4dAorIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNwbGl0LjU6OQorbXNnaWQgIiIKKyJUaGUgbXVsdGktcGFydCBCPC5kZWI+IGZvcm1hdCBpcyB1c2VkIHRvIHNwbGl0IGJpZyBwYWNrYWdlcyBpbnRvIHNtYWxsZXIgIgorInBpZWNlcyB0byBlYXNlIHRyYW5zcG9ydCBpbiBzbWFsbCBtZWRpYS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNwbGl0LjU6MTIKKyMsIGZ1enp5Cittc2dpZCAiIgorIlRoZSBmaWxlIGlzIGFuIEI8YXI+IGFyY2hpdmUgd2l0aCBhIG1hZ2ljIHZhbHVlIG9mIEI8IUU8bHQ+YXJjaEU8Z3Q+Pi4gIFRoZSAiCisiZmlsZSBuYW1lcyBtaWdodCBjb250YWluIGEgdHJhaWxpbmcgc2xhc2ggKHNpbmNlIGRwa2cgMS4xNS42KS4iCittc2dzdHIgIiIKKyLjgZPjga7jg5XjgqHjgqTjg6vjga/jg57jgrjjg4Pjgq/jg4rjg7Pjg5Djg7wgQjwhRTxsdD5hcmNoRTxndD4+IOOCkuaMgeOBpCBCPGFyPiDjgqLjg7zjgqvjgqTjg5bjgafjgYIiCisi44KL44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3BsaXQuNToxNQorbXNnaWQgIiIKKyJUaGUgZmlyc3QgbWVtYmVyIGlzIG5hbWVkIEI8ZGViaWFuLXNwbGl0PiBhbmQgY29udGFpbnMgYSBzZXJpZXMgb2YgbGluZXMsICIKKyJzZXBhcmF0ZWQgYnkgbmV3bGluZXMuIEN1cnJlbnRseSBlaWdodCBsaW5lcyBhcmUgcHJlc2VudDoiCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRlYi1zcGxpdC41OjE1IGRlYi1zcGxpdC41OjE4IGRlYi1zcGxpdC41OjIwIGRlYi1zcGxpdC41OjIyIGRlYi1zcGxpdC41OjI0CisjOiBkZWItc3BsaXQuNToyNiBkZWItc3BsaXQuNToyOCBkZWItc3BsaXQuNTozMSBkcGtnLWdlbnN5bWJvbHMuMToyMAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjIgZHBrZy1nZW5zeW1ib2xzLjE6MjQgZHBrZy1nZW5zeW1ib2xzLjE6MjYKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjMxMSBkcGtnLWdlbnN5bWJvbHMuMTozMTcgZHBrZy1nZW5zeW1ib2xzLjE6MzUxCisjOiBkcGtnLWdlbnN5bWJvbHMuMTozNTUgZHBrZy1nZW5zeW1ib2xzLjE6MzU4CisjLCBuby13cmFwCittc2dpZCAiXFwoYnUiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNwbGl0LjU6MTgKK21zZ2lkICIiCisiVGhlIGZvcm1hdCB2ZXJzaW9uIG51bWJlciwgQjwyLjE+IGF0IHRoZSB0aW1lIHRoaXMgbWFudWFsIHBhZ2Ugd2FzIHdyaXR0ZW4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcGxpdC41OjIwCisjLCBmdXp6eQorbXNnaWQgIlRoZSBwYWNrYWdlIG5hbWUuIgorbXNnc3RyICLjg5Hjg4PjgrHjg7zjgrjjga7nn63jgYToqqzmmI7mlociCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcGxpdC41OjIyCisjLCBmdXp6eQorbXNnaWQgIlRoZSBwYWNrYWdlIHZlcnNpb24uIgorbXNnc3RyICLjg5Hjg4PjgrHjg7zjgrjjga7nn63jgYToqqzmmI7mlociCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcGxpdC41OjI0CisjLCBmdXp6eQorbXNnaWQgIlRoZSBtZDVzdW0gb2YgdGhlIHBhY2thZ2UuIgorbXNnc3RyICLjg5Hjg4PjgrHjg7zjgrjjga7nn63jgYToqqzmmI7mlociCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcGxpdC41OjI2CisjLCBmdXp6eQorI3wgbXNnaWQgIlRoZSBoZWFkZXIgbGluZSBhYm92ZSB0aGUgbGlzdCBvZiBwYWNrYWdlcy4iCittc2dpZCAiVGhlIHRvdGFsIHNpemUgb2YgdGhlIHBhY2thZ2UuIgorbXNnc3RyICLjg5Hjg4PjgrHjg7zjgrjjg6rjgrnjg4jjga7kuIrjga7jg5jjg4Pjg4Djg6njgqTjg7MiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcGxpdC41OjI4Cittc2dpZCAiVGhlIG1heGltdW0gcGFydCBzaXplLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3BsaXQuNTozMQorbXNnaWQgIiIKKyJUaGUgY3VycmVudCBwYXJ0IG51bWJlciwgZm9sbG93ZWQgYnkgYSBzbGFzaCBhbmQgdGhlIHRvdGFsIGFtb3VudCBvZiBwYXJ0cyAiCisiKGFzIGluIFxcKG9xMS8xMFxcKGNxKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNwbGl0LjU6MzMKK21zZ2lkICJUaGUgcGFja2FnZSBhcmNoaXRlY3R1cmUgKHNpbmNlIGRwa2cgMS4xNi4xKS4iCittc2dzdHIgIiIKKworIyB0eXBlOiBQbGFpbiB0ZXh0CisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3BsaXQuNTozNgorbXNnaWQgIiIKKyJQcm9ncmFtcyB3aGljaCByZWFkIG11bHRpLXBhcnQgYXJjaGl2ZXMgc2hvdWxkIGJlIHByZXBhcmVkIGZvciBhZGRpdGlvbmFsICIKKyJsaW5lcyB0byBiZSBwcmVzZW50LCBhbmQgc2hvdWxkIGlnbm9yZSB0aGVzZSBpZiB0aGlzIGlzIHRoZSBjYXNlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3BsaXQuNTo0MQorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiSWYgdGhlIG1ham9yIG51bWJlciBoYXMgY2hhbmdlZCwgYW4gaW5jb21wYXRpYmxlIGNoYW5nZSBoYXMgYmVlbiBtYWRlIGFuZCAiCisjfCAidGhlIHByb2dyYW0gc2hvdWxkIHN0b3AuIElmIGl0IGhhcyBub3QsIHRoZW4gdGhlIHByb2dyYW0gc2hvdWxkIGJlIGFibGUgIgorI3wgInRvIHNhZmVseSBjb250aW51ZSwgdW5sZXNzIGl0IGVuY291bnRlcnMgYW4gdW5leHBlY3RlZCBtZW1iZXIgaW4gdGhlICIKKyN8ICJhcmNoaXZlIChleGNlcHQgYXQgdGhlIGVuZCksIGFzIGRlc2NyaWJlZCBiZWxvdy4iCittc2dpZCAiIgorIklmIHRoZSB2ZXJzaW9uIG51bWJlciBoYXMgY2hhbmdlZCwgYW4gaW5jb21wYXRpYmxlIGNoYW5nZSBoYXMgYmVlbiBtYWRlIGFuZCAiCisidGhlIHByb2dyYW0gc2hvdWxkIHN0b3AuIElmIGl0IGhhcyBub3QsIHRoZW4gdGhlIHByb2dyYW0gc2hvdWxkIGJlIGFibGUgdG8gIgorInNhZmVseSBjb250aW51ZSwgdW5sZXNzIGl0IGVuY291bnRlcnMgYW4gdW5leHBlY3RlZCBtZW1iZXIgaW4gdGhlIGFyY2hpdmUgIgorIihleGNlcHQgYXQgdGhlIGVuZCksIGFzIGRlc2NyaWJlZCBiZWxvdy4iCittc2dzdHIgIiIKKyLjg6Hjgrjjg6Pjg7znlarlj7fjgYzlpInmm7TjgZXjgozjgabjgYTjgovloLTlkIjjgIHkupLmj5vmgKfjga7jgarjgYTlpInmm7TjgYzjgarjgZXjgozjgabjgYTjgovjgZ/jgoHjg5fjg63jgrDjg6kiCisi44Og44Gv5YGc5q2i44GX44Gq44GR44KM44Gw44Gq44KJ44Gq44GE44CC44Oh44K444Oj44O855Wq5Y+344GM5aSJ5pu044GV44KM44Gm44GE44Gq44GE5aC05ZCI44Gv44CB44Ki44O844Kr44Kk44OWIgorIuOBq+S6iOacn+OBl+OBquOBhOODoeODs+ODkOODvOOBjOWQq+OBvuOCjOOBpuOBhOOBquOBhOmZkOOCiijjgqLjg7zjgqvjgqTjg5bjga7mnIDlvozjgavlkKvjgb7jgozjgovloLTlkIjjgpLpmaQiCisi44GPKeOAgeODl+ODreOCsOODqeODoOOBr+WuieWFqOOBq+Wun+ihjOOCkue2mee2muOBp+OBjeOCi+OAguOBk+OCjOOBq+OBpOOBhOOBpuOBr+OAgeS7peS4i+OBp+iqrOaYjuOBmeOCi+OAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNwbGl0LjU6NDQKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlRoZSB0aGlyZCwgbGFzdCByZXF1aXJlZCBtZW1iZXIgaXMgbmFtZWQgQjxkYXRhLnRhci5nej4uICBJdCBjb250YWlucyB0aGUgIgorI3wgImZpbGVzeXN0ZW0gYXJjaGl2ZSBhcyBhIGd6aXBwZWQgdGFyIGFyY2hpdmUuIgorbXNnaWQgIiIKKyJUaGUgc2Vjb25kLCBsYXN0IHJlcXVpcmVkIG1lbWJlciBpcyBuYW1lZCBCPGRhdGEuPkk8Tj4sIHdoZXJlIEk8Tj4gZGVub3RlcyAiCisidGhlIHBhcnQgbnVtYmVyLiBJdCBjb250YWlucyB0aGUgcmF3IHBhcnQgZGF0YS4iCittc2dzdHIgIiIKKyLmnIDlvozjga4gMyDnlarnm67jgavopoHoq4vjgZXjgozjgovjg6Hjg7Pjg5Djg7zjga8gQjxkYXRhLnRhci5nej4g44Go44GE44GG44OV44Kh44Kk44Or5ZCN44KS5oyB44Gh44CBIgorIuODleOCoeOCpOODq+OCt+OCueODhuODoOOCouODvOOCq+OCpOODluOCkiBnemlwIOWcp+e4riB0YXIg5b2i5byP44Go44GX44Gm5ZCr44KA44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3BsaXQuNTo0OQorIywgZnV6enkKK21zZ2lkICIiCisiVGhlc2UgbWVtYmVycyBtdXN0IG9jY3VyIGluIHRoaXMgZXhhY3Qgb3JkZXIuIEN1cnJlbnQgaW1wbGVtZW50YXRpb25zIHNob3VsZCAiCisiaWdub3JlIGFueSBhZGRpdGlvbmFsIG1lbWJlcnMgYWZ0ZXIgQjxkYXRhLj5JPE4+LiAgRnVydGhlciBtZW1iZXJzIG1heSBiZSAiCisiZGVmaW5lZCBpbiB0aGUgZnV0dXJlLCBhbmQgKGlmIHBvc3NpYmxlKSB3aWxsIGJlIHBsYWNlZCBhZnRlciB0aGVzZSB0d28uIgorbXNnc3RyICIiCisi44GT44KM44KJ44Gu44Oh44Oz44OQ44O844Gv5LiK44Gr56S644GX44Gf6aCG5bqP44Gn54++44KM44Gq44GR44KM44Gw44Gq44KJ44Gq44GE44CC5bCG5p2l44CB6L+95Yqg44Oh44Oz44OQ44O844GMIgorIuWumue+qeOBleOCjOOBn+WgtOWQiOOAgeWPr+iDveOBquOCieOBsOOBk+OCjOOCiSAzIOOBpOOBruODoeODs+ODkOODvOOBruW+jOOBq+mFjee9ruOBleOCjOOCi+OBp+OBguOCjeOBhuOAguePvuWcqCIKKyLjga7lrp/oo4Xjgafjga/jgIFCPGRhdGEudGFyLmd6PiDku6Xlvozjga7jgYTjgYvjgarjgovov73liqDjg6Hjg7Pjg5Djg7zjgoLnhKHoppbjgZXjgozjgovjgILlsIbmnaXjgavjgYrjgYQiCisi44GmIEI8ZGF0YS50YXIuZ3o+IOOBruWJjeOBq+aMv+WFpeOBmeOCi+W/heimgeOBjOOBguOCiuOAgeOBneOCjOS7peWJjeOBruODl+ODreOCsOODqeODoOOBjOWuieWFqOOBq+eEoeimliIKKyLjgZnjgovjgZPjgajjga7jgafjgY3jgovov73liqDjg6Hjg7Pjg5Djg7zjgpLlrprnvqnjgZnjgovjgavjga/jgIHjgZ3jga7jg6Hjg7Pjg5Djg7zjga/jgqLjg7Pjg4Djg7zjgrnjgrPjgqIgIgorImBCPF8+JyDjgaflp4vjgb7jgovlkI3liY3jgpLmjIHjgabjgbDjgojjgYTjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcGxpdC41OjUxCisjLCBmdXp6eQorbXNnaWQgIkI8ZGViPig1KSwgQjxkcGtnLXNwbGl0PigxKS4iCittc2dzdHIgIiIKKyJCPGRlYj4oNSksIEI8ZGViLWNvbnRyb2w+KDUpLCBCPGRwa2c+KDEpLCBCPGRwa2ctZGViPigxKSwgQjxmaW5kPigxKSwgIgorIkI8eGFyZ3M+KDEpLiIKKworIy4gdHlwZTogVEgKKyM6IGRlYi12ZXJzaW9uLjU6NQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJkZWItdmVyc2lvbiIKK21zZ3N0ciAiQjwtLXZlcnNpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjgKKyMsIGZ1enp5Cittc2dpZCAiZGViLXZlcnNpb24gLSBEZWJpYW4gcGFja2FnZSB2ZXJzaW9uIG51bWJlciBmb3JtYXQiCittc2dzdHIgIiIKKyJkZWItY29udHJvbCAtIERlYmlhbiDjg5Hjg4PjgrHjg7zjgrjjga7jg57jgrnjgr/jg7zjgrPjg7Pjg4jjg63jg7zjg6vjg5XjgqHjgqTjg6vjg5Xjgqnjg7zjg57jg4Pjg4giCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6MTEKK21zZ2lkICJbSTxlcG9jaD5CPDo+XUk8dXBzdHJlYW0tdmVyc2lvbj5bQjwtPkk8ZGViaWFuLXJldmlzaW9uPl0iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNToxNAorbXNnaWQgIiIKKyJWZXJzaW9uIG51bWJlcnMgYXMgdXNlZCBmb3IgRGViaWFuIGJpbmFyeSBhbmQgc291cmNlIHBhY2thZ2VzIGNvbnNpc3Qgb2YgIgorInRocmVlIGNvbXBvbmVudHMuIFRoZXNlIGFyZToiCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi12ZXJzaW9uLjU6MTQKKyMsIG5vLXdyYXAKK21zZ2lkICJJPGVwb2NoPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjIwCittc2dpZCAiIgorIlRoaXMgaXMgYSBzaW5nbGUgKGdlbmVyYWxseSBzbWFsbCkgdW5zaWduZWQgaW50ZWdlci4gIEl0IG1heSBiZSBvbWl0dGVkLCBpbiAiCisid2hpY2ggY2FzZSB6ZXJvIGlzIGFzc3VtZWQuICBJZiBpdCBpcyBvbWl0dGVkIHRoZW4gdGhlIEk8dXBzdHJlYW0tdmVyc2lvbj4gIgorIm1heSBub3QgY29udGFpbiBhbnkgY29sb25zLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjI0Cittc2dpZCAiIgorIkl0IGlzIHByb3ZpZGVkIHRvIGFsbG93IG1pc3Rha2VzIGluIHRoZSB2ZXJzaW9uIG51bWJlcnMgb2Ygb2xkZXIgdmVyc2lvbnMgb2YgIgorImEgcGFja2FnZSwgYW5kIGFsc28gYSBwYWNrYWdlJ3MgcHJldmlvdXMgdmVyc2lvbiBudW1iZXJpbmcgc2NoZW1lcywgdG8gYmUgIgorImxlZnQgYmVoaW5kLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLXZlcnNpb24uNToyNAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJJPHVwc3RyZWFtLXZlcnNpb24+IgorbXNnc3RyICJCPGRwa2cgLS12ZXJzaW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNTozNAorbXNnaWQgIiIKKyJUaGlzIGlzIHRoZSBtYWluIHBhcnQgb2YgdGhlIHZlcnNpb24gbnVtYmVyLiAgSXQgaXMgdXN1YWxseSB0aGUgdmVyc2lvbiAiCisibnVtYmVyIG9mIHRoZSBvcmlnaW5hbCAoXCJ1cHN0cmVhbVwiKSAgcGFja2FnZSBmcm9tIHdoaWNoIHRoZSBJPC5kZWI+IGZpbGUgIgorImhhcyBiZWVuIG1hZGUsIGlmIHRoaXMgaXMgYXBwbGljYWJsZS4gIFVzdWFsbHkgdGhpcyB3aWxsIGJlIGluIHRoZSBzYW1lICIKKyJmb3JtYXQgYXMgdGhhdCBzcGVjaWZpZWQgYnkgdGhlIHVwc3RyZWFtIGF1dGhvcihzKTsgaG93ZXZlciwgaXQgbWF5IG5lZWQgdG8gIgorImJlIHJlZm9ybWF0dGVkIHRvIGZpdCBpbnRvIHRoZSBwYWNrYWdlIG1hbmFnZW1lbnQgc3lzdGVtJ3MgZm9ybWF0IGFuZCAiCisiY29tcGFyaXNvbiBzY2hlbWUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6MzkKK21zZ2lkICIiCisiVGhlIGNvbXBhcmlzb24gYmVoYXZpb3Igb2YgdGhlIHBhY2thZ2UgbWFuYWdlbWVudCBzeXN0ZW0gd2l0aCByZXNwZWN0IHRvIHRoZSAiCisiSTx1cHN0cmVhbS12ZXJzaW9uPiBpcyBkZXNjcmliZWQgYmVsb3cuIFRoZSBJPHVwc3RyZWFtLXZlcnNpb24+IHBvcnRpb24gb2YgIgorInRoZSB2ZXJzaW9uIG51bWJlciBpcyBtYW5kYXRvcnkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6NDgKK21zZ2lkICIiCisiVGhlIEk8dXBzdHJlYW0tdmVyc2lvbj4gbWF5IGNvbnRhaW4gb25seSBhbHBoYW51bWVyaWNzIChcIkEtWmEtejAtOVwiKSBhbmQgIgorInRoZSBjaGFyYWN0ZXJzIEI8Lj4gQjwrPiBCPC0+IEI8Oj4gQjx+PiAoZnVsbCBzdG9wLCBwbHVzLCBoeXBoZW4sIGNvbG9uLCAiCisidGlsZGUpIGFuZCBzaG91bGQgc3RhcnQgd2l0aCBhIGRpZ2l0LiAgSWYgdGhlcmUgaXMgbm8gSTxkZWJpYW4tcmV2aXNpb24+ICIKKyJ0aGVuIGh5cGhlbnMgYXJlIG5vdCBhbGxvd2VkOyBpZiB0aGVyZSBpcyBubyBJPGVwb2NoPiB0aGVuIGNvbG9ucyBhcmUgbm90ICIKKyJhbGxvd2VkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLXZlcnNpb24uNTo0OAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJJPGRlYmlhbi1yZXZpc2lvbj4iCittc2dzdHIgIkI8LS12ZXJzaW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNTo1NworbXNnaWQgIiIKKyJUaGlzIHBhcnQgb2YgdGhlIHZlcnNpb24gbnVtYmVyIHNwZWNpZmllcyB0aGUgdmVyc2lvbiBvZiB0aGUgRGViaWFuIHBhY2thZ2UgIgorImJhc2VkIG9uIHRoZSB1cHN0cmVhbSB2ZXJzaW9uLiAgSXQgbWF5IGNvbnRhaW4gb25seSBhbHBoYW51bWVyaWNzIGFuZCB0aGUgIgorImNoYXJhY3RlcnMgQjwrPiBCPC4+IEI8fj4gKHBsdXMsIGZ1bGwgc3RvcCwgdGlsZGUpIGFuZCBpcyBjb21wYXJlZCBpbiB0aGUgIgorInNhbWUgd2F5IGFzIHRoZSBJPHVwc3RyZWFtLXZlcnNpb24+IGlzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjY0Cittc2dpZCAiIgorIkl0IGlzIG9wdGlvbmFsOyBpZiBpdCBpc24ndCBwcmVzZW50IHRoZW4gdGhlIEk8dXBzdHJlYW0tdmVyc2lvbj4gbWF5IG5vdCAiCisiY29udGFpbiBhIGh5cGhlbi4gIFRoaXMgZm9ybWF0IHJlcHJlc2VudHMgdGhlIGNhc2Ugd2hlcmUgYSBwaWVjZSBvZiBzb2Z0d2FyZSAiCisid2FzIHdyaXR0ZW4gc3BlY2lmaWNhbGx5IHRvIGJlIHR1cm5lZCBpbnRvIGEgRGViaWFuIHBhY2thZ2UsIGFuZCBzbyB0aGVyZSBpcyAiCisib25seSBvbmUgXCJkZWJpYW5pc2F0aW9uXCIgb2YgaXQgYW5kIHRoZXJlZm9yZSBubyByZXZpc2lvbiBpbmRpY2F0aW9uIGlzICIKKyJyZXF1aXJlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNTo2OAorbXNnaWQgIiIKKyJJdCBpcyBjb252ZW50aW9uYWwgdG8gcmVzdGFydCB0aGUgSTxkZWJpYW4tcmV2aXNpb24+IGF0ICcxJyBlYWNoIHRpbWUgdGltZSAiCisidGhlIEk8dXBzdHJlYW0tdmVyc2lvbj4gaXMgaW5jcmVhc2VkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41Ojc2Cittc2dpZCAiIgorIkRwa2cgd2lsbCBicmVhayB0aGUgdmVyc2lvbiBudW1iZXIgYXBhcnQgYXQgdGhlIGxhc3QgaHlwaGVuIGluIHRoZSBzdHJpbmcgIgorIihpZiB0aGVyZSBpcyBvbmUpIHRvIGRldGVybWluZSB0aGUgSTx1cHN0cmVhbS12ZXJzaW9uPiBhbmQgSTxkZWJpYW4tIgorInJldmlzaW9uPi4gVGhlIGFic2VuY2Ugb2YgYSBJPGRlYmlhbi1yZXZpc2lvbj4gY29tcGFyZXMgZWFybGllciB0aGFuIHRoZSAiCisicHJlc2VuY2Ugb2Ygb25lIChidXQgbm90ZSB0aGF0IHRoZSBJPGRlYmlhbi1yZXZpc2lvbj4gaXMgdGhlIGxlYXN0ICIKKyJzaWduaWZpY2FudCBwYXJ0IG9mIHRoZSB2ZXJzaW9uIG51bWJlcikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkZWItdmVyc2lvbi41Ojc2CisjLCBuby13cmFwCittc2dpZCAiU29ydGluZyBBbGdvcml0aG0iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNTo4MAorbXNnaWQgIiIKKyJUaGUgSTx1cHN0cmVhbS12ZXJzaW9uPiBhbmQgSTxkZWJpYW4tcmV2aXNpb24+IHBhcnRzIGFyZSBjb21wYXJlZCBieSB0aGUgIgorInBhY2thZ2UgbWFuYWdlbWVudCBzeXN0ZW0gdXNpbmcgdGhlIHNhbWUgYWxnb3JpdGhtOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjgyCittc2dpZCAiVGhlIHN0cmluZ3MgYXJlIGNvbXBhcmVkIGZyb20gbGVmdCB0byByaWdodC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNTo5MgorbXNnaWQgIiIKKyJGaXJzdCB0aGUgaW5pdGlhbCBwYXJ0IG9mIGVhY2ggc3RyaW5nIGNvbnNpc3RpbmcgZW50aXJlbHkgb2Ygbm9uLWRpZ2l0ICIKKyJjaGFyYWN0ZXJzIGlzIGRldGVybWluZWQuICBUaGVzZSB0d28gcGFydHMgKG9uZSBvZiB3aGljaCBtYXkgYmUgZW1wdHkpIGFyZSAiCisiY29tcGFyZWQgbGV4aWNhbGx5LiAgSWYgYSBkaWZmZXJlbmNlIGlzIGZvdW5kIGl0IGlzIHJldHVybmVkLiAgVGhlIGxleGljYWwgIgorImNvbXBhcmlzb24gaXMgYSBjb21wYXJpc29uIG9mIEFTQ0lJIHZhbHVlcyBtb2RpZmllZCBzbyB0aGF0IGFsbCB0aGUgbGV0dGVycyAiCisic29ydCBlYXJsaWVyIHRoYW4gYWxsIHRoZSBub24tbGV0dGVycyBhbmQgc28gdGhhdCBhIHRpbGRlIHNvcnRzIGJlZm9yZSAiCisiYW55dGhpbmcsIGV2ZW4gdGhlIGVuZCBvZiBhIHBhcnQuICBGb3IgZXhhbXBsZSwgdGhlIGZvbGxvd2luZyBwYXJ0cyBhcmUgaW4gIgorInNvcnRlZCBvcmRlcjogJ35+JywgJ35+YScsICd+JywgdGhlIGVtcHR5IHBhcnQsICdhJy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNToxMDAKK21zZ2lkICIiCisiVGhlbiB0aGUgaW5pdGlhbCBwYXJ0IG9mIHRoZSByZW1haW5kZXIgb2YgZWFjaCBzdHJpbmcgd2hpY2ggY29uc2lzdHMgIgorImVudGlyZWx5IG9mIGRpZ2l0IGNoYXJhY3RlcnMgaXMgZGV0ZXJtaW5lZC4gIFRoZSBudW1lcmljYWwgdmFsdWVzIG9mIHRoZXNlICIKKyJ0d28gcGFydHMgYXJlIGNvbXBhcmVkLCBhbmQgYW55IGRpZmZlcmVuY2UgZm91bmQgaXMgcmV0dXJuZWQgYXMgdGhlIHJlc3VsdCAiCisib2YgdGhlIGNvbXBhcmlzb24uICBGb3IgdGhlc2UgcHVycG9zZXMgYW4gZW1wdHkgc3RyaW5nICh3aGljaCBjYW4gb25seSBvY2N1ciAiCisiYXQgdGhlIGVuZCBvZiBvbmUgb3IgYm90aCB2ZXJzaW9uIHN0cmluZ3MgYmVpbmcgY29tcGFyZWQpIGNvdW50cyBhcyB6ZXJvLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjEwNAorbXNnaWQgIiIKKyJUaGVzZSB0d28gc3RlcHMgKGNvbXBhcmluZyBhbmQgcmVtb3ZpbmcgaW5pdGlhbCBub24tZGlnaXQgc3RyaW5ncyBhbmQgIgorImluaXRpYWwgZGlnaXQgc3RyaW5ncykgYXJlIHJlcGVhdGVkIHVudGlsIGEgZGlmZmVyZW5jZSBpcyBmb3VuZCBvciBib3RoICIKKyJzdHJpbmdzIGFyZSBleGhhdXN0ZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6MTEyCittc2dpZCAiIgorIk5vdGUgdGhhdCB0aGUgcHVycG9zZSBvZiBlcG9jaHMgaXMgdG8gYWxsb3cgdXMgdG8gbGVhdmUgYmVoaW5kIG1pc3Rha2VzIGluICIKKyJ2ZXJzaW9uIG51bWJlcmluZywgYW5kIHRvIGNvcGUgd2l0aCBzaXR1YXRpb25zIHdoZXJlIHRoZSB2ZXJzaW9uIG51bWJlcmluZyAiCisic2NoZW1lIGNoYW5nZXMuICBJdCBpcyBCPG5vdD4gaW50ZW5kZWQgdG8gY29wZSB3aXRoIHZlcnNpb24gbnVtYmVycyAiCisiY29udGFpbmluZyBzdHJpbmdzIG9mIGxldHRlcnMgd2hpY2ggdGhlIHBhY2thZ2UgbWFuYWdlbWVudCBzeXN0ZW0gY2Fubm90ICIKKyJpbnRlcnByZXQgKHN1Y2ggYXMgJ0FMUEhBJyBvciAncHJlLScpLCBvciB3aXRoIHNpbGx5IG9yZGVyaW5ncy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRlYi12ZXJzaW9uLjU6MTEyIGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxMDkKKyMsIG5vLXdyYXAKK21zZ2lkICJDQVZFQVRTIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6MTE2Cittc2dpZCAiIgorIlRoZSB0aWxkZSBjaGFyYWN0ZXIgYW5kIGl0cyBzcGVjaWFsIHNvcnRpbmcgcHJvcGVydGllcyB3ZXJlIGludHJvZHVjZWQgaW4gIgorImRwa2csIHZlcnNpb24gMS4xMCBhbmQgc29tZSBwYXJ0cyBvZiBkcGtnLWRldiBvbmx5IGdhaW5lZCBzdXBwb3J0IGZvciBpdCAiCisibGF0ZXIgaW4gdGhlIDEuMTAueCBzZXJpZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6MTIwCisjLCBmdXp6eQorbXNnaWQgIkI8ZGViLWNvbnRyb2w+KDUpLCBCPGRlYj4oNSksIEI8ZHBrZz4oMSkiCittc2dzdHIgIkI8ZGViPig1KSwgQjxkZWItY29udHJvbD4oNSksIEI8ZHBrZz4oMSksIEI8ZHNlbGVjdD4oMSkuIgorCisjLiB0eXBlOiBTSAorIzogZGViLXZlcnNpb24uNToxMjAgZHBrZy4xOjc4MyBkcGtnLWJ1aWxkcGFja2FnZS4xOjI1NyBkcGtnLWRpc3RhZGRmaWxlLjE6NDcKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjE0OCBkcGtnLWdlbmNvbnRyb2wuMToxNDIgZHBrZy1nZW5zeW1ib2xzLjE6NDYwCisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjEyOCBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTIzCisjOiBkcGtnLXNobGliZGVwcy4xOjMyOSBkcGtnLXNvdXJjZS4xOjczMCBkc2VsZWN0LjE6NDUxCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjMyMyB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDk0CisjLCBuby13cmFwCittc2dpZCAiQVVUSE9SUyIKK21zZ3N0ciAi6JGX6ICFIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjEyMgorIywgZnV6enkKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMTk5NiwxOTk3LDE5OTggSWFuIEphY2tzb24gYW5kIENocmlzdGlhbiBTY2h3YXJ6IgorbXNnc3RyICJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjEyNCBkcGtnLWJ1aWxkcGFja2FnZS4xOjI2MworIywgZnV6enkKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAwNyBGcmFuayBMaWNodGVuaGVsZCIKK21zZ3N0ciAiQ29weXJpZ2h0IDIwMDAgV2ljaGVydCBBa2tlcm1hbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNToxMjYgZGViLXN1YnN0dmFycy41OjE2NyBkcGtnLWJ1aWxkZmxhZ3MuMToyNzMKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjY3IGRwa2ctY2hlY2tidWlsZGRlcHMuMTo0NCBkcGtnLWRpc3RhZGRmaWxlLjE6NTMKKyM6IGRwa2ctZGViLjE6MjY5IGRwa2ctZGl2ZXJ0Ljg6MTM5IGRwa2ctZ2VuY2hhbmdlcy4xOjE1NAorIzogZHBrZy1nZW5jb250cm9sLjE6MTUwIGRwa2ctZ2Vuc3ltYm9scy4xOjQ2NCBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjEzOQorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTo3MSBkcGtnLW5hbWUuMToxMDggZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjEzMQorIzogZHBrZy1xdWVyeS4xOjIxOSBkcGtnLXNobGliZGVwcy4xOjMzOSBkcGtnLXNvdXJjZS4xOjczOCBkcGtnLXNwbGl0LjE6MjI3CisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjkxIGRwa2ctdmVuZG9yLjE6NTMgdXBkYXRlLWFsdGVybmF0aXZlcy44OjUwMQorIywgZnV6enkKK21zZ2lkICIiCisiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbmNlIHZlcnNpb24gMiBvciBsYXRlciAiCisiZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gV0FSUkFOVFkuIgorbXNnc3RyICIiCisiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbmNlIHZlcnNpb24gMiBvciBsYXRlciAiCisiZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuIgorCisjLiB0eXBlOiBUSAorIzogZGViLW9sZC41OjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkZWItb2xkIgorbXNnc3RyICJkZWItb2xkIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb2xkLjU6NAorbXNnaWQgImRlYi1vbGQgLSBvbGQgc3R5bGUgRGViaWFuIGJpbmFyeSBwYWNrYWdlIGZvcm1hdCIKK21zZ3N0ciAiZGViLW9sZCAtIERlYmlhbiDjg5DjgqTjg4rjg6rjg5Hjg4PjgrHjg7zjgrjml6flvaLlvI/jg5Xjgqnjg7zjg57jg4Pjg4giCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vbGQuNToxNworbXNnaWQgIiIKKyJUaGUgQjwuZGViPiBmb3JtYXQgaXMgdGhlIERlYmlhbiBiaW5hcnkgcGFja2FnZSBmaWxlIGZvcm1hdC4gVGhpcyBtYW51YWwgIgorInBhZ2UgZGVzY3JpYmVzIHRoZSBCPG9sZD4gZm9ybWF0LCB1c2VkIGJlZm9yZSBEZWJpYW4gMC45My4gUGxlYXNlIHNlZSBCPGRlYj4iCisiKDUpICBmb3IgZGV0YWlscyBvZiB0aGUgbmV3IGZvcm1hdC4iCittc2dzdHIgIiIKKyJCPC5kZWI+IOODleOCqeODvOODnuODg+ODiOOBryBEZWJpYW4g44OQ44Kk44OK44Oq44OR44OD44Kx44O844K444Gu44OV44Kh44Kk44Or5b2i5byP44Gn44GC44KL44CC44GT44Gu44OeIgorIuODi+ODpeOCouODq+OBp+OBr+OAgURlYmlhbiAwLjkzIOS7peWJjeOBq+S9v+eUqOOBleOCjOOBpuOBhOOBnyBCPOaXp+W9ouW8jz4g44Gr44Gk44GE44Gm6KiY6L+w44GZ44KL44CC5pawIgorIuW9ouW8j+OBruips+e0sOOBq+OBpOOBhOOBpuOBryBCPGRlYj4oNSkg44KS5Y+C54Wn44GV44KM44Gf44GE44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb2xkLjU6MjEKK21zZ2lkICIiCisiVGhlIGZpbGUgaXMgdHdvIGxpbmVzIG9mIGZvcm1hdCBpbmZvcm1hdGlvbiBhcyBBU0NJSSB0ZXh0LCBmb2xsb3dlZCBieSB0d28gIgorImNvbmNhdGVuYXRlZCBnemlwcGVkIHVzdGFyIGZpbGVzLiIKK21zZ3N0ciAiIgorIjIg6KGM44GuIEFTQ0lJIOODhuOCreOCueODiOOBq+OCiOOCi+ODleOCqeODvOODnuODg+ODiOaDheWgseOBjOOBguOCiuOAgeOBneOCjOOBqyAyIOOBpOOBriBnemlwIOWcp+e4ruOBlSIKKyLjgozjgZ8gdXN0YXIg44OV44Kh44Kk44Or44GM57aa44GP44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb2xkLjU6MjUKK21zZ2lkICIiCisiVGhlIGZpcnN0IGxpbmUgaXMgdGhlIGZvcm1hdCB2ZXJzaW9uIG51bWJlciBwYWRkZWQgdG8gOCBkaWdpdHMsIGFuZCBpcyAiCisiQjwwLjkzOTAwMD4gZm9yIGFsbCBvbGQtZm9ybWF0IGFyY2hpdmVzLiIKK21zZ3N0ciAiIgorIjEg6KGM55uu44GvIDgg5qGB44Gr44Gd44KN44GI44Gf44OV44Kp44O844Oe44OD44OI44OQ44O844K444On44Oz55Wq5Y+344Gn44GC44KK44CB5pen5b2i5byP44Ki44O844Kr44Kk44OW44Gv44GZIgorIuOBueOBpiBCPDAuOTM5MDAwPiDjgafjgYLjgovjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vbGQuNToyOAorbXNnaWQgIiIKKyJUaGUgc2Vjb25kIGxpbmUgaXMgYSBkZWNpbWFsIHN0cmluZyAod2l0aG91dCBsZWFkaW5nIHplcm9lcykgZ2l2aW5nIHRoZSAiCisibGVuZ3RoIG9mIHRoZSBmaXJzdCBnemlwcGVkIHRhcmZpbGUuIgorbXNnc3RyICIiCisiMiDooYznm67jga/jgbLjgajjgaTnm67jga4gZ3ppcCDlnKfnuK4gdGFyIOODleOCoeOCpOODq+OBruWkp+OBjeOBleOCkuS4juOBiOOCiygwIOOBi+OCieWni+OBvuOCieOBquOBhCkgIgorIuWNgemAsuaVsOOBp+OBguOCi+OAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW9sZC41OjMwCittc2dpZCAiRWFjaCBvZiB0aGVzZSBsaW5lcyBpcyB0ZXJtaW5hdGVkIHdpdGggYSBzaW5nbGUgbmV3bGluZSBjaGFyYWN0ZXIuIgorbXNnc3RyICLjgZ3jgozjgZ7jgozjga7ooYzjga7ntYLjgo/jgorjga/mlLnooYzmloflrZfjgbLjgajjgaTjgafjgYLjgovjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vbGQuNTozNQorbXNnaWQgIiIKKyJUaGUgZmlyc3QgdGFyZmlsZSBjb250YWlucyB0aGUgY29udHJvbCBpbmZvcm1hdGlvbiwgYXMgYSBzZXJpZXMgb2Ygb3JkaW5hcnkgIgorImZpbGVzLiBUaGUgZmlsZSBCPGNvbnRyb2w+IG11c3QgYmUgcHJlc2VudCwgYXMgaXQgY29udGFpbnMgdGhlIGNvcmUgY29udHJvbCAiCisiaW5mb3JtYXRpb24uIgorbXNnc3RyICIiCisiMSDnlarnm67jga4gdGFyIOODleOCoeOCpOODq+OBr+OAgeWItuW+oeaDheWgseOCkuW5s+aWh+ODleOCoeOCpOODq+e+pOOBqOOBl+OBpuWQq+OCgOOAgkI8Y29udHJvbD4g44OV44KhIgorIuOCpOODq+OBr+W/hemgiOOBp+OBguOCiuOAgeS4reW/g+OBqOOBquOCi+WItuW+oeaDheWgseOCkuWQq+OCgOOAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW9sZC41OjQ2Cittc2dpZCAiIgorIkluIHNvbWUgdmVyeSBvbGQgYXJjaGl2ZXMsIHRoZSBmaWxlcyBpbiB0aGUgY29udHJvbCB0YXJmaWxlIG1heSBvcHRpb25hbGx5ICIKKyJiZSBpbiBhIEI8REVCSUFOPiBzdWJkaXJlY3RvcnkuIEluIHRoYXQgY2FzZSwgdGhlIEI8REVCSUFOPiBzdWJkaXJlY3RvcnkgIgorIndpbGwgYmUgaW4gdGhlIGNvbnRyb2wgdGFyZmlsZSB0b28sIGFuZCB0aGUgY29udHJvbCB0YXJmaWxlIHdpbGwgaGF2ZSBvbmx5ICIKKyJmaWxlcyBpbiB0aGF0IGRpcmVjdG9yeS4gT3B0aW9uYWxseSB0aGUgY29udHJvbCB0YXJmaWxlIG1heSBjb250YWluIGFuIGVudHJ5ICIKKyJmb3IgYEI8Lj4nLCB0aGF0IGlzLCB0aGUgY3VycmVudCBkaXJlY3RvcnkuIgorbXNnc3RyICIiCisi6Z2e5bi444Gr5Y+k44GE44Ki44O844Kr44Kk44OW44Gn44Gv44CBIGNvbnRyb2wgdGFyIOODleOCoeOCpOODq+S4reOBruODleOCoeOCpOODq+OBjCBCPERFQklBTj4g44K144OWIgorIuODh+OCo+ODrOOCr+ODiOODquOBq+OBguOCi+OBk+OBqOOCguOBguOCi+OAguOBk+OBruWgtOWQiOOAgSBjb250cm9sIHRhciDjg5XjgqHjgqTjg6vjgavjgoIgQjxERUJJQU4+ICIKKyLjgrXjg5bjg4fjgqPjg6zjgq/jg4jjg6rjgYzlrZjlnKjjgZfjgIEgY29udHJvbCB0YXIg44OV44Kh44Kk44Or44Gv44Gd44Gu44OH44Kj44Os44Kv44OI44Oq5YaF44Gr44Gu44G/44OV44KhIgorIuOCpOODq+OCkuS/neacieOBmeOCi+OAgiBjb250cm9sIHRhciDjg5XjgqHjgqTjg6vjga/jgIEgYEI8Lj4nLCDjgaTjgb7jgorjgqvjg6zjg7Pjg4jjg4fjgqPjg6zjgq/jg4jjg6oiCisi44Gr44OV44Kh44Kk44Or44KS5ZCr44KA44GT44Go44KC44GC44KL44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb2xkLjU6NTAKK21zZ2lkICIiCisiVGhlIHNlY29uZCBnemlwcGVkIHRhcmZpbGUgaXMgdGhlIGZpbGVzeXN0ZW0gYXJjaGl2ZSwgY29udGFpbmluZyBwYXRobmFtZXMgIgorInJlbGF0aXZlIHRvIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGUgc3lzdGVtIHRvIGJlIGluc3RhbGxlZCBvbi4gVGhlICIKKyJwYXRobmFtZXMgZG8gbm90IGhhdmUgbGVhZGluZyBzbGFzaGVzLiIKK21zZ3N0ciAiIgorIjIg55Wq55uu44GuIGd6aXAg5Zyn57iuIHRhciDjg5XjgqHjgqTjg6vjga/jg5XjgqHjgqTjg6vjgrfjgrnjg4bjg6DjgqLjg7zjgqvjgqTjg5bjgafjgYLjgorjgIHjgqTjg7Pjgrnjg4jjg7wiCisi44Or44GV44KM44KL44K344K544OG44Og44Gu44Or44O844OI44OH44Kj44Os44Kv44OI44Oq44GL44KJ44Gu55u45a++44OR44K55ZCN44KS5ZCr44KT44Gn44GE44KL44CC44OR44K55ZCN44Gu5YWIIgorIumgreOBq+OCueODqeODg+OCt+ODpSgvKeOBr+OBquOBhOOAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW9sZC41OjU0Cittc2dpZCAiQjxkZWI+KDUpLCBCPGRwa2ctZGViPigxKSwgQjxkZWItY29udHJvbD4oNSkuIgorbXNnc3RyICJCPGRlYj4oNSksIEI8ZHBrZy1kZWI+KDEpLCBCPGRlYi1jb250cm9sPig1KS4iCisKKyMuIHR5cGU6IFRICisjOiBkZWItb3ZlcnJpZGUuNToxNQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJkZWItb3ZlcnJpZGUiCittc2dzdHIgImRwa2ctc3RhdG92ZXJyaWRlIgorCisjLiB0eXBlOiBUSAorIzogZGViLW92ZXJyaWRlLjU6MTUgZGViLWV4dHJhLW92ZXJyaWRlLjU6MSBkZWItc2hsaWJzLjU6MTYgZGViLXN1YnN0dmFycy41OjIKKyM6IGRlYi1zeW1ib2xzLjU6MiBkZWItdHJpZ2dlcnMuNToxIGRwa2ctYXJjaGl0ZWN0dXJlLjE6MQorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxIGRwa2ctY2hlY2tidWlsZGRlcHMuMToxIGRwa2ctZGlzdGFkZGZpbGUuMToxCisjOiBkcGtnLWRpdmVydC44OjEgZHBrZy1nZW5jaGFuZ2VzLjE6MSBkcGtnLWdlbmNvbnRyb2wuMToxIGRwa2ctZ2Vuc3ltYm9scy4xOjIKKyM6IGRwa2ctbmFtZS4xOjYgZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjEgZHBrZy1zY2FucGFja2FnZXMuMToxNQorIzogZHBrZy1zY2Fuc291cmNlcy4xOjEgZHBrZy1zaGxpYmRlcHMuMToxIGRwa2ctc291cmNlLjE6MiBkcGtnLXNwbGl0LjE6MgorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODoxIHN0YXJ0LXN0b3AtZGFlbW9uLjg6MSB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6OAorIywgbm8td3JhcAorbXNnaWQgImRwa2cgdXRpbGl0aWVzIgorbXNnc3RyICJkcGtnIHV0aWxpdGllcyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW92ZXJyaWRlLjU6MTgKK21zZ2lkICJkZWItb3ZlcnJpZGUgLSBEZWJpYW4gYXJjaGl2ZSBvdmVycmlkZSBmaWxlIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vdmVycmlkZS41OjIxIGRlYi1leHRyYS1vdmVycmlkZS41OjcKKyMsIGZ1enp5Cittc2dpZCAib3ZlcnJpZGUiCittc2dzdHIgImRwa2ctc3RhdG92ZXJyaWRlIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb3ZlcnJpZGUuNToyNworIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiV2hpbGUgbW9zdCBpbmZvcm1hdGlvbiBhYm91dCBhIHBhY2thZ2UgY2FuIGJlIGZvdW5kIGluIHRoZSBjb250cm9sIGZpbGUsICIKKyN8ICJzb21lIG11c3QgYmUgZmlsbGVkIGluIGJ5IHRoZSBkaXN0cmlidXRpb24gY3phcnMgcmF0aGVyIHRoYW4gYnkgdGhlICIKKyN8ICJtYWludGFpbmVyLCBiZWNhdXNlIHRoZXkgcmVsYXRlIHRvIHRoZSBhcnJhbmdlbWVudCBvZiBmaWxlcyBmb3IgcmVsZWFzZSAiCisjfCAicmF0aGVyIHRoYW4gdGhlIGFjdHVhbCBkZXBlbmRlbmNpZXMgYW5kIGRlc2NyaXB0aW9uIG9mIHRoZSBwYWNrYWdlLiAgVGhpcyAiCisjfCAiaW5mb3JtYXRpb24gaXMgZm91bmQgaW4gdGhlIG92ZXJyaWRlIGZpbGUuIgorbXNnaWQgIiIKKyJXaGlsZSBtb3N0IGluZm9ybWF0aW9uIGFib3V0IGEgcGFja2FnZSBjYW4gYmUgZm91bmQgaW4gdGhlIGNvbnRyb2wgZmlsZSwgIgorInNvbWUgaXMgbWFuYWdlZCBjZW50cmFsbHkgYnkgdGhlIGRpc3RyaWJ1dGlvbiBjemFycyByYXRoZXIgdGhhbiBieSB0aGUgIgorIm1haW50YWluZXIgaW4gb3JkZXIgdG8gb2ZmZXIgc29tZSBnbG9iYWwgY29uc2lzdGVuY3kuICBUaGlzIGluZm9ybWF0aW9uIGlzICIKKyJmb3VuZCBpbiB0aGUgb3ZlcnJpZGUgZmlsZS4iCittc2dzdHIgIiIKKyLjg5Hjg4PjgrHjg7zjgrjjgavplqLjgZnjgovjgbvjgajjgpPjganjga7mg4XloLHjga8gY29udHJvbCDjg5XjgqHjgqTjg6vjgafopovjgaTjgZHjgovjgZPjgajjgYzjgafjgY3jgovjgYzjgIEiCisi44GE44GP44Gk44GL44Gv44Oh44Oz44OG44OK44Gn44Gv44Gq44GP44OH44Kj44K544OI44Oq44OT44Ol44O844K344On44Oz5L2c5oiQ6ICF44Gr44KI44KK44CB44Gd44KM44KJ44Gu5oOF5aCx44KSIgorIuS4juOBiOOCi+W/heimgeOBjOOBguOCi+OAguODkeODg+OCseODvOOCuOOBruWun+mam+OBruS+neWtmOmWouS/guOChOiqrOaYjuOCiOOCiuOCguOAgeODquODquODvOOCueOBq+OCgOOBkeOBpiIKKyLjg5XjgqHjgqTjg6vjgpLjganjgYbphY3nva7jgZnjgovjgYvjgavplqLkv4LjgZfjgabjgY/jgovjgYvjgonjgafjgYLjgovjgILjgZPjgozjgonjga7mg4XloLHjga8gb3ZlcnJpZGUgIgorIuODleOCoeOCpOODq+OBq+OBguOCi+OAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW92ZXJyaWRlLjU6MzEKK21zZ2lkICIiCisiVGhlIG92ZXJyaWRlIGZpbGUgaGFzIGEgc2ltcGxlIHdoaXRlc3BhY2UtZGVsaW1pdGVkIGZvcm1hdC4gQ29tbWVudHMgYXJlICIKKyJhbGxvd2VkIChkZW5vdGVkIHdpdGggYSBCPCM+KS4iCittc2dzdHIgIiIKKyJvdmVycmlkZSDjg5XjgqHjgqTjg6vjga/nsKHljZjjgarnqbrnmb3jgafljLrliIfjgonjgozjgZ/lvaLlvI/jgavjgarjgaPjgabjgYTjgovjgILjgrPjg6Hjg7Pjg4jjgoLoqLHjgZXjgozjgaYiCisi44GE44KLKEI8Iz4g5Lul6ZmN44GM44Kz44Oh44Oz44OIKeOAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW92ZXJyaWRlLjU6MzcKK21zZ2lkICJJPHBhY2thZ2U+IEk8cHJpb3JpdHk+IEk8c2VjdGlvbj4gW0k8bWFpbnRhaW5lcmluZm8+XSIKK21zZ3N0ciAiSTxwYWNrYWdlPiBJPHByaW9yaXR5PiBJPHNlY3Rpb24+IFtJPG1haW50YWluZXJpbmZvPl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vdmVycmlkZS41OjQyCittc2dpZCAiIgorIkk8cGFja2FnZT4gaXMgdGhlIG5hbWUgb2YgdGhlIHBhY2thZ2UuIEVudHJpZXMgaW4gdGhlIG92ZXJyaWRlIGZpbGUgZm9yICIKKyJwYWNrYWdlcyBub3QgZm91bmQgaW4gdGhlIHRyZWUgb2YgYmluYXJ5IHBhY2thZ2VzIGFyZSBpZ25vcmVkLiIKK21zZ3N0ciAiIgorIkk8cGFja2FnZT4g44Gv44OR44OD44Kx44O844K45ZCN44Gn44GC44KL44CCb3ZlcnJpZGUg44OV44Kh44Kk44Or44Gr44GC44KL44GM44OQ44Kk44OK44Oq44OR44OD44Kx44O844K4IgorIuOBruODhOODquODvOOBq+OBr+OBquOBhOODkeODg+OCseODvOOCuOWQjeOBruOCqOODs+ODiOODquOBr+eEoeimluOBleOCjOOCi+OAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW92ZXJyaWRlLjU6NDgKK21zZ2lkICIiCisiSTxwcmlvcml0eT4gYW5kIEk8c2VjdGlvbj4gY29ycmVzcG9uZCB0byB0aGUgcmVzcGVjdGl2ZSBjb250cm9sIGZpZWxkcyAiCisiYXZhaWxhYmxlIGluIHRoZSAuZGViLiBUaGUgYWxsb3dlZCB2YWx1ZXMgYXJlIGxpc3RlZCBpbiB0aGUgRGViaWFuIHBvbGljeS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW92ZXJyaWRlLjU6NTYKK21zZ2lkICIiCisiSTxtYWludGFpbmVyaW5mbz4sIGlmIHByZXNlbnQsIGNhbiBiZSBlaXRoZXIgdGhlIG5hbWUgb2YgYSBtYWludGFpbmVyIGZvciBhbiAiCisidW5jb25kaXRpb25hbCBvdmVycmlkZSwgb3IgZWxzZSBJPG9sZG1haW50YWluZXI+IEI8PUU8Z3Q+PiBJPG5ld21haW50YWluZXI+ICIKKyJ0byBwZXJmb3JtIGEgc3Vic3RpdHV0aW9uLiIKK21zZ3N0ciAiIgorIkk8bWFpbnRhaW5lcmluZm8+IOOBjOOCguOBl+OBguOCjOOBsOODoeODs+ODhuODiuOBruWQjeWJjeOCkueEoeadoeS7tuOBq+S4iuabuOOBjeOBp+OBjeOCi+OAguOCguOBl+OBj+OBryAiCisiSTxvbGRtYWludGFpbmVyPiBCPD1FPGd0Pj4gSTxuZXdtYWludGFpbmVyPiDjga7loLTlkIjjga/nva7mj5vjgZXjgozjgovjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vdmVycmlkZS41OjYxCittc2dpZCAiIgorIlRoZSBvdmVycmlkZSBmaWxlcyB1c2VkIHRvIG1ha2UgdGhlIG9mZmljaWFsIFBhY2thZ2VzIGxpc3RzIG1heSBiZSBmb3VuZCBpbiAiCisidGhlIEk8aW5kaWNlcz4gZGlyZWN0b3J5IG9uIGFueSBEZWJpYW4gbWlycm9yLiIKK21zZ3N0ciAiIgorIuWFrOW8j+OBriBQYWNrYWdlcyDjg6rjgrnjg4jjgpLkvZzmiJDjgZnjgovjgZ/jgoHjgavkvb/jgo/jgozjgabjgYTjgosgb3ZlcnJpZGUg44OV44Kh44Kk44Or44Gv44CBICIKKyJEZWJpYW4g44Of44Op44O844GuIEk8aW5kaWNlcz4g44OH44Kj44Os44Kv44OI44Oq44Gr44GC44KL44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb3ZlcnJpZGUuNTo2NgorIywgZnV6enkKK21zZ2lkICIiCisiQjxkcGtnLXNjYW5wYWNrYWdlcz4oMSksIEI8ZHBrZy1zY2Fuc291cmNlcz4oMSksIEI8YXB0LWZ0cGFyY2hpdmU+KDEpLCBCPC8iCisidXNyL3NoYXJlL2RvYy9kZWJpYW4tcG9saWN5L3BvbGljeS5odG1sL2luZGV4Lmh0bWw+LiIKK21zZ3N0ciAiQjxkZWI+KDUpLCBCPGRwa2c+KDEpLCBCPGRwa2ctZGViPigxKS4iCisKKyMuIHR5cGU6IFRICisjOiBkZWItZXh0cmEtb3ZlcnJpZGUuNToxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgImRlYi1leHRyYS1vdmVycmlkZSIKK21zZ3N0ciAiZHBrZy1zdGF0b3ZlcnJpZGUiCisKKyMuIHR5cGU6IFRICisjOiBkZWItZXh0cmEtb3ZlcnJpZGUuNToxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIjIwMDktMDgtMTYiCittc2dzdHIgIjIwMDYtMDItMjgiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1leHRyYS1vdmVycmlkZS41OjQKK21zZ2lkICJkZWItZXh0cmEtb3ZlcnJpZGUgLSBEZWJpYW4gYXJjaGl2ZSBleHRyYSBvdmVycmlkZSBmaWxlIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1leHRyYS1vdmVycmlkZS41OjEyCittc2dpZCAiIgorIldoaWxlIG1vc3QgaW5mb3JtYXRpb24gYWJvdXQgYSBiaW5hcnkvc291cmNlIHBhY2thZ2UgY2FuIGJlIGZvdW5kIGluIHRoZSAiCisiY29udHJvbC8uZHNjIGZpbGUsIGFsbCBvZiBpdCBjYW4gYmUgb3ZlcnJpZGRlbiB3aGVuIGl0J3MgZXhwb3J0ZWQgdG8gIgorIlBhY2thZ2VzL1NvdXJjZXMgZmlsZXMuIFRoZSBleHRyYSBvdmVycmlkZSBmaWxlIGNvbnRhaW5zIHRob3NlIG92ZXJyaWRlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWV4dHJhLW92ZXJyaWRlLjU6MTYKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlRoZSBvdmVycmlkZSBmaWxlIGhhcyBhIHNpbXBsZSB3aGl0ZXNwYWNlLWRlbGltaXRlZCBmb3JtYXQuIENvbW1lbnRzIGFyZSAiCisjfCAiYWxsb3dlZCAoZGVub3RlZCB3aXRoIGEgQjwjPikuIgorbXNnaWQgIiIKKyJUaGUgZXh0cmEgb3ZlcnJpZGUgZmlsZSBoYXMgYSBzaW1wbGUgd2hpdGVzcGFjZS1kZWxpbWl0ZWQgZm9ybWF0LiBDb21tZW50cyAiCisiYXJlIGFsbG93ZWQgKGRlbm90ZWQgd2l0aCBhIEI8Iz4pLiIKK21zZ3N0ciAiIgorIm92ZXJyaWRlIOODleOCoeOCpOODq+OBr+ewoeWNmOOBquepuueZveOBp+WMuuWIh+OCieOCjOOBn+W9ouW8j+OBq+OBquOBo+OBpuOBhOOCi+OAguOCs+ODoeODs+ODiOOCguioseOBleOCjOOBpiIKKyLjgYTjgosoQjwjPiDku6XpmY3jgYzjgrPjg6Hjg7Pjg4gp44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItZXh0cmEtb3ZlcnJpZGUuNToyMQorIywgZnV6enkKK21zZ2lkICJJPHBhY2thZ2U+IEk8ZmllbGQtbmFtZT4gSTx2YWx1ZT4iCittc2dzdHIgIkI8LUQ+STxvY3RhbD5CPCB8IC0tZGVidWc9Pkk8b2N0YWw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItZXh0cmEtb3ZlcnJpZGUuNToyNQorbXNnaWQgIkk8cGFja2FnZT4gaXMgdGhlIG5hbWUgb2YgdGhlIGJpbmFyeS9zb3VyY2UgcGFja2FnZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWV4dHJhLW92ZXJyaWRlLjU6MzEKK21zZ2lkICIiCisiSTxmaWVsZC1uYW1lPiBpcyB0aGUgbmFtZSBvZiB0aGUgZmllbGQgdGhhdCBpcyBvdmVycmlkZGVuLiAgSTx2YWx1ZT4gaXMgdGhlICIKKyJ2YWx1ZSB0byBwdXQgaW4gdGhlIGZpZWxkLiBJdCBjYW4gY29udGFpbiBzcGFjZXMgYXMgdGhlIGxpbmUgaXMgc3BsaXQgaW4gbm8gIgorIm1vcmUgdGhhbiAzIGNvbHVtbnMgd2hlbiBpdCdzIHBhcnNlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWV4dHJhLW92ZXJyaWRlLjU6MzYKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlRoZSBvdmVycmlkZSBmaWxlcyB1c2VkIHRvIG1ha2UgdGhlIG9mZmljaWFsIFBhY2thZ2VzIGxpc3RzIG1heSBiZSBmb3VuZCAiCisjfCAiaW4gdGhlIEk8aW5kaWNlcz4gZGlyZWN0b3J5IG9uIGFueSBEZWJpYW4gbWlycm9yLiIKK21zZ2lkICIiCisiVGhlIGV4dHJhIG92ZXJyaWRlIGZpbGVzIHVzZWQgdG8gbWFrZSB0aGUgb2ZmaWNpYWwgUGFja2FnZXMgbGlzdHMgbWF5IGJlICIKKyJmb3VuZCBpbiB0aGUgSTxpbmRpY2VzPiBkaXJlY3Rvcnkgb24gYW55IERlYmlhbiBtaXJyb3IuIgorbXNnc3RyICIiCisi5YWs5byP44GuIFBhY2thZ2VzIOODquOCueODiOOCkuS9nOaIkOOBmeOCi+OBn+OCgeOBq+S9v+OCj+OCjOOBpuOBhOOCiyBvdmVycmlkZSDjg5XjgqHjgqTjg6vjga/jgIEgIgorIkRlYmlhbiDjg5/jg6njg7zjga4gSTxpbmRpY2VzPiDjg4fjgqPjg6zjgq/jg4jjg6rjgavjgYLjgovjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1leHRyYS1vdmVycmlkZS41OjQwCisjLCBmdXp6eQorbXNnaWQgIkI8ZHBrZy1zY2FucGFja2FnZXM+KDEpLCBCPGRwa2ctc2NhbnNvdXJjZXM+KDEpLCBCPGFwdC1mdHBhcmNoaXZlPigxKS4iCittc2dzdHIgIkI8ZGViPig1KSwgQjxkcGtnPigxKSwgQjxkcGtnLWRlYj4oMSkuIgorCisjLiB0eXBlOiBUSAorIzogZGViLXNobGlicy41OjE2CisjLCBuby13cmFwCittc2dpZCAiZGViLXNobGlicyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUSAorIzogZGViLXNobGlicy41OjE2CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIjIwMDgtMDItMTciCittc2dzdHIgIjIwMDYtMDItMjgiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zaGxpYnMuNToxOQorbXNnaWQgImRlYi1zaGxpYnMgLSBEZWJpYW4gc2hhcmVkIGxpYnJhcnkgaW5mb3JtYXRpb24gZmlsZSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc2hsaWJzLjU6MjkKK21zZ2lkICIiCisiQjxzaGxpYnM+IGZpbGVzIG1hcCBzaGFyZWQgbGlicmFyeSBuYW1lcyBhbmQgdmVyc2lvbnMgKEk8c29uYW1lcz4pICB0byAiCisiZGVwZW5kZW5jaWVzIHN1aXRhYmxlIGZvciBhIHBhY2thZ2UgY29udHJvbCBmaWxlLiAgVGhlcmUgaXMgb25lIGVudHJ5IHBlciAiCisibGluZS4gQmxhbmsgbGluZXMgYXJlIEI8bm90PiBhbGxvd2VkLiAgTGluZXMgYmVnaW5uaW5nIHdpdGggYW4gQjwjPiAiCisiY2hhcmFjdGVyIGFyZSBjb25zaWRlcmVkIGNvbW1lbnRhcnksIGFuZCBhcmUgaWdub3JlZC4gIEFsbCBvdGhlciBsaW5lcyBtdXN0ICIKKyJoYXZlIHRoZSBmb3JtYXQiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNobGlicy41OjM0Cittc2dpZCAiW0k8dHlwZT5CPDo+XSBJPGxpYnJhcnk+IEk8dmVyc2lvbj4gSTxkZXBlbmRlbmNpZXM+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zaGxpYnMuNTozOAorbXNnaWQgIiIKKyJUaGUgSTxsaWJyYXJ5PiBhbmQgSTx2ZXJzaW9uPiBmaWVsZHMgYXJlIHdoaXRlc3BhY2UtZGVsaW1pdGVkLCBidXQgdGhlICIKKyJJPGRlcGVuZGVuY2llcz4gZmllbGQgZXh0ZW5kcyB0byB0aGUgZW5kIG9mIHRoZSBsaW5lLiAgVGhlIEk8dHlwZT4gZmllbGQgaXMgIgorIm9wdGlvbmFsIGFuZCBub3JtYWxseSBub3QgbmVlZGVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc2hsaWJzLjU6NDAKK21zZ2lkICJTZWUgdGhlIERlYmlhbiBQb2xpY3kgTWFudWFsIGZvciBmdXJ0aGVyIGRldGFpbHMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkZWItc2hsaWJzLjU6NDEgZGViLXN5bWJvbHMuNTo0MyBkcGtnLjE6NzE0IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjYyCisjOiBkcGtnLWRpdmVydC44OjkxIGRwa2ctbmFtZS4xOjY1IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0NTkKKyMsIG5vLXdyYXAKK21zZ2lkICJFWEFNUExFUyIKK21zZ3N0ciAi5L6LIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc2hsaWJzLjU6NTAKK21zZ2lkICIiCisiVGhlIEI8c2hsaWJzPiBmaWxlIGZvciBhIHR5cGljYWwgbGlicmFyeSBwYWNrYWdlLCBuYW1lZCBJPGxpYmNydW5jaDE+LCB0aGF0ICIKKyJwcm92aWRlcyBvbmUgbGlicmFyeSB3aG9zZSBzb25hbWUgaXMgSTxsaWJjcnVuY2guc28uMT4sIG1pZ2h0IHJlYWQiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNobGlicy41OjUyCittc2dpZCAibGliY3J1bmNoIDEgbGliY3J1bmNoMSAoRTxndD49IDEuMi0xKSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc2hsaWJzLjU6NjAKK21zZ2lkICIiCisiVGhlIEk8ZGVwZW5kZW5jaWVzPiBtdXN0IG1lbnRpb24gdGhlIG1vc3QgcmVjZW50IHZlcnNpb24gb2YgdGhlIHBhY2thZ2UgdGhhdCAiCisiYWRkZWQgbmV3IHN5bWJvbHMgdG8gdGhlIGxpYnJhcnk6IGluIHRoZSBhYm92ZSBleGFtcGxlLCBuZXcgc3ltYm9scyB3ZXJlICIKKyJhZGRlZCB0byB2ZXJzaW9uIDEuMiBvZiBJPGxpYmNydW5jaD4uICBUaGlzIGlzIG5vdCB0aGUgb25seSByZWFzb24gdGhlICIKKyJkZXBlbmRlbmNpZXMgbWlnaHQgbmVlZCB0byBiZSB0aWdodGVuZWQ7IGFnYWluLCBzZWUgdGhlIERlYmlhbiBQb2xpY3kgTWFudWFsICIKKyJmb3IgZGV0YWlscy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNobGlicy41OjYzCisjLCBmdXp6eQorbXNnaWQgIkI8ZHBrZy1zaGxpYmRlcHM+KDEpLCBCPGRlYi1zeW1ib2xzPig1KS4iCittc2dzdHIgIkI8ZHBrZy1kZWIgYWN0aW9ucz4iCisKKyMuIHR5cGU6IFRICisjOiBkZWItc3Vic3R2YXJzLjU6MgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJkZWItc3Vic3R2YXJzIgorbXNnc3RyICJCPGRlaW5zdGFsbD4iCisKKyMuIHR5cGU6IFRICisjOiBkZWItc3Vic3R2YXJzLjU6MgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICIyMDA5LTA3LTE1IgorbXNnc3RyICIyMDA2LTAyLTI4IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6NQorbXNnaWQgImRlYi1zdWJzdHZhcnMgLSBEZWJpYW4gc291cmNlIHN1YnN0aXR1dGlvbiB2YXJpYWJsZXMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjgKKyMsIGZ1enp5Cittc2dpZCAic3Vic3R2YXJzIgorbXNnc3RyICJCPGRlaW5zdGFsbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToxOQorbXNnaWQgIiIKKyJCZWZvcmUgQjxkcGtnLXNvdXJjZT4sIEI8ZHBrZy1nZW5jb250cm9sPiBhbmQgQjxkcGtnLWdlbmNoYW5nZXM+IHdyaXRlIHRoZWlyICIKKyJjb250cm9sIGluZm9ybWF0aW9uICh0byB0aGUgc291cmNlIGNvbnRyb2wgZmlsZSBCPC5kc2M+IGZvciBCPGRwa2ctc291cmNlPiAiCisiYW5kIHRvIHN0YW5kYXJkIG91dHB1dCBmb3IgQjxkcGtnLWdlbmNvbnRyb2w+IGFuZCBCPGRwa2ctZ2VuY2hhbmdlcz4pICB0aGV5ICIKKyJwZXJmb3JtIHNvbWUgdmFyaWFibGUgc3Vic3RpdHV0aW9ucyBvbiB0aGUgb3V0cHV0IGZpbGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToyNgorbXNnaWQgIiIKKyJBIHZhcmlhYmxlIHN1YnN0aXR1dGlvbiBoYXMgdGhlIGZvcm0gQjwkez5JPHZhcmlhYmxlLW5hbWU+Qjx9Pi4gIFZhcmlhYmxlICIKKyJuYW1lcyBjb25zaXN0IG9mIGFscGhhbnVtZXJpY3MsIGh5cGhlbnMgYW5kIGNvbG9ucyBhbmQgc3RhcnQgd2l0aCBhbiAiCisiYWxwaGFudW1lcmljLiBWYXJpYWJsZSBzdWJzdGl0dXRpb25zIGFyZSBwZXJmb3JtZWQgcmVwZWF0ZWRseSB1bnRpbCBub25lIGFyZSAiCisibGVmdDsgdGhlIGZ1bGwgdGV4dCBvZiB0aGUgZmllbGQgYWZ0ZXIgdGhlIHN1YnN0aXR1dGlvbiBpcyByZXNjYW5uZWQgdG8gbG9vayAiCisiZm9yIG1vcmUgc3Vic3RpdHV0aW9ucy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjMzCittc2dpZCAiIgorIkFmdGVyIGFsbCB0aGUgc3Vic3RpdHV0aW9ucyBoYXZlIGJlZW4gZG9uZSBlYWNoIG9jY3VycmVuY2Ugb2YgdGhlIHN0cmluZyBCPCIKKyIke30+ICh3aGljaCBpcyBub3QgYSBsZWdhbCBzdWJzdGl0dXRpb24pIGlzIHJlcGxhY2VkIHdpdGggYSBCPCQ+IHNpZ24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNTozOAorbXNnaWQgIiIKKyJXaGlsZSB2YXJpYWJsZSBzdWJzdGl0dXRpb24gaXMgZG9uZSBvbiBhbGwgY29udHJvbCBmaWVsZHMsIHNvbWUgb2YgdGhvc2UgIgorImZpZWxkcyBhcmUgdXNlZCBhbmQgbmVlZGVkIGR1cmluZyB0aGUgYnVpbGQgd2hlbiB0aGUgc3Vic3RpdHV0aW9uIGRpZCBub3QgIgorInlldCBvY2N1ci4gVGhhdCdzIHdoeSB5b3UgY2FuJ3QgdXNlIHZhcmlhYmxlcyBpbiB0aGUgQjxQYWNrYWdlPiwgQjxTb3VyY2U+ICIKKyJhbmQgQjxBcmNoaXRlY3R1cmU+IGZpZWxkcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjQ1Cittc2dpZCAiIgorIlZhcmlhYmxlIHN1YnN0aXR1dGlvbiBoYXBwZW5zIG9uIHRoZSBjb250ZW50IG9mIHRoZSBmaWVsZHMgYWZ0ZXIgdGhleSBoYXZlICIKKyJiZWVuIHBhcnNlZCwgdGh1cyBpZiB5b3Ugd2FudCBhIHZhcmlhYmxlIHRvIGV4cGFuZCBvdmVyIG11bHRpcGxlIGxpbmVzIHlvdSAiCisiZG8gbm90IGhhdmUgdG8gaW5jbHVkZSBhIHNwYWNlIGFmdGVyIHRoZSBuZXdsaW5lLiBUaGlzIGlzIGRvbmUgaW1wbGljaXRseSAiCisid2hlbiB0aGUgZmllbGQgaXMgb3V0cHV0LiBGb3IgZXhhbXBsZSwgaWYgdGhlIHZhcmlhYmxlIEI8JHtEZXNjcmlwdGlvbn0+IGlzICIKKyJzZXQgdG8gXCJmb28gaXMgYmFyLiR7TmV3bGluZX1mb28gaXMgZ3JlYXQuXCIgYW5kIGlmIHlvdSBoYXZlIHRoZSBmb2xsb3dpbmcgIgorImZpZWxkOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6NTAKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiIERlc2NyaXB0aW9uOiBmb28gYXBwbGljYXRpb25cbiIKKyIgICR7RGVzY3JpcHRpb259XG4iCisiICAuXG4iCisiICBNb3JlIHRleHQuXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjUyCittc2dpZCAiSXQgd2lsbCByZXN1bHQgaW46IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNTo1OAorIywgbm8td3JhcAorbXNnaWQgIiIKKyIgRGVzY3JpcHRpb246IGZvbyBhcHBsaWNhdGlvblxuIgorIiAgZm9vIGlzIGJhci5cbiIKKyIgIGZvbyBpcyBncmVhdC5cbiIKKyIgIC5cbiIKKyIgIE1vcmUgdGV4dC5cbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6NzEKK21zZ2lkICIiCisiVmFyaWFibGVzIGNhbiBiZSBzZXQgdXNpbmcgdGhlIEI8LVY+IGNvbW1vbiBvcHRpb24uIFRoZXkgY2FuIGJlIGFsc28gIgorInNwZWNpZmllZCBpbiB0aGUgZmlsZSBCPGRlYmlhbi9zdWJzdHZhcnM+IChvciB3aGF0ZXZlciBvdGhlciBmaWxlIGlzICIKKyJzcGVjaWZpZWQgdXNpbmcgdGhlIEI8LVQ+IG9wdGlvbikuIFRoaXMgZmlsZSBjb25zaXN0cyBvZiBsaW5lcyBvZiB0aGUgZm9ybSAiCisiSTxuYW1lPkI8PT5JPHZhbHVlPi4gIFRyYWlsaW5nIHdoaXRlc3BhY2Ugb24gZWFjaCBsaW5lLCBibGFuayBsaW5lcywgYW5kICIKKyJsaW5lcyBzdGFydGluZyB3aXRoIGEgQjwjPiBzeW1ib2wgKGNvbW1lbnRzKSBhcmUgaWdub3JlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjczCittc2dpZCAiQWRkaXRpb25hbGx5LCB0aGUgZm9sbG93aW5nIHN0YW5kYXJkIHZhcmlhYmxlcyBhcmUgYXZhaWxhYmxlOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLXN1YnN0dmFycy41OjczCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8QXJjaD4iCittc2dzdHIgIkI8LWg+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6NzcKK21zZ2lkICJUaGUgY3VycmVudCBidWlsZCBhcmNoaXRlY3R1cmUgKGZyb20gQjxkcGtnIC0tcHJpbnQtYXJjaGl0ZWN0dXJlPikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3Vic3R2YXJzLjU6NzcKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxzb3VyY2U6VmVyc2lvbj4iCittc2dzdHIgIkI8LS12ZXJzaW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjgwCisjLCBmdXp6eQorbXNnaWQgIlRoZSBzb3VyY2UgcGFja2FnZSB2ZXJzaW9uLiIKK21zZ3N0ciAi44OR44OD44Kx44O844K444Gu55+t44GE6Kqs5piO5paHIgorCisjLiB0eXBlOiBUUAorIzogZGViLXN1YnN0dmFycy41OjgwCisjLCBuby13cmFwCittc2dpZCAiQjxzb3VyY2U6VXBzdHJlYW0tVmVyc2lvbj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41Ojg0Cittc2dpZCAiIgorIlRoZSB1cHN0cmVhbSBzb3VyY2UgcGFja2FnZSB2ZXJzaW9uLCBpbmNsdWRpbmcgdGhlIERlYmlhbiB2ZXJzaW9uIGVwb2NoIGlmICIKKyJhbnkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3Vic3R2YXJzLjU6ODQKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxiaW5hcnk6VmVyc2lvbj4iCittc2dzdHIgIkI8LS12ZXJzaW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41Ojg4Cittc2dpZCAiIgorIlRoZSBiaW5hcnkgcGFja2FnZSB2ZXJzaW9uICh3aGljaCBtYXkgZGlmZmVyIGZyb20gc291cmNlOlZlcnNpb24gaW4gYSBiaW5OTVUgIgorImZvciBleGFtcGxlKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zdWJzdHZhcnMuNTo4OAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPFNvdXJjZS1WZXJzaW9uPiIKK21zZ3N0ciAiQjwtLXZlcnNpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6OTMKK21zZ2lkICIiCisiVGhlIHNvdXJjZSBwYWNrYWdlIHZlcnNpb24gKGZyb20gdGhlIGNoYW5nZWxvZyBmaWxlKS4gVGhpcyB2YXJpYWJsZSBpcyBub3cgIgorIkI8ZGVwcmVjYXRlZD4gYXMgaXRzIG1lYW5pbmcgaXMgZGlmZmVyZW50IGZyb20gaXRzIGZ1bmN0aW9uLCBwbGVhc2UgdXNlIHRoZSAiCisiQjxzb3VyY2U6VmVyc2lvbj4gb3IgQjxiaW5hcnk6VmVyc2lvbj4gYXMgYXBwcm9wcmlhdGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3Vic3R2YXJzLjU6OTMKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxJbnN0YWxsZWQtU2l6ZT4iCittc2dzdHIgIkI8aW5zdGFsbGVkPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjEwMgorbXNnaWQgIiIKKyJUaGUgdG90YWwgc2l6ZSBvZiB0aGUgcGFja2FnZSdzIGluc3RhbGxlZCBmaWxlcy4gVGhpcyB2YWx1ZSBpcyBjb3BpZWQgaW50byAiCisidGhlIGNvcnJlc3BvbmRpbmcgY29udHJvbCBmaWxlIGZpZWxkOyBzZXR0aW5nIGl0IHdpbGwgbW9kaWZ5IHRoZSB2YWx1ZSBvZiAiCisidGhhdCBmaWVsZC4gSWYgdGhpcyB2YXJpYWJsZSBpc24ndCBzZXQgQjxkcGtnLWdlbmNvbnRyb2w+IHdpbGwgdXNlIEI8ZHUgLWsgIgorImRlYmlhbi90bXA+IHRvIGZpbmQgdGhlIGRlZmF1bHQgdmFsdWUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3Vic3R2YXJzLjU6MTAyCisjLCBuby13cmFwCittc2dpZCAiQjxFeHRyYS1TaXplPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MTExCittc2dpZCAiIgorIkFkZGl0aW9uYWwgZGlzayBzcGFjZSB1c2VkIHdoZW4gdGhlIHBhY2thZ2UgaXMgaW5zdGFsbGVkLiBJZiB0aGlzIHZhcmlhYmxlICIKKyJpcyBzZXQgaXRzIHZhbHVlIGlzIGFkZGVkIHRvIHRoYXQgb2YgdGhlIEI8SW5zdGFsbGVkLVNpemU+IHZhcmlhYmxlICh3aGV0aGVyICIKKyJzZXQgZXhwbGljaXRseSBvciB1c2luZyB0aGUgZGVmYXVsdCB2YWx1ZSkgYmVmb3JlIGl0IGlzIGNvcGllZCBpbnRvIHRoZSAiCisiQjxJbnN0YWxsZWQtU2l6ZT4gY29udHJvbCBmaWxlIGZpZWxkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLXN1YnN0dmFycy41OjExMQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPEY6Pkk8ZmllbGRuYW1lPiIKK21zZ3N0ciAiQjxbLS1dID5JPGZpbGVuYW1lPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjExOAorbXNnaWQgIiIKKyJUaGUgdmFsdWUgb2YgdGhlIG91dHB1dCBmaWVsZCBJPGZpZWxkbmFtZT4gKHdoaWNoIG11c3QgYmUgZ2l2ZW4gaW4gdGhlICIKKyJjYW5vbmljYWwgY2FwaXRhbGlzYXRpb24pLiBTZXR0aW5nIHRoZXNlIHZhcmlhYmxlcyBoYXMgbm8gZWZmZWN0IG90aGVyIHRoYW4gIgorIm9uIHBsYWNlcyB3aGVyZSB0aGV5IGFyZSBleHBhbmRlZCBleHBsaWNpdGx5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLXN1YnN0dmFycy41OjExOAorIywgbm8td3JhcAorbXNnaWQgIkI8Rm9ybWF0PiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MTI4Cittc2dpZCAiIgorIlRoZSBCPC5jaGFuZ2VzPiBmaWxlIGZvcm1hdCB2ZXJzaW9uIGdlbmVyYXRlZCBieSB0aGlzIHZlcnNpb24gb2YgdGhlIHNvdXJjZSAiCisicGFja2FnaW5nIHNjcmlwdHMuIElmIHlvdSBzZXQgdGhpcyB2YXJpYWJsZSB0aGUgY29udGVudHMgb2YgdGhlIEI8Rm9ybWF0PiAiCisiZmllbGQgaW4gdGhlIEI8LmNoYW5nZXM+IGZpbGUgd2lsbCBjaGFuZ2UgdG9vLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLXN1YnN0dmFycy41OjEyOAorIywgbm8td3JhcAorbXNnaWQgIkI8TmV3bGluZT4sIEI8U3BhY2U+LCBCPFRhYj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjEzMQorbXNnaWQgIlRoZXNlIHZhcmlhYmxlcyBlYWNoIGhvbGQgdGhlIGNvcnJlc3BvbmRpbmcgY2hhcmFjdGVyLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLXN1YnN0dmFycy41OjEzMQorIywgbm8td3JhcAorbXNnaWQgIkI8c2hsaWJzOj5JPGRlcGVuZGVuY3lmaWVsZD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjEzNQorbXNnaWQgIiIKKyJWYXJpYWJsZSBzZXR0aW5ncyB3aXRoIG5hbWVzIG9mIHRoaXMgZm9ybSBhcmUgZ2VuZXJhdGVkIGJ5IEI8ZHBrZy1zaGxpYmRlcHM+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLXN1YnN0dmFycy41OjEzNQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPGRwa2c6VXBzdHJlYW0tVmVyc2lvbj4iCittc2dzdHIgIkI8ZHBrZyAtLXZlcnNpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MTM4Cittc2dpZCAiVGhlIHVwc3RyZWFtIHZlcnNpb24gb2YgZHBrZy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zdWJzdHZhcnMuNToxMzgKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxkcGtnOlZlcnNpb24+IgorbXNnc3RyICJCPGRwa2cgLS12ZXJzaW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjE0MQorbXNnaWQgIlRoZSBmdWxsIHZlcnNpb24gb2YgZHBrZy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjE0NAorbXNnaWQgIiIKKyJJZiBhIHZhcmlhYmxlIGlzIHJlZmVycmVkIHRvIGJ1dCBub3QgZGVmaW5lZCBpdCBnZW5lcmF0ZXMgYSB3YXJuaW5nIGFuZCBhbiAiCisiZW1wdHkgdmFsdWUgaXMgYXNzdW1lZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRlYi1zdWJzdHZhcnMuNToxNDUgZHBrZy4xOjYyNyBkcGtnLWFyY2hpdGVjdHVyZS4xOjI4NCBkcGtnLmNmZy41OjEyCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMjEgZHBrZy1kaXN0YWRkZmlsZS4xOjM5IGRwa2ctZGl2ZXJ0Ljg6MTIyCisjOiBkcGtnLWdlbmNoYW5nZXMuMToxMzggZHBrZy1nZW5jb250cm9sLjE6MTI4IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxMTUKKyM6IGRwa2ctc3BsaXQuMToyMDYgZHBrZy1zdGF0b3ZlcnJpZGUuODo3NCBkc2VsZWN0LmNmZy41OjEyCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzYwCisjLCBuby13cmFwCittc2dpZCAiRklMRVMiCittc2dzdHIgIuODleOCoeOCpOODqyIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zdWJzdHZhcnMuNToxNDYKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxkZWJpYW4vc3Vic3R2YXJzPiIKK21zZ3N0ciAiQjxkZWluc3RhbGw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MTQ5CisjLCBmdXp6eQorbXNnaWQgIkxpc3Qgb2Ygc3Vic3RpdHV0aW9uIHZhcmlhYmxlcyBhbmQgdmFsdWVzLiIKK21zZ3N0ciAi5L2/55So44Gn44GN44KL44OR44OD44Kx44O844K444Gu5LiA6Kan44CCIgorCisjLiB0eXBlOiBTSAorIzogZGViLXN1YnN0dmFycy41OjE1MCBkcGtnLjE6NzgwIGRwa2ctYnVpbGRwYWNrYWdlLjE6MjQ0IGRwa2ctZGViLjE6MjM4CisjOiBkcGtnLW5hbWUuMTo4NiBkcGtnLXNvdXJjZS4xOjcyMiBkcGtnLXNwbGl0LjE6MTk5IGRzZWxlY3QuMTo0MjkKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0ODYKKyMsIG5vLXdyYXAKK21zZ2lkICJCVUdTIgorbXNnc3RyICLjg5DjgrAiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToxNTMgZHBrZy1zb3VyY2UuMTo3MjUKK21zZ2lkICIiCisiVGhlIHBvaW50IGF0IHdoaWNoIGZpZWxkIG92ZXJyaWRpbmcgb2NjdXJzIGNvbXBhcmVkIHRvIGNlcnRhaW4gc3RhbmRhcmQgIgorIm91dHB1dCBmaWVsZCBzZXR0aW5ncyBpcyByYXRoZXIgY29uZnVzZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToxNjAKKyMsIGZ1enp5Cittc2dpZCAiIgorIkI8ZHBrZz4oMSksIEI8ZHBrZy1nZW5jaGFuZ2VzPigxKSwgQjxkcGtnLWdlbmNvbnRyb2w+KDEpLCBCPGRwa2ctc2hsaWJkZXBzPiIKKyIoMSksIEI8ZHBrZy1zb3VyY2U+KDEpLiIKK21zZ3N0ciAiIgorIkI8ZGViPig1KSwgQjxkZWItY29udHJvbD4oNSksIEI8ZHBrZz4oMSksIEI8ZHBrZy1kZWI+KDEpLCBCPGZpbmQ+KDEpLCAiCisiQjx4YXJncz4oMSkuIgorCisjLiB0eXBlOiBTSAorIzogZGViLXN1YnN0dmFycy41OjE2MSBkcGtnLWFyY2hpdGVjdHVyZS4xOjMwMyBkcGtnLmNmZy41OjE5CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyNjYgZHBrZy1jaGVja2J1aWxkZGVwcy4xOjQwIGRwa2ctZGViLjE6MjY1CisjOiBkcGtnLWRpdmVydC44OjEzNSBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjY2IGRwa2ctbmFtZS4xOjEwNAorIzogZHBrZy1xdWVyeS4xOjIxNCBkcGtnLXNjYW5zb3VyY2VzLjE6NzYgZHBrZy1zcGxpdC4xOjIyMworIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo4NyBkcGtnLXZlbmRvci4xOjQ4IGRzZWxlY3QuY2ZnLjU6MTkKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQVVUSE9SIgorbXNnc3RyICIiCisiIy0jLSMtIy0jICAgICMtIy0jLSMtI1xuIgorIuS9nOiAhVxuIgorIiMtIy0jLSMtIyAgICAjLSMtIy0jLSNcbiIKKyLokZfogIUiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToxNjMgZHBrZy1idWlsZHBhY2thZ2UuMToyNTkgZHBrZy1kaXN0YWRkZmlsZS4xOjQ5CisjOiBkcGtnLWRlYi4xOjI2NyBkcGtnLWdlbmNoYW5nZXMuMToxNTAgZHBrZy1nZW5jb250cm9sLjE6MTQ0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTI1IGRwa2ctc2hsaWJkZXBzLjE6MzMxIGRwa2ctc291cmNlLjE6NzMyCisjOiBkcGtnLXNwbGl0LjE6MjI1CisjLCBmdXp6eQorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAxOTk1LTE5OTYgSWFuIEphY2tzb24iCittc2dzdHIgIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToxNjUgZHBrZy1idWlsZHBhY2thZ2UuMToyNjEgZHBrZy1kaXN0YWRkZmlsZS4xOjUxCisjOiBkcGtnLWdlbmNoYW5nZXMuMToxNTIgZHBrZy1nZW5jb250cm9sLjE6MTQ2IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxMjcKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MzMzIGRwa2ctc291cmNlLjE6NzM0IGRwa2ctc3RhdG92ZXJyaWRlLjg6ODkKKyMsIGZ1enp5Cittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMDAgV2ljaGVydCBBa2tlcm1hbiIKK21zZ3N0ciAiQ29weXJpZ2h0IDIwMDAgV2ljaGVydCBBa2tlcm1hbiIKKworIy4gdHlwZTogVEgKKyM6IGRlYi1zeW1ib2xzLjU6MgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJkZWItc3ltYm9scyIKK21zZ3N0ciAiZGViLW9sZCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNTo1Cittc2dpZCAiZGViLXN5bWJvbHMgLSBEZWJpYW4ncyBleHRlbmRlZCBzaGFyZWQgbGlicmFyeSBpbmZvcm1hdGlvbiBmaWxlIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6OAorbXNnaWQgInN5bWJvbHMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNToxMgorbXNnaWQgIiIKKyJUaGUgZm9ybWF0IGZvciBhbiBleHRlbmRlZCBzaGFyZWQgbGlicmFyeSBkZXBlbmRlbmN5IGluZm9ybWF0aW9uIGVudHJ5IGluICIKKyJ0aGVzZSBmaWxlcyBpczoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNToxNAorbXNnaWQgIkk8bGlicmFyeS1zb25hbWUgbWFpbi1kZXBlbmRlbmN5LXRlbXBsYXRlPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3ltYm9scy41OjE2Cittc2dpZCAiWyB8IEk8YWx0ZXJuYXRpdmUtZGVwZW5kZW5jeS10ZW1wbGF0ZT4gXSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3ltYm9scy41OjE4Cittc2dpZCAiWyAuLi4gXSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3ltYm9scy41OjIwCisjLCBmdXp6eQorbXNnaWQgIlsgKiBJPGZpZWxkLW5hbWU+OiBJPGZpZWxkLXZhbHVlPiBdIgorbXNnc3RyICJCPC1EPkk8b2N0YWw+QjwgfCAtLWRlYnVnPT5JPG9jdGFsPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNToyMworIywgbm8td3JhcAorbXNnaWQgIiIKKyJbIC4uLiBdXG4iCisiIEk8c3ltYm9sPiBJPG1pbmltYWwtdmVyc2lvbj5bIEk8aWQtb2YtZGVwZW5kZW5jeS10ZW1wbGF0ZT4gXVxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6MjkKK21zZ2lkICIiCisiVGhlIEk8bGlicmFyeS1zb25hbWU+IGlzIGV4YWN0bHkgdGhlIHZhbHVlIG9mIHRoZSBTT05BTUUgZmllbGQgYXMgZXhwb3J0ZWQgIgorImJ5IEI8b2JqZHVtcD4oMSkuIEEgSTxkZXBlbmRlbmN5LXRlbXBsYXRlPiBpcyBhIGRlcGVuZGVuY3kgd2hlcmUgSTwjTUlOVkVSIz4gIgorImlzIGR5bmFtaWNhbGx5IHJlcGxhY2VkIGVpdGhlciBieSBhIHZlcnNpb24gY2hlY2sgbGlrZSBcIihFPGd0Pj0gSTxtaW5pbWFsLSIKKyJ2ZXJzaW9uPilcIiBvciBieSBub3RoaW5nIChpZiBhbiB1bnZlcnNpb25lZCBkZXBlbmRlbmN5IGlzIGRlZW1lZCAiCisic3VmZmljaWVudCkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6MzYKK21zZ2lkICIiCisiRWFjaCBleHBvcnRlZCBJPHN5bWJvbD4gKGxpc3RlZCBhcyBJPG5hbWU+QEk8dmVyc2lvbj4sIHdpdGggSTx2ZXJzaW9uPiBiZWluZyAiCisiXCJCYXNlXCIgaWYgdGhlIGxpYnJhcnkgaXMgbm90IHZlcnNpb25lZCkgaXMgYXNzb2NpYXRlZCB0byBhIEk8bWluaW1hbC0iCisidmVyc2lvbj4gb2YgaXRzIGRlcGVuZGVuY3kgdGVtcGxhdGUgKHRoZSBtYWluIGRlcGVuZGVuY3kgdGVtcGxhdGUgaXMgdXNlZCBpZiAiCisiSTxpZC1vZi1kZXBlbmRlbmN5LXRlbXBsYXRlPiBpcyBub3QgcHJlc2VudCkuIFRoZSBmaXJzdCBhbHRlcm5hdGl2ZSAiCisiZGVwZW5kZW5jeSB0ZW1wbGF0ZSBpcyBudW1iZXJlZCAxLCB0aGUgc2Vjb25kIG9uZSAyLCBldGMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6NDMKK21zZ2lkICIiCisiRWFjaCBlbnRyeSBmb3IgYSBsaWJyYXJ5IGNhbiBhbHNvIGhhdmUgc29tZSBmaWVsZHMgb2YgbWV0YS1pbmZvcm1hdGlvbi4gICIKKyJUaG9zZSBmaWVsZHMgYXJlIHN0b3JlZCBvbiBsaW5lcyBzdGFydGluZyB3aXRoIGFuIGFzdGVyaXNrLiBDdXJyZW50bHksIHRoZSAiCisib25seSB2YWxpZCBmaWVsZCBpcyBJPEJ1aWxkLURlcGVuZHMtUGFja2FnZT4sIGl0IGluZGljYXRlcyB0aGUgbmFtZSBvZiB0aGUgIgorIlwiLWRldlwiIHBhY2thZ2UgYXNzb2NpYXRlZCB0byB0aGUgbGlicmFyeSBhbmQgaXMgdXNlZCBieSBCPGRwa2ctc2hsaWJkZXBzPiAiCisidG8gbWFrZSBzdXJlIHRoYXQgdGhlIGRlcGVuZGVuY3kgZ2VuZXJhdGVkIGlzIGF0IGxlYXN0IGFzIHN0cmljdCBhcyB0aGUgIgorImNvcnJlc3BvbmRpbmcgYnVpbGQgZGVwZW5kZW5jeS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRlYi1zeW1ib2xzLjU6NDQKKyMsIG5vLXdyYXAKK21zZ2lkICJTaW1wbGUgc3ltYm9scyBmaWxlIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6NTAKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisibGliZnRwLnNvLjMgbGliZnRwMyAjTUlOVkVSI1xuIgorIiBEZWZhdWx0TmV0YnVmQEJhc2UgMy4xLTEtNlxuIgorIiBGdHBBY2Nlc3NAQmFzZSAzLjEtMS02XG4iCisiIFsuLi5dXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRlYi1zeW1ib2xzLjU6NTAKKyMsIG5vLXdyYXAKK21zZ2lkICJBZHZhbmNlZCBzeW1ib2xzIGZpbGUiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNTo1MworbXNnaWQgImxpYkdMLnNvLjEgbGliZ2wxIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6NTUKK21zZ2lkICJ8IGxpYmdsMS1tZXNhLWdseCAjTUlOVkVSIyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3ltYm9scy41OjYxCisjLCBuby13cmFwCittc2dpZCAiIgorIiogQnVpbGQtRGVwZW5kcy1QYWNrYWdlOiBsaWJnbDEtbWVzYS1kZXZcbiIKKyIgcHVibGljR2xTeW1ib2xAQmFzZSA2LjMtMVxuIgorIiBbLi4uXVxuIgorIiBpbXBsZW1lbnRhdGlvblNwZWNpZmljU3ltYm9sQEJhc2UgNi41LjItNyAxXG4iCisiIFsuLi5dXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNTo2MworbXNnaWQgIkI8aHR0cDovL3dpa2kuZGViaWFuLm9yZy9Qcm9qZWN0cy9JbXByb3ZlZERwa2dTaGxpYmRlcHM+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6NjUKKyMsIGZ1enp5Cittc2dpZCAiQjxkcGtnLXNobGliZGVwcz4oMSksIEI8ZHBrZy1nZW5zeW1ib2xzPigxKS4iCittc2dzdHIgIkI8ZHBrZy1kZWIgYWN0aW9ucz4iCisKKyMuIHR5cGU6IFRICisjOiBkZWItdHJpZ2dlcnMuNToxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgImRlYi10cmlnZ2VycyIKK21zZ3N0ciAiQjwtLXZlcnNpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdHJpZ2dlcnMuNTo0Cittc2dpZCAiZGViLXRyaWdnZXJzIC0gcGFja2FnZSB0cmlnZ2VycyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdHJpZ2dlcnMuNTo3Cittc2dpZCAidHJpZ2dlcnMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXRyaWdnZXJzLjU6MTIKK21zZ2lkICIiCisiQSBwYWNrYWdlIGRlY2xhcmVzIGl0cyByZWxhdGlvbnNoaXAgdG8gc29tZSB0cmlnZ2VyKHMpIGJ5IGluY2x1ZGluZyBhICIKKyJJPHRyaWdnZXJzPiBmaWxlIGluIGl0cyBjb250cm9sIGFyY2hpdmUgKGkuZS4gSTxERUJJQU4vdHJpZ2dlcnM+IGR1cmluZyAiCisicGFja2FnZSBjcmVhdGlvbikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi10cmlnZ2Vycy41OjE2Cittc2dpZCAiIgorIlRoaXMgZmlsZSBjb250YWlucyBkaXJlY3RpdmVzLCBvbmUgcGVyIGxpbmUuIExlYWRpbmcgYW5kIHRyYWlsaW5nIHdoaXRlc3BhY2UgIgorImFuZCBldmVyeXRoaW5nIGFmdGVyIHRoZSBmaXJzdCBCPCM+IG9uIGFueSBsaW5lIHdpbGwgYmUgdHJpbW1lZCwgYW5kIGVtcHR5ICIKKyJsaW5lcyB3aWxsIGJlIGlnbm9yZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi10cmlnZ2Vycy41OjE4Cittc2dpZCAiVGhlIHRyaWdnZXIgY29udHJvbCBkaXJlY3RpdmVzIGN1cnJlbnRseSBzdXBwb3J0ZWQgYXJlOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdHJpZ2dlcnMuNToyMgorIywgZnV6enkKK21zZ2lkICJCPGludGVyZXN0PiBJPHRyaWdnZXItbmFtZT4iCittc2dzdHIgIkI8Wy0tXSA+STxmaWxlbmFtZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi10cmlnZ2Vycy41OjI2CisjLCBmdXp6eQorbXNnaWQgIkI8aW50ZXJlc3Qtbm9hd2FpdD4gSTx0cmlnZ2VyLW5hbWU+IgorbXNnc3RyICJCPFstLV0gPkk8ZmlsZW5hbWU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdHJpZ2dlcnMuNTozMworbXNnaWQgIiIKKyJTcGVjaWZpZXMgdGhhdCB0aGUgcGFja2FnZSBpcyBpbnRlcmVzdGVkIGluIHRoZSBuYW1lZCB0cmlnZ2VyLiBBbGwgdHJpZ2dlcnMgIgorImluIHdoaWNoIGEgcGFja2FnZSBpcyBpbnRlcmVzdGVkIG11c3QgYmUgbGlzdGVkIHVzaW5nIHRoaXMgZGlyZWN0aXZlIGluIHRoZSAiCisidHJpZ2dlcnMgY29udHJvbCBmaWxlLiBUaGUgXCJub2F3YWl0XCIgdmFyaWFudCBkb2VzIG5vdCBwdXQgdGhlIHRyaWdnZXJpbmcgIgorInBhY2thZ2VzIGluIHRyaWdnZXJzLWF3YWl0ZWQgc3RhdGUuIFRoaXMgc2hvdWxkIGJlIHVzZWQgd2hlbiB0aGUgIgorImZ1bmN0aW9uYWxpdHkgcHJvdmlkZWQgYnkgdGhlIHRyaWdnZXIgaXMgbm90IGNydWNpYWwuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi10cmlnZ2Vycy41OjM3Cittc2dpZCAiQjxhY3RpdmF0ZT4gSTx0cmlnZ2VyLW5hbWU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi10cmlnZ2Vycy41OjQxCisjLCBmdXp6eQorbXNnaWQgIkI8YWN0aXZhdGUtbm9hd2FpdD4gSTx0cmlnZ2VyLW5hbWU+IgorbXNnc3RyICJCPFstLV0gPkk8ZmlsZW5hbWU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdHJpZ2dlcnMuNTo1MAorbXNnaWQgIiIKKyJBcnJhbmdlcyB0aGF0IGNoYW5nZXMgdG8gdGhpcyBwYWNrYWdlJ3Mgc3RhdGUgd2lsbCBhY3RpdmF0ZSB0aGUgc3BlY2lmaWVkICIKKyJ0cmlnZ2VyLiBUaGUgdHJpZ2dlciB3aWxsIGJlIGFjdGl2YXRlZCBhdCB0aGUgc3RhcnQgb2YgdGhlIGZvbGxvd2luZyAiCisib3BlcmF0aW9uczogdW5wYWNrLCBjb25maWd1cmUsIHJlbW92ZSAoaW5jbHVkaW5nIGZvciB0aGUgYmVuZWZpdCBvZiBhICIKKyJjb25mbGljdGluZyBwYWNrYWdlKSwgcHVyZ2UgYW5kIGRlY29uZmlndXJlLiAgVGhlIFwibm9hd2FpdFwiIHZhcmlhbnQgZG9lcyAiCisibm90IHB1dCB0aGUgdHJpZ2dlcmluZyBwYWNrYWdlcyBpbiB0cmlnZ2Vycy1hd2FpdGVkIHN0YXRlLiBUaGlzIHNob3VsZCBiZSAiCisidXNlZCB3aGVuIHRoZSBmdW5jdGlvbmFsaXR5IHByb3ZpZGVkIGJ5IHRoZSB0cmlnZ2VyIGlzIG5vdCBjcnVjaWFsLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdHJpZ2dlcnMuNTo1OAorbXNnaWQgIiIKKyJJZiB0aGlzIHBhY2thZ2UgZGlzYXBwZWFycyBkdXJpbmcgdGhlIHVucGFja2luZyBvZiBhbm90aGVyIHBhY2thZ2UgdGhlICIKKyJ0cmlnZ2VyIHdpbGwgYmUgYWN0aXZhdGVkIHdoZW4gdGhlIGRpc2FwcGVhcmFuY2UgaXMgbm90ZWQgdG93YXJkcyB0aGUgZW5kIG9mICIKKyJ0aGUgdW5wYWNrLiBUcmlnZ2VyIHByb2Nlc3NpbmcsIGFuZCB0cmFuc2l0aW9uIGZyb20gdHJpZ2dlcnMtYXdhaXRlZCB0byAiCisiaW5zdGFsbGVkLCBkb2VzIG5vdCBjYXVzZSBhY3RpdmF0aW9ucy4gIEluIHRoZSBjYXNlIG9mIHVucGFjaywgdHJpZ2dlcnMgIgorIm1lbnRpb25lZCBpbiBib3RoIHRoZSBvbGQgYW5kIG5ldyB2ZXJzaW9ucyBvZiB0aGUgcGFja2FnZSB3aWxsIGJlIGFjdGl2YXRlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXRyaWdnZXJzLjU6NjEKK21zZ2lkICIiCisiVW5rbm93biBkaXJlY3RpdmVzIGFyZSBhbiBlcnJvciB3aGljaCB3aWxsIHByZXZlbnQgaW5zdGFsbGF0aW9uIG9mIHRoZSAiCisicGFja2FnZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXRyaWdnZXJzLjU6NjYKK21zZ2lkICIiCisiVGhlIFwiLW5vYXdhaXRcIiB2YXJpYW50cyBhcmUgb25seSBzdXBwb3J0ZWQgYnkgZHBrZyAxLjE2LjEgb3IgbmV3ZXIsIGFuZCAiCisid2lsbCBsZWFkIHRvIGVycm9ycyBpZiB1c2VkIHdpdGggYW4gb2xkZXIgZHBrZy4gSXQgaXMgdGh1cyByZWNvbW1lbmRlZCB0byAiCisiYWRkIGEgXCJQcmUtRGVwZW5kczogZHBrZyAoRTxndD49IDEuMTYuMSlcIiB0byBhbnkgcGFja2FnZSB0aGF0IHdpc2ggdG8gdXNlICIKKyJ0aG9zZSBkaXJlY3RpdmVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdHJpZ2dlcnMuNTo3MAorIywgZnV6enkKK21zZ2lkICIiCisiQjxkcGtnLXRyaWdnZXI+KDEpLCBCPGRwa2c+KDEpLCBCPC91c3Ivc2hhcmUvZG9jL2Rwa2ctZGV2L3RyaWdnZXJzLnR4dC5nej4uIgorbXNnc3RyICJCPGRlYj4oNSksIEI8ZHBrZz4oMSksIEI8ZHBrZy1kZWI+KDEpLiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2cuMToxCisjLCBuby13cmFwCittc2dpZCAiZHBrZyIKK21zZ3N0ciAiZHBrZyIKKworIy4gdHlwZTogVEgKKyM6IGRwa2cuMToxIGRwa2cuY2ZnLjU6MSBkcGtnLWJ1aWxkZmxhZ3MuMToxIGRwa2ctZGViLjE6MQorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxIGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6MSBkcGtnLXF1ZXJ5LjE6MQorIzogZHBrZy10cmlnZ2VyLjE6MSBkcGtnLXZlbmRvci4xOjEgZHNlbGVjdC5jZmcuNToxCisjLCBuby13cmFwCittc2dpZCAiZHBrZyBzdWl0ZSIKK21zZ3N0ciAiZHBrZyBzdWl0ZSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQKK21zZ2lkICJkcGtnIC0gcGFja2FnZSBtYW5hZ2VyIGZvciBEZWJpYW4iCittc2dzdHIgImRwa2cgLSBEZWJpYW4g44OR44OD44Kx44O844K444Oe44ON44O844K444OjIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6OAorIywgZnV6enkKKyN8IG1zZ2lkICJCPGRwa2c+IFtJPG9wdGlvbnM+XSBJPGFjdGlvbj4iCittc2dpZCAiQjxkcGtnPiBbSTxvcHRpb24+Li4uXSBJPGFjdGlvbj4iCittc2dzdHIgIkI8ZHBrZz4gW0k8b3B0aW9ucz5dIEk8YWN0aW9uPiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2cuMTo5CisjLCBuby13cmFwCittc2dpZCAiV0FSTklORyIKK21zZ3N0ciAi6K2m5ZGKIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTMKK21zZ2lkICIiCisiVGhpcyBtYW51YWwgaXMgaW50ZW5kZWQgZm9yIHVzZXJzIHdpc2hpbmcgdG8gdW5kZXJzdGFuZCBCPGRwa2c+J3MgY29tbWFuZCAiCisibGluZSBvcHRpb25zIGFuZCBwYWNrYWdlIHN0YXRlcyBpbiBtb3JlIGRldGFpbCB0aGFuIHRoYXQgcHJvdmlkZWQgYnkgQjxkcGtnICIKKyItLWhlbHA+LiIKK21zZ3N0ciAiIgorIuOBk+OBruODnuODi+ODpeOCouODq+OBr+OAgUI8ZHBrZz4g44Gu44Kz44Oe44Oz44OJ44Op44Kk44Oz44O744Kq44OX44K344On44Oz44KE44OR44OD44Kx44O844K454q25oWL44Gr44Gk44GEIgorIuOBpuOAgUI8ZHBrZyAtLWhlbHA+IOOBp+W+l+OCieOCjOOCi+aDheWgseOCiOOCiuOCguOBleOCieOBq+ips+e0sOOBq+eQhuino+OBl+OBn+OBhOWIqeeUqOiAheOBruOBn+OCgeOBq+abuCIKKyLjgYvjgozjgZ/jgoLjga7jgafjgYLjgovjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxOAorbXNnaWQgIiIKKyJJdCBzaG91bGQgSTxub3Q+IGJlIHVzZWQgYnkgcGFja2FnZSBtYWludGFpbmVycyB3aXNoaW5nIHRvIHVuZGVyc3RhbmQgaG93ICIKKyJCPGRwa2c+IHdpbGwgaW5zdGFsbCB0aGVpciBwYWNrYWdlcy4gVGhlIGRlc2NyaXB0aW9ucyBvZiB3aGF0IEI8ZHBrZz4gZG9lcyAiCisid2hlbiBpbnN0YWxsaW5nIGFuZCByZW1vdmluZyBwYWNrYWdlcyBhcmUgcGFydGljdWxhcmx5IGluYWRlcXVhdGUuIgorbXNnc3RyICIiCisi44OR44OD44Kx44O844K4566h55CG6ICF44Gv44CBQjxkcGtnPiDjgYzjganjga7jgojjgYbjgavjg5Hjg4PjgrHjg7zjgrjjgpLjgqTjg7Pjgrnjg4jjg7zjg6vjgZnjgovjga7jgYvjgpLnkIYiCisi6Kej44GZ44KL44Go44GE44GG55uu55qE44Gn44Gv44CB44GT44Gu44Oe44OL44Ol44Ki44Or44KSSTzoqq3jgb7jgarjgYQ+44G744GG44GM44KI44GE44CC44OR44OD44Kx44O844K444KS44Kk44OzIgorIuOCueODiOODvOODq+OBmeOCi+OBqOOBjeOChOWJiumZpOOBmeOCi+OBqOOBjeOBriBCPGRwa2c+IOOBruWLleS9nOOBq+mWouOBmeOCi+iomOi/sOOBr+OAgeeJueOBq+S4jeWFheWIhuOBp+OBgiIKKyLjgovjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyNgorIywgZnV6enkKK21zZ2lkICIiCisiQjxkcGtnPiBpcyBhIHRvb2wgdG8gaW5zdGFsbCwgYnVpbGQsIHJlbW92ZSBhbmQgbWFuYWdlIERlYmlhbiBwYWNrYWdlcy4gVGhlICIKKyJwcmltYXJ5IGFuZCBtb3JlIHVzZXItZnJpZW5kbHkgZnJvbnQtZW5kIGZvciBCPGRwa2c+IGlzIEI8YXB0aXR1ZGU+KDEpLiAiCisiQjxkcGtnPiBpdHNlbGYgaXMgY29udHJvbGxlZCBlbnRpcmVseSB2aWEgY29tbWFuZCBsaW5lIHBhcmFtZXRlcnMsIHdoaWNoICIKKyJjb25zaXN0IG9mIGV4YWN0bHkgb25lIGFjdGlvbiBhbmQgemVybyBvciBtb3JlIG9wdGlvbnMuIFRoZSBhY3Rpb24tcGFyYW1ldGVyICIKKyJ0ZWxscyBCPGRwa2c+IHdoYXQgdG8gZG8gYW5kIG9wdGlvbnMgY29udHJvbCB0aGUgYmVoYXZpb3Igb2YgdGhlIGFjdGlvbiBpbiAiCisic29tZSB3YXkuIgorbXNnc3RyICIiCisiQjxkcGtnPiDjga/jgIFEZWJpYW4g44OR44OD44Kx44O844K444Gu44CB44Kk44Oz44K544OI44O844Or44CB5qeL56+J44CB5YmK6Zmk44CB566h55CG44KS44GZ44KL44Gf44KB44GuIgorIuODhOODvOODq+OBp+OBguOCi+OAgkI8ZHNlbGVjdD4oMSkg44Gv44CBQjxkcGtnPiDjga7ku6PooajnmoTjgarjg5Xjg63jg7Pjg4jjgqjjg7Pjg4njgafjgIHjgojjgorjg6bjg7wiCisi44K244OV44Os44Oz44OJ44Oq44Gq44OE44O844Or44Gn44GC44KL44CCQjxkcGtnPiDjga/jgIHjgrPjg57jg7Pjg4njg6njgqTjg7PlvJXjgY3mlbDjgavjgojjgaPjgablrozlhajjgavliLYiCisi5b6h44GZ44KL44GT44Go44GM44Gn44GN44KL44CC44Kz44Oe44Oz44OJ44Op44Kk44Oz5byV44GN5pWw44Gv44CBMSDjgaTjga7jgqLjgq/jgrfjg6fjg7PjgajjgIEwIOWAi+S7peS4iuOBruOCqiIKKyLjg5fjgrfjg6fjg7Pjgajjgafmp4vmiJDjgZXjgozjgovjgILjgqLjgq/jgrfjg6fjg7Pjg5Hjg6njg6Hjg7zjgr/jga/jgIFCPGRwa2c+IOOBq+S9leOCkuOBleOBm+OCi+OBruOBi+OCkuaMhyIKKyLlrprjgZfjgIHjgqrjg5fjgrfjg6fjg7Pjga/jgZ3jga7jgqLjgq/jgrfjg6fjg7Pjga7jgbXjgovjgb7jgYTjgpLliLblvqHjgZnjgovjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTozMworbXNnaWQgIiIKKyJCPGRwa2c+IGNhbiBhbHNvIGJlIHVzZWQgYXMgYSBmcm9udC1lbmQgdG8gQjxkcGtnLWRlYj4oMSkgYW5kIEI8ZHBrZy1xdWVyeT4iCisiKDEpLiBUaGUgbGlzdCBvZiBzdXBwb3J0ZWQgYWN0aW9ucyBjYW4gYmUgZm91bmQgbGF0ZXIgb24gaW4gdGhlIEI8QUNUSU9OUz4gIgorInNlY3Rpb24uIElmIGFueSBzdWNoIGFjdGlvbiBpcyBlbmNvdW50ZXJlZCBCPGRwa2c+IGp1c3QgcnVucyBCPGRwa2ctZGViPiBvciAiCisiQjxkcGtnLXF1ZXJ5PiB3aXRoIHRoZSBwYXJhbWV0ZXJzIGdpdmVuIHRvIGl0LCBidXQgbm8gc3BlY2lmaWMgb3B0aW9ucyBhcmUgIgorImN1cnJlbnRseSBwYXNzZWQgdG8gdGhlbSwgdG8gdXNlIGFueSBzdWNoIG9wdGlvbiB0aGUgYmFjay1lbmRzIG5lZWQgdG8gYmUgIgorImNhbGxlZCBkaXJlY3RseS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2cuMTozNAorIywgbm8td3JhcAorbXNnaWQgIklORk9STUFUSU9OIEFCT1VUIFBBQ0tBR0VTIgorbXNnc3RyICLjg5Hjg4PjgrHjg7zjgrjjgavplqLjgZnjgovmg4XloLEiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTozOQorbXNnaWQgIiIKKyJCPGRwa2c+IG1haW50YWlucyBzb21lIHVzYWJsZSBpbmZvcm1hdGlvbiBhYm91dCBhdmFpbGFibGUgcGFja2FnZXMuIFRoZSAiCisiaW5mb3JtYXRpb24gaXMgZGl2aWRlZCBpbiB0aHJlZSBjbGFzc2VzOiBCPHN0YXRlcz4sIEI8c2VsZWN0aW9uIHN0YXRlcz4gYW5kICIKKyJCPGZsYWdzPi4gVGhlc2UgdmFsdWVzIGFyZSBpbnRlbmRlZCB0byBiZSBjaGFuZ2VkIG1haW5seSB3aXRoIEI8ZHNlbGVjdD4uIgorbXNnc3RyICIiCisiQjxkcGtnPiDjga/jgIHjgYTjgY/jgaTjgYvjga7liKnnlKjlj6/og73jgarjg5Hjg4PjgrHjg7zjgrjjgavplqLjgZnjgovmnInnlKjjgarmg4XloLHjgpLnrqHnkIbjgZfjgabjgYTjgovjgIIiCisi44GT44Gu5oOF5aCx44Gv44CBQjzjg5Hjg4PjgrHjg7zjgrjnirbmhYs+44CBQjzjg5Hjg4PjgrHjg7zjgrjpgbjmip7nirbmhYs+44CB44Gd44GX44GmQjzjg5Xjg6njgrA+44GuIDMg44GkIgorIuOBq+WIhumhnuOBp+OBjeOCi+OAguOBk+OCjOOCieOBruWApOOBr+S4u+OBqyBCPGRzZWxlY3Q+IOOBq+OCiOOBo+OBpuWkieabtOOBleOCjOOCi+OAgiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2cuMTozOQorIywgbm8td3JhcAorbXNnaWQgIlBBQ0tBR0UgU1RBVEVTIgorbXNnc3RyICLjg5Hjg4PjgrHjg7zjgrjnirbmhYsiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NDAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPG5vdC1pbnN0YWxsZWQ+IgorbXNnc3RyICJCPG5vdC1pbnN0YWxsZWQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDMKK21zZ2lkICJUaGUgcGFja2FnZSBpcyBub3QgaW5zdGFsbGVkIG9uIHlvdXIgc3lzdGVtLiIKK21zZ3N0ciAi44OR44OD44Kx44O844K444Gv44K344K544OG44Og44Gr44Kk44Oz44K544OI44O844Or44GV44KM44Gm44GE44Gq44GE44CCIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjQzCisjLCBuby13cmFwCittc2dpZCAiQjxjb25maWctZmlsZXM+IgorbXNnc3RyICJCPGNvbmZpZy1maWxlcz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0NgorbXNnaWQgIk9ubHkgdGhlIGNvbmZpZ3VyYXRpb24gZmlsZXMgb2YgdGhlIHBhY2thZ2UgZXhpc3Qgb24gdGhlIHN5c3RlbS4iCittc2dzdHIgIuODkeODg+OCseODvOOCuOOBruioreWumuODleOCoeOCpOODq+OBoOOBkeOBjOWtmOWcqOOBl+OBpuOBhOOCi+OAgiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo0NgorIywgbm8td3JhcAorbXNnaWQgIkI8aGFsZi1pbnN0YWxsZWQ+IgorbXNnc3RyICJCPGhhbGYtaW5zdGFsbGVkPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjUwCittc2dpZCAiIgorIlRoZSBpbnN0YWxsYXRpb24gb2YgdGhlIHBhY2thZ2UgaGFzIGJlZW4gc3RhcnRlZCwgYnV0IG5vdCBjb21wbGV0ZWQgZm9yIHNvbWUgIgorInJlYXNvbi4iCittc2dzdHIgIiIKKyLjg5Hjg4PjgrHjg7zjgrjjga7jgqTjg7Pjgrnjg4jjg7zjg6vjga/plovlp4vjgZfjgabjgYTjgovjgYzjgIHkvZXjgonjgYvjga7nkIbnlLHjgaflrozkuobjgZfjgabjgYTjgarjgYTjgIIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHVucGFja2VkPiIKK21zZ3N0ciAiQjx1bnBhY2tlZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1MworbXNnaWQgIlRoZSBwYWNrYWdlIGlzIHVucGFja2VkLCBidXQgbm90IGNvbmZpZ3VyZWQuIgorbXNnc3RyICLjg5Hjg4PjgrHjg7zjgrjjga/lsZXplovjgZXjgozjgZ/jgYzjgIHoqK3lrprjga/jgZXjgozjgabjgYTjgarjgYTjgIIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGhhbGYtY29uZmlndXJlZD4iCittc2dzdHIgIkI8aGFsZi1jb25maWd1cmVkPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjU3Cittc2dpZCAiIgorIlRoZSBwYWNrYWdlIGlzIHVucGFja2VkIGFuZCBjb25maWd1cmF0aW9uIGhhcyBiZWVuIHN0YXJ0ZWQsIGJ1dCBub3QgeWV0ICIKKyJjb21wbGV0ZWQgZm9yIHNvbWUgcmVhc29uLiIKK21zZ3N0ciAiIgorIuODkeODg+OCseODvOOCuOOBr+WxlemWi+OBleOCjOOAgeioreWumuOCgumWi+Wni+OBl+OBpuOBhOOCi+OBjOS9leOCieOBi+OBrueQhueUseOBq+OCiOOBo+OBpuWujOS6huOBl+OBpuOBhOOBqiIKKyLjgYTjgIIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHRyaWdnZXJzLWF3YWl0ZWQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2MAorbXNnaWQgIlRoZSBwYWNrYWdlIGF3YWl0cyB0cmlnZ2VyIHByb2Nlc3NpbmcgYnkgYW5vdGhlciBwYWNrYWdlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjYwCisjLCBuby13cmFwCittc2dpZCAiQjx0cmlnZ2Vycy1wZW5kaW5nPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NjMKKyMsIGZ1enp5Cittc2dpZCAiVGhlIHBhY2thZ2UgaGFzIGJlZW4gdHJpZ2dlcmVkLiIKK21zZ3N0ciAi44OR44OD44Kx44O844K444Gu5bGV6ZaL44Go6Kit5a6a44GM5a6M5LqG44GX44Gm44GE44KL44CCIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjYzCisjLCBuby13cmFwCittc2dpZCAiQjxpbnN0YWxsZWQ+IgorbXNnc3RyICJCPGluc3RhbGxlZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2NgorbXNnaWQgIlRoZSBwYWNrYWdlIGlzIHVucGFja2VkIGFuZCBjb25maWd1cmVkIE9LLiIKK21zZ3N0ciAi44OR44OD44Kx44O844K444Gu5bGV6ZaL44Go6Kit5a6a44GM5a6M5LqG44GX44Gm44GE44KL44CCIgorCisjLiB0eXBlOiBTUworIzogZHBrZy4xOjY2CisjLCBuby13cmFwCittc2dpZCAiUEFDS0FHRSBTRUxFQ1RJT04gU1RBVEVTIgorbXNnc3RyICLjg5Hjg4PjgrHjg7zjgrjpgbjmip7nirbmhYsiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NjcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGluc3RhbGw+IgorbXNnc3RyICJCPGluc3RhbGw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzAKK21zZ2lkICJUaGUgcGFja2FnZSBpcyBzZWxlY3RlZCBmb3IgaW5zdGFsbGF0aW9uLiIKK21zZ3N0ciAi44OR44OD44Kx44O844K444Gv44Kk44Oz44K544OI44O844Or44GZ44KL44KI44GG44Gr6YG45oqe44GV44KM44Gm44GE44KL44CCIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjcwCisjLCBuby13cmFwCittc2dpZCAiQjxob2xkPiIKK21zZ3N0ciAiQjxob2xkPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjc0Cittc2dpZCAiIgorIkEgcGFja2FnZSBtYXJrZWQgdG8gYmUgb24gQjxob2xkPiBpcyBub3QgaGFuZGxlZCBieSBCPGRwa2c+LCB1bmxlc3MgZm9yY2VkICIKKyJ0byBkbyB0aGF0IHdpdGggb3B0aW9uIEI8LS1mb3JjZS1ob2xkPi4iCittc2dzdHIgIiIKKyLjg5Hjg4PjgrHjg7zjgrjjga8gQjxob2xkPiAo5aSJ5pu056aB5q2iKeOBleOCjOOBpuOBhOOCi+OAguOBk+OCjOOBryBCPC0tZm9yY2UtaG9sZD4g44Gn5by35Yi244GX44GqIgorIuOBhOmZkOOCiiBCPGRwa2c+IOOBp+aJseOCj+OBquOBhOOBqOOBhOOBhuOBk+OBqOOBp+OBguOCi+OAgiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo3NAorIywgbm8td3JhcAorbXNnaWQgIkI8ZGVpbnN0YWxsPiIKK21zZ3N0ciAiQjxkZWluc3RhbGw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzgKK21zZ2lkICIiCisiVGhlIHBhY2thZ2UgaXMgc2VsZWN0ZWQgZm9yIGRlaW5zdGFsbGF0aW9uIChpLmUuIHdlIHdhbnQgdG8gcmVtb3ZlIGFsbCAiCisiZmlsZXMsIGV4Y2VwdCBjb25maWd1cmF0aW9uIGZpbGVzKS4iCittc2dzdHIgIiIKKyLjg5Hjg4PjgrHjg7zjgrjjga8gZGVpbnN0YWxsYXRpb24g44GZ44KL44KI44GG44Gr6YG45oqe44GV44KM44Gm44GE44KLKOioreWumuODleOCoeOCpOODq+OCkumZpOOBj+OBmeOBueOBpiIKKyLjga7jg5XjgqHjgqTjg6vjgpLliYrpmaTjgZfjgZ/jgYQp44CCIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjc4CisjLCBuby13cmFwCittc2dpZCAiQjxwdXJnZT4iCittc2dzdHIgIkI8cHVyZ2U+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6ODIKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlRoZSBwYWNrYWdlIGlzIHNlbGVjdGVkIHRvIGJlIHB1cmdlZCAoaS5lLiB3ZSB3YW50IHRvIHJlbW92ZSBldmVyeXRoaW5nLCAiCisjfCAiZXZlbiBjb25maWd1cmF0aW9uIGZpbGVzKS4iCittc2dpZCAiIgorIlRoZSBwYWNrYWdlIGlzIHNlbGVjdGVkIHRvIGJlIHB1cmdlZCAoaS5lLiB3ZSB3YW50IHRvIHJlbW92ZSBldmVyeXRoaW5nIGZyb20gIgorInN5c3RlbSBkaXJlY3RvcmllcywgZXZlbiBjb25maWd1cmF0aW9uIGZpbGVzKS4iCittc2dzdHIgIiIKKyLjg5Hjg4PjgrHjg7zjgrjjga8gcHVyZ2Ug44GZ44KL44KI44GG44Gr6YG45oqe44GV44KM44Gm44GE44KLKOioreWumuODleOCoeOCpOODq+OCguWQq+OCgeOBn+OBmeOBueOBpuOBruODleOCoSIKKyLjgqTjg6vjgpLliYrpmaTjgZfjgZ/jgYQp44CCIgorCisjLiB0eXBlOiBTUworIzogZHBrZy4xOjgyCisjLCBuby13cmFwCittc2dpZCAiUEFDS0FHRSBGTEFHUyIKK21zZ3N0ciAi44OR44OD44Kx44O844K444OV44Op44KwIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjgzCisjLCBuby13cmFwCittc2dpZCAiQjxyZWluc3QtcmVxdWlyZWQ+IgorbXNnc3RyICJCPHJlaW5zdC1yZXF1aXJlZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo4OAorbXNnaWQgIiIKKyJBIHBhY2thZ2UgbWFya2VkIEI8cmVpbnN0LXJlcXVpcmVkPiBpcyBicm9rZW4gYW5kIHJlcXVpcmVzIHJlaW5zdGFsbGF0aW9uLiAiCisiVGhlc2UgcGFja2FnZXMgY2Fubm90IGJlIHJlbW92ZWQsIHVubGVzcyBmb3JjZWQgd2l0aCBvcHRpb24gQjwtLWZvcmNlLXJlbW92ZS0iCisicmVpbnN0cmVxPi4iCittc2dzdHIgIiIKKyLjg5Hjg4PjgrHjg7zjgrjjga8gQjxyZWluc3QtcmVxdWlyZWQ+IOOBleOCjOOBpuOBhOOCi+OAguOBk+OCjOOBr+OAgeWjiuOCjOOBpuOBhOOCi+eKtuaFi+OBp+OCpOODs+OCuSIKKyLjg4jjg7zjg6vjgZXjgozjgabjgYTjgabjgIHlho3jgqTjg7Pjgrnjg4jjg7zjg6vjgYzopoHmsYLjgZXjgozjgabjgYTjgovjgajjgYTjgYbjgZPjgajjgafjgYLjgovjgILjgZPjga7jg5Hjg4MiCisi44Kx44O844K444GvIEI8LS1mb3JjZS1yZWluc3RyZXE+IOOBp+W8t+WItuOBl+OBquOBhOmZkOOCiuOAgeWJiumZpOOBmeOCi+OBk+OBqOOBjOOBp+OBjeOBquOBhOOAgiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2cuMTo4OSBkc2VsZWN0LjE6MTIwCisjLCBuby13cmFwCittc2dpZCAiQUNUSU9OUyIKK21zZ3N0ciAi44Ki44Kv44K344On44OzIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjkwCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LWk+LCBCPC0taW5zdGFsbD4gSTxwYWNrYWdlLWZpbGU+Li4uIgorbXNnc3RyICJCPGRwa2cgLWk+IHwgQjwtLWluc3RhbGw+IEk8cGFja2FnZV9maWxlPi4uLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjk0CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJJbnN0YWxsIHRoZSBwYWNrYWdlLiBJZiBCPC0tcmVjdXJzaXZlPiBvciBCPC1SPiBvcHRpb24gaXMgc3BlY2lmaWVkLCAiCisjfCAiSTxwYWNrYWdlX2ZpbGU+IG11c3QgcmVmZXIgdG8gYSBkaXJlY3RvcnkgaW5zdGVhZC4iCittc2dpZCAiIgorIkluc3RhbGwgdGhlIHBhY2thZ2UuIElmIEI8LS1yZWN1cnNpdmU+IG9yIEI8LVI+IG9wdGlvbiBpcyBzcGVjaWZpZWQsICIKKyJJPHBhY2thZ2UtZmlsZT4gbXVzdCByZWZlciB0byBhIGRpcmVjdG9yeSBpbnN0ZWFkLiIKK21zZ3N0ciAiIgorIuaMh+WumuOBl+OBn+ODkeODg+OCseODvOOCuOOCkuOCpOODs+OCueODiOODvOODq+OBmeOCi+OAguOCguOBlyBCPC0tcmVjdXJzaXZlPiDjgb7jgZ/jga8gQjwtUj4g44Kq44OXIgorIuOCt+ODp+ODs+OCkuaMh+WumuOBmeOCi+WgtOWQiOOAgUk8cGFja2FnZV9maWxlPiDjgavjgIHlj4LnhafjgZnjgovjg4fjgqPjg6zjgq/jg4jjg6rjgpLmjIflrprjgZfjgarjgZHjgowiCisi44Gw44Gq44KJ44Gq44GE44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6OTYKK21zZ2lkICJJbnN0YWxsYXRpb24gY29uc2lzdHMgb2YgdGhlIGZvbGxvd2luZyBzdGVwczoiCittc2dzdHIgIuOCpOODs+OCueODiOODvOODq+OBr+OAgeS7peS4i+OBruaJi+mghuOBp+ani+aIkOOBleOCjOOBpuOBhOOCi+OAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjk5Cittc2dpZCAiQjwxLj4gRXh0cmFjdCB0aGUgY29udHJvbCBmaWxlcyBvZiB0aGUgbmV3IHBhY2thZ2UuIgorbXNnc3RyICJCPDEuPiDjgqTjg7Pjgrnjg4jjg7zjg6vjgZnjgovjg5Hjg4PjgrHjg7zjgrjjga7liLblvqHjg5XjgqHjgqTjg6vjgpLlj5bjgorlh7rjgZnjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxMDMKK21zZ2lkICIiCisiQjwyLj4gSWYgYW5vdGhlciB2ZXJzaW9uIG9mIHRoZSBzYW1lIHBhY2thZ2Ugd2FzIGluc3RhbGxlZCBiZWZvcmUgdGhlIG5ldyAiCisiaW5zdGFsbGF0aW9uLCBleGVjdXRlIEk8cHJlcm0+IHNjcmlwdCBvZiB0aGUgb2xkIHBhY2thZ2UuIgorbXNnc3RyICIiCisiQjwyLj4g44KC44GX5ZCM44GY44OR44OD44Kx44O844K444Gu5Yil44Gu44OQ44O844K444On44Oz44GM44GZ44Gn44Gr44Kk44Oz44K544OI44O844Or5riI44G/44Gu5aC05ZCI44CB5paw44GXIgorIuOBhOODkeODg+OCseODvOOCuOOBruOCpOODs+OCueODiOODvOODq+OBruWJjeOBq+OAgeOCpOODs+OCueODiOODvOODq+a4iOOBv+OBruODkeODg+OCseODvOOCuOOBriBJPHByZXJtPiDjgrkiCisi44Kv44Oq44OX44OI44KS5a6f6KGM44GZ44KL44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTA2Cittc2dpZCAiQjwzLj4gUnVuIEk8cHJlaW5zdD4gc2NyaXB0LCBpZiBwcm92aWRlZCBieSB0aGUgcGFja2FnZS4iCittc2dzdHIgIiIKKyJCPDMuPiDjgoLjgZfjg5Hjg4PjgrHjg7zjgrjjgYwgSTxwcmVpbnN0PiDjgrnjgq/jg6rjg5fjg4jjgpLmj5DkvpvjgZfjgabjgYTjgovloLTlkIjjgIHjgZ3jgozjgpLlrp/ooYzjgZkiCisi44KL44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTEwCittc2dpZCAiIgorIkI8NC4+IFVucGFjayB0aGUgbmV3IGZpbGVzLCBhbmQgYXQgdGhlIHNhbWUgdGltZSBiYWNrIHVwIHRoZSBvbGQgZmlsZXMsIHNvICIKKyJ0aGF0IGlmIHNvbWV0aGluZyBnb2VzIHdyb25nLCB0aGV5IGNhbiBiZSByZXN0b3JlZC4iCittc2dzdHIgIiIKKyJCPDQuPiDmlrDjgZfjgYTjg5XjgqHjgqTjg6vjgpLlsZXplovjgZnjgovjgILlkIzmmYLjgavjgIHlpLHmlZfjgZfjgZ/jgajjgY3jgavlhYPjgavmiLvjgZvjgovjgojjgYbjgavjgIHlj6TjgYQiCisi44OV44Kh44Kk44Or44KS5L+d5a2Y44GZ44KL44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTE3Cittc2dpZCAiIgorIkI8NS4+IElmIGFub3RoZXIgdmVyc2lvbiBvZiB0aGUgc2FtZSBwYWNrYWdlIHdhcyBpbnN0YWxsZWQgYmVmb3JlIHRoZSBuZXcgIgorImluc3RhbGxhdGlvbiwgZXhlY3V0ZSB0aGUgSTxwb3N0cm0+IHNjcmlwdCBvZiB0aGUgb2xkIHBhY2thZ2UuIE5vdGUgdGhhdCAiCisidGhpcyBzY3JpcHQgaXMgZXhlY3V0ZWQgYWZ0ZXIgdGhlIEk8cHJlaW5zdD4gc2NyaXB0IG9mIHRoZSBuZXcgcGFja2FnZSwgIgorImJlY2F1c2UgbmV3IGZpbGVzIGFyZSB3cml0dGVuIGF0IHRoZSBzYW1lIHRpbWUgb2xkIGZpbGVzIGFyZSByZW1vdmVkLiIKK21zZ3N0ciAiIgorIkI8NS4+IOOCguOBl+WQjOOBmOODkeODg+OCseODvOOCuOOBruWIpeOBruODkOODvOOCuOODp+ODs+OBjOOBmeOBp+OBq+OCpOODs+OCueODiOODvOODq+a4iOOBv+OBruWgtOWQiOOAgeWFiOOBqyIKKyLjgqTjg7Pjgrnjg4jjg7zjg6vjgZXjgozjgabjgYTjgZ/jg5Hjg4PjgrHjg7zjgrjjga4gSTxwb3N0cm0+IOOCkuWun+ihjOOBmeOCi+OAguOBk+OBruOCueOCr+ODquODl+ODiOOBjOOAgeaWsCIKKyLjgZfjgYTjg5Hjg4PjgrHjg7zjgrjjga4gSTxwcmVpbnN0PiDjga7lvozjgavlrp/ooYzjgZXjgozjgovjgZPjgajjgavms6jmhI/jgZnjgovjgZPjgajjgILjgZPjgozjga/jgIHmlrDjgZciCisi44GE44OV44Kh44Kk44Or44GM5pu444GN6L6844G+44KM44KL44Gu44Go5ZCM5pmC44Gr5Y+k44GE44OV44Kh44Kk44Or44GM5YmK6Zmk44GV44KM44KL44Gf44KB44Gn44GC44KL44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTIxCittc2dpZCAiIgorIkI8Ni4+IENvbmZpZ3VyZSB0aGUgcGFja2FnZS4gU2VlIEI8LS1jb25maWd1cmU+IGZvciBkZXRhaWxlZCBpbmZvcm1hdGlvbiAiCisiYWJvdXQgaG93IHRoaXMgaXMgZG9uZS4iCittc2dzdHIgIiIKKyJCPDYuPiDjg5Hjg4PjgrHjg7zjgrjjga7oqK3lrprjgpLjgZnjgovjgILjgZPjgozjgYzjganjga7jgojjgYbjgavlrp/ooYzjgZXjgozjgovjgYvjgIEgQjwtLWNvbmZpZ3VyZT4gIgorIuOBrumgheOBq+OBj+OCj+OBl+OBhOaDheWgseOBjOOBguOCi+OAgiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToxMjEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLXVucGFjayA+STxwYWNrYWdlLWZpbGU+Li4uIgorbXNnc3RyICJCPGRwa2cgLS11bnBhY2sgPkk8cGFja2FnZV9maWxlPiAuLi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxMjYKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlVucGFjayB0aGUgcGFja2FnZSwgYnV0IGRvbid0IGNvbmZpZ3VyZSBpdC4gSWYgQjwtLXJlY3Vyc2l2ZT4gb3IgQjwtUj4gIgorI3wgIm9wdGlvbiBpcyBzcGVjaWZpZWQsIEk8cGFja2FnZV9maWxlPiBtdXN0IHJlZmVyIHRvIGEgZGlyZWN0b3J5IGluc3RlYWQuIgorbXNnaWQgIiIKKyJVbnBhY2sgdGhlIHBhY2thZ2UsIGJ1dCBkb24ndCBjb25maWd1cmUgaXQuIElmIEI8LS1yZWN1cnNpdmU+IG9yIEI8LVI+ICIKKyJvcHRpb24gaXMgc3BlY2lmaWVkLCBJPHBhY2thZ2UtZmlsZT4gbXVzdCByZWZlciB0byBhIGRpcmVjdG9yeSBpbnN0ZWFkLiIKK21zZ3N0ciAiIgorIuODkeODg+OCseODvOOCuOOCkuWxlemWi+OBmeOCi+OAgeOBl+OBi+OBl+ioreWumuOBr+OBl+OBquOBhOOAguOCguOBlyBCPC0tcmVjdXJzaXZlPiDjgb7jgZ/jga8gQjwtUj4g44KqIgorIuODl+OCt+ODp+ODs+OCkuaMh+WumuOBmeOCi+WgtOWQiOOAgUk8UGFja2FnZV9maWxlPiDjgavjgIHlj4LnhafjgZnjgovjg4fjgqPjg6zjgq/jg4jjg6rjgpLmjIflrprjgZfjgarjgZEiCisi44KM44Gw44Gq44KJ44Gq44GE44CCIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjEyNgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tY29uZmlndXJlID5JPHBhY2thZ2U+Li4ufEI8LWE+fEI8LS1wZW5kaW5nPiIKK21zZ3N0ciAiQjxkcGtnIC0tY29uZmlndXJlID5JPHBhY2thZ2U+IC4uLiB8IEI8LWE+IHwgQjwtLXBlbmRpbmc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTMxCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJSZWNvbmZpZ3VyZSBhbiB1bnBhY2tlZCBwYWNrYWdlLiBJZiBCPC1hPiBvciBCPC0tcGVuZGluZz4gaXMgZ2l2ZW4gIgorI3wgImluc3RlYWQgb2YgSTxwYWNrYWdlPiwgYWxsIHVucGFja2VkIGJ1dCB1bmNvbmZpZ3VyZWQgcGFja2FnZXMgYXJlICIKKyN8ICJjb25maWd1cmVkLiIKK21zZ2lkICIiCisiQ29uZmlndXJlIGEgcGFja2FnZSB3aGljaCBoYXMgYmVlbiB1bnBhY2tlZCBidXQgbm90IHlldCBjb25maWd1cmVkLiAgSWYgQjwtIgorImE+IG9yIEI8LS1wZW5kaW5nPiBpcyBnaXZlbiBpbnN0ZWFkIG9mIEk8cGFja2FnZT4sIGFsbCB1bnBhY2tlZCBidXQgIgorInVuY29uZmlndXJlZCBwYWNrYWdlcyBhcmUgY29uZmlndXJlZC4iCittc2dzdHIgIiIKKyLlsZXplovmuIjjgb/jga7jg5Hjg4PjgrHjg7zjgrjjgpLlho3oqK3lrprjgZnjgovjgILjgoLjgZfjgIFCPC1hPiDjgb7jgZ/jga8gQjwtLXBlbmRpbmc+IOOCkuaMh+WumuOBl+OBnyIKKyLloLTlkIjjgIHjgb7jgaDoqK3lrprjgZXjgozjgabjgYTjgarjgYTlsZXplovmuIjjgb/jga7jgZnjgbnjgabjga7jg5Hjg4PjgrHjg7zjgrjjgpLoqK3lrprjgZnjgovjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxMzUKK21zZ2lkICIiCisiVG8gcmVjb25maWd1cmUgYSBwYWNrYWdlIHdoaWNoIGhhcyBhbHJlYWR5IGJlZW4gY29uZmlndXJlZCwgdHJ5IHRoZSBCPGRwa2ctIgorInJlY29uZmlndXJlPig4KSAgY29tbWFuZCBpbnN0ZWFkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTM3Cittc2dpZCAiQ29uZmlndXJpbmcgY29uc2lzdHMgb2YgdGhlIGZvbGxvd2luZyBzdGVwczoiCittc2dzdHIgIuioreWumuOBr+OAgeS7peS4i+OBruaJi+mghuOBp+ani+aIkOOBleOCjOOBpuOBhOOCi+OAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjE0MgorIywgZnV6enkKK21zZ2lkICIiCisiQjwxLj4gVW5wYWNrIHRoZSBjb25mZmlsZXMsIGFuZCBhdCB0aGUgc2FtZSB0aW1lIGJhY2sgdXAgdGhlIG9sZCBjb25mZmlsZXMsICIKKyJzbyB0aGF0IHRoZXkgY2FuIGJlIHJlc3RvcmVkIGlmIHNvbWV0aGluZyBnb2VzIHdyb25nLiIKK21zZ3N0ciAiIgorIkI8MS4+IOioreWumuODleOCoeOCpOODq+OCkuWxlemWi+OBmeOCi+OAguWQjOaZguOBq+OAgeWkseaVl+OBl+OBn+OBqOOBjeOBq+WFg+OBq+aIu+OBm+OCi+OCiOOBhuOBq+OAgeWPpOOBhOiorSIKKyLlrprjg5XjgqHjgqTjg6vjgpLkv53lrZjjgZnjgovjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxNDUKK21zZ2lkICJCPDIuPiBSdW4gSTxwb3N0aW5zdD4gc2NyaXB0LCBpZiBwcm92aWRlZCBieSB0aGUgcGFja2FnZS4iCittc2dzdHIgIiIKKyJCPDIuPiDjgoLjgZfjg5Hjg4PjgrHjg7zjgrjjgYwgSTxwb3N0aW5zdD4g44K544Kv44Oq44OX44OI44KS5o+Q5L6b44GX44Gm44GE44KL5aC05ZCI44CB44Gd44KM44KS5a6f6KGM44GZIgorIuOCi+OAgiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToxNDUKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLXRyaWdnZXJzLW9ubHk+IEk8cGFja2FnZT4uLi58QjwtYT58QjwtLXBlbmRpbmc+IgorbXNnc3RyICJCPGRwa2cgLS1jb25maWd1cmUgPkk8cGFja2FnZT4gLi4uIHwgQjwtYT4gfCBCPC0tcGVuZGluZz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxNTIKK21zZ2lkICIiCisiUHJvY2Vzc2VzIG9ubHkgdHJpZ2dlcnMuIEFsbCBwZW5kaW5nIHRyaWdnZXJzIHdpbGwgYmUgcHJvY2Vzc2VkLiBJZiBwYWNrYWdlICIKKyJuYW1lcyBhcmUgc3VwcGxpZWQgb25seSB0aG9zZSBwYWNrYWdlcycgdHJpZ2dlcnMgd2lsbCBiZSBwcm9jZXNzZWQsIGV4YWN0bHkgIgorIm9uY2UgZWFjaCB3aGVyZSBuZWNlc3NhcnkuIFVzZSBvZiB0aGlzIG9wdGlvbiBtYXkgbGVhdmUgcGFja2FnZXMgaW4gdGhlICIKKyJpbXByb3BlciBCPHRyaWdnZXJzLWF3YWl0ZWQ+IGFuZCBCPHRyaWdnZXJzLXBlbmRpbmc+IHN0YXRlcy4gVGhpcyBjYW4gYmUgIgorImZpeGVkIGxhdGVyIGJ5IHJ1bm5pbmc6IEI8ZHBrZyAtLWNvbmZpZ3VyZSAtLXBlbmRpbmc+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjE1MgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1yPiwgQjwtLXJlbW92ZT4sIEI8LVA+LCBCPC0tcHVyZ2UgPkk8cGFja2FnZT4uLi58QjwtYT58QjwtLXBlbmRpbmc+IgorbXNnc3RyICJCPGRwa2cgLXI+IHwgQjwtLXJlbW92ZT4gfCBCPC1QPiB8IEI8LS1wdXJnZSA+STxwYWNrYWdlPiAuLi4gfCBCPC1hPiB8IEI8LS1wZW5kaW5nPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjE2OQorIywgZnV6enkKK21zZ2lkICIiCisiUmVtb3ZlIGFuIGluc3RhbGxlZCBwYWNrYWdlLiBCPC1yPiBvciBCPC0tcmVtb3ZlPiByZW1vdmUgZXZlcnl0aGluZyBleGNlcHQgIgorImNvbmZmaWxlcy4gVGhpcyBtYXkgYXZvaWQgaGF2aW5nIHRvIHJlY29uZmlndXJlIHRoZSBwYWNrYWdlIGlmIGl0IGlzICIKKyJyZWluc3RhbGxlZCBsYXRlci4gKENvbmZmaWxlcyBhcmUgY29uZmlndXJhdGlvbiBmaWxlcyB0aGF0IGFyZSBsaXN0ZWQgaW4gdGhlICIKKyJJPERFQklBTi9jb25mZmlsZXM+IGNvbnRyb2wgZmlsZSkuIEI8LVA+IG9yIEI8LS1wdXJnZT4gcmVtb3ZlcyBldmVyeXRoaW5nLCAiCisiaW5jbHVkaW5nIGNvbmZmaWxlcy4gSWYgQjwtYT4gb3IgQjwtLXBlbmRpbmc+IGlzIGdpdmVuIGluc3RlYWQgb2YgYSBwYWNrYWdlICIKKyJuYW1lLCB0aGVuIGFsbCBwYWNrYWdlcyB1bnBhY2tlZCwgYnV0IG1hcmtlZCB0byBiZSByZW1vdmVkIG9yIHB1cmdlZCBpbiBmaWxlICIKKyJJPC92YXIvbGliL2Rwa2cvc3RhdHVzPiwgYXJlIHJlbW92ZWQgb3IgcHVyZ2VkLCByZXNwZWN0aXZlbHkuIE5vdGU6IHNvbWUgIgorImNvbmZpZ3VyYXRpb24gZmlsZXMgbWlnaHQgYmUgdW5rbm93biB0byBCPGRwa2c+IGJlY2F1c2UgdGhleSBhcmUgY3JlYXRlZCBhbmQgIgorImhhbmRsZWQgc2VwYXJhdGVseSB0aHJvdWdoIHRoZSBjb25maWd1cmF0aW9uIHNjcmlwdHMuIEluIHRoYXQgY2FzZSwgQjxkcGtnPiAiCisid29uJ3QgcmVtb3ZlIHRoZW0gYnkgaXRzZWxmLCBidXQgdGhlIHBhY2thZ2UncyBJPHBvc3RybT4gc2NyaXB0ICh3aGljaCBpcyAiCisiY2FsbGVkIGJ5IEI8ZHBrZz4pLCBoYXMgdG8gdGFrZSBjYXJlIG9mIHRoZWlyIHJlbW92YWwgZHVyaW5nIHB1cmdlLiBPZiAiCisiY291cnNlLCB0aGlzIG9ubHkgYXBwbGllcyB0byBmaWxlcyBpbiBzeXN0ZW0gZGlyZWN0b3JpZXMsIG5vdCBjb25maWd1cmF0aW9uICIKKyJmaWxlcyB3cml0dGVuIHRvIGluZGl2aWR1YWwgdXNlcnMnIGhvbWUgZGlyZWN0b3JpZXMuIgorbXNnc3RyICIiCisi44Kk44Oz44K544OI44O844Or5riI44G/44Gu44OR44OD44Kx44O844K444KS5YmK6Zmk44GZ44KL44CCQjwtcj4g44G+44Gf44GvIEI8LS1yZW1vdmU+IOOBr+OAgeioreWumuODleOCoSIKKyLjgqTjg6vjgpLpmaTjgYTjgZ/jgZnjgbnjgabjgpLliYrpmaTjgZnjgovjgILjgZPjgYbjgZnjgovjgZPjgajjgafjgIHlvozjgaflho3jgqTjg7Pjgrnjg4jjg7zjg6vjgZfjgZ/jgajjgY3jgavlho0iCisi6Kit5a6a44KS44GX44Gq44GP44Gm44KI44GP44Gq44KLKOioreWumuODleOCoeOCpOODq+OBruS4gOimp+OBr+OAgUk8ZGViaWFuL2NvbmZmaWxlcz4g44Kz44Oz44OI44Ot44O844OrIgorIuODleOCoeOCpOODq+OBq+OBguOCiynjgIJCPC1QPiDjgb7jgZ/jga8gQjwtLXB1cmdlPiDjga/jgIHoqK3lrprjg5XjgqHjgqTjg6vjgpLlkKvjgoDjgZnjgbnjgabjgpLliYrpmaTjgZkiCisi44KL44CC5byV44GN5pWw44Go44GX44Gm44CB44OR44OD44Kx44O844K45ZCN44Gu5Luj44KP44KK44GrIEI8LWE+IOOBvuOBn+OBryBCPC0tcGVuZGluZz4g44GM5oyH5a6a44GV44KMIgorIuOBn+WgtOWQiOOBq+OBr+OAgUk8L3Zhci9saWIvZHBrZy9zdGF0dXM+IOODleOCoeOCpOODq+OBpyByZW1vdmUg44G+44Gf44GvIHB1cmdlIOOBruODnuODvOOCr+OCkiIKKyLmjIHjgaTjgZnjgbnjgabjga7lsZXplovmuIjjgb/jg5Hjg4PjgrHjg7zjgrjjgpLjgIHjgZ3jgozjgZ7jgowgcmVtb3ZlIOOBvuOBn+OBryBwdXJnZSDjgZnjgovjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxNzEKK21zZ2lkICJSZW1vdmluZyBvZiBhIHBhY2thZ2UgY29uc2lzdHMgb2YgdGhlIGZvbGxvd2luZyBzdGVwczoiCittc2dzdHIgIuODkeODg+OCseODvOOCuOOBruWJiumZpOOBr+S7peS4i+OBruaJi+mghuOBp+ani+aIkOOBleOCjOOBpuOBhOOCi+OAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjE3NAorbXNnaWQgIkI8MS4+IFJ1biBJPHByZXJtPiBzY3JpcHQiCittc2dzdHIgIkI8MS4+IEk8cHJlcm0+IOOCueOCr+ODquODl+ODiOOCkuWun+ihjOOBmeOCi+OAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjE3NworbXNnaWQgIkI8Mi4+IFJlbW92ZSB0aGUgaW5zdGFsbGVkIGZpbGVzIgorbXNnc3RyICJCPDIuPiDjgqTjg7Pjgrnjg4jjg7zjg6vjgZfjgZ/jg5XjgqHjgqTjg6vjgpLliYrpmaTjgZnjgovjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxODAKK21zZ2lkICJCPDMuPiBSdW4gSTxwb3N0cm0+IHNjcmlwdCIKK21zZ3N0ciAiQjwzLj4gSTxwb3N0cm0+IOOCueOCr+ODquODl+ODiOOCkuWun+ihjOOBmeOCi+OAgiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToxODEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLXVwZGF0ZS1hdmFpbD4sIEI8LS1tZXJnZS1hdmFpbD4gSTxQYWNrYWdlcy1maWxlPiIKK21zZ3N0ciAiQjxkcGtnIC0tdXBkYXRlLWF2YWlsPiB8IEI8LS1tZXJnZS1hdmFpbD4gSTxQYWNrYWdlcy1maWxlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjE5MAorbXNnaWQgIiIKKyJVcGRhdGUgQjxkcGtnPidzIGFuZCBCPGRzZWxlY3Q+J3MgaWRlYSBvZiB3aGljaCBwYWNrYWdlcyBhcmUgYXZhaWxhYmxlLiBXaXRoICIKKyJhY3Rpb24gQjwtLW1lcmdlLWF2YWlsPiwgb2xkIGluZm9ybWF0aW9uIGlzIGNvbWJpbmVkIHdpdGggaW5mb3JtYXRpb24gZnJvbSAiCisiSTxQYWNrYWdlcy1maWxlPi4gV2l0aCBhY3Rpb24gQjwtLXVwZGF0ZS1hdmFpbD4sIG9sZCBpbmZvcm1hdGlvbiBpcyByZXBsYWNlZCAiCisid2l0aCB0aGUgaW5mb3JtYXRpb24gaW4gdGhlIEk8UGFja2FnZXMtZmlsZT4uIFRoZSBJPFBhY2thZ2VzLWZpbGU+ICIKKyJkaXN0cmlidXRlZCB3aXRoIERlYmlhbiBpcyBzaW1wbHkgbmFtZWQgSTxQYWNrYWdlcz4uIEI8ZHBrZz4ga2VlcHMgaXRzICIKKyJyZWNvcmQgb2YgYXZhaWxhYmxlIHBhY2thZ2VzIGluIEk8L3Zhci9saWIvZHBrZy9hdmFpbGFibGU+LiIKK21zZ3N0ciAiIgorIkI8ZHBrZz4g44KEIEI8ZHNlbGVjdD4g44GM566h55CG44GZ44KL5Yip55So5Y+v6IO944Gq44OR44OD44Kx44O844K444Gu5oOF5aCx44KS5pu05paw44GZ44KL44CCQjwtLSIKKyJtZXJnZS1hdmFpbD4g44Ki44Kv44K344On44Oz44Gv44CB5Y+k44GE5oOF5aCx44GrIEk8UGFja2FnZXMtZmlsZT4g44Gu5oOF5aCx44KS57WE44G/5ZCI44KP44Gb44KL44CCIgorIkI8LS11cGRhdGUtYXZhaWw+IOOCouOCr+OCt+ODp+ODs+OBr+OAgeWPpOOBhOaDheWgseOCkiBJPFBhY2thZ2VzLWZpbGU+IOOBruaDheWgseOBp+e9ruOBjeaPm+OBiCIKKyLjgovjgIJEZWJpYW4g44Go5LiA57eS44Gr6YWN5biD44GV44KM44Gm44GE44KLIEk8UGFja2FnZXMtZmlsZT4g44Gu5ZCN5YmN44Gv57Ch5Y2Y44GrICIKKyJJPFBhY2thZ2VzPiDjgafjgYLjgovjgIJCPGRwa2c+IOOBr+OAgeWIqeeUqOWPr+iDveOBquODkeODg+OCseODvOOCuOOBruaDheWgseOCkiBJPC92YXIvbGliL2Rwa2cvIgorImF2YWlsYWJsZT4g44Gr6KiY6Yyy44GZ44KL44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTk1Cittc2dpZCAiIgorIkEgc2ltcGxlciBvbmUtc2hvdCBjb21tYW5kIHRvIHJldHJpZXZlIGFuZCB1cGRhdGUgdGhlIEk8YXZhaWxhYmxlPiBmaWxlIGlzICIKKyJCPGRzZWxlY3QgdXBkYXRlPi4gTm90ZSB0aGF0IHRoaXMgZmlsZSBpcyBtb3N0bHkgdXNlbGVzcyBpZiB5b3UgZG9uJ3QgdXNlICIKKyJCPGRzZWxlY3Q+IGJ1dCBhbiBBUFQtYmFzZWQgZnJvbnRlbmQ6IEFQVCBoYXMgaXRzIG93biBzeXN0ZW0gdG8ga2VlcCB0cmFjayAiCisib2YgYXZhaWxhYmxlIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjE5NQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1BPiwgQjwtLXJlY29yZC1hdmFpbD4gSTxwYWNrYWdlLWZpbGU+Li4uIgorbXNnc3RyICJCPGRwa2cgLUE+IHwgQjwtLXJlY29yZC1hdmFpbD4gSTxwYWNrYWdlX2ZpbGU+IC4uLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjIwMQorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiVXBkYXRlIEI8ZHBrZz4gYW5kIEI8ZHNlbGVjdD4ncyBpZGVhIG9mIHdoaWNoIHBhY2thZ2VzIGFyZSBhdmFpbGFibGUgd2l0aCAiCisjfCAiaW5mb3JtYXRpb24gZnJvbSB0aGUgcGFja2FnZSBJPHBhY2thZ2VfZmlsZT4uIElmIEI8LS1yZWN1cnNpdmU+IG9yIEI8LVI+ICIKKyN8ICJvcHRpb24gaXMgc3BlY2lmaWVkLCBJPHBhY2thZ2VfZmlsZT4gbXVzdCByZWZlciB0byBhIGRpcmVjdG9yeSBpbnN0ZWFkLiIKK21zZ2lkICIiCisiVXBkYXRlIEI8ZHBrZz4gYW5kIEI8ZHNlbGVjdD4ncyBpZGVhIG9mIHdoaWNoIHBhY2thZ2VzIGFyZSBhdmFpbGFibGUgd2l0aCAiCisiaW5mb3JtYXRpb24gZnJvbSB0aGUgcGFja2FnZSBJPHBhY2thZ2UtZmlsZT4uIElmIEI8LS1yZWN1cnNpdmU+IG9yIEI8LVI+ICIKKyJvcHRpb24gaXMgc3BlY2lmaWVkLCBJPHBhY2thZ2UtZmlsZT4gbXVzdCByZWZlciB0byBhIGRpcmVjdG9yeSBpbnN0ZWFkLiIKK21zZ3N0ciAiIgorIkI8ZHBrZz4g44KEIEI8ZHNlbGVjdD4g44GM566h55CG44GZ44KL5Yip55So5Y+v6IO944Gq44OR44OD44Kx44O844K444Gu5oOF5aCx44KS44CBIgorIkk8cGFja2FnZV9maWxlPiDjg5Hjg4PjgrHjg7zjgrjjgYvjgonjga7mg4XloLHjgafmm7TmlrDjgZnjgovjgILjgoLjgZcgQjwtLXJlY3Vyc2l2ZT4g44G+44Gf44GvICIKKyJCPC1SPiDjgqrjg5fjgrfjg6fjg7PjgpLmjIflrprjgZnjgovloLTlkIjjgIFJPFBhY2thZ2VfZmlsZT4g44Gr44CB5Y+C54Wn44GZ44KL44OH44Kj44Os44Kv44OI44Oq44KS5oyHIgorIuWumuOBl+OBquOBkeOCjOOBsOOBquOCieOBquOBhOOAgiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToyMDEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWZvcmdldC1vbGQtdW5hdmFpbD4iCittc2dzdHIgIkI8ZHBrZyAtLWZvcmdldC1vbGQtdW5hdmFpbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyMDUKK21zZ2lkICIiCisiTm93IEI8b2Jzb2xldGU+IGFuZCBhIG5vLW9wIGFzIEI8ZHBrZz4gd2lsbCBhdXRvbWF0aWNhbGx5IGZvcmdldCB1bmluc3RhbGxlZCAiCisidW5hdmFpbGFibGUgcGFja2FnZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MjA1CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1jbGVhci1hdmFpbD4iCittc2dzdHIgIkI8ZHBrZyAtLWNsZWFyLWF2YWlsPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjIwOAorbXNnaWQgIkVyYXNlIHRoZSBleGlzdGluZyBpbmZvcm1hdGlvbiBhYm91dCB3aGF0IHBhY2thZ2VzIGFyZSBhdmFpbGFibGUuIgorbXNnc3RyICLliKnnlKjlj6/og73jgarjg5Hjg4PjgrHjg7zjgrjjga7mg4XloLHjgpLmtojljrvjgZnjgovjgIIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MjA4CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIiBCPC1DPiwgQjwtLWF1ZGl0PiIKK21zZ3N0ciAiQjwtcT58QjwtLXF1aWV0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjIxMworbXNnaWQgIiIKKyJTZWFyY2hlcyBmb3IgcGFja2FnZXMgdGhhdCBoYXZlIGJlZW4gaW5zdGFsbGVkIG9ubHkgcGFydGlhbGx5IG9uIHlvdXIgIgorInN5c3RlbS4gQjxkcGtnPiB3aWxsIHN1Z2dlc3Qgd2hhdCB0byBkbyB3aXRoIHRoZW0gdG8gZ2V0IHRoZW0gd29ya2luZy4iCittc2dzdHIgIiIKKyLjgqTjg7Pjgrnjg4jjg7zjg6vjgYzlrozkuobjgZfjgabjgYTjgarjgYTjg5Hjg4PjgrHjg7zjgrjjgpLmjqLjgZnjgIJCPGRwa2c+IOOBr+OCpOODs+OCueODiOODvOODq+OCkuWujOS6huOBlSIKKyLjgZvjgovjgZ/jgoHjgavjganjgYbjgZnjgozjgbDjgojjgYTjgYvjgpLmj5DmoYjjgZnjgovjgIIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MjEzCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1nZXQtc2VsZWN0aW9ucz4gW0k8cGFja2FnZS1uYW1lLXBhdHRlcm4+Li4uXSIKK21zZ3N0ciAiQjxkcGtnIC0tZ2V0LXNlbGVjdGlvbnM+IFtJPHBhY2thZ2UtbmFtZS1wYXR0ZXJuPi4uLl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyMTgKKyMsIGZ1enp5Cittc2dpZCAiIgorIkdldCBsaXN0IG9mIHBhY2thZ2Ugc2VsZWN0aW9ucywgYW5kIHdyaXRlIGl0IHRvIHN0ZG91dC4gV2l0aG91dCBhIHBhdHRlcm4sICIKKyJub24taW5zdGFsbGVkIHBhY2thZ2VzIChpLmUuIHRob3NlIHdoaWNoIGhhdmUgYmVlbiBwcmV2aW91c2x5IHB1cmdlZCkgIHdpbGwgIgorIm5vdCBiZSBzaG93bi4iCittc2dzdHIgIiIKKyLjg5Hjg4PjgrHjg7zjgrjpgbjmip7jg6rjgrnjg4jjgpLmqJnmupblh7rlipvjgavmm7jjgY3lh7rjgZnjgILjg5Hjgr/jg7zjg7PjgpLmjIflrprjgZfjgarjgYTloLTlkIjjgIFwdXJnZSDnirYiCisi5oWL44Gu44OR44OD44Kx44O844K444Gv6KGo56S644GV44KM44Gq44GE44CCIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjIxOCB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6Mjk5CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1zZXQtc2VsZWN0aW9ucz4iCittc2dzdHIgIkI8ZHBrZyAtLXNldC1zZWxlY3Rpb25zPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjIyNAorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiU2V0IHBhY2thZ2Ugc2VsZWN0aW9ucyB1c2luZyBmaWxlIHJlYWQgZnJvbSBzdGRpbi4gVGhpcyBmaWxlIHNob3VsZCBiZSBpbiAiCisjfCAidGhlIGZvcm1hdCAnRTxsdD5wYWNrYWdlRTxndD4gRTxsdD5zdGF0ZUU8Z3Q+Jywgd2hlcmUgc3RhdGUgaXMgb25lIG9mICIKKyN8ICJpbnN0YWxsLCBob2xkLCBkZWluc3RhbGwgb3IgcHVyZ2UuIEJsYW5rIGxpbmVzIGFuZCBjb21tZW50IGxpbmVzICIKKyN8ICJiZWdpbm5pbmcgd2l0aCAnIycgYXJlIGFsc28gcGVybWl0dGVkLiIKK21zZ2lkICIiCisiU2V0IHBhY2thZ2Ugc2VsZWN0aW9ucyB1c2luZyBmaWxlIHJlYWQgZnJvbSBzdGRpbi4gVGhpcyBmaWxlIHNob3VsZCBiZSBpbiAiCisidGhlIGZvcm1hdCAnSTxwYWNrYWdlPiBJPHN0YXRlPicsIHdoZXJlIHN0YXRlIGlzIG9uZSBvZiBCPGluc3RhbGw+LCBCPGhvbGQ+LCAiCisiQjxkZWluc3RhbGw+IG9yIEI8cHVyZ2U+LiBCbGFuayBsaW5lcyBhbmQgY29tbWVudCBsaW5lcyBiZWdpbm5pbmcgd2l0aCAnIycgIgorImFyZSBhbHNvIHBlcm1pdHRlZC4iCittc2dzdHIgIiIKKyLjg5Hjg4PjgrHjg7zjgrjpgbjmip7jg6rjgrnjg4jjgpLmqJnmupblhaXlipvjgYvjgonoqq3jgb/ovrzjgpPjgafoqK3lrprjgZnjgovjgILjg5XjgqHjgqTjg6vjga7lvaLlvI/jga8gIgorIidFPGx0PnBhY2thZ2VFPGd0PiBFPGx0PnN0YXRlRTxndD4nIOOBp+OBquOBkeOCjOOBsOOBquOCieOBquOBhOOAgnN0YXRlIOOBr+OAgWluc3RhbGzjgIEiCisiaG9sZOOAgWRlaW5zdGFsbCDjgb7jgZ/jga8gcHVyZ2Ug44Gu44GE44Ga44KM44GL44Gn44GC44KL44CC56m66KGM44KE44CB6KGM44GMICcjJyDjgaflp4vjgb7jgovjgrPjg6EiCisi44Oz44OI6KGM44KS5L2/55So44GX44Gm44KC44KI44GE44CCIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjIyNAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tY2xlYXItc2VsZWN0aW9ucz4iCittc2dzdHIgIkI8ZHBrZyAtLWNsZWFyLXNlbGVjdGlvbnM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MjI5Cittc2dpZCAiIgorIlNldCB0aGUgcmVxdWVzdGVkIHN0YXRlIG9mIGV2ZXJ5IG5vbi1lc3NlbnRpYWwgcGFja2FnZSB0byBkZWluc3RhbGwuICBUaGlzICIKKyJpcyBpbnRlbmRlZCB0byBiZSB1c2VkIGltbWVkaWF0ZWx5IGJlZm9yZSAtLXNldC1zZWxlY3Rpb25zLCB0byBkZWluc3RhbGwgYW55ICIKKyJwYWNrYWdlcyBub3QgaW4gbGlzdCBnaXZlbiB0byAtLXNldC1zZWxlY3Rpb25zLiIKK21zZ3N0ciAiIgorImVzc2VudGlhbCDjgafjgarjgYTjg5Hjg4PjgrHjg7zjgrjjgZnjgbnjgabjga7pgbjmip7nirbmhYvjgpIgZGVpbnN0YWxsIOOBq+OBmeOCi+OAgi0tc2V0LSIKKyJzZWxlY3Rpb25zIOOBq+S4juOBiOOCi+ODquOCueODiOOBq+OBquOBhOODkeODg+OCseODvOOCuOOCkiBkZWluc3RhbGwg44GZ44KL44Gf44KB44CBLS1zZXQtIgorInNlbGVjdGlvbnMg44Gu55u05YmN44Gr5L2/44GG44Gf44KB44Gu44KC44Gu44Gn44GC44KL44CCIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjIyOQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0teWV0LXRvLXVucGFjaz4iCittc2dzdHIgIkI8ZHBrZyAtLXlldC10by11bnBhY2s+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MjMzCittc2dpZCAiIgorIlNlYXJjaGVzIGZvciBwYWNrYWdlcyBzZWxlY3RlZCBmb3IgaW5zdGFsbGF0aW9uLCBidXQgd2hpY2ggZm9yIHNvbWUgcmVhc29uICIKKyJzdGlsbCBoYXZlbid0IGJlZW4gaW5zdGFsbGVkLiIKK21zZ3N0ciAiIgorIuOCpOODs+OCueODiOODvOODq+OBmeOCi+OBn+OCgeOBq+mBuOaKnuOBleOCjOOBn+OBjOOAgeS9leOCieOBi+OBrueQhueUseOBp+OBvuOBoOOCpOODs+OCueODiOODvOODq+OBleOCjOOBpuOBhOOBqiIKKyLjgYTjg5Hjg4PjgrHjg7zjgrjjgpLmjqLjgZnjgIIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MjM0CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1wcmludC1hcmNoaXRlY3R1cmU+IgorbXNnc3RyICJCPGRwa2cgLS1wcmludC1hcmNoaXRlY3R1cmU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MjM3Cittc2dpZCAiIgorIlByaW50IGFyY2hpdGVjdHVyZSBvZiBwYWNrYWdlcyBCPGRwa2c+IGluc3RhbGxzIChmb3IgZXhhbXBsZSwgXCJpMzg2XCIpLiIKK21zZ3N0ciAiQjxkcGtnPiDjga7jgqTjg7Pjgrnjg4jjg7zjg6vjgZnjgovjgqLjg7zjgq3jg4bjgq/jg4Hjg6Mo5L6L44GI44Gw44CBXCJpMzg2XCIp44KS6KGo56S644GZ44KL44CCIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjIzNworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tY29tcGFyZS12ZXJzaW9ucyA+STx2ZXIxIG9wIHZlcjI+IgorbXNnc3RyICJCPGRwa2cgLS1jb21wYXJlLXZlcnNpb25zID5JPHZlcjEgb3AgdmVyMj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyNDgKK21zZ2lkICIiCisiQ29tcGFyZSB2ZXJzaW9uIG51bWJlcnMsIHdoZXJlIEk8b3A+IGlzIGEgYmluYXJ5IG9wZXJhdG9yLiBCPGRwa2c+IHJldHVybnMgIgorInN1Y2Nlc3MgKHplcm8gcmVzdWx0KSBpZiB0aGUgc3BlY2lmaWVkIGNvbmRpdGlvbiBpcyBzYXRpc2ZpZWQsIGFuZCBmYWlsdXJlICIKKyIobm9uemVybyByZXN1bHQpIG90aGVyd2lzZS4gVGhlcmUgYXJlIHR3byBncm91cHMgb2Ygb3BlcmF0b3JzLCB3aGljaCBkaWZmZXIgIgorImluIGhvdyB0aGV5IHRyZWF0IGFuIGVtcHR5IEk8dmVyMT4gb3IgSTx2ZXIyPi4gVGhlc2UgdHJlYXQgYW4gZW1wdHkgdmVyc2lvbiAiCisiYXMgZWFybGllciB0aGFuIGFueSB2ZXJzaW9uOiBCPGx0IGxlIGVxIG5lIGdlIGd0Pi4gVGhlc2UgdHJlYXQgYW4gZW1wdHkgIgorInZlcnNpb24gYXMgbGF0ZXIgdGhhbiBhbnkgdmVyc2lvbjogQjxsdC1ubCBsZS1ubCBnZS1ubCBndC1ubD4uIFRoZXNlIGFyZSAiCisicHJvdmlkZWQgb25seSBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIGNvbnRyb2wgZmlsZSBzeW50YXg6IEI8RTxsdD4gRTxsdD5FPGx0PiAiCisiRTxsdD49ID0gRTxndD49IEU8Z3Q+RTxndD4gRTxndD4+LiIKK21zZ3N0ciAiIgorIuS6jOmghea8lOeul+WtkCBJPG9wPiDjgacgMiDjgaTjga7jg5Djg7zjgrjjg6fjg7PjgpLmr5TovIPjgZnjgovjgIJCPGRwa2c+IOOBrui/lOOCiuWApOOBr+OAgeaMh+WumuOBl+OBnyIKKyLmnaHku7bjgpLmuoDjgZ/jgZnjgarjgonmiJDlip8oMCnjgIHjgZ3jgYbjgafjgarjgZHjgozjgbDlpLHmlZcoMCDku6XlpJYp44Go44Gq44KL44CC5ryU566X5a2Q44GvIDIg44Gk44Gu44KwIgorIuODq+ODvOODl+OBq+WIhuOBi+OCjOOCi+OAguOBk+OCjOOBryBJPHZlcjE+IOOBiyBJPHZlcjI+IOOBjOasoOOBkeOBpuOBhOOCi+OBqOOBjeOBruOBteOCi+OBvuOBhOOBrumBleOBhCIKKyLjgavjgojjgovjgIJCPGx0IGxlIGVxIG5lIGdlIGd0PiDjga/jgIHmrKDjgZHjgabjgYTjgovjg5Djg7zjgrjjg6fjg7PjgYzjganjgozjgojjgorjgoLlj6TjgYTjgajjgb/jgaoiCisi44GZ44CCQjxsdC1ubCBsZS1ubCBnZS1ubCBndC1ubD4g44Gv44CB5qyg44GR44Gm44GE44KL44OQ44O844K444On44Oz44GM44Gp44KM44KI44KK44KC5paw44GX44GE44Go44G/IgorIuOBquOBmeOAgkI8RTxsdD4gRTxsdD5FPGx0PiBFPGx0Pj0gPSBFPGd0Pj0gRTxndD5FPGd0PiBFPGd0Pj4g44Gv44CBY29udHJvbCDjg5XjgqHjgqQiCisi44Or44Gu5paH5rOV44Go44Gu5LqS5o+b5oCn44Gu44Gf44KB44Gg44GR44Gr5o+Q5L6b44GV44KM44Gm44GE44KL44CCIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjI0OAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tY29tbWFuZC1mZCA+STxuPiIKK21zZ3N0ciAiQjxkcGtnIC0tY29tbWFuZC1mZCBFPGx0Pm5FPGd0Pj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyNTMKKyMsIGZ1enp5Cittc2dpZCAiIgorIkFjY2VwdCBhIHNlcmllcyBvZiBjb21tYW5kcyBvbiBpbnB1dCBmaWxlIGRlc2NyaXB0b3IgSTxuPi4gTm90ZTogYWRkaXRpb25hbCAiCisib3B0aW9ucyBzZXQgb24gdGhlIGNvbW1hbmQgbGluZSwgYW5kIHRocm91Z2ggdGhpcyBmaWxlIGRlc2NyaXB0b3IsIGFyZSBub3QgIgorInJlc2V0IGZvciBzdWJzZXF1ZW50IGNvbW1hbmRzIGV4ZWN1dGVkIGR1cmluZyB0aGUgc2FtZSBydW4uIgorbXNnc3RyICIiCisi44OV44Kh44Kk44Or6KiY6L+w5a2QIEI8RTxsdD5uRTxndD4+IOOBi+OCieS4gOmAo+OBruOCs+ODnuODs+ODieOCkuOBhuOBkeOBhOOCjOOCi+OAguazqOaEjzog6L+95Yqg44Gu44KqIgorIuODl+OCt+ODp+ODs+OBr+OCs+ODnuODs+ODieODqeOCpOODs+OBqOOBk+OBruODleOCoeOCpOODq+iomOi/sOWtkOOCkumAmuOBmOOBpuaMh+WumuOBp+OBjeOAgeS4gOWbnuOBruWun+ihjOOCkumAmiIKKyLjgZjjgabjgZ3jgozjgonjgYzjg6rjgrvjg4Pjg4jjgZXjgozjgovjgZPjgajjga/jgarjgYTjgIIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MjUzIGRwa2ctYXJjaGl0ZWN0dXJlLjE6NjAgZHBrZy1idWlsZGZsYWdzLjE6ODkgZHBrZy1kaXZlcnQuODo3MQorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTozOCBkcGtnLXNjYW5zb3VyY2VzLjE6NjYgZHBrZy1zdGF0b3ZlcnJpZGUuODo0NAorIzogZHBrZy12ZW5kb3IuMToyOCBkc2VsZWN0LjE6MTEzIHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMTYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0taGVscD4iCittc2dzdHIgIkI8LS1oZWxwPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjI1NgorbXNnaWQgIkRpc3BsYXkgYSBicmllZiBoZWxwIG1lc3NhZ2UuIgorbXNnc3RyICLnsKHljZjjgarjgqrjg5fjgrfjg6fjg7PkuIDopqfjgpLooajnpLrjgZnjgovjgIIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MjU2CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1mb3JjZS1oZWxwPiIKK21zZ3N0ciAiQjxkcGtnIC0tZm9yY2UtaGVscD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyNTkKK21zZ2lkICJHaXZlIGhlbHAgYWJvdXQgdGhlIEI8LS1mb3JjZS0+STx0aGluZz4gb3B0aW9ucy4iCittc2dzdHIgIkI8LS1mb3JjZS0+STx0aGluZz4g44Kq44OX44K344On44Oz5LiA6Kan44KS6KGo56S644GZ44KL44CCIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjI1OQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1EaD4sIEI8LS1kZWJ1Zz1oZWxwPiIKK21zZ3N0ciAiQjwtLWRlYnVnPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjI2MgorbXNnaWQgIkdpdmUgaGVscCBhYm91dCBkZWJ1Z2dpbmcgb3B0aW9ucy4iCittc2dzdHIgIuODh+ODkOODg+OCsOeUqOOCquODl+OCt+ODp+ODs+S4gOimp+OCkuihqOekuuOBmeOCi+OAgiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToyNjIgZHBrZy1hcmNoaXRlY3R1cmUuMTo2MyBkcGtnLWJ1aWxkZmxhZ3MuMTo5MgorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMjYgZHBrZy1jaGVja2J1aWxkZGVwcy4xOjM2IGRwa2ctZGlzdGFkZGZpbGUuMTozNQorIzogZHBrZy1kZWIuMToxNzUgZHBrZy1kaXZlcnQuODo3NCBkcGtnLWdlbmNoYW5nZXMuMToxMzQgZHBrZy1nZW5jb250cm9sLjE6MTI0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0NDYgZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTo0MSBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MzYKKyM6IGRwa2ctcXVlcnkuMToxMTMgZHBrZy1zY2FucGFja2FnZXMuMTo5OSBkcGtnLXNjYW5zb3VyY2VzLjE6NjgKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjE4IGRwa2ctc291cmNlLjE6OTkgZHBrZy1zcGxpdC4xOjEyOQorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo0NyBkcGtnLXRyaWdnZXIuMTozNCBkcGtnLXZlbmRvci4xOjMxIGRzZWxlY3QuMToxMTYKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMTkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tdmVyc2lvbj4iCittc2dzdHIgIkI8LS12ZXJzaW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjI2NQorbXNnaWQgIkRpc3BsYXkgQjxkcGtnPiB2ZXJzaW9uIGluZm9ybWF0aW9uLiIKK21zZ3N0ciAiQjxkcGtnPiDjga7jg5Djg7zjgrjjg6fjg7Pmg4XloLHjgpLooajnpLrjgZnjgovjgIIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MjY1CisjLCBuby13cmFwCittc2dpZCAiQjxkcGtnLWRlYiBhY3Rpb25zPiIKK21zZ3N0ciAiQjxkcGtnLWRlYiBhY3Rpb25zPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjI2OAorbXNnaWQgIlNlZSBCPGRwa2ctZGViPigxKSBmb3IgbW9yZSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgZm9sbG93aW5nIGFjdGlvbnMuIgorbXNnc3RyICLku6XkuIvjga7jgqLjgq/jgrfjg6fjg7Pjga7jgY/jgo/jgZfjgYTmg4XloLHjga8gQjxkcGtnLWRlYj4oMSkg44KS5Y+C54Wn44GZ44KL44GT44Go44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6Mjg4CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIiIKKyJCPC1iPiwgQjwtLWJ1aWxkPiBJPGRpcmVjdG9yeT4gW0k8YXJjaGl2ZT58STxkaXJlY3Rvcnk+XVxuIgorIiAgICBCdWlsZCBhIGRlYiBwYWNrYWdlLlxuIgorIkI8LWM+LCBCPC0tY29udGVudHM+IEk8YXJjaGl2ZT5cbiIKKyIgICAgTGlzdCBjb250ZW50cyBvZiBhIGRlYiBwYWNrYWdlLlxuIgorIkI8LWU+LCBCPC0tY29udHJvbD4gSTxmaWxlbmFtZT4gW0k8ZGlyZWN0b3J5Pl1cbiIKKyIgICAgRXh0cmFjdCBjb250cm9sLWluZm9ybWF0aW9uIGZyb20gYSBwYWNrYWdlLlxuIgorIkI8LXg+LCBCPC0tZXh0cmFjdD4gSTxhcmNoaXZlIGRpcmVjdG9yeT5cbiIKKyIgICAgRXh0cmFjdCB0aGUgZmlsZXMgY29udGFpbmVkIGJ5IHBhY2thZ2UuXG4iCisiQjwtWD4sIEI8LS12ZXh0cmFjdD4gSTxhcmNoaXZlIGRpcmVjdG9yeT5cbiIKKyIgICAgRXh0cmFjdCBhbmQgZGlzcGxheSB0aGUgZmlsZW5hbWVzIGNvbnRhaW5lZCBieSBhXG4iCisiICAgIHBhY2thZ2UuXG4iCisiQjwtZj4sIEI8LS1maWVsZD4gIEk8YXJjaGl2ZT4gW0k8Y29udHJvbC1maWVsZD4uLi5dXG4iCisiICAgIERpc3BsYXkgY29udHJvbCBmaWVsZChzKSBvZiBhIHBhY2thZ2UuXG4iCisiQjwtLWZzeXMtdGFyZmlsZT4gSTxhcmNoaXZlPlxuIgorIiAgICBEaXNwbGF5IHRoZSBmaWxlc3lzdGVtIHRhci1maWxlIGNvbnRhaW5lZCBieSBhXG4iCisiICAgIERlYmlhbiBwYWNrYWdlLlxuIgorIkI8LUk+LCBCPC0taW5mbz4gSTxhcmNoaXZlPiBbSTxjb250cm9sLWZpbGU+Li4uXVxuIgorIiAgICBTaG93IGluZm9ybWF0aW9uIGFib3V0IGEgcGFja2FnZS5cbiIKK21zZ3N0ciAiIgorIkI8ZHBrZyAtYj4gfCBCPC0tYnVpbGQ+IEk8ZGlyZWN0b3J5PiBbSTxmaWxlbmFtZT5dXG4iCisiICAgIGRlYiDjg5Hjg4PjgrHjg7zjgrjjgpLmp4vnr4njgZnjgovjgIJcbiIKKyJCPGRwa2cgLWM+IHwgQjwtLWNvbnRlbnRzPiBJPGZpbGVuYW1lPlxuIgorIiAgICBkZWIg44OR44OD44Kx44O844K444Gr5ZCr44G+44KM44KL44OV44Kh44Kk44Or5LiA6Kan44KS6KGo56S644GZ44KL44CCXG4iCisiQjxkcGtnIC1lPiB8IEI8LS1jb250cm9sPiBJPGZpbGVuYW1lPiBbSTxkaXJlY3Rvcnk+XVxuIgorIiAgICDjg5Hjg4PjgrHjg7zjgrjjgYvjgonliLblvqHmg4XloLHjgpLlj5bjgorlh7rjgZnjgIJcbiIKKyJCPGRwa2cgLXg+IHwgQjwtLWV4dHJhY3Q+IEk8ZmlsZW5hbWUgZGlyZWN0b3J5PlxuIgorIiAgICDjg5Hjg4PjgrHjg7zjgrjjgavlkKvjgb7jgozjgovjg5XjgqHjgqTjg6vjgpLjgZnjgbnjgablj5bjgorlh7rjgZnjgIJcbiIKKyJCPGRwa2cgLWY+IHwgQjwtLWZpZWxkPiAgSTxmaWxlbmFtZT4gW0k8Y29udHJvbC1maWVsZD5dIC4uLlxuIgorIiAgICDjg5Hjg4PjgrHjg7zjgrjjga7liLblvqHjg5XjgqPjg7zjg6vjg4njgpLooajnpLrjgZnjgovjgIJcbiIKKyJCPGRwa2cgLS1mc3lzLXRhcmZpbGU+IEk8ZmlsZW5hbWU+XG4iCisiICAgIERlYmlhbiDjg5Hjg4PjgrHjg7zjgrjjgavlkKvjgb7jgozjgosgdGFyIOODleOCoeOCpOODq+OCkuihqOekuuOBmeOCi+OAglxuIgorIkI8ZHBrZyAtST4gfCBCPC0taW5mbz4gSTxmaWxlbmFtZT4gW0k8Y29udHJvbC1maWxlPl1cbiIKKyIgICAg44OR44OD44Kx44O844K444Gr6Zai44GZ44KL5oOF5aCx44KS6KGo56S644GZ44KL44CCXG4iCisiQjxkcGtnIC1YPiB8IEI8LS12ZXh0cmFjdD4gSTxmaWxlbmFtZT4gSTxkaXJlY3Rvcnk+XG4iCisiICAgIOODkeODg+OCseODvOOCuOOBq+WQq+OBvuOCjOOCi+ODleOCoeOCpOODq+OCkuWxlemWi+OBl+OAgeODleOCoeOCpOODq+WQjeOCkuihqOekuuOBmeOCi+OAglxuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjI5MAorIywgbm8td3JhcAorbXNnaWQgIkI8ZHBrZy1xdWVyeSBhY3Rpb25zPiIKK21zZ3N0ciAiQjxkcGtnLXF1ZXJ5IGFjdGlvbnM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MjkzCittc2dpZCAiU2VlIEI8ZHBrZy1xdWVyeT4oMSkgZm9yIG1vcmUgaW5mb3JtYXRpb24gYWJvdXQgdGhlIGZvbGxvd2luZyBhY3Rpb25zLiIKK21zZ3N0ciAi5Lul5LiL44Gu44Ki44Kv44K344On44Oz44Gu6Kmz57Sw44Gv44CBQjxkcGtnLXF1ZXJ5PigxKSDjgpLlj4LnhafjgZnjgovjgZPjgajjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTozMDgKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiIgorIkI8LWw+LCBCPC0tbGlzdD4gSTxwYWNrYWdlLW5hbWUtcGF0dGVybj4uLi5cbiIKKyIgICAgTGlzdCBwYWNrYWdlcyBtYXRjaGluZyBnaXZlbiBwYXR0ZXJuLlxuIgorIkI8LXM+LCBCPC0tc3RhdHVzPiBJPHBhY2thZ2UtbmFtZT4uLi5cbiIKKyIgICAgUmVwb3J0IHN0YXR1cyBvZiBzcGVjaWZpZWQgcGFja2FnZS5cbiIKKyJCPC1MPiwgQjwtLWxpc3RmaWxlcz4gSTxwYWNrYWdlLW5hbWU+Li4uXG4iCisiICAgIExpc3QgZmlsZXMgaW5zdGFsbGVkIHRvIHlvdXIgc3lzdGVtIGZyb20gSTxwYWNrYWdlLW5hbWU+LlxuIgorIkI8LVM+LCBCPC0tc2VhcmNoPiBJPGZpbGVuYW1lLXNlYXJjaC1wYXR0ZXJuPi4uLlxuIgorIiAgICBTZWFyY2ggZm9yIGEgZmlsZW5hbWUgZnJvbSBpbnN0YWxsZWQgcGFja2FnZXMuXG4iCisiQjwtcD4sIEI8LS1wcmludC1hdmFpbD4gSTxwYWNrYWdlLW5hbWU+Li4uXG4iCisiICAgIERpc3BsYXkgZGV0YWlscyBhYm91dCBJPHBhY2thZ2UtbmFtZT4sIGFzIGZvdW5kIGluXG4iCisiICAgIEk8L3Zhci9saWIvZHBrZy9hdmFpbGFibGU+LiBVc2VycyBvZiBBUFQtYmFzZWQgZnJvbnRlbmRzXG4iCisiICAgIHNob3VsZCB1c2UgQjxhcHQtY2FjaGUgc2hvdz4gSTxwYWNrYWdlLW5hbWU+IGluc3RlYWQuXG4iCittc2dzdHIgIiIKKyJCPGRwa2cgLWw+IHwgQjwtLWxpc3Q+IEk8cGFja2FnZS1uYW1lLXBhdHRlcm4+IC4uLlxuIgorIiAgICDmjIflrprjgZfjgZ/jg5Hjgr/jg7zjg7Pjgavjg57jg4Pjg4HjgZnjgovlkI3liY3jga7jg5Hjg4PjgrHjg7zjgrjjgpLooajnpLrjgZnjgovjgIJcbiIKKyJCPGRwa2cgLXM+IHwgQjwtLXN0YXR1cz4gSTxwYWNrYWdlLW5hbWU+IC4uLlxuIgorIiAgICDmjIflrprjgZfjgZ/jg5Hjg4PjgrHjg7zjgrjjga7nirbmhYvjgpLloLHlkYrjgZnjgovjgIJcbiIKKyJCPGRwa2cgLUw+IHwgQjwtLWxpc3RmaWxlcz4gSTxwYWNrYWdlPiAuLi5cbiIKKyIgICAgQjxwYWNrYWdlPiDjg5Hjg4PjgrHjg7zjgrjjgavjgojjgaPjgabjgrfjgrnjg4bjg6DjgavjgqTjg7Pjgrnjg4jjg7zjg6vjgZXjgozjgZ/jg5XjgqHjgqTjg6vjgpLooajnpLrjgZnjgovjgIJcbiIKKyJCPGRwa2cgLVM+IHwgQjwtLXNlYXJjaD4gSTxmaWxlbmFtZS1zZWFyY2gtcGF0dGVybj4gLi4uXG4iCisiICAgIOaMh+WumuOBl+OBn+ODleOCoeOCpOODq+OBjOOBqeOBruODkeODg+OCseODvOOCuOOBi+OCieOCpOODs+OCueODiOODvOODq+OBleOCjOOBn+OBi+aknOe0ouOBmeOCi+OAglxuIgorIkI8ZHBrZyAtcD4gfCBCPC0tcHJpbnQtYXZhaWw+IEk8cGFja2FnZT5cbiIKKyIgICAgSTwvdmFyL2xpYi9kcGtnL2F2YWlsYWJsZT4g44Gr44GC44KLIEk8cGFja2FnZT4g44Gu6Kmz57Sw5oOF5aCx44KS6KGo56S644GZ44KL44CCXG4iCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLjE6MzEwIGRwa2ctYXJjaGl0ZWN0dXJlLjE6NjcgZHBrZy1idWlsZHBhY2thZ2UuMTo1MAorIzogZHBrZy1jaGVja2J1aWxkZGVwcy4xOjE4IGRwa2ctZGlzdGFkZGZpbGUuMToyNyBkcGtnLWRlYi4xOjE3OQorIzogZHBrZy1kaXZlcnQuODo0MiBkcGtnLWdlbmNoYW5nZXMuMToxNyBkcGtnLWdlbmNvbnRyb2wuMTozNworIzogZHBrZy1nZW5zeW1ib2xzLjE6MzY5IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6MjcgZHBrZy1uYW1lLjE6MzAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxNSBkcGtnLXF1ZXJ5LjE6MTE3IGRwa2ctc2NhbnBhY2thZ2VzLjE6NzEKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMTo0NCBkcGtnLXNobGliZGVwcy4xOjEwNiBkcGtnLXNwbGl0LjE6MTMzCisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjUxIGRwa2ctdHJpZ2dlci4xOjM4IGRwa2ctdmVuZG9yLjE6MzUgZHNlbGVjdC4xOjM2CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjEwMyB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzIzCisjLCBuby13cmFwCittc2dpZCAiT1BUSU9OUyIKK21zZ3N0ciAi44Kq44OX44K344On44OzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzE2CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJBbGwgb3B0aW9ucyBjYW4gYmUgc3BlY2lmaWVkIGJvdGggb24gdGhlIGNvbW1hbmQgbGluZSBhbmQgaW4gdGhlIEI8ZHBrZz4gIgorI3wgImNvbmZpZ3VyYXRpb24gZmlsZSBJPC9ldGMvZHBrZy9kcGtnLmNmZz4uIEVhY2ggbGluZSBpbiB0aGUgY29uZmlndXJhdGlvbiAiCisjfCAiZmlsZSBpcyBlaXRoZXIgYW4gb3B0aW9uIChleGFjdGx5IHRoZSBzYW1lIGFzIHRoZSBjb21tYW5kIGxpbmUgb3B0aW9uIGJ1dCAiCisjfCAid2l0aG91dCBsZWFkaW5nIGRhc2hlcykgb3IgYSBjb21tZW50IChpZiBpdCBzdGFydHMgd2l0aCBhIEI8Iz4pLiIKK21zZ2lkICIiCisiQWxsIG9wdGlvbnMgY2FuIGJlIHNwZWNpZmllZCBib3RoIG9uIHRoZSBjb21tYW5kIGxpbmUgYW5kIGluIHRoZSBCPGRwa2c+ICIKKyJjb25maWd1cmF0aW9uIGZpbGUgSTwvZXRjL2Rwa2cvZHBrZy5jZmc+IG9yIHRoZSBmaWxlcyBvbiB0aGUgY29uZmlndXJhdGlvbiAiCisiZGlyZWN0b3J5IEk8L2V0Yy9kcGtnL2Rwa2cuY2ZnLmQvPi4gRWFjaCBsaW5lIGluIHRoZSBjb25maWd1cmF0aW9uIGZpbGUgaXMgIgorImVpdGhlciBhbiBvcHRpb24gKGV4YWN0bHkgdGhlIHNhbWUgYXMgdGhlIGNvbW1hbmQgbGluZSBvcHRpb24gYnV0IHdpdGhvdXQgIgorImxlYWRpbmcgZGFzaGVzKSBvciBhIGNvbW1lbnQgKGlmIGl0IHN0YXJ0cyB3aXRoIGEgQjwjPikuIgorbXNnc3RyICIiCisi44GZ44G544Gm44Gu44Kq44OX44K344On44Oz44Gv44CB44Kz44Oe44Oz44OJ44Op44Kk44Oz44KE44CBQjxkcGtnPiDjga7oqK3lrprjg5XjgqHjgqTjg6vjgafjgYLjgosgSTwvZXRjLyIKKyJkcGtnL2Rwa2cuY2ZnPiDjgafmjIflrprjgafjgY3jgovjgILoqK3lrprjg5XjgqHjgqTjg6vjga7lkITooYzjga/jgIEo5YWI6aCt44Gu44OA44OD44K344Ol44GM54Sh44GE44GT44GoIgorIuS7peWkluOBr+OCs+ODnuODs+ODieODqeOCpOODs+OCquODl+OCt+ODp+ODs+OBqOWFqOOBj+WQjOOBmCnjgqrjg5fjgrfjg6fjg7PjgYvjgIEo6KGM6aCt44GMIEI8Iz4g44GuKeOCs+ODoeODsyIKKyLjg4jjgafjgYLjgovjgIIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MzE3CisjLCBuby13cmFwCittc2dpZCAiQjwtLWFib3J0LWFmdGVyPT5JPG51bWJlcj4iCittc2dzdHIgIkI8LS1hYm9ydC1hZnRlcj0+STxudW1iZXI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzIwCittc2dpZCAiQ2hhbmdlIGFmdGVyIGhvdyBtYW55IGVycm9ycyBCPGRwa2c+IHdpbGwgYWJvcnQuIFRoZSBkZWZhdWx0IGlzIDUwLiIKK21zZ3N0ciAiQjxkcGtnPiDjga7lh6bnkIbjgpLkuK3mlq3jgZXjgZvjgovjgqjjg6njg7zmlbDjgpLlpInmm7TjgZnjgovjgILjg4fjg5Xjgqnjg6vjg4jjga8gNTAg44Gn44GC44KL44CCIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjMyMAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1CPiwgQjwtLWF1dG8tZGVjb25maWd1cmU+IgorbXNnc3RyICJCPC1CPnxCPC0tYXV0by1kZWNvbmZpZ3VyZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTozMjYKK21zZ2lkICIiCisiV2hlbiBhIHBhY2thZ2UgaXMgcmVtb3ZlZCwgdGhlcmUgaXMgYSBwb3NzaWJpbGl0eSB0aGF0IGFub3RoZXIgaW5zdGFsbGVkICIKKyJwYWNrYWdlIGRlcGVuZGVkIG9uIHRoZSByZW1vdmVkIHBhY2thZ2UuIFNwZWNpZnlpbmcgdGhpcyBvcHRpb24gd2lsbCBjYXVzZSAiCisiYXV0b21hdGljIGRlY29uZmlndXJhdGlvbiBvZiB0aGUgcGFja2FnZSB3aGljaCBkZXBlbmRlZCBvbiB0aGUgcmVtb3ZlZCAiCisicGFja2FnZS4iCittc2dzdHIgIiIKKyLjg5Hjg4PjgrHjg7zjgrjjgpLliYrpmaTjgZnjgovjgajjgY3jgIHliYrpmaTjgZnjgovjg5Hjg4PjgrHjg7zjgrjjgavkvp3lrZjjgZfjgZ/liKXjga7jg5Hjg4PjgrHjg7zjgrjjgYzjgqTjg7PjgrkiCisi44OI44O844Or44GV44KM44Gm44GE44KL5aC05ZCI44GM44GC44KL44CC44GT44Gu44Kq44OX44K344On44Oz44KS5oyH5a6a44GZ44KL44Go44CB5YmK6Zmk44GZ44KL44OR44OD44Kx44O844K444GrIgorIuS+neWtmOOBl+OBpuOBhOOCi+ODkeODg+OCseODvOOCuOOBruioreWumuOCkuWPluOCiua2iOOBmeOAgiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTozMjYKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtRD5JPG9jdGFsPkI8LCAtLWRlYnVnPT5JPG9jdGFsPiIKK21zZ3N0ciAiQjwtRD5JPG9jdGFsPkI8IHwgLS1kZWJ1Zz0+STxvY3RhbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTozMzIKK21zZ2lkICIiCisiU3dpdGNoIGRlYnVnZ2luZyBvbi4gSTxvY3RhbD4gaXMgZm9ybWVkIGJ5IGJpdHdpc2Utb3JyaW5nIGRlc2lyZWQgdmFsdWVzICIKKyJ0b2dldGhlciBmcm9tIHRoZSBsaXN0IGJlbG93IChub3RlIHRoYXQgdGhlc2UgdmFsdWVzIG1heSBjaGFuZ2UgaW4gZnV0dXJlICIKKyJyZWxlYXNlcykuIEI8LURoPiBvciBCPC0tZGVidWc9aGVscD4gZGlzcGxheSB0aGVzZSBkZWJ1Z2dpbmcgdmFsdWVzLiIKK21zZ3N0ciAiIgorIuODh+ODkOODg+OCsOODouODvOODieOBq+OBmeOCi+OAgiBJPG9jdGFsPiDjga/jgIHku6XkuIvjga7kuIDopqfjgYvjgonmnJvjgoDlgKTjgpLjg5Pjg4Pjg4jjgZTjgajjga7oq5bnkIblkowiCisi44Gn57WE44G/5ZCI44KP44Gb44Gf44KC44Gu44Gn44GC44KLKOOBk+OCjOOCieOBruWApOOBr+OAgeWwhuadpeOBruODquODquODvOOCueOBp+OBr+WkieabtOOBleOCjOOCi+WPr+iDveaAp+OBjOOBgiIKKyLjgovjga7jgafms6jmhI/jgZnjgovjgZPjgagp44CCQjwtRGg+IOOBvuOBn+OBryBCPC0tZGVidWc9aGVscD4g44Gv44GT44KM44KJ44Gu5YCk44KS6KGo56S644GZ44KL44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzQ3CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIiIKKyIgICAgTnVtYmVyICAgRGVzY3JpcHRpb25cbiIKKyIgICAgICAgICAxICAgR2VuZXJhbGx5IGhlbHBmdWwgcHJvZ3Jlc3MgaW5mb3JtYXRpb25cbiIKKyIgICAgICAgICAyICAgSW52b2NhdGlvbiBhbmQgc3RhdHVzIG9mIG1haW50YWluZXIgc2NyaXB0c1xuIgorIiAgICAgICAgMTAgICBPdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWRcbiIKKyIgICAgICAgMTAwICAgTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWRcbiIKKyIgICAgICAgIDIwICAgT3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZVxuIgorIiAgICAgICAyMDAgICBMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGVcbiIKKyIgICAgICAgIDQwICAgRGVwZW5kZW5jaWVzIGFuZCBjb25mbGljdHNcbiIKKyIgICAgICAgNDAwICAgTG90cyBvZiBkZXBlbmRlbmNpZXMvY29uZmxpY3RzIG91dHB1dFxuIgorIiAgICAgMTAwMDAgICBUcmlnZ2VyIGFjdGl2YXRpb24gYW5kIHByb2Nlc3NpbmdcbiIKKyIgICAgIDIwMDAwICAgTG90cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzXG4iCisiICAgICA0MDAwMCAgIFNpbGx5IGFtb3VudHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2Vyc1xuIgorIiAgICAgIDEwMDAgICBMb3RzIG9mIGRyaXZlbCBhYm91dCBlLmcuIHRoZSBkcGtnL2luZm8gZGlyXG4iCisiICAgICAgMjAwMCAgIEluc2FuZSBhbW91bnRzIG9mIGRyaXZlbFxuIgorbXNnc3RyICIiCisiIOaVsOWApCAgIOiqrOaYjlxuIgorIiAgICAxICAg5LiA6Iis55qE44Gr5b2544Gr56uL44Gk6YCy6KGM54q25rOBXG4iCisiICAgIDIgICDnrqHnkIbjgrnjgq/jg6rjg5fjg4jjga7lkbzjgbPlh7rjgZfnirbms4HjgajnirbmhYtcbiIKKyIgICAxMCAgIOWQhOODleOCoeOCpOODq+WHpueQhuOBruaDheWgsVxuIgorIiAgMTAwICAg5ZCE44OV44Kh44Kk44Or5Yem55CG44Gu5aSn6YeP44Gu5oOF5aCxXG4iCisiICAgMjAgICDlkIToqK3lrprjg5XjgqHjgqTjg6vjga7mg4XloLFcbiIKKyIgIDIwMCAgIOWQhOioreWumuODleOCoeOCpOODq+OBruWkp+mHj+OBruaDheWgsVxuIgorIiAgIDQwICAg5L6d5a2Y6Zai5L+C44CB56u25ZCI6Zai5L+CXG4iCisiICA0MDAgICDkvp3lrZjplqLkv4LjgIHnq7blkIjplqLkv4Ljga7lpKfph4/jga7mg4XloLFcbiIKKyIgMTAwMCAgIGRwa2cvaW5mbyDjg4fjgqPjg6zjgq/jg4jjg6rjgarjganjgavplqLjgZnjgovlpKfph4/jga7mg4XloLFcbiIKKyIgMjAwMCAgIOato+awl+OBp+OBquOBhOOBu+OBqeOBruWkp+mHj+OBruaDheWgsVxuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjM0NworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tZm9yY2UtPkk8dGhpbmdzPiwgQjwtLW5vLWZvcmNlLT5JPHRoaW5ncz4sIEI8LS1yZWZ1c2UtPkk8dGhpbmdzPiIKK21zZ3N0ciAiQjwtLWZvcmNlLT5JPHRoaW5ncz4gfCBCPC0tbm8tZm9yY2UtPkk8dGhpbmdzPiB8IEI8LS1yZWZ1c2UtPkk8dGhpbmdzPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjM1NAorbXNnaWQgIiIKKyJGb3JjZSBvciByZWZ1c2UgKEI8bm8tZm9yY2U+IGFuZCBCPHJlZnVzZT4gbWVhbiB0aGUgc2FtZSB0aGluZykgIHRvIGRvIHNvbWUgIgorInRoaW5ncy4gSTx0aGluZ3M+IGlzIGEgY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2YgdGhpbmdzIHNwZWNpZmllZCBiZWxvdy4gQjwtLSIKKyJmb3JjZS1oZWxwPiBkaXNwbGF5cyBhIG1lc3NhZ2UgZGVzY3JpYmluZyB0aGVtLiAgVGhpbmdzIG1hcmtlZCB3aXRoICgqKSBhcmUgIgorImZvcmNlZCBieSBkZWZhdWx0LiIKK21zZ3N0ciAiIgorIuaMh+WumuOBl+OBnyBJPHRoaW5ncz4g44KS5by35Yi25a6f6KGM44GZ44KLKGZvcmNlKeOAgeOBvuOBn+OBr+aLkuWQpuOBmeOCiyhyZWZ1c2UpIChCPG5vLSIKKyJmb3JjZT4g44GoIEI8cmVmdXNlPiDjga/lkIzjgZjmhI/lkbMp44CCSTx0aGluZ3M+IOOBq+OAgeS7peS4i+OBrumgheebruOCkuOCs+ODs+ODnuOBp+WMuuWIh+OBo+OBpuaMhyIKKyLlrprjgZnjgovjgIJCPC0tZm9yY2UtaGVscD4g44Kq44OX44K344On44Oz44Gn44GT44KM44KJ44Gu6Kqs5piO44KS6KGo56S644GZ44KL44CCKCop44Oe44O844Kv44Gu44GC44KL44KCIgorIuOBruOBr+OAgeODh+ODleOCqeODq+ODiOOBp+W8t+WItuWun+ihjOOBleOCjOOCi+OAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjM1OAorbXNnaWQgIiIKKyJJPFdhcm5pbmc6IFRoZXNlIG9wdGlvbnMgYXJlIG1vc3RseSBpbnRlbmRlZCB0byBiZSB1c2VkIGJ5IGV4cGVydHMgb25seS4gIgorIlVzaW5nIHRoZW0gd2l0aG91dCBmdWxseSB1bmRlcnN0YW5kaW5nIHRoZWlyIGVmZmVjdHMgbWF5IGJyZWFrIHlvdXIgd2hvbGUgIgorInN5c3RlbS4+IgorbXNnc3RyICIiCisiSTzorablkYo6IOOBk+OCjOOCieOBruOCquODl+OCt+ODp+ODs+OBr+OAgeOBiuOCguOBq+eGn+e3tOOBl+OBn+ODpuODvOOCtuOBoOOBkeOBjOS9v+OBhuOBk+OBqOOCkuaEj+Wbs+OBl+OBn+OCgiIKKyLjga7jgafjgYLjgovjgILlvbHpn7/jgpLlrozlhajjgavnkIbop6PjgZfjgarjgYTjgb7jgb7jgavjgZPjgozjgonjgpLkvb/jgYbjgajjgIHjgrfjgrnjg4bjg6DlhajkvZPjgpLlo4rjgZfjgabjgZciCisi44G+44GG44GL44KC44GX44KM44Gq44GE44CCPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjM2MQorbXNnaWQgIkI8YWxsPjogVHVybnMgb24gKG9yIG9mZikgYWxsIGZvcmNlIG9wdGlvbnMuIgorbXNnc3RyICJCPGFsbD46IOWFqOOBpuOBruW8t+WItuOCquODl+OCt+ODp+ODs+OCkuaMh+WumuOBmeOCiyjjgb7jgZ/jga/miZPjgaHmtojjgZkp44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzY0Cittc2dpZCAiIgorIkI8ZG93bmdyYWRlPigqKTogSW5zdGFsbCBhIHBhY2thZ2UsIGV2ZW4gaWYgbmV3ZXIgdmVyc2lvbiBvZiBpdCBpcyBhbHJlYWR5ICIKKyJpbnN0YWxsZWQuIgorbXNnc3RyICIiCisiQjxkb3duZ3JhZGU+KCopOiDjgojjgormlrDjgZfjgYTjg5Djg7zjgrjjg6fjg7PjgYzjgZnjgafjgavjgqTjg7Pjgrnjg4jjg7zjg6vjgZXjgozjgabjgYTjgZ/jgajjgZfjgabjgoLjgIEiCisi5oyH5a6a44GX44Gf44OR44OD44Kx44O844K444KS44Kk44Oz44K544OI44O844Or44GZ44KL44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzcxCittc2dpZCAiIgorIkk8V2FybmluZzogQXQgcHJlc2VudCBkcGtnIGRvZXMgbm90IGRvIGFueSBkZXBlbmRlbmN5IGNoZWNraW5nIG9uIGRvd25ncmFkZXMgIgorImFuZCB0aGVyZWZvcmUgd2lsbCBub3Qgd2FybiB5b3UgaWYgdGhlIGRvd25ncmFkZSBicmVha3MgdGhlIGRlcGVuZGVuY3kgb2YgIgorInNvbWUgb3RoZXIgcGFja2FnZS4gVGhpcyBjYW4gaGF2ZSBzZXJpb3VzIHNpZGUgZWZmZWN0cywgZG93bmdyYWRpbmcgIgorImVzc2VudGlhbCBzeXN0ZW0gY29tcG9uZW50cyBjYW4gZXZlbiBtYWtlIHlvdXIgd2hvbGUgc3lzdGVtIHVudXNhYmxlLiBVc2UgIgorIndpdGggY2FyZS4+IgorbXNnc3RyICIiCisiSTzorablkYo6IOePvuWcqOOBriBkcGtnIOOBr+OAgeODgOOCpuODs+OCsOODrOODvOODieaZguOBq+OBhOOBi+OBquOCi+S+neWtmOmWouS/guOBruODgeOCp+ODg+OCr+OCguOBl+OBqiIKKyLjgYTjgILjgZ3jga7jgZ/jgoHjgIHjg4Djgqbjg7PjgrDjg6zjg7zjg4njgZnjgovjgZPjgajjgafjgIHjgbvjgYvjga7jg5Hjg4PjgrHjg7zjgrjjga7kvp3lrZjplqLkv4LjgpLorablkYrjgarjgZciCisi44Gr5aOK44GZ44GL44KC44GX44KM44Gq44GE44CC44GT44KM44Gv5rex5Yi744Gq5Ymv5L2c55So44Go44Gq44KL5Y+v6IO95oCn44GM44GC44KK44CB5Li76KaB44Gq44K344K544OG44Og5qeL5oiQIgorIuOCkuODgOOCpuODs+OCsOODrOODvOODieOBmeOCi+OBk+OBqOOBp+OCt+OCueODhuODoOOCkuWjiuOBl+OBpuOBl+OBvuOBhuOBk+OBqOOCguOBguOCiuOBhuOCi+OAguazqOaEj+OBl+OBpuS9v+eUqCIKKyLjgZnjgovjgZPjgajjgII+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6Mzc1Cittc2dpZCAiIgorIkI8Y29uZmlndXJlLWFueT46IENvbmZpZ3VyZSBhbHNvIGFueSB1bnBhY2tlZCBidXQgdW5jb25maWd1cmVkIHBhY2thZ2VzIG9uICIKKyJ3aGljaCB0aGUgY3VycmVudCBwYWNrYWdlIGRlcGVuZHMuIgorbXNnc3RyICIiCisiQjxjb25maWd1cmUtYW55Pjog5oyH5a6a44GX44Gf44OR44OD44Kx44O844K444Gr5L6d5a2Y44GX44Gm44GE44Gm44CB44GZ44Gn44Gr5bGV6ZaL44GV44KM44Gm44GE44KL44GM44CBIgorIuOBvuOBoOioreWumuOBleOCjOOBpuOBhOOBquOBhOODkeODg+OCseODvOOCuOOCguS4gOe3kuOBq+ioreWumuOCkuOBmeOCi+OAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjM3OAorbXNnaWQgIkI8aG9sZD46IFByb2Nlc3MgcGFja2FnZXMgZXZlbiB3aGVuIG1hcmtlZCBcImhvbGRcIi4iCittc2dzdHIgIiIKKyJCPGhvbGQ+OiDjgZ/jgajjgYggXCJob2xkXCIg44Go44Oe44O844Kv44GV44KM44Gm44GE44Gm44KC44CB44Gd44Gu44OR44OD44Kx44O844K444Gu5Yem55CG44KS44GZ44KL44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzgzCittc2dpZCAiIgorIkI8cmVtb3ZlLXJlaW5zdHJlcT46IFJlbW92ZSBhIHBhY2thZ2UsIGV2ZW4gaWYgaXQncyBicm9rZW4gYW5kIG1hcmtlZCB0byAiCisicmVxdWlyZSByZWluc3RhbGxhdGlvbi4gVGhpcyBtYXksIGZvciBleGFtcGxlLCBjYXVzZSBwYXJ0cyBvZiB0aGUgcGFja2FnZSB0byAiCisicmVtYWluIG9uIHRoZSBzeXN0ZW0sIHdoaWNoIHdpbGwgdGhlbiBiZSBmb3Jnb3R0ZW4gYnkgQjxkcGtnPi4iCittc2dzdHIgIiIKKyJCPHJlbW92ZS1yZWluc3RyZXE+OiDlo4rjgozjgabjgYTjgabjgIHlho3jgqTjg7Pjgrnjg4jjg7zjg6vjgYzlv4XopoHjgaDjgajjg57jg7zjgq/jgZXjgozjgabjgYTjgZ/jgajjgZciCisi44Gm44KC44CB44OR44OD44Kx44O844K444KS5YmK6Zmk44GZ44KL44CC44GT44KM44Gr44KI44KK44CB5L6L44GI44Gw44CB44OR44OD44Kx44O844K444Gu5LiA6YOo44GMIEI8ZHBrZz4g44GrIgorIueuoeeQhuOBleOCjOOBquOBhOOBp+aui+OCi+OBquOBqeOBruWVj+mhjOOBjOOBiuOBk+OCi+OBi+OCguOBl+OCjOOBquOBhOOAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjM4OAorbXNnaWQgIiIKKyJCPHJlbW92ZS1lc3NlbnRpYWw+OiBSZW1vdmUsIGV2ZW4gaWYgdGhlIHBhY2thZ2UgaXMgY29uc2lkZXJlZCBlc3NlbnRpYWwuICIKKyJFc3NlbnRpYWwgcGFja2FnZXMgY29udGFpbiBtb3N0bHkgdmVyeSBiYXNpYyBVbml4IGNvbW1hbmRzLiBSZW1vdmluZyB0aGVtICIKKyJtaWdodCBjYXVzZSB0aGUgd2hvbGUgc3lzdGVtIHRvIHN0b3Agd29ya2luZywgc28gdXNlIHdpdGggY2F1dGlvbi4iCittc2dzdHIgIiIKKyJCPHJlbW92ZS1lc3NlbnRpYWw+OiBlc3NlbnRpYWwg44Go44GV44KM44KL44OR44OD44Kx44O844K444Gn44GC44Gj44Gm44KC5YmK6Zmk44GZ44KL44CCIgorImVzc2VudGlhbCDjg5Hjg4PjgrHjg7zjgrjjgavjga/jgIHjgZ/jgYTjgabjgYTmnIDjgoLln7rmnKznmoTjgaogVU5JWCDjgrPjg57jg7Pjg4njgYzlkKvjgb7jgozjgovjgILjgZPjgowiCisi44KJ44Gu44OR44OD44Kx44O844K444KS5YmK6Zmk44GZ44KL44Go44CB44K344K544OG44Og5YWo5L2T44GM5YuV5L2c44GX44Gq44GP44Gq44KL44GT44Go44KC44GC44KL44Gu44Gn44CB5rOo5oSPIgorIuOBl+OBpuWJiumZpOOBmeOCi+OBk+OBqOOAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjM5MQorbXNnaWQgIkI8ZGVwZW5kcz46IFR1cm4gYWxsIGRlcGVuZGVuY3kgcHJvYmxlbXMgaW50byB3YXJuaW5ncy4iCittc2dzdHIgIkI8ZGVwZW5kcz46IOOBmeOBueOBpuOBruS+neWtmOWVj+mhjOOCkuitpuWRiuOBq+WkieOBiOOCi+OAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjM5NAorbXNnaWQgIiIKKyJCPGRlcGVuZHMtdmVyc2lvbj46IERvbid0IGNhcmUgYWJvdXQgdmVyc2lvbnMgd2hlbiBjaGVja2luZyBkZXBlbmRlbmNpZXMuIgorbXNnc3RyICJCPGRlcGVuZHMtdmVyc2lvbj46IOS+neWtmOmWouS/guOBrueiuuiqjeOCkuOBmeOCi+OBqOOBjeOAgeODkOODvOOCuOODp+ODs+OCkueEoeimluOBmeOCi+OAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjM5NworbXNnaWQgIkI8YnJlYWtzPjogSW5zdGFsbCwgZXZlbiBpZiB0aGlzIHdvdWxkIGJyZWFrIGFub3RoZXIgcGFja2FnZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQwMQorbXNnaWQgIiIKKyJCPGNvbmZsaWN0cz46IEluc3RhbGwsIGV2ZW4gaWYgaXQgY29uZmxpY3RzIHdpdGggYW5vdGhlciBwYWNrYWdlLiBUaGlzIGlzICIKKyJkYW5nZXJvdXMsIGZvciBpdCB3aWxsIHVzdWFsbHkgY2F1c2Ugb3ZlcndyaXRpbmcgb2Ygc29tZSBmaWxlcy4iCittc2dzdHIgIiIKKyJCPGNvbmZsaWN0cz46IOS7luOBruODkeODg+OCseODvOOCuOOBqOertuWQiOOBl+OBpuOCguOCpOODs+OCueODiOODvOODq+OBmeOCi+OAguOBn+OBhOOBpuOBhOOBr+OBhOOBj+OBpOOBiyIKKyLjg5XjgqHjgqTjg6vjgpLkuIrmm7jjgY3jgZnjgovjgZPjgajjgavjgarjgovjgZ/jgoHjgIHljbHpmbrjgafjgYLjgovjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0MDYKKyMsIGZ1enp5Cittc2dpZCAiIgorIkI8Y29uZm1pc3M+OiBBbHdheXMgaW5zdGFsbCBhIG1pc3NpbmcgY29uZmZpbGUuIFRoaXMgaXMgZGFuZ2Vyb3VzLCBzaW5jZSBpdCAiCisibWVhbnMgbm90IHByZXNlcnZpbmcgYSBjaGFuZ2UgKHJlbW92aW5nKSBtYWRlIHRvIHRoZSBmaWxlLiIKK21zZ3N0ciAiIgorIkI8Y29uZm1pc3M+OiDluLjjgavjgIHmrKDjgZHjgabjgYTjgovoqK3lrprjg5XjgqHjgqTjg6vjgpLjgqTjg7Pjgrnjg4jjg7zjg6vjgZnjgovjgILjgZPjga7jgqrjg5fjgrfjg6fjg7MiCisi44Gv44CB5aSJ5pu0KOODleOCoeOCpOODq+OCkuWJiumZpOOBl+OBn+OBk+OBqCnjgpLkv53lrZjjgZfjgarjgYTjgZ/jgoHjgIHljbHpmbrjgafjgYLjgovjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0MTEKK21zZ2lkICIiCisiQjxjb25mbmV3PjogSWYgYSBjb25mZmlsZSBoYXMgYmVlbiBtb2RpZmllZCBhbHdheXMgaW5zdGFsbCB0aGUgbmV3IHZlcnNpb24gIgorIndpdGhvdXQgcHJvbXB0aW5nLCB1bmxlc3MgdGhlIEI8LS1mb3JjZS1jb25mZGVmPiBpcyBhbHNvIHNwZWNpZmllZCwgaW4gd2hpY2ggIgorImNhc2UgdGhlIGRlZmF1bHQgYWN0aW9uIGlzIHByZWZlcnJlZC4iCittc2dzdHIgIiIKKyJCPGNvbmZuZXc+OiDoqK3lrprjg5XjgqHjgqTjg6vjgYzlpInmm7TjgZXjgozjgabjgYTjgZ/loLTlkIjjgIHllY/jgYTlkIjjgo/jgZvjgarjgZfjgavmlrDjgZfjgYTjg5Djg7zjgrjjg6ciCisi44Oz44Gu6Kit5a6a44OV44Kh44Kk44Or44KS44Kk44Oz44K544OI44O844Or44GZ44KL44CC44Gf44Gg44GX44CBQjwtLWZvcmNlLWNvbmZkZWY+IOOCkuWQjOaZguOBq+aMh+WumuOBlyIKKyLjgZ/loLTlkIjjga/jgIHjg4fjg5Xjgqnjg6vjg4jjga7li5XkvZzjgYzlhKrlhYjjgZXjgozjgovjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0MTYKK21zZ2lkICIiCisiQjxjb25mb2xkPjogSWYgYSBjb25mZmlsZSBoYXMgYmVlbiBtb2RpZmllZCBhbHdheXMga2VlcCB0aGUgb2xkIHZlcnNpb24gIgorIndpdGhvdXQgcHJvbXB0aW5nLCB1bmxlc3MgdGhlIEI8LS1mb3JjZS1jb25mZGVmPiBpcyBhbHNvIHNwZWNpZmllZCwgaW4gd2hpY2ggIgorImNhc2UgdGhlIGRlZmF1bHQgYWN0aW9uIGlzIHByZWZlcnJlZC4iCittc2dzdHIgIiIKKyJCPGNvbmZvbGQ+OiDoqK3lrprjg5XjgqHjgqTjg6vjgYzlpInmm7TjgZXjgozjgabjgYTjgZ/loLTlkIjjgIHllY/jgYTlkIjjgo/jgZvjgarjgZfjgavlj6TjgYTjg5Djg7zjgrjjg6fjg7MiCisi44Gu6Kit5a6a44OV44Kh44Kk44Or44KS5L+d5oyB44GZ44KL44CC44Gf44Gg44GX44CBQjwtLWZvcmNlLWNvbmZkZWY+IOOCkuWQjOaZguOBq+aMh+WumuOBl+OBn+WgtOWQiOOBr+OAgSIKKyLjg4fjg5Xjgqnjg6vjg4jjga7li5XkvZzjgYzlhKrlhYjjgZXjgozjgovjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0MjIKK21zZ2lkICIiCisiQjxjb25mZGVmPjogSWYgYSBjb25mZmlsZSBoYXMgYmVlbiBtb2RpZmllZCBhbHdheXMgY2hvb3NlIHRoZSBkZWZhdWx0ICIKKyJhY3Rpb24uIElmIHRoZXJlIGlzIG5vIGRlZmF1bHQgYWN0aW9uIGl0IHdpbGwgc3RvcCB0byBhc2sgdGhlIHVzZXIgdW5sZXNzICIKKyJCPC0tZm9yY2UtY29uZm5ldz4gb3IgQjwtLWZvcmNlLWNvbmZvbGQ+IGlzIGFsc28gYmVlbiBnaXZlbiwgaW4gd2hpY2ggY2FzZSAiCisiaXQgd2lsbCB1c2UgdGhhdCB0byBkZWNpZGUgdGhlIGZpbmFsIGFjdGlvbi4iCittc2dzdHIgIiIKKyJCPGNvbmZkZWY+OiDoqK3lrprjg5XjgqHjgqTjg6vjgYzlpInmm7TjgZXjgozjgabjgYTjgZ/loLTlkIjjgIHluLjjgavjg4fjg5Xjgqnjg6vjg4jjga7li5XkvZzjgpLjgZnjgovjgILjg4ciCisi44OV44Kp44Or44OI44Gu5YuV5L2c44GM44Gq44GP44CBQjwtLWZvcmNlLWNvbmZuZXc+IOOBqCBCPC0tZm9yY2UtY29uZm9sZD4g44Gu44Gp44Gh44KJ44KC5ZCM5pmCIgorIuOBq+aMh+WumuOBl+OBpuOBhOOBquOBhOWgtOWQiOOAgeODpuODvOOCtuOBq+Wwi+OBreOCi+OBn+OCgeOBq+S4reaWreOBmeOCi+OAguaMh+WumuOBl+OBpuOBhOOCi+WgtOWQiOOBr+OAgeaMh+WumiIKKyLjgZXjgozjgZ/jgqrjg5fjgrfjg6fjg7PjgavjgojjgaPjgabmnIDntYLnmoTjgarli5XkvZzjgYzmsbrjgb7jgovjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0MjkKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIkI8Y29uZmRlZj46IElmIGEgY29uZmZpbGUgaGFzIGJlZW4gbW9kaWZpZWQgYWx3YXlzIGNob29zZSB0aGUgZGVmYXVsdCAiCisjfCAiYWN0aW9uLiBJZiB0aGVyZSBpcyBubyBkZWZhdWx0IGFjdGlvbiBpdCB3aWxsIHN0b3AgdG8gYXNrIHRoZSB1c2VyIHVubGVzcyAiCisjfCAiQjwtLWZvcmNlLWNvbmZuZXc+IG9yIEI8LS1mb3JjZS1jb25mb2xkPiBpcyBhbHNvIGJlZW4gZ2l2ZW4sIGluIHdoaWNoICIKKyN8ICJjYXNlIGl0IHdpbGwgdXNlIHRoYXQgdG8gZGVjaWRlIHRoZSBmaW5hbCBhY3Rpb24uIgorbXNnaWQgIiIKKyJCPGNvbmZhc2s+OiBJZiBhIGNvbmZmaWxlIGhhcyBiZWVuIG1vZGlmaWVkIGFsd2F5cyBvZmZlciB0byByZXBsYWNlIGl0IHdpdGggIgorInRoZSB2ZXJzaW9uIGluIHRoZSBwYWNrYWdlLCBldmVuIGlmIHRoZSB2ZXJzaW9uIGluIHRoZSBwYWNrYWdlIGRpZCBub3QgIgorImNoYW5nZS4gSWYgYW55IG9mIEI8LS1mb3JjZS1jb25mbWlzcz4sIEI8LS1mb3JjZS1jb25mbmV3PiwgQjwtLWZvcmNlLSIKKyJjb25mb2xkPiwgb3IgQjwtLWZvcmNlLWNvbmZkZWY+IGlzIGFsc28gZ2l2ZW4sIGl0IHdpbGwgYmUgdXNlZCB0byBkZWNpZGUgdGhlICIKKyJmaW5hbCBhY3Rpb24uIgorbXNnc3RyICIiCisiQjxjb25mZGVmPjog6Kit5a6a44OV44Kh44Kk44Or44GM5aSJ5pu044GV44KM44Gm44GE44Gf5aC05ZCI44CB5bi444Gr44OH44OV44Kp44Or44OI44Gu5YuV5L2c44KS44GZ44KL44CC44OHIgorIuODleOCqeODq+ODiOOBruWLleS9nOOBjOOBquOBj+OAgUI8LS1mb3JjZS1jb25mbmV3PiDjgaggQjwtLWZvcmNlLWNvbmZvbGQ+IOOBruOBqeOBoeOCieOCguWQjOaZgiIKKyLjgavmjIflrprjgZfjgabjgYTjgarjgYTloLTlkIjjgIHjg6bjg7zjgrbjgavlsIvjga3jgovjgZ/jgoHjgavkuK3mlq3jgZnjgovjgILmjIflrprjgZfjgabjgYTjgovloLTlkIjjga/jgIHmjIflrpoiCisi44GV44KM44Gf44Kq44OX44K344On44Oz44Gr44KI44Gj44Gm5pyA57WC55qE44Gq5YuV5L2c44GM5rG644G+44KL44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDMyCittc2dpZCAiQjxvdmVyd3JpdGU+OiBPdmVyd3JpdGUgb25lIHBhY2thZ2UncyBmaWxlIHdpdGggYW5vdGhlcidzIGZpbGUuIgorbXNnc3RyICIiCisiQjxvdmVyd3JpdGU+OiDjgYLjgovjg5Hjg4PjgrHjg7zjgrjjgafmj5DkvpvjgZXjgozjgabjgYTjgovjg5XjgqHjgqTjg6vjgpLjgIHjgqTjg7Pjgrnjg4jjg7zjg6vjgZnjgovjg5Hjg4MiCisi44Kx44O844K444Gu44OV44Kh44Kk44Or44Gn5LiK5pu444GN44GZ44KL44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDM1Cittc2dpZCAiQjxvdmVyd3JpdGUtZGlyPiBPdmVyd3JpdGUgb25lIHBhY2thZ2UncyBkaXJlY3Rvcnkgd2l0aCBhbm90aGVyJ3MgZmlsZS4iCittc2dzdHIgIiIKKyJCPG92ZXJ3cml0ZS1kaXI+OiDjgYLjgovjg5Hjg4PjgrHjg7zjgrjjgafmj5DkvpvjgZXjgozjgabjgYTjgovjg4fjgqPjg6zjgq/jg4jjg6rjgpLjgIHjgqTjg7Pjgrnjg4jjg7zjg6siCisi44GZ44KL44OR44OD44Kx44O844K444Gu44OV44Kh44Kk44Or44Gn5LiK5pu444GN44GZ44KL44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDM4Cittc2dpZCAiIgorIkI8b3ZlcndyaXRlLWRpdmVydGVkPjogT3ZlcndyaXRlIGEgZGl2ZXJ0ZWQgZmlsZSB3aXRoIGFuIHVuZGl2ZXJ0ZWQgdmVyc2lvbi4iCittc2dzdHIgIiIKKyJCPG92ZXJ3cml0ZS1kaXZlcnRlZD46IOmAgOmBvyhkaXZlcnQg44GX44GfKeeJiOOBruODleOCoeOCpOODq+OCkumdnumAgOmBvyhkaXZlcnQg44GX44Gm44GE44GqIgorIuOBhCnniYjjga7jg5XjgqHjgqTjg6vjgafkuIrmm7jjgY3jgZnjgovjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0NDYKK21zZ2lkICIiCisiQjx1bnNhZmUtaW8+OiBEbyBub3QgcGVyZm9ybSBzYWZlIEkvTyBvcGVyYXRpb25zIHdoZW4gdW5wYWNraW5nLiBDdXJyZW50bHkgIgorInRoaXMgaW1wbGllcyBub3QgcGVyZm9ybWluZyBmaWxlIHN5c3RlbSBzeW5jcyBiZWZvcmUgZmlsZSByZW5hbWVzLCB3aGljaCBpcyAiCisia25vd24gdG8gY2F1c2Ugc3Vic3RhbnRpYWwgcGVyZm9ybWFuY2UgZGVncmFkYXRpb24gb24gc29tZSBmaWxlIHN5c3RlbXMsICIKKyJ1bmZvcnR1bmF0ZWx5IHRoZSBvbmVzIHRoYXQgcmVxdWlyZSB0aGUgc2FmZSBJL08gb24gdGhlIGZpcnN0IHBsYWNlIGR1ZSB0byAiCisidGhlaXIgdW5yZWxpYWJsZSBiZWhhdmlvdXIgY2F1c2luZyB6ZXJvLWxlbmd0aCBmaWxlcyBvbiBhYnJ1cHQgc3lzdGVtICIKKyJjcmFzaGVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDUyCittc2dpZCAiIgorIkk8Tm90ZT46IEZvciBleHQ0LCB0aGUgbWFpbiBvZmZlbmRlciwgY29uc2lkZXIgdXNpbmcgaW5zdGVhZCB0aGUgbW91bnQgIgorIm9wdGlvbiBCPG5vZGVsYWxsb2M+LCB3aGljaCB3aWxsIGZpeCBib3RoIHRoZSBwZXJmb3JtYW5jZSBkZWdyYWRhdGlvbiBhbmQgIgorInRoZSBkYXRhIHNhZmV0eSBpc3N1ZXMsIHRoZSBsYXR0ZXIgYnkgbWFraW5nIHRoZSBmaWxlIHN5c3RlbSBub3QgcHJvZHVjZSAiCisiemVyby1sZW5ndGggZmlsZXMgb24gYWJydXB0IHN5c3RlbSBjcmFzaGVzIHdpdGggYW55IHNvZnR3YXJlIG5vdCBkb2luZyBzeW5jcyAiCisiYmVmb3JlIGF0b21pYyByZW5hbWVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDU1Cittc2dpZCAiIgorIkk8V2FybmluZzogVXNpbmcgdGhpcyBvcHRpb24gbWlnaHQgaW1wcm92ZSBwZXJmb3JtYW5jZSBhdCB0aGUgY29zdCBvZiBsb3NpbmcgIgorImRhdGEsIHVzZSB3aXRoIGNhcmUuPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDU4CisjLCBmdXp6eQorI3wgbXNnaWQgIkI8YXJjaGl0ZWN0dXJlPjogUHJvY2VzcyBldmVuIHBhY2thZ2VzIHdpdGggdGhlIHdyb25nIGFyY2hpdGVjdHVyZS4iCittc2dpZCAiQjxhcmNoaXRlY3R1cmU+OiBQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyBvciBubyBhcmNoaXRlY3R1cmUuIgorbXNnc3RyICIiCisiQjxhcmNoaXRlY3R1cmU+OiDjg5Hjg4PjgrHjg7zjgrjjgYzplpPpgZXjgaPjgZ/jgqLjg7zjgq3jg4bjgq/jg4Hjg6PnlKjjgafjgYLjgaPjgabjgoLlh6bnkIbjgpLjgZnjgovjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0NjEKKyMsIGZ1enp5CisjfCBtc2dpZCAiQjxhcmNoaXRlY3R1cmU+OiBQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB0aGUgd3JvbmcgYXJjaGl0ZWN0dXJlLiIKK21zZ2lkICJCPGJhZC12ZXJzaW9uPjogUHJvY2VzcyBldmVuIHBhY2thZ2VzIHdpdGggd3JvbmcgdmVyc2lvbnMuIgorbXNnc3RyICIiCisiQjxhcmNoaXRlY3R1cmU+OiDjg5Hjg4PjgrHjg7zjgrjjgYzplpPpgZXjgaPjgZ/jgqLjg7zjgq3jg4bjgq/jg4Hjg6PnlKjjgafjgYLjgaPjgabjgoLlh6bnkIbjgpLjgZnjgovjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0NjQKK21zZ2lkICIiCisiQjxiYWQtcGF0aD46IEI8UEFUSD4gaXMgbWlzc2luZyBpbXBvcnRhbnQgcHJvZ3JhbXMsIHNvIHByb2JsZW1zIGFyZSBsaWtlbHkuIgorbXNnc3RyICIiCisiQjxiYWQtcGF0aD46IOmHjeimgeOBquODl+ODreOCsOODqeODoOOBjCBCPFBBVEg+IOOBq+WQq+OBvuOCjOOBpuOBhOOBquOBj+OBpuOCguWun+ihjOOBmeOCi+OAguWVj+mhjOOBjCIKKyLotbfjgY3jgovlj6/og73mgKfjga/pq5jjgYTjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0NjcKK21zZ2lkICJCPG5vdC1yb290PjogVHJ5IHRvIChkZSlpbnN0YWxsIHRoaW5ncyBldmVuIHdoZW4gbm90IHJvb3QuIgorbXNnc3RyICIiCisiQjxub3Qtcm9vdD46IHJvb3Qg44Gn44Gq44GE44Go44GN44Gn44KC44CB44Gd44KM44KS44Kk44Oz44K544OI44O844OrKOOBvuOBn+OBr+WJiumZpCnjgZfjgojjgYbjgajoqabjgb8iCisi44KL44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDcwCittc2dpZCAiQjxiYWQtdmVyaWZ5PjogSW5zdGFsbCBhIHBhY2thZ2UgZXZlbiBpZiBpdCBmYWlscyBhdXRoZW50aWNpdHkgY2hlY2suIgorbXNnc3RyICJCPGJhZC12ZXJpZnk+OiDkv6HpoLzmgKfjg4Hjgqfjg4Pjgq/jgavlpLHmlZfjgZfjgabjgoLjgqTjg7Pjgrnjg4jjg7zjg6vjgZnjgovjgIIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NDcxCisjLCBuby13cmFwCittc2dpZCAiQjwtLWlnbm9yZS1kZXBlbmRzPj1JPHBhY2thZ2U+LC4uLiIKK21zZ3N0ciAiQjwtLWlnbm9yZS1kZXBlbmRzPj1JPHBhY2thZ2U+LC4uLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQ3NQorbXNnaWQgIiIKKyJJZ25vcmUgZGVwZW5kZW5jeS1jaGVja2luZyBmb3Igc3BlY2lmaWVkIHBhY2thZ2VzIChhY3R1YWxseSwgY2hlY2tpbmcgaXMgIgorInBlcmZvcm1lZCwgYnV0IG9ubHkgd2FybmluZ3MgYWJvdXQgY29uZmxpY3RzIGFyZSBnaXZlbiwgbm90aGluZyBlbHNlKS4iCittc2dzdHIgIiIKKyLmjIflrprjgZfjgZ/jg5Hjg4PjgrHjg7zjgrjjgavplqLjgZnjgovkvp3lrZjplqLkv4Ljga7norroqo3jgpLnhKHoppbjgZnjgoso5a6f6Zqb44Gv44CB5L6d5a2Y6Zai5L+C44KS56K66KqN44GX44CBIgorIuertuWQiOOBq+WvvuOBl+OBpuitpuWRiuODoeODg+OCu+ODvOOCuOOCkuWHuuOBl+OBpuOAgeOCouOCr+OCt+ODp+ODs+OCkuWun+ihjOOBmeOCiynjgIIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NDc1CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1uby1hY3Q+LCBCPC0tZHJ5LXJ1bj4sIEI8LS1zaW11bGF0ZT4iCittc2dzdHIgIkI8LS1uby1hY3Q+IHwgQjwtLWRyeS1ydW4+IHwgQjwtLXNpbXVsYXRlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQ4MAorbXNnaWQgIiIKKyJEbyBldmVyeXRoaW5nIHdoaWNoIGlzIHN1cHBvc2VkIHRvIGJlIGRvbmUsIGJ1dCBkb24ndCB3cml0ZSBhbnkgY2hhbmdlcy4gIgorIlRoaXMgaXMgdXNlZCB0byBzZWUgd2hhdCB3b3VsZCBoYXBwZW4gd2l0aCB0aGUgc3BlY2lmaWVkIGFjdGlvbiwgd2l0aG91dCAiCisiYWN0dWFsbHkgbW9kaWZ5aW5nIGFueXRoaW5nLiIKK21zZ3N0ciAiIgorIuacn+W+heOBleOCjOOCi+WLleS9nOOCkuOBmeOBueOBpuWun+ihjOOBmeOCi+OBjOOAgeOBqeOBruOCiOOBhuOBquWkieabtOOCguabuOOBjei+vOOBvuOBquOBhOOAguOBk+OCjOOBr+OAgeWun+mamyIKKyLjgavjga/jgrfjgrnjg4bjg6DjgavkvZXjga7lpInmm7TjgoLliqDjgYjjgZrjgavjgIHmjIflrprjgZfjgZ/jgqLjgq/jgrfjg6fjg7PjgafkvZXjgYzjgYrjgZPjgovjga7jgYvjgpLnorroqo3jgZkiCisi44KL44Gf44KB44Gu44KC44Gu44Gn44GC44KL44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDg1Cittc2dpZCAiIgorIkJlIHN1cmUgdG8gZ2l2ZSBCPC0tbm8tYWN0PiBiZWZvcmUgdGhlIGFjdGlvbi1wYXJhbWV0ZXIsIG9yIHlvdSBtaWdodCBlbmQgdXAgIgorIndpdGggdW5kZXNpcmFibGUgcmVzdWx0cy4gKGUuZy4gQjxkcGtnIC0tcHVyZ2UgZm9vIC0tbm8tYWN0PiB3aWxsIGZpcnN0ICIKKyJwdXJnZSBwYWNrYWdlIGZvbyBhbmQgdGhlbiB0cnkgdG8gcHVyZ2UgcGFja2FnZSAtLW5vLWFjdCwgZXZlbiB0aG91Z2ggeW91ICIKKyJwcm9iYWJseSBleHBlY3RlZCBpdCB0byBhY3R1YWxseSBkbyBub3RoaW5nKSIKK21zZ3N0ciAiIgorIuOCquODl+OCt+ODp+ODsyBCPC0tbm8tYWN0PiDjga/jgIHlv4XjgZrjgqLjgq/jgrfjg6fjg7Pjg5Hjg6njg6Hjg7zjgr/jgojjgorliY3jgavkuI7jgYjjgovjgZPjgajjgILjgZXjgoLjgaoiCisi44GP44Gw44CB5pyb44G+44GX44GP44Gq44GE57WQ5p6c44GM6LW344GN44KL5Y+v6IO95oCn44GM44GC44KLKOS+i+OBiOOBsOOAgeOCt+OCueODhuODoOOBq+S9leOCguWkieabtOOCkuWKoOOBiOOCiyIKKyLjgaTjgoLjgorjgYzjgarjgYTjga7jgavjgIEgQjxkcGtnIC0tcHVyZ2UgZm9vIC0tbm8tYWN0PiDjgpLlrp/ooYzjgZnjgovjgajjgIHmnIDliJ3jgavjg5Hjg4PjgrHjg7wiCisi44K4IGZvbyDjgpLmnKzlvZPjgasgcHVyZ2Ug44GX44CB5qyh44Gr44OR44OD44Kx44O844K4IC0tbm8tYWN0IOOCkiBwdXJnZSDjgZfjgojjgYbjgajjgZnjgovjgIHjgajjgYQiCisi44GG44GT44Go44Gr44Gq44KLKeOAgiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo0ODUKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtUj4sIEI8LS1yZWN1cnNpdmU+IgorbXNnc3RyICJCPC1SPiB8IEI8LS1yZWN1cnNpdmU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDkxCittc2dpZCAiIgorIlJlY3Vyc2l2ZWx5IGhhbmRsZSBhbGwgcmVndWxhciBmaWxlcyBtYXRjaGluZyBwYXR0ZXJuIEI8Ki5kZWI+IGZvdW5kIGF0ICIKKyJzcGVjaWZpZWQgZGlyZWN0b3JpZXMgYW5kIGFsbCBvZiBpdHMgc3ViZGlyZWN0b3JpZXMuIFRoaXMgY2FuIGJlIHVzZWQgd2l0aCAiCisiQjwtaT4sIEI8LUE+LCBCPC0taW5zdGFsbD4sIEI8LS11bnBhY2s+IGFuZCBCPC0tYXZhaWw+IGFjdGlvbnMuIgorbXNnc3RyICIiCisi5oyH5a6a44GX44Gf44OH44Kj44Os44Kv44OI44Oq44KS5YaN5biw55qE44Gr5qSc57Si44GX44CB44G/44Gk44GR44GfIEI8Ki5kZWI+IOOBqOOBhOOBhuODkeOCv+ODvOODs+OBq+ODnuODgyIKKyLjg4HjgZnjgovjg5XjgqHjgqTjg6vjgpLjgZnjgbnjgabmibHjgYbjgILjgZPjgozjga/jgIFCPC1pPiwgQjwtQT4sIEI8LS1pbnN0YWxsPiwgQjwtLXVucGFjaz4gIgorIuOBneOBl+OBpiBCPC0tYXZhaWw+IOOCouOCr+OCt+ODp+ODs+OBqOOBqOOCguOBq+S9v+OBhuOBk+OBqOOBjOOBp+OBjeOCi+OAgiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo0OTEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1HPiIKK21zZ3N0ciAiQjwtRz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0OTUKK21zZ2lkICIiCisiRG9uJ3QgaW5zdGFsbCBhIHBhY2thZ2UgaWYgYSBuZXdlciB2ZXJzaW9uIG9mIHRoZSBzYW1lIHBhY2thZ2UgaXMgYWxyZWFkeSAiCisiaW5zdGFsbGVkLiBUaGlzIGlzIGFuIGFsaWFzIG9mIEI8LS1yZWZ1c2UtZG93bmdyYWRlPi4iCittc2dzdHIgIiIKKyLjgqTjg7Pjgrnjg4jjg7zjg6vmuIjjgb/jga7jg5Hjg4PjgrHjg7zjgrjjga7jgbvjgYbjgYzjg5Djg7zjgrjjg6fjg7PjgYzmlrDjgZfjgZHjgozjgbDjgIHjgqTjg7Pjgrnjg4jjg7zjg6vjgZfjgaoiCisi44GE44CC44GT44KM44GvIEI8LS1yZWZ1c2UtZG93bmdyYWRlPiDjga7liKXlkI3jgafjgYLjgovjgIIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NDk1IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjE3IGRwa2ctY2hlY2tidWlsZGRlcHMuMToxOQorIzogZHBrZy1xdWVyeS4xOjExOCBkcGtnLXNobGliZGVwcy4xOjIxMSBkcGtnLXRyaWdnZXIuMTozOQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1hZG1pbmRpcj0+STxkaXI+IgorbXNnc3RyICJCPC0tYWRtaW5kaXI9Pkk8ZGlyPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjUwMAorbXNnaWQgIiIKKyJDaGFuZ2UgZGVmYXVsdCBhZG1pbmlzdHJhdGl2ZSBkaXJlY3RvcnksIHdoaWNoIGNvbnRhaW5zIG1hbnkgZmlsZXMgdGhhdCBnaXZlICIKKyJpbmZvcm1hdGlvbiBhYm91dCBzdGF0dXMgb2YgaW5zdGFsbGVkIG9yIHVuaW5zdGFsbGVkIHBhY2thZ2VzLCBldGMuICAiCisiKERlZmF1bHRzIHRvIEk8L3Zhci9saWIvZHBrZz4pIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTAwCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1pbnN0ZGlyPT5JPGRpcj4iCittc2dzdHIgIkI8LS1hZG1pbmRpcj0+STxkaXI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTA3CisjLCBmdXp6eQorbXNnaWQgIiIKKyJDaGFuZ2UgZGVmYXVsdCBpbnN0YWxsYXRpb24gZGlyZWN0b3J5IHdoaWNoIHJlZmVycyB0byB0aGUgZGlyZWN0b3J5IHdoZXJlICIKKyJwYWNrYWdlcyBhcmUgdG8gYmUgaW5zdGFsbGVkLiBCPGluc3RkaXI+IGlzIGFsc28gdGhlIGRpcmVjdG9yeSBwYXNzZWQgdG8gIgorIkI8Y2hyb290PigyKSBiZWZvcmUgcnVubmluZyBwYWNrYWdlJ3MgaW5zdGFsbGF0aW9uIHNjcmlwdHMsIHdoaWNoIG1lYW5zIHRoYXQgIgorInRoZSBzY3JpcHRzIHNlZSBCPGluc3RkaXI+IGFzIGEgcm9vdCBkaXJlY3RvcnkuICAoRGVmYXVsdHMgdG8gSTwvPikiCittc2dzdHIgIiIKKyLjg4fjg5Xjgqnjg6vjg4jjga7jg4fjgqPjg6zjgq/jg4jjg6rjgpLlpInmm7TjgZnjgovjgIJCPGFkbWluZGlyPiDjga/jgqTjg7Pjgrnjg4jjg7zjg6vmuIjjgb/jga7jg5Hjg4PjgrHjg7wiCisi44K444KE44Kk44Oz44K544OI44O844Or44GV44KM44Gm44GE44Gq44GE44OR44OD44Kx44O844K444Gu54q25oWL44Gr6Zai44GZ44KL5oOF5aCx44Gq44Gp44KS5o+Q5L6b44GZ44KL44CB5aSa5pWwIgorIuOBruODleOCoeOCpOODq+OBjOagvOe0jeOBleOCjOOBpuOBhOOCi+ODh+OCo+ODrOOCr+ODiOODquOBp+OAgeODh+ODleOCqeODq+ODiOOBryBJPC92YXIvbGliL2Rwa2c+IOOBp+OBgiIKKyLjgovjgIJCPGluc3RkaXI+IOOBr+ODkeODg+OCseODvOOCuOOCkuOCpOODs+OCueODiOODvOODq+OBmeOCi+OBqOOBjeOBq+WPgueFp+OBleOCjOOCi+ODh+OCo+ODrOOCr+ODiOODquOBp+OAgSIKKyLjg4fjg5Xjgqnjg6vjg4jjga8gSTwvPiDjgafjgYLjgovjgILjgb7jgZ/jgIFCPGluc3RkaXI+IOOBr+OAgeODkeODg+OCseODvOOCuOOBruOCpOODs+OCueODiOODvOODq+OCueOCr+ODqiIKKyLjg5fjg4jjgYzlrp/ooYzjgZXjgozjgovliY3jgasgQjxjaHJvb3Q+KDIpIOOBmeOCi+ODh+OCo+ODrOOCr+ODiOODquOBruODkeOCueOBp+OBguOCi+OAguOBpOOBvuOCiuOAgeOCueOCryIKKyLjg6rjg5fjg4jjga8gQjxpbnN0ZGlyPiDjgpLjg6vjg7zjg4jjg4fjgqPjg6zjgq/jg4jjg6rjgajjgb/jgarjgZnjgIJCPHJvb3Q+IOOCkuWkieabtOOBmeOCi+OBqOOAgSIKKyJCPGluc3RkaXI+IOOCkiBJPGRpcj4g44Gr44CBQjxhZG1pbmRpcj4g44KSIEk8ZGlyPkI8L3Zhci9saWIvZHBrZz4g44Gr5aSJ5pu044GZ44KL44CCIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjUwNworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tcm9vdD0+STxkaXI+IgorbXNnc3RyICJCPC0tYWRtaW5kaXI9Pkk8ZGlyPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjUxMQorbXNnaWQgIiIKKyJDaGFuZ2luZyBCPHJvb3Q+IGNoYW5nZXMgQjxpbnN0ZGlyPiB0byBJPGRpcj4gYW5kIEI8YWRtaW5kaXI+IHRvIEk8ZGlyPkI8LyIKKyJ2YXIvbGliL2Rwa2c+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjUxMQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1PPiwgQjwtLXNlbGVjdGVkLW9ubHk+IgorbXNnc3RyICJCPC1PPiB8IEI8LS1zZWxlY3RlZC1vbmx5PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjUxNworbXNnaWQgIiIKKyJPbmx5IHByb2Nlc3MgdGhlIHBhY2thZ2VzIHRoYXQgYXJlIHNlbGVjdGVkIGZvciBpbnN0YWxsYXRpb24uIFRoZSBhY3R1YWwgIgorIm1hcmtpbmcgaXMgZG9uZSB3aXRoIEI8ZHNlbGVjdD4gb3IgYnkgQjxkcGtnPiwgd2hlbiBpdCBoYW5kbGVzIHBhY2thZ2VzLiBGb3IgIgorImV4YW1wbGUsIHdoZW4gYSBwYWNrYWdlIGlzIHJlbW92ZWQsIGl0IHdpbGwgYmUgbWFya2VkIHNlbGVjdGVkIGZvciAiCisiZGVpbnN0YWxsYXRpb24uIgorbXNnc3RyICIiCisi44Kk44Oz44K544OI44O844OrKOOBvuOBn+OBr+WJiumZpCnkvZzmpa3jgpLjgZnjgovjgojjgYbjgavpgbjmip7jgZfjgZ/jg5Hjg4PjgrHjg7zjgrjjga7jgb/jgpLlh6bnkIbjgZnjgovjgILlrp8iCisi6Zqb44Gu5oyH5a6a44Gv44CBQjxkc2VsZWN0PiDjgoQgQjxkcGtnPiDjgpLkvb/jgaPjgabooYzjgarjgYbjgILkvovjgYjjgbDjgIHjgYLjgovjg5Hjg4PjgrHjg7zjgrjjgYzliYoiCisi6Zmk44GV44KM44KL44Gu44Gv44CB44Gd44Gu44OR44OD44Kx44O844K444GM5YmK6Zmk44GV44KM44KL44KI44GG6YG45oqe44GV44KM44Gm44GE44KL44Go44GE44GG44GT44Go44Gn44GC44KL44CCIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjUxNworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1FPiwgQjwtLXNraXAtc2FtZS12ZXJzaW9uPiIKK21zZ3N0ciAiQjwtRT4gfCBCPC0tc2tpcC1zYW1lLXZlcnNpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTIxCittc2dpZCAiIgorIkRvbid0IGluc3RhbGwgdGhlIHBhY2thZ2UgaWYgdGhlIHNhbWUgdmVyc2lvbiBvZiB0aGUgcGFja2FnZSBpcyBhbHJlYWR5ICIKKyJpbnN0YWxsZWQuIgorbXNnc3RyICIiCisi44GZ44Gn44Gr5ZCM44GY44OQ44O844K444On44Oz44Gu44OR44OD44Kx44O844K444GM44Kk44Oz44K544OI44O844Or44GV44KM44Gm44GE44Gf44KJ44CB44Kk44Oz44K544OI44O844Or44GX44GqIgorIuOBhOOAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjUyMworbXNnaWQgIkI8LS1wcmUtaW52b2tlPT5JPGNvbW1hbmQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1MjUKK21zZ2lkICJCPC0tcG9zdC1pbnZva2U9Pkk8Y29tbWFuZD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjUzNAorbXNnaWQgIiIKKyJTZXQgYW4gaW52b2tlIGhvb2sgSTxjb21tYW5kPiB0byBiZSBydW4gdmlhIGBgc2ggLWMnJyBiZWZvcmUgb3IgYWZ0ZXIgdGhlICIKKyJkcGtnIHJ1biBmb3IgdGhlIEk8dW5wYWNrPiwgSTxjb25maWd1cmU+LCBJPGluc3RhbGw+LCBJPHRyaWdnZXJzLW9ubHk+LCAiCisiSTxyZW1vdmU+IGFuZCBJPHB1cmdlPiBkcGtnIGFjdGlvbnMuIFRoaXMgb3B0aW9uIGNhbiBiZSBzcGVjaWZpZWQgbXVsdGlwbGUgIgorInRpbWVzLiBUaGUgb3JkZXIgdGhlIG9wdGlvbnMgYXJlIHNwZWNpZmllZCBpcyBwcmVzZXJ2ZWQsIHdpdGggdGhlIG9uZXMgZnJvbSAiCisidGhlIGNvbmZpZ3VyYXRpb24gZmlsZXMgdGFraW5nIHByZWNlZGVuY2UuICBUaGUgZW52aXJvbm1lbnQgdmFyaWFibGUgIgorIkI8RFBLR19IT09LX0FDVElPTj4gaXMgc2V0IGZvciB0aGUgaG9va3MgdG8gdGhlIGN1cnJlbnQgZHBrZyBhY3Rpb24uIE5vdGU6ICIKKyJmcm9udC1lbmRzIG1pZ2h0IGNhbGwgZHBrZyBzZXZlcmFsIHRpbWVzIHBlciBpbnZvY2F0aW9uLCB3aGljaCBtaWdodCBydW4gdGhlICIKKyJob29rcyBtb3JlIHRpbWVzIHRoYW4gZXhwZWN0ZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1MzcKKyMsIGZ1enp5Cittc2dpZCAiQjwtLXBhdGgtZXhjbHVkZT0+STxnbG9iLXBhdHRlcm4+IgorbXNnc3RyICJCPC0tbGlzdD4gW0k8RTxsdD5nbG9iLXBhdHRlcm5FPGd0Pj5dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTM5CisjLCBmdXp6eQorbXNnaWQgIkI8LS1wYXRoLWluY2x1ZGU9Pkk8Z2xvYi1wYXR0ZXJuPiIKK21zZ3N0ciAiQjwtLWxpc3Q+IFtJPEU8bHQ+Z2xvYi1wYXR0ZXJuRTxndD4+XSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjU0MgorbXNnaWQgIiIKKyJTZXQgSTxnbG9iLXBhdHRlcm4+IGFzIGEgcGF0aCBmaWx0ZXIsIGVpdGhlciBieSBleGNsdWRpbmcgb3IgcmUtaW5jbHVkaW5nICIKKyJwcmV2aW91c2x5IGV4Y2x1ZGVkIHBhdGhzIG1hdGNoaW5nIHRoZSBzcGVjaWZpZWQgcGF0dGVybnMgZHVyaW5nIGluc3RhbGwuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1NDUKK21zZ2lkICIiCisiSTxXYXJuaW5nOiB0YWtlIGludG8gYWNjb3VudCB0aGF0IGRlcGVuZGluZyBvbiB0aGUgZXhjbHVkZWQgcGF0aHMgeW91IG1pZ2h0ICIKKyJjb21wbGV0ZWx5IGJyZWFrIHlvdXIgc3lzdGVtLCB1c2Ugd2l0aCBjYXV0aW9uLj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjU1NQorbXNnaWQgIiIKKyJUaGUgZ2xvYiBwYXR0ZXJucyB1c2UgdGhlIHNhbWUgd2lsZGNhcmRzIHVzZWQgaW4gdGhlIHNoZWxsLCB3ZXJlICcqJyBtYXRjaGVzICIKKyJhbnkgc2VxdWVuY2Ugb2YgY2hhcmFjdGVycywgaW5jbHVkaW5nIHRoZSBlbXB0eSBzdHJpbmcgYW5kIGFsc28gJy8nLiBGb3IgIgorImV4YW1wbGUsIEk8Jy91c3IvKi9SRUFEKic+IG1hdGNoZXMgSTwnL3Vzci9zaGFyZS9kb2MvcGFja2FnZS9SRUFETUUnPi4gIEFzICIKKyJ1c3VhbCwgJz8nIG1hdGNoZXMgYW55IHNpbmdsZSBjaGFyYWN0ZXIgKGFnYWluLCBpbmNsdWRpbmcgJy8nKS4gQW5kICdbJyAiCisic3RhcnRzIGEgY2hhcmFjdGVyIGNsYXNzLCB3aGljaCBjYW4gY29udGFpbiBhIGxpc3Qgb2YgY2hhcmFjdGVycywgcmFuZ2VzIGFuZCAiCisiY29tcGxlbWVudGF0aW9ucy4gU2VlIEI8Z2xvYj4oNykgZm9yIGRldGFpbGVkIGluZm9ybWF0aW9uIGFib3V0IGdsb2JiaW5nLiAiCisiTm90ZTogdGhlIGN1cnJlbnQgaW1wbGVtZW50YXRpb24gbWlnaHQgcmUtaW5jbHVkZSBtb3JlIGRpcmVjdG9yaWVzIGFuZCAiCisic3ltbGlua3MgdGhhbiBuZWVkZWQsIHRvIGJlIG9uIHRoZSBzYWZlIHNpZGUgYW5kIGF2b2lkIHBvc3NpYmxlIHVucGFjayAiCisiZmFpbHVyZXMsIGZ1dHVyZSB3b3JrIG1pZ2h0IGZpeCB0aGlzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTU4Cittc2dpZCAiIgorIlRoaXMgY2FuIGJlIHVzZWQgdG8gcmVtb3ZlIGFsbCBwYXRocyBleGNlcHQgc29tZSBwYXJ0aWN1bGFyIG9uZXM7IGEgdHlwaWNhbCAiCisiY2FzZSBpczoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjU2MgorIywgbm8td3JhcAorbXNnaWQgIiIKKyJCPC0tcGF0aC1leGNsdWRlPS91c3Ivc2hhcmUvZG9jLyo+XG4iCisiQjwtLXBhdGgtaW5jbHVkZT0vdXNyL3NoYXJlL2RvYy8qL2NvcHlyaWdodD5cbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTY1Cittc2dpZCAidG8gcmVtb3ZlIGFsbCBkb2N1bWVudGF0aW9uIGZpbGVzIGV4Y2VwdCB0aGUgY29weXJpZ2h0IGZpbGVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTY5Cittc2dpZCAiIgorIlRoZXNlIHR3byBvcHRpb25zIGNhbiBiZSBzcGVjaWZpZWQgbXVsdGlwbGUgdGltZXMsIGFuZCBpbnRlcmxlYXZlZCB3aXRoIGVhY2ggIgorIm90aGVyLiBCb3RoIGFyZSBwcm9jZXNzZWQgaW4gdGhlIGdpdmVuIG9yZGVyLCB3aXRoIHRoZSBsYXN0IHJ1bGUgdGhhdCAiCisibWF0Y2hlcyBhIGZpbGUgbmFtZSBtYWtpbmcgdGhlIGRlY2lzaW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjU3MAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tc3RhdHVzLWZkID5JPG4+IgorbXNnc3RyICJCPC0tc3RhdHVzLWZkID5JPEU8bHQ+bkU8Z3Q+PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjU3NgorbXNnaWQgIiIKKyJTZW5kIG1hY2hpbmUtcmVhZGFibGUgcGFja2FnZSBzdGF0dXMgYW5kIHByb2dyZXNzIGluZm9ybWF0aW9uIHRvIGZpbGUgIgorImRlc2NyaXB0b3IgSTxuPi4gVGhpcyBvcHRpb24gY2FuIGJlIHNwZWNpZmllZCBtdWx0aXBsZSB0aW1lcy4gVGhlICIKKyJpbmZvcm1hdGlvbiBpcyBnZW5lcmFsbHkgb25lIHJlY29yZCBwZXIgbGluZSwgaW4gb25lIG9mIHRoZSBmb2xsb3dpbmcgZm9ybXM6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTc3CisjLCBuby13cmFwCittc2dpZCAiQjxzdGF0dXM6ID5JPHBhY2thZ2U+Qjw6ID5JPHN0YXR1cz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjU4MAorbXNnaWQgIlBhY2thZ2Ugc3RhdHVzIGNoYW5nZWQ7IEk8c3RhdHVzPiBpcyBhcyBpbiB0aGUgc3RhdHVzIGZpbGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTgwCisjLCBuby13cmFwCittc2dpZCAiQjxzdGF0dXM6ID5JPHBhY2thZ2U+QjwgOiBlcnJvciA6ID5JPGV4dGVuZGVkLWVycm9yLW1lc3NhZ2U+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1ODQKK21zZ2lkICIiCisiQW4gZXJyb3Igb2NjdXJyZWQuIEFueSBwb3NzaWJsZSBuZXdsaW5lcyBpbiBJPGV4dGVuZGVkLWVycm9yLW1lc3NhZ2U+IHdpbGwgIgorImJlIGNvbnZlcnRlZCB0byBzcGFjZXMgYmVmb3JlIG91dHB1dC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo1ODQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHN0YXR1czogPkk8ZmlsZT5CPCA6IGNvbmZmaWxlLXByb21wdCA6ICc+STxyZWFsLW9sZD5CPCcgJz5JPHJlYWwtbmV3PkI8JyA+STx1c2VyZWRpdGVkPkI8ID5JPGRpc3RlZGl0ZWQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1ODcKK21zZ2lkICJVc2VyIGlzIGJlaW5nIGFza2VkIGEgY29uZmZpbGUgcXVlc3Rpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTg3CisjLCBuby13cmFwCittc2dpZCAiQjxwcm9jZXNzaW5nOiA+STxzdGFnZT5CPDogPkk8cGFja2FnZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjU5MgorbXNnaWQgIiIKKyJTZW50IGp1c3QgYmVmb3JlIGEgcHJvY2Vzc2luZyBzdGFnZSBzdGFydHMuIEk8c3RhZ2U+IGlzIG9uZSBvZiBCPHVwZ3JhZGU+LCAiCisiQjxpbnN0YWxsPiAoYm90aCBzZW50IGJlZm9yZSB1bnBhY2tpbmcpLCBCPGNvbmZpZ3VyZT4sIEI8dHJpZ3Byb2M+LCAiCisiQjxkaXNhcHBlYXI+LCBCPHJlbW92ZT4sIEI8cHVyZ2U+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjU5MworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tc3RhdHVzLWxvZ2dlcj49STxjb21tYW5kPiIKK21zZ3N0ciAiQjwtLXN0YXR1cy1mZCA+STxFPGx0Pm5FPGd0Pj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1OTgKK21zZ2lkICIiCisiU2VuZCBtYWNoaW5lLXJlYWRhYmxlIHBhY2thZ2Ugc3RhdHVzIGFuZCBwcm9ncmVzcyBpbmZvcm1hdGlvbiB0byB0aGUgc2hlbGwgIgorIkk8Y29tbWFuZD4ncyBzdGFuZGFyZCBpbnB1dC4gVGhpcyBvcHRpb24gY2FuIGJlIHNwZWNpZmllZCBtdWx0aXBsZSB0aW1lcy4gIgorIlRoZSBvdXRwdXQgZm9ybWF0IHVzZWQgaXMgdGhlIHNhbWUgYXMgaW4gQjwtLXN0YXR1cy1mZC4+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTk5CisjLCBuby13cmFwCittc2dpZCAiQjwtLWxvZz0+STxmaWxlbmFtZT4iCittc2dzdHIgIkI8LS1sb2c9Pkk8ZmlsZW5hbWU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NjExCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJMb2cgc3RhdHVzIGNoYW5nZSB1cGRhdGVzIGFuZCBhY3Rpb25zIHRvIEk8ZmlsZW5hbWU+LCBpbnN0ZWFkIG9mIHRoZSAiCisjfCAiZGVmYXVsdCBJPC92YXIvbG9nL2Rwa2cubG9nPi4gSWYgdGhpcyBvcHRpb24gaXMgZ2l2ZW4gbXVsdGlwbGUgdGltZXMsIHRoZSAiCisjfCAibGFzdCBmaWxlbmFtZSBpcyB1c2VkLiBMb2cgbWVzc2FnZXMgYXJlIG9mIHRoZSBmb3JtIGBZWVlZLU1NLUREIEhIOk1NOlNTICIKKyN8ICJzdGF0dXMgRTxsdD5zdGF0ZUU8Z3Q+IEU8bHQ+cGtnRTxndD4gRTxsdD5pbnN0YWxsZWQtdmVyc2lvbkU8Z3Q+JyBmb3IgIgorI3wgInN0YXR1cyBjaGFuZ2UgdXBkYXRlczsgYFlZWVktTU0tREQgSEg6TU06U1MgRTxsdD5hY3Rpb25FPGd0PiAiCisjfCAiRTxsdD5wa2dFPGd0PiBFPGx0Pmluc3RhbGxlZC12ZXJzaW9uRTxndD4gRTxsdD5hdmFpbGFibGUtdmVyc2lvbkU8Z3Q+JyAiCisjfCAiZm9yIGFjdGlvbnMgd2hlcmUgSTxFPGx0PmFjdGlvbkU8Z3Q+PiBpcyBvbmUgb2YgaW5zdGFsbCwgdXBncmFkZSwgcmVtb3ZlLCAiCisjfCAicHVyZ2U7IGFuZCBgWVlZWS1NTS1ERCBISDpNTTpTUyBjb25mZmlsZSBFPGx0PmZpbGVuYW1lRTxndD4gIgorI3wgIkU8bHQ+ZGVjaXNpb25FPGd0PicgZm9yIGNvbmZmaWxlIGNoYW5nZXMgd2hlcmUgSTxFPGx0PmRlY2lzaW9uRTxndD4+IGlzICIKKyN8ICJlaXRoZXIgaW5zdGFsbCBvciBrZWVwLiIKK21zZ2lkICIiCisiTG9nIHN0YXR1cyBjaGFuZ2UgdXBkYXRlcyBhbmQgYWN0aW9ucyB0byBJPGZpbGVuYW1lPiwgaW5zdGVhZCBvZiB0aGUgZGVmYXVsdCAiCisiSTwvdmFyL2xvZy9kcGtnLmxvZz4uIElmIHRoaXMgb3B0aW9uIGlzIGdpdmVuIG11bHRpcGxlIHRpbWVzLCB0aGUgbGFzdCAiCisiZmlsZW5hbWUgaXMgdXNlZC4gTG9nIG1lc3NhZ2VzIGFyZSBvZiB0aGUgZm9ybSBgWVlZWS1NTS1ERCBISDpNTTpTUyBzdGF0dXMgIgorIkk8c3RhdGU+IEk8cGtnPiBJPGluc3RhbGxlZC12ZXJzaW9uPicgZm9yIHN0YXR1cyBjaGFuZ2UgdXBkYXRlczsgYFlZWVktTU0tREQgIgorIkhIOk1NOlNTIEk8YWN0aW9uPiBJPHBrZz4gSTxpbnN0YWxsZWQtdmVyc2lvbj4gSTxhdmFpbGFibGUtdmVyc2lvbj4nIGZvciAiCisiYWN0aW9ucyB3aGVyZSBJPGFjdGlvbj4gaXMgb25lIG9mIEI8aW5zdGFsbD4sIEI8dXBncmFkZT4sIEI8cmVtb3ZlPiwgIgorIkI8cHVyZ2U+OyBhbmQgYFlZWVktTU0tREQgSEg6TU06U1MgY29uZmZpbGUgSTxmaWxlbmFtZT4gSTxkZWNpc2lvbj4nIGZvciAiCisiY29uZmZpbGUgY2hhbmdlcyB3aGVyZSBJPGRlY2lzaW9uPiBpcyBlaXRoZXIgQjxpbnN0YWxsPiBvciBCPGtlZXA+LiIKK21zZ3N0ciAiIgorIueKtuaFi+OBruWkieabtOOChOOCouOCr+OCt+ODp+ODs+OBruiomOmMsuOCkuOAgeODh+ODleOCqeODq+ODiOOBriBJPC92YXIvbG9nL2Rwa2cubG9nPiDjgYvjgokgIgorIkk8ZmlsZW5hbWU+IOOBq+WkieabtOOBmeOCi+OAguOBk+OBruOCquODl+OCt+ODp+ODs+OCkuikh+aVsOWbnuaMh+WumuOBl+OBn+WgtOWQiOOBr+OAgeacgOW+jOOBruODleOCoeOCpOODqyIKKyLlkI3jgYzkvb/jgo/jgozjgovjgILjg63jgrDjg6Hjg4Pjgrvjg7zjgrjjga/mrKHjga7lvaLlvI/jgafjgYLjgovjgIJgWVlZWS1NTS1ERCBISDpNTTpTUyBzdGF0dXMgIgorIkU8bHQ+c3RhdGVFPGd0PiBFPGx0PnBrZ0U8Z3Q+IEU8bHQ+aW5zdGFsbGVkLXZlcnNpb25FPGd0Picg44Gv54q25oWL44Gu5aSJ5pu044CCIgorImBZWVlZLU1NLUREIEhIOk1NOlNTIEU8bHQ+YWN0aW9uRTxndD4gRTxsdD5wa2dFPGd0PiBFPGx0Pmluc3RhbGxlZC0iCisidmVyc2lvbkU8Z3Q+IEU8bHQ+YXZhaWxhYmxlLXZlcnNpb25FPGd0Picg44Gv44Ki44Kv44K344On44Oz44Gn44CBIgorIkk8RTxsdD5hY3Rpb25FPGd0Pj4g44GvIGluc3RhbGzjgIF1cGdyYWRl44CBcmVtb3Zl44CBcHVyZ2Ug44Gu44GE44Ga44KM44GL44CCYFlZWVktTU0tIgorIkREIEhIOk1NOlNTIGNvbmZmaWxlIEU8bHQ+ZmlsZW5hbWVFPGd0PiBFPGx0PmRlY2lzaW9uRTxndD4nIOOBr+ioreWumuODleOCoeOCpOODq+OBriIKKyLlpInmm7TjgafjgIFJPEU8bHQ+ZGVjaXNpb25FPGd0Pj4g44GvIGluc3RhbGwg44GLIGtlZXAg44Gu44Gp44Gh44KJ44GL44Gn44GC44KL44CCIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjYxMQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1uby1kZWJzaWc+IgorbXNnc3RyICJCPC0tbm8tZGVic2lnPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjYxNAorbXNnaWQgIkRvIG5vdCB0cnkgdG8gdmVyaWZ5IHBhY2thZ2Ugc2lnbmF0dXJlcy4iCittc2dzdHIgIuODkeODg+OCseODvOOCuOOBrue9suWQjeOCkueiuuiqjeOBl+OBquOBhOOAgiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2MTQKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLW5vLXRyaWdnZXJzPiIKK21zZ3N0ciAiQjwtLW5vLWRlYnNpZz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2MjMKK21zZ2lkICIiCisiRG8gbm90IHJ1biBhbnkgdHJpZ2dlcnMgaW4gdGhpcyBydW4gKGFjdGl2YXRpb25zIHdpbGwgc3RpbGwgYmUgcmVjb3JkZWQpLiAgIgorIklmIHVzZWQgd2l0aCBCPC0tY29uZmlndXJlPiBJPHBhY2thZ2U+IG9yIEI8LS10cmlnZ2Vycy1vbmx5PiBJPHBhY2thZ2U+IHRoZW4gIgorInRoZSBuYW1lZCBwYWNrYWdlIHBvc3RpbnN0IHdpbGwgc3RpbGwgYmUgcnVuIGV2ZW4gaWYgb25seSBhIHRyaWdnZXJzIHJ1biBpcyAiCisibmVlZGVkLiBVc2Ugb2YgdGhpcyBvcHRpb24gbWF5IGxlYXZlIHBhY2thZ2VzIGluIHRoZSBpbXByb3BlciBCPHRyaWdnZXJzLSIKKyJhd2FpdGVkPiBhbmQgQjx0cmlnZ2Vycy1wZW5kaW5nPiBzdGF0ZXMuIFRoaXMgY2FuIGJlIGZpeGVkIGxhdGVyIGJ5IHJ1bm5pbmc6ICIKKyJCPGRwa2cgLS1jb25maWd1cmUgLS1wZW5kaW5nPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2MjMKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLXRyaWdnZXJzPiIKK21zZ3N0ciAiQjwtLXRlc3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NjI2Cittc2dpZCAiQ2FuY2VscyBhIHByZXZpb3VzIEI8LS1uby10cmlnZ2Vycz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2MjggZHBrZy5jZmcuNToxNgorIywgbm8td3JhcAorbXNnaWQgIkk8L2V0Yy9kcGtnL2Rwa2cuY2ZnPiIKK21zZ3N0ciAiSTwvZXRjL2Rwa2cvZHBrZy5jZmc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NjMxCittc2dpZCAiQ29uZmlndXJhdGlvbiBmaWxlIHdpdGggZGVmYXVsdCBvcHRpb25zLiIKK21zZ3N0ciAi44Kq44OX44K344On44Oz44Gu44OH44OV44Kp44Or44OI5YCk44KS6KiY6L+w44GZ44KL6Kit5a6a44OV44Kh44Kk44Or44CCIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjYzMQorIywgbm8td3JhcAorbXNnaWQgIkk8L3Zhci9sb2cvZHBrZy5sb2c+IgorbXNnc3RyICJJPC92YXIvbG9nL2Rwa2cubG9nPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjYzNQorbXNnaWQgIkRlZmF1bHQgbG9nIGZpbGUgKHNlZSBJPC9ldGMvZHBrZy9kcGtnLmNmZz4oNSkgYW5kIG9wdGlvbiBCPC0tbG9nPikuIgorbXNnc3RyICIiCisi44OH44OV44Kp44Or44OI44Gu44Ot44Kw44OV44Kh44Kk44OrKEk8L2V0Yy9kcGtnL2Rwa2cuY2ZnPig1KSDjgaggQjwtLWxvZz4g44Kq44OX44K344On44Oz44KC5Y+CIgorIueFpynjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2MzgKK21zZ2lkICIiCisiVGhlIG90aGVyIGZpbGVzIGxpc3RlZCBiZWxvdyBhcmUgaW4gdGhlaXIgZGVmYXVsdCBkaXJlY3Rvcmllcywgc2VlIG9wdGlvbiAiCisiQjwtLWFkbWluZGlyPiB0byBzZWUgaG93IHRvIGNoYW5nZSBsb2NhdGlvbnMgb2YgdGhlc2UgZmlsZXMuIgorbXNnc3RyICIiCisi5Lul5LiL44Gr56S644GZ44OV44Kh44Kk44Or44Gv44OH44OV44Kp44Or44OI44Gu5YCk44Gn44GC44KL44CC44Gp44Gu44KI44GG44Gr44GX44Gm44OV44Kh44Kk44Or44Gu5L2N572u44KS5aSJ5pu0IgorIuOBmeOCi+OBi+OBq+OBpOOBhOOBpuOBr+OAgUI8LS1hZG1pbmRpcj4g44Kq44OX44K344On44Oz44Gu6aCF44KS5Y+C54Wn44GZ44KL44GT44Go44CCIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjYzOAorIywgbm8td3JhcAorbXNnaWQgIkk8L3Zhci9saWIvZHBrZy9hdmFpbGFibGU+IgorbXNnc3RyICJJPC92YXIvbGliL2Rwa2cvYXZhaWxhYmxlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjY0MQorbXNnaWQgIkxpc3Qgb2YgYXZhaWxhYmxlIHBhY2thZ2VzLiIKK21zZ3N0ciAi5L2/55So44Gn44GN44KL44OR44OD44Kx44O844K444Gu5LiA6Kan44CCIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjY0MQorIywgbm8td3JhcAorbXNnaWQgIkk8L3Zhci9saWIvZHBrZy9zdGF0dXM+IgorbXNnc3RyICJJPC92YXIvbGliL2Rwa2cvc3RhdHVzPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjY0NworbXNnaWQgIiIKKyJTdGF0dXNlcyBvZiBhdmFpbGFibGUgcGFja2FnZXMuIFRoaXMgZmlsZSBjb250YWlucyBpbmZvcm1hdGlvbiBhYm91dCB3aGV0aGVyICIKKyJhIHBhY2thZ2UgaXMgbWFya2VkIGZvciByZW1vdmluZyBvciBub3QsIHdoZXRoZXIgaXQgaXMgaW5zdGFsbGVkIG9yIG5vdCwgIgorImV0Yy4gU2VlIHNlY3Rpb24gQjxJTkZPUk1BVElPTiBBQk9VVCBQQUNLQUdFUz4gZm9yIG1vcmUgaW5mby4iCittc2dzdHIgIiIKKyLkvb/nlKjjgafjgY3jgovjg5Hjg4PjgrHjg7zjgrjjga7nirbmhYvjgILjgZPjga7jg5XjgqHjgqTjg6vjga/jgIHjg5Hjg4PjgrHjg7zjgrjjgavliYrpmaTjga7jg57jg7zjgq/jgYzjgYLjgovjgYsiCisi44Gp44GG44GL44CB44Kk44Oz44K544OI44O844Or5riI44G/44GL44Gp44GG44GL44CB44Gq44Gp44Gu5oOF5aCx44GM5ZCr44G+44KM44Gm44GE44KL44CC44GP44KP44GX44GP44Gv44CBQjwiCisi44OR44OD44Kx44O844K444Gr6Zai44GZ44KL5oOF5aCxPuOBrumgheOCkuWPgueFp+OBmeOCi+OBk+OBqOOAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjY1MAorbXNnaWQgIiIKKyJUaGUgc3RhdHVzIGZpbGUgaXMgYmFja2VkIHVwIGRhaWx5IGluIEk8L3Zhci9iYWNrdXBzPi4gSXQgY2FuIGJlIHVzZWZ1bCBpZiAiCisiaXQncyBsb3N0IG9yIGNvcnJ1cHRlZCBkdWUgdG8gZmlsZXN5c3RlbXMgdHJvdWJsZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2NTMKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBmaWxlcyBhcmUgY29tcG9uZW50cyBvZiBhIGJpbmFyeSBwYWNrYWdlLiBTZWUgQjxkZWI+KDUpICBmb3IgIgorIm1vcmUgaW5mb3JtYXRpb24gYWJvdXQgdGhlbToiCittc2dzdHIgIiIKKyLku6XkuIvjga7jg5XjgqHjgqTjg6vjga/jg5DjgqTjg4rjg6rjg5Hjg4PjgrHjg7zjgrjjgpLmp4vmiJDjgZnjgovjg5XjgqHjgqTjg6vjgafjgYLjgovjgILjgZPjgozjgonjga7jg5XjgqHjgqTjg6siCisi44Gr6Zai44GZ44KL44GP44KP44GX44GE5oOF5aCx44Gv44CBQjxkZWI+KDUpIOOCkuWPgueFp+OBmeOCi+OBk+OBqOOAgiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2NTMKKyMsIG5vLXdyYXAKK21zZ2lkICJJPGNvbnRyb2w+IgorbXNnc3RyICJJPGNvbnRyb2w+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjY1NQorIywgbm8td3JhcAorbXNnaWQgIkk8Y29uZmZpbGVzPiIKK21zZ3N0ciAiSTxjb25mZmlsZXM+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjY1NworIywgbm8td3JhcAorbXNnaWQgIkk8cHJlaW5zdD4iCittc2dzdHIgIkk8cHJlaW5zdD4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NjU5CisjLCBuby13cmFwCittc2dpZCAiSTxwb3N0aW5zdD4iCittc2dzdHIgIkk8cG9zdGluc3Q+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjY2MQorIywgbm8td3JhcAorbXNnaWQgIkk8cHJlcm0+IgorbXNnc3RyICJJPHByZXJtPiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2NjMKKyMsIG5vLXdyYXAKK21zZ2lkICJJPHBvc3RybT4iCittc2dzdHIgIkk8cG9zdHJtPiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2cuMTo2NjYgZHBrZy1idWlsZGZsYWdzLjE6MTI4IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjMwIGRwa2ctZGViLjE6MjMyCisjOiBkcGtnLWRpdmVydC44OjExMiBkcGtnLXF1ZXJ5LjE6MjA0IGRwa2ctc3RhdG92ZXJyaWRlLjg6NjggZHBrZy10cmlnZ2VyLjE6NjAKKyM6IGRwa2ctdmVuZG9yLjE6NDIgZHNlbGVjdC4xOjQyMyB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzU0CisjLCBuby13cmFwCittc2dpZCAiRU5WSVJPTk1FTlQiCittc2dzdHIgIueSsOWig+WkieaVsCIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2NjcgZHNlbGVjdC4xOjQyNAorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPFNIRUxMPiIKK21zZ2lkICJCPEhPTUU+IgorbXNnc3RyICJCPFNIRUxMPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjY3MQorbXNnaWQgIiIKKyJJZiBzZXQsIEI8ZHBrZz4gd2lsbCB1c2UgaXQgYXMgdGhlIGRpcmVjdG9yeSBmcm9tIHdoaWNoIHRvIHJlYWQgdGhlIHVzZXIgIgorInNwZWNpZmljIGNvbmZpZ3VyYXRpb24gZmlsZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2NzEgZHBrZy1kZWIuMToyMzMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPFRNUERJUj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjY3NQorbXNnaWQgIiIKKyJJZiBzZXQsIEI8ZHBrZz4gd2lsbCB1c2UgaXQgYXMgdGhlIGRpcmVjdG9yeSBpbiB3aGljaCB0byBjcmVhdGUgdGVtcG9yYXJ5ICIKKyJmaWxlcyBhbmQgZGlyZWN0b3JpZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6Njc1CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8LUc+IgorbXNnaWQgIkI8UEFHRVI+IgorbXNnc3RyICJCPC1HPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjY3OAorIywgZnV6enkKKyN8IG1zZ2lkICJUaGUgcHJvZ3JhbSBCPGRwa2c+IHdpbGwgZXhlY3V0ZSB3aGVuIHN0YXJ0aW5nIGEgbmV3IHNoZWxsLiIKK21zZ2lkICJUaGUgcHJvZ3JhbSBCPGRwa2c+IHdpbGwgZXhlY3V0ZSB3aGVuIGRpc3BsYXlpbmcgdGhlIGNvbmZmaWxlcy4iCittc2dzdHIgIkI8ZHBrZz4g44GM5paw44GX44GE44K344Kn44Or44KS6LW35YuV44GZ44KL44Go44GN44Gr44CB5a6f6Zqb44Gr6LW35YuV44GZ44KL44OX44Ot44Kw44Op44Og44CCIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjY3OAorIywgbm8td3JhcAorbXNnaWQgIkI8U0hFTEw+IgorbXNnc3RyICJCPFNIRUxMPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjY4MQorbXNnaWQgIlRoZSBwcm9ncmFtIEI8ZHBrZz4gd2lsbCBleGVjdXRlIHdoZW4gc3RhcnRpbmcgYSBuZXcgc2hlbGwuIgorbXNnc3RyICJCPGRwa2c+IOOBjOaWsOOBl+OBhOOCt+OCp+ODq+OCkui1t+WLleOBmeOCi+OBqOOBjeOBq+OAgeWun+mam+OBq+i1t+WLleOBmeOCi+ODl+ODreOCsOODqeODoOOAgiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2ODEgZHBrZy1xdWVyeS4xOjIwOQorIywgbm8td3JhcAorbXNnaWQgIkI8Q09MVU1OUz4iCittc2dzdHIgIkI8Q09MVU1OUz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2ODUKK21zZ2lkICIiCisiU2V0cyB0aGUgbnVtYmVyIG9mIGNvbHVtbnMgQjxkcGtnPiBzaG91bGQgdXNlIHdoZW4gZGlzcGxheWluZyBmb3JtYXR0ZWQgIgorInRleHQuIEN1cnJlbnRseSBvbmx5IHVzZWQgYnkgLWwuIgorbXNnc3RyICIiCisiQjxkcGtnPiDjgYzmlbTlvaLjg4bjgq3jgrnjg4jjgpLooajnpLrjgZnjgovmmYLjgavlj4LnhafjgZnjgovjgrPjg6njg6DmlbDjgILnj77lnKjjga8gLWwg44Kq44OX44K344On44Oz44GnIgorIuOBruOBv+WPgueFp+OBleOCjOOBpuOBhOOCi+OAgiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2ODUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPERQS0dfU0hFTExfUkVBU09OPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6Njg5Cittc2dpZCAiIgorIkRlZmluZWQgYnkgQjxkcGtnPiBvbiB0aGUgc2hlbGwgc3Bhd25lZCBvbiB0aGUgY29uZmZpbGUgcHJvbXB0IHRvIGV4YW1pbmUgIgorInRoZSBzaXR1YXRpb24uIEN1cnJlbnQgdmFsaWQgdmFsdWU6IEI8Y29uZmZpbGUtcHJvbXB0Pi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2ODkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPERQS0dfQ09ORkZJTEVfT0xEPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NjkzCittc2dpZCAiIgorIkRlZmluZWQgYnkgQjxkcGtnPiBvbiB0aGUgc2hlbGwgc3Bhd25lZCBvbiB0aGUgY29uZmZpbGUgcHJvbXB0IHRvIGV4YW1pbmUgIgorInRoZSBzaXR1YXRpb24uIENvbnRhaW5zIHRoZSBwYXRoIHRvIHRoZSBvbGQgY29uZmZpbGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NjkzCisjLCBuby13cmFwCittc2dpZCAiQjxEUEtHX0NPTkZGSUxFX05FVz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjY5NworbXNnaWQgIiIKKyJEZWZpbmVkIGJ5IEI8ZHBrZz4gb24gdGhlIHNoZWxsIHNwYXduZWQgb24gdGhlIGNvbmZmaWxlIHByb21wdCB0byBleGFtaW5lICIKKyJ0aGUgc2l0dWF0aW9uLiBDb250YWlucyB0aGUgcGF0aCB0byB0aGUgbmV3IGNvbmZmaWxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjY5NworIywgbm8td3JhcAorbXNnaWQgIkI8RFBLR19SVU5OSU5HX1ZFUlNJT04+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3MDEKK21zZ2lkICIiCisiRGVmaW5lZCBieSBCPGRwa2c+IG9uIHRoZSBtYWludGFpbmVyIHNjcmlwdCBlbnZpcm9ubWVudCB0byB0aGUgdmVyc2lvbiBvZiAiCisidGhlIGN1cnJlbnRseSBydW5uaW5nIEI8ZHBrZz4gaW5zdGFuY2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NzAxIGRwa2ctZGl2ZXJ0Ljg6MTE3CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8RFBLR19OT19UU1RQPiIKK21zZ2lkICJCPERQS0dfTUFJTlRTQ1JJUFRfUEFDS0FHRT4iCittc2dzdHIgIkI8RFBLR19OT19UU1RQPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjcwNQorbXNnaWQgIiIKKyJEZWZpbmVkIGJ5IEI8ZHBrZz4gb24gdGhlIG1haW50YWluZXIgc2NyaXB0IGVudmlyb25tZW50IHRvIHRoZSBwYWNrYWdlIG5hbWUgIgorImJlaW5nIGhhbmRsZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NzA1CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8RFBLR19OT19UU1RQPiIKK21zZ2lkICJCPERQS0dfTUFJTlRTQ1JJUFRfQVJDSD4iCittc2dzdHIgIkI8RFBLR19OT19UU1RQPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjcwOQorbXNnaWQgIiIKKyJEZWZpbmVkIGJ5IEI8ZHBrZz4gb24gdGhlIG1haW50YWluZXIgc2NyaXB0IGVudmlyb25tZW50IHRvIHRoZSBhcmNoaXRlY3R1cmUgIgorInRoZSBwYWNrYWdlIGdvdCBidWlsdCBmb3IuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NzA5CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8RFBLR19OT19UU1RQPiIKK21zZ2lkICJCPERQS0dfTUFJTlRTQ1JJUFRfTkFNRT4iCittc2dzdHIgIkI8RFBLR19OT19UU1RQPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjcxMworbXNnaWQgIiIKKyJEZWZpbmVkIGJ5IEI8ZHBrZz4gb24gdGhlIG1haW50YWluZXIgc2NyaXB0IGVudmlyb25tZW50IHRvIHRoZSBuYW1lIG9mIHRoZSAiCisic2NyaXB0IHJ1bm5pbmcgKHByZWluc3QsIHBvc3RpbnN0LCBwcmVybSwgcG9zdHJtKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjcxNgorbXNnaWQgIlRvIGxpc3QgcGFja2FnZXMgcmVsYXRlZCB0byB0aGUgZWRpdG9yIEI8dmk+KDEpOiIKK21zZ3N0ciAiQjx2aT4oMSkg44Ko44OH44Kj44K/44Gr6Zai6YCj44Gu44GC44KL44OR44OD44Kx44O844K444Gu5LiA6Kan44KS6KGo56S644GZ44KL44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzE4CisjLCBuby13cmFwCittc2dpZCAiICAgICBCPGRwa2cgLWwgXFwoYXEqdmkqXFwoYXE+XG4iCittc2dzdHIgIiAgICAgQjxkcGtnIC1sIFxcKGFxKnZpKlxcKGFxPlxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzIxCittc2dpZCAiVG8gc2VlIHRoZSBlbnRyaWVzIGluIEk8L3Zhci9saWIvZHBrZy9hdmFpbGFibGU+IG9mIHR3byBwYWNrYWdlczoiCittc2dzdHIgIjIg44Gk44Gu44OR44OD44Kx44O844K444GuIEk8L3Zhci9saWIvZHBrZy9hdmFpbGFibGU+IOOBq+OBguOCi+mgheebruOCkuihqOekuuOBmeOCi+OAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjcyMworIywgbm8td3JhcAorbXNnaWQgIiAgICAgQjxkcGtnIC0tcHJpbnQtYXZhaWwgZWx2aXMgdmltIHwgbGVzcz5cbiIKK21zZ3N0ciAiICAgICBCPGRwa2cgLS1wcmludC1hdmFpbCBlbHZpcyB2aW0gfCBsZXNzPlxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzI2Cittc2dpZCAiVG8gc2VhcmNoIHRoZSBsaXN0aW5nIG9mIHBhY2thZ2VzIHlvdXJzZWxmOiIKK21zZ3N0ciAi6Ieq5YiG44Gn44OR44OD44Kx44O844K444Gu44Oq44K544OI44GL44KJ5qSc57Si44GZ44KL44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzI4CisjLCBuby13cmFwCittc2dpZCAiICAgICBCPGxlc3MgL3Zhci9saWIvZHBrZy9hdmFpbGFibGU+XG4iCittc2dzdHIgIiAgICAgQjxsZXNzIC92YXIvbGliL2Rwa2cvYXZhaWxhYmxlPlxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzMxCittc2dpZCAiVG8gcmVtb3ZlIGFuIGluc3RhbGxlZCBlbHZpcyBwYWNrYWdlOiIKK21zZ3N0ciAiZWx2aXMg44OR44OD44Kx44O844K444KS5YmK6Zmk44GZ44KL44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzMzCisjLCBuby13cmFwCittc2dpZCAiICAgICBCPGRwa2cgLXIgZWx2aXM+XG4iCittc2dzdHIgIiAgICAgQjxkcGtnIC1yIGVsdmlzPlxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzM4Cittc2dpZCAiIgorIlRvIGluc3RhbGwgYSBwYWNrYWdlLCB5b3UgZmlyc3QgbmVlZCB0byBmaW5kIGl0IGluIGFuIGFyY2hpdmUgb3IgQ0RST00uIFRoZSAiCisiXCJhdmFpbGFibGVcIiBmaWxlIHNob3dzIHRoYXQgdGhlIHZpbSBwYWNrYWdlIGlzIGluIHNlY3Rpb24gXCJlZGl0b3JzXCI6IgorbXNnc3RyICIiCisi44OR44OD44Kx44O844K444KS44Kk44Oz44K544OI44O844Or44GZ44KL44Gr44Gv44CB44G+44Ga44Gd44Gu44OR44OD44Kx44O844K444KS44Ki44O844Kr44Kk44OW44KEIENEUk9NIOOBi+OCiSIKKyLmjqLjgZnlv4XopoHjgYzjgYLjgovjgIJcImF2YWlsYWJsZVwiIOODleOCoeOCpOODq+OBq+OCiOOCjOOBsOOAgXZpbSDjg5Hjg4PjgrHjg7zjgrjjga8gXCJlZGl0b3JzXCIgIgorIuOCu+OCr+OCt+ODp+ODs+OBq+WxnuOBl+OBpuOBhOOCi+OAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjc0MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICIiCisiICAgICBCPGNkIC9tZWRpYS9jZHJvbS9wb29sL21haW4vdi92aW0+XG4iCisiICAgICBCPGRwa2cgLWkgdmltXzQuNS0zLmRlYj5cbiIKK21zZ3N0ciAiIgorIiAgICAgQjxjZCAvY2Ryb20vaGFtbS9oYW1tL2JpbmFyeS9lZGl0b3JzPlxuIgorIiAgICAgQjxkcGtnIC1pIHZpbV80LjUtMy5kZWI+XG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3NDQKK21zZ2lkICJUbyBtYWtlIGEgbG9jYWwgY29weSBvZiB0aGUgcGFja2FnZSBzZWxlY3Rpb24gc3RhdGVzOiIKK21zZ3N0ciAi44OR44OD44Kx44O844K46YG45oqe54q25rOB44Gu44Kz44OU44O844KS5L2c5oiQ44GZ44KL44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzQ2CisjLCBuby13cmFwCittc2dpZCAiICAgICBCPGRwa2cgLS1nZXQtc2VsZWN0aW9ucyBFPGd0Pm15c2VsZWN0aW9ucz5cbiIKK21zZ3N0ciAiICAgICBCPGRwa2cgLS1nZXQtc2VsZWN0aW9ucyBFPGd0Pm15c2VsZWN0aW9ucz5cbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjc1MAorbXNnaWQgIiIKKyJZb3UgbWlnaHQgdHJhbnNmZXIgdGhpcyBmaWxlIHRvIGFub3RoZXIgY29tcHV0ZXIsIGFuZCBpbnN0YWxsIGl0IHRoZXJlIHdpdGg6IgorbXNnc3RyICLjgZPjga7jg5XjgqHjgqTjg6vjgpLjgbvjgYvjga7jgrPjg7Pjg5Tjg6Xjg7zjgr/jgavou6LpgIHjgZfjgabjgIHjgqTjg7Pjgrnjg4jjg7zjg6vjgZnjgovjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3NTMKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiICAgICBCPGRwa2cgLS1jbGVhci1zZWxlY3Rpb25zPlxuIgorIiAgICAgQjxkcGtnIC0tc2V0LXNlbGVjdGlvbnMgRTxsdD5teXNlbGVjdGlvbnM+XG4iCittc2dzdHIgIiIKKyIgICAgIEI8ZHBrZyAtLWNsZWFyLXNlbGVjdGlvbnM+XG4iCisiICAgICBCPGRwa2cgLS1zZXQtc2VsZWN0aW9ucyBFPGx0Pm15c2VsZWN0aW9ucz5cbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjc1OQorIywgZnV6enkKK21zZ2lkICIiCisiTm90ZSB0aGF0IHRoaXMgd2lsbCBub3QgYWN0dWFsbHkgaW5zdGFsbCBvciByZW1vdmUgYW55dGhpbmcsIGJ1dCBqdXN0IHNldCAiCisidGhlIHNlbGVjdGlvbiBzdGF0ZSBvbiB0aGUgcmVxdWVzdGVkIHBhY2thZ2VzLiBZb3Ugd2lsbCBuZWVkIHNvbWUgb3RoZXIgIgorImFwcGxpY2F0aW9uIHRvIGFjdHVhbGx5IGRvd25sb2FkIGFuZCBpbnN0YWxsIHRoZSByZXF1ZXN0ZWQgcGFja2FnZXMuIEZvciAiCisiZXhhbXBsZSwgcnVuIEI8YXB0LWdldCBkc2VsZWN0LXVwZ3JhZGU+LiIKK21zZ3N0ciAiIgorIuOBk+OCjOOBr+Wun+mam+OBq+OBr+OCpOODs+OCueODiOODvOODq+OCguWJiumZpOOCguOBl+OBquOBhOOBk+OBqOOBq+azqOaEj+OAguOBk+OCjOOBr+WNmOOBq+imgeaxguOBl+OBpuOBhOOCiyIKKyLjg5Hjg4PjgrHjg7zjgrjjga7pgbjmip7nirbmhYvjgpLoqK3lrprjgZnjgovjgaDjgZHjgafjgYLjgovjgILlrp/pmpvjgavopoHmsYLjgZfjgabjgYTjgovjg5Hjg4PjgrHjg7zjgrjjgpLjg4DjgqYiCisi44Oz44Ot44O844OJ44GX44Kk44Oz44K544OI44O844Or44GZ44KL44Gr44Gv5Yil44Gu44Ki44OX44Oq44Kx44O844K344On44Oz44GM5b+F6KaB44Gn44GC44KL44CC5L6L44GI44Gw44CBIgorIkI8ZHNlbGVjdD4g44KS6LW35YuV44GX44Gm44CBXCLlsI7lhaUoSW5zdGFsbClcIiDjgpLpgbjjgbnjgbDjgojjgYTjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3NjIKK21zZ2lkICIiCisiT3JkaW5hcmlseSwgeW91IHdpbGwgZmluZCB0aGF0IEI8ZHNlbGVjdD4oMSkgcHJvdmlkZXMgYSBtb3JlIGNvbnZlbmllbnQgd2F5ICIKKyJ0byBtb2RpZnkgdGhlIHBhY2thZ2Ugc2VsZWN0aW9uIHN0YXRlcy4iCittc2dzdHIgIiIKKyLpgJrluLjjgIHjg5Hjg4PjgrHjg7zjgrjjga7pgbjmip7nirbmhYvjgpLlpInmm7TjgZnjgovjgavjga8gQjxkc2VsZWN0PigxKSDjgpLkvb/nlKjjgZnjgovjgbvjgYbjgYzkvr/liKnjgaciCisi44GC44KL44CCIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy4xOjc2NAorIywgbm8td3JhcAorbXNnaWQgIkFERElUSU9OQUwgRlVOQ1RJT05BTElUWSIKK21zZ3N0ciAi5qmf6IO944Gu6L+95YqgIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzY3CisjLCBmdXp6eQorbXNnaWQgIiIKKyJBZGRpdGlvbmFsIGZ1bmN0aW9uYWxpdHkgY2FuIGJlIGdhaW5lZCBieSBpbnN0YWxsaW5nIGFueSBvZiB0aGUgZm9sbG93aW5nICIKKyJwYWNrYWdlczogQjxhcHQ+LCBCPGFwdGl0dWRlPiBhbmQgQjxkZWJzdW1zPi4iCittc2dzdHIgIiIKKyJJPGFwdD7jgIFJPGFwdGl0dWRlPuOAgUk8ZGVic3Vtcz4g44OR44OD44Kx44O844K444KS44Kk44Oz44K544OI44O844Or44GZ44KL44Go5L6/5Yip44Gq5qmf6IO944KS6L+9IgorIuWKoOOBp+OBjeOCi+OAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjc3OQorIywgZnV6enkKK21zZ2lkICIiCisiQjxhcHRpdHVkZT4oMSksIEI8YXB0PigxKSwgQjxkc2VsZWN0PigxKSwgQjxkcGtnLWRlYj4oMSksIEI8ZHBrZy1xdWVyeT4oMSksICIKKyJCPGRlYj4oNSksIEI8ZGViLWNvbnRyb2w+KDUpLCBCPGRwa2cuY2ZnPig1KSwgYW5kIEI8ZHBrZy1yZWNvbmZpZ3VyZT4oOCkuIgorbXNnc3RyICIiCisiQjxkc2VsZWN0PigxKSwgQjxkcGtnLWRlYj4oMSksIEI8ZHBrZy1xdWVyeT4oMSksIEI8ZGViPig1KSwgQjxkZWItY29udHJvbD4iCisiKDUpLCBCPGRwa2cuY2ZnPig1KSwgQjxkcGtnLXJlY29uZmlndXJlPig4KS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3ODIKK21zZ2lkICJCPC0tbm8tYWN0PiB1c3VhbGx5IGdpdmVzIGxlc3MgaW5mb3JtYXRpb24gdGhhbiBtaWdodCBiZSBoZWxwZnVsLiIKK21zZ3N0ciAiQjwtLW5vLWFjdD4g44Gu5o+Q5L6b44GZ44KL5oOF5aCx44Gv44Gf44GE44Gm44GE44Gu5aC05ZCI44CB5LiN5YWF5YiG44Gn44GC44KL44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6Nzg1IGRwa2cuY2ZnLjU6MjIKKyMsIGZ1enp5Cittc2dpZCAiIgorIlNlZSBJPC91c3Ivc2hhcmUvZG9jL2Rwa2cvVEhBTktTPiBmb3IgdGhlIGxpc3Qgb2YgcGVvcGxlIHdobyBoYXZlICIKKyJjb250cmlidXRlZCB0byBCPGRwa2c+LiIKK21zZ3N0ciAiIgorIkI8ZHBrZz4g44Gr6LKi54yu44GX44Gf5Lq644Gu44Oq44K544OI44GvIEI8L3Vzci9zaGFyZS9kb2MvZHBrZy9USEFOS1M+IOOBq1xuIgorIuaMmeOBkuOBpuOBguOCi+OAglxuIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgImRwa2ctYXJjaGl0ZWN0dXJlIgorbXNnc3RyICJCPGRwa2cgLS1wcmludC1hcmNoaXRlY3R1cmU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjQKK21zZ2lkICIiCisiZHBrZy1hcmNoaXRlY3R1cmUgLSBzZXQgYW5kIGRldGVybWluZSB0aGUgYXJjaGl0ZWN0dXJlIGZvciBwYWNrYWdlIGJ1aWxkaW5nIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6OAorIywgZnV6enkKK21zZ2lkICJCPGRwa2ctYXJjaGl0ZWN0dXJlPiBbSTxvcHRpb24+Li4uXSBbSTxjb21tYW5kPl0iCittc2dzdHIgIkI8ZHBrZz4gW0k8b3B0aW9ucz5dIEk8YWN0aW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMworbXNnaWQgIiIKKyJkcGtnLWFyY2hpdGVjdHVyZSBkb2VzIHByb3ZpZGUgYSBmYWNpbGl0eSB0byBkZXRlcm1pbmUgYW5kIHNldCB0aGUgYnVpbGQgYW5kICIKKyJob3N0IGFyY2hpdGVjdHVyZSBmb3IgcGFja2FnZSBidWlsZGluZy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxNgorbXNnaWQgIiIKKyJUaGUgYnVpbGQgYXJjaGl0ZWN0dXJlIGlzIGFsd2F5cyBkZXRlcm1pbmVkIGJ5IGFuIGV4dGVybmFsIGNhbGwgdG8gQjxkcGtnPiIKKyIoMSksIGFuZCBjYW4gbm90IGJlIHNldCBhdCB0aGUgY29tbWFuZCBsaW5lLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI1Cittc2dpZCAiIgorIllvdSBjYW4gc3BlY2lmeSB0aGUgaG9zdCBhcmNoaXRlY3R1cmUgYnkgcHJvdmlkaW5nIG9uZSBvciBib3RoIG9mIHRoZSAiCisib3B0aW9ucyBCPC1hPiBhbmQgQjwtdD4uIFRoZSBkZWZhdWx0IGlzIGRldGVybWluZWQgYnkgYW4gZXh0ZXJuYWwgY2FsbCB0byAiCisiQjxnY2M+KDEpLCBvciB0aGUgc2FtZSBhcyB0aGUgYnVpbGQgYXJjaGl0ZWN0dXJlIGlmIFxccy0xQ0NcXHMwIG9yIGdjYyBhcmUgIgorImJvdGggbm90IGF2YWlsYWJsZS4gT25lIG91dCBvZiBCPC1hPiBhbmQgQjwtdD4gaXMgc3VmZmljaWVudCwgdGhlIHZhbHVlIG9mICIKKyJ0aGUgb3RoZXIgd2lsbCBiZSBzZXQgdG8gYSB1c2FibGUgZGVmYXVsdC4gSW5kZWVkLCBpdCBpcyBvZnRlbiBiZXR0ZXIgdG8gIgorIm9ubHkgc3BlY2lmeSBvbmUsIGJlY2F1c2UgQjxkcGtnLWFyY2hpdGVjdHVyZT4gd2lsbCB3YXJuIHlvdSBpZiB5b3VyIGNob2ljZSAiCisiZG9lcyBub3QgbWF0Y2ggdGhlIGRlZmF1bHQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI2IGRwa2ctYnVpbGRmbGFncy4xOjQ1IGRwa2ctZGViLjE6MjcgZHBrZy1kaXZlcnQuODoyNAorIzogZHBrZy1xdWVyeS4xOjEzIGRwa2ctc291cmNlLjE6MTggZHBrZy1zcGxpdC4xOjMxIGRwa2ctc3RhdG92ZXJyaWRlLjg6MjMKKyM6IGRwa2ctdHJpZ2dlci4xOjI0IGRwa2ctdmVuZG9yLjE6MTQgc3RhcnQtc3RvcC1kYWVtb24uODozNAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjIwMgorIywgbm8td3JhcAorbXNnaWQgIkNPTU1BTkRTIgorbXNnc3RyICLjgrPjg57jg7Pjg4kiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI3CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LWw+IgorbXNnc3RyICJCPC1CPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTozMQorbXNnaWQgIiIKKyJQcmludCB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGVzLCBvbmUgZWFjaCBsaW5lLCBpbiB0aGUgZm9ybWF0ICIKKyJJPFZBUklBQkxFPXZhbHVlPi4gVGhpcyBpcyB0aGUgZGVmYXVsdCBhY3Rpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjMxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LWU+STxkZWJpYW4tYXJjaGl0ZWN0dXJlPiIKK21zZ3N0ciAiQjwtYSwgLS1uby1hcmNoaXRlY3R1cmU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjM3Cittc2dpZCAiIgorIkNoZWNrIGZvciBlcXVhbGl0eSBvZiBhcmNoaXRlY3R1cmUuIEJ5IGRlZmF1bHQgSTxkZWJpYW4tYXJjaGl0ZWN0dXJlPiBpcyAiCisiY29tcGFyZWQgYWdhaW5zdCB0aGUgY3VycmVudCBEZWJpYW4gYXJjaGl0ZWN0dXJlLCBiZWluZyB0aGUgaG9zdC4gIFRoaXMgIgorImFjdGlvbiB3aWxsIG5vdCBleHBhbmQgdGhlIGFyY2hpdGVjdHVyZSB3aWxkY2FyZHMuIENvbW1hbmQgZmluaXNoZXMgd2l0aCBhbiAiCisiZXhpdCBzdGF0dXMgb2YgMCBpZiBtYXRjaGVkLCAxIGlmIG5vdCBtYXRjaGVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTozNworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1pPkk8YXJjaGl0ZWN0dXJlLXdpbGRjYXJkPiIKK21zZ3N0ciAiQjwtYSwgLS1uby1hcmNoaXRlY3R1cmU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjQzCittc2dpZCAiIgorIkNoZWNrIGZvciBpZGVudGl0eSBvZiBhcmNoaXRlY3R1cmUgYnkgZXhwYW5kaW5nIEk8YXJjaGl0ZWN0dXJlLXdpbGRjYXJkPiBhcyAiCisiYW4gYXJjaGl0ZWN0dXJlIHdpbGRjYXJkIGFuZCBjb21wYXJpbmcgYWdhaW5zdCB0aGUgY3VycmVudCBEZWJpYW4gIgorImFyY2hpdGVjdHVyZS4gQ29tbWFuZCBmaW5pc2hlcyB3aXRoIGFuIGV4aXQgc3RhdHVzIG9mIDAgaWYgbWF0Y2hlZCwgMSBpZiBub3QgIgorIm1hdGNoZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjQzCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LXE+STx2YXJpYWJsZS1uYW1lPiIKK21zZ3N0ciAiQjxbLS1dID5JPGZpbGVuYW1lPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo0NgorbXNnaWQgIlByaW50IHRoZSB2YWx1ZSBvZiBhIHNpbmdsZSB2YXJpYWJsZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NDYKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtcz4iCittc2dzdHIgIkI8LUI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjUwCittc2dpZCAiIgorIlByaW50IGFuIGV4cG9ydCBjb21tYW5kLiBUaGlzIGNhbiBiZSB1c2VkIHRvIHNldCB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGVzICIKKyJ1c2luZyBldmFsLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo1MAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC11PiIKK21zZ3N0ciAiQjwtQj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NTMKK21zZ2lkICJQcmludCBhIHNpbWlsYXIgY29tbWFuZCB0byBCPC1zPiBidXQgdG8gdW5zZXQgYWxsIHZhcmlhYmxlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NTMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1jPkk8IGNvbW1hbmQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NTcKK21zZ2lkICIiCisiRXhlY3V0ZSBhIEk8Y29tbWFuZD4gaW4gYW4gZW52aXJvbm1lbnQgd2hpY2ggaGFzIGFsbCB2YXJpYWJsZXMgc2V0IHRvIHRoZSAiCisiZGV0ZXJtaW5lZCB2YWx1ZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NTcKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtTD4iCittc2dzdHIgIkI8LUI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjYwCittc2dpZCAiUHJpbnQgYSBsaXN0IG9mIHZhbGlkIGFyY2hpdGVjdHVyZSBuYW1lcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo2MyBkcGtnLWJ1aWxkZmxhZ3MuMTo5MiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIyNgorIzogZHBrZy1jaGVja2J1aWxkZGVwcy4xOjM2IGRwa2ctZGlzdGFkZGZpbGUuMTozNSBkcGtnLWRlYi4xOjE3NQorIzogZHBrZy1kaXZlcnQuODo3NCBkcGtnLWdlbmNoYW5nZXMuMToxMzQgZHBrZy1nZW5jb250cm9sLjE6MTI0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0NDYgZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTo0MSBkcGtnLW5hbWUuMTo2MQorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjM2IGRwa2ctcXVlcnkuMToxMTMgZHBrZy1zY2FucGFja2FnZXMuMTo5OQorIzogZHBrZy1zY2Fuc291cmNlcy4xOjY4IGRwa2ctc2hsaWJkZXBzLjE6MjE4IGRwa2ctc291cmNlLjE6OTkKKyM6IGRwa2ctc3BsaXQuMToxMjkgZHBrZy1zdGF0b3ZlcnJpZGUuODo0NyBkcGtnLXRyaWdnZXIuMTozNCBkcGtnLXZlbmRvci4xOjMxCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzE5CisjLCBmdXp6eQorbXNnaWQgIlNob3cgdGhlIHVzYWdlIG1lc3NhZ2UgYW5kIGV4aXQuIgorbXNnc3RyICLliKnnlKjmlrnms5XjgpLooajnpLrjgZfjgabmraPluLjntYLkuobjgZnjgovjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NjYgZHBrZy1idWlsZGZsYWdzLjE6OTUgZHBrZy1idWlsZHBhY2thZ2UuMToyMjkKKyM6IGRwa2ctY2hlY2tidWlsZGRlcHMuMTozOSBkcGtnLWRpc3RhZGRmaWxlLjE6MzggZHBrZy1kZWIuMToxNzgKKyM6IGRwa2ctZGl2ZXJ0Ljg6NzcgZHBrZy1nZW5jaGFuZ2VzLjE6MTM3IGRwa2ctZ2VuY29udHJvbC4xOjEyNworIzogZHBrZy1nZW5zeW1ib2xzLjE6NDQ5IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6NDQgZHBrZy1uYW1lLjE6NjQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTozOSBkcGtnLXF1ZXJ5LjE6MTE2IGRwa2ctc2NhbnBhY2thZ2VzLjE6MTAyCisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6NzAgZHBrZy1zaGxpYmRlcHMuMToyMjEgZHBrZy1zb3VyY2UuMToxMDIKKyM6IGRwa2ctc3BsaXQuMToxMzIgZHBrZy1zdGF0b3ZlcnJpZGUuODo1MCBkcGtnLXRyaWdnZXIuMTozNyBkcGtnLXZlbmRvci4xOjM0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzIyCisjLCBmdXp6eQorbXNnaWQgIlNob3cgdGhlIHZlcnNpb24gYW5kIGV4aXQuIgorbXNnc3RyICLjg5Djg7zjgrjjg6fjg7Pmg4XloLHjgpLlh7rlipvjgZfjgabntYLkuobjgZnjgovjgIIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjY4CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LWE+STxkZWJpYW4tYXJjaGl0ZWN0dXJlPiIKK21zZ3N0ciAiQjwtYSwgLS1uby1hcmNoaXRlY3R1cmU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjcxCittc2dpZCAiU2V0IHRoZSBEZWJpYW4gYXJjaGl0ZWN0dXJlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo3MSBkcGtnLWJ1aWxkcGFja2FnZS4xOjExMAorIywgbm8td3JhcAorbXNnaWQgIkI8LXQ+STxnbnUtc3lzdGVtLXR5cGU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NzQKK21zZ2lkICJTZXQgdGhlIEdOVSBzeXN0ZW0gdHlwZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NzQKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtZj4iCittc2dzdHIgIkI8LUI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjgxCittc2dpZCAiIgorIlZhbHVlcyBzZXQgYnkgZXhpc3RpbmcgZW52aXJvbm1lbnQgdmFyaWFibGVzIHdpdGggdGhlIHNhbWUgbmFtZSBhcyB1c2VkIGJ5ICIKKyJ0aGUgc2NyaXB0cyBhcmUgaG9ub3JlZCAoaS5lLiB1c2VkIGJ5IEI8ZHBrZy1hcmNoaXRlY3R1cmU+KSwgZXhjZXB0IGlmIHRoaXMgIgorImZvcmNlIGZsYWcgaXMgcHJlc2VudC4gVGhpcyBhbGxvd3MgdGhlIHVzZXIgdG8gb3ZlcnJpZGUgYSB2YWx1ZSBldmVuIHdoZW4gIgorInRoZSBjYWxsIHRvIEI8ZHBrZy1hcmNoaXRlY3R1cmU+IGlzIGJ1cmllZCBpbiBzb21lIG90aGVyIHNjcmlwdCAoZm9yIGV4YW1wbGUgIgorIkI8ZHBrZy1idWlsZHBhY2thZ2U+KDEpKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6ODIKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiVEVSTVMiCittc2dzdHIgIuazqOaEjyIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6ODMKKyMsIG5vLXdyYXAKK21zZ2lkICJidWlsZCBtYWNoaW5lIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6ODUKK21zZ2lkICJUaGUgbWFjaGluZSB0aGUgcGFja2FnZSBpcyBidWlsdCBvbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6ODUKKyMsIG5vLXdyYXAKK21zZ2lkICJob3N0IG1hY2hpbmUiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo4NworbXNnaWQgIlRoZSBtYWNoaW5lIHRoZSBwYWNrYWdlIGlzIGJ1aWx0IGZvci4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6ODcKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiRGViaWFuIGFyY2hpdGVjdHVyZSIKK21zZ3N0ciAiRGViaWFuIFByb2plY3QiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6OTAKK21zZ2lkICIiCisiVGhlIERlYmlhbiBhcmNoaXRlY3R1cmUgc3RyaW5nLCB3aGljaCBzcGVjaWZpZXMgdGhlIGJpbmFyeSB0cmVlIGluIHRoZSAiCisiXFxzLTFGVFBcXHMwIGFyY2hpdmUuIEV4YW1wbGVzOiBpMzg2LCBzcGFyYywgaHVyZC1pMzg2LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo5MAorIywgbm8td3JhcAorbXNnaWQgImFyY2hpdGVjdHVyZSB3aWxkY2FyZCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjk0Cittc2dpZCAiIgorIkFuIGFyY2hpdGVjdHVyZSB3aWxkY2FyZCBpcyBhIHNwZWNpYWwgYXJjaGl0ZWN0dXJlIHN0cmluZyB0aGF0IHdpbGwgbWF0Y2ggIgorImFueSByZWFsIGFyY2hpdGVjdHVyZSBiZWluZyBwYXJ0IG9mIGl0LiBUaGUgZ2VuZXJhbCBmb3JtIGlzIEU8bHQ+a2VybmVsRTxndD4tIgorIkU8bHQ+Y3B1RTxndD4uICBFeGFtcGxlczogbGludXgtYW55LCBhbnktaTM4NiwgaHVyZC1hbnkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjk0CisjLCBuby13cmFwCittc2dpZCAiXFxzLTFHTlVcXHMwIHN5c3RlbSB0eXBlIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6OTgKK21zZ2lkICIiCisiQW4gYXJjaGl0ZWN0dXJlIHNwZWNpZmljYXRpb24gc3RyaW5nIGNvbnNpc3Rpbmcgb2YgdHdvIHBhcnRzIHNlcGFyYXRlZCBieSBhICIKKyJkYXNoOiBjcHUgYW5kIHN5c3RlbS4gRXhhbXBsZXM6IGkzODYtbGludXgtZ251LCBzcGFyYy1saW51eC1nbnUsIGkzODYtZ251LCAiCisieDg2XzY0LW5ldGJzZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6OTkKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiVkFSSUFCTEVTIgorbXNnc3RyICLnkrDlooPlpInmlbAiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTAxCittc2dpZCAiVGhlIGZvbGxvd2luZyB2YXJpYWJsZXMgYXJlIHNldCBieSBCPGRwa2ctYXJjaGl0ZWN0dXJlPjoiCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTAxCisjLCBuby13cmFwCittc2dpZCAiXFxzLTFERUJfQlVJTERfQVJDSFxcczAiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMDMKK21zZ2lkICJUaGUgRGViaWFuIGFyY2hpdGVjdHVyZSBvZiB0aGUgYnVpbGQgbWFjaGluZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTAzCisjLCBuby13cmFwCittc2dpZCAiXFxzLTFERUJfQlVJTERfQVJDSF9PU1xcczAiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMDUKK21zZ2lkICJUaGUgRGViaWFuIHN5c3RlbSBuYW1lIG9mIHRoZSBidWlsZCBtYWNoaW5lLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMDUKKyMsIG5vLXdyYXAKK21zZ2lkICJcXHMtMURFQl9CVUlMRF9BUkNIX0NQVVxcczAiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMDcKK21zZ2lkICJUaGUgRGViaWFuIGNwdSBuYW1lIG9mIHRoZSBidWlsZCBtYWNoaW5lLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMDcKKyMsIG5vLXdyYXAKK21zZ2lkICJcXHMtMURFQl9CVUlMRF9BUkNIX0JJVFNcXHMwIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTA5Cittc2dpZCAiVGhlIHBvaW50ZXIgc2l6ZSBvZiB0aGUgYnVpbGQgbWFjaGluZSAoaW4gYml0cykuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEwOQorIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0JVSUxEX0FSQ0hfRU5ESUFOXFxzMCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjExMQorbXNnaWQgIlRoZSBlbmRpYW5uZXNzIG9mIHRoZSBidWlsZCBtYWNoaW5lIChsaXR0bGUgLyBiaWcpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMTEKKyMsIG5vLXdyYXAKK21zZ2lkICJcXHMtMURFQl9CVUlMRF9HTlVfQ1BVXFxzMCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjExMworbXNnaWQgIlRoZSBcXHMtMUNQVVxcczAgcGFydCBvZiBcXHMtMURFQl9CVUlMRF9HTlVfVFlQRVxcczAuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjExMworIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0JVSUxEX0dOVV9TWVNURU1cXHMwIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTE1Cittc2dpZCAiVGhlIFN5c3RlbSBwYXJ0IG9mIFxccy0xREVCX0JVSUxEX0dOVV9UWVBFXFxzMC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTE1CisjLCBuby13cmFwCittc2dpZCAiXFxzLTFERUJfQlVJTERfR05VX1RZUEVcXHMwIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTE3Cittc2dpZCAiVGhlIFxccy0xR05VXFxzMCBzeXN0ZW0gdHlwZSBvZiB0aGUgYnVpbGQgbWFjaGluZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTE3CisjLCBuby13cmFwCittc2dpZCAiXFxzLTFERUJfQlVJTERfTVVMVElBUkNIXFxzMCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEyMAorbXNnaWQgIiIKKyJUaGUgY2xhcmlmaWVkIFxccy0xR05VXFxzMCBzeXN0ZW0gdHlwZSBvZiB0aGUgYnVpbGQgbWFjaGluZSwgdXNlZCBmb3IgIgorImZpbGVzeXN0ZW0gcGF0aHMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEyMAorIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0hPU1RfQVJDSFxcczAiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMjIKK21zZ2lkICJUaGUgRGViaWFuIGFyY2hpdGVjdHVyZSBvZiB0aGUgaG9zdCBtYWNoaW5lLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMjIKKyMsIG5vLXdyYXAKK21zZ2lkICJcXHMtMURFQl9IT1NUX0FSQ0hfT1NcXHMwIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTI0Cittc2dpZCAiVGhlIERlYmlhbiBzeXN0ZW0gbmFtZSBvZiB0aGUgaG9zdCBtYWNoaW5lLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMjQKKyMsIG5vLXdyYXAKK21zZ2lkICJcXHMtMURFQl9IT1NUX0FSQ0hfQ1BVXFxzMCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEyNgorbXNnaWQgIlRoZSBEZWJpYW4gY3B1IG5hbWUgb2YgdGhlIGhvc3QgbWFjaGluZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTI2CisjLCBuby13cmFwCittc2dpZCAiXFxzLTFERUJfSE9TVF9BUkNIX0JJVFNcXHMwIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTI4Cittc2dpZCAiVGhlIHBvaW50ZXIgc2l6ZSBvZiB0aGUgaG9zdCBtYWNoaW5lIChpbiBiaXRzKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTI4CisjLCBuby13cmFwCittc2dpZCAiXFxzLTFERUJfSE9TVF9BUkNIX0VORElBTlxcczAiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMzAKK21zZ2lkICJUaGUgZW5kaWFubmVzcyBvZiB0aGUgaG9zdCBtYWNoaW5lIChsaXR0bGUgLyBiaWcpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMzAKKyMsIG5vLXdyYXAKK21zZ2lkICJcXHMtMURFQl9IT1NUX0dOVV9DUFVcXHMwIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTMyCittc2dpZCAiVGhlIFxccy0xQ1BVXFxzMCBwYXJ0IG9mIFxccy0xREVCX0hPU1RfR05VX1RZUEVcXHMwLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMzIKKyMsIG5vLXdyYXAKK21zZ2lkICJcXHMtMURFQl9IT1NUX0dOVV9TWVNURU1cXHMwIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTM0Cittc2dpZCAiVGhlIFN5c3RlbSBwYXJ0IG9mIFxccy0xREVCX0hPU1RfR05VX1RZUEVcXHMwLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMzQKKyMsIG5vLXdyYXAKK21zZ2lkICJcXHMtMURFQl9IT1NUX0dOVV9UWVBFXFxzMCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEzNgorbXNnaWQgIlRoZSBcXHMtMUdOVVxcczAgc3lzdGVtIHR5cGUgb2YgdGhlIGhvc3QgbWFjaGluZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTM2CisjLCBuby13cmFwCittc2dpZCAiXFxzLTFERUJfSE9TVF9NVUxUSUFSQ0hcXHMwIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTM5Cittc2dpZCAiIgorIlRoZSBjbGFyaWZpZWQgXFxzLTFHTlVcXHMwIHN5c3RlbSB0eXBlIG9mIHRoZSBob3N0IG1hY2hpbmUsIHVzZWQgZm9yICIKKyJmaWxlc3lzdGVtIHBhdGhzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxNDAKKyMsIG5vLXdyYXAKK21zZ2lkICJERUJJQU4vUlVMRVMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxNDgKK21zZ2lkICIiCisiVGhlIGVudmlyb25tZW50IHZhcmlhYmxlcyBzZXQgYnkgQjxkcGtnLWFyY2hpdGVjdHVyZT4gYXJlIHBhc3NlZCB0byBJPGRlYmlhbi8iCisicnVsZXM+IGFzIG1ha2UgdmFyaWFibGVzIChzZWUgbWFrZSBkb2N1bWVudGF0aW9uKS4gSG93ZXZlciwgeW91IHNob3VsZCBub3QgIgorInJlbHkgb24gdGhlbSwgYXMgdGhpcyBicmVha3MgbWFudWFsIGludm9jYXRpb24gb2YgdGhlIHNjcmlwdC4gSW5zdGVhZCwgeW91ICIKKyJzaG91bGQgYWx3YXlzIGluaXRpYWxpemUgdGhlbSB1c2luZyBCPGRwa2ctYXJjaGl0ZWN0dXJlPiB3aXRoIHRoZSAtcSBvcHRpb24uICIKKyJIZXJlIGFyZSBzb21lIGV4YW1wbGVzLCB3aGljaCBhbHNvIHNob3cgaG93IHlvdSBjYW4gaW1wcm92ZSB0aGUgY3Jvc3MgIgorImNvbXBpbGF0aW9uIHN1cHBvcnQgaW4geW91ciBwYWNrYWdlOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjE1MSBkcGtnLWFyY2hpdGVjdHVyZS4xOjE2OAorbXNnaWQgIkluc3RlYWQgb2Y6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTU1CisjLCBuby13cmFwCittc2dpZCAiIgorIkFSQ0g9XFxgZHBrZyAtLXByaW50LWFyY2hpdGVjdHVyZVxcYFxuIgorImNvbmZpZ3VyZSAkKFxccy0xQVJDSFxcczApLWxpbnV4XG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxNTgKK21zZ2lkICJwbGVhc2UgdXNlIHRoZSBmb2xsb3dpbmc6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTYyCisjLCBuby13cmFwCittc2dpZCAiIgorIlxcJlxccy0xREVCX0JVSUxEX0dOVV9UWVBFXFxzMCA6PSAkKHNoZWxsIGRwa2ctYXJjaGl0ZWN0dXJlIC1xREVCX0JVSUxEX0dOVV9UWVBFKVxuIgorIlxcJlxccy0xREVCX0hPU1RfR05VX1RZUEVcXHMwIDo9ICQoc2hlbGwgZHBrZy1hcmNoaXRlY3R1cmUgLXFERUJfSE9TVF9HTlVfVFlQRSlcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjE2NAorIywgbm8td3JhcAorbXNnaWQgImNvbmZpZ3VyZSAtLWJ1aWxkPSQoXFxzLTFERUJfQlVJTERfR05VX1RZUEVcXHMwKSAtLWhvc3Q9JChcXHMtMURFQl9IT1NUX0dOVV9UWVBFXFxzMClcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjE3NAorIywgbm8td3JhcAorbXNnaWQgIiIKKyJBUkNIPVxcYGRwa2cgLS1wcmludC1hcmNoaXRlY3R1cmVcXGBcbiIKKyJpZmVxICgkKFxccy0xQVJDSFxcczApLGFscGhhKVxuIgorIiAgLi4uXG4iCisiZW5kaWZcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjE3NworbXNnaWQgInBsZWFzZSB1c2U6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTgwCisjLCBuby13cmFwCittc2dpZCAiXFwmXFxzLTFERUJfSE9TVF9BUkNIXFxzMCA6PSAkKHNoZWxsIGRwa2ctYXJjaGl0ZWN0dXJlIC1xREVCX0hPU1RfQVJDSClcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjE4NAorIywgbm8td3JhcAorbXNnaWQgIiIKKyJpZmVxICgkKFxccy0xREVCX0hPU1RfQVJDSFxcczApLGFscGhhKVxuIgorIiAgLi4uXG4iCisiZW5kaWZcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjE4OAorbXNnaWQgIiIKKyJvciBpZiB5b3Ugb25seSBuZWVkIHRvIGNoZWNrIHRoZSBDUFUgb3IgT1MgdHlwZSwgdXNlIHRoZSBERUJfSE9TVF9BUkNIX0NQVSAiCisib3IgREVCX0hPU1RfQVJDSF9PUyB2YXJpYWJsZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTkzCittc2dpZCAiIgorIkluIGdlbmVyYWwsIGNhbGxpbmcgZHBrZyBpbiB0aGUgcnVsZXMgZmlsZSB0byBnZXQgYXJjaGl0ZWN0dXJlIGluZm9ybWF0aW9uICIKKyJpcyBkZXByZWNhdGVkICh1bmxlc3MgeW91IHdhbnQgdG8gcHJvdmlkZSBiYWNrd2FyZCBjb21wYXRpYmlsaXR5LCBzZWUgIgorImJlbG93KS4gIEVzcGVjaWFsbHkgdGhlIC0tcHJpbnQtYXJjaGl0ZWN0dXJlIG9wdGlvbiBpcyB1bnJlbGlhYmxlIHNpbmNlIHdlICIKKyJoYXZlIERlYmlhbiBhcmNoaXRlY3R1cmVzIHdoaWNoIGRvbid0IGVxdWFsIGEgcHJvY2Vzc29yIG5hbWUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjE5NAorIywgbm8td3JhcAorbXNnaWQgIkJBQ0tXQVJEIENPTVBBVElCSUxJVFkiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxOTgKK21zZ2lkICIiCisiVGhlIERFQl8qX0FSQ0hfQklUUyBhbmQgREVCXypfQVJDSF9FTkRJQU4gdmFyaWFibGVzIHdlcmUgaW50cm9kdWNlZCBpbiBkcGtnLSIKKyJkZXYgMS4xNS40LiBVc2luZyB0aGVtIGluIEk8ZGViaWFuL3J1bGVzPiB0aHVzIHJlcXVpcmVzIGEgYnVpbGQtZGVwZW5kZW5jeSAiCisib24gZHBrZy1kZXYgKEU8Z3Q+PSAxLjE1LjQpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjIwMworbXNnaWQgIiIKKyJUaGUgREVCX0hPU1RfQVJDSF9DUFUgYW5kIERFQl9IT1NUX0FSQ0hfT1MgdmFyaWFibGVzIHdlcmUgaW50cm9kdWNlZCBpbiBkcGtnLSIKKyJkZXYgMS4xMy4yLiBCZWZvcmUgdGhpcyBJPGRlYmlhbi9ydWxlcz4gZmlsZXMgdGVuZGVkIHRvIGNoZWNrIHRoZSB2YWx1ZXMgb2YgIgorInRoZSBERUJfSE9TVF9HTlVfQ1BVIG9yIERFQl9IT1NUX0dOVV9UWVBFIHZhcmlhYmxlcyB3aGljaCBoYXZlIGJlZW4gc3ViamVjdCAiCisidG8gY2hhbmdlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjIwOAorbXNnaWQgIiIKKyJXaGVyZSBJPGRlYmlhbi9ydWxlcz4gZmlsZXMgY2hlY2sgdGhlc2UgdmFyaWFibGVzIHRvIGRlY2lkZSBob3cgb3Igd2hhdCB0byAiCisiY29tcGlsZSwgdGhpcyBzaG91bGQgYmUgdXBkYXRlZCB0byB1c2UgdGhlIG5ldyB2YXJpYWJsZXMgYW5kIHZhbHVlcy4gIFlvdSAiCisibWF5IHdpc2ggdG8gcmV0YWluIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5IHdpdGggb2xkZXIgdmVyc2lvbiBvZiBkcGtnLWRldiBieSAiCisidXNpbmcgdGhlIGZvbGxvd2luZyBjb2RlOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjIxMgorIywgbm8td3JhcAorbXNnaWQgIiIKKyJERUJfSE9TVF9BUkNIX0NQVSA6PSAkKHNoZWxsIGRwa2ctYXJjaGl0ZWN0dXJlIC1xREVCX0hPU1RfQVJDSF9DUFUgMkU8Z3Q+L2Rldi9udWxsKVxuIgorIkRFQl9IT1NUX0FSQ0hfT1MgOj0gJChzaGVsbCBkcGtnLWFyY2hpdGVjdHVyZSAtcURFQl9IT1NUX0FSQ0hfT1MgMkU8Z3Q+L2Rldi9udWxsKVxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjI2CisjLCBuby13cmFwCittc2dpZCAiIgorIiMgVGFrZSBhY2NvdW50IG9mIG9sZCBkcGtnLWFyY2hpdGVjdHVyZSBvdXRwdXQuXG4iCisiaWZlcSAoJChERUJfSE9TVF9BUkNIX0NQVSksKVxuIgorIiAgREVCX0hPU1RfQVJDSF9DUFUgOj0gJChzaGVsbCBkcGtnLWFyY2hpdGVjdHVyZSAtcURFQl9IT1NUX0dOVV9DUFUpXG4iCisiICBpZmVxICgkKERFQl9IT1NUX0FSQ0hfQ1BVKSx4ODZfNjQpXG4iCisiICAgIERFQl9IT1NUX0FSQ0hfQ1BVIDo9IGFtZDY0XG4iCisiICBlbmRpZlxuIgorImVuZGlmXG4iCisiaWZlcSAoJChERUJfSE9TVF9BUkNIX09TKSwpXG4iCisiICBERUJfSE9TVF9BUkNIX09TIDo9ICQoc3Vic3QgLWdudSwsJChzaGVsbCBkcGtnLWFyY2hpdGVjdHVyZSAtcURFQl9IT1NUX0dOVV9TWVNURU0pKVxuIgorIiAgaWZlcSAoJChERUJfSE9TVF9BUkNIX09TKSxnbnUpXG4iCisiICAgIERFQl9IT1NUX0FSQ0hfT1MgOj0gaHVyZFxuIgorIiAgZW5kaWZcbiIKKyJlbmRpZlxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjI5Cittc2dpZCAiQW5kIHNpbWlsYXJseSBmb3IgREVCX0JVSUxEX0FSQ0hfQ1BVIGFuZCBERUJfQlVJTERfQVJDSF9PUy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyMzIKK21zZ2lkICIiCisiSWYgeW91IHN0aWxsIHdpc2ggdG8gc3VwcG9ydCB2ZXJzaW9ucyBvZiBkcGtnLWRldiB0aGF0IGRpZCBub3QgaW5jbHVkZSAiCisiQjxkcGtnLWFyY2hpdGVjdHVyZT4sIHRoZSBmb2xsb3dpbmcgZG9lcyB0aGUgam9iOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI0MgorIywgbm8td3JhcAorbXNnaWQgIiIKKyJcXCZcXHMtMURFQl9CVUlMRF9BUkNIXFxzMCA6PSAkKHNoZWxsIGRwa2cgLS1wcmludC1hcmNoaXRlY3R1cmUpXG4iCisiXFwmXFxzLTFERUJfQlVJTERfR05VX0NQVVxcczAgOj0gJChwYXRzdWJzdCBodXJkLSUsJSwkKFxccy0xREVCX0JVSUxEX0FSQ0hcXHMwKSlcbiIKKyJpZmVxICgkKGZpbHRlci1vdXQgaHVyZC0lLCQoXFxzLTFERUJfQlVJTERfQVJDSFxcczApKSwpXG4iCisiICBcXHMtMURFQl9CVUlMRF9HTlVfU1lTVEVNXFxzMCA6PSBnbnVcbiIKKyJlbHNlXG4iCisiICBcXHMtMURFQl9CVUlMRF9HTlVfU1lTVEVNXFxzMCA6PSBsaW51eC1nbnVcbiIKKyJlbmRpZlxuIgorIkRFQl9CVUlMRF9HTlVfVFlQRT0kKFxccy0xREVCX0JVSUxEX0dOVV9DUFVcXHMwKS0kKFxccy0xREVCX0JVSUxEX0dOVV9TWVNURU1cXHMwKVxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjQ3CisjLCBuby13cmFwCittc2dpZCAiIgorIlxcJlxccy0xREVCX0hPU1RfQVJDSFxcczAgOj0gJChcXHMtMURFQl9CVUlMRF9BUkNIXFxzMClcbiIKKyJcXCZcXHMtMURFQl9IT1NUX0dOVV9DUFVcXHMwIDo9ICQoXFxzLTFERUJfQlVJTERfR05VX0NQVVxcczApXG4iCisiXFwmXFxzLTFERUJfSE9TVF9HTlVfU1lTVEVNXFxzMCA6PSAkKFxccy0xREVCX0JVSUxEX0dOVV9TWVNURU1cXHMwKVxuIgorIlxcJlxccy0xREVCX0hPU1RfR05VX1RZUEVcXHMwIDo9ICQoXFxzLTFERUJfQlVJTERfR05VX1RZUEVcXHMwKVxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjUxCittc2dpZCAiIgorIlB1dCBhIHN1YnNldCBvZiB0aGVzZSBsaW5lcyBhdCB0aGUgdG9wIG9mIHlvdXIgZGViaWFuL3J1bGVzIGZpbGU7IHRoZXNlICIKKyJkZWZhdWx0IHZhbHVlcyB3aWxsIGJlIG92ZXJ3cml0dGVuIGlmIGRwa2ctYXJjaGl0ZWN0dXJlIGlzIHVzZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjU4Cittc2dpZCAiIgorIllvdSBkb24ndCBuZWVkIHRoZSBmdWxsIHNldC4gQ2hvb3NlIGEgY29uc2lzdGVudCBzZXQgd2hpY2ggY29udGFpbnMgdGhlICIKKyJ2YWx1ZXMgeW91IHVzZSBpbiB0aGUgcnVsZXMgZmlsZS4gRm9yIGV4YW1wbGUsIGlmIHlvdSBvbmx5IG5lZWQgdGhlIGhvc3QgIgorIkRlYmlhbiBhcmNoaXRlY3R1cmUsIGBERUJfSE9TVF9BUkNIPVxcYGRwa2cgLS1wcmludC1hcmNoaXRlY3R1cmVcXGAnIGlzICIKKyJzdWZmaWNpZW50ICh0aGlzIGlzIGluZGVlZCB0aGUgRGViaWFuIGFyY2hpdGVjdHVyZSBvZiB0aGUgYnVpbGQgbWFjaGluZSwgYnV0ICIKKyJyZW1lbWJlciB0aGF0IHdlIGFyZSBvbmx5IHRyeWluZyB0byBiZSBiYWNrd2FyZCBjb21wYXRpYmxlIHdpdGggbmF0aXZlICIKKyJjb21waWxhdGlvbikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjYxCittc2dpZCAiIgorIlRoZSBCPC1lPiBhbmQgQjwtaT4gb3B0aW9ucyB3ZXJlIG9ubHkgaW50cm9kdWNlZCBpbiByZWxhdGl2ZWx5IHJlY2VudCAiCisidmVyc2lvbnMgb2YgQjxkcGtnLWFyY2hpdGVjdHVyZT4gKHNpbmNlIGRwa2cgMS4xMy4xMykuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjY1Cittc2dpZCAiIgorIkI8ZHBrZy1idWlsZHBhY2thZ2U+IGFjY2VwdHMgdGhlIEI8LWE+IG9wdGlvbiBhbmQgcGFzc2VzIGl0IHRvIEI8ZHBrZy0iCisiYXJjaGl0ZWN0dXJlPi4gT3RoZXIgZXhhbXBsZXM6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjY3Cittc2dpZCAiQ0M9aTM4Ni1nbnUtZ2NjIGRwa2ctYXJjaGl0ZWN0dXJlIC1jIGRlYmlhbi9ydWxlcyBidWlsZCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI2OQorIywgZnV6enkKK21zZ2lkICJldmFsIFxcYGRwa2ctYXJjaGl0ZWN0dXJlIC11XFxgIgorbXNnc3RyICJCPGRwa2cgLS1wcmludC1hcmNoaXRlY3R1cmU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI3MgorbXNnaWQgIiIKKyJDaGVjayBpZiBhbiBhcmNoaXRlY3R1cmUgaXMgZXF1YWwgdG8gdGhlIGN1cnJlbnQgYXJjaGl0ZWN0dXJlIG9yIGEgZ2l2ZW4gb25lOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI3NAorbXNnaWQgImRwa2ctYXJjaGl0ZWN0dXJlIC1lbGludXgtYWxwaGEiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyNzYKK21zZ2lkICJkcGtnLWFyY2hpdGVjdHVyZSAtYW1pcHMgLWVsaW51eC1taXBzIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6Mjc5Cittc2dpZCAiIgorIkNoZWNrIGlmIHRoZSBjdXJyZW50IGFyY2hpdGVjdHVyZSBvciBhbiBhcmNoaXRlY3R1cmUgcHJvdmlkZWQgd2l0aCAtYSBhcmUgIgorIkxpbnV4IHN5c3RlbXM6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjgxCittc2dpZCAiZHBrZy1hcmNoaXRlY3R1cmUgLWlsaW51eC1hbnkiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyODMKK21zZ2lkICJkcGtnLWFyY2hpdGVjdHVyZSAtYWkzODYgLWlsaW51eC1hbnkiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyODgKK21zZ2lkICIiCisiQWxsIHRoZXNlIGZpbGVzIGhhdmUgdG8gYmUgcHJlc2VudCBmb3IgQjxkcGtnLWFyY2hpdGVjdHVyZT4gdG8gd29yay4gVGhlaXIgIgorImxvY2F0aW9uIGNhbiBiZSBvdmVycmlkZGVuIGF0IHJ1bnRpbWUgd2l0aCB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGUgIgorIkI8RFBLR19EQVRBRElSPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6Mjg4CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkk8L3Vzci9zaGFyZS9kcGtnL2NwdXRhYmxlPiIKK21zZ3N0ciAiSTwvdmFyL2xpYi9kcGtnL2F2YWlsYWJsZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjkxCittc2dpZCAiVGFibGUgb2Yga25vd24gQ1BVIG5hbWVzIGFuZCBtYXBwaW5nIHRvIHRoZWlyIEdOVSBuYW1lLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyOTEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiSTwvdXNyL3NoYXJlL2Rwa2cvb3N0YWJsZT4iCittc2dzdHIgIkk8L3Zhci9saWIvZHBrZy9hdmFpbGFibGU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI5NAorbXNnaWQgIlRhYmxlIG9mIGtub3duIG9wZXJhdGluZyBzeXN0ZW0gbmFtZXMgYW5kIG1hcHBpbmcgdG8gdGhlaXIgR05VIG5hbWUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI5NAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJJPC91c3Ivc2hhcmUvZHBrZy90cmlwbGV0dGFibGU+IgorbXNnc3RyICJJPC92YXIvbGliL2Rwa2cvYXZhaWxhYmxlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyOTgKK21zZ2lkICIiCisiTWFwcGluZyBiZXR3ZWVuIERlYmlhbiBhcmNoaXRlY3R1cmUgdHJpcGxldHMgYW5kIERlYmlhbiBhcmNoaXRlY3R1cmUgbmFtZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MzAyCisjLCBmdXp6eQorbXNnaWQgIkI8ZHBrZy1idWlsZHBhY2thZ2U+KDEpLCBCPGRwa2ctY3Jvc3M+KDEpLiIKK21zZ3N0ciAiQjxkZWI+KDUpLCBCPGRwa2c+KDEpLCBCPGRwa2ctZGViPigxKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MzA3Cittc2dpZCAiIgorIkI8ZHBrZy1hcmNoaXRlY3R1cmU+IGFuZCB0aGlzIG1hbiBwYWdlIHdlcmUgaW5pdGlhbGx5IHdyaXR0ZW4gYnkgTWFyY3VzICIKKyJCcmlua21hbm4gRTxsdD5icmlua21kQGRlYmlhbi5vcmdFPGd0Pi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2cuY2ZnLjU6MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJkcGtnLmNmZyIKK21zZ3N0ciAiZHBrZyIKKworIy4gdHlwZTogVEgKKyM6IGRwa2cuY2ZnLjU6MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICIyMDA5LTA5LTA1IgorbXNnc3RyICIyMDA2LTA0LTA5IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLmNmZy41OjQKK21zZ2lkICJkcGtnLmNmZyAtIGRwa2cgY29uZmlndXJhdGlvbiBmaWxlIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuY2ZnLjU6MTEKK21zZ2lkICIiCisiVGhpcyBmaWxlIGNvbnRhaW5zIGRlZmF1bHQgb3B0aW9ucyBmb3IgZHBrZy4gRWFjaCBsaW5lIGNvbnRhaW5zIGEgc2luZ2xlICIKKyJvcHRpb24gd2hpY2ggaXMgZXhhY3RseSB0aGUgc2FtZSBhcyBhIG5vcm1hbCBjb21tYW5kIGxpbmUgb3B0aW9uIGZvciBkcGtnICIKKyJleGNlcHQgZm9yIHRoZSBsZWFkaW5nIGRhc2hlcyB3aGljaCBhcmUgbm90IHVzZWQgaGVyZS4gUXVvdGVzIHN1cnJvdW5kaW5nICIKKyJvcHRpb24gdmFsdWVzIGFyZSBzdHJpcHBlZC4gQ29tbWVudHMgYXJlIGFsbG93ZWQgYnkgc3RhcnRpbmcgYSBsaW5lIHdpdGggYSAiCisiaGFzaCBzaWduIChcIkI8Iz5cIikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuY2ZnLjU6MTQKKyMsIGZ1enp5CisjfCBtc2dpZCAiSTwvZXRjL2Rwa2cvZHBrZy5jZmc+IgorbXNnaWQgIkk8L2V0Yy9kcGtnL2Rwa2cuY2ZnLmQvWzAtOWEtekEtWl8tXSo+IgorbXNnc3RyICJJPC9ldGMvZHBrZy9kcGtnLmNmZz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuY2ZnLjU6MTgKKyMsIGZ1enp5Cittc2dpZCAiSTx+Ly5kcGtnLmNmZz4iCittc2dzdHIgIkk8L2V0Yy9kcGtnL2Rwa2cuY2ZnPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy5jZmcuNToyNCBkcGtnLWRpdmVydC44OjEzNCBkcGtnLXF1ZXJ5LjE6MjIyIGRwa2ctc3RhdG92ZXJyaWRlLjg6ODYKK21zZ2lkICJCPGRwa2c+KDEpLiIKK21zZ3N0ciAiQjxkcGtnPigxKS4iCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgImRwa2ctYnVpbGRmbGFncyIKK21zZ3N0ciAiZHBrZy1zY2FucGFja2FnZXMiCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIjIwMTEtMDktMTMiCittc2dzdHIgIjIwMDYtMDQtMDkiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjQKK21zZ2lkICJkcGtnLWJ1aWxkZmxhZ3MgLSByZXR1cm5zIGJ1aWxkIGZsYWdzIHRvIHVzZSBkdXJpbmcgcGFja2FnZSBidWlsZCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo4CisjLCBmdXp6eQorbXNnaWQgIkI8ZHBrZy1idWlsZGZsYWdzPiBbSTxvcHRpb24+Li4uXSBbSTxjb21tYW5kPl0iCittc2dzdHIgIkI8ZHBrZz4gW0k8b3B0aW9ucz5dIEk8YWN0aW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTIKK21zZ2lkICIiCisiQjxkcGtnLWJ1aWxkZmxhZ3M+IGlzIGEgdG9vbCB0byByZXRyaWV2ZSBjb21waWxhdGlvbiBmbGFncyB0byB1c2UgZHVyaW5nICIKKyJidWlsZCBvZiBEZWJpYW4gcGFja2FnZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE1Cittc2dpZCAiIgorIlRoZSBkZWZhdWx0IGZsYWdzIGFyZSBkZWZpbmVkIGJ5IHRoZSB2ZW5kb3IgYnV0IHRoZXkgY2FuIGJlIGV4dGVuZGVkLyIKKyJvdmVycmlkZW4gaW4gc2V2ZXJhbCB3YXlzOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTUKKyMsIG5vLXdyYXAKK21zZ2lkICIxLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNworbXNnaWQgInN5c3RlbS13aWRlIHdpdGggQjwvZXRjL2Rwa2cvYnVpbGRmbGFncy5jb25mPjsiCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE3CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIjIiCittc2dpZCAiMi4iCittc2dzdHIgIjIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjIwCittc2dpZCAiIgorImZvciB0aGUgY3VycmVudCB1c2VyIHdpdGggQjwkWERHX0NPTkZJR19IT01FL2Rwa2cvYnVpbGRmbGFncy5jb25mPiB3aGVyZSBCPCIKKyIkWERHX0NPTkZJR19IT01FPiBkZWZhdWx0cyB0byBCPCRIT01FLy5jb25maWc+OyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjAKKyMsIG5vLXdyYXAKK21zZ2lkICIzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyMworbXNnaWQgIiIKKyJ0ZW1wb3JhcmlseSBieSB0aGUgdXNlciB3aXRoIGVudmlyb25tZW50IHZhcmlhYmxlcyAoc2VlIHNlY3Rpb24gIgorIkI8RU5WSVJPTk1FTlQ+KTsiCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjIzCisjLCBuby13cmFwCittc2dpZCAiNC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjYKK21zZ2lkICIiCisiZHluYW1pY2FsbHkgYnkgdGhlIHBhY2thZ2UgbWFpbnRhaW5lciB3aXRoIGVudmlyb25tZW50IHZhcmlhYmxlcyBzZXQgdmlhICIKKyJCPGRlYmlhbi9ydWxlcz4gKHNlZSBzZWN0aW9uIEI8RU5WSVJPTk1FTlQ+KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjgKK21zZ2lkICJUaGUgY29uZmlndXJhdGlvbiBmaWxlcyBjYW4gY29udGFpbiB0d28gdHlwZXMgb2YgZGlyZWN0aXZlczoiCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjI4CisjLCBuby13cmFwCittc2dpZCAiQjxTRVQ+STwgZmxhZyB2YWx1ZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MzEKK21zZ2lkICJPdmVycmlkZSB0aGUgZmxhZyBuYW1lZCBJPGZsYWc+IHRvIGhhdmUgdGhlIHZhbHVlIEk8dmFsdWU+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MzEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPFNUUklQPkk8IGZsYWcgdmFsdWU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjM0Cittc2dpZCAiIgorIlN0cmlwIGZyb20gdGhlIGZsYWcgbmFtZWQgSTxmbGFnPiBhbGwgdGhlIGJ1aWxkIGZsYWdzIGxpc3RlZCBpbiBJPHZhbHVlPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjM0CisjLCBuby13cmFwCittc2dpZCAiQjxBUFBFTkQ+STwgZmxhZyB2YWx1ZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MzgKK21zZ2lkICIiCisiRXh0ZW5kIHRoZSBmbGFnIG5hbWVkIEk8ZmxhZz4gYnkgYXBwZW5kaW5nIHRoZSBvcHRpb25zIGdpdmVuIGluIEk8dmFsdWU+LiAgQSAiCisic3BhY2UgaXMgcHJlcGVuZGVkIHRvIHRoZSBhcHBlbmRlZCB2YWx1ZSBpZiB0aGUgZmxhZydzIGN1cnJlbnQgdmFsdWUgaXMgbm9uLSIKKyJlbXB0eS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjM4CisjLCBuby13cmFwCittc2dpZCAiQjxQUkVQRU5EPkk8IGZsYWcgdmFsdWU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjQyCittc2dpZCAiIgorIkV4dGVuZCB0aGUgZmxhZyBuYW1lZCBJPGZsYWc+IGJ5IHByZXBlbmRpbmcgdGhlIG9wdGlvbnMgZ2l2ZW4gaW4gSTx2YWx1ZT4uICAiCisiQSBzcGFjZSBpcyBhcHBlbmRlZCB0byB0aGUgcHJlcGVuZGVkIHZhbHVlIGlmIHRoZSBmbGFnJ3MgY3VycmVudCB2YWx1ZSBpcyAiCisibm9uLWVtcHR5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo0NQorbXNnaWQgIiIKKyJUaGUgY29uZmlndXJhdGlvbiBmaWxlcyBjYW4gY29udGFpbiBjb21tZW50cyBvbiBsaW5lcyBzdGFydGluZyB3aXRoIGEgaGFzaCAiCisiKCMpLiBFbXB0eSBsaW5lcyBhcmUgYWxzbyBpZ25vcmVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6NDYKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjwtLWRlYnVnPiIKK21zZ2lkICJCPC0tZHVtcD4iCittc2dzdHIgIkI8LS1kZWJ1Zz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjUxCittc2dpZCAiIgorIlByaW50IHRvIHN0YW5kYXJkIG91dHB1dCBhbGwgY29tcGlsYXRpb24gZmxhZ3MgYW5kIHRoZWlyIHZhbHVlcy4gSXQgcHJpbnRzICIKKyJvbmUgZmxhZyBwZXIgbGluZSBzZXBhcmF0ZWQgZnJvbSBpdHMgdmFsdWUgYnkgYW4gZXF1YWwgc2lnbiAiCisiKFwiSTxmbGFnPj1JPHZhbHVlPlwiKS4gVGhpcyBpcyB0aGUgZGVmYXVsdCBhY3Rpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo1MQorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPGxpc3Q+IgorbXNnaWQgIkI8LS1saXN0PiIKK21zZ3N0ciAiQjxsaXN0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6NTYKK21zZ2lkICIiCisiUHJpbnQgdGhlIGxpc3Qgb2YgZmxhZ3Mgc3VwcG9ydGVkIGJ5IHRoZSBjdXJyZW50IHZlbmRvciAob25lIHBlciBsaW5lKS4gU2VlICIKKyJ0aGUgQjxTVVBQT1JURUQgRkxBR1M+IHNlY3Rpb24gZm9yIG1vcmUgaW5mb3JtYXRpb24gYWJvdXQgdGhlbS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjU2CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8LS1zaG93Zm9ybWF0PT5JPGZvcm1hdD4iCittc2dpZCAiQjwtLWV4cG9ydD0+STxmb3JtYXQ+IgorbXNnc3RyICJCPC0tc2hvd2Zvcm1hdD0+STxmb3JtYXQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo2NgorbXNnaWQgIiIKKyJQcmludCB0byBzdGFuZGFyZCBvdXRwdXQgc2hlbGwgKGlmIEk8Zm9ybWF0PiBpcyBCPHNoPikgb3IgbWFrZSAoaWYgSTxmb3JtYXQ+ICIKKyJpcyBCPG1ha2U+KSBjb21tYW5kcyB0aGF0IGNhbiBiZSB1c2VkIHRvIGV4cG9ydCBhbGwgdGhlIGNvbXBpbGF0aW9uIGZsYWdzIGluICIKKyJ0aGUgZW52aXJvbm1lbnQuIElmIEk8Zm9ybWF0PiBpcyBCPGNvbmZpZ3VyZT4gdGhlbiB0aGUgb3V0cHV0IGNhbiBiZSB1c2VkIG9uICIKKyJhIEI8Li9jb25maWd1cmU+IGNvbW1hbmQtbGluZS4gSWYgdGhlIEk8Zm9ybWF0PiB2YWx1ZSBpcyBub3QgZ2l2ZW4sIEI8c2g+IGlzICIKKyJhc3N1bWVkLiBPbmx5IGNvbXBpbGF0aW9uIGZsYWdzIHN0YXJ0aW5nIHdpdGggYW4gdXBwZXIgY2FzZSBjaGFyYWN0ZXIgYXJlICIKKyJpbmNsdWRlZCwgb3RoZXJzIGFyZSBhc3N1bWVkIHRvIG5vdCBiZSBzdWl0YWJsZSBmb3IgdGhlIGVudmlyb25tZW50LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6NjYKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWdldD5JPCBmbGFnPiIKK21zZ3N0ciAiQjwtLWxvZz0+STxmaWxlbmFtZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjcwCittc2dpZCAiIgorIlByaW50IHRoZSB2YWx1ZSBvZiB0aGUgZmxhZyBvbiBzdGFuZGFyZCBvdXRwdXQuIEV4aXRzIHdpdGggMCBpZiB0aGUgZmxhZyBpcyAiCisia25vd24gb3RoZXJ3aXNlIGV4aXRzIHdpdGggMS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjcwCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1vcmlnaW4+STwgZmxhZz4iCittc2dzdHIgIkI8LS1sb2c9Pkk8ZmlsZW5hbWU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo3NQorbXNnaWQgIiIKKyJQcmludCB0aGUgb3JpZ2luIG9mIHRoZSB2YWx1ZSB0aGF0IGlzIHJldHVybmVkIGJ5IEI8LS1nZXQ+LiBFeGl0cyB3aXRoIDAgaWYgIgorInRoZSBmbGFnIGlzIGtub3duIG90aGVyd2lzZSBleGl0cyB3aXRoIDEuIFRoZSBvcmlnaW4gY2FuIGJlIG9uZSBvZiB0aGUgIgorImZvbGxvd2luZyB2YWx1ZXM6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo3NgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPHZlbmRvcj4iCittc2dzdHIgIkI8LS1hZG1pbmRpcj0+STxkaXI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo3OQorbXNnaWQgInRoZSBvcmlnaW5hbCBmbGFnIHNldCBieSB0aGUgdmVuZG9yIGlzIHJldHVybmVkOyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6NzkKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxzeXN0ZW0+IgorbXNnc3RyICJCPC1CPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6ODIKK21zZ2lkICJ0aGUgZmxhZyBpcyBzZXQvbW9kaWZpZWQgYnkgYSBzeXN0ZW0td2lkZSBjb25maWd1cmF0aW9uOyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6ODIKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxxdWVyeT4iCittc2dpZCAiQjx1c2VyPiIKK21zZ3N0ciAiQjxxdWVyeT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjg1Cittc2dpZCAidGhlIGZsYWcgaXMgc2V0L21vZGlmaWVkIGJ5IGEgdXNlci1zcGVjaWZpYyBjb25maWd1cmF0aW9uOyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6ODUKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxlbnY+IgorbXNnc3RyICJCPC1HPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6ODgKK21zZ2lkICJ0aGUgZmxhZyBpcyBzZXQvbW9kaWZpZWQgYnkgYW4gZW52aXJvbm1lbnQtc3BlY2lmaWMgY29uZmlndXJhdGlvbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjk2CisjLCBuby13cmFwCittc2dpZCAiU1VQUE9SVEVEIEZMQUdTIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo5NworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPENGTEFHUz4iCittc2dzdHIgIkI8Q09MVU1OUz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEwMworbXNnaWQgIiIKKyJPcHRpb25zIGZvciB0aGUgQyBjb21waWxlci4gVGhlIGRlZmF1bHQgdmFsdWUgc2V0IGJ5IHRoZSB2ZW5kb3IgaW5jbHVkZXMgSTwtIgorImc+IGFuZCB0aGUgZGVmYXVsdCBvcHRpbWl6YXRpb24gbGV2ZWwgKEk8LU8yPiB1c3VhbGx5LCBvciBJPC1PMD4gaWYgdGhlICIKKyJCPERFQl9CVUlMRF9PUFRJT05TPiBlbnZpcm9ubWVudCB2YXJpYWJsZSBkZWZpbmVzIEk8bm9vcHQ+KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEwMworIywgbm8td3JhcAorbXNnaWQgIkI8Q1BQRkxBR1M+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEwNgorbXNnaWQgIk9wdGlvbnMgZm9yIHRoZSBDIHByZXByb2Nlc3Nvci4gRGVmYXVsdCB2YWx1ZTogZW1wdHkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMDYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPENYWEZMQUdTPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMDkKK21zZ2lkICJPcHRpb25zIGZvciB0aGUgQysrIGNvbXBpbGVyLiBTYW1lIGFzIEI8Q0ZMQUdTPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEwOQorIywgbm8td3JhcAorbXNnaWQgIkI8RkZMQUdTPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMTIKK21zZ2lkICJPcHRpb25zIGZvciB0aGUgRm9ydHJhbiBjb21waWxlci4gU2FtZSBhcyBCPENGTEFHUz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMTIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPExERkxBR1M+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEyMAorbXNnaWQgIiIKKyJPcHRpb25zIHBhc3NlZCB0byB0aGUgY29tcGlsZXIgd2hlbiBsaW5raW5nIGV4ZWN1dGFibGVzIG9yIHNoYXJlZCBvYmplY3RzICIKKyIoaWYgdGhlIGxpbmtlciBpcyBjYWxsZWQgZGlyZWN0bHksIHRoZW4gQjwtV2w+IGFuZCBCPCw+IGhhdmUgdG8gYmUgc3RyaXBwZWQgIgorImZyb20gdGhlc2Ugb3B0aW9ucykuIERlZmF1bHQgdmFsdWU6IGVtcHR5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTIyCisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkk8L2V0Yy9kcGtnL2Rwa2cuY2ZnPiIKK21zZ2lkICJCPC9ldGMvZHBrZy9idWlsZGZsYWdzLmNvbmY+IgorbXNnc3RyICJJPC9ldGMvZHBrZy9kcGtnLmNmZz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEyNQorbXNnaWQgIlN5c3RlbSB3aWRlIGNvbmZpZ3VyYXRpb24gZmlsZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEyNQorIywgbm8td3JhcAorbXNnaWQgIkI8JFhER19DT05GSUdfSE9NRS9kcGtnL2J1aWxkZmxhZ3MuY29uZj4gb3IgQjwkSE9NRS8uY29uZmlnL2Rwa2cvYnVpbGRmbGFncy5jb25mPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMjgKK21zZ2lkICJVc2VyIGNvbmZpZ3VyYXRpb24gZmlsZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTM1Cittc2dpZCAiIgorIlRoZXJlIGFyZSAyIHNldHMgb2YgZW52aXJvbm1lbnQgdmFyaWFibGVzIGRvaW5nIHRoZSBzYW1lIG9wZXJhdGlvbnMsIHRoZSAiCisiZmlyc3Qgb25lIChERUJfSTxmbGFnPl9JPG9wPikgc2hvdWxkIG5ldmVyIGJlIHVzZWQgd2l0aGluIEI8ZGViaWFuL3J1bGVzPi4gIgorIkl0J3MgbWVhbnQgZm9yIGFueSB1c2VyIHRoYXQgd2FudHMgdG8gcmVidWlsZCB0aGUgc291cmNlIHBhY2thZ2Ugd2l0aCAiCisiZGlmZmVyZW50IGJ1aWxkIGZsYWdzLiBUaGUgc2Vjb25kIHNldCAoREVCX0k8ZmxhZz5fTUFJTlRfSTxvcD4pIHNob3VsZCBvbmx5ICIKKyJiZSB1c2VkIGluIEI8ZGViaWFuL3J1bGVzPiBieSBwYWNrYWdlIG1haW50YWluZXJzIHRvIGNoYW5nZSB0aGUgcmVzdWx0aW5nICIKKyJidWlsZCBmbGFncy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEzNQorIywgbm8td3JhcAorbXNnaWQgIkI8REVCXz5JPGZsYWc+QjxfU0VUPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUQorIzogZHBrZy1idWlsZGZsYWdzLjE6MTM3CisjLCBuby13cmFwCittc2dpZCAiQjxERUJfPkk8ZmxhZz5CPF9NQUlOVF9TRVQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE0MQorbXNnaWQgIiIKKyJUaGlzIHZhcmlhYmxlIGNhbiBiZSB1c2VkIHRvIGZvcmNlIHRoZSB2YWx1ZSByZXR1cm5lZCBmb3IgdGhlIGdpdmVuIEk8ZmxhZz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNDEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPERFQl8+STxmbGFnPkI8X1NUUklQPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUQorIzogZHBrZy1idWlsZGZsYWdzLjE6MTQzCisjLCBuby13cmFwCittc2dpZCAiQjxERUJfPkk8ZmxhZz5CPF9NQUlOVF9TVFJJUD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTQ4Cittc2dpZCAiIgorIlRoaXMgdmFyaWFibGUgY2FuIGJlIHVzZWQgdG8gcHJvdmlkZSBhIHNwYWNlIHNlcGFyYXRlZCBsaXN0IG9mIG9wdGlvbnMgdGhhdCAiCisid2lsbCBiZSBzdHJpcHBlZCBmcm9tIHRoZSBzZXQgb2YgZmxhZ3MgcmV0dXJuZWQgZm9yIHRoZSBnaXZlbiBJPGZsYWc+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTQ4CisjLCBuby13cmFwCittc2dpZCAiQjxERUJfPkk8ZmxhZz5CPF9BUFBFTkQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRRCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNTAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPERFQl8+STxmbGFnPkI8X01BSU5UX0FQUEVORD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTU0Cittc2dpZCAiIgorIlRoaXMgdmFyaWFibGUgY2FuIGJlIHVzZWQgdG8gYXBwZW5kIHN1cHBsZW1lbnRhcnkgb3B0aW9ucyB0byB0aGUgdmFsdWUgIgorInJldHVybmVkIGZvciB0aGUgZ2l2ZW4gSTxmbGFnPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE1NAorIywgbm8td3JhcAorbXNnaWQgIkI8REVCXz5JPGZsYWc+QjxfUFJFUEVORD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFEKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE1NgorIywgbm8td3JhcAorbXNnaWQgIkI8REVCXz5JPGZsYWc+QjxfTUFJTlRfUFJFUEVORD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTYwCittc2dpZCAiIgorIlRoaXMgdmFyaWFibGUgY2FuIGJlIHVzZWQgdG8gcHJlcGVuZCBzdXBwbGVtZW50YXJ5IG9wdGlvbnMgdG8gdGhlIHZhbHVlICIKKyJyZXR1cm5lZCBmb3IgdGhlIGdpdmVuIEk8ZmxhZz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNjAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPERFQl9CVUlMRF9NQUlOVF9PUFRJT05TPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNjUKK21zZ2lkICIiCisiVGhpcyB2YXJpYWJsZSBjYW4gYmUgdXNlZCB0byBkaXNhYmxlL2VuYWJsZSB2YXJpb3VzIGhhcmRlbmluZyBidWlsZCBmbGFncyAiCisidGhyb3VnaCB0aGUgQjxoYXJkZW5pbmc+IG9wdGlvbi4gU2VlIHRoZSBCPEhBUkRFTklORz4gc2VjdGlvbiBmb3IgZGV0YWlscy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE2NgorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJXQVJOSU5HIgorbXNnaWQgIkhBUkRFTklORyIKK21zZ3N0ciAi6K2m5ZGKIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNzEKK21zZ2lkICIiCisiU2V2ZXJhbCBjb21waWxlLXRpbWUgb3B0aW9ucyAoZGV0YWlsZWQgYmVsb3cpIGNhbiBiZSB1c2VkIHRvIGhlbHAgaGFyZGVuIGEgIgorInJlc3VsdGluZyBiaW5hcnkgYWdhaW5zdCBtZW1vcnkgY29ycnVwdGlvbiBhdHRhY2tzLCBvciBwcm92aWRlIGFkZGl0aW9uYWwgIgorIndhcm5pbmcgbWVzc2FnZXMgZHVyaW5nIGNvbXBpbGF0aW9uLiBFeGNlcHQgYXMgbm90ZWQgYmVsb3csIHRoZXNlIGFyZSAiCisiZW5hYmxlZCBieSBkZWZhdWx0IGZvciBhcmNoaXRlY3R1cmVzIHRoYXQgc3VwcG9ydCB0aGVtLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNzcKK21zZ2lkICIiCisiRWFjaCBoYXJkZW5pbmcgZmVhdHVyZSBjYW4gYmUgZW5hYmxlZCBhbmQgZGlzYWJsZWQgaW4gdGhlICIKKyJCPERFQl9CVUlMRF9NQUlOVF9PUFRJT05TPiBlbnZpcm9ubWVudCB2YXJpYWJsZSdzIEI8aGFyZGVuaW5nPiB2YWx1ZSB3aXRoICIKKyJ0aGUgXCIrXCIgYW5kIFwiLVwiIG1vZGlmaWVyLiBGb3IgZXhhbXBsZSwgdG8gZW5hYmxlIHRoZSBcInBpZVwiIGZlYXR1cmUgYW5kICIKKyJkaXNhYmxlIHRoZSBcImZvcnRpZnlcIiBmZWF0dXJlIHlvdSBjYW4gZG8gdGhpcyBpbiBCPGRlYmlhbi9ydWxlcz46IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE3OQorIywgbm8td3JhcAorbXNnaWQgIiAgZXhwb3J0IERFQl9CVUlMRF9NQUlOVF9PUFRJT05TPWhhcmRlbmluZz0rcGllLC1mb3J0aWZ5XG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTgzCittc2dpZCAiIgorIlRoZSBzcGVjaWFsIGZlYXR1cmUgQjxhbGw+IGNhbiBiZSB1c2VkIHRvIGVuYWJsZSBvciBkaXNhYmxlIGFsbCBoYXJkZW5pbmcgIgorImZlYXR1cmVzIGF0IHRoZSBzYW1lIHRpbWUuIFRodXMgZGlzYWJsaW5nIGV2ZXJ5dGhpbmcgYW5kIGVuYWJsaW5nIG9ubHkgIgorIlwiZm9ybWF0XCIgYW5kIFwiZm9ydGlmeVwiIGNhbiBiZSBhY2hpZXZlZCB3aXRoOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxODUKKyMsIG5vLXdyYXAKK21zZ2lkICIgIGV4cG9ydCBERUJfQlVJTERfTUFJTlRfT1BUSU9OUz1oYXJkZW5pbmc9LWFsbCwrZm9ybWF0LCtmb3J0aWZ5XG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE4NgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPGZvcm1hdD4iCittc2dzdHIgIkI8LS1zaG93Zm9ybWF0PT5JPGZvcm1hdD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE5OAorbXNnaWQgIiIKKyJUaGlzIHNldHRpbmcgKGVuYWJsZWQgYnkgZGVmYXVsdCkgYWRkcyBCPC1XZm9ybWF0IC1XZm9ybWF0LXNlY3VyaXR5IC0iCisiV2Vycm9yPWZvcm1hdC1zZWN1cml0eT4gdG8gQjxDRkxBR1M+IGFuZCBCPENYWEZMQUdTPi4gVGhpcyB3aWxsIHdhcm4gYWJvdXQgIgorImltcHJvcGVyIGZvcm1hdCBzdHJpbmcgdXNlcywgYW5kIHdpbGwgZmFpbCB3aGVuIGZvcm1hdCBmdW5jdGlvbnMgYXJlIHVzZWQgaW4gIgorImEgd2F5IHRoYXQgdGhhdCByZXByZXNlbnQgcG9zc2libGUgc2VjdXJpdHkgcHJvYmxlbXMuIEF0IHByZXNlbnQsIHRoaXMgd2FybnMgIgorImFib3V0IGNhbGxzIHRvIEI8cHJpbnRmPiBhbmQgQjxzY2FuZj4gZnVuY3Rpb25zIHdoZXJlIHRoZSBmb3JtYXQgc3RyaW5nIGlzICIKKyJub3QgYSBzdHJpbmcgbGl0ZXJhbCBhbmQgdGhlcmUgYXJlIG5vIGZvcm1hdCBhcmd1bWVudHMsIGFzIGluIEI8cHJpbnRmKGZvbyk7IgorIj4gaW5zdGVhZCBvZiBCPHByaW50ZihcIiVzXCIsIGZvbyk7PiBUaGlzIG1heSBiZSBhIHNlY3VyaXR5IGhvbGUgaWYgdGhlICIKKyJmb3JtYXQgc3RyaW5nIGNhbWUgZnJvbSB1bnRydXN0ZWQgaW5wdXQgYW5kIGNvbnRhaW5zIFwiJW5cIi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE5OQorIywgbm8td3JhcAorbXNnaWQgIkI8Zm9ydGlmeT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjEwCittc2dpZCAiIgorIlRoaXMgc2V0dGluZyAoZW5hYmxlZCBieSBkZWZhdWx0KSBhZGRzIEI8LURfRk9SVElGWV9TT1VSQ0U9Mj4gdG8gQjxDRkxBR1M+ICIKKyJhbmQgQjxDWFhGTEFHUz4uIER1cmluZyBjb2RlIGdlbmVyYXRpb24gdGhlIGNvbXBpbGVyIGtub3dzIGEgZ3JlYXQgZGVhbCBvZiAiCisiaW5mb3JtYXRpb24gYWJvdXQgYnVmZmVyIHNpemVzICh3aGVyZSBwb3NzaWJsZSksIGFuZCBhdHRlbXB0cyB0byByZXBsYWNlICIKKyJpbnNlY3VyZSB1bmxpbWl0ZWQgbGVuZ3RoIGJ1ZmZlciBmdW5jdGlvbiBjYWxscyB3aXRoIGxlbmd0aC1saW1pdGVkIG9uZXMuICIKKyJUaGlzIGlzIGVzcGVjaWFsbHkgdXNlZnVsIGZvciBvbGQsIGNydWZ0eSBjb2RlLiAgQWRkaXRpb25hbGx5LCBmb3JtYXQgIgorInN0cmluZ3MgaW4gd3JpdGFibGUgbWVtb3J5IHRoYXQgY29udGFpbiAnJW4nIGFyZSBibG9ja2VkLiBJZiBhbiBhcHBsaWNhdGlvbiAiCisiZGVwZW5kcyBvbiBzdWNoIGEgZm9ybWF0IHN0cmluZywgaXQgd2lsbCBuZWVkIHRvIGJlIHdvcmtlZCBhcm91bmQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjIxMworbXNnaWQgIiIKKyJOb3RlIHRoYXQgZm9yIHRoaXMgb3B0aW9uIHRvIGhhdmUgYW55IGVmZmVjdCwgdGhlIHNvdXJjZSBtdXN0IGFsc28gYmUgIgorImNvbXBpbGVkIHdpdGggQjwtTzE+IG9yIGhpZ2hlci4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjIxMworIywgbm8td3JhcAorbXNnaWQgIkI8c3RhY2twcm90ZWN0b3I+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjIyMgorbXNnaWQgIiIKKyJUaGlzIHNldHRpbmcgKGVuYWJsZWQgYnkgZGVmYXVsdCkgYWRkcyBCPC1mc3RhY2stcHJvdGVjdG9yIC0tcGFyYW09c3NwLSIKKyJidWZmZXItc2l6ZT00PiB0byBCPENGTEFHUz4gYW5kIEI8Q1hYRkxBR1M+LiBUaGlzIGFkZHMgc2FmZXR5IGNoZWNrcyBhZ2FpbnN0ICIKKyJzdGFjayBvdmVyd3JpdGVzLiBUaGlzIHJlbmRlcnMgbWFueSBwb3RlbnRpYWwgY29kZSBpbmplY3Rpb24gYXR0YWNrcyBpbnRvICIKKyJhYm9ydGluZyBzaXR1YXRpb25zLiBJbiB0aGUgYmVzdCBjYXNlIHRoaXMgdHVybnMgY29kZSBpbmplY3Rpb24gIgorInZ1bG5lcmFiaWxpdGllcyBpbnRvIGRlbmlhbCBvZiBzZXJ2aWNlIG9yIGludG8gbm9uLWlzc3VlcyAoZGVwZW5kaW5nIG9uIHRoZSAiCisiYXBwbGljYXRpb24pLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyMjYKK21zZ2lkICIiCisiVGhpcyBmZWF0dXJlIHJlcXVpcmVzIGxpbmtpbmcgYWdhaW5zdCBnbGliYyAob3IgYW5vdGhlciBwcm92aWRlciBvZiAiCisiQjxfX3N0YWNrX2Noa19mYWlsPiksIHNvIG5lZWRzIHRvIGJlIGRpc2FibGVkIHdoZW4gYnVpbGRpbmcgd2l0aCBCPC0iCisibm9zdGRsaWI+IG9yIEI8LWZmcmVlc3RhbmRpbmc+IG9yIHNpbWlsYXIuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyMjcKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxwdXJnZT4iCittc2dpZCAiQjxyZWxybz4iCittc2dzdHIgIkI8cHVyZ2U+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyMzUKK21zZ2lkICIiCisiVGhpcyBzZXR0aW5nIChlbmFibGVkIGJ5IGRlZmF1bHQpIGFkZHMgQjwtV2wsLXoscmVscm8+IHRvIEI8TERGTEFHUz4uICAiCisiRHVyaW5nIHByb2dyYW0gbG9hZCwgc2V2ZXJhbCBFTEYgbWVtb3J5IHNlY3Rpb25zIG5lZWQgdG8gYmUgd3JpdHRlbiB0byBieSAiCisidGhlIGxpbmtlci4gVGhpcyBmbGFncyB0aGUgbG9hZGVyIHRvIHR1cm4gdGhlc2Ugc2VjdGlvbnMgcmVhZC1vbmx5IGJlZm9yZSAiCisidHVybmluZyBvdmVyIGNvbnRyb2wgdG8gdGhlIHByb2dyYW0uIE1vc3Qgbm90YWJseSB0aGlzIHByZXZlbnRzIEdPVCAiCisib3ZlcndyaXRlIGF0dGFja3MuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyMzYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGJpbmRub3c+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjI0MworbXNnaWQgIiIKKyJUaGlzIHNldHRpbmcgKGRpc2FibGVkIGJ5IGRlZmF1bHQpIGFkZHMgQjwtV2wsLXosbm93PiB0byBCPExERkxBR1M+LiBEdXJpbmcgIgorInByb2dyYW0gbG9hZCwgYWxsIGR5bmFtaWMgc3ltYm9scyBhcmUgcmVzb2x2ZWQsIGFsbG93aW5nIGZvciB0aGUgZW50aXJlIFBMVCAiCisidG8gYmUgbWFya2VkIHJlYWQtb25seSAoZHVlIHRvIEI8cmVscm8+IGFib3ZlKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjI0NAorIywgbm8td3JhcAorbXNnaWQgIkI8cGllPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyNTYKK21zZ2lkICIiCisiVGhpcyBzZXR0aW5nIChkaXNhYmxlZCBieSBkZWZhdWx0KSBhZGRzIEI8LWZQSUU+IHRvIEI8Q0ZMQUdTPiBhbmQgIgorIkI8Q1hYRkxBR1M+LCBhbmQgQjwtZlBJRSAtcGllPiB0byBCPExERkxBR1M+LiBQb3NpdGlvbiBJbmRlcGVuZGVudCAiCisiRXhlY3V0YWJsZSBhcmUgbmVlZGVkIHRvIHRha2UgYWR2YW50YWdlIG9mIEFkZHJlc3MgU3BhY2UgTGF5b3V0ICIKKyJSYW5kb21pemF0aW9uLCBzdXBwb3J0ZWQgYnkgc29tZSBrZXJuZWwgdmVyc2lvbnMuIFdoaWxlIEFTTFIgY2FuIGFscmVhZHkgYmUgIgorImVuZm9yY2VkIGZvciBkYXRhIGFyZWFzIGluIHRoZSBzdGFjayBhbmQgaGVhcCAoYnJrIGFuZCBtbWFwKSwgdGhlIGNvZGUgYXJlYXMgIgorIm11c3QgYmUgY29tcGlsZWQgYXMgcG9zaXRpb24taW5kZXBlbmRlbnQuIFNoYXJlZCBsaWJyYXJpZXMgYWxyZWFkeSBkbyB0aGlzICgtIgorImZQSUMpLCBzbyB0aGV5IGdhaW4gQVNMUiBhdXRvbWF0aWNhbGx5LCBidXQgYmluYXJ5IC50ZXh0IHJlZ2lvbnMgbmVlZCB0byBiZSAiCisiYnVpbGQgUElFIHRvIGdhaW4gQVNMUi4gV2hlbiB0aGlzIGhhcHBlbnMsIFJPUCAoUmV0dXJuIE9yaWVudGVkIFByb2dyYW1taW5nKSAiCisiYXR0YWNrcyBhcmUgbXVjaCBoYXJkZXIgc2luY2UgdGhlcmUgYXJlIG5vIHN0YXRpYyBsb2NhdGlvbnMgdG8gYm91bmNlIG9mZiBvZiAiCisiZHVyaW5nIGEgbWVtb3J5IGNvcnJ1cHRpb24gYXR0YWNrLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyNTkKK21zZ2lkICIiCisiVGhpcyBpcyBub3QgY29tcGF0aWJsZSB3aXRoIEI8LWZQSUM+IHNvIGNhcmUgbXVzdCBiZSB0YWtlbiB3aGVuIGJ1aWxkaW5nICIKKyJzaGFyZWQgb2JqZWN0cy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjY1Cittc2dpZCAiIgorIkFkZGl0aW9uYWxseSwgc2luY2UgUElFIGlzIGltcGxlbWVudGVkIHZpYSBhIGdlbmVyYWwgcmVnaXN0ZXIsIHNvbWUgIgorImFyY2hpdGVjdHVyZXMgKG1vc3Qgbm90YWJseSBpMzg2KSBjYW4gc2VlIHBlcmZvcm1hbmNlIGxvc3NlcyBvZiB1cCB0byAxNSUgaW4gIgorInZlcnkgdGV4dC1zZWdtZW50LWhlYXZ5IGFwcGxpY2F0aW9uIHdvcmtsb2FkczsgbW9zdCB3b3JrbG9hZHMgc2VlIGxlc3MgdGhhbiAiCisiMSUuIEFyY2hpdGVjdHVyZXMgd2l0aCBtb3JlIGdlbmVyYWwgcmVnaXN0ZXJzIChlLmcuIGFtZDY0KSAgZG8gbm90IHNlZSBhcyAiCisiaGlnaCBhIHdvcnN0LWNhc2UgcGVuYWx0eS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjY4CisjLCBmdXp6eQorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDEwLTIwMTEgUmFwaGFcXFs6ZV1sIEhlcnR6b2ciCittc2dzdHIgIkNvcHlyaWdodCAyMDAxIEpvZXkgSGVzcyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjcwCisjLCBmdXp6eQorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDExIEtlZXMgQ29vayIKK21zZ3N0ciAiQ29weXJpZ2h0IDIwMDEgSm9leSBIZXNzIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgImRwa2ctYnVpbGRwYWNrYWdlIgorbXNnc3RyICJkcGtnLXNjYW5wYWNrYWdlcyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo0CisjLCBmdXp6eQorbXNnaWQgImRwa2ctYnVpbGRwYWNrYWdlIC0gYnVpbGQgYmluYXJ5IG9yIHNvdXJjZSBwYWNrYWdlcyBmcm9tIHNvdXJjZXMiCittc2dzdHIgImRwa2ctc2NhbnBhY2thZ2VzIC0gUGFja2FnZXMg44OV44Kh44Kk44Or44Gu5L2c5oiQIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjgKKyMsIGZ1enp5Cittc2dpZCAiQjxkcGtnLWJ1aWxkcGFja2FnZT4gW0k8b3B0aW9uPi4uLl0iCittc2dzdHIgIkI8ZHBrZz4gW0k8b3B0aW9ucz5dIEk8YWN0aW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxMworbXNnaWQgIiIKKyJCPGRwa2ctYnVpbGRwYWNrYWdlPiBpcyBhIHByb2dyYW0gdGhhdCBhdXRvbWF0ZXMgdGhlIHByb2Nlc3Mgb2YgYnVpbGRpbmcgYSAiCisiRGViaWFuIHBhY2thZ2UuIEl0IGNvbnNpc3RzIG9mIHRoZSBmb2xsb3dpbmcgc3RlcHM6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEzCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8MS4+IgorbXNnc3RyICJCPC1HPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxNworbXNnaWQgIiIKKyJJdCBwcmVwYXJlcyB0aGUgYnVpbGQgZW52aXJvbm1lbnQgYnkgc2V0dGluZyB2YXJpb3VzIGVudmlyb25tZW50IHZhcmlhYmxlcyAiCisiKHNlZSBCPEVOVklST05NRU5UPikgYW5kIGNhbGxzIEI8ZHBrZy1zb3VyY2UgLS1iZWZvcmUtYnVpbGQ+ICh1bmxlc3MgQjwtVD4gIgorIm9yIEI8LS10YXJnZXQ+IGhhcyBiZWVuIHVzZWQpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxNworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPDIuPiIKK21zZ3N0ciAiQjwtRz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjAKKyMsIGZ1enp5Cittc2dpZCAiIgorIkl0IGNoZWNrcyB0aGF0IHRoZSBidWlsZC1kZXBlbmRlbmNpZXMgYW5kIGJ1aWxkLWNvbmZsaWN0cyBhcmUgc2F0aXNmaWVkICIKKyIodW5sZXNzIEI8LWQ+IGlzIHNwZWNpZmllZCkuIgorbXNnc3RyICJkcGtnLWNoZWNrYnVpbGRkZXBzIC0g44OT44Or44OJ5L6d5a2Y44Go6KGd56qB44Gu44OB44Kn44OD44KvIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPDMuPiIKK21zZ3N0ciAiQjwtRz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjUKK21zZ2lkICIiCisiSWYgYSBzcGVjaWZpYyB0YXJnZXQgaGFzIGJlZW4gc2VsZWN0ZWQgd2l0aCB0aGUgQjwtVD4gb3IgQjwtLXRhcmdldD4gb3B0aW9uLCAiCisiaXQgY2FsbHMgdGhhdCB0YXJnZXQgYW5kIHN0b3BzIGhlcmUuIE90aGVyd2lzZSBpdCBjYWxscyBCPGZha2Vyb290IGRlYmlhbi8iCisicnVsZXMgY2xlYW4+IHRvIGNsZWFuIHRoZSBidWlsZC10cmVlICh1bmxlc3MgQjwtbmM+IGlzIHNwZWNpZmllZCkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjI1CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8NC4+IgorbXNnc3RyICJCPC1HPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyOQorbXNnaWQgIiIKKyJJdCBjYWxscyBCPGRwa2ctc291cmNlIC1iPiB0byBnZW5lcmF0ZSB0aGUgc291cmNlIHBhY2thZ2UgKHVubGVzcyBhIGJpbmFyeS0iCisib25seSBidWlsZCBoYXMgYmVlbiByZXF1ZXN0ZWQgd2l0aCBCPC1iPiwgQjwtQj4gb3IgQjwtQT4pLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyOQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPDUuPiIKK21zZ3N0ciAiQjwtRz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MzYKK21zZ2lkICIiCisiSXQgY2FsbHMgQjxkZWJpYW4vcnVsZXM+IEI8YnVpbGQ+IGZvbGxvd2VkIGJ5IEI8ZmFrZXJvb3QgZGViaWFuL3J1bGVzPiAiCisiSTxiaW5hcnktdGFyZ2V0PiAodW5sZXNzIGEgc291cmNlLW9ubHkgYnVpbGQgaGFzIGJlZW4gcmVxdWVzdGVkIHdpdGggQjwtUz4pLiAiCisiTm90ZSB0aGF0IEk8YmluYXJ5LXRhcmdldD4gaXMgZWl0aGVyIEI8YmluYXJ5PiAoZGVmYXVsdCBjYXNlLCBvciBpZiBCPC1iPiBpcyAiCisic3BlY2lmaWVkKSAgb3IgQjxiaW5hcnktYXJjaD4gKGlmIEI8LUI+IGlzIHNwZWNpZmllZCkgb3IgQjxiaW5hcnktaW5kZXA+IChpZiAiCisiQjwtQT4gaXMgc3BlY2lmaWVkKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MzYKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjw2Lj4iCittc2dzdHIgIkI8LUc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjM5Cittc2dpZCAiIgorIkl0IGNhbGxzIEI8Z3BnPiB0byBzaWduIHRoZSBCPC5kc2M+IGZpbGUgKGlmIGFueSwgdW5sZXNzIEI8LXVzPiBpcyAiCisic3BlY2lmaWVkKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MzkKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjw3Lj4iCittc2dzdHIgIkI8LUc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjQzCittc2dpZCAiIgorIkl0IGNhbGxzIEI8ZHBrZy1nZW5jaGFuZ2VzPiB0byBnZW5lcmF0ZSBhIEI8LmNoYW5nZXM+IGZpbGUuICBNYW55IEI8ZHBrZy0iCisiYnVpbGRwYWNrYWdlPiBvcHRpb25zIGFyZSBmb3J3YXJkZWQgdG8gQjxkcGtnLWdlbmNoYW5nZXM+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo0MworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPDguPiIKK21zZ3N0ciAiQjwtRz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NDYKK21zZ2lkICIiCisiSXQgY2FsbHMgQjxncGc+IHRvIHNpZ24gdGhlIEI8LmNoYW5nZXM+IGZpbGUgKHVubGVzcyBCPC11Yz4gaXMgc3BlY2lmaWVkKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NDYKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjw5Lj4iCittc2dzdHIgIkI8LUc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjQ5Cittc2dpZCAiIgorIklmIEI8LXRjPiBpcyBzcGVjaWZpZWQsIGl0IHdpbGwgY2FsbCBCPGZha2Vyb290IGRlYmlhbi9ydWxlcyBjbGVhbj4gYWdhaW4uICIKKyJGaW5hbGx5IGl0IGNhbGxzIEI8ZHBrZy1zb3VyY2UgLS1hZnRlci1idWlsZD4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjUxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LWI+IgorbXNnc3RyICJCPC1CPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo1NQorIywgZnV6enkKK21zZ2lkICIiCisiU3BlY2lmaWVzIGEgYmluYXJ5LW9ubHkgYnVpbGQsIG5vIHNvdXJjZSBmaWxlcyBhcmUgdG8gYmUgYnVpbHQgYW5kL29yICIKKyJkaXN0cmlidXRlZC4gUGFzc2VkIHRvIEI8ZHBrZy1nZW5jaGFuZ2VzPi4iCittc2dzdHIgImRlYi1vbGQgLSBEZWJpYW4g44OQ44Kk44OK44Oq44OR44OD44Kx44O844K45pen5b2i5byP44OV44Kp44O844Oe44OD44OIIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo1NSBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6MjMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1CPiIKK21zZ3N0ciAiQjwtQj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NTkKK21zZ2lkICIiCisiU3BlY2lmaWVzIGEgYmluYXJ5LW9ubHkgYnVpbGQsIGxpbWl0ZWQgdG8gYXJjaGl0ZWN0dXJlIGRlcGVuZGVudCBwYWNrYWdlcy4gICIKKyJQYXNzZWQgdG8gQjxkcGtnLWdlbmNoYW5nZXM+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo1OQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1BPiIKK21zZ3N0ciAiQjwtRz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NjMKK21zZ2lkICIiCisiU3BlY2lmaWVzIGEgYmluYXJ5LW9ubHkgYnVpbGQsIGxpbWl0ZWQgdG8gYXJjaGl0ZWN0dXJlIGluZGVwZW5kZW50IHBhY2thZ2VzLiAiCisiUGFzc2VkIHRvIEI8ZHBrZy1nZW5jaGFuZ2VzPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NjMgZHBrZy1nZW5jaGFuZ2VzLjE6MjcKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtUz4iCittc2dzdHIgIkI8LUc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjY3CisjLCBmdXp6eQorbXNnaWQgIiIKKyJTcGVjaWZpZXMgYSBzb3VyY2Utb25seSBidWlsZCwgbm8gYmluYXJ5IHBhY2thZ2VzIG5lZWQgdG8gYmUgbWFkZS4gIFBhc3NlZCAiCisidG8gQjxkcGtnLWdlbmNoYW5nZXM+LiIKK21zZ3N0ciAiZGViLW9sZCAtIERlYmlhbiDjg5DjgqTjg4rjg6rjg5Hjg4PjgrHjg7zjgrjml6flvaLlvI/jg5Xjgqnjg7zjg57jg4Pjg4giCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjY3CisjLCBuby13cmFwCittc2dpZCAiQjwtRj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo3MQorbXNnaWQgIiIKKyJTcGVjaWZpZXMgYSBub3JtYWwgZnVsbCBidWlsZCwgYmluYXJ5IGFuZCBzb3VyY2UgcGFja2FnZXMgd2lsbCBiZSBidWlsdC4gICIKKyJUaGlzIGlzIHRoZSBzYW1lIGFzIHRoZSBkZWZhdWx0IGNhc2Ugd2hlbiBubyBidWlsZCBvcHRpb24gaXMgc3BlY2lmaWVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjczCisjLCBmdXp6eQorbXNnaWQgIkI8LS10YXJnZXQ9Pkk8dGFyZ2V0PiIKK21zZ3N0ciAiQjwtLWFib3J0LWFmdGVyPT5JPG51bWJlcj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NzUKKyMsIGZ1enp5Cittc2dpZCAiQjwtLXRhcmdldCA+STx0YXJnZXQ+IgorbXNnc3RyICJCPC0tYWJvcnQtYWZ0ZXI9Pkk8bnVtYmVyPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo3NworIywgZnV6enkKK21zZ2lkICJCPC1UPkk8dGFyZ2V0PiIKK21zZ3N0ciAiQjwtdD58QjwtLXRlc3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjgzCittc2dpZCAiIgorIkNhbGxzIEI8ZGViaWFuL3J1bGVzPiBJPHRhcmdldD4gYWZ0ZXIgaGF2aW5nIHNldHVwIHRoZSBidWlsZCBlbnZpcm9ubWVudCBhbmQgIgorInN0b3BzIHRoZSBwYWNrYWdlIGJ1aWxkIHByb2Nlc3MgaGVyZS4gSWYgQjwtLWFzLXJvb3Q+IGlzIGFsc28gZ2l2ZW4sIHRoZW4gIgorInRoZSBjb21tYW5kIGlzIGV4ZWN1dGVkIGFzIHJvb3QgKHNlZSBCPC1yPikuIE5vdGUgdGhhdCBvZmZpY2lhbCB0YXJnZXRzIHRoYXQgIgorImFyZSByZXF1aXJlZCB0byBiZSBydW4gYXMgcm9vdCBieSB0aGUgRGViaWFuIHBvbGljeSBkbyBub3QgbmVlZCB0aGlzIG9wdGlvbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6ODQKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWFzLXJvb3Q+IgorbXNnc3RyICJCPC0tdGVzdD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6ODgKK21zZ2lkICIiCisiT25seSBtZWFuaW5nZnVsIHRvZ2V0aGVyIHdpdGggQjwtLXRhcmdldD4uIFJlcXVpcmVzIHRoYXQgdGhlIHRhcmdldCBiZSBydW4gIgorIndpdGggcm9vdCByaWdodHMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjkwIGRwa2ctZ2VuY2hhbmdlcy4xOjM2CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LXNpPiIKK21zZ3N0ciAiQjwtQj4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjkyIGRwa2ctZ2VuY2hhbmdlcy4xOjQyCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LXNhPiIKK21zZ3N0ciAiQjwtQj4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjk0IGRwa2ctZ2VuY2hhbmdlcy4xOjQ1CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LXNkPiIKK21zZ3N0ciAiQjwtQj4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjk2IGRwa2ctZ2VuY2hhbmdlcy4xOjQ5IGRwa2ctZ2VuY29udHJvbC4xOjM4CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozNzcKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtdj5JPHZlcnNpb24+IgorbXNnc3RyICJCPC0tdmVyc2lvbj4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjk4IGRwa2ctZ2VuY2hhbmdlcy4xOjU0CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LUM+STxjaGFuZ2VzZGVzY3JpcHRpb24+IgorbXNnc3RyICJCPCA+RTxsdD7plbfjgYToqqzmmI5FPGd0PiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTAwIGRwa2ctZ2VuY2hhbmdlcy4xOjYwCisjLCBuby13cmFwCittc2dpZCAiQjwtbT5JPG1haW50YWluZXJhZGRyZXNzPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxMDIgZHBrZy1nZW5jaGFuZ2VzLjE6NjYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1lPkk8bWFpbnRhaW5lcmFkZHJlc3M+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTA0Cittc2dpZCAiUGFzc2VkIHVuY2hhbmdlZCB0byBCPGRwa2ctZ2VuY2hhbmdlcz4uIFNlZSBpdHMgbWFudWFsIHBhZ2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEwNQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1hPkk8YXJjaGl0ZWN0dXJlPiIKK21zZ3N0ciAiQjwtYSwgLS1uby1hcmNoaXRlY3R1cmU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjExMAorbXNnaWQgIiIKKyJTcGVjaWZ5IHRoZSBEZWJpYW4gYXJjaGl0ZWN0dXJlIHdlIGJ1aWxkIGZvci4gVGhlIGFyY2hpdGVjdHVyZSBvZiB0aGUgIgorIm1hY2hpbmUgd2UgYnVpbGQgb24gaXMgZGV0ZXJtaW5lZCBhdXRvbWF0aWNhbGx5LCBhbmQgaXMgYWxzbyB0aGUgZGVmYXVsdCBmb3IgIgorInRoZSBob3N0IG1hY2hpbmUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTE1Cittc2dpZCAiIgorIlNwZWNpZnkgdGhlIEdOVSBzeXN0ZW0gdHlwZSB3ZSBidWlsZCBmb3IuIEl0IGNhbiBiZSB1c2VkIGluIHBsYWNlIG9mIC1hIG9yICIKKyJhcyBhIGNvbXBsZW1lbnQgdG8gb3ZlcnJpZGUgdGhlIGRlZmF1bHQgR05VIHN5c3RlbSB0eXBlIG9mIHRoZSB0YXJnZXQgRGViaWFuICIKKyJhcmNoaXRlY3R1cmUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjExNQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1qPkk8am9icz4iCittc2dzdHIgIkI8Wy0tXSA+STxmaWxlbmFtZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTI2Cittc2dpZCAiIgorIk51bWJlciBvZiBqb2JzIGFsbG93ZWQgdG8gYmUgcnVuIHNpbXVsdGFuZW91c2x5LCBlcXVpdmFsZW50IHRvIHRoZSBCPG1ha2U+IgorIigxKSAgb3B0aW9uIG9mIHRoZSBzYW1lIG5hbWUuIFdpbGwgYWRkIGl0c2VsZiB0byB0aGUgTUFLRUZMQUdTIGVudmlyb25tZW50ICIKKyJ2YXJpYWJsZSwgd2hpY2ggc2hvdWxkIGNhdXNlIGFsbCBzdWJzZXF1ZW50IG1ha2UgaW52b2NhdGlvbnMgdG8gaW5oZXJpdCB0aGUgIgorIm9wdGlvbi4gQWxzbyBhZGRzIEI8cGFyYWxsZWw9Pkk8am9icz4gdG8gdGhlIERFQl9CVUlMRF9PUFRJT05TIGVudmlyb25tZW50ICIKKyJ2YXJpYWJsZSB3aGljaCBhbGxvd3MgZGViaWFuL3J1bGVzIGZpbGVzIHRvIHVzZSB0aGlzIGluZm9ybWF0aW9uIGZvciB0aGVpciAiCisib3duIHB1cnBvc2VzLiAgVGhlIEI8cGFyYWxsZWw9Pkk8am9icz4gaW4gREVCX0JVSUxEX09QVElPTlMgZW52aXJvbm1lbnQgIgorInZhcmlhYmxlIHdpbGwgb3ZlcnJpZGUgdGhlIEI8LWo+IHZhbHVlIGlmIHRoaXMgb3B0aW9uIGlzIGdpdmVuLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxMjYKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtRD4iCittc2dzdHIgIkI8LUI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEzMAorIywgZnV6enkKK21zZ2lkICIiCisiQ2hlY2sgYnVpbGQgZGVwZW5kZW5jaWVzIGFuZCBjb25mbGljdHM7IGFib3J0IGlmIHVuc2F0aXNmaWVkLiBUaGlzIGlzIHRoZSAiCisiZGVmYXVsdCBiZWhhdmlvci4iCittc2dzdHIgImRwa2ctY2hlY2tidWlsZGRlcHMgLSDjg5Pjg6vjg4nkvp3lrZjjgajooZ3nqoHjga7jg4Hjgqfjg4Pjgq8iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEzMCBkcGtnLWdlbnN5bWJvbHMuMTo0MzIKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtZD4iCittc2dzdHIgIkI8LUI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEzMworIywgZnV6enkKK21zZ2lkICJEbyBub3QgY2hlY2sgYnVpbGQgZGVwZW5kZW5jaWVzIGFuZCBjb25mbGljdHMuIgorbXNnc3RyICJkcGtnLWNoZWNrYnVpbGRkZXBzIC0g44OT44Or44OJ5L6d5a2Y44Go6KGd56qB44Gu44OB44Kn44OD44KvIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxMzMKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtbmM+IgorbXNnc3RyICJCPC1CPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxMzcKK21zZ2lkICIiCisiRG8gbm90IGNsZWFuIHRoZSBzb3VyY2UgdHJlZSAoaW1wbGllcyBCPC1iPiBpZiBub3RoaW5nIGVsc2UgaGFzIGJlZW4gIgorInNlbGVjdGVkIGFtb25nIEI8LUI+LCBCPC1BPiBvciBCPC1TPikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEzNworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC10Yz4iCittc2dzdHIgIkI8LUI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE0MworbXNnaWQgIiIKKyJDbGVhbiB0aGUgc291cmNlIHRyZWUgKHVzaW5nIEk8Z2Fpbi1yb290LWNvbW1hbmQ+IEI8ZGViaWFuL3J1bGVzIGNsZWFuPikgICIKKyJhZnRlciB0aGUgcGFja2FnZSBoYXMgYmVlbiBidWlsdC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTQzCisjLCBuby13cmFwCittc2dpZCAiQjwtcj5JPGdhaW4tcm9vdC1jb21tYW5kPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE2NworbXNnaWQgIiIKKyJXaGVuIEI8ZHBrZy1idWlsZHBhY2thZ2U+IG5lZWRzIHRvIGV4ZWN1dGUgcGFydCBvZiB0aGUgYnVpbGQgcHJvY2VzcyBhcyAiCisicm9vdCwgaXQgcHJlZml4ZXMgdGhlIGNvbW1hbmQgaXQgZXhlY3V0ZXMgd2l0aCBJPGdhaW4tcm9vdC1jb21tYW5kPiBpZiBvbmUgIgorImhhcyBiZWVuIHNwZWNpZmllZC4gT3RoZXJ3aXNlLCBpZiBub25lIGhhcyBiZWVuIHNwZWNpZmllZCwgQjxmYWtlcm9vdD4gd2lsbCAiCisiYmUgdXNlZCBieSBkZWZhdWx0LCBpZiB0aGUgY29tbWFuZCBpcyBwcmVzZW50LiAgSTxnYWluLXJvb3QtY29tbWFuZD4gc2hvdWxkICIKKyJzdGFydCB3aXRoIHRoZSBuYW1lIG9mIGEgcHJvZ3JhbSBvbiB0aGUgQjxQQVRIPiBhbmQgd2lsbCBnZXQgYXMgYXJndW1lbnRzICIKKyJ0aGUgbmFtZSBvZiB0aGUgcmVhbCBjb21tYW5kIHRvIHJ1biBhbmQgdGhlIGFyZ3VtZW50cyBpdCBzaG91bGQgdGFrZS4gICIKKyJJPGdhaW4tcm9vdC1jb21tYW5kPiBjYW4gaW5jbHVkZSBwYXJhbWV0ZXJzICh0aGV5IG11c3QgYmUgc3BhY2Utc2VwYXJhdGVkKSAiCisiYnV0IG5vIHNoZWxsIG1ldGFjaGFyYWN0ZXJzLiAgSTxnYWluLXJvb3QtY29tbWFuZD4gbWlnaHQgdHlwaWNhbGx5IGJlICIKKyJCPGZha2Vyb290PiwgQjxzdWRvPiwgQjxzdXBlcj4gb3IgQjxyZWFsbHk+LiAgQjxzdT4gaXMgbm90IHN1aXRhYmxlLCBzaW5jZSAiCisiaXQgY2FuIG9ubHkgaW52b2tlIHRoZSB1c2VyJ3Mgc2hlbGwgd2l0aCBCPC1jPiBpbnN0ZWFkIG9mIHBhc3NpbmcgYXJndW1lbnRzICIKKyJpbmRpdmlkdWFsbHkgdG8gdGhlIGNvbW1hbmQgdG8gYmUgcnVuLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxNjcKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtUj5JPHJ1bGVzLWZpbGU+IgorbXNnc3RyICJCPC0tZnN5cy10YXJmaWxlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxNzgKK21zZ2lkICIiCisiQnVpbGRpbmcgYSBEZWJpYW4gcGFja2FnZSB1c3VhbGx5IGludm9sdmVzIGludm9raW5nIEI8ZGViaWFuL3J1bGVzPiBhcyBhICIKKyJjb21tYW5kIHdpdGggc2V2ZXJhbCBzdGFuZGFyZCBwYXJhbWV0ZXJzLiBXaXRoIHRoaXMgb3B0aW9uIGl0J3MgcG9zc2libGUgdG8gIgorInVzZSBhbm90aGVyIHByb2dyYW0gaW52b2NhdGlvbiB0byBidWlsZCB0aGUgcGFja2FnZSAoaXQgY2FuIGluY2x1ZGUgc3BhY2UgIgorInNlcGFyYXRlZCBwYXJhbWV0ZXJzKS4gIEFsdGVybmF0aXZlbHkgaXQgY2FuIGJlIHVzZWQgdG8gZXhlY3V0ZSB0aGUgc3RhbmRhcmQgIgorInJ1bGVzIGZpbGUgd2l0aCBhbm90aGVyIG1ha2UgcHJvZ3JhbSAoZm9yIGV4YW1wbGUgYnkgdXNpbmcgQjwvdXNyL2xvY2FsL2Jpbi8iCisibWFrZSAtZiBkZWJpYW4vcnVsZXM+IGFzIEk8cnVsZXMtZmlsZT4pLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxNzgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1wPkk8c2lnbi1jb21tYW5kPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE4OAorbXNnaWQgIiIKKyJXaGVuIEI8ZHBrZy1idWlsZHBhY2thZ2U+IG5lZWRzIHRvIGV4ZWN1dGUgR1BHIG9yIFBHUCB0byBzaWduIGEgc291cmNlICIKKyJjb250cm9sIChCPC5kc2M+KSBmaWxlIG9yIGEgQjwuY2hhbmdlcz4gZmlsZSBpdCB3aWxsIHJ1biBJPHNpZ24tY29tbWFuZD4gIgorIihzZWFyY2hpbmcgdGhlIEI8UEFUSD4gaWYgbmVjZXNzYXJ5KSBpbnN0ZWFkIG9mIEI8Z3BnPi4gSTxzaWduLWNvbW1hbmQ+IHdpbGwgIgorImdldCBhbGwgdGhlIGFyZ3VtZW50cyB0aGF0IEI8cGdwPiB3b3VsZCBoYXZlIGdvdHRlbi4gSWYgSTxzaWduLWNvbW1hbmQ+ICIKKyJ0YWtlcyBpdHMgYXJndW1lbnRzIGluIEdQRyByYXRoZXIgdGhhbiBQR1Agc3R5bGUsIHlvdSBzaG91bGQgZ2l2ZSB0aGUgQjwtIgorInNncGc+IG9wdGlvbi4gSTxzaWduLWNvbW1hbmQ+IHNob3VsZCBub3QgY29udGFpbiBzcGFjZXMgb3IgYW55IG90aGVyIHNoZWxsICIKKyJtZXRhY2hhcmFjdGVycy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTg4CisjLCBuby13cmFwCittc2dpZCAiQjwtaz5JPGtleS1pZD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxOTEKKyMsIGZ1enp5Cittc2dpZCAiU3BlY2lmeSBhIGtleS1JRCB0byB1c2Ugd2hlbiBzaWduaW5nIHBhY2thZ2VzLiIKK21zZ3N0ciAi44GT44KM44Gv5paw44GX44GE44OR44OD44Kx44O844K444KS5L2c44KL5pmC44Gr5L2/44GG44GT44Go44GM44Gn44GN44KL44CCIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxOTEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtdXM+IgorbXNnc3RyICJCPC1CPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxOTQKKyMsIGZ1enp5Cittc2dpZCAiRG8gbm90IHNpZ24gdGhlIHNvdXJjZSBwYWNrYWdlLiIKK21zZ3N0ciAi44OR44OD44Kx44O844K444Gu55+t44GE6Kqs5piO5paHIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxOTQKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtdWM+IgorbXNnc3RyICJCPC1CPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxOTcKKyMsIGZ1enp5Cittc2dpZCAiRG8gbm90IHNpZ24gdGhlIEI8LmNoYW5nZXM+IGZpbGUuIgorbXNnc3RyICLjg5Hjg4PjgrHjg7zjgrjjga7nn63jgYToqqzmmI7mlociCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTk5CisjLCBmdXp6eQorbXNnaWQgIkI8LWk+W0k8cmVnZXhwPl0iCittc2dzdHIgIkI8LS1saXN0PiBbSTxFPGx0Pmdsb2ItcGF0dGVybkU8Z3Q+Pl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjAxCisjLCBmdXp6eQorbXNnaWQgIkI8LUk+STxbcGF0dGVybl0+IgorbXNnc3RyICJCPC0tbGlzdD4gW0k8RTxsdD5nbG9iLXBhdHRlcm5FPGd0Pj5dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIwMworbXNnaWQgIkI8LXM+W0I8bnNBa3VyS1VSPl0iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMDUKKyMsIGZ1enp5Cittc2dpZCAiQjwtej4sIEI8LVo+IgorbXNnc3RyICJCPC10PnxCPC0tdGVzdD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjA4Cittc2dpZCAiUGFzc2VkIHVuY2hhbmdlZCB0byBCPGRwa2ctc291cmNlPi4gU2VlIGl0cyBtYW51YWwgcGFnZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjA5CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8LS1kZXNjcmlwdGlvbj0+STx4eHg+IgorbXNnaWQgIkI8LS1zb3VyY2Utb3B0aW9uPT5JPG9wdD4iCittc2dzdHIgIkI8LS1kZXNjcmlwdGlvbj0+STx4eHg+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIxMgorbXNnaWQgIlBhc3Mgb3B0aW9uIEk8b3B0PiB0byBCPGRwa2ctc291cmNlPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjEyCisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8LS1kZXNjcmlwdGlvbj0+STx4eHg+IgorbXNnaWQgIkI8LS1jaGFuZ2VzLW9wdGlvbj0+STxvcHQ+IgorbXNnc3RyICJCPC0tZGVzY3JpcHRpb249Pkk8eHh4PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMTUKK21zZ2lkICJQYXNzIG9wdGlvbiBJPG9wdD4gdG8gQjxkcGtnLWdlbmNoYW5nZXM+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIxOQorIywgZnV6enkKK21zZ2lkICJCPC0tYWRtaW5kaXIgPkk8ZGlyPiIKK21zZ3N0ciAiQjwtLWFkbWluZGlyPT5JPGRpcj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjIyIGRwa2ctY2hlY2tidWlsZGRlcHMuMToyMyBkcGtnLXF1ZXJ5LjE6MTIyCisjOiBkcGtnLXNobGliZGVwcy4xOjIxNSBkcGtnLXRyaWdnZXIuMTo0MworbXNnaWQgIiIKKyJDaGFuZ2UgdGhlIGxvY2F0aW9uIG9mIHRoZSBCPGRwa2c+IGRhdGFiYXNlLiBUaGUgZGVmYXVsdCBsb2NhdGlvbiBpcyBJPC92YXIvIgorImxpYi9kcGtnPi4iCittc2dzdHIgIiIKKyJCPGRwa2c+IOODh+ODvOOCv+ODmeODvOOCueOBruS9jee9ruOCkuWkieabtOOBmeOCi+OAguODh+ODleOCqeODq+ODiOOBruS9jee9ruOBryBJPC92YXIvbGliL2Rwa2c+IOOBpyIKKyLjgYLjgovjgIIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIyMyBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6MzMgZHBrZy1kaXN0YWRkZmlsZS4xOjMyCisjOiBkcGtnLWRlYi4xOjE3MiBkcGtnLWdlbmNoYW5nZXMuMToxMzEgZHBrZy1nZW5jb250cm9sLjE6MTIxCisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0NDMgZHBrZy1uYW1lLjE6NTggZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjMzCisjOiBkcGtnLXF1ZXJ5LjE6MTEwIGRwa2ctc2NhbnBhY2thZ2VzLjE6OTYgZHBrZy1zaGxpYmRlcHMuMToyMTUKKyM6IGRwa2ctc291cmNlLjE6OTYgZHBrZy1zcGxpdC4xOjEyNiBkcGtnLXRyaWdnZXIuMTozMQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1oPiwgQjwtLWhlbHA+IgorbXNnc3RyICJCPC1IPnxCPC0taGVscD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjM0Cittc2dpZCAiIgorIkV2ZW4gaWYgQjxkcGtnLWJ1aWxkcGFja2FnZT4gZXhwb3J0cyBzb21lIHZhcmlhYmxlcywgQjxkZWJpYW4vcnVsZXM+IHNob3VsZCAiCisibm90IHJlbHkgb24gdGhlaXIgcHJlc2VuY2UgYW5kIHNob3VsZCBpbnN0ZWFkIHVzZSB0aGUgcmVzcGVjdGl2ZSBpbnRlcmZhY2UgIgorInRvIHJldHJpZXZlIHRoZSBuZWVkZWQgdmFsdWVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMzQKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiVmFyaWFibGVzIHNldCBieSBkcGtnLWFyY2hpdGVjdHVyZSIKK21zZ3N0ciAiQjxkcGtnIC0tcHJpbnQtYXJjaGl0ZWN0dXJlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMzgKK21zZ2lkICIiCisiQjxkcGtnLWFyY2hpdGVjdHVyZT4gaXMgY2FsbGVkIHdpdGggdGhlIEI8LWE+IGFuZCBCPC10PiBwYXJhbWV0ZXJzICIKKyJmb3J3YXJkZWQuIEFueSB2YXJpYWJsZSB0aGF0IGlzIG91dHB1dCBieSBpdHMgQjwtcz4gb3B0aW9uIGlzIGludGVncmF0ZWQgaW4gIgorInRoZSBidWlsZCBlbnZpcm9ubWVudC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjM4CisjLCBuby13cmFwCittc2dpZCAiQ29tcGlsZXIgZmxhZ3MgYXJlIG5vIGxvbmdlciBleHBvcnRlZCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjI0MworbXNnaWQgIiIKKyJCZXR3ZWVuIHZlcnNpb25zIDEuMTQuMTcgYW5kIDEuMTYuMSwgQjxkcGtnLWJ1aWxkcGFja2FnZT4gZXhwb3J0ZWQgY29tcGlsZXIgIgorImZsYWdzIChCPENGTEFHUz4sIEI8Q1hYRkxBR1M+LCBCPEZGTEFHUz4sIEI8Q1BQRkxBR1M+IGFuZCBCPExERkxBR1M+KSB3aXRoICIKKyJ2YWx1ZXMgYXMgcmV0dXJuZWQgYnkgQjxkcGtnLWJ1aWxkZmxhZ3M+LiBUaGlzIGlzIG5vIGxvbmdlciB0aGUgY2FzZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyNDgKK21zZ2lkICIiCisiSXQgc2hvdWxkIGJlIHBvc3NpYmxlIHRvIHNwZWNpZnkgc3BhY2VzIGFuZCBzaGVsbCBtZXRhY2hhcmFjdGVycyBpbiBhbmQgIgorImluaXRpYWwgYXJndW1lbnRzIGZvciBJPGdhaW4tcm9vdC1jb21tYW5kPiBhbmQgSTxzaWduLWNvbW1hbmQ+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjI1NgorIywgZnV6enkKK21zZ2lkICIiCisiQjxkcGtnLXNvdXJjZT4oMSksIEI8ZHBrZy1hcmNoaXRlY3R1cmU+KDEpLCBCPGRwa2ctYnVpbGRmbGFncz4oMSksIEI8ZHBrZy0iCisiZ2VuY2hhbmdlcz4oMSksIEI8ZmFrZXJvb3Q+KDEpLCBCPGdwZz4oMSkuIgorbXNnc3RyICIiCisiQjxkZWI+KDUpLCBCPGRlYi1jb250cm9sPig1KSwgQjxkcGtnPigxKSwgQjxkcGtnLWRlYj4oMSksIEI8ZmluZD4oMSksICIKKyJCPHhhcmdzPigxKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjY1CisjLCBmdXp6eQorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDA4LTIwMTAgUmFwaGFcXFs6ZV1sIEhlcnR6b2ciCittc2dzdHIgIkNvcHlyaWdodCAyMDAxIEpvZXkgSGVzcyIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctY2hlY2tidWlsZGRlcHMuMToxCisjLCBuby13cmFwCittc2dpZCAiZHBrZy1jaGVja2J1aWxkZGVwcyIKK21zZ3N0ciAiZHBrZy1jaGVja2J1aWxkZGVwcyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1jaGVja2J1aWxkZGVwcy4xOjQKK21zZ2lkICJkcGtnLWNoZWNrYnVpbGRkZXBzIC0gY2hlY2sgYnVpbGQgZGVwZW5kZW5jaWVzIGFuZCBjb25mbGljdHMiCittc2dzdHIgImRwa2ctY2hlY2tidWlsZGRlcHMgLSDjg5Pjg6vjg4nkvp3lrZjjgajooZ3nqoHjga7jg4Hjgqfjg4Pjgq8iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctY2hlY2tidWlsZGRlcHMuMTo5CisjLCBmdXp6eQorbXNnaWQgIkI8ZHBrZy1jaGVja2J1aWxkZGVwcz4gW0k8b3B0aW9uPi4uLl0gW0k8Y29udHJvbC1maWxlPl0iCittc2dzdHIgIkI8ZHBrZy1jaGVja2J1aWxkZGVwcz4gQjwtQj4gW0k844Kz44Oz44OI44Ot44O844Or44OV44Kh44Kk44OrPl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctY2hlY2tidWlsZGRlcHMuMToxNAorbXNnaWQgIiIKKyJUaGlzIHByb2dyYW0gY2hlY2tzIHRoZSBpbnN0YWxsZWQgcGFja2FnZXMgaW4gdGhlIHN5c3RlbSBhZ2FpbnN0IHRoZSBidWlsZCAiCisiZGVwZW5kZW5jaWVzIGFuZCBidWlsZCBjb25mbGljdHMgbGlzdGVkIGluIHRoZSBjb250cm9sIGZpbGUuIElmIGFueSBhcmUgbm90ICIKKyJtZXQsIGl0IGRpc3BsYXlzIHRoZW0gYW5kIGV4aXRzIHdpdGggYSBub256ZXJvIHJldHVybiBjb2RlLiIKK21zZ3N0ciAiIgorIuOBk+OBruODl+ODreOCsOODqeODoOOBr+OCs+ODs+ODiOODreODvOODq+ODleOCoeOCpOODq+S4reOBq+ODquOCueODiOOBleOCjOOBpuOBhOOCi+ODk+ODq+ODieS+neWtmOOBqOODk+ODq+ODieihnSIKKyLnqoHjgavplqLjgZfjgabjgIHjgrfjgrnjg4bjg6DjgavjgqTjg7Pjgrnjg4jjg7zjg6vjgZXjgozjgabjgYTjgovjg5Hjg4PjgrHjg7zjgrjjgpLjg4Hjgqfjg4Pjgq/jgZnjgovjgILjgoLjgZfjgIEiCisi6Laz44KK44Gq44GE44KC44Gu44KE6KGd56qB44GX44Gm44GE44KL54mp44GM44GC44KL44Gq44KJ44CB44Gd44KM44KJ44KS6KGo56S644GX44GmIDAg5Lul5aSW44Gu6L+U44KK5YCk44KS6L+U44GXIgorIuOBpue1guS6huOBmeOCi+OAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1jaGVja2J1aWxkZGVwcy4xOjE3CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJCeSBkZWZhdWx0LCBJPGRlYmlhbi9jb250cm9sPiBpcyByZWFkLCBidXQgYW4gYWx0ZXJuYXRlIGNvbnRyb2wgZmlsZW5hbWUgIgorI3wgIm1heSBiZSBzcGVjaWZpZWQgb24gdGhlIGNvbW1hbmQgbGluZS4iCittc2dpZCAiIgorIkJ5IGRlZmF1bHQsIEI8ZGViaWFuL2NvbnRyb2w+IGlzIHJlYWQsIGJ1dCBhbiBhbHRlcm5hdGUgY29udHJvbCBmaWxlbmFtZSBtYXkgIgorImJlIHNwZWNpZmllZCBvbiB0aGUgY29tbWFuZCBsaW5lLiIKK21zZ3N0ciAiIgorIuODh+ODleOCqeODq+ODiOOBp+OBr+OAgUk8ZGViaWFuL2NvbnRyb2w+IOOBjOiqreOBvuOCjOOCi+OBjOOAgeWIpeOBruOCs+ODs+ODiOODreODvOODq+ODleOCoeOCpOODq+WQjeOCkiIKKyLjgrPjg57jg7Pjg4njg6njgqTjg7PjgavmjIflrprjgZnjgovjgZPjgajjgoLjgafjgY3jgovjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctY2hlY2tidWlsZGRlcHMuMToyNworbXNnaWQgIiIKKyJJZ25vcmUgSTxCdWlsZC1EZXBlbmRzLUluZGVwPiBsaW5lcy4gVXNlIHdoZW4gbm8gYXJjaC1pbmRlcCBwYWNrYWdlcyB3aWxsIGJlICIKKyJidWlsdC4iCittc2dzdHIgIiIKKyJJPEJ1aWxkLURlcGVuZHMtSW5kZXA+IOihjOOCkueEoeimluOBmeOCi+OAguOCouODvOOCreODhuOCr+ODgeODo+OBq+mdnuS+neWtmOOBquODkeODg+OCseODvOOCuOOBjOODk+ODqyIKKyLjg4njgZXjgozjgarjgYTmmYLjgavliKnnlKjjgZnjgovjgIIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6MjcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1kID5JPGJ1aWxkLWRlcGVuZHMtc3RyaW5nPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1jaGVja2J1aWxkZGVwcy4xOjI5CisjLCBuby13cmFwCittc2dpZCAiQjwtYyA+STxidWlsZC1jb25mbGljdHMtc3RyaW5nPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6MzMKK21zZ2lkICIiCisiVXNlIHRoZSBnaXZlbiBidWlsZCBkZXBlbmRlbmNpZXMvY29uZmxpY3RzIGluc3RlYWQgb2YgdGhvc2UgY29udGFpbmVkIGluIHRoZSAiCisiSTxkZWJpYW4vY29udHJvbD4gZmlsZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1jaGVja2J1aWxkZGVwcy4xOjQyCisjLCBmdXp6eQorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDAxIEpvZXkgSGVzcyIKK21zZ3N0ciAiQ29weXJpZ2h0IDIwMDEgSm9leSBIZXNzIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1kaXN0YWRkZmlsZS4xOjEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiZHBrZy1kaXN0YWRkZmlsZSIKK21zZ3N0ciAiZHBrZy1zdGF0b3ZlcnJpZGUiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGlzdGFkZGZpbGUuMTo0Cittc2dpZCAiZHBrZy1kaXN0YWRkZmlsZSAtIGFkZCBlbnRyaWVzIHRvIGRlYmlhbi9maWxlcyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpc3RhZGRmaWxlLjE6OAorIywgZnV6enkKK21zZ2lkICJCPGRwa2ctZGlzdGFkZGZpbGU+IFtJPG9wdGlvbj4uLi5dSTwgZmlsZW5hbWUgc2VjdGlvbiBwcmlvcml0eT4iCittc2dzdHIgIkI8ZHBrZz4gW0k8b3B0aW9ucz5dIEk8YWN0aW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXN0YWRkZmlsZS4xOjEzCittc2dpZCAiQjxkcGtnLWRpc3RhZGRmaWxlPiBhZGRzIGFuIGVudHJ5IGZvciBhIG5hbWVkIGZpbGUgdG8gQjxkZWJpYW4vZmlsZXM+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpc3RhZGRmaWxlLjE6MTgKK21zZ2lkICIiCisiSXQgdGFrZXMgdGhyZWUgbm9uLW9wdGlvbiBhcmd1bWVudHMsIHRoZSBmaWxlbmFtZSBhbmQgdGhlIHNlY3Rpb24gYW5kICIKKyJwcmlvcml0eSBmb3IgdGhlIEI8LmNoYW5nZXM+IGZpbGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGlzdGFkZGZpbGUuMToyNgorbXNnaWQgIiIKKyJUaGUgZmlsZW5hbWUgc2hvdWxkIGJlIHNwZWNpZmllZCByZWxhdGl2ZSB0byB0aGUgZGlyZWN0b3J5IHdoZXJlIEI8ZHBrZy0iCisiZ2VuY2hhbmdlcz4gd2lsbCBleHBlY3QgdG8gZmluZCB0aGUgZmlsZXMsIHVzdWFsbHkgQjwuLj4sIHJhdGhlciB0aGFuIGJlaW5nICIKKyJhIHBhdGhuYW1lIHJlbGF0aXZlIHRvIHRoZSBjdXJyZW50IGRpcmVjdG9yeSB3aGVuIEI8ZHBrZy1kaXN0YWRkZmlsZT4gaXMgcnVuLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kaXN0YWRkZmlsZS4xOjI4IGRwa2ctZ2VuY2hhbmdlcy4xOjEwMyBkcGtnLWdlbmNvbnRyb2wuMTo2OQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1mPkk8ZmlsZXNsaXN0ZmlsZT4iCittc2dzdHIgIkI8LS1mc3lzLXRhcmZpbGU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpc3RhZGRmaWxlLjE6MzIgZHBrZy1nZW5jb250cm9sLjE6NzMKK21zZ2lkICIiCisiUmVhZCBvciB3cml0ZSB0aGUgbGlzdCBvZiBmaWxlcyB0byBiZSB1cGxvYWRlZCBoZXJlLCByYXRoZXIgdGhhbiB1c2luZyAiCisiQjxkZWJpYW4vZmlsZXM+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kaXN0YWRkZmlsZS4xOjQwIGRwa2ctZ2VuY2hhbmdlcy4xOjEzOSBkcGtnLWdlbmNvbnRyb2wuMToxMzQKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxkZWJpYW4vZmlsZXM+IgorbXNnc3RyICJCPGluZm9kZXNjPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXN0YWRkZmlsZS4xOjQ2Cittc2dpZCAiIgorIlRoZSBsaXN0IG9mIGdlbmVyYXRlZCBmaWxlcyB3aGljaCBhcmUgcGFydCBvZiB0aGUgdXBsb2FkIGJlaW5nIHByZXBhcmVkLiAgIgorIkI8ZHBrZy1kaXN0YWRkZmlsZT4gY2FuIGJlIHVzZWQgdG8gYWRkIGFkZGl0aW9uYWwgZmlsZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLWRlYi4xOjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLWRlYiIKK21zZ3N0ciAiZHBrZy1kZWIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6NAorbXNnaWQgImRwa2ctZGViIC0gRGViaWFuIHBhY2thZ2UgYXJjaGl2ZSAoLmRlYikgbWFuaXB1bGF0aW9uIHRvb2wiCittc2dzdHIgImRwa2ctZGViIC0gRGViaWFuIOODkeODg+OCseODvOOCuOOCouODvOOCq+OCpOODliAoLmRlYikg5pON5L2c44OE44O844OrIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjgKKyMsIGZ1enp5Cittc2dpZCAiQjxkcGtnLWRlYj4gW0k8b3B0aW9uPi4uLl0gSTxjb21tYW5kPiIKK21zZ3N0ciAiQjxkcGtnPiBbSTxvcHRpb25zPl0gSTxhY3Rpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjEyCittc2dpZCAiIgorIkI8ZHBrZy1kZWI+IHBhY2tzLCB1bnBhY2tzIGFuZCBwcm92aWRlcyBpbmZvcm1hdGlvbiBhYm91dCBEZWJpYW4gYXJjaGl2ZXMuIgorbXNnc3RyICJCPGRwa2ctZGViPiDjga/jgIFEZWJpYW4g44Ki44O844Kr44Kk44OW44Gu5L2c5oiQ44CB5bGV6ZaL44CB5oOF5aCx44Gu6KGo56S644KS44GZ44KL44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjE2Cittc2dpZCAiVXNlIEI8ZHBrZz4gdG8gaW5zdGFsbCBhbmQgcmVtb3ZlIHBhY2thZ2VzIGZyb20geW91ciBzeXN0ZW0uIgorbXNnc3RyICIiCisi44OR44OD44Kx44O844K444KS44K344K544OG44Og44Gr44Kk44Oz44K544OI44O844Or44GZ44KL44Go44GN44KE5YmK6Zmk44GZ44KL44Go44GN44Gr44GvIEI8ZHBrZz4g44KS5L2/44GG44GTIgorIuOBqOOAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToyNgorbXNnaWQgIiIKKyJZb3UgY2FuIGFsc28gaW52b2tlIEI8ZHBrZy1kZWI+IGJ5IGNhbGxpbmcgQjxkcGtnPiB3aXRoIHdoYXRldmVyIG9wdGlvbnMgeW91ICIKKyJ3YW50IHRvIHBhc3MgdG8gQjxkcGtnLWRlYj4uIEI8ZHBrZz4gd2lsbCBzcG90IHRoYXQgeW91IHdhbnRlZCBCPGRwa2ctZGViPiAiCisiYW5kIHJ1biBpdCBmb3IgeW91LiIKK21zZ3N0ciAiIgorIuOBvuOBn+OAgSBCPGRwa2c+IOOBq+WvvuOBl+OBpiBCPGRwa2ctZGViPiDjga7jgqrjg5fjgrfjg6fjg7PjgpLmjIflrprjgZnjgovjgZPjgajjgafjgIEgQjxkcGtnPiDjgpIiCisi6YCa44GX44GmIEI8ZHBrZy1kZWI+IOOCkuWRvOOBs+WHuuOBmeOBk+OBqOOBjOOBp+OBjeOCi+OAgiBCPGRwa2c+IOOBr+OAgeOCquODl+OCt+ODp+ODs+OBjCBCPGRwa2ctIgorImRlYj4g44Gu44Kq44OX44K344On44Oz44Gn44GC44KL44Go5Yik5pat44GZ44KL44Go44CBIEI8ZHBrZy1kZWI+IOOCkui1t+WLleOBmeOCi+OAgiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MjgKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtYj4sIEI8LS1idWlsZD4gSTxkaXJlY3Rvcnk+IFtJPGFyY2hpdmU+fEk8ZGlyZWN0b3J5Pl0iCittc2dzdHIgIkI8ZHBrZy1kZWI+IEI8LWI+fEI8LS1idWlsZD4gSTxkaXJlY3Rvcnk+IFtJPGFyY2hpdmU+fEk8ZGlyZWN0b3J5Pl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6NDAKK21zZ2lkICIiCisiQ3JlYXRlcyBhIGRlYmlhbiBhcmNoaXZlIGZyb20gdGhlIGZpbGVzeXN0ZW0gdHJlZSBzdG9yZWQgaW4gSTxkaXJlY3Rvcnk+LiAiCisiSTxkaXJlY3Rvcnk+IG11c3QgaGF2ZSBhIEI8REVCSUFOPiBzdWJkaXJlY3RvcnksIHdoaWNoIGNvbnRhaW5zIHRoZSBjb250cm9sICIKKyJpbmZvcm1hdGlvbiBmaWxlcyBzdWNoIGFzIHRoZSBjb250cm9sIGZpbGUgaXRzZWxmLiBUaGlzIGRpcmVjdG9yeSB3aWxsICIKKyJJPG5vdD4gYXBwZWFyIGluIHRoZSBiaW5hcnkgcGFja2FnZSdzIGZpbGVzeXN0ZW0gYXJjaGl2ZSwgYnV0IGluc3RlYWQgdGhlICIKKyJmaWxlcyBpbiBpdCB3aWxsIGJlIHB1dCBpbiB0aGUgYmluYXJ5IHBhY2thZ2UncyBjb250cm9sIGluZm9ybWF0aW9uIGFyZWEuIgorbXNnc3RyICIiCisiSTxkaXJlY3Rvcnk+IOOBq+agvOe0jeOBleOCjOOBpuOBhOOCi+ODleOCoeOCpOODq+OCt+OCueODhuODoOacqOOBi+OCiSBkZWJpYW4g44Ki44O844Kr44Kk44OW44KS5L2c5oiQ44GZIgorIuOCi+OAgiBJPGRpcmVjdG9yeT4g44Gr44Gv44CBY29udHJvbCDjg5XjgqHjgqTjg6vjgarjganjga7liLblvqHmg4XloLHjg5XjgqHjgqTjg6vjga7jgYLjgosgIgorIkI8REVCSUFOPiDjgrXjg5bjg4fjgqPjg6zjgq/jg4jjg6rjgYzlv4XjgZrlrZjlnKjjgZfjgarjgZHjgozjgbDjgarjgonjgarjgYTjgIIgREVCSUFOIOODh+OCo+ODrOOCr+ODiOODqiIKKyLjga/jg5DjgqTjg4rjg6rjg5Hjg4PjgrHjg7zjgrjjga7jg5XjgqHjgqTjg6vjgrfjgrnjg4bjg6Djg7vjgqLjg7zjgqvjgqTjg5bjgavjga9JPOWQq+OBvuOCjOOBquOBhD7jgILjgZ3jga7jgYvjgo8iCisi44KK44CBREVCSUFOIOODh+OCo+ODrOOCr+ODiOODquS7peS4i+OBq+OBguOBo+OBn+ODleOCoeOCpOODq+OBr+ODkOOCpOODiuODquODkeODg+OCseODvOOCuOWItuW+oeaDheWgseOCqOODquOCoiIKKyLjgavnva7jgYvjgozjgovjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6NTIKK21zZ2lkICIiCisiVW5sZXNzIHlvdSBzcGVjaWZ5IEI8LS1ub2NoZWNrPiwgQjxkcGtnLWRlYj4gd2lsbCByZWFkIEI8REVCSUFOL2NvbnRyb2w+IGFuZCAiCisicGFyc2UgaXQuIEl0IHdpbGwgY2hlY2sgaXQgZm9yIHN5bnRheCBlcnJvcnMgYW5kIG90aGVyIHByb2JsZW1zLCBhbmQgZGlzcGxheSAiCisidGhlIG5hbWUgb2YgdGhlIGJpbmFyeSBwYWNrYWdlIGJlaW5nIGJ1aWx0LiAgQjxkcGtnLWRlYj4gd2lsbCBhbHNvIGNoZWNrIHRoZSAiCisicGVybWlzc2lvbnMgb2YgdGhlIG1haW50YWluZXIgc2NyaXB0cyBhbmQgb3RoZXIgZmlsZXMgZm91bmQgaW4gdGhlIEI8REVCSUFOPiAiCisiY29udHJvbCBpbmZvcm1hdGlvbiBkaXJlY3RvcnkuIgorbXNnc3RyICIiCisiQjwtLW5vY2hlY2s+IOOCkuaMh+WumuOBl+OBquOBhOOBi+OBjuOCiuOAgSBCPGRwa2ctZGViPiDjga8gQjxERUJJQU4vY29udHJvbD4g44KS6Kqt44G/44CB6KejIgorIuaekOOBmeOCi+OAgiBkcGtnLWRlYiDjga/jgIHmlofms5Xjgqjjg6njg7zjgoTjgZ3jga7ku5bjga7llY/poYzjga7jg4Hjgqfjg4Pjgq/jgpLjgZfjgIHjgZ3jgZfjgabjgIHmp4vnr4nkuK0iCisi44Gu44OQ44Kk44OK44Oq44OR44OD44Kx44O844K45ZCN44KS6KGo56S644GZ44KL44CCIEI8ZHBrZy1kZWI+IOOBr+OBvuOBn+OAgSBCPERFQklBTj4g566h55CG5oOF5aCxIgorIuODh+OCo+ODrOOCr+ODiOODquOBq+OBguOCi+OAgeeuoeeQhuOCueOCr+ODquODl+ODiOOChOOBneOBruS7luOBruODleOCoeOCpOODq+OBruODkeODvOODn+ODg+OCt+ODp+ODs+OCkuODgeOCp+ODgyIKKyLjgq/jgZnjgovjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6NTkKK21zZ2lkICIiCisiSWYgbm8gSTxhcmNoaXZlPiBpcyBzcGVjaWZpZWQgdGhlbiBCPGRwa2ctZGViPiB3aWxsIHdyaXRlIHRoZSBwYWNrYWdlIGludG8gIgorInRoZSBmaWxlIEk8ZGlyZWN0b3J5PkI8LmRlYj4uIgorbXNnc3RyICIiCisi44KC44GX44CBIEk8YXJjaGl2ZT4g44KS5oyH5a6a44GX44Gq44GE5aC05ZCI44CBIEI8ZHBrZy1kZWI+IOOBr+ODkeODg+OCseODvOOCuOOCkiAiCisiSTxkaXJlY3Rvcnk+QjwuZGViPiDjgajjgYTjgYblkI3liY3jgafkvZzmiJDjgZnjgovjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6NjEKK21zZ2lkICJJZiB0aGUgYXJjaGl2ZSB0byBiZSBjcmVhdGVkIGFscmVhZHkgZXhpc3RzIGl0IHdpbGwgYmUgb3ZlcndyaXR0ZW4uIgorbXNnc3RyICLjgoLjgZfjgIHjgZnjgafjgavjgqLjg7zjgqvjgqTjg5bjgYzkvZzmiJDjgZXjgozjgablrZjlnKjjgZfjgabjgYTjgovloLTlkIjjgIHkuIrmm7jjgY3jgZnjgovjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6NzcKK21zZ2lkICIiCisiSWYgdGhlIHNlY29uZCBhcmd1bWVudCBpcyBhIGRpcmVjdG9yeSB0aGVuIEI8ZHBrZy1kZWI+IHdpbGwgd3JpdGUgdG8gdGhlICIKKyJmaWxlIEk8cGFja2FnZT5CPF8+STx2ZXJzaW9uPkI8Xz5JPGFyY2g+QjwuZGViPiwgb3IgIgorIkk8cGFja2FnZT5CPF8+STx2ZXJzaW9uPkI8LmRlYj4gaWYgbm8gQjxBcmNoaXRlY3R1cmU+IGZpZWxkIGlzIHByZXNlbnQgaW4gIgorInRoZSBwYWNrYWdlIGNvbnRyb2wgZmlsZS4gV2hlbiBhIHRhcmdldCBkaXJlY3RvcnkgaXMgc3BlY2lmaWVkLCByYXRoZXIgdGhhbiAiCisiYSBmaWxlLCB0aGUgQjwtLW5vY2hlY2s+IG9wdGlvbiBtYXkgbm90IGJlIHVzZWQgKHNpbmNlIEI8ZHBrZy1kZWI+IG5lZWRzIHRvICIKKyJyZWFkIGFuZCBwYXJzZSB0aGUgcGFja2FnZSBjb250cm9sIGZpbGUgdG8gZGV0ZXJtaW5lIHdoaWNoIGZpbGVuYW1lIHRvIHVzZSkuIgorbXNnc3RyICIiCisiMiDnlarnm67jga7lvJXjgY3mlbDjgYzjg4fjgqPjg6zjgq/jg4jjg6rjga7loLTlkIjjgIEgQjxkcGtnLWRlYj4g44GvICIKKyJJPHBhY2thZ2U+QjxfPkk8dmVyc2lvbj5CPF8+STxhcmNoPkI8LmRlYj4g44G+44Gf44GvIEk8cGFja2FnZT5CPF8+STx2ZXJzaW9uPkI8LiIKKyJkZWI+ICjjg5Hjg4PjgrHjg7zjgrjliLblvqHjg5XjgqHjgqTjg6vjgasgQjxBcmNoaXRlY3R1cmU+IOODleOCo+ODvOODq+ODieOBjOOBquOBhOWgtOWQiCnjgajjgYTjgYYiCisi44OV44Kh44Kk44Or44KS5L2c5oiQ44GZ44KL44CC44Ki44O844Kr44Kk44OW44Gu5Luj44KP44KK44Gr44OH44Kj44Os44Kv44OI44Oq44KS5oyH5a6a44GZ44KL44Go44GN44Gr44Gv44CBIEI8LS0iCisibm9jaGVjaz4g44Kq44OX44K344On44Oz44Gv5L2/55So44GX44Gm44Gv44GE44GR44Gq44GEKCBCPGRwa2ctZGViPiDjga/jgIHkvb/nlKjjgZnjgovjg5XjgqHjgqTjg6vlkI3jgpIiCisi6Kq/44G544KL44Gf44KB44Gr44CB44OR44OD44Kx44O844K45Yi25b6h44OV44Kh44Kk44Or44KS6Kqt44KT44Gn6Kej5p6Q44GZ44KL5b+F6KaB44GM44GC44KL44GL44KJKeOAgiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6NzcKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtST4sIEI8LS1pbmZvPiBJPGFyY2hpdmU+IFtJPGNvbnRyb2wtZmlsZS1uYW1lPi4uLl0iCittc2dzdHIgIkI8ZHBrZy1kZWI+IEI8LUk+fEI8LS1pbmZvPiBJPGFyY2hpdmU+IFtJPGNvbnRyb2wtZmlsZS1uYW1lPiAuLl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6ODAKK21zZ2lkICJQcm92aWRlcyBpbmZvcm1hdGlvbiBhYm91dCBhIGJpbmFyeSBwYWNrYWdlIGFyY2hpdmUuIgorbXNnc3RyICLjg5DjgqTjg4rjg6rjg5Hjg4PjgrHjg7zjgrjjgqLjg7zjgqvjgqTjg5bjga7mg4XloLHjgpLooajnpLrjgZnjgovjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6ODUKK21zZ2lkICIiCisiSWYgbm8gSTxjb250cm9sLWZpbGUtbmFtZT5zIGFyZSBzcGVjaWZpZWQgdGhlbiBpdCB3aWxsIHByaW50IGEgc3VtbWFyeSBvZiAiCisidGhlIGNvbnRlbnRzIG9mIHRoZSBwYWNrYWdlIGFzIHdlbGwgYXMgaXRzIGNvbnRyb2wgZmlsZS4iCittc2dzdHIgIiIKKyLjgoLjgZcgSTxjb250cm9sLWZpbGUtbmFtZT4g44GM5oyH5a6a44GV44KM44Gm44GE44Gq44GE5aC05ZCI44CB5Yi25b6h44OV44Kh44Kk44Or5LiA6Kan44Go44CB44OR44ODIgorIuOCseODvOOCuOOBruS4rei6q+OBruimgee0hOOCkuihqOekuuOBmeOCi+OAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMTo5MworbXNnaWQgIiIKKyJJZiBhbnkgSTxjb250cm9sLWZpbGUtbmFtZT5zIGFyZSBzcGVjaWZpZWQgdGhlbiBCPGRwa2ctZGViPiB3aWxsIHByaW50IHRoZW0gIgorImluIHRoZSBvcmRlciB0aGV5IHdlcmUgc3BlY2lmaWVkOyBpZiBhbnkgb2YgdGhlIGNvbXBvbmVudHMgd2VyZW4ndCBwcmVzZW50ICIKKyJpdCB3aWxsIHByaW50IGFuIGVycm9yIG1lc3NhZ2UgdG8gc3RkZXJyIGFib3V0IGVhY2ggb25lIGFuZCBleGl0IHdpdGggc3RhdHVzICIKKyIyLiIKK21zZ3N0ciAiIgorIuOCguOBlyBJPGNvbnRyb2wtZmlsZS1uYW1lPiDjgpLmjIflrprjgZfjgZ/loLTlkIjjgIEgQjxkcGtnLWRlYj4g44Gv5oyH5a6a44GX44Gf6aCG44Gn44OV44Kh44Kk44OrIgorIuWQjeOCkuihqOekuuOBmeOCi+OAguOCguOBl+aMh+WumuOBl+OBn+ODleOCoeOCpOODq+OBruOBqeOCjOOBi+OBjOWtmOWcqOOBl+OBquOBkeOCjOOBsOOAgeWtmOWcqOOBl+OBquOBi+OBo+OBnyIKKyLjg5XjgqHjgqTjg6vjgavlr77jgZfjgabjgZ3jgozjgZ7jgozjgqjjg6njg7zjg6Hjg4Pjgrvjg7zjgrjjgpLooajnpLrjgZfjgIHjgZ3jgZfjgabntYLkuobjgrnjg4bjg7zjgr/jgrkgMiDjgafntYIiCisi5LqG44GZ44KL44CCIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMTo5MworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1XPiwgQjwtLXNob3c+IEk8YXJjaGl2ZT4iCittc2dzdHIgIkI8ZHBrZy1kZWI+IEI8LWM+fEI8LS1jb250ZW50cz4gSTxhcmNoaXZlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxMDAKKyMsIGZ1enp5Cittc2dpZCAiIgorIlByb3ZpZGVzIGluZm9ybWF0aW9uIGFib3V0IGEgYmluYXJ5IHBhY2thZ2UgYXJjaGl2ZSBpbiB0aGUgZm9ybWF0IHNwZWNpZmllZCAiCisiYnkgdGhlIEI8LS1zaG93Zm9ybWF0PiBhcmd1bWVudC4gVGhlIGRlZmF1bHQgZm9ybWF0IGRpc3BsYXlzIHRoZSBwYWNrYWdlJ3MgIgorIm5hbWUgYW5kIHZlcnNpb24gb24gb25lIGxpbmUsIHNlcGFyYXRlZCBieSBhIHRhYnVsYXRvci4iCittc2dzdHIgIiIKKyLjg5DjgqTjg4rjg6rjg5Hjg4PjgrHjg7zjgrjjgqLjg7zjgqvjgqTjg5bjga7mg4XloLHjgpIgQjwtLXNob3dmb3JtYXQ+IOOBruW8leOBjeaVsOOBp+aMh+WumuOBl+OBn+W9ouW8j+OBpyIKKyLooajnpLrjgZnjgovjgILjg4fjg5Xjgqnjg6vjg4jjga7lh7rlipvlvaLlvI/jga/jgIHkuIDooYzjgZTjgajjgavjg5Hjg4PjgrHjg7zjgrjlkI3jgajjg5Djg7zjgrjjg6fjg7PjgpLjgr/jg5bjgaciCisi5Yy65YiH44Gj44Gf44KC44Gu44Gn44GC44KL44CCIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToxMDAKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtZj4sIEI8LS1maWVsZD4gSTxhcmNoaXZlPiBbSTxjb250cm9sLWZpZWxkLW5hbWU+Li4uXSIKK21zZ3N0ciAiQjxkcGtnLWRlYj4gQjwtZj58QjwtLWZpZWxkPiBJPGFyY2hpdmU+IFtJPGNvbnRyb2wtZmllbGQtbmFtZT4gLi4uXSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxMDMKK21zZ2lkICJFeHRyYWN0cyBjb250cm9sIGZpbGUgaW5mb3JtYXRpb24gZnJvbSBhIGJpbmFyeSBwYWNrYWdlIGFyY2hpdmUuIgorbXNnc3RyICLjg5DjgqTjg4rjg6rjg5Hjg4PjgrHjg7zjgrjjgqLjg7zjgqvjgqTjg5bjgYvjgonliLblvqHjg5XjgqHjgqTjg6vmg4XloLHjgpLlj5bjgorlh7rjgZnjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTA3Cittc2dpZCAiIgorIklmIG5vIEI8Y29udHJvbC1maWxlLWZpZWxkPnMgYXJlIHNwZWNpZmllZCB0aGVuIGl0IHdpbGwgcHJpbnQgdGhlIHdob2xlICIKKyJjb250cm9sIGZpbGUuIgorbXNnc3RyICIiCisiQjxjb250cm9sLWZpbGUtZmllbGQ+IOOBjOaMh+WumuOBleOCjOOBpuOBhOOBquOBhOWgtOWQiOOAgeWItuW+oeODleOCoeOCpOODq+OBmeOBueOBpuOCkuihqOekuuOBmeOCi+OAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxMTYKK21zZ2lkICIiCisiSWYgYW55IGFyZSBzcGVjaWZpZWQgdGhlbiBCPGRwa2ctZGViPiB3aWxsIHByaW50IHRoZWlyIGNvbnRlbnRzLCBpbiB0aGUgIgorIm9yZGVyIGluIHdoaWNoIHRoZXkgYXBwZWFyIGluIHRoZSBjb250cm9sIGZpbGUuIElmIG1vcmUgdGhhbiBvbmUgQjxjb250cm9sLSIKKyJmaWxlLWZpZWxkPiBpcyBzcGVjaWZpZWQgdGhlbiBCPGRwa2ctZGViPiB3aWxsIHByZWNlZGUgZWFjaCB3aXRoIGl0cyBmaWVsZCAiCisibmFtZSAoYW5kIGEgY29sb24gYW5kIHNwYWNlKS4iCittc2dzdHIgIiIKKyLjgoLjgZfkvZXjgYvmjIflrprjgZXjgozjgabjgYTjgovloLTlkIjjgIEgQjxkcGtnLWRlYj4g44Gv44Gd44Gu5YaF5a6544KS5Yi25b6h44OV44Kh44Kk44Or44Gr54++44KP44KM44KL6aCGIgorIuW6j+OBp+ihqOekuuOBmeOCi+OAguOCguOBl+OAgeikh+aVsOOBriBCPGNvbnRyb2wtZmlsZS1maWVsZD4g44GM5oyH5a6a44GV44KM44Gf5aC05ZCI44CBIEI8ZHBrZy0iCisiZGViPiDjga/jgIHjgZ3jgozjgZ7jgozjga7mg4XloLHjga7liY3jgavjg5XjgqPjg7zjg6vjg4nlkI0o44Gd44GX44Gm44Kz44Ot44Oz44Go56m655m9KeOCkuihqOekuuOBmeOCi+OAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxMTgKK21zZ2lkICJObyBlcnJvcnMgYXJlIHJlcG9ydGVkIGZvciBmaWVsZHMgcmVxdWVzdGVkIGJ1dCBub3QgZm91bmQuIgorbXNnc3RyICLmjIflrprjgZfjgZ/jg5XjgqPjg7zjg6vjg4njgYzjgb/jgaTjgYvjgonjgarjgYTloLTlkIjjgafjgoLjgqjjg6njg7zjgpLloLHlkYrjgZfjgarjgYTjgIIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRlYi4xOjExOAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1jPiwgQjwtLWNvbnRlbnRzPiBJPGFyY2hpdmU+IgorbXNnc3RyICJCPGRwa2ctZGViPiBCPC1jPnxCPC0tY29udGVudHM+IEk8YXJjaGl2ZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTI0Cittc2dpZCAiIgorIkxpc3RzIHRoZSBjb250ZW50cyBvZiB0aGUgZmlsZXN5c3RlbSB0cmVlIGFyY2hpdmUgcG9ydGlvbiBvZiB0aGUgcGFja2FnZSAiCisiYXJjaGl2ZS4gSXQgaXMgY3VycmVudGx5IHByb2R1Y2VkIGluIHRoZSBmb3JtYXQgZ2VuZXJhdGVkIGJ5IEI8dGFyPidzICIKKyJ2ZXJib3NlIGxpc3RpbmcuIgorbXNnc3RyICIiCisi44OR44OD44Kx44O844K444Ki44O844Kr44Kk44OW44Gr5ZCr44G+44KM44KL44OV44Kh44Kk44Or44K344K544OG44Og5pyo44Gu5YaF5a6544Gu5LiA6Kan44KS6KGo56S644GZ44KL44CC54++5ZyoIgorIuOBruODkOODvOOCuOODp+ODs+OBr+OAgSBCPHRhcj4g44Gu5YaX6ZW35Ye65YqbKC12IOOCquODl+OCt+ODp+ODsynjgpLjgZ3jga7jgb7jgb7ooajnpLrjgZnjgovjgIIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRlYi4xOjEyNAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC14PiwgQjwtLWV4dHJhY3Q+IEk8YXJjaGl2ZSBkaXJlY3Rvcnk+IgorbXNnc3RyICJCPGRwa2ctZGViPiBCPC1lPnxCPC0tY29udHJvbD4gSTxhcmNoaXZlIGRpcmVjdG9yeT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTI4Cittc2dpZCAiIgorIkV4dHJhY3RzIHRoZSBmaWxlc3lzdGVtIHRyZWUgZnJvbSBhIHBhY2thZ2UgYXJjaGl2ZSBpbnRvIHRoZSBzcGVjaWZpZWQgIgorImRpcmVjdG9yeS4iCittc2dzdHIgIiIKKyLjg5Hjg4PjgrHjg7zjgrjjgqLjg7zjgqvjgqTjg5bjgYvjgonjg5XjgqHjgqTjg6vjgrfjgrnjg4bjg6DmnKjjgpLjgIHmjIflrprjgZfjgZ/jg4fjgqPjg6zjgq/jg4jjg6rjgavlsZXplovjgZkiCisi44KL44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjEzNAorbXNnaWQgIiIKKyJOb3RlIHRoYXQgZXh0cmFjdGluZyBhIHBhY2thZ2UgdG8gdGhlIHJvb3QgZGlyZWN0b3J5IHdpbGwgSTxub3Q+IHJlc3VsdCBpbiBhICIKKyJjb3JyZWN0IGluc3RhbGxhdGlvbiEgVXNlIEI8ZHBrZz4gdG8gaW5zdGFsbCBwYWNrYWdlcy4iCittc2dzdHIgIiIKKyLjg6vjg7zjg4jjg4fjgqPjg6zjgq/jg4jjg6rjgafjg5Hjg4PjgrHjg7zjgrjjgpLlsZXplovjgZnjgovjgZPjgajjga/mraPjgZfjgYTjgqTjg7Pjgrnjg4jjg7zjg6vjgavjga9JPOOBquOCieOBqiIKKyLjgYQ+44GT44Go44Gr5rOo5oSP44GZ44KL44GT44GoISDjg5Hjg4PjgrHjg7zjgrjjga7jgqTjg7Pjgrnjg4jjg7zjg6vjgavjga8gQjxkcGtnPiDjgpLkvb/jgYbjgbnjgY3jgafjgYIiCisi44KL44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjEzOAorIywgZnV6enkKK21zZ2lkICIiCisiSTxkaXJlY3Rvcnk+IChidXQgbm90IGl0cyBwYXJlbnRzKSB3aWxsIGJlIGNyZWF0ZWQgaWYgbmVjZXNzYXJ5LCBhbmQgaXRzICIKKyJwZXJtaXNzaW9ucyBtb2RpZmllZCB0byBtYXRjaCB0aGUgY29udGVudHMgb2YgdGhlIHBhY2thZ2UuIgorbXNnc3RyICIiCisiSTxkaXJlY3Rvcnk+ICjopqrjgoTjgZ3jgozjgojjgorkuIrjga7jg4fjgqPjg6zjgq/jg4jjg6rjga/lkKvjgb7jgarjgYQp44Gv5b+F6KaB44GM44GC44KM44Gw5L2c5oiQ44GV44KMIgorIuOCi+OAgiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MTM4CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LVg+LCBCPC0tdmV4dHJhY3Q+IEk8YXJjaGl2ZSBkaXJlY3Rvcnk+IgorbXNnc3RyICJCPGRwa2ctZGViPiBCPC1lPnxCPC0tY29udHJvbD4gSTxhcmNoaXZlIGRpcmVjdG9yeT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTQ1CisjLCBmdXp6eQorbXNnaWQgIiIKKyJJcyBsaWtlIEI8LS1leHRyYWN0PiAoQjwteD4pICB3aXRoIEI8LS12ZXJib3NlPiAoQjwtdj4pICB3aGljaCBwcmludHMgYSAiCisibGlzdGluZyBvZiB0aGUgZmlsZXMgZXh0cmFjdGVkIGFzIGl0IGdvZXMuIgorbXNnc3RyICIiCisiQjwtLXZleHRyYWN0PiAoQjwtWD4pIOOBr+ePvuWcqOWxlemWi+S4reOBruODleOCoeOCpOODq+OCkuihqOekuuOBmeOCi+OAgiBCPC0tZXh0cmFjdD4gKEI8LSIKKyJ4Pikg44Gv44Ko44Op44O844GM55m655Sf44GX44Gq44GE6ZmQ44KK5L2V44KC6KGo56S644GX44Gq44GE44CCIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToxNDUKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtUj4sIEI8LS1yYXctZXh0cmFjdD4gSTxhcmNoaXZlIGRpcmVjdG9yeT4iCittc2dzdHIgIkI8ZHBrZy1kZWI+IEI8LWU+fEI8LS1jb250cm9sPiBJPGFyY2hpdmUgZGlyZWN0b3J5PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxNTAKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIkV4dHJhY3RzIHRoZSBmaWxlc3lzdGVtIHRyZWUgZnJvbSBhIHBhY2thZ2UgYXJjaGl2ZSBpbnRvIHRoZSBzcGVjaWZpZWQgIgorI3wgImRpcmVjdG9yeS4iCittc2dpZCAiIgorIkV4dHJhY3RzIHRoZSBmaWxlc3lzdGVtIHRyZWUgZnJvbSBhIHBhY2thZ2UgYXJjaGl2ZSBpbnRvIGEgc3BlY2lmaWVkICIKKyJkaXJlY3RvcnksIGFuZCB0aGUgY29udHJvbCBpbmZvcm1hdGlvbiBmaWxlcyBpbnRvIGEgREVCSUFOIHN1YmRpcmVjdG9yeSBvZiAiCisidGhlIHNwZWNpZmllZCBkaXJlY3RvcnkuIgorbXNnc3RyICIiCisi44OR44OD44Kx44O844K444Ki44O844Kr44Kk44OW44GL44KJ44OV44Kh44Kk44Or44K344K544OG44Og5pyo44KS44CB5oyH5a6a44GX44Gf44OH44Kj44Os44Kv44OI44Oq44Gr5bGV6ZaL44GZIgorIuOCi+OAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxNTIgZHBrZy1kZWIuMToxNzIKK21zZ2lkICIiCisiVGhlIHRhcmdldCBkaXJlY3RvcnkgKGJ1dCBub3QgaXRzIHBhcmVudHMpIHdpbGwgYmUgY3JlYXRlZCBpZiBuZWNlc3NhcnkuIgorbXNnc3RyICIiCisi5oyH5a6a44GX44Gf44OH44Kj44Os44Kv44OI44OqKOimquOChOOBneOCjOOCiOOCiuS4iuOBruODh+OCo+ODrOOCr+ODiOODquOBr+WQq+OBvuOBquOBhCnjga/lv4XopoHjgYzjgYLjgozjgbDkvZwiCisi5oiQ44GV44KM44KL44CCIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToxNTIKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWZzeXMtdGFyZmlsZT4gSTxhcmNoaXZlPiIKK21zZ3N0ciAiQjxkcGtnLWRlYiAtLWZzeXMtdGFyZmlsZT4gSTxhcmNoaXZlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxNjEKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIkV4dHJhY3RzIHRoZSBmaWxlc3lzdGVtIHRyZWUgZGF0YSBmcm9tIGEgYmluYXJ5IHBhY2thZ2UgYW5kIHNlbmRzIGl0IHRvICIKKyN8ICJzdGFuZGFyZCBvdXRwdXQgaW4gQjx0YXI+IGZvcm1hdC4gVG9nZXRoZXIgd2l0aCBCPHRhcj4oMSkgIHRoaXMgY2FuIGJlICIKKyN8ICJ1c2VkIHRvIGV4dHJhY3QgYSBwYXJ0aWN1bGFyIGZpbGUgZnJvbSBhIHBhY2thZ2UgYXJjaGl2ZS4iCittc2dpZCAiIgorIkV4dHJhY3RzIHRoZSBmaWxlc3lzdGVtIHRyZWUgZGF0YSBmcm9tIGEgYmluYXJ5IHBhY2thZ2UgYW5kIHNlbmRzIGl0IHRvICIKKyJzdGFuZGFyZCBvdXRwdXQgaW4gQjx0YXI+IGZvcm1hdC4gVG9nZXRoZXIgd2l0aCBCPHRhcj4oMSkgIHRoaXMgY2FuIGJlIHVzZWQgIgorInRvIGV4dHJhY3QgYSBwYXJ0aWN1bGFyIGZpbGUgZnJvbSBhIHBhY2thZ2UgYXJjaGl2ZS4gIFRoZSBpbnB1dCBhcmNoaXZlIHdpbGwgIgorImFsd2F5cyBiZSBwcm9jZXNzZWQgc2VxdWVudGlhbGx5LiIKK21zZ3N0ciAiIgorIuODkOOCpOODiuODquODkeODg+OCseODvOOCuOOBi+OCieODleOCoeOCpOODq+OCt+OCueODhuODoOacqOOCkuWxlemWi+OBl+OAgeaomea6luWHuuWKm+OBqyBCPHRhcj4g5b2i5byP44Gn5Ye6IgorIuWKm+OBmeOCi+OAgiBCPHRhcj4g44Go5YWx44Gr5L2/55So44GZ44KL44GT44Go44Gn44CB54m55a6a44Gu44OV44Kh44Kk44Or44KS44OR44OD44Kx44O844K444Ki44O844Kr44Kk44OW44GLIgorIuOCieWPluOCiuWHuuOBmeOBk+OBqOOBjOOBp+OBjeOCi+OAgiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MTYxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LWU+LCBCPC0tY29udHJvbD4gSTxhcmNoaXZlPiBbSTxkaXJlY3Rvcnk+XSIKK21zZ3N0ciAiQjxkcGtnLWRlYj4gQjwtZT58QjwtLWNvbnRyb2w+IEk8YXJjaGl2ZSBkaXJlY3Rvcnk+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjE2NQorbXNnaWQgIiIKKyJFeHRyYWN0cyB0aGUgY29udHJvbCBpbmZvcm1hdGlvbiBmaWxlcyBmcm9tIGEgcGFja2FnZSBhcmNoaXZlIGludG8gdGhlICIKKyJzcGVjaWZpZWQgZGlyZWN0b3J5LiIKK21zZ3N0ciAiIgorIuODkeODg+OCseODvOOCuOOCouODvOOCq+OCpOODluOBi+OCieWItuW+oeaDheWgseODleOCoeOCpOODq+OCkuaMh+WumuOBl+OBn+ODh+OCo+ODrOOCr+ODiOODquOBq+WxlemWi+OBmeOCi+OAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxNjkKK21zZ2lkICIiCisiSWYgbm8gZGlyZWN0b3J5IGlzIHNwZWNpZmllZCB0aGVuIGEgc3ViZGlyZWN0b3J5IEI8REVCSUFOPiBpbiB0aGUgY3VycmVudCAiCisiZGlyZWN0b3J5IGlzIHVzZWQuIgorbXNnc3RyICIiCisi44KC44GX44OH44Kj44Os44Kv44OI44Oq44GM5oyH5a6a44GV44KM44Gq44GE5aC05ZCI44CB44Kr44Os44Oz44OI44OH44Kj44Os44Kv44OI44Oq44Gr44GC44KLIEI8REVCSUFOPiDjgrXjg5YiCisi44OH44Kj44Os44Kv44OI44Oq44Gr5bGV6ZaL44GZ44KL44CCIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToxODAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tc2hvd2Zvcm1hdD0+STxmb3JtYXQ+IgorbXNnc3RyICJCPC0tc2hvd2Zvcm1hdD0+STxmb3JtYXQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjE4NSBkcGtnLXF1ZXJ5LjE6MTI3Cittc2dpZCAiIgorIlRoaXMgb3B0aW9uIGlzIHVzZWQgdG8gc3BlY2lmeSB0aGUgZm9ybWF0IG9mIHRoZSBvdXRwdXQgQjwtLXNob3c+IHdpbGwgIgorInByb2R1Y2UuIFRoZSBmb3JtYXQgaXMgYSBzdHJpbmcgdGhhdCB3aWxsIGJlIG91dHB1dCBmb3IgZWFjaCBwYWNrYWdlIGxpc3RlZC4iCittc2dzdHIgIiIKKyLjgZPjga7jgqrjg5fjgrfjg6fjg7Pjga/jgIFCPC0tc2hvdz4g44GM55Sf5oiQ44GZ44KL5Ye65Yqb44Gu5pu45byP44KS5oyH5a6a44GZ44KL44KC44Gu44Gn44GC44KL44CC5pu45byP44GvIgorIuaWh+Wtl+WIl+OBp+OAgeODkeODg+OCseODvOOCuOOBlOOBqOOBq+WHuuWKm+OBleOCjOOCi+OAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxOTQKK21zZ2lkICIiCisiVGhlIHN0cmluZyBtYXkgcmVmZXJlbmNlIGFueSBzdGF0dXMgZmllbGQgdXNpbmcgdGhlIFwiJHtJPGZpZWxkLW5hbWU+fVwiICIKKyJmb3JtLCBhIGxpc3Qgb2YgdGhlIHZhbGlkIGZpZWxkcyBjYW4gYmUgZWFzaWx5IHByb2R1Y2VkIHVzaW5nIEI8LUk+IG9uIHRoZSAiCisic2FtZSBwYWNrYWdlLiBBIGNvbXBsZXRlIGV4cGxhbmF0aW9uIG9mIHRoZSBmb3JtYXR0aW5nIG9wdGlvbnMgKGluY2x1ZGluZyAiCisiZXNjYXBlIHNlcXVlbmNlcyBhbmQgZmllbGQgdGFiYmluZykgY2FuIGJlIGZvdW5kIGluIHRoZSBleHBsYW5hdGlvbiBvZiB0aGUgIgorIkI8LS1zaG93Zm9ybWF0PiBvcHRpb24gaW4gQjxkcGtnLXF1ZXJ5PigxKS4iCittc2dzdHIgIiIKKyLmloflrZfliJfjga8gXCIke0k8ZmllbGQtbmFtZT59XCIg5b2i5byP44Gn44GC44KJ44KG44KLIHN0YXR1cyDjg5XjgqPjg7zjg6vjg4njgpLlj4LnhafjgZnjgovjgZPjgagiCisi44GM44Gn44GN44KL44CC5pyJ5Yq544Gq44OV44Kj44O844Or44OJ44Gu5LiA6Kan44Gv44CB44Gd44Gu44OR44OD44Kx44O844K444GrIEI8LUk+IOOCkuS9v+eUqOOBmeOCi+OBk+OBqOOBp+ewoSIKKyLljZjjgavnlJ/miJDjgafjgY3jgovjgILmm7jlvI/jgqrjg5fjgrfjg6fjg7Pjga7lrozlhajjgarop6Poqqwo44Ko44K544Kx44O844OX44K344O844Kx44Oz44K544KE44OV44Kj44O844Or44OJ44GnIgorIuOBruOCv+ODluOBruS9v+OBhOaWueOCkuWQq+OCgCnjga/jgIFCPGRwa2ctcXVlcnk+KDEp44GuIEI8LS1zaG93Zm9ybWF0PiDjgqrjg5fjgrfjg6fjg7Pjga7op6PoqqwiCisi44KS5Y+C54Wn44GZ44KL44GT44Go44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjE5NgorbXNnaWQgIlRoZSBkZWZhdWx0IGZvciB0aGlzIGZpZWxkIGlzIFwiJHtQYWNrYWdlfVxcZXQke1ZlcnNpb259XFxlblwiLiIKK21zZ3N0ciAiIgorIuOBk+OBruODleOCo+ODvOODq+ODieOBruODh+ODleOCqeODq+ODiOOBruODleOCqeODvOODnuODg+ODiOaWh+Wtl+WIl+OBryBcIiR7UGFja2FnZX1cXGV0IgorIiR7VmVyc2lvbn1cXGVuXCIg44Gn44GC44KL44CCIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToxOTYKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtej5JPGNvbXByZXNzLWxldmVsPiIKK21zZ3N0ciAiQjwtdD58QjwtLXRlc3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjIwMAorbXNnaWQgIiIKKyJTcGVjaWZ5IHdoaWNoIGNvbXByZXNzaW9uIGxldmVsIHRvIHVzZSBvbiB0aGUgY29tcHJlc3NvciBiYWNrZW5kLCB3aGVuICIKKyJidWlsZGluZyBhIHBhY2thZ2UgKGRlZmF1bHQgaXMgOSBmb3IgZ3ppcCBhbmQgYnppcDIsIDYgZm9yIHh6IGFuZCBsem1hKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MjAwCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LVo+STxjb21wcmVzcy10eXBlPiIKK21zZ3N0ciAiQjwtdD58QjwtLXRlc3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjIwNQorbXNnaWQgIiIKKyJTcGVjaWZ5IHdoaWNoIGNvbXByZXNzaW9uIHR5cGUgdG8gdXNlIHdoZW4gYnVpbGRpbmcgYSBwYWNrYWdlLiBBbGxvd2VkICIKKyJ2YWx1ZXMgYXJlIEk8Z3ppcD4sIEk8eHo+LCBJPGJ6aXAyPiwgSTxsem1hPiwgYW5kIEk8bm9uZT4gKGRlZmF1bHQgaXMgIgorIkk8Z3ppcD4pLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToyMDUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tbmV3PiIKK21zZ3N0ciAiQjwtLW5ldz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MjEwCittc2dpZCAiIgorIkVuc3VyZXMgdGhhdCBCPGRwa2ctZGViPiBidWlsZHMgYSBgbmV3JyBmb3JtYXQgYXJjaGl2ZS4gVGhpcyBpcyB0aGUgZGVmYXVsdC4iCittc2dzdHIgIiIKKyJCPGRwa2ctZGViPiDjgasgYOaWsOOBl+OBhCcg5b2i5byP44Gu44Ki44O844Kr44Kk44OW44Gn5qeL56+J44GV44Gb44KL44CC44GT44KM44Gv44OH44OV44Kp44Or44OI44Gu5YuV5L2cIgorIuOBp+OBguOCi+OAgiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MjEwCisjLCBuby13cmFwCittc2dpZCAiQjwtLW9sZD4iCittc2dzdHIgIkI8LS1vbGQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjIxOAorbXNnaWQgIiIKKyJGb3JjZXMgQjxkcGtnLWRlYj4gdG8gYnVpbGQgYW4gYG9sZCcgZm9ybWF0IGFyY2hpdmUuIFRoaXMgb2xkIGFyY2hpdmUgZm9ybWF0ICIKKyJpcyBsZXNzIGVhc2lseSBwYXJzZWQgYnkgbm9uLURlYmlhbiB0b29scyBhbmQgaXMgbm93IG9ic29sZXRlOyBpdHMgb25seSB1c2UgIgorImlzIHdoZW4gYnVpbGRpbmcgcGFja2FnZXMgdG8gYmUgcGFyc2VkIGJ5IHZlcnNpb25zIG9mIGRwa2cgb2xkZXIgdGhhbiAiCisiMC45My43NiAoU2VwdGVtYmVyIDE5OTUpLCB3aGljaCB3YXMgcmVsZWFzZWQgYXMgaTM4NiBhLm91dCBvbmx5LiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1kZWI+IOOBqyBg5Y+k44GEJyDlvaLlvI/jga7jgqLjg7zjgqvjgqTjg5bjgpLmp4vnr4njgZXjgZvjgovjgILjgZPjga7lj6TjgYTjgqLjg7zjgqvjgqTjg5blvaLlvI8iCisi44Gv44CB5paw44GX44GE5b2i5byP44KI44KK44KC6Z2eIERlYmlhbiDjg4Tjg7zjg6vjgaflh6bnkIbjgZnjgovjgZPjgajjgYzpm6PjgZfjgY/jgIHnj77lnKjjga/kvb/nlKjjgZXjgozjgaYiCisi44GE44Gq44GE44CC44GT44Gu44Kq44OX44K344On44Oz44Gv44CBaTM4NiDjga4gYS5vdXQg5b2i5byP44Gu44G/44KS5a++6LGh44Go44GX44Gm44Oq44Oq44O844K544GV44KM44Gf44CBIgorIuODkOODvOOCuOODp+ODsyAwLjkzLjc2KDE5OTUg5bm0IDkg5pyIKeS7peWJjeOBriBkcGtnIOOBp+WHpueQhuOBmeOCi+OBn+OCgeOBruODkeODg+OCseODvOOCuOOCkuani+eviSIKKyLjgZnjgovjgajjgY3jgaDjgZHjgavkvb/nlKjjgZXjgozjgovjgIIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRlYi4xOjIxOAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1ub2NoZWNrPiIKK21zZ3N0ciAiQjwtLW5vY2hlY2s+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjIyNAorbXNnaWQgIiIKKyJJbmhpYml0cyBCPGRwa2ctZGViIC0tYnVpbGQ+J3MgdXN1YWwgY2hlY2tzIG9uIHRoZSBwcm9wb3NlZCBjb250ZW50cyBvZiBhbiAiCisiYXJjaGl2ZS4gWW91IGNhbiBidWlsZCBhbnkgYXJjaGl2ZSB5b3Ugd2FudCwgbm8gbWF0dGVyIGhvdyBicm9rZW4sIHRoaXMgd2F5LiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1kZWIgLS1idWlsZD4g44Gu44Go44GN44Gr44Ki44O844Kr44Kk44OW44Gu5Lit6Lqr44KS56K66KqN44GV44Gb44Gq44GE44CC44GT44KM44Gr44KI44Gj44Gm44CBIgorIuOCouODvOOCq+OCpOODluOBruS4rei6q+OBq+OBqeOBruOCiOOBhuOBq+WVj+mhjOOBjOOBguOBo+OBpuOCguOAgeacm+OCk+OBoOmAmuOCiuOCouODvOOCq+OCpOODluOCkuani+evieOBmeOCi+OBkyIKKyLjgajjgYzjgafjgY3jgovjgIIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRlYi4xOjIyNCBzdGFydC1zdG9wLWRhZW1vbi44OjI1NQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC12PiwgQjwtLXZlcmJvc2U+IgorbXNnc3RyICJCPC12PnxCPC0tdmVyYm9zZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MjI4Cittc2dpZCAiIgorIkVuYWJsZXMgdmVyYm9zZSBvdXRwdXQuIFRoaXMgY3VycmVudGx5IG9ubHkgYWZmZWN0cyBCPC0tZXh0cmFjdD4gbWFraW5nIGl0ICIKKyJiZWhhdmUgbGlrZSBCPC0tdmV4dHJhY3Q+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToyMjgKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtRD4sIEI8LS1kZWJ1Zz4iCittc2dzdHIgIkI8LS1kZWJ1Zz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MjMxCittc2dpZCAiRW5hYmxlcyBkZWJ1Z2dpbmcgb3V0cHV0LiBUaGlzIGlzIG5vdCB2ZXJ5IGludGVyZXN0aW5nLiIKK21zZ3N0ciAi44OH44OQ44OD44Kw5Ye65Yqb44KS5pyJ5Yq544Gr44GZ44KL44CC44GT44KM44Gv44GC44G+44KK5b2544Gr56uL44Gf44Gq44GE44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjIzNworbXNnaWQgIiIKKyJJZiBzZXQsIEI8ZHBrZy1kZWI+IHdpbGwgdXNlIGl0IGFzIHRoZSBkaXJlY3RvcnkgaW4gd2hpY2ggdG8gY3JlYXRlICIKKyJ0ZW1wb3JhcnkgZmlsZXMgYW5kIGRpcmVjdG9yaWVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjI0MworbXNnaWQgIiIKKyJCPGRwa2ctZGViIC1JPiBJPHBhY2thZ2UxPkI8LmRlYj4gSTxwYWNrYWdlMj5CPC5kZWI+IGRvZXMgdGhlIHdyb25nIHRoaW5nLiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1kZWIgLUk+IEk8cGFja2FnZTE+QjwuZGViPiBJPHBhY2thZ2UyPkI8LmRlYj4g44Gv44GG44G+44GP5YuV5L2c44GX44Gq44GE44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjI1MQorbXNnaWQgIiIKKyJUaGVyZSBpcyBubyBhdXRoZW50aWNhdGlvbiBvbiBCPC5kZWI+IGZpbGVzOyBpbiBmYWN0LCB0aGVyZSBpc24ndCBldmVuIGEgIgorInN0cmFpZ2h0Zm9yd2FyZCBjaGVja3N1bS4gIChIaWdoZXIgbGV2ZWwgdG9vbHMgbGlrZSBBUFQgc3VwcG9ydCAiCisiYXV0aGVudGljYXRpbmcgQjwuZGViPiBwYWNrYWdlcyByZXRyaWV2ZWQgZnJvbSBhIGdpdmVuIHJlcG9zaXRvcnksIGFuZCBtb3N0ICIKKyJwYWNrYWdlcyBub3dhZGF5cyBwcm92aWRlIGFuIG1kNXN1bSBjb250cm9sIGZpbGUgZ2VuZXJhdGVkIGJ5IGRlYmlhbi9ydWxlcy4gIgorIlRob3VnaCB0aGlzIGlzIG5vdCBkaXJlY3RseSBzdXBwb3J0ZWQgYnkgdGhlIGxvd2VyIGxldmVsIHRvb2xzLikiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToyNTgKK21zZ2lkICIiCisiRG8gbm90IGF0dGVtcHQgdG8gdXNlIGp1c3QgQjxkcGtnLWRlYj4gdG8gaW5zdGFsbCBzb2Z0d2FyZSEgWW91IG11c3QgdXNlICIKKyJCPGRwa2c+IHByb3BlciB0byBlbnN1cmUgdGhhdCBhbGwgdGhlIGZpbGVzIGFyZSBjb3JyZWN0bHkgcGxhY2VkIGFuZCB0aGUgIgorInBhY2thZ2UncyBzY3JpcHRzIHJ1biBhbmQgaXRzIHN0YXR1cyBhbmQgY29udGVudHMgcmVjb3JkZWQuIgorbXNnc3RyICIiCisiQjxkcGtnLWRlYj4g44Gn44K944OV44OI44Km44Kn44Ki44KS44Kk44Oz44K544OI44O844Or44GX44KI44GG44Go44GX44Gm44Gv44GE44GR44Gq44GEISDlv4XjgZogQjxkcGtnPiAiCisi44KS5L2/44GG44GT44Go44CC44Gd44GG44GZ44KM44Gw44CB44GZ44G544Gm44Gu44OV44Kh44Kk44Or44KS5q2j44GX44GE5L2N572u44Gr572u44GN44CB44OR44OD44Kx44O844K444Gu44K544KvIgorIuODquODl+ODiOOCkuWun+ihjOOBl+OAgeeKtuaFi+OChOWGheWuueOCkuiomOmMsuOBmeOCi+OAgeOBqOOBhOOBhuOBk+OBqOOCkueiuuWun+OBq+Wun+ihjOOBp+OBjeOCi+OAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToyNjQKK21zZ2lkICJCPGRlYj4oNSksIEI8ZGViLWNvbnRyb2w+KDUpLCBCPGRwa2c+KDEpLCBCPGRzZWxlY3Q+KDEpLiIKK21zZ3N0ciAiQjxkZWI+KDUpLCBCPGRlYi1jb250cm9sPig1KSwgQjxkcGtnPigxKSwgQjxkc2VsZWN0PigxKS4iCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLWRpdmVydC44OjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLWRpdmVydCIKK21zZ3N0ciAiZHBrZy1kaXZlcnQiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6NAorbXNnaWQgImRwa2ctZGl2ZXJ0IC0gb3ZlcnJpZGUgYSBwYWNrYWdlJ3MgdmVyc2lvbiBvZiBhIGZpbGUiCittc2dzdHIgImRwa2ctZGl2ZXJ0IC0g44OR44OD44Kx44O844K444Gu44OV44Kh44Kk44Or44Gu44Kq44O844OQ44O844Op44Kk44OJIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjkKKyMsIGZ1enp5Cittc2dpZCAiQjxkcGtnLWRpdmVydD4gW0k8b3B0aW9uPi4uLl0gSTxjb21tYW5kPiIKK21zZ3N0ciAiQjxkcGtnPiBbSTxvcHRpb25zPl0gSTxhY3Rpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjEzCittc2dpZCAiIgorIkI8ZHBrZy1kaXZlcnQ+IGlzIHRoZSB1dGlsaXR5IHVzZWQgdG8gc2V0IHVwIGFuZCB1cGRhdGUgdGhlIGxpc3Qgb2YgIgorImRpdmVyc2lvbnMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6MjMKKyMsIGZ1enp5Cittc2dpZCAiIgorIkZpbGUgSTxkaXZlcnNpb25zPiBhcmUgYSB3YXkgb2YgZm9yY2luZyBCPGRwa2c+KDEpICBub3QgdG8gaW5zdGFsbCBhIGZpbGUgIgorImludG8gaXRzIGxvY2F0aW9uLCBidXQgdG8gYSBJPGRpdmVydGVkPiBsb2NhdGlvbi4gRGl2ZXJzaW9ucyBjYW4gYmUgdXNlZCAiCisidGhyb3VnaCB0aGUgRGViaWFuIHBhY2thZ2Ugc2NyaXB0cyB0byBtb3ZlIGEgZmlsZSBhd2F5IHdoZW4gaXQgY2F1c2VzIGEgIgorImNvbmZsaWN0LiBTeXN0ZW0gYWRtaW5pc3RyYXRvcnMgY2FuIGFsc28gdXNlIGl0IHRvIG92ZXJyaWRlIHNvbWUgcGFja2FnZSdzICIKKyJjb25maWd1cmF0aW9uIGZpbGUsIG9yIHdoZW5ldmVyIHNvbWUgZmlsZXMgKHdoaWNoIGFyZW4ndCBtYXJrZWQgYXMgIgorIidjb25mZmlsZXMnKSBuZWVkIHRvIGJlIHByZXNlcnZlZCBieSBkcGtnLCB3aGVuIGluc3RhbGxpbmcgYSBuZXdlciB2ZXJzaW9uICIKKyJvZiBhIHBhY2thZ2Ugd2hpY2ggY29udGFpbnMgdGhvc2UgZmlsZXMuIgorbXNnc3RyICIiCisiYGRpdmVyc2lvbnMnIOOBqOOBhOOBhuODleOCoeOCpOODq+OBq+OCiOOCiuOAgUI8ZHBrZz4oMSkg44Gv44OV44Kh44Kk44Or44KS44Kk44Oz44K544OI44O844Or44GZ44KL5pmCIgorIuOBq+acrOadpeaEj+Wbs+OBl+OBpuOBhOOBn+WgtOaJgOOBp+OBr+OBquOBj+mAgOmBv+OBl+OBnyAoYGRpdmVydGVkJykg5aC05omA44Gr44Kk44Oz44K544OI44O844Or44GZ44KL44KIIgorIuOBhuOBq+OBquOCi+OAgmRpdmVyc2lvbnMg44GvIERlYmlhbiDjg5Hjg4PjgrHjg7zjgrjjgrnjgq/jg6rjg5fjg4jjgafooZ3nqoHjgYzjgYrjgZPjgorjgYbjgovjg5XjgqHjgqTjg6siCisi44KS56e75YuV44GV44Gb44KL44Gf44KB44Gr5L2/44GG44GT44Go44GM44Gn44GN44KL44CC44K344K544OG44Og566h55CG6ICF44Gv44OR44OD44Kx44O844K444Gu6Kit5a6a44OV44Kh44Kk44OrIgorIuOChOS7luOBruODleOCoeOCpOODq+OCkiAoYGNvbmZmaWxlcycg44Go44GX44Gm44Oe44O844Kv44GV44KM44Gm44GE44Gq44GR44KM44GwKSBkcGtnIOOBjOaWsOOBl+OBhOODkOODvCIKKyLjgrjjg6fjg7Pjga7jg5Hjg4PjgrHjg7zjgrjjgpLjgqTjg7Pjgrnjg4jjg7zjg6vjgZnjgovmmYLjgavjgZ3jgozjgonjga7jg5XjgqHjgqTjg6vjgpLkuIrmm7jjgY3jgZfjgabjgZfjgb7jgo/jgaoiCisi44GE44KI44GG44Gr44GZ44KL44Gf44KB44GrIGRpdmVyc2lvbiDjgpLkvb/jgYbjgZPjgajjgYzjgafjgY3jgovjgIIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRpdmVydC44OjI1CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIltCPC0tYWRkPl0gSTxmaWxlPiIKK21zZ3N0ciAiQjxbLS1dID5JPGZpbGVuYW1lPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODoyOAorbXNnaWQgIkFkZCBhIGRpdmVyc2lvbiBmb3IgSTxmaWxlPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGl2ZXJ0Ljg6MjggZHBrZy1zdGF0b3ZlcnJpZGUuODozNQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tcmVtb3ZlPkk8IGZpbGU+IgorbXNnc3RyICJCPC0tcmVtb3ZlPkk8IEU8bHQ+ZmlsZUU8Z3Q+PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODozMQorIywgZnV6enkKK21zZ2lkICJSZW1vdmUgYSBkaXZlcnNpb24gZm9yIEk8ZmlsZT4uIgorbXNnc3RyICJkaXZlcnNpb24g44KS5YmK6Zmk44GZ44KL44CCIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kaXZlcnQuODozMQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tbGlzdD5JPCBnbG9iLXBhdHRlcm4+IgorbXNnc3RyICJCPC0tbGlzdD4gW0k8RTxsdD5nbG9iLXBhdHRlcm5FPGd0Pj5dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjM0Cittc2dpZCAiTGlzdCBkaXZlcnNpb25zIG1hdGNoaW5nIEk8Z2xvYi1wYXR0ZXJuPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGl2ZXJ0Ljg6MzQKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWxpc3RwYWNrYWdlPkk8IGZpbGU+IgorbXNnc3RyICJCPC0tcGFja2FnZT5JPCBFPGx0PnBhY2thZ2VFPGd0Pj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6MzgKK21zZ2lkICIiCisiUHJpbnQgdGhlIG5hbWUgb2YgdGhlIHBhY2thZ2UgdGhhdCBkaXZlcnRzIEk8ZmlsZT4uICBQcmludHMgTE9DQUwgaWYgSTxmaWxlPiAiCisiaXMgbG9jYWxseSBkaXZlcnRlZCBhbmQgbm90aGluZyBpZiBJPGZpbGU+IGlzIG5vdCBkaXZlcnRlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGl2ZXJ0Ljg6MzgKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLXRydWVuYW1lPkk8IGZpbGU+IgorbXNnc3RyICJCPC0tcmVuYW1lPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo0MQorbXNnaWQgIlByaW50IHRoZSByZWFsIG5hbWUgZm9yIGEgZGl2ZXJ0ZWQgZmlsZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGl2ZXJ0Ljg6NDMgZHBrZy1zdGF0b3ZlcnJpZGUuODo1MiBkc2VsZWN0LjE6NDQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMjgKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWFkbWluZGlyPkk8IGRpcmVjdG9yeT4iCittc2dzdHIgIkI8LS1hZG1pbmRpcj4gSTxkaXJlY3Rvcnk+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjQ2CisjLCBmdXp6eQorbXNnaWQgIiIKKyJTZXQgdGhlIGRwa2cgZGF0YSBkaXJlY3RvcnkgdG8gSTxkaXJlY3Rvcnk+IChkZWZhdWx0OiBJPC92YXIvbGliL2Rwa2c+KS4iCittc2dzdHIgIiIKKyJkcGtnIOODh+ODvOOCv+ODh+OCo+ODrOOCr+ODiOODquOCkiBJPEU8bHQ+ZGlyZWN0b3J5RTxndD4+IOOBq+ioreWumuOBmeOCi+OAgijjg4fjg5Xjgqnjg6vjg4g6IEk8LyIKKyJ2YXIvbGliL2Rwa2c+KSIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGl2ZXJ0Ljg6NDYKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWRpdmVydD5JPCBkaXZlcnQtdG8+IgorbXNnc3RyICJCPC0tZGl2ZXJ0Pkk8IEU8bHQ+ZGl2ZXJ0LXRvRTxndD4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjUwCisjLCBmdXp6eQorbXNnaWQgIiIKKyJJPGRpdmVydC10bz4gaXMgdGhlIGxvY2F0aW9uIHdoZXJlIHRoZSB2ZXJzaW9ucyBvZiBJPGZpbGU+LCBhcyBwcm92aWRlZCBieSAiCisib3RoZXIgcGFja2FnZXMsIHdpbGwgYmUgZGl2ZXJ0ZWQuIgorbXNnc3RyICIiCisiSTxFPGx0PmRpdmVydC10b0U8Z3Q+PiDjga/jgIHku5bjga7jg5Hjg4PjgrHjg7zjgrjjgavjgojjgaPjgabmj5DkvpvjgZXjgozjgosgIgorIkk8RTxsdD5maWxlRTxndD4+IOOCkumAgOmBv+OBmeOCi+S9jee9ruOBp+OBguOCi+OAgiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGl2ZXJ0Ljg6NTAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tbG9jYWw+IgorbXNnc3RyICJCPC0tbG9jYWw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjU2Cittc2dpZCAiIgorIlNwZWNpZmllcyB0aGF0IGFsbCBwYWNrYWdlcycgdmVyc2lvbnMgb2YgdGhpcyBmaWxlIGFyZSBkaXZlcnRlZC4gIFRoaXMgIgorIm1lYW5zLCB0aGF0IHRoZXJlIGFyZSBubyBleGNlcHRpb25zLCBhbmQgd2hhdGV2ZXIgcGFja2FnZSBpcyBpbnN0YWxsZWQsIHRoZSAiCisiZmlsZSBpcyBkaXZlcnRlZC4gVGhpcyBjYW4gYmUgdXNlZCBieSBhbiBhZG1pbiB0byBpbnN0YWxsIGEgbG9jYWxseSBtb2RpZmllZCAiCisidmVyc2lvbi4iCittc2dzdHIgIiIKKyLlhajjgabjga7jg5Hjg4PjgrHjg7zjgrjjga7jgZ3jga7jg5XjgqHjgqTjg6vjgpLpgIDpgb/jgZnjgovlr77osaHjgavjgZnjgovjgILjgaTjgb7jgorjgIHkvovlpJbjgarjgY/jgIHjganjga7jgogiCisi44GG44Gq44OR44OD44Kx44O844K444KS44Kk44Oz44K544OI44O844Or44GX44Gm44KC6YCA6YG/44GV44KM44KL44CC44GT44KM44KS5L2/44Gj44Gm44CB566h55CG6ICF44GM44Ot44O844Kr44OrIgorIuOBruS/ruato+ODkOODvOOCuOODp+ODs+OCkuOCpOODs+OCueODiOODvOODq+OBmeOCi+OBk+OBqOOBjOOBp+OBjeOCi+OAgiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGl2ZXJ0Ljg6NTYKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLXBhY2thZ2U+STwgcGFja2FnZT4iCittc2dzdHIgIkI8LS1wYWNrYWdlPkk8IEU8bHQ+cGFja2FnZUU8Z3Q+PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo2MQorIywgZnV6enkKK21zZ2lkICIiCisiSTxwYWNrYWdlPiBpcyB0aGUgbmFtZSBvZiBhIHBhY2thZ2Ugd2hvc2UgY29weSBvZiBJPGZpbGU+IHdpbGwgbm90IGJlICIKKyJkaXZlcnRlZC4gaS5lLiBJPGZpbGU+IHdpbGwgYmUgZGl2ZXJ0ZWQgZm9yIGFsbCBwYWNrYWdlcyBleGNlcHQgSTxwYWNrYWdlPi4iCittc2dzdHIgIiIKKyJJPEU8bHQ+cGFja2FnZUU8Z3Q+PiDjga/jgIFJPEU8bHQ+ZmlsZUU8Z3Q+PiDjgYzpgIDpgb/jgZXjgozjgabjgYTjgarjgYTjg5Hjg4PjgrHjg7zjgrjjga7lkI3liY0iCisi44Gn44GC44KL44CC44Gk44G+44KK44CBSTxFPGx0PmZpbGVFPGd0Pj4g44GvIEk8RTxsdD5wYWNrYWdlRTxndD4+IOOCkumZpOOBhOOBn+OBmeOBueOBpuOBriIKKyLjg5Hjg4PjgrHjg7zjgrjjgavjgojjgaPjgabpgIDpgb/jgZXjgozjgovjgIIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRpdmVydC44OjYxIGRwa2ctc3RhdG92ZXJyaWRlLjg6NjQgdXBkYXRlLWFsdGVybmF0aXZlcy44OjM1MAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1xdWlldD4iCittc2dzdHIgIkI8LS1xdWlldD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6NjQKK21zZ2lkICJRdWlldCBtb2RlLCBpLmUuIG5vIHZlcmJvc2Ugb3V0cHV0LiIKK21zZ3N0ciAi6Z2Z44GL44Gq44Oi44O844OJ44CC44Gk44G+44KK54Sh6aeE44Gq5Ye65Yqb44KS44GX44Gq44GE44CCIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kaXZlcnQuODo2NAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1yZW5hbWU+IgorbXNnc3RyICJCPC0tcmVuYW1lPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo2OAorIywgZnV6enkKK21zZ2lkICIiCisiQWN0dWFsbHkgbW92ZSB0aGUgZmlsZSBhc2lkZSAob3IgYmFjaykuIEI8ZHBrZy1kaXZlcnQ+IHdpbGwgYWJvcnQgb3BlcmF0aW9uICIKKyJpbiBjYXNlIHRoZSBkZXN0aW5hdGlvbiBmaWxlIGFscmVhZHkgZXhpc3RzLiIKK21zZ3N0ciAiIgorIuWun+mam+OBq+ODleOCoeOCpOODq+OCkuenu+WLleOBmeOCiyAo44KC44GX44GP44Gv5oi744GZKeOAgmRwa2ctZGl2ZXJ0IOOBr+enu+WLleWFiOOBruODleOCoeOCpOODq+OBjOaXouOBqyIKKyLlrZjlnKjjgZfjgabjgYTjgovjgajli5XkvZzjgpLkuK3mlq3jgZnjgovjgIIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRpdmVydC44OjY4CisjLCBuby13cmFwCittc2dpZCAiQjwtLXRlc3Q+IgorbXNnc3RyICJCPC0tdGVzdD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6NzEKK21zZ2lkICJUZXN0IG1vZGUsIGkuZS4gZG9uJ3QgYWN0dWFsbHkgcGVyZm9ybSBhbnkgY2hhbmdlcywganVzdCBkZW1vbnN0cmF0ZS4iCittc2dzdHIgIiIKKyLjg4bjgrnjg4jjg6Ljg7zjg4njgILjgaTjgb7jgorlrp/pmpvjgavjga/jgarjgavjgoLlrp/ooYzjgZvjgZrjgIHjgarjgavjgpLjgZnjgovjgYvjgpLooajnpLrjgZnjgovjgaDjgZHjgafjgYIiCisi44KL44CCIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1kaXZlcnQuODo3OAorIywgbm8td3JhcAorbXNnaWQgIk5PVEVTIgorbXNnc3RyICLms6jmhI8iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6ODIKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIldoZW4gYWRkaW5nLCBkZWZhdWx0IGlzIEI8LS1sb2NhbD4gYW5kIEI8LS1kaXZlcnQ+IEk8RTxsdD5vcmlnaW5hbEU8Z3Q+LiIKKyN8ICJkaXN0cmliPi4gV2hlbiByZW1vdmluZywgQjwtLXBhY2thZ2U+IG9yIEI8LS1sb2NhbD4gYW5kIEI8LS1kaXZlcnQ+IG11c3QgIgorI3wgIm1hdGNoIGlmIHNwZWNpZmllZC4iCittc2dpZCAiIgorIldoZW4gYWRkaW5nLCBkZWZhdWx0IGlzIEI8LS1sb2NhbD4gYW5kIEI8LS1kaXZlcnQ+IEk8b3JpZ2luYWw+QjwuZGlzdHJpYj4uICIKKyJXaGVuIHJlbW92aW5nLCBCPC0tcGFja2FnZT4gb3IgQjwtLWxvY2FsPiBhbmQgQjwtLWRpdmVydD4gbXVzdCBtYXRjaCBpZiAiCisic3BlY2lmaWVkLiIKK21zZ3N0ciAiIgorIui/veWKoOOBmeOCi+aZguOBr+OAgeODh+ODleOCqeODq+ODiOOBryBCPC0tbG9jYWw+IOOBqCBCPC0tZGl2ZXJ0PiBJPEU8bHQ+b3JpZ2luYWxFPGd0Pi4iCisiZGlzdHJpYj4g44Gn44GC44KL44CC5YmK6Zmk44GZ44KL5pmC44Gv44CBQjwtLXBhY2thZ2U+IOOCguOBl+OBj+OBryBCPC0tbG9jYWw+IOOBqCBCPC0tIgorImRpdmVydD4g44Gv5oyH5a6a44GV44KM44Gm44GE44KM44Gw5LiA6Ie044GX44Gm44GE44Gq44GR44KM44Gw44GE44GR44Gq44GE44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44Ojg0Cittc2dpZCAiRGlyZWN0b3JpZXMgY2FuJ3QgYmUgZGl2ZXJ0ZWQgd2l0aCBCPGRwa2ctZGl2ZXJ0Pi4iCittc2dzdHIgIkI8ZHBrZy1kaXZlcnQ+IOOBp+OBr+ODh+OCo+ODrOOCr+ODiOODquOBr+mAgOmBv+OBp+OBjeOBquOBhOOAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo5MAorbXNnaWQgIiIKKyJDYXJlIHNob3VsZCBiZSB0YWtlbiB3aGVuIGRpdmVydGluZyBzaGFyZWQgbGlicmFyaWVzLCBCPGxkY29uZmlnPig4KSAgIgorImNyZWF0ZXMgYSBzeW1ib2xpYyBsaW5rIGJhc2VkIG9uIHRoZSBEVF9TT05BTUUgZmllbGQgZW1iZWRkZWQgaW4gdGhlICIKKyJsaWJyYXJ5LiAgQmVjYXVzZSBsZGNvbmZpZyBkb2Vzbid0IGhvbm91ciBkaXZlcnRzIChvbmx5IGRwa2cgZG9lcyksIHRoZSAiCisic3ltbGluayBtYXkgZW5kIHVwIHBvaW50aW5nIGF0IHRoZSBkaXZlcnRlZCBsaWJyYXJ5LCBpZiBhIGRpdmVydGVkIGxpYnJhcnkgIgorImhhcyB0aGUgc2FtZSBTT05BTUUgYXMgdGhlIHVuZGl2ZXJ0ZWQgb25lLiIKK21zZ3N0ciAiIgorIuWFseacieODqeOCpOODluODqeODquOCkumAgOmBv+OBmeOCi+WgtOWQiOOAgeazqOaEj+OBmeOBueOBjeOBp+OBguOCi+OAgkI8bGRjb25maWc+KDgpIOOBr+ODqeOCpOODluODqeODquOBqyIKKyLln4vjgoHovrzjgb7jgozjgabjgYTjgosgRFRfU09OQU1FIOODleOCo+ODvOODq+ODieOBq+WfuuOBpeOBhOOBpuOAgeOCt+ODs+ODnOODquODg+OCr+ODquODs+OCr+OCkuS9nOaIkOOBmSIKKyLjgovjgIJsZGNvbmZpZyDjga/pgIDpgb/jgZXjgZvjgovjgZPjgajjgYzjgafjgY3jgarjgYTjgZ/jgoHjgafjgYLjgosgKGRwa2cg44Gg44GR44GM44Gn44GN44KLKeOAguOCguOBl+mAgCIKKyLpgb/jgZfjgZ/jg6njgqTjg5bjg6njg6rjgajpgIDpgb/jgZfjgabjgYTjgarjgYTjg6njgqTjg5bjg6njg6rjgYzlkIzjgZggU09OQU1FIOOBp+OBguOCjOOBsOOAgeacgOe1gueahOOBq+OCtyIKKyLjg7Pjg5zjg6rjg4Pjgq/jg6rjg7Pjgq/jga/pgIDpgb/jgZfjgZ/jg6njgqTjg5bjg6njg6rjgpLmjIfjgZnjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6OTUKK21zZ2lkICIiCisiVG8gZGl2ZXJ0IGFsbCBjb3BpZXMgb2YgYSBJPC91c3IvYmluL2V4YW1wbGU+IHRvIEk8L3Vzci9iaW4vZXhhbXBsZS5mb28+LCBpLiIKKyJlLiBkaXJlY3RzIGFsbCBwYWNrYWdlcyBwcm92aWRpbmcgSTwvdXNyL2Jpbi9leGFtcGxlPiB0byBpbnN0YWxsIGl0IGFzIEk8LyIKKyJ1c3IvYmluL2V4YW1wbGUuZm9vPiwgcGVyZm9ybWluZyB0aGUgcmVuYW1lIGlmIHJlcXVpcmVkOiIKK21zZ3N0ciAiIgorIuOBmeOBueOBpuOBriBJPC91c3IvYmluL2V4YW1wbGU+IOOCkiBJPC91c3IvYmluL2V4YW1wbGUuZm9vPiDjgavpgIDpgb/jgZXjgZvjgovjgIHjgaTjgb4iCisi44KK44CBSTwvdXNyL2Jpbi9leGFtcGxlPiDjgpLmj5DkvpvjgZnjgovjgZnjgbnjgabjga7jg5Hjg4PjgrHjg7zjgrjjgavlr77jgZfjgablv4XopoHjgafjgYLjgozjgbAgSTwvIgorInVzci9iaW4vZXhhbXBsZS5mb28+IOOBqOWkieabtOOBl+OBpuOCpOODs+OCueODiOODvOODq+OBleOBm+OCi+OAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo5NworbXNnaWQgImRwa2ctZGl2ZXJ0IC0tZGl2ZXJ0IC91c3IvYmluL2V4YW1wbGUuZm9vIC0tcmVuYW1lIC91c3IvYmluL2V4YW1wbGUiCittc2dzdHIgImRwa2ctZGl2ZXJ0IC0tZGl2ZXJ0IC91c3IvYmluL2V4YW1wbGUuZm9vIC0tcmVuYW1lIC91c3IvYmluL2V4YW1wbGUiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6OTkgZHBrZy1kaXZlcnQuODoxMDkKK21zZ2lkICJUbyByZW1vdmUgdGhhdCBkaXZlcnNpb246IgorbXNnc3RyICJkaXZlcnNpb24g44KS5YmK6Zmk44GZ44KL44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjEwMQorbXNnaWQgImRwa2ctZGl2ZXJ0IC0tcmVuYW1lIC0tcmVtb3ZlIC91c3IvYmluL2V4YW1wbGUiCittc2dzdHIgImRwa2ctZGl2ZXJ0IC0tcmVuYW1lIC0tcmVtb3ZlIC91c3IvYmluL2V4YW1wbGUiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6MTA1Cittc2dpZCAiIgorIlRvIGRpdmVydCBhbnkgcGFja2FnZSB0cnlpbmcgdG8gaW5zdGFsbCBJPC91c3IvYmluL2V4YW1wbGU+IHRvIEk8L3Vzci9iaW4vIgorImV4YW1wbGUuZm9vPiwgZXhjZXB0IHlvdXIgb3duIEk8d2liYmxlPiBwYWNrYWdlOiIKK21zZ3N0ciAiIgorIkk8L3Vzci9iaW4vZXhhbXBsZT4g44KS44Kk44Oz44K544OI44O844Or44GX44KI44GG44Go44GZ44KL44GZ44G544Gm44Gu44OR44OD44Kx44O844K444KSIEk8L3Vzci8iCisiYmluL2V4YW1wbGUuZm9vPiDjgavpgIDpgb/jgIHjgZ/jgaDjgZfoh6rkvZzjga4gSTx3aWJibGU+IOODkeODg+OCseODvOOCuOOCkumZpOOBj+OAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODoxMDcKK21zZ2lkICIiCisiZHBrZy1kaXZlcnQgLS1wYWNrYWdlIHdpYmJsZSAtLWRpdmVydCAvdXNyL2Jpbi9leGFtcGxlLmZvbyAtLXJlbmFtZSAvdXNyL2Jpbi8iCisiZXhhbXBsZSIKK21zZ3N0ciAiIgorImRwa2ctZGl2ZXJ0IC0tcGFja2FnZSB3aWJibGUgLS1kaXZlcnQgL3Vzci9iaW4vZXhhbXBsZS5mb28gLS1yZW5hbWUgL3Vzci9iaW4vIgorImV4YW1wbGUiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6MTExCittc2dpZCAiZHBrZy1kaXZlcnQgLS1wYWNrYWdlIHdpYmJsZSAtLXJlbmFtZSAtLXJlbW92ZSAvdXNyL2Jpbi9leGFtcGxlIgorbXNnc3RyICJkcGtnLWRpdmVydCAtLXBhY2thZ2Ugd2liYmxlIC0tcmVuYW1lIC0tcmVtb3ZlIC91c3IvYmluL2V4YW1wbGUiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRpdmVydC44OjExMyBkcGtnLXF1ZXJ5LjE6MjA1IGRwa2ctc3RhdG92ZXJyaWRlLjg6NjkgZHBrZy10cmlnZ2VyLjE6NjEKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozNTUKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxEUEtHX05PX1RTVFA+IgorbXNnaWQgIkI8RFBLR19BRE1JTkRJUj4iCittc2dzdHIgIkI8RFBLR19OT19UU1RQPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODoxMTcgZHBrZy1xdWVyeS4xOjIwOSBkcGtnLXN0YXRvdmVycmlkZS44OjczIGRwa2ctdHJpZ2dlci4xOjY1Cittc2dpZCAiIgorIklmIHNldCBhbmQgdGhlIEI8LS1hZG1pbmRpcj4gb3B0aW9uIGhhcyBub3QgYmVlbiBzcGVjaWZpZWQsIGl0IHdpbGwgYmUgdXNlZCAiCisiYXMgdGhlIGRwa2cgZGF0YSBkaXJlY3RvcnkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6MTIxCittc2dpZCAiIgorIklmIHNldCBhbmQgdGhlIEI8LS1sb2NhbD4gYW5kIEI8LS1wYWNrYWdlPiBvcHRpb25zIGhhdmUgbm90IGJlZW4gc3BlY2lmaWVkLCAiCisiQjxkcGtnLWRpdmVydD4gd2lsbCB1c2UgaXQgYXMgdGhlIHBhY2thZ2UgbmFtZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGl2ZXJ0Ljg6MTIzCisjLCBuby13cmFwCittc2dpZCAiSTwvdmFyL2xpYi9kcGtnL2RpdmVyc2lvbnM+IgorbXNnc3RyICJJPC92YXIvbGliL2Rwa2cvZGl2ZXJzaW9ucz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6MTI4CisjLCBmdXp6eQorbXNnaWQgIiIKKyJGaWxlIHdoaWNoIGNvbnRhaW5zIHRoZSBjdXJyZW50IGxpc3Qgb2YgZGl2ZXJzaW9ucyBvZiB0aGUgc3lzdGVtLiBJdCBpcyAiCisibG9jYXRlZCBpbiB0aGUgZHBrZyBhZG1pbmlzdHJhdGlvbiBkaXJlY3RvcnksIGFsb25nIHdpdGggb3RoZXIgZmlsZXMgIgorImltcG9ydGFudCB0byBkcGtnLCBzdWNoIGFzIEk8c3RhdHVzPiBvciBJPGF2YWlsYWJsZT4uIgorbXNnc3RyICIiCisi44K344K544OG44Og44Gu54++5Zyo44Gu6YCA6YG/44Oq44K544OI44KS5ZCr44KA44OV44Kh44Kk44Or44CC44GT44KM44GvIGRwa2cg44Gn5L2/44KP44KM44KL6YeN6KaB44Gq44OV44Kh44KkIgorIuODqyBgc3RhdHVzJyDjgoQgYGF2YWlsYWJsZScg44GM44GC44KLIGRwa2cg44Gu566h55CG44OH44Kj44Os44Kv44OI44Oq44Gr44GC44KL44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjEzMQorIywgZnV6enkKK21zZ2lkICIiCisiTm90ZTogQjxkcGtnLWRpdmVydD4gcHJlc2VydmVzIHRoZSBvbGQgY29weSBvZiB0aGlzIGZpbGUsIHdpdGggZXh0ZW5zaW9uIEk8LSIKKyJvbGQ+LCBiZWZvcmUgcmVwbGFjaW5nIGl0IHdpdGggdGhlIG5ldyBvbmUuIgorbXNnc3RyICIiCisi5rOo5oSPOiBCPGRwa2ctZGl2ZXJ0PiDjga/jgZPjga7jg5XjgqHjgqTjg6vjgpLmm7TmlrDjgZnjgovmmYLjgavjgIHlj6TjgYTjg5Djg7zjgrjjg6fjg7PjgpIgXCItb2xkXCIgIgorIuOBqOOBhOOBhuWQjeWJjeOCkuOBpOOBkeOBn+ODleOCoeOCpOODq+OBq+OCs+ODlOODvOOBl+OBpuOBiuOBj+OAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODoxMzcgdXBkYXRlLWFsdGVybmF0aXZlcy44OjQ5NgorIywgZnV6enkKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMTk5NSBJYW4gSmFja3NvbiIKK21zZ3N0ciAiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiZHBrZy1nZW5jaGFuZ2VzIgorbXNnc3RyICJkcGtnLXNjYW5wYWNrYWdlcyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6NAorIywgZnV6enkKK21zZ2lkICJkcGtnLWdlbmNoYW5nZXMgLSBnZW5lcmF0ZSBEZWJpYW4gLmNoYW5nZXMgZmlsZXMiCittc2dzdHIgImRwa2ctc2NhbnBhY2thZ2VzIC0gUGFja2FnZXMg44OV44Kh44Kk44Or44Gu5L2c5oiQIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMTo4CisjLCBmdXp6eQorbXNnaWQgIkI8ZHBrZy1nZW5jaGFuZ2VzPiBbSTxvcHRpb24+Li4uXSIKK21zZ3N0ciAiQjxkcGtnPiBbSTxvcHRpb25zPl0gSTxhY3Rpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMToxNgorbXNnaWQgIiIKKyJCPGRwa2ctZ2VuY2hhbmdlcz4gcmVhZHMgaW5mb3JtYXRpb24gZnJvbSBhbiB1bnBhY2tlZCBhbmQgYnVpbHQgRGViaWFuICIKKyJzb3VyY2UgdHJlZSBhbmQgZnJvbSB0aGUgZmlsZXMgaXQgaGFzIGdlbmVyYXRlZCBhbmQgZ2VuZXJhdGVzIGEgRGViaWFuICIKKyJ1cGxvYWQgY29udHJvbCBmaWxlIChCPC5jaGFuZ2VzPiBmaWxlKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjE4CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LWI+LCBCPC1CPiwgQjwtQT4iCittc2dzdHIgIkI8LXQ+fEI8LS10ZXN0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6MjcKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRoYXQgYSBiaW5hcnktb25seSBidWlsZCBpcyB0YWtpbmcgcGxhY2UgKG5vIHNvdXJjZSBmaWxlcyBhcmUgdG8gIgorImJlIGluY2x1ZGVkKS4gVGhlcmUncyBubyBkaXN0aW5jdGlvbiBiZXR3ZWVuIEI8LWI+LCBCPC1CPiBhbmQgQjwtQT4sIHRoZSAiCisicHJvZHVjZWQgQjwuY2hhbmdlcz4gZmlsZSB3aWxsIGluY2x1ZGUgd2hhdGV2ZXIgZmlsZXMgd2VyZSBjcmVhdGVkIGJ5IHRoZSAiCisiQjxiaW5hcnktKj4gdGFyZ2V0KHMpIG9mIHRoZSBwYWNrYWdlIGJlaW5nIGJ1aWx0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMTozMQorIywgZnV6enkKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRoYXQgb25seSB0aGUgc291cmNlIHNob3VsZCBiZSB1cGxvYWRlZCAobm8gYmluYXJ5IHBhY2thZ2VzIHdpbGwgIgorImJlIGluY2x1ZGVkKS4iCittc2dzdHIgImRlYi1vbGQgLSBEZWJpYW4g44OQ44Kk44OK44Oq44OR44OD44Kx44O844K45pen5b2i5byP44OV44Kp44O844Oe44OD44OIIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMTozNgorbXNnaWQgIiIKKyJUaGUgQjwtcz5JPHg+IG9wdGlvbnMgY29udHJvbCB3aGV0aGVyIHRoZSBvcmlnaW5hbCBzb3VyY2UgYXJjaGl2ZSBpcyAiCisiaW5jbHVkZWQgaW4gdGhlIHVwbG9hZCBpZiBhbnkgc291cmNlIGlzIGJlaW5nIGdlbmVyYXRlZCAoaS5lLiAgQjwtYj4gb3IgQjwtIgorIkI+IGhhdmVuJ3QgYmVlbiB1c2VkKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6NDIKK21zZ2lkICIiCisiQnkgZGVmYXVsdCwgb3IgaWYgc3BlY2lmaWVkLCB0aGUgb3JpZ2luYWwgc291cmNlIHdpbGwgYmUgaW5jbHVkZWQgb25seSBpZiAiCisidGhlIHVwc3RyZWFtIHZlcnNpb24gbnVtYmVyICh0aGUgdmVyc2lvbiB3aXRob3V0IGVwb2NoIGFuZCB3aXRob3V0IERlYmlhbiAiCisicmV2aXNpb24pIGRpZmZlcnMgZnJvbSB0aGUgdXBzdHJlYW0gdmVyc2lvbiBudW1iZXIgb2YgdGhlIHByZXZpb3VzIGNoYW5nZWxvZyAiCisiZW50cnkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjQ1Cittc2dpZCAiRm9yY2VzIHRoZSBpbmNsdXNpb24gb2YgdGhlIG9yaWdpbmFsIHNvdXJjZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6NDgKK21zZ2lkICJGb3JjZXMgdGhlIGV4Y2x1c2lvbiBvZiB0aGUgb3JpZ2luYWwgc291cmNlIGFuZCBpbmNsdWRlcyBvbmx5IHRoZSBkaWZmLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMTo1NAorbXNnaWQgIiIKKyJDYXVzZXMgY2hhbmdlbG9nIGluZm9ybWF0aW9uIGZyb20gYWxsIHZlcnNpb25zIHN0cmljdGx5IGxhdGVyIHRoYW4gIgorIkk8dmVyc2lvbj4gdG8gYmUgdXNlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6NjAKK21zZ2lkICIiCisiUmVhZCB0aGUgZGVzY3JpcHRpb24gb2YgdGhlIGNoYW5nZXMgZnJvbSB0aGUgZmlsZSBJPGNoYW5nZXNkZXNjcmlwdGlvbj4gIgorInJhdGhlciB0aGFuIHVzaW5nIHRoZSBpbmZvcm1hdGlvbiBmcm9tIHRoZSBzb3VyY2UgdHJlZSdzIGNoYW5nZWxvZyBmaWxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMTo2NgorbXNnaWQgIiIKKyJVc2UgSTxtYWludGFpbmVyYWRkcmVzcz4gYXMgdGhlIG5hbWUgYW5kIGVtYWlsIGFkZHJlc3Mgb2YgdGhlIG1haW50YWluZXIgZm9yICIKKyJ0aGlzIHBhY2thZ2UsIHJhdGhlciB0aGFuIHVzaW5nIHRoZSBpbmZvcm1hdGlvbiBmcm9tIHRoZSBzb3VyY2UgdHJlZSdzICIKKyJjb250cm9sIGZpbGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjcyCittc2dpZCAiIgorIlVzZSBJPG1haW50YWluZXJhZGRyZXNzPiBhcyB0aGUgbmFtZSBhbmQgZW1haWwgYWRkcmVzcyBvZiB0aGUgbWFpbnRhaW5lciBmb3IgIgorInRoaXMgdXBsb2FkLCByYXRoZXIgdGhhbiB1c2luZyB0aGUgaW5mb3JtYXRpb24gZnJvbSB0aGUgc291cmNlIHRyZWUncyAiCisiY2hhbmdlbG9nLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6NzIgZHBrZy1nZW5jb250cm9sLjE6NDEgZHBrZy1zb3VyY2UuMToxMjcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1WPkk8bmFtZT5CPD0+STx2YWx1ZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6NzYgZHBrZy1zb3VyY2UuMToxMzEKK21zZ2lkICIiCisiU2V0IGFuIG91dHB1dCBzdWJzdGl0dXRpb24gdmFyaWFibGUuICBTZWUgQjxkZWItc3Vic3R2YXJzPig1KSBmb3IgYSAiCisiZGlzY3Vzc2lvbiBvZiBvdXRwdXQgc3Vic3RpdHV0aW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6NzYgZHBrZy1nZW5jb250cm9sLjE6NDUgZHBrZy1zaGxpYmRlcHMuMToxNjkKKyM6IGRwa2ctc291cmNlLjE6MTMxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LVQ+STxzdWJzdHZhcnNmaWxlPiIKK21zZ3N0ciAiQjwtLWZzeXMtdGFyZmlsZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjg2Cittc2dpZCAiIgorIlJlYWQgc3Vic3RpdHV0aW9uIHZhcmlhYmxlcyBpbiBJPHN1YnN0dmFyc2ZpbGU+OyB0aGUgZGVmYXVsdCBpcyBCPGRlYmlhbi8iCisic3Vic3R2YXJzPi4gIE5vIHZhcmlhYmxlIHN1YnN0aXR1dGlvbiBpcyBkb25lIG9uIGFueSBvZiB0aGUgZmllbGRzIHRoYXQgYXJlICIKKyJvdXRwdXQsIGhvd2V2ZXIgdGhlIHNwZWNpYWwgdmFyaWFibGUgSTxGb3JtYXQ+IHdpbGwgb3ZlcnJpZGUgdGhlIGZpZWxkIG9mICIKKyJ0aGUgc2FtZSBuYW1lLiBUaGlzIG9wdGlvbiBjYW4gYmUgdXNlZCBtdWx0aXBsZSB0aW1lcyB0byByZWFkIHN1YnN0aXR1dGlvbiAiCisidmFyaWFibGVzIGZyb20gbXVsdGlwbGUgZmlsZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbmNoYW5nZXMuMTo4NyBkcGtnLWdlbmNvbnRyb2wuMTo1MyBkcGtnLXNvdXJjZS4xOjEzNworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1EPkk8ZmllbGQ+Qjw9Pkk8dmFsdWU+IgorbXNnc3RyICJCPC1EPkk8b2N0YWw+QjwgfCAtLWRlYnVnPT5JPG9jdGFsPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6OTAgZHBrZy1nZW5jb250cm9sLjE6NTYgZHBrZy1zb3VyY2UuMToxNDAKK21zZ2lkICJPdmVycmlkZSBvciBhZGQgYW4gb3V0cHV0IGNvbnRyb2wgZmlsZSBmaWVsZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjkwIGRwa2ctZ2VuY29udHJvbC4xOjU2IGRwa2ctc291cmNlLjE6MTQwCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LVU+STxmaWVsZD4iCittc2dzdHIgIkI8Wy0tXSA+STxmaWxlbmFtZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjkzIGRwa2ctZ2VuY29udHJvbC4xOjU5IGRwa2ctc291cmNlLjE6MTQzCittc2dpZCAiUmVtb3ZlIGFuIG91dHB1dCBjb250cm9sIGZpbGUgZmllbGQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbmNoYW5nZXMuMTo5MyBkcGtnLWdlbmNvbnRyb2wuMTo1OSBkcGtnLXNvdXJjZS4xOjEwNAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1jPkk8Y29udHJvbGZpbGU+IgorbXNnc3RyICJJPGNvbnRyb2w+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMTo5OCBkcGtnLWdlbmNvbnRyb2wuMTo2NAorbXNnaWQgIiIKKyJTcGVjaWZpZXMgdGhlIG1haW4gc291cmNlIGNvbnRyb2wgZmlsZSB0byByZWFkIGluZm9ybWF0aW9uIGZyb20uIFRoZSBkZWZhdWx0ICIKKyJpcyBCPGRlYmlhbi9jb250cm9sPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjk4IGRwa2ctZ2VuY29udHJvbC4xOjY0IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxNgorIzogZHBrZy1zb3VyY2UuMToxMTEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1sPkk8Y2hhbmdlbG9nZmlsZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6MTAzIGRwa2ctZ2VuY29udHJvbC4xOjY5IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToyMQorbXNnaWQgIiIKKyJTcGVjaWZpZXMgdGhlIGNoYW5nZSBsb2cgZmlsZSB0byByZWFkIGluZm9ybWF0aW9uIGZyb20uIFRoZSBkZWZhdWx0IGlzICIKKyJCPGRlYmlhbi9jaGFuZ2Vsb2c+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMToxMDcKK21zZ2lkICIiCisiUmVhZCB0aGUgbGlzdCBvZiBmaWxlcyB0byBiZSB1cGxvYWRlZCBoZXJlLCByYXRoZXIgdGhhbiB1c2luZyBCPGRlYmlhbi8iCisiZmlsZXM+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6MTA3IGRwa2ctZ2VuY29udHJvbC4xOjczIGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToyMQorIzogZHBrZy1zb3VyY2UuMToxMTgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1GPkk8Y2hhbmdlbG9nZm9ybWF0PiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMToxMTIgZHBrZy1nZW5jb250cm9sLjE6NzggZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjI2CisjOiBkcGtnLXNvdXJjZS4xOjEyMworbXNnaWQgIiIKKyJTcGVjaWZpZXMgdGhlIGZvcm1hdCBvZiB0aGUgY2hhbmdlbG9nLiBCeSBkZWZhdWx0IHRoZSBmb3JtYXQgaXMgcmVhZCBmcm9tIGEgIgorInNwZWNpYWwgbGluZSBuZWFyIHRoZSBib3R0b20gb2YgdGhlIGNoYW5nZWxvZyBvciBmYWlsaW5nIHRoYXQgZGVmYXVsdHMgdG8gIgorInRoZSBkZWJpYW4gc3RhbmRhcmQgZm9ybWF0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6MTEyCisjLCBuby13cmFwCittc2dpZCAiQjwtdT5JPHVwbG9hZGZpbGVzZGlyPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMToxMjMKK21zZ2lkICIiCisiTG9vayBmb3IgdGhlIGZpbGVzIHRvIGJlIHVwbG9hZGVkIGluIEk8dXBsb2FkZmlsZXNkaXI+IHJhdGhlciB0aGFuIEI8Li4+ICIKKyIoQjxkcGtnLWdlbmNoYW5nZXM+IG5lZWRzIHRvIGZpbmQgdGhlc2UgZmlsZXMgc28gdGhhdCBpdCBjYW4gaW5jbHVkZSB0aGVpciAiCisic2l6ZXMgYW5kIGNoZWNrc3VtcyBpbiB0aGUgQjwuY2hhbmdlcz4gZmlsZSkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbmNoYW5nZXMuMToxMjMgZHBrZy1nZW5zeW1ib2xzLjE6NDIxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LXE+IgorbXNnc3RyICJCPC1CPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6MTMxCittc2dpZCAiIgorIlVzdWFsbHkgQjxkcGtnLWdlbmNoYW5nZXM+IHdpbGwgcHJvZHVjZSBpbmZvcm1hdGl2ZSBtZXNzYWdlcyBvbiBzdGFuZGFyZCAiCisiZXJyb3IsIGZvciBleGFtcGxlIGFib3V0IGhvdyBtYW55IG9mIHRoZSBwYWNrYWdlJ3Mgc291cmNlIGZpbGVzIGFyZSBiZWluZyAiCisidXBsb2FkZWQuICBCPC1xPiBzdXBwcmVzc2VzIHRoZXNlIG1lc3NhZ2VzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMToxNDcKK21zZ2lkICIiCisiVGhlIGxpc3Qgb2YgZ2VuZXJhdGVkIGZpbGVzIHdoaWNoIGFyZSBwYXJ0IG9mIHRoZSB1cGxvYWQgYmVpbmcgcHJlcGFyZWQuICAiCisiQjxkcGtnLWdlbmNoYW5nZXM+IHJlYWRzIHRoZSBkYXRhIGhlcmUgd2hlbiBwcm9kdWNpbmcgYSBCPC5jaGFuZ2VzPiBmaWxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1nZW5jb250cm9sLjE6MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJkcGtnLWdlbmNvbnRyb2wiCittc2dzdHIgImRlYi1jb250cm9sIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMTo0Cittc2dpZCAiZHBrZy1nZW5jb250cm9sIC0gZ2VuZXJhdGUgRGViaWFuIGNvbnRyb2wgZmlsZXMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jb250cm9sLjE6OAorIywgZnV6enkKK21zZ2lkICJCPGRwa2ctZ2VuY29udHJvbD4gW0k8b3B0aW9uPi4uLl0iCittc2dzdHIgIkI8ZHBrZz4gW0k8b3B0aW9ucz5dIEk8YWN0aW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jb250cm9sLjE6MTQKK21zZ2lkICIiCisiQjxkcGtnLWdlbmNvbnRyb2w+IHJlYWRzIGluZm9ybWF0aW9uIGZyb20gYW4gdW5wYWNrZWQgRGViaWFuIHNvdXJjZSB0cmVlIGFuZCAiCisiZ2VuZXJhdGVzIGEgYmluYXJ5IHBhY2thZ2UgY29udHJvbCBmaWxlICh3aGljaCBkZWZhdWx0cyB0byBkZWJpYW4vdG1wL0RFQklBTi8iCisiY29udHJvbCk7IGR1cmluZyB0aGlzIHByb2Nlc3MgaXQgd2lsbCBzaW1wbGlmeSB0aGUgcmVsYXRpb24gZmllbGRzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMToyNworbXNnaWQgIiIKKyJUaHVzIEk8UHJlLURlcGVuZHM+LCBJPERlcGVuZHM+LCBJPFJlY29tbWVuZHM+IGFuZCBJPFN1Z2dlc3RzPiBhcmUgIgorInNpbXBsaWZpZWQgaW4gdGhpcyBvcmRlciBieSByZW1vdmluZyBkZXBlbmRlbmNpZXMgd2hpY2ggYXJlIGtub3duIHRvIGJlIHRydWUgIgorImFjY29yZGluZyB0byB0aGUgc3Ryb25nZXIgZGVwZW5kZW5jaWVzIGFscmVhZHkgcGFyc2VkLiBJdCB3aWxsIGFsc28gcmVtb3ZlICIKKyJhbnkgc2VsZi1kZXBlbmRlbmN5IChpbiBmYWN0IGl0IHdpbGwgcmVtb3ZlIGFueSBkZXBlbmRlbmN5IHdoaWNoIGV2YWx1YXRlcyAiCisidG8gdHJ1ZSBnaXZlbiB0aGUgY3VycmVudCB2ZXJzaW9uIG9mIHRoZSBwYWNrYWdlIGFzIGluc3RhbGxlZCkuIExvZ2ljYWxseSBpdCAiCisia2VlcHMgdGhlIGludGVyc2VjdGlvbiBvZiBtdWx0aXBsZSBkZXBlbmRlbmNpZXMgb24gdGhlIHNhbWUgcGFja2FnZS4gVGhlICIKKyJvcmRlciBvZiBkZXBlbmRlbmNpZXMgaXMgcHJlc2VydmVkIGFzIGJlc3QgYXMgcG9zc2libGU6IGlmIGFueSBkZXBlbmRlbmN5ICIKKyJtdXN0IGJlIGRpc2NhcmRlZCBkdWUgdG8gYW5vdGhlciBkZXBlbmRlbmN5IGFwcGVhcmluZyBmdXJ0aGVyIGluIHRoZSBmaWVsZCwgIgorInRoZSBzdXBlcnNlZGluZyBkZXBlbmRlbmN5IHdpbGwgdGFrZSB0aGUgcGxhY2Ugb2YgdGhlIGRpc2NhcmRlZCBvbmUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjMyCittc2dpZCAiIgorIlRoZSBvdGhlciByZWxhdGlvbiBmaWVsZHMgKEk8RW5oYW5jZXM+LCBJPENvbmZsaWN0cz4sIEk8QnJlYWtzPiwgSTxSZXBsYWNlcz4gIgorImFuZCBJPFByb3ZpZGVzPikgIGFyZSBhbHNvIHNpbXBsaWZpZWQgaW5kaXZpZHVhbGx5IGJ5IGNvbXB1dGluZyB0aGUgdW5pb24gb2YgIgorInRoZSB2YXJpb3VzIGRlcGVuZGVuY2llcyB3aGVuIGEgcGFja2FnZSBpcyBsaXN0ZWQgbXVsdGlwbGUgdGltZXMgaW4gdGhlICIKKyJmaWVsZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jb250cm9sLjE6MzYKK21zZ2lkICIiCisiQjxkcGtnLWdlbmNvbnRyb2w+IGFsc28gYWRkcyBhbiBlbnRyeSBmb3IgdGhlIGJpbmFyeSBwYWNrYWdlIHRvIEI8ZGViaWFuLyIKKyJmaWxlcz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjQxCittc2dpZCAiU2V0cyB0aGUgdmVyc2lvbiBudW1iZXIgb2YgdGhlIGJpbmFyeSBwYWNrYWdlIHdoaWNoIHdpbGwgYmUgZ2VuZXJhdGVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMTo0NQorbXNnaWQgIiIKKyJTZXQgYW4gb3V0cHV0IHN1YnN0aXR1dGlvbiB2YXJpYWJsZS4gU2VlIEI8ZGViLXN1YnN0dmFycz4oNSkgZm9yIGRpc2N1c3Npb24gIgorIm9mIG91dHB1dCBzdWJzdGl0dXRpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjUzCittc2dpZCAiIgorIlJlYWQgc3Vic3RpdHV0aW9uIHZhcmlhYmxlcyBpbiBJPHN1YnN0dmFyc2ZpbGU+OyB0aGUgZGVmYXVsdCBpcyBCPGRlYmlhbi8iCisic3Vic3R2YXJzPi4gIFRoaXMgb3B0aW9uIGNhbiBiZSB1c2VkIG11bHRpcGxlIHRpbWVzIHRvIHJlYWQgc3Vic3RpdHV0aW9uICIKKyJ2YXJpYWJsZXMgZnJvbSBtdWx0aXBsZSBmaWxlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjc4IGRwa2ctZ2Vuc3ltYm9scy4xOjM3MworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1wPkk8cGFja2FnZT4iCittc2dzdHIgIkI8LS1wYWNrYWdlPkk8IEU8bHQ+cGFja2FnZUU8Z3Q+PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jb250cm9sLjE6ODUKK21zZ2lkICIiCisiR2VuZXJhdGUgaW5mb3JtYXRpb24gZm9yIHRoZSBiaW5hcnkgcGFja2FnZSBJPHBhY2thZ2U+LiAgSWYgdGhlIHNvdXJjZSAiCisiY29udHJvbCBmaWxlIGxpc3RzIG9ubHkgb25lIGJpbmFyeSBwYWNrYWdlIHRoZW4gdGhpcyBvcHRpb24gbWF5IGJlIG9taXR0ZWQ7ICIKKyJvdGhlcndpc2UgaXQgaXMgZXNzZW50aWFsIHRvIHNlbGVjdCB3aGljaCBiaW5hcnkgcGFja2FnZSdzIGluZm9ybWF0aW9uIHRvICIKKyJnZW5lcmF0ZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjg1CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LW4+STxmaWxlbmFtZT4iCittc2dzdHIgIkI8Wy0tXSA+STxmaWxlbmFtZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjkwCittc2dpZCAiIgorIkFzc3VtZSB0aGUgZmlsZW5hbWUgb2YgdGhlIHBhY2thZ2Ugd2lsbCBiZSBJPGZpbGVuYW1lPiBpbnN0ZWFkIG9mIHRoZSBub3JtYWwgIgorInBhY2thZ2VfdmVyc2lvbl9hcmNoLmRlYiBmaWxlbmFtZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjkwCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LWlzPiwgQjwtaXA+LCBCPC1pc3A+IgorbXNnc3RyICJCPC0taW5mbz4sIEI8LUk+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMTo5OQorbXNnaWQgIiIKKyJUaGVzZSBvcHRpb25zIGFyZSBpZ25vcmVkIGZvciBjb21wYXRpYmlsaXR5IHdpdGggb2xkZXIgdmVyc2lvbnMgb2YgZHBrZy1kZXYgIgorImJ1dCBhcmUgbm93IGRlcHJlY2F0ZWQuIFByZXZpb3VzbHkgdGhleSB3ZXJlIHVzZWQgdG8gdGVsbCBkcGtnLWdlbmNvbnRyb2wgdG8gIgorImluY2x1ZGUgdGhlIFNlY3Rpb24gYW5kIFByaW9yaXR5IGZpZWxkcyBpbiB0aGUgY29udHJvbCBmaWxlLiBUaGlzIGlzIG5vdyB0aGUgIgorImRlZmF1bHQgYmVoYXZpb3VyLiBJZiB5b3Ugd2FudCB0byBnZXQgdGhlIG9sZCBiZWhhdmlvdXIgeW91IGNhbiB1c2UgdGhlIEI8LSIKKyJVPiBvcHRpb24gdG8gZGVsZXRlIHRoZSBmaWVsZHMgZnJvbSB0aGUgY29udHJvbCBmaWxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5jb250cm9sLjE6OTkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1QPkk8cGFja2FnZWJ1aWxkZGlyPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMToxMTIKK21zZ2lkICIiCisiVGVsbHMgQjxkcGtnLXNvdXJjZT4gdGhhdCB0aGUgcGFja2FnZSBpcyBiZWluZyBidWlsdCBpbiBJPHBhY2thZ2VidWlsZGRpcj4gIgorImluc3RlYWQgb2YgQjxkZWJpYW4vdG1wPi4gIFRoaXMgdmFsdWUgaXMgdXNlZCB0byBmaW5kIHRoZSBkZWZhdWx0IHZhbHVlIG9mICIKKyJ0aGUgQjxJbnN0YWxsZWQtU2l6ZT4gc3Vic3RpdHV0aW9uIHZhcmlhYmxlIGFuZCBjb250cm9sIGZpbGUgZmllbGQgKHVzaW5nICIKKyJCPGR1PiksIGFuZCBmb3IgdGhlIGRlZmF1bHQgbG9jYXRpb24gb2YgdGhlIG91dHB1dCBmaWxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5jb250cm9sLjE6MTEyIGRwa2ctZ2Vuc3ltYm9scy4xOjM5MSBkcGtnLXNobGliZGVwcy4xOjE1MAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1PPiIKK21zZ3N0ciAiQjwtQj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjEyMQorbXNnaWQgIiIKKyJQcmludCB0aGUgY29udHJvbCBmaWxlIHRvIHN0YW5kYXJkIG91dHB1dCwgcmF0aGVyIHRoYW4gdG8gQjxkZWJpYW4vdG1wLyIKKyJERUJJQU4vY29udHJvbD4gKG9yIEk8cGFja2FnZWJ1aWxkZGlyPkI8L0RFQklBTi9jb250cm9sPiBpZiBCPC1QPiB3YXMgdXNlZCkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbmNvbnRyb2wuMToxMjkKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxkZWJpYW4vY29udHJvbD4iCittc2dzdHIgImRlYi1jb250cm9sIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMToxMzQKK21zZ2lkICIiCisiVGhlIG1haW4gc291cmNlIGNvbnRyb2wgaW5mb3JtYXRpb24gZmlsZSwgZ2l2aW5nIHZlcnNpb24taW5kZXBlbmRlbnQgIgorImluZm9ybWF0aW9uIGFib3V0IHRoZSBzb3VyY2UgcGFja2FnZSBhbmQgdGhlIGJpbmFyeSBwYWNrYWdlcyBpdCBjYW4gcHJvZHVjZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jb250cm9sLjE6MTQxCittc2dpZCAiIgorIlRoZSBsaXN0IG9mIGdlbmVyYXRlZCBmaWxlcyB3aGljaCBhcmUgcGFydCBvZiB0aGUgdXBsb2FkIGJlaW5nIHByZXBhcmVkLiAgIgorIkI8ZHBrZy1nZW5jb250cm9sPiBhZGRzIHRoZSBwcmVzdW1lZCBmaWxlbmFtZXMgb2YgYmluYXJ5IHBhY2thZ2VzIHdob3NlICIKKyJjb250cm9sIGZpbGVzIGl0IGdlbmVyYXRlcyBoZXJlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMToxNDggZHBrZy1zaGxpYmRlcHMuMTozMzcKKyMsIGZ1enp5Cittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMDctMjAwOCBSYXBoYVxcWzplXWwgSGVydHpvZyIKK21zZ3N0ciAiQ29weXJpZ2h0IDIwMDEgSm9leSBIZXNzIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJkcGtnLWdlbnN5bWJvbHMiCittc2dzdHIgImRlYi1vbGQiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjUKK21zZ2lkICIiCisiZHBrZy1nZW5zeW1ib2xzIC0gZ2VuZXJhdGUgc3ltYm9scyBmaWxlcyAoc2hhcmVkIGxpYnJhcnkgZGVwZW5kZW5jeSAiCisiaW5mb3JtYXRpb24pIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjkKKyMsIGZ1enp5Cittc2dpZCAiQjxkcGtnLWdlbnN5bWJvbHM+IFtJPG9wdGlvbj4uLi5dIgorbXNnc3RyICJCPGRwa2c+IFtJPG9wdGlvbnM+XSBJPGFjdGlvbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjE2Cittc2dpZCAiIgorIkI8ZHBrZy1nZW5zeW1ib2xzPiBzY2FucyBhIHRlbXBvcmFyeSBidWlsZCB0cmVlIChkZWJpYW4vdG1wIGJ5IGRlZmF1bHQpICIKKyJsb29raW5nIGZvciBsaWJyYXJpZXMgYW5kIGdlbmVyYXRlIGEgSTxzeW1ib2xzPiBmaWxlIGRlc2NyaWJpbmcgdGhlbS4gVGhpcyAiCisiZmlsZSwgaWYgbm9uLWVtcHR5LCBpcyB0aGVuIGluc3RhbGxlZCBpbiB0aGUgREVCSUFOIHN1YmRpcmVjdG9yeSBvZiB0aGUgIgorImJ1aWxkIHRyZWUgc28gdGhhdCBpdCBlbmRzIHVwIGluY2x1ZGVkIGluIHRoZSBjb250cm9sIGluZm9ybWF0aW9uIG9mIHRoZSAiCisicGFja2FnZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjAKK21zZ2lkICIiCisiV2hlbiBnZW5lcmF0aW5nIHRob3NlIGZpbGVzLCBpdCB1c2VzIGFzIGlucHV0IHNvbWUgc3ltYm9scyBmaWxlcyBwcm92aWRlZCBieSAiCisidGhlIG1haW50YWluZXIuIEl0IGxvb2tzIGZvciB0aGUgZm9sbG93aW5nIGZpbGVzIChhbmQgdXNlIHRoZSBmaXJzdCB0aGF0IGlzICIKKyJmb3VuZCk6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjIyCittc2dpZCAiZGViaWFuL0k8cGFja2FnZT4uc3ltYm9scy5JPGFyY2g+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjI0CisjLCBmdXp6eQorbXNnaWQgImRlYmlhbi9zeW1ib2xzLkk8YXJjaD4iCittc2dzdHIgIkI8ZGVpbnN0YWxsPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjYKK21zZ2lkICJkZWJpYW4vSTxwYWNrYWdlPi5zeW1ib2xzIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjI4CisjLCBmdXp6eQorbXNnaWQgImRlYmlhbi9zeW1ib2xzIgorbXNnc3RyICJkZWItb2xkIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozNgorbXNnaWQgIiIKKyJUaGUgbWFpbiBpbnRlcmVzdCBvZiB0aG9zZSBmaWxlcyBpcyB0byBwcm92aWRlIHRoZSBtaW5pbWFsIHZlcnNpb24gIgorImFzc29jaWF0ZWQgdG8gZWFjaCBzeW1ib2wgcHJvdmlkZWQgYnkgdGhlIGxpYnJhcmllcy4gVXN1YWxseSBpdCBjb3JyZXNwb25kcyAiCisidG8gdGhlIGZpcnN0IHZlcnNpb24gb2YgdGhhdCBwYWNrYWdlIHRoYXQgcHJvdmlkZWQgdGhlIHN5bWJvbCwgYnV0IGl0IGNhbiBiZSAiCisibWFudWFsbHkgaW5jcmVtZW50ZWQgYnkgdGhlIG1haW50YWluZXIgaWYgdGhlIEFCSSBvZiB0aGUgc3ltYm9sIGlzIGV4dGVuZGVkICIKKyJ3aXRob3V0IGJyZWFraW5nIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5LiBJdCdzIHRoZSByZXNwb25zaWJpbGl0eSBvZiB0aGUgIgorIm1haW50YWluZXIgdG8ga2VlcCB0aG9zZSBmaWxlcyB1cC10by1kYXRlIGFuZCBhY2N1cmF0ZSwgYnV0IEI8ZHBrZy0iCisiZ2Vuc3ltYm9scz4gaGVscHMgaGltLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0MgorbXNnaWQgIiIKKyJXaGVuIHRoZSBnZW5lcmF0ZWQgc3ltYm9scyBmaWxlcyBkaWZmZXIgZnJvbSB0aGUgbWFpbnRhaW5lciBzdXBwbGllZCBvbmUsICIKKyJCPGRwa2ctZ2Vuc3ltYm9scz4gd2lsbCBwcmludCBhIGRpZmYgYmV0d2VlbiB0aGUgdHdvIHZlcnNpb25zLiAgRnVydGhlcm1vcmUgIgorImlmIHRoZSBkaWZmZXJlbmNlIGlzIHRvbyBzaWduaWZpY2FudCwgaXQgd2lsbCBldmVuIGZhaWwgKHlvdSBjYW4gY3VzdG9taXplICIKKyJob3cgbXVjaCBkaWZmZXJlbmNlIHlvdSBjYW4gdG9sZXJhdGUsIHNlZSB0aGUgQjwtYz4gb3B0aW9uKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQyCisjLCBuby13cmFwCittc2dpZCAiTUFJTlRBSU5JTkcgU1lNQk9MUyBGSUxFUyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo1NQorbXNnaWQgIiIKKyJUaGUgc3ltYm9scyBmaWxlcyBhcmUgcmVhbGx5IHVzZWZ1bCBvbmx5IGlmIHRoZXkgcmVmbGVjdCB0aGUgZXZvbHV0aW9uIG9mICIKKyJ0aGUgcGFja2FnZSB0aHJvdWdoIHNldmVyYWwgcmVsZWFzZXMuIFRodXMgdGhlIG1haW50YWluZXIgaGFzIHRvIHVwZGF0ZSB0aGVtICIKKyJldmVyeSB0aW1lIHRoYXQgYSBuZXcgc3ltYm9sIGlzIGFkZGVkIHNvIHRoYXQgaXRzIGFzc29jaWF0ZWQgbWluaW1hbCB2ZXJzaW9uICIKKyJtYXRjaGVzIHJlYWxpdHkuIFRvIGRvIHRoaXMgcHJvcGVybHkgaGUgY2FuIHVzZSB0aGUgZGlmZnMgY29udGFpbmVkIGluIHRoZSAiCisiYnVpbGQgbG9ncy4gSW4gbW9zdCBjYXNlcywgdGhlIGRpZmYgYXBwbGllcyBkaXJlY3RseSB0byBoaXMgZGViaWFuLyIKKyJJPHBhY2thZ2U+LnN5bWJvbHMgZmlsZS4gVGhhdCBzYWlkLCBmdXJ0aGVyIHR3ZWFrcyBhcmUgdXN1YWxseSBuZWVkZWQ6IGl0J3MgIgorInJlY29tbWVuZGVkIGZvciBleGFtcGxlIHRvIGRyb3AgdGhlIERlYmlhbiByZXZpc2lvbiBmcm9tIHRoZSBtaW5pbWFsIHZlcnNpb24gIgorInNvIHRoYXQgYmFja3BvcnRzIHdpdGggYSBsb3dlciB2ZXJzaW9uIG51bWJlciBidXQgdGhlIHNhbWUgdXBzdHJlYW0gdmVyc2lvbiAiCisic3RpbGwgc2F0aXNmeSB0aGUgZ2VuZXJhdGVkIGRlcGVuZGVuY2llcy4gIElmIHRoZSBEZWJpYW4gcmV2aXNpb24gY2FuJ3QgYmUgIgorImRyb3BwZWQgYmVjYXVzZSB0aGUgc3ltYm9sIHJlYWxseSBnb3QgYWRkZWQgYnkgdGhlIERlYmlhbiBzcGVjaWZpYyBjaGFuZ2UsICIKKyJ0aGVuIG9uZSBzaG91bGQgc3VmZml4IHRoZSB2ZXJzaW9uIHdpdGggXCJ+XCIuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjU5Cittc2dpZCAiIgorIkJlZm9yZSBhcHBseWluZyBhbnkgcGF0Y2ggdG8gdGhlIHN5bWJvbHMgZmlsZSwgdGhlIG1haW50YWluZXIgc2hvdWxkIGRvdWJsZS0iCisiY2hlY2sgdGhhdCBpdCdzIHNhbmUuIFB1YmxpYyBzeW1ib2xzIGFyZSBub3Qgc3VwcG9zZWQgdG8gZGlzYXBwZWFyLCBzbyB0aGUgIgorInBhdGNoIHNob3VsZCBpZGVhbGx5IG9ubHkgYWRkIG5ldyBsaW5lcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NjQKK21zZ2lkICIiCisiTm90ZSB0aGF0IHlvdSBjYW4gcHV0IGNvbW1lbnRzIGluIHN5bWJvbHMgZmlsZXM6IGFueSBsaW5lIHdpdGggJyMnIGFzIHRoZSAiCisiZmlyc3QgY2hhcmFjdGVyIGlzIGEgY29tbWVudCBleGNlcHQgaWYgaXQgc3RhcnRzIHdpdGggJyNpbmNsdWRlJyAoc2VlICIKKyJzZWN0aW9uIEI8VXNpbmcgaW5jbHVkZXM+KS4gTGluZXMgc3RhcnRpbmcgd2l0aCAnI01JU1NJTkc6JyBhcmUgc3BlY2lhbCAiCisiY29tbWVudHMgZG9jdW1lbnRpbmcgc3ltYm9scyB0aGF0IGhhdmUgZGlzYXBwZWFyZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLWdlbnN5bWJvbHMuMTo2NAorIywgbm8td3JhcAorbXNnaWQgIlVzaW5nICNQQUNLQUdFIyBzdWJzdGl0dXRpb24iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NzIKK21zZ2lkICIiCisiSW4gc29tZSByYXJlIGNhc2VzLCB0aGUgbmFtZSBvZiB0aGUgbGlicmFyeSB2YXJpZXMgYmV0d2VlbiBhcmNoaXRlY3R1cmVzLiAgIgorIlRvIGF2b2lkIGhhcmRjb2RpbmcgdGhlIG5hbWUgb2YgdGhlIHBhY2thZ2UgaW4gdGhlIHN5bWJvbHMgZmlsZSwgeW91IGNhbiB1c2UgIgorInRoZSBtYXJrZXIgSTwjUEFDS0FHRSM+LiBJdCB3aWxsIGJlIHJlcGxhY2VkIGJ5IHRoZSByZWFsIHBhY2thZ2UgbmFtZSBkdXJpbmcgIgorImluc3RhbGxhdGlvbiBvZiB0aGUgc3ltYm9scyBmaWxlcy4gQ29udHJhcnkgdG8gdGhlIEk8I01JTlZFUiM+IG1hcmtlciwgIgorIkk8I1BBQ0tBR0UjPiB3aWxsIG5ldmVyIGFwcGVhciBpbiBhIHN5bWJvbHMgZmlsZSBpbnNpZGUgYSBiaW5hcnkgcGFja2FnZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjcyCisjLCBuby13cmFwCittc2dpZCAiVXNpbmcgc3ltYm9sIHRhZ3MiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NzkKK21zZ2lkICIiCisiU3ltYm9sIHRhZ2dpbmcgaXMgdXNlZnVsIGZvciBtYXJraW5nIHN5bWJvbHMgdGhhdCBhcmUgc3BlY2lhbCBpbiBzb21lIHdheS4gICIKKyJBbnkgc3ltYm9sIGNhbiBoYXZlIGFuIGFyYml0cmFyeSBudW1iZXIgb2YgdGFncyBhc3NvY2lhdGVkIHdpdGggaXQuIFdoaWxlICIKKyJhbGwgdGFncyBhcmUgcGFyc2VkIGFuZCBzdG9yZWQsIG9ubHkgYSBzb21lIG9mIHRoZW0gYXJlIHVuZGVyc3Rvb2QgYnkgQjxkcGtnLSIKKyJnZW5zeW1ib2xzPiBhbmQgdHJpZ2dlciBzcGVjaWFsIGhhbmRsaW5nIG9mIHRoZSBzeW1ib2xzLiBTZWUgc3Vic2VjdGlvbiAiCisiQjxTdGFuZGFyZCBzeW1ib2wgdGFncz4gZm9yIHJlZmVyZW5jZSBvZiB0aGVzZSB0YWdzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo5MQorbXNnaWQgIiIKKyJUYWcgc3BlY2lmaWNhdGlvbiBjb21lcyByaWdodCBiZWZvcmUgdGhlIHN5bWJvbCBuYW1lIChubyB3aGl0ZXNwYWNlIGlzICIKKyJhbGxvd2VkIGluIGJldHdlZW4pLiBJdCBhbHdheXMgc3RhcnRzIHdpdGggYW4gb3BlbmluZyBicmFja2V0IEI8KD4sIGVuZHMgIgorIndpdGggYSBjbG9zaW5nIGJyYWNrZXQgQjwpPiBhbmQgbXVzdCBjb250YWluIGF0IGxlYXN0IG9uZSB0YWcuIE11bHRpcGxlIHRhZ3MgIgorImFyZSBzZXBhcmF0ZWQgYnkgdGhlIEI8fD4gY2hhcmFjdGVyLiBFYWNoIHRhZyBjYW4gb3B0aW9uYWxseSBoYXZlIGEgdmFsdWUgIgorIndoaWNoIGlzIHNlcGFyYXRlZCBmb3JtIHRoZSB0YWcgbmFtZSBieSB0aGUgQjw9PiBjaGFyYWN0ZXIuIFRhZyBuYW1lcyBhbmQgIgorInZhbHVlcyBjYW4gYmUgYXJiaXRyYXJ5IHN0cmluZ3MgZXhjZXB0IHRoZXkgY2Fubm90IGNvbnRhaW4gYW55IG9mIHRoZSAiCisic3BlY2lhbCBCPCk+IEI8fD4gQjw9PiBjaGFyYWN0ZXJzLiBTeW1ib2wgbmFtZXMgZm9sbG93aW5nIGEgdGFnICIKKyJzcGVjaWZpY2F0aW9uIGNhbiBvcHRpb25hbGx5IGJlIHF1b3RlZCB3aXRoIGVpdGhlciBCPCc+IG9yIEI8XCI+IGNoYXJhY3RlcnMgIgorInRvIGFsbG93IHdoaXRlc3BhY2VzIGluIHRoZW0uIEhvd2V2ZXIsIGlmIHRoZXJlIGFyZSBubyB0YWdzIHNwZWNpZmllZCBmb3IgIgorInRoZSBzeW1ib2wsIHF1b3RlcyBhcmUgdHJlYXRlZCBhcyBwYXJ0IG9mIHRoZSBzeW1ib2wgbmFtZSB3aGljaCBjb250aW51ZXMgdXAgIgorInVudGlsIHRoZSBmaXJzdCBzcGFjZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6OTUKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiICh0YWcxPWkgYW0gbWFya2VkfHRhZyBuYW1lIHdpdGggc3BhY2UpXCJ0YWdnZWQgcXVvdGVkIHN5bWJvbFwiQEJhc2UgMS4wXG4iCisiIChvcHRpb25hbCl0YWdnZWRfdW5xdW90ZWRfc3ltYm9sQEJhc2UgMS4wIDFcbiIKKyIgdW50YWdnZWRfc3ltYm9sQEJhc2UgMS4wXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTAxCittc2dpZCAiIgorIlRoZSBmaXJzdCBzeW1ib2wgaW4gdGhlIGV4YW1wbGUgaXMgbmFtZWQgSTx0YWdnZWQgcXVvdGVkIHN5bWJvbD4gYW5kIGhhcyB0d28gIgorInRhZ3M6IEk8dGFnMT4gd2l0aCB2YWx1ZSBJPGkgYW0gbWFya2VkPiBhbmQgSTx0YWcgbmFtZSB3aXRoIHNwYWNlPiB0aGF0IGhhcyAiCisibm8gdmFsdWUuIFRoZSBzZWNvbmQgc3ltYm9sIG5hbWVkIEk8dGFnZ2VkX3VucXVvdGVkX3N5bWJvbD4gaXMgb25seSB0YWdnZWQgIgorIndpdGggdGhlIHRhZyBuYW1lZCBJPG9wdGlvbmFsPi4gVGhlIGxhc3Qgc3ltYm9sIGlzIGFuIGV4YW1wbGUgb2YgdGhlIG5vcm1hbCAiCisidW50YWdnZWQgc3ltYm9sLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToxMTMKK21zZ2lkICIiCisiU2luY2Ugc3ltYm9sIHRhZ3MgYXJlIGFuIGV4dGVuc2lvbiBvZiB0aGUgSTxkZWItc3ltYm9scyg1KT4gZm9ybWF0LCB0aGV5IGNhbiAiCisib25seSBiZSBwYXJ0IG9mIHRoZSBzeW1ib2xzIGZpbGVzIHVzZWQgaW4gc291cmNlIHBhY2thZ2VzICh0aG9zZSBmaWxlcyAiCisic2hvdWxkIHRoZW4gYmUgc2VlbiBhcyB0ZW1wbGF0ZXMgdXNlZCB0byBidWlsZCB0aGUgc3ltYm9scyBmaWxlcyB0aGF0IGFyZSAiCisiZW1iZWRkZWQgaW4gYmluYXJ5IHBhY2thZ2VzKS4gV2hlbiBCPGRwa2ctZ2Vuc3ltYm9scz4gaXMgY2FsbGVkIHdpdGhvdXQgdGhlICIKKyJJPC10PiBvcHRpb24sIGl0IHdpbGwgb3V0cHV0IHN5bWJvbHMgZmlsZXMgY29tcGF0aWJsZSB0byB0aGUgSTxkZWItc3ltYm9scyg1KSIKKyI+IGZvcm1hdDogaXQgZnVsbHkgcHJvY2Vzc2VzIHN5bWJvbHMgYWNjb3JkaW5nIHRvIHRoZSByZXF1aXJlbWVudHMgb2YgdGhlaXIgIgorInN0YW5kYXJkIHRhZ3MgYW5kIHN0cmlwcyBhbGwgdGFncyBmcm9tIHRoZSBvdXRwdXQuIE9uIHRoZSBjb250cmFyeSwgaW4gIgorInRlbXBsYXRlIG1vZGUgKEk8LXQ+KSBhbGwgc3ltYm9scyBhbmQgdGhlaXIgdGFncyAoYm90aCBzdGFuZGFyZCBhbmQgdW5rbm93biAiCisib25lcykgIGFyZSBrZXB0IGluIHRoZSBvdXRwdXQgYW5kIGFyZSB3cml0dGVuIGluIHRoZWlyIG9yaWdpbmFsIGZvcm0gYXMgdGhleSAiCisid2VyZSBsb2FkZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLWdlbnN5bWJvbHMuMToxMTMKKyMsIG5vLXdyYXAKK21zZ2lkICJTdGFuZGFyZCBzeW1ib2wgdGFncyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTE0CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8bm90LWluc3RhbGxlZD4iCittc2dpZCAiQjxvcHRpb25hbD4iCittc2dzdHIgIkI8bm90LWluc3RhbGxlZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjEyNAorbXNnaWQgIiIKKyJBIHN5bWJvbCBtYXJrZWQgYXMgb3B0aW9uYWwgY2FuIGRpc2FwcGVhciBmcm9tIHRoZSBsaWJyYXJ5IGF0IGFueSB0aW1lIGFuZCAiCisidGhhdCB3aWxsIG5ldmVyIGNhdXNlIEI8ZHBrZy1nZW5zeW1ib2xzPiB0byBmYWlsLiBIb3dldmVyLCBkaXNhcHBlYXJlZCAiCisib3B0aW9uYWwgc3ltYm9scyB3aWxsIGNvbnRpbnVvdXNseSBhcHBlYXIgYXMgTUlTU0lORyBpbiB0aGUgZGlmZiBpbiBlYWNoIG5ldyAiCisicGFja2FnZSByZXZpc2lvbi4gIFRoaXMgYmVoYXZpb3VyIHNlcnZlcyBhcyBhIHJlbWluZGVyIGZvciB0aGUgbWFpbnRhaW5lciAiCisidGhhdCBzdWNoIGEgc3ltYm9sIG5lZWRzIHRvIGJlIHJlbW92ZWQgZnJvbSB0aGUgc3ltYm9sIGZpbGUgb3IgcmVhZGRlZCB0byAiCisidGhlIGxpYnJhcnkuIFdoZW4gdGhlIG9wdGlvbmFsIHN5bWJvbCwgd2hpY2ggd2FzIHByZXZpb3VzbHkgZGVjbGFyZWQgYXMgIgorIk1JU1NJTkcsIHN1ZGRlbmx5IHJlYXBwZWFycyBpbiB0aGUgbmV4dCByZXZpc2lvbiwgaXQgd2lsbCBiZSB1cGdyYWRlZCBiYWNrICIKKyJ0byB0aGUgXCJleGlzdGluZ1wiIHN0YXR1cyB3aXRoIGl0cyBtaW5pbXVtIHZlcnNpb24gdW5jaGFuZ2VkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToxMjkKK21zZ2lkICIiCisiVGhpcyB0YWcgaXMgdXNlZnVsIGZvciBzeW1ib2xzIHdoaWNoIGFyZSBwcml2YXRlIHdoZXJlIHRoZWlyIGRpc2FwcGVhcmFuY2UgIgorImRvIG5vdCBjYXVzZSBBQkkgYnJlYWthZ2UuIEZvciBleGFtcGxlLCBtb3N0IG9mIEMrKyB0ZW1wbGF0ZSBpbnN0YW50aWF0aW9ucyAiCisiZmFsbCBpbnRvIHRoaXMgY2F0ZWdvcnkuIExpa2UgYW55IG90aGVyIHRhZywgdGhpcyBvbmUgbWF5IGFsc28gaGF2ZSBhbiAiCisiYXJiaXRyYXJ5IHZhbHVlOiBpdCBjb3VsZCBiZSB1c2VkIHRvIGluZGljYXRlIHdoeSB0aGUgc3ltYm9sIGlzIGNvbnNpZGVyZWQgIgorIm9wdGlvbmFsLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTI5CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8YXJjaD0+STxhcmNoaXRlY3R1cmUgbGlzdD4iCittc2dzdHIgIkI8LWEsIC0tbm8tYXJjaGl0ZWN0dXJlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTQyCittc2dpZCAiIgorIlRoaXMgdGFnIGFsbG93cyBvbmUgdG8gcmVzdHJpY3QgdGhlIHNldCBvZiBhcmNoaXRlY3R1cmVzIHdoZXJlIHRoZSBzeW1ib2wgaXMgIgorInN1cHBvc2VkIHRvIGV4aXN0LiBXaGVuIHRoZSBzeW1ib2xzIGxpc3QgaXMgdXBkYXRlZCB3aXRoIHRoZSBzeW1ib2xzICIKKyJkaXNjb3ZlcmVkIGluIHRoZSBsaWJyYXJ5LCBhbGwgYXJjaC1zcGVjaWZpYyBzeW1ib2xzIHdoaWNoIGRvIG5vdCBjb25jZXJuICIKKyJ0aGUgY3VycmVudCBob3N0IGFyY2hpdGVjdHVyZSBhcmUgdHJlYXRlZCBhcyBpZiB0aGV5IGRpZCBub3QgZXhpc3QuIElmIGFuICIKKyJhcmNoLXNwZWNpZmljIHN5bWJvbCBtYXRjaGluZyB0aGUgY3VycmVudCBob3N0IGFyY2hpdGVjdHVyZSBkb2VzIG5vdCBleGlzdCAiCisiaW4gdGhlIGxpYnJhcnksIG5vcm1hbCBwcm9jZWR1cmVzIGZvciBtaXNzaW5nIHN5bWJvbHMgYXBwbHkgYW5kIGl0IG1heSBjYXVzZSAiCisiQjxkcGtnLWdlbnN5bWJvbHM+IHRvIGZhaWwuIE9uIHRoZSBvdGhlciBoYW5kLCBpZiB0aGUgYXJjaC1zcGVjaWZpYyBzeW1ib2wgIgorImlzIGZvdW5kIHdoZW4gaXQgd2FzIG5vdCBzdXBwb3NlZCB0byBleGlzdCAoYmVjYXVzZSB0aGUgY3VycmVudCBob3N0ICIKKyJhcmNoaXRlY3R1cmUgaXMgbm90IGxpc3RlZCBpbiB0aGUgdGFnKSwgaXQgaXMgbWFkZSBhcmNoIG5ldXRyYWwgKGkuZS4gdGhlICIKKyJhcmNoIHRhZyBpcyBkcm9wcGVkIGFuZCB0aGUgc3ltYm9sIHdpbGwgYXBwZWFyIGluIHRoZSBkaWZmIGR1ZSB0byB0aGlzICIKKyJjaGFuZ2UpLCBidXQgaXQgaXMgbm90IGNvbnNpZGVyZWQgYXMgbmV3LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToxNDgKK21zZ2lkICIiCisiV2hlbiBvcGVyYXRpbmcgaW4gdGhlIGRlZmF1bHQgbm9uLXRlbXBsYXRlIG1vZGUsIGFtb25nIGFyY2gtc3BlY2lmaWMgc3ltYm9scyAiCisib25seSB0aG9zZSB0aGF0IG1hdGNoIHRoZSBjdXJyZW50IGhvc3QgYXJjaGl0ZWN0dXJlIGFyZSB3cml0dGVuIHRvIHRoZSAiCisic3ltYm9scyBmaWxlLiBPbiB0aGUgY29udHJhcnksIGFsbCBhcmNoLXNwZWNpZmljIHN5bWJvbHMgKGluY2x1ZGluZyB0aG9zZSAiCisiZnJvbSBmb3JlaWduIGFyY2hlcykgYXJlIGFsd2F5cyB3cml0dGVuIHRvIHRoZSBzeW1ib2wgZmlsZSB3aGVuIG9wZXJhdGluZyBpbiAiCisidGVtcGxhdGUgbW9kZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTU0Cittc2dpZCAiIgorIlRoZSBmb3JtYXQgb2YgSTxhcmNoaXRlY3R1cmUgbGlzdD4gaXMgdGhlIHNhbWUgYXMgdGhlIG9uZSB1c2VkIGluIHRoZSAiCisiSTxCdWlsZC1EZXBlbmRzPiBmaWVsZCBvZiBJPGRlYmlhbi9jb250cm9sPiAoZXhjZXB0IHRoZSBlbmNsb3Npbmcgc3F1YXJlICIKKyJicmFja2V0cyBbXSkuIEZvciBleGFtcGxlLCB0aGUgZmlyc3Qgc3ltYm9sIGZyb20gdGhlIGxpc3QgYmVsb3cgd2lsbCBiZSAiCisiY29uc2lkZXJlZCBvbmx5IG9uIGFscGhhLCBhbWQ2NCwga2ZyZWVic2QtYW1kNjQgYW5kIGlhNjQgYXJjaGl0ZWN0dXJlcyB3aGlsZSAiCisidGhlIHNlY29uZCBvbmUgYW55d2hlcmUgZXhjZXB0IG9uIGFybWVsLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToxNTcKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiIChhcmNoPWFscGhhIGFtZDY0IGtmcmVlYnNkLWFtZDY0IGlhNjQpYV82NGJpdF9zcGVjaWZpY19zeW1ib2xAQmFzZSAxLjBcbiIKKyIgKGFyY2g9IWFybWVsKXN5bWJvbF9hcm1lbF9kb2VzX25vdF9oYXZlQEJhc2UgMS4wXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjE1NworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPGlnbm9yZS1ibGFja2xpc3Q+IgorbXNnc3RyICJCPC0tbm9jaGVjaz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjE2NQorbXNnaWQgIiIKKyJkcGtnLWdlbnN5bWJvbHMgaGFzIGFuIGludGVybmFsIGJsYWNrbGlzdCBvZiBzeW1ib2xzIHRoYXQgc2hvdWxkIG5vdCBhcHBlYXIgIgorImluIHN5bWJvbHMgZmlsZXMgYXMgdGhleSBhcmUgdXN1YWxseSBvbmx5IHNpZGUtZWZmZWN0cyBvZiBpbXBsZW1lbnRhdGlvbiAiCisiZGV0YWlscyBvZiB0aGUgdG9vbGNoYWluLiBJZiBmb3Igc29tZSByZWFzb24sIHlvdSByZWFsbHkgd2FudCBvbmUgb2YgdGhvc2UgIgorInN5bWJvbHMgdG8gYmUgaW5jbHVkZWQgaW4gdGhlIHN5bWJvbHMgZmlsZSwgeW91IHNob3VsZCB0YWcgdGhlIHN5bWJvbCB3aXRoICIKKyJCPGlnbm9yZS1ibGFja2xpc3Q+LiBJdCBjYW4gYmUgbmVjZXNzYXJ5IGZvciBzb21lIGxvdyBsZXZlbCB0b29sY2hhaW4gIgorImxpYnJhcmllcyBsaWtlIGxpYmdjYy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjE2NSBkcGtnLWdlbnN5bWJvbHMuMToyMDIKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxjKys+IgorbXNnc3RyICJCPC1CPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTY5Cittc2dpZCAiIgorIkRlbm90ZXMgSTxjKys+IHN5bWJvbCBwYXR0ZXJuLiBTZWUgQjxVc2luZyBzeW1ib2wgcGF0dGVybnM+IHN1YnNlY3Rpb24gYmVsb3cuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbnN5bWJvbHMuMToxNjkgZHBrZy1nZW5zeW1ib2xzLjE6MjMzCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8c3ltdmVyPiIKK21zZ3N0ciAiQjwtQj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjE3MworbXNnaWQgIiIKKyJEZW5vdGVzIEk8c3ltdmVyPiAoc3ltYm9sIHZlcnNpb24pIHN5bWJvbCBwYXR0ZXJuLiBTZWUgQjxVc2luZyBzeW1ib2wgIgorInBhdHRlcm5zPiBzdWJzZWN0aW9uIGJlbG93LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTczIGRwa2ctZ2Vuc3ltYm9scy4xOjI1OAorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPHB1cmdlPiIKK21zZ2lkICJCPHJlZ2V4PiIKK21zZ3N0ciAiQjxwdXJnZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjE3NworbXNnaWQgIiIKKyJEZW5vdGVzIEk8cmVnZXg+IHN5bWJvbCBwYXR0ZXJuLiBTZWUgQjxVc2luZyBzeW1ib2wgcGF0dGVybnM+IHN1YnNlY3Rpb24gIgorImJlbG93LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1nZW5zeW1ib2xzLjE6MTc3CisjLCBuby13cmFwCittc2dpZCAiVXNpbmcgc3ltYm9sIHBhdHRlcm5zIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjE4NQorbXNnaWQgIiIKKyJVbmxpa2UgYSBzdGFuZGFyZCBzeW1ib2wgc3BlY2lmaWNhdGlvbiwgYSBwYXR0ZXJuIG1heSBjb3ZlciBtdWx0aXBsZSByZWFsICIKKyJzeW1ib2xzIGZyb20gdGhlIGxpYnJhcnkuIEI8ZHBrZy1nZW5zeW1ib2xzPiB3aWxsIGF0dGVtcHQgdG8gbWF0Y2ggZWFjaCAiCisicGF0dGVybiBhZ2FpbnN0IGVhY2ggcmVhbCBzeW1ib2wgdGhhdCBkb2VzIEk8bm90PiBoYXZlIGEgc3BlY2lmaWMgc3ltYm9sICIKKyJjb3VudGVycGFydCBkZWZpbmVkIGluIHRoZSBzeW1ib2wgZmlsZS4gV2hlbmV2ZXIgdGhlIGZpcnN0IG1hdGNoaW5nIHBhdHRlcm4gIgorImlzIGZvdW5kLCBhbGwgaXRzIHRhZ3MgYW5kIHByb3BlcnRpZXMgd2lsbCBiZSB1c2VkIGFzIGEgYmFzaXMgc3BlY2lmaWNhdGlvbiAiCisib2YgdGhlIHN5bWJvbC4gSWYgbm9uZSBvZiB0aGUgcGF0dGVybnMgbWF0Y2hlcywgdGhlIHN5bWJvbCB3aWxsIGJlICIKKyJjb25zaWRlcmVkIGFzIG5ldy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTkzCittc2dpZCAiIgorIkEgcGF0dGVybiBpcyBjb25zaWRlcmVkIGxvc3QgaWYgaXQgZG9lcyBub3QgbWF0Y2ggYW55IHN5bWJvbCBpbiB0aGUgbGlicmFyeS4gIgorIkJ5IGRlZmF1bHQgdGhpcyB3aWxsIHRyaWdnZXIgYSBCPGRwa2ctZ2Vuc3ltYm9scz4gZmFpbHVyZSB1bmRlciBJPC1jMT4gb3IgIgorImhpZ2hlciBsZXZlbC4gSG93ZXZlciwgaWYgdGhlIGZhaWx1cmUgaXMgdW5kZXNpcmVkLCB0aGUgcGF0dGVybiBtYXkgYmUgIgorIm1hcmtlZCB3aXRoIHRoZSBJPG9wdGlvbmFsPiB0YWcuIFRoZW4gaWYgdGhlIHBhdHRlcm4gZG9lcyBub3QgbWF0Y2ggIgorImFueXRoaW5nLCBpdCB3aWxsIG9ubHkgYXBwZWFyIGluIHRoZSBkaWZmIGFzIE1JU1NJTkcuIE1vcmVvdmVyLCBsaWtlIGFueSAiCisic3ltYm9sLCB0aGUgcGF0dGVybiBtYXkgYmUgbGltaXRlZCB0byB0aGUgc3BlY2lmaWMgYXJjaGl0ZWN0dXJlcyB3aXRoIHRoZSAiCisiSTxhcmNoPiB0YWcuIFBsZWFzZSByZWZlciB0byBCPFN0YW5kYXJkIHN5bWJvbCB0YWdzPiBzdWJzZWN0aW9uIGFib3ZlIGZvciAiCisibW9yZSBpbmZvcm1hdGlvbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjAwCittc2dpZCAiIgorIlBhdHRlcm5zIGFyZSBhbiBleHRlbnNpb24gb2YgdGhlIEk8ZGViLXN5bWJvbHMoNSk+IGZvcm1hdCBoZW5jZSB0aGV5IGFyZSAiCisib25seSB2YWxpZCBpbiBzeW1ib2wgZmlsZSB0ZW1wbGF0ZXMuIFBhdHRlcm4gc3BlY2lmaWNhdGlvbiBzeW50YXggaXMgbm90IGFueSAiCisiZGlmZmVyZW50IGZyb20gdGhlIG9uZSBvZiBhIHNwZWNpZmljIHN5bWJvbC4gSG93ZXZlciwgc3ltYm9sIG5hbWUgcGFydCBvZiAiCisidGhlIHNwZWNpZmljYXRpb24gc2VydmVzIGFzIGFuIGV4cHJlc3Npb24gdG8gYmUgbWF0Y2hlZCBhZ2FpbnN0ICIKKyJJPG5hbWVAdmVyc2lvbj4gb2YgdGhlIHJlYWwgc3ltYm9sLiBJbiBvcmRlciB0byBkaXN0aW5ndWlzaCBhbW9uZyBkaWZmZXJlbnQgIgorInBhdHRlcm4gdHlwZXMsIGEgcGF0dGVybiB3aWxsIHR5cGljYWxseSBiZSB0YWdnZWQgd2l0aCBhIHNwZWNpYWwgdGFnLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyMDIKK21zZ2lkICJBdCB0aGUgbW9tZW50LCBCPGRwa2ctZ2Vuc3ltYm9scz4gc3VwcG9ydHMgdGhyZWUgYmFzaWMgcGF0dGVybiB0eXBlczoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjE0Cittc2dpZCAiIgorIlRoaXMgcGF0dGVybiBpcyBkZW5vdGVkIGJ5IHRoZSBJPGMrKz4gdGFnLiBJdCBtYXRjaGVzIG9ubHkgQysrIHN5bWJvbHMgYnkgIgorInRoZWlyIGRlbWFuZ2xlZCBzeW1ib2wgbmFtZSAoYXMgZW1pdHRlZCBieSBCPGMrK2ZpbHQ+KDEpIHV0aWxpdHkpLiBUaGlzICIKKyJwYXR0ZXJuIGlzIHZlcnkgaGFuZHkgZm9yIG1hdGNoaW5nIHN5bWJvbHMgd2hpY2ggbWFuZ2xlZCBuYW1lcyBtaWdodCB2YXJ5ICIKKyJhY3Jvc3MgZGlmZmVyZW50IGFyY2hpdGVjdHVyZXMgd2hpbGUgdGhlaXIgZGVtYW5nbGVkIG5hbWVzIHJlbWFpbiB0aGUgc2FtZS4gIgorIk9uZSBncm91cCBvZiBzdWNoIHN5bWJvbHMgaXMgSTxub24tdmlydHVhbCB0aHVua3M+IHdoaWNoIGhhdmUgYXJjaGl0ZWN0dXJlICIKKyJzcGVjaWZpYyBvZmZzZXRzIGVtYmVkZGVkIGluIHRoZWlyIG1hbmdsZWQgbmFtZXMuIEEgY29tbW9uIGluc3RhbmNlIG9mIHRoaXMgIgorImNhc2UgaXMgYSB2aXJ0dWFsIGRlc3RydWN0b3Igd2hpY2ggdW5kZXIgZGlhbW9uZCBpbmhlcml0YW5jZSBuZWVkcyBhIG5vbi0iCisidmlydHVhbCB0aHVuayBzeW1ib2wuIEZvciBleGFtcGxlLCBldmVuIGlmIF9aVGhuOF9OM05TQjZDbGFzc0REMUV2QEJhc2Ugb24gIgorIjMyYml0IGFyY2hpdGVjdHVyZXMgd2lsbCBwcm9iYWJseSBiZSBfWlRobjE2X04zTlNCNkNsYXNzREQxRXZAQmFzZSBvbiA2NGJpdCAiCisib25lcywgaXQgY2FuIGJlIG1hdGNoZWQgd2l0aCBhIHNpbmdsZSBJPGMrKz4gcGF0dGVybjoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjIwCisjLCBuby13cmFwCittc2dpZCAiIgorImxpYmR1bW15LnNvLjEgbGliZHVtbXkxICNNSU5WRVIjXG4iCisiIFsuLi5dXG4iCisiIChjKyspXCJub24tdmlydHVhbCB0aHVuayB0byBOU0I6OkNsYXNzRDo6fkNsYXNzRCgpQEJhc2VcIiAxLjBcbiIKKyIgWy4uLl1cbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyMjIKK21zZ2lkICIiCisiVGhlIGRlbWFuZ2xlZCBuYW1lIGFib3ZlIGNhbiBiZSBvYnRhaW5lZCBieSBleGVjdXRpbmcgdGhlIGZvbGxvd2luZyBjb21tYW5kOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyMjQKKyMsIG5vLXdyYXAKK21zZ2lkICIgJCBlY2hvICdfWlRobjhfTjNOU0I2Q2xhc3NERDFFdkBCYXNlJyB8IGMrK2ZpbHRcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyMzIKK21zZ2lkICIiCisiUGxlYXNlIG5vdGUgdGhhdCB3aGlsZSBtYW5nbGVkIG5hbWUgaXMgdW5pcXVlIGluIHRoZSBsaWJyYXJ5IGJ5IGRlZmluaXRpb24sICIKKyJ0aGlzIGlzIG5vdCBuZWNlc3NhcmlseSB0cnVlIGZvciBkZW1hbmdsZWQgbmFtZXMuIEEgY291cGxlIG9mIGRpc3RpbmN0IHJlYWwgIgorInN5bWJvbHMgbWF5IGhhdmUgdGhlIHNhbWUgZGVtYW5nbGVkIG5hbWUuIEZvciBleGFtcGxlLCB0aGF0J3MgdGhlIGNhc2Ugd2l0aCAiCisibm9uLXZpcnR1YWwgdGh1bmsgc3ltYm9scyBpbiBjb21wbGV4IGluaGVyaXRhbmNlIGNvbmZpZ3VyYXRpb25zIG9yIHdpdGggbW9zdCAiCisiY29uc3RydWN0b3JzIGFuZCBkZXN0cnVjdG9ycyAoc2luY2UgZysrIHR5cGljYWxseSBnZW5lcmF0ZXMgdHdvIHJlYWwgc3ltYm9scyAiCisiZm9yIHRoZW0pLiBIb3dldmVyLCBhcyB0aGVzZSBjb2xsaXNpb25zIGhhcHBlbiBvbiB0aGUgQUJJIGxldmVsLCB0aGV5IHNob3VsZCAiCisibm90IGRlZ3JhZGUgcXVhbGl0eSBvZiB0aGUgc3ltYm9sIGZpbGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjIzOQorbXNnaWQgIiIKKyJUaGlzIHBhdHRlcm4gaXMgZGVub3RlZCBieSB0aGUgSTxzeW12ZXI+IHRhZy4gV2VsbCBtYWludGFpbmVkIGxpYnJhcmllcyBoYXZlICIKKyJ2ZXJzaW9uZWQgc3ltYm9scyB3aGVyZSBlYWNoIHZlcnNpb24gY29ycmVzcG9uZHMgdG8gdGhlIHVwc3RyZWFtIHZlcnNpb24gIgorIndoZXJlIHRoZSBzeW1ib2wgZ290IGFkZGVkLiBJZiB0aGF0J3MgdGhlIGNhc2UsIHlvdSBjYW4gdXNlIGEgSTxzeW12ZXI+ICIKKyJwYXR0ZXJuIHRvIG1hdGNoIGFueSBzeW1ib2wgYXNzb2NpYXRlZCB0byB0aGUgc3BlY2lmaWMgdmVyc2lvbi4gRm9yIGV4YW1wbGU6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjI0NgorIywgbm8td3JhcAorbXNnaWQgIiIKKyJsaWJjLnNvLjYgbGliYzYgI01JTlZFUiNcbiIKKyIgKHN5bXZlcilHTElCQ18yLjAgMi4wXG4iCisiIFsuLi5dXG4iCisiIChzeW12ZXIpR0xJQkNfMi43IDIuN1xuIgorIiBhY2Nlc3NAR0xJQkNfMi4wIDIuMlxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjI1MgorbXNnaWQgIiIKKyJBbGwgc3ltYm9scyBhc3NvY2lhdGVkIHdpdGggdmVyc2lvbnMgR0xJQkNfMi4wIGFuZCBHTElCQ18yLjcgd2lsbCBsZWFkIHRvICIKKyJtaW5pbWFsIHZlcnNpb24gb2YgMi4wIGFuZCAyLjcgcmVzcGVjdGl2ZWx5IHdpdGggdGhlIGV4Y2VwdGlvbiBvZiB0aGUgc3ltYm9sICIKKyJhY2Nlc3NAR0xJQkNfMi4wLiBUaGUgbGF0dGVyIHdpbGwgbGVhZCB0byBhIG1pbmltYWwgZGVwZW5kZW5jeSBvbiBsaWJjNiAiCisidmVyc2lvbiAyLjIgZGVzcGl0ZSBiZWluZyBpbiB0aGUgc2NvcGUgb2YgdGhlIFwiKHN5bXZlcilHTElCQ18yLjBcIiBwYXR0ZXJuICIKKyJiZWNhdXNlIHNwZWNpZmljIHN5bWJvbHMgdGFrZSBwcmVjZWRlbmNlIG92ZXIgcGF0dGVybnMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjI1NworbXNnaWQgIiIKKyJQbGVhc2Ugbm90ZSB0aGF0IHdoaWxlIG9sZCBzdHlsZSB3aWxkY2FyZCBwYXR0ZXJucyAoZGVub3RlZCBieSBcIipAdmVyc2lvblwiICIKKyJpbiB0aGUgc3ltYm9sIG5hbWUgZmllbGQpIGFyZSBzdGlsbCBzdXBwb3J0ZWQsIHRoZXkgaGF2ZSBiZWVuIGRlcHJlY2F0ZWQgYnkgIgorIm5ldyBzdHlsZSBzeW50YXggXCIoc3ltdmVyfG9wdGlvbmFsKXZlcnNpb25cIi4gRm9yIGV4YW1wbGUsIFwiKkBHTElCQ18yLjAgIgorIjIuMFwiIHNob3VsZCBiZSB3cml0dGVuIGFzIFwiKHN5bXZlcnxvcHRpb25hbClHTElCQ18yLjAgMi4wXCIgaWYgdGhlIHNhbWUgIgorImJlaGF2aW91ciBpcyBuZWVkZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjI2NQorbXNnaWQgIiIKKyJSZWd1bGFyIGV4cHJlc3Npb24gcGF0dGVybnMgYXJlIGRlbm90ZWQgYnkgdGhlIEk8cmVnZXg+IHRhZy4gVGhleSBtYXRjaCBieSAiCisidGhlIHBlcmwgcmVndWxhciBleHByZXNzaW9uIHNwZWNpZmllZCBpbiB0aGUgc3ltYm9sIG5hbWUgZmllbGQuIEEgcmVndWxhciAiCisiZXhwcmVzc2lvbiBpcyBtYXRjaGVkIGFzIGl0IGlzLCB0aGVyZWZvcmUgZG8gbm90IGZvcmdldCB0byBzdGFydCBpdCB3aXRoIHRoZSAiCisiSTxePiBjaGFyYWN0ZXIgb3IgaXQgbWF5IG1hdGNoIGFueSBwYXJ0IG9mIHRoZSByZWFsIHN5bWJvbCBJPG5hbWVAdmVyc2lvbj4gIgorInN0cmluZy4gRm9yIGV4YW1wbGU6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjI3MAorIywgbm8td3JhcAorbXNnaWQgIiIKKyJsaWJkdW1teS5zby4xIGxpYmR1bW15MSAjTUlOVkVSI1xuIgorIiAocmVnZXgpXCJebXlzdGFja18uKkBCYXNlJFwiIDEuMFxuIgorIiAocmVnZXh8b3B0aW9uYWwpXCJwcml2YXRlXCIgMS4wXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6Mjc1Cittc2dpZCAiIgorIlN5bWJvbHMgbGlrZSBcIm15c3RhY2tfbmV3QEJhc2VcIiwgXCJteXN0YWNrX3B1c2hAQmFzZVwiLCBcIm15c3RhY2tfcG9wQEJhc2UiCisiXCIgZXRjLiAgd2lsbCBiZSBtYXRjaGVkIGJ5IHRoZSBmaXJzdCBwYXR0ZXJuIHdoaWxlIGUuZy4gIgorIlwibmdfbXlzdGFja19uZXdAQmFzZVwiIHdvbid0LiAgVGhlIHNlY29uZCBwYXR0ZXJuIHdpbGwgbWF0Y2ggYWxsIHN5bWJvbHMgIgorImhhdmluZyB0aGUgc3RyaW5nIFwicHJpdmF0ZVwiIGluIHRoZWlyIG5hbWVzIGFuZCBtYXRjaGVzIHdpbGwgaW5oZXJpdCAiCisiSTxvcHRpb25hbD4gdGFnIGZyb20gdGhlIHBhdHRlcm4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjI4MAorbXNnaWQgIiIKKyJCYXNpYyBwYXR0ZXJucyBsaXN0ZWQgYWJvdmUgY2FuIGJlIGNvbWJpbmVkIHdoZXJlIGl0IG1ha2VzIHNlbnNlLiBJbiB0aGF0ICIKKyJjYXNlLCB0aGV5IGFyZSBwcm9jZXNzZWQgaW4gdGhlIG9yZGVyIGluIHdoaWNoIHRoZSB0YWdzIGFyZSBzcGVjaWZpZWQuIEZvciAiCisiZXhhbXBsZSwgYm90aCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyODMKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiIChjKyt8cmVnZXgpXCJeTlNBOjpDbGFzc0E6OlByaXZhdGU6OnByaXZtZXRob2RcXGVkXFxlKGludFxcZSlAQmFzZVwiIDEuMFxuIgorIiAocmVnZXh8YysrKU4zTlNBNkNsYXNzQTdQcml2YXRlMTFwcml2bWV0aG9kXFxlZEVpQEJhc2UgMS4wXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjkzCittc2dpZCAiIgorIndpbGwgbWF0Y2ggc3ltYm9scyBcIl9aTjNOU0E2Q2xhc3NBN1ByaXZhdGUxMXByaXZtZXRob2QxRWlAQmFzZVwiIGFuZCAiCisiXCJfWk4zTlNBNkNsYXNzQTdQcml2YXRlMTFwcml2bWV0aG9kMkVpQEJhc2VcIi4gV2hlbiBtYXRjaGluZyB0aGUgZmlyc3QgIgorInBhdHRlcm4sIHRoZSByYXcgc3ltYm9sIGlzIGZpcnN0IGRlbWFuZ2xlZCBhcyBDKysgc3ltYm9sLCB0aGVuIHRoZSBkZW1hbmdsZWQgIgorIm5hbWUgaXMgbWF0Y2hlZCBhZ2FpbnN0IHRoZSByZWd1bGFyIGV4cHJlc3Npb24uIE9uIHRoZSBvdGhlciBoYW5kLCB3aGVuICIKKyJtYXRjaGluZyB0aGUgc2Vjb25kIHBhdHRlcm4sIHJlZ3VsYXIgZXhwcmVzc2lvbiBpcyBtYXRjaGVkIGFnYWluc3QgdGhlIHJhdyAiCisic3ltYm9sIG5hbWUsIHRoZW4gdGhlIHN5bWJvbCBpcyB0ZXN0ZWQgaWYgaXQgaXMgQysrIG9uZSBieSBhdHRlbXB0aW5nIHRvICIKKyJkZW1hbmdsZSBpdC4gQSBmYWlsdXJlIG9mIGFueSBiYXNpYyBwYXR0ZXJuIHdpbGwgcmVzdWx0IGluIHRoZSBmYWlsdXJlIG9mICIKKyJ0aGUgd2hvbGUgcGF0dGVybi4gIFRoZXJlZm9yZSwgZm9yIGV4YW1wbGUsICIKKyJcIl9fTjNOU0E2Q2xhc3NBN1ByaXZhdGUxMXByaXZtZXRob2RcXGVkRWlAQmFzZVwiIHdpbGwgbm90IG1hdGNoIGVpdGhlciBvZiAiCisidGhlIHBhdHRlcm5zIGJlY2F1c2UgaXQgaXMgbm90IGEgdmFsaWQgQysrIHN5bWJvbC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6Mjk5Cittc2dpZCAiIgorIkluIGdlbmVyYWwsIGFsbCBwYXR0ZXJucyBhcmUgZGl2aWRlZCBpbnRvIHR3byBncm91cHM6IGFsaWFzZXMgKGJhc2ljIEk8YysrPiAiCisiYW5kIEk8c3ltdmVyPikgYW5kIGdlbmVyaWMgcGF0dGVybnMgKEk8cmVnZXg+LCBhbGwgY29tYmluYXRpb25zIG9mIG11bHRpcGxlICIKKyJiYXNpYyBwYXR0ZXJucykuIE1hdGNoaW5nIG9mIGJhc2ljIGFsaWFzLWJhc2VkIHBhdHRlcm5zIGlzIGZhc3QgKE8oMSkpICAiCisid2hpbGUgZ2VuZXJpYyBwYXR0ZXJucyBhcmUgTyhOKSAoTiAtIGdlbmVyaWMgcGF0dGVybiBjb3VudCkgZm9yIGVhY2ggIgorInN5bWJvbC4gIFRoZXJlZm9yZSwgaXQgaXMgcmVjb21tZW5kZWQgbm90IHRvIG92ZXJ1c2UgZ2VuZXJpYyBwYXR0ZXJucy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzA2Cittc2dpZCAiIgorIldoZW4gbXVsdGlwbGUgcGF0dGVybnMgbWF0Y2ggdGhlIHNhbWUgcmVhbCBzeW1ib2wsIGFsaWFzZXMgKGZpcnN0IEk8YysrPiwgIgorInRoZW4gSTxzeW12ZXI+KSBhcmUgcHJlZmVycmVkIG92ZXIgZ2VuZXJpYyBwYXR0ZXJucy4gR2VuZXJpYyBwYXR0ZXJucyBhcmUgIgorIm1hdGNoZWQgaW4gdGhlIG9yZGVyIHRoZXkgYXJlIGZvdW5kIGluIHRoZSBzeW1ib2wgZmlsZSB0ZW1wbGF0ZSB1bnRpbCB0aGUgIgorImZpcnN0IHN1Y2Nlc3MuICBQbGVhc2Ugbm90ZSwgaG93ZXZlciwgdGhhdCBtYW51YWwgcmVvcmRlcmluZyBvZiB0ZW1wbGF0ZSAiCisiZmlsZSBlbnRyaWVzIGlzIG5vdCByZWNvbW1lbmRlZCBiZWNhdXNlIEI8ZHBrZy1nZW5zeW1ib2xzPiBnZW5lcmF0ZXMgZGlmZnMgIgorImJhc2VkIG9uIHRoZSBhbHBoYW51bWVyaWNhbCBvcmRlciBvZiB0aGVpciBuYW1lcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjMwNgorIywgbm8td3JhcAorbXNnaWQgIlVzaW5nIGluY2x1ZGVzIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjMxMQorbXNnaWQgIiIKKyJXaGVuIHRoZSBzZXQgb2YgZXhwb3J0ZWQgc3ltYm9scyBkaWZmZXIgYmV0d2VlbiBhcmNoaXRlY3R1cmVzLCBpdCBtYXkgYmVjb21lICIKKyJpbmVmZmljaWVudCB0byB1c2UgYSBzaW5nbGUgc3ltYm9sIGZpbGUuIEluIHRob3NlIGNhc2VzLCBhbiBpbmNsdWRlICIKKyJkaXJlY3RpdmUgbWF5IHByb3ZlIHRvIGJlIHVzZWZ1bCBpbiBhIGNvdXBsZSBvZiB3YXlzOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozMTUKK21zZ2lkICIiCisiWW91IGNhbiBmYWN0b3JpemUgdGhlIGNvbW1vbiBwYXJ0IGluIHNvbWUgZXh0ZXJuYWwgZmlsZSBhbmQgaW5jbHVkZSB0aGF0ICIKKyJmaWxlIGluIHlvdXIgSTxwYWNrYWdlPi5zeW1ib2xzLkk8YXJjaD4gZmlsZSBieSB1c2luZyBhbiBpbmNsdWRlIGRpcmVjdGl2ZSAiCisibGlrZSB0aGlzOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozMTcKK21zZ2lkICIjaW5jbHVkZSBcIkk8cGFja2FnZXM+LnN5bWJvbHMuY29tbW9uXCIiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzE5Cittc2dpZCAiVGhlIGluY2x1ZGUgZGlyZWN0aXZlIG1heSBhbHNvIGJlIHRhZ2dlZCBsaWtlIGFueSBzeW1ib2w6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjMyMQorbXNnaWQgIih0YWd8Li58dGFnTikjaW5jbHVkZSBcImZpbGUtdG8taW5jbHVkZVwiIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjMyNgorbXNnaWQgIiIKKyJBcyBhIHJlc3VsdCwgYWxsIHN5bWJvbHMgaW5jbHVkZWQgZnJvbSBJPGZpbGUtdG8taW5jbHVkZT4gd2lsbCBiZSBjb25zaWRlcmVkICIKKyJ0byBiZSB0YWdnZWQgd2l0aCBJPHRhZz4gLi4gSTx0YWdOPiBieSBkZWZhdWx0LiBZb3UgY2FuIHVzZSB0aGlzIGZlYXR1cmUgdG8gIgorImNyZWF0ZSBhIGNvbW1vbiBJPHBhY2thZ2U+LnN5bWJvbHMgZmlsZSB3aGljaCBpbmNsdWRlcyBhcmNoaXRlY3R1cmUgc3BlY2lmaWMgIgorInN5bWJvbCBmaWxlczoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzMxCisjLCBuby13cmFwCittc2dpZCAiIgorIiAgY29tbW9uX3N5bWJvbDFAQmFzZSAxLjBcbiIKKyIgKGFyY2g9YW1kNjQgaWE2NCBhbHBoYSkjaW5jbHVkZSBcInBhY2thZ2Uuc3ltYm9scy42NGJpdFwiXG4iCisiIChhcmNoPSFhbWQ2NCAhaWE2NCAhYWxwaGEpI2luY2x1ZGUgXCJwYWNrYWdlLnN5bWJvbHMuMzJiaXRcIlxuIgorIiAgY29tbW9uX3N5bWJvbDJAQmFzZSAxLjBcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozNDAKK21zZ2lkICIiCisiVGhlIHN5bWJvbHMgZmlsZXMgYXJlIHJlYWQgbGluZSBieSBsaW5lLCBhbmQgaW5jbHVkZSBkaXJlY3RpdmVzIGFyZSAiCisicHJvY2Vzc2VkIGFzIHNvb24gYXMgdGhleSBhcmUgZW5jb3VudGVyZWQuIFRoaXMgbWVhbnMgdGhhdCB0aGUgY29udGVudCBvZiAiCisidGhlIGluY2x1ZGVkIGZpbGUgY2FuIG92ZXJyaWRlIGFueSBjb250ZW50IHRoYXQgYXBwZWFyZWQgYmVmb3JlIHRoZSBpbmNsdWRlICIKKyJkaXJlY3RpdmUgYW5kIHRoYXQgYW55IGNvbnRlbnQgYWZ0ZXIgdGhlIGRpcmVjdGl2ZSBjYW4gb3ZlcnJpZGUgYW55dGhpbmcgIgorImNvbnRhaW5lZCBpbiB0aGUgaW5jbHVkZWQgZmlsZS4gQW55IHN5bWJvbCAob3IgZXZlbiBhbm90aGVyICNpbmNsdWRlICIKKyJkaXJlY3RpdmUpIGluIHRoZSBpbmNsdWRlZCBmaWxlIGNhbiBzcGVjaWZ5IGFkZGl0aW9uYWwgdGFncyBvciBvdmVycmlkZSAiCisidmFsdWVzIG9mIHRoZSBpbmhlcml0ZWQgdGFncyBpbiBpdHMgdGFnIHNwZWNpZmljYXRpb24uIEhvd2V2ZXIsIHRoZXJlIGlzIG5vICIKKyJ3YXkgZm9yIHRoZSBzeW1ib2wgdG8gcmVtb3ZlIGFueSBvZiB0aGUgaW5oZXJpdGVkIHRhZ3MuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM0NQorbXNnaWQgIiIKKyJBbiBpbmNsdWRlZCBmaWxlIGNhbiByZXBlYXQgdGhlIGhlYWRlciBsaW5lIGNvbnRhaW5pbmcgdGhlIFNPTkFNRSBvZiB0aGUgIgorImxpYnJhcnkuIEluIHRoYXQgY2FzZSwgaXQgb3ZlcnJpZGVzIGFueSBoZWFkZXIgbGluZSBwcmV2aW91c2x5IHJlYWQuICAiCisiSG93ZXZlciwgaW4gZ2VuZXJhbCBpdCdzIGJlc3QgdG8gYXZvaWQgZHVwbGljYXRpbmcgaGVhZGVyIGxpbmVzLiBPbmUgd2F5IHRvICIKKyJkbyBpdCBpcyB0aGUgZm9sbG93aW5nOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozNDgKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiI2luY2x1ZGUgXCJsaWJzb21ldGhpbmcxLnN5bWJvbHMuY29tbW9uXCJcbiIKKyIgYXJjaF9zcGVjaWZpY19zeW1ib2xAQmFzZSAxLjBcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1nZW5zeW1ib2xzLjE6MzQ4CisjLCBuby13cmFwCittc2dpZCAiR29vZCBsaWJyYXJ5IG1hbmFnZW1lbnQiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzUxCittc2dpZCAiQSB3ZWxsLW1haW50YWluZWQgbGlicmFyeSBoYXMgdGhlIGZvbGxvd2luZyBmZWF0dXJlczoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzU1Cittc2dpZCAiIgorIml0cyBBUEkgaXMgc3RhYmxlIChwdWJsaWMgc3ltYm9scyBhcmUgbmV2ZXIgZHJvcHBlZCwgb25seSBuZXcgcHVibGljIHN5bWJvbHMgIgorImFyZSBhZGRlZCkgYW5kIGNoYW5nZXMgaW4gaW5jb21wYXRpYmxlIHdheXMgb25seSB3aGVuIHRoZSBTT05BTUUgY2hhbmdlczsiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzU4Cittc2dpZCAiIgorImlkZWFsbHksIGl0IHVzZXMgc3ltYm9sIHZlcnNpb25pbmcgdG8gYWNoaWV2ZSBBQkkgc3RhYmlsaXR5IGRlc3BpdGUgaW50ZXJuYWwgIgorImNoYW5nZXMgYW5kIEFQSSBleHRlbnNpb247IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM2MQorbXNnaWQgIiIKKyJpdCBkb2Vzbid0IGV4cG9ydCBwcml2YXRlIHN5bWJvbHMgKHN1Y2ggc3ltYm9scyBjYW4gYmUgdGFnZ2VkIG9wdGlvbmFsIGFzICIKKyJ3b3JrYXJvdW5kKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzY5Cittc2dpZCAiIgorIldoaWxlIG1haW50YWluaW5nIHRoZSBzeW1ib2xzIGZpbGUsIGl0J3MgZWFzeSB0byBub3RpY2UgYXBwZWFyYW5jZSBhbmQgIgorImRpc2FwcGVhcmFuY2Ugb2Ygc3ltYm9scy4gQnV0IGl0J3MgbW9yZSBkaWZmaWN1bHQgdG8gY2F0Y2ggaW5jb21wYXRpYmxlIEFQSSAiCisiYW5kIEFCSSBjaGFuZ2UuIFRodXMgdGhlIG1haW50YWluZXIgc2hvdWxkIHJlYWQgdGhvcm91Z2hseSB0aGUgdXBzdHJlYW0gIgorImNoYW5nZWxvZyBsb29raW5nIGZvciBjYXNlcyB3aGVyZSB0aGUgcnVsZXMgb2YgZ29vZCBsaWJyYXJ5IG1hbmFnZW1lbnQgaGF2ZSAiCisiYmVlbiBicm9rZW4uIElmIHBvdGVudGlhbCBwcm9ibGVtcyBhcmUgZGlzY292ZXJlZCwgdGhlIHVwc3RyZWFtIGF1dGhvciAiCisic2hvdWxkIGJlIG5vdGlmaWVkIGFzIGFuIHVwc3RyZWFtIGZpeCBpcyBhbHdheXMgYmV0dGVyIHRoYW4gYSBEZWJpYW4gIgorInNwZWNpZmljIHdvcmstYXJvdW5kLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzcwCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LVA+STxwYWNrYWdlLWJ1aWxkLWRpcj4iCittc2dzdHIgIkI8Wy0tXSA+STxmaWxlbmFtZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM3MworIywgZnV6enkKK21zZ2lkICJTY2FuIEk8cGFja2FnZS1idWlsZC1kaXI+IGluc3RlYWQgb2YgZGViaWFuL3RtcC4iCittc2dzdHIgIkI8LXU+IOOCkuaMh+WumuOBl+OBn+WgtOWQiOOBr+OAgSouZGViIOOBruS7o+OCj+OCiuOBqyAqLnVkZWIg44KS44K544Kt44Oj44Oz44GZ44KL44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozNzcKK21zZ2lkICIiCisiRGVmaW5lIHRoZSBwYWNrYWdlIG5hbWUuIFJlcXVpcmVkIGlmIG1vcmUgdGhhbiBvbmUgYmluYXJ5IHBhY2thZ2UgaXMgbGlzdGVkICIKKyJpbiBkZWJpYW4vY29udHJvbCAob3IgaWYgdGhlcmUncyBubyBkZWJpYW4vY29udHJvbCBmaWxlKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzgxCittc2dpZCAiIgorIkRlZmluZSB0aGUgcGFja2FnZSB2ZXJzaW9uLiBEZWZhdWx0cyB0byB0aGUgdmVyc2lvbiBleHRyYWN0ZWQgZnJvbSBkZWJpYW4vIgorImNoYW5nZWxvZy4gUmVxdWlyZWQgaWYgY2FsbGVkIG91dHNpZGUgb2YgYSBzb3VyY2UgcGFja2FnZSB0cmVlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzgxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LWU+STxsaWJyYXJ5LWZpbGU+IgorbXNnc3RyICJCPC0tZnN5cy10YXJmaWxlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6Mzg3Cittc2dpZCAiIgorIk9ubHkgYW5hbHl6ZSBsaWJyYXJpZXMgZXhwbGljaXRseSBsaXN0ZWQgaW5zdGVhZCBvZiBmaW5kaW5nIGFsbCBwdWJsaWMgIgorImxpYnJhcmllcy4gWW91IGNhbiB1c2UgYSByZWd1bGFyIGV4cHJlc3Npb24gaW4gSTxsaWJyYXJ5LWZpbGU+IHRvIG1hdGNoICIKKyJtdWx0aXBsZSBsaWJyYXJpZXMgd2l0aCBhIHNpbmdsZSBhcmd1bWVudCAob3RoZXJ3aXNlIHlvdSBuZWVkIG11bHRpcGxlIEI8LSIKKyJlPikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbnN5bWJvbHMuMTozODcKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtST5JPGZpbGVuYW1lPiIKK21zZ3N0ciAiQjxbLS1dID5JPGZpbGVuYW1lPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzkxCittc2dpZCAiIgorIlVzZSBJPGZpbGVuYW1lPiBhcyByZWZlcmVuY2UgZmlsZSB0byBnZW5lcmF0ZSB0aGUgc3ltYm9scyBmaWxlIHRoYXQgaXMgIgorImludGVncmF0ZWQgaW4gdGhlIHBhY2thZ2UgaXRzZWxmLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozOTUKK21zZ2lkICIiCisiUHJpbnQgdGhlIGdlbmVyYXRlZCBzeW1ib2xzIGZpbGUgdG8gc3RhbmRhcmQgb3V0cHV0LCByYXRoZXIgdGhhbiBiZWluZyAiCisic3RvcmVkIGluIHRoZSBwYWNrYWdlIGJ1aWxkIHRyZWUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbnN5bWJvbHMuMTozOTUKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtTz5JPGZpbGVuYW1lPiIKK21zZ3N0ciAiQjxbLS1dID5JPGZpbGVuYW1lPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDAxCittc2dpZCAiIgorIlN0b3JlIHRoZSBnZW5lcmF0ZWQgc3ltYm9scyBmaWxlIGFzIEk8ZmlsZW5hbWU+LiBJZiBJPGZpbGVuYW1lPiBpcyBwcmUtIgorImV4aXN0aW5nLCBpdHMgY29udGVudCBpcyB1c2VkIGFzIGJhc2lzIGZvciB0aGUgZ2VuZXJhdGVkIHN5bWJvbHMgZmlsZS4gIFlvdSAiCisiY2FuIHVzZSB0aGlzIGZlYXR1cmUgdG8gdXBkYXRlIGEgc3ltYm9scyBmaWxlIHNvIHRoYXQgaXQgbWF0Y2hlcyBhIG5ld2VyICIKKyJ1cHN0cmVhbSB2ZXJzaW9uIG9mIHlvdXIgbGlicmFyeS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQwMQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC10PiIKK21zZ3N0ciAiQjwtQj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQxMAorbXNnaWQgIiIKKyJXcml0ZSB0aGUgc3ltYm9sIGZpbGUgaW4gdGVtcGxhdGUgbW9kZSByYXRoZXIgdGhhbiB0aGUgZm9ybWF0IGNvbXBhdGlibGUgIgorIndpdGggSTxkZWItc3ltYm9scyg1KT4uIFRoZSBtYWluIGRpZmZlcmVuY2UgaXMgdGhhdCBpbiB0aGUgdGVtcGxhdGUgbW9kZSAiCisic3ltYm9sIG5hbWVzIGFuZCB0YWdzIGFyZSB3cml0dGVuIGluIHRoZWlyIG9yaWdpbmFsIGZvcm0gY29udHJhcnkgdG8gdGhlICIKKyJwb3N0LXByb2Nlc3NlZCBzeW1ib2wgbmFtZXMgd2l0aCB0YWdzIHN0cmlwcGVkIGluIHRoZSBjb21wYXRpYmlsaXR5IG1vZGUuICAiCisiTW9yZW92ZXIsIHNvbWUgc3ltYm9scyBtaWdodCBiZSBvbWl0dGVkIHdoZW4gd3JpdGluZyBhIHN0YW5kYXJkIEk8ZGViLXN5bWJvbHMiCisiKDUpPiBmaWxlIChhY2NvcmRpbmcgdG8gdGhlIHRhZyBwcm9jZXNzaW5nIHJ1bGVzKSB3aGlsZSBhbGwgc3ltYm9scyBhcmUgIgorImFsd2F5cyB3cml0dGVuIHRvIHRoZSBzeW1ib2wgZmlsZSB0ZW1wbGF0ZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQxMAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1jPkk8WzAtNF0+IgorbXNnc3RyICJCPC0tbGlzdD4gW0k8RTxsdD5nbG9iLXBhdHRlcm5FPGd0Pj5dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0MTgKK21zZ2lkICIiCisiRGVmaW5lIHRoZSBjaGVja3MgdG8gZG8gd2hlbiBjb21wYXJpbmcgdGhlIGdlbmVyYXRlZCBzeW1ib2xzIGZpbGUgd2l0aCB0aGUgIgorInRlbXBsYXRlIGZpbGUgdXNlZCBhcyBzdGFydGluZyBwb2ludC4gQnkgZGVmYXVsdCB0aGUgbGV2ZWwgaXMgMS4gSW5jcmVhc2luZyAiCisibGV2ZWxzIGRvIG1vcmUgY2hlY2tzIGFuZCBpbmNsdWRlIGFsbCBjaGVja3Mgb2YgbG93ZXIgbGV2ZWxzLiBMZXZlbCAwIG5ldmVyICIKKyJmYWlscy4gTGV2ZWwgMSBmYWlscyBpZiBzb21lIHN5bWJvbHMgaGF2ZSBkaXNhcHBlYXJlZC4gTGV2ZWwgMiBmYWlscyBpZiBzb21lICIKKyJuZXcgc3ltYm9scyBoYXZlIGJlZW4gaW50cm9kdWNlZC4gTGV2ZWwgMyBmYWlscyBpZiBzb21lIGxpYnJhcmllcyBoYXZlICIKKyJkaXNhcHBlYXJlZC4gTGV2ZWwgNCBmYWlscyBpZiBzb21lIGxpYnJhcmllcyBoYXZlIGJlZW4gaW50cm9kdWNlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDIxCittc2dpZCAiIgorIlRoaXMgdmFsdWUgY2FuIGJlIG92ZXJyaWRkZW4gYnkgdGhlIGVudmlyb25tZW50IHZhcmlhYmxlICIKKyJEUEtHX0dFTlNZTUJPTFNfQ0hFQ0tfTEVWRUwuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQyNworbXNnaWQgIiIKKyJLZWVwIHF1aWV0IGFuZCBuZXZlciBnZW5lcmF0ZSBhIGRpZmYgYmV0d2VlbiBnZW5lcmF0ZWQgc3ltYm9scyBmaWxlIGFuZCB0aGUgIgorInRlbXBsYXRlIGZpbGUgdXNlZCBhcyBzdGFydGluZyBwb2ludCBvciBzaG93IGFueSB3YXJuaW5ncyBhYm91dCBuZXcvbG9zdCAiCisibGlicmFyaWVzIG9yIG5ldy9sb3N0IHN5bWJvbHMuIFRoaXMgb3B0aW9uIG9ubHkgZGlzYWJsZXMgaW5mb3JtYXRpb25hbCAiCisib3V0cHV0IGJ1dCBub3QgdGhlIGNoZWNrcyB0aGVtc2VsdmVzIChzZWUgSTwtYz4gb3B0aW9uKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQyNworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1hPkk8YXJjaD4iCittc2dzdHIgIkI8LWEsIC0tbm8tYXJjaGl0ZWN0dXJlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDMyCittc2dpZCAiIgorIkFzc3VtZSBJPGFyY2g+IGFzIGhvc3QgYXJjaGl0ZWN0dXJlIHdoZW4gcHJvY2Vzc2luZyBzeW1ib2wgZmlsZXMuIFVzZSB0aGlzICIKKyJvcHRpb24gdG8gZ2VuZXJhdGUgYSBzeW1ib2wgZmlsZSBvciBkaWZmIGZvciBhbnkgYXJjaGl0ZWN0dXJlIHByb3ZpZGVkIGl0cyAiCisiYmluYXJpZXMgYXJlIGFscmVhZHkgYXZhaWxhYmxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0MzcKK21zZ2lkICIiCisiRW5hYmxlIGRlYnVnIG1vZGUuIE51bWVyb3VzIG1lc3NhZ2VzIGFyZSBkaXNwbGF5ZWQgdG8gZXhwbGFpbiB3aGF0IEI8ZHBrZy0iCisiZ2Vuc3ltYm9scz4gZG9lcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQzNworIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPC1HPiIKK21zZ2lkICJCPC1WPiIKK21zZ3N0ciAiQjwtRz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQ0MworbXNnaWQgIiIKKyJFbmFibGUgdmVyYm9zZSBtb2RlLiBUaGUgZ2VuZXJhdGVkIHN5bWJvbHMgZmlsZSBjb250YWlucyBkZXByZWNhdGVkIHN5bWJvbHMgIgorImFzIGNvbW1lbnRzLiBGdXJ0aGVybW9yZSBpbiB0ZW1wbGF0ZSBtb2RlLCBwYXR0ZXJuIHN5bWJvbHMgYXJlIGZvbGxvd2VkIGJ5ICIKKyJjb21tZW50cyBsaXN0aW5nIHJlYWwgc3ltYm9scyB0aGF0IGhhdmUgbWF0Y2hlZCB0aGUgcGF0dGVybi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDUyCittc2dpZCAiQjxodHRwOi8vcGVvcGxlLnJlZGhhdC5jb20vZHJlcHBlci9zeW1ib2wtdmVyc2lvbmluZz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDU0Cittc2dpZCAiQjxodHRwOi8vcGVvcGxlLnJlZGhhdC5jb20vZHJlcHBlci9nb29kcHJhY3RpY2UucGRmPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0NTYKK21zZ2lkICJCPGh0dHA6Ly9wZW9wbGUucmVkaGF0LmNvbS9kcmVwcGVyL2Rzb2hvd3RvLnBkZj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDU5CisjLCBmdXp6eQorbXNnaWQgIkI8ZGViLXN5bWJvbHM+KDUpLCBCPGRwa2ctc2hsaWJkZXBzPigxKS4iCittc2dzdHIgIiIKKyJCPGRlYj4oNSksIEI8ZGViLWNvbnRyb2w+KDUpLCBCPGRwa2c+KDEpLCBCPGRwa2ctZGViPigxKSwgQjxmaW5kPigxKSwgIgorIkI8eGFyZ3M+KDEpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDYyCisjLCBmdXp6eQorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDA3LTIwMDkgUmFwaGFcXFs6ZV1sIEhlcnR6b2ciCittc2dzdHIgIkNvcHlyaWdodCAyMDAxIEpvZXkgSGVzcyIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MQorIywgbm8td3JhcAorbXNnaWQgImRwa2ctbWFpbnRzY3JpcHQtaGVscGVyIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6NAorbXNnaWQgIiIKKyJkcGtnLW1haW50c2NyaXB0LWhlbHBlciAtIHdvcmtzIGFyb3VuZCBrbm93biBkcGtnIGxpbWl0YXRpb25zIGluIG1haW50YWluZXIgIgorInNjcmlwdHMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMTo4Cittc2dpZCAiIgorIkI8ZHBrZy1tYWludHNjcmlwdC1oZWxwZXI+IEk8Y29tbWFuZD4gW0k8cGFyYW1ldGVyPi4uLl0gQjwtLT4gSTxtYWludC1zY3JpcHQtIgorInBhcmFtZXRlcj4uLi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6OQorIywgbm8td3JhcAorbXNnaWQgIkNPTU1BTkRTIEFORCBQQVJBTUVURVJTIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MTIKK21zZ2lkICJCPHJtX2NvbmZmaWxlPiBJPGNvbmZmaWxlPiBbSTxsYXN0dmVyc2lvbj4gW0k8cGFja2FnZT5dXSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjE0Cittc2dpZCAiIgorIkI8bXZfY29uZmZpbGU+IEk8b2xkY29uZmZpbGU+IEk8bmV3Y29uZmZpbGU+IFtJPGxhc3R2ZXJzaW9uPiBbSTxwYWNrYWdlPl1dIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MjAKK21zZ2lkICIiCisiVGhpcyBwcm9ncmFtIGlzIGRlc2lnbmVkIHRvIGJlIHJ1biB3aXRoaW4gbWFpbnRhaW5lciBzY3JpcHRzIHRvIGFjaGlldmUgc29tZSAiCisidGFza3MgdGhhdCBkcGtnIGNhbid0ICh5ZXQpIGhhbmRsZSBuYXRpdmVseSBlaXRoZXIgYmVjYXVzZSBvZiBkZXNpZ24gIgorImRlY2lzaW9ucyBvciBkdWUgdG8gY3VycmVudCBsaW1pdGF0aW9ucy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToyNworbXNnaWQgIiIKKyJNYW55IG9mIHRob3NlIHRhc2tzIHJlcXVpcmUgY29vcmRpbmF0ZWQgYWN0aW9ucyBmcm9tIHNldmVyYWwgbWFpbnRhaW5lciAiCisic2NyaXB0cyAoQjxwcmVpbnN0PiwgQjxwb3N0aW5zdD4sIEI8cHJlcm0+LCBCPHBvc3RybT4pLiBUbyBhdm9pZCBtaXN0YWtlcyAiCisidGhlIHNhbWUgY2FsbCBzaW1wbHkgbmVlZHMgdG8gYmUgcHV0IGluIGFsbCBzY3JpcHRzIGFuZCB0aGUgcHJvZ3JhbSB3aWxsICIKKyJhdXRvbWF0aWNhbGx5IGFkYXB0IGl0cyBiZWhhdmlvdXIgYmFzZWQgb24gdGhlIGVudmlyb25tZW50IHZhcmlhYmxlICIKKyJCPERQS0dfTUFJTlRTQ1JJUFRfTkFNRT4gYW5kIG9uIHRoZSBtYWludGFpbmVyIHNjcmlwdHMgYXJndW1lbnRzIHRoYXQgeW91ICIKKyJoYXZlIHRvIGZvcndhcmQgYWZ0ZXIgYSBkb3VibGUgZGFzaC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MjgKKyMsIG5vLXdyYXAKK21zZ2lkICJDT05GRklMRSBSRUxBVEVEIFRBU0tTIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MzgKK21zZ2lkICIiCisiV2hlbiB1cGdyYWRpbmcgYSBwYWNrYWdlLCBkcGtnIHdpbGwgbm90IGF1dG9tYXRpY2FsbHkgcmVtb3ZlIGEgY29uZmZpbGUgKGEgIgorImNvbmZpZ3VyYXRpb24gZmlsZSBmb3Igd2hpY2ggZHBrZyBzaG91bGQgcHJlc2VydmUgdXNlciBjaGFuZ2VzKSBpZiBpdCBpcyBub3QgIgorInByZXNlbnQgaW4gdGhlIG5ld2VyIHZlcnNpb24uIFRoZXJlIGFyZSB0d28gcHJpbmNpcGFsIHJlYXNvbnMgZm9yIHRoaXM7IHRoZSAiCisiZmlyc3QgaXMgdGhhdCB0aGUgY29uZmZpbGUgY291bGQndmUgYmVlbiBkcm9wcGVkIGJ5IGFjY2lkZW50IGFuZCB0aGUgbmV4dCAiCisidmVyc2lvbiBjb3VsZCByZXN0b3JlIGl0LCB1c2VycyB3b3VsZG4ndCB3YW50IHRoZWlyIGNoYW5nZXMgdGhyb3duIGF3YXkuIFRoZSAiCisic2Vjb25kIGlzIHRvIGFsbG93IHBhY2thZ2VzIHRvIHRyYW5zaXRpb24gZmlsZXMgZnJvbSBhIGRwa2ctbWFpbnRhaW5lZCAiCisiY29uZmZpbGUgdG8gYSBmaWxlIG1haW50YWluZWQgYnkgdGhlIHBhY2thZ2UncyBtYWludGFpbmVyIHNjcmlwdHMsIHVzdWFsbHkgIgorIndpdGggYSB0b29sIGxpa2UgZGViY29uZiBvciB1Y2YuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6NDMKK21zZ2lkICIiCisiVGhpcyBtZWFucyB0aGF0IGlmIGEgcGFja2FnZSBpcyBpbnRlbmRlZCB0byByZW5hbWUgb3IgcmVtb3ZlIGEgY29uZmZpbGUsIGl0ICIKKyJtdXN0IGV4cGxpY2l0bHkgZG8gc28gYW5kIEI8ZHBrZy1tYWludHNjcmlwdC1oZWxwZXI+IGNhbiBiZSB1c2VkIHRvICIKKyJpbXBsZW1lbnQgZ3JhY2VmdWwgZGVsZXRpb24gYW5kIG1vdmluZyBvZiBjb25mZmlsZXMgd2l0aGluIG1haW50YWluZXIgIgorInNjcmlwdHMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjQ0CisjLCBuby13cmFwCittc2dpZCAiUkVNT1ZJTkcgQSBDT05GRklMRSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjUwCittc2dpZCAiIgorIklmIGEgY29uZmZpbGUgaXMgY29tcGxldGVseSByZW1vdmVkLCBpdCBzaG91bGQgYmUgcmVtb3ZlZCBmcm9tIGRpc2ssIHVubGVzcyAiCisidGhlIHVzZXIgaGFzIG1vZGlmaWVkIGl0LiBJZiB0aGVyZSBhcmUgbG9jYWwgbW9kaWZpY2F0aW9ucywgdGhleSBzaG91bGQgYmUgIgorInByZXNlcnZlZC4gSWYgdGhlIHBhY2thZ2UgdXBncmFkZXMgYWJvcnRzLCB0aGUgbmV3bHkgb2Jzb2xldGUgY29uZmZpbGUgIgorInNob3VsZCBub3QgZGlzYXBwZWFyLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjUzCittc2dpZCAiIgorIkFsbCBvZiB0aGlzIGlzIGltcGxlbWVudGVkIGJ5IHB1dHRpbmcgdGhlIGZvbGxvd2luZyBzaGVsbCBzbmlwcGV0IGluIHRoZSAiCisiQjxwcmVpbnN0PiwgQjxwb3N0aW5zdD4gYW5kIEI8cG9zdHJtPiBtYWludGFpbmVyIHNjcmlwdHM6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6NTYKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiICAgIGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyIHJtX2NvbmZmaWxlIFxcZVxuIgorIiAgICAgICAgSTxjb25mZmlsZT4gSTxsYXN0dmVyc2lvbj4gSTxwYWNrYWdlPiAtLSBcIiRAXCJcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjY2Cittc2dpZCAiIgorIkk8Y29uZmZpbGU+IGlzIHRoZSBmaWxlbmFtZSBvZiB0aGUgY29uZmZpbGUgdG8gcmVtb3ZlLiAgSTxsYXN0dmVyc2lvbj4gaXMgIgorInRoZSBsYXN0IHZlcnNpb24gb2YgdGhlIHBhY2thZ2UgdGhhdCBjb250YWluZWQgdGhlIGNvbmZmaWxlIChvciB0aGUgbGFzdCAiCisidmVyc2lvbiBvZiB0aGUgcGFja2FnZSB0aGF0IGRpZCBub3QgdGFrZSBjYXJlIHRvIHJlbW92ZSB0aGUgb2Jzb2xldGUgIgorImNvbmZmaWxlIGlmIHRoaXMgd2FzIG5vdCBpbW1lZGlhdGVseSBpbXBsZW1lbnRlZCkuICBJZiBJPGxhc3R2ZXJzaW9uPiBpcyAiCisiZW1wdHkgb3Igb21pdHRlZCwgdGhlbiB0aGUgb3BlcmF0aW9uIGlzIHRyaWVkIG9uIGV2ZXJ5IHVwZ3JhZGUuIEk8cGFja2FnZT4gIgorImlzIHRoZSBwYWNrYWdlIG5hbWUsIGl0J3Mgb3B0aW9uYWwgYXMgaXQgd2lsbCBkZWZhdWx0IHRvICIKKyIkRFBLR19NQUlOVFNDUklQVF9QQUNLQUdFICh0aGlzIHZhcmlhYmxlIGlzIHNldCBieSBkcGtnIHRvIHRoZSBuYW1lIG9mIHRoZSAiCisicGFja2FnZSBhY3RlZCB1cG9uKS4gQWxsIHRoZSBwYXJhbWV0ZXJzIG9mIHRoZSBtYWludGFpbmVyIHNjcmlwdHMgaGF2ZSB0byBiZSAiCisiZm9yd2FyZGVkIHRvIHRoZSBwcm9ncmFtIGFmdGVyIFwiLS1cIi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMTo3NQorbXNnaWQgIiIKKyJDdXJyZW50IGltcGxlbWVudGF0aW9uOiBpbiB0aGUgQjxwcmVpbnN0PiwgaXQgY2hlY2tzIGlmIHRoZSBjb25mZmlsZSB3YXMgIgorIm1vZGlmaWVkIGFuZCByZW5hbWVzIGl0IGVpdGhlciB0byBJPGNvbmZmaWxlPkI8LmRwa2ctcmVtb3ZlPiAoaWYgbm90ICIKKyJtb2RpZmllZCkgb3IgdG8gSTxjb25mZmlsZT5CPC5kcGtnLWJhY2t1cD4gKGlmIG1vZGlmaWVkKS4gSW4gdGhlICIKKyJCPHBvc3RpbnN0PiwgdGhlIGxhdHRlciBmaWxlIGlzIHJlbmFtZWQgdG8gSTxjb25mZmlsZT5CPC5kcGtnLWJhaz4gYW5kIGtlcHQgIgorImZvciByZWZlcmVuY2UgYXMgaXQgY29udGFpbnMgdXNlciBtb2RpZmljYXRpb25zIGJ1dCB0aGUgZm9ybWVyIHdpbGwgYmUgIgorInJlbW92ZWQuIElmIHRoZSBwYWNrYWdlIHVwZ3JhZGUgYWJvcnRzLCB0aGUgQjxwb3N0cm0+IHJlaW5zdGFsbHMgdGhlICIKKyJvcmlnaW5hbCBjb25mZmlsZS4gRHVyaW5nIHB1cmdlLCB0aGUgQjxwb3N0cm0+IHdpbGwgYWxzbyBkZWxldGUgdGhlIEI8LmRwa2ctIgorImJhaz4gZmlsZSBrZXB0IHVwIHRvIG5vdy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6NzYKKyMsIG5vLXdyYXAKK21zZ2lkICJSRU5BTUlORyBBIENPTkZGSUxFIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6ODMKK21zZ2lkICIiCisiSWYgYSBjb25mZmlsZSBpcyBtb3ZlZCBmcm9tIG9uZSBsb2NhdGlvbiB0byBhbm90aGVyLCB5b3UgbmVlZCB0byBtYWtlIHN1cmUgIgorInlvdSBtb3ZlIGFjcm9zcyBhbnkgY2hhbmdlcyB0aGUgdXNlciBoYXMgbWFkZS4gVGhpcyBtYXkgc2VlbSBhIHNpbXBsZSBjaGFuZ2UgIgorInRvIHRoZSBCPHByZWluc3Q+IHNjcmlwdCBhdCBmaXJzdCwgaG93ZXZlciB0aGF0IHdpbGwgcmVzdWx0IGluIHRoZSB1c2VyICIKKyJiZWluZyBwcm9tcHRlZCBieSBkcGtnIHRvIGFwcHJvdmUgdGhlIGNvbmZmaWxlIGVkaXRzIGV2ZW4gdGhvdWdoIHRoZXkgYXJlICIKKyJub3QgcmVzcG9uc2libGUgb2YgdGhlbS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMTo4NworbXNnaWQgIiIKKyJHcmFjZWZ1bCByZW5hbWluZyBjYW4gYmUgaW1wbGVtZW50ZWQgYnkgcHV0dGluZyB0aGUgZm9sbG93aW5nIHNoZWxsIHNuaXBwZXQgIgorImluIHRoZSBCPHByZWluc3Q+LCBCPHBvc3RpbnN0PiBhbmQgQjxwb3N0cm0+IG1haW50YWluZXIgc2NyaXB0czoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMTo5MAorIywgbm8td3JhcAorbXNnaWQgIiIKKyIgICAgZHBrZy1tYWludHNjcmlwdC1oZWxwZXIgbXZfY29uZmZpbGUgXFxlXG4iCisiICAgICAgICBJPG9sZGNvbmZmaWxlPiBJPG5ld2NvbmZmaWxlPiBJPGxhc3R2ZXJzaW9uPiBJPHBhY2thZ2U+IC0tIFwiJEBcIlxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MTAwCittc2dpZCAiIgorIkk8b2xkY29uZmZpbGU+IGFuZCBJPG5ld2NvbmZmaWxlPiBhcmUgdGhlIG9sZCBhbmQgbmV3IG5hbWUgb2YgdGhlIGNvbmZmaWxlICIKKyJ0byByZW5hbWUuIEk8bGFzdHZlcnNpb24+IGlzIHRoZSBsYXN0IHZlcnNpb24gb2YgdGhlIHBhY2thZ2UgdGhhdCBjb250YWluZWQgIgorInRoZSBjb25mZmlsZSB3aXRoIHRoZSBvbGQgbmFtZS4gSWYgSTxsYXN0dmVyc2lvbj4gaXMgZW1wdHkgb3Igb21pdHRlZCwgdGhlbiAiCisidGhlIG9wZXJhdGlvbiBpcyB0cmllZCBvbiBldmVyeSB1cGdyYWRlIChub3RlOiBpdCdzIHNhZmVyIHRvIGdpdmUgdGhlICIKKyJ2ZXJzaW9uIGFuZCBoYXZlIHRoZSBvcGVyYXRpb24gdHJpZWQgb25seSBvbmNlKS4gSTxwYWNrYWdlPiBpcyB0aGUgcGFja2FnZSAiCisibmFtZSwgaXQncyBvcHRpb25hbCBhcyBpdCB3aWxsIGRlZmF1bHQgdG8gJERQS0dfTUFJTlRTQ1JJUFRfUEFDS0FHRSAodGhpcyAiCisidmFyaWFibGUgaXMgc2V0IGJ5IGRwa2cgdG8gdGhlIG5hbWUgb2YgdGhlIHBhY2thZ2UgYWN0ZWQgdXBvbikuIEFsbCB0aGUgIgorInBhcmFtZXRlcnMgb2YgdGhlIG1haW50YWluZXIgc2NyaXB0cyBoYXZlIHRvIGJlIGZvcndhcmRlZCB0byB0aGUgcHJvZ3JhbSAiCisiYWZ0ZXIgXCItLVwiLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjEwOAorbXNnaWQgIiIKKyJDdXJyZW50IGltcGxlbWVudGF0aW9uOiB0aGUgQjxwcmVpbnN0PiBjaGVja3MgaWYgdGhlIGNvbmZmaWxlIGhhcyBiZWVuICIKKyJtb2RpZmllZCwgaWYgeWVzIGl0J3MgbGVmdCBvbiBwbGFjZSBvdGhlcndpc2UgaXQncyByZW5hbWVkIHRvICIKKyJJPG9sZGNvbmZmaWxlPkI8LmRwa2ctcmVtb3ZlPi4gT24gY29uZmlndXJhdGlvbiwgdGhlIEI8cG9zdGluc3Q+IHJlbW92ZXMgIgorIkk8b2xkY29uZmZpbGU+QjwuZHBrZy1yZW1vdmU+IGFuZCByZW5hbWVzIEk8b2xkY29uZmZpbGU+IHRvIEk8bmV3Y29uZmZpbGU+ICIKKyJpZiBJPG9sZGNvbmZmaWxlPiBpcyBzdGlsbCBhdmFpbGFibGUuIE9uIGFib3J0LXVwZ3JhZGUvYWJvcnQtaW5zdGFsbCwgdGhlICIKKyJCPHBvc3RybT4gcmVuYW1lcyBJPG9sZGNvbmZmaWxlPkI8LmRwa2ctcmVtb3ZlPiBiYWNrIHRvIEk8b2xkY29uZmZpbGU+IGlmICIKKyJyZXF1aXJlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MTA5CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIklORk9STUFUSU9OIEFCT1VUIFBBQ0tBR0VTIgorbXNnaWQgIklOVEVHUkFUSU9OIElOIFBBQ0tBR0VTIgorbXNnc3RyICLjg5Hjg4PjgrHjg7zjgrjjgavplqLjgZnjgovmg4XloLEiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MTE2Cittc2dpZCAiIgorIkdpdmVuIHRoYXQgQjxkcGtnLW1haW50c2NyaXB0LWhlbHBlcj4gaXMgdXNlZCBpbiB0aGUgQjxwcmVpbnN0PiwgdXNpbmcgaXQgIgorInVuY29uZGl0aW9uYWxseSByZXF1aXJlcyBhIHByZS1kZXBlbmRlbmN5IHRvIGVuc3VyZSB0aGF0IHRoZSByZXF1aXJlZCAiCisidmVyc2lvbiBvZiBkcGtnIGhhcyBiZWVuIHVucGFja2VkIGJlZm9yZS4gVGhlIHJlcXVpcmVkIHZlcnNpb24gZGVwZW5kcyBvbiAiCisidGhlIGNvbW1hbmQgdXNlZCwgZm9yIEI8cm1fY29uZmZpbGU+IGFuZCBCPG12X2NvbmZmaWxlPiBpdCBpcyAxLjE1LjcuMjoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxMTgKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxQcmUtRGVwZW5kczo+IEU8bHQ+cGFja2FnZSBsaXN0RTxndD4iCittc2dpZCAiICAgIEI8UHJlLURlcGVuZHM6PiBkcGtnIChFPGd0Pj0gMS4xNS43LjIpXG4iCittc2dzdHIgIkI8UHJlLURlcGVuZHM6PiBFPGx0PuODkeODg+OCseODvOOCuOODquOCueODiEU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjEyMworbXNnaWQgIiIKKyJCdXQgaW4gbWFueSBjYXNlcyB0aGUgb3BlcmF0aW9uIGRvbmUgYnkgdGhlIHByb2dyYW0gaXMgbm90IGNyaXRpY2FsIGZvciB0aGUgIgorInBhY2thZ2UsIGFuZCBpbnN0ZWFkIG9mIHVzaW5nIGEgcHJlLWRlcGVuZGVuY3kgd2UgY2FuIGNhbGwgdGhlIHByb2dyYW0gb25seSAiCisiaWYgd2Uga25vdyB0aGF0IHRoZSByZXF1aXJlZCBjb21tYW5kIGlzIHN1cHBvcnRlZCBieSB0aGUgY3VycmVudGx5IGluc3RhbGxlZCAiCisiZHBrZzoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxMjcKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiICAgIGlmIGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyIHN1cHBvcnRzIEk8Y29tbWFuZD47IHRoZW5cbiIKKyIgICAgICAgIGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyIEk8Y29tbWFuZD4gLi4uXG4iCisiICAgIGZpXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxMzAKKyMsIGZ1enp5Cittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMTAgUmFwaGFcXFs6ZV1sIEhlcnR6b2ciCittc2dzdHIgIkNvcHlyaWdodCAyMDAxIEpvZXkgSGVzcyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxMzIKKyMsIGZ1enp5Cittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMDggSm9leSBIZXNzIgorbXNnc3RyICJDb3B5cmlnaHQgMjAwMSBKb2V5IEhlc3MiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MTM0CisjLCBmdXp6eQorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDA3IEd1aWxsZW0gSm92ZXIiCittc2dzdHIgIkNvcHlyaWdodCAyMDAxIEpvZXkgSGVzcyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxMzYKKyMsIGZ1enp5Cittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMDUgU2NvdHQgSmFtZXMgUmVtbmFudCIKK21zZ3N0ciAiQ29weXJpZ2h0IDIwMDAgV2ljaGVydCBBa2tlcm1hbiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJkcGtnLW1lcmdlY2hhbmdlbG9ncyIKK21zZ3N0ciAiQjxkcGtnPiBbSTxvcHRpb25zPl0gSTxhY3Rpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjQKKyMsIGZ1enp5Cittc2dpZCAiZHBrZy1tZXJnZWNoYW5nZWxvZ3MgLSAzLXdheSBtZXJnZSBvZiBkZWJpYW4vY2hhbmdlbG9nIGZpbGVzIgorbXNnc3RyICJkcGtnLXNjYW5wYWNrYWdlcyAtIFBhY2thZ2VzIOODleOCoeOCpOODq+OBruS9nOaIkCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTo4CisjLCBmdXp6eQorbXNnaWQgIiIKKyJCPGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzPiBbSTxvcHRpb24+Li4uXSBJPG9sZD4gSTxuZXctYT4gSTxuZXctYj4gW0k8b3V0Pl0iCittc2dzdHIgIkI8ZHBrZz4gW0k8b3B0aW9ucz5dIEk8YWN0aW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMToxNQorbXNnaWQgIiIKKyJUaGlzIHByb2dyYW0gd2lsbCB1c2UgdGhlIDMgcHJvdmlkZWQgdmVyc2lvbnMgb2YgdGhlIERlYmlhbiBjaGFuZ2Vsb2cgdG8gIgorImdlbmVyYXRlIGEgbWVyZ2VkIGNoYW5nZWxvZyBmaWxlLiBUaGUgcmVzdWx0aW5nIGNoYW5nZWxvZyBpcyBzdG9yZWQgaW4gdGhlICIKKyJmaWxlIEk8b3V0PiBvciBvdXRwdXQgdG8gdGhlIHN0YW5kYXJkIG91dHB1dCBpZiB0aGF0IHBhcmFtZXRlciBpcyBub3QgZ2l2ZW4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6MjYKK21zZ2lkICIiCisiRWFjaCBlbnRyeSBpcyBpZGVudGlmaWVkIGJ5IGl0cyB2ZXJzaW9uIG51bWJlciBhbmQgdGhleSBhcmUgYXNzdW1lZCB0byBiZSAiCisibm90IGNvbmZsaWN0aW5nLCB0aGV5IGFyZSBzaW1wbHkgbWVyZ2VkIGluIHRoZSByaWdodCBvcmRlciAoYnkgZGVjcmVhc2luZyAiCisidmVyc2lvbiBudW1iZXIpLiBXaGVuIEI8LS1tZXJnZS1wcmVyZWxlYXNlcz4gaXMgdXNlZCwgdGhlIHBhcnQgb2YgdGhlICIKKyJ2ZXJzaW9uIG51bWJlciBhZnRlciB0aGUgbGFzdCB0aWxkZSBpcyBkcm9wcGVkIHNvIHRoYXQgMS4wLTF+ZXhwMSBhbmQgIgorIjEuMC0xfmV4cDUgYXJlIGNvbnNpZGVyZWQgdG8gYmUgdGhlIHNhbWUgZW50cnkuIFdoZW4gdGhlIHNhbWUgdmVyc2lvbiBpcyAiCisiYXZhaWxhYmxlIGluIGJvdGggSTxuZXctYT4gYW5kIEk8bmV3LWI+LCBhIHN0YW5kYXJkIGxpbmUtYmFzZWQgMy13YXkgbWVyZ2UgIgorImlzIGF0dGVtcHRlZCAocHJvdmlkZWQgdGhhdCB0aGUgbW9kdWxlIEFsZ29yaXRobTo6TWVyZ2UgaXMgYXZhaWxhYmxlIFxcW2VtXSAiCisiaXQncyBwYXJ0IG9mIHRoZSBwYWNrYWdlIGxpYmFsZ29yaXRobS1tZXJnZS1wZXJsIFxcW2VtXSBvdGhlcndpc2UgeW91IGdldCBhICIKKyJnbG9iYWwgY29uZmxpY3Qgb24gdGhlIGNvbnRlbnQgb2YgdGhlIGVudHJ5KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6MjgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tbWVyZ2UtcHJlcmVsZWFzZXM+LCBCPC1tPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjMzCittc2dpZCAiIgorIkRyb3AgdGhlIHBhcnQgYWZ0ZXIgdGhlIGxhc3QgdGlsZGUgaW4gdGhlIHZlcnNpb24gbnVtYmVyIHdoZW4gZG9pbmcgdmVyc2lvbiAiCisiY29tcGFyaXNvbiB0byBpZGVudGlmeSBpZiB0d28gZW50cmllcyBhcmUgc3VwcG9zZWQgdG8gYmUgdGhlIHNhbWUgb3Igbm90LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjM4Cittc2dpZCAiIgorIlRoaXMgaXMgdXNlZnVsIHdoZW4geW91IGtlZXAgdXNpbmcgdGhlIHNhbWUgY2hhbmdlbG9nIGVudHJ5IGJ1dCB5b3UgaW5jcmVhc2UgIgorIml0cyB2ZXJzaW9uIG51bWJlciByZWd1bGFybHkuIEZvciBpbnN0YW5jZSwgeW91IG1pZ2h0IGhhdmUgMi4zLTF+ZXhwMSwgIgorIjIuMy0xfmV4cDIsIC4uLiB1bnRpbCB0aGUgb2ZmaWNpYWwgcmVsZWFzZSAyLjMtMSBhbmQgdGhleSBhcmUgYWxsIHRoZSBzYW1lICIKKyJjaGFuZ2Vsb2cgZW50cnkgdGhhdCBoYXMgZXZvbHZlZCBvdmVyIHRpbWUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjQ1CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkFDVElPTlMiCittc2dpZCAiTElNSVRBVElPTlMiCittc2dzdHIgIuOCouOCr+OCt+ODp+ODsyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTo1MAorbXNnaWQgIiIKKyJBbnl0aGluZyB0aGF0IGlzIG5vdCBwYXJzZWQgYnkgRHBrZzo6Q2hhbmdlbG9nIGlzIGxvc3QgZHVyaW5nIHRoZSBtZXJnZS4gICIKKyJUaGlzIG1pZ2h0IGluY2x1ZGUgc3R1ZmYgbGlrZSB2aW0gbW9kZWxpbmVzLCBjb21tZW50cyB3aGljaCB3ZXJlIG5vdCAiCisic3VwcG9zZWQgdG8gYmUgdGhlcmUsIGV0Yy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6NTEKKyMsIG5vLXdyYXAKK21zZ2lkICJJTlRFR1JBVElPTiBXSVRIIEdJVCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjU2Cittc2dpZCAiIgorIklmIHlvdSB3YW50IHRvIHVzZSB0aGlzIHByb2dyYW0gdG8gbWVyZ2UgRGViaWFuIGNoYW5nZWxvZyBmaWxlcyBpbiBhIGdpdCAiCisicmVwb3NpdG9yeSwgeW91IGhhdmUgZmlyc3QgdG8gcmVnaXN0ZXIgYSBuZXcgbWVyZ2UgZHJpdmVyIGluIEI8LmdpdC9jb25maWc+ICIKKyJvciBCPH4vLmdpdGNvbmZpZz46IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6NjAKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiIFttZXJnZSBcImRwa2ctbWVyZ2VjaGFuZ2Vsb2dzXCJdXG4iCisiICAgICBuYW1lID0gZGViaWFuL2NoYW5nZWxvZyBtZXJnZSBkcml2ZXJcbiIKKyIgICAgIGRyaXZlciA9IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzIC1tICVPICVBICVCICVBXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTo2NAorbXNnaWQgIiIKKyJUaGVuIHlvdSBoYXZlIHRvIHNldHVwIHRoZSBtZXJnZSBhdHRyaWJ1dGUgZm9yIHRoZSBkZWJpYW4vY2hhbmdlbG9nIGZpbGUgIgorImVpdGhlciBpbiBCPC5naXRhdHRyaWJ1dGVzPiBpbiB0aGUgcmVwb3NpdG9yeSBpdHNlbGYsIG9yIGluIEI8LmdpdC9pbmZvLyIKKyJhdHRyaWJ1dGVzPjoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTo2NgorIywgbm8td3JhcAorbXNnaWQgIiBkZWJpYW4vY2hhbmdlbG9nIG1lcmdlPWRwa2ctbWVyZ2VjaGFuZ2Vsb2dzXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTo2OAorIywgZnV6enkKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAwOS0yMDEwIFJhcGhhXFxbOmVdbCBIZXJ0em9nIgorbXNnc3RyICJDb3B5cmlnaHQgMjAwMSBKb2V5IEhlc3MiCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLW5hbWUuMTo2CisjLCBuby13cmFwCittc2dpZCAiZHBrZy1uYW1lIgorbXNnc3RyICJkcGtnLW5hbWUiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbmFtZS4xOjkKK21zZ2lkICJkcGtnLW5hbWUgLSByZW5hbWUgRGViaWFuIHBhY2thZ2VzIHRvIGZ1bGwgcGFja2FnZSBuYW1lcyIKK21zZ3N0ciAiZHBrZy1uYW1lIC0gRGViaWFuIOODkeODg+OCseODvOOCuOOCkuWujOWFqOOBquODkeODg+OCseODvOOCuOOBruWQjeWJjeOBq+WkieabtCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6MTUKKyMsIGZ1enp5Cittc2dpZCAiQjxkcGtnLW5hbWU+IFtJPG9wdGlvbj4uLi5dIFtCPC0tPl0gSTxmaWxlPi4uLiIKK21zZ3N0ciAiQjxkcGtnLWRpdmVydD4gW0k8b3B0aW9ucz5dIFtCPC0tYWRkPl0gSTxFPGx0PmZpbGVFPGd0Pj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbmFtZS4xOjI5CisjLCBmdXp6eQorbXNnaWQgIiIKKyJUaGlzIG1hbnVhbCBwYWdlIGRvY3VtZW50cyB0aGUgQjxkcGtnLW5hbWU+IHByb2dyYW0gd2hpY2ggcHJvdmlkZXMgYW4gZWFzeSAiCisid2F5IHRvIHJlbmFtZSBCPERlYmlhbj4gcGFja2FnZXMgaW50byB0aGVpciBmdWxsIHBhY2thZ2UgbmFtZXMuIEEgZnVsbCAiCisicGFja2FnZSBuYW1lIGNvbnNpc3RzIG9mIEk8cGFja2FnZT5CPF8+STx2ZXJzaW9uPkI8Xz5JPGFyY2hpdGVjdHVyZT5CPC4iCisiPkk8cGFja2FnZS10eXBlPiBhcyBzcGVjaWZpZWQgaW4gdGhlIGNvbnRyb2wgZmlsZSBvZiB0aGUgcGFja2FnZS4gVGhlICIKKyJJPHZlcnNpb24+IHBhcnQgb2YgdGhlIGZpbGVuYW1lIGNvbnNpc3RzIG9mIHRoZSB1cHN0cmVhbSB2ZXJzaW9uIGluZm9ybWF0aW9uICIKKyJvcHRpb25hbGx5IGZvbGxvd2VkIGJ5IGEgaHlwaGVuIGFuZCB0aGUgcmV2aXNpb24gaW5mb3JtYXRpb24uIFRoZSBJPHBhY2thZ2UtIgorInR5cGU+IHBhcnQgY29tZXMgZnJvbSB0aGF0IGZpZWxkIGlmIHByZXNlbnQgb3IgZmFsbGJhY2tzIHRvIEI8ZGViPi4iCittc2dzdHIgIiIKKyLjgZPjga7jg57jg4vjg6XjgqLjg6vjg5rjg7zjgrjjgafjga/jgIFCPGRwa2ctbmFtZT4g44K344Kn44Or44K544Kv44Oq44OX44OI44Gr44Gk44GE44Gm6Kqs5piO44GZ44KL44CCIgorIkI8ZHBrZy1uYW1lPiDjgrfjgqfjg6vjgrnjgq/jg6rjg5fjg4jjga/jgIFCPERlYmlhbj4g44OR44OD44Kx44O844K444KS5a6M5YWo44Gq44OR44OD44Kx44O844K45ZCN44Gr44CBIgorIuewoeWNmOOBq+WkieabtOOBmeOCi+OBk+OBqOOBjOOBp+OBjeOCi+OAguWujOWFqOOBquODkeODg+OCseODvOOCuOWQjeOBqOOBr+OAgeODkeODg+OCseODvOOCuOOBriBjb250cm9sIOODleOCoSIKKyLjgqTjg6vjgafmjIflrprjgZXjgozjgZ/mg4XloLHjgYvjgonlvpfjgonjgozjgosgRTxsdD7jg5Hjg4PjgrHjg7zjgrhFPGd0Pl9FPGx0PuODkOODvOOCuOODp+ODsyIKKyJFPGd0Pl9FPGx0PuOCouODvOOCreODhuOCr+ODgeODo0U8Z3Q+LmRlYiDjgajjgYTjgYblkI3liY3jgafjgYLjgovjgIJFPGx0PuODkOODvOOCuOODp+ODs0U8Z3Q+IOOBriIKKyLpg6jliIbjga/jgIHkuIrmtYHjga7jg5Djg7zjgrjjg6fjg7Pmg4XloLHjgavjg4/jgqTjg5Xjg7PjgIHjgZ3jgZfjgabjg6rjg5Pjgrjjg6fjg7Pmg4XloLHjgYzntprjgYTjgZ/jgoLjga7jgafjgYIiCisi44KL44CCIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1uYW1lLjE6MzEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtYT4sIEI8LS1uby1hcmNoaXRlY3R1cmU+IgorbXNnc3RyICJCPC1hLCAtLW5vLWFyY2hpdGVjdHVyZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbmFtZS4xOjM0Cittc2dpZCAiVGhlIGRlc3RpbmF0aW9uIGZpbGVuYW1lIHdpbGwgbm90IGhhdmUgdGhlIGFyY2hpdGVjdHVyZSBpbmZvcm1hdGlvbi4iCittc2dzdHIgIuWkieabtOW+jOOBruODleOCoeOCpOODq+WQjeOBq+OCouODvOOCreODhuOCr+ODgeODo+aDheWgseOCkuWQq+OBvuOBm+OBquOBhOOAgiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctbmFtZS4xOjM0CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LWs+LCBCPC0tc3ltbGluaz4iCittc2dzdHIgIkI8LWssIC0tc3ltbGluaz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbmFtZS4xOjM3Cittc2dpZCAiQ3JlYXRlIGEgc3ltbGluaywgaW5zdGVhZCBvZiBtb3ZpbmcuIgorbXNnc3RyICLnp7vli5XjgZnjgovjgYvjgo/jgorjgavjgrfjg7Pjg5zjg6rjg4Pjgq/jg6rjg7Pjgq/jgpLkvZzjgovjgIIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLW5hbWUuMTozNworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1vPiwgQjwtLW92ZXJ3cml0ZT4iCittc2dzdHIgIkI8LW8sIC0tb3ZlcndyaXRlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6NDEKK21zZ2lkICIiCisiRXhpc3RpbmcgZmlsZXMgd2lsbCBiZSBvdmVyd3JpdHRlbiBpZiB0aGV5IGhhdmUgdGhlIHNhbWUgbmFtZSBhcyB0aGUgIgorImRlc3RpbmF0aW9uIGZpbGVuYW1lLiIKK21zZ3N0ciAi5aSJ5pu05b6M44Gu44OV44Kh44Kk44Or5ZCN44Go5ZCM5ZCN44Gu44OV44Kh44Kk44Or44GM44GC44KM44Gw44CB44Gd44KM44KS5LiK5pu444GN44GX44Gm44GX44G+44GG44CCIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1uYW1lLjE6NDEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtcz4sIEI8LS1zdWJkaXI+IFtJPGRpcj5dIgorbXNnc3RyICJCPC1zLCAtLXN1YmRpcj4gW0k8ZGlyPl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbmFtZS4xOjUzCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJGaWxlcyB3aWxsIGJlIG1vdmVkIGludG8gYSBzdWJkaXJlY3RvcnkuIElmIHRoZSBkaXJlY3RvcnkgZ2l2ZW4gYXMgIgorI3wgImFyZ3VtZW50IGV4aXN0cyB0aGUgZmlsZXMgd2lsbCBiZSBtb3ZlZCBpbnRvIHRoYXQgZGlyZWN0b3J5IG90aGVyd2lzZSB0aGUgIgorI3wgIm5hbWUgb2YgdGhlIHRhcmdldCBkaXJlY3RvcnkgaXMgZXh0cmFjdGVkIGZyb20gdGhlIHNlY3Rpb24gZmllbGQgaW4gdGhlICIKKyN8ICJjb250cm9sIHBhcnQgb2YgdGhlIHBhY2thZ2UuIFRoZSB0YXJnZXQgZGlyZWN0b3J5IHdpbGwgYmUgYHVuc3RhYmxlLyIKKyN8ICJiaW5hcnktRTxsdD5hcmNoaXRlY3R1cmVFPGd0Pi9FPGx0PnNlY3Rpb25FPGd0PicuIElmIHRoZSBzZWN0aW9uIGlzIG5vdCAiCisjfCAiZm91bmQgaW4gdGhlIGNvbnRyb2wsIHRoZW4gYG5vLXNlY3Rpb24nIGlzIGFzc3VtZWQsIGFuZCBpbiB0aGlzIGNhc2UsIGFzICIKKyN8ICJ3ZWxsIGFzIGZvciBzZWN0aW9ucyBgbm9uLWZyZWUnIGFuZCBgY29udHJpYicgdGhlIHRhcmdldCBkaXJlY3RvcnkgaXMgIgorI3wgImBFPGx0PnNlY3Rpb25FPGd0Pi9iaW5hcnktRTxsdD5hcmNoaXRlY3R1cmVFPGd0PicuIFRoZSBzZWN0aW9uIGZpZWxkICIKKyN8ICJpc24ndCByZXF1aXJlZCBzbyBhIGxvdCBvZiBwYWNrYWdlcyB3aWxsIGZpbmQgdGhlaXIgd2F5IHRvIHRoZSBgbm8tIgorI3wgInNlY3Rpb24nIGFyZWEuIFVzZSB0aGlzIG9wdGlvbiB3aXRoIGNhcmUsIGl0J3MgbWVzc3kuIgorbXNnaWQgIiIKKyJGaWxlcyB3aWxsIGJlIG1vdmVkIGludG8gYSBzdWJkaXJlY3RvcnkuIElmIHRoZSBkaXJlY3RvcnkgZ2l2ZW4gYXMgYXJndW1lbnQgIgorImV4aXN0cyB0aGUgZmlsZXMgd2lsbCBiZSBtb3ZlZCBpbnRvIHRoYXQgZGlyZWN0b3J5IG90aGVyd2lzZSB0aGUgbmFtZSBvZiB0aGUgIgorInRhcmdldCBkaXJlY3RvcnkgaXMgZXh0cmFjdGVkIGZyb20gdGhlIHNlY3Rpb24gZmllbGQgaW4gdGhlIGNvbnRyb2wgcGFydCBvZiAiCisidGhlIHBhY2thZ2UuIFRoZSB0YXJnZXQgZGlyZWN0b3J5IHdpbGwgYmUgYHVuc3RhYmxlL2JpbmFyeS1JPGFyY2hpdGVjdHVyZT4vIgorIkk8c2VjdGlvbj4nLiBJZiB0aGUgc2VjdGlvbiBpcyBub3QgZm91bmQgaW4gdGhlIGNvbnRyb2wsIHRoZW4gYG5vLXNlY3Rpb24nICIKKyJpcyBhc3N1bWVkLCBhbmQgaW4gdGhpcyBjYXNlLCBhcyB3ZWxsIGFzIGZvciBzZWN0aW9ucyBgbm9uLWZyZWUnIGFuZCAiCisiYGNvbnRyaWInIHRoZSB0YXJnZXQgZGlyZWN0b3J5IGlzIGBJPHNlY3Rpb24+L2JpbmFyeS1JPGFyY2hpdGVjdHVyZT4nLiBUaGUgIgorInNlY3Rpb24gZmllbGQgaXNuJ3QgcmVxdWlyZWQgc28gYSBsb3Qgb2YgcGFja2FnZXMgd2lsbCBmaW5kIHRoZWlyIHdheSB0byB0aGUgIgorImBuby1zZWN0aW9uJyBhcmVhLiBVc2UgdGhpcyBvcHRpb24gd2l0aCBjYXJlLCBpdCdzIG1lc3N5LiIKK21zZ3N0ciAiIgorIuODleOCoeOCpOODq+OCkuOCteODluODh+OCo+ODrOOCr+ODiOODquOBq+enu+WLleOBmeOCi+OAguOCguOBl+W8leaVsOOBp+aMh+WumuOBl+OBn+ODh+OCo+ODrOOCr+ODiOODquOBjOWtmOWcqOOBmSIKKyLjgozjgbDjgIHjg5Hjg4PjgrHjg7zjgrjjga4gY29udHJvbCDjga7jgrvjgq/jgrfjg6fjg7Pjg5XjgqPjg7zjg6vjg4njgYvjgonlvpfjgonjgozjgZ/jgr/jg7zjgrLjg4Pjg4jjg4fjgqPjg6wiCisi44Kv44OI44Oq44Gu5ZCN5YmN44Gu44GL44KP44KK44Gr44Gd44Gu44OH44Kj44Os44Kv44OI44Oq44Gr44OV44Kh44Kk44Or44KS56e75YuV44GZ44KL44CC6YCa5bi444CB44K/44O844Ky44OD44OIIgorIuODh+OCo+ODrOOCr+ODiOODquOBryBgdW5zdGFibGUvYmluYXJ5LUU8bHQ+44Ki44O844Kt44OG44Kv44OB44OjRTxndD4vRTxsdD7jgrvjgq/jgrfjg6fjg7MiCisiRTxndD4nIOOBp+OBguOCi+OAguOCguOBlyBjb250cm9sIOOBp+OBruOCu+OCr+OCt+ODp+ODs+aDheWgseOBjOOBquOBhOWgtOWQiOOBryBgbm8tc2VjdGlvbicg44Go44G/IgorIuOBquOBleOCjOOCi+OAguOBneOBl+OBpuOBk+OBruWgtOWQiOOAgWBub24tZnJlZScg44KEIGBjb250cmliJyDjgrvjgq/jgrfjg6fjg7Pjga7mmYLjgajlkIzmp5jjgavjgr/jg7wiCisi44Ky44OD44OI44OH44Kj44Os44Kv44OI44Oq44GvIGBFPGx0PuOCu+OCr+OCt+ODp+ODs0U8Z3Q+L2JpbmFyeS1FPGx0PuOCouODvOOCreODhuOCr+ODgeODo0U8Z3Q+JyAiCisi44Gr44Gq44KL44CC44K744Kv44K344On44Oz44OV44Kj44O844Or44OJ44Gv5b+F6aCI44Gn44Gv44Gq44GE44Gu44Gn5aSa44GP44Gu44OR44OD44Kx44O844K444GMIGBuby0iCisic2VjdGlvbicg44Gu5aC05omA44Gr44GE44Gj44Gm44GX44G+44GG44Gg44KN44GG44CC44GT44Gu44Kq44OX44K344On44Oz44KS5L2/44GG5pmC44Gv5rOo5oSP44GZ44KL44GT44Go44CC5Y6EIgorIuS7i+OBp+OBguOCi+OAgiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctbmFtZS4xOjUzCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LWM+LCBCPC0tY3JlYXRlLWRpcj4iCittc2dzdHIgIkI8LWMsIC0tY3JlYXRlLWRpcj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbmFtZS4xOjU4Cittc2dpZCAiIgorIlRoaXMgb3B0aW9uIGNhbiB1c2VkIHRvZ2V0aGVyIHdpdGggdGhlIC1zIG9wdGlvbi4gSWYgYSB0YXJnZXQgZGlyZWN0b3J5ICIKKyJpc24ndCBmb3VuZCBpdCB3aWxsIGJlIGNyZWF0ZWQgYXV0b21hdGljYWxseS4gIEI8VXNlIHRoaXMgb3B0aW9uIHdpdGggY2FyZS4+IgorbXNnc3RyICIiCisi44GT44Gu44Kq44OX44K344On44Oz44GvIC1zIOOCquODl+OCt+ODp+ODs+OBqOOBqOOCguOBq+S9v+OBhuOBk+OBqOOBjOOBp+OBjeOCi+OAguOCv+ODvOOCsuODg+ODiOODh+OCo+ODrOOCr+ODiCIKKyLjg6rjgYzjgarjgZHjgozjgbDjgIHoh6rli5XnmoTjgavkvZzmiJDjgZXjgozjgovjgIJCPOOBk+OBruOCquODl+OCt+ODp+ODs+OCkuS9v+OBhuaZguOBr+azqOaEj+OBmeOCi+OBk+OBqOOAgj4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLW5hbWUuMTo2MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC12PiwgQjwtLXZlcnNpb24+IgorbXNnc3RyICJCPC12LCAtLXZlcnNpb24+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1uYW1lLjE6NjYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGRwa2ctbmFtZSBiYXItZm9vLmRlYj4iCittc2dzdHIgIkI8ZHBrZy1uYW1lIGJhci1mb28uZGViPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6NzEKK21zZ2lkICIiCisiVGhlIGZpbGUgYGJhci1mb28uZGViJyB3aWxsIGJlIHJlbmFtZWQgdG8gYmFyLWZvb18xLjAtMl9pMzg2LmRlYiBvciAiCisic29tZXRoaW5nIHNpbWlsYXIgKGRlcGVuZGluZyBvbiB3aGF0ZXZlciBpbmZvcm1hdGlvbiBpcyBpbiB0aGUgY29udHJvbCBwYXJ0ICIKKyJvZiBgYmFyLWZvby5kZWInKS4iCittc2dzdHIgIiIKKyLjg5XjgqHjgqTjg6sgYGJhci1mb28uZGViJyDjgYwgYmFyLWZvb18xLjAtMl9pMzg2LmRlYiDjga7jgojjgYbjgarmhJ/jgZjjgavlpInmm7TjgZXjgozjgovjgIIiCisiKOWun+mam+OBq+OBqeOBhuOBquOCi+OBi+OBryBgYmFyLWZvby5kZWInIOOBruS4reOBriBjb250cm9sIOOBruaDheWgseOBq+S+neWtmOOBmeOCiykiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLW5hbWUuMTo3MQorIywgbm8td3JhcAorbXNnaWQgIkI8ZmluZCAvcm9vdC9kZWJpYW4vIC1uYW1lIFxcKGFxKi5kZWJcXChhcSB8IHhhcmdzIC1uIDEgZHBrZy1uYW1lIC1hPiIKK21zZ3N0ciAiQjxmaW5kIC9yb290L2RlYmlhbi8gLW5hbWUgXFwoYXEqLmRlYlxcKGFxIHwgeGFyZ3MgLW4gMSBkcGtnLW5hbWUgLWE+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW5hbWUuMTo3NgorbXNnaWQgIiIKKyJBbGwgZmlsZXMgd2l0aCB0aGUgZXh0ZW5zaW9uIGBkZWInIGluIHRoZSBkaXJlY3RvcnkgL3Jvb3QvZGViaWFuIGFuZCBpdHMgIgorInN1YmRpcmVjdG9yeSdzIHdpbGwgYmUgcmVuYW1lZCBieSBkcGtnLW5hbWUgaWYgcmVxdWlyZWQgaW50byBuYW1lcyB3aXRoIG5vICIKKyJhcmNoaXRlY3R1cmUgaW5mb3JtYXRpb24uIgorbXNnc3RyICIiCisi44OH44Kj44Os44Kv44OI44OqIC9yb290L2RlYmlhbiDku6XkuIvjgavjgYLjgormi6HlvLXlrZDjgYwgYGRlYicg44Gu5YWo44Gm44Gu44OV44Kh44Kk44Or44KSIGRwa2ctIgorIm5hbWUg44KS5L2/44Gj44Gm44Ki44O844Kt44OG44Kv44OB44Oj5oOF5aCx44Gq44GX44Gu5ZCN5YmN44Gr5aSJ5pu044GZ44KL44CCIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1uYW1lLjE6NzYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGZpbmQgLW5hbWUgXFwoYXEqLmRlYlxcKGFxIHwgeGFyZ3MgLW4gMSBkcGtnLW5hbWUgLWEgLW8gLXMgLWM+IgorbXNnc3RyICJCPGZpbmQgLW5hbWUgXFwoYXEqLmRlYlxcKGFxIHwgeGFyZ3MgLW4gMSBkcGtnLW5hbWUgLWEgLW8gLXMgLWM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW5hbWUuMTo4MgorbXNnaWQgIiIKKyJCPERvbid0IGRvIHRoaXMuPiBZb3VyIGFyY2hpdmUgd2lsbCBiZSBtZXNzZWQgdXAgY29tcGxldGVseSBiZWNhdXNlIGEgbG90IG9mICIKKyJwYWNrYWdlcyBkb24ndCBjb21lIHdpdGggc2VjdGlvbiBpbmZvcm1hdGlvbi4gIEI8RG9uJ3QgZG8gdGhpcy4+IgorbXNnc3RyICIiCisiQjzjgoTjgaPjgabjga/jgYTjgZHjgarjgYQhPiDlpJrjgY/jga7jg5Hjg4PjgrHjg7zjgrjjga/jgrvjgq/jgrfjg6fjg7Pmg4XloLHjgpLjgoLjgaPjgabjgYTjgarjgYTjga7jgafjgIHjgYLjgaoiCisi44Gf44Gu44Ki44O844Kr44Kk44OW44Gv44GQ44Gh44KD44GQ44Gh44KD44Gr44Gq44Gj44Gm44GX44G+44GG44Gg44KN44GG44CCQjzjgoTjgaPjgabjga/jgYTjgZHjgarjgYQhPiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctbmFtZS4xOjgyCisjLCBuby13cmFwCittc2dpZCAiQjxkcGtnIC0tYnVpbGQgZGViaWFuLXRtcCAmJiBkcGtnLW5hbWUgLW8gLXMgLi4gZGViaWFuLXRtcC5kZWI+IgorbXNnc3RyICJCPGRwa2cgLS1idWlsZCBkZWJpYW4tdG1wICYmIGRwa2ctbmFtZSAtbyAtcyAuLiBkZWJpYW4tdG1wLmRlYj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbmFtZS4xOjg1Cittc2dpZCAiVGhpcyBjYW4gYmUgdXNlZCB3aGVuIGJ1aWxkaW5nIG5ldyBwYWNrYWdlcy4iCittc2dzdHIgIuOBk+OCjOOBr+aWsOOBl+OBhOODkeODg+OCseODvOOCuOOCkuS9nOOCi+aZguOBq+S9v+OBhuOBk+OBqOOBjOOBp+OBjeOCi+OAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6OTUKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlNvbWUgcGFja2FnZXMgZG9uJ3QgZm9sbG93IHRoZSBuYW1lIHN0cnVjdHVyZSAiCisjfCAiRTxsdD5wYWNrYWdlRTxndD5fRTxsdD52ZXJzaW9uRTxndD5fRTxsdD5hcmNoaXRlY3R1cmVFPGd0Pi5kZWIuIFBhY2thZ2VzICIKKyN8ICJyZW5hbWVkIGJ5IGRwa2ctbmFtZSB3aWxsIGZvbGxvdyB0aGlzIHN0cnVjdHVyZS4gR2VuZXJhbGx5IHRoaXMgd2lsbCBoYXZlICIKKyN8ICJubyBpbXBhY3Qgb24gaG93IHBhY2thZ2VzIGFyZSBpbnN0YWxsZWQgYnkgQjxkc2VsZWN0PigxKS8gQjxkcGtnPigxKSwgYnV0ICIKKyN8ICJvdGhlciBpbnN0YWxsYXRpb24gdG9vbHMgbWlnaHQgZGVwZW5kIG9uIHRoaXMgbmFtaW5nIHN0cnVjdHVyZS4iCittc2dpZCAiIgorIlNvbWUgcGFja2FnZXMgZG9uJ3QgZm9sbG93IHRoZSBuYW1lIHN0cnVjdHVyZSAiCisiSTxwYWNrYWdlPkI8Xz5JPHZlcnNpb24+QjxfPkk8YXJjaGl0ZWN0dXJlPkI8LmRlYj4uICBQYWNrYWdlcyByZW5hbWVkIGJ5ICIKKyJkcGtnLW5hbWUgd2lsbCBmb2xsb3cgdGhpcyBzdHJ1Y3R1cmUuIEdlbmVyYWxseSB0aGlzIHdpbGwgaGF2ZSBubyBpbXBhY3Qgb24gIgorImhvdyBwYWNrYWdlcyBhcmUgaW5zdGFsbGVkIGJ5IEI8ZHNlbGVjdD4oMSkvQjxkcGtnPigxKSwgYnV0IG90aGVyICIKKyJpbnN0YWxsYXRpb24gdG9vbHMgbWlnaHQgZGVwZW5kIG9uIHRoaXMgbmFtaW5nIHN0cnVjdHVyZS4iCittc2dzdHIgIiIKKyLjg5Hjg4PjgrHjg7zjgrjjgavjgojjgaPjgabjga8gRTxsdD7jg5Hjg4PjgrHjg7zjgrhFPGd0Pl9FPGx0PuODkOODvOOCuOODp+ODs0U8Z3Q+X0U8bHQ+44Ki44O844Kt44OGIgorIuOCr+ODgeODo0U8Z3Q+LmRlYiDjgajjgYTjgYblkI3liY3jgafjga/jgarjgYTjgIIgZHBrZy1uYW1lIOOBq+OCiOOBo+OBpuaUueWQjeOBleOCjOOBn+ODkeODg+OCseODvOOCuOOBryIKKyLjgZPjga7jgojjgYbjgarlkI3liY3jgavjgarjgovjgILkuIDoiKzjgavjga/jgIHjgZPjgozjga8gQjxkc2VsZWN0PigxKS8gQjxkcGtnPigxKSDjgavjgojjgaPjgabjg5Hjg4MiCisi44Kx44O844K444GM44Gp44Gu44KI44GG44Gr44Kk44Oz44K544OI44O844Or44GV44KM44Gf44GL44Gr44Gv5b2x6Z+/44Gv44Gq44GE44GM44CB44GT44Gu5ZCN5YmN5qeL6YCg44Gr5L6d5a2Y44GXIgorIuOBpuOBhOOCi+OCpOODs+OCueODiOODvOODq+ODhOODvOODq+OBq+OCiOOBo+OBpuOBr+W9semfv+OBjOOBguOCi+OBi+OCguOBl+OCjOOBquOBhOOAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6MTAzCittc2dpZCAiIgorIkI8ZGViPig1KSwgQjxkZWItY29udHJvbD4oNSksIEI8ZHBrZz4oMSksIEI8ZHBrZy1kZWI+KDEpLCBCPGZpbmQ+KDEpLCAiCisiQjx4YXJncz4oMSkuIgorbXNnc3RyICIiCisiQjxkZWI+KDUpLCBCPGRlYi1jb250cm9sPig1KSwgQjxkcGtnPigxKSwgQjxkcGtnLWRlYj4oMSksIEI8ZmluZD4oMSksICIKKyJCPHhhcmdzPigxKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbmFtZS4xOjEwNgorIywgZnV6enkKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMTk5NSwxOTk2IEVyaWNrIEJyYW5kZXJob3JzdCIKK21zZ3N0ciAiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgImRwa2ctcGFyc2VjaGFuZ2Vsb2ciCittc2dzdHIgIkI8ZHBrZz4gW0k8b3B0aW9ucz5dIEk8YWN0aW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjQKKyMsIGZ1enp5Cittc2dpZCAiZHBrZy1wYXJzZWNoYW5nZWxvZyAtIHBhcnNlIERlYmlhbiBjaGFuZ2Vsb2cgZmlsZXMiCittc2dzdHIgImRwa2ctc2NhbnBhY2thZ2VzIC0gUGFja2FnZXMg44OV44Kh44Kk44Or44Gu5L2c5oiQIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6OAorIywgZnV6enkKK21zZ2lkICJCPGRwa2ctcGFyc2VjaGFuZ2Vsb2c+IFtJPG9wdGlvbj4uLi5dIgorbXNnc3RyICJCPGRwa2c+IFtJPG9wdGlvbnM+XSBJPGFjdGlvbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxNAorbXNnaWQgIiIKKyJCPGRwa2ctcGFyc2VjaGFuZ2Vsb2c+IHJlYWRzIGFuZCBwYXJzZXMgdGhlIGNoYW5nZWxvZyBvZiBhbiB1bnBhY2tlZCBEZWJpYW4gIgorInNvdXJjZSB0cmVlIGFuZCBvdXRwdXRzIHRoZSBpbmZvcm1hdGlvbiBpbiBpdCB0byBzdGFuZGFyZCBvdXRwdXQgaW4gYSAiCisibWFjaGluZS1yZWFkYWJsZSBmb3JtLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjI2CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LUw+STxsaWJkaXI+IgorbXNnc3RyICJCPFstLV0gPkk8ZmlsZW5hbWU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MzMKK21zZ2lkICIiCisiU3BlY2lmeSBhbiBhZGRpdGlvbmFsIGRpcmVjdG9yeSB0byBzZWFyY2ggZm9yIHBhcnNlciBzY3JpcHRzLiAgVGhpcyAiCisiZGlyZWN0b3J5IGlzIHNlYXJjaGVkIGJlZm9yZSB0aGUgZGVmYXVsdCBkaXJlY3RvcmllcyB3aGljaCBhcmUgY3VycmVudGx5IEI8LyIKKyJ1c3IvbG9jYWwvbGliL2Rwa2cvcGFyc2VjaGFuZ2Vsb2c+IGFuZCBCPC91c3IvbGliL2Rwa2cvcGFyc2VjaGFuZ2Vsb2c+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjM5CisjLCBuby13cmFwCittc2dpZCAiUGFyc2VyIE9wdGlvbnMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjQ0Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgb3B0aW9ucyBjYW4gYmUgdXNlZCB0byBpbmZsdWVuY2UgdGhlIG91dHB1dCBvZiB0aGUgY2hhbmdlbG9nICIKKyJwYXJzZXIsIGUuZy4gdGhlIHJhbmdlIG9mIGVudHJpZXMgb3IgdGhlIGZvcm1hdCBvZiB0aGUgb3V0cHV0LiBUaGV5IG5lZWQgdG8gIgorImJlIHN1cHBvcnRlZCBieSB0aGUgcGFyc2VyIHNjcmlwdCBpbiBxdWVzdGlvbi4gU2VlIGFsc28gQjxDQVZFQVRTPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo0NAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tZm9ybWF0Pkk8IG91dHB1dGZvcm1hdD4iCittc2dzdHIgIkI8LS1zaG93Zm9ybWF0PT5JPGZvcm1hdD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo1MworbXNnaWQgIiIKKyJTZXQgdGhlIG91dHB1dCBmb3JtYXQuIEN1cnJlbnRseSBzdXBwb3J0ZWQgdmFsdWVzIGFyZSBJPGRwa2c+IGFuZCAiCisiSTxyZmM4MjI+LiAgSTxkcGtnPiBpcyB0aGUgY2xhc3NpYyBvdXRwdXQgZm9ybWF0IChmcm9tIGJlZm9yZSB0aGlzIG9wdGlvbiAiCisiZXhpc3RlZCkgYW5kIHRoZSBkZWZhdWx0LiBJdCBjb25zaXN0cyBvZiBvbmUgcGFyYWdyYXBoIGluIERlYmlhbiBjb250cm9sICIKKyJmb3JtYXQgKHNlZSBCPGRlYi1jb250cm9sPig1KSkuIElmIG1vcmUgdGhhbiBvbmUgZW50cnkgaXMgcmVxdWVzdGVkLCB0aGVuICIKKyJtb3N0IGZpZWxkcyBhcmUgdGFrZW4gZnJvbSB0aGUgbGF0ZXN0IGVudHJ5LCBleGNlcHQgb3RoZXJ3aXNlIHN0YXRlZDoiCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo1NAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPFNvdXJjZTo+STwgcGtnLW5hbWU+IgorbXNnc3RyICJCPFNvdXJjZTo+IEU8bHQ+44K944O844K55ZCNRTxndD4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6NTYKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxWZXJzaW9uOj5JPCB2ZXJzaW9uPiIKK21zZ3N0ciAiQjxWZXJzaW9uOj4gRTxsdD7jg5Djg7zjgrjjg6fjg7PmloflrZfliJdFPGd0PiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo1OAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPERpc3RyaWJ1dGlvbjo+STwgdGFyZ2V0LWRpc3RyaWJ1dGlvbj4iCittc2dzdHIgIkI8RGVzY3JpcHRpb246PiBFPGx0PuefreOBhOiqrOaYjkU8Z3Q+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjYwCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8VXJnZW5jeTo+STwgdXJnZW5jeT4iCittc2dzdHIgIkI8UmVwbGFjZXM6PiBFPGx0PuODkeODg+OCseODvOOCuOODquOCueODiEU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6NjMKK21zZ2lkICJUaGUgaGlnaGVzdCB1cmdlbmN5IG9mIGFsbCBpbmNsdWRlZCBlbnRyaWVzIGlzIHVzZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6NjMKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxNYWludGFpbmVyOj5JPCBhdXRob3I+IgorbXNnc3RyICJCPE1haW50YWluZXI6PiBFPGx0PuWQjeWJjSBlbWFpbEU8Z3Q+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjY1CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8RGF0ZTo+STwgZGF0ZT4iCittc2dzdHIgIkI8UmVwbGFjZXM6PiBFPGx0PuODkeODg+OCseODvOOCuOODquOCueODiEU8Z3Q+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjY3CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8Q2xvc2VzOj5JPCBidWctbnVtYmVyPiIKK21zZ3N0ciAiQjxTb3VyY2U6PiBFPGx0PuOCveODvOOCueWQjUU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6NzAKK21zZ2lkICJUaGUgQ2xvc2VzIGZpZWxkcyBvZiBhbGwgaW5jbHVkZWQgZW50cmllcyBhcmUgbWVyZ2VkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjcwCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8Q2hhbmdlczo+STwgY2hhbmdlbG9nLWVudHJpZXM+IgorbXNnc3RyICJCPFBhY2thZ2U6PiBFPGx0PuODkeODg+OCseODvOOCuOWQjUU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6NzcKK21zZ2lkICIiCisiVGhlIHRleHQgb2YgYWxsIGNoYW5nZWxvZyBlbnRyaWVzIGlzIGNvbmNhdGVuYXRlZC4gVG8gbWFrZSB0aGlzIGZpZWxkIGEgIgorInZhbGlkIERlYmlhbiBjb250cm9sIGZvcm1hdCBtdWx0aWxpbmUgZmllbGQgZW1wdHkgbGluZXMgYXJlIHJlcGxhY2VkIHdpdGggYSAiCisic2luZ2xlIGZ1bGwgc3RvcCBhbmQgYWxsIGxpbmVzIGlzIGludGVuZGVkIGJ5IG9uZSBzcGFjZSBjaGFyYWN0ZXIuIFRoZSBleGFjdCAiCisiY29udGVudCBkZXBlbmRzIG9uIHRoZSBjaGFuZ2Vsb2cgZm9ybWF0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6ODAKK21zZ2lkICJUaGVyZSBtaWdodCBiZSBhZGRpdGlvbmFsIHVzZXItZGVmaW5lZCBmaWVsZHMgcHJlc2VudC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjg0Cittc2dpZCAiIgorIlRoZSBCPHJmYzgyMj4gZm9ybWF0IHVzZXMgdGhlIHNhbWUgZmllbGRzIGJ1dCBvdXRwdXRzIGEgc2VwYXJhdGUgcGFyYWdyYXBoICIKKyJmb3IgZWFjaCBjaGFuZ2Vsb2cgZW50cnkgc28gdGhhdCBhbGwgbWV0YWRhdGEgZm9yIGVhY2ggZW50cnkgaXMgcHJlc2VydmVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjg0CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1zaW5jZT4gSTx2ZXJzaW9uPiwgQjwtcz5JPHZlcnNpb24+LEI8IC12Pkk8dmVyc2lvbj4iCittc2dzdHIgIkI8LS1zaG93PiwgQjwtVz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo4NworbXNnaWQgImluY2x1ZGUgYWxsIGNoYW5nZXMgbGF0ZXIgdGhhbiBJPHZlcnNpb24+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjg3CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS11bnRpbD4gSTx2ZXJzaW9uPiwgQjwtdT5JPHZlcnNpb24+IgorbXNnc3RyICJCPC12LCAtLXZlcnNpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6OTAKK21zZ2lkICJpbmNsdWRlIGFsbCBjaGFuZ2VzIGVhcmxpZXIgdGhhbiBJPHZlcnNpb24+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjkwCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1mcm9tPiBJPHZlcnNpb24+LCBCPC1mPkk8dmVyc2lvbj4iCittc2dzdHIgIkI8LXYsIC0tdmVyc2lvbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo5MworbXNnaWQgImluY2x1ZGUgYWxsIGNoYW5nZXMgZXF1YWwgb3IgbGF0ZXIgdGhhbiBJPHZlcnNpb24+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjkzCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS10bz4gSTx2ZXJzaW9uPiwgQjwtdD5JPHZlcnNpb24+IgorbXNnc3RyICJCPC12LCAtLXZlcnNpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6OTYKK21zZ2lkICJpbmNsdWRlIGFsbCBjaGFuZ2VzIHVwIHRvIG9yIGVxdWFsIHRoYW4gSTx2ZXJzaW9uPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo5NgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tY291bnQ+IEk8bnVtYmVyPiwgQjwtYz5JPG51bWJlcj4sIEI8LW4+STxudW1iZXI+IgorbXNnc3RyICJCPHN0YXJ0LXN0b3AtZGFlbW9uPiBCPC1TPnxCPC0tc3RhcnQ+IEk8b3B0aW9ucz4gW0I8LS0+XSBJPGFyZ3VtZW50cz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxMDAKK21zZ2lkICIiCisiaW5jbHVkZSBJPG51bWJlcj4gZW50cmllcyBmcm9tIHRoZSB0b3AgKG9yIHRoZSB0YWlsIGlmIEk8bnVtYmVyPiBpcyBsb3dlciAiCisidGhhbiAwKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxMDAKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLW9mZnNldD4gSTxudW1iZXI+LCBCPC1vPkk8bnVtYmVyPiIKK21zZ3N0ciAiQjwtLWFib3J0LWFmdGVyPT5JPG51bWJlcj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxMDQKK21zZ2lkICIiCisiY2hhbmdlIHRoZSBzdGFydGluZyBwb2ludCBmb3IgLS1jb3VudCwgY291bnRlZCBmcm9tIHRoZSB0b3AgKG9yIHRoZSB0YWlsIGlmICIKKyJJPG51bWJlcj4gaXMgbG93ZXIgdGhhbiAwKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxMDQgdXBkYXRlLWFsdGVybmF0aXZlcy44OjI2OAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1hbGw+IgorbXNnc3RyICJCPC0tYWxsPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjEwOAorbXNnaWQgIiIKKyJpbmNsdWRlIGFsbCBjaGFuZ2VzLiBOb3RlOiBvdGhlciBvcHRpb25zIGhhdmUgbm8gZWZmZWN0IHdoZW4gdGhpcyBpcyBpbiB1c2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxMTQKK21zZ2lkICIiCisiQWxsIEI8UGFyc2VyIE9wdGlvbnM+IGV4Y2VwdCBmb3IgLXYgYXJlIG9ubHkgc3VwcG9ydGVkIGluIEI8ZHBrZz4sIHZlcnNpb24gIgorIjEuMTQuMTYgYW5kIGxhdGVyLiBUaGlyZCBwYXJ0eSBwYXJzZXJzIGZvciBjaGFuZ2Vsb2cgZm9ybWF0cyBvdGhlciB0aGFuICIKKyJJPGRlYmlhbj4gbWlnaHQgbm90IHN1cHBvcnQgYWxsIG9wdGlvbnMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTE2CisjLCBuby13cmFwCittc2dpZCAiQjxkZWJpYW4vY2hhbmdlbG9nPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTIyCittc2dpZCAiIgorIlRoZSBjaGFuZ2Vsb2cgZmlsZSwgdXNlZCB0byBvYnRhaW4gdmVyc2lvbi1kZXBlbmRlbnQgaW5mb3JtYXRpb24gYWJvdXQgdGhlICIKKyJzb3VyY2UgcGFja2FnZSwgc3VjaCBhcyB0aGUgdXJnZW5jeSBhbmQgZGlzdHJpYnV0aW9uIG9mIGFuIHVwbG9hZCwgdGhlICIKKyJjaGFuZ2VzIG1hZGUgc2luY2UgYSBwYXJ0aWN1bGFyIHJlbGVhc2UsIGFuZCB0aGUgc291cmNlIHZlcnNpb24gbnVtYmVyICIKKyJpdHNlbGYuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxMjkKKyMsIGZ1enp5Cittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMDcsIDIwMDggRnJhbmsgTGljaHRlbmhlbGQiCittc2dzdHIgIkNvcHlyaWdodCAyMDAwIFdpY2hlcnQgQWtrZXJtYW4iCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLXF1ZXJ5LjE6MQorIywgbm8td3JhcAorbXNnaWQgImRwa2ctcXVlcnkiCittc2dzdHIgImRwa2ctcXVlcnkiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMTo0Cittc2dpZCAiZHBrZy1xdWVyeSAtIGEgdG9vbCB0byBxdWVyeSB0aGUgZHBrZyBkYXRhYmFzZSIKK21zZ3N0ciAiZHBrZy1xdWVyeSAtIGRwa2cg44OH44O844K/44OZ44O844K55ZWP44GE5ZCI44KP44Gb44OE44O844OrIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6OAorIywgZnV6enkKK21zZ2lkICJCPGRwa2ctcXVlcnk+IFtJPG9wdGlvbj4uLi5dIEk8Y29tbWFuZD4iCittc2dzdHIgIkI8ZHBrZz4gW0k8b3B0aW9ucz5dIEk8YWN0aW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjEyCittc2dpZCAiIgorIkI8ZHBrZy1xdWVyeT4gaXMgYSB0b29sIHRvIHNob3cgaW5mb3JtYXRpb24gYWJvdXQgcGFja2FnZXMgbGlzdGVkIGluIHRoZSAiCisiQjxkcGtnPiBkYXRhYmFzZS4iCittc2dzdHIgIiIKKyJCPGRwa2ctcXVlcnk+IOOBr+OAgUI8ZHBrZz4g44OH44O844K/44OZ44O844K544GL44KJ44CB44OR44OD44Kx44O844K444Gu5oOF5aCx44KS6KGo56S644GZ44KL44OE44O844OrIgorIuOBp+OBguOCi+OAgiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcXVlcnkuMToxNAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1sPiwgQjwtLWxpc3Q+IFtJPHBhY2thZ2UtbmFtZS1wYXR0ZXJuPi4uLl0iCittc2dzdHIgIkI8LWw+IHwgQjwtLWxpc3Q+IEk8cGFja2FnZS1uYW1lLXBhdHRlcm4+IC4uLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjI0CisjLCBmdXp6eQorbXNnaWQgIiIKKyJMaXN0IHBhY2thZ2VzIG1hdGNoaW5nIGdpdmVuIHBhdHRlcm4uIElmIG5vIEk8cGFja2FnZS1uYW1lLXBhdHRlcm4+IGlzICIKKyJnaXZlbiwgbGlzdCBhbGwgcGFja2FnZXMgaW4gSTwvdmFyL2xpYi9kcGtnL3N0YXR1cz4sIGV4Y2x1ZGluZyB0aGUgb25lcyAiCisibWFya2VkIGFzIG5vdC1pbnN0YWxsZWQgKGkuZS4gdGhvc2Ugd2hpY2ggaGF2ZSBiZWVuIHByZXZpb3VzbHkgcHVyZ2VkKS4gIgorIk5vcm1hbCBzaGVsbCB3aWxkY2hhcnMgYXJlIGFsbG93ZWQgaW4gSTxwYWNrYWdlLW5hbWUtcGF0dGVybj4uIFBsZWFzZSBub3RlICIKKyJ5b3Ugd2lsbCBwcm9iYWJseSBoYXZlIHRvIHF1b3RlIEk8cGFja2FnZS1uYW1lLXBhdHRlcm4+IHRvIHByZXZlbnQgdGhlIHNoZWxsICIKKyJmcm9tIHBlcmZvcm1pbmcgZmlsZW5hbWUgZXhwYW5zaW9uLiBGb3IgZXhhbXBsZSB0aGlzIHdpbGwgbGlzdCBhbGwgcGFja2FnZSAiCisibmFtZXMgc3RhcnRpbmcgd2l0aCBgYGxpYmM2Jyc6IgorbXNnc3RyICIiCisi5oyH5a6a44GX44Gf44OR44K/44O844Oz44Gr44Oe44OD44OB44GZ44KL5ZCN5YmN44Gu44OR44OD44Kx44O844K444KS6KGo56S644GZ44KL44CCIEk8cGFja2FnZS1uYW1lLSIKKyJwYXR0ZXJuPiDjgpLmjIflrprjgZfjgarjgYTloLTlkIjjga/jgIEgSTwvdmFyL2xpYi9kcGtnL3N0YXR1cz4g44Gr44GC44KL44CBcHVyZ2Ug54q25oWL44GrIgorIuODnuODvOOCr+OBleOCjOOBpuOBhOOBquOBhOOBmeOBueOBpuOBruODkeODg+OCseODvOOCuOOBruS4gOimp+OCkuihqOekuuOBmeOCi+OAgkk8cGFja2FnZS1uYW1lLSIKKyJwYXR0ZXJuPiDjgavjga/jgIHmqJnmupbnmoTjgarjgrfjgqfjg6vjga7jg6/jgqTjg6vjg4nmloflrZfjgpLkvb/nlKjjgZnjgovjgZPjgajjgYzjgafjgY3jgovjgILjgZ/jgaDjgZfjgIEiCisi44K344Kn44Or44Gr44OV44Kh44Kk44Or5ZCN5bGV6ZaL44KS44GV44Gb44Gq44GE44KI44GG44Gr44CBSTxwYWNrYWdlLW5hbWUtcGF0dGVybj4g44KS44Kv44Kq44O844OI44GZIgorIuOCi+W/heimgeOBjOOBguOCi+OBk+OBqOOBq+azqOaEj+OBl+OBpuOBhOOBn+OBoOOBjeOBn+OBhOOAguS+i+OBiOOBsOasoeOBruOCs+ODnuODs+ODieOBr+OAgeWQjeWJjeOBjCAiCisiYGBsaWJjNicnIOOBp+Wni+OBvuOCi+OBmeOBueOBpuOBruODkeODg+OCseODvOOCuOOCkuihqOekuuOBmeOCi+OAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjI3CisjLCBuby13cmFwCittc2dpZCAiICBCPGRwa2ctcXVlcnkgLWwgXFwoYXFsaWJjNipcXChhcT5cbiIKK21zZ3N0ciAiICBCPGRwa2ctcXVlcnkgLWwgXFwoYXFsaWJjNipcXChhcT5cbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjMxCittc2dpZCAiIgorIlRoZSBmaXJzdCB0aHJlZSBjb2x1bW5zIG9mIHRoZSBvdXRwdXQgc2hvdyB0aGUgZGVzaXJlZCBhY3Rpb24sIHRoZSBwYWNrYWdlICIKKyJzdGF0dXMsIGFuZCBlcnJvcnMsIGluIHRoYXQgb3JkZXIuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMTozMworbXNnaWQgIkRlc2lyZWQgYWN0aW9uOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6MzkKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiICB1ID0gVW5rbm93blxuIgorIiAgaSA9IEluc3RhbGxcbiIKKyIgIGggPSBIb2xkXG4iCisiICByID0gUmVtb3ZlXG4iCisiICBwID0gUHVyZ2VcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6NDIKKyMsIGZ1enp5CisjfCBtc2dpZCAiUGFja2FnZXMgc3RhdHVzIGxpc3QiCittc2dpZCAiUGFja2FnZSBzdGF0dXM6IgorbXNnc3RyICLjg5Hjg4PjgrHjg7zjgrjnirbms4Hjg6rjgrnjg4giCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMTo1MQorIywgbm8td3JhcAorbXNnaWQgIiIKKyIgIG4gPSBOb3QtaW5zdGFsbGVkXG4iCisiICBjID0gQ29uZmlnLWZpbGVzXG4iCisiICBIID0gSGFsZi1pbnN0YWxsZWRcbiIKKyIgIFUgPSBVbnBhY2tlZFxuIgorIiAgRiA9IEhhbGYtY29uZmlndXJlZFxuIgorIiAgVyA9IFRyaWdnZXJzLWF3YWl0aW5nXG4iCisiICB0ID0gVHJpZ2dlcnMtcGVuZGluZ1xuIgorIiAgaSA9IEluc3RhbGxlZFxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMTo1NAorbXNnaWQgIkVycm9yIGZsYWdzOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6NTcKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiICBFPGx0PmVtcHR5RTxndD4gPSAobm9uZSlcbiIKKyIgIFIgPSBSZWluc3QtcmVxdWlyZWRcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6NjIKK21zZ2lkICIiCisiQW4gdXBwZXJjYXNlIHN0YXR1cyBvciBlcnJvciBsZXR0ZXIgaW5kaWNhdGVzIHRoZSBwYWNrYWdlIGlzIGxpa2VseSB0byBjYXVzZSAiCisic2V2ZXJlIHByb2JsZW1zLiBQbGVhc2UgcmVmZXIgdG8gQjxkcGtnPigxKSBmb3IgaW5mb3JtYXRpb24gYWJvdXQgdGhlIGFib3ZlICIKKyJzdGF0ZXMgYW5kIGZsYWdzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6NjcKK21zZ2lkICIiCisiVGhlIG91dHB1dCBmb3JtYXQgb2YgdGhpcyBvcHRpb24gaXMgbm90IGNvbmZpZ3VyYWJsZSwgYnV0IHZhcmllcyAiCisiYXV0b21hdGljYWxseSB0byBmaXQgdGhlIHRlcm1pbmFsIHdpZHRoLiBJdCBpcyBpbnRlbmRlZCBmb3IgaHVtYW4gcmVhZGVycywgIgorImFuZCBpcyBub3QgZWFzaWx5IG1hY2hpbmUtcmVhZGFibGUuIFNlZSBCPC1XPiAoQjwtLXNob3c+KSAgYW5kIEI8LS0iCisic2hvd2Zvcm1hdD4gZm9yIGEgd2F5IHRvIGNvbmZpZ3VyZSB0aGUgb3V0cHV0IGZvcm1hdC4iCittc2dzdHIgIiIKKyLjgZPjga7lh7rlipvlvaLlvI/jga/lpInmm7Tlj6/og73jgafjga/jgarjgYTjgYzjgIHnq6/mnKvjga7mqKrluYXjgavlkIjjgYbjgojjgYbjgavoh6rli5XnmoTjgavoqr/mlbTjgZXjgozjgovjgIIiCisi44GT44Gu5Ye65Yqb44Gv5Lq66ZaT44Gr6Kqt44G/44KE44GZ44GE44KC44Gu44Gn44GC44KK44CB5qmf5qKw44Gr6Kqt44G+44Gb44KL44Gu44Gr44Gv5ZCR44GL44Gq44GE44CC5Ye65Yqb5b2i5byPIgorIuOBruioreWumuaWueazleOBq+OBpOOBhOOBpuOBr+OAgSBCPC1XPiAoQjwtLXNob3c+KSDjgaggQjwtLXNob3dmb3JtYXQ+IOOCkuWPgueFp+OAgiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcXVlcnkuMTo2NworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1XPiwgQjwtLXNob3c+IFtJPHBhY2thZ2UtbmFtZS1wYXR0ZXJuPi4uLl0iCittc2dzdHIgIkI8LVc+IHwgQjwtLXNob3c+IEk8cGFja2FnZS1uYW1lLXBhdHRlcm4+IC4uLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjc0Cittc2dpZCAiIgorIkp1c3QgbGlrZSB0aGUgQjwtLWxpc3Q+IG9wdGlvbiB0aGlzIHdpbGwgbGlzdCBhbGwgcGFja2FnZXMgbWF0Y2hpbmcgdGhlICIKKyJnaXZlbiBwYXR0ZXJuLiBIb3dldmVyIHRoZSBvdXRwdXQgY2FuIGJlIGN1c3RvbWl6ZWQgdXNpbmcgdGhlIEI8LS0iCisic2hvd2Zvcm1hdD4gb3B0aW9uLiAgVGhlIGRlZmF1bHQgb3V0cHV0IGZvcm1hdCBnaXZlcyBvbmUgbGluZSBwZXIgbWF0Y2hpbmcgIgorInBhY2thZ2UsIGVhY2ggbGluZSBoYXZpbmcgdGhlIG5hbWUgYW5kIGluc3RhbGxlZCB2ZXJzaW9uIG9mIHRoZSBwYWNrYWdlLCAiCisic2VwYXJhdGVkIGJ5IGEgdGFiLiIKK21zZ3N0ciAiIgorIkI8LS1saXN0PiDjgqrjg5fjgrfjg6fjg7PjgajlkIzmp5jjgavjgIHmjIflrprjgZfjgZ/jg5Hjgr/jg7zjg7Pjgavjg57jg4Pjg4HjgZnjgovjgZnjgbnjgabjga7jg5Hjg4PjgrHjg7zjgrgiCisi44KS6KGo56S644GZ44KL44CC44GV44KJ44Gr44CB44GT44Gu44Kq44OX44K344On44Oz44Gu5Ye65Yqb44Gv44CBIEI8LS1zaG93Zm9ybWF0PiDjgqrjg5fjgrfjg6fjg7PjgavjgojjgaMiCisi44Gm44Kr44K544K/44Oe44Kk44K644GZ44KL44GT44Go44GM44Gn44GN44KL44CC44OH44OV44Kp44Or44OI44Gu5Ye65Yqb5b2i5byP44Gv44CB44Oe44OD44OB44GX44Gf44OR44OD44Kx44O844K4IgorIuOBlOOBqOOBqyAxIOihjOOBqOOBquOCi+OAguOBneOCjOOBnuOCjOOBruihjOOBr+OAgeODkeODg+OCseODvOOCuOWQjeOBqOOCpOODs+OCueODiOODvOODq+OBl+OBn+ODkOODvOOCuOODp+ODs+OBjCIKKyLjgr/jg5bljLrliIfjgorjgaflkKvjgb7jgozjgovjgIIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXF1ZXJ5LjE6NzQKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtcz4sIEI8LS1zdGF0dXM+IEk8cGFja2FnZS1uYW1lPi4uLiIKK21zZ3N0ciAiQjwtcz4gfCBCPC0tc3RhdHVzPiBJPHBhY2thZ2UtbmFtZT4gLi4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6NzkKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlJlcG9ydCBzdGF0dXMgb2Ygc3BlY2lmaWVkIHBhY2thZ2UuIFRoaXMganVzdCBkaXNwbGF5cyB0aGUgZW50cnkgaW4gdGhlICIKKyN8ICJpbnN0YWxsZWQgcGFja2FnZSBzdGF0dXMgZGF0YWJhc2UuIgorbXNnaWQgIiIKKyJSZXBvcnQgc3RhdHVzIG9mIHNwZWNpZmllZCBwYWNrYWdlLiBUaGlzIGp1c3QgZGlzcGxheXMgdGhlIGVudHJ5IGluIHRoZSAiCisiaW5zdGFsbGVkIHBhY2thZ2Ugc3RhdHVzIGRhdGFiYXNlLiBXaGVuIG11bHRpcGxlIEk8cGFja2FnZS1uYW1lPiBhcmUgbGlzdGVkLCAiCisidGhlIHJlcXVlc3RlZCBzdGF0dXMgZW50cmllcyBhcmUgc2VwYXJhdGVkIGJ5IGFuIGVtcHR5IGxpbmUuIgorbXNnc3RyICIiCisi5oyH5a6a44GX44Gf44OR44OD44Kx44O844K444Gu54q25rOB44KS5aCx5ZGK44GZ44KL44CC44GT44KM44Gv44CB44Kk44Oz44K544OI44O844Or5riI44G/44OR44OD44Kx44O844K454q25rOBIgorIuODh+ODvOOCv+ODmeODvOOCueOBi+OCieOBruWGheWuueOCkuihqOekuuOBl+OBpuOBhOOCi+OBoOOBkeOBp+OBguOCi+OAgiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcXVlcnkuMTo3OQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1MPiwgQjwtLWxpc3RmaWxlcz4gSTxwYWNrYWdlLW5hbWU+Li4uIgorbXNnc3RyICJCPC1MPiB8IEI8LS1saXN0ZmlsZXM+IEk8cGFja2FnZS1uYW1lPiAuLi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMTo4NQorIywgZnV6enkKK21zZ2lkICIiCisiTGlzdCBmaWxlcyBpbnN0YWxsZWQgdG8geW91ciBzeXN0ZW0gZnJvbSBJPHBhY2thZ2UtbmFtZT4uIFdoZW4gbXVsdGlwbGUgIgorIkk8cGFja2FnZS1uYW1lPiBhcmUgbGlzdGVkLCB0aGUgcmVxdWVzdGVkIGxpc3RzIG9mIGZpbGVzIGFyZSBzZXBhcmF0ZWQgYnkgYW4gIgorImVtcHR5IGxpbmUuIEhvd2V2ZXIsIG5vdGUgdGhhdCBmaWxlcyBjcmVhdGVkIGJ5IHBhY2thZ2Utc3BlY2lmaWMgIgorImluc3RhbGxhdGlvbi1zY3JpcHRzIGFyZSBub3QgbGlzdGVkLiIKK21zZ3N0ciAiIgorIkI8cGFja2FnZS1uYW1lPiDjgavjgojjgaPjgabjgqTjg7Pjgrnjg4jjg7zjg6vjgZfjgZ/jg5XjgqHjgqTjg6vjgpLooajnpLrjgZnjgovjgILjgZ/jgaDjgZfjgIHjg5Hjg4PjgrHjg7wiCisi44K45LuY5bGe44Gu44Kk44Oz44K544OI44O844Or44K544Kv44Oq44OX44OI44Gr44KI44Gj44Gm5L2c5oiQ44GV44KM44Gf44OV44Kh44Kk44Or44Gv6KGo56S644GV44KM44Gq44GE44GT44Go44GrIgorIuazqOaEj+OBmeOCi+OBk+OBqOOAgiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcXVlcnkuMTo4NQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1jPiwgQjwtLWNvbnRyb2wtcGF0aD4gSTxwYWNrYWdlLW5hbWU+IFtJPGNvbnRyb2wtZmlsZT5dIgorbXNnc3RyICJCPGRwa2ctZGViPiBCPC1JPnxCPC0taW5mbz4gSTxhcmNoaXZlPiBbSTxjb250cm9sLWZpbGUtbmFtZT4gLi5dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6OTMKK21zZ2lkICIiCisiTGlzdCBwYXRocyBmb3IgY29udHJvbCBmaWxlcyBpbnN0YWxsZWQgdG8geW91ciBzeXN0ZW0gZnJvbSBJPHBhY2thZ2UtbmFtZT4uICAiCisiSWYgSTxjb250cm9sLWZpbGU+IGlzIHNwZWNpZmllZCB0aGVuIG9ubHkgbGlzdCB0aGUgcGF0aCBmb3IgdGhhdCBjb250cm9sICIKKyJmaWxlIGlmIGl0IGlzIHByZXNlbnQuIEI8V2FybmluZz46IHRoaXMgY29tbWFuZCBpcyBzZW1pLXB1YmxpYywgaXQgc2hvdWxkIGJlICIKKyJ1c2VkIG9ubHkgYXMgYSBsYXN0IHJlc29ydCBzb2x1dGlvbiwgYW5kIGlmIG5vIG90aGVyIGludGVyZmFjZSBpcyBhdmFpbGFibGUuICIKKyJJdCBtaWdodCBnZXQgZGVwcmVjYXRlZCBsYXRlciBvbiBpZiBiZXR0ZXIgaW50ZXJmYWNlcyBvciB0aGUgY3VycmVudCAiCisiYXJjaGl0ZWN0dXJhbCBkZWZpY2llbmNpZXMgaGF2ZSBiZWVuIHNvbHZlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcXVlcnkuMTo5MworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1TPiwgQjwtLXNlYXJjaD4gSTxmaWxlbmFtZS1zZWFyY2gtcGF0dGVybj4uLi4iCittc2dzdHIgIkI8LVM+IHwgQjwtLXNlYXJjaD4gSTxmaWxlbmFtZS1zZWFyY2gtcGF0dGVybj4gLi4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6OTkKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlNlYXJjaCBmb3IgYSBmaWxlbmFtZSBmcm9tIGluc3RhbGxlZCBwYWNrYWdlcy4gQWxsIHN0YW5kYXJkIHNoZWxsICIKKyN8ICJ3aWxkY2hhcnMgY2FuIGJlIHVzZWQgaW4gdGhlIHBhdHRlcm4uIFRoaXMgY29tbWFuZCB3aWxsIG5vdCBsaXN0IGV4dHJhICIKKyN8ICJmaWxlcyBjcmVhdGVkIGJ5IG1haW50YWluZXIgc2NyaXB0cywgbm9yIHdpbGwgaXQgbGlzdCBhbHRlcm5hdGl2ZXMuIgorbXNnaWQgIiIKKyJTZWFyY2ggZm9yIHBhY2thZ2VzIHRoYXQgb3duIGZpbGVzIGNvcnJlc3BvbmRpbmcgdG8gdGhlIGdpdmVuIHBhdHRlcm4uICAiCisiU3RhbmRhcmQgc2hlbGwgd2lsZGNoYXJzIGNhbiBiZSB1c2VkIGluIHRoZSBwYXR0ZXJuLiAgVGhpcyBjb21tYW5kIHdpbGwgbm90ICIKKyJsaXN0IGV4dHJhIGZpbGVzIGNyZWF0ZWQgYnkgbWFpbnRhaW5lciBzY3JpcHRzLCBub3Igd2lsbCBpdCBsaXN0ICIKKyJhbHRlcm5hdGl2ZXMuIgorbXNnc3RyICIiCisi5oyH5a6a44GX44Gf44OV44Kh44Kk44Or44GM44Gp44Gu44OR44OD44Kx44O844K444GL44KJ44Kk44Oz44K544OI44O844Or44GV44KM44Gf44GL44KS5o6i44GZ44CC44OR44K/44O844Oz44GrIgorIuOBr+OAgeaomea6lueahOOBquOCt+OCp+ODq+OBruOBmeOBueOBpuOBruODr+OCpOODq+ODieaWh+Wtl+OCkuS9v+eUqOOBmeOCi+OBk+OBqOOBjOOBp+OBjeOCi+OAguOBk+OBruOCs+ODnuODs+ODiSIKKyLjgafjga/jgIHjg6Hjg7Pjg4bjg4rjgrnjgq/jg6rjg5fjg4jjgafkvZzmiJDjgZXjgozjgZ/ov73liqDjg5XjgqHjgqTjg6vjgoTjgIEgYWx0ZXJuYXRpdmVzIOOBr+aOouOBmeOBk+OBqCIKKyLjgYzjgafjgY3jgarjgYTjgIIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXF1ZXJ5LjE6OTkKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtcD4sIEI8LS1wcmludC1hdmFpbD4gSTxwYWNrYWdlLW5hbWU+Li4uIgorbXNnc3RyICJCPC1wPiB8QjwtLXByaW50LWF2YWlsPiBJPHBhY2thZ2UtbmFtZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMToxMDUKK21zZ2lkICIiCisiRGlzcGxheSBkZXRhaWxzIGFib3V0IEk8cGFja2FnZS1uYW1lPiwgYXMgZm91bmQgaW4gSTwvdmFyL2xpYi9kcGtnLyIKKyJhdmFpbGFibGU+LiBXaGVuIG11bHRpcGxlIEk8cGFja2FnZS1uYW1lPiBhcmUgbGlzdGVkLCB0aGUgcmVxdWVzdGVkICIKKyJJPGF2YWlsYWJsZT4gZW50cmllcyBhcmUgc2VwYXJhdGVkIGJ5IGFuIGVtcHR5IGxpbmUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMToxMTAKK21zZ2lkICIiCisiVXNlcnMgb2YgQVBULWJhc2VkIGZyb250ZW5kcyBzaG91bGQgdXNlIEI8YXB0LWNhY2hlIHNob3c+IEk8cGFja2FnZS1uYW1lPiAiCisiaW5zdGVhZCBhcyB0aGUgSTxhdmFpbGFibGU+IGZpbGUgaXMgb25seSBrZXB0IHVwLXRvLWRhdGUgd2hlbiB1c2luZyAiCisiQjxkc2VsZWN0Pi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcXVlcnkuMToxMjIKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtZj4sIEI8LS1zaG93Zm9ybWF0PT5JPGZvcm1hdD4iCittc2dzdHIgIkI8LWY+IHwgQjwtLXNob3dmb3JtYXQ9Pkk8Zm9ybWF0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjEyOQorbXNnaWQgIkluIHRoZSBmb3JtYXQgc3RyaW5nLCBcXChscUI8XFxlPlxcKHJxIGludHJvZHVjZXMgZXNjYXBlczoiCittc2dzdHIgIuODleOCqeODvOODnuODg+ODiOaWh+Wtl+WIl+S4reOBp+OBr+OAgVxcKGxxQjxcXGU+XFwocnEg44Gv44Ko44K544Kx44O844OX5paH5a2X44Gn44GC44KLOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjEzNAorIywgbm8td3JhcAorbXNnaWQgIiIKKyIgICAgQjxcXGVuPiAgbmV3bGluZVxuIgorIiAgICBCPFxcZXI+ICBjYXJyaWFnZSByZXR1cm5cbiIKKyIgICAgQjxcXGV0PiAgdGFiXG4iCittc2dzdHIgIiIKKyIgICAgQjxcXGVuPiAg5pS56KGMXG4iCisiICAgIEI8XFxlcj4gIOOCreODo+ODquODg+OCuOODquOCv+ODvOODs1xuIgorIiAgICBCPFxcZXQ+ICDjgr/jg5ZcbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjEzOQorbXNnaWQgIiIKKyJcXChscUI8XFxlPlxcKHJxIGJlZm9yZSBhbnkgb3RoZXIgY2hhcmFjdGVyIHN1cHByZXNzZXMgYW55IHNwZWNpYWwgbWVhbmluZyAiCisib2YgdGhlIGZvbGxvd2luZyBjaGFyYWN0ZXIsIHdoaWNoIGlzIHVzZWZ1bCBmb3IgXFwobHFCPFxcZT5cXChycSBhbmQgXFwobHFCPCIKKyIkPlxcKHJxLiIKK21zZ3N0ciAiIgorIuWJjeOBqyBcXChscUI8XFxlPlxcKHJxIOOCkue9ruOBj+OBk+OBqOOBp+OAgee2muOBj+OBguOCieOChuOCi+aWh+Wtl+OBruaEj+WRs+OCkuaKkeWItuOBp+OBjSIKKyLjgovjgIJcXChscUI8XFxlPlxcKHJxIOOChCBcXChscUI8JD5cXChycSDjga7jgZ/jgoHjgavmnInnlKjjgafjgYLjgovjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMToxNDcKKyMsIGZ1enp5Cittc2dpZCAiIgorIlBhY2thZ2UgaW5mb3JtYXRpb24gY2FuIGJlIGluY2x1ZGVkIGJ5IGluc2VydGluZyB2YXJpYWJsZSByZWZlcmVuY2VzIHRvICIKKyJwYWNrYWdlIGZpZWxkcyB1c2luZyB0aGUgc3ludGF4IFxcKGxxQjwkez5JPGZpZWxkPltCPDs+STx3aWR0aD5dQjx9PlxcKHJxLiAiCisiRmllbGRzIGFyZSBwcmludGVkIHJpZ2h0LWFsaWduZWQgdW5sZXNzIHRoZSB3aWR0aCBpcyBuZWdhdGl2ZSBpbiB3aGljaCBjYXNlICIKKyJsZWZ0IGFsaWdubWVudCB3aWxsIGJlIHVzZWQuIFRoZSBmb2xsb3dpbmcgSTxmaWVsZD5zIGFyZSByZWNvZ25pc2VkIGJ1dCB0aGV5ICIKKyJhcmUgbm90IG5lY2Vzc2FyaWx5IGF2YWlsYWJsZSBpbiB0aGUgc3RhdHVzIGZpbGUgKG9ubHkgaW50ZXJuYWwgZmllbGRzIG9yICIKKyJmaWVsZHMgc3RvcmVkIGluIHRoZSBiaW5hcnkgcGFja2FnZSBlbmQgdXAgaW4gaXQpOiIKK21zZ3N0ciAiIgorIuODkeODg+OCseODvOOCuOaDheWgseOBq+OBr+OAgeODkeODg+OCseODvOOCuOODleOCo+ODvOODq+ODieOCkuWPgueFp+OBmeOCi+WkieaVsOOCkuWQq+OCgeOCi+OBk+OBqOOBjOOBp+OBjeOCi+OAgiIKKyLjgZ3jga7lpInmlbDjga7mp4vmlofjga/jgIFcXChscUI8JHs+STxmaWVsZD5bQjw7Pkk8d2lkdGg+XUI8fT5cXChycSDjgajjgarjgovjgILjgZ3jgozjgZ7jgowiCisi44Gu44OV44Kj44O844Or44OJ44Gv5Y+z5a+E44Gb44Gn6KGo56S644GV44KM44KL44GM44CBd2lkdGgg44Gr6LKg44Gu5YCk44KS5oyH5a6a44GZ44KL44Go5bem5a+E44Gb44Gr44Gq44KL44CCIgorIuS7peS4i+OBriBJPGZpZWxkPiDjga/oqo3orZjjgZXjgozjgos6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6MTgyCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIiIKKyIgICAgQjxBcmNoaXRlY3R1cmU+XG4iCisiICAgIEI8QnVncz5cbiIKKyIgICAgQjxDb25mZmlsZXM+IChpbnRlcm5hbClcbiIKKyIgICAgQjxDb25maWctVmVyc2lvbj4gKGludGVybmFsKVxuIgorIiAgICBCPENvbmZsaWN0cz5cbiIKKyIgICAgQjxCcmVha3M+XG4iCisiICAgIEI8RGVwZW5kcz5cbiIKKyIgICAgQjxEZXNjcmlwdGlvbj5cbiIKKyIgICAgQjxFbmhhbmNlcz5cbiIKKyIgICAgQjxFc3NlbnRpYWw+XG4iCisiICAgIEI8RmlsZW5hbWU+IChpbnRlcm5hbCwgZnJvbnQtZW5kIHJlbGF0ZWQpXG4iCisiICAgIEI8SG9tZXBhZ2U+XG4iCisiICAgIEI8SW5zdGFsbGVkLVNpemU+XG4iCisiICAgIEI8TUQ1c3VtPiAoaW50ZXJuYWwsIGZyb250LWVuZCByZWxhdGVkKVxuIgorIiAgICBCPE1TRE9TLUZpbGVuYW1lPiAoaW50ZXJuYWwsIGZyb250LWVuZCByZWxhdGVkKVxuIgorIiAgICBCPE1haW50YWluZXI+XG4iCisiICAgIEI8T3JpZ2luPlxuIgorIiAgICBCPFBhY2thZ2U+XG4iCisiICAgIEI8UHJlLURlcGVuZHM+XG4iCisiICAgIEI8UHJpb3JpdHk+XG4iCisiICAgIEI8UHJvdmlkZXM+XG4iCisiICAgIEI8UmVjb21tZW5kcz5cbiIKKyIgICAgQjxSZXBsYWNlcz5cbiIKKyIgICAgQjxSZXZpc2lvbj4gKG9ic29sZXRlKVxuIgorIiAgICBCPFNlY3Rpb24+XG4iCisiICAgIEI8U2l6ZT4gKGludGVybmFsLCBmcm9udC1lbmQgcmVsYXRlZClcbiIKKyIgICAgQjxTb3VyY2U+XG4iCisiICAgIEI8U3RhdHVzPiAoaW50ZXJuYWwpXG4iCisiICAgIEI8U3VnZ2VzdHM+XG4iCisiICAgIEI8VGFnPiAodXN1YWxseSBub3QgaW4gdGhlIC5kZWIgYnV0IGluIHRoZSByZXBvc2l0b3J5IFBhY2thZ2VzIGZpbGVzKVxuIgorIiAgICBCPFRyaWdnZXJzLUF3YWl0ZWQ+IChpbnRlcm5hbClcbiIKKyIgICAgQjxUcmlnZ2Vycy1QZW5kaW5nPiAoaW50ZXJuYWwpXG4iCisiICAgIEI8VmVyc2lvbj5cbiIKK21zZ3N0ciAiIgorIiAgICBCPEFyY2hpdGVjdHVyZT5cbiIKKyIgICAgQjxCdWdzPlxuIgorIiAgICBCPENvbmZmaWxlcz5cbiIKKyIgICAgQjxDb25maWctVmVyc2lvbj5cbiIKKyIgICAgQjxDb25mbGljdHM+XG4iCisiICAgIEI8RGVwZW5kcz5cbiIKKyIgICAgQjxEZXNjcmlwdGlvbj5cbiIKKyIgICAgQjxFbmhhbmNlcz5cbiIKKyIgICAgQjxFc3NlbnRpYWw+XG4iCisiICAgIEI8RmlsZW5hbWU+XG4iCisiICAgIEI8SW5zdGFsbGVkLVNpemU+XG4iCisiICAgIEI8TUQ1c3VtPlxuIgorIiAgICBCPE1TRE9TLUZpbGVuYW1lPlxuIgorIiAgICBCPE1haW50YWluZXI+XG4iCisiICAgIEI8T3JpZ2luPlxuIgorIiAgICBCPFBhY2thZ2U+XG4iCisiICAgIEI8UHJlLURlcGVuZHM+XG4iCisiICAgIEI8UHJpb3JpdHk+XG4iCisiICAgIEI8UHJvdmlkZXM+XG4iCisiICAgIEI8UmVjb21tZW5kcz5cbiIKKyIgICAgQjxSZXBsYWNlcz5cbiIKKyIgICAgQjxSZXZpc2lvbj5cbiIKKyIgICAgQjxTZWN0aW9uPlxuIgorIiAgICBCPFNpemU+XG4iCisiICAgIEI8U291cmNlPlxuIgorIiAgICBCPFN0YXR1cz5cbiIKKyIgICAgQjxTdWdnZXN0cz5cbiIKKyIgICAgQjxWZXJzaW9uPlxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6MTkwCittc2dpZCAiIgorIlRoZSBkZWZhdWx0IGZvcm1hdCBzdHJpbmcgaXMgXFwobHFCPCR7UGFja2FnZX1cXGV0JHtWZXJzaW9ufVxcZW4+XFwocnEuICAiCisiQWN0dWFsbHksIGFsbCBvdGhlciBmaWVsZHMgZm91bmQgaW4gdGhlIHN0YXR1cyBmaWxlIChpLmUuIHVzZXIgZGVmaW5lZCAiCisiZmllbGRzKSBjYW4gYmUgcmVxdWVzdGVkLCB0b28uIFRoZXkgd2lsbCBiZSBwcmludGVkIGFzLWlzLCB0aG91Z2gsIG5vICIKKyJjb252ZXJzaW9uIG5vciBlcnJvciBjaGVja2luZyBpcyBkb25lIG9uIHRoZW0uICBUbyBnZXQgdGhlIG5hbWUgb2YgdGhlIGRwa2cgIgorIm1haW50YWluZXIgYW5kIHRoZSBpbnN0YWxsZWQgdmVyc2lvbiwgeW91IGNvdWxkIHJ1bjoiCittc2dzdHIgIiIKKyLjg4fjg5Xjgqnjg6vjg4jjga7jg5Xjgqnjg7zjg57jg4Pjg4jmloflrZfliJfjga8gIFxcKGxxQjwke1BhY2thZ2V9XFxldCR7VmVyc2lvbn1cXGVuPlxcKHJxICIKKyLjgafjgYLjgovjgILlrp/pmpvjgavjga/jgIFzdGF0dXMg44OV44Kh44Kk44Or44Gr5ZCr44G+44KM44KL5LuW44Gu44GZ44G544Gm44Gu44OV44Kj44O844Or44OJKOOBpOOBvuOCiuOAgSIKKyLjg6bjg7zjgrblrprnvqnjg5XjgqPjg7zjg6vjg4kp44KC5oyH5a6a44GZ44KL44GT44Go44GM44Gn44GN44KL44CC44GT44KM44KJ44Gv44Gd44Gu44G+44G+6KGo56S644GV44KM44KL44CC5aSJ5o+bIgorIuOChOOCqOODqeODvOODgeOCp+ODg+OCr+OBr+OBleOCjOOBquOBhOOAgmRwa2cg44Gu44Oh44Oz44OG44OK44Go44Kk44Oz44K544OI44O844Or44GV44KM44Gm44GE44KL44OQ44O844K444On44OzIgorIuOCkuW+l+OCi+OBq+OBr+OAgeOBk+OCjOOCkuWun+ihjOOBmeOCizoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMToxOTMKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiICBCPGRwa2ctcXVlcnkgLVcgLWY9XFwoYXEke1BhY2thZ2V9ICR7VmVyc2lvbn1cXGV0JHtNYWludGFpbmVyfVxcZW5cXChhcSBkcGtnPlxuIgorbXNnc3RyICIgIEI8ZHBrZy1xdWVyeSAtVyAtZj0nJHtQYWNrYWdlfSAke1ZlcnNpb259XFxldCR7TWFpbnRhaW5lcn1cXGVuJyBkcGtnPlxuIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1xdWVyeS4xOjE5NSBkcGtnLXNwbGl0LjE6MTc5IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjU5CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6Mzc0CisjLCBuby13cmFwCittc2dpZCAiRVhJVCBTVEFUVVMiCittc2dzdHIgIue1guS6huOCueODhuODvOOCv+OCuSIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcXVlcnkuMToxOTYgZHBrZy1zcGxpdC4xOjE4MCBzdGFydC1zdG9wLWRhZW1vbi44OjI2MAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyODkgdXBkYXRlLWFsdGVybmF0aXZlcy44OjM3NQorIywgbm8td3JhcAorbXNnaWQgIkI8MD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjE5OQorIywgZnV6enkKKyN8IG1zZ2lkICJUaGUgcmVxdWVzdGVkIGFjdGlvbiB3YXMgc3VjY2Vzc2Z1bGx5IHBlcmZvcm1lZC4iCittc2dpZCAiVGhlIHJlcXVlc3RlZCBxdWVyeSB3YXMgc3VjY2Vzc2Z1bGx5IHBlcmZvcm1lZC4iCittc2dzdHIgIuODquOCr+OCqOOCueODiOOBleOCjOOBn+OCouOCr+OCt+ODp+ODs+OBjOato+OBl+OBj+Wun+ihjOOBleOCjOOBn+OAgiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcXVlcnkuMToxOTkgZHBrZy1zcGxpdC4xOjE4NiBzdGFydC1zdG9wLWRhZW1vbi44OjI3MAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyOTIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPDE+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMToyMDMKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlByb2JsZW1zIHdlcmUgZW5jb3VudGVyZWQgd2hpbHN0IHBhcnNpbmcgdGhlIGNvbW1hbmQgbGluZSBvciBwZXJmb3JtaW5nICIKKyN8ICJ0aGUgYWN0aW9uLiIKK21zZ2lkICIiCisiUHJvYmxlbXMgd2VyZSBlbmNvdW50ZXJlZCB3aGlsZSBwYXJzaW5nIHRoZSBjb21tYW5kIGxpbmUgb3IgcGVyZm9ybWluZyB0aGUgIgorInF1ZXJ5LCBpbmNsdWRpbmcgbm8gZmlsZSBvciBwYWNrYWdlIGJlaW5nIGZvdW5kIChleGNlcHQgZm9yIC0tY29udHJvbC1wYXRoKS4iCittc2dzdHIgIiIKKyLjgrPjg57jg7Pjg4njg6njgqTjg7Pjga7op6Pph4jjgpLooYzjgYbjgajjgY3jgYvjgIHjgqLjgq/jgrfjg6fjg7PjgpLlrp/ooYzjgZnjgovjgajjgY3jgavllY/poYzjgYzotbfjgZPjgaPjgZ/jgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMToyMTMKK21zZ2lkICIiCisiVGhpcyBzZXR0aW5nIGluZmx1ZW5jZXMgdGhlIG91dHB1dCBvZiB0aGUgQjwtLWxpc3Q+IG9wdGlvbiBieSBjaGFuZ2luZyB0aGUgIgorIndpZHRoIG9mIGl0cyBvdXRwdXQuIgorbXNnc3RyICLoqK3lrprjgZnjgovjgajjgIFCPC0tbGlzdD4g44Kq44OX44K344On44Oz44Gr44KI44KL5Ye65Yqb44Gu5qiq5bmF44KS5aSJ5pu044GZ44KL44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6MjE2CisjLCBmdXp6eQorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDAxIFdpY2hlcnQgQWtrZXJtYW4iCittc2dzdHIgIkNvcHlyaWdodCAyMDAwIFdpY2hlcnQgQWtrZXJtYW4iCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjE1CisjLCBuby13cmFwCittc2dpZCAiZHBrZy1zY2FucGFja2FnZXMiCittc2dzdHIgImRwa2ctc2NhbnBhY2thZ2VzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjE4CisjLCBmdXp6eQorbXNnaWQgImRwa2ctc2NhbnBhY2thZ2VzIC0gY3JlYXRlIFBhY2thZ2VzIGluZGV4IGZpbGVzIgorbXNnc3RyICJkcGtnLXNjYW5wYWNrYWdlcyAtIFBhY2thZ2VzIOODleOCoeOCpOODq+OBruS9nOaIkCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2FucGFja2FnZXMuMToyNgorIywgZnV6enkKK21zZ2lkICIiCisiQjxkcGtnLXNjYW5wYWNrYWdlcz4gW0k8b3B0aW9uPi4uLl0gSTxiaW5hcnktZGlyPiBbSTxvdmVycmlkZS1maWxlPiBbSTxwYXRoLSIKKyJwcmVmaXg+XV0gQjxFPGd0Pj4gSTxQYWNrYWdlcz4iCittc2dzdHIgIiIKKyJCPGRwa2ctc2NhbnBhY2thZ2VzPiBbQjwtdT5dIFtCPC1hPiBJPEU8bHQ+YXJjaEU8Z3Q+PiBdIFtCPC1tPl0gSTxiaW5hcnlkaXI+ICIKKyJJPG92ZXJyaWRlZmlsZT4gW0k8cGF0aHByZWZpeD5dIEI8RTxndD4+IEk8UGFja2FnZXM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjM5Cittc2dpZCAiIgorIkI8ZHBrZy1zY2FucGFja2FnZXM+IHNvcnRzIHRocm91Z2ggYSB0cmVlIG9mIERlYmlhbiBiaW5hcnkgcGFja2FnZXMgYW5kICIKKyJjcmVhdGVzIGEgUGFja2FnZXMgZmlsZSwgdXNlZCBieSBCPGFwdD4oOCksIEI8ZHNlbGVjdD4oMSksIGV0YywgdG8gdGVsbCB0aGUgIgorInVzZXIgd2hhdCBwYWNrYWdlcyBhcmUgYXZhaWxhYmxlIGZvciBpbnN0YWxsYXRpb24uIFRoZXNlIFBhY2thZ2VzIGZpbGVzIGFyZSAiCisidGhlIHNhbWUgYXMgdGhvc2UgZm91bmQgb24gRGViaWFuIGFyY2hpdmUgc2l0ZXMgYW5kIENELVJPTXMuIFlvdSBtaWdodCB1c2UgIgorIkI8ZHBrZy1zY2FucGFja2FnZXM+IHlvdXJzZWxmIGlmIG1ha2luZyBhIGRpcmVjdG9yeSBvZiBsb2NhbCBwYWNrYWdlcyB0byAiCisiaW5zdGFsbCBvbiBhIGNsdXN0ZXIgb2YgbWFjaGluZXMuIgorbXNnc3RyICIiCisiQjxkcGtnLXNjYW5wYWNrYWdlcz4g44GvIERlYmlhbiDjg5DjgqTjg4rjg6rjg5Hjg4PjgrHjg7zjgrjjga7jg4Tjg6rjg7zjgpLopovjgaYgUGFja2FnZXMg44OV44KhIgorIuOCpOODq+OCkueUn+aIkOOBmeOCi+OAglBhY2thZ2VzIOODleOCoeOCpOODq+OBryBCPGFwdD4oOCkg44KEIEI8ZHNlbGVjdD4oMSkg44Gq44Gp44Gr44CB44Gp44GuIgorIuODkeODg+OCseODvOOCuOOBjOOCpOODs+OCueODiOODvOODq+OBp+OBjeOCi+OBi+OCkuODpuODvOOCtuOBq+efpeOCieOBm+OCi+OBn+OCgeOBq+WIqeeUqOOBl+OBpuOBhOOCi+OAguOBk+OCjOOCiSIKKyLjga4gUGFja2FnZXMg44OV44Kh44Kk44Or44GvIERlYmlhbiDjgqLjg7zjgqvjgqTjg5bjgrXjgqTjg4jjgoQgQ0QtUk9NIOOBquOBqeOBp+S9v+OCj+OCjOOBpuOBhOOCi+OCgiIKKyLjga7jgajlkIzjgZjjgoLjga7jgafjgYLjgovjgILjgoLjgZfjgIHjgZ/jgY/jgZXjgpPjga7jg57jgrfjg7PjgavjgqTjg7Pjgrnjg4jjg7zjg6vjgZfjgZ/jgYTjg63jg7zjgqvjg6vjgarjg5Hjg4MiCisi44Kx44O844K444Gu44OH44Kj44Os44Kv44OI44Oq44KS5L2c44KL44Gq44KJ44CB6Ieq5YiG44GnIEI8ZHBrZy1zY2FucGFja2FnZXM+IOOCkuS9v+OBhuOBk+OBqOOBjOOBp+OBjSIKKyLjgovjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6NTEKKyMsIGZ1enp5Cittc2dpZCAiIgorIkI8Tm90ZTo+IElmIHlvdSB3YW50IHRvIGFjY2VzcyB0aGUgZ2VuZXJhdGVkIFBhY2thZ2VzIGZpbGUgd2l0aCBCPGFwdD4geW91ICIKKyJ3aWxsIHByb2JhYmx5IG5lZWQgdG8gY29tcHJlc3MgdGhlIGZpbGUgd2l0aCBCPGJ6aXAyPigxKSAgKGdlbmVyYXRpbmcgYSAiCisiUGFja2FnZXMuYnoyIGZpbGUpIG9yIEI8Z3ppcD4oMSkgIChnZW5lcmF0aW5nIGEgUGFja2FnZXMuZ3ogZmlsZSkuIGFwdCAiCisiaWdub3JlcyB1bmNvbXByZXNzZWQgUGFja2FnZXMgZmlsZXMgZXhjZXB0IG9uIGxvY2FsIGFjY2VzcyAoaS5lLiAgQjxmaWxlOi8vPiAiCisic291cmNlcykuIgorbXNnc3RyICIiCisiQjzms6jmhI86PiBCPGFwdD4g44Gn5L2/44GG44Gu44Gn44GC44KM44Gw44CB55Sf5oiQ44GX44GfIFBhY2thZ2VzIOODleOCoeOCpOODq+OCkiBCPGd6aXA+KDEpIOOBpyIKKyLlnKfnuK7jgZnjgosoUGFja2FnZXMuZ3og44KS55Sf5oiQ44GZ44KLKeW/heimgeOBjOOBguOCi+OBoOOCjeOBhuOAgmFwdCDjga/jg63jg7zjgqvjg6vjgqLjgq/jgrvjgrko44Gk44G+IgorIuOCiiBCPGZpbGU6Ly8+IOOCveODvOOCuSnku6XlpJbjgafjga7pnZ7lnKfnuK7jga4gUGFja2FnZXMg44OV44Kh44Kk44Or44KS54Sh6KaW44GZ44KL44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjU4Cittc2dpZCAiIgorIkk8YmluYXJ5ZGlyPiBpcyB0aGUgbmFtZSBvZiB0aGUgdHJlZSBvZiB0aGUgYmluYXJ5IHBhY2thZ2VzIHRvIHByb2Nlc3MgKGZvciAiCisiZXhhbXBsZSwgQjxjb250cmliL2JpbmFyeS1pMzg2PikuICBJdCBpcyBiZXN0IHRvIG1ha2UgdGhpcyByZWxhdGl2ZSB0byB0aGUgIgorInJvb3Qgb2YgdGhlIERlYmlhbiBhcmNoaXZlLCBiZWNhdXNlIGV2ZXJ5IEZpbGVuYW1lIGZpZWxkIGluIHRoZSBuZXcgUGFja2FnZXMgIgorImZpbGUgd2lsbCBzdGFydCB3aXRoIHRoaXMgc3RyaW5nLiIKK21zZ3N0ciAiIgorIkk8YmluYXJ5ZGlyPiDjga/lh6bnkIbjgZnjgovjg5DjgqTjg4rjg6rjg5Hjg4PjgrHjg7zjgrjjga7jg4Tjg6rjg7zjga7lkI3liY3jgafjgYLjgoso5L6L44GI44GwICIKKyJCPGNvbnRyaWIvYmluYXJ5LWkzODY+IOOBquOBqSnjgIJEZWJpYW4g44Ki44O844Kr44Kk44OW44Gu44Or44O844OI44GL44KJ44Gu55u45a++44Gr44GX44Gm44GK44GP44GuIgorIuOBjOacgOOCguOBhOOBhOaWueazleOBp+OBguOCi+OAguOBquOBnOOBquOCiSBQYWNrYWdlcyDjg5XjgqHjgqTjg6vjgavlkKvjgb7jgozjgabjgYTjgovlkITjgIXjga4gIgorIkZpbGVuYW1lIOODleOCo+ODvOODq+ODieOBr+OBk+OBruaWh+Wtl+WIl+OBp+Wni+OBvuOCi+OBi+OCieOBp+OBguOCi+OAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2FucGFja2FnZXMuMTo2MworIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiSTxvdmVycmlkZWZpbGU+IGlzIHRoZSBuYW1lIG9mIGEgZmlsZSB0byByZWFkIHdoaWNoIGNvbnRhaW5zIGluZm9ybWF0aW9uICIKKyN8ICJhYm91dCBob3cgdGhlIHBhY2thZ2UgZml0cyBpbnRvIHRoZSBkaXN0cmlidXRpb247IHNlZSBiZWxvdy4iCittc2dpZCAiIgorIkk8b3ZlcnJpZGVmaWxlPiBpcyB0aGUgbmFtZSBvZiBhIGZpbGUgdG8gcmVhZCB3aGljaCBjb250YWlucyBpbmZvcm1hdGlvbiAiCisiYWJvdXQgaG93IHRoZSBwYWNrYWdlIGZpdHMgaW50byB0aGUgZGlzdHJpYnV0aW9uIChpdCBjYW4gYmUgYSBjb21wcmVzc2VkICIKKyJmaWxlKTsgc2VlIEI8ZGViLW92ZXJyaWRlPig1KS4iCittc2dzdHIgIiIKKyJJPG92ZXJyaWRlZmlsZT4g44Gv44OR44OD44Kx44O844K444GM44OH44Kj44K544OI44Oq44OT44Ol44O844K344On44Oz44Gr5ZCI44GG44KI44GG44Gr44GZ44KL44Gf44KB44Gu5oOFIgorIuWgseOCkuWQq+OCk+OBp+OBhOOCi+ODleOCoeOCpOODq+OBruWQjeWJjeOBp+OBguOCi+OAguS7peS4i+OCkuWPgueFp+OBruOBk+OBqOOAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2FucGFja2FnZXMuMTo2NgorbXNnaWQgIiIKKyJJPHBhdGhwcmVmaXg+IGlzIGFuIG9wdGlvbmFsIHN0cmluZyB0byBiZSBwcmVwZW5kZWQgdG8gdGhlIEZpbGVuYW1lIGZpZWxkcy4iCittc2dzdHIgIiIKKyJJPHBhdGhwcmVmaXg+IOOBryBGaWxlbmFtZSDjg5XjgqPjg7zjg6vjg4njgafliY3jgavov73liqDjgafjgY3jgovjgqrjg5fjgrfjg6fjg7Pjga7mloflrZfliJfjgafjgYIiCisi44KL44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjcwCisjLCBmdXp6eQorbXNnaWQgIiIKKyJJZiBtb3JlIHRoYW4gb25lIHZlcnNpb24gb2YgYSBwYWNrYWdlIGlzIGZvdW5kIG9ubHkgdGhlIG5ld2VzdCBvbmUgaXMgIgorImluY2x1ZGVkIGluIHRoZSBvdXRwdXQuIElmIHRoZXkgaGF2ZSB0aGUgc2FtZSB2ZXJzaW9uIGFuZCBvbmx5IGRpZmZlciBpbiAiCisiYXJjaGl0ZWN0dXJlIG9ubHkgdGhlIGZpcnN0IG9uZSBmb3VuZCBpcyB1c2VkLiIKK21zZ3N0ciAiIgorIjIg44Gk5Lul5LiK44Gu44OQ44O844K444On44Oz44Gu44OR44OD44Kx44O844K444GM44GC44KM44Gw44CB5pyA5paw44GuIDEg44Gk44Gg44GR44GM5Ye65Yqb44Gr5ZCr44G+44KM44KL44CC5ZCMIgorIuS4gOOBruODkOODvOOCuOODp+ODs+OBp+OCouODvOOCreODhuOCr+ODgeODo+OBoOOBkeOBjOeVsOOBquOCi+WgtOWQiOOBr+OAgeacgOWIneOBriAxIOOBpOOBoOOBkeOBjOS9v+eUqOOBleOCjCIKKyLjgovjgILjgZPjga7li5XjgY3jga8gQjwtbT4g44K544Kk44OD44OB44Gn5aSJ5pu044Gn44GN44KL44CC44GT44Gu44K544Kk44OD44OB44GM5oyH5a6a44GV44KM44Gf5aC05ZCI44Gv44CB44G/IgorIuOBpOOBi+OBo+OBn+ODkeODg+OCseODvOOCuOOBmeOBueOBpuOBjOWHuuWKm+OBq+WQq+OBvuOCjOOCi+OAgiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6NzIKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtdD4sIEI8LS10eXBlPiBJPHR5cGU+IgorbXNnc3RyICJCPC10PnxCPC0tdGVzdD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6NzUKKyMsIGZ1enp5Cittc2dpZCAiU2NhbiBmb3IgKi5JPHR5cGU+IHBhY2thZ2VzLCBpbnN0ZWFkIG9mICouZGViLiIKK21zZ3N0ciAiQjwtdT4g44KS5oyH5a6a44GX44Gf5aC05ZCI44Gv44CBKi5kZWIg44Gu5Luj44KP44KK44GrICoudWRlYiDjgpLjgrnjgq3jg6Pjg7PjgZnjgovjgIIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjc1CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LXU+LCBCPC0tdWRlYj4iCittc2dzdHIgIkI8LS1zaG93PiwgQjwtVz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6NzgKK21zZ2lkICJCPE9ic29sZXRlPiBhbGlhcyBmb3IgQjwtdHVkZWI+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1zY2FucGFja2FnZXMuMTo3OCBkcGtnLXNjYW5zb3VyY2VzLjE6NDkKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtZT4sIEI8LS1leHRyYS1vdmVycmlkZT4gSTxmaWxlPiIKK21zZ3N0ciAiQjwtcD58QjwtLXBpZGZpbGU+IEk8cGlkLWZpbGU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjg0IGRwa2ctc2NhbnNvdXJjZXMuMTo1NAorbXNnaWQgIiIKKyJTY2FuIEk8ZmlsZT4gdG8gZmluZCBzdXBwbGVtZW50YXJ5IG92ZXJyaWRlcyAodGhlIGZpbGUgY2FuIGJlIGNvbXByZXNzZWQpLiAiCisiU2VlIEI8ZGViLWV4dHJhLW92ZXJyaWRlPig1KSAgZm9yIG1vcmUgaW5mb3JtYXRpb24gb24gaXRzIGZvcm1hdC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6ODQKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtYT4sIEI8LS1hcmNoPiBJPGFyY2g+IgorbXNnc3RyICJCPC1kPnxCPC0tY2hkaXI+IEk8cGF0aD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6ODgKK21zZ2lkICIiCisiVXNlIGEgcGF0dGVybiBjb25zaXN0aW5nIG9mIEk8Kl9hbGwuZGViPiBhbmQgSTwqX2FyY2guZGViPiBpbnN0ZWFkIG9mICIKKyJzY2FubmluZyBmb3IgYWxsIGRlYnMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjg4CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LW0+LCBCPC0tbXVsdGl2ZXJzaW9uPiIKK21zZ3N0ciAiQjwtVj58QjwtLXZlcnNpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjkxCittc2dpZCAiSW5jbHVkZSBhbGwgZm91bmQgcGFja2FnZXMgaW4gdGhlIG91dHB1dC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6OTEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtTT4sIEI8LS1tZWRpdW0+IEk8aWQtc3RyaW5nPiIKK21zZ3N0ciAiQjwtcD58QjwtLXBpZGZpbGU+IEk8cGlkLWZpbGU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjk2Cittc2dpZCAiIgorIkFkZCBhbiBYLU1lZGl1bSBmaWVsZCBjb250YWluaW5nIHRoZSB2YWx1ZSBJPGlkLXN0cmluZz4uIFRoaXMgZmllbGQgaXMgIgorInJlcXVpcmVkIGlmIHlvdSB3YW50IHRvIGdlbmVyYXRlIEI8UGFja2FnZXMuY2Q+IGZpbGVzIGZvciB1c2UgYnkgdGhlIG11bHRpY2QgIgorImFjY2VzcyBtZXRob2Qgb2YgZHNlbGVjdC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6MTAzIHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0NDgKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiRElBR05PU1RJQ1MiCittc2dzdHIgIiIKKyIjLSMtIy0jLSMgIGphLnBvIChkcGtnIG1hbiBwYWdlcykgICMtIy0jLSMtI1xuIgorIuiouuaWrVxuIgorIiMtIy0jLSMtIyAgamEucG8gKGRwa2cgbWFuIHBhZ2VzKSAgIy0jLSMtIy0jXG4iCisi6Ki65pat44Oh44OD44K744O844K4IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjEwOQorbXNnaWQgIiIKKyJCPGRwa2ctc2NhbnBhY2thZ2VzPiBvdXRwdXRzIHRoZSB1c3VhbCBzZWxmLWV4cGxhbmF0b3J5IGVycm9ycy4gSXQgYWxzbyAiCisid2FybnMgYWJvdXQgcGFja2FnZXMgdGhhdCBhcmUgaW4gdGhlIHdyb25nIHN1YmRpcmVjdG9yeSwgYXJlIGR1cGxpY2F0ZWQsICIKKyJoYXZlIGEgRmlsZW5hbWUgZmllbGQgaW4gdGhlaXIgY29udHJvbCBmaWxlLCBhcmUgbWlzc2luZyBmcm9tIHRoZSBvdmVycmlkZSAiCisiZmlsZSwgb3IgaGF2ZSBtYWludGFpbmVyIHN1YnN0aXR1dGlvbnMgd2hpY2ggZG8gbm90IHRha2UgZWZmZWN0LiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1zY2FucGFja2FnZXM+IOOBr+mAmuW4uOOBruiHquW3seiqrOaYjueahOOBquOCqOODqeODvOOCkuWHuuWKm+OBmeOCi+OAguODkeODg+OCseODvOOCuOOBjOmWk+mBleOBoyIKKyLjgZ/jg4fjgqPjg6zjgq/jg4jjg6rjgavjgYLjgovjgIHopIfmlbDjgYLjgovjgIFjb250cm9sIOODleOCoeOCpOODq+OBqyBGaWxlbmFtZSDjg5XjgqPjg7zjg6vjg4njgYzjgYIiCisi44KL44CBb3ZlcnJpZGUg44OV44Kh44Kk44Or44Gr44Gq44GE44CB5a6f6KGM44GV44KM44Gq44GL44Gj44Gf44Oh44Oz44OG44OK44Gu572u5o+b44GM44GC44KL44Gq44Gp44Go44GE44Gj44GfIgorIuitpuWRiuOCguOBmeOCi+OAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2FucGFja2FnZXMuMToxMTUKKyMsIGZ1enp5Cittc2dpZCAiIgorIkI8ZHBrZz4oMSksIEI8ZHNlbGVjdD4oMSksIEI8ZGViLW92ZXJyaWRlPig1KSwgQjxkZWItZXh0cmEtb3ZlcnJpZGU+KDUpLCAiCisiQjxkcGtnLXNjYW5zb3VyY2VzPigxKS4iCittc2dzdHIgIkI8ZHBrZz4oMSksIEI8ZHNlbGVjdD4oMSksIEI8ZHBrZy1zY2Fuc291cmNlcz4oMSkuIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1zY2Fuc291cmNlcy4xOjEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiZHBrZy1zY2Fuc291cmNlcyIKK21zZ3N0ciAiZHBrZy1zY2FucGFja2FnZXMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMTo0CisjLCBmdXp6eQorbXNnaWQgImRwa2ctc2NhbnNvdXJjZXMgLSBjcmVhdGUgU291cmNlcyBpbmRleCBmaWxlcyIKK21zZ3N0ciAiZHBrZy1zY2FucGFja2FnZXMgLSBQYWNrYWdlcyDjg5XjgqHjgqTjg6vjga7kvZzmiJAiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMToxMgorIywgZnV6enkKK21zZ2lkICIiCisiQjxkcGtnLXNjYW5zb3VyY2VzPiBbSTxvcHRpb24+Li4uXSBJPGJpbmFyeS1kaXI+IFtJPG92ZXJyaWRlLWZpbGU+IFtJPHBhdGgtIgorInByZWZpeD5dXSBCPEU8Z3Q+PiBJPFNvdXJjZXM+IgorbXNnc3RyICIiCisiQjxkcGtnLXNjYW5wYWNrYWdlcz4gW0I8LXU+XSBbQjwtYT4gSTxFPGx0PmFyY2hFPGd0Pj4gXSBbQjwtbT5dIEk8YmluYXJ5ZGlyPiAiCisiSTxvdmVycmlkZWZpbGU+IFtJPHBhdGhwcmVmaXg+XSBCPEU8Z3Q+PiBJPFBhY2thZ2VzPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2Fuc291cmNlcy4xOjE3Cittc2dpZCAiIgorIkI8ZHBrZy1zY2Fuc291cmNlcz4gc2NhbnMgdGhlIGdpdmVuIEk8YmluYXJ5LWRpcj4gZm9yIEk8LmRzYz4gZmlsZXMuICBUaGVzZSAiCisiYXJlIHVzZWQgdG8gY3JlYXRlIGEgRGViaWFuIHNvdXJjZSBpbmRleCwgd2hpY2ggaXMgb3V0cHV0IHRvIHN0ZG91dC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2Fuc291cmNlcy4xOjI4Cittc2dpZCAiIgorIlRoZSBJPG92ZXJyaWRlLWZpbGU+LCBpZiBnaXZlbiwgaXMgdXNlZCB0byBzZXQgcHJpb3JpdGllcyBpbiB0aGUgcmVzdWx0aW5nICIKKyJpbmRleCByZWNvcmRzIGFuZCB0byBvdmVycmlkZSB0aGUgbWFpbnRhaW5lciBmaWVsZCBnaXZlbiBpbiB0aGUgSTwuZHNjPiAiCisiZmlsZXMuIFRoZSBmaWxlIGNhbiBiZSBjb21wcmVzc2VkLiBTZWUgQjxkZWItb3ZlcnJpZGU+KDUpICBmb3IgdGhlIGZvcm1hdCBvZiAiCisidGhpcyBmaWxlLiBcXHMtMU5COlxcczAgU2luY2UgdGhlIG92ZXJyaWRlIGZpbGUgaXMgaW5kZXhlZCBieSBiaW5hcnksIG5vdCAiCisic291cmNlLCBwYWNrYWdlcywgdGhlcmUncyBhIGJpdCBvZiBhIHByb2JsZW0gaGVyZS4gVGhlIGN1cnJlbnQgIgorImltcGxlbWVudGF0aW9uIHVzZXMgdGhlIGhpZ2hlc3QgcHJpb3JpdHkgb2YgYWxsIHRoZSBiaW5hcnkgcGFja2FnZXMgcHJvZHVjZWQgIgorImJ5IGEgSTwuZHNjPiBmaWxlIGZvciB0aGUgcHJpb3JpdHkgb2YgdGhlIHNvdXJjZSBwYWNrYWdlLCBhbmQgdGhlIG92ZXJyaWRlICIKKyJlbnRyeSBmb3IgdGhlIGZpcnN0IGJpbmFyeSBwYWNrYWdlIGxpc3RlZCBpbiB0aGUgSTwuZHNjPiBmaWxlIHRvIG1vZGlmeSAiCisibWFpbnRhaW5lciBpbmZvcm1hdGlvbi4gVGhpcyBtaWdodCBjaGFuZ2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMTozMgorbXNnaWQgIiIKKyJUaGUgSTxwYXRoLXByZWZpeD4sIGlmIGdpdmVuLCBpcyBwcmVwZW5kZWQgdG8gdGhlIGRpcmVjdG9yeSBmaWVsZCBpbiB0aGUgIgorImdlbmVyYXRlZCBzb3VyY2UgaW5kZXguIFlvdSBnZW5lcmFsbHkgdXNlIHRoaXMgdG8gbWFrZSB0aGUgZGlyZWN0b3J5IGZpZWxkcyAiCisiY29udGFpbiB0aGUgcGF0aCBmcm9tIHRoZSB0b3Agb2YgdGhlIERlYmlhbiBhcmNoaXZlIGhpZXJhcmNoeS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2Fuc291cmNlcy4xOjQzCisjLCBmdXp6eQorbXNnaWQgIiIKKyJCPE5vdGU6PiBJZiB5b3Ugd2FudCB0byBhY2Nlc3MgdGhlIGdlbmVyYXRlZCBTb3VyY2VzIGZpbGUgd2l0aCBCPGFwdD4oOCkgICIKKyJ5b3Ugd2lsbCBwcm9iYWJseSBuZWVkIHRvIGNvbXByZXNzIHRoZSBmaWxlIHdpdGggQjxnemlwPigxKSAgKGdlbmVyYXRpbmcgYSAiCisiU291cmNlcy5neiBmaWxlKS4gYXB0IGlnbm9yZXMgdW5jb21wcmVzc2VkIFNvdXJjZXMgZmlsZXMgZXhjZXB0IG9uIGxvY2FsICIKKyJhY2Nlc3MgKGkuZS4gIEI8ZmlsZTovLz4gc291cmNlcykuIgorbXNnc3RyICIiCisiQjzms6jmhI86PiBCPGFwdD4g44Gn5L2/44GG44Gu44Gn44GC44KM44Gw44CB55Sf5oiQ44GX44GfIFBhY2thZ2VzIOODleOCoeOCpOODq+OCkiBCPGd6aXA+KDEpIOOBpyIKKyLlnKfnuK7jgZnjgosoUGFja2FnZXMuZ3og44KS55Sf5oiQ44GZ44KLKeW/heimgeOBjOOBguOCi+OBoOOCjeOBhuOAgmFwdCDjga/jg63jg7zjgqvjg6vjgqLjgq/jgrvjgrko44Gk44G+IgorIuOCiiBCPGZpbGU6Ly8+IOOCveODvOOCuSnku6XlpJbjgafjga7pnZ7lnKfnuK7jga4gUGFja2FnZXMg44OV44Kh44Kk44Or44KS54Sh6KaW44GZ44KL44CCIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1zY2Fuc291cmNlcy4xOjQ1CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LW4+LCBCPC0tbm8tc29ydD4iCittc2dzdHIgIkI8LW8+fEI8LS1va25vZG8+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6NDgKK21zZ2lkICIiCisiRG9uJ3Qgc29ydCB0aGUgaW5kZXggcmVjb3Jkcy4gTm9ybWFsbHkgdGhleSBhcmUgc29ydGVkIGJ5IHNvdXJjZSBwYWNrYWdlICIKKyJuYW1lLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1zY2Fuc291cmNlcy4xOjU0CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LXM+LCBCPC0tc291cmNlLW92ZXJyaWRlPiBJPGZpbGU+IgorbXNnc3RyICJCPC1wPnxCPC0tcGlkZmlsZT4gSTxwaWQtZmlsZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMTo1OAorbXNnaWQgIiIKKyJVc2UgSTxmaWxlPiBhcyB0aGUgc291cmNlIG92ZXJyaWRlIGZpbGUgKHRoZSBmaWxlIGNhbiBiZSBjb21wcmVzc2VkKS4gIFRoZSAiCisiZGVmYXVsdCBpcyB0aGUgbmFtZSBvZiB0aGUgb3ZlcnJpZGUgZmlsZSB5b3Ugc3BlY2lmaWVkIHdpdGggSTwuc3JjPiBhcHBlbmRlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2Fuc291cmNlcy4xOjY0Cittc2dpZCAiIgorIlRoZSBzb3VyY2Ugb3ZlcnJpZGUgZmlsZSBpcyBpbiBhIGRpZmZlcmVudCBmb3JtYXQgZnJvbSB0aGUgYmluYXJ5IG92ZXJyaWRlICIKKyJmaWxlLiBJdCBjb250YWlucyBvbmx5IHR3byB3aGl0ZXNwYWNlIHNlcGFyYXRlZCBmaWVsZHMsIHRoZSBmaXJzdCBpcyB0aGUgIgorInNvdXJjZSBwYWNrYWdlIG5hbWUgYW5kIHRoZSBzZWNvbmQgaXMgdGhlIHNlY3Rpb24uIEJsYW5rIGxpbmVzIGFuZCBjb21tZW50ICIKKyJsaW5lcyBhcmUgaWdub3JlZCBpbiB0aGUgbm9ybWFsIG1hbm5lci4gSWYgYSBwYWNrYWdlIGFwcGVhcnMgaW4gYm90aCBmaWxlcyAiCisidGhlIHNvdXJjZSBvdmVycmlkZSB0YWtlcyBwcmVjZWRlbmNlIGZvciBzZXR0aW5nIHRoZSBzZWN0aW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1zY2Fuc291cmNlcy4xOjY0CisjLCBuby13cmFwCittc2dpZCAiQjwtLWRlYnVnPiIKK21zZ3N0ciAiQjwtLWRlYnVnPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2Fuc291cmNlcy4xOjY2Cittc2dpZCAiVHVybiBkZWJ1Z2dpbmcgb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMTo3NQorIywgZnV6enkKK21zZ2lkICJCPGRlYi1vdmVycmlkZT4oNSksIEI8ZGViLWV4dHJhLW92ZXJyaWRlPig1KSwgQjxkcGtnLXNjYW5wYWNrYWdlcz4oMSkuIgorbXNnc3RyICJkcGtnLXNjYW5wYWNrYWdlcyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2Fuc291cmNlcy4xOjc3Cittc2dpZCAiUm9kZXJpY2sgU2NoZXJ0bGVyIEU8bHQ+cm9kZXJpY2tAYXJnb24ub3JnRTxndD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJkcGtnLXNobGliZGVwcyIKK21zZ3N0ciAiZHBrZy1jaGVja2J1aWxkZGVwcyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTo0Cittc2dpZCAiZHBrZy1zaGxpYmRlcHMgLSBnZW5lcmF0ZSBzaGFyZWQgbGlicmFyeSBzdWJzdHZhciBkZXBlbmRlbmNpZXMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTo4CisjLCBmdXp6eQorbXNnaWQgIkI8ZHBrZy1zaGxpYmRlcHM+IFtJPG9wdGlvbj4uLi5dIFtCPC1lPl1JPGV4ZWN1dGFibGU+IFtJPG9wdGlvbj4uLi5dIgorbXNnc3RyICJCPGRwa2c+IFtJPG9wdGlvbnM+XSBJPGFjdGlvbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjIKK21zZ2lkICIiCisiQjxkcGtnLXNobGliZGVwcz4gY2FsY3VsYXRlcyBzaGFyZWQgbGlicmFyeSBkZXBlbmRlbmNpZXMgZm9yIGV4ZWN1dGFibGVzICIKKyJuYW1lZCBpbiBpdHMgYXJndW1lbnRzLiBUaGUgZGVwZW5kZW5jaWVzIGFyZSBhZGRlZCB0byB0aGUgc3Vic3RpdHV0aW9uICIKKyJ2YXJpYWJsZXMgZmlsZSBCPGRlYmlhbi9zdWJzdHZhcnM+IGFzIHZhcmlhYmxlIG5hbWVzIEI8c2hsaWJzOiIKKyI+STxkZXBlbmRlbmN5ZmllbGQ+IHdoZXJlIEk8ZGVwZW5kZW5jeWZpZWxkPiBpcyBhIGRlcGVuZGVuY3kgZmllbGQgbmFtZS4gQW55ICIKKyJvdGhlciB2YXJpYWJsZXMgc3RhcnRpbmcgd2l0aCBCPHNobGliczo+IGFyZSByZW1vdmVkIGZyb20gdGhlIGZpbGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6NDUKK21zZ2lkICIiCisiQjxkcGtnLXNobGliZGVwcz4gaGFzIHR3byBwb3NzaWJsZSBzb3VyY2VzIG9mIGluZm9ybWF0aW9uIHRvIGdlbmVyYXRlICIKKyJkZXBlbmRlbmN5IGluZm9ybWF0aW9uLiBFaXRoZXIgSTxzeW1ib2xzPiBmaWxlcyBvciBJPHNobGlicz4gZmlsZXMuIEZvciBlYWNoICIKKyJiaW5hcnkgdGhhdCBCPGRwa2ctc2hsaWJkZXBzPiBhbmFseXplcywgaXQgZmluZHMgb3V0IHRoZSBsaXN0IG9mIGxpYnJhcmllcyAiCisidGhhdCBpdCdzIGxpbmtlZCB3aXRoLiAgVGhlbiwgZm9yIGVhY2ggbGlicmFyeSwgaXQgbG9va3MgdXAgZWl0aGVyIHRoZSAiCisiSTxzeW1ib2xzPiBmaWxlLCBvciB0aGUgSTxzaGxpYnM+IGZpbGUgKGlmIHRoZSBmb3JtZXIgZG9lc24ndCBleGlzdCBvciBpZiAiCisiZGViaWFuL3NobGlicy5sb2NhbCBjb250YWlucyB0aGUgcmVsZXZhbnQgZGVwZW5kZW5jeSkuIEJvdGggZmlsZXMgYXJlICIKKyJzdXBwb3NlZCB0byBiZSBwcm92aWRlZCBieSB0aGUgbGlicmFyeSBwYWNrYWdlIGFuZCBzaG91bGQgdGh1cyBiZSBhdmFpbGFibGUgIgorImFzIC92YXIvbGliL2Rwa2cvaW5mby9JPHBhY2thZ2U+Lkk8c3ltYm9scz4gb3IgL3Zhci9saWIvZHBrZy9pbmZvL0k8cGFja2FnZT4uIgorIkk8c2hsaWJzPi4gVGhlIHBhY2thZ2UgbmFtZSBpcyBpZGVudGlmaWVkIGluIHR3byBzdGVwczogZmluZCB0aGUgbGlicmFyeSAiCisiZmlsZSBvbiB0aGUgc3lzdGVtIChsb29raW5nIGluIHRoZSBzYW1lIGRpcmVjdG9yaWVzIHRoYXQgQjxsZC5zbz4gd291bGQgIgorInVzZSksIHRoZW4gdXNlIEI8ZHBrZyAtUyA+STxsaWJyYXJ5LWZpbGU+IHRvIGxvb2t1cCB0aGUgcGFja2FnZSBwcm92aWRpbmcgIgorInRoZSBsaWJyYXJ5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zaGxpYmRlcHMuMTo0NQorIywgbm8td3JhcAorbXNnaWQgIlN5bWJvbHMgZmlsZXMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTo1MAorbXNnaWQgIiIKKyJTeW1ib2xzIGZpbGVzIGNvbnRhaW4gZmluZXItZ3JhaW5lZCBkZXBlbmRlbmN5IGluZm9ybWF0aW9uIGJ5IHByb3ZpZGluZyB0aGUgIgorIm1pbmltdW0gZGVwZW5kZW5jeSBmb3IgZWFjaCBzeW1ib2wgdGhhdCB0aGUgbGlicmFyeSBleHBvcnRzLiBUaGUgc2NyaXB0ICIKKyJ0cmllcyB0byBmaW5kIGEgc3ltYm9scyBmaWxlIGFzc29jaWF0ZWQgdG8gYSBsaWJyYXJ5IHBhY2thZ2UgaW4gdGhlICIKKyJmb2xsb3dpbmcgcGxhY2VzIChmaXJzdCBtYXRjaCBpcyB1c2VkKToiCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6NTAKKyMsIG5vLXdyYXAKK21zZ2lkICJkZWJpYW4vKi9ERUJJQU4vc3ltYm9scyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjU4Cittc2dpZCAiIgorIlNoYXJlZCBsaWJyYXJ5IGluZm9ybWF0aW9uIGdlbmVyYXRlZCBieSB0aGUgY3VycmVudCBidWlsZCBwcm9jZXNzIHRoYXQgYWxzbyAiCisiaW52b2tlZCBCPGRwa2ctc2hsaWJkZXBzPi4gIFRoZXkgYXJlIGdlbmVyYXRlZCBieSBCPGRwa2ctZ2Vuc3ltYm9scz4oMSkuICAiCisiVGhleSBhcmUgb25seSB1c2VkIGlmIHRoZSBsaWJyYXJ5IGlzIGZvdW5kIGluIGEgcGFja2FnZSdzIGJ1aWxkIHRyZWUuIFRoZSAiCisic3ltYm9scyBmaWxlIGluIHRoYXQgYnVpbGQgdHJlZSB0YWtlcyBwcmVjZWRlbmNlIG92ZXIgc3ltYm9scyBmaWxlcyBmcm9tICIKKyJvdGhlciBiaW5hcnkgcGFja2FnZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLXNobGliZGVwcy4xOjU4CisjLCBuby13cmFwCittc2dpZCAiL2V0Yy9kcGtnL3N5bWJvbHMvSTxwYWNrYWdlPi5zeW1ib2xzLkk8YXJjaD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6NTkKKyMsIG5vLXdyYXAKK21zZ2lkICIvZXRjL2Rwa2cvc3ltYm9scy9JPHBhY2thZ2U+LnN5bWJvbHMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTo2MworbXNnaWQgIiIKKyJQZXItc3lzdGVtIG92ZXJyaWRpbmcgc2hhcmVkIGxpYnJhcnkgZGVwZW5kZW5jeSBpbmZvcm1hdGlvbi4gIEk8YXJjaD4gaXMgdGhlICIKKyJhcmNoaXRlY3R1cmUgb2YgdGhlIGN1cnJlbnQgc3lzdGVtIChvYnRhaW5lZCBieSBCPGRwa2ctYXJjaGl0ZWN0dXJlIC0iCisicURFQl9IT1NUX0FSQ0g+KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6NjMKKyMsIG5vLXdyYXAKK21zZ2lkICJPdXRwdXQgZnJvbSBcXChscUI8ZHBrZy1xdWVyeSAtLWNvbnRyb2wtcGF0aD4gSTxwYWNrYWdlPiBzeW1ib2xzXFwocnEiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTo2NiBkcGtnLXNobGliZGVwcy4xOjEwMAorbXNnaWQgIiIKKyJQYWNrYWdlLXByb3ZpZGVkIHNoYXJlZCBsaWJyYXJ5IGRlcGVuZGVuY3kgaW5mb3JtYXRpb24uICBVbmxlc3Mgb3ZlcnJpZGRlbiAiCisiYnkgLS1hZG1pbmRpciwgdGhvc2UgZmlsZXMgYXJlIGxvY2F0ZWQgaW4gL3Zhci9saWIvZHBrZy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTo3MworbXNnaWQgIiIKKyJXaGlsZSBzY2FubmluZyB0aGUgc3ltYm9scyB1c2VkIGJ5IGFsbCBiaW5hcmllcywgQjxkcGtnLXNobGliZGVwcz4gcmVtZW1iZXJzICIKKyJ0aGUgKGJpZ2dlc3QpIG1pbmltYWwgdmVyc2lvbiBuZWVkZWQgZm9yIGVhY2ggbGlicmFyeS4gQXQgdGhlIGVuZCBvZiB0aGUgIgorInByb2Nlc3MsIGl0IGlzIGFibGUgdG8gd3JpdGUgb3V0IHRoZSBtaW5pbWFsIGRlcGVuZGVuY3kgZm9yIGV2ZXJ5IGxpYnJhcnkgIgorInVzZWQgKHByb3ZpZGVkIHRoYXQgdGhlIGluZm9ybWF0aW9uIG9mIHRoZSBJPHN5bWJvbHM+IGZpbGVzIGFyZSBhY2N1cmF0ZSkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6ODAKK21zZ2lkICIiCisiQXMgYSBzYWZlLWd1YXJkIG1lYXN1cmUsIGEgc3ltYm9scyBmaWxlIGNhbiBwcm92aWRlIGEgSTxCdWlsZC1EZXBlbmRzLSIKKyJQYWNrYWdlPiBtZXRhLWluZm9ybWF0aW9uIGZpZWxkIGFuZCBCPGRwa2ctc2hsaWJkZXBzPiB3aWxsIGV4dHJhY3QgdGhlICIKKyJtaW5pbWFsIHZlcnNpb24gcmVxdWlyZWQgYnkgdGhlIGNvcnJlc3BvbmRpbmcgcGFja2FnZSBpbiB0aGUgQnVpbGQtRGVwZW5kcyAiCisiZmllbGQgYW5kIHVzZSB0aGlzIHZlcnNpb24gaWYgaXQncyBoaWdoZXIgdGhhbiB0aGUgbWluaW1hbCB2ZXJzaW9uIGNvbXB1dGVkICIKKyJieSBzY2FubmluZyBzeW1ib2xzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zaGxpYmRlcHMuMTo4MAorIywgbm8td3JhcAorbXNnaWQgIlNobGlicyBmaWxlcyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjg0Cittc2dpZCAiIgorIlNobGlicyBmaWxlcyBhc3NvY2lhdGUgZGlyZWN0bHkgYSBsaWJyYXJ5IHRvIGEgZGVwZW5kZW5jeSAod2l0aG91dCBsb29raW5nICIKKyJhdCB0aGUgc3ltYm9scykuIEl0J3MgdGh1cyBvZnRlbiBzdHJvbmdlciB0aGFuIHJlYWxseSBuZWVkZWQgYnV0IHZlcnkgc2FmZSAiCisiYW5kIGVhc3kgdG8gaGFuZGxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjg3Cittc2dpZCAiIgorIlRoZSBkZXBlbmRlbmNpZXMgZm9yIGEgbGlicmFyeSBhcmUgbG9va2VkIHVwIGluIHNldmVyYWwgcGxhY2VzLiBUaGUgZmlyc3QgIgorImZpbGUgcHJvdmlkaW5nIGluZm9ybWF0aW9uIGZvciB0aGUgbGlicmFyeSBvZiBpbnRlcmVzdCBpcyB1c2VkOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1zaGxpYmRlcHMuMTo4NworIywgbm8td3JhcAorbXNnaWQgImRlYmlhbi9zaGxpYnMubG9jYWwiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTo4OQorbXNnaWQgIlBhY2thZ2UtbG9jYWwgb3ZlcnJpZGluZyBzaGFyZWQgbGlicmFyeSBkZXBlbmRlbmN5IGluZm9ybWF0aW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1zaGxpYmRlcHMuMTo4OQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICIvZXRjL2Rwa2cvc2hsaWJzLm92ZXJyaWRlIgorbXNnc3RyICJJPC92YXIvbGliL2Rwa2cvc3RhdG92ZXJyaWRlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTo5MQorbXNnaWQgIlBlci1zeXN0ZW0gb3ZlcnJpZGluZyBzaGFyZWQgbGlicmFyeSBkZXBlbmRlbmN5IGluZm9ybWF0aW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1zaGxpYmRlcHMuMTo5MQorIywgbm8td3JhcAorbXNnaWQgImRlYmlhbi8qL0RFQklBTi9zaGxpYnMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTo5NworbXNnaWQgIiIKKyJTaGFyZWQgbGlicmFyeSBpbmZvcm1hdGlvbiBnZW5lcmF0ZWQgYnkgdGhlIGN1cnJlbnQgYnVpbGQgcHJvY2VzcyB0aGF0IGFsc28gIgorImludm9rZWQgQjxkcGtnLXNobGliZGVwcz4uICBUaGV5IGFyZSBvbmx5IHVzZWQgaWYgdGhlIGxpYnJhcnkgaXMgZm91bmQgaW4gYSAiCisicGFja2FnZSdzIGJ1aWxkIHRyZWUuIFRoZSBzaGxpYnMgZmlsZSBpbiB0aGF0IGJ1aWxkIHRyZWUgdGFrZXMgcHJlY2VkZW5jZSAiCisib3ZlciBzaGxpYnMgZmlsZXMgZnJvbSBvdGhlciBiaW5hcnkgcGFja2FnZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLXNobGliZGVwcy4xOjk3CisjLCBuby13cmFwCittc2dpZCAiT3V0cHV0IGZyb20gXFwobHFCPGRwa2ctcXVlcnkgLS1jb250cm9sLXBhdGg+IEk8cGFja2FnZT4gc2hsaWJzXFwocnEiCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTAwCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIi9ldGMvZHBrZy9zaGxpYnMuZGVmYXVsdCIKK21zZ3N0ciAiSTwvdmFyL2xpYi9kcGtnL3N0YXRvdmVycmlkZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTAyCittc2dpZCAiUGVyLXN5c3RlbSBkZWZhdWx0IHNoYXJlZCBsaWJyYXJ5IGRlcGVuZGVuY3kgaW5mb3JtYXRpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTA2Cittc2dpZCAiIgorIlRoZSBleHRyYWN0ZWQgZGVwZW5kZW5jaWVzIGFyZSB0aGVuIGRpcmVjdGx5IHVzZWQgKGV4Y2VwdCBpZiB0aGV5IGFyZSAiCisiZmlsdGVyZWQgb3V0IGJlY2F1c2UgdGhleSBoYXZlIGJlZW4gaWRlbnRpZmllZCBhcyBkdXBsaWNhdGUsIG9yIGFzIHdlYWtlciAiCisidGhhbiBhbm90aGVyIGRlcGVuZGVuY3kpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjExMQorbXNnaWQgIiIKKyJCPGRwa2ctc2hsaWJkZXBzPiBpbnRlcnByZXRzIG5vbi1vcHRpb24gYXJndW1lbnRzIGFzIGV4ZWN1dGFibGUgbmFtZXMsIGp1c3QgIgorImFzIGlmIHRoZXknZCBiZWVuIHN1cHBsaWVkIGFzIEI8LWU+STxleGVjdXRhYmxlPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTExCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LWU+STxleGVjdXRhYmxlPiIKK21zZ3N0ciAiQjwteD58QjwtLWV4ZWM+IEk8ZXhlY3V0YWJsZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTE1Cittc2dpZCAiIgorIkluY2x1ZGUgZGVwZW5kZW5jaWVzIGFwcHJvcHJpYXRlIGZvciB0aGUgc2hhcmVkIGxpYnJhcmllcyByZXF1aXJlZCBieSAiCisiSTxleGVjdXRhYmxlPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTE1CisjLCBuby13cmFwCittc2dpZCAiQjwtZD5JPGRlcGVuZGVuY3lmaWVsZD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToxMjEKK21zZ2lkICIiCisiQWRkIGRlcGVuZGVuY2llcyB0byBiZSBhZGRlZCB0byB0aGUgY29udHJvbCBmaWxlIGRlcGVuZGVuY3kgZmllbGQgIgorIkk8ZGVwZW5kZW5jeWZpZWxkPi4gIChUaGUgZGVwZW5kZW5jaWVzIGZvciB0aGlzIGZpZWxkIGFyZSBwbGFjZWQgaW4gdGhlICIKKyJ2YXJpYWJsZSBCPHNobGliczo+STxkZXBlbmRlbmN5ZmllbGQ+LikiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToxMzEKK21zZ2lkICIiCisiVGhlIEI8LWQ+STxkZXBlbmRlbmN5ZmllbGQ+IG9wdGlvbiB0YWtlcyBlZmZlY3QgZm9yIGFsbCBleGVjdXRhYmxlcyBhZnRlciAiCisidGhlIG9wdGlvbiwgdW50aWwgdGhlIG5leHQgQjwtZD5JPGRlcGVuZGVuY3lmaWVsZD4uICBUaGUgZGVmYXVsdCAiCisiSTxkZXBlbmRlbmN5ZmllbGQ+IGlzIEI8RGVwZW5kcz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTM5Cittc2dpZCAiIgorIklmIHRoZSBzYW1lIGRlcGVuZGVuY3kgZW50cnkgKG9yIHNldCBvZiBhbHRlcm5hdGl2ZXMpIGFwcGVhcnMgaW4gbW9yZSB0aGFuICIKKyJvbmUgb2YgdGhlIHJlY29nbmlzZWQgZGVwZW5kZW5jeSBmaWVsZCBuYW1lcyBCPFByZS1EZXBlbmRzPiwgQjxEZXBlbmRzPiwgIgorIkI8UmVjb21tZW5kcz4sIEI8RW5oYW5jZXM+IG9yIEI8U3VnZ2VzdHM+IHRoZW4gQjxkcGtnLXNobGliZGVwcz4gd2lsbCAiCisiYXV0b21hdGljYWxseSByZW1vdmUgdGhlIGRlcGVuZGVuY3kgZnJvbSBhbGwgZmllbGRzIGV4Y2VwdCB0aGUgb25lICIKKyJyZXByZXNlbnRpbmcgdGhlIG1vc3QgaW1wb3J0YW50IGRlcGVuZGVuY2llcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTM5CisjLCBuby13cmFwCittc2dpZCAiQjwtcD5JPHZhcm5hbWVwcmVmaXg+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTUwCittc2dpZCAiIgorIlN0YXJ0IHN1YnN0aXR1dGlvbiB2YXJpYWJsZXMgd2l0aCBJPHZhcm5hbWVwcmVmaXg+Qjw6PiBpbnN0ZWFkIG9mIEI8c2hsaWJzOiIKKyI+LiAgTGlrZXdpc2UsIGFueSBleGlzdGluZyBzdWJzdGl0dXRpb24gdmFyaWFibGVzIHN0YXJ0aW5nIHdpdGggIgorIkk8dmFybmFtZXByZWZpeD5CPDo+IChyYXRoZXIgdGhhbiBCPHNobGliczo+KSAgYXJlIHJlbW92ZWQgZnJvbSB0aGUgdGhlICIKKyJzdWJzdGl0dXRpb24gdmFyaWFibGVzIGZpbGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTU2Cittc2dpZCAiIgorIlByaW50IHN1YnN0aXR1dGlvbiB2YXJpYWJsZSBzZXR0aW5ncyB0byBzdGFuZGFyZCBvdXRwdXQsIHJhdGhlciB0aGFuIGJlaW5nICIKKyJhZGRlZCB0byB0aGUgc3Vic3RpdHV0aW9uIHZhcmlhYmxlcyBmaWxlIChCPGRlYmlhbi9zdWJzdHZhcnM+IGJ5IGRlZmF1bHQpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zaGxpYmRlcHMuMToxNTYKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtdD5JPHR5cGU+IgorbXNnc3RyICJCPC10PnxCPC0tdGVzdD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTYzCittc2dpZCAiIgorIlByZWZlciBzaGFyZWQgbGlicmFyeSBkZXBlbmRlbmN5IGluZm9ybWF0aW9uIHRhZ2dlZCBmb3IgdGhlIGdpdmVuIHBhY2thZ2UgIgorInR5cGUuIElmIG5vIHRhZ2dlZCBpbmZvcm1hdGlvbiBpcyBhdmFpbGFibGUsIGZhbGxzIGJhY2sgdG8gdW50YWdnZWQgIgorImluZm9ybWF0aW9uLiBUaGUgZGVmYXVsdCBwYWNrYWdlIHR5cGUgaXMgXCJkZWJcIi4gU2hhcmVkIGxpYnJhcnkgZGVwZW5kZW5jeSAiCisiaW5mb3JtYXRpb24gaXMgdGFnZ2VkIGZvciBhIGdpdmVuIHR5cGUgYnkgcHJlZml4aW5nIGl0IHdpdGggdGhlIG5hbWUgb2YgdGhlICIKKyJ0eXBlLCBhIGNvbG9uLCBhbmQgd2hpdGVzcGFjZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTYzCisjLCBuby13cmFwCittc2dpZCAiQjwtTD5JPGxvY2Fsc2hsaWJzZmlsZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToxNjkKK21zZ2lkICIiCisiUmVhZCBvdmVycmlkaW5nIHNoYXJlZCBsaWJyYXJ5IGRlcGVuZGVuY3kgaW5mb3JtYXRpb24gZnJvbSAiCisiSTxsb2NhbHNobGlic2ZpbGU+IGluc3RlYWQgb2YgQjxkZWJpYW4vc2hsaWJzLmxvY2FsPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToxNzUKK21zZ2lkICIiCisiV3JpdGUgc3Vic3RpdHV0aW9uIHZhcmlhYmxlcyBpbiBJPHN1YnN0dmFyc2ZpbGU+OyB0aGUgZGVmYXVsdCBpcyBCPGRlYmlhbi8iCisic3Vic3R2YXJzPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTc1CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LXY+IgorbXNnc3RyICJCPC1HPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToxODAKK21zZ2lkICIiCisiRW5hYmxlIHZlcmJvc2UgbW9kZS4gTnVtZXJvdXMgbWVzc2FnZXMgYXJlIGRpc3BsYXllZCB0byBleHBsYWluIHdoYXQgQjxkcGtnLSIKKyJzaGxpYmRlcHM+IGRvZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNobGliZGVwcy4xOjE4MAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC14Pkk8cGFja2FnZT4iCittc2dzdHIgIkI8LS1wYWNrYWdlPkk8IEU8bHQ+cGFja2FnZUU8Z3Q+PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToxODcKK21zZ2lkICIiCisiRXhjbHVkZSB0aGUgcGFja2FnZSBmcm9tIHRoZSBnZW5lcmF0ZWQgZGVwZW5kZW5jaWVzLiBUaGlzIGlzIHVzZWZ1bCB0byBhdm9pZCAiCisic2VsZi1kZXBlbmRlbmNpZXMgZm9yIHBhY2thZ2VzIHdoaWNoIHByb3ZpZGUgRUxGIGJpbmFyaWVzIChleGVjdXRhYmxlcyBvciAiCisibGlicmFyeSBwbHVnaW5zKSB1c2luZyBhIGxpYnJhcnkgY29udGFpbmVkIGluIHRoZSBzYW1lIHBhY2thZ2UuIFRoaXMgb3B0aW9uICIKKyJjYW4gYmUgdXNlZCBtdWx0aXBsZSB0aW1lcyB0byBleGNsdWRlIHNldmVyYWwgcGFja2FnZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNobGliZGVwcy4xOjE4NworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1TPkk8cGtnYnVpbGRkaXI+IgorbXNnc3RyICJCPFstLV0gPkk8ZmlsZW5hbWU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjE5NAorbXNnaWQgIiIKKyJMb29rIGludG8gSTxwa2didWlsZGRpcj4gZmlyc3Qgd2hlbiB0cnlpbmcgdG8gZmluZCBhIGxpYnJhcnkuIFRoaXMgaXMgdXNlZnVsICIKKyJ3aGVuIHRoZSBzb3VyY2UgcGFja2FnZSBidWlsZHMgbXVsdGlwbGUgZmxhdm9ycyBvZiB0aGUgc2FtZSBsaWJyYXJ5IGFuZCB5b3UgIgorIndhbnQgdG8gZW5zdXJlIHRoYXQgeW91IGdldCB0aGUgZGVwZW5kZW5jeSBmcm9tIGEgZ2l2ZW4gYmluYXJ5IHBhY2thZ2UuIFlvdSAiCisiY2FuIHVzZSB0aGlzIG9wdGlvbiBtdWx0aXBsZSB0aW1lczogZGlyZWN0b3JpZXMgd2lsbCBiZSB0cmllZCBpbiB0aGUgc2FtZSAiCisib3JkZXIgYmVmb3JlIGRpcmVjdG9yaWVzIG9mIG90aGVyIGJpbmFyeSBwYWNrYWdlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTk0CisjLCBuby13cmFwCittc2dpZCAiQjwtLWlnbm9yZS1taXNzaW5nLWluZm8+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjAwCittc2dpZCAiIgorIkRvIG5vdCBmYWlsIGlmIGRlcGVuZGVuY3kgaW5mb3JtYXRpb24gY2FuJ3QgYmUgZm91bmQgZm9yIGEgc2hhcmVkIGxpYnJhcnkuICAiCisiVXNhZ2Ugb2YgdGhpcyBvcHRpb24gaXMgZGlzY291cmFnZWQsIGFsbCBsaWJyYXJpZXMgc2hvdWxkIHByb3ZpZGUgZGVwZW5kZW5jeSAiCisiaW5mb3JtYXRpb24gKGVpdGhlciB3aXRoIHNobGlicyBmaWxlcywgb3Igd2l0aCBzeW1ib2xzIGZpbGVzKSAgZXZlbiBpZiB0aGV5ICIKKyJhcmUgbm90IHlldCB1c2VkIGJ5IG90aGVyIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zaGxpYmRlcHMuMToyMDAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0td2FybmluZ3M9Pkk8dmFsdWU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjExCittc2dpZCAiIgorIkk8dmFsdWU+IGlzIGEgYml0IGZpZWxkIGRlZmluaW5nIHRoZSBzZXQgb2Ygd2FybmluZ3MgdGhhdCBjYW4gYmUgZW1pdHRlZCBieSAiCisiQjxkcGtnLXNobGliZGVwcz4uICBCaXQgMCAodmFsdWU9MSkgZW5hYmxlcyB0aGUgd2FybmluZyBcInN5bWJvbCBJPHN5bT4gdXNlZCAiCisiYnkgSTxiaW5hcnk+IGZvdW5kIGluIG5vbmUgb2YgdGhlIGxpYnJhcmllc1wiLCBiaXQgMSAodmFsdWU9MikgZW5hYmxlcyB0aGUgIgorIndhcm5pbmcgXCJkZXBlbmRlbmN5IG9uIEk8bGlicmFyeT4gY291bGQgYmUgYXZvaWRlZFwiIGFuZCBiaXQgMiAodmFsdWU9NCkgICIKKyJlbmFibGVzIHRoZSB3YXJuaW5nIFwiSTxiaW5hcnk+IHNob3VsZG4ndCBiZSBsaW5rZWQgd2l0aCBJPGxpYnJhcnk+XCIuICBUaGUgIgorImRlZmF1bHQgSTx2YWx1ZT4gaXMgMzogdGhlIGZpcnN0IHR3byB3YXJuaW5ncyBhcmUgYWN0aXZlIGJ5IGRlZmF1bHQsIHRoZSAiCisibGFzdCBvbmUgaXMgbm90LiBTZXQgSTx2YWx1ZT4gdG8gNyBpZiB5b3Ugd2FudCBhbGwgd2FybmluZ3MgdG8gYmUgYWN0aXZlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1zaGxpYmRlcHMuMToyMjIKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiV0FSTklOR1MiCittc2dzdHIgIuitpuWRiiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToyMzAKK21zZ2lkICIiCisiU2luY2UgQjxkcGtnLXNobGliZGVwcz4gYW5hbHl6ZXMgdGhlIHNldCBvZiBzeW1ib2xzIHVzZWQgYnkgZWFjaCBiaW5hcnkgb2YgIgorInRoZSBnZW5lcmF0ZWQgcGFja2FnZSwgaXQgaXMgYWJsZSB0byBlbWl0IHdhcm5pbmdzIGluIHNldmVyYWwgY2FzZXMuIFRoZXkgIgorImluZm9ybSB5b3Ugb2YgdGhpbmdzIHRoYXQgY2FuIGJlIGltcHJvdmVkIGluIHRoZSBwYWNrYWdlLiBJbiBtb3N0IGNhc2VzLCAiCisidGhvc2UgaW1wcm92ZW1lbnRzIGNvbmNlcm4gdGhlIHVwc3RyZWFtIHNvdXJjZXMgZGlyZWN0bHkuIEJ5IG9yZGVyIG9mICIKKyJkZWNyZWFzaW5nIGltcG9ydGFuY2UsIGhlcmUgYXJlIHRoZSB2YXJpb3VzIHdhcm5pbmdzIHRoYXQgeW91IGNhbiBlbmNvdW50ZXI6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNobGliZGVwcy4xOjIzMAorIywgbm8td3JhcAorbXNnaWQgIkI8c3ltYm9sPkk8IHN5bT5CPCB1c2VkIGJ5ID5JPGJpbmFyeT5CPCBmb3VuZCBpbiBub25lIG9mIHRoZSBsaWJyYXJpZXMuPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjIzNgorbXNnaWQgIiIKKyJUaGUgaW5kaWNhdGVkIHN5bWJvbCBoYXMgbm90IGJlZW4gZm91bmQgaW4gdGhlIGxpYnJhcmllcyBsaW5rZWQgd2l0aCB0aGUgIgorImJpbmFyeS4gVGhlIEk8YmluYXJ5PiBpcyBtb3N0IGxpa2VseSBhIGxpYnJhcnkgYW5kIGl0IG5lZWRzIHRvIGJlIGxpbmtlZCAiCisid2l0aCBhbiBhZGRpdGlvbmFsIGxpYnJhcnkgZHVyaW5nIHRoZSBidWlsZCBwcm9jZXNzIChvcHRpb24gQjwtbD5JPGxpYnJhcnk+ICIKKyJvZiB0aGUgbGlua2VyKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjM2CisjLCBuby13cmFwCittc2dpZCAiSTxiaW5hcnk+QjwgY29udGFpbnMgYW4gdW5yZXNvbHZhYmxlIHJlZmVyZW5jZSB0byBzeW1ib2wgPkk8c3ltPkI8OiBpdCdzIHByb2JhYmx5IGEgcGx1Z2luPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjI0OQorbXNnaWQgIiIKKyJUaGUgaW5kaWNhdGVkIHN5bWJvbCBoYXMgbm90IGJlZW4gZm91bmQgaW4gdGhlIGxpYnJhcmllcyBsaW5rZWQgd2l0aCB0aGUgIgorImJpbmFyeS4gVGhlIEk8YmluYXJ5PiBpcyBtb3N0IGxpa2VseSBhIHBsdWdpbiBhbmQgdGhlIHN5bWJvbCBpcyBwcm9iYWJseSAiCisicHJvdmlkZWQgYnkgdGhlIHByb2dyYW0gdGhhdCBsb2FkcyB0aGlzIHBsdWdpbi4gSW4gdGhlb3J5IGEgcGx1Z2luIGRvZXNuJ3QgIgorImhhdmUgYW55IFNPTkFNRSBidXQgdGhpcyBiaW5hcnkgZG9lcyBoYXZlIG9uZSBhbmQgYXMgc3VjaCBpdCBjb3VsZCBub3QgYmUgIgorImNsZWFybHkgaWRlbnRpZmllZCBhcyBzdWNoLiBIb3dldmVyIHRoZSBmYWN0IHRoYXQgdGhlIGJpbmFyeSBpcyBzdG9yZWQgaW4gYSAiCisibm9uLXB1YmxpYyBkaXJlY3RvcnkgaXMgYSBzdHJvbmcgaW5kaWNhdGlvbiB0aGF0J3MgaXQncyBub3QgYSBub3JtYWwgc2hhcmVkICIKKyJsaWJyYXJ5LiBJZiB0aGUgYmluYXJ5IGlzIHJlYWxseSBhIHBsdWdpbiwgdGhlbiBkaXNyZWdhcmQgdGhpcyB3YXJuaW5nLiBCdXQgIgorInRoZXJlJ3MgYWx3YXlzIHRoZSBwb3NzaWJpbGl0eSB0aGF0IGl0J3MgYSByZWFsIGxpYnJhcnkgYW5kIHRoYXQgcHJvZ3JhbXMgIgorImxpbmtpbmcgdG8gaXQgYXJlIHVzaW5nIGFuIFJQQVRIIHNvIHRoYXQgdGhlIGR5bmFtaWMgbG9hZGVyIGZpbmRzIGl0LiBJbiAiCisidGhhdCBjYXNlLCB0aGUgbGlicmFyeSBpcyBicm9rZW4gYW5kIG5lZWRzIHRvIGJlIGZpeGVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zaGxpYmRlcHMuMToyNDkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGRlcGVuZGVuY3kgb24gPkk8bGlicmFyeT5CPCBjb3VsZCBiZSBhdm9pZGVkIGlmID5JPGJpbmFyaWVzPkI8IHdlcmUgbm90IHVzZWxlc3NseSBsaW5rZWQgYWdhaW5zdCBpdCAodGhleSB1c2Ugbm9uZSBvZiBpdHMgc3ltYm9scykuPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjI1NQorbXNnaWQgIiIKKyJOb25lIG9mIHRoZSBJPGJpbmFyaWVzPiB0aGF0IGFyZSBsaW5rZWQgd2l0aCBJPGxpYnJhcnk+IHVzZSBhbnkgb2YgdGhlICIKKyJzeW1ib2xzIHByb3ZpZGVkIGJ5IHRoZSBsaWJyYXJ5LiBCeSBmaXhpbmcgYWxsIHRoZSBiaW5hcmllcywgeW91IHdvdWxkIGF2b2lkICIKKyJ0aGUgZGVwZW5kZW5jeSBhc3NvY2lhdGVkIHRvIHRoaXMgbGlicmFyeSAodW5sZXNzIHRoZSBzYW1lIGRlcGVuZGVuY3kgaXMgIgorImFsc28gZ2VuZXJhdGVkIGJ5IGFub3RoZXIgbGlicmFyeSB0aGF0IGlzIHJlYWxseSB1c2VkKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjU1CisjLCBuby13cmFwCittc2dpZCAiSTxiaW5hcnk+Qjwgc2hvdWxkbid0IGJlIGxpbmtlZCB3aXRoID5JPGxpYnJhcnk+QjwgKGl0IHVzZXMgbm9uZSBvZiBpdHMgc3ltYm9scykuPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjI2MgorbXNnaWQgIiIKKyJUaGUgSTxiaW5hcnk+IGlzIGxpbmtlZCB0byBhIGxpYnJhcnkgdGhhdCBpdCBkb2Vzbid0IG5lZWQuIEl0J3Mgbm90IGEgIgorInByb2JsZW0gYnV0IHNvbWUgc21hbGwgcGVyZm9ybWFuY2UgaW1wcm92ZW1lbnRzIGluIGJpbmFyeSBsb2FkIHRpbWUgY2FuIGJlICIKKyJvYnRhaW5lZCBieSBub3QgbGlua2luZyB0aGlzIGxpYnJhcnkgdG8gdGhpcyBiaW5hcnkuIFRoaXMgd2FybmluZyBjaGVja3MgdGhlICIKKyJzYW1lIGluZm9ybWF0aW9uIHRoYW4gdGhlIHByZXZpb3VzIG9uZSBidXQgZG9lcyBpdCBmb3IgZWFjaCBiaW5hcnkgaW5zdGVhZCAiCisib2YgZG9pbmcgdGhlIGNoZWNrIGdsb2JhbGx5IG9uIGFsbCBiaW5hcmllcyBhbmFseXplZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjYyCisjLCBuby13cmFwCittc2dpZCAiRVJST1JTIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjY5Cittc2dpZCAiIgorIkI8ZHBrZy1zaGxpYmRlcHM+IHdpbGwgZmFpbCBpZiBpdCBjYW4ndCBmaW5kIGEgcHVibGljIGxpYnJhcnkgdXNlZCBieSBhICIKKyJiaW5hcnkgb3IgaWYgdGhpcyBsaWJyYXJ5IGhhcyBubyBhc3NvY2lhdGVkIGRlcGVuZGVuY3kgaW5mb3JtYXRpb24gKGVpdGhlciAiCisic2hsaWJzIGZpbGUgb3Igc3ltYm9scyBmaWxlKS4gQSBwdWJsaWMgbGlicmFyeSBoYXMgYSBTT05BTUUgYW5kIGlzIHZlcnNpb25lZCAiCisiKGxpYnNvbWV0aGluZy5zby5JPFg+KS4gQSBwcml2YXRlIGxpYnJhcnkgKGxpa2UgYSBwbHVnaW4pIHNob3VsZCBub3QgaGF2ZSBhICIKKyJTT05BTUUgYW5kIGRvZXNuJ3QgbmVlZCB0byBiZSB2ZXJzaW9uZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNobGliZGVwcy4xOjI2OQorIywgbm8td3JhcAorbXNnaWQgIkI8Y291bGRuJ3QgZmluZCBsaWJyYXJ5ID5JPGxpYnJhcnktc29uYW1lPkI8IG5lZWRlZCBieSA+STxiaW5hcnk+QjwgKGl0cyBSUEFUSCBpcyAnPkk8cnBhdGg+QjwnKT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToyODUKK21zZ2lkICIiCisiVGhlIEk8YmluYXJ5PiB1c2VzIGEgbGlicmFyeSBjYWxsZWQgSTxsaWJyYXJ5LXNvbmFtZT4gYnV0IEI8ZHBrZy1zaGxpYmRlcHM+ICIKKyJoYXMgYmVlbiB1bmFibGUgdG8gZmluZCB0aGUgbGlicmFyeS4gIEI8ZHBrZy1zaGxpYmRlcHM+IGNyZWF0ZXMgYSBsaXN0IG9mICIKKyJkaXJlY3RvcmllcyB0byBjaGVjayBhcyBmb2xsb3dpbmc6IGRpcmVjdG9yaWVzIGxpc3RlZCBpbiB0aGUgUlBBVEggb2YgdGhlICIKKyJiaW5hcnksIGRpcmVjdG9yaWVzIGxpc3RlZCBpbiAvZXRjL2xkLnNvLmNvbmYsIGRpcmVjdG9yaWVzIGxpc3RlZCBpbiB0aGUgIgorIkxEX0xJQlJBUllfUEFUSCBlbnZpcm9ubWVudCB2YXJpYWJsZSwgYW5kIHN0YW5kYXJkIHB1YmxpYyBkaXJlY3RvcmllcyAoLyIKKyJsaWIsIC91c3IvbGliLCAvbGliMzIsIC91c3IvbGliMzIsIC9saWI2NCwgL3Vzci9saWI2NCkuIFRoZW4gaXQgY2hlY2tzIHRob3NlICIKKyJkaXJlY3RvcmllcyBpbiB0aGUgcGFja2FnZSdzIGJ1aWxkIHRyZWUgb2YgdGhlIGJpbmFyeSBiZWluZyBhbmFseXplZCwgaW4gdGhlICIKKyJwYWNrYWdlcycgYnVpbGQgdHJlZXMgaW5kaWNhdGVkIHdpdGggdGhlIC1TIGNvbW1hbmQtbGluZSBvcHRpb24sIGluIG90aGVyICIKKyJwYWNrYWdlcycgYnVpbGQgdHJlZXMgdGhhdCBjb250YWlucyBhIERFQklBTi9zaGxpYnMgb3IgREVCSUFOL3N5bWJvbHMgZmlsZSAiCisiYW5kIGZpbmFsbHkgaW4gdGhlIHJvb3QgZGlyZWN0b3J5LiAgSWYgdGhlIGxpYnJhcnkgaXMgbm90IGZvdW5kIGluIGFueSBvZiAiCisidGhvc2UgZGlyZWN0b3JpZXMsIHRoZW4geW91IGdldCB0aGlzIGVycm9yLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjI5MQorbXNnaWQgIiIKKyJJZiB0aGUgbGlicmFyeSBub3QgZm91bmQgaXMgaW4gYSBwcml2YXRlIGRpcmVjdG9yeSBvZiB0aGUgc2FtZSBwYWNrYWdlLCB0aGVuICIKKyJ5b3Ugd2FudCB0byBhZGQgdGhlIGRpcmVjdG9yeSB0byBMRF9MSUJSQVJZX1BBVEguIElmIGl0J3MgaW4gYW5vdGhlciBiaW5hcnkgIgorInBhY2thZ2UgYmVpbmcgYnVpbHQsIHlvdSB3YW50IHRvIG1ha2Ugc3VyZSB0aGF0IHRoZSBzaGxpYnMvc3ltYm9scyBmaWxlIG9mICIKKyJ0aGlzIHBhY2thZ2UgaXMgYWxyZWFkeSBjcmVhdGVkIGFuZCB0aGF0IExEX0xJQlJBUllfUEFUSCBjb250YWlucyB0aGUgIgorImFwcHJvcHJpYXRlIGRpcmVjdG9yeSBpZiBpdCBhbHNvIGlzIGluIGEgcHJpdmF0ZSBkaXJlY3RvcnkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNobGliZGVwcy4xOjI5MQorIywgbm8td3JhcAorbXNnaWQgIkI8bm8gZGVwZW5kZW5jeSBpbmZvcm1hdGlvbiBmb3VuZCBmb3IgPkk8bGlicmFyeS1maWxlPkI8ICh1c2VkIGJ5ID5JPGJpbmFyeT5CPCkuPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjMwNAorbXNnaWQgIiIKKyJUaGUgbGlicmFyeSBuZWVkZWQgYnkgSTxiaW5hcnk+IGhhcyBiZWVuIGZvdW5kIGJ5IEI8ZHBrZy1zaGxpYmRlcHM+IGluICIKKyJJPGxpYnJhcnktZmlsZT4gYnV0IEI8ZHBrZy1zaGxpYmRlcHM+IGhhcyBiZWVuIHVuYWJsZSB0byBmaW5kIGFueSBkZXBlbmRlbmN5ICIKKyJpbmZvcm1hdGlvbiBmb3IgdGhhdCBsaWJyYXJ5LiBUbyBmaW5kIG91dCB0aGUgZGVwZW5kZW5jeSwgaXQgaGFzIHRyaWVkIHRvICIKKyJtYXAgdGhlIGxpYnJhcnkgdG8gYSBEZWJpYW4gcGFja2FnZSB3aXRoIHRoZSBoZWxwIG9mIEI8ZHBrZyAtUyA+STxsaWJyYXJ5LSIKKyJmaWxlPi4gIFRoZW4gaXQgY2hlY2tlZCB0aGUgY29ycmVzcG9uZGluZyBzaGxpYnMgYW5kIHN5bWJvbHMgZmlsZXMgaW4gL3Zhci8iCisibGliL2Rwa2cvaW5mby8sIGFuZCBpbiB0aGUgdmFyaW91cyBwYWNrYWdlJ3MgYnVpbGQgdHJlZXMgKGRlYmlhbi8qL0RFQklBTi8pLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjMxOAorbXNnaWQgIiIKKyJUaGlzIGZhaWx1cmUgY2FuIGJlIGNhdXNlZCBieSBhIGJhZCBvciBtaXNzaW5nIHNobGlicyBvciBzeW1ib2xzIGZpbGUgaW4gdGhlICIKKyJwYWNrYWdlIG9mIHRoZSBsaWJyYXJ5LiBJdCBtaWdodCBhbHNvIGhhcHBlbiBpZiB0aGUgbGlicmFyeSBpcyBidWlsdCB3aXRoaW4gIgorInRoZSBzYW1lIHNvdXJjZSBwYWNrYWdlIGFuZCBpZiB0aGUgc2hsaWJzIGZpbGVzIGhhcyBub3QgeWV0IGJlZW4gY3JlYXRlZCAoaW4gIgorIndoaWNoIGNhc2UgeW91IG11c3QgZml4IGRlYmlhbi9ydWxlcyB0byBjcmVhdGUgdGhlIHNobGlicyBiZWZvcmUgY2FsbGluZyAiCisiQjxkcGtnLXNobGliZGVwcz4pLiBCYWQgUlBBVEggY2FuIGFsc28gbGVhZCB0byB0aGUgbGlicmFyeSBiZWluZyBmb3VuZCB1bmRlciAiCisiYSBub24tY2Fub25pY2FsIG5hbWUgKGV4YW1wbGU6IC91c3IvbGliL29wZW5vZmZpY2Uub3JnLy4uL2xpYi9saWJzc2wuIgorInNvLjAuOS44IGluc3RlYWQgb2YgL3Vzci9saWIvbGlic3NsLnNvLjAuOS44KSB0aGF0J3Mgbm90IGFzc29jaWF0ZWQgdG8gYW55ICIKKyJwYWNrYWdlLCBCPGRwa2ctc2hsaWJkZXBzPiB0cmllcyB0byB3b3JrIGFyb3VuZCB0aGlzIGJ5IHRyeWluZyB0byBmYWxsYmFjayAiCisib24gYSBjYW5vbmljYWwgbmFtZSAodXNpbmcgQjxyZWFscGF0aD4oMykpICBidXQgaXQgbWlnaHQgbm90IGFsd2F5cyB3b3JrLiAiCisiSXQncyBhbHdheXMgYmVzdCB0byBjbGVhbiB1cCB0aGUgUlBBVEggb2YgdGhlIGJpbmFyeSB0byBhdm9pZCBwcm9ibGVtcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTozMjQKK21zZ2lkICIiCisiQ2FsbGluZyBCPGRwa2ctc2hsaWJkZXBzPiBpbiB2ZXJib3NlIG1vZGUgKC12KSB3aWxsIHByb3ZpZGUgbXVjaCBtb3JlICIKKyJpbmZvcm1hdGlvbiBhYm91dCB3aGVyZSBpdCB0cmllZCB0byBmaW5kIHRoZSBkZXBlbmRlbmN5IGluZm9ybWF0aW9uLiBUaGlzICIKKyJtaWdodCBiZSB1c2VmdWwgaWYgeW91IGRvbid0IHVuZGVyc3RhbmQgd2h5IGl0J3MgZ2l2aW5nIHlvdSB0aGlzIGVycm9yLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjMyOAorIywgZnV6enkKK21zZ2lkICJCPGRlYi1zaGxpYnM+KDUpLCBCPGRlYi1zeW1ib2xzPig1KSwgQjxkcGtnLWdlbnN5bWJvbHM+KDEpLiIKK21zZ3N0ciAiQjxkZWI+KDUpLCBCPGRlYi1jb250cm9sPig1KSwgQjxkcGtnPigxKSwgQjxkc2VsZWN0PigxKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MzM1CisjLCBmdXp6eQorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDA2IEZyYW5rIExpY2h0ZW5oZWxkIgorbXNnc3RyICJDb3B5cmlnaHQgMjAwMCBXaWNoZXJ0IEFra2VybWFuIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1zb3VyY2UuMToyCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgImRwa2ctc291cmNlIgorbXNnc3RyICJkcGtnLXF1ZXJ5IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjUKKyMsIGZ1enp5Cittc2dpZCAiZHBrZy1zb3VyY2UgLSBEZWJpYW4gc291cmNlIHBhY2thZ2UgKC5kc2MpIG1hbmlwdWxhdGlvbiB0b29sIgorbXNnc3RyICJCPGRwa2ctZGViPiDjga/jgIFEZWJpYW4g44Ki44O844Kr44Kk44OW44Gu5L2c5oiQ44CB5bGV6ZaL44CB5oOF5aCx44Gu6KGo56S644KS44GZ44KL44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjkKKyMsIGZ1enp5Cittc2dpZCAiQjxkcGtnLXNvdXJjZT4gW0k8b3B0aW9uPi4uLl0gSTxjb21tYW5kPiIKK21zZ3N0ciAiQjxkcGtnPiBbSTxvcHRpb25zPl0gSTxhY3Rpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjEzCisjLCBmdXp6eQorbXNnaWQgIkI8ZHBrZy1zb3VyY2U+IHBhY2tzIGFuZCB1bnBhY2tzIERlYmlhbiBzb3VyY2UgYXJjaGl2ZXMuIgorbXNnc3RyICJCPGRwa2ctZGViPiDjga/jgIFEZWJpYW4g44Ki44O844Kr44Kk44OW44Gu5L2c5oiQ44CB5bGV6ZaL44CB5oOF5aCx44Gu6KGo56S644KS44GZ44KL44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjE3Cittc2dpZCAiIgorIk5vbmUgb2YgdGhlc2UgY29tbWFuZHMgYWxsb3cgbXVsdGlwbGUgb3B0aW9ucyB0byBiZSBjb21iaW5lZCBpbnRvIG9uZSwgYW5kICIKKyJ0aGV5IGRvIG5vdCBhbGxvdyB0aGUgdmFsdWUgZm9yIGFuIG9wdGlvbiB0byBiZSBzcGVjaWZpZWQgaW4gYSBzZXBhcmF0ZSAiCisiYXJndW1lbnQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjE5CisjLCBuby13cmFwCittc2dpZCAiQjwteCA+STxmaWxlbmFtZT5CPC5kc2MgPltJPG91dHB1dC1kaXJlY3Rvcnk+XSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjI5Cittc2dpZCAiIgorIkV4dHJhY3QgYSBzb3VyY2UgcGFja2FnZS4gT25lIG5vbi1vcHRpb24gYXJndW1lbnQgbXVzdCBiZSBzdXBwbGllZCwgdGhlIG5hbWUgIgorIm9mIHRoZSBEZWJpYW4gc291cmNlIGNvbnRyb2wgZmlsZSAoQjwuZHNjPikuICBBbiBvcHRpb25hbCBzZWNvbmQgbm9uLW9wdGlvbiAiCisiYXJndW1lbnQgbWF5IGJlIHN1cHBsaWVkIHRvIHNwZWNpZnkgdGhlIGRpcmVjdG9yeSB0byBleHRyYWN0IHRoZSBzb3VyY2UgIgorInBhY2thZ2UgdG8sIHRoaXMgbXVzdCBub3QgZXhpc3QuIElmIG5vIG91dHB1dCBkaXJlY3RvcnkgaXMgc3BlY2lmaWVkLCB0aGUgIgorInNvdXJjZSBwYWNrYWdlIGlzIGV4dHJhY3RlZCBpbnRvIGEgZGlyZWN0b3J5IG5hbWVkIEk8c291cmNlPi1JPHZlcnNpb24+ICIKKyJ1bmRlciB0aGUgY3VycmVudCB3b3JraW5nIGRpcmVjdG9yeS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTozNQorbXNnaWQgIiIKKyJCPGRwa2ctc291cmNlPiB3aWxsIHJlYWQgdGhlIG5hbWVzIG9mIHRoZSBvdGhlciBmaWxlKHMpIG1ha2luZyB1cCB0aGUgc291cmNlICIKKyJwYWNrYWdlIGZyb20gdGhlIGNvbnRyb2wgZmlsZTsgdGhleSBhcmUgYXNzdW1lZCB0byBiZSBpbiB0aGUgc2FtZSBkaXJlY3RvcnkgIgorImFzIHRoZSBCPC5kc2M+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjQzCittc2dpZCAiIgorIlRoZSBmaWxlcyBpbiB0aGUgZXh0cmFjdGVkIHBhY2thZ2Ugd2lsbCBoYXZlIHRoZWlyIHBlcm1pc3Npb25zIGFuZCAiCisib3duZXJzaGlwcyBzZXQgdG8gdGhvc2Ugd2hpY2ggd291bGQgaGF2ZSBiZWVuIGV4cGVjdGVkIGlmIHRoZSBmaWxlcyBhbmQgIgorImRpcmVjdG9yaWVzIGhhZCBzaW1wbHkgYmVlbiBjcmVhdGVkIC0gZGlyZWN0b3JpZXMgYW5kIGV4ZWN1dGFibGUgZmlsZXMgd2lsbCAiCisiYmUgMDc3NyBhbmQgcGxhaW4gZmlsZXMgd2lsbCBiZSAwNjY2LCBib3RoIG1vZGlmaWVkIGJ5IHRoZSBleHRyYWN0b3JzJyAiCisidW1hc2s7IGlmIHRoZSBwYXJlbnQgZGlyZWN0b3J5IGlzIHNldGdpZCB0aGVuIHRoZSBleHRyYWN0ZWQgZGlyZWN0b3JpZXMgd2lsbCAiCisiYmUgdG9vLCBhbmQgYWxsIHRoZSBmaWxlcyBhbmQgZGlyZWN0b3JpZXMgd2lsbCBpbmhlcml0IGl0cyBncm91cCBvd25lcnNoaXAuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NDgKK21zZ2lkICIiCisiSWYgdGhlIHNvdXJjZSBwYWNrYWdlIHVzZXMgYSBub24tc3RhbmRhcmQgZm9ybWF0IChjdXJyZW50bHkgdGhpcyBtZWFucyBhbGwgIgorImZvcm1hdHMgZXhjZXB0IFwiMS4wXCIpLCBpdHMgbmFtZSB3aWxsIGJlIHN0b3JlZCBpbiBCPGRlYmlhbi9zb3VyY2UvZm9ybWF0PiAiCisic28gdGhhdCB0aGUgZm9sbG93aW5nIGJ1aWxkcyBvZiB0aGUgc291cmNlIHBhY2thZ2UgdXNlIHRoZSBzYW1lIGZvcm1hdCBieSAiCisiZGVmYXVsdC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NDkKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtYj4gSTxkaXJlY3Rvcnk+IFtJPGZvcm1hdC1zcGVjaWZpYy1wYXJhbWV0ZXJzPl0iCittc2dzdHIgIkI8ZHBrZy1kZWI+IEI8LWI+fEI8LS1idWlsZD4gSTxkaXJlY3Rvcnk+IFtJPGFyY2hpdmU+fEk8ZGlyZWN0b3J5Pl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTYKK21zZ2lkICIiCisiQnVpbGQgYSBzb3VyY2UgcGFja2FnZS4gVGhlIGZpcnN0IG5vbi1vcHRpb24gYXJndW1lbnQgaXMgdGFrZW4gYXMgdGhlIG5hbWUgIgorIm9mIHRoZSBkaXJlY3RvcnkgY29udGFpbmluZyB0aGUgZGViaWFuaXplZCBzb3VyY2UgdHJlZSAoaS5lLiB3aXRoIGEgZGViaWFuICIKKyJzdWItZGlyZWN0b3J5IGFuZCBtYXliZSBjaGFuZ2VzIHRvIHRoZSBvcmlnaW5hbCBmaWxlcykuICBEZXBlbmRpbmcgb24gdGhlICIKKyJzb3VyY2UgcGFja2FnZSBmb3JtYXQgdXNlZCB0byBidWlsZCB0aGUgcGFja2FnZSwgYWRkaXRpb25hbCBwYXJhbWV0ZXJzIG1pZ2h0ICIKKyJiZSBhY2NlcHRlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2NQorbXNnaWQgIiIKKyJCPGRwa2ctc291cmNlPiB3aWxsIGJ1aWxkIHRoZSBzb3VyY2UgcGFja2FnZSB3aXRoIHRoZSBmaXJzdCBmb3JtYXQgZm91bmQgaW4gIgorInRoaXMgb3JkZXJlZCBsaXN0OiB0aGUgZm9ybWF0IGluZGljYXRlZCB3aXRoIHRoZSBJPC0tZm9ybWF0PiBjb21tYW5kIGxpbmUgIgorIm9wdGlvbiwgdGhlIGZvcm1hdCBpbmRpY2F0ZWQgaW4gQjxkZWJpYW4vc291cmNlL2Zvcm1hdD4sIFwiMS4wXCIuIFRoZSAiCisiZmFsbGJhY2sgdG8gXCIxLjBcIiBpcyBkZXByZWNhdGVkIGFuZCB3aWxsIGJlIHJlbW92ZWQgYXQgc29tZSBwb2ludCBpbiB0aGUgIgorImZ1dHVyZSwgeW91IHNob3VsZCBhbHdheXMgZG9jdW1lbnQgdGhlIGRlc2lyZWQgc291cmNlIGZvcm1hdCBpbiBCPGRlYmlhbi8iCisic291cmNlL2Zvcm1hdD4uIFNlZSBzZWN0aW9uIEI8U09VUkNFIFBBQ0tBR0UgRk9STUFUUz4gZm9yIGFuIGV4dGVuc2l2ZSAiCisiZGVzY3JpcHRpb24gb2YgdGhlIHZhcmlvdXMgc291cmNlIHBhY2thZ2UgZm9ybWF0cy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NjYKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLXByaW50LWZvcm1hdD4gSTxkaXJlY3Rvcnk+IgorbXNnc3RyICJCPC0tYWRtaW5kaXI+IEk8ZGlyZWN0b3J5PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo3MQorbXNnaWQgIiIKKyJQcmludCB0aGUgc291cmNlIGZvcm1hdCB0aGF0IHdvdWxkIGJlIHVzZWQgdG8gYnVpbGQgdGhlIHNvdXJjZSBwYWNrYWdlIGlmICIKKyJCPGRwa2ctc291cmNlIC1iID5JPGRpcmVjdG9yeT4gd2FzIGNhbGxlZCAoaW4gdGhlIHNhbWUgY29uZGl0aW9ucyBhbmQgd2l0aCAiCisidGhlIHNhbWUgcGFyYW1ldGVycykuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjcyCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1iZWZvcmUtYnVpbGQ+IEk8ZGlyZWN0b3J5PiIKK21zZ3N0ciAiQjwtLWFsdGRpcj4gSTxkaXJlY3Rvcnk+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjgxCittc2dpZCAiIgorIlJ1biB0aGUgY29ycmVzcG9uZGluZyBob29rIG9mIHRoZSBzb3VyY2UgcGFja2FnZSBmb3JtYXQuIFRoaXMgaG9vayBpcyBjYWxsZWQgIgorImJlZm9yZSBhbnkgYnVpbGQgb2YgdGhlIHBhY2thZ2UgKEI8ZHBrZy1idWlsZHBhY2thZ2U+IGNhbGxzIGl0IHZlcnkgZWFybHkgIgorImV2ZW4gYmVmb3JlIEI8ZGViaWFuL3J1bGVzIGNsZWFuPikuIFRoaXMgY29tbWFuZCBpcyBpZGVtcG90ZW50IGFuZCBjYW4gYmUgIgorImNhbGxlZCBtdWx0aXBsZSB0aW1lcy4gTm90IGFsbCBzb3VyY2UgZm9ybWF0cyBpbXBsZW1lbnQgc29tZXRoaW5nIGluIHRoaXMgIgorImhvb2ssIGFuZCB0aG9zZSB0aGF0IGRvIHVzdWFsbHkgcHJlcGFyZSB0aGUgc291cmNlIHRyZWUgZm9yIHRoZSBidWlsZCBmb3IgIgorImV4YW1wbGUgYnkgZW5zdXJpbmcgdGhhdCB0aGUgRGViaWFuIHBhdGNoZXMgYXJlIGFwcGxpZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjgyCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1hZnRlci1idWlsZD4gSTxkaXJlY3Rvcnk+IgorbXNnc3RyICJCPC0tYWx0ZGlyPiBJPGRpcmVjdG9yeT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6ODkKK21zZ2lkICIiCisiUnVuIHRoZSBjb3JyZXNwb25kaW5nIGhvb2sgb2YgdGhlIHNvdXJjZSBwYWNrYWdlIGZvcm1hdC4gVGhpcyBob29rIGlzIGNhbGxlZCAiCisiYWZ0ZXIgYW55IGJ1aWxkIG9mIHRoZSBwYWNrYWdlIChCPGRwa2ctYnVpbGRwYWNrYWdlPiBjYWxscyBpdCBsYXN0KS4gVGhpcyAiCisiY29tbWFuZCBpcyBpZGVtcG90ZW50IGFuZCBjYW4gYmUgY2FsbGVkIG11bHRpcGxlIHRpbWVzLiBOb3QgYWxsIHNvdXJjZSAiCisiZm9ybWF0cyBpbXBsZW1lbnQgc29tZXRoaW5nIGluIHRoaXMgaG9vaywgYW5kIHRob3NlIHRoYXQgZG8gdXN1YWxseSB1c2UgaXQgIgorInRvIHVuZG8gd2hhdCBCPC0tYmVmb3JlLWJ1aWxkPiBoYXMgZG9uZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6OTAKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWNvbW1pdD4gW0k8ZGlyZWN0b3J5Pl0gLi4uIgorbXNnc3RyICJCPC0tYWRtaW5kaXI+IEk8ZGlyZWN0b3J5PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo5NQorbXNnaWQgIiIKKyJSZWNvcmQgY2hhbmdlcyBpbiB0aGUgc291cmNlIHRyZWUgdW5wYWNrZWQgaW4gSTxkaXJlY3Rvcnk+LiBUaGlzIGNvbW1hbmQgY2FuICIKKyJ0YWtlIHN1cHBsZW1lbnRhcnkgcGFyYW1ldGVycyBkZXBlbmRpbmcgb24gdGhlIHNvdXJjZSBmb3JtYXQuICBJdCB3aWxsIGVycm9yICIKKyJvdXQgZm9yIGZvcm1hdHMgd2hlcmUgdGhpcyBvcGVyYXRpb24gZG9lc24ndCBtZWFuIGFueXRoaW5nLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1zb3VyY2UuMToxMDMKKyMsIG5vLXdyYXAKK21zZ2lkICJHRU5FUklDIEJVSUxEIE9QVElPTlMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToxMTEKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRoZSBtYWluIHNvdXJjZSBjb250cm9sIGZpbGUgdG8gcmVhZCBpbmZvcm1hdGlvbiBmcm9tLiBUaGUgZGVmYXVsdCAiCisiaXMgQjxkZWJpYW4vY29udHJvbD4uICBJZiBnaXZlbiB3aXRoIHJlbGF0aXZlIHBhdGhuYW1lIHRoaXMgaXMgaW50ZXJwcmV0ZWQgIgorInN0YXJ0aW5nIGF0IHRoZSBzb3VyY2UgdHJlZSdzIHRvcCBsZXZlbCBkaXJlY3RvcnkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MTE4Cittc2dpZCAiIgorIlNwZWNpZmllcyB0aGUgY2hhbmdlIGxvZyBmaWxlIHRvIHJlYWQgaW5mb3JtYXRpb24gZnJvbS4gVGhlIGRlZmF1bHQgaXMgIgorIkI8ZGViaWFuL2NoYW5nZWxvZz4uICBJZiBnaXZlbiB3aXRoIHJlbGF0aXZlIHBhdGhuYW1lIHRoaXMgaXMgaW50ZXJwcmV0ZWQgIgorInN0YXJ0aW5nIGF0IHRoZSBzb3VyY2UgdHJlZSdzIHRvcCBsZXZlbCBkaXJlY3RvcnkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjEyMworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tZm9ybWF0PT5JPHZhbHVlPiIKK21zZ3N0ciAiQjwtLXNob3dmb3JtYXQ9Pkk8Zm9ybWF0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToxMjcKK21zZ2lkICIiCisiVXNlIHRoZSBnaXZlbiBmb3JtYXQgZm9yIGJ1aWxkaW5nIHRoZSBzb3VyY2UgcGFja2FnZS4gSXQgZG9lcyBvdmVycmlkZSBhbnkgIgorImZvcm1hdCBnaXZlbiBpbiBCPGRlYmlhbi9zb3VyY2UvZm9ybWF0Pi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToxMzcKK21zZ2lkICIiCisiUmVhZCBzdWJzdGl0dXRpb24gdmFyaWFibGVzIGluIEk8c3Vic3R2YXJzZmlsZT47IHRoZSBkZWZhdWx0IGlzIHRvIG5vdCByZWFkICIKKyJhbnkgZmlsZS4gVGhpcyBvcHRpb24gY2FuIGJlIHVzZWQgbXVsdGlwbGUgdGltZXMgdG8gcmVhZCBzdWJzdGl0dXRpb24gIgorInZhcmlhYmxlcyBmcm9tIG11bHRpcGxlIGZpbGVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMToxNDMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1aPkk8Y29tcHJlc3Npb24+LCBCPC0tY29tcHJlc3Npb24+PUk8Y29tcHJlc3Npb24+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MTUxCittc2dpZCAiIgorIlNwZWNpZnkgdGhlIGNvbXByZXNzaW9uIHRvIHVzZSBmb3IgY3JlYXRlZCBmaWxlcyAodGFyYmFsbHMgYW5kIGRpZmZzKS4gIE5vdGUgIgorInRoYXQgdGhpcyBvcHRpb24gd2lsbCBub3QgY2F1c2UgZXhpc3RpbmcgdGFyYmFsbHMgdG8gYmUgcmVjb21wcmVzc2VkLCBpdCAiCisib25seSBhZmZlY3RzIG5ldyBmaWxlcy4gU3VwcG9ydGVkIHZhbHVlcyBhcmU6IEk8Z3ppcD4sIEk8YnppcDI+LCBJPGx6bWE+IGFuZCAiCisiSTx4ej4uICBJPGd6aXA+IGlzIHRoZSBkZWZhdWx0LiBJPHh6PiBpcyBvbmx5IHN1cHBvcnRlZCBzaW5jZSBkcGtnLWRldiAiCisiMS4xNS41LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMToxNTEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC16Pkk8bGV2ZWw+LCBCPC0tY29tcHJlc3Npb24tbGV2ZWw+PUk8bGV2ZWw+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MTU3Cittc2dpZCAiIgorIkNvbXByZXNzaW9uIGxldmVsIHRvIHVzZS4gQXMgd2l0aCBCPC1aPiBpdCBvbmx5IGFmZmVjdHMgbmV3bHkgY3JlYXRlZCBmaWxlcy4gIgorIlN1cHBvcnRlZCB2YWx1ZXMgYXJlOiBJPDE+IHRvIEk8OT4sIEk8YmVzdD4sIGFuZCBJPGZhc3Q+LiAgVGhlIGRlZmF1bHQgaXMgIgorIkk8OT4gZm9yIGd6aXAgYW5kIGJ6aXAyLCBJPDY+IGZvciB4eiBhbmQgbHptYS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6MTU3CisjLCBuby13cmFwCittc2dpZCAiQjwtaT5bSTxyZWdleHA+XSwgQjwtLWRpZmYtaWdub3JlPls9STxyZWdleHA+XSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjE2OQorbXNnaWQgIiIKKyJZb3UgbWF5IHNwZWNpZnkgYSBwZXJsIHJlZ3VsYXIgZXhwcmVzc2lvbiB0byBtYXRjaCBmaWxlcyB5b3Ugd2FudCBmaWx0ZXJlZCAiCisib3V0IG9mIHRoZSBsaXN0IG9mIGZpbGVzIGZvciB0aGUgZGlmZi4gKFRoaXMgbGlzdCBpcyBnZW5lcmF0ZWQgYnkgYSBmaW5kICIKKyJjb21tYW5kLikgKElmIHRoZSBzb3VyY2UgcGFja2FnZSBpcyBiZWluZyBidWlsdCBhcyBhIHZlcnNpb24gMyBzb3VyY2UgIgorInBhY2thZ2UgdXNpbmcgYSBWQ1MsIHRoaXMgY2FuIGJlIHVzZWQgdG8gaWdub3JlIHVuY29tbWl0ZWQgY2hhbmdlcyBvbiAiCisic3BlY2lmaWMgZmlsZXMuIFVzaW5nIC1pLiogd2lsbCBpZ25vcmUgYWxsIG9mIHRoZW0uKSAgQjwtaT4gYnkgaXRzZWxmICIKKyJlbmFibGVzIHRoZSBvcHRpb24sIHdpdGggYSBkZWZhdWx0IHJlZ2V4cCB0aGF0IHdpbGwgZmlsdGVyIG91dCBjb250cm9sIGZpbGVzICIKKyJhbmQgZGlyZWN0b3JpZXMgb2YgdGhlIG1vc3QgY29tbW9uIHJldmlzaW9uIGNvbnRyb2wgc3lzdGVtcywgYmFja3VwIGFuZCBzd2FwICIKKyJmaWxlcyBhbmQgTGlidG9vbCBidWlsZCBvdXRwdXQgZGlyZWN0b3JpZXMuIFRoZXJlIGNhbiBvbmx5IGJlIG9uZSBhY3RpdmUgIgorInJlZ2V4cCwgb2YgbXVsdGlwbGUgQjwtaT4gb3B0aW9ucyBvbmx5IHRoZSBsYXN0IG9uZSB3aWxsIHRha2UgZWZmZWN0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjE3OQorbXNnaWQgIiIKKyJUaGlzIGlzIHZlcnkgaGVscGZ1bCBpbiBjdXR0aW5nIG91dCBleHRyYW5lb3VzIGZpbGVzIHRoYXQgZ2V0IGluY2x1ZGVkIGluICIKKyJ0aGUgZGlmZiwgZS5nLiBpZiB5b3UgbWFpbnRhaW4geW91ciBzb3VyY2UgaW4gYSByZXZpc2lvbiBjb250cm9sIHN5c3RlbSBhbmQgIgorIndhbnQgdG8gdXNlIGEgY2hlY2tvdXQgdG8gYnVpbGQgYSBzb3VyY2UgcGFja2FnZSB3aXRob3V0IGluY2x1ZGluZyB0aGUgIgorImFkZGl0aW9uYWwgZmlsZXMgYW5kIGRpcmVjdG9yaWVzIHRoYXQgaXQgd2lsbCB1c3VhbGx5IGNvbnRhaW4gKGUuZy4gQ1ZTLywgLiIKKyJjdnNpZ25vcmUsIC5zdm4vKS4gVGhlIGRlZmF1bHQgcmVnZXhwIGlzIGFscmVhZHkgdmVyeSBleGhhdXN0aXZlLCBidXQgaWYgeW91ICIKKyJuZWVkIHRvIHJlcGxhY2UgaXQsIHBsZWFzZSBub3RlIHRoYXQgYnkgZGVmYXVsdCBpdCBjYW4gbWF0Y2ggYW55IHBhcnQgb2YgYSAiCisicGF0aCwgc28gaWYgeW91IHdhbnQgdG8gbWF0Y2ggdGhlIGJlZ2luIG9mIGEgZmlsZW5hbWUgb3Igb25seSBmdWxsICIKKyJmaWxlbmFtZXMsIHlvdSB3aWxsIG5lZWQgdG8gcHJvdmlkZSB0aGUgbmVjZXNzYXJ5IGFuY2hvcnMgKGUuZy4gJyhefC8pJywgIgorIicoJHwvKScpIHlvdXJzZWxmLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMToxNzkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tZXh0ZW5kLWRpZmYtaWdub3JlPj1JPHJlZ2V4cD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToxODYKK21zZ2lkICIiCisiVGhlIHBlcmwgcmVndWxhciBleHByZXNzaW9uIHNwZWNpZmllZCB3aWxsIGV4dGVuZCB0aGUgZGVmYXVsdCB2YWx1ZSBvZiBCPC0tIgorImRpZmYtaWdub3JlPiBhbmQgaXRzIGN1cnJlbnQgdmFsdWUgKGlmIHNldCkuIEl0IGRvZXMgdGhpcyBieSBjb25jYXRlbmF0aW5nICIKKyJcIkI8fD5JPHJlZ2V4cD5cIiB0byB0aGUgZXhpc3RpbmcgdmFsdWUuICBUaGlzIG9wdGlvbiBpcyBjb252ZW5pZW50IHRvIHVzZSAiCisiaW4gQjxkZWJpYW4vc291cmNlL29wdGlvbnM+IHRvIGV4Y2x1ZGUgc29tZSBhdXRvLWdlbmVyYXRlZCBmaWxlcyBmcm9tIHRoZSAiCisiYXV0b21hdGljIHBhdGNoIGdlbmVyYXRpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjE4NgorIywgbm8td3JhcAorbXNnaWQgIkI8LUk+W0k8ZmlsZS1wYXR0ZXJuPl0sIEI8LS10YXItaWdub3JlPls9STxmaWxlLXBhdHRlcm4+XSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjE5NQorbXNnaWQgIiIKKyJJZiB0aGlzIG9wdGlvbiBpcyBzcGVjaWZpZWQsIHRoZSBwYXR0ZXJuIHdpbGwgYmUgcGFzc2VkIHRvIEI8dGFyPigxKSdzIC0tIgorImV4Y2x1ZGUgb3B0aW9uIHdoZW4gaXQgaXMgY2FsbGVkIHRvIGdlbmVyYXRlIGEgLm9yaWcudGFyIG9yIC50YXIgZmlsZS4gRm9yICIKKyJleGFtcGxlLCAtSUNWUyB3aWxsIG1ha2UgdGFyIHNraXAgb3ZlciBDVlMgZGlyZWN0b3JpZXMgd2hlbiBnZW5lcmF0aW5nIGEgLiIKKyJ0YXIuZ3ogZmlsZS4gVGhlIG9wdGlvbiBtYXkgYmUgcmVwZWF0ZWQgbXVsdGlwbGUgdGltZXMgdG8gbGlzdCBtdWx0aXBsZSAiCisicGF0dGVybnMgdG8gZXhjbHVkZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToyMDAKK21zZ2lkICIiCisiQjwtST4gYnkgaXRzZWxmIGFkZHMgZGVmYXVsdCAtLWV4Y2x1ZGUgb3B0aW9ucyB0aGF0IHdpbGwgZmlsdGVyIG91dCBjb250cm9sICIKKyJmaWxlcyBhbmQgZGlyZWN0b3JpZXMgb2YgdGhlIG1vc3QgY29tbW9uIHJldmlzaW9uIGNvbnRyb2wgc3lzdGVtcywgYmFja3VwICIKKyJhbmQgc3dhcCBmaWxlcyBhbmQgTGlidG9vbCBidWlsZCBvdXRwdXQgZGlyZWN0b3JpZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MjEyCittc2dpZCAiIgorIkI8Tm90ZTo+IFdoaWxlIHRoZXkgaGF2ZSBzaW1pbGFyIHB1cnBvc2VzLCBCPC1pPiBhbmQgQjwtST4gaGF2ZSB2ZXJ5ICIKKyJkaWZmZXJlbnQgc3ludGF4IGFuZCBzZW1hbnRpY3MuIEI8LWk+IGNhbiBvbmx5IGJlIHNwZWNpZmllZCBvbmNlIGFuZCB0YWtlcyBhICIKKyJwZXJsIGNvbXBhdGlibGUgcmVndWxhciBleHByZXNzaW9uIHdoaWNoIGlzIG1hdGNoZWQgYWdhaW5zdCB0aGUgZnVsbCAiCisicmVsYXRpdmUgcGF0aCBvZiBlYWNoIGZpbGUuIEI8LUk+IGNhbiBzcGVjaWZpZWQgbXVsdGlwbGUgdGltZXMgYW5kIHRha2VzIGEgIgorImZpbGVuYW1lIHBhdHRlcm4gd2l0aCBzaGVsbCB3aWxkY2FyZHMuICBUaGUgcGF0dGVybiBpcyBhcHBsaWVkIHRvIHRoZSBmdWxsICIKKyJyZWxhdGl2ZSBwYXRoIGJ1dCBhbHNvIHRvIGVhY2ggcGFydCBvZiB0aGUgcGF0aCBpbmRpdmlkdWFsbHkuIFRoZSBleGFjdCAiCisic2VtYW50aWMgb2YgdGFyJ3MgLS1leGNsdWRlIG9wdGlvbiBpcyBzb21ld2hhdCBjb21wbGljYXRlZCwgc2VlIGh0dHA6Ly93d3cuIgorImdudS5vcmcvc29mdHdhcmUvdGFyL21hbnVhbC90YXIuaHRtbCN3aWxkY2FyZHMgZm9yIGEgZnVsbCBkb2N1bWVudGF0aW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjIxNQorbXNnaWQgIiIKKyJUaGUgZGVmYXVsdCByZWdleHAgYW5kIHBhdHRlcm5zIGZvciBib3RoIG9wdGlvbnMgY2FuIGJlIHNlZW4gaW4gdGhlIG91dHB1dCAiCisib2YgdGhlIEI8LS1oZWxwPiBjb21tYW5kLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1zb3VyY2UuMToyMTUKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiR0VORVJJQyBFWFRSQUNUIE9QVElPTlMiCittc2dzdHIgIuOBneOBruS7luOBruOCquODl+OCt+ODp+ODsyIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6MjE2CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1uby1jb3B5PiIKK21zZ3N0ciAiQjwtLW5vY2hlY2s+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjIxOQorIywgZnV6enkKK21zZ2lkICJEbyBub3QgY29weSBvcmlnaW5hbCB0YXJiYWxscyBuZWFyIHRoZSBleHRyYWN0ZWQgc291cmNlIHBhY2thZ2UuIgorbXNnc3RyICLjg5Hjg4PjgrHjg7zjgrjjga7nn63jgYToqqzmmI7mlociCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjIxOQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tbm8tY2hlY2s+IgorbXNnc3RyICJCPC0tbm9jaGVjaz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MjIyCittc2dpZCAiRG8gbm90IGNoZWNrIHNpZ25hdHVyZXMgYW5kIGNoZWNrc3VtcyBiZWZvcmUgdW5wYWNraW5nLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMToyMjIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tcmVxdWlyZS12YWxpZC1zaWduYXR1cmU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MjMwCittc2dpZCAiIgorIlJlZnVzZSB0byB1bnBhY2sgdGhlIHNvdXJjZSBwYWNrYWdlIGlmIGl0IGRvZXNuJ3QgY29udGFpbiBhbiBPcGVuUEdQICIKKyJzaWduYXR1cmUgdGhhdCBjYW4gYmUgdmVyaWZpZWQgZWl0aGVyIHdpdGggdGhlIHVzZXIncyBJPHRydXN0ZWRrZXlzLmdwZz4gIgorImtleXJpbmcsIG9uZSBvZiB0aGUgdmVuZG9yLXNwZWNpZmljIGtleXJpbmdzLCBvciBvbmUgb2YgdGhlIG9mZmljaWFsIERlYmlhbiAiCisia2V5cmluZ3MgKEk8L3Vzci9zaGFyZS9rZXlyaW5ncy9kZWJpYW4ta2V5cmluZy5ncGc+IGFuZCBJPC91c3Ivc2hhcmUvIgorImtleXJpbmdzL2RlYmlhbi1tYWludGFpbmVycy5ncGc+KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctc291cmNlLjE6MjMxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIlNPVVJDRSBQQUNLQUdFIEZPUk1BVFMiCittc2dzdHIgIuODkeODg+OCseODvOOCuOODleODqeOCsCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToyMzYKK21zZ2lkICIiCisiSWYgeW91IGRvbid0IGtub3cgd2hhdCBzb3VyY2UgZm9ybWF0IHRvIHVzZSwgeW91IHNob3VsZCBwcm9iYWJseSBwaWNrIGVpdGhlciAiCisiXCIzLjAgKHF1aWx0KVwiIG9yIFwiMy4wIChuYXRpdmUpXCIuIFNlZSBodHRwOi8vd2lraS5kZWJpYW4ub3JnL1Byb2plY3RzLyIKKyJEZWJTcmMzLjAgZm9yIGluZm9ybWF0aW9uIG9uIHRoZSBkZXBsb3ltZW50IG9mIHRob3NlIGZvcm1hdHMgd2l0aGluIERlYmlhbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6MjM3CisjLCBuby13cmFwCittc2dpZCAiRm9ybWF0OiAxLjAiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToyNDEKK21zZ2lkICIiCisiQSBzb3VyY2UgcGFja2FnZSBpbiB0aGlzIGZvcm1hdCBjb25zaXN0cyBlaXRoZXIgb2YgYSBCPC5vcmlnLnRhci5nej4gIgorImFzc29jaWF0ZWQgdG8gYSBCPC5kaWZmLmd6PiBvciBhIHNpbmdsZSBCPC50YXIuZ3o+IChpbiB0aGF0IGNhc2UgdGhlIHBhY2thZ2UgIgorImlzIHNhaWQgdG8gYmUgSTxuYXRpdmU+KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToyNDMgZHBrZy1zb3VyY2UuMTo0MTEgZHBrZy1zb3VyY2UuMTo1ODYgZHBrZy1zb3VyY2UuMTo2MjUKK21zZ2lkICJCPEV4dHJhY3Rpbmc+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MjUzCittc2dpZCAiIgorIkV4dHJhY3RpbmcgYSBuYXRpdmUgcGFja2FnZSBpcyBhIHNpbXBsZSBleHRyYWN0aW9uIG9mIHRoZSBzaW5nbGUgdGFyYmFsbCBpbiAiCisidGhlIHRhcmdldCBkaXJlY3RvcnkuIEV4dHJhY3RpbmcgYSBub24tbmF0aXZlIHBhY2thZ2UgaXMgZG9uZSBieSBmaXJzdCAiCisidW5wYWNraW5nIHRoZSBCPC5vcmlnLnRhci5nej4gYW5kIHRoZW4gYXBwbHlpbmcgdGhlIHBhdGNoIGNvbnRhaW5lZCBpbiB0aGUgIgorIkI8LmRpZmYuZ3o+IGZpbGUuIFRoZSB0aW1lc3RhbXAgb2YgYWxsIHBhdGNoZWQgZmlsZXMgaXMgcmVzZXQgdG8gdGhlICIKKyJleHRyYWN0aW9uIHRpbWUgb2YgdGhlIHNvdXJjZSBwYWNrYWdlICh0aGlzIGF2b2lkcyB0aW1lc3RhbXAgc2tld3MgbGVhZGluZyAiCisidG8gcHJvYmxlbXMgd2hlbiBhdXRvZ2VuZXJhdGVkIGZpbGVzIGFyZSBwYXRjaGVkKS4gVGhlIGRpZmYgY2FuIGNyZWF0ZSBuZXcgIgorImZpbGVzICh0aGUgd2hvbGUgZGViaWFuIGRpcmVjdG9yeSBpcyBjcmVhdGVkIHRoYXQgd2F5KSBidXQgY2FuJ3QgcmVtb3ZlICIKKyJmaWxlcyAoZW1wdHkgZmlsZXMgd2lsbCBiZSBsZWZ0IG92ZXIpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjI1NSBkcGtnLXNvdXJjZS4xOjQzOSBkcGtnLXNvdXJjZS4xOjU5NyBkcGtnLXNvdXJjZS4xOjYzMAorbXNnaWQgIkI8QnVpbGRpbmc+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MjYxCittc2dpZCAiIgorIkJ1aWxkaW5nIGEgbmF0aXZlIHBhY2thZ2UgaXMganVzdCBjcmVhdGluZyBhIHNpbmdsZSB0YXJiYWxsIHdpdGggdGhlIHNvdXJjZSAiCisiZGlyZWN0b3J5LiBCdWlsZGluZyBhIG5vbi1uYXRpdmUgcGFja2FnZSBpbnZvbHZlcyBleHRyYWN0aW5nIHRoZSBvcmlnaW5hbCAiCisidGFyYmFsbCBpbiBhIHNlcGFyYXRlIFwiLm9yaWdcIiBkaXJlY3RvcnkgYW5kIHJlZ2VuZXJhdGluZyB0aGUgQjwuZGlmZi5nej4gIgorImJ5IGNvbXBhcmluZyB0aGUgc291cmNlIHBhY2thZ2UgSTxkaXJlY3Rvcnk+IHdpdGggdGhlIC5vcmlnIGRpcmVjdG9yeS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6MjYyCisjLCBuby13cmFwCittc2dpZCAiQjxCdWlsZCBvcHRpb25zICh3aXRoIC1iKTo+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6Mjc1Cittc2dpZCAiIgorIklmIGEgc2Vjb25kIG5vbi1vcHRpb24gYXJndW1lbnQgaXMgc3VwcGxpZWQgaXQgc2hvdWxkIGJlIHRoZSBuYW1lIG9mIHRoZSAiCisib3JpZ2luYWwgc291cmNlIGRpcmVjdG9yeSBvciB0YXJmaWxlIG9yIHRoZSBlbXB0eSBzdHJpbmcgaWYgdGhlIHBhY2thZ2UgaXMgYSAiCisiRGViaWFuLXNwZWNpZmljIG9uZSBhbmQgc28gaGFzIG5vIERlYmlhbmlzYXRpb24gZGlmZnMuIElmIG5vIHNlY29uZCBhcmd1bWVudCAiCisiaXMgc3VwcGxpZWQgdGhlbiBCPGRwa2ctc291cmNlPiB3aWxsIGxvb2sgZm9yIHRoZSBvcmlnaW5hbCBzb3VyY2UgdGFyZmlsZSAiCisiSTxwYWNrYWdlPkI8Xz5JPHVwc3RyZWFtLXZlcnNpb24+Qjwub3JpZy50YXIuZ3o+IG9yIHRoZSBvcmlnaW5hbCBzb3VyY2UgIgorImRpcmVjdG9yeSBJPGRpcmVjdG9yeT5CPC5vcmlnPiBkZXBlbmRpbmcgb24gdGhlIEI8LXNYPiBhcmd1bWVudHMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MjgxCittc2dpZCAiIgorIkI8LXNhPiwgQjwtc3A+LCBCPC1zaz4sIEI8LXN1PiBhbmQgQjwtc3I+IHdpbGwgbm90IG92ZXJ3cml0ZSBleGlzdGluZyAiCisidGFyZmlsZXMgb3IgZGlyZWN0b3JpZXMuIElmIHRoaXMgaXMgZGVzaXJlZCB0aGVuIEI8LXNBPiwgQjwtc1A+LCBCPC1zSz4sIEI8LSIKKyJzVT4gYW5kIEI8LXNSPiBzaG91bGQgYmUgdXNlZCBpbnN0ZWFkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMToyODEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtc2s+IgorbXNnc3RyICJCPC1CPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToyOTAKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRvIGV4cGVjdCB0aGUgb3JpZ2luYWwgc291cmNlIGFzIGEgdGFyZmlsZSwgYnkgZGVmYXVsdCAiCisiSTxwYWNrYWdlPkI8Xz5JPHVwc3RyZWFtLXZlcnNpb24+Qjwub3JpZy50YXIuPkk8ZXh0ZW5zaW9uPi4gIEl0IHdpbGwgbGVhdmUgIgorInRoaXMgb3JpZ2luYWwgc291cmNlIGluIHBsYWNlIGFzIGEgdGFyZmlsZSwgb3IgY29weSBpdCB0byB0aGUgY3VycmVudCAiCisiZGlyZWN0b3J5IGlmIGl0IGlzbid0IGFscmVhZHkgdGhlcmUuIFRoZSB0YXJiYWxsIHdpbGwgYmUgdW5wYWNrZWQgaW50byAiCisiSTxkaXJlY3Rvcnk+Qjwub3JpZz4gZm9yIHRoZSBnZW5lcmF0aW9uIG9mIHRoZSBkaWZmLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMToyOTAgZHBrZy1zb3VyY2UuMTozNTkKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtc3A+IgorbXNnc3RyICJCPC1CPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToyOTUKK21zZ2lkICJMaWtlIEI8LXNrPiBidXQgd2lsbCByZW1vdmUgdGhlIGRpcmVjdG9yeSBhZ2FpbiBhZnRlcndhcmRzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMToyOTUgZHBrZy1zb3VyY2UuMTozNjUKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtc3U+IgorbXNnc3RyICJCPC1CPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTozMDMKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRoYXQgdGhlIG9yaWdpbmFsIHNvdXJjZSBpcyBleHBlY3RlZCBhcyBhIGRpcmVjdG9yeSwgYnkgZGVmYXVsdCAiCisiSTxwYWNrYWdlPkI8LT5JPHVwc3RyZWFtLXZlcnNpb24+Qjwub3JpZz4gYW5kIEI8ZHBrZy1zb3VyY2U+IHdpbGwgY3JlYXRlIGEgIgorIm5ldyBvcmlnaW5hbCBzb3VyY2UgYXJjaGl2ZSBmcm9tIGl0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTozMDMKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtc3I+IgorbXNnc3RyICJCPC1CPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTozMDgKK21zZ2lkICJMaWtlIEI8LXN1PiBidXQgd2lsbCByZW1vdmUgdGhhdCBkaXJlY3RvcnkgYWZ0ZXIgaXQgaGFzIGJlZW4gdXNlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6MzA4CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LXNzPiIKK21zZ3N0ciAiQjwtQj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MzE2Cittc2dpZCAiIgorIlNwZWNpZmllcyB0aGF0IHRoZSBvcmlnaW5hbCBzb3VyY2UgaXMgYXZhaWxhYmxlIGJvdGggYXMgYSBkaXJlY3RvcnkgYW5kIGFzIGEgIgorInRhcmZpbGUuIGRwa2ctc291cmNlIHdpbGwgdXNlIHRoZSBkaXJlY3RvcnkgdG8gY3JlYXRlIHRoZSBkaWZmLCBidXQgdGhlICIKKyJ0YXJmaWxlIHRvIGNyZWF0ZSB0aGUgQjwuZHNjPi4gIFRoaXMgb3B0aW9uIG11c3QgYmUgdXNlZCB3aXRoIGNhcmUgLSBpZiB0aGUgIgorImRpcmVjdG9yeSBhbmQgdGFyZmlsZSBkbyBub3QgbWF0Y2ggYSBiYWQgc291cmNlIGFyY2hpdmUgd2lsbCBiZSBnZW5lcmF0ZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjMxNiBkcGtnLXNvdXJjZS4xOjM2OAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1zbj4iCittc2dzdHIgIkI8LUI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjMyMgorbXNnaWQgIiIKKyJTcGVjaWZpZXMgdG8gbm90IGxvb2sgZm9yIGFueSBvcmlnaW5hbCBzb3VyY2UsIGFuZCB0byBub3QgZ2VuZXJhdGUgYSBkaWZmLiAgIgorIlRoZSBzZWNvbmQgYXJndW1lbnQsIGlmIHN1cHBsaWVkLCBtdXN0IGJlIHRoZSBlbXB0eSBzdHJpbmcuIFRoaXMgaXMgdXNlZCBmb3IgIgorIkRlYmlhbi1zcGVjaWZpYyBwYWNrYWdlcyB3aGljaCBkbyBub3QgaGF2ZSBhIHNlcGFyYXRlIHVwc3RyZWFtIHNvdXJjZSBhbmQgIgorInRoZXJlZm9yZSBoYXZlIG5vIGRlYmlhbmlzYXRpb24gZGlmZnMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjMyMgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1zYT4gb3IgQjwtc0E+IgorbXNnc3RyICJCPC0taW5mbz4sIEI8LUk+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjM0OAorbXNnaWQgIiIKKyJTcGVjaWZpZXMgdG8gbG9vayBmb3IgdGhlIG9yaWdpbmFsIHNvdXJjZSBhcmNoaXZlIGFzIGEgdGFyZmlsZSBvciBhcyBhICIKKyJkaXJlY3RvcnkgLSB0aGUgc2Vjb25kIGFyZ3VtZW50LCBpZiBhbnksIG1heSBiZSBlaXRoZXIsIG9yIHRoZSBlbXB0eSBzdHJpbmcgIgorIih0aGlzIGlzIGVxdWl2YWxlbnQgdG8gdXNpbmcgQjwtc24+KS4gIElmIGEgdGFyZmlsZSBpcyBmb3VuZCBpdCB3aWxsIHVucGFjayAiCisiaXQgdG8gY3JlYXRlIHRoZSBkaWZmIGFuZCByZW1vdmUgaXQgYWZ0ZXJ3YXJkcyAodGhpcyBpcyBlcXVpdmFsZW50IHRvIEI8LSIKKyJzcD4pOyBpZiBhIGRpcmVjdG9yeSBpcyBmb3VuZCBpdCB3aWxsIHBhY2sgaXQgdG8gY3JlYXRlIHRoZSBvcmlnaW5hbCBzb3VyY2UgIgorImFuZCByZW1vdmUgaXQgYWZ0ZXJ3YXJkcyAodGhpcyBpcyBlcXVpdmFsZW50IHRvIEI8LXNyPik7IGlmIG5laXRoZXIgaXMgZm91bmQgIgorIml0IHdpbGwgYXNzdW1lIHRoYXQgdGhlIHBhY2thZ2UgaGFzIG5vIGRlYmlhbmlzYXRpb24gZGlmZnMsIG9ubHkgYSAiCisic3RyYWlnaHRmb3J3YXJkIHNvdXJjZSBhcmNoaXZlICh0aGlzIGlzIGVxdWl2YWxlbnQgdG8gQjwtc24+KS4gIElmIGJvdGggYXJlICIKKyJmb3VuZCB0aGVuIEI8ZHBrZy1zb3VyY2U+IHdpbGwgaWdub3JlIHRoZSBkaXJlY3RvcnksIG92ZXJ3cml0aW5nIGl0LCBpZiBCPC0iCisic0E+IHdhcyBzcGVjaWZpZWQgKHRoaXMgaXMgZXF1aXZhbGVudCB0byBCPC1zUD4pICBvciByYWlzZSBhbiBlcnJvciBpZiBCPC0iCisic2E+IHdhcyBzcGVjaWZpZWQuICBCPC1zQT4gaXMgdGhlIGRlZmF1bHQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjM0OCBkcGtnLXNvdXJjZS4xOjU0MQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1hYm9ydC1vbi11cHN0cmVhbS1jaGFuZ2VzPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjM1NAorbXNnaWQgIiIKKyJUaGUgcHJvY2VzcyBmYWlscyBpZiB0aGUgZ2VuZXJhdGVkIGRpZmYgY29udGFpbnMgY2hhbmdlcyB0byBmaWxlcyBvdXRzaWRlIG9mICIKKyJ0aGUgZGViaWFuIHN1Yi1kaXJlY3RvcnkuIFRoaXMgb3B0aW9uIGlzIG5vdCBhbGxvd2VkIGluIEI8ZGViaWFuL3NvdXJjZS8iCisib3B0aW9ucz4gYnV0IGNhbiBiZSB1c2VkIGluIEI8ZGViaWFuL3NvdXJjZS9sb2NhbC1vcHRpb25zPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6MzU1CisjLCBuby13cmFwCittc2dpZCAiQjxFeHRyYWN0IG9wdGlvbnMgKHdpdGggLXgpOj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTozNTkKK21zZ2lkICJJbiBhbGwgY2FzZXMgYW55IGV4aXN0aW5nIG9yaWdpbmFsIHNvdXJjZSB0cmVlIHdpbGwgYmUgcmVtb3ZlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTozNjUKK21zZ2lkICIiCisiVXNlZCB3aGVuIGV4dHJhY3RpbmcgdGhlbiB0aGUgb3JpZ2luYWwgc291cmNlIChpZiBhbnkpIHdpbGwgYmUgbGVmdCBhcyBhICIKKyJ0YXJmaWxlLiBJZiBpdCBpcyBub3QgYWxyZWFkeSBsb2NhdGVkIGluIHRoZSBjdXJyZW50IGRpcmVjdG9yeSBvciBpZiBhbiAiCisiZXhpc3RpbmcgYnV0IGRpZmZlcmVudCBmaWxlIGlzIHRoZXJlIGl0IHdpbGwgYmUgY29waWVkIHRoZXJlLiAgKEI8VGhpcyBpcyAiCisidGhlIGRlZmF1bHQ+KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTozNjgKK21zZ2lkICJVbnBhY2tzIHRoZSBvcmlnaW5hbCBzb3VyY2UgdHJlZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTozNzMKK21zZ2lkICIiCisiRW5zdXJlcyB0aGF0IHRoZSBvcmlnaW5hbCBzb3VyY2UgaXMgbmVpdGhlciBjb3BpZWQgdG8gdGhlIGN1cnJlbnQgZGlyZWN0b3J5ICIKKyJub3IgdW5wYWNrZWQuIEFueSBvcmlnaW5hbCBzb3VyY2UgdHJlZSB0aGF0IHdhcyBpbiB0aGUgY3VycmVudCBkaXJlY3RvcnkgaXMgIgorInN0aWxsIHJlbW92ZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6Mzc4Cittc2dpZCAiIgorIkFsbCB0aGUgQjwtcz5JPFg+IG9wdGlvbnMgYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZS4gSWYgeW91IHNwZWNpZnkgbW9yZSB0aGFuICIKKyJvbmUgb25seSB0aGUgbGFzdCBvbmUgd2lsbCBiZSB1c2VkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTozNzggZHBrZy1zb3VyY2UuMTo1NTUKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLXNraXAtZGViaWFuaXphdGlvbj4iCittc2dzdHIgIkI8ZHBrZy1kZWIgYWN0aW9ucz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MzgxCittc2dpZCAiU2tpcHMgYXBwbGljYXRpb24gb2YgdGhlIGRlYmlhbiBkaWZmIG9uIHRvcCBvZiB0aGUgdXBzdHJlYW0gc291cmNlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6MzgyCisjLCBuby13cmFwCittc2dpZCAiRm9ybWF0OiAyLjAiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTozODYKK21zZ2lkICIiCisiQWxzbyBrbm93biBhcyB3aWcmcGVuLiBUaGlzIGZvcm1hdCBpcyBub3QgcmVjb21tZW5kZWQgZm9yIHdpZGUtc3ByZWFkIHVzYWdlLCAiCisidGhlIGZvcm1hdCBcIjMuMCAocXVpbHQpXCIgcmVwbGFjZXMgaXQuIFdpZyZwZW4gd2FzIHRoZSBmaXJzdCBzcGVjaWZpY2F0aW9uICIKKyJvZiBhIG5ldy1nZW5lcmF0aW9uIHNvdXJjZSBwYWNrYWdlIGZvcm1hdC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTozOTEKK21zZ2lkICIiCisiVGhlIGJlaGF2aW91ciBvZiB0aGlzIGZvcm1hdCBpcyB0aGUgc2FtZSBhcyB0aGUgXCIzLjAgKHF1aWx0KVwiIGZvcm1hdCAiCisiZXhjZXB0IHRoYXQgaXQgZG9lc24ndCB1c2UgYW4gZXhwbGljaXQgbGlzdCBvZiBwYXRjaGVzLiBBbGwgZmlsZXMgaW4gIgorIkI8ZGViaWFuL3BhdGNoZXMvPiBtYXRjaGluZyB0aGUgcGVybCByZWd1bGFyIGV4cHJlc3Npb24gQjxbXFxldy1dKz4gbXVzdCBiZSAiCisidmFsaWQgcGF0Y2hlczogdGhleSBhcmUgYXBwbGllZCBhdCBleHRyYWN0aW9uIHRpbWUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6Mzk0Cittc2dpZCAiIgorIldoZW4gYnVpbGRpbmcgYSBuZXcgc291cmNlIHBhY2thZ2UsIGFueSBjaGFuZ2UgdG8gdGhlIHVwc3RyZWFtIHNvdXJjZSBpcyAiCisic3RvcmVkIGluIGEgcGF0Y2ggbmFtZWQgQjx6el9kZWJpYW4tZGlmZi1hdXRvPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6Mzk1CisjLCBuby13cmFwCittc2dpZCAiRm9ybWF0OiAzLjAgKG5hdGl2ZSkiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo0MDEKK21zZ2lkICIiCisiVGhpcyBmb3JtYXQgaXMgYW4gZXh0ZW5zaW9uIG9mIHRoZSBuYXRpdmUgcGFja2FnZSBmb3JtYXQgYXMgZGVmaW5lZCBpbiB0aGUgIgorIjEuMCBmb3JtYXQuIEl0IHN1cHBvcnRzIGFsbCBjb21wcmVzc2lvbiBtZXRob2RzIGFuZCB3aWxsIGlnbm9yZSBieSBkZWZhdWx0ICIKKyJhbnkgVkNTIHNwZWNpZmljIGZpbGVzIGFuZCBkaXJlY3RvcmllcyBhcyB3ZWxsIGFzIG1hbnkgdGVtcG9yYXJ5IGZpbGVzIChzZWUgIgorImRlZmF1bHQgdmFsdWUgYXNzb2NpYXRlZCB0byBCPC1JPiBvcHRpb24gaW4gdGhlIEI8LS1oZWxwPiBvdXRwdXQpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo0MDIKKyMsIG5vLXdyYXAKK21zZ2lkICJGb3JtYXQ6IDMuMCAocXVpbHQpIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NDA5Cittc2dpZCAiIgorIkEgc291cmNlIHBhY2thZ2UgaW4gdGhpcyBmb3JtYXQgY29udGFpbnMgYXQgbGVhc3QgYW4gb3JpZ2luYWwgdGFyYmFsbCAoQjwuIgorIm9yaWcudGFyLj5JPGV4dD4gd2hlcmUgSTxleHQ+IGNhbiBiZSBCPGd6PiwgQjxiejI+LCBCPGx6bWE+IGFuZCBCPHh6PikgYW5kIGEgIgorImRlYmlhbiB0YXJiYWxsIChCPC5kZWJpYW4udGFyLj5JPGV4dD4pLiBJdCBjYW4gYWxzbyBjb250YWluIGFkZGl0aW9uYWwgIgorIm9yaWdpbmFsIHRhcmJhbGxzIChCPC5vcmlnLT5JPGNvbXBvbmVudD5CPC50YXIuPkk8ZXh0PikuICBJPGNvbXBvbmVudD4gY2FuICIKKyJvbmx5IGNvbnRhaW4gYWxwaGFudW1lcmljIGNoYXJhY3RlcnMgYW5kIGRhc2hlcyAoXCItXCIpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjQyMAorbXNnaWQgIiIKKyJUaGUgbWFpbiBvcmlnaW5hbCB0YXJiYWxsIGlzIGV4dHJhY3RlZCBmaXJzdCwgdGhlbiBhbGwgYWRkaXRpb25hbCBvcmlnaW5hbCAiCisidGFyYmFsbHMgYXJlIGV4dHJhY3RlZCBpbiBzdWJkaXJlY3RvcmllcyBuYW1lZCBhZnRlciB0aGUgSTxjb21wb25lbnQ+IHBhcnQgIgorIm9mIHRoZWlyIGZpbGVuYW1lIChhbnkgcHJlLWV4aXN0aW5nIGRpcmVjdG9yeSBpcyByZXBsYWNlZCkuIFRoZSBkZWJpYW4gIgorInRhcmJhbGwgaXMgZXh0cmFjdGVkIG9uIHRvcCBvZiB0aGUgc291cmNlIGRpcmVjdG9yeSBhZnRlciBwcmlvciByZW1vdmFsIG9mICIKKyJhbnkgcHJlLWV4aXN0aW5nIEI8ZGViaWFuPiBkaXJlY3RvcnkuIE5vdGUgdGhhdCB0aGUgZGViaWFuIHRhcmJhbGwgbXVzdCAiCisiY29udGFpbiBhIEI8ZGViaWFuPiBzdWItZGlyZWN0b3J5IGJ1dCBpdCBjYW4gYWxzbyBjb250YWluIGJpbmFyeSBmaWxlcyAiCisib3V0c2lkZSBvZiB0aGF0IGRpcmVjdG9yeSAoc2VlIEI8LS1pbmNsdWRlLWJpbmFyaWVzPiBvcHRpb24pLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjQzMgorbXNnaWQgIiIKKyJBbGwgcGF0Y2hlcyBsaXN0ZWQgaW4gQjxkZWJpYW4vcGF0Y2hlcy9kZWJpYW4uc2VyaWVzPiBvciBCPGRlYmlhbi9wYXRjaGVzLyIKKyJzZXJpZXM+IGFyZSB0aGVuIGFwcGxpZWQuICBJZiB0aGUgZm9ybWVyIGZpbGUgaXMgdXNlZCBhbmQgdGhlIGxhdHRlciBvbmUgIgorImRvZXNuJ3QgZXhpc3QgKG9yIGlzIGEgc3ltbGluayksIHRoZW4gdGhlIGxhdHRlciBpcyByZXBsYWNlZCB3aXRoIGEgc3ltbGluayAiCisidG8gdGhlIGZvcm1lci4gVGhpcyBpcyBtZWFudCB0byBzaW1wbGlmeSB1c2FnZSBvZiBxdWlsdCB0byBtYW5hZ2UgdGhlIHNldCBvZiAiCisicGF0Y2hlcy4gTm90ZSBob3dldmVyIHRoYXQgd2hpbGUgQjxkcGtnLXNvdXJjZT4gcGFyc2VzIGNvcnJlY3RseSBzZXJpZXMgIgorImZpbGVzIHdpdGggZXhwbGljaXQgb3B0aW9ucyB1c2VkIGZvciBwYXRjaCBhcHBsaWNhdGlvbiAoc3RvcmVkIG9uIGVhY2ggbGluZSAiCisiYWZ0ZXIgdGhlIHBhdGNoIGZpbGVuYW1lIGFuZCBvbmUgb3IgbW9yZSBzcGFjZXMpLCBpdCBkb2VzIGlnbm9yZSB0aG9zZSAiCisib3B0aW9ucyBhbmQgYWx3YXlzIGV4cGVjdCBwYXRjaGVzIHRoYXQgY2FuIGJlIGFwcGxpZWQgd2l0aCB0aGUgQjwtcDE+IG9wdGlvbiAiCisib2YgQjxwYXRjaD4uIEl0IHdpbGwgdGh1cyBlbWl0IGEgd2FybmluZyB3aGVuIGl0IGVuY291bnRlcnMgc3VjaCBvcHRpb25zLCAiCisiYW5kIHRoZSBidWlsZCBpcyBsaWtlbHkgdG8gZmFpbC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo0MzQKK21zZ2lkICIiCisiU2ltaWxhcmx5IHRvIHF1aWx0J3MgZGVmYXVsdCBiZWhhdmlvdXIsIHRoZSBwYXRjaGVzIGNhbiByZW1vdmUgZmlsZXMgdG9vLiIKK21zZ3N0ciAiIgorCisjIHR5cGU6IFBsYWluIHRleHQKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NDM3Cittc2dpZCAiIgorIlRoZSBmaWxlIEI8LnBjL2FwcGxpZWQtcGF0Y2hlcz4gaXMgY3JlYXRlZCBpZiBzb21lIHBhdGNoZXMgaGF2ZSBiZWVuIGFwcGxpZWQgIgorImR1cmluZyB0aGUgZXh0cmFjdGlvbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo0NTEKK21zZ2lkICIiCisiQWxsIG9yaWdpbmFsIHRhcmJhbGxzIGZvdW5kIGluIHRoZSBjdXJyZW50IGRpcmVjdG9yeSBhcmUgZXh0cmFjdGVkIGluIGEgIgorInRlbXBvcmFyeSBkaXJlY3RvcnkgYnkgZm9sbG93aW5nIHRoZSBzYW1lIGxvZ2ljIGFzIGZvciB0aGUgdW5wYWNrLCB0aGUgIgorImRlYmlhbiBkaXJlY3RvcnkgaXMgY29waWVkIG92ZXIgaW4gdGhlIHRlbXBvcmFyeSBkaXJlY3RvcnksIGFuZCBhbGwgcGF0Y2hlcyAiCisiZXhjZXB0IHRoZSBhdXRvbWF0aWMgcGF0Y2ggKEI8ZGViaWFuLWNoYW5nZXMtPkk8dmVyc2lvbj4gb3IgQjxkZWJpYW4tIgorImNoYW5nZXM+LCBkZXBlbmRpbmcgb24gQjwtLXNpbmdsZS1kZWJpYW4tcGF0Y2g+KSBhcmUgYXBwbGllZC4gVGhlIHRlbXBvcmFyeSAiCisiZGlyZWN0b3J5IGlzIGNvbXBhcmVkIHRvIHRoZSBzb3VyY2UgcGFja2FnZSBkaXJlY3RvcnkuIFdoZW4gdGhlIGRpZmYgaXMgbm9uLSIKKyJlbXB0eSwgdGhlIGJ1aWxkIGZhaWxzIHVubGVzcyBCPC0tc2luZ2xlLWRlYmlhbi1wYXRjaD4gb3IgQjwtLWF1dG8tY29tbWl0PiAiCisiaGFzIGJlZW4gdXNlZCwgaW4gd2hpY2ggY2FzZSB0aGUgZGlmZiBpcyBzdG9yZWQgaW4gdGhlIGF1dG9tYXRpYyBwYXRjaC4gIElmICIKKyJ0aGUgYXV0b21hdGljIHBhdGNoIGlzIGNyZWF0ZWQvZGVsZXRlZCwgaXQncyBhZGRlZC9yZW1vdmVkIGZyb20gdGhlIHNlcmllcyAiCisiZmlsZSBhbmQgZnJvbSB0aGUgcXVpbHQgbWV0YWRhdGEuIgorbXNnc3RyICIiCisKKyMgdHlwZTogUGxhaW4gdGV4dAorIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo0NTkKK21zZ2lkICIiCisiQW55IGNoYW5nZSBvbiBhIGJpbmFyeSBmaWxlIGlzIG5vdCByZXByZXNlbnRhYmxlIGluIGEgZGlmZiBhbmQgd2lsbCB0aHVzICIKKyJsZWFkIHRvIGEgZmFpbHVyZSB1bmxlc3MgdGhlIG1haW50YWluZXIgZGVsaWJlcmF0ZWx5IGRlY2lkZWQgdG8gaW5jbHVkZSB0aGF0ICIKKyJtb2RpZmllZCBiaW5hcnkgZmlsZSBpbiB0aGUgZGViaWFuIHRhcmJhbGwgKGJ5IGxpc3RpbmcgaXQgaW4gQjxkZWJpYW4vc291cmNlLyIKKyJpbmNsdWRlLWJpbmFyaWVzPikuIFRoZSBidWlsZCB3aWxsIGFsc28gZmFpbCBpZiBpdCBmaW5kcyBiaW5hcnkgZmlsZXMgaW4gdGhlICIKKyJkZWJpYW4gc3ViLWRpcmVjdG9yeSB1bmxlc3MgdGhleSBoYXZlIGJlZW4gd2hpdGVsaXN0ZWQgdGhyb3VnaCBCPGRlYmlhbi8iCisic291cmNlL2luY2x1ZGUtYmluYXJpZXM+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjQ2MgorbXNnaWQgIiIKKyJUaGUgdXBkYXRlZCBkZWJpYW4gZGlyZWN0b3J5IGFuZCB0aGUgbGlzdCBvZiBtb2RpZmllZCBiaW5hcmllcyBpcyB0aGVuIHVzZWQgIgorInRvIGdlbmVyYXRlIHRoZSBkZWJpYW4gdGFyYmFsbC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo0NjgKK21zZ2lkICIiCisiVGhlIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGRpZmYgZG9lc24ndCBpbmNsdWRlIGNoYW5nZXMgb24gVkNTIHNwZWNpZmljICIKKyJmaWxlcyBhcyB3ZWxsIGFzIG1hbnkgdGVtcG9yYXJ5IGZpbGVzIChzZWUgZGVmYXVsdCB2YWx1ZSBhc3NvY2lhdGVkIHRvIEI8LWk+ICIKKyJvcHRpb24gaW4gdGhlIEI8LS1oZWxwPiBvdXRwdXQpLiBJbiBwYXJ0aWN1bGFyLCB0aGUgQjwucGM+IGRpcmVjdG9yeSB1c2VkIGJ5ICIKKyJxdWlsdCBpcyBpZ25vcmVkIGR1cmluZyBnZW5lcmF0aW9uIG9mIHRoZSBhdXRvbWF0aWMgcGF0Y2guIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NDc3Cittc2dpZCAiIgorIk5vdGU6IEI8ZHBrZy1zb3VyY2U+IEI8LS1iZWZvcmUtYnVpbGQ+IChhbmQgQjwtYj4pIHdpbGwgZW5zdXJlIHRoYXQgYWxsICIKKyJwYXRjaGVzIGxpc3RlZCBpbiB0aGUgc2VyaWVzIGZpbGUgYXJlIGFwcGxpZWQgc28gdGhhdCBhIHBhY2thZ2UgYnVpbGQgYWx3YXlzICIKKyJoYXMgYWxsIHBhdGNoZXMgYXBwbGllZC4gSXQgZG9lcyB0aGlzIGJ5IGZpbmRpbmcgdW5hcHBsaWVkIHBhdGNoZXMgKHRoZXkgYXJlICIKKyJsaXN0ZWQgaW4gdGhlIEI8c2VyaWVzPiBmaWxlIGJ1dCBub3QgaW4gQjwucGMvYXBwbGllZC1wYXRjaGVzPiksIGFuZCBpZiB0aGUgIgorImZpcnN0IHBhdGNoIGluIHRoYXQgc2V0IGNhbiBiZSBhcHBsaWVkIHdpdGhvdXQgZXJyb3JzLCBpdCB3aWxsIGFwcGx5IHRoZW0gIgorImFsbC4gVGhlIG9wdGlvbiBCPC0tbm8tcHJlcGFyYXRpb24+IGNhbiBiZSB1c2VkIHRvIGRpc2FibGUgdGhpcyBiZWhhdmlvci4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo0ODAKK21zZ2lkICJCPFJlY29yZGluZyBjaGFuZ2VzPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTo0ODAKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWNvbW1pdD4gW0k8ZGlyZWN0b3J5Pl0gW0k8cGF0Y2gtbmFtZT5dIFtJPHBhdGNoLWZpbGU+XSIKK21zZ3N0ciAiQjxkcGtnLWRlYj4gQjwtST58QjwtLWluZm8+IEk8YXJjaGl2ZT4gW0k8Y29udHJvbC1maWxlLW5hbWU+IC4uXSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo0OTAKK21zZ2lkICIiCisiR2VuZXJhdGVzIGEgcGF0Y2ggY29ycmVzcG9uZGluZyB0byB0aGUgbG9jYWwgY2hhbmdlcyB0aGF0IGFyZSBub3QgbWFuYWdlZCBieSAiCisidGhlIHF1aWx0IHBhdGNoIHN5c3RlbSBhbmQgaW50ZWdyYXRlcyBpdCBpbiB0aGUgcGF0Y2ggc3lzdGVtIHVuZGVyIHRoZSBuYW1lICIKKyJJPHBhdGNoLW5hbWU+LiBJZiB0aGUgbmFtZSBpcyBtaXNzaW5nLCBpdCB3aWxsIGJlIGFza2VkIGludGVyYWN0aXZlbHkuIElmICIKKyJJPHBhdGNoLWZpbGU+IGlzIGdpdmVuLCBpdCBpcyB1c2VkIGFzIHRoZSBwYXRjaCBjb3JyZXNwb25kaW5nIHRvIHRoZSBsb2NhbCAiCisiY2hhbmdlcyB0byBpbnRlZ3JhdGUuIFRoaXMgaXMgbWFpbmx5IHVzZWZ1bCBhZnRlciBhIGJ1aWxkIGZhaWx1cmUgdGhhdCBwcmUtIgorImdlbmVyYXRlZCB0aGlzIGZpbGUuIE9uY2UgaW50ZWdyYXRlZCwgYW4gZWRpdG9yIGlzIGxhdW5jaGVkIHNvIHRoYXQgeW91IGNhbiAiCisiZWRpdCB0aGUgbWV0YS1pbmZvcm1hdGlvbiBpbiB0aGUgcGF0Y2ggaGVhZGVyLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjQ5MyBkcGtnLXNvdXJjZS4xOjU2NyBkcGtnLXNvdXJjZS4xOjYwNgorIywgZnV6enkKK21zZ2lkICJCPEJ1aWxkIG9wdGlvbnM+IgorbXNnc3RyICJCPGRwa2c+IFtJPG9wdGlvbnM+XSBJPGFjdGlvbj4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjQ5MworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tYWxsb3ctdmVyc2lvbi1vZi1xdWlsdC1kYj0+STx2ZXJzaW9uPiIKK21zZ3N0ciAiQjwtdiwgLS12ZXJzaW9uPiIKKworIyB0eXBlOiBQbGFpbiB0ZXh0CisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjUwMQorbXNnaWQgIiIKKyJBbGxvdyBCPGRwa2ctc291cmNlPiB0byBidWlsZCB0aGUgc291cmNlIHBhY2thZ2UgaWYgdGhlIHZlcnNpb24gb2YgdGhlIHF1aWx0ICIKKyJtZXRhZGF0YSBpcyB0aGUgb25lIHNwZWNpZmllZCwgZXZlbiBpZiBCPGRwa2ctc291cmNlPiBkb2Vzbid0IGtub3cgYWJvdXQgaXQuICIKKyJFZmZlY3RpdmVseSB0aGlzIHNheXMgdGhhdCB0aGUgZ2l2ZW4gdmVyc2lvbiBvZiB0aGUgcXVpbHQgbWV0YWRhdGEgaXMgIgorImNvbXBhdGlibGUgd2l0aCB0aGUgdmVyc2lvbiAyIHRoYXQgQjxkcGtnLXNvdXJjZT4gY3VycmVudGx5IHN1cHBvcnRzLiBUaGUgIgorInZlcnNpb24gb2YgdGhlIHF1aWx0IG1ldGFkYXRhIGlzIHN0b3JlZCBpbiBCPC5wYy8udmVyc2lvbj4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjUwMQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0taW5jbHVkZS1yZW1vdmFsPiIKK21zZ3N0ciAiQjxkcGtnIC0tY2xlYXItYXZhaWw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjUwNQorbXNnaWQgIiIKKyJEbyBub3QgaWdub3JlIHJlbW92ZWQgZmlsZXMgYW5kIGluY2x1ZGUgdGhlbSBpbiB0aGUgYXV0b21hdGljYWxseSBnZW5lcmF0ZWQgIgorInBhdGNoLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTo1MDUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0taW5jbHVkZS10aW1lc3RhbXA+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTA4Cittc2dpZCAiSW5jbHVkZSB0aW1lc3RhbXAgaW4gdGhlIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIHBhdGNoLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTo1MDgKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWluY2x1ZGUtYmluYXJpZXM+IgorbXNnc3RyICJCPGluZm9kZXNjPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1MTMKK21zZ2lkICIiCisiQWRkIGFsbCBtb2RpZmllZCBiaW5hcmllcyBpbiB0aGUgZGViaWFuIHRhcmJhbGwuIEFsc28gYWRkIHRoZW0gdG8gQjxkZWJpYW4vIgorInNvdXJjZS9pbmNsdWRlLWJpbmFyaWVzPjogdGhleSB3aWxsIGJlIGFkZGVkIGJ5IGRlZmF1bHQgaW4gc3Vic2VxdWVudCBidWlsZHMgIgorImFuZCB0aGlzIG9wdGlvbiBpcyB0aHVzIG5vIG1vcmUgbmVlZGVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTo1MTMKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLW5vLXByZXBhcmF0aW9uPiIKK21zZ3N0ciAiQjwtLXZlcnNpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjUxNworbXNnaWQgIiIKKyJEbyBub3QgdHJ5IHRvIHByZXBhcmUgdGhlIGJ1aWxkIHRyZWUgYnkgYXBwbHlpbmcgcGF0Y2hlcyB3aGljaCBhcmUgIgorImFwcGFyZW50bHkgdW5hcHBsaWVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTo1MTcKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLXNpbmdsZS1kZWJpYW4tcGF0Y2g+IgorbXNnc3RyICJCPGRwa2ctZGViIGFjdGlvbnM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjUyOAorbXNnaWQgIiIKKyJVc2UgQjxkZWJpYW4vcGF0Y2hlcy9kZWJpYW4tY2hhbmdlcz4gaW5zdGVhZCBvZiBCPGRlYmlhbi9wYXRjaGVzL2RlYmlhbi0iCisiY2hhbmdlcy0+STx2ZXJzaW9uPiBmb3IgdGhlIG5hbWUgb2YgdGhlIGF1dG9tYXRpYyBwYXRjaCBnZW5lcmF0ZWQgZHVyaW5nICIKKyJidWlsZC4gVGhpcyBvcHRpb24gaXMgcGFydGljdWxhcmx5IHVzZWZ1bCB3aGVuIHRoZSBwYWNrYWdlIGlzIG1haW50YWluZWQgaW4gIgorImEgVkNTIGFuZCBhIHBhdGNoIHNldCBjYW4ndCByZWxpYWJseSBiZSBnZW5lcmF0ZWQuIEluc3RlYWQgdGhlIGN1cnJlbnQgZGlmZiAiCisid2l0aCB1cHN0cmVhbSBzaG91bGQgYmUgc3RvcmVkIGluIGEgc2luZ2xlIHBhdGNoLiBUaGUgb3B0aW9uIHdvdWxkIGJlIHB1dCBpbiAiCisiQjxkZWJpYW4vc291cmNlL2xvY2FsLW9wdGlvbnM+IGFuZCB3b3VsZCBiZSBhY2NvbXBhbmllZCBieSBhIEI8ZGViaWFuL3NvdXJjZS8iCisibG9jYWwtcGF0Y2gtaGVhZGVyPiBmaWxlIGV4cGxhaW5pbmcgaG93IHRoZSBEZWJpYW4gY2hhbmdlcyBjYW4gYmUgYmVzdCAiCisicmV2aWV3ZWQsIGZvciBleGFtcGxlIGluIHRoZSBWQ1MgdGhhdCBpcyB1c2VkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTo1MjgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tY3JlYXRlLWVtcHR5LW9yaWc+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTM0Cittc2dpZCAiIgorIkF1dG9tYXRpY2FsbHkgY3JlYXRlIHRoZSBtYWluIG9yaWdpbmFsIHRhcmJhbGwgYXMgZW1wdHkgaWYgaXQncyBtaXNzaW5nIGFuZCAiCisiaWYgdGhlcmUgYXJlIHN1cHBsZW1lbnRhcnkgb3JpZ2luYWwgdGFyYmFsbHMuIFRoaXMgb3B0aW9uIGlzIG1lYW50IHRvIGJlICIKKyJ1c2VkIHdoZW4gdGhlIHNvdXJjZSBwYWNrYWdlIGlzIGp1c3QgYSBidW5kbGUgb2YgbXVsdGlwbGUgdXBzdHJlYW0gc29mdHdhcmUgIgorImFuZCB3aGVyZSB0aGVyZSdzIG5vIFwibWFpblwiIHNvZnR3YXJlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTo1MzQKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLXVuYXBwbHktcGF0Y2hlcz4iCittc2dzdHIgIkI8LS11cGRhdGU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjU0MQorbXNnaWQgIiIKKyJVbmFwcGx5IHRoZSBwYXRjaGVzIGluIHRoZSBCPC0tYWZ0ZXItYnVpbGQ+IGhvb2suIFlvdSB1c3VhbGx5IGRvbid0IG5lZWQgIgorInRoaXMgb3B0aW9uIGFzIGRwa2ctc291cmNlIHdpbGwgYXV0b21hdGljYWxseSB1bmFwcGx5IHRoZSBwYXRjaGVzIGlmIGl0IGRpZCAiCisiYXBwbHkgdGhlbSBkdXJpbmcgQjwtLWJlZm9yZS1idWlsZD4uIFRoaXMgb3B0aW9uIGlzIG9ubHkgYWxsb3dlZCBpbiBCPGRlYmlhbi8iCisic291cmNlL2xvY2FsLW9wdGlvbnM+IHNvIHRoYXQgYWxsIGdlbmVyYXRlZCBzb3VyY2UgcGFja2FnZXMgaGF2ZSB0aGUgc2FtZSAiCisiYmVoYXZpb3IgYnkgZGVmYXVsdC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1NDgKK21zZ2lkICIiCisiVGhlIHByb2Nlc3MgZmFpbHMgaWYgYW4gYXV0b21hdGljIHBhdGNoIGhhcyBiZWVuIGdlbmVyYXRlZC4gVGhpcyBvcHRpb24gY2FuICIKKyJiZSB1c2VkIHRvIGVuc3VyZSB0aGF0IGFsbCBjaGFuZ2VzIHdlcmUgcHJvcGVybHkgcmVjb3JkZWQgaW4gc2VwYXJhdGUgcXVpbHQgIgorInBhdGNoZXMgcHJpb3IgdG8gdGhlIHNvdXJjZSBwYWNrYWdlIGJ1aWxkLiBUaGlzIG9wdGlvbiBpcyBub3QgYWxsb3dlZCBpbiAiCisiQjxkZWJpYW4vc291cmNlL29wdGlvbnM+IGJ1dCBjYW4gYmUgdXNlZCBpbiBCPGRlYmlhbi9zb3VyY2UvbG9jYWwtb3B0aW9ucz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjU0OAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tYXV0by1jb21taXQ+IgorbXNnc3RyICJCPC0tbm9jaGVjaz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTUyCittc2dpZCAiIgorIlRoZSBwcm9jZXNzIGRvZXNuJ3QgZmFpbCBpZiBhbiBhdXRvbWF0aWMgcGF0Y2ggaGFzIGJlZW4gZ2VuZXJhdGVkLCBpbnN0ZWFkICIKKyJpdCdzIGltbWVkaWF0ZWx5IHJlY29yZGVkIGluIHRoZSBxdWlsdCBzZXJpZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTU1Cittc2dpZCAiQjxFeHRyYWN0IG9wdGlvbnM+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTU4Cittc2dpZCAiU2tpcHMgZXh0cmFjdGlvbiBvZiB0aGUgZGViaWFuIHRhcmJhbGwgb24gdG9wIG9mIHRoZSB1cHN0cmVhbSBzb3VyY2VzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTo1NTgKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLXNraXAtcGF0Y2hlcz4iCittc2dzdHIgIkI8LS11cGRhdGU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjU2MQorbXNnaWQgIkRvIG5vdCBhcHBseSBwYXRjaGVzIGF0IHRoZSBlbmQgb2YgdGhlIGV4dHJhY3Rpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjU2MgorIywgbm8td3JhcAorbXNnaWQgIkZvcm1hdDogMy4wIChjdXN0b20pIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTY1Cittc2dpZCAiIgorIlRoaXMgZm9ybWF0IGlzIHNwZWNpYWwuIEl0IGRvZXNuJ3QgcmVwcmVzZW50IGEgcmVhbCBzb3VyY2UgcGFja2FnZSBmb3JtYXQgIgorImJ1dCBjYW4gYmUgdXNlZCB0byBjcmVhdGUgc291cmNlIHBhY2thZ2VzIHdpdGggYXJiaXRyYXJ5IGZpbGVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjU3MQorbXNnaWQgIiIKKyJBbGwgbm9uLW9wdGlvbiBhcmd1bWVudHMgYXJlIHRha2VuIGFzIGZpbGVzIHRvIGludGVncmF0ZSBpbiB0aGUgZ2VuZXJhdGVkICIKKyJzb3VyY2UgcGFja2FnZS4gVGhleSBtdXN0IGV4aXN0IGFuZCBhcmUgcHJlZmVyYWJseSBpbiB0aGUgY3VycmVudCBkaXJlY3RvcnkuICIKKyJBdCBsZWFzdCBvbmUgZmlsZSBtdXN0IGJlIGdpdmVuLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTo1NzEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLXRhcmdldC1mb3JtYXQ9Pkk8dmFsdWU+IgorbXNnc3RyICJCPC0tYWJvcnQtYWZ0ZXI9Pkk8bnVtYmVyPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1NzYKK21zZ2lkICIiCisiQjxSZXF1aXJlZD4uIERlZmluZXMgdGhlIHJlYWwgZm9ybWF0IG9mIHRoZSBnZW5lcmF0ZWQgc291cmNlIHBhY2thZ2UuICBUaGUgIgorImdlbmVyYXRlZCAuZHNjIGZpbGUgd2lsbCBjb250YWluIHRoaXMgdmFsdWUgaW4gaXRzIEk8Rm9ybWF0PiBmaWVsZCBhbmQgbm90ICIKKyJcIjMuMCAoY3VzdG9tKVwiLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo1NzcKKyMsIG5vLXdyYXAKK21zZ2lkICJGb3JtYXQ6IDMuMCAoZ2l0KSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjU3OQorbXNnaWQgIlRoaXMgZm9ybWF0IGlzIGV4cGVyaW1lbnRhbC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1ODQKK21zZ2lkICIiCisiQSBzb3VyY2UgcGFja2FnZSBpbiB0aGlzIGZvcm1hdCBjb25zaXN0cyBvZiBhIHNpbmdsZSBidW5kbGUgb2YgYSBnaXQgIgorInJlcG9zaXRvcnkgQjwuZ2l0PiB0byBob2xkIHRoZSBzb3VyY2Ugb2YgYSBwYWNrYWdlLiAgVGhlcmUgbWF5IGFsc28gYmUgYSBCPC4iCisiZ2l0c2hhbGxvdz4gZmlsZSBsaXN0aW5nIHJldmlzaW9ucyBmb3IgYSBzaGFsbG93IGdpdCBjbG9uZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1OTAKK21zZ2lkICIiCisiVGhlIGJ1bmRsZSBpcyBjbG9uZWQgYXMgYSBnaXQgcmVwb3NpdG9yeSB0byB0aGUgdGFyZ2V0IGRpcmVjdG9yeS4gIElmIHRoZXJlICIKKyJpcyBhIGdpdHNoYWxsb3cgZmlsZSwgaXQgaXMgaW5zdGFsbGVkIGFzIGAuZ2l0L3NoYWxsb3dgIGluc2lkZSB0aGUgY2xvbmVkICIKKyJnaXQgcmVwb3NpdG9yeS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1OTUKK21zZ2lkICIiCisiTm90ZSB0aGF0IGJ5IGRlZmF1bHQgdGhlIG5ldyByZXBvc2l0b3J5IHdpbGwgaGF2ZSB0aGUgc2FtZSBicmFuY2ggY2hlY2tlZCAiCisib3V0IHRoYXQgd2FzIGNoZWNrZWQgb3V0IGluIHRoZSBvcmlnaW5hbCBzb3VyY2UuIChUeXBpY2FsbHkgXCJtYXN0ZXJcIiwgYnV0ICIKKyJpdCBjb3VsZCBiZSBhbnl0aGluZy4pIEFueSBvdGhlciBicmFuY2hlcyB3aWxsIGJlIGF2YWlsYWJsZSB1bmRlciBgcmVtb3Rlcy8iCisib3JpZ2luL2AuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NjAwIGRwa2ctc291cmNlLjE6NjMzCittc2dpZCAiIgorIkJlZm9yZSBnb2luZyBhbnkgZnVydGhlciwgc29tZSBjaGVja3MgYXJlIGRvbmUgdG8gZW5zdXJlIHRoYXQgd2UgZG9uJ3QgaGF2ZSAiCisiYW55IG5vbi1pZ25vcmVkIHVuY29tbWl0dGVkIGNoYW5nZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NjA0Cittc2dpZCAiIgorIkI8Z2l0LWJ1bmRsZT4oMSkgaXMgdXNlZCB0byBnZW5lcmF0ZSBhIGJ1bmRsZSBvZiB0aGUgZ2l0IHJlcG9zaXRvcnkuICBCeSAiCisiZGVmYXVsdCwgYWxsIGJyYW5jaGVzIGFuZCB0YWdzIGluIHRoZSByZXBvc2l0b3J5IGFyZSBpbmNsdWRlZCBpbiB0aGUgYnVuZGxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTo2MDYKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWdpdC1yZWY9Pkk8cmVmPiIKK21zZ3N0ciAiQjwtLWFib3J0LWFmdGVyPT5JPG51bWJlcj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NjE2Cittc2dpZCAiIgorIkFsbG93cyBzcGVjaWZ5aW5nIGEgZ2l0IHJlZiB0byBpbmNsdWRlIGluIHRoZSBnaXQgYnVuZGxlLiBVc2UgZGlzYWJsZXMgdGhlICIKKyJkZWZhdWx0IGJlaGF2aW9yIG9mIGluY2x1ZGluZyBhbGwgYnJhbmNoZXMgYW5kIHRhZ3MuIE1heSBiZSBzcGVjaWZpZWQgIgorIm11bHRpcGxlIHRpbWVzLiBUaGUgSTxyZWY+IGNhbiBiZSB0aGUgbmFtZSBvZiBhIGJyYW5jaCBvciB0YWcgdG8gaW5jbHVkZS4gSXQgIgorIm1heSBhbHNvIGJlIGFueSBwYXJhbWV0ZXIgdGhhdCBjYW4gYmUgcGFzc2VkIHRvIEI8Z2l0LXJldi1saXN0PigxKS4gRm9yICIKKyJleGFtcGxlLCB0byBpbmNsdWRlIG9ubHkgdGhlIG1hc3RlciBicmFuY2gsIHVzZSAtLWdpdC1yZWY9bWFzdGVyLiBUbyBpbmNsdWRlICIKKyJhbGwgdGFncyBhbmQgYnJhbmNoZXMsIGV4Y2VwdCBmb3IgdGhlIHByaXZhdGUgYnJhbmNoLCB1c2UgLS1naXQtcmVmPS0tYWxsIC0tIgorImdpdC1yZWY9XnByaXZhdGUiCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NjE2CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8LS1hYm9ydC1hZnRlcj0+STxudW1iZXI+IgorbXNnaWQgIkI8LS1naXQtZGVwdGg9Pkk8bnVtYmVyPiIKK21zZ3N0ciAiQjwtLWFib3J0LWFmdGVyPT5JPG51bWJlcj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NjIwCittc2dpZCAiIgorIkNyZWF0ZXMgYSBzaGFsbG93IGNsb25lIHdpdGggYSBoaXN0b3J5IHRydW5jYXRlZCB0byB0aGUgc3BlY2lmaWVkIG51bWJlciBvZiAiCisicmV2aXNpb25zLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo2MjAKKyMsIG5vLXdyYXAKK21zZ2lkICJGb3JtYXQ6IDMuMCAoYnpyKSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjYyMworbXNnaWQgIiIKKyJUaGlzIGZvcm1hdCBpcyBleHBlcmltZW50YWwuIEl0IGdlbmVyYXRlcyBhIHNpbmdsZSB0YXJiYWxsIGNvbnRhaW5pbmcgdGhlICIKKyJienIgcmVwb3NpdG9yeS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2MjgKK21zZ2lkICIiCisiVGhlIHRhcmJhbGwgaXMgdW5wYWNrZWQgYW5kIHRoZW4gYnpyIGlzIHVzZWQgdG8gY2hlY2tvdXQgdGhlIGN1cnJlbnQgYnJhbmNoLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjYzNworbXNnaWQgIiIKKyJUaGVuIHRoZSBWQ1Mgc3BlY2lmaWMgcGFydCBvZiB0aGUgc291cmNlIGRpcmVjdG9yeSBpcyBjb3BpZWQgb3ZlciB0byBhICIKKyJ0ZW1wb3JhcnkgZGlyZWN0b3J5LiBCZWZvcmUgdGhpcyB0ZW1wb3JhcnkgZGlyZWN0b3J5IGlzIHBhY2tlZCBpbiBhIHRhcmJhbGwsICIKKyJ2YXJpb3VzIGNsZWFudXAgYXJlIGRvbmUgdG8gc2F2ZSBzcGFjZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctc291cmNlLjE6NjM3CisjLCBuby13cmFwCittc2dpZCAiV0FSTklOR1MgQU5EIEVSUk9SUyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo2MzgKKyMsIG5vLXdyYXAKK21zZ2lkICJubyBzb3VyY2UgZm9ybWF0IHNwZWNpZmllZCBpbiBkZWJpYW4vc291cmNlL2Zvcm1hdCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjY0NAorbXNnaWQgIiIKKyJUaGUgZmlsZSBCPGRlYmlhbi9zb3VyY2UvZm9ybWF0PiBzaG91bGQgYWx3YXlzIGV4aXN0IGFuZCBpbmRpY2F0ZSB0aGUgIgorImRlc2lyZWQgc291cmNlIGZvcm1hdC4gRm9yIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5LCBmb3JtYXQgXCIxLjBcIiBpcyAiCisiYXNzdW1lZCB3aGVuIHRoZSBmaWxlIGRvZXNuJ3QgZXhpc3QgYnV0IHlvdSBzaG91bGQgbm90IHJlbHkgb24gdGhpczogYXQgc29tZSAiCisicG9pbnQgaW4gdGhlIGZ1dHVyZSBkcGtnLXNvdXJjZSB3aWxsIGJlIG1vZGlmaWVkIHRvIGZhaWwgd2hlbiB0aGF0IGZpbGUgIgorImRvZXNuJ3QgZXhpc3QuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NjUwCittc2dpZCAiIgorIlRoZSByYXRpb25hbGUgaXMgdGhhdCBmb3JtYXQgXCIxLjBcIiBpcyBubyBsb25nZXIgdGhlIHJlY29tbWVuZGVkIGZvcm1hdCwgIgorInlvdSBzaG91bGQgdXN1YWxseSBwaWNrIG9uZSBvZiB0aGUgbmV3ZXIgZm9ybWF0cyAoXCIzLjAgKHF1aWx0KVwiLCBcIjMuMCAiCisiKG5hdGl2ZSlcIikgYnV0IEI8ZHBrZy1zb3VyY2U+IHdpbGwgbm90IGRvIHRoaXMgYXV0b21hdGljYWxseSBmb3IgeW91LiAgSWYgIgorInlvdSB3YW50IHRvIGNvbnRpbnVlIHVzaW5nIHRoZSBvbGQgZm9ybWF0LCB5b3Ugc2hvdWxkIGJlIGV4cGxpY2l0IGFib3V0IGl0ICIKKyJhbmQgcHV0IFwiMS4wXCIgaW4gQjxkZWJpYW4vc291cmNlL2Zvcm1hdD4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjY1MAorIywgbm8td3JhcAorbXNnaWQgInRoZSBkaWZmIG1vZGlmaWVzIHRoZSBmb2xsb3dpbmcgdXBzdHJlYW0gZmlsZXMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2NTcKK21zZ2lkICIiCisiV2hlbiB1c2luZyBzb3VyY2UgZm9ybWF0IFwiMS4wXCIgaXQgaXMgdXN1YWxseSBhIGJhZCBpZGVhIHRvIG1vZGlmeSB1cHN0cmVhbSAiCisiZmlsZXMgZGlyZWN0bHkgYXMgdGhlIGNoYW5nZXMgZW5kIHVwIGhpZGRlbiBhbmQgbW9zdGx5IHVuZG9jdW1lbnRlZCBpbiB0aGUgLiIKKyJkaWZmLmd6IGZpbGUuIEluc3RlYWQgeW91IHNob3VsZCBzdG9yZSB5b3VyIGNoYW5nZXMgYXMgcGF0Y2hlcyBpbiB0aGUgZGViaWFuICIKKyJkaXJlY3RvcnkgYW5kIGFwcGx5IHRoZW0gYXQgYnVpbGQtdGltZS4gVG8gYXZvaWQgdGhpcyBjb21wbGV4aXR5IHlvdSBjYW4gIgorImFsc28gdXNlIHRoZSBmb3JtYXQgXCIzLjAgKHF1aWx0KVwiIHRoYXQgb2ZmZXJzIHRoaXMgbmF0aXZlbHkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjY1NworIywgbm8td3JhcAorbXNnaWQgImNhbm5vdCByZXByZXNlbnQgY2hhbmdlIHRvIEk8ZmlsZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2NjMKK21zZ2lkICIiCisiQ2hhbmdlcyB0byB1cHN0cmVhbSBzb3VyY2VzIGFyZSB1c3VhbGx5IHN0b3JlZCB3aXRoIHBhdGNoIGZpbGVzLCBidXQgbm90IGFsbCAiCisiY2hhbmdlcyBjYW4gYmUgcmVwcmVzZW50ZWQgd2l0aCBwYXRjaGVzOiB0aGV5IGNhbiBvbmx5IGFsdGVyIHRoZSBjb250ZW50IG9mICIKKyJwbGFpbiB0ZXh0IGZpbGVzLiBJZiB5b3UgdHJ5IHJlcGxhY2luZyBhIGZpbGUgd2l0aCBzb21ldGhpbmcgb2YgYSBkaWZmZXJlbnQgIgorInR5cGUgKGZvciBleGFtcGxlIHJlcGxhY2luZyBhIHBsYWluIGZpbGUgd2l0aCBhIHN5bWxpbmsgb3IgYSBkaXJlY3RvcnkpLCB5b3UgIgorIndpbGwgZ2V0IHRoaXMgZXJyb3IgbWVzc2FnZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6NjYzCisjLCBuby13cmFwCittc2dpZCAibmV3bHkgY3JlYXRlZCBlbXB0eSBmaWxlIEk8ZmlsZT4gd2lsbCBub3QgYmUgcmVwcmVzZW50ZWQgaW4gZGlmZiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjY2NgorbXNnaWQgIiIKKyJFbXB0eSBmaWxlcyBjYW4ndCBiZSBjcmVhdGVkIHdpdGggcGF0Y2ggZmlsZXMuIFRodXMgdGhpcyBjaGFuZ2UgaXMgbm90ICIKKyJyZWNvcmRlZCBpbiB0aGUgc291cmNlIHBhY2thZ2UgYW5kIHlvdSBhcmUgd2FybmVkIGFib3V0IGl0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo2NjYKKyMsIG5vLXdyYXAKK21zZ2lkICJleGVjdXRhYmxlIG1vZGUgSTxwZXJtcz4gb2YgSTxmaWxlPiB3aWxsIG5vdCBiZSByZXByZXNlbnRlZCBpbiBkaWZmIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjY2NworIywgbm8td3JhcAorbXNnaWQgInNwZWNpYWwgbW9kZSBJPHBlcm1zPiBvZiBJPGZpbGU+IHdpbGwgbm90IGJlIHJlcHJlc2VudGVkIGluIGRpZmYiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2NzEKK21zZ2lkICIiCisiUGF0Y2ggZmlsZXMgZG8gbm90IHJlY29yZCBwZXJtaXNzaW9ucyBvZiBmaWxlcyBhbmQgdGh1cyBtb2RpZmllZCBwZXJtaXNzaW9ucyAiCisiYXJlIG5vdCBzdG9yZWQgaW4gdGhlIHNvdXJjZSBwYWNrYWdlLiBUaGlzIHdhcm5pbmcgcmVtaW5kcyB5b3Ugb2YgdGhhdCBmYWN0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1zb3VyY2UuMTo2NzEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiRklMRSBGT1JNQVRTIgorbXNnc3RyICLjg5Xjgqnjg7zjg57jg4Pjg4giCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjY3MgorIywgbm8td3JhcAorbXNnaWQgImRlYmlhbi9zb3VyY2UvZm9ybWF0IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6Njc2Cittc2dpZCAiIgorIlRoaXMgZmlsZSBjb250YWlucyBvbiBhIHNpbmdsZSBsaW5lIHRoZSBmb3JtYXQgdGhhdCBzaG91bGQgYmUgdXNlZCB0byBidWlsZCAiCisidGhlIHNvdXJjZSBwYWNrYWdlIChwb3NzaWJsZSBmb3JtYXRzIGFyZSBkZXNjcmliZWQgYWJvdmUpLiBObyBsZWFkaW5nIG9yICIKKyJ0cmFpbGluZyBzcGFjZXMgYXJlIGFsbG93ZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjY3NgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJkZWJpYW4vc291cmNlL2luY2x1ZGUtYmluYXJpZXMiCittc2dzdHIgIkI8aW5mb2Rlc2M+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjY4MAorbXNnaWQgIiIKKyJUaGlzIGZpbGUgY29udGFpbnMgYSBsaXN0IG9mIGJpbmFyeSBmaWxlcyAob25lIHBlciBsaW5lKSB0aGF0IHNob3VsZCBiZSAiCisiaW5jbHVkZWQgaW4gdGhlIGRlYmlhbiB0YXJiYWxsLiBMZWFkaW5nIGFuZCB0cmFpbGluZyBzcGFjZXMgYXJlIHN0cmlwcGVkLiAgIgorIkxpbmVzIHN0YXJ0aW5nIHdpdGggXCIjXCIgYXJlIGNvbW1lbnRzIGFuZCBhcmUgc2tpcHBlZC4gRW1wdHkgbGluZXMgYXJlICIKKyJpZ25vcmVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo2ODAKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiZGViaWFuL3NvdXJjZS9vcHRpb25zIgorbXNnc3RyICJCPGluZm9kZXNjPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2ODYKK21zZ2lkICIiCisiVGhpcyBmaWxlIGNvbnRhaW5zIGEgbGlzdCBvZiBsb25nIG9wdGlvbnMgdGhhdCBzaG91bGQgYmUgYXV0b21hdGljYWxseSAiCisicHJlcGVuZGVkIHRvIHRoZSBzZXQgb2YgY29tbWFuZCBsaW5lIG9wdGlvbnMgb2YgYSBCPGRwa2ctc291cmNlIC1iPiBvciAiCisiQjxkcGtnLXNvdXJjZSAtLXByaW50LWZvcm1hdD4gY2FsbC4gT3B0aW9ucyBsaWtlIEI8LS1jb21wcmVzc2lvbj4gYW5kIEI8LS0iCisiY29tcHJlc3Npb24tbGV2ZWw+IGFyZSB3ZWxsIHN1aXRlZCBmb3IgdGhpcyBmaWxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjY5MgorbXNnaWQgIiIKKyJFYWNoIG9wdGlvbiBzaG91bGQgYmUgcHV0IG9uIGEgc2VwYXJhdGUgbGluZS4gRW1wdHkgbGluZXMgYW5kIGxpbmVzIHN0YXJ0aW5nICIKKyJ3aXRoIFwiI1wiIGFyZSBpZ25vcmVkLiBUaGUgbGVhZGluZyBcIi0tXCIgc2hvdWxkIGJlIHN0cmlwcGVkIGFuZCBzaG9ydCAiCisib3B0aW9ucyBhcmUgbm90IGFsbG93ZWQuIE9wdGlvbmFsIHNwYWNlcyBhcmUgYWxsb3dlZCBhcm91bmQgdGhlIFwiPVwiIHN5bWJvbCAiCisiYW5kIG9wdGlvbmFsIHF1b3RlcyBhcmUgYWxsb3dlZCBhcm91bmQgdGhlIHZhbHVlLiAgSGVyZSdzIGFuIGV4YW1wbGUgb2Ygc3VjaCAiCisiYSBmaWxlOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjcwMAorIywgbm8td3JhcAorbXNnaWQgIiIKKyIgICMgbGV0IGRwa2ctc291cmNlIGNyZWF0ZSBhIGRlYmlhbi50YXIuYnoyIHdpdGggbWF4aW1hbCBjb21wcmVzc2lvblxuIgorIiAgY29tcHJlc3Npb24gPSBcImJ6aXAyXCJcbiIKKyIgIGNvbXByZXNzaW9uLWxldmVsID0gOVxuIgorIiAgIyB1c2UgZGViaWFuL3BhdGNoZXMvZGViaWFuLWNoYW5nZXMgYXMgYXV0b21hdGljIHBhdGNoXG4iCisiICBzaW5nbGUtZGViaWFuLXBhdGNoXG4iCisiICAjIGlnbm9yZSBjaGFuZ2VzIG9uIGNvbmZpZy57c3ViLGd1ZXNzfVxuIgorIiAgZXh0ZW5kLWRpZmYtaWdub3JlID0gXCIoXnwvKShjb25maWcuc3VifGNvbmZpZy5ndWVzcykkXCJcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjcwMworbXNnaWQgIiIKKyJOb3RlOiBCPGZvcm1hdD4gb3B0aW9ucyBhcmUgbm90IGFjY2VwdGVkIGluIHRoaXMgZmlsZSwgeW91IHNob3VsZCB1c2UgIgorIkI8ZGViaWFuL3NvdXJjZS9mb3JtYXQ+IGluc3RlYWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjcwMworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJkZWJpYW4vc291cmNlL2xvY2FsLW9wdGlvbnMiCittc2dzdHIgIkI8aW5mb2Rlc2M+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjcwOAorbXNnaWQgIiIKKyJFeGFjdGx5IGxpa2UgQjxkZWJpYW4vc291cmNlL29wdGlvbnM+IGV4Y2VwdCB0aGF0IHRoZSBmaWxlIGlzIG5vdCBpbmNsdWRlZCAiCisiaW4gdGhlIGdlbmVyYXRlZCBzb3VyY2UgcGFja2FnZS4gSXQgY2FuIGJlIHVzZWZ1bCB0byBzdG9yZSBhIHByZWZlcmVuY2UgdGllZCAiCisidG8gdGhlIG1haW50YWluZXIgb3IgdG8gdGhlIFZDUyByZXBvc2l0b3J5IHdoZXJlIHRoZSBzb3VyY2UgcGFja2FnZSBpcyAiCisibWFpbnRhaW5lZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6NzA4CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgImRlYmlhbi9zb3VyY2UvbG9jYWwtcGF0Y2gtaGVhZGVyIgorbXNnc3RyICJCPGluZm9kZXNjPiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6NzA5CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgImRlYmlhbi9zb3VyY2UvcGF0Y2gtaGVhZGVyIgorbXNnc3RyICJCPGluZm9kZXNjPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo3MTMKK21zZ2lkICIiCisiRnJlZSBmb3JtIHRleHQgdGhhdCBpcyBwdXQgb24gdG9wIG9mIHRoZSBhdXRvbWF0aWMgcGF0Y2ggZ2VuZXJhdGVkIGluICIKKyJmb3JtYXRzIFwiMi4wXCIgb3IgXCIzLjAgKHF1aWx0KVwiLiBCPGxvY2FsLXBhdGNoLWhlYWRlcj4gaXMgbm90IGluY2x1ZGVkIGluICIKKyJ0aGUgZ2VuZXJhdGVkIHNvdXJjZSBwYWNrYWdlIHdoaWxlIEI8cGF0Y2gtaGVhZGVyPiBpcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6NzEzCisjLCBuby13cmFwCittc2dpZCAiZGViaWFuL3BhdGNoZXMvc2VyaWVzIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NzIyCittc2dpZCAiIgorIlRoaXMgZmlsZSBsaXN0cyBhbGwgcGF0Y2hlcyB0aGF0IGhhdmUgdG8gYmUgYXBwbGllZCAoaW4gdGhlIGdpdmVuIG9yZGVyKSAgb24gIgorInRvcCBvZiB0aGUgdXBzdHJlYW0gc291cmNlIHBhY2thZ2UuIExlYWRpbmcgYW5kIHRyYWlsaW5nIHNwYWNlcyBhcmUgIgorInN0cmlwcGVkLiBMaW5lcyBzdGFydGluZyB3aXRoIFwiI1wiIGFyZSBjb21tZW50cyBhbmQgYXJlIHNraXBwZWQuIEVtcHR5ICIKKyJsaW5lcyBhcmUgaWdub3JlZC4gUmVtYWluaW5nIGxpbmVzIHN0YXJ0IHdpdGggYSBwYXRjaCBmaWxlbmFtZSAocmVsYXRpdmUgdG8gIgorInRoZSBCPGRlYmlhbi9wYXRjaGVzLz4gZGlyZWN0b3J5KSB1cCB0byB0aGUgZmlyc3Qgc3BhY2UgY2hhcmFjdGVyIG9yIHRoZSBlbmQgIgorIm9mIGxpbmUuIE9wdGlvbmFsIHF1aWx0IG9wdGlvbnMgY2FuIGZvbGxvdyB1cCB0byB0aGUgZW5kIG9mIGxpbmUgb3IgdGhlICIKKyJmaXJzdCBcIiNcIiBwcmVjZWRlZCBieSBvbmUgb3IgbW9yZSBzcGFjZXMgKHdoaWNoIG1hcmtzIHRoZSBzdGFydCBvZiBhICIKKyJjb21tZW50IHVwIHRvIHRoZSBlbmQgb2YgbGluZSkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NzI5CisjLCBmdXp6eQorbXNnaWQgIkI8ZHBrZy1kZWI+KDEpLCBCPGRwa2c+KDEpLCBCPGRzZWxlY3Q+KDEpLiIKK21zZ3N0ciAiIgorIkI8ZGViPig1KSwgQjxkZWItY29udHJvbD4oNSksIEI8ZHBrZz4oMSksIEI8ZHBrZy1kZWI+KDEpLCBCPGZpbmQ+KDEpLCAiCisiQjx4YXJncz4oMSkuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjczNgorIywgZnV6enkKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAwOC0yMDExIFJhcGhhXFxbOmVdbCBIZXJ0em9nIgorbXNnc3RyICJDb3B5cmlnaHQgMjAwMSBKb2V5IEhlc3MiCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLXNwbGl0LjE6MgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJkcGtnLXNwbGl0IgorbXNnc3RyICJkcGtnIHN1aXRlIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6NQorIywgZnV6enkKK21zZ2lkICJkcGtnLXNwbGl0IC0gRGViaWFuIHBhY2thZ2UgYXJjaGl2ZSBzcGxpdC9qb2luIHRvb2wiCittc2dzdHIgImRwa2ctZGViIC0gRGViaWFuIOODkeODg+OCseODvOOCuOOCouODvOOCq+OCpOODliAoLmRlYikg5pON5L2c44OE44O844OrIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6OQorIywgZnV6enkKK21zZ2lkICJCPGRwa2ctc3BsaXQ+IFtJPG9wdGlvbj4uLi5dIEk8Y29tbWFuZD4iCittc2dzdHIgIkI8ZHBrZz4gW0k8b3B0aW9ucz5dIEk8YWN0aW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjE1Cittc2dpZCAiIgorIkI8ZHBrZy1zcGxpdD4gc3BsaXRzIERlYmlhbiBiaW5hcnkgcGFja2FnZSBmaWxlcyBpbnRvIHNtYWxsZXIgcGFydHMgYW5kICIKKyJyZWFzc2VtYmxlcyB0aGVtIGFnYWluLCB0byBzdXBwb3J0IHRoZSBzdG9yYWdlIG9mIGxhcmdlIHBhY2thZ2UgZmlsZXMgb24gIgorInNtYWxsIG1lZGlhIHN1Y2ggYXMgZmxvcHB5IGRpc2tzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTkKK21zZ2lkICIiCisiSXQgY2FuIGJlIG9wZXJhdGVkIG1hbnVhbGx5IHVzaW5nIHRoZSBCPC0tc3BsaXQ+LCBCPC0tam9pbj4gYW5kIEI8LS1pbmZvPiAiCisib3B0aW9ucy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjI3Cittc2dpZCAiIgorIkl0IGFsc28gaGFzIGFuIGF1dG9tYXRpYyBtb2RlLCBpbnZva2VkIHVzaW5nIHRoZSBCPC0tYXV0bz4gb3B0aW9uLCB3aGVyZSBpdCAiCisibWFpbnRhaW5zIGEgcXVldWUgb2YgcGFydHMgc2VlbiBidXQgbm90IHlldCByZWFzc2VtYmxlZCBhbmQgcmVhc3NlbWJsZXMgYSAiCisicGFja2FnZSBmaWxlIHdoZW4gaXQgaGFzIHNlZW4gYWxsIG9mIGl0cyBwYXJ0cy4gVGhlIEI8LS1saXN0cT4gYW5kIEI8LS0iCisiZGlzY2FyZD4gb3B0aW9ucyBhbGxvdyB0aGUgbWFuYWdlbWVudCBvZiB0aGUgcXVldWUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMTozMAorbXNnaWQgIiIKKyJBbGwgc3BsaXR0aW5nLCBqb2luaW5nIGFuZCBxdWV1ZWluZyBvcGVyYXRpb25zIHByb2R1Y2UgaW5mb3JtYXRpdmUgbWVzc2FnZXMgIgorIm9uIHN0YW5kYXJkIG91dHB1dDsgdGhlc2UgbWF5IHNhZmVseSBiZSBpZ25vcmVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zcGxpdC4xOjMyCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LXM+LCBCPC0tc3BsaXQ+IEk8Y29tcGxldGUtYXJjaGl2ZT4gW0k8cHJlZml4Pl0iCittc2dzdHIgIkI8ZHBrZy1kZWI+IEI8LUk+fEI8LS1pbmZvPiBJPGFyY2hpdmU+IFtJPGNvbnRyb2wtZmlsZS1uYW1lPiAuLl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMTozNQorIywgZnV6enkKK21zZ2lkICJTcGxpdHMgYSBzaW5nbGUgRGViaWFuIGJpbmFyeSBwYWNrYWdlIGludG8gc2V2ZXJhbCBwYXJ0cy4iCittc2dzdHIgImRlYi1vbGQgLSBEZWJpYW4g44OQ44Kk44OK44Oq44OR44OD44Kx44O844K45pen5b2i5byP44OV44Kp44O844Oe44OD44OIIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6NDMKK21zZ2lkICIiCisiVGhlIHBhcnRzIGFyZSBuYW1lZCBJPHByZWZpeD5CPC4+STxOPkI8b2Y+STxNPkI8LmRlYj4gd2hlcmUgSTxOPiBpcyB0aGUgcGFydCAiCisibnVtYmVyLCBzdGFydGluZyBhdCAxLCBhbmQgSTxNPiBpcyB0aGUgdG90YWwgbnVtYmVyIG9mIHBhcnRzIChib3RoIGluICIKKyJkZWNpbWFsKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjUxCittc2dpZCAiIgorIklmIG5vIEk8cHJlZml4PiBpcyBzdXBwbGllZCB0aGVuIHRoZSBJPGNvbXBsZXRlLWFyY2hpdmU+IGZpbGVuYW1lIGlzIHRha2VuLCAiCisiaW5jbHVkaW5nIGRpcmVjdG9yeSwgd2l0aCBhbnkgdHJhaWxpbmcgQjwuZGViPiByZW1vdmVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zcGxpdC4xOjUxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LWo+LCBCPC0tam9pbj4gSTxwYXJ0Pi4uLiIKK21zZ3N0ciAiQjxkcGtnLWRlYj4gQjwtYz58QjwtLWNvbnRlbnRzPiBJPGFyY2hpdmU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6NTUKK21zZ2lkICIiCisiSm9pbnMgdGhlIHBhcnRzIG9mIGEgcGFja2FnZSBmaWxlIHRvZ2V0aGVyLCByZWFzc2VtYmxpbmcgdGhlIG9yaWdpbmFsIGZpbGUgIgorImFzIGl0IHdhcyBiZWZvcmUgaXQgd2FzIHNwbGl0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6NTkKK21zZ2lkICIiCisiVGhlIHBhcnQgZmlsZXMgZ2l2ZW4gYXMgYXJndW1lbnRzIG11c3QgYmUgYWxsIHRoZSBwYXJ0cyBvZiBleGFjdGx5IHRoZSBzYW1lICIKKyJvcmlnaW5hbCBiaW5hcnkgZmlsZS4gRWFjaCBwYXJ0IG11c3Qgb2NjdXIgZXhhY3RseSBvbmNlIGluIHRoZSBhcmd1bWVudCAiCisibGlzdCwgdGhvdWdoIHRoZSBwYXJ0cyB0byBub3QgbmVlZCB0byBiZSBsaXN0ZWQgaW4gb3JkZXIuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMTo2NAorbXNnaWQgIiIKKyJUaGUgcGFydHMgbXVzdCBvZiBjb3Vyc2UgYWxsIGhhdmUgYmVlbiBnZW5lcmF0ZWQgd2l0aCB0aGUgc2FtZSBwYXJ0IHNpemUgIgorInNwZWNpZmllZCBhdCBzcGxpdCB0aW1lLCB3aGljaCBtZWFucyB0aGF0IHRoZXkgbXVzdCB1c3VhbGx5IGhhdmUgYmVlbiAiCisiZ2VuZXJhdGVkIGJ5IHRoZSBzYW1lIGludm9jYXRpb24gb2YgQjxkcGtnLXNwbGl0IC0tc3BsaXQ+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6NjYKK21zZ2lkICJUaGUgcGFydHMnIGZpbGVuYW1lcyBhcmUgbm90IHNpZ25pZmljYW50IGZvciB0aGUgcmVhc3NlbWJseSBwcm9jZXNzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6NjkKK21zZ2lkICIiCisiQnkgZGVmYXVsdCB0aGUgb3V0cHV0IGZpbGUgaXMgY2FsbGVkIEk8cGFja2FnZT5CPF8+STx2ZXJzaW9uPkI8Xz5JPGFyY2g+QjwuIgorImRlYj4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNwbGl0LjE6NzAKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtST4sIEI8LS1pbmZvPiBJPHBhcnQ+Li4uIgorbXNnc3RyICJCPGRwa2ctcXVlcnk+IEI8LUw+fEI8LS1saXN0ZmlsZXM+IEk8cGFja2FnZS1uYW1lPiAuLi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMTo3NQorbXNnaWQgIiIKKyJQcmludHMgaW5mb3JtYXRpb24sIGluIGEgaHVtYW4tcmVhZGFibGUgZm9ybWF0LCBhYm91dCB0aGUgcGFydCBmaWxlKHMpICAiCisic3BlY2lmaWVkLiBBcmd1bWVudHMgd2hpY2ggYXJlIG5vdCBiaW5hcnkgcGFja2FnZSBwYXJ0cyBwcm9kdWNlIGEgbWVzc2FnZSAiCisic2F5aW5nIHNvIGluc3RlYWQgKGJ1dCBzdGlsbCBvbiBzdGFuZGFyZCBvdXRwdXQpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zcGxpdC4xOjc1CisjLCBuby13cmFwCittc2dpZCAiQjwtYT4sIEI8LS1hdXRvIC1vPiBJPGNvbXBsZXRlLW91dHB1dCBwYXJ0PiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6NzgKK21zZ2lkICJBdXRvbWF0aWNhbGx5IHF1ZXVlIHBhcnRzIGFuZCByZWFzc2VtYmxlIGEgcGFja2FnZSBpZiBwb3NzaWJsZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjgzCittc2dpZCAiIgorIlRoZSBJPHBhcnQ+IHNwZWNpZmllZCBpcyBleGFtaW5lZCwgYW5kIGNvbXBhcmVkIHdpdGggb3RoZXIgcGFydHMgb2YgdGhlIHNhbWUgIgorInBhY2thZ2UgKGlmIGFueSkgaW4gdGhlIHF1ZXVlIG9mIHBhY2thZ2VzIGZpbGUgcGFydHMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMTo5MAorbXNnaWQgIiIKKyJJZiBhbGwgcGFydHMgb2YgdGhlIHBhY2thZ2UgZmlsZSBvZiB3aGljaCBJPHBhcnQ+IGlzIGEgcGFydCBhcmUgYXZhaWxhYmxlICIKKyJ0aGVuIHRoZSBwYWNrYWdlIGlzIHJlYXNzZW1ibGVkIGFuZCB3cml0dGVuIHRvIEk8Y29tcGxldGUtb3V0cHV0PiAod2hpY2ggIgorInNob3VsZCBub3QgdXN1YWxseSBhbHJlYWR5IGV4aXN0LCB0aG91Z2ggdGhpcyBpcyBub3QgYW4gZXJyb3IpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6OTYKK21zZ2lkICIiCisiSWYgbm90IHRoZW4gdGhlIEk8cGFydD4gaXMgY29waWVkIGludG8gdGhlIHF1ZXVlIGFuZCBJPGNvbXBsZXRlLW91dHB1dD4gaXMgIgorIm5vdCBjcmVhdGVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTAzCittc2dpZCAiIgorIklmIEk8cGFydD4gaXMgbm90IGEgc3BsaXQgYmluYXJ5IHBhY2thZ2UgcGFydCB0aGVuIEI8ZHBrZy1zcGxpdD4gd2lsbCBleGl0ICIKKyJ3aXRoIHN0YXR1cyBCPDE+OyBpZiBzb21lIG90aGVyIHRyb3VibGUgb2NjdXJzIHRoZW4gaXQgd2lsbCBleGl0IHdpdGggc3RhdHVzICIKKyJCPDI+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTEwCittc2dpZCAiIgorIlRoZSBCPC0tb3V0cHV0PiBvciBCPC1vPiBvcHRpb24gbXVzdCBiZSBzdXBwbGllZCB3aGVuIHVzaW5nIEI8LS1hdXRvPi4gIChJZiAiCisidGhpcyB3ZXJlIG5vdCBtYW5kYXRvcnkgdGhlIGNhbGxpbmcgcHJvZ3JhbSB3b3VsZCBub3Qga25vdyB3aGF0IG91dHB1dCBmaWxlICIKKyJ0byBleHBlY3QuKSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zcGxpdC4xOjExMAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1sPiwgQjwtLWxpc3RxPiIKK21zZ3N0ciAiQjwtbCwgLS1saWNlbnNlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjExMworbXNnaWQgIkxpc3RzIHRoZSBjb250ZW50cyBvZiB0aGUgcXVldWUgb2YgcGFja2FnZXMgdG8gYmUgcmVhc3NlbWJsZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxMTcKK21zZ2lkICIiCisiRm9yIGVhY2ggcGFja2FnZSBmaWxlIG9mIHdoaWNoIHBhcnRzIGFyZSBpbiB0aGUgcXVldWUgdGhlIG91dHB1dCBnaXZlcyB0aGUgIgorIm5hbWUgb2YgdGhlIHBhY2thZ2UsIHRoZSBwYXJ0cyBpbiB0aGUgcXVldWUsIGFuZCB0aGUgdG90YWwgbnVtYmVyIG9mIGJ5dGVzICIKKyJzdG9yZWQgaW4gdGhlIHF1ZXVlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zcGxpdC4xOjExNworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1kPiwgQjwtLWRpc2NhcmQ+IFtJPHBhY2thZ2U+Li4uXSIKK21zZ3N0ciAiQjxkcGtnLXF1ZXJ5PiBCPC1zPnxCPC0tc3RhdHVzPiBJPHBhY2thZ2UtbmFtZT4gLi4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTIxCittc2dpZCAiIgorIlRoaXMgZGlzY2FyZHMgcGFydHMgZnJvbSB0aGUgcXVldWUgb2YgdGhvc2Ugd2FpdGluZyBmb3IgdGhlIHJlbWFpbmluZyBwYXJ0cyAiCisib2YgdGhlaXIgcGFja2FnZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxMjYKK21zZ2lkICIiCisiSWYgbm8gSTxwYWNrYWdlPiBpcyBzcGVjaWZpZWQgdGhlbiB0aGUgcXVldWUgaXMgY2xlYXJlZCBjb21wbGV0ZWx5OyBpZiBhbnkgIgorImFyZSBzcGVjaWZpZWQgdGhlbiBvbmx5IHBhcnRzIG9mIHRoZSByZWxldmFudCBwYWNrYWdlKHMpIGFyZSBkZWxldGVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zcGxpdC4xOjEzNAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tZGVwb3RkaXI+STwgZGlyZWN0b3J5PiIKK21zZ3N0ciAiQjwtLWFsdGRpcj4gSTxkaXJlY3Rvcnk+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTM5Cittc2dpZCAiIgorIlNwZWNpZmllcyBhbiBhbHRlcm5hdGl2ZSBkaXJlY3RvcnkgZm9yIHRoZSBxdWV1ZSBvZiBwYXJ0cyBhd2FpdGluZyBhdXRvbWF0aWMgIgorInJlYXNzZW1ibHkuIFRoZSBkZWZhdWx0IGlzIEI8L3Zhci9saWIvZHBrZz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNwbGl0LjE6MTM5CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LVM+LCBCPC0tcGFydHNpemU+IEk8a2liaWJ5dGVzPiIKK21zZ3N0ciAiQjwtYT58QjwtLXN0YXJ0YXM+IEk8cGF0aG5hbWU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTQzCittc2dpZCAiIgorIlNwZWNpZmllcyB0aGUgbWF4aW11bSBwYXJ0IHNpemUgd2hlbiBzcGxpdHRpbmcsIGluIGtpYmlieXRlcyAoMTAyNCBieXRlcykuICIKKyJUaGUgZGVmYXVsdCBpcyA0NTAgS2lCLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zcGxpdC4xOjE0MworIywgbm8td3JhcAorbXNnaWQgIkI8LW8+LCBCPC0tb3V0cHV0PiBJPGNvbXBsZXRlLW91dHB1dD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjE0NgorbXNnaWQgIlNwZWNpZmllcyB0aGUgb3V0cHV0IGZpbGUgbmFtZSBmb3IgYSByZWFzc2VtYmx5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTUxCittc2dpZCAiIgorIlRoaXMgb3ZlcnJpZGVzIHRoZSBkZWZhdWx0IGZvciBhIG1hbnVhbCByZWFzc2VtYmx5IChCPC0tam9pbj4pICBhbmQgaXMgIgorIm1hbmRhdG9yeSBmb3IgYW4gYXV0b21hdGljIHF1ZXVlLW9yLXJlYXNzZW1ibGUgKEI8LS1hdXRvPikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNwbGl0LjE6MTUxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LVE+LCBCPC0tbnBxdWlldD4iCittc2dzdHIgIkI8LXE+fEI8LS1xdWlldD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxNjIKK21zZ2lkICIiCisiV2hlbiBkb2luZyBhdXRvbWF0aWMgcXVldWUtb3ItcmVhc3NlbWJseSBCPGRwa2ctc3BsaXQ+IHVzdWFsbHkgcHJpbnRzIGEgIgorIm1lc3NhZ2UgaWYgaXQgaXMgZ2l2ZW4gYSBJPHBhcnQ+IHRoYXQgaXMgbm90IGEgYmluYXJ5IHBhY2thZ2UgcGFydC4gVGhpcyAiCisib3B0aW9uIHN1cHByZXNzZXMgdGhpcyBtZXNzYWdlLCB0byBhbGxvdyBwcm9ncmFtcyBzdWNoIGFzIEI8ZHBrZz4gdG8gY29wZSAiCisid2l0aCBib3RoIHNwbGl0IGFuZCB1bnNwbGl0IHBhY2thZ2VzIHdpdGhvdXQgcHJvZHVjaW5nIHNwdXJpb3VzIG1lc3NhZ2VzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zcGxpdC4xOjE2MgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tbXNkb3M+IgorbXNnc3RyICJCPC0tb2xkPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjE2NworbXNnaWQgIiIKKyJGb3JjZXMgdGhlIG91dHB1dCBmaWxlbmFtZXMgZ2VuZXJhdGVkIGJ5IEI8LS1zcGxpdD4gdG8gYmUgbXNkb3MtY29tcGF0aWJsZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjE3MworbXNnaWQgIiIKKyJUaGlzIG1hbmdsZXMgdGhlIHByZWZpeCAtIGVpdGhlciB0aGUgZGVmYXVsdCBkZXJpdmVkIGZyb20gdGhlIGlucHV0IGZpbGVuYW1lICIKKyJvciB0aGUgb25lIHN1cHBsaWVkIGFzIGFuIGFyZ3VtZW50OiBhbHBoYW51bWVyaWNzIGFyZSBsb3dlcmNhc2VkLCBwbHVzIHNpZ25zICIKKyJhcmUgcmVwbGFjZWQgYnkgQjx4PidzIGFuZCBhbGwgb3RoZXIgY2hhcmFjdGVycyBhcmUgZGlzY2FyZGVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTc4Cittc2dpZCAiIgorIlRoZSByZXN1bHQgaXMgdGhlbiB0cnVuY2F0ZWQgYXMgbXVjaCBhcyBpcyBuZWNlc3NhcnksIGFuZCBmaWxlbmFtZXMgb2YgdGhlICIKKyJmb3JtIEk8cHJlZml4Tj5CPG9mPkk8TT5CPC5kZWI+IGFyZSBnZW5lcmF0ZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxODYKK21zZ2lkICIiCisiVGhlIHJlcXVlc3RlZCBzcGxpdCwgbWVyZ2UsIG9yIG90aGVyIGNvbW1hbmQgc3VjY2VlZGVkLiAgQjwtLWluZm8+IGNvbW1hbmRzICIKKyJjb3VudCBhcyBzdWNjZXNzZnVsIGV2ZW4gaWYgdGhlIGZpbGVzIGFyZSBub3QgYmluYXJ5IHBhY2thZ2UgcGFydHMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxOTMKK21zZ2lkICIiCisiT25seSBvY2N1cnMgd2l0aCBCPC0tYXV0bz4gYW5kIGluZGljYXRlcyB0aGF0IHRoZSBJPHBhcnQ+IGZpbGUgd2FzIG5vdCBhICIKKyJiaW5hcnkgcGFja2FnZSBwYXJ0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zcGxpdC4xOjE5MyBzdGFydC1zdG9wLWRhZW1vbi44OjI3NSB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6Mzc4CisjLCBuby13cmFwCittc2dpZCAiQjwyPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTk4Cittc2dpZCAiIgorIlNvbWUga2luZCBvZiB0cm91YmxlIGhhcHBlbmVkLCBzdWNoIGFzIGEgc3lzdGVtIGNhbGwgZmFpbHVyZSwgYSBmaWxlIHRoYXQgIgorImxvb2tlZCBsaWtlIGEgcGFja2FnZSBwYXJ0IGZpbGUgYnV0IHdhcyBjb3JydXB0ZWQsIGEgdXNhZ2UgZXJyb3Igb3Igc29tZSAiCisib3RoZXIgcHJvYmxlbS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjIwMgorbXNnaWQgIiIKKyJGdWxsIGRldGFpbHMgb2YgdGhlIHBhY2thZ2VzIGluIHRoZSBxdWV1ZSBhcmUgaW1wb3NzaWJsZSB0byBnZXQgd2l0aG91dCAiCisiZGlnZ2luZyBpbnRvIHRoZSBxdWV1ZSBkaXJlY3RvcnkgeW91cnNlbGYuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToyMDUKK21zZ2lkICIiCisiVGhlcmUgaXMgbm8gZWFzeSB3YXkgdG8gdGVzdCB3aGV0aGVyIGEgZmlsZSB0aGF0IG1heSBiZSBhIGJpbmFyeSBwYWNrYWdlICIKKyJwYXJ0IGlzIG9uZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc3BsaXQuMToyMDcKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiSTwvdmFyL2xpYi9kcGtnL3BhcnRzPiIKK21zZ3N0ciAiSTwvdmFyL2xpYi9kcGtnL3N0YXR1cz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToyMTEKK21zZ2lkICIiCisiVGhlIGRlZmF1bHQgcXVldWUgZGlyZWN0b3J5IGZvciBwYXJ0IGZpbGVzIGF3YWl0aW5nIGF1dG9tYXRpYyByZWFzc2VtYmx5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MjE2Cittc2dpZCAiIgorIlRoZSBmaWxlbmFtZXMgdXNlZCBpbiB0aGlzIGRpcmVjdG9yeSBhcmUgaW4gYSBmb3JtYXQgaW50ZXJuYWwgdG8gQjxkcGtnLSIKKyJzcGxpdD4gYW5kIGFyZSB1bmxpa2VseSB0byBiZSB1c2VmdWwgdG8gb3RoZXIgcHJvZ3JhbXMsIGFuZCBpbiBhbnkgY2FzZSB0aGUgIgorImZpbGVuYW1lIGZvcm1hdCBzaG91bGQgbm90IGJlIHJlbGllZCB1cG9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MjIyCisjLCBmdXp6eQorbXNnaWQgIkI8ZGViPig1KSwgQjxkZWItY29udHJvbD4oNSksIEI8ZHBrZy1kZWI+KDEpLCBCPGRwa2c+KDEpLiIKK21zZ3N0ciAiQjxkZWI+KDUpLCBCPGRlYi1jb250cm9sPig1KSwgQjxkcGtnPigxKSwgQjxkc2VsZWN0PigxKS4iCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLXN0YXRvdmVycmlkZSIKK21zZ3N0ciAiZHBrZy1zdGF0b3ZlcnJpZGUiCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjEKKyMsIG5vLXdyYXAKK21zZ2lkICJEZWJpYW4gcHJvamVjdCIKK21zZ3N0ciAiRGViaWFuIHByb2plY3QiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6NAorbXNnaWQgImRwa2ctc3RhdG92ZXJyaWRlIC0gb3ZlcnJpZGUgb3duZXJzaGlwIGFuZCBtb2RlIG9mIGZpbGVzIgorbXNnc3RyICJkcGtnLXN0YXRvdmVycmlkZSAtIOODleOCoeOCpOODq+OBruaJgOacieaoqeOChOODouODvOODieOCkuWkieabtOOBmeOCiyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo4CisjLCBmdXp6eQorbXNnaWQgIkI8ZHBrZy1zdGF0b3ZlcnJpZGU+IFtJPG9wdGlvbj4uLi5dIEk8Y29tbWFuZD4iCittc2dzdHIgIkI8ZHBrZz4gW0k8b3B0aW9ucz5dIEk8YWN0aW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODoxOAorbXNnaWQgIiIKKyJgQjxzdGF0IG92ZXJyaWRlcz4nIGFyZSBhIHdheSB0byB0ZWxsIEI8ZHBrZz4oMSkgIHRvIHVzZSBhIGRpZmZlcmVudCBvd25lciAiCisib3IgbW9kZSBmb3IgYSBmaWxlIHdoZW4gYSBwYWNrYWdlIGlzIGluc3RhbGxlZC4gKG5vdGU6IEkgdXNlIHRoZSB3b3JkIGBmaWxlJyAiCisiaGVyZSwgYnV0IGluIHJlYWxpdHkgdGhpcyBjYW4gYmUgYW55IGZpbGVzeXN0ZW0gb2JqZWN0IHRoYXQgZHBrZyBoYW5kbGVzLCAiCisiaW5jbHVkaW5nIGRpcmVjdG9yaWVzLCBkZXZpY2VzLCBldGMuKS4gVGhpcyBjYW4gYmUgdXNlZCB0byBmb3JjZSBwcm9ncmFtcyAiCisidGhhdCBhcmUgbm9ybWFsbHkgc2V0dWlkIHRvIGJlIGluc3RhbGwgd2l0aG91dCBhIHNldHVpZCBmbGFnLCBvciBvbmx5ICIKKyJleGVjdXRhYmxlIGJ5IGEgY2VydGFpbiBncm91cC4iCittc2dzdHIgIiIKKyJgQjxzdGF0IG92ZXJyaWRlPicg44Go44Gv44CB44OR44OD44Kx44O844K444GM44Kk44Oz44K544OI44O844Or44GV44KM44KL44Go44GN44Gr44CB44OV44Kh44Kk44Or44Gu5omA5pyJIgorIuiAheOChOODouODvOODieOCkuWkieabtOOBmeOCi+OCiOOBhiBCPGRwa2c+KDEpIOOBq+aMh+ekuuOBmeOCi+aWueazleOBp+OBguOCiyjms6jmhI86IOOBk+OBk+OBp+OBr+OAjOODleOCoSIKKyLjgqTjg6vjgI3jgajjgYTjgYboqIDokYnjgpLkvb/jgaPjgZ/jgYzjgIHlrp/pmpvjgavjga8gZHBrZyDjgYzmibHjgYjjgovjg5XjgqHjgqTjg6vjgrfjgrnjg4bjg6Djgqrjg5bjgrjjgqfjgq8iCisi44OI44Gq44KJ44Gq44KT44Gn44KC44KI44GE44CC44Gk44G+44KK44OH44Kj44Os44Kv44OI44Oq44KE44OH44OQ44Kk44K544Gq44Gp44Gn44KCIE9LKeOAguOBk+OCjOOCkueUqOOBhOOCiyIKKyLjgajjgIHpgJrluLggc2V0dWlkIOOBleOCjOOCi+ODl+ODreOCsOODqeODoOOCkiBzZXR1aWQg44OV44Op44Kw54Sh44GX44Gn44Kk44Oz44K544OI44O844Or44GX44Gf44KK44CB54m5IgorIuWumuOBruOCsOODq+ODvOODl+OBruOBv+OBq+Wun+ihjOioseWPr+OCkuS4juOBiOOCi+OCiOOBhuOBq+OBl+OBn+OCiuOBp+OBjeOCi+OAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODoyMgorbXNnaWQgIiIKKyJCPGRwa2ctc3RhdG92ZXJyaWRlPiBpcyBhIHV0aWxpdHkgdG8gbWFuYWdlIHRoZSBsaXN0IG9mIHN0YXQgb3ZlcnJpZGVzLiBJdCAiCisiaGFzIHRocmVlIGJhc2ljIGZ1bmN0aW9uczogYWRkaW5nLCByZW1vdmluZyBhbmQgbGlzdGluZyBvdmVycmlkZXMuIgorbXNnc3RyICIiCisiQjxkcGtnLXN0YXRvdmVycmlkZT4g44GvIHN0YXQgb3ZlcnJpZGUg44Gu44Oq44K544OI44KS566h55CG44GZ44KL44Om44O844OG44Kj44Oq44OG44Kj44Gn44GCIgorIuOCi+OAgiBvdmVycmlkZSDjgpLov73liqDjg7vliYrpmaTjg7vooajnpLrjgZnjgovjgajjgYTjgYbjgIEzIOOBpOOBruWfuuacrOapn+iDveOBjOOBguOCi+OAgiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6MjQKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWFkZD5JPCB1c2VyIGdyb3VwIG1vZGUgZmlsZT4iCittc2dzdHIgIkI8LS1hZGQ+STwgRTxsdD51c2VyRTxndD4gRTxsdD5ncm91cEU8Z3Q+IEU8bHQ+bW9kZUU8Z3Q+IEU8bHQ+ZmlsZUU8Z3Q+PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODozMgorIywgZnV6enkKK21zZ2lkICIiCisiQWRkIGFuIG92ZXJyaWRlIGZvciBJPGZpbGU+LiBJPGZpbGU+IGRvZXMgbm90IG5lZWQgdG8gZXhpc3Qgd2hlbiB0aGlzICIKKyJjb21tYW5kIGlzIHVzZWQ7IHRoZSBvdmVycmlkZSB3aWxsIGJlIHN0b3JlZCBhbmQgdXNlZCBsYXRlci4gIFVzZXJzIGFuZCAiCisiZ3JvdXBzIGNhbiBiZSBzcGVjaWZpZWQgYnkgdGhlaXIgbmFtZSAoZm9yIGV4YW1wbGUgQjxyb290PiBvciBCPG5vYm9keT4pLCBvciAiCisiYnkgdGhlaXIgbnVtYmVyIGJ5IHByZXBlbmRpbmcgdGhlIG51bWJlciB3aXRoIGEgYEI8Iz4nIChmb3IgZXhhbXBsZSBCPCMwPiBvciAiCisiQjwjNjU1MzQ+KS4gVGhlIEk8bW9kZT4gbmVlZHMgdG8gYmUgc3BlY2lmaWVkIGluIG9jdGFsLiIKK21zZ3N0ciAiIgorIkI8RTxsdD5maWxlRTxndD4+IOOBriBvdmVycmlkZSDjgpLov73liqDjgZnjgovjgIIgQjxFPGx0PmZpbGVFPGd0Pj4g44Gv44Kz44Oe44Oz44OJ44Gu5a6f6KGMIgorIuaZguOBq+OBr+WtmOWcqOOBl+OBpuOBhOOBquOBj+OBpuOCguOCiOOBhOOAgm92ZXJyaWRlIOOBr+S/neWtmOOBleOCjOOAgeW+jOOBp+eUqOOBhOOCieOCjOOCi+OAguODpuODvOOCtuOBqOOCsCIKKyLjg6vjg7zjg5fjga/lkI3liY0o5L6L44GI44GwIEI8cm9vdD4g44Go44GLIEI8bm9ib2R5PiDjgajjgYsp44Gn44KC5oyH5a6a44Gn44GN44KL44GX44CB5YmN44GrICIKKyJgQjwjPicg5paH5a2X44KS44Gk44GR44Gf5pWw5a2XKOS+i+OBiOOBsCBCPCMwPiDjgajjgYsgQjwjNjU1MzQ+IOOBqOOBiynjgafjgoLmjIflrprjgafjgY3jgovjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6MzUKKyMsIGZ1enp5Cittc2dpZCAiIgorIklmIC0tdXBkYXRlIGlzIHNwZWNpZmllZCBhbmQgSTxmaWxlPiBleGlzdHMsIGl0IGlzIGltbWVkaWF0ZWx5IHNldCB0byB0aGUgIgorIm5ldyBvd25lciBhbmQgbW9kZS4iCittc2dzdHIgIiIKKyItLXVwZGF0ZSDjgpLmjIflrprjgZfjgIFCPEU8bHQ+ZmlsZUU8Z3Q+PiDjgYzlrZjlnKjjgZnjgovloLTlkIjjga/jgIHjgZnjgZDjgavjgZ3jga7miYDmnInogIXjgajjg6Ljg7wiCisi44OJ44KS5paw44GX44GE5YCk44Gr5aSJ5pu044GZ44KL44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjM5CisjLCBmdXp6eQorbXNnaWQgIiIKKyJSZW1vdmUgYW4gb3ZlcnJpZGUgZm9yIEk8ZmlsZT4sIHRoZSBzdGF0dXMgb2YgSTxmaWxlPiBpcyBsZWZ0IHVuY2hhbmdlZCBieSAiCisidGhpcyBjb21tYW5kLiIKK21zZ3N0ciAiIgorIkI8RTxsdD5maWxlRTxndD4+IOOBriBvdmVycmlkZSDjgpLliYrpmaTjgZnjgovjgIJCPEU8bHQ+ZmlsZUU8Z3Q+PiDjga7nirbmhYvjga/jgZPjga7jgrPjg54iCisi44Oz44OJ44Gn44Gv5aSJ5YyW44GX44Gq44GE44CCIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODozOQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tbGlzdD4gW0k8Z2xvYi1wYXR0ZXJuPl0iCittc2dzdHIgIkI8LS1saXN0PiBbSTxFPGx0Pmdsb2ItcGF0dGVybkU8Z3Q+Pl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6NDQKK21zZ2lkICIiCisiTGlzdCBhbGwgb3ZlcnJpZGVzLiBJZiBhIGdsb2IgcGF0dGVybiBpcyBzcGVjaWZpZWQgcmVzdHJpY3QgdGhlIG91dHB1dCB0byAiCisib3ZlcnJpZGVzIHdoaWNoIG1hdGNoIHRoZSBnbG9iLiBJZiB0aGVyZSBhcmUgbm8gb3ZlcnJpZGVzIG9yIG5vbmUgbWF0Y2ggdGhlICIKKyJnbG9iIEI8ZHBrZy1zdGF0b3ZlcnJpZGU+IHdpbGwgZXhpdCB3aXRoIGFuIGV4aXRjb2RlIG9mIDEuIgorbXNnc3RyICIiCisib3ZlcnJpZGUg44KS44GZ44G544Gm44Oq44K544OI44GZ44KL44CCZ2xvYiDjg5Hjgr/jg7zjg7PjgYzmjIflrprjgZXjgozjgZ/loLTlkIjjga/jgIHjg57jg4Pjg4HjgZfjgZ8gIgorIm92ZXJyaWRlIOOBruOBv+OCkuWHuuWKm+OBmeOCi+OAgm92ZXJyaWRlIOOBjOWFqOOBj+OBquOBhOWgtOWQiOOChOOAgWdsb2Ig44Gr44Oe44OD44OB44GZ44KL44KC44Gu44GM44GyIgorIuOBqOOBpOOCguOBquOBi+OBo+OBn+WgtOWQiOOBr+OAgUI8ZHBrZy1zdGF0b3ZlcnJpZGU+IOOBr+e1guS6huOCs+ODvOODiSAxIOOBp+e1guS6huOBmeOCi+OAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo1NgorIywgZnV6enkKK21zZ2lkICIiCisiQ2hhbmdlIHRoZSBJPGRpcmVjdG9yeT4gb2YgdGhlIGRwa2cgZGF0YWJhc2Ugd2hlcmUgdGhlIHN0YXRvdmVycmlkZSBmaWxlIGlzICIKKyJhbHNvIHN0b3JlZC4gRGVmYXVsdHMgdG8gSTwvdmFyL2xpYi9kcGtnPi4iCittc2dzdHIgIiIKKyJkcGtnIOODh+ODvOOCv+ODmeODvOOCueOBruODh+OCo+ODrOOCr+ODiOODquOCkuWkieabtOOBmeOCi+OAgnN0YXRvdmVycmlkZSDjga7jg5XjgqHjgqTjg6vjgoLjgZPjgZPjgavkv50iCisi5a2Y44GV44KM44KL44CC44OH44OV44Kp44Or44OI44GvIEk8L3Zhci9saWIvZHBrZz7jgIIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjU2IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMzYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tZm9yY2U+IgorbXNnc3RyICJCPC0tZm9yY2U+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjYwCittc2dpZCAiIgorIkZvcmNlIGFuIGFjdGlvbiwgZXZlbiBpZiBhIHNhbml0eSBjaGVjayB3b3VsZCBvdGhlcndpc2UgcHJvaGliaXQgaXQuICBUaGlzICIKKyJpcyBuZWNlc3NhcnkgdG8gb3ZlcnJpZGUgYW4gZXhpc3Rpbmcgb3ZlcnJpZGUuIgorbXNnc3RyICIiCisic2FuaXR5IOODgeOCp+ODg+OCryjmraPmsJfluqbjg4Hjgqfjg4Pjgq8p44GM56aB5q2i44GZ44KL44KI44GG44Gq5aC05ZCI44Gn44KC44CB5YuV5L2c44KS5by35Yi255qE44Gr6KGM44GG44CCIgorIuaXouWtmOOBriBvdmVycmlkZSDjgpLlpInmm7TjgZnjgovloLTlkIjjgavjga/jgIHjgZPjgozjgpLmjIflrprjgZnjgovlv4XopoHjgYzjgYLjgovjgIIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjYwCisjLCBuby13cmFwCittc2dpZCAiQjwtLXVwZGF0ZT4iCittc2dzdHIgIkI8LS11cGRhdGU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjY0Cittc2dpZCAiIgorIkltbWVkaWF0ZWx5IHRyeSB0byBjaGFuZ2UgdGhlIGZpbGUgdG8gdGhlIG5ldyBvd25lciBhbmQgbW9kZSBpZiBpdCBleGlzdHMuIgorbXNnc3RyICIiCisi44OV44Kh44Kk44Or44GM5a2Y5Zyo44GZ44KL5aC05ZCI44Gv44CB44GZ44GQ44Gr44Gd44Gu5omA5pyJ6ICF44Go44Oi44O844OJ44KS5paw44GX44GE5YCk44Gr5aSJ5pu044GX44KI44GG44Go44GZIgorIuOCi+OAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo2NworbXNnaWQgIkJlIGxlc3MgdmVyYm9zZSBhYm91dCB3aGF0IHdlIGRvLiIKK21zZ3N0ciAi5YuV5L2c44KS54Sh5Y+j44Gr6KGM44GG44CCIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo3NQorIywgbm8td3JhcAorbXNnaWQgIkk8L3Zhci9saWIvZHBrZy9zdGF0b3ZlcnJpZGU+IgorbXNnc3RyICJJPC92YXIvbGliL2Rwa2cvc3RhdG92ZXJyaWRlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo4MAorbXNnaWQgIiIKKyJGaWxlIHdoaWNoIGNvbnRhaW5zIHRoZSBjdXJyZW50IGxpc3Qgb2Ygc3RhdCBvdmVycmlkZXMgb2YgdGhlIHN5c3RlbS4gSXQgaXMgIgorImxvY2F0ZWQgaW4gdGhlIGRwa2cgYWRtaW5pc3RyYXRpb24gZGlyZWN0b3J5LCBhbG9uZyB3aXRoIG90aGVyIGZpbGVzICIKKyJpbXBvcnRhbnQgdG8gZHBrZywgc3VjaCBhcyBgc3RhdHVzJyBvciBgYXZhaWxhYmxlJy4iCittc2dzdHIgIiIKKyLjgrfjgrnjg4bjg6Djga7nj77lnKjjga4gc3RhdCBvdmVycmlkZSDjga7jg6rjgrnjg4jjgYzmm7jjgYvjgozjgZ/jg5XjgqHjgqTjg6vjgIJkcGtnIOOBrueuoeeQhuODh+OCo+ODrCIKKyLjgq/jg4jjg6rjgavjgIFkcGtnIOOBq+WPluOBo+OBpumHjeimgeOBquS7luOBruODleOCoeOCpOODqyhgc3RhdHVzJyDjgoQgYGF2YWlsYWJsZScg44Gq44GpKeOBqOOBhOOBoyIKKyLjgZfjgofjgavnva7jgYvjgozjgovjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6ODMKKyMsIGZ1enp5Cittc2dpZCAiIgorIk5vdGU6IEI8ZHBrZy1zdGF0b3ZlcnJpZGU+IHByZXNlcnZlcyB0aGUgb2xkIGNvcHkgb2YgdGhpcyBmaWxlLCB3aXRoICIKKyJleHRlbnNpb24gXCItb2xkXCIsIGJlZm9yZSByZXBsYWNpbmcgaXQgd2l0aCB0aGUgbmV3IG9uZS4iCittc2dzdHIgIiIKKyLms6jmhI86IGRwa2ctc3RhdG92ZXJyaWRlIOOBr+OBk+OBruODleOCoeOCpOODq+OCkuaWsOOBl+OBj+abuOOBjeWkieOBiOOCi+WJjeOBq+OAgeWPpOOBhOOCs+ODlOODvOOCkiAiCisiXCItb2xkXCIg44KS6L+95Yqg44GX44Gf5ZCN5YmN44Gn5L+d5a2Y44GZ44KL44CCIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy10cmlnZ2VyLjE6MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJkcGtnLXRyaWdnZXIiCittc2dzdHIgImRwa2ctZGl2ZXJ0IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXRyaWdnZXIuMTo0Cittc2dpZCAiZHBrZy10cmlnZ2VyIC0gYSBwYWNrYWdlIHRyaWdnZXIgdXRpbGl0eSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXRyaWdnZXIuMTo4CisjLCBmdXp6eQorbXNnaWQgIkI8ZHBrZy10cmlnZ2VyPiBbSTxvcHRpb24+Li4uXSBJPHRyaWdnZXItbmFtZT4iCittc2dzdHIgIkI8ZHBrZz4gW0k8b3B0aW9ucz5dIEk8YWN0aW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy10cmlnZ2VyLjE6MTEKKyMsIGZ1enp5Cittc2dpZCAiQjxkcGtnLXRyaWdnZXI+IFtJPG9wdGlvbj4uLi5dIEk8Y29tbWFuZD4iCittc2dzdHIgIkI8ZHBrZz4gW0k8b3B0aW9ucz5dIEk8YWN0aW9uPiIKKworIyB0eXBlOiBQbGFpbiB0ZXh0CisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXRyaWdnZXIuMToxNQorbXNnaWQgIiIKKyJCPGRwa2ctdHJpZ2dlcj4gaXMgYSB0b29sIHRvIGV4cGxpY2l0bHkgYWN0aXZhdGUgdHJpZ2dlcnMgYW5kIGNoZWNrIGZvciBpdHMgIgorInN1cHBvcnQgb24gdGhlIHJ1bm5pbmcgQjxkcGtnPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy10cmlnZ2VyLjE6MjEKK21zZ2lkICIiCisiVGhpcyBjYW4gYmUgdXNlZCBieSBtYWludGFpbmVyIHNjcmlwdHMgaW4gY29tcGxleCBhbmQgY29uZGl0aW9uYWwgc2l0dWF0aW9ucyAiCisid2hlcmUgdGhlIGZpbGUgdHJpZ2dlcnMsIG9yIHRoZSBkZWNsYXJhdGl2ZSBCPGFjdGl2YXRlPiB0cmlnZ2VycyBjb250cm9sICIKKyJmaWxlIGRpcmVjdGl2ZSwgYXJlIGluc3VmZmljaWVudGx5IHJpY2guIEl0IGNhbiBhbHNvIGJlIHVzZWQgZm9yIHRlc3RpbmcgYW5kICIKKyJieSBzeXN0ZW0gYWRtaW5pc3RyYXRvcnMgKGJ1dCBub3RlIHRoYXQgdGhlIHRyaWdnZXJzIHdvbid0IGFjdHVhbGx5IGJlIHJ1biAiCisiYnkgQjxkcGtnLXRyaWdnZXI+KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy10cmlnZ2VyLjE6MjMKK21zZ2lkICJVbnJlY29nbmlzZWQgdHJpZ2dlciBuYW1lIHN5bnRheGVzIGFyZSBhbiBlcnJvciBmb3IgQjxkcGtnLXRyaWdnZXI+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy10cmlnZ2VyLjE6MjUKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWNoZWNrLXN1cHBvcnRlZD4iCittc2dzdHIgIkI8LS1ub2NoZWNrPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy10cmlnZ2VyLjE6MzEKK21zZ2lkICIiCisiQ2hlY2sgaWYgdGhlIHJ1bm5pbmcgQjxkcGtnPiBzdXBwb3J0cyB0cmlnZ2VycyAodXN1YWxseSBjYWxsZWQgZnJvbSBhICIKKyJwb3N0aW5zdCkuIFdpbGwgZXhpdCBCPDA+IGlmIGEgdHJpZ2dlcnMtY2FwYWJsZSBCPGRwa2c+IGhhcyBydW4sIG9yIEI8MT4gIgorIndpdGggYW4gZXJyb3IgbWVzc2FnZSB0byBzdGRlcnIgaWYgbm90LiBOb3JtYWxseSwgaG93ZXZlciwgaXQgaXMgYmV0dGVyIGp1c3QgIgorInRvIGFjdGl2YXRlIHRoZSBkZXNpcmVkIHRyaWdnZXIgd2l0aCBCPGRwa2ctdHJpZ2dlcj4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXRyaWdnZXIuMTo0MworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tYnktcGFja2FnZT0+STxwYWNrYWdlPiIKK21zZ3N0ciAiQjwtLXBhY2thZ2U+STwgRTxsdD5wYWNrYWdlRTxndD4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXRyaWdnZXIuMTo0OQorbXNnaWQgIiIKKyJPdmVycmlkZSB0cmlnZ2VyIGF3YWl0ZXIgKG5vcm1hbGx5IHNldCBieSBCPGRwa2c+IHRocm91Z2ggdGhlICIKKyJCPERQS0dfTUFJTlRTQ1JJUFRfUEFDS0FHRT4gZW52aXJvbm1lbnQgdmFyaWFibGUgb2YgdGhlIG1haW50YWluZXIgc2NyaXB0cywgIgorIm5hbWluZyB0aGUgcGFja2FnZSB0byB3aGljaCB0aGUgc2NyaXB0IGJlbG9uZ3MsIGFuZCB0aGlzIHdpbGwgYmUgdXNlZCBieSAiCisiZGVmYXVsdCkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXRyaWdnZXIuMTo0OQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tbm8tYXdhaXQ+IgorbXNnc3RyICJCPC0tbm8tZGVic2lnPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy10cmlnZ2VyLjE6NTYKK21zZ2lkICIiCisiVGhpcyBvcHRpb24gYXJyYW5nZXMgdGhhdCB0aGUgY2FsbGluZyBwYWNrYWdlIFQgKGlmIGFueSkgbmVlZCBub3QgYXdhaXQgdGhlICIKKyJwcm9jZXNzaW5nIG9mIHRoaXMgdHJpZ2dlcjsgdGhlIGludGVyZXN0ZWQgcGFja2FnZShzKSBJLCB3aWxsIG5vdCBiZSBhZGRlZCAiCisidG8gVCdzIHRyaWdnZXIgcHJvY2Vzc2luZyBhd2FpdGVkIGxpc3QgYW5kIFQncyBzdGF0dXMgaXMgdW5jaGFuZ2VkLiAgVCBtYXkgIgorImJlIGNvbnNpZGVyZWQgaW5zdGFsbGVkIGV2ZW4gdGhvdWdoIEkgbWF5IG5vdCB5ZXQgaGF2ZSBwcm9jZXNzZWQgdGhlIHRyaWdnZXIuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXRyaWdnZXIuMTo1NgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tbm8tYWN0PiIKK21zZ3N0ciAiQjwtLW5vY2hlY2s+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXRyaWdnZXIuMTo1OQorbXNnaWQgIkp1c3QgdGVzdCwgZG8gbm90IGFjdHVhbGx5IGNoYW5nZSBhbnl0aGluZy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy10cmlnZ2VyLjE6NjkKKyMsIGZ1enp5Cittc2dpZCAiIgorIkI8ZHBrZz4oMSksIEI8ZGViLXRyaWdnZXJzPig1KSwgQjwvdXNyL3NoYXJlL2RvYy9kcGtnLWRldi90cmlnZ2Vycy50eHQuZ3o+LiIKK21zZ3N0ciAiQjxkcGtnLWRlYiBhY3Rpb25zPiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctdmVuZG9yLjE6MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJkcGtnLXZlbmRvciIKK21zZ3N0ciAiZHBrZy1kaXZlcnQiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctdmVuZG9yLjE6NAorbXNnaWQgImRwa2ctdmVuZG9yIC0gcXVlcmllcyBpbmZvcm1hdGlvbiBhYm91dCBkaXN0cmlidXRpb24gdmVuZG9ycyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXZlbmRvci4xOjgKKyMsIGZ1enp5Cittc2dpZCAiQjxkcGtnLXZlbmRvcj4gW0k8b3B0aW9uPi4uLl0gSTxjb21tYW5kPiIKK21zZ3N0ciAiQjxkcGtnPiBbSTxvcHRpb25zPl0gSTxhY3Rpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXZlbmRvci4xOjEzCittc2dpZCAiIgorIkI8ZHBrZy12ZW5kb3I+IGlzIGEgdG9vbCB0byBxdWVyeSBpbmZvcm1hdGlvbiBhYm91dCB2ZW5kb3JzIGxpc3RlZCBpbiBCPC9ldGMvIgorImRwa2cvb3JpZ2lucz4uIEI8L2V0Yy9kcGtnL29yaWdpbnMvZGVmYXVsdD4gY29udGFpbnMgaW5mb3JtYXRpb24gYWJvdXQgdGhlICIKKyJjdXJyZW50IHZlbmRvci4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctdmVuZG9yLjE6MTUKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWlzPkk8IHZlbmRvcj4iCittc2dzdHIgIkI8LS1hZG1pbmRpcj0+STxkaXI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXZlbmRvci4xOjE5Cittc2dpZCAiIgorIkV4aXRzIHdpdGggQjwwPiBpZiB0aGUgY3VycmVudCB2ZW5kb3IgaXMgSTx2ZW5kb3I+LiBPdGhlcndpc2UgZXhpdHMgd2l0aCBub24tIgorInplcm8uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXZlbmRvci4xOjE5CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1kZXJpdmVzLWZyb20+STwgdmVuZG9yPiIKK21zZ3N0ciAiQjwtLWRpdmVydD5JPCBFPGx0PmRpdmVydC10b0U8Z3Q+PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy12ZW5kb3IuMToyNAorbXNnaWQgIiIKKyJFeGl0cyB3aXRoIEI8MD4gaWYgdGhlIGN1cnJlbnQgdmVuZG9yIGRpc3RyaWJ1dGlvbiBpcyBhIGRlcml2YXRpdmUgb2YgIgorIkk8dmVuZG9yPiwgb3RoZXJ3aXNlIGV4aXRzIHdpdGggbm9uLXplcm8uIEl0IHVzZXMgdGhlIFwiUGFyZW50XCIgZmllbGQgdG8gIgorImJyb3dzZSBhbGwgYW5jZXN0b3JzIG9mIHRoZSBjdXJyZW50IHZlbmRvci4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctdmVuZG9yLjE6MjQKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLXF1ZXJ5Pkk8IGZpZWxkPiIKK21zZ3N0ciAiQjwtLWF1dG8+IEk8bGluaz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctdmVuZG9yLjE6MjgKK21zZ2lkICIiCisiUHJpbnQgb24gc3RhbmRhcmQgb3V0cHV0IHRoZSB2YWx1ZSBvZiB0aGUgdmVuZG9yLXNwZWNpZmljIEk8ZmllbGQ+IGZvciB0aGUgIgorImN1cnJlbnQgdmVuZG9yLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy12ZW5kb3IuMTozNgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tdmVuZG9yPkk8IHZlbmRvcj4iCittc2dzdHIgIkI8LS1kaXZlcnQ+STwgRTxsdD5kaXZlcnQtdG9FPGd0Pj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctdmVuZG9yLjE6NDEKK21zZ2lkICIiCisiQXNzdW1lcyB0aGUgY3VycmVudCB2ZW5kb3IgaXMgSTx2ZW5kb3I+IGluc3RlYWQgb2YgZGlzY292ZXJpbmcgaXQgd2l0aCB0aGUgIgorIkI8REVCX1ZFTkRPUj4gZW52aXJvbm1lbnQgdmFyaWFibGUgb3IgQjwvZXRjL2Rwa2cvb3JpZ2lucy9kZWZhdWx0Pi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctdmVuZG9yLjE6NDMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPERFQl9WRU5ET1I+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctdmVuZG9yLjE6NDcKK21zZ2lkICIiCisiVGhpcyBzZXR0aW5nIGRlZmluZXMgdGhlIGN1cnJlbnQgdmVuZG9yLiBJZiBub3Qgc2V0LCBpdCB3aWxsIGRpc2NvdmVyIHRoZSAiCisiY3VycmVudCB2ZW5kb3IgYnkgcmVhZGluZyBCPC9ldGMvZHBrZy9vcmlnaW5zL2RlZmF1bHQ+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXZlbmRvci4xOjUwIHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0OTgKKyMsIGZ1enp5Cittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMDkgUmFwaGFcXFs6ZV1sIEhlcnR6b2ciCittc2dzdHIgIkNvcHlyaWdodCAyMDAxIEpvZXkgSGVzcyIKKworIy4gdHlwZTogVEgKKyM6IGRzZWxlY3QuMToxCisjLCBuby13cmFwCittc2dpZCAiZHNlbGVjdCIKK21zZ3N0ciAiZHNlbGVjdCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjQKK21zZ2lkICJkc2VsZWN0IC0gRGViaWFuIHBhY2thZ2UgbWFuYWdlbWVudCBmcm9udGVuZCIKK21zZ3N0ciAiZHNlbGVjdCAtIERlYmlhbiDjg5Hjg4PjgrHjg7zjgrjnrqHnkIbjg5Xjg63jg7Pjg4jjgqjjg7Pjg4kiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo4CisjLCBmdXp6eQorI3wgbXNnaWQgIkI8ZHBrZz4gW0k8b3B0aW9ucz5dIEk8YWN0aW9uPiIKK21zZ2lkICJCPGRzZWxlY3Q+IFtJPG9wdGlvbj4uLi5dIFtJPGFjdGlvbj5dIgorbXNnc3RyICJCPGRwa2c+IFtJPG9wdGlvbnM+XSBJPGFjdGlvbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxNworIywgbm8td3JhcAorbXNnaWQgIiIKKyJCPGRzZWxlY3Q+XG4iCisiaXMgb25lIG9mIHRoZSBwcmltYXJ5IHVzZXIgaW50ZXJmYWNlcyBmb3IgbWFuYWdpbmcgcGFja2FnZXMgb24gYSBEZWJpYW5cbiIKKyJzeXN0ZW0uIEF0IHRoZSBCPGRzZWxlY3Q+IG1haW4gbWVudSwgdGhlIHN5c3RlbSBhZG1pbmlzdHJhdG9yIGNhbjpcbiIKKyIgLSBVcGRhdGUgdGhlIGxpc3Qgb2YgYXZhaWxhYmxlIHBhY2thZ2UgdmVyc2lvbnMsXG4iCisiIC0gVmlldyB0aGUgc3RhdHVzIG9mIGluc3RhbGxlZCBhbmQgYXZhaWxhYmxlIHBhY2thZ2VzLFxuIgorIiAtIEFsdGVyIHBhY2thZ2Ugc2VsZWN0aW9ucyBhbmQgbWFuYWdlIGRlcGVuZGVuY2llcyxcbiIKKyIgLSBJbnN0YWxsIG5ldyBwYWNrYWdlcyBvciB1cGdyYWRlIHRvIG5ld2VyIHZlcnNpb25zLlxuIgorbXNnc3RyICIiCisiQjxkc2VsZWN0PiDjga8gRGViaWFuIOOCt+OCueODhuODoOOBruOAgeS4u+imgeOBquODkeODg+OCseODvOOCuOeuoeeQhueUqOODpuODvOOCtuOCpOODs+OCv+ODvOODleOCp+ODvOOCueOBruS4gOOBpOOBp+OBguOCi+OAguOCt+OCueODhuODoOeuoeeQhuiAheOBr+OAgUI8ZHNlbGVjdD4g44Gu44Oh44Kk44Oz44Oh44OL44Ol44O844Gn5Lul5LiL44Gu5pON5L2c44KS6KGM44GI44KL44CCXG4iCisiIC0g5Yip55So5Y+v6IO944OR44OD44Kx44O844K444Gu44OQ44O844K444On44Oz44Oq44K544OI44Gu5pu05paw44CCXG4iCisiIC0g44Kk44Oz44K544OI44O844Or5riI44G/44O75Yip55So5Y+v6IO944OR44OD44Kx44O844K444Gu54q25rOB44Gu5Y+C54Wn44CCXG4iCisiIC0g5Luj5pu/44OR44OD44Kx44O844K444Gu6YG45oqe5Y+K44Gz5L6d5a2Y6Zai5L+C566h55CG44CCXG4iCisiIC0g5paw6KaP44OR44OD44Kx44O844K444Gu44Kk44Oz44K544OI44O844Or44KE5paw44OQ44O844K444On44Oz44G444Gu5pu05paw44CCXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToyOQorbXNnaWQgIiIKKyJCPGRzZWxlY3Q+IG9wZXJhdGVzIGFzIGEgZnJvbnQtZW5kIHRvIEI8ZHBrZz4oMSksIHRoZSBsb3ctbGV2ZWwgZGViaWFuICIKKyJwYWNrYWdlIGhhbmRsaW5nIHRvb2wuIEl0IGZlYXR1cmVzIGEgZnVsbC1zY3JlZW4gcGFja2FnZSBzZWxlY3Rpb25zIG1hbmFnZXIgIgorIndpdGggcGFja2FnZSBkZXBlbmRzIGFuZCBjb25mbGljdHMgcmVzb2x2ZXIuIFdoZW4gcnVuIHdpdGggYWRtaW5pc3RyYXRvciAiCisicHJpdmlsZWdlcywgcGFja2FnZXMgY2FuIGJlIGluc3RhbGxlZCwgdXBncmFkZWQgYW5kIHJlbW92ZWQuIFZhcmlvdXMgYWNjZXNzICIKKyJtZXRob2RzIGNhbiBiZSBjb25maWd1cmVkIHRvIHJldHJpZXZlIGF2YWlsYWJsZSBwYWNrYWdlIHZlcnNpb24gaW5mb3JtYXRpb24gIgorImFuZCBpbnN0YWxsYWJsZSBwYWNrYWdlcyBmcm9tIHBhY2thZ2UgcmVwb3NpdG9yaWVzLiAgRGVwZW5kaW5nIG9uIHRoZSB1c2VkICIKKyJhY2Nlc3MgbWV0aG9kLCB0aGVzZSByZXBvc2l0b3JpZXMgY2FuIGJlIHB1YmxpYyBhcmNoaXZlIHNlcnZlcnMgb24gdGhlICIKKyJpbnRlcm5ldCwgbG9jYWwgYXJjaGl2ZSBzZXJ2ZXJzIG9yIGNkcm9tcy4gIFRoZSByZWNvbW1lbmRlZCBhY2Nlc3MgbWV0aG9kIGlzICIKKyJJPGFwdD4sIHdoaWNoIGlzIHByb3ZpZGVkIGJ5IHRoZSBwYWNrYWdlIEI8YXB0Pi4iCittc2dzdHIgIiIKKyJCPGRzZWxlY3Q+IOOBr+OAgUI8ZHBrZz4oMSkgKOS4i+S9jeWxpCBEZWJpYW4g44OR44OD44Kx44O844K4566h55CG44OE44O844OrKSDjga7jg5Xjg63jg7Pjg4jjgqjjg7MiCisi44OJ44Go44GX44Gm5YuV5L2c44GZ44KL44CC44OR44OD44Kx44O844K444Gu5L6d5a2Y44O756u25ZCI44Gu6Kej5rG644KS6KGM44Gq44GI44KL44CB5YWo55S76Z2i44OR44OD44Kx44O844K46YG4IgorIuaKnuODnuODjeODvOOCuOODo+OBp+OBguOCi+OBk+OBqOOBjOeJueW+tOOBp+OBguOCi+OAgueuoeeQhuiAheaoqemZkOOBp+i1t+WLleOBmeOCi+OBqOOAgeODkeODg+OCseODvOOCuOOBruOCpOODsyIKKyLjgrnjg4jjg7zjg6vjgIHmm7TmlrDjgIHliYrpmaTjgpLooYzjgYbjgZPjgajjgYzjgafjgY3jgovjgILjgb7jgZ/jg5Hjg4PjgrHjg7zjgrjjg6rjg53jgrjjg4jjg6rjgojjgorjgIHliKnnlKjlj68iCisi6IO944OR44OD44Kx44O844K444Gu44OQ44O844K444On44Oz5oOF5aCx44KE44CB44Kk44Oz44K544OI44O844Or5Y+v6IO944OR44OD44Kx44O844K444Gu5Y+W5b6X44GZ44KL44Gf44KB44Gu44CBIgorIuanmOOAheOBquOCouOCr+OCu+OCueaWueW8j+OCkuioreWumuOBp+OBjeOCi+OAguS9v+eUqOOBmeOCi+OCouOCr+OCu+OCueaWueW8j+OBq+OCiOOBo+OBpuOAgeOCpOODs+OCv+ODvOODjeODg+ODiCIKKyLkuIrjga7lhazplovjgrXjg7zjg5DjgIHjg63jg7zjgqvjg6vjgrXjg7zjg5DjgIFDRC1ST00g44KS44Oq44Od44K444OI44Oq44Gr44Gn44GN44KL44CC5o6o5aWo44GZ44KL44Ki44Kv44K744K5IgorIuaWueW8j+OBr+OAgUI8YXB0PiDjg5Hjg4PjgrHjg7zjgrjjgafmj5DkvpvjgZnjgosgSTxhcHQ+IOOBp+OBguOCi+OAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjM1CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJOb3JtYWxseSBCPGRzZWxlY3Q+IGlzIGludm9rZWQgd2l0aG91dCBwYXJhbWV0ZXJzLiBBbiBpbnRlcmFjdGl2ZSBtZW51IGlzICIKKyN8ICJwcmVzZW50ZWQsIG9mZmVyaW5nIHRoZSB1c2VyIGEgbGlzdCBvZiBhY3Rpb25zLiBJZiBhbiBhY3Rpb24gaXMgZ2l2ZW4gYXMgIgorI3wgImFyZ3VtZW50LCB0aGVuIHRoYXQgYWN0aW9uIGlzIHN0YXJ0ZWQgaW1tZWRpYXRlbHkuIFNldmVyYWwgY29tbWFuZGxpbmUgIgorI3wgInBhcmFtZXRlcnMgYXJlIHN0aWxsIGF2YWlsYWJsZSB0byBtb2RpZnkgdGhlIHJ1bm5pbmcgYmVoYXZpb3VyIG9mICIKKyN8ICJCPGRzZWxlY3Q+IG9yIHNob3cgYWRkaXRpb25hbCBpbmZvcm1hdGlvbiBhYm91dCB0aGUgcHJvZ3JhbS4iCittc2dpZCAiIgorIk5vcm1hbGx5IEI8ZHNlbGVjdD4gaXMgaW52b2tlZCB3aXRob3V0IHBhcmFtZXRlcnMuIEFuIGludGVyYWN0aXZlIG1lbnUgaXMgIgorInByZXNlbnRlZCwgb2ZmZXJpbmcgdGhlIHVzZXIgYSBsaXN0IG9mIGFjdGlvbnMuIElmIGFuIGFjdGlvbiBpcyBnaXZlbiBhcyAiCisiYXJndW1lbnQsIHRoZW4gdGhhdCBhY3Rpb24gaXMgc3RhcnRlZCBpbW1lZGlhdGVseS4gU2V2ZXJhbCBjb21tYW5kIGxpbmUgIgorInBhcmFtZXRlcnMgYXJlIHN0aWxsIGF2YWlsYWJsZSB0byBtb2RpZnkgdGhlIHJ1bm5pbmcgYmVoYXZpb3VyIG9mIEI8ZHNlbGVjdD4gIgorIm9yIHNob3cgYWRkaXRpb25hbCBpbmZvcm1hdGlvbiBhYm91dCB0aGUgcHJvZ3JhbS4iCittc2dzdHIgIiIKKyLpgJrluLjjgIFCPGRzZWxlY3Q+IOOBr+ODkeODqeODoeODvOOCv+OBquOBl+OBp+i1t+WLleOBmeOCi+OAguODpuODvOOCtuOBuOOBr+OAgeWvvuipseeahOODoeODi+ODpeODvOOBp+OAgeOCoiIKKyLjgq/jgrfjg6fjg7Pjga7jg6rjgrnjg4jjgpLmj5DkvpvjgZnjgovjgILlvJXmlbDjgafjgIHjgqLjgq/jgrfjg6fjg7PjgpLkuI7jgYjjgonjgozjgZ/loLTlkIjjgIHnm7TjgaHjgavjgZ3jga7jgqIiCisi44Kv44K344On44Oz44KS5a6f6KGM44GZ44KL44CC44GE44GP44Gk44GL44Gu44Kz44Oe44Oz44OJ44Op44Kk44Oz44OR44Op44Oh44O844K/44Gn44CBQjxkc2VsZWN0PiDjga7li5XjgY3jgpIiCisi5L+u5q2j44GX44Gf44KK44CB44OX44Ot44Kw44Op44Og44Gu6KOc6Laz5oOF5aCx44KS56S644GZ44GT44Go44GM44Gn44GN44KL44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NDMKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIkFsbCBvcHRpb25zIGNhbiBiZSBzcGVjaWZpZWQgYm90aCBvbiB0aGUgY29tbWFuZGxpbmUgYW5kIGluIHRoZSAiCisjfCAiQjxkc2VsZWN0PiBjb25maWd1cmF0aW9uIGZpbGUgSTwvZXRjL2Rwa2cvZHNlbGVjdC5jZmc+LiBFYWNoIGxpbmUgaW4gdGhlICIKKyN8ICJjb25maWd1cmF0aW9uIGZpbGUgaXMgZWl0aGVyIGFuIG9wdGlvbiAoZXhhY3RseSB0aGUgc2FtZSBhcyB0aGUgIgorI3wgImNvbW1hbmRsaW5lIG9wdGlvbiBidXQgd2l0aG91dCBsZWFkaW5nIGRhc2hlcykgb3IgYSBjb21tZW50IChpZiBpdCBzdGFydHMgIgorI3wgIndpdGggYSBCPCM+KS4iCittc2dpZCAiIgorIkFsbCBvcHRpb25zIGNhbiBiZSBzcGVjaWZpZWQgYm90aCBvbiB0aGUgY29tbWFuZCBsaW5lIGFuZCBpbiB0aGUgQjxkc2VsZWN0PiAiCisiY29uZmlndXJhdGlvbiBmaWxlIEk8L2V0Yy9kcGtnL2RzZWxlY3QuY2ZnPiBvciB0aGUgZmlsZXMgb24gdGhlICIKKyJjb25maWd1cmF0aW9uIGRpcmVjdG9yeSBJPC9ldGMvZHBrZy9kc2VsZWN0LmNmZy5kLz4uIEVhY2ggbGluZSBpbiB0aGUgIgorImNvbmZpZ3VyYXRpb24gZmlsZSBpcyBlaXRoZXIgYW4gb3B0aW9uIChleGFjdGx5IHRoZSBzYW1lIGFzIHRoZSBjb21tYW5kIGxpbmUgIgorIm9wdGlvbiBidXQgd2l0aG91dCBsZWFkaW5nIGRhc2hlcykgb3IgYSBjb21tZW50IChpZiBpdCBzdGFydHMgd2l0aCBhIEI8Iz4pLiIKK21zZ3N0ciAiIgorIuOCquODl+OCt+ODp+ODs+OBr+OBmeOBueOBpuOAgeOCs+ODnuODs+ODieODqeOCpOODs+WPiuOBsyBCPGRzZWxlY3Q+IOOBruioreWumuODleOCoeOCpOODqyBJPC9ldGMvZHBrZy8iCisiZHNlbGVjdC5jZmc+IOOBruS4oeaWueOBp+aMh+WumuOBp+OBjeOCi+OAguioreWumuODleOCoeOCpOODq+S4reOBruWQhOihjOOBq+OBr+OAgeOCquODl+OCt+ODp+ODsyAo5q2j56K644GrIgorIuOBr+OCs+ODnuODs+ODieODqeOCpOODs+OCquODl+OCt+ODp+ODs+OBi+OCieODgOODg+OCt+ODpeOCkumZpOOBhOOBn+OCguOBrikg44GL44CB44Kz44Oh44Oz44OIICjooYzjgYwgQjwjPiAiCisi44Gn5aeL44G+44KL5aC05ZCIKSDjgpLoqJjov7DjgZnjgovjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0OQorbXNnaWQgIiIKKyJDaGFuZ2VzIHRoZSBkaXJlY3Rvcnkgd2hlcmUgdGhlIGRwa2cgYEk8c3RhdHVzPicsIGBJPGF2YWlsYWJsZT4nIGFuZCBzaW1pbGFyICIKKyJmaWxlcyBhcmUgbG9jYXRlZC4gVGhpcyBkZWZhdWx0cyB0byBJPC92YXIvbGliL2Rwa2c+IGFuZCBub3JtYWxseSB0aGVyZSAiCisic2hvdWxkbid0IGJlIGFueSBuZWVkIHRvIGNoYW5nZSBpdC4iCittc2dzdHIgIiIKKyJkcGtnIOOBjOS9v+eUqOOBmeOCiyBgc3RhdHVzJyDjg5XjgqHjgqTjg6vjgoQgYGF2YWlsYWJsZScg44OV44Kh44Kk44Or44Gq44Gp44KS572u44GP44OH44Kj44Os44Kv44OIIgorIuODquOCkuWkieabtOOBmeOCi+OAguODh+ODleOCqeODq+ODiOOBryBJPC92YXIvbGliL2Rwa2c+IOOBp+OAgemAmuW4uOWkieabtOOBmeOCi+W/heimgeOBr+OBquOBhOOAgiIKKworIy4gdHlwZTogVFAKKyM6IGRzZWxlY3QuMTo0OQorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPC0tZGVidWc+STwgRTxsdD5maWxlRTxndD4gPnxJPCA+QjwtRD5JPEU8bHQ+ZmlsZUU8Z3Q+PiIKK21zZ2lkICJCPC0tZGVidWc+STwgZmlsZSA+fEk8ID5CPC1EPkk8ZmlsZT4iCittc2dzdHIgIkI8LS1kZWJ1Zz5JPCBFPGx0PmZpbGVFPGd0PiA+fEk8ID5CPC1EPkk8RTxsdD5maWxlRTxndD4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NTIKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlR1cm4gb24gZGVidWdnaW5nLiBEZWJ1Z2dpbmcgaW5mb3JtYXRpb24gaXMgc2VudCB0byBJPEU8bHQ+ZmlsZUU8Z3Q+Pi4iCittc2dpZCAiVHVybiBvbiBkZWJ1Z2dpbmcuIERlYnVnZ2luZyBpbmZvcm1hdGlvbiBpcyBzZW50IHRvIEk8ZmlsZT4uIgorbXNnc3RyICLjg4fjg5Djg4PjgrDjgpLmnInlirnjgavjgZnjgovjgILjg4fjg5Djg4PjgrDmg4XloLHjga8gSTxFPGx0PmZpbGVFPGd0Pj4g44Gr6YCB44KJ44KM44KL44CCIgorCisjLiB0eXBlOiBUUAorIzogZHNlbGVjdC4xOjUyCisjLCBuby13cmFwCittc2dpZCAiQjwtLWV4cGVydD4iCittc2dzdHIgIkI8LS1leHBlcnQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NTYKK21zZ2lkICIiCisiVHVybnMgb24gZXhwZXJ0IG1vZGUsIGkuZS4gZG9lc24ndCBkaXNwbGF5IHBvc3NpYmx5IGFubm95aW5nIGhlbHAgbWVzc2FnZXMuIgorbXNnc3RyICLjgqjjgq3jgrnjg5Hjg7zjg4jjg6Ljg7zjg4njgpLmnInlirnjgavjgZnjgovjgILjgaTjgb7jgorjgIHjgYbjgovjgZXjgYTjg5jjg6vjg5fjgpLooajnpLrjgZfjgarjgYTjgIIiCisKKyMuIHR5cGU6IFRQCisjOiBkc2VsZWN0LjE6NTYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tY29sb3VyPnxCPC0tY29sb3I+IEk8c2NyZWVucGFydDo+W0k8Zm9yZWdyb3VuZD5dLFtJPGJhY2tncm91bmQ+XVtJPDphdHRyPltJPCthdHRyKy4uPl1dIgorbXNnc3RyICJCPC0tY29sb3VyPnxCPC0tY29sb3I+IEk8c2NyZWVucGFydDo+W0k8Zm9yZWdyb3VuZD5dLFtJPGJhY2tncm91bmQ+XVtJPDphdHRyPltJPCthdHRyKy4uPl1dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NjMKK21zZ2lkICIiCisiQ29uZmlndXJlcyBzY3JlZW4gY29sb3JzLiBUaGlzIHdvcmtzIG9ubHkgaWYgeW91ciBkaXNwbGF5IHN1cHBvcnRzIGNvbG9ycy4gICIKKyJUaGlzIG9wdGlvbiBtYXkgYmUgdXNlZCBtdWx0aXBsZSB0aW1lcyAoYW5kIGlzIGJlc3QgdXNlZCBpbiBJPGRzZWxlY3QuY2ZnPikuICIKKyJFYWNoIHVzZSBjaGFuZ2VzIHRoZSBjb2xvciAoYW5kIG9wdGlvbmFsbHksIG90aGVyIGF0dHJpYnV0ZXMpIG9mIG9uZSBwYXJ0IG9mICIKKyJ0aGUgc2NyZWVuLiAgVGhlIHBhcnRzIG9mIHRoZSBzY3JlZW4gKGZyb20gdG9wIHRvIGJvdHRvbSkgYXJlOiIKK21zZ3N0ciAiIgorIuihqOekuuiJsuOCkuioreWumuOBmeOCi+OAguODh+OCo+OCueODl+ODrOOCpOOBjOOCq+ODqeODvOihqOekuuOCkuOCteODneODvOODiOOBl+OBpuOBhOOCi+WgtOWQiOOBq+acieWKueOBp+OBgiIKKyLjgovjgILjgZPjga7jgqrjg5fjgrfjg6fjg7Pjga/jgIHopIfmlbDlm57mjIflrprjgafjgY3jgoso44Gd44GX44GmIEk8ZHNlbGVjdC5jZmc+IOOBp+S4gOeVquS9v+eUqOOBleOCjOOBpiIKKyLjgYTjgosp44CC5oyH5a6a44GU44Go44Gr44CB55S76Z2i44Gu5LiA6YOo44Gu6ImyKOOChOS7luOBruWxnuaApynjgpLlpInmm7TjgZnjgovjgILnlLvpnaIgKOS4iuOBi+OCieS4i+OBvuOBpykgIgorIuOBrumDqOS9jeOBr+asoeOBruOBqOOBiuOCijoiCisKKyMuIHR5cGU6IFRQCisjOiBkc2VsZWN0LjE6NjQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHRpdGxlPiIKK21zZ3N0ciAiQjx0aXRsZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo2NworbXNnaWQgIlRoZSBzY3JlZW4gdGl0bGUuIgorbXNnc3RyICLnlLvpnaLjgr/jgqTjg4jjg6siCisKKyMuIHR5cGU6IFRQCisjOiBkc2VsZWN0LjE6NjcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGxpc3RoZWFkPiIKK21zZ3N0ciAiQjxsaXN0aGVhZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo3MAorbXNnaWQgIlRoZSBoZWFkZXIgbGluZSBhYm92ZSB0aGUgbGlzdCBvZiBwYWNrYWdlcy4iCittc2dzdHIgIuODkeODg+OCseODvOOCuOODquOCueODiOOBruS4iuOBruODmOODg+ODgOODqeOCpOODsyIKKworIy4gdHlwZTogVFAKKyM6IGRzZWxlY3QuMTo3MAorIywgbm8td3JhcAorbXNnaWQgIkI8bGlzdD4iCittc2dzdHIgIkI8bGlzdD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo3MworbXNnaWQgIlRoZSBzY3JvbGxpbmcgbGlzdCBvZiBwYWNrYWdlcyAoYW5kIGFsc28gc29tZSBoZWxwIHRleHQpLiIKK21zZ3N0ciAi44OR44OD44Kx44O844K444Oq44K544OI44Gu44K544Kv44Ot44O844Or6aCY5Z+fICjjg5jjg6vjg5fjgoLooajnpLrjgZnjgospIgorCisjLiB0eXBlOiBUUAorIzogZHNlbGVjdC4xOjczCisjLCBuby13cmFwCittc2dpZCAiQjxsaXN0c2VsPiIKK21zZ3N0ciAiQjxsaXN0c2VsPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjc2Cittc2dpZCAiVGhlIHNlbGVjdGVkIGl0ZW0gaW4gdGhlIGxpc3QuIgorbXNnc3RyICLjg6rjgrnjg4jlhoXjga7pgbjmip7ooYwiCisKKyMuIHR5cGU6IFRQCisjOiBkc2VsZWN0LjE6NzYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHBrZ3N0YXRlPiIKK21zZ3N0ciAiQjxwa2dzdGF0ZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo4MAorbXNnaWQgIiIKKyJJbiB0aGUgbGlzdCBvZiBwYWNrYWdlcywgdGhlIHRleHQgaW5kaWNhdGluZyB0aGUgY3VycmVudCBzdGF0ZSBvZiBlYWNoICIKKyJwYWNrYWdlLiIKK21zZ3N0ciAi44OR44OD44Kx44O844K444Oq44K544OI5Lit44CB44OR44OD44Kx44O844K444Gu54++5Zyo54q25rOB6KGo56S66YOoIgorCisjLiB0eXBlOiBUUAorIzogZHNlbGVjdC4xOjgwCisjLCBuby13cmFwCittc2dpZCAiQjxwa2dzdGF0ZXNlbD4iCittc2dzdHIgIkI8cGtnc3RhdGVzZWw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6ODQKK21zZ2lkICIiCisiSW4gdGhlIGxpc3Qgb2YgcGFja2FnZXMsIHRoZSB0ZXh0IGluZGljYXRpbmcgdGhlIGN1cnJlbnQgc3RhdGUgb2YgdGhlICIKKyJjdXJyZW50bHkgc2VsZWN0ZWQgcGFja2FnZS4iCittc2dzdHIgIuODkeODg+OCseODvOOCuOODquOCueODiOS4reOAgemBuOaKnuOBl+OBn+ODkeODg+OCseODvOOCuOOBruePvuWcqOeKtuazgeihqOekuumDqCIKKworIy4gdHlwZTogVFAKKyM6IGRzZWxlY3QuMTo4NAorIywgbm8td3JhcAorbXNnaWQgIkI8aW5mb2hlYWQ+IgorbXNnc3RyICJCPGluZm9oZWFkPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjg3Cittc2dpZCAiIgorIlRoZSBoZWFkZXIgbGluZSB0aGF0IGRpc3BsYXlzIHRoZSBzdGF0ZSBvZiB0aGUgY3VycmVudGx5IHNlbGVjdGVkIHBhY2thZ2UuIgorbXNnc3RyICLpgbjmip7kuK3jg5Hjg4PjgrHjg7zjgrjjga7nirbms4HooajnpLrpg6jjga7jg5jjg4Pjg4DooYwiCisKKyMuIHR5cGU6IFRQCisjOiBkc2VsZWN0LjE6ODcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGluZm9kZXNjPiIKK21zZ3N0ciAiQjxpbmZvZGVzYz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo5MAorbXNnaWQgIlRoZSBwYWNrYWdlJ3Mgc2hvcnQgZGVzY3JpcHRpb24uIgorbXNnc3RyICLjg5Hjg4PjgrHjg7zjgrjjga7nn63jgYToqqzmmI7mlociCisKKyMuIHR5cGU6IFRQCisjOiBkc2VsZWN0LjE6OTAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGluZm8+IgorbXNnc3RyICJCPGluZm8+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6OTMKK21zZ2lkICJVc2VkIHRvIGRpc3BsYXkgcGFja2FnZSBpbmZvIHN1Y2ggYXMgdGhlIHBhY2thZ2UncyBkZXNjcmlwdGlvbi4iCittc2dzdHIgIuODkeODg+OCseODvOOCuOOBruiqrOaYjuOBquOBqeOBruODkeODg+OCseODvOOCuOaDheWgseihqOekuumDqCIKKworIy4gdHlwZTogVFAKKyM6IGRzZWxlY3QuMTo5MworIywgbm8td3JhcAorbXNnaWQgIkI8aW5mb2Zvb3Q+IgorbXNnc3RyICJCPGluZm9mb290PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjk2Cittc2dpZCAiVGhlIGxhc3QgbGluZSBvZiB0aGUgc2NyZWVuIHdoZW4gc2VsZWN0aW5nIHBhY2thZ2VzLiIKK21zZ3N0ciAi44OR44OD44Kx44O844K46YG45oqe5pmC44Gu55S76Z2i5pyA5LiL6KGMIgorCisjLiB0eXBlOiBUUAorIzogZHNlbGVjdC4xOjk2CisjLCBuby13cmFwCittc2dpZCAiQjxxdWVyeT4iCittc2dzdHIgIkI8cXVlcnk+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6OTkKK21zZ2lkICJVc2VkIHRvIGRpc3BsYXkgcXVlcnkgbGluZXMiCittc2dzdHIgIuimgeaxguihjOihqOekuumDqCIKKworIy4gdHlwZTogVFAKKyM6IGRzZWxlY3QuMTo5OQorIywgbm8td3JhcAorbXNnaWQgIkI8aGVscHNjcmVlbj4iCittc2dzdHIgIkI8aGVscHNjcmVlbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxMDIKK21zZ2lkICJDb2xvciBvZiBoZWxwIHNjcmVlbnMuIgorbXNnc3RyICLjg5jjg6vjg5fnlLvpnaLjga7oibIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxMDcKK21zZ2lkICIiCisiQWZ0ZXIgdGhlIHBhcnQgb2YgdGhlIHNjcmVlbiBjb21lcyBhIGNvbG9uIGFuZCB0aGUgY29sb3Igc3BlY2lmaWNhdGlvbi4gWW91ICIKKyJjYW4gc3BlY2lmeSBlaXRoZXIgdGhlIGZvcmVncm91bmQgY29sb3IsIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLCBvciBib3RoLCAiCisib3ZlcnJpZGluZyB0aGUgY29tcGlsZWQtaW4gY29sb3JzLiBVc2Ugc3RhbmRhcmQgY3Vyc2VzIGNvbG9yIG5hbWVzLiIKK21zZ3N0ciAiIgorIueUu+mdouOBrumDqOS9jeOBruW+jOOBq+OAgeOCs+ODreODs+OBqOiJsuioreWumuOCkuiomOi/sOOBmeOCi+OAguOCs+ODs+ODkeOCpOODq+aZguOBruiJsuOCkueEoeimluOBl+OBpuOAgeWJjeaZryIKKyLoibLjgIHog4zmma/oibLjgYLjgovjgYTjga/kuKHmlrnjgpLmjIflrprjgZnjgovjgZPjgajjgYzjgafjgY3jgovjgILmqJnmupYgY3Vyc2VzIOiJsuWQjeensOOCkuS9v+eUqOOBmeOCi+OAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjExMworbXNnaWQgIiIKKyJPcHRpb25hbGx5LCBhZnRlciB0aGUgY29sb3Igc3BlY2lmaWNhdGlvbiBpcyBhbm90aGVyIGNvbG9uLCBhbmQgYW4gYXR0cmlidXRlICIKKyJzcGVjaWZpY2F0aW9uLiBUaGlzIGlzIGEgbGlzdCBvZiBvbmUgb3IgbW9yZSBhdHRyaWJ1dGVzLCBzZXBhcmF0ZWQgYnkgcGx1cyAiCisiKFwiK1wiKSBjaGFyYWN0ZXJzLiBBdmFpbGFibGUgYXR0cmlidXRlcyBpbmNsdWRlIChub3QgYWxsIG9mIHRoZXNlIHdpbGwgd29yayAiCisib24gYWxsIHRlcm1pbmFscyk6IG5vcm1hbCwgc3RhbmRvdXQsIHVuZGVybGluZSwgcmV2ZXJzZSwgYmxpbmssIGJyaWdodCwgZGltLCAiCisiYm9sZCIKK21zZ3N0ciAiIgorIuS7u+aEj+OBp+OAgeiJsuioreWumuOBruW+jOOBq+WIpeOBruOCs+ODreODs+OBp+OAgeWxnuaAp+OCkuioreWumuOBp+OBjeOCi+OAguOBk+OCjOOBr+ODl+ODqeOCuShcIitcIinmloflrZfjgasiCisi44KI44Gj44Gm5YiG6Zui44GV44KM44Gf44CB6KSH5pWw44Gu5bGe5oCn44Gu44Oq44K544OI44Gn44GC44KL44CC5Yip55So5Y+v6IO944Gq5bGe5oCn44KS5Lul5LiL5YiX5oyZ44GZ44KLKOOBmeOBuSIKKyLjgabjga7lsZ7mgKfjgYzjgZnjgbnjgabjga7nq6/mnKvjgafmnInlirnjgajjga/pmZDjgonjgarjgYQpOiBub3JtYWwsIHN0YW5kb3V0LCB1bmRlcmxpbmUsICIKKyJyZXZlcnNlLCBibGluaywgYnJpZ2h0LCBkaW0sIGJvbGQiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxMTYKK21zZ2lkICJQcmludCBhIGJyaWVmIGhlbHAgdGV4dCBhbmQgZXhpdCBzdWNjZXNzZnVsbHkuIgorbXNnc3RyICLnsKHljZjjgarjg5jjg6vjg5fjgpLooajnpLrjgZfjgIHmraPluLjntYLkuobjgZnjgovjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxMTkKKyMsIGZ1enp5Cittc2dpZCAiUHJpbnQgdmVyc2lvbiBpbmZvcm1hdGlvbiBhbmQgZXhpdCBzdWNjZXNzZnVsbHkuIgorbXNnc3RyICIiCisiIy0jLSMtIy0jICBqYS5wbyAoZHBrZyBtYW4gcGFnZXMpICAjLSMtIy0jLSNcbiIKKyLjg5Djg7zjgrjjg6fjg7Pmg4XloLHjgpLooajnpLrjgZfjgIHmraPluLjntYLkuobjgZnjgovjgIJcbiIKKyIjLSMtIy0jLSMgIGphLnBvIChkcGtnIG1hbiBwYWdlcykgICMtIy0jLSMtI1xuIgorIuODkOODvOOCuOODp+ODs+aDheWgseOCkuihqOekuuOBl+OBpuato+W4uOe1guS6huOBmeOCi+OAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjEyNgorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiV2hlbiBCPGRzZWxlY3Q+IGlzIHN0YXJ0ZWQgaW50ZXJhY3RpdmVseSwgaXQgcHJvbXB0cyB0aGUgdXNlciB3aXRoIGEgbWVudSAiCisjfCAib2YgYXZhaWxhYmxlIGFjdGlvbnM6IgorbXNnaWQgIiIKKyJXaGVuIEI8ZHNlbGVjdD4gaXMgc3RhcnRlZCBpdCBjYW4gcGVyZm9ybSB0aGUgZm9sbG93aW5nIGFjdGlvbnMsIGVpdGhlciAiCisiZGlyZWN0bHkgaWYgaXQgd2FzIHNwZWNpZmllZCBvbiB0aGUgY29tbWFuZCBsaW5lIG9yIGJ5IHByb21wdGluZyB0aGUgdXNlciAiCisid2l0aCBhIG1lbnUgb2YgYXZhaWxhYmxlIGFjdGlvbnMgaWYgcnVubmluZyBpbnRlcmFjdGl2ZWx5OiIKK21zZ3N0ciAiIgorIkI8ZHNlbGVjdD4g44KS5a++6Kmx55qE44Gr6LW35YuV44GZ44KL44Go44CB5Lul5LiL44Gu5Yip55So5Y+v6IO944Ki44Kv44K344On44Oz44Gu44Oh44OL44Ol44O844KS44Om44O844K244GrIgorIuaPkOekuuOBmeOCi+OAgiIKKworIy4gdHlwZTogU1MKKyM6IGRzZWxlY3QuMToxMjYKKyMsIG5vLXdyYXAKK21zZ2lkICJhY2Nlc3MiCittc2dzdHIgImFjY2VzcyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjEyOAorbXNnaWQgIkNob29zZSBhbmQgY29uZmlndXJlIGFuIGFjY2VzcyBtZXRob2QgdG8gYWNjZXNzIHBhY2thZ2UgcmVwb3NpdG9yaWVzLiIKK21zZ3N0ciAiIgorIuODkeODg+OCseODvOOCuOODquODneOCuOODiOODquOBq+OCouOCr+OCu+OCueOBmeOCi+OBn+OCgeOBruOAgeOCouOCr+OCu+OCueaWueW8j+OCkumBuOaKnuODu+ioreWumuOBmeOCi+OAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjEzNAorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiQnkgZGVmYXVsdCwgQjxkc2VsZWN0PiBwcm92aWRlcyBzZXZlcmFsIG1ldGhvZHMgc3VjaCBhcyBJPGZsb3BweT4sICIKKyN8ICJJPGhhcmRkaXNrPiBvciBJPGNkcm9tPiwgYnV0IG90aGVyIHBhY2thZ2VzIG1heSBwcm92aWRlIGFkZGl0aW9uYWwgIgorI3wgIm1ldGhvZHMsIGVnLiB0aGUgSTxhcHQ+IGFjY2VzcyBtZXRob2QgcHJvdmlkZWQgYnkgdGhlIEI8YXB0PiBwYWNrYWdlIG9yICIKKyN8ICJJPG11bHRpX2NkPiBieSB0aGUgQjxkcGtnLW11bHRpY2Q+IHBhY2thZ2UuIgorbXNnaWQgIiIKKyJCeSBkZWZhdWx0LCBCPGRzZWxlY3Q+IHByb3ZpZGVzIHNldmVyYWwgbWV0aG9kcyBzdWNoIGFzIEk8Y2Ryb20+LCAiCisiSTxtdWx0aV9jZD4sIEk8bmZzPiwgSTxtdWx0aV9uZnM+LCBJPGhhcmRkaXNrPiwgSTxtb3VudGVkPiwgSTxtdWx0aV9tb3VudD4sICIKKyJJPGZsb3BweT4gb3IgSTxmdHA+LCBidXQgb3RoZXIgcGFja2FnZXMgbWF5IHByb3ZpZGUgYWRkaXRpb25hbCBtZXRob2RzLCBlZy4gIgorInRoZSBJPGFwdD4gYWNjZXNzIG1ldGhvZCBwcm92aWRlZCBieSB0aGUgQjxhcHQ+IHBhY2thZ2UuIgorbXNnc3RyICIiCisi44OH44OV44Kp44Or44OI44Gn44GvIEI8ZHNlbGVjdD4g44GvIEk8ZmxvcHB5PiwgSTxoYXJkZGlzaz4sIEk8Y2Ryb20+IOOBqOOBhOOBo+OBn+OAgeOBhOOBjyIKKyLjgaTjgYvjga7mlrnlvI/jgpLmj5DkvpvjgZnjgovjgILjgZfjgYvjgZfjgIHku5bjga7jg5Hjg4PjgrHjg7zjgrjjgYzov73liqDjgqLjgq/jgrvjgrnmlrnlvI/jgpLmj5DkvpvjgZnjgovjgZPjgagiCisi44KC44GC44KL44CC5L6L44GI44Gw44CBSTxhcHQ+IOOCouOCr+OCu+OCueaWueW8j+OBryBCPGFwdD4g44OR44OD44Kx44O844K444Gn5o+Q5L6b44GV44KM44CBICIKKyJJPG11bHRpX2NkPiDjga8gQjxkcGtnLW11bHRpY2Q+IOOBp+aPkOS+m+OBleOCjOOCi+OAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjEzNgorbXNnaWQgIlRoZSB1c2Ugb2YgdGhlIEk8YXB0PiBhY2Nlc3MgbWV0aG9kIGlzIHN0cm9uZ2x5IHJlY29tbWVuZGVkLiIKK21zZ3N0ciAiSTxhcHQ+IOOCouOCr+OCu+OCueaWueW8j+OBruS9v+eUqOOCkuOAgeW8t+OBj+aOqOWlqOOBmeOCi+OAgiIKKworIy4gdHlwZTogU1MKKyM6IGRzZWxlY3QuMToxMzcKKyMsIG5vLXdyYXAKK21zZ2lkICJ1cGRhdGUiCittc2dzdHIgInVwZGF0ZSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjEzOQorbXNnaWQgIlJlZnJlc2ggdGhlIGF2YWlsYWJsZSBwYWNrYWdlcyBkYXRhYmFzZS4iCittc2dzdHIgIuWIqeeUqOWPr+iDveODkeODg+OCseODvOOCuOODh+ODvOOCv+ODmeODvOOCueOCkuODquODleODrOODg+OCt+ODpeOBmeOCi+OAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjE0NgorbXNnaWQgIiIKKyJSZXRyaWV2ZXMgYSBsaXN0IG9mIGF2YWlsYWJsZSBwYWNrYWdlIHZlcnNpb25zIGZyb20gdGhlIHBhY2thZ2UgcmVwb3NpdG9yeSwgIgorImNvbmZpZ3VyZWQgZm9yIHRoZSBjdXJyZW50IGFjY2VzcyBtZXRob2QsIGFuZCB1cGRhdGUgdGhlIGRwa2cgZGF0YWJhc2UuIFRoZSAiCisicGFja2FnZSBsaXN0cyBhcmUgY29tbW9ubHkgcHJvdmlkZWQgYnkgdGhlIHJlcG9zaXRvcnkgYXMgZmlsZXMgbmFtZWQgIgorIkk8UGFja2FnZXM+IG9yIEk8UGFja2FnZXMuZ3o+LiAgVGhlc2UgZmlsZXMgY2FuIGJlIGdlbmVyYXRlZCBieSByZXBvc2l0b3J5ICIKKyJtYWludGFpbmVycywgdXNpbmcgdGhlIHByb2dyYW0gQjxkcGtnLXNjYW5wYWNrYWdlcz4oMSkuIgorbXNnc3RyICIiCisi5Yip55So5Y+v6IO944OR44OD44Kx44O844K444Gu44OQ44O844K444On44Oz44Oq44K544OI44KS44CB54++5Zyo6Kit5a6a44GX44Gm44GE44KL44Ki44Kv44K744K55pa55byP44Gn44CB44OR44ODIgorIuOCseODvOOCuOODquODneOCuOODiOODquOBi+OCieWPluW+l+OBl+OAgWRwa2cg44OH44O844K/44OZ44O844K544KS5pu05paw44GZ44KL44CC44OR44OD44Kx44O844K444Oq44K544OI44Gv44CBIgorIuS4gOiIrOeahOOBq+OBryBCPFBhY2thZ2VzPiwgQjxQYWNrYWdlcy5nej4g44Go44GE44GG5ZCN5YmN44Gn44CB44Oq44Od44K444OI44Oq44KI44KK5o+Q5L6b44GV44KM44GmIgorIuOBhOOCi+OAguODquODneOCuOODiOODqueuoeeQhuiAheOBr+OAgUI8ZHBrZy1zY2FucGFja2FnZXM+KDEpIOOBqOOBhOOBhuODl+ODreOCsOODqeODoOOCkuS9v+eUqOOBlyIKKyLjgabjgIHjgZPjga7jg5XjgqHjgqTjg6vjgpLnlJ/miJDjgZnjgovjgZPjgajjgYzjgafjgY3jgovjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxNDkKK21zZ2lkICIiCisiRGV0YWlscyBvZiB0aGUgdXBkYXRlIGFjdGlvbiBkZXBlbmQgb24gdGhlIGFjY2VzcyBtZXRob2QncyBpbXBsZW1lbnRhdGlvbi4gICIKKyJOb3JtYWxseSB0aGUgcHJvY2VzcyBpcyBzdHJhaWdodGZvcndhcmQgYW5kIHJlcXVpcmVzIG5vIHVzZXIgaW50ZXJhY3Rpb24uIgorbXNnc3RyICIiCisidXBkYXRlIOOCouOCr+OCt+ODp+ODs+OBruips+e0sOOBr+OAgeOCouOCr+OCu+OCueaWueW8j+OBruWun+ijheOBq+S+neWtmOOBmeOCi+OAgumAmuW4uOOAgeOBk+OBruODl+ODreOCu+OCueOBryIKKyLljZjntJTjgafjgIHjg6bjg7zjgrbjga7lhaXlipvjgpLlv4XopoHjgajjgZfjgarjgYTjgIIiCisKKyMuIHR5cGU6IFNTCisjOiBkc2VsZWN0LjE6MTUwCisjLCBuby13cmFwCittc2dpZCAic2VsZWN0IgorbXNnc3RyICJzZWxlY3QiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxNTIKK21zZ2lkICJWaWV3IG9yIG1hbmFnZSBwYWNrYWdlIHNlbGVjdGlvbnMgYW5kIGRlcGVuZGVuY2llcy4iCittc2dzdHIgIuODkeODg+OCseODvOOCuOOBrumBuOaKnuOChOS+neWtmOmWouS/guOBruihqOekuuODu+euoeeQhuOCkuihjOOBhuOAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjE1OAorbXNnaWQgIiIKKyJUaGlzIGlzIHRoZSBtYWluIGZ1bmN0aW9uIG9mIEI8ZHNlbGVjdD4uIEluIHRoZSBzZWxlY3Qgc2NyZWVuLCB0aGUgdXNlciBjYW4gIgorInJldmlldyBhIGxpc3Qgb2YgYWxsIGF2YWlsYWJsZSBhbmQgaW5zdGFsbGVkIHBhY2thZ2VzLiBXaGVuIHJ1biB3aXRoICIKKyJhZG1pbmlzdHJhdG9yIHByaXZpbGVnZXMsIGl0IGlzIGFsc28gcG9zc2libGUgdG8gaW50ZXJhY3RpdmVseSBjaGFuZ2UgIgorInBhY2thZ2VzIHNlbGVjdGlvbiBzdGF0ZS4gQjxkc2VsZWN0PiB0cmFja3MgdGhlIGltcGxpY2F0aW9ucyBvZiB0aGVzZSAiCisiY2hhbmdlcyB0byBvdGhlciBkZXBlbmRpbmcgb3IgY29uZmxpY3RpbmcgcGFja2FnZXMuIgorbXNnc3RyICIiCisi44GT44KM44GMIEI8ZHNlbGVjdD4g44Gu44Oh44Kk44Oz5qmf6IO944Gn44GC44KL44CC6YG45oqe44GX44Gf55S76Z2i44Gn44CB5YWo5Yip55So5Y+v6IO944O744Kk44Oz44K544OI44O8IgorIuODq+a4iOOBv+ODkeODg+OCseODvOOCuOOBruODquOCueODiOOCkuiqv+afu+OBp+OBjeOCi+OAgueuoeeQhuiAheaoqemZkOOBp+Wun+ihjOOBmeOCi+OBqOOAgeWvvuipseeahOOBq+OAgeODkeODgyIKKyLjgrHjg7zjgrjpgbjmip7nirbms4HjgpLlpInmm7TjgZnjgovjgZPjgajjgoLjgafjgY3jgovjgIIgQjxkc2VsZWN0PiDjga/jgIHpgbjmip7nirbms4Hjga7lpInmm7TjgavplqLpgKPjgZciCisi44Gm6LW344GT44KL5LuW44Gu5L6d5a2Y44O756u25ZCI44OR44OD44Kx44O844K444Gr44Gk44GE44Gm44KC5ZCM5qeY44Gr6L+96Leh44GZ44KL44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTY1Cittc2dpZCAiIgorIldoZW4gYSBjb25mbGljdCBvciBmYWlsZWQgZGVwZW5kcyBpcyBkZXRlY3RlZCwgYSBkZXBlbmRlbmN5IHJlc29sdXRpb24gIgorInN1YnNjcmVlbiBpcyBwcm9tcHRlZCB0byB0aGUgdXNlci4gSW4gdGhpcyBzY3JlZW4sIGEgbGlzdCBvZiBjb25mbGljdGluZyBvciAiCisiZGVwZW5kaW5nIHBhY2thZ2VzIGlzIHNob3duLCBhbmQgZm9yIGVhY2ggcGFja2FnZSBsaXN0ZWQsIHRoZSByZWFzb24gZm9yIGl0cyAiCisibGlzdGluZyBpcyBzaG93bi4gVGhlIHVzZXIgbWF5IGFwcGx5IHRoZSBzdWdnZXN0aW9ucyBwcm9wb3NlZCBieSBCPGRzZWxlY3Q+LCAiCisib3ZlcnJpZGUgdGhlbSwgb3IgYmFjayBvdXQgYWxsIHRoZSBjaGFuZ2VzLCBpbmNsdWRpbmcgdGhlIG9uZXMgdGhhdCBjcmVhdGVkICIKKyJ0aGUgdW5yZXNvbHZlZCBkZXBlbmRzIG9yIGNvbmZsaWN0cy4iCittc2dzdHIgIiIKKyLnq7blkIjjgoTkvp3lrZjjga7lpLHmlZfjgpLmpJzlh7rjgZnjgovjgajjgIHkvp3lrZjplqLkv4Lop6PmsbrjgrXjg5bnlLvpnaLjgpLjg6bjg7zjgrbjgavmj5DnpLrjgZnjgovjgILjgZPjga7nlLsiCisi6Z2i44Gn44Gv44CB56u25ZCI44OR44OD44Kx44O844K444KE5L6d5a2Y44OR44OD44Kx44O844K444KS44CB44Gd44Gu55CG55Sx44Go44Go44KC44Gr6KGo56S644GZ44KL44CC44Om44O844K2IgorIuOBr+OAgUI8ZHNlbGVjdD4g44GM5o+Q5qGI44GX44Gf5aSJ5pu05qGI44KS6YGp55So44GX44Gm44KC44KI44GE44GX44CB44Gd44Gu5qGI44KS5LiK5pu444GN44GX44Gm44KC44KI44GE44CCIgorIuOBvuOBn+OAgeWkieabtOOCkuOBmeOBueOBpuWFg+OBq+aIu+OBl+OBpuOCguOCiOOBhOOAguS7peS4iuOCkuOAgeS+neWtmOODu+ertuWQiOOBjOino+axuuOBleOCjOOCi+OBvuOBp+OAgee5sOOCiiIKKyLov5TjgZnjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxNjgKK21zZ2lkICIiCisiVGhlIHVzZSBvZiB0aGUgaW50ZXJhY3RpdmUgcGFja2FnZSBzZWxlY3Rpb25zIG1hbmFnZW1lbnQgc2NyZWVuIGlzIGV4cGxhaW5lZCAiCisiaW4gbW9yZSBkZXRhaWwgYmVsb3cuIgorbXNnc3RyICLlr77oqbHnmoTjgarjg5Hjg4PjgrHjg7zjgrjpgbjmip7nrqHnkIbnlLvpnaLjga7oqbPntLDjgarkvb/jgYTmlrnjgpLlvozov7DjgZnjgovjgIIiCisKKyMuIHR5cGU6IFNTCisjOiBkc2VsZWN0LjE6MTY5CisjLCBuby13cmFwCittc2dpZCAiaW5zdGFsbCIKK21zZ3N0ciAiaW5zdGFsbCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjE3MQorbXNnaWQgIkluc3RhbGxzIHNlbGVjdGVkIHBhY2thZ2VzLiIKK21zZ3N0ciAi6YG45oqe44GX44Gf44OR44OD44Kx44O844K444KS44Kk44Oz44K544OI44O844Or44GZ44KL44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTc3Cittc2dpZCAiIgorIlRoZSBjb25maWd1cmVkIGFjY2VzcyBtZXRob2Qgd2lsbCBmZXRjaCBpbnN0YWxsYWJsZSBvciB1cGdyYWRhYmxlIHBhY2thZ2VzICIKKyJmcm9tIHRoZSByZWxldmFudCByZXBvc2l0b3JpZXMgYW5kIGluc3RhbGwgdGhlc2UgdXNpbmcgQjxkcGtnPi4gIERlcGVuZGluZyAiCisib24gdGhlIGltcGxlbWVudGF0aW9uIG9mIHRoZSBhY2Nlc3MgbWV0aG9kLCBhbGwgcGFja2FnZXMgY2FuIGJlIHByZWZldGNoZWQgIgorImJlZm9yZSBpbnN0YWxsYXRpb24sIG9yIGZldGNoZWQgd2hlbiBuZWVkZWQuICBTb21lIGFjY2VzcyBtZXRob2RzIG1heSBhbHNvICIKKyJyZW1vdmUgcGFja2FnZXMgdGhhdCB3ZXJlIG1hcmtlZCBmb3IgcmVtb3ZhbC4iCittc2dzdHIgIiIKKyLjgqTjg7Pjgrnjg4jjg7zjg6vjg7vmm7TmlrDjgZnjgovjg5Hjg4PjgrHjg7zjgrjjgpLjgIHoqK3lrprjgZfjgZ/jgqLjgq/jgrvjgrnmlrnlvI/jgafpganliIfjgarjg6rjg53jgrjjg4jjg6rjgogiCisi44KK5Y+W5b6X44GX44CBIEI8ZHBrZz4g44KS55So44GE44Gm44Kk44Oz44K544OI44O844Or44KS6KGM44GG44CC44Ki44Kv44K744K55pa55byP44Gu5a6f6KOF44Gr5L6d5a2Y44GZ44KLIgorIuOBjOOAgeOCpOODs+OCueODiOODvOODq+WJjeOBq+WFqOODkeODg+OCseODvOOCuOOCkuWPluW+l+OAgeOCguOBl+OBj+OBr+W/heimgeOBquaZguOBq+WPluW+l+OBmeOCi+OAguOCouOCr+OCu+OCuSIKKyLmlrnlvI/jgavjgojjgorjgIHliYrpmaTjg57jg7zjgq/jgpLjgaTjgZHjgZ/jg5Hjg4PjgrHjg7zjgrjjga7liYrpmaTjgpLooYzjgYbloLTlkIjjgoLjgYLjgovjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxODUKK21zZ2lkICIiCisiSWYgYW4gZXJyb3Igb2NjdXJyZWQgZHVyaW5nIGluc3RhbGwsIGl0IGlzIHVzdWFsbHkgYWR2aXNhYmxlIHRvIHJ1biBpbnN0YWxsICIKKyJhZ2Fpbi4gSW4gbW9zdCBjYXNlcywgdGhlIHByb2JsZW1zIHdpbGwgZGlzYXBwZWFyIG9yIGJlIHNvbHZlZC4gIElmIHByb2JsZW1zICIKKyJwZXJzaXN0IG9yIHRoZSBpbnN0YWxsYXRpb24gcGVyZm9ybWVkIHdhcyBpbmNvcnJlY3QsIHBsZWFzZSBpbnZlc3RpZ2F0ZSBpbnRvICIKKyJ0aGUgY2F1c2VzIGFuZCBjaXJjdW1zdGFuY2VzLCBhbmQgZmlsZSBhIGJ1ZyBpbiB0aGUgRGViaWFuIGJ1ZyB0cmFja2luZyAiCisic3lzdGVtLiBJbnN0cnVjdGlvbnMgb24gaG93IHRvIGRvIHRoaXMgY2FuIGJlIGZvdW5kIGF0IGh0dHA6Ly9idWdzLmRlYmlhbi4iCisib3JnLyBvciBieSByZWFkaW5nIHRoZSBkb2N1bWVudGF0aW9uIGZvciBCPGJ1Zz4oMSkgb3IgQjxyZXBvcnRidWc+KDEpLCBpZiAiCisidGhlc2UgYXJlIGluc3RhbGxlZC4iCittc2dzdHIgIiIKKyLjgqTjg7Pjgrnjg4jjg7zjg6vkuK3jgavjgqjjg6njg7zjgYznmbrnlJ/jgZfjgZ/loLTlkIjjgIHjgoLjgYbkuIDluqYgaW5zdGFsbCDjgpLooYzjgYbjgojjgYbkv4PjgZXjgozjgovjgILjgZ0iCisi44Gu5aC05ZCI44Gn44KC44CB44G744Go44KT44Gp5ZWP6aGM44GM55m655Sf44GX44Gq44GE44GL44CB6Kej5rG65riI44G/44Go44Gq44Gj44Gm44GE44KL44CC5ZWP6aGM44GM5q6L44Gj44Gf44G+IgorIuOBvuOBoOOBo+OBn+OCiuOAgeOCpOODs+OCueODiOODvOODq+OBjOeVsOW4uOe1guS6huOBmeOCi+WgtOWQiOOAgeWOn+WboOODu+S6i+aDheOCkuiqv+OBueOBpuOAgURlYmlhbiDjg5DjgrDov70iCisi6Leh44K344K544OG44Og44G444OQ44Kw5aCx5ZGK44KS44GX44Gm44GE44Gf44Gg44GN44Gf44GE44CC44OQ44Kw5aCx5ZGK44Gu5pa55rOV44Gv44CBaHR0cDovL2J1Z3MuZGViaWFuLiIKKyJvcmcvIOOChOOAgeOCpOODs+OCueODiOODvOODq+OBleOCjOOBpuOBhOOCjOOBsOOAgSBCPGJ1Zz4oMSkg44KEIEI8cmVwb3J0YnVnPigxKSDjga7mlofmm7jjgpLlj4LnhaciCisi44Gu44GT44Go44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTkyCittc2dpZCAiIgorIkRldGFpbHMgb2YgdGhlIGluc3RhbGwgYWN0aW9uIGRlcGVuZCBvbiB0aGUgYWNjZXNzIG1ldGhvZCdzIGltcGxlbWVudGF0aW9uLiAgIgorIlRoZSB1c2VyJ3MgYXR0ZW50aW9uIGFuZCBpbnB1dCBtYXkgYmUgcmVxdWlyZWQgZHVyaW5nIGluc3RhbGxhdGlvbiwgIgorImNvbmZpZ3VyYXRpb24gb3IgcmVtb3ZhbCBvZiBwYWNrYWdlcy4gVGhpcyBkZXBlbmRzIG9uIHRoZSBtYWludGFpbmVyIHNjcmlwdHMgIgorImluIHRoZSBwYWNrYWdlLiBTb21lIHBhY2thZ2VzIG1ha2UgdXNlIG9mIHRoZSBCPGRlYmNvbmY+KDEpICBsaWJyYXJ5LCAiCisiYWxsb3dpbmcgZm9yIG1vcmUgZmxleGlibGUgb3IgZXZlbiBhdXRvbWF0ZWQgaW5zdGFsbGF0aW9uIHNldHVwcy4iCittc2dzdHIgIiIKKyJpbnN0YWxsIOOCouOCr+OCt+ODp+ODs+OBruips+e0sOOBr+OCouOCr+OCu+OCueaWueW8j+OBruWun+ijheOBq+S+neWtmOOBmeOCi+OAguODkeODg+OCseODvOOCuOOBruOCpOODs+OCuSIKKyLjg4jjg7zjg6vjgIHoqK3lrprjgIHliYrpmaTkuK3jgavjgIHjg6bjg7zjgrbjgavms6jmhI/jgpLkv4PjgZfjgZ/jgorjgIHlhaXlipvjgpLopoHmsYLjgZnjgovlj6/og73mgKfjgoLjgYLjgovjgIIiCisi44GT44KM44Gv44OR44OD44Kx44O844K4566h55CG6ICF44K544Kv44Oq44OX44OI44Gr5L6d5a2Y44GZ44KL44CC44OR44OD44Kx44O844K444Gr44KI44Gj44Gm44Gv44CBQjxkZWJjb25mPiIKKyIoMSkg44Op44Kk44OW44Op44Oq44KS55So44GE44Gm44GK44KK44CB44KI44KK5p+U6Luf44Gn6Ieq5YuV5YyW44GV44KM44Gf44Kk44Oz44K544OI44O844Or44K744OD44OI44Ki44OD44OX44GMIgorIuWPr+iDveOBp+OBguOCi+OAgiIKKworIy4gdHlwZTogU1MKKyM6IGRzZWxlY3QuMToxOTMKKyMsIG5vLXdyYXAKK21zZ2lkICJjb25maWciCittc2dzdHIgImNvbmZpZyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjE5NQorbXNnaWQgIkNvbmZpZ3VyZXMgYW55IHByZXZpb3VzbHkgaW5zdGFsbGVkLCBidXQgbm90IGZ1bGx5IGNvbmZpZ3VyZWQgcGFja2FnZXMuIgorbXNnc3RyICIiCisi44GZ44Gn44Gr44Kk44Oz44K544OI44O844Or5riI44G/44Gg44GM44CB6Kit5a6a44GM5a6M5LqG44GX44Gm44GE44Gq44GE44OR44OD44Kx44O844K444Gu6Kit5a6a44KS6KGM44GG44CCIgorCisjLiB0eXBlOiBTUworIzogZHNlbGVjdC4xOjE5NgorIywgbm8td3JhcAorbXNnaWQgInJlbW92ZSIKK21zZ3N0ciAicmVtb3ZlIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTk4Cittc2dpZCAiUmVtb3ZlcyBvciBwdXJnZXMgaW5zdGFsbGVkIHBhY2thZ2VzLCB0aGF0IGFyZSBtYXJrZWQgZm9yIHJlbW92YWwuIgorbXNnc3RyICLliYrpmaTjg57jg7zjgq/jgpLjgaTjgZHjgZ/jgqTjg7Pjgrnjg4jjg7zjg6vmuIjjgb/jg5Hjg4PjgrHjg7zjgrjjga7jgIHliYrpmaTjg7vlrozlhajliYrpmaTjgpLooYzjgYbjgIIiCisKKyMuIHR5cGU6IFNTCisjOiBkc2VsZWN0LjE6MTk5CisjLCBuby13cmFwCittc2dpZCAicXVpdCIKK21zZ3N0ciAicXVpdCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjIwMQorbXNnaWQgIlF1aXQgQjxkc2VsZWN0PiIKK21zZ3N0ciAiQjxkc2VsZWN0PiDjgpLntYLkuobjgZnjgovjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToyMDMKK21zZ2lkICJFeGl0cyB0aGUgcHJvZ3JhbSB3aXRoIHplcm8gKHN1Y2Nlc3NmdWwpIGVycm9yY29kZS4iCittc2dzdHIgIuOCqOODqeODvOOCs+ODvOODiSAwICjmiJDlip8pIOOBp+ODl+ODreOCsOODqeODoOOCkue1guS6huOBmeOCi+OAgiIKKworIy4gdHlwZTogU0gKKyM6IGRzZWxlY3QuMToyMDUKKyMsIG5vLXdyYXAKK21zZ2lkICJQYWNrYWdlIHNlbGVjdGlvbnMgbWFuYWdlbWVudCIKK21zZ3N0ciAi44OR44OD44Kx44O844K46YG45oqe566h55CGIgorCisjLiB0eXBlOiBTUworIzogZHNlbGVjdC4xOjIwNworIywgbm8td3JhcAorbXNnaWQgIkludHJvZHVjdGlvbiIKK21zZ3N0ciAi5YWl6ZaAIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MjIzCittc2dpZCAiIgorIkI8ZHNlbGVjdD4gZGlyZWN0bHkgZXhwb3NlcyB0aGUgYWRtaW5pc3RyYXRvciB0byBzb21lIG9mIHRoZSBjb21wbGV4aXRpZXMgIgorImludm9sdmVkIHdpdGggbWFuYWdpbmcgbGFyZ2Ugc2V0cyBvZiBwYWNrYWdlcyB3aXRoIG1hbnkgaW50ZXJkZXBlbmRlbmNpZXMuICIKKyJGb3IgYSB1c2VyIHdobyBpcyB1bmZhbWlsaWFyIHdpdGggdGhlIGNvbmNlcHRzIGFuZCB0aGUgd2F5cyBvZiB0aGUgZGViaWFuICIKKyJwYWNrYWdlIG1hbmFnZW1lbnQgc3lzdGVtLCBpdCBjYW4gYmUgcXVpdGUgb3ZlcndoZWxtaW5nLiBBbHRob3VnaCBCPGRzZWxlY3Q+ICIKKyJpcyBhaW1lZCBhdCBlYXNpbmcgcGFja2FnZSBtYW5hZ2VtZW50IGFuZCBhZG1pbmlzdHJhdGlvbiwgaXQgaXMgb25seSAiCisiaW5zdHJ1bWVudGFsIGluIGRvaW5nIHNvIGFuZCBjYW4gbm90IGJlIGFzc3VtZWQgdG8gYmUgYSBzdWZmaWNpZW50ICIKKyJzdWJzdGl0dXRlIGZvciBhZG1pbmlzdHJhdG9yIHNraWxsIGFuZCB1bmRlcnN0YW5kaW5nLiBUaGUgdXNlciBpcyByZXF1aXJlZCAiCisidG8gYmUgZmFtaWxpYXIgd2l0aCB0aGUgY29uY2VwdHMgdW5kZXJseWluZyB0aGUgRGViaWFuIHBhY2thZ2luZyBzeXN0ZW0uICBJbiAiCisiY2FzZSBvZiBkb3VidCwgY29uc3VsdCB0aGUgQjxkcGtnPigxKSBtYW5wYWdlIGFuZCB0aGUgRGViaWFuIFBvbGljeSBtYW51YWwsICIKKyJjb250YWluZWQgaW4gdGhlIEI8ZGViaWFuLXBvbGljeT4gcGFja2FnZS4iCittc2dzdHIgIiIKKyLlpKfph4/jga7nm7jkupLkvp3lrZjplqLkv4LjgpLmjIHjgaTjg5Hjg4PjgrHjg7zjgrjnvqTjgpIgQjxkc2VsZWN0PiDjgafnrqHnkIbjgZnjgovopIfpm5HjgZXjgavjgIHnrqHnkIbogIUiCisi44Gv55u06Z2i44GZ44KL44CCIERlYmlhbiDjg5Hjg4PjgrHjg7zjgrjnrqHnkIbjgrfjgrnjg4bjg6Djga7mpoLlv7XjgoTjgIHjgZ3jga7mlrnms5XjgavmhaPjgozjgabjgYTjgarjgYQiCisi44Om44O844K244Gr44Go44Gj44Gm44Gv44CB44GT44KM44Gv5Zyn5YCS55qE44Gn44GZ44KJ44GC44KL44CCIEI8ZHNlbGVjdD4g44Gv44CB44OR44OD44Kx44O844K4566h55CG44Go566hIgorIueQhuS9nOalreOBruiyoOaLhee3qeWSjOOCkuebruaMh+OBl+OBpuOBhOOCi+OAguOBl+OBi+OBl+OAgeWNmOOBq+iyoOaLhee3qeWSjOOBq+W9ueeri+OBpOOBoOOBkeOBp+OAgeeuoeeQhuiAheOBqCIKKyLjgZfjgabjga7mioDooZPjgoTnn6XorZjjga7ku6PnlKjjgavjga/jgarjgonjgarjgYTjgILjg6bjg7zjgrbjgavjga/jgIFEZWJpYW4g44OR44OD44Kx44O844K444Oz44Kw44K344K544OG44OgIgorIuOBq+OBpOOBhOOBpuOBruWfuuekjuamguW/teOBq+eyvumAmuOBmeOCi+OBk+OBqOOBjOimgeaxguOBleOCjOOCi+OAgueWkeWVj+OBjOOBguOCjOOBsOOAgUI8ZHBrZz4oMSkg44Gu44OeIgorIuODi+ODpeOCouODq+OChOOAgUI8ZGViaWFuLXBvbGljeT4g44OR44OD44Kx44O844K444Gr5ZCr44G+44KM44Gm44GE44KLIERlYmlhbiDjg53jg6rjgrfjg7zjg57jg4vjg6XjgqIiCisi44Or44KS5Y+C54Wn44GX44Gm44G744GX44GE44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MjI5Cittc2dpZCAiIgorIlVubGVzcyBCPGRzZWxlY3Q+IGlzIHJ1biBpbiBleHBlcnQgb3IgaW1tZWRpYXRlIG1vZGUsIGEgaGVscCBzY3JlZW4gaXMgZmlyc3QgIgorImRpc3BsYXllZCB3aGVuIGNob29zaW5nIHRoaXMgYWN0aW9uIGZyb20gdGhlIG1lbnUuIFRoZSB1c2VyIGlzIEk8c3Ryb25nbHk+ICIKKyJhZHZpc2VkIHRvIHN0dWR5IGFsbCBvZiB0aGUgaW5mb3JtYXRpb24gcHJlc2VudGVkIGluIHRoZSBvbmxpbmUgaGVscCAiCisic2NyZWVucywgd2hlbiBvbmUgcG9wcyB1cC4gIFRoZSBvbmxpbmUgaGVscCBzY3JlZW5zIGNhbiBhdCBhbnkgdGltZSBiZSAiCisiaW52b2tlZCB3aXRoIHRoZSBCPCc/Jz4ga2V5LiIKK21zZ3N0ciAiIgorIkI8ZHNlbGVjdD4g44GM44CB44Ko44Kt44K544OR44O844OI44Oi44O844OJ44KE55u05o6l44Oi44O844OJ44Gn6LW35YuV44GV44KM44Gq44GE5aC05ZCI44CB44Oh44OL44Ol44O844GL44KJIgorIuOCouOCr+OCt+ODp+ODs+OCkumBuOOBtumam+OBq+OAgeWIneOCgeOBq+ODmOODq+ODl+eUu+mdouOBjOihqOekuuOBleOCjOOCi+OAguOCquODs+ODqeOCpOODs+ODmOODq+ODl+eUu+mdouOBjCIKKyLjg53jg4Pjg5fjgqLjg4Pjg5fjgZfjgZ/pmpvjgavjga/jgIHjgZ3jgZPjgavnpLrjgZXjgozjgovlhoXlrrnjgpLjgZnjgbnjgabmpJzoqI7jgZnjgovjgojjgYbjgIFJPOW8t+OBjz7jgYrlpajjgoEiCisi44GZ44KL44CC44Kq44Oz44Op44Kk44Oz44OY44Or44OX55S76Z2i44Gv44CB44GE44Gk44Gn44KCIEI8J++8nyc+IOOCreODvOOBp+ihqOekuuOBp+OBjeOCi+OAgiIKKworIy4gdHlwZTogU1MKKyM6IGRzZWxlY3QuMToyMzAKKyMsIG5vLXdyYXAKK21zZ2lkICJTY3JlZW4gbGF5b3V0IgorbXNnc3RyICLnlLvpnaLjg6zjgqTjgqLjgqbjg4giCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToyMzgKK21zZ2lkICIiCisiVGhlIHNlbGVjdCBzY3JlZW4gaXMgYnkgZGVmYXVsdCBzcGxpdCBpbiBhIHRvcCBhbmQgYSBib3R0b20gaGFsZi4gIFRoZSB0b3AgIgorImhhbGYgc2hvd3MgYSBsaXN0IG9mIHBhY2thZ2VzLiBBIGN1cnNvciBiYXIgY2FuIHNlbGVjdCBhbiBpbmRpdmlkdWFsICIKKyJwYWNrYWdlLCBvciBhIGdyb3VwIG9mIHBhY2thZ2VzLCBpZiBhcHBsaWNhYmxlLCBieSBzZWxlY3RpbmcgdGhlIGdyb3VwICIKKyJoZWFkZXIuIFRoZSBib3R0b20gaGFsZiBvZiB0aGUgc2NyZWVuIHNob3dzIHNvbWUgZGV0YWlscyBhYm91dCB0aGUgcGFja2FnZSAiCisiY3VycmVudGx5IHNlbGVjdGVkIGluIHRoZSB0b3AgaGFsZiBvZiB0aGUgc2NyZWVuLiAgVGhlIHR5cGUgb2YgZGV0YWlsIHRoYXQgIgorImlzIGRpc3BsYXllZCBjYW4gYmUgdmFyaWVkLiIKK21zZ3N0ciAiIgorIumBuOaKnueUu+mdouOBr+OAgeODh+ODleOCqeODq+ODiOOBp+S4iuS4iyAyIOWIhuWJsuOBleOCjOOBpuOBhOOCi+OAguS4iuWNiuWIhuOBr+OAgeODkeODg+OCseODvOOCuOODquOCueODiOOCkuihqCIKKyLnpLrjgZfjgabjgYTjgovjgILjgqvjg7zjgr3jg6vjg5Djg7zjgaflgIvjgIXjga7jg5Hjg4PjgrHjg7zjgrjjgpLpgbjmip7jgZfjgZ/jgorjgIHjgrDjg6vjg7zjg5fjg5jjg4Pjg4DjgpLpgbjmip4iCisiKOOBp+OBjeOCjOOBsCnjgZfjgabjgIHjg5Hjg4PjgrHjg7zjgrjjgrDjg6vjg7zjg5fjgpLpgbjmip7jgZfjgZ/jgorjgafjgY3jgovjgILnlLvpnaLjga7kuIvljYrliIbjga/jgIHnlLvpnaLjga4iCisi5LiK5Y2K5YiG44Gn54++5Zyo6YG45oqe44GX44Gm44GE44KL44OR44OD44Kx44O844K444Gu6Kmz57Sw44GM6KGo56S644GV44KM44KL44CC6KGo56S644GV44KM44KL6Kmz57Sw44Gu44K/44Kk44OXIgorIuOBr+OAgeWkieabtOOBp+OBjeOCi+OAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjI0MQorbXNnaWQgIiIKKyJQcmVzc2luZyB0aGUgQjwnSSc+IGtleSB0b2dnbGVzIGEgZnVsbC1zY3JlZW4gZGlzcGxheSBvZiB0aGUgcGFja2FnZXMgbGlzdCwgIgorImFuIGVubGFyZ2VkIHZpZXcgb2YgdGhlIHBhY2thZ2UgZGV0YWlscywgb3IgdGhlIGVxdWFsbHkgc3BsaXQgc2NyZWVuLiIKK21zZ3N0ciAiIgorIiBCPCdJJz4g44Kt44O844KS5oq844GZ44GU44Go44Gr44CB44OR44OD44Kx44O844K444Oq44K544OI44Gu5YWo55S76Z2i6KGo56S644CB44OR44OD44Kx44O844K46Kmz57Sw44Gu5ouhIgorIuWkp+OAgeeUu+mdouOBruWdh+etieWIhuWJsuOCkuWIh+OCiuabv+OBiOOCi+OAgiIKKworIy4gdHlwZTogU1MKKyM6IGRzZWxlY3QuMToyNDIKKyMsIG5vLXdyYXAKK21zZ2lkICJQYWNrYWdlIGRldGFpbHMgdmlldyIKK21zZ3N0ciAi44OR44OD44Kx44O844K46Kmz57Sw6KGo56S6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MjUxCisjLCBuby13cmFwCittc2dpZCAiIgorIlRoZSBwYWNrYWdlIGRldGFpbHMgdmlldyBieSBkZWZhdWx0IHNob3dzIHRoZSBleHRlbmRlZCBwYWNrYWdlIGRlc2NyaXB0aW9uXG4iCisiZm9yIHRoZSBwYWNrYWdlIHRoYXQgaXMgY3VycmVudGx5IHNlbGVjdGVkIGluIHRoZSBwYWNrYWdlcyBzdGF0dXMgbGlzdC5cbiIKKyJUaGUgdHlwZSBvZiBkZXRhaWwgY2FuIGJlIHRvZ2dsZWQgYnkgcHJlc3NpbmcgdGhlIEI8J2knPiBrZXkuIFRoaXNcbiIKKyJhbHRlcm5hdGVzIGJldHdlZW46XG4iCisiIC0gdGhlIGV4dGVuZGVkIGRlc2NyaXB0aW9uXG4iCisiIC0gdGhlIGNvbnRyb2wgaW5mb3JtYXRpb24gZm9yIHRoZSBpbnN0YWxsZWQgdmVyc2lvblxuIgorIiAtIHRoZSBjb250cm9sIGluZm9ybWF0aW9uIGZvciB0aGUgYXZhaWxhYmxlIHZlcnNpb25cbiIKK21zZ3N0ciAiIgorIuODh+ODleOCqeODq+ODiOOBruODkeODg+OCseODvOOCuOips+e0sOihqOekuumDqOOBr+OAgeODkeODg+OCseODvOOCuOeKtuazgeODquOCueODiOS4reOBp+ePvuWcqOmBuOaKnuOBleOCjOOBpuOBhOOCi+ODkeODg+OCseODvOOCuOOBruOAgemVt+OBhOODkeODg+OCseODvOOCuOiqrOaYjuaWh+OCkuihqOekuuOBmeOCi+OAguips+e0sOOCv+OCpOODl+OBryBCPCdpJz4g44Kt44O844KS5oq844GZ44GU44Go44Gr5Lul5LiL44GM5YiH44KK5pu/44KP44KL44CCXG4iCisiIC0g6ZW344GE6Kqs5piO5paHXG4iCisiIC0g44Kk44Oz44K544OI44O844Or5riI44G/44OQ44O844K444On44Oz44Gu44Kz44Oz44OI44Ot44O844Or5oOF5aCxXG4iCisiIC0g5Yip55So5Y+v6IO944OQ44O844K444On44Oz44Gu44Kz44Oz44OI44Ot44O844Or5oOF5aCxXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToyNTUKK21zZ2lkICIiCisiSW4gYSBkZXBlbmRlbmN5IHJlc29sdXRpb24gc2NyZWVuLCB0aGVyZSBpcyBhbHNvIHRoZSBwb3NzaWJpbGl0eSBvZiB2aWV3aW5nICIKKyJ0aGUgc3BlY2lmaWMgdW5yZXNvbHZlZCBkZXBlbmRzIG9yIGNvbmZsaWN0cyByZWxhdGVkIHRvIHRoZSBwYWNrYWdlIGFuZCAiCisiY2F1c2luZyBpdCB0byBiZSBsaXN0ZWQuIgorbXNnc3RyICIiCisi5L6d5a2Y6Zai5L+C6Kej5rG655S76Z2i44Gn44Gv44CB54m55a6a44Gu44OR44OD44Kx44O844K444Gu5pyq6Kej5rG65L6d5a2Y44O756u25ZCI6Zai5L+C44KS44CB44Gd44Gu5Y6f5Zug44Go44GoIgorIuOCguOBq+ihqOekuuOBmeOCi+WPr+iDveaAp+OBjOOBguOCi+OAgiIKKworIy4gdHlwZTogU1MKKyM6IGRzZWxlY3QuMToyNTYKKyMsIG5vLXdyYXAKK21zZ2lkICJQYWNrYWdlcyBzdGF0dXMgbGlzdCIKK21zZ3N0ciAi44OR44OD44Kx44O844K454q25rOB44Oq44K544OIIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MjYxCittc2dpZCAiIgorIlRoZSBtYWluIHNlbGVjdCBzY3JlZW4gZGlzcGxheXMgYSBsaXN0IG9mIGFsbCBwYWNrYWdlcyBrbm93biB0byB0aGUgZGViaWFuICIKKyJwYWNrYWdlIG1hbmFnZW1lbnQgc3lzdGVtLiBUaGlzIGluY2x1ZGVzIHBhY2thZ2VzIGluc3RhbGxlZCBvbiB0aGUgc3lzdGVtICIKKyJhbmQgcGFja2FnZXMga25vd24gZnJvbSB0aGUgYXZhaWxhYmxlIHBhY2thZ2VzIGRhdGFiYXNlLiIKK21zZ3N0ciAiIgorIuODoeOCpOODs+mBuOaKnueUu+mdouOBr+OAgSBEZWJpYW4g44OR44OD44Kx44O844K4566h55CG44K344K544OG44Og44GM55+l44Gj44Gm44GE44KL5YWo44OR44OD44Kx44O844K444KS6KGoIgorIuekuuOBmeOCi+OAguOBk+OCjOOBq+OBr+OAgeOCt+OCueODhuODoOOBq+OCpOODs+OCueODiOODvOODq+a4iOOBv+OBruODkeODg+OCseODvOOCuOOBqOOAgeWIqeeUqOWPr+iDveODkeODg+OCseODvCIKKyLjgrjjg4fjg7zjgr/jg5njg7zjgrnjgYznn6XjgaPjgabjgYTjgovjg5Hjg4PjgrHjg7zjgrjjgYzlkKvjgb7jgozjgovjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToyNjkKK21zZ2lkICIiCisiRm9yIGV2ZXJ5IHBhY2thZ2UsIHRoZSBsaXN0IHNob3dzIHRoZSBwYWNrYWdlJ3Mgc3RhdHVzLCBwcmlvcml0eSwgc2VjdGlvbiwgIgorImluc3RhbGxlZCBhbmQgYXZhaWxhYmxlIHZlcnNpb25zLCB0aGUgcGFja2FnZSBuYW1lIGFuZCBpdHMgc2hvcnQgIgorImRlc2NyaXB0aW9uLCBhbGwgaW4gb25lIGxpbmUuIEJ5IHByZXNzaW5nIHRoZSBCPCdWJz4ga2V5LCB0aGUgZGlzcGxheSBvZiB0aGUgIgorImluc3RhbGxlZCBhbmQgYXZhaWxhYmxlIHZlcnNpb24gY2FuIGJlIHRvZ2dsZWQgYmV0d2VlbiBvbiBhbiBvZmYuIEJ5ICIKKyJwcmVzc2luZyB0aGUgQjwndic+IGtleSwgdGhlIHBhY2thZ2Ugc3RhdHVzIGRpc3BsYXkgaXMgdG9nZ2xlZCBiZXR3ZWVuICIKKyJ2ZXJib3NlIGFuZCBzaG9ydGhhbmQuICBTaG9ydGhhbmQgZGlzcGxheSBpcyB0aGUgZGVmYXVsdC4iCittc2dzdHIgIiIKKyLjg6rjgrnjg4jjgavjga/jg5Hjg4PjgrHjg7zjgrjjgZTjgajjgavjgIHjg5Hjg4PjgrHjg7zjgrjjga7nirbms4HjgIHlhKrlhYjluqbjgIHjgrvjgq/jgrfjg6fjg7PjgIHjgqTjg7Pjgrnjg4jjg7wiCisi44Or5riI44G/44O75Yip55So5Y+v6IO944OQ44O844K444On44Oz44CB44OR44OD44Kx44O844K45ZCN44CB55+t44GE6Kqs5piO5paH44GMIDEg6KGM44Gn6KGo56S644GV44KM44KL44CCICIKKyJCPCdWJz4g44Kt44O844KS5oq844GZ44Go44CB44Kk44Oz44K544OI44O844Or5riI44G/44OQ44O844K444On44Oz44Go5Yip55So5Y+v6IO944OQ44O844K444On44Oz44Gu6KGo56S644KSICIKKyJPTi9PRkYg44Gn44GN44KL44CCIEI8J3YnPiDjgq3jg7zjgpLmirzjgZnjgajjgIHjg5Hjg4PjgrHjg7zjgrjnirbms4HjgpLoqbPntLDooajnpLrjgajnsKHnlaXooajnpLrjgafliIfjgooiCisi5pu/44GI44KL44CC57Ch55Wl6KGo56S644GM44OH44OV44Kp44Or44OI44Gn44GC44KL44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6Mjc1Cittc2dpZCAiIgorIlRoZSBzaG9ydGhhbmQgc3RhdHVzIGluZGljYXRpb24gY29uc2lzdHMgb2YgZm91ciBwYXJ0czogYW4gZXJyb3IgZmxhZywgd2hpY2ggIgorInNob3VsZCBub3JtYWxseSBiZSBjbGVhciwgdGhlIGN1cnJlbnQgc3RhdHVzLCB0aGUgbGFzdCBzZWxlY3Rpb24gc3RhdGUgYW5kICIKKyJ0aGUgY3VycmVudCBzZWxlY3Rpb24gc3RhdGUuICBUaGUgZmlyc3QgdHdvIHJlbGF0ZSB0byB0aGUgYWN0dWFsIHN0YXRlIG9mICIKKyJ0aGUgcGFja2FnZSwgdGhlIHNlY29uZCBwYWlyIGFyZSBhYm91dCB0aGUgc2VsZWN0aW9ucyBzZXQgYnkgdGhlIHVzZXIuIgorbXNnc3RyICIiCisi54q25rOB57Ch55Wl6KGo56S644Gv44CB5Lul5LiL44GuIDQg44OR44O844OI44Gr5YiG44GL44KM44Gm44GE44KL44CC44Ko44Op44O844OV44Op44KwICjpgJrluLjjgq/jg6rjgqIp44CB54++IgorIuWcqOOBrueKtuazgeOAgeWJjeWbnumBuOaKnueKtuazgeOAgeS7iuWbnumBuOaKnueKtuazgeOBp+OBguOCi+OAguWni+OCgeOBriAyIOOBpOOBr+ODkeODg+OCseODvOOCuOOBruePvuWcqOOBrueKtiIKKyLms4HjgpLooajjgZfjgIHjgZ3jga7lvozjga4gMiDjgaTjga/jg6bjg7zjgrbjgYzjgrvjg4Pjg4jjgZfjgZ/pgbjmip7nirbms4HjgpLooajjgZfjgabjgYTjgovjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToyOTMKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiVGhlc2UgYXJlIHRoZSBtZWFuaW5ncyBvZiB0aGUgc2hvcnRoYW5kIHBhY2thZ2Ugc3RhdHVzIGluZGljYXRvciBjb2RlczpcbiIKKyIgRXJyb3IgZmxhZzpcbiIKKyIgIEk8ZW1wdHk+ICAgbm8gZXJyb3JcbiIKKyIgIEI8Uj4gICAgICAgc2VyaW91cyBlcnJvciwgbmVlZHMgcmVpbnN0YWxsYXRpb247XG4iCisiIEluc3RhbGxlZCBzdGF0ZTpcbiIKKyIgIEk8ZW1wdHk+ICAgbm90IGluc3RhbGxlZDtcbiIKKyIgIEI8Kj4gICAgICAgZnVsbHkgaW5zdGFsbGVkIGFuZCBjb25maWd1cmVkO1xuIgorIiAgQjwtPiAgICAgICBub3QgaW5zdGFsbGVkIGJ1dCBzb21lIGNvbmZpZyBmaWxlcyBtYXkgcmVtYWluO1xuIgorIiAgQjxVPiAgICAgICB1bnBhY2tlZCBidXQgbm90IHlldCBjb25maWd1cmVkO1xuIgorIiAgQjxDPiAgICAgICBoYWxmLWNvbmZpZ3VyZWQgKGFuIGVycm9yIGhhcHBlbmVkKTtcbiIKKyIgIEI8ST4gICAgICAgaGFsZi1pbnN0YWxsZWQgKGFuIGVycm9yIGhhcHBlbmVkKS5cbiIKKyIgQ3VycmVudCBhbmQgcmVxdWVzdGVkIHNlbGVjdGlvbnM6XG4iCisiICBCPCo+ICAgICAgIG1hcmtlZCBmb3IgaW5zdGFsbGF0aW9uIG9yIHVwZ3JhZGU7XG4iCisiICBCPC0+ICAgICAgIG1hcmtlZCBmb3IgcmVtb3ZhbCwgY29uZmlndXJhdGlvbiBmaWxlcyByZW1haW47XG4iCisiICBCPD0+ICAgICAgIG9uIGhvbGQ6IHBhY2thZ2Ugd2lsbCBub3QgYmUgcHJvY2Vzc2VkIGF0IGFsbDtcbiIKKyIgIEI8Xz4gICAgICAgbWFya2VkIGZvciBwdXJnZSwgYWxzbyByZW1vdmUgY29uZmlndXJhdGlvbjtcbiIKKyIgIEI8bj4gICAgICAgcGFja2FnZSBpcyBuZXcgYW5kIGhhcyB5ZXQgdG8gYmUgbWFya2VkLlxuIgorbXNnc3RyICIiCisi44OR44OD44Kx44O844K454q25rOB57Ch55Wl6KGo56S66YOo44Gu44Kz44O844OJ44Gr44Gv5Lul5LiL44Gu5oSP5ZGz44GM44GC44KL44CCXG4iCisiIOOCqOODqeODvOODleODqeOCsDpcbiIKKyIgIEk856m6PiAgICAgIOOCqOODqeODvOOBquOBl1xuIgorIiAgQjxSPiAgICAgICDmt7HliLvjgarjgqjjg6njg7wgKOimgeWGjeOCpOODs+OCueODiOODvOODqylcbiIKKyIg44Kk44Oz44K544OI44O844Or54q25rOBOlxuIgorIiAgSTznqbo+ICAgICAg5pyq44Kk44Oz44K544OI44O844OrXG4iCisiICBCPCo+ICAgICAgIOOCpOODs+OCueODiOODvOODq+a4iOOBv+OAgeOBi+OBpOioreWumua4iOOBv1xuIgorIiAgQjwtPiAgICAgICDmnKrjgqTjg7Pjgrnjg4jjg7zjg6vjgaDjgYzjgIHoqK3lrprjg5XjgqHjgqTjg6vjgYzmrovjgaPjgabjgYTjgotcbiIKKyIgIEI8VT4gICAgICAg5bGV6ZaL5riI44G/44Gg44GM6Kit5a6a44GM5riI44KT44Gn44GE44Gq44GEXG4iCisiICBCPEM+ICAgICAgIOWNiuioreWumueKtuazgSAo44Ko44Op44O855m655SfKVxuIgorIiAgQjxJPiAgICAgICDljYrjgqTjg7Pjgrnjg4jjg7zjg6vnirbms4EgKOOCqOODqeODvOeZuueUnylcbiIKKyIg54++5Zyo44Gu6YG45oqe44O76KaB5rGC44GX44Gf6YG45oqeOlxuIgorIiAgQjwqPiAgICAgICDjgqTjg7Pjgrnjg4jjg7zjg6vjg7vmm7TmlrDjg57jg7zjgq9cbiIKKyIgIEI8LT4gICAgICAg5YmK6Zmk44Oe44O844KvICjoqK3lrprjg5XjgqHjgqTjg6vjga/mrovjgZkpXG4iCisiICBCPD0+ICAgICAgIOS/neeVmSAo44OR44OD44Kx44O844K444Gr44Gq44Gr44KC5Yem55CG44KS6KGM44KP44Gq44GEKVxuIgorIiAgQjxfPiAgICAgICDlrozlhajliYrpmaTjg57jg7zjgq8gKOioreWumuODleOCoeOCpOODq+OCguWJiumZpOOBmeOCiylcbiIKKyIgIEI8bj4gICAgICAg5paw6KaP44OR44OD44Kx44O844K444Gn44G+44Gg44Oe44O844Kv5LuY44GR44GV44KM44Gm44GE44Gq44GEXG4iCisKKyMuIHR5cGU6IFNTCisjOiBkc2VsZWN0LjE6Mjk0CisjLCBuby13cmFwCittc2dpZCAiQ3Vyc29yIGFuZCBzY3JlZW4gbW92ZW1lbnQiCittc2dzdHIgIuOCq+ODvOOCveODq+OBiuOCiOOBs+eUu+mdouenu+WLlSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjI5OQorbXNnaWQgIiIKKyJUaGUgcGFja2FnZSBzZWxlY3Rpb24gbGlzdCBhbmQgdGhlIGRlcGVuZGVuY3kgY29uZmxpY3QgcmVzb2x1dGlvbiBzY3JlZW5zICIKKyJjYW4gYmUgbmF2aWdhdGVkIHVzaW5nIG1vdGlvbiBjb21tYW5kcyBtYXBwZWQgdG8gdGhlIGZvbGxvd2luZyBrZXlzOiIKK21zZ3N0ciAiIgorIuODkeODg+OCseODvOOCuOmBuOaKnuODquOCueODiOOChOS+neWtmOODu+ertuWQiOmWouS/guino+axuueUu+mdouOBp+OBr+OAgeS7peS4i+OBruOCreODvOWJsuW9k+OBruOCs+ODnuODs+ODieOBpyIKKyLmk43kvZzjgafjgY3jgovjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTozMTYKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiICBCPHAsIFVwLCBrPiAgICAgICAgICAgbW92ZSBjdXJzb3IgYmFyIHVwXG4iCisiICBCPG4sIERvd24sIGo+ICAgICAgICAgbW92ZSBjdXJzb3IgYmFyIGRvd25cbiIKKyIgIEI8UCwgUGd1cCwgQmFja3NwYWNlPiBzY3JvbGwgbGlzdCAxIHBhZ2UgdXBcbiIKKyIgIEI8TiwgUGdkbiwgU3BhY2U+ICAgICBzY3JvbGwgbGlzdCAxIHBhZ2UgZG93blxuIgorIiAgQjxecD4gICAgICAgICAgICAgICAgIHNjcm9sbCBsaXN0IDEgbGluZSB1cFxuIgorIiAgQjxebj4gICAgICAgICAgICAgICAgIHNjcm9sbCBsaXN0IDEgbGluZSBkb3duXG4iCisiICBCPHQsIEhvbWU+ICAgICAgICAgICAganVtcCB0byB0b3Agb2YgbGlzdFxuIgorIiAgQjxlLCBFbmQ+ICAgICAgICAgICAgIGp1bXAgdG8gZW5kIG9mIGxpc3RcbiIKKyIgIEI8dT4gICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyAxIHBhZ2UgdXBcbiIKKyIgIEI8ZD4gICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyAxIHBhZ2UgZG93blxuIgorIiAgQjxedT4gICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIDEgbGluZSB1cFxuIgorIiAgQjxeZD4gICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIDEgbGluZSBkb3duXG4iCisiICBCPEIsIExlZnQtYXJyb3c+ICAgICAgcGFuIGRpc3BsYXkgMS8zIHNjcmVlbiBsZWZ0XG4iCisiICBCPEYsIFJpZ2h0LWFycm93PiAgICAgcGFuIGRpc3BsYXkgMS8zIHNjcmVlbiByaWdodFxuIgorIiAgQjxeYj4gICAgICAgICAgICAgICAgIHBhbiBkaXNwbGF5IDEgY2hhcmFjdGVyIGxlZnRcbiIKKyIgIEI8XmY+ICAgICAgICAgICAgICAgICBwYW4gZGlzcGxheSAxIGNoYXJhY3RlciByaWdodFxuIgorbXNnc3RyICIiCisiICBCPHAsIFVwLCBrPiAgICAgICAgICAg44Kr44O844K944Or44OQ44O844KS5LiK44Gr56e75YuVXG4iCisiICBCPG4sIERvd24sIGo+ICAgICAgICAg44Kr44O844K944Or44OQ44O844KS5LiL44Gr56e75YuVXG4iCisiICBCPFAsIFBndXAsIEJhY2tzcGFjZT4g44Oq44K544OI44KSIDEg44Oa44O844K45LiK44Gr44K544Kv44Ot44O844OrXG4iCisiICBCPE4sIFBnZG4sIFNwYWNlPiAgICAg44Oq44K544OI44KSIDEg44Oa44O844K45LiL44Gr44K544Kv44Ot44O844OrXG4iCisiICBCPF5wPiAgICAgICAgICAgICAgICAg44Oq44K544OI44KSIDEg6KGM5LiK44Gr44K544Kv44Ot44O844OrXG4iCisiICBCPF5uPiAgICAgICAgICAgICAgICAg44Oq44K544OI44KSIDEg6KGM5LiL44Gr44K544Kv44Ot44O844OrXG4iCisiICBCPHQsIEhvbWU+ICAgICAgICAgICAg44Oq44K544OI44Gu5YWI6aCt44Gr44K444Oj44Oz44OXXG4iCisiICBCPGUsIEVuZD4gICAgICAgICAgICAg44Oq44K544OI44Gu5pyA5b6M44Gr44K444Oj44Oz44OXXG4iCisiICBCPHU+ICAgICAgICAgICAgICAgICAg5oOF5aCx44KSIDEg44Oa44O844K45LiK44Gr44K544Kv44Ot44O844OrXG4iCisiICBCPGQ+ICAgICAgICAgICAgICAgICAg5oOF5aCx44KSIDEg44Oa44O844K45LiL44Gr44K544Kv44Ot44O844OrXG4iCisiICBCPF51PiAgICAgICAgICAgICAgICAg5oOF5aCx44KSIDEg6KGM5LiK44Gr44K544Kv44Ot44O844OrXG4iCisiICBCPF5kPiAgICAgICAgICAgICAgICAg5oOF5aCx44KSIDEg6KGM5LiL44Gr44K544Kv44Ot44O844OrXG4iCisiICBCPEIsIExlZnQtYXJyb3c+ICAgICAg6KGo56S644KSIDEvMyDnlLvpnaLlt6bjgavjgrnjgq/jg63jg7zjg6tcbiIKKyIgIEI8RiwgUmlnaHQtYXJyb3c+ICAgICDooajnpLrjgpIgMS8zIOeUu+mdouWPs+OBq+OCueOCr+ODreODvOODq1xuIgorIiAgQjxeYj4gICAgICAgICAgICAgICAgIOihqOekuuOCkiAxIOaWh+Wtl+W3puOBq+OCueOCr+ODreODvOODq1xuIgorIiAgQjxeZj4gICAgICAgICAgICAgICAgIOihqOekuuOCkiAxIOaWh+Wtl+WPs+OBq+OCueOCr+ODreODvOODq1xuIgorCisjLiB0eXBlOiBTUworIzogZHNlbGVjdC4xOjMxNworIywgbm8td3JhcAorbXNnaWQgIlNlYXJjaGluZyBhbmQgc29ydGluZyIKK21zZ3N0ciAi5qSc57Si44Go5Lim44G55pu/44GIIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MzMxCittc2dpZCAiIgorIlRoZSBsaXN0IG9mIHBhY2thZ2VzIGNhbiBiZSBzZWFyY2hlZCBieSBwYWNrYWdlIG5hbWUuIFRoaXMgaXMgZG9uZSBieSAiCisicHJlc3NpbmcgQjwnLyc+LCBhbmQgdHlwaW5nIGEgc2ltcGxlIHNlYXJjaCBzdHJpbmcuIFRoZSBzdHJpbmcgaXMgIgorImludGVycHJldGVkIGFzIGEgQjxyZWdleD4oNykgIHJlZ3VsYXIgZXhwcmVzc2lvbi4gIElmIHlvdSBhZGQgQjwnL2QnPiB0byB0aGUgIgorInNlYXJjaCBleHByZXNzaW9uLCBkc2VsZWN0IHdpbGwgYWxzbyBzZWFyY2ggaW4gZGVzY3JpcHRpb25zLiBJZiB5b3UgYWRkIEI8Jy8iCisiaSc+IHRoZSBzZWFyY2ggd2lsbCBiZSBjYXNlIGluc2Vuc2l0aXZlLiAgWW91IG1heSBjb21iaW5lIHRoZXNlIHR3byBzdWZmaXhlcyAiCisibGlrZSB0aGlzOiBCPCcvaWQnPi4gIFJlcGVhdGVkIHNlYXJjaGluZyBpcyBhY2NvbXBsaXNoZWQgYnkgcmVwZWF0ZWRseSAiCisicHJlc3NpbmcgdGhlIEI8J24nPiBvciBCPCdcXGUnPiBrZXlzLCB1bnRpbCB0aGUgd2FudGVkIHBhY2thZ2UgaXMgZm91bmQuICBJZiAiCisidGhlIHNlYXJjaCByZWFjaGVzIHRoZSBib3R0b20gb2YgdGhlIGxpc3QsIGl0IHdyYXBzIHRvIHRoZSB0b3AgYW5kIGNvbnRpbnVlcyAiCisic2VhcmNoaW5nIGZyb20gdGhlcmUuIgorbXNnc3RyICIiCisi44OR44OD44Kx44O844K444Oq44K544OI44Gv44OR44OD44Kx44O844K45ZCN44Gn5qSc57Si44GZ44KL44GT44Go44GM44Gn44GN44KL44CC44OR44OD44Kx44O844K444Gu44Oq44K544OI44GnIgorIuOBr+OAgSBCPCcvJz4g44KS5oq844GX44Gm44GL44KJ44CB5Y2Y57SU44Gq5qSc57Si5paH5a2X5YiX44KS5YWl5Yqb44GZ44KL44GT44Go44Gn44CB44OR44OD44Kx44O844K45ZCN44Gu5qScIgorIue0ouOBjOOBp+OBjeOCi+OAguOBk+OBruaWh+Wtl+WIl+OBr+OAgeato+imj+ihqOePviBCPHJlZ2V4Pig3KSDjgafop6PmnpDjgZXjgozjgovjgILmpJzntKLmloflrZfliJfjgavntprjgZEiCisi44GmIEI8Jy9kJz4g44KS5Yqg44GI44KL44Go44CB6Kqs5piO5paH44GL44KJ44KC5qSc57Si44GZ44KL44CCIEI8Jy9pJz4g44KS5Yqg44GI44Gf5aC05ZCI44Gv44CB5aSn5paH5a2XIgorIuWwj+aWh+Wtl+OBruWMuuWIpeOCkuOBl+OBquOBhOOAguOBk+OBriAyIOOBpOOBrua3u+Wtl+OCkiBCPCcvaWQnPiDjga7jgojjgYbjgavjgaTjgarjgZLjgabjgoLoqJjov7DjgafjgY0iCisi44KL44CC5qSc57Si57WQ5p6c44Gr5a++44GX44Gm44CB57aa44GR44GmIEI8J24nPiDjgarjgYTjgZcgQjwnXFxlJz4g44Kt44O844KS5oq844GZ44Go44CB55uu55qE44Gu44OR44ODIgorIuOCseODvOOCuOOBjOW+l+OCieOCjOOCi+OBvuOBp+OAgeaknOe0ouOCkue5sOOCiui/lOOBm+OCi+OAguaknOe0ouOBjOODquOCueODiOOBruacgOW+jOOBvuOBp+mBlOOBmeOCi+OBqOOAgeWFiOmgrSIKKyLjgavmiLvjgovjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTozMzgKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiVGhlIGxpc3Qgc29ydCBvcmRlciBjYW4gYmUgdmFyaWVkIGJ5IHByZXNzaW5nXG4iCisidGhlIEI8J28nPiBhbmQgQjwnTyc+IGtleXMgcmVwZWF0ZWRseS5cbiIKKyJUaGUgZm9sbG93aW5nIG5pbmUgc29ydCBvcmRlcmluZ3MgY2FuIGJlIHNlbGVjdGVkOlxuIgorIiBhbHBoYWJldCAgICAgICAgICBhdmFpbGFibGUgICAgICAgICAgIHN0YXR1c1xuIgorIiBwcmlvcml0eStzZWN0aW9uICBhdmFpbGFibGUrcHJpb3JpdHkgIHN0YXR1cytwcmlvcml0eVxuIgorIiBzZWN0aW9uK3ByaW9yaXR5ICBhdmFpbGFibGUrc2VjdGlvbiAgIHN0YXR1cytzZWN0aW9uXG4iCittc2dzdHIgIiIKKyLjg6rjgrnjg4jjga7jgr3jg7zjg4jpoIbjga/jgIFCPCdvJz4g44GoIEI8J08nPiDjgq3jg7zjgpLnubDjgorov5TjgZfmirzjgZfjgablpInmm7TjgZnjgovjgIJcbiIKKyLku6XkuIvjga4gOSDpgJrjgorjga7jgr3jg7zjg4jpoIbjgpLpgbjjgbnjgovjgIJcbiIKKyIg44Ki44Or44OV44Kh44OZ44OD44OIICAgICDliKnnlKjlj6/og70gICAgICAgICAgICAg54q25rOBXG4iCisiIOWEquWFiOW6pivjgrvjgq/jgrfjg6fjg7MgIOWIqeeUqOWPr+iDvSvlhKrlhYjluqYgICAgICDnirbms4Er5YSq5YWI5bqmXG4iCisiIOOCu+OCr+OCt+ODp+ODsyvlhKrlhYjluqYgIOWIqeeUqOWPr+iDvSvjgrvjgq/jgrfjg6fjg7MgIOeKtuazgSvjgrvjgq/jgrfjg6fjg7NcbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjM0MQorbXNnaWQgIiIKKyJXaGVyZSBub3QgbGlzdGVkIGFib3ZlIGV4cGxpY2l0bHksIGFscGhhYmV0aWMgb3JkZXIgaXMgdXNlZCBhcyB0aGUgZmluYWwgIgorInN1Ym9yZGVyaW5nIHNvcnQga2V5LiIKK21zZ3N0ciAi5LiK6KiY44Oq44K544OI44Gr44Gv5piO6KiY44GX44Gm44GE44Gq44GE44GM44CB5pyA5b6M44Gr44Ki44Or44OV44Kh44OZ44OD44OI6aCG44Gn44K944O844OI44GV44KM44KL44CCIgorCisjLiB0eXBlOiBTUworIzogZHNlbGVjdC4xOjM0MgorIywgbm8td3JhcAorbXNnaWQgIkFsdGVyaW5nIHNlbGVjdGlvbnMiCittc2dzdHIgIumBuOaKnuOBruWkieabtCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjM1MQorIywgbm8td3JhcAorbXNnaWQgIiIKKyJUaGUgcmVxdWVzdGVkIHNlbGVjdGlvbiBzdGF0ZSBvZiBpbmRpdmlkdWFsIHBhY2thZ2VzIG1heSBiZVxuIgorImFsdGVyZWQgd2l0aCB0aGUgZm9sbG93aW5nIGNvbW1hbmRzOlxuIgorIiAgQjwrLCBJbnNlcnQ+ICAgIGluc3RhbGwgb3IgdXBncmFkZVxuIgorIiAgQjw9LCBIPiAgICAgICAgIGhvbGQgaW4gcHJlc2VudCBzdGF0ZSBhbmQgdmVyc2lvblxuIgorIiAgQjw6LCBHPiAgICAgICAgIHVuaG9sZDogdXBncmFkZSBvciBsZWF2ZSB1bmluc3RhbGxlZFxuIgorIiAgQjwtLCBEZWxldGU+ICAgIHJlbW92ZSwgYnV0IGxlYXZlIGNvbmZpZ3VyYXRpb25cbiIKKyIgIEI8Xz4gICAgICAgICAgICByZW1vdmUgJiBwdXJnZSBjb25maWd1cmF0aW9uXG4iCittc2dzdHIgIiIKKyLjgZ3jgozjgZ7jgozjga7jg5Hjg4PjgrHjg7zjgrjjga7opoHmsYLpgbjmip7nirbms4Hjga/jgIHku6XkuIvjga7jgrPjg57jg7Pjg4njgaflpInmm7TjgafjgY3jgovjgIJcbiIKKyIgIEI8KywgSW5zZXJ0PiAgICDjgqTjg7Pjgrnjg4jjg7zjg6vjg7vmm7TmlrDjgZnjgotcbiIKKyIgIEI8PSwgSD4gICAgICAgICDnj77lnKjjga7nirbms4Hjg7vjg5Djg7zjgrjjg6fjg7PjgpLkv53nlZnjgZnjgotcbiIKKyIgIEI8OiwgRz4gICAgICAgICDkv53nlZnop6PpmaQgKOabtOaWsOOBquOBhOOBl+acquOCpOODs+OCueODiOODvOODq+OBruOBvuOBvuOBqOOBmeOCiylcbiIKKyIgIEI8LSwgRGVsZXRlPiAgICDliYrpmaTjgZfjgaboqK3lrprjga/mrovjgZlcbiIKKyIgIEI8Xz4gICAgICAgICAgICDliYrpmaTjgZfjgaboqK3lrprjgoLmtojjgZlcbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjM1NQorbXNnaWQgIiIKKyJXaGVuIHRoZSBjaGFuZ2UgcmVxdWVzdCByZXN1bHRzIGluIG9uZSBvciBtb3JlIHVuc2F0aXNmaWVkIGRlcGVuZHMgb3IgIgorImNvbmZsaWN0cywgQjxkc2VsZWN0PiBwcm9tcHRzIHRoZSB1c2VyIHdpdGggYSBkZXBlbmRlbmN5IHJlc29sdXRpb24gc2NyZWVuLiAiCisiVGhpcyB3aWxsIGJlIGZ1cnRoZXIgZXhwbGFpbmVkIGJlbG93LiIKK21zZ3N0ciAiIgorIuWkieabtOimgeaxguOBrue1kOaenOOAgeS+neWtmOOCkua6gOi2s+OBl+OBquOBi+OBo+OBn+OCiuertuWQiOOBl+OBn+WgtOWQiOOAgSBCPGRzZWxlY3Q+IOOBr+S+neWtmOmWouS/guinoyIKKyLmsbrnlLvpnaLjgpLmj5DnpLrjgZnjgovjgILjgZPjgozjga/lvozjgbvjganoqqzmmI7jgZnjgovjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTozNjAKK21zZ2lkICIiCisiSXQgaXMgYWxzbyBwb3NzaWJsZSB0byBhcHBseSB0aGVzZSBjb21tYW5kcyB0byBncm91cHMgb2YgcGFja2FnZSBzZWxlY3Rpb25zLCAiCisiYnkgcG9pbnRpbmcgdGhlIGN1cnNvciBiYXIgb250byBhIGdyb3VwIGhlYWRlci4gVGhlIGV4YWN0IGdyb3VwaW5nIG9mICIKKyJwYWNrYWdlcyBpcyBkZXBlbmRlbnQgb24gdGhlIGN1cnJlbnQgbGlzdCBvcmRlcmluZyBzZXR0aW5ncy4iCittc2dzdHIgIiIKKyLjgZXjgonjgavjgIHjgrDjg6vjg7zjg5fjg5jjg4Pjg4DkuIrjgavjgqvjg7zjgr3jg6vjg5Djg7zjgpLnp7vli5XjgZfjgabjgIHjg5Hjg4PjgrHjg7zjgrjpgbjmip7jga7jgrDjg6vjg7zjg5fjgasiCisi44Kz44Oe44Oz44OJ44KS6YGp55So44GZ44KL44GT44Go44GM44Gn44GN44KL44CC44OR44OD44Kx44O844K444Gu5q2j56K644Gq44Kw44Or44O844OX5YyW44GM44Gn44GN44KL44GL44Gv44CB54++IgorIuWcqOOBruODquOCueODiOOBruOCveODvOODiOmghuioreWumuOBq+S+neWtmOOBmeOCi+OAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjM2NgorbXNnaWQgIiIKKyJQcm9wZXIgY2FyZSBzaG91bGQgYmUgdGFrZW4gd2hlbiBhbHRlcmluZyBsYXJnZSBncm91cHMgb2Ygc2VsZWN0aW9ucywgIgorImJlY2F1c2UgdGhpcyBjYW4gaW5zdGFudGFuZW91c2x5IGNyZWF0ZSBsYXJnZSBudW1iZXJzIG9mIHVucmVzb2x2ZWQgZGVwZW5kcyAiCisib3IgY29uZmxpY3RzLCBhbGwgb2Ygd2hpY2ggd2lsbCBiZSBsaXN0ZWQgaW4gb25lIGRlcGVuZGVuY3kgcmVzb2x1dGlvbiAiCisic2NyZWVuLCBtYWtpbmcgdGhlbSB2ZXJ5IGhhcmQgdG8gaGFuZGxlLiBJbiBwcmFjdGljZSwgb25seSBob2xkIGFuZCB1bmhvbGQgIgorIm9wZXJhdGlvbnMgYXJlIHVzZWZ1bCB3aGVuIGFwcGxpZWQgdG8gZ3JvdXBzLiIKK21zZ3N0ciAiIgorIuS4gOW6puOBq+Wkp+mHj+OBruacquino+axuuS+neWtmOODu+ertuWQiOOCkueZuueUn+OBleOBm+OCi+OBn+OCgeOAgeS4rei6q+OBjOWkp+OBjeOBhOOCsOODq+ODvOODl+OCkuWkieabtOOBmeOCiyIKKyLloLTlkIjjga/jgIHljYHliIbms6jmhI/jgZnjgovjgbnjgY3jgafjgYLjgovjgIIgMSDjgaTjga7kvp3lrZjplqLkv4Lop6PmsbrnlLvpnaLjgavjgIHjgZnjgbnjgabooajnpLrjgZXjgozjgovjgZMiCisi44Go44Go44Gq44KL44Gf44KB44CB44GT44KM44KS6Kej5rG644GZ44KL44Gu44Gv6Z2e5bi444Gr6Zuj44GX44GE44CC5a6f6Zqb44Gr44Gv44CB44Kw44Or44O844OX44Gu5aSJ5pu044GM5pyJ55SoIgorIuOBquOBruOBr+OAgeS/neeVmeOChOS/neeVmeino+mZpOOBruaZguOBkOOCieOBhOOBp+OBguOCi+OAgiIKKworIy4gdHlwZTogU1MKKyM6IGRzZWxlY3QuMTozNjcKKyMsIG5vLXdyYXAKK21zZ2lkICJSZXNvbHZpbmcgZGVwZW5kcyBhbmQgY29uZmxpY3RzIgorbXNnc3RyICLkvp3lrZjjg7vnq7blkIjop6PmsboiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTozNzIKK21zZ2lkICIiCisiV2hlbiB0aGUgY2hhbmdlIHJlcXVlc3QgcmVzdWx0cyBpbiBvbmUgb3IgbW9yZSB1bnNhdGlzZmllZCBkZXBlbmRzIG9yICIKKyJjb25mbGljdHMsIEI8ZHNlbGVjdD4gcHJvbXB0cyB0aGUgdXNlciB3aXRoIGEgZGVwZW5kZW5jeSByZXNvbHV0aW9uIHNjcmVlbi4gIgorIkZpcnN0IGhvd2V2ZXIsIGFuIGluZm9ybWF0aXZlIGhlbHAgc2NyZWVuIGlzIGRpc3BsYXllZC4iCittc2dzdHIgIiIKKyLpgbjmip7nirbms4HjgpLlpInmm7TjgZfjgabmnKrop6Pmsbrkvp3lrZjjg7vnq7blkIjjgYznmbrnlJ/jgZfjgZ/loLTlkIjjgIEgQjxkc2VsZWN0PiDjga/kvp3lrZjplqLkv4Lop6PmsboiCisi55S76Z2i44KS6KGo56S644GZ44KL44CC5Yid44KB44Gm44Gu5aC05ZCI44Gv44CB44Gd44Gu5YmN44Gr44OY44Or44OX55S76Z2i44KS6KGo56S644GZ44KL44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6Mzc5Cittc2dpZCAiIgorIlRoZSB0b3AgaGFsZiBvZiB0aGlzIHNjcmVlbiBsaXN0cyBhbGwgdGhlIHBhY2thZ2VzIHRoYXQgd2lsbCBoYXZlIHVucmVzb2x2ZWQgIgorImRlcGVuZHMgb3IgY29uZmxpY3RzLCBhcyBhIHJlc3VsdCBvZiB0aGUgcmVxdWVzdGVkIGNoYW5nZSwgYW5kIGFsbCB0aGUgIgorInBhY2thZ2VzIHdob3NlIGluc3RhbGxhdGlvbiBjYW4gcmVzb2x2ZSBhbnkgb2YgdGhlc2UgZGVwZW5kcyBvciB3aG9zZSAiCisicmVtb3ZhbCBjYW4gcmVzb2x2ZSBhbnkgb2YgdGhlIGNvbmZsaWN0cy4gIFRoZSBib3R0b20gaGFsZiBkZWZhdWx0cyB0byBzaG93ICIKKyJ0aGUgZGVwZW5kcyBvciBjb25mbGljdHMgdGhhdCBjYXVzZSB0aGUgY3VycmVudGx5IHNlbGVjdGVkIHBhY2thZ2UgdG8gYmUgIgorImxpc3RlZC4iCittc2dzdHIgIiIKKyLjgZPjga7nlLvpnaLjga7kuIrljYrliIbjgavjga/jgIHmnKrop6Pmsbrkvp3lrZjjg7vnq7blkIjjgYzjgYLjgovjg5Hjg4PjgrHjg7zjgrjjgoTjgIHopoHmsYLjgZXjgozjgZ/lpInmm7Tjga7ntZAiCisi5p6c44CB44Gd44GX44Gm5L6d5a2Y44KS6Kej5rG644GZ44KL44Gu44Gr44Kk44Oz44K544OI44O844Or44GZ44KM44Gw44GE44GE44OR44OD44Kx44O844K444CB56u25ZCI44KS6Kej5rG644GZ44KLIgorIuOBruOBq+WJiumZpOOBmeOCjOOBsOOBhOOBhOODkeODg+OCseODvOOCuOOCkuOBmeOBueOBpuihqOekuuOBmeOCi+OAguS4i+WNiuWIhuOBq+OBr+OAgeePvuWcqOmBuOaKnuOBl+OBpuOBhOOCiyIKKyLjg5Hjg4PjgrHjg7zjgrjjga7kvp3lrZjjgoTnq7blkIjjga7ljp/lm6DjgpLjgIHjg4fjg5Xjgqnjg6vjg4jjgafooajnpLrjgZnjgovjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTozODUKKyMsIGZ1enp5Cittc2dpZCAiIgorIldoZW4gdGhlIHN1Ymxpc3Qgb2YgcGFja2FnZXMgaXMgZGlzcGxheWVkIGluaXRpYWxseSwgQjxkc2VsZWN0PiBtYXkgaGF2ZSAiCisiYWxyZWFkeSBzZXQgdGhlIHJlcXVlc3RlZCBzZWxlY3Rpb24gc3RhdHVzIG9mIHNvbWUgb2YgdGhlIGxpc3RlZCBwYWNrYWdlcywgIgorImluIG9yZGVyIHRvIHJlc29sdmUgdGhlIGRlcGVuZHMgb3IgY29uZmxpY3RzIHRoYXQgY2F1c2VkIHRoZSBkZXBlbmRlbmN5ICIKKyJyZXNvbHV0aW9uIHNjcmVlbiB0byBiZSBkaXNwbGF5ZWQuIFVzdWFsbHksIGl0IGlzIGJlc3QgdG8gZm9sbG93IHVwIHRoZSAiCisic3VnZ2VzdGlvbnMgbWFkZSBieSBCPGRzZWxlY3Q+LiIKK21zZ3N0ciAiIgorIuODkeODg+OCseODvOOCuOOBruOCteODluODquOCueODiOOBjOWIneacn+ihqOekuuOBleOCjOOBn+OBqOOBjeOAgSBCPGRzZWxlY3Q+IOOBr+OAgeS+neWtmOmWouS/guino+axuueUu+mdoiIKKyLjgYzooajnpLrjgZXjgozjgovjgajjgY3jgavkvp3lrZjjgoTnq7blkIjjgpLop6PmsbrjgZnjgovjgojjgYbjgIHjg6rjgrnjg4jjgZfjgZ/jg5Hjg4PjgrHjg7zjgrjjga7pgbjmip7nirbms4HjgpIiCisi44GZ44Gn44Gr5aSJ5pu044GX44Gm44GE44KL44GL44KC44GX44KM44Gq44GE44CC6YCa5bi444CBQjxkc2VsZWN0PiDjgavjgojjgovmj5DmoYjjgpLmjqHnlKjjgZnjgovjga7jgYzmnIDoia8iCisi44Gn44GC44KL44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MzkzCittc2dpZCAiIgorIlRoZSBsaXN0ZWQgcGFja2FnZXMnIHNlbGVjdGlvbiBzdGF0ZSBtYXkgYmUgcmV2ZXJ0ZWQgdG8gdGhlIG9yaWdpbmFsICIKKyJzZXR0aW5ncywgYXMgdGhleSB3ZXJlIGJlZm9yZSB0aGUgdW5yZXNvbHZlZCBkZXBlbmRzIG9yIGNvbmZsaWN0cyB3ZXJlICIKKyJjcmVhdGVkLCBieSBwcmVzc2luZyB0aGUgQjwnUic+IGtleS4gQnkgcHJlc3NpbmcgdGhlIEI8J0QnPiBrZXksIHRoZSAiCisiYXV0b21hdGljIHN1Z2dlc3Rpb25zIGFyZSByZXNldCwgYnV0IHRoZSBjaGFuZ2UgdGhhdCBjYXVzZWQgdGhlIGRlcGVuZGVuY3kgIgorInJlc29sdXRpb24gc2NyZWVuIHRvIGJlIHByb21wdGVkIGlzIGtlcHQgYXMgcmVxdWVzdGVkLiAgRmluYWxseSwgYnkgcHJlc3NpbmcgIgorIkI8J1UnPiwgdGhlIHNlbGVjdGlvbnMgYXJlIGFnYWluIHNldCB0byB0aGUgYXV0b21hdGljIHN1Z2dlc3Rpb24gdmFsdWVzLiIKK21zZ3N0ciAiIgorIkI8J1InPiDjgq3jg7zjgpLmirzjgZnjgZPjgajjgafjgIHjg5Hjg4PjgrHjg7zjgrjjg6rjgrnjg4jjga7pgbjmip7nirbms4HjgpLjgIHmnKrop6Pmsbrkvp3lrZjjg7vnq7blkIjjgYzkvZzmiJAiCisi44GV44KM44KL5YmN44Gu44KI44GG44Gr44CB5YWD44Gr5oi744Gb44KL44Gg44KN44GG44CCQjwnRCc+IOOCreODvOOCkuaKvOOBmeOBk+OBqOOBp+OAgeiHquWLleaPkOahiOOBr+ODquOCu+ODgyIKKyLjg4jjgZXjgozjgovjgYzjgIHkvp3lrZjplqLkv4Lop6PmsbrnlLvpnaLjgYznpLrjgZfjgZ/lpInmm7Tjga/jgIHopoHmsYLjgZfjgZ/jgoLjga7jgajlkIzmp5jjgavntq3mjIHjgZXjgozjgovjgIIiCisi5pyA57WC55qE44GrIEI8J1UnPiDjgpLmirzjgZnjgZPjgajjgafjgIHoh6rli5Xmj5DmoYjjgpLjgrvjg4Pjg4jjgZnjgovjgZPjgajjgYzjgafjgY3jgovjgIIiCisKKyMuIHR5cGU6IFNTCisjOiBkc2VsZWN0LjE6Mzk0CisjLCBuby13cmFwCittc2dpZCAiRXN0YWJsaXNoaW5nIHRoZSByZXF1ZXN0ZWQgc2VsZWN0aW9ucyIKK21zZ3N0ciAi6YG45oqe6KaB5rGC44Gu56K65a6aIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NDAxCittc2dpZCAiIgorIkJ5IHByZXNzaW5nIEI8ZW50ZXI+LCB0aGUgY3VycmVudGx5IGRpc3BsYXllZCBzZXQgb2Ygc2VsZWN0aW9ucyBpcyBhY2NlcHRlZC4gIgorIklmIEI8ZHNlbGVjdD4gZGV0ZWN0cyBubyB1bnJlc29sdmVkIGRlcGVuZHMgYXMgYSByZXN1bHQgb2YgdGhlIHJlcXVlc3RlZCAiCisic2VsZWN0aW9ucywgdGhlIG5ldyBzZWxlY3Rpb25zIHdpbGwgYmUgc2V0LiAgSG93ZXZlciwgaWYgdGhlcmUgYXJlIGFueSAiCisidW5yZXNvbHZlZCBkZXBlbmRzLCBCPGRzZWxlY3Q+IHdpbGwgYWdhaW4gcHJvbXB0IHRoZSB1c2VyIHdpdGggYSBkZXBlbmRlbmN5ICIKKyJyZXNvbHV0aW9uIHNjcmVlbi4iCittc2dzdHIgIiIKKyJCPGVudGVyPiDjgpLmirzjgZnjgajjgIHnj77lnKjooajnpLrjgZXjgozjgabjgYTjgovpgbjmip7jgrvjg4Pjg4jjgafnorrlrprjgZnjgovjgILpgbjmip7opoHmsYLjga7ntZDmnpzjgIHmnKoiCisi6Kej5rG65L6d5a2Y44GM5qSc5Ye644GV44KM44Gq44GR44KM44Gw44CBIEI8ZHNlbGVjdD4g44Gv5paw44GX44GE6YG45oqe44KS6Kit5a6a44GZ44KL44CC44GX44GL44GX44CB44GE44G+IgorIuOBoOacquino+axuuS+neWtmOOBjOWtmOWcqOOBmeOCi+WgtOWQiOOAgSBCPGRzZWxlY3Q+IOOBr+S+neWtmOmWouS/guino+axuueUu+mdouOCkuaUueOCgeOBpuihqOekuuOBmeOCi+OAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjQwNworbXNnaWQgIiIKKyJUbyBhbHRlciBhIHNldCBvZiBzZWxlY3Rpb25zIHRoYXQgY3JlYXRlcyB1bnJlc29sdmVkIGRlcGVuZHMgb3IgY29uZmxpY3RzICIKKyJhbmQgZm9yY2luZyBCPGRzZWxlY3Q+IHRvIGFjY2VwdCBpdCwgcHJlc3MgdGhlIEI8J1EnPiBrZXkuIFRoaXMgc2V0cyB0aGUgIgorInNlbGVjdGlvbnMgYXMgc3BlY2lmaWVkIGJ5IHRoZSB1c2VyLCB1bmNvbmRpdGlvbmFsbHkuIEdlbmVyYWxseSwgZG9uJ3QgZG8gIgorInRoaXMgdW5sZXNzIHlvdSd2ZSByZWFkIHRoZSBmaW5lIHByaW50LiIKK21zZ3N0ciAiIgorIuacquino+axuuS+neWtmOODu+ertuWQiOOBjOWtmOWcqOOBmeOCi+mBuOaKnueKtuazgeOBp+OAgUI8ZHNlbGVjdD4g44Gv56K65a6a44KS5by35Yi244GZ44KL44Gr44Gv44CBICIKKyJCPCdRJz4g44Kt44O844KS5oq844GZ44CC44GT44KM44Gv44Om44O844K244GM5oyH5a6a44GX44Gf6YG45oqe44KS54Sh5p2h5Lu244Gr44K744OD44OI44GZ44KL44CC5LiA6Iis55qE44Gr44CBIgorIuips+e0sOOCkuiqreOCk+OBp+OBhOOBquOBkeOCjOOBsOOAgeOBk+OCjOOCkuOBl+OBquOBhOOBk+OBqOOAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjQxNAorbXNnaWQgIiIKKyJUaGUgb3Bwb3NpdGUgZWZmZWN0LCB0byBiYWNrIG91dCBhbnkgc2VsZWN0aW9ucyBjaGFuZ2UgcmVxdWVzdHMgYW5kIGdvIGJhY2sgIgorInRvIHRoZSBwcmV2aW91cyBsaXN0IG9mIHNlbGVjdGlvbnMsIGlzIGF0dGFpbmVkIGJ5IHByZXNzaW5nIHRoZSBCPCdYJz4gb3IgIgorIkI8ZXNjYXBlPiBrZXlzLiBCeSByZXBlYXRlZGx5IHByZXNzaW5nIHRoZXNlIGtleXMsIGFueSBwb3NzaWJseSBkZXRyaW1lbnRhbCAiCisiY2hhbmdlcyB0byB0aGUgcmVxdWVzdGVkIHBhY2thZ2Ugc2VsZWN0aW9ucyBjYW4gYmUgYmFja2VkIG91dCBjb21wbGV0ZWx5IHRvICIKKyJ0aGUgbGFzdCBlc3RhYmxpc2hlZCBzZXR0aW5ncy4iCittc2dzdHIgIiIKKyLlj43lr77jgavjgIHpgbjmip7jgpLlj5bjgormtojjgZfjgabpgbjmip7jg6rjgrnjg4jjgpLlhYPjgavmiLvjgZnloLTlkIjjga/jgIEgQjwnWCc+IOOCreODvOOChCBCPGVzY2FwZT4gIgorIuOCreODvOOCkuaKvOOBmeOBk+OBqOOAguOCreODvOOCkuS9leWbnuOCguaKvOOBmeOBk+OBqOOBp+OAgeWVj+mhjOOBruOBguOCi+WkieabtOimgeaxguOCkuWPluOCiua2iOOBl+OAgeacgOW+jOOBqyIKKyLnorrlrprjgZfjgZ/pgbjmip7jgavmiLvjgZnjgZPjgajjgYzjgafjgY3jgovjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0MjEKK21zZ2lkICIiCisiSWYgeW91IG1pc3Rha2VubHkgZXN0YWJsaXNoIHNvbWUgc2V0dGluZ3MgYW5kIHdpc2ggdG8gcmV2ZXJ0IGFsbCB0aGUgIgorInNlbGVjdGlvbnMgdG8gd2hhdCBpcyBjdXJyZW50bHkgaW5zdGFsbGVkIG9uIHRoZSBzeXN0ZW0sIHByZXNzIHRoZSBCPCdDJz4gIgorImtleS4gIFRoaXMgaXMgc29tZXdoYXQgc2ltaWxhciB0byB1c2luZyB0aGUgdW5ob2xkIGNvbW1hbmQgb24gYWxsIHBhY2thZ2VzLCAiCisiYnV0IHByb3ZpZGVzIGEgbW9yZSBvYnZpb3VzIHBhbmljIGJ1dHRvbiBpbiBjYXNlcyB3aGVyZSB0aGUgdXNlciBwcmVzc2VkICIKKyJCPGVudGVyPiBieSBhY2NpZGVudC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjQyOAorbXNnaWQgIiIKKyJJZiBzZXQsIEI8ZHNlbGVjdD4gd2lsbCB1c2UgaXQgYXMgdGhlIGRpcmVjdG9yeSBmcm9tIHdoaWNoIHRvIHJlYWQgdGhlIHVzZXIgIgorInNwZWNpZmljIGNvbmZpZ3VyYXRpb24gZmlsZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjQzNAorbXNnaWQgIiIKKyJUaGUgQjxkc2VsZWN0PiBwYWNrYWdlIHNlbGVjdGlvbiBpbnRlcmZhY2UgaXMgY29uZnVzaW5nIHRvIHNvbWUgbmV3IHVzZXJzLiAgIgorIlJlcG9ydGVkbHksIGl0IGV2ZW4gbWFrZXMgc2Vhc29uZWQga2VybmVsIGRldmVsb3BlcnMgY3J5LiIKK21zZ3N0ciAiIgorIkI8ZHNlbGVjdD4g44OR44OD44Kx44O844K46YG45oqe44Kk44Oz44K/44O844OV44Kn44O844K544Gv44CB5paw44GX44GE44Om44O844K244KS5re35Lmx44GV44Gb44KL44CC6IGe44GP44GoIgorIuOBk+OCjeOBp+OBr+OAgee1jOmok+OCkuepjeOCk+OBoOOCq+ODvOODjeODq+mWi+eZuuiAheOBp+OBmeOCieOAgeOBk+OCjOOCkuWYhuOBhOOBpuOBhOOCi+OAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjQzNgorbXNnaWQgIlRoZSBkb2N1bWVudGF0aW9uIGlzIGxhY2tpbmcuIgorbXNnc3RyICLmlofmm7jjgYzotrPjgorjgarjgYTjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0MzgKK21zZ2lkICJUaGVyZSBpcyBubyBoZWxwIG9wdGlvbiBpbiB0aGUgbWFpbiBtZW51LiIKK21zZ3N0ciAi44Oh44Kk44Oz44Oh44OL44Ol44O844Gr44OY44Or44OX44Kq44OX44K344On44Oz44GM44Gq44GE44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NDQwCittc2dpZCAiVGhlIHZpc2libGUgbGlzdCBvZiBhdmFpbGFibGUgcGFja2FnZXMgY2Fubm90IGJlIHJlZHVjZWQuIgorbXNnc3RyICLliKnnlKjlj6/og73jg5Hjg4PjgrHjg7zjgrjjga7jg6rjgrnjg4jooajnpLrjgpLmuJvjgonjgZvjgarjgYTjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0NDQKK21zZ2lkICIiCisiVGhlIGJ1aWx0IGluIGFjY2VzcyBtZXRob2RzIGNhbiBubyBsb25nZXIgc3RhbmQgdXAgdG8gY3VycmVudCBxdWFsaXR5ICIKKyJzdGFuZGFyZHMuIFVzZSB0aGUgYWNjZXNzIG1ldGhvZCBwcm92aWRlZCBieSBhcHQsIGl0IGlzIG5vdCBvbmx5IG5vdCBicm9rZW4sICIKKyJpdCBpcyBhbHNvIG11Y2ggbW9yZSBmbGV4aWJsZSB0aGFuIHRoZSBidWlsdCBpbiBhY2Nlc3MgbWV0aG9kcy4iCittc2dzdHIgIiIKKyLlhoXolLXjgqLjgq/jgrvjgrnmlrnlvI/jgafjga/jgIHjgoLjga/jgoTnj77lnKjjga7lk4Hos6rln7rmupbjgpLmuoDjgZ/jgZvjgarjgYTjgIIgYXB0IOOBjOaPkOS+m+OBmeOCi+OCouOCr+OCuyIKKyLjgrnmlrnlvI/jgpLliKnnlKjjgZnjgozjgbDjgIHlo4rjgozjgarjgYTjgaDjgZHjgafjgarjgY/jgIHlhoXolLXjgqLjgq/jgrvjgrnmlrnlvI/jgojjgorpgZnjgYvjgavmn5Tou5/jgafjgYIiCisi44KL44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NDUwCittc2dpZCAiQjxkcGtnPigxKSwgQjxhcHQtZ2V0Pig4KSwgQjxzb3VyY2VzLmxpc3Q+KDUpLCBCPGRlYj4oNSkuIgorbXNnc3RyICJCPGRwa2c+KDEpLCBCPGFwdC1nZXQ+KDgpLCBCPHNvdXJjZXMubGlzdD4oNSksIEI8ZGViPig1KS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0NTUKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIkI8ZHNlbGVjdD4gd2FzIHdyaXR0ZW4gYnkgSWFuIEphY2tzb24gKGlqYWNrc29uQGdudS5haS5taXQuZWR1KS4gRnVsbCAiCisjfCAibGlzdCBvZiBjb250cmlidXRvcnMgbWF5IGJlIGZvdW5kIGluIGBkc2VsZWN0IC0tbGljZW5zZScuIgorbXNnaWQgIiIKKyJCPGRzZWxlY3Q+IHdhcyB3cml0dGVuIGJ5IElhbiBKYWNrc29uIChpamFja3NvbkBnbnUuYWkubWl0LmVkdSkuIEZ1bGwgbGlzdCAiCisib2YgY29udHJpYnV0b3JzIG1heSBiZSBmb3VuZCBpbiAnZHNlbGVjdCAtLXZlcnNpb24nLiIKK21zZ3N0ciAiIgorIkI8ZHNlbGVjdD4g44Gv44CBSWFuIEphY2tzb24gKGlqYWNrc29uQGdudS5haS5taXQuZWR1KSDjgavjgojjgaPjgabmm7jjgYvjgozjgZ/jgIIg44GT44GuIgorIuODl+ODreOCsOODqeODoOOBuOOBruWFqOiyoueMruiAheS4gOimp+OBryBgZHNlbGVjdCAtLWxpY2Vuc2UnIOOBp+WPgueFp+OBp+OBjeOCi+OAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjQ1OAorbXNnaWQgIiIKKyJUaGlzIG1hbnVhbCBwYWdlIHdhcyB3cml0dGVuIGJ5IEp1aG8gVnVvcmkgRTxsdD5qYXZ1b3JpQGNjLmhlbHNpbmtpLmZpRTxndD4sICIKKyJKb3NpcCBSb2RpbiBhbmQgSm9vc3Qga29vaWouIgorbXNnc3RyICIiCisi44GT44Gu44Oe44OL44Ol44Ki44Or44GvIEp1aG8gVnVvcmkgRTxsdD5qYXZ1b3JpQGNjLmhlbHNpbmtpLmZpRTxndD4g44Gr44KI44Gj44Gm5pu444GLIgorIuOCjOOAgSBKb3NpcCBSb2RpbiwgSm9vc3Qga29vaWog44GM5pu05paw44GX44Gf44CCIgorCisjLiB0eXBlOiBUSAorIzogZHNlbGVjdC5jZmcuNToxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgImRzZWxlY3QuY2ZnIgorbXNnc3RyICJkc2VsZWN0IgorCisjLiB0eXBlOiBUSAorIzogZHNlbGVjdC5jZmcuNToxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIjIwMTEtMDctMDMiCittc2dzdHIgIjIwMDYtMDItMjgiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuY2ZnLjU6NAorbXNnaWQgImRzZWxlY3QuY2ZnIC0gZHNlbGVjdCBjb25maWd1cmF0aW9uIGZpbGUiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC5jZmcuNToxMQorbXNnaWQgIiIKKyJUaGlzIGZpbGUgY29udGFpbnMgZGVmYXVsdCBvcHRpb25zIGZvciBkc2VsZWN0LiBFYWNoIGxpbmUgY29udGFpbnMgYSBzaW5nbGUgIgorIm9wdGlvbiB3aGljaCBpcyBleGFjdGx5IHRoZSBzYW1lIGFzIGEgbm9ybWFsIGNvbW1hbmQgbGluZSBvcHRpb24gZm9yIGRzZWxlY3QgIgorImV4Y2VwdCBmb3IgdGhlIGxlYWRpbmcgZGFzaGVzIHdoaWNoIGFyZSBub3QgdXNlZCBoZXJlLiBRdW90ZXMgc3Vycm91bmRpbmcgIgorIm9wdGlvbiB2YWx1ZXMgYXJlIHN0cmlwcGVkLiBDb21tZW50cyBhcmUgYWxsb3dlZCBieSBzdGFydGluZyBhIGxpbmUgd2l0aCBhICIKKyJoYXNoIHNpZ24gKFwiQjwjPlwiKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC5jZmcuNToxNAorIywgZnV6enkKK21zZ2lkICJJPC9ldGMvZHBrZy9kc2VsZWN0LmNmZy5kL1swLTlhLXpBLVpfLV0qPiIKK21zZ3N0ciAiSTwvZXRjL2Rwa2cvZHBrZy5jZmc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LmNmZy41OjE2CisjLCBmdXp6eQorbXNnaWQgIkk8L2V0Yy9kcGtnL2RzZWxlY3QuY2ZnPiIKK21zZ3N0ciAiSTwvZXRjL2Rwa2cvZHBrZy5jZmc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LmNmZy41OjE4Cittc2dpZCAiSTx+Ly5kc2VsZWN0LmNmZz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC5jZmcuNToyMgorIywgZnV6enkKK21zZ2lkICIiCisiU2VlIEk8L3Vzci9zaGFyZS9kb2MvZHBrZy9USEFOS1M+IGZvciB0aGUgbGlzdCBvZiBwZW9wbGUgd2hvIGhhdmUgIgorImNvbnRyaWJ1dGVkIHRvIEI8ZHNlbGVjdD4uIgorbXNnc3RyICIiCisiQjxkcGtnPiDjgavosqLnjK7jgZfjgZ/kurrjga7jg6rjgrnjg4jjga8gQjwvdXNyL3NoYXJlL2RvYy9kcGtnL1RIQU5LUz4g44GrXG4iCisi5oyZ44GS44Gm44GC44KL44CCXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuY2ZnLjU6MjQKKyMsIGZ1enp5Cittc2dpZCAiQjxkc2VsZWN0PigxKS4iCittc2dzdHIgIkI8ZGF0ZT4oMSkiCisKKyMuIHR5cGU6IFRICisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjEKKyMsIG5vLXdyYXAKK21zZ2lkICJzdGFydC1zdG9wLWRhZW1vbiIKK21zZ3N0ciAic3RhcnQtc3RvcC1kYWVtb24iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6NAorbXNnaWQgInN0YXJ0LXN0b3AtZGFlbW9uIC0gc3RhcnQgYW5kIHN0b3Agc3lzdGVtIGRhZW1vbiBwcm9ncmFtcyIKK21zZ3N0ciAic3RhcnQtc3RvcC1kYWVtb24gLSDjgrfjgrnjg4bjg6Djg4fjg7zjg6Ljg7Pjg5fjg63jgrDjg6njg6Djga7otbfli5XjgIHlgZzmraIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6OAorIywgZnV6enkKK21zZ2lkICJCPHN0YXJ0LXN0b3AtZGFlbW9uPiBbSTxvcHRpb24+Li4uXSBJPGNvbW1hbmQ+IgorbXNnc3RyICJCPHN0YXJ0LXN0b3AtZGFlbW9uPiBCPC1LPnxCPC0tc3RvcD4gSTxvcHRpb25zPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxNAorIywgZnV6enkKK21zZ2lkICIiCisiQjxzdGFydC1zdG9wLWRhZW1vbj4gaXMgdXNlZCB0byBjb250cm9sIHRoZSBjcmVhdGlvbiBhbmQgdGVybWluYXRpb24gb2YgIgorInN5c3RlbS1sZXZlbCBwcm9jZXNzZXMuICBVc2luZyBvbmUgb2YgdGhlIG1hdGNoaW5nIG9wdGlvbnMsIEI8c3RhcnQtc3RvcC0iCisiZGFlbW9uPiBjYW4gYmUgY29uZmlndXJlZCB0byBmaW5kIGV4aXN0aW5nIGluc3RhbmNlcyBvZiBhIHJ1bm5pbmcgcHJvY2Vzcy4iCittc2dzdHIgIiIKKyJCPHN0YXJ0LXN0b3AtZGFlbW9uPiDjga/jgrfjgrnjg4bjg6Djg6zjg5njg6vjga7jg5fjg63jgrvjgrnjga7nlJ/miJDjgoTlgZzmraLjgpLliLblvqHjgZnjgovjgZ/jgoHjgavkvb8iCisi55So44GV44KM44KL44CC44G+44Gf44CBIEI8LS1leGVjPiwgQjwtLXBpZGZpbGU+LCBCPC0tdXNlcj4sIEI8LS1uYW1lPiDjgqrjg5fjgrfjg6fjg7PjgpLmjIciCisi5a6a44GZ44KL44GT44Go44Gn44CB5a6f6KGM5Lit44Gu44OX44Ot44K744K544KS6KaL44Gk44GR44KL44GT44Go44GM44Gn44GN44KL44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjMzCisjLCBmdXp6eQorbXNnaWQgIiIKKyJOb3RlOiB1bmxlc3MgQjwtLXBpZGZpbGU+IGlzIHNwZWNpZmllZCwgQjxzdGFydC1zdG9wLWRhZW1vbj4gYmVoYXZlcyBzaW1pbGFyICIKKyJ0byBCPGtpbGxhbGw+KDEpLiAgQjxzdGFydC1zdG9wLWRhZW1vbj4gd2lsbCBzY2FuIHRoZSBwcm9jZXNzIHRhYmxlIGxvb2tpbmcgIgorImZvciBhbnkgcHJvY2Vzc2VzIHdoaWNoIG1hdGNoIHRoZSBwcm9jZXNzIG5hbWUsIHVpZCwgYW5kL29yIGdpZCAoaWYgIgorInNwZWNpZmllZCkuIEFueSBtYXRjaGluZyBwcm9jZXNzIHdpbGwgcHJldmVudCBCPC0tc3RhcnQ+IGZyb20gc3RhcnRpbmcgdGhlICIKKyJkYWVtb24uIEFsbCBtYXRjaGluZyBwcm9jZXNzZXMgd2lsbCBiZSBzZW50IHRoZSBURVJNIHNpZ25hbCAob3IgdGhlIG9uZSAiCisic3BlY2lmaWVkIHZpYSBCPC0tc2lnbmFsPiBvciBCPC0tcmV0cnk+KSBpZiBCPC0tc3RvcD4gaXMgc3BlY2lmaWVkLiBGb3IgIgorImRhZW1vbnMgd2hpY2ggaGF2ZSBsb25nLWxpdmVkIGNoaWxkcmVuIHdoaWNoIG5lZWQgdG8gbGl2ZSB0aHJvdWdoIGEgQjwtLSIKKyJzdG9wPiwgeW91IG11c3Qgc3BlY2lmeSBhIHBpZGZpbGUuIgorbXNnc3RyICIiCisi5rOo5oSPOiBCPC0tcGlkZmlsZT4g44KS5oyH5a6a44GX44Gq44GE5aC05ZCI44CBQjxzdGFydC1zdG9wLWRhZW1vbj4g44GvIEI8a2lsbGFsbD4oMSkg44GoIgorIuS8vOOBn+WLleOBjeOCkuOBmeOCi+OAgkI8c3RhcnQtc3RvcC1kYWVtb24+IOOBr+OAgSjmjIflrprjgZXjgozjgabjgYTjgozjgbAp44OX44Ot44K744K55ZCN44CBdWlk44CBIgorIuOBiuOCiOOBsyBnaWQg44Gr44Oe44OD44OB44GZ44KL44OX44Ot44K744K544KS44OX44Ot44K744K544OG44O844OW44Or44GL44KJ5qSc57Si44GZ44KL44CCQjwtLXN0YXJ0PiDjgYwiCisi5oyH5a6a44GV44KM44Gm44GE44KL5aC05ZCI44Gr44Oe44OD44OB44GZ44KL44OX44Ot44K744K544GM44GC44KM44Gw44CB44OH44O844Oi44Oz44Gv6LW35YuV44GV44KM44Gq44GE44CCQjwtLSIKKyJzdG9wPiDjgYzmjIflrprjgZXjgozjgabjgYTjgozjgbDjgIHjg57jg4Pjg4HjgZnjgovjg5fjg63jgrvjgrnjgZnjgbnjgabjgasgS0lMTCDjgrfjgrDjg4rjg6vjgYzpgIHjgonjgowiCisi44KL44CC44Gd44Gu44Gf44KB44CBQjwtLXN0b3A+IOOCkuS4juOBiOOCieOCjOOBpuOCgueUn+OBjeW7tuOBs+OCi+W/heimgeOBjOOBguOCi+OCiOOBhuOBquOAgemVt+eUn+OBjeOBmeOCiyIKKyLlrZDjg5fjg63jgrvjgrnjgpLmjIHjgaTjg4fjg7zjg6Ljg7Pjgavjga/jgIEgcGlkZmlsZSDjgpLmjIflrprjgZfjgarjgZHjgozjgbDjgarjgonjgarjgYTjgIIiCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjM1CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LVM+LCBCPC0tc3RhcnQ+IFtCPC0tPl0gSTxhcmd1bWVudHM+IgorbXNnc3RyICJCPHN0YXJ0LXN0b3AtZGFlbW9uPiBCPC1TPnxCPC0tc3RhcnQ+IEk8b3B0aW9ucz4gW0I8LS0+XSBJPGFyZ3VtZW50cz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6NTIKKyMsIGZ1enp5Cittc2dpZCAiIgorIkNoZWNrIGZvciB0aGUgZXhpc3RlbmNlIG9mIGEgc3BlY2lmaWVkIHByb2Nlc3MuICBJZiBzdWNoIGEgcHJvY2VzcyBleGlzdHMsICIKKyJCPHN0YXJ0LXN0b3AtZGFlbW9uPiBkb2VzIG5vdGhpbmcsIGFuZCBleGl0cyB3aXRoIGVycm9yIHN0YXR1cyAxICgwIGlmIEI8LS0iCisib2tub2RvPiBpcyBzcGVjaWZpZWQpLiAgSWYgc3VjaCBhIHByb2Nlc3MgZG9lcyBub3QgZXhpc3QsIGl0IHN0YXJ0cyBhbiAiCisiaW5zdGFuY2UsIHVzaW5nIGVpdGhlciB0aGUgZXhlY3V0YWJsZSBzcGVjaWZpZWQgYnkgQjwtLWV4ZWM+IG9yLCBpZiAiCisic3BlY2lmaWVkLCBieSBCPC0tc3RhcnRhcz4uICBBbnkgYXJndW1lbnRzIGdpdmVuIGFmdGVyIEI8LS0+IG9uIHRoZSBjb21tYW5kICIKKyJsaW5lIGFyZSBwYXNzZWQgdW5tb2RpZmllZCB0byB0aGUgcHJvZ3JhbSBiZWluZyBzdGFydGVkLiIKK21zZ3N0ciAiIgorIkI8LS1zdGFydD4g44KS5L2/55So44GZ44KL44Go44CBIEI8c3RhcnQtc3RvcC1kYWVtb24+IOOBr+aMh+WumuOBleOCjOOBn+ODl+ODreOCu+OCueOBjOWtmOWcqOOBmeOCiyIKKyLjgYvjgpLoqr/jgbnjgovjgILoqbLlvZPjgZnjgovjg5fjg63jgrvjgrnjgYzlrZjlnKjjgZnjgovloLTlkIjjgIEgQjxzdGFydC1zdG9wLWRhZW1vbj4g44Gv5L2V44KC44GbIgorIuOBmuOAgeOCqOODqeODvOOCueODhuODvOOCv+OCuSAxIOOCkui/lOOBl+OBpue1guS6huOBmeOCiyAoQjwtLW9rbm9kbz4g44GM5oyH5a6a44GV44KM44Gf5aC05ZCI44Gv44CBMCDjgpIiCisi6L+U44GZKeOAguipsuW9k+OBmeOCi+ODl+ODreOCu+OCueOBjOWtmOWcqOOBl+OBquOBhOWgtOWQiOOAgSBCPC0tZXhlYz4g44Gr44KI44KKICjlj4jjga/jgIEgQjwtLSIKKyJzdGFydGFzPiDjgYzmjIflrprjgZXjgozjgZ/loLTlkIjjga/jgZPjgozjgavjgojjgoopIOaMh+WumuOBleOCjOOCi+Wun+ihjOODleOCoeOCpOODq+OCkui1t+WLleOBmeOCi+OAguOCs+ODniIKKyLjg7Pjg4njg6njgqTjg7PkuIrjgacgQjwtLT4g5Lul6ZmN44Gr5LiO44GI44KJ44KM44Gf5Lu75oSP44Gu5byV5pWw44Gv6LW35YuV44GV44KM44KL44OX44Ot44Kw44Op44Og44Gr44Gd44Gu44G+IgorIuOBvuW8leOBjea4oeOBleOCjOOCi+OAgiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6NTIKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtSz4sIEI8LS1zdG9wPiIKK21zZ3N0ciAiQjwtbz58QjwtLW9rbm9kbz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6NzAKKyMsIGZ1enp5Cittc2dpZCAiIgorIkNoZWNrcyBmb3IgdGhlIGV4aXN0ZW5jZSBvZiBhIHNwZWNpZmllZCBwcm9jZXNzLiAgSWYgc3VjaCBhIHByb2Nlc3MgZXhpc3RzLCAiCisiQjxzdGFydC1zdG9wLWRhZW1vbj4gc2VuZHMgaXQgdGhlIHNpZ25hbCBzcGVjaWZpZWQgYnkgQjwtLXNpZ25hbD4sIGFuZCBleGl0cyAiCisid2l0aCBlcnJvciBzdGF0dXMgMC4gIElmIHN1Y2ggYSBwcm9jZXNzIGRvZXMgbm90IGV4aXN0LCBCPHN0YXJ0LXN0b3AtZGFlbW9uPiAiCisiZXhpdHMgd2l0aCBlcnJvciBzdGF0dXMgMSAoMCBpZiBCPC0tb2tub2RvPiBpcyBzcGVjaWZpZWQpLiBJZiBCPC0tcmV0cnk+IGlzICIKKyJzcGVjaWZpZWQsIHRoZW4gQjxzdGFydC1zdG9wLWRhZW1vbj4gd2lsbCBjaGVjayB0aGF0IHRoZSBwcm9jZXNzKGVzKSBoYXZlICIKKyJ0ZXJtaW5hdGVkLiIKK21zZ3N0ciAiIgorIkI8LS1zdG9wPiDjgpLkvb/nlKjjgZnjgovjgajjgIEgQjxzdGFydC1zdG9wLWRhZW1vbj4g44Gv5oyH5a6a44GV44KM44Gf44OX44Ot44K744K544GM5a2Y5Zyo44GZ44KLIgorIuOBi+OCkuiqv+OBueOCi+OAguipsuW9k+OBmeOCi+ODl+ODreOCu+OCueOBjOWtmOWcqOOBmeOCi+WgtOWQiOOAgSBCPHN0YXJ0LXN0b3AtZGFlbW9uPiDjga8gQjwtLSIKKyJzaWduYWw+IOOBq+OCiOOCiuaMh+WumuOBleOCjOOBn+OCt+OCsOODiuODq+OCkuOBneOBruODl+ODreOCu+OCueOBq+mAgeOCiuOAgeOCqOODqeODvOOCueODhuODvOOCv+OCuSAwIOOCkui/lCIKKyLjgZfjgabntYLkuobjgZnjgovjgILoqbLlvZPjgZnjgovjg5fjg63jgrvjgrnjgYzlrZjlnKjjgZfjgarjgYTloLTlkIjjgIEgQjxzdGFydC1zdG9wLWRhZW1vbj4g44Gv44KoIgorIuODqeODvOOCueODhuODvOOCv+OCuSAxIOOCkui/lOOBl+OBpue1guS6huOBmeOCiyggQjwtLW9rbm9kbz4g44GM5oyH5a6a44GV44KM44Gf5aC05ZCI44GvIDAg44KS6L+U44GZKeOAgiIKKyJCPC0tcmV0cnk+IOOCkuaMh+WumuOBl+OBn+WgtOWQiOOAgUI8c3RhcnQtc3RvcC1kYWVtb24+IOOBr+OBneOBruODl+ODreOCu+OCueOBjOe1guS6huOBl+OBn+OBk+OBqCIKKyLjgpLnorroqo3jgZnjgovjgIIiCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjcwCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LVQ+LCBCPC0tc3RhdHVzPiIKK21zZ3N0ciAiQjwtbz58QjwtLW9rbm9kbz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6NzQKK21zZ2lkICIiCisiQ2hlY2sgZm9yIHRoZSBleGlzdGVuY2Ugb2YgYSBzcGVjaWZpZWQgcHJvY2VzcywgYW5kIHJldHVybnMgYW4gZXhpdCBzdGF0dXMgIgorImNvZGUsIGFjY29yZGluZyB0byB0aGUgTFNCIEluaXQgU2NyaXB0IEFjdGlvbnMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44Ojc0CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LUg+LCBCPC0taGVscD4iCittc2dzdHIgIkI8LUg+fEI8LS1oZWxwPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo3NworIywgZnV6enkKK21zZ2lkICJTaG93IHVzYWdlIGluZm9ybWF0aW9uIGFuZCBleGl0LiIKK21zZ3N0ciAi5Yip55So5pa55rOV44Gr6Zai44GZ44KL5oOF5aCx44KS6KGo56S644GZ44KL44CCIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo3NworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1WPiwgQjwtLXZlcnNpb24+IgorbXNnc3RyICJCPC1WPnxCPC0tdmVyc2lvbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6ODAKKyMsIGZ1enp5Cittc2dpZCAiU2hvdyB0aGUgcHJvZ3JhbSB2ZXJzaW9uIGFuZCBleGl0LiIKK21zZ3N0ciAi44OQ44O844K444On44Oz44Go6JGX5L2c5qip44Gr6Zai44GZ44KL5oOF5aCx44KS6KGo56S644GZ44KL44CCIgorCisjLiB0eXBlOiBTSAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo4MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJNQVRDSElORyBPUFRJT05TIgorbXNnc3RyICLjgqLjgq/jgrfjg6fjg7Pjg7vjgqrjg5fjgrfjg6fjg7MiCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjgyCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LXA+LCBCPC0tcGlkZmlsZT4gSTxwaWQtZmlsZT4iCittc2dzdHIgIkI8LXA+fEI8LS1waWRmaWxlPiBJPHBpZC1maWxlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo4NgorbXNnaWQgIkNoZWNrIHdoZXRoZXIgYSBwcm9jZXNzIGhhcyBjcmVhdGVkIHRoZSBmaWxlIEk8cGlkLWZpbGU+LiIKK21zZ3N0ciAiSTxwaWQtZmlsZT4g44Gn5oyH5a6a44GV44KM44KL44OX44Ot44K744K5IElEIOOCkuaMgeOBpOODl+ODreOCu+OCueOCkuiqv+OBueOCi+OAgiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6ODYKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwteD4sIEI8LS1leGVjPiBJPGV4ZWN1dGFibGU+IgorbXNnc3RyICJCPC14PnxCPC0tZXhlYz4gSTxleGVjdXRhYmxlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo5MAorbXNnaWQgIiIKKyJDaGVjayBmb3IgcHJvY2Vzc2VzIHRoYXQgYXJlIGluc3RhbmNlcyBvZiB0aGlzIGV4ZWN1dGFibGUgKGFjY29yZGluZyB0byBCPC8iCisicHJvYy8+STxwaWQ+QjwvZXhlPikuIgorbXNnc3RyICIiCisiKEI8L3Byb2MvPkk8cGlkPkI8L2V4ZT4g44Gr44KI44KKKeaMh+WumuOBleOCjOOBnyBleGVjdXRhYmxlIOOBruODl+ODreOCu+OCueOCkuiqv+OBueOCi+OAgiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6OTAKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtbj4sIEI8LS1uYW1lPiBJPHByb2Nlc3MtbmFtZT4iCittc2dzdHIgIkI8LW4+fEI8LS1uYW1lPiBJPHByb2Nlc3MtbmFtZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6OTYKK21zZ2lkICIiCisiQ2hlY2sgZm9yIHByb2Nlc3NlcyB3aXRoIHRoZSBuYW1lIEk8cHJvY2Vzcy1uYW1lPiAoYWNjb3JkaW5nIHRvIEI8L3Byb2MvIgorIj5JPHBpZD5CPC9zdGF0PikuIgorbXNnc3RyICIiCisiKEI8L3Byb2MvPkk8cGlkPkI8L3N0YXQ+IOOBq+OCiOOCiikgSTxwcm9jZXNzLW5hbWU+IOOBqOOBhOOBhuWQjeOBruODl+ODreOCu+OCueOCkuiqv+OBueOCi+OAgiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6OTYKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtdT4sIEI8LS11c2VyPiBJPHVzZXJuYW1lPnxJPHVpZD4iCittc2dzdHIgIkI8LXU+fEI8LS11c2VyPiBJPHVzZXJuYW1lPnxJPHVpZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTAyCittc2dpZCAiIgorIkNoZWNrIGZvciBwcm9jZXNzZXMgb3duZWQgYnkgdGhlIHVzZXIgc3BlY2lmaWVkIGJ5IEk8dXNlcm5hbWU+IG9yIEk8dWlkPi4iCittc2dzdHIgIiIKKyJJPHVzZXJuYW1lPiDjgb7jgZ/jga8gSTx1aWQ+IOOBp+aMh+WumuOBleOCjOOCi+ODpuODvOOCtuOBjOaJgOacieOBmeOCi+ODl+ODreOCu+OCueOCkuiqv+OBueOCi+OAgiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTA0CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LWc+LCBCPC0tZ3JvdXA+IEk8Z3JvdXA+fEk8Z2lkPiIKK21zZ3N0ciAiQjwtZz58QjwtLWdyb3VwPiBJPGdyb3VwPnxJPGdpZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTA3Cittc2dpZCAiQ2hhbmdlIHRvIEk8Z3JvdXA+IG9yIEk8Z2lkPiB3aGVuIHN0YXJ0aW5nIHRoZSBwcm9jZXNzLiIKK21zZ3N0ciAi44OX44Ot44K744K544KS6ZaL5aeL44GZ44KL5pmC54K544Gn44CBSTxncm91cD4g44KEIEk8Z2lkPiDjgpLlpInmm7TjgZnjgovjgIIiCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjEwNworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1zPiwgQjwtLXNpZ25hbD4gSTxzaWduYWw+IgorbXNnc3RyICJCPC1zPnxCPC0tc2lnbmFsPiBJPHNpZ25hbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTEyCisjLCBmdXp6eQorbXNnaWQgIiIKKyJXaXRoIEI8LS1zdG9wPiwgc3BlY2lmaWVzIHRoZSBzaWduYWwgdG8gc2VuZCB0byBwcm9jZXNzZXMgYmVpbmcgc3RvcHBlZCAiCisiKGRlZmF1bHQgVEVSTSkuIgorbXNnc3RyICIiCisiQjwtLXN0b3A+IOOBjOWQjOaZguOBq+S4juOBiOOCieOCjOOBn+aZguOAgeODl+ODreOCu+OCueOCkuWBnOatouOBmeOCi+OBn+OCgeOBq+mAgeOCi+OCt+OCsOODiuODq+OCkuaMh+WumuOBmSIKKyLjgosgKOODh+ODleOCqeODq+ODiOOBryAxNSnjgIIiCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjExMgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1SPiwgQjwtLXJldHJ5PiBJPHRpbWVvdXQ+fEk8c2NoZWR1bGU+IgorbXNnc3RyICJCPC1SPnxCPC0tcmV0cnk+IEk8dGltZW91dD58STxzY2hlZHVsZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTIyCittc2dpZCAiIgorIldpdGggQjwtLXN0b3A+LCBzcGVjaWZpZXMgdGhhdCBCPHN0YXJ0LXN0b3AtZGFlbW9uPiBpcyB0byBjaGVjayB3aGV0aGVyIHRoZSAiCisicHJvY2VzcyhlcykgIGRvIGZpbmlzaC4gSXQgd2lsbCBjaGVjayByZXBlYXRlZGx5IHdoZXRoZXIgYW55IG1hdGNoaW5nICIKKyJwcm9jZXNzZXMgYXJlIHJ1bm5pbmcsIHVudGlsIG5vbmUgYXJlLiBJZiB0aGUgcHJvY2Vzc2VzIGRvIG5vdCBleGl0IGl0IHdpbGwgIgorInRoZW4gdGFrZSBmdXJ0aGVyIGFjdGlvbiBhcyBkZXRlcm1pbmVkIGJ5IHRoZSBzY2hlZHVsZS4iCittc2dzdHIgIiIKKyLlkIzmmYLjgasgQjwtLXN0b3A+IOOBjOS4juOBiOOCieOCjOOCi+OBqCBCPHN0YXJ0LXN0b3AtZGFlbW9uPiDjga/jganjga7jg5fjg63jgrvjgrnjgpLntYLkuobjgZXjgZsiCisi44KL44GL44KS56K66KqN44GZ44KL44CC44Oe44OD44OB44GX44Gf5a6f6KGM5Lit44Gu44OX44Ot44K744K544GM5YWo44Gm57WC5LqG44GZ44KL44G+44Gn57mw44KK6L+U44GX56K66KqN44GZIgorIuOCi+OAguOCguOBl+ODl+ODreOCu+OCueOBjOe1guS6huOBl+OBquOBkeOCjOOBsOOAgSBJPHNjaGVkdWxlPiDjgavjgojjgormsbrlrprjgZXjgozjgovliKXjga7jgqLjgq/jgrfjg6fjg7MiCisi44GM5a6f6KGM44GV44KM44KL44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjEzMworIywgZnV6enkKK21zZ2lkICIiCisiSWYgSTx0aW1lb3V0PiBpcyBzcGVjaWZpZWQgaW5zdGVhZCBvZiBJPHNjaGVkdWxlPiwgdGhlbiB0aGUgc2NoZWR1bGUgIgorIkk8c2lnbmFsPkI8Lz5JPHRpbWVvdXQ+QjwvS0lMTC8+STx0aW1lb3V0PiBpcyB1c2VkLCB3aGVyZSBJPHNpZ25hbD4gaXMgdGhlICIKKyJzaWduYWwgc3BlY2lmaWVkIHdpdGggQjwtLXNpZ25hbD4uIgorbXNnc3RyICIiCisi44KC44GXIEk8dGltZW91dD4g44GMIEk8c2NoZWR1bGU+IOOBruOBi+OCj+OCiuOBq+aMh+WumuOBleOCjOOBpuOBhOOCi+OBqOOAgSBJPHNpZ25hbD5CPC8iCisiPkk8dGltZW91dD5CPC9LSUxMLz5JPHRpbWVvdXQ+IOOBjOS9v+OCj+OCjOOCi+OAguOBk+OBk+OBpyBJPHNpZ25hbD4g44GvIEI8LS1zaWduYWw+IOOBpyIKKyLmjIflrprjgZXjgozjgovjgrfjgrDjg4rjg6vjgafjgYLjgovjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTQ5Cittc2dpZCAiIgorIkk8c2NoZWR1bGU+IGlzIGEgbGlzdCBvZiBhdCBsZWFzdCB0d28gaXRlbXMgc2VwYXJhdGVkIGJ5IHNsYXNoZXMgKEI8Lz4pOyAiCisiZWFjaCBpdGVtIG1heSBiZSBCPC0+STxzaWduYWwtbnVtYmVyPiBvciBbQjwtPl1JPHNpZ25hbC1uYW1lPiwgd2hpY2ggbWVhbnMgIgorInRvIHNlbmQgdGhhdCBzaWduYWwsIG9yIEk8dGltZW91dD4sIHdoaWNoIG1lYW5zIHRvIHdhaXQgdGhhdCBtYW55IHNlY29uZHMgIgorImZvciBwcm9jZXNzZXMgdG8gZXhpdCwgb3IgQjxmb3JldmVyPiwgd2hpY2ggbWVhbnMgdG8gcmVwZWF0IHRoZSByZXN0IG9mIHRoZSAiCisic2NoZWR1bGUgZm9yZXZlciBpZiBuZWNlc3NhcnkuIgorbXNnc3RyICIiCisiSTxzY2hlZHVsZT4g44Gv44K544Op44OD44K344OlIChCPC8+KSDjgafljLrliIfjgonjgozjgZ/lsJHjgarjgY/jgajjgoIgMiDjgaTjga7opoHntKDjgYvjgonjgarjgovjg6rjgrkiCisi44OI44Gn44GC44KL44CC44Gd44KM44Ge44KM44Gu6KaB57Sg44Gv44CBQjwtPkk8c2lnbmFsLW51bWJlcj4g44KC44GX44GP44GvIFtCPC0+XUk8c2lnbmFsLSIKKyJuYW1lPiDjga7loLTlkIjjga/pgIHjgovjgbnjgY3jgrfjgrDjg4rjg6vjgIEgSTx0aW1lb3V0PiDjga7loLTlkIjjga/jg5fjg63jgrvjgrnjgYzntYLkuobjgZnjgovjga7jgpLlvoUiCisi44Gk56eS5pWw44CBIEI8Zm9yZXZlcj4g44Gu5aC05ZCI44Gv44KC44GX5b+F6KaB44Gq44KJ5q6L44KK44GuIEk8c2NoZWR1bGU+IOOCkue5sOOCiui/lOOBl+mBqeeUqOOBmeOCiyIKKyLjgZPjgajjgpLmhI/lkbPjgZnjgovjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTU5Cittc2dpZCAiIgorIklmIHRoZSBlbmQgb2YgdGhlIHNjaGVkdWxlIGlzIHJlYWNoZWQgYW5kIEI8Zm9yZXZlcj4gaXMgbm90IHNwZWNpZmllZCwgdGhlbiAiCisiQjxzdGFydC1zdG9wLWRhZW1vbj4gZXhpdHMgd2l0aCBlcnJvciBzdGF0dXMgMi4gIElmIGEgc2NoZWR1bGUgaXMgc3BlY2lmaWVkLCAiCisidGhlbiBhbnkgc2lnbmFsIHNwZWNpZmllZCB3aXRoIEI8LS1zaWduYWw+IGlzIGlnbm9yZWQuIgorbXNnc3RyICIiCisi44KC44GXIEk8c2NoZWR1bGU+IOOCkuWFqOOBpuS9v+OBhOWIh+OBo+OBpuOAgSBCPGZvcmV2ZXI+IOOBjOaMh+WumuOBleOCjOOBpuOBhOOBquOBhOWgtOWQiOOBr+OAgSAiCisiQjxzdGFydC1zdG9wLWRhZW1vbj4g44Gv44Ko44Op44O854q25oWLIDIg44Gn57WC5LqG44GZ44KL44CC44KC44GXIHNjaGVkdWxlIOOBjOaMh+WumuOBleOCjOOBpuOBhCIKKyLjgozjgbDjgIEgQjwtLXNpZ25hbD4g44Gn5oyH5a6a44GX44Gf44K344Kw44OK44Or44Gv54Sh6KaW44GV44KM44KL44CCIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxNTkKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtYT4sIEI8LS1zdGFydGFzPiBJPHBhdGhuYW1lPiIKK21zZ3N0ciAiQjwtYT58QjwtLXN0YXJ0YXM+IEk8cGF0aG5hbWU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjE2NworbXNnaWQgIiIKKyJXaXRoIEI8LS1zdGFydD4sIHN0YXJ0IHRoZSBwcm9jZXNzIHNwZWNpZmllZCBieSBJPHBhdGhuYW1lPi4gIElmIG5vdCAiCisic3BlY2lmaWVkLCBkZWZhdWx0cyB0byB0aGUgYXJndW1lbnQgZ2l2ZW4gdG8gQjwtLWV4ZWM+LiIKK21zZ3N0ciAiIgorIuWQjOaZguOBqyBCPC0tc3RhcnQ+IOOBjOS4juOBiOOCieOCjOOCi+OBqOOAgSBJPHBhdGhuYW1lPiDjgavjgojjgormjIflrprjgZXjgozjgovjg5fjg63jgrvjgrnjgpLotbfli5UiCisi44GZ44KL44CC44GT44Gu44Kq44OX44K344On44Oz44GM5oyH5a6a44GV44KM44Gq44GE5aC05ZCI44CBIEI8LS1leGVjPiDjgavkuI7jgYjjgonjgozjgovlvJXmlbDjgYzjg4fjg5Xjgqnjg6siCisi44OI44Gr44Gq44KL44CCIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxNjcKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtdD4sIEI8LS10ZXN0PiIKK21zZ3N0ciAiQjwtdD58QjwtLXRlc3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjE3MQorbXNnaWQgIiIKKyJQcmludCBhY3Rpb25zIHRoYXQgd291bGQgYmUgdGFrZW4gYW5kIHNldCBhcHByb3ByaWF0ZSByZXR1cm4gdmFsdWUsIGJ1dCB0YWtlICIKKyJubyBhY3Rpb24uIgorbXNnc3RyICIiCisi5a6f6KGM44GX44KI44GG44Go44GZ44KL5Yem55CG5YaF5a6544KS5Ye65Yqb44GX77yM44Gd44KM44Gr5Ly044GE6YGp5YiH44Gq6L+U44KK5YCk44GM6Kit5a6a44GV44KM44KL44GM44CB5a6f6ZqbIgorIuOBruWHpueQhuOBr+ihjOOCj+OBquOBhOOAgiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTcxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LW8+LCBCPC0tb2tub2RvPiIKK21zZ3N0ciAiQjwtbz58QjwtLW9rbm9kbz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTc0Cittc2dpZCAiUmV0dXJuIGV4aXQgc3RhdHVzIDAgaW5zdGVhZCBvZiAxIGlmIG5vIGFjdGlvbnMgYXJlICh3b3VsZCBiZSkgdGFrZW4uIgorbXNnc3RyICIiCisi5Yem55CG44GM5L2V44KC6KGM44KP44KM44Gq44GEKOWPiOOBr+OAgeihjOOBquOCj+OCjOOCiOOBhuOBqOOCguOBl+OBquOBi+OBo+OBnynloLTlkIjjgIHntYLkuobjgrnjg4bjg7zjgr/jgrkgMSAiCisi44Gu44GL44KP44KK44GrIDAg44KS6L+U44GZ44CCIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxNzQKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtcT4sIEI8LS1xdWlldD4iCittc2dzdHIgIkI8LXE+fEI8LS1xdWlldD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTc3Cittc2dpZCAiRG8gbm90IHByaW50IGluZm9ybWF0aW9uYWwgbWVzc2FnZXM7IG9ubHkgZGlzcGxheSBlcnJvciBtZXNzYWdlcy4iCittc2dzdHIgIuWPguiAg+aDheWgseOCkuWHuuWKm+OBl+OBquOBhOOAguOCqOODqeODvOODoeODg+OCu+ODvOOCuOOBruOBv+ihqOekuuOAgiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTc3CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LWM+LCBCPC0tY2h1aWQ+IEk8dXNlcm5hbWU+fEk8dWlkPltCPDo+STxncm91cD58STxnaWQ+XSIKK21zZ3N0ciAiQjwtYz58QjwtLWNodWlkPiBJPHVzZXJuYW1lPnxJPHVpZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTk1CisjLCBmdXp6eQorbXNnaWQgIiIKKyJDaGFuZ2UgdG8gdGhpcyB1c2VybmFtZS91aWQgYmVmb3JlIHN0YXJ0aW5nIHRoZSBwcm9jZXNzLiBZb3UgY2FuIGFsc28gIgorInNwZWNpZnkgYSBncm91cCBieSBhcHBlbmRpbmcgYSBCPDo+LCB0aGVuIHRoZSBncm91cCBvciBnaWQgaW4gdGhlIHNhbWUgd2F5ICIKKyJhcyB5b3Ugd291bGQgZm9yIHRoZSBgY2hvd24nIGNvbW1hbmQgKEk8dXNlcj5CPDo+STxncm91cD4pLiAgSWYgYSB1c2VyIGlzICIKKyJzcGVjaWZpZWQgd2l0aG91dCBhIGdyb3VwLCB0aGUgcHJpbWFyeSBHSUQgZm9yIHRoYXQgdXNlciBpcyB1c2VkLiAgV2hlbiAiCisidXNpbmcgdGhpcyBvcHRpb24geW91IG11c3QgcmVhbGl6ZSB0aGF0IHRoZSBwcmltYXJ5IGFuZCBzdXBwbGVtZW50YWwgZ3JvdXBzICIKKyJhcmUgc2V0IGFzIHdlbGwsIGV2ZW4gaWYgdGhlIEI8LS1ncm91cD4gb3B0aW9uIGlzIG5vdCBzcGVjaWZpZWQuIFRoZSBCPC0tIgorImdyb3VwPiBvcHRpb24gaXMgb25seSBmb3IgZ3JvdXBzIHRoYXQgdGhlIHVzZXIgaXNuJ3Qgbm9ybWFsbHkgYSBtZW1iZXIgb2YgIgorIihsaWtlIGFkZGluZyBwZXIgcHJvY2VzcyBncm91cCBtZW1iZXJzaGlwIGZvciBnZW5lcmljIHVzZXJzIGxpa2UgQjxub2JvZHk+KS4iCittc2dzdHIgIiIKKyLlh6bnkIbjgpLplovlp4vjgZnjgovliY3jgavmjIflrprjgZXjgozjgZ/jg6bjg7zjgrblkI0gLyDjg6bjg7zjgrYgSUQg44Gr5aSJ5pu044GZ44KL44CCIEI8Oj4g44Gu5b6M44Gr44KwIgorIuODq+ODvOODl+WQjeOBvuOBn+OBr+OCsOODq+ODvOODlyBJRCDjgpLkuI7jgYjjgovjgZPjgajjgavjgojjgorjgrDjg6vjg7zjg5fjgoLmjIflrprjgafjgY3jgovjgILjgZPjgozjga8gIgorImBjaG93bicg44Kz44Oe44Oz44OJ44Go5ZCM44GY5pu45byPIChJPHVzZXI+Qjw6Pkk8Z3JvdXA+KSDjgafjgYLjgovjgILjgZPjga7jgqrjg5fjgrfjg6fjg7PjgpLkvb/nlKgiCisi44GX44Gf5pmC44Gr44Gv44CBIEI8LS1ncm91cD4g44Kq44OX44K344On44Oz44GM5oyH5a6a44GV44KM44Gm44GE44Gq44GE5aC05ZCI44Gn44GC44Gj44Gm44KC44OX44Op44Kk44Oe44OqIgorIuOCsOODq+ODvOODl+OBqOijnOWKqeOCsOODq+ODvOODl+OBr+WQjOanmOOBq+ioreWumuOBleOCjOOCi+OBk+OBqOOCkueQhuino+OBl+OBpuOBhOOBquOBkeOCjOOBsOOBquOCieOBquOBhOOAgiAiCisiQjwtLWdyb3VwPiDjgqrjg5fjgrfjg6fjg7Pjga/jgIEoIEI8bm9ib2R5PiDjga7jgojjgYbjgarkuIDoiKznmoTjg6bjg7zjgrbjgavlr77jgZfjgabjg5fjg63jgrvjgrnljZjkvY0iCisi44Gn44Kw44Or44O844OX44Gr6L+95Yqg44GZ44KL44Go44GE44GG44KI44GG44GrKSDjg6bjg7zjgrbjgYzpgJrluLjjga7jg6Hjg7Pjg5Djg7zjgafjgarjgYTjgrDjg6vjg7zjg5fjgpLmjIflrpoiCisi44GZ44KL5aC05ZCI44Gr44Gu44G/5L2/55So44GZ44KL44CCIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxOTUKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtcj4sIEI8LS1jaHJvb3Q+IEk8cm9vdD4iCittc2dzdHIgIkI8LXI+fEI8LS1jaHJvb3Q+IEk8cm9vdD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjAxCittc2dpZCAiIgorIkNoZGlyIGFuZCBjaHJvb3QgdG8gSTxyb290PiBiZWZvcmUgc3RhcnRpbmcgdGhlIHByb2Nlc3MuIFBsZWFzZSBub3RlIHRoYXQgIgorInRoZSBwaWRmaWxlIGlzIGFsc28gd3JpdHRlbiBhZnRlciB0aGUgY2hyb290LiIKK21zZ3N0ciAiIgorIuWHpueQhuOCkumWi+Wni+OBmeOCi+WJjeOBq+OAgSBJPHJvb3Q+IOOBqyBjaGRpciDjgaggY2hyb290IOOCkuWun+ihjOOBmeOCi+OAgnBpZGZpbGUg44GvICIKKyJjaHJvb3Qg5b6M44Gr44CB5pu444GN5Ye644GV44KM44KL44GT44Go44Gr5rOo5oSP44GZ44KL44GT44Go44CCIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyMDEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtZD4sIEI8LS1jaGRpcj4gSTxwYXRoPiIKK21zZ3N0ciAiQjwtZD58QjwtLWNoZGlyPiBJPHBhdGg+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjIwOQorbXNnaWQgIiIKKyJDaGRpciB0byBJPHBhdGg+IGJlZm9yZSBzdGFydGluZyB0aGUgcHJvY2Vzcy4gVGhpcyBpcyBkb25lIGFmdGVyIHRoZSBjaHJvb3QgIgorImlmIHRoZSBCPC1yPnxCPC0tY2hyb290PiBvcHRpb24gaXMgc2V0LiBXaGVuIG5vdCBzcGVjaWZpZWQsIHN0YXJ0LXN0b3AtIgorImRhZW1vbiB3aWxsIGNoZGlyIHRvIHRoZSByb290IGRpcmVjdG9yeSBiZWZvcmUgc3RhcnRpbmcgdGhlIHByb2Nlc3MuIgorbXNnc3RyICIiCisi44OX44Ot44K744K544KS6ZaL5aeL44GZ44KL5YmN44Gr44CBIEk8cGF0aD4g44GrIGNoZGlyIOOBmeOCi+OAgiBCPC1yPnxCPC0tY2hyb290PiDjgqrjg5fjgrfjg6fjg7MiCisi44KS5ZCM5pmC44Gr5oyH5a6a44GX44Gf5aC05ZCI44Gv44CBIGNocm9vdCDjga7jgYLjgajjgasgY2hkaXIg44GZ44KL44CC44Gd44GG44Gn44Gq44GE5aC05ZCI44Gv44CBc3RhcnQtIgorInN0b3AtZGFlbW9uIOOBr+OAgeODl+ODreOCu+OCueOCkumWi+Wni+OBmeOCi+WJjeOBqyByb290IOODh+OCo+ODrOOCr+ODiOODquOBqyBjaGRpciDjgZnjgovjgIIiCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjIwOQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1iPiwgQjwtLWJhY2tncm91bmQ+IgorbXNnc3RyICJCPC1iPnxCPC0tYmFja2dyb3VuZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjIxCisjLCBmdXp6eQorbXNnaWQgIiIKKyJUeXBpY2FsbHkgdXNlZCB3aXRoIHByb2dyYW1zIHRoYXQgZG9uJ3QgZGV0YWNoIG9uIHRoZWlyIG93bi4gVGhpcyBvcHRpb24gIgorIndpbGwgZm9yY2UgQjxzdGFydC1zdG9wLWRhZW1vbj4gdG8gZm9yayBiZWZvcmUgc3RhcnRpbmcgdGhlIHByb2Nlc3MsIGFuZCAiCisiZm9yY2UgaXQgaW50byB0aGUgYmFja2dyb3VuZC4gIEI8V0FSTklORzogc3RhcnQtc3RvcC1kYWVtb24+IGNhbm5vdCBjaGVjayAiCisidGhlIGV4aXQgc3RhdHVzIGlmIHRoZSBwcm9jZXNzIGZhaWxzIHRvIGV4ZWN1dGUgZm9yIEI8YW55PiByZWFzb24uIFRoaXMgaXMgYSAiCisibGFzdCByZXNvcnQsIGFuZCBpcyBvbmx5IG1lYW50IGZvciBwcm9ncmFtcyB0aGF0IGVpdGhlciBtYWtlIG5vIHNlbnNlICIKKyJmb3JraW5nIG9uIHRoZWlyIG93biwgb3Igd2hlcmUgaXQncyBub3QgZmVhc2libGUgdG8gYWRkIHRoZSBjb2RlIGZvciB0aGVtIHRvICIKKyJkbyB0aGlzIHRoZW1zZWx2ZXMuIgorbXNnc3RyICIiCisi5YW45Z6L55qE44Gr44Gv44CB44OH44O844Oi44Oz44OX44Ot44K744K544KS5YiH44KK6Zui44Gb44Gq44GE44OX44Ot44Kw44Op44Og44Gn5L2/55So44GV44KM44KL44CC44GT44Gu44Kq44OXIgorIuOCt+ODp+ODs+OCkuaMh+WumuOBl+OBn+WgtOWQiOOAgSBCPHN0YXJ0LXN0b3AtZGFlbW9uPiDjga/oh6rliIboh6rouqvjgpLlr77osaHjg5fjg63jgrvjgrnjga7lrp/ooYzliY0iCisi44GrIGZvcmsg44GX44CB5Lul5b6M44OQ44OD44Kv44Kw44Op44Km44Oz44OJ44Gn5Yem55CG44KS6KGM44GG44CCIEI86K2m5ZGKOiBzdGFydC1zdG9wLWRhZW1vbj4g44GvICIKKyJCPOS9leOCieOBi+OBrueQhueUsT7jgavjgojjgaPjgablh6bnkIbjga7lrp/ooYzjgavlpLHmlZfjgZfjgZ/loLTlkIjjgavjgIHjgZ3jga7ntYLkuobjgrnjg4bjg7zjgr/jgrnjgpLjg4Hjgqfjg4MiCisi44Kv44Gn44GN44Gq44GE44CC44GT44Gu44Kq44OX44K344On44Oz44Gv5pyA57WC5omL5q6144Gn44GC44KK44CB6Ieq5YiG44GL44KJIGZvcmsg44GZ44KL44GT44Go44Gr5oSP5ZGz44Gu44GqIgorIuOBhOODl+ODreOCsOODqeODoOOChOOAgWZvcmsg44KS6Ieq5YiG44Gn6KGM44GG44Gf44KB44Gu44Kz44O844OJ44KS6L+95Yqg44Gn44GN44Gq44GE44OX44Ot44Kw44Op44Og44Gu44G/44Gn44GuIgorIuS9v+eUqOOCkuaEj+Wbs+OBl+OBpuOBhOOCi+OAgiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjIxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LU4+LCBCPC0tbmljZWxldmVsPiBJPGludD4iCittc2dzdHIgIkI8LU4+fEI8LS1uaWNlbGV2ZWw+IEk8aW50PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyMjQKK21zZ2lkICJUaGlzIGFsdGVycyB0aGUgcHJpb3JpdHkgb2YgdGhlIHByb2Nlc3MgYmVmb3JlIHN0YXJ0aW5nIGl0LiIKK21zZ3N0ciAi44OX44Ot44K744K544KS6ZaL5aeL44GZ44KL5YmN44Gr44OX44Ot44K744K544Gu44OX44Op44Kk44Kq44Oq44OG44Kj44KS5aSJ5pu044GZ44KL44CCIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyMjQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1QPiwgQjwtLXByb2NzY2hlZD4gSTxwb2xpY3k+Qjw6Pkk8cHJpb3JpdHk+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjMwCittc2dpZCAiIgorIlRoaXMgYWx0ZXJzIHRoZSBwcm9jZXNzIHNjaGVkdWxlciBwb2xpY3kgYW5kIHByaW9yaXR5IG9mIHRoZSBwcm9jZXNzIGJlZm9yZSAiCisic3RhcnRpbmcgaXQuIFRoZSBwcmlvcml0eSBjYW4gYmUgb3B0aW9uYWxseSBzcGVjaWZpZWQgYnkgYXBwZW5kaW5nIGEgQjw6PiAiCisiZm9sbG93ZWQgYnkgdGhlIHZhbHVlLiBUaGUgZGVmYXVsdCBJPHByaW9yaXR5PiBpcyAwLiBUaGUgY3VycmVudGx5IHN1cHBvcnRlZCAiCisicG9saWN5IHZhbHVlcyBhcmUgQjxvdGhlcj4sIEI8Zmlmbz4gYW5kIEI8cnI+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyMzAKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtST4sIEI8LS1pb3NjaGVkPiBJPGNsYXNzPkI8Oj5JPHByaW9yaXR5PiIKK21zZ3N0ciAiQjxkcGtnLXF1ZXJ5PiBCPC1MPnxCPC0tbGlzdGZpbGVzPiBJPHBhY2thZ2UtbmFtZT4gLi4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjIzNworbXNnaWQgIiIKKyJUaGlzIGFsdGVycyB0aGUgSU8gc2NoZWR1bGVyIGNsYXNzIGFuZCBwcmlvcml0eSBvZiB0aGUgcHJvY2VzcyBiZWZvcmUgIgorInN0YXJ0aW5nIGl0LiBUaGUgcHJpb3JpdHkgY2FuIGJlIG9wdGlvbmFsbHkgc3BlY2lmaWVkIGJ5IGFwcGVuZGluZyBhIEI8Oj4gIgorImZvbGxvd2VkIGJ5IHRoZSB2YWx1ZS4gVGhlIGRlZmF1bHQgSTxwcmlvcml0eT4gaXMgNCwgdW5sZXNzIEk8Y2xhc3M+IGlzICIKKyJCPGlkbGU+LCB0aGVuIEk8cHJpb3JpdHk+IHdpbGwgYWx3YXlzIGJlIDcuIFRoZSBjdXJyZW50bHkgc3VwcG9ydGVkIHZhbHVlcyAiCisiZm9yIEk8Y2xhc3M+IGFyZSBCPGlkbGU+LCBCPGJlc3QtZWZmb3J0PiBhbmQgQjxyZWFsLXRpbWU+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyMzcKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtaz4sIEI8LS11bWFzaz4gSTxtYXNrPiIKK21zZ3N0ciAiQjwtaz58QjwtLXVtYXNrPiBJPG1hc2s+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjI0MAorbXNnaWQgIlRoaXMgc2V0cyB0aGUgdW1hc2sgb2YgdGhlIHByb2Nlc3MgYmVmb3JlIHN0YXJ0aW5nIGl0LiIKK21zZ3N0ciAi44OX44Ot44K744K544KS6ZaL5aeL44GZ44KL5YmN44Gr44OX44Ot44K744K544GuIHVtYXNrIOOCkuioreWumuOBmeOCi+OAgiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjQwCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LW0+LCBCPC0tbWFrZS1waWRmaWxlPiIKK21zZ3N0ciAiQjwtbT58QjwtLW1ha2UtcGlkZmlsZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjU1CisjLCBmdXp6eQorbXNnaWQgIiIKKyJVc2VkIHdoZW4gc3RhcnRpbmcgYSBwcm9ncmFtIHRoYXQgZG9lcyBub3QgY3JlYXRlIGl0cyBvd24gcGlkIGZpbGUuIFRoaXMgIgorIm9wdGlvbiB3aWxsIG1ha2UgQjxzdGFydC1zdG9wLWRhZW1vbj4gY3JlYXRlIHRoZSBmaWxlIHJlZmVyZW5jZWQgd2l0aCBCPC0tIgorInBpZGZpbGU+IGFuZCBwbGFjZSB0aGUgcGlkIGludG8gaXQganVzdCBiZWZvcmUgZXhlY3V0aW5nIHRoZSBwcm9jZXNzLiBOb3RlLCAiCisidGhlIGZpbGUgd2lsbCBub3QgYmUgcmVtb3ZlZCB3aGVuIHN0b3BwaW5nIHRoZSBwcm9ncmFtLiAgQjxOT1RFOj4gVGhpcyAiCisiZmVhdHVyZSBtYXkgbm90IHdvcmsgaW4gYWxsIGNhc2VzLiBNb3N0IG5vdGFibHkgd2hlbiB0aGUgcHJvZ3JhbSBiZWluZyAiCisiZXhlY3V0ZWQgZm9ya3MgZnJvbSBpdHMgbWFpbiBwcm9jZXNzLiBCZWNhdXNlIG9mIHRoaXMsIGl0IGlzIHVzdWFsbHkgb25seSAiCisidXNlZnVsIHdoZW4gY29tYmluZWQgd2l0aCB0aGUgQjwtLWJhY2tncm91bmQ+IG9wdGlvbi4iCittc2dzdHIgIiIKKyLoh6rliIboh6rouqvjgacgUElEIOODleOCoeOCpOODq+OCkuS9nOaIkOOBl+OBquOBhOODl+ODreOCsOODqeODoOOCkui1t+WLleOBmeOCi+mam+OBq+S9v+eUqOOBmeOCi+OAguOBk+OBruOCquODlyIKKyLjgrfjg6fjg7PjgavjgojjgorjgIHlh6bnkIbjga7lrp/ooYznm7TliY3jgasgQjxzdGFydC1zdG9wLWRhZW1vbj4g44GvIEI8LS1waWRmaWxlPiDjgaflj4LnhafjgZUiCisi44KM44KL44OV44Kh44Kk44Or44KS5L2c5oiQ44GX44CB6YWN572u44GZ44KL44CC44GT44Gu44OV44Kh44Kk44Or44Gv44OX44Ot44Kw44Op44Og44Gu5YGc5q2i5pmC44Gr5YmK6Zmk44GV44KM44GqIgorIuOBhOOBk+OBqOOBq+azqOaEj+OBleOCjOOBn+OBhOOAgkI85rOo5oSPOj4g44GT44Gu44Kq44OX44K344On44Oz44Gv5YuV5L2c44GX44Gq44GE5aC05ZCI44GM44GC44KL44CC54m544Gr44CB44OXIgorIuODreOCsOODqeODoOOBruWun+ihjOaZguOBq+OBneOBruODoeOCpOODs+ODl+ODreOCu+OCueOBi+OCiSBmb3JrIOOBmeOCi+OCiOOBhuOBquODl+ODreOCsOODqeODoOOBp+OBr+ato+OBl+OBjyIKKyLli5XkvZzjgZfjgarjgYTjgILjgZPjga7jgZ/jgoHjgIHpgJrluLjjga8gQjwtLWJhY2tncm91bmQ+IOOCquODl+OCt+ODp+ODs+OBqOS9teeUqOOBmeOCi+WgtOWQiOOBq+OBruOBv+aciSIKKyLnlKjjgafjgYLjgovjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjU4Cittc2dpZCAiUHJpbnQgdmVyYm9zZSBpbmZvcm1hdGlvbmFsIG1lc3NhZ2VzLiIKK21zZ3N0ciAi6Kmz44GX44GE5oOF5aCx44KS5Ye65Yqb44GZ44KL44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjI3MAorbXNnaWQgIiIKKyJUaGUgcmVxdWVzdGVkIGFjdGlvbiB3YXMgcGVyZm9ybWVkLiBJZiBCPC0tb2tub2RvPiB3YXMgc3BlY2lmaWVkLCBpdCdzIGFsc28gIgorInBvc3NpYmxlIHRoYXQgbm90aGluZyBoYWQgdG8gYmUgZG9uZS4gIFRoaXMgY2FuIGhhcHBlbiB3aGVuIEI8LS1zdGFydD4gd2FzICIKKyJzcGVjaWZpZWQgYW5kIGEgbWF0Y2hpbmcgcHJvY2VzcyB3YXMgYWxyZWFkeSBydW5uaW5nLCBvciB3aGVuIEI8LS1zdG9wPiB3YXMgIgorInNwZWNpZmllZCBhbmQgdGhlcmUgd2VyZSBubyBtYXRjaGluZyBwcm9jZXNzZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6Mjc1Cittc2dpZCAiSWYgQjwtLW9rbm9kbz4gd2FzIG5vdCBzcGVjaWZpZWQgYW5kIG5vdGhpbmcgd2FzIGRvbmUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjgzCittc2dpZCAiIgorIklmIEI8LS1zdG9wPiBhbmQgQjwtLXJldHJ5PiB3ZXJlIHNwZWNpZmllZCwgYnV0IHRoZSBlbmQgb2YgdGhlIHNjaGVkdWxlIHdhcyAiCisicmVhY2hlZCBhbmQgdGhlIHByb2Nlc3NlcyB3ZXJlIHN0aWxsIHJ1bm5pbmcuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjI4MyBzdGFydC1zdG9wLWRhZW1vbi44OjI5NQorIywgbm8td3JhcAorbXNnaWQgIkI8Mz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyODYKK21zZ2lkICJBbnkgb3RoZXIgZXJyb3IuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6Mjg5Cittc2dpZCAiIgorIldoZW4gdXNpbmcgdGhlIEI8LS1zdGF0dXM+IGNvbW1hbmQsIHRoZSBmb2xsb3dpbmcgc3RhdHVzIGNvZGVzIGFyZSByZXR1cm5lZDoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyOTIKK21zZ2lkICJQcm9ncmFtIGlzIHJ1bm5pbmcuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6Mjk1Cittc2dpZCAiUHJvZ3JhbSBpcyBub3QgcnVubmluZyBhbmQgdGhlIHBpZCBmaWxlIGV4aXN0cy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyOTgKK21zZ2lkICJQcm9ncmFtIGlzIG5vdCBydW5uaW5nLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyOTgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPDQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MzAxCittc2dpZCAiVW5hYmxlIHRvIGRldGVybWluZSBwcm9ncmFtIHN0YXR1cy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODozMDUKK21zZ2lkICIiCisiU3RhcnQgdGhlIEI8Zm9vZD4gZGFlbW9uLCB1bmxlc3Mgb25lIGlzIGFscmVhZHkgcnVubmluZyAoYSBwcm9jZXNzIG5hbWVkICIKKyJmb29kLCBydW5uaW5nIGFzIHVzZXIgZm9vZCwgd2l0aCBwaWQgaW4gZm9vZC5waWQpOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjMwOAorIywgbm8td3JhcAorbXNnaWQgInN0YXJ0LXN0b3AtZGFlbW9uIC0tc3RhcnQgLS1va25vZG8gLS11c2VyIGZvb2QgLS1uYW1lIGZvb2QgLS1waWRmaWxlIC92YXIvcnVuL2Zvb2QucGlkIC0tc3RhcnRhcyAvdXNyL3NiaW4vZm9vZCAtLWNodWlkIGZvb2QgLS0gLS1kYWVtb25cbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjMxMQorbXNnaWQgIlNlbmQgQjxTSUdURVJNPiB0byBCPGZvb2Q+IGFuZCB3YWl0IHVwIHRvIDUgc2Vjb25kcyBmb3IgaXQgdG8gc3RvcDoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODozMTQKKyMsIG5vLXdyYXAKK21zZ2lkICJzdGFydC1zdG9wLWRhZW1vbiAtLXN0b3AgLS1va25vZG8gLS11c2VyIGZvb2QgLS1uYW1lIGZvb2QgLS1waWRmaWxlIC92YXIvcnVuL2Zvb2QucGlkIC0tcmV0cnkgNVxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MzE3Cittc2dpZCAiRGVtb25zdHJhdGlvbiBvZiBhIGN1c3RvbSBzY2hlZHVsZSBmb3Igc3RvcHBpbmcgQjxmb29kPjoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODozMjAKKyMsIG5vLXdyYXAKK21zZ2lkICJzdGFydC1zdG9wLWRhZW1vbiAtLXN0b3AgLS1va25vZG8gLS11c2VyIGZvb2QgLS1uYW1lIGZvb2QgLS1waWRmaWxlIC92YXIvcnVuL2Zvb2QucGlkIC0tcmV0cnk9VEVSTS8zMC9LSUxMLzVcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjMyNgorbXNnaWQgIiIKKyJNYXJlayBNaWNoYWxraWV3aWN6IEU8bHQ+bWFyZWttQGkxN2xpbnV4Yi5pc3RzLnB3ci53cm9jLnBsRTxndD4gYmFzZWQgb24gYSAiCisicHJldmlvdXMgdmVyc2lvbiBieSBJYW4gSmFja3NvbiBFPGx0PmlhbkBjaGlhcmsuZ3JlZW5lbmQub3JnLnVrRTxndD4uIgorbXNnc3RyICIiCisiTWFyZWsgTWljaGFsa2lld2ljeiBFPGx0Pm1hcmVrbUBpMTdsaW51eGIuaXN0cy5wd3Iud3JvYy5wbEU8Z3Q+IOOBjCBJYW4gIgorIkphY2tzb24gRTxsdD5pYW5AY2hpYXJrLmdyZWVuZW5kLm9yZy51a0U8Z3Q+IOOBq+OCiOOCi+S7peWJjeOBruODkOODvOOCuOODp+ODs+OCkuWFg+OBq+S9nCIKKyLmiJDjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MzI4Cittc2dpZCAiIgorIk1hbnVhbCBwYWdlIGJ5IEtsZWUgRGllbmVzIEU8bHQ+a2xlZUBtaXQuZWR1RTxndD4sIHBhcnRpYWxseSByZWZvcm1hdHRlZCBieSAiCisiSWFuIEphY2tzb24uIgorbXNnc3RyICIiCisi44GT44Gu44Oe44OL44Ol44Ki44Or44GvIEtsZWUgRGllbmVzIEU8bHQ+a2xlZUBtaXQuZWR1RTxndD4g44Gr44KI44Gj44Gm5pu444GL44KM44Gf44CCSWFuICIKKyJKYWNrc29uIOOBjOmDqOWIhueahOOBq+aVtOW9ouOBl+OBn+OAgiIKKworIy4gdHlwZTogVEgKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo4CisjLCBuby13cmFwCittc2dpZCAidXBkYXRlLWFsdGVybmF0aXZlcyIKK21zZ3N0ciAidXBkYXRlLWFsdGVybmF0aXZlcyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjExCittc2dpZCAiIgorInVwZGF0ZS1hbHRlcm5hdGl2ZXMgLSBtYWludGFpbiBzeW1ib2xpYyBsaW5rcyBkZXRlcm1pbmluZyBkZWZhdWx0IGNvbW1hbmRzIgorbXNnc3RyICIiCisidXBkYXRlLWFsdGVybmF0aXZlcyAtIOOCt+ODs+ODnOODquODg+OCr+ODquODs+OCr+OCkueuoeeQhuOBl+OBpuODh+ODleOCqeODq+ODiOOBruOCs+ODnuODs+ODieOCkuaxuuWumiIKKyLjgZnjgosiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNQorIywgZnV6enkKK21zZ2lkICJCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IFtJPG9wdGlvbj4uLi5dIEk8Y29tbWFuZD4iCittc2dzdHIgIkI8dXBkYXRlLWFsdGVybmF0aXZlcz4gW0k8b3B0aW9ucz5dIEI8LS1hbGw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjAKK21zZ2lkICIiCisiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBjcmVhdGVzLCByZW1vdmVzLCBtYWludGFpbnMgYW5kIGRpc3BsYXlzIGluZm9ybWF0aW9uICIKKyJhYm91dCB0aGUgc3ltYm9saWMgbGlua3MgY29tcHJpc2luZyB0aGUgRGViaWFuIGFsdGVybmF0aXZlcyBzeXN0ZW0uIgorbXNnc3RyICIiCisiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiDjga8gRGViaWFuIOOBriBhbHRlcm5hdGl2ZXMg44K344K544OG44Og44KS5oiQ44GZ44K344Oz44Oc44Oq44OD44Kv44OqIgorIuODs+OCr+OCkueUn+aIkOODu+WJiumZpOODu+euoeeQhuOBl+OBn+OCiuOAgeODquODs+OCr+OBruaDheWgseOCkuihqOekuuOBl+OBn+OCiuOBmeOCi+OAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjI4Cittc2dpZCAiIgorIkl0IGlzIHBvc3NpYmxlIGZvciBzZXZlcmFsIHByb2dyYW1zIGZ1bGZpbGxpbmcgdGhlIHNhbWUgb3Igc2ltaWxhciBmdW5jdGlvbnMgIgorInRvIGJlIGluc3RhbGxlZCBvbiBhIHNpbmdsZSBzeXN0ZW0gYXQgdGhlIHNhbWUgdGltZS4gIEZvciBleGFtcGxlLCBtYW55ICIKKyJzeXN0ZW1zIGhhdmUgc2V2ZXJhbCB0ZXh0IGVkaXRvcnMgaW5zdGFsbGVkIGF0IG9uY2UuICBUaGlzIGdpdmVzIGNob2ljZSB0byAiCisidGhlIHVzZXJzIG9mIGEgc3lzdGVtLCBhbGxvd2luZyBlYWNoIHRvIHVzZSBhIGRpZmZlcmVudCBlZGl0b3IsIGlmIGRlc2lyZWQsICIKKyJidXQgbWFrZXMgaXQgZGlmZmljdWx0IGZvciBhIHByb2dyYW0gdG8gbWFrZSBhIGdvb2QgY2hvaWNlIGZvciBhbiBlZGl0b3IgdG8gIgorImludm9rZSBpZiB0aGUgdXNlciBoYXMgbm90IHNwZWNpZmllZCBhIHBhcnRpY3VsYXIgcHJlZmVyZW5jZS4iCittc2dzdHIgIiIKKyLlkIzjgZjmqZ/og73jgpIgKOOBguOCi+OBhOOBr+S8vOOBn+OCiOOBhuOBquapn+iDveOCkikg5oyB44Gk6KSH5pWw44Gu44OX44Ot44Kw44Op44Og44KS5LiA44Gk44Gu44K344K544OG44Og44GrIgorIuOCpOODs+OCueODiOODvOODq+OBl+OAgeWFseWtmOOBleOBm+OCi+OBk+OBqOOBjOOBp+OBjeOCi+OAguS+i+OBiOOBsOWkmuOBj+OBruOCt+OCueODhuODoOOBp+OBr+OAgeikh+aVsOOBruODhuOCrSIKKyLjgrnjg4jjgqjjg4fjgqPjgr/jgpLlhbHlrZjjgZXjgZvjgabjgYTjgovjgILjgZPjgozjgavjgojjgorjgIHjgrfjgrnjg4bjg6Djga7jg6bjg7zjgrbjga/lpb3jgb/jgavlv5zjgZjjgabliKXjgIUiCisi44Gu44Ko44OH44Kj44K/44KS5L2/44GG44GT44Go44GM44Gn44GN44KL44KI44GG44Gr44Gq44KL44CC44GX44GL44GX44OX44Ot44Kw44Op44Og44Gr44Go44Gj44Gm44Gv44CB54m544Gr5oyH5a6aIgorIuOBjOOBquOBi+OBo+OBn+OBqOOBjeOBq+OBqeOBruOCqOODh+OCo+OCv+OCkui1t+WLleOBmeOCjOOBsOiJr+OBhOOBruOBi+OBqOOBhOOBhuOAgeOBquOBi+OBquOBi+mbo+OBl+OBhOWVj+mhjOOCkiIKKyLmirHjgYjjgovjgZPjgajjgavjgarjgovjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo1MAorbXNnaWQgIiIKKyJEZWJpYW4ncyBhbHRlcm5hdGl2ZXMgc3lzdGVtIGFpbXMgdG8gc29sdmUgdGhpcyBwcm9ibGVtLiAgQSBnZW5lcmljIG5hbWUgaW4gIgorInRoZSBmaWxlc3lzdGVtIGlzIHNoYXJlZCBieSBhbGwgZmlsZXMgcHJvdmlkaW5nIGludGVyY2hhbmdlYWJsZSAiCisiZnVuY3Rpb25hbGl0eS4gIFRoZSBhbHRlcm5hdGl2ZXMgc3lzdGVtIGFuZCB0aGUgc3lzdGVtIGFkbWluaXN0cmF0b3IgIgorInRvZ2V0aGVyIGRldGVybWluZSB3aGljaCBhY3R1YWwgZmlsZSBpcyByZWZlcmVuY2VkIGJ5IHRoaXMgZ2VuZXJpYyBuYW1lLiAgIgorIkZvciBleGFtcGxlLCBpZiB0aGUgdGV4dCBlZGl0b3JzIEI8ZWQ+KDEpICBhbmQgQjxudmk+KDEpICBhcmUgYm90aCBpbnN0YWxsZWQgIgorIm9uIHRoZSBzeXN0ZW0sIHRoZSBhbHRlcm5hdGl2ZXMgc3lzdGVtIHdpbGwgY2F1c2UgdGhlIGdlbmVyaWMgbmFtZSBJPC91c3IvIgorImJpbi9lZGl0b3I+IHRvIHJlZmVyIHRvIEk8L3Vzci9iaW4vbnZpPiBieSBkZWZhdWx0LiBUaGUgc3lzdGVtIGFkbWluaXN0cmF0b3IgIgorImNhbiBvdmVycmlkZSB0aGlzIGFuZCBjYXVzZSBpdCB0byByZWZlciB0byBJPC91c3IvYmluL2VkPiBpbnN0ZWFkLCBhbmQgdGhlICIKKyJhbHRlcm5hdGl2ZXMgc3lzdGVtIHdpbGwgbm90IGFsdGVyIHRoaXMgc2V0dGluZyB1bnRpbCBleHBsaWNpdGx5IHJlcXVlc3RlZCAiCisidG8gZG8gc28uIgorbXNnc3RyICIiCisiRGViaWFuIOOBriBhbHRlcm5hdGl2ZXMg44K344K544OG44Og44Gv44CB44GT44Gu5ZWP6aGM44KS6Kej5rG644GZ44KL44Gf44KB44Gu44KC44Gu44Gn44GC44KL44CC5ZCM44GY5qmfIgorIuiDveOCkuaPkOS+m+OBl+OAgeS6kuOBhOOBq+e9ruOBjeaPm+OBiOWPr+iDveOBquWFqOOBpuOBruODleOCoeOCpOODq+OBr+OAgeODleOCoeOCpOODq+OCt+OCueODhuODoOS4reOBruOAjOS4gOiIrCIKKyLlkI0gKGdlbmVyaWMgbmFtZSnjgI3jgpLlhbHmnInjgZnjgovjgILjgZ3jga7kuIDoiKzlkI3jgYzlrp/pmpvjgavjganjga7jg5XjgqHjgqTjg6vjgpLlj4LnhafjgZnjgovjgYsiCisi44Gv44CBIGFsdGVybmF0aXZlcyDjgrfjgrnjg4bjg6Djgajjgrfjgrnjg4bjg6DnrqHnkIbogIXjgajjgYzmsbrlrprjgZnjgovjgILkvovjgYjjgbDjgIHjg4bjgq3jgrnjg4jjgqgiCisi44OH44Kj44K/44Gn44GC44KLIEI8ZWQ+KDEpIOOBqCBCPG52aT4oMSkg44Gu5Lih5pa544GM44K344K544OG44Og44Gr44Kk44Oz44K544OI44O844Or44GV44KM44Gm44GE44Gf44GoIgorIuOBmeOCi+OBqOOAgeS4gOiIrOWQjeOBp+OBguOCiyBJPC91c3IvYmluL2VkaXRvcj4g44Gv44CB44OH44OV44Kp44Or44OI44Gn44GvIEk8L3Vzci9iaW4vbnZpPiDjgpIiCisi5Y+C54Wn44GZ44KL44CC44K344K544OG44Og566h55CG6ICF44Gv44GT44KM44KS5LiK5pu444GN44GX44CBIEk8L3Vzci9iaW4vZWQ+IOOCkuWPgueFp+OBleOBm+OCi+OCiOOBhuOBqyIKKyLjgZnjgovjgZPjgajjgoLjgafjgY3jgovjgILjgZPjgYbjgZnjgovjgajjgIHjgZ3jga7lvozmmI7npLrnmoTjgarjg6rjgq/jgqjjgrnjg4jjgYzjgarjgZHjgozjgbDjgIEgIgorImFsdGVybmF0aXZlcyDjgrfjgrnjg4bjg6Djga/jgZ3jga7oqK3lrprjgpLlpInmm7TjgZfjgarjgYTjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo2MAorbXNnaWQgIiIKKyJUaGUgZ2VuZXJpYyBuYW1lIGlzIG5vdCBhIGRpcmVjdCBzeW1ib2xpYyBsaW5rIHRvIHRoZSBzZWxlY3RlZCBhbHRlcm5hdGl2ZS4gICIKKyJJbnN0ZWFkLCBpdCBpcyBhIHN5bWJvbGljIGxpbmsgdG8gYSBuYW1lIGluIHRoZSBJPGFsdGVybmF0aXZlcz4gIgorIkk8ZGlyZWN0b3J5Piwgd2hpY2ggaW4gdHVybiBpcyBhIHN5bWJvbGljIGxpbmsgdG8gdGhlIGFjdHVhbCBmaWxlICIKKyJyZWZlcmVuY2VkLiAgVGhpcyBpcyBkb25lIHNvIHRoYXQgdGhlIHN5c3RlbSBhZG1pbmlzdHJhdG9yJ3MgY2hhbmdlcyBjYW4gYmUgIgorImNvbmZpbmVkIHdpdGhpbiB0aGUgSTwvZXRjPiBkaXJlY3Rvcnk6IHRoZSBGSFMgKHEudi4pIGdpdmVzIHJlYXNvbnMgd2h5IHRoaXMgIgorImlzIGEgR29vZCBUaGluZy4iCittc2dzdHIgIiIKKyLkuIDoiKzlkI3jga/jgIHpgbjjgbDjgozjgZ/jgIzpgbjmip7ogqIgKGFsdGVybmF0aXZlKeOAjeOBuOOBruebtOaOpeOBruOCt+ODs+ODnOODquODg+OCr+ODquODs+OCr+OBp+OBr+OBqiIKKyLjgY/jgIEgSTxhbHRlcm5hdGl2ZXM+IOODh+OCo+ODrOOCr+ODiOODquOBq+OBguOCi+WQjeWJjeOBuOOBruOCt+ODs+ODnOODquODg+OCr+ODquODs+OCr+OBq+OBquOBo+OBpuOBhCIKKyLjgovjgILjgZ3jgZfjgabjgZ3jga7lkI3liY3jgYzlrp/pmpvjgavlj4LnhafjgZXjgozjgovjg5XjgqHjgqTjg6vjgbjjga7jgrfjg7Pjg5zjg6rjg4Pjgq/jg6rjg7Pjgq/jgavjgarjgaPjgabjgYQiCisi44KL44CC44GT44GG44Gq44Gj44Gm44GE44KL55CG55Sx44Gv44CB44K344K544OG44Og566h55CG6ICF44Gu5aSJ5pu044GMIEk8L2V0Yz4g44OH44Kj44Os44Kv44OI44Oq5Lul5LiL44Gn6KGMIgorIuOCj+OCjOOCi+OCiOOBhuOBq+OBmeOCi+OBn+OCgeOBp+OBguOCi+OAguOBquOBnOOBk+OBhuOBmeOCi+OBruOBjOiJr+OBhOOBi+OBq+OBpOOBhOOBpuOBryBGSFMg44Gr6Kqs5piO44GM44GCIgorIuOCi+OAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjcyCisjLCBmdXp6eQorbXNnaWQgIiIKKyJXaGVuIGVhY2ggcGFja2FnZSBwcm92aWRpbmcgYSBmaWxlIHdpdGggYSBwYXJ0aWN1bGFyIGZ1bmN0aW9uYWxpdHkgaXMgIgorImluc3RhbGxlZCwgY2hhbmdlZCBvciByZW1vdmVkLCBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IGlzIGNhbGxlZCB0byB1cGRhdGUgIgorImluZm9ybWF0aW9uIGFib3V0IHRoYXQgZmlsZSBpbiB0aGUgYWx0ZXJuYXRpdmVzIHN5c3RlbS4gIEI8dXBkYXRlLSIKKyJhbHRlcm5hdGl2ZXM+IGlzIHVzdWFsbHkgY2FsbGVkIGZyb20gdGhlIEI8cG9zdGluc3Q+IChjb25maWd1cmUpIG9yIEI8cHJlcm0+ICIKKyIoaW5zdGFsbCkgc2NyaXB0cyBpbiBEZWJpYW4gcGFja2FnZXMuIgorbXNnc3RyICIiCisi572u44GN5o+b44GI5Y+v6IO944Gq5LiA576k44Gu44OV44Kh44Kk44Or5Lit44Gu44Gp44KM44GL44KS5ZCr44KA44OR44OD44Kx44O844K444GM44Kk44Oz44K544OI44O844Or44O75aSJ5pu044O7IgorIuWJiumZpOOBleOCjOOCi+OBqOOAgSBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IOOBjOWRvOOBsOOCjOOAgeOBneOBruODleOCoeOCpOODq+OBq+WvvuOBmeOCiyAiCisiYWx0ZXJuYXRpdmVzIOOCt+OCueODhuODoOOBruWGhemDqOaDheWgseOCkuabtOaWsOOBmeOCi+OAgiBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IOOBr+OAgemAmuW4uCAiCisiRGViaWFuIOODkeODg+OCseODvOOCuOOBriBCPHBvc3RpbnN0PiDjgb7jgZ/jga8gQjxwcmVybT4g44K544Kv44Oq44OX44OI44GL44KJ5ZG844Gz5Ye644GV44KM44KL44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6OTEKK21zZ2lkICIiCisiSXQgaXMgb2Z0ZW4gdXNlZnVsIGZvciBhIG51bWJlciBvZiBhbHRlcm5hdGl2ZXMgdG8gYmUgc3luY2hyb25pc2VkLCBzbyB0aGF0ICIKKyJ0aGV5IGFyZSBjaGFuZ2VkIGFzIGEgZ3JvdXA7IGZvciBleGFtcGxlLCB3aGVuIHNldmVyYWwgdmVyc2lvbnMgb2YgdGhlIEI8dmk+IgorIigxKSAgZWRpdG9yIGFyZSBpbnN0YWxsZWQsIHRoZSBtYW4gcGFnZSByZWZlcmVuY2VkIGJ5IEk8L3Vzci9zaGFyZS9tYW4vbWFuMS8iCisidmkuMT4gc2hvdWxkIGNvcnJlc3BvbmQgdG8gdGhlIGV4ZWN1dGFibGUgcmVmZXJlbmNlZCBieSBJPC91c3IvYmluL3ZpPi4gICIKKyJCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IGhhbmRsZXMgdGhpcyBieSBtZWFucyBvZiBJPG1hc3Rlcj4gYW5kIEk8c2xhdmU+ICIKKyJsaW5rczsgd2hlbiB0aGUgbWFzdGVyIGlzIGNoYW5nZWQsIGFueSBhc3NvY2lhdGVkIHNsYXZlcyBhcmUgY2hhbmdlZCB0b28uICBBICIKKyJtYXN0ZXIgbGluayBhbmQgaXRzIGFzc29jaWF0ZWQgc2xhdmVzIG1ha2UgdXAgYSBJPGxpbms+IEk8Z3JvdXA+LiIKK21zZ3N0ciAiIgorIuikh+aVsOOBrumBuOaKnuiCouOCkuWQjOacn+OBleOBm+OAgeOCsOODq+ODvOODl+OBqOOBl+OBpuWkieabtOOBmeOCi+OBqOS+v+WIqeOBquOBk+OBqOOBjOWkmuOBhOOAguS+i+OBiOOBsCAiCisiQjx2aT4oMSkg44Ko44OH44Kj44K/44Gu44GE44KN44GE44KN44Gq5rS+55Sf44K344K544OG44Og44GM5ZCM5pmC44Gr44Kk44Oz44K544OI44O844Or44GV44KM44Gm44GE44Gf44Go44GZ44KLIgorIuOBqOOAgSBJPC91c3Ivc2hhcmUvbWFuL21hbjEvdmkuMT4g44GM5Y+C54Wn44GZ44KLIG1hbiDjg5rjg7zjgrjjga/jgIEgSTwvdXNyL2Jpbi92aT4g44GMIgorIuWPgueFp+OBmeOCi+Wun+ihjOODleOCoeOCpOODq+OBq+WvvuW/nOOBl+OBpuOBhOOCi+OBueOBjeOBp+OBguOCjeOBhuOAgiBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IOOBr+OAgSAiCisiSTxtYXN0ZXI+IOODquODs+OCr+OBqCBJPHNsYXZlPiDjg6rjg7Pjgq/jgavjgojjgaPjgabjgZPjgozjgpLlj5bjgormibHjgYbjgIIgbWFzdGVyIOOBjOWkieabtOOBleOCjCIKKyLjgovjgajjgIHjgZ3jgozjgavplqLpgKPjgaXjgZHjgZXjgozjgZ/lkIQgc2xhdmUg44KC5ZCM5pmC44Gr5aSJ5pu044GV44KM44KL44CCIG1hc3RlciDjg6rjg7Pjgq/jgajjgZ3jgozjgasiCisi6Zai6YCj44Gl44GR44GV44KM44GfIHNsYXZlIOOBqOOBr+OAgSBJPOODquODs+OCr+OCsOODq+ODvOODlz4g44KS5b2i5oiQ44GZ44KL44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTAwCisjLCBmdXp6eQorbXNnaWQgIiIKKyJFYWNoIGxpbmsgZ3JvdXAgaXMsIGF0IGFueSBnaXZlbiB0aW1lLCBpbiBvbmUgb2YgdHdvIG1vZGVzOiBhdXRvbWF0aWMgb3IgIgorIm1hbnVhbC4gIFdoZW4gYSBncm91cCBpcyBpbiBhdXRvbWF0aWMgbW9kZSwgdGhlIGFsdGVybmF0aXZlcyBzeXN0ZW0gd2lsbCAiCisiYXV0b21hdGljYWxseSBkZWNpZGUsIGFzIHBhY2thZ2VzIGFyZSBpbnN0YWxsZWQgYW5kIHJlbW92ZWQsIHdoZXRoZXIgYW5kIGhvdyAiCisidG8gdXBkYXRlIHRoZSBsaW5rcy4gIEluIG1hbnVhbCBtb2RlLCB0aGUgYWx0ZXJuYXRpdmVzIHN5c3RlbSB3aWxsIHJldGFpbiAiCisidGhlIGNob2ljZSBvZiB0aGUgYWRtaW5pc3RyYXRvciBhbmQgYXZvaWQgY2hhbmdpbmcgdGhlIGxpbmtzIChleGNlcHQgd2hlbiAiCisic29tZXRoaW5nIGlzIGJyb2tlbikuIgorbXNnc3RyICIiCisi5ZCE44Oq44Oz44Kv44Kw44Or44O844OX44Gv44CB44GE44GL44Gq44KL5pmC54K544Gr44GK44GE44Gm44KC44CBIGF1dG9tYXRpYyDjgb7jgZ/jga8gbWFudWFsIOOBriAyIOOBpCIKKyLjga7jg6Ljg7zjg4njga7jgYTjgZrjgozjgYvjgavjgYLjgovjgILjgrDjg6vjg7zjg5fjgYwgYXV0b21hdGljIOODouODvOODieOBq+OBguOCi+WgtOWQiOOBr+OAgeODkeODg+OCseODvOOCuCIKKyLjga7jgqTjg7Pjgrnjg4jjg7zjg6vjg7vliYrpmaTjga7pmpvjgavjg6rjg7Pjgq/jgpLmm7TmlrDjgZnjgovjgYvjganjgYbjgYsv44Gp44Gu44KI44GG44Gr5pu05paw44GZ44KL44GL44Gv44CBICIKKyJhbHRlcm5hdGl2ZXMg44K344K544OG44Og44GM6Ieq5YuV55qE44Gr5rG65a6a44GZ44KL44CCIG1hbnVhbCDjg6Ljg7zjg4njgafjga/jgIEgYWx0ZXJuYXRpdmVzIOOCtyIKKyLjgrnjg4bjg6Djga/jg6rjg7Pjgq/jgpLlpInmm7TjgZfjgarjgYTjgILjgrfjgrnjg4bjg6DnrqHnkIbogIXjgYzooYzjgaPjgZ/msbrlrprjgYzjgZrjgaPjgajkv53lrZjjgZXjgozjgovjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxMDkKK21zZ2lkICIiCisiTGluayBncm91cHMgYXJlIGluIGF1dG9tYXRpYyBtb2RlIHdoZW4gdGhleSBhcmUgZmlyc3QgaW50cm9kdWNlZCB0byB0aGUgIgorInN5c3RlbS4gIElmIHRoZSBzeXN0ZW0gYWRtaW5pc3RyYXRvciBtYWtlcyBjaGFuZ2VzIHRvIHRoZSBzeXN0ZW0ncyBhdXRvbWF0aWMgIgorInNldHRpbmdzLCB0aGlzIHdpbGwgYmUgbm90aWNlZCB0aGUgbmV4dCB0aW1lIEI8dXBkYXRlLWFsdGVybmF0aXZlcz4gaXMgcnVuICIKKyJvbiB0aGUgY2hhbmdlZCBsaW5rJ3MgZ3JvdXAsIGFuZCB0aGUgZ3JvdXAgd2lsbCBhdXRvbWF0aWNhbGx5IGJlIHN3aXRjaGVkIHRvICIKKyJtYW51YWwgbW9kZS4iCittc2dzdHIgIiIKKyLjg6rjg7Pjgq/jgrDjg6vjg7zjg5fjga/jgIHjgrfjgrnjg4bjg6DjgavlsI7lhaXjgZXjgozjgovjgajjgIHjgb7jgZogYXV0b21hdGljIOODouODvOODieOBq+OBquOCi+OAguOCt+OCueODhiIKKyLjg6DnrqHnkIbogIXjgYzjgZ3jga7oqK3lrprjgpLlpInmm7TjgZnjgovjgajjgIHmrKHjgasgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiDjgYzjg6rjg7Pjgq/jgrDjg6vjg7zjg5ciCisi44Gr5a++44GX44Gm5a6f6KGM44GV44KM44Gf44Go44GN44Gr5aSJ5pu044GM6KqN6K2Y44GV44KM44CB44Gd44Gu44Oq44Oz44Kv44Kw44Or44O844OX44Gv6Ieq5YuV55qE44GrIG1hbnVhbCAiCisi44Oi44O844OJ44Gr5YiH44KK5o+b44KP44KL44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTE2Cittc2dpZCAiIgorIkVhY2ggYWx0ZXJuYXRpdmUgaGFzIGEgSTxwcmlvcml0eT4gYXNzb2NpYXRlZCB3aXRoIGl0LiAgV2hlbiBhIGxpbmsgZ3JvdXAgaXMgIgorImluIGF1dG9tYXRpYyBtb2RlLCB0aGUgYWx0ZXJuYXRpdmVzIHBvaW50ZWQgdG8gYnkgbWVtYmVycyBvZiB0aGUgZ3JvdXAgd2lsbCAiCisiYmUgdGhvc2Ugd2hpY2ggaGF2ZSB0aGUgaGlnaGVzdCBwcmlvcml0eS4iCittc2dzdHIgIiIKKyLlkITpgbjmip7ogqLjga8gSTxwcmlvcml0eT4g5bGe5oCn44KS5oyB44Gj44Gm44GE44KL44CC44Oq44Oz44Kv44Kw44Or44O844OX44GMIGF1dG9tYXRpYyDjg6Ljg7zjg4njgasiCisi44GC44KL44Go44GN44Gv44CBIEk8cHJpb3JpdHk+IOOBruOCguOBo+OBqOOCgumrmOOBhOOCguOBruOBjOOAgeOBneOBruOCsOODq+ODvOODl+OBruODoeODs+ODkOODvOOBjOWPgueFp+OBmSIKKyLjgovpgbjmip7ogqLjgavjgarjgovjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxMzMKKyMsIGZ1enp5Cittc2dpZCAiIgorIldoZW4gdXNpbmcgdGhlIEI8LS1jb25maWc+IG9wdGlvbiwgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiB3aWxsIGxpc3QgYWxsIG9mICIKKyJ0aGUgY2hvaWNlcyBmb3IgdGhlIGxpbmsgZ3JvdXAgb2Ygd2hpY2ggZ2l2ZW4gSTxuYW1lPiBpcyB0aGUgbWFzdGVyICIKKyJhbHRlcm5hdGl2ZSBuYW1lLiBUaGUgY3VycmVudCBjaG9pY2UgaXMgbWFya2VkIHdpdGggYSAnKicuICBZb3Ugd2lsbCB0aGVuIGJlICIKKyJwcm9tcHRlZCBmb3IgeW91ciBjaG9pY2UgcmVnYXJkaW5nIHRoaXMgbGluayBncm91cC4gIERlcGVuZGluZyBvbiB0aGUgY2hvaWNlICIKKyJtYWRlLCB0aGUgbGluayBncm91cCBtaWdodCBubyBsb25nZXIgYmUgaW4gSTxhdXRvPiBtb2RlLiBZb3Ugd2lsbCBuZWVkIHRvICIKKyJ1c2UgdGhlIEI8LS1hdXRvPiBvcHRpb24gaW4gb3JkZXIgdG8gcmV0dXJuIHRvIHRoZSBhdXRvbWF0aWMgbW9kZSAob3IgeW91ICIKKyJjYW4gcmVydW4gQjwtLWNvbmZpZz4gYW5kIHNlbGVjdCB0aGUgZW50cnkgbWFya2VkIGFzIGF1dG9tYXRpYykuIgorbXNnc3RyICIiCisiSTwtLWNvbmZpZz4g44Kq44OX44K344On44Oz44KS55So44GE44KL44Go44CBIEI8dXBkYXRlLWFsdGVybmF0aXZlcz4g44Gv5LiO44GI44KJ44KM44GfICIKKyJtYXN0ZXIg44Oq44Oz44Kv44Gu44Oq44Oz44Kv44Kw44Or44O844OX44Gr5a++5b+c44GZ44KL6YG45oqe6IKi44KS44GZ44G544Gm44Oq44K544OI44GZ44KL44CC54++5Zyo6YG45oqe44GV44KMIgorIuOBpuOBhOOCi+OCguOBruOBq+OBryAnKicg44GM44CB44KC44Gj44Go44KCIHByaW9yaXR5IOOBrumrmOOBhOOCguOBruOBq+OBryAnKycg44Oe44O844Kv44GM44Gk44GP44CC44GdIgorIuOBl+OBpuOBneOBruODquODs+OCr+OCsOODq+ODvOODl+OBrumBuOaKnuOCkuWVj+OBhOWQiOOCj+OBm+OCi+ODl+ODreODs+ODl+ODiOOBjOihqOekuuOBleOCjOOCi+OAguOBk+OBk+OBp+WkieabtCIKKyLjgpLooYzjgYbjgajjgIHjgZ3jga7kuIDoiKzlkI3jga8gSTxhdXRvPiDjg6Ljg7zjg4njgafjga/jgarjgY/jgarjgovjgIIgYXV0b21hdGljIOeKtuaFi+OBq+aIu+OBmeOBqyIKKyLjga/jgIEgSTwtLWF1dG8+IOOCquODl+OCt+ODp+ODs+OCkueUqOOBhOOCi+W/heimgeOBjOOBguOCi+OAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjEzNworIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiSWYgeW91IHdhbnQgdG8gY29uZmlndXJlIG5vbi1pbnRlcmFjdGl2ZWx5IHlvdSBjYW4gdXNlIHRoZSBJPC0tc2V0PiAiCisjfCAib3B0aW9uIGluc3RlYWQgKHNlZSBiZWxvdykuIgorbXNnaWQgIiIKKyJJZiB5b3Ugd2FudCB0byBjb25maWd1cmUgbm9uLWludGVyYWN0aXZlbHkgeW91IGNhbiB1c2UgdGhlIEI8LS1zZXQ+IG9wdGlvbiAiCisiaW5zdGVhZCAoc2VlIGJlbG93KS4iCittc2dzdHIgIiIKKyLpnZ7lr77oqbHnmoTjgavoqK3lrprjgpLjgZfjgZ/jgYTloLTlkIjjga8gSTwtLXNldD4g44Kq44OX44K344On44Oz44KS5Luj44KP44KK44Gr5L2/55So44GZ44KLKOS7peS4i+OCkuWPgiIKKyLnhacp44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTQ4Cittc2dpZCAiIgorIkRpZmZlcmVudCBwYWNrYWdlcyBwcm92aWRpbmcgdGhlIHNhbWUgZmlsZSBuZWVkIHRvIGRvIHNvIEI8Y29vcGVyYXRpdmVseT4uICAiCisiSW4gb3RoZXIgd29yZHMsIHRoZSB1c2FnZSBvZiBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IGlzIEI8bWFuZGF0b3J5PiBmb3IgYWxsICIKKyJpbnZvbHZlZCBwYWNrYWdlcyBpbiBzdWNoIGNhc2UuIEl0IGlzIG5vdCBwb3NzaWJsZSB0byBvdmVycmlkZSBzb21lIGZpbGUgaW4gIgorImEgcGFja2FnZSB0aGF0IGRvZXMgbm90IGVtcGxveSB0aGUgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBtZWNoYW5pc20uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTQ5CisjLCBuby13cmFwCittc2dpZCAiVEVSTUlOT0xPR1kiCittc2dzdHIgIueUqOiqniIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE1NAorbXNnaWQgIiIKKyJTaW5jZSB0aGUgYWN0aXZpdGllcyBvZiBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IGFyZSBxdWl0ZSBpbnZvbHZlZCwgc29tZSAiCisic3BlY2lmaWMgdGVybXMgd2lsbCBoZWxwIHRvIGV4cGxhaW4gaXRzIG9wZXJhdGlvbi4iCittc2dzdHIgIiIKKyJCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IOOBruWLleS9nOOBr+alteOCgeOBpuikh+mbkeOBquOBruOBp+OAgeOBk+OBk+OBp+OBhOOBj+OBpOOBi+eJueauiuOBqueUqOiqnuOCkuiqrCIKKyLmmI7jgZfjgIHli5XkvZzjga7nkIbop6Pjga7liqnjgZHjgajjgZfjgZ/jgYTjgIIiCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTU0CisjLCBuby13cmFwCittc2dpZCAiZ2VuZXJpYyBuYW1lIChvciBhbHRlcm5hdGl2ZSBsaW5rKSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTYwCittc2dpZCAiIgorIkEgbmFtZSwgbGlrZSBJPC91c3IvYmluL2VkaXRvcj4sIHdoaWNoIHJlZmVycywgdmlhIHRoZSBhbHRlcm5hdGl2ZXMgc3lzdGVtLCAiCisidG8gb25lIG9mIGEgbnVtYmVyIG9mIGZpbGVzIG9mIHNpbWlsYXIgZnVuY3Rpb24uIgorbXNnc3RyICIiCisiSTwvdXNyL2Jpbi9lZGl0b3I+IOOBruOCiOOBhuOBquWQjeWJjeOAgiBhbHRlcm5hdGl2ZXMg44K344K544OG44Og44Gr44KI44Gj44Gm5ZCM5qeY44Gu5qmf6IO944KS5oyBIgorIuOBpOikh+aVsOOBruODleOCoeOCpOODq+OBruOBqeOCjOOBi+OBsuOBqOOBpOOCkuWPgueFp+OBmeOCi+OAgiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNjAKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiYWx0ZXJuYXRpdmUgbmFtZSIKK21zZ3N0ciAi6YG45oqe6IKiIChhbHRlcm5hdGl2ZSkiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNjMKK21zZ2lkICJUaGUgbmFtZSBvZiBhIHN5bWJvbGljIGxpbmsgaW4gdGhlIGFsdGVybmF0aXZlcyBkaXJlY3RvcnkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTYzCisjLCBuby13cmFwCittc2dpZCAiYWx0ZXJuYXRpdmUgKG9yIGFsdGVybmF0aXZlIHBhdGgpIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNjcKK21zZ2lkICIiCisiVGhlIG5hbWUgb2YgYSBzcGVjaWZpYyBmaWxlIGluIHRoZSBmaWxlc3lzdGVtLCB3aGljaCBtYXkgYmUgbWFkZSBhY2Nlc3NpYmxlICIKKyJ2aWEgYSBnZW5lcmljIG5hbWUgdXNpbmcgdGhlIGFsdGVybmF0aXZlcyBzeXN0ZW0uIgorbXNnc3RyICIiCisi44OV44Kh44Kk44Or44K344K544OG44Og5Lit44Gu54m55a6a44Gu44OV44Kh44Kk44Or44CCIGFsdGVybmF0aXZlcyDjgrfjgrnjg4bjg6DjgavjgojjgaPjgabjgIHkuIDoiKzlkI3jgYsiCisi44KJ44Ki44Kv44K744K544GV44KM44KL44KI44GG44Gr44Gn44GN44KL44CCIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE2NworIywgbm8td3JhcAorbXNnaWQgImFsdGVybmF0aXZlcyBkaXJlY3RvcnkiCittc2dzdHIgImFsdGVybmF0aXZlcyDjg4fjgqPjg6zjgq/jg4jjg6oiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNzIKK21zZ2lkICJBIGRpcmVjdG9yeSwgYnkgZGVmYXVsdCBJPC9ldGMvYWx0ZXJuYXRpdmVzPiwgY29udGFpbmluZyB0aGUgc3ltbGlua3MuIgorbXNnc3RyICJzeW1saW5rIOOCkuS/neaMgeOBmeOCi+ODh+OCo+ODrOOCr+ODiOODquOAguODh+ODleOCqeODq+ODiOOBryBJPC9ldGMvYWx0ZXJuYXRpdmVzPuOAgiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNzIKKyMsIG5vLXdyYXAKK21zZ2lkICJhZG1pbmlzdHJhdGl2ZSBkaXJlY3RvcnkiCittc2dzdHIgImFkbWluaXN0cmF0aXZlIOODh+OCo+ODrOOCr+ODiOODqiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE3OQorbXNnaWQgIiIKKyJBIGRpcmVjdG9yeSwgYnkgZGVmYXVsdCBJPC92YXIvbGliL2Rwa2cvYWx0ZXJuYXRpdmVzPiwgY29udGFpbmluZyBCPHVwZGF0ZS0iCisiYWx0ZXJuYXRpdmVzPicgc3RhdGUgaW5mb3JtYXRpb24uIgorbXNnc3RyICIiCisiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiDjga7nirbmhYvmg4XloLHjgpLkv53mjIHjgZnjgovjg4fjgqPjg6zjgq/jg4jjg6rjgILjg4fjg5Xjgqnjg6vjg4jjga8gSTwvdmFyLyIKKyJsaWIvZHBrZy9hbHRlcm5hdGl2ZXM+44CCIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE3OQorIywgbm8td3JhcAorbXNnaWQgImxpbmsgZ3JvdXAiCittc2dzdHIgIuODquODs+OCr+OCsOODq+ODvOODlyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE4MgorbXNnaWQgIkEgc2V0IG9mIHJlbGF0ZWQgc3ltbGlua3MsIGludGVuZGVkIHRvIGJlIHVwZGF0ZWQgYXMgYSBncm91cC4iCittc2dzdHIgIumWoumAo+OBmeOCiyBzeW1saW5rIOOBruOCu+ODg+ODiOOAguOCsOODq+ODvOODl+OBlOOBqOabtOaWsOOBmeOCi+OBn+OCgeOBruOCguOBruOAgiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxODIKKyMsIG5vLXdyYXAKK21zZ2lkICJtYXN0ZXIgbGluayIKK21zZ3N0ciAibWFzdGVyIOODquODs+OCryIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE4NgorIywgZnV6enkKK21zZ2lkICIiCisiVGhlIGFsdGVybmF0aXZlIGxpbmsgaW4gYSBsaW5rIGdyb3VwIHdoaWNoIGRldGVybWluZXMgaG93IHRoZSBvdGhlciBsaW5rcyBpbiAiCisidGhlIGdyb3VwIGFyZSBjb25maWd1cmVkLiIKK21zZ3N0ciAiIgorIuODquODs+OCr+OCsOODq+ODvOODl+OBq+WxnuOBmeOCi+ODquODs+OCr+OBp+OAgeOCsOODq+ODvOODl+OBruS7luOBruODquODs+OCr+OBruioreWumuOCkuaxuuWumuOBmeOCi+OCguOBruOAgiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxODYKKyMsIG5vLXdyYXAKK21zZ2lkICJzbGF2ZSBsaW5rIgorbXNnc3RyICJzbGF2ZSDjg6rjg7Pjgq8iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxOTAKKyMsIGZ1enp5Cittc2dpZCAiIgorIkFuIGFsdGVybmF0aXZlIGxpbmsgaW4gYSBsaW5rIGdyb3VwIHdoaWNoIGlzIGNvbnRyb2xsZWQgYnkgdGhlIHNldHRpbmcgb2YgIgorInRoZSBtYXN0ZXIgbGluay4iCittc2dzdHIgIiIKKyLjg6rjg7Pjgq/jgrDjg6vjg7zjg5fjgavlsZ7jgZnjgovjg6rjg7Pjgq/jgafjgIEgbWFzdGVyIOODquODs+OCr+OBruioreWumuOBq+OCiOOBo+OBpuWItuW+oeOBleOCjOOCi+OCguOBruOAgiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxOTAKKyMsIG5vLXdyYXAKK21zZ2lkICJhdXRvbWF0aWMgbW9kZSIKK21zZ3N0ciAiYXV0b21hdGljIOODouODvOODiSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE5NgorbXNnaWQgIiIKKyJXaGVuIGEgbGluayBncm91cCBpcyBpbiBhdXRvbWF0aWMgbW9kZSwgdGhlIGFsdGVybmF0aXZlcyBzeXN0ZW0gZW5zdXJlcyB0aGF0ICIKKyJ0aGUgbGlua3MgaW4gdGhlIGdyb3VwIHBvaW50IHRvIHRoZSBoaWdoZXN0IHByaW9yaXR5IGFsdGVybmF0aXZlIGFwcHJvcHJpYXRlICIKKyJmb3IgdGhlIGdyb3VwLiIKK21zZ3N0ciAiIgorIuODquODs+OCr+OCsOODq+ODvOODl+OBjCBhdXRvbWF0aWMg44Oi44O844OJ44Gr44GC44KL44Go44GN44Gv44CB44Gd44Gu44Kw44Or44O844OX44Gr5a++5b+c44GX44Gm44GK44KK44CB44GLIgorIuOBpOOCguOBo+OBqOOCgumrmOOBhCBwcmlvcml0eSDjgpLmjIHjgaTpgbjmip7ogqLjgpLjgrDjg6vjg7zjg5flhoXjga7lkITjg6rjg7Pjgq/jgYzlj4LnhafjgZnjgovjgILjgZPjga7oqr8iCisi5pW044GvIGFsdGVybmF0aXZlcyDjgrfjgrnjg4bjg6DjgYzoh6rli5XnmoTjgavooYzjgYbjgIIiCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTk2CisjLCBuby13cmFwCittc2dpZCAibWFudWFsIG1vZGUiCittc2dzdHIgIm1hbnVhbCDjg6Ljg7zjg4kiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyMDEKK21zZ2lkICIiCisiV2hlbiBhIGxpbmsgZ3JvdXAgaXMgaW4gbWFudWFsIG1vZGUsIHRoZSBhbHRlcm5hdGl2ZXMgc3lzdGVtIHdpbGwgbm90IG1ha2UgIgorImFueSBjaGFuZ2VzIHRvIHRoZSBzeXN0ZW0gYWRtaW5pc3RyYXRvcidzIHNldHRpbmdzLiIKK21zZ3N0ciAiIgorIuODquODs+OCr+OCsOODq+ODvOODl+OBjCBtYW51YWwg44Oi44O844OJ44Gr44GC44KL44Go44GN44Gv44CBIGFsdGVybmF0aXZlcyDjgrfjgrnjg4bjg6Djga/jgrfjgrnjg4bjg6AiCisi566h55CG6ICF44Gu6Kit5a6a44KS5LiA5YiH5aSJ5pu044GX44Gq44GE44CCIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjIwMworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0taW5zdGFsbD4gSTxsaW5rIG5hbWUgcGF0aCBwcmlvcml0eT4gW0I8LS1zbGF2ZT4gSTxsaW5rIG5hbWUgcGF0aD5dLi4uIgorbXNnc3RyICJCPC0taW5zdGFsbD4gSTxnZW5uYW1lIHN5bWxpbmsgYWx0ZXJuIHByaW9yaXR5PiBbQjwtLXNsYXZlPiBJPGdlbm5hbWUgc3ltbGluayBhbHRlcm4+XSAuLi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyMjIKKyMsIGZ1enp5Cittc2dpZCAiIgorIkFkZCBhIGdyb3VwIG9mIGFsdGVybmF0aXZlcyB0byB0aGUgc3lzdGVtLiAgSTxsaW5rPiBpcyB0aGUgZ2VuZXJpYyBuYW1lIGZvciAiCisidGhlIG1hc3RlciBsaW5rLCBJPG5hbWU+IGlzIHRoZSBuYW1lIG9mIGl0cyBzeW1saW5rIGluIHRoZSBhbHRlcm5hdGl2ZXMgIgorImRpcmVjdG9yeSwgYW5kIEk8cGF0aD4gaXMgdGhlIGFsdGVybmF0aXZlIGJlaW5nIGludHJvZHVjZWQgZm9yIHRoZSBtYXN0ZXIgIgorImxpbmsuICBUaGUgYXJndW1lbnRzIGFmdGVyIEI8LS1zbGF2ZT4gYXJlIHRoZSBnZW5lcmljIG5hbWUsIHN5bWxpbmsgbmFtZSBpbiAiCisidGhlIGFsdGVybmF0aXZlcyBkaXJlY3RvcnkgYW5kIHRoZSBhbHRlcm5hdGl2ZSBwYXRoIGZvciBhIHNsYXZlIGxpbmsuICBaZXJvICIKKyJvciBtb3JlIEI8LS1zbGF2ZT4gb3B0aW9ucywgZWFjaCBmb2xsb3dlZCBieSB0aHJlZSBhcmd1bWVudHMsIG1heSBiZSAiCisic3BlY2lmaWVkLiBOb3RlIHRoYXQgdGhlIG1hc3RlciBhbHRlcm5hdGl2ZSBtdXN0IGV4aXN0IG9yIHRoZSBjYWxsIHdpbGwgIgorImZhaWwuIEhvd2V2ZXIgaWYgYSBzbGF2ZSBhbHRlcm5hdGl2ZSBkb2Vzbid0IGV4aXN0LCB0aGUgY29ycmVzcG9uZGluZyBzbGF2ZSAiCisiYWx0ZXJuYXRpdmUgbGluayB3aWxsIHNpbXBseSBub3QgYmUgaW5zdGFsbGVkIChhIHdhcm5pbmcgd2lsbCBzdGlsbCBiZSAiCisiZGlzcGxheWVkKS4gSWYgc29tZSByZWFsIGZpbGUgaXMgaW5zdGFsbGVkIHdoZXJlIGFuIGFsdGVybmF0aXZlIGxpbmsgaGFzIHRvICIKKyJiZSBpbnN0YWxsZWQsIGl0IGlzIGtlcHQgdW5sZXNzIEI8LS1mb3JjZT4gaXMgdXNlZC4iCittc2dzdHIgIiIKKyLpgbjmip7ogqLjga7jgrDjg6vjg7zjg5fjgpLjgrfjgrnjg4bjg6Djgavov73liqDjgZnjgovjgIIgSTxnZW5uYW1lPiDjga8gbWFzdGVyIOODquODs+OCr+OBruS4gOiIrOWQjeODuyAiCisiSTxzeW1saW5rPiDjga/jgZ3jga4gc3ltbGluayDjga7lkI3liY3jg7sgSTxhbHRlcm4+IOOBr+OBk+OBk+OBp+WwjuWFpeOBleOCjOOCiyBtYXN0ZXIg44Oq44Oz44KvIgorIuOBq+WvvuW/nOOBl+OBn+mBuOaKnuiCouOAgeOBp+OBguOCi+OAgkI8LS1zbGF2ZT4g44Kq44OX44K344On44Oz44Gr57aa44GP5byV5pWw44Gv44CBYWx0ZXJuYXRpdmVzICIKKyLjg4fjgqPjg6zjgq/jg4jjg6rjgafjga7kuIDoiKzlkI3jgaggc2xhdmUg44Oq44Oz44Kv44Gu6YG45oqe6IKi44Gn44GC44KL44CCIEI8LS1zbGF2ZT4g44Kq44OX44K344On44OzIgorIuOBqOOAgeOBneOCjOOBq+OBq+e2muOBjyAzIOOBpOOBruW8leaVsOOBruOCu+ODg+ODiOOBr+OAgSAwIOWAi+S7peS4iuOBhOOBj+OBpOOBp+OCguaMh+WumuOBl+OBpuOCiOOBhOOAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjIzMworIywgZnV6enkKK21zZ2lkICIiCisiSWYgdGhlIGFsdGVybmF0aXZlIG5hbWUgc3BlY2lmaWVkIGV4aXN0cyBhbHJlYWR5IGluIHRoZSBhbHRlcm5hdGl2ZXMgIgorInN5c3RlbSdzIHJlY29yZHMsIHRoZSBpbmZvcm1hdGlvbiBzdXBwbGllZCB3aWxsIGJlIGFkZGVkIGFzIGEgbmV3IHNldCBvZiAiCisiYWx0ZXJuYXRpdmVzIGZvciB0aGUgZ3JvdXAuICBPdGhlcndpc2UsIGEgbmV3IGdyb3VwLCBzZXQgdG8gYXV0b21hdGljIG1vZGUsICIKKyJ3aWxsIGJlIGFkZGVkIHdpdGggdGhpcyBpbmZvcm1hdGlvbi4gIElmIHRoZSBncm91cCBpcyBpbiBhdXRvbWF0aWMgbW9kZSwgYW5kICIKKyJ0aGUgbmV3bHkgYWRkZWQgYWx0ZXJuYXRpdmVzJyBwcmlvcml0eSBpcyBoaWdoZXIgdGhhbiBhbnkgb3RoZXIgaW5zdGFsbGVkICIKKyJhbHRlcm5hdGl2ZXMgZm9yIHRoaXMgZ3JvdXAsIHRoZSBzeW1saW5rcyB3aWxsIGJlIHVwZGF0ZWQgdG8gcG9pbnQgdG8gdGhlICIKKyJuZXdseSBhZGRlZCBhbHRlcm5hdGl2ZXMuIgorbXNnc3RyICIiCisi5oyH5a6a44GX44GfIG1hc3RlciDjga4gc3ltbGluayDjgYzml6LjgasgYWx0ZXJuYXRpdmVzIOOCt+OCueODhuODoOOBruiomOmMsuOBq+WtmOWcqOOBl+OBpuOBhOOCiyIKKyLjgajjgIHkuI7jgYjjgonjgozjgZ/mg4XloLHjga/jgZ3jga7jgrDjg6vjg7zjg5fjgavlr77jgZnjgovmlrDjgZ/jgarpgbjmip7ogqLjga7jgrvjg4Pjg4jjgajjgZfjgabov73liqDjgZXjgowiCisi44KL44CC44Gd44GG44Gn44Gq44GR44KM44Gw44CB5paw44GX44GE44Kw44Or44O844OX44Go44GX44Gm44CBYXV0b21hdGljIOODouODvOODieOBq+OBl+OBpuOAgeOBk+OBruaDheWgseOBqyIKKyLov73liqDjgZnjgovjgILjgrDjg6vjg7zjg5fjgYwgYXV0b21hdGljIOODouODvOODieOBq+OBguOCiuOAgeaWsOOBn+OBq+i/veWKoOOBleOCjOOBn+mBuOaKnuiCouOBriAiCisicHJpb3JpdHkg44GM44Gd44Gu44Kw44Or44O844OX44Gr5a++44GX44Gm44Kk44Oz44K544OI44O844Or44GV44KM44Gm44GE44KL5LuW44Gu6YG45oqe6IKi44Gu44KC44Gu44KI44KK6auY44GEIgorIuOBqOOBjeOBq+OBr+OAgSBzeW1saW5rIOOBr+aWsOOBn+OBq+i/veWKoOOBleOCjOOBn+mBuOaKnuiCouOCkuWPgueFp+OBmeOCi+OCiOOBhuOBq+abtOaWsOOBleOCjOOCi+OAgiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyMzMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tc2V0PiBJPG5hbWUgcGF0aD4iCittc2dzdHIgIkI8LS1zZXQ+IEk8bmFtZSBwYXRoPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjI0MgorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiU2V0IHRoZSBwcm9ncmFtIEk8cGF0aD4gYXMgYWx0ZXJuYXRpdmUgZm9yIEk8bmFtZS4+IFRoaXMgaXMgZXF1aXZhbGVudCB0byAiCisjfCAiSTwtLWNvbmZpZz4gYnV0IGlzIG5vbi1pbnRlcmFjdGl2ZSBhbmQgdGh1cyBzY3JpcHRhYmxlLiIKK21zZ2lkICIiCisiU2V0IHRoZSBwcm9ncmFtIEk8cGF0aD4gYXMgYWx0ZXJuYXRpdmUgZm9yIEk8bmFtZS4+IFRoaXMgaXMgZXF1aXZhbGVudCB0byAiCisiQjwtLWNvbmZpZz4gYnV0IGlzIG5vbi1pbnRlcmFjdGl2ZSBhbmQgdGh1cyBzY3JpcHRhYmxlLiIKK21zZ3N0ciAiIgorIuODl+ODreOCsOODqeODoCBJPHBhdGg+IOOCkiBJPG5hbWU+IOOBrumBuOaKnuiCouOBqOOBl+OBpuioreWumuOBmeOCi+OAgiBJPC0tY29uZmlnPiDjgajlkIznrYnjgaAiCisi44GM44CB44GT44Gh44KJ44Gv6Z2e5a++6Kmx55qE44Gn44GC44KL44Gf44KB44CB44K544Kv44Oq44OX44OI5ZCR44GR44Gn44GC44KL44CCIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjI0MgorIywgbm8td3JhcAorbXNnaWQgIkI8LS1yZW1vdmU+IEk8bmFtZSBwYXRoPiIKK21zZ3N0ciAiQjwtLXJlbW92ZT4gSTxuYW1lIHBhdGg+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjYzCisjLCBmdXp6eQorbXNnaWQgIiIKKyJSZW1vdmUgYW4gYWx0ZXJuYXRpdmUgYW5kIGFsbCBvZiBpdHMgYXNzb2NpYXRlZCBzbGF2ZSBsaW5rcy4gIEk8bmFtZT4gaXMgYSAiCisibmFtZSBpbiB0aGUgYWx0ZXJuYXRpdmVzIGRpcmVjdG9yeSwgYW5kIEk8cGF0aD4gaXMgYW4gYWJzb2x1dGUgZmlsZW5hbWUgdG8gIgorIndoaWNoIEk8bmFtZT4gY291bGQgYmUgbGlua2VkLiBJZiBJPG5hbWU+IGlzIGluZGVlZCBsaW5rZWQgdG8gSTxwYXRoPiwgIgorIkk8bmFtZT4gd2lsbCBiZSB1cGRhdGVkIHRvIHBvaW50IHRvIGFub3RoZXIgYXBwcm9wcmlhdGUgYWx0ZXJuYXRpdmUgKGFuZCB0aGUgIgorImdyb3VwIGlzIHB1dCBiYWNrIGluIGF1dG9tYXRpYyBtb2RlKSwgb3IgcmVtb3ZlZCBpZiB0aGVyZSBpcyBubyBzdWNoICIKKyJhbHRlcm5hdGl2ZSBsZWZ0LiAgQXNzb2NpYXRlZCBzbGF2ZSBsaW5rcyB3aWxsIGJlIHVwZGF0ZWQgb3IgcmVtb3ZlZCwgIgorImNvcnJlc3BvbmRpbmdseS4gIElmIHRoZSBsaW5rIGlzIG5vdCBjdXJyZW50bHkgcG9pbnRpbmcgdG8gSTxwYXRoPiwgbm8gbGlua3MgIgorImFyZSBjaGFuZ2VkOyBvbmx5IHRoZSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgYWx0ZXJuYXRpdmUgaXMgcmVtb3ZlZC4iCittc2dzdHIgIiIKKyIobWFzdGVyIOOBrikg6YG45oqe6IKi44Go44Gd44KM44Gr6Zai6YCj44GZ44KL5YWo44Gm44GuIHNsYXZlIOODquODs+OCr+OCkuWJiumZpOOBmeOCi+OAgiBJPG5hbWU+IOOBryAiCisiYWx0ZXJuYXRpdmVzIOODh+OCo+ODrOOCr+ODiOODquS4reOBruWQjeWJjeOBp+OBguOCiuOAgSBJPHBhdGg+IOOBryBJPG5hbWU+IOOBruODquODs+OCr+WFiOOBq+aMh+WumiIKKyLjgafjgY3jgovjgIHntbblr77jg5Hjgrnjgafjga7jg5XjgqHjgqTjg6vlkI3jgafjgYLjgovjgIIgSTxuYW1lPiDjgYzlrp/pmpvjgasgSTxwYXRoPiDjgavjg6rjg7Pjgq/jgZXjgowiCisi44Gm44GE44KL5aC05ZCI44Gr44Gv44CBIEk8bmFtZT4g44Gv5LuW44Gu6YGp5YiH44Gq6YG45oqe6IKi44KS5Y+C54Wn44GZ44KL44KI44GG5pu05paw44GV44KM44KL44CC44GC44KL44GE44GvIgorIuOBneOBruOCiOOBhuOBqumBuOaKnuiCouOBjOaui+OBo+OBpuOBhOOBquOBkeOCjOOBsOWJiumZpOOBleOCjOOCi+OAgumWoumAo+OBmeOCiyBzbGF2ZSDjg6rjg7Pjgq/jgoLlr77lv5zjgZfjgaYiCisi5pu05pawICjliYrpmaQpIOOBleOCjOOCi+OAgiBJPG5hbWU+IOOBjOePvuWcqOOBneOBriBJPHBhdGg+IOOCkuWPgueFp+OBl+OBpuOBhOOBquOBkeOCjOOBsOOAgeODquODs+OCryIKKyLjga7lpInmm7Tjga/ooYzjgo/jgozjgarjgYTjgILjgZ3jga7pgbjmip7ogqLjga7mg4XloLHjgYzliYrpmaTjgZXjgozjgovjgaDjgZHjgafjgYLjgovjgIIiCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjYzCisjLCBuby13cmFwCittc2dpZCAiQjwtLXJlbW92ZS1hbGw+IEk8bmFtZT4iCittc2dzdHIgIkI8LS1yZW1vdmUtYWxsPiBJPG5hbWU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjY4Cittc2dpZCAiIgorIlJlbW92ZSBhbGwgYWx0ZXJuYXRpdmVzIGFuZCBhbGwgb2YgdGhlaXIgYXNzb2NpYXRlZCBzbGF2ZSBsaW5rcy4gIEk8bmFtZT4gaXMgIgorImEgbmFtZSBpbiB0aGUgYWx0ZXJuYXRpdmVzIGRpcmVjdG9yeS4iCittc2dzdHIgIiIKKyLjgZnjgbnjgabjga7pgbjmip7ogqLjgajjgIHjgZ3jgozjgavplqLpgKPjgZnjgovjgZnjgbnjgabjga4gc2xhdmUg44Oq44Oz44Kv44KS5YmK6Zmk44GZ44KL44CCIEk8bmFtZT4gIgorIuOBr+OAgWFsdGVybmF0aXZlIOODh+OCo+ODrOOCr+ODiOODquOBruWQjeWJjeOBp+OBguOCi+OAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjI3NQorbXNnaWQgIiIKKyJDYWxsIEI8LS1jb25maWc+IG9uIGFsbCBhbHRlcm5hdGl2ZXMuIEl0IGNhbiBiZSB1c2VmdWxseSBjb21iaW5lZCB3aXRoIEI8LS0iCisic2tpcC1hdXRvPiB0byByZXZpZXcgYW5kIGNvbmZpZ3VyZSBhbGwgYWx0ZXJuYXRpdmVzIHdoaWNoIGFyZSBub3QgY29uZmlndXJlZCAiCisiaW4gYXV0b21hdGljIG1vZGUuIEJyb2tlbiBhbHRlcm5hdGl2ZXMgYXJlIGFsc28gZGlzcGxheWVkLiAgVGh1cyBhIHNpbXBsZSAiCisid2F5IHRvIGZpeCBhbGwgYnJva2VuIGFsdGVybmF0aXZlcyBpcyB0byBjYWxsIEI8eWVzIFxcW2FxXVxcW2FxXSB8IHVwZGF0ZS0iCisiYWx0ZXJuYXRpdmVzIC0tZm9yY2UgLS1hbGw+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjI3NQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tYXV0bz4gSTxuYW1lPiIKK21zZ3N0ciAiQjwtLWF1dG8+IEk8bGluaz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyODIKKyMsIGZ1enp5Cittc2dpZCAiIgorIlN3aXRjaCB0aGUgbGluayBncm91cCBiZWhpbmQgdGhlIGFsdGVybmF0aXZlIGZvciBJPG5hbWU+IHRvIGF1dG9tYXRpYyBtb2RlLiAgIgorIkluIHRoZSBwcm9jZXNzLCB0aGUgbWFzdGVyIHN5bWxpbmsgYW5kIGl0cyBzbGF2ZXMgYXJlIHVwZGF0ZWQgdG8gcG9pbnQgdG8gIgorInRoZSBoaWdoZXN0IHByaW9yaXR5IGluc3RhbGxlZCBhbHRlcm5hdGl2ZXMuIgorbXNnc3RyICIiCisibWFzdGVyIOOBriBzeW1saW5rIEk8bGluaz4g44KSIGF1dG9tYXRpYyDjg6Ljg7zjg4njgavlpInmm7TjgZnjgovjgILjgZPjga7lh6bnkIbjgpLooYzjgYbpmpvjgasiCisi44Gv44CB44GT44GuIG1hc3RlciDjg6rjg7Pjgq/jgajlr77lv5zjgZnjgovlkIQgc2xhdmUg44Gv44CB54++5Zyo44Kk44Oz44K544OI44O844Or44GV44KM44Gm44GE44KLICIKKyJhbHRlcmFudGl2ZSDjga7jgYbjgaHjgIHjgoLjgaPjgajjgoIgcHJpb3JpdHkg44Gu6auY44GE44KC44Gu44KS5Y+C54Wn44GZ44KL44KI44GG44Gr5pu05paw44GV44KM44KL44CCIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjI4MgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tZGlzcGxheT4gSTxuYW1lPiIKK21zZ3N0ciAiQjwtLWRpc3BsYXk+IEk8bGluaz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyOTEKKyMsIGZ1enp5Cittc2dpZCAiIgorIkRpc3BsYXkgaW5mb3JtYXRpb24gYWJvdXQgdGhlIGxpbmsgZ3JvdXAuICBJbmZvcm1hdGlvbiBkaXNwbGF5ZWQgaW5jbHVkZXMgIgorInRoZSBncm91cCdzIG1vZGUgKGF1dG8gb3IgbWFudWFsKSwgd2hpY2ggYWx0ZXJuYXRpdmUgdGhlIG1hc3RlciBsaW5rICIKKyJjdXJyZW50bHkgcG9pbnRzIHRvLCB3aGF0IG90aGVyIGFsdGVybmF0aXZlcyBhcmUgYXZhaWxhYmxlIChhbmQgdGhlaXIgIgorImNvcnJlc3BvbmRpbmcgc2xhdmUgYWx0ZXJuYXRpdmVzKSwgYW5kIHRoZSBoaWdoZXN0IHByaW9yaXR5IGFsdGVybmF0aXZlICIKKyJjdXJyZW50bHkgaW5zdGFsbGVkLiIKK21zZ3N0ciAiIgorIkk8bGluaz4g44KSIG1hc3RlciDjg6rjg7Pjgq/jgajjgZnjgovjg6rjg7Pjgq/jgrDjg6vjg7zjg5fjga7mg4XloLHjgpLooajnpLrjgZnjgovjgILooajnpLrjgZXjgozjgovmg4XloLEiCisi44Gv44CB44Kw44Or44O844OX44Gu44Oi44O844OJIChhdXRvIOOBiyBtYW51YWwg44GLKeODu+OBneOBriBzeW1saW5rIOOBruePvuWcqOOBruWPgueFp+WFiOODu+S7luOBqyAiCisiYWx0ZXJuYXRpdmVzICjjgajjgZ3jgozjgavlr77lv5zjgZfjgZ8gc2xhdmUgYWx0YXJuYXRpdmUpIOOBjOOBguOCi+OBi+OBqeOBhuOBi+ODu+ePvuWcqOOCpOODs+OCuSIKKyLjg4jjg7zjg6vjgZXjgozjgabjgYTjgovpgbjmip7ogqLjga7jgYbjgaHjgIHjgoLjgaPjgajjgoIgcHJpb3JpdHkg44Gu6auY44GE44KC44Gu44CB44Gn44GC44KL44CCIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjI5MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tZ2V0LXNlbGVjdGlvbnM+IgorbXNnc3RyICJCPGRwa2cgLS1zZXQtc2VsZWN0aW9ucz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyOTkKK21zZ2lkICIiCisiTGlzdCBhbGwgbWFzdGVyIGFsdGVybmF0aXZlIG5hbWVzICh0aG9zZSBjb250cm9sbGluZyBhIGxpbmsgZ3JvdXApICBhbmQgIgorInRoZWlyIHN0YXR1cy4gRWFjaCBsaW5lIGNvbnRhaW5zIHVwIHRvIDMgZmllbGRzIChzZXBhcmF0ZWQgYnkgb25lIG9yIG1vcmUgIgorInNwYWNlcykuIFRoZSBmaXJzdCBmaWVsZCBpcyB0aGUgYWx0ZXJuYXRpdmUgbmFtZSwgdGhlIHNlY29uZCBvbmUgaXMgdGhlICIKKyJzdGF0dXMgKGVpdGhlciBcImF1dG9cIiBvciBcIm1hbnVhbFwiKSwgYW5kIHRoZSBsYXN0IG9uZSBjb250YWlucyB0aGUgIgorImN1cnJlbnQgY2hvaWNlIGluIHRoZSBhbHRlcm5hdGl2ZSAoYmV3YXJlOiBpdCdzIGEgZmlsZW5hbWUgYW5kIHRodXMgbWlnaHQgIgorImNvbnRhaW4gc3BhY2VzKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjMwNAorbXNnaWQgIiIKKyJSZWFkIGNvbmZpZ3VyYXRpb24gb2YgYWx0ZXJuYXRpdmVzIG9uIHN0YW5kYXJkIGlucHV0IGluIHRoZSBmb3JtYXQgZ2VuZXJhdGVkICIKKyJieSBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXMgLS1nZXQtc2VsZWN0aW9ucz4gYW5kIHJlY29uZmlndXJlIHRoZW0gYWNjb3JkaW5nbHkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzA0CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1xdWVyeT4gSTxuYW1lPiIKK21zZ3N0ciAiQjwtLWF1dG8+IEk8bGluaz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMDkKK21zZ2lkICIiCisiRGlzcGxheSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgbGluayBncm91cCBsaWtlIC0tZGlzcGxheSBkb2VzLCBidXQgaW4gYSAiCisibWFjaGluZSBwYXJzZWFibGUgd2F5IChzZWUgc2VjdGlvbiBCPFFVRVJZIEZPUk1BVD4gYmVsb3cpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjMwOQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tbGlzdD4gSTxuYW1lPiIKK21zZ3N0ciAiQjwtLWxpc3Q+IEk8bGluaz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMTIKK21zZ2lkICJEaXNwbGF5IGFsbCB0YXJnZXRzIG9mIHRoZSBsaW5rIGdyb3VwLiIKK21zZ3N0ciAi44Oq44Oz44Kv44Kw44Or44O844OX44Gu44GZ44G544Gm44Gu44K/44O844Ky44OD44OI44KS6KGo56S644GZ44KL44CCIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjMxMgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tY29uZmlnPiBJPG5hbWU+IgorbXNnc3RyICJCPC0tY29uZmlnPiBJPGxpbms+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzE2CisjLCBmdXp6eQorbXNnaWQgIiIKKyJTaG93IGF2YWlsYWJsZSBhbHRlcm5hdGl2ZXMgZm9yIGEgbGluayBncm91cCBhbmQgYWxsb3cgdGhlIHVzZXIgdG8gIgorImludGVyYWN0aXZlbHkgc2VsZWN0IHdoaWNoIG9uZSB0byB1c2UuIFRoZSBsaW5rIGdyb3VwIGlzIHVwZGF0ZWQuIgorbXNnc3RyICIiCisi44Oq44Oz44Kv44Kw44Or44O844OX44Gu5Yip55So5Y+v6IO944Gq44GZ44G544Gm44Gu6YG45oqe6IKi44KS6KGo56S644GX44CB5a++6Kmx55qE44Gr6YG45oqe6IKi44GuIDEg44Gk44KS6YG444G5IgorIuOCi+OCiOOBhuOBq+OBmeOCi+OAguODquODs+OCr+OCsOODq+ODvOODl+OBr+abtOaWsOOBleOCjOOAgSBJPGF1dG8+IOODouODvOODieOBp+OBr+OBquOBj+OBquOCi+OAgiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMjQKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWFsdGRpcj5JPCBkaXJlY3Rvcnk+IgorbXNnc3RyICJCPC0tYWx0ZGlyPiBJPGRpcmVjdG9yeT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMjgKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRoZSBhbHRlcm5hdGl2ZXMgZGlyZWN0b3J5LCB3aGVuIHRoaXMgaXMgdG8gYmUgZGlmZmVyZW50IGZyb20gdGhlICIKKyJkZWZhdWx0LiIKK21zZ3N0ciAiYWx0ZXJuYXRpdmVzIOODh+OCo+ODrOOCr+ODiOODquOCkuODh+ODleOCqeODq+ODiOOBi+OCieWkieOBiOOBn+OBhOOBqOOBjeOBq+aMh+WumuOBmeOCi+OAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjMzMgorbXNnaWQgIiIKKyJTcGVjaWZpZXMgdGhlIGFkbWluaXN0cmF0aXZlIGRpcmVjdG9yeSwgd2hlbiB0aGlzIGlzIHRvIGJlIGRpZmZlcmVudCBmcm9tICIKKyJ0aGUgZGVmYXVsdC4iCittc2dzdHIgImFkbWluaXN0cmF0aXZlIOODh+OCo+ODrOOCr+ODiOODquOCkuODh+ODleOCqeODq+ODiOOBi+OCieWkieOBiOOBn+OBhOOBqOOBjeOBq+aMh+WumuOBmeOCi+OAgiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMzIKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWxvZz5JPCBmaWxlPiIKK21zZ3N0ciAiQjwtLWxvZz0+STxmaWxlbmFtZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMzYKKyMsIGZ1enp5Cittc2dpZCAiIgorIlNwZWNpZmllcyB0aGUgbG9nIGZpbGUsIHdoZW4gdGhpcyBpcyB0byBiZSBkaWZmZXJlbnQgZnJvbSB0aGUgZGVmYXVsdCAoL3Zhci8iCisibG9nL2FsdGVybmF0aXZlcy5sb2cpLiIKK21zZ3N0ciAiYWx0ZXJuYXRpdmVzIOODh+OCo+ODrOOCr+ODiOODquOCkuODh+ODleOCqeODq+ODiOOBi+OCieWkieOBiOOBn+OBhOOBqOOBjeOBq+aMh+WumuOBmeOCi+OAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM0MAorbXNnaWQgIiIKKyJMZXQgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiByZXBsYWNlIG9yIGRyb3AgYW55IHJlYWwgZmlsZSB0aGF0IGlzIGluc3RhbGxlZCAiCisid2hlcmUgYW4gYWx0ZXJuYXRpdmUgbGluayBoYXMgdG8gYmUgaW5zdGFsbGVkIG9yIHJlbW92ZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzQwCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1za2lwLWF1dG8+IgorbXNnc3RyICJCPC0tdXBkYXRlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM0NQorbXNnaWQgIiIKKyJTa2lwIGNvbmZpZ3VyYXRpb24gcHJvbXB0IGZvciBhbHRlcm5hdGl2ZXMgd2hpY2ggYXJlIHByb3Blcmx5IGNvbmZpZ3VyZWQgaW4gIgorImF1dG9tYXRpYyBtb2RlLiBUaGlzIG9wdGlvbiBpcyBvbmx5IHJlbGV2YW50IHdpdGggQjwtLWNvbmZpZz4gb3IgQjwtLWFsbD4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzQ1CisjLCBuby13cmFwCittc2dpZCAiQjwtLXZlcmJvc2U+IgorbXNnc3RyICJCPC0tdmVyYm9zZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozNTAKK21zZ2lkICJHZW5lcmF0ZSBtb3JlIGNvbW1lbnRzIGFib3V0IHdoYXQgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBpcyBkb2luZy4iCittc2dzdHIgIiIKKyJCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IOOBjOihjOOBo+OBpuOBhOOCi+S9nOalreOBq+S7mOOBhOOBpuOAgeOCiOOCiuips+e0sOOBquOCs+ODoeODs+ODiOOCkueUn+aIkOOBmSIKKyLjgovjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozNTMKKyMsIGZ1enp5Cittc2dpZCAiRG9uJ3QgZ2VuZXJhdGUgYW55IGNvbW1lbnRzIHVubGVzcyBlcnJvcnMgb2NjdXIuIgorbXNnc3RyICLjgqjjg6njg7zku6XlpJbjga7jgrPjg6Hjg7Pjg4jjgpLlh7rjgZXjgarjgYTjgILjgZPjga7jgqrjg5fjgrfjg6fjg7Pjga/jgb7jgaDlrp/oo4XjgZXjgozjgabjgYTjgarjgYTjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozNTkKK21zZ2lkICIiCisiSWYgc2V0IGFuZCB0aGUgQjwtLWFkbWluZGlyPiBvcHRpb24gaGFzIG5vdCBiZWVuIHNwZWNpZmllZCwgaXQgd2lsbCBiZSB1c2VkICIKKyJhcyB0aGUgYmFzZSBhZG1pbmlzdHJhdGl2ZSBkaXJlY3RvcnkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzYxCisjLCBuby13cmFwCittc2dpZCAiSTwvZXRjL2FsdGVybmF0aXZlcy8+IgorbXNnc3RyICJJPC9ldGMvYWx0ZXJuYXRpdmVzLz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozNjcKK21zZ2lkICIiCisiVGhlIGRlZmF1bHQgYWx0ZXJuYXRpdmVzIGRpcmVjdG9yeS4gIENhbiBiZSBvdmVycmlkZGVuIGJ5IHRoZSBCPC0tYWx0ZGlyPiAiCisib3B0aW9uLiIKK21zZ3N0ciAiIgorIuODh+ODleOCqeODq+ODiOOBriBhbHRlcm5hdGl2ZXMg44OH44Kj44Os44Kv44OI44Oq44CCIEI8LS1hbHRkaXI+IOOCquODl+OCt+ODp+ODs+OBq+OCiOOBo+OBpuWkieabtOOBpyIKKyLjgY3jgovjgIIiCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzY3CisjLCBuby13cmFwCittc2dpZCAiSTwvdmFyL2xpYi9kcGtnL2FsdGVybmF0aXZlcy8+IgorbXNnc3RyICJJPC92YXIvbGliL2Rwa2cvYWx0ZXJuYXRpdmVzLz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozNzMKK21zZ2lkICIiCisiVGhlIGRlZmF1bHQgYWRtaW5pc3RyYXRpb24gZGlyZWN0b3J5LiAgQ2FuIGJlIG92ZXJyaWRkZW4gYnkgdGhlIEI8LS0iCisiYWRtaW5kaXI+IG9wdGlvbi4iCittc2dzdHIgIiIKKyLjg4fjg5Xjgqnjg6vjg4jjga4gYWRtaW5pc3RyYXRpb24g44OH44Kj44Os44Kv44OI44Oq44CCIEI8LS1hZG1pbmRpcj4g44Kq44OX44K344On44Oz44Gr44KI44Gj44Gm5aSJIgorIuabtOOBp+OBjeOCi+OAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM3OAorbXNnaWQgIlRoZSByZXF1ZXN0ZWQgYWN0aW9uIHdhcyBzdWNjZXNzZnVsbHkgcGVyZm9ybWVkLiIKK21zZ3N0ciAi44Oq44Kv44Ko44K544OI44GV44KM44Gf44Ki44Kv44K344On44Oz44GM5q2j44GX44GP5a6f6KGM44GV44KM44Gf44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzgyCittc2dpZCAiIgorIlByb2JsZW1zIHdlcmUgZW5jb3VudGVyZWQgd2hpbHN0IHBhcnNpbmcgdGhlIGNvbW1hbmQgbGluZSBvciBwZXJmb3JtaW5nIHRoZSAiCisiYWN0aW9uLiIKK21zZ3N0ciAiIgorIuOCs+ODnuODs+ODieODqeOCpOODs+OBruino+mHiOOCkuihjOOBhuOBqOOBjeOBi+OAgeOCouOCr+OCt+ODp+ODs+OCkuWun+ihjOOBmeOCi+OBqOOBjeOBq+WVj+mhjOOBjOi1t+OBk+OBo+OBn+OAgiIKKworIy4gdHlwZTogU0gKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozODMKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiUVVFUlkgRk9STUFUIgorbXNnc3RyICLjg5Xjgqnjg7zjg57jg4Pjg4giCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozODgKK21zZ2lkICIiCisiVGhlIEI8dXBkYXRlLWFsdGVybmF0aXZlcyAtLXF1ZXJ5PiBmb3JtYXQgaXMgdXNpbmcgYW4gUkZDODIyLWxpa2UgZmxhdCAiCisiZm9ybWF0LiBJdCdzIG1hZGUgb2YgSTxuPiArIDEgYmxvY2tzIHdoZXJlIEk8bj4gaXMgdGhlIG51bWJlciBvZiAiCisiYWx0ZXJuYXRpdmVzIGF2YWlsYWJsZSBpbiB0aGUgcXVlcmllZCBsaW5rIGdyb3VwLiBUaGUgZmlyc3QgYmxvY2sgY29udGFpbnMgIgorInRoZSBmb2xsb3dpbmcgZmllbGRzOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM4OAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPExpbms6Pkk8IGxpbms+IgorbXNnc3RyICJCPFNvdXJjZTo+IEU8bHQ+44K944O844K55ZCNRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozOTEKK21zZ2lkICJUaGUgZ2VuZXJpYyBuYW1lIG9mIHRoZSBhbHRlcm5hdGl2ZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozOTEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxTdGF0dXM6Pkk8IHN0YXR1cz4iCittc2dzdHIgIkI8UmVwbGFjZXM6PiBFPGx0PuODkeODg+OCseODvOOCuOODquOCueODiEU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6Mzk0Cittc2dpZCAiVGhlIHN0YXR1cyBvZiB0aGUgYWx0ZXJuYXRpdmUgKEI8YXV0bz4gb3IgQjxtYW51YWw+KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozOTQKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxCZXN0Oj5JPCBiZXN0LWNob2ljZT4iCittc2dzdHIgIkI8UmVwbGFjZXM6PiBFPGx0PuODkeODg+OCseODvOOCuOODquOCueODiEU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6Mzk4Cittc2dpZCAiIgorIlRoZSBwYXRoIG9mIHRoZSBiZXN0IGFsdGVybmF0aXZlIGZvciB0aGlzIGxpbmsgZ3JvdXAuIE5vdCBwcmVzZW50IGlmIHRoZXJlICIKKyJpcyBubyBhbHRlcm5hdGl2ZXMgYXZhaWxhYmxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM5OAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPFZhbHVlOj5JPCBjdXJyZW50bHktc2VsZWN0ZWQtYWx0ZXJuYXRpdmU+IgorbXNnc3RyICJCPFNvdXJjZTo+IEU8bHQ+44K944O844K55ZCNRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0MDIKK21zZ2lkICIiCisiVGhlIHBhdGggb2YgdGhlIGN1cnJlbnRseSBzZWxlY3RlZCBhbHRlcm5hdGl2ZS4gSXQgY2FuIGFsc28gdGFrZSB0aGUgbWFnaWMgIgorInZhbHVlIEI8bm9uZT4uIEl0IGlzIHVzZWQgaWYgdGhlIGxpbmsgZG9lc24ndCBleGlzdC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0MDMKKyMsIG5vLXdyYXAKK21zZ2lkICJUaGUgb3RoZXIgYmxvY2tzIGRlc2NyaWJlIHRoZSBhdmFpbGFibGUgYWx0ZXJuYXRpdmVzIGluIHRoZSBxdWVyaWVkIGxpbmsgZ3JvdXA6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDA1CisjLCBuby13cmFwCittc2dpZCAiQjxBbHRlcm5hdGl2ZTo+STwgcGF0aC1vZi10aGlzLWFsdGVybmF0aXZlPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDA4Cittc2dpZCAiUGF0aCB0byB0aGlzIGJsb2NrJ3MgYWx0ZXJuYXRpdmUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDA4CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8UHJpb3JpdHk6Pkk8IHByaW9yaXR5LXZhbHVlPiIKK21zZ3N0ciAiQjxQcmlvcml0eTo+IEU8bHQ+5YSq5YWI5bqmRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0MTEKK21zZ2lkICJWYWx1ZSBvZiB0aGUgcHJpb3JpdHkgb2YgdGhpcyBhbHRlcm5hdGl2ZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0MTEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxTbGF2ZXM6Pkk8IGxpc3Qtb2Ytc2xhdmVzPiIKK21zZ3N0ciAiQjxSZXBsYWNlczo+IEU8bHQ+44OR44OD44Kx44O844K444Oq44K544OIRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0MTcKK21zZ2lkICIiCisiV2hlbiB0aGlzIGhlYWRlciBpcyBwcmVzZW50LCB0aGUgQjxuZXh0PiBsaW5lcyBob2xkIGFsbCBzbGF2ZSBhbHRlcm5hdGl2ZXMgIgorImFzc29jaWF0ZWQgdG8gdGhlIG1hc3RlciBsaW5rIG9mIHRoZSBhbHRlcm5hdGl2ZS4gVGhlcmUgaXMgb25lIHNsYXZlIHBlciAiCisibGluZS4gRWFjaCBsaW5lIGNvbnRhaW5zIG9uZSBzcGFjZSwgdGhlIGdlbmVyaWMgbmFtZSBvZiB0aGUgc2xhdmUgIgorImFsdGVybmF0aXZlLCBhbm90aGVyIHNwYWNlLCBhbmQgdGhlIHBhdGggdG8gdGhlIHNsYXZlIGFsdGVybmF0aXZlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQxOAorIywgbm8td3JhcAorbXNnaWQgIkI8RXhhbXBsZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQyNgorIywgbm8td3JhcAorbXNnaWQgIiIKKyIkIHVwZGF0ZS1hbHRlcm5hdGl2ZXMgLS1xdWVyeSBlZGl0b3JcbiIKKyJMaW5rOiBlZGl0b3JcbiIKKyJTdGF0dXM6IGF1dG9cbiIKKyJCZXN0OiAvdXNyL2Jpbi92aW0uZ3RrXG4iCisiVmFsdWU6IC91c3IvYmluL3ZpbS5ndGtcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDMxCisjLCBuby13cmFwCittc2dpZCAiIgorIkFsdGVybmF0aXZlOiAvYmluL2VkXG4iCisiUHJpb3JpdHk6IC0xMDBcbiIKKyJTbGF2ZXM6XG4iCisiIGVkaXRvci4xLmd6IC91c3Ivc2hhcmUvbWFuL21hbjEvZWQuMS5nelxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0NDYKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiQWx0ZXJuYXRpdmU6IC91c3IvYmluL3ZpbS5ndGtcbiIKKyJQcmlvcml0eTogNTBcbiIKKyJTbGF2ZXM6XG4iCisiIGVkaXRvci4xLmd6IC91c3Ivc2hhcmUvbWFuL21hbjEvdmltLjEuZ3pcbiIKKyIgZWRpdG9yLnJ1LjEuZ3ogL3Vzci9zaGFyZS9tYW4vcnUvbWFuMS92aW0uMS5nelxuIgorIiBlZGl0b3IucGwuSVNPODg1OS0yLjEuZ3ogL3Vzci9zaGFyZS9tYW4vcGwuSVNPODg1OS0yL21hbjEvdmltLjEuZ3pcbiIKKyIgZWRpdG9yLml0LklTTzg4NTktMS4xLmd6IC91c3Ivc2hhcmUvbWFuL2l0LklTTzg4NTktMS9tYW4xL3ZpbS4xLmd6XG4iCisiIGVkaXRvci5wbC5VVEYtOC4xLmd6IC91c3Ivc2hhcmUvbWFuL3BsLlVURi04L21hbjEvdmltLjEuZ3pcbiIKKyIgZWRpdG9yLml0LjEuZ3ogL3Vzci9zaGFyZS9tYW4vaXQvbWFuMS92aW0uMS5nelxuIgorIiBlZGl0b3IuZnIuVVRGLTguMS5neiAvdXNyL3NoYXJlL21hbi9mci5VVEYtOC9tYW4xL3ZpbS4xLmd6XG4iCisiIGVkaXRvci5mci4xLmd6IC91c3Ivc2hhcmUvbWFuL2ZyL21hbjEvdmltLjEuZ3pcbiIKKyIgZWRpdG9yLml0LlVURi04LjEuZ3ogL3Vzci9zaGFyZS9tYW4vaXQuVVRGLTgvbWFuMS92aW0uMS5nelxuIgorIiBlZGl0b3IucGwuMS5neiAvdXNyL3NoYXJlL21hbi9wbC9tYW4xL3ZpbS4xLmd6XG4iCisiIGVkaXRvci5mci5JU084ODU5LTEuMS5neiAvdXNyL3NoYXJlL21hbi9mci5JU084ODU5LTEvbWFuMS92aW0uMS5nelxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0NTgKKyMsIGZ1enp5Cittc2dpZCAiIgorIldpdGggQjwtLXZlcmJvc2U+IEI8dXBkYXRlLWFsdGVybmF0aXZlcz4gY2hhdHRlcnMgaW5jZXNzYW50bHkgYWJvdXQgaXRzICIKKyJhY3Rpdml0aWVzIG9uIGl0cyBzdGFuZGFyZCBvdXRwdXQgY2hhbm5lbC4gIElmIHByb2JsZW1zIG9jY3VyLCBCPHVwZGF0ZS0iCisiYWx0ZXJuYXRpdmVzPiBvdXRwdXRzIGVycm9yIG1lc3NhZ2VzIG9uIGl0cyBzdGFuZGFyZCBlcnJvciBjaGFubmVsIGFuZCAiCisicmV0dXJucyBhbiBleGl0IHN0YXR1cyBvZiAyLiAgVGhlc2UgZGlhZ25vc3RpY3Mgc2hvdWxkIGJlIHNlbGYtZXhwbGFuYXRvcnk7ICIKKyJpZiB5b3UgZG8gbm90IGZpbmQgdGhlbSBzbywgcGxlYXNlIHJlcG9ydCB0aGlzIGFzIGEgYnVnLiIKK21zZ3N0ciAiIgorIkI8dXBkYXRlLWFsdGVybmF0aXZlcz4g44Gv44CB5YuV5L2c44Gu5pyA5Lit44Gr44CB44GE44G+5L2V44KS44KE44Gj44Gm44GE44KL44GL44KS6YCQ5LiA5qiZ5rqW5Ye65Yqb44GrIgorIuOBl+OCg+OBueOCiue2muOBkeOCi+OAguWVj+mhjOOBjOi1t+OBjeOCi+OBqOOAgSBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IOOBr+OCqOODqeODvOODoeODg+OCu+ODvOOCuOOCkiIKKyLmqJnmupbjgqjjg6njg7zlh7rlipvjgavlh7rlipvjgZfjgIHntYLkuobjgrnjg4bjg7zjgr/jgrkgMiDjgpLov5TjgZnjgILjgZPjgozjgonjga7oqLrmlq3jg6Hjg4Pjgrvjg7zjgrjjga/jgIHoqq0iCisi44KB44Gw44KP44GL44KL44Gv44Ga44Gn44GC44KL44CC44KC44GX44KP44GL44KJ44Gq44GR44KM44Gw44CB44OQ44Kw44Go44GX44Gm5aCx5ZGK44GX44Gm5qyy44GX44GE44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDY0CisjLCBmdXp6eQorbXNnaWQgIiIKKyJUaGVyZSBhcmUgc2V2ZXJhbCBwYWNrYWdlcyB3aGljaCBwcm92aWRlIGEgdGV4dCBlZGl0b3IgY29tcGF0aWJsZSB3aXRoICIKKyJCPHZpPiwgZm9yIGV4YW1wbGUgQjxudmk+IGFuZCBCPHZpbT4uIFdoaWNoIG9uZSBpcyB1c2VkIGlzIGNvbnRyb2xsZWQgYnkgdGhlICIKKyJsaW5rIGdyb3VwIEI8dmk+LCB3aGljaCBpbmNsdWRlcyBsaW5rcyBmb3IgdGhlIHByb2dyYW0gaXRzZWxmIGFuZCB0aGUgIgorImFzc29jaWF0ZWQgbWFucGFnZS4iCittc2dzdHIgIiIKKyLkvovjgYjjgbAgQjxudmk+IOOChCBCPHZpbT4g44Gu44KI44GG44Gr44CB44OG44Kt44K544OI44Ko44OH44Kj44K/IEI8dmk+IOOBqOS6kuaPm+aAp+OBruOBguOCi+ODl+ODreOCsCIKKyLjg6njg6DjgpLmj5DkvpvjgZnjgovjg5Hjg4PjgrHjg7zjgrjjgYzopIfmlbDjgYLjgovjgILjganjga7jg5Hjg4PjgrHjg7zjgrjjgYzkvb/jgo/jgozjgovjgYvjga/jgIHjg6rjg7Pjgq/jgrAiCisi44Or44O844OXIEI8dmk+IOOBq+OCiOOBo+OBpuWItuW+oeOBleOCjOOCi+OAguODquODs+OCr+OCsOODq+ODvOODlyBCPHZpPiDjgavjga/jg5fjg63jgrDjg6njg6Doh6rouqvjga7jg6oiCisi44Oz44Kv44Go44CB6Zai6YCj44GZ44KLIG1hbiDjg5rjg7zjgrjjga7jg6rjg7Pjgq/jgYzlkKvjgb7jgozjgovjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0NjcKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlRvIGRpc3BsYXkgdGhlIGF2YWlsYWJsZSBwYWNrYWdlcyB3aGljaCBwcm92aWRlIEI8dmk+IGFuZCB0aGUgY3VycmVudCAiCisjfCAic2V0dGluZyBmb3IgaXQsIHVzZSB0aGUgSTwtLWRpc3BsYXk+IGFjdGlvbjoiCittc2dpZCAiIgorIlRvIGRpc3BsYXkgdGhlIGF2YWlsYWJsZSBwYWNrYWdlcyB3aGljaCBwcm92aWRlIEI8dmk+IGFuZCB0aGUgY3VycmVudCAiCisic2V0dGluZyBmb3IgaXQsIHVzZSB0aGUgQjwtLWRpc3BsYXk+IGFjdGlvbjoiCittc2dzdHIgIiIKKyJCPHZpPiDjgpLmj5DkvpvjgZnjgovjg5Hjg4PjgrHjg7zjgrjjgajjgZ3jga7nj77lnKjjga7oqK3lrprjgpLooajnpLrjgZnjgovjgavjga/jgIEgSTwtLWRpc3BsYXk+IOOCouOCryIKKyLjgrfjg6fjg7PjgpLkvb/jgYbjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0NzAKKyMsIGZ1enp5Cittc2dpZCAiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzIC0tZGlzcGxheSB2aT4iCittc2dzdHIgInVwZGF0ZS1hbHRlcm5hdGl2ZXMgLS1kaXNwbGF5IHZpIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDc0Cittc2dpZCAiIgorIlRvIGNob29zZSBhIHBhcnRpY3VsYXIgQjx2aT4gaW1wbGVtZW50YXRpb24sIHVzZSB0aGlzIGNvbW1hbmQgYXMgcm9vdCBhbmQgIgorInRoZW4gc2VsZWN0IGEgbnVtYmVyIGZyb20gdGhlIGxpc3Q6IgorbXNnc3RyICIiCisi54m55a6a44GuIEI8dmk+IOWun+ijheOCkumBuOOBtuOBq+OBr+OAgXJvb3Qg44Go44GX44Gm44GT44Gu44Kz44Oe44Oz44OJ44KS5a6f6KGM44GX44CB44Gd44GX44Gm5LiA6Kan44GL44KJIgorIuaVsOWtl+OCkumBuOOBtuOAgiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQ3NworIywgZnV6enkKK21zZ2lkICJCPHVwZGF0ZS1hbHRlcm5hdGl2ZXMgLS1jb25maWcgdmk+IgorbXNnc3RyICJ1cGRhdGUtYWx0ZXJuYXRpdmVzIC0tY29uZmlnIHZpIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDgxCittc2dpZCAiIgorIlRvIGdvIGJhY2sgdG8gaGF2aW5nIHRoZSBCPHZpPiBpbXBsZW1lbnRhdGlvbiBjaG9zZW4gYXV0b21hdGljYWxseSwgZG8gdGhpcyAiCisiYXMgcm9vdDoiCittc2dzdHIgIiIKKyJCPHZpPiDlrp/oo4Xjga7pgbjmip7jgpLoh6rli5XnmoTjgavooYzjgarjgYbjgojjgYbjgavmiLvjgZnjgavjga/jgIFyb290IOOBqOOBl+OBpuOBk+OBruOCs+ODnuODs+ODieOCkuWun+ihjCIKKyLjgZnjgovjgIIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0ODQKKyMsIGZ1enp5Cittc2dpZCAiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzIC0tYXV0byB2aT4iCittc2dzdHIgInVwZGF0ZS1hbHRlcm5hdGl2ZXMgLS1hdXRvIHZpIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDg4CisjLCBmdXp6eQorbXNnaWQgIiIKKyJJZiB5b3UgZmluZCBhIGJ1ZywgcGxlYXNlIHJlcG9ydCBpdCB1c2luZyB0aGUgRGViaWFuIGJ1Zy10cmFja2luZyBzeXN0ZW0uIgorbXNnc3RyICIiCisi44OQ44Kw44KS6KaL44Gk44GR44Gf44KJ44CBIERlYmlhbiDjga7jg5DjgrDov73ot6Hjgrfjgrnjg4bjg6DjgpLkvb/jgaPjgabjg6zjg53jg7zjg4jjgZfjgabmrLLjgZfjgYTjgILjgZ3jgowiCisi44GM54Sh55CG44Gq44KJ44CB6JGX6ICF44Gr55u05o6l6Zu75a2Q44Oh44O844Or44Gn6YCB44Gj44Gm5qyy44GX44GE44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDkzCittc2dpZCAiIgorIklmIHlvdSBmaW5kIGFueSBkaXNjcmVwYW5jeSBiZXR3ZWVuIHRoZSBvcGVyYXRpb24gb2YgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiAiCisiYW5kIHRoaXMgbWFudWFsIHBhZ2UsIGl0IGlzIGEgYnVnLCBlaXRoZXIgaW4gdGhlIGltcGxlbWVudGF0aW9uIG9yIHRoZSAiCisiZG9jdW1lbnRhdGlvbjsgcGxlYXNlIHJlcG9ydCBpdC4iCittc2dzdHIgIiIKKyLjgoLjgZcgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiDjga7li5XkvZzjgajjgZPjga7jg57jg4vjg6XjgqLjg6vjg5rjg7zjgrjjga7oqJjov7Djgavnn5vnm77jgYzjgYLjgowiCisi44Gw44CB5a6f6KOF44GL5paH5pu444CB44Gp44Gh44KJ44GL44Gu44OQ44Kw44Gn44GC44KL44CC44Os44Od44O844OI44KS44GK6aGY44GE44GX44Gf44GE44CCIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NTA0Cittc2dpZCAiIgorIlRoaXMgbWFudWFsIHBhZ2UgaXMgY29weXJpZ2h0IDE5OTcsMTk5OCBDaGFybGVzIEJyaXNjb2UtU21pdGggYW5kIG90aGVycy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjUwNworIywgZnV6enkKK21zZ2lkICIiCisiVGhpcyBpcyBmcmVlIGRvY3VtZW50YXRpb247IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgdmVyc2lvbiAyIG9yICIKKyJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyBXQVJSQU5UWS4iCittc2dzdHIgIiIKKyJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgdmVyc2lvbiAyIG9yIGxhdGVyICIKKyJmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo1MTAKK21zZ2lkICJCPGxuPigxKSwgRkhTLCB0aGUgRmlsZXN5c3RlbSBIaWVyYXJjaHkgU3RhbmRhcmQuIgorbXNnc3RyICJCPGxuPigxKSwgRkhTLCB0aGUgRmlsZXN5c3RlbSBIaWVyYXJjaHkgU3RhbmRhcmQuIgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDktMDItMjciCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAxMS0wNC0yOSIKKyN+IG1zZ3N0ciAiMjAwNi0wMi0yOCIKKworI34gbXNnaWQgIjIwMDYtMDItMjgiCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwNy0wMy0wNyIKKyN+IG1zZ3N0ciAiMjAwNi0wNC0wOSIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA3LTA3LTE2IgorI34gbXNnc3RyICIyMDA2LTA2LTE3IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDktMDMtMTUiCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAxMS0wNC0yNyIKKyN+IG1zZ3N0ciAiMjAwNi0wMi0yOCIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDExLTA3LTA3IgorI34gbXNnc3RyICIyMDA2LTAyLTI4IgorCisjLCBmdXp6eQorI358IG1zZ2lkICIyMDA2LTAyLTI4IgorI34gbXNnaWQgIjIwMTAtMDQtMTgiCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgIjIwMDYtMDItMjgiCisjfiBtc2dpZCAiMjAxMC0wNy0yOSIKKyN+IG1zZ3N0ciAiMjAwNi0wMi0yOCIKKworI34gbXNnaWQgIkI8UGFja2FnZTo+IEU8bHQ+cGFja2FnZSBuYW1lRTxndD4iCisjfiBtc2dzdHIgIkI8UGFja2FnZTo+IEU8bHQ+44OR44OD44Kx44O844K45ZCNRTxndD4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAxMC0xMS0yMiIKKyN+IG1zZ3N0ciAiMjAwNi0wMi0yOCIKKworIywgZnV6enkKKyN+fCBtc2dpZCAiQjxTb3VyY2U6PiBFPGx0PnNvdXJjZSBuYW1lRTxndD4iCisjfiBtc2dpZCAiQjxNdWx0aS1BcmNoOj4gRTxsdD5zYW1lfGZvcmVpZ258YWxsb3dlZEU8Z3Q+ICIKKyN+IG1zZ3N0ciAiQjxTb3VyY2U6PiBFPGx0PuOCveODvOOCueWQjUU8Z3Q+IgorCisjLCBmdXp6eQorI358IG1zZ2lkICIyMDA2LTAyLTI4IgorI34gbXNnaWQgIjIwMTAtMDEtMjgiCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgIiIKKyN+fCAiVGhlIGZpcnN0IG1lbWJlciBpcyBuYW1lZCBCPGRlYmlhbi1iaW5hcnk+IGFuZCBjb250YWlucyBhIHNlcmllcyBvZiAiCisjfnwgImxpbmVzLCBzZXBhcmF0ZWQgYnkgbmV3bGluZXMuIEN1cnJlbnRseSBvbmx5IG9uZSBsaW5lIGlzIHByZXNlbnQsIHRoZSAiCisjfnwgImZvcm1hdCB2ZXJzaW9uIG51bWJlciwgQjwyLjA+IGF0IHRoZSB0aW1lIHRoaXMgbWFudWFsIHBhZ2Ugd2FzIHdyaXR0ZW4uICAiCisjfnwgIlByb2dyYW1zIHdoaWNoIHJlYWQgbmV3LWZvcm1hdCBhcmNoaXZlcyBzaG91bGQgYmUgcHJlcGFyZWQgZm9yIHRoZSBtaW5vciAiCisjfnwgIm51bWJlciB0byBiZSBpbmNyZWFzZWQgYW5kIG5ldyBsaW5lcyB0byBiZSBwcmVzZW50LCBhbmQgc2hvdWxkIGlnbm9yZSAiCisjfnwgInRoZXNlIGlmIHRoaXMgaXMgdGhlIGNhc2UuIgorI34gbXNnaWQgIiIKKyN+ICJUaGUgZmlyc3QgbWVtYmVyIGlzIG5hbWVkIEI8ZGViaWFuLXNwbGl0PiBhbmQgY29udGFpbnMgYSBzZXJpZXMgb2YgbGluZXMsICIKKyN+ICJzZXBhcmF0ZWQgYnkgbmV3bGluZXMuIEN1cnJlbnRseSBzZXZlbiBsaW5lcyBhcmUgcHJlc2VudC4gIFRoZSBmaXJzdCBpcyAiCisjfiAidGhlIGZvcm1hdCB2ZXJzaW9uIG51bWJlciwgQjwyLjE+IGF0IHRoZSB0aW1lIHRoaXMgbWFudWFsIHBhZ2Ugd2FzICIKKyN+ICJ3cml0dGVuLiBUaGUgc2Vjb25kIGlzIHRoZSBwYWNrYWdlIG5hbWUuIFRoZSB0aGlyZCBpcyB0aGUgcGFja2FnZSAiCisjfiAidmVyc2lvbi4gVGhlIGZvdXJ0aCBpcyB0aGUgbWQ1c3VtIG9mIHRoZSBwYWNrYWdlLiAgVGhlIGZpZnRoIGlzIHRoZSB0b3RhbCAiCisjfiAic2l6ZSBvZiB0aGUgcGFja2FnZS4gVGhlIHNpeHRoIGlzIHRoZSBtYXhpbXVtIHBhcnQgc2l6ZS4gVGhlIHNldmVudGggaXMgIgorI34gInRoZSBjdXJyZW50IHBhcnQgbnVtYmVyLCBmb2xsb3dlZCBieSBhIHNsYXNoIGFuZCB0aGUgdG90YWwgYW1vdW50IG9mICIKKyN+ICJwYXJ0cyAoYXMgaW4gXFwob3ExLzEwXFwoY3EpLiIKKyN+IG1zZ3N0ciAiIgorI34gIkI8LmRlYj4g44Gr5ZCr44G+44KM44KL56ysIDEg44Gu44Oh44Oz44OQ44O844GvIEI8ZGViaWFuLWJpbmFyeT4g44Go44GE44GG5ZCN56ew44Gn44CB5pS56KGM44GnIgorI34gIuWMuuWIh+OCieOCjOOBn+aVsOihjOOBi+OCieaIkOOCi+OAguePvuWcqOOBr+S4gOihjOOBoOOBkeOBp+OBguOCiuOAgWRlYiDlvaLlvI/jg5Djg7zjgrjjg6fjg7Pnlarlj7fjgYzkuI7jgYgiCisjfiAi44KJ44KM44KL44CC44GT44Gu44Oe44OL44Ol44Ki44Or44GM5pu444GL44KM44Gf5pmC54K544Gn44GvIEI8Mi4wPiDjgafjgYLjgovjgILmlrDlvaLlvI/jga7jgqLjg7zjgqvjgqTjg5YiCisjfiAi44KS6Kqt44G/6L6844KA44OX44Ot44Kw44Op44Og44Gv44CB44Oe44Kk44OK44O844OQ44O844K444On44Oz55Wq5Y+344GM5LiK44GM44Gj44Gf5aC05ZCI44KE44CB5paw44GX44GE6KGM44GMIgorI34gIui/veWKoOOBleOCjOOBpuOBhOOCi+WgtOWQiOOCkuaDs+WumuOBl+OBpuOBiuOBi+OBquOBkeOCjOOBsOOBquOCieOBquOBhOOAguOCguOBl+OAgeOBk+OCjOOBq+ipsuW9k+OBmeOCi+WgtOWQiCIKKyN+ICLjga/jgZPjgozjgonjgpLnhKHoppbjgZnjgovjgZPjgajjgIIiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwOC0wOC0xOCIKKyN+IG1zZ3N0ciAiMjAwNi0wMi0yOCIKKworI34gbXNnaWQgIiIKKyN+ICJCPGRwa2c+IGNhbiBhbHNvIGJlIHVzZWQgYXMgYSBmcm9udC1lbmQgdG8gQjxkcGtnLWRlYj4oMSkuICBUaGUgZm9sbG93aW5nICIKKyN+ICJhcmUgQjxkcGtnLWRlYj4gYWN0aW9ucywgYW5kIGlmIHRoZXkgYXJlIGVuY291bnRlcmVkLCBCPGRwa2c+IGp1c3QgcnVucyAiCisjfiAiQjxkcGtnLWRlYj4gd2l0aCB0aGUgcGFyYW1ldGVycyBnaXZlbiB0byBpdDoiCisjfiBtc2dzdHIgIiIKKyN+ICLjgb7jgZ/jgIFCPGRwa2c+IOOBryBCPGRwa2ctZGViPigxKSDjga7jg5Xjg63jg7Pjg4jjgqjjg7Pjg4njgajjgZfjgabjgoLkvb/jgYbjgZPjgajjgYzjgafjgY3jgovjgIIiCisjfiAi5Lul5LiL44Gu44Ki44Kv44K344On44Oz44GvIEI8ZHBrZy1kZWI+IOOBruOCouOCr+OCt+ODp+ODs+OBp+OBguOCiuOAgUI8ZHBrZz4g44Gr44GT44KM44KJ44KS5byV44GNIgorI34gIuaVsOOBqOOBl+OBpuS4juOBiOOCi+OBqOOAgUI8ZHBrZy1kZWI+IOOBq+WQjOOBmOW8leOBjeaVsOOCkuS4juOBiOOBpui1t+WLleOBmeOCi+OAgiIKKworI34gbXNnaWQgIiIKKyN+ICIgICAgQjwtYj4sIEI8LS1idWlsZD4sXG4iCisjfiAiICAgIEI8LWM+LCBCPC0tY29udGVudHM+LFxuIgorI34gIiAgICBCPC1JPiwgQjwtLWluZm8+LFxuIgorI34gIiAgICBCPC1mPiwgQjwtLWZpZWxkPixcbiIKKyN+ICIgICAgQjwtZT4sIEI8LS1jb250cm9sPixcbiIKKyN+ICIgICAgQjwteD4sIEI8LS1leHRyYWN0PixcbiIKKyN+ICIgICAgQjwtWD4sIEI8LS12ZXh0cmFjdD4sIGFuZFxuIgorI34gIiAgICBCPC0tZnN5cy10YXJmaWxlPi5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIiAgICBCPC1iPiwgQjwtLWJ1aWxkPixcbiIKKyN+ICIgICAgQjwtYz4sIEI8LS1jb250ZW50cz4sXG4iCisjfiAiICAgIEI8LUk+LCBCPC0taW5mbz4sXG4iCisjfiAiICAgIEI8LWY+LCBCPC0tZmllbGQ+LFxuIgorI34gIiAgICBCPC1lPiwgQjwtLWNvbnRyb2w+LFxuIgorI34gIiAgICBCPC14PiwgQjwtLWV4dHJhY3Q+LFxuIgorI34gIiAgICBCPC1YPiwgQjwtLXZleHRyYWN0PixcbiIKKyN+ICIgICAgQjwtLWZzeXMtdGFyZmlsZT4uXG4iCisKKyN+IG1zZ2lkICJQbGVhc2UgcmVmZXIgdG8gQjxkcGtnLWRlYj4oMSkgZm9yIGluZm9ybWF0aW9uIGFib3V0IHRoZXNlIGFjdGlvbnMuIgorI34gbXNnc3RyICLjgZPjgozjgonjga7jgqLjgq/jgrfjg6fjg7PjgavjgaTjgYTjgabjga/jgIFCPGRwa2ctZGViPigxKSDjgavjgY/jgo/jgZfjgYTmg4XloLHjgYzjgYLjgovjgIIiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjwtLW5ldz4sIEI8LS1vbGQ+IgorI34gbXNnc3RyICJCPC0tbmV3PiB8IEI8LS1vbGQ+IgorCisjfiBtc2dpZCAiIgorI34gIlNlbGVjdCBuZXcgb3Igb2xkIGJpbmFyeSBwYWNrYWdlIGZvcm1hdC4gVGhpcyBpcyBhIEI8ZHBrZy1kZWI+KDEpICBvcHRpb24uIgorI34gbXNnc3RyICIiCisjfiAi44OR44OD44Kx44O844K444Gu44OV44Kp44O844Oe44OD44OI44GM5paw44GX44GE44GL5Y+k44GE44GL44KS5oyH5a6a44GZ44KL44CC44GT44KM44GvIEI8ZHBrZy1kZWI+KDEpICIKKyN+ICLjga7jgqrjg5fjgrfjg6fjg7PjgafjgYLjgovjgIIiCisKKyN+IG1zZ2lkICIiCisjfiAiRG9uJ3QgcmVhZCBvciBjaGVjayBjb250ZW50cyBvZiBjb250cm9sIGZpbGUgd2hpbGUgYnVpbGRpbmcgYSBwYWNrYWdlLiAgIgorI34gIlRoaXMgaXMgYSBCPGRwa2ctZGViPigxKSBvcHRpb24uIgorI34gbXNnc3RyICIiCisjfiAi44OR44OD44Kx44O844K444KS5qeL56+J44GZ44KL44Go44GN44Gr44CB5Yi25b6h44OV44Kh44Kk44Or44Gu5YaF5a6544KC6Kqt44G+44Ga44CB56K66KqN44KC44GX44Gq44GE44CC44GT44KMIgorI34gIuOBryBCPGRwa2ctZGViPigxKSDjga7jgqrjg5fjgrfjg6fjg7PjgafjgYLjgovjgIIiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwOS0wOC0xNSIKKyN+IG1zZ3N0ciAiMjAwNi0wMi0yOCIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA5LTExLTIxIgorI34gbXNnc3RyICIyMDA2LTAyLTI4IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMTAtMDMtMDciCisjfiBtc2dzdHIgIjIwMDYtMDQtMDkiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgIjIwMDYtMDItMjgiCisjfiBtc2dpZCAiMjAxMC0xMC0xMiIKKyN+IG1zZ3N0ciAiMjAwNi0wMi0yOCIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA5LTA4LTA3IgorI34gbXNnc3RyICIyMDA2LTA0LTA5IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMTAtMDQtMTYiCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwOS0wNS0xOSIKKyN+IG1zZ3N0ciAiMjAwNi0wNS0xMCIKKworI34gbXNnaWQgIjAiCisjfiBtc2dzdHIgIjAiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwOS0xMC0wMSIKKyN+IG1zZ3N0ciAiMjAwNi0wMi0yOCIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA5LTA2LTI2IgorI34gbXNnc3RyICIyMDA2LTAyLTI4IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDktMDUtMTAiCisjfiBtc2dzdHIgIjIwMDYtMDUtMTAiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgIiIKKyN+fCAiQjxkc2VsZWN0PiBbQjwtLWFkbWluZGlyPiBJPEU8bHQ+ZGlyZWN0b3J5RTxndD4+XSBbQjwtLWhlbHA+XSBbQjwtLSIKKyN+fCAidmVyc2lvbj5dIFtCPC0tbGljZW5jZT58QjwtLWxpY2Vuc2U+XSBbQjwtLWV4cGVydD5dIFtCPC0tZGVidWc+fEI8LSIKKyN+fCAiRD5JPEU8bHQ+ZmlsZUU8Z3Q+Pl0gW0k8RTxsdD5hY3Rpb25FPGd0Pj5dIFtCPC0tY29sb3VyPnxCPC0tY29sb3I+ICIKKyN+fCAiSTxzY3JlZW5wYXJ0Oj5bSTxmb3JlZ3JvdW5kPl0sW0k8YmFja2dyb3VuZD5dW0k8OmF0dHI+W0k8K2F0dHIrLi4+XV1dIgorI34gbXNnaWQgIiIKKyN+ICJCPGRzZWxlY3Q+IFtCPC0tYWRtaW5kaXI+IEk8RTxsdD5kaXJlY3RvcnlFPGd0Pj5dIFtCPC0taGVscD5dIFtCPC0tIgorI34gInZlcnNpb24+XSBbQjwtLWV4cGVydD5dIFtCPC0tZGVidWc+fEI8LUQ+STxFPGx0PmZpbGVFPGd0Pj5dICIKKyN+ICJbSTxFPGx0PmFjdGlvbkU8Z3Q+Pl0gW0I8LS1jb2xvdXI+fEI8LS1jb2xvcj4gSTxzY3JlZW5wYXJ0Oj4iCisjfiAiW0k8Zm9yZWdyb3VuZD5dLFtJPGJhY2tncm91bmQ+XVtJPDphdHRyPltJPCthdHRyKy4uPl1dXSIKKyN+IG1zZ3N0ciAiIgorI34gIkI8ZHNlbGVjdD4gW0I8LS1hZG1pbmRpcj4gSTxFPGx0PmRpcmVjdG9yeUU8Z3Q+Pl0gW0I8LS1oZWxwPl0gW0I8LS0iCisjfiAidmVyc2lvbj5dIFtCPC0tbGljZW5jZT58QjwtLWxpY2Vuc2U+XSBbQjwtLWV4cGVydD5dIFtCPC0tZGVidWc+fEI8LSIKKyN+ICJEPkk8RTxsdD5maWxlRTxndD4+XSBbSTxFPGx0PmFjdGlvbkU8Z3Q+Pl0gW0I8LS1jb2xvdXI+fEI8LS1jb2xvcj4gIgorI34gIkk8c2NyZWVucGFydDo+W0k8Zm9yZWdyb3VuZD5dLFtJPGJhY2tncm91bmQ+XVtJPDphdHRyPltJPCthdHRyKy4uPl1dXSIKKworI34gbXNnaWQgIkI8LS1hZG1pbmRpcj5JPCBFPGx0PmRpcmVjdG9yeUU8Z3Q+PiIKKyN+IG1zZ3N0ciAiQjwtLWFkbWluZGlyPkk8IEU8bHQ+ZGlyZWN0b3J5RTxndD4+IgorCisjfiBtc2dpZCAiVVNBR0UiCisjfiBtc2dzdHIgIuS9v+eUqOaWueazlSIKKworI34gbXNnaWQgIjIiCisjfiBtc2dzdHIgIjIiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwOS0wMy0wOCIKKyN+IG1zZ3N0ciAiMjAwNi0wNC0wOSIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA5LTExLTExIgorI34gbXNnc3RyICIyMDA2LTAyLTI4IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDktMDItMjYiCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwOS0wNC0xMyIKKyN+IG1zZ3N0ciAiMjAwNi0wMi0yOCIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA3LTEwLTA4IgorI34gbXNnc3RyICIyMDA2LTAyLTI4IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMTAtMDQtMTEiCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyN+IG1zZ2lkICIiCisjfiAiSTxwcmlvcml0eT4gYW5kIEk8c2VjdGlvbj4gcGxhY2UgdGhlIHBhY2thZ2Ugd2l0aGluIHRoZSByZWxlYXNlIHRyZWU7ICIKKyN+ICJ0aGVzZSBvdWdodCBub3QgdG8gYmUgZm91bmQgaW4gdGhlIGNvbnRyb2wgZmlsZS4gSWYgdGhlIHBhY2thZ2UgaXMgZm91bmQgIgorI34gImluIGEgc3ViZGlyZWN0b3J5IG9mIEk8YmluYXJ5ZGlyPiwgdGhhdCB3aWxsIGJlIGNoZWNrZWQgYWdhaW5zdCAiCisjfiAiSTxzZWN0aW9uPi4iCisjfiBtc2dzdHIgIiIKKyN+ICJJPHByaW9yaXR5PiDjgaggSTxzZWN0aW9uPiDjga/jg5Hjg4PjgrHjg7zjgrjjgpLjg6rjg6rjg7zjgrnjg4Tjg6rjg7zjgafjganjgZPjgavnva7jgY/jgYvjgpLmjIflrpoiCisjfiAi44GZ44KL44CC44GT44KM44KJ44GvIGNvbnRyb2wg44OV44Kh44Kk44Or44Gr44GC44KL44G544GN44Gn44Gv44Gq44GE44CC44KC44GX44OR44OD44Kx44O844K444GMICIKKyN+ICJJPGJpbmFyeWRpcj4g44Gu44K144OW44OH44Kj44Os44Kv44OI44Oq44Gr44GC44KM44GwIEk8c2VjdGlvbj4g44Gu5YCk44Go44OB44Kn44OD44Kv44GV44KM44KL44CCIgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDktMTEtMTIiCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjwtLWxpY2VuY2U+LCBCPC0tbGljZW5zZT4iCisjfiBtc2dzdHIgIkI8LS1saWNlbmNlPnxCPC0tbGljZW5zZT4iCisKKyN+IG1zZ2lkICJEaXNwbGF5IEI8ZHBrZz4gbGljZW5jZS4iCisjfiBtc2dzdHIgIkI8ZHBrZz4g44Gu44Op44Kk44K744Oz44K544KS6KGo56S644GZ44KL44CCIgorCisjfiBtc2dpZCAiRU5WSVJPTk1FTlQgVkFSSUFCTEVTIgorI34gbXNnc3RyICLnkrDlooPlpInmlbAiCisKKyN+IG1zZ2lkICJCPERQS0dfTk9fVFNUUD4iCisjfiBtc2dzdHIgIkI8RFBLR19OT19UU1RQPiIKKworI34gbXNnaWQgIiIKKyN+ICJEZWZpbmUgdGhpcyB0byBzb21ldGhpbmcgaWYgeW91IHByZWZlciBCPGRwa2c+IHN0YXJ0aW5nIGEgbmV3IHNoZWxsICIKKyN+ICJyYXRoZXIgdGhhbiBzdXNwZW5kaW5nIGl0c2VsZiwgd2hpbGUgZG9pbmcgYSBzaGVsbCBlc2NhcGUuIgorI34gbXNnc3RyICIiCisjfiAi5Lu75oSP44Gu5YCk44Gn5a6a576p44GZ44KL44Go44CB44K344Kn44Or44Ko44K544Kx44O844OX44KS44GX44Gf44Go44GN44GrIEI8ZHBrZz4g6Ieq5L2T44KS5LiA5pmC5YGc5q2iIgorI34gIihzdXNwZW5kKeOBmeOCi+OBruOBp+OBr+OBquOBj+OAgeaWsOOBl+OBhOOCt+OCp+ODq+OCkui1t+WLleOBmeOCi+OAgiIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA5LTA2LTEzIgorI34gbXNnc3RyICIyMDA2LTAyLTI4IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDktMDEtMDciCisjfiBtc2dzdHIgIjIwMDYtMDQtMDkiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjwtLWxpY2Vuc2U+LCBCPC0tbGljZW5jZT4iCisjfiBtc2dzdHIgIkI8LS1saWNlbmNlPiB8IEI8LS1saWNlbnNlPiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJCPC1sPiwgQjwtLWxpY2Vuc2U+IgorI34gbXNnc3RyICJCPC1sLCAtLWxpY2Vuc2U+IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDktMDktMDYiCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjwtST5bSTxmaWxlLXBhdHRlcm4+XSIKKyN+IG1zZ3N0ciAiQjxbLS1dID5JPGZpbGVuYW1lPiIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA5LTA4LTIwIgorI34gbXNnc3RyICIyMDA2LTAyLTI4IgorCisjfiBtc2dpZCAiQjwtLWxpY2VuY2U+fEI8LS1saWNlbnNlPiIKKyN+IG1zZ3N0ciAiQjwtLWxpY2VuY2U+fEI8LS1saWNlbnNlPiIKKworI34gbXNnaWQgIiIKKyN+ICJEaXNwbGF5cyB0aGUgQjxkc2VsZWN0PiBjb3B5cmlnaHQgYW5kIGxpY2Vuc2UgaW5mb3JtYXRpb24gYW5kIGV4aXRzICIKKyN+ICJzdWNjZXNzZnVsbHkuIgorI34gbXNnc3RyICJCPGRzZWxlY3Q+IOOBruiRl+S9nOaoqeaDheWgseOBqOODqeOCpOOCu+ODs+OCueaDheWgseOCkuihqOekuuOBl+OAgeato+W4uOe1guS6huOBmeOCi+OAgiIKKworI34gbXNnaWQgIkI8LWg+IgorI34gbXNnc3RyICJCPC1oPiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJCPC0td2l0aG91dC1xdWlsdD4iCisjfiBtc2dzdHIgIkI8LS1xdWlldD4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwOC0wNC0wOSIKKyN+IG1zZ3N0ciAiMjAwNi0wMi0yOCIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA3LTAzLTA2IgorI34gbXNnc3RyICIyMDA2LTA0LTA5IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDctMDYtMTIiCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjwtWj5JPGNvbXByZXNzaW9uPiIKKyN+IG1zZ3N0ciAiQjwtdD58QjwtLXRlc3Q+IgorCisjLCBmdXp6eQorI34gbXNnaWQgIkI8LXo+STxsZXZlbD4iCisjfiBtc2dzdHIgIkI8Wy0tXSA+STxmaWxlbmFtZT4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwOS0wMS0wNCIKKyN+IG1zZ3N0ciAiMjAwNi0wMi0yOCIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA5LTAyLTE4IgorI34gbXNnc3RyICIyMDA2LTAyLTI4IgorCisjfiBtc2dpZCAiRm9yZ2V0IGFib3V0IHVuaW5zdGFsbGVkIHVuYXZhaWxhYmxlIHBhY2thZ2VzLiIKKyN+IG1zZ3N0ciAiIgorI34gIuOCpOODs+OCueODiOODvOODq+OBleOCjOOBpuOBhOOBquOBj+OBpuWIqeeUqOWPr+iDveOBp+OBquOBhOODkeODg+OCseODvOOCuOOBruaDheWgseOCkua2iOWOu+OBmeOCi+OAgiIKKworI34gbXNnaWQgImluc3RhbGwtaW5mbyIKKyN+IG1zZ3N0ciAiaW5zdGFsbC1pbmZvIgorCisjLCBmdXp6eQorI34gbXNnaWQgImluc3RhbGwtaW5mbyAtIGNyZWF0ZSBvciB1cGRhdGUgZW50cnkgaW4gSW5mbyBkaXIgZmlsZSIKKyN+IG1zZ3N0ciAiIgorI34gImluc3RhbGwtaW5mbyAtIEluZm8g44OH44Kj44Os44Kv44OI44Oq44Gr44Ko44Oz44OI44Oq44KS5L2c5oiQ44GX44Gf44KK5pu05paw44GX44Gf44KK44GZ44KLIgorCisjfiBtc2dpZCAiIgorI34gIkI8aW5zdGFsbC1pbmZvPiBbQjwtLXZlcnNpb24+XSBbQjwtLWhlbHA+XSBbQjwtLWRlYnVnPl0gW0I8LS0iCisjfiAibWF4d2lkdGg9Pkk8bm5uPl0gW0I8LS1zZWN0aW9uID5JPHJlZ2V4cD5CPCA+STx0aXRsZT5dIFtCPC0tIgorI34gImluZm9kaXI9Pkk8eHh4Pl0gW0I8LS1hbGlnbj0+STxubm4+XSBbQjwtLXF1aWV0Pl0gW0I8LS1tZW51ZW50cnk9Pkk8eHh4Pl0gIgorI34gIltCPC0tZGVzY3JpcHRpb249Pkk8eHh4Pl0gW0I8LS1yZW1vdmU+fEI8LS1yZW1vdmUtZXhhY3RseT5dIFtCPC0tPl0gIgorI34gIkk8ZmlsZW5hbWU+IgorI34gbXNnc3RyICIiCisjfiAiQjxpbnN0YWxsLWluZm8+IFtCPC0tdmVyc2lvbj5dIFtCPC0taGVscD5dIFtCPC0tZGVidWc+XSBbQjwtLSIKKyN+ICJtYXh3aWR0aD0+STxubm4+XSBbQjwtLXNlY3Rpb24gPkk8cmVnZXhwPkI8ID5JPHRpdGxlPl0gW0I8LS0iCisjfiAiaW5mb2Rpcj0+STx4eHg+XSBbQjwtLWFsaWduPT5JPG5ubj5dIFtCPC0tcXVpZXQ+XSBbQjwtLW1lbnVlbnRyeT0+STx4eHg+XSAiCisjfiAiW0I8LS1kZXNjcmlwdGlvbj0+STx4eHg+XSBbQjwtLXJlbW92ZT58QjwtLXJlbW92ZS1leGFjdGx5Pl0gW0I8LS0+XSAiCisjfiAiSTxmaWxlbmFtZT4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiIgorI34gIkI8aW5zdGFsbC1pbmZvPiBjcmVhdGVzLCB1cGRhdGVzIG9yIHJlbW92ZXMgZW50cmllcyBpbiB0aGUgSW5mbyBCPGRpcj4gIgorI34gImZpbGUuIFdoZW4gdXBkYXRpbmcgb3IgY3JlYXRpbmcgZW50cmllcywgaWYgbm8gZGVzY3JpcHRpb24gaXMgc3BlY2lmaWVkICIKKyN+ICJvbiB0aGUgY29tbWFuZCBsaW5lIG9yIGluIHRoZSBJbmZvIGZpbGUsIGl0IGF0dGVtcHRzIHRvIGd1ZXNzIGEgIgorI34gImRlc2NyaXB0aW9uIGZyb20gdGhlIGNvbnRlbnRzIG9mIHRoZSBmaWxlLiIKKyN+IG1zZ3N0ciAiIgorI34gIkI8aW5zdGFsbC1pbmZvPiDjga/jgIFJbmZvIOODh+OCo+ODrOOCr+ODiOODquOBriBCPGRpcj4g44OV44Kh44Kk44Or44Gr44Ko44Oz44OI44Oq44KS5L2c5oiQ44O7IgorI34gIuabtOaWsOODu+WJiumZpOOBmeOCi+OAguS9nOaIkOOBi+abtOaWsOOBruWgtOWQiOOAgSDjgrPjg57jg7Pjg4njg6njgqTjg7PjgavjgoIgSW5mbyDjg5XjgqHjgqTjg6vjgavjgoLoqqwiCisjfiAi5piO5paH44GM5oyH5a6a44GV44KM44Gm44GE44Gq44GL44Gj44Gf44KJ44CB44OV44Kh44Kk44Or44Gu5Lit6Lqr44GL44KJ6Kqs5piO5paH44KS5o6o5ris44GX44KI44GG44Go44GZ44KL44CCIgorCisjfiBtc2dpZCAiIgorI34gIlNlZSB0aGUgZGVzY3JpcHRpb24gb2YgdGhlIEI8LS1zZWN0aW9uPiBvcHRpb24gZm9yIGRldGFpbHMgb2Ygd2hlcmUgdGhlICIKKyN+ICJlbnRyeSB3aWxsIGJlIHBsYWNlZCBhbmQgYSBkZXNjcmlwdGlvbiBvZiB0aGUgZXhwZWN0ZWQgZm9ybWF0IG9mIHRoZSAiCisjfiAiQjxkaXI+IGZpbGUuIgorI34gbXNnc3RyICIiCisjfiAi44Ko44Oz44OI44Oq44Gu572u44GL44KM44KL5L2N572u44KEIEI8ZGlyPiDjg5XjgqHjgqTjg6vjga7mnJvjgb7jgZfjgYTlvaLlvI/jga7oqqzmmI7jgavjgaTjgYTjgabjga/jgIEgIgorI34gIkI8LS1zZWN0aW9uPiDjga7oqJjov7DjgpLopovjgonjgozjgojjgIIiCisKKyN+IG1zZ2lkICJCPFstLV0gPkk8ZmlsZW5hbWU+IgorI34gbXNnc3RyICJCPFstLV0gPkk8ZmlsZW5hbWU+IgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICJHaXZlcyB0aGUgZmlsZW5hbWUgb2YgdGhlIEluZm8gZmlsZSB3aG9zZSBtZW51IGVudHJ5IGlzIHRvIGJlIGNyZWF0ZWQsICIKKyN+ICJ1cGRhdGVkIG9yIHJlbW92ZWQuIElmIEI8LS1yZW1vdmUtZXhhY3RseT4gaXMgc3BlY2lmaWVkLCB0aGVuIEk8ZmlsZW5hbWU+ICIKKyN+ICJzaG91bGQgYmUgdGhlIGV4YWN0IGVudHJ5IG5hbWUgdG8gYmUgcmVtb3ZlZCAoZS5nLiBcImVtYWNzLTIwL2VtYWNzXCIgb3IgIgorI34gIlwiZ2NjXCIpLCBvdGhlcndpc2UgdGhlIGJhc2VuYW1lIG9mIHRoaXMgZmlsZW5hbWUgaXMgdXNlZCBhcyB0aGUgcmVmZXJlbnQgIgorI34gIm9mIHRoZSBtZW51IGVudHJ5IHdoaWNoIGlzIGNyZWF0ZWQsIHVubGVzcyB0aGVyZSdzIGFuIG92ZXJyaWRpbmcgU1RBUlQtIgorI34gIklORk8tRElSIGVudHJ5IGluc2lkZSB0aGUgZ2l2ZW4gZmlsZS4gVGhpcyBmaWxlIG11c3QgdGhlcmVmb3JlIGV4aXN0IChvciAiCisjfiAiYmUgYWJvdXQgdG8gYmUgaW5zdGFsbGVkLCBvciBoYXZlIHByZXZpb3VzbHkgZXhpc3RlZCB3aGVuIHJlbW92aW5nIGFuICIKKyN+ICJlbnRyeSkgaW4gdGhlIHNhbWUgZGlyZWN0b3J5IGFzIHRoZSBCPGRpcj4gZmlsZSAoc2VlIHRoZSBCPC0taW5mb2Rpcj4gIgorI34gIm9wdGlvbikuIgorI34gbXNnc3RyICIiCisjfiAi44Oh44OL44Ol44O844Ko44Oz44OI44Oq44KS5L2c5oiQ44O75pu05paw44O75YmK6Zmk44GX44Gf44GEIEluZm8g44OV44Kh44Kk44Or44Gu44OV44Kh44Kk44Or5ZCN44KS5LiO44GIIgorI34gIuOCi+OAgiBCPC0tcmVtb3ZlLWV4YWN0bHk+IOOBjOaMh+WumuOBleOCjOOBn+WgtOWQiOOBr+OAgSBJPGZpbGVuYW1lPiDjga/liYrpmaTlr77osaHjga7mraPnoroiCisjfiAi44Gq44Ko44Oz44OI44Oq5ZCNICjkvovjgYjjgbAgXCJlbWFjcy0yMC9lbWFjc1wiIOOBqOOBiyBcImdjY1wiKSDjgafjgarjgZHjgozjgbDjgarjgonjgarjgYTjgIIiCisjfiAi5oyH5a6a44GV44KM44Gq44GL44Gj44Gf5aC05ZCI44Gv44CB44GT44Gu44OV44Kh44Kk44Or5ZCN44Gu44OZ44O844K544ON44O844Og44GM5L2c5oiQ44GV44KM44KL44Oh44OL44Ol44O844KoIgorI34gIuODs+ODiOODquOBruODquODleOCoeODrOODs+OCueOBqOOBl+OBpuS9v+OCj+OCjOOCiyAo44Gf44Gg44GX44Gd44Gu44OV44Kh44Kk44Or44Gu5YaF6YOo44GnIFNUQVJULUlORk8tIgorI34gIkRJUiDjgavjgojjgovkuIrmm7jjgY3jgYzjgZXjgozjgabjgYTjgovloLTlkIjjga/pmaTjgY8p44CC5b6T44Gj44Gm44GT44Gu44OV44Kh44Kk44Or44GvIEI8ZGlyPiDjg5XjgqEiCisjfiAi44Kk44Or44Go5ZCM44GY44OH44Kj44Os44Kv44OI44Oq44Gr5a2Y5Zyo44GX44Gm44GE44Gq44GR44KM44Gw44Gq44KJ44Gq44GE44CC44GC44KL44GE44Gv44CB44G744G844Kk44Oz44K5IgorI34gIuODiOODvOODq+OBleOCjOOBpuOBhOOCi+OBi+OAgeOCqOODs+ODiOODquWJiumZpOOBruWgtOWQiOOBr+S7peWJjeWtmOWcqOOBl+OBpuOBhOOBn+OBi+OAgeOBp+OBquOBkeOCjOOBsOOBquOCiSIKKyN+ICLjgarjgYTjgIIgQjwtLWluZm9kaXI+IOOCquODl+OCt+ODp+ODs+OCkuWPgueFp+OBm+OCiOOAgiIKKworIywgZnV6enkKKyN+IG1zZ2lkICIiCisjfiAiSWYgSTxmaWxlbmFtZT4gZW5kcyBpbiBCPC5nej4sIGl0IGlzIHRha2VuIHRvIHJlZmVyIHRvIGEgZmlsZSBjb21wcmVzc2VkICIKKyN+ICJ3aXRoIEI8Z3ppcD47IGlmIGl0IGRvZXNuJ3QgZXhpc3QsIGJ1dCBhIGNvcnJlc3BvbmRpbmcgSTxmaWxlbmFtZT5CPC5nej4gIgorI34gImRvZXMsIHRoZSBsYXR0ZXIgaXMgdXNlZCBpbnN0ZWFkLiIKKyN+IG1zZ3N0ciAiIgorI34gIkk8ZmlsZW5hbWU+IOOBjCBCPC5nej4g44Gn57WC44KP44Gj44Gm44GE44Gf44KJ44CBR05VIGd6aXAg44Gn5Zyn57iu44GV44KM44Gm44GE44KL44OV44Kh44Kk44OrIgorI34gIuOBp+OBguOCi+OBqOOBv+OBquOBleOCjOOCi+OAgiBJPGZpbGVuYW1lPiDjga/lrZjlnKjjgZfjgarjgYTjgYzjgZPjgozjgavlr77lv5zjgZnjgosgIgorI34gIkk8ZmlsZW5hbWU+QjwuZ3o+IOOBjOWtmOWcqOOBmeOCi+WgtOWQiOOBr+OAgeabv+OCj+OCiuOBqyBJPGZpbGVuYW1lPkI8Lmd6PiDjgYzkvb/jgo/jgowiCisjfiAi44KL44CCIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICJXaGVuIGFkZGluZyBvciB1cGRhdGluZyBlbnRyaWVzLCB0aGUgZmlsZSBtdXN0IGV4aXN0IGF0IHRoZSBwYXRoICIKKyN+ICJzcGVjaWZpZWQgKHBvc3NpYmx5IHdpdGggYW4gYWRkaXRpb25hbCBCPC5nej4gZXh0ZW5zaW9uKS4iCisjfiBtc2dzdHIgIiIKKyN+ICLjgqjjg7Pjg4jjg6rjgpLov73liqDjgYvmm7TmlrDjgZnjgovjgajjgY3jga/jgIHjg5XjgqHjgqTjg6so5ouh5by15a2QIEI8Lmd6PiDjgYzku5jliqDnmoTjgavku5jjgYTjgabjgYQiCisjfiAi44KL44GL44KC44GX44KM44Gq44GEKeOBr+aMh+WumuOBleOCjOOBn+ODkeOCueOBq+WtmOWcqOOBl+OBpuOBhOOBquOBkeOCjOOBsOOBquOCieOBquOBhOOAgiIKKworI34gbXNnaWQgIkI8LS1yZW1vdmU+IgorI34gbXNnc3RyICJCPC0tcmVtb3ZlPiIKKworI34gbXNnaWQgIiIKKyN+ICJTcGVjaWZpZXMgdGhhdCB0aGUgZW50cnkgZm9yIHRoZSBmaWxlIEk8ZmlsZW5hbWU+IGlzIHRvIGJlIHJlbW92ZWQ7IGJ5ICIKKyN+ICJkZWZhdWx0IGVudHJpZXMgYXJlIGNyZWF0ZWQgb3IgdXBkYXRlZC4iCisjfiBtc2dzdHIgIiIKKyN+ICLjg5XjgqHjgqTjg6sgSTxmaWxlbmFtZT4g44Gu44Ko44Oz44OI44Oq44KS5YmK6Zmk44GZ44KL44GT44Go44KS5oyH5a6a44GZ44KL44CC44OH44OV44Kp44Or44OI44Gn44Gv44KoIgorI34gIuODs+ODiOODquOBr+S9nOaIkOOCguOBl+OBj+OBr+abtOaWsOOBleOCjOOCi+OAgiIKKworIywgZnV6enkKKyN+IG1zZ2lkICIiCisjfiAiSWYgdGhlIHJlbW92YWwgcmVzdWx0cyBpbiBhIHNlY3Rpb24gYmVjb21pbmcgZW1wdHksIHRoZSBzZWN0aW9uIGhlYWRpbmcgIgorI34gIihhbmQgdGhlIHNwYXJlIGJsYW5rIGxpbmUpIHdpbGwgYmUgcmVtb3ZlZCBhcyB3ZWxsLCB1bmxlc3MgdGhpcyBpcyB0aGUgIgorI34gImxhc3Qgc2VjdGlvbiBpbiB0aGUgZmlsZSBvciBCPC0ta2VlcC1vbGQ+IGlzIHNwZWNpZmllZC4gU2VlIHRoZSBCPC0tIgorI34gInNlY3Rpb24+IG9wdGlvbiBmb3IgZGV0YWlscyBhYm91dCB0aGUgZXhwZWN0ZWQgZm9ybWF0IG9mIHRoZSBCPGRpcj4gZmlsZS4iCisjfiBtc2dzdHIgIiIKKyN+ICLliYrpmaTjga7ntZDmnpzjgrvjgq/jgrfjg6fjg7PjgYznqbrjgaPjgb3jgavjgarjgovloLTlkIjjgIHjgZPjgozjgYzjg5XjgqHjgqTjg6vjga7mnIDlvozjga7jgrvjgq/jgrfjg6fjg7PjgaciCisjfiAi44Gq44GE44GLIEI8LS1rZWVwLW9sZD4g44GM5oyH5a6a44GV44KM44KL44GL44GX44Gm44GE44Gq44GL44Gj44Gf44KJ44CB44K744Kv44K344On44Oz6KaL5Ye644GX44KC5ZCMIgorI34gIuanmOOBq+WJiumZpOOBleOCjOOCi+OAgiBCPGRpcj4g44OV44Kh44Kk44Or44Gu5pyb44G+44GX44GE5b2i5byP44Gu6Kqs5piO44Gr44Gk44GE44Gm44Gv44CBIEI8LS0iCisjfiAic2VjdGlvbj4g44Gu6KiY6L+w44KS6KaL44KJ44KM44KI44CCIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICJJZiB0aGVyZSBhcmUgc2V2ZXJhbCBzdWl0YWJsZSBlbnRyaWVzIGluIHRoZSBCPGRpcj4gZmlsZSwgb25seSB0aG9zZSBpbiAiCisjfiAidGhlIGZpcnN0IG1hdGNoaW5nIGNvbnRpZ3VvdXMgZ3JvdXAgd2lsbCBiZSByZW1vdmVkIGFuZCB0aGUgb3RoZXJzICIKKyN+ICJzaWxlbnRseSBpZ25vcmVkLiIKKyN+IG1zZ3N0ciAiIgorI34gIuOBguOBpuOBr+OBvuOCi+OCqOODs+ODiOODquOBjCBCPGRpcj4g44OV44Kh44Kk44Or44Gr44GE44GP44Gk44GL44GC44KL5aC05ZCI44CB5pyA5Yid44Gr44Oe44OD44OB44GX44Gf44KrIgorI34gIuODhuOCtOODquOCsOODq+ODvOODl+OBruOCguOBruOBjOWJiumZpOOBleOCjOOAgeaui+OCiuOBr+eEoeimluOBleOCjOOCi+OAgiIKKworI34gbXNnaWQgIiIKKyN+ICJJdCBpcyBub3QgYW4gZXJyb3IgZm9yIG5vIHN1aXRhYmxlIGVudHJ5IHRvIGJlIGZvdW5kLCB0aG91Z2ggQjxpbnN0YWxsLSIKKyN+ICJpbmZvPiB3aWxsIGlzc3VlIGEgd2FybmluZyB1bmxlc3MgdGhlIEI8LS1xdWlldD4gb3B0aW9uIHdhcyBzcGVjaWZpZWQuIgorI34gbXNnc3RyICIiCisjfiAiQjxpbnN0YWxsLWluZm8+IOOBryBCPC0tcXVpZXQ+IOOCquODl+OCt+ODp+ODs+OBjOaMh+WumuOBleOCjOOBquOBhOmZkOOCiuitpuWRiuOCkueZuuOBmeOCi+OBjOOAgSIKKyN+ICLjgZPjga7jgqrjg5fjgrfjg6fjg7PjgavjgaTjgYTjgabjga/jgIHjgYLjgabjga/jgb7jgovjgqjjg7Pjg4jjg6rjgYzopovjgaTjgYvjgonjgarjgY/jgabjgoLjgqjjg6njg7zjgavjga/jgaoiCisjfiAi44KJ44Gq44GE44CCIgorCisjfiBtc2dpZCAiIgorI34gIldoZW4gQjwtLXJlbW92ZT4gaXMgc3BlY2lmaWVkIHRoZSBCPC0tbWF4d2lkdGg+LCBCPC0tYWxpZ24+IGFuZCBCPC0tIgorI34gImNhbGlnbj4gZm9ybWF0dGluZyBvcHRpb25zIGFyZSBzaWxlbnRseSBpZ25vcmVkLiIKKyN+IG1zZ3N0ciAiIgorI34gIkI8LS1yZW1vdmU+IOOCquODl+OCt+ODp+ODs+OBjOaMh+WumuOBleOCjOOBn+WgtOWQiOOAgSBCPC0tbWF4d2lkdGg+LCBCPC0tYWxpZ24+LCBCPC0tIgorI34gImNhbGlnbj4g44Gu5pW05b2i44Kq44OX44K344On44Oz44Gv54Sh6KaW44GV44KM44KL44CCIgorCisjfiBtc2dpZCAiQjwtLXJlbW92ZS1leGFjdGx5PiIKKyN+IG1zZ3N0ciAiQjwtLXJlbW92ZS1leGFjdGx5PiIKKworIywgZnV6enkKKyN+IG1zZ2lkICIiCisjfiAiVGhpcyBvcHRpb24gaXMgZXNzZW50aWFsbHkgdGhlIHNhbWUgYXMgQjwtLXJlbW92ZT4gZXhjZXB0IHRoYXQgIgorI34gIkk8ZmlsZW5hbWU+IGlzIHRha2VuIGFzIHRoZSBleGFjdCBlbnRyeSB0byBiZSByZW1vdmVkLCByYXRoZXIgdGhhbiBhcyB0aGUgIgorI34gIm5hbWUgb2YgYW4gZXhpc3RpbmcgZmlsZS4gVGhpcyBjYW4gYmUgaW1wb3J0YW50IHdoZW4gdHJ5aW5nIHRvIHJlbW92ZSAiCisjfiAiZW50cmllcyB0aGF0IHJlZmVyIHRvIGluZm8gZmlsZXMgaW4gc3ViZGlyZWN0b3JpZXMgKGUuZy4gXCJlbWFjcy0yMC9lbWFjcyIKKyN+ICJcIikgYmVjYXVzZSBCPC0tcmVtb3ZlPiB3aWxsIG9wZXJhdGUgb24gdGhlIGJhc2VuYW1lIG9mIHRoZSBnaXZlbiAiCisjfiAiSTxmaWxlbmFtZT4gcmF0aGVyIHRoYW4gdGhlIGV4YWN0IG5hbWUgZ2l2ZW4uIChpLmUuICBCPC0tcmVtb3ZlPiAiCisjfiAiXCJlbWFjcy0yMC9lbWFjc1wiIHdvdWxkIGNhdXNlIEI8aW5zdGFsbC1pbmZvPiB0byBsb29rIGZvciBcImVtYWNzXCIsIG5vdCAiCisjfiAiXCJlbWFjcy0yMC9lbWFjc1wiKS4iCisjfiBtc2dzdHIgIiIKKyN+ICLjgZPjga7jgqrjg5fjgrfjg6fjg7Pjga/ln7rmnKznmoTjgavjga8gQjwtLXJlbW92ZT4g44Go5ZCM44GY44Gg44GM44CB44Gf44Gg44GXIEk8ZmlsZW5hbWU+IOOCkuWJiiIKKyN+ICLpmaTlr77osaHjgajjgarjgovml6LlrZjjga7jg5XjgqHjgqTjg6vjgajjgZfjgabjgafjga/jgarjgY/jgIHliYrpmaTlr77osaHjga7jgqjjg7Pjg4jjg6rjgZ3jga7jgoLjga7jgajjgb/jgaoiCisjfiAi44GZ44CC44GT44Gu6YGV44GE44Gv44CB44K144OW44OH44Kj44Os44Kv44OI44Oq44GuIGluZm8g44OV44Kh44Kk44Or44KS5Y+C54Wn44GX44Gm44GE44KL44Ko44Oz44OI44OqICjkvosiCisjfiAi44GI44GwIFwiZW1hY3MtMjAvZW1hY3NcIiDjgarjgakpIOOCkuWJiumZpOOBl+OCiOOBhuOBqOOBmeOCi+WgtOWQiOOBq+mHjeimgeOBqOOBquOCi+OAguOBquOBnOOBqiIKKyN+ICLjgokgQjwtLXJlbW92ZT4g44Gv5LiO44GI44KJ44KM44GfIEk8ZmlsZW5hbWU+IOOBneOBruOCguOBruOBp+OBr+OBquOBj+OAgeOBneOBruODmeODvOOCueODjeODvOODoCIKKyN+ICLjgavkvZznlKjjgZnjgovjgYvjgonjgafjgYLjgosgKOOBpOOBvuOCiiBCPC0tcmVtb3ZlPiBcImVtYWNzLTIwL2VtYWNzXCIg44Go44GZ44KL44Go44CBICIKKyN+ICJCPGluc3RhbGwtaW5mbz4g44GvIFwiZW1hY3MtMjAvZW1hY3NcIiDjgafjga/jgarjgY8gXCJlbWFjc1wiIOOCkuWvvuixoeOBqOOBmeOCiynjgIIiCisKKyN+IG1zZ2lkICJCPC0tc2VjdGlvbiA+STxyZWdleHAgdGl0bGU+IgorI34gbXNnc3RyICJCPC0tc2VjdGlvbiA+STxyZWdleHAgdGl0bGU+IgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICJTcGVjaWZpZXMgdGhhdCBpZiBhIG5ldyBlbnRyeSBpcyB0byBiZSBtYWRlLCBpdCBzaG91bGQgYmUgcGxhY2VkIGluIGEgIgorI34gInNlY3Rpb24gb2YgdGhlIEI8ZGlyPiBmaWxlIHdob3NlIHRpdGxlIG1hdGNoZXMgSTxyZWdleHA+LiAgSWYgbm8gc3VjaCAiCisjfiAic2VjdGlvbiBleGlzdHMsIG9uZSB3aWxsIGJlIGNyZWF0ZWQgYXMgdGhlIHNlY29uZCB0byBsYXN0IHNlY3Rpb24gaW4gdGhlICIKKyN+ICJmaWxlIChzZWUgYmVsb3cpIHdpdGggdGl0bGUgSTx0aXRsZT4uICBBIHNlY3Rpb24gaXMgYSBwYXJ0IG9mIHRoZSBCPGRpcj4gIgorI34gIm1lbnUgZGVsaW1pdGVkIGJ5IGJsYW5rIGxpbmVzOyB0aGUgZmlyc3QgbGluZSBpcyBhc3N1bWVkIHRvIGJlIHRoZSB0aXRsZS4iCisjfiBtc2dzdHIgIiIKKyN+ICLmlrDjgZfjgYTjgqjjg7Pjg4jjg6rjgpLkvZzjgovjgajjgY3jgavjgIEgQjxkaXI+IOODleOCoeOCpOODq+OBruS4reOBp+OCv+OCpOODiOODq+OBjCBJPHJlZ2V4cD4g44GrIgorI34gIuODnuODg+ODgeOBmeOCi+OCu+OCr+OCt+ODp+ODs+OBq+mFjee9ruOBmeOCi+OBk+OBqOOCkuaMh+WumuOBmeOCi+OAguipsuW9k+OBmeOCi+OCu+OCr+OCt+ODp+ODs+OBjOWtmOWcqOOBl+OBqiIKKyN+ICLjgYvjgaPjgZ/jgonjgIHjg5XjgqHjgqTjg6vjga7mnIDlvozjgYvjgonkuoznlarnm67jga7jgrvjgq/jgrfjg6fjg7Mo5b6M6L+wKeOBqOOBl+OBpiBJPHRpdGxlPiDjgajjgYTjgYYiCisjfiAi44K/44Kk44OI44Or44Gn5L2c44KJ44KM44KL44CC44K744Kv44K344On44Oz44Go44GvIEI8ZGlyPiDjg6Hjg4vjg6Xjg7zjga7kuK3jga7kuIDpg6jjgafjgIHnqbrnmb3ooYzjgafljLoiCisjfiAi5YiH44KJ44KM44Gf44KC44Gu44Gn44GC44KL44CC44K744Kv44K344On44Oz44Gu5YWI6aCt6KGM44Gv44K/44Kk44OI44Or44Go44GX44Gm5omx44KP44KM44KL44CCIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICJJZiBhIG5ldyBlbnRyeSBpcyB0byBiZSBjcmVhdGVkLCBCPGluc3RhbGwtaW5mbz4gd2lsbCBhdHRlbXB0IHRvIGluc2VydCAiCisjfiAiaXQgd2l0aGluIHRoZSBzZWN0aW9uIGluIGFscGhhYmV0aWMgb3JkZXIuIElmIHRoZSBlbnRyaWVzIGluIHRoZSBzZWN0aW9uICIKKyN+ICJhcmVuJ3QgYWxyZWFkeSBzb3J0ZWQsIHRoZSBuZXcgbG9jYXRpb24gd2l0aGluIHRoZSBzZWN0aW9uIHdpbGwgYmUgIgorI34gInVucHJlZGljdGFibGUuIFRoZSBvcmRlciBvZiBleGlzdGluZyBlbnRyaWVzIHdpbGwgbm90IGJlIGNoYW5nZWQuIgorI34gbXNnc3RyICIiCisjfiAi5paw44Gf44Gq44Ko44Oz44OI44Oq44KS5L2c44KL44Go44GN44CBIEI8aW5zdGFsbC1pbmZvPiDjga/jgrvjgq/jgrfjg6fjg7Pjga7kuK3jgafjgqLjg6vjg5XjgqHjg5njg4MiCisjfiAi44OI6aCG44Gr44Gd44KM44KS5oy/5YWl44GX44KI44GG44Go44GZ44KL44CC44K744Kv44K344On44Oz5Lit44Gu44Ko44Oz44OI44Oq44GM44GC44KJ44GL44GY44KB44K944O844OI44GV44KMIgorI34gIuOBpuOBhOOBquOBi+OBo+OBn+OCieOAgeOCu+OCr+OCt+ODp+ODs+S4reOBruS9jee9ruOBr+S6iOa4rOOBp+OBjeOBquOBhOOAguOBmeOBp+OBq+WtmOWcqOOBmeOCi+OCqOODs+ODiOODquOBriIKKyN+ICLpoIbnlarjga/lpInmm7TjgZXjgozjgarjgYTjgIIiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiIgorI34gIklmIG5vIHNlY3Rpb24gdGl0bGUgaXMgZm91bmQsIHRoZSBkZWZhdWx0IGlzIHRvIGFwcGVuZCBuZXcgZW50cmllcyB0byB0aGUgIgorI34gImVuZCBvZiB0aGUgZmlsZS4gVGhlIGxhc3Qgc2VjdGlvbiAoZXZlbiBpZiBpdCBvbmx5IGNvbnNpc3RzIG9mIHRoZSB0aXRsZSAiCisjfiAibGluZSkgc2hvdWxkIGFsd2F5cyBleGlzdCB0byBlbnN1cmUgdGhhdCBuZXcgc2VjdGlvbnMgYXJlIGNyZWF0ZWQgaW4gdGhlICIKKyN+ICJyaWdodCBwbGFjZS4gVGhlIGZpbmFsIHNlY3Rpb24gc2hvdWxkIGJlIHRpdGxlZCB0byByZWZsZWN0IHRoZSBmYWN0IHRoYXQgIgorI34gIkluZm8gZmlsZXMgd2l0aCBubyBiZXR0ZXIgc3BlY2lmaWVkIGxvY2F0aW9uIGFyZSBhcHBlbmRlZCB0byBpdC4iCisjfiBtc2dzdHIgIiIKKyN+ICLjg4fjg5Xjgqnjg6vjg4jjgafjga/mlrDjgZ/jgarjgqjjg7Pjg4jjg6rjgpLjg5XjgqHjgqTjg6vjga7ntYLjgo/jgorjgavku5jjgZHliqDjgYjjgovjgILmnIDlvozjga7jgrvjgq/jgrfjg6ciCisjfiAi44Oz44Gv44CB44K/44Kk44OI44Or6KGM44Gg44GR44Gn44GC44Gj44Gm44KC5bi444Gr5a2Y5Zyo44GX44Gm44GE44Gq44GR44KJ44Gw44Gq44KJ44Gq44GE44CC44GT44KM44Gv5paw44Gf44GqIgorI34gIuOCu+OCr+OCt+ODp+ODs+OBjOato+OBl+OBhOWgtOaJgOOBq+S9nOOCieOCjOOCi+OCiOOBhuOBq+OBmeOCi+OBn+OCgeOBp+OBguOCi+OAguacgOW+jOOBruOCu+OCr+OCt+ODp+ODs+OBr+OAgSIKKyN+ICLkvY3nva7jgYzmraPjgZfjgY/mjIflrprjgZXjgozjgabjgYTjgarjgYQgSW5mbyDjg5XjgqHjgqTjg6vjgYzjgZ3jgZPjgavku5jjgZHliqDjgYjjgonjgozjgovjgojjgYbjgavjgr/jgqQiCisjfiAi44OI44Or44KS5LuY44GR44Gq44GR44KM44Gw44Gq44KJ44Gq44GE44CCIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICJJZiB0aGVyZSBpcyBhbHJlYWR5IGFuIGVudHJ5IGZvciB0aGUgSW5mbyBmaWxlIGJlaW5nIGluc3RhbGxlZCwgaXQgaXMgIgorI34gInJlcGxhY2VkIGluIHNpdHUgd2l0aCB0aGUgbmV3IGVudHJ5LiIKKyN+IG1zZ3N0ciAiIgorI34gIkluZm8g44OV44Kh44Kk44Or44Gu44Ko44Oz44OI44Oq44GM44GZ44Gn44Gr44Kk44Oz44K544OI44O844Or44GV44KM44Gm44GE44Gf44KJ44CBIOOBneOBruS9jee9ruOBp+aWsOOBn+OBqiIKKyN+ICLjgqjjg7Pjg4jjg6rjgavnva7jgY3mj5vjgYjjgonjgozjgovjgIIiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiIgorI34gIklmIGEgc2VjdGlvbiBpcyBzcGVjaWZpZWQgd2hlbiByZW1vdmluZyBhbiBlbnRyeSwgdGhlIHNlY3Rpb24gaXMgaWdub3JlZCAiCisjfiAiYW5kIGEgd2FybmluZyBpcyBpc3N1ZWQuIgorI34gbXNnc3RyICIiCisjfiAi44Ko44Oz44OI44Oq5YmK6Zmk5pmC44Gr44K744Kv44K344On44Oz44KS5oyH5a6a44GZ44KL44Go44CB44K744Kv44K344On44Oz44Gv54Sh6KaW44GV44KM6K2m5ZGK44GM55m644Gb44KJ44KMIgorI34gIuOCi+OAgiIKKworIywgZnV6enkKKyN+IG1zZ2lkICIiCisjfiAiSWYgYSBzZWN0aW9uIGlzIHJlcXVlc3RlZCB3aGVuIGFkZGluZyBhbiBlbnRyeSwgYnV0IHRoZSBmaWxlIGNvbnRhaW5zIG5vICIKKyN+ICJzZWN0aW9uIGhlYWRpbmdzIGF0IGFsbCwgdGhlbiBCPGluc3RhbGwtaW5mbz4gd2lsbCBjcmVhdGUgYm90aCB0aGUgIgorI34gInJlcXVlc3RlZCBzZWN0aW9uIGFuZCBhIE1pc2NlbGxhbmVvdXMgc2VjdGlvbiBhdCB0aGUgZW5kIG9mIHRoZSBmaWxlLiIKKyN+IG1zZ3N0ciAiIgorI34gIuOCqOODs+ODiOODquOCkuWKoOOBiOOCi+OBqOOBjeOBq+OCu+OCr+OCt+ODp+ODs+OBjOW/heimgeOBqOOBquOCi+OBq+OCguOBi+OBi+OCj+OCieOBmuODleOCoeOCpOODq+OBq+OCu+OCryIKKyN+ICLjgrfjg6fjg7Popovlh7rjgZfjgYzkuIDjgaTjgoLjgarjgYvjgaPjgZ/jgonjgIEgQjxpbnN0YWxsLWluZm8+IOOBr+W/heimgeOBqOOBquOCi+OCu+OCr+OCt+ODp+ODs+OBqCIKKyN+ICLjg5XjgqHjgqTjg6vjga7ntYLjgo/jgorjga4gTWlzY2VsbGFuZW91cyDjgajjgYTjgYbjgrvjgq/jgrfjg6fjg7Pjgajjga7kuKHmlrnjgpLkvZzjgovjgIIiCisKKyN+IG1zZ2lkICJCPC0taW5mb2Rpcj0+STxpbmZvZGlyPiIKKyN+IG1zZ3N0ciAiQjwtLWluZm9kaXI9Pkk8aW5mb2Rpcj4iCisKKyN+IG1zZ2lkICIiCisjfiAiU3BlY2lmaWVzIHRoYXQgdGhlIEI8ZGlyPiBmaWxlIGlzLCBhbmQgdGhlIGluc3RhbGxlZCBjb3B5IG9mIHRoZSBuZXcgSW5mbyAiCisjfiAiZmlsZSB3YXMsIGlzIG9yIHdpbGwgYmUgbG9jYXRlZCBpbiBJPGluZm9kaXI+LiAgVGhlIGRlZmF1bHQgaXMgQjwvdXNyLyIKKyN+ICJzaGFyZS9pbmZvLz4uIgorI34gbXNnc3RyICIiCisjfiAiQjxkaXI+IOODleOCoeOCpOODq+OBqOOAgeOCpOODs+OCueODiOODvOODq+OBleOCjOOCi+aWsOOBn+OBqiBJbmZvIOODleOCoeOCpOODq+OBruOCs+ODlOODvOOBqOOBjCAiCisjfiAiSTxpbmZvZGlyPiDjgavjgYLjgovjgZPjgajjgpLmjIflrprjgZnjgovjgILjg4fjg5Xjgqnjg6vjg4jjga8gQjwvdXNyL3NoYXJlL2luZm8vPiDjgafjgYLjgovjgIIiCisKKyN+IG1zZ2lkICJCPC0tYWxpZ249Pkk8bm5uPkI8IFtkZXByZWNhdGVkXT4iCisjfiBtc2dzdHIgIkI8LS1hbGlnbj0+STxubm4+QjwgW+mdnuaOqOWlqF0+IgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICJTcGVjaWZpZXMgdGhhdCB0aGUgZmlyc3QgbGluZSBvZiB0aGUgZGVzY3JpcHRpb24gc2hvdWxkIGJlIGluZGVudGVkIGF0ICIKKyN+ICJsZWFzdCBJPG5ubj4gY2hhcmFjdGVyczsgZXh0cmEgc3BhY2VzIHdpbGwgYmUgYWRkZWQgYXMgcmVxdWlyZWQuIElmICIKKyN+ICJuZWNlc3NhcnkgYmVjYXVzZSBvZiB0aGUgbGVuZ3RoIG9mIHRoZSBCPGRpcj4gbWVudSBlbnRyeSBkZXRhaWxzLCBpdCBtYXkgIgorI34gImJlIG9mZnNldCBtb3JlLiBUaGUgZGVmYXVsdCBpcyAyNy4iCisjfiBtc2dzdHIgIiIKKyN+ICLoqqzmmI7mlofjga7mnIDliJ3jga7ooYzjgpLlsJHjgarjgY/jgajjgoIgSTxubm4+IOWtl+OBoOOBkeWtl+S4i+OBkuOBmeOBueOBjeOCguOBruOBqOaMh+WumuOBmeOCi+OAguS9meWIhiIKKyN+ICLjgarnqbrnmb3jgYzlv4XopoHjgarjgoLjga7jgajjgZfjgabliqDjgYjjgonjgozjgovjgIIgQjxkaXI+IOOBruODoeODi+ODpeODvOOCqOODs+ODiOODquOBruips+e0sOOBrumVt+OBlSIKKyN+ICLjga7jgZ/jgoHjgIHjgojjgorlpJrjgY/jga7jgqrjg5Xjgrvjg4Pjg4jjgYzlv4XopoHjgYvjgoLjgZfjgozjgarjgYTjgILjg4fjg5Xjgqnjg6vjg4jjga8gMjcg44Gn44GC44KL44CCIgorCisjfiBtc2dpZCAiQjwtLWNhbGlnbj0+STxubm4+QjwgW2RlcHJlY2F0ZWRdPiIKKyN+IG1zZ3N0ciAiQjwtLWNhbGlnbj0+STxubm4+QjwgW+mdnuaOqOWlqF0+IgorCisjfiBtc2dpZCAiIgorI34gIlNwZWNpZmllcyB0aGF0IHRoZSBzZWNvbmQgYW5kIHN1YnNlcXVlbnQgbGluZXMgb2YgdGhlIGRlc2NyaXB0aW9uIHNob3VsZCAiCisjfiAiYmUgaW5kZW50ZWQgYXQgbGVhc3QgSTxubm4+IGNoYXJhY3RlcnMuIFRoZSBkZWZhdWx0IGlzIDI5LiIKKyN+IG1zZ3N0ciAiIgorI34gIuiqrOaYjuaWh+OBruS6jOihjOebruS7pemZjeOBruihjOOCkuWwkeOBquOBj+OBqOOCgiBJPG5ubj4g44Gg44GR5a2X5LiL44GS44GZ44G544GN44KC44Gu44Go5oyH5a6a44GZ44KL44CCIgorI34gIuODh+ODleOCqeODq+ODiOOBryAyOSDjgafjgYLjgovjgIIiCisKKyN+IG1zZ2lkICJCPC0tbWF4d2lkdGg9Pkk8bm5uPkI8IFtkZXByZWNhdGVkXT4iCisjfiBtc2dzdHIgIkI8LS1tYXh3aWR0aD0+STxubm4+QjwgW+mdnuaOqOWlqF0+IgorCisjfiBtc2dpZCAiIgorI34gIlNwZWNpZmllcyB0aGF0IHRoZSBtYXhpbXVtIHdpZHRoIGZvciB0aGUgSW5mbyBmaWxlIGlzIEk8bm5uPi4gIFRoaXMgaXMgIgorI34gInVzZWQgd2hlbiB3b3JkLXdyYXBwaW5nIHRoZSBkZXNjcmlwdGl2ZSB0ZXh0LiAgVGhlIGRlZmF1bHQgaXMgNzkuIgorI34gbXNnc3RyICIiCisjfiAiSW5mbyDjg5XjgqHjgqTjg6vjga7mnIDlpKfluYXjgpIgSTxubm4+IOOBq+OBmeOCi+OAguiqrOaYjuaWh+OCkuODr+ODvOODieODqeODg+ODl+OBmeOCi+OBqOOBjeOBq+S9v+OCjyIKKyN+ICLjgozjgovjgILjg4fjg5Xjgqnjg6vjg4jjga8gNzkg44Gn44GC44KL44CCIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICJQcmV2ZW50cyB0aGUgdXN1YWwgZGlzcGxheSBvZiB0aGUgbmV3IG1lbnUgZW50cnkganVzdCBiZWZvcmUgaXQgaXMgIgorI34gImluc2VydGVkIGFuZCBvZiB0aGUgbWVzc2FnZXMgYW5ub3VuY2luZyB0aGUgcmVwbGFjZW1lbnQgYW5kIHJlbW92YWwgb2YgIgorI34gImV4aXN0aW5nIGVudHJpZXMgYW5kIHRoZSBjcmVhdGlvbiBhbmQgZGVsZXRpb24gb2Ygc2VjdGlvbnMuIgorI34gbXNnc3RyICIiCisjfiAi5oy/5YWl44GV44KM44KL55u05YmN44Gu5paw44Gf44Gq44Oh44OL44Ol44O844Ko44Oz44OI44Oq44Go44CB54++5a2Y44GZ44KL44Ko44Oz44OI44Oq44Gu572u5o+b44O75YmK6Zmk44KE44K7IgorI34gIuOCr+OCt+ODp+ODs+OBruS9nOaIkOODu+WJiumZpOOBruahiOWGheOBruODoeODg+OCu+ODvOOCuOOCkuihqOekuuOBl+OBquOBhOOAgiIKKworI34gbXNnaWQgIkNhdXNlcyBCPGluc3RhbGwtaW5mbz4gdG8gZGlzcGxheSBpdHMgdXNhZ2UgaW5mb3JtYXRpb24gYW5kIGV4aXQuIgorI34gbXNnc3RyICJCPGluc3RhbGwtaW5mbz4g44Gu5L2/55So5rOV44KS6KGo56S644GX44Gm57WC5LqG44GZ44KL44CCIgorCisjfiBtc2dpZCAiIgorI34gIkNhdXNlcyBCPGluc3RhbGwtaW5mbz4gdG8gZGlzcGxheSBpdHMgdmVyc2lvbiBhbmQgY29weXJpZ2h0IGluZm9ybWF0aW9uICIKKyN+ICJhbmQgZXhpdC4iCisjfiBtc2dzdHIgIkI8aW5zdGFsbC1pbmZvPiDjga7jg5Djg7zjgrjjg6fjg7PjgajokZfkvZzmqKnjga7mg4XloLHjgpLooajnpLrjgZfjgabntYLkuobjgZnjgovjgIIiCisKKyN+IG1zZ2lkICIiCisjfiAiU3BlY2lmaWVzIHRoYXQgdGhlIGRlc2NyaXB0aW9uIHRvIHVzZSBhZnRlciB0aGUgbWVudSBlbnRyeSBpbiBuZXcgb3IgIgorI34gInVwZGF0ZWQgZW50cmllcyBiZSBJPHh4eD4uICBUaGUgZGVmYXVsdCBpcyB0byB1c2UgdGhlIHRoZSB2YWx1ZSBzcGVjaWZpZWQgIgorI34gImluIHRoZSBJbmZvIGZpbGUgaXRzZWxmOyB0aGlzIGlzIGZvdW5kIGJ5IHNlYXJjaGluZyBmb3IgYSBzZWN0aW9uIG9mIHRoZSAiCisjfiAiZm9ybSIKKyN+IG1zZ3N0ciAiIgorI34gIuaWsOimj+ODu+abtOaWsOOBruODoeODi+ODpeODvOOCqOODs+ODiOODquOBruiqrOaYjuaWh+OCkiBJPHh4eD4g44Go44GZ44KL44CC44OH44OV44Kp44Or44OI44Gn44GvIEluZm8gIgorI34gIuODleOCoeOCpOODq+iHqui6q+OBruS4reOBp+aMh+WumuOBleOCjOOBn+WApOOCkuS9v+OBhuOAguOBk+OCjOOBr+asoeOBruOCiOOBhuOBquW9ouW8j+OBruOCu+OCr+OCt+ODp+ODs+OCkuaOoiIKKyN+ICLjgZnjgZPjgajjgafopovjgaTjgZHjgonjgozjgovjgIIiCisKKyN+IG1zZ2lkICJCPFNUQVJULUlORk8tRElSLUVOVFJZPiIKKyN+IG1zZ3N0ciAiQjxTVEFSVC1JTkZPLURJUi1FTlRSWT4iCisKKyN+IG1zZ2lkICJCPCogQXV0by1QR1A6IChhdXRvLXBncCkuIFBHUCB1bmRlciBHTlUgRW1hY3MuPiIKKyN+IG1zZ3N0ciAiQjwqIEF1dG8tUEdQOiAoYXV0by1wZ3ApLiBQR1AgdW5kZXIgR05VIEVtYWNzLj4iCisKKyN+IG1zZ2lkICJCPEVORC1JTkZPLURJUi1FTlRSWT4iCisjfiBtc2dzdHIgIkI8RU5ELUlORk8tRElSLUVOVFJZPiIKKworIywgZnV6enkKKyN+IG1zZ2lkICIiCisjfiAiSWYgdGhlIGVudHJ5IGZvdW5kIGluIHRoZSBJbmZvIGZpbGUgaXRzZWxmIGV4dGVuZHMgYWNyb3NzIHNldmVyYWwgbGluZXMsICIKKyN+ICJlYWNoIGdpdmluZyBhIG1lbnUgZW50cnksIHRoZSB0ZXh0IGZvdW5kIGluIHRoZSBmaWxlIGlzIHVzZWQgdmVyYmF0aW0uIEluICIKKyN+ICJ0aGlzIGNhc2UsIHRoZSBhbHBoYWJldGljIG9yZGVyaW5nIHNjaGVtZSBpcyB0dXJuZWQgb2ZmLCBhbmQgdGhlIGVudHJpZXMgIgorI34gImFyZSBpbnNlcnRlZCBhdCB0aGUgdG9wIG9mIHNlY3Rpb24gaW4gcXVlc3Rpb24uIEluIHRoaXMgY2FzZSwgdGhlIEI8LS0iCisjfiAibWVudWVudHJ5PiwgQjwtLW1heHdpZHRoPiwgQjwtLWFsaWduPiwgQjwtLWNhbGlnbj4gYW5kIEI8LS1tZW51ZW50cnk+ICIKKyN+ICJvcHRpb25zIGFyZSBpZ25vcmVkLiIKKyN+IG1zZ3N0ciAiIgorI34gIkluZm8g44OV44Kh44Kk44Or44Gr6KaL44Gk44GL44Gj44Gf44Ko44Oz44OI44Oq6Ieq6Lqr44GM44Gd44KM44Gg44GR44Gn5pWw6KGM44Gr5rih44KK44CB44Gd44KM44Ge44KM44Gr44OhIgorI34gIuODi+ODpeODvOOBruOCqOODs+ODiOODquOBjOOBguOCi+WgtOWQiOOAgeODleOCoeOCpOODq+OBruS4reOBq+imi+OBpOOBi+OBo+OBn+ODhuOCreOCueODiOOBjOOBneOBruOBvuOBvuS9v+OCjyIKKyN+ICLjgozjgovjgILjgZPjga7jgajjgY3jga/jgIHjgqLjg6vjg5XjgqHjg5njg4Pjg4jpoIbjga7phY3nva7jga/ooYzjgo/jgozjgZrjgIHjgqjjg7Pjg4jjg6rjga/llY/jgYTlkIjjgo/jgZvjga4iCisjfiAi44K744Kv44K344On44Oz44Gu5YWI6aCt44Gr5oy/5YWl44GV44KM44KL44CC44G+44GfIEI8LS1tZW51ZW50cnk+LCBCPC0tbWF4d2lkdGg+LCBCPC0tIgorI34gImFsaWduPiwgQjwtLWNhbGlnbj4sIEI8LS1tZW51ZW50cnk+IOOBruOCquODl+OCt+ODp+ODs+OBr+eEoeimluOBleOCjOOCi+OAgiIKKworIywgZnV6enkKKyN+IG1zZ2lkICIiCisjfiAiSWYgdGhlcmUgaXMgbm8gQjxkaXI+IGVudHJ5IGluIHRoZSBmaWxlLCB0aGUgcHJvZ3JhbSB3aWxsIHRyeSB0byBmaW5kIGEgIgorI34gInBhcmFncmFwaCBlYXJseSBpbiB0aGUgZmlsZSBzdGFydGluZyBCPHRoaXMgZmlsZSBkb2N1bWVudHM+LiAgSXQgd2lsbCAiCisjfiAiY2FwaXRhbGlzZSB0aGUgZmlyc3QgY2hhcmFjdGVyIG9mIHRoZSByZW1haW5kZXIsIGFuZCB1c2UgdGhhdC4iCisjfiBtc2dzdHIgIiIKKyN+ICLjg5XjgqHjgqTjg6vjgasgQjxkaXI+IOOCqOODs+ODiOODquOBjOOBquOBi+OBo+OBn+OCieOAgeODleOCoeOCpOODq+OBruacgOWIneOBruOBu+OBhuOBqyBCPHRoaXMgIgorI34gImZpbGUgZG9jdW1lbnRzPiDjgaflp4vjgb7jgovmrrXokL3jgYzjgarjgYTjgYvjgpLopovjgaTjgZHjgojjgYbjgajjgZnjgovjgILjgZ3jga7lvozjga7mnIDliJ3jga7mloflrZciCisjfiAi44KS5aSn5paH5a2X44Gr44GX44Gm44Gd44KM44KS5L2/44GG44CCIgorCisjfiBtc2dpZCAiSXQgaXMgYW4gZXJyb3IgZm9yIG5vbmUgb2YgdGhlc2UgbWV0aG9kcyB0byB5aWVsZCBhIGRlc2NyaXB0aW9uLiIKKyN+IG1zZ3N0ciAi44GT44KM44KJ44Gu5pa55rOV44Gn6Kqs5piO5paH44KS5b6X44KL44GT44Go44GM44Gn44GN44Gq44GL44Gj44Gf44KJ44Ko44Op44O844Gr44Gq44KL44CCIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICJJZiBhIGRlc2NyaXB0aW9uIGFyZ3VtZW50IGlzIGdpdmVuIHdoZW4gQjwtLXJlbW92ZT4gaXMgc3BlY2lmaWVkLCBpdCBpcyAiCisjfiAiaWdub3JlZCBhbmQgYSB3YXJuaW5nIGlzIGlzc3VlZC4iCisjfiBtc2dzdHIgIiIKKyN+ICJCPC0tcmVtb3ZlPiDjgYzmjIflrprjgZXjgozjgZ/jgajjgY3jgavjga/oqqzmmI7mlofjga7lvJXmlbDjgYzkuI7jgYjjgonjgozjgabjgoLnhKHoppbjgZXjgozjgIHorablkYrjgYwiCisjfiAi55m644Gb44KJ44KM44KL44CCIgorCisjfiBtc2dpZCAiQjwtLW1lbnVlbnRyeT0+STx4eHg+IgorI34gbXNnc3RyICJCPC0tbWVudWVudHJ5PT5JPHh4eD4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiIgorI34gIlNwZWNpZmllcyB0aGF0IHRoZSBlbnRyeSBpbiB0aGUgbWVudSBzaG91bGQgYmUgSTx4eHg+LiAgVGhlIGRlZmF1bHQgaXMgdG8gIgorI34gInVzZSB0aGUgdGhlIHZhbHVlIHNwZWNpZmllZCBpbiB0aGUgSW5mbyBmaWxlIGl0c2VsZi4gIElmIHRoaXMgaXMgbm90ICIKKyN+ICJwcmVzZW50LCB0aGUgYmFzZW5hbWUgb2YgdGhlIEluZm8gZmlsZSBpcyB1c2VkIChhbnkgQjwuaW5mbyA+aXMgZGVsZXRlZCwgIgorI34gImFuZCB0aGUgZW50cnkgaXMgbWFkZSBtaXhlZCBjYXNlKS4gIFNlZSBhYm92ZSBmb3IgZGV0YWlscyBvZiB0aGUgZm9ybWF0ICIKKyN+ICJleHBlY3RlZCBmb3IgdGhlIG1lbnUgZW50cnkgaW4gdGhlIEluZm8gZmlsZS4iCisjfiBtc2dzdHIgIiIKKyN+ICLjg6Hjg4vjg6Xjg7zjga7kuK3jga7jgqjjg7Pjg4jjg6rjgpIgSTx4eHg+IOOBqOOBmeOCi+OAguODh+ODleOCqeODq+ODiOOBp+OBr+OAgSBJbmZvIOODleOCoeOCpOODq+iHqui6qyIKKyN+ICLjga7kuK3jgafmjIflrprjgZXjgozjgZ/lgKTjgpLkvb/jgYbjgILjgZ3jgozjgYzjgarjgYvjgaPjgZ/loLTlkIjjga/jgIEgSW5mbyDjg5XjgqHjgqTjg6vjga7jg5njg7zjgrnjg43jg7wiCisjfiAi44Og44GM5L2/44KP44KM44KL44CCQjwuaW5mbyA+IOOBjOWPluOCiumZpOOBi+OCjOOAgeWkp+aWh+Wtl+Wwj+aWh+Wtl+a3t+WcqOOBruOCqOODs+ODiOODquWQjeOBjOS9nOOCieOCjCIKKyN+ICLjgovjgIIgSW5mbyDjg5XjgqHjgqTjg6vjga7jg6Hjg4vjg6Xjg7zjgqjjg7Pjg4jjg6rjga7mnJvjgb7jgZfjgYTlvaLlvI/jga7oqqzmmI7jgavjgaTjgYTjgabjga/jgIHkuIroqJjjga4iCisjfiAi6KiY6L+w44KS5Y+C54Wn44GV44KM44Gf44GE44CCIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICJXaGVuIHJlbW92aW5nIGVudHJpZXMsIHRoZSB2YWx1ZSBvZiB0aGUgQjwtLW1lbnVlbnRyeT4gb3B0aW9uIG11c3QgbWF0Y2ggIgorI34gInRoZSBhY3R1YWwgbWVudSBlbnRyeSBmaWVsZCBpbiB0aGUgbWVudSBpdGVtIHRvIGJlIHJlbW92ZWQgKGNhc2Ugbm90ICIKKyN+ICJzaWduaWZpY2FudCkuIElmIEI8LS1tZW51ZW50cnk+IGlzIG9taXR0ZWQsIG5vIGNoZWNrIG9uIHRoZSBtZW51IGVudHJ5IGlzICIKKyN+ICJkb25lLiIKKyN+IG1zZ3N0ciAiIgorI34gIuOCqOODs+ODiOODquOCkuWJiumZpOOBmeOCi+OBqOOBjeOAgSBCPC0tbWVudWVudHJ5PiDjgqrjg5fjgrfjg6fjg7Pjga7lgKTjga/jgIHliYrpmaTjgZXjgozjgovjg6EiCisjfiAi44OL44Ol44O844Ki44Kk44OG44Og44Gu5a6f6Zqb44Gu44Oh44OL44Ol44O844Ko44Oz44OI44Oq44OV44Kj44O844Or44OJ44Go5LiA6Ie044GX44Gq44GR44KM44Gw44Gq44KJ44GqIgorI34gIuOBhOOAgiBCPC0tbWVudWVudHJ5PiDjgpLnnIHnlaXjgZfjgZ/jgajjgY3jga/jgIHjg6Hjg4vjg6Xjg7zjgqjjg7Pjg4jjg6rjga7jg4Hjgqfjg4Pjgq/jga/ooYzjgo/jgozjgaoiCisjfiAi44GE44CCIgorCisjfiBtc2dpZCAiQjwtLWtlZXAtb2xkPiIKKyN+IG1zZ3N0ciAiQjwtLWtlZXAtb2xkPiIKKworI34gbXNnaWQgIiIKKyN+ICJJbmhpYml0cyB0aGUgcmVwbGFjZW1lbnQgb2YgZXhpc3RpbmcgZW50cmllcyBhbmQgdGhlIHJlbW92YWwgb2YgZW1wdHkgIgorI34gInNlY3Rpb25zLiIKKyN+IG1zZ3N0ciAi54++5a2Y44GZ44KL44Ko44Oz44OI44Oq44Gu572u5o+b44KE56m644K744Kv44K344On44Oz44Gu5YmK6Zmk44KS6KGM44KP44Gq44GE44CCIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICJJZiB0aGUgZmlsZSBiZWluZyBpbnN0YWxsZWQgYWxyZWFkeSBoYXMgYW4gZW50cnkgaW4gdGhlIEluZm8gQjxkaXI+IGZpbGUsICIKKyN+ICJ0aGUgb2xkIGVudHJ5IHdpbGwgYmUgbGVmdCBhbG9uZSBpbnN0ZWFkIG9mIGJlaW5nIHJlcGxhY2VkOyB0aGUgZGVmYXVsdCAiCisjfiAiaXMgdG8gb3ZlcndyaXRlIGFueSBvbGQgZW50cnkgZm91bmQgd2l0aCB0aGUgbmV3bHkgZ2VuZXJhdGVkIG9uZS4iCisjfiBtc2dzdHIgIiIKKyN+ICLjgZnjgafjgavjgqTjg7Pjgrnjg4jjg7zjg6vjgZXjgozjgabjgYTjgovjg5XjgqHjgqTjg6vjgYzjg4fjgqPjg6zjgq/jg4jjg6rjgavjgqjjg7Pjg4jjg6rjgpLmjIHjgaPjgabjgYTjgovloLQiCisjfiAi5ZCI44CB5Y+k44GE44Ko44Oz44OI44Oq44Gv572u44GN5o+b44GI44KJ44KM44Ga44Gd44Gu44G+44G+5q6L44KL44CC44OH44OV44Kp44Or44OI44Gn44Gv44CB5Y+k44GE44Ko44Oz44OI44OqIgorI34gIuOBr+OBhOOBmuOCjOOCguaWsOimj+S9nOaIkOOBleOCjOOBn+OCguOBruOBq+OCiOOBo+OBpue9ruOBjeaPm+OBiOOCieOCjOOCi+OAgiIKKworIywgZnV6enkKKyN+IG1zZ2lkICIiCisjfiAiSWYgQjwtLXJlbW92ZT4gaXMgc3BlY2lmaWVkLCBCPC0ta2VlcC1vbGQ+IHdpbGwgcHJldmVudCB0aGUgcmVtb3ZhbCBvZiAiCisjfiAidGhlIHNlY3Rpb24gaGVhZGluZyB3aGljaCB3b3VsZCBvdGhlcndpc2UgaGFwcGVuIGlmIHRoZSBzZWN0aW9uIGlzIG1hZGUgIgorI34gImVtcHR5IGJ5IHRoZSByZW1vdmFsLiIKKyN+IG1zZ3N0ciAiIgorI34gIkI8LS1yZW1vdmU+IOOBjOaMh+WumuOBleOCjOOBpuOBhOOCi+WgtOWQiOOAgeWJiumZpOOBrue1kOaenOOCu+OCr+OCt+ODp+ODs+OBjOepuuOBo+OBveOBq+OBquOCi+OBi+OCguOBlyIKKyN+ICLjgozjgarjgYTjgYzjgIEgQjwtLWtlZXAtb2xkPiDjga/jgrvjgq/jgrfjg6fjg7Popovlh7rjgZfjgpLliYrpmaTjgZfjgarjgYTjgIIiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiIgorI34gIkVuYWJsZXMgdGVzdCBtb2RlLCB3aGljaCBpbmhpYml0cyB0aGUgdXBkYXRlIG9mIHRoZSBJbmZvIEI8ZGlyPiBmaWxlLiIKKyN+IG1zZ3N0ciAi44OG44K544OI44Oi44O844OJ44KS5pyJ5Yq544Gr44GX44CB44OH44Kj44Os44Kv44OI44Oq44OV44Kh44Kk44Or44KS5pu05paw44GX44Gq44GE44CCIgorCisjfiBtc2dpZCAiIgorI34gIkVuYWJsZXMgZGVidWdnaW5nIG1vZGUsIGluIHdoaWNoIHRoZSByZXN1bHRzIG9mIHNvbWUgaW50ZXJuYWwgcHJvY2Vzc2luZyAiCisjfiAic3RlcHMgYXJlIHNob3duLiIKKyN+IG1zZ3N0ciAi44OH44OQ44OD44Kw44Oi44O844OJ44KS5pyJ5Yq544Gr44GX44CB5YaF6YOo44Gu5Yem55CG44K544OG44OD44OX44KS44GE44GP44KJ44GL6KGo56S644GZ44KL44CCIgorCisjfiBtc2dpZCAiQjxlbWFjcz4oMSksIEI8aW5mbz4oMSksIEI8Z3ppcCgxKS4+IgorI34gbXNnc3RyICJCPGVtYWNzPigxKSwgQjxpbmZvPigxKSwgQjxnemlwKDEpLj4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDE5OTQgSWFuIEphY2tzb24iCisjfiBtc2dzdHIgIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi4iCisKKyN+IG1zZ2lkICI4MjItZGF0ZSIKKyN+IG1zZ3N0ciAiQjw4MjItZGF0ZT4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwNy0wMS0yNCIKKyN+IG1zZ3N0ciAiMjAwNi0wMi0yOCIKKworIywgZnV6enkKKyN+IG1zZ2lkICI4MjItZGF0ZSAtIFByaW50IGRhdGUgYW5kIHRpbWUgaW4gUkZDMjgyMiBmb3JtYXQiCisjfiBtc2dzdHIgIjgyMi1kYXRlIC0gUkZDODIy44OV44Kp44O844Oe44OD44OI44Gu5pel5LuY44Go5pmC6ZaT44Gu6KGo56S6IgorCisjfiBtc2dpZCAiQjw4MjItZGF0ZT4iCisjfiBtc2dzdHIgIkI8ODIyLWRhdGU+IgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICJCPDgyMi1kYXRlPiBkaXNwbGF5cyB0aGUgY3VycmVudCBkYXRlIGFuZCB0aW1lIGluIHRoZSBmb3JtYXQgZGVzY3JpYmVkIGluICIKKyN+ICJSRkMyODIyLiAgSXQgZG9lcyBzbyBieSBzaW1wbHkgY2FsbGluZyBCPGRhdGU+KDEpICB3aXRoIHRoZSBCPC1SPiBvcHRpb24uIgorI34gbXNnc3RyICIiCisjfiAiQjw4MjItZGF0ZT4g44GvIFJGQzgyMiDjgavoqqzmmI7jgZXjgozjgabjgYTjgovjg5Xjgqnjg7zjg57jg4Pjg4jjgIFSRkMxMTIzIOOBp+aOqOWlqOOBleOCjOOBpuOBhCIKKyN+ICLjgovmlbDlrZfjgavjgojjgovjgr/jgqTjg6Djgr7jg7zjg7Pjgqrjg5Xjgrvjg4Pjg4jjgpLkvb/jgaPjgabnj77lnKjjga7ml6Xku5jjgajmmYLplpPjgpLooajnpLrjgZnjgovjgIIiCisKKyN+IG1zZ2lkICJCPDgyMi1kYXRlPiBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudHMgb3Igb3B0aW9ucy4iCisjfiBtc2dzdHIgIkI8ODIyLWRhdGU+IOOBq+OBr+W8leaVsOOChOOCquODl+OCt+ODp+ODs+OBr+OBquOBhOOAgiIKKworI34gbXNnaWQgIlRoaXMgZmFjaWxpdHkgcmVhbGx5IG91Z2h0IHRvIGJlIHBhcnQgb2YgQjxkYXRlPigxKS4iCisjfiBtc2dzdHIgIuOBk+OBruapn+iDveOBr+Wun+mam+OBq+OBryBCPGRhdGU+KDEpIOOBruS4gOmDqOOBp+OBguOCi+OBueOBjeOBp+OBguOCi+OAgiIKKworI34gbXNnaWQgImNsZWFudXAtaW5mbyIKKyN+IG1zZ3N0ciAiY2xlYW51cC1pbmZvIgorCisjfiBtc2dpZCAiIgorI34gImNsZWFudXAtaW5mbyAtIGNsZWFuIHVwIHRoZSBtZXNzIHRoYXQgYm9ndXMgaW5zdGFsbC1pbmZvIG1heSBoYXZlIGRvbmUiCisjfiBtc2dzdHIgImNsZWFudXAtaW5mbyAtIGluc3RhbGwtaW5mbyDjga7oqqTjgaPjgZ/liKnnlKjjgavjgojjgovmt7fkubHjga7mtojljrsiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjxjbGVhbnVwLWluZm8+IFtJPG9wdGlvbnM+XSBbQjwtLT5dIFtJPGRpcm5hbWU+XSIKKyN+IG1zZ3N0ciAiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBbSTxvcHRpb25zPl0gQjwtLWF1dG8+IEk8bmFtZT4iCisKKyN+IG1zZ2lkICIiCisjfiAiQjxjbGVhbnVwLWluZm8+IGlzIGEgUGVybCBzY3JpcHQgdGhhdCB0cmllcyB0byBjbGVhbiB1cCB0aGUgbWVzcyB0aGF0ICIKKyN+ICJib2d1cyBCPGluc3RhbGwtaW5mbz4oOCkgIG1heSBoYXZlIGRvbmUuICBJdCBnYXRoZXJzIGFsbCBzZWN0aW9ucyB3aXRoICIKKyN+ICJ0aGUgc2FtZSBoZWFkaW5nIGludG8gYSBzaW5nbGUgb25lLiAgSXQgdHJpZXMgdG8gYmUgc21hcnQgYWJvdXQgY2FzZXMgYW5kICIKKyN+ICJ0cmFpbGluZyBjb2xvbi9zcGFjZXMuIgorI34gbXNnc3RyICIiCisjfiAiQjxjbGVhbnVwLWluZm8+IOOBryBCPGluc3RhbGwtaW5mbz4oOCkg44Gu6Kqk44Gj44Gf6YGp55So44Gr44KI44Gj44Gm55Sf44GY44Gf5re35Lmx44KS5raI5Y67IgorI34gIuOBmeOCi+OBn+OCgeOBriBQZXJsIOOCueOCr+ODquODl+ODiOOBp+OBguOCi+OAguWQjOOBmOihqOmhjOOCkuaMgeOBo+OBn+OCu+OCr+OCt+ODp+ODs+OCkuS4gOOBpOOBq+OBvuOBqCIKKyN+ICLjgoHjgIHlpKfmloflrZflsI/mloflrZfjga7ljLrliKXjgIHjgYLjgajjgavntprjgY/jgrPjg63jg7Mv44K544Oa44O844K544Gr6Zai44GX44Gm44KC6LOi44GP5Yem55CG44GX44KI44GGIgorI34gIuOBqOOBmeOCi+OAgiIKKworI34gbXNnaWQgIiIKKyN+ICJPdGhlciBjbGVhbi11cHMgaW5jbHVkZSByZW1vdmluZyBvZiBlbXB0eSBzZWN0aW9ucywgYW5kIHNxdWVlemluZyB0aGUgIgorI34gImJsYW5rIGxpbmVzIChpbiBlbnRyaWVzIHBhcnQgb25seSkuIgorI34gbXNnc3RyICIiCisjfiAi44Gd44Gu5LuW44CB56m644Gu44K744Kv44K344On44Oz44Gu6Zmk5Y6744CB56m66KGM44Gu5Zyn57iuKOOCqOODs+ODiOODquODvOODkeODvOODiOOBruOBvynjgoLooYzjgo/jgozjgovjgIIiCisKKyN+IG1zZ2lkICIiCisjfiAiT3JkZXIgb2Ygc2VjdGlvbnMgaXMgcHJlc2VydmVkICh0aGUgZmlyc3QgZW5jb3VudGVyZWQgc2VjdGlvbiBjb3VudHMpLiAgIgorI34gIk9yZGVyIG9mIGVudHJpZXMgd2l0aGluIGEgc2VjdGlvbiBpcyBwcmVzZXJ2ZWQuIgorI34gbXNnc3RyICIiCisjfiAi44K744Kv44K344On44Oz44Gu6aCG5bqP44Gv5L+d5a2Y44GV44KM44KLKOikh+aVsOWQjOOBmOOCqOODs+ODiOODquOBjOOBguOBo+OBn+WgtOWQiOOAgeacgOWIneOBq+eZuuimi+OBleOCjCIKKyN+ICLjgZ/jgoLjga7jga7kvY3nva7jgavjgarjgosp44CC44K744Kv44K344On44Oz5YaF44Gn44Gu44Ko44Oz44OI44Oq44Gu6aCG5bqP44KC5L+d5a2Y44GV44KM44KL44CCIgorCisjfiBtc2dpZCAiIgorI34gIlBsZWFzZSBiZSBCPGV4dHJlbWVseSBjYXJlZnVsPiB3aGVuIHVzaW5nIHRoaXMgdXRpbGl0eSAtIGl0IG1pZ2h0IG5vdCBiZSAiCisjfiAiMTAwJSBzYWZlLiBjbGVhbnVwLWluZm8gdHJpZXMgdG8gYmUgY2FyZWZ1bCB3aXRoIHlvdXIgaW5mbyBkaXIgZmlsZSwgYnV0ICIKKyN+ICJvbmx5IHVudGlsIGl0IHdyaXRlcyBpdC4gWW91IHNob3VsZCBiYWNrIHRoZSBmaWxlIHVwIHByaW9yIHRvIHVzaW5nIHRoaXMgIgorI34gInNjcmlwdC4iCisjfiBtc2dzdHIgIiIKKyN+ICLjgZPjga7jg6bjg7zjg4bjgqPjg6rjg4bjgqPjga7kvb/nlKjjga9CPOeJueWIpeazqOaEj+a3seOBjz7ooYzjgaPjgabmrLLjgZfjgYQgLSDjgYrjgZ3jgonjgY/jgIHjgZPjga7jg6bjg7wiCisjfiAi44OG44Kj44Oq44OG44Kj44GvIDEwMCUg5a6J5YWo44Go44Gv44GE44GI44Gq44GE44CCY2xlYW51cC1pbmZvIOOBr+azqOaEj+a3seOBjyBpbmZvIGRpciDjg5XjgqEiCisjfiAi44Kk44Or44KS5omx44GK44GG44Go44GZ44KL44GM44CB44OV44Kh44Kk44Or44Gr5pu444GE44Gm44GX44G+44GI44Gw44Gd44KM44G+44Gn44Gn44GC44KL44CC44GT44Gu44Om44O844OG44KjIgorI34gIuODquODhuOCo+OCkuS9v+OBhuWJjeOBq+ODkOODg+OCr+OCouODg+ODl+ODleOCoeOCpOODq+OCkuOBqOOCi+OCiOOBhuOBq+OBmeOBueOBjeOBp+OBguOCi+OAgiIKKworI34gbXNnaWQgIkI8LS11bnNhZmU+IgorI34gbXNnc3RyICJCPC0tdW5zYWZlPiIKKworI34gbXNnaWQgIlNldCBzb21lIGFkZGl0aW9uYWwgcG9zc2libHkgdXNlZnVsIG9wdGlvbnMuIgorI34gbXNnc3RyICLjgYTjgY/jgaTjgYvjga7ku5jliqDnmoTjgarjgYrjgZ3jgonjgY/mnInnlKjjgafjgYLjgo3jgYbjgqrjg5fjgrfjg6fjg7PjgpLjgrvjg4Pjg4jjgZnjgovjgIIiCisKKyN+IG1zZ2lkICIiCisjfiAiQjxXYXJuaW5nOiB0aGUgYC0tdW5zYWZlJyBvcHRpb24gbWF5IGdhcmJsZSBhbiBvdGhlcndpc2UgY29ycmVjdCBmaWxlIT4iCisjfiBtc2dzdHIgIiIKKyN+ICJCPOitpuWRijogYC0tdW5zYWZlJyDjgqrjg5fjgrfjg6fjg7Pjga/mraPjgZfjgYTjg5XjgqHjgqTjg6vjgpLmlLnnq4TjgZfjgabjgZfjgb7jgYbjgYvjgoLjgZfjgozjgarjgYQhIgorI34gIj4iCisKKyN+IG1zZ2lkICJJPC91c3IvaW5mby9kaXI+IG9yIEk8RTxsdD5kaXJuYW1lRTxndD4vZGlyPiIKKyN+IG1zZ3N0ciAiSTwvdXNyL2luZm8vZGlyPiDjgb7jgZ/jga8gSTxFPGx0PuODh+OCo+ODrOOCr+ODiOODquWQjUU8Z3Q+L2Rpcj4iCisKKyN+IG1zZ2lkICIiCisjfiAiVGhlIGluZm8gZGlyZWN0b3J5IGZpbGUuIFRoZSBsb2NrIGZpbGUgaXMgbmFtZWQgdGhlIHNhbWUsIHdpdGggXCIubG9ja1wiICIKKyN+ICJzdWZmaXguIgorI34gbXNnc3RyICIiCisjfiAiaW5mbyDjg4fjgqPjg6zjgq/jg4jjg6rjg5XjgqHjgqTjg6vjgILjg63jg4Pjgq/jg5XjgqHjgqTjg6vjga/lkIzjgZjlkI3liY3jgacgXCIubG9ja1wiIOaLoeW8teWtkOOBjOOBpCIKKyN+ICLjgYTjgZ/jgoLjga7jgavjgarjgovjgIIiCisKKyN+IG1zZ2lkICJQcm9iYWJseSBtYW55LiIKKyN+IG1zZ3N0ciAi44GK44Gd44KJ44GP44Gf44GP44GV44KT44GC44KL44CCIgorCisjfiBtc2dpZCAiQjxpbnN0YWxsLWluZm8+KDgpLCBCPGluZm8+KDEpLiIKKyN+IG1zZ3N0ciAiQjxpbnN0YWxsLWluZm8+KDgpLCBCPGluZm8+KDEpLiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJDb3B5cmlnaHQgXFwoY28gMTk5NiBLaW0tTWluaCBLYXBsYW4iCisjfiBtc2dzdHIgIkNvcHlyaWdodCAoQykgMTk5NiBLaW0tTWluaCBLYXBsYW4uIgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDgtMDEtMzAiCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyN+IG1zZ2lkICJnZW5lcmljIG5hbWUiCisjfiBtc2dzdHIgIuS4gOiIrOWQjSAoZ2VuZXJpYyBuYW1lKSIKKworI34gbXNnaWQgInN5bWxpbmsiCisjfiBtc2dzdHIgInN5bWxpbmsiCisKKyN+IG1zZ2lkICIiCisjfiAiV2l0aG91dCBhbnkgZnVydGhlciBxdWFsaWZpY2F0aW9uLCB0aGlzIG1lYW5zIGEgc3ltYm9saWMgbGluayBpbiB0aGUgIgorI34gImFsdGVybmF0aXZlcyBkaXJlY3Rvcnk6IG9uZSB3aGljaCB0aGUgc3lzdGVtIGFkbWluaXN0cmF0b3IgaXMgZXhwZWN0ZWQgdG8gIgorI34gImFkanVzdC4iCisjfiBtc2dzdHIgIiIKKyN+ICLnibnjgavku5bjgavmjIflrprjgYzjgarjgZHjgozjgbDjgIHjgZPjgozjga8gYWx0ZXJuYXRpdmVzIOODh+OCo+ODrOOCr+ODiOODquWGheOBruOCt+ODs+ODnOODquODg+OCr+ODqiIKKyN+ICLjg7Pjgq/jgpLmhI/lkbPjgZnjgovjgILjgrfjgrnjg4bjg6DnrqHnkIbogIXjgYzoqr/mlbTjga7lr77osaHjgajjgZnjgovjgoLjga7jgafjgYLjgovjgIIiCisKKyN+IG1zZ2lkICJDYWxsIEI8LS1jb25maWc+IG9uIGFsbCBhbHRlcm5hdGl2ZXMuIgorI34gbXNnc3RyICJCPC0tY29uZmlnPiDjgpLjgZnjgbnjgabjga7pgbjmip7ogqLjgavjgaTjgYTjgablkbzjgbPlh7rjgZnjgIIiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjxFcnJvcjo+IEU8bHQ+ZXJyb3IgZGV0YWlsc0U8Z3Q+IgorI34gbXNnc3RyICJCPFByaW9yaXR5Oj4gRTxsdD7lhKrlhYjluqZFPGd0PiIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA3LTEwLTA2IgorI34gbXNnc3RyICIyMDA2LTAyLTI4IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDgtMDMtMTQiCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjwtRT4iCisjfiBtc2dzdHIgIkI8LUI+IgorCisjLCBmdXp6eQorI34gbXNnaWQgIkI8LVc+IgorI34gbXNnc3RyICJCPC1CPiIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA3LTA5LTA4IgorI34gbXNnc3RyICIyMDA2LTAyLTI4IgorCisjfiBtc2dpZCAiIgorI34gIlRoZXJlIGlzIG5vIGF1dGhlbnRpY2F0aW9uIG9uIEI8LmRlYj4gZmlsZXM7IGluIGZhY3QsIHRoZXJlIGlzbid0IGV2ZW4gYSAiCisjfiAic3RyYWlnaHRmb3J3YXJkIGNoZWNrc3VtLiIKKyN+IG1zZ3N0ciAiIgorI34gIkI8LmRlYj4g44OV44Kh44Kk44Or6Ieq5L2T44Gr44Gv6KqN6Ki844Gu5omL5q6144GM44Gq44GE44CC5a6f6Zqb44CB5Y2Y57SU44Gq44OB44Kn44OD44Kv44K144Og44GV44GI44KC44GqIgorI34gIuOBhOOAgiIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA4LTAzLTAyIgorI34gbXNnc3RyICIyMDA2LTA0LTA5IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDgtMDEtMTMiCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwOC0wMy0yNSIKKyN+IG1zZ3N0ciAiMjAwNi0wMi0yOCIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA4LTAzLTE2IgorI34gbXNnc3RyICIyMDA2LTAyLTI4IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDgtMDQtMDgiCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyN+IG1zZ2lkICIiCisjfiAiQSBzaW1wbGVyIG9uZS1zaG90IGNvbW1hbmQgdG8gcmV0cmlldmUgYW5kIHVwZGF0ZSB0aGUgSTxhdmFpbGFibGU+IGZpbGUgIgorI34gImlzIEI8ZHNlbGVjdCB1cGRhdGU+LiIKKyN+IG1zZ3N0ciAiIgorI34gIkk8YXZhaWxhYmxlPiDjg5XjgqHjgqTjg6vjga7lj5blvpfjgajmm7TmlrDjgpLooYzjgarjgYbjgIHjgoLjgaPjgajjgoLnsKHljZjjgarjgrPjg57jg7Pjg4njga8gIgorI34gIkI8ZHNlbGVjdCB1cGRhdGU+IOOBp+OBguOCi+OAgiIKKworI34gbXNnaWQgIiIKKyN+ICJEaXNwbGF5IGRldGFpbHMgYWJvdXQgSTxwYWNrYWdlLW5hbWU+LCBhcyBmb3VuZCBpbiBJPC92YXIvbGliL2Rwa2cvIgorI34gImF2YWlsYWJsZT4uIgorI34gbXNnc3RyICIiCisjfiAiSTwvdmFyL2xpYi9kcGtnL2F2YWlsYWJsZT4g44Gr44GC44KLIEk8cGFja2FnZS1uYW1lPiDjgavplqLjgZnjgovmg4XloLHjgpLooajnpLrjgZnjgovjgIIiCisKKyN+IG1zZ2lkICIiCisjfiAiU2VuZCBwYWNrYWdlIHN0YXR1cyBpbmZvIHRvIGZpbGUgZGVzY3JpcHRvciBJPEU8bHQ+bkU8Z3Q+Pi4gVGhpcyBjYW4gYmUgIgorI34gImdpdmVuIG11bHRpcGxlIHRpbWVzLiBTdGF0dXMgdXBkYXRlcyBhcmUgb2YgdGhlIGZvcm0gYHN0YXR1czogIgorI34gIkU8bHQ+cGtnRTxndD46IEU8bHQ+cGtnIHN0YXRlRTxndD4nLiAgRXJyb3JzIGFyZSByZXBvcnRlZCBhcyBgc3RhdHVzOiAiCisjfiAiRTxsdD5wa2dFPGd0PjogZXJyb3I6IGV4dGVuZC1lcnJvci1tZXNzYWdlJy4gIENvbmZpZ3VyYXRpb24gZmlsZSAiCisjfiAiY29uZmxpY3RzIGFyZSByZXBvcnRlZCBhcyBgc3RhdHVzOiBjb25mZmlsZS1wcm9tcHQ6IGNvbmZmaWxlIDogJ2N1cnJlbnQtIgorI34gImNvbmZmaWxlJyAnbmV3LWNvbmZmaWxlJyB1c2VyZWRpdGVkIGRpc3RlZGl0ZWQnLiIKKyN+IG1zZ3N0ciAiIgorI34gIuODleOCoeOCpOODq+iomOi/sOWtkCBJPEU8bHQ+bkU8Z3Q+PiDjgavjg5Hjg4PjgrHjg7zjgrjnirbmhYvjga7mg4XloLHjgpLpgIHjgovjgILjgZPjgozjga/opIfmlbDkuI7jgYgiCisjfiAi44KL44GT44Go44GM44Gn44GN44KL44CC54q25oWL44Gu5oOF5aCx44GvIGBzdGF0dXM6IEU8bHQ+cGtnRTxndD46IEU8bHQ+cGtnICIKKyN+ICJxc3RhdGVFPGd0Picg44Gu5b2i5byP44Gn44GC44KL44CC44Ko44Op44O844GvIGBzdGF0dXM6IEU8bHQ+cGtnRTxndD46IGVycm9yOiBleHRlbmQtIgorI34gImVycm9yLW1lc3NhZ2UnIOOBqOOBl+OBpuWgseWRiuOBleOCjOOCi+OAguioreWumuODleOCoeOCpOODq+OBruihneeqgeOBryBgc3RhdHVzOiBjb25mZmlsZS0iCisjfiAicHJvbXB0OiBjb25mZmlsZSA6ICdjdXJyZW50LWNvbmZmaWxlJyAnbmV3LWNvbmZmaWxlJyB1c2VyZWRpdGVkICIKKyN+ICJkaXN0ZWRpdGVkJyDjgajjgZfjgabloLHlkYrjgZXjgozjgovjgIIiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwOC0wMS0wMyIKKyN+IG1zZ3N0ciAiMjAwNi0wMi0yOCIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA3LTA5LTI0IgorI34gbXNnc3RyICIyMDA2LTAyLTI4IgorCisjLCBmdXp6eQorI34gbXNnaWQgIkI8LWI+IEk8ZGlyZWN0b3J5PiBbSTxvcmlnLWRpcmVjdG9yeT58STxvcmlnLXRhcmd6PnxcXChhcVxcKGFxXSIKKyN+IG1zZ3N0ciAiQjxkcGtnLWRlYj4gQjwtYj58QjwtLWJ1aWxkPiBJPGRpcmVjdG9yeT4gW0k8YXJjaGl2ZT58STxkaXJlY3Rvcnk+XSIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA3LTAzLTA4IgorI34gbXNnc3RyICIyMDA2LTAyLTI4IgorCisjfiBtc2dpZCAiIgorI34gIkRvbid0IGFjdHVhbGx5IGRvIGFueXRoaW5nLCBqdXN0IHNheSB3aGF0IHdvdWxkIGJlIGRvbmUuICBUaGlzIG9wdGlvbiBpcyAiCisjfiAibm90IHlldCBpbXBsZW1lbnRlZC4iCisjfiBtc2dzdHIgIiIKKyN+ICLlrp/pmpvjga7kvZzmpa3jga/kvZXjgoLjgZvjgZrjgIHooYzjgYbkuojlrprjga7kvZzmpa3jgavjgaTjgYTjgabooajnpLrjgZnjgovjgILjgZPjga7jgqrjg5fjgrfjg6fjg7Pjga/jgb7jgaAiCisjfiAi5a6f6KOF44GV44KM44Gm44GE44Gq44GE44CCIgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDctMDktMjgiCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyN+IG1zZ2lkICJtYWlsdG86am9leWhAZGViaWFuLm9yZyIKKyN+IG1zZ3N0ciAibWFpbHRvOmpvZXloQGRlYmlhbi5vcmciCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiRTxsdD5qb2V5aEBkZWJpYW4ub3JnRTxndD4iCisjfiBtc2dzdHIgIkU8bHQ+am9leWhAZGViaWFuLm9yZ0U8Z3Q+LiIKKworI34gbXNnaWQgIm1haWx0bzp3YWtrZXJtYUBkZWJpYW4ub3JnIgorI34gbXNnc3RyICJtYWlsdG86d2Fra2VybWFAZGViaWFuLm9yZyIKKworI34gbXNnaWQgIkU8bHQ+d2Fra2VybWFAZGViaWFuLm9yZ0U8Z3Q+IgorI34gbXNnc3RyICJFPGx0Pndha2tlcm1hQGRlYmlhbi5vcmdFPGd0PiIKKworI34gbXNnaWQgIiIKKyN+ICJTZWUgSTwvdXNyL3NoYXJlL2RvYy9kcGtnL1RIQU5LUz4gZm9yIHRoZSBsaXN0IG9mIHBlb3BsZSB3aG8gaGF2ZVxuIgorI34gImNvbnRyaWJ1dGVkIHRvIEI8ZHBrZz4uXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJCPGRwa2c+IOOBq+iyoueMruOBl+OBn+S6uuOBruODquOCueODiOOBryBCPC91c3Ivc2hhcmUvZG9jL2Rwa2cvVEhBTktTPiDjgatcbiIKKyN+ICLmjJnjgZLjgabjgYLjgovjgIJcbiIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA3LTA4LTMxIgorI34gbXNnc3RyICIyMDA2LTA2LTE3IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDctMDUtMTUiCisjfiBtc2dzdHIgIjIwMDYtMDYtMTciCisKKyN+IG1zZ2lkICIiCisjfiAiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbmNlIHZlcnNpb24gMiBvciAiCisjfiAibGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuIgorI34gbXNnc3RyICIiCisjfiAiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbmNlIHZlcnNpb24gMiBvciAiCisjfiAibGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuIgorCisjLCBmdXp6eQorI34gbXNnaWQgIkNPUFlSSUdIVCIKKyN+IG1zZ3N0ciAiIgorI34gIiMtIy0jLSMtIyAgamEucG8gKGRwa2cgbWFuIHBhZ2VzKSAgIy0jLSMtIy0jXG4iCisjfiAi6JGX5L2c5qipXG4iCisjfiAiIy0jLSMtIy0jICBqYS5wbyAoZHBrZyBtYW4gcGFnZXMpICAjLSMtIy0jLSNcbiIKKyN+ICJDT1BZUklHSFQiCisKKyN+IG1zZ2lkICJCPGRwa2cgLUM+IHwgQjwtLWF1ZGl0PiIKKyN+IG1zZ3N0ciAiQjxkcGtnIC1DPiB8IEI8LS1hdWRpdD4iCisKKyN+IG1zZ2lkICJCPGRwa2cgLS1oZWxwPiIKKyN+IG1zZ3N0ciAiQjxkcGtnIC0taGVscD4iCisKKyN+IG1zZ2lkICJCPGRwa2cgLURoID58QjwgLS1kZWJ1Zz1oZWxwPiIKKyN+IG1zZ3N0ciAiQjxkcGtnIC1EaCA+fEI8IC0tZGVidWc9aGVscD4iCisKKyN+IG1zZ2lkICJCPGRwa2cgLS1saWNlbmNlPiB8IEI8ZHBrZyAtLWxpY2Vuc2U+IgorI34gbXNnc3RyICJCPGRwa2cgLS1saWNlbmNlPiB8IEI8ZHBrZyAtLWxpY2Vuc2U+IgorCisjfiBtc2dpZCAiQjxkcGtnIC0tdmVyc2lvbj4iCisjfiBtc2dzdHIgIkI8ZHBrZyAtLXZlcnNpb24+IgorCisjfiBtc2dpZCAiQjwtLXJvb3Q9Pkk8ZGlyPiB8IEI8LS1hZG1pbmRpcj0+STxkaXI+IHwgQjwtLWluc3RkaXI9Pkk8ZGlyPiIKKyN+IG1zZ3N0ciAiQjwtLXJvb3Q9Pkk8ZGlyPiB8IEI8LS1hZG1pbmRpcj0+STxkaXI+IHwgQjwtLWluc3RkaXI9Pkk8ZGlyPiIKKworIywgZnV6enkKKyN+IG1zZ2lkICIiCisjfiAiQjxkcGtnLWRlYj4gYW5kIHRoaXMgbWFucGFnZSB3ZXJlIHdyaXR0ZW4gYnkgSWFuIEphY2tzb24uICBUaGV5IGFyZSAiCisjfiAiQ29weXJpZ2h0IChDKSAxOTk1LTE5OTYgYnkgaGltIGFuZCByZWxlYXNlZCB1bmRlciB0aGUgR05VIEdlbmVyYWwgUHVibGljICIKKyN+ICJMaWNlbmNlIHZlcnNpb24gMiBvciBsYXRlcjsgdGhlcmUgaXMgTk8gV0FSUkFOVFkuIFNlZSBJPC91c3Ivc2hhcmUvZG9jLyIKKyN+ICJkcGtnL2NvcHlyaWdodD4gYW5kIEk8L3Vzci9zaGFyZS9jb21tb24tbGljZW5zZXMvR1BMPiBmb3IgZGV0YWlscy4iCisjfiBtc2dzdHIgIiIKKyN+ICJCPGRwa2ctZGViPiDjgajjgZPjga7jg57jg4vjg6XjgqLjg6vjg5rjg7zjgrjjga8gSWFuIEphY2tzb24g44GM5L2c5oiQ44GX44Gf44CC44GT44KM44KJ44Gu6JGX5L2cIgorI34gIuaoqeOBr+W9vOOBq+OBguOCiihDb3B5cmlnaHQgKEMpMTk5NS0xOTk2KeOAgUdOVSDkuIDoiKzlhazmnInkvb/nlKjoqLHoq77jgavjgojjgorpoJLluIPjgZXjgowiCisjfiAi44KL44CC44GT44KM44KJ44Gv54Sh5L+d6Ki844Gn44GC44KL44CC6Kmz57Sw44GvIEI8L3Vzci9zaGFyZS9kb2MvZHBrZy9jb3B5cmlnaHQ+IOOBqCBCPC8iCisjfiAidXNyL3NoYXJlL2NvbW1vbi1saWNlbnNlcy9HUEw+IOOCkuWPgueFp+OBmeOCi+OBk+OBqOOAgiIKKworI34gbXNnaWQgIiIKKyN+ICJDb3B5cmlnaHQgMTk5NSwxOTk2IEVyaWNrIEJyYW5kZXJob3JzdC4gIEI8ZHBrZy1uYW1lPiBpcyBmcmVlIHNvZnR3YXJlOyAiCisjfiAic2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSB2ZXJzaW9uIDIgb3IgbGF0ZXIgZm9yIGNvcHlpbmcgIgorI34gImNvbmRpdGlvbnMuIFRoZXJlIGlzIEI8bm8+IHdhcnJhbnR5LiIKKyN+IG1zZ3N0ciAiIgorI34gIkNvcHlyaWdodCAxOTk1LDE5OTYgRXJpY2sgQnJhbmRlcmhvcnN0LiAgQjxkcGtnLW5hbWU+IGlzIGZyZWUgc29mdHdhcmU7ICIKKyN+ICJzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbmNlIHZlcnNpb24gMiBvciBsYXRlciBmb3IgY29weWluZyAiCisjfiAiY29uZGl0aW9ucy4gVGhlcmUgaXMgQjxubz4gd2FycmFudHkuIgorCisjfiBtc2dpZCAiQ29weXJpZ2h0IDIwMDEgV2ljaGVydCBBa2tlcm1hbiIKKyN+IG1zZ3N0ciAiQ29weXJpZ2h0IDIwMDEgV2ljaGVydCBBa2tlcm1hbiIKKworIywgZnV6enkKKyN+IG1zZ2lkICIiCisjfiAiQjxkcGtnLXNwbGl0PiBhbmQgdGhpcyBtYW5wYWdlIHdlcmUgd3JpdHRlbiBieSBJYW4gSmFja3Nvbi4gVGhleSBhcmUgIgorI34gIkNvcHlyaWdodCAoQykgMTk5NS0xOTk2IGJ5IGhpbSBhbmQgcmVsZWFzZWQgdW5kZXIgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyAiCisjfiAiTGljZW5jZSB2ZXJzaW9uIDIgb3IgbGF0ZXI7IHRoZXJlIGlzIE5PIFdBUlJBTlRZLiBTZWUgSTwvdXNyL3NoYXJlL2RvYy8iCisjfiAiZHBrZy9jb3B5cmlnaHQ+IGFuZCBJPC91c3Ivc2hhcmUvY29tbW9uLWxpY2Vuc2VzL0dQTD4gZm9yIGRldGFpbHMuIgorI34gbXNnc3RyICIiCisjfiAiQjxkcGtnLWRlYj4g44Go44GT44Gu44Oe44OL44Ol44Ki44Or44Oa44O844K444GvIElhbiBKYWNrc29uIOOBjOS9nOaIkOOBl+OBn+OAguOBk+OCjOOCieOBruiRl+S9nCIKKyN+ICLmqKnjga/lvbzjgavjgYLjgoooQ29weXJpZ2h0IChDKTE5OTUtMTk5NinjgIFHTlUg5LiA6Iis5YWs5pyJ5L2/55So6Kix6Ku+44Gr44KI44KK6aCS5biD44GV44KMIgorI34gIuOCi+OAguOBk+OCjOOCieOBr+eEoeS/neiovOOBp+OBguOCi+OAguips+e0sOOBryBCPC91c3Ivc2hhcmUvZG9jL2Rwa2cvY29weXJpZ2h0PiDjgaggQjwvIgorI34gInVzci9zaGFyZS9jb21tb24tbGljZW5zZXMvR1BMPiDjgpLlj4LnhafjgZnjgovjgZPjgajjgIIiCisKKyN+IG1zZ2lkICJDb3B5cmlnaHQgMjAwMCBXaWNoZXJ0IEFra2VybWFuIgorI34gbXNnc3RyICJDb3B5cmlnaHQgMjAwMCBXaWNoZXJ0IEFra2VybWFuIgorCisjfiBtc2dpZCAiIgorI34gIkNvcHlyaWdodCAxOTk0LCBJYW4gSmFja3Nvbi4gIEI8aW5zdGFsbC1pbmZvPiBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlICIKKyN+ICJHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSB2ZXJzaW9uIDIgb3IgbGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gIgorI34gIlRoZXJlIGlzIEk8bm8+IHdhcnJhbnR5LiIKKyN+IG1zZ3N0ciAiIgorI34gIkNvcHlyaWdodCAxOTk0LCBJYW4gSmFja3Nvbi4gIEI8aW5zdGFsbC1pbmZvPiBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlICIKKyN+ICJHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSB2ZXJzaW9uIDIgb3IgbGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gIgorI34gIlRoZXJlIGlzIEk8bm8+IHdhcnJhbnR5LiIKKworI34gbXNnaWQgIiIKKyN+ICJEZWJpYW4gdXBkYXRlLWFsdGVybmF0aXZlcyBpcyBjb3B5cmlnaHQgMTk5NSBJYW4gSmFja3Nvbi4gSXQgaXMgZnJlZSAiCisjfiAic29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgdmVyc2lvbiAyIG9yIGxhdGVyIGZvciAiCisjfiAiY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS4iCisjfiBtc2dzdHIgIiIKKyN+ICJEZWJpYW4gdXBkYXRlLWFsdGVybmF0aXZlcyBpcyBjb3B5cmlnaHQgMTk5NSBJYW4gSmFja3Nvbi4gSXQgaXMgZnJlZSAiCisjfiAic29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgdmVyc2lvbiAyIG9yIGxhdGVyIGZvciAiCisjfiAiY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS4iCisKKyN+IG1zZ2lkICIiCisjfiAiVGhpcyBtYW51YWwgcGFnZSBpcyBjb3B5cmlnaHQgMTk5Ny85OCBDaGFybGVzIEJyaXNjb2UtU21pdGguICBUaGlzIGlzICIKKyN+ICJmcmVlIGRvY3VtZW50YXRpb247IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgdmVyc2lvbiAyIG9yIGxhdGVyICIKKyN+ICJmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyBXQVJSQU5UWS4iCisjfiBtc2dzdHIgIiIKKyN+ICJUaGlzIG1hbnVhbCBwYWdlIGlzIGNvcHlyaWdodCAxOTk3Lzk4IENoYXJsZXMgQnJpc2NvZS1TbWl0aC4gIFRoaXMgaXMgIgorI34gImZyZWUgZG9jdW1lbnRhdGlvbjsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSB2ZXJzaW9uIDIgb3IgbGF0ZXIgIgorI34gImZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIFdBUlJBTlRZLiIKKworI34gbXNnaWQgIiIKKyN+ICJZb3UgY2FuIGZpbmQgdGhlIEdOVSBHUEwgaW4gL3Vzci9zaGFyZS9jb21tb24tbGljZW5zZXMvR1BMIG9uIGFueSBEZWJpYW4gIgorI34gInN5c3RlbS4iCisjfiBtc2dzdHIgIiIKKyN+ICJZb3UgY2FuIGZpbmQgdGhlIEdOVSBHUEwgaW4gL3Vzci9zaGFyZS9jb21tb24tbGljZW5zZXMvR1BMIG9uIGFueSBEZWJpYW4gIgorI34gInN5c3RlbS4iCisKKyN+IG1zZ2lkICIyMDA2LTA0LTA5IgorI34gbXNnc3RyICIyMDA2LTA0LTA5IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDctMDMtMTMiCisjfiBtc2dzdHIgIjIwMDYtMDYtMTciCisKKyN+IG1zZ2lkICJJPFN0YW5kYXJkIGZvciB0aGUgRm9ybWF0IG9mIEFSUEEgSW50ZXJuZXQgVGV4dCBNZXNzYWdlcz4gKFJGQzgyMiksIgorI34gbXNnc3RyICIiCisjfiAiSTxBUlBB44Kk44Oz44K/44O844ON44OD44OI44OG44Kt44K544OI44Oh44OD44K744O844K444Gu44OV44Kp44O844Oe44OD44OI44Gu5qiZ5rqWIChTdGFuZGFyZCBmb3IgIgorI34gInRoZSBGb3JtYXQgb2YgQVJQQSBJbnRlcm5ldCBUZXh0IE1lc3NhZ2VzKT4gKFJGQzgyMiksIgorCisjfiBtc2dpZCAiIgorI34gIkk8UmVxdWlyZW1lbnRzIGZvciBJbnRlcm5ldCBIb3N0cyAtLSBBcHBsaWNhdGlvbiBhbmQgU3VwcG9ydD4gKFJGQzExMjMpICIKKyN+ICJzZWN0aW9uIDUuMi4xNCwiCisjfiBtc2dzdHIgIiIKKyN+ICJJPOOCpOODs+OCv+ODvOODjeODg+ODiOODm+OCueODiOOBuOOBruimgeaxguS6i+mghSAtLSDjgqLjg5fjg6rjgrHjg7zjgrfjg6fjg7PjgajjgrXjg53jg7zjg4ggIgorI34gIihSZXF1aXJlbWVudHMgZm9yIEludGVybmV0IEhvc3RzIC0tIEFwcGxpY2F0aW9uIGFuZCBTdXBwb3J0KT4gKFJGQzExMjMpICIKKyN+ICI1LjIuMTQg56+ALCIKKworI34gbXNnaWQgIkI8ZGF0ZT4oMSkuIgorI34gbXNnc3RyICJCPGRhdGU+KDEpIgorCisjfiBtc2dpZCAiIgorI34gIkI8ODIyLWRhdGU+IGFuZCB0aGlzIG1hbnBhZ2Ugd2VyZSB3cml0dGVuIGJ5IElhbiBKYWNrc29uLiBUaGV5IGFyZSBoZXJlYnkgIgorI34gInBsYWNlZCBieSBoaW0gaW50byB0aGUgcHVibGljIGRvbWFpbi4iCisjfiBtc2dzdHIgIiIKKyN+ICJCPDgyMi1kYXRlPiDjgajjgZPjga7jg57jg4vjg6XjgqLjg6vjg5rjg7zjgrjjga8gSWFuIEphY2tzb24g44Gr44KI44Gj44Gm5pu444GL44KM44Gf44CC44Gd44GXIgorI34gIuOBpuOAgeW9vOOBruaJi+OBq+OCiOOBo+OBpiBwdWJsaWMgZG9tYWluIOOBqOOBleOCjOOBpuOBhOOCi+OAgiIKKworI34gbXNnaWQgIiIKKyN+ICJCPGNsZWFudXAtaW5mbz4gW0I8LS1oZWxwPl0gW0I8LS11bnNhZmU+XSBbQjwtLXZlcnNpb24+XSBbQjwtLT5dICIKKyN+ICJbSTxFPGx0PmRpcm5hbWVFPGd0Pj5dIgorI34gbXNnc3RyICIiCisjfiAiQjxjbGVhbnVwLWluZm8+IFtCPC0taGVscD5dIFtCPC0tdW5zYWZlPl0gW0I8LS12ZXJzaW9uPl0gW0I8LS0+XSBbSTxFPGx0PiIKKyN+ICLjg4fjgqPjg6zjgq/jg4jjg6rlkI1FPGd0Pj5dIgorCisjfiBtc2dpZCAiT3V0cHV0IHRoZSBoZWxwIHNjcmVlbiBhbmQgZXhpdCBzdWNjZXNzZnVsbHkuIgorI34gbXNnc3RyICLjg5jjg6vjg5fjgpLooajnpLrjgZfjgIHmraPluLjntYLkuobjgZnjgovjgIIiCisKKyN+IG1zZ2lkICJPdXRwdXQgdmVyc2lvbiBhbmQgZXhpdCBzdWNjZXNzZnVsbHkuIgorI34gbXNnc3RyICLjg5Djg7zjgrjjg6fjg7PjgpLooajnpLrjgZfjgIHmraPluLjntYLkuobjgZnjgovjgIIiCisKKyN+IG1zZ2lkICJQcmludCBhIHVzYWdlIG1lc3NhZ2UuIgorI34gbXNnc3RyICLliKnnlKjmlrnms5XjgpLooajnpLrjgZnjgovjgIIiCisKKyN+IG1zZ2lkICIyMDA2LTA1LTIzIgorI34gbXNnc3RyICIyMDA2LTA1LTIzIgorCisjfiBtc2dpZCAiQjxkcGtnLWRlYj4gQjwtVz58QjwtLXNob3c+IFtCPC0tc2hvd2Zvcm1hdD49STxmb3JtYXQ+XSBJPGFyY2hpdmU+IgorI34gbXNnc3RyICJCPGRwa2ctZGViPiBCPC1XPnxCPC0tc2hvdz4gW0I8LS1zaG93Zm9ybWF0Pj1JPGZvcm1hdD5dIEk8YXJjaGl2ZT4iCisKKyN+IG1zZ2lkICIiCisjfiAiQjxkcGtnLWRlYj4gQjwteD58QjwtLWV4dHJhY3Q+fEI8LVg+fEI8LS12ZXh0cmFjdD4gSTxhcmNoaXZlIGRpcmVjdG9yeT4iCisjfiBtc2dzdHIgIiIKKyN+ICJCPGRwa2ctZGViPiBCPC14PnxCPC0tZXh0cmFjdD58QjwtWD58QjwtLXZleHRyYWN0PiBJPGFyY2hpdmUgZGlyZWN0b3J5PiIKKworI34gbXNnaWQgIkI8LS1idWlsZD4sIEI8LWI+IgorI34gbXNnc3RyICJCPC0tYnVpbGQ+LCBCPC1iPiIKKworI34gbXNnaWQgIiIKKyN+ICJZb3UgY2FuIHNwZWNpZnkgdGhlIGNvbXByZXNzaW9uIGxldmVsIHVzZWQgYnkgYWRkaW5nIGEgQjwteiM+IG9wdGlvbi4gICIKKyN+ICJCPGRwa2ctZGViPiB3aWxsIHBhc3MgdGhhdCBvcHRpb24gb24gdG8gZ3ppcC4iCisjfiBtc2dzdHIgIiIKKyN+ICLlnKfnuK7jg6zjg5njg6vjgpLmjIflrprjgZnjgovloLTlkIjjga/jgIEgQjwteiM+IOOCquODl+OCt+ODp+ODs+OCkui/veWKoOOBmeOCi+OAgiBCPGRwa2ctZGViPiAiCisjfiAi44Gv44CB44GT44Gu44Kq44OX44K344On44Oz44KSIGd6aXAg44Gr5rih44GZ44CCIgorCisjfiBtc2dpZCAiQjwtLWluZm8+LCBCPC1JPiIKKyN+IG1zZ3N0ciAiQjwtLWluZm8+LCBCPC1JPiIKKworI34gbXNnaWQgIkI8LS1zaG93PiwgQjwtVz4iCisjfiBtc2dzdHIgIkI8LS1zaG93PiwgQjwtVz4iCisKKyN+IG1zZ2lkICJCPC0tZmllbGQ+LCBCPC1mPiIKKyN+IG1zZ3N0ciAiQjwtLWZpZWxkPiwgQjwtZj4iCisKKyN+IG1zZ2lkICJCPC0tY29udGVudHM+LCBCPC1jPiIKKyN+IG1zZ3N0ciAiQjwtLWNvbnRlbnRzPiwgQjwtYz4iCisKKyN+IG1zZ2lkICJCPC0tZXh0cmFjdD4sIEI8LXg+LCBCPC0tdmV4dHJhY3Q+LCBCPC1YPiIKKyN+IG1zZ3N0ciAiQjwtLWV4dHJhY3Q+LCBCPC14PiwgQjwtLXZleHRyYWN0PiwgQjwtWD4iCisKKyN+IG1zZ2lkICJCPC0tZnN5cy10YXJmaWxlPiIKKyN+IG1zZ3N0ciAiQjwtLWZzeXMtdGFyZmlsZT4iCisKKyN+IG1zZ2lkICJCPC0tY29udHJvbD4sIEI8LWU+IgorI34gbXNnc3RyICJCPC0tY29udHJvbD4sIEI8LWU+IgorCisjfiBtc2dpZCAiQjwtLWhlbHA+LCBCPC1oPiIKKyN+IG1zZ3N0ciAiQjwtLWhlbHA+LCBCPC1oPiIKKworI34gbXNnaWQgIiIKKyN+ICJQcmludHMgQjxkcGtnLWRlYj4ncyB1c2FnZSBtZXNzYWdlLCBnaXZpbmcgYSBzdW1tYXJ5IG9mIGl0cyBvcHRpb25zIGFuZCAiCisjfiAidGhlaXIgdXNlcy4iCisjfiBtc2dzdHIgIiIKKyN+ICJCPGRwa2ctZGViPiDjga7kvb/nlKjmlrnms5XjgIHjgaTjgb7jgorjgZnjgbnjgabjga7jgqrjg5fjgrfjg6fjg7PjgajjgZ3jga7kvb/jgYTmlrnjga7opoHntITjgpLooajnpLrjgZkiCisjfiAi44KL44CCIgorCisjfiBtc2dpZCAiUHJpbnRzIEI8ZHBrZy1kZWI+J3MgdmVyc2lvbiBudW1iZXIuIgorI34gbXNnc3RyICJCPGRwa2ctZGViPiDjga7jg5Djg7zjgrjjg6fjg7Pnlarlj7fjgpLooajnpLrjgZnjgovjgIIiCisKKyN+IG1zZ2lkICJCPC0tbGljZW5jZT4iCisjfiBtc2dzdHIgIkI8LS1saWNlbmNlPiIKKworI34gbXNnaWQgIiIKKyN+ICJQcmludHMgaW5mb3JtYXRpb24gYWJvdXQgQjxkcGtnLWRlYj4ncyBjb3B5cmlnaHQgbGljZW5zaW5nIGFuZCBsYWNrIG9mICIKKyN+ICJ3YXJyYW50eS4gKFRoZSBBbWVyaWNhbiBzcGVsbGluZyBCPC0tbGljZW5zZT4gaXMgYWxzbyBzdXBwb3J0ZWQpLiIKKyN+IG1zZ3N0ciAiIgorI34gIkI8ZHBrZy1kZWI+IOOBruiRl+S9nOaoqeOBqOeEoeS/neiovOOBq+mWouOBmeOCi+aDheWgseOCkuihqOekuuOBmeOCiyjjgqLjg6Hjg6rjgqvlvI/jga7ntrTjgorjgafjgYLjgosgIgorI34gIkI8LS1saWNlbnNlPiDjgoLjgrXjg53jg7zjg4jjgZfjgabjgYTjgosp44CCIgorCisjfiBtc2dpZCAiT1RIRVIgT1BUSU9OUyIKKyN+IG1zZ3N0ciAi44Gd44Gu5LuW44Gu44Kq44OX44K344On44OzIgorCisjfiBtc2dpZCAiQjwtLWRlYnVnPiwgQjwtRD4iCisjfiBtc2dzdHIgIkI8LS1kZWJ1Zz4sIEI8LUQ+IgorCisjfiBtc2dpZCAiQjxkcGtnLWRpdmVydD4gW0k8b3B0aW9ucz5dIEI8LS1yZW1vdmU+IEk8RTxsdD5maWxlRTxndD4+IgorI34gbXNnc3RyICJCPGRwa2ctZGl2ZXJ0PiBbSTxvcHRpb25zPl0gQjwtLXJlbW92ZT4gSTxFPGx0PmZpbGVFPGd0Pj4iCisKKyN+IG1zZ2lkICJCPGRwa2ctZGl2ZXJ0PiBbSTxvcHRpb25zPl0gQjwtLWxpc3Q+IEk8RTxsdD5nbG9iLXBhdHRlcm5FPGd0Pj4iCisjfiBtc2dzdHIgIkI8ZHBrZy1kaXZlcnQ+IFtJPG9wdGlvbnM+XSBCPC0tbGlzdD4gSTxFPGx0Pmdsb2ItcGF0dGVybkU8Z3Q+PiIKKworI34gbXNnaWQgIkI8ZHBrZy1kaXZlcnQ+IFtJPG9wdGlvbnM+XSBCPC0tdHJ1ZW5hbWU+IEk8RTxsdD5maWxlRTxndD4+IgorI34gbXNnc3RyICJCPGRwa2ctZGl2ZXJ0PiBbSTxvcHRpb25zPl0gQjwtLXRydWVuYW1lPiBJPEU8bHQ+ZmlsZUU8Z3Q+PiIKKworI34gbXNnaWQgIiIKKyN+ICJCPGRwa2ctZGl2ZXJ0PiBpcyB0aGUgdXRpbGl0eSB1c2VkIHRvIHNldCB1cCBhbmQgdXBkYXRlIHRoZSBsaXN0IG9mICIKKyN+ICJkaXZlcnNpb25zLiBJdCBmdW5jdGlvbnMgaW4gdGhyZWUgYmFzaWMgbW9kZXMgLSBhZGRpbmcsIHJlbW92aW5nLCBhbmQgIgorI34gImxpc3RpbmcgZGl2ZXJzaW9ucy4gIFRoZSBvcHRpb25zIGFyZSBCPC0tYWRkPiwgQjwtLXJlbW92ZT4sIGFuZCBCPC0tIgorI34gImxpc3Q+LCByZXNwZWN0aXZlbHkuIEFkZGl0aW9uYWxseSwgaXQgY2FuIHByaW50IG91dCB0aGUgcmVhbCBuYW1lIGZvciBhICIKKyN+ICJkaXZlcnRlZCBmaWxlIHdpdGggQjwtLXRydWVuYW1lPi4gT3RoZXIgb3B0aW9ucyAobGlzdGVkIGJlbG93KSBtYXkgYWxzbyAiCisjfiAiYmUgc3BlY2lmaWVkLiIKKyN+IG1zZ3N0ciAiIgorI34gIkI8ZHBrZy1kaXZlcnQ+IOOBryBkaXZlcnNpb25zIOOBruODquOCueODiOOCkuioreWumuOAgeabtOaWsOOBmeOCi+OBn+OCgeOBruODpuODvOODhuOCo+ODquODhuOCoyIKKyN+ICLjgafjgYLjgovjgILjgZPjgozjga8gMyDjgaTjga7ln7rmnKzjg6Ljg7zjg4njga7mqZ/og73jgpLjgoLjgaPjgabjgYTjgovjgIJkaXZlcnNpb24g44Gu6L+95Yqg44CB5YmKIgorI34gIumZpOOAgeODquOCueODiOOBp+OBguOCi+OAguOBneOCjOOBnuOCjCBCPC0tYWRkPuOAgUI8LS1yZW1vdmU+44CBQjwtLWxpc3Q+IOOCquODl+OCt+ODp+ODs+OBp+aMhyIKKyN+ICLlrprjgZnjgovjgILjgZXjgonjgasgQjwtLXRydWVuYW1lPiDjgavjgojjgaPjgabpgIDpgb/jgZXjgozjgZ/jg5XjgqHjgqTjg6vjga7lrp/pmpvjga7lkI3liY3jgpLooajnpLoiCisjfiAi44GZ44KL44GT44Go44KC44Gn44GN44KL44CC5Lul5LiL44Gr44GC44GS44KJ44KM44Gm44GE44KL5LuW44Kq44OX44K344On44Oz44KC5oyH5a6a44GZ44KL44GT44Go44GM44Gn44GN44KL44CCIgorCisjfiBtc2dpZCAiT3V0cHV0IHNob3J0IHVzYWdlIGluc3RydWN0aW9ucywgYW5kIGV4aXQgc3VjY2Vzc2Z1bGx5LiIKKyN+IG1zZ3N0ciAi44OQ44O844K444On44Oz44Go57Ch5Y2Y44Gq5Yip55So5rOV44KS6KGo56S644GX44Gm5q2j5bi457WC5LqG44GZ44KL44CCIgorCisjfiBtc2dpZCAiT3V0cHV0IHByb2dyYW0gbmFtZSBhbmQgdmVyc2lvbiBhbmQgZXhpdCBzdWNjZXNzZnVsbHkuIgorI34gbXNnc3RyICLjg5fjg63jgrDjg6njg6DlkI3jgajjg5Djg7zjgrjjg6fjg7PjgpLooajnpLrjgZfjgabmraPluLjntYLkuobjgZnjgovjgIIiCisKKyN+IG1zZ2lkICIiCisjfiAiQjxkcGtnLW5hbWU+IFtCPC1hPnxCPC0tbm8tYXJjaGl0ZWN0dXJlPl0gW0I8LW8+fEI8LS1vdmVyd3JpdGU+XSBbQjwtcz58IgorI34gIkI8LS1zdWJkaXI+IFtJPGRpcj5dXSBbQjwtYz58QjwtLWNyZWF0ZS1kaXI+XSBbQjwtaD58QjwtLWhlbHA+XSBbQjwtdj58IgorI34gIkI8LS12ZXJzaW9uPl0gW0I8LWw+fEI8LS1saWNlbnNlPl0gW0I8LWs+fEI8LS1zeW1saW5rPl0gW0I8LS0+XSBbSTxmaWxlcz5dIgorI34gbXNnc3RyICIiCisjfiAiQjxkcGtnLW5hbWU+IFtCPC1hPnxCPC0tbm8tYXJjaGl0ZWN0dXJlPl0gW0I8LW8+fEI8LS1vdmVyd3JpdGU+XSBbQjwtcz58IgorI34gIkI8LS1zdWJkaXI+IFtJPGRpcj5dXSBbQjwtYz58QjwtLWNyZWF0ZS1kaXI+XSBbQjwtaD58QjwtLWhlbHA+XSBbQjwtdj58IgorI34gIkI8LS12ZXJzaW9uPl0gW0I8LWw+fEI8LS1saWNlbnNlPl0gW0I8LWs+fEI8LS1zeW1saW5rPl0gW0I8LS0+XSBbSTxmaWxlcz5dIgorCisjfiBtc2dpZCAiQjwtaCwgLS1oZWxwPiIKKyN+IG1zZ3N0ciAiQjwtaCwgLS1oZWxwPiIKKworI34gbXNnaWQgIlByaW50IGEgdXNhZ2UgbWVzc2FnZSBhbmQgZXhpdCBzdWNjZXNzZnVsbHkuIgorI34gbXNnc3RyICLliKnnlKjmlrnms5XjgpLooajnpLrjgZfjgabmraPluLjntYLkuobjgZnjgovjgIIiCisKKyN+IG1zZ2lkICIiCisjfiAiUHJpbnQgY29weXJpZ2h0IGluZm9ybWF0aW9uIGFuZCAoYSByZWZlcmVuY2UgdG8gR05VKSBsaWNlbnNlIGluZm9ybWF0aW9uICIKKyN+ICJhbmQgZXhpdCBzdWNjZXNzZnVsbHkuIgorI34gbXNnc3RyICLokZfkvZzmqKnmg4XloLHjgIHjg6njgqTjgrvjg7Pjgrnmg4XloLEoR05VIOOBuOOBruWPgueFpynjgpLooajnpLrjgZfjgabmraPluLjntYLkuobjgZnjgovjgIIiCisKKyN+IG1zZ2lkICJCPGRwa2ctcXVlcnk+IEI8LWw+fEI8LS1saXN0PiBJPHBhY2thZ2UtbmFtZS1wYXR0ZXJuPiAuLi4iCisjfiBtc2dzdHIgIkI8ZHBrZy1xdWVyeT4gQjwtbD58QjwtLWxpc3Q+IEk8cGFja2FnZS1uYW1lLXBhdHRlcm4+IC4uLiIKKworI34gbXNnaWQgIkI8ZHBrZy1xdWVyeT4gQjwtVz58QjwtLXNob3c+IEk8cGFja2FnZS1uYW1lLXBhdHRlcm4+IC4uLiIKKyN+IG1zZ3N0ciAiQjxkcGtnLXF1ZXJ5PiBCPC1XPnxCPC0tc2hvdz4gSTxwYWNrYWdlLW5hbWUtcGF0dGVybj4gLi4uIgorCisjfiBtc2dpZCAiQjxkcGtnLXF1ZXJ5PiBCPC1zPnxCPC0tc3RhdHVzPiBJPHBhY2thZ2UtbmFtZT4gLi4uIgorI34gbXNnc3RyICJCPGRwa2ctcXVlcnk+IEI8LXM+fEI8LS1zdGF0dXM+IEk8cGFja2FnZS1uYW1lPiAuLi4iCisKKyN+IG1zZ2lkICJCPGRwa2ctcXVlcnk+IEI8LUw+fEI8LS1saXN0ZmlsZXM+IEk8cGFja2FnZS1uYW1lPiAuLi4iCisjfiBtc2dzdHIgIkI8ZHBrZy1xdWVyeT4gQjwtTD58QjwtLWxpc3RmaWxlcz4gSTxwYWNrYWdlLW5hbWU+IC4uLiIKKworI34gbXNnaWQgIkI8ZHBrZy1xdWVyeT4gQjwtUz58QjwtLXNlYXJjaD4gSTxmaWxlbmFtZS1zZWFyY2gtcGF0dGVybj4gLi4uIgorI34gbXNnc3RyICJCPGRwa2ctcXVlcnk+IEI8LVM+fEI8LS1zZWFyY2g+IEk8ZmlsZW5hbWUtc2VhcmNoLXBhdHRlcm4+IC4uLiIKKworI34gbXNnaWQgIkI8ZHBrZy1xdWVyeT4gQjwtcD58QjwtLXByaW50LWF2YWlsPiBJPHBhY2thZ2UtbmFtZT4gLi4uIgorI34gbXNnc3RyICJCPGRwa2ctcXVlcnk+IEI8LXA+fEI8LS1wcmludC1hdmFpbD4gSTxwYWNrYWdlLW5hbWU+IC4uLiIKKworI34gbXNnaWQgIkI8ZHBrZy1xdWVyeT4gQjwtLWxpY2VuY2U+fEI8LS1saWNlbnNlPiIKKyN+IG1zZ3N0ciAiQjxkcGtnLXF1ZXJ5PiBCPC0tbGljZW5jZT58QjwtLWxpY2Vuc2U+IgorCisjfiBtc2dpZCAiQjxkcGtnLXF1ZXJ5PiBCPC0tdmVyc2lvbj4iCisjfiBtc2dzdHIgIkI8ZHBrZy1xdWVyeT4gQjwtLXZlcnNpb24+IgorCisjfiBtc2dpZCAiRGlzcGxheSBsaWNlbmNlIGFuZCBjb3B5cmlnaHQgaW5mb3JtYXRpb24uIgorI34gbXNnc3RyICLjg6njgqTjgrvjg7PjgrnjgajokZfkvZzmqKnmg4XloLHjgpLooajnpLrjgZnjgovjgIIiCisKKyN+IG1zZ2lkICJEaXNwbGF5IHZlcnNpb24gaW5mb3JtYXRpb24uIgorI34gbXNnc3RyICLjg5Djg7zjgrjjg6fjg7Pmg4XloLHjgpLooajnpLrjgZnjgovjgIIiCisKKyN+IG1zZ2lkICIiCisjfiAiQjxkcGtnLXNjYW5wYWNrYWdlcz4gW0I8LXU+XSBbQjwtYT4gSTxFPGx0PmFyY2hFPGd0Pj4gXSBbQjwtbT5dICIKKyN+ICJJPGJpbmFyeWRpcj4gSTxvdmVycmlkZWZpbGU+IFtJPHBhdGhwcmVmaXg+XSBCPEU8Z3Q+PiBJPFBhY2thZ2VzPiIKKyN+IG1zZ3N0ciAiIgorI34gIkI8ZHBrZy1zY2FucGFja2FnZXM+IFtCPC11Pl0gW0I8LWE+IEk8RTxsdD5hcmNoRTxndD4+IF0gW0I8LW0+XSAiCisjfiAiSTxiaW5hcnlkaXI+IEk8b3ZlcnJpZGVmaWxlPiBbSTxwYXRocHJlZml4Pl0gQjxFPGd0Pj4gSTxQYWNrYWdlcz4iCisKKyN+IG1zZ2lkICIiCisjfiAiV2hlbiBCPC1hPkk8RTxsdD5hcmNoRTxndD4+IGlzIHNwZWNpZmllZCwgdGhlbiBpbnN0ZWFkIG9mIHNjYW5uaW5nIGZvciAiCisjfiAiYWxsIGRlYnMsIGEgcGF0dGVybiBjb25zaXN0aW5nIG9mICpfYWxsLmRlYiBhbmQgKl9hcmNoLmRlYiBpcyB1c2VkLiIKKyN+IG1zZ3N0ciAiIgorI34gIkI8LWE+STxFPGx0PmFyY2hFPGd0Pj4g44KS5oyH5a6a44GX44Gf5aC05ZCI44Gv44CB44GZ44G544Gm44GuIGRlYiDjg5XjgqHjgqTjg6vjgpLjgrnjgq3jg6Pjg7PjgZkiCisjfiAi44KL5Luj44KP44KK44Gr44CBKl9hbGwuZGViIOOChCAqX2FyY2guZGViIOODkeOCv+ODvOODs+OBq+ODnuODg+ODgeOBmeOCi+ODleOCoeOCpOODq+OCkuWvvuixoeOBqOOBmSIKKyN+ICLjgovjgIIiCisKKyN+IG1zZ2lkICJUSEUgT1ZFUlJJREUgRklMRSIKKyN+IG1zZ3N0ciAiT1ZFUlJJREUg44OV44Kh44Kk44OrIgorCisjfiBtc2dpZCAiQ09NTU9OIE9QVElPTlMiCisjfiBtc2dzdHIgIuWFsemAmuOCquODl+OCt+ODp+ODsyIKKworIywgZnV6enkKKyN+IG1zZ2lkICJkcGtnLVNPVVJDRSBPUFRJT05TIgorI34gbXNnc3RyICLjgZ3jga7ku5bjga7jgqrjg5fjgrfjg6fjg7MiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjwteD4iCisjfiBtc2dzdHIgIkI8LUI+IgorCisjLCBmdXp6eQorI34gbXNnaWQgIkI8LUlFPGx0PmZpbGVuYW1lRTxndD4+IgorI34gbXNnc3RyICJCPC0tcmVtb3ZlPkk8IEU8bHQ+ZmlsZUU8Z3Q+PiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJCPGRwa2ctZ2VuY29udHJvbD4gZG9lcyBub3QgdGFrZSBhbnkgbm9uLW9wdGlvbiBhcmd1bWVudHMuIgorI34gbXNnc3RyICJCPDgyMi1kYXRlPiDjgavjga/lvJXmlbDjgoTjgqrjg5fjgrfjg6fjg7Pjga/jgarjgYTjgIIiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjxkcGtnLWdlbmNoYW5nZXM+IGRvZXMgbm90IHRha2UgYW55IG5vbi1vcHRpb24gYXJndW1lbnRzLiIKKyN+IG1zZ3N0ciAiQjw4MjItZGF0ZT4g44Gr44Gv5byV5pWw44KE44Kq44OX44K344On44Oz44Gv44Gq44GE44CCIgorCisjLCBmdXp6eQorI34gbXNnaWQgIkI8ZHBrZy1idWlsZHBhY2thZ2U+IGRvZXMgbm90IHRha2UgYW55IG5vbi1vcHRpb24gYXJndW1lbnRzLiIKKyN+IG1zZ3N0ciAiQjw4MjItZGF0ZT4g44Gr44Gv5byV5pWw44KE44Kq44OX44K344On44Oz44Gv44Gq44GE44CCIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICJCPGRwa2ctcGFyc2VjaGFuZ2Vsb2c+IGRvZXMgbm90IHRha2UgYW55IG5vbi1jb21tb24gb3B0aW9ucyBvciBub24tb3B0aW9uICIKKyN+ICJhcmd1bWVudHMuIgorI34gbXNnc3RyICJCPDgyMi1kYXRlPiDjgavjga/lvJXmlbDjgoTjgqrjg5fjgrfjg6fjg7Pjga/jgarjgYTjgIIiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiIgorI34gIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSB2ZXJzaW9uIDIgb3IgIgorI34gImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIFdBUlJBTlRZLiBTZWUgQjwvdXNyL3NoYXJlL2RvYy8iCisjfiAiZHBrZy9jb3B5cmlnaHQ+IGFuZCBCPC91c3Ivc2hhcmUvY29tbW9uLWxpY2Vuc2VzL0dQTD4gZm9yIGRldGFpbHMuIgorI34gbXNnc3RyICIiCisjfiAiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbmNlIHZlcnNpb24gMiBvciAiCisjfiAibGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuIgorCisjLCBmdXp6eQorI34gbXNnaWQgIkI8ZHBrZy1zcGxpdD4gQjwtbD58QjwtLWxpc3RxPiIKKyN+IG1zZ3N0ciAiQjxkcGtnLXF1ZXJ5PiBCPC0tbGljZW5jZT58QjwtLWxpY2Vuc2U+IgorCisjLCBmdXp6eQorI34gbXNnaWQgIkI8LS1qb2luPiwgQjwtaj4iCisjfiBtc2dzdHIgIkI8LS1pbmZvPiwgQjwtST4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjwtLWF1dG8+LCBCPC1hPiIKKyN+IG1zZ3N0ciAiQjwtLWluZm8+LCBCPC1JPiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJCPC0tbGlzdHE+LCBCPC1sPiIKKyN+IG1zZ3N0ciAiQjwtLWxpc3Q+IEk8bGluaz4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjwtLWRpc2NhcmQ+LCBCPC1kPiIKKyN+IG1zZ3N0ciAiQjwtLWJ1aWxkPiwgQjwtYj4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiIgorI34gIlByaW50cyBCPGRwa2ctc3BsaXQ+J3MgdXNhZ2UgbWVzc2FnZSwgZ2l2aW5nIGEgc3VtbWFyeSBvZiBpdHMgb3B0aW9ucyBhbmQgIgorI34gInRoZWlyIHVzZXMuIgorI34gbXNnc3RyICIiCisjfiAiQjxkcGtnLWRlYj4g44Gu5L2/55So5pa55rOV44CB44Gk44G+44KK44GZ44G544Gm44Gu44Kq44OX44K344On44Oz44Go44Gd44Gu5L2/44GE5pa544Gu6KaB57SE44KS6KGo56S644GZIgorI34gIuOCi+OAgiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJQcmludHMgQjxkcGtnLXNwbGl0PidzIHZlcnNpb24gbnVtYmVyLiIKKyN+IG1zZ3N0ciAiQjxkcGtnLWRlYj4g44Gu44OQ44O844K444On44Oz55Wq5Y+344KS6KGo56S644GZ44KL44CCIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICJQcmludHMgaW5mb3JtYXRpb24gYWJvdXQgQjxkcGtnLXNwbGl0PidzIGNvcHlyaWdodCBsaWNlbnNpbmcgYW5kIGxhY2sgb2YgIgorI34gIndhcnJhbnR5LiAoVGhlIEFtZXJpY2FuIHNwZWxsaW5nIEI8LS1saWNlbnNlPiBpcyBhbHNvIHN1cHBvcnRlZC4pIgorI34gbXNnc3RyICIiCisjfiAiQjxkcGtnLWRlYj4g44Gu6JGX5L2c5qip44Go54Sh5L+d6Ki844Gr6Zai44GZ44KL5oOF5aCx44KS6KGo56S644GZ44KLKOOCouODoeODquOCq+W8j+OBrue2tOOCiuOBp+OBguOCiyAiCisjfiAiQjwtLWxpY2Vuc2U+IOOCguOCteODneODvOODiOOBl+OBpuOBhOOCiynjgIIiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjwtLW5wcXVpZXQ+LCBCPC1RPiIKKyN+IG1zZ3N0ciAiQjwtLWJ1aWxkPiwgQjwtYj4iCisKKyN+IG1zZ2lkICIiCisjfiAiQjxkcGtnLXN0YXRvdmVycmlkZT4gW0k8b3B0aW9ucz5dIEI8LS1hZGQ+STwgRTxsdD51c2VyRTxndD4gIgorI34gIkU8bHQ+Z3JvdXBFPGd0PiBFPGx0Pm1vZGVFPGd0PiBFPGx0PmZpbGVFPGd0Pj4iCisjfiBtc2dzdHIgIiIKKyN+ICJCPGRwa2ctc3RhdG92ZXJyaWRlPiBbSTxvcHRpb25zPl0gQjwtLWFkZD5JPCBFPGx0PnVzZXJFPGd0PiAiCisjfiAiRTxsdD5ncm91cEU8Z3Q+IEU8bHQ+bW9kZUU8Z3Q+IEU8bHQ+ZmlsZUU8Z3Q+PiIKKworI34gbXNnaWQgIkI8ZHBrZy1zdGF0b3ZlcnJpZGU+IFtJPG9wdGlvbnM+XSBCPC0tcmVtb3ZlPkk8IEU8bHQ+ZmlsZUU8Z3Q+PiIKKyN+IG1zZ3N0ciAiQjxkcGtnLXN0YXRvdmVycmlkZT4gW0k8b3B0aW9ucz5dIEI8LS1yZW1vdmU+STwgRTxsdD5maWxlRTxndD4+IgorCisjfiBtc2dpZCAiIgorI34gIkI8ZHBrZy1zdGF0b3ZlcnJpZGU+IFtJPG9wdGlvbnM+XSBCPC0tbGlzdD4gW0k8RTxsdD5nbG9iLXBhdHRlcm5FPGd0Pj5dIgorI34gbXNnc3RyICIiCisjfiAiQjxkcGtnLXN0YXRvdmVycmlkZT4gW0k8b3B0aW9ucz5dIEI8LS1saXN0PiBbSTxFPGx0Pmdsb2ItcGF0dGVybkU8Z3Q+Pl0iCisKKyN+IG1zZ2lkICJCPC0tYWRtaW5kaXI+IgorI34gbXNnc3RyICJCPC0tYWRtaW5kaXI+IgorCisjfiBtc2dpZCAiQjxzdGFydC1zdG9wLWRhZW1vbj4gQjwtSD58QjwtLWhlbHA+IgorI34gbXNnc3RyICJCPHN0YXJ0LXN0b3AtZGFlbW9uPiBCPC1IPnxCPC0taGVscD4iCisKKyN+IG1zZ2lkICJCPHN0YXJ0LXN0b3AtZGFlbW9uPiBCPC1WPnxCPC0tdmVyc2lvbj4iCisjfiBtc2dzdHIgIkI8c3RhcnQtc3RvcC1kYWVtb24+IEI8LVY+fEI8LS12ZXJzaW9uPiIKKworI34gbXNnaWQgIkI8LUg+fEI8LS1oZWxwPiIKKyN+IG1zZ3N0ciAiQjwtSD58QjwtLWhlbHA+IgorCisjfiBtc2dpZCAiUHJpbnQgaGVscCBpbmZvcm1hdGlvbjsgdGhlbiBleGl0LiIKKyN+IG1zZ3N0ciAi44OY44Or44OX5oOF5aCx44KS5Ye65Yqb44GX44Gm57WC5LqG44GZ44KL44CCIgorCisjfiBtc2dpZCAiUHJpbnQgdmVyc2lvbiBpbmZvcm1hdGlvbjsgdGhlbiBleGl0LiIKKyN+IG1zZ3N0ciAi44OQ44O844K444On44Oz5oOF5aCx44KS5Ye65Yqb44GX44Gm57WC5LqG44GZ44KL44CCIgorCisjfiBtc2dpZCAiIgorI34gIkI8dXBkYXRlLWFsdGVybmF0aXZlcz4gW0k8b3B0aW9ucz5dIEI8LS1pbnN0YWxsPiBJPGdlbm5hbWUgc3ltbGluayBhbHRlcm4gIgorI34gInByaW9yaXR5PiBbQjwtLXNsYXZlPiBJPGdlbm5hbWUgc3ltbGluaz4gSTxhbHRlcm4+XS4uLiIKKyN+IG1zZ3N0ciAiIgorI34gIkI8dXBkYXRlLWFsdGVybmF0aXZlcz4gW0k8b3B0aW9ucz5dIEI8LS1pbnN0YWxsPiBJPGdlbm5hbWUgc3ltbGluayBhbHRlcm4gIgorI34gInByaW9yaXR5PiBbQjwtLXNsYXZlPiBJPGdlbm5hbWUgc3ltbGluaz4gSTxhbHRlcm4+XS4uLiIKKworI34gbXNnaWQgIkI8dXBkYXRlLWFsdGVybmF0aXZlcz4gW0k8b3B0aW9ucz5dIEI8LS1yZW1vdmU+IEk8bmFtZSBwYXRoPiIKKyN+IG1zZ3N0ciAiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBbSTxvcHRpb25zPl0gQjwtLXJlbW92ZT4gSTxuYW1lIHBhdGg+IgorCisjfiBtc2dpZCAiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBbSTxvcHRpb25zPl0gQjwtLXJlbW92ZS1hbGw+IEk8bmFtZT4iCisjfiBtc2dzdHIgIkI8dXBkYXRlLWFsdGVybmF0aXZlcz4gW0k8b3B0aW9ucz5dIEI8LS1yZW1vdmUtYWxsPiBJPG5hbWU+IgorCisjfiBtc2dpZCAiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBbSTxvcHRpb25zPl0gQjwtLWRpc3BsYXk+IEk8bmFtZT4iCisjfiBtc2dzdHIgIkI8dXBkYXRlLWFsdGVybmF0aXZlcz4gW0k8b3B0aW9ucz5dIEI8LS1kaXNwbGF5PiBJPG5hbWU+IgorCisjfiBtc2dpZCAiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBbSTxvcHRpb25zPl0gQjwtLWxpc3Q+IEk8bmFtZT4iCisjfiBtc2dzdHIgIkI8dXBkYXRlLWFsdGVybmF0aXZlcz4gW0k8b3B0aW9ucz5dIEI8LS1saXN0PiBJPG5hbWU+IgorCisjfiBtc2dpZCAiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBbSTxvcHRpb25zPl0gQjwtLWNvbmZpZz4gSTxuYW1lPiIKKyN+IG1zZ3N0ciAiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBbSTxvcHRpb25zPl0gQjwtLWNvbmZpZz4gSTxuYW1lPiIKKworI34gbXNnaWQgIkI8dXBkYXRlLWFsdGVybmF0aXZlcz4gW0k8b3B0aW9ucz5dIEI8LS1zZXQ+IEk8bmFtZSBwYXRoPiIKKyN+IG1zZ3N0ciAiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBbSTxvcHRpb25zPl0gQjwtLXNldD4gSTxuYW1lIHBhdGg+IgorCisjfiBtc2dpZCAiIgorI34gIkV4YWN0bHkgb25lIGFjdGlvbiBtdXN0IGJlIHNwZWNpZmllZCBpZiBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IGlzIHRvICIKKyN+ICJwZXJmb3JtIGFueSBtZWFuaW5nZnVsIHRhc2suICBBbnkgbnVtYmVyIG9mIHRoZSBjb21tb24gb3B0aW9ucyBtYXkgYmUgIgorI34gInNwZWNpZmllZCB0b2dldGhlciB3aXRoIGFueSBhY3Rpb24uIgorI34gbXNnc3RyICIiCisjfiAiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiDjgavkvZXjgonjgYvjga7mhI/lkbPjga7jgYLjgovku5XkuovjgpLjgZXjgZvjgovjgavjga/jgIHjgqLjgq/jgrfjg6fjg7PjgpIgIgorI34gIjEg44Gk44Gg44GR5oyH5a6a44GX44Gq44GR44KM44Gw44Gq44KJ44Gq44GE44CC5YWx6YCa44Kq44OX44K344On44Oz44Gv44CB44Gp44Gu44Ki44Kv44K344On44Oz44Go44KC44GE44GjIgorI34gIuOBl+OCh+OBq+OAgeOBhOOBj+OBpOOBp+OCguaMh+WumuOBl+OBpuOBi+OBvuOCj+OBquOBhOOAgiIKKworI34gbXNnaWQgIkdpdmUgc29tZSB1c2FnZSBpbmZvcm1hdGlvbi4iCisjfiBtc2dzdHIgIuWIqeeUqOazleOBq+mWouOBmeOCi+ihqOekuuOCkuihjOOBhuOAgiIKKworI34gbXNnaWQgIlRlbGwgd2hpY2ggdmVyc2lvbiBvZiBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IHRoaXMgaXMuIgorI34gbXNnc3RyICJCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IOOBruODkOODvOOCuOODp+ODs+OCkuihqOekuuOBmeOCi+OAgiIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA3LTA3LTE4IgorI34gbXNnc3RyICIyMDA2LTA2LTE3IgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vcG8vcGwuYWRkIGIvZHBrZy0xLjE2LjEuMS9tYW4vcG8vcGwuYWRkCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjAxMDcyMWEKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9wby9wbC5hZGQKQEAgLTAsMCArMSw5IEBACitQTzRBLUhFQURFUjptb2RlPWFmdGVyO3Bvc2l0aW9uPV5cLlRIO2JlZ2luYm91bmRhcnk9RmFrZVBvNGFCb3VuZGFyeQorLlNIICJUxYFVTUFDWkUiCitQaW90ciBSb3N6YXR5Y2tpIDxkZXh0ZXJAZGViaWFuLm9yZz4sIDE5OTkKKy5icgorQmFydG9zeiBGZcWEc2tpIDxmZW5pb0BkZWJpYW4ub3JnPiwgMjAwNC0yMDA1CisuYnIKK1JvYmVydCBMdWJlcmRhIDxyb2JlcnRAZGViaWFuLm9yZz4sIDIwMDYtMjAwOAorLmJyCitXaWt0b3IgV2FuZGFjaG93aWN6IDxzaXJ5ZXNAZ21haWwuY29tPiwgMjAwOApkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vcG8vcGwucG8gYi9kcGtnLTEuMTYuMS4xL21hbi9wby9wbC5wbwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hYjdhZWUzCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vcG8vcGwucG8KQEAgLTAsMCArMSwyMDAzMyBAQAorIyBUcmFuc2xhdGlvbiBvZiBkcGtnIG1hbiBwYWdlcyB0byBQb2xpc2gKKyMgQ29weXJpZ2h0IChDKSAxOTk5IFNvZnR3YXJlIGluIHRoZSBQdWJsaWMgSW50ZXJlc3QsIEluYy4KKyMgVGhpcyBmaWxlIGlzIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBzYW1lIGxpY2Vuc2UgYXMgdGhlIGRwa2cgcGFja2FnZS4KKyMKKyMgUm9iZXJ0IEx1YmVyZGEgPHJvYmVydEBkZWJpYW4ub3JnPiwgMjAwNi0yMDA4CisjIFdpa3RvciBXYW5kYWNob3dpY3ogPHNpcnllc0BnbWFpbC5jb20+LCAyMDA4LTIwMDkKK21zZ2lkICIiCittc2dzdHIgIiIKKyJQcm9qZWN0LUlkLVZlcnNpb246IGRwa2cgMS4xNS40XG4iCisiUE9ULUNyZWF0aW9uLURhdGU6IDIwMTEtMTAtMTQgMDc6MTErMDMwMFxuIgorIlBPLVJldmlzaW9uLURhdGU6IDIwMTAtMDMtMDcgMjI6MTgrMDEwMFxuIgorIkxhc3QtVHJhbnNsYXRvcjogV2lrdG9yIFdhbmRhY2hvd2ljeiA8c2lyeWVzQGdtYWlsLmNvbT5cbiIKKyJMYW5ndWFnZS1UZWFtOiBQb2xpc2ggPGRlYmlhbi1sMTBuLXBvbGlzaEBsaXN0cy5kZWJpYW4ub3JnPlxuIgorIkxhbmd1YWdlOiBwbFxuIgorIk1JTUUtVmVyc2lvbjogMS4wXG4iCisiQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PVVURi04XG4iCisiQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdFxuIgorIlBsdXJhbC1Gb3JtczogbnBsdXJhbHM9MjsgcGx1cmFsPW4gIT0gMTtcbiIKKworIy4gdHlwZTogVEgKKyM6IGRlYi41OjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkZWIiCittc2dzdHIgImRlYiIKKworIy4gdHlwZTogVEgKKyM6IGRlYi41OjEgZGViLWNvbnRyb2wuNTozIGRlYi1zcmMtY29udHJvbC41OjMgZGViLXZlcnNpb24uNTo1IGRlYi1vbGQuNToxCisjOiBkZWItb3ZlcnJpZGUuNToxNSBkZWItc3ltYm9scy41OjIgZGViLXRyaWdnZXJzLjU6MSBkcGtnLjE6MQorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxIGRwa2ctYnVpbGRwYWNrYWdlLjE6MSBkcGtnLWRlYi4xOjEgZHBrZy1kaXZlcnQuODoxCisjOiBkcGtnLWdlbmNoYW5nZXMuMToxIGRwa2ctZ2VuY29udHJvbC4xOjEgZHBrZy1nZW5zeW1ib2xzLjE6MgorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxIGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6MSBkcGtnLW5hbWUuMTo2CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MSBkcGtnLXF1ZXJ5LjE6MSBkcGtnLXNjYW5wYWNrYWdlcy4xOjE1CisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6MSBkcGtnLXNobGliZGVwcy4xOjEgZHBrZy1zb3VyY2UuMToyIGRwa2ctdHJpZ2dlci4xOjEKKyM6IGRzZWxlY3QuMToxIHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo4CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIjIwMDctMDMtMDciCittc2dpZCAiMjAxMS0wOC0xNCIKK21zZ3N0ciAiMjAwNy0wMy0wNyIKKworIy4gdHlwZTogVEgKKyM6IGRlYi41OjEgZGViLWNvbnRyb2wuNTozIGRlYi1zcmMtY29udHJvbC41OjMgZGViLXNwbGl0LjU6MSBkZWItdmVyc2lvbi41OjUKKyM6IGRlYi1vbGQuNToxIGRlYi1vdmVycmlkZS41OjE1IGRlYi1leHRyYS1vdmVycmlkZS41OjEgZGViLXNobGlicy41OjE2CisjOiBkZWItc3Vic3R2YXJzLjU6MiBkZWItc3ltYm9scy41OjIgZGViLXRyaWdnZXJzLjU6MSBkcGtnLjE6MQorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxIGRwa2cuY2ZnLjU6MSBkcGtnLWJ1aWxkZmxhZ3MuMToxCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEgZHBrZy1jaGVja2J1aWxkZGVwcy4xOjEgZHBrZy1kaXN0YWRkZmlsZS4xOjEKKyM6IGRwa2ctZGViLjE6MSBkcGtnLWRpdmVydC44OjEgZHBrZy1nZW5jaGFuZ2VzLjE6MSBkcGtnLWdlbmNvbnRyb2wuMToxCisjOiBkcGtnLWdlbnN5bWJvbHMuMToyIGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MSBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjEKKyM6IGRwa2ctbmFtZS4xOjYgZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjEgZHBrZy1xdWVyeS4xOjEgZHBrZy1zY2FucGFja2FnZXMuMToxNQorIzogZHBrZy1zY2Fuc291cmNlcy4xOjEgZHBrZy1zaGxpYmRlcHMuMToxIGRwa2ctc291cmNlLjE6MiBkcGtnLXNwbGl0LjE6MgorIzogZHBrZy10cmlnZ2VyLjE6MSBkcGtnLXZlbmRvci4xOjEgZHNlbGVjdC4xOjEgZHNlbGVjdC5jZmcuNToxCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjEgdXBkYXRlLWFsdGVybmF0aXZlcy44OjgKKyMsIG5vLXdyYXAKK21zZ2lkICJEZWJpYW4gUHJvamVjdCIKK21zZ3N0ciAiUHJvamVrdCBEZWJpYW5hIgorCisjLiB0eXBlOiBUSAorIzogZGViLjU6MSBkZWItY29udHJvbC41OjMgZGViLXNyYy1jb250cm9sLjU6MyBkZWItc3BsaXQuNToxIGRlYi12ZXJzaW9uLjU6NQorIzogZGViLW9sZC41OjEgZHNlbGVjdC4xOjEKKyMsIG5vLXdyYXAKK21zZ2lkICJEZWJpYW4iCittc2dzdHIgIkRlYmlhbiIKKworIy4gdHlwZTogU0gKKyM6IGRlYi41OjIgZGViLWNvbnRyb2wuNTo0IGRlYi1zcmMtY29udHJvbC41OjQgZGViLXNwbGl0LjU6MiBkZWItdmVyc2lvbi41OjYKKyM6IGRlYi1vbGQuNToyIGRlYi1vdmVycmlkZS41OjE2IGRlYi1leHRyYS1vdmVycmlkZS41OjIgZGViLXNobGlicy41OjE3CisjOiBkZWItc3Vic3R2YXJzLjU6MyBkZWItc3ltYm9scy41OjMgZGViLXRyaWdnZXJzLjU6MiBkcGtnLjE6MgorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyIGRwa2cuY2ZnLjU6MiBkcGtnLWJ1aWxkZmxhZ3MuMToyCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIgZHBrZy1jaGVja2J1aWxkZGVwcy4xOjIgZHBrZy1kaXN0YWRkZmlsZS4xOjIKKyM6IGRwa2ctZGViLjE6MiBkcGtnLWRpdmVydC44OjIgZHBrZy1nZW5jaGFuZ2VzLjE6MiBkcGtnLWdlbmNvbnRyb2wuMToyCisjOiBkcGtnLWdlbnN5bWJvbHMuMTozIGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjIKKyM6IGRwa2ctbmFtZS4xOjcgZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjIgZHBrZy1xdWVyeS4xOjIgZHBrZy1zY2FucGFja2FnZXMuMToxNgorIzogZHBrZy1zY2Fuc291cmNlcy4xOjIgZHBrZy1zaGxpYmRlcHMuMToyIGRwa2ctc291cmNlLjE6MyBkcGtnLXNwbGl0LjE6MworIzogZHBrZy1zdGF0b3ZlcnJpZGUuODoyIGRwa2ctdHJpZ2dlci4xOjIgZHBrZy12ZW5kb3IuMToyIGRzZWxlY3QuMToyCisjOiBkc2VsZWN0LmNmZy41OjIgc3RhcnQtc3RvcC1kYWVtb24uODoyIHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo5CisjLCBuby13cmFwCittc2dpZCAiTkFNRSIKK21zZ3N0ciAiTkFaV0EiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi41OjQKK21zZ2lkICJkZWIgLSBEZWJpYW4gYmluYXJ5IHBhY2thZ2UgZm9ybWF0IgorbXNnc3RyICJkZWIgLSBmb3JtYXQgYmluYXJuZWdvIHBha2lldHUgRGViaWFuYSIKKworIy4gdHlwZTogU0gKKyM6IGRlYi41OjQgZGViLWNvbnRyb2wuNTo3IGRlYi1zcmMtY29udHJvbC41OjcgZGViLXNwbGl0LjU6NCBkZWItdmVyc2lvbi41OjkKKyM6IGRlYi1vbGQuNTo1IGRlYi1vdmVycmlkZS41OjE5IGRlYi1leHRyYS1vdmVycmlkZS41OjUgZGViLXN1YnN0dmFycy41OjYKKyM6IGRlYi1zeW1ib2xzLjU6NiBkZWItdHJpZ2dlcnMuNTo1IGRwa2cuMTo1IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NQorIzogZHBrZy1idWlsZGZsYWdzLjE6NSBkcGtnLWJ1aWxkcGFja2FnZS4xOjUgZHBrZy1jaGVja2J1aWxkZGVwcy4xOjUKKyM6IGRwa2ctZGlzdGFkZGZpbGUuMTo1IGRwa2ctZGViLjE6NSBkcGtnLWRpdmVydC44OjUgZHBrZy1nZW5jaGFuZ2VzLjE6NQorIzogZHBrZy1nZW5jb250cm9sLjE6NSBkcGtnLWdlbnN5bWJvbHMuMTo2IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6NQorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTo1IGRwa2ctbmFtZS4xOjEwIGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo1CisjOiBkcGtnLXF1ZXJ5LjE6NSBkcGtnLXNjYW5wYWNrYWdlcy4xOjE5IGRwa2ctc2NhbnNvdXJjZXMuMTo1CisjOiBkcGtnLXNobGliZGVwcy4xOjUgZHBrZy1zb3VyY2UuMTo2IGRwa2ctc3BsaXQuMTo2IGRwa2ctc3RhdG92ZXJyaWRlLjg6NQorIzogZHBrZy10cmlnZ2VyLjE6NSBkcGtnLXZlbmRvci4xOjUgZHNlbGVjdC4xOjUgc3RhcnQtc3RvcC1kYWVtb24uODo1CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTIKKyMsIG5vLXdyYXAKK21zZ2lkICJTWU5PUFNJUyIKK21zZ3N0ciAiU0vFgUFETklBIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWIuNTo2IGRlYi1zcGxpdC41OjYgZGViLW9sZC41OjcKK21zZ2lkICJJPGZpbGVuYW1lPkI8LmRlYj4iCittc2dzdHIgIkk8bmF6d2FfcGxpa3U+QjwuZGViPiIKKworIy4gdHlwZTogU0gKKyM6IGRlYi41OjYgZGViLWNvbnRyb2wuNToxMCBkZWItc3JjLWNvbnRyb2wuNToxMCBkZWItc3BsaXQuNTo2CisjOiBkZWItdmVyc2lvbi41OjExIGRlYi1vbGQuNTo4IGRlYi1vdmVycmlkZS41OjIyIGRlYi1leHRyYS1vdmVycmlkZS41OjgKKyM6IGRlYi1zaGxpYnMuNToyMCBkZWItc3Vic3R2YXJzLjU6OSBkZWItc3ltYm9scy41OjkgZGViLXRyaWdnZXJzLjU6OAorIzogZHBrZy4xOjE5IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTAgZHBrZy5jZmcuNTo1IGRwa2ctYnVpbGRmbGFncy4xOjkKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6OSBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6MTAgZHBrZy1kaXN0YWRkZmlsZS4xOjkKKyM6IGRwa2ctZGViLjE6OSBkcGtnLWRpdmVydC44OjEwIGRwa2ctZ2VuY2hhbmdlcy4xOjEwIGRwa2ctZ2VuY29udHJvbC4xOjkKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjEwIGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MTUgZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTo5CisjOiBkcGtnLW5hbWUuMToxNiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6OSBkcGtnLXF1ZXJ5LjE6OQorIzogZHBrZy1zY2FucGFja2FnZXMuMToyNyBkcGtnLXNjYW5zb3VyY2VzLjE6MTMgZHBrZy1zaGxpYmRlcHMuMTo5CisjOiBkcGtnLXNvdXJjZS4xOjEwIGRwa2ctc3BsaXQuMToxMCBkcGtnLXN0YXRvdmVycmlkZS44OjkgZHBrZy10cmlnZ2VyLjE6MTIKKyM6IGRwa2ctdmVuZG9yLjE6OSBkc2VsZWN0LjE6OSBkc2VsZWN0LmNmZy41OjUgc3RhcnQtc3RvcC1kYWVtb24uODo5CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTYKKyMsIG5vLXdyYXAKK21zZ2lkICJERVNDUklQVElPTiIKK21zZ3N0ciAiT1BJUyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLjU6MTIKK21zZ2lkICIiCisiVGhlIEI8LmRlYj4gZm9ybWF0IGlzIHRoZSBEZWJpYW4gYmluYXJ5IHBhY2thZ2UgZmlsZSBmb3JtYXQuIEl0IGlzICIKKyJ1bmRlcnN0b29kIGJ5IGRwa2cgMC45My43NiBhbmQgbGF0ZXIsIGFuZCBpcyBnZW5lcmF0ZWQgYnkgZGVmYXVsdCBieSBhbGwgIgorInZlcnNpb25zIG9mIGRwa2cgc2luY2UgMS4yLjAgYW5kIGFsbCBpMzg2L0VMRiB2ZXJzaW9ucyBzaW5jZSAxLjEuMWVsZi4iCittc2dzdHIgIiIKKyJGb3JtYXQgQjwuZGViPiBqZXN0IGZvcm1hdGVtIHBsaWt1IGJpbmFybmVnbyBwYWtpZXR1IERlYmlhbmEuIEplc3Qgcm96dW1pYW55ICIKKyJwcnpleiBkcGtnIDAuOTMuNzYgaSBww7PFum5pZWpzemUgaSBkb215xZtsbmllIGdlbmVyb3dhbnkgcHJ6ZXogd3N6eXN0a2llICIKKyJ3ZXJzamUgZHBrZyB3acSZa3N6ZSBuacW8IDEuMi4wIGkgd3N6eXN0a2llIHdlcnNqZSBpMzg2L0VMRiBwb2N6xIV3c3p5IG9kICIKKyIxLjEuMWVsZi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi41OjE2Cittc2dpZCAiIgorIlRoZSBmb3JtYXQgZGVzY3JpYmVkIGhlcmUgaXMgdXNlZCBzaW5jZSBEZWJpYW4gMC45MzsgZGV0YWlscyBvZiB0aGUgb2xkICIKKyJmb3JtYXQgYXJlIGRlc2NyaWJlZCBpbiBCPGRlYi1vbGQ+KDUpLiIKK21zZ3N0ciAiIgorIk9waXNhbnkgdHUgZm9ybWF0IGplc3QgdcW8eXdhbnkgb2Qgd2Vyc2ppIDAuOTMgRGViaWFuYTsgc3pjemVnw7PFgnkgc3RhcmVnbyAiCisiZm9ybWF0dSBzxIUgb3Bpc2FuZSB3IEI8ZHBrZy1kZWI+KDUpLiIKKworIy4gdHlwZTogU0gKKyM6IGRlYi41OjE2IGRlYi1zcGxpdC41OjkgZGViLW9sZC41OjE4CisjLCBuby13cmFwCittc2dpZCAiRk9STUFUIgorbXNnc3RyICJGT1JNQVQiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi41OjIyCittc2dpZCAiIgorIlRoZSBmaWxlIGlzIGFuIEI8YXI+IGFyY2hpdmUgd2l0aCBhIG1hZ2ljIHZhbHVlIG9mIEI8IUU8bHQ+YXJjaEU8Z3Q+Pi4gIFRoZSAiCisiZmlsZSBuYW1lcyBtaWdodCBjb250YWluIGEgdHJhaWxpbmcgc2xhc2guIgorbXNnc3RyICIiCisiUGxpayB0ZW4gamVzdCBhcmNoaXd1bSBCPGFyPiBtYWrEhWN5bSBsaWN6YsSZIG1hZ2ljem7EhSB6IEI8IUU8bHQ+YXJjaEU8Z3Q+Pi4gIgorIk5hend5IHBsaWvDs3cgbW9nxIUgemF3aWVyYcSHIGtvxYRjesSFY3kgem5hayB1a2/Fm25pa2EuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWIuNToyOAorbXNnaWQgIiIKKyJUaGUgQjx0YXI+IGFyY2hpdmVzIGN1cnJlbnRseSBhbGxvd2VkIGFyZSwgdGhlIG9sZC1zdHlsZSAodjcpIGZvcm1hdCwgdGhlICIKKyJwcmUtUE9TSVggdXN0YXIgZm9ybWF0LCBhIHN1YnNldCBvZiB0aGUgR05VIGZvcm1hdCAob25seSB0aGUgbmV3IHN0eWxlIGxvbmcgIgorInBhdGhuYW1lcyBhbmQgbG9uZyBsaW5rbmFtZXMsIHN1cHBvcnRlZCBzaW5jZSBkcGtnIDEuNC4xLjE3KSwgYW5kIHRoZSBQT1NJWCAiCisidXN0YXIgZm9ybWF0IChsb25nIG5hbWVzIHN1cHBvcnRlZCBzaW5jZSBkcGtnIDEuMTUuMCkuICBVbnJlY29nbml6ZWQgdGFyICIKKyJ0eXBlZmxhZ3MgYXJlIGNvbnNpZGVyZWQgYW4gZXJyb3IuIgorbXNnc3RyICIiCisiQWt0dWFsbmllIGRvendvbG9uZSBhcmNoaXdhIEI8dGFyPiBtb2fEhSBtaWXEhzogZm9ybWF0IHcgc3RhcnltIHN0eWx1ICh2NyksICIKKyJwb3ByemVkemFqxIVjeSBQT1NJWCBmb3JtYXQgdXN0YXIsIHBvZHpiacOzciBmb3JtYXR1IEdOVSAoamVkeW5pZSBkxYJ1Z2llICIKKyLFm2NpZcW8a2kgaSBkxYJ1Z2llIG5hend5IGRvd2nEhXphxYQgdyBub3d5bSBzdHlsdSwgd3NwaWVyYW5lIG9kIGRwa2cgMS40LjEuMTcpLCAiCisib3JheiB6Z29kbnkgeiBQT1NJWCBmb3JtYXQgdXN0YXIgKGTFgnVnaWUgbmF6d3kgd3NwaWVyYW5lIG9kIGRwa2cgMS4xNS4wKS4gIgorIk5pZXpuYW5lIGZsYWdpIHR5cMOzdyB0YXIgc8SFIHV3YcW8YW5lIHphIGLFgsSFZC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi41OjM4Cittc2dpZCAiIgorIlRoZSBmaXJzdCBtZW1iZXIgaXMgbmFtZWQgQjxkZWJpYW4tYmluYXJ5PiBhbmQgY29udGFpbnMgYSBzZXJpZXMgb2YgbGluZXMsICIKKyJzZXBhcmF0ZWQgYnkgbmV3bGluZXMuIEN1cnJlbnRseSBvbmx5IG9uZSBsaW5lIGlzIHByZXNlbnQsIHRoZSBmb3JtYXQgIgorInZlcnNpb24gbnVtYmVyLCBCPDIuMD4gYXQgdGhlIHRpbWUgdGhpcyBtYW51YWwgcGFnZSB3YXMgd3JpdHRlbi4gIFByb2dyYW1zICIKKyJ3aGljaCByZWFkIG5ldy1mb3JtYXQgYXJjaGl2ZXMgc2hvdWxkIGJlIHByZXBhcmVkIGZvciB0aGUgbWlub3IgbnVtYmVyIHRvIGJlICIKKyJpbmNyZWFzZWQgYW5kIG5ldyBsaW5lcyB0byBiZSBwcmVzZW50LCBhbmQgc2hvdWxkIGlnbm9yZSB0aGVzZSBpZiB0aGlzIGlzICIKKyJ0aGUgY2FzZS4iCittc2dzdHIgIiIKKyJQaWVyd3N6eSBza8WCYWRuaWsgbmF6eXdhIHNpxJkgQjxkZWJpYW4tYmluYXJ5PiBpIHphd2llcmEgc2VyacSZIGxpbmlpICIKKyJyb3pkemllbG9ueWNoIHpuYWthbWkgbm93ZWogbGluaWkuIE9iZWNuaWUgcGxpayB0ZW4gemF3aWVyYSB0eWxrbyBqZWRuxIUgIgorImxpbmnEmSAtIG51bWVyIHdlcnNqaSBmb3JtYXR1LCBrdMOzcnkgLSB3IGN6YXNpZSBwaXNhbmlhIHRlaiBzdHJvbnkgIgorInBvZHLEmWN6bmlrYSAtIHd5bm9zacWCIEI8Mi4wPi4gUHJvZ3JhbXkgb2JzxYJ1Z3VqxIVjZSBhcmNoaXdhIHcgbm93eW0gZm9ybWFjaWUgIgorInBvd2lubnkgYnnEhyBnb3Rvd2UgbmEgb2JzxYJ1xbxlbmllIHptaWFueSBsaWN6YnkgcG9ib2N6bmVqIChwbyBrcm9wY2UpIG9yYXogbmEgIgorIm9iZWNub8WbxIcgbm93eWNoIGxpbmlpLCBrdMOzcmUgcG93aW5ueSBpZ25vcm93YcSHLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLjU6NDMKK21zZ2lkICIiCisiSWYgdGhlIG1ham9yIG51bWJlciBoYXMgY2hhbmdlZCwgYW4gaW5jb21wYXRpYmxlIGNoYW5nZSBoYXMgYmVlbiBtYWRlIGFuZCAiCisidGhlIHByb2dyYW0gc2hvdWxkIHN0b3AuIElmIGl0IGhhcyBub3QsIHRoZW4gdGhlIHByb2dyYW0gc2hvdWxkIGJlIGFibGUgdG8gIgorInNhZmVseSBjb250aW51ZSwgdW5sZXNzIGl0IGVuY291bnRlcnMgYW4gdW5leHBlY3RlZCBtZW1iZXIgaW4gdGhlIGFyY2hpdmUgIgorIihleGNlcHQgYXQgdGhlIGVuZCksIGFzIGRlc2NyaWJlZCBiZWxvdy4iCittc2dzdHIgIiIKKyJKZcW8ZWxpIHptaWVuaSBzacSZIGfFgsOzd25hIGxpY3piYSBudW1lcnUgd2Vyc2ppIChsaWN6YmEgcHJ6ZWQga3JvcGvEhSksIG96bmFjemEgIgorInRvLCDFvGUgd3Byb3dhZHpvbmUgem1pYW55IHcgZm9ybWFjaWUgc8SFIG5pZWtvbXBhdHliaWxuZSB6IHBvcHJ6ZWRuacSFIHdlcnNqxIUgIgorImkgcHJvZ3JhbSBwb3dpbmllbiBzacSZIHphdHJ6eW1hxIcuIEplxbxlbGkgc2nEmSBuaWUgemF0cnp5bWEsIHRvIHBvd2luaWVuICIKKyJrb250eW51b3dhxIcgZHppYcWCYW5pZSBhxbwgZG8gbmFwb3RrYW5pYSBuaWVvY3pla2l3YW5lZ28gc2vFgmFkbmlrYSB3IGFyY2hpd3VtICIKKyIoY2h5YmEsIMW8ZSB3eXN0xJlwdWplIG9uIG5hIGtvxYRjdSksIHRhayBqYWsgdG8gb3Bpc2FubyBwb25pxbxlai4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi41OjUzCittc2dpZCAiIgorIlRoZSBzZWNvbmQgcmVxdWlyZWQgbWVtYmVyIGlzIG5hbWVkIEI8Y29udHJvbC50YXIuZ3o+LiAgSXQgaXMgYSBnemlwcGVkIHRhciAiCisiYXJjaGl2ZSBjb250YWluaW5nIHRoZSBwYWNrYWdlIGNvbnRyb2wgaW5mb3JtYXRpb24sIGFzIGEgc2VyaWVzIG9mIHBsYWluICIKKyJmaWxlcywgb2Ygd2hpY2ggdGhlIGZpbGUgQjxjb250cm9sPiBpcyBtYW5kYXRvcnkgYW5kIGNvbnRhaW5zIHRoZSBjb3JlICIKKyJjb250cm9sIGluZm9ybWF0aW9uLiBUaGUgY29udHJvbCB0YXJiYWxsIG1heSBvcHRpb25hbGx5IGNvbnRhaW4gYW4gZW50cnkgZm9yICIKKyJgQjwuPicsIHRoZSBjdXJyZW50IGRpcmVjdG9yeS4iCittc2dzdHIgIiIKKyJEcnVnaSB3eW1hZ2FueSBza8WCYWRuaWsgbmF6eXdhIHNpxJkgQjxjb250cm9sLnRhci5nej4uIEplc3QgdG8gc3Bha293YW5lICIKKyJhcmNoaXd1bSB0YXIgemF3aWVyYWrEhWNlIGluZm9ybWFjamUga29udHJvbG5lIHBha2lldHUsIGpha28gc2VyacSZIHBsaWvDs3cgIgorInRla3N0b3d5Y2gsIHfFm3LDs2Qga3TDs3J5Y2ggd3ltYWdhbnltIHBsaWtpZW0gamVzdCBCPGNvbnRyb2w+LCB6YXdpZXJhasSFY3kgIgorInBvZHN0YXdvd2UgaW5mb3JtYWNqZSBrb250cm9sbmUuIEFyY2hpd3VtIHRhciBtb8W8ZSB6YXdpZXJhxIcgb3Bjam9uYWxueSB3cGlzICIKKyJkb3R5Y3rEhWN5IGJpZcW8xIVjZWdvIGthdGFsb2d1IFwiQjwuPlwiLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLjU6NjIKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlRoZSB0aGlyZCwgbGFzdCByZXF1aXJlZCBtZW1iZXIgaXMgbmFtZWQgQjxkYXRhLnRhcj4uICBJdCBjb250YWlucyB0aGUgIgorI3wgImZpbGVzeXN0ZW0gYXMgYSB0YXIgYXJjaGl2ZSwgZWl0aGVyIG5vdCBjb21wcmVzc2VkIChzdXBwb3J0ZWQgc2luY2UgZHBrZyAiCisjfCAiMS4xMC4yNCksIG9yIGNvbXByZXNzZWQgd2l0aCBnemlwICh3aXRoIEI8Lmd6PiBleHRlbnNpb24pLCBiemlwMiAod2l0aCBCPC4iCisjfCAiYnoyPiBleHRlbnNpb24sIHN1cHBvcnRlZCBzaW5jZSBkcGtnIDEuMTAuMjQpIG9yIGx6bWEgKHdpdGggQjwubHptYT4gIgorI3wgImV4dGVuc2lvbiwgc3VwcG9ydGVkIHNpbmNlIGRwa2cgMS4xMy4yNSkuIgorbXNnaWQgIiIKKyJUaGUgdGhpcmQsIGxhc3QgcmVxdWlyZWQgbWVtYmVyIGlzIG5hbWVkIEI8ZGF0YS50YXI+LiAgSXQgY29udGFpbnMgdGhlICIKKyJmaWxlc3lzdGVtIGFzIGEgdGFyIGFyY2hpdmUsIGVpdGhlciBub3QgY29tcHJlc3NlZCAoc3VwcG9ydGVkIHNpbmNlIGRwa2cgIgorIjEuMTAuMjQpLCBvciBjb21wcmVzc2VkIHdpdGggZ3ppcCAod2l0aCBCPC5nej4gZXh0ZW5zaW9uKSwgeHogKHdpdGggQjwueHo+ICIKKyJleHRlbnNpb24sIHN1cHBvcnRlZCBzaW5jZSBkcGtnIDEuMTUuNiksIGJ6aXAyICh3aXRoIEI8LmJ6Mj4gZXh0ZW5zaW9uLCAiCisic3VwcG9ydGVkIHNpbmNlIGRwa2cgMS4xMC4yNCkgb3IgbHptYSAod2l0aCBCPC5sem1hPiBleHRlbnNpb24sIHN1cHBvcnRlZCAiCisic2luY2UgZHBrZyAxLjEzLjI1KS4iCittc2dzdHIgIiIKKyJUcnplY2kgaSBvc3RhdG5pIHd5bWFnYW55IHNrxYJhZG5payBuYXp5d2Egc2nEmSBCPGRhdGEudGFyPi4gWmF3aWVyYSBzeXN0ZW0gIgorInBsaWvDs3cgdyBwb3N0YWNpIGFyY2hpd3VtIHRhciwgbmllc3Bha293YW5lZ28gKHdzcGllcmFuZSBvZCBkcGtnIDEuMTAuMjQpICIKKyJsdWIgc3Bha293YW5lZ28gcHJvZ3JhbWVtIGd6aXAgKHogcm96c3plcnplbmllbSBCPC5nej4pLCBiemlwMiAoeiAiCisicm96c3plcnplbmllbSBCPC5iejI+LCB3c3BpZXJhbmUgb2QgZHBrZyAxLjEwLjI0KSBsdWIgbHptYSAoeiByb3pzemVyemVuaWVtICIKKyJCPC5sem1hPiwgd3NwaWVyYW5lIG9kIGRwa2cgMS4xMy4yNSkuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWIuNTo3MworbXNnaWQgIiIKKyJUaGVzZSBtZW1iZXJzIG11c3Qgb2NjdXIgaW4gdGhpcyBleGFjdCBvcmRlci4gQ3VycmVudCBpbXBsZW1lbnRhdGlvbnMgc2hvdWxkICIKKyJpZ25vcmUgYW55IGFkZGl0aW9uYWwgbWVtYmVycyBhZnRlciBCPGRhdGEudGFyPi4gIEZ1cnRoZXIgbWVtYmVycyBtYXkgYmUgIgorImRlZmluZWQgaW4gdGhlIGZ1dHVyZSwgYW5kIChpZiBwb3NzaWJsZSkgd2lsbCBiZSBwbGFjZWQgYWZ0ZXIgdGhlc2UgdGhyZWUuICIKKyJBbnkgYWRkaXRpb25hbCBtZW1iZXJzIHRoYXQgbWF5IG5lZWQgdG8gYmUgaW5zZXJ0ZWQgYmVmb3JlIEI8ZGF0YS50YXI+IGFuZCAiCisid2hpY2ggc2hvdWxkIGJlIHNhZmVseSBpZ25vcmVkIGJ5IG9sZGVyIHByb2dyYW1zLCB3aWxsIGhhdmUgbmFtZXMgc3RhcnRpbmcgIgorIndpdGggYW4gdW5kZXJzY29yZSwgYEI8Xz4nLiIKK21zZ3N0ciAiIgorIlNrxYJhZG5pa2kgdGUgbXVzesSFIHd5c3TEmXBvd2HEhyB3IHR5bSBwb3d5xbxzenltIHBvcnrEhWRrdS4gSW1wbGVtZW50YWNqZSAiCisicG93aW5ueSBpZ25vcm93YcSHIGpha2lla29sd2llayBkb2RhdGtvd2Ugc2vFgmFkbmlraSB3eXN0xJlwdWrEhWNlIHBvIEI8ZGF0YS4iCisidGFyPi4gS29sZWpuZSBza8WCYWRuaWtpIG1vZ8SFIHpvc3RhxIcgemRlZmluaW93YW5lIHcgcHJ6eXN6xYJvxZtjaSBpIChqZcW8ZWxpICIKKyJixJlkemllIHRvIG1vxbxsaXdlKSBixJlkxIUgdW1pZXN6Y3pvbmUgcG8gdHJ6ZWNoIHd5xbxlaiB3eW1pZW5pb255Y2guIERvZGF0a293ZSAiCisic2vFgmFkbmlraSwgZGxhIGt0w7NyeWNoIHd5bWFnYW5lIGJ5IGJ5xYJvIGljaCB1bWllc3pjemVuaWUgcHJ6ZWQgQjxkYXRhLnRhcj4gaSAiCisia3TDs3JlIHBvd2lubnkgYnnEhyBpZ25vcm93YW5lIHByemV6IHN0YXJzemUgcHJvZ3JhbXksIGLEmWTEhSBtaWHFgnkgbmF6d3kgIgorInphY3p5bmFqxIVjZSBzacSZIG9kIHpuYWt1IHBvZGtyZcWbbGVuaWEgXCJCPF8+XCIuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWIuNTo3OQorbXNnaWQgIiIKKyJUaG9zZSBuZXcgbWVtYmVycyB3aGljaCB3b24ndCBiZSBhYmxlIHRvIGJlIHNhZmVseSBpZ25vcmVkIHdpbGwgYmUgaW5zZXJ0ZWQgIgorImJlZm9yZSBCPGRhdGEudGFyPiB3aXRoIG5hbWVzIHN0YXJ0aW5nIHdpdGggc29tZXRoaW5nIG90aGVyIHRoYW4gIgorInVuZGVyc2NvcmVzLCBvciB3aWxsIChtb3JlIGxpa2VseSkgY2F1c2UgdGhlIG1ham9yIHZlcnNpb24gbnVtYmVyIHRvIGJlICIKKyJpbmNyZWFzZWQuIgorbXNnc3RyICIiCisiVGUgbm93ZSBza8WCYWRuaWtpLCBrdMOzcmUgbmllIGLEmWTEhSBtb2fFgnkgem9zdGHEhyB6aWdub3Jvd2FuZSwgem9zdGFuxIUgIgorInVtaWVzemN6b25lIHByemVkIEI8ZGF0YS50YXI+LCBhIGljaCBuYXp3eSBixJlkxIUgc2nEmSB6YWN6eW5hxIcgb2Qgem5ha3UgaW5uZWdvICIKKyJuacW8IHBvZGtyZcWbbGVuaWUsIGx1YiAoY28gamVzdCBiYXJkemllaiBwcmF3ZG9wb2RvYm5lKSBzcG93b2R1asSFIHp3acSZa3N6ZW5pZSAiCisiZ8WCw7N3bmVqIChtYWpvcikgd2Vyc2ppIGZvcm1hdHUgcGxpa3UgZGViLiIKKworIy4gdHlwZTogU0gKKyM6IGRlYi41Ojc5IGRlYi1jb250cm9sLjU6MjcxIGRlYi1zcmMtY29udHJvbC41OjMyNyBkZWItc3BsaXQuNTo0OQorIzogZGViLXZlcnNpb24uNToxMTYgZGViLW9sZC41OjUxIGRlYi1vdmVycmlkZS41OjYyIGRlYi1leHRyYS1vdmVycmlkZS41OjM3CisjOiBkZWItc2hsaWJzLjU6NjEgZGViLXN1YnN0dmFycy41OjE1NCBkZWItc3ltYm9scy41OjYxIGRlYi10cmlnZ2Vycy41OjY3CisjOiBkcGtnLjE6NzY4IGRwa2ctYXJjaGl0ZWN0dXJlLjE6Mjk5IGRwa2cuY2ZnLjU6MjMgZHBrZy1idWlsZHBhY2thZ2UuMToyNDkKKyM6IGRwa2ctZGViLjE6MjU5IGRwa2ctZGl2ZXJ0Ljg6MTMyIGRwa2ctZ2Vuc3ltYm9scy4xOjQ1MCBkcGtnLW5hbWUuMTo5NgorIzogZHBrZy1xdWVyeS4xOjIyMCBkcGtnLXNjYW5wYWNrYWdlcy4xOjExMCBkcGtnLXNjYW5zb3VyY2VzLjE6NzEKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MzI0IGRwa2ctc291cmNlLjE6NzI1IGRwa2ctc3BsaXQuMToyMTcKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6ODQgZHBrZy10cmlnZ2VyLjE6NjYgZHNlbGVjdC4xOjQ0NSBkc2VsZWN0LmNmZy41OjIzCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NTA4CisjLCBuby13cmFwCittc2dpZCAiU0VFIEFMU08iCittc2dzdHIgIlpPQkFDWiBUQUvFu0UiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi41OjgyCittc2dpZCAiQjxkZWItb2xkPig1KSwgQjxkcGtnLWRlYj4oMSksIEI8ZGViLWNvbnRyb2w+KDUpLiIKK21zZ3N0ciAiQjxkZWItb2xkPig1KSwgQjxkcGtnLWRlYj4oMSksIEI8ZGViLWNvbnRyb2w+KDUpLiIKKworIy4gdHlwZTogVEgKKyM6IGRlYi1jb250cm9sLjU6MworIywgbm8td3JhcAorbXNnaWQgImRlYi1jb250cm9sIgorbXNnc3RyICJkZWItY29udHJvbCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNTo2Cittc2dpZCAiZGViLWNvbnRyb2wgLSBEZWJpYW4gcGFja2FnZXMnIG1hc3RlciBjb250cm9sIGZpbGUgZm9ybWF0IgorbXNnc3RyICJkZWItY29udHJvbCAtIGZvcm1hdCBnxYLDs3duZWdvIHBsaWt1IHBha2lldHUgRGViaWFuYSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNTo5IGRlYi1zcmMtY29udHJvbC41OjkKK21zZ2lkICJjb250cm9sIgorbXNnc3RyICJjb250cm9sIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjI0Cittc2dpZCAiIgorIkVhY2ggRGViaWFuIHBhY2thZ2UgY29udGFpbnMgdGhlIG1hc3RlciBgY29udHJvbCcgZmlsZSwgd2hpY2ggY29udGFpbnMgYSAiCisibnVtYmVyIG9mIGZpZWxkcywgb3IgY29tbWVudHMgd2hlbiB0aGUgbGluZSBzdGFydHMgd2l0aCBCPCcjJz4uIEVhY2ggZmllbGQgIgorImJlZ2lucyB3aXRoIGEgdGFnLCBzdWNoIGFzIEI8UGFja2FnZT4gb3IgQjxWZXJzaW9uPiAoY2FzZSBpbnNlbnNpdGl2ZSksICIKKyJmb2xsb3dlZCBieSBhIGNvbG9uLCBhbmQgdGhlIGJvZHkgb2YgdGhlIGZpZWxkLiAgRmllbGRzIGFyZSBkZWxpbWl0ZWQgb25seSAiCisiYnkgZmllbGQgdGFncy4gSW4gb3RoZXIgd29yZHMsIGZpZWxkIHRleHQgbWF5IGJlIG11bHRpcGxlIGxpbmVzIGluIGxlbmd0aCwgIgorImJ1dCB0aGUgaW5zdGFsbGF0aW9uIHRvb2xzIHdpbGwgZ2VuZXJhbGx5IGpvaW4gbGluZXMgd2hlbiBwcm9jZXNzaW5nIHRoZSAiCisiYm9keSBvZiB0aGUgZmllbGQgKGV4Y2VwdCBpbiB0aGUgY2FzZSBvZiB0aGUgQjxEZXNjcmlwdGlvbj4gZmllbGQsIHNlZSAiCisiYmVsb3cpLiIKK21zZ3N0ciAiIgorIkthxbxkeSBwYWtpZXQgRGViaWFuYSB6YXdpZXJhIGfFgsOzd255IHBsaWsgXCJjb250cm9sXCIsIHNrxYJhZGFqxIVjeSBzacSZIHogIgorInBld25laiBsaWN6YnkgcMOzbCBsdWIgbGluaWkga29tZW50YXJ6YSwgY3p5bGkgbGluaWkgemFjenluYWrEhWN5Y2ggc2nEmSAiCisiem5ha2llbSBcIkI8Iz5cIi4gS2HFvGRlIHBvbGUgemFjenluYSBzacSZIG9kIGlkZW50eWZpa2F0b3JhLCB0YWtpZWdvIGphayAiCisiQjxQYWNrYWdlPiBsdWIgQjxWZXJzaW9uPiAod2llbGtvxZvEhyBsaXRlciBuaWUgbWEgem5hY3plbmlhKSwgcG8ga3TDs3J5bSAiCisibmFzdMSZcHVqxIUgZHd1a3JvcGVrIG9yYXogd2FydG/Fm8SHIHBvbGEuIFBvbGEgc8SFIHJvemR6aWVsYW5lIG9kIHNpZWJpZSAiCisiaWRlbnR5ZmlrYXRvcmFtaSBww7NsLiBJbm55bWkgc8WCb3d5LCB0ZWtzdCBwb2xhIG1vxbxlIHNpxJkgc2vFgmFkYcSHIHogd2llbHUgIgorImxpbmlpLCBqZWRuYWvFvGUgbmFyesSZZHppYSBpbnN0YWxhY3lqbmUgcG/FgsSFY3rEhSB0ZSBsaW5pZSBwb2RjemFzICIKKyJwcnpldHdhcnphbmlhIHdhcnRvxZtjaSBwb2xhICh6IHd5asSFdGtpZW0gcG9sYSBCPERlc2NyaXB0aW9uPiwgcGF0cnogbmnFvGVqKS4iCisKKyMuIHR5cGU6IFNICisjOiBkZWItY29udHJvbC41OjI1CisjLCBuby13cmFwCittc2dpZCAiUkVRVUlSRUQgRklFTERTIgorbXNnc3RyICJQT0xBIFdZTUFHQU5FIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNToyNgorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPC0tcGFja2FnZT5JPCBwYWNrYWdlPiIKK21zZ2lkICJCPFBhY2thZ2U6Pkk8IHBhY2thZ2UtbmFtZT4iCittc2dzdHIgIkI8LS1wYWNrYWdlPkk8IHBha2lldD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MzAKK21zZ2lkICIiCisiVGhlIHZhbHVlIG9mIHRoaXMgZmllbGQgZGV0ZXJtaW5lcyB0aGUgcGFja2FnZSBuYW1lLCBhbmQgaXMgdXNlZCB0byBnZW5lcmF0ZSAiCisiZmlsZSBuYW1lcyBieSBtb3N0IGluc3RhbGxhdGlvbiB0b29scy4iCittc2dzdHIgIiIKKyJXYXJ0b8WbxIcgdGVnbyBwb2xhIG9rcmXFm2xhIG5henfEmSBwYWtpZXR1IGkgcHJ6ZXogd2nEmWtzem/Fm8SHIG5hcnrEmWR6aSAiCisiaW5zdGFsYWN5am55Y2ggamVzdCB1xbx5d2FuYSBkbyBnZW5lcm93YW5pYSBuYXp3IHBsaWvDs3cuIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNTozMAorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPFZlcnNpb246PiBFPGx0PnZlcnNpb24gc3RyaW5nRTxndD4iCittc2dpZCAiQjxWZXJzaW9uOj5JPCB2ZXJzaW9uLXN0cmluZz4iCittc2dzdHIgIkI8VmVyc2lvbjo+IEU8bHQ+b3puYWN6ZW5pZSB3ZXJzamlFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNTozNworbXNnaWQgIiIKKyJUeXBpY2FsbHksIHRoaXMgaXMgdGhlIG9yaWdpbmFsIHBhY2thZ2UncyB2ZXJzaW9uIG51bWJlciBpbiB3aGF0ZXZlciBmb3JtICIKKyJ0aGUgcHJvZ3JhbSdzIGF1dGhvciB1c2VzLiBJdCBtYXkgYWxzbyBpbmNsdWRlIGEgRGViaWFuIHJldmlzaW9uIG51bWJlciAoZm9yICIKKyJub24tbmF0aXZlIHBhY2thZ2VzKS4gVGhlIGV4YWN0IGZvcm1hdCBhbmQgc29ydGluZyBhbGdvcml0aG0gYXJlIGRlc2NyaWJlZCAiCisiaW4gQjxkZWItdmVyc2lvbj4oNSkuIgorbXNnc3RyICIiCisiWmF6d3ljemFqIGplc3QgdG8gb3J5Z2luYWxuYSB3ZXJzamEgcGFraWV0dSB3IHRha2llaiBwb3N0YWNpLCBqYWtpZWogdcW8eXdhICIKKyJhdXRvciBwYWtpZXR1LiBNb8W8ZSB0YWvFvGUgendpZXJhxIcgd2Vyc2rEmSB6bWlhbiBwYWtpZXR1IERlYmlhbmEgKGRsYSBwYWtpZXTDs3cgIgorIm5pZW5hdHl3bnljaCkuIERva8WCYWRueSBmb3JtYXQgaSBhbGdvcnl0bSBzb3J0b3dhbmlhIHPEhSBvcGlzYW5lIHcgQjxkZWItIgorInZlcnNpb24+KDUpLiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MzcKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxNYWludGFpbmVyOj4gRTxsdD5mdWxsbmFtZSBlbWFpbEU8Z3Q+IgorbXNnaWQgIkI8TWFpbnRhaW5lcjo+STwgZnVsbG5hbWUtZW1haWw+IgorbXNnc3RyICJCPE1haW50YWluZXI6PiBFPGx0PnBlxYJuYS1uYXp3YSBlLW1haWxFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNTo0MgorbXNnaWQgIiIKKyJTaG91bGQgYmUgaW4gdGhlIGZvcm1hdCBgSm9lIEJsb2dncyBFPGx0PmpibG9nZ3NAZm9vLmNvbUU8Z3Q+JywgYW5kIGlzICIKKyJ0eXBpY2FsbHkgdGhlIHBlcnNvbiB3aG8gY3JlYXRlZCB0aGUgcGFja2FnZSwgYXMgb3Bwb3NlZCB0byB0aGUgYXV0aG9yIG9mICIKKyJ0aGUgc29mdHdhcmUgdGhhdCB3YXMgcGFja2FnZWQuIgorbXNnc3RyICIiCisiUG93aW5uYSBiecSHIHcgZm9ybWFjaWUgXCJKYW4gTm93YWsgRTxsdD5qbm93YWtAZm9vLmNvbUU8Z3Q+XCIgaSB6YXp3eWN6YWogIgorIm96bmFjemEgb3NvYsSZLCBrdMOzcmEgdXR3b3J6ecWCYSBwYWtpZXQgKGEgbmllIG9zb2LEmSwga3TDs3JhIGplc3QgYXV0b3JlbSAiCisicHJvZ3JhbXUpLiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6NDIKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxEZXNjcmlwdGlvbjo+IEU8bHQ+c2hvcnQgZGVzY3JpcHRpb25FPGd0PiIKK21zZ2lkICJCPERlc2NyaXB0aW9uOj5JPCBzaG9ydC1kZXNjcmlwdGlvbj4iCittc2dzdHIgIkI8RGVzY3JpcHRpb246PiBFPGx0Pmtyw7N0a2kgb3Bpc0U8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjQ1CisjLCBmdXp6eQorI3wgbXNnaWQgIkI8ID5FPGx0PmxvbmcgZGVzY3JpcHRpb25FPGd0PiIKK21zZ2lkICJCPCA+STxsb25nLWRlc2NyaXB0aW9uPiIKK21zZ3N0ciAiQjwgPkU8bHQ+ZMWCdWdpIG9waXNFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNTo1MQorbXNnaWQgIiIKKyJUaGUgZm9ybWF0IGZvciB0aGUgcGFja2FnZSBkZXNjcmlwdGlvbiBpcyBhIHNob3J0IGJyaWVmIHN1bW1hcnkgb24gdGhlIGZpcnN0ICIKKyJsaW5lIChhZnRlciB0aGUgXCJEZXNjcmlwdGlvblwiIGZpZWxkKS4gVGhlIGZvbGxvd2luZyBsaW5lcyBzaG91bGQgYmUgdXNlZCAiCisiYXMgYSBsb25nZXIsIG1vcmUgZGV0YWlsZWQgZGVzY3JpcHRpb24uIEVhY2ggbGluZSBvZiB0aGUgbG9uZyBkZXNjcmlwdGlvbiAiCisibXVzdCBiZSBwcmVjZWRlZCBieSBhIHNwYWNlLCBhbmQgYmxhbmsgbGluZXMgaW4gdGhlIGxvbmcgZGVzY3JpcHRpb24gbXVzdCAiCisiY29udGFpbiBhIHNpbmdsZSAnLicgZm9sbG93aW5nIHRoZSBwcmVjZWRpbmcgc3BhY2UuIgorbXNnc3RyICIiCisiRm9ybWF0IG9waXN1IHBha2lldHUgamVzdCBuYXN0xJlwdWrEhWN5OiBwaWVyd3N6YSBsaW5pYSAoemFyYXogcG8gcG9sdSAiCisiXCJEZXNjcmlwdGlvblwiKSB6YXdpZXJhIGtyw7N0a2llIHBvZHN1bW93YW5pZS4gS29sZWpuZSBsaW5pZSBwb3dpbm55ICIKKyJ6YXdpZXJhxIcgZMWCdcW8c3p5LCBiYXJkemllaiBzemN6ZWfDs8WCb3d5IG9waXMuIEthxbxkYSBsaW5pYSBkxYJ1Z2llZ28gb3Bpc3UgbXVzaSAiCisiYnnEhyBwb3ByemVkem9uYSB6bmFraWVtIHNwYWNqaSwgYSBsaW5pZSwga3TDs3JlIG1hasSFIGJ5xIcgcHVzdGUsIHBvd2lubnkgIgorInphd2llcmHEhyBwb2plZHluY3rEhSBrcm9wa8SZIChcIi5cIikgcG9wcnplZHpvbsSFIHpuYWtpZW0gc3BhY2ppLiIKKworIy4gdHlwZTogU0gKKyM6IGRlYi1jb250cm9sLjU6NTIKKyMsIG5vLXdyYXAKK21zZ2lkICJPUFRJT05BTCBGSUVMRFMiCittc2dzdHIgIlBPTEEgTklFV1lNQUdBTkUiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjUzIGRlYi1zcmMtY29udHJvbC41OjkwCisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8U2VjdGlvbjo+IEU8bHQ+c2VjdGlvbkU8Z3Q+IgorbXNnaWQgIkI8U2VjdGlvbjo+STwgc2VjdGlvbj4iCittc2dzdHIgIkI8U2VjdGlvbjo+IEU8bHQ+c2VrY2phRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6NTgKK21zZ2lkICIiCisiVGhpcyBpcyBhIGdlbmVyYWwgZmllbGQgdGhhdCBnaXZlcyB0aGUgcGFja2FnZSBhIGNhdGVnb3J5IGJhc2VkIG9uIHRoZSAiCisic29mdHdhcmUgdGhhdCBpdCBpbnN0YWxscy4gU29tZSBjb21tb24gc2VjdGlvbnMgYXJlIGB1dGlscycsIGBuZXQnLCBgbWFpbCcsICIKKyJgdGV4dCcsIGB4MTEnIGV0Yy4iCittc2dzdHIgIiIKKyJKZXN0IHRvIG9nw7NsbmUgcG9sZSB6YXdpZXJhasSFY2Uga2F0ZWdvcmnEmSBwYWtpZXR1IGJhem93YW7EhSBuYSAiCisib3Byb2dyYW1vd2FuaXUsIGt0w7NyZSB6YXdpZXJhLiBOaWVrdMOzcmUgY3rEmcWbY2llaiB3eXN0xJlwdWrEhWNlIHNla2NqZSB0bzogIgorIlwidXRpbHNcIiwgXCJuZXRcIiwgXCJtYWlsXCIsIFwidGV4dFwiLCBcIngxMVwiIGl0cC4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjU4IGRlYi1zcmMtY29udHJvbC41Ojk2CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8UHJpb3JpdHk6PiBFPGx0PnByaW9yaXR5RTxndD4iCittc2dpZCAiQjxQcmlvcml0eTo+STwgcHJpb3JpdHk+IgorbXNnc3RyICJCPFByaW9yaXR5Oj4gRTxsdD5wcmlvcnl0ZXRFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNTo2MgorbXNnaWQgIiIKKyJTZXRzIHRoZSBpbXBvcnRhbmNlIG9mIHRoaXMgcGFja2FnZSBpbiByZWxhdGlvbiB0byB0aGUgc3lzdGVtIGFzIGEgd2hvbGUuICAiCisiQ29tbW9uIHByaW9yaXRpZXMgYXJlIGByZXF1aXJlZCcsIGBzdGFuZGFyZCcsIGBvcHRpb25hbCcsIGBleHRyYScgZXRjLiIKK21zZ3N0ciAiIgorIlVzdGF3aWEgd2HFvG5vxZvEhyBwYWtpZXR1IHcgc3Rvc3Vua3UgZG8gY2HFgmVnbyBzeXN0ZW11LiBOYWpjesSZxZtjaWVqIHXFvHl3YW5lICIKKyJwcmlvcnl0ZXR5IHRvOiBcInJlcXVpcmVkXCIgKHd5bWFnYW55KSwgXCJzdGFuZGFyZFwiIChzdGFuZGFyZG93eSkgLCAiCisiXCJvcHRpb25hbFwiIChvcGNqb25hbG55KSwgXCJleHRyYVwiIChkb2RhdGtvd3kpIGl0cC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6NzEgZGViLXNyYy1jb250cm9sLjU6MTA5Cittc2dpZCAiIgorIkluIERlYmlhbiwgdGhlIEI8U2VjdGlvbj4gYW5kIEI8UHJpb3JpdHk+IGZpZWxkcyBoYXZlIGEgZGVmaW5lZCBzZXQgb2YgIgorImFjY2VwdGVkIHZhbHVlcyBiYXNlZCBvbiB0aGUgUG9saWN5IE1hbnVhbC4gIEEgbGlzdCBvZiB0aGVzZSB2YWx1ZXMgY2FuIGJlICIKKyJvYnRhaW5lZCBmcm9tIHRoZSBsYXRlc3QgdmVyc2lvbiBvZiB0aGUgQjxkZWJpYW4tcG9saWN5PiBwYWNrYWdlLiIKK21zZ3N0ciAiIgorIlcgRGViaWFuaWUgcG9sYSBCPFNlY3Rpb24+IGkgQjxQcmlyaXR5PiBtYWrEhSDFm2NpxZtsZSB6ZGVmaW5pb3dhbnkgemJpw7NyICIKKyJha2NlcHRvd2FsbnljaCB3YXJ0b8WbY2kgb3Bpc2FueSB3IFphc2FkYWNoIHBvbGl0eWtpIERlYmlhbmEuIExpc3TEmSB0eWNoICIKKyJ3YXJ0b8WbY2kgbW/FvG5hIHpuYWxlxbrEhyB3IG5ham5vd3N6ZWogd2Vyc2ppIHBha2lldHUgQjxkZWJpYW4tcG9saWN5Pi4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjcxIGRlYi1zcmMtY29udHJvbC41OjIxNgorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPEVzc2VudGlhbDo+IEU8bHQ+eWVzfG5vRTxndD4iCittc2dpZCAiQjxFc3NlbnRpYWw6PiBCPHllcz58Qjxubz4iCittc2dzdHIgIkI8RXNzZW50aWFsOj4gRTxsdD55ZXN8bm9FPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNTo3OAorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiVGhpcyBmaWVsZCBpcyB1c3VhbGx5IG9ubHkgbmVlZGVkIHdoZW4gdGhlIGFuc3dlciBpcyBgeWVzJy4gSXQgZGVub3RlcyBhICIKKyN8ICJwYWNrYWdlIHRoYXQgaXMgcmVxdWlyZWQgZm9yIHByb3BlciBvcGVyYXRpb24gb2YgdGhlIHN5c3RlbS4gRHBrZyBvciBhbnkgIgorI3wgIm90aGVyIGluc3RhbGxhdGlvbiB0b29sIHdpbGwgbm90IGFsbG93IGFuIEI8RXNzZW50aWFsPiBwYWNrYWdlIHRvIGJlICIKKyN8ICJyZW1vdmVkIChhdCBsZWFzdCBub3Qgd2l0aG91dCB1c2luZyBvbmUgb2YgdGhlIGZvcmNlIG9wdGlvbnMpLiIKK21zZ2lkICIiCisiVGhpcyBmaWVsZCBpcyB1c3VhbGx5IG9ubHkgbmVlZGVkIHdoZW4gdGhlIGFuc3dlciBpcyBCPHllcz4uIEl0IGRlbm90ZXMgYSAiCisicGFja2FnZSB0aGF0IGlzIHJlcXVpcmVkIGZvciBwcm9wZXIgb3BlcmF0aW9uIG9mIHRoZSBzeXN0ZW0uIERwa2cgb3IgYW55ICIKKyJvdGhlciBpbnN0YWxsYXRpb24gdG9vbCB3aWxsIG5vdCBhbGxvdyBhbiBCPEVzc2VudGlhbD4gcGFja2FnZSB0byBiZSByZW1vdmVkICIKKyIoYXQgbGVhc3Qgbm90IHdpdGhvdXQgdXNpbmcgb25lIG9mIHRoZSBmb3JjZSBvcHRpb25zKS4iCittc2dzdHIgIiIKKyJUbyBwb2xlIGplc3QgdcW8eXRlY3puZSB0eWxrbywgZ2R5IGplZ28gd2FydG/Fm2NpxIUgamVzdCBcInllc1wiLiBPem5hY3phIG9ubywgIgorIsW8ZSBwYWtpZXQgamVzdCBuaWV6YsSZZG55IGRvIHBvcHJhd25lZ28gZHppYcWCYW5pYSBzeXN0ZW11LiBBbmkgZHBrZywgYW5pICIKKyLFvGFkbmUgaW5uZSBuYXJ6xJlkemllIGluc3RhbGFjeWpuZSBuaWUgcG96d29sxIUgdXN1bsSFxIcgcGFraWV0dSBvem5hY3pvbmVnbyAiCisiamFrbyBCPEVzc2VudGlhbD4gKGNoeWJhLCDFvGUgdcW8eWplIHNpxJkgc3BlY2phbG5laiBvcGNqaSB3eW11c3phasSFY2VqICIKKyJ1c3VuacSZY2llIHRha2llZ28gcGFraWV0dSkuIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNTo3OAorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPEFyY2hpdGVjdHVyZTo+IEU8bHQ+YXJjaHxhbGxFPGd0PiIKK21zZ2lkICJCPEFyY2hpdGVjdHVyZTo+IEk8YXJjaD58QjxhbGw+IgorbXNnc3RyICJCPEFyY2hpdGVjdHVyZTo+IEU8bHQ+YXJjaGl0ZWt0dXJhfGFsbEU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41Ojg2Cittc2dpZCAiIgorIlRoZSBhcmNoaXRlY3R1cmUgc3BlY2lmaWVzIHdoaWNoIHR5cGUgb2YgaGFyZHdhcmUgdGhpcyBwYWNrYWdlIHdhcyBjb21waWxlZCAiCisiZm9yLiBDb21tb24gYXJjaGl0ZWN0dXJlcyBhcmUgYGkzODYnLCBgbTY4aycsIGBzcGFyYycsIGBhbHBoYScsIGBwb3dlcnBjJyAiCisiZXRjLiBOb3RlIHRoYXQgdGhlIEI8YWxsPiBvcHRpb24gaXMgbWVhbnQgZm9yIHBhY2thZ2VzIHRoYXQgYXJlIGFyY2hpdGVjdHVyZSAiCisiaW5kZXBlbmRlbnQuIFNvbWUgZXhhbXBsZXMgb2YgdGhpcyBhcmUgc2hlbGwgYW5kIFBlcmwgc2NyaXB0cywgYW5kICIKKyJkb2N1bWVudGF0aW9uLiIKK21zZ3N0ciAiIgorIkFyY2hpdGVrdHVyYSBva3JlxZtsYSwgZGxhIGpha2llZ28gdHlwdSBtYXN6eW4gcGFraWV0IHpvc3RhxYIgc2tvbXBpbG93YW55LiAiCisiWnd5Y3pham93ZSBhcmNoaXRla3R1cnkgdG8gXCJpMzg2XCIsIFwibTY4a1wiLCBcInNwYXJjXCIsIFwiYWxwaGFcIiwgIgorIlwicG93ZXJwY1wiIGl0cC4gVXdhZ2E6IG9wY2phIEI8YWxsPiBvem5hY3phLCDFvGUgcGFraWV0IGplc3QgbmllemFsZcW8bnkgb2QgIgorImFyY2hpdGVrdHVyeSAtIG5hIHByenlrxYJhZCB6YXdpZXJhIHR5bGtvIHNrcnlwdHkgcG93xYJva2kgbHViIFBlcmxhIGFsYm8gIgorImRva3VtZW50YWNqxJkuIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNTo4NiBkZWItc3JjLWNvbnRyb2wuNTo4NQorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPE9yaWdpbjo+IEU8bHQ+bmFtZUU8Z3Q+IgorbXNnaWQgIkI8T3JpZ2luOj5JPCBuYW1lPiIKK21zZ3N0ciAiQjxPcmlnaW46PiBFPGx0Pm5hendhRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6ODkKK21zZ2lkICJUaGUgbmFtZSBvZiB0aGUgZGlzdHJpYnV0aW9uIHRoaXMgcGFja2FnZSBpcyBvcmlnaW5hdGluZyBmcm9tLiIKK21zZ3N0ciAiTmF6d2EgZHlzdHJ5YnVjamksIHoga3TDs3JlaiBwb2Nob2R6aSBwYWtpZXQuIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNTo4OSBkZWItc3JjLWNvbnRyb2wuNTo2NgorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPEJ1Z3M6PiBFPGx0PnVybEU8Z3Q+IgorbXNnaWQgIkI8QnVnczo+STwgdXJsPiIKK21zZ3N0ciAiQjxCdWdzOj4gRTxsdD51cmxFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNTo5NAorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiVGhlIHVybCBvZiB0aGUgYnVnIHRyYWNraW5nIHN5c3RlbSBmb3IgdGhpcyBwYWNrYWdlLiBUaGUgY3VycmVudCB1c2VkICIKKyN8ICJmb3JtYXQgaXMgQjxFPGx0PmJ0c190eXBlRTxndD46Ly9FPGx0PmJ0c19hZGRyZXNzRTxndD4+LCBsaWtlIEI8ZGViYnVnczovLyIKKyN8ICJidWdzLmRlYmlhbi5vcmc+LiIKK21zZ2lkICIiCisiVGhlIEk8dXJsPiBvZiB0aGUgYnVnIHRyYWNraW5nIHN5c3RlbSBmb3IgdGhpcyBwYWNrYWdlLiBUaGUgY3VycmVudCB1c2VkICIKKyJmb3JtYXQgaXMgSTxidHMtdHlwZT5CPDovLz5JPGJ0cy1hZGRyZXNzPiwgbGlrZSBCPGRlYmJ1Z3M6Ly9idWdzLmRlYmlhbi5vcmc+LiIKK21zZ3N0ciAiIgorIlVSTCBzeXN0ZW11IHpnxYJhc3phbmlhIGLFgsSZZMOzdyBkbGEgdGVnbyBwYWtpZXR1LiBPYmVjbmllIHXFvHl3YW55bSBmb3JtYXRlbSAiCisiamVzdCBpcyBCPEU8bHQ+dHlwX2J0c0U8Z3Q+Oi8vRTxsdD5hZHJlc19idHNFPGd0Pj4sIG5hIHByenlrxYJhZDogQjxkZWJidWdzOi8vIgorImJ1Z3MuZGViaWFuLm9yZz4uIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNTo5NCBkZWItc3JjLWNvbnRyb2wuNTo2MgorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPEhvbWVwYWdlOj4gRTxsdD51cmxFPGd0PiIKK21zZ2lkICJCPEhvbWVwYWdlOj5JPCB1cmw+IgorbXNnc3RyICJCPEhvbWVwYWdlOj4gRTxsdD51cmxFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNTo5NworIywgZnV6enkKKyN8IG1zZ2lkICJUaGUgdXBzdHJlYW0gcHJvamVjdCBob21lIHBhZ2UgVVJMLiIKK21zZ2lkICJUaGUgdXBzdHJlYW0gcHJvamVjdCBob21lIHBhZ2UgSTx1cmw+LiIKK21zZ3N0ciAiVVJMIGRvIHN0cm9ueSBkb21vd2VqIHByb2pla3R1LiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6OTcgZGViLXNyYy1jb250cm9sLjU6MjIyCisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8VGFnOj4gRTxsdD50YWcgbGlzdEU8Z3Q+IgorbXNnaWQgIkI8VGFnOj5JPCB0YWctbGlzdD4iCittc2dzdHIgIkI8VGFnOj4gRTxsdD5saXN0YSB6bmFjem5pa8Ozd0U8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjEwMQorbXNnaWQgIiIKKyJMaXN0IG9mIHRhZ3MgZGVzY3JpYmluZyB0aGUgcXVhbGl0aWVzIG9mIHRoZSBwYWNrYWdlLiBUaGUgZGVzY3JpcHRpb24gYW5kICIKKyJsaXN0IG9mIHN1cHBvcnRlZCB0YWdzIGNhbiBiZSBmb3VuZCBpbiB0aGUgQjxkZWJ0YWdzPiBwYWNrYWdlLiIKK21zZ3N0ciAiIgorIkxpc3RhIHpuYWN6bmlrw7N3IG9waXN1asSFY3ljaCBjZWNoeSBwYWtpZXR1LiBPcGlzIGkgbGlzdMSZIG9ic8WCdWdpd2FueWNoICIKKyJ6bmFjem5pa8OzdyBtb8W8bmEgem5hbGXFusSHIHcgcGFraWVjaWUgQjxkZWJ0YWdzPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjEwMSBkZWItc3JjLWNvbnRyb2wuNToyMTkKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxTb3VyY2U6PiBFPGx0PnNvdXJjZSBuYW1lRTxndD4iCittc2dpZCAiQjxNdWx0aS1BcmNoOj4gQjxzYW1lPnxCPGZvcmVpZ24+fEI8YWxsb3dlZD4iCittc2dzdHIgIkI8U291cmNlOj4gRTxsdD5uYXp3YSDFunLDs2TFgmFFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToxMTMKK21zZ2lkICIiCisiVGhpcyBmaWVsZCBpcyB1c2VkIHRvIGluZGljYXRlIGhvdyB0aGlzIHBhY2thZ2Ugc2hvdWxkIGJlaGF2ZSBvbiBhIG11bHRpLSIKKyJhcmNoIGluc3RhbGxhdGlvbnMuIFRoZSB2YWx1ZSBCPHNhbWU+IG1lYW5zIHRoYXQgdGhlIHBhY2thZ2UgaXMgY28tIgorImluc3RhbGxhYmxlIHdpdGggaXRzZWxmLCBidXQgaXQgbXVzdCBub3QgYmUgdXNlZCB0byBzYXRpc2Z5IHRoZSBkZXBlbmRlbmN5ICIKKyJvZiBhbnkgcGFja2FnZSBvZiBhIGRpZmZlcmVudCBhcmNoaXRlY3R1cmUgZnJvbSBpdHNlbGYuIFRoZSB2YWx1ZSBCPGZvcmVpZ24+ICIKKyJtZWFucyB0aGF0IHRoZSBwYWNrYWdlIGlzIG5vdCBjby1pbnN0YWxsYWJsZSB3aXRoIGl0c2VsZiwgYnV0IHNob3VsZCBiZSAiCisiYWxsb3dlZCB0byBzYXRpc2Z5IHRoZSBkZXBlbmRlbmN5IG9mIGEgcGFja2FnZSBvZiBhIGRpZmZlcmVudCBhcmNoIGZyb20gIgorIml0c2VsZi4gVGhlIHZhbHVlIEI8YWxsb3dlZD4gYWxsb3dzIHJldmVyc2UtZGVwZW5kZW5jaWVzIHRvIGluZGljYXRlIGluICIKKyJ0aGVpciBEZXBlbmRzIGZpZWxkIHRoYXQgdGhleSBuZWVkIGEgcGFja2FnZSBmcm9tIGEgZm9yZWlnbiBhcmNoaXRlY3R1cmUsICIKKyJidXQgaGFzIG5vIGVmZmVjdCBvdGhlcndpc2UuIFRoaXMgZmllbGQgc2hvdWxkIG5vdCBiZSBwcmVzZW50IGluIHBhY2thZ2VzICIKKyJ3aXRoIHRoZSBCPEFyY2hpdGVjdHVyZTogYWxsPiBmaWVsZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MTEzCisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8U291cmNlOj4gRTxsdD5zb3VyY2UgbmFtZUU8Z3Q+IgorbXNnaWQgIkI8U291cmNlOj5JPCBzb3VyY2UtbmFtZT4iCittc2dzdHIgIkI8U291cmNlOj4gRTxsdD5uYXp3YSDFunLDs2TFgmFFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToxMTcKK21zZ2lkICIiCisiVGhlIG5hbWUgb2YgdGhlIHNvdXJjZSBwYWNrYWdlIHRoYXQgdGhpcyBiaW5hcnkgcGFja2FnZSBjYW1lIGZyb20sIGlmICIKKyJkaWZmZXJlbnQgdGhhbiB0aGUgbmFtZSBvZiB0aGUgcGFja2FnZSBpdHNlbGYuIgorbXNnc3RyICIiCisiTmF6d2EgcGFraWV0dSDFunLDs2TFgm93ZWdvLCBuYSBwb2RzdGF3aWUga3TDs3JlZ28gem9zdGHFgiB1dHdvcnpvbnkgZGFueSBwYWtpZXQgIgorImJpbmFybnksIGplxbxlbGkgamVzdCByw7PFvG5hIG9kIG5hend5IHRlZ28gcGFraWV0dSBiaW5hcm5lZ28uIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNToxMTggZGViLXNyYy1jb250cm9sLjU6MjAyCisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8QXJjaGl0ZWN0dXJlOj4gRTxsdD5hcmNofGFsbEU8Z3Q+IgorbXNnaWQgIkI8U3ViYXJjaGl0ZWN0dXJlOj5JPCB2YWx1ZT4iCittc2dzdHIgIkI8QXJjaGl0ZWN0dXJlOj4gRTxsdD5hcmNoaXRla3R1cmF8YWxsRTxndD4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjEyMSBkZWItc3JjLWNvbnRyb2wuNToyMDUKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxWZXJzaW9uOj4gRTxsdD52ZXJzaW9uRTxndD4iCittc2dpZCAiQjxLZXJuZWwtVmVyc2lvbjo+STwgdmFsdWU+IgorbXNnc3RyICJCPFZlcnNpb246PiBFPGx0PndlcnNqYUU8Z3Q+IgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNToxMjQgZGViLXNyYy1jb250cm9sLjU6MjA4CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8RGF0ZTo+IEU8bHQ+ZGF0ZUU8Z3Q+IgorbXNnaWQgIkI8SW5zdGFsbGVyLU1lbnUtSXRlbTo+STwgdmFsdWU+IgorbXNnc3RyICJCPERhdGU6PiBFPGx0PmRhdGFFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToxMzEgZGViLXNyYy1jb250cm9sLjU6MjE1Cittc2dpZCAiIgorIlRoZXNlIGZpZWxkcyBhcmUgdXNlZCBieSB0aGUgZGViaWFuLWluc3RhbGxlciBhbmQgYXJlIHVzdWFsbHkgbm90IG5lZWRlZC4gICIKKyJTZWUgL3Vzci9zaGFyZS9kb2MvZGViaWFuLWluc3RhbGxlci9kZXZlbC9tb2R1bGVzLnR4dCBmcm9tIHRoZSBCPGRlYmlhbi0iCisiaW5zdGFsbGVyPiBwYWNrYWdlIGZvciBtb3JlIGRldGFpbHMgYWJvdXQgdGhlbS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MTMyIGRlYi1zcmMtY29udHJvbC41OjIzMworIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPERlcGVuZHM6PiBFPGx0PnBhY2thZ2UgbGlzdEU8Z3Q+IgorbXNnaWQgIkI8RGVwZW5kczo+STwgcGFja2FnZS1saXN0PiIKK21zZ3N0ciAiQjxEZXBlbmRzOj4gRTxsdD5saXN0YSBwYWtpZXTDs3dFPGd0PiIKKworIyBjaGVjayBtZSEKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MTQzCittc2dpZCAiIgorIkxpc3Qgb2YgcGFja2FnZXMgdGhhdCBhcmUgcmVxdWlyZWQgZm9yIHRoaXMgcGFja2FnZSB0byBwcm92aWRlIGEgbm9uLXRyaXZpYWwgIgorImFtb3VudCBvZiBmdW5jdGlvbmFsaXR5LiBUaGUgcGFja2FnZSBtYWludGVuYW5jZSBzb2Z0d2FyZSB3aWxsIG5vdCBhbGxvdyBhICIKKyJwYWNrYWdlIHRvIGJlIGluc3RhbGxlZCBpZiB0aGUgcGFja2FnZXMgbGlzdGVkIGluIGl0cyBCPERlcGVuZHM+IGZpZWxkICIKKyJhcmVuJ3QgaW5zdGFsbGVkIChhdCBsZWFzdCBub3Qgd2l0aG91dCB1c2luZyB0aGUgZm9yY2Ugb3B0aW9ucykuICBJbiBhbiAiCisiaW5zdGFsbGF0aW9uLCB0aGUgcG9zdGluc3Qgc2NyaXB0cyBvZiBwYWNrYWdlcyBsaXN0ZWQgaW4gRGVwZW5kczogZmllbGRzIGFyZSAiCisicnVuIGJlZm9yZSB0aG9zZSBvZiB0aGUgcGFja2FnZXMgd2hpY2ggZGVwZW5kIG9uIHRoZW0uIE9uIHRoZSBvcHBvc2l0ZSwgaW4gYSAiCisicmVtb3ZhbCwgdGhlIHByZXJtIHNjcmlwdCBvZiBhIHBhY2thZ2UgaXMgcnVuIGJlZm9yZSB0aG9zZSBvZiB0aGUgcGFja2FnZXMgIgorImxpc3RlZCBpbiBpdHMgRGVwZW5kczogZmllbGQuIgorbXNnc3RyICIiCisiTGlzdGEgcGFraWV0w7N3IHBvdHJ6ZWJueWNoIHRlbXUgcGFraWV0b3dpLCBhYnkgbcOzZ8WCIGRvc3RhcmN6ecSHIHpuYWN6xIVjxIUgIgorImN6xJnFm8SHIHN3b2plaiBmdW5rY2pvbmFsbm/Fm2NpLiBOYXJ6xJlkemlhIGRvIHphcnrEhWR6YW5pYSBwYWtpZXRhbWkgbmllIHBvendvbMSFICIKKyJuYSB6YWluc3RhbG93YW5pZSBwYWtpZXR1IChvIGlsZSBuaWUgdcW8eWplIHNpxJkgb3BjamkgdHlwdSAtLWZvcmNlKSwgemFuaW0gIgorIm5pZSB6b3N0YW7EhSB6YWluc3RhbG93YW5lIHdzenlzdGtpZSBwYWtpZXR5IHd5bWllbmlvbmUgdyBwb2x1IEI8RGVwZW5kcz4uICIKKyJQb2RjemFzIGluc3RhbGFjamkgc2tyeXB0eSBwb2luc3RhbGFjeWpuZSBwYWtpZXTDs3cgd3ltaWVuaW9ueWNoIHcgcG9sdSAiCisiRGVwZW5kczogc8SFIHVydWNoYW1pYW5lIHByemVkIHNrcnlwdGFtaSBwYWtpZXTDs3csIGt0w7NyZSBvZCBuaWNoIHphbGXFvMSFLiAiCisiUG9kY3phcyB1c3V3YW5pYSwgc2tyeXB0eSBwcnplZHVzdXdhasSFY2UgcGFraWV0dSBzxIUgdXJ1Y2hhbWlhbmUgcHJ6ZWQgIgorInNrcnlwdGFtaSBwYWtpZXTDs3cgd3ltaWVuaW9ueWNoIHcgcG9sdSBEZXBlbmRzOi4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjE0MyBkZWItc3JjLWNvbnRyb2wuNToyMzYKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxQcmUtRGVwZW5kczo+IEU8bHQ+cGFja2FnZSBsaXN0RTxndD4iCittc2dpZCAiQjxQcmUtRGVwZW5kczo+STwgcGFja2FnZS1saXN0PiIKK21zZ3N0ciAiQjxQcmUtRGVwZW5kczo+IEU8bHQ+bGlzdGEgcGFraWV0w7N3RTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MTUwCittc2dpZCAiIgorIkxpc3Qgb2YgcGFja2FnZXMgdGhhdCBtdXN0IGJlIGluc3RhbGxlZCBCPGFuZD4gY29uZmlndXJlZCBiZWZvcmUgdGhpcyBvbmUgIgorImNhbiBiZSBpbnN0YWxsZWQuIFRoaXMgaXMgdXN1YWxseSB1c2VkIGluIHRoZSBjYXNlIHdoZXJlIHRoaXMgcGFja2FnZSAiCisicmVxdWlyZXMgYW5vdGhlciBwYWNrYWdlIGZvciBydW5uaW5nIGl0cyBwcmVpbnN0IHNjcmlwdC4iCittc2dzdHIgIiIKKyJMaXN0YSBwYWtpZXTDs3csIGt0w7NyZSBtdXN6xIUgYnnEhyB6YWluc3RhbG93YW5lIEI8b3Jhej4gc2tvbmZpZ3Vyb3dhbmUgemFuaW0gIgorInRlbiBwYWtpZXQgYsSZZHppZSBtw7NnxYIgYnnEhyB6YWluc3RhbG93YW55LiBaYXp3eWN6YWogamVzdCB1xbx5d2FuZSB3IHByenlwYWRrdSAiCisiZ2R5IHBha2lldCB3eW1hZ2EgaW5uZWdvIHBha2lldHUgZG8gdXJ1Y2hvbWllbmlhIHN3b2ljaCBza3J5cHTDs3cgIgorInByZWluc3RhbGFjeWpueWNoLiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MTUwIGRlYi1zcmMtY29udHJvbC41OjIzOQorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPFJlY29tbWVuZHM6PiBFPGx0PnBhY2thZ2UgbGlzdEU8Z3Q+IgorbXNnaWQgIkI8UmVjb21tZW5kczo+STwgcGFja2FnZS1saXN0PiIKK21zZ3N0ciAiQjxSZWNvbW1lbmRzOj4gRTxsdD5saXN0YSBwYWtpZXTDs3dFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToxNTcKK21zZ2lkICIiCisiTGlzdHMgcGFja2FnZXMgdGhhdCB3b3VsZCBiZSBmb3VuZCB0b2dldGhlciB3aXRoIHRoaXMgb25lIGluIGFsbCBidXQgdW51c3VhbCAiCisiaW5zdGFsbGF0aW9ucy4gVGhlIHBhY2thZ2UgbWFpbnRlbmFuY2Ugc29mdHdhcmUgd2lsbCB3YXJuIHRoZSB1c2VyIGlmIHRoZXkgIgorImluc3RhbGwgYSBwYWNrYWdlIHdpdGhvdXQgdGhvc2UgbGlzdGVkIGluIGl0cyBCPFJlY29tbWVuZHM+IGZpZWxkLiIKK21zZ3N0ciAiIgorIkxpc3RhIHBha2lldMOzdywga3TDs3JlIHBvd2lubnkgc2nEmSB6bmFsZcW6xIcgcmF6ZW0gd2Ugd3N6eXN0a2ljaCBpbnN0YWxhY2phY2ggIgorInBvemEgdHltaSBiYXJkem8gbmllc3RhbmRhcmRvd3ltaS4gTmFyesSZZHppYSBkbyB6YXJ6xIVkemFuaWEgcGFraWV0YW1pICIKKyJvc3RyemVnxIUgdcW8eXRrb3duaWthLCBwb2RjemFzIGluc3RhbGFjamkgcGFraWV0dSBiZXogaW5zdGFsb3dhbmlhIHBha2lldMOzdyAiCisid3ltaWVuaW9ueWNoIHcgcG9sdSBCPFJlY29tbWVuZHM+LiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MTU3IGRlYi1zcmMtY29udHJvbC41OjI0MgorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPFN1Z2dlc3RzOj4gRTxsdD5wYWNrYWdlIGxpc3RFPGd0PiIKK21zZ2lkICJCPFN1Z2dlc3RzOj5JPCBwYWNrYWdlLWxpc3Q+IgorbXNnc3RyICJCPFN1Z2dlc3RzOj4gRTxsdD5saXN0YSBwYWtpZXTDs3dFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToxNjIKK21zZ2lkICIiCisiTGlzdHMgcGFja2FnZXMgdGhhdCBhcmUgcmVsYXRlZCB0byB0aGlzIG9uZSBhbmQgY2FuIHBlcmhhcHMgZW5oYW5jZSBpdHMgIgorInVzZWZ1bG5lc3MsIGJ1dCB3aXRob3V0IHdoaWNoIGluc3RhbGxpbmcgdGhpcyBwYWNrYWdlIGlzIHBlcmZlY3RseSAiCisicmVhc29uYWJsZS4iCittc2dzdHIgIiIKKyJMaXN0YSBwYWtpZXTDs3cgcG93acSFemFueWNoIHogdHltIHBha2lldGVtLCBrdMOzcmUgbW9nxIUgendpxJlrc3p5xIcgamVnbyAiCisidcW8eXRlY3pub8WbxIcsIGFsZSBiZXoga3TDs3J5Y2ggcGFraWV0IG1vxbxlIHNpxJkgb2JlasWbxIcuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjE3NAorbXNnaWQgIiIKKyJUaGUgc3ludGF4IG9mIEI8RGVwZW5kcz4sIEI8UHJlLURlcGVuZHM+LCBCPFJlY29tbWVuZHM+IGFuZCBCPFN1Z2dlc3RzPiAiCisiZmllbGRzIGlzIGEgbGlzdCBvZiBncm91cHMgb2YgYWx0ZXJuYXRpdmUgcGFja2FnZXMuIEVhY2ggZ3JvdXAgaXMgYSBsaXN0IG9mICIKKyJwYWNrYWdlcyBzZXBhcmF0ZWQgYnkgdmVydGljYWwgYmFyIChvciBgcGlwZScpIHN5bWJvbHMsIGB8Jy4gVGhlIGdyb3VwcyBhcmUgIgorInNlcGFyYXRlZCBieSBjb21tYXMuIENvbW1hcyBhcmUgdG8gYmUgcmVhZCBhcyBgQU5EJywgYW5kIHBpcGVzIGFzIGBPUicsIHdpdGggIgorInBpcGVzIGJpbmRpbmcgbW9yZSB0aWdodGx5LiBFYWNoIHBhY2thZ2UgbmFtZSBpcyBvcHRpb25hbGx5IGZvbGxvd2VkIGJ5IGEgIgorInZlcnNpb24gbnVtYmVyIHNwZWNpZmljYXRpb24gaW4gcGFyZW50aGVzZXMuIgorbXNnc3RyICIiCisiV2FydG/Fm2NpxIUgcMOzbCBCPERlcGVuZHM+LCBCPFByZS1EZXBlbmRzPiwgQjxSZWNvbW1lbmRzPiBpIEI8U3VnZ2VzdHM+IGplc3QgIgorImxpc3RhIGdydXAgYWx0ZXJuYXR5d255Y2ggcGFraWV0w7N3LiBLYcW8ZGEgZ3J1cGEgamVzdCBsaXN0xIUgcGFraWV0w7N3ICIKKyJvZGR6aWVsb255Y2ggc3ltYm9sYW1pIHBpb25vd2VqIGtyZXNraSAoXCJ8XCIpLiBHcnVweSBvZGR6aWVsb25lIHPEhSBvZCAiCisic2llYmllIHByemVjaW5rYW1pLiBQcnplY2lua2kgbWFqxIUgem5hY3plbmllIFwiSVwiIChrb25pdW5rY2phKSwgYSBrcmVza2kgLSAiCisiXCJMVUJcIiAoYWx0ZXJuYXR5d2EpLCBwcnp5IGN6eW0gcHJpb3J5dGV0IGtvbml1bmtjamkgamVzdCB3ecW8c3p5LiBQbyBrYcW8ZGVqICIKKyJuYXdpZSBwYWtpZXR1IG1vxbxlIG9wY2pvbmFsbmllIHd5c3TEmXBvd2HEhyBudW1lciB3ZXJzamkgcG9kYW55IHcgbmF3aWFzYWNoLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToxODAKK21zZ2lkICIiCisiQSB2ZXJzaW9uIG51bWJlciBtYXkgc3RhcnQgd2l0aCBhIGBFPGd0PkU8Z3Q+JywgaW4gd2hpY2ggY2FzZSBhbnkgbGF0ZXIgIgorInZlcnNpb24gd2lsbCBtYXRjaCwgYW5kIG1heSBzcGVjaWZ5IG9yIG9taXQgdGhlIERlYmlhbiBwYWNrYWdpbmcgcmV2aXNpb24gIgorIihzZXBhcmF0ZWQgYnkgYSBoeXBoZW4pLiBBY2NlcHRlZCB2ZXJzaW9uIHJlbGF0aW9uc2hpcHMgYXJlIFwiRTxndD5FPGd0PlwiICIKKyJmb3IgZ3JlYXRlciB0aGFuLCBcIkU8bHQ+RTxsdD5cIiBmb3IgbGVzcyB0aGFuLCBcIkU8Z3Q+PVwiIGZvciBncmVhdGVyIHRoYW4gIgorIm9yIGVxdWFsIHRvLCBcIkU8bHQ+PVwiIGZvciBsZXNzIHRoYW4gb3IgZXF1YWwgdG8sIGFuZCBcIj1cIiBmb3IgZXF1YWwgdG8uIgorbXNnc3RyICIiCisiTnVtZXIgd2Vyc2ppIG1vxbxlIHphY3p5bmHEhyBzacSZIG9kIFwiRTxndD5FPGd0PlwiLCBjbyBvem5hY3phLCDFvGUga2HFvGRhICIKKyJww7PFum5pZWpzemEgd2Vyc2phIHBha2lldHUgYsSZZHppZSBvZHBvd2llZG5pYTsgbW/FvG5hIHRha8W8ZSBwb2Rhd2HEhyBsdWIgIgorInBvbWlqYcSHIHdlcnNqxJkgem1pYW4gRGViaWFuYSAocG8gem5ha3UgbXnFm2xuaWthKS4gQWtjZXB0b3dhbG5lIHJlbGFjamUgc8SFICIKKyJuYXN0xJlwdWrEhWNlOiBcIkU8Z3Q+RTxndD5cIiAtIHdpxJlrc3p5IG5pxbwsIFwiRTxsdD5FPGx0PlwiIC0gbW5pZWpzenkgbmnFvCwgIgorIlwiRTxndD49XCIgLSB3acSZa3N6eSBsdWIgcsOzd255LCBcIkU8bHQ+PVwiIC0gbW5pZWpzenkgbHViIHLDs3dueSBvcmF6IFwiPVwiIC0gIgorInLDs3dueS4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjE4MCBkZWItc3JjLWNvbnRyb2wuNToyNDUKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxCcmVha3M6PiBFPGx0PnBhY2thZ2UgbGlzdEU8Z3Q+IgorbXNnaWQgIkI8QnJlYWtzOj5JPCBwYWNrYWdlLWxpc3Q+IgorbXNnc3RyICJCPEJyZWFrczo+IEU8bHQ+bGlzdGEgcGFraWV0w7N3RTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MTg4Cittc2dpZCAiIgorIkxpc3RzIHBhY2thZ2VzIHRoYXQgdGhpcyBvbmUgYnJlYWtzLCBmb3IgZXhhbXBsZSBieSBleHBvc2luZyBidWdzIHdoZW4gdGhlICIKKyJuYW1lZCBwYWNrYWdlcyByZWx5IG9uIHRoaXMgb25lLiBUaGUgcGFja2FnZSBtYWludGVuYW5jZSBzb2Z0d2FyZSB3aWxsIG5vdCAiCisiYWxsb3cgYnJva2VuIHBhY2thZ2VzIHRvIGJlIGNvbmZpZ3VyZWQ7IGdlbmVyYWxseSB0aGUgcmVzb2x1dGlvbiBpcyB0byAiCisidXBncmFkZSB0aGUgcGFja2FnZXMgbmFtZWQgaW4gYSBCPEJyZWFrcz4gZmllbGQuIgorbXNnc3RyICIiCisiTGlzdGEgcGFraWV0w7N3IHBzdXR5Y2ggcHJ6ZXogZGFueSBwYWtpZXQsIG5hIHByenlrxYJhZCBwcnpleiB1amF3bmlhbmllIHNpxJkgIgorImLFgsSZZMOzdywga2llZHkgZGFueSBwYWtpZXQgemFsZcW8eSBvZCB0ZWdvLiBOYXJ6xJlkemlhIGRvIHphcnrEhWR6YW5pYSBwYWtpZXRhbWkgIgorIm5pZSBwb3p3b2zEhSBuYSBza29uZmlndXJvd2FuaWUgdGFraWNoIHplcHN1dHljaCBwYWtpZXTDs3c7IHJvendpxIV6YW5pZW0gdGVnbyAiCisicHJvYmxlbXUgamVzdCBha3R1YWxpemFjamEgcGFraWV0dSB3eW1pZW5pb25lZ28gdyBwb2x1IEI8QnJlYWtzPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjE4OCBkZWItc3JjLWNvbnRyb2wuNToyNTQKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxDb25mbGljdHM6PiBFPGx0PnBhY2thZ2UgbGlzdEU8Z3Q+IgorbXNnaWQgIkI8Q29uZmxpY3RzOj5JPCBwYWNrYWdlLWxpc3Q+IgorbXNnc3RyICJCPENvbmZsaWN0czo+IEU8bHQ+bGlzdGEgcGFraWV0w7N3RTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MTk2Cittc2dpZCAiIgorIkxpc3RzIHBhY2thZ2VzIHRoYXQgY29uZmxpY3Qgd2l0aCB0aGlzIG9uZSwgZm9yIGV4YW1wbGUgYnkgY29udGFpbmluZyBmaWxlcyAiCisid2l0aCB0aGUgc2FtZSBuYW1lcy4gVGhlIHBhY2thZ2UgbWFpbnRlbmFuY2Ugc29mdHdhcmUgd2lsbCBub3QgYWxsb3cgIgorImNvbmZsaWN0aW5nIHBhY2thZ2VzIHRvIGJlIGluc3RhbGxlZCBhdCB0aGUgc2FtZSB0aW1lLiBUd28gY29uZmxpY3RpbmcgIgorInBhY2thZ2VzIHNob3VsZCBlYWNoIGluY2x1ZGUgYSBCPENvbmZsaWN0cz4gbGluZSBtZW50aW9uaW5nIHRoZSBvdGhlci4iCittc2dzdHIgIiIKKyJMaXN0YSBwYWtpZXTDs3csIGt0w7NyZSBzxIUgdyBrb25mbGlrY2llIHogZGFueW0gcGFraWV0ZW0sIG5hIHByenlrxYJhZCAiCisiemF3aWVyYWrEhSBwbGlrIG8gdGVqIHNhbWVqIG5hendpZSwgTmFyesSZZHppYSBkbyB6YXJ6xIVkemFuaWEgcGFraWV0YW1pIG5pZSAiCisicG96d29sxIUgbmEgemFpbnN0YWxvd2FuaWUgcGFraWV0w7N3IGLEmWTEhWN5Y2ggdyBrb25mbGlrY2llIHcgdHltIHNhbXltIGN6YXNpZS4gIgorIkthxbxkeSB6IHBha2lldMOzdyBixJlkxIVjeWNoIHcga29uZmxpa2NpZSBwb3dpbmllbiB6YXdpZXJhxIcgcG9sZSBCPENvbmZsaWN0cz4gIgorIndza2F6dWrEhWNlIG5hIGRydWdpIHBha2lldC4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjE5NiBkZWItc3JjLWNvbnRyb2wuNToyNTEKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxSZXBsYWNlczo+IEU8bHQ+cGFja2FnZSBsaXN0RTxndD4iCittc2dpZCAiQjxSZXBsYWNlczo+STwgcGFja2FnZS1saXN0PiIKK21zZ3N0ciAiQjxSZXBsYWNlczo+IEU8bHQ+bGlzdGEgcGFraWV0w7N3RTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MjA0Cittc2dpZCAiIgorIkxpc3Qgb2YgcGFja2FnZXMgZmlsZXMgZnJvbSB3aGljaCB0aGlzIG9uZSByZXBsYWNlcy4gVGhpcyBpcyB1c2VkIGZvciAiCisiYWxsb3dpbmcgdGhpcyBwYWNrYWdlIHRvIG92ZXJ3cml0ZSB0aGUgZmlsZXMgb2YgYW5vdGhlciBwYWNrYWdlIGFuZCBpcyAiCisidXN1YWxseSB1c2VkIHdpdGggdGhlIEI8Q29uZmxpY3RzPiBmaWVsZCB0byBmb3JjZSByZW1vdmFsIG9mIHRoZSBvdGhlciAiCisicGFja2FnZSwgaWYgdGhpcyBvbmUgYWxzbyBoYXMgdGhlIHNhbWUgZmlsZXMgYXMgdGhlIGNvbmZsaWN0ZWQgcGFja2FnZS4iCittc2dzdHIgIiIKKyJMaXN0YSBwYWtpZXTDs3csIGt0w7NyZSBzxIUgemFzdMSZcG93YW5lIHByemV6IGRhbnkgcGFraWV0LiBQb3p3YWxhIHRvIG5hIHRvLCAiCisiYWJ5IHBha2lldCBtw7NnxYIgbmFkcGlzYcSHIHBsaWtpIHpuYWpkdWrEhWNlIHNpxJkgdyBpbm55bSBwYWtpZWNpZSBpIHphend5Y3phaiAiCisiamVzdCB1xbx5d2FuZSByw7N3bm9jemXFm25pZSB6IHBvbGVtIEI8Q29uZmxpY3RzPiwgxbxlYnkgd3ltdXNpxIcgdXN1bmnEmWNpZSAiCisiaW5uZWdvIHBha2lldHUsIGplxbxlbGkgemF3aWVyYSBvbiBwbGlraSBvIHRha2ljaCBzYW15Y2ggbmF6d2FjaC4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjIwNCBkZWItc3JjLWNvbnRyb2wuNToyNTcKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxQcm92aWRlczo+IEU8bHQ+cGFja2FnZSBsaXN0RTxndD4iCittc2dpZCAiQjxQcm92aWRlczo+STwgcGFja2FnZS1saXN0PiIKK21zZ3N0ciAiQjxQcm92aWRlczo+IEU8bHQ+bGlzdGEgcGFraWV0w7N3RTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MjE0Cittc2dpZCAiIgorIlRoaXMgaXMgYSBsaXN0IG9mIHZpcnR1YWwgcGFja2FnZXMgdGhhdCB0aGlzIG9uZSBwcm92aWRlcy4gVXN1YWxseSB0aGlzIGlzICIKKyJ1c2VkIGluIHRoZSBjYXNlIG9mIHNldmVyYWwgcGFja2FnZXMgYWxsIHByb3ZpZGluZyB0aGUgc2FtZSBzZXJ2aWNlLiAgRm9yICIKKyJleGFtcGxlLCBzZW5kbWFpbCBhbmQgZXhpbSBjYW4gc2VydmUgYXMgYSBtYWlsIHNlcnZlciwgc28gdGhleSBwcm92aWRlIGEgIgorImNvbW1vbiBwYWNrYWdlIChgbWFpbC10cmFuc3BvcnQtYWdlbnQnKSBvbiB3aGljaCBvdGhlciBwYWNrYWdlcyBjYW4gZGVwZW5kLiAiCisiVGhpcyB3aWxsIGFsbG93IHNlbmRtYWlsIG9yIGV4aW0gdG8gc2VydmUgYXMgYSB2YWxpZCBvcHRpb24gdG8gc2F0aXNmeSB0aGUgIgorImRlcGVuZGVuY3kuIFRoaXMgcHJldmVudHMgdGhlIHBhY2thZ2VzIHRoYXQgZGVwZW5kIG9uIGEgbWFpbCBzZXJ2ZXIgZnJvbSAiCisiaGF2aW5nIHRvIGtub3cgdGhlIHBhY2thZ2UgbmFtZXMgZm9yIGFsbCBvZiB0aGVtLCBhbmQgdXNpbmcgYHwnIHRvIHNlcGFyYXRlICIKKyJ0aGUgbGlzdC4iCittc2dzdHIgIiIKKyJKZXN0IHRvIGxpc3RhIHBha2lldMOzdyB3aXJ0dWFsbnljaCBkb3N0YXJjemFueWNoIHByemV6IHRlbiBwYWtpZXQuIFphend5Y3phaiAiCisiamVzdCB0byB1xbx5d2FuZSB3IHByenlwYWRrdSwgZ2R5IGtpbGthIHBha2lldMOzdyBkb3N0YXJjemEgdGVqIHNhbWVqIHVzxYJ1Z2kuICIKKyJOYSBwcnp5a8WCYWQgc2VuZG1haWwgaSBleGltIHPEhSBzZXJ3ZXJhbWkgcG9jenR5LCBkbGF0ZWdvIGRvc3RhcmN6YWrEhSAiCisid3Nww7NsbmVnbyBwYWtpZXR1IChcIm1haWwtdHJhbnNwb3J0LWFnZW50XCIpLCBvZCBrdMOzcmVnbyBpbm5lIHBha2lldHkgbW9nxIUgIgorInphbGXFvGXEhy4gUG96d2FsYSB0byB6YXLDs3dubyBzZW5kbWFpbG93aSwgamFrIGkgZXhpbW93aSBzcGXFgm5pxIcgdMSZIHphbGXFvG5vxZvEhy4gIgorIlBvbmFkdG8gdyB0ZW4gc3Bvc8OzYiBwYWtpZXR5LCBrdMOzcmUgemFsZcW8xIUgb2Qgc2Vyd2VyYSBwb2N6dHksIG5pZSBtdXN6xIUgem5hxIcgIgorIm5hencgd3N6eXN0a2ljaCBwYWtpZXTDs3cgZG9zdGFyY3phasSFY3ljaCB0ZWogdXPFgnVnaSBhbmkgdcW8eXdhxIcgXCJ8XCIgZG8gIgorInJvemR6aWVsZW5pYSBsaXN0eSB0YWtpY2ggcGFraWV0w7N3LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToyMzMKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlRoZSBzeW50YXggb2YgQjxDb25mbGljdHM+LCBCPFJlcGxhY2VzPiBhbmQgQjxQcm92aWRlcz4gaXMgYSBsaXN0IG9mICIKKyN8ICJwYWNrYWdlIG5hbWVzLCBzZXBhcmF0ZWQgYnkgY29tbWFzIChhbmQgb3B0aW9uYWwgd2hpdGVzcGFjZSkuICBJbiB0aGUgIgorI3wgIkI8Q29uZmxpY3RzPiBmaWVsZCwgdGhlIGNvbW1hIHNob3VsZCBiZSByZWFkIGFzIGBPUicuIEFuIG9wdGlvbmFsIHZlcnNpb24gIgorI3wgImNhbiBhbHNvIGJlIGdpdmVuIHdpdGggdGhlIHNhbWUgc3ludGF4IGFzIGFib3ZlIGZvciB0aGUgQjxDb25mbGljdHM+IGFuZCAiCisjfCAiQjxSZXBsYWNlcz4gZmllbGRzLiIKK21zZ2lkICIiCisiVGhlIHN5bnRheCBvZiBCPEJyZWFrcz4sIEI8Q29uZmxpY3RzPiwgQjxSZXBsYWNlcz4gYW5kIEI8UHJvdmlkZXM+IGlzIGEgbGlzdCAiCisib2YgcGFja2FnZSBuYW1lcywgc2VwYXJhdGVkIGJ5IGNvbW1hcyAoYW5kIG9wdGlvbmFsIHdoaXRlc3BhY2UpLiAgSW4gdGhlICIKKyJCPEJyZWFrcz4gYW5kIEI8Q29uZmxpY3RzPiBmaWVsZHMsIHRoZSBjb21tYSBzaG91bGQgYmUgcmVhZCBhcyBgT1InLiBBbiAiCisib3B0aW9uYWwgdmVyc2lvbiBjYW4gYWxzbyBiZSBnaXZlbiB3aXRoIHRoZSBzYW1lIHN5bnRheCBhcyBhYm92ZSBmb3IgdGhlICIKKyJCPEJyZWFrcz4sIEI8Q29uZmxpY3RzPiBhbmQgQjxSZXBsYWNlcz4gZmllbGRzLiIKK21zZ3N0ciAiIgorIlBvbGEgQjxDb25mbGljdHM+LCBCPFJlcGxhY2VzPiBpIEI8UHJvdmlkZXM+IHphd2llcmFqxIUgbGlzdMSZIG5hencgcGFraWV0w7N3LCAiCisicm96ZHppZWxvbsSFIG9kIHNpZWJpZSBwcnplY2lua2FtaSAoaSBvcGNqb25hbG5pZSBiaWHFgnltaSB6bmFrYW1pKS4gVyBwb2x1ICIKKyJCPENvbmZsaWN0cz4gcHJ6ZWNpbmVrIG96bmFjemEgXCJMVUJcIi4gT3Bjam9uYWxuaWUgdyBwb2xhY2ggQjxDb25mbGljdHM+IGkgIgorIkI8UmVwbGFjZXM+IG1vxbxuYSBwb2RhxIcgbnVtZXJ5IHdlcnNqaSBwYWtpZXTDs3csIHXFvHl3YWrEhWMgc2vFgmFkbmkgb3Bpc2FuZWogIgorInd5xbxlai4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjIzNCBkZWItc3JjLWNvbnRyb2wuNToyNjAKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxEZXBlbmRzOj4gRTxsdD5wYWNrYWdlIGxpc3RFPGd0PiIKK21zZ2lkICJCPEJ1aWx0LVVzaW5nOj5JPCBwYWNrYWdlLWxpc3Q+IgorbXNnc3RyICJCPERlcGVuZHM6PiBFPGx0Pmxpc3RhIHBha2lldMOzd0U8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjI0NAorbXNnaWQgIiIKKyJUaGlzIGZpZWxkIGxpc3RzIGV4dHJhIHNvdXJjZSBwYWNrYWdlcyB0aGF0IHdlcmUgdXNlZCBkdXJpbmcgdGhlIGJ1aWxkIG9mICIKKyJ0aGlzIGJpbmFyeSBwYWNrYWdlLiAgVGhpcyBpcyBhbiBpbmRpY2F0aW9uIHRvIHRoZSBhcmNoaXZlIG1haW50ZW5hbmNlICIKKyJzb2Z0d2FyZSB0aGF0IHRoZXNlIGV4dHJhIHNvdXJjZSBwYWNrYWdlcyBtdXN0IGJlIGtlcHQgd2hpbHN0IHRoaXMgYmluYXJ5ICIKKyJwYWNrYWdlIGlzIG1haW50YWluZWQuICBUaGlzIGZpZWxkIG11c3QgYmUgYSBsaXN0IG9mIHNvdXJjZSBwYWNrYWdlIG5hbWVzICIKKyJ3aXRoIHN0cmljdCAoPSkgIHZlcnNpb24gcmVsYXRpb25zaGlwcy4gIE5vdGUgdGhhdCB0aGUgYXJjaGl2ZSBtYWludGVuYW5jZSAiCisic29mdHdhcmUgaXMgbGlrZWx5IHRvIHJlZnVzZSB0byBhY2NlcHQgYW4gdXBsb2FkIHdoaWNoIGRlY2xhcmVzIGEgQjxCdWlsdC0iCisiVXNpbmc+IHJlbGF0aW9uc2hpcCB3aGljaCBjYW5ub3QgYmUgc2F0aXNmaWVkIHdpdGhpbiB0aGUgYXJjaGl2ZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRlYi1jb250cm9sLjU6MjQ1IGRlYi1zcmMtY29udHJvbC41OjI4OCBzdGFydC1zdG9wLWRhZW1vbi44OjMwMgorIywgbm8td3JhcAorbXNnaWQgIkVYQU1QTEUiCittc2dzdHIgIlBSWllLxYFBRCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToyNjgKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiIyBDb21tZW50XG4iCisiUGFja2FnZTogZ3JlcFxuIgorIkVzc2VudGlhbDogeWVzXG4iCisiUHJpb3JpdHk6IHJlcXVpcmVkXG4iCisiU2VjdGlvbjogYmFzZVxuIgorIk1haW50YWluZXI6IFdpY2hlcnQgQWtrZXJtYW4gRTxsdD53YWtrZXJtYUBkZWJpYW4ub3JnRTxndD5cbiIKKyJBcmNoaXRlY3R1cmU6IHNwYXJjXG4iCisiVmVyc2lvbjogMi40LTFcbiIKKyJQcmUtRGVwZW5kczogbGliYzYgKEU8Z3Q+PSAyLjAuMTA1KVxuIgorIlByb3ZpZGVzOiByZ3JlcFxuIgorIkNvbmZsaWN0czogcmdyZXBcbiIKKyJEZXNjcmlwdGlvbjogR05VIGdyZXAsIGVncmVwIGFuZCBmZ3JlcC5cbiIKKyIgVGhlIEdOVSBmYW1pbHkgb2YgZ3JlcCB1dGlsaXRpZXMgbWF5IGJlIHRoZSBcImZhc3Rlc3QgZ3JlcCBpbiB0aGUgd2VzdFwiLlxuIgorIiBHTlUgZ3JlcCBpcyBiYXNlZCBvbiBhIGZhc3QgbGF6eS1zdGF0ZSBkZXRlcm1pbmlzdGljIG1hdGNoZXIgKGFib3V0XG4iCisiIHR3aWNlIGFzIGZhc3QgYXMgc3RvY2sgVW5peCBlZ3JlcCkgaHlicmlkaXplZCB3aXRoIGEgQm95ZXItTW9vcmUtR29zcGVyXG4iCisiIHNlYXJjaCBmb3IgYSBmaXhlZCBzdHJpbmcgdGhhdCBlbGltaW5hdGVzIGltcG9zc2libGUgdGV4dCBmcm9tIGJlaW5nXG4iCisiIGNvbnNpZGVyZWQgYnkgdGhlIGZ1bGwgcmVnZXhwIG1hdGNoZXIgd2l0aG91dCBuZWNlc3NhcmlseSBoYXZpbmcgdG9cbiIKKyIgbG9vayBhdCBldmVyeSBjaGFyYWN0ZXIuIFRoZSByZXN1bHQgaXMgdHlwaWNhbGx5IG1hbnkgdGltZXMgZmFzdGVyXG4iCisiIHRoYW4gVW5peCBncmVwIG9yIGVncmVwLiAoUmVndWxhciBleHByZXNzaW9ucyBjb250YWluaW5nIGJhY2tyZWZlcmVuY2luZ1xuIgorIiB3aWxsIHJ1biBtb3JlIHNsb3dseSwgaG93ZXZlcikuXG4iCittc2dzdHIgIiIKKyIjIEtvbWVudGFyelxuIgorIlBhY2thZ2U6IGdyZXBcbiIKKyJFc3NlbnRpYWw6IHllc1xuIgorIlByaW9yaXR5OiByZXF1aXJlZFxuIgorIlNlY3Rpb246IGJhc2VcbiIKKyJNYWludGFpbmVyOiBXaWNoZXJ0IEFra2VybWFuIEU8bHQ+d2Fra2VybWFAZGViaWFuLm9yZ0U8Z3Q+XG4iCisiQXJjaGl0ZWN0dXJlOiBzcGFyY1xuIgorIlZlcnNpb246IDIuNC0xXG4iCisiUHJlLURlcGVuZHM6IGxpYmM2IChFPGd0Pj0gMi4wLjEwNSlcbiIKKyJQcm92aWRlczogcmdyZXBcbiIKKyJDb25mbGljdHM6IHJncmVwXG4iCisiRGVzY3JpcHRpb246IEdOVSBncmVwLCBlZ3JlcCBhbmQgZmdyZXAuXG4iCisiIFRoZSBHTlUgZmFtaWx5IG9mIGdyZXAgdXRpbGl0aWVzIG1heSBiZSB0aGUgXCJmYXN0ZXN0IGdyZXAgaW4gdGhlIHdlc3RcIi5cbiIKKyIgR05VIGdyZXAgaXMgYmFzZWQgb24gYSBmYXN0IGxhenktc3RhdGUgZGV0ZXJtaW5pc3RpYyBtYXRjaGVyIChhYm91dFxuIgorIiB0d2ljZSBhcyBmYXN0IGFzIHN0b2NrIFVuaXggZWdyZXApIGh5YnJpZGl6ZWQgd2l0aCBhIEJveWVyLU1vb3JlLUdvc3BlclxuIgorIiBzZWFyY2ggZm9yIGEgZml4ZWQgc3RyaW5nIHRoYXQgZWxpbWluYXRlcyBpbXBvc3NpYmxlIHRleHQgZnJvbSBiZWluZ1xuIgorIiBjb25zaWRlcmVkIGJ5IHRoZSBmdWxsIHJlZ2V4cCBtYXRjaGVyIHdpdGhvdXQgbmVjZXNzYXJpbHkgaGF2aW5nIHRvXG4iCisiIGxvb2sgYXQgZXZlcnkgY2hhcmFjdGVyLiBUaGUgcmVzdWx0IGlzIHR5cGljYWxseSBtYW55IHRpbWVzIGZhc3RlclxuIgorIiB0aGFuIFVuaXggZ3JlcCBvciBlZ3JlcC4gKFJlZ3VsYXIgZXhwcmVzc2lvbnMgY29udGFpbmluZyBiYWNrcmVmZXJlbmNpbmdcbiIKKyIgd2lsbCBydW4gbW9yZSBzbG93bHksIGhvd2V2ZXIpLlxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjI3NgorbXNnaWQgIiIKKyJCPGRlYj4oNSksIEI8ZGViLXZlcnNpb24+KDUpLCBCPGRlYnRhZ3M+KDEpLCBCPGRwa2c+KDEpLCBCPGRwa2ctZGViPigxKS4iCittc2dzdHIgIiIKKyJCPGRlYj4oNSksIEI8ZGViLXZlcnNpb24+KDUpLCBCPGRlYnRhZ3M+KDEpLCBCPGRwa2c+KDEpLCBCPGRwa2ctZGViPigxKS4iCisKKyMuIHR5cGU6IFRICisjOiBkZWItc3JjLWNvbnRyb2wuNTozCisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgImRlYi1jb250cm9sIgorbXNnaWQgImRlYi1zcmMtY29udHJvbCIKK21zZ3N0ciAiZGViLWNvbnRyb2wiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjYKKyMsIGZ1enp5CisjfCBtc2dpZCAiZGViLWNvbnRyb2wgLSBEZWJpYW4gcGFja2FnZXMnIG1hc3RlciBjb250cm9sIGZpbGUgZm9ybWF0IgorbXNnaWQgImRlYi1zcmMtY29udHJvbCAtIERlYmlhbiBzb3VyY2UgcGFja2FnZXMnIG1hc3RlciBjb250cm9sIGZpbGUgZm9ybWF0IgorbXNnc3RyICJkZWItY29udHJvbCAtIGZvcm1hdCBnxYLDs3duZWdvIHBsaWt1IHBha2lldHUgRGViaWFuYSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MjgKK21zZ2lkICIiCisiRWFjaCBEZWJpYW4gc291cmNlIHBhY2thZ2UgY29udGFpbnMgdGhlIG1hc3RlciBcImNvbnRyb2xcIiBmaWxlLCB3aGljaCAiCisiY29udGFpbnMgYXQgbGVhc3QgMiBwYXJhZ3JhcGhzLCBzZXBhcmF0ZWQgYnkgYSBibGFuayBsaW5lLiBUaGUgZmlyc3QgIgorInBhcmFncmFwaCBsaXN0cyBhbGwgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHNvdXJjZSBwYWNrYWdlIGluIGdlbmVyYWwsIHdoaWxlICIKKyJlYWNoIGZvbGxvd2luZyBwYXJhZ3JhcGggZGVzY3JpYmVzIGV4YWN0bHkgb25lIGJpbmFyeSBwYWNrYWdlLiBFYWNoICIKKyJwYXJhZ3JhcGggY29uc2lzdHMgb2YgYXQgbGVhc3Qgb25lIGZpZWxkLiBBIGZpZWxkIHN0YXJ0cyB3aXRoIGEgZmllbGRuYW1lLCAiCisic3VjaCBhcyBCPFBhY2thZ2U+IG9yIEI8U2VjdGlvbj4gKGNhc2UgaW5zZW5zaXRpdmUpLCBmb2xsb3dlZCBieSBhIGNvbG9uLCAiCisidGhlIGJvZHkgb2YgdGhlIGZpZWxkIGFuZCBhIG5ld2xpbmUuICBNdWx0aS1saW5lIGZpZWxkcyBhcmUgYWxzbyBhbGxvd2VkLCAiCisiYnV0IGVhY2ggc3VwcGxlbWVudGFyeSBsaW5lLCB3aXRob3V0IGEgZmllbGRuYW1lLCBzaG91bGQgc3RhcnQgd2l0aCBhdCBsZWFzdCAiCisib25lIHNwYWNlLiBUaGUgY29udGVudCBvZiB0aGUgbXVsdGktbGluZSBmaWVsZHMgaXMgZ2VuZXJhbGx5IGpvaW5lZCB0byBhICIKKyJzaW5nbGUgbGluZSBieSB0aGUgdG9vbHMgKGV4Y2VwdCBpbiB0aGUgY2FzZSBvZiB0aGUgQjxEZXNjcmlwdGlvbj4gZmllbGQsICIKKyJzZWUgYmVsb3cpLiBUbyBpbnNlcnQgZW1wdHkgbGluZXMgaW50byBhIG11bHRpLWxpbmUgZmllbGQsIGluc2VydCBhIGRvdCAiCisiYWZ0ZXIgdGhlIHNwYWNlLiBMaW5lcyBzdGFydGluZyB3aXRoIGEgQjwnIyc+IGFyZSB0cmVhdGVkIGFzIGNvbW1lbnRzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZGViLXNyYy1jb250cm9sLjU6MjkKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiUkVRVUlSRUQgRklFTERTIgorbXNnaWQgIlNPVVJDRSBGSUVMRFMiCittc2dzdHIgIlBPTEEgV1lNQUdBTkUiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3JjLWNvbnRyb2wuNTozMAorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPFNvdXJjZTo+IEU8bHQ+c291cmNlIG5hbWVFPGd0PiIKK21zZ2lkICJCPFNvdXJjZTo+IEk8c291cmNlLXBhY2thZ2UtbmFtZT4gKHJlcXVpcmVkKSIKK21zZ3N0ciAiQjxTb3VyY2U6PiBFPGx0Pm5hendhIMW6csOzZMWCYUU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNTozNworbXNnaWQgIiIKKyJUaGUgdmFsdWUgb2YgdGhpcyBmaWVsZCBpcyB0aGUgbmFtZSBvZiB0aGUgc291cmNlIHBhY2thZ2UsIGFuZCBzaG91bGQgbWF0Y2ggIgorInRoZSBuYW1lIG9mIHRoZSBzb3VyY2UgcGFja2FnZSBpbiB0aGUgZGViaWFuL2NoYW5nZWxvZyBmaWxlLiBBIHBhY2thZ2UgbmFtZSAiCisibXVzdCBjb25zaXN0IG9ubHkgb2YgbG93ZXIgY2FzZSBsZXR0ZXJzIChhLXopLCBkaWdpdHMgKDAtOSksIHBsdXMgKCspIGFuZCAiCisibWludXMgKC0pIHNpZ25zLCBhbmQgcGVyaW9kcyAoLikuIFBhY2thZ2UgbmFtZXMgbXVzdCBiZSBhdCBsZWFzdCB0d28gIgorImNoYXJhY3RlcnMgbG9uZyBhbmQgbXVzdCBzdGFydCB3aXRoIGFuIGFscGhhbnVtZXJpYyBjaGFyYWN0ZXIuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3JjLWNvbnRyb2wuNTozOAorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPE1haW50YWluZXI6PiBFPGx0PmZ1bGxuYW1lIGVtYWlsRTxndD4iCittc2dpZCAiQjxNYWludGFpbmVyOj4gSTxmdWxsbmFtZS1lbWFpbD4gKHJlcXVpcmVkKSIKK21zZ3N0ciAiQjxNYWludGFpbmVyOj4gRTxsdD5wZcWCbmEtbmF6d2EgZS1tYWlsRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjQzCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJTaG91bGQgYmUgaW4gdGhlIGZvcm1hdCBgSm9lIEJsb2dncyBFPGx0PmpibG9nZ3NAZm9vLmNvbUU8Z3Q+JywgYW5kIGlzICIKKyN8ICJ0eXBpY2FsbHkgdGhlIHBlcnNvbiB3aG8gY3JlYXRlZCB0aGUgcGFja2FnZSwgYXMgb3Bwb3NlZCB0byB0aGUgYXV0aG9yIG9mICIKKyN8ICJ0aGUgc29mdHdhcmUgdGhhdCB3YXMgcGFja2FnZWQuIgorbXNnaWQgIiIKKyJTaG91bGQgYmUgaW4gdGhlIGZvcm1hdCBcIkpvZSBCbG9nZ3MgRTxsdD5qYmxvZ2dzQGZvby5jb21FPGd0PlwiLCBhbmQgIgorInJlZmVyZW5jZXMgdGhlIHBlcnNvbiB3aG8gY3VycmVudGx5IG1haW50YWlucyB0aGUgcGFja2FnZSwgYXMgb3Bwb3NlZCB0byB0aGUgIgorImF1dGhvciBvZiB0aGUgc29mdHdhcmUgb3IgdGhlIG9yaWdpbmFsIHBhY2thZ2VyLiIKK21zZ3N0ciAiIgorIlBvd2lubmEgYnnEhyB3IGZvcm1hY2llIFwiSmFuIE5vd2FrIEU8bHQ+am5vd2FrQGZvby5jb21FPGd0PlwiIGkgemF6d3ljemFqICIKKyJvem5hY3phIG9zb2LEmSwga3TDs3JhIHV0d29yennFgmEgcGFraWV0IChhIG5pZSBvc29ixJksIGt0w7NyYSBqZXN0IGF1dG9yZW0gIgorInByb2dyYW11KS4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3JjLWNvbnRyb2wuNTo0NAorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPE1haW50YWluZXI6PiBFPGx0PmZ1bGxuYW1lIGVtYWlsRTxndD4iCittc2dpZCAiQjxVcGxvYWRlcnM6Pkk8IGZ1bGxuYW1lLWVtYWlsPiIKK21zZ3N0ciAiQjxNYWludGFpbmVyOj4gRTxsdD5wZcWCbmEtbmF6d2EgZS1tYWlsRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjQ5Cittc2dpZCAiIgorIkxpc3RzIGFsbCB0aGUgbmFtZXMgYW5kIGVtYWlsIGFkZHJlc3NlcyBvZiBjby1tYWludGFpbmVycyBvZiB0aGUgcGFja2FnZSwgaW4gIgorInRoZSBzYW1lIGZvcm1hdCBhcyB0aGUgTWFpbnRhaW5lciBmaWVsZC4gTXVsdGlwbGUgY28tbWFpbnRhaW5lcnMgc2hvdWxkIGJlICIKKyJzZXBhcmF0ZWQgYnkgYSBjb21tYS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zcmMtY29udHJvbC41OjUwCisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8VmVyc2lvbjo+IEU8bHQ+dmVyc2lvbiBzdHJpbmdFPGd0PiIKK21zZ2lkICJCPFN0YW5kYXJkcy1WZXJzaW9uOj5JPCB2ZXJzaW9uLXN0cmluZz4iCittc2dzdHIgIkI8VmVyc2lvbjo+IEU8bHQ+b3puYWN6ZW5pZSB3ZXJzamlFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6NTYKK21zZ2lkICIiCisiVGhpcyBkb2N1bWVudHMgdGhlIG1vc3QgcmVjZW50IHZlcnNpb24gb2YgdGhlIHN0YW5kYXJkcyAod2hpY2ggY29uc2lzdHMgb2YgIgorInRoZSBEZWJpYW4gUG9saWN5IE1hbnVhbCBhbmQgcmVmZXJlbmNlZCB0ZXh0cyBmcm9tIHRoZSBCPGRlYmlhbi1wb2xpY3k+ICIKKyJwYWNrYWdlKSB0aGlzIHBhY2thZ2UgY29tcGxpZXMgdG8uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3JjLWNvbnRyb2wuNTo1NworIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPEVzc2VudGlhbDo+IEU8bHQ+eWVzfG5vRTxndD4iCittc2dpZCAiQjxETS1VcGxvYWQtQWxsb3dlZDo+IEI8eWVzPnxCPG5vPiIKK21zZ3N0ciAiQjxFc3NlbnRpYWw6PiBFPGx0Pnllc3xub0U8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNTo2MQorbXNnaWQgIiIKKyJUaGlzIGZpZWxkIGluZGljYXRlcyB3aGV0aGVyIHRoZSBwYWNrYWdlIGNhbiBiZSB1cGxvYWRlZCBieSBEZWJpYW4gIgorIk1haW50YWluZXJzIGFwcGVhcmluZyBpbiB0aGUgTWFpbnRhaW5lciBvciBVcGxvYWRlcnMgZmllbGQuIFRoZSBkZWZhdWx0ICIKKyJ2YWx1ZSBpcyBcIm5vXCIuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjY1Cittc2dpZCAiVGhlIHVwc3RyZWFtIHByb2plY3QgaG9tZSBwYWdlIFVSTC4iCittc2dzdHIgIlVSTCBkbyBzdHJvbnkgZG9tb3dlaiBwcm9qZWt0dS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjcxCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJUaGUgdXJsIG9mIHRoZSBidWcgdHJhY2tpbmcgc3lzdGVtIGZvciB0aGlzIHBhY2thZ2UuIFRoZSBjdXJyZW50IHVzZWQgIgorI3wgImZvcm1hdCBpcyBCPEU8bHQ+YnRzX3R5cGVFPGd0PjovL0U8bHQ+YnRzX2FkZHJlc3NFPGd0Pj4sIGxpa2UgQjxkZWJidWdzOi8vIgorI3wgImJ1Z3MuZGViaWFuLm9yZz4uIgorbXNnaWQgIiIKKyJUaGUgSTx1cmw+IG9mIHRoZSBidWcgdHJhY2tpbmcgc3lzdGVtIGZvciB0aGlzIHBhY2thZ2UuIFRoZSBjdXJyZW50IHVzZWQgIgorImZvcm1hdCBpcyBJPGJ0cy10eXBlPkI8Oi8vPkk8YnRzLWFkZHJlc3M+LCBsaWtlIEI8ZGViYnVnczovL2J1Z3MuZGViaWFuLiIKKyJvcmc+LiBUaGlzIGZpZWxkIGlzIHVzdWFsbHkgbm90IG5lZWRlZC4iCittc2dzdHIgIiIKKyJVUkwgc3lzdGVtdSB6Z8WCYXN6YW5pYSBixYLEmWTDs3cgZGxhIHRlZ28gcGFraWV0dS4gT2JlY25pZSB1xbx5d2FueW0gZm9ybWF0ZW0gIgorImplc3QgaXMgQjxFPGx0PnR5cF9idHNFPGd0PjovL0U8bHQ+YWRyZXNfYnRzRTxndD4+LCBuYSBwcnp5a8WCYWQ6IEI8ZGViYnVnczovLyIKKyJidWdzLmRlYmlhbi5vcmc+LiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zcmMtY29udHJvbC41OjcyCisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8QnVnczo+IEU8bHQ+dXJsRTxndD4iCittc2dpZCAiQjxWY3MtKjo+STwgdXJsPiIKK21zZ3N0ciAiQjxCdWdzOj4gRTxsdD51cmxFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6NzkKK21zZ2lkICIiCisiVGhlIEk8dXJsPiBvZiB0aGUgVmVyc2lvbiBDb250cm9sIFN5c3RlbSByZXBvc2l0b3J5IHVzZWQgdG8gbWFpbnRhaW4gdGhpcyAiCisicGFja2FnZS4gQ3VycmVudGx5IHN1cHBvcnRlZCBhcmUgQjxBcmNoPiwgQjxCenI+IChCYXphYXIpLCBCPEN2cz4sIEI8RGFyY3M+LCAiCisiQjxHaXQ+LCBCPEhnPiAoTWVyY3VyaWFsKSwgQjxNdG4+IChNb25vdG9uZSkgYW5kIEI8U3ZuPiAoU3VidmVyc2lvbikuICIKKyJVc3VhbGx5IHRoaXMgZmllbGQgcG9pbnRzIHRvIHRoZSBsYXRlc3QgdmVyc2lvbiBvZiB0aGUgcGFja2FnZSwgc3VjaCBhcyB0aGUgIgorIm1haW4gYnJhbmNoIG9yIHRoZSB0cnVuay4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zcmMtY29udHJvbC41OjgwCisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8QnVnczo+IEU8bHQ+dXJsRTxndD4iCittc2dpZCAiQjxWY3MtQnJvd3Nlcjo+STwgdXJsPiIKK21zZ3N0ciAiQjxCdWdzOj4gRTxsdD51cmxFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6ODQKK21zZ2lkICIiCisiVGhlIEk8dXJsPiBvZiBhIHdlYmludGVyZmFjZSB0byBicm93c2UgdGhlIFZlcnNpb24gQ29udHJvbCBTeXN0ZW0gcmVwb3NpdG9yeS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6ODkKKyMsIGZ1enp5CisjfCBtc2dpZCAiVGhlIG5hbWUgb2YgdGhlIGRpc3RyaWJ1dGlvbiB0aGlzIHBhY2thZ2UgaXMgb3JpZ2luYXRpbmcgZnJvbS4iCittc2dpZCAiIgorIlRoZSBuYW1lIG9mIHRoZSBkaXN0cmlidXRpb24gdGhpcyBwYWNrYWdlIGlzIG9yaWdpbmF0aW5nIGZyb20uIFRoaXMgZmllbGQgaXMgIgorInVzdWFsbHkgbm90IG5lZWRlZC4iCittc2dzdHIgIk5hendhIGR5c3RyeWJ1Y2ppLCB6IGt0w7NyZWogcG9jaG9kemkgcGFraWV0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6OTUKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlRoaXMgaXMgYSBnZW5lcmFsIGZpZWxkIHRoYXQgZ2l2ZXMgdGhlIHBhY2thZ2UgYSBjYXRlZ29yeSBiYXNlZCBvbiB0aGUgIgorI3wgInNvZnR3YXJlIHRoYXQgaXQgaW5zdGFsbHMuIFNvbWUgY29tbW9uIHNlY3Rpb25zIGFyZSBgdXRpbHMnLCBgbmV0JywgIgorI3wgImBtYWlsJywgYHRleHQnLCBgeDExJyBldGMuIgorbXNnaWQgIiIKKyJUaGlzIGlzIGEgZ2VuZXJhbCBmaWVsZCB0aGF0IGdpdmVzIHRoZSBwYWNrYWdlIGEgY2F0ZWdvcnkgYmFzZWQgb24gdGhlICIKKyJzb2Z0d2FyZSB0aGF0IGl0IGluc3RhbGxzLiBTb21lIGNvbW1vbiBzZWN0aW9ucyBhcmUgXCJ1dGlsc1wiLCBcIm5ldFwiLCAiCisiXCJtYWlsXCIsIFwidGV4dFwiLCBcIngxMVwiLCBldGMuIgorbXNnc3RyICIiCisiSmVzdCB0byBvZ8OzbG5lIHBvbGUgemF3aWVyYWrEhWNlIGthdGVnb3JpxJkgcGFraWV0dSBiYXpvd2FuxIUgbmEgIgorIm9wcm9ncmFtb3dhbml1LCBrdMOzcmUgemF3aWVyYS4gTmlla3TDs3JlIGN6xJnFm2NpZWogd3lzdMSZcHVqxIVjZSBzZWtjamUgdG86ICIKKyJcInV0aWxzXCIsIFwibmV0XCIsIFwibWFpbFwiLCBcInRleHRcIiwgXCJ4MTFcIiBpdHAuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToxMDAKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlNldHMgdGhlIGltcG9ydGFuY2Ugb2YgdGhpcyBwYWNrYWdlIGluIHJlbGF0aW9uIHRvIHRoZSBzeXN0ZW0gYXMgYSAiCisjfCAid2hvbGUuICBDb21tb24gcHJpb3JpdGllcyBhcmUgYHJlcXVpcmVkJywgYHN0YW5kYXJkJywgYG9wdGlvbmFsJywgYGV4dHJhJyAiCisjfCAiZXRjLiIKK21zZ2lkICIiCisiU2V0cyB0aGUgaW1wb3J0YW5jZSBvZiB0aGlzIHBhY2thZ2UgaW4gcmVsYXRpb24gdG8gdGhlIHN5c3RlbSBhcyBhIHdob2xlLiAgIgorIkNvbW1vbiBwcmlvcml0aWVzIGFyZSBcInJlcXVpcmVkXCIsIFwic3RhbmRhcmRcIiwgXCJvcHRpb25hbFwiLCBcImV4dHJhXCIsICIKKyJldGMuIgorbXNnc3RyICIiCisiVXN0YXdpYSB3YcW8bm/Fm8SHIHBha2lldHUgdyBzdG9zdW5rdSBkbyBjYcWCZWdvIHN5c3RlbXUuIE5hamN6xJnFm2NpZWogdcW8eXdhbmUgIgorInByaW9yeXRldHkgdG86IFwicmVxdWlyZWRcIiAod3ltYWdhbnkpLCBcInN0YW5kYXJkXCIgKHN0YW5kYXJkb3d5KSAsICIKKyJcIm9wdGlvbmFsXCIgKG9wY2pvbmFsbnkpLCBcImV4dHJhXCIgKGRvZGF0a293eSkgaXRwLiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zcmMtY29udHJvbC41OjExMAorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPERlcGVuZHM6PiBFPGx0PnBhY2thZ2UgbGlzdEU8Z3Q+IgorbXNnaWQgIkI8QnVpbGQtRGVwZW5kczo+STwgcGFja2FnZS1saXN0PiIKK21zZ3N0ciAiQjxEZXBlbmRzOj4gRTxsdD5saXN0YSBwYWtpZXTDs3dFPGd0PiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MTE0CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJJbiB0aGUgbGlzdCBvZiBwYWNrYWdlcywgdGhlIHRleHQgaW5kaWNhdGluZyB0aGUgY3VycmVudCBzdGF0ZSBvZiB0aGUgIgorI3wgImN1cnJlbnRseSBzZWxlY3RlZCBwYWNrYWdlLiIKK21zZ2lkICIiCisiQSBsaXN0IG9mIHBhY2thZ2VzIHRoYXQgbmVlZCB0byBiZSBpbnN0YWxsZWQgYW5kIGNvbmZpZ3VyZWQgdG8gYmUgYWJsZSB0byAiCisiYnVpbGQgdGhlIHNvdXJjZSBwYWNrYWdlLiIKK21zZ3N0ciAiIgorIlcgbGnFm2NpZSBwYWtpZXTDs3cgLSB0ZWtzdCBvem5hY3phasSFY3kgb2JlY255IHN0YW4gcG9kxZt3aWV0bG9uZWdvIHBha2lldHUuIgorCisjLiB0eXBlOiBUUAorIzogZGViLXNyYy1jb250cm9sLjU6MTE1CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8RGVwZW5kczo+IEU8bHQ+cGFja2FnZSBsaXN0RTxndD4iCittc2dpZCAiQjxCdWlsZC1EZXBlbmRzLUluZGVwOj5JPCBwYWNrYWdlLWxpc3Q+IgorbXNnc3RyICJCPERlcGVuZHM6PiBFPGx0Pmxpc3RhIHBha2lldMOzd0U8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToxMjAKK21zZ2lkICIiCisiU2FtZSBhcyBCPEJ1aWxkLURlcGVuZHM+LCBidXQgdGhleSBhcmUgb25seSBuZWVkZWQgd2hlbiBidWlsZGluZyB0aGUgIgorImFyY2hpdGVjdHVyZSBpbmRlcGVuZGVudCBwYWNrYWdlcy4gVGhlIEI8QnVpbGQtRGVwZW5kcz4gYXJlIGFsc28gaW5zdGFsbGVkICIKKyJpbiB0aGlzIGNhc2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3JjLWNvbnRyb2wuNToxMjEKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxDb25mbGljdHM6PiBFPGx0PnBhY2thZ2UgbGlzdEU8Z3Q+IgorbXNnaWQgIkI8QnVpbGQtQ29uZmxpY3RzOj5JPCBwYWNrYWdlLWxpc3Q+IgorbXNnc3RyICJCPENvbmZsaWN0czo+IEU8bHQ+bGlzdGEgcGFraWV0w7N3RTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjEyNQorbXNnaWQgIiIKKyJBIGxpc3Qgb2YgcGFja2FnZXMgdGhhdCBzaG91bGQgbm90IGJlIGluc3RhbGxlZCB3aGVuIHRoZSBwYWNrYWdlIGlzIGJ1aWxkLCAiCisiZm9yIGV4YW1wbGUgYmVjYXVzZSB0aGV5IGludGVyZmVyZSB3aXRoIHRoZSB1c2VkIGJ1aWxkIHN5c3RlbS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zcmMtY29udHJvbC41OjEyNgorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPENvbmZsaWN0czo+IEU8bHQ+cGFja2FnZSBsaXN0RTxndD4iCittc2dpZCAiQjxCdWlsZC1Db25mbGljdHMtSW5kZXA6Pkk8IHBhY2thZ2UtbGlzdD4iCittc2dzdHIgIkI8Q29uZmxpY3RzOj4gRTxsdD5saXN0YSBwYWtpZXTDs3dFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MTMwCittc2dpZCAiIgorIlNhbWUgYXMgQjxCdWlsZC1Db25mbGljdHM+LCBidXQgb25seSB3aGVuIGJ1aWxkaW5nIHRoZSBhcmNoaXRlY3R1cmUgIgorImluZGVwZW5kZW50IHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToxNDEKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlRoZSBzeW50YXggb2YgQjxEZXBlbmRzPiwgQjxQcmUtRGVwZW5kcz4sIEI8UmVjb21tZW5kcz4gYW5kIEI8U3VnZ2VzdHM+ICIKKyN8ICJmaWVsZHMgaXMgYSBsaXN0IG9mIGdyb3VwcyBvZiBhbHRlcm5hdGl2ZSBwYWNrYWdlcy4gRWFjaCBncm91cCBpcyBhIGxpc3QgIgorI3wgIm9mIHBhY2thZ2VzIHNlcGFyYXRlZCBieSB2ZXJ0aWNhbCBiYXIgKG9yIGBwaXBlJykgc3ltYm9scywgYHwnLiBUaGUgIgorI3wgImdyb3VwcyBhcmUgc2VwYXJhdGVkIGJ5IGNvbW1hcy4gQ29tbWFzIGFyZSB0byBiZSByZWFkIGFzIGBBTkQnLCBhbmQgcGlwZXMgIgorI3wgImFzIGBPUicsIHdpdGggcGlwZXMgYmluZGluZyBtb3JlIHRpZ2h0bHkuIEVhY2ggcGFja2FnZSBuYW1lIGlzIG9wdGlvbmFsbHkgIgorI3wgImZvbGxvd2VkIGJ5IGEgdmVyc2lvbiBudW1iZXIgc3BlY2lmaWNhdGlvbiBpbiBwYXJlbnRoZXNlcy4iCittc2dpZCAiIgorIlRoZSBzeW50YXggb2YgdGhlIEI8QnVpbGQtRGVwZW5kcz4gYW5kIEI8QnVpbGQtRGVwZW5kcy1JbmRlcD4gZmllbGRzIGlzIGEgIgorImxpc3Qgb2YgZ3JvdXBzIG9mIGFsdGVybmF0aXZlIHBhY2thZ2VzLiBFYWNoIGdyb3VwIGlzIGEgbGlzdCBvZiBwYWNrYWdlcyAiCisic2VwYXJhdGVkIGJ5IHZlcnRpY2FsIGJhciAob3IgXCJwaXBlXCIpIHN5bWJvbHMsIFwifFwiLiBUaGUgZ3JvdXBzIGFyZSAiCisic2VwYXJhdGVkIGJ5IGNvbW1hcy4gQ29tbWFzIGFyZSB0byBiZSByZWFkIGFzIFwiQU5EXCIsIGFuZCBwaXBlcyBhcyBcIk9SXCIsICIKKyJ3aXRoIHBpcGVzIGJpbmRpbmcgbW9yZSB0aWdodGx5LiBFYWNoIHBhY2thZ2UgbmFtZSBpcyBvcHRpb25hbGx5IGZvbGxvd2VkIGJ5ICIKKyJhIHZlcnNpb24gbnVtYmVyIHNwZWNpZmljYXRpb24gaW4gcGFyZW50aGVzZXMgYW5kIGFuIGFyY2hpdGVjdHVyZSAiCisic3BlY2lmaWNhdGlvbiBpbiBzcXVhcmUgYnJhY2tldHMuIgorbXNnc3RyICIiCisiV2FydG/Fm2NpxIUgcMOzbCBCPERlcGVuZHM+LCBCPFByZS1EZXBlbmRzPiwgQjxSZWNvbW1lbmRzPiBpIEI8U3VnZ2VzdHM+IGplc3QgIgorImxpc3RhIGdydXAgYWx0ZXJuYXR5d255Y2ggcGFraWV0w7N3LiBLYcW8ZGEgZ3J1cGEgamVzdCBsaXN0xIUgcGFraWV0w7N3ICIKKyJvZGR6aWVsb255Y2ggc3ltYm9sYW1pIHBpb25vd2VqIGtyZXNraSAoXCJ8XCIpLiBHcnVweSBvZGR6aWVsb25lIHPEhSBvZCAiCisic2llYmllIHByemVjaW5rYW1pLiBQcnplY2lua2kgbWFqxIUgem5hY3plbmllIFwiSVwiIChrb25pdW5rY2phKSwgYSBrcmVza2kgLSAiCisiXCJMVUJcIiAoYWx0ZXJuYXR5d2EpLCBwcnp5IGN6eW0gcHJpb3J5dGV0IGtvbml1bmtjamkgamVzdCB3ecW8c3p5LiBQbyBrYcW8ZGVqICIKKyJuYXdpZSBwYWtpZXR1IG1vxbxlIG9wY2pvbmFsbmllIHd5c3TEmXBvd2HEhyBudW1lciB3ZXJzamkgcG9kYW55IHcgbmF3aWFzYWNoLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MTUwCittc2dpZCAiIgorIlRoZSBzeW50YXggb2YgdGhlIEI8QnVpbGQtQ29uZmxpY3RzPiBhbmQgQjxCdWlsZC1Db25mbGljdHMtSW5kZXA+IGZpZWxkcyBpcyAiCisiYSBsaXN0IG9mIGNvbW1hLXNlcGFyYXRlZCBwYWNrYWdlIG5hbWVzLCB3aGVyZSB0aGUgY29tbWEgaXMgcmVhZCBhcyBhbiBcIkFORCIKKyJcIi4gU3BlY2lmeWluZyBhbHRlcm5hdGl2ZSBwYWNrYWdlcyB1c2luZyBhIFwicGlwZVwiIGlzIG5vdCBzdXBwb3J0ZWQuICBFYWNoICIKKyJwYWNrYWdlIG5hbWUgaXMgb3B0aW9uYWxseSBmb2xsb3dlZCBieSBhIHZlcnNpb24gbnVtYmVyIHNwZWNpZmljYXRpb24gaW4gIgorInBhcmVudGhlc2VzIGFuZCBhbiBhcmNoaXRlY3R1cmUgc3BlY2lmaWNhdGlvbiBpbiBzcXVhcmUgYnJhY2tldHMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjE1NgorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiQSB2ZXJzaW9uIG51bWJlciBtYXkgc3RhcnQgd2l0aCBhIGBFPGd0PkU8Z3Q+JywgaW4gd2hpY2ggY2FzZSBhbnkgbGF0ZXIgIgorI3wgInZlcnNpb24gd2lsbCBtYXRjaCwgYW5kIG1heSBzcGVjaWZ5IG9yIG9taXQgdGhlIERlYmlhbiBwYWNrYWdpbmcgcmV2aXNpb24gIgorI3wgIihzZXBhcmF0ZWQgYnkgYSBoeXBoZW4pLiBBY2NlcHRlZCB2ZXJzaW9uIHJlbGF0aW9uc2hpcHMgYXJlIFwiRTxndD5FPGd0PiIKKyN8ICJcIiBmb3IgZ3JlYXRlciB0aGFuLCBcIkU8bHQ+RTxsdD5cIiBmb3IgbGVzcyB0aGFuLCBcIkU8Z3Q+PVwiIGZvciBncmVhdGVyICIKKyN8ICJ0aGFuIG9yIGVxdWFsIHRvLCBcIkU8bHQ+PVwiIGZvciBsZXNzIHRoYW4gb3IgZXF1YWwgdG8sIGFuZCBcIj1cIiBmb3IgIgorI3wgImVxdWFsIHRvLiIKK21zZ2lkICIiCisiQSB2ZXJzaW9uIG51bWJlciBtYXkgc3RhcnQgd2l0aCBhIFwiRTxndD5FPGd0PlwiLCBpbiB3aGljaCBjYXNlIGFueSBsYXRlciAiCisidmVyc2lvbiB3aWxsIG1hdGNoLCBhbmQgbWF5IHNwZWNpZnkgb3Igb21pdCB0aGUgRGViaWFuIHBhY2thZ2luZyByZXZpc2lvbiAiCisiKHNlcGFyYXRlZCBieSBhIGh5cGhlbikuIEFjY2VwdGVkIHZlcnNpb24gcmVsYXRpb25zaGlwcyBhcmUgXCJFPGd0PkU8Z3Q+XCIgIgorImZvciBncmVhdGVyIHRoYW4sIFwiRTxsdD5FPGx0PlwiIGZvciBsZXNzIHRoYW4sIFwiRTxndD49XCIgZm9yIGdyZWF0ZXIgdGhhbiAiCisib3IgZXF1YWwgdG8sIFwiRTxsdD49XCIgZm9yIGxlc3MgdGhhbiBvciBlcXVhbCB0bywgYW5kIFwiPVwiIGZvciBlcXVhbCB0by4iCittc2dzdHIgIiIKKyJOdW1lciB3ZXJzamkgbW/FvGUgemFjenluYcSHIHNpxJkgb2QgXCJFPGd0PkU8Z3Q+XCIsIGNvIG96bmFjemEsIMW8ZSBrYcW8ZGEgIgorInDDs8W6bmllanN6YSB3ZXJzamEgcGFraWV0dSBixJlkemllIG9kcG93aWVkbmlhOyBtb8W8bmEgdGFrxbxlIHBvZGF3YcSHIGx1YiAiCisicG9taWphxIcgd2Vyc2rEmSB6bWlhbiBEZWJpYW5hIChwbyB6bmFrdSBtecWbbG5pa2EpLiBBa2NlcHRvd2FsbmUgcmVsYWNqZSBzxIUgIgorIm5hc3TEmXB1asSFY2U6IFwiRTxndD5FPGd0PlwiIC0gd2nEmWtzenkgbmnFvCwgXCJFPGx0PkU8bHQ+XCIgLSBtbmllanN6eSBuacW8LCAiCisiXCJFPGd0Pj1cIiAtIHdpxJlrc3p5IGx1YiByw7N3bnksIFwiRTxsdD49XCIgLSBtbmllanN6eSBsdWIgcsOzd255IG9yYXogXCI9XCIgLSAiCisicsOzd255LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MTYwCittc2dpZCAiIgorIkEgYXJjaGl0ZWN0dXJlIHNwZWNpZmljYXRpb24gY29uc2lzdHMgb2Ygb25lIG9yIG1vcmUgYXJjaGl0ZWN0dXJlIG5hbWVzLCAiCisic2VwYXJhdGVkIGJ5IHdoaXRlc3BhY2UuIEV4Y2xhbWF0aW9uIG1hcmtzIG1heSBiZSBwcmVwZW5kZWQgdG8gZWFjaCBvZiB0aGUgIgorIm5hbWVzLCBtZWFuaW5nIFwiTk9UXCIuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjE2NQorbXNnaWQgIiIKKyJOb3RlIHRoYXQgZGVwZW5kZW5jaWVzIG9uIHBhY2thZ2VzIGluIHRoZSBCPGJ1aWxkLWVzc2VudGlhbD4gc2V0IGNhbiBiZSAiCisib21pdHRlZCBhbmQgdGhhdCBkZWNsYXJpbmcgYnVpbGQgY29uZmxpY3RzIGFnYWluc3QgdGhlbSBpcyBpbXBvc3NpYmxlLiBBICIKKyJsaXN0IG9mIHRoZXNlIHBhY2thZ2VzIGlzIGluIHRoZSBidWlsZC1lc3NlbnRpYWwgcGFja2FnZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRlYi1zcmMtY29udHJvbC41OjE2NworIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJPUFRJT05BTCBGSUVMRFMiCittc2dpZCAiQklOQVJZIEZJRUxEUyIKK21zZ3N0ciAiUE9MQSBOSUVXWU1BR0FORSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MTc2Cittc2dpZCAiIgorIk5vdGUgdGhhdCB0aGUgQjxQcmlvcml0eT4sIEI8U2VjdGlvbj4gYW5kIEI8SG9tZXBhZ2U+IGZpZWxkcyBjYW4gYWxzbyBiZSBpbiAiCisiYSBiaW5hcnkgcGFyYWdyYXBoIHRvIG92ZXJyaWRlIHRoZSBnbG9iYWwgdmFsdWUgZnJvbSB0aGUgc291cmNlIHBhY2thZ2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3JjLWNvbnRyb2wuNToxNzcKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxQYWNrYWdlOj4gRTxsdD5wYWNrYWdlIG5hbWVFPGd0PiIKK21zZ2lkICJCPFBhY2thZ2U6PiBJPGJpbmFyeS1wYWNrYWdlLW5hbWU+IChyZXF1aXJlZCkiCittc2dzdHIgIkI8UGFja2FnZTo+IEU8bHQ+bmF6d2EgcGFraWV0dUU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToxODEKK21zZ2lkICIiCisiVGhpcyBmaWVsZCBpcyB1c2VkIHRvIG5hbWUgdGhlIGJpbmFyeSBwYWNrYWdlIG5hbWUuIFRoZSBzYW1lIHJlc3RyaWN0aW9ucyBhcyAiCisidG8gYSBzb3VyY2UgcGFja2FnZSBuYW1lIGFwcGx5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLXNyYy1jb250cm9sLjU6MTgyCisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8QXJjaGl0ZWN0dXJlOj4gRTxsdD5hcmNofGFsbEU8Z3Q+IgorbXNnaWQgIkI8QXJjaGl0ZWN0dXJlOj4gSTxhcmNoPnxCPGFsbD58Qjxhbnk+IChyZXF1aXJlZCkiCittc2dzdHIgIkI8QXJjaGl0ZWN0dXJlOj4gRTxsdD5hcmNoaXRla3R1cmF8YWxsRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjE5NQorbXNnaWQgIiIKKyJUaGUgYXJjaGl0ZWN0dXJlIHNwZWNpZmllcyBvbiB3aGljaCB0eXBlIG9mIGhhcmR3YXJlIHRoaXMgcGFja2FnZSBydW5zLiBGb3IgIgorInBhY2thZ2VzIHRoYXQgcnVuIG9uIGFsbCBhcmNoaXRlY3R1cmVzLCB1c2UgdGhlIEI8YW55PiB2YWx1ZS4gRm9yIHBhY2thZ2VzICIKKyJ0aGF0IGFyZSBhcmNoaXRlY3R1cmUgaW5kZXBlbmRlbnQsIHN1Y2ggYXMgc2hlbGwgYW5kIFBlcmwgc2NyaXB0cyBvciAiCisiZG9jdW1lbnRhdGlvbiwgdXNlIHRoZSBCPGFsbD4gdmFsdWUuIFRvIHJlc3RyaWN0IHRoZSBwYWNrYWdlcyB0byBhIGNlcnRhaW4gIgorInNldCBvZiBhcmNoaXRlY3R1cmVzLCBzcGVjaWZ5IHRoZSBhcmNoaXRlY3R1cmUgbmFtZXMsIHNlcGFyYXRlZCBieSBhIHNwYWNlLiAiCisiSXQncyBhbHNvIHBvc3NpYmxlIHRvIHB1dCBhcmNoaXRlY3R1cmUgd2lsZGNhcmRzIGluIHRoYXQgbGlzdCAoc2VlIEI8ZHBrZy0iCisiYXJjaGl0ZWN0dXJlPigxKSAgZm9yIG1vcmUgaW5mb3JtYXRpb24gYWJvdXQgdGhlbSkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3JjLWNvbnRyb2wuNToxOTYKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxQYWNrYWdlOj4gRTxsdD5wYWNrYWdlIG5hbWVFPGd0PiIKK21zZ2lkICJCPFBhY2thZ2UtVHlwZTo+IEI8ZGViPnxCPHVkZWI+IgorbXNnc3RyICJCPFBhY2thZ2U6PiBFPGx0Pm5hendhIHBha2lldHVFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MjAxCittc2dpZCAiIgorIlRoaXMgZmllbGQgZGVmaW5lcyB0aGUgdHlwZSBvZiB0aGUgcGFja2FnZS4gXCJ1ZGViXCIgaXMgZm9yIHNpemUtY29uc3RyYWluZWQgIgorInBhY2thZ2VzIHVzZWQgYnkgdGhlIGRlYmlhbiBpbnN0YWxsZXIuIFwiZGViXCIgaXMgdGhlIGRlZmF1bHQgdmFsdWUsIGl0J3MgIgorImFzc3VtZWQgaWYgdGhlIGZpZWxkIGlzIGFic2VudC4gTW9yZSB0eXBlcyBtaWdodCBiZSBhZGRlZCBpbiB0aGUgZnV0dXJlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLXNyYy1jb250cm9sLjU6MjI1CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8RGVzY3JpcHRpb246PiBFPGx0PnNob3J0IGRlc2NyaXB0aW9uRTxndD4iCittc2dpZCAiQjxEZXNjcmlwdGlvbjo+IEk8c2hvcnQtZGVzY3JpcHRpb24+IChyZXF1aXJlZCkiCittc2dzdHIgIkI8RGVzY3JpcHRpb246PiBFPGx0Pmtyw7N0a2kgb3Bpc0U8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToyMzIKK21zZ2lkICIiCisiVGhlc2UgZmllbGRzIGFyZSBkZXNjcmliZWQgaW4gdGhlIEI8ZGViLWNvbnRyb2w+KDUpICBtYW51YWwgcGFnZSwgYXMgdGhleSAiCisiYXJlIGNvcGllZCBsaXRlcmFsbHkgdG8gdGhlIGNvbnRyb2wgZmlsZSBvZiB0aGUgYmluYXJ5IHBhY2thZ2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3JjLWNvbnRyb2wuNToyNDgKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxSZXBsYWNlczo+IEU8bHQ+cGFja2FnZSBsaXN0RTxndD4iCittc2dpZCAiQjxFbmhhbmNlczo+STwgcGFja2FnZS1saXN0PiIKK21zZ3N0ciAiQjxSZXBsYWNlczo+IEU8bHQ+bGlzdGEgcGFraWV0w7N3RTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjI3MAorbXNnaWQgIiIKKyJUaGVzZSBmaWVsZHMgZGVjbGFyZSByZWxhdGlvbnNoaXBzIGJldHdlZW4gcGFja2FnZXMuIFRoZXkgYXJlIGRpc2N1c3NlZCBpbiAiCisidGhlIEI8ZGViLWNvbnRyb2w+KDUpICBtYW5wYWdlIGFuZCBpbiB0aGUgQjxkZWJpYW4tcG9saWN5PiBwYWNrYWdlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZGViLXNyYy1jb250cm9sLjU6MjcxCisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIlJFUVVJUkVEIEZJRUxEUyIKK21zZ2lkICJVU0VSLURFRklORUQgRklFTERTIgorbXNnc3RyICJQT0xBIFdZTUFHQU5FIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToyODYKK21zZ2lkICIiCisiSXQgaXMgYWxsb3dlZCB0byBhZGQgYWRkaXRpb25hbCB1c2VyLWRlZmluZWQgZmllbGRzIHRvIHRoZSBjb250cm9sIGZpbGUuIFRoZSAiCisidG9vbHMgd2lsbCBpZ25vcmUgdGhlc2UgZmllbGRzLiBJZiB5b3Ugd2FudCB0aGUgZmllbGRzIHRvIGJlIGNvcGllZCBvdmVyIHRvICIKKyJ0aGUgb3V0cHV0IGZpbGVzLCBzdWNoIGFzIHRoZSBiaW5hcnkgcGFja2FnZXMsIHlvdSBuZWVkIHRvIHVzZSBhIGN1c3RvbSAiCisibmFtaW5nIHNjaGVtZTogdGhlIGZpZWxkcyBzaG91bGQgc3RhcnQgd2l0aCBhIFgsIGZvbGxvd2VkIGJ5IG9uZSBvciBtb3JlIG9mICIKKyJ0aGUgbGV0dGVycyBCQ1MgYW5kIGEgaHlwZW4uIElmIHRoZSBsZXR0ZXIgQiBpcyB1c2VkLCB0aGUgZmllbGQgd2lsbCBhcHBlYXIgIgorImluIHRoZSBjb250cm9sIGZpbGUgaW4gdGhlIGJpbmFyeSBwYWNrYWdlLCBzZWUgQjxkZWItY29udHJvbD4oNSksIGZvciB0aGUgIgorImxldHRlciBTIGluIHRoZSBzb3VyY2UgcGFja2FnZSBjb250cm9sIGZpbGUgYXMgY29uc3RydWN0ZWQgYnkgQjxkcGtnLXNvdXJjZT4iCisiKDEpICBhbmQgZm9yIHRoZSBsZXR0ZXIgQyBpbiB0aGUgdXBsb2FkIGNvbnRyb2wgKC5jaGFuZ2VzKSBmaWxlLiBOb3RlIHRoYXQgIgorInRoZSBYW0JDU10tIHByZWZpeGVzIGFyZSBzdHJpcHBlZCB3aGVuIHRoZSBmaWVsZHMgYXJlIGNvcGllZCBvdmVyIHRvIHRoZSAiCisib3V0cHV0IGZpbGVzLiBBIGZpZWxkIEI8WEMtQXBwcm92ZWQtQnk+IHdpbGwgYXBwZWFyIGFzIEI8QXBwcm92ZWQtQnk+IGluIHRoZSAiCisiY2hhbmdlcyBmaWxlIGFuZCB3aWxsIG5vdCBhcHBlYXIgaW4gdGhlIGJpbmFyeSBvciBzb3VyY2UgcGFja2FnZSBjb250cm9sICIKKyJmaWxlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MzA0CisjLCBuby13cmFwCittc2dpZCAiIgorIiMgQ29tbWVudFxuIgorIlNvdXJjZTogZHBrZ1xuIgorIlNlY3Rpb246IGFkbWluXG4iCisiUHJpb3JpdHk6IHJlcXVpcmVkXG4iCisiTWFpbnRhaW5lcjogRHBrZyBEZXZlbG9wZXJzIEU8bHQ+ZGViaWFuLWRwa2dAbGlzdHMuZGViaWFuLm9yZ0U8Z3Q+XG4iCisiIyB0aGlzIGZpZWxkIGlzIGNvcGllZCB0byB0aGUgYmluYXJ5IGFuZCBzb3VyY2UgcGFja2FnZXNcbiIKKyJYQlMtVXBzdHJlYW0tUmVsZWFzZS1TdGF0dXM6IHN0YWJsZVxuIgorIkhvbWVwYWdlOiBodHRwOi8vd2lraS5kZWJpYW4ub3JnL1RlYW1zL0Rwa2dcbiIKKyJWY3MtQnJvd3NlcjogaHR0cDovL2dpdC5kZWJpYW4ub3JnLz9wPWRwa2cvZHBrZy5naXRcbiIKKyJWY3MtR2l0OiBnaXQ6Ly9naXQuZGViaWFuLm9yZy9naXQvZHBrZy9kcGtnLmdpdFxuIgorIlN0YW5kYXJkcy1WZXJzaW9uOiAzLjcuM1xuIgorIkJ1aWxkLURlcGVuZHM6IHBrZy1jb25maWcsIGRlYmhlbHBlciAoRTxndD49IDQuMS44MSksXG4iCisiIGxpYnNlbGludXgxLWRldiAoRTxndD49IDEuMjgtNCkgWyFsaW51eC1hbnldXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MzIzCisjLCBuby13cmFwCittc2dpZCAiIgorIlBhY2thZ2U6IGRwa2ctZGV2XG4iCisiU2VjdGlvbjogdXRpbHNcbiIKKyJQcmlvcml0eTogb3B0aW9uYWxcbiIKKyJBcmNoaXRlY3R1cmU6IGFsbFxuIgorIiMgdGhpcyBpcyBhIGN1c3RvbSBmaWVsZCBpbiB0aGUgYmluYXJ5IHBhY2thZ2VcbiIKKyJYQi1NZW50b3JpbmctQ29udGFjdDogUmFwaGFlbCBIZXJ0em9nIEU8bHQ+aGVydHpvZ0BkZWJpYW4ub3JnRTxndD5cbiIKKyJEZXBlbmRzOiBkcGtnIChFPGd0Pj0gMS4xNC42KSwgcGVybDUsIHBlcmwtbW9kdWxlcywgY3BpbyAoRTxndD49IDIuNC4yLTIpLFxuIgorIiBiemlwMiwgbHptYSwgcGF0Y2ggKEU8Z3Q+PSAyLjItMSksIG1ha2UsIGJpbnV0aWxzLCBsaWJ0aW1lZGF0ZS1wZXJsXG4iCisiUmVjb21tZW5kczogZ2NjIHwgYy1jb21waWxlciwgYnVpbGQtZXNzZW50aWFsXG4iCisiU3VnZ2VzdHM6IGdudXBnLCBkZWJpYW4ta2V5cmluZ1xuIgorIkNvbmZsaWN0czogZHBrZy1jcm9zcyAoRTxsdD5FPGx0PiAyLjAuMCksIGRldnNjcmlwdHMgKEU8bHQ+RTxsdD4gMi4xMC4yNilcbiIKKyJSZXBsYWNlczogbWFucGFnZXMtcGwgKEU8bHQ+PSAyMDA1MTExNy0xKVxuIgorIkRlc2NyaXB0aW9uOiBEZWJpYW4gcGFja2FnZSBkZXZlbG9wbWVudCB0b29sc1xuIgorIiBUaGlzIHBhY2thZ2UgcHJvdmlkZXMgdGhlIGRldmVsb3BtZW50IHRvb2xzIChpbmNsdWRpbmcgZHBrZy1zb3VyY2UpXG4iCisiIHJlcXVpcmVkIHRvIHVucGFjaywgYnVpbGQgYW5kIHVwbG9hZCBEZWJpYW4gc291cmNlIHBhY2thZ2VzLlxuIgorIiAuXG4iCisiIE1vc3QgRGViaWFuIHNvdXJjZSBwYWNrYWdlcyB3aWxsIHJlcXVpcmUgYWRkaXRpb25hbCB0b29scyB0byBidWlsZDtcbiIKKyIgZm9yIGV4YW1wbGUsIG1vc3QgcGFja2FnZXMgbmVlZCBtYWtlIGFuZCB0aGUgQyBjb21waWxlciBnY2MuXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MzMwCisjLCBmdXp6eQorI3wgbXNnaWQgIkI8ZGViLWNvbnRyb2w+KDUpLCBCPGRlYj4oNSksIEI8ZHBrZz4oMSkiCittc2dpZCAiQjxkZWItY29udHJvbD4oNSksIEI8ZGViLXZlcnNpb24+KDUpLCBCPGRwa2ctc291cmNlPigxKSIKK21zZ3N0ciAiQjxkZWItY29udHJvbD4oNSksIEI8ZGViPig1KSwgQjxkcGtnPigxKSIKKworIy4gdHlwZTogVEgKKyM6IGRlYi1zcGxpdC41OjEKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiZGViLXNobGlicyIKK21zZ2lkICJkZWItc3BsaXQiCittc2dzdHIgImRlYi1zaGxpYnMiCisKKyMuIHR5cGU6IFRICisjOiBkZWItc3BsaXQuNToxIGRwa2ctY2hlY2tidWlsZGRlcHMuMToxIGRwa2ctZGlzdGFkZGZpbGUuMToxIGRwa2ctc3BsaXQuMToyCisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjEgZHBrZy12ZW5kb3IuMToxIHN0YXJ0LXN0b3AtZGFlbW9uLjg6MQorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICIyMDA3LTAzLTA3IgorbXNnaWQgIjIwMTEtMDctMDQiCittc2dzdHIgIjIwMDctMDMtMDciCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcGxpdC41OjQKKyMsIGZ1enp5CisjfCBtc2dpZCAiZGViIC0gRGViaWFuIGJpbmFyeSBwYWNrYWdlIGZvcm1hdCIKK21zZ2lkICJkZWItc3BsaXQgLSBEZWJpYW4gbXVsdGktcGFydCBiaW5hcnkgcGFja2FnZSBmb3JtYXQiCittc2dzdHIgImRlYiAtIGZvcm1hdCBiaW5hcm5lZ28gcGFraWV0dSBEZWJpYW5hIgorCisjIHR5cGU6IFBsYWluIHRleHQKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcGxpdC41OjkKK21zZ2lkICIiCisiVGhlIG11bHRpLXBhcnQgQjwuZGViPiBmb3JtYXQgaXMgdXNlZCB0byBzcGxpdCBiaWcgcGFja2FnZXMgaW50byBzbWFsbGVyICIKKyJwaWVjZXMgdG8gZWFzZSB0cmFuc3BvcnQgaW4gc21hbGwgbWVkaWEuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcGxpdC41OjEyCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJUaGUgZmlsZSBpcyBhbiBCPGFyPiBhcmNoaXZlIHdpdGggYSBtYWdpYyB2YWx1ZSBvZiBCPCFFPGx0PmFyY2hFPGd0Pj4uICAiCisjfCAiVGhlIGZpbGUgbmFtZXMgbWlnaHQgY29udGFpbiBhIHRyYWlsaW5nIHNsYXNoLiIKK21zZ2lkICIiCisiVGhlIGZpbGUgaXMgYW4gQjxhcj4gYXJjaGl2ZSB3aXRoIGEgbWFnaWMgdmFsdWUgb2YgQjwhRTxsdD5hcmNoRTxndD4+LiAgVGhlICIKKyJmaWxlIG5hbWVzIG1pZ2h0IGNvbnRhaW4gYSB0cmFpbGluZyBzbGFzaCAoc2luY2UgZHBrZyAxLjE1LjYpLiIKK21zZ3N0ciAiIgorIlBsaWsgdGVuIGplc3QgYXJjaGl3dW0gQjxhcj4gbWFqxIVjeW0gbGljemLEmSBtYWdpY3puxIUgeiBCPCFFPGx0PmFyY2hFPGd0Pj4uICIKKyJOYXp3eSBwbGlrw7N3IG1vZ8SFIHphd2llcmHEhyBrb8WEY3rEhWN5IHpuYWsgdWtvxZtuaWthLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNwbGl0LjU6MTUKK21zZ2lkICIiCisiVGhlIGZpcnN0IG1lbWJlciBpcyBuYW1lZCBCPGRlYmlhbi1zcGxpdD4gYW5kIGNvbnRhaW5zIGEgc2VyaWVzIG9mIGxpbmVzLCAiCisic2VwYXJhdGVkIGJ5IG5ld2xpbmVzLiBDdXJyZW50bHkgZWlnaHQgbGluZXMgYXJlIHByZXNlbnQ6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkZWItc3BsaXQuNToxNSBkZWItc3BsaXQuNToxOCBkZWItc3BsaXQuNToyMCBkZWItc3BsaXQuNToyMiBkZWItc3BsaXQuNToyNAorIzogZGViLXNwbGl0LjU6MjYgZGViLXNwbGl0LjU6MjggZGViLXNwbGl0LjU6MzEgZHBrZy1nZW5zeW1ib2xzLjE6MjAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjIyIGRwa2ctZ2Vuc3ltYm9scy4xOjI0IGRwa2ctZ2Vuc3ltYm9scy4xOjI2CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozMTEgZHBrZy1nZW5zeW1ib2xzLjE6MzE3IGRwa2ctZ2Vuc3ltYm9scy4xOjM1MQorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzU1IGRwa2ctZ2Vuc3ltYm9scy4xOjM1OAorIywgbm8td3JhcAorbXNnaWQgIlxcKGJ1IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcGxpdC41OjE4Cittc2dpZCAiIgorIlRoZSBmb3JtYXQgdmVyc2lvbiBudW1iZXIsIEI8Mi4xPiBhdCB0aGUgdGltZSB0aGlzIG1hbnVhbCBwYWdlIHdhcyB3cml0dGVuLiIKK21zZ3N0ciAiIgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3BsaXQuNToyMAorIywgZnV6enkKKyN8IG1zZ2lkICJUaGUgc291cmNlIHBhY2thZ2UgdmVyc2lvbi4iCittc2dpZCAiVGhlIHBhY2thZ2UgbmFtZS4iCittc2dzdHIgIldlcnNqYSBwYWtpZXR1IMW6csOzZMWCb3dlZ28iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcGxpdC41OjIyCisjLCBmdXp6eQorI3wgbXNnaWQgIlRoZSBzb3VyY2UgcGFja2FnZSB2ZXJzaW9uLiIKK21zZ2lkICJUaGUgcGFja2FnZSB2ZXJzaW9uLiIKK21zZ3N0ciAiV2Vyc2phIHBha2lldHUgxbpyw7NkxYJvd2VnbyIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNwbGl0LjU6MjQKKyMsIGZ1enp5CisjfCBtc2dpZCAiVGhlIHNvdXJjZSBwYWNrYWdlIHZlcnNpb24uIgorbXNnaWQgIlRoZSBtZDVzdW0gb2YgdGhlIHBhY2thZ2UuIgorbXNnc3RyICJXZXJzamEgcGFraWV0dSDFunLDs2TFgm93ZWdvIgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3BsaXQuNToyNgorIywgZnV6enkKKyN8IG1zZ2lkICJUaGUgaGVhZGVyIGxpbmUgYWJvdmUgdGhlIGxpc3Qgb2YgcGFja2FnZXMuIgorbXNnaWQgIlRoZSB0b3RhbCBzaXplIG9mIHRoZSBwYWNrYWdlLiIKK21zZ3N0ciAiTGluaWEgbmFnxYLDs3drYSBuYWQgbGlzdMSFIHBha2lldMOzdy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcGxpdC41OjI4Cittc2dpZCAiVGhlIG1heGltdW0gcGFydCBzaXplLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3BsaXQuNTozMQorbXNnaWQgIiIKKyJUaGUgY3VycmVudCBwYXJ0IG51bWJlciwgZm9sbG93ZWQgYnkgYSBzbGFzaCBhbmQgdGhlIHRvdGFsIGFtb3VudCBvZiBwYXJ0cyAiCisiKGFzIGluIFxcKG9xMS8xMFxcKGNxKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNwbGl0LjU6MzMKK21zZ2lkICJUaGUgcGFja2FnZSBhcmNoaXRlY3R1cmUgKHNpbmNlIGRwa2cgMS4xNi4xKS4iCittc2dzdHIgIiIKKworIyB0eXBlOiBQbGFpbiB0ZXh0CisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3BsaXQuNTozNgorbXNnaWQgIiIKKyJQcm9ncmFtcyB3aGljaCByZWFkIG11bHRpLXBhcnQgYXJjaGl2ZXMgc2hvdWxkIGJlIHByZXBhcmVkIGZvciBhZGRpdGlvbmFsICIKKyJsaW5lcyB0byBiZSBwcmVzZW50LCBhbmQgc2hvdWxkIGlnbm9yZSB0aGVzZSBpZiB0aGlzIGlzIHRoZSBjYXNlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3BsaXQuNTo0MQorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiSWYgdGhlIG1ham9yIG51bWJlciBoYXMgY2hhbmdlZCwgYW4gaW5jb21wYXRpYmxlIGNoYW5nZSBoYXMgYmVlbiBtYWRlIGFuZCAiCisjfCAidGhlIHByb2dyYW0gc2hvdWxkIHN0b3AuIElmIGl0IGhhcyBub3QsIHRoZW4gdGhlIHByb2dyYW0gc2hvdWxkIGJlIGFibGUgIgorI3wgInRvIHNhZmVseSBjb250aW51ZSwgdW5sZXNzIGl0IGVuY291bnRlcnMgYW4gdW5leHBlY3RlZCBtZW1iZXIgaW4gdGhlICIKKyN8ICJhcmNoaXZlIChleGNlcHQgYXQgdGhlIGVuZCksIGFzIGRlc2NyaWJlZCBiZWxvdy4iCittc2dpZCAiIgorIklmIHRoZSB2ZXJzaW9uIG51bWJlciBoYXMgY2hhbmdlZCwgYW4gaW5jb21wYXRpYmxlIGNoYW5nZSBoYXMgYmVlbiBtYWRlIGFuZCAiCisidGhlIHByb2dyYW0gc2hvdWxkIHN0b3AuIElmIGl0IGhhcyBub3QsIHRoZW4gdGhlIHByb2dyYW0gc2hvdWxkIGJlIGFibGUgdG8gIgorInNhZmVseSBjb250aW51ZSwgdW5sZXNzIGl0IGVuY291bnRlcnMgYW4gdW5leHBlY3RlZCBtZW1iZXIgaW4gdGhlIGFyY2hpdmUgIgorIihleGNlcHQgYXQgdGhlIGVuZCksIGFzIGRlc2NyaWJlZCBiZWxvdy4iCittc2dzdHIgIiIKKyJKZcW8ZWxpIHptaWVuaSBzacSZIGfFgsOzd25hIGxpY3piYSBudW1lcnUgd2Vyc2ppIChsaWN6YmEgcHJ6ZWQga3JvcGvEhSksIG96bmFjemEgIgorInRvLCDFvGUgd3Byb3dhZHpvbmUgem1pYW55IHcgZm9ybWFjaWUgc8SFIG5pZWtvbXBhdHliaWxuZSB6IHBvcHJ6ZWRuacSFIHdlcnNqxIUgIgorImkgcHJvZ3JhbSBwb3dpbmllbiBzacSZIHphdHJ6eW1hxIcuIEplxbxlbGkgc2nEmSBuaWUgemF0cnp5bWEsIHRvIHBvd2luaWVuICIKKyJrb250eW51b3dhxIcgZHppYcWCYW5pZSBhxbwgZG8gbmFwb3RrYW5pYSBuaWVvY3pla2l3YW5lZ28gc2vFgmFkbmlrYSB3IGFyY2hpd3VtICIKKyIoY2h5YmEsIMW8ZSB3eXN0xJlwdWplIG9uIG5hIGtvxYRjdSksIHRhayBqYWsgdG8gb3Bpc2FubyBwb25pxbxlai4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcGxpdC41OjQ0CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJUaGUgdGhpcmQsIGxhc3QgcmVxdWlyZWQgbWVtYmVyIGlzIG5hbWVkIEI8ZGF0YS50YXIuZ3o+LiAgSXQgY29udGFpbnMgdGhlICIKKyN8ICJmaWxlc3lzdGVtIGFyY2hpdmUgYXMgYSBnemlwcGVkIHRhciBhcmNoaXZlLiIKK21zZ2lkICIiCisiVGhlIHNlY29uZCwgbGFzdCByZXF1aXJlZCBtZW1iZXIgaXMgbmFtZWQgQjxkYXRhLj5JPE4+LCB3aGVyZSBJPE4+IGRlbm90ZXMgIgorInRoZSBwYXJ0IG51bWJlci4gSXQgY29udGFpbnMgdGhlIHJhdyBwYXJ0IGRhdGEuIgorbXNnc3RyICIiCisiVHJ6ZWNpLCBvc3RhdG5pIHd5bWFnYW55LCBjesWCb25layBuYXp5d2Egc2nEmSBCPGRhdGEudGFyLmd6Pi4gWmF3aWVyYSAiCisiYXJjaGl3dW0gc3lzdGVtdSBwbGlrw7N3IHcgcG9zdGFjaSBzcGFrb3dhbmVnbyBnemlwZW0gYXJjaGl3dW0gdGFyLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNwbGl0LjU6NDkKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlRoZXNlIG1lbWJlcnMgbXVzdCBvY2N1ciBpbiB0aGlzIGV4YWN0IG9yZGVyLiBDdXJyZW50IGltcGxlbWVudGF0aW9ucyAiCisjfCAic2hvdWxkIGlnbm9yZSBhbnkgYWRkaXRpb25hbCBtZW1iZXJzIGFmdGVyIEI8ZGF0YS50YXI+LiAgRnVydGhlciBtZW1iZXJzICIKKyN8ICJtYXkgYmUgZGVmaW5lZCBpbiB0aGUgZnV0dXJlLCBhbmQgKGlmIHBvc3NpYmxlKSB3aWxsIGJlIHBsYWNlZCBhZnRlciAiCisjfCAidGhlc2UgdGhyZWUuIEFueSBhZGRpdGlvbmFsIG1lbWJlcnMgdGhhdCBtYXkgbmVlZCB0byBiZSBpbnNlcnRlZCBiZWZvcmUgIgorI3wgIkI8ZGF0YS50YXI+IGFuZCB3aGljaCBzaG91bGQgYmUgc2FmZWx5IGlnbm9yZWQgYnkgb2xkZXIgcHJvZ3JhbXMsIHdpbGwgIgorI3wgImhhdmUgbmFtZXMgc3RhcnRpbmcgd2l0aCBhbiB1bmRlcnNjb3JlLCBgQjxfPicuIgorbXNnaWQgIiIKKyJUaGVzZSBtZW1iZXJzIG11c3Qgb2NjdXIgaW4gdGhpcyBleGFjdCBvcmRlci4gQ3VycmVudCBpbXBsZW1lbnRhdGlvbnMgc2hvdWxkICIKKyJpZ25vcmUgYW55IGFkZGl0aW9uYWwgbWVtYmVycyBhZnRlciBCPGRhdGEuPkk8Tj4uICBGdXJ0aGVyIG1lbWJlcnMgbWF5IGJlICIKKyJkZWZpbmVkIGluIHRoZSBmdXR1cmUsIGFuZCAoaWYgcG9zc2libGUpIHdpbGwgYmUgcGxhY2VkIGFmdGVyIHRoZXNlIHR3by4iCittc2dzdHIgIiIKKyJTa8WCYWRuaWtpIHRlIG11c3rEhSB3eXN0xJlwb3dhxIcgdyB0eW0gcG93ecW8c3p5bSBwb3J6xIVka3UuIEltcGxlbWVudGFjamUgIgorInBvd2lubnkgaWdub3Jvd2HEhyBqYWtpZWtvbHdpZWsgZG9kYXRrb3dlIHNrxYJhZG5pa2kgd3lzdMSZcHVqxIVjZSBwbyBCPGRhdGEuIgorInRhcj4uIEtvbGVqbmUgc2vFgmFkbmlraSBtb2fEhSB6b3N0YcSHIHpkZWZpbmlvd2FuZSB3IHByenlzesWCb8WbY2kgaSAoamXFvGVsaSAiCisiYsSZZHppZSB0byBtb8W8bGl3ZSkgYsSZZMSFIHVtaWVzemN6b25lIHBvIHRyemVjaCB3ecW8ZWogd3ltaWVuaW9ueWNoLiBEb2RhdGtvd2UgIgorInNrxYJhZG5pa2ksIGRsYSBrdMOzcnljaCB3eW1hZ2FuZSBieSBiecWCbyBpY2ggdW1pZXN6Y3plbmllIHByemVkIEI8ZGF0YS50YXI+IGkgIgorImt0w7NyZSBwb3dpbm55IGJ5xIcgaWdub3Jvd2FuZSBwcnpleiBzdGFyc3plIHByb2dyYW15LCBixJlkxIUgbWlhxYJ5IG5hend5ICIKKyJ6YWN6eW5hasSFY2Ugc2nEmSBvZCB6bmFrdSBwb2RrcmXFm2xlbmlhIFwiQjxfPlwiLiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNwbGl0LjU6NTEKKyMsIGZ1enp5CisjfCBtc2dpZCAiQjxkcGtnLWRlYj4oMSksIEI8ZHBrZz4oMSksIEI8ZHNlbGVjdD4oMSkuIgorbXNnaWQgIkI8ZGViPig1KSwgQjxkcGtnLXNwbGl0PigxKS4iCittc2dzdHIgIkI8ZHBrZy1kZWI+KDEpLCBCPGRwa2c+KDEpLCBCPGRzZWxlY3Q+KDEpLiIKKworIy4gdHlwZTogVEgKKyM6IGRlYi12ZXJzaW9uLjU6NQorIywgbm8td3JhcAorbXNnaWQgImRlYi12ZXJzaW9uIgorbXNnc3RyICJkZWItdmVyc2lvbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNTo4Cittc2dpZCAiZGViLXZlcnNpb24gLSBEZWJpYW4gcGFja2FnZSB2ZXJzaW9uIG51bWJlciBmb3JtYXQiCittc2dzdHIgImRlYi12ZXJzaW9uIC0gZm9ybWF0IG51bWVyw7N3IHdlcnNqaSBwYWtpZXTDs3cgRGViaWFuYSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNToxMQorIywgZnV6enkKKyN8IG1zZ2lkICJbIEk8ZXBvY2g+Ol0gSTx1cHN0cmVhbV92ZXJzaW9uPiBbLUk8ZGViaWFuX3JldmlzaW9uPiBdIgorbXNnaWQgIltJPGVwb2NoPkI8Oj5dSTx1cHN0cmVhbS12ZXJzaW9uPltCPC0+STxkZWJpYW4tcmV2aXNpb24+XSIKK21zZ3N0ciAiWyBJPGVwb2thPjpdIEk8d2Vyc2phX3Vwc3RyZWFtPiBbLUk8cmV3aXpqYV9kZWJpYW5hPiBdIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjE0Cittc2dpZCAiIgorIlZlcnNpb24gbnVtYmVycyBhcyB1c2VkIGZvciBEZWJpYW4gYmluYXJ5IGFuZCBzb3VyY2UgcGFja2FnZXMgY29uc2lzdCBvZiAiCisidGhyZWUgY29tcG9uZW50cy4gVGhlc2UgYXJlOiIKK21zZ3N0ciAiIgorIk51bWVyeSB3ZXJzamkgdcW8eXdhbmUgZGxhIGJpbmFybnljaCBpIMW6csOzZMWCb3d5Y2ggcGFraWV0w7N3IERlYmlhbmEgc2vFgmFkYWrEhSAiCisic2nEmSB6IHRyemVjaCBjesSZxZtjaS4gU8SFIHRvOiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi12ZXJzaW9uLjU6MTQKKyMsIG5vLXdyYXAKK21zZ2lkICJJPGVwb2NoPiIKK21zZ3N0ciAiSTxlcG9rYT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6MjAKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlRoaXMgaXMgYSBzaW5nbGUgKGdlbmVyYWxseSBzbWFsbCkgdW5zaWduZWQgaW50ZWdlci4gIEl0IG1heSBiZSBvbWl0dGVkLCAiCisjfCAiaW4gd2hpY2ggY2FzZSB6ZXJvIGlzIGFzc3VtZWQuICBJZiBpdCBpcyBvbWl0dGVkIHRoZW4gdGhlICIKKyN8ICJJPHVwc3RyZWFtX3ZlcnNpb24+IG1heSBub3QgY29udGFpbiBhbnkgY29sb25zLiIKK21zZ2lkICIiCisiVGhpcyBpcyBhIHNpbmdsZSAoZ2VuZXJhbGx5IHNtYWxsKSB1bnNpZ25lZCBpbnRlZ2VyLiAgSXQgbWF5IGJlIG9taXR0ZWQsIGluICIKKyJ3aGljaCBjYXNlIHplcm8gaXMgYXNzdW1lZC4gIElmIGl0IGlzIG9taXR0ZWQgdGhlbiB0aGUgSTx1cHN0cmVhbS12ZXJzaW9uPiAiCisibWF5IG5vdCBjb250YWluIGFueSBjb2xvbnMuIgorbXNnc3RyICIiCisiSmVzdCB0byBwb2plZHluY3phICh0eXBvd28gbmlld2llbGthKSwgbGljemJhIGNhxYJrb3dpdGEgYmV6IHpuYWt1LiBNb8W8ZSBiecSHICIKKyJwb21pbmnEmXRhLCB3IHRha2ltIHByenlwYWRrdSBqZXN0IHByenlqbW93YW5hIGpha28gemVyby4gSmXFm2xpIGplc3QgIgorInBvbWluacSZdGEsIHd0ZWR5IEk8d2Vyc2phX3Vwc3RyZWFtPiBuaWUgbW/FvGUgemF3aWVyYcSHIMW8YWRuZWdvIGR3dWtyb3BrYS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6MjQKK21zZ2lkICIiCisiSXQgaXMgcHJvdmlkZWQgdG8gYWxsb3cgbWlzdGFrZXMgaW4gdGhlIHZlcnNpb24gbnVtYmVycyBvZiBvbGRlciB2ZXJzaW9ucyBvZiAiCisiYSBwYWNrYWdlLCBhbmQgYWxzbyBhIHBhY2thZ2UncyBwcmV2aW91cyB2ZXJzaW9uIG51bWJlcmluZyBzY2hlbWVzLCB0byBiZSAiCisibGVmdCBiZWhpbmQuIgorbXNnc3RyICIiCisiSmVzdCB1xbx5d2FuYSBhYnkgbW/FvG5hIGJ5xYJvIHBvemJ5xIcgc2nEmSBwb215xYJlayB3IG51bWVyYWNoIHdlcnNqaSBzdGFyc3p5Y2ggIgorIndlcnNqaSBwYWtpZXTDs3csIG9yYXogcG9yYWR6acSHIHNvYmllIHplIHptaWFuxIUgcG9wcnplZG5pY2ggc2NoZW1hdMOzdyAiCisibnVtZXJvd2FuaWEgd2Vyc2ppLiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi12ZXJzaW9uLjU6MjQKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiSTx1cHN0cmVhbV92ZXJzaW9uPiIKK21zZ2lkICJJPHVwc3RyZWFtLXZlcnNpb24+IgorbXNnc3RyICJJPHdlcnNqYV91cHN0cmVhbT4gKHdlcnNqYSBuYWRhbmEgcHJ6ZXogYXV0b3JhKSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNTozNAorbXNnaWQgIiIKKyJUaGlzIGlzIHRoZSBtYWluIHBhcnQgb2YgdGhlIHZlcnNpb24gbnVtYmVyLiAgSXQgaXMgdXN1YWxseSB0aGUgdmVyc2lvbiAiCisibnVtYmVyIG9mIHRoZSBvcmlnaW5hbCAoXCJ1cHN0cmVhbVwiKSAgcGFja2FnZSBmcm9tIHdoaWNoIHRoZSBJPC5kZWI+IGZpbGUgIgorImhhcyBiZWVuIG1hZGUsIGlmIHRoaXMgaXMgYXBwbGljYWJsZS4gIFVzdWFsbHkgdGhpcyB3aWxsIGJlIGluIHRoZSBzYW1lICIKKyJmb3JtYXQgYXMgdGhhdCBzcGVjaWZpZWQgYnkgdGhlIHVwc3RyZWFtIGF1dGhvcihzKTsgaG93ZXZlciwgaXQgbWF5IG5lZWQgdG8gIgorImJlIHJlZm9ybWF0dGVkIHRvIGZpdCBpbnRvIHRoZSBwYWNrYWdlIG1hbmFnZW1lbnQgc3lzdGVtJ3MgZm9ybWF0IGFuZCAiCisiY29tcGFyaXNvbiBzY2hlbWUuIgorbXNnc3RyICIiCisiR8WCw7N3bmEgY3rEmcWbxIcgbnVtZXJ1IHdlcnNqaS4gWnd5a2xlIGplc3QgdG8gbnVtZXIgd2Vyc2ppIG9yeWdpbmFsbmVnbyAiCisiKFwidXBzdHJlYW1cIikgcGFraWV0dSwgbmEgcG9kc3Rhd2llIGt0w7NyZWdvIHBvd3N0YcWCIHBsaWsgSTwuZGViPiwgbyBpbGUgIgorImplc3QgdG8gbW/FvGxpd2UuIFR5cG93byBqZXN0IHcgdHltIHNhbXltIGZvcm1hY2llIGpha2kgem9zdGHFgiB1xbx5dHkgcHJ6ZXogIgorImF1dG9yYSjDs3cpIHBha2lldHUuIE1vxbxlIGplZG5hayB6b3N0YcSHIHByemVmb3JtYXRvd2FuYSBhYnkgbGVwaWVqIHBhc293YcSHIGRvICIKKyJmb3JtYXR1IGkgc2NoZW1hdHUgcG9yw7N3bnl3YW5pYSB3ZXJzamkgdcW8eXdhbmVnbyBwcnpleiBzeXN0ZW0gemFyesSFZHphbmlhICIKKyJwYWtpZXRhbWkuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjM5CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJUaGUgY29tcGFyaXNvbiBiZWhhdmlvciBvZiB0aGUgcGFja2FnZSBtYW5hZ2VtZW50IHN5c3RlbSB3aXRoIHJlc3BlY3QgdG8gIgorI3wgInRoZSBJPHVwc3RyZWFtX3ZlcnNpb24+IGlzIGRlc2NyaWJlZCBiZWxvdy4gIFRoZSBJPHVwc3RyZWFtX3ZlcnNpb24+ICIKKyN8ICJwb3J0aW9uIG9mIHRoZSB2ZXJzaW9uIG51bWJlciBpcyBtYW5kYXRvcnkuIgorbXNnaWQgIiIKKyJUaGUgY29tcGFyaXNvbiBiZWhhdmlvciBvZiB0aGUgcGFja2FnZSBtYW5hZ2VtZW50IHN5c3RlbSB3aXRoIHJlc3BlY3QgdG8gdGhlICIKKyJJPHVwc3RyZWFtLXZlcnNpb24+IGlzIGRlc2NyaWJlZCBiZWxvdy4gVGhlIEk8dXBzdHJlYW0tdmVyc2lvbj4gcG9ydGlvbiBvZiAiCisidGhlIHZlcnNpb24gbnVtYmVyIGlzIG1hbmRhdG9yeS4iCittc2dzdHIgIiIKKyJQb25pxbxlaiBvcGlzYW5lIGplc3QgemFjaG93YW5pZSBzeXN0ZW11IHphcnrEhWR6YW5pYSBwYWtpZXRhbWkgcG9kY3phcyAiCisicG9yw7N3bnl3YW5pYSB1d3pnbMSZZG5pYWrEhWNlZ28gSTx3ZXJzasSZX3Vwc3RyZWFtPi4gQ3rEmcWbxIcgSTx3ZXJzamFfdXBzdHJlYW0+ICIKKyJudW1lcnUgd2Vyc2ppIHBha2lldHUgamVzdCB3eW1hZ2FuYS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6NDgKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlRoZSBJPHVwc3RyZWFtX3ZlcnNpb24+IG1heSBjb250YWluIG9ubHkgYWxwaGFudW1lcmljcyAoXCJBLVphLXowLTlcIikgIgorI3wgImFuZCB0aGUgY2hhcmFjdGVycyBCPC4+IEI8Kz4gQjwtPiBCPDo+IEI8fj4gKGZ1bGwgc3RvcCwgcGx1cywgaHlwaGVuLCAiCisjfCAiY29sb24sIHRpbGRlKSBhbmQgc2hvdWxkIHN0YXJ0IHdpdGggYSBkaWdpdC4gIElmIHRoZXJlIGlzIG5vICIKKyN8ICJJPGRlYmlhbl9yZXZpc2lvbj4gdGhlbiBoeXBoZW5zIGFyZSBub3QgYWxsb3dlZDsgaWYgdGhlcmUgaXMgbm8gSTxlcG9jaD4gIgorI3wgInRoZW4gY29sb25zIGFyZSBub3QgYWxsb3dlZC4iCittc2dpZCAiIgorIlRoZSBJPHVwc3RyZWFtLXZlcnNpb24+IG1heSBjb250YWluIG9ubHkgYWxwaGFudW1lcmljcyAoXCJBLVphLXowLTlcIikgYW5kICIKKyJ0aGUgY2hhcmFjdGVycyBCPC4+IEI8Kz4gQjwtPiBCPDo+IEI8fj4gKGZ1bGwgc3RvcCwgcGx1cywgaHlwaGVuLCBjb2xvbiwgIgorInRpbGRlKSBhbmQgc2hvdWxkIHN0YXJ0IHdpdGggYSBkaWdpdC4gIElmIHRoZXJlIGlzIG5vIEk8ZGViaWFuLXJldmlzaW9uPiAiCisidGhlbiBoeXBoZW5zIGFyZSBub3QgYWxsb3dlZDsgaWYgdGhlcmUgaXMgbm8gSTxlcG9jaD4gdGhlbiBjb2xvbnMgYXJlIG5vdCAiCisiYWxsb3dlZC4iCittc2dzdHIgIiIKKyJJPHdlcnNqYV91cHN0cmVhbT4gbW/FvGUgemF3aWVyYcSHIGplZHluaWUgem5ha2kgYWxmYW51bWVyeWN6bmUgKFwiQS1aYS0iCisiejAtOVwiKSBvcmF6IHpuYWtpIEI8Lj4gQjwrPiBCPC0+IEI8Oj4gQjx+PiAoa3JvcGvEmSwgcGx1cywgbXnFm2xuaWssICIKKyJkd3Vrcm9wZWssIHR5bGTEmSkgaSBwb3dpbm5hIHphY3p5bmHEhyBzacSZIG9kIGN5ZnJ5LiBKZcWbbGkgbmllIGplc3QgdcW8eXdhbmEgIgorIkk8cmV3aXpqYV9kZWJpYW5hPiwgd3RlZHkgbmllIHPEhSBkb3p3b2xvbmUgbXnFm2xuaWtpOyBqZcWbbGkgemHFmyBuaWUgamVzdCAiCisidcW8eXdhbmEgSTxlcG9rYT4sIHd0ZWR5IG5pZSBzxIUgZG96d29sb25lIGR3dWtyb3BraS4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItdmVyc2lvbi41OjQ4CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkk8ZGViaWFuX3JldmlzaW9uPiIKK21zZ2lkICJJPGRlYmlhbi1yZXZpc2lvbj4iCittc2dzdHIgIkk8cmV3aXpqYV9kZWJpYW5hPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNTo1NworIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiVGhpcyBwYXJ0IG9mIHRoZSB2ZXJzaW9uIG51bWJlciBzcGVjaWZpZXMgdGhlIHZlcnNpb24gb2YgdGhlIERlYmlhbiAiCisjfCAicGFja2FnZSBiYXNlZCBvbiB0aGUgdXBzdHJlYW0gdmVyc2lvbi4gIEl0IG1heSBjb250YWluIG9ubHkgYWxwaGFudW1lcmljcyAiCisjfCAiYW5kIHRoZSBjaGFyYWN0ZXJzIEI8Kz4gQjwuPiBCPH4+IChwbHVzLCBmdWxsIHN0b3AsIHRpbGRlKSBhbmQgaXMgIgorI3wgImNvbXBhcmVkIGluIHRoZSBzYW1lIHdheSBhcyB0aGUgSTx1cHN0cmVhbV92ZXJzaW9uPiBpcy4iCittc2dpZCAiIgorIlRoaXMgcGFydCBvZiB0aGUgdmVyc2lvbiBudW1iZXIgc3BlY2lmaWVzIHRoZSB2ZXJzaW9uIG9mIHRoZSBEZWJpYW4gcGFja2FnZSAiCisiYmFzZWQgb24gdGhlIHVwc3RyZWFtIHZlcnNpb24uICBJdCBtYXkgY29udGFpbiBvbmx5IGFscGhhbnVtZXJpY3MgYW5kIHRoZSAiCisiY2hhcmFjdGVycyBCPCs+IEI8Lj4gQjx+PiAocGx1cywgZnVsbCBzdG9wLCB0aWxkZSkgYW5kIGlzIGNvbXBhcmVkIGluIHRoZSAiCisic2FtZSB3YXkgYXMgdGhlIEk8dXBzdHJlYW0tdmVyc2lvbj4gaXMuIgorbXNnc3RyICIiCisiVGEgY3rEmcWbxIcgbnVtZXJ1IHdlcnNqaSBva3JlxZtsYSB3ZXJzasSZIHBha2lldHUgRGViaWFuYSBiYXp1asSFY2VnbyBuYSB0ZWogIgorInNhbWVqIHdlcnNqaSB1cHN0cmVhbS4gTW/FvGUgemF3aWVyYcSHIGplZHluaWUgem5ha2kgYWxmYW51bWVyeWN6bmUgb3JheiB6bmFraSAiCisiQjwrPiBCPC4+IChwbHVzLCBrcm9wa8SZLCB0eWxkxJkpIGkgamVzdCBwb3LDs3dueXdhbmEgdyB0ZW4gc2FtIHNwb3PDs2IgY28gIgorIkk8d2Vyc2phX3Vwc3RyZWFtPi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6NjQKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIkl0IGlzIG9wdGlvbmFsOyBpZiBpdCBpc24ndCBwcmVzZW50IHRoZW4gdGhlIEk8dXBzdHJlYW1fdmVyc2lvbj4gbWF5IG5vdCAiCisjfCAiY29udGFpbiBhIGh5cGhlbi4gIFRoaXMgZm9ybWF0IHJlcHJlc2VudHMgdGhlIGNhc2Ugd2hlcmUgYSBwaWVjZSBvZiAiCisjfCAic29mdHdhcmUgd2FzIHdyaXR0ZW4gc3BlY2lmaWNhbGx5IHRvIGJlIHR1cm5lZCBpbnRvIGEgRGViaWFuIHBhY2thZ2UsIGFuZCAiCisjfCAic28gdGhlcmUgaXMgb25seSBvbmUgXCJkZWJpYW5pc2F0aW9uXCIgb2YgaXQgYW5kIHRoZXJlZm9yZSBubyByZXZpc2lvbiAiCisjfCAiaW5kaWNhdGlvbiBpcyByZXF1aXJlZC4iCittc2dpZCAiIgorIkl0IGlzIG9wdGlvbmFsOyBpZiBpdCBpc24ndCBwcmVzZW50IHRoZW4gdGhlIEk8dXBzdHJlYW0tdmVyc2lvbj4gbWF5IG5vdCAiCisiY29udGFpbiBhIGh5cGhlbi4gIFRoaXMgZm9ybWF0IHJlcHJlc2VudHMgdGhlIGNhc2Ugd2hlcmUgYSBwaWVjZSBvZiBzb2Z0d2FyZSAiCisid2FzIHdyaXR0ZW4gc3BlY2lmaWNhbGx5IHRvIGJlIHR1cm5lZCBpbnRvIGEgRGViaWFuIHBhY2thZ2UsIGFuZCBzbyB0aGVyZSBpcyAiCisib25seSBvbmUgXCJkZWJpYW5pc2F0aW9uXCIgb2YgaXQgYW5kIHRoZXJlZm9yZSBubyByZXZpc2lvbiBpbmRpY2F0aW9uIGlzICIKKyJyZXF1aXJlZC4iCittc2dzdHIgIiIKKyJKZXN0IHRvIGN6xJnFm8SHIG9wY2pvbmFsbmEuIEplxZtsaSBuaWUgamVzdCB1xbx5d2FuYSwgd3RlZHkgSTx3ZXJzamFfdXBzdHJlYW0+ICIKKyJuaWUgbW/FvGUgemF3aWVyYcSHIGR3dWtyb3BrYS4gVGFraSBmb3JtYXQgb2Rwb3dpYWRhIHByenlwYWRrb3dpLCBnZHppZSAiCisib3Byb2dyYW1vd2FuaWUgYnnFgm8gdHdvcnpvbmUgeiBtecWbbMSFIG8gemFtaWFuaWUgZ28gdyBwYWtpZXQgRGViaWFuYSwgd2nEmWMgIgorImplc3QgdHlsa28gamVkbmEgamVnbyBcImRlYmlhbml6YWNqYVwiIGkgZGxhdGVnbyB3c2thenl3YW5pZSByZXdpemppIG5pZSAiCisiamVzdCBwb3RyemVibmUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjY4CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJJdCBpcyBjb252ZW50aW9uYWwgdG8gcmVzdGFydCB0aGUgSTxkZWJpYW5fcmV2aXNpb24+IGF0ICcxJyBlYWNoIHRpbWUgIgorI3wgInRpbWUgdGhlIEk8dXBzdHJlYW1fdmVyc2lvbj4gaXMgaW5jcmVhc2VkLiIKK21zZ2lkICIiCisiSXQgaXMgY29udmVudGlvbmFsIHRvIHJlc3RhcnQgdGhlIEk8ZGViaWFuLXJldmlzaW9uPiBhdCAnMScgZWFjaCB0aW1lIHRpbWUgIgorInRoZSBJPHVwc3RyZWFtLXZlcnNpb24+IGlzIGluY3JlYXNlZC4iCittc2dzdHIgIiIKKyJQb3dzemVjaG5pZSBwcnp5asSZdGUgamVzdCByb3pwb2N6eW5hbmllIEk8cmV3aXpqaV9kZWJpYW5hPiBvZCAxIHphIGthxbxkeW0gIgorInJhemVtLCBnZHkgSTx3ZXJzamFfdXBzdHJlYW0+IHNpxJkgendpxJlrc3phLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNTo3NgorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiRHBrZyB3aWxsIGJyZWFrIHRoZSB2ZXJzaW9uIG51bWJlciBhcGFydCBhdCB0aGUgbGFzdCBoeXBoZW4gaW4gdGhlIHN0cmluZyAiCisjfCAiKGlmIHRoZXJlIGlzIG9uZSkgdG8gZGV0ZXJtaW5lIHRoZSBJPHVwc3RyZWFtX3ZlcnNpb24+IGFuZCAiCisjfCAiSTxkZWJpYW5fcmV2aXNpb24+LiAgVGhlIGFic2VuY2Ugb2YgYSBJPGRlYmlhbl9yZXZpc2lvbj4gY29tcGFyZXMgZWFybGllciAiCisjfCAidGhhbiB0aGUgcHJlc2VuY2Ugb2Ygb25lIChidXQgbm90ZSB0aGF0IHRoZSBJPGRlYmlhbl9yZXZpc2lvbj4gaXMgdGhlICIKKyN8ICJsZWFzdCBzaWduaWZpY2FudCBwYXJ0IG9mIHRoZSB2ZXJzaW9uIG51bWJlcikuIgorbXNnaWQgIiIKKyJEcGtnIHdpbGwgYnJlYWsgdGhlIHZlcnNpb24gbnVtYmVyIGFwYXJ0IGF0IHRoZSBsYXN0IGh5cGhlbiBpbiB0aGUgc3RyaW5nICIKKyIoaWYgdGhlcmUgaXMgb25lKSB0byBkZXRlcm1pbmUgdGhlIEk8dXBzdHJlYW0tdmVyc2lvbj4gYW5kIEk8ZGViaWFuLSIKKyJyZXZpc2lvbj4uIFRoZSBhYnNlbmNlIG9mIGEgSTxkZWJpYW4tcmV2aXNpb24+IGNvbXBhcmVzIGVhcmxpZXIgdGhhbiB0aGUgIgorInByZXNlbmNlIG9mIG9uZSAoYnV0IG5vdGUgdGhhdCB0aGUgSTxkZWJpYW4tcmV2aXNpb24+IGlzIHRoZSBsZWFzdCAiCisic2lnbmlmaWNhbnQgcGFydCBvZiB0aGUgdmVyc2lvbiBudW1iZXIpLiIKK21zZ3N0ciAiIgorIkRwa2cgZHppZWxpIG51bWVyIHdlcnNqaSBuYSBjesSZxZtjaSB3emdsxJlkZW0gb3N0YXRuaWVnbyBtecWbbG5pa2EgdyBuYXBpc2llICIKKyIoamXFm2xpIHRha2kgamVzdCksIGFieSBva3JlxZtsacSHIEk8d2Vyc2rEmSB1cHN0cmVhbT4gb3JheiBJPHJld2l6asSZX2RlYmlhbmE+LiAiCisiUHJ6eSBwb3LDs3dueXdhbml1IGJyYWt1asSFY2EgSTxyZXdpemphX2RlYmlhbmE+IHBvcHJ6ZWR6YSBrYcW8ZGUgamVqICIKKyJ3eXN0xIVwaWVuaWUgKGplZG5hayB3YXJ0byBwYW1pxJl0YcSHLCDFvGUgamVzdCB0byBuYWptbmllaiB6bmFjesSFY2EgY3rEmcWbxIcgIgorInd1bWVydSB3ZXJzamkpLiIKKworIy4gdHlwZTogU1MKKyM6IGRlYi12ZXJzaW9uLjU6NzYKKyMsIG5vLXdyYXAKK21zZ2lkICJTb3J0aW5nIEFsZ29yaXRobSIKK21zZ3N0ciAiQWxnb3J5dG0gc29ydG93YW5pYSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNTo4MAorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiVGhlIEk8dXBzdHJlYW1fdmVyc2lvbj4gYW5kIEk8ZGViaWFuX3JldmlzaW9uPiBwYXJ0cyBhcmUgY29tcGFyZWQgYnkgdGhlICIKKyN8ICJwYWNrYWdlIG1hbmFnZW1lbnQgc3lzdGVtIHVzaW5nIHRoZSBzYW1lIGFsZ29yaXRobToiCittc2dpZCAiIgorIlRoZSBJPHVwc3RyZWFtLXZlcnNpb24+IGFuZCBJPGRlYmlhbi1yZXZpc2lvbj4gcGFydHMgYXJlIGNvbXBhcmVkIGJ5IHRoZSAiCisicGFja2FnZSBtYW5hZ2VtZW50IHN5c3RlbSB1c2luZyB0aGUgc2FtZSBhbGdvcml0aG06IgorbXNnc3RyICIiCisiU3lzdGVtIHphcnrEhWR6YW5pYSBwYWtpZXRhbWkgcG9yw7N3bnVqZSBJPHdlcnNqxJlfdXBzdHJlYW0+IG9yYXogIgorIkk8cmV3aXpqxJlfZGViaWFuYT4gdcW8eXdhasSFYyB0ZWdvIHNhbWVnbyBhbGdvcnl0bXU6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjgyCittc2dpZCAiVGhlIHN0cmluZ3MgYXJlIGNvbXBhcmVkIGZyb20gbGVmdCB0byByaWdodC4iCittc2dzdHIgIk5hcGlzeSBzxIUgcG9yw7N3bnl3YW5lIG9kIGxld2VqIGRvIHByYXdlai4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6OTIKK21zZ2lkICIiCisiRmlyc3QgdGhlIGluaXRpYWwgcGFydCBvZiBlYWNoIHN0cmluZyBjb25zaXN0aW5nIGVudGlyZWx5IG9mIG5vbi1kaWdpdCAiCisiY2hhcmFjdGVycyBpcyBkZXRlcm1pbmVkLiAgVGhlc2UgdHdvIHBhcnRzIChvbmUgb2Ygd2hpY2ggbWF5IGJlIGVtcHR5KSBhcmUgIgorImNvbXBhcmVkIGxleGljYWxseS4gIElmIGEgZGlmZmVyZW5jZSBpcyBmb3VuZCBpdCBpcyByZXR1cm5lZC4gIFRoZSBsZXhpY2FsICIKKyJjb21wYXJpc29uIGlzIGEgY29tcGFyaXNvbiBvZiBBU0NJSSB2YWx1ZXMgbW9kaWZpZWQgc28gdGhhdCBhbGwgdGhlIGxldHRlcnMgIgorInNvcnQgZWFybGllciB0aGFuIGFsbCB0aGUgbm9uLWxldHRlcnMgYW5kIHNvIHRoYXQgYSB0aWxkZSBzb3J0cyBiZWZvcmUgIgorImFueXRoaW5nLCBldmVuIHRoZSBlbmQgb2YgYSBwYXJ0LiAgRm9yIGV4YW1wbGUsIHRoZSBmb2xsb3dpbmcgcGFydHMgYXJlIGluICIKKyJzb3J0ZWQgb3JkZXI6ICd+ficsICd+fmEnLCAnficsIHRoZSBlbXB0eSBwYXJ0LCAnYScuIgorbXNnc3RyICIiCisiTmFqcGllcncgb2tyZcWbbGFuZSBzxIUgcG9jesSFdGtvd2UgY3rEmcWbY2kga2HFvGRlZ28gbmFwaXN1LCBza8WCYWRhasSFY2Ugc2nEmSAiCisid3nFgsSFY3puaWUgemUgem5ha8OzdyBuaWUgYsSZZMSFY3ljaCBjeWZyYW1pLiBUZSBkd2llIGN6xJnFm2NpICh6IGt0w7NyeWNoIGplZG5hICIKKyJtb8W8ZSBiecSHIHB1c3RhKSBzxIUgcG9yw7N3bnl3YW5lIGxla3N5a2FsbmllLiBKZcWbbGkgem9zdGFuaWUgem5hbGV6aW9uYSAiCisicsOzxbxuaWNhLCBqZXN0IG9uYSB6d3JhY2FuYS4gUG9yw7N3bmFuaWUgbGVrc3lrYWxuZSBqZXN0IHBvcsOzd25hbmllbSB3YXJ0b8WbY2kgIgorIkFTQ0lJIHptb2R5Zmlrb3dhbnljaCB0YWssIMW8ZSB3c3p5c3RraWUgbGl0ZXJ5IHBvcHJ6ZWR6YWrEhSB3c3p5c3RraWUgaW5uZSAiCisiem5ha2kgbmllIGLEmWTEhWNlIGxpdGVyYW1pLCBhIGRvZGF0a293byB0eWxkYSBwb3ByemVkemEgd3N6eXN0a28sIG5hd2V0ICIKKyJrb25pZWMgY3rEmcWbY2kuIFcgbmFzdMSZcHVqxIVjeW0gcHJ6eWvFgmFkemllIGN6xJnFm2NpIHd5c3TEmXB1asSFIHcga29sZWpub8WbY2kgIgorInBvc29ydG93YW5lajogXCJ+flwiLCBcIn5+YVwiLCBcIn5cIiwgY3rEmcWbxIcgcHVzdGEsIFwiYVwiLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNToxMDAKK21zZ2lkICIiCisiVGhlbiB0aGUgaW5pdGlhbCBwYXJ0IG9mIHRoZSByZW1haW5kZXIgb2YgZWFjaCBzdHJpbmcgd2hpY2ggY29uc2lzdHMgIgorImVudGlyZWx5IG9mIGRpZ2l0IGNoYXJhY3RlcnMgaXMgZGV0ZXJtaW5lZC4gIFRoZSBudW1lcmljYWwgdmFsdWVzIG9mIHRoZXNlICIKKyJ0d28gcGFydHMgYXJlIGNvbXBhcmVkLCBhbmQgYW55IGRpZmZlcmVuY2UgZm91bmQgaXMgcmV0dXJuZWQgYXMgdGhlIHJlc3VsdCAiCisib2YgdGhlIGNvbXBhcmlzb24uICBGb3IgdGhlc2UgcHVycG9zZXMgYW4gZW1wdHkgc3RyaW5nICh3aGljaCBjYW4gb25seSBvY2N1ciAiCisiYXQgdGhlIGVuZCBvZiBvbmUgb3IgYm90aCB2ZXJzaW9uIHN0cmluZ3MgYmVpbmcgY29tcGFyZWQpIGNvdW50cyBhcyB6ZXJvLiIKK21zZ3N0ciAiIgorIk5hc3TEmXBuaWUgb2tyZcWbbGFuZSBzxIUgcG9jesSFdGtpIHBvem9zdGHFgnljaCBjesSZxZtjaSB6IGthxbxkZWdvIG5hcGlzdSwgIgorInNrxYJhZGFqxIVjZSBzacSZIHd5xYLEhWN6bmllIHogc2FteWNoIGN5ZnIuIFdhcnRvxZtjaSBsaWN6Ym93ZSB0eWNoIGR3w7NjaCBjesSZxZtjaSAiCisic8SFIHBvcsOzd255d2FuZSBpIGplxZtsaSB6b3N0YW5pZSB6bmFsZXppb25hIHLDs8W8bmljYSwgamVzdCBvbmEgendyYWNhbmEgamFrbyAiCisid3luaWsgcG9yw7N3bmFuaWEuIFB1c3R5IGNpxIVnIHpuYWvDs3cgKGt0w7NyeSBtb8W8ZSBzacSZIHBvamF3acSHIGplZHluaWUgbmEga2/FhGN1ICIKKyJqZWRuZWdvIGx1YiBvYnUgcG9yw7N3bnl3YW55Y2ggbmFwaXPDs3cpIGplc3QgcHJ6eSB0eW0gbGljem9ueSBqYWtvIHplcm8uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjEwNAorbXNnaWQgIiIKKyJUaGVzZSB0d28gc3RlcHMgKGNvbXBhcmluZyBhbmQgcmVtb3ZpbmcgaW5pdGlhbCBub24tZGlnaXQgc3RyaW5ncyBhbmQgIgorImluaXRpYWwgZGlnaXQgc3RyaW5ncykgYXJlIHJlcGVhdGVkIHVudGlsIGEgZGlmZmVyZW5jZSBpcyBmb3VuZCBvciBib3RoICIKKyJzdHJpbmdzIGFyZSBleGhhdXN0ZWQuIgorbXNnc3RyICIiCisiVGUgZHdhIGtyb2tpIChwb3LDs3dueXdhbmllIGkgdXN1d2FuaWUgcG9jesSFdGtvd3ljaCBuYXBpc8OzdyBiZXogY3lmciBvcmF6ICIKKyJwb2N6xIV0a293eWNoIG5hcGlzw7N3IHogc2FteW1pIGN5ZnJhbWkpIHPEhSBwb3d0YXJ6YW5lLCBhxbwgem9zdGFuaWUgem5hbGV6aW9uYSAiCisicsOzxbxuaWNhIGx1YiBvYmEgY2nEhWdpIHpvc3RhbsSFIHd5Y3plcnBhbmUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjExMgorbXNnaWQgIiIKKyJOb3RlIHRoYXQgdGhlIHB1cnBvc2Ugb2YgZXBvY2hzIGlzIHRvIGFsbG93IHVzIHRvIGxlYXZlIGJlaGluZCBtaXN0YWtlcyBpbiAiCisidmVyc2lvbiBudW1iZXJpbmcsIGFuZCB0byBjb3BlIHdpdGggc2l0dWF0aW9ucyB3aGVyZSB0aGUgdmVyc2lvbiBudW1iZXJpbmcgIgorInNjaGVtZSBjaGFuZ2VzLiAgSXQgaXMgQjxub3Q+IGludGVuZGVkIHRvIGNvcGUgd2l0aCB2ZXJzaW9uIG51bWJlcnMgIgorImNvbnRhaW5pbmcgc3RyaW5ncyBvZiBsZXR0ZXJzIHdoaWNoIHRoZSBwYWNrYWdlIG1hbmFnZW1lbnQgc3lzdGVtIGNhbm5vdCAiCisiaW50ZXJwcmV0IChzdWNoIGFzICdBTFBIQScgb3IgJ3ByZS0nKSwgb3Igd2l0aCBzaWxseSBvcmRlcmluZ3MuIgorbXNnc3RyICIiCisiTmFsZcW8eSB6YXV3YcW8ecSHLCDFvGUgY2VsZW0gZXBvayBqZXN0IHVtb8W8bGl3aWVuaWUgcG96YnljaWEgc2nEmSBwb215xYJlayB3ICIKKyJudW1lcmFjaCB3ZXJzamkgcGFraWV0w7N3LCBqYWsgcsOzd25pZcW8IHBvcmFkemVuaWUgc29iaWUgemUgem1pYW7EhSBzY2hlbWF0dSAiCisibnVtZXJvd2FuaWEgd2Vyc2ppLiBCPE5pZT4gc8SFIG9uZSBuYXRvbWlhc3QgcHJ6ZXpuYWN6b25lIGRvIHJhZHplbmlhIHNvYmllIHogIgorIm51bWVyYW1pIHdlcnNqaSB6YXdpZXJhasSFY3ljaCBjacSFZ2kgem5ha8Ozdywga3TDs3J5Y2ggc3lzdGVtIHphcnrEhWR6YW5pYSAiCisicGFraWV0YW1pIG5pZSBtb8W8ZSB6aW50ZXJwcmV0b3dhxIcgKGphayBucC4gXCJBTFBIQVwiIGx1YiBcInByZS1cIiksIGN6eSB6ICIKKyJpbm7EhSBkeml3bsSFIGtvbGVqbm/Fm2NpxIUuIgorCisjLiB0eXBlOiBTSAorIzogZGViLXZlcnNpb24uNToxMTIgZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjEwOQorIywgbm8td3JhcAorbXNnaWQgIkNBVkVBVFMiCittc2dzdHIgIk9TVFJaRcW7RU5JQSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNToxMTYKK21zZ2lkICIiCisiVGhlIHRpbGRlIGNoYXJhY3RlciBhbmQgaXRzIHNwZWNpYWwgc29ydGluZyBwcm9wZXJ0aWVzIHdlcmUgaW50cm9kdWNlZCBpbiAiCisiZHBrZywgdmVyc2lvbiAxLjEwIGFuZCBzb21lIHBhcnRzIG9mIGRwa2ctZGV2IG9ubHkgZ2FpbmVkIHN1cHBvcnQgZm9yIGl0ICIKKyJsYXRlciBpbiB0aGUgMS4xMC54IHNlcmllcy4iCittc2dzdHIgIiIKKyJabmFrIHR5bGR5IG9yYXogamVnbyBzcGVjeWZpY3pueSBzcG9zw7NiIHNvcnRvd2FuaWEgem9zdGHFgnkgd3Byb3dhZHpvbmUgdyAiCisid2Vyc2ppIDEuMTAgZHBrZywgemHFmyBuaWVrdMOzcmUgaW5uZSBlbGVtZW50eSBkcGtnLWRldiB1enlza2HFgnkgb2Rwb3dpZWRuaWUgIgorIndzcGFyY2llIGRvcGllcm8gcMOzxbpuaWVqIHcgc2VyaWkgMS4xMC54LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNToxMjAKK21zZ2lkICJCPGRlYi1jb250cm9sPig1KSwgQjxkZWI+KDUpLCBCPGRwa2c+KDEpIgorbXNnc3RyICJCPGRlYi1jb250cm9sPig1KSwgQjxkZWI+KDUpLCBCPGRwa2c+KDEpIgorCisjLiB0eXBlOiBTSAorIzogZGViLXZlcnNpb24uNToxMjAgZHBrZy4xOjc4MyBkcGtnLWJ1aWxkcGFja2FnZS4xOjI1NyBkcGtnLWRpc3RhZGRmaWxlLjE6NDcKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjE0OCBkcGtnLWdlbmNvbnRyb2wuMToxNDIgZHBrZy1nZW5zeW1ib2xzLjE6NDYwCisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjEyOCBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTIzCisjOiBkcGtnLXNobGliZGVwcy4xOjMyOSBkcGtnLXNvdXJjZS4xOjczMCBkc2VsZWN0LjE6NDUxCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjMyMyB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDk0CisjLCBuby13cmFwCittc2dpZCAiQVVUSE9SUyIKK21zZ3N0ciAiQVVUT1JaWSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNToxMjIKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMTk5NiwxOTk3LDE5OTggSWFuIEphY2tzb24gYW5kIENocmlzdGlhbiBTY2h3YXJ6IgorbXNnc3RyICJDb3B5cmlnaHQgXFwoY28gMTk5NiwxOTk3LDE5OTggSWFuIEphY2tzb24gaSBDaHJpc3RpYW4gU2Nod2FyeiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNToxMjQgZHBrZy1idWlsZHBhY2thZ2UuMToyNjMKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAwNyBGcmFuayBMaWNodGVuaGVsZCIKK21zZ3N0ciAiQ29weXJpZ2h0IFxcKGNvIDIwMDcgRnJhbmsgTGljaHRlbmhlbGQiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6MTI2IGRlYi1zdWJzdHZhcnMuNToxNjcgZHBrZy1idWlsZGZsYWdzLjE6MjczCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjI2NyBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6NDQgZHBrZy1kaXN0YWRkZmlsZS4xOjUzCisjOiBkcGtnLWRlYi4xOjI2OSBkcGtnLWRpdmVydC44OjEzOSBkcGtnLWdlbmNoYW5nZXMuMToxNTQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjE1MCBkcGtnLWdlbnN5bWJvbHMuMTo0NjQgZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxMzkKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6NzEgZHBrZy1uYW1lLjE6MTA4IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxMzEKKyM6IGRwa2ctcXVlcnkuMToyMTkgZHBrZy1zaGxpYmRlcHMuMTozMzkgZHBrZy1zb3VyY2UuMTo3MzggZHBrZy1zcGxpdC4xOjIyNworIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo5MSBkcGtnLXZlbmRvci4xOjUzIHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo1MDEKK21zZ2lkICIiCisiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbmNlIHZlcnNpb24gMiBvciBsYXRlciAiCisiZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gV0FSUkFOVFkuIgorbXNnc3RyICIiCisiTmluaWVqc3p5IHByb2dyYW0gamVzdCBvcHJvZ3JhbW93YW5pZW0gd29sbnltLCBzcHJhd2TFuiBQb3dzemVjaG7EhSBMaWNlbmNqxJkgIgorIlB1YmxpY3puxIUgR05VIHcgd2Vyc2ppIGRydWdpZWogbHViIHDDs8W6bmllanN6ZWosIGJ5IGRvd2llZHppZcSHIHNpxJkgbyAiCisid2FydW5rYWNoIGR5c3RyeWJ1Y2ppLiBCcmFrIEpBS0lFSktPTFdJRUsgZ3dhcmFuY2ppLiIKKworIy4gdHlwZTogVEgKKyM6IGRlYi1vbGQuNToxCisjLCBuby13cmFwCittc2dpZCAiZGViLW9sZCIKK21zZ3N0ciAiZGViLW9sZCIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW9sZC41OjQKK21zZ2lkICJkZWItb2xkIC0gb2xkIHN0eWxlIERlYmlhbiBiaW5hcnkgcGFja2FnZSBmb3JtYXQiCittc2dzdHIgImRlYi1vbGQgLSBzdGFyeSBmb3JtYXQgYmluYXJuZWdvIHBha2lldHUgRGViaWFuYSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW9sZC41OjE3Cittc2dpZCAiIgorIlRoZSBCPC5kZWI+IGZvcm1hdCBpcyB0aGUgRGViaWFuIGJpbmFyeSBwYWNrYWdlIGZpbGUgZm9ybWF0LiBUaGlzIG1hbnVhbCAiCisicGFnZSBkZXNjcmliZXMgdGhlIEI8b2xkPiBmb3JtYXQsIHVzZWQgYmVmb3JlIERlYmlhbiAwLjkzLiBQbGVhc2Ugc2VlIEI8ZGViPiIKKyIoNSkgIGZvciBkZXRhaWxzIG9mIHRoZSBuZXcgZm9ybWF0LiIKK21zZ3N0ciAiIgorIkZvcm1hdCBCPC5kZWI+IGplc3QgZm9ybWF0ZW0gYmluYXJuZWdvIHBha2lldHUgRGViaWFuYS4gVGEgc3Ryb25hICIKKyJwb2RyxJljem5pa2Egb3Bpc3VqZSBCPHN0YXJ5PiBmb3JtYXQsIHXFvHl3YW55IHByemVkIHdlcnNqxIUgMC45MyBEZWJpYW5hLiAiCisiU3pjemVnw7PFgnkgbm93ZWdvIGZvcm1hdHUgbW/FvG5hIHpuYWxlxbrEhyB3IEI8ZGViPig1KS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vbGQuNToyMQorbXNnaWQgIiIKKyJUaGUgZmlsZSBpcyB0d28gbGluZXMgb2YgZm9ybWF0IGluZm9ybWF0aW9uIGFzIEFTQ0lJIHRleHQsIGZvbGxvd2VkIGJ5IHR3byAiCisiY29uY2F0ZW5hdGVkIGd6aXBwZWQgdXN0YXIgZmlsZXMuIgorbXNnc3RyICIiCisiUGxpayBza8WCYWRhIHNpxJkgeiBkd3UgbGluaWkgaW5mb3JtYWNqaSBvIGZvcm1hY2llIGpha28gdGVrc3QgQVNDSUksIHBvICIKKyJrdMOzcnljaCBuYXN0xJlwdWrEhSBkd2EgcG/FgsSFY3pvbmUgcGxpa2kgdXN0YXIgc3Bha293YW5lIGd6aXBlbS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vbGQuNToyNQorbXNnaWQgIiIKKyJUaGUgZmlyc3QgbGluZSBpcyB0aGUgZm9ybWF0IHZlcnNpb24gbnVtYmVyIHBhZGRlZCB0byA4IGRpZ2l0cywgYW5kIGlzICIKKyJCPDAuOTM5MDAwPiBmb3IgYWxsIG9sZC1mb3JtYXQgYXJjaGl2ZXMuIgorbXNnc3RyICIiCisiUGllcndzesSFIGxpbmnEhSBqZXN0IG51bWVyIHdlcnNqaSBmb3JtYXR1LCB3eXLDs3duYW55IGRvIDggY3lmci4gRGxhIHN0YXJlZ28gIgorImZvcm1hdHUgbnVtZXIgdGVuIHd5bm9zaSBCPDAuOTM5MDAwPi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vbGQuNToyOAorbXNnaWQgIiIKKyJUaGUgc2Vjb25kIGxpbmUgaXMgYSBkZWNpbWFsIHN0cmluZyAod2l0aG91dCBsZWFkaW5nIHplcm9lcykgZ2l2aW5nIHRoZSAiCisibGVuZ3RoIG9mIHRoZSBmaXJzdCBnemlwcGVkIHRhcmZpbGUuIgorbXNnc3RyICIiCisiVyBkcnVnaWVqIGxpbmlpIGplc3QgemFwaXNhbmEgbGljemJhIGR6aWVzacSZdG5hIChiZXogcG9jesSFdGtvd3ljaCB6ZXIpICIKKyJwb2RhasSFY2UgZMWCdWdvxZvEhyBwaWVyd3N6ZWdvIHpnemlwb3dhbmVnbyBwbGlrdSB0YXIuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb2xkLjU6MzAKK21zZ2lkICJFYWNoIG9mIHRoZXNlIGxpbmVzIGlzIHRlcm1pbmF0ZWQgd2l0aCBhIHNpbmdsZSBuZXdsaW5lIGNoYXJhY3Rlci4iCittc2dzdHIgIkthxbxkYSB6IHR5Y2ggbGluaWkgamVzdCB6YWtvxYRjem9uYSBwb2plZHluY3p5bSB6bmFraWVtIG5vd2VqIGxpbmlpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW9sZC41OjM1Cittc2dpZCAiIgorIlRoZSBmaXJzdCB0YXJmaWxlIGNvbnRhaW5zIHRoZSBjb250cm9sIGluZm9ybWF0aW9uLCBhcyBhIHNlcmllcyBvZiBvcmRpbmFyeSAiCisiZmlsZXMuIFRoZSBmaWxlIEI8Y29udHJvbD4gbXVzdCBiZSBwcmVzZW50LCBhcyBpdCBjb250YWlucyB0aGUgY29yZSBjb250cm9sICIKKyJpbmZvcm1hdGlvbi4iCittc2dzdHIgIiIKKyJQaWVyd3N6eSBwbGlrIHRhciB6YXdpZXJhIGluZm9ybWFjamUga29udHJvbG5lLCBqYWtvIHNlcmnEmSB6d3ljemFqbnljaCAiCisicGxpa8Ozdy4gWmF3c3plIG11c2kgYnnEhyBvYmVjbnkgcGxpayBCPGNvbnRyb2w+IHphd2llcmFqxIVjeSBnxYLDs3duZSBpbmZvcm1hY2plICIKKyJrb250cm9sbmUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb2xkLjU6NDYKK21zZ2lkICIiCisiSW4gc29tZSB2ZXJ5IG9sZCBhcmNoaXZlcywgdGhlIGZpbGVzIGluIHRoZSBjb250cm9sIHRhcmZpbGUgbWF5IG9wdGlvbmFsbHkgIgorImJlIGluIGEgQjxERUJJQU4+IHN1YmRpcmVjdG9yeS4gSW4gdGhhdCBjYXNlLCB0aGUgQjxERUJJQU4+IHN1YmRpcmVjdG9yeSAiCisid2lsbCBiZSBpbiB0aGUgY29udHJvbCB0YXJmaWxlIHRvbywgYW5kIHRoZSBjb250cm9sIHRhcmZpbGUgd2lsbCBoYXZlIG9ubHkgIgorImZpbGVzIGluIHRoYXQgZGlyZWN0b3J5LiBPcHRpb25hbGx5IHRoZSBjb250cm9sIHRhcmZpbGUgbWF5IGNvbnRhaW4gYW4gZW50cnkgIgorImZvciBgQjwuPicsIHRoYXQgaXMsIHRoZSBjdXJyZW50IGRpcmVjdG9yeS4iCittc2dzdHIgIiIKKyJXIGJhcmR6byBzdGFyeWNoIGFyY2hpd2FjaCwgcGxpa2kgdyBhcmNoaXd1bSBrb250cm9sbnltIG1vZ8WCeSBiecSHICIKKyJ1bWllc3pjem9uZSB3IHBvZGthdGFsb2d1IEI8REVCSUFOPi4gVyB0YWtpbSB3eXBhZGt1IGthdGFsb2cgQjxERUJJQU4+ICIKKyJixJlkemllIHd5c3TEmXBvd2HFgiByw7N3bmllxbwgdyBhcmNoaXd1bSBrb250cm9sbnltLCBrdMOzcmUgYsSZZHppZSB6YXdpZXJhxYJvICIKKyJwbGlraSB0eWxrbyB3IHR5bSBrYXRhbG9ndS4gT3Bjam9uYWxuaWUgYXJjaGl3dW0ga29udHJvbG5lIG1vxbxlIHphd2llcmHEhyAiCisicsOzd25pZcW8IHdwaXMgZGxhIFwiQjwuPlwiLCBjenlsaSBrYXRhbG9ndSBiaWXFvMSFY2Vnby4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vbGQuNTo1MAorbXNnaWQgIiIKKyJUaGUgc2Vjb25kIGd6aXBwZWQgdGFyZmlsZSBpcyB0aGUgZmlsZXN5c3RlbSBhcmNoaXZlLCBjb250YWluaW5nIHBhdGhuYW1lcyAiCisicmVsYXRpdmUgdG8gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoZSBzeXN0ZW0gdG8gYmUgaW5zdGFsbGVkIG9uLiBUaGUgIgorInBhdGhuYW1lcyBkbyBub3QgaGF2ZSBsZWFkaW5nIHNsYXNoZXMuIgorbXNnc3RyICIiCisiRHJ1Z2ltIHNrb21wcmVzb3dhbnltIGFyY2hpd3VtIHRhciBqZXN0IGFyY2hpd3VtIHN5c3RlbXUgcGxpa8OzdywgemF3aWVyYWrEhWNlICIKKyJuYXp3eSDFm2NpZcW8ZWsgcmVsYXR5d25lIGRvIGfFgsOzd25lZ28ga2F0YWxvZ3Ugc3lzdGVtdSwgbmEga3TDs3J5bSBixJlkxIUgIgorImluc3RhbG93YW5lLiBOYXp3eSB0ZSBuaWUgemFjenluYWrEhSBzacSZIG9kIHVrb8Wbbmlrw7N3LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW9sZC41OjU0Cittc2dpZCAiQjxkZWI+KDUpLCBCPGRwa2ctZGViPigxKSwgQjxkZWItY29udHJvbD4oNSkuIgorbXNnc3RyICJCPGRlYj4oNSksIEI8ZHBrZy1kZWI+KDEpLCBCPGRlYi1jb250cm9sPig1KS4iCisKKyMuIHR5cGU6IFRICisjOiBkZWItb3ZlcnJpZGUuNToxNQorIywgbm8td3JhcAorbXNnaWQgImRlYi1vdmVycmlkZSIKK21zZ3N0ciAiZGViLW92ZXJyaWRlIgorCisjLiB0eXBlOiBUSAorIzogZGViLW92ZXJyaWRlLjU6MTUgZGViLWV4dHJhLW92ZXJyaWRlLjU6MSBkZWItc2hsaWJzLjU6MTYgZGViLXN1YnN0dmFycy41OjIKKyM6IGRlYi1zeW1ib2xzLjU6MiBkZWItdHJpZ2dlcnMuNToxIGRwa2ctYXJjaGl0ZWN0dXJlLjE6MQorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxIGRwa2ctY2hlY2tidWlsZGRlcHMuMToxIGRwa2ctZGlzdGFkZGZpbGUuMToxCisjOiBkcGtnLWRpdmVydC44OjEgZHBrZy1nZW5jaGFuZ2VzLjE6MSBkcGtnLWdlbmNvbnRyb2wuMToxIGRwa2ctZ2Vuc3ltYm9scy4xOjIKKyM6IGRwa2ctbmFtZS4xOjYgZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjEgZHBrZy1zY2FucGFja2FnZXMuMToxNQorIzogZHBrZy1zY2Fuc291cmNlcy4xOjEgZHBrZy1zaGxpYmRlcHMuMToxIGRwa2ctc291cmNlLjE6MiBkcGtnLXNwbGl0LjE6MgorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODoxIHN0YXJ0LXN0b3AtZGFlbW9uLjg6MSB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6OAorIywgbm8td3JhcAorbXNnaWQgImRwa2cgdXRpbGl0aWVzIgorbXNnc3RyICJwcm9ncmFteSBwb21vY25pY3plIGRwa2ciCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vdmVycmlkZS41OjE4Cittc2dpZCAiZGViLW92ZXJyaWRlIC0gRGViaWFuIGFyY2hpdmUgb3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiZGViLW92ZXJyaWRlIC0gcGxpayBuYWRwaXNhxYQgYXJjaGl3dW0gRGViaWFuYSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW92ZXJyaWRlLjU6MjEgZGViLWV4dHJhLW92ZXJyaWRlLjU6NworbXNnaWQgIm92ZXJyaWRlIgorbXNnc3RyICJvdmVycmlkZSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW92ZXJyaWRlLjU6MjcKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIldoaWxlIG1vc3QgaW5mb3JtYXRpb24gYWJvdXQgYSBwYWNrYWdlIGNhbiBiZSBmb3VuZCBpbiB0aGUgY29udHJvbCBmaWxlLCAiCisjfCAic29tZSBtdXN0IGJlIGZpbGxlZCBpbiBieSB0aGUgZGlzdHJpYnV0aW9uIGN6YXJzIHJhdGhlciB0aGFuIGJ5IHRoZSAiCisjfCAibWFpbnRhaW5lciwgYmVjYXVzZSB0aGV5IHJlbGF0ZSB0byB0aGUgYXJyYW5nZW1lbnQgb2YgZmlsZXMgZm9yIHJlbGVhc2UgIgorI3wgInJhdGhlciB0aGFuIHRoZSBhY3R1YWwgZGVwZW5kZW5jaWVzIGFuZCBkZXNjcmlwdGlvbiBvZiB0aGUgcGFja2FnZS4gIFRoaXMgIgorI3wgImluZm9ybWF0aW9uIGlzIGZvdW5kIGluIHRoZSBvdmVycmlkZSBmaWxlLiIKK21zZ2lkICIiCisiV2hpbGUgbW9zdCBpbmZvcm1hdGlvbiBhYm91dCBhIHBhY2thZ2UgY2FuIGJlIGZvdW5kIGluIHRoZSBjb250cm9sIGZpbGUsICIKKyJzb21lIGlzIG1hbmFnZWQgY2VudHJhbGx5IGJ5IHRoZSBkaXN0cmlidXRpb24gY3phcnMgcmF0aGVyIHRoYW4gYnkgdGhlICIKKyJtYWludGFpbmVyIGluIG9yZGVyIHRvIG9mZmVyIHNvbWUgZ2xvYmFsIGNvbnNpc3RlbmN5LiAgVGhpcyBpbmZvcm1hdGlvbiBpcyAiCisiZm91bmQgaW4gdGhlIG92ZXJyaWRlIGZpbGUuIgorbXNnc3RyICIiCisiQ2hvY2lhxbwgd2nEmWtzem/Fm8SHIGluZm9ybWFjamkgbyBwYWtpZWNpZSBtb8W8bmEgem5hbGXFusSHIHcgcGxpa3Uga29udHJvbG55bSwgdG8gIgorIm5pZWt0w7NyZSB6IG5pY2gsIHp3acSFemFuZSB6IHVtaWVqc2Nvd2llbmllbSBwbGlrw7N3IHcgZHlzdHJ5YnVjamkgYSBuaWUgeiAiCisiemFsZcW8bm/Fm2NpYW1pIGkgb3Bpc2VtIHBha2lldHUsIG11c3rEhSBiecSHIHd5cGXFgm5pb25lIHByemV6IGNhcsOzdyAiCisiZHlzdHJ5YnVjamksIGEgbmllIHByemV6IG9waWVrdW5hLiBEbyB0ZWdvIHPFgnXFvHkgcGxpayBuYWRwaXNhxYQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb3ZlcnJpZGUuNTozMQorbXNnaWQgIiIKKyJUaGUgb3ZlcnJpZGUgZmlsZSBoYXMgYSBzaW1wbGUgd2hpdGVzcGFjZS1kZWxpbWl0ZWQgZm9ybWF0LiBDb21tZW50cyBhcmUgIgorImFsbG93ZWQgKGRlbm90ZWQgd2l0aCBhIEI8Iz4pLiIKK21zZ3N0ciAiIgorIlBsaWsgbmFkcGlzYcWEIG1hIHByb3N0eSBmb3JtYXQgcMOzbCByb3pkemllbG9ueWNoIGJpYcWCeW1pIHpuYWthbWkgKHNwYWNqYW1pKS4gIgorIkRvendvbG9uZSBzxIUga29tZW50YXJ6ZSAoemFjenluYWrEhWNlIHNpxJkgb2QgQjwjPikuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb3ZlcnJpZGUuNTozNworbXNnaWQgIkk8cGFja2FnZT4gSTxwcmlvcml0eT4gSTxzZWN0aW9uPiBbSTxtYWludGFpbmVyaW5mbz5dIgorbXNnc3RyICJJPHBha2lldD4gSTxwcmlvcnl0ZXQ+IEk8c2VrY2phPiBbSTxpbmZvcm1hY2plLW8tb3BpZWt1bmllPl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vdmVycmlkZS41OjQyCittc2dpZCAiIgorIkk8cGFja2FnZT4gaXMgdGhlIG5hbWUgb2YgdGhlIHBhY2thZ2UuIEVudHJpZXMgaW4gdGhlIG92ZXJyaWRlIGZpbGUgZm9yICIKKyJwYWNrYWdlcyBub3QgZm91bmQgaW4gdGhlIHRyZWUgb2YgYmluYXJ5IHBhY2thZ2VzIGFyZSBpZ25vcmVkLiIKK21zZ3N0ciAiIgorIkk8cGFraWV0PiBqZXN0IG5henfEhSBwYWtpZXR1LiBJZ25vcm93YW5lIHPEhSB3cGlzeSB3IHBsaWt1IG5hZHBpc2HFhCBkb3R5Y3rEhWNlICIKKyJwYWtpZXTDs3cgbmllIHpuYWpkdWrEhWN5Y2ggc2nEmSB3IGRyemV3aWUgcGFraWV0w7N3IGJpbmFybnljaC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vdmVycmlkZS41OjQ4Cittc2dpZCAiIgorIkk8cHJpb3JpdHk+IGFuZCBJPHNlY3Rpb24+IGNvcnJlc3BvbmQgdG8gdGhlIHJlc3BlY3RpdmUgY29udHJvbCBmaWVsZHMgIgorImF2YWlsYWJsZSBpbiB0aGUgLmRlYi4gVGhlIGFsbG93ZWQgdmFsdWVzIGFyZSBsaXN0ZWQgaW4gdGhlIERlYmlhbiBwb2xpY3kuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vdmVycmlkZS41OjU2Cittc2dpZCAiIgorIkk8bWFpbnRhaW5lcmluZm8+LCBpZiBwcmVzZW50LCBjYW4gYmUgZWl0aGVyIHRoZSBuYW1lIG9mIGEgbWFpbnRhaW5lciBmb3IgYW4gIgorInVuY29uZGl0aW9uYWwgb3ZlcnJpZGUsIG9yIGVsc2UgSTxvbGRtYWludGFpbmVyPiBCPD1FPGd0Pj4gSTxuZXdtYWludGFpbmVyPiAiCisidG8gcGVyZm9ybSBhIHN1YnN0aXR1dGlvbi4iCittc2dzdHIgIiIKKyJJPGluZm9ybWFjamVfb19vcGlla3VuaWU+LCBqZcW8ZWxpIHPEhSBvYmVjbmUsIG1vZ8SFIGJ5xIcgYWxibyBzYW3EhSBuYXp3xIUgIgorIm9waWVrdW5hIGJlendhcnVua293ZWdvIG5hZHBpc2FuaWEsIGFsYm8gc8SFIHcgcG9zdGFjaSBJPHN0YXJ5X29waWVrdW4+ICIKKyJCPD1FPGd0Pj4gSTxub3d5X29waWVrdW4+LCBieSBwcnplcHJvd2FkemnEhyB6YW1pYW7EmSBpbmZvcm1hY2ppIG8gb3BpZWt1bmllLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW92ZXJyaWRlLjU6NjEKK21zZ2lkICIiCisiVGhlIG92ZXJyaWRlIGZpbGVzIHVzZWQgdG8gbWFrZSB0aGUgb2ZmaWNpYWwgUGFja2FnZXMgbGlzdHMgbWF5IGJlIGZvdW5kIGluICIKKyJ0aGUgSTxpbmRpY2VzPiBkaXJlY3Rvcnkgb24gYW55IERlYmlhbiBtaXJyb3IuIgorbXNnc3RyICIiCisiUGxpa2kgbmFkcGlzYcWEIHXFvHl3YW5lIGRvIHN0d29yemVuaWEgb2ZpY2phbG5lZ28gcGxpa3UgUGFja2FnZXMgbW/FvG5hICIKKyJ6bmFsZcW6xIcgdyBrYXRhbG9ndSBJPGluZGljZXM+IG5hIGthxbxkeW0gbWlycm9yemUgRGViaWFuYS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vdmVycmlkZS41OjY2CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJCPGRwa2ctc2NhbnBhY2thZ2VzPigxKSwgQjxkcGtnLXNjYW5zb3VyY2VzPigxKSwgQjxhcHQtZnRwYXJjaGl2ZT4oMSkuIgorbXNnaWQgIiIKKyJCPGRwa2ctc2NhbnBhY2thZ2VzPigxKSwgQjxkcGtnLXNjYW5zb3VyY2VzPigxKSwgQjxhcHQtZnRwYXJjaGl2ZT4oMSksIEI8LyIKKyJ1c3Ivc2hhcmUvZG9jL2RlYmlhbi1wb2xpY3kvcG9saWN5Lmh0bWwvaW5kZXguaHRtbD4uIgorbXNnc3RyICJCPGRwa2ctc2NhbnBhY2thZ2VzPigxKSwgQjxkcGtnLXNjYW5zb3VyY2VzPigxKSwgQjxhcHQtZnRwYXJjaGl2ZT4oMSkuIgorCisjLiB0eXBlOiBUSAorIzogZGViLWV4dHJhLW92ZXJyaWRlLjU6MQorIywgbm8td3JhcAorbXNnaWQgImRlYi1leHRyYS1vdmVycmlkZSIKK21zZ3N0ciAiZGViLWV4dHJhLW92ZXJyaWRlIgorCisjLiB0eXBlOiBUSAorIzogZGViLWV4dHJhLW92ZXJyaWRlLjU6MQorIywgbm8td3JhcAorbXNnaWQgIjIwMDktMDgtMTYiCittc2dzdHIgIjIwMDktMDgtMTYiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1leHRyYS1vdmVycmlkZS41OjQKK21zZ2lkICJkZWItZXh0cmEtb3ZlcnJpZGUgLSBEZWJpYW4gYXJjaGl2ZSBleHRyYSBvdmVycmlkZSBmaWxlIgorbXNnc3RyICJkZWItZXh0cmEtb3ZlcnJpZGUgLSBwbGlrIGRvZGF0a293eWNoIG5hZHBpc2HFhCBhcmNoaXd1bSBEZWJpYW5hIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItZXh0cmEtb3ZlcnJpZGUuNToxMgorbXNnaWQgIiIKKyJXaGlsZSBtb3N0IGluZm9ybWF0aW9uIGFib3V0IGEgYmluYXJ5L3NvdXJjZSBwYWNrYWdlIGNhbiBiZSBmb3VuZCBpbiB0aGUgIgorImNvbnRyb2wvLmRzYyBmaWxlLCBhbGwgb2YgaXQgY2FuIGJlIG92ZXJyaWRkZW4gd2hlbiBpdCdzIGV4cG9ydGVkIHRvICIKKyJQYWNrYWdlcy9Tb3VyY2VzIGZpbGVzLiBUaGUgZXh0cmEgb3ZlcnJpZGUgZmlsZSBjb250YWlucyB0aG9zZSBvdmVycmlkZXMuIgorbXNnc3RyICIiCisiV2nEmWtzem/Fm8SHIGluZm9ybWFjamkgbyBiaW5hcm55bSBsdWIgxbpyw7NkxYJvd3ltIHBha2llY2llIG1vxbxlIGJ5xIcgemF3YXJ0YSB3ICIKKyJwbGlrdSBjb250cm9sLy5kc2MsIGplZG5hayBjYcWCYSB0YSBpbmZvcm1hY2phIG1vxbxlIGJ5xIcgbmFkcGlzYW5hIHBvZGN6YXMgIgorImVrc3BvcnRvd2FuaWEgZG8gcGxpa8OzdyBQYWNrYWdlcy9Tb3VyY2VzLiBQbGlrIGRvZGF0a293eWNoIG5hZHBpc2HFhCB6YXdpZXJhICIKKyJ0YWtpZSB3xYJhxZtuaWUgbmFkcGlzYW5pYS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1leHRyYS1vdmVycmlkZS41OjE2Cittc2dpZCAiIgorIlRoZSBleHRyYSBvdmVycmlkZSBmaWxlIGhhcyBhIHNpbXBsZSB3aGl0ZXNwYWNlLWRlbGltaXRlZCBmb3JtYXQuIENvbW1lbnRzICIKKyJhcmUgYWxsb3dlZCAoZGVub3RlZCB3aXRoIGEgQjwjPikuIgorbXNnc3RyICIiCisiRG9kYXRrb3d5IHBsaWsgbmFkcGlzYcWEIG1hIHByb3N0eSBmb3JtYXQgcMOzbCByb3pkemllbG9ueWNoIGJpYcWCeW1pIHpuYWthbWkgIgorIihzcGFjamFtaSkuIERvendvbG9uZSBzxIUga29tZW50YXJ6ZSAoemFjenluYWrEhWNlIHNpxJkgb2QgQjwjPikuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItZXh0cmEtb3ZlcnJpZGUuNToyMQorbXNnaWQgIkk8cGFja2FnZT4gSTxmaWVsZC1uYW1lPiBJPHZhbHVlPiIKK21zZ3N0ciAiSTxwYWtpZXQ+IEk8bmF6d2EtcG9sYT4gSTx3YXJ0b8WbxIc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItZXh0cmEtb3ZlcnJpZGUuNToyNQorbXNnaWQgIkk8cGFja2FnZT4gaXMgdGhlIG5hbWUgb2YgdGhlIGJpbmFyeS9zb3VyY2UgcGFja2FnZS4iCittc2dzdHIgIkk8cGFraWV0PiBqZXN0IG5henfEhSBiaW5hcm5lZ28gbHViIMW6csOzZMWCb3dlZ28gcGFraWV0dS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1leHRyYS1vdmVycmlkZS41OjMxCittc2dpZCAiIgorIkk8ZmllbGQtbmFtZT4gaXMgdGhlIG5hbWUgb2YgdGhlIGZpZWxkIHRoYXQgaXMgb3ZlcnJpZGRlbi4gIEk8dmFsdWU+IGlzIHRoZSAiCisidmFsdWUgdG8gcHV0IGluIHRoZSBmaWVsZC4gSXQgY2FuIGNvbnRhaW4gc3BhY2VzIGFzIHRoZSBsaW5lIGlzIHNwbGl0IGluIG5vICIKKyJtb3JlIHRoYW4gMyBjb2x1bW5zIHdoZW4gaXQncyBwYXJzZWQuIgorbXNnc3RyICIiCisiSTxuYXp3YS1wb2xhPiBqZXN0IG5henfEhSBuYWRwaXN5d2FuZWdvIHBvbGEuIEk8d2FydG/Fm8SHPiBqZXN0IHdhcnRvxZtjacSFLCAiCisia3TDs3JhIGLEmWR6aWUgdW1pZXN6Y3pvbmEgdyB0eW0gcG9sdS4gTW/FvGUgb25hIHphd2llcmHEhyBzcGFjamUsIHBvbmlld2HFvCAiCisibGluaWEgamVzdCBkemllbG9uYSBwb2RjemFzIHBhcnNvd2FuaWEgbmEgbmllIHdpxJljZWogbmnFvCAzIGtvbHVtbnkuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItZXh0cmEtb3ZlcnJpZGUuNTozNgorbXNnaWQgIiIKKyJUaGUgZXh0cmEgb3ZlcnJpZGUgZmlsZXMgdXNlZCB0byBtYWtlIHRoZSBvZmZpY2lhbCBQYWNrYWdlcyBsaXN0cyBtYXkgYmUgIgorImZvdW5kIGluIHRoZSBJPGluZGljZXM+IGRpcmVjdG9yeSBvbiBhbnkgRGViaWFuIG1pcnJvci4iCittc2dzdHIgIiIKKyJEb2RhdGtvd2UgcGxpa2kgbmFkcGlzYcWEIHXFvHl3YW5lIGRvIHN0d29yemVuaWEgb2ZpY2phbG55Y2ggbGlzdCBQYWNrYWdlcyAiCisibW/FvG5hIHpuYWxlxbrEhyB3IGthdGFsb2d1IEk8aW5kaWNlcz4gbmEga2HFvGR5bSBtaXJyb3J6ZSBEZWJpYW5hLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWV4dHJhLW92ZXJyaWRlLjU6NDAKK21zZ2lkICJCPGRwa2ctc2NhbnBhY2thZ2VzPigxKSwgQjxkcGtnLXNjYW5zb3VyY2VzPigxKSwgQjxhcHQtZnRwYXJjaGl2ZT4oMSkuIgorbXNnc3RyICJCPGRwa2ctc2NhbnBhY2thZ2VzPigxKSwgQjxkcGtnLXNjYW5zb3VyY2VzPigxKSwgQjxhcHQtZnRwYXJjaGl2ZT4oMSkuIgorCisjLiB0eXBlOiBUSAorIzogZGViLXNobGlicy41OjE2CisjLCBuby13cmFwCittc2dpZCAiZGViLXNobGlicyIKK21zZ3N0ciAiZGViLXNobGlicyIKKworIy4gdHlwZTogVEgKKyM6IGRlYi1zaGxpYnMuNToxNgorIywgbm8td3JhcAorbXNnaWQgIjIwMDgtMDItMTciCittc2dzdHIgIjIwMDgtMDItMTciCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zaGxpYnMuNToxOQorbXNnaWQgImRlYi1zaGxpYnMgLSBEZWJpYW4gc2hhcmVkIGxpYnJhcnkgaW5mb3JtYXRpb24gZmlsZSIKK21zZ3N0ciAiIgorImRlYi1zaGxpYnMgLSBwbGlrIHogaW5mb3JtYWNqYW1pIG8gYmlibGlvdGVrYWNoIHdzcMOzxYJkemllbG9ueWNoIHcgRGViaWFuaWUiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zaGxpYnMuNToyOQorbXNnaWQgIiIKKyJCPHNobGlicz4gZmlsZXMgbWFwIHNoYXJlZCBsaWJyYXJ5IG5hbWVzIGFuZCB2ZXJzaW9ucyAoSTxzb25hbWVzPikgIHRvICIKKyJkZXBlbmRlbmNpZXMgc3VpdGFibGUgZm9yIGEgcGFja2FnZSBjb250cm9sIGZpbGUuICBUaGVyZSBpcyBvbmUgZW50cnkgcGVyICIKKyJsaW5lLiBCbGFuayBsaW5lcyBhcmUgQjxub3Q+IGFsbG93ZWQuICBMaW5lcyBiZWdpbm5pbmcgd2l0aCBhbiBCPCM+ICIKKyJjaGFyYWN0ZXIgYXJlIGNvbnNpZGVyZWQgY29tbWVudGFyeSwgYW5kIGFyZSBpZ25vcmVkLiAgQWxsIG90aGVyIGxpbmVzIG11c3QgIgorImhhdmUgdGhlIGZvcm1hdCIKK21zZ3N0ciAiIgorIlBsaWtpIEI8c2hsaWJzPiBvZHd6b3Jvd3VqxIUgbmF6d3kgaSB3ZXJzamUgKHR6dy4gSTxzb25hbWVzPikgYmlibGlvdGVrICIKKyJ3c3DDs8WCZHppZWxvbnljaCBuYSB6YWxlxbxub8WbY2kgb2Rwb3dpZWRuaWUgZGxhIHBsaWt1IGtvbnRyb2xuZWdvIHBha2lldHUuIFcgIgorImthxbxkZWogbGluaWkgbW/FvGUgYnnEhyB1bWllc3pjem9ueSB0eWxrbyBqZWRlbiB3cGlzLiBQdXN0ZSBsaW5pZSBJPG5pZT4gbW9nxIUgIgorInd5c3TEmXBvd2HEhy4gTGluaWUgemFjenluYWrEhWNlIHNpxJkgb2Qgem5ha3UgQjwjPiBzxIUgdXdhxbxhbmUgemEga29tZW50YXJ6ZSBpICIKKyJpZ25vcm93YW5lLiBXc3p5c3RraWUgcG96b3N0YcWCZSBsaW5pZSBtdXN6xIUgbWllxIcgbmFzdMSZcHVqxIVjeSBmb3JtYXQ6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc2hsaWJzLjU6MzQKKyMsIGZ1enp5CisjfCBtc2dpZCAiW0k8dGFnOj5dIEk8bGlicmFyeT4gSTx2ZXJzaW9uPiBJPGRlcGVuZGVuY2llcz4iCittc2dpZCAiW0k8dHlwZT5CPDo+XSBJPGxpYnJhcnk+IEk8dmVyc2lvbj4gSTxkZXBlbmRlbmNpZXM+IgorbXNnc3RyICJbSTx0YWc6Pl0gSTxiaWJsaW90ZWthPiBJPHdlcnNqYT4gSTx6YWxlxbxub8WbY2k+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc2hsaWJzLjU6MzgKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlRoZSBJPGxpYnJhcnk+IGFuZCBJPHZlcnNpb24+IGZpZWxkcyBhcmUgd2hpdGVzcGFjZS1kZWxpbWl0ZWQsIGJ1dCB0aGUgIgorI3wgIkk8ZGVwZW5kZW5jaWVzPiBmaWVsZCBleHRlbmRzIHRvIHRoZSBlbmQgb2YgdGhlIGxpbmUuICBUaGUgSTx0YWc+IGZpZWxkICIKKyN8ICJpcyBvcHRpb25hbCBhbmQgbm9ybWFsbHkgbm90IG5lZWRlZC4iCittc2dpZCAiIgorIlRoZSBJPGxpYnJhcnk+IGFuZCBJPHZlcnNpb24+IGZpZWxkcyBhcmUgd2hpdGVzcGFjZS1kZWxpbWl0ZWQsIGJ1dCB0aGUgIgorIkk8ZGVwZW5kZW5jaWVzPiBmaWVsZCBleHRlbmRzIHRvIHRoZSBlbmQgb2YgdGhlIGxpbmUuICBUaGUgSTx0eXBlPiBmaWVsZCBpcyAiCisib3B0aW9uYWwgYW5kIG5vcm1hbGx5IG5vdCBuZWVkZWQuIgorbXNnc3RyICIiCisiUG9sYSBJPGJpYmxpb3Rla2E+IGkgSTx3ZXJzamE+IHPEhSBvZGR6aWVsb25lIG9kIHNpZWJpZSBiaWHFgnltaSB6bmFrYW1pICIKKyIoc3BhY2phbWkpLCBhIHBvbGUgSTx6YWxlxbxub8WbY2k+IHJvemNpxIVnYSBzacSZIGRvIGtvxYRjYSBsaW5paS4gUG9sZSBJPHRhZz4gIgorImplc3Qgb3Bjam9uYWxuZSBpIHphend5Y3phaiBuaWUgamVzdCBwb3RyemVibmUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc2hsaWJzLjU6NDAKK21zZ2lkICJTZWUgdGhlIERlYmlhbiBQb2xpY3kgTWFudWFsIGZvciBmdXJ0aGVyIGRldGFpbHMuIgorbXNnc3RyICJEYWxzemUgc3pjemVnw7PFgnkgbW/FvG5hIHpuYWxlxbrEhyB3IFphc2FkYWNoIHBvbGl0eWtpIERlYmlhbmEuIgorCisjLiB0eXBlOiBTSAorIzogZGViLXNobGlicy41OjQxIGRlYi1zeW1ib2xzLjU6NDMgZHBrZy4xOjcxNCBkcGtnLWFyY2hpdGVjdHVyZS4xOjI2MgorIzogZHBrZy1kaXZlcnQuODo5MSBkcGtnLW5hbWUuMTo2NSB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDU5CisjLCBuby13cmFwCittc2dpZCAiRVhBTVBMRVMiCittc2dzdHIgIlBSWllLxYFBRFkiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zaGxpYnMuNTo1MAorbXNnaWQgIiIKKyJUaGUgQjxzaGxpYnM+IGZpbGUgZm9yIGEgdHlwaWNhbCBsaWJyYXJ5IHBhY2thZ2UsIG5hbWVkIEk8bGliY3J1bmNoMT4sIHRoYXQgIgorInByb3ZpZGVzIG9uZSBsaWJyYXJ5IHdob3NlIHNvbmFtZSBpcyBJPGxpYmNydW5jaC5zby4xPiwgbWlnaHQgcmVhZCIKK21zZ3N0ciAiIgorIlBsaWsgQjxzaGxpYnM+IGRsYSB0eXBvd2VnbyBwYWtpZXR1IHogYmlibGlvdGVrYW1pLCBuYXp3YW5lZ28gSTxsaWJjcnVuY2gxPiwgIgorImRvc3RhcmN6YWrEhWNlZ28gdHlsa28gamVkbsSFIGJpYmxpb3Rla8SZLCBrdMOzcmVqIHNvbmFtZSB0byBJPGxpYmNydW5jaC5zby4xPiwgIgorIm1vxbxlIHd5Z2zEhWRhxIcgdGFrOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNobGlicy41OjUyCittc2dpZCAibGliY3J1bmNoIDEgbGliY3J1bmNoMSAoRTxndD49IDEuMi0xKSIKK21zZ3N0ciAibGliY3J1bmNoIDEgbGliY3J1bmNoMSAoRTxndD49IDEuMi0xKSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNobGlicy41OjYwCittc2dpZCAiIgorIlRoZSBJPGRlcGVuZGVuY2llcz4gbXVzdCBtZW50aW9uIHRoZSBtb3N0IHJlY2VudCB2ZXJzaW9uIG9mIHRoZSBwYWNrYWdlIHRoYXQgIgorImFkZGVkIG5ldyBzeW1ib2xzIHRvIHRoZSBsaWJyYXJ5OiBpbiB0aGUgYWJvdmUgZXhhbXBsZSwgbmV3IHN5bWJvbHMgd2VyZSAiCisiYWRkZWQgdG8gdmVyc2lvbiAxLjIgb2YgSTxsaWJjcnVuY2g+LiAgVGhpcyBpcyBub3QgdGhlIG9ubHkgcmVhc29uIHRoZSAiCisiZGVwZW5kZW5jaWVzIG1pZ2h0IG5lZWQgdG8gYmUgdGlnaHRlbmVkOyBhZ2Fpbiwgc2VlIHRoZSBEZWJpYW4gUG9saWN5IE1hbnVhbCAiCisiZm9yIGRldGFpbHMuIgorbXNnc3RyICIiCisiUG9sZSBJPHphbGXFvG5vxZtjaT4gbXVzaSB3eW1pZW5pYcSHIG5ham5vd3N6xIUgd2Vyc2rEmSBwYWtpZXR1LCB3IGt0w7NyZWogZG9kYW5vICIKKyJub3dlIHN5bWJvbGUgZG8gYmlibGlvdGVraTogdyBwb3d5xbxzenltIHByenlrxYJhZHppZSBub3dlIHN5bWJvbGUgYnnFgnkgZG9kYW5lICIKKyJkbyB3ZXJzamkgMS4yIGJpYmxpb3Rla2kgIEk8bGliY3J1bmNoPi4gTmllIGplc3QgdG8gamVkeW55IHBvd8OzZCxkbGEga3TDs3JlZ28gIgorInphbGXFvG5vxZtjaSBtb2fEhSBiecSHIHphd8SZxbxhbmU7IHN6Y3plZ8OzxYJ5IG1vxbxuYSB6bmFsZcW6xIcgdyBkb2t1bWVuY2llIFwiWmFzYWR5ICIKKyJwb2xpdHlraSBEZWJpYW5hXCIuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc2hsaWJzLjU6NjMKK21zZ2lkICJCPGRwa2ctc2hsaWJkZXBzPigxKSwgQjxkZWItc3ltYm9scz4oNSkuIgorbXNnc3RyICJCPGRwa2ctc2hsaWJkZXBzPigxKSwgQjxkZWItc3ltYm9scz4oNSkuIgorCisjLiB0eXBlOiBUSAorIzogZGViLXN1YnN0dmFycy41OjIKKyMsIG5vLXdyYXAKK21zZ2lkICJkZWItc3Vic3R2YXJzIgorbXNnc3RyICJkZWItc3Vic3R2YXJzIgorCisjLiB0eXBlOiBUSAorIzogZGViLXN1YnN0dmFycy41OjIKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiMjAwOS0wOC0xNiIKK21zZ2lkICIyMDA5LTA3LTE1IgorbXNnc3RyICIyMDA5LTA4LTE2IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6NQorbXNnaWQgImRlYi1zdWJzdHZhcnMgLSBEZWJpYW4gc291cmNlIHN1YnN0aXR1dGlvbiB2YXJpYWJsZXMiCittc2dzdHIgImRlYi1zdWJzdHZhcnMgLSB6bWllbm5lIHBvZHN0YXdpYW5pYSDFunLDs2TFgm93eWNoIHBha2lldMOzdyBEZWJpYW5hIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6OAorbXNnaWQgInN1YnN0dmFycyIKK21zZ3N0ciAic3Vic3R2YXJzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MTkKK21zZ2lkICIiCisiQmVmb3JlIEI8ZHBrZy1zb3VyY2U+LCBCPGRwa2ctZ2VuY29udHJvbD4gYW5kIEI8ZHBrZy1nZW5jaGFuZ2VzPiB3cml0ZSB0aGVpciAiCisiY29udHJvbCBpbmZvcm1hdGlvbiAodG8gdGhlIHNvdXJjZSBjb250cm9sIGZpbGUgQjwuZHNjPiBmb3IgQjxkcGtnLXNvdXJjZT4gIgorImFuZCB0byBzdGFuZGFyZCBvdXRwdXQgZm9yIEI8ZHBrZy1nZW5jb250cm9sPiBhbmQgQjxkcGtnLWdlbmNoYW5nZXM+KSAgdGhleSAiCisicGVyZm9ybSBzb21lIHZhcmlhYmxlIHN1YnN0aXR1dGlvbnMgb24gdGhlIG91dHB1dCBmaWxlLiIKK21zZ3N0ciAiIgorIlphbmltIEI8ZHBrZy1zb3VyY2U+LCBCPGRwa2ctZ2VuY29udHJvbD4gaSBCPGRwa2ctZ2VuY2hhbmdlcz4gemFwaXN6xIUgc3dvamUgIgorImluZm9ybWFjamUga29udHJvbG5lIChkbyDFunLDs2TFgm93ZWdvIHBsaWt1IEI8LmRzYz4gdyB3eXBhZGt1IEI8ZHBrZy1zb3VyY2U+IGkgIgorIm5hIHN0YW5kYXJkb3dlIHd5asWbY2llIHcgd3lwYWRrdSBCPGRwa2ctZ2VuY29udHJvbD4gaSBCPGRwa2ctZ2VuY2hhbmdlcz4pLCAiCisid3lrb251asSFIHBvZHN0YXdpZW5pYSBwZXdueWNoIHptaWVubnljaCBuYSBwbGlrdSB3eWrFm2Npb3d5bS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToyNgorbXNnaWQgIiIKKyJBIHZhcmlhYmxlIHN1YnN0aXR1dGlvbiBoYXMgdGhlIGZvcm0gQjwkez5JPHZhcmlhYmxlLW5hbWU+Qjx9Pi4gIFZhcmlhYmxlICIKKyJuYW1lcyBjb25zaXN0IG9mIGFscGhhbnVtZXJpY3MsIGh5cGhlbnMgYW5kIGNvbG9ucyBhbmQgc3RhcnQgd2l0aCBhbiAiCisiYWxwaGFudW1lcmljLiBWYXJpYWJsZSBzdWJzdGl0dXRpb25zIGFyZSBwZXJmb3JtZWQgcmVwZWF0ZWRseSB1bnRpbCBub25lIGFyZSAiCisibGVmdDsgdGhlIGZ1bGwgdGV4dCBvZiB0aGUgZmllbGQgYWZ0ZXIgdGhlIHN1YnN0aXR1dGlvbiBpcyByZXNjYW5uZWQgdG8gbG9vayAiCisiZm9yIG1vcmUgc3Vic3RpdHV0aW9ucy4iCittc2dzdHIgIiIKKyJQb2RzdGF3aWVuaWUgem1pZW5uZWogbWEgcG9zdGHEhyBCPCR7Pkk8bmF6d2Etem1pZW5uZWo+Qjx9Pi4gTmF6d3kgem1pZW5ueWNoICIKKyJza8WCYWRhasSFIHNpxJkgemUgem5ha8OzdyBhbGZhbnVtZXJ5Y3pueWNoLCBtecWbbG5pa8OzdyBvcmF6IGR3dWtyb3Brw7N3IGkgIgorInphY3p5bmFqxIUgc2nEmSBvZCB6bmFrdSBhbGZhbnVtZXJ5Y3puZWdvLiBQb2RzdGF3aWVuaWEgem1pZW5ueWNoIHPEhSAiCisicG93dGFyemFuZSBkb3DDs3R5LCBhxbwgbmllIGLEmWR6aWUgbmljIGRvIHBvZHN0YXdpZW5pYTsgcGXFgmVuIHRla3N0IHBvbGEgcG8gIgorInBvZHN0YXdpZW5pdSBqZXN0IHBvbm93bmllIHNrYW5vd2FueSB3IHBvc3p1a2l3YW5pdSBrb2xlam55Y2ggcG9kc3Rhd2llxYQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MzMKK21zZ2lkICIiCisiQWZ0ZXIgYWxsIHRoZSBzdWJzdGl0dXRpb25zIGhhdmUgYmVlbiBkb25lIGVhY2ggb2NjdXJyZW5jZSBvZiB0aGUgc3RyaW5nIEI8IgorIiR7fT4gKHdoaWNoIGlzIG5vdCBhIGxlZ2FsIHN1YnN0aXR1dGlvbikgaXMgcmVwbGFjZWQgd2l0aCBhIEI8JD4gc2lnbi4iCittc2dzdHIgIiIKKyJQbyBkb2tvbmFuaXUgd3N6eXN0a2ljaCBwb2RzdGF3aWXFhCwga2HFvGRlIHd5c3TEhXBpZW5pZSDFgmHFhGN1Y2hhIEI8JHt9PiAoa3TDs3J5ICIKKyJuaWUgamVzdCBwb3ByYXdueW0gcG9kc3Rhd2llbmllbSkgamVzdCB6YXN0xJlwb3dhbmUgcHJ6ZXogem5hayBCPCQ+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjM4Cittc2dpZCAiIgorIldoaWxlIHZhcmlhYmxlIHN1YnN0aXR1dGlvbiBpcyBkb25lIG9uIGFsbCBjb250cm9sIGZpZWxkcywgc29tZSBvZiB0aG9zZSAiCisiZmllbGRzIGFyZSB1c2VkIGFuZCBuZWVkZWQgZHVyaW5nIHRoZSBidWlsZCB3aGVuIHRoZSBzdWJzdGl0dXRpb24gZGlkIG5vdCAiCisieWV0IG9jY3VyLiBUaGF0J3Mgd2h5IHlvdSBjYW4ndCB1c2UgdmFyaWFibGVzIGluIHRoZSBCPFBhY2thZ2U+LCBCPFNvdXJjZT4gIgorImFuZCBCPEFyY2hpdGVjdHVyZT4gZmllbGRzLiIKK21zZ3N0ciAiIgorIlBvZHN0YXdpYW5pZSB6bWllbm55Y2ggamVzdCB3eWtvbnl3YW5lIG5hIHdzenlzdGtpY2ggcG9sYWNoIGtvbnRyb2xueWNoLCAiCisiamVkbmFrIG5pZWt0w7NyZSB6IHR5Y2ggcMOzbCBzxIUgdcW8eXdhbmUgb3JheiB3eW1hZ2FuZSBwb2RjemFzIGJ1ZG93YW5pYSwgZ2R5ICIKKyJwb2RzdGF3aWVuaWUgbmllIHpvc3RhxYJvIGplc3pjemUgd3lrb25hbmUuIERsYXRlZ28gbmllIG1vxbxuYSB1xbx5d2HEhyAiCisiem1pZW5ueWNoIHcgcG9sYWNoIEI8UGFja2FnZT4sIEI8U291cmNlPiBvcmF6IEI8QXJjaGl0ZWN0dXJlPi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNTo0NQorbXNnaWQgIiIKKyJWYXJpYWJsZSBzdWJzdGl0dXRpb24gaGFwcGVucyBvbiB0aGUgY29udGVudCBvZiB0aGUgZmllbGRzIGFmdGVyIHRoZXkgaGF2ZSAiCisiYmVlbiBwYXJzZWQsIHRodXMgaWYgeW91IHdhbnQgYSB2YXJpYWJsZSB0byBleHBhbmQgb3ZlciBtdWx0aXBsZSBsaW5lcyB5b3UgIgorImRvIG5vdCBoYXZlIHRvIGluY2x1ZGUgYSBzcGFjZSBhZnRlciB0aGUgbmV3bGluZS4gVGhpcyBpcyBkb25lIGltcGxpY2l0bHkgIgorIndoZW4gdGhlIGZpZWxkIGlzIG91dHB1dC4gRm9yIGV4YW1wbGUsIGlmIHRoZSB2YXJpYWJsZSBCPCR7RGVzY3JpcHRpb259PiBpcyAiCisic2V0IHRvIFwiZm9vIGlzIGJhci4ke05ld2xpbmV9Zm9vIGlzIGdyZWF0LlwiIGFuZCBpZiB5b3UgaGF2ZSB0aGUgZm9sbG93aW5nICIKKyJmaWVsZDoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjUwCisjLCBuby13cmFwCittc2dpZCAiIgorIiBEZXNjcmlwdGlvbjogZm9vIGFwcGxpY2F0aW9uXG4iCisiICAke0Rlc2NyaXB0aW9ufVxuIgorIiAgLlxuIgorIiAgTW9yZSB0ZXh0LlxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNTo1MgorbXNnaWQgIkl0IHdpbGwgcmVzdWx0IGluOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6NTgKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiIERlc2NyaXB0aW9uOiBmb28gYXBwbGljYXRpb25cbiIKKyIgIGZvbyBpcyBiYXIuXG4iCisiICBmb28gaXMgZ3JlYXQuXG4iCisiICAuXG4iCisiICBNb3JlIHRleHQuXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjcxCittc2dpZCAiIgorIlZhcmlhYmxlcyBjYW4gYmUgc2V0IHVzaW5nIHRoZSBCPC1WPiBjb21tb24gb3B0aW9uLiBUaGV5IGNhbiBiZSBhbHNvICIKKyJzcGVjaWZpZWQgaW4gdGhlIGZpbGUgQjxkZWJpYW4vc3Vic3R2YXJzPiAob3Igd2hhdGV2ZXIgb3RoZXIgZmlsZSBpcyAiCisic3BlY2lmaWVkIHVzaW5nIHRoZSBCPC1UPiBvcHRpb24pLiBUaGlzIGZpbGUgY29uc2lzdHMgb2YgbGluZXMgb2YgdGhlIGZvcm0gIgorIkk8bmFtZT5CPD0+STx2YWx1ZT4uICBUcmFpbGluZyB3aGl0ZXNwYWNlIG9uIGVhY2ggbGluZSwgYmxhbmsgbGluZXMsIGFuZCAiCisibGluZXMgc3RhcnRpbmcgd2l0aCBhIEI8Iz4gc3ltYm9sIChjb21tZW50cykgYXJlIGlnbm9yZWQuIgorbXNnc3RyICIiCisiWm1pZW5uZSBtb8W8bmEgdXN0YXdpxIcgemEgcG9tb2PEhSBvcGNqaSBCPC1WPi4gTW/FvG5hIGplIHRha8W8ZSBwb2RhxIcgdyBwbGlrdSAiCisiQjxkZWJpYW4vc3Vic3R2YXJzPiAobHViIGpha2lta29sd2llayBpbm55bSBwbGlrdSB3c2themFueW0gb3BjasSFIEI8LVQ+KS4gIgorIlBsaWsgdGVuIHNrxYJhZGEgc2nEmSB6IGxpbmlpIHcgcG9zdGFjaSBJPG5hendhPkI8PT5JPHdhcnRvxZvEhz4uIEtvxYRjb3dlIHNwYWNqZSAiCisidyBrYcW8ZGVqIGxpbmlpLCBsaW5pZSBwdXN0ZSBvcmF6IGxpbmllIHphY3p5bmFqxIVjZSBzacSZIG9kIHpuYWt1IEI8Iz4gKGN6eWxpICIKKyJrb21lbnRhcnplKSBzxIUgaWdub3Jvd2FuZS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNTo3MworbXNnaWQgIkFkZGl0aW9uYWxseSwgdGhlIGZvbGxvd2luZyBzdGFuZGFyZCB2YXJpYWJsZXMgYXJlIGF2YWlsYWJsZToiCittc2dzdHIgIkRvZGF0a293byBkb3N0xJlwbmUgc8SFIG5hc3TEmXB1asSFY2Ugc3RhbmRhcmRvd2Ugem1pZW5uZToiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3Vic3R2YXJzLjU6NzMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPEFyY2g+IgorbXNnc3RyICJCPEFyY2g+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6NzcKK21zZ2lkICJUaGUgY3VycmVudCBidWlsZCBhcmNoaXRlY3R1cmUgKGZyb20gQjxkcGtnIC0tcHJpbnQtYXJjaGl0ZWN0dXJlPikuIgorbXNnc3RyICJCaWXFvMSFY2EgYXJjaGl0ZWt0dXJhIGJ1ZG93YW5pYSAoeiBCPGRwa2cgLS1wcmludC1hcmNoaXRlY3R1cmU+KS4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3Vic3R2YXJzLjU6NzcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHNvdXJjZTpWZXJzaW9uPiIKK21zZ3N0ciAiQjxzb3VyY2U6VmVyc2lvbj4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNTo4MAorbXNnaWQgIlRoZSBzb3VyY2UgcGFja2FnZSB2ZXJzaW9uLiIKK21zZ3N0ciAiV2Vyc2phIHBha2lldHUgxbpyw7NkxYJvd2VnbyIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zdWJzdHZhcnMuNTo4MAorIywgbm8td3JhcAorbXNnaWQgIkI8c291cmNlOlVwc3RyZWFtLVZlcnNpb24+IgorbXNnc3RyICJCPHNvdXJjZTpVcHN0cmVhbS1WZXJzaW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41Ojg0Cittc2dpZCAiIgorIlRoZSB1cHN0cmVhbSBzb3VyY2UgcGFja2FnZSB2ZXJzaW9uLCBpbmNsdWRpbmcgdGhlIERlYmlhbiB2ZXJzaW9uIGVwb2NoIGlmICIKKyJhbnkuIgorbXNnc3RyICIiCisiT3J5Z2luYWxuYSB3ZXJzamEgYXV0b3JhIHBha2lldHUgxbpyw7NkxYJvd2Vnbywgd8WCxIVjemFqxIVjIHdlcnNqxJkgZXBva2kgRGViaWFuYSAiCisiamXFm2xpIGplc3QuIgorCisjLiB0eXBlOiBUUAorIzogZGViLXN1YnN0dmFycy41Ojg0CisjLCBuby13cmFwCittc2dpZCAiQjxiaW5hcnk6VmVyc2lvbj4iCittc2dzdHIgIkI8YmluYXJ5OlZlcnNpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6ODgKK21zZ2lkICIiCisiVGhlIGJpbmFyeSBwYWNrYWdlIHZlcnNpb24gKHdoaWNoIG1heSBkaWZmZXIgZnJvbSBzb3VyY2U6VmVyc2lvbiBpbiBhIGJpbk5NVSAiCisiZm9yIGV4YW1wbGUpLiIKK21zZ3N0ciAiIgorIldlcnNqYSBwYWtpZXR1IGJpbmFybmVnbyAobW/FvGUgc2nEmSByw7PFvG5pxIcgb2Qgc291cmNlOlZlcnNpb24gbmEgcHJ6eWvFgmFkIHcgIgorInByenlwYWRrdSBiaW5OTVUpLiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zdWJzdHZhcnMuNTo4OAorIywgbm8td3JhcAorbXNnaWQgIkI8U291cmNlLVZlcnNpb24+IgorbXNnc3RyICJCPFNvdXJjZS1WZXJzaW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjkzCittc2dpZCAiIgorIlRoZSBzb3VyY2UgcGFja2FnZSB2ZXJzaW9uIChmcm9tIHRoZSBjaGFuZ2Vsb2cgZmlsZSkuIFRoaXMgdmFyaWFibGUgaXMgbm93ICIKKyJCPGRlcHJlY2F0ZWQ+IGFzIGl0cyBtZWFuaW5nIGlzIGRpZmZlcmVudCBmcm9tIGl0cyBmdW5jdGlvbiwgcGxlYXNlIHVzZSB0aGUgIgorIkI8c291cmNlOlZlcnNpb24+IG9yIEI8YmluYXJ5OlZlcnNpb24+IGFzIGFwcHJvcHJpYXRlLiIKK21zZ3N0ciAiIgorIldlcnNqYSBwYWtpZXR1IMW6csOzZMWCb3dlZ28gKHogZHppZW5uaWthIHptaWFuKS4gVGEgem1pZW5uYSBqZXN0IG9iZWNuaWUgIgorIkI8cHJ6ZXN0YXJ6YcWCYT4sIGpha28gxbxlIGplaiB6bmFjemVuaWUgamVzdCBpbm5lIG5pxbwgamVqIGZ1bmtjam9uYWxub8WbxIcuICIKKyJQcm9zaW15IHXFvHl3YcSHIEI8c291cmNlOlZlcnNpb24+IGx1YiBCPGJpbmFyeTpWZXJzaW9uPiwgdyB6YWxlxbxub8WbY2kgb2QgIgorInd5bWFnYcWELiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zdWJzdHZhcnMuNTo5MworIywgbm8td3JhcAorbXNnaWQgIkI8SW5zdGFsbGVkLVNpemU+IgorbXNnc3RyICJCPEluc3RhbGxlZC1TaXplPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjEwMgorbXNnaWQgIiIKKyJUaGUgdG90YWwgc2l6ZSBvZiB0aGUgcGFja2FnZSdzIGluc3RhbGxlZCBmaWxlcy4gVGhpcyB2YWx1ZSBpcyBjb3BpZWQgaW50byAiCisidGhlIGNvcnJlc3BvbmRpbmcgY29udHJvbCBmaWxlIGZpZWxkOyBzZXR0aW5nIGl0IHdpbGwgbW9kaWZ5IHRoZSB2YWx1ZSBvZiAiCisidGhhdCBmaWVsZC4gSWYgdGhpcyB2YXJpYWJsZSBpc24ndCBzZXQgQjxkcGtnLWdlbmNvbnRyb2w+IHdpbGwgdXNlIEI8ZHUgLWsgIgorImRlYmlhbi90bXA+IHRvIGZpbmQgdGhlIGRlZmF1bHQgdmFsdWUuIgorbXNnc3RyICIiCisiQ2HFgmtvd2l0eSByb3ptaWFyIHBsaWvDs3cgemFpbnN0YWxvd2FueWNoIHByemV6IHBha2lldC4gV2FydG/Fm8SHIHRhIGplc3QgIgorImtvcGlvd2FuYSBkbyBvZHBvd2lhZGFqxIVjZWdvIGplaiBwb2xhIHcgcGxpa3Uga29udHJvbG55bTsgdXN0YXdpZW5pZSBqZWogIgorInptb2R5ZmlrdWplIHdhcnRvxZvEhyB0ZWdvIHBvbGEuIEplxZtsaSBuaWUgdXN0YXdpb25vIHptaWVubmVqLCB0byBCPGRwa2ctIgorImdlbmNvbnRyb2w+IHXFvHlqZSBCPGR1IC1rIGRlYmlhbi90bXA+LCBhYnkgem5hbGXFusSHIGplaiB3YXJ0b8WbxIcgZG9tecWbbG7EhS4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3Vic3R2YXJzLjU6MTAyCisjLCBuby13cmFwCittc2dpZCAiQjxFeHRyYS1TaXplPiIKK21zZ3N0ciAiQjxFeHRyYS1TaXplPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjExMQorbXNnaWQgIiIKKyJBZGRpdGlvbmFsIGRpc2sgc3BhY2UgdXNlZCB3aGVuIHRoZSBwYWNrYWdlIGlzIGluc3RhbGxlZC4gSWYgdGhpcyB2YXJpYWJsZSAiCisiaXMgc2V0IGl0cyB2YWx1ZSBpcyBhZGRlZCB0byB0aGF0IG9mIHRoZSBCPEluc3RhbGxlZC1TaXplPiB2YXJpYWJsZSAod2hldGhlciAiCisic2V0IGV4cGxpY2l0bHkgb3IgdXNpbmcgdGhlIGRlZmF1bHQgdmFsdWUpIGJlZm9yZSBpdCBpcyBjb3BpZWQgaW50byB0aGUgIgorIkI8SW5zdGFsbGVkLVNpemU+IGNvbnRyb2wgZmlsZSBmaWVsZC4iCittc2dzdHIgIiIKKyJEb2RhdGtvd2EgcHJ6ZXN0cnplxYQgZHlza293YSwgdcW8eXdhbmEgcG9kY3phcyBpbnN0YWxvd2FuaWEgcGFraWV0dS4gSmXFm2xpIHRhICIKKyJ6bWllbm5hIGplc3QgdXN0YXdpb25hLCB0byBqZWogd2FydG/Fm8SHIGplc3QgZG9kYXdhbmEgZG8gd2FydG/Fm2NpIHptaWVubmVqICIKKyJCPEluc3RhbGxlZC1TaXplPiAobmllemFsZcW8bmllIG9kIHRlZ28sIGN6eSB6b3N0YcWCYSBvdHdhcmNpZSB1c3Rhd2lvbmEsIGN6eSAiCisibWEgd2FydG/Fm8SHIGRvbXnFm2xuxIUpLCB6YW5pbSB6b3N0YW5pYSBza29waW93YW5hIGRvIHBvbGEgQjxJbnN0YWxsZWQtU2l6ZT4gIgorInBsaWt1IGtvbnRyb2xuZWdvLiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zdWJzdHZhcnMuNToxMTEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPEY6Pkk8ZmllbGRuYW1lPiIKK21zZ3N0ciAiQjxGOj5JPG5hendhLXBvbGE+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MTE4Cittc2dpZCAiIgorIlRoZSB2YWx1ZSBvZiB0aGUgb3V0cHV0IGZpZWxkIEk8ZmllbGRuYW1lPiAod2hpY2ggbXVzdCBiZSBnaXZlbiBpbiB0aGUgIgorImNhbm9uaWNhbCBjYXBpdGFsaXNhdGlvbikuIFNldHRpbmcgdGhlc2UgdmFyaWFibGVzIGhhcyBubyBlZmZlY3Qgb3RoZXIgdGhhbiAiCisib24gcGxhY2VzIHdoZXJlIHRoZXkgYXJlIGV4cGFuZGVkIGV4cGxpY2l0bHkuIgorbXNnc3RyICIiCisiV2FydG/Fm8SHIHBvbGEgd3lqxZtjaW93ZWdvIEk8bmF6d2FfcG9sYT4gKGt0w7NyZSBtdXNpIGJ5xIcgcG9kYW5lIHogdcW8eWNpZW0gIgorIk5vdGFjamktV2llbGLFgsSFZHppZWopLiBVc3Rhd2llbmllIHRha2ljaCB6bWllbm55Y2ggd3DFgnl3YSB0eWxrbyBuYSBtaWVqc2NhLCAiCisiZ2R6aWUgc8SFIG9uZSBqYXduaWUgcm96d2lqYW5lLiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zdWJzdHZhcnMuNToxMTgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPEZvcm1hdD4iCittc2dzdHIgIkI8Rm9ybWF0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjEyOAorbXNnaWQgIiIKKyJUaGUgQjwuY2hhbmdlcz4gZmlsZSBmb3JtYXQgdmVyc2lvbiBnZW5lcmF0ZWQgYnkgdGhpcyB2ZXJzaW9uIG9mIHRoZSBzb3VyY2UgIgorInBhY2thZ2luZyBzY3JpcHRzLiBJZiB5b3Ugc2V0IHRoaXMgdmFyaWFibGUgdGhlIGNvbnRlbnRzIG9mIHRoZSBCPEZvcm1hdD4gIgorImZpZWxkIGluIHRoZSBCPC5jaGFuZ2VzPiBmaWxlIHdpbGwgY2hhbmdlIHRvby4iCittc2dzdHIgIiIKKyJXZXJzamEgZm9ybWF0dSBwbGlrdSBCPC5jaGFuZ2VzPiB3eWdlbmVyb3dhbmEgcHJ6ZXogdMSZIHdlcnNqxJkgc2tyeXB0w7N3ICIKKyJwcnp5Z290b3d1asSFY3ljaCBwYWtpZXR5IMW6csOzZMWCb3dlLiBVc3Rhd2llbmllIHRlaiB6bWllbm5laiB6bWllbmlhIHLDs3duaWXFvCAiCisiemF3YXJ0b8WbxIcgcG9sYSBCPEZvcm1hdD4gdyBwbGlrdSBCPC5jaGFuZ2VzPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3Vic3R2YXJzLjU6MTI4CisjLCBuby13cmFwCittc2dpZCAiQjxOZXdsaW5lPiwgQjxTcGFjZT4sIEI8VGFiPiIKK21zZ3N0ciAiQjxOZXdsaW5lPiwgQjxTcGFjZT4sIEI8VGFiPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjEzMQorbXNnaWQgIlRoZXNlIHZhcmlhYmxlcyBlYWNoIGhvbGQgdGhlIGNvcnJlc3BvbmRpbmcgY2hhcmFjdGVyLiIKK21zZ3N0ciAiS2HFvGRhIHogdHljaCB6bWllbm55Y2ggemF3aWVyYSBvZHBvd2lhZGFqxIVjeSBqZWogem5hay4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3Vic3R2YXJzLjU6MTMxCisjLCBuby13cmFwCittc2dpZCAiQjxzaGxpYnM6Pkk8ZGVwZW5kZW5jeWZpZWxkPiIKK21zZ3N0ciAiQjxzaGxpYnM6Pkk8cG9sZS16YWxlxbxub8WbY2k+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MTM1Cittc2dpZCAiIgorIlZhcmlhYmxlIHNldHRpbmdzIHdpdGggbmFtZXMgb2YgdGhpcyBmb3JtIGFyZSBnZW5lcmF0ZWQgYnkgQjxkcGtnLXNobGliZGVwcz4uIgorbXNnc3RyICIiCisiVXN0YXdpZW5pYSB6bWllbm55Y2ggdyB0ZWogcG9zdGFjaSBzxIUgZ2VuZXJvd2FuZSBwcnpleiBCPGRwa2ctc2hsaWJkZXBzPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3Vic3R2YXJzLjU6MTM1CisjLCBuby13cmFwCittc2dpZCAiQjxkcGtnOlVwc3RyZWFtLVZlcnNpb24+IgorbXNnc3RyICJCPGRwa2c6VXBzdHJlYW0tVmVyc2lvbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToxMzgKK21zZ2lkICJUaGUgdXBzdHJlYW0gdmVyc2lvbiBvZiBkcGtnLiIKK21zZ3N0ciAiT3J5Z2luYWxuYSB3ZXJzamEgZHBrZywgbmFkYW5hIHByemV6IGF1dG9yw7N3LiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zdWJzdHZhcnMuNToxMzgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGRwa2c6VmVyc2lvbj4iCittc2dzdHIgIkI8ZHBrZzpWZXJzaW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjE0MQorbXNnaWQgIlRoZSBmdWxsIHZlcnNpb24gb2YgZHBrZy4iCittc2dzdHIgIlBlxYJuYSB3ZXJzamEgcHJvZ3JhbXUgZHBrZy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToxNDQKK21zZ2lkICIiCisiSWYgYSB2YXJpYWJsZSBpcyByZWZlcnJlZCB0byBidXQgbm90IGRlZmluZWQgaXQgZ2VuZXJhdGVzIGEgd2FybmluZyBhbmQgYW4gIgorImVtcHR5IHZhbHVlIGlzIGFzc3VtZWQuIgorbXNnc3RyICIiCisiSmXFvGVsaSBqZXN0IG9kd2/FgmFuaWUgZG8gbmllemRlZmluaW93YW5laiB6bWllbm5laiwgdG8gZ2VuZXJvd2FuZSBqZXN0ICIKKyJvc3RyemXFvGVuaWUgaSBwcnp5am1vd2FuYSBqZXN0IHB1c3RhIHdhcnRvxZvEhyB6bWllbm5lai4iCisKKyMuIHR5cGU6IFNICisjOiBkZWItc3Vic3R2YXJzLjU6MTQ1IGRwa2cuMTo2MjcgZHBrZy1hcmNoaXRlY3R1cmUuMToyODQgZHBrZy5jZmcuNToxMgorIzogZHBrZy1idWlsZGZsYWdzLjE6MTIxIGRwa2ctZGlzdGFkZGZpbGUuMTozOSBkcGtnLWRpdmVydC44OjEyMgorIzogZHBrZy1nZW5jaGFuZ2VzLjE6MTM4IGRwa2ctZ2VuY29udHJvbC4xOjEyOCBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTE1CisjOiBkcGtnLXNwbGl0LjE6MjA2IGRwa2ctc3RhdG92ZXJyaWRlLjg6NzQgZHNlbGVjdC5jZmcuNToxMgorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM2MAorIywgbm8td3JhcAorbXNnaWQgIkZJTEVTIgorbXNnc3RyICJQTElLSSIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zdWJzdHZhcnMuNToxNDYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGRlYmlhbi9zdWJzdHZhcnM+IgorbXNnc3RyICJCPGRlYmlhbi9zdWJzdHZhcnM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MTQ5Cittc2dpZCAiTGlzdCBvZiBzdWJzdGl0dXRpb24gdmFyaWFibGVzIGFuZCB2YWx1ZXMuIgorbXNnc3RyICJMaXN0YSB6bWllbm55Y2ggcG9kc3Rhd2lhbmlhIGkgaWNoIHdhcnRvxZtjaS4iCisKKyMuIHR5cGU6IFNICisjOiBkZWItc3Vic3R2YXJzLjU6MTUwIGRwa2cuMTo3ODAgZHBrZy1idWlsZHBhY2thZ2UuMToyNDQgZHBrZy1kZWIuMToyMzgKKyM6IGRwa2ctbmFtZS4xOjg2IGRwa2ctc291cmNlLjE6NzIyIGRwa2ctc3BsaXQuMToxOTkgZHNlbGVjdC4xOjQyOQorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQ4NgorIywgbm8td3JhcAorbXNnaWQgIkJVR1MiCittc2dzdHIgIkLFgcSYRFkiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToxNTMgZHBrZy1zb3VyY2UuMTo3MjUKK21zZ2lkICIiCisiVGhlIHBvaW50IGF0IHdoaWNoIGZpZWxkIG92ZXJyaWRpbmcgb2NjdXJzIGNvbXBhcmVkIHRvIGNlcnRhaW4gc3RhbmRhcmQgIgorIm91dHB1dCBmaWVsZCBzZXR0aW5ncyBpcyByYXRoZXIgY29uZnVzZWQuIgorbXNnc3RyICIiCisiUHVua3QsIHcga3TDs3J5bSBuYXN0xJlwdWplIG5hZHBpc3l3YW5pZSBww7NsIHcgcG9yw7N3bmFuaXUgZG8gcGV3bnljaCAiCisic3RhbmRhcmRvd3ljaCB1c3Rhd2llxYQgcMOzbCB3eWrFm2Npb3d5Y2ggamVzdCBkb8WbxIcgemFnbWF0d2FueS4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToxNjAKK21zZ2lkICIiCisiQjxkcGtnPigxKSwgQjxkcGtnLWdlbmNoYW5nZXM+KDEpLCBCPGRwa2ctZ2VuY29udHJvbD4oMSksIEI8ZHBrZy1zaGxpYmRlcHM+IgorIigxKSwgQjxkcGtnLXNvdXJjZT4oMSkuIgorbXNnc3RyICIiCisiQjxkcGtnPigxKSwgQjxkcGtnLWdlbmNoYW5nZXM+KDEpLCBCPGRwa2ctZ2VuY29udHJvbD4oMSksIEI8ZHBrZy1zaGxpYmRlcHM+IgorIigxKSwgQjxkcGtnLXNvdXJjZT4oMSkuIgorCisjLiB0eXBlOiBTSAorIzogZGViLXN1YnN0dmFycy41OjE2MSBkcGtnLWFyY2hpdGVjdHVyZS4xOjMwMyBkcGtnLmNmZy41OjE5CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyNjYgZHBrZy1jaGVja2J1aWxkZGVwcy4xOjQwIGRwa2ctZGViLjE6MjY1CisjOiBkcGtnLWRpdmVydC44OjEzNSBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjY2IGRwa2ctbmFtZS4xOjEwNAorIzogZHBrZy1xdWVyeS4xOjIxNCBkcGtnLXNjYW5zb3VyY2VzLjE6NzYgZHBrZy1zcGxpdC4xOjIyMworIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo4NyBkcGtnLXZlbmRvci4xOjQ4IGRzZWxlY3QuY2ZnLjU6MTkKKyMsIG5vLXdyYXAKK21zZ2lkICJBVVRIT1IiCittc2dzdHIgIkFVVE9SIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MTYzIGRwa2ctYnVpbGRwYWNrYWdlLjE6MjU5IGRwa2ctZGlzdGFkZGZpbGUuMTo0OQorIzogZHBrZy1kZWIuMToyNjcgZHBrZy1nZW5jaGFuZ2VzLjE6MTUwIGRwa2ctZ2VuY29udHJvbC4xOjE0NAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjEyNSBkcGtnLXNobGliZGVwcy4xOjMzMSBkcGtnLXNvdXJjZS4xOjczMgorIzogZHBrZy1zcGxpdC4xOjIyNQorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAxOTk1LTE5OTYgSWFuIEphY2tzb24iCittc2dzdHIgIkNvcHlyaWdodCBcXChjbyAxOTk1LTE5OTYgSWFuIEphY2tzb24iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToxNjUgZHBrZy1idWlsZHBhY2thZ2UuMToyNjEgZHBrZy1kaXN0YWRkZmlsZS4xOjUxCisjOiBkcGtnLWdlbmNoYW5nZXMuMToxNTIgZHBrZy1nZW5jb250cm9sLjE6MTQ2IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxMjcKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MzMzIGRwa2ctc291cmNlLjE6NzM0IGRwa2ctc3RhdG92ZXJyaWRlLjg6ODkKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAwMCBXaWNoZXJ0IEFra2VybWFuIgorbXNnc3RyICJDb3B5cmlnaHQgXFwoY28gMjAwMCBXaWNoZXJ0IEFra2VybWFuIgorCisjLiB0eXBlOiBUSAorIzogZGViLXN5bWJvbHMuNToyCisjLCBuby13cmFwCittc2dpZCAiZGViLXN5bWJvbHMiCittc2dzdHIgImRlYi1zeW1ib2xzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3ltYm9scy41OjUKK21zZ2lkICJkZWItc3ltYm9scyAtIERlYmlhbidzIGV4dGVuZGVkIHNoYXJlZCBsaWJyYXJ5IGluZm9ybWF0aW9uIGZpbGUiCittc2dzdHIgIiIKKyJkZWItc3ltYm9scyAtIHBsaWsgeiByb3pzemVyem9ueW1pIGluZm9ybWFjamFtaSBvIGJpYmxpb3Rla2FjaCAiCisid3Nww7PFgmR6aWVsb255Y2ggdyBEZWJpYW5pZSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNTo4Cittc2dpZCAic3ltYm9scyIKK21zZ3N0ciAic3ltYm9sZSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNToxMgorbXNnaWQgIiIKKyJUaGUgZm9ybWF0IGZvciBhbiBleHRlbmRlZCBzaGFyZWQgbGlicmFyeSBkZXBlbmRlbmN5IGluZm9ybWF0aW9uIGVudHJ5IGluICIKKyJ0aGVzZSBmaWxlcyBpczoiCittc2dzdHIgIiIKKyJGb3JtYXQgd3Bpc8OzdyBva3JlxZtsYWrEhWN5Y2ggcm96c3plcnpvbmUgemFsZcW8bm/Fm2NpIGJpYmxpb3RlayB3c3DDs8WCZHppZWxvbnljaCAiCisidyB0eWNoIHBsaWthY2ggamVzdCBuYXN0xJlwdWrEhWN5OiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNToxNAorIywgZnV6enkKKyN8IG1zZ2lkICJFPGx0PmxpYnJhcnkgc29uYW1lRTxndD4gRTxsdD5tYWluIGRlcGVuZGVuY3kgdGVtcGxhdGVFPGd0PiIKK21zZ2lkICJJPGxpYnJhcnktc29uYW1lIG1haW4tZGVwZW5kZW5jeS10ZW1wbGF0ZT4iCittc2dzdHIgIkU8bHQ+c29uYW1lIGJpYmxpb3Rla2lFPGd0PiBFPGx0PnN6YWJsb24gZ8WCw7N3bnljaCB6YWxlxbxub8WbY2lFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNToxNgorIywgZnV6enkKKyN8IG1zZ2lkICJbIHwgRTxsdD5hbHRlcm5hdGl2ZSBkZXBlbmRlbmN5IHRlbXBsYXRlRTxndD4gXSIKK21zZ2lkICJbIHwgSTxhbHRlcm5hdGl2ZS1kZXBlbmRlbmN5LXRlbXBsYXRlPiBdIgorbXNnc3RyICJbIHwgRTxsdD5hbHRlcm5hdHl3bnkgc3phYmxvbiB6YWxlxbxub8WbY2lFPGd0PiBdIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3ltYm9scy41OjE4Cittc2dpZCAiWyAuLi4gXSIKK21zZ3N0ciAiWyAuLi4gXSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNToyMAorIywgZnV6enkKKyN8IG1zZ2lkICJbICogRTxsdD5maWVsZC1uYW1lRTxndD46IEU8bHQ+ZmllbGQgdmFsdWVFPGd0PiBdIgorbXNnaWQgIlsgKiBJPGZpZWxkLW5hbWU+OiBJPGZpZWxkLXZhbHVlPiBdIgorbXNnc3RyICJbICogRTxsdD5uYXp3YS1wb2xhRTxndD46IEU8bHQ+d2FydG/Fm8SHIHBvbGFFPGd0PiBdIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3ltYm9scy41OjIzCisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIiIKKyN8ICJbIC4uLiBdXG4iCisjfCAiIEU8bHQ+c3ltYm9sRTxndD4gRTxsdD5taW5pbWFsIHZlcnNpb25FPGd0PlsgRTxsdD5pZCBvZiBkZXBlbmRlbmN5IHRlbXBsYXRlRTxndD4gXVxuIgorbXNnaWQgIiIKKyJbIC4uLiBdXG4iCisiIEk8c3ltYm9sPiBJPG1pbmltYWwtdmVyc2lvbj5bIEk8aWQtb2YtZGVwZW5kZW5jeS10ZW1wbGF0ZT4gXVxuIgorbXNnc3RyICIiCisiWyAuLi4gXVxuIgorIiBFPGx0PnN5bWJvbEU8Z3Q+IEU8bHQ+bWluaW1hbG5hIHdlcnNqYUU8Z3Q+WyBFPGx0PmlkIHN6YWJsb251IHphbGXFvG5vxZtjaUU8Z3Q+IF1cbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNToyOQorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiVGhlIEk8bGlicmFyeSBzb25hbWU+IGlzIGV4YWN0bHkgdGhlIHZhbHVlIG9mIHRoZSBTT05BTUUgZmllbGQgYXMgIgorI3wgImV4cG9ydGVkIGJ5IEI8b2JqZHVtcD4oMSkuIEEgSTxkZXBlbmRlbmN5IHRlbXBsYXRlPiBpcyBhIGRlcGVuZGVuY3kgd2hlcmUgIgorI3wgIkk8I01JTlZFUiM+IGlzIGR5bmFtaWNhbGx5IHJlcGxhY2VkIGVpdGhlciBieSBhIHZlcnNpb24gY2hlY2sgbGlrZSAiCisjfCAiXCIoRTxndD49IEk8bWluaW1hbCB2ZXJzaW9uPilcIiBvciBieSBub3RoaW5nIChpZiBhbiB1bnZlcnNpb25lZCAiCisjfCAiZGVwZW5kZW5jeSBpcyBkZWVtZWQgc3VmZmljaWVudCkuIgorbXNnaWQgIiIKKyJUaGUgSTxsaWJyYXJ5LXNvbmFtZT4gaXMgZXhhY3RseSB0aGUgdmFsdWUgb2YgdGhlIFNPTkFNRSBmaWVsZCBhcyBleHBvcnRlZCAiCisiYnkgQjxvYmpkdW1wPigxKS4gQSBJPGRlcGVuZGVuY3ktdGVtcGxhdGU+IGlzIGEgZGVwZW5kZW5jeSB3aGVyZSBJPCNNSU5WRVIjPiAiCisiaXMgZHluYW1pY2FsbHkgcmVwbGFjZWQgZWl0aGVyIGJ5IGEgdmVyc2lvbiBjaGVjayBsaWtlIFwiKEU8Z3Q+PSBJPG1pbmltYWwtIgorInZlcnNpb24+KVwiIG9yIGJ5IG5vdGhpbmcgKGlmIGFuIHVudmVyc2lvbmVkIGRlcGVuZGVuY3kgaXMgZGVlbWVkICIKKyJzdWZmaWNpZW50KS4iCittc2dzdHIgIiIKKyJJPFdlcnNqYSBiaWJsaW90ZWtpPiBqZXN0IGRva8WCYWRuxIUgd2FydG/Fm2NpxIUgcG9sYSBTT05BTUUsIGphayBqxIUgd3lwaXN1amUgIgorIkI8b2JqZHVtcD4oMSkuIEk8U3phYmxvbiB6YWxlxbxub8WbY2k+IGplc3QgemFsZcW8bm/Fm2NpxIUsIHcga3TDs3JlaiBJPCNNSU5WRVIjPiAiCisiamVzdCBkeW5hbWljem5pZSB6YW1pZW5pYW5lIGFsYm8gcHJ6ZXogemFsZcW8bm/Fm8SHIHdlcnNqaSB3IHBvc3RhY2kgXCIoRTxndD49ICIKKyJJPG1pbmltYWxuYSB3ZXJzamE+KVwiLCBhbGJvIGplc3QgdXN1d2FuZSAoamXFvGVsaSB3eXN0YXJjemEgbmlld2Vyc2pvbm93YW5hICIKKyJ6YWxlxbxub8WbxIcpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNTozNgorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiRWFjaCBleHBvcnRlZCBJPHN5bWJvbD4gKGxpc3RlZCBhcyBJPG5hbWU+QEk8dmVyc2lvbj4sIHdpdGggSTx2ZXJzaW9uPiAiCisjfCAiYmVpbmcgXCJCYXNlXCIgaWYgdGhlIGxpYnJhcnkgaXMgbm90IHZlcnNpb25lZCkgaXMgYXNzb2NpYXRlZCB0byBhICIKKyN8ICJJPG1pbmltYWwgdmVyc2lvbj4gb2YgaXRzIGRlcGVuZGVuY3kgdGVtcGxhdGUgKHRoZSBtYWluIGRlcGVuZGVuY3kgIgorI3wgInRlbXBsYXRlIGlzIHVzZWQgaWYgSTxpZCBvZiBkZXBlbmRlbmN5IHRlbXBsYXRlPiBpcyBub3QgcHJlc2VudCkuIFRoZSAiCisjfCAiZmlyc3QgYWx0ZXJuYXRpdmUgZGVwZW5kZW5jeSB0ZW1wbGF0ZSBpcyBudW1iZXJlZCAxLCB0aGUgc2Vjb25kIG9uZSAyLCAiCisjfCAiZXRjLiIKK21zZ2lkICIiCisiRWFjaCBleHBvcnRlZCBJPHN5bWJvbD4gKGxpc3RlZCBhcyBJPG5hbWU+QEk8dmVyc2lvbj4sIHdpdGggSTx2ZXJzaW9uPiBiZWluZyAiCisiXCJCYXNlXCIgaWYgdGhlIGxpYnJhcnkgaXMgbm90IHZlcnNpb25lZCkgaXMgYXNzb2NpYXRlZCB0byBhIEk8bWluaW1hbC0iCisidmVyc2lvbj4gb2YgaXRzIGRlcGVuZGVuY3kgdGVtcGxhdGUgKHRoZSBtYWluIGRlcGVuZGVuY3kgdGVtcGxhdGUgaXMgdXNlZCBpZiAiCisiSTxpZC1vZi1kZXBlbmRlbmN5LXRlbXBsYXRlPiBpcyBub3QgcHJlc2VudCkuIFRoZSBmaXJzdCBhbHRlcm5hdGl2ZSAiCisiZGVwZW5kZW5jeSB0ZW1wbGF0ZSBpcyBudW1iZXJlZCAxLCB0aGUgc2Vjb25kIG9uZSAyLCBldGMuIgorbXNnc3RyICIiCisiWiBrYcW8ZHltIHd5ZWtzcG9ydG93YW55bSBJPHN5bWJvbGVtPiAod3ltaWVuaW9ueW0gamFrbyBJPG5hendhPkBJPHdlcnNqYT4sICIKKyJnZHppZSBJPHdlcnNqYT4gamVzdCByw7N3bmEgXCJCYXNlXCIsIGplxZtsaSBiaWJsaW90ZWthIG5pZSBqZXN0IHdlcnNqb25vd2FuYSkgIgorImplc3Qgc2tvamFyem9uYSBJPG1pbmltYWxuYSB3ZXJzamE+IHcgc3phYmxvbmllIHphbGXFvG5vxZtjaSAoZ8WCw7N3bnkgc3phYmxvbiAiCisiemFsZcW8bm/Fm2NpIGplc3QgdcW8eXdhbnksIGplxbxlbGkgbmllIHBvZGFubyBJPGlkIHN6YWJsb251IHphbGXFvG5vxZtjaT4pLiAiCisiQWx0ZXJuYXR5d25lIHN6YWJsb255IHphbGXFvG5vxZtjaSBzxIUga29sZWpubyBudW1lcm93YW5lLCBwaWVyd3N6eSBtYSBudW1lciAxLCAiCisiZHJ1Z2kgLSAyLCBpdGQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3ltYm9scy41OjQzCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJFYWNoIGVudHJ5IGZvciBhIGxpYnJhcnkgY2FuIGFsc28gaGF2ZSBzb21lIGZpZWxkcyBvZiBtZXRhLWluZm9ybWF0aW9uLiAgIgorI3wgIlRob3NlIGZpZWxkcyBhcmUgc3RvcmVkIG9uIGxpbmVzIHN0YXJ0aW5nIHdpdGggYW4gYXN0ZXJpc2suIEN1cnJlbnRseSwgIgorI3wgInRoZSBvbmx5IHZhbGlkIGZpZWxkIGlzIEk8QnVpbGQtRGVwZW5kcy1QYWNrYWdlPiwgaXQgaW5kaWNhdGVzIHRoZSBuYW1lICIKKyN8ICJvZiB0aGUgXCItZGV2XCIgcGFja2FnZSBhc3NvY2lhdGVkIHRvIHRoZSBsaWJyYXJ5IGFuZCBpcyB1c2VkIGJ5IGRwa2ctIgorI3wgInNobGliZGVwcyB0byBtYWtlIHN1cmUgdGhhdCB0aGUgZGVwZW5kZW5jeSBnZW5lcmF0ZWQgaXMgYXQgbGVhc3QgYXMgIgorI3wgInN0cmljdCBhcyB0aGUgY29ycmVzcG9uZGluZyBidWlsZCBkZXBlbmRlbmN5LiIKK21zZ2lkICIiCisiRWFjaCBlbnRyeSBmb3IgYSBsaWJyYXJ5IGNhbiBhbHNvIGhhdmUgc29tZSBmaWVsZHMgb2YgbWV0YS1pbmZvcm1hdGlvbi4gICIKKyJUaG9zZSBmaWVsZHMgYXJlIHN0b3JlZCBvbiBsaW5lcyBzdGFydGluZyB3aXRoIGFuIGFzdGVyaXNrLiBDdXJyZW50bHksIHRoZSAiCisib25seSB2YWxpZCBmaWVsZCBpcyBJPEJ1aWxkLURlcGVuZHMtUGFja2FnZT4sIGl0IGluZGljYXRlcyB0aGUgbmFtZSBvZiB0aGUgIgorIlwiLWRldlwiIHBhY2thZ2UgYXNzb2NpYXRlZCB0byB0aGUgbGlicmFyeSBhbmQgaXMgdXNlZCBieSBCPGRwa2ctc2hsaWJkZXBzPiAiCisidG8gbWFrZSBzdXJlIHRoYXQgdGhlIGRlcGVuZGVuY3kgZ2VuZXJhdGVkIGlzIGF0IGxlYXN0IGFzIHN0cmljdCBhcyB0aGUgIgorImNvcnJlc3BvbmRpbmcgYnVpbGQgZGVwZW5kZW5jeS4iCittc2dzdHIgIiIKKyJLYcW8ZHkgd3BpcyBkb3R5Y3rEhWN5IGJpYmxpb3Rla2kgbW/FvGUgbWllxIcgdGFrxbxlIHBhcsSZIHDDs2wgemF3aWVyYWrEhWN5Y2ggIgorIm1ldGFkYW5lLiBQb2xhIHRlIHPEhSBwcnplY2hvd3l3YW5lIHcgbGluaWFjaCB6YWN6eW5hasSFY3ljaCBzacSZIG9kIHpuYWt1ICIKKyJnd2lhemRraS4gT2JlY25pZSwgamVkeW55bSBwb3ByYXdueW0gcG9sZW0gamVzdCBJPEJ1aWxkLURlcGVuZHMtUGFja2FnZT4sICIKKyJrdMOzcmUgb2tyZcWbbGEgbmF6d8SZIHBha2lldHUgXCItZGV2XCIgc2tvamFyem9uZWdvIHogYmlibGlvdGVrxIUgaSB1xbx5d2FuZWdvICIKKyJwcnpleiBkcGtnLXNobGliZGVwcyBkbyB1cGV3bmllbmlhIHNpxJksIMW8ZSB3eWdlbmVyb3dhbmEgemFsZcW8bm/Fm8SHIGplc3QgY28gIgorIm5ham1uaWVqIHRhayByZXN0cnlrY3lqbmEgamFrIG9kcG93aWFkYWrEhWNhIGplaiB6YWxlxbxub8WbxIcgY3phc3UgYnVkb3dhbmlhLiIKKworIy4gdHlwZTogU1MKKyM6IGRlYi1zeW1ib2xzLjU6NDQKKyMsIG5vLXdyYXAKK21zZ2lkICJTaW1wbGUgc3ltYm9scyBmaWxlIgorbXNnc3RyICJQcm9zdHkgcGxpayBzeW1ib2xpIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3ltYm9scy41OjUwCisjLCBuby13cmFwCittc2dpZCAiIgorImxpYmZ0cC5zby4zIGxpYmZ0cDMgI01JTlZFUiNcbiIKKyIgRGVmYXVsdE5ldGJ1ZkBCYXNlIDMuMS0xLTZcbiIKKyIgRnRwQWNjZXNzQEJhc2UgMy4xLTEtNlxuIgorIiBbLi4uXVxuIgorbXNnc3RyICIiCisibGliZnRwLnNvLjMgbGliZnRwMyAjTUlOVkVSI1xuIgorIiBEZWZhdWx0TmV0YnVmQEJhc2UgMy4xLTEtNlxuIgorIiBGdHBBY2Nlc3NAQmFzZSAzLjEtMS02XG4iCisiIFsuLi5dXG4iCisKKyMuIHR5cGU6IFNTCisjOiBkZWItc3ltYm9scy41OjUwCisjLCBuby13cmFwCittc2dpZCAiQWR2YW5jZWQgc3ltYm9scyBmaWxlIgorbXNnc3RyICJaYWF3YW5zb3dhbnkgcGxpayBzeW1ib2xpIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3ltYm9scy41OjUzCittc2dpZCAibGliR0wuc28uMSBsaWJnbDEiCittc2dzdHIgImxpYkdMLnNvLjEgbGliZ2wxIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3ltYm9scy41OjU1Cittc2dpZCAifCBsaWJnbDEtbWVzYS1nbHggI01JTlZFUiMiCittc2dzdHIgInwgbGliZ2wxLW1lc2EtZ2x4ICNNSU5WRVIjIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3ltYm9scy41OjYxCisjLCBuby13cmFwCittc2dpZCAiIgorIiogQnVpbGQtRGVwZW5kcy1QYWNrYWdlOiBsaWJnbDEtbWVzYS1kZXZcbiIKKyIgcHVibGljR2xTeW1ib2xAQmFzZSA2LjMtMVxuIgorIiBbLi4uXVxuIgorIiBpbXBsZW1lbnRhdGlvblNwZWNpZmljU3ltYm9sQEJhc2UgNi41LjItNyAxXG4iCisiIFsuLi5dXG4iCittc2dzdHIgIiIKKyIqIEJ1aWxkLURlcGVuZHMtUGFja2FnZTogbGliZ2wxLW1lc2EtZGV2XG4iCisiIHB1YmxpY0dsU3ltYm9sQEJhc2UgNi4zLTFcbiIKKyIgWy4uLl1cbiIKKyIgaW1wbGVtZW50YXRpb25TcGVjaWZpY1N5bWJvbEBCYXNlIDYuNS4yLTcgMVxuIgorIiBbLi4uXVxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3ltYm9scy41OjYzCittc2dpZCAiQjxodHRwOi8vd2lraS5kZWJpYW4ub3JnL1Byb2plY3RzL0ltcHJvdmVkRHBrZ1NobGliZGVwcz4iCittc2dzdHIgIkI8aHR0cDovL3dpa2kuZGViaWFuLm9yZy9Qcm9qZWN0cy9JbXByb3ZlZERwa2dTaGxpYmRlcHM+IgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3ltYm9scy41OjY1Cittc2dpZCAiQjxkcGtnLXNobGliZGVwcz4oMSksIEI8ZHBrZy1nZW5zeW1ib2xzPigxKS4iCittc2dzdHIgIkI8ZHBrZy1zaGxpYmRlcHM+KDEpLCBCPGRwa2ctZ2Vuc3ltYm9scz4oMSkuIgorCisjLiB0eXBlOiBUSAorIzogZGViLXRyaWdnZXJzLjU6MQorIywgbm8td3JhcAorbXNnaWQgImRlYi10cmlnZ2VycyIKK21zZ3N0ciAiZGViLXRyaWdnZXJzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdHJpZ2dlcnMuNTo0Cittc2dpZCAiZGViLXRyaWdnZXJzIC0gcGFja2FnZSB0cmlnZ2VycyIKK21zZ3N0ciAiZGViLXRyaWdnZXJzIC0gd3l6d2FsYWN6ZSBkbGEgcGFraWV0w7N3IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdHJpZ2dlcnMuNTo3Cittc2dpZCAidHJpZ2dlcnMiCittc2dzdHIgInd5endhbGFjemUiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi10cmlnZ2Vycy41OjEyCittc2dpZCAiIgorIkEgcGFja2FnZSBkZWNsYXJlcyBpdHMgcmVsYXRpb25zaGlwIHRvIHNvbWUgdHJpZ2dlcihzKSBieSBpbmNsdWRpbmcgYSAiCisiSTx0cmlnZ2Vycz4gZmlsZSBpbiBpdHMgY29udHJvbCBhcmNoaXZlIChpLmUuIEk8REVCSUFOL3RyaWdnZXJzPiBkdXJpbmcgIgorInBhY2thZ2UgY3JlYXRpb24pLiIKK21zZ3N0ciAiIgorIlBha2lldCBkZWtsYXJ1amUgc3fDs2ogendpxIV6ZWsgeiBwZXdueW0gd3l6d2FsYWN6ZW0gbHViIHd5endhbGFjemFtaSwgIgorInphxYLEhWN6YWrEhWMgcGxpayBJPHRyaWdnZXJzPiB3YXJ1bmvDs3cgdXJ1Y2hvbWllbmlhIHd5endhbGFjenkgdyBzd29pbSAiCisiYXJjaGl3dW0ga29udHJvbG55bSAoY3p5bGkgSTxERUJJQU4vdHJpZ2dlcnM+IHBvZGN6YXMgdHdvcnplbmlhIHBha2lldHUpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXRyaWdnZXJzLjU6MTYKK21zZ2lkICIiCisiVGhpcyBmaWxlIGNvbnRhaW5zIGRpcmVjdGl2ZXMsIG9uZSBwZXIgbGluZS4gTGVhZGluZyBhbmQgdHJhaWxpbmcgd2hpdGVzcGFjZSAiCisiYW5kIGV2ZXJ5dGhpbmcgYWZ0ZXIgdGhlIGZpcnN0IEI8Iz4gb24gYW55IGxpbmUgd2lsbCBiZSB0cmltbWVkLCBhbmQgZW1wdHkgIgorImxpbmVzIHdpbGwgYmUgaWdub3JlZC4iCittc2dzdHIgIiIKKyJUZW4gcGxpayB6YXdpZXJhIGR5cmVrdHl3eSwgcG8gamVkbmVqIHcgbGluaWkuIFBvY3rEhXRrb3dlIGkga2/FhGNvd2Ugc3BhY2plICIKKyJvcmF6IHdzenlzdGtpZSB6bmFraSBwbyBwaWVyd3N6eW0gQjwjPiB3IGxpbmlhY2ggc8SFIHVzdXdhbmUsIHphxZsgcHVzdGUgbGluaWUgIgorInPEhSBpZ25vcm93YW5lLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXRyaWdnZXJzLjU6MTgKK21zZ2lkICJUaGUgdHJpZ2dlciBjb250cm9sIGRpcmVjdGl2ZXMgY3VycmVudGx5IHN1cHBvcnRlZCBhcmU6IgorbXNnc3RyICJBa3R1YWxuaWUgd3NwaWVyYW5lIGR5cmVrdHl3eSBrb250cm9sbmUgd3l6d2FsYWN6eToiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi10cmlnZ2Vycy41OjIyCittc2dpZCAiQjxpbnRlcmVzdD4gSTx0cmlnZ2VyLW5hbWU+IgorbXNnc3RyICJCPGludGVyZXN0PiBJPG5hendhLXd5endhbGFjemE+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdHJpZ2dlcnMuNToyNgorIywgZnV6enkKKyN8IG1zZ2lkICJCPGludGVyZXN0PiBJPHRyaWdnZXItbmFtZT4iCittc2dpZCAiQjxpbnRlcmVzdC1ub2F3YWl0PiBJPHRyaWdnZXItbmFtZT4iCittc2dzdHIgIkI8aW50ZXJlc3Q+IEk8bmF6d2Etd3l6d2FsYWN6YT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi10cmlnZ2Vycy41OjMzCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJTcGVjaWZpZXMgdGhhdCB0aGUgcGFja2FnZSBpcyBpbnRlcmVzdGVkIGluIHRoZSBuYW1lZCB0cmlnZ2VyLiBBbGwgIgorI3wgInRyaWdnZXJzIGluIHdoaWNoIGEgcGFja2FnZSBpcyBpbnRlcmVzdGVkIG11c3QgYmUgbGlzdGVkIHVzaW5nIHRoaXMgIgorI3wgImRpcmVjdGl2ZSBpbiB0aGUgdHJpZ2dlcnMgY29udHJvbCBmaWxlLiIKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRoYXQgdGhlIHBhY2thZ2UgaXMgaW50ZXJlc3RlZCBpbiB0aGUgbmFtZWQgdHJpZ2dlci4gQWxsIHRyaWdnZXJzICIKKyJpbiB3aGljaCBhIHBhY2thZ2UgaXMgaW50ZXJlc3RlZCBtdXN0IGJlIGxpc3RlZCB1c2luZyB0aGlzIGRpcmVjdGl2ZSBpbiB0aGUgIgorInRyaWdnZXJzIGNvbnRyb2wgZmlsZS4gVGhlIFwibm9hd2FpdFwiIHZhcmlhbnQgZG9lcyBub3QgcHV0IHRoZSB0cmlnZ2VyaW5nICIKKyJwYWNrYWdlcyBpbiB0cmlnZ2Vycy1hd2FpdGVkIHN0YXRlLiBUaGlzIHNob3VsZCBiZSB1c2VkIHdoZW4gdGhlICIKKyJmdW5jdGlvbmFsaXR5IHByb3ZpZGVkIGJ5IHRoZSB0cmlnZ2VyIGlzIG5vdCBjcnVjaWFsLiIKK21zZ3N0ciAiIgorIk9rcmXFm2xhLCDFvGUgcGFraWV0IGLEmWR6aWUgdXJ1Y2hhbWlhxYIgbmF6d2FueSB3eXp3YWxhY3ouIFdzenlzdGtpZSB3eXp3YWxhY3plICIKKyJpbnRlcmVzdWrEhWNlIGRsYSBwYWtpZXR1IG11c3rEhSBiecSHIHd5bWllbmlvbmUgeiB1xbx5Y2llbSB0ZWogZHlyZWt0eXd5IHcgIgorInBsaWt1IGtvbnRyb2xueW0gdHJpZ2dlcnMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdHJpZ2dlcnMuNTozNworbXNnaWQgIkI8YWN0aXZhdGU+IEk8dHJpZ2dlci1uYW1lPiIKK21zZ3N0ciAiQjxhY3RpdmF0ZT4gSTxuYXp3YS13eXp3YWxhY3phPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXRyaWdnZXJzLjU6NDEKKyMsIGZ1enp5CisjfCBtc2dpZCAiQjxhY3RpdmF0ZT4gSTx0cmlnZ2VyLW5hbWU+IgorbXNnaWQgIkI8YWN0aXZhdGUtbm9hd2FpdD4gSTx0cmlnZ2VyLW5hbWU+IgorbXNnc3RyICJCPGFjdGl2YXRlPiBJPG5hendhLXd5endhbGFjemE+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdHJpZ2dlcnMuNTo1MAorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiQXJyYW5nZXMgdGhhdCBjaGFuZ2VzIHRvIHRoaXMgcGFja2FnZSdzIHN0YXRlIHdpbGwgYWN0aXZhdGUgdGhlIHNwZWNpZmllZCAiCisjfCAidHJpZ2dlci4gVGhlIHRyaWdnZXIgd2lsbCBiZSBhY3RpdmF0ZWQgYXQgdGhlIHN0YXJ0IG9mIHRoZSBmb2xsb3dpbmcgIgorI3wgIm9wZXJhdGlvbnM6IHVucGFjaywgY29uZmlndXJlLCByZW1vdmUgKGluY2x1ZGluZyBmb3IgdGhlIGJlbmVmaXQgb2YgYSAiCisjfCAiY29uZmxpY3RpbmcgcGFja2FnZSksIHB1cmdlIGFuZCBkZWNvbmZpZ3VyZS4iCittc2dpZCAiIgorIkFycmFuZ2VzIHRoYXQgY2hhbmdlcyB0byB0aGlzIHBhY2thZ2UncyBzdGF0ZSB3aWxsIGFjdGl2YXRlIHRoZSBzcGVjaWZpZWQgIgorInRyaWdnZXIuIFRoZSB0cmlnZ2VyIHdpbGwgYmUgYWN0aXZhdGVkIGF0IHRoZSBzdGFydCBvZiB0aGUgZm9sbG93aW5nICIKKyJvcGVyYXRpb25zOiB1bnBhY2ssIGNvbmZpZ3VyZSwgcmVtb3ZlIChpbmNsdWRpbmcgZm9yIHRoZSBiZW5lZml0IG9mIGEgIgorImNvbmZsaWN0aW5nIHBhY2thZ2UpLCBwdXJnZSBhbmQgZGVjb25maWd1cmUuICBUaGUgXCJub2F3YWl0XCIgdmFyaWFudCBkb2VzICIKKyJub3QgcHV0IHRoZSB0cmlnZ2VyaW5nIHBhY2thZ2VzIGluIHRyaWdnZXJzLWF3YWl0ZWQgc3RhdGUuIFRoaXMgc2hvdWxkIGJlICIKKyJ1c2VkIHdoZW4gdGhlIGZ1bmN0aW9uYWxpdHkgcHJvdmlkZWQgYnkgdGhlIHRyaWdnZXIgaXMgbm90IGNydWNpYWwuIgorbXNnc3RyICIiCisiUG93b2R1amUsIMW8ZSB6bWlhbnkgc3RhbnUgcGFraWV0dSBha3R5d3VqxIUgb2tyZcWbbG9ueSB3eXp3YWxhY3ouIEFrdHl3YWNqYSAiCisid3l6d2FsYWN6YSBuYXN0xIVwaSBuYSBwb2N6xIV0a3UgbmFzdMSZcHVqxIVjeWNoIG9wZXJhY2ppOiB1bnBhY2ssIGNvbmZpZ3VyZSwgIgorInJlbW92ZSAoZG9kYW55IGRvIG9ic8WCdWdpIHBha2lldMOzdyBixJlkxIVjeWNoIHcga29uZmxpa2NpZSksIHB1cmdlIGkgIgorImRlY29uZmlndXJlLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXRyaWdnZXJzLjU6NTgKK21zZ2lkICIiCisiSWYgdGhpcyBwYWNrYWdlIGRpc2FwcGVhcnMgZHVyaW5nIHRoZSB1bnBhY2tpbmcgb2YgYW5vdGhlciBwYWNrYWdlIHRoZSAiCisidHJpZ2dlciB3aWxsIGJlIGFjdGl2YXRlZCB3aGVuIHRoZSBkaXNhcHBlYXJhbmNlIGlzIG5vdGVkIHRvd2FyZHMgdGhlIGVuZCBvZiAiCisidGhlIHVucGFjay4gVHJpZ2dlciBwcm9jZXNzaW5nLCBhbmQgdHJhbnNpdGlvbiBmcm9tIHRyaWdnZXJzLWF3YWl0ZWQgdG8gIgorImluc3RhbGxlZCwgZG9lcyBub3QgY2F1c2UgYWN0aXZhdGlvbnMuICBJbiB0aGUgY2FzZSBvZiB1bnBhY2ssIHRyaWdnZXJzICIKKyJtZW50aW9uZWQgaW4gYm90aCB0aGUgb2xkIGFuZCBuZXcgdmVyc2lvbnMgb2YgdGhlIHBhY2thZ2Ugd2lsbCBiZSBhY3RpdmF0ZWQuIgorbXNnc3RyICIiCisiSmXFm2xpIHBha2lldCB6bmlrbmllIHBvZGN6YXMgcm96cGFrb3d5d2FuaWEgaW5uZWdvIHBha2lldHUsIHd5endhbGFjeiAiCisiem9zdGFuaWUgYWt0eXdvd2FueSBnZHkgem5pa25pxJljaWUgem9zdGFuaWUgb2Rub3Rvd2FuZSBwb2Qga29uaWVjIG9wZXJhY2ppICIKKyJ1bnBhY2suIFByemV0d2FyemFuaWUgd3l6d2FsYWN6eSBvcmF6IHByemVqxZtjaWUgcGFraWV0dSB6ZSBzdGFudSAiCisiXCJ3eXp3YWxhY3plLW9jemVrdWrEhWNlXCIgKHRyaWdnZXJzLWF3YWl0ZWQpIGRvIHN0YW51IFwiemFpbnN0YWxvd2FueVwiIG5pZSAiCisicG93b2R1asSFIGFrdHl3YWNqaSB3eXp3YWxhY3p5LiBXIHByenlwYWRrdSByb3pwYWtvd3l3YW5pYSBha3R5d293YW5lIHpvc3RhbsSFICIKKyJ3eXp3YWxhY3plIHd5bWllbmlvbmUgemFyw7N3bm8gdyBzdGFyZWogamFrIGkgdyBub3dlaiB3ZXJzamkgcGFraWV0dS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi10cmlnZ2Vycy41OjYxCittc2dpZCAiIgorIlVua25vd24gZGlyZWN0aXZlcyBhcmUgYW4gZXJyb3Igd2hpY2ggd2lsbCBwcmV2ZW50IGluc3RhbGxhdGlvbiBvZiB0aGUgIgorInBhY2thZ2UuIgorbXNnc3RyICJOaWV6bmFuZSBkeXJla3R5d3kgc8SFIGLFgsSZZGFtaSB1bmllbW/FvGxpd2lhasSFY3ltaSBpbnN0YWxhY2rEmSBwYWtpZXR1LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXRyaWdnZXJzLjU6NjYKK21zZ2lkICIiCisiVGhlIFwiLW5vYXdhaXRcIiB2YXJpYW50cyBhcmUgb25seSBzdXBwb3J0ZWQgYnkgZHBrZyAxLjE2LjEgb3IgbmV3ZXIsIGFuZCAiCisid2lsbCBsZWFkIHRvIGVycm9ycyBpZiB1c2VkIHdpdGggYW4gb2xkZXIgZHBrZy4gSXQgaXMgdGh1cyByZWNvbW1lbmRlZCB0byAiCisiYWRkIGEgXCJQcmUtRGVwZW5kczogZHBrZyAoRTxndD49IDEuMTYuMSlcIiB0byBhbnkgcGFja2FnZSB0aGF0IHdpc2ggdG8gdXNlICIKKyJ0aG9zZSBkaXJlY3RpdmVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdHJpZ2dlcnMuNTo3MAorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiQjxkcGtnLXRyaWdnZXI+KDEpLCBCPGRwa2c+KDEpLCBCPC91c3Ivc2hhcmUvZG9jL2Rwa2cvdHJpZ2dlcnMudHh0Lmd6Pi4iCittc2dpZCAiIgorIkI8ZHBrZy10cmlnZ2VyPigxKSwgQjxkcGtnPigxKSwgQjwvdXNyL3NoYXJlL2RvYy9kcGtnLWRldi90cmlnZ2Vycy50eHQuZ3o+LiIKK21zZ3N0ciAiIgorIkI8ZHBrZy10cmlnZ2VyPigxKSwgQjxkcGtnPigxKSwgQjwvdXNyL3NoYXJlL2RvYy9kcGtnL3RyaWdnZXJzLnR4dC5nej4uIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy4xOjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnIgorbXNnc3RyICJkcGtnIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy4xOjEgZHBrZy5jZmcuNToxIGRwa2ctYnVpbGRmbGFncy4xOjEgZHBrZy1kZWIuMToxCisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjEgZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMToxIGRwa2ctcXVlcnkuMToxCisjOiBkcGtnLXRyaWdnZXIuMToxIGRwa2ctdmVuZG9yLjE6MSBkc2VsZWN0LmNmZy41OjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnIHN1aXRlIgorbXNnc3RyICJ1xbx5dGtpIGRwa2ciCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0Cittc2dpZCAiZHBrZyAtIHBhY2thZ2UgbWFuYWdlciBmb3IgRGViaWFuIgorbXNnc3RyICJkcGtnIC0gbWVuZWTFvGVyIHBha2lldMOzdyBEZWJpYW5hIgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6OAorIywgZnV6enkKKyN8IG1zZ2lkICJCPGRwa2c+IFtJPG9wdGlvbnM+XSBJPGFjdGlvbj4iCittc2dpZCAiQjxkcGtnPiBbSTxvcHRpb24+Li4uXSBJPGFjdGlvbj4iCittc2dzdHIgIkI8ZHBrZz4gW0k8b3BjamU+XSBJPGR6aWHFgmFuaWU+IgorCisjLiB0eXBlOiBTSAorIzogZHBrZy4xOjkKKyMsIG5vLXdyYXAKK21zZ2lkICJXQVJOSU5HIgorbXNnc3RyICJVV0FHQSIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjEzCittc2dpZCAiIgorIlRoaXMgbWFudWFsIGlzIGludGVuZGVkIGZvciB1c2VycyB3aXNoaW5nIHRvIHVuZGVyc3RhbmQgQjxkcGtnPidzIGNvbW1hbmQgIgorImxpbmUgb3B0aW9ucyBhbmQgcGFja2FnZSBzdGF0ZXMgaW4gbW9yZSBkZXRhaWwgdGhhbiB0aGF0IHByb3ZpZGVkIGJ5IEI8ZHBrZyAiCisiLS1oZWxwPi4iCittc2dzdHIgIiIKKyJUZW4gcG9kcsSZY3puaWsgamVzdCBwcnplem5hY3pvbnkgZGxhIHXFvHl0a293bmlrw7N3LCBrdMOzcnp5IGNoY8SFIHBvem5hxIcgb3BjamUgIgorInByb2dyYW11IEI8ZHBrZz4gb3JheiBjaGPEhSBkb3dpZWR6aWXEhyBzacSZIG8gcGFraWV0YWNoIHdpxJljZWogbmnFvCBwb2RhamUgdG8gIgorIkI8ZHBrZyAtLWhlbHA+LiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjE4Cittc2dpZCAiIgorIkl0IHNob3VsZCBJPG5vdD4gYmUgdXNlZCBieSBwYWNrYWdlIG1haW50YWluZXJzIHdpc2hpbmcgdG8gdW5kZXJzdGFuZCBob3cgIgorIkI8ZHBrZz4gd2lsbCBpbnN0YWxsIHRoZWlyIHBhY2thZ2VzLiBUaGUgZGVzY3JpcHRpb25zIG9mIHdoYXQgQjxkcGtnPiBkb2VzICIKKyJ3aGVuIGluc3RhbGxpbmcgYW5kIHJlbW92aW5nIHBhY2thZ2VzIGFyZSBwYXJ0aWN1bGFybHkgaW5hZGVxdWF0ZS4iCittc2dzdHIgIiIKKyJUZW4gcG9kcsSZY3puaWsgSTxuaWU+IHd5amHFm25pYSB0ZWNobmljem55Y2ggc3pjemVnw7PFgsOzdywgbnAuIHcgamFraSBzcG9zw7NiICIKKyJCPGRwa2c+IGluc3RhbHVqZSBsdWIgdXN1d2Egc3dvamUgcGFraWV0eSwgZ2R5xbwgamVzdCB0byBkbGEgcHJ6ZWNpxJl0bmVnbyAiCisidcW8eXRrb3duaWthIHp1cGXFgm5pZSBuaWVpc3RvdG5lLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjI2Cittc2dpZCAiIgorIkI8ZHBrZz4gaXMgYSB0b29sIHRvIGluc3RhbGwsIGJ1aWxkLCByZW1vdmUgYW5kIG1hbmFnZSBEZWJpYW4gcGFja2FnZXMuIFRoZSAiCisicHJpbWFyeSBhbmQgbW9yZSB1c2VyLWZyaWVuZGx5IGZyb250LWVuZCBmb3IgQjxkcGtnPiBpcyBCPGFwdGl0dWRlPigxKS4gIgorIkI8ZHBrZz4gaXRzZWxmIGlzIGNvbnRyb2xsZWQgZW50aXJlbHkgdmlhIGNvbW1hbmQgbGluZSBwYXJhbWV0ZXJzLCB3aGljaCAiCisiY29uc2lzdCBvZiBleGFjdGx5IG9uZSBhY3Rpb24gYW5kIHplcm8gb3IgbW9yZSBvcHRpb25zLiBUaGUgYWN0aW9uLXBhcmFtZXRlciAiCisidGVsbHMgQjxkcGtnPiB3aGF0IHRvIGRvIGFuZCBvcHRpb25zIGNvbnRyb2wgdGhlIGJlaGF2aW9yIG9mIHRoZSBhY3Rpb24gaW4gIgorInNvbWUgd2F5LiIKK21zZ3N0ciAiIgorIkI8ZHBrZz4gamVzdCBuYXJ6xJlkemllbSBkbyBpbnN0YWxvd2FuaWEsIHR3b3J6ZW5pYSwgdXN1d2FuaWEgcGFraWV0w7N3ICIKKyJzeXN0ZW11IERlYmlhbiBvcmF6IGRvIHphcnrEhWR6YW5pYSBuaW1pLiBQb2RzdGF3b3d5bSBpIGJhcmR6aWVqIHByenlqYXpueW0gIgorInXFvHl0a293bmlrb3dpIG5hcnrEmWR6aWVtLW5ha8WCYWRrxIUgQjxkcGtnPiBqZXN0IEI8YXB0aXR1ZGU+KDEpLiBTYW0gQjxkcGtnPiAiCisiamVzdCBvYnPFgnVnaXdhbnkgeiBsaW5paSBrb21lbmQsIHByemV6IHBvZGFuaWUgZG9rxYJhZG5pZSBqZWRuZWdvIGR6aWHFgmFuaWEgIgorIm9yYXogZG9kYXRrb3d5Y2gsIG5pZW9ib3dpxIV6a293eWNoIG9wY2ppLiBQYXJhbWV0ciBkemlhxYJhbmllIG9rcmXFm2xhLCBjbyAiCisiQjxkcGtnPiBtYSB6cm9iacSHLCBhIGRvZGF0a293ZSBvcGNqZSBtb2R5ZmlrdWrEhSB0byBkemlhxYJhbmllLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjMzCittc2dpZCAiIgorIkI8ZHBrZz4gY2FuIGFsc28gYmUgdXNlZCBhcyBhIGZyb250LWVuZCB0byBCPGRwa2ctZGViPigxKSBhbmQgQjxkcGtnLXF1ZXJ5PiIKKyIoMSkuIFRoZSBsaXN0IG9mIHN1cHBvcnRlZCBhY3Rpb25zIGNhbiBiZSBmb3VuZCBsYXRlciBvbiBpbiB0aGUgQjxBQ1RJT05TPiAiCisic2VjdGlvbi4gSWYgYW55IHN1Y2ggYWN0aW9uIGlzIGVuY291bnRlcmVkIEI8ZHBrZz4ganVzdCBydW5zIEI8ZHBrZy1kZWI+IG9yICIKKyJCPGRwa2ctcXVlcnk+IHdpdGggdGhlIHBhcmFtZXRlcnMgZ2l2ZW4gdG8gaXQsIGJ1dCBubyBzcGVjaWZpYyBvcHRpb25zIGFyZSAiCisiY3VycmVudGx5IHBhc3NlZCB0byB0aGVtLCB0byB1c2UgYW55IHN1Y2ggb3B0aW9uIHRoZSBiYWNrLWVuZHMgbmVlZCB0byBiZSAiCisiY2FsbGVkIGRpcmVjdGx5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy4xOjM0CisjLCBuby13cmFwCittc2dpZCAiSU5GT1JNQVRJT04gQUJPVVQgUEFDS0FHRVMiCittc2dzdHIgIklORk9STUFDSkUgTyBQQUtJRVRBQ0giCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTozOQorbXNnaWQgIiIKKyJCPGRwa2c+IG1haW50YWlucyBzb21lIHVzYWJsZSBpbmZvcm1hdGlvbiBhYm91dCBhdmFpbGFibGUgcGFja2FnZXMuIFRoZSAiCisiaW5mb3JtYXRpb24gaXMgZGl2aWRlZCBpbiB0aHJlZSBjbGFzc2VzOiBCPHN0YXRlcz4sIEI8c2VsZWN0aW9uIHN0YXRlcz4gYW5kICIKKyJCPGZsYWdzPi4gVGhlc2UgdmFsdWVzIGFyZSBpbnRlbmRlZCB0byBiZSBjaGFuZ2VkIG1haW5seSB3aXRoIEI8ZHNlbGVjdD4uIgorbXNnc3RyICIiCisiQjxkcGtnPiB6YXJ6xIVkemEgaW5mb3JtYWNqYW1pIG8gZG9zdMSZcG55Y2ggcGFraWV0YWNoLiBJbmZvcm1hY2plIHpvc3RhxYJ5ICIKKyJwb2R6aWVsb25lIG5hIHRyenkga2xhc3k6IEI8c3RhbiBiaWXFvMSFY3k+LCBCPHN0YW4gd3lib3J1PiBvcmF6IEI8ZmxhZ8SZPi4gIgorIldhcnRvxZtjaSB0ZSBtb2fEhSB6b3N0YcSHIHptaWVuaW9uZSB6YSBwb21vY8SFIHByb2dyYW11IEI8ZHNlbGVjdD4uIgorCisjLiB0eXBlOiBTUworIzogZHBrZy4xOjM5CisjLCBuby13cmFwCittc2dpZCAiUEFDS0FHRSBTVEFURVMiCittc2dzdHIgIlNUQU4gQklFxbvEhENZIFBBS0lFVMOTVyIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo0MAorIywgbm8td3JhcAorbXNnaWQgIkI8bm90LWluc3RhbGxlZD4iCittc2dzdHIgIkI8bm90LWluc3RhbGxlZCAobmllemFpbnN0YWxvd2FueSk+IgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDMKK21zZ2lkICJUaGUgcGFja2FnZSBpcyBub3QgaW5zdGFsbGVkIG9uIHlvdXIgc3lzdGVtLiIKK21zZ3N0ciAiUGFraWV0IG5pZSBqZXN0IHphaW5zdGFsb3dhbnkgdyBzeXN0ZW1pZS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NDMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGNvbmZpZy1maWxlcz4iCittc2dzdHIgIkI8Y29uZmlnLWZpbGVzIChwbGlraS1rb25maWd1cmFjeWpuZSk+IgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDYKK21zZ2lkICJPbmx5IHRoZSBjb25maWd1cmF0aW9uIGZpbGVzIG9mIHRoZSBwYWNrYWdlIGV4aXN0IG9uIHRoZSBzeXN0ZW0uIgorbXNnc3RyICJUeWxrbyBwbGlraSBrb25maWd1cmFjeWpuZSBwYWtpZXR1IHpvc3RhxYJ5IHcgc3lzdGVtaWUuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjQ2CisjLCBuby13cmFwCittc2dpZCAiQjxoYWxmLWluc3RhbGxlZD4iCittc2dzdHIgIkI8aGFsZi1pbnN0YWxsZWQgKHdww7PFgnphaW5zdGFsb3dhbnkpPiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjUwCittc2dpZCAiIgorIlRoZSBpbnN0YWxsYXRpb24gb2YgdGhlIHBhY2thZ2UgaGFzIGJlZW4gc3RhcnRlZCwgYnV0IG5vdCBjb21wbGV0ZWQgZm9yIHNvbWUgIgorInJlYXNvbi4iCittc2dzdHIgIiIKKyJJbnN0YWxhY2phIHBha2lldHUgem9zdGHFgmEgcm96cG9jesSZdGEsIGFsZSBuaWVkb2tvxYRjem9uYSB6IHBld255Y2ggcG93b2TDs3cuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjUwCisjLCBuby13cmFwCittc2dpZCAiQjx1bnBhY2tlZD4iCittc2dzdHIgIkI8dW5wYWNrZWQgKHJvenBha293YW55KT4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1MworbXNnaWQgIlRoZSBwYWNrYWdlIGlzIHVucGFja2VkLCBidXQgbm90IGNvbmZpZ3VyZWQuIgorbXNnc3RyICJQYWtpZXQgamVzdCByb3pwYWtvd2FueSwgYWxlIG5pZSBza29uZmlndXJvd2FueS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGhhbGYtY29uZmlndXJlZD4iCittc2dzdHIgIkI8aGFsZi1jb25maWd1cmVkICh3cMOzxYJza29uZmlndXJvd2FueSk+IgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTcKK21zZ2lkICIiCisiVGhlIHBhY2thZ2UgaXMgdW5wYWNrZWQgYW5kIGNvbmZpZ3VyYXRpb24gaGFzIGJlZW4gc3RhcnRlZCwgYnV0IG5vdCB5ZXQgIgorImNvbXBsZXRlZCBmb3Igc29tZSByZWFzb24uIgorbXNnc3RyICIiCisiUGFraWV0IGplc3Qgcm96cGFrb3dhbnksIGEga29uZmlndXJhY2phIHpvc3RhxYJhIHJvenBvY3rEmXRhLCBhbGUgIgorIm5pZWRva2/FhGN6b25hIHogcGV3bnljaCBwb3dvZMOzdy4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHRyaWdnZXJzLWF3YWl0ZWQ+IgorbXNnc3RyICJCPHRyaWdnZXJzLWF3YWl0ZWQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NjAKK21zZ2lkICJUaGUgcGFja2FnZSBhd2FpdHMgdHJpZ2dlciBwcm9jZXNzaW5nIGJ5IGFub3RoZXIgcGFja2FnZS4iCittc2dzdHIgIlBha2lldCBvY3pla3VqZSBwcnpldHdvcnplbmlhIHd5endhbGFjenkgcHJ6ZXogaW5ueSBwYWtpZXQuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjYwCisjLCBuby13cmFwCittc2dpZCAiQjx0cmlnZ2Vycy1wZW5kaW5nPiIKK21zZ3N0ciAiQjx0cmlnZ2Vycy1wZW5kaW5nPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjYzCittc2dpZCAiVGhlIHBhY2thZ2UgaGFzIGJlZW4gdHJpZ2dlcmVkLiIKK21zZ3N0ciAiUGFraWV0IHpvc3RhxYIgcG9idWR6b255LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2MworIywgbm8td3JhcAorbXNnaWQgIkI8aW5zdGFsbGVkPiIKK21zZ3N0ciAiQjxpbnN0YWxsZWQgKHphaW5zdGFsb3dhbnkpPiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjY2Cittc2dpZCAiVGhlIHBhY2thZ2UgaXMgdW5wYWNrZWQgYW5kIGNvbmZpZ3VyZWQgT0suIgorbXNnc3RyICJQYWtpZXQgamVzdCByb3pwYWtvd2FueSBpIHBvcHJhd25pZSBza29uZmlndXJvd2FueS4iCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLjE6NjYKKyMsIG5vLXdyYXAKK21zZ2lkICJQQUNLQUdFIFNFTEVDVElPTiBTVEFURVMiCittc2dzdHIgIlNUQU4gV1lCT1JVIFBBS0lFVMOTVyIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2NworIywgbm8td3JhcAorbXNnaWQgIkI8aW5zdGFsbD4iCittc2dzdHIgIkI8aW5zdGFsbCAoaW5zdGFsYWNqYSk+IgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzAKK21zZ2lkICJUaGUgcGFja2FnZSBpcyBzZWxlY3RlZCBmb3IgaW5zdGFsbGF0aW9uLiIKK21zZ3N0ciAiUGFraWV0IHpvc3RhxYIgd3licmFueSBkbyB6YWluc3RhbG93YW5pYS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NzAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGhvbGQ+IgorbXNnc3RyICJCPGhvbGQgKHdzdHJ6eW1hbmllKT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3NAorbXNnaWQgIiIKKyJBIHBhY2thZ2UgbWFya2VkIHRvIGJlIG9uIEI8aG9sZD4gaXMgbm90IGhhbmRsZWQgYnkgQjxkcGtnPiwgdW5sZXNzIGZvcmNlZCAiCisidG8gZG8gdGhhdCB3aXRoIG9wdGlvbiBCPC0tZm9yY2UtaG9sZD4uIgorbXNnc3RyICIiCisiUGFraWV0IG96bmFjem9ueSBqYWtvIEI8d3N0cnp5bWFueT4gbmllIGplc3Qgb2JzxYJ1Z2l3YW55IHByemV6IEI8ZHBrZz4sICIKKyJjaHliYSDFvGUgdcW8eWplIHNpxJkgb3BjamkgQjwtLWZvcmNlLWhvbGQ+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo3NAorIywgbm8td3JhcAorbXNnaWQgIkI8ZGVpbnN0YWxsPiIKK21zZ3N0ciAiQjxkZWluc3RhbGwgKGRlaW5zdGFsYWNqYSk+IgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzgKK21zZ2lkICIiCisiVGhlIHBhY2thZ2UgaXMgc2VsZWN0ZWQgZm9yIGRlaW5zdGFsbGF0aW9uIChpLmUuIHdlIHdhbnQgdG8gcmVtb3ZlIGFsbCAiCisiZmlsZXMsIGV4Y2VwdCBjb25maWd1cmF0aW9uIGZpbGVzKS4iCittc2dzdHIgIiIKKyJQYWtpZXQgem9zdGHFgiB3eWJyYW55IGRvIG9kaW5zdGFsb3dhbmlhICh0byB6bmFjenksIMW8ZSBjaGNlbXkgc2thc293YcSHICIKKyJ3c3p5c3RraWUgcGxpa2kgcGFraWV0dSBvcHLDs2N6IHBsaWvDs3cga29uZmlndXJhY3lqbnljaCkuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjc4CisjLCBuby13cmFwCittc2dpZCAiQjxwdXJnZT4iCittc2dzdHIgIkI8cHVyZ2UgKHd5Y3p5c3pjemVuaWUpPiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjgyCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJUaGUgcGFja2FnZSBpcyBzZWxlY3RlZCB0byBiZSBwdXJnZWQgKGkuZS4gd2Ugd2FudCB0byByZW1vdmUgZXZlcnl0aGluZywgIgorI3wgImV2ZW4gY29uZmlndXJhdGlvbiBmaWxlcykuIgorbXNnaWQgIiIKKyJUaGUgcGFja2FnZSBpcyBzZWxlY3RlZCB0byBiZSBwdXJnZWQgKGkuZS4gd2Ugd2FudCB0byByZW1vdmUgZXZlcnl0aGluZyBmcm9tICIKKyJzeXN0ZW0gZGlyZWN0b3JpZXMsIGV2ZW4gY29uZmlndXJhdGlvbiBmaWxlcykuIgorbXNnc3RyICIiCisiUGFraWV0IHpvc3RhxYIgd3licmFueSBkbyB3eWN6eXN6Y3plbmlhICh0byB6bmFjenksIMW8ZSBjaGNlbXkgc2thc293YcSHICIKKyJ3c3p5c3Rrbywgd8WCxIVjem5pZSB6IHBsaWthbWkga29uZmlndXJhY3lqbnltaSkuIgorCisjLiB0eXBlOiBTUworIzogZHBrZy4xOjgyCisjLCBuby13cmFwCittc2dpZCAiUEFDS0FHRSBGTEFHUyIKK21zZ3N0ciAiRkxBR0kgUEFLSUVUw5NXIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjgzCisjLCBuby13cmFwCittc2dpZCAiQjxyZWluc3QtcmVxdWlyZWQ+IgorbXNnc3RyICJCPHJlaW5zdC1yZXF1aXJlZCAoa29uaWVjem5hLXJlaW5zdGFsYWNqYSk+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6ODgKK21zZ2lkICIiCisiQSBwYWNrYWdlIG1hcmtlZCBCPHJlaW5zdC1yZXF1aXJlZD4gaXMgYnJva2VuIGFuZCByZXF1aXJlcyByZWluc3RhbGxhdGlvbi4gIgorIlRoZXNlIHBhY2thZ2VzIGNhbm5vdCBiZSByZW1vdmVkLCB1bmxlc3MgZm9yY2VkIHdpdGggb3B0aW9uIEI8LS1mb3JjZS1yZW1vdmUtIgorInJlaW5zdHJlcT4uIgorbXNnc3RyICIiCisiUGFraWV0IG96bmFjem9ueSBqYWtvIEI8a29uaWVjem5hLXJlaW5zdGFsYWNqYT4gamVzdCB1c3prb2R6b255IGkgd3ltYWdhICIKKyJyZWluc3RhbGFjamkuIFRha2kgcGFraWV0IG5pZSBtb8W8ZSB6b3N0YcSHIHVzdW5pxJl0eSwgY2h5YmEgxbxlIHXFvHlqZSBzacSZIG9wY2ppICIKKyJCPC0tZm9yY2UtcmVtb3ZlLXJlaW5zdHJlcT4uIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy4xOjg5IGRzZWxlY3QuMToxMjAKKyMsIG5vLXdyYXAKK21zZ2lkICJBQ1RJT05TIgorbXNnc3RyICJBS0NKRSIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo5MAorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPC1pPiwgQjwtLWluc3RhbGw+IEk8cGFja2FnZV9maWxlPi4uLiIKK21zZ2lkICJCPC1pPiwgQjwtLWluc3RhbGw+IEk8cGFja2FnZS1maWxlPi4uLiIKK21zZ3N0ciAiQjwtaT4sIEI8LS1pbnN0YWxsPiBJPHBsaWtfcGFraWV0dT4uLi4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo5NAorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiSW5zdGFsbCB0aGUgcGFja2FnZS4gSWYgQjwtLXJlY3Vyc2l2ZT4gb3IgQjwtUj4gb3B0aW9uIGlzIHNwZWNpZmllZCwgIgorI3wgIkk8cGFja2FnZV9maWxlPiBtdXN0IHJlZmVyIHRvIGEgZGlyZWN0b3J5IGluc3RlYWQuIgorbXNnaWQgIiIKKyJJbnN0YWxsIHRoZSBwYWNrYWdlLiBJZiBCPC0tcmVjdXJzaXZlPiBvciBCPC1SPiBvcHRpb24gaXMgc3BlY2lmaWVkLCAiCisiSTxwYWNrYWdlLWZpbGU+IG11c3QgcmVmZXIgdG8gYSBkaXJlY3RvcnkgaW5zdGVhZC4iCittc2dzdHIgIiIKKyJJbnN0YWxhY2phIHBha2lldC4gSmXFm2xpIHpvc3RhxYJhIHXFvHl0YSBvcGNqYSBCPC0tcmVjdXJzaXZlPiBsdWIgQjwtUj4sICIKKyJJPHBsaWtfcGFraWV0dT4gbXVzaSBvem5hY3phxIcgd3licmFueSBrYXRhbG9nLiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjk2Cittc2dpZCAiSW5zdGFsbGF0aW9uIGNvbnNpc3RzIG9mIHRoZSBmb2xsb3dpbmcgc3RlcHM6IgorbXNnc3RyICJJbnN0YWxhY2phIHNrxYJhZGEgc2nEmSB6IG5hc3TEmXB1asSFY3ljaCBrcm9rw7N3OiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjk5Cittc2dpZCAiQjwxLj4gRXh0cmFjdCB0aGUgY29udHJvbCBmaWxlcyBvZiB0aGUgbmV3IHBhY2thZ2UuIgorbXNnc3RyICJCPDEuPiBSb3pwYWtvd2FuaWUgcGxpa8OzdyBrb250cm9sbnljaCBub3dlZ28gcGFraWV0dS4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxMDMKK21zZ2lkICIiCisiQjwyLj4gSWYgYW5vdGhlciB2ZXJzaW9uIG9mIHRoZSBzYW1lIHBhY2thZ2Ugd2FzIGluc3RhbGxlZCBiZWZvcmUgdGhlIG5ldyAiCisiaW5zdGFsbGF0aW9uLCBleGVjdXRlIEk8cHJlcm0+IHNjcmlwdCBvZiB0aGUgb2xkIHBhY2thZ2UuIgorbXNnc3RyICIiCisiQjwyLj4gSmXFm2xpIGlubmEgd2Vyc2phIHRlZ28gc2FtZWdvIHBha2lldHUgamVzdCBqdcW8IHphaW5zdGFsb3dhbmEsICIKKyJ1cnVjaG9taWVuaWUgc2tyeXB0dSBJPHByZXJtPiBzdGFyZWdvIHBha2lldHUuIgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTA2Cittc2dpZCAiQjwzLj4gUnVuIEk8cHJlaW5zdD4gc2NyaXB0LCBpZiBwcm92aWRlZCBieSB0aGUgcGFja2FnZS4iCittc2dzdHIgIkI8My4+IFVydWNob21pZW5pZSBza3J5cHR1IEk8cHJlaW5zdD4sIGplxZtsaSBwYWtpZXQgZ28gemF3aWVyYS4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxMTAKK21zZ2lkICIiCisiQjw0Lj4gVW5wYWNrIHRoZSBuZXcgZmlsZXMsIGFuZCBhdCB0aGUgc2FtZSB0aW1lIGJhY2sgdXAgdGhlIG9sZCBmaWxlcywgc28gIgorInRoYXQgaWYgc29tZXRoaW5nIGdvZXMgd3JvbmcsIHRoZXkgY2FuIGJlIHJlc3RvcmVkLiIKK21zZ3N0ciAiIgorIkI8NC4+IFJvenBha293YW5pZSBub3d5Y2ggcGxpa8OzdywgYWxlIHByemVjaG93YW5pZSBzdGFyeWNoIG5hIHd5cGFkZWssIGdkeWJ5ICIKKyJpbnN0YWxhY2phIHNpxJkgbmllIHBvd2lvZMWCYSBpIHRyemViYSBieSBqZSBvZHp5c2thxIcuIgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTE3Cittc2dpZCAiIgorIkI8NS4+IElmIGFub3RoZXIgdmVyc2lvbiBvZiB0aGUgc2FtZSBwYWNrYWdlIHdhcyBpbnN0YWxsZWQgYmVmb3JlIHRoZSBuZXcgIgorImluc3RhbGxhdGlvbiwgZXhlY3V0ZSB0aGUgSTxwb3N0cm0+IHNjcmlwdCBvZiB0aGUgb2xkIHBhY2thZ2UuIE5vdGUgdGhhdCAiCisidGhpcyBzY3JpcHQgaXMgZXhlY3V0ZWQgYWZ0ZXIgdGhlIEk8cHJlaW5zdD4gc2NyaXB0IG9mIHRoZSBuZXcgcGFja2FnZSwgIgorImJlY2F1c2UgbmV3IGZpbGVzIGFyZSB3cml0dGVuIGF0IHRoZSBzYW1lIHRpbWUgb2xkIGZpbGVzIGFyZSByZW1vdmVkLiIKK21zZ3N0ciAiIgorIkI8NS4+IEplxZtsaSBpbm5hIHdlcnNqYSB0ZWdvIHNhbWVnbyBwYWtpZXR1IGJ5xYJhIHBvcHJ6ZWRuaW8gemFpbnN0YWxvd2FuYSwgIgorInVydWNob21pZW5pZSBza3J5cHR1IEk8cG9zdHJtPiBzdGFyZWdvIHBha2lldHUuIFByb3N6xJkgemF1d2HFvHnEhywgxbxlIHRlbiAiCisic2tyeXB0IGplc3QgdXJ1Y2hhbWlhbnkgcG8gc2tyeXBjaWUgSTxwcmVpbnN0PiBub3dlZ28gcGFraWV0dSwgcG9uaWV3YcW8IG5vd2UgIgorInBsaWtpIHPEhSB6YXBpc3l3YW5lIHcgdHltIHNhbXltIGN6YXNpZSwgZ2R5IHN0YXJlIHPEhSBrYXNvd2FuZS4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxMjEKK21zZ2lkICIiCisiQjw2Lj4gQ29uZmlndXJlIHRoZSBwYWNrYWdlLiBTZWUgQjwtLWNvbmZpZ3VyZT4gZm9yIGRldGFpbGVkIGluZm9ybWF0aW9uICIKKyJhYm91dCBob3cgdGhpcyBpcyBkb25lLiIKK21zZ3N0ciAiIgorIkI8Ni4+IEtvbmZpZ3VyYWNqYSBwYWtpZXR1LiBCYXJkemllaiBzemN6ZWfDs8WCb3dlIGluZm9ybWFjamUgemF3YXJ0byBwcnp5ICIKKyJvcGlzaWUgcGFyYW1ldHJ1IEI8LS1jb25maWd1cmU+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToxMjEKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjwtLXVucGFjayA+STxwYWNrYWdlX2ZpbGU+Li4uIgorbXNnaWQgIkI8LS11bnBhY2sgPkk8cGFja2FnZS1maWxlPi4uLiIKK21zZ3N0ciAiQjwtLXVucGFjayA+STxwbGlrX3Bha2lldHU+Li4uIgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTI2CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJVbnBhY2sgdGhlIHBhY2thZ2UsIGJ1dCBkb24ndCBjb25maWd1cmUgaXQuIElmIEI8LS1yZWN1cnNpdmU+IG9yIEI8LVI+ICIKKyN8ICJvcHRpb24gaXMgc3BlY2lmaWVkLCBJPHBhY2thZ2VfZmlsZT4gbXVzdCByZWZlciB0byBhIGRpcmVjdG9yeSBpbnN0ZWFkLiIKK21zZ2lkICIiCisiVW5wYWNrIHRoZSBwYWNrYWdlLCBidXQgZG9uJ3QgY29uZmlndXJlIGl0LiBJZiBCPC0tcmVjdXJzaXZlPiBvciBCPC1SPiAiCisib3B0aW9uIGlzIHNwZWNpZmllZCwgSTxwYWNrYWdlLWZpbGU+IG11c3QgcmVmZXIgdG8gYSBkaXJlY3RvcnkgaW5zdGVhZC4iCittc2dzdHIgIiIKKyJSb3pwYWtvd2FuaWUgcGFraWV0dSwgYWxlIGJleiBrb25maWd1cm93YW5pYSBnby4gSmXFm2xpIHpvc3RhxYJhIHXFvHl0YSBvcGNqYSAiCisiQjwtLXJlY3Vyc2l2ZT4gbHViIEI8LVI+LCBJPHBsaWtfcGFraWV0dT4gbXVzaSBvem5hY3phxIcgd3licmFueSBrYXRhbG9nLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToxMjYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tY29uZmlndXJlID5JPHBhY2thZ2U+Li4ufEI8LWE+fEI8LS1wZW5kaW5nPiIKK21zZ3N0ciAiQjwtLWNvbmZpZ3VyZSA+STxwYWtpZXQ+Li4ufEI8LWE+fEI8LS1wZW5kaW5nPiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjEzMQorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiUmVjb25maWd1cmUgYW4gdW5wYWNrZWQgcGFja2FnZS4gSWYgQjwtYT4gb3IgQjwtLXBlbmRpbmc+IGlzIGdpdmVuICIKKyN8ICJpbnN0ZWFkIG9mIEk8cGFja2FnZT4sIGFsbCB1bnBhY2tlZCBidXQgdW5jb25maWd1cmVkIHBhY2thZ2VzIGFyZSAiCisjfCAiY29uZmlndXJlZC4iCittc2dpZCAiIgorIkNvbmZpZ3VyZSBhIHBhY2thZ2Ugd2hpY2ggaGFzIGJlZW4gdW5wYWNrZWQgYnV0IG5vdCB5ZXQgY29uZmlndXJlZC4gIElmIEI8LSIKKyJhPiBvciBCPC0tcGVuZGluZz4gaXMgZ2l2ZW4gaW5zdGVhZCBvZiBJPHBhY2thZ2U+LCBhbGwgdW5wYWNrZWQgYnV0ICIKKyJ1bmNvbmZpZ3VyZWQgcGFja2FnZXMgYXJlIGNvbmZpZ3VyZWQuIgorbXNnc3RyICIiCisiUG9ub3duZSBrb25maWd1cm93YW5pZSByb3pwYWtvd2FuZWdvIHBha2lldHUuIEplxZtsaSB6YW1pYXN0IG5hend5IEk8cGFraWV0dT4gIgorInpvc3RhxYJhIHBvZGFuYSBvcGNqYSBCPC1hPiBsdWIgQjwtLXBlbmRpbmc+LCByZWtvbmZpZ3VyYWNqYSBvYmVqbWllICIKKyJ3c3p5c3RraWUgcGFraWV0eSByb3pwYWtvd2FuZSwgYWxlIGplc3pjemUgbmllIHNrb25maWd1cm93YW5lLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjEzNQorbXNnaWQgIiIKKyJUbyByZWNvbmZpZ3VyZSBhIHBhY2thZ2Ugd2hpY2ggaGFzIGFscmVhZHkgYmVlbiBjb25maWd1cmVkLCB0cnkgdGhlIEI8ZHBrZy0iCisicmVjb25maWd1cmU+KDgpICBjb21tYW5kIGluc3RlYWQuIgorbXNnc3RyICIiCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxMzcKK21zZ2lkICJDb25maWd1cmluZyBjb25zaXN0cyBvZiB0aGUgZm9sbG93aW5nIHN0ZXBzOiIKK21zZ3N0ciAiS29uZmlndXJvd2FuaWUgc2vFgmFkYSBzacSZIHogbmFzdMSZcHVqxIVjeWNoIGtyb2vDs3c6IgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTQyCittc2dpZCAiIgorIkI8MS4+IFVucGFjayB0aGUgY29uZmZpbGVzLCBhbmQgYXQgdGhlIHNhbWUgdGltZSBiYWNrIHVwIHRoZSBvbGQgY29uZmZpbGVzLCAiCisic28gdGhhdCB0aGV5IGNhbiBiZSByZXN0b3JlZCBpZiBzb21ldGhpbmcgZ29lcyB3cm9uZy4iCittc2dzdHIgIiIKKyJCPDEuPiBSb3pwYWtvd2FuaWUgbm93eWNoIHBsaWvDs3cga29uZmlndXJhY3lqbnljaCwgYWxlIHByemVjaG93YW5pZSBzdGFyeWNoICIKKyJuYSB3eXBhZGVrLCBnZHlieSBrb25maWd1cm93YW5pZSBzacSZIG5pZSBwb3dpb2TFgm8gaSB0cnplYmEgYnkgamUgb2R6eXNrYcSHLiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjE0NQorbXNnaWQgIkI8Mi4+IFJ1biBJPHBvc3RpbnN0PiBzY3JpcHQsIGlmIHByb3ZpZGVkIGJ5IHRoZSBwYWNrYWdlLiIKK21zZ3N0ciAiQjwyLj4gVXJ1Y2hvbWllbmllIHNrcnlwdHUgSTxwb3N0aW5zdD4sIGplxZtsaSBwYWtpZXQgZ28gemF3aWVyYS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MTQ1CisjLCBuby13cmFwCittc2dpZCAiQjwtLXRyaWdnZXJzLW9ubHk+IEk8cGFja2FnZT4uLi58QjwtYT58QjwtLXBlbmRpbmc+IgorbXNnc3RyICJCPC0tdHJpZ2dlcnMtb25seT4gSTxwYWtpZXQ+Li4ufEI8LWE+fEI8LS1wZW5kaW5nPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjE1MgorbXNnaWQgIiIKKyJQcm9jZXNzZXMgb25seSB0cmlnZ2Vycy4gQWxsIHBlbmRpbmcgdHJpZ2dlcnMgd2lsbCBiZSBwcm9jZXNzZWQuIElmIHBhY2thZ2UgIgorIm5hbWVzIGFyZSBzdXBwbGllZCBvbmx5IHRob3NlIHBhY2thZ2VzJyB0cmlnZ2VycyB3aWxsIGJlIHByb2Nlc3NlZCwgZXhhY3RseSAiCisib25jZSBlYWNoIHdoZXJlIG5lY2Vzc2FyeS4gVXNlIG9mIHRoaXMgb3B0aW9uIG1heSBsZWF2ZSBwYWNrYWdlcyBpbiB0aGUgIgorImltcHJvcGVyIEI8dHJpZ2dlcnMtYXdhaXRlZD4gYW5kIEI8dHJpZ2dlcnMtcGVuZGluZz4gc3RhdGVzLiBUaGlzIGNhbiBiZSAiCisiZml4ZWQgbGF0ZXIgYnkgcnVubmluZzogQjxkcGtnIC0tY29uZmlndXJlIC0tcGVuZGluZz4uIgorbXNnc3RyICIiCisiUHJ6ZXR3YXJ6YW5pZSBzYW15Y2ggd3l6d2FsYWN6eS4gV3N6eXN0a2llIHphcGxhbm93YW5lIHd5endhbGFjemUgem9zdGFuxIUgIgorInByemV0d29yem9uZS4gSmXFm2xpIHBvZGFuZSBzxIUgbmF6d3kgcGFraWV0w7N3LCB0eWxrbyBpY2ggd3l6d2FsYWN6ZSB6b3N0YW7EhSAiCisicHJ6ZXR3b3J6b25lIC0ga2HFvGR5IGRva8WCYWRuaWUgcmF6LCB0YW0gZ2R6aWUgdG8gcG90cnplYm5lLiBVxbx5Y2llIHRlaiBvcGNqaSAiCisibW/FvGUgcG96b3N0YXdpxIcgcGFraWV0eSB3IG5pZXfFgmHFm2Npd3ltIHN0YW5pZSBCPHRyaWdnZXJzLWF3YWl0ZWQ+IGx1YiAiCisiQjx0cmlnZ2Vycy1wZW5kaW5nPi4gTW/FvGUgdG8gYnnEhyBww7PFum5pZWogbmFwcmF3aW9uZSBwcnpleiB3eXdvxYJhbmllOiBCPGRwa2cgIgorIi0tY29uZmlndXJlIC0tcGVuZGluZz4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjE1MgorIywgbm8td3JhcAorbXNnaWQgIkI8LXI+LCBCPC0tcmVtb3ZlPiwgQjwtUD4sIEI8LS1wdXJnZSA+STxwYWNrYWdlPi4uLnxCPC1hPnxCPC0tcGVuZGluZz4iCittc2dzdHIgIkI8LXI+LCBCPC0tcmVtb3ZlPiwgQjwtUD4sIEI8LS1wdXJnZSA+STxwYWtpZXQ+Li4ufEI8LWE+fEI8LS1wZW5kaW5nPiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjE2OQorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiUmVtb3ZlIGFuIGluc3RhbGxlZCBwYWNrYWdlLiBCPC1yPiBvciBCPC0tcmVtb3ZlPiByZW1vdmUgZXZlcnl0aGluZyAiCisjfCAiZXhjZXB0IGNvbmZmaWxlcy4gVGhpcyBtYXkgYXZvaWQgaGF2aW5nIHRvIHJlY29uZmlndXJlIHRoZSBwYWNrYWdlIGlmIGl0ICIKKyN8ICJpcyByZWluc3RhbGxlZCBsYXRlci4gKENvbmZmaWxlcyBhcmUgY29uZmlndXJhdGlvbiBmaWxlcyB0aGF0IGFyZSBsaXN0ZWQgIgorI3wgImluIHRoZSBJPERFQklBTi9jb25mZmlsZXM+IGNvbnRyb2wgZmlsZSkuIEI8LVA+IG9yIEI8LS1wdXJnZT4gcmVtb3ZlcyAiCisjfCAiZXZlcnl0aGluZywgaW5jbHVkaW5nIGNvbmZmaWxlcy4gSWYgQjwtYT4gb3IgQjwtLXBlbmRpbmc+IGlzIGdpdmVuICIKKyN8ICJpbnN0ZWFkIG9mIGEgcGFja2FnZSBuYW1lLCB0aGVuIGFsbCBwYWNrYWdlcyB1bnBhY2tlZCwgYnV0IG1hcmtlZCB0byBiZSAiCisjfCAicmVtb3ZlZCBvciBwdXJnZWQgaW4gZmlsZSBJPC92YXIvbGliL2Rwa2cvc3RhdHVzPiwgYXJlIHJlbW92ZWQgb3IgcHVyZ2VkLCAiCisjfCAicmVzcGVjdGl2ZWx5LiBOb3RlOiBzb21lIGNvbmZpZ3VyYXRpb24gZmlsZXMgbWlnaHQgYmUgdW5rbm93biB0byBCPGRwa2c+ICIKKyN8ICJiZWNhdXNlIHRoZXkgYXJlIGNyZWF0ZWQgYW5kIGhhbmRsZWQgc2VwYXJhdGVseSB0aHJvdWdoIHRoZSBjb25maWd1cmF0aW9uICIKKyN8ICJzY3JpcHRzLiBJbiB0aGF0IGNhc2UsIEI8ZHBrZz4gd29uJ3QgcmVtb3ZlIHRoZW0gYnkgaXRzZWxmLCBidXQgdGhlICIKKyN8ICJwYWNrYWdlJ3MgSTxwb3N0cm0+IHNjcmlwdCAod2hpY2ggaXMgY2FsbGVkIGJ5IEI8ZHBrZz4pLCBoYXMgdG8gdGFrZSBjYXJlICIKKyN8ICJvZiB0aGVpciByZW1vdmFsIGR1cmluZyBwdXJnZS4iCittc2dpZCAiIgorIlJlbW92ZSBhbiBpbnN0YWxsZWQgcGFja2FnZS4gQjwtcj4gb3IgQjwtLXJlbW92ZT4gcmVtb3ZlIGV2ZXJ5dGhpbmcgZXhjZXB0ICIKKyJjb25mZmlsZXMuIFRoaXMgbWF5IGF2b2lkIGhhdmluZyB0byByZWNvbmZpZ3VyZSB0aGUgcGFja2FnZSBpZiBpdCBpcyAiCisicmVpbnN0YWxsZWQgbGF0ZXIuIChDb25mZmlsZXMgYXJlIGNvbmZpZ3VyYXRpb24gZmlsZXMgdGhhdCBhcmUgbGlzdGVkIGluIHRoZSAiCisiSTxERUJJQU4vY29uZmZpbGVzPiBjb250cm9sIGZpbGUpLiBCPC1QPiBvciBCPC0tcHVyZ2U+IHJlbW92ZXMgZXZlcnl0aGluZywgIgorImluY2x1ZGluZyBjb25mZmlsZXMuIElmIEI8LWE+IG9yIEI8LS1wZW5kaW5nPiBpcyBnaXZlbiBpbnN0ZWFkIG9mIGEgcGFja2FnZSAiCisibmFtZSwgdGhlbiBhbGwgcGFja2FnZXMgdW5wYWNrZWQsIGJ1dCBtYXJrZWQgdG8gYmUgcmVtb3ZlZCBvciBwdXJnZWQgaW4gZmlsZSAiCisiSTwvdmFyL2xpYi9kcGtnL3N0YXR1cz4sIGFyZSByZW1vdmVkIG9yIHB1cmdlZCwgcmVzcGVjdGl2ZWx5LiBOb3RlOiBzb21lICIKKyJjb25maWd1cmF0aW9uIGZpbGVzIG1pZ2h0IGJlIHVua25vd24gdG8gQjxkcGtnPiBiZWNhdXNlIHRoZXkgYXJlIGNyZWF0ZWQgYW5kICIKKyJoYW5kbGVkIHNlcGFyYXRlbHkgdGhyb3VnaCB0aGUgY29uZmlndXJhdGlvbiBzY3JpcHRzLiBJbiB0aGF0IGNhc2UsIEI8ZHBrZz4gIgorIndvbid0IHJlbW92ZSB0aGVtIGJ5IGl0c2VsZiwgYnV0IHRoZSBwYWNrYWdlJ3MgSTxwb3N0cm0+IHNjcmlwdCAod2hpY2ggaXMgIgorImNhbGxlZCBieSBCPGRwa2c+KSwgaGFzIHRvIHRha2UgY2FyZSBvZiB0aGVpciByZW1vdmFsIGR1cmluZyBwdXJnZS4gT2YgIgorImNvdXJzZSwgdGhpcyBvbmx5IGFwcGxpZXMgdG8gZmlsZXMgaW4gc3lzdGVtIGRpcmVjdG9yaWVzLCBub3QgY29uZmlndXJhdGlvbiAiCisiZmlsZXMgd3JpdHRlbiB0byBpbmRpdmlkdWFsIHVzZXJzJyBob21lIGRpcmVjdG9yaWVzLiIKK21zZ3N0ciAiIgorIlVzdXdhbmllIHphaW5zdGFsb3dhbnljaCBwYWtpZXTDs3cuIFBhcmFtZXRyIEI8LXI+IGx1YiBCPC0tcmVtb3ZlPiBwb3dvZHVqZSAiCisidXN1bmnEmWNpZSB3c3p5c3RraWNoIHBsaWvDs3cgb3Byw7NjeiBwbGlrw7N3IGtvbmZpZ3VyYWN5am55Y2guIFBvendhbGEgdG8gIgorInVuaWtuxIXEhyBwb3d0w7NybmVqIGtvbmZpZ3VyYWNqaSwgZ2R5YnkgcGFraWV0IGJ5xYIgem7Ds3cgaW5zdGFsb3dhbnkgcMOzxbpuaWVqLiAiCisiKFBsaWtpIGtvbmZpZ3VyYWN5am5lIHPEhSB3eW1pZW5pb25lIHcgcGxpa3Uga29udHJvbG55bSBJPERFQklBTi9jb25mZmlsZXM+ICIKKyJwYWtpZXR1KS4gUGFyYW1ldHIgQjwtUD4gbHViIEI8LS1wdXJnZT4gdXN1d2Egd3N6eXN0a28sIMWCxIVjem5pZSB6IHBsaWthbWkgIgorImtvbmZpZ3VyYWN5am55bWkuIEplxZtsaSB6YW1pYXN0IG5hend5IHBha2lldHUgem9zdGHFgmEgcG9kYW5hIG9wY2phIEI8LWE+IGx1YiAiCisiQjwtLXBlbmRpbmc+LCB1c3VuacSZdGUgbHViIHd5Y3p5c3pjem9uZSB6b3N0YW7EhSB3c3p5c3RraWUgcGFraWV0eSAiCisicm96cGFrb3dhbmUgaSB3eWJyYW5lIHcgcGxpa3UgSTwvdmFyL2xpYi9kcGtnL3N0YXR1cz4gZG8gdXN1bmnEmWNpYSBsdWIgIgorInd5Y3p5c3pjemVuaWEuIFV3YWdhOiBuaWVrdMOzcmUgcGxpa2kga29uZmlndXJhY3lqbmUgbW9nxIUgYnnEhyBuaWV6bmFuZSBkbGEgIgorIkI8ZHBrZz4gcG9uaWV3YcW8IHPEhSBvZGR6aWVsbmllIHR3b3J6b25lIGkgemFyesSFZHphbmUgcHJ6ZXogc2tyeXB0eSAiCisia29uZmlndXJhY3lqbmUuIFcgdGFraW0gcHJ6eXBhZGt1IEI8ZHBrZz4gbmllIHVzdW5pZSBpY2ggc2Ftb2R6aWVsbmllLCBhbGUgIgorInNrcnlwdCBJPHBvc3RybT4gcGFraWV0dSAod3l3b8WCeXdhbnkgcHJ6ZXogQjxkcGtnPikgbXVzaSB6YXRyb3N6Y3p5xIcgc2nEmSBvICIKKyJpY2ggdXN1bmnEmWNpZSBwb2RjemFzIGN6eXN6Y3plbmlhLiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjE3MQorbXNnaWQgIlJlbW92aW5nIG9mIGEgcGFja2FnZSBjb25zaXN0cyBvZiB0aGUgZm9sbG93aW5nIHN0ZXBzOiIKK21zZ3N0ciAiVXN1bmnEmWNpZSBwYWtpZXR1IHNrxYJhZGEgc2nEmSB6IG5hc3TEmXB1asSFY3ljaCBrcm9rw7N3OiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjE3NAorbXNnaWQgIkI8MS4+IFJ1biBJPHByZXJtPiBzY3JpcHQiCittc2dzdHIgIkI8MS4+IFVydWNob21pZW5pZSBza3J5cHR1IEk8cHJlcm0+IgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTc3Cittc2dpZCAiQjwyLj4gUmVtb3ZlIHRoZSBpbnN0YWxsZWQgZmlsZXMiCittc2dzdHIgIkI8Mi4+IFVzdW5pxJljaWUgemFpbnN0YWxvd2FueWNoIHBsaWvDs3ciCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxODAKK21zZ2lkICJCPDMuPiBSdW4gSTxwb3N0cm0+IHNjcmlwdCIKK21zZ3N0ciAiQjwzLj4gVXJ1Y2hvbWllbmllIHNrcnlwdHUgSTxwb3N0cm0+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjE4MQorIywgbm8td3JhcAorbXNnaWQgIkI8LS11cGRhdGUtYXZhaWw+LCBCPC0tbWVyZ2UtYXZhaWw+IEk8UGFja2FnZXMtZmlsZT4iCittc2dzdHIgIkI8LS11cGRhdGUtYXZhaWw+LCBCPC0tbWVyZ2UtYXZhaWw+IEk8cGxpay1wYWtpZXTDs3c+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTkwCittc2dpZCAiIgorIlVwZGF0ZSBCPGRwa2c+J3MgYW5kIEI8ZHNlbGVjdD4ncyBpZGVhIG9mIHdoaWNoIHBhY2thZ2VzIGFyZSBhdmFpbGFibGUuIFdpdGggIgorImFjdGlvbiBCPC0tbWVyZ2UtYXZhaWw+LCBvbGQgaW5mb3JtYXRpb24gaXMgY29tYmluZWQgd2l0aCBpbmZvcm1hdGlvbiBmcm9tICIKKyJJPFBhY2thZ2VzLWZpbGU+LiBXaXRoIGFjdGlvbiBCPC0tdXBkYXRlLWF2YWlsPiwgb2xkIGluZm9ybWF0aW9uIGlzIHJlcGxhY2VkICIKKyJ3aXRoIHRoZSBpbmZvcm1hdGlvbiBpbiB0aGUgSTxQYWNrYWdlcy1maWxlPi4gVGhlIEk8UGFja2FnZXMtZmlsZT4gIgorImRpc3RyaWJ1dGVkIHdpdGggRGViaWFuIGlzIHNpbXBseSBuYW1lZCBJPFBhY2thZ2VzPi4gQjxkcGtnPiBrZWVwcyBpdHMgIgorInJlY29yZCBvZiBhdmFpbGFibGUgcGFja2FnZXMgaW4gSTwvdmFyL2xpYi9kcGtnL2F2YWlsYWJsZT4uIgorbXNnc3RyICIiCisiWmFrdHVhbGl6b3dhbmllIGJhenkgZGFueWNoIHByb2dyYW11IEI8ZHBrZz4gb3JheiBCPGRzZWxlY3Q+IG8gZG9zdMSZcG55Y2ggIgorInBha2lldGFjaC4gT3BjamEgQjwtLW1lcmdlLWF2YWlsPiBwb3dvZHVqZSwgxbxlIHBvcHJ6ZWRuaWUgaW5mb3JtYWNqZSBzxIUgIgorIsWCxIVjem9uZSB6IG5vd3ltaSB6IEk8cGxpa3VfcGFraWV0w7N3Pi4gT3BjamEgQjwtLXVwZGF0ZS1hdmFpbD4gcG93b2R1amUgIgorInphc3TEhXBpZW5pZSBzdGFyeWNoIGluZm9ybWFjamkgbm93eW1pIHogSTxwbGlrdV9wYWtpZXTDs3c+LiBJPFBsaWtfcGFraWV0w7N3PiAiCisiZHlzdHJ5YnVvd2FueSByYXplbSB6IHN5c3RlbWVtIERlYmlhbiBuYXp5d2Egc2nEmSBwbyBwcm9zdHUgSTxQYWNrYWdlcz4uICIKKyJCPGRwa2c+IHByemVjaG93dWplIGluZm9ybWFjamUgbyBkb3N0xJlwbnljaCBwYWtpZXRhY2ggdyBwbGlrdSBJPC92YXIvbGliLyIKKyJkcGtnL2F2YWlsYWJsZT4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTk1Cittc2dpZCAiIgorIkEgc2ltcGxlciBvbmUtc2hvdCBjb21tYW5kIHRvIHJldHJpZXZlIGFuZCB1cGRhdGUgdGhlIEk8YXZhaWxhYmxlPiBmaWxlIGlzICIKKyJCPGRzZWxlY3QgdXBkYXRlPi4gTm90ZSB0aGF0IHRoaXMgZmlsZSBpcyBtb3N0bHkgdXNlbGVzcyBpZiB5b3UgZG9uJ3QgdXNlICIKKyJCPGRzZWxlY3Q+IGJ1dCBhbiBBUFQtYmFzZWQgZnJvbnRlbmQ6IEFQVCBoYXMgaXRzIG93biBzeXN0ZW0gdG8ga2VlcCB0cmFjayAiCisib2YgYXZhaWxhYmxlIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorIlByb3N0c3p5bSBwb2xlY2VuaWVtLCBrdMOzcmVnbyBtb8W8bmEgdcW8ecSHIHcgY2VsdSBwb2JyYW5pYSBpIG9kxZt3aWXFvGVuaWEgcGxpa3UgIgorIkk8YXZhaWxhYmxlPiwgamVzdCBCPGRzZWxlY3QgdXBkYXRlPi4gUHJvc3rEmSB6YXV3YcW8ecSHLCDFvGUgcGxpayB0ZW4gamVzdCAiCisiemFzYWRuaWN6byBuaWV1xbx5dGVjem55LCBqZcWbbGkgbmllIHXFvHl3YSBzacSZIEI8ZHNlbGVjdD4gdHlsa28gbmFrxYJhZGtpICIKKyJiYXp1asSFY2VqIG5hIEFQVC4gUHJ6eWN6eW7EhSB0ZWdvIGplc3QgZmFrdCwgxbxlIEFQVCBwb3NpYWRhIHfFgmFzbnkgc3lzdGVtICIKKyJva3JlxZtsYW5pYSBkb3N0xJlwbm/Fm2NpIHBha2lldMOzdy4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MTk1CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8LUE+LCBCPC0tcmVjb3JkLWF2YWlsPiBJPHBhY2thZ2VfZmlsZT4uLi4iCittc2dpZCAiQjwtQT4sIEI8LS1yZWNvcmQtYXZhaWw+IEk8cGFja2FnZS1maWxlPi4uLiIKK21zZ3N0ciAiQjwtQT4sIEI8LS1yZWNvcmQtYXZhaWw+IEk8cGxpa19wYWtpZXR1Pi4uLiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjIwMQorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiVXBkYXRlIEI8ZHBrZz4gYW5kIEI8ZHNlbGVjdD4ncyBpZGVhIG9mIHdoaWNoIHBhY2thZ2VzIGFyZSBhdmFpbGFibGUgd2l0aCAiCisjfCAiaW5mb3JtYXRpb24gZnJvbSB0aGUgcGFja2FnZSBJPHBhY2thZ2VfZmlsZT4uIElmIEI8LS1yZWN1cnNpdmU+IG9yIEI8LVI+ICIKKyN8ICJvcHRpb24gaXMgc3BlY2lmaWVkLCBJPHBhY2thZ2VfZmlsZT4gbXVzdCByZWZlciB0byBhIGRpcmVjdG9yeSBpbnN0ZWFkLiIKK21zZ2lkICIiCisiVXBkYXRlIEI8ZHBrZz4gYW5kIEI8ZHNlbGVjdD4ncyBpZGVhIG9mIHdoaWNoIHBhY2thZ2VzIGFyZSBhdmFpbGFibGUgd2l0aCAiCisiaW5mb3JtYXRpb24gZnJvbSB0aGUgcGFja2FnZSBJPHBhY2thZ2UtZmlsZT4uIElmIEI8LS1yZWN1cnNpdmU+IG9yIEI8LVI+ICIKKyJvcHRpb24gaXMgc3BlY2lmaWVkLCBJPHBhY2thZ2UtZmlsZT4gbXVzdCByZWZlciB0byBhIGRpcmVjdG9yeSBpbnN0ZWFkLiIKK21zZ3N0ciAiIgorIlpha3R1YWxpem93YW5pZSBiYXp5IGRhbnljaCBwcm9ncmFtw7N3IEI8ZHBrZz4gb3JheiBCPGRzZWxlY3Q+IG8gZG9zdMSZcG55Y2ggIgorInBha2lldGFjaCwgdXd6Z2zEmWRuaWFqxIVjIGluZm9ybWFjamUgemF3YXJ0ZSB3IHBha2llY2llIEk8cGxpa19wYWtpZXR1Pi4gIgorIkplxZtsaSB6b3N0YcWCYSB1xbx5dGEgb3BjamEgQjwtLXJlY3Vyc2l2ZT4gbHViIEI8LVI+LCBJPHBsaWtfcGFraWV0dT4gbXVzaSAiCisib3puYWN6YcSHIHd5YnJhbnkga2F0YWxvZy4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MjAxCisjLCBuby13cmFwCittc2dpZCAiQjwtLWZvcmdldC1vbGQtdW5hdmFpbD4iCittc2dzdHIgIkI8LS1mb3JnZXQtb2xkLXVuYXZhaWw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MjA1Cittc2dpZCAiIgorIk5vdyBCPG9ic29sZXRlPiBhbmQgYSBuby1vcCBhcyBCPGRwa2c+IHdpbGwgYXV0b21hdGljYWxseSBmb3JnZXQgdW5pbnN0YWxsZWQgIgorInVuYXZhaWxhYmxlIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorIkFrdHVhbG5pZSBCPHByemVzdGFyemHFgmU+IGkgbmllIGRhamUgxbxhZG5lZ28gZWZla3R1LCBwb25pZXdhxbwgQjxkcGtnPiAiCisiYXV0b21hdHljem5pZSB6YXBvbWluYSBvIG5pZXphaW5zdGFsb3dhbnljaCwgbmllZG9zdMSZcG55Y2ggcGFraWV0YWNoLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToyMDUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tY2xlYXItYXZhaWw+IgorbXNnc3RyICJCPC0tY2xlYXItYXZhaWw+IgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MjA4Cittc2dpZCAiRXJhc2UgdGhlIGV4aXN0aW5nIGluZm9ybWF0aW9uIGFib3V0IHdoYXQgcGFja2FnZXMgYXJlIGF2YWlsYWJsZS4iCittc2dzdHIgIlNrYXNvd2FuaWUgaW5mb3JtYWNqaSBvIGRvc3TEmXBueWNoIHBha2lldGFjaC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MjA4CisjLCBuby13cmFwCittc2dpZCAiIEI8LUM+LCBCPC0tYXVkaXQ+IgorbXNnc3RyICIgQjwtQz4sIEI8LS1hdWRpdD4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyMTMKK21zZ2lkICIiCisiU2VhcmNoZXMgZm9yIHBhY2thZ2VzIHRoYXQgaGF2ZSBiZWVuIGluc3RhbGxlZCBvbmx5IHBhcnRpYWxseSBvbiB5b3VyICIKKyJzeXN0ZW0uIEI8ZHBrZz4gd2lsbCBzdWdnZXN0IHdoYXQgdG8gZG8gd2l0aCB0aGVtIHRvIGdldCB0aGVtIHdvcmtpbmcuIgorbXNnc3RyICIiCisiV3lzenVrYW5pZSBwYWtpZXTDs3csIGt0w7NyZSB6YWluc3RhbG93YW5lIHPEhSB3IHN5c3RlbWllIHR5bGtvIGN6xJnFm2Npb3dvLiAiCisiQjxkcGtnPiB6YXN1Z2VydWplLCBjbyBtb8W8bmEgenJvYmnEhyB6IHR5bWkgcGFraWV0YW1pLCBhYnkgdyBwZcWCbmkgZHppYcWCYcWCeS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MjEzCisjLCBuby13cmFwCittc2dpZCAiQjwtLWdldC1zZWxlY3Rpb25zPiBbSTxwYWNrYWdlLW5hbWUtcGF0dGVybj4uLi5dIgorbXNnc3RyICJCPC0tZ2V0LXNlbGVjdGlvbnM+IFtJPHd6b3J6ZWMtbmF6d3ktcGFraWV0dT4uLi5dIgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MjE4Cittc2dpZCAiIgorIkdldCBsaXN0IG9mIHBhY2thZ2Ugc2VsZWN0aW9ucywgYW5kIHdyaXRlIGl0IHRvIHN0ZG91dC4gV2l0aG91dCBhIHBhdHRlcm4sICIKKyJub24taW5zdGFsbGVkIHBhY2thZ2VzIChpLmUuIHRob3NlIHdoaWNoIGhhdmUgYmVlbiBwcmV2aW91c2x5IHB1cmdlZCkgIHdpbGwgIgorIm5vdCBiZSBzaG93bi4iCittc2dzdHIgIiIKKyJQb2JyYW5pZSBsaXN0eSB3eWJyYW55Y2ggcGFraWV0w7N3IGkgd3lwaXNhbmllIGplaiBuYSBzdGRvdXQuIEplxbxlbGkgbmllICIKKyJwb2Rhbm8gd3pvcmNhLCBwYWtpZXR5IG5pZXphaW5zdGFsb3dhbmUgKGN6eWxpIHRha2llLCBrdMOzcmUgbmllIHpvc3RhxYJ5ICIKKyJ1cHJ6ZWRuaW8gd3ljenlzemN6b25lKSBuaWUgem9zdGFuxIUgd3nFm3dpZXRsb25lLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToyMTggdXBkYXRlLWFsdGVybmF0aXZlcy44OjI5OQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1zZXQtc2VsZWN0aW9ucz4iCittc2dzdHIgIkI8LS1zZXQtc2VsZWN0aW9ucz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyMjQKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlNldCBwYWNrYWdlIHNlbGVjdGlvbnMgdXNpbmcgZmlsZSByZWFkIGZyb20gc3RkaW4uIFRoaXMgZmlsZSBzaG91bGQgYmUgaW4gIgorI3wgInRoZSBmb3JtYXQgJ0U8bHQ+cGFja2FnZUU8Z3Q+IEU8bHQ+c3RhdGVFPGd0PicsIHdoZXJlIHN0YXRlIGlzIG9uZSBvZiAiCisjfCAiaW5zdGFsbCwgaG9sZCwgZGVpbnN0YWxsIG9yIHB1cmdlLiBCbGFuayBsaW5lcyBhbmQgY29tbWVudCBsaW5lcyAiCisjfCAiYmVnaW5uaW5nIHdpdGggJyMnIGFyZSBhbHNvIHBlcm1pdHRlZC4iCittc2dpZCAiIgorIlNldCBwYWNrYWdlIHNlbGVjdGlvbnMgdXNpbmcgZmlsZSByZWFkIGZyb20gc3RkaW4uIFRoaXMgZmlsZSBzaG91bGQgYmUgaW4gIgorInRoZSBmb3JtYXQgJ0k8cGFja2FnZT4gSTxzdGF0ZT4nLCB3aGVyZSBzdGF0ZSBpcyBvbmUgb2YgQjxpbnN0YWxsPiwgQjxob2xkPiwgIgorIkI8ZGVpbnN0YWxsPiBvciBCPHB1cmdlPi4gQmxhbmsgbGluZXMgYW5kIGNvbW1lbnQgbGluZXMgYmVnaW5uaW5nIHdpdGggJyMnICIKKyJhcmUgYWxzbyBwZXJtaXR0ZWQuIgorbXNnc3RyICIiCisiVXN0YXdpYSB3eWLDs3IgcGFraWV0w7N3IHXFvHl3YWrEhWMgcGxpa3UgcHJ6ZWN6eXRhbmVnbyB6ZSBzdGFuZGFyZG93ZWdvICIKKyJ3ZWrFm2NpYS4gUGxpayB0ZW4gcG93aW5pZW4gYnnEhyB3IG5hc3TEmXB1asSFY3ltIGZvcm1hY2llIFwiRTxsdD5wYWtpZXRFPGd0PiAiCisiRTxsdD5zdGFuRTxndD5cIiwgZ2R6aWUgc3RhbiBqZXN0IGplZG55bSB6IGluc3RhbGwsIGhvbGQsIGRlaW5zdGFsbCBsdWIgIgorInB1cmdlLiBEb3p3b2xvbmUgc8SFIHRha8W8ZSBsaW5pZSBwdXN0ZSBpIGxpbmllIGtvbWVudGFyemEgLSB6YWN6eW5hasSFY2Ugc2nEmSAiCisib2QgXCIjXCIuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjIyNAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1jbGVhci1zZWxlY3Rpb25zPiIKK21zZ3N0ciAiQjwtLWNsZWFyLXNlbGVjdGlvbnM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MjI5Cittc2dpZCAiIgorIlNldCB0aGUgcmVxdWVzdGVkIHN0YXRlIG9mIGV2ZXJ5IG5vbi1lc3NlbnRpYWwgcGFja2FnZSB0byBkZWluc3RhbGwuICBUaGlzICIKKyJpcyBpbnRlbmRlZCB0byBiZSB1c2VkIGltbWVkaWF0ZWx5IGJlZm9yZSAtLXNldC1zZWxlY3Rpb25zLCB0byBkZWluc3RhbGwgYW55ICIKKyJwYWNrYWdlcyBub3QgaW4gbGlzdCBnaXZlbiB0byAtLXNldC1zZWxlY3Rpb25zLiIKK21zZ3N0ciAiIgorIk96bmFjemEgd3N6eXN0a2llIHBha2lldHkgbmllIGLEmWTEhWNlIHBha2lldGFtaSBuaWV6YsSZZG55bWkgKGVzc2VudGlhbCkgamFrbyAiCisicHJ6ZXpuYWN6b25lIGRvIHVzdW5pxJljaWEuIE9wY2phIHRhIHBvd2lubmEgYnnEhyB1xbx5dGEgYmV6cG/Fm3JlZG5pbyBwcnplZCAtLSIKKyJzZXQtc2VsZWN0aW9ucywgYWJ5IHVzdW7EhcSHIHdzenlzdGtpZSBwYWtpZXR5IG5pZXd5bWllbmlvbmUgdyAtLXNldC0iCisic2VsZWN0aW9ucy4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MjI5CisjLCBuby13cmFwCittc2dpZCAiQjwtLXlldC10by11bnBhY2s+IgorbXNnc3RyICJCPC0teWV0LXRvLXVucGFjaz4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyMzMKK21zZ2lkICIiCisiU2VhcmNoZXMgZm9yIHBhY2thZ2VzIHNlbGVjdGVkIGZvciBpbnN0YWxsYXRpb24sIGJ1dCB3aGljaCBmb3Igc29tZSByZWFzb24gIgorInN0aWxsIGhhdmVuJ3QgYmVlbiBpbnN0YWxsZWQuIgorbXNnc3RyICIiCisiV3lzenVrYW5pZSBwYWtpZXTDs3cgcHJ6ZXpuYWN6b255Y2ggZG8gemFpbnN0YWxvd2FuaWEsIGt0w7NyZSB6IHBld255Y2ggIgorInBvd29kw7N3IG5pZSBtb2fFgnkgem9zdGHEhyB6YWluc3RhbG93YW5lLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToyMzQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tcHJpbnQtYXJjaGl0ZWN0dXJlPiIKK21zZ3N0ciAiQjwtLXByaW50LWFyY2hpdGVjdHVyZT4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyMzcKK21zZ2lkICIiCisiUHJpbnQgYXJjaGl0ZWN0dXJlIG9mIHBhY2thZ2VzIEI8ZHBrZz4gaW5zdGFsbHMgKGZvciBleGFtcGxlLCBcImkzODZcIikuIgorbXNnc3RyICIiCisiUG9kYW5pZSBhcmNoaXRla3R1cnkgcGFraWV0w7N3IGluc3RhbG93YW55Y2ggcHJ6ZXogQjxkcGtnPiAobmEgcHJ6eWvFgmFkICIKKyJcImkzODZcIikuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjIzNworIywgbm8td3JhcAorbXNnaWQgIkI8LS1jb21wYXJlLXZlcnNpb25zID5JPHZlcjEgb3AgdmVyMj4iCittc2dzdHIgIkI8LS1jb21wYXJlLXZlcnNpb25zID5JPHdlcnNqYTEgb3Agd2Vyc2phMj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyNDgKK21zZ2lkICIiCisiQ29tcGFyZSB2ZXJzaW9uIG51bWJlcnMsIHdoZXJlIEk8b3A+IGlzIGEgYmluYXJ5IG9wZXJhdG9yLiBCPGRwa2c+IHJldHVybnMgIgorInN1Y2Nlc3MgKHplcm8gcmVzdWx0KSBpZiB0aGUgc3BlY2lmaWVkIGNvbmRpdGlvbiBpcyBzYXRpc2ZpZWQsIGFuZCBmYWlsdXJlICIKKyIobm9uemVybyByZXN1bHQpIG90aGVyd2lzZS4gVGhlcmUgYXJlIHR3byBncm91cHMgb2Ygb3BlcmF0b3JzLCB3aGljaCBkaWZmZXIgIgorImluIGhvdyB0aGV5IHRyZWF0IGFuIGVtcHR5IEk8dmVyMT4gb3IgSTx2ZXIyPi4gVGhlc2UgdHJlYXQgYW4gZW1wdHkgdmVyc2lvbiAiCisiYXMgZWFybGllciB0aGFuIGFueSB2ZXJzaW9uOiBCPGx0IGxlIGVxIG5lIGdlIGd0Pi4gVGhlc2UgdHJlYXQgYW4gZW1wdHkgIgorInZlcnNpb24gYXMgbGF0ZXIgdGhhbiBhbnkgdmVyc2lvbjogQjxsdC1ubCBsZS1ubCBnZS1ubCBndC1ubD4uIFRoZXNlIGFyZSAiCisicHJvdmlkZWQgb25seSBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIGNvbnRyb2wgZmlsZSBzeW50YXg6IEI8RTxsdD4gRTxsdD5FPGx0PiAiCisiRTxsdD49ID0gRTxndD49IEU8Z3Q+RTxndD4gRTxndD4+LiIKK21zZ3N0ciAiIgorIlBvcsOzd25hbmllIG51bWVyw7N3IHdlcnNqaSwgZ2R6aWUgSTxvcD4gamVzdCBvcGVyYXRvcmVtIGJpbmFybnltLiBCPGRwa2c+ICIKKyJ6d3LDs2NpIHByYXdkxJkgKHJlenVsdGF0IHplcm93eSkgLSBnZHkgd2FydW5layBqZXN0IHNwZcWCbmlvbnksIGx1YiB6d3LDs2NpICIKKyJmYcWCc3ogKHJlenVsdGF0IG5pZXplcm93eSkgLSB3IHByemVjaXdueW0gcmF6aWUuIElzdG5pZWrEhSBkd2llIGdydXB5ICIKKyJvcGVyYXRvcsOzdywgdyB6YWxlxbxub8WbY2kgb2QgdGVnbywgdyBqYWtpIHNwb3PDs2IgdHJha3R1amUgc2nEmSBwdXN0eSBudW1lciAiCisiSTx3ZXJzamkxPiBsdWIgSTx3ZXJzamkyPi4gT3BlcmF0b3J5LCBkbGEga3TDs3J5Y2ggcHVzdHkgbnVtZXIgd2Vyc2ppIG96bmFjemEgIgorIndlcnNqxJkgd2N6ZcWbbmllanN6xIUgbmnFvCBkb3dvbG5hOiBCPGx0IGxlIGVxIG5lIGdlIGd0Pi4gT3BlcmF0b3J5LCBkbGEgIgorImt0w7NyeWNoIHB1c3R5IG51bWVyIHdlcnNqaSBvem5hY3phIHdlcnNqxJkgcMOzxbpuaWVqc3rEhSBuacW8IGRvd29sbmE6IEI8bHQtbmwgbGUtIgorIm5sIGdlLW5sIGd0LW5sPi4gT3BlcmF0b3J5IGlzdG5pZWrEhWNlLCBhYnkgemFjaG93YcSHIGtvbXBhdHliaWxub8WbxIcgeiBwbGlraWVtICIKKyJrb250cm9sbnltOiBCPEU8bHQ+IEU8bHQ+RTxsdD4gRTxsdD49ID0gRTxndD49IEU8Z3Q+RTxndD4gRTxndD4+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToyNDgKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjwtLWNvbW1hbmQtZmQgPkk8RTxsdD5uRTxndD4+IgorbXNnaWQgIkI8LS1jb21tYW5kLWZkID5JPG4+IgorbXNnc3RyICJCPC0tY29tbWFuZC1mZCA+STxFPGx0Pm5FPGd0Pj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyNTMKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIkFjY2VwdCBhIHNlcmllcyBvZiBjb21tYW5kcyBvbiBpbnB1dCBmaWxlIGRlc2NyaXB0b3IgSTxFPGx0Pm5FPGd0Pj4uICIKKyN8ICJOb3RlOiBhZGRpdGlvbmFsIG9wdGlvbnMgc2V0IG9uIHRoZSBjb21tYW5kIGxpbmUsIGFuZCB0aHJ1IHRoaXMgZmlsZSAiCisjfCAiZGVzY3JpcHRvciwgYXJlIG5vdCByZXNldCBmb3Igc3Vic2VxdWVudCBjb21tYW5kcyBleGVjdXRlZCBkdXJpbmcgdGhlICIKKyN8ICJzYW1lIHJ1bi4iCittc2dpZCAiIgorIkFjY2VwdCBhIHNlcmllcyBvZiBjb21tYW5kcyBvbiBpbnB1dCBmaWxlIGRlc2NyaXB0b3IgSTxuPi4gTm90ZTogYWRkaXRpb25hbCAiCisib3B0aW9ucyBzZXQgb24gdGhlIGNvbW1hbmQgbGluZSwgYW5kIHRocm91Z2ggdGhpcyBmaWxlIGRlc2NyaXB0b3IsIGFyZSBub3QgIgorInJlc2V0IGZvciBzdWJzZXF1ZW50IGNvbW1hbmRzIGV4ZWN1dGVkIGR1cmluZyB0aGUgc2FtZSBydW4uIgorbXNnc3RyICIiCisiV3lrb251amUgbGlzdMSZIHBvbGVjZcWEIG9kY3p5dHl3YW55Y2ggeiBkZXNrcnlwdG9yYSBwbGlrdSBJPEU8bHQ+bkU8Z3Q+Pi4gIgorIlV3YWdhOiBkb2RhdGtvd2Ugb3BjamUgdXN0YXdpb25lIHcgbGluaWkga29tZW5kIG9yYXogcHJ6ZXogcG9sZWNlbmlhICIKKyJvZGN6eXRhbmUgeiB0ZWdvIGRlc2tyeXB0b3JhIHBsaWt1IG5pZSBzxIUgY3p5c3pjem9uZSBkbGEga29sZWpueWNoIHBvbGVjZcWEICIKKyJ3eWtvbnl3YW55Y2ggcG9kY3phcyB0ZWdvIHNhbWVnbyBwcnplYmllZ3UuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjI1MyBkcGtnLWFyY2hpdGVjdHVyZS4xOjYwIGRwa2ctYnVpbGRmbGFncy4xOjg5IGRwa2ctZGl2ZXJ0Ljg6NzEKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6MzggZHBrZy1zY2Fuc291cmNlcy4xOjY2IGRwa2ctc3RhdG92ZXJyaWRlLjg6NDQKKyM6IGRwa2ctdmVuZG9yLjE6MjggZHNlbGVjdC4xOjExMyB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzE2CisjLCBuby13cmFwCittc2dpZCAiQjwtLWhlbHA+IgorbXNnc3RyICJCPC0taGVscD4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyNTYKK21zZ2lkICJEaXNwbGF5IGEgYnJpZWYgaGVscCBtZXNzYWdlLiIKK21zZ3N0ciAiV3nFm3dpZXRsZW5pZSBrcsOzdGtpZWdvIGtvbXVuaWthdHUgcG9tb2N5LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToyNTYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tZm9yY2UtaGVscD4iCittc2dzdHIgIkI8LS1mb3JjZS1oZWxwPiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjI1OQorbXNnaWQgIkdpdmUgaGVscCBhYm91dCB0aGUgQjwtLWZvcmNlLT5JPHRoaW5nPiBvcHRpb25zLiIKK21zZ3N0ciAiV3nFm3dpZXRsZW5pZSBvcGlzdSBvcGNqaSBCPC0tZm9yY2UtPkk8ZHppYcWCYW5pZT4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjI1OQorIywgbm8td3JhcAorbXNnaWQgIkI8LURoPiwgQjwtLWRlYnVnPWhlbHA+IgorbXNnc3RyICJCPC1EaD4sIEI8LS1kZWJ1Zz1oZWxwPiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjI2MgorbXNnaWQgIkdpdmUgaGVscCBhYm91dCBkZWJ1Z2dpbmcgb3B0aW9ucy4iCittc2dzdHIgIld5xZt3aWV0bGVuaWUgb3Bpc3Ugb3BjamkgZGVidWdnZXJhLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToyNjIgZHBrZy1hcmNoaXRlY3R1cmUuMTo2MyBkcGtnLWJ1aWxkZmxhZ3MuMTo5MgorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMjYgZHBrZy1jaGVja2J1aWxkZGVwcy4xOjM2IGRwa2ctZGlzdGFkZGZpbGUuMTozNQorIzogZHBrZy1kZWIuMToxNzUgZHBrZy1kaXZlcnQuODo3NCBkcGtnLWdlbmNoYW5nZXMuMToxMzQgZHBrZy1nZW5jb250cm9sLjE6MTI0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0NDYgZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTo0MSBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MzYKKyM6IGRwa2ctcXVlcnkuMToxMTMgZHBrZy1zY2FucGFja2FnZXMuMTo5OSBkcGtnLXNjYW5zb3VyY2VzLjE6NjgKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjE4IGRwa2ctc291cmNlLjE6OTkgZHBrZy1zcGxpdC4xOjEyOQorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo0NyBkcGtnLXRyaWdnZXIuMTozNCBkcGtnLXZlbmRvci4xOjMxIGRzZWxlY3QuMToxMTYKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMTkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tdmVyc2lvbj4iCittc2dzdHIgIkI8LS12ZXJzaW9uPiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjI2NQorbXNnaWQgIkRpc3BsYXkgQjxkcGtnPiB2ZXJzaW9uIGluZm9ybWF0aW9uLiIKK21zZ3N0ciAiV3nFm3dpZXRsZW5pZSBpbmZvcm1hY2ppIG8gd2Vyc2ppIEI8ZHBrZz4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjI2NQorIywgbm8td3JhcAorbXNnaWQgIkI8ZHBrZy1kZWIgYWN0aW9ucz4iCittc2dzdHIgIkI8YWtjamUgZHBrZy1kZWI+IgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MjY4Cittc2dpZCAiU2VlIEI8ZHBrZy1kZWI+KDEpIGZvciBtb3JlIGluZm9ybWF0aW9uIGFib3V0IHRoZSBmb2xsb3dpbmcgYWN0aW9ucy4iCittc2dzdHIgIiIKKyJQcm9zesSZIHphanJ6ZcSHIGRvIEI8ZHBrZy1kZWI+KDEpLCBhYnkgcG96bmHEhyBwZcWCbnkgb3BpcyBuYXN0xJlwdWrEhWN5Y2ggIgorImR6aWHFgmHFhC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyODgKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiQjwtYj4sIEI8LS1idWlsZD4gSTxkaXJlY3Rvcnk+IFtJPGFyY2hpdmU+fEk8ZGlyZWN0b3J5Pl1cbiIKKyIgICAgQnVpbGQgYSBkZWIgcGFja2FnZS5cbiIKKyJCPC1jPiwgQjwtLWNvbnRlbnRzPiBJPGFyY2hpdmU+XG4iCisiICAgIExpc3QgY29udGVudHMgb2YgYSBkZWIgcGFja2FnZS5cbiIKKyJCPC1lPiwgQjwtLWNvbnRyb2w+IEk8ZmlsZW5hbWU+IFtJPGRpcmVjdG9yeT5dXG4iCisiICAgIEV4dHJhY3QgY29udHJvbC1pbmZvcm1hdGlvbiBmcm9tIGEgcGFja2FnZS5cbiIKKyJCPC14PiwgQjwtLWV4dHJhY3Q+IEk8YXJjaGl2ZSBkaXJlY3Rvcnk+XG4iCisiICAgIEV4dHJhY3QgdGhlIGZpbGVzIGNvbnRhaW5lZCBieSBwYWNrYWdlLlxuIgorIkI8LVg+LCBCPC0tdmV4dHJhY3Q+IEk8YXJjaGl2ZSBkaXJlY3Rvcnk+XG4iCisiICAgIEV4dHJhY3QgYW5kIGRpc3BsYXkgdGhlIGZpbGVuYW1lcyBjb250YWluZWQgYnkgYVxuIgorIiAgICBwYWNrYWdlLlxuIgorIkI8LWY+LCBCPC0tZmllbGQ+ICBJPGFyY2hpdmU+IFtJPGNvbnRyb2wtZmllbGQ+Li4uXVxuIgorIiAgICBEaXNwbGF5IGNvbnRyb2wgZmllbGQocykgb2YgYSBwYWNrYWdlLlxuIgorIkI8LS1mc3lzLXRhcmZpbGU+IEk8YXJjaGl2ZT5cbiIKKyIgICAgRGlzcGxheSB0aGUgZmlsZXN5c3RlbSB0YXItZmlsZSBjb250YWluZWQgYnkgYVxuIgorIiAgICBEZWJpYW4gcGFja2FnZS5cbiIKKyJCPC1JPiwgQjwtLWluZm8+IEk8YXJjaGl2ZT4gW0k8Y29udHJvbC1maWxlPi4uLl1cbiIKKyIgICAgU2hvdyBpbmZvcm1hdGlvbiBhYm91dCBhIHBhY2thZ2UuXG4iCittc2dzdHIgIiIKKyJCPC1iPiwgQjwtLWJ1aWxkPiBJPGthdGFsb2c+IFtJPGFyY2hpd3VtPnxJPGthdGFsb2c+XVxuIgorIiAgICBaYnVkb3dhbmllIHBha2lldHUgZGViLlxuIgorIkI8LWM+LCBCPC0tY29udGVudHM+IEk8YXJjaGl3dW0+XG4iCisiICAgIFBvZGFuaWUgemF3YXJ0b8WbY2kgcGFraWV0dSBkZWIuXG4iCisiQjwtZT4sIEI8LS1jb250cm9sPiBJPG5hendhLXBsaWt1PiBbSTxrYXRhbG9nPl1cbiIKKyIgICAgUm96cGFrb3dhbmllIHBsaWvDs3cga29udHJvbG55Y2ggeiBwYWtpZXR1LlxuIgorIkI8LXg+LCBCPC0tZXh0cmFjdD4gSTxhcmNoaXd1bSBrYXRhbG9nPlxuIgorIiAgICAgUm96cGFrb3dhbmllIHBsaWvDs3cgemF3YXJ0eWNoIHcgcGFraWVjaWUuXG4iCisiQjwtWD4sIEI8LS12ZXh0cmFjdD4gSTxhcmNoaXd1bSBrYXRhbG9nPlxuIgorIiAgICBSb3pwYWtvd2FuaWUgcGFraWV0dSBpIHBvZGFuaWUgbmF6dyBwbGlrw7N3LCBrdMOzcmVcbiIKKyIgICAgemF3aWVyYSBwYWtpZXQuXG4iCisiQjwtZj4sIEI8LS1maWVsZD4gSTxhcmNoaXd1bT4gW0k8cG9sZS1rb250cm9sbmU+Li4uXVxuIgorIiAgICBQb2RhbmllIGluZm9ybWFjamkgeiBww7NsIGtvbnRyb2xueWNoIHBha2lldHUuXG4iCisiQjwtLWZzeXMtdGFyZmlsZT4gSTxhcmNoaXd1bT5cbiIKKyIgICAgUG9kYW5pZSBuYSBzdGRvdXQgYXJjaGl3dW0gdGFyLCBrdMOzcmUgemF3aWVyYSBwYWtpZXRcbiIKKyIgICAgRGViaWFuYS5cbiIKKyJCPC1JPiwgQjwtLWluZm8+IEk8YXJjaGl3dW0+IFtJPHBsaWsta29udHJvbG55Pi4uLl1cbiIKKyIgICAgIFBvZGFuaWUgaW5mb3JtYWNqaSBvIHBha2llY2llLlxuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjI5MAorIywgbm8td3JhcAorbXNnaWQgIkI8ZHBrZy1xdWVyeSBhY3Rpb25zPiIKK21zZ3N0ciAiQjxha2NqZSBkcGtnLXF1ZXJ5PiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjI5MworbXNnaWQgIlNlZSBCPGRwa2ctcXVlcnk+KDEpIGZvciBtb3JlIGluZm9ybWF0aW9uIGFib3V0IHRoZSBmb2xsb3dpbmcgYWN0aW9ucy4iCittc2dzdHIgIiIKKyJQcm9zesSZIHByemVjenl0YcSHIEI8ZHBrZy1xdWVyeT4oOCksIGFieSB1enlza2HEhyBzemN6ZWfDs8WCb3dlIGluZm9ybWFjamUgbyAiCisibmFzdMSZcHVqxIVjeWNoIGR6aWHFgmFuaWFjaC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTozMDgKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiQjwtbD4sIEI8LS1saXN0PiBJPHBhY2thZ2UtbmFtZS1wYXR0ZXJuPi4uLlxuIgorIiAgICBMaXN0IHBhY2thZ2VzIG1hdGNoaW5nIGdpdmVuIHBhdHRlcm4uXG4iCisiQjwtcz4sIEI8LS1zdGF0dXM+IEk8cGFja2FnZS1uYW1lPi4uLlxuIgorIiAgICBSZXBvcnQgc3RhdHVzIG9mIHNwZWNpZmllZCBwYWNrYWdlLlxuIgorIkI8LUw+LCBCPC0tbGlzdGZpbGVzPiBJPHBhY2thZ2UtbmFtZT4uLi5cbiIKKyIgICAgTGlzdCBmaWxlcyBpbnN0YWxsZWQgdG8geW91ciBzeXN0ZW0gZnJvbSBJPHBhY2thZ2UtbmFtZT4uXG4iCisiQjwtUz4sIEI8LS1zZWFyY2g+IEk8ZmlsZW5hbWUtc2VhcmNoLXBhdHRlcm4+Li4uXG4iCisiICAgIFNlYXJjaCBmb3IgYSBmaWxlbmFtZSBmcm9tIGluc3RhbGxlZCBwYWNrYWdlcy5cbiIKKyJCPC1wPiwgQjwtLXByaW50LWF2YWlsPiBJPHBhY2thZ2UtbmFtZT4uLi5cbiIKKyIgICAgRGlzcGxheSBkZXRhaWxzIGFib3V0IEk8cGFja2FnZS1uYW1lPiwgYXMgZm91bmQgaW5cbiIKKyIgICAgSTwvdmFyL2xpYi9kcGtnL2F2YWlsYWJsZT4uIFVzZXJzIG9mIEFQVC1iYXNlZCBmcm9udGVuZHNcbiIKKyIgICAgc2hvdWxkIHVzZSBCPGFwdC1jYWNoZSBzaG93PiBJPHBhY2thZ2UtbmFtZT4gaW5zdGVhZC5cbiIKK21zZ3N0ciAiIgorIkI8LWw+LCBCPC0tbGlzdD4gSTx3em9yemVjLW5henctcGFraWV0w7N3Pi4uLlxuIgorIiAgICBXecWbd2lldGxhIHBha2lldHkgcGFzdWrEhWNlIGRvIHd6b3JjYS5cbiIKKyJCPC1zPiwgQjwtLXN0YXR1cz4gSTxuYXp3YS1wYWtpZXR1Pi4uLlxuIgorIiAgICBXecWbd2lldGxhIGluZm9ybWFjamUgbyBzdGFuaWUgZGFuZWdvIHBha2lldHUuXG4iCisiQjwtTD4sIEI8LS1saXN0ZmlsZXM+IEk8bmF6d2EtcGFraWV0dT4uLi5cbiIKKyIgICAgV3nFm3dpZXRsYSBsaXN0xJkgcGxpa8OzdyB6YWluc3RhbG93YW55Y2ggdyBzeXN0ZW1pZSBwcnpleiBwYWtpZXQgSTxuYXp3YS1wYWtpZXR1Pi5cbiIKKyJCPC1TPiwgQjwtLXNlYXJjaD4gSTx3em9yemVjLXd5c3p1a2l3YW5pYS1uYXp3LXBsaWvDs3c+Li4uXG4iCisiICAgIFd5c3p1a3VqZSBuYXp3eSBwbGlrw7N3IHcgemFpbnN0YWxvd2FueWNoIHBha2lldGFjaC5cbiIKKyJCPC1wPiwgQjwtLXByaW50LWF2YWlsPiBJPG5hendhLXBha2lldHU+Li4uXG4iCisiICAgIFd5xZt3aWV0bGEgc3pjemVnw7PFgm93ZSBpbmZvcm1hY2plIG5hIHRlbWF0IHBha2lldHUgSTxuYXp3YS1wYWtpZXR1PixcbiIKKyIgICAgcG9jaG9kesSFY2UgeiBwbGlrdSBJPC92YXIvbGliL2Rwa2cvYXZhaWxhYmxlPi4gVcW8eXRrb3duaWN5IG5ha8WCYWRla1xuIgorIiAgICBvcGFydHljaCBvIEFQVCBwb3dpbm5pIHXFvHl3YcSHIEI8YXB0LWNhY2hlIHNob3c+IEk8cGFja2FnZS1uYW1lPiB6YW1pYXN0XG4iCisiICAgIHRlaiBvcGNqaS5cbiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2cuMTozMTAgZHBrZy1hcmNoaXRlY3R1cmUuMTo2NyBkcGtnLWJ1aWxkcGFja2FnZS4xOjUwCisjOiBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6MTggZHBrZy1kaXN0YWRkZmlsZS4xOjI3IGRwa2ctZGViLjE6MTc5CisjOiBkcGtnLWRpdmVydC44OjQyIGRwa2ctZ2VuY2hhbmdlcy4xOjE3IGRwa2ctZ2VuY29udHJvbC4xOjM3CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozNjkgZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMToyNyBkcGtnLW5hbWUuMTozMAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjE1IGRwa2ctcXVlcnkuMToxMTcgZHBrZy1zY2FucGFja2FnZXMuMTo3MQorIzogZHBrZy1zY2Fuc291cmNlcy4xOjQ0IGRwa2ctc2hsaWJkZXBzLjE6MTA2IGRwa2ctc3BsaXQuMToxMzMKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6NTEgZHBrZy10cmlnZ2VyLjE6MzggZHBrZy12ZW5kb3IuMTozNSBkc2VsZWN0LjE6MzYKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTAzIHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMjMKKyMsIG5vLXdyYXAKK21zZ2lkICJPUFRJT05TIgorbXNnc3RyICJPUENKRSIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjMxNgorbXNnaWQgIiIKKyJBbGwgb3B0aW9ucyBjYW4gYmUgc3BlY2lmaWVkIGJvdGggb24gdGhlIGNvbW1hbmQgbGluZSBhbmQgaW4gdGhlIEI8ZHBrZz4gIgorImNvbmZpZ3VyYXRpb24gZmlsZSBJPC9ldGMvZHBrZy9kcGtnLmNmZz4gb3IgdGhlIGZpbGVzIG9uIHRoZSBjb25maWd1cmF0aW9uICIKKyJkaXJlY3RvcnkgSTwvZXRjL2Rwa2cvZHBrZy5jZmcuZC8+LiBFYWNoIGxpbmUgaW4gdGhlIGNvbmZpZ3VyYXRpb24gZmlsZSBpcyAiCisiZWl0aGVyIGFuIG9wdGlvbiAoZXhhY3RseSB0aGUgc2FtZSBhcyB0aGUgY29tbWFuZCBsaW5lIG9wdGlvbiBidXQgd2l0aG91dCAiCisibGVhZGluZyBkYXNoZXMpIG9yIGEgY29tbWVudCAoaWYgaXQgc3RhcnRzIHdpdGggYSBCPCM+KS4iCittc2dzdHIgIiIKKyJXc3p5c3RraWUgb3BjamUgbW9nxIUgYnnEhyBwb2RhbmUgemFyw7N3bm8gdyBsaW5paSBwb2xlY2XFhCwgamFrIGkgdyBwbGlrdSAiCisia29uZmlndXJhY3lqbnltIEk8L2V0Yy9kcGtnL2Rwa2cuY2ZnPiBwcm9ncmFtdSBCPGRwa2c+IGx1YiB3IHBsaWthY2ggdyAiCisia2F0YWxvZ3Uga29uZmlndXJhY3lqbnltIEk8L2V0Yy9kcGtnL2Rwa2cuY2ZnLmQvPi4gS2HFvGRhIGxpbmlhIHBsaWt1ICIKKyJrb25maWd1cmFjeWpuZWdvIGplc3QgYWxibyBvcGNqxIUgKGRva8WCYWRuaWUgdGFrxIUgc2FtxIUgamFrIG9wY2phIGxpbmlpICIKKyJwb2xlY2XFhCwgYWxlIGJleiBwb2N6xIV0a293eWNoIG15xZtsbmlrw7N3KSwgYWxibyBrb21lbnRhcnplbSAoamXFvGVsaSB6YWN6eW5hICIKKyJzacSZIG9kIEI8Iz4pLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTozMTcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tYWJvcnQtYWZ0ZXI9Pkk8bnVtYmVyPiIKK21zZ3N0ciAiQjwtLWFib3J0LWFmdGVyPT5JPGxpY3piYT4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTozMjAKK21zZ2lkICJDaGFuZ2UgYWZ0ZXIgaG93IG1hbnkgZXJyb3JzIEI8ZHBrZz4gd2lsbCBhYm9ydC4gVGhlIGRlZmF1bHQgaXMgNTAuIgorbXNnc3RyICIiCisiWm1pYW5hIGxpY3pieSBixYLEmWTDs3csIHBvIGt0w7NyeWNoIEI8ZHBrZz4gemFwcnplc3RhbmllIGR6aWHFgmFuaWEuIERvbXnFm2xuYSAiCisid2FydG/Fm8SHIHRvIDUwLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTozMjAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1CPiwgQjwtLWF1dG8tZGVjb25maWd1cmU+IgorbXNnc3RyICJCPC1CPiwgQjwtLWF1dG8tZGVjb25maWd1cmU+IgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzI2Cittc2dpZCAiIgorIldoZW4gYSBwYWNrYWdlIGlzIHJlbW92ZWQsIHRoZXJlIGlzIGEgcG9zc2liaWxpdHkgdGhhdCBhbm90aGVyIGluc3RhbGxlZCAiCisicGFja2FnZSBkZXBlbmRlZCBvbiB0aGUgcmVtb3ZlZCBwYWNrYWdlLiBTcGVjaWZ5aW5nIHRoaXMgb3B0aW9uIHdpbGwgY2F1c2UgIgorImF1dG9tYXRpYyBkZWNvbmZpZ3VyYXRpb24gb2YgdGhlIHBhY2thZ2Ugd2hpY2ggZGVwZW5kZWQgb24gdGhlIHJlbW92ZWQgIgorInBhY2thZ2UuIgorbXNnc3RyICIiCisiR2R5IHBha2lldCBqZXN0IHVzdXdhbnksIG1vxbxsaXdlIGplc3QsIMW8ZSBpbm55IHphaW5zdGFsb3dhbnkgcGFraWV0IHphbGXFvHkgIgorIm9kIHRlZ28gdXN1d2FuZWdvLiBQb2RhbmllIHRlaiBvcGNqaSBzcG93b2R1amUgYXV0b21hdHljem5lIGRla29uZmlndXJvd2FuaWUgIgorInBha2lldMOzdywga3TDs3JlIHPEhSB6YWxlxbxuZSBvZCB1c3V3YW5lZ28uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjMyNgorIywgbm8td3JhcAorbXNnaWQgIkI8LUQ+STxvY3RhbD5CPCwgLS1kZWJ1Zz0+STxvY3RhbD4iCittc2dzdHIgIkI8LUQ+STzDs3NlbWtvd28+LCBCPC0tZGVidWc9Pkk8w7NzZW1rb3dvPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjMzMgorbXNnaWQgIiIKKyJTd2l0Y2ggZGVidWdnaW5nIG9uLiBJPG9jdGFsPiBpcyBmb3JtZWQgYnkgYml0d2lzZS1vcnJpbmcgZGVzaXJlZCB2YWx1ZXMgIgorInRvZ2V0aGVyIGZyb20gdGhlIGxpc3QgYmVsb3cgKG5vdGUgdGhhdCB0aGVzZSB2YWx1ZXMgbWF5IGNoYW5nZSBpbiBmdXR1cmUgIgorInJlbGVhc2VzKS4gQjwtRGg+IG9yIEI8LS1kZWJ1Zz1oZWxwPiBkaXNwbGF5IHRoZXNlIGRlYnVnZ2luZyB2YWx1ZXMuIgorbXNnc3RyICIiCisiV8WCxIVjemVuaWUgdHJ5YnUgZGVidWdnZXJhLiBJPMOzc2Vta293bz4gamVzdCBsaWN6YsSFIMOzc2Vta293xIUgYsSZZMSFY8SFIHN1bcSFICIKKyJsb2dpY3puxIUgYml0w7N3IG9wY2ppIGRlYnVnZ2VyYSB6IHBvbmnFvHN6ZWogbGlzdHkgKHRlIHdhcnRvxZtjaSBtb2fEhSBzacSZICIKKyJ6bWllbmnEhyB3IHByenlzesWCb8WbY2kpLiBQYXJhbWV0ciBCPC1EaD4gbHViIEI8LS1kZWJ1Zz1oZWxwPiB3ecWbd2lldGxhIHRlICIKKyJ3YXJ0b8WbY2kuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzQ3CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIiIKKyN8ICIgICAgbnVtYmVyICBkZXNjcmlwdGlvblxuIgorI3wgIiAgICAgICAgIDEgICBHZW5lcmFsbHkgaGVscGZ1bCBwcm9ncmVzcyBpbmZvcm1hdGlvblxuIgorI3wgIiAgICAgICAgIDIgICBJbnZvY2F0aW9uIGFuZCBzdGF0dXMgb2YgbWFpbnRhaW5lciBzY3JpcHRzXG4iCisjfCAiICAgICAgICAxMCAgIE91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZFxuIgorI3wgIiAgICAgICAxMDAgICBMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZFxuIgorI3wgIiAgICAgICAgMjAgICBPdXRwdXQgZm9yIGVhY2ggY29uZmlndXJhdGlvbiBmaWxlXG4iCisjfCAiICAgICAgIDIwMCAgIExvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZVxuIgorI3wgIiAgICAgICAgNDAgICBEZXBlbmRlbmNpZXMgYW5kIGNvbmZsaWN0c1xuIgorI3wgIiAgICAgICA0MDAgICBMb3RzIG9mIGRlcGVuZGVuY2llcy9jb25mbGljdHMgb3V0cHV0XG4iCisjfCAiICAgICAxMDAwMCAgIFRyaWdnZXIgYWN0aXZhdGlvbiBhbmQgcHJvY2Vzc2luZ1xuIgorI3wgIiAgICAgMjAwMDAgICBMb3RzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnNcbiIKKyN8ICIgICAgIDQwMDAwICAgU2lsbHkgYW1vdW50cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzXG4iCisjfCAiICAgICAgMTAwMCAgIExvdHMgb2YgZHJpdmVsIGFib3V0IGUuZy4gdGhlIGRwa2cvaW5mbyBkaXJcbiIKKyN8ICIgICAgICAyMDAwICAgSW5zYW5lIGFtb3VudHMgb2YgZHJpdmVsXG4iCittc2dpZCAiIgorIiAgICBOdW1iZXIgICBEZXNjcmlwdGlvblxuIgorIiAgICAgICAgIDEgICBHZW5lcmFsbHkgaGVscGZ1bCBwcm9ncmVzcyBpbmZvcm1hdGlvblxuIgorIiAgICAgICAgIDIgICBJbnZvY2F0aW9uIGFuZCBzdGF0dXMgb2YgbWFpbnRhaW5lciBzY3JpcHRzXG4iCisiICAgICAgICAxMCAgIE91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZFxuIgorIiAgICAgICAxMDAgICBMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZFxuIgorIiAgICAgICAgMjAgICBPdXRwdXQgZm9yIGVhY2ggY29uZmlndXJhdGlvbiBmaWxlXG4iCisiICAgICAgIDIwMCAgIExvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZVxuIgorIiAgICAgICAgNDAgICBEZXBlbmRlbmNpZXMgYW5kIGNvbmZsaWN0c1xuIgorIiAgICAgICA0MDAgICBMb3RzIG9mIGRlcGVuZGVuY2llcy9jb25mbGljdHMgb3V0cHV0XG4iCisiICAgICAxMDAwMCAgIFRyaWdnZXIgYWN0aXZhdGlvbiBhbmQgcHJvY2Vzc2luZ1xuIgorIiAgICAgMjAwMDAgICBMb3RzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnNcbiIKKyIgICAgIDQwMDAwICAgU2lsbHkgYW1vdW50cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzXG4iCisiICAgICAgMTAwMCAgIExvdHMgb2YgZHJpdmVsIGFib3V0IGUuZy4gdGhlIGRwa2cvaW5mbyBkaXJcbiIKKyIgICAgICAyMDAwICAgSW5zYW5lIGFtb3VudHMgb2YgZHJpdmVsXG4iCittc2dzdHIgIiIKKyIgICAgICBudW1lciAgb3Bpc1xuIgorIiAgICAgICAgIDEgICBPZ8OzbG5pZSBwcnp5ZGF0bmUgaW5mb3JtYWNqZSBvIHBvc3TEmXBpZVxuIgorIiAgICAgICAgIDIgICBXeXdvxYJhbmllIGkgc3RhbiBza3J5cHTDs3cga29udHJvbG55Y2hcbiIKKyIgICAgICAgIDEwICAgSW5mb3JtYWNqZSBvIGthxbxkeW0gcHJ6ZXR3YXJ6YW55bSBwbGlrdVxuIgorIiAgICAgICAxMDAgICBXacSZY2VqIGluZm9ybWFjamkgbyBrYcW8ZHltIHByemV0d2FyemFueW0gcGxpa3VcbiIKKyIgICAgICAgIDIwICAgSW5mb3JtYWNqZSBvIGthxbxkeW0gcGxpa3Uga29uZmlndXJhY3lqbnltXG4iCisiICAgICAgIDIwMCAgIFdpxJljZWogaW5mb3JtYWNqaSBvIGthxbxkeW0gcGxpa3Uga29uZmlndXJhY3lqbnltXG4iCisiICAgICAgICA0MCAgIFphbGXFvG5vxZtjaSBpIGtvbmZsaWt0eVxuIgorIiAgICAgICA0MDAgICBXacSZY2VqIGluZm9ybWFjamkgbyB6YWxlxbxub8WbY2lhY2ggaSBrb25mbGlrdGFjaFxuIgorIiAgICAgMTAwMDAgICBJbmZvcm1hY2plIG8gYWt0eXdhY2ppIGkgcHJ6ZXR3YXJ6YW5pdSB3eXp3YWxhY3p5XG4iCisiICAgICAyMDAwMCAgIFdpxJljZWogaW5mb3JtYWNqaSBkb3R5Y3rEhWN5Y2ggd3l6d2FsYWN6eVxuIgorIiAgICAgNDAwMDAgICBTemN6ZWfDs8WCb3dlIGluZm9ybWFjamUgZG90eWN6xIVjZSB3eXp3YWxhY3p5XG4iCisiICAgICAgMTAwMCAgIE1uw7NzdHdvIGluZm9ybWFjamkgbS5pbi4gbyBwbGlrYWNoIGluZm8geiBiYXp5IGRhbnljaCBkcGtnXG4iCisiICAgICAgMjAwMCAgIFJlc3p0YSBzemN6ZWfDs8WCb3d5Y2ggaW5mb3JtYWNqaVxuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjM0NworIywgbm8td3JhcAorbXNnaWQgIkI8LS1mb3JjZS0+STx0aGluZ3M+LCBCPC0tbm8tZm9yY2UtPkk8dGhpbmdzPiwgQjwtLXJlZnVzZS0+STx0aGluZ3M+IgorbXNnc3RyICJCPC0tZm9yY2UtPkk8ZHppYcWCYW5pYT4sIEI8LS1uby1mb3JjZS0+STxkemlhxYJhbmlhPiwgQjwtLXJlZnVzZS0+STxkemlhxYJhbmlhPiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjM1NAorbXNnaWQgIiIKKyJGb3JjZSBvciByZWZ1c2UgKEI8bm8tZm9yY2U+IGFuZCBCPHJlZnVzZT4gbWVhbiB0aGUgc2FtZSB0aGluZykgIHRvIGRvIHNvbWUgIgorInRoaW5ncy4gSTx0aGluZ3M+IGlzIGEgY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2YgdGhpbmdzIHNwZWNpZmllZCBiZWxvdy4gQjwtLSIKKyJmb3JjZS1oZWxwPiBkaXNwbGF5cyBhIG1lc3NhZ2UgZGVzY3JpYmluZyB0aGVtLiAgVGhpbmdzIG1hcmtlZCB3aXRoICgqKSBhcmUgIgorImZvcmNlZCBieSBkZWZhdWx0LiIKK21zZ3N0ciAiIgorIld5bXXFmyAoQjwtLWZvcmNlLT4pIHd5a29uYW5pZSBwZXdueWNoIGR6aWHFgmHFhCBsdWIgcG96b3N0YXcgZG9tecWbbG55IHNwb3PDs2IgIgorIihCPG5vLWZvcmNlPiBpIEI8cmVmdXNlPiBvem5hY3phasSFIHRvIHNhbW8pIHd5a29uYW5pYSBkemlhxYJhxYQuIEk8ZHppYcWCYW5pYT4gIgorInRvIHJvemR6aWVsb25hIHByemVjaW5rYW1pIGxpc3RhIGR6aWHFgmHFhC4gQjwtLWZvcmNlLWhlbHA+IHd5xZt3aWV0bGEgb3BpcyAiCisidHljaCBkemlhxYJhxYQuIER6aWHFgmFuaWEgb3puYWN6b25lIHByemV6ICgqKSBzxIUgZG9tecWbbG5pZSB3eW11c3pvbmUuIgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzU4Cittc2dpZCAiIgorIkk8V2FybmluZzogVGhlc2Ugb3B0aW9ucyBhcmUgbW9zdGx5IGludGVuZGVkIHRvIGJlIHVzZWQgYnkgZXhwZXJ0cyBvbmx5LiAiCisiVXNpbmcgdGhlbSB3aXRob3V0IGZ1bGx5IHVuZGVyc3RhbmRpbmcgdGhlaXIgZWZmZWN0cyBtYXkgYnJlYWsgeW91ciB3aG9sZSAiCisic3lzdGVtLj4iCittc2dzdHIgIiIKKyJJPE9zdHJ6ZcW8ZW5pZTogVGUgb3BjamUgc8SFIHp3eWtsZSBwcnplem5hY3pvbmUgd3nFgsSFY3puaWUgZGxhIGRvxZt3aWFkY3pvbnljaCAiCisidcW8eXRrb3duaWvDs3cuIFXFvHljaWUgaWNoIGJleiBwZcWCbmVnbyB6cm96dW1pZW5pYSBlZmVrdHUgZHppYcWCYW5pYSBtb8W8ZSAiCisic3Bvd29kb3dhxIcgdXN6a29kemVuaWUgc3lzdGVtdS4+IgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzYxCittc2dpZCAiQjxhbGw+OiBUdXJucyBvbiAob3Igb2ZmKSBhbGwgZm9yY2Ugb3B0aW9ucy4iCittc2dzdHIgIkI8YWxsPjogV8WCxIVjemEgKGx1YiB3ecWCxIVjemEpIHdzenlzdGtpZSBvcGNqZSB0eXB1IFwiZm9yY2VcIi4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTozNjQKK21zZ2lkICIiCisiQjxkb3duZ3JhZGU+KCopOiBJbnN0YWxsIGEgcGFja2FnZSwgZXZlbiBpZiBuZXdlciB2ZXJzaW9uIG9mIGl0IGlzIGFscmVhZHkgIgorImluc3RhbGxlZC4iCittc2dzdHIgIiIKKyJCPGRvd25ncmFkZT4oKik6IFphaW5zdGFsb3dhbmllIHBha2lldHUsIG5hd2V0IGdkeSBub3dzemEgamVnbyB3ZXJzamEgamVzdCAiCisianXFvCB6YWluc3RhbG93YW5hLiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjM3MQorbXNnaWQgIiIKKyJJPFdhcm5pbmc6IEF0IHByZXNlbnQgZHBrZyBkb2VzIG5vdCBkbyBhbnkgZGVwZW5kZW5jeSBjaGVja2luZyBvbiBkb3duZ3JhZGVzICIKKyJhbmQgdGhlcmVmb3JlIHdpbGwgbm90IHdhcm4geW91IGlmIHRoZSBkb3duZ3JhZGUgYnJlYWtzIHRoZSBkZXBlbmRlbmN5IG9mICIKKyJzb21lIG90aGVyIHBhY2thZ2UuIFRoaXMgY2FuIGhhdmUgc2VyaW91cyBzaWRlIGVmZmVjdHMsIGRvd25ncmFkaW5nICIKKyJlc3NlbnRpYWwgc3lzdGVtIGNvbXBvbmVudHMgY2FuIGV2ZW4gbWFrZSB5b3VyIHdob2xlIHN5c3RlbSB1bnVzYWJsZS4gVXNlICIKKyJ3aXRoIGNhcmUuPiIKK21zZ3N0ciAiIgorIkk8T3N0cnplxbxlbmllOiBXIGNod2lsaSBvYmVjbmVqIGRwa2cgbmllIHNwcmF3ZHphIHphbGXFvG5vxZtjaSBwb2RjemFzICIKKyJpbnN0YWxvd2FuaWEgc3RhcnN6ZWogd2Vyc2ppIHBha2lldHUgaSBkbGF0ZWdvIG5pZSB3eXBpc3plIG9zdHJ6ZcW8ZW5pYSwgIgorImplxbxlbGkgemFpbnN0YWxvd2FuaWUgc3RhcnN6ZWogd2Vyc2ppIHBvcHN1amUgemFsZcW8bm/Fm2NpIGlubnljaCBwYWtpZXTDs3cuICIKKyJJbnN0YWxvd2FuaWUgc3RhcnN6eWNoIHdlcnNqaSBuaWV6YsSZZG55Y2ggKGVzc2VudGlhbCkgcGFraWV0w7N3IG1vxbxlICIKKyJzcG93b2Rvd2HEhyAtIGkgamVzdCB0byBwb3dhxbxueSBza3V0ZWsgdWJvY3pueSAtIMW8ZSBUd8OzaiBzeXN0ZW0gbmllIGLEmWR6aWUgIgorInNpxJkgbmFkYXdhxYIgZG8gdcW8eXRrdS4gUHJvc3rEmSB1xbx5d2HEhyB0ZWogb3Bjamkgb3N0cm/FvG5pZS4+IgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6Mzc1Cittc2dpZCAiIgorIkI8Y29uZmlndXJlLWFueT46IENvbmZpZ3VyZSBhbHNvIGFueSB1bnBhY2tlZCBidXQgdW5jb25maWd1cmVkIHBhY2thZ2VzIG9uICIKKyJ3aGljaCB0aGUgY3VycmVudCBwYWNrYWdlIGRlcGVuZHMuIgorbXNnc3RyICIiCisiQjxjb25maWd1cmUtYW55PjogU2tvbmZpZ3Vyb3dhbmllIHdzenlzdGtpY2ggcm96cGFrb3dhbnljaCBhbGUgIgorIm5pZXNrb25maWd1cm93YW55Y2ggcGFraWV0w7N3LCBvZCBrdMOzcnljaCB6YWxlxbx5IGJpZcW8xIVjeSBwYWtpZXQuIgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6Mzc4Cittc2dpZCAiQjxob2xkPjogUHJvY2VzcyBwYWNrYWdlcyBldmVuIHdoZW4gbWFya2VkIFwiaG9sZFwiLiIKK21zZ3N0ciAiIgorIkI8aG9sZD46IER6aWHFgmFuaWUgb2Jlam1pZSB0YWvFvGUgcGFraWV0eSBvem5hY3pvbmUgamFrbyBcIndzdHJ6eW1hbmUiCisiXCIgKGhvbGQpLiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjM4MworbXNnaWQgIiIKKyJCPHJlbW92ZS1yZWluc3RyZXE+OiBSZW1vdmUgYSBwYWNrYWdlLCBldmVuIGlmIGl0J3MgYnJva2VuIGFuZCBtYXJrZWQgdG8gIgorInJlcXVpcmUgcmVpbnN0YWxsYXRpb24uIFRoaXMgbWF5LCBmb3IgZXhhbXBsZSwgY2F1c2UgcGFydHMgb2YgdGhlIHBhY2thZ2UgdG8gIgorInJlbWFpbiBvbiB0aGUgc3lzdGVtLCB3aGljaCB3aWxsIHRoZW4gYmUgZm9yZ290dGVuIGJ5IEI8ZHBrZz4uIgorbXNnc3RyICIiCisiQjxyZW1vdmUtcmVpbnN0cmVxPjogVXN1bmnEmWNpZSBwYWtpZXR1LCBuYXdldCB3dGVkeSBnZHkgamVzdCB1c3prb2R6b255IGkgIgorInd5bWFnYSBwcnplaW5zdGFsb3dhbmlhLiBNb8W8ZSB0byBzcG93b2Rvd2HEhyBwb3pvc3Rhd2llbmllIGN6xJnFm2NpIHBha2lldHUgdyAiCisic3lzdGVtaWUsIGdkecW8IEI8ZHBrZz4gemFwb21uaSBvIG5pZWouIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6Mzg4Cittc2dpZCAiIgorIkI8cmVtb3ZlLWVzc2VudGlhbD46IFJlbW92ZSwgZXZlbiBpZiB0aGUgcGFja2FnZSBpcyBjb25zaWRlcmVkIGVzc2VudGlhbC4gIgorIkVzc2VudGlhbCBwYWNrYWdlcyBjb250YWluIG1vc3RseSB2ZXJ5IGJhc2ljIFVuaXggY29tbWFuZHMuIFJlbW92aW5nIHRoZW0gIgorIm1pZ2h0IGNhdXNlIHRoZSB3aG9sZSBzeXN0ZW0gdG8gc3RvcCB3b3JraW5nLCBzbyB1c2Ugd2l0aCBjYXV0aW9uLiIKK21zZ3N0ciAiIgorIkI8cmVtb3ZlLWVzc2VudGlhbD46IFVzdW5pxJljaWUgcGFraWV0dSwgbmF3ZXQgd3RlZHkgZ2R5IGplc3Qgb24gdXpuYW55IHphICIKKyJuaWV6YsSZZG55IChlc3NlbnRpYWwpLiBQYWtpZXR5IG5pZXpixJlkbmUgemF3aWVyYWrEhSBwb2RzdGF3b3dlIHBvbGVjZW5pYSAiCisiVW5pa3NhLiBVc3VuacSZY2llIGljaCBtb8W8ZSBzcG93b2Rvd2HEhywgxbxlIHN5c3RlbSBwcnplc3RhbmllIGR6aWHFgmHEhy4gTmFsZcW8eSAiCisiemFjaG93YcSHIHN6Y3plZ8OzbG7EhSBvc3Ryb8W8bm/Fm8SHIHByenkgdcW8eWNpdSB0ZWogb3BjamkuIgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzkxCittc2dpZCAiQjxkZXBlbmRzPjogVHVybiBhbGwgZGVwZW5kZW5jeSBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzLiIKK21zZ3N0ciAiIgorIkI8ZGVwZW5kcz46IFphbWlhbmEgd3N6eXN0a2ljaCBwcm9ibGVtw7N3IHogemFsZcW8bm/Fm2NpYW1pIG5hIG9zdHJ6ZcW8ZW5pYS4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTozOTQKK21zZ2lkICIiCisiQjxkZXBlbmRzLXZlcnNpb24+OiBEb24ndCBjYXJlIGFib3V0IHZlcnNpb25zIHdoZW4gY2hlY2tpbmcgZGVwZW5kZW5jaWVzLiIKK21zZ3N0ciAiIgorIkI8ZGVwZW5kcy12ZXJzaW9uPjogWmlnbm9yb3dhbmllIHByb2JsZW3Ds3cgeiBudW1lcmFtaSB3ZXJzamkgcHJ6eSAiCisic3ByYXdkemFuaXUgemFsZcW8bm/Fm2NpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjM5NworbXNnaWQgIkI8YnJlYWtzPjogSW5zdGFsbCwgZXZlbiBpZiB0aGlzIHdvdWxkIGJyZWFrIGFub3RoZXIgcGFja2FnZS4iCittc2dzdHIgIkI8YnJlYWtzPjogSW5zdGFsYWNqYSwgbmF3ZXQgamXFm2xpYnkgdG8gcG9wc3XFgm8gaW5ueSBwYWtpZXQuIgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDAxCittc2dpZCAiIgorIkI8Y29uZmxpY3RzPjogSW5zdGFsbCwgZXZlbiBpZiBpdCBjb25mbGljdHMgd2l0aCBhbm90aGVyIHBhY2thZ2UuIFRoaXMgaXMgIgorImRhbmdlcm91cywgZm9yIGl0IHdpbGwgdXN1YWxseSBjYXVzZSBvdmVyd3JpdGluZyBvZiBzb21lIGZpbGVzLiIKK21zZ3N0ciAiIgorIkI8Y29uZmxpY3RzPjogSW5zdGFsYWNqYSwgbmF3ZXQgZ2R5IHBha2lldCBwb3dvZHVqZSBrb25mbGlrdCB6IGlubnltLiAiCisiUG93c3RhxIcgbW/FvGUgbmllYmV6cGllY3plxYRzdHdvIG5hZHBpc2FuaWEgcGxpa8OzdyB6IGlubmVnbyBwYWtpZXR1LCBkbGF0ZWdvICIKKyJuYWxlxbx5IHphY2hvd2HEhyBvc3Ryb8W8bm/Fm8SHIHByenkgdcW8eWNpdSB0ZWogb3BjamkuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDA2Cittc2dpZCAiIgorIkI8Y29uZm1pc3M+OiBBbHdheXMgaW5zdGFsbCBhIG1pc3NpbmcgY29uZmZpbGUuIFRoaXMgaXMgZGFuZ2Vyb3VzLCBzaW5jZSBpdCAiCisibWVhbnMgbm90IHByZXNlcnZpbmcgYSBjaGFuZ2UgKHJlbW92aW5nKSBtYWRlIHRvIHRoZSBmaWxlLiIKK21zZ3N0ciAiIgorIkI8Y29uZm1pc3M+OiBaYXdzemUgYsSZZMSFIGluc3RhbG93YW5lIGJyYWt1asSFY2UgcGxpa2kga29uZmlndXJhY3lqbmUuICIKKyJVxbx5d2FuaWUgdGVqIG9wY2ppIG1vxbxlIGJ5xIcgbmllYmV6cGllY3puZSwgcG9uaWV3YcW8IG5pZSB6YWNob3d1amUgdG8gem1pYW55ICIKKyJkb2tvbmFuZWogbmEgcGxpa3UgKGN6eWxpIGplZ28gdXN1bmnEmWNpYSkuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDExCittc2dpZCAiIgorIkI8Y29uZm5ldz46IElmIGEgY29uZmZpbGUgaGFzIGJlZW4gbW9kaWZpZWQgYWx3YXlzIGluc3RhbGwgdGhlIG5ldyB2ZXJzaW9uICIKKyJ3aXRob3V0IHByb21wdGluZywgdW5sZXNzIHRoZSBCPC0tZm9yY2UtY29uZmRlZj4gaXMgYWxzbyBzcGVjaWZpZWQsIGluIHdoaWNoICIKKyJjYXNlIHRoZSBkZWZhdWx0IGFjdGlvbiBpcyBwcmVmZXJyZWQuIgorbXNnc3RyICIiCisiQjxjb25mbmV3PjogSmXFm2xpIHBsaWsga29uZmlndXJhY3lqbnkgem9zdGHFgiB6bW9keWZpa293YW55LCB6YWluc3RhbG93YW5hICIKKyJ6b3N0YW5pZSBqZWdvIG5vd2Egd2Vyc2phIGJleiBweXRhbmlhLCBjaHliYSDFvGUgdcW8eXRvIHLDs3duaWXFvCBvcGNqaSBCPC0tIgorImZvcmNlLWNvbmZkZWY+LCBjbyBzcG93b2R1amUgd3lrb25hbmllIGRvbXnFm2xuZWogYWtjamkuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDE2Cittc2dpZCAiIgorIkI8Y29uZm9sZD46IElmIGEgY29uZmZpbGUgaGFzIGJlZW4gbW9kaWZpZWQgYWx3YXlzIGtlZXAgdGhlIG9sZCB2ZXJzaW9uICIKKyJ3aXRob3V0IHByb21wdGluZywgdW5sZXNzIHRoZSBCPC0tZm9yY2UtY29uZmRlZj4gaXMgYWxzbyBzcGVjaWZpZWQsIGluIHdoaWNoICIKKyJjYXNlIHRoZSBkZWZhdWx0IGFjdGlvbiBpcyBwcmVmZXJyZWQuIgorbXNnc3RyICIiCisiQjxjb25mb2xkPjogSmXFm2xpIHBsaWsga29uZmlndXJhY3lqbnkgem9zdGHFgiB6bW9keWZpa293YW55LCBzdGFyYSB3ZXJzamEgIgorInpvc3RhbmllIHphY2hvd2FuYSBiZXogcHl0YW5pYSwgY2h5YmEgxbxlIHXFvHl0byByw7N3bmllxbwgb3BjamkgQjwtLWZvcmNlLSIKKyJjb25mZGVmPiwgY28gc3Bvd29kdWplIHd5a29uYW5pZSBkb215xZtsbmVqIGFrY2ppLiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQyMgorbXNnaWQgIiIKKyJCPGNvbmZkZWY+OiBJZiBhIGNvbmZmaWxlIGhhcyBiZWVuIG1vZGlmaWVkIGFsd2F5cyBjaG9vc2UgdGhlIGRlZmF1bHQgIgorImFjdGlvbi4gSWYgdGhlcmUgaXMgbm8gZGVmYXVsdCBhY3Rpb24gaXQgd2lsbCBzdG9wIHRvIGFzayB0aGUgdXNlciB1bmxlc3MgIgorIkI8LS1mb3JjZS1jb25mbmV3PiBvciBCPC0tZm9yY2UtY29uZm9sZD4gaXMgYWxzbyBiZWVuIGdpdmVuLCBpbiB3aGljaCBjYXNlICIKKyJpdCB3aWxsIHVzZSB0aGF0IHRvIGRlY2lkZSB0aGUgZmluYWwgYWN0aW9uLiIKK21zZ3N0ciAiIgorIkI8Y29uZmRlZj46IEplxZtsaSBwbGlrIGtvbmZpZ3VyYWN5am55IHpvc3RhxYIgem1vZHlmaWtvd2FueSwgd3licmFuZSB6b3N0YW5pZSAiCisiZG9tecWbbG5lIGR6aWHFgmFuaWUuIEplxbxlbGkgbmllIG9rcmXFm2xvbm8gZG9tecWbbG5laiBha2NqaSwgdcW8eXRrb3duaWsgIgorInpvc3RhbmllIHBvcHJvc3pvbnkgbyBkb2tvbmFuaWUgd3lib3J1LiBQb2RhbmllIGRvZGF0a293byBvcGNqaSBCPC0tZm9yY2UtIgorImNvbmZuZXc+IGx1YiBCPC0tZm9yY2UtY29uZm9sZD4gemRlY3lkdWplIG8gZGFsc3p5bSBkemlhxYJhbml1LiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQyOQorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiQjxjb25mZGVmPjogSWYgYSBjb25mZmlsZSBoYXMgYmVlbiBtb2RpZmllZCBhbHdheXMgY2hvb3NlIHRoZSBkZWZhdWx0ICIKKyN8ICJhY3Rpb24uIElmIHRoZXJlIGlzIG5vIGRlZmF1bHQgYWN0aW9uIGl0IHdpbGwgc3RvcCB0byBhc2sgdGhlIHVzZXIgdW5sZXNzICIKKyN8ICJCPC0tZm9yY2UtY29uZm5ldz4gb3IgQjwtLWZvcmNlLWNvbmZvbGQ+IGlzIGFsc28gYmVlbiBnaXZlbiwgaW4gd2hpY2ggIgorI3wgImNhc2UgaXQgd2lsbCB1c2UgdGhhdCB0byBkZWNpZGUgdGhlIGZpbmFsIGFjdGlvbi4iCittc2dpZCAiIgorIkI8Y29uZmFzaz46IElmIGEgY29uZmZpbGUgaGFzIGJlZW4gbW9kaWZpZWQgYWx3YXlzIG9mZmVyIHRvIHJlcGxhY2UgaXQgd2l0aCAiCisidGhlIHZlcnNpb24gaW4gdGhlIHBhY2thZ2UsIGV2ZW4gaWYgdGhlIHZlcnNpb24gaW4gdGhlIHBhY2thZ2UgZGlkIG5vdCAiCisiY2hhbmdlLiBJZiBhbnkgb2YgQjwtLWZvcmNlLWNvbmZtaXNzPiwgQjwtLWZvcmNlLWNvbmZuZXc+LCBCPC0tZm9yY2UtIgorImNvbmZvbGQ+LCBvciBCPC0tZm9yY2UtY29uZmRlZj4gaXMgYWxzbyBnaXZlbiwgaXQgd2lsbCBiZSB1c2VkIHRvIGRlY2lkZSB0aGUgIgorImZpbmFsIGFjdGlvbi4iCittc2dzdHIgIiIKKyJCPGNvbmZkZWY+OiBKZcWbbGkgcGxpayBrb25maWd1cmFjeWpueSB6b3N0YcWCIHptb2R5Zmlrb3dhbnksIHd5YnJhbmUgem9zdGFuaWUgIgorImRvbXnFm2xuZSBkemlhxYJhbmllLiBKZcW8ZWxpIG5pZSBva3JlxZtsb25vIGRvbXnFm2xuZWogYWtjamksIHXFvHl0a293bmlrICIKKyJ6b3N0YW5pZSBwb3Byb3N6b255IG8gZG9rb25hbmllIHd5Ym9ydS4gUG9kYW5pZSBkb2RhdGtvd28gb3BjamkgQjwtLWZvcmNlLSIKKyJjb25mbmV3PiBsdWIgQjwtLWZvcmNlLWNvbmZvbGQ+IHpkZWN5ZHVqZSBvIGRhbHN6eW0gZHppYcWCYW5pdS4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0MzIKK21zZ2lkICJCPG92ZXJ3cml0ZT46IE92ZXJ3cml0ZSBvbmUgcGFja2FnZSdzIGZpbGUgd2l0aCBhbm90aGVyJ3MgZmlsZS4iCittc2dzdHIgIiIKKyJCPG92ZXJ3cml0ZT46IE5hZHBpc2FuaWUgcGxpa8OzdyB6IGlubnljaCBwYWtpZXTDs3csIHcgcHJ6eXBhZGt1IGdkeSBkYW55IHBsaWsgIgorInd5c3TEmXB1amUgdGFrxbxlIHcgaW5ueW0gcGFraWVjaWUuIgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDM1Cittc2dpZCAiQjxvdmVyd3JpdGUtZGlyPiBPdmVyd3JpdGUgb25lIHBhY2thZ2UncyBkaXJlY3Rvcnkgd2l0aCBhbm90aGVyJ3MgZmlsZS4iCittc2dzdHIgIiIKKyJCPG92ZXJ3cml0ZS1kaXI+IE5hZHBpc2FuaWUga2F0YWxvZ8OzdyB6IGlubnljaCBwYWtpZXTDs3csIHcgcHJ6eXBhZGt1IGdkeSAiCisiZGFueSBrYXRhbG9nIHd5c3TEmXB1amUgdGFrxbxlIHcgaW5ueW0gcGFraWVjaWUuIgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDM4Cittc2dpZCAiIgorIkI8b3ZlcndyaXRlLWRpdmVydGVkPjogT3ZlcndyaXRlIGEgZGl2ZXJ0ZWQgZmlsZSB3aXRoIGFuIHVuZGl2ZXJ0ZWQgdmVyc2lvbi4iCittc2dzdHIgIiIKKyJCPG92ZXJ3cml0ZS1kaXZlcnRlZD46IE5hZHBpc2FuaWUgcGxpa8OzdyBvbWluacSZdHljaCBwbGlrYW1pIG5pZW9taW5pxJl0eW1pLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQ0NgorbXNnaWQgIiIKKyJCPHVuc2FmZS1pbz46IERvIG5vdCBwZXJmb3JtIHNhZmUgSS9PIG9wZXJhdGlvbnMgd2hlbiB1bnBhY2tpbmcuIEN1cnJlbnRseSAiCisidGhpcyBpbXBsaWVzIG5vdCBwZXJmb3JtaW5nIGZpbGUgc3lzdGVtIHN5bmNzIGJlZm9yZSBmaWxlIHJlbmFtZXMsIHdoaWNoIGlzICIKKyJrbm93biB0byBjYXVzZSBzdWJzdGFudGlhbCBwZXJmb3JtYW5jZSBkZWdyYWRhdGlvbiBvbiBzb21lIGZpbGUgc3lzdGVtcywgIgorInVuZm9ydHVuYXRlbHkgdGhlIG9uZXMgdGhhdCByZXF1aXJlIHRoZSBzYWZlIEkvTyBvbiB0aGUgZmlyc3QgcGxhY2UgZHVlIHRvICIKKyJ0aGVpciB1bnJlbGlhYmxlIGJlaGF2aW91ciBjYXVzaW5nIHplcm8tbGVuZ3RoIGZpbGVzIG9uIGFicnVwdCBzeXN0ZW0gIgorImNyYXNoZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0NTIKK21zZ2lkICIiCisiSTxOb3RlPjogRm9yIGV4dDQsIHRoZSBtYWluIG9mZmVuZGVyLCBjb25zaWRlciB1c2luZyBpbnN0ZWFkIHRoZSBtb3VudCAiCisib3B0aW9uIEI8bm9kZWxhbGxvYz4sIHdoaWNoIHdpbGwgZml4IGJvdGggdGhlIHBlcmZvcm1hbmNlIGRlZ3JhZGF0aW9uIGFuZCAiCisidGhlIGRhdGEgc2FmZXR5IGlzc3VlcywgdGhlIGxhdHRlciBieSBtYWtpbmcgdGhlIGZpbGUgc3lzdGVtIG5vdCBwcm9kdWNlICIKKyJ6ZXJvLWxlbmd0aCBmaWxlcyBvbiBhYnJ1cHQgc3lzdGVtIGNyYXNoZXMgd2l0aCBhbnkgc29mdHdhcmUgbm90IGRvaW5nIHN5bmNzICIKKyJiZWZvcmUgYXRvbWljIHJlbmFtZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0NTUKK21zZ2lkICIiCisiSTxXYXJuaW5nOiBVc2luZyB0aGlzIG9wdGlvbiBtaWdodCBpbXByb3ZlIHBlcmZvcm1hbmNlIGF0IHRoZSBjb3N0IG9mIGxvc2luZyAiCisiZGF0YSwgdXNlIHdpdGggY2FyZS4+IgorbXNnc3RyICIiCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0NTgKKyMsIGZ1enp5CisjfCBtc2dpZCAiQjxhcmNoaXRlY3R1cmU+OiBQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB0aGUgd3JvbmcgYXJjaGl0ZWN0dXJlLiIKK21zZ2lkICJCPGFyY2hpdGVjdHVyZT46IFByb2Nlc3MgZXZlbiBwYWNrYWdlcyB3aXRoIHdyb25nIG9yIG5vIGFyY2hpdGVjdHVyZS4iCittc2dzdHIgIkI8YXJjaGl0ZWN0dXJlPjogRHppYcWCYW5pZSBvYmVqbWllIHBha2lldHkgeiBuaWVwb3ByYXduxIUgYXJjaGl0ZWt0dXLEhS4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0NjEKKyMsIGZ1enp5CisjfCBtc2dpZCAiQjxhcmNoaXRlY3R1cmU+OiBQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB0aGUgd3JvbmcgYXJjaGl0ZWN0dXJlLiIKK21zZ2lkICJCPGJhZC12ZXJzaW9uPjogUHJvY2VzcyBldmVuIHBhY2thZ2VzIHdpdGggd3JvbmcgdmVyc2lvbnMuIgorbXNnc3RyICJCPGFyY2hpdGVjdHVyZT46IER6aWHFgmFuaWUgb2Jlam1pZSBwYWtpZXR5IHogbmllcG9wcmF3bsSFIGFyY2hpdGVrdHVyxIUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDY0Cittc2dpZCAiIgorIkI8YmFkLXBhdGg+OiBCPFBBVEg+IGlzIG1pc3NpbmcgaW1wb3J0YW50IHByb2dyYW1zLCBzbyBwcm9ibGVtcyBhcmUgbGlrZWx5LiIKK21zZ3N0ciAiIgorIkI8YmFkLXBhdGg+OiBaaWdub3Jvd2FuaWUgYnJha3UgcGV3bnljaCBwcm9ncmFtw7N3IHcgxZtjaWXFvGNlIHptaWVubmVqICIKKyJzeXN0ZW1vd2VqIEI8UEFUSD4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDY3Cittc2dpZCAiQjxub3Qtcm9vdD46IFRyeSB0byAoZGUpaW5zdGFsbCB0aGluZ3MgZXZlbiB3aGVuIG5vdCByb290LiIKK21zZ3N0ciAiIgorIkI8bm90LXJvb3Q+OiBQcsOzYmEgKGRlKWluc3RhbGFjamksIGdkeSBkcGtnIG5pZSBqZXN0IHVydWNoYW1pYW55IHoga29udGEgIgorImFkbWluaXN0YXJ0b3JhLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQ3MAorbXNnaWQgIkI8YmFkLXZlcmlmeT46IEluc3RhbGwgYSBwYWNrYWdlIGV2ZW4gaWYgaXQgZmFpbHMgYXV0aGVudGljaXR5IGNoZWNrLiIKK21zZ3N0ciAiIgorIkI8YmFkLXZlcmlmeT46IEluc3RhbG93YW5pZSBwYWtpZXR1LCBuYXdldCBqZcW8ZWxpIG5pZSBwb3dpZWR6aWUgc2nEmSAiCisic3ByYXdkemVuaWUgamVnbyBhdXRlbnR5Y3pub8WbY2kuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjQ3MQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1pZ25vcmUtZGVwZW5kcz49STxwYWNrYWdlPiwuLi4iCittc2dzdHIgIkI8LS1pZ25vcmUtZGVwZW5kcz49STxwYWtpZXQ+LC4uLiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQ3NQorbXNnaWQgIiIKKyJJZ25vcmUgZGVwZW5kZW5jeS1jaGVja2luZyBmb3Igc3BlY2lmaWVkIHBhY2thZ2VzIChhY3R1YWxseSwgY2hlY2tpbmcgaXMgIgorInBlcmZvcm1lZCwgYnV0IG9ubHkgd2FybmluZ3MgYWJvdXQgY29uZmxpY3RzIGFyZSBnaXZlbiwgbm90aGluZyBlbHNlKS4iCittc2dzdHIgIiIKKyJaaWdub3Jvd2FuaWUgc3ByYXdkemFuaWEgemFsZcW8bm/Fm2NpIG9kIHBvZGFueWNoIHBha2lldMOzdyAoYSDFm2NpxZtsZWogcnplY3ogIgorImJpb3LEhWMsIHNwcmF3ZHphbmllIHNpxJkgb2RieXdhLCBhbGUgdyBwcnp5cGFka3Uga29uZmxpa3TDs3cgd3nFm3dpZXRsYW5lIGplc3QgIgorInR5bGtvIG9zdHJ6ZcW8ZW5pZSkuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjQ3NQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1uby1hY3Q+LCBCPC0tZHJ5LXJ1bj4sIEI8LS1zaW11bGF0ZT4iCittc2dzdHIgIkI8LS1uby1hY3Q+LCBCPC0tZHJ5LXJ1bj4sIEI8LS1zaW11bGF0ZT4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0ODAKK21zZ2lkICIiCisiRG8gZXZlcnl0aGluZyB3aGljaCBpcyBzdXBwb3NlZCB0byBiZSBkb25lLCBidXQgZG9uJ3Qgd3JpdGUgYW55IGNoYW5nZXMuICIKKyJUaGlzIGlzIHVzZWQgdG8gc2VlIHdoYXQgd291bGQgaGFwcGVuIHdpdGggdGhlIHNwZWNpZmllZCBhY3Rpb24sIHdpdGhvdXQgIgorImFjdHVhbGx5IG1vZGlmeWluZyBhbnl0aGluZy4iCittc2dzdHIgIiIKKyJQb2Rlam1vd2FuZSBkemlhxYJhbmlhIG5pZSBwb3dvZHVqxIUgxbxhZG55Y2ggem1pYW4uIFRhIG9wY2phIGplc3QgdcW8eXRlY3puYSwgIgorImdkeSBwb3RyemViYSBzcHJhd2R6acSHLCBjenkgZHppYcWCYW5pZSBzacSZIHd5a29uYSwgYWxlIGJleiBwb3dvZG93YW5pYSB6bWlhbiAiCisiY3plZ29rb2x3aWVrLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQ4NQorbXNnaWQgIiIKKyJCZSBzdXJlIHRvIGdpdmUgQjwtLW5vLWFjdD4gYmVmb3JlIHRoZSBhY3Rpb24tcGFyYW1ldGVyLCBvciB5b3UgbWlnaHQgZW5kIHVwICIKKyJ3aXRoIHVuZGVzaXJhYmxlIHJlc3VsdHMuIChlLmcuIEI8ZHBrZyAtLXB1cmdlIGZvbyAtLW5vLWFjdD4gd2lsbCBmaXJzdCAiCisicHVyZ2UgcGFja2FnZSBmb28gYW5kIHRoZW4gdHJ5IHRvIHB1cmdlIHBhY2thZ2UgLS1uby1hY3QsIGV2ZW4gdGhvdWdoIHlvdSAiCisicHJvYmFibHkgZXhwZWN0ZWQgaXQgdG8gYWN0dWFsbHkgZG8gbm90aGluZykiCittc2dzdHIgIiIKKyJPcGNqxJkgQjwtLW5vLWFjdD4gbmFsZcW8eSBwb2RhxIcgamFrbyBwaWVyd3N6eSBwYXJhbWV0ciwgZ2R5xbwgdyBwcnplY2l3bnltICIKKyJyYXppZSBtb8W8bmEgb3RyenltYcSHIG5pZXNwb2R6aWV3YW5lIGVmZWt0eS4gKG5wLiBCPGRwa2cgLS1wdXJnZSBibGEgLS1uby0iCisiYWN0PiB3eWN6ecWbY2kgcGFraWV0IGJsYSwgYSBuYXN0xJlwbmllIHNwcsOzYnVqZSB3eWN6ecWbY2nEhyBwYWtpZXQgbyBuYXp3aWUgLS0iCisibm8tYWN0LCBtaW1vIMW8ZSBuYWpwcmF3ZG9wb2RvYm5pZWogc3BvZHppZXdhxYJlxZsgc2nEmSwgxbxlIHRha2llIHBvbGVjZW5pZSBuaWMgIgorIm5pZSB6cm9iaSkuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjQ4NQorIywgbm8td3JhcAorbXNnaWQgIkI8LVI+LCBCPC0tcmVjdXJzaXZlPiIKK21zZ3N0ciAiQjwtUj4sIEI8LS1yZWN1cnNpdmU+IgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDkxCittc2dpZCAiIgorIlJlY3Vyc2l2ZWx5IGhhbmRsZSBhbGwgcmVndWxhciBmaWxlcyBtYXRjaGluZyBwYXR0ZXJuIEI8Ki5kZWI+IGZvdW5kIGF0ICIKKyJzcGVjaWZpZWQgZGlyZWN0b3JpZXMgYW5kIGFsbCBvZiBpdHMgc3ViZGlyZWN0b3JpZXMuIFRoaXMgY2FuIGJlIHVzZWQgd2l0aCAiCisiQjwtaT4sIEI8LUE+LCBCPC0taW5zdGFsbD4sIEI8LS11bnBhY2s+IGFuZCBCPC0tYXZhaWw+IGFjdGlvbnMuIgorbXNnc3RyICIiCisiRHppYcWCYW5pZSBvYmVqbWllIHdzenlzdGtpZSBwbGlraSBCPCouZGViPiB6IHBvZGFuZWdvIGthdGFsb2d1LCB3cmF6IHogIgorInBvZGthdGFsb2dhbWkgdGVnbyBrYXRhbG9ndS4gVGEgb3BjamEgbW/FvGUgem9zdGHEhyB1xbx5dGEgd3JheiB6IEI8LWk+LCBCPC1BPiwgIgorIkI8LS1pbnN0YWxsPiwgQjwtLXVucGFjaz4gb3JheiBCPC0tYXZhaWw+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo0OTEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1HPiIKK21zZ3N0ciAiQjwtRz4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0OTUKK21zZ2lkICIiCisiRG9uJ3QgaW5zdGFsbCBhIHBhY2thZ2UgaWYgYSBuZXdlciB2ZXJzaW9uIG9mIHRoZSBzYW1lIHBhY2thZ2UgaXMgYWxyZWFkeSAiCisiaW5zdGFsbGVkLiBUaGlzIGlzIGFuIGFsaWFzIG9mIEI8LS1yZWZ1c2UtZG93bmdyYWRlPi4iCittc2dzdHIgIiIKKyJOaWVpbnN0YWxvd2FuaWUgcGFraWV0dSwgamXFm2xpIGplZ28gbm93c3phIHdlcnNqYSBqZXN0IGp1xbwgemFpbnN0YWxvd2FuYS4gIgorIkplc3QgdG8gZG9rxYJhZG5pZSB0byBzYW1vLCBjbyBCPC0tcmVmdXNlLWRvd25ncmFkZT4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjQ5NSBkcGtnLWJ1aWxkcGFja2FnZS4xOjIxNyBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6MTkKKyM6IGRwa2ctcXVlcnkuMToxMTggZHBrZy1zaGxpYmRlcHMuMToyMTEgZHBrZy10cmlnZ2VyLjE6MzkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tYWRtaW5kaXI9Pkk8ZGlyPiIKK21zZ3N0ciAiQjwtLWFkbWluZGlyPT5JPGthdGFsb2c+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTAwCittc2dpZCAiIgorIkNoYW5nZSBkZWZhdWx0IGFkbWluaXN0cmF0aXZlIGRpcmVjdG9yeSwgd2hpY2ggY29udGFpbnMgbWFueSBmaWxlcyB0aGF0IGdpdmUgIgorImluZm9ybWF0aW9uIGFib3V0IHN0YXR1cyBvZiBpbnN0YWxsZWQgb3IgdW5pbnN0YWxsZWQgcGFja2FnZXMsIGV0Yy4gICIKKyIoRGVmYXVsdHMgdG8gSTwvdmFyL2xpYi9kcGtnPikiCittc2dzdHIgIiIKKyJabWlhbmEgZG9tecWbbG5lZ28ga2F0YWxvZ3UgYWRtaW5pc3RyYWN5am5lZ28sIHphd2llcmFqxIVjZWdvIHdpZWxlIHBsaWvDs3cgIgorImRvc3RhcmN6YWrEhWN5Y2ggaW5mb3JtYWNqaSBvIHN0YW5pZSB6YWluc3RhbG93YW55Y2ggaSBuaWV6YWluc3RhbG93YW55Y2ggIgorInBha2lldMOzdyBpdHAuIChXYXJ0b8WbxIcgZG9tecWbbG5hIHRvIEk8L3Zhci9saWIvZHBrZz4pLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo1MDAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0taW5zdGRpcj0+STxkaXI+IgorbXNnc3RyICJCPC0taW5zdGRpcj0+STxrYXRhbG9nPiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjUwNworbXNnaWQgIiIKKyJDaGFuZ2UgZGVmYXVsdCBpbnN0YWxsYXRpb24gZGlyZWN0b3J5IHdoaWNoIHJlZmVycyB0byB0aGUgZGlyZWN0b3J5IHdoZXJlICIKKyJwYWNrYWdlcyBhcmUgdG8gYmUgaW5zdGFsbGVkLiBCPGluc3RkaXI+IGlzIGFsc28gdGhlIGRpcmVjdG9yeSBwYXNzZWQgdG8gIgorIkI8Y2hyb290PigyKSBiZWZvcmUgcnVubmluZyBwYWNrYWdlJ3MgaW5zdGFsbGF0aW9uIHNjcmlwdHMsIHdoaWNoIG1lYW5zIHRoYXQgIgorInRoZSBzY3JpcHRzIHNlZSBCPGluc3RkaXI+IGFzIGEgcm9vdCBkaXJlY3RvcnkuICAoRGVmYXVsdHMgdG8gSTwvPikiCittc2dzdHIgIiIKKyJabWlhbmEgZG9tecWbbG5lZ28ga2F0YWxvZ3UgaW5zdGFsYWN5am5lZ28sIGN6eWxpIGthdGFsb2d1LCB3IGt0w7NyeW0gcGFraWV0eSAiCisic8SFIGluc3RhbG93YW5lLiBCPGluc3RkaXI+IGplc3QgdGFrxbxlIGthdGFsb2dpZW0gcHJ6ZWthenl3YW55bSBkbyBCPGNocm9vdD4iCisiKDIpIHByemVkIHVydWNob21pZW5pZW0gc2tyeXB0w7N3IGRvc3RhcmN6b255aGMgcHJ6ZXogb3BpZWt1bmEgcGFraWV0dSwgY28gIgorIm96bmFjemEsIMW8ZSBza3J5cHR5IHRlIHdpZHrEhSBCPGluc3RkaXI+IGpha28gZ8WCw7N3bnkga2F0YWxvZyBoaWVyYXJjaGlpLiAiCisiKFdhcnRvxZvEhyBkb215xZtsbmEgdG8gSTwvPikuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjUwNworIywgbm8td3JhcAorbXNnaWQgIkI8LS1yb290PT5JPGRpcj4iCittc2dzdHIgIkI8LS1yb290PT5JPGthdGFsb2c+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTExCittc2dpZCAiIgorIkNoYW5naW5nIEI8cm9vdD4gY2hhbmdlcyBCPGluc3RkaXI+IHRvIEk8ZGlyPiBhbmQgQjxhZG1pbmRpcj4gdG8gSTxkaXI+QjwvIgorInZhci9saWIvZHBrZz4uIgorbXNnc3RyICIiCisiWm1pYW5hIEI8cm9vdD4gem1pZW5pYSBCPGluc3RkaXI+IG5hIEk8a2F0YWxvZz4gaSBCPGFkbWluZGlyPiBuYSAiCisiSTxrYXRhbG9nPkI8L3Zhci9saWIvZHBrZz4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjUxMQorIywgbm8td3JhcAorbXNnaWQgIkI8LU8+LCBCPC0tc2VsZWN0ZWQtb25seT4iCittc2dzdHIgIkI8LU8+LCBCPC0tc2VsZWN0ZWQtb25seT4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1MTcKK21zZ2lkICIiCisiT25seSBwcm9jZXNzIHRoZSBwYWNrYWdlcyB0aGF0IGFyZSBzZWxlY3RlZCBmb3IgaW5zdGFsbGF0aW9uLiBUaGUgYWN0dWFsICIKKyJtYXJraW5nIGlzIGRvbmUgd2l0aCBCPGRzZWxlY3Q+IG9yIGJ5IEI8ZHBrZz4sIHdoZW4gaXQgaGFuZGxlcyBwYWNrYWdlcy4gRm9yICIKKyJleGFtcGxlLCB3aGVuIGEgcGFja2FnZSBpcyByZW1vdmVkLCBpdCB3aWxsIGJlIG1hcmtlZCBzZWxlY3RlZCBmb3IgIgorImRlaW5zdGFsbGF0aW9uLiIKK21zZ3N0ciAiIgorIkR6aWHFgmFuaWUgb2Jlam11amUgd3nFgsSFY3puaWUgcGFraWV0eSB3eWJyYW5lIGRvIGluc3RhbGFjamkuIFd5YsOzciBtb8W8ZSAiCisiem9zdGHEhyBkb2tvbmFueSBwcnpleiBwb2xlY2VuaWUgQjxkc2VsZWN0PiBsdWIgQjxkcGtnPiwgZ2R5IHd5a29udWplICIKKyJvcGVyYWNqZSBuYSBwYWtpZXRhY2guIE5hIHByenlrxYJhZCBwYWtpZXQgdXN1d2FueSBqZXN0IHphem5hY3phbnkgamFrbyAiCisid3licmFueSBkbyBvZGluc3RhbG93YW5pYS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTE3CisjLCBuby13cmFwCittc2dpZCAiQjwtRT4sIEI8LS1za2lwLXNhbWUtdmVyc2lvbj4iCittc2dzdHIgIkI8LUU+LCBCPC0tc2tpcC1zYW1lLXZlcnNpb24+IgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTIxCittc2dpZCAiIgorIkRvbid0IGluc3RhbGwgdGhlIHBhY2thZ2UgaWYgdGhlIHNhbWUgdmVyc2lvbiBvZiB0aGUgcGFja2FnZSBpcyBhbHJlYWR5ICIKKyJpbnN0YWxsZWQuIgorbXNnc3RyICIiCisiTmllaW5zdGFsb3dhbmllIHBha2lldHUsIGplxZtsaSBvIHRlaiBzYW1laiB3ZXJzamkgamVzdCBqdcW8IHphaW5zdGFsb3dhbnkgdyAiCisic3lzdGVtaWUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTIzCittc2dpZCAiQjwtLXByZS1pbnZva2U9Pkk8Y29tbWFuZD4iCittc2dzdHIgIkI8LS1wcmUtaW52b2tlPT5JPHBvbGVjZW5pZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1MjUKK21zZ2lkICJCPC0tcG9zdC1pbnZva2U9Pkk8Y29tbWFuZD4iCittc2dzdHIgIkI8LS1wb3N0LWludm9rZT0+STxwb2xlY2VuaWU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTM0Cittc2dpZCAiIgorIlNldCBhbiBpbnZva2UgaG9vayBJPGNvbW1hbmQ+IHRvIGJlIHJ1biB2aWEgYGBzaCAtYycnIGJlZm9yZSBvciBhZnRlciB0aGUgIgorImRwa2cgcnVuIGZvciB0aGUgSTx1bnBhY2s+LCBJPGNvbmZpZ3VyZT4sIEk8aW5zdGFsbD4sIEk8dHJpZ2dlcnMtb25seT4sICIKKyJJPHJlbW92ZT4gYW5kIEk8cHVyZ2U+IGRwa2cgYWN0aW9ucy4gVGhpcyBvcHRpb24gY2FuIGJlIHNwZWNpZmllZCBtdWx0aXBsZSAiCisidGltZXMuIFRoZSBvcmRlciB0aGUgb3B0aW9ucyBhcmUgc3BlY2lmaWVkIGlzIHByZXNlcnZlZCwgd2l0aCB0aGUgb25lcyBmcm9tICIKKyJ0aGUgY29uZmlndXJhdGlvbiBmaWxlcyB0YWtpbmcgcHJlY2VkZW5jZS4gIFRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZSAiCisiQjxEUEtHX0hPT0tfQUNUSU9OPiBpcyBzZXQgZm9yIHRoZSBob29rcyB0byB0aGUgY3VycmVudCBkcGtnIGFjdGlvbi4gTm90ZTogIgorImZyb250LWVuZHMgbWlnaHQgY2FsbCBkcGtnIHNldmVyYWwgdGltZXMgcGVyIGludm9jYXRpb24sIHdoaWNoIG1pZ2h0IHJ1biB0aGUgIgorImhvb2tzIG1vcmUgdGltZXMgdGhhbiBleHBlY3RlZC4iCittc2dzdHIgIiIKKyJPa3JlxZtsYSBkb2RhdGtvd2UgSTxwb2xlY2VuaWU+LCBrdMOzcmUgYsSZZHppZSB3eXdvxYJhbmUgcHJ6ZXogXCJzaCAtY1wiIHByemVkICIKKyJsdWIgcG8gd3lrb25hbml1IHByemV6IGRwa2cgYWtjamk6IEk8dW5wYWNrPiwgSTxjb25maWd1cmU+LCBJPGluc3RhbGw+LCAiCisiSTx0cmlnZ2Vycy1vbmx5PiwgSTxyZW1vdmU+IG9yYXogSTxwdXJnZT4uIE9wY2phIHRhIG1vxbxlIGJ5xIcgcG9kYW5hICIKKyJ3aWVsb2tyb3RuaWUuIFphY2hvd3l3YW5hIGplc3Qga29sZWpub8WbxIcgcG9kYXdhbmlhIG9wY2ppLCBwb3ByemVkemFuZSBzxIUgb25lICIKKyJqZXN6Y3plIG9wY2phbWkgeiBwbGlrw7N3IGtvbmZpZ3VyYWN5am55Y2guIFptaWVubmEgxZtyb2Rvd2lza2EgIgorIkI8RFBLR19IT09LX0FDVElPTj4gamVzdCB1c3Rhd2lhbmEgZGxhIGRvZGF0a293eWNoIHBvbGVjZcWEIG5hIHdhcnRvxZvEhyAiCisib2Rwb3dpYWRhasSFY8SFIGJpZcW8xIVjZWogYWtjamkgZHBrZy4gVXdhZ2E6IG5ha8WCYWRraSBtb2fEhSB1cnVjaGFtaWHEhyBkcGtnICIKKyJraWxrYSByYXp5IHcgY2nEhWd1IGplZG5lZ28gd3l3b8WCYW5pYSwgY28gbW/FvGUgc3Bvd29kb3dhxIcgdXJ1Y2hvbWllbmllICIKKyJkb2RhdGtvd3ljaCBwb2xlY2XFhCB3acSZY2VqIHJhenkgbmnFvCBvY3pla2l3YW5vLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjUzNworIywgZnV6enkKKyN8IG1zZ2lkICJCPC0tbGlzdD5JPCBnbG9iLXBhdHRlcm4+IgorbXNnaWQgIkI8LS1wYXRoLWV4Y2x1ZGU9Pkk8Z2xvYi1wYXR0ZXJuPiIKK21zZ3N0ciAiQjwtLWxpc3Q+STwgd3pvcnplYy1nbG9iPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjUzOQorIywgZnV6enkKKyN8IG1zZ2lkICJCPC0tbGlzdD5JPCBnbG9iLXBhdHRlcm4+IgorbXNnaWQgIkI8LS1wYXRoLWluY2x1ZGU9Pkk8Z2xvYi1wYXR0ZXJuPiIKK21zZ3N0ciAiQjwtLWxpc3Q+STwgd3pvcnplYy1nbG9iPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjU0MgorbXNnaWQgIiIKKyJTZXQgSTxnbG9iLXBhdHRlcm4+IGFzIGEgcGF0aCBmaWx0ZXIsIGVpdGhlciBieSBleGNsdWRpbmcgb3IgcmUtaW5jbHVkaW5nICIKKyJwcmV2aW91c2x5IGV4Y2x1ZGVkIHBhdGhzIG1hdGNoaW5nIHRoZSBzcGVjaWZpZWQgcGF0dGVybnMgZHVyaW5nIGluc3RhbGwuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1NDUKK21zZ2lkICIiCisiSTxXYXJuaW5nOiB0YWtlIGludG8gYWNjb3VudCB0aGF0IGRlcGVuZGluZyBvbiB0aGUgZXhjbHVkZWQgcGF0aHMgeW91IG1pZ2h0ICIKKyJjb21wbGV0ZWx5IGJyZWFrIHlvdXIgc3lzdGVtLCB1c2Ugd2l0aCBjYXV0aW9uLj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjU1NQorbXNnaWQgIiIKKyJUaGUgZ2xvYiBwYXR0ZXJucyB1c2UgdGhlIHNhbWUgd2lsZGNhcmRzIHVzZWQgaW4gdGhlIHNoZWxsLCB3ZXJlICcqJyBtYXRjaGVzICIKKyJhbnkgc2VxdWVuY2Ugb2YgY2hhcmFjdGVycywgaW5jbHVkaW5nIHRoZSBlbXB0eSBzdHJpbmcgYW5kIGFsc28gJy8nLiBGb3IgIgorImV4YW1wbGUsIEk8Jy91c3IvKi9SRUFEKic+IG1hdGNoZXMgSTwnL3Vzci9zaGFyZS9kb2MvcGFja2FnZS9SRUFETUUnPi4gIEFzICIKKyJ1c3VhbCwgJz8nIG1hdGNoZXMgYW55IHNpbmdsZSBjaGFyYWN0ZXIgKGFnYWluLCBpbmNsdWRpbmcgJy8nKS4gQW5kICdbJyAiCisic3RhcnRzIGEgY2hhcmFjdGVyIGNsYXNzLCB3aGljaCBjYW4gY29udGFpbiBhIGxpc3Qgb2YgY2hhcmFjdGVycywgcmFuZ2VzIGFuZCAiCisiY29tcGxlbWVudGF0aW9ucy4gU2VlIEI8Z2xvYj4oNykgZm9yIGRldGFpbGVkIGluZm9ybWF0aW9uIGFib3V0IGdsb2JiaW5nLiAiCisiTm90ZTogdGhlIGN1cnJlbnQgaW1wbGVtZW50YXRpb24gbWlnaHQgcmUtaW5jbHVkZSBtb3JlIGRpcmVjdG9yaWVzIGFuZCAiCisic3ltbGlua3MgdGhhbiBuZWVkZWQsIHRvIGJlIG9uIHRoZSBzYWZlIHNpZGUgYW5kIGF2b2lkIHBvc3NpYmxlIHVucGFjayAiCisiZmFpbHVyZXMsIGZ1dHVyZSB3b3JrIG1pZ2h0IGZpeCB0aGlzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTU4Cittc2dpZCAiIgorIlRoaXMgY2FuIGJlIHVzZWQgdG8gcmVtb3ZlIGFsbCBwYXRocyBleGNlcHQgc29tZSBwYXJ0aWN1bGFyIG9uZXM7IGEgdHlwaWNhbCAiCisiY2FzZSBpczoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjU2MgorIywgbm8td3JhcAorbXNnaWQgIiIKKyJCPC0tcGF0aC1leGNsdWRlPS91c3Ivc2hhcmUvZG9jLyo+XG4iCisiQjwtLXBhdGgtaW5jbHVkZT0vdXNyL3NoYXJlL2RvYy8qL2NvcHlyaWdodD5cbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTY1Cittc2dpZCAidG8gcmVtb3ZlIGFsbCBkb2N1bWVudGF0aW9uIGZpbGVzIGV4Y2VwdCB0aGUgY29weXJpZ2h0IGZpbGVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTY5Cittc2dpZCAiIgorIlRoZXNlIHR3byBvcHRpb25zIGNhbiBiZSBzcGVjaWZpZWQgbXVsdGlwbGUgdGltZXMsIGFuZCBpbnRlcmxlYXZlZCB3aXRoIGVhY2ggIgorIm90aGVyLiBCb3RoIGFyZSBwcm9jZXNzZWQgaW4gdGhlIGdpdmVuIG9yZGVyLCB3aXRoIHRoZSBsYXN0IHJ1bGUgdGhhdCAiCisibWF0Y2hlcyBhIGZpbGUgbmFtZSBtYWtpbmcgdGhlIGRlY2lzaW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjU3MAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1zdGF0dXMtZmQgPkk8bj4iCittc2dzdHIgIkI8LS1zdGF0dXMtZmQgPkk8bj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1NzYKK21zZ2lkICIiCisiU2VuZCBtYWNoaW5lLXJlYWRhYmxlIHBhY2thZ2Ugc3RhdHVzIGFuZCBwcm9ncmVzcyBpbmZvcm1hdGlvbiB0byBmaWxlICIKKyJkZXNjcmlwdG9yIEk8bj4uIFRoaXMgb3B0aW9uIGNhbiBiZSBzcGVjaWZpZWQgbXVsdGlwbGUgdGltZXMuIFRoZSAiCisiaW5mb3JtYXRpb24gaXMgZ2VuZXJhbGx5IG9uZSByZWNvcmQgcGVyIGxpbmUsIGluIG9uZSBvZiB0aGUgZm9sbG93aW5nIGZvcm1zOiIKK21zZ3N0ciAiIgorIld5c8WCYW5pZSBcImN6eXRlbG5lZ28gZGxhIG1hc3p5bnlcIiBzdGF0dXN1IHBha2lldHUgaSBpbmZvcm1hY2ppIG8gcG9zdMSZcGllICIKKyJkbyBkZXNrcnlwdG9yYSBwbGlrdSBJPG4+LiBUYSBvcGNqYSBtb8W8ZSBiecSHIHBvZGFuYSB3aWVsb2tyb3RuaWUuIEluZm9ybWFjamEgIgorImplc3Qgb2fDs2xuaWUgemFwaXN5d2FuYSBwbyBqZWRueW0gd3Bpc2llIHcgbGluaWksIHcgamVkbmVqIHogbmFzdMSZcHVqxIVjeWNoICIKKyJmb3JtOiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo1NzcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHN0YXR1czogPkk8cGFja2FnZT5CPDogPkk8c3RhdHVzPiIKK21zZ3N0ciAiQjxzdGF0dXM6ID5JPHBha2lldD5CPDogPkk8c3RhdHVzPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjU4MAorbXNnaWQgIlBhY2thZ2Ugc3RhdHVzIGNoYW5nZWQ7IEk8c3RhdHVzPiBpcyBhcyBpbiB0aGUgc3RhdHVzIGZpbGUuIgorbXNnc3RyICIiCisiTmFzdMSFcGnFgmEgem1pYW5hIHN0YXR1c3UgcGFraWV0dSwgSTxzdGF0dXM+IGplc3QgdGFraSBqYWsgdyBwbGlrdSBzdGF0dXN1ICIKKyJwYWtpZXR1LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo1ODAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHN0YXR1czogPkk8cGFja2FnZT5CPCA6IGVycm9yIDogPkk8ZXh0ZW5kZWQtZXJyb3ItbWVzc2FnZT4iCittc2dzdHIgIkI8c3RhdHVzOiA+STxwYWtpZXQ+QjwgOiBlcnJvciA6ID5JPHJvenN6ZXJ6b255LWtvbXVuaWthdC1ixYLEmWR1PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjU4NAorbXNnaWQgIiIKKyJBbiBlcnJvciBvY2N1cnJlZC4gQW55IHBvc3NpYmxlIG5ld2xpbmVzIGluIEk8ZXh0ZW5kZWQtZXJyb3ItbWVzc2FnZT4gd2lsbCAiCisiYmUgY29udmVydGVkIHRvIHNwYWNlcyBiZWZvcmUgb3V0cHV0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjU4NAorIywgbm8td3JhcAorbXNnaWQgIkI8c3RhdHVzOiA+STxmaWxlPkI8IDogY29uZmZpbGUtcHJvbXB0IDogJz5JPHJlYWwtb2xkPkI8JyAnPkk8cmVhbC1uZXc+QjwnID5JPHVzZXJlZGl0ZWQ+QjwgPkk8ZGlzdGVkaXRlZD4iCittc2dzdHIgIkI8c3RhdHVzOiA+STxwbGlrPkI8IDogY29uZmZpbGUtcHJvbXB0IDogJz5JPHByYXdkeml3eS1zdGFyeT5CPCcgJz5JPHByYXdkeml3eS1ub3d5PkI8JyA+STx6bWlhbnktdcW8eXRrb3duaWthPkI8ID5JPHptaWFueS1keXN0cnlidWN5am5lPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjU4NworbXNnaWQgIlVzZXIgaXMgYmVpbmcgYXNrZWQgYSBjb25mZmlsZSBxdWVzdGlvbi4iCittc2dzdHIgIiIKKyJVxbx5dGtvd25pa293aSB6b3N0YW5pZSBwcnplZHN0YXdpb25lIHB5dGFuaWUgb2Rub8WbbmllIHBsaWt1IGtvbmZpZ3VyYWN5am5lZ28uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjU4NworIywgbm8td3JhcAorbXNnaWQgIkI8cHJvY2Vzc2luZzogPkk8c3RhZ2U+Qjw6ID5JPHBhY2thZ2U+IgorbXNnc3RyICJCPHByb2Nlc3Npbmc6ID5JPGV0YXA+Qjw6ID5JPHBha2lldD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1OTIKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlNlbnQganVzdCBiZWZvcmUgYSBwcm9jZXNzaW5nIHN0YWdlIHN0YXJ0cy4gSTxzdGFnZT4gaXMgb25lIG9mICIKKyN8ICJCPHVwZ3JhZGU+LCBCPGluc3RhbGw+IChib3RoIHNlbnQgYmVmb3JlIHVucGFja2luZyksIEI8Y29uZmlndXJlPiwgIgorI3wgIkI8dHJpZ3Byb2M+LCBCPHJlbW92ZT4sIEI8cHVyZ2U+LiIKK21zZ2lkICIiCisiU2VudCBqdXN0IGJlZm9yZSBhIHByb2Nlc3Npbmcgc3RhZ2Ugc3RhcnRzLiBJPHN0YWdlPiBpcyBvbmUgb2YgQjx1cGdyYWRlPiwgIgorIkI8aW5zdGFsbD4gKGJvdGggc2VudCBiZWZvcmUgdW5wYWNraW5nKSwgQjxjb25maWd1cmU+LCBCPHRyaWdwcm9jPiwgIgorIkI8ZGlzYXBwZWFyPiwgQjxyZW1vdmU+LCBCPHB1cmdlPi4iCittc2dzdHIgIiIKKyJXeXN5xYJhbmUgdHXFvCBwcnpleiByb3pwb2N6xJljaWVtIGV0YXB1IHByemV0d2FyemFuaWEuIEk8ZXRhcD4gamVzdCBqZWRueW0geiAiCisiQjx1cGdyYWRlPiwgQjxpbnN0YWxsPiAob2JhIHd5c3nFgmFuZSBwcnplZCByb3pwYWtvd2FuaWVtKSwgQjxjb25maWd1cmU+LCAiCisiQjx0cmlncHJvYz4sIEI8cmVtb3ZlPiwgQjxwdXJnZT4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjU5MworIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPC0tcG9zdC1pbnZva2U9Pkk8Y29tbWFuZD4iCittc2dpZCAiQjwtLXN0YXR1cy1sb2dnZXI+PUk8Y29tbWFuZD4iCittc2dzdHIgIkI8LS1wb3N0LWludm9rZT0+STxwb2xlY2VuaWU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTk4CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJTZW5kIG1hY2hpbmUtcmVhZGFibGUgcGFja2FnZSBzdGF0dXMgYW5kIHByb2dyZXNzIGluZm9ybWF0aW9uIHRvIGZpbGUgIgorI3wgImRlc2NyaXB0b3IgSTxuPi4gVGhpcyBvcHRpb24gY2FuIGJlIHNwZWNpZmllZCBtdWx0aXBsZSB0aW1lcy4gVGhlICIKKyN8ICJpbmZvcm1hdGlvbiBpcyBnZW5lcmFsbHkgb25lIHJlY29yZCBwZXIgbGluZSwgaW4gb25lIG9mIHRoZSBmb2xsb3dpbmcgIgorI3wgImZvcm1zOiIKK21zZ2lkICIiCisiU2VuZCBtYWNoaW5lLXJlYWRhYmxlIHBhY2thZ2Ugc3RhdHVzIGFuZCBwcm9ncmVzcyBpbmZvcm1hdGlvbiB0byB0aGUgc2hlbGwgIgorIkk8Y29tbWFuZD4ncyBzdGFuZGFyZCBpbnB1dC4gVGhpcyBvcHRpb24gY2FuIGJlIHNwZWNpZmllZCBtdWx0aXBsZSB0aW1lcy4gIgorIlRoZSBvdXRwdXQgZm9ybWF0IHVzZWQgaXMgdGhlIHNhbWUgYXMgaW4gQjwtLXN0YXR1cy1mZC4+IgorbXNnc3RyICIiCisiV3lzxYJhbmllIFwiY3p5dGVsbmVnbyBkbGEgbWFzenlueVwiIHN0YXR1c3UgcGFraWV0dSBpIGluZm9ybWFjamkgbyBwb3N0xJlwaWUgIgorImRvIGRlc2tyeXB0b3JhIHBsaWt1IEk8bj4uIFRhIG9wY2phIG1vxbxlIGJ5xIcgcG9kYW5hIHdpZWxva3JvdG5pZS4gSW5mb3JtYWNqYSAiCisiamVzdCBvZ8OzbG5pZSB6YXBpc3l3YW5hIHBvIGplZG55bSB3cGlzaWUgdyBsaW5paSwgdyBqZWRuZWogeiBuYXN0xJlwdWrEhWN5Y2ggIgorImZvcm06IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjU5OQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1sb2c9Pkk8ZmlsZW5hbWU+IgorbXNnc3RyICJCPC0tbG9nPT5JPG5hendhLXBsaWt1PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjYxMQorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiTG9nIHN0YXR1cyBjaGFuZ2UgdXBkYXRlcyBhbmQgYWN0aW9ucyB0byBJPGZpbGVuYW1lPiwgaW5zdGVhZCBvZiB0aGUgIgorI3wgImRlZmF1bHQgSTwvdmFyL2xvZy9kcGtnLmxvZz4uIElmIHRoaXMgb3B0aW9uIGlzIGdpdmVuIG11bHRpcGxlIHRpbWVzLCB0aGUgIgorI3wgImxhc3QgZmlsZW5hbWUgaXMgdXNlZC4gTG9nIG1lc3NhZ2VzIGFyZSBvZiB0aGUgZm9ybSBgWVlZWS1NTS1ERCBISDpNTTpTUyAiCisjfCAic3RhdHVzIEU8bHQ+c3RhdGVFPGd0PiBFPGx0PnBrZ0U8Z3Q+IEU8bHQ+aW5zdGFsbGVkLXZlcnNpb25FPGd0PicgZm9yICIKKyN8ICJzdGF0dXMgY2hhbmdlIHVwZGF0ZXM7IGBZWVlZLU1NLUREIEhIOk1NOlNTIEU8bHQ+YWN0aW9uRTxndD4gIgorI3wgIkU8bHQ+cGtnRTxndD4gRTxsdD5pbnN0YWxsZWQtdmVyc2lvbkU8Z3Q+IEU8bHQ+YXZhaWxhYmxlLXZlcnNpb25FPGd0PicgIgorI3wgImZvciBhY3Rpb25zIHdoZXJlIEk8RTxsdD5hY3Rpb25FPGd0Pj4gaXMgb25lIG9mIGluc3RhbGwsIHVwZ3JhZGUsIHJlbW92ZSwgIgorI3wgInB1cmdlOyBhbmQgYFlZWVktTU0tREQgSEg6TU06U1MgY29uZmZpbGUgRTxsdD5maWxlbmFtZUU8Z3Q+ICIKKyN8ICJFPGx0PmRlY2lzaW9uRTxndD4nIGZvciBjb25mZmlsZSBjaGFuZ2VzIHdoZXJlIEk8RTxsdD5kZWNpc2lvbkU8Z3Q+PiBpcyAiCisjfCAiZWl0aGVyIGluc3RhbGwgb3Iga2VlcC4iCittc2dpZCAiIgorIkxvZyBzdGF0dXMgY2hhbmdlIHVwZGF0ZXMgYW5kIGFjdGlvbnMgdG8gSTxmaWxlbmFtZT4sIGluc3RlYWQgb2YgdGhlIGRlZmF1bHQgIgorIkk8L3Zhci9sb2cvZHBrZy5sb2c+LiBJZiB0aGlzIG9wdGlvbiBpcyBnaXZlbiBtdWx0aXBsZSB0aW1lcywgdGhlIGxhc3QgIgorImZpbGVuYW1lIGlzIHVzZWQuIExvZyBtZXNzYWdlcyBhcmUgb2YgdGhlIGZvcm0gYFlZWVktTU0tREQgSEg6TU06U1Mgc3RhdHVzICIKKyJJPHN0YXRlPiBJPHBrZz4gSTxpbnN0YWxsZWQtdmVyc2lvbj4nIGZvciBzdGF0dXMgY2hhbmdlIHVwZGF0ZXM7IGBZWVlZLU1NLUREICIKKyJISDpNTTpTUyBJPGFjdGlvbj4gSTxwa2c+IEk8aW5zdGFsbGVkLXZlcnNpb24+IEk8YXZhaWxhYmxlLXZlcnNpb24+JyBmb3IgIgorImFjdGlvbnMgd2hlcmUgSTxhY3Rpb24+IGlzIG9uZSBvZiBCPGluc3RhbGw+LCBCPHVwZ3JhZGU+LCBCPHJlbW92ZT4sICIKKyJCPHB1cmdlPjsgYW5kIGBZWVlZLU1NLUREIEhIOk1NOlNTIGNvbmZmaWxlIEk8ZmlsZW5hbWU+IEk8ZGVjaXNpb24+JyBmb3IgIgorImNvbmZmaWxlIGNoYW5nZXMgd2hlcmUgSTxkZWNpc2lvbj4gaXMgZWl0aGVyIEI8aW5zdGFsbD4gb3IgQjxrZWVwPi4iCittc2dzdHIgIiIKKyJaYXBpc3VqZSBpbmZvcm1hY2plIG8gem1pYW5hY2ggc3RhbnUgaSBha2NqYWNoIGRvIHBsaWt1IGxvZ3UgSTxuYXp3YS1wbGlrdT4sICIKKyJ6YW1pYXN0IGRvIGRvbXnFm2xuZWdvIHBsaWt1IEk8L3Zhci9sb2cvZHBrZy5sb2c+LiBKZcW8ZWxpIHTEmSBvcGNqxJkgcG9kYW5vICIKKyJraWxrYSByYXp5LCBicmFueSBqZXN0IHBvZCB1d2FnxJkgcGxpayBwb2RhbnkgdyBvc3RhdG5pZWogb3BjamkuIEtvbXVuaWthdHkgIgorImxvZ3Ugc8SFIHcgcG9zdGFjaVwiWVlZWS1NTS1ERCBISDpNTTpTUyBFPGx0PnN0YXR1c0U8Z3Q+IEU8bHQ+cGFraWV0RTxndD4gIgorIkU8bHQ+d2Vyc2phLXphaW5zdGFsb3dhbmFFPGd0PlwiIGRsYSB6bWlhbiBzdGFudTsgXCJZWVlZLU1NLUREIEhIOk1NOlNTICIKKyJFPGx0PmFrY2phRTxndD4gRTxsdD5wYWtpZXRFPGd0PiBFPGx0PndlcnNqYS1pbnN0YWxvd2FuYUU8Z3Q+IEU8bHQ+d2Vyc2phLSIKKyJkb3N0xJlwbmFFPGd0PlwiIGRsYSBha2NqaSwgZ2R6aWUgSTxFPGx0PmFrY2phRTxndD4+IGplc3QgamVkbsSFIHogaW5zdGFsbCAiCisiKGluc3RhbGFjamEpLCB1cGdyYWRlIChha3R1YWxpemFjamEpLCByZW1vdmUgKHVzdXdhbmllKSwgcHVyZ2UgKGN6eXN6Y3plbmllKSAiCisib3JheiBcIllZWVktTU0tREQgSEg6TU06U1MgY29uZmZpbGUgRTxsdD5uYXp3YS1wbGlrdUU8Z3Q+IEU8bHQ+ZGVjeXpqYUU8Z3Q+IgorIlwiIGRsYSB6bWlhbiBwbGlrw7N3IGtvbmZpZ3VyYWN5am55Y2gsIGdkemllIEk8RTxsdD5kZWN5emphRTxndD4+IHRvIGFsYm8gIgorImluc3RhbGwgKGluc3RhbGFjamEgbm93ZWogd2Vyc2ppKSwgYWxibyBrZWVwICh6YWNob3dhbmllIHBvcHJ6ZWRuaWVqIHdlcnNqaSkuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjYxMQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1uby1kZWJzaWc+IgorbXNnc3RyICJCPC0tbm8tZGVic2lnPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjYxNAorbXNnaWQgIkRvIG5vdCB0cnkgdG8gdmVyaWZ5IHBhY2thZ2Ugc2lnbmF0dXJlcy4iCittc2dzdHIgIk5pZSBwcsOzYnVqZSB3ZXJ5Zmlrb3dhxIcgc3lnbmF0dXIgcGFraWV0dS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NjE0CisjLCBuby13cmFwCittc2dpZCAiQjwtLW5vLXRyaWdnZXJzPiIKK21zZ3N0ciAiQjwtLW5vLXRyaWdnZXJzPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjYyMworbXNnaWQgIiIKKyJEbyBub3QgcnVuIGFueSB0cmlnZ2VycyBpbiB0aGlzIHJ1biAoYWN0aXZhdGlvbnMgd2lsbCBzdGlsbCBiZSByZWNvcmRlZCkuICAiCisiSWYgdXNlZCB3aXRoIEI8LS1jb25maWd1cmU+IEk8cGFja2FnZT4gb3IgQjwtLXRyaWdnZXJzLW9ubHk+IEk8cGFja2FnZT4gdGhlbiAiCisidGhlIG5hbWVkIHBhY2thZ2UgcG9zdGluc3Qgd2lsbCBzdGlsbCBiZSBydW4gZXZlbiBpZiBvbmx5IGEgdHJpZ2dlcnMgcnVuIGlzICIKKyJuZWVkZWQuIFVzZSBvZiB0aGlzIG9wdGlvbiBtYXkgbGVhdmUgcGFja2FnZXMgaW4gdGhlIGltcHJvcGVyIEI8dHJpZ2dlcnMtIgorImF3YWl0ZWQ+IGFuZCBCPHRyaWdnZXJzLXBlbmRpbmc+IHN0YXRlcy4gVGhpcyBjYW4gYmUgZml4ZWQgbGF0ZXIgYnkgcnVubmluZzogIgorIkI8ZHBrZyAtLWNvbmZpZ3VyZSAtLXBlbmRpbmc+LiIKK21zZ3N0ciAiIgorIk5pZSB1cnVjaGFtaWFqIMW8YWRueWNoIHd5endhbGFjenkgdyB0eW0gcHJ6ZWJpZWd1IChha3R5d2FjamUgbmFkYWwgYsSZZMSFICIKKyJ6YXJlamVzdHJvd2FuZSkuIFByenkgdcW8eWNpdSB3cmF6IHogQjwtLWNvbmZpZ3VyZT4gSTxwYWtpZXQ+IGx1YiBCPC0tIgorInRyaWdnZXJzLW9ubHk+IEk8cGFraWV0PiBza3J5cHQgXCJwb3N0aW5zdFwiIHdza2F6YW5lZ28gcGFraWV0dSBuYWRhbCAiCisiem9zdGFuaWUgdXJ1Y2hvbWlvbnksIG5hd2V0IGplxZtsaSB3eW1hZ2FuZSBqZXN0IHR5bGtvIHVydWNob21pZW5pZSAiCisid3l6d2FsYWN6eS4gVcW8eWNpZSB0ZWogb3BjamkgbW/FvGUgcG96b3N0YXdpxIcgcGFraWV0eSB3IG5pZXfFgmHFm2Npd3ltIHN0YW5pZSAiCisiQjx0cmlnZ2Vycy1hd2FpdGVkPiBsdWIgQjx0cmlnZ2Vycy1wZW5kaW5nPi4gTW/FvGUgdG8gYnnEhyBww7PFum5pZWogbmFwcmF3aW9uZSAiCisicHJ6ZXogd3l3b8WCYW5pZTogQjxkcGtnIC0tY29uZmlndXJlIC0tcGVuZGluZz4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjYyMworIywgbm8td3JhcAorbXNnaWQgIkI8LS10cmlnZ2Vycz4iCittc2dzdHIgIkI8LS10cmlnZ2Vycz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2MjYKK21zZ2lkICJDYW5jZWxzIGEgcHJldmlvdXMgQjwtLW5vLXRyaWdnZXJzPi4iCittc2dzdHIgIkFudWx1amUgcG9wcnplZG5pZSBCPC0tbm8tdHJpZ2dlcnM+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjYyOCBkcGtnLmNmZy41OjE2CisjLCBuby13cmFwCittc2dpZCAiSTwvZXRjL2Rwa2cvZHBrZy5jZmc+IgorbXNnc3RyICJJPC9ldGMvZHBrZy9kcGtnLmNmZz4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2MzEKK21zZ2lkICJDb25maWd1cmF0aW9uIGZpbGUgd2l0aCBkZWZhdWx0IG9wdGlvbnMuIgorbXNnc3RyICJQbGlrIGtvbmZpZ3VyYWN5am55IHphd2llcmFqxIVjeSBkb215xZtsbmUgb3BjamUuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjYzMQorIywgbm8td3JhcAorbXNnaWQgIkk8L3Zhci9sb2cvZHBrZy5sb2c+IgorbXNnc3RyICJJPC92YXIvbG9nL2Rwa2cubG9nPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjYzNQorbXNnaWQgIkRlZmF1bHQgbG9nIGZpbGUgKHNlZSBJPC9ldGMvZHBrZy9kcGtnLmNmZz4oNSkgYW5kIG9wdGlvbiBCPC0tbG9nPikuIgorbXNnc3RyICJEb215xZtsbnkgcGxpayBsb2d1IChwYXRyeiBJPC9ldGMvZHBrZy9kcGtnLmNmZz4oNSkgaSBvcGNqYSBCPC0tbG9nPikuIgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NjM4Cittc2dpZCAiIgorIlRoZSBvdGhlciBmaWxlcyBsaXN0ZWQgYmVsb3cgYXJlIGluIHRoZWlyIGRlZmF1bHQgZGlyZWN0b3JpZXMsIHNlZSBvcHRpb24gIgorIkI8LS1hZG1pbmRpcj4gdG8gc2VlIGhvdyB0byBjaGFuZ2UgbG9jYXRpb25zIG9mIHRoZXNlIGZpbGVzLiIKK21zZ3N0ciAiIgorIlBvem9zdGHFgmUgcGxpa2kgd3ltaWVuaW9uZSBwb25pxbxlaiBvZG5vc3rEhSBzacSZIGRvIHN3b2ljaCBkb215xZtsbnljaCAiCisia2F0YWxvZ8Ozdy4gT3BjamEgQjwtLWFkbWluZGlyPiBtb8W8ZSB6bWllbmnEhyBsb2thbGl6YWNqxJkgdHljaCBwbGlrw7N3LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2MzgKKyMsIG5vLXdyYXAKK21zZ2lkICJJPC92YXIvbGliL2Rwa2cvYXZhaWxhYmxlPiIKK21zZ3N0ciAiSTwvdmFyL2xpYi9kcGtnL2F2YWlsYWJsZT4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2NDEKK21zZ2lkICJMaXN0IG9mIGF2YWlsYWJsZSBwYWNrYWdlcy4iCittc2dzdHIgIkxpc3RhIGRvc3TEmXBueWNoIHBha2lldMOzdy4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NjQxCisjLCBuby13cmFwCittc2dpZCAiSTwvdmFyL2xpYi9kcGtnL3N0YXR1cz4iCittc2dzdHIgIkk8L3Zhci9saWIvZHBrZy9zdGF0dXM+IgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NjQ3Cittc2dpZCAiIgorIlN0YXR1c2VzIG9mIGF2YWlsYWJsZSBwYWNrYWdlcy4gVGhpcyBmaWxlIGNvbnRhaW5zIGluZm9ybWF0aW9uIGFib3V0IHdoZXRoZXIgIgorImEgcGFja2FnZSBpcyBtYXJrZWQgZm9yIHJlbW92aW5nIG9yIG5vdCwgd2hldGhlciBpdCBpcyBpbnN0YWxsZWQgb3Igbm90LCAiCisiZXRjLiBTZWUgc2VjdGlvbiBCPElORk9STUFUSU9OIEFCT1VUIFBBQ0tBR0VTPiBmb3IgbW9yZSBpbmZvLiIKK21zZ3N0ciAiIgorIlN0YW4gZG9zdMSZcG55Y2ggcGFraWV0w7N3LiBUZW4gcGxpayB6YXdpZXJhIGluZm9ybWFjamUgbyB0eW0sIGN6eSBkYW55IHBha2lldCAiCisiamVzdCB3eWJyYW55IGRvIHNrYXNvd2FuaWEsIGN6eSBqZXN0IHphaW5zdGFsb3dhbnkgaXRwLiBUZSBpbmZvcm1hY2plIHPEhSAiCisib3Bpc2FuZSB3IHNla2NqaSBCPElORk9STUFDSkUgTyBQQUtJRVRBQ0g+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjY1MAorbXNnaWQgIiIKKyJUaGUgc3RhdHVzIGZpbGUgaXMgYmFja2VkIHVwIGRhaWx5IGluIEk8L3Zhci9iYWNrdXBzPi4gSXQgY2FuIGJlIHVzZWZ1bCBpZiAiCisiaXQncyBsb3N0IG9yIGNvcnJ1cHRlZCBkdWUgdG8gZmlsZXN5c3RlbXMgdHJvdWJsZXMuIgorbXNnc3RyICIiCisiS29waWEgemFwYXNvd2EgcGxpa3Ugc3RhdHVzdSBqZXN0IHR3b3J6b25hIHcgSTwvdmFyL2JhY2t1cHM+IGthxbxkZWdvIGRuaWEuICIKKyJNb8W8ZSB0byBiecSHIHByenlkYXRuZSBqZcWbbGkgem9zdGFuaWUgb24gdXRyYWNvbnkgbHViIHVzemtvZHpvbnkgeiBwb3dvZHUgIgorImvFgm9wb3TDs3cgeiBzeXN0ZW1hbWkgcGxpa8Ozdy4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2NTMKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBmaWxlcyBhcmUgY29tcG9uZW50cyBvZiBhIGJpbmFyeSBwYWNrYWdlLiBTZWUgQjxkZWI+KDUpICBmb3IgIgorIm1vcmUgaW5mb3JtYXRpb24gYWJvdXQgdGhlbToiCittc2dzdHIgIiIKKyJQb25pxbxzemUgcGxpa2kgc8SFIGN6xJnFm2NpxIUgc2vFgmFkb3fEhSBwYWtpZXTDs3cgYmluYXJueWNoLiBXacSZY2VqIGluZm9ybWFjamkgbyAiCisibmljaCBtb8W8bmEgem5hbGXFusSHIHcgQjxkZWI+KDUpLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2NTMKKyMsIG5vLXdyYXAKK21zZ2lkICJJPGNvbnRyb2w+IgorbXNnc3RyICJJPGNvbnRyb2w+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjY1NQorIywgbm8td3JhcAorbXNnaWQgIkk8Y29uZmZpbGVzPiIKK21zZ3N0ciAiSTxjb25mZmlsZXM+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjY1NworIywgbm8td3JhcAorbXNnaWQgIkk8cHJlaW5zdD4iCittc2dzdHIgIkk8cHJlaW5zdD4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NjU5CisjLCBuby13cmFwCittc2dpZCAiSTxwb3N0aW5zdD4iCittc2dzdHIgIkk8cG9zdGluc3Q+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjY2MQorIywgbm8td3JhcAorbXNnaWQgIkk8cHJlcm0+IgorbXNnc3RyICJJPHByZXJtPiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2NjMKKyMsIG5vLXdyYXAKK21zZ2lkICJJPHBvc3RybT4iCittc2dzdHIgIkk8cG9zdHJtPiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2cuMTo2NjYgZHBrZy1idWlsZGZsYWdzLjE6MTI4IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjMwIGRwa2ctZGViLjE6MjMyCisjOiBkcGtnLWRpdmVydC44OjExMiBkcGtnLXF1ZXJ5LjE6MjA0IGRwa2ctc3RhdG92ZXJyaWRlLjg6NjggZHBrZy10cmlnZ2VyLjE6NjAKKyM6IGRwa2ctdmVuZG9yLjE6NDIgZHNlbGVjdC4xOjQyMyB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzU0CisjLCBuby13cmFwCittc2dpZCAiRU5WSVJPTk1FTlQiCittc2dzdHIgIsWaUk9ET1dJU0tPIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjY2NyBkc2VsZWN0LjE6NDI0CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8U0hFTEw+IgorbXNnaWQgIkI8SE9NRT4iCittc2dzdHIgIkI8U0hFTEw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NjcxCittc2dpZCAiIgorIklmIHNldCwgQjxkcGtnPiB3aWxsIHVzZSBpdCBhcyB0aGUgZGlyZWN0b3J5IGZyb20gd2hpY2ggdG8gcmVhZCB0aGUgdXNlciAiCisic3BlY2lmaWMgY29uZmlndXJhdGlvbiBmaWxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjY3MSBkcGtnLWRlYi4xOjIzMworIywgbm8td3JhcAorbXNnaWQgIkI8VE1QRElSPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6Njc1Cittc2dpZCAiIgorIklmIHNldCwgQjxkcGtnPiB3aWxsIHVzZSBpdCBhcyB0aGUgZGlyZWN0b3J5IGluIHdoaWNoIHRvIGNyZWF0ZSB0ZW1wb3JhcnkgIgorImZpbGVzIGFuZCBkaXJlY3Rvcmllcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2NzUKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxDUFBGTEFHUz4iCittc2dpZCAiQjxQQUdFUj4iCittc2dzdHIgIkI8Q1BQRkxBR1M+IgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6Njc4CisjLCBmdXp6eQorI3wgbXNnaWQgIlRoZSBwcm9ncmFtIEI8ZHBrZz4gd2lsbCBleGVjdXRlIHdoZW4gc3RhcnRpbmcgYSBuZXcgc2hlbGwuIgorbXNnaWQgIlRoZSBwcm9ncmFtIEI8ZHBrZz4gd2lsbCBleGVjdXRlIHdoZW4gZGlzcGxheWluZyB0aGUgY29uZmZpbGVzLiIKK21zZ3N0ciAiIgorIlByb2dyYW0gdXJ1Y2hhbWlhbnkgcHJ6ZXogQjxkcGtnPiwgZ2R5IHRyemViYSB1cnVjaG9tacSHIG5vd8SFIHNlc2rEmSBwb3fFgm9raS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6Njc4CisjLCBuby13cmFwCittc2dpZCAiQjxTSEVMTD4iCittc2dzdHIgIkI8U0hFTEw+IgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NjgxCittc2dpZCAiVGhlIHByb2dyYW0gQjxkcGtnPiB3aWxsIGV4ZWN1dGUgd2hlbiBzdGFydGluZyBhIG5ldyBzaGVsbC4iCittc2dzdHIgIiIKKyJQcm9ncmFtIHVydWNoYW1pYW55IHByemV6IEI8ZHBrZz4sIGdkeSB0cnplYmEgdXJ1Y2hvbWnEhyBub3fEhSBzZXNqxJkgcG93xYJva2kuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjY4MSBkcGtnLXF1ZXJ5LjE6MjA5CisjLCBuby13cmFwCittc2dpZCAiQjxDT0xVTU5TPiIKK21zZ3N0ciAiQjxDT0xVTU5TPiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjY4NQorbXNnaWQgIiIKKyJTZXRzIHRoZSBudW1iZXIgb2YgY29sdW1ucyBCPGRwa2c+IHNob3VsZCB1c2Ugd2hlbiBkaXNwbGF5aW5nIGZvcm1hdHRlZCAiCisidGV4dC4gQ3VycmVudGx5IG9ubHkgdXNlZCBieSAtbC4iCittc2dzdHIgIiIKKyJVc3Rhd2lhIGxpY3pixJkga29sdW1uIHXFvHl3YW55Y2ggcHJ6ZXogQjxkcGtnPiB3IGN6YXNpZSB3ecWbd2lldGxhbmlhICIKKyJzZm9ybWF0b3dhbmVnbyB0ZWtzdHUuIE9iZWNuaWUgdcW8eXdhbmUgdHlsa28gcHJ6ZXogb3BjasSZIC1sLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2ODUKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxEUEtHX1JVTk5JTkdfVkVSU0lPTj4iCittc2dpZCAiQjxEUEtHX1NIRUxMX1JFQVNPTj4iCittc2dzdHIgIkI8RFBLR19SVU5OSU5HX1ZFUlNJT04+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6Njg5Cittc2dpZCAiIgorIkRlZmluZWQgYnkgQjxkcGtnPiBvbiB0aGUgc2hlbGwgc3Bhd25lZCBvbiB0aGUgY29uZmZpbGUgcHJvbXB0IHRvIGV4YW1pbmUgIgorInRoZSBzaXR1YXRpb24uIEN1cnJlbnQgdmFsaWQgdmFsdWU6IEI8Y29uZmZpbGUtcHJvbXB0Pi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2ODkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPERQS0dfQ09ORkZJTEVfT0xEPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NjkzCittc2dpZCAiIgorIkRlZmluZWQgYnkgQjxkcGtnPiBvbiB0aGUgc2hlbGwgc3Bhd25lZCBvbiB0aGUgY29uZmZpbGUgcHJvbXB0IHRvIGV4YW1pbmUgIgorInRoZSBzaXR1YXRpb24uIENvbnRhaW5zIHRoZSBwYXRoIHRvIHRoZSBvbGQgY29uZmZpbGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NjkzCisjLCBuby13cmFwCittc2dpZCAiQjxEUEtHX0NPTkZGSUxFX05FVz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjY5NworbXNnaWQgIiIKKyJEZWZpbmVkIGJ5IEI8ZHBrZz4gb24gdGhlIHNoZWxsIHNwYXduZWQgb24gdGhlIGNvbmZmaWxlIHByb21wdCB0byBleGFtaW5lICIKKyJ0aGUgc2l0dWF0aW9uLiBDb250YWlucyB0aGUgcGF0aCB0byB0aGUgbmV3IGNvbmZmaWxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjY5NworIywgbm8td3JhcAorbXNnaWQgIkI8RFBLR19SVU5OSU5HX1ZFUlNJT04+IgorbXNnc3RyICJCPERQS0dfUlVOTklOR19WRVJTSU9OPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjcwMQorbXNnaWQgIiIKKyJEZWZpbmVkIGJ5IEI8ZHBrZz4gb24gdGhlIG1haW50YWluZXIgc2NyaXB0IGVudmlyb25tZW50IHRvIHRoZSB2ZXJzaW9uIG9mICIKKyJ0aGUgY3VycmVudGx5IHJ1bm5pbmcgQjxkcGtnPiBpbnN0YW5jZS4iCittc2dzdHIgIiIKKyJaZGVmaW5pb3dhbmEgcHJ6ZXogQjxkcGtnPiB3IMWbcm9kb3dpc2t1IHNrcnlwdHUgb3BpZWt1bmEgcGFraWV0dSwgamFrbyAiCisid2Vyc2phIGFrdHVhbG5pZSB1cnVjaG9taW9uZWogaW5zdGFuY2ppIHByb2dyYW11IEI8ZHBrZz4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjcwMSBkcGtnLWRpdmVydC44OjExNworIywgbm8td3JhcAorbXNnaWQgIkI8RFBLR19NQUlOVFNDUklQVF9QQUNLQUdFPiIKK21zZ3N0ciAiQjxEUEtHX01BSU5UU0NSSVBUX1BBQ0tBR0U+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzA1Cittc2dpZCAiIgorIkRlZmluZWQgYnkgQjxkcGtnPiBvbiB0aGUgbWFpbnRhaW5lciBzY3JpcHQgZW52aXJvbm1lbnQgdG8gdGhlIHBhY2thZ2UgbmFtZSAiCisiYmVpbmcgaGFuZGxlZC4iCittc2dzdHIgIiIKKyJaZGVmaW5pb3dhbmEgcHJ6ZXogQjxkcGtnPiB3IMWbcm9kb3dpc2t1IHNrcnlwdHUgb3BpZWt1bmEgcGFraWV0dSwgamFrbyBuYXp3YSAiCisicHJ6ZXR3YXJ6YW5lZ28gcGFraWV0dS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NzA1CisjLCBuby13cmFwCittc2dpZCAiQjxEUEtHX01BSU5UU0NSSVBUX0FSQ0g+IgorbXNnc3RyICJCPERQS0dfTUFJTlRTQ1JJUFRfQVJDSD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3MDkKK21zZ2lkICIiCisiRGVmaW5lZCBieSBCPGRwa2c+IG9uIHRoZSBtYWludGFpbmVyIHNjcmlwdCBlbnZpcm9ubWVudCB0byB0aGUgYXJjaGl0ZWN0dXJlICIKKyJ0aGUgcGFja2FnZSBnb3QgYnVpbHQgZm9yLiIKK21zZ3N0ciAiIgorIlpkZWZpbmlvd2FuYSBwcnpleiBCPGRwa2c+IHcgxZtyb2Rvd2lza3Ugc2tyeXB0dSBvcGlla3VuYSBwYWtpZXR1LCBqYWtvICIKKyJhcmNoaXRla3R1cmEgZGxhIGt0w7NyZWogYnVkb3dhbm8gcGFraWV0LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo3MDkKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxEUEtHX01BSU5UU0NSSVBUX0FSQ0g+IgorbXNnaWQgIkI8RFBLR19NQUlOVFNDUklQVF9OQU1FPiIKK21zZ3N0ciAiQjxEUEtHX01BSU5UU0NSSVBUX0FSQ0g+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzEzCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJEZWZpbmVkIGJ5IEI8ZHBrZz4gb24gdGhlIG1haW50YWluZXIgc2NyaXB0IGVudmlyb25tZW50IHRvIHRoZSB2ZXJzaW9uIG9mICIKKyN8ICJ0aGUgY3VycmVudGx5IHJ1bm5pbmcgQjxkcGtnPiBpbnN0YW5jZS4iCittc2dpZCAiIgorIkRlZmluZWQgYnkgQjxkcGtnPiBvbiB0aGUgbWFpbnRhaW5lciBzY3JpcHQgZW52aXJvbm1lbnQgdG8gdGhlIG5hbWUgb2YgdGhlICIKKyJzY3JpcHQgcnVubmluZyAocHJlaW5zdCwgcG9zdGluc3QsIHByZXJtLCBwb3N0cm0pLiIKK21zZ3N0ciAiIgorIlpkZWZpbmlvd2FuYSBwcnpleiBCPGRwa2c+IHcgxZtyb2Rvd2lza3Ugc2tyeXB0dSBvcGlla3VuYSBwYWtpZXR1LCBqYWtvICIKKyJ3ZXJzamEgYWt0dWFsbmllIHVydWNob21pb25laiBpbnN0YW5jamkgcHJvZ3JhbXUgQjxkcGtnPi4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3MTYKK21zZ2lkICJUbyBsaXN0IHBhY2thZ2VzIHJlbGF0ZWQgdG8gdGhlIGVkaXRvciBCPHZpPigxKToiCittc2dzdHIgIld5xZt3aWV0bGVuaWUgd3N6eXN0a2ljaCBwYWtpZXTDs3cgendpxIV6YW55Y2ggeiBlZHl0b3JlbSBCPHZpPigxKToiCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3MTgKKyMsIG5vLXdyYXAKK21zZ2lkICIgICAgIEI8ZHBrZyAtbCBcXChhcSp2aSpcXChhcT5cbiIKK21zZ3N0ciAiICAgIEI8ZHBrZyAtbCBcXChhcSp2aSpcXChhcT5cbiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjcyMQorbXNnaWQgIlRvIHNlZSB0aGUgZW50cmllcyBpbiBJPC92YXIvbGliL2Rwa2cvYXZhaWxhYmxlPiBvZiB0d28gcGFja2FnZXM6IgorbXNnc3RyICIiCisiV3nFm3dpZXRsZW5pZSBpbmZvcm1hY2ppIHogcGxpa3UgSTwvdmFyL2xpYi9kcGtnL2F2YWlsYWJsZT4gbyBkd8OzY2ggcGFraWV0YWNoOiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjcyMworIywgbm8td3JhcAorbXNnaWQgIiAgICAgQjxkcGtnIC0tcHJpbnQtYXZhaWwgZWx2aXMgdmltIHwgbGVzcz5cbiIKK21zZ3N0ciAiICAgICBCPGRwa2cgLS1wcmludC1hdmFpbCBlbHZpcyB2aW0gfCBsZXNzPlxuIgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzI2Cittc2dpZCAiVG8gc2VhcmNoIHRoZSBsaXN0aW5nIG9mIHBhY2thZ2VzIHlvdXJzZWxmOiIKK21zZ3N0ciAiU2Ftb2R6aWVsbmUgcHJ6ZXN6dWthbmllIGluZm9ybWFjamkgbyBwYWtpZXRhY2g6IgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzI4CisjLCBuby13cmFwCittc2dpZCAiICAgICBCPGxlc3MgL3Zhci9saWIvZHBrZy9hdmFpbGFibGU+XG4iCittc2dzdHIgIiAgICAgQjxsZXNzIC92YXIvbGliL2Rwa2cvYXZhaWxhYmxlPlxuIgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzMxCittc2dpZCAiVG8gcmVtb3ZlIGFuIGluc3RhbGxlZCBlbHZpcyBwYWNrYWdlOiIKK21zZ3N0ciAiV3lrYXNvd2FuaWUgemFpbnN0YWxvd2FuZWdvIHBha2lldHUgZWx2aXM6IgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzMzCisjLCBuby13cmFwCittc2dpZCAiICAgICBCPGRwa2cgLXIgZWx2aXM+XG4iCittc2dzdHIgIiAgICAgQjxkcGtnIC1yIGVsdmlzPlxuIgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzM4Cittc2dpZCAiIgorIlRvIGluc3RhbGwgYSBwYWNrYWdlLCB5b3UgZmlyc3QgbmVlZCB0byBmaW5kIGl0IGluIGFuIGFyY2hpdmUgb3IgQ0RST00uIFRoZSAiCisiXCJhdmFpbGFibGVcIiBmaWxlIHNob3dzIHRoYXQgdGhlIHZpbSBwYWNrYWdlIGlzIGluIHNlY3Rpb24gXCJlZGl0b3JzXCI6IgorbXNnc3RyICIiCisiQWJ5IHphaW5zdGFsb3dhxIcgcGFraWV0LCBuYWxlxbx5IHdwaWVydyB6bmFsZcW6xIcgZ28gdyBhcmNoaXd1bSBsdWIgbmEgQ0RST00uICIKKyJQbGlrIFwiYXZhaWxhYmxlXCIgcG9rYXp1amUsIMW8ZSBwYWtpZXQgdmltIGplc3QgdyBzZWtjamkgXCJlZGl0b3JzXCI6IgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzQxCisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIiIKKyN8ICIgICAgIEI8Y2QgL2Nkcm9tL3Bvb2wvbWFpbi92L3ZpbT5cbiIKKyN8ICIgICAgIEI8ZHBrZyAtaSB2aW1fNC41LTMuZGViPlxuIgorbXNnaWQgIiIKKyIgICAgIEI8Y2QgL21lZGlhL2Nkcm9tL3Bvb2wvbWFpbi92L3ZpbT5cbiIKKyIgICAgIEI8ZHBrZyAtaSB2aW1fNC41LTMuZGViPlxuIgorbXNnc3RyICIiCisiICAgICBCPGNkIC9jZHJvbS9wb29sL21haW4vdi92aW0+XG4iCisiICAgICBCPGRwa2cgLWkgdmltXzQuNS0zLmRlYj5cbiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjc0NAorbXNnaWQgIlRvIG1ha2UgYSBsb2NhbCBjb3B5IG9mIHRoZSBwYWNrYWdlIHNlbGVjdGlvbiBzdGF0ZXM6IgorbXNnc3RyICJBYnkgc3R3b3J6ecSHIGtvcGnEmSBsb2thbG5pZSB3eWJyYW55Y2ggcGFraWV0w7N3OiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjc0NgorIywgbm8td3JhcAorbXNnaWQgIiAgICAgQjxkcGtnIC0tZ2V0LXNlbGVjdGlvbnMgRTxndD5teXNlbGVjdGlvbnM+XG4iCittc2dzdHIgIiAgICAgQjxkcGtnIC0tZ2V0LXNlbGVjdGlvbnMgRTxndD5tb2plcGFraWV0eT5cbiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjc1MAorbXNnaWQgIiIKKyJZb3UgbWlnaHQgdHJhbnNmZXIgdGhpcyBmaWxlIHRvIGFub3RoZXIgY29tcHV0ZXIsIGFuZCBpbnN0YWxsIGl0IHRoZXJlIHdpdGg6IgorbXNnc3RyICIiCisiVGVuIHBsaWsgbW/FvG5hIHByemVuaWXFm8SHIGRvIGlubmVnbyBzeXN0ZW11IGkgemFpbnN0YWxvd2HEhyB0ZSBwYWtpZXR5IHBvcHJ6ZXo6IgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzUzCisjLCBuby13cmFwCittc2dpZCAiIgorIiAgICAgQjxkcGtnIC0tY2xlYXItc2VsZWN0aW9ucz5cbiIKKyIgICAgIEI8ZHBrZyAtLXNldC1zZWxlY3Rpb25zIEU8bHQ+bXlzZWxlY3Rpb25zPlxuIgorbXNnc3RyICIiCisiICAgICBCPGRwa2cgLS1jbGVhci1zZWxlY3Rpb25zPlxuIgorIiAgICAgQjxkcGtnIC0tc2V0LXNlbGVjdGlvbnMgRTxsdD5tb2plcGFraWV0eT5cbiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjc1OQorbXNnaWQgIiIKKyJOb3RlIHRoYXQgdGhpcyB3aWxsIG5vdCBhY3R1YWxseSBpbnN0YWxsIG9yIHJlbW92ZSBhbnl0aGluZywgYnV0IGp1c3Qgc2V0ICIKKyJ0aGUgc2VsZWN0aW9uIHN0YXRlIG9uIHRoZSByZXF1ZXN0ZWQgcGFja2FnZXMuIFlvdSB3aWxsIG5lZWQgc29tZSBvdGhlciAiCisiYXBwbGljYXRpb24gdG8gYWN0dWFsbHkgZG93bmxvYWQgYW5kIGluc3RhbGwgdGhlIHJlcXVlc3RlZCBwYWNrYWdlcy4gRm9yICIKKyJleGFtcGxlLCBydW4gQjxhcHQtZ2V0IGRzZWxlY3QtdXBncmFkZT4uIgorbXNnc3RyICIiCisiTmFsZcW8eSB6YXV3YcW8ecSHLCDFvGUgdGEgb3BjamEgbmllIHBvd29kdWplIHphaW5zdGFsb3dhbmlhIGx1YiB1c3VuacSZY2lhICIKKyJjemVnb2tvbHdpZWssIGFsZSB0eWxrbyB6YXpuYWN6YSB3c2themFuZSBwYWtpZXR5IGRvIHphaW5zdGFsb3dhbmlhIGLEhWTFuiAiCisidXN1bmnEmWNpYS4gRG8gcG9icmFuaWEgaSB6YWluc3RhbG93YW5pYSB0eWNoIHBha2lldMOzdyB0cnplYmEgdcW8ecSHIGlubmVnbyAiCisicHJvZ3JhbXUuIE5hIHByenlrxYJhZCBtb8W8bmEgdyB0eW0gY2VsdSB1xbx5xIcgcG9sZWNlbmlhIEI8YXB0LWdldCBkc2VsZWN0LSIKKyJ1cGdyYWRlPi4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3NjIKK21zZ2lkICIiCisiT3JkaW5hcmlseSwgeW91IHdpbGwgZmluZCB0aGF0IEI8ZHNlbGVjdD4oMSkgcHJvdmlkZXMgYSBtb3JlIGNvbnZlbmllbnQgd2F5ICIKKyJ0byBtb2RpZnkgdGhlIHBhY2thZ2Ugc2VsZWN0aW9uIHN0YXRlcy4iCittc2dzdHIgIiIKKyJad3ljemFqb3dvIGRvIHd5Ym9ydSBwYWtpZXTDs3cgc8WCdcW8eSBCPGRzZWxlY3Q+KDEpLCBrdMOzcnkgZGFqZSB3acSZa3N6ZSAiCisibW/FvGxpd2/Fm2NpIHptaWFueSBpY2ggc3RhbnUuIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy4xOjc2NAorIywgbm8td3JhcAorbXNnaWQgIkFERElUSU9OQUwgRlVOQ1RJT05BTElUWSIKK21zZ3N0ciAiRE9EQVRLT1dBIEZVTktDSk9OQUxOT8WaxIYiCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3NjcKK21zZ2lkICIiCisiQWRkaXRpb25hbCBmdW5jdGlvbmFsaXR5IGNhbiBiZSBnYWluZWQgYnkgaW5zdGFsbGluZyBhbnkgb2YgdGhlIGZvbGxvd2luZyAiCisicGFja2FnZXM6IEI8YXB0PiwgQjxhcHRpdHVkZT4gYW5kIEI8ZGVic3Vtcz4uIgorbXNnc3RyICIiCisiRG9kYXRrb3fEhSBmdW5rY2pvbmFsbm/Fm8SHIG1vxbxuYSB1enlza2HEhywgaW5zdGFsdWrEhWMga3TDs3J5a29sd2llayB6ICIKKyJuYXN0xJlwdWrEhWN5Y2ggcGFraWV0w7N3OiBCPGFwdD4sIEI8YXB0aXR1ZGU+IG9yYXogQjxkZWJzdW1zPi4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3NzkKK21zZ2lkICIiCisiQjxhcHRpdHVkZT4oMSksIEI8YXB0PigxKSwgQjxkc2VsZWN0PigxKSwgQjxkcGtnLWRlYj4oMSksIEI8ZHBrZy1xdWVyeT4oMSksICIKKyJCPGRlYj4oNSksIEI8ZGViLWNvbnRyb2w+KDUpLCBCPGRwa2cuY2ZnPig1KSwgYW5kIEI8ZHBrZy1yZWNvbmZpZ3VyZT4oOCkuIgorbXNnc3RyICIiCisiQjxhcHRpdHVkZT4oMSksIEI8YXB0PigxKSwgQjxkc2VsZWN0PigxKSwgQjxkcGtnLWRlYj4oMSksIEI8ZHBrZy1xdWVyeT4oMSksICIKKyJCPGRlYj4oNSksIEI8ZGViLWNvbnRyb2w+KDUpLCBCPGRwa2cuY2ZnPig1KSwgb3JheiBCPGRwa2ctcmVjb25maWd1cmU+KDgpLiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjc4MgorbXNnaWQgIkI8LS1uby1hY3Q+IHVzdWFsbHkgZ2l2ZXMgbGVzcyBpbmZvcm1hdGlvbiB0aGFuIG1pZ2h0IGJlIGhlbHBmdWwuIgorbXNnc3RyICJCPC0tbm8tYWN0PiBwb2RhamUgcmFjemVqIHpieXQgbWHFgm8gcG9tb2NueWNoIGluZm9ybWFjamkuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6Nzg1IGRwa2cuY2ZnLjU6MjIKK21zZ2lkICIiCisiU2VlIEk8L3Vzci9zaGFyZS9kb2MvZHBrZy9USEFOS1M+IGZvciB0aGUgbGlzdCBvZiBwZW9wbGUgd2hvIGhhdmUgIgorImNvbnRyaWJ1dGVkIHRvIEI8ZHBrZz4uIgorbXNnc3RyICIiCisiUGF0cnogcGxpayBJPC91c3Ivc2hhcmUvZG9jL2Rwa2cvVEhBTktTLmd6PiB6YXdpZXJhasSFY3kgbGlzdMSZIG9zw7NiLCBrdMOzcmUgIgorInByenljenluacWCeSBzacSZIGRvIHJvendvanUgcHJvZ3JhbXUgQjxkcGtnPi4iCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLWFyY2hpdGVjdHVyZSIKK21zZ3N0ciAiZHBrZy1hcmNoaXRlY3R1cmUiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NAorbXNnaWQgIiIKKyJkcGtnLWFyY2hpdGVjdHVyZSAtIHNldCBhbmQgZGV0ZXJtaW5lIHRoZSBhcmNoaXRlY3R1cmUgZm9yIHBhY2thZ2UgYnVpbGRpbmciCittc2dzdHIgImRwa2ctYXJjaGl0ZWN0dXJlIC0gdXN0YXdpYSBpIHp3cmFjYSBhcmNoaXRla3R1csSZIGJ1ZG93YW5pYSBwYWtpZXTDs3cuIgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjgKKyMsIGZ1enp5CisjfCBtc2dpZCAiQjxkcGtnLWFyY2hpdGVjdHVyZT4gW0k8b3B0aW9ucz5dIFtJPGNvbW1hbmRzPl0iCittc2dpZCAiQjxkcGtnLWFyY2hpdGVjdHVyZT4gW0k8b3B0aW9uPi4uLl0gW0k8Y29tbWFuZD5dIgorbXNnc3RyICJCPGRwa2ctYXJjaGl0ZWN0dXJlPiBbSTxvcGNqZT5dIFtJPHBvbGVjZW5pYT5dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEzCittc2dpZCAiIgorImRwa2ctYXJjaGl0ZWN0dXJlIGRvZXMgcHJvdmlkZSBhIGZhY2lsaXR5IHRvIGRldGVybWluZSBhbmQgc2V0IHRoZSBidWlsZCBhbmQgIgorImhvc3QgYXJjaGl0ZWN0dXJlIGZvciBwYWNrYWdlIGJ1aWxkaW5nLiIKK21zZ3N0ciAiIgorImRwa2ctYXJjaGl0ZWN0dXJlIGRvc3RhcmN6YSBzcG9zb2J1IG5hIG9rcmXFm2xlbmllIGkgdXN0YXdpZW5pZSBhcmNoaXRla3R1cnkgIgorImJ1ZG93YW5pYSBvcmF6IGFyY2hpdGVrdHVyeSBkb2NlbG93ZWogZGxhIGJ1ZG93YW5pYSBwYWtpZXTDs3cuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjE2Cittc2dpZCAiIgorIlRoZSBidWlsZCBhcmNoaXRlY3R1cmUgaXMgYWx3YXlzIGRldGVybWluZWQgYnkgYW4gZXh0ZXJuYWwgY2FsbCB0byBCPGRwa2c+IgorIigxKSwgYW5kIGNhbiBub3QgYmUgc2V0IGF0IHRoZSBjb21tYW5kIGxpbmUuIgorbXNnc3RyICIiCisiQXJjaGl0ZWt0dXJhIGJ1ZG93YW5pYSBqZXN0IHphd3N6ZSBva3JlxZtsYW5hIHByemV6IHd5d2/FgmFuaWUgQjxkcGtnPiBpIG5pZSAiCisibW/FvGUgYnnEhyB1c3Rhd2lvbmEgdyBsaW5paSBwb2xlY2XFhC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjUKK21zZ2lkICIiCisiWW91IGNhbiBzcGVjaWZ5IHRoZSBob3N0IGFyY2hpdGVjdHVyZSBieSBwcm92aWRpbmcgb25lIG9yIGJvdGggb2YgdGhlICIKKyJvcHRpb25zIEI8LWE+IGFuZCBCPC10Pi4gVGhlIGRlZmF1bHQgaXMgZGV0ZXJtaW5lZCBieSBhbiBleHRlcm5hbCBjYWxsIHRvICIKKyJCPGdjYz4oMSksIG9yIHRoZSBzYW1lIGFzIHRoZSBidWlsZCBhcmNoaXRlY3R1cmUgaWYgXFxzLTFDQ1xcczAgb3IgZ2NjIGFyZSAiCisiYm90aCBub3QgYXZhaWxhYmxlLiBPbmUgb3V0IG9mIEI8LWE+IGFuZCBCPC10PiBpcyBzdWZmaWNpZW50LCB0aGUgdmFsdWUgb2YgIgorInRoZSBvdGhlciB3aWxsIGJlIHNldCB0byBhIHVzYWJsZSBkZWZhdWx0LiBJbmRlZWQsIGl0IGlzIG9mdGVuIGJldHRlciB0byAiCisib25seSBzcGVjaWZ5IG9uZSwgYmVjYXVzZSBCPGRwa2ctYXJjaGl0ZWN0dXJlPiB3aWxsIHdhcm4geW91IGlmIHlvdXIgY2hvaWNlICIKKyJkb2VzIG5vdCBtYXRjaCB0aGUgZGVmYXVsdC4iCittc2dzdHIgIiIKKyJNb8W8bmEgcG9kYcSHIGFyY2hpdGVrdHVyxJkgZG9jZWxvd8SFIHByemV6IHBvZGFuaWUgamVkbmVqIGx1YiBvYnUgb3Bjamkgc3BvxZtyw7NkICIKKyJCPC1hPiBpIEI8LXQ+LiBXYXJ0b8WbxIcgZG9tecWbbG5hIGplc3Qgb2tyZcWbbGFuYSBwcnpleiB3eXdvxYJhbmllIHByb2dyYW11ICIKKyJCPGdjYz4oMSksIGEgdyByYXppZSBnZHkgXFxzLTFDQ1xcczAgaSBnY2MgbmllIHPEhSBkb3N0xJlwbmUsIGplc3QgdGFrYSBzYW1hICIKKyJqYWsgYXJjaGl0ZWt0dXJhIGJ1ZG93YW5pYS4gV3lzdGFyY3p5IHBvZGHEhyB0eWxrbyBqZWRuxIUgc3BvxZtyw7NkIG9wY2ppIEI8LWE+ICIKKyJpIEI8LXQ+LCBwb25pZXdhxbwgdGEgZHJ1Z2Egem9zdGFuaWUgdXN0YXdpb25hIG5hIHNlbnNvd27EhSB3YXJ0b8WbxIcgZG9tecWbbG7EhS4gIgorIkNvIHdpxJljZWosIGN6xJlzdG8gcG9kYW5pZSBqZWRuZWogb3BjamkgamVzdCBsZXBzemUgbmnFvCBwb2RhbmllIGljaCBvYnUgIgorIm5hcmF6LCBnZHnFvCBCPGRwa2ctYXJjaGl0ZWN0dXJlPiB3eXBpc3plIG9zdHJ6ZcW8ZW5pZSwgamXFm2xpIHBvZGFuZSB3YXJ0b8WbY2kgIgorIm5pZSBixJlkxIUgb2Rwb3dpYWRhxYJ5IHdhcnRvxZtjaW9tIGRvbXnFm2xueW0uIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyNiBkcGtnLWJ1aWxkZmxhZ3MuMTo0NSBkcGtnLWRlYi4xOjI3IGRwa2ctZGl2ZXJ0Ljg6MjQKKyM6IGRwa2ctcXVlcnkuMToxMyBkcGtnLXNvdXJjZS4xOjE4IGRwa2ctc3BsaXQuMTozMSBkcGtnLXN0YXRvdmVycmlkZS44OjIzCisjOiBkcGtnLXRyaWdnZXIuMToyNCBkcGtnLXZlbmRvci4xOjE0IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MzQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyMDIKKyMsIG5vLXdyYXAKK21zZ2lkICJDT01NQU5EUyIKK21zZ3N0ciAiUE9MRUNFTklBIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyNworIywgbm8td3JhcAorbXNnaWQgIkI8LWw+IgorbXNnc3RyICJCPC1sPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTozMQorbXNnaWQgIiIKKyJQcmludCB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGVzLCBvbmUgZWFjaCBsaW5lLCBpbiB0aGUgZm9ybWF0ICIKKyJJPFZBUklBQkxFPXZhbHVlPi4gVGhpcyBpcyB0aGUgZGVmYXVsdCBhY3Rpb24uIgorbXNnc3RyICIiCisiV3nFm3dpZXRsYSB6bWllbm5lIMWbcm9kb3dpc2tvd2UsIHBvIGplZG5laiB3IGthxbxkZWogbGluaWksIHcgZm9ybWFjaWUgIgorIkk8Wk1JRU5OQT13YXJ0b8WbxIc+LiBKZXN0IHRvIGRvbXnFm2xuYSBha2NqYS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjMxCisjLCBuby13cmFwCittc2dpZCAiQjwtZT5JPGRlYmlhbi1hcmNoaXRlY3R1cmU+IgorbXNnc3RyICJCPC1lPkk8YXJjaGl0ZWt0dXJhLWRlYmlhbmE+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjM3Cittc2dpZCAiIgorIkNoZWNrIGZvciBlcXVhbGl0eSBvZiBhcmNoaXRlY3R1cmUuIEJ5IGRlZmF1bHQgSTxkZWJpYW4tYXJjaGl0ZWN0dXJlPiBpcyAiCisiY29tcGFyZWQgYWdhaW5zdCB0aGUgY3VycmVudCBEZWJpYW4gYXJjaGl0ZWN0dXJlLCBiZWluZyB0aGUgaG9zdC4gIFRoaXMgIgorImFjdGlvbiB3aWxsIG5vdCBleHBhbmQgdGhlIGFyY2hpdGVjdHVyZSB3aWxkY2FyZHMuIENvbW1hbmQgZmluaXNoZXMgd2l0aCBhbiAiCisiZXhpdCBzdGF0dXMgb2YgMCBpZiBtYXRjaGVkLCAxIGlmIG5vdCBtYXRjaGVkLiIKK21zZ3N0ciAiIgorIlNwcmF3ZHphIHLDs3dub3dhxbxub8WbxIcgYXJjaGl0ZWt0dXIuIERvbXnFm2xuaWUgSTxhcmNoaXRla3R1cmEtZGViaWFuYT4gamVzdCAiCisicG9yw7N3bnl3YW5hIHogYmllxbzEhWPEhSBhcmNoaXRla3R1csSFIERlYmlhbmEsIHRyYWt0b3dhbsSFIGpha28gYXJjaGl0ZWt0dXJhICIKKyJnb3Nwb2RhcnphLiBUYSBha2NqYSBuaWUgcm96d2lqYSBtYXNlayBhcmNoaXRla3R1ci4gUG9sZWNlbmllIGtvxYRjenkgc2nEmSAiCisia29kZW0gd3lqxZtjaWEgMCBqZcWbbGkgZG9wYXNvd2FuaWUgYXJjaGl0ZWt0dXIgc2nEmSBwb3dpb2TFgm8sIGx1YiBrb2RlbSAxICIKKyJqZcWbbGkgbmllIGJ5xYJvIGRvcGFzb3dhbmlhLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MzcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1pPkk8YXJjaGl0ZWN0dXJlLXdpbGRjYXJkPiIKK21zZ3N0ciAiQjwtaT5JPG1hc2thLWFyY2hpdGVrdHVyeT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NDMKK21zZ2lkICIiCisiQ2hlY2sgZm9yIGlkZW50aXR5IG9mIGFyY2hpdGVjdHVyZSBieSBleHBhbmRpbmcgSTxhcmNoaXRlY3R1cmUtd2lsZGNhcmQ+IGFzICIKKyJhbiBhcmNoaXRlY3R1cmUgd2lsZGNhcmQgYW5kIGNvbXBhcmluZyBhZ2FpbnN0IHRoZSBjdXJyZW50IERlYmlhbiAiCisiYXJjaGl0ZWN0dXJlLiBDb21tYW5kIGZpbmlzaGVzIHdpdGggYW4gZXhpdCBzdGF0dXMgb2YgMCBpZiBtYXRjaGVkLCAxIGlmIG5vdCAiCisibWF0Y2hlZC4iCittc2dzdHIgIiIKKyJTcHJhd2R6ZW5pZSBhcmNoaXRla3R1cnkgcHJ6ZXogcm96d2luacSZY2llIHcgb2Rwb3dpZWRuaSBzcG9zw7NiIEk8bWFza2ktIgorImFyY2hpdGVrdHVyeT4gaSBwb3LDs3duYW5pZSB6IGJpZcW8xIVjxIUgYXJjaGl0ZWt0dXLEhSBEZWJpYW5hLiBQb2xlY2VuaWUga2/FhGN6eSAiCisic2nEmSBrb2RlbSB3eWrFm2NpYSAwIGplxZtsaSBkb3Bhc293YW5pZSBhcmNoaXRla3R1ciBzacSZIHBvd2lvZMWCbywgbHViIGtvZGVtIDEgIgorImplxZtsaSBuaWUgYnnFgm8gZG9wYXNvd2FuaWEuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo0MworIywgbm8td3JhcAorbXNnaWQgIkI8LXE+STx2YXJpYWJsZS1uYW1lPiIKK21zZ3N0ciAiQjwtcT5JPG5hendhLXptaWVubmVqPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo0NgorbXNnaWQgIlByaW50IHRoZSB2YWx1ZSBvZiBhIHNpbmdsZSB2YXJpYWJsZS4iCittc2dzdHIgIld5xZt3aWV0bGEgd2FydG/Fm8SHIHBvamVkeW5jemVqIHptaWVubmVqLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NDYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1zPiIKK21zZ3N0ciAiQjwtcz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NTAKK21zZ2lkICIiCisiUHJpbnQgYW4gZXhwb3J0IGNvbW1hbmQuIFRoaXMgY2FuIGJlIHVzZWQgdG8gc2V0IHRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZXMgIgorInVzaW5nIGV2YWwuIgorbXNnc3RyICIiCisiV3nFm3dpZXRsYSBwb2xlY2VuaWUgZXhwb3J0LCBrdMOzcmUgbW/FvGUgYnnEhyB1xbx5dGUgZG8gdXN0YXdpZW5pYSB6bWllbm55Y2ggIgorIsWbcm9kb3dpc2tvd3ljaCB6YSBwb21vY8SFIGV2YWwuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo1MAorIywgbm8td3JhcAorbXNnaWQgIkI8LXU+IgorbXNnc3RyICJCPC11PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo1MworbXNnaWQgIlByaW50IGEgc2ltaWxhciBjb21tYW5kIHRvIEI8LXM+IGJ1dCB0byB1bnNldCBhbGwgdmFyaWFibGVzLiIKK21zZ3N0ciAiIgorIld5xZt3aWV0bGEgcG9sZWNlbmllIHBvZG9ibmUgZG8gQjwtcz4sIGplZG5ha8W8ZSB6ZSB3c3p5c3RraW1pIHptaWVubnltaSAiCisibmlldXN0YXdpb255bWkuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo1MworIywgbm8td3JhcAorbXNnaWQgIkI8LWM+STwgY29tbWFuZD4iCittc2dzdHIgIkI8LWM+STwgcG9sZWNlbmllPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo1NworbXNnaWQgIiIKKyJFeGVjdXRlIGEgSTxjb21tYW5kPiBpbiBhbiBlbnZpcm9ubWVudCB3aGljaCBoYXMgYWxsIHZhcmlhYmxlcyBzZXQgdG8gdGhlICIKKyJkZXRlcm1pbmVkIHZhbHVlLiIKK21zZ3N0ciAiIgorIld5a29udWplIEk8cG9sZWNlbmllPiB3IMWbcm9kb3dpc2t1LCBrdMOzcmUgbWEgd3N6eXN0a2llIHptaWVubmUgdXN0YXdpb25lIG5hICIKKyJ3eXpuYWN6b25lIHdhcnRvxZtjaS4gIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo1NworIywgbm8td3JhcAorbXNnaWQgIkI8LUw+IgorbXNnc3RyICJCPC1MPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo2MAorbXNnaWQgIlByaW50IGEgbGlzdCBvZiB2YWxpZCBhcmNoaXRlY3R1cmUgbmFtZXMuIgorbXNnc3RyICJXecWbd2lldGxhIGxpc3TEmSBwb3ByYXdueWNoIG5hencgYXJjaGl0ZWt0dXIuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjYzIGRwa2ctYnVpbGRmbGFncy4xOjkyIGRwa2ctYnVpbGRwYWNrYWdlLjE6MjI2CisjOiBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6MzYgZHBrZy1kaXN0YWRkZmlsZS4xOjM1IGRwa2ctZGViLjE6MTc1CisjOiBkcGtnLWRpdmVydC44Ojc0IGRwa2ctZ2VuY2hhbmdlcy4xOjEzNCBkcGtnLWdlbmNvbnRyb2wuMToxMjQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQ0NiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjQxIGRwa2ctbmFtZS4xOjYxCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MzYgZHBrZy1xdWVyeS4xOjExMyBkcGtnLXNjYW5wYWNrYWdlcy4xOjk5CisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6NjggZHBrZy1zaGxpYmRlcHMuMToyMTggZHBrZy1zb3VyY2UuMTo5OQorIzogZHBrZy1zcGxpdC4xOjEyOSBkcGtnLXN0YXRvdmVycmlkZS44OjQ3IGRwa2ctdHJpZ2dlci4xOjM0IGRwa2ctdmVuZG9yLjE6MzEKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMTkKK21zZ2lkICJTaG93IHRoZSB1c2FnZSBtZXNzYWdlIGFuZCBleGl0LiIKK21zZ3N0ciAiV3nFm3dpZXRsYSBpbmZvcm1hY2rEmSBvIHXFvHl0a293YW5pdSBpIGtvxYRjenkgZHppYcWCYW5pZS4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NjYgZHBrZy1idWlsZGZsYWdzLjE6OTUgZHBrZy1idWlsZHBhY2thZ2UuMToyMjkKKyM6IGRwa2ctY2hlY2tidWlsZGRlcHMuMTozOSBkcGtnLWRpc3RhZGRmaWxlLjE6MzggZHBrZy1kZWIuMToxNzgKKyM6IGRwa2ctZGl2ZXJ0Ljg6NzcgZHBrZy1nZW5jaGFuZ2VzLjE6MTM3IGRwa2ctZ2VuY29udHJvbC4xOjEyNworIzogZHBrZy1nZW5zeW1ib2xzLjE6NDQ5IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6NDQgZHBrZy1uYW1lLjE6NjQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTozOSBkcGtnLXF1ZXJ5LjE6MTE2IGRwa2ctc2NhbnBhY2thZ2VzLjE6MTAyCisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6NzAgZHBrZy1zaGxpYmRlcHMuMToyMjEgZHBrZy1zb3VyY2UuMToxMDIKKyM6IGRwa2ctc3BsaXQuMToxMzIgZHBrZy1zdGF0b3ZlcnJpZGUuODo1MCBkcGtnLXRyaWdnZXIuMTozNyBkcGtnLXZlbmRvci4xOjM0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzIyCittc2dpZCAiU2hvdyB0aGUgdmVyc2lvbiBhbmQgZXhpdC4iCittc2dzdHIgIld5xZt3aWV0bGEgaW5mb3JtYWNqxJkgbyB3ZXJzamkgaSBwb215xZtsbmllIGtvxYRjenkgZHppYcWCYW5pZS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjY4CisjLCBuby13cmFwCittc2dpZCAiQjwtYT5JPGRlYmlhbi1hcmNoaXRlY3R1cmU+IgorbXNnc3RyICJCPC1hPkk8YXJjaGl0ZWt0dXJhLWRlYmlhbmE+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjcxCittc2dpZCAiU2V0IHRoZSBEZWJpYW4gYXJjaGl0ZWN0dXJlLiIKK21zZ3N0ciAiVXN0YXdpYSBhcmNoaXRla3R1csSZIERlYmlhbmEuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo3MSBkcGtnLWJ1aWxkcGFja2FnZS4xOjExMAorIywgbm8td3JhcAorbXNnaWQgIkI8LXQ+STxnbnUtc3lzdGVtLXR5cGU+IgorbXNnc3RyICJCPC10Pkk8dHlwLXN5c3RlbXUtZ251PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo3NAorbXNnaWQgIlNldCB0aGUgR05VIHN5c3RlbSB0eXBlLiIKK21zZ3N0ciAiVXN0YXdpYSB0eXAgc3lzdGVtdSBHTlUuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo3NAorIywgbm8td3JhcAorbXNnaWQgIkI8LWY+IgorbXNnc3RyICJCPC1mPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo4MQorbXNnaWQgIiIKKyJWYWx1ZXMgc2V0IGJ5IGV4aXN0aW5nIGVudmlyb25tZW50IHZhcmlhYmxlcyB3aXRoIHRoZSBzYW1lIG5hbWUgYXMgdXNlZCBieSAiCisidGhlIHNjcmlwdHMgYXJlIGhvbm9yZWQgKGkuZS4gdXNlZCBieSBCPGRwa2ctYXJjaGl0ZWN0dXJlPiksIGV4Y2VwdCBpZiB0aGlzICIKKyJmb3JjZSBmbGFnIGlzIHByZXNlbnQuIFRoaXMgYWxsb3dzIHRoZSB1c2VyIHRvIG92ZXJyaWRlIGEgdmFsdWUgZXZlbiB3aGVuICIKKyJ0aGUgY2FsbCB0byBCPGRwa2ctYXJjaGl0ZWN0dXJlPiBpcyBidXJpZWQgaW4gc29tZSBvdGhlciBzY3JpcHQgKGZvciBleGFtcGxlICIKKyJCPGRwa2ctYnVpbGRwYWNrYWdlPigxKSkuIgorbXNnc3RyICIiCisiSG9ub3Jvd2FuZSBzxIUgd2FydG/Fm2NpIHVzdGF3aW9uZSB3IGlzdG5pZWrEhWN5Y2ggem1pZW5ueWNoIMWbcm9kb3dpc2tvd3ljaCBvICIKKyJ0eWNoIHNhbXljaCBuYXp3YWNoLCBjbyB1xbx5d2FuZSB3IHNrcnlwdGFjaCAobnAuIHXFvHl0ZSBwcnpleiBCPGRwa2ctIgorImFyY2hpdGVjdHVyZT4pLCBjaHliYSDFvGUgamVzdCBvYmVjbmEgdGEgZmxhZ2Egd3ltdXN6ZW5pYS4gUG96d2FsYSB0byBuYSAiCisibmFkcGlzYW5pZSB3YXJ0b8WbY2kgbmF3ZXQgamXFm2xpIHd5d2/FgmFuaWUgQjxkcGtnLWFyY2hpdGVjdHVyZT4gamVzdCB1a3J5dGUgIgorImfFgsSZYm9rbyB3IGpha2ltxZsgaW5ueW0gc2tyeXBjaWUgKG5wLiBCPGRwa2ctYnVpbGRwYWNrYWdlPigxKSkuIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo4MgorIywgbm8td3JhcAorbXNnaWQgIlRFUk1TIgorbXNnc3RyICJXQVJVTktJIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo4MworIywgbm8td3JhcAorbXNnaWQgImJ1aWxkIG1hY2hpbmUiCittc2dzdHIgIm1hc3p5bmEgYnVkb3dhbmlhIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjg1Cittc2dpZCAiVGhlIG1hY2hpbmUgdGhlIHBhY2thZ2UgaXMgYnVpbHQgb24uIgorbXNnc3RyICJSb2R6YWogbWFzenlueSwgbmEga3TDs3JlaiBwYWtpZXQgamVzdCBidWRvd2FueS4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjg1CisjLCBuby13cmFwCittc2dpZCAiaG9zdCBtYWNoaW5lIgorbXNnc3RyICJtYXN6eW5hIGRvY2Vsb3dhIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjg3Cittc2dpZCAiVGhlIG1hY2hpbmUgdGhlIHBhY2thZ2UgaXMgYnVpbHQgZm9yLiIKK21zZ3N0ciAiUm9kemFqIG1hc3p5bnksIGRsYSBrdMOzcmVqIHBha2lldCBqZXN0IGJ1ZG93YW55LiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6ODcKKyMsIG5vLXdyYXAKK21zZ2lkICJEZWJpYW4gYXJjaGl0ZWN0dXJlIgorbXNnc3RyICJhcmNoaXRla3R1cmEgRGViaWFuYSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo5MAorbXNnaWQgIiIKKyJUaGUgRGViaWFuIGFyY2hpdGVjdHVyZSBzdHJpbmcsIHdoaWNoIHNwZWNpZmllcyB0aGUgYmluYXJ5IHRyZWUgaW4gdGhlICIKKyJcXHMtMUZUUFxcczAgYXJjaGl2ZS4gRXhhbXBsZXM6IGkzODYsIHNwYXJjLCBodXJkLWkzODYuIgorbXNnc3RyICIiCisixYFhxYRjdWNoIHpuYWvDs3cgemF3aWVyYWrEhWN5IGFyY2hpdGVrdHVyxJkgRGViaWFuYSwga3TDs3JhIG9rcmXFm2xhIGRyemV3byAiCisiYmluYXJuZSB3IGFyY2hpd3VtIFxccy0xRlRQXFxzMC4gUHJ6eWvFgmFkeTogaTM4Niwgc3BhcmMsIGh1cmQtaTM4Ni4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjkwCisjLCBuby13cmFwCittc2dpZCAiYXJjaGl0ZWN0dXJlIHdpbGRjYXJkIgorbXNnc3RyICJtYXNrYSBhcmNoaXRla3R1cnkiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6OTQKK21zZ2lkICIiCisiQW4gYXJjaGl0ZWN0dXJlIHdpbGRjYXJkIGlzIGEgc3BlY2lhbCBhcmNoaXRlY3R1cmUgc3RyaW5nIHRoYXQgd2lsbCBtYXRjaCAiCisiYW55IHJlYWwgYXJjaGl0ZWN0dXJlIGJlaW5nIHBhcnQgb2YgaXQuIFRoZSBnZW5lcmFsIGZvcm0gaXMgRTxsdD5rZXJuZWxFPGd0Pi0iCisiRTxsdD5jcHVFPGd0Pi4gIEV4YW1wbGVzOiBsaW51eC1hbnksIGFueS1pMzg2LCBodXJkLWFueS4iCittc2dzdHIgIiIKKyJNYXNrYSBhcmNoaXRla3R1cnkgamVzdCBzcGVjamFsbnltIMWCYcWEY3VjaGVtIHpuYWvDs3csIGt0w7NyeSBixJlkemllIHBhc293YcWCIGRvICIKKyJrYcW8ZGVqIGFyY2hpdGVrdHVyeSwga3TDs3JhIGplc3QgamVnbyBjesSZxZtjacSFLiBPZ8OzbG5hIHBvc3RhxIcgamVzdCAiCisibmFzdMSZcHVqxIVjYTogRTxsdD5qxIVkcm9FPGd0Pi1FPGx0PnByb2Nlc29yRTxndD4uIFByenlrxYJhZHk6IGxpbnV4LWFueSwgYW55LSIKKyJpMzg2LCBodXJkLWFueS4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjk0CisjLCBuby13cmFwCittc2dpZCAiXFxzLTFHTlVcXHMwIHN5c3RlbSB0eXBlIgorbXNnc3RyICJ0eXAgc3lzdGVtdSBcXHMtMUdOVVxcczAiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6OTgKK21zZ2lkICIiCisiQW4gYXJjaGl0ZWN0dXJlIHNwZWNpZmljYXRpb24gc3RyaW5nIGNvbnNpc3Rpbmcgb2YgdHdvIHBhcnRzIHNlcGFyYXRlZCBieSBhICIKKyJkYXNoOiBjcHUgYW5kIHN5c3RlbS4gRXhhbXBsZXM6IGkzODYtbGludXgtZ251LCBzcGFyYy1saW51eC1nbnUsIGkzODYtZ251LCAiCisieDg2XzY0LW5ldGJzZC4iCittc2dzdHIgIiIKKyLFgWHFhGN1Y2ggem5ha8OzdyBva3JlxZtsYWrEhWN5IGFyY2hpdGVrdHVyxJkgc2vFgmFkYWrEhWN5IHNpxJkgeiBkd8OzY2ggY3rEmcWbY2kgIgorIm9kZHppZWxvbnljaCBtecWbbG5pa2llbTogcHJvY2Vzb3IgaSBzeXN0ZW0uIFByenlrxYJhZHk6IGkzODYtbGludXgtZ251LCBzcGFyYy0iCisibGludXgtZ251LCBpMzg2LWdudSwgeDg2XzY0LW5ldGJzZC4iCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjk5CisjLCBuby13cmFwCittc2dpZCAiVkFSSUFCTEVTIgorbXNnc3RyICJaTUlFTk5FIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEwMQorbXNnaWQgIlRoZSBmb2xsb3dpbmcgdmFyaWFibGVzIGFyZSBzZXQgYnkgQjxkcGtnLWFyY2hpdGVjdHVyZT46IgorbXNnc3RyICJCPGRwa2ctYXJjaGl0ZWN0dXJlPiB1c3Rhd2lhIG5hc3TEmXB1asSFY2Ugem1pZW5uZToiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEwMQorIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0JVSUxEX0FSQ0hcXHMwIgorbXNnc3RyICJcXHMtMURFQl9CVUlMRF9BUkNIXFxzMCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMDMKK21zZ2lkICJUaGUgRGViaWFuIGFyY2hpdGVjdHVyZSBvZiB0aGUgYnVpbGQgbWFjaGluZS4iCittc2dzdHIgIkFyY2hpdGVrdHVyYSB3ZyBEZWJpYW5hIGtvbXB1dGVyYSwgbmEga3TDs3J5bSBidWRvd2FueSBqZXN0IHBha2lldC4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEwMworIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0JVSUxEX0FSQ0hfT1NcXHMwIgorbXNnc3RyICJcXHMtMURFQl9CVUlMRF9BUkNIX09TXFxzMCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMDUKK21zZ2lkICJUaGUgRGViaWFuIHN5c3RlbSBuYW1lIG9mIHRoZSBidWlsZCBtYWNoaW5lLiIKK21zZ3N0ciAiTmF6d2Egc3lzdGVtdSB3ZyBEZWJpYW5hIGtvbXB1dGVyYSwgbmEga3TDs3J5bSBidWRvd2FueSBqZXN0IHBha2lldC4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEwNQorIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0JVSUxEX0FSQ0hfQ1BVXFxzMCIKK21zZ3N0ciAiXFxzLTFERUJfQlVJTERfQVJDSF9DUFVcXHMwIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEwNworbXNnaWQgIlRoZSBEZWJpYW4gY3B1IG5hbWUgb2YgdGhlIGJ1aWxkIG1hY2hpbmUuIgorbXNnc3RyICJOYXp3YSBwcm9jZXNvcmEgd2cgRGViaWFuYSBrb21wdXRlcmEsIG5hIGt0w7NyeW0gYnVkb3dhbnkgamVzdCBwYWtpZXQuIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMDcKKyMsIG5vLXdyYXAKK21zZ2lkICJcXHMtMURFQl9CVUlMRF9BUkNIX0JJVFNcXHMwIgorbXNnc3RyICJcXHMtMURFQl9CVUlMRF9BUkNIX0JJVFNcXHMwIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEwOQorbXNnaWQgIlRoZSBwb2ludGVyIHNpemUgb2YgdGhlIGJ1aWxkIG1hY2hpbmUgKGluIGJpdHMpLiIKK21zZ3N0ciAiUm96bWlhciB3c2thxbpuaWthIG5hIGtvbXB1dGVyemUgYnVkdWrEhWN5bSAodyBiaXRhY2gpLiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTA5CisjLCBuby13cmFwCittc2dpZCAiXFxzLTFERUJfQlVJTERfQVJDSF9FTkRJQU5cXHMwIgorbXNnc3RyICJcXHMtMURFQl9CVUlMRF9BUkNIX0VORElBTlxcczAiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTExCittc2dpZCAiVGhlIGVuZGlhbm5lc3Mgb2YgdGhlIGJ1aWxkIG1hY2hpbmUgKGxpdHRsZSAvIGJpZykuIgorbXNnc3RyICJLb2xlam5vxZvEhyBiYWp0w7N3IChlbmRpYW4pIG5hIGtvbXB1dGVyemUgYnVkdWrEhWN5bSAobGl0dGxlIC8gYmlnKS4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjExMQorIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0JVSUxEX0dOVV9DUFVcXHMwIgorbXNnc3RyICJcXHMtMURFQl9CVUlMRF9HTlVfQ1BVXFxzMCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMTMKKyMsIGZ1enp5CisjfCBtc2dpZCAiVGhlIFxccy0xQ1BVXFxzMCBwYXJ0IG9mIFxccy0xREVCX0JVSUxEX0dOVV9UWVBFXFxzMCIKK21zZ2lkICJUaGUgXFxzLTFDUFVcXHMwIHBhcnQgb2YgXFxzLTFERUJfQlVJTERfR05VX1RZUEVcXHMwLiIKK21zZ3N0ciAiQ3rEmcWbxIcgZG90eWN6xIVjYSBcXHMtMUNQVVxcczAgeiBcXHMtMURFQl9CVUlMRF9HTlVfVFlQRVxcczAiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjExMworIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0JVSUxEX0dOVV9TWVNURU1cXHMwIgorbXNnc3RyICJcXHMtMURFQl9CVUlMRF9HTlVfU1lTVEVNXFxzMCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMTUKK21zZ2lkICJUaGUgU3lzdGVtIHBhcnQgb2YgXFxzLTFERUJfQlVJTERfR05VX1RZUEVcXHMwLiIKK21zZ3N0ciAiQ3plxZvEhyBkb3R5Y3rEhWNhIHN5c3RlbXUgeiBcXHMtMURFQl9CVUlMRF9HTlVfVFlQRVxcczAuIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMTUKKyMsIG5vLXdyYXAKK21zZ2lkICJcXHMtMURFQl9CVUlMRF9HTlVfVFlQRVxcczAiCittc2dzdHIgIlxccy0xREVCX0JVSUxEX0dOVV9UWVBFXFxzMCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMTcKK21zZ2lkICJUaGUgXFxzLTFHTlVcXHMwIHN5c3RlbSB0eXBlIG9mIHRoZSBidWlsZCBtYWNoaW5lLiIKK21zZ3N0ciAiVHlwIHN5c3RlbXUgXFxzLTFHTlVcXHMwIGtvbXB1dGVyYSwgbmEga3TDs3J5bSBidWRvd2FueSBqZXN0IHBha2lldC4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjExNworIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJcXHMtMURFQl9CVUlMRF9BUkNIXFxzMCIKK21zZ2lkICJcXHMtMURFQl9CVUlMRF9NVUxUSUFSQ0hcXHMwIgorbXNnc3RyICJcXHMtMURFQl9CVUlMRF9BUkNIXFxzMCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMjAKKyMsIGZ1enp5CisjfCBtc2dpZCAiVGhlIFxccy0xR05VXFxzMCBzeXN0ZW0gdHlwZSBvZiB0aGUgYnVpbGQgbWFjaGluZS4iCittc2dpZCAiIgorIlRoZSBjbGFyaWZpZWQgXFxzLTFHTlVcXHMwIHN5c3RlbSB0eXBlIG9mIHRoZSBidWlsZCBtYWNoaW5lLCB1c2VkIGZvciAiCisiZmlsZXN5c3RlbSBwYXRocy4iCittc2dzdHIgIlR5cCBzeXN0ZW11IFxccy0xR05VXFxzMCBrb21wdXRlcmEsIG5hIGt0w7NyeW0gYnVkb3dhbnkgamVzdCBwYWtpZXQuIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMjAKKyMsIG5vLXdyYXAKK21zZ2lkICJcXHMtMURFQl9IT1NUX0FSQ0hcXHMwIgorbXNnc3RyICJcXHMtMURFQl9IT1NUX0FSQ0hcXHMwIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEyMgorbXNnaWQgIlRoZSBEZWJpYW4gYXJjaGl0ZWN0dXJlIG9mIHRoZSBob3N0IG1hY2hpbmUuIgorbXNnc3RyICJBcmNoaXRla3R1cmEgd2cgRGViaWFuYSBkbGEgbWFzenlueSBkb2NlbG93ZWouIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMjIKKyMsIG5vLXdyYXAKK21zZ2lkICJcXHMtMURFQl9IT1NUX0FSQ0hfT1NcXHMwIgorbXNnc3RyICJcXHMtMURFQl9CVUlMRF9BUkNIX09TXFxzMCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMjQKK21zZ2lkICJUaGUgRGViaWFuIHN5c3RlbSBuYW1lIG9mIHRoZSBob3N0IG1hY2hpbmUuIgorbXNnc3RyICJOYXp3YSBzeXN0ZW11IHdnIERlYmlhbmEgZGxhIG1hc3p5bnkgZG9jZWxvd2VqLiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTI0CisjLCBuby13cmFwCittc2dpZCAiXFxzLTFERUJfSE9TVF9BUkNIX0NQVVxcczAiCittc2dzdHIgIlxccy0xREVCX0hPU1RfQVJDSF9DUFVcXHMwIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEyNgorbXNnaWQgIlRoZSBEZWJpYW4gY3B1IG5hbWUgb2YgdGhlIGhvc3QgbWFjaGluZS4iCittc2dzdHIgIk5hendhIHByb2Nlc29yYSB3ZyBEZWJpYW5hIGRsYSBtYXN6eW55IGRvY2Vsb3dlai4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEyNgorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJcXHMtMURFQl9IT1NUX0FSQ0hfT1NcXHMwIgorbXNnaWQgIlxccy0xREVCX0hPU1RfQVJDSF9CSVRTXFxzMCIKK21zZ3N0ciAiXFxzLTFERUJfQlVJTERfQVJDSF9PU1xcczAiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTI4Cittc2dpZCAiVGhlIHBvaW50ZXIgc2l6ZSBvZiB0aGUgaG9zdCBtYWNoaW5lIChpbiBiaXRzKS4iCittc2dzdHIgIlJvem1pYXIgd3NrYcW6bmlrYSBuYSBtYXN6eW5pZSBkb2NlbG93ZWogKHcgYml0YWNoKS4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEyOAorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJcXHMtMURFQl9IT1NUX0FSQ0hcXHMwIgorbXNnaWQgIlxccy0xREVCX0hPU1RfQVJDSF9FTkRJQU5cXHMwIgorbXNnc3RyICJcXHMtMURFQl9IT1NUX0FSQ0hcXHMwIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEzMAorbXNnaWQgIlRoZSBlbmRpYW5uZXNzIG9mIHRoZSBob3N0IG1hY2hpbmUgKGxpdHRsZSAvIGJpZykuIgorbXNnc3RyICJLb2xlam5vxZvEhyBiYWp0w7N3IChlbmRpYW4pIG5hIG1hc3p5bmllIGRvY2Vsb3dlaiAobGl0dGxlIC8gYmlnKS4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEzMAorIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0hPU1RfR05VX0NQVVxcczAiCittc2dzdHIgIlxccy0xREVCX0hPU1RfR05VX0NQVVxcczAiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTMyCittc2dpZCAiVGhlIFxccy0xQ1BVXFxzMCBwYXJ0IG9mIFxccy0xREVCX0hPU1RfR05VX1RZUEVcXHMwLiIKK21zZ3N0ciAiQ3rEmcWbxIcgZG90eWN6xIVjYSBcXHMtMUNVUFxcczAgeiBcXHMtMURFQl9IT1NUX0dOVV9UWVBFXFxzMC4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEzMgorIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0hPU1RfR05VX1NZU1RFTVxcczAiCittc2dzdHIgIlxccy0xREVCX0hPU1RfR05VX1NZU1RFTVxcczAiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTM0Cittc2dpZCAiVGhlIFN5c3RlbSBwYXJ0IG9mIFxccy0xREVCX0hPU1RfR05VX1RZUEVcXHMwLiIKK21zZ3N0ciAiQ3rEmcWbxIcgZG90eWN6xIVjYSBzeXN0ZW11IHogXFxzLTFERUJfSE9TVF9HTlVfVFlQRVxcczAuIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMzQKKyMsIG5vLXdyYXAKK21zZ2lkICJcXHMtMURFQl9IT1NUX0dOVV9UWVBFXFxzMCIKK21zZ3N0ciAiXFxzLTFERUJfSE9TVF9HTlVfVFlQRVxcczAiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTM2Cittc2dpZCAiVGhlIFxccy0xR05VXFxzMCBzeXN0ZW0gdHlwZSBvZiB0aGUgaG9zdCBtYWNoaW5lLiIKK21zZ3N0ciAiVHlwIHN5c3RlbXUgXFxzLTFHTlVcXHMwIGRsYSBtYXN6eW55IGRvY2Vsb3dlai4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEzNgorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJcXHMtMURFQl9IT1NUX0FSQ0hcXHMwIgorbXNnaWQgIlxccy0xREVCX0hPU1RfTVVMVElBUkNIXFxzMCIKK21zZ3N0ciAiXFxzLTFERUJfSE9TVF9BUkNIXFxzMCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMzkKKyMsIGZ1enp5CisjfCBtc2dpZCAiVGhlIFxccy0xR05VXFxzMCBzeXN0ZW0gdHlwZSBvZiB0aGUgaG9zdCBtYWNoaW5lLiIKK21zZ2lkICIiCisiVGhlIGNsYXJpZmllZCBcXHMtMUdOVVxcczAgc3lzdGVtIHR5cGUgb2YgdGhlIGhvc3QgbWFjaGluZSwgdXNlZCBmb3IgIgorImZpbGVzeXN0ZW0gcGF0aHMuIgorbXNnc3RyICJUeXAgc3lzdGVtdSBcXHMtMUdOVVxcczAgZGxhIG1hc3p5bnkgZG9jZWxvd2VqLiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTQwCisjLCBuby13cmFwCittc2dpZCAiREVCSUFOL1JVTEVTIgorbXNnc3RyICJERUJJQU4vUlVMRVMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTQ4Cittc2dpZCAiIgorIlRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZXMgc2V0IGJ5IEI8ZHBrZy1hcmNoaXRlY3R1cmU+IGFyZSBwYXNzZWQgdG8gSTxkZWJpYW4vIgorInJ1bGVzPiBhcyBtYWtlIHZhcmlhYmxlcyAoc2VlIG1ha2UgZG9jdW1lbnRhdGlvbikuIEhvd2V2ZXIsIHlvdSBzaG91bGQgbm90ICIKKyJyZWx5IG9uIHRoZW0sIGFzIHRoaXMgYnJlYWtzIG1hbnVhbCBpbnZvY2F0aW9uIG9mIHRoZSBzY3JpcHQuIEluc3RlYWQsIHlvdSAiCisic2hvdWxkIGFsd2F5cyBpbml0aWFsaXplIHRoZW0gdXNpbmcgQjxkcGtnLWFyY2hpdGVjdHVyZT4gd2l0aCB0aGUgLXEgb3B0aW9uLiAiCisiSGVyZSBhcmUgc29tZSBleGFtcGxlcywgd2hpY2ggYWxzbyBzaG93IGhvdyB5b3UgY2FuIGltcHJvdmUgdGhlIGNyb3NzICIKKyJjb21waWxhdGlvbiBzdXBwb3J0IGluIHlvdXIgcGFja2FnZToiCittc2dzdHIgIiIKKyJabWllbm5lIMWbcm9kb3dpc2tvd2UgdXN0YXdpb25lIHByemV6IEI8ZHBrZy1hcmNoaXRlY3R1cmU+IHPEhSBwcnpla2F6eXdhbmUgZG8gIgorIkk8ZGViaWFuL3J1bGVzPiBqYWtvIHptaWVubmUgcHJvZ3JhbXUgbWFrZSAocGF0cnogZG9rdW1lbnRhY2phIGRvIG1ha2UpLiAiCisiSmVkbmFrxbxlIG5pZSBuYWxlxbx5IG5hIG5pY2ggcG9sZWdhxIcsIGdkecW8IHBzdWplIHRvIHLEmWN6bmUgdXJ1Y2hvbWllbmllIHRlZ28gIgorInNrcnlwdHUuIFphbWlhc3QgdGVnbywgbmFsZcW8eSB6YXdzemUgaW5pY2pvd2HEhyBqZSwgdcW8eXdhasSFYyBCPGRwa2ctIgorImFyY2hpdGVjdHVyZT4geiBvcGNqxIUgLXEuIFBvbmnFvGVqIHpuYWpkdWplIHNpxJkgcGFyxJkgcHJ6eWvFgmFkw7N3LCBrdMOzcmUgdGFrxbxlICIKKyJwb2thenVqxIUsIGphayBtb8W8bmEgcG9sZXBzennEhyB3c3BhcmNpZSBkbGEga29tcGlsYWNqaSBrcnp5xbxvd2VqIHBha2lldHU6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjE1MSBkcGtnLWFyY2hpdGVjdHVyZS4xOjE2OAorbXNnaWQgIkluc3RlYWQgb2Y6IgorbXNnc3RyICJaYW1pYXN0OiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxNTUKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiQVJDSD1cXGBkcGtnIC0tcHJpbnQtYXJjaGl0ZWN0dXJlXFxgXG4iCisiY29uZmlndXJlICQoXFxzLTFBUkNIXFxzMCktbGludXhcbiIKK21zZ3N0ciAiIgorIkFSQ0g9XFxgZHBrZyAtLXByaW50LWFyY2hpdGVjdHVyZVxcYFxuIgorImNvbmZpZ3VyZSAkKFxccy0xQVJDSFxcczApLWxpbnV4XG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTU4Cittc2dpZCAicGxlYXNlIHVzZSB0aGUgZm9sbG93aW5nOiIKK21zZ3N0ciAicHJvc3rEmSB1xbx5d2HEhzoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTYyCisjLCBuby13cmFwCittc2dpZCAiIgorIlxcJlxccy0xREVCX0JVSUxEX0dOVV9UWVBFXFxzMCA6PSAkKHNoZWxsIGRwa2ctYXJjaGl0ZWN0dXJlIC1xREVCX0JVSUxEX0dOVV9UWVBFKVxuIgorIlxcJlxccy0xREVCX0hPU1RfR05VX1RZUEVcXHMwIDo9ICQoc2hlbGwgZHBrZy1hcmNoaXRlY3R1cmUgLXFERUJfSE9TVF9HTlVfVFlQRSlcbiIKK21zZ3N0ciAiIgorIlxcJlxccy0xREVCX0JVSUxEX0dOVV9UWVBFXFxzMCA6PSAkKHNoZWxsIGRwa2ctYXJjaGl0ZWN0dXJlIC1xREVCX0JVSUxEX0dOVV9UWVBFKVxuIgorIlxcJlxccy0xREVCX0hPU1RfR05VX1RZUEVcXHMwIDo9ICQoc2hlbGwgZHBrZy1hcmNoaXRlY3R1cmUgLXFERUJfSE9TVF9HTlVfVFlQRSlcbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxNjQKKyMsIG5vLXdyYXAKK21zZ2lkICJjb25maWd1cmUgLS1idWlsZD0kKFxccy0xREVCX0JVSUxEX0dOVV9UWVBFXFxzMCkgLS1ob3N0PSQoXFxzLTFERUJfSE9TVF9HTlVfVFlQRVxcczApXG4iCittc2dzdHIgImNvbmZpZ3VyZSAtLWJ1aWxkPSQoXFxzLTFERUJfQlVJTERfR05VX1RZUEVcXHMwKSAtLWhvc3Q9JChcXHMtMURFQl9IT1NUX0dOVV9UWVBFXFxzMClcbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxNzQKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiQVJDSD1cXGBkcGtnIC0tcHJpbnQtYXJjaGl0ZWN0dXJlXFxgXG4iCisiaWZlcSAoJChcXHMtMUFSQ0hcXHMwKSxhbHBoYSlcbiIKKyIgIC4uLlxuIgorImVuZGlmXG4iCittc2dzdHIgIiIKKyJBUkNIPVxcYGRwa2cgLS1wcmludC1hcmNoaXRlY3R1cmVcXGBcbiIKKyJpZmVxICgkKFxccy0xQVJDSFxcczApLGFscGhhKVxuIgorIiAgLi4uXG4iCisiZW5kaWZcbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxNzcKK21zZ2lkICJwbGVhc2UgdXNlOiIKK21zZ3N0ciAicHJvc3rEmSB1xbx5d2HEhzoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTgwCisjLCBuby13cmFwCittc2dpZCAiXFwmXFxzLTFERUJfSE9TVF9BUkNIXFxzMCA6PSAkKHNoZWxsIGRwa2ctYXJjaGl0ZWN0dXJlIC1xREVCX0hPU1RfQVJDSClcbiIKK21zZ3N0ciAiXFwmXFxzLTFERUJfSE9TVF9BUkNIXFxzMCA6PSAkKHNoZWxsIGRwa2ctYXJjaGl0ZWN0dXJlIC1xREVCX0hPU1RfQVJDSClcbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxODQKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiaWZlcSAoJChcXHMtMURFQl9IT1NUX0FSQ0hcXHMwKSxhbHBoYSlcbiIKKyIgIC4uLlxuIgorImVuZGlmXG4iCittc2dzdHIgIiIKKyJpZmVxICgkKFxccy0xREVCX0hPU1RfQVJDSFxcczApLGFscGhhKVxuIgorIiAgLi4uXG4iCisiZW5kaWZcbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxODgKK21zZ2lkICIiCisib3IgaWYgeW91IG9ubHkgbmVlZCB0byBjaGVjayB0aGUgQ1BVIG9yIE9TIHR5cGUsIHVzZSB0aGUgREVCX0hPU1RfQVJDSF9DUFUgIgorIm9yIERFQl9IT1NUX0FSQ0hfT1MgdmFyaWFibGVzLiIKK21zZ3N0ciAiIgorImFsYm8gamXFm2xpIHRyemViYSBzcHJhd2R6acSHIHR5bGtvIHR5cCBDUFUgbHViIE9TLCBuYWxlxbx5IHXFvHnEhyB6bWllbm55Y2ggIgorIkRFQl9IT1NUX0FSQ0hfQ1BVIGx1YiBERUJfSE9TVF9BUkNIX09TLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxOTMKK21zZ2lkICIiCisiSW4gZ2VuZXJhbCwgY2FsbGluZyBkcGtnIGluIHRoZSBydWxlcyBmaWxlIHRvIGdldCBhcmNoaXRlY3R1cmUgaW5mb3JtYXRpb24gIgorImlzIGRlcHJlY2F0ZWQgKHVubGVzcyB5b3Ugd2FudCB0byBwcm92aWRlIGJhY2t3YXJkIGNvbXBhdGliaWxpdHksIHNlZSAiCisiYmVsb3cpLiAgRXNwZWNpYWxseSB0aGUgLS1wcmludC1hcmNoaXRlY3R1cmUgb3B0aW9uIGlzIHVucmVsaWFibGUgc2luY2Ugd2UgIgorImhhdmUgRGViaWFuIGFyY2hpdGVjdHVyZXMgd2hpY2ggZG9uJ3QgZXF1YWwgYSBwcm9jZXNzb3IgbmFtZS4iCittc2dzdHIgIiIKKyJPZ8OzbG5pZSB3eXdvxYJ5d2FuaWUgZHBrZyB3IHBsaWt1IHJ1bGVzIHcgY2VsdSBwb2JyYW5pYSBpbmZvcm1hY2ppIG8gIgorImFyY2hpdGVrdHVyemUgamVzdCBwcnplc3RhcnphxYJlIChjaHliYSDFvGUgY2hjZSBzacSZIHphY2hvd2HEhyBrb21wYXR5Ymlsbm/Fm8SHICIKKyJ3c3RlY3puxIUsIHBhdHJ6IG5pxbxlaikuIFcgc3pjemVnw7Nsbm/Fm2NpIG9wY2phIC0tcHJpbnQtYXJjaGl0ZWN0dXJlIGplc3QgIgorIm5pZXpieXQgd2lhcnlnb2RuYSwgcG9uaWV3YcW8IGlzdG5pZWrEhSBhcmNoaXRla3R1cnkgRGViaWFuYSwga3TDs3JlIG5pZSBzxIUgIgorInLDs3duZSBuYXp3aWUgcHJvY2Vzb3JhLiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTk0CisjLCBuby13cmFwCittc2dpZCAiQkFDS1dBUkQgQ09NUEFUSUJJTElUWSIKK21zZ3N0ciAiS09NUEFUWUJJTE5PxZrEhiBXU1RFQ1pOQSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxOTgKK21zZ2lkICIiCisiVGhlIERFQl8qX0FSQ0hfQklUUyBhbmQgREVCXypfQVJDSF9FTkRJQU4gdmFyaWFibGVzIHdlcmUgaW50cm9kdWNlZCBpbiBkcGtnLSIKKyJkZXYgMS4xNS40LiBVc2luZyB0aGVtIGluIEk8ZGViaWFuL3J1bGVzPiB0aHVzIHJlcXVpcmVzIGEgYnVpbGQtZGVwZW5kZW5jeSAiCisib24gZHBrZy1kZXYgKEU8Z3Q+PSAxLjE1LjQpLiIKK21zZ3N0ciAiIgorIlptaWVubmUgREVCXypfQVJDSF9CSVRTIG9yYXogREVCXypfQVJDSF9FTkRJQU4gem9zdGHFgnkgd3Byb3dhZHpvbmUgdyBkcGtnLSIKKyJkZXYgMS4xNS40LiBVxbx5d2FuaWUgaWNoIHcgSTxkZWJpYW4vcnVsZXM+IHd5bWFnYSB3acSZYyB6YWxlxbxub8WbY2kgY3phc3UgIgorImJ1ZG93YW5pYSBkbGEgZHBrZy1kZXYgKEU8Z3Q+PSAxLjE1LjQpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyMDMKK21zZ2lkICIiCisiVGhlIERFQl9IT1NUX0FSQ0hfQ1BVIGFuZCBERUJfSE9TVF9BUkNIX09TIHZhcmlhYmxlcyB3ZXJlIGludHJvZHVjZWQgaW4gZHBrZy0iCisiZGV2IDEuMTMuMi4gQmVmb3JlIHRoaXMgSTxkZWJpYW4vcnVsZXM+IGZpbGVzIHRlbmRlZCB0byBjaGVjayB0aGUgdmFsdWVzIG9mICIKKyJ0aGUgREVCX0hPU1RfR05VX0NQVSBvciBERUJfSE9TVF9HTlVfVFlQRSB2YXJpYWJsZXMgd2hpY2ggaGF2ZSBiZWVuIHN1YmplY3QgIgorInRvIGNoYW5nZS4iCittc2dzdHIgIiIKKyJabWllbm5lIERFQl9IT1NUX0FSQ0hfQ1BVIG9yYXogREVCX0hPU1RfQVJDSF9PUyBzxIUgZG9zdMSZcG5lIHcgbWlhcsSZIG5vd3ljaCAiCisid2Vyc2phY2ggQjxkcGtnLWFyY2hpdGVjdHVyZT4gKG9kIGRwa2cgMS4xMy4yKS4gV2N6ZcWbbmllaiB3IHBsaWthY2ggSTxkZWJpYW4vIgorInJ1bGVzPiBiecWCeSBzcHJhd2R6YW5lIHptaWVubmUgREVCX0hPU1RfR05VX0NQVSBsdWIgREVCX0hPU1RfR05VX1RZUEUsIGt0w7NyZSAiCisiem9zdGHFgnkgem1pZW5pb25lLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyMDgKK21zZ2lkICIiCisiV2hlcmUgSTxkZWJpYW4vcnVsZXM+IGZpbGVzIGNoZWNrIHRoZXNlIHZhcmlhYmxlcyB0byBkZWNpZGUgaG93IG9yIHdoYXQgdG8gIgorImNvbXBpbGUsIHRoaXMgc2hvdWxkIGJlIHVwZGF0ZWQgdG8gdXNlIHRoZSBuZXcgdmFyaWFibGVzIGFuZCB2YWx1ZXMuICBZb3UgIgorIm1heSB3aXNoIHRvIHJldGFpbiBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eSB3aXRoIG9sZGVyIHZlcnNpb24gb2YgZHBrZy1kZXYgYnkgIgorInVzaW5nIHRoZSBmb2xsb3dpbmcgY29kZToiCittc2dzdHIgIiIKKyJXc3p5c3RraWUgcGxpa2kgSTxkZWJpYW4vcnVsZXM+LCBkZWN5ZHVqxIVjZSBuYSBwb2RzdGF3aWUgdHljaCB6bWllbm55Y2ggamFrICIKKyJpIGNvIGtvbXBpbG93YcSHLCBwb3dpbm55IGJ5xIcgemFrdHVhbGl6b3dhbmUgaSBwcnp5c3Rvc293YW5lIGRvIHXFvHl3YW5pYSAiCisibm93eWNoIHptaWVubnljaCBpIGljaCB3YXJ0b8WbY2kuIEFieSB6YWNob3dhxIcgd3N0ZWN6bsSFIGtvbXBhdHliaWxub8WbxIcgeiAiCisicG9wcnplZG5pbWkgd2Vyc2phbWkgZHBrZy1kZXYsIG1vxbxuYSB1xbx5xIcgbmFzdMSZcHVqxIVjZWdvIGtvZHU6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjIxMgorIywgbm8td3JhcAorbXNnaWQgIiIKKyJERUJfSE9TVF9BUkNIX0NQVSA6PSAkKHNoZWxsIGRwa2ctYXJjaGl0ZWN0dXJlIC1xREVCX0hPU1RfQVJDSF9DUFUgMkU8Z3Q+L2Rldi9udWxsKVxuIgorIkRFQl9IT1NUX0FSQ0hfT1MgOj0gJChzaGVsbCBkcGtnLWFyY2hpdGVjdHVyZSAtcURFQl9IT1NUX0FSQ0hfT1MgMkU8Z3Q+L2Rldi9udWxsKVxuIgorbXNnc3RyICIiCisiREVCX0hPU1RfQVJDSF9DUFUgOj0gJChzaGVsbCBkcGtnLWFyY2hpdGVjdHVyZSAtcURFQl9IT1NUX0FSQ0hfQ1BVIDJFPGd0Pi9kZXYvbnVsbClcbiIKKyJERUJfSE9TVF9BUkNIX09TIDo9ICQoc2hlbGwgZHBrZy1hcmNoaXRlY3R1cmUgLXFERUJfSE9TVF9BUkNIX09TIDJFPGd0Pi9kZXYvbnVsbClcbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyMjYKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiIyBUYWtlIGFjY291bnQgb2Ygb2xkIGRwa2ctYXJjaGl0ZWN0dXJlIG91dHB1dC5cbiIKKyJpZmVxICgkKERFQl9IT1NUX0FSQ0hfQ1BVKSwpXG4iCisiICBERUJfSE9TVF9BUkNIX0NQVSA6PSAkKHNoZWxsIGRwa2ctYXJjaGl0ZWN0dXJlIC1xREVCX0hPU1RfR05VX0NQVSlcbiIKKyIgIGlmZXEgKCQoREVCX0hPU1RfQVJDSF9DUFUpLHg4Nl82NClcbiIKKyIgICAgREVCX0hPU1RfQVJDSF9DUFUgOj0gYW1kNjRcbiIKKyIgIGVuZGlmXG4iCisiZW5kaWZcbiIKKyJpZmVxICgkKERFQl9IT1NUX0FSQ0hfT1MpLClcbiIKKyIgIERFQl9IT1NUX0FSQ0hfT1MgOj0gJChzdWJzdCAtZ251LCwkKHNoZWxsIGRwa2ctYXJjaGl0ZWN0dXJlIC1xREVCX0hPU1RfR05VX1NZU1RFTSkpXG4iCisiICBpZmVxICgkKERFQl9IT1NUX0FSQ0hfT1MpLGdudSlcbiIKKyIgICAgREVCX0hPU1RfQVJDSF9PUyA6PSBodXJkXG4iCisiICBlbmRpZlxuIgorImVuZGlmXG4iCittc2dzdHIgIiIKKyIjIEJpZXJ6ZSBwb2QgdXdhZ8SZIHd5asWbY2llIHplIHN0YXJlZ28gZHBrZy1hcmNoaXRlY3R1cmUuXG4iCisiaWZlcSAoJChERUJfSE9TVF9BUkNIX0NQVSksKVxuIgorIiAgREVCX0hPU1RfQVJDSF9DUFUgOj0gJChzaGVsbCBkcGtnLWFyY2hpdGVjdHVyZSAtcURFQl9IT1NUX0dOVV9DUFUpXG4iCisiICBpZmVxICgkKERFQl9IT1NUX0FSQ0hfQ1BVKSx4ODZfNjQpXG4iCisiICAgIERFQl9IT1NUX0FSQ0hfQ1BVIDo9IGFtZDY0XG4iCisiICBlbmRpZlxuIgorImVuZGlmXG4iCisiaWZlcSAoJChERUJfSE9TVF9BUkNIX09TKSwpXG4iCisiICBERUJfSE9TVF9BUkNIX09TIDo9ICQoc3Vic3QgLWdudSwsJChzaGVsbCBkcGtnLWFyY2hpdGVjdHVyZSAtcURFQl9IT1NUX0dOVV9TWVNURU0pKVxuIgorIiAgaWZlcSAoJChERUJfSE9TVF9BUkNIX09TKSxnbnUpXG4iCisiICAgIERFQl9IT1NUX0FSQ0hfT1MgOj0gaHVyZFxuIgorIiAgZW5kaWZcbiIKKyJlbmRpZlxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjIyOQorbXNnaWQgIkFuZCBzaW1pbGFybHkgZm9yIERFQl9CVUlMRF9BUkNIX0NQVSBhbmQgREVCX0JVSUxEX0FSQ0hfT1MuIgorbXNnc3RyICJJIHBvZG9ibmllIGRsYSBERUJfQlVJTERfQVJDSF9DUFUgb3JheiBERUJfQlVJTERfQVJDSF9PUy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjMyCittc2dpZCAiIgorIklmIHlvdSBzdGlsbCB3aXNoIHRvIHN1cHBvcnQgdmVyc2lvbnMgb2YgZHBrZy1kZXYgdGhhdCBkaWQgbm90IGluY2x1ZGUgIgorIkI8ZHBrZy1hcmNoaXRlY3R1cmU+LCB0aGUgZm9sbG93aW5nIGRvZXMgdGhlIGpvYjoiCittc2dzdHIgIiIKKyJKZcWbbGkgY2hjZXN6IHdjacSFxbwgb2JzxYJ1Z2l3YcSHIHdlcnNqZSBkcGtnLWRldiwga3TDs3JlIG5pZSB6YXdpZXJhasSFIEI8ZHBrZy0iCisiYXJjaGl0ZWN0dXJlPiwgdG8gcG9uacW8c3p5IGtvZCB3eWtvbnVqZSB0byB6YWRhbmllOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyNDIKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiXFwmXFxzLTFERUJfQlVJTERfQVJDSFxcczAgOj0gJChzaGVsbCBkcGtnIC0tcHJpbnQtYXJjaGl0ZWN0dXJlKVxuIgorIlxcJlxccy0xREVCX0JVSUxEX0dOVV9DUFVcXHMwIDo9ICQocGF0c3Vic3QgaHVyZC0lLCUsJChcXHMtMURFQl9CVUlMRF9BUkNIXFxzMCkpXG4iCisiaWZlcSAoJChmaWx0ZXItb3V0IGh1cmQtJSwkKFxccy0xREVCX0JVSUxEX0FSQ0hcXHMwKSksKVxuIgorIiAgXFxzLTFERUJfQlVJTERfR05VX1NZU1RFTVxcczAgOj0gZ251XG4iCisiZWxzZVxuIgorIiAgXFxzLTFERUJfQlVJTERfR05VX1NZU1RFTVxcczAgOj0gbGludXgtZ251XG4iCisiZW5kaWZcbiIKKyJERUJfQlVJTERfR05VX1RZUEU9JChcXHMtMURFQl9CVUlMRF9HTlVfQ1BVXFxzMCktJChcXHMtMURFQl9CVUlMRF9HTlVfU1lTVEVNXFxzMClcbiIKK21zZ3N0ciAiIgorIlxcJlxccy0xREVCX0JVSUxEX0FSQ0hcXHMwIDo9ICQoc2hlbGwgZHBrZyAtLXByaW50LWFyY2hpdGVjdHVyZSlcbiIKKyJcXCZcXHMtMURFQl9CVUlMRF9HTlVfQ1BVXFxzMCA6PSAkKHBhdHN1YnN0IGh1cmQtJSwlLCQoXFxzLTFERUJfQlVJTERfQVJDSFxcczApKVxuIgorImlmZXEgKCQoZmlsdGVyLW91dCBodXJkLSUsJChcXHMtMURFQl9CVUlMRF9BUkNIXFxzMCkpLClcbiIKKyIgIFxccy0xREVCX0JVSUxEX0dOVV9TWVNURU1cXHMwIDo9IGdudVxuIgorImVsc2VcbiIKKyIgIFxccy0xREVCX0JVSUxEX0dOVV9TWVNURU1cXHMwIDo9IGxpbnV4LWdudVxuIgorImVuZGlmXG4iCisiREVCX0JVSUxEX0dOVV9UWVBFPSQoXFxzLTFERUJfQlVJTERfR05VX0NQVVxcczApLSQoXFxzLTFERUJfQlVJTERfR05VX1NZU1RFTVxcczApXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjQ3CisjLCBuby13cmFwCittc2dpZCAiIgorIlxcJlxccy0xREVCX0hPU1RfQVJDSFxcczAgOj0gJChcXHMtMURFQl9CVUlMRF9BUkNIXFxzMClcbiIKKyJcXCZcXHMtMURFQl9IT1NUX0dOVV9DUFVcXHMwIDo9ICQoXFxzLTFERUJfQlVJTERfR05VX0NQVVxcczApXG4iCisiXFwmXFxzLTFERUJfSE9TVF9HTlVfU1lTVEVNXFxzMCA6PSAkKFxccy0xREVCX0JVSUxEX0dOVV9TWVNURU1cXHMwKVxuIgorIlxcJlxccy0xREVCX0hPU1RfR05VX1RZUEVcXHMwIDo9ICQoXFxzLTFERUJfQlVJTERfR05VX1RZUEVcXHMwKVxuIgorbXNnc3RyICIiCisiXFwmXFxzLTFERUJfSE9TVF9BUkNIXFxzMCA6PSAkKFxccy0xREVCX0JVSUxEX0FSQ0hcXHMwKVxuIgorIlxcJlxccy0xREVCX0hPU1RfR05VX0NQVVxcczAgOj0gJChcXHMtMURFQl9CVUlMRF9HTlVfQ1BVXFxzMClcbiIKKyJcXCZcXHMtMURFQl9IT1NUX0dOVV9TWVNURU1cXHMwIDo9ICQoXFxzLTFERUJfQlVJTERfR05VX1NZU1RFTVxcczApXG4iCisiXFwmXFxzLTFERUJfSE9TVF9HTlVfVFlQRVxcczAgOj0gJChcXHMtMURFQl9CVUlMRF9HTlVfVFlQRVxcczApXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjUxCittc2dpZCAiIgorIlB1dCBhIHN1YnNldCBvZiB0aGVzZSBsaW5lcyBhdCB0aGUgdG9wIG9mIHlvdXIgZGViaWFuL3J1bGVzIGZpbGU7IHRoZXNlICIKKyJkZWZhdWx0IHZhbHVlcyB3aWxsIGJlIG92ZXJ3cml0dGVuIGlmIGRwa2ctYXJjaGl0ZWN0dXJlIGlzIHVzZWQuIgorbXNnc3RyICIiCisiVW1pZcWbxIcgcG9kemJpw7NyIHR5Y2ggbGluaWkgbmEgZ8OzcnplIHBsaWt1IGRlYmlhbi9ydWxlczsgdGUgZG9tecWbbG5lIHdhcnRvxZtjaSAiCisiYsSZZMSFIG5hZHBpc2FuZSBwcnpleiBkcGtnLWFyY2hpdGVjdHVyZSwgamXFm2xpIGplc3QgdcW8eXdhbmUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI1OAorbXNnaWQgIiIKKyJZb3UgZG9uJ3QgbmVlZCB0aGUgZnVsbCBzZXQuIENob29zZSBhIGNvbnNpc3RlbnQgc2V0IHdoaWNoIGNvbnRhaW5zIHRoZSAiCisidmFsdWVzIHlvdSB1c2UgaW4gdGhlIHJ1bGVzIGZpbGUuIEZvciBleGFtcGxlLCBpZiB5b3Ugb25seSBuZWVkIHRoZSBob3N0ICIKKyJEZWJpYW4gYXJjaGl0ZWN0dXJlLCBgREVCX0hPU1RfQVJDSD1cXGBkcGtnIC0tcHJpbnQtYXJjaGl0ZWN0dXJlXFxgJyBpcyAiCisic3VmZmljaWVudCAodGhpcyBpcyBpbmRlZWQgdGhlIERlYmlhbiBhcmNoaXRlY3R1cmUgb2YgdGhlIGJ1aWxkIG1hY2hpbmUsIGJ1dCAiCisicmVtZW1iZXIgdGhhdCB3ZSBhcmUgb25seSB0cnlpbmcgdG8gYmUgYmFja3dhcmQgY29tcGF0aWJsZSB3aXRoIG5hdGl2ZSAiCisiY29tcGlsYXRpb24pLiIKK21zZ3N0ciAiIgorIk5pZSBtYSBwb3RyemVieSB1xbx5d2FuaWEgcGXFgm5lZ28gemVzdGF3dSB6bWllbm55Y2guIE1vxbxuYSB3eWJyYcSHIHNww7NqbnkgaWNoICIKKyJ6YmnDs3IsIHphd2llcmFqxIVjeSB3YXJ0b8WbY2kgdcW8eXdhbmUgdyBwbGlrdSBydWxlcy4gTmEgcHJ6eWvFgmFkLCBqZcW8ZWxpICIKKyJwb3RyemVibmEgamVzdCB0eWxrbyBhcmNoaXRla3R1cmEgRGViaWFuYSBtYXN6eW55LCBkbGEga3TDs3JlaiBidWRvd2FueSBqZXN0ICIKKyJwYWtpZXQsIHd5c3RhcmN6YWrEhWNlIGplc3QgdcW8eWNpZSBcIkRFQl9IT1NUX0FSQ0g9XFxgZHBrZyAtLXByaW50LSIKKyJhcmNoaXRlY3R1cmVcXGBcIiAodGFrIG5hcHJhd2TEmSBqZXN0IHRvIGFyY2hpdGVrdHVyYSBEZWJpYW5hIG1hc3p5bnksIG5hICIKKyJrdMOzcmVqIGplc3QgYnVkb3dhbnkgcGFraWV0LCBhbGUgcHJvc3rEmSBwYW1pxJl0YcSHLCDFvGUgcHLDs2J1amVteSB0eWxrbyAiCisiemFjaG93YcSHIHdzdGVjem7EhSB6Z29kbm/Fm8SHIHogbmF0eXduxIUga29tcGlsYWNqxIUpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyNjEKK21zZ2lkICIiCisiVGhlIEI8LWU+IGFuZCBCPC1pPiBvcHRpb25zIHdlcmUgb25seSBpbnRyb2R1Y2VkIGluIHJlbGF0aXZlbHkgcmVjZW50ICIKKyJ2ZXJzaW9ucyBvZiBCPGRwa2ctYXJjaGl0ZWN0dXJlPiAoc2luY2UgZHBrZyAxLjEzLjEzKS4iCittc2dzdHIgIiIKKyJPcGNqZSBCPC1lPiBpIEI8LWk+IHpvc3RhxYJ5IHdwcm93YWR6b25lIHcgbWlhcsSZIG5vd3ljaCB3ZXJzamFjaCBCPGRwa2ctIgorImFyY2hpdGVjdHVyZT4gKG9kIHdlcnNqaSBkcGtnIDEuMTMuMTMpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyNjUKK21zZ2lkICIiCisiQjxkcGtnLWJ1aWxkcGFja2FnZT4gYWNjZXB0cyB0aGUgQjwtYT4gb3B0aW9uIGFuZCBwYXNzZXMgaXQgdG8gQjxkcGtnLSIKKyJhcmNoaXRlY3R1cmU+LiBPdGhlciBleGFtcGxlczoiCittc2dzdHIgIiIKKyJCPGRwa2ctYnVpbGRwYWNrYWdlPiBha2NlcHR1amUgb3BjasSZIEI8LWE+IGkgcHJ6ZWthenVqZSBqxIUgZG8gQjxkcGtnLSIKKyJhcmNoaXRlY3R1cmU+LiBJbm5lIHByenlrxYJhZHk6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI2NworbXNnaWQgIkNDPWkzODYtZ251LWdjYyBkcGtnLWFyY2hpdGVjdHVyZSAtYyBkZWJpYW4vcnVsZXMgYnVpbGQiCittc2dzdHIgIkNDPWkzODYtZ251LWdjYyBkcGtnLWFyY2hpdGVjdHVyZSAtYyBkZWJpYW4vcnVsZXMgYnVpbGQiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjY5Cittc2dpZCAiZXZhbCBcXGBkcGtnLWFyY2hpdGVjdHVyZSAtdVxcYCIKK21zZ3N0ciAiZXZhbCBcXGBkcGtnLWFyY2hpdGVjdHVyZSAtdVxcYCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyNzIKK21zZ2lkICIiCisiQ2hlY2sgaWYgYW4gYXJjaGl0ZWN0dXJlIGlzIGVxdWFsIHRvIHRoZSBjdXJyZW50IGFyY2hpdGVjdHVyZSBvciBhIGdpdmVuIG9uZToiCittc2dzdHIgIiIKKyJTcHJhd2R6YW5pZSwgY3p5IGFyY2hpdGVrdHVyYSBqZXN0IHLDs3duYSBhcmNoaXRla3R1cnplIGJpZcW8xIVjZWogbHViIHBvZGFuZWo6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI3NAorbXNnaWQgImRwa2ctYXJjaGl0ZWN0dXJlIC1lbGludXgtYWxwaGEiCittc2dzdHIgImRwa2ctYXJjaGl0ZWN0dXJlIC1lbGludXgtYWxwaGEiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6Mjc2Cittc2dpZCAiZHBrZy1hcmNoaXRlY3R1cmUgLWFtaXBzIC1lbGludXgtbWlwcyIKK21zZ3N0ciAiZHBrZy1hcmNoaXRlY3R1cmUgLWFtaXBzIC1lbGludXgtbWlwcyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyNzkKK21zZ2lkICIiCisiQ2hlY2sgaWYgdGhlIGN1cnJlbnQgYXJjaGl0ZWN0dXJlIG9yIGFuIGFyY2hpdGVjdHVyZSBwcm92aWRlZCB3aXRoIC1hIGFyZSAiCisiTGludXggc3lzdGVtczoiCittc2dzdHIgIiIKKyJTcHJhd2R6YW5pZSwgY3p5IGFyY2hpdGVrdHVyYSBiaWXFvMSFY2EgcG9kYW5hIHByemV6IC1hIGplc3Qgc3lzdGVtZW0gTGludWtzYToiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjgxCittc2dpZCAiZHBrZy1hcmNoaXRlY3R1cmUgLWlsaW51eC1hbnkiCittc2dzdHIgImRwa2ctYXJjaGl0ZWN0dXJlIC1pbGludXgtYW55IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI4MworbXNnaWQgImRwa2ctYXJjaGl0ZWN0dXJlIC1haTM4NiAtaWxpbnV4LWFueSIKK21zZ3N0ciAiZHBrZy1hcmNoaXRlY3R1cmUgLWFpMzg2IC1pbGludXgtYW55IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI4OAorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiQWxsIHRoZXNlIGZpbGVzIGhhdmUgdG8gYmUgcHJlc2VudCBmb3IgQjxkcGtnLWFyY2hpdGVjdHVyZT4gdG8gd29yay4gIgorI3wgIlRoZWlyIGxvY2F0aW9uIGNhbiBiZSBvdmVycmlkZGVuIGF0IHJ1bnRpbWUgd2l0aCB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGUgIgorI3wgIkRQS0dfREFUQURJUi4iCittc2dpZCAiIgorIkFsbCB0aGVzZSBmaWxlcyBoYXZlIHRvIGJlIHByZXNlbnQgZm9yIEI8ZHBrZy1hcmNoaXRlY3R1cmU+IHRvIHdvcmsuIFRoZWlyICIKKyJsb2NhdGlvbiBjYW4gYmUgb3ZlcnJpZGRlbiBhdCBydW50aW1lIHdpdGggdGhlIGVudmlyb25tZW50IHZhcmlhYmxlICIKKyJCPERQS0dfREFUQURJUj4uIgorbXNnc3RyICIiCisiV3N6eXN0a2llIHRlIHBsaWtpIG11c3rEhSBiecSHIG9iZWNuZSwgYWJ5IEI8ZHBrZy1hcmNoaXRlY3R1cmU+IHcgb2fDs2xlICIKKyJkemlhxYJhxYIuIEljaCBwb8WCb8W8ZW5pZSBtb8W8bmF6bWllbmnEhyB3IGN6YXNpZSBkemlhxYJhbmlhIHByb2dyYW11IHByemV6ICIKKyJ1c3Rhd2llbmllIHptaWVubmVqIMWbcm9kb3dpc2tvd2VqIERQS0dfREFUQURJUi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI4OAorIywgbm8td3JhcAorbXNnaWQgIkk8L3Vzci9zaGFyZS9kcGtnL2NwdXRhYmxlPiIKK21zZ3N0ciAiSTwvdXNyL3NoYXJlL2Rwa2cvY3B1dGFibGU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI5MQorbXNnaWQgIlRhYmxlIG9mIGtub3duIENQVSBuYW1lcyBhbmQgbWFwcGluZyB0byB0aGVpciBHTlUgbmFtZS4iCittc2dzdHIgIlRhYmVsYSB6bmFueWNoIG5hencgcHJvY2Vzb3LDs3cgaSBpY2ggbWFwb3dhbmllIG5hIG5hend5IEdOVS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI5MQorIywgbm8td3JhcAorbXNnaWQgIkk8L3Vzci9zaGFyZS9kcGtnL29zdGFibGU+IgorbXNnc3RyICJJPC91c3Ivc2hhcmUvZHBrZy9vc3RhYmxlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyOTQKK21zZ2lkICJUYWJsZSBvZiBrbm93biBvcGVyYXRpbmcgc3lzdGVtIG5hbWVzIGFuZCBtYXBwaW5nIHRvIHRoZWlyIEdOVSBuYW1lLiIKK21zZ3N0ciAiIgorIlRhYmVsYSBuYXp3IHpuYW55Y2ggc3lzdGVtw7N3IG9wZXJhY3lqbnljaCBpIGljaCBtYXBvd2FuaWUgbmEgbmF6d3kgR05VLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6Mjk0CisjLCBuby13cmFwCittc2dpZCAiSTwvdXNyL3NoYXJlL2Rwa2cvdHJpcGxldHRhYmxlPiIKK21zZ3N0ciAiSTwvdXNyL3NoYXJlL2Rwa2cvdHJpcGxldHRhYmxlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyOTgKK21zZ2lkICIiCisiTWFwcGluZyBiZXR3ZWVuIERlYmlhbiBhcmNoaXRlY3R1cmUgdHJpcGxldHMgYW5kIERlYmlhbiBhcmNoaXRlY3R1cmUgbmFtZXMuIgorbXNnc3RyICIiCisiTWFwb3dhbmllIG1pxJlkenkgdHLDs2prYW1pIGFyY2hpdGVrdHVyIERlYmlhbmEgYSBuYXp3YW1pIGFyY2hpdGVrdHVyIERlYmlhbmEuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjMwMgorbXNnaWQgIkI8ZHBrZy1idWlsZHBhY2thZ2U+KDEpLCBCPGRwa2ctY3Jvc3M+KDEpLiIKK21zZ3N0ciAiQjxkcGtnLWJ1aWxkcGFja2FnZT4oMSksIEI8ZHBrZy1jcm9zcz4oMSkuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjMwNworbXNnaWQgIiIKKyJCPGRwa2ctYXJjaGl0ZWN0dXJlPiBhbmQgdGhpcyBtYW4gcGFnZSB3ZXJlIGluaXRpYWxseSB3cml0dGVuIGJ5IE1hcmN1cyAiCisiQnJpbmttYW5uIEU8bHQ+YnJpbmttZEBkZWJpYW4ub3JnRTxndD4uIgorbXNnc3RyICIiCisiQjxkcGtnLWFyY2hpdGVjdHVyZT4gaSB0YSBzdHJvbmEgcG9kcsSZY3puaWthIGVrcmFub3dlZ28gem9zdGHFgnkgbmFwaXNhbmUgIgorIk1hcmN1c2EgQnJpbmttYW5uYSBFPGx0PmJyaW5rbWRAZGViaWFuLm9yZ0U8Z3Q+LiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2cuY2ZnLjU6MQorIywgbm8td3JhcAorbXNnaWQgImRwa2cuY2ZnIgorbXNnc3RyICJkcGtnLmNmZyIKKworIy4gdHlwZTogVEgKKyM6IGRwa2cuY2ZnLjU6MQorIywgbm8td3JhcAorbXNnaWQgIjIwMDktMDktMDUiCittc2dzdHIgIjIwMDktMDktMDUiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuY2ZnLjU6NAorbXNnaWQgImRwa2cuY2ZnIC0gZHBrZyBjb25maWd1cmF0aW9uIGZpbGUiCittc2dzdHIgImRwa2cuY2ZnIC0gcGxpayBrb25maWd1cmFjeWpueSBwcm9ncmFtdSBkcGtnICIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy5jZmcuNToxMQorbXNnaWQgIiIKKyJUaGlzIGZpbGUgY29udGFpbnMgZGVmYXVsdCBvcHRpb25zIGZvciBkcGtnLiBFYWNoIGxpbmUgY29udGFpbnMgYSBzaW5nbGUgIgorIm9wdGlvbiB3aGljaCBpcyBleGFjdGx5IHRoZSBzYW1lIGFzIGEgbm9ybWFsIGNvbW1hbmQgbGluZSBvcHRpb24gZm9yIGRwa2cgIgorImV4Y2VwdCBmb3IgdGhlIGxlYWRpbmcgZGFzaGVzIHdoaWNoIGFyZSBub3QgdXNlZCBoZXJlLiBRdW90ZXMgc3Vycm91bmRpbmcgIgorIm9wdGlvbiB2YWx1ZXMgYXJlIHN0cmlwcGVkLiBDb21tZW50cyBhcmUgYWxsb3dlZCBieSBzdGFydGluZyBhIGxpbmUgd2l0aCBhICIKKyJoYXNoIHNpZ24gKFwiQjwjPlwiKS4iCittc2dzdHIgIiIKKyJQbGlrIHRlbiB6YXdpZXJhIGRvbXnFm2xuZSBvcGNqZSBwcm9ncmFtdSBkcGtnLiBXIGthxbxkZWogbGluaWkgd3ltaWVuaW9uYSAiCisiamVzdCBwb2plZHluY3phIG9wY2phLCBkb2vFgmFkbmllIHRha2Egc2FtYSBqYWsgbm9ybWFsbmEgb3BjamEgbGluaWkgcG9sZWNlxYQgIgorInByb2dyYW11IGRwa2csIHogd3lqxIV0a2llbSB0ZWdvLCDFvGUgbmllIHPEhSB1xbx5d2FuZSBwb2N6xIV0a293ZSBtecWbbG5pa2kuICIKKyJabmFraSBjdWR6eXPFgm93w7N3IG90YWN6YWrEhWNlIHdhcnRvxZtjaSBvcGNqaSBzxIUgdXN1d2FuZS4gTW/FvG5hIHXFvHl3YcSHICIKKyJrb21lbnRhcnp5LCB6YWN6eW5hasSFYyBsaW5pxJkgem5ha2llbSBoYXNoIChcIkI8Iz5cIikuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLmNmZy41OjE0Cittc2dpZCAiSTwvZXRjL2Rwa2cvZHBrZy5jZmcuZC9bMC05YS16QS1aXy1dKj4iCittc2dzdHIgIkk8L2V0Yy9kcGtnL2Rwa2cuY2ZnLmQvWzAtOWEtekEtWl8tXSo+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLmNmZy41OjE4Cittc2dpZCAiSTx+Ly5kcGtnLmNmZz4iCittc2dzdHIgIkk8fi8uZHBrZy5jZmc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLmNmZy41OjI0IGRwa2ctZGl2ZXJ0Ljg6MTM0IGRwa2ctcXVlcnkuMToyMjIgZHBrZy1zdGF0b3ZlcnJpZGUuODo4NgorbXNnaWQgIkI8ZHBrZz4oMSkuIgorbXNnc3RyICJCPGRwa2c+KDEpLiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiZHBrZy1idWlsZHBhY2thZ2UiCittc2dpZCAiZHBrZy1idWlsZGZsYWdzIgorbXNnc3RyICJkcGtnLWJ1aWxkcGFja2FnZSIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiMjAwNy0wMy0wNyIKK21zZ2lkICIyMDExLTA5LTEzIgorbXNnc3RyICIyMDA3LTAzLTA3IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo0Cittc2dpZCAiZHBrZy1idWlsZGZsYWdzIC0gcmV0dXJucyBidWlsZCBmbGFncyB0byB1c2UgZHVyaW5nIHBhY2thZ2UgYnVpbGQiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6OAorIywgZnV6enkKKyN8IG1zZ2lkICJCPGRwa2ctdHJpZ2dlcj4gW0k8b3B0aW9uPi4uLl0gSTxjb21tYW5kPiIKK21zZ2lkICJCPGRwa2ctYnVpbGRmbGFncz4gW0k8b3B0aW9uPi4uLl0gW0k8Y29tbWFuZD5dIgorbXNnc3RyICJCPGRwa2ctdHJpZ2dlcj4gW0k8b3BjamE+Li4uXSBJPHBvbGVjZW5pZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEyCittc2dpZCAiIgorIkI8ZHBrZy1idWlsZGZsYWdzPiBpcyBhIHRvb2wgdG8gcmV0cmlldmUgY29tcGlsYXRpb24gZmxhZ3MgdG8gdXNlIGR1cmluZyAiCisiYnVpbGQgb2YgRGViaWFuIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNQorbXNnaWQgIiIKKyJUaGUgZGVmYXVsdCBmbGFncyBhcmUgZGVmaW5lZCBieSB0aGUgdmVuZG9yIGJ1dCB0aGV5IGNhbiBiZSBleHRlbmRlZC8iCisib3ZlcnJpZGVuIGluIHNldmVyYWwgd2F5czoiCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE1CisjLCBuby13cmFwCittc2dpZCAiMS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTcKK21zZ2lkICJzeXN0ZW0td2lkZSB3aXRoIEI8L2V0Yy9kcGtnL2J1aWxkZmxhZ3MuY29uZj47IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNworIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICIyIgorbXNnaWQgIjIuIgorbXNnc3RyICIyIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyMAorbXNnaWQgIiIKKyJmb3IgdGhlIGN1cnJlbnQgdXNlciB3aXRoIEI8JFhER19DT05GSUdfSE9NRS9kcGtnL2J1aWxkZmxhZ3MuY29uZj4gd2hlcmUgQjwiCisiJFhER19DT05GSUdfSE9NRT4gZGVmYXVsdHMgdG8gQjwkSE9NRS8uY29uZmlnPjsiCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjIwCisjLCBuby13cmFwCittc2dpZCAiMy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjMKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIkl0IHByZXBhcmVzIHRoZSBidWlsZCBlbnZpcm9ubWVudCBieSBzZXR0aW5nIHZhcmlvdXMgZW52aXJvbm1lbnQgIgorI3wgInZhcmlhYmxlcyAoc2VlIEI8RU5WSVJPTk1FTlQgVkFSSUFCTEVTPikuIgorbXNnaWQgIiIKKyJ0ZW1wb3JhcmlseSBieSB0aGUgdXNlciB3aXRoIGVudmlyb25tZW50IHZhcmlhYmxlcyAoc2VlIHNlY3Rpb24gIgorIkI8RU5WSVJPTk1FTlQ+KTsiCittc2dzdHIgIiIKKyJQcnp5Z290b3d1amUgxZtyb2Rvd2lza28gYnVkb3dhbmlhIHBvcHJ6ZXogdXN0YXdpZW5pZSByw7PFvG55Y2ggem1pZW5ueWNoICIKKyLFm3JvZG93aXNrYSAocGF0cnogQjxaTUlFTk5FIMWaUk9ET1dJU0tBPikuIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjMKKyMsIG5vLXdyYXAKK21zZ2lkICI0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyNgorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiSXQgcHJlcGFyZXMgdGhlIGJ1aWxkIGVudmlyb25tZW50IGJ5IHNldHRpbmcgdmFyaW91cyBlbnZpcm9ubWVudCAiCisjfCAidmFyaWFibGVzIChzZWUgQjxFTlZJUk9OTUVOVCBWQVJJQUJMRVM+KS4iCittc2dpZCAiIgorImR5bmFtaWNhbGx5IGJ5IHRoZSBwYWNrYWdlIG1haW50YWluZXIgd2l0aCBlbnZpcm9ubWVudCB2YXJpYWJsZXMgc2V0IHZpYSAiCisiQjxkZWJpYW4vcnVsZXM+IChzZWUgc2VjdGlvbiBCPEVOVklST05NRU5UPikuIgorbXNnc3RyICIiCisiUHJ6eWdvdG93dWplIMWbcm9kb3dpc2tvIGJ1ZG93YW5pYSBwb3ByemV6IHVzdGF3aWVuaWUgcsOzxbxueWNoIHptaWVubnljaCAiCisixZtyb2Rvd2lza2EgKHBhdHJ6IEI8Wk1JRU5ORSDFmlJPRE9XSVNLQT4pLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjgKK21zZ2lkICJUaGUgY29uZmlndXJhdGlvbiBmaWxlcyBjYW4gY29udGFpbiB0d28gdHlwZXMgb2YgZGlyZWN0aXZlczoiCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjI4CisjLCBuby13cmFwCittc2dpZCAiQjxTRVQ+STwgZmxhZyB2YWx1ZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MzEKK21zZ2lkICJPdmVycmlkZSB0aGUgZmxhZyBuYW1lZCBJPGZsYWc+IHRvIGhhdmUgdGhlIHZhbHVlIEk8dmFsdWU+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MzEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPFNUUklQPkk8IGZsYWcgdmFsdWU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjM0Cittc2dpZCAiIgorIlN0cmlwIGZyb20gdGhlIGZsYWcgbmFtZWQgSTxmbGFnPiBhbGwgdGhlIGJ1aWxkIGZsYWdzIGxpc3RlZCBpbiBJPHZhbHVlPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjM0CisjLCBuby13cmFwCittc2dpZCAiQjxBUFBFTkQ+STwgZmxhZyB2YWx1ZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MzgKK21zZ2lkICIiCisiRXh0ZW5kIHRoZSBmbGFnIG5hbWVkIEk8ZmxhZz4gYnkgYXBwZW5kaW5nIHRoZSBvcHRpb25zIGdpdmVuIGluIEk8dmFsdWU+LiAgQSAiCisic3BhY2UgaXMgcHJlcGVuZGVkIHRvIHRoZSBhcHBlbmRlZCB2YWx1ZSBpZiB0aGUgZmxhZydzIGN1cnJlbnQgdmFsdWUgaXMgbm9uLSIKKyJlbXB0eS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjM4CisjLCBuby13cmFwCittc2dpZCAiQjxQUkVQRU5EPkk8IGZsYWcgdmFsdWU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjQyCittc2dpZCAiIgorIkV4dGVuZCB0aGUgZmxhZyBuYW1lZCBJPGZsYWc+IGJ5IHByZXBlbmRpbmcgdGhlIG9wdGlvbnMgZ2l2ZW4gaW4gSTx2YWx1ZT4uICAiCisiQSBzcGFjZSBpcyBhcHBlbmRlZCB0byB0aGUgcHJlcGVuZGVkIHZhbHVlIGlmIHRoZSBmbGFnJ3MgY3VycmVudCB2YWx1ZSBpcyAiCisibm9uLWVtcHR5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo0NQorbXNnaWQgIiIKKyJUaGUgY29uZmlndXJhdGlvbiBmaWxlcyBjYW4gY29udGFpbiBjb21tZW50cyBvbiBsaW5lcyBzdGFydGluZyB3aXRoIGEgaGFzaCAiCisiKCMpLiBFbXB0eSBsaW5lcyBhcmUgYWxzbyBpZ25vcmVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6NDYKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjwtLWRlYnVnPiIKK21zZ2lkICJCPC0tZHVtcD4iCittc2dzdHIgIkI8LS1kZWJ1Zz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjUxCittc2dpZCAiIgorIlByaW50IHRvIHN0YW5kYXJkIG91dHB1dCBhbGwgY29tcGlsYXRpb24gZmxhZ3MgYW5kIHRoZWlyIHZhbHVlcy4gSXQgcHJpbnRzICIKKyJvbmUgZmxhZyBwZXIgbGluZSBzZXBhcmF0ZWQgZnJvbSBpdHMgdmFsdWUgYnkgYW4gZXF1YWwgc2lnbiAiCisiKFwiSTxmbGFnPj1JPHZhbHVlPlwiKS4gVGhpcyBpcyB0aGUgZGVmYXVsdCBhY3Rpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo1MQorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPGxpc3Q+IgorbXNnaWQgIkI8LS1saXN0PiIKK21zZ3N0ciAiQjxsaXN0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6NTYKK21zZ2lkICIiCisiUHJpbnQgdGhlIGxpc3Qgb2YgZmxhZ3Mgc3VwcG9ydGVkIGJ5IHRoZSBjdXJyZW50IHZlbmRvciAob25lIHBlciBsaW5lKS4gU2VlICIKKyJ0aGUgQjxTVVBQT1JURUQgRkxBR1M+IHNlY3Rpb24gZm9yIG1vcmUgaW5mb3JtYXRpb24gYWJvdXQgdGhlbS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjU2CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8LS1zaG93Zm9ybWF0PT5JPGZvcm1hdD4iCittc2dpZCAiQjwtLWV4cG9ydD0+STxmb3JtYXQ+IgorbXNnc3RyICJCPC0tc2hvd2Zvcm1hdD0+STxmb3JtYXQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo2NgorbXNnaWQgIiIKKyJQcmludCB0byBzdGFuZGFyZCBvdXRwdXQgc2hlbGwgKGlmIEk8Zm9ybWF0PiBpcyBCPHNoPikgb3IgbWFrZSAoaWYgSTxmb3JtYXQ+ICIKKyJpcyBCPG1ha2U+KSBjb21tYW5kcyB0aGF0IGNhbiBiZSB1c2VkIHRvIGV4cG9ydCBhbGwgdGhlIGNvbXBpbGF0aW9uIGZsYWdzIGluICIKKyJ0aGUgZW52aXJvbm1lbnQuIElmIEk8Zm9ybWF0PiBpcyBCPGNvbmZpZ3VyZT4gdGhlbiB0aGUgb3V0cHV0IGNhbiBiZSB1c2VkIG9uICIKKyJhIEI8Li9jb25maWd1cmU+IGNvbW1hbmQtbGluZS4gSWYgdGhlIEk8Zm9ybWF0PiB2YWx1ZSBpcyBub3QgZ2l2ZW4sIEI8c2g+IGlzICIKKyJhc3N1bWVkLiBPbmx5IGNvbXBpbGF0aW9uIGZsYWdzIHN0YXJ0aW5nIHdpdGggYW4gdXBwZXIgY2FzZSBjaGFyYWN0ZXIgYXJlICIKKyJpbmNsdWRlZCwgb3RoZXJzIGFyZSBhc3N1bWVkIHRvIG5vdCBiZSBzdWl0YWJsZSBmb3IgdGhlIGVudmlyb25tZW50LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6NjYKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjwtLWxvZz5JPCBmaWxlPiIKK21zZ2lkICJCPC0tZ2V0Pkk8IGZsYWc+IgorbXNnc3RyICJCPC0tbG9nPkk8IHBsaWs+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo3MAorbXNnaWQgIiIKKyJQcmludCB0aGUgdmFsdWUgb2YgdGhlIGZsYWcgb24gc3RhbmRhcmQgb3V0cHV0LiBFeGl0cyB3aXRoIDAgaWYgdGhlIGZsYWcgaXMgIgorImtub3duIG90aGVyd2lzZSBleGl0cyB3aXRoIDEuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo3MAorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPC0tbG9nPkk8IGZpbGU+IgorbXNnaWQgIkI8LS1vcmlnaW4+STwgZmxhZz4iCittc2dzdHIgIkI8LS1sb2c+STwgcGxpaz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjc1Cittc2dpZCAiIgorIlByaW50IHRoZSBvcmlnaW4gb2YgdGhlIHZhbHVlIHRoYXQgaXMgcmV0dXJuZWQgYnkgQjwtLWdldD4uIEV4aXRzIHdpdGggMCBpZiAiCisidGhlIGZsYWcgaXMga25vd24gb3RoZXJ3aXNlIGV4aXRzIHdpdGggMS4gVGhlIG9yaWdpbiBjYW4gYmUgb25lIG9mIHRoZSAiCisiZm9sbG93aW5nIHZhbHVlczoiCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjc2CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8LS1pcz5JPCB2ZW5kb3I+IgorbXNnaWQgIkI8dmVuZG9yPiIKK21zZ3N0ciAiQjwtLWlzPkk8IHR3w7NyY2E+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo3OQorbXNnaWQgInRoZSBvcmlnaW5hbCBmbGFnIHNldCBieSB0aGUgdmVuZG9yIGlzIHJldHVybmVkOyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6NzkKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjwtc3I+IgorbXNnaWQgIkI8c3lzdGVtPiIKK21zZ3N0ciAiQjwtc3I+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo4MgorbXNnaWQgInRoZSBmbGFnIGlzIHNldC9tb2RpZmllZCBieSBhIHN5c3RlbS13aWRlIGNvbmZpZ3VyYXRpb247IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo4MgorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPHF1ZXJ5PiIKK21zZ2lkICJCPHVzZXI+IgorbXNnc3RyICJCPHF1ZXJ5PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6ODUKK21zZ2lkICJ0aGUgZmxhZyBpcyBzZXQvbW9kaWZpZWQgYnkgYSB1c2VyLXNwZWNpZmljIGNvbmZpZ3VyYXRpb247IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo4NQorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPC12PiIKK21zZ2lkICJCPGVudj4iCittc2dzdHIgIkI8LXY+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo4OAorbXNnaWQgInRoZSBmbGFnIGlzIHNldC9tb2RpZmllZCBieSBhbiBlbnZpcm9ubWVudC1zcGVjaWZpYyBjb25maWd1cmF0aW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1idWlsZGZsYWdzLjE6OTYKKyMsIG5vLXdyYXAKK21zZ2lkICJTVVBQT1JURUQgRkxBR1MiCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjk3CisjLCBuby13cmFwCittc2dpZCAiQjxDRkxBR1M+IgorbXNnc3RyICJCPENGTEFHUz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEwMworbXNnaWQgIiIKKyJPcHRpb25zIGZvciB0aGUgQyBjb21waWxlci4gVGhlIGRlZmF1bHQgdmFsdWUgc2V0IGJ5IHRoZSB2ZW5kb3IgaW5jbHVkZXMgSTwtIgorImc+IGFuZCB0aGUgZGVmYXVsdCBvcHRpbWl6YXRpb24gbGV2ZWwgKEk8LU8yPiB1c3VhbGx5LCBvciBJPC1PMD4gaWYgdGhlICIKKyJCPERFQl9CVUlMRF9PUFRJT05TPiBlbnZpcm9ubWVudCB2YXJpYWJsZSBkZWZpbmVzIEk8bm9vcHQ+KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEwMworIywgbm8td3JhcAorbXNnaWQgIkI8Q1BQRkxBR1M+IgorbXNnc3RyICJCPENQUEZMQUdTPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTA2Cittc2dpZCAiT3B0aW9ucyBmb3IgdGhlIEMgcHJlcHJvY2Vzc29yLiBEZWZhdWx0IHZhbHVlOiBlbXB0eS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEwNgorIywgbm8td3JhcAorbXNnaWQgIkI8Q1hYRkxBR1M+IgorbXNnc3RyICJCPENYWEZMQUdTPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTA5Cittc2dpZCAiT3B0aW9ucyBmb3IgdGhlIEMrKyBjb21waWxlci4gU2FtZSBhcyBCPENGTEFHUz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMDkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPEZGTEFHUz4iCittc2dzdHIgIkI8RkZMQUdTPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTEyCittc2dpZCAiT3B0aW9ucyBmb3IgdGhlIEZvcnRyYW4gY29tcGlsZXIuIFNhbWUgYXMgQjxDRkxBR1M+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTEyCisjLCBuby13cmFwCittc2dpZCAiQjxMREZMQUdTPiIKK21zZ3N0ciAiQjxMREZMQUdTPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTIwCittc2dpZCAiIgorIk9wdGlvbnMgcGFzc2VkIHRvIHRoZSBjb21waWxlciB3aGVuIGxpbmtpbmcgZXhlY3V0YWJsZXMgb3Igc2hhcmVkIG9iamVjdHMgIgorIihpZiB0aGUgbGlua2VyIGlzIGNhbGxlZCBkaXJlY3RseSwgdGhlbiBCPC1XbD4gYW5kIEI8LD4gaGF2ZSB0byBiZSBzdHJpcHBlZCAiCisiZnJvbSB0aGVzZSBvcHRpb25zKS4gRGVmYXVsdCB2YWx1ZTogZW1wdHkuIgorbXNnc3RyICIiCisiT3BjamUgcHJ6ZWthenl3YW5lIGRvIGtvbXBpbGF0b3JhIHBvZGN6YXMgxYLEhWN6ZW5pYSBwbGlrw7N3IHd5a29ueXdhbG55Y2ggbHViICIKKyJ3c3DDs8WCZHppZWxvbnljaCBiaWJsaW90ZWsgKGplxZtsaSBsaW5rZXIgamVzdCB3eXdvxYJ5d2FueSBiZXpwb8WbcmVkbmlvLCBCPC1XbD4gIgorImkgQjwsPiBtdXN6xIUgYnnEhyB1c3VuacSZdGUgeiB0eWNoIG9wY2ppKS4gV2FydG/Fm8SHIGRvbXnFm2xuYTogcHVzdGUuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTIyCisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkk8L2V0Yy9kcGtnL2Rwa2cuY2ZnPiIKK21zZ2lkICJCPC9ldGMvZHBrZy9idWlsZGZsYWdzLmNvbmY+IgorbXNnc3RyICJJPC9ldGMvZHBrZy9kcGtnLmNmZz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEyNQorIywgZnV6enkKKyN8IG1zZ2lkICJkc2VsZWN0LmNmZyAtIGRzZWxlY3QgY29uZmlndXJhdGlvbiBmaWxlIgorbXNnaWQgIlN5c3RlbSB3aWRlIGNvbmZpZ3VyYXRpb24gZmlsZS4iCittc2dzdHIgImRzZWxlY3QuY2ZnIC0gcGxpayBrb25maWd1cmFjeWpueSBwcm9ncmFtdSBkc2VsZWN0ICIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEyNQorIywgbm8td3JhcAorbXNnaWQgIkI8JFhER19DT05GSUdfSE9NRS9kcGtnL2J1aWxkZmxhZ3MuY29uZj4gb3IgQjwkSE9NRS8uY29uZmlnL2Rwa2cvYnVpbGRmbGFncy5jb25mPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMjgKKyMsIGZ1enp5CisjfCBtc2dpZCAiZHNlbGVjdC5jZmcgLSBkc2VsZWN0IGNvbmZpZ3VyYXRpb24gZmlsZSIKK21zZ2lkICJVc2VyIGNvbmZpZ3VyYXRpb24gZmlsZS4iCittc2dzdHIgImRzZWxlY3QuY2ZnIC0gcGxpayBrb25maWd1cmFjeWpueSBwcm9ncmFtdSBkc2VsZWN0ICIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTM1Cittc2dpZCAiIgorIlRoZXJlIGFyZSAyIHNldHMgb2YgZW52aXJvbm1lbnQgdmFyaWFibGVzIGRvaW5nIHRoZSBzYW1lIG9wZXJhdGlvbnMsIHRoZSAiCisiZmlyc3Qgb25lIChERUJfSTxmbGFnPl9JPG9wPikgc2hvdWxkIG5ldmVyIGJlIHVzZWQgd2l0aGluIEI8ZGViaWFuL3J1bGVzPi4gIgorIkl0J3MgbWVhbnQgZm9yIGFueSB1c2VyIHRoYXQgd2FudHMgdG8gcmVidWlsZCB0aGUgc291cmNlIHBhY2thZ2Ugd2l0aCAiCisiZGlmZmVyZW50IGJ1aWxkIGZsYWdzLiBUaGUgc2Vjb25kIHNldCAoREVCX0k8ZmxhZz5fTUFJTlRfSTxvcD4pIHNob3VsZCBvbmx5ICIKKyJiZSB1c2VkIGluIEI8ZGViaWFuL3J1bGVzPiBieSBwYWNrYWdlIG1haW50YWluZXJzIHRvIGNoYW5nZSB0aGUgcmVzdWx0aW5nICIKKyJidWlsZCBmbGFncy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEzNQorIywgbm8td3JhcAorbXNnaWQgIkI8REVCXz5JPGZsYWc+QjxfU0VUPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUQorIzogZHBrZy1idWlsZGZsYWdzLjE6MTM3CisjLCBuby13cmFwCittc2dpZCAiQjxERUJfPkk8ZmxhZz5CPF9NQUlOVF9TRVQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE0MQorbXNnaWQgIiIKKyJUaGlzIHZhcmlhYmxlIGNhbiBiZSB1c2VkIHRvIGZvcmNlIHRoZSB2YWx1ZSByZXR1cm5lZCBmb3IgdGhlIGdpdmVuIEk8ZmxhZz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNDEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPERFQl8+STxmbGFnPkI8X1NUUklQPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUQorIzogZHBrZy1idWlsZGZsYWdzLjE6MTQzCisjLCBuby13cmFwCittc2dpZCAiQjxERUJfPkk8ZmxhZz5CPF9NQUlOVF9TVFJJUD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTQ4Cittc2dpZCAiIgorIlRoaXMgdmFyaWFibGUgY2FuIGJlIHVzZWQgdG8gcHJvdmlkZSBhIHNwYWNlIHNlcGFyYXRlZCBsaXN0IG9mIG9wdGlvbnMgdGhhdCAiCisid2lsbCBiZSBzdHJpcHBlZCBmcm9tIHRoZSBzZXQgb2YgZmxhZ3MgcmV0dXJuZWQgZm9yIHRoZSBnaXZlbiBJPGZsYWc+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTQ4CisjLCBuby13cmFwCittc2dpZCAiQjxERUJfPkk8ZmxhZz5CPF9BUFBFTkQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRRCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNTAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPERFQl8+STxmbGFnPkI8X01BSU5UX0FQUEVORD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTU0Cittc2dpZCAiIgorIlRoaXMgdmFyaWFibGUgY2FuIGJlIHVzZWQgdG8gYXBwZW5kIHN1cHBsZW1lbnRhcnkgb3B0aW9ucyB0byB0aGUgdmFsdWUgIgorInJldHVybmVkIGZvciB0aGUgZ2l2ZW4gSTxmbGFnPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE1NAorIywgbm8td3JhcAorbXNnaWQgIkI8REVCXz5JPGZsYWc+QjxfUFJFUEVORD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFEKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE1NgorIywgbm8td3JhcAorbXNnaWQgIkI8REVCXz5JPGZsYWc+QjxfTUFJTlRfUFJFUEVORD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTYwCittc2dpZCAiIgorIlRoaXMgdmFyaWFibGUgY2FuIGJlIHVzZWQgdG8gcHJlcGVuZCBzdXBwbGVtZW50YXJ5IG9wdGlvbnMgdG8gdGhlIHZhbHVlICIKKyJyZXR1cm5lZCBmb3IgdGhlIGdpdmVuIEk8ZmxhZz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNjAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPERFQl9CVUlMRF9NQUlOVF9PUFRJT05TPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNjUKK21zZ2lkICIiCisiVGhpcyB2YXJpYWJsZSBjYW4gYmUgdXNlZCB0byBkaXNhYmxlL2VuYWJsZSB2YXJpb3VzIGhhcmRlbmluZyBidWlsZCBmbGFncyAiCisidGhyb3VnaCB0aGUgQjxoYXJkZW5pbmc+IG9wdGlvbi4gU2VlIHRoZSBCPEhBUkRFTklORz4gc2VjdGlvbiBmb3IgZGV0YWlscy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE2NgorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJXQVJOSU5HIgorbXNnaWQgIkhBUkRFTklORyIKK21zZ3N0ciAiVVdBR0EiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE3MQorbXNnaWQgIiIKKyJTZXZlcmFsIGNvbXBpbGUtdGltZSBvcHRpb25zIChkZXRhaWxlZCBiZWxvdykgY2FuIGJlIHVzZWQgdG8gaGVscCBoYXJkZW4gYSAiCisicmVzdWx0aW5nIGJpbmFyeSBhZ2FpbnN0IG1lbW9yeSBjb3JydXB0aW9uIGF0dGFja3MsIG9yIHByb3ZpZGUgYWRkaXRpb25hbCAiCisid2FybmluZyBtZXNzYWdlcyBkdXJpbmcgY29tcGlsYXRpb24uIEV4Y2VwdCBhcyBub3RlZCBiZWxvdywgdGhlc2UgYXJlICIKKyJlbmFibGVkIGJ5IGRlZmF1bHQgZm9yIGFyY2hpdGVjdHVyZXMgdGhhdCBzdXBwb3J0IHRoZW0uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE3NworbXNnaWQgIiIKKyJFYWNoIGhhcmRlbmluZyBmZWF0dXJlIGNhbiBiZSBlbmFibGVkIGFuZCBkaXNhYmxlZCBpbiB0aGUgIgorIkI8REVCX0JVSUxEX01BSU5UX09QVElPTlM+IGVudmlyb25tZW50IHZhcmlhYmxlJ3MgQjxoYXJkZW5pbmc+IHZhbHVlIHdpdGggIgorInRoZSBcIitcIiBhbmQgXCItXCIgbW9kaWZpZXIuIEZvciBleGFtcGxlLCB0byBlbmFibGUgdGhlIFwicGllXCIgZmVhdHVyZSBhbmQgIgorImRpc2FibGUgdGhlIFwiZm9ydGlmeVwiIGZlYXR1cmUgeW91IGNhbiBkbyB0aGlzIGluIEI8ZGViaWFuL3J1bGVzPjoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTc5CisjLCBuby13cmFwCittc2dpZCAiICBleHBvcnQgREVCX0JVSUxEX01BSU5UX09QVElPTlM9aGFyZGVuaW5nPStwaWUsLWZvcnRpZnlcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxODMKK21zZ2lkICIiCisiVGhlIHNwZWNpYWwgZmVhdHVyZSBCPGFsbD4gY2FuIGJlIHVzZWQgdG8gZW5hYmxlIG9yIGRpc2FibGUgYWxsIGhhcmRlbmluZyAiCisiZmVhdHVyZXMgYXQgdGhlIHNhbWUgdGltZS4gVGh1cyBkaXNhYmxpbmcgZXZlcnl0aGluZyBhbmQgZW5hYmxpbmcgb25seSAiCisiXCJmb3JtYXRcIiBhbmQgXCJmb3J0aWZ5XCIgY2FuIGJlIGFjaGlldmVkIHdpdGg6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE4NQorIywgbm8td3JhcAorbXNnaWQgIiAgZXhwb3J0IERFQl9CVUlMRF9NQUlOVF9PUFRJT05TPWhhcmRlbmluZz0tYWxsLCtmb3JtYXQsK2ZvcnRpZnlcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTg2CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8Rm9ybWF0PiIKK21zZ2lkICJCPGZvcm1hdD4iCittc2dzdHIgIkI8Rm9ybWF0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTk4Cittc2dpZCAiIgorIlRoaXMgc2V0dGluZyAoZW5hYmxlZCBieSBkZWZhdWx0KSBhZGRzIEI8LVdmb3JtYXQgLVdmb3JtYXQtc2VjdXJpdHkgLSIKKyJXZXJyb3I9Zm9ybWF0LXNlY3VyaXR5PiB0byBCPENGTEFHUz4gYW5kIEI8Q1hYRkxBR1M+LiBUaGlzIHdpbGwgd2FybiBhYm91dCAiCisiaW1wcm9wZXIgZm9ybWF0IHN0cmluZyB1c2VzLCBhbmQgd2lsbCBmYWlsIHdoZW4gZm9ybWF0IGZ1bmN0aW9ucyBhcmUgdXNlZCBpbiAiCisiYSB3YXkgdGhhdCB0aGF0IHJlcHJlc2VudCBwb3NzaWJsZSBzZWN1cml0eSBwcm9ibGVtcy4gQXQgcHJlc2VudCwgdGhpcyB3YXJucyAiCisiYWJvdXQgY2FsbHMgdG8gQjxwcmludGY+IGFuZCBCPHNjYW5mPiBmdW5jdGlvbnMgd2hlcmUgdGhlIGZvcm1hdCBzdHJpbmcgaXMgIgorIm5vdCBhIHN0cmluZyBsaXRlcmFsIGFuZCB0aGVyZSBhcmUgbm8gZm9ybWF0IGFyZ3VtZW50cywgYXMgaW4gQjxwcmludGYoZm9vKTsiCisiPiBpbnN0ZWFkIG9mIEI8cHJpbnRmKFwiJXNcIiwgZm9vKTs+IFRoaXMgbWF5IGJlIGEgc2VjdXJpdHkgaG9sZSBpZiB0aGUgIgorImZvcm1hdCBzdHJpbmcgY2FtZSBmcm9tIHVudHJ1c3RlZCBpbnB1dCBhbmQgY29udGFpbnMgXCIlblwiLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTk5CisjLCBuby13cmFwCittc2dpZCAiQjxmb3J0aWZ5PiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyMTAKK21zZ2lkICIiCisiVGhpcyBzZXR0aW5nIChlbmFibGVkIGJ5IGRlZmF1bHQpIGFkZHMgQjwtRF9GT1JUSUZZX1NPVVJDRT0yPiB0byBCPENGTEFHUz4gIgorImFuZCBCPENYWEZMQUdTPi4gRHVyaW5nIGNvZGUgZ2VuZXJhdGlvbiB0aGUgY29tcGlsZXIga25vd3MgYSBncmVhdCBkZWFsIG9mICIKKyJpbmZvcm1hdGlvbiBhYm91dCBidWZmZXIgc2l6ZXMgKHdoZXJlIHBvc3NpYmxlKSwgYW5kIGF0dGVtcHRzIHRvIHJlcGxhY2UgIgorImluc2VjdXJlIHVubGltaXRlZCBsZW5ndGggYnVmZmVyIGZ1bmN0aW9uIGNhbGxzIHdpdGggbGVuZ3RoLWxpbWl0ZWQgb25lcy4gIgorIlRoaXMgaXMgZXNwZWNpYWxseSB1c2VmdWwgZm9yIG9sZCwgY3J1ZnR5IGNvZGUuICBBZGRpdGlvbmFsbHksIGZvcm1hdCAiCisic3RyaW5ncyBpbiB3cml0YWJsZSBtZW1vcnkgdGhhdCBjb250YWluICclbicgYXJlIGJsb2NrZWQuIElmIGFuIGFwcGxpY2F0aW9uICIKKyJkZXBlbmRzIG9uIHN1Y2ggYSBmb3JtYXQgc3RyaW5nLCBpdCB3aWxsIG5lZWQgdG8gYmUgd29ya2VkIGFyb3VuZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjEzCittc2dpZCAiIgorIk5vdGUgdGhhdCBmb3IgdGhpcyBvcHRpb24gdG8gaGF2ZSBhbnkgZWZmZWN0LCB0aGUgc291cmNlIG11c3QgYWxzbyBiZSAiCisiY29tcGlsZWQgd2l0aCBCPC1PMT4gb3IgaGlnaGVyLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjEzCisjLCBuby13cmFwCittc2dpZCAiQjxzdGFja3Byb3RlY3Rvcj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjIyCittc2dpZCAiIgorIlRoaXMgc2V0dGluZyAoZW5hYmxlZCBieSBkZWZhdWx0KSBhZGRzIEI8LWZzdGFjay1wcm90ZWN0b3IgLS1wYXJhbT1zc3AtIgorImJ1ZmZlci1zaXplPTQ+IHRvIEI8Q0ZMQUdTPiBhbmQgQjxDWFhGTEFHUz4uIFRoaXMgYWRkcyBzYWZldHkgY2hlY2tzIGFnYWluc3QgIgorInN0YWNrIG92ZXJ3cml0ZXMuIFRoaXMgcmVuZGVycyBtYW55IHBvdGVudGlhbCBjb2RlIGluamVjdGlvbiBhdHRhY2tzIGludG8gIgorImFib3J0aW5nIHNpdHVhdGlvbnMuIEluIHRoZSBiZXN0IGNhc2UgdGhpcyB0dXJucyBjb2RlIGluamVjdGlvbiAiCisidnVsbmVyYWJpbGl0aWVzIGludG8gZGVuaWFsIG9mIHNlcnZpY2Ugb3IgaW50byBub24taXNzdWVzIChkZXBlbmRpbmcgb24gdGhlICIKKyJhcHBsaWNhdGlvbikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjIyNgorbXNnaWQgIiIKKyJUaGlzIGZlYXR1cmUgcmVxdWlyZXMgbGlua2luZyBhZ2FpbnN0IGdsaWJjIChvciBhbm90aGVyIHByb3ZpZGVyIG9mICIKKyJCPF9fc3RhY2tfY2hrX2ZhaWw+KSwgc28gbmVlZHMgdG8gYmUgZGlzYWJsZWQgd2hlbiBidWlsZGluZyB3aXRoIEI8LSIKKyJub3N0ZGxpYj4gb3IgQjwtZmZyZWVzdGFuZGluZz4gb3Igc2ltaWxhci4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjIyNworIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPHB1cmdlPiIKK21zZ2lkICJCPHJlbHJvPiIKK21zZ3N0ciAiQjxwdXJnZSAod3ljenlzemN6ZW5pZSk+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyMzUKK21zZ2lkICIiCisiVGhpcyBzZXR0aW5nIChlbmFibGVkIGJ5IGRlZmF1bHQpIGFkZHMgQjwtV2wsLXoscmVscm8+IHRvIEI8TERGTEFHUz4uICAiCisiRHVyaW5nIHByb2dyYW0gbG9hZCwgc2V2ZXJhbCBFTEYgbWVtb3J5IHNlY3Rpb25zIG5lZWQgdG8gYmUgd3JpdHRlbiB0byBieSAiCisidGhlIGxpbmtlci4gVGhpcyBmbGFncyB0aGUgbG9hZGVyIHRvIHR1cm4gdGhlc2Ugc2VjdGlvbnMgcmVhZC1vbmx5IGJlZm9yZSAiCisidHVybmluZyBvdmVyIGNvbnRyb2wgdG8gdGhlIHByb2dyYW0uIE1vc3Qgbm90YWJseSB0aGlzIHByZXZlbnRzIEdPVCAiCisib3ZlcndyaXRlIGF0dGFja3MuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyMzYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGJpbmRub3c+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjI0MworbXNnaWQgIiIKKyJUaGlzIHNldHRpbmcgKGRpc2FibGVkIGJ5IGRlZmF1bHQpIGFkZHMgQjwtV2wsLXosbm93PiB0byBCPExERkxBR1M+LiBEdXJpbmcgIgorInByb2dyYW0gbG9hZCwgYWxsIGR5bmFtaWMgc3ltYm9scyBhcmUgcmVzb2x2ZWQsIGFsbG93aW5nIGZvciB0aGUgZW50aXJlIFBMVCAiCisidG8gYmUgbWFya2VkIHJlYWQtb25seSAoZHVlIHRvIEI8cmVscm8+IGFib3ZlKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjI0NAorIywgbm8td3JhcAorbXNnaWQgIkI8cGllPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyNTYKK21zZ2lkICIiCisiVGhpcyBzZXR0aW5nIChkaXNhYmxlZCBieSBkZWZhdWx0KSBhZGRzIEI8LWZQSUU+IHRvIEI8Q0ZMQUdTPiBhbmQgIgorIkI8Q1hYRkxBR1M+LCBhbmQgQjwtZlBJRSAtcGllPiB0byBCPExERkxBR1M+LiBQb3NpdGlvbiBJbmRlcGVuZGVudCAiCisiRXhlY3V0YWJsZSBhcmUgbmVlZGVkIHRvIHRha2UgYWR2YW50YWdlIG9mIEFkZHJlc3MgU3BhY2UgTGF5b3V0ICIKKyJSYW5kb21pemF0aW9uLCBzdXBwb3J0ZWQgYnkgc29tZSBrZXJuZWwgdmVyc2lvbnMuIFdoaWxlIEFTTFIgY2FuIGFscmVhZHkgYmUgIgorImVuZm9yY2VkIGZvciBkYXRhIGFyZWFzIGluIHRoZSBzdGFjayBhbmQgaGVhcCAoYnJrIGFuZCBtbWFwKSwgdGhlIGNvZGUgYXJlYXMgIgorIm11c3QgYmUgY29tcGlsZWQgYXMgcG9zaXRpb24taW5kZXBlbmRlbnQuIFNoYXJlZCBsaWJyYXJpZXMgYWxyZWFkeSBkbyB0aGlzICgtIgorImZQSUMpLCBzbyB0aGV5IGdhaW4gQVNMUiBhdXRvbWF0aWNhbGx5LCBidXQgYmluYXJ5IC50ZXh0IHJlZ2lvbnMgbmVlZCB0byBiZSAiCisiYnVpbGQgUElFIHRvIGdhaW4gQVNMUi4gV2hlbiB0aGlzIGhhcHBlbnMsIFJPUCAoUmV0dXJuIE9yaWVudGVkIFByb2dyYW1taW5nKSAiCisiYXR0YWNrcyBhcmUgbXVjaCBoYXJkZXIgc2luY2UgdGhlcmUgYXJlIG5vIHN0YXRpYyBsb2NhdGlvbnMgdG8gYm91bmNlIG9mZiBvZiAiCisiZHVyaW5nIGEgbWVtb3J5IGNvcnJ1cHRpb24gYXR0YWNrLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyNTkKK21zZ2lkICIiCisiVGhpcyBpcyBub3QgY29tcGF0aWJsZSB3aXRoIEI8LWZQSUM+IHNvIGNhcmUgbXVzdCBiZSB0YWtlbiB3aGVuIGJ1aWxkaW5nICIKKyJzaGFyZWQgb2JqZWN0cy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjY1Cittc2dpZCAiIgorIkFkZGl0aW9uYWxseSwgc2luY2UgUElFIGlzIGltcGxlbWVudGVkIHZpYSBhIGdlbmVyYWwgcmVnaXN0ZXIsIHNvbWUgIgorImFyY2hpdGVjdHVyZXMgKG1vc3Qgbm90YWJseSBpMzg2KSBjYW4gc2VlIHBlcmZvcm1hbmNlIGxvc3NlcyBvZiB1cCB0byAxNSUgaW4gIgorInZlcnkgdGV4dC1zZWdtZW50LWhlYXZ5IGFwcGxpY2F0aW9uIHdvcmtsb2FkczsgbW9zdCB3b3JrbG9hZHMgc2VlIGxlc3MgdGhhbiAiCisiMSUuIEFyY2hpdGVjdHVyZXMgd2l0aCBtb3JlIGdlbmVyYWwgcmVnaXN0ZXJzIChlLmcuIGFtZDY0KSAgZG8gbm90IHNlZSBhcyAiCisiaGlnaCBhIHdvcnN0LWNhc2UgcGVuYWx0eS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjY4CisjLCBmdXp6eQorI3wgbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDA4LTIwMDkgUmFwaGFcXFs6ZV1sIEhlcnR6b2ciCittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMTAtMjAxMSBSYXBoYVxcWzplXWwgSGVydHpvZyIKK21zZ3N0ciAiQ29weXJpZ2h0IFxcKGNvIDIwMDgtMjAwOSBSYXBoYVxcWzplXWwgSGVydHpvZyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjcwCisjLCBmdXp6eQorI3wgbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDAxIEpvZXkgSGVzcyIKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAxMSBLZWVzIENvb2siCittc2dzdHIgIkNvcHlyaWdodCBcXChjbyAyMDAxIEpvZXkgSGVzcyIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MQorIywgbm8td3JhcAorbXNnaWQgImRwa2ctYnVpbGRwYWNrYWdlIgorbXNnc3RyICJkcGtnLWJ1aWxkcGFja2FnZSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo0Cittc2dpZCAiZHBrZy1idWlsZHBhY2thZ2UgLSBidWlsZCBiaW5hcnkgb3Igc291cmNlIHBhY2thZ2VzIGZyb20gc291cmNlcyIKK21zZ3N0ciAiZHBrZy1idWlsZHBhY2thZ2UgLSBidWR1amUgcGFraWV0eSDFunLDs2TFgm93ZSBsdWIgYmluYXJuZSB6ZSDFunLDs2RlxYIiCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6OAorIywgZnV6enkKKyN8IG1zZ2lkICJCPGRwa2ctYnVpbGRwYWNrYWdlPiBbSTxvcHRpb25zPl0iCittc2dpZCAiQjxkcGtnLWJ1aWxkcGFja2FnZT4gW0k8b3B0aW9uPi4uLl0iCittc2dzdHIgIkI8ZHBrZy1idWlsZHBhY2thZ2U+IFtJPG9wY2plPl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTMKK21zZ2lkICIiCisiQjxkcGtnLWJ1aWxkcGFja2FnZT4gaXMgYSBwcm9ncmFtIHRoYXQgYXV0b21hdGVzIHRoZSBwcm9jZXNzIG9mIGJ1aWxkaW5nIGEgIgorIkRlYmlhbiBwYWNrYWdlLiBJdCBjb25zaXN0cyBvZiB0aGUgZm9sbG93aW5nIHN0ZXBzOiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1idWlsZHBhY2thZ2U+IGplc3QgcHJvZ3JhbWVtIGF1dG9tYXR5enVqxIVjeW0gcHJvY2VzIGJ1ZG93YW5pYSBwYWtpZXR1ICIKKyJEZWJpYW5hLiBQcm9jZXMgdGVuIHNrxYJhZGEgc2nEmSB6IG5hc3TEmXB1asSFY3ljaCBrcm9rw7N3OiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPDEuPiIKK21zZ3N0ciAiQjwxLj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTcKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIkl0IHByZXBhcmVzIHRoZSBidWlsZCBlbnZpcm9ubWVudCBieSBzZXR0aW5nIHZhcmlvdXMgZW52aXJvbm1lbnQgIgorI3wgInZhcmlhYmxlcyAoc2VlIEI8RU5WSVJPTk1FTlQgVkFSSUFCTEVTPikuIgorbXNnaWQgIiIKKyJJdCBwcmVwYXJlcyB0aGUgYnVpbGQgZW52aXJvbm1lbnQgYnkgc2V0dGluZyB2YXJpb3VzIGVudmlyb25tZW50IHZhcmlhYmxlcyAiCisiKHNlZSBCPEVOVklST05NRU5UPikgYW5kIGNhbGxzIEI8ZHBrZy1zb3VyY2UgLS1iZWZvcmUtYnVpbGQ+ICh1bmxlc3MgQjwtVD4gIgorIm9yIEI8LS10YXJnZXQ+IGhhcyBiZWVuIHVzZWQpLiIKK21zZ3N0ciAiIgorIlByenlnb3Rvd3VqZSDFm3JvZG93aXNrbyBidWRvd2FuaWEgcG9wcnpleiB1c3Rhd2llbmllIHLDs8W8bnljaCB6bWllbm55Y2ggIgorIsWbcm9kb3dpc2thIChwYXRyeiBCPFpNSUVOTkUgxZpST0RPV0lTS0E+KS4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE3CisjLCBuby13cmFwCittc2dpZCAiQjwyLj4iCittc2dzdHIgIkI8Mi4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIwCittc2dpZCAiIgorIkl0IGNoZWNrcyB0aGF0IHRoZSBidWlsZC1kZXBlbmRlbmNpZXMgYW5kIGJ1aWxkLWNvbmZsaWN0cyBhcmUgc2F0aXNmaWVkICIKKyIodW5sZXNzIEI8LWQ+IGlzIHNwZWNpZmllZCkuIgorbXNnc3RyICIiCisiU3ByYXdkemEgY3p5IHphbGXFvG5vxZtjaSBpIGtvbmZsaWt0eSBjemFzdSBidWRvd2FuaWEgc8SFIHNwZcWCbmlvbmUgKG8gaWxlIG5pZSAiCisiamVzdCBwb2RhbmUgQjwtZD4pLiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPDMuPiIKK21zZ3N0ciAiQjwzLj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjUKK21zZ2lkICIiCisiSWYgYSBzcGVjaWZpYyB0YXJnZXQgaGFzIGJlZW4gc2VsZWN0ZWQgd2l0aCB0aGUgQjwtVD4gb3IgQjwtLXRhcmdldD4gb3B0aW9uLCAiCisiaXQgY2FsbHMgdGhhdCB0YXJnZXQgYW5kIHN0b3BzIGhlcmUuIE90aGVyd2lzZSBpdCBjYWxscyBCPGZha2Vyb290IGRlYmlhbi8iCisicnVsZXMgY2xlYW4+IHRvIGNsZWFuIHRoZSBidWlsZC10cmVlICh1bmxlc3MgQjwtbmM+IGlzIHNwZWNpZmllZCkuIgorbXNnc3RyICIiCisiSmXFm2xpIG9rcmXFm2xvbnkgY2VsIHpvc3RhxYIgd3NrYXphbnkgeiB1xbx5Y2llbSBvcGNqaSBCPC1UPiBsdWIgQjwtLXRhcmdldD4sICIKKyJ3eXdvxYJ1amUgdGVuIGNlbCBpIG5hIHR5bSBrb8WEY3p5LiBXIHByemVjaXdueW0gd3lwYWRrdSB3eXdvxYJ1amUgQjxmYWtlcm9vdCAiCisiZGViaWFuL3J1bGVzIGNsZWFuPiwgYWJ5IHd5Y3p5xZtjacSHIGRyemV3byBidWRvd2FuaWEgcGFraWV0dSAoY2h5YmEgxbxlIHXFvHlqZSAiCisic2nEmSBvcGNqaSBCPC1uYz4pLiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPDQuPiIKK21zZ3N0ciAiQjw0Lj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjkKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIkl0IGNhbGxzIEI8ZHBrZy1zb3VyY2U+IHRvIGdlbmVyYXRlIHRoZSBzb3VyY2UgcGFja2FnZSAodW5sZXNzIGEgYmluYXJ5LSIKKyN8ICJvbmx5IGJ1aWxkIGhhcyBiZWVuIHJlcXVlc3RlZCB3aXRoIEI8LWI+LCBCPC1CPiBvciBCPC1BPikuIgorbXNnaWQgIiIKKyJJdCBjYWxscyBCPGRwa2ctc291cmNlIC1iPiB0byBnZW5lcmF0ZSB0aGUgc291cmNlIHBhY2thZ2UgKHVubGVzcyBhIGJpbmFyeS0iCisib25seSBidWlsZCBoYXMgYmVlbiByZXF1ZXN0ZWQgd2l0aCBCPC1iPiwgQjwtQj4gb3IgQjwtQT4pLiIKK21zZ3N0ciAiIgorIld5d2/FgnVqZSBCPGRwa2ctc291cmNlPiBhYnkgd3lnZW5lcm93YcSHIHBha2lldCDFunLDs2TFgm93eSAoY2h5YmEgxbxlIMW8xIVkYW5vICIKKyJ0eWxrbyB6YnVkb3dhbmlhIHBha2lldHUgYmluYXJuZWdvLCBwb2RhasSFYyBvcGNqxJkgQjwtYj4sIEI8LUI+IGx1YiBCPC1BPikuIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyOQorIywgbm8td3JhcAorbXNnaWQgIkI8NS4+IgorbXNnc3RyICJCPDUuPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTozNgorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiSXQgY2FsbHMgQjxkZWJpYW4vcnVsZXM+IEI8YnVpbGQ+IGZvbGxvd2VkIGJ5IEI8ZmFrZXJvb3QgZGViaWFuL3J1bGVzPiAiCisjfCAiSTxiaW5hcnktdGFyZ2V0PiAodW5sZXNzIGEgc291cmNlLW9ubHkgYnVpbGQgaGFzIGJlZW4gcmVxdWVzdGVkIHdpdGggQjwtIgorI3wgIlM+KS4gTm90ZSB0aGF0IEk8YmluYXJ5LXRhcmdldD4gaXMgZWl0aGVyIEI8YmluYXJ5PiAoZGVmYXVsdCBjYXNlLCBvciBpZiAiCisjfCAiQjwtYj4gaXMgc3BlY2lmaWVkKSAgb3IgQjxiaW5hcnktYXJjaD4gKGlmIEI8LUI+IGlzIHNwZWNpZmllZCkgb3IgIgorI3wgIkI8YmluYXJ5LWluZGVwPiAoaWYgQjwtQT4gaXMgc3BlY2lmaWVkKS4iCittc2dpZCAiIgorIkl0IGNhbGxzIEI8ZGViaWFuL3J1bGVzPiBCPGJ1aWxkPiBmb2xsb3dlZCBieSBCPGZha2Vyb290IGRlYmlhbi9ydWxlcz4gIgorIkk8YmluYXJ5LXRhcmdldD4gKHVubGVzcyBhIHNvdXJjZS1vbmx5IGJ1aWxkIGhhcyBiZWVuIHJlcXVlc3RlZCB3aXRoIEI8LVM+KS4gIgorIk5vdGUgdGhhdCBJPGJpbmFyeS10YXJnZXQ+IGlzIGVpdGhlciBCPGJpbmFyeT4gKGRlZmF1bHQgY2FzZSwgb3IgaWYgQjwtYj4gaXMgIgorInNwZWNpZmllZCkgIG9yIEI8YmluYXJ5LWFyY2g+IChpZiBCPC1CPiBpcyBzcGVjaWZpZWQpIG9yIEI8YmluYXJ5LWluZGVwPiAoaWYgIgorIkI8LUE+IGlzIHNwZWNpZmllZCkuIgorbXNnc3RyICIiCisiV3l3b8WCdWplIEI8ZGViaWFuL3J1bGVzPiBCPGJ1aWxkPiwgYSBuYXN0xJlwbmllIEI8ZmFrZXJvb3QgZGViaWFuL3J1bGVzPiAiCisiSTxiaW5hcnktdGFyZ2V0PiAoY2h5YmEgxbxlIMW8xIVkYW5vIHR5bGtvIHpidWRvd2FuaWEgcGFraWV0dSDFunLDs2TFgm93ZWdvLCAiCisicG9kYWrEhWMgb3BjasSZIEI8LVM+KS4gUHJvc3rEmSB6YXV3YcW8ecSHLCDFvGUgSTxiaW5hcnktdGFyZ2V0PiBtYSB3YXJ0b8WbxIcgIgorIkI8YmluYXJ5PiAoZG9tecWbbG5pZSwgbHViIGdkeSBwb2Rhbm8gQjwtYj4pLCBCPGJpbmFyeS1hcmNoPiAoamXFm2xpIHBvZGFubyBCPC0iCisiQj4pIGx1YiBCPGJpbmFyeS1pbmRlcD4gKGplxZtsaSBwb2Rhbm8gQjwtQT4pLiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MzYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPDYuPiIKK21zZ3N0ciAiQjw2Lj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MzkKK21zZ2lkICIiCisiSXQgY2FsbHMgQjxncGc+IHRvIHNpZ24gdGhlIEI8LmRzYz4gZmlsZSAoaWYgYW55LCB1bmxlc3MgQjwtdXM+IGlzICIKKyJzcGVjaWZpZWQpLiIKK21zZ3N0ciAiIgorIld5d2/FgnVqZSBCPGdwZz4gYWJ5IHBvZHBpc2HEhyBwbGlrIEI8LmRzYz4gKGplxZtsaSBqZXN0LCBjaHliYSDFvGUgcG9kYW5vIG9wY2rEmSAiCisiQjwtdXM+KS4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjM5CisjLCBuby13cmFwCittc2dpZCAiQjw3Lj4iCittc2dzdHIgIkI8Ny4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjQzCittc2dpZCAiIgorIkl0IGNhbGxzIEI8ZHBrZy1nZW5jaGFuZ2VzPiB0byBnZW5lcmF0ZSBhIEI8LmNoYW5nZXM+IGZpbGUuICBNYW55IEI8ZHBrZy0iCisiYnVpbGRwYWNrYWdlPiBvcHRpb25zIGFyZSBmb3J3YXJkZWQgdG8gQjxkcGtnLWdlbmNoYW5nZXM+LiIKK21zZ3N0ciAiIgorIld5d2/FgnVqZSBCPGRwa2ctZ2VuY2hhbmdlcz4gYWJ5IHd5Z2VuZXJvd2HEhyBwbGlrIEI8LmNoYW5nZXM+LiBEbyBCPGRwa2ctIgorImdlbmNoYW5nZXM+IHByemVrYXp5d2FueWNoIGplc3Qgd2llbGUgb3BjamkgQjxkcGtnLWJ1aWxkcGFja2FnZT4uIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo0MworIywgbm8td3JhcAorbXNnaWQgIkI8OC4+IgorbXNnc3RyICJCPDguPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo0NgorbXNnaWQgIiIKKyJJdCBjYWxscyBCPGdwZz4gdG8gc2lnbiB0aGUgQjwuY2hhbmdlcz4gZmlsZSAodW5sZXNzIEI8LXVjPiBpcyBzcGVjaWZpZWQpLiIKK21zZ3N0ciAiIgorIld5d2/FgnVqZSBCPGdwZz4gYWJ5IHBvZHBpc2HEhyBwbGlrIEI8LmNoYW5nZXM+IChjaHliYSDFvGUgcG9kYW5vIG9wY2rEmSBCPC11Yz4pLiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NDYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPDkuPiIKK21zZ3N0ciAiQjw5Lj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NDkKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIklmIEI8LXRjPiBpcyBzcGVjaWZpZWQsIGl0IHdpbGwgY2FsbCBCPGZha2Vyb290IGRlYmlhbi9ydWxlcyBjbGVhbj4gYWdhaW4uIgorbXNnaWQgIiIKKyJJZiBCPC10Yz4gaXMgc3BlY2lmaWVkLCBpdCB3aWxsIGNhbGwgQjxmYWtlcm9vdCBkZWJpYW4vcnVsZXMgY2xlYW4+IGFnYWluLiAiCisiRmluYWxseSBpdCBjYWxscyBCPGRwa2ctc291cmNlIC0tYWZ0ZXItYnVpbGQ+LiIKK21zZ3N0ciAiIgorIkplxZtsaSBwb2RhbmEgamVzdCBvcGNqYSBCPC10Yz4sIHd5d2/FgnVqZSBwb25vd25pZSBCPGZha2Vyb290IGRlYmlhbi9ydWxlcyAiCisiY2xlYW4+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NTEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1iPiIKK21zZ3N0ciAiQjwtYj4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NTUKK21zZ2lkICIiCisiU3BlY2lmaWVzIGEgYmluYXJ5LW9ubHkgYnVpbGQsIG5vIHNvdXJjZSBmaWxlcyBhcmUgdG8gYmUgYnVpbHQgYW5kL29yICIKKyJkaXN0cmlidXRlZC4gUGFzc2VkIHRvIEI8ZHBrZy1nZW5jaGFuZ2VzPi4iCittc2dzdHIgIiIKKyJPa3JlxZtsYSBidWRvd2FuaWUgdHlsa28gcGFraWV0w7N3IGJpbmFybnljaCwgxbxhZG5lIHBsaWtpIMW6csOzZMWCb3dlIG5pZSBixJlkxIUgIgorImJ1ZG93YW5lIGFuaSBkeXN0cnlidW93YW5lLiBQcnpla2F6eXdhbmUgZG8gQjxkcGtnLWdlbmNoYW5nZXM+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NTUgZHBrZy1jaGVja2J1aWxkZGVwcy4xOjIzCisjLCBuby13cmFwCittc2dpZCAiQjwtQj4iCittc2dzdHIgIkI8LUI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjU5Cittc2dpZCAiIgorIlNwZWNpZmllcyBhIGJpbmFyeS1vbmx5IGJ1aWxkLCBsaW1pdGVkIHRvIGFyY2hpdGVjdHVyZSBkZXBlbmRlbnQgcGFja2FnZXMuICAiCisiUGFzc2VkIHRvIEI8ZHBrZy1nZW5jaGFuZ2VzPi4iCittc2dzdHIgIiIKKyJPa3JlxZtsYSBidWRvd2FuaWUgdHlsa28gcGFraWV0w7N3IGJpbmFybnljaCwgb2dyYW5pY3pvbmUgZG8gcGFraWV0w7N3ICIKKyJ6YWxlxbxueWNoIG9kIGFyY2hpdGVrdHVyeS4gUHJ6ZWthenl3YW5lIGRvIEI8ZHBrZy1nZW5jaGFuZ2VzPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjU5CisjLCBuby13cmFwCittc2dpZCAiQjwtQT4iCittc2dzdHIgIkI8LUE+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjYzCittc2dpZCAiIgorIlNwZWNpZmllcyBhIGJpbmFyeS1vbmx5IGJ1aWxkLCBsaW1pdGVkIHRvIGFyY2hpdGVjdHVyZSBpbmRlcGVuZGVudCBwYWNrYWdlcy4gIgorIlBhc3NlZCB0byBCPGRwa2ctZ2VuY2hhbmdlcz4uIgorbXNnc3RyICIiCisiT2tyZcWbbGEgYnVkb3dhbmllIHR5bGtvIHBha2lldMOzdyBiaW5hcm55Y2gsIG9ncmFuaWN6b25lIGRvIHBha2lldMOzdyAiCisibmllemFsZcW8bnljaCBvZCBhcmNoaXRla3R1cnkuIFByemVrYXp5d2FuZSBkbyBCPGRwa2ctZ2VuY2hhbmdlcz4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo2MyBkcGtnLWdlbmNoYW5nZXMuMToyNworIywgbm8td3JhcAorbXNnaWQgIkI8LVM+IgorbXNnc3RyICJCPC1TPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo2NworbXNnaWQgIiIKKyJTcGVjaWZpZXMgYSBzb3VyY2Utb25seSBidWlsZCwgbm8gYmluYXJ5IHBhY2thZ2VzIG5lZWQgdG8gYmUgbWFkZS4gIFBhc3NlZCAiCisidG8gQjxkcGtnLWdlbmNoYW5nZXM+LiIKK21zZ3N0ciAiIgorIk9rcmXFm2xhIGJ1ZG93YW5pZSB0eWxrbyBwYWtpZXTDs3cgxbpyw7NkxYJvd3ljaCwgYmV6IGJ1ZG93YW5pYSBwYWtpZXTDs3cgIgorImJpbmFybnljaC4gUHJ6ZWthenl3YW5lIGRvIEI8ZHBrZy1nZW5jaGFuZ2VzPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjY3CisjLCBuby13cmFwCittc2dpZCAiQjwtRj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo3MQorbXNnaWQgIiIKKyJTcGVjaWZpZXMgYSBub3JtYWwgZnVsbCBidWlsZCwgYmluYXJ5IGFuZCBzb3VyY2UgcGFja2FnZXMgd2lsbCBiZSBidWlsdC4gICIKKyJUaGlzIGlzIHRoZSBzYW1lIGFzIHRoZSBkZWZhdWx0IGNhc2Ugd2hlbiBubyBidWlsZCBvcHRpb24gaXMgc3BlY2lmaWVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjczCittc2dpZCAiQjwtLXRhcmdldD0+STx0YXJnZXQ+IgorbXNnc3RyICJCPC0tdGFyZ2V0PT5JPGNlbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NzUKK21zZ2lkICJCPC0tdGFyZ2V0ID5JPHRhcmdldD4iCittc2dzdHIgIkI8LS10YXJnZXQgPkk8Y2VsPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo3NworbXNnaWQgIkI8LVQ+STx0YXJnZXQ+IgorbXNnc3RyICJCPC1UPkk8Y2VsPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo4MworbXNnaWQgIiIKKyJDYWxscyBCPGRlYmlhbi9ydWxlcz4gSTx0YXJnZXQ+IGFmdGVyIGhhdmluZyBzZXR1cCB0aGUgYnVpbGQgZW52aXJvbm1lbnQgYW5kICIKKyJzdG9wcyB0aGUgcGFja2FnZSBidWlsZCBwcm9jZXNzIGhlcmUuIElmIEI8LS1hcy1yb290PiBpcyBhbHNvIGdpdmVuLCB0aGVuICIKKyJ0aGUgY29tbWFuZCBpcyBleGVjdXRlZCBhcyByb290IChzZWUgQjwtcj4pLiBOb3RlIHRoYXQgb2ZmaWNpYWwgdGFyZ2V0cyB0aGF0ICIKKyJhcmUgcmVxdWlyZWQgdG8gYmUgcnVuIGFzIHJvb3QgYnkgdGhlIERlYmlhbiBwb2xpY3kgZG8gbm90IG5lZWQgdGhpcyBvcHRpb24uIgorbXNnc3RyICIiCisiV3l3b8WCdWplIEI8ZGViaWFuL3J1bGVzPiBJPGNlbD4gcG8gcHJ6eWdvdG93YW5pdSDFm3JvZG93aXNrYSBidWRvd2FuaWEgaSBuYSAiCisidHltIGtvxYRjenkgcHJvY2VzIGJ1ZG93YW5pYSBwYWtpZXR1LiBKZcWbbGkgcG9kYW5hIHpvc3RhxYJhIHLDs3duaWXFvCBvcGNqYSBCPC0tIgorImFzLXJvb3Q+LCB3dGVkeSBwb2xlY2VuaWUgdG8gamVzdCB3eWtvbnl3YW5lIHogcHJhd2FtaSBhZG1pbmlzdHJhdG9yYS4gIgorIlByb3N6xJkgemF1d2HFvHnEhywgxbxlIGNlbGUgb2ZpY2phbG5pZSBva3JlxZtsb25lIHcgUG9saXR5Y2UgRGViaWFuYSBqYWtvICIKKyJ3eW1hZ2FqxIVjZSB1cnVjaGFtaWFuaWEgeiBwcmF3YW1pIGFkbWluaXN0cmF0b3JhIG5pZSB3eW1hZ2FqxIUgdGVqIG9wY2ppLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6ODQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tYXMtcm9vdD4iCittc2dzdHIgIkI8LS1hcy1yb290PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo4OAorbXNnaWQgIiIKKyJPbmx5IG1lYW5pbmdmdWwgdG9nZXRoZXIgd2l0aCBCPC0tdGFyZ2V0Pi4gUmVxdWlyZXMgdGhhdCB0aGUgdGFyZ2V0IGJlIHJ1biAiCisid2l0aCByb290IHJpZ2h0cy4iCittc2dzdHIgIiIKKyJabmFjesSFY2EgamVkeW5pZSB3IHBvxYLEhWN6ZW5pdSB6IG9wY2rEhSBCPC0tdGFyZ2V0Pi4gV3ltdXN6YSB1cnVjaG9taWVuaWUgY2VsdSAiCisieiBwcmF3YW1pIGFkbWluaXN0cmF0b3JhLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6OTAgZHBrZy1nZW5jaGFuZ2VzLjE6MzYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1zaT4iCittc2dzdHIgIkI8LXNpPiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6OTIgZHBrZy1nZW5jaGFuZ2VzLjE6NDIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1zYT4iCittc2dzdHIgIkI8LXNhPiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6OTQgZHBrZy1nZW5jaGFuZ2VzLjE6NDUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1zZD4iCittc2dzdHIgIkI8LXNkPiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6OTYgZHBrZy1nZW5jaGFuZ2VzLjE6NDkgZHBrZy1nZW5jb250cm9sLjE6MzgKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM3NworIywgbm8td3JhcAorbXNnaWQgIkI8LXY+STx2ZXJzaW9uPiIKK21zZ3N0ciAiQjwtdj5JPHdlcnNqYT4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjk4IGRwa2ctZ2VuY2hhbmdlcy4xOjU0CisjLCBuby13cmFwCittc2dpZCAiQjwtQz5JPGNoYW5nZXNkZXNjcmlwdGlvbj4iCittc2dzdHIgIkI8LUM+STxvcGlzX3ptaWFuPiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTAwIGRwa2ctZ2VuY2hhbmdlcy4xOjYwCisjLCBuby13cmFwCittc2dpZCAiQjwtbT5JPG1haW50YWluZXJhZGRyZXNzPiIKK21zZ3N0ciAiQjwtbT5JPGFkcmVzIG9waWVrdW5hPiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTAyIGRwa2ctZ2VuY2hhbmdlcy4xOjY2CisjLCBuby13cmFwCittc2dpZCAiQjwtZT5JPG1haW50YWluZXJhZGRyZXNzPiIKK21zZ3N0ciAiQjwtZT5JPGFkcmVzX29waWVrdW5hPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxMDQKK21zZ2lkICJQYXNzZWQgdW5jaGFuZ2VkIHRvIEI8ZHBrZy1nZW5jaGFuZ2VzPi4gU2VlIGl0cyBtYW51YWwgcGFnZS4iCittc2dzdHIgIiIKKyJQcnpla2F6eXdhbmEgYmV6IHptaWFuIGRvIEI8ZHBrZy1nZW5jaGFuZ2VzPi4gV2nEmWNlaiBpbmZvcm1hY2ppIG5hIHN0cm9uaWUgIgorInBvZHLEmWN6bmlrYSB0ZWdvIHByb2dyYW11LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTA1CisjLCBuby13cmFwCittc2dpZCAiQjwtYT5JPGFyY2hpdGVjdHVyZT4iCittc2dzdHIgIkI8LWE+STxhcmNoaXRla3R1cmE+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjExMAorbXNnaWQgIiIKKyJTcGVjaWZ5IHRoZSBEZWJpYW4gYXJjaGl0ZWN0dXJlIHdlIGJ1aWxkIGZvci4gVGhlIGFyY2hpdGVjdHVyZSBvZiB0aGUgIgorIm1hY2hpbmUgd2UgYnVpbGQgb24gaXMgZGV0ZXJtaW5lZCBhdXRvbWF0aWNhbGx5LCBhbmQgaXMgYWxzbyB0aGUgZGVmYXVsdCBmb3IgIgorInRoZSBob3N0IG1hY2hpbmUuIgorbXNnc3RyICIiCisiT2tyZcWbbGEgYXJjaGl0ZWt0dXLEmSBEZWJpYW5hIGRsYSBrdMOzcmVqIGplc3QgYnVkb3dhbnkgcGFraWV0LiBBcmNoaXRla3R1cmEgIgorIm1hc3p5bnksIG5hIGt0w7NyZWogamVzdCBidWRvd2FueSBwYWtpZXQsIGplc3Qgb2tyZcWbbGFuYSBhdXRvbWF0eWN6bmllIGkgIgorInN0YW5vd2kgcsOzd25pZcW8IGRvbXnFm2xuxIUgYXJjaGl0ZWt0dXLEmSBkb2NlbG93xIUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjExNQorbXNnaWQgIiIKKyJTcGVjaWZ5IHRoZSBHTlUgc3lzdGVtIHR5cGUgd2UgYnVpbGQgZm9yLiBJdCBjYW4gYmUgdXNlZCBpbiBwbGFjZSBvZiAtYSBvciAiCisiYXMgYSBjb21wbGVtZW50IHRvIG92ZXJyaWRlIHRoZSBkZWZhdWx0IEdOVSBzeXN0ZW0gdHlwZSBvZiB0aGUgdGFyZ2V0IERlYmlhbiAiCisiYXJjaGl0ZWN0dXJlLiIKK21zZ3N0ciAiIgorIk9rcmXFm2xhIHR5cCBzeXN0ZW11IEdOVSwgZGxhIGt0w7NyZWdvIGJ1ZHVqZW15LiBNb8W8ZSBiecSHIHXFvHl0ZSB6YW1pYXN0IC1hIGx1YiAiCisiamFrbyB1enVwZcWCbmllbmllIGRvIG5hZHBpc2FuaWEgZG9tecWbbG5lZ28gdHlwdSBzeXN0ZW11IEdOVSBkb2NlbG93ZWogIgorImFyY2hpdGVrdHVyeSBEZWJpYW5hLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTE1CisjLCBuby13cmFwCittc2dpZCAiQjwtaj5JPGpvYnM+IgorbXNnc3RyICJCPC1qPkk8emFkYW5pYT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTI2Cittc2dpZCAiIgorIk51bWJlciBvZiBqb2JzIGFsbG93ZWQgdG8gYmUgcnVuIHNpbXVsdGFuZW91c2x5LCBlcXVpdmFsZW50IHRvIHRoZSBCPG1ha2U+IgorIigxKSAgb3B0aW9uIG9mIHRoZSBzYW1lIG5hbWUuIFdpbGwgYWRkIGl0c2VsZiB0byB0aGUgTUFLRUZMQUdTIGVudmlyb25tZW50ICIKKyJ2YXJpYWJsZSwgd2hpY2ggc2hvdWxkIGNhdXNlIGFsbCBzdWJzZXF1ZW50IG1ha2UgaW52b2NhdGlvbnMgdG8gaW5oZXJpdCB0aGUgIgorIm9wdGlvbi4gQWxzbyBhZGRzIEI8cGFyYWxsZWw9Pkk8am9icz4gdG8gdGhlIERFQl9CVUlMRF9PUFRJT05TIGVudmlyb25tZW50ICIKKyJ2YXJpYWJsZSB3aGljaCBhbGxvd3MgZGViaWFuL3J1bGVzIGZpbGVzIHRvIHVzZSB0aGlzIGluZm9ybWF0aW9uIGZvciB0aGVpciAiCisib3duIHB1cnBvc2VzLiAgVGhlIEI8cGFyYWxsZWw9Pkk8am9icz4gaW4gREVCX0JVSUxEX09QVElPTlMgZW52aXJvbm1lbnQgIgorInZhcmlhYmxlIHdpbGwgb3ZlcnJpZGUgdGhlIEI8LWo+IHZhbHVlIGlmIHRoaXMgb3B0aW9uIGlzIGdpdmVuLiIKK21zZ3N0ciAiIgorIkxpY3piYSB6YWRhxYQsIGt0w7NyZSBtb2fEhSB6b3N0YcSHIHLDs3dub2N6ZcWbbmllIHVydWNob21pb25lLCBvZHBvd2llZG5payBvcGNqaSAiCisiQjxtYWtlPigxKSBvIHRlaiBzYW1laiBuYXp3aWUuIERvZGFqZSBzacSZIGRvIHptaWVubmVqIMWbcm9kb3dpc2tvd2VqICIKKyJNQUtFRkxBR1MsIGNvIHBvd2lubm8gc3Bvd29kb3dhxIcsIMW8ZSB3c3p5c3RraWUga29sZWpuZSB3eXdvxYJhbmlhIHByb2dyYW11ICIKKyJtYWtlIG9kemllZHppY3rEhSB0xJkgb3BjasSZLiBUYWvFvGUgZG9kYWplIEI8cGFyYWxsZWw9Pkk8emFkYW5pYT4gZG8gem1pZW5uZWogIgorIsWbcm9kb3dpc2tvd2VqIERFQl9CVUlMRF9PUFRJT05TLCBjbyBwb3p3YWxhIHBsaWtvbSBkZWJpYW4vcnVsZXMgbmEgIgorImtvcnp5c3RhbmllIHogdGVqIGluZm9ybWFjamkgZGxhIGljaCB3xYJhc255Y2ggY2Vsw7N3LiBXYXJ0b8WbxIcgIgorIkI8cGFyYWxsZWw9Pkk8emFkYW5pYT4gem1pZW5uZWogxZtyb2Rvd2lza2EgREVCX0JVSUxEX09QVElPTlMgbmFkcGlzdWplICIKKyJ3YXJ0b8WbxIcgcHJ6ZWthemFuxIUgdyBvcGNqaSBCPC1qPiwgamXFm2xpIHpvc3RhxYJhIG9uYSBwb2RhbmEuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxMjYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1EPiIKK21zZ3N0ciAiQjwtRD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTMwCittc2dpZCAiIgorIkNoZWNrIGJ1aWxkIGRlcGVuZGVuY2llcyBhbmQgY29uZmxpY3RzOyBhYm9ydCBpZiB1bnNhdGlzZmllZC4gVGhpcyBpcyB0aGUgIgorImRlZmF1bHQgYmVoYXZpb3IuIgorbXNnc3RyICIiCisiU3ByYXdkemEgemFsZcW8bm/Fm2NpIGkga29uZmxpa3R5IGN6YXN1IGJ1ZG93YW5pYSwgcHJ6ZXJ5d2EgZHppYcWCYW5pZSB6IGLFgsSZZGVtICIKKyJqZcW8ZWxpIG5pZSBixJlkxIUgc3BlxYJuaW9uZS4gSmVzdCB0byB6YWNob3dhbmllIGRvbXnFm2xuZS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEzMCBkcGtnLWdlbnN5bWJvbHMuMTo0MzIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1kPiIKK21zZ3N0ciAiQjwtZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTMzCittc2dpZCAiRG8gbm90IGNoZWNrIGJ1aWxkIGRlcGVuZGVuY2llcyBhbmQgY29uZmxpY3RzLiIKK21zZ3N0ciAiTmllIHNwcmF3ZHphIHphbGXFvG5vxZtjaSBjemFzdSBidWRvd2FuaWEgYW5pIGtvbmZsaWt0w7N3LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTMzCisjLCBuby13cmFwCittc2dpZCAiQjwtbmM+IgorbXNnc3RyICJCPC1uYz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTM3Cittc2dpZCAiIgorIkRvIG5vdCBjbGVhbiB0aGUgc291cmNlIHRyZWUgKGltcGxpZXMgQjwtYj4gaWYgbm90aGluZyBlbHNlIGhhcyBiZWVuICIKKyJzZWxlY3RlZCBhbW9uZyBCPC1CPiwgQjwtQT4gb3IgQjwtUz4pLiIKK21zZ3N0ciAiIgorIlBvbWlqYSBjenlzemN6ZW5pZSBkcnpld2Egxbpyw7NkZcWCIHBha2lldHUgKGltcGxpa3VqZSBCPC1iPiwgamXFm2xpIG5pYyBpbm5lZ28gIgorIm5pZSB6b3N0YcWCbyB3eWJyYW5lIHNwb8WbcsOzZCBCPC1CPiwgQjwtQT4gb3JheiBCPC1TPikuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxMzcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC10Yz4iCittc2dzdHIgIkI8LXRjPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxNDMKK21zZ2lkICIiCisiQ2xlYW4gdGhlIHNvdXJjZSB0cmVlICh1c2luZyBJPGdhaW4tcm9vdC1jb21tYW5kPiBCPGRlYmlhbi9ydWxlcyBjbGVhbj4pICAiCisiYWZ0ZXIgdGhlIHBhY2thZ2UgaGFzIGJlZW4gYnVpbHQuIgorbXNnc3RyICIiCisiUG8gemJ1ZG93YW5pdSBwYWtpZXR1IGN6ecWbY2kga2F0YWxvZyB6ZSDFunLDs2TFgmFtaSAodcW8eXdhasSFYyBJPGdhaW4tcm9vdC0iCisiY29tbWFuZD4gQjxkZWJpYW4vcnVsZXMgY2xlYW4+KS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE0MworIywgbm8td3JhcAorbXNnaWQgIkI8LXI+STxnYWluLXJvb3QtY29tbWFuZD4iCittc2dzdHIgIkI8LXI+STxwb2xlY2VuaWUtdXp5c2tpd2FuaWEtcHJhdy1hZG1pbmlzdHJhdG9yYT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTY3Cittc2dpZCAiIgorIldoZW4gQjxkcGtnLWJ1aWxkcGFja2FnZT4gbmVlZHMgdG8gZXhlY3V0ZSBwYXJ0IG9mIHRoZSBidWlsZCBwcm9jZXNzIGFzICIKKyJyb290LCBpdCBwcmVmaXhlcyB0aGUgY29tbWFuZCBpdCBleGVjdXRlcyB3aXRoIEk8Z2Fpbi1yb290LWNvbW1hbmQ+IGlmIG9uZSAiCisiaGFzIGJlZW4gc3BlY2lmaWVkLiBPdGhlcndpc2UsIGlmIG5vbmUgaGFzIGJlZW4gc3BlY2lmaWVkLCBCPGZha2Vyb290PiB3aWxsICIKKyJiZSB1c2VkIGJ5IGRlZmF1bHQsIGlmIHRoZSBjb21tYW5kIGlzIHByZXNlbnQuICBJPGdhaW4tcm9vdC1jb21tYW5kPiBzaG91bGQgIgorInN0YXJ0IHdpdGggdGhlIG5hbWUgb2YgYSBwcm9ncmFtIG9uIHRoZSBCPFBBVEg+IGFuZCB3aWxsIGdldCBhcyBhcmd1bWVudHMgIgorInRoZSBuYW1lIG9mIHRoZSByZWFsIGNvbW1hbmQgdG8gcnVuIGFuZCB0aGUgYXJndW1lbnRzIGl0IHNob3VsZCB0YWtlLiAgIgorIkk8Z2Fpbi1yb290LWNvbW1hbmQ+IGNhbiBpbmNsdWRlIHBhcmFtZXRlcnMgKHRoZXkgbXVzdCBiZSBzcGFjZS1zZXBhcmF0ZWQpICIKKyJidXQgbm8gc2hlbGwgbWV0YWNoYXJhY3RlcnMuICBJPGdhaW4tcm9vdC1jb21tYW5kPiBtaWdodCB0eXBpY2FsbHkgYmUgIgorIkI8ZmFrZXJvb3Q+LCBCPHN1ZG8+LCBCPHN1cGVyPiBvciBCPHJlYWxseT4uICBCPHN1PiBpcyBub3Qgc3VpdGFibGUsIHNpbmNlICIKKyJpdCBjYW4gb25seSBpbnZva2UgdGhlIHVzZXIncyBzaGVsbCB3aXRoIEI8LWM+IGluc3RlYWQgb2YgcGFzc2luZyBhcmd1bWVudHMgIgorImluZGl2aWR1YWxseSB0byB0aGUgY29tbWFuZCB0byBiZSBydW4uIgorbXNnc3RyICIiCisiS2llZHkgQjxkcGtnLWJ1aWxkcGFja2FnZT4gcG90cnplYnVqZSB3eWtvbmHEhyBjesSZxZvEhyBwcm9jZXN1IGJ1ZG93YW5pYSBqYWtvICIKKyJhZG1pbmlzdHJhdG9yLCBwb3ByemVkemEgd3lrb255d2FuZSBwb2xlY2VuaWEgSTxwb2xlY2VuaWVtLXV6eXNraXdhbmlhLXByYXctIgorImFkbWluaXN0cmF0b3JhPiwgamXFm2xpIHRha293ZSB6b3N0YcWCbyBwb2RhbmUuIEplxZtsaSBuYXRvbWlhc3QgbmllIHpvc3RhxYJvICIKKyJwb2RhbmUsIHpvc3RhbmllIGRvbXnFm2xuaWUgdcW8eXRlIHBvbGVjZW5pZSBCPGZha2Vyb290PiwgbyBpbGUgamVzdCBkb3N0xJlwbmUuICIKKyJJPHBvbGVjZW5pZS11enlza2l3YW5pYS1wcmF3LWFkbWluaXN0cmF0b3JhPiBwb3dpbm5vIHphY3p5bmHEhyBzacSZIG5henfEhSAiCisicHJvZ3JhbXUgZG9zdMSZcG5lZ28gcHJ6ZXogem1pZW5uxIUgc3lzdGVtb3fEhSBCPFBBVEg+LCBrdMOzcmVtdSBixJlkxIUgIgorInByemVrYXp5d2FuZSBhcmd1bWVudHkgdyBwb3N0YWNpIHfFgmHFm2Npd2VnbyBwcm9ncmFtdSBkbyB3eWtvbmFuaWEgb3JheiBqZWdvICIKKyJwYXJhbWV0csOzdy4gSTxwb2xlY2VuaWUtdXp5c2tpd2FuaWEtcHJhdy1hZG1pbmlzdHJhdG9yYT4gbW/FvGUgc2FtbyB6YXdpZXJhxIcgIgorInBhcmFtZXRyeSAobXVzesSFIGJ5xIcgb25lIHJvemR6aWVsb25lIHNwYWNqYW1pKSwgYWxlIG5pZSBtb8W8ZSB6YXdpZXJhxIcgIgorIm1ldGF6bmFrw7N3IHBvd8WCb2tpLiBJPHBvbGVjZW5pZW0tdXp5c2tpd2FuaWEtcHJhdy1hZG1pbmlzdHJhdG9yYT4gbW9nxIUgIgorInR5cG93byBiecSHIEI8ZmFrZXJvb3Q+LCBCPHN1ZG8+LCBCPHN1cGVyPiBsdWIgQjxyZWFsbHk+LiBCPHN1PiBuaWUgbmFkYWplICIKKyJzacSZIGRvIHRlZ28gY2VsdSwgcG9uaWV3YcW8IG1vxbxlIHR5bGtvIHd5d2/FgmHEhyBwb3fFgm9rxJkgdcW8eXRrb3duaWthIHXFvHl3YWrEhWMgIgorIkI8LWM+IHphbWlhc3QgcHJ6ZWthenl3YcSHIGluZHl3aWR1YWxuaWUgYXJndW1lbnR5IGRsYSBwb2xlY2VuaWEgZG8gd3lrb25hbmlhLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTY3CisjLCBuby13cmFwCittc2dpZCAiQjwtUj5JPHJ1bGVzLWZpbGU+IgorbXNnc3RyICJCPC1SPkk8cGxpa19ydWxlcz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTc4Cittc2dpZCAiIgorIkJ1aWxkaW5nIGEgRGViaWFuIHBhY2thZ2UgdXN1YWxseSBpbnZvbHZlcyBpbnZva2luZyBCPGRlYmlhbi9ydWxlcz4gYXMgYSAiCisiY29tbWFuZCB3aXRoIHNldmVyYWwgc3RhbmRhcmQgcGFyYW1ldGVycy4gV2l0aCB0aGlzIG9wdGlvbiBpdCdzIHBvc3NpYmxlIHRvICIKKyJ1c2UgYW5vdGhlciBwcm9ncmFtIGludm9jYXRpb24gdG8gYnVpbGQgdGhlIHBhY2thZ2UgKGl0IGNhbiBpbmNsdWRlIHNwYWNlICIKKyJzZXBhcmF0ZWQgcGFyYW1ldGVycykuICBBbHRlcm5hdGl2ZWx5IGl0IGNhbiBiZSB1c2VkIHRvIGV4ZWN1dGUgdGhlIHN0YW5kYXJkICIKKyJydWxlcyBmaWxlIHdpdGggYW5vdGhlciBtYWtlIHByb2dyYW0gKGZvciBleGFtcGxlIGJ5IHVzaW5nIEI8L3Vzci9sb2NhbC9iaW4vIgorIm1ha2UgLWYgZGViaWFuL3J1bGVzPiBhcyBJPHJ1bGVzLWZpbGU+KS4iCittc2dzdHIgIiIKKyJCdWRvd2FuaWUgcGFraWV0dSBEZWJpYW5hIHp3eWtsZSB3eW1hZ2Egd3l3b8WCYW5pYSBCPGRlYmlhbi9ydWxlcz4gamFrbyAiCisicG9sZWNlbmlhIHoga2lsa29tYSBzdGFuZGFyZG93eW1pIHBhcmFtZXRyYW1pLiBVxbx5d2FqxIVjIHRlaiBvcGNqaSBtb8W8bmEgIgorInBvZGHEhyB3eXdvxYJhbmllIGlubmVnbyBwcm9ncmFtdSwga3TDs3J5IHBvc8WCdcW8eSBkbyB6YnVkb3dhbmlhIHBha2lldHUgKG1vxbxlICIKKyJ0YWvFvGUgemF3aWVyYcSHIGRvZGF0a293ZSBwYXJhbWV0cnkgcm96ZHppZWxvbmUgc3BhY2phbWkpLiBNb8W8ZSBiecSHIHRha8W8ZSAiCisidcW8eXRhIGRvIHd5a29uYW5pYSBzdGFuZGFyZG93ZWdvIHBsaWt1IHJlZ3XFgiB6IHXFvHljaWVtIGlubmVnbyBwcm9ncmFtdSBtYWtlICIKKyIobnAuIHBvZGFqxIVjIEI8L3Vzci9sb2NhbC9iaW4vbWFrZSAtZiBkZWJpYW4vcnVsZXM+IGpha28gSTxwbGlrX3J1bGVzPikuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxNzgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1wPkk8c2lnbi1jb21tYW5kPiIKK21zZ3N0ciAiQjwtcD5JPHBvbGVjZW5pZS1wb2RwaXN5d2FuaWE+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE4OAorbXNnaWQgIiIKKyJXaGVuIEI8ZHBrZy1idWlsZHBhY2thZ2U+IG5lZWRzIHRvIGV4ZWN1dGUgR1BHIG9yIFBHUCB0byBzaWduIGEgc291cmNlICIKKyJjb250cm9sIChCPC5kc2M+KSBmaWxlIG9yIGEgQjwuY2hhbmdlcz4gZmlsZSBpdCB3aWxsIHJ1biBJPHNpZ24tY29tbWFuZD4gIgorIihzZWFyY2hpbmcgdGhlIEI8UEFUSD4gaWYgbmVjZXNzYXJ5KSBpbnN0ZWFkIG9mIEI8Z3BnPi4gSTxzaWduLWNvbW1hbmQ+IHdpbGwgIgorImdldCBhbGwgdGhlIGFyZ3VtZW50cyB0aGF0IEI8cGdwPiB3b3VsZCBoYXZlIGdvdHRlbi4gSWYgSTxzaWduLWNvbW1hbmQ+ICIKKyJ0YWtlcyBpdHMgYXJndW1lbnRzIGluIEdQRyByYXRoZXIgdGhhbiBQR1Agc3R5bGUsIHlvdSBzaG91bGQgZ2l2ZSB0aGUgQjwtIgorInNncGc+IG9wdGlvbi4gSTxzaWduLWNvbW1hbmQ+IHNob3VsZCBub3QgY29udGFpbiBzcGFjZXMgb3IgYW55IG90aGVyIHNoZWxsICIKKyJtZXRhY2hhcmFjdGVycy4iCittc2dzdHIgIiIKKyJHZHkgQjxkcGtnLWJ1aWxkcGFja2FnZT4gYsSZZHppZSBwb3RyemVib3dhxYIgd3l3b8WCYcSHIEdQRyBsdWIgUEdQIGFieSBwb2RwaXNhxIcgIgorInBsaWsga29udHJvbG55IMW6csOzZGXFgiAoQjwuZHNjPikgbHViIHBsaWsgQjwuY2hhbmdlcz4sIHpvc3RhbmllIHVydWNob21pb25lICIKKyJJPHBvbGVjZW5pZS1wb2RwaXN5d2FuaWE+ICh3IHJhemllIGtvbmllY3pub8WbY2kgcHJ6ZXN6dWt1asSFYyBCPFBBVEg+KSAiCisiemFtaWFzdCBCPGdwZz4uIFBhcmFtZXRyeSBub3JtYWxuaWUgcHJ6ZWthenl3YW5lIGRvIEI8cGdwPiB6b3N0YW7EhSAiCisicHJ6ZWthemFuZSBkbyBJPHBvbGVjZW5pYS1wb2RwaXN5d2FuaWE+LiBKZcWbbGkgSTxwb2xlY2VuaWUtcG9kcGlzeXdhbmlhPiAiCisicHJ6eWptdWplIGFyZ3VtZW50eSB3IHN0eWx1IEdQRyB6YW1pYXN0IGF0eWx1IFBHUCwgbmFsZcW8eSB1xbx5xIcgb3BjamkgQjwtIgorInNncGc+LiBJPHBvbGVjZW5pZS1wb2RwaXN5d2FuaWE+IG5pZSBwb3dpbm5vIHphd2llcmHEhyBzcGFjamkgYW5pIGlubnljaCAiCisibWV0YXpuYWvDs3cgcG93xYJva2kuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxODgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1rPkk8a2V5LWlkPiIKK21zZ3N0ciAiQjwtaz5JPGlkLWtsdWN6YT4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTkxCittc2dpZCAiU3BlY2lmeSBhIGtleS1JRCB0byB1c2Ugd2hlbiBzaWduaW5nIHBhY2thZ2VzLiIKK21zZ3N0ciAiT2tyZcWbbGEgSUQga2x1Y3phIHXFvHl3YW5lZ28gZG8gcG9kcGlzeXdhbmlhIHBha2lldMOzdy4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE5MQorIywgbm8td3JhcAorbXNnaWQgIkI8LXVzPiIKK21zZ3N0ciAiQjwtdXM+IgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE5NAorbXNnaWQgIkRvIG5vdCBzaWduIHRoZSBzb3VyY2UgcGFja2FnZS4iCittc2dzdHIgIk5pZSBwcsOzYnVqZSBwb2RwaXN5d2HEhyBwYWtpZXTDs3cuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxOTQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC11Yz4iCittc2dzdHIgIkI8LXVjPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxOTcKK21zZ2lkICJEbyBub3Qgc2lnbiB0aGUgQjwuY2hhbmdlcz4gZmlsZS4iCittc2dzdHIgIk5pZSBwcsOzYnVqZSBwb2RwaXN5d2HEhyBwbGlrw7N3IEI8LmNoYW5nZXM+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxOTkKK21zZ2lkICJCPC1pPltJPHJlZ2V4cD5dIgorbXNnc3RyICJCPC1pPltJPHd5cmHFvF9yZWd1bGFybmU+XSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMDEKK21zZ2lkICJCPC1JPkk8W3BhdHRlcm5dPiIKK21zZ3N0ciAiQjwtST5JPFt3em9yemVjXT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjAzCittc2dpZCAiQjwtcz5bQjxuc0FrdXJLVVI+XSIKK21zZ3N0ciAiQjwtcz5bQjxuc0FrdXJLVVI+XSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMDUKK21zZ2lkICJCPC16PiwgQjwtWj4iCittc2dzdHIgIkI8LXo+LCBCPC1aPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMDgKK21zZ2lkICJQYXNzZWQgdW5jaGFuZ2VkIHRvIEI8ZHBrZy1zb3VyY2U+LiBTZWUgaXRzIG1hbnVhbCBwYWdlLiIKK21zZ3N0ciAiIgorIlByemVrYXp5d2FuYSBiZXogem1pYW4gZG8gQjxkcGtnLXNvdXJjZT4uIFdpxJljZWogaW5mb3JtYWNqaSBuYSBzdHJvbmllICIKKyJwb2RyxJljem5pa2EgdGVnbyBwcm9ncmFtdSIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjA5CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8LS1kZXNjcmlwdGlvbj0+STx4eHg+IgorbXNnaWQgIkI8LS1zb3VyY2Utb3B0aW9uPT5JPG9wdD4iCittc2dzdHIgIkI8LS1kZXNjcmlwdGlvbj0+STx4eHg+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIxMgorbXNnaWQgIlBhc3Mgb3B0aW9uIEk8b3B0PiB0byBCPGRwa2ctc291cmNlPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjEyCisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8LS1kZXNjcmlwdGlvbj0+STx4eHg+IgorbXNnaWQgIkI8LS1jaGFuZ2VzLW9wdGlvbj0+STxvcHQ+IgorbXNnc3RyICJCPC0tZGVzY3JpcHRpb249Pkk8eHh4PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMTUKK21zZ2lkICJQYXNzIG9wdGlvbiBJPG9wdD4gdG8gQjxkcGtnLWdlbmNoYW5nZXM+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIxOQorbXNnaWQgIkI8LS1hZG1pbmRpciA+STxkaXI+IgorbXNnc3RyICJCPC0tYWRtaW5kaXIgPkk8a2F0YWxvZz4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjIyIGRwa2ctY2hlY2tidWlsZGRlcHMuMToyMyBkcGtnLXF1ZXJ5LjE6MTIyCisjOiBkcGtnLXNobGliZGVwcy4xOjIxNSBkcGtnLXRyaWdnZXIuMTo0MworbXNnaWQgIiIKKyJDaGFuZ2UgdGhlIGxvY2F0aW9uIG9mIHRoZSBCPGRwa2c+IGRhdGFiYXNlLiBUaGUgZGVmYXVsdCBsb2NhdGlvbiBpcyBJPC92YXIvIgorImxpYi9kcGtnPi4iCittc2dzdHIgIiIKKyJabWllbmlhIHBvxYJvxbxlbmllIGJhenkgZGFueWNoIEI8ZHBrZz4uIERvbXnFm2xuaWUgamVzdCB0byBJPC92YXIvbGliL2Rwa2c+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjIzIGRwa2ctY2hlY2tidWlsZGRlcHMuMTozMyBkcGtnLWRpc3RhZGRmaWxlLjE6MzIKKyM6IGRwa2ctZGViLjE6MTcyIGRwa2ctZ2VuY2hhbmdlcy4xOjEzMSBkcGtnLWdlbmNvbnRyb2wuMToxMjEKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQ0MyBkcGtnLW5hbWUuMTo1OCBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MzMKKyM6IGRwa2ctcXVlcnkuMToxMTAgZHBrZy1zY2FucGFja2FnZXMuMTo5NiBkcGtnLXNobGliZGVwcy4xOjIxNQorIzogZHBrZy1zb3VyY2UuMTo5NiBkcGtnLXNwbGl0LjE6MTI2IGRwa2ctdHJpZ2dlci4xOjMxCisjLCBuby13cmFwCittc2dpZCAiQjwtaD4sIEI8LS1oZWxwPiIKK21zZ3N0ciAiQjwtaD4sIEI8LS1oZWxwPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMzQKK21zZ2lkICIiCisiRXZlbiBpZiBCPGRwa2ctYnVpbGRwYWNrYWdlPiBleHBvcnRzIHNvbWUgdmFyaWFibGVzLCBCPGRlYmlhbi9ydWxlcz4gc2hvdWxkICIKKyJub3QgcmVseSBvbiB0aGVpciBwcmVzZW5jZSBhbmQgc2hvdWxkIGluc3RlYWQgdXNlIHRoZSByZXNwZWN0aXZlIGludGVyZmFjZSAiCisidG8gcmV0cmlldmUgdGhlIG5lZWRlZCB2YWx1ZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIzNAorIywgbm8td3JhcAorbXNnaWQgIlZhcmlhYmxlcyBzZXQgYnkgZHBrZy1hcmNoaXRlY3R1cmUiCittc2dzdHIgIlptaWVubmUgdXN0YXdpYW5lIHByemV6IGRwa2ctYXJjaGl0ZWN0dXJlIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIzOAorbXNnaWQgIiIKKyJCPGRwa2ctYXJjaGl0ZWN0dXJlPiBpcyBjYWxsZWQgd2l0aCB0aGUgQjwtYT4gYW5kIEI8LXQ+IHBhcmFtZXRlcnMgIgorImZvcndhcmRlZC4gQW55IHZhcmlhYmxlIHRoYXQgaXMgb3V0cHV0IGJ5IGl0cyBCPC1zPiBvcHRpb24gaXMgaW50ZWdyYXRlZCBpbiAiCisidGhlIGJ1aWxkIGVudmlyb25tZW50LiIKK21zZ3N0ciAiIgorIld5d2/FgnVqZSBwcm9ncmFtIEI8ZHBrZy1hcmNoaXRlY3R1cmU+IHogcHJ6ZWthemFuaWVtIHBhcmFtZXRyw7N3IEI8LWE+IG9yYXogIgorIkI8LXQ+LiBXc3p5c3RraWUgem1pZW5uZSB1enlza2FuZSBuYSB3eWrFm2NpdSBkemnEmWtpIGplZ28gb3BjamkgQjwtcz4gc8SFICIKKyJkb8WCxIVjemFuZSBkbyDFm3JvZG93aXNrYSBidWRvd2FuaWEuIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMzgKKyMsIG5vLXdyYXAKK21zZ2lkICJDb21waWxlciBmbGFncyBhcmUgbm8gbG9uZ2VyIGV4cG9ydGVkIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjQzCittc2dpZCAiIgorIkJldHdlZW4gdmVyc2lvbnMgMS4xNC4xNyBhbmQgMS4xNi4xLCBCPGRwa2ctYnVpbGRwYWNrYWdlPiBleHBvcnRlZCBjb21waWxlciAiCisiZmxhZ3MgKEI8Q0ZMQUdTPiwgQjxDWFhGTEFHUz4sIEI8RkZMQUdTPiwgQjxDUFBGTEFHUz4gYW5kIEI8TERGTEFHUz4pIHdpdGggIgorInZhbHVlcyBhcyByZXR1cm5lZCBieSBCPGRwa2ctYnVpbGRmbGFncz4uIFRoaXMgaXMgbm8gbG9uZ2VyIHRoZSBjYXNlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjI0OAorbXNnaWQgIiIKKyJJdCBzaG91bGQgYmUgcG9zc2libGUgdG8gc3BlY2lmeSBzcGFjZXMgYW5kIHNoZWxsIG1ldGFjaGFyYWN0ZXJzIGluIGFuZCAiCisiaW5pdGlhbCBhcmd1bWVudHMgZm9yIEk8Z2Fpbi1yb290LWNvbW1hbmQ+IGFuZCBJPHNpZ24tY29tbWFuZD4uIgorbXNnc3RyICIiCisiUG93aW5ubyBiecSHIG1vxbxsaXdlIHBvZGFuaWUgc3BhY2ppLCBtZXRhem5ha8OzdyBwb3fFgm9raSBvcmF6IGFyZ3VtZW50w7N3IGRsYSAiCisiSTxnYWluLXJvb3QtY29tbWFuZD4gb3JheiBJPHNpZ24tY29tbWFuZD4uIgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjI1NgorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiQjxkcGtnLXNvdXJjZT4oMSksIEI8ZHBrZy1hcmNoaXRlY3R1cmU+KDEpLCBCPGRwa2ctZ2VuY2hhbmdlcz4oMSksICIKKyN8ICJCPGZha2Vyb290PigxKSwgQjxncGc+KDEpLiIKK21zZ2lkICIiCisiQjxkcGtnLXNvdXJjZT4oMSksIEI8ZHBrZy1hcmNoaXRlY3R1cmU+KDEpLCBCPGRwa2ctYnVpbGRmbGFncz4oMSksIEI8ZHBrZy0iCisiZ2VuY2hhbmdlcz4oMSksIEI8ZmFrZXJvb3Q+KDEpLCBCPGdwZz4oMSkuIgorbXNnc3RyICIiCisiQjxkcGtnLXNvdXJjZT4oMSksIEI8ZHBrZy1hcmNoaXRlY3R1cmU+KDEpLCBCPGRwa2ctZ2VuY2hhbmdlcz4oMSksICIKKyJCPGZha2Vyb290PigxKSwgQjxncGc+KDEpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyNjUKKyMsIGZ1enp5CisjfCBtc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMDgtMjAwOSBSYXBoYVxcWzplXWwgSGVydHpvZyIKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAwOC0yMDEwIFJhcGhhXFxbOmVdbCBIZXJ0em9nIgorbXNnc3RyICJDb3B5cmlnaHQgXFwoY28gMjAwOC0yMDA5IFJhcGhhXFxbOmVdbCBIZXJ0em9nIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1jaGVja2J1aWxkZGVwcy4xOjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLWNoZWNrYnVpbGRkZXBzIgorbXNnc3RyICJkcGtnLWNoZWNrYnVpbGRkZXBzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6NAorbXNnaWQgImRwa2ctY2hlY2tidWlsZGRlcHMgLSBjaGVjayBidWlsZCBkZXBlbmRlbmNpZXMgYW5kIGNvbmZsaWN0cyIKK21zZ3N0ciAiZHBrZy1jaGVja2J1aWxkZGVwcyAtIHNwcmF3ZHphIHphbGXFvG5vxZtjaSBpIGtvbmZsaWt0eSBjemFzdSBidWRvd2FuaWEiCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctY2hlY2tidWlsZGRlcHMuMTo5CisjLCBmdXp6eQorI3wgbXNnaWQgIkI8ZHBrZy1jaGVja2J1aWxkZGVwcz4gW0k8b3B0aW9ucz5dIFtJPGNvbnRyb2wtZmlsZT5dIgorbXNnaWQgIkI8ZHBrZy1jaGVja2J1aWxkZGVwcz4gW0k8b3B0aW9uPi4uLl0gW0k8Y29udHJvbC1maWxlPl0iCittc2dzdHIgIkI8ZHBrZy1jaGVja2J1aWxkZGVwcz4gW0k8b3BjamU+XSBbSTxwbGlrLWtvbnRyb2xueT5dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6MTQKK21zZ2lkICIiCisiVGhpcyBwcm9ncmFtIGNoZWNrcyB0aGUgaW5zdGFsbGVkIHBhY2thZ2VzIGluIHRoZSBzeXN0ZW0gYWdhaW5zdCB0aGUgYnVpbGQgIgorImRlcGVuZGVuY2llcyBhbmQgYnVpbGQgY29uZmxpY3RzIGxpc3RlZCBpbiB0aGUgY29udHJvbCBmaWxlLiBJZiBhbnkgYXJlIG5vdCAiCisibWV0LCBpdCBkaXNwbGF5cyB0aGVtIGFuZCBleGl0cyB3aXRoIGEgbm9uemVybyByZXR1cm4gY29kZS4iCittc2dzdHIgIiIKKyJQcm9ncmFtIHRlbiBzcHJhd2R6YSBwYWtpZXR5IHphaW5zdGFsb3dhbmUgdyBzeXN0ZW1pZSB3IHN0b3N1bmt1IGRvIHd5bWFnYcWEICIKKyJpIGtvbmZsaWt0w7N3IHphcGlzYW55Y2ggdyBwbGlrdSBrb250cm9sbnltLiBKZcW8ZWxpIGt0w7NyZcWbIG5pZSBzxIUgc3BlxYJuaW9uZSwgIgorInd5xZt3aWV0bGEgamUgaSBrb8WEY3p5IGR6aWHFgmFuaWUgeiBuaWV6ZXJvd3ltIGtvZGVtIHBvd3JvdHUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6MTcKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIkJ5IGRlZmF1bHQsIEk8ZGViaWFuL2NvbnRyb2w+IGlzIHJlYWQsIGJ1dCBhbiBhbHRlcm5hdGUgY29udHJvbCBmaWxlbmFtZSAiCisjfCAibWF5IGJlIHNwZWNpZmllZCBvbiB0aGUgY29tbWFuZCBsaW5lLiIKK21zZ2lkICIiCisiQnkgZGVmYXVsdCwgQjxkZWJpYW4vY29udHJvbD4gaXMgcmVhZCwgYnV0IGFuIGFsdGVybmF0ZSBjb250cm9sIGZpbGVuYW1lIG1heSAiCisiYmUgc3BlY2lmaWVkIG9uIHRoZSBjb21tYW5kIGxpbmUuIgorbXNnc3RyICIiCisiRG9tecWbbG5pZSBixJlkemllIGN6eXRhbnkgcGxpayBJPGRlYmlhbi9jb250cm9sPiwgamVkbmFrxbxlIHcgbGluaWkgcG9sZWNlxYQgIgorIm1vxbxuYSBwb2RhxIcgYWx0ZXJuYXR5d255IHBsaWsga29udHJvbG55LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1jaGVja2J1aWxkZGVwcy4xOjI3Cittc2dpZCAiIgorIklnbm9yZSBJPEJ1aWxkLURlcGVuZHMtSW5kZXA+IGxpbmVzLiBVc2Ugd2hlbiBubyBhcmNoLWluZGVwIHBhY2thZ2VzIHdpbGwgYmUgIgorImJ1aWx0LiIKK21zZ3N0ciAiIgorIklnbm9ydWplIGxpbmllIEk8QnVpbGQtRGVwZW5kcy1JbmRlcD4uIE5hbGXFvHkgdcW8eXdhxIcsIGplxZtsaSBuaWUgYsSZZMSFICIKKyJidWRvd2FuZSBwYWtpZXR5IG5pZXphbGXFvG5lIG9kIGFyY2hpdGVrdHVyeS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6MjcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1kID5JPGJ1aWxkLWRlcGVuZHMtc3RyaW5nPiIKK21zZ3N0ciAiQjwtZCA+STx6YWxlxbxub8WbY2lfYnVkb3dhbmlhPiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctY2hlY2tidWlsZGRlcHMuMToyOQorIywgbm8td3JhcAorbXNnaWQgIkI8LWMgPkk8YnVpbGQtY29uZmxpY3RzLXN0cmluZz4iCittc2dzdHIgIkI8LWMgPkk8a29uZmxpa3R5X2J1ZG93YW5pYT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctY2hlY2tidWlsZGRlcHMuMTozMworbXNnaWQgIiIKKyJVc2UgdGhlIGdpdmVuIGJ1aWxkIGRlcGVuZGVuY2llcy9jb25mbGljdHMgaW5zdGVhZCBvZiB0aG9zZSBjb250YWluZWQgaW4gdGhlICIKKyJJPGRlYmlhbi9jb250cm9sPiBmaWxlLiIKK21zZ3N0ciAiIgorIlXFvHl3YSBwb2RhbnljaCB6YWxlxbxub8WbY2kva29uZmxpa3TDs3cgY3phc3UgYnVkb3dhbmlhIHphbWlhc3Qgd3ltaWVuaW9ueWNoIHcgIgorInBsaWt1IEk8ZGViaWFuL2NvbnRyb2w+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1jaGVja2J1aWxkZGVwcy4xOjQyCittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMDEgSm9leSBIZXNzIgorbXNnc3RyICJDb3B5cmlnaHQgXFwoY28gMjAwMSBKb2V5IEhlc3MiCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLWRpc3RhZGRmaWxlLjE6MQorIywgbm8td3JhcAorbXNnaWQgImRwa2ctZGlzdGFkZGZpbGUiCittc2dzdHIgImRwa2ctZGlzdGFkZGZpbGUiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGlzdGFkZGZpbGUuMTo0Cittc2dpZCAiZHBrZy1kaXN0YWRkZmlsZSAtIGFkZCBlbnRyaWVzIHRvIGRlYmlhbi9maWxlcyIKK21zZ3N0ciAiZHBrZy1kaXN0YWRkZmlsZSAtIGRvZGFqZSB3cGlzeSBkbyBkZWJpYW4vZmlsZXMiCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGlzdGFkZGZpbGUuMTo4CisjLCBmdXp6eQorI3wgbXNnaWQgIkI8ZHBrZy1kaXN0YWRkZmlsZT4gW0k8b3B0aW9ucz5dSTwgZmlsZW5hbWUgc2VjdGlvbiBwcmlvcml0eT4iCittc2dpZCAiQjxkcGtnLWRpc3RhZGRmaWxlPiBbSTxvcHRpb24+Li4uXUk8IGZpbGVuYW1lIHNlY3Rpb24gcHJpb3JpdHk+IgorbXNnc3RyICJCPGRwa2ctZGlzdGFkZGZpbGU+IFtJPG9wY2plPl0gSTxwbGlrIHNla2NqYSBwcmlvcnl0ZXQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpc3RhZGRmaWxlLjE6MTMKK21zZ2lkICJCPGRwa2ctZGlzdGFkZGZpbGU+IGFkZHMgYW4gZW50cnkgZm9yIGEgbmFtZWQgZmlsZSB0byBCPGRlYmlhbi9maWxlcz4uIgorbXNnc3RyICIiCisiQjxkcGtnLWRpc3RhZGRmaWxlPiBkb2RhamUgd3BpcyBkb3R5Y3rEhWN5IHBvZGFuZWdvIHBsaWt1IGRvIEI8ZGViaWFuL2ZpbGVzPi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGlzdGFkZGZpbGUuMToxOAorbXNnaWQgIiIKKyJJdCB0YWtlcyB0aHJlZSBub24tb3B0aW9uIGFyZ3VtZW50cywgdGhlIGZpbGVuYW1lIGFuZCB0aGUgc2VjdGlvbiBhbmQgIgorInByaW9yaXR5IGZvciB0aGUgQjwuY2hhbmdlcz4gZmlsZS4iCittc2dzdHIgIiIKKyJQb2JpZXJhIHRyenkgYXJndW1lbnR5IG5pZSBixJlkxIVjZSBvcGNqYW1pOiBuYXp3xJkgcGxpa3Ugb3JheiBzZWtjasSZIGkgIgorInByaW9yeXRldCBkbGEgcGxpa3UgQjwuY2hhbmdlcz4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpc3RhZGRmaWxlLjE6MjYKK21zZ2lkICIiCisiVGhlIGZpbGVuYW1lIHNob3VsZCBiZSBzcGVjaWZpZWQgcmVsYXRpdmUgdG8gdGhlIGRpcmVjdG9yeSB3aGVyZSBCPGRwa2ctIgorImdlbmNoYW5nZXM+IHdpbGwgZXhwZWN0IHRvIGZpbmQgdGhlIGZpbGVzLCB1c3VhbGx5IEI8Li4+LCByYXRoZXIgdGhhbiBiZWluZyAiCisiYSBwYXRobmFtZSByZWxhdGl2ZSB0byB0aGUgY3VycmVudCBkaXJlY3Rvcnkgd2hlbiBCPGRwa2ctZGlzdGFkZGZpbGU+IGlzIHJ1bi4iCittc2dzdHIgIiIKKyJOYXp3YSBwbGlrdSBwb3dpbm5hIGJ5xIcgcG9kYW5hIHJlbGF0eXduaWUgdyBzdG9zdW5rdSBkbyBrYXRhbG9ndSwgdyBrdMOzcnltICIKKyJCPGRwa2ctZ2VuY2hhbmdlcz4gYsSZZHppZSBzenVrYcWCIHBsaWvDs3csIHphend5Y3phaiBqYWtvIEI8Li4+LCByYWN6ZWogbmnFvCAiCisiYnnEhyDFm2NpZcW8a8SFIHJlbGF0eXduxIUgZG8gYmllxbzEhWNlZ28ga2F0YWxvZ3UsIHBvZGN6YXMgZHppYcWCYW5pYSBCPGRwa2ctIgorImRpc3RhZGRmaWxlPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRpc3RhZGRmaWxlLjE6MjggZHBrZy1nZW5jaGFuZ2VzLjE6MTAzIGRwa2ctZ2VuY29udHJvbC4xOjY5CisjLCBuby13cmFwCittc2dpZCAiQjwtZj5JPGZpbGVzbGlzdGZpbGU+IgorbXNnc3RyICJCPC1mPkk8cGxpa196X2xpc3TEhV9wbGlrw7N3PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXN0YWRkZmlsZS4xOjMyIGRwa2ctZ2VuY29udHJvbC4xOjczCittc2dpZCAiIgorIlJlYWQgb3Igd3JpdGUgdGhlIGxpc3Qgb2YgZmlsZXMgdG8gYmUgdXBsb2FkZWQgaGVyZSwgcmF0aGVyIHRoYW4gdXNpbmcgIgorIkI8ZGViaWFuL2ZpbGVzPi4iCittc2dzdHIgIiIKKyJDenl0YSBsdWIgemFwaXN1amUgbGlzdMSZIHBsaWvDs3cgd3lkYW5pYSBkbyBwbGlrdSBwb2RhbmVnbyBqYWtvIGFyZ3VtZW50IHRlaiAiCisib3BjamksIHphbWlhc3QgZG8gcGxpa3UgQjxkZWJpYW4vZmlsZXM+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGlzdGFkZGZpbGUuMTo0MCBkcGtnLWdlbmNoYW5nZXMuMToxMzkgZHBrZy1nZW5jb250cm9sLjE6MTM0CisjLCBuby13cmFwCittc2dpZCAiQjxkZWJpYW4vZmlsZXM+IgorbXNnc3RyICJCPGRlYmlhbi9maWxlcz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGlzdGFkZGZpbGUuMTo0NgorbXNnaWQgIiIKKyJUaGUgbGlzdCBvZiBnZW5lcmF0ZWQgZmlsZXMgd2hpY2ggYXJlIHBhcnQgb2YgdGhlIHVwbG9hZCBiZWluZyBwcmVwYXJlZC4gICIKKyJCPGRwa2ctZGlzdGFkZGZpbGU+IGNhbiBiZSB1c2VkIHRvIGFkZCBhZGRpdGlvbmFsIGZpbGVzLiIKK21zZ3N0ciAiIgorIkxpc3RhIHd5Z2VuZXJvd2FueWNoIHBsaWvDs3csIGt0w7NyZSBzxIUgY3rEmcWbY2nEhSBwcnp5Z290b3d5d2FuZWdvIHd5ZGFuaWEuIEFieSAiCisiZG9kYcSHIGRvZGF0a293ZSBwbGlraSwgbW/FvG5hIHXFvHnEhyBCPGRwa2ctZGlzdGFkZGZpbGU+LiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctZGViLjE6MQorIywgbm8td3JhcAorbXNnaWQgImRwa2ctZGViIgorbXNnc3RyICJkcGtnLWRlYiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMTo0Cittc2dpZCAiZHBrZy1kZWIgLSBEZWJpYW4gcGFja2FnZSBhcmNoaXZlICguZGViKSBtYW5pcHVsYXRpb24gdG9vbCIKK21zZ3N0ciAiZHBrZy1kZWIgLSBuYXJ6xJlkemllIG9ic8WCdWdpIHBsaWvDs3cgYXJjaGl3dW0gRGViaWFuYSAoLmRlYikiCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6OAorIywgZnV6enkKKyN8IG1zZ2lkICJCPGRwa2ctZGViPiBbSTxvcHRpb25zPl0gSTxjb21tYW5kPiIKK21zZ2lkICJCPGRwa2ctZGViPiBbSTxvcHRpb24+Li4uXSBJPGNvbW1hbmQ+IgorbXNnc3RyICJCPGRwa2ctZGViPiBbSTxvcGNqZT5dIEk8cG9sZWNlbmllPiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxMgorbXNnaWQgIiIKKyJCPGRwa2ctZGViPiBwYWNrcywgdW5wYWNrcyBhbmQgcHJvdmlkZXMgaW5mb3JtYXRpb24gYWJvdXQgRGViaWFuIGFyY2hpdmVzLiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1kZWI+IHR3b3J6eSwgcm96cGFrb3d1amUgaSBwb2RhamUgaW5mb3JtYWNqZSBvIHBsaWthY2ggYXJjaGl3dW0gIgorIihjenlsaSBwYWtpZXRhY2gpIERlYmlhbmEuIgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjE2Cittc2dpZCAiVXNlIEI8ZHBrZz4gdG8gaW5zdGFsbCBhbmQgcmVtb3ZlIHBhY2thZ2VzIGZyb20geW91ciBzeXN0ZW0uIgorbXNnc3RyICJEbyBpbnN0YWxvd2FuaWEgaSB1c3V3YW5pYSBwYWtpZXTDs3cgeiBzeXN0ZW11IHPFgnXFvHkgcG9sZWNlbmllIEI8ZHBrZz4uIgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjI2Cittc2dpZCAiIgorIllvdSBjYW4gYWxzbyBpbnZva2UgQjxkcGtnLWRlYj4gYnkgY2FsbGluZyBCPGRwa2c+IHdpdGggd2hhdGV2ZXIgb3B0aW9ucyB5b3UgIgorIndhbnQgdG8gcGFzcyB0byBCPGRwa2ctZGViPi4gQjxkcGtnPiB3aWxsIHNwb3QgdGhhdCB5b3Ugd2FudGVkIEI8ZHBrZy1kZWI+ICIKKyJhbmQgcnVuIGl0IGZvciB5b3UuIgorbXNnc3RyICIiCisiUG9uYWR0byBtb8W8bmEgc2tvcnp5c3RhxIcgeiBCPGRwa2ctZGViPiB3eXdvxYJ1asSFYyBCPGRwa2c+IHogb2Rwb3dpZWRuacSFICIKKyJvcGNqxIUsIGt0w7NyYSB6b3N0YW5pZSBwcnpla2F6YW5hIGRvIEI8ZHBrZy1kZWI+LiBCPGRwa2c+IHVydWNob21pIEI8ZHBrZy0iCisiZGViPiBpIHd5a29uYSDFvMSFZGFuxIUgb3BlcmFjasSZLiIKKworIworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MjgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1iPiwgQjwtLWJ1aWxkPiBJPGRpcmVjdG9yeT4gW0k8YXJjaGl2ZT58STxkaXJlY3Rvcnk+XSIKK21zZ3N0ciAiQjwtYj4sIEI8LS1idWlsZD4gSTxrYXRhbG9nPiBbSTxhcmNoaXd1bT58STxrYXRhbG9nPl0iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6NDAKK21zZ2lkICIiCisiQ3JlYXRlcyBhIGRlYmlhbiBhcmNoaXZlIGZyb20gdGhlIGZpbGVzeXN0ZW0gdHJlZSBzdG9yZWQgaW4gSTxkaXJlY3Rvcnk+LiAiCisiSTxkaXJlY3Rvcnk+IG11c3QgaGF2ZSBhIEI8REVCSUFOPiBzdWJkaXJlY3RvcnksIHdoaWNoIGNvbnRhaW5zIHRoZSBjb250cm9sICIKKyJpbmZvcm1hdGlvbiBmaWxlcyBzdWNoIGFzIHRoZSBjb250cm9sIGZpbGUgaXRzZWxmLiBUaGlzIGRpcmVjdG9yeSB3aWxsICIKKyJJPG5vdD4gYXBwZWFyIGluIHRoZSBiaW5hcnkgcGFja2FnZSdzIGZpbGVzeXN0ZW0gYXJjaGl2ZSwgYnV0IGluc3RlYWQgdGhlICIKKyJmaWxlcyBpbiBpdCB3aWxsIGJlIHB1dCBpbiB0aGUgYmluYXJ5IHBhY2thZ2UncyBjb250cm9sIGluZm9ybWF0aW9uIGFyZWEuIgorbXNnc3RyICIiCisiVHdvcnp5IGFyY2hpd3VtIERlYmlhbmEgeiBwbGlrw7N3IHphd2FydHljaCB3IEk8a2F0YWxvZ3U+LiBJPGthdGFsb2c+IG11c2kgIgorInphd2llcmHEhyBwb2RrYXRhbG9nIG8gbmF6d2llIEI8REVCSUFOPiwgdyBrdMOzcnltIHphd2FydGUgc8SFIHBsaWtpIGtvbnRyb2xuZSwgIgorInRha2llIGphayBucC4gY29udHJvbC4gVGVuIGthdGFsb2cgSTxuaWU+IHBvamF3aSBzacSZIHcgYXJjaGl3dW0gYmluYXJueW0gIgorInBha2lldHUsIHR5bGtvIHpvc3RhbmllIHVtaWVzemN6b255IGpha28gaW5mb3JtYWNqZSBrb250cm9sbmUgcGFraWV0dSwga3TDs3JlICIKKyJvcGlzdWrEhSB3xYJhxZtjaXdvxZtjaSBwYWtpZXR1LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMTo1MgorbXNnaWQgIiIKKyJVbmxlc3MgeW91IHNwZWNpZnkgQjwtLW5vY2hlY2s+LCBCPGRwa2ctZGViPiB3aWxsIHJlYWQgQjxERUJJQU4vY29udHJvbD4gYW5kICIKKyJwYXJzZSBpdC4gSXQgd2lsbCBjaGVjayBpdCBmb3Igc3ludGF4IGVycm9ycyBhbmQgb3RoZXIgcHJvYmxlbXMsIGFuZCBkaXNwbGF5ICIKKyJ0aGUgbmFtZSBvZiB0aGUgYmluYXJ5IHBhY2thZ2UgYmVpbmcgYnVpbHQuICBCPGRwa2ctZGViPiB3aWxsIGFsc28gY2hlY2sgdGhlICIKKyJwZXJtaXNzaW9ucyBvZiB0aGUgbWFpbnRhaW5lciBzY3JpcHRzIGFuZCBvdGhlciBmaWxlcyBmb3VuZCBpbiB0aGUgQjxERUJJQU4+ICIKKyJjb250cm9sIGluZm9ybWF0aW9uIGRpcmVjdG9yeS4iCittc2dzdHIgIiIKKyJKZcWbbGkgcG9taW5pxJl0byBvcGNqxJkgQjwtLW5vY2hlY2s+LCBCPGRwa2ctZGViPiBvZGN6eXRhIHBsaWsgQjxERUJJQU4vIgorImNvbnRyb2w+IGkgcHJ6ZXR3b3J6eSBnby4gU3ByYXdkemkgcHJ6eSB0eW0sIGN6eSBuaWUgd3lzdMSZcHVqxIUgdyBuaW0gYsWCxJlkeSAiCisic2vFgmFkbmlvd2UgbHViIGlubmUgcHJvYmxlbXksIGEgbmFzdMSZcG5pZSB3ecWbd2lldGxpIG5henfEmSBwYWtpZXR1LCBrdMOzcnkgIgorImplc3QgdHdvcnpvbnkuIEI8ZHBrZy1kZWI+IHBvbmFkdG8gc3ByYXdkemkgcHJhd2EgZG9zdMSZcHUgc2tyeXB0w7N3ICIKKyJpbnN0YWxhY3lqbnljaCBpIGlubnljaCBwbGlrw7N3IHpuYWpkdWrEhWN5Y2ggc2nEmSB3IGthdGFsb2d1IEI8REVCSUFOPi4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6NTkKK21zZ2lkICIiCisiSWYgbm8gSTxhcmNoaXZlPiBpcyBzcGVjaWZpZWQgdGhlbiBCPGRwa2ctZGViPiB3aWxsIHdyaXRlIHRoZSBwYWNrYWdlIGludG8gIgorInRoZSBmaWxlIEk8ZGlyZWN0b3J5PkI8LmRlYj4uIgorbXNnc3RyICIiCisiSmXFm2xpIG5pZSBwb2Rhbm8gbmF6d3kgSTxhcmNoaXd1bT4sIHRvIEI8ZHBrZy1kZWI+IHphcGlzemUgcGFraWV0IHcgcGxpa3UgIgorIkk8a2F0YWxvZz5CPC5kZWI+LiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMTo2MQorbXNnaWQgIklmIHRoZSBhcmNoaXZlIHRvIGJlIGNyZWF0ZWQgYWxyZWFkeSBleGlzdHMgaXQgd2lsbCBiZSBvdmVyd3JpdHRlbi4iCittc2dzdHIgIkplxbxlbGkgdGFraSBwYWtpZXQganXFvCBpc3RuaWVqZSwgdG8gem9zdGFuaWUgbmFkcGlzYW55LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMTo3NworbXNnaWQgIiIKKyJJZiB0aGUgc2Vjb25kIGFyZ3VtZW50IGlzIGEgZGlyZWN0b3J5IHRoZW4gQjxkcGtnLWRlYj4gd2lsbCB3cml0ZSB0byB0aGUgIgorImZpbGUgSTxwYWNrYWdlPkI8Xz5JPHZlcnNpb24+QjxfPkk8YXJjaD5CPC5kZWI+LCBvciAiCisiSTxwYWNrYWdlPkI8Xz5JPHZlcnNpb24+QjwuZGViPiBpZiBubyBCPEFyY2hpdGVjdHVyZT4gZmllbGQgaXMgcHJlc2VudCBpbiAiCisidGhlIHBhY2thZ2UgY29udHJvbCBmaWxlLiBXaGVuIGEgdGFyZ2V0IGRpcmVjdG9yeSBpcyBzcGVjaWZpZWQsIHJhdGhlciB0aGFuICIKKyJhIGZpbGUsIHRoZSBCPC0tbm9jaGVjaz4gb3B0aW9uIG1heSBub3QgYmUgdXNlZCAoc2luY2UgQjxkcGtnLWRlYj4gbmVlZHMgdG8gIgorInJlYWQgYW5kIHBhcnNlIHRoZSBwYWNrYWdlIGNvbnRyb2wgZmlsZSB0byBkZXRlcm1pbmUgd2hpY2ggZmlsZW5hbWUgdG8gdXNlKS4iCittc2dzdHIgIiIKKyJKZcWbbGkgZHJ1Z2ltIGFyZ3VtZW50ZW0gamVzdCBJPGthdGFsb2c+LCB0byBCPGRwa2ctZGViPiB6YXBpc3plIHBha2lldCBwb2QgIgorIm5henfEhSBJPGthdGFsb2c+QjwvPkk8cGFraWV0PkI8Xz5JPHdlcnNqYT5CPF8+STxhcmNoPkI8LmRlYj4gbHViICIKKyJJPGthdGFsb2c+QjwvPkk8cGFraWV0PkI8Xz5JPHdlcnNqYT5CPC5kZWI+LCBqZcWbbGkgbmllIHpvc3RhxYJvIG9rcmXFm2xvbmUgIgorInBvbGUgQjxBcmNoaXRlY3R1cmU+IHcgcGxpa3Uga29udHJvbG55bS4gR2R5IHBvZGFueSBqZXN0IEk8a2F0YWxvZz4sIHRvIG5pZSAiCisibW/FvGUgem9zdGHEhyB1xbx5dGEgb3BjamEgQjwtLW5vLWNoZWNrPiwgcG9uaWV3YcW8IEI8ZHBrZy1kZWI+IG11c2kgcHJ6ZXR3b3J6ecSHICIKKyJwbGlrIGtvbnRyb2xueSwgYWJ5IHJvenBvem5hxIcgbmF6d8SZIGkgd2Vyc2rEmSBwYWtpZXR1LiIKKworIworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6NzcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1JPiwgQjwtLWluZm8+IEk8YXJjaGl2ZT4gW0k8Y29udHJvbC1maWxlLW5hbWU+Li4uXSIKK21zZ3N0ciAiQjwtST4sIEI8LS1pbmZvPiBJPGFyY2hpd3VtPiBbSTxuYXp3YS1wbGlrdS1rb250cm9sbmVnbz4uLi5dIgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjgwCittc2dpZCAiUHJvdmlkZXMgaW5mb3JtYXRpb24gYWJvdXQgYSBiaW5hcnkgcGFja2FnZSBhcmNoaXZlLiIKK21zZ3N0ciAiRG9zdGFyY3phIGluZm9ybWFjamkgbyBwYWtpZWNpZS4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6ODUKK21zZ2lkICIiCisiSWYgbm8gSTxjb250cm9sLWZpbGUtbmFtZT5zIGFyZSBzcGVjaWZpZWQgdGhlbiBpdCB3aWxsIHByaW50IGEgc3VtbWFyeSBvZiAiCisidGhlIGNvbnRlbnRzIG9mIHRoZSBwYWNrYWdlIGFzIHdlbGwgYXMgaXRzIGNvbnRyb2wgZmlsZS4iCittc2dzdHIgIiIKKyJHZHkgbmllIHBvZGFubyDFvGFkbmVqIEk8bmF6d3ktcGxpa3Uta29udHJvbG5lZ28+LCB3ecWbd2lldGxhbmEgamVzdCAiCisiaW5mb3JtYWNqYSBvIHphd2FydG/Fm2NpIHBha2lldHUgb3JheiB6ZXN0YXdpZW5pZSB3eWtvcnp5c3RhbnljaCBwbGlrw7N3ICIKKyJrb250cm9sbnljaC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6OTMKK21zZ2lkICIiCisiSWYgYW55IEk8Y29udHJvbC1maWxlLW5hbWU+cyBhcmUgc3BlY2lmaWVkIHRoZW4gQjxkcGtnLWRlYj4gd2lsbCBwcmludCB0aGVtICIKKyJpbiB0aGUgb3JkZXIgdGhleSB3ZXJlIHNwZWNpZmllZDsgaWYgYW55IG9mIHRoZSBjb21wb25lbnRzIHdlcmVuJ3QgcHJlc2VudCAiCisiaXQgd2lsbCBwcmludCBhbiBlcnJvciBtZXNzYWdlIHRvIHN0ZGVyciBhYm91dCBlYWNoIG9uZSBhbmQgZXhpdCB3aXRoIHN0YXR1cyAiCisiMi4iCittc2dzdHIgIiIKKyJXIHJhemllIHBvZGFuaWEgSTxuYXp3eS1wbGlrdS1rb250cm9sbmVnbz4sIEI8ZHBrZy1kZWI+IHd5xZt3aWV0bGkgemF3YXJ0b8WbxIcgIgorInRlZ28gcGxpa3UuIEplxZtsaSB0ZW4gcGxpayBuaWUgaXN0bmllamUsIHd5xZt3aWV0bG9ueSB6b3N0YW5pZSBrb211bmlrYXQgIgorImLFgsSZZHUgbmEgc3RhbmRhcmRvd2Ugd3lqxZtjaWUgYsWCxJlkw7N3IGkgcHJvZ3JhbSB6YWtvxYRjenkgc2nEmSB6IGtvZGVtIGLFgsSZZHUgMi4iCisKKyMKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRlYi4xOjkzCisjLCBuby13cmFwCittc2dpZCAiQjwtVz4sIEI8LS1zaG93PiBJPGFyY2hpdmU+IgorbXNnc3RyICJCPC1XPiwgQjwtLXNob3c+IEk8YXJjaGl3dW0+IgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjEwMAorbXNnaWQgIiIKKyJQcm92aWRlcyBpbmZvcm1hdGlvbiBhYm91dCBhIGJpbmFyeSBwYWNrYWdlIGFyY2hpdmUgaW4gdGhlIGZvcm1hdCBzcGVjaWZpZWQgIgorImJ5IHRoZSBCPC0tc2hvd2Zvcm1hdD4gYXJndW1lbnQuIFRoZSBkZWZhdWx0IGZvcm1hdCBkaXNwbGF5cyB0aGUgcGFja2FnZSdzICIKKyJuYW1lIGFuZCB2ZXJzaW9uIG9uIG9uZSBsaW5lLCBzZXBhcmF0ZWQgYnkgYSB0YWJ1bGF0b3IuIgorbXNnc3RyICIiCisiV3nFm3dpZXRsYSBpbmZvcm1hY2rEmSBvIHBha2llY2llIGJpbmFybnltIHcgZm9ybWFjaWUgb2tyZcWbbG9ueW0gb3BjasSFIEI8LS0iCisic2hvd2Zvcm1hdD4uIFcgZG9tecWbbG55bSBmb3JtYWNpZSB3IGthxbxkZWogbGluaWkgd3nFm3dpZXRsYW5lIHPEhSBuYXp3YSBpICIKKyJ3ZXJzamEgcGFraWV0dSwgb2RkemllbG9uZSBvZCBzaWViaWUgem5ha2llbSB0YWJ1bGFjamkuIgorCisjCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToxMDAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1mPiwgQjwtLWZpZWxkPiBJPGFyY2hpdmU+IFtJPGNvbnRyb2wtZmllbGQtbmFtZT4uLi5dIgorbXNnc3RyICJCPC1mPiwgQjwtLWZpZWxkPiBJPGFyY2hpd3VtPiBbSTxuYXp3YS1wb2xhLWtvbnRyb2xuZWdvPi4uLl0iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTAzCittc2dpZCAiRXh0cmFjdHMgY29udHJvbCBmaWxlIGluZm9ybWF0aW9uIGZyb20gYSBiaW5hcnkgcGFja2FnZSBhcmNoaXZlLiIKK21zZ3N0ciAiV3nFm3dpZXRsYSB6YXdhcnRvxZvEhyBwbGlrdSBrb250cm9sbmVnbyBvIG5hendpZSBjb250cm9sLiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxMDcKK21zZ2lkICIiCisiSWYgbm8gQjxjb250cm9sLWZpbGUtZmllbGQ+cyBhcmUgc3BlY2lmaWVkIHRoZW4gaXQgd2lsbCBwcmludCB0aGUgd2hvbGUgIgorImNvbnRyb2wgZmlsZS4iCittc2dzdHIgIiIKKyJKZcWbbGkgbmllIHBvZGFubyDFvGFkbmVqIEI8bmF6d3ktcG9sYS1rb250cm9sbmVnbz4sIHRvIHd5xZt3aWV0bGFuYSBqZXN0ICIKKyJ6YXdhcnRvxZvEhyBjYcWCZWdvIHBsaWt1IGNvbnRyb2wuIgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjExNgorbXNnaWQgIiIKKyJJZiBhbnkgYXJlIHNwZWNpZmllZCB0aGVuIEI8ZHBrZy1kZWI+IHdpbGwgcHJpbnQgdGhlaXIgY29udGVudHMsIGluIHRoZSAiCisib3JkZXIgaW4gd2hpY2ggdGhleSBhcHBlYXIgaW4gdGhlIGNvbnRyb2wgZmlsZS4gSWYgbW9yZSB0aGFuIG9uZSBCPGNvbnRyb2wtIgorImZpbGUtZmllbGQ+IGlzIHNwZWNpZmllZCB0aGVuIEI8ZHBrZy1kZWI+IHdpbGwgcHJlY2VkZSBlYWNoIHdpdGggaXRzIGZpZWxkICIKKyJuYW1lIChhbmQgYSBjb2xvbiBhbmQgc3BhY2UpLiIKK21zZ3N0ciAiIgorIkplxZtsaSBwb2Rhbm8gQjxuYXp3xJktcG9sYS1rb250cm9sbmVnbz4sIHRvIEI8ZHBrZy1kZWI+IHd5xZt3aWV0bGkgamVqICIKKyJ6YXdhcnRvxZvEhy4gR2R5IHBvZGFubyB3acSZY2VqIG5pxbwgamVkbsSFIEI8bmF6d8SZLXBvbGEta29udHJvbG5lZ28+LCB0byBCPGRwa2ctIgorImRlYj4gd3nFm3dpZXRsaSBwb2xhIHdyYXogeiBuYXp3xIUgKG9yYXogZHd1a3JvcGtpZW0gaSBzcGFjasSFKSB3IHRha2llaiAiCisia29sZWpub8WbY2ksIHcgamFraWVqIHPEhSB3eW1pZW5pb25lIHcgcGxpa3Uga29udHJvbG55bS4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTE4Cittc2dpZCAiTm8gZXJyb3JzIGFyZSByZXBvcnRlZCBmb3IgZmllbGRzIHJlcXVlc3RlZCBidXQgbm90IGZvdW5kLiIKK21zZ3N0ciAiIgorIkRsYSBuaWVvZG5hbGV6aW9ueWNoIHDDs2wga29udHJvbG55Y2ggbmllIHPEhSB3ecWbd2lldGxhbmUga29tdW5pa2F0eSBixYLEmWTDs3cuIgorCisjCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToxMTgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1jPiwgQjwtLWNvbnRlbnRzPiBJPGFyY2hpdmU+IgorbXNnc3RyICJCPC1jPiwgQjwtLWNvbnRlbnRzPiBJPGFyY2hpd3VtPiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxMjQKK21zZ2lkICIiCisiTGlzdHMgdGhlIGNvbnRlbnRzIG9mIHRoZSBmaWxlc3lzdGVtIHRyZWUgYXJjaGl2ZSBwb3J0aW9uIG9mIHRoZSBwYWNrYWdlICIKKyJhcmNoaXZlLiBJdCBpcyBjdXJyZW50bHkgcHJvZHVjZWQgaW4gdGhlIGZvcm1hdCBnZW5lcmF0ZWQgYnkgQjx0YXI+J3MgIgorInZlcmJvc2UgbGlzdGluZy4iCittc2dzdHIgIiIKKyJXecWbd2lldGxhIHphd2FydG/Fm8SHIGFyY2hpd3VtLiBXeWRydWsgamVzdCBwb2RhbnkgdyB0YWtpZWogcG9zdGFjaSwgamFrxIUgIgorImdlbmVydWplIHBvbGVjZW5pZSBCPHRhcj4uIgorCisjCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToxMjQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC14PiwgQjwtLWV4dHJhY3Q+IEk8YXJjaGl2ZSBkaXJlY3Rvcnk+IgorbXNnc3RyICJCPC14PiwgQjwtLWV4dHJhY3Q+IEk8a2F0YWxvZyBhcmNoaXd1bT4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTI4Cittc2dpZCAiIgorIkV4dHJhY3RzIHRoZSBmaWxlc3lzdGVtIHRyZWUgZnJvbSBhIHBhY2thZ2UgYXJjaGl2ZSBpbnRvIHRoZSBzcGVjaWZpZWQgIgorImRpcmVjdG9yeS4iCittc2dzdHIgIlJvenBha293dWplIHphd2FydG/Fm8SHIGFyY2hpd3VtIGRvIHBvZGFuZWdvIEk8a2F0YWxvZ3U+LiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxMzQKK21zZ2lkICIiCisiTm90ZSB0aGF0IGV4dHJhY3RpbmcgYSBwYWNrYWdlIHRvIHRoZSByb290IGRpcmVjdG9yeSB3aWxsIEk8bm90PiByZXN1bHQgaW4gYSAiCisiY29ycmVjdCBpbnN0YWxsYXRpb24hIFVzZSBCPGRwa2c+IHRvIGluc3RhbGwgcGFja2FnZXMuIgorbXNnc3RyICIiCisiUHJvc3rEmSB6YXV3YcW8ecSHLCDFvGUgcm96cGFrb3dhbmllIHBha2lldHUgdyBrYXRhbG9ndSBnxYLDs3dueW0gSTxuaWU+IGplc3QgIgorIm9kcG93aWVkbmlraWVtIHphaW5zdGFsb3dhbmlhIHBha2lldHUhIERvIHRlZ28gY2VsdSBzxYJ1xbx5IHd5xYLEhWN6bmllICIKKyJwb2xlY2VuaWUgQjxkcGtnPi4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTM4Cittc2dpZCAiIgorIkk8ZGlyZWN0b3J5PiAoYnV0IG5vdCBpdHMgcGFyZW50cykgd2lsbCBiZSBjcmVhdGVkIGlmIG5lY2Vzc2FyeSwgYW5kIGl0cyAiCisicGVybWlzc2lvbnMgbW9kaWZpZWQgdG8gbWF0Y2ggdGhlIGNvbnRlbnRzIG9mIHRoZSBwYWNrYWdlLiIKK21zZ3N0ciAiIgorIkk8a2F0YWxvZz4gKGFsZSBiZXoga2F0YWxvZ8OzdyBuYWRyesSZZG55Y2gpIHpvc3RhbmllIHV0d29yem9ueSBqZcWbbGkgdHJ6ZWJhLCAiCisiYSBqZWdvIHVwcmF3bmllbmlhIHpvc3RhbsSFIHptb2R5Zmlrb3dhbmUgdGFrLCBhYnkgb2Rwb3dpYWRhxYJ5IHphd2FydG/Fm2NpICIKKyJwYWtpZXR1LiIKKworIworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MTM4CisjLCBuby13cmFwCittc2dpZCAiQjwtWD4sIEI8LS12ZXh0cmFjdD4gSTxhcmNoaXZlIGRpcmVjdG9yeT4iCittc2dzdHIgIkI8LVg+LCBCPC0tdmV4dHJhY3Q+IEk8a2F0YWxvZyBhcmNoaXd1bT4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTQ1CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJJcyBsaWtlIEI8LS1leHRyYWN0PiAoQjwteD4pICBidXQgcHJpbnRzIGEgbGlzdGluZyBvZiB0aGUgZmlsZXMgZXh0cmFjdGVkICIKKyN8ICJhcyBpdCBnb2VzLiIKK21zZ2lkICIiCisiSXMgbGlrZSBCPC0tZXh0cmFjdD4gKEI8LXg+KSAgd2l0aCBCPC0tdmVyYm9zZT4gKEI8LXY+KSAgd2hpY2ggcHJpbnRzIGEgIgorImxpc3Rpbmcgb2YgdGhlIGZpbGVzIGV4dHJhY3RlZCBhcyBpdCBnb2VzLiIKK21zZ3N0ciAiIgorIkR6aWHFgmEgcG9kb2JuaWUgZG8gQjwtLWV4dHJhY3Q+IChCPC14PiksIHogdMSFIHLDs8W8bmljxIUsIMW8ZSB3ecWbd2lldGxhIG5hend5ICIKKyJwbGlrw7N3LCBrdMOzcmUgc8SFIHJvenBha293eXdhbmUuIgorCisjCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToxNDUKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjwteD4sIEI8LS1leHRyYWN0PiBJPGFyY2hpdmUgZGlyZWN0b3J5PiIKK21zZ2lkICJCPC1SPiwgQjwtLXJhdy1leHRyYWN0PiBJPGFyY2hpdmUgZGlyZWN0b3J5PiIKK21zZ3N0ciAiQjwteD4sIEI8LS1leHRyYWN0PiBJPGthdGFsb2cgYXJjaGl3dW0+IgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjE1MAorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiRXh0cmFjdHMgdGhlIGZpbGVzeXN0ZW0gdHJlZSBmcm9tIGEgcGFja2FnZSBhcmNoaXZlIGludG8gdGhlIHNwZWNpZmllZCAiCisjfCAiZGlyZWN0b3J5LiIKK21zZ2lkICIiCisiRXh0cmFjdHMgdGhlIGZpbGVzeXN0ZW0gdHJlZSBmcm9tIGEgcGFja2FnZSBhcmNoaXZlIGludG8gYSBzcGVjaWZpZWQgIgorImRpcmVjdG9yeSwgYW5kIHRoZSBjb250cm9sIGluZm9ybWF0aW9uIGZpbGVzIGludG8gYSBERUJJQU4gc3ViZGlyZWN0b3J5IG9mICIKKyJ0aGUgc3BlY2lmaWVkIGRpcmVjdG9yeS4iCittc2dzdHIgIlJvenBha293dWplIHphd2FydG/Fm8SHIGFyY2hpd3VtIGRvIHBvZGFuZWdvIEk8a2F0YWxvZ3U+LiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxNTIgZHBrZy1kZWIuMToxNzIKK21zZ2lkICIiCisiVGhlIHRhcmdldCBkaXJlY3RvcnkgKGJ1dCBub3QgaXRzIHBhcmVudHMpIHdpbGwgYmUgY3JlYXRlZCBpZiBuZWNlc3NhcnkuIgorbXNnc3RyICJXIHJhemllIHBvdHJ6ZWJ5LCBrYXRhbG9nIGRvY2Vsb3d5IGLEmWR6aWUgdXR3b3J6b255LiIKKworIworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MTUyCisjLCBuby13cmFwCittc2dpZCAiQjwtLWZzeXMtdGFyZmlsZT4gSTxhcmNoaXZlPiIKK21zZ3N0ciAiQjwtLWZzeXMtdGFyZmlsZT4gSTxhcmNoaXd1bT4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTYxCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJFeHRyYWN0cyB0aGUgZmlsZXN5c3RlbSB0cmVlIGRhdGEgZnJvbSBhIGJpbmFyeSBwYWNrYWdlIGFuZCBzZW5kcyBpdCB0byAiCisjfCAic3RhbmRhcmQgb3V0cHV0IGluIEI8dGFyPiBmb3JtYXQuIFRvZ2V0aGVyIHdpdGggQjx0YXI+KDEpICB0aGlzIGNhbiBiZSAiCisjfCAidXNlZCB0byBleHRyYWN0IGEgcGFydGljdWxhciBmaWxlIGZyb20gYSBwYWNrYWdlIGFyY2hpdmUuIgorbXNnaWQgIiIKKyJFeHRyYWN0cyB0aGUgZmlsZXN5c3RlbSB0cmVlIGRhdGEgZnJvbSBhIGJpbmFyeSBwYWNrYWdlIGFuZCBzZW5kcyBpdCB0byAiCisic3RhbmRhcmQgb3V0cHV0IGluIEI8dGFyPiBmb3JtYXQuIFRvZ2V0aGVyIHdpdGggQjx0YXI+KDEpICB0aGlzIGNhbiBiZSB1c2VkICIKKyJ0byBleHRyYWN0IGEgcGFydGljdWxhciBmaWxlIGZyb20gYSBwYWNrYWdlIGFyY2hpdmUuICBUaGUgaW5wdXQgYXJjaGl2ZSB3aWxsICIKKyJhbHdheXMgYmUgcHJvY2Vzc2VkIHNlcXVlbnRpYWxseS4iCittc2dzdHIgIiIKKyJSb3pwYWtvd3VqZSBwbGlraSB6IGFyY2hpd3VtIGkgd3lzecWCYSBqZSBuYSBzdGFuZGFyZG93ZSB3eWrFm2NpZSB3IHBvc3RhY2kgIgorImZvcm1hdHUgcG9sZWNlbmlhIEI8dGFyPi4gR2R5IHRhIG9wZXJhY2phIHpvc3RhbmllIHBvxYLEhWN6b25hIHogQjx0YXI+J2VtLCAiCisibW/FvGxpd2UgamVzdCByb3pwYWtvd2FuaWUgdHlsa28gd3licmFueWNoIHBsaWvDs3cgeiBhcmNoaXd1bS4iCisKKyMKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRlYi4xOjE2MQorIywgbm8td3JhcAorbXNnaWQgIkI8LWU+LCBCPC0tY29udHJvbD4gSTxhcmNoaXZlPiBbSTxkaXJlY3Rvcnk+XSIKK21zZ3N0ciAiQjwtZT4sIEI8LS1jb250cm9sPiBJPGFyY2hpd3VtPiBbSTxrYXRhbG9nPl0iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTY1Cittc2dpZCAiIgorIkV4dHJhY3RzIHRoZSBjb250cm9sIGluZm9ybWF0aW9uIGZpbGVzIGZyb20gYSBwYWNrYWdlIGFyY2hpdmUgaW50byB0aGUgIgorInNwZWNpZmllZCBkaXJlY3RvcnkuIgorbXNnc3RyICJSb3pwYWtvd3VqZSBwbGlraSBrb250cm9sbmUgcGFraWV0dSBkbyBwb2RhbmVnbyBJPGthdGFsb2d1Pi4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTY5Cittc2dpZCAiIgorIklmIG5vIGRpcmVjdG9yeSBpcyBzcGVjaWZpZWQgdGhlbiBhIHN1YmRpcmVjdG9yeSBCPERFQklBTj4gaW4gdGhlIGN1cnJlbnQgIgorImRpcmVjdG9yeSBpcyB1c2VkLiIKK21zZ3N0ciAiIgorIkplxZtsaSBJPGthdGFsb2c+IG5pZSB6b3N0YcWCIG9rcmXFm2xvbnksIHBsaWtpIHPEhSByb3pwYWtvd3l3YW5lIGRvIHBvZGthdGFsb2d1ICIKKyJCPERFQklBTj4gdyBrYXRhbG9ndSBiaWXFvMSFY3ltLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MTgwCisjLCBuby13cmFwCittc2dpZCAiQjwtLXNob3dmb3JtYXQ9Pkk8Zm9ybWF0PiIKK21zZ3N0ciAiQjwtLXNob3dmb3JtYXQ9Pkk8Zm9ybWF0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxODUgZHBrZy1xdWVyeS4xOjEyNworbXNnaWQgIiIKKyJUaGlzIG9wdGlvbiBpcyB1c2VkIHRvIHNwZWNpZnkgdGhlIGZvcm1hdCBvZiB0aGUgb3V0cHV0IEI8LS1zaG93PiB3aWxsICIKKyJwcm9kdWNlLiBUaGUgZm9ybWF0IGlzIGEgc3RyaW5nIHRoYXQgd2lsbCBiZSBvdXRwdXQgZm9yIGVhY2ggcGFja2FnZSBsaXN0ZWQuIgorbXNnc3RyICIiCisiT3BjamEgamVzdCB1xbx5d2FuYSBkbyBwb2RhbmlhIGZvcm1hdHUgd3lqxZtjaWEgcHJvZHVrb3dhbmVnbyBwcnpleiBCPC0tc2hvdz4uICIKKyJGb3JtYXQgamVzdCDFgmHFhGN1Y2hlbSB6bmFrw7N3LCBrdMOzcnkgYsSZZHppZSB3ecWbd2lldGxvbnkgZGxhIGthxbxkZWdvICIKKyJ3eXBpc2FuZWdvIHBha2lldHUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjE5NAorbXNnaWQgIiIKKyJUaGUgc3RyaW5nIG1heSByZWZlcmVuY2UgYW55IHN0YXR1cyBmaWVsZCB1c2luZyB0aGUgXCIke0k8ZmllbGQtbmFtZT59XCIgIgorImZvcm0sIGEgbGlzdCBvZiB0aGUgdmFsaWQgZmllbGRzIGNhbiBiZSBlYXNpbHkgcHJvZHVjZWQgdXNpbmcgQjwtST4gb24gdGhlICIKKyJzYW1lIHBhY2thZ2UuIEEgY29tcGxldGUgZXhwbGFuYXRpb24gb2YgdGhlIGZvcm1hdHRpbmcgb3B0aW9ucyAoaW5jbHVkaW5nICIKKyJlc2NhcGUgc2VxdWVuY2VzIGFuZCBmaWVsZCB0YWJiaW5nKSBjYW4gYmUgZm91bmQgaW4gdGhlIGV4cGxhbmF0aW9uIG9mIHRoZSAiCisiQjwtLXNob3dmb3JtYXQ+IG9wdGlvbiBpbiBCPGRwa2ctcXVlcnk+KDEpLiIKK21zZ3N0ciAiIgorIkFyZ3VtZW50ZW0gamVzdCDFgmHFhGN1Y2ggem5ha8OzdyB3IHBvc3RhY2kgXCIke0k8bmF6d2EtcG9sYT59XCIsIGt0w7NyeSBtb8W8ZSAiCisic2nEmSBvZG5vc2nEhyBkbyBkb3dvbG5lZ28gcG9sYSBwbGlrdSBzdGFudS4gTGlzdMSZIG5hencgcG9wcmF3bnljaCBww7NsIG1vxbxuYSAiCisixYJhdHdvIHd5Z2VuZXJvd2HEhywgdcW8eXdhasSFYyBvcGNqaSBCPC1JPiBuYSB0eW0gc2FteW0gcGFraWVjaWUuIFBlxYJuZSAiCisid3lqYcWbbmllbmllIG9wY2ppIGZvcm1hdG93YW5pYSAoxYLEhWN6bmllIHogc2Vrd2VuY2phbWkgY3l0b3dhbmlhIGkgIgorInJvemR6aWVsYW5pZW0gcMOzbCkgbW/FvG5hIHpuYWxlxbrEhyB3IG9waXNpZSBvcGNqaSBCPC0tc2hvd2Zvcm1hdD4gdyBCPGRwa2ctIgorInF1ZXJ5PigxKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTk2Cittc2dpZCAiVGhlIGRlZmF1bHQgZm9yIHRoaXMgZmllbGQgaXMgXCIke1BhY2thZ2V9XFxldCR7VmVyc2lvbn1cXGVuXCIuIgorbXNnc3RyICJEb215xZtsbsSFIHdhcnRvxZtjacSFIHRlZ28gcG9sYSBqZXN0IFwiJHtQYWNrYWdlfVxcZXQke1ZlcnNpb259XFxlblwiLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MTk2CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8LXo+STxjb21wcmVzc19sZXZlbD4iCittc2dpZCAiQjwtej5JPGNvbXByZXNzLWxldmVsPiIKK21zZ3N0ciAiQjwtej5JPHBvemlvbV9rb21wcmVzamk+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjIwMAorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiU3BlY2lmeSB3aGljaCBjb21wcmVzc2lvbiBsZXZlbCB0byBwYXNzIHRvIHRoZSBjb21wcmVzc29yIGJhY2tlbmQgIgorI3wgInByb2dyYW0sIHdoZW4gYnVpbGRpbmcgYSBwYWNrYWdlLiIKK21zZ2lkICIiCisiU3BlY2lmeSB3aGljaCBjb21wcmVzc2lvbiBsZXZlbCB0byB1c2Ugb24gdGhlIGNvbXByZXNzb3IgYmFja2VuZCwgd2hlbiAiCisiYnVpbGRpbmcgYSBwYWNrYWdlIChkZWZhdWx0IGlzIDkgZm9yIGd6aXAgYW5kIGJ6aXAyLCA2IGZvciB4eiBhbmQgbHptYSkuIgorbXNnc3RyICIiCisiT2tyZcWbbGEgcG96aW9tIGtvbXByZXNqaSBwcnpla2F6eXdhbnkgZG8gcHJvZ3JhbXUga29tcHJlc3VqxIVjZWdvIHBvZGN6YXMgIgorImJ1ZG93YW5pYSBwYWtpZXR1LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MjAwCisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8LVo+STxjb21wcmVzc190eXBlPiIKK21zZ2lkICJCPC1aPkk8Y29tcHJlc3MtdHlwZT4iCittc2dzdHIgIkI8LVo+STx0eXBfa29tcHJlc2ppPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToyMDUKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlNwZWNpZnkgd2hpY2ggY29tcHJlc3Npb24gdHlwZSB0byB1c2Ugd2hlbiBidWlsZGluZyBhIHBhY2thZ2UuIEFsbG93ZWQgIgorI3wgInZhbHVlcyBhcmUgSTxnemlwPiwgSTxiemlwMj4sIEk8bHptYT4sIGFuZCBJPG5vbmU+IChkZWZhdWx0IGlzIEk8Z3ppcD4pLiIKK21zZ2lkICIiCisiU3BlY2lmeSB3aGljaCBjb21wcmVzc2lvbiB0eXBlIHRvIHVzZSB3aGVuIGJ1aWxkaW5nIGEgcGFja2FnZS4gQWxsb3dlZCAiCisidmFsdWVzIGFyZSBJPGd6aXA+LCBJPHh6PiwgSTxiemlwMj4sIEk8bHptYT4sIGFuZCBJPG5vbmU+IChkZWZhdWx0IGlzICIKKyJJPGd6aXA+KS4iCittc2dzdHIgIiIKKyJPa3JlxZtsYSB0eXAga29tcHJlc2ppIHXFvHl3YW55IHBvZGN6YXMgYnVkb3dhbmlhIHBha2lldHUuIERvendvbG9ueW1pICIKKyJ3YXJ0b8WbY2lhbWkgc8SFOiBJPGd6aXA+LCBJPGJ6aXAyPiwgSTxsem1hPiBvcmF6IEk8bm9uZT4gKGRvbXnFm2xuxIUgd2FydG/Fm2NpxIUgIgorImplc3QgSTxnemlwPikuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToyMDUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tbmV3PiIKK21zZ3N0ciAiQjwtLW5ldz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MjEwCittc2dpZCAiIgorIkVuc3VyZXMgdGhhdCBCPGRwa2ctZGViPiBidWlsZHMgYSBgbmV3JyBmb3JtYXQgYXJjaGl2ZS4gVGhpcyBpcyB0aGUgZGVmYXVsdC4iCittc2dzdHIgIiIKKyJaYXBld25pYSwgxbxlIEI8ZHBrZy1kZWI+IHV0d29yenkgXCJub3d5XCIgZm9ybWF0IGFyY2hpd3VtLiBUYSBvcGNqYSBqZXN0ICIKKyJkb215xZtsbmEuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToyMTAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tb2xkPiIKK21zZ3N0ciAiQjwtLW9sZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MjE4Cittc2dpZCAiIgorIkZvcmNlcyBCPGRwa2ctZGViPiB0byBidWlsZCBhbiBgb2xkJyBmb3JtYXQgYXJjaGl2ZS4gVGhpcyBvbGQgYXJjaGl2ZSBmb3JtYXQgIgorImlzIGxlc3MgZWFzaWx5IHBhcnNlZCBieSBub24tRGViaWFuIHRvb2xzIGFuZCBpcyBub3cgb2Jzb2xldGU7IGl0cyBvbmx5IHVzZSAiCisiaXMgd2hlbiBidWlsZGluZyBwYWNrYWdlcyB0byBiZSBwYXJzZWQgYnkgdmVyc2lvbnMgb2YgZHBrZyBvbGRlciB0aGFuICIKKyIwLjkzLjc2IChTZXB0ZW1iZXIgMTk5NSksIHdoaWNoIHdhcyByZWxlYXNlZCBhcyBpMzg2IGEub3V0IG9ubHkuIgorbXNnc3RyICIiCisiV3ltdXN6YSB1dHdvcnplbmllIHByemV6IEI8ZHBrZy1kZWI+IFwic3RhcmVnb1wiIGZvcm1hdHUgYXJjaGl3dW0uIFRlbiAiCisiZm9ybWF0IGplc3Qgc8WCYWJvIG9ic8WCdWdpd2FueSBwcnpleiBuYXJ6xJlkemlhIHNwb3phIGR5c3RyeWJ1Y2ppIERlYmlhbmEgaSAiCisib2JlY25pZSBqZXN0IHByemVzdGFyemHFgnkuIFRhIG9wY2phIGplc3QgdcW8eXRlY3puYSBqZWR5bmllIHcgcHJ6eXBhZGt1ICIKKyJrb3J6eXN0YW5pYSB6IHdlcnNqaSBkcGtnIHdjemXFm25pZWpzemVqIG5pxbwgMC45My43NiAod3J6ZXNpZcWEIDE5OTUpLCBrdMOzcmEgIgorImJ5xYJhIG9wdWJsaWtvd2FuYSBqZWR5bmllIGRsYSBpMzg2IGEub3V0LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MjE4CisjLCBuby13cmFwCittc2dpZCAiQjwtLW5vY2hlY2s+IgorbXNnc3RyICJCPC0tbm9jaGVjaz4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MjI0Cittc2dpZCAiIgorIkluaGliaXRzIEI8ZHBrZy1kZWIgLS1idWlsZD4ncyB1c3VhbCBjaGVja3Mgb24gdGhlIHByb3Bvc2VkIGNvbnRlbnRzIG9mIGFuICIKKyJhcmNoaXZlLiBZb3UgY2FuIGJ1aWxkIGFueSBhcmNoaXZlIHlvdSB3YW50LCBubyBtYXR0ZXIgaG93IGJyb2tlbiwgdGhpcyB3YXkuIgorbXNnc3RyICIiCisiUG93b2R1amUsIMW8ZSBwb2xlY2VuaWUgQjxkcGtnLWRlYiAtLWJ1aWxkPiBuaWUgYsSZZHppZSBzcHJhd2R6YcSHIHphd2FydG/Fm2NpICIKKyJhcmNoaXd1bS4gVyB0ZW4gc3Bvc8OzYiBtb8W8bmEgdXR3b3J6ecSHIG5pZXBvcHJhd255IHBha2lldCwgamXFm2xpIHphamR6aWUgdGFrYSAiCisicG90cnplYmEuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToyMjQgc3RhcnQtc3RvcC1kYWVtb24uODoyNTUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC12PiwgQjwtLXZlcmJvc2U+IgorbXNnc3RyICJCPC12PiwgQjwtLXZlcmJvc2U+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjIyOAorbXNnaWQgIiIKKyJFbmFibGVzIHZlcmJvc2Ugb3V0cHV0LiBUaGlzIGN1cnJlbnRseSBvbmx5IGFmZmVjdHMgQjwtLWV4dHJhY3Q+IG1ha2luZyBpdCAiCisiYmVoYXZlIGxpa2UgQjwtLXZleHRyYWN0Pi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MjI4CisjLCBuby13cmFwCittc2dpZCAiQjwtRD4sIEI8LS1kZWJ1Zz4iCittc2dzdHIgIkI8LUQ+LCBCPC0tZGVidWc+IgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjIzMQorbXNnaWQgIkVuYWJsZXMgZGVidWdnaW5nIG91dHB1dC4gVGhpcyBpcyBub3QgdmVyeSBpbnRlcmVzdGluZy4iCittc2dzdHIgIlfFgsSFY3phIG9wY2rEmSBkZWJ1Z293YW5pYS4gTmllIGplc3QgdG8gemJ5dCBpbnRlcmVzdWrEhWNlLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToyMzcKK21zZ2lkICIiCisiSWYgc2V0LCBCPGRwa2ctZGViPiB3aWxsIHVzZSBpdCBhcyB0aGUgZGlyZWN0b3J5IGluIHdoaWNoIHRvIGNyZWF0ZSAiCisidGVtcG9yYXJ5IGZpbGVzIGFuZCBkaXJlY3Rvcmllcy4iCittc2dzdHIgIiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToyNDMKK21zZ2lkICIiCisiQjxkcGtnLWRlYiAtST4gSTxwYWNrYWdlMT5CPC5kZWI+IEk8cGFja2FnZTI+QjwuZGViPiBkb2VzIHRoZSB3cm9uZyB0aGluZy4iCittc2dzdHIgIiIKKyJCPGRwa2ctZGViIC1JPiBJPHBha2lldDE+QjwuZGViPiBJPHBha2lldDI+QjwuZGViPiBkemlhxYJhIG5pZXBvcHJhd25pZS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MjUxCittc2dpZCAiIgorIlRoZXJlIGlzIG5vIGF1dGhlbnRpY2F0aW9uIG9uIEI8LmRlYj4gZmlsZXM7IGluIGZhY3QsIHRoZXJlIGlzbid0IGV2ZW4gYSAiCisic3RyYWlnaHRmb3J3YXJkIGNoZWNrc3VtLiAgKEhpZ2hlciBsZXZlbCB0b29scyBsaWtlIEFQVCBzdXBwb3J0ICIKKyJhdXRoZW50aWNhdGluZyBCPC5kZWI+IHBhY2thZ2VzIHJldHJpZXZlZCBmcm9tIGEgZ2l2ZW4gcmVwb3NpdG9yeSwgYW5kIG1vc3QgIgorInBhY2thZ2VzIG5vd2FkYXlzIHByb3ZpZGUgYW4gbWQ1c3VtIGNvbnRyb2wgZmlsZSBnZW5lcmF0ZWQgYnkgZGViaWFuL3J1bGVzLiAiCisiVGhvdWdoIHRoaXMgaXMgbm90IGRpcmVjdGx5IHN1cHBvcnRlZCBieSB0aGUgbG93ZXIgbGV2ZWwgdG9vbHMuKSIKK21zZ3N0ciAiIgorIk5pZSBtYSBzcHJhd2R6YW5pYSBhdXRlbnR5Y3pub8WbY2kgcGxpa8OzdyBCPC5kZWI+LCBhIG5hd2V0IG5pZSBtYSBwcm9zdGVqICIKKyJzdW15IGtvbnRyb2xuZWouIChOYXJ6xJlkemlhIHd5xbxzemVnbyBwb3ppb211IHRha2llIGphayBBUFQgd3NwaWVyYWrEhSAiCisidXdpZXJ6eXRlbG5pYW5pZSBwYWtpZXTDs3cgQjwuZGViPiBwb2JpZXJhbnljaCB6IGRhbmVnbyByZXBvenl0b3JpdW0sIHphxZsgIgorIndpxJlrc3pvxZvEhyB3c3DDs8WCY3plc255Y2ggcGFraWV0w7N3IGRvc3RhcmN6YSBwbGlrIGtvbnRyb2xueSBtZDVzdW0gIgorInd5Z2VuZXJvd2FueSBwcnpleiBkZWJpYW4vcnVsZXMuIE5pZXN0ZXR5LCBuaWUgamVzdCB0byBiZXpwb8WbcmVkbmlvICIKKyJ3c3BpZXJhbmUgcHJ6ZXogbmFyesSZZHppYSBuacW8c3plZ28gcG96aW9tdS4pIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjI1OAorbXNnaWQgIiIKKyJEbyBub3QgYXR0ZW1wdCB0byB1c2UganVzdCBCPGRwa2ctZGViPiB0byBpbnN0YWxsIHNvZnR3YXJlISBZb3UgbXVzdCB1c2UgIgorIkI8ZHBrZz4gcHJvcGVyIHRvIGVuc3VyZSB0aGF0IGFsbCB0aGUgZmlsZXMgYXJlIGNvcnJlY3RseSBwbGFjZWQgYW5kIHRoZSAiCisicGFja2FnZSdzIHNjcmlwdHMgcnVuIGFuZCBpdHMgc3RhdHVzIGFuZCBjb250ZW50cyByZWNvcmRlZC4iCittc2dzdHIgIiIKKyJOaWUgbmFsZcW8eSB1xbx5d2HEhyBCPGRwa2ctZGViPiBkbyBpbnN0YWxvd2FuaWEgb3Byb2dyYW1vd2FuaWEhIERvIHRlZ28gY2VsdSAiCisibmFsZcW8eSBrb3J6eXN0YcSHIHogQjxkcGtnPiwga3TDs3J5IHphaW5zdGFsdWplIHBvcHJhd25pZSBwbGlraSBpIHVydWNob21pICIKKyJwb3RyemVibmUgc2tyeXB0eSBpbnN0YWxhY3lqbmUuIgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjI2NAorbXNnaWQgIkI8ZGViPig1KSwgQjxkZWItY29udHJvbD4oNSksIEI8ZHBrZz4oMSksIEI8ZHNlbGVjdD4oMSkuIgorbXNnc3RyICJCPGRlYj4oNSksIEI8ZGViLWNvbnRyb2w+KDUpLCBCPGRwa2c+KDEpLCBCPGRzZWxlY3Q+KDEpLiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctZGl2ZXJ0Ljg6MQorIywgbm8td3JhcAorbXNnaWQgImRwa2ctZGl2ZXJ0IgorbXNnc3RyICJkcGtnLWRpdmVydCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo0Cittc2dpZCAiZHBrZy1kaXZlcnQgLSBvdmVycmlkZSBhIHBhY2thZ2UncyB2ZXJzaW9uIG9mIGEgZmlsZSIKK21zZ3N0ciAiZHBrZy1kaXZlcnQgLSBuYWRwaXN5d2FuaWUgcGxpa8OzdyB6IHBha2lldMOzdyIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo5CisjLCBmdXp6eQorI3wgbXNnaWQgIkI8ZHBrZy1kaXZlcnQ+IFtJPG9wdGlvbnM+XSBJPGNvbW1hbmQ+IgorbXNnaWQgIkI8ZHBrZy1kaXZlcnQ+IFtJPG9wdGlvbj4uLi5dIEk8Y29tbWFuZD4iCittc2dzdHIgIkI8ZHBrZy1kaXZlcnQ+IFtJPG9wY2plPl0gSTxwb2xlY2VuaWU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjEzCittc2dpZCAiIgorIkI8ZHBrZy1kaXZlcnQ+IGlzIHRoZSB1dGlsaXR5IHVzZWQgdG8gc2V0IHVwIGFuZCB1cGRhdGUgdGhlIGxpc3Qgb2YgIgorImRpdmVyc2lvbnMuIgorbXNnc3RyICIiCisiQjxkcGtnLWRpdmVyPiBqZXN0IG5hcnrEmWR6aWVtIHXFvHl3YW55bSBkbyB0d29yemVuaWEgaSBha3R1YWxpem93YW5pYSBsaXN0eSAiCisibmFkcGlzYcWEIHBsaWvDs3cuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjIzCittc2dpZCAiIgorIkZpbGUgSTxkaXZlcnNpb25zPiBhcmUgYSB3YXkgb2YgZm9yY2luZyBCPGRwa2c+KDEpICBub3QgdG8gaW5zdGFsbCBhIGZpbGUgIgorImludG8gaXRzIGxvY2F0aW9uLCBidXQgdG8gYSBJPGRpdmVydGVkPiBsb2NhdGlvbi4gRGl2ZXJzaW9ucyBjYW4gYmUgdXNlZCAiCisidGhyb3VnaCB0aGUgRGViaWFuIHBhY2thZ2Ugc2NyaXB0cyB0byBtb3ZlIGEgZmlsZSBhd2F5IHdoZW4gaXQgY2F1c2VzIGEgIgorImNvbmZsaWN0LiBTeXN0ZW0gYWRtaW5pc3RyYXRvcnMgY2FuIGFsc28gdXNlIGl0IHRvIG92ZXJyaWRlIHNvbWUgcGFja2FnZSdzICIKKyJjb25maWd1cmF0aW9uIGZpbGUsIG9yIHdoZW5ldmVyIHNvbWUgZmlsZXMgKHdoaWNoIGFyZW4ndCBtYXJrZWQgYXMgIgorIidjb25mZmlsZXMnKSBuZWVkIHRvIGJlIHByZXNlcnZlZCBieSBkcGtnLCB3aGVuIGluc3RhbGxpbmcgYSBuZXdlciB2ZXJzaW9uICIKKyJvZiBhIHBhY2thZ2Ugd2hpY2ggY29udGFpbnMgdGhvc2UgZmlsZXMuIgorbXNnc3RyICIiCisiXCJJPE5hZHBpc2FuaWE+XCIgcGxpa8OzdyBzxIUgc3Bvc29iZW0gbmEgd3ltdXN6ZW5pZSBuYSBwcm9ncmFtaWUgQjxkcGtnPigxKSAiCisiaW5zdGFsb3dhbmlhIHBsaWt1IG5pZSB3IGRvbXnFm2xuZWogbG9rYWxpemFjamksIGxlY3ogdyBub3dlaiwgSTxuYWRwaXNhbmVqPiAiCisibG9rYWxpemFjamkuIE5hZHBpc2FuaWEgbW9nxIUgYnnEhyB1xbx5d2FuZSB3IHNrcnlwdGFjaCBwYWtpZXTDs3cgRGViaWFuYSBkbyAiCisicHJ6ZW5pZXNpZW5pYSBwbGlrw7N3LCBrdMOzcmUgcG93b2R1asSFIGtvbmZsaWt0eS4gQWRtaW5pc3RyYXRvciBzeXN0ZW11IG1vxbxlICIKKyJpY2ggdGFrxbxlIHXFvHnEhyBkbyBuYWRwaXNhbmlhIHBsaWvDs3cga29uZmlndXJhY3lqbnljaCBwZXdueWNoIHBha2lldMOzdywgYWxibyAiCisid3RlZHkgZ2R5IG5pZWt0w7NyZSBwbGlraSAobmllb3puYWN6b25lIGpha28gXCJwbGlraSBrb25maWd1cmFjeWpuZVwiKSBtdXN6xIUgIgorImJ5xIcgemFjaG93YW5lIHByemV6IGRwa2cgcG9kY3phcyBpbnN0YWxhY2ppIG5vd2VqIHdlcnNqaSBwYWtpZXR1ICIKKyJ6YXdpZXJhasSFY2VnbyB0ZSBwbGlraS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRpdmVydC44OjI1CisjLCBuby13cmFwCittc2dpZCAiW0I8LS1hZGQ+XSBJPGZpbGU+IgorbXNnc3RyICJbQjwtLWFkZD5dIEk8cGxpaz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6MjgKK21zZ2lkICJBZGQgYSBkaXZlcnNpb24gZm9yIEk8ZmlsZT4uIgorbXNnc3RyICJEb2RhamUgbmFkcGlzYW5pZSBJPHBsaWt1Pi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRpdmVydC44OjI4IGRwa2ctc3RhdG92ZXJyaWRlLjg6MzUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tcmVtb3ZlPkk8IGZpbGU+IgorbXNnc3RyICJCPC0tcmVtb3ZlPiBJPHBsaWs+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjMxCittc2dpZCAiUmVtb3ZlIGEgZGl2ZXJzaW9uIGZvciBJPGZpbGU+LiIKK21zZ3N0ciAiVXN1d2EgbmFkcGlzYW5pZSBJPHBsaWt1Pi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRpdmVydC44OjMxCisjLCBuby13cmFwCittc2dpZCAiQjwtLWxpc3Q+STwgZ2xvYi1wYXR0ZXJuPiIKK21zZ3N0ciAiQjwtLWxpc3Q+STwgd3pvcnplYy1nbG9iPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODozNAorbXNnaWQgIkxpc3QgZGl2ZXJzaW9ucyBtYXRjaGluZyBJPGdsb2ItcGF0dGVybj4uIgorbXNnc3RyICJXecWbd2lldGxhIG5hZHBpc2FuaWEgcGFzdWrEhWNlIGRvIEk8d3pvcmNhLWdsb2I+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGl2ZXJ0Ljg6MzQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tbGlzdHBhY2thZ2U+STwgZmlsZT4iCittc2dzdHIgIkI8LS1saXN0cGFja2FnZT5JPCBwbGlrPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODozOAorbXNnaWQgIiIKKyJQcmludCB0aGUgbmFtZSBvZiB0aGUgcGFja2FnZSB0aGF0IGRpdmVydHMgSTxmaWxlPi4gIFByaW50cyBMT0NBTCBpZiBJPGZpbGU+ICIKKyJpcyBsb2NhbGx5IGRpdmVydGVkIGFuZCBub3RoaW5nIGlmIEk8ZmlsZT4gaXMgbm90IGRpdmVydGVkLiIKK21zZ3N0ciAiIgorIld5xZt3aWV0bGEgbmF6d8SZIHBha2lldHUsIGt0w7NyeSB6YXdpZXJhIG9taW5pxJljaWUgSTxwbGlrdT4uIFd5xZt3aWV0bGEgbmFwaXMgIgorIkxPQ0FMIGplxZtsaSBJPHBsaWs+IGplc3Qgb21pbmnEmXR5IGxva2FsbmllLCBuaWUgd3nFm3dpZXRsYSBuaWMgamXFm2xpIGRsYSAiCisiSTxwbGlrdT4gbmllIG1hIG9taW5pxJljaWEuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kaXZlcnQuODozOAorIywgbm8td3JhcAorbXNnaWQgIkI8LS10cnVlbmFtZT5JPCBmaWxlPiIKK21zZ3N0ciAiQjwtLXRydWVuYW1lPkk8IHBsaWs+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjQxCittc2dpZCAiUHJpbnQgdGhlIHJlYWwgbmFtZSBmb3IgYSBkaXZlcnRlZCBmaWxlLiIKK21zZ3N0ciAiV3nFm3dpZXRsYSByemVjenl3aXN0xIUgbmF6d8SZIG5hZHBpc2FuZWdvIHBsaWt1LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGl2ZXJ0Ljg6NDMgZHBrZy1zdGF0b3ZlcnJpZGUuODo1MiBkc2VsZWN0LjE6NDQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMjgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tYWRtaW5kaXI+STwgZGlyZWN0b3J5PiIKK21zZ3N0ciAiQjwtLWFkbWluZGlyPkk8IGthdGFsb2c+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjQ2Cittc2dpZCAiIgorIlNldCB0aGUgZHBrZyBkYXRhIGRpcmVjdG9yeSB0byBJPGRpcmVjdG9yeT4gKGRlZmF1bHQ6IEk8L3Zhci9saWIvZHBrZz4pLiIKK21zZ3N0ciAiIgorIlVzdGF3aWEga2F0YWxvZyBiYXp5IGRhbnljaCBkcGtnIG5hIEk8a2F0YWxvZz4gKGRvbXnFm2xuaWUgSTwvdmFyL2xpYi9kcGtnPikuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kaXZlcnQuODo0NgorIywgbm8td3JhcAorbXNnaWQgIkI8LS1kaXZlcnQ+STwgZGl2ZXJ0LXRvPiIKK21zZ3N0ciAiQjwtLWRpdmVydD4gSTxuYWRwaXN6LWRvPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo1MAorbXNnaWQgIiIKKyJJPGRpdmVydC10bz4gaXMgdGhlIGxvY2F0aW9uIHdoZXJlIHRoZSB2ZXJzaW9ucyBvZiBJPGZpbGU+LCBhcyBwcm92aWRlZCBieSAiCisib3RoZXIgcGFja2FnZXMsIHdpbGwgYmUgZGl2ZXJ0ZWQuIgorbXNnc3RyICIiCisiSTxuYWRwaXN6LWRvPiBqZXN0IGxva2FsaXphY2rEhSwgZG8ga3TDs3JlaiB6b3N0YW7EhSBuYWRwaXNhbmUgd2Vyc2plIEk8cGxpa3U+ICIKKyJkb3N0YXJjemFuZSBwcnpleiBpbm5lIHBha2lldHkuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kaXZlcnQuODo1MAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1sb2NhbD4iCittc2dzdHIgIkI8LS1sb2NhbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6NTYKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRoYXQgYWxsIHBhY2thZ2VzJyB2ZXJzaW9ucyBvZiB0aGlzIGZpbGUgYXJlIGRpdmVydGVkLiAgVGhpcyAiCisibWVhbnMsIHRoYXQgdGhlcmUgYXJlIG5vIGV4Y2VwdGlvbnMsIGFuZCB3aGF0ZXZlciBwYWNrYWdlIGlzIGluc3RhbGxlZCwgdGhlICIKKyJmaWxlIGlzIGRpdmVydGVkLiBUaGlzIGNhbiBiZSB1c2VkIGJ5IGFuIGFkbWluIHRvIGluc3RhbGwgYSBsb2NhbGx5IG1vZGlmaWVkICIKKyJ2ZXJzaW9uLiIKK21zZ3N0ciAiIgorIk9rcmXFm2xhLCDFvGUgem9zdGFuxIUgbmFkcGlzYW5lIHdzenlzdGtpZSB3ZXJzamUgdGVnbyBwbGlrdS4gT3puYWN6YSB0byAsxbxlICIKKyJiZXogxbxhZG55Y2ggd3lqxIV0a8OzdywgcGxpayBqZXN0IG5hZHBpc3l3YW55LCBuaWV6YWxlxbxuaWUgb2QgdGVnbywga3TDs3J5ICIKKyJwYWtpZXQgamVzdCBpbnN0YWxvd2FueS4gQWRtaW5pc3RyYXRvciBtb8W8ZSB0ZWdvIHXFvHnEhyBkbyB6YWluc3RhbG93YW5pYSAiCisibG9rYWxuaWUgem1vZHlmaWtvd2FuZWogd2Vyc2ppIHBsaWt1LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGl2ZXJ0Ljg6NTYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tcGFja2FnZT5JPCBwYWNrYWdlPiIKK21zZ3N0ciAiQjwtLXBhY2thZ2U+STwgcGFraWV0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo2MQorbXNnaWQgIiIKKyJJPHBhY2thZ2U+IGlzIHRoZSBuYW1lIG9mIGEgcGFja2FnZSB3aG9zZSBjb3B5IG9mIEk8ZmlsZT4gd2lsbCBub3QgYmUgIgorImRpdmVydGVkLiBpLmUuIEk8ZmlsZT4gd2lsbCBiZSBkaXZlcnRlZCBmb3IgYWxsIHBhY2thZ2VzIGV4Y2VwdCBJPHBhY2thZ2U+LiIKK21zZ3N0ciAiIgorIkk8cGFraWV0PiBqZXN0IG5henfEhSBwYWtpZXR1LCBrdMOzcmVnbyBrb3BpYSBJPHBsaWt1PiBuaWUgYsSZZHppZSBuYWRwaXNhbmEsICIKKyJ0ai4gSTxwbGlrPiBixJlkemllIG5hZHBpc2FueSBkbGEgd3N6eXN0a2ljaCBwYWtpZXTDs3cgb3Byw7NjeiBwb2RhbmVnbyAiCisiSTxwYWtpZXR1Pi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRpdmVydC44OjYxIGRwa2ctc3RhdG92ZXJyaWRlLjg6NjQgdXBkYXRlLWFsdGVybmF0aXZlcy44OjM1MAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1xdWlldD4iCittc2dzdHIgIkI8LS1xdWlldD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6NjQKK21zZ2lkICJRdWlldCBtb2RlLCBpLmUuIG5vIHZlcmJvc2Ugb3V0cHV0LiIKK21zZ3N0ciAiVHJ5YiBjaWNoeSwgYmV6IHJvendsZWvFgnljaCBrb211bmlrYXTDs3cuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kaXZlcnQuODo2NAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1yZW5hbWU+IgorbXNnc3RyICJCPC0tcmVuYW1lPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo2OAorbXNnaWQgIiIKKyJBY3R1YWxseSBtb3ZlIHRoZSBmaWxlIGFzaWRlIChvciBiYWNrKS4gQjxkcGtnLWRpdmVydD4gd2lsbCBhYm9ydCBvcGVyYXRpb24gIgorImluIGNhc2UgdGhlIGRlc3RpbmF0aW9uIGZpbGUgYWxyZWFkeSBleGlzdHMuIgorbXNnc3RyICIiCisiUHJ6ZW5vc2kgcGxpayB3IGplZG7EhSBsdWIgZHJ1Z8SFIHN0cm9uxJkuIEI8ZHBrZy1kaXZlcnQ+IHByemVyd2llIGR6aWHFgmFuaWUsICIKKyJqZcW8ZWxpIHBsaWsgZG9jZWxvd3kganXFvCBpc3RuaWVqZS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRpdmVydC44OjY4CisjLCBuby13cmFwCittc2dpZCAiQjwtLXRlc3Q+IgorbXNnc3RyICJCPC0tdGVzdD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6NzEKK21zZ2lkICJUZXN0IG1vZGUsIGkuZS4gZG9uJ3QgYWN0dWFsbHkgcGVyZm9ybSBhbnkgY2hhbmdlcywganVzdCBkZW1vbnN0cmF0ZS4iCittc2dzdHIgIiIKKyJUcnliIHRlc3Rvd3ksIHR6bi4gbmllIHd5a29udWplIMW8YWRueWNoIGFrY2ppLCB0eWxrbyBwb2thenVqZSwgY28gem9zdGHFgm9ieSAiCisienJvYmlvbmUuIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1kaXZlcnQuODo3OAorIywgbm8td3JhcAorbXNnaWQgIk5PVEVTIgorbXNnc3RyICJVV0FHSSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo4MgorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiV2hlbiBhZGRpbmcsIGRlZmF1bHQgaXMgQjwtLWxvY2FsPiBhbmQgQjwtLWRpdmVydD4gSTxFPGx0Pm9yaWdpbmFsRTxndD4uIgorI3wgImRpc3RyaWI+LiBXaGVuIHJlbW92aW5nLCBCPC0tcGFja2FnZT4gb3IgQjwtLWxvY2FsPiBhbmQgQjwtLWRpdmVydD4gbXVzdCAiCisjfCAibWF0Y2ggaWYgc3BlY2lmaWVkLiIKK21zZ2lkICIiCisiV2hlbiBhZGRpbmcsIGRlZmF1bHQgaXMgQjwtLWxvY2FsPiBhbmQgQjwtLWRpdmVydD4gSTxvcmlnaW5hbD5CPC5kaXN0cmliPi4gIgorIldoZW4gcmVtb3ZpbmcsIEI8LS1wYWNrYWdlPiBvciBCPC0tbG9jYWw+IGFuZCBCPC0tZGl2ZXJ0PiBtdXN0IG1hdGNoIGlmICIKKyJzcGVjaWZpZWQuIgorbXNnc3RyICIiCisiUG9kY3phcyBkb2Rhd2FuaWEgZG9tecWbbG55bWkgb3BjamFtaSBzxIUgQjwtLWxvY2FsPiBpIEI8LS1kaXZlcnQ+ICIKKyJJPEU8bHQ+b3J5Z2luYWxueUU8Z3Q+LmRpc3RyaWI+LiBQb2RjemFzIHVzdXdhbmlhIEI8LS1wYWNrYWdlPiBsdWIgQjwtLSIKKyJsb2NhbD4gaSBCPC0tZGl2ZXJ0PiwgamXFm2xpIHpvc3RhxYJ5IHBvZGFuZSwgdG8gbXVzesSFIHBhc293YcSHLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo4NAorbXNnaWQgIkRpcmVjdG9yaWVzIGNhbid0IGJlIGRpdmVydGVkIHdpdGggQjxkcGtnLWRpdmVydD4uIgorbXNnc3RyICJaYSBwb21vY8SFIEI8ZHBrZy1kaXZlcnQ+IG5pZSBtb8W8bmEgbmFkcGlzYcSHIGthdGFsb2fDs3cuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjkwCittc2dpZCAiIgorIkNhcmUgc2hvdWxkIGJlIHRha2VuIHdoZW4gZGl2ZXJ0aW5nIHNoYXJlZCBsaWJyYXJpZXMsIEI8bGRjb25maWc+KDgpICAiCisiY3JlYXRlcyBhIHN5bWJvbGljIGxpbmsgYmFzZWQgb24gdGhlIERUX1NPTkFNRSBmaWVsZCBlbWJlZGRlZCBpbiB0aGUgIgorImxpYnJhcnkuICBCZWNhdXNlIGxkY29uZmlnIGRvZXNuJ3QgaG9ub3VyIGRpdmVydHMgKG9ubHkgZHBrZyBkb2VzKSwgdGhlICIKKyJzeW1saW5rIG1heSBlbmQgdXAgcG9pbnRpbmcgYXQgdGhlIGRpdmVydGVkIGxpYnJhcnksIGlmIGEgZGl2ZXJ0ZWQgbGlicmFyeSAiCisiaGFzIHRoZSBzYW1lIFNPTkFNRSBhcyB0aGUgdW5kaXZlcnRlZCBvbmUuIgorbXNnc3RyICIiCisiTmFsZcW8eSBiecSHIG9zdHJvxbxueW0gcG9kY3phcyBuYWRwaXN5d2FuaWEgYmlibGlvdGVrIHdzcMOzxYJkemllbG9ueWNoLiAiCisiQjxsZGNvbmZpZz4oOCkgdHdvcnp5IGRvd2nEhXphbmlhIHN5bWJvbGljem5lIG5hIHBvZHN0YXdpZSBwb2xhIERUX1NPTkFNRSAiCisidXN0YXdpb25lZ28gdyBiaWJsaW90ZWNlLiBQb25pZXdhxbwgbGRjb25maWcgbmllIGhvbm9ydWplIG5hZHBpc2HFhCAodHlsa28gIgorImRwa2cgdG8gcm9iaSksIGRvd2nEhXphbmllIHN5bWJvbGljem5lIG1vxbxlIHdza2F6eXdhxIcgbmEgbmFkcGlzYW7EhSAiCisiYmlibGlvdGVrxJksIGplxbxlbGkgdGEgbmFkcGlzYW5hIGJpYmxpb3Rla2EgbWEgdGFraWUgc2FtbyBTT05BTUUsIGNvICIKKyJuaWVuYWRwaXNhbmEuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44Ojk1Cittc2dpZCAiIgorIlRvIGRpdmVydCBhbGwgY29waWVzIG9mIGEgSTwvdXNyL2Jpbi9leGFtcGxlPiB0byBJPC91c3IvYmluL2V4YW1wbGUuZm9vPiwgaS4iCisiZS4gZGlyZWN0cyBhbGwgcGFja2FnZXMgcHJvdmlkaW5nIEk8L3Vzci9iaW4vZXhhbXBsZT4gdG8gaW5zdGFsbCBpdCBhcyBJPC8iCisidXNyL2Jpbi9leGFtcGxlLmZvbz4sIHBlcmZvcm1pbmcgdGhlIHJlbmFtZSBpZiByZXF1aXJlZDoiCittc2dzdHIgIiIKKyJBYnkgbmFkcGlzYcSHIHdzenlzdGtpZSBrb3BpZSBwbGlrdSBJPC91c3IvYmluL3ByenlrxYJhZD4gZG8gSTwvdXNyL2Jpbi8iCisicHJ6eWvFgmFkLmJsYT4sIHRqLiBzcG93b2Rvd2HEhywgxbxlIHdzenlzdGtpZSBwYWtpZXR5IGRvc3RhcmN6YWrEhWNlIEk8L3Vzci9iaW4vIgorInByenlrxYJhZD4gemFpbnN0YWx1asSFIHRlbiBwbGlrIGpha28gSTwvdXNyL2Jpbi9wcnp5a8WCYWQuYmxhPiBpIHptaWVuacSFIG5henfEmSAiCisicGxpa3UsIGplxZtsaSBqZXN0IHRvIHd5bWFnYW5lOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo5NworbXNnaWQgImRwa2ctZGl2ZXJ0IC0tZGl2ZXJ0IC91c3IvYmluL2V4YW1wbGUuZm9vIC0tcmVuYW1lIC91c3IvYmluL2V4YW1wbGUiCittc2dzdHIgImRwa2ctZGl2ZXJ0IC0tZGl2ZXJ0IC91c3IvYmluL3ByenlrxYJhZC5ibGEgLS1yZW5hbWUgL3Vzci9iaW4vcHJ6eWvFgmFkIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44Ojk5IGRwa2ctZGl2ZXJ0Ljg6MTA5Cittc2dpZCAiVG8gcmVtb3ZlIHRoYXQgZGl2ZXJzaW9uOiIKK21zZ3N0ciAiQWJ5IHVzdW7EhcSHIHRvIG5hZHBpc2FuaWU6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjEwMQorbXNnaWQgImRwa2ctZGl2ZXJ0IC0tcmVuYW1lIC0tcmVtb3ZlIC91c3IvYmluL2V4YW1wbGUiCittc2dzdHIgImRwa2ctZGl2ZXJ0IC0tcmVuYW1lIC0tcmVtb3ZlIC91c3IvYmluL3ByenlrxYJhZCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODoxMDUKK21zZ2lkICIiCisiVG8gZGl2ZXJ0IGFueSBwYWNrYWdlIHRyeWluZyB0byBpbnN0YWxsIEk8L3Vzci9iaW4vZXhhbXBsZT4gdG8gSTwvdXNyL2Jpbi8iCisiZXhhbXBsZS5mb28+LCBleGNlcHQgeW91ciBvd24gSTx3aWJibGU+IHBhY2thZ2U6IgorbXNnc3RyICIiCisiQWJ5IG5hcGlzYcSHIEk8L3Vzci9iaW4vcHJ6eWvFgmFkPiBqYWtvIEk8L3Vzci9iaW4vcHJ6eWvFgmFkLmJsYT4gd3N6eXN0a2ltICIKKyJwYWtpZXRvbSwgcHLDs2J1asSFY3ltIHphaW5zdGFsb3dhxIcgdGVuIHBsaWssIG9wcsOzY3ogcGFraWV0dSBJPHdpYmJsZT46IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjEwNworbXNnaWQgIiIKKyJkcGtnLWRpdmVydCAtLXBhY2thZ2Ugd2liYmxlIC0tZGl2ZXJ0IC91c3IvYmluL2V4YW1wbGUuZm9vIC0tcmVuYW1lIC91c3IvYmluLyIKKyJleGFtcGxlIgorbXNnc3RyICIiCisiZHBrZy1kaXZlcnQgLS1wYWNrYWdlIHdpYmJsZSAtLWRpdmVydCAvdXNyL2Jpbi9wcnp5a8WCYWQuYmxhIC0tcmVuYW1lIC91c3IvIgorImJpbi9wcnp5a8WCYWQiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6MTExCittc2dpZCAiZHBrZy1kaXZlcnQgLS1wYWNrYWdlIHdpYmJsZSAtLXJlbmFtZSAtLXJlbW92ZSAvdXNyL2Jpbi9leGFtcGxlIgorbXNnc3RyICJkcGtnLWRpdmVydCAtLXBhY2thZ2Ugd2liYmxlIC0tcmVuYW1lIC0tcmVtb3ZlIC91c3IvYmluL3ByenlrxYJhZCIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGl2ZXJ0Ljg6MTEzIGRwa2ctcXVlcnkuMToyMDUgZHBrZy1zdGF0b3ZlcnJpZGUuODo2OSBkcGtnLXRyaWdnZXIuMTo2MQorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM1NQorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPERQS0dfTUFJTlRTQ1JJUFRfQVJDSD4iCittc2dpZCAiQjxEUEtHX0FETUlORElSPiIKK21zZ3N0ciAiQjxEUEtHX01BSU5UU0NSSVBUX0FSQ0g+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjExNyBkcGtnLXF1ZXJ5LjE6MjA5IGRwa2ctc3RhdG92ZXJyaWRlLjg6NzMgZHBrZy10cmlnZ2VyLjE6NjUKK21zZ2lkICIiCisiSWYgc2V0IGFuZCB0aGUgQjwtLWFkbWluZGlyPiBvcHRpb24gaGFzIG5vdCBiZWVuIHNwZWNpZmllZCwgaXQgd2lsbCBiZSB1c2VkICIKKyJhcyB0aGUgZHBrZyBkYXRhIGRpcmVjdG9yeS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODoxMjEKK21zZ2lkICIiCisiSWYgc2V0IGFuZCB0aGUgQjwtLWxvY2FsPiBhbmQgQjwtLXBhY2thZ2U+IG9wdGlvbnMgaGF2ZSBub3QgYmVlbiBzcGVjaWZpZWQsICIKKyJCPGRwa2ctZGl2ZXJ0PiB3aWxsIHVzZSBpdCBhcyB0aGUgcGFja2FnZSBuYW1lLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kaXZlcnQuODoxMjMKKyMsIG5vLXdyYXAKK21zZ2lkICJJPC92YXIvbGliL2Rwa2cvZGl2ZXJzaW9ucz4iCittc2dzdHIgIkk8L3Zhci9saWIvZHBrZy9kaXZlcnNpb25zPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODoxMjgKK21zZ2lkICIiCisiRmlsZSB3aGljaCBjb250YWlucyB0aGUgY3VycmVudCBsaXN0IG9mIGRpdmVyc2lvbnMgb2YgdGhlIHN5c3RlbS4gSXQgaXMgIgorImxvY2F0ZWQgaW4gdGhlIGRwa2cgYWRtaW5pc3RyYXRpb24gZGlyZWN0b3J5LCBhbG9uZyB3aXRoIG90aGVyIGZpbGVzICIKKyJpbXBvcnRhbnQgdG8gZHBrZywgc3VjaCBhcyBJPHN0YXR1cz4gb3IgSTxhdmFpbGFibGU+LiIKK21zZ3N0ciAiIgorIlBsaWsgemF3aWVyYWrEhWN5IG9iZWNuxIUgbGlzdMSZIG5hZHBpc2HFhCBwbGlrw7N3IHcgc3lzdGVtaWUuIFpsb2thbGl6b3dhbnkgamVzdCAiCisidyBrYXRhbG9ndSBhZG1pbmlzdHJhY3lqbnltIGRwa2csIMWCxIVjem5pZSB6IGlubnltaSBwbGlrYW1pIHdhxbxueW1pIGRsYSBkcGtnLCAiCisidGFraW1pIGphayBJPHN0YXR1cz4gbHViIEk8YXZhaWxhYmxlPi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6MTMxCittc2dpZCAiIgorIk5vdGU6IEI8ZHBrZy1kaXZlcnQ+IHByZXNlcnZlcyB0aGUgb2xkIGNvcHkgb2YgdGhpcyBmaWxlLCB3aXRoIGV4dGVuc2lvbiBJPC0iCisib2xkPiwgYmVmb3JlIHJlcGxhY2luZyBpdCB3aXRoIHRoZSBuZXcgb25lLiIKK21zZ3N0ciAiIgorIlV3YWdhOiBwcnplZCB6YXN0xIVwaWVuaWVtIHBsaWt1IG5vd8SFIHdlcnNqxIUsIEI8ZHBrZy1kaXZlcnQ+IHphY2hvd3VqZSBzdGFyxIUgIgorImtvcGnEmSB3IHBsaWt1IHogcm96c3plcnplbmllbSBcIi1vbGRcIi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6MTM3IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0OTYKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMTk5NSBJYW4gSmFja3NvbiIKK21zZ3N0ciAiQ29weXJpZ2h0IFxcKGNvIDE5OTUgSWFuIEphY2tzb24iCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLWdlbmNoYW5nZXMuMToxCisjLCBuby13cmFwCittc2dpZCAiZHBrZy1nZW5jaGFuZ2VzIgorbXNnc3RyICJkcGtnLWdlbmNoYW5nZXMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjQKK21zZ2lkICJkcGtnLWdlbmNoYW5nZXMgLSBnZW5lcmF0ZSBEZWJpYW4gLmNoYW5nZXMgZmlsZXMiCittc2dzdHIgImRwa2ctZ2VuY2hhbmdlcyAtIHR3b3J6eSBwbGlraSAuY2hhbmdlcyIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6OAorIywgZnV6enkKKyN8IG1zZ2lkICJCPGRwa2ctZ2VuY2hhbmdlcz4gW0k8b3B0aW9ucz5dIgorbXNnaWQgIkI8ZHBrZy1nZW5jaGFuZ2VzPiBbSTxvcHRpb24+Li4uXSIKK21zZ3N0ciAiQjxkcGtnLWdlbmNoYW5nZXM+IFtJPG9wY2plPl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjE2Cittc2dpZCAiIgorIkI8ZHBrZy1nZW5jaGFuZ2VzPiByZWFkcyBpbmZvcm1hdGlvbiBmcm9tIGFuIHVucGFja2VkIGFuZCBidWlsdCBEZWJpYW4gIgorInNvdXJjZSB0cmVlIGFuZCBmcm9tIHRoZSBmaWxlcyBpdCBoYXMgZ2VuZXJhdGVkIGFuZCBnZW5lcmF0ZXMgYSBEZWJpYW4gIgorInVwbG9hZCBjb250cm9sIGZpbGUgKEI8LmNoYW5nZXM+IGZpbGUpLiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1nZW5jaGFuZ2VzPiBjenl0YSBpbmZvcm1hY2plIHogcm96cGFrb3dhbmVnbyBpIHpidWRvd2FuZWdvIGRyemV3YSAiCisicGFraWV0dSDFunLDs2TFgm93ZWdvIERlYmlhbmEgb3JheiB6IHBsaWvDs3csIGt0w7NyZSB3eWdlbmVyb3dhxYIsIGkgbmEgaWNoICIKKyJwb2RzdGF3aWUgdHdvcnp5IHBsaWsga29udHJvbG55IHd5ZGFuaWEgKHBsaWsgQjwuY2hhbmdlcz4pLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjE4CisjLCBuby13cmFwCittc2dpZCAiQjwtYj4sIEI8LUI+LCBCPC1BPiIKK21zZ3N0ciAiQjwtYj4sIEI8LUI+LCBCPC1BPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6MjcKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRoYXQgYSBiaW5hcnktb25seSBidWlsZCBpcyB0YWtpbmcgcGxhY2UgKG5vIHNvdXJjZSBmaWxlcyBhcmUgdG8gIgorImJlIGluY2x1ZGVkKS4gVGhlcmUncyBubyBkaXN0aW5jdGlvbiBiZXR3ZWVuIEI8LWI+LCBCPC1CPiBhbmQgQjwtQT4sIHRoZSAiCisicHJvZHVjZWQgQjwuY2hhbmdlcz4gZmlsZSB3aWxsIGluY2x1ZGUgd2hhdGV2ZXIgZmlsZXMgd2VyZSBjcmVhdGVkIGJ5IHRoZSAiCisiQjxiaW5hcnktKj4gdGFyZ2V0KHMpIG9mIHRoZSBwYWNrYWdlIGJlaW5nIGJ1aWx0LiIKK21zZ3N0ciAiIgorIk9rcmXFm2xhLCDFvGUgd3lrb255d2FuZSBqZXN0IGJ1ZG93YW5pZSB0eWxrbyBwYWtpZXTDs3cgYmluYXJueWNoIChiZXogIgorInfFgsSFY3phbmlhIGpha2ljaGtvbHdpZWsgcGxpa8OzdyDFunLDs2TFgm93eWNoKS4gTmllIG1hIHLDs8W8bmljeSBtacSZZHp5IEI8LWI+LCBCPC0iCisiQj4gaSBCPC1BPiwgd3lnZW5lcm93YW55IHBsaWsgQjwuY2hhbmdlcz4gYsSZZHppZSB6YXdpZXJhxIcgd3N6eXN0a2llIHBsaWtpICIKKyJ1dHdvcnpvbmUgcHJ6ZXogcmVndcWCeSBCPGJpbmFyeS0qPiBidWRvd2FueWNoIHfFgmHFm25pZSBwYWtpZXTDs3cuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMTozMQorbXNnaWQgIiIKKyJTcGVjaWZpZXMgdGhhdCBvbmx5IHRoZSBzb3VyY2Ugc2hvdWxkIGJlIHVwbG9hZGVkIChubyBiaW5hcnkgcGFja2FnZXMgd2lsbCAiCisiYmUgaW5jbHVkZWQpLiIKK21zZ3N0ciAiIgorIk9rcmXFm2xhLCDFvGUgdHlsa28gxbpyw7NkxYJhIGLEmWTEhSBkb8WCxIVjem9uZSBkbyB3eWRhbmlhIChiZXogxbxhZG55Y2ggcGFraWV0w7N3ICIKKyJiaW5hcm55Y2gpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6MzYKK21zZ2lkICIiCisiVGhlIEI8LXM+STx4PiBvcHRpb25zIGNvbnRyb2wgd2hldGhlciB0aGUgb3JpZ2luYWwgc291cmNlIGFyY2hpdmUgaXMgIgorImluY2x1ZGVkIGluIHRoZSB1cGxvYWQgaWYgYW55IHNvdXJjZSBpcyBiZWluZyBnZW5lcmF0ZWQgKGkuZS4gIEI8LWI+IG9yIEI8LSIKKyJCPiBoYXZlbid0IGJlZW4gdXNlZCkuIgorbXNnc3RyICIiCisiT3BjamUgQjwtcz5JPHg+IG9rcmXFm2xhasSFLCBjenkgZG8gd3lkYW5pYSBkb8WCxIVjemFuZSBzxIUgb3J5Z2luYWxuZSBwbGlraSAiCisixbpyw7NkxYJvd2UsIGplxbxlbGkgem9zdGFuaWUgd3lnZW5lcm93YW55IGNob8SHIGplZGVuIHogbmljaCAodGouIG5pZSB1xbx5dG8gIgorIm9wY2ppIEI8LWI+IGx1YiBCPC1CPikuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMTo0MgorbXNnaWQgIiIKKyJCeSBkZWZhdWx0LCBvciBpZiBzcGVjaWZpZWQsIHRoZSBvcmlnaW5hbCBzb3VyY2Ugd2lsbCBiZSBpbmNsdWRlZCBvbmx5IGlmICIKKyJ0aGUgdXBzdHJlYW0gdmVyc2lvbiBudW1iZXIgKHRoZSB2ZXJzaW9uIHdpdGhvdXQgZXBvY2ggYW5kIHdpdGhvdXQgRGViaWFuICIKKyJyZXZpc2lvbikgZGlmZmVycyBmcm9tIHRoZSB1cHN0cmVhbSB2ZXJzaW9uIG51bWJlciBvZiB0aGUgcHJldmlvdXMgY2hhbmdlbG9nICIKKyJlbnRyeS4iCittc2dzdHIgIiIKKyJEb215xZtsbmllIGx1YiBqZcWbbGkgdG8gb2tyZcWbbG9ubywgb3J5Z2luYWxuZSDFunLDs2TFgmEgYsSZZMSFIGRvxYLEhWN6b25lIHR5bGtvICIKKyJqZcWbbGkgbnVtZXIgb3J5Z2luYWxuZWogd2Vyc2ppIGF1dG9yYSBwcm9ncmFtdSAodHpuLiB3ZXJzamEgYmV6IGVwb2tpIGkgYmV6ICIKKyJudW1lcnUgcmV3aXpqaSBEZWJpYW5hKSByw7PFvG5pIHNpxJkgb2QgbnVtZXJ1IHdlcnNqaSBhdXRvcmEgcHJvZ3JhbXUgeiAiCisicG9wcnplZG5pZWdvIHdwaXN1IGR6aWVubmlrYSB6bWlhbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjQ1Cittc2dpZCAiRm9yY2VzIHRoZSBpbmNsdXNpb24gb2YgdGhlIG9yaWdpbmFsIHNvdXJjZS4iCittc2dzdHIgIld5bXVzemEgZG/FgsSFY3plbmllIG9yeWdpbmFsbnljaCDFunLDs2RlxYIuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMTo0OAorbXNnaWQgIkZvcmNlcyB0aGUgZXhjbHVzaW9uIG9mIHRoZSBvcmlnaW5hbCBzb3VyY2UgYW5kIGluY2x1ZGVzIG9ubHkgdGhlIGRpZmYuIgorbXNnc3RyICIiCisiV3ltdXN6YSBwb21pbmnEmWNpZSBvcnlnaW5hbG55Y2ggxbpyw7NkZcWCIGkgZG/FgsSFY3plbmllIHR5bGtvIHBsaWt1IHLDs8W8bmljICIKKyIoZGlmZikuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMTo1NAorbXNnaWQgIiIKKyJDYXVzZXMgY2hhbmdlbG9nIGluZm9ybWF0aW9uIGZyb20gYWxsIHZlcnNpb25zIHN0cmljdGx5IGxhdGVyIHRoYW4gIgorIkk8dmVyc2lvbj4gdG8gYmUgdXNlZC4iCittc2dzdHIgIiIKKyJQb3dvZHVqZSwgxbxlIGLEmWTEhSB1xbx5d2FuZSBpbmZvcm1hY2plIHogZHppZW5uaWthIHptaWFuIHplIHdzenlzdGtpY2ggd2Vyc2ppICIKKyJ3acSZa3N6eWNoIG5pxbwgSTx3ZXJzamE+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6NjAKK21zZ2lkICIiCisiUmVhZCB0aGUgZGVzY3JpcHRpb24gb2YgdGhlIGNoYW5nZXMgZnJvbSB0aGUgZmlsZSBJPGNoYW5nZXNkZXNjcmlwdGlvbj4gIgorInJhdGhlciB0aGFuIHVzaW5nIHRoZSBpbmZvcm1hdGlvbiBmcm9tIHRoZSBzb3VyY2UgdHJlZSdzIGNoYW5nZWxvZyBmaWxlLiIKK21zZ3N0ciAiIgorIkN6eXRhIG9waXMgem1pYW4geiBwbGlrdSBJPG9waXNfem1pYW4+LCB6YW1pYXN0IHXFvHl3YcSHIGluZm9ybWFjamkgeiAiCisiZHppZW5uaWthIHptaWFuIHoga2F0YWxvZ3UgemUgxbpyw7NkxYJhbWkuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMTo2NgorbXNnaWQgIiIKKyJVc2UgSTxtYWludGFpbmVyYWRkcmVzcz4gYXMgdGhlIG5hbWUgYW5kIGVtYWlsIGFkZHJlc3Mgb2YgdGhlIG1haW50YWluZXIgZm9yICIKKyJ0aGlzIHBhY2thZ2UsIHJhdGhlciB0aGFuIHVzaW5nIHRoZSBpbmZvcm1hdGlvbiBmcm9tIHRoZSBzb3VyY2UgdHJlZSdzICIKKyJjb250cm9sIGZpbGUuIgorbXNnc3RyICIiCisiVcW8eXdhIEk8YWRyZXN1X29waWVrdW5hPiBqYWtvIG5hend5IGkgYWRyZXN1IGUtbWFpbCBvcGlla3VuYSB0ZWdvIHBha2lldHUsICIKKyJ6YW1pYXN0IHBvYmllcmHEhyB0ZSB3YXJ0b8WbY2kgeiBwbGlrdSBrb250cm9sbmVnbyB6IGthdGFsb2d1IHplIMW6csOzZMWCYW1pLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6NzIKK21zZ2lkICIiCisiVXNlIEk8bWFpbnRhaW5lcmFkZHJlc3M+IGFzIHRoZSBuYW1lIGFuZCBlbWFpbCBhZGRyZXNzIG9mIHRoZSBtYWludGFpbmVyIGZvciAiCisidGhpcyB1cGxvYWQsIHJhdGhlciB0aGFuIHVzaW5nIHRoZSBpbmZvcm1hdGlvbiBmcm9tIHRoZSBzb3VyY2UgdHJlZSdzICIKKyJjaGFuZ2Vsb2cuIgorbXNnc3RyICIiCisiVcW8eXdhIEk8YWRyZXN1X29waWVrdW5hPiBqYWtvIG5hend5IGkgYWRyZXN1IGUtbWFpbCBvcGlla3VuYSB0ZWdvIHd5ZGFuaWEsICIKKyJ6YW1pYXN0IHBvYmllcmHEhyB0ZSB3YXJ0b8WbY2kgeiBkemllbm5pa2Egem1pYW4geiBrYXRhbG9ndSB6ZSDFunLDs2TFgmFtaS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbmNoYW5nZXMuMTo3MiBkcGtnLWdlbmNvbnRyb2wuMTo0MSBkcGtnLXNvdXJjZS4xOjEyNworIywgbm8td3JhcAorbXNnaWQgIkI8LVY+STxuYW1lPkI8PT5JPHZhbHVlPiIKK21zZ3N0ciAiQjwtVj5JPG5hendhPkI8PT5JPHdhcnRvxZvEhz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjc2IGRwa2ctc291cmNlLjE6MTMxCittc2dpZCAiIgorIlNldCBhbiBvdXRwdXQgc3Vic3RpdHV0aW9uIHZhcmlhYmxlLiAgU2VlIEI8ZGViLXN1YnN0dmFycz4oNSkgZm9yIGEgIgorImRpc2N1c3Npb24gb2Ygb3V0cHV0IHN1YnN0aXR1dGlvbi4iCittc2dzdHIgIiIKKyJVc3Rhd2lhIHptaWVubsSFIHBvZHN0YXdpZW5pYSB3eWrFm2NpYS4gU3pjemVnw7PFgm93eSBvcGlzIHBvZHN0YXdpYW5pYSAiCisiem1pZW5ueWNoIHd5asWbY2lvd3ljaCB6bmFqZHVqZSBzacSZIHcgQjxkZWItc3Vic3R2YXJzPig1KS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbmNoYW5nZXMuMTo3NiBkcGtnLWdlbmNvbnRyb2wuMTo0NSBkcGtnLXNobGliZGVwcy4xOjE2OQorIzogZHBrZy1zb3VyY2UuMToxMzEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1UPkk8c3Vic3R2YXJzZmlsZT4iCittc2dzdHIgIkI8LVQ+STxwbGlrX3ptaWVubnljaF9wb2RzdD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjg2CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJSZWFkIHN1YnN0aXR1dGlvbiB2YXJpYWJsZXMgaW4gSTxzdWJzdHZhcnNmaWxlPjsgdGhlIGRlZmF1bHQgaXMgQjxkZWJpYW4vIgorI3wgInN1YnN0dmFycz4uICBObyB2YXJpYWJsZSBzdWJzdGl0dXRpb24gaXMgZG9uZSBvbiBhbnkgb2YgdGhlIGZpZWxkcyB0aGF0ICIKKyN8ICJhcmUgb3V0cHV0LCBob3dldmVyIHRoZSBzcGVjaWFsIHZhcmlhYmxlIEk8Rm9ybWF0PiB3aWxsIG92ZXJyaWRlIHRoZSAiCisjfCAiZmllbGQgb2YgdGhlIHNhbWUgbmFtZS4iCittc2dpZCAiIgorIlJlYWQgc3Vic3RpdHV0aW9uIHZhcmlhYmxlcyBpbiBJPHN1YnN0dmFyc2ZpbGU+OyB0aGUgZGVmYXVsdCBpcyBCPGRlYmlhbi8iCisic3Vic3R2YXJzPi4gIE5vIHZhcmlhYmxlIHN1YnN0aXR1dGlvbiBpcyBkb25lIG9uIGFueSBvZiB0aGUgZmllbGRzIHRoYXQgYXJlICIKKyJvdXRwdXQsIGhvd2V2ZXIgdGhlIHNwZWNpYWwgdmFyaWFibGUgSTxGb3JtYXQ+IHdpbGwgb3ZlcnJpZGUgdGhlIGZpZWxkIG9mICIKKyJ0aGUgc2FtZSBuYW1lLiBUaGlzIG9wdGlvbiBjYW4gYmUgdXNlZCBtdWx0aXBsZSB0aW1lcyB0byByZWFkIHN1YnN0aXR1dGlvbiAiCisidmFyaWFibGVzIGZyb20gbXVsdGlwbGUgZmlsZXMuIgorbXNnc3RyICIiCisiT2Rjenl0dWplIHptaWVubmUgcG9kc3Rhd2lhbmlhIHogSTxwbGlrdV96bWllbm55Y2hfcG9kc3Q+OyBkb215xZtsbmllIGplc3QgdG8gIgorIkI8ZGViaWFuL3N1YnN0dmFycz4uIE5pZSBzxIUgcm9iaW9uZSDFvGFkbmUgcG9kc3Rhd2lhbmlhIG5hIMW8YWRueW0geiBww7NsLCAiCisia3TDs3JlIHPEhSB3eXBpc3l3YW5lIG5hIHd5asWbY2l1LCBqZWRuYWvFvGUgc3BlY2phbG5hIHptaWVubmEgSTxGb3JtYXQ+ICIKKyJuYWRwaXN6ZSBwb2xlIG8gdGVqIHNhbWVqIG5hendpZS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbmNoYW5nZXMuMTo4NyBkcGtnLWdlbmNvbnRyb2wuMTo1MyBkcGtnLXNvdXJjZS4xOjEzNworIywgbm8td3JhcAorbXNnaWQgIkI8LUQ+STxmaWVsZD5CPD0+STx2YWx1ZT4iCittc2dzdHIgIkI8LUQ+STxwb2xlPkI8PT5JPHdhcnRvxZvEhz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjkwIGRwa2ctZ2VuY29udHJvbC4xOjU2IGRwa2ctc291cmNlLjE6MTQwCittc2dpZCAiT3ZlcnJpZGUgb3IgYWRkIGFuIG91dHB1dCBjb250cm9sIGZpbGUgZmllbGQuIgorbXNnc3RyICJOYWRwaXN1amUgbHViIGRvZGFqZSB3eWrFm2Npb3dlIHBvbGUgcGxpa3Uga29udHJvbG5lZ28uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6OTAgZHBrZy1nZW5jb250cm9sLjE6NTYgZHBrZy1zb3VyY2UuMToxNDAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1VPkk8ZmllbGQ+IgorbXNnc3RyICJCPC1VPkk8cG9sZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjkzIGRwa2ctZ2VuY29udHJvbC4xOjU5IGRwa2ctc291cmNlLjE6MTQzCittc2dpZCAiUmVtb3ZlIGFuIG91dHB1dCBjb250cm9sIGZpbGUgZmllbGQuIgorbXNnc3RyICJVc3V3YSB3eWrFm2Npb3dlIHBvbGUgcGxpa3Uga29udHJvbG5lZ28uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6OTMgZHBrZy1nZW5jb250cm9sLjE6NTkgZHBrZy1zb3VyY2UuMToxMDQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1jPkk8Y29udHJvbGZpbGU+IgorbXNnc3RyICJCPC1jPkk8cGxpa19rb250cm9sbnk+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMTo5OCBkcGtnLWdlbmNvbnRyb2wuMTo2NAorbXNnaWQgIiIKKyJTcGVjaWZpZXMgdGhlIG1haW4gc291cmNlIGNvbnRyb2wgZmlsZSB0byByZWFkIGluZm9ybWF0aW9uIGZyb20uIFRoZSBkZWZhdWx0ICIKKyJpcyBCPGRlYmlhbi9jb250cm9sPi4iCittc2dzdHIgIiIKKyJPa3JlxZtsYSBnxYLDs3dueSBwbGlrIGtvbnRyb2xueSwgeiBrdMOzcmVnbyBixJlkxIUgY3p5dGFuZSBpbmZvcm1hY2plLiBEb215xZtsbmllICIKKyJqZXN0IHRvIEI8ZGViaWFuL2NvbnRyb2w+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjk4IGRwa2ctZ2VuY29udHJvbC4xOjY0IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxNgorIzogZHBrZy1zb3VyY2UuMToxMTEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1sPkk8Y2hhbmdlbG9nZmlsZT4iCittc2dzdHIgIkI8LWw+STxkemllbm5pa196bWlhbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjEwMyBkcGtnLWdlbmNvbnRyb2wuMTo2OSBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MjEKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRoZSBjaGFuZ2UgbG9nIGZpbGUgdG8gcmVhZCBpbmZvcm1hdGlvbiBmcm9tLiBUaGUgZGVmYXVsdCBpcyAiCisiQjxkZWJpYW4vY2hhbmdlbG9nPi4iCittc2dzdHIgIiIKKyJPa3JlxZtsYSBkemllbm5payB6bWlhbiwgeiBrdMOzcmVnbyBixJlkxIUgY3p5dGFuZSBpbmZvcm1hY2plLiBEb215xZtsbnltIHBsaWtpZW0gIgorImplc3QgQjxkZWJpYW4vY2hhbmdlbG9nPi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjEwNworbXNnaWQgIiIKKyJSZWFkIHRoZSBsaXN0IG9mIGZpbGVzIHRvIGJlIHVwbG9hZGVkIGhlcmUsIHJhdGhlciB0aGFuIHVzaW5nIEI8ZGViaWFuLyIKKyJmaWxlcz4uIgorbXNnc3RyICIiCisiQ3p5dGEgeiB0ZWdvIHBsaWt1IGxpc3TEmSBwbGlrw7N3IGRvIHd5ZGFuaWEgemFtaWFzdCB1xbx5d2HEhyBCPGRlYmlhbi9maWxlcz4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6MTA3IGRwa2ctZ2VuY29udHJvbC4xOjczIGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToyMQorIzogZHBrZy1zb3VyY2UuMToxMTgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1GPkk8Y2hhbmdlbG9nZm9ybWF0PiIKK21zZ3N0ciAiQjwtRj5JPGZvcm1hdF9kemllbm5pa2Ffem1pYW4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMToxMTIgZHBrZy1nZW5jb250cm9sLjE6NzggZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjI2CisjOiBkcGtnLXNvdXJjZS4xOjEyMworbXNnaWQgIiIKKyJTcGVjaWZpZXMgdGhlIGZvcm1hdCBvZiB0aGUgY2hhbmdlbG9nLiBCeSBkZWZhdWx0IHRoZSBmb3JtYXQgaXMgcmVhZCBmcm9tIGEgIgorInNwZWNpYWwgbGluZSBuZWFyIHRoZSBib3R0b20gb2YgdGhlIGNoYW5nZWxvZyBvciBmYWlsaW5nIHRoYXQgZGVmYXVsdHMgdG8gIgorInRoZSBkZWJpYW4gc3RhbmRhcmQgZm9ybWF0LiIKK21zZ3N0ciAiIgorIk9rcmXFm2xhIGZvcm1hdCBkemllbm5pa2Egem1pYW4uIERvbXnFm2xuaWUgZm9ybWF0IGplc3QgY3p5dGFueSB6ZSBzcGVjamFsbmVqICIKKyJsaW5paSB6bmFqZHVqxIVjZWogc2nEmSBwcnp5IGtvxYRjdSBwbGlrdSBsdWIgLSBqZcWbbGkgdGFrYSBsaW5pYSBuaWUgaXN0bmllamUgLSAiCisidcW8eXdhbnkgamVzdCBzdGFuZGFyZG93eSBmb3JtYXQgRGViaWFuYS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbmNoYW5nZXMuMToxMTIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC11Pkk8dXBsb2FkZmlsZXNkaXI+IgorbXNnc3RyICJCPC11Pkk8a2F0YWxvZ196X3BsaWthbWlfd3lkYW5pYT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjEyMworbXNnaWQgIiIKKyJMb29rIGZvciB0aGUgZmlsZXMgdG8gYmUgdXBsb2FkZWQgaW4gSTx1cGxvYWRmaWxlc2Rpcj4gcmF0aGVyIHRoYW4gQjwuLj4gIgorIihCPGRwa2ctZ2VuY2hhbmdlcz4gbmVlZHMgdG8gZmluZCB0aGVzZSBmaWxlcyBzbyB0aGF0IGl0IGNhbiBpbmNsdWRlIHRoZWlyICIKKyJzaXplcyBhbmQgY2hlY2tzdW1zIGluIHRoZSBCPC5jaGFuZ2VzPiBmaWxlKS4iCittc2dzdHIgIiIKKyJQb3N6dWt1amUgcGxpa8Ozdywga3TDs3JlIG1hasSFIGJ5xIcgZG/FgsSFY3pvbmUgZG8gd3lkYW5pYSB3ICIKKyJJPGthdGFsb2d1X3pfcGxpa2FtaV93eWRhbmlhPiB6YW1pYXN0IHcga2F0YWxvZ3UgQjwuLj4gKEI8ZHBrZy1nZW5jaGFuZ2VzPiAiCisibXVzaSB6bmFsZcW6xIcgdGUgcGxpa2ksIHRhayDFvGVieSBtw7NjIHphcGlzYcSHIGljaCByb3ptaWFyeSBvcmF6IHN1bXkga29udHJvbG5lICIKKyJ3IHBsaWt1IEI8LmNoYW5nZXM+KS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbmNoYW5nZXMuMToxMjMgZHBrZy1nZW5zeW1ib2xzLjE6NDIxCisjLCBuby13cmFwCittc2dpZCAiQjwtcT4iCittc2dzdHIgIkI8LXE+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMToxMzEKK21zZ2lkICIiCisiVXN1YWxseSBCPGRwa2ctZ2VuY2hhbmdlcz4gd2lsbCBwcm9kdWNlIGluZm9ybWF0aXZlIG1lc3NhZ2VzIG9uIHN0YW5kYXJkICIKKyJlcnJvciwgZm9yIGV4YW1wbGUgYWJvdXQgaG93IG1hbnkgb2YgdGhlIHBhY2thZ2UncyBzb3VyY2UgZmlsZXMgYXJlIGJlaW5nICIKKyJ1cGxvYWRlZC4gIEI8LXE+IHN1cHByZXNzZXMgdGhlc2UgbWVzc2FnZXMuIgorbXNnc3RyICIiCisiWmF6d3ljemFqIEI8ZHBrZy1nZW5jaGFuZ2VzPiBuYSBzdGFuZGFyZG93eW0gd3lqxZtjaXUgYsWCxJlkw7N3IHd5cGlzemUgIgorImtvbXVuaWthdHkgaW5mb3JtdWrEhWNlIG5hIHByenlrxYJhZCBvIGxpY3piaWUgcGxpa8OzdyB3eWdlbmVyb3dhbnljaCAiCisixbpyw7NkxYJvd3ljaCBwYWtpZXR1LiBCPC1xPiBwb3dzdHJ6eW11amUgd3lwaXN5d2FuaWUgdGFraWNoIGtvbXVuaWthdMOzdyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6MTQ3Cittc2dpZCAiIgorIlRoZSBsaXN0IG9mIGdlbmVyYXRlZCBmaWxlcyB3aGljaCBhcmUgcGFydCBvZiB0aGUgdXBsb2FkIGJlaW5nIHByZXBhcmVkLiAgIgorIkI8ZHBrZy1nZW5jaGFuZ2VzPiByZWFkcyB0aGUgZGF0YSBoZXJlIHdoZW4gcHJvZHVjaW5nIGEgQjwuY2hhbmdlcz4gZmlsZS4iCittc2dzdHIgIiIKKyJMaXN0YSB3eWdlbmVyb3dhbnljaCBwbGlrw7N3LCBrdMOzcmUgc8SFIGN6xJnFm2NpxIUgcHJ6eWdvdG93eXdhbmVnbyB3eWRhbmlhLiAiCisiQjxkcGtnLWdlbmNoYW5nZXM+IGN6eXRhIHN0xIVkIGRhbmUgcG9kY3phcyB0d29yemVuaWEgcGxpa3UgQjwuY2hhbmdlcz4uIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1nZW5jb250cm9sLjE6MQorIywgbm8td3JhcAorbXNnaWQgImRwa2ctZ2VuY29udHJvbCIKK21zZ3N0ciAiZHBrZy1nZW5jb250cm9sIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMTo0Cittc2dpZCAiZHBrZy1nZW5jb250cm9sIC0gZ2VuZXJhdGUgRGViaWFuIGNvbnRyb2wgZmlsZXMiCittc2dzdHIgImRwa2ctZ2VuY29udHJvbCAtIHR3b3J6eSBwbGlraSBrb250cm9sbmUgRGViaWFuYSIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jb250cm9sLjE6OAorIywgZnV6enkKKyN8IG1zZ2lkICJCPGRwa2ctZ2VuY29udHJvbD4gW0k8b3B0aW9ucz5dIgorbXNnaWQgIkI8ZHBrZy1nZW5jb250cm9sPiBbSTxvcHRpb24+Li4uXSIKK21zZ3N0ciAiQjxkcGtnLWdlbmNvbnRyb2w+IFtJPG9wY2plPl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjE0Cittc2dpZCAiIgorIkI8ZHBrZy1nZW5jb250cm9sPiByZWFkcyBpbmZvcm1hdGlvbiBmcm9tIGFuIHVucGFja2VkIERlYmlhbiBzb3VyY2UgdHJlZSBhbmQgIgorImdlbmVyYXRlcyBhIGJpbmFyeSBwYWNrYWdlIGNvbnRyb2wgZmlsZSAod2hpY2ggZGVmYXVsdHMgdG8gZGViaWFuL3RtcC9ERUJJQU4vIgorImNvbnRyb2wpOyBkdXJpbmcgdGhpcyBwcm9jZXNzIGl0IHdpbGwgc2ltcGxpZnkgdGhlIHJlbGF0aW9uIGZpZWxkcy4iCittc2dzdHIgIiIKKyJCPGRwa2ctZ2VuY29udHJvbD4gY3p5dGEgaW5mb3JtYWNqZSB6IHJvenBha293YW5lZ28gZHJ6ZXdhIMW6csOzZGXFgiBwYWtpZXR1ICIKKyJEZWJpYW5hIGkgZ2VuZXJ1amUgcGxpayBrb250cm9sbnkgcGFraWV0dSBiaW5hcm5lZ28gKGRvbXnFm2xuaWUgamVzdCB0byAiCisiZGViaWFuL3RtcC9ERUJJQU4vY29udHJvbCksIHVwcmFzemN6YWrEhWMgcG9kY3phcyB0ZWdvIHByb2Nlc3UgcG9sYSBkb3R5Y3rEhWNlICIKKyJ6YWxlxbxub8WbY2kuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMToyNworbXNnaWQgIiIKKyJUaHVzIEk8UHJlLURlcGVuZHM+LCBJPERlcGVuZHM+LCBJPFJlY29tbWVuZHM+IGFuZCBJPFN1Z2dlc3RzPiBhcmUgIgorInNpbXBsaWZpZWQgaW4gdGhpcyBvcmRlciBieSByZW1vdmluZyBkZXBlbmRlbmNpZXMgd2hpY2ggYXJlIGtub3duIHRvIGJlIHRydWUgIgorImFjY29yZGluZyB0byB0aGUgc3Ryb25nZXIgZGVwZW5kZW5jaWVzIGFscmVhZHkgcGFyc2VkLiBJdCB3aWxsIGFsc28gcmVtb3ZlICIKKyJhbnkgc2VsZi1kZXBlbmRlbmN5IChpbiBmYWN0IGl0IHdpbGwgcmVtb3ZlIGFueSBkZXBlbmRlbmN5IHdoaWNoIGV2YWx1YXRlcyAiCisidG8gdHJ1ZSBnaXZlbiB0aGUgY3VycmVudCB2ZXJzaW9uIG9mIHRoZSBwYWNrYWdlIGFzIGluc3RhbGxlZCkuIExvZ2ljYWxseSBpdCAiCisia2VlcHMgdGhlIGludGVyc2VjdGlvbiBvZiBtdWx0aXBsZSBkZXBlbmRlbmNpZXMgb24gdGhlIHNhbWUgcGFja2FnZS4gVGhlICIKKyJvcmRlciBvZiBkZXBlbmRlbmNpZXMgaXMgcHJlc2VydmVkIGFzIGJlc3QgYXMgcG9zc2libGU6IGlmIGFueSBkZXBlbmRlbmN5ICIKKyJtdXN0IGJlIGRpc2NhcmRlZCBkdWUgdG8gYW5vdGhlciBkZXBlbmRlbmN5IGFwcGVhcmluZyBmdXJ0aGVyIGluIHRoZSBmaWVsZCwgIgorInRoZSBzdXBlcnNlZGluZyBkZXBlbmRlbmN5IHdpbGwgdGFrZSB0aGUgcGxhY2Ugb2YgdGhlIGRpc2NhcmRlZCBvbmUuIgorbXNnc3RyICIiCisiUG9sYSBJPFByZS1EZXBlbmRzPiwgSTxEZXBlbmRzPiwgSTxSZWNvbW1lbmRzPiBvcmF6IEk8U3VnZ2VzdHM+IHPEhSAiCisidXByYXN6Y3phbmUgdyB0ZWogd8WCYcWbbmllIGtvbGVqbm/Fm2NpIHByemV6IHVzdXdhbmllIHphbGXFvG5vxZtjaSBvIGt0w7NyeWNoICIKKyJ3aWFkb21vLCDFvGUgc8SFIHByYXdkeml3ZSwgcG9uaWV3YcW8IHd5bmlrYWrEhSB6IGlubnljaCwgcHJ6ZXR3b3J6b255Y2gganXFvCAiCisibW9jbmllanN6eWNoIHphbGXFvG5vxZtjaS4gVXN1bmnEmXRlIHRha8W8ZSBixJlkxIUgd3N6ZWxraWUgemFsZcW8bm/Fm2NpIHBha2lldHUgb2QgIgorInNhbWVnbyBzaWViaWUgKGRva8WCYWRuaWVqOiB1c3VuacSZdGUgYsSZZMSFIHdzenlzdGtpZSB6YWxlxbxub8WbY2ksIGt0w7NyZSBixJlkxIUgIgorInByYXdkeml3ZSBwbyB6YWluc3RhbG93YW5pdSBiaWXFvMSFY2VqIHdlcnNqaSBwYWtpZXR1KS4gTcOzd2nEhWMgasSZenlraWVtICIKKyJsb2dpa2ksIHphY2hvd2FuYSBixJlkemllIGN6xJnFm8SHIHdzcMOzbG5hIHplIHpiaW9ydSB3c3p5c3RraWNoIHphbGXFvG5vxZtjaSAiCisiZG90eWN6xIVjeWNoIHRlZ28gc2FtZWdvIHBha2lldHUuIFBvcnrEhWRlayB6YWxlxbxub8WbY2kgamVzdCB6YWNob3d5d2FueSB3ICIKKyJ0YWtpbSBzdG9wbml1LCB3IGpha2ltIGplc3QgdG8gdHlsa28gbW/FvGxpd2U6IGplxbxlbGkgamFrYcWbIHphbGXFvG5vxZvEhyBtdXNpICIKKyJiecSHIHVzdW5pxJl0YSB6IHBvd29kdSBpbm5laiB6YWxlxbxub8WbY2kgd3lzdMSZcHVqxIVjZWogZGFsZWogdyBkYW55bSBwb2x1LCAiCisid3lwaWVyYWrEhWNhIHphbGXFvG5vxZvEhyB6YWptaWUgbWllanNjZSB0ZWogdXN1d2FuZWouIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMTozMgorbXNnaWQgIiIKKyJUaGUgb3RoZXIgcmVsYXRpb24gZmllbGRzIChJPEVuaGFuY2VzPiwgSTxDb25mbGljdHM+LCBJPEJyZWFrcz4sIEk8UmVwbGFjZXM+ICIKKyJhbmQgSTxQcm92aWRlcz4pICBhcmUgYWxzbyBzaW1wbGlmaWVkIGluZGl2aWR1YWxseSBieSBjb21wdXRpbmcgdGhlIHVuaW9uIG9mICIKKyJ0aGUgdmFyaW91cyBkZXBlbmRlbmNpZXMgd2hlbiBhIHBhY2thZ2UgaXMgbGlzdGVkIG11bHRpcGxlIHRpbWVzIGluIHRoZSAiCisiZmllbGQuIgorbXNnc3RyICIiCisiUG96b3N0YcWCZSBwb2xhIHJlbGFjeWpuZSAoSTxFbmhhbmNlcz4sIEk8Q29uZmxpY3RzPiwgSTxCcmVha3M+LCBJPFJlcGxhY2VzPiAiCisib3JheiBJPFByb3ZpZGVzPikgdGFrxbxlIHPEhSBpbmR5d2lkdWFsbmllIHVwcmFzemN6YW5lIHByemV6IHd5bGljemFuaWUgc3VteSAiCisicsOzxbxueWNoIHphbGXFvG5vxZtjaSwgamXFm2xpIHcgZGFueW0gcG9sdSBwYWtpZXQgamVzdCB3eW1pZW5pb255IHdpZWxlIHJhenkuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMTozNgorbXNnaWQgIiIKKyJCPGRwa2ctZ2VuY29udHJvbD4gYWxzbyBhZGRzIGFuIGVudHJ5IGZvciB0aGUgYmluYXJ5IHBhY2thZ2UgdG8gQjxkZWJpYW4vIgorImZpbGVzPi4iCittc2dzdHIgIiIKKyJCPGRwa2ctZ2VuY29udHJvbD4gZG9kYWplIHBvbmFkdG8gd3BpcyBkb3R5Y3rEhWN5IHBha2lldHUgYmluYXJuZWdvIGRvICIKKyJCPGRlYmlhbi9maWxlcz4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMTo0MQorbXNnaWQgIlNldHMgdGhlIHZlcnNpb24gbnVtYmVyIG9mIHRoZSBiaW5hcnkgcGFja2FnZSB3aGljaCB3aWxsIGJlIGdlbmVyYXRlZC4iCittc2dzdHIgIlVzdGF3aWEgbnVtZXIgd2Vyc2ppIGdlbmVyb3dhbmVnbyBwYWtpZXR1IGJpbmFybmVnby4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjQ1Cittc2dpZCAiIgorIlNldCBhbiBvdXRwdXQgc3Vic3RpdHV0aW9uIHZhcmlhYmxlLiBTZWUgQjxkZWItc3Vic3R2YXJzPig1KSBmb3IgZGlzY3Vzc2lvbiAiCisib2Ygb3V0cHV0IHN1YnN0aXR1dGlvbi4iCittc2dzdHIgIiIKKyJVc3Rhd2lhIHptaWVubsSFIHBvZHN0YXdpZW5pYSB3eWrFm2NpYS4gU3pjemVnw7PFgm93eSBvcGlzIHBvZHN0YXdpYW5pYSAiCisiem1pZW5ueWNoIHd5asWbY2lvd3ljaCB6bmFqZHVqZSBzacSZIHcgQjxkZWItc3Vic3R2YXJzPig1KS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjUzCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJSZWFkIHN1YnN0aXR1dGlvbiB2YXJpYWJsZXMgaW4gSTxzdWJzdHZhcnNmaWxlPjsgdGhlIGRlZmF1bHQgaXMgQjxkZWJpYW4vIgorI3wgInN1YnN0dmFycz4uICBObyB2YXJpYWJsZSBzdWJzdGl0dXRpb24gaXMgZG9uZSBvbiBhbnkgb2YgdGhlIGZpZWxkcyB0aGF0ICIKKyN8ICJhcmUgb3V0cHV0LCBob3dldmVyIHRoZSBzcGVjaWFsIHZhcmlhYmxlIEk8Rm9ybWF0PiB3aWxsIG92ZXJyaWRlIHRoZSAiCisjfCAiZmllbGQgb2YgdGhlIHNhbWUgbmFtZS4iCittc2dpZCAiIgorIlJlYWQgc3Vic3RpdHV0aW9uIHZhcmlhYmxlcyBpbiBJPHN1YnN0dmFyc2ZpbGU+OyB0aGUgZGVmYXVsdCBpcyBCPGRlYmlhbi8iCisic3Vic3R2YXJzPi4gIFRoaXMgb3B0aW9uIGNhbiBiZSB1c2VkIG11bHRpcGxlIHRpbWVzIHRvIHJlYWQgc3Vic3RpdHV0aW9uICIKKyJ2YXJpYWJsZXMgZnJvbSBtdWx0aXBsZSBmaWxlcy4iCittc2dzdHIgIiIKKyJPZGN6eXR1amUgem1pZW5uZSBwb2RzdGF3aWFuaWEgeiBJPHBsaWt1X3ptaWVubnljaF9wb2RzdD47IGRvbXnFm2xuaWUgamVzdCB0byAiCisiQjxkZWJpYW4vc3Vic3R2YXJzPi4gTmllIHPEhSByb2Jpb25lIMW8YWRuZSBwb2RzdGF3aWFuaWEgbmEgxbxhZG55bSB6IHDDs2wsICIKKyJrdMOzcmUgc8SFIHd5cGlzeXdhbmUgbmEgd3lqxZtjaXUsIGplZG5ha8W8ZSBzcGVjamFsbmEgem1pZW5uYSBJPEZvcm1hdD4gIgorIm5hZHBpc3plIHBvbGUgbyB0ZWogc2FtZWogbmF6d2llLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjc4IGRwa2ctZ2Vuc3ltYm9scy4xOjM3MworIywgbm8td3JhcAorbXNnaWQgIkI8LXA+STxwYWNrYWdlPiIKK21zZ3N0ciAiQjwtcD5JPHBha2lldD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjg1Cittc2dpZCAiIgorIkdlbmVyYXRlIGluZm9ybWF0aW9uIGZvciB0aGUgYmluYXJ5IHBhY2thZ2UgSTxwYWNrYWdlPi4gIElmIHRoZSBzb3VyY2UgIgorImNvbnRyb2wgZmlsZSBsaXN0cyBvbmx5IG9uZSBiaW5hcnkgcGFja2FnZSB0aGVuIHRoaXMgb3B0aW9uIG1heSBiZSBvbWl0dGVkOyAiCisib3RoZXJ3aXNlIGl0IGlzIGVzc2VudGlhbCB0byBzZWxlY3Qgd2hpY2ggYmluYXJ5IHBhY2thZ2UncyBpbmZvcm1hdGlvbiB0byAiCisiZ2VuZXJhdGUuIgorbXNnc3RyICIiCisiR2VuZXJ1amUgaW5mb3JtYWNqZSBvIHBha2llY2llIGJpbmFybnltIEk8cGFraWV0Pi4gSmXFvGVsaSBwbGlrIGtvbnRyb2xueSAiCisicGFraWV0dSDFunLDs2TFgm93ZWdvIHd5bWllbmlhIHR5bGtvIGplZGVuIHBha2lldCBiaW5hcm55LCB0byBvcGNqxJkgdMSZIG1vxbxuYSAiCisicG9taW7EhcSHLCB3IHByemVjaXdueW0gd3lwYWRrdSB3eW1hZ2FuZSBqZXN0IHdza2F6YW5pZSwgZGxhIGt0w7NyZWdvIHBha2lldHUgIgorImJpbmFybmVnbyB3eWdlbmVyb3dhxIcgaW5mb3JtYWNqZS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbmNvbnRyb2wuMTo4NQorIywgbm8td3JhcAorbXNnaWQgIkI8LW4+STxmaWxlbmFtZT4iCittc2dzdHIgIkI8LW4+STxuYXp3YV9wbGlrdT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjkwCittc2dpZCAiIgorIkFzc3VtZSB0aGUgZmlsZW5hbWUgb2YgdGhlIHBhY2thZ2Ugd2lsbCBiZSBJPGZpbGVuYW1lPiBpbnN0ZWFkIG9mIHRoZSBub3JtYWwgIgorInBhY2thZ2VfdmVyc2lvbl9hcmNoLmRlYiBmaWxlbmFtZS4iCittc2dzdHIgIiIKKyJPa3JlxZtsYSwgxbxlIG5henfEhSBwbGlrdSBwYWtpZXR1IGLEmWR6aWUgSTxuYXp3YV9wbGlrdT4gemFtaWFzdCBub3JtYWxuZWogIgorIm5hend5IHBsaWt1IHcgcG9zdGFjaSBwYWtpZXRfd2Vyc2phX2FyY2hpdGVrdHVyYS5kZWIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbmNvbnRyb2wuMTo5MAorIywgbm8td3JhcAorbXNnaWQgIkI8LWlzPiwgQjwtaXA+LCBCPC1pc3A+IgorbXNnc3RyICJCPC1pcz4sIEI8LWlwPiwgQjwtaXNwPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jb250cm9sLjE6OTkKK21zZ2lkICIiCisiVGhlc2Ugb3B0aW9ucyBhcmUgaWdub3JlZCBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIG9sZGVyIHZlcnNpb25zIG9mIGRwa2ctZGV2ICIKKyJidXQgYXJlIG5vdyBkZXByZWNhdGVkLiBQcmV2aW91c2x5IHRoZXkgd2VyZSB1c2VkIHRvIHRlbGwgZHBrZy1nZW5jb250cm9sIHRvICIKKyJpbmNsdWRlIHRoZSBTZWN0aW9uIGFuZCBQcmlvcml0eSBmaWVsZHMgaW4gdGhlIGNvbnRyb2wgZmlsZS4gVGhpcyBpcyBub3cgdGhlICIKKyJkZWZhdWx0IGJlaGF2aW91ci4gSWYgeW91IHdhbnQgdG8gZ2V0IHRoZSBvbGQgYmVoYXZpb3VyIHlvdSBjYW4gdXNlIHRoZSBCPC0iCisiVT4gb3B0aW9uIHRvIGRlbGV0ZSB0aGUgZmllbGRzIGZyb20gdGhlIGNvbnRyb2wgZmlsZS4iCittc2dzdHIgIiIKKyJUZSBvcGNqZSBzxIUgaWdub3Jvd2FuZSB3IGNlbHUgemFjaG93YW5pYSBrb21wYXR5Ymlsbm/Fm2NpIHplIHN0YXJzenltaSAiCisid2Vyc2phbWkgZHBrZy1kZXYsIG9iZWNuaWUgc8SFIHV6bmF3YW5lIHphIHByemVzdGFyemHFgmUuIFBvcHJ6ZWRuaW8gYnnFgnkgIgorInXFvHl3YW5lIGRvIG5ha2F6YW5pYSBwcm9ncmFtb3dpIGRwa2ctZ2VuY29udHJvbCB3xYLEhWN6ZW5pYSBww7NsIFNlY3Rpb24gaSAiCisiUHJpb3JpdHkgZG8gcGxpa3Uga29udHJvbG5lZ28uIE9iZWNuaWUgamVzdCB0byBkb215xZtsbmUgemFjaG93YW5pZS4gQWJ5ICIKKyJ1enlza2HEhyBwb3ByemVkbmllIHphY2hvd2FuaWUsIG1vxbxuYSB1xbx5xIcgb3BjamkgQjwtVT4sIGR6acSZa2kga3TDs3JlaiBtb8W8bmEgIgorInVzdW7EhcSHIHBvd3nFvHN6ZSBwb2xhIHogcGxpa3Uga29udHJvbG5lZ28uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5jb250cm9sLjE6OTkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1QPkk8cGFja2FnZWJ1aWxkZGlyPiIKK21zZ3N0ciAiQjwtUD5JPGthdGFsb2dfYnVkb3dhbmlhX3Bha2lldHU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMToxMTIKK21zZ2lkICIiCisiVGVsbHMgQjxkcGtnLXNvdXJjZT4gdGhhdCB0aGUgcGFja2FnZSBpcyBiZWluZyBidWlsdCBpbiBJPHBhY2thZ2VidWlsZGRpcj4gIgorImluc3RlYWQgb2YgQjxkZWJpYW4vdG1wPi4gIFRoaXMgdmFsdWUgaXMgdXNlZCB0byBmaW5kIHRoZSBkZWZhdWx0IHZhbHVlIG9mICIKKyJ0aGUgQjxJbnN0YWxsZWQtU2l6ZT4gc3Vic3RpdHV0aW9uIHZhcmlhYmxlIGFuZCBjb250cm9sIGZpbGUgZmllbGQgKHVzaW5nICIKKyJCPGR1PiksIGFuZCBmb3IgdGhlIGRlZmF1bHQgbG9jYXRpb24gb2YgdGhlIG91dHB1dCBmaWxlLiIKK21zZ3N0ciAiIgorIk3Ds3dpIHByb2dyYW1vd2kgQjxkcGtnLXNvdXJjZT4sIMW8ZSBwYWtpZXQgamVzdCBidWRvd2FueSB3ICIKKyJJPGthdGFsb2d1X2J1ZG93YW5pYV9wYWtpZXR1PiwgemFtaWFzdCB3IEI8ZGViaWFuL3RtcD4uIEthdGFsb2cgdGVuIGplc3QgIgorInXFvHl3YW55IGRvIHpuYWxlemllbmlhIGRvbXnFm2xueWNoIHdhcnRvxZtjaSB6bWllbm5laiBwb2RzdGF3aWFuaWEgQjxJbnN0YWxsZWQtIgorIlNpemU+IGkgcG9sYSB3IHBsaWt1IGtvbnRyb2xueW0gbyB0ZWogc2FtZWogbmF6d2llIChwcnp5IHXFvHljaXUgZHUpIG9yYXogIgorImRvbXnFm2xuZWogbG9rYWxpemFjamkgcGxpa3Ugd3luaWtvd2Vnby4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbmNvbnRyb2wuMToxMTIgZHBrZy1nZW5zeW1ib2xzLjE6MzkxIGRwa2ctc2hsaWJkZXBzLjE6MTUwCisjLCBuby13cmFwCittc2dpZCAiQjwtTz4iCittc2dzdHIgIkI8LU8+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMToxMjEKK21zZ2lkICIiCisiUHJpbnQgdGhlIGNvbnRyb2wgZmlsZSB0byBzdGFuZGFyZCBvdXRwdXQsIHJhdGhlciB0aGFuIHRvIEI8ZGViaWFuL3RtcC8iCisiREVCSUFOL2NvbnRyb2w+IChvciBJPHBhY2thZ2VidWlsZGRpcj5CPC9ERUJJQU4vY29udHJvbD4gaWYgQjwtUD4gd2FzIHVzZWQpLiIKK21zZ3N0ciAiIgorIld5cGlzdWplIHBsaWsga29udHJvbG55IG5hIHN0YW5kYXJkb3dlIHd5asWbY2llLCBhIG5pZSBkbyBwbGlrdSBCPGRlYmlhbi90bXAvIgorIkRFQklBTi9jb250cm9sPiAobHViIEk8a2F0YWxvZ3VfYnVkb3dhbmlhX3Bha2lldHU+QjwvREVCSUFOL2NvbnRyb2w+LCBnZHkgIgorInXFvHl0byBCPC1QPikuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5jb250cm9sLjE6MTI5CisjLCBuby13cmFwCittc2dpZCAiQjxkZWJpYW4vY29udHJvbD4iCittc2dzdHIgIkI8ZGViaWFuL2NvbnRyb2w+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMToxMzQKK21zZ2lkICIiCisiVGhlIG1haW4gc291cmNlIGNvbnRyb2wgaW5mb3JtYXRpb24gZmlsZSwgZ2l2aW5nIHZlcnNpb24taW5kZXBlbmRlbnQgIgorImluZm9ybWF0aW9uIGFib3V0IHRoZSBzb3VyY2UgcGFja2FnZSBhbmQgdGhlIGJpbmFyeSBwYWNrYWdlcyBpdCBjYW4gcHJvZHVjZS4iCittc2dzdHIgIiIKKyJHxYLDs3dueSBwbGlrIGtvbnRyb2xueSwgemF3aWVyYWrEhWN5IG5pZXphbGXFvG5lIG9kIHdlcnNqaSBpbmZvcm1hY2plIHphcsOzd25vIG8gIgorInBha2llY2llIMW6csOzZMWCb3d5bSwgamFrIGkgbyBwYWtpZXRhY2ggYmluYXJueWNoLCBrdMOzcmUgc8SFIHR3b3J6b25lIHogcGFraWV0dSAiCisixbpyw7NkxYJvd2Vnby4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjE0MQorbXNnaWQgIiIKKyJUaGUgbGlzdCBvZiBnZW5lcmF0ZWQgZmlsZXMgd2hpY2ggYXJlIHBhcnQgb2YgdGhlIHVwbG9hZCBiZWluZyBwcmVwYXJlZC4gICIKKyJCPGRwa2ctZ2VuY29udHJvbD4gYWRkcyB0aGUgcHJlc3VtZWQgZmlsZW5hbWVzIG9mIGJpbmFyeSBwYWNrYWdlcyB3aG9zZSAiCisiY29udHJvbCBmaWxlcyBpdCBnZW5lcmF0ZXMgaGVyZS4iCittc2dzdHIgIiIKKyJMaXN0YSB3eWdlbmVyb3dhbnljaCBwbGlrw7N3LCBrdMOzcmUgc8SFIGN6xJnFm2NpxIUgcHJ6eWdvdG93eXdhbmVnbyB3eWRhbmlhLiAiCisiQjxkcGtnLWdlbmNvbnRyb2w+IHphcGlzdWplIHR1dGFqIHByenlwdXN6Y3phbG5lIG5hend5IHBsaWvDs3ctcGFraWV0w7N3ICIKKyJiaW5hcm55Y2ggZ2VuZXJvd2FueWNoIHogcGxpa3Uga29udHJvbG5lZ28uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMToxNDggZHBrZy1zaGxpYmRlcHMuMTozMzcKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAwNy0yMDA4IFJhcGhhXFxbOmVdbCBIZXJ0em9nIgorbXNnc3RyICJDb3B5cmlnaHQgXFwoY28gMjAwNy0yMDA4IFJhcGhhXFxbOmVdbCBIZXJ0em9nIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MgorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJkZWItc3ltYm9scyIKK21zZ2lkICJkcGtnLWdlbnN5bWJvbHMiCittc2dzdHIgImRlYi1zeW1ib2xzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo1CisjLCBmdXp6eQorI3wgbXNnaWQgIlBlci1zeXN0ZW0gZGVmYXVsdCBzaGFyZWQgbGlicmFyeSBkZXBlbmRlbmN5IGluZm9ybWF0aW9uLiIKK21zZ2lkICIiCisiZHBrZy1nZW5zeW1ib2xzIC0gZ2VuZXJhdGUgc3ltYm9scyBmaWxlcyAoc2hhcmVkIGxpYnJhcnkgZGVwZW5kZW5jeSAiCisiaW5mb3JtYXRpb24pIgorbXNnc3RyICIiCisiRG9tecWbbG5hIGluZm9ybWFjamEgbyB6YWxlxbxub8WbY2lhY2ggYmlibGlvdGVrIHdzcMOzxYJkemllbG9ueWNoLCBvIHpha3Jlc2llICIKKyJzeXN0ZW11LiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6OQorIywgZnV6enkKKyN8IG1zZ2lkICJCPGRwa2ctZ2VuY29udHJvbD4gW0k8b3B0aW9ucz5dIgorbXNnaWQgIkI8ZHBrZy1nZW5zeW1ib2xzPiBbSTxvcHRpb24+Li4uXSIKK21zZ3N0ciAiQjxkcGtnLWdlbmNvbnRyb2w+IFtJPG9wY2plPl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjE2Cittc2dpZCAiIgorIkI8ZHBrZy1nZW5zeW1ib2xzPiBzY2FucyBhIHRlbXBvcmFyeSBidWlsZCB0cmVlIChkZWJpYW4vdG1wIGJ5IGRlZmF1bHQpICIKKyJsb29raW5nIGZvciBsaWJyYXJpZXMgYW5kIGdlbmVyYXRlIGEgSTxzeW1ib2xzPiBmaWxlIGRlc2NyaWJpbmcgdGhlbS4gVGhpcyAiCisiZmlsZSwgaWYgbm9uLWVtcHR5LCBpcyB0aGVuIGluc3RhbGxlZCBpbiB0aGUgREVCSUFOIHN1YmRpcmVjdG9yeSBvZiB0aGUgIgorImJ1aWxkIHRyZWUgc28gdGhhdCBpdCBlbmRzIHVwIGluY2x1ZGVkIGluIHRoZSBjb250cm9sIGluZm9ybWF0aW9uIG9mIHRoZSAiCisicGFja2FnZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjAKK21zZ2lkICIiCisiV2hlbiBnZW5lcmF0aW5nIHRob3NlIGZpbGVzLCBpdCB1c2VzIGFzIGlucHV0IHNvbWUgc3ltYm9scyBmaWxlcyBwcm92aWRlZCBieSAiCisidGhlIG1haW50YWluZXIuIEl0IGxvb2tzIGZvciB0aGUgZm9sbG93aW5nIGZpbGVzIChhbmQgdXNlIHRoZSBmaXJzdCB0aGF0IGlzICIKKyJmb3VuZCk6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjIyCisjLCBmdXp6eQorI3wgbXNnaWQgIi9ldGMvZHBrZy9zeW1ib2xzL0k8cGFja2FnZT4uc3ltYm9scy5JPGFyY2g+IgorbXNnaWQgImRlYmlhbi9JPHBhY2thZ2U+LnN5bWJvbHMuSTxhcmNoPiIKK21zZ3N0ciAiL2V0Yy9kcGtnL3N5bWJvbHMvSTxwYWtpZXQ+LnN5bWJvbHMuSTxhcmNoPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjQKKyMsIGZ1enp5CisjfCBtc2dpZCAiQjxkZWJpYW4vc3Vic3R2YXJzPiIKK21zZ2lkICJkZWJpYW4vc3ltYm9scy5JPGFyY2g+IgorbXNnc3RyICJCPGRlYmlhbi9zdWJzdHZhcnM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyNgorIywgZnV6enkKKyN8IG1zZ2lkICJJPGFkbWluZGlyPi9pbmZvL0k8cGFja2FnZT4uc3ltYm9scyIKK21zZ2lkICJkZWJpYW4vSTxwYWNrYWdlPi5zeW1ib2xzIgorbXNnc3RyICJJPGthdGFsb2dfYWRtaW4+L2luZm8vSTxwYWtpZXQ+LnN5bWJvbHMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjI4CisjLCBmdXp6eQorI3wgbXNnaWQgImRlYi1zeW1ib2xzIgorbXNnaWQgImRlYmlhbi9zeW1ib2xzIgorbXNnc3RyICJkZWItc3ltYm9scyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzYKK21zZ2lkICIiCisiVGhlIG1haW4gaW50ZXJlc3Qgb2YgdGhvc2UgZmlsZXMgaXMgdG8gcHJvdmlkZSB0aGUgbWluaW1hbCB2ZXJzaW9uICIKKyJhc3NvY2lhdGVkIHRvIGVhY2ggc3ltYm9sIHByb3ZpZGVkIGJ5IHRoZSBsaWJyYXJpZXMuIFVzdWFsbHkgaXQgY29ycmVzcG9uZHMgIgorInRvIHRoZSBmaXJzdCB2ZXJzaW9uIG9mIHRoYXQgcGFja2FnZSB0aGF0IHByb3ZpZGVkIHRoZSBzeW1ib2wsIGJ1dCBpdCBjYW4gYmUgIgorIm1hbnVhbGx5IGluY3JlbWVudGVkIGJ5IHRoZSBtYWludGFpbmVyIGlmIHRoZSBBQkkgb2YgdGhlIHN5bWJvbCBpcyBleHRlbmRlZCAiCisid2l0aG91dCBicmVha2luZyBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eS4gSXQncyB0aGUgcmVzcG9uc2liaWxpdHkgb2YgdGhlICIKKyJtYWludGFpbmVyIHRvIGtlZXAgdGhvc2UgZmlsZXMgdXAtdG8tZGF0ZSBhbmQgYWNjdXJhdGUsIGJ1dCBCPGRwa2ctIgorImdlbnN5bWJvbHM+IGhlbHBzIGhpbS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDIKK21zZ2lkICIiCisiV2hlbiB0aGUgZ2VuZXJhdGVkIHN5bWJvbHMgZmlsZXMgZGlmZmVyIGZyb20gdGhlIG1haW50YWluZXIgc3VwcGxpZWQgb25lLCAiCisiQjxkcGtnLWdlbnN5bWJvbHM+IHdpbGwgcHJpbnQgYSBkaWZmIGJldHdlZW4gdGhlIHR3byB2ZXJzaW9ucy4gIEZ1cnRoZXJtb3JlICIKKyJpZiB0aGUgZGlmZmVyZW5jZSBpcyB0b28gc2lnbmlmaWNhbnQsIGl0IHdpbGwgZXZlbiBmYWlsICh5b3UgY2FuIGN1c3RvbWl6ZSAiCisiaG93IG11Y2ggZGlmZmVyZW5jZSB5b3UgY2FuIHRvbGVyYXRlLCBzZWUgdGhlIEI8LWM+IG9wdGlvbikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0MgorIywgbm8td3JhcAorbXNnaWQgIk1BSU5UQUlOSU5HIFNZTUJPTFMgRklMRVMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NTUKK21zZ2lkICIiCisiVGhlIHN5bWJvbHMgZmlsZXMgYXJlIHJlYWxseSB1c2VmdWwgb25seSBpZiB0aGV5IHJlZmxlY3QgdGhlIGV2b2x1dGlvbiBvZiAiCisidGhlIHBhY2thZ2UgdGhyb3VnaCBzZXZlcmFsIHJlbGVhc2VzLiBUaHVzIHRoZSBtYWludGFpbmVyIGhhcyB0byB1cGRhdGUgdGhlbSAiCisiZXZlcnkgdGltZSB0aGF0IGEgbmV3IHN5bWJvbCBpcyBhZGRlZCBzbyB0aGF0IGl0cyBhc3NvY2lhdGVkIG1pbmltYWwgdmVyc2lvbiAiCisibWF0Y2hlcyByZWFsaXR5LiBUbyBkbyB0aGlzIHByb3Blcmx5IGhlIGNhbiB1c2UgdGhlIGRpZmZzIGNvbnRhaW5lZCBpbiB0aGUgIgorImJ1aWxkIGxvZ3MuIEluIG1vc3QgY2FzZXMsIHRoZSBkaWZmIGFwcGxpZXMgZGlyZWN0bHkgdG8gaGlzIGRlYmlhbi8iCisiSTxwYWNrYWdlPi5zeW1ib2xzIGZpbGUuIFRoYXQgc2FpZCwgZnVydGhlciB0d2Vha3MgYXJlIHVzdWFsbHkgbmVlZGVkOiBpdCdzICIKKyJyZWNvbW1lbmRlZCBmb3IgZXhhbXBsZSB0byBkcm9wIHRoZSBEZWJpYW4gcmV2aXNpb24gZnJvbSB0aGUgbWluaW1hbCB2ZXJzaW9uICIKKyJzbyB0aGF0IGJhY2twb3J0cyB3aXRoIGEgbG93ZXIgdmVyc2lvbiBudW1iZXIgYnV0IHRoZSBzYW1lIHVwc3RyZWFtIHZlcnNpb24gIgorInN0aWxsIHNhdGlzZnkgdGhlIGdlbmVyYXRlZCBkZXBlbmRlbmNpZXMuICBJZiB0aGUgRGViaWFuIHJldmlzaW9uIGNhbid0IGJlICIKKyJkcm9wcGVkIGJlY2F1c2UgdGhlIHN5bWJvbCByZWFsbHkgZ290IGFkZGVkIGJ5IHRoZSBEZWJpYW4gc3BlY2lmaWMgY2hhbmdlLCAiCisidGhlbiBvbmUgc2hvdWxkIHN1ZmZpeCB0aGUgdmVyc2lvbiB3aXRoIFwiflwiLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo1OQorbXNnaWQgIiIKKyJCZWZvcmUgYXBwbHlpbmcgYW55IHBhdGNoIHRvIHRoZSBzeW1ib2xzIGZpbGUsIHRoZSBtYWludGFpbmVyIHNob3VsZCBkb3VibGUtIgorImNoZWNrIHRoYXQgaXQncyBzYW5lLiBQdWJsaWMgc3ltYm9scyBhcmUgbm90IHN1cHBvc2VkIHRvIGRpc2FwcGVhciwgc28gdGhlICIKKyJwYXRjaCBzaG91bGQgaWRlYWxseSBvbmx5IGFkZCBuZXcgbGluZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjY0Cittc2dpZCAiIgorIk5vdGUgdGhhdCB5b3UgY2FuIHB1dCBjb21tZW50cyBpbiBzeW1ib2xzIGZpbGVzOiBhbnkgbGluZSB3aXRoICcjJyBhcyB0aGUgIgorImZpcnN0IGNoYXJhY3RlciBpcyBhIGNvbW1lbnQgZXhjZXB0IGlmIGl0IHN0YXJ0cyB3aXRoICcjaW5jbHVkZScgKHNlZSAiCisic2VjdGlvbiBCPFVzaW5nIGluY2x1ZGVzPikuIExpbmVzIHN0YXJ0aW5nIHdpdGggJyNNSVNTSU5HOicgYXJlIHNwZWNpYWwgIgorImNvbW1lbnRzIGRvY3VtZW50aW5nIHN5bWJvbHMgdGhhdCBoYXZlIGRpc2FwcGVhcmVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1nZW5zeW1ib2xzLjE6NjQKKyMsIG5vLXdyYXAKK21zZ2lkICJVc2luZyAjUEFDS0FHRSMgc3Vic3RpdHV0aW9uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjcyCittc2dpZCAiIgorIkluIHNvbWUgcmFyZSBjYXNlcywgdGhlIG5hbWUgb2YgdGhlIGxpYnJhcnkgdmFyaWVzIGJldHdlZW4gYXJjaGl0ZWN0dXJlcy4gICIKKyJUbyBhdm9pZCBoYXJkY29kaW5nIHRoZSBuYW1lIG9mIHRoZSBwYWNrYWdlIGluIHRoZSBzeW1ib2xzIGZpbGUsIHlvdSBjYW4gdXNlICIKKyJ0aGUgbWFya2VyIEk8I1BBQ0tBR0UjPi4gSXQgd2lsbCBiZSByZXBsYWNlZCBieSB0aGUgcmVhbCBwYWNrYWdlIG5hbWUgZHVyaW5nICIKKyJpbnN0YWxsYXRpb24gb2YgdGhlIHN5bWJvbHMgZmlsZXMuIENvbnRyYXJ5IHRvIHRoZSBJPCNNSU5WRVIjPiBtYXJrZXIsICIKKyJJPCNQQUNLQUdFIz4gd2lsbCBuZXZlciBhcHBlYXIgaW4gYSBzeW1ib2xzIGZpbGUgaW5zaWRlIGEgYmluYXJ5IHBhY2thZ2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLWdlbnN5bWJvbHMuMTo3MgorIywgbm8td3JhcAorbXNnaWQgIlVzaW5nIHN5bWJvbCB0YWdzIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjc5Cittc2dpZCAiIgorIlN5bWJvbCB0YWdnaW5nIGlzIHVzZWZ1bCBmb3IgbWFya2luZyBzeW1ib2xzIHRoYXQgYXJlIHNwZWNpYWwgaW4gc29tZSB3YXkuICAiCisiQW55IHN5bWJvbCBjYW4gaGF2ZSBhbiBhcmJpdHJhcnkgbnVtYmVyIG9mIHRhZ3MgYXNzb2NpYXRlZCB3aXRoIGl0LiBXaGlsZSAiCisiYWxsIHRhZ3MgYXJlIHBhcnNlZCBhbmQgc3RvcmVkLCBvbmx5IGEgc29tZSBvZiB0aGVtIGFyZSB1bmRlcnN0b29kIGJ5IEI8ZHBrZy0iCisiZ2Vuc3ltYm9scz4gYW5kIHRyaWdnZXIgc3BlY2lhbCBoYW5kbGluZyBvZiB0aGUgc3ltYm9scy4gU2VlIHN1YnNlY3Rpb24gIgorIkI8U3RhbmRhcmQgc3ltYm9sIHRhZ3M+IGZvciByZWZlcmVuY2Ugb2YgdGhlc2UgdGFncy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6OTEKK21zZ2lkICIiCisiVGFnIHNwZWNpZmljYXRpb24gY29tZXMgcmlnaHQgYmVmb3JlIHRoZSBzeW1ib2wgbmFtZSAobm8gd2hpdGVzcGFjZSBpcyAiCisiYWxsb3dlZCBpbiBiZXR3ZWVuKS4gSXQgYWx3YXlzIHN0YXJ0cyB3aXRoIGFuIG9wZW5pbmcgYnJhY2tldCBCPCg+LCBlbmRzICIKKyJ3aXRoIGEgY2xvc2luZyBicmFja2V0IEI8KT4gYW5kIG11c3QgY29udGFpbiBhdCBsZWFzdCBvbmUgdGFnLiBNdWx0aXBsZSB0YWdzICIKKyJhcmUgc2VwYXJhdGVkIGJ5IHRoZSBCPHw+IGNoYXJhY3Rlci4gRWFjaCB0YWcgY2FuIG9wdGlvbmFsbHkgaGF2ZSBhIHZhbHVlICIKKyJ3aGljaCBpcyBzZXBhcmF0ZWQgZm9ybSB0aGUgdGFnIG5hbWUgYnkgdGhlIEI8PT4gY2hhcmFjdGVyLiBUYWcgbmFtZXMgYW5kICIKKyJ2YWx1ZXMgY2FuIGJlIGFyYml0cmFyeSBzdHJpbmdzIGV4Y2VwdCB0aGV5IGNhbm5vdCBjb250YWluIGFueSBvZiB0aGUgIgorInNwZWNpYWwgQjwpPiBCPHw+IEI8PT4gY2hhcmFjdGVycy4gU3ltYm9sIG5hbWVzIGZvbGxvd2luZyBhIHRhZyAiCisic3BlY2lmaWNhdGlvbiBjYW4gb3B0aW9uYWxseSBiZSBxdW90ZWQgd2l0aCBlaXRoZXIgQjwnPiBvciBCPFwiPiBjaGFyYWN0ZXJzICIKKyJ0byBhbGxvdyB3aGl0ZXNwYWNlcyBpbiB0aGVtLiBIb3dldmVyLCBpZiB0aGVyZSBhcmUgbm8gdGFncyBzcGVjaWZpZWQgZm9yICIKKyJ0aGUgc3ltYm9sLCBxdW90ZXMgYXJlIHRyZWF0ZWQgYXMgcGFydCBvZiB0aGUgc3ltYm9sIG5hbWUgd2hpY2ggY29udGludWVzIHVwICIKKyJ1bnRpbCB0aGUgZmlyc3Qgc3BhY2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjk1CisjLCBuby13cmFwCittc2dpZCAiIgorIiAodGFnMT1pIGFtIG1hcmtlZHx0YWcgbmFtZSB3aXRoIHNwYWNlKVwidGFnZ2VkIHF1b3RlZCBzeW1ib2xcIkBCYXNlIDEuMFxuIgorIiAob3B0aW9uYWwpdGFnZ2VkX3VucXVvdGVkX3N5bWJvbEBCYXNlIDEuMCAxXG4iCisiIHVudGFnZ2VkX3N5bWJvbEBCYXNlIDEuMFxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjEwMQorbXNnaWQgIiIKKyJUaGUgZmlyc3Qgc3ltYm9sIGluIHRoZSBleGFtcGxlIGlzIG5hbWVkIEk8dGFnZ2VkIHF1b3RlZCBzeW1ib2w+IGFuZCBoYXMgdHdvICIKKyJ0YWdzOiBJPHRhZzE+IHdpdGggdmFsdWUgSTxpIGFtIG1hcmtlZD4gYW5kIEk8dGFnIG5hbWUgd2l0aCBzcGFjZT4gdGhhdCBoYXMgIgorIm5vIHZhbHVlLiBUaGUgc2Vjb25kIHN5bWJvbCBuYW1lZCBJPHRhZ2dlZF91bnF1b3RlZF9zeW1ib2w+IGlzIG9ubHkgdGFnZ2VkICIKKyJ3aXRoIHRoZSB0YWcgbmFtZWQgSTxvcHRpb25hbD4uIFRoZSBsYXN0IHN5bWJvbCBpcyBhbiBleGFtcGxlIG9mIHRoZSBub3JtYWwgIgorInVudGFnZ2VkIHN5bWJvbC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTEzCittc2dpZCAiIgorIlNpbmNlIHN5bWJvbCB0YWdzIGFyZSBhbiBleHRlbnNpb24gb2YgdGhlIEk8ZGViLXN5bWJvbHMoNSk+IGZvcm1hdCwgdGhleSBjYW4gIgorIm9ubHkgYmUgcGFydCBvZiB0aGUgc3ltYm9scyBmaWxlcyB1c2VkIGluIHNvdXJjZSBwYWNrYWdlcyAodGhvc2UgZmlsZXMgIgorInNob3VsZCB0aGVuIGJlIHNlZW4gYXMgdGVtcGxhdGVzIHVzZWQgdG8gYnVpbGQgdGhlIHN5bWJvbHMgZmlsZXMgdGhhdCBhcmUgIgorImVtYmVkZGVkIGluIGJpbmFyeSBwYWNrYWdlcykuIFdoZW4gQjxkcGtnLWdlbnN5bWJvbHM+IGlzIGNhbGxlZCB3aXRob3V0IHRoZSAiCisiSTwtdD4gb3B0aW9uLCBpdCB3aWxsIG91dHB1dCBzeW1ib2xzIGZpbGVzIGNvbXBhdGlibGUgdG8gdGhlIEk8ZGViLXN5bWJvbHMoNSkiCisiPiBmb3JtYXQ6IGl0IGZ1bGx5IHByb2Nlc3NlcyBzeW1ib2xzIGFjY29yZGluZyB0byB0aGUgcmVxdWlyZW1lbnRzIG9mIHRoZWlyICIKKyJzdGFuZGFyZCB0YWdzIGFuZCBzdHJpcHMgYWxsIHRhZ3MgZnJvbSB0aGUgb3V0cHV0LiBPbiB0aGUgY29udHJhcnksIGluICIKKyJ0ZW1wbGF0ZSBtb2RlIChJPC10PikgYWxsIHN5bWJvbHMgYW5kIHRoZWlyIHRhZ3MgKGJvdGggc3RhbmRhcmQgYW5kIHVua25vd24gIgorIm9uZXMpICBhcmUga2VwdCBpbiB0aGUgb3V0cHV0IGFuZCBhcmUgd3JpdHRlbiBpbiB0aGVpciBvcmlnaW5hbCBmb3JtIGFzIHRoZXkgIgorIndlcmUgbG9hZGVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1nZW5zeW1ib2xzLjE6MTEzCisjLCBuby13cmFwCittc2dpZCAiU3RhbmRhcmQgc3ltYm9sIHRhZ3MiCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjExNAorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPG5vdC1pbnN0YWxsZWQ+IgorbXNnaWQgIkI8b3B0aW9uYWw+IgorbXNnc3RyICJCPG5vdC1pbnN0YWxsZWQgKG5pZXphaW5zdGFsb3dhbnkpPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTI0Cittc2dpZCAiIgorIkEgc3ltYm9sIG1hcmtlZCBhcyBvcHRpb25hbCBjYW4gZGlzYXBwZWFyIGZyb20gdGhlIGxpYnJhcnkgYXQgYW55IHRpbWUgYW5kICIKKyJ0aGF0IHdpbGwgbmV2ZXIgY2F1c2UgQjxkcGtnLWdlbnN5bWJvbHM+IHRvIGZhaWwuIEhvd2V2ZXIsIGRpc2FwcGVhcmVkICIKKyJvcHRpb25hbCBzeW1ib2xzIHdpbGwgY29udGludW91c2x5IGFwcGVhciBhcyBNSVNTSU5HIGluIHRoZSBkaWZmIGluIGVhY2ggbmV3ICIKKyJwYWNrYWdlIHJldmlzaW9uLiAgVGhpcyBiZWhhdmlvdXIgc2VydmVzIGFzIGEgcmVtaW5kZXIgZm9yIHRoZSBtYWludGFpbmVyICIKKyJ0aGF0IHN1Y2ggYSBzeW1ib2wgbmVlZHMgdG8gYmUgcmVtb3ZlZCBmcm9tIHRoZSBzeW1ib2wgZmlsZSBvciByZWFkZGVkIHRvICIKKyJ0aGUgbGlicmFyeS4gV2hlbiB0aGUgb3B0aW9uYWwgc3ltYm9sLCB3aGljaCB3YXMgcHJldmlvdXNseSBkZWNsYXJlZCBhcyAiCisiTUlTU0lORywgc3VkZGVubHkgcmVhcHBlYXJzIGluIHRoZSBuZXh0IHJldmlzaW9uLCBpdCB3aWxsIGJlIHVwZ3JhZGVkIGJhY2sgIgorInRvIHRoZSBcImV4aXN0aW5nXCIgc3RhdHVzIHdpdGggaXRzIG1pbmltdW0gdmVyc2lvbiB1bmNoYW5nZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjEyOQorbXNnaWQgIiIKKyJUaGlzIHRhZyBpcyB1c2VmdWwgZm9yIHN5bWJvbHMgd2hpY2ggYXJlIHByaXZhdGUgd2hlcmUgdGhlaXIgZGlzYXBwZWFyYW5jZSAiCisiZG8gbm90IGNhdXNlIEFCSSBicmVha2FnZS4gRm9yIGV4YW1wbGUsIG1vc3Qgb2YgQysrIHRlbXBsYXRlIGluc3RhbnRpYXRpb25zICIKKyJmYWxsIGludG8gdGhpcyBjYXRlZ29yeS4gTGlrZSBhbnkgb3RoZXIgdGFnLCB0aGlzIG9uZSBtYXkgYWxzbyBoYXZlIGFuICIKKyJhcmJpdHJhcnkgdmFsdWU6IGl0IGNvdWxkIGJlIHVzZWQgdG8gaW5kaWNhdGUgd2h5IHRoZSBzeW1ib2wgaXMgY29uc2lkZXJlZCAiCisib3B0aW9uYWwuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbnN5bWJvbHMuMToxMjkKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjwtYT5JPGFyY2hpdGVjdHVyZT4iCittc2dpZCAiQjxhcmNoPT5JPGFyY2hpdGVjdHVyZSBsaXN0PiIKK21zZ3N0ciAiQjwtYT5JPGFyY2hpdGVrdHVyYT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjE0MgorbXNnaWQgIiIKKyJUaGlzIHRhZyBhbGxvd3Mgb25lIHRvIHJlc3RyaWN0IHRoZSBzZXQgb2YgYXJjaGl0ZWN0dXJlcyB3aGVyZSB0aGUgc3ltYm9sIGlzICIKKyJzdXBwb3NlZCB0byBleGlzdC4gV2hlbiB0aGUgc3ltYm9scyBsaXN0IGlzIHVwZGF0ZWQgd2l0aCB0aGUgc3ltYm9scyAiCisiZGlzY292ZXJlZCBpbiB0aGUgbGlicmFyeSwgYWxsIGFyY2gtc3BlY2lmaWMgc3ltYm9scyB3aGljaCBkbyBub3QgY29uY2VybiAiCisidGhlIGN1cnJlbnQgaG9zdCBhcmNoaXRlY3R1cmUgYXJlIHRyZWF0ZWQgYXMgaWYgdGhleSBkaWQgbm90IGV4aXN0LiBJZiBhbiAiCisiYXJjaC1zcGVjaWZpYyBzeW1ib2wgbWF0Y2hpbmcgdGhlIGN1cnJlbnQgaG9zdCBhcmNoaXRlY3R1cmUgZG9lcyBub3QgZXhpc3QgIgorImluIHRoZSBsaWJyYXJ5LCBub3JtYWwgcHJvY2VkdXJlcyBmb3IgbWlzc2luZyBzeW1ib2xzIGFwcGx5IGFuZCBpdCBtYXkgY2F1c2UgIgorIkI8ZHBrZy1nZW5zeW1ib2xzPiB0byBmYWlsLiBPbiB0aGUgb3RoZXIgaGFuZCwgaWYgdGhlIGFyY2gtc3BlY2lmaWMgc3ltYm9sICIKKyJpcyBmb3VuZCB3aGVuIGl0IHdhcyBub3Qgc3VwcG9zZWQgdG8gZXhpc3QgKGJlY2F1c2UgdGhlIGN1cnJlbnQgaG9zdCAiCisiYXJjaGl0ZWN0dXJlIGlzIG5vdCBsaXN0ZWQgaW4gdGhlIHRhZyksIGl0IGlzIG1hZGUgYXJjaCBuZXV0cmFsIChpLmUuIHRoZSAiCisiYXJjaCB0YWcgaXMgZHJvcHBlZCBhbmQgdGhlIHN5bWJvbCB3aWxsIGFwcGVhciBpbiB0aGUgZGlmZiBkdWUgdG8gdGhpcyAiCisiY2hhbmdlKSwgYnV0IGl0IGlzIG5vdCBjb25zaWRlcmVkIGFzIG5ldy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTQ4Cittc2dpZCAiIgorIldoZW4gb3BlcmF0aW5nIGluIHRoZSBkZWZhdWx0IG5vbi10ZW1wbGF0ZSBtb2RlLCBhbW9uZyBhcmNoLXNwZWNpZmljIHN5bWJvbHMgIgorIm9ubHkgdGhvc2UgdGhhdCBtYXRjaCB0aGUgY3VycmVudCBob3N0IGFyY2hpdGVjdHVyZSBhcmUgd3JpdHRlbiB0byB0aGUgIgorInN5bWJvbHMgZmlsZS4gT24gdGhlIGNvbnRyYXJ5LCBhbGwgYXJjaC1zcGVjaWZpYyBzeW1ib2xzIChpbmNsdWRpbmcgdGhvc2UgIgorImZyb20gZm9yZWlnbiBhcmNoZXMpIGFyZSBhbHdheXMgd3JpdHRlbiB0byB0aGUgc3ltYm9sIGZpbGUgd2hlbiBvcGVyYXRpbmcgaW4gIgorInRlbXBsYXRlIG1vZGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjE1NAorbXNnaWQgIiIKKyJUaGUgZm9ybWF0IG9mIEk8YXJjaGl0ZWN0dXJlIGxpc3Q+IGlzIHRoZSBzYW1lIGFzIHRoZSBvbmUgdXNlZCBpbiB0aGUgIgorIkk8QnVpbGQtRGVwZW5kcz4gZmllbGQgb2YgSTxkZWJpYW4vY29udHJvbD4gKGV4Y2VwdCB0aGUgZW5jbG9zaW5nIHNxdWFyZSAiCisiYnJhY2tldHMgW10pLiBGb3IgZXhhbXBsZSwgdGhlIGZpcnN0IHN5bWJvbCBmcm9tIHRoZSBsaXN0IGJlbG93IHdpbGwgYmUgIgorImNvbnNpZGVyZWQgb25seSBvbiBhbHBoYSwgYW1kNjQsIGtmcmVlYnNkLWFtZDY0IGFuZCBpYTY0IGFyY2hpdGVjdHVyZXMgd2hpbGUgIgorInRoZSBzZWNvbmQgb25lIGFueXdoZXJlIGV4Y2VwdCBvbiBhcm1lbC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTU3CisjLCBuby13cmFwCittc2dpZCAiIgorIiAoYXJjaD1hbHBoYSBhbWQ2NCBrZnJlZWJzZC1hbWQ2NCBpYTY0KWFfNjRiaXRfc3BlY2lmaWNfc3ltYm9sQEJhc2UgMS4wXG4iCisiIChhcmNoPSFhcm1lbClzeW1ib2xfYXJtZWxfZG9lc19ub3RfaGF2ZUBCYXNlIDEuMFxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbnN5bWJvbHMuMToxNTcKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjwtLW5vLWFjdD4iCittc2dpZCAiQjxpZ25vcmUtYmxhY2tsaXN0PiIKK21zZ3N0ciAiQjwtLW5vLWFjdD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjE2NQorbXNnaWQgIiIKKyJkcGtnLWdlbnN5bWJvbHMgaGFzIGFuIGludGVybmFsIGJsYWNrbGlzdCBvZiBzeW1ib2xzIHRoYXQgc2hvdWxkIG5vdCBhcHBlYXIgIgorImluIHN5bWJvbHMgZmlsZXMgYXMgdGhleSBhcmUgdXN1YWxseSBvbmx5IHNpZGUtZWZmZWN0cyBvZiBpbXBsZW1lbnRhdGlvbiAiCisiZGV0YWlscyBvZiB0aGUgdG9vbGNoYWluLiBJZiBmb3Igc29tZSByZWFzb24sIHlvdSByZWFsbHkgd2FudCBvbmUgb2YgdGhvc2UgIgorInN5bWJvbHMgdG8gYmUgaW5jbHVkZWQgaW4gdGhlIHN5bWJvbHMgZmlsZSwgeW91IHNob3VsZCB0YWcgdGhlIHN5bWJvbCB3aXRoICIKKyJCPGlnbm9yZS1ibGFja2xpc3Q+LiBJdCBjYW4gYmUgbmVjZXNzYXJ5IGZvciBzb21lIGxvdyBsZXZlbCB0b29sY2hhaW4gIgorImxpYnJhcmllcyBsaWtlIGxpYmdjYy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjE2NSBkcGtnLWdlbnN5bWJvbHMuMToyMDIKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjwtbmM+IgorbXNnaWQgIkI8YysrPiIKK21zZ3N0ciAiQjwtbmM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToxNjkKK21zZ2lkICIiCisiRGVub3RlcyBJPGMrKz4gc3ltYm9sIHBhdHRlcm4uIFNlZSBCPFVzaW5nIHN5bWJvbCBwYXR0ZXJucz4gc3Vic2VjdGlvbiBiZWxvdy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjE2OSBkcGtnLWdlbnN5bWJvbHMuMToyMzMKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjwtc3I+IgorbXNnaWQgIkI8c3ltdmVyPiIKK21zZ3N0ciAiQjwtc3I+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToxNzMKK21zZ2lkICIiCisiRGVub3RlcyBJPHN5bXZlcj4gKHN5bWJvbCB2ZXJzaW9uKSBzeW1ib2wgcGF0dGVybi4gU2VlIEI8VXNpbmcgc3ltYm9sICIKKyJwYXR0ZXJucz4gc3Vic2VjdGlvbiBiZWxvdy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjE3MyBkcGtnLWdlbnN5bWJvbHMuMToyNTgKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxwdXJnZT4iCittc2dpZCAiQjxyZWdleD4iCittc2dzdHIgIkI8cHVyZ2UgKHd5Y3p5c3pjemVuaWUpPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTc3Cittc2dpZCAiIgorIkRlbm90ZXMgSTxyZWdleD4gc3ltYm9sIHBhdHRlcm4uIFNlZSBCPFVzaW5nIHN5bWJvbCBwYXR0ZXJucz4gc3Vic2VjdGlvbiAiCisiYmVsb3cuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLWdlbnN5bWJvbHMuMToxNzcKKyMsIG5vLXdyYXAKK21zZ2lkICJVc2luZyBzeW1ib2wgcGF0dGVybnMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTg1Cittc2dpZCAiIgorIlVubGlrZSBhIHN0YW5kYXJkIHN5bWJvbCBzcGVjaWZpY2F0aW9uLCBhIHBhdHRlcm4gbWF5IGNvdmVyIG11bHRpcGxlIHJlYWwgIgorInN5bWJvbHMgZnJvbSB0aGUgbGlicmFyeS4gQjxkcGtnLWdlbnN5bWJvbHM+IHdpbGwgYXR0ZW1wdCB0byBtYXRjaCBlYWNoICIKKyJwYXR0ZXJuIGFnYWluc3QgZWFjaCByZWFsIHN5bWJvbCB0aGF0IGRvZXMgSTxub3Q+IGhhdmUgYSBzcGVjaWZpYyBzeW1ib2wgIgorImNvdW50ZXJwYXJ0IGRlZmluZWQgaW4gdGhlIHN5bWJvbCBmaWxlLiBXaGVuZXZlciB0aGUgZmlyc3QgbWF0Y2hpbmcgcGF0dGVybiAiCisiaXMgZm91bmQsIGFsbCBpdHMgdGFncyBhbmQgcHJvcGVydGllcyB3aWxsIGJlIHVzZWQgYXMgYSBiYXNpcyBzcGVjaWZpY2F0aW9uICIKKyJvZiB0aGUgc3ltYm9sLiBJZiBub25lIG9mIHRoZSBwYXR0ZXJucyBtYXRjaGVzLCB0aGUgc3ltYm9sIHdpbGwgYmUgIgorImNvbnNpZGVyZWQgYXMgbmV3LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToxOTMKK21zZ2lkICIiCisiQSBwYXR0ZXJuIGlzIGNvbnNpZGVyZWQgbG9zdCBpZiBpdCBkb2VzIG5vdCBtYXRjaCBhbnkgc3ltYm9sIGluIHRoZSBsaWJyYXJ5LiAiCisiQnkgZGVmYXVsdCB0aGlzIHdpbGwgdHJpZ2dlciBhIEI8ZHBrZy1nZW5zeW1ib2xzPiBmYWlsdXJlIHVuZGVyIEk8LWMxPiBvciAiCisiaGlnaGVyIGxldmVsLiBIb3dldmVyLCBpZiB0aGUgZmFpbHVyZSBpcyB1bmRlc2lyZWQsIHRoZSBwYXR0ZXJuIG1heSBiZSAiCisibWFya2VkIHdpdGggdGhlIEk8b3B0aW9uYWw+IHRhZy4gVGhlbiBpZiB0aGUgcGF0dGVybiBkb2VzIG5vdCBtYXRjaCAiCisiYW55dGhpbmcsIGl0IHdpbGwgb25seSBhcHBlYXIgaW4gdGhlIGRpZmYgYXMgTUlTU0lORy4gTW9yZW92ZXIsIGxpa2UgYW55ICIKKyJzeW1ib2wsIHRoZSBwYXR0ZXJuIG1heSBiZSBsaW1pdGVkIHRvIHRoZSBzcGVjaWZpYyBhcmNoaXRlY3R1cmVzIHdpdGggdGhlICIKKyJJPGFyY2g+IHRhZy4gUGxlYXNlIHJlZmVyIHRvIEI8U3RhbmRhcmQgc3ltYm9sIHRhZ3M+IHN1YnNlY3Rpb24gYWJvdmUgZm9yICIKKyJtb3JlIGluZm9ybWF0aW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyMDAKK21zZ2lkICIiCisiUGF0dGVybnMgYXJlIGFuIGV4dGVuc2lvbiBvZiB0aGUgSTxkZWItc3ltYm9scyg1KT4gZm9ybWF0IGhlbmNlIHRoZXkgYXJlICIKKyJvbmx5IHZhbGlkIGluIHN5bWJvbCBmaWxlIHRlbXBsYXRlcy4gUGF0dGVybiBzcGVjaWZpY2F0aW9uIHN5bnRheCBpcyBub3QgYW55ICIKKyJkaWZmZXJlbnQgZnJvbSB0aGUgb25lIG9mIGEgc3BlY2lmaWMgc3ltYm9sLiBIb3dldmVyLCBzeW1ib2wgbmFtZSBwYXJ0IG9mICIKKyJ0aGUgc3BlY2lmaWNhdGlvbiBzZXJ2ZXMgYXMgYW4gZXhwcmVzc2lvbiB0byBiZSBtYXRjaGVkIGFnYWluc3QgIgorIkk8bmFtZUB2ZXJzaW9uPiBvZiB0aGUgcmVhbCBzeW1ib2wuIEluIG9yZGVyIHRvIGRpc3Rpbmd1aXNoIGFtb25nIGRpZmZlcmVudCAiCisicGF0dGVybiB0eXBlcywgYSBwYXR0ZXJuIHdpbGwgdHlwaWNhbGx5IGJlIHRhZ2dlZCB3aXRoIGEgc3BlY2lhbCB0YWcuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjIwMgorbXNnaWQgIkF0IHRoZSBtb21lbnQsIEI8ZHBrZy1nZW5zeW1ib2xzPiBzdXBwb3J0cyB0aHJlZSBiYXNpYyBwYXR0ZXJuIHR5cGVzOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyMTQKK21zZ2lkICIiCisiVGhpcyBwYXR0ZXJuIGlzIGRlbm90ZWQgYnkgdGhlIEk8YysrPiB0YWcuIEl0IG1hdGNoZXMgb25seSBDKysgc3ltYm9scyBieSAiCisidGhlaXIgZGVtYW5nbGVkIHN5bWJvbCBuYW1lIChhcyBlbWl0dGVkIGJ5IEI8YysrZmlsdD4oMSkgdXRpbGl0eSkuIFRoaXMgIgorInBhdHRlcm4gaXMgdmVyeSBoYW5keSBmb3IgbWF0Y2hpbmcgc3ltYm9scyB3aGljaCBtYW5nbGVkIG5hbWVzIG1pZ2h0IHZhcnkgIgorImFjcm9zcyBkaWZmZXJlbnQgYXJjaGl0ZWN0dXJlcyB3aGlsZSB0aGVpciBkZW1hbmdsZWQgbmFtZXMgcmVtYWluIHRoZSBzYW1lLiAiCisiT25lIGdyb3VwIG9mIHN1Y2ggc3ltYm9scyBpcyBJPG5vbi12aXJ0dWFsIHRodW5rcz4gd2hpY2ggaGF2ZSBhcmNoaXRlY3R1cmUgIgorInNwZWNpZmljIG9mZnNldHMgZW1iZWRkZWQgaW4gdGhlaXIgbWFuZ2xlZCBuYW1lcy4gQSBjb21tb24gaW5zdGFuY2Ugb2YgdGhpcyAiCisiY2FzZSBpcyBhIHZpcnR1YWwgZGVzdHJ1Y3RvciB3aGljaCB1bmRlciBkaWFtb25kIGluaGVyaXRhbmNlIG5lZWRzIGEgbm9uLSIKKyJ2aXJ0dWFsIHRodW5rIHN5bWJvbC4gRm9yIGV4YW1wbGUsIGV2ZW4gaWYgX1pUaG44X04zTlNCNkNsYXNzREQxRXZAQmFzZSBvbiAiCisiMzJiaXQgYXJjaGl0ZWN0dXJlcyB3aWxsIHByb2JhYmx5IGJlIF9aVGhuMTZfTjNOU0I2Q2xhc3NERDFFdkBCYXNlIG9uIDY0Yml0ICIKKyJvbmVzLCBpdCBjYW4gYmUgbWF0Y2hlZCB3aXRoIGEgc2luZ2xlIEk8YysrPiBwYXR0ZXJuOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyMjAKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisibGliZHVtbXkuc28uMSBsaWJkdW1teTEgI01JTlZFUiNcbiIKKyIgWy4uLl1cbiIKKyIgKGMrKylcIm5vbi12aXJ0dWFsIHRodW5rIHRvIE5TQjo6Q2xhc3NEOjp+Q2xhc3NEKClAQmFzZVwiIDEuMFxuIgorIiBbLi4uXVxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjIyMgorbXNnaWQgIiIKKyJUaGUgZGVtYW5nbGVkIG5hbWUgYWJvdmUgY2FuIGJlIG9idGFpbmVkIGJ5IGV4ZWN1dGluZyB0aGUgZm9sbG93aW5nIGNvbW1hbmQ6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjIyNAorIywgbm8td3JhcAorbXNnaWQgIiAkIGVjaG8gJ19aVGhuOF9OM05TQjZDbGFzc0REMUV2QEJhc2UnIHwgYysrZmlsdFxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjIzMgorbXNnaWQgIiIKKyJQbGVhc2Ugbm90ZSB0aGF0IHdoaWxlIG1hbmdsZWQgbmFtZSBpcyB1bmlxdWUgaW4gdGhlIGxpYnJhcnkgYnkgZGVmaW5pdGlvbiwgIgorInRoaXMgaXMgbm90IG5lY2Vzc2FyaWx5IHRydWUgZm9yIGRlbWFuZ2xlZCBuYW1lcy4gQSBjb3VwbGUgb2YgZGlzdGluY3QgcmVhbCAiCisic3ltYm9scyBtYXkgaGF2ZSB0aGUgc2FtZSBkZW1hbmdsZWQgbmFtZS4gRm9yIGV4YW1wbGUsIHRoYXQncyB0aGUgY2FzZSB3aXRoICIKKyJub24tdmlydHVhbCB0aHVuayBzeW1ib2xzIGluIGNvbXBsZXggaW5oZXJpdGFuY2UgY29uZmlndXJhdGlvbnMgb3Igd2l0aCBtb3N0ICIKKyJjb25zdHJ1Y3RvcnMgYW5kIGRlc3RydWN0b3JzIChzaW5jZSBnKysgdHlwaWNhbGx5IGdlbmVyYXRlcyB0d28gcmVhbCBzeW1ib2xzICIKKyJmb3IgdGhlbSkuIEhvd2V2ZXIsIGFzIHRoZXNlIGNvbGxpc2lvbnMgaGFwcGVuIG9uIHRoZSBBQkkgbGV2ZWwsIHRoZXkgc2hvdWxkICIKKyJub3QgZGVncmFkZSBxdWFsaXR5IG9mIHRoZSBzeW1ib2wgZmlsZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjM5Cittc2dpZCAiIgorIlRoaXMgcGF0dGVybiBpcyBkZW5vdGVkIGJ5IHRoZSBJPHN5bXZlcj4gdGFnLiBXZWxsIG1haW50YWluZWQgbGlicmFyaWVzIGhhdmUgIgorInZlcnNpb25lZCBzeW1ib2xzIHdoZXJlIGVhY2ggdmVyc2lvbiBjb3JyZXNwb25kcyB0byB0aGUgdXBzdHJlYW0gdmVyc2lvbiAiCisid2hlcmUgdGhlIHN5bWJvbCBnb3QgYWRkZWQuIElmIHRoYXQncyB0aGUgY2FzZSwgeW91IGNhbiB1c2UgYSBJPHN5bXZlcj4gIgorInBhdHRlcm4gdG8gbWF0Y2ggYW55IHN5bWJvbCBhc3NvY2lhdGVkIHRvIHRoZSBzcGVjaWZpYyB2ZXJzaW9uLiBGb3IgZXhhbXBsZToiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjQ2CisjLCBuby13cmFwCittc2dpZCAiIgorImxpYmMuc28uNiBsaWJjNiAjTUlOVkVSI1xuIgorIiAoc3ltdmVyKUdMSUJDXzIuMCAyLjBcbiIKKyIgWy4uLl1cbiIKKyIgKHN5bXZlcilHTElCQ18yLjcgMi43XG4iCisiIGFjY2Vzc0BHTElCQ18yLjAgMi4yXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjUyCittc2dpZCAiIgorIkFsbCBzeW1ib2xzIGFzc29jaWF0ZWQgd2l0aCB2ZXJzaW9ucyBHTElCQ18yLjAgYW5kIEdMSUJDXzIuNyB3aWxsIGxlYWQgdG8gIgorIm1pbmltYWwgdmVyc2lvbiBvZiAyLjAgYW5kIDIuNyByZXNwZWN0aXZlbHkgd2l0aCB0aGUgZXhjZXB0aW9uIG9mIHRoZSBzeW1ib2wgIgorImFjY2Vzc0BHTElCQ18yLjAuIFRoZSBsYXR0ZXIgd2lsbCBsZWFkIHRvIGEgbWluaW1hbCBkZXBlbmRlbmN5IG9uIGxpYmM2ICIKKyJ2ZXJzaW9uIDIuMiBkZXNwaXRlIGJlaW5nIGluIHRoZSBzY29wZSBvZiB0aGUgXCIoc3ltdmVyKUdMSUJDXzIuMFwiIHBhdHRlcm4gIgorImJlY2F1c2Ugc3BlY2lmaWMgc3ltYm9scyB0YWtlIHByZWNlZGVuY2Ugb3ZlciBwYXR0ZXJucy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjU3Cittc2dpZCAiIgorIlBsZWFzZSBub3RlIHRoYXQgd2hpbGUgb2xkIHN0eWxlIHdpbGRjYXJkIHBhdHRlcm5zIChkZW5vdGVkIGJ5IFwiKkB2ZXJzaW9uXCIgIgorImluIHRoZSBzeW1ib2wgbmFtZSBmaWVsZCkgYXJlIHN0aWxsIHN1cHBvcnRlZCwgdGhleSBoYXZlIGJlZW4gZGVwcmVjYXRlZCBieSAiCisibmV3IHN0eWxlIHN5bnRheCBcIihzeW12ZXJ8b3B0aW9uYWwpdmVyc2lvblwiLiBGb3IgZXhhbXBsZSwgXCIqQEdMSUJDXzIuMCAiCisiMi4wXCIgc2hvdWxkIGJlIHdyaXR0ZW4gYXMgXCIoc3ltdmVyfG9wdGlvbmFsKUdMSUJDXzIuMCAyLjBcIiBpZiB0aGUgc2FtZSAiCisiYmVoYXZpb3VyIGlzIG5lZWRlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjY1Cittc2dpZCAiIgorIlJlZ3VsYXIgZXhwcmVzc2lvbiBwYXR0ZXJucyBhcmUgZGVub3RlZCBieSB0aGUgSTxyZWdleD4gdGFnLiBUaGV5IG1hdGNoIGJ5ICIKKyJ0aGUgcGVybCByZWd1bGFyIGV4cHJlc3Npb24gc3BlY2lmaWVkIGluIHRoZSBzeW1ib2wgbmFtZSBmaWVsZC4gQSByZWd1bGFyICIKKyJleHByZXNzaW9uIGlzIG1hdGNoZWQgYXMgaXQgaXMsIHRoZXJlZm9yZSBkbyBub3QgZm9yZ2V0IHRvIHN0YXJ0IGl0IHdpdGggdGhlICIKKyJJPF4+IGNoYXJhY3RlciBvciBpdCBtYXkgbWF0Y2ggYW55IHBhcnQgb2YgdGhlIHJlYWwgc3ltYm9sIEk8bmFtZUB2ZXJzaW9uPiAiCisic3RyaW5nLiBGb3IgZXhhbXBsZToiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjcwCisjLCBuby13cmFwCittc2dpZCAiIgorImxpYmR1bW15LnNvLjEgbGliZHVtbXkxICNNSU5WRVIjXG4iCisiIChyZWdleClcIl5teXN0YWNrXy4qQEJhc2UkXCIgMS4wXG4iCisiIChyZWdleHxvcHRpb25hbClcInByaXZhdGVcIiAxLjBcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyNzUKK21zZ2lkICIiCisiU3ltYm9scyBsaWtlIFwibXlzdGFja19uZXdAQmFzZVwiLCBcIm15c3RhY2tfcHVzaEBCYXNlXCIsIFwibXlzdGFja19wb3BAQmFzZSIKKyJcIiBldGMuICB3aWxsIGJlIG1hdGNoZWQgYnkgdGhlIGZpcnN0IHBhdHRlcm4gd2hpbGUgZS5nLiAiCisiXCJuZ19teXN0YWNrX25ld0BCYXNlXCIgd29uJ3QuICBUaGUgc2Vjb25kIHBhdHRlcm4gd2lsbCBtYXRjaCBhbGwgc3ltYm9scyAiCisiaGF2aW5nIHRoZSBzdHJpbmcgXCJwcml2YXRlXCIgaW4gdGhlaXIgbmFtZXMgYW5kIG1hdGNoZXMgd2lsbCBpbmhlcml0ICIKKyJJPG9wdGlvbmFsPiB0YWcgZnJvbSB0aGUgcGF0dGVybi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjgwCittc2dpZCAiIgorIkJhc2ljIHBhdHRlcm5zIGxpc3RlZCBhYm92ZSBjYW4gYmUgY29tYmluZWQgd2hlcmUgaXQgbWFrZXMgc2Vuc2UuIEluIHRoYXQgIgorImNhc2UsIHRoZXkgYXJlIHByb2Nlc3NlZCBpbiB0aGUgb3JkZXIgaW4gd2hpY2ggdGhlIHRhZ3MgYXJlIHNwZWNpZmllZC4gRm9yICIKKyJleGFtcGxlLCBib3RoIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjI4MworIywgbm8td3JhcAorbXNnaWQgIiIKKyIgKGMrK3xyZWdleClcIl5OU0E6OkNsYXNzQTo6UHJpdmF0ZTo6cHJpdm1ldGhvZFxcZWRcXGUoaW50XFxlKUBCYXNlXCIgMS4wXG4iCisiIChyZWdleHxjKyspTjNOU0E2Q2xhc3NBN1ByaXZhdGUxMXByaXZtZXRob2RcXGVkRWlAQmFzZSAxLjBcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyOTMKK21zZ2lkICIiCisid2lsbCBtYXRjaCBzeW1ib2xzIFwiX1pOM05TQTZDbGFzc0E3UHJpdmF0ZTExcHJpdm1ldGhvZDFFaUBCYXNlXCIgYW5kICIKKyJcIl9aTjNOU0E2Q2xhc3NBN1ByaXZhdGUxMXByaXZtZXRob2QyRWlAQmFzZVwiLiBXaGVuIG1hdGNoaW5nIHRoZSBmaXJzdCAiCisicGF0dGVybiwgdGhlIHJhdyBzeW1ib2wgaXMgZmlyc3QgZGVtYW5nbGVkIGFzIEMrKyBzeW1ib2wsIHRoZW4gdGhlIGRlbWFuZ2xlZCAiCisibmFtZSBpcyBtYXRjaGVkIGFnYWluc3QgdGhlIHJlZ3VsYXIgZXhwcmVzc2lvbi4gT24gdGhlIG90aGVyIGhhbmQsIHdoZW4gIgorIm1hdGNoaW5nIHRoZSBzZWNvbmQgcGF0dGVybiwgcmVndWxhciBleHByZXNzaW9uIGlzIG1hdGNoZWQgYWdhaW5zdCB0aGUgcmF3ICIKKyJzeW1ib2wgbmFtZSwgdGhlbiB0aGUgc3ltYm9sIGlzIHRlc3RlZCBpZiBpdCBpcyBDKysgb25lIGJ5IGF0dGVtcHRpbmcgdG8gIgorImRlbWFuZ2xlIGl0LiBBIGZhaWx1cmUgb2YgYW55IGJhc2ljIHBhdHRlcm4gd2lsbCByZXN1bHQgaW4gdGhlIGZhaWx1cmUgb2YgIgorInRoZSB3aG9sZSBwYXR0ZXJuLiAgVGhlcmVmb3JlLCBmb3IgZXhhbXBsZSwgIgorIlwiX19OM05TQTZDbGFzc0E3UHJpdmF0ZTExcHJpdm1ldGhvZFxcZWRFaUBCYXNlXCIgd2lsbCBub3QgbWF0Y2ggZWl0aGVyIG9mICIKKyJ0aGUgcGF0dGVybnMgYmVjYXVzZSBpdCBpcyBub3QgYSB2YWxpZCBDKysgc3ltYm9sLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyOTkKK21zZ2lkICIiCisiSW4gZ2VuZXJhbCwgYWxsIHBhdHRlcm5zIGFyZSBkaXZpZGVkIGludG8gdHdvIGdyb3VwczogYWxpYXNlcyAoYmFzaWMgSTxjKys+ICIKKyJhbmQgSTxzeW12ZXI+KSBhbmQgZ2VuZXJpYyBwYXR0ZXJucyAoSTxyZWdleD4sIGFsbCBjb21iaW5hdGlvbnMgb2YgbXVsdGlwbGUgIgorImJhc2ljIHBhdHRlcm5zKS4gTWF0Y2hpbmcgb2YgYmFzaWMgYWxpYXMtYmFzZWQgcGF0dGVybnMgaXMgZmFzdCAoTygxKSkgICIKKyJ3aGlsZSBnZW5lcmljIHBhdHRlcm5zIGFyZSBPKE4pIChOIC0gZ2VuZXJpYyBwYXR0ZXJuIGNvdW50KSBmb3IgZWFjaCAiCisic3ltYm9sLiAgVGhlcmVmb3JlLCBpdCBpcyByZWNvbW1lbmRlZCBub3QgdG8gb3ZlcnVzZSBnZW5lcmljIHBhdHRlcm5zLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozMDYKK21zZ2lkICIiCisiV2hlbiBtdWx0aXBsZSBwYXR0ZXJucyBtYXRjaCB0aGUgc2FtZSByZWFsIHN5bWJvbCwgYWxpYXNlcyAoZmlyc3QgSTxjKys+LCAiCisidGhlbiBJPHN5bXZlcj4pIGFyZSBwcmVmZXJyZWQgb3ZlciBnZW5lcmljIHBhdHRlcm5zLiBHZW5lcmljIHBhdHRlcm5zIGFyZSAiCisibWF0Y2hlZCBpbiB0aGUgb3JkZXIgdGhleSBhcmUgZm91bmQgaW4gdGhlIHN5bWJvbCBmaWxlIHRlbXBsYXRlIHVudGlsIHRoZSAiCisiZmlyc3Qgc3VjY2Vzcy4gIFBsZWFzZSBub3RlLCBob3dldmVyLCB0aGF0IG1hbnVhbCByZW9yZGVyaW5nIG9mIHRlbXBsYXRlICIKKyJmaWxlIGVudHJpZXMgaXMgbm90IHJlY29tbWVuZGVkIGJlY2F1c2UgQjxkcGtnLWdlbnN5bWJvbHM+IGdlbmVyYXRlcyBkaWZmcyAiCisiYmFzZWQgb24gdGhlIGFscGhhbnVtZXJpY2FsIG9yZGVyIG9mIHRoZWlyIG5hbWVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1nZW5zeW1ib2xzLjE6MzA2CisjLCBuby13cmFwCittc2dpZCAiVXNpbmcgaW5jbHVkZXMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzExCittc2dpZCAiIgorIldoZW4gdGhlIHNldCBvZiBleHBvcnRlZCBzeW1ib2xzIGRpZmZlciBiZXR3ZWVuIGFyY2hpdGVjdHVyZXMsIGl0IG1heSBiZWNvbWUgIgorImluZWZmaWNpZW50IHRvIHVzZSBhIHNpbmdsZSBzeW1ib2wgZmlsZS4gSW4gdGhvc2UgY2FzZXMsIGFuIGluY2x1ZGUgIgorImRpcmVjdGl2ZSBtYXkgcHJvdmUgdG8gYmUgdXNlZnVsIGluIGEgY291cGxlIG9mIHdheXM6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjMxNQorbXNnaWQgIiIKKyJZb3UgY2FuIGZhY3Rvcml6ZSB0aGUgY29tbW9uIHBhcnQgaW4gc29tZSBleHRlcm5hbCBmaWxlIGFuZCBpbmNsdWRlIHRoYXQgIgorImZpbGUgaW4geW91ciBJPHBhY2thZ2U+LnN5bWJvbHMuSTxhcmNoPiBmaWxlIGJ5IHVzaW5nIGFuIGluY2x1ZGUgZGlyZWN0aXZlICIKKyJsaWtlIHRoaXM6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjMxNworbXNnaWQgIiNpbmNsdWRlIFwiSTxwYWNrYWdlcz4uc3ltYm9scy5jb21tb25cIiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozMTkKK21zZ2lkICJUaGUgaW5jbHVkZSBkaXJlY3RpdmUgbWF5IGFsc28gYmUgdGFnZ2VkIGxpa2UgYW55IHN5bWJvbDoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzIxCittc2dpZCAiKHRhZ3wuLnx0YWdOKSNpbmNsdWRlIFwiZmlsZS10by1pbmNsdWRlXCIiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzI2Cittc2dpZCAiIgorIkFzIGEgcmVzdWx0LCBhbGwgc3ltYm9scyBpbmNsdWRlZCBmcm9tIEk8ZmlsZS10by1pbmNsdWRlPiB3aWxsIGJlIGNvbnNpZGVyZWQgIgorInRvIGJlIHRhZ2dlZCB3aXRoIEk8dGFnPiAuLiBJPHRhZ04+IGJ5IGRlZmF1bHQuIFlvdSBjYW4gdXNlIHRoaXMgZmVhdHVyZSB0byAiCisiY3JlYXRlIGEgY29tbW9uIEk8cGFja2FnZT4uc3ltYm9scyBmaWxlIHdoaWNoIGluY2x1ZGVzIGFyY2hpdGVjdHVyZSBzcGVjaWZpYyAiCisic3ltYm9sIGZpbGVzOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozMzEKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiICBjb21tb25fc3ltYm9sMUBCYXNlIDEuMFxuIgorIiAoYXJjaD1hbWQ2NCBpYTY0IGFscGhhKSNpbmNsdWRlIFwicGFja2FnZS5zeW1ib2xzLjY0Yml0XCJcbiIKKyIgKGFyY2g9IWFtZDY0ICFpYTY0ICFhbHBoYSkjaW5jbHVkZSBcInBhY2thZ2Uuc3ltYm9scy4zMmJpdFwiXG4iCisiICBjb21tb25fc3ltYm9sMkBCYXNlIDEuMFxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM0MAorbXNnaWQgIiIKKyJUaGUgc3ltYm9scyBmaWxlcyBhcmUgcmVhZCBsaW5lIGJ5IGxpbmUsIGFuZCBpbmNsdWRlIGRpcmVjdGl2ZXMgYXJlICIKKyJwcm9jZXNzZWQgYXMgc29vbiBhcyB0aGV5IGFyZSBlbmNvdW50ZXJlZC4gVGhpcyBtZWFucyB0aGF0IHRoZSBjb250ZW50IG9mICIKKyJ0aGUgaW5jbHVkZWQgZmlsZSBjYW4gb3ZlcnJpZGUgYW55IGNvbnRlbnQgdGhhdCBhcHBlYXJlZCBiZWZvcmUgdGhlIGluY2x1ZGUgIgorImRpcmVjdGl2ZSBhbmQgdGhhdCBhbnkgY29udGVudCBhZnRlciB0aGUgZGlyZWN0aXZlIGNhbiBvdmVycmlkZSBhbnl0aGluZyAiCisiY29udGFpbmVkIGluIHRoZSBpbmNsdWRlZCBmaWxlLiBBbnkgc3ltYm9sIChvciBldmVuIGFub3RoZXIgI2luY2x1ZGUgIgorImRpcmVjdGl2ZSkgaW4gdGhlIGluY2x1ZGVkIGZpbGUgY2FuIHNwZWNpZnkgYWRkaXRpb25hbCB0YWdzIG9yIG92ZXJyaWRlICIKKyJ2YWx1ZXMgb2YgdGhlIGluaGVyaXRlZCB0YWdzIGluIGl0cyB0YWcgc3BlY2lmaWNhdGlvbi4gSG93ZXZlciwgdGhlcmUgaXMgbm8gIgorIndheSBmb3IgdGhlIHN5bWJvbCB0byByZW1vdmUgYW55IG9mIHRoZSBpbmhlcml0ZWQgdGFncy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzQ1Cittc2dpZCAiIgorIkFuIGluY2x1ZGVkIGZpbGUgY2FuIHJlcGVhdCB0aGUgaGVhZGVyIGxpbmUgY29udGFpbmluZyB0aGUgU09OQU1FIG9mIHRoZSAiCisibGlicmFyeS4gSW4gdGhhdCBjYXNlLCBpdCBvdmVycmlkZXMgYW55IGhlYWRlciBsaW5lIHByZXZpb3VzbHkgcmVhZC4gICIKKyJIb3dldmVyLCBpbiBnZW5lcmFsIGl0J3MgYmVzdCB0byBhdm9pZCBkdXBsaWNhdGluZyBoZWFkZXIgbGluZXMuIE9uZSB3YXkgdG8gIgorImRvIGl0IGlzIHRoZSBmb2xsb3dpbmc6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM0OAorIywgbm8td3JhcAorbXNnaWQgIiIKKyIjaW5jbHVkZSBcImxpYnNvbWV0aGluZzEuc3ltYm9scy5jb21tb25cIlxuIgorIiBhcmNoX3NwZWNpZmljX3N5bWJvbEBCYXNlIDEuMFxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLWdlbnN5bWJvbHMuMTozNDgKKyMsIG5vLXdyYXAKK21zZ2lkICJHb29kIGxpYnJhcnkgbWFuYWdlbWVudCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozNTEKK21zZ2lkICJBIHdlbGwtbWFpbnRhaW5lZCBsaWJyYXJ5IGhhcyB0aGUgZm9sbG93aW5nIGZlYXR1cmVzOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozNTUKK21zZ2lkICIiCisiaXRzIEFQSSBpcyBzdGFibGUgKHB1YmxpYyBzeW1ib2xzIGFyZSBuZXZlciBkcm9wcGVkLCBvbmx5IG5ldyBwdWJsaWMgc3ltYm9scyAiCisiYXJlIGFkZGVkKSBhbmQgY2hhbmdlcyBpbiBpbmNvbXBhdGlibGUgd2F5cyBvbmx5IHdoZW4gdGhlIFNPTkFNRSBjaGFuZ2VzOyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozNTgKK21zZ2lkICIiCisiaWRlYWxseSwgaXQgdXNlcyBzeW1ib2wgdmVyc2lvbmluZyB0byBhY2hpZXZlIEFCSSBzdGFiaWxpdHkgZGVzcGl0ZSBpbnRlcm5hbCAiCisiY2hhbmdlcyBhbmQgQVBJIGV4dGVuc2lvbjsiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzYxCittc2dpZCAiIgorIml0IGRvZXNuJ3QgZXhwb3J0IHByaXZhdGUgc3ltYm9scyAoc3VjaCBzeW1ib2xzIGNhbiBiZSB0YWdnZWQgb3B0aW9uYWwgYXMgIgorIndvcmthcm91bmQpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozNjkKK21zZ2lkICIiCisiV2hpbGUgbWFpbnRhaW5pbmcgdGhlIHN5bWJvbHMgZmlsZSwgaXQncyBlYXN5IHRvIG5vdGljZSBhcHBlYXJhbmNlIGFuZCAiCisiZGlzYXBwZWFyYW5jZSBvZiBzeW1ib2xzLiBCdXQgaXQncyBtb3JlIGRpZmZpY3VsdCB0byBjYXRjaCBpbmNvbXBhdGlibGUgQVBJICIKKyJhbmQgQUJJIGNoYW5nZS4gVGh1cyB0aGUgbWFpbnRhaW5lciBzaG91bGQgcmVhZCB0aG9yb3VnaGx5IHRoZSB1cHN0cmVhbSAiCisiY2hhbmdlbG9nIGxvb2tpbmcgZm9yIGNhc2VzIHdoZXJlIHRoZSBydWxlcyBvZiBnb29kIGxpYnJhcnkgbWFuYWdlbWVudCBoYXZlICIKKyJiZWVuIGJyb2tlbi4gSWYgcG90ZW50aWFsIHByb2JsZW1zIGFyZSBkaXNjb3ZlcmVkLCB0aGUgdXBzdHJlYW0gYXV0aG9yICIKKyJzaG91bGQgYmUgbm90aWZpZWQgYXMgYW4gdXBzdHJlYW0gZml4IGlzIGFsd2F5cyBiZXR0ZXIgdGhhbiBhIERlYmlhbiAiCisic3BlY2lmaWMgd29yay1hcm91bmQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbnN5bWJvbHMuMTozNzAKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjwtUD5JPHBhY2thZ2VidWlsZGRpcj4iCittc2dpZCAiQjwtUD5JPHBhY2thZ2UtYnVpbGQtZGlyPiIKK21zZ3N0ciAiQjwtUD5JPGthdGFsb2dfYnVkb3dhbmlhX3Bha2lldHU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozNzMKKyMsIGZ1enp5CisjfCBtc2dpZCAiU2NhbiBmb3IgKi5JPHR5cGU+IHBhY2thZ2VzLCBpbnN0ZWFkIG9mICouZGViLiIKK21zZ2lkICJTY2FuIEk8cGFja2FnZS1idWlsZC1kaXI+IGluc3RlYWQgb2YgZGViaWFuL3RtcC4iCittc2dzdHIgIlN6dWthbmllIHBsaWvDs3cgKi5JPHR5cD4gemFtaWFzdCAqLmRlYi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM3NworbXNnaWQgIiIKKyJEZWZpbmUgdGhlIHBhY2thZ2UgbmFtZS4gUmVxdWlyZWQgaWYgbW9yZSB0aGFuIG9uZSBiaW5hcnkgcGFja2FnZSBpcyBsaXN0ZWQgIgorImluIGRlYmlhbi9jb250cm9sIChvciBpZiB0aGVyZSdzIG5vIGRlYmlhbi9jb250cm9sIGZpbGUpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozODEKK21zZ2lkICIiCisiRGVmaW5lIHRoZSBwYWNrYWdlIHZlcnNpb24uIERlZmF1bHRzIHRvIHRoZSB2ZXJzaW9uIGV4dHJhY3RlZCBmcm9tIGRlYmlhbi8iCisiY2hhbmdlbG9nLiBSZXF1aXJlZCBpZiBjYWxsZWQgb3V0c2lkZSBvZiBhIHNvdXJjZSBwYWNrYWdlIHRyZWUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbnN5bWJvbHMuMTozODEKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjwtUj5JPHJ1bGVzLWZpbGU+IgorbXNnaWQgIkI8LWU+STxsaWJyYXJ5LWZpbGU+IgorbXNnc3RyICJCPC1SPkk8cGxpa19ydWxlcz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM4NworbXNnaWQgIiIKKyJPbmx5IGFuYWx5emUgbGlicmFyaWVzIGV4cGxpY2l0bHkgbGlzdGVkIGluc3RlYWQgb2YgZmluZGluZyBhbGwgcHVibGljICIKKyJsaWJyYXJpZXMuIFlvdSBjYW4gdXNlIGEgcmVndWxhciBleHByZXNzaW9uIGluIEk8bGlicmFyeS1maWxlPiB0byBtYXRjaCAiCisibXVsdGlwbGUgbGlicmFyaWVzIHdpdGggYSBzaW5nbGUgYXJndW1lbnQgKG90aGVyd2lzZSB5b3UgbmVlZCBtdWx0aXBsZSBCPC0iCisiZT4pLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5zeW1ib2xzLjE6Mzg3CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8LW4+STxmaWxlbmFtZT4iCittc2dpZCAiQjwtST5JPGZpbGVuYW1lPiIKK21zZ3N0ciAiQjwtbj5JPG5hendhX3BsaWt1PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzkxCittc2dpZCAiIgorIlVzZSBJPGZpbGVuYW1lPiBhcyByZWZlcmVuY2UgZmlsZSB0byBnZW5lcmF0ZSB0aGUgc3ltYm9scyBmaWxlIHRoYXQgaXMgIgorImludGVncmF0ZWQgaW4gdGhlIHBhY2thZ2UgaXRzZWxmLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozOTUKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlByaW50IHRoZSBjb250cm9sIGZpbGUgdG8gc3RhbmRhcmQgb3V0cHV0LCByYXRoZXIgdGhhbiB0byBCPGRlYmlhbi90bXAvIgorI3wgIkRFQklBTi9jb250cm9sPiAob3IgSTxwYWNrYWdlYnVpbGRkaXI+QjwvREVCSUFOL2NvbnRyb2w+IGlmIEI8LVA+IHdhcyAiCisjfCAidXNlZCkuIgorbXNnaWQgIiIKKyJQcmludCB0aGUgZ2VuZXJhdGVkIHN5bWJvbHMgZmlsZSB0byBzdGFuZGFyZCBvdXRwdXQsIHJhdGhlciB0aGFuIGJlaW5nICIKKyJzdG9yZWQgaW4gdGhlIHBhY2thZ2UgYnVpbGQgdHJlZS4iCittc2dzdHIgIiIKKyJXeXBpc3VqZSBwbGlrIGtvbnRyb2xueSBuYSBzdGFuZGFyZG93ZSB3eWrFm2NpZSwgYSBuaWUgZG8gcGxpa3UgQjxkZWJpYW4vdG1wLyIKKyJERUJJQU4vY29udHJvbD4gKGx1YiBJPGthdGFsb2d1X2J1ZG93YW5pYV9wYWtpZXR1PkI8L0RFQklBTi9jb250cm9sPiwgZ2R5ICIKKyJ1xbx5dG8gQjwtUD4pLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM5NQorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPC1uPkk8ZmlsZW5hbWU+IgorbXNnaWQgIkI8LU8+STxmaWxlbmFtZT4iCittc2dzdHIgIkI8LW4+STxuYXp3YV9wbGlrdT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQwMQorbXNnaWQgIiIKKyJTdG9yZSB0aGUgZ2VuZXJhdGVkIHN5bWJvbHMgZmlsZSBhcyBJPGZpbGVuYW1lPi4gSWYgSTxmaWxlbmFtZT4gaXMgcHJlLSIKKyJleGlzdGluZywgaXRzIGNvbnRlbnQgaXMgdXNlZCBhcyBiYXNpcyBmb3IgdGhlIGdlbmVyYXRlZCBzeW1ib2xzIGZpbGUuICBZb3UgIgorImNhbiB1c2UgdGhpcyBmZWF0dXJlIHRvIHVwZGF0ZSBhIHN5bWJvbHMgZmlsZSBzbyB0aGF0IGl0IG1hdGNoZXMgYSBuZXdlciAiCisidXBzdHJlYW0gdmVyc2lvbiBvZiB5b3VyIGxpYnJhcnkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0MDEKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjwtdGM+IgorbXNnaWQgIkI8LXQ+IgorbXNnc3RyICJCPC10Yz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQxMAorbXNnaWQgIiIKKyJXcml0ZSB0aGUgc3ltYm9sIGZpbGUgaW4gdGVtcGxhdGUgbW9kZSByYXRoZXIgdGhhbiB0aGUgZm9ybWF0IGNvbXBhdGlibGUgIgorIndpdGggSTxkZWItc3ltYm9scyg1KT4uIFRoZSBtYWluIGRpZmZlcmVuY2UgaXMgdGhhdCBpbiB0aGUgdGVtcGxhdGUgbW9kZSAiCisic3ltYm9sIG5hbWVzIGFuZCB0YWdzIGFyZSB3cml0dGVuIGluIHRoZWlyIG9yaWdpbmFsIGZvcm0gY29udHJhcnkgdG8gdGhlICIKKyJwb3N0LXByb2Nlc3NlZCBzeW1ib2wgbmFtZXMgd2l0aCB0YWdzIHN0cmlwcGVkIGluIHRoZSBjb21wYXRpYmlsaXR5IG1vZGUuICAiCisiTW9yZW92ZXIsIHNvbWUgc3ltYm9scyBtaWdodCBiZSBvbWl0dGVkIHdoZW4gd3JpdGluZyBhIHN0YW5kYXJkIEk8ZGViLXN5bWJvbHMiCisiKDUpPiBmaWxlIChhY2NvcmRpbmcgdG8gdGhlIHRhZyBwcm9jZXNzaW5nIHJ1bGVzKSB3aGlsZSBhbGwgc3ltYm9scyBhcmUgIgorImFsd2F5cyB3cml0dGVuIHRvIHRoZSBzeW1ib2wgZmlsZSB0ZW1wbGF0ZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQxMAorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPC1JPkk8W3BhdHRlcm5dPiIKK21zZ2lkICJCPC1jPkk8WzAtNF0+IgorbXNnc3RyICJCPC1JPkk8W3d6b3J6ZWNdPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDE4Cittc2dpZCAiIgorIkRlZmluZSB0aGUgY2hlY2tzIHRvIGRvIHdoZW4gY29tcGFyaW5nIHRoZSBnZW5lcmF0ZWQgc3ltYm9scyBmaWxlIHdpdGggdGhlICIKKyJ0ZW1wbGF0ZSBmaWxlIHVzZWQgYXMgc3RhcnRpbmcgcG9pbnQuIEJ5IGRlZmF1bHQgdGhlIGxldmVsIGlzIDEuIEluY3JlYXNpbmcgIgorImxldmVscyBkbyBtb3JlIGNoZWNrcyBhbmQgaW5jbHVkZSBhbGwgY2hlY2tzIG9mIGxvd2VyIGxldmVscy4gTGV2ZWwgMCBuZXZlciAiCisiZmFpbHMuIExldmVsIDEgZmFpbHMgaWYgc29tZSBzeW1ib2xzIGhhdmUgZGlzYXBwZWFyZWQuIExldmVsIDIgZmFpbHMgaWYgc29tZSAiCisibmV3IHN5bWJvbHMgaGF2ZSBiZWVuIGludHJvZHVjZWQuIExldmVsIDMgZmFpbHMgaWYgc29tZSBsaWJyYXJpZXMgaGF2ZSAiCisiZGlzYXBwZWFyZWQuIExldmVsIDQgZmFpbHMgaWYgc29tZSBsaWJyYXJpZXMgaGF2ZSBiZWVuIGludHJvZHVjZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQyMQorbXNnaWQgIiIKKyJUaGlzIHZhbHVlIGNhbiBiZSBvdmVycmlkZGVuIGJ5IHRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZSAiCisiRFBLR19HRU5TWU1CT0xTX0NIRUNLX0xFVkVMLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0MjcKK21zZ2lkICIiCisiS2VlcCBxdWlldCBhbmQgbmV2ZXIgZ2VuZXJhdGUgYSBkaWZmIGJldHdlZW4gZ2VuZXJhdGVkIHN5bWJvbHMgZmlsZSBhbmQgdGhlICIKKyJ0ZW1wbGF0ZSBmaWxlIHVzZWQgYXMgc3RhcnRpbmcgcG9pbnQgb3Igc2hvdyBhbnkgd2FybmluZ3MgYWJvdXQgbmV3L2xvc3QgIgorImxpYnJhcmllcyBvciBuZXcvbG9zdCBzeW1ib2xzLiBUaGlzIG9wdGlvbiBvbmx5IGRpc2FibGVzIGluZm9ybWF0aW9uYWwgIgorIm91dHB1dCBidXQgbm90IHRoZSBjaGVja3MgdGhlbXNlbHZlcyAoc2VlIEk8LWM+IG9wdGlvbikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0MjcKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjwtYT5JPGFyY2hpdGVjdHVyZT4iCittc2dpZCAiQjwtYT5JPGFyY2g+IgorbXNnc3RyICJCPC1hPkk8YXJjaGl0ZWt0dXJhPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDMyCittc2dpZCAiIgorIkFzc3VtZSBJPGFyY2g+IGFzIGhvc3QgYXJjaGl0ZWN0dXJlIHdoZW4gcHJvY2Vzc2luZyBzeW1ib2wgZmlsZXMuIFVzZSB0aGlzICIKKyJvcHRpb24gdG8gZ2VuZXJhdGUgYSBzeW1ib2wgZmlsZSBvciBkaWZmIGZvciBhbnkgYXJjaGl0ZWN0dXJlIHByb3ZpZGVkIGl0cyAiCisiYmluYXJpZXMgYXJlIGFscmVhZHkgYXZhaWxhYmxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0MzcKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIkVuYWJsZSB2ZXJib3NlIG1vZGUuIE51bWVyb3VzIG1lc3NhZ2VzIGFyZSBkaXNwbGF5ZWQgdG8gZXhwbGFpbiB3aGF0ICIKKyN8ICJCPGRwa2ctc2hsaWJkZXBzPiBkb2VzLiIKK21zZ2lkICIiCisiRW5hYmxlIGRlYnVnIG1vZGUuIE51bWVyb3VzIG1lc3NhZ2VzIGFyZSBkaXNwbGF5ZWQgdG8gZXhwbGFpbiB3aGF0IEI8ZHBrZy0iCisiZ2Vuc3ltYm9scz4gZG9lcy4iCittc2dzdHIgIiIKKyJXxYLEhWN6ZW5pZSBkb2RhdGtvd3ljaCBpbmZvcm1hY2ppLiBXecWbd2lldGxhbnljaCBqZXN0IHdpZWxlIGtvbXVuaWthdMOzdyAiCisidMWCdW1hY3rEhWN5Y2ggZHppYcWCYW5pZSBCPGRwa2ctc2hsaWJkZXBzPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0MzcKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjwtRz4iCittc2dpZCAiQjwtVj4iCittc2dzdHIgIkI8LUc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0NDMKK21zZ2lkICIiCisiRW5hYmxlIHZlcmJvc2UgbW9kZS4gVGhlIGdlbmVyYXRlZCBzeW1ib2xzIGZpbGUgY29udGFpbnMgZGVwcmVjYXRlZCBzeW1ib2xzICIKKyJhcyBjb21tZW50cy4gRnVydGhlcm1vcmUgaW4gdGVtcGxhdGUgbW9kZSwgcGF0dGVybiBzeW1ib2xzIGFyZSBmb2xsb3dlZCBieSAiCisiY29tbWVudHMgbGlzdGluZyByZWFsIHN5bWJvbHMgdGhhdCBoYXZlIG1hdGNoZWQgdGhlIHBhdHRlcm4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQ1MgorbXNnaWQgIkI8aHR0cDovL3Blb3BsZS5yZWRoYXQuY29tL2RyZXBwZXIvc3ltYm9sLXZlcnNpb25pbmc+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQ1NAorbXNnaWQgIkI8aHR0cDovL3Blb3BsZS5yZWRoYXQuY29tL2RyZXBwZXIvZ29vZHByYWN0aWNlLnBkZj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDU2Cittc2dpZCAiQjxodHRwOi8vcGVvcGxlLnJlZGhhdC5jb20vZHJlcHBlci9kc29ob3d0by5wZGY+IgorbXNnc3RyICIiCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQ1OQorIywgZnV6enkKKyN8IG1zZ2lkICJCPGRwa2ctZGViPigxKSwgQjxkcGtnPigxKSwgQjxkc2VsZWN0PigxKS4iCittc2dpZCAiQjxkZWItc3ltYm9scz4oNSksIEI8ZHBrZy1zaGxpYmRlcHM+KDEpLiIKK21zZ3N0ciAiQjxkcGtnLWRlYj4oMSksIEI8ZHBrZz4oMSksIEI8ZHNlbGVjdD4oMSkuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0NjIKKyMsIGZ1enp5CisjfCBtc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMDctMjAwOCBSYXBoYVxcWzplXWwgSGVydHpvZyIKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAwNy0yMDA5IFJhcGhhXFxbOmVdbCBIZXJ0em9nIgorbXNnc3RyICJDb3B5cmlnaHQgXFwoY28gMjAwNy0yMDA4IFJhcGhhXFxbOmVdbCBIZXJ0em9nIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxCisjLCBuby13cmFwCittc2dpZCAiZHBrZy1tYWludHNjcmlwdC1oZWxwZXIiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMTo0Cittc2dpZCAiIgorImRwa2ctbWFpbnRzY3JpcHQtaGVscGVyIC0gd29ya3MgYXJvdW5kIGtub3duIGRwa2cgbGltaXRhdGlvbnMgaW4gbWFpbnRhaW5lciAiCisic2NyaXB0cyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjgKK21zZ2lkICIiCisiQjxkcGtnLW1haW50c2NyaXB0LWhlbHBlcj4gSTxjb21tYW5kPiBbSTxwYXJhbWV0ZXI+Li4uXSBCPC0tPiBJPG1haW50LXNjcmlwdC0iCisicGFyYW1ldGVyPi4uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMTo5CisjLCBuby13cmFwCittc2dpZCAiQ09NTUFORFMgQU5EIFBBUkFNRVRFUlMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxMgorbXNnaWQgIkI8cm1fY29uZmZpbGU+IEk8Y29uZmZpbGU+IFtJPGxhc3R2ZXJzaW9uPiBbSTxwYWNrYWdlPl1dIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MTQKK21zZ2lkICIiCisiQjxtdl9jb25mZmlsZT4gSTxvbGRjb25mZmlsZT4gSTxuZXdjb25mZmlsZT4gW0k8bGFzdHZlcnNpb24+IFtJPHBhY2thZ2U+XV0iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToyMAorbXNnaWQgIiIKKyJUaGlzIHByb2dyYW0gaXMgZGVzaWduZWQgdG8gYmUgcnVuIHdpdGhpbiBtYWludGFpbmVyIHNjcmlwdHMgdG8gYWNoaWV2ZSBzb21lICIKKyJ0YXNrcyB0aGF0IGRwa2cgY2FuJ3QgKHlldCkgaGFuZGxlIG5hdGl2ZWx5IGVpdGhlciBiZWNhdXNlIG9mIGRlc2lnbiAiCisiZGVjaXNpb25zIG9yIGR1ZSB0byBjdXJyZW50IGxpbWl0YXRpb25zLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjI3Cittc2dpZCAiIgorIk1hbnkgb2YgdGhvc2UgdGFza3MgcmVxdWlyZSBjb29yZGluYXRlZCBhY3Rpb25zIGZyb20gc2V2ZXJhbCBtYWludGFpbmVyICIKKyJzY3JpcHRzIChCPHByZWluc3Q+LCBCPHBvc3RpbnN0PiwgQjxwcmVybT4sIEI8cG9zdHJtPikuIFRvIGF2b2lkIG1pc3Rha2VzICIKKyJ0aGUgc2FtZSBjYWxsIHNpbXBseSBuZWVkcyB0byBiZSBwdXQgaW4gYWxsIHNjcmlwdHMgYW5kIHRoZSBwcm9ncmFtIHdpbGwgIgorImF1dG9tYXRpY2FsbHkgYWRhcHQgaXRzIGJlaGF2aW91ciBiYXNlZCBvbiB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGUgIgorIkI8RFBLR19NQUlOVFNDUklQVF9OQU1FPiBhbmQgb24gdGhlIG1haW50YWluZXIgc2NyaXB0cyBhcmd1bWVudHMgdGhhdCB5b3UgIgorImhhdmUgdG8gZm9yd2FyZCBhZnRlciBhIGRvdWJsZSBkYXNoLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToyOAorIywgbm8td3JhcAorbXNnaWQgIkNPTkZGSUxFIFJFTEFURUQgVEFTS1MiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMTozOAorbXNnaWQgIiIKKyJXaGVuIHVwZ3JhZGluZyBhIHBhY2thZ2UsIGRwa2cgd2lsbCBub3QgYXV0b21hdGljYWxseSByZW1vdmUgYSBjb25mZmlsZSAoYSAiCisiY29uZmlndXJhdGlvbiBmaWxlIGZvciB3aGljaCBkcGtnIHNob3VsZCBwcmVzZXJ2ZSB1c2VyIGNoYW5nZXMpIGlmIGl0IGlzIG5vdCAiCisicHJlc2VudCBpbiB0aGUgbmV3ZXIgdmVyc2lvbi4gVGhlcmUgYXJlIHR3byBwcmluY2lwYWwgcmVhc29ucyBmb3IgdGhpczsgdGhlICIKKyJmaXJzdCBpcyB0aGF0IHRoZSBjb25mZmlsZSBjb3VsZCd2ZSBiZWVuIGRyb3BwZWQgYnkgYWNjaWRlbnQgYW5kIHRoZSBuZXh0ICIKKyJ2ZXJzaW9uIGNvdWxkIHJlc3RvcmUgaXQsIHVzZXJzIHdvdWxkbid0IHdhbnQgdGhlaXIgY2hhbmdlcyB0aHJvd24gYXdheS4gVGhlICIKKyJzZWNvbmQgaXMgdG8gYWxsb3cgcGFja2FnZXMgdG8gdHJhbnNpdGlvbiBmaWxlcyBmcm9tIGEgZHBrZy1tYWludGFpbmVkICIKKyJjb25mZmlsZSB0byBhIGZpbGUgbWFpbnRhaW5lZCBieSB0aGUgcGFja2FnZSdzIG1haW50YWluZXIgc2NyaXB0cywgdXN1YWxseSAiCisid2l0aCBhIHRvb2wgbGlrZSBkZWJjb25mIG9yIHVjZi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMTo0MworbXNnaWQgIiIKKyJUaGlzIG1lYW5zIHRoYXQgaWYgYSBwYWNrYWdlIGlzIGludGVuZGVkIHRvIHJlbmFtZSBvciByZW1vdmUgYSBjb25mZmlsZSwgaXQgIgorIm11c3QgZXhwbGljaXRseSBkbyBzbyBhbmQgQjxkcGtnLW1haW50c2NyaXB0LWhlbHBlcj4gY2FuIGJlIHVzZWQgdG8gIgorImltcGxlbWVudCBncmFjZWZ1bCBkZWxldGlvbiBhbmQgbW92aW5nIG9mIGNvbmZmaWxlcyB3aXRoaW4gbWFpbnRhaW5lciAiCisic2NyaXB0cy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6NDQKKyMsIG5vLXdyYXAKK21zZ2lkICJSRU1PVklORyBBIENPTkZGSUxFIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6NTAKK21zZ2lkICIiCisiSWYgYSBjb25mZmlsZSBpcyBjb21wbGV0ZWx5IHJlbW92ZWQsIGl0IHNob3VsZCBiZSByZW1vdmVkIGZyb20gZGlzaywgdW5sZXNzICIKKyJ0aGUgdXNlciBoYXMgbW9kaWZpZWQgaXQuIElmIHRoZXJlIGFyZSBsb2NhbCBtb2RpZmljYXRpb25zLCB0aGV5IHNob3VsZCBiZSAiCisicHJlc2VydmVkLiBJZiB0aGUgcGFja2FnZSB1cGdyYWRlcyBhYm9ydHMsIHRoZSBuZXdseSBvYnNvbGV0ZSBjb25mZmlsZSAiCisic2hvdWxkIG5vdCBkaXNhcHBlYXIuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6NTMKK21zZ2lkICIiCisiQWxsIG9mIHRoaXMgaXMgaW1wbGVtZW50ZWQgYnkgcHV0dGluZyB0aGUgZm9sbG93aW5nIHNoZWxsIHNuaXBwZXQgaW4gdGhlICIKKyJCPHByZWluc3Q+LCBCPHBvc3RpbnN0PiBhbmQgQjxwb3N0cm0+IG1haW50YWluZXIgc2NyaXB0czoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMTo1NgorIywgbm8td3JhcAorbXNnaWQgIiIKKyIgICAgZHBrZy1tYWludHNjcmlwdC1oZWxwZXIgcm1fY29uZmZpbGUgXFxlXG4iCisiICAgICAgICBJPGNvbmZmaWxlPiBJPGxhc3R2ZXJzaW9uPiBJPHBhY2thZ2U+IC0tIFwiJEBcIlxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6NjYKK21zZ2lkICIiCisiSTxjb25mZmlsZT4gaXMgdGhlIGZpbGVuYW1lIG9mIHRoZSBjb25mZmlsZSB0byByZW1vdmUuICBJPGxhc3R2ZXJzaW9uPiBpcyAiCisidGhlIGxhc3QgdmVyc2lvbiBvZiB0aGUgcGFja2FnZSB0aGF0IGNvbnRhaW5lZCB0aGUgY29uZmZpbGUgKG9yIHRoZSBsYXN0ICIKKyJ2ZXJzaW9uIG9mIHRoZSBwYWNrYWdlIHRoYXQgZGlkIG5vdCB0YWtlIGNhcmUgdG8gcmVtb3ZlIHRoZSBvYnNvbGV0ZSAiCisiY29uZmZpbGUgaWYgdGhpcyB3YXMgbm90IGltbWVkaWF0ZWx5IGltcGxlbWVudGVkKS4gIElmIEk8bGFzdHZlcnNpb24+IGlzICIKKyJlbXB0eSBvciBvbWl0dGVkLCB0aGVuIHRoZSBvcGVyYXRpb24gaXMgdHJpZWQgb24gZXZlcnkgdXBncmFkZS4gSTxwYWNrYWdlPiAiCisiaXMgdGhlIHBhY2thZ2UgbmFtZSwgaXQncyBvcHRpb25hbCBhcyBpdCB3aWxsIGRlZmF1bHQgdG8gIgorIiREUEtHX01BSU5UU0NSSVBUX1BBQ0tBR0UgKHRoaXMgdmFyaWFibGUgaXMgc2V0IGJ5IGRwa2cgdG8gdGhlIG5hbWUgb2YgdGhlICIKKyJwYWNrYWdlIGFjdGVkIHVwb24pLiBBbGwgdGhlIHBhcmFtZXRlcnMgb2YgdGhlIG1haW50YWluZXIgc2NyaXB0cyBoYXZlIHRvIGJlICIKKyJmb3J3YXJkZWQgdG8gdGhlIHByb2dyYW0gYWZ0ZXIgXCItLVwiLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjc1Cittc2dpZCAiIgorIkN1cnJlbnQgaW1wbGVtZW50YXRpb246IGluIHRoZSBCPHByZWluc3Q+LCBpdCBjaGVja3MgaWYgdGhlIGNvbmZmaWxlIHdhcyAiCisibW9kaWZpZWQgYW5kIHJlbmFtZXMgaXQgZWl0aGVyIHRvIEk8Y29uZmZpbGU+QjwuZHBrZy1yZW1vdmU+IChpZiBub3QgIgorIm1vZGlmaWVkKSBvciB0byBJPGNvbmZmaWxlPkI8LmRwa2ctYmFja3VwPiAoaWYgbW9kaWZpZWQpLiBJbiB0aGUgIgorIkI8cG9zdGluc3Q+LCB0aGUgbGF0dGVyIGZpbGUgaXMgcmVuYW1lZCB0byBJPGNvbmZmaWxlPkI8LmRwa2ctYmFrPiBhbmQga2VwdCAiCisiZm9yIHJlZmVyZW5jZSBhcyBpdCBjb250YWlucyB1c2VyIG1vZGlmaWNhdGlvbnMgYnV0IHRoZSBmb3JtZXIgd2lsbCBiZSAiCisicmVtb3ZlZC4gSWYgdGhlIHBhY2thZ2UgdXBncmFkZSBhYm9ydHMsIHRoZSBCPHBvc3RybT4gcmVpbnN0YWxscyB0aGUgIgorIm9yaWdpbmFsIGNvbmZmaWxlLiBEdXJpbmcgcHVyZ2UsIHRoZSBCPHBvc3RybT4gd2lsbCBhbHNvIGRlbGV0ZSB0aGUgQjwuZHBrZy0iCisiYmFrPiBmaWxlIGtlcHQgdXAgdG8gbm93LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMTo3NgorIywgbm8td3JhcAorbXNnaWQgIlJFTkFNSU5HIEEgQ09ORkZJTEUiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMTo4MworbXNnaWQgIiIKKyJJZiBhIGNvbmZmaWxlIGlzIG1vdmVkIGZyb20gb25lIGxvY2F0aW9uIHRvIGFub3RoZXIsIHlvdSBuZWVkIHRvIG1ha2Ugc3VyZSAiCisieW91IG1vdmUgYWNyb3NzIGFueSBjaGFuZ2VzIHRoZSB1c2VyIGhhcyBtYWRlLiBUaGlzIG1heSBzZWVtIGEgc2ltcGxlIGNoYW5nZSAiCisidG8gdGhlIEI8cHJlaW5zdD4gc2NyaXB0IGF0IGZpcnN0LCBob3dldmVyIHRoYXQgd2lsbCByZXN1bHQgaW4gdGhlIHVzZXIgIgorImJlaW5nIHByb21wdGVkIGJ5IGRwa2cgdG8gYXBwcm92ZSB0aGUgY29uZmZpbGUgZWRpdHMgZXZlbiB0aG91Z2ggdGhleSBhcmUgIgorIm5vdCByZXNwb25zaWJsZSBvZiB0aGVtLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjg3Cittc2dpZCAiIgorIkdyYWNlZnVsIHJlbmFtaW5nIGNhbiBiZSBpbXBsZW1lbnRlZCBieSBwdXR0aW5nIHRoZSBmb2xsb3dpbmcgc2hlbGwgc25pcHBldCAiCisiaW4gdGhlIEI8cHJlaW5zdD4sIEI8cG9zdGluc3Q+IGFuZCBCPHBvc3RybT4gbWFpbnRhaW5lciBzY3JpcHRzOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjkwCisjLCBuby13cmFwCittc2dpZCAiIgorIiAgICBkcGtnLW1haW50c2NyaXB0LWhlbHBlciBtdl9jb25mZmlsZSBcXGVcbiIKKyIgICAgICAgIEk8b2xkY29uZmZpbGU+IEk8bmV3Y29uZmZpbGU+IEk8bGFzdHZlcnNpb24+IEk8cGFja2FnZT4gLS0gXCIkQFwiXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxMDAKK21zZ2lkICIiCisiSTxvbGRjb25mZmlsZT4gYW5kIEk8bmV3Y29uZmZpbGU+IGFyZSB0aGUgb2xkIGFuZCBuZXcgbmFtZSBvZiB0aGUgY29uZmZpbGUgIgorInRvIHJlbmFtZS4gSTxsYXN0dmVyc2lvbj4gaXMgdGhlIGxhc3QgdmVyc2lvbiBvZiB0aGUgcGFja2FnZSB0aGF0IGNvbnRhaW5lZCAiCisidGhlIGNvbmZmaWxlIHdpdGggdGhlIG9sZCBuYW1lLiBJZiBJPGxhc3R2ZXJzaW9uPiBpcyBlbXB0eSBvciBvbWl0dGVkLCB0aGVuICIKKyJ0aGUgb3BlcmF0aW9uIGlzIHRyaWVkIG9uIGV2ZXJ5IHVwZ3JhZGUgKG5vdGU6IGl0J3Mgc2FmZXIgdG8gZ2l2ZSB0aGUgIgorInZlcnNpb24gYW5kIGhhdmUgdGhlIG9wZXJhdGlvbiB0cmllZCBvbmx5IG9uY2UpLiBJPHBhY2thZ2U+IGlzIHRoZSBwYWNrYWdlICIKKyJuYW1lLCBpdCdzIG9wdGlvbmFsIGFzIGl0IHdpbGwgZGVmYXVsdCB0byAkRFBLR19NQUlOVFNDUklQVF9QQUNLQUdFICh0aGlzICIKKyJ2YXJpYWJsZSBpcyBzZXQgYnkgZHBrZyB0byB0aGUgbmFtZSBvZiB0aGUgcGFja2FnZSBhY3RlZCB1cG9uKS4gQWxsIHRoZSAiCisicGFyYW1ldGVycyBvZiB0aGUgbWFpbnRhaW5lciBzY3JpcHRzIGhhdmUgdG8gYmUgZm9yd2FyZGVkIHRvIHRoZSBwcm9ncmFtICIKKyJhZnRlciBcIi0tXCIuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MTA4Cittc2dpZCAiIgorIkN1cnJlbnQgaW1wbGVtZW50YXRpb246IHRoZSBCPHByZWluc3Q+IGNoZWNrcyBpZiB0aGUgY29uZmZpbGUgaGFzIGJlZW4gIgorIm1vZGlmaWVkLCBpZiB5ZXMgaXQncyBsZWZ0IG9uIHBsYWNlIG90aGVyd2lzZSBpdCdzIHJlbmFtZWQgdG8gIgorIkk8b2xkY29uZmZpbGU+QjwuZHBrZy1yZW1vdmU+LiBPbiBjb25maWd1cmF0aW9uLCB0aGUgQjxwb3N0aW5zdD4gcmVtb3ZlcyAiCisiSTxvbGRjb25mZmlsZT5CPC5kcGtnLXJlbW92ZT4gYW5kIHJlbmFtZXMgSTxvbGRjb25mZmlsZT4gdG8gSTxuZXdjb25mZmlsZT4gIgorImlmIEk8b2xkY29uZmZpbGU+IGlzIHN0aWxsIGF2YWlsYWJsZS4gT24gYWJvcnQtdXBncmFkZS9hYm9ydC1pbnN0YWxsLCB0aGUgIgorIkI8cG9zdHJtPiByZW5hbWVzIEk8b2xkY29uZmZpbGU+QjwuZHBrZy1yZW1vdmU+IGJhY2sgdG8gSTxvbGRjb25mZmlsZT4gaWYgIgorInJlcXVpcmVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxMDkKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiSU5GT1JNQVRJT04gQUJPVVQgUEFDS0FHRVMiCittc2dpZCAiSU5URUdSQVRJT04gSU4gUEFDS0FHRVMiCittc2dzdHIgIklORk9STUFDSkUgTyBQQUtJRVRBQ0giCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MTE2Cittc2dpZCAiIgorIkdpdmVuIHRoYXQgQjxkcGtnLW1haW50c2NyaXB0LWhlbHBlcj4gaXMgdXNlZCBpbiB0aGUgQjxwcmVpbnN0PiwgdXNpbmcgaXQgIgorInVuY29uZGl0aW9uYWxseSByZXF1aXJlcyBhIHByZS1kZXBlbmRlbmN5IHRvIGVuc3VyZSB0aGF0IHRoZSByZXF1aXJlZCAiCisidmVyc2lvbiBvZiBkcGtnIGhhcyBiZWVuIHVucGFja2VkIGJlZm9yZS4gVGhlIHJlcXVpcmVkIHZlcnNpb24gZGVwZW5kcyBvbiAiCisidGhlIGNvbW1hbmQgdXNlZCwgZm9yIEI8cm1fY29uZmZpbGU+IGFuZCBCPG12X2NvbmZmaWxlPiBpdCBpcyAxLjE1LjcuMjoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxMTgKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxQcmUtRGVwZW5kczo+IEU8bHQ+cGFja2FnZSBsaXN0RTxndD4iCittc2dpZCAiICAgIEI8UHJlLURlcGVuZHM6PiBkcGtnIChFPGd0Pj0gMS4xNS43LjIpXG4iCittc2dzdHIgIkI8UHJlLURlcGVuZHM6PiBFPGx0Pmxpc3RhIHBha2lldMOzd0U8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjEyMworbXNnaWQgIiIKKyJCdXQgaW4gbWFueSBjYXNlcyB0aGUgb3BlcmF0aW9uIGRvbmUgYnkgdGhlIHByb2dyYW0gaXMgbm90IGNyaXRpY2FsIGZvciB0aGUgIgorInBhY2thZ2UsIGFuZCBpbnN0ZWFkIG9mIHVzaW5nIGEgcHJlLWRlcGVuZGVuY3kgd2UgY2FuIGNhbGwgdGhlIHByb2dyYW0gb25seSAiCisiaWYgd2Uga25vdyB0aGF0IHRoZSByZXF1aXJlZCBjb21tYW5kIGlzIHN1cHBvcnRlZCBieSB0aGUgY3VycmVudGx5IGluc3RhbGxlZCAiCisiZHBrZzoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxMjcKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiICAgIGlmIGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyIHN1cHBvcnRzIEk8Y29tbWFuZD47IHRoZW5cbiIKKyIgICAgICAgIGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyIEk8Y29tbWFuZD4gLi4uXG4iCisiICAgIGZpXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxMzAKKyMsIGZ1enp5CisjfCBtc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMDggUmFwaGFcXFs6ZV1sIEhlcnR6b2ciCittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMTAgUmFwaGFcXFs6ZV1sIEhlcnR6b2ciCittc2dzdHIgIkNvcHlyaWdodCBcXChjbyAyMDA4IFJhcGhhXFxbOmVdbCBIZXJ0em9nIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjEzMgorIywgZnV6enkKKyN8IG1zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAwMSBKb2V5IEhlc3MiCittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMDggSm9leSBIZXNzIgorbXNnc3RyICJDb3B5cmlnaHQgXFwoY28gMjAwMSBKb2V5IEhlc3MiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MTM0CisjLCBmdXp6eQorI3wgbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDAxIEpvZXkgSGVzcyIKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAwNyBHdWlsbGVtIEpvdmVyIgorbXNnc3RyICJDb3B5cmlnaHQgXFwoY28gMjAwMSBKb2V5IEhlc3MiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MTM2CisjLCBmdXp6eQorI3wgbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDAwIFdpY2hlcnQgQWtrZXJtYW4iCittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMDUgU2NvdHQgSmFtZXMgUmVtbmFudCIKK21zZ3N0ciAiQ29weXJpZ2h0IFxcKGNvIDIwMDAgV2ljaGVydCBBa2tlcm1hbiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6MQorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJkcGtnLXBhcnNlY2hhbmdlbG9nIgorbXNnaWQgImRwa2ctbWVyZ2VjaGFuZ2Vsb2dzIgorbXNnc3RyICJkcGtnLXBhcnNlY2hhbmdlbG9nIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjQKKyMsIGZ1enp5CisjfCBtc2dpZCAiZHBrZy1wYXJzZWNoYW5nZWxvZyAtIHBhcnNlIERlYmlhbiBjaGFuZ2Vsb2cgZmlsZXMiCittc2dpZCAiZHBrZy1tZXJnZWNoYW5nZWxvZ3MgLSAzLXdheSBtZXJnZSBvZiBkZWJpYW4vY2hhbmdlbG9nIGZpbGVzIgorbXNnc3RyICJkcGtnLXBhcnNlY2hhbmdlbG9nIC0gcHJ6ZXR3YXJ6YSBwbGlraSBkemllbm5pa8OzdyB6bWlhbiBEZWJpYW5hIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjgKKyMsIGZ1enp5CisjfCBtc2dpZCAiQjxkcGtnLXRyaWdnZXI+IFtJPG9wdGlvbj4uLi5dIEk8Y29tbWFuZD4iCittc2dpZCAiIgorIkI8ZHBrZy1tZXJnZWNoYW5nZWxvZ3M+IFtJPG9wdGlvbj4uLi5dIEk8b2xkPiBJPG5ldy1hPiBJPG5ldy1iPiBbSTxvdXQ+XSIKK21zZ3N0ciAiQjxkcGtnLXRyaWdnZXI+IFtJPG9wY2phPi4uLl0gSTxwb2xlY2VuaWU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjE1Cittc2dpZCAiIgorIlRoaXMgcHJvZ3JhbSB3aWxsIHVzZSB0aGUgMyBwcm92aWRlZCB2ZXJzaW9ucyBvZiB0aGUgRGViaWFuIGNoYW5nZWxvZyB0byAiCisiZ2VuZXJhdGUgYSBtZXJnZWQgY2hhbmdlbG9nIGZpbGUuIFRoZSByZXN1bHRpbmcgY2hhbmdlbG9nIGlzIHN0b3JlZCBpbiB0aGUgIgorImZpbGUgSTxvdXQ+IG9yIG91dHB1dCB0byB0aGUgc3RhbmRhcmQgb3V0cHV0IGlmIHRoYXQgcGFyYW1ldGVyIGlzIG5vdCBnaXZlbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMToyNgorbXNnaWQgIiIKKyJFYWNoIGVudHJ5IGlzIGlkZW50aWZpZWQgYnkgaXRzIHZlcnNpb24gbnVtYmVyIGFuZCB0aGV5IGFyZSBhc3N1bWVkIHRvIGJlICIKKyJub3QgY29uZmxpY3RpbmcsIHRoZXkgYXJlIHNpbXBseSBtZXJnZWQgaW4gdGhlIHJpZ2h0IG9yZGVyIChieSBkZWNyZWFzaW5nICIKKyJ2ZXJzaW9uIG51bWJlcikuIFdoZW4gQjwtLW1lcmdlLXByZXJlbGVhc2VzPiBpcyB1c2VkLCB0aGUgcGFydCBvZiB0aGUgIgorInZlcnNpb24gbnVtYmVyIGFmdGVyIHRoZSBsYXN0IHRpbGRlIGlzIGRyb3BwZWQgc28gdGhhdCAxLjAtMX5leHAxIGFuZCAiCisiMS4wLTF+ZXhwNSBhcmUgY29uc2lkZXJlZCB0byBiZSB0aGUgc2FtZSBlbnRyeS4gV2hlbiB0aGUgc2FtZSB2ZXJzaW9uIGlzICIKKyJhdmFpbGFibGUgaW4gYm90aCBJPG5ldy1hPiBhbmQgSTxuZXctYj4sIGEgc3RhbmRhcmQgbGluZS1iYXNlZCAzLXdheSBtZXJnZSAiCisiaXMgYXR0ZW1wdGVkIChwcm92aWRlZCB0aGF0IHRoZSBtb2R1bGUgQWxnb3JpdGhtOjpNZXJnZSBpcyBhdmFpbGFibGUgXFxbZW1dICIKKyJpdCdzIHBhcnQgb2YgdGhlIHBhY2thZ2UgbGliYWxnb3JpdGhtLW1lcmdlLXBlcmwgXFxbZW1dIG90aGVyd2lzZSB5b3UgZ2V0IGEgIgorImdsb2JhbCBjb25mbGljdCBvbiB0aGUgY29udGVudCBvZiB0aGUgZW50cnkpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMToyOAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1tZXJnZS1wcmVyZWxlYXNlcz4sIEI8LW0+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6MzMKK21zZ2lkICIiCisiRHJvcCB0aGUgcGFydCBhZnRlciB0aGUgbGFzdCB0aWxkZSBpbiB0aGUgdmVyc2lvbiBudW1iZXIgd2hlbiBkb2luZyB2ZXJzaW9uICIKKyJjb21wYXJpc29uIHRvIGlkZW50aWZ5IGlmIHR3byBlbnRyaWVzIGFyZSBzdXBwb3NlZCB0byBiZSB0aGUgc2FtZSBvciBub3QuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6MzgKK21zZ2lkICIiCisiVGhpcyBpcyB1c2VmdWwgd2hlbiB5b3Uga2VlcCB1c2luZyB0aGUgc2FtZSBjaGFuZ2Vsb2cgZW50cnkgYnV0IHlvdSBpbmNyZWFzZSAiCisiaXRzIHZlcnNpb24gbnVtYmVyIHJlZ3VsYXJseS4gRm9yIGluc3RhbmNlLCB5b3UgbWlnaHQgaGF2ZSAyLjMtMX5leHAxLCAiCisiMi4zLTF+ZXhwMiwgLi4uIHVudGlsIHRoZSBvZmZpY2lhbCByZWxlYXNlIDIuMy0xIGFuZCB0aGV5IGFyZSBhbGwgdGhlIHNhbWUgIgorImNoYW5nZWxvZyBlbnRyeSB0aGF0IGhhcyBldm9sdmVkIG92ZXIgdGltZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6NDUKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQUNUSU9OUyIKK21zZ2lkICJMSU1JVEFUSU9OUyIKK21zZ3N0ciAiQUtDSkUiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6NTAKK21zZ2lkICIiCisiQW55dGhpbmcgdGhhdCBpcyBub3QgcGFyc2VkIGJ5IERwa2c6OkNoYW5nZWxvZyBpcyBsb3N0IGR1cmluZyB0aGUgbWVyZ2UuICAiCisiVGhpcyBtaWdodCBpbmNsdWRlIHN0dWZmIGxpa2UgdmltIG1vZGVsaW5lcywgY29tbWVudHMgd2hpY2ggd2VyZSBub3QgIgorInN1cHBvc2VkIHRvIGJlIHRoZXJlLCBldGMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjUxCisjLCBuby13cmFwCittc2dpZCAiSU5URUdSQVRJT04gV0lUSCBHSVQiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTo1NgorbXNnaWQgIiIKKyJJZiB5b3Ugd2FudCB0byB1c2UgdGhpcyBwcm9ncmFtIHRvIG1lcmdlIERlYmlhbiBjaGFuZ2Vsb2cgZmlsZXMgaW4gYSBnaXQgIgorInJlcG9zaXRvcnksIHlvdSBoYXZlIGZpcnN0IHRvIHJlZ2lzdGVyIGEgbmV3IG1lcmdlIGRyaXZlciBpbiBCPC5naXQvY29uZmlnPiAiCisib3IgQjx+Ly5naXRjb25maWc+OiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjYwCisjLCBuby13cmFwCittc2dpZCAiIgorIiBbbWVyZ2UgXCJkcGtnLW1lcmdlY2hhbmdlbG9nc1wiXVxuIgorIiAgICAgbmFtZSA9IGRlYmlhbi9jaGFuZ2Vsb2cgbWVyZ2UgZHJpdmVyXG4iCisiICAgICBkcml2ZXIgPSBkcGtnLW1lcmdlY2hhbmdlbG9ncyAtbSAlTyAlQSAlQiAlQVxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6NjQKK21zZ2lkICIiCisiVGhlbiB5b3UgaGF2ZSB0byBzZXR1cCB0aGUgbWVyZ2UgYXR0cmlidXRlIGZvciB0aGUgZGViaWFuL2NoYW5nZWxvZyBmaWxlICIKKyJlaXRoZXIgaW4gQjwuZ2l0YXR0cmlidXRlcz4gaW4gdGhlIHJlcG9zaXRvcnkgaXRzZWxmLCBvciBpbiBCPC5naXQvaW5mby8iCisiYXR0cmlidXRlcz46IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6NjYKKyMsIG5vLXdyYXAKK21zZ2lkICIgZGViaWFuL2NoYW5nZWxvZyBtZXJnZT1kcGtnLW1lcmdlY2hhbmdlbG9nc1xuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6NjgKKyMsIGZ1enp5CisjfCBtc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMDctMjAwOCBSYXBoYVxcWzplXWwgSGVydHpvZyIKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAwOS0yMDEwIFJhcGhhXFxbOmVdbCBIZXJ0em9nIgorbXNnc3RyICJDb3B5cmlnaHQgXFwoY28gMjAwNy0yMDA4IFJhcGhhXFxbOmVdbCBIZXJ0em9nIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1uYW1lLjE6NgorIywgbm8td3JhcAorbXNnaWQgImRwa2ctbmFtZSIKK21zZ3N0ciAiZHBrZy1uYW1lIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW5hbWUuMTo5Cittc2dpZCAiZHBrZy1uYW1lIC0gcmVuYW1lIERlYmlhbiBwYWNrYWdlcyB0byBmdWxsIHBhY2thZ2UgbmFtZXMiCittc2dzdHIgImRwa2ctbmFtZSAtIHptaWVuaWEgbmF6d3kgcGFraWV0w7N3IERlYmlhbmEgbmEgcGXFgm5lIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW5hbWUuMToxNQorIywgZnV6enkKKyN8IG1zZ2lkICJCPGRwa2ctbmFtZT4gW0k8b3B0aW9ucz5dIFtCPC0tPl0gSTxmaWxlcz4iCittc2dpZCAiQjxkcGtnLW5hbWU+IFtJPG9wdGlvbj4uLi5dIFtCPC0tPl0gSTxmaWxlPi4uLiIKK21zZ3N0ciAiQjxkcGtnLW5hbWU+IFtJPG9wY2plPl0gW0I8LS0+XSBJPHBsaWtpPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6MjkKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlRoaXMgbWFudWFsIHBhZ2UgZG9jdW1lbnRzIHRoZSBCPGRwa2ctbmFtZT4gcHJvZ3JhbSB3aGljaCBwcm92aWRlcyBhbiAiCisjfCAiZWFzeSB3YXkgdG8gcmVuYW1lIEI8RGViaWFuPiBwYWNrYWdlcyBpbnRvIHRoZWlyIGZ1bGwgcGFja2FnZSBuYW1lcy4gQSAiCisjfCAiZnVsbCBwYWNrYWdlIG5hbWUgY29uc2lzdHMgb2YgIgorI3wgIkk8RTxsdD5wYWNrYWdlRTxndD5fRTxsdD52ZXJzaW9uRTxndD5fRTxsdD5hcmNoaXRlY3R1cmVFPGd0Pi4iCisjfCAiRTxsdD5wYWNrYWdlX3R5cGVFPGd0Pj4gYXMgc3BlY2lmaWVkIGluIHRoZSBjb250cm9sIGZpbGUgb2YgdGhlIHBhY2thZ2UuICIKKyN8ICJUaGUgSTxFPGx0PnZlcnNpb25FPGd0Pj4gcGFydCBvZiB0aGUgZmlsZW5hbWUgY29uc2lzdHMgb2YgdGhlIHVwc3RyZWFtICIKKyN8ICJ2ZXJzaW9uIGluZm9ybWF0aW9uIG9wdGlvbmFsbHkgZm9sbG93ZWQgYnkgYSBoeXBoZW4gYW5kIHRoZSByZXZpc2lvbiAiCisjfCAiaW5mb3JtYXRpb24uIFRoZSBJPEU8bHQ+cGFja2FnZV90eXBlRTxndD4+IHBhcnQgY29tZXMgZnJvbSB0aGF0IGZpZWxkIGlmICIKKyN8ICJwcmVzZW50IG9yIGZhbGxiYWNrcyB0byBCPGRlYj4uIgorbXNnaWQgIiIKKyJUaGlzIG1hbnVhbCBwYWdlIGRvY3VtZW50cyB0aGUgQjxkcGtnLW5hbWU+IHByb2dyYW0gd2hpY2ggcHJvdmlkZXMgYW4gZWFzeSAiCisid2F5IHRvIHJlbmFtZSBCPERlYmlhbj4gcGFja2FnZXMgaW50byB0aGVpciBmdWxsIHBhY2thZ2UgbmFtZXMuIEEgZnVsbCAiCisicGFja2FnZSBuYW1lIGNvbnNpc3RzIG9mIEk8cGFja2FnZT5CPF8+STx2ZXJzaW9uPkI8Xz5JPGFyY2hpdGVjdHVyZT5CPC4iCisiPkk8cGFja2FnZS10eXBlPiBhcyBzcGVjaWZpZWQgaW4gdGhlIGNvbnRyb2wgZmlsZSBvZiB0aGUgcGFja2FnZS4gVGhlICIKKyJJPHZlcnNpb24+IHBhcnQgb2YgdGhlIGZpbGVuYW1lIGNvbnNpc3RzIG9mIHRoZSB1cHN0cmVhbSB2ZXJzaW9uIGluZm9ybWF0aW9uICIKKyJvcHRpb25hbGx5IGZvbGxvd2VkIGJ5IGEgaHlwaGVuIGFuZCB0aGUgcmV2aXNpb24gaW5mb3JtYXRpb24uIFRoZSBJPHBhY2thZ2UtIgorInR5cGU+IHBhcnQgY29tZXMgZnJvbSB0aGF0IGZpZWxkIGlmIHByZXNlbnQgb3IgZmFsbGJhY2tzIHRvIEI8ZGViPi4iCittc2dzdHIgIiIKKyJUYSBzdHJvbmEgcG9kcsSZY3puaWthIGRva3VtZW50dWplIHByb2dyYW0gQjxkcGtnLW5hbWU+LCBrdMOzcnkgZG9zdGFyY3phICIKKyJwcm9zdGVnbyBzcG9zb2J1IG5hIHptaWFuxJkgbmF6dyBwYWtpZXTDs3cgQjxEZWJpYW5hPiBuYSBwZcWCbmUgbmF6d3kgcGFraWV0w7N3LiAiCisiUGXFgm5hIG5hendhIHBha2lldHUgamVzdCB3IHBvc3RhY2kgIgorIkk8RTxsdD5wYWtpZXRFPGd0Pl9FPGx0PndlcnNqYUU8Z3Q+X0U8bHQ+YXJjaGl0ZWt0dWFFPGd0Pi4iCisiRTxsdD50eXBfcGFraWV0dUU8Z3Q+PiwgamFrIHRvIG9rcmXFm2xvbm8gdyBwbGlrdSBrb250cm9sbnltIHBha2lldHUuIEN6xJnFm8SHICIKKyJJPEU8bHQ+d2Vyc2phRTxndD4+IG5hend5IHBsaWt1IHphd2llcmEgb3J5Z2luYWxuxIUgd2Vyc2rEmSBuYWRhbsSFIHByemV6ICIKKyJhdXRvcmEsIHBvIGt0w7NyZWogb3Bjam9uYWxuaWUgbmFzdMSZcHVqZSBtecWbbG5payBvcmF6IGluZm9ybWFjamUgbyB3ZXJzamkgIgorInptaWFuIHBha2lldHUgdyBEZWJpYW5pZS5DesSZxZvEhyBJPEU8bHQ+dHlwX3Bha2lldHVFPGd0Pj4gcG9jaG9kemkgeiAiCisib2Rwb3dpZWRuaWVnbyBwb2xhLCBqZcWbbGkgamVzdCBvYmVjbmUsIGx1YiBqZXN0IHLDs3duYSBCPGRlYj4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1uYW1lLjE6MzEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1hPiwgQjwtLW5vLWFyY2hpdGVjdHVyZT4iCittc2dzdHIgIkI8LWE+LCBCPC0tbm8tYXJjaGl0ZWN0dXJlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6MzQKK21zZ2lkICJUaGUgZGVzdGluYXRpb24gZmlsZW5hbWUgd2lsbCBub3QgaGF2ZSB0aGUgYXJjaGl0ZWN0dXJlIGluZm9ybWF0aW9uLiIKK21zZ3N0ciAiV3luaWtvd3kgcGxpayBuaWUgYsSZZHppZSBtaWHFgiBpbmZvcm1hY2ppIG8gYXJjaGl0ZWt0dXJ6ZS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLW5hbWUuMTozNAorIywgbm8td3JhcAorbXNnaWQgIkI8LWs+LCBCPC0tc3ltbGluaz4iCittc2dzdHIgIkI8LWs+LCBCPC0tc3ltbGluaz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbmFtZS4xOjM3Cittc2dpZCAiQ3JlYXRlIGEgc3ltbGluaywgaW5zdGVhZCBvZiBtb3ZpbmcuIgorbXNnc3RyICJUd29yenkgZG93acSFemFuaWUgc3ltYm9saWN6bmUsIHphbWlhc3QgcHJ6ZW5vc2nEhyBwbGlrLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctbmFtZS4xOjM3CisjLCBuby13cmFwCittc2dpZCAiQjwtbz4sIEI8LS1vdmVyd3JpdGU+IgorbXNnc3RyICJCPC1vPiwgQjwtLW92ZXJ3cml0ZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbmFtZS4xOjQxCittc2dpZCAiIgorIkV4aXN0aW5nIGZpbGVzIHdpbGwgYmUgb3ZlcndyaXR0ZW4gaWYgdGhleSBoYXZlIHRoZSBzYW1lIG5hbWUgYXMgdGhlICIKKyJkZXN0aW5hdGlvbiBmaWxlbmFtZS4iCittc2dzdHIgIiIKKyJJc3RuaWVqxIVjZSBwbGlraSBixJlkxIUgbmFkcGlzYW5lLCBqZcW8ZWxpIGljaCBuYXp3eSBzxIUgdGFraWUgc2FtZSBqYWsgbmF6d3kgIgorInBsaWvDs3cgd3luaWtvd3ljaC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLW5hbWUuMTo0MQorIywgbm8td3JhcAorbXNnaWQgIkI8LXM+LCBCPC0tc3ViZGlyPiBbSTxkaXI+XSIKK21zZ3N0ciAiQjwtcz4sIEI8LS1zdWJkaXI+IFtJPGthdGFsb2c+XSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6NTMKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIkZpbGVzIHdpbGwgYmUgbW92ZWQgaW50byBhIHN1YmRpcmVjdG9yeS4gSWYgdGhlIGRpcmVjdG9yeSBnaXZlbiBhcyAiCisjfCAiYXJndW1lbnQgZXhpc3RzIHRoZSBmaWxlcyB3aWxsIGJlIG1vdmVkIGludG8gdGhhdCBkaXJlY3Rvcnkgb3RoZXJ3aXNlIHRoZSAiCisjfCAibmFtZSBvZiB0aGUgdGFyZ2V0IGRpcmVjdG9yeSBpcyBleHRyYWN0ZWQgZnJvbSB0aGUgc2VjdGlvbiBmaWVsZCBpbiB0aGUgIgorI3wgImNvbnRyb2wgcGFydCBvZiB0aGUgcGFja2FnZS4gVGhlIHRhcmdldCBkaXJlY3Rvcnkgd2lsbCBiZSBgdW5zdGFibGUvIgorI3wgImJpbmFyeS1FPGx0PmFyY2hpdGVjdHVyZUU8Z3Q+L0U8bHQ+c2VjdGlvbkU8Z3Q+Jy4gSWYgdGhlIHNlY3Rpb24gaXMgbm90ICIKKyN8ICJmb3VuZCBpbiB0aGUgY29udHJvbCwgdGhlbiBgbm8tc2VjdGlvbicgaXMgYXNzdW1lZCwgYW5kIGluIHRoaXMgY2FzZSwgYXMgIgorI3wgIndlbGwgYXMgZm9yIHNlY3Rpb25zIGBub24tZnJlZScgYW5kIGBjb250cmliJyB0aGUgdGFyZ2V0IGRpcmVjdG9yeSBpcyAiCisjfCAiYEU8bHQ+c2VjdGlvbkU8Z3Q+L2JpbmFyeS1FPGx0PmFyY2hpdGVjdHVyZUU8Z3Q+Jy4gVGhlIHNlY3Rpb24gZmllbGQgIgorI3wgImlzbid0IHJlcXVpcmVkIHNvIGEgbG90IG9mIHBhY2thZ2VzIHdpbGwgZmluZCB0aGVpciB3YXkgdG8gdGhlIGBuby0iCisjfCAic2VjdGlvbicgYXJlYS4gVXNlIHRoaXMgb3B0aW9uIHdpdGggY2FyZSwgaXQncyBtZXNzeS4iCittc2dpZCAiIgorIkZpbGVzIHdpbGwgYmUgbW92ZWQgaW50byBhIHN1YmRpcmVjdG9yeS4gSWYgdGhlIGRpcmVjdG9yeSBnaXZlbiBhcyBhcmd1bWVudCAiCisiZXhpc3RzIHRoZSBmaWxlcyB3aWxsIGJlIG1vdmVkIGludG8gdGhhdCBkaXJlY3Rvcnkgb3RoZXJ3aXNlIHRoZSBuYW1lIG9mIHRoZSAiCisidGFyZ2V0IGRpcmVjdG9yeSBpcyBleHRyYWN0ZWQgZnJvbSB0aGUgc2VjdGlvbiBmaWVsZCBpbiB0aGUgY29udHJvbCBwYXJ0IG9mICIKKyJ0aGUgcGFja2FnZS4gVGhlIHRhcmdldCBkaXJlY3Rvcnkgd2lsbCBiZSBgdW5zdGFibGUvYmluYXJ5LUk8YXJjaGl0ZWN0dXJlPi8iCisiSTxzZWN0aW9uPicuIElmIHRoZSBzZWN0aW9uIGlzIG5vdCBmb3VuZCBpbiB0aGUgY29udHJvbCwgdGhlbiBgbm8tc2VjdGlvbicgIgorImlzIGFzc3VtZWQsIGFuZCBpbiB0aGlzIGNhc2UsIGFzIHdlbGwgYXMgZm9yIHNlY3Rpb25zIGBub24tZnJlZScgYW5kICIKKyJgY29udHJpYicgdGhlIHRhcmdldCBkaXJlY3RvcnkgaXMgYEk8c2VjdGlvbj4vYmluYXJ5LUk8YXJjaGl0ZWN0dXJlPicuIFRoZSAiCisic2VjdGlvbiBmaWVsZCBpc24ndCByZXF1aXJlZCBzbyBhIGxvdCBvZiBwYWNrYWdlcyB3aWxsIGZpbmQgdGhlaXIgd2F5IHRvIHRoZSAiCisiYG5vLXNlY3Rpb24nIGFyZWEuIFVzZSB0aGlzIG9wdGlvbiB3aXRoIGNhcmUsIGl0J3MgbWVzc3kuIgorbXNnc3RyICIiCisiUGxpa2kgYsSZZMSFIHByemVuaWVzaW9uZSBkbyBwb2RrYXRhbG9ndS4gSmXFm2xpIGlzdG5pZWplIGthdGFsb2cgcG9kYW55IGpha28gIgorImFyZ3VtZW50IHRlaiBvcGNqaSwgdG8gcGxpa2kgem9zdGFuxIUgcHJ6ZW5pZXNpb25lIGRvIHRlZ28ga2F0YWxvZ3UsIHcgIgorInByemVjaXdueW0gd3lwYWRrdSBuYXp3YSBrYXRhbG9ndSBkb2NlbG93ZWdvIGplc3Qgd3lvZHLEmWJuaWFuYSB6IHBvbGEgIgorIlNlY3Rpb24gdyBjesSZxZtjaSBrb250cm9sbmVqIHBha2lldHUuIEthdGFsb2dpZW0gZG9jZWxvd3ltIGLEmWR6aWUgd3RlZHkgIgorIlwidW5zdGFibGUvYmluYXJ5LUU8bHQ+YXJjaGl0ZWt0dXJhRTxndD4vRTxsdD5zZWtjamFFPGd0PlwiLiBKZcWbbGkgc2VrY2phICIKKyJuaWUgem9zdGFuaWUgem5hbGV6aW9uYSB3IHBsaWt1IGtvbnRyb2xueW0sIHRvIGplc3QgcHJ6eWptb3dhbmUgXCJuby1zZWN0aW9uIgorIlwiIGkgdyB0eW0gcHJ6eXBhZGt1LCBqYWsgaSB3IHByenlwYWRrdSBzZWtjamkgXCJub24tZnJlZVwiIG9yYXogXCJjb250cmliIgorIlwiLCBrYXRhbG9naWVtIGRvY2Vsb3d5bSBixJlkemllIEU8bHQ+c2VrY2phRTxndD4vYmluYXJ5LSIKKyJFPGx0PmFyY2hpdGVrdHVyYUU8Z3Q+XCIuIFBvbGUga29udHJvbG5lIFNlY3Rpb24gbmllIGplc3Qgd3ltYWdhbmUsIHRhayB3acSZYyAiCisidyB0ZW4gc3Bvc8OzYiB3aWVsZSBwYWtpZXTDs3cgYsSZZHppZSB1bWllc3pjem9ueWNoIHcga2F0YWxvZ3UgXCJuby1zZWN0aW9uXCIuICIKKyJQcm9zesSZIG9zdHJvxbxuaWUgdcW8eXdhxIcgdGVqIG9wY2ppLCBqZXN0IG5pZWNobHVqbmEuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1uYW1lLjE6NTMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1jPiwgQjwtLWNyZWF0ZS1kaXI+IgorbXNnc3RyICJCPC1jPiwgQjwtLWNyZWF0ZS1kaXI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW5hbWUuMTo1OAorbXNnaWQgIiIKKyJUaGlzIG9wdGlvbiBjYW4gdXNlZCB0b2dldGhlciB3aXRoIHRoZSAtcyBvcHRpb24uIElmIGEgdGFyZ2V0IGRpcmVjdG9yeSAiCisiaXNuJ3QgZm91bmQgaXQgd2lsbCBiZSBjcmVhdGVkIGF1dG9tYXRpY2FsbHkuICBCPFVzZSB0aGlzIG9wdGlvbiB3aXRoIGNhcmUuPiIKK21zZ3N0ciAiIgorIk9wY2phIHRhIG1vxbxlIGJ5xIcgdcW8eXRhIMWCxIVjem5pZSB6IG9wY2rEhSAtcy4gSmXFm2xpIGthdGFsb2cgZG9jZWxvd3kgbmllICIKKyJpc3RuaWVqZSwgdG8gem9zdGFuaWUgdXR3b3J6b255LiBCPFByb3N6xJkgb3N0cm/FvG5pZSB1xbx5d2HEhyB0ZWogb3BjamkuPiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctbmFtZS4xOjYxCisjLCBuby13cmFwCittc2dpZCAiQjwtdj4sIEI8LS12ZXJzaW9uPiIKK21zZ3N0ciAiQjwtdj4sIEI8LS12ZXJzaW9uPiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctbmFtZS4xOjY2CisjLCBuby13cmFwCittc2dpZCAiQjxkcGtnLW5hbWUgYmFyLWZvby5kZWI+IgorbXNnc3RyICJCPGRwa2ctbmFtZSBiYXItZm9vLmRlYj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbmFtZS4xOjcxCittc2dpZCAiIgorIlRoZSBmaWxlIGBiYXItZm9vLmRlYicgd2lsbCBiZSByZW5hbWVkIHRvIGJhci1mb29fMS4wLTJfaTM4Ni5kZWIgb3IgIgorInNvbWV0aGluZyBzaW1pbGFyIChkZXBlbmRpbmcgb24gd2hhdGV2ZXIgaW5mb3JtYXRpb24gaXMgaW4gdGhlIGNvbnRyb2wgcGFydCAiCisib2YgYGJhci1mb28uZGViJykuIgorbXNnc3RyICIiCisiTmF6d2EgcGxpa3UgXCJiYXItZm9vLmRlYlwiIHpvc3RhbmllIHptaWVuaW9uYSBuYSBiYXItZm9vXzEuMC0yX2kzODYuZGViIGx1YiAiCisiY2/FmyBwb2RvYm5lZ28gKHcgemFsZcW8bm/Fm2NpIG9kIGluZm9ybWFjamkgemF3YXJ0eWNoIHcgcGxpa3Uga29udHJvbG55bSAiCisicGFraWV0dSBcImJhci1mb28uZGViXCIpLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctbmFtZS4xOjcxCisjLCBuby13cmFwCittc2dpZCAiQjxmaW5kIC9yb290L2RlYmlhbi8gLW5hbWUgXFwoYXEqLmRlYlxcKGFxIHwgeGFyZ3MgLW4gMSBkcGtnLW5hbWUgLWE+IgorbXNnc3RyICJCPGZpbmQgL3Jvb3QvZGViaWFuLyAtbmFtZSBcXChhcSouZGViXFwoYXEgfCB4YXJncyAtbiAxIGRwa2ctbmFtZSAtYT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbmFtZS4xOjc2Cittc2dpZCAiIgorIkFsbCBmaWxlcyB3aXRoIHRoZSBleHRlbnNpb24gYGRlYicgaW4gdGhlIGRpcmVjdG9yeSAvcm9vdC9kZWJpYW4gYW5kIGl0cyAiCisic3ViZGlyZWN0b3J5J3Mgd2lsbCBiZSByZW5hbWVkIGJ5IGRwa2ctbmFtZSBpZiByZXF1aXJlZCBpbnRvIG5hbWVzIHdpdGggbm8gIgorImFyY2hpdGVjdHVyZSBpbmZvcm1hdGlvbi4iCittc2dzdHIgIiIKKyJkcGtnLW5hbWUsIGplxZtsaSBqZXN0IHRvIGtvbmllY3puZSwgem1pZW5pIG5hend5IHdzenlzdGtpY2ggcGxpa2kgeiAiCisicm96c3plcnplbmllbSBcImRlYlwiIHoga2F0YWxvZ3UgL3Jvb3QvZGViaWFuIGkgamVnbyBwb2RrYXRhbG9nw7N3IG5hIG5hend5ICIKKyJuaWV6YXdpZXJhasSFY2UgaW5mb3JtYWNqaSBvIGFyY2hpdGVrdHVyemUuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1uYW1lLjE6NzYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGZpbmQgLW5hbWUgXFwoYXEqLmRlYlxcKGFxIHwgeGFyZ3MgLW4gMSBkcGtnLW5hbWUgLWEgLW8gLXMgLWM+IgorbXNnc3RyICJCPGZpbmQgLW5hbWUgXFwoYXEqLmRlYlxcKGFxIHwgeGFyZ3MgLW4gMSBkcGtnLW5hbWUgLWEgLW8gLXMgLWM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW5hbWUuMTo4MgorbXNnaWQgIiIKKyJCPERvbid0IGRvIHRoaXMuPiBZb3VyIGFyY2hpdmUgd2lsbCBiZSBtZXNzZWQgdXAgY29tcGxldGVseSBiZWNhdXNlIGEgbG90IG9mICIKKyJwYWNrYWdlcyBkb24ndCBjb21lIHdpdGggc2VjdGlvbiBpbmZvcm1hdGlvbi4gIEI8RG9uJ3QgZG8gdGhpcy4+IgorbXNnc3RyICIiCisiQjxOaWUgcsOzYiB0ZWdvPi4gVHdvamUgYXJjaGl3dW0gem9zdGFuaWUga29tcGxldG5pZSB6ZXBzdXRlLCBwb25pZXdhxbwgd2llbGUgIgorInBha2lldMOzdyBuaWUgYsSZZHppZSBtaWHFgm8gaW5mb3JtYWNqaSBvIHNla2NqaS4gQjxOaWUgcsOzYiB0ZWdvPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLW5hbWUuMTo4MgorIywgbm8td3JhcAorbXNnaWQgIkI8ZHBrZyAtLWJ1aWxkIGRlYmlhbi10bXAgJiYgZHBrZy1uYW1lIC1vIC1zIC4uIGRlYmlhbi10bXAuZGViPiIKK21zZ3N0ciAiQjxkcGtnIC0tYnVpbGQgZGViaWFuLXRtcCAmJiBkcGtnLW5hbWUgLW8gLXMgLi4gZGViaWFuLXRtcC5kZWI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW5hbWUuMTo4NQorbXNnaWQgIlRoaXMgY2FuIGJlIHVzZWQgd2hlbiBidWlsZGluZyBuZXcgcGFja2FnZXMuIgorbXNnc3RyICJNb8W8ZSB6b3N0YcSHIHXFvHl0ZSBkbyBidWRvd2FuaWEgbm93eWNoIHBha2lldMOzdy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbmFtZS4xOjk1CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJTb21lIHBhY2thZ2VzIGRvbid0IGZvbGxvdyB0aGUgbmFtZSBzdHJ1Y3R1cmUgIgorI3wgIkU8bHQ+cGFja2FnZUU8Z3Q+X0U8bHQ+dmVyc2lvbkU8Z3Q+X0U8bHQ+YXJjaGl0ZWN0dXJlRTxndD4uZGViLiBQYWNrYWdlcyAiCisjfCAicmVuYW1lZCBieSBkcGtnLW5hbWUgd2lsbCBmb2xsb3cgdGhpcyBzdHJ1Y3R1cmUuIEdlbmVyYWxseSB0aGlzIHdpbGwgaGF2ZSAiCisjfCAibm8gaW1wYWN0IG9uIGhvdyBwYWNrYWdlcyBhcmUgaW5zdGFsbGVkIGJ5IEI8ZHNlbGVjdD4oMSkvIEI8ZHBrZz4oMSksIGJ1dCAiCisjfCAib3RoZXIgaW5zdGFsbGF0aW9uIHRvb2xzIG1pZ2h0IGRlcGVuZCBvbiB0aGlzIG5hbWluZyBzdHJ1Y3R1cmUuIgorbXNnaWQgIiIKKyJTb21lIHBhY2thZ2VzIGRvbid0IGZvbGxvdyB0aGUgbmFtZSBzdHJ1Y3R1cmUgIgorIkk8cGFja2FnZT5CPF8+STx2ZXJzaW9uPkI8Xz5JPGFyY2hpdGVjdHVyZT5CPC5kZWI+LiAgUGFja2FnZXMgcmVuYW1lZCBieSAiCisiZHBrZy1uYW1lIHdpbGwgZm9sbG93IHRoaXMgc3RydWN0dXJlLiBHZW5lcmFsbHkgdGhpcyB3aWxsIGhhdmUgbm8gaW1wYWN0IG9uICIKKyJob3cgcGFja2FnZXMgYXJlIGluc3RhbGxlZCBieSBCPGRzZWxlY3Q+KDEpL0I8ZHBrZz4oMSksIGJ1dCBvdGhlciAiCisiaW5zdGFsbGF0aW9uIHRvb2xzIG1pZ2h0IGRlcGVuZCBvbiB0aGlzIG5hbWluZyBzdHJ1Y3R1cmUuIgorbXNnc3RyICIiCisiTmlla3TDs3JlIHBha2lldHkgbWFqxIUgaW5uxIUgc3RydWt0dXLEmSBuYXp3eSBuacW8ICIKKyJFPGx0PnBha2lldEU8Z3Q+X0U8bHQ+d2Vyc2phRTxndD5fRTxsdD5hcmNoaXRla3R1cmFFPGd0Pi5kZWIuIFBha2lldHksICIKKyJrdMOzcnltIGRwa2ctbmFtZSB6bWllbmkgbmF6d8SZLCBixJlkxIUgbWlhxYJ5IHBvd3nFvHN6xIUgc3RydWt0dXLEmSBuYXp3eS4gT2fDs2xuaWUsICIKKyJwb2xlY2VuaWUgdG8gbmllIGLEmWR6aWUgbWlhxYJvIMW8YWRuZWdvIHdwxYJ5d3UgbmEgdG8sIGphayBwYWtpZXR5IHPEhSAiCisiaW5zdGFsb3dhbmUgcHJ6ZXogQjxkc2VsZWN0PigxKS8gQjxkcGtnPigxKSwgYWxlIGlubmUgbmFyesSZZHppYSBpbnN0YWxhY3lqbmUgIgorIm1vZ8SFIHphbGXFvGXEhyBvZCBwb3d5xbxzemVqIHN0cnVrdHVyeSBuYXp5d2FuaWEgcGFraWV0w7N3LiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6MTAzCittc2dpZCAiIgorIkI8ZGViPig1KSwgQjxkZWItY29udHJvbD4oNSksIEI8ZHBrZz4oMSksIEI8ZHBrZy1kZWI+KDEpLCBCPGZpbmQ+KDEpLCAiCisiQjx4YXJncz4oMSkuIgorbXNnc3RyICIiCisiQjxkZWI+KDUpLCBCPGRlYi1jb250cm9sPig1KSwgQjxkcGtnPigxKSwgQjxkcGtnLWRlYj4oMSksIEI8ZmluZD4oMSksICIKKyJCPHhhcmdzPigxKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbmFtZS4xOjEwNgorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAxOTk1LDE5OTYgRXJpY2sgQnJhbmRlcmhvcnN0IgorbXNnc3RyICJDb3B5cmlnaHQgXFwoY28gMTk5NSwxOTk2IEVyaWNrIEJyYW5kZXJob3JzdCIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxCisjLCBuby13cmFwCittc2dpZCAiZHBrZy1wYXJzZWNoYW5nZWxvZyIKK21zZ3N0ciAiZHBrZy1wYXJzZWNoYW5nZWxvZyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjQKK21zZ2lkICJkcGtnLXBhcnNlY2hhbmdlbG9nIC0gcGFyc2UgRGViaWFuIGNoYW5nZWxvZyBmaWxlcyIKK21zZ3N0ciAiZHBrZy1wYXJzZWNoYW5nZWxvZyAtIHByemV0d2FyemEgcGxpa2kgZHppZW5uaWvDs3cgem1pYW4gRGViaWFuYSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjgKKyMsIGZ1enp5CisjfCBtc2dpZCAiQjxkcGtnLXBhcnNlY2hhbmdlbG9nPiBbSTxvcHRpb25zPl0iCittc2dpZCAiQjxkcGtnLXBhcnNlY2hhbmdlbG9nPiBbSTxvcHRpb24+Li4uXSIKK21zZ3N0ciAiQjxkcGtnLXBhcnNlY2hhbmdlbG9nPiBbSTxvcGNqZT5dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTQKK21zZ2lkICIiCisiQjxkcGtnLXBhcnNlY2hhbmdlbG9nPiByZWFkcyBhbmQgcGFyc2VzIHRoZSBjaGFuZ2Vsb2cgb2YgYW4gdW5wYWNrZWQgRGViaWFuICIKKyJzb3VyY2UgdHJlZSBhbmQgb3V0cHV0cyB0aGUgaW5mb3JtYXRpb24gaW4gaXQgdG8gc3RhbmRhcmQgb3V0cHV0IGluIGEgIgorIm1hY2hpbmUtcmVhZGFibGUgZm9ybS4iCittc2dzdHIgIiIKKyJCPGRwa2ctcGFyc2VjaGFuZ2Vsb2c+IGN6eXRhIGkgcHJ6ZXR3YXJ6YSBkemllbm5payB6bWlhbiByb3pwYWtvd2FuZWdvICIKKyJkcnpld2Egxbpyw7NkZcWCIHBha2lldHUgRGViaWFuYSBpIHd5cGlzdWplIHRlIGluZm9ybWFjamUgbmEgc3RhbmRhcmRvd3ltICIKKyJ3eWrFm2NpdSB3IHBvc3RhY2kgY3p5dGVsbmVqIGRsYSBtYXN6eW55LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToyNgorIywgbm8td3JhcAorbXNnaWQgIkI8LUw+STxsaWJkaXI+IgorbXNnc3RyICJCPC1MPkk8a2F0YWxvZy1saWI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MzMKK21zZ2lkICIiCisiU3BlY2lmeSBhbiBhZGRpdGlvbmFsIGRpcmVjdG9yeSB0byBzZWFyY2ggZm9yIHBhcnNlciBzY3JpcHRzLiAgVGhpcyAiCisiZGlyZWN0b3J5IGlzIHNlYXJjaGVkIGJlZm9yZSB0aGUgZGVmYXVsdCBkaXJlY3RvcmllcyB3aGljaCBhcmUgY3VycmVudGx5IEI8LyIKKyJ1c3IvbG9jYWwvbGliL2Rwa2cvcGFyc2VjaGFuZ2Vsb2c+IGFuZCBCPC91c3IvbGliL2Rwa2cvcGFyc2VjaGFuZ2Vsb2c+LiIKK21zZ3N0ciAiIgorIk9rcmXFm2xhIGRvZGF0a293eSBrYXRhbG9nLCB3IGt0w7NyeW0gYsSZZMSFIHd5c3p1a2l3YW5lIHNrcnlwdHkgcGFyc2VyYS4gIgorIkthdGFsb2cgdGVuIGplc3QgcHJ6ZXN6dWtpd2FueSBwcnplZCBkb215xZtsbnltaSBrYXRhbG9nYW1pLCBrdMOzcnltaSBvYmVjbmllICIKKyJzxIUgQjwvdXNyL2xvY2FsL2xpYi9kcGtnL3BhcnNlY2hhbmdlbG9nPiBvcmF6IEI8L3Vzci9saWIvZHBrZy8iCisicGFyc2VjaGFuZ2Vsb2c+LiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTozOQorIywgbm8td3JhcAorbXNnaWQgIlBhcnNlciBPcHRpb25zIgorbXNnc3RyICJPcGNqZSBwYXJzZXJhIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6NDQKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBvcHRpb25zIGNhbiBiZSB1c2VkIHRvIGluZmx1ZW5jZSB0aGUgb3V0cHV0IG9mIHRoZSBjaGFuZ2Vsb2cgIgorInBhcnNlciwgZS5nLiB0aGUgcmFuZ2Ugb2YgZW50cmllcyBvciB0aGUgZm9ybWF0IG9mIHRoZSBvdXRwdXQuIFRoZXkgbmVlZCB0byAiCisiYmUgc3VwcG9ydGVkIGJ5IHRoZSBwYXJzZXIgc2NyaXB0IGluIHF1ZXN0aW9uLiBTZWUgYWxzbyBCPENBVkVBVFM+LiIKK21zZ3N0ciAiIgorIlBvbmnFvHN6ZSBvcGNqZSBtb2fEhSBiecSHIHXFvHl0ZSBkbyB3cMWCeXdhbmlhIG5hIHBhcnNlciBkemllbm5pa2Egem1pYW4sIG5wLiBuYSAiCisiemFrcmVzIHdwaXPDs3cgbHViIGZvcm1hdCB3eWrFm2NpYS4gUG93aW5ueSBiecSHIG9ic8WCdWdpd2FuZSBwcnpleiBza3J5cHR5ICIKKyJwYXJzZXJhLiBQYXRyeiB0YWvFvGUgQjxPU1RSWkXFu0VOSUE+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo0NAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1mb3JtYXQ+STwgb3V0cHV0Zm9ybWF0PiIKK21zZ3N0ciAiQjwtLWZvcm1hdD4gSTxmb3JtYXRfd3lqxZtjaW93eT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo1MworbXNnaWQgIiIKKyJTZXQgdGhlIG91dHB1dCBmb3JtYXQuIEN1cnJlbnRseSBzdXBwb3J0ZWQgdmFsdWVzIGFyZSBJPGRwa2c+IGFuZCAiCisiSTxyZmM4MjI+LiAgSTxkcGtnPiBpcyB0aGUgY2xhc3NpYyBvdXRwdXQgZm9ybWF0IChmcm9tIGJlZm9yZSB0aGlzIG9wdGlvbiAiCisiZXhpc3RlZCkgYW5kIHRoZSBkZWZhdWx0LiBJdCBjb25zaXN0cyBvZiBvbmUgcGFyYWdyYXBoIGluIERlYmlhbiBjb250cm9sICIKKyJmb3JtYXQgKHNlZSBCPGRlYi1jb250cm9sPig1KSkuIElmIG1vcmUgdGhhbiBvbmUgZW50cnkgaXMgcmVxdWVzdGVkLCB0aGVuICIKKyJtb3N0IGZpZWxkcyBhcmUgdGFrZW4gZnJvbSB0aGUgbGF0ZXN0IGVudHJ5LCBleGNlcHQgb3RoZXJ3aXNlIHN0YXRlZDoiCittc2dzdHIgIiIKKyJVc3Rhd2lhIGZvcm1hdCB3eWrFm2NpYS4gT2JlY25pZSB3c3BpZXJhbnltaSB3YXJ0b8WbY2lhbWkgc8SFIEk8ZHBrZz4gb3JheiAiCisiSTxyZmM4MjI+LiBJPGRwa2c+IGplc3Qga2xhc3ljem55bSBmb3JtYXRlbSB3eWrFm2NpYSAoeiBjemFzw7N3IHNwcnplZCAiCisicG93c3RhbmlhIHRlaiBvcGNqaSkgaSBqZXN0IGRvbXnFm2xueW0gZm9ybWF0ZW0uIFNrxYJhZGEgc2nEmSB6IGplZG5lZ28gYWthcGl0dSAiCisidyBmb3JtYWNpZSBwbGlrdSBrb250cm9sbmVnbyBEZWJpYW5hIChwYXRyeiBCPGRwa2ctY29udHJvbD4oNSkpLiBKZcWbbGkgIgorInphxbzEhWRhbm8gd2nEmWNlaiBuacW8IGplZG5lZ28gd3Bpc3UsIHRvIG8gaWxlIG5pZSBwb2Rhbm8gaW5hY3plaiAtIHdpxJlrc3pvxZvEhyAiCisicMOzbCBqZXN0IGJyYW5hIHogbmFqbm93c3plZ28gd3Bpc3U6IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjU0CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8U291cmNlOj4gRTxsdD5wa2cgbmFtZUU8Z3Q+IgorbXNnaWQgIkI8U291cmNlOj5JPCBwa2ctbmFtZT4iCittc2dzdHIgIkI8U291cmNlOj4gRTxsdD5uYXp3YSBwYWtpZXR1RTxndD4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6NTYKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxWZXJzaW9uOj4gRTxsdD52ZXJzaW9uRTxndD4iCittc2dpZCAiQjxWZXJzaW9uOj5JPCB2ZXJzaW9uPiIKK21zZ3N0ciAiQjxWZXJzaW9uOj4gRTxsdD53ZXJzamFFPGd0PiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo1OAorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPERpc3RyaWJ1dGlvbjo+IEU8bHQ+dGFyZ2V0IGRpc3RyaWJ1dGlvbkU8Z3Q+IgorbXNnaWQgIkI8RGlzdHJpYnV0aW9uOj5JPCB0YXJnZXQtZGlzdHJpYnV0aW9uPiIKK21zZ3N0ciAiQjxEaXN0cmlidXRpb246PiBFPGx0PmR5c3RyeWJ1Y2phIGRvY2Vsb3dhRTxndD4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6NjAKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxVcmdlbmN5Oj4gRTxsdD51cmdlbmN5RTxndD4iCittc2dpZCAiQjxVcmdlbmN5Oj5JPCB1cmdlbmN5PiIKK21zZ3N0ciAiQjxVcmdlbmN5Oj4gRTxsdD53YcW8bm/Fm8SHRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo2MworbXNnaWQgIlRoZSBoaWdoZXN0IHVyZ2VuY3kgb2YgYWxsIGluY2x1ZGVkIGVudHJpZXMgaXMgdXNlZC4iCittc2dzdHIgIiIKKyJKZXN0IHXFvHl3YW5hIG5handpxJlrc3phIHdhcnRvxZvEhyB3YcW8bm/Fm2NpIHplIHdzenlzdGtpY2ggZG/FgsSFY3pvbnljaCB3cGlzw7N3LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo2MworIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPE1haW50YWluZXI6PiBFPGx0PmF1dGhvckU8Z3Q+IgorbXNnaWQgIkI8TWFpbnRhaW5lcjo+STwgYXV0aG9yPiIKK21zZ3N0ciAiQjxNYWludGFpbmVyOj4gRTxsdD5hdXRvckU8Z3Q+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjY1CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8RGF0ZTo+IEU8bHQ+ZGF0ZUU8Z3Q+IgorbXNnaWQgIkI8RGF0ZTo+STwgZGF0ZT4iCittc2dzdHIgIkI8RGF0ZTo+IEU8bHQ+ZGF0YUU8Z3Q+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjY3CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8Q2xvc2VzOj4gRTxsdD5idWcgbnVtYmVyRTxndD4iCittc2dpZCAiQjxDbG9zZXM6Pkk8IGJ1Zy1udW1iZXI+IgorbXNnc3RyICJCPENsb3Nlczo+IEU8bHQ+bnVtYmVyIGLFgsSZZHVFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjcwCittc2dpZCAiVGhlIENsb3NlcyBmaWVsZHMgb2YgYWxsIGluY2x1ZGVkIGVudHJpZXMgYXJlIG1lcmdlZC4iCittc2dzdHIgIlBvbGEgQ2xvc2VzIHdzenlzdGtpY2ggd8WCxIVjem9ueWNoIHdwaXPDs3cgc8SFIMWCxIVjem9uZS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6NzAKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxDaGFuZ2VzOj4gRTxsdD5jaGFuZ2Vsb2cgZW50cmllc0U8Z3Q+IgorbXNnaWQgIkI8Q2hhbmdlczo+STwgY2hhbmdlbG9nLWVudHJpZXM+IgorbXNnc3RyICJCPENoYW5nZXM6PiBFPGx0PndwaXN5IGR6aWVubmlrYSB6bWlhbkU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6NzcKK21zZ2lkICIiCisiVGhlIHRleHQgb2YgYWxsIGNoYW5nZWxvZyBlbnRyaWVzIGlzIGNvbmNhdGVuYXRlZC4gVG8gbWFrZSB0aGlzIGZpZWxkIGEgIgorInZhbGlkIERlYmlhbiBjb250cm9sIGZvcm1hdCBtdWx0aWxpbmUgZmllbGQgZW1wdHkgbGluZXMgYXJlIHJlcGxhY2VkIHdpdGggYSAiCisic2luZ2xlIGZ1bGwgc3RvcCBhbmQgYWxsIGxpbmVzIGlzIGludGVuZGVkIGJ5IG9uZSBzcGFjZSBjaGFyYWN0ZXIuIFRoZSBleGFjdCAiCisiY29udGVudCBkZXBlbmRzIG9uIHRoZSBjaGFuZ2Vsb2cgZm9ybWF0LiIKK21zZ3N0ciAiIgorIlRla3N0IHdzenlzdGtpY2ggd3Bpc8OzdyBkemllbm5pa2Egem1pYW4gamVzdCDFgsSFY3pvbnkuIEFieSB1Y3p5bmnEhyB0byBwb2xlICIKKyJwb3ByYXdueW0gd2llbG9saW5pb3d5bSBwb2xlbSB3IGZvcm1hY2llIHBsaWt1IGtvbnRyb2xuZWdvIERlYmlhbmEsICIKKyJ3c3p5c3RraWUgcHVzdGUgbGluaWUgc8SFIHphc3TEmXBvd2FuZSBwb2plZHluY3p5bWkga3JvcGthbWkgb3JheiBqZXN0ICIKKyJkb2Rhd2FuYSBzcGFjamEgbmEgcG9jesSFdGt1IGthxbxkZWogbGluaWkuIERva8WCYWRhbmEgemF3YXJ0b8WbxIcgemFsZcW8eSBvZCAiCisiZm9ybWF0dSBkemllbm5pa2Egem1pYW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6ODAKK21zZ2lkICJUaGVyZSBtaWdodCBiZSBhZGRpdGlvbmFsIHVzZXItZGVmaW5lZCBmaWVsZHMgcHJlc2VudC4iCittc2dzdHIgIk1vZ8SFIHRha8W8ZSB3eXN0xJlwb3dhxIcgZG9kYXRrb3dlIHBvbGEgemRlZmluaW93YW5lIHByemV6IHXFvHl0a293bmlrYS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo4NAorbXNnaWQgIiIKKyJUaGUgQjxyZmM4MjI+IGZvcm1hdCB1c2VzIHRoZSBzYW1lIGZpZWxkcyBidXQgb3V0cHV0cyBhIHNlcGFyYXRlIHBhcmFncmFwaCAiCisiZm9yIGVhY2ggY2hhbmdlbG9nIGVudHJ5IHNvIHRoYXQgYWxsIG1ldGFkYXRhIGZvciBlYWNoIGVudHJ5IGlzIHByZXNlcnZlZC4iCittc2dzdHIgIiIKKyJGb3JtYXQgQjxyZmM4MjI+IHXFvHl3YSB0eWNoIHNhbXljaCBww7NsLCBhbGUgd3lwaXN1amUgb3NvYm55IGFrYXBpdCBkbGEgIgorImthxbxkZWdvIHXFvHl0ZWdvIHdwaXN1IHogZHppZW5uaWthIHptaWFuIHRhaywgxbxlIHphY2hvd2FuZSBzxIUgd3N6eXN0a2llICIKKyJtZXRhZGFuZSB6IGthxbxkZWdvIHdwaXN1LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo4NAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1zaW5jZT4gSTx2ZXJzaW9uPiwgQjwtcz5JPHZlcnNpb24+LEI8IC12Pkk8dmVyc2lvbj4iCittc2dzdHIgIkI8LS1zaW5jZT4gSTx3ZXJzamE+LCBCPC1zPkk8d2Vyc2phPixCPCAtdj5JPHdlcnNqYT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo4NworbXNnaWQgImluY2x1ZGUgYWxsIGNoYW5nZXMgbGF0ZXIgdGhhbiBJPHZlcnNpb24+LiIKK21zZ3N0ciAiZG/FgsSFY3phIHdzenlzdGtpZSB6bWlhbnkgcMOzxbpuaWVqc3plIG5pxbwgSTx3ZXJzamE+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo4NworIywgbm8td3JhcAorbXNnaWQgIkI8LS11bnRpbD4gSTx2ZXJzaW9uPiwgQjwtdT5JPHZlcnNpb24+IgorbXNnc3RyICJCPC0tdW50aWw+IEk8d2Vyc2phPiwgQjwtdT5JPHdlcnNqYT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo5MAorbXNnaWQgImluY2x1ZGUgYWxsIGNoYW5nZXMgZWFybGllciB0aGFuIEk8dmVyc2lvbj4uIgorbXNnc3RyICJkb8WCxIVjemEgd3N6eXN0a2llIHptaWFueSB3Y3plxZtuaWVqc3plIG5pxbwgSTx2ZXJzamE+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo5MAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1mcm9tPiBJPHZlcnNpb24+LCBCPC1mPkk8dmVyc2lvbj4iCittc2dzdHIgIkI8LS1mcm9tPiBJPHdlcnNqYT4sIEI8LWY+STx3ZXJzamE+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6OTMKK21zZ2lkICJpbmNsdWRlIGFsbCBjaGFuZ2VzIGVxdWFsIG9yIGxhdGVyIHRoYW4gSTx2ZXJzaW9uPi4iCittc2dzdHIgImRvxYLEhWN6YSB3c3p5c3RraWUgem1pYW55IHLDs3duZSBJPHdlcnNqaT4gbHViIHDDs8W6bmllanN6ZSBvZCBuaWVqLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo5MworIywgbm8td3JhcAorbXNnaWQgIkI8LS10bz4gSTx2ZXJzaW9uPiwgQjwtdD5JPHZlcnNpb24+IgorbXNnc3RyICJCPC0tdG8+IEk8d2Vyc2phPiwgQjwtdD5JPHdlcnNqYT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo5NgorbXNnaWQgImluY2x1ZGUgYWxsIGNoYW5nZXMgdXAgdG8gb3IgZXF1YWwgdGhhbiBJPHZlcnNpb24+LiIKK21zZ3N0ciAiZG/FgsSFY3phIHdzenlzdGtpZSB6bWlhbnkgd2nEmWtzemUgZG8gSTx3ZXJzamk+IGx1YiByw7N3bmUgamVqLiIKKworIworIy4gdHlwZTogVFAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo5NgorIywgbm8td3JhcAorbXNnaWQgIkI8LS1jb3VudD4gSTxudW1iZXI+LCBCPC1jPkk8bnVtYmVyPiwgQjwtbj5JPG51bWJlcj4iCittc2dzdHIgIkI8LS1jb3VudD4gSTxsaWN6YmE+LCBCPC1jPkk8bGljemJhPiwgQjwtbj5JPGxpY3piYT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxMDAKK21zZ2lkICIiCisiaW5jbHVkZSBJPG51bWJlcj4gZW50cmllcyBmcm9tIHRoZSB0b3AgKG9yIHRoZSB0YWlsIGlmIEk8bnVtYmVyPiBpcyBsb3dlciAiCisidGhhbiAwKS4iCittc2dzdHIgIiIKKyJkb8WCxIVjemEgSTxsaWN6YmE+IHdwaXPDs3cgeiBwb2N6xIV0a3UgcGxpa3UgKGx1YiB6IGplZ28ga2/FhGNhLCBnZHkgSTxsaWN6YmE+ICIKKyJqZXN0IG1uaWVqc3phIG9kIHplcmEpLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxMDAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tb2Zmc2V0PiBJPG51bWJlcj4sIEI8LW8+STxudW1iZXI+IgorbXNnc3RyICJCPC0tb2Zmc2V0PiBJPGxpY3piYT4sIEI8LW8+STxsaWN6YmE+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTA0Cittc2dpZCAiIgorImNoYW5nZSB0aGUgc3RhcnRpbmcgcG9pbnQgZm9yIC0tY291bnQsIGNvdW50ZWQgZnJvbSB0aGUgdG9wIChvciB0aGUgdGFpbCBpZiAiCisiSTxudW1iZXI+IGlzIGxvd2VyIHRoYW4gMCkuIgorbXNnc3RyICIiCisiem1pZW5pYSBwdW5rdCBwb2N6xIV0a293eSBkbGEgb3BjamkgLS1jb3VudCwgbGljesSFYyBvZCBwb2N6xIV0a3UgcGxpa3UgKGx1YiBvZCAiCisiamVnbyBrb8WEY2EsIGplxZtsaSBJPGxpY3piYT4gamVzdCBtbmllanN6YSBvZCB6ZXJhKS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTA0IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyNjgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tYWxsPiIKK21zZ3N0ciAiQjwtLWFsbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxMDgKK21zZ2lkICIiCisiaW5jbHVkZSBhbGwgY2hhbmdlcy4gTm90ZTogb3RoZXIgb3B0aW9ucyBoYXZlIG5vIGVmZmVjdCB3aGVuIHRoaXMgaXMgaW4gdXNlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTE0Cittc2dpZCAiIgorIkFsbCBCPFBhcnNlciBPcHRpb25zPiBleGNlcHQgZm9yIC12IGFyZSBvbmx5IHN1cHBvcnRlZCBpbiBCPGRwa2c+LCB2ZXJzaW9uICIKKyIxLjE0LjE2IGFuZCBsYXRlci4gVGhpcmQgcGFydHkgcGFyc2VycyBmb3IgY2hhbmdlbG9nIGZvcm1hdHMgb3RoZXIgdGhhbiAiCisiSTxkZWJpYW4+IG1pZ2h0IG5vdCBzdXBwb3J0IGFsbCBvcHRpb25zLiIKK21zZ3N0ciAiIgorIldzenlzdGtpZSBCPG9wY2plIHBhcnNlcmE+LCB6IHd5asSFdGtpZW0gLXYsIHPEhSBvYnPFgnVnaXdhbmUgcHJ6ZXogQjxkcGtnPiBvZCAiCisid2Vyc2ppIDEuMTQuMTYuIFpld27EmXRyem5lIHBhcnNlcnkgZHppZW5uaWvDs3cgem1pYW4gdyBmb3JtYXRhY2ggaW5ueWNoIG5pxbwgIgorIkk8ZGViaWFuPiBtb2fEhSBuaWUgb2JzxYJ1Z2l3YcSHIHdzenlzdGtpY2ggb3BjamkuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjExNgorIywgbm8td3JhcAorbXNnaWQgIkI8ZGViaWFuL2NoYW5nZWxvZz4iCittc2dzdHIgIkI8ZGViaWFuL2NoYW5nZWxvZz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxMjIKK21zZ2lkICIiCisiVGhlIGNoYW5nZWxvZyBmaWxlLCB1c2VkIHRvIG9idGFpbiB2ZXJzaW9uLWRlcGVuZGVudCBpbmZvcm1hdGlvbiBhYm91dCB0aGUgIgorInNvdXJjZSBwYWNrYWdlLCBzdWNoIGFzIHRoZSB1cmdlbmN5IGFuZCBkaXN0cmlidXRpb24gb2YgYW4gdXBsb2FkLCB0aGUgIgorImNoYW5nZXMgbWFkZSBzaW5jZSBhIHBhcnRpY3VsYXIgcmVsZWFzZSwgYW5kIHRoZSBzb3VyY2UgdmVyc2lvbiBudW1iZXIgIgorIml0c2VsZi4iCittc2dzdHIgIiIKKyJEemllbm5payB6bWlhbiBqZXN0IHXFvHl3YW55IGRvIHBvenlza2FuaWEgaW5mb3JtYWNqaSBvIHBha2llY2llIMW6csOzZMWCb3d5bSAiCisiemFsZcW8bnljaCBvZCBqZWdvIHdlcnNqaSwgdGFraWNoIGphayB3YcW8bm/Fm8SHIGkgZHlzdHJ5YnVjamEgd3lkYW5pYSwgem1pYW55ICIKKyJkb2tvbmFuZSBwbyBva3JlxZtsb255bSB3eWRhbml1LCBvcmF6IG51bWVyIHdlcnNqaSBwYWtpZXR1LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjEyOQorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDA3LCAyMDA4IEZyYW5rIExpY2h0ZW5oZWxkIgorbXNnc3RyICJDb3B5cmlnaHQgXFwoY28gMjAwNywgMjAwOCBGcmFuayBMaWNodGVuaGVsZCIKKworIworIy4gdHlwZTogVEgKKyM6IGRwa2ctcXVlcnkuMToxCisjLCBuby13cmFwCittc2dpZCAiZHBrZy1xdWVyeSIKK21zZ3N0ciAiZHBrZy1xdWVyeSIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjQKK21zZ2lkICJkcGtnLXF1ZXJ5IC0gYSB0b29sIHRvIHF1ZXJ5IHRoZSBkcGtnIGRhdGFiYXNlIgorbXNnc3RyICJkcGtnLXF1ZXJ5IC0gbmFyesSZZHppZSBwcnplcHl0eXdhbmlhIGJhenkgZGFueWNoIGRwa2ciCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMTo4Cittc2dpZCAiQjxkcGtnLXF1ZXJ5PiBbSTxvcHRpb24+Li4uXSBJPGNvbW1hbmQ+IgorbXNnc3RyICJCPGRwa2ctcXVlcnk+IFtJPG9wY2phPi4uLl0gSTxwb2xlY2VuaWU+IgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6MTIKK21zZ2lkICIiCisiQjxkcGtnLXF1ZXJ5PiBpcyBhIHRvb2wgdG8gc2hvdyBpbmZvcm1hdGlvbiBhYm91dCBwYWNrYWdlcyBsaXN0ZWQgaW4gdGhlICIKKyJCPGRwa2c+IGRhdGFiYXNlLiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1xdWVyeT4gamVzdCBuYXJ6xJlkemllbSBzxYJ1xbzEhWN5bSBkbyBwb2thenl3YW5pYSBpbmZvcm1hY2ppIG8gcGFraWV0YWNoICIKKyJ3eW1pZW5pb255Y2ggdyBiYXppZSBkYW55Y2ggQjxkcGtnPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXF1ZXJ5LjE6MTQKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjwtbD4sIEI8LS1saXN0PiBJPHBhY2thZ2UtbmFtZS1wYXR0ZXJuPi4uLiIKK21zZ2lkICJCPC1sPiwgQjwtLWxpc3Q+IFtJPHBhY2thZ2UtbmFtZS1wYXR0ZXJuPi4uLl0iCittc2dzdHIgIkI8LWw+LCBCPC0tbGlzdD4gSTx3em9yemVjLW5hend5LXBha2lldHU+Li4uIgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6MjQKK21zZ2lkICIiCisiTGlzdCBwYWNrYWdlcyBtYXRjaGluZyBnaXZlbiBwYXR0ZXJuLiBJZiBubyBJPHBhY2thZ2UtbmFtZS1wYXR0ZXJuPiBpcyAiCisiZ2l2ZW4sIGxpc3QgYWxsIHBhY2thZ2VzIGluIEk8L3Zhci9saWIvZHBrZy9zdGF0dXM+LCBleGNsdWRpbmcgdGhlIG9uZXMgIgorIm1hcmtlZCBhcyBub3QtaW5zdGFsbGVkIChpLmUuIHRob3NlIHdoaWNoIGhhdmUgYmVlbiBwcmV2aW91c2x5IHB1cmdlZCkuICIKKyJOb3JtYWwgc2hlbGwgd2lsZGNoYXJzIGFyZSBhbGxvd2VkIGluIEk8cGFja2FnZS1uYW1lLXBhdHRlcm4+LiBQbGVhc2Ugbm90ZSAiCisieW91IHdpbGwgcHJvYmFibHkgaGF2ZSB0byBxdW90ZSBJPHBhY2thZ2UtbmFtZS1wYXR0ZXJuPiB0byBwcmV2ZW50IHRoZSBzaGVsbCAiCisiZnJvbSBwZXJmb3JtaW5nIGZpbGVuYW1lIGV4cGFuc2lvbi4gRm9yIGV4YW1wbGUgdGhpcyB3aWxsIGxpc3QgYWxsIHBhY2thZ2UgIgorIm5hbWVzIHN0YXJ0aW5nIHdpdGggYGBsaWJjNicnOiIKK21zZ3N0ciAiIgorIld5cGlzdWplIGxpc3TEmSBwYWtpZXTDs3cgb2Rwb3dpYWRhasSFY3ljaCBwb2RhbmVtdSB3em9yY3UgbmF6d3kuIEplxZtsaSBuaWUgIgorInBvZGFubyBJPHd6b3JjYS1uYXp3eS1wYWtpZXR1Piwgd3lwaXN1amUgbGlzdMSZIHdzenlzdGtpY2ggcGFraWV0w7N3IHogcGxpa3UgIgorIkk8L3Zhci9saWIvZHBrZy9zdGF0dXM+LCBwb21pamFqxIVjIGplZG5hayB0ZSwga3TDs3JlIHPEhSBvem5hY3pvbmUgamFrbyAiCisibmllemFpbnN0YWxvd2FuZSAoY3p5bGkgdGFraWUsIGt0w7NyZSB6b3N0YcWCeSB1cHJ6ZWRuaW8gd3ljenlzemN6b25lIHogcGxpa8OzdyAiCisia29uZmlndXJhY3lqbnljaCAtIHB1cmdlKS4gRG8gSTx3em9yY2EtbmF6d3ktcGFraWV0dT4gbW/FvG5hIHdwaXNhxIcgem5ha2kgIgorInNwZWNqYWxuZSBwb3fFgm9raSAod2lsZGNhcmRzKS4gUHJhd2RvcG9kb2JuaWUgcG90cnplYm5lIGLEmWR6aWUgemFjeXRvd2FuaWUgIgorIkk8d3pvcmNhLW5hend5LXBha2lldHU+LCBhYnkgcG93xYJva2EgbmllIHJvendpbsSZxYJhIHRlZ28gd3pvcmNhLiBOYSBwcnp5a8WCYWQsICIKKyJwb25pxbxzemUgcG9sZWNlbmllIHd5cGlzemUgbmF6d3kgd3N6eXN0a2ljaCBwYWtpZXTDs3cgemFjenluYWrEhWN5Y2ggc2nEmSBvZCAiCisiXCJsaWJjNlwiOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjI3CisjLCBuby13cmFwCittc2dpZCAiICBCPGRwa2ctcXVlcnkgLWwgXFwoYXFsaWJjNipcXChhcT5cbiIKK21zZ3N0ciAiIEI8ZHBrZy1xdWVyeSAtbCBcXChhcWxpYmM2KlxcKGFxPlxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6MzEKK21zZ2lkICIiCisiVGhlIGZpcnN0IHRocmVlIGNvbHVtbnMgb2YgdGhlIG91dHB1dCBzaG93IHRoZSBkZXNpcmVkIGFjdGlvbiwgdGhlIHBhY2thZ2UgIgorInN0YXR1cywgYW5kIGVycm9ycywgaW4gdGhhdCBvcmRlci4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjMzCittc2dpZCAiRGVzaXJlZCBhY3Rpb246IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMTozOQorIywgbm8td3JhcAorbXNnaWQgIiIKKyIgIHUgPSBVbmtub3duXG4iCisiICBpID0gSW5zdGFsbFxuIgorIiAgaCA9IEhvbGRcbiIKKyIgIHIgPSBSZW1vdmVcbiIKKyIgIHAgPSBQdXJnZVxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMTo0MgorIywgZnV6enkKKyN8IG1zZ2lkICJQYWNrYWdlcyBzdGF0dXMgbGlzdCIKK21zZ2lkICJQYWNrYWdlIHN0YXR1czoiCittc2dzdHIgIkxpc3RhIHN0YW7Ds3cgcGFraWV0w7N3IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6NTEKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiICBuID0gTm90LWluc3RhbGxlZFxuIgorIiAgYyA9IENvbmZpZy1maWxlc1xuIgorIiAgSCA9IEhhbGYtaW5zdGFsbGVkXG4iCisiICBVID0gVW5wYWNrZWRcbiIKKyIgIEYgPSBIYWxmLWNvbmZpZ3VyZWRcbiIKKyIgIFcgPSBUcmlnZ2Vycy1hd2FpdGluZ1xuIgorIiAgdCA9IFRyaWdnZXJzLXBlbmRpbmdcbiIKKyIgIGkgPSBJbnN0YWxsZWRcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6NTQKKyMsIGZ1enp5CisjfCBtc2dpZCAiQ29tcGlsZXIgZmxhZ3MiCittc2dpZCAiRXJyb3IgZmxhZ3M6IgorbXNnc3RyICJGbGFnaSBrb21waWxhdG9yYSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjU3CisjLCBuby13cmFwCittc2dpZCAiIgorIiAgRTxsdD5lbXB0eUU8Z3Q+ID0gKG5vbmUpXG4iCisiICBSID0gUmVpbnN0LXJlcXVpcmVkXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjYyCittc2dpZCAiIgorIkFuIHVwcGVyY2FzZSBzdGF0dXMgb3IgZXJyb3IgbGV0dGVyIGluZGljYXRlcyB0aGUgcGFja2FnZSBpcyBsaWtlbHkgdG8gY2F1c2UgIgorInNldmVyZSBwcm9ibGVtcy4gUGxlYXNlIHJlZmVyIHRvIEI8ZHBrZz4oMSkgZm9yIGluZm9ybWF0aW9uIGFib3V0IHRoZSBhYm92ZSAiCisic3RhdGVzIGFuZCBmbGFncy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjY3Cittc2dpZCAiIgorIlRoZSBvdXRwdXQgZm9ybWF0IG9mIHRoaXMgb3B0aW9uIGlzIG5vdCBjb25maWd1cmFibGUsIGJ1dCB2YXJpZXMgIgorImF1dG9tYXRpY2FsbHkgdG8gZml0IHRoZSB0ZXJtaW5hbCB3aWR0aC4gSXQgaXMgaW50ZW5kZWQgZm9yIGh1bWFuIHJlYWRlcnMsICIKKyJhbmQgaXMgbm90IGVhc2lseSBtYWNoaW5lLXJlYWRhYmxlLiBTZWUgQjwtVz4gKEI8LS1zaG93PikgIGFuZCBCPC0tIgorInNob3dmb3JtYXQ+IGZvciBhIHdheSB0byBjb25maWd1cmUgdGhlIG91dHB1dCBmb3JtYXQuIgorbXNnc3RyICIiCisiRm9ybWF0IHd5asWbY2lhIHRlaiBvcGNqaSBuaWUgamVzdCBrb25maWd1cm93YWxueSwgYWxlIGF1dG9tYXR5Y3puaWUgc2nEmSAiCisiem1pZW5pYSwgZG9zdG9zb3d1asSFYyBzacSZIGRvIHN6ZXJva2/Fm2NpIHRlcm1pbmFsdS4gSmVzdCB0byBwcnplem5hY3pvbmUgZGxhICIKKyJsdWR6aSBpIG5pZSBtdXNpIGJ5xIcgxYJhdHdvIHBhcnNvd2FsbmUgcHJ6ZXogbWFzenluxJkuIFBhdHJ6IG9wY2plIEI8LVc+IChCPC0tIgorInNob3c+KSBhbmQgQjwtLXNob3dmb3JtYXQ+LCBhYnkgZG93aWVkemllxIcgc2nEmSwgamFrIHNrb25maWd1cm93YcSHIGZvcm1hdCAiCisid3lqxZtjaWEuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1xdWVyeS4xOjY3CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8LVc+LCBCPC0tc2hvdz4gSTxwYWNrYWdlLW5hbWUtcGF0dGVybj4uLi4iCittc2dpZCAiQjwtVz4sIEI8LS1zaG93PiBbSTxwYWNrYWdlLW5hbWUtcGF0dGVybj4uLi5dIgorbXNnc3RyICJCPC1XPiwgQjwtLXNob3c+IEk8d3pvcnplYy1uYXp3eS1wYWtpZXR1Pi4uLiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjc0Cittc2dpZCAiIgorIkp1c3QgbGlrZSB0aGUgQjwtLWxpc3Q+IG9wdGlvbiB0aGlzIHdpbGwgbGlzdCBhbGwgcGFja2FnZXMgbWF0Y2hpbmcgdGhlICIKKyJnaXZlbiBwYXR0ZXJuLiBIb3dldmVyIHRoZSBvdXRwdXQgY2FuIGJlIGN1c3RvbWl6ZWQgdXNpbmcgdGhlIEI8LS0iCisic2hvd2Zvcm1hdD4gb3B0aW9uLiAgVGhlIGRlZmF1bHQgb3V0cHV0IGZvcm1hdCBnaXZlcyBvbmUgbGluZSBwZXIgbWF0Y2hpbmcgIgorInBhY2thZ2UsIGVhY2ggbGluZSBoYXZpbmcgdGhlIG5hbWUgYW5kIGluc3RhbGxlZCB2ZXJzaW9uIG9mIHRoZSBwYWNrYWdlLCAiCisic2VwYXJhdGVkIGJ5IGEgdGFiLiIKK21zZ3N0ciAiIgorIlp1cGXFgm5pZSB0YWsgamFrIG9wY2phIEI8LS1saXN0PiwgdGEgb3BjamEgd3nFm3dpZXRsaSB3c3p5c3RraWUgcGFraWV0eSAiCisicGFzdWrEhWNlIGRvIGRhbmVnbyB3em9yY2EuIEplZG5ha8W8ZSB1xbx5dGtvd25payBtb8W8ZSBkb3N0b3Nvd2HEhyBmb3JtYXQgIgorInd5asWbY2lhIGRvIHN3b2ljaCBwb3RyemViIHphIHBvbW9jxIUgb3BjamkgQjwtLXNob3dmb3JtYXQ+LiBXIGRvbXnFm2xueW0gIgorImZvcm1hY2llIGRsYSBrYcW8ZGVnbyBwYXN1asSFY2VnbyBwYWtpZXR1IHd5xZt3aWV0bGFuYSBqZXN0IHBvamVkeW5jemEgbGluaWEgIgorInphd2llcmFqxIVjYSBqZWdvIG5henfEmSBvcmF6IC0gcG8gem5ha3UgdGFidWxhY2ppIC0gemFpbnN0YWxvd2FuxIUgd2Vyc2rEmS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXF1ZXJ5LjE6NzQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1zPiwgQjwtLXN0YXR1cz4gSTxwYWNrYWdlLW5hbWU+Li4uIgorbXNnc3RyICJCPC1zPiwgQjwtLXN0YXR1cz4gSTxuYXp3YS1wYWtpZXR1Pi4uLiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjc5CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJSZXBvcnQgc3RhdHVzIG9mIHNwZWNpZmllZCBwYWNrYWdlLiBUaGlzIGp1c3QgZGlzcGxheXMgdGhlIGVudHJ5IGluIHRoZSAiCisjfCAiaW5zdGFsbGVkIHBhY2thZ2Ugc3RhdHVzIGRhdGFiYXNlLiIKK21zZ2lkICIiCisiUmVwb3J0IHN0YXR1cyBvZiBzcGVjaWZpZWQgcGFja2FnZS4gVGhpcyBqdXN0IGRpc3BsYXlzIHRoZSBlbnRyeSBpbiB0aGUgIgorImluc3RhbGxlZCBwYWNrYWdlIHN0YXR1cyBkYXRhYmFzZS4gV2hlbiBtdWx0aXBsZSBJPHBhY2thZ2UtbmFtZT4gYXJlIGxpc3RlZCwgIgorInRoZSByZXF1ZXN0ZWQgc3RhdHVzIGVudHJpZXMgYXJlIHNlcGFyYXRlZCBieSBhbiBlbXB0eSBsaW5lLiIKK21zZ3N0ciAiIgorIlBvZGFuaWUgc3RhbnUgcGFraWV0dSBvIHBvZGFuZWogbmF6d2llLiBQb2xlY2VuaWUgcG8gcHJvc3R1IHd5xZt3aWV0bGkgIgorImluZm9ybWFjamUsIGt0w7NyZSB6bmFqZHVqxIUgc2nEmSB3IGJhemllIGRhbnljaCBwYWtpZXTDs3cuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1xdWVyeS4xOjc5CisjLCBuby13cmFwCittc2dpZCAiQjwtTD4sIEI8LS1saXN0ZmlsZXM+IEk8cGFja2FnZS1uYW1lPi4uLiIKK21zZ3N0ciAiQjwtTD4sIEI8LS1saXN0ZmlsZXM+IEk8bmF6d2EtcGFraWV0dT4uLi4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMTo4NQorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiTGlzdCBmaWxlcyBpbnN0YWxsZWQgdG8geW91ciBzeXN0ZW0gZnJvbSBJPHBhY2thZ2UtbmFtZT4uICBIb3dldmVyLCBub3RlICIKKyN8ICJ0aGF0IGZpbGVzIGNyZWF0ZWQgYnkgcGFja2FnZS1zcGVjaWZpYyBpbnN0YWxsYXRpb24tc2NyaXB0cyBhcmUgbm90ICIKKyN8ICJsaXN0ZWQuIgorbXNnaWQgIiIKKyJMaXN0IGZpbGVzIGluc3RhbGxlZCB0byB5b3VyIHN5c3RlbSBmcm9tIEk8cGFja2FnZS1uYW1lPi4gV2hlbiBtdWx0aXBsZSAiCisiSTxwYWNrYWdlLW5hbWU+IGFyZSBsaXN0ZWQsIHRoZSByZXF1ZXN0ZWQgbGlzdHMgb2YgZmlsZXMgYXJlIHNlcGFyYXRlZCBieSBhbiAiCisiZW1wdHkgbGluZS4gSG93ZXZlciwgbm90ZSB0aGF0IGZpbGVzIGNyZWF0ZWQgYnkgcGFja2FnZS1zcGVjaWZpYyAiCisiaW5zdGFsbGF0aW9uLXNjcmlwdHMgYXJlIG5vdCBsaXN0ZWQuIgorbXNnc3RyICIiCisiUG9kYW5pZSBsaXN0eSBwbGlrw7N3IHphaW5zdGFsb3dhbnljaCB6IEI8bmF6d3ktcGFraWV0dT4uIEplZG5ha8W8ZSBwbGlraSwgIgorImt0w7NyZSB6b3N0YcWCeSB1dHdvcnpvbmUgcHJ6ZXogc2tyeXB0eSBpbnN0YWxhY3lqbmUgcGFraWV0dSwgbmllIGLEmWTEhSBwb2RhbmUuIgorCisjCisjLiB0eXBlOiBUUAorIzogZHBrZy1xdWVyeS4xOjg1CisjLCBuby13cmFwCittc2dpZCAiQjwtYz4sIEI8LS1jb250cm9sLXBhdGg+IEk8cGFja2FnZS1uYW1lPiBbSTxjb250cm9sLWZpbGU+XSIKK21zZ3N0ciAiQjwtYz4sIEI8LS1jb250cm9sLXBhdGg+IEk8bmF6d2EtcGFraWV0dT4gW0k8cGxpay1rb250cm9sbnk+XSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjkzCittc2dpZCAiIgorIkxpc3QgcGF0aHMgZm9yIGNvbnRyb2wgZmlsZXMgaW5zdGFsbGVkIHRvIHlvdXIgc3lzdGVtIGZyb20gSTxwYWNrYWdlLW5hbWU+LiAgIgorIklmIEk8Y29udHJvbC1maWxlPiBpcyBzcGVjaWZpZWQgdGhlbiBvbmx5IGxpc3QgdGhlIHBhdGggZm9yIHRoYXQgY29udHJvbCAiCisiZmlsZSBpZiBpdCBpcyBwcmVzZW50LiBCPFdhcm5pbmc+OiB0aGlzIGNvbW1hbmQgaXMgc2VtaS1wdWJsaWMsIGl0IHNob3VsZCBiZSAiCisidXNlZCBvbmx5IGFzIGEgbGFzdCByZXNvcnQgc29sdXRpb24sIGFuZCBpZiBubyBvdGhlciBpbnRlcmZhY2UgaXMgYXZhaWxhYmxlLiAiCisiSXQgbWlnaHQgZ2V0IGRlcHJlY2F0ZWQgbGF0ZXIgb24gaWYgYmV0dGVyIGludGVyZmFjZXMgb3IgdGhlIGN1cnJlbnQgIgorImFyY2hpdGVjdHVyYWwgZGVmaWNpZW5jaWVzIGhhdmUgYmVlbiBzb2x2ZWQuIgorbXNnc3RyICIiCisiV3nFm3dpZXRsYSBsaXN0xJkgxZtjaWXFvGVrIGRsYSBwbGlrw7N3IGtvbnRyb2xueWNoIGluc3RhbG93YW55Y2ggdyBzeXN0ZW1pZSAiCisicHJ6ZXogcGFraWV0IG8gcG9kYW5laiBJPG5hendpZS1wYWtpZXR1Pi4gSmXFm2xpIHBvZGFueSBqZXN0IEk8cGxpay0iCisia29udHJvbG55Piwgd3nFm3dpZXRsYW5hIGplc3QgamVkeW5pZSDFm2NpZcW8a2EgZGxhIHRlZ28gcGxpa3Uga29udHJvbG5lZ28sIG8gIgorImlsZSB0eWxrbyBpc3RuaWVqZS4gQjxVd2FnYT46IHRvIHBvbGVjZW5pZSBqZXN0IHBvxYJvd2ljem5pZSBwdWJsaWN6bmUsICIKKyJwb3dpbm5vIGJ5xIcgdcW8eXdhbmUgdHlsa28gdyBvc3RhdGVjem5vxZtjaSBqZcWbbGkgxbxhZGVuIGlubnkgaW50ZXJmZWpzIG5pZSAiCisiamVzdCBkb3N0xJlwbnkuIE1vxbxlIHpvc3RhxIcgdXpuYW5lIHphIHByemVzdGFyemHFgmUgamXFm2xpIHBvd3N0YW7EhSBsZXBzemUgIgorImludGVyZmVqc3kgbHViIHpvc3RhbsSFIHJvendpxIV6YW5lIGJpZcW8xIVjZSBuaWVkb3N0YXRraSBhcmNoaXRla3Rvbmljem5lLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcXVlcnkuMTo5MworIywgbm8td3JhcAorbXNnaWQgIkI8LVM+LCBCPC0tc2VhcmNoPiBJPGZpbGVuYW1lLXNlYXJjaC1wYXR0ZXJuPi4uLiIKK21zZ3N0ciAiQjwtUz4sIEI8LS1zZWFyY2g+IEk8d3pvcnplYy13eXN6dWtpd2FuaWEtbmF6d3ktcGxpa3U+Li4uIgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6OTkKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlNlYXJjaCBmb3IgYSBmaWxlbmFtZSBmcm9tIGluc3RhbGxlZCBwYWNrYWdlcy4gQWxsIHN0YW5kYXJkIHNoZWxsICIKKyN8ICJ3aWxkY2hhcnMgY2FuIGJlIHVzZWQgaW4gdGhlIHBhdHRlcm4uIFRoaXMgY29tbWFuZCB3aWxsIG5vdCBsaXN0IGV4dHJhICIKKyN8ICJmaWxlcyBjcmVhdGVkIGJ5IG1haW50YWluZXIgc2NyaXB0cywgbm9yIHdpbGwgaXQgbGlzdCBhbHRlcm5hdGl2ZXMuIgorbXNnaWQgIiIKKyJTZWFyY2ggZm9yIHBhY2thZ2VzIHRoYXQgb3duIGZpbGVzIGNvcnJlc3BvbmRpbmcgdG8gdGhlIGdpdmVuIHBhdHRlcm4uICAiCisiU3RhbmRhcmQgc2hlbGwgd2lsZGNoYXJzIGNhbiBiZSB1c2VkIGluIHRoZSBwYXR0ZXJuLiAgVGhpcyBjb21tYW5kIHdpbGwgbm90ICIKKyJsaXN0IGV4dHJhIGZpbGVzIGNyZWF0ZWQgYnkgbWFpbnRhaW5lciBzY3JpcHRzLCBub3Igd2lsbCBpdCBsaXN0ICIKKyJhbHRlcm5hdGl2ZXMuIgorbXNnc3RyICIiCisiU3p1a2FuaWUgcGxpa3UgbyBwb2RhbnltIHd6b3JjdSBwb8WbcsOzZCB6YWluc3RhbG93YW55Y2ggcGFraWV0w7N3LiBXem9yemVjICIKKyJtb8W8ZSB6YXdpZXJhxIcgend5a8WCZSBvcGVyYXRvcnkgcG93dMOzcnplbmlhLiBQb2xlY2VuaWUgdG8gbmllIHd5c3p1a2EgIgorImRvZGF0a293eWNoIHBsaWvDs3cgdHdvcnpvbnljaCBwcnpleiBza3J5cHR5IGluc3RhbGFjeWpuZSBwYWtpZXTDs3cgb3JheiBuaWUgIgorInd5xZt3aWV0bGkgYWx0ZXJuYXR5dy4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXF1ZXJ5LjE6OTkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1wPiwgQjwtLXByaW50LWF2YWlsPiBJPHBhY2thZ2UtbmFtZT4uLi4iCittc2dzdHIgIkI8LXA+LCBCPC0tcHJpbnQtYXZhaWw+IEk8bmF6d2EtcGFraWV0dT4uLi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMToxMDUKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIkRpc3BsYXkgZGV0YWlscyBhYm91dCBJPHBhY2thZ2UtbmFtZT4sIGFzIGZvdW5kIGluIEk8L3Zhci9saWIvZHBrZy8iCisjfCAiYXZhaWxhYmxlPi4gVXNlcnMgb2YgQVBULWJhc2VkIGZyb250ZW5kcyBzaG91bGQgdXNlIEI8YXB0LWNhY2hlIHNob3c+ICIKKyN8ICJJPHBhY2thZ2UtbmFtZT4gaW5zdGVhZCBhcyB0aGUgSTxhdmFpbGFibGU+IGZpbGUgaXMgb25seSBrZXB0IHVwLXRvLWRhdGUgIgorI3wgIndoZW4gdXNpbmcgQjxkc2VsZWN0Pi4iCittc2dpZCAiIgorIkRpc3BsYXkgZGV0YWlscyBhYm91dCBJPHBhY2thZ2UtbmFtZT4sIGFzIGZvdW5kIGluIEk8L3Zhci9saWIvZHBrZy8iCisiYXZhaWxhYmxlPi4gV2hlbiBtdWx0aXBsZSBJPHBhY2thZ2UtbmFtZT4gYXJlIGxpc3RlZCwgdGhlIHJlcXVlc3RlZCAiCisiSTxhdmFpbGFibGU+IGVudHJpZXMgYXJlIHNlcGFyYXRlZCBieSBhbiBlbXB0eSBsaW5lLiIKK21zZ3N0ciAiIgorIld5xZt3aWV0bGEgc3pjemVnw7PFgm93ZSBpbmZvcm1hY2plIG5hIHRlbWF0IHBha2lldHUgSTxuYXp3YS1wYWtpZXR1PiwgIgorInBvY2hvZHrEhWNlIHogcGxpa3UgSTwvdmFyL2xpYi9kcGtnL2F2YWlsYWJsZT4uIFXFvHl0a293bmljeSBuYWvFgmFkZWsgb3BhcnR5Y2ggIgorIm8gQVBUIHBvd2lubmkgdcW8eXdhxIcgQjxhcHQtY2FjaGUgc2hvdz4gSTxwYWNrYWdlLW5hbWU+IHphbWlhc3QgdGVqIG9wY2ppLCAiCisicG9uaWV3YcW8IHBsaWsgSTxhdmFpbGFibGU+IGplc3QgdXRyenlteXdhbnkgdyBha3R1YWxub8WbY2kgamVkeW5pZSBwcnp5ICIKKyJ1xbx5Y2l1IEI8ZHNlbGVjdD4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6MTEwCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJEaXNwbGF5IGRldGFpbHMgYWJvdXQgSTxwYWNrYWdlLW5hbWU+LCBhcyBmb3VuZCBpbiBJPC92YXIvbGliL2Rwa2cvIgorI3wgImF2YWlsYWJsZT4uIFVzZXJzIG9mIEFQVC1iYXNlZCBmcm9udGVuZHMgc2hvdWxkIHVzZSBCPGFwdC1jYWNoZSBzaG93PiAiCisjfCAiSTxwYWNrYWdlLW5hbWU+IGluc3RlYWQgYXMgdGhlIEk8YXZhaWxhYmxlPiBmaWxlIGlzIG9ubHkga2VwdCB1cC10by1kYXRlICIKKyN8ICJ3aGVuIHVzaW5nIEI8ZHNlbGVjdD4uIgorbXNnaWQgIiIKKyJVc2VycyBvZiBBUFQtYmFzZWQgZnJvbnRlbmRzIHNob3VsZCB1c2UgQjxhcHQtY2FjaGUgc2hvdz4gSTxwYWNrYWdlLW5hbWU+ICIKKyJpbnN0ZWFkIGFzIHRoZSBJPGF2YWlsYWJsZT4gZmlsZSBpcyBvbmx5IGtlcHQgdXAtdG8tZGF0ZSB3aGVuIHVzaW5nICIKKyJCPGRzZWxlY3Q+LiIKK21zZ3N0ciAiIgorIld5xZt3aWV0bGEgc3pjemVnw7PFgm93ZSBpbmZvcm1hY2plIG5hIHRlbWF0IHBha2lldHUgSTxuYXp3YS1wYWtpZXR1PiwgIgorInBvY2hvZHrEhWNlIHogcGxpa3UgSTwvdmFyL2xpYi9kcGtnL2F2YWlsYWJsZT4uIFXFvHl0a293bmljeSBuYWvFgmFkZWsgb3BhcnR5Y2ggIgorIm8gQVBUIHBvd2lubmkgdcW8eXdhxIcgQjxhcHQtY2FjaGUgc2hvdz4gSTxwYWNrYWdlLW5hbWU+IHphbWlhc3QgdGVqIG9wY2ppLCAiCisicG9uaWV3YcW8IHBsaWsgSTxhdmFpbGFibGU+IGplc3QgdXRyenlteXdhbnkgdyBha3R1YWxub8WbY2kgamVkeW5pZSBwcnp5ICIKKyJ1xbx5Y2l1IEI8ZHNlbGVjdD4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1xdWVyeS4xOjEyMgorIywgbm8td3JhcAorbXNnaWQgIkI8LWY+LCBCPC0tc2hvd2Zvcm1hdD0+STxmb3JtYXQ+IgorbXNnc3RyICJCPC1mPiwgQjwtLXNob3dmb3JtYXQ9Pkk8Zm9ybWF0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjEyOQorbXNnaWQgIkluIHRoZSBmb3JtYXQgc3RyaW5nLCBcXChscUI8XFxlPlxcKHJxIGludHJvZHVjZXMgZXNjYXBlczoiCittc2dzdHIgIlcgxYJhxYRjdWNodSBmb3JtYXR1LCBcXChscUI8XFxlPlxcKHJxIGplc3Qgem5ha2llbSBjeXRvd2FuaWE6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6MTM0CisjLCBuby13cmFwCittc2dpZCAiIgorIiAgICBCPFxcZW4+ICBuZXdsaW5lXG4iCisiICAgIEI8XFxlcj4gIGNhcnJpYWdlIHJldHVyblxuIgorIiAgICBCPFxcZXQ+ICB0YWJcbiIKK21zZ3N0ciAiIgorIiAgICBCPFxcZW4+ICBub3dhIGxpbmlhXG4iCisiICAgIEI8XFxlcj4gIHBvd3LDs3Qga2FyZXRraVxuIgorIiAgICBCPFxcZXQ+ICB0YWJ1bGFjamFcbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjEzOQorbXNnaWQgIiIKKyJcXChscUI8XFxlPlxcKHJxIGJlZm9yZSBhbnkgb3RoZXIgY2hhcmFjdGVyIHN1cHByZXNzZXMgYW55IHNwZWNpYWwgbWVhbmluZyAiCisib2YgdGhlIGZvbGxvd2luZyBjaGFyYWN0ZXIsIHdoaWNoIGlzIHVzZWZ1bCBmb3IgXFwobHFCPFxcZT5cXChycSBhbmQgXFwobHFCPCIKKyIkPlxcKHJxLiIKK21zZ3N0ciAiIgorIlxcKGxxQjxcXGU+XFwocnEgcG9wcnplZHphasSFY3kgamFraWtvbHdpZWsgaW5ueSB6bmFrIHpub3NpIHNwZWNqYWxuZSAiCisiem5hY3plbmllIG5hc3TEmXB1asSFY2VnbyBwbyBuaW0gem5ha3UsIGNvIG1vxbxlIGJ5xIcgcHJ6eWRhdG5lIGRsYSBcXChscUI8XFxlPiIKKyJcXChycSBvcmF6IFxcKGxxQjwkPlxcKHJxLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjE0NworbXNnaWQgIiIKKyJQYWNrYWdlIGluZm9ybWF0aW9uIGNhbiBiZSBpbmNsdWRlZCBieSBpbnNlcnRpbmcgdmFyaWFibGUgcmVmZXJlbmNlcyB0byAiCisicGFja2FnZSBmaWVsZHMgdXNpbmcgdGhlIHN5bnRheCBcXChscUI8JHs+STxmaWVsZD5bQjw7Pkk8d2lkdGg+XUI8fT5cXChycS4gIgorIkZpZWxkcyBhcmUgcHJpbnRlZCByaWdodC1hbGlnbmVkIHVubGVzcyB0aGUgd2lkdGggaXMgbmVnYXRpdmUgaW4gd2hpY2ggY2FzZSAiCisibGVmdCBhbGlnbm1lbnQgd2lsbCBiZSB1c2VkLiBUaGUgZm9sbG93aW5nIEk8ZmllbGQ+cyBhcmUgcmVjb2duaXNlZCBidXQgdGhleSAiCisiYXJlIG5vdCBuZWNlc3NhcmlseSBhdmFpbGFibGUgaW4gdGhlIHN0YXR1cyBmaWxlIChvbmx5IGludGVybmFsIGZpZWxkcyBvciAiCisiZmllbGRzIHN0b3JlZCBpbiB0aGUgYmluYXJ5IHBhY2thZ2UgZW5kIHVwIGluIGl0KToiCittc2dzdHIgIiIKKyJJbmZvcm1hY2plIG8gcGFraWVjaWUgbW/FvG5hIHd5xZt3aWV0bGHEhywgZG9kYWrEhWMgb2R3b8WCYW5pYSBkbyBww7NsIHBha2lldHUgeiAiCisidcW8eWNpZW0gc2vFgmFkbmkgXFwobHFCPCR7Pkk8cG9sZT5bQjw7Pkk8c3plcm9rb8WbxIc+XUI8fT5cXChycS4gUG9sYSBzxIUgIgorInd5csOzd255d2FuZSBkbyBwcmF3ZWogc3Ryb255LCBjaHliYSDFvGUgSTxzemVyb2tvxZvEhz4gamVzdCBsaWN6YsSFIHVqZW1uxIUsIHcgIgorImt0w7NyeW0gdG8gd3lwYWRrdSBixJlkemllIHXFvHl0ZSB3eXLDs3duYW5pZSBkbyBsZXdlaiBzdHJvbnkuIFJvenBvem5hd2FuZSBzxIUgIgorIm5hc3TEmXB1asSFY2UgSTxwb2xhPiwgYWxlIG5pZWtvbmllY3puaWUgc8SFIG9uZSB3xYLEhWN6YW5lIHcgcGxpa3Ugc3RhdHVzdSAiCisiKHRyYWZpYWrEhSB0YW0gdHlsa28gcG9sYSB3ZXduxJl0cnpuZSBsdWIgcG9sYSB6YXdhcnRlIHcgYmluYXJueW0gcGFraWVjaWUpOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjE4MgorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICIiCisjfCAiICAgIEI8QXJjaGl0ZWN0dXJlPlxuIgorI3wgIiAgICBCPEJ1Z3M+XG4iCisjfCAiICAgIEI8Q29uZmZpbGVzPiAoaW50ZXJuYWwpXG4iCisjfCAiICAgIEI8Q29uZmlnLVZlcnNpb24+IChpbnRlcm5hbClcbiIKKyN8ICIgICAgQjxDb25mbGljdHM+XG4iCisjfCAiICAgIEI8QnJlYWtzPlxuIgorI3wgIiAgICBCPERlcGVuZHM+XG4iCisjfCAiICAgIEI8RGVzY3JpcHRpb24+XG4iCisjfCAiICAgIEI8RW5oYW5jZXM+XG4iCisjfCAiICAgIEI8RXNzZW50aWFsPlxuIgorI3wgIiAgICBCPEZpbGVuYW1lPiAoaW50ZXJuYWwsIGRzZWxlY3QgcmVsYXRlZClcbiIKKyN8ICIgICAgQjxIb21lcGFnZT5cbiIKKyN8ICIgICAgQjxJbnN0YWxsZWQtU2l6ZT5cbiIKKyN8ICIgICAgQjxNRDVzdW0+IChpbnRlcm5hbCwgZHNlbGVjdCByZWxhdGVkKVxuIgorI3wgIiAgICBCPE1TRE9TLUZpbGVuYW1lPiAoaW50ZXJuYWwsIGRzZWxlY3QgcmVsYXRlZClcbiIKKyN8ICIgICAgQjxNYWludGFpbmVyPlxuIgorI3wgIiAgICBCPE9yaWdpbj5cbiIKKyN8ICIgICAgQjxQYWNrYWdlPlxuIgorI3wgIiAgICBCPFByZS1EZXBlbmRzPlxuIgorI3wgIiAgICBCPFByaW9yaXR5PlxuIgorI3wgIiAgICBCPFByb3ZpZGVzPlxuIgorI3wgIiAgICBCPFJlY29tbWVuZHM+XG4iCisjfCAiICAgIEI8UmVwbGFjZXM+XG4iCisjfCAiICAgIEI8UmV2aXNpb24+IChvYnNvbGV0ZSlcbiIKKyN8ICIgICAgQjxTZWN0aW9uPlxuIgorI3wgIiAgICBCPFNpemU+IChpbnRlcm5hbCwgZHNlbGVjdCByZWxhdGVkKVxuIgorI3wgIiAgICBCPFNvdXJjZT5cbiIKKyN8ICIgICAgQjxTdGF0dXM+IChpbnRlcm5hbClcbiIKKyN8ICIgICAgQjxTdWdnZXN0cz5cbiIKKyN8ICIgICAgQjxUYWc+ICh1c3VhbGx5IG5vdCBpbiB0aGUgLmRlYiBidXQgaW4gQVBUJ3MgUGFja2FnZXMgZmlsZXMpXG4iCisjfCAiICAgIEI8VHJpZ2dlcnMtQXdhaXRlZD4gKGludGVybmFsKVxuIgorI3wgIiAgICBCPFRyaWdnZXJzLVBlbmRpbmc+IChpbnRlcm5hbClcbiIKKyN8ICIgICAgQjxWZXJzaW9uPlxuIgorbXNnaWQgIiIKKyIgICAgQjxBcmNoaXRlY3R1cmU+XG4iCisiICAgIEI8QnVncz5cbiIKKyIgICAgQjxDb25mZmlsZXM+IChpbnRlcm5hbClcbiIKKyIgICAgQjxDb25maWctVmVyc2lvbj4gKGludGVybmFsKVxuIgorIiAgICBCPENvbmZsaWN0cz5cbiIKKyIgICAgQjxCcmVha3M+XG4iCisiICAgIEI8RGVwZW5kcz5cbiIKKyIgICAgQjxEZXNjcmlwdGlvbj5cbiIKKyIgICAgQjxFbmhhbmNlcz5cbiIKKyIgICAgQjxFc3NlbnRpYWw+XG4iCisiICAgIEI8RmlsZW5hbWU+IChpbnRlcm5hbCwgZnJvbnQtZW5kIHJlbGF0ZWQpXG4iCisiICAgIEI8SG9tZXBhZ2U+XG4iCisiICAgIEI8SW5zdGFsbGVkLVNpemU+XG4iCisiICAgIEI8TUQ1c3VtPiAoaW50ZXJuYWwsIGZyb250LWVuZCByZWxhdGVkKVxuIgorIiAgICBCPE1TRE9TLUZpbGVuYW1lPiAoaW50ZXJuYWwsIGZyb250LWVuZCByZWxhdGVkKVxuIgorIiAgICBCPE1haW50YWluZXI+XG4iCisiICAgIEI8T3JpZ2luPlxuIgorIiAgICBCPFBhY2thZ2U+XG4iCisiICAgIEI8UHJlLURlcGVuZHM+XG4iCisiICAgIEI8UHJpb3JpdHk+XG4iCisiICAgIEI8UHJvdmlkZXM+XG4iCisiICAgIEI8UmVjb21tZW5kcz5cbiIKKyIgICAgQjxSZXBsYWNlcz5cbiIKKyIgICAgQjxSZXZpc2lvbj4gKG9ic29sZXRlKVxuIgorIiAgICBCPFNlY3Rpb24+XG4iCisiICAgIEI8U2l6ZT4gKGludGVybmFsLCBmcm9udC1lbmQgcmVsYXRlZClcbiIKKyIgICAgQjxTb3VyY2U+XG4iCisiICAgIEI8U3RhdHVzPiAoaW50ZXJuYWwpXG4iCisiICAgIEI8U3VnZ2VzdHM+XG4iCisiICAgIEI8VGFnPiAodXN1YWxseSBub3QgaW4gdGhlIC5kZWIgYnV0IGluIHRoZSByZXBvc2l0b3J5IFBhY2thZ2VzIGZpbGVzKVxuIgorIiAgICBCPFRyaWdnZXJzLUF3YWl0ZWQ+IChpbnRlcm5hbClcbiIKKyIgICAgQjxUcmlnZ2Vycy1QZW5kaW5nPiAoaW50ZXJuYWwpXG4iCisiICAgIEI8VmVyc2lvbj5cbiIKK21zZ3N0ciAiIgorIiAgICBCPEFyY2hpdGVjdHVyZT5cbiIKKyIgICAgQjxCdWdzPlxuIgorIiAgICBCPENvbmZmaWxlcz4gKHdld27EmXRyem5lKVxuIgorIiAgICBCPENvbmZpZy1WZXJzaW9uPiAod2V3bsSZdHJ6bmUpXG4iCisiICAgIEI8Q29uZmxpY3RzPlxuIgorIiAgICBCPEJyZWFrcz5cbiIKKyIgICAgQjxEZXBlbmRzPlxuIgorIiAgICBCPERlc2NyaXB0aW9uPlxuIgorIiAgICBCPEVuaGFuY2VzPlxuIgorIiAgICBCPEVzc2VudGlhbD5cbiIKKyIgICAgQjxGaWxlbmFtZT4gKHdld27EmXRyem5lLCB6d2nEhXphbmUgeiBkc2VsZWN0KVxuIgorIiAgICBCPEhvbWVwYWdlPlxuIgorIiAgICBCPEluc3RhbGxlZC1TaXplPlxuIgorIiAgICBCPE1ENXN1bT4gKHdld27EmXRyem5lLCB6d2nEhXphbmUgeiBkc2VsZWN0KVxuIgorIiAgICBCPE1TRE9TLUZpbGVuYW1lPiAod2V3bsSZdHJ6bmUsIHp3acSFemFuZSB6IGRzZWxlY3QpXG4iCisiICAgIEI8TWFpbnRhaW5lcj5cbiIKKyIgICAgQjxPcmlnaW4+XG4iCisiICAgIEI8UGFja2FnZT5cbiIKKyIgICAgQjxQcmUtRGVwZW5kcz5cbiIKKyIgICAgQjxQcmlvcml0eT5cbiIKKyIgICAgQjxQcm92aWRlcz5cbiIKKyIgICAgQjxSZWNvbW1lbmRzPlxuIgorIiAgICBCPFJlcGxhY2VzPlxuIgorIiAgICBCPFJldmlzaW9uPiAocHJ6ZXN0YXJ6YcWCZSlcbiIKKyIgICAgQjxTZWN0aW9uPlxuIgorIiAgICBCPFNpemU+ICh3ZXduxJl0cnpuZSwgendpxIV6YW5lIHogZHNlbGVjdClcbiIKKyIgICAgQjxTb3VyY2U+XG4iCisiICAgIEI8U3RhdHVzPiAod2V3bsSZdHJ6bmUpXG4iCisiICAgIEI8U3VnZ2VzdHM+XG4iCisiICAgIEI8VGFnPiAoend5a2xlIG5pZSB3IC5kZWIsIGFsZSB3IHBsaWthY2ggUGFja2FnZXMgc3lzdGVtdSBBUFQpXG4iCisiICAgIEI8VHJpZ2dlcnMtQXdhaXRlZD4gKHdld27EmXRyem5lKVxuIgorIiAgICBCPFRyaWdnZXJzLVBlbmRpbmc+ICh3ZXduxJl0cnpuZSlcbiIKKyIgICAgQjxWZXJzaW9uPlxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6MTkwCittc2dpZCAiIgorIlRoZSBkZWZhdWx0IGZvcm1hdCBzdHJpbmcgaXMgXFwobHFCPCR7UGFja2FnZX1cXGV0JHtWZXJzaW9ufVxcZW4+XFwocnEuICAiCisiQWN0dWFsbHksIGFsbCBvdGhlciBmaWVsZHMgZm91bmQgaW4gdGhlIHN0YXR1cyBmaWxlIChpLmUuIHVzZXIgZGVmaW5lZCAiCisiZmllbGRzKSBjYW4gYmUgcmVxdWVzdGVkLCB0b28uIFRoZXkgd2lsbCBiZSBwcmludGVkIGFzLWlzLCB0aG91Z2gsIG5vICIKKyJjb252ZXJzaW9uIG5vciBlcnJvciBjaGVja2luZyBpcyBkb25lIG9uIHRoZW0uICBUbyBnZXQgdGhlIG5hbWUgb2YgdGhlIGRwa2cgIgorIm1haW50YWluZXIgYW5kIHRoZSBpbnN0YWxsZWQgdmVyc2lvbiwgeW91IGNvdWxkIHJ1bjoiCittc2dzdHIgIiIKKyJEb215xZtsbnltIGZvcm1hdGVtIGplc3QgXFwobHFCPCR7UGFja2FnZX1cXGV0JHtWZXJzaW9ufVxcZW4+XFwocnEuIE1vxbxuYSAiCisicsOzd25pZcW8IHphxbzEhWRhxIcgd3N6eXN0a2ljaCBwb3pvc3RhxYJ5Y2ggcMOzbCB6IHBsaWt1IHN0YXR1cyAodGouIHDDs2wgIgorInpkZWZpbmlvd2FueWNoIHByemV6IHXFvHl0a293bmlrYSkuIFpvc3RhbsSFIG9uZSB3eXBpc2FuZSB3IHRha2llaiBwb3N0YWNpLCB3ICIKKyJqYWtpZWogem5hamR1asSFIHNpxJkgdyBwbGlrdSBzdGF0dXMsIG5pZSBixJlkemllIHdpxJljIGRva29ueXdhbmEgxbxhZG5hICIKKyJrb253ZXJzamEgY3p5IHNwcmF3ZHphbmllIGLFgsSZZMOzdy4gQWJ5IHd5xZt3aWV0bGnEhyBuYXp3xJkgb3BpZWt1bmEgcGFraWV0dSBkcGtnICIKKyJpIHphaW5zdGFsb3dhbsSFIHdlcnNqxJkgdGVnbyBwYWtpZXR1LCBtb8W8bmEgdXJ1Y2hvbWnEhzoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMToxOTMKKyMsIG5vLXdyYXAKK21zZ2lkICIgIEI8ZHBrZy1xdWVyeSAtVyAtZj1cXChhcSR7UGFja2FnZX0gJHtWZXJzaW9ufVxcZXQke01haW50YWluZXJ9XFxlblxcKGFxIGRwa2c+XG4iCittc2dzdHIgIiAgQjxkcGtnLXF1ZXJ5IC1XIC1mPVxcKGFxJHtQYWNrYWdlfSAke1ZlcnNpb259XFxldCR7TWFpbnRhaW5lcn1cXGVuXFwoYXEgZHBrZz5cbiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctcXVlcnkuMToxOTUgZHBrZy1zcGxpdC4xOjE3OSBzdGFydC1zdG9wLWRhZW1vbi44OjI1OQorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM3NAorIywgbm8td3JhcAorbXNnaWQgIkVYSVQgU1RBVFVTIgorbXNnc3RyICJLT0QgV1lKxZpDSUEiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXF1ZXJ5LjE6MTk2IGRwa2ctc3BsaXQuMToxODAgc3RhcnQtc3RvcC1kYWVtb24uODoyNjAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6Mjg5IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozNzUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPDA+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMToxOTkKKyMsIGZ1enp5CisjfCBtc2dpZCAiVGhlIHJlcXVlc3RlZCBhY3Rpb24gd2FzIHN1Y2Nlc3NmdWxseSBwZXJmb3JtZWQuIgorbXNnaWQgIlRoZSByZXF1ZXN0ZWQgcXVlcnkgd2FzIHN1Y2Nlc3NmdWxseSBwZXJmb3JtZWQuIgorbXNnc3RyICJBa2NqYSB6YWtvxYRjennFgmEgc2nEmSBwb3dvZHplbmllbS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXF1ZXJ5LjE6MTk5IGRwa2ctc3BsaXQuMToxODYgc3RhcnQtc3RvcC1kYWVtb24uODoyNzAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjkyCisjLCBuby13cmFwCittc2dpZCAiQjwxPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6MjAzCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJQcm9ibGVtcyB3ZXJlIGVuY291bnRlcmVkIHdoaWxzdCBwYXJzaW5nIHRoZSBjb21tYW5kIGxpbmUgb3IgcGVyZm9ybWluZyAiCisjfCAidGhlIGFjdGlvbi4iCittc2dpZCAiIgorIlByb2JsZW1zIHdlcmUgZW5jb3VudGVyZWQgd2hpbGUgcGFyc2luZyB0aGUgY29tbWFuZCBsaW5lIG9yIHBlcmZvcm1pbmcgdGhlICIKKyJxdWVyeSwgaW5jbHVkaW5nIG5vIGZpbGUgb3IgcGFja2FnZSBiZWluZyBmb3VuZCAoZXhjZXB0IGZvciAtLWNvbnRyb2wtcGF0aCkuIgorbXNnc3RyICIiCisiV3lzdMSFcGnFgnkgcHJvYmxlbXkgcG9kY3phcyBwcnpldHdhcnphbmlhIGxpbmlpIHBvbGVjZcWEIGx1YiB3eWtvbnl3YW5pYSBha2NqaS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMToyMTMKK21zZ2lkICIiCisiVGhpcyBzZXR0aW5nIGluZmx1ZW5jZXMgdGhlIG91dHB1dCBvZiB0aGUgQjwtLWxpc3Q+IG9wdGlvbiBieSBjaGFuZ2luZyB0aGUgIgorIndpZHRoIG9mIGl0cyBvdXRwdXQuIgorbXNnc3RyICIiCisiWm1pZW5uYSB0YSB3cMWCeXdhIG5hIHd5asWbY2llIHBvbGVjZW5pYSBCPC0tbGlzdD4sIHptaWVuaWFqxIVjIGplZ28gc3plcm9rb8WbxIcuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6MjE2Cittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMDEgV2ljaGVydCBBa2tlcm1hbiIKK21zZ3N0ciAiQ29weXJpZ2h0IFxcKGNvIDIwMDEgV2ljaGVydCBBa2tlcm1hbiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6MTUKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLXNjYW5wYWNrYWdlcyIKK21zZ3N0ciAiZHBrZy1zY2FucGFja2FnZXMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6MTgKK21zZ2lkICJkcGtnLXNjYW5wYWNrYWdlcyAtIGNyZWF0ZSBQYWNrYWdlcyBpbmRleCBmaWxlcyIKK21zZ3N0ciAiZHBrZy1zY2FucGFja2FnZXMgLSB0d29yenkgcGxpayBpbmRla3Nvd2UgUGFja2FnZXMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6MjYKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIkI8ZHBrZy1zY2FucGFja2FnZXM+IFtJPG9wdGlvbnM+XSBJPGJpbmFyeS1kaXI+IFtJPG92ZXJyaWRlLWZpbGU+IFtJPHBhdGgtIgorI3wgInByZWZpeD5dXSBCPEU8Z3Q+PiBJPFBhY2thZ2VzPiIKK21zZ2lkICIiCisiQjxkcGtnLXNjYW5wYWNrYWdlcz4gW0k8b3B0aW9uPi4uLl0gSTxiaW5hcnktZGlyPiBbSTxvdmVycmlkZS1maWxlPiBbSTxwYXRoLSIKKyJwcmVmaXg+XV0gQjxFPGd0Pj4gSTxQYWNrYWdlcz4iCittc2dzdHIgIiIKKyJCPGRwa2ctc2NhbnBhY2thZ2VzPiBbSTxvcGNqZT5dIEk8a2F0YWxvZ19iaW5hcm55PiBbSTxwbGlrX25hZHBpc2HFhD4gIgorIltJPHByZWZpa3NfxZtjaWXFvGtpPl1dIEI8RTxndD4+IEk8UGFja2FnZXM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjM5Cittc2dpZCAiIgorIkI8ZHBrZy1zY2FucGFja2FnZXM+IHNvcnRzIHRocm91Z2ggYSB0cmVlIG9mIERlYmlhbiBiaW5hcnkgcGFja2FnZXMgYW5kICIKKyJjcmVhdGVzIGEgUGFja2FnZXMgZmlsZSwgdXNlZCBieSBCPGFwdD4oOCksIEI8ZHNlbGVjdD4oMSksIGV0YywgdG8gdGVsbCB0aGUgIgorInVzZXIgd2hhdCBwYWNrYWdlcyBhcmUgYXZhaWxhYmxlIGZvciBpbnN0YWxsYXRpb24uIFRoZXNlIFBhY2thZ2VzIGZpbGVzIGFyZSAiCisidGhlIHNhbWUgYXMgdGhvc2UgZm91bmQgb24gRGViaWFuIGFyY2hpdmUgc2l0ZXMgYW5kIENELVJPTXMuIFlvdSBtaWdodCB1c2UgIgorIkI8ZHBrZy1zY2FucGFja2FnZXM+IHlvdXJzZWxmIGlmIG1ha2luZyBhIGRpcmVjdG9yeSBvZiBsb2NhbCBwYWNrYWdlcyB0byAiCisiaW5zdGFsbCBvbiBhIGNsdXN0ZXIgb2YgbWFjaGluZXMuIgorbXNnc3RyICIiCisiQjxkcGtnLXNjYW5wYWNrYWdlcz4gcHJ6ZWNob2R6aSBwbyBkcnpld2llIGJpbmFybnljaCBwYWtpZXTDs3cgRGViaWFuYSBpICIKKyJ0d29yenkgcGxpa2kgUGFja2FnZXMsIHXFvHl3YW5lIHByemV6IEI8YXB0Pig4KSwgQjxkc2VsZWN0PigxKSBpdHAuLCAiCisiemF3aWVyYWrEhWNlIGluZm9ybWFjamUgbyB0eW0sIGpha2llIHBha2lldHkgc8SFIGRvc3TEmXBuZSBkbyB6YWluc3RhbG93YW5pYS4gIgorIld5Z2VuZXJvd2FuZSBwbGlraSBQYWNrYWdlcyBzxIUgdGFraWUgc2FtZSwgamFrIHRlLCBrdMOzcmUgbW/FvG5hIHpuYWxlxbrEhyB3ICIKKyJtaXJyb3JhY2ggYXJjaGl3dW0gRGViaWFuYSBpIG5hIENELVJPTS1hY2guIFByb2dyYW11IEI8ZHBrZy1zY2FucGFja2FnZXM+ICIKKyJtb8W8bmEgdcW8ecSHIHBvZGN6YXMgdHdvcnplbmlhIGthdGFsb2d1IGxva2FsbnljaCBwYWtpZXTDs3cgZG8gemFpbnN0YWxvd2FuaWEgdyAiCisiZ3J1cGllIGtvbXB1dGVyw7N3LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2FucGFja2FnZXMuMTo1MQorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiQjxOb3RlOj4gSWYgeW91IHdhbnQgdG8gYWNjZXNzIHRoZSBnZW5lcmF0ZWQgUGFja2FnZXMgZmlsZSB3aXRoIEI8YXB0PiAiCisjfCAieW91IHdpbGwgcHJvYmFibHkgbmVlZCB0byBjb21wcmVzcyB0aGUgZmlsZSB3aXRoIEI8YnppcDI+KDEpICAoZ2VuZXJhdGluZyAiCisjfCAiYSBQYWNrYWdlcy5iejIgZmlsZSkgb3IgQjxnemlwPigxKSAgKGdlbmVyYXRpbmMgYSBQYWNrYWdlcy5neiBmaWxlKS4gYXB0ICIKKyN8ICJpZ25vcmVzIHVuY29tcHJlc3NlZCBQYWNrYWdlcyBmaWxlcyBleGNlcHQgb24gbG9jYWwgYWNjZXNzIChpLmUuICAiCisjfCAiQjxmaWxlOi8vPiBzb3VyY2VzKS4iCittc2dpZCAiIgorIkI8Tm90ZTo+IElmIHlvdSB3YW50IHRvIGFjY2VzcyB0aGUgZ2VuZXJhdGVkIFBhY2thZ2VzIGZpbGUgd2l0aCBCPGFwdD4geW91ICIKKyJ3aWxsIHByb2JhYmx5IG5lZWQgdG8gY29tcHJlc3MgdGhlIGZpbGUgd2l0aCBCPGJ6aXAyPigxKSAgKGdlbmVyYXRpbmcgYSAiCisiUGFja2FnZXMuYnoyIGZpbGUpIG9yIEI8Z3ppcD4oMSkgIChnZW5lcmF0aW5nIGEgUGFja2FnZXMuZ3ogZmlsZSkuIGFwdCAiCisiaWdub3JlcyB1bmNvbXByZXNzZWQgUGFja2FnZXMgZmlsZXMgZXhjZXB0IG9uIGxvY2FsIGFjY2VzcyAoaS5lLiAgQjxmaWxlOi8vPiAiCisic291cmNlcykuIgorbXNnc3RyICIiCisiQjxVd2FnYT46IEFieSBCPGFwdD4gbW9nxYJvIHXFvHnEhyB3eWdlbmVyb3dhbmVnbyBwbGlrdSBQYWNrYWdlcywgbmFsZcW8eSBnbyAiCisic2tvbXByZXNvd2HEhyBwcm9ncmFtZW0gQjxiemlwMj4oMSkgKHR3b3J6xIVjIHBsaWsgUGFja2FnZXMuYnoyKSBsdWIgQjxnemlwPiIKKyIoMSkgKHR3b3J6xIVjIHBsaWsgUGFja2FnZXMuZ3opLiBhcHQgaWdub3J1amUgbmllc2tvbXByZXNvd2FuZSBwbGlraSBQYWNrYWdlcyAiCisieiB3eWrEhXRraWVtIGxva2FsbmVnbyBkb3N0xJlwdSAodGouIHBvY2hvZHrEhWNlZ28geiBCPGZpbGU6Ly8+KS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6NTgKK21zZ2lkICIiCisiSTxiaW5hcnlkaXI+IGlzIHRoZSBuYW1lIG9mIHRoZSB0cmVlIG9mIHRoZSBiaW5hcnkgcGFja2FnZXMgdG8gcHJvY2VzcyAoZm9yICIKKyJleGFtcGxlLCBCPGNvbnRyaWIvYmluYXJ5LWkzODY+KS4gIEl0IGlzIGJlc3QgdG8gbWFrZSB0aGlzIHJlbGF0aXZlIHRvIHRoZSAiCisicm9vdCBvZiB0aGUgRGViaWFuIGFyY2hpdmUsIGJlY2F1c2UgZXZlcnkgRmlsZW5hbWUgZmllbGQgaW4gdGhlIG5ldyBQYWNrYWdlcyAiCisiZmlsZSB3aWxsIHN0YXJ0IHdpdGggdGhpcyBzdHJpbmcuIgorbXNnc3RyICIiCisiSTxrYXRhbG9nX2JpbmFybnk+IGplc3QgbmF6d8SFIGRyemV3YSBwYWtpZXTDs3cgYmluYXJueWNoIGRvIHByemV0d29yemVuaWEgKG5hICIKKyJwcnp5a8WCYWQgQjxjb250cmliL2JpbmFyeS1pMzg2PikuIE5hamxlcGllaiwgxbxlYnkgYnnFgiBwb2RhbnkgcmVsYXR5d25pZSB3ICIKKyJzdG9zdW5rdSBkbyBrb3J6ZW5pYSBkcnpld2EgYXJjaGl3dW0gRGViaWFuYSwgcG9uaWV3YcW8ICB3YXJ0b8WbxIcga2HFvGRlZ28gcG9sYSAiCisiRmlsZW5hbWUgdyBub3d5bSBwbGlrdSBQYWNrYWdlcyBixJlkemllIHNpxJkgemFjenluYcSHIG9kIHRlZ28gxYJhxYRjdWNoYSB6bmFrw7N3LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2FucGFja2FnZXMuMTo2MworIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiSTxvdmVycmlkZWZpbGU+IGlzIHRoZSBuYW1lIG9mIGEgZmlsZSB0byByZWFkIHdoaWNoIGNvbnRhaW5zIGluZm9ybWF0aW9uICIKKyN8ICJhYm91dCBob3cgdGhlIHBhY2thZ2UgZml0cyBpbnRvIHRoZSBkaXN0cmlidXRpb247IHNlZSBCPGRlYi1vdmVycmlkZT4oNSkuIgorbXNnaWQgIiIKKyJJPG92ZXJyaWRlZmlsZT4gaXMgdGhlIG5hbWUgb2YgYSBmaWxlIHRvIHJlYWQgd2hpY2ggY29udGFpbnMgaW5mb3JtYXRpb24gIgorImFib3V0IGhvdyB0aGUgcGFja2FnZSBmaXRzIGludG8gdGhlIGRpc3RyaWJ1dGlvbiAoaXQgY2FuIGJlIGEgY29tcHJlc3NlZCAiCisiZmlsZSk7IHNlZSBCPGRlYi1vdmVycmlkZT4oNSkuIgorbXNnc3RyICIiCisiSTxwbGlrX25hZHBpc2HFhD4gamVzdCBuYXp3xIUgcGxpa3UsIHoga3TDs3JlZ28gYsSZZMSFIG9kY3p5dGFuZSBpbmZvcm1hY2plIG8gIgorInR5bSwgamFrIHVtaWVqc2Nvd2nEhyBwYWtpZXQgdyBkeXN0cnlidWNqaTsgcGF0cnogQjxkZWItb3ZlcnJpZGU+KDUpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2FucGFja2FnZXMuMTo2NgorbXNnaWQgIiIKKyJJPHBhdGhwcmVmaXg+IGlzIGFuIG9wdGlvbmFsIHN0cmluZyB0byBiZSBwcmVwZW5kZWQgdG8gdGhlIEZpbGVuYW1lIGZpZWxkcy4iCittc2dzdHIgIiIKKyJJPHByZWZpa3NfxZtjaWXFvGtpPiBqZXN0IG9wY2pvbmFsbnltIMWCYcWEY3VjaGVtIHpuYWvDs3csIGt0w7NyeSBixJlkemllICIKKyJwb3ByemVkemHFgiBuYXp3eSBwbGlrw7N3IHcgcG9sdSBGaWxlbmFtZS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6NzAKK21zZ2lkICIiCisiSWYgbW9yZSB0aGFuIG9uZSB2ZXJzaW9uIG9mIGEgcGFja2FnZSBpcyBmb3VuZCBvbmx5IHRoZSBuZXdlc3Qgb25lIGlzICIKKyJpbmNsdWRlZCBpbiB0aGUgb3V0cHV0LiBJZiB0aGV5IGhhdmUgdGhlIHNhbWUgdmVyc2lvbiBhbmQgb25seSBkaWZmZXIgaW4gIgorImFyY2hpdGVjdHVyZSBvbmx5IHRoZSBmaXJzdCBvbmUgZm91bmQgaXMgdXNlZC4iCittc2dzdHIgIiIKKyJKZcW8ZWxpIGLEmWR6aWUgem5hbGV6aW9uYSB3acSZY2VqIG5pxbwgamVkbmEgd2Vyc2phIHBha2lldHUsIHRvIHR5bGtvIG5ham5vd3N6YSAiCisic3BvxZtyw7NkIG5pY2ggYsSZZHppZSBkb8WCxIVjem9uYSBkbyB3eWrFm2NpYS4gSmXFvGVsaSBvYmllIHdlcnNqZSBwYWtpZXR1IGLEmWTEhSAiCisibWlhxYJ5IHRlbiBzYW0gbnVtZXIgd2Vyc2ppLCBhIGLEmWTEhSBzacSZIHR5bGtvIHLDs8W8bmnFgnkgYXJjaGl0ZWt0dXLEhSwgdG8gYsSZZHppZSAiCisidcW8eXRhIHBpZXJ3c3phIHpuYWxlemlvbmEgd2Vyc2phLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6NzIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC10PiwgQjwtLXR5cGU+IEk8dHlwZT4iCittc2dzdHIgIkI8LXQ+LCBCPC0tdHlwZT4gSTx0eXA+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjc1Cittc2dpZCAiU2NhbiBmb3IgKi5JPHR5cGU+IHBhY2thZ2VzLCBpbnN0ZWFkIG9mICouZGViLiIKK21zZ3N0ciAiU3p1a2FuaWUgcGxpa8OzdyAqLkk8dHlwPiB6YW1pYXN0ICouZGViLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6NzUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC11PiwgQjwtLXVkZWI+IgorbXNnc3RyICJCPC11PiwgQjwtLXVkZWI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjc4Cittc2dpZCAiQjxPYnNvbGV0ZT4gYWxpYXMgZm9yIEI8LXR1ZGViPi4iCittc2dzdHIgIkI8UHJ6ZXN0YXJ6YcWCeT4gYWxpYXMgZGxhIEI8LXR1ZGViPi4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjc4IGRwa2ctc2NhbnNvdXJjZXMuMTo0OQorIywgbm8td3JhcAorbXNnaWQgIkI8LWU+LCBCPC0tZXh0cmEtb3ZlcnJpZGU+IEk8ZmlsZT4iCittc2dzdHIgIkI8LWU+LCBCPC0tZXh0cmEtb3ZlcnJpZGU+IEk8cGxpaz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6ODQgZHBrZy1zY2Fuc291cmNlcy4xOjU0CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJTY2FuIEk8ZmlsZT4gdG8gZmluZCBzdXBwbGVtZW50YXJ5IG92ZXJyaWRlcy4gU2VlIEI8ZGViLWV4dHJhLW92ZXJyaWRlPiIKKyN8ICIoNSkgIGZvciBtb3JlIGluZm9ybWF0aW9uIG9uIGl0cyBmb3JtYXQuIgorbXNnaWQgIiIKKyJTY2FuIEk8ZmlsZT4gdG8gZmluZCBzdXBwbGVtZW50YXJ5IG92ZXJyaWRlcyAodGhlIGZpbGUgY2FuIGJlIGNvbXByZXNzZWQpLiAiCisiU2VlIEI8ZGViLWV4dHJhLW92ZXJyaWRlPig1KSAgZm9yIG1vcmUgaW5mb3JtYXRpb24gb24gaXRzIGZvcm1hdC4iCittc2dzdHIgIiIKKyJQcnplZ2zEhWRhIEk8cGxpaz4gdyBjZWx1IHpuYWxlemllbmlhIGRvZGF0a293eWNoIG5hZHBpc2HFhC4gUHJvc3rEmSB6YWpyemXEhyBkbyAiCisiQjxkZWItZXh0cmEtb3ZlcnJpZGU+KDUpLCBhYnkgcG96bmHEhyBwZcWCbnkgb3BpcyB3eW1hZ2FuZWdvIGZvcm1hdHUuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zY2FucGFja2FnZXMuMTo4NAorIywgbm8td3JhcAorbXNnaWQgIkI8LWE+LCBCPC0tYXJjaD4gSTxhcmNoPiIKK21zZ3N0ciAiQjwtYT4sIEI8LS1hcmNoPiBJPGFyY2hpdGVrdHVyYT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6ODgKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlVzZSBhIHBhdHRlcm4gY29uc2lzdGluZyBvZiBJPCpfYWxsLmRlYj4gYW5kIEk8Kl9hcmNoLmRlYj4gaW5zdGVhZCBvZiAiCisjfCAic2Nhbm5pbmcgZm9yIGFsbCBkZWJzLCIKK21zZ2lkICIiCisiVXNlIGEgcGF0dGVybiBjb25zaXN0aW5nIG9mIEk8Kl9hbGwuZGViPiBhbmQgSTwqX2FyY2guZGViPiBpbnN0ZWFkIG9mICIKKyJzY2FubmluZyBmb3IgYWxsIGRlYnMuIgorbXNnc3RyICIiCisiVcW8eXdhIHd6b3JjYSB6YXdpZXJhasSFY2VnbyBJPCpfYWxsLmRlYj4gaSBJPCpfYXJjaC5kZWI+IHphbWlhc3QgcG9zenVraXdhxIcgIgorIndzenlzdGtpY2ggcGxpa8OzdyBkZWIuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zY2FucGFja2FnZXMuMTo4OAorIywgbm8td3JhcAorbXNnaWQgIkI8LW0+LCBCPC0tbXVsdGl2ZXJzaW9uPiIKK21zZ3N0ciAiQjwtbT4sIEI8LS1tdWx0aXZlcnNpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjkxCittc2dpZCAiSW5jbHVkZSBhbGwgZm91bmQgcGFja2FnZXMgaW4gdGhlIG91dHB1dC4iCittc2dzdHIgIld5cGlzdWplIHdzenlzdGtpZSB6bmFsZXppb25lIHBha2lldHkuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zY2FucGFja2FnZXMuMTo5MQorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPC1wPiwgQjwtLXBpZGZpbGU+IEk8cGlkLWZpbGU+IgorbXNnaWQgIkI8LU0+LCBCPC0tbWVkaXVtPiBJPGlkLXN0cmluZz4iCittc2dzdHIgIkI8LXA+LCBCPC0tcGlkZmlsZT4gSTxwaWQtZmlsZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6OTYKK21zZ2lkICIiCisiQWRkIGFuIFgtTWVkaXVtIGZpZWxkIGNvbnRhaW5pbmcgdGhlIHZhbHVlIEk8aWQtc3RyaW5nPi4gVGhpcyBmaWVsZCBpcyAiCisicmVxdWlyZWQgaWYgeW91IHdhbnQgdG8gZ2VuZXJhdGUgQjxQYWNrYWdlcy5jZD4gZmlsZXMgZm9yIHVzZSBieSB0aGUgbXVsdGljZCAiCisiYWNjZXNzIG1ldGhvZCBvZiBkc2VsZWN0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1zY2FucGFja2FnZXMuMToxMDMgdXBkYXRlLWFsdGVybmF0aXZlcy44OjQ0OAorIywgbm8td3JhcAorbXNnaWQgIkRJQUdOT1NUSUNTIgorbXNnc3RyICJESUFHTk9TVFlLQSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2FucGFja2FnZXMuMToxMDkKK21zZ2lkICIiCisiQjxkcGtnLXNjYW5wYWNrYWdlcz4gb3V0cHV0cyB0aGUgdXN1YWwgc2VsZi1leHBsYW5hdG9yeSBlcnJvcnMuIEl0IGFsc28gIgorIndhcm5zIGFib3V0IHBhY2thZ2VzIHRoYXQgYXJlIGluIHRoZSB3cm9uZyBzdWJkaXJlY3RvcnksIGFyZSBkdXBsaWNhdGVkLCAiCisiaGF2ZSBhIEZpbGVuYW1lIGZpZWxkIGluIHRoZWlyIGNvbnRyb2wgZmlsZSwgYXJlIG1pc3NpbmcgZnJvbSB0aGUgb3ZlcnJpZGUgIgorImZpbGUsIG9yIGhhdmUgbWFpbnRhaW5lciBzdWJzdGl0dXRpb25zIHdoaWNoIGRvIG5vdCB0YWtlIGVmZmVjdC4iCittc2dzdHIgIiIKKyJCPGRwa2ctc2NhbnBhY2thZ2VzPiB3ecWbd2lldGxhIHp3eWvFgmUsIHNhbW93eWphxZtuaWFqxIVjZSBzacSZIGtvbXVuaWthdHkgIgorImLFgsSZZMOzdy4gV3lwaXN1amUgdGFrxbxlIG9zdHJ6ZcW8ZW5pYSBvIHBha2lldGFjaCwga3TDs3JlOiBzxIUgdW1pZWpzY293aW9uZSB3ICIKKyJuaWVwb3ByYXdueWNoIHBvZGthdGFsb2dhY2gsIHpkdXBsaWtvd2FuZSwgbWFqxIUgdyBzd29pbSBwbGlrdSBrb250cm9sbnltICIKKyJwb2xlIEZpbGVuYW1lLCBuaWUgc8SFIHd5bWllbmlvbmUgdyBwbGlrdSBuYWRwaXNhxYQgbHViIG1hasSFIHpkZWZpbmlvd2FuZSAiCisicG9kc3Rhd2llbmlhIG9waWVrdW7Ds3cgbmllIHByenlub3N6xIVjZSBlZmVrdHUuIgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjExNQorbXNnaWQgIiIKKyJCPGRwa2c+KDEpLCBCPGRzZWxlY3Q+KDEpLCBCPGRlYi1vdmVycmlkZT4oNSksIEI8ZGViLWV4dHJhLW92ZXJyaWRlPig1KSwgIgorIkI8ZHBrZy1zY2Fuc291cmNlcz4oMSkuIgorbXNnc3RyICIiCisiQjxkcGtnPigxKSwgQjxkc2VsZWN0PigxKSwgQjxkZWItb3ZlcnJpZGU+KDUpLCBCPGRlYi1leHRyYS1vdmVycmlkZT4oNSksICIKKyJCPGRwa2ctc2NhbnNvdXJjZXM+KDEpLiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMToxCisjLCBuby13cmFwCittc2dpZCAiZHBrZy1zY2Fuc291cmNlcyIKK21zZ3N0ciAiZHBrZy1zY2Fuc291cmNlcyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2Fuc291cmNlcy4xOjQKK21zZ2lkICJkcGtnLXNjYW5zb3VyY2VzIC0gY3JlYXRlIFNvdXJjZXMgaW5kZXggZmlsZXMiCittc2dzdHIgImRwa2ctc2NhbnBhY2thZ2VzIC0gdHdvcnp5IHBsaWtpIGluZGVrc293ZSBTb3VyY2VzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6MTIKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIkI8ZHBrZy1zY2Fuc291cmNlcz4gW0k8b3B0aW9ucz5dIEk8YmluYXJ5LWRpcj4gW0k8b3ZlcnJpZGUtZmlsZT4gW0k8cGF0aC0iCisjfCAicHJlZml4Pl1dIEI8RTxndD4+IEk8U291cmNlcz4iCittc2dpZCAiIgorIkI8ZHBrZy1zY2Fuc291cmNlcz4gW0k8b3B0aW9uPi4uLl0gSTxiaW5hcnktZGlyPiBbSTxvdmVycmlkZS1maWxlPiBbSTxwYXRoLSIKKyJwcmVmaXg+XV0gQjxFPGd0Pj4gSTxTb3VyY2VzPiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1zY2Fuc291cmNlcz4gW0k8b3BjamU+XSBJPGthdGFsb2dfYmluYXJueT4gW0k8cGxpa19uYWRwaXNhxYQ+ICIKKyJbSTxwcmVmaWtzX8WbY2llxbxraT5dXSBCPEU8Z3Q+PiBJPFNvdXJjZXM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6MTcKK21zZ2lkICIiCisiQjxkcGtnLXNjYW5zb3VyY2VzPiBzY2FucyB0aGUgZ2l2ZW4gSTxiaW5hcnktZGlyPiBmb3IgSTwuZHNjPiBmaWxlcy4gIFRoZXNlICIKKyJhcmUgdXNlZCB0byBjcmVhdGUgYSBEZWJpYW4gc291cmNlIGluZGV4LCB3aGljaCBpcyBvdXRwdXQgdG8gc3Rkb3V0LiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1zY2Fuc291cmNlcz4gc2thbnVqZSBwb2RhbnkgSTxrYXRhbG9nX2JpbmFybnk+IHcgcG9zenVraXdhbml1IHBsaWvDs3cgIgorIkk8LmRzYz4sIHXFvHl3YW55Y2ggZG8gdXR3b3J6ZW5pYSBpbmRla3N1IMW6csOzZMWCb3d5Y2ggcGFraWV0w7N3IERlYmlhbmEsIGt0w7NyeSAiCisibmFzdMSZcG5pZSBqZXN0IHd5cGlzeXdhbnkgbmEgc3RhbmRhcmRvd2Ugd3lqxZtjaWUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6MjgKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlRoZSBJPG92ZXJyaWRlLWZpbGU+LCBpZiBnaXZlbiwgaXMgdXNlZCB0byBzZXQgcHJpb3JpdGllcyBpbiB0aGUgIgorI3wgInJlc3VsdGluZyBpbmRleCByZWNvcmRzIGFuZCB0byBvdmVycmlkZSB0aGUgbWFpbnRhaW5lciBmaWVsZCBnaXZlbiBpbiB0aGUgIgorI3wgIkk8LmRzYz4gZmlsZXMuIFNlZSBCPGRwa2ctc2NhbnBhY2thZ2VzPigxKSAgZm9yIHRoZSBmb3JtYXQgb2YgdGhpcyBmaWxlLiAiCisjfCAiXFxzLTFOQjpcXHMwIFNpbmNlIHRoZSBvdmVycmlkZSBmaWxlIGlzIGluZGV4ZWQgYnkgYmluYXJ5LCBub3Qgc291cmNlLCAiCisjfCAicGFja2FnZXMsIHRoZXJlJ3MgYSBiaXQgb2YgYSBwcm9ibGVtIGhlcmUuIFRoZSBjdXJyZW50IGltcGxlbWVudGF0aW9uICIKKyN8ICJ1c2VzIHRoZSBoaWdoZXN0IHByaW9yaXR5IG9mIGFsbCB0aGUgYmluYXJ5IHBhY2thZ2VzIHByb2R1Y2VkIGJ5IGEgSTwuIgorI3wgImRzYz4gZmlsZSBmb3IgdGhlIHByaW9yaXR5IG9mIHRoZSBzb3VyY2UgcGFja2FnZSwgYW5kIHRoZSBvdmVycmlkZSBlbnRyeSAiCisjfCAiZm9yIHRoZSBmaXJzdCBiaW5hcnkgcGFja2FnZSBsaXN0ZWQgaW4gdGhlIEk8LmRzYz4gZmlsZSB0byBtb2RpZnkgIgorI3wgIm1haW50YWluZXIgaW5mb3JtYXRpb24uIFRoaXMgbWlnaHQgY2hhbmdlLiIKK21zZ2lkICIiCisiVGhlIEk8b3ZlcnJpZGUtZmlsZT4sIGlmIGdpdmVuLCBpcyB1c2VkIHRvIHNldCBwcmlvcml0aWVzIGluIHRoZSByZXN1bHRpbmcgIgorImluZGV4IHJlY29yZHMgYW5kIHRvIG92ZXJyaWRlIHRoZSBtYWludGFpbmVyIGZpZWxkIGdpdmVuIGluIHRoZSBJPC5kc2M+ICIKKyJmaWxlcy4gVGhlIGZpbGUgY2FuIGJlIGNvbXByZXNzZWQuIFNlZSBCPGRlYi1vdmVycmlkZT4oNSkgIGZvciB0aGUgZm9ybWF0IG9mICIKKyJ0aGlzIGZpbGUuIFxccy0xTkI6XFxzMCBTaW5jZSB0aGUgb3ZlcnJpZGUgZmlsZSBpcyBpbmRleGVkIGJ5IGJpbmFyeSwgbm90ICIKKyJzb3VyY2UsIHBhY2thZ2VzLCB0aGVyZSdzIGEgYml0IG9mIGEgcHJvYmxlbSBoZXJlLiBUaGUgY3VycmVudCAiCisiaW1wbGVtZW50YXRpb24gdXNlcyB0aGUgaGlnaGVzdCBwcmlvcml0eSBvZiBhbGwgdGhlIGJpbmFyeSBwYWNrYWdlcyBwcm9kdWNlZCAiCisiYnkgYSBJPC5kc2M+IGZpbGUgZm9yIHRoZSBwcmlvcml0eSBvZiB0aGUgc291cmNlIHBhY2thZ2UsIGFuZCB0aGUgb3ZlcnJpZGUgIgorImVudHJ5IGZvciB0aGUgZmlyc3QgYmluYXJ5IHBhY2thZ2UgbGlzdGVkIGluIHRoZSBJPC5kc2M+IGZpbGUgdG8gbW9kaWZ5ICIKKyJtYWludGFpbmVyIGluZm9ybWF0aW9uLiBUaGlzIG1pZ2h0IGNoYW5nZS4iCittc2dzdHIgIiIKKyJJPFBsaWtfbmFkcGlzYcWEPiwgamXFm2xpIHpvc3RhxYIgcG9kYW55LCBqZXN0IHXFvHl3YW55IGRvIHVzdGF3aWVuaWEgIgorInByaW9yeXRldMOzdyB3IHd5asWbY2lvd3ltIGluZGVrc2llIG9yYXogZG8gbmFkcGlzYW5pYSBwb2xhIE1haW50YWluZXIgeiBwbGlrdSAiCisiSTwuZHNjPi4gRm9ybWF0IHRlZ28gcGxpa3UgbW/FvG5hIHpuYWxlxbrEhyB3IEI8ZHBrZy1zY2FucGFja2FnZXM+KDEpLiAiCisiXFxzLTFOb3RhYmVuZTpcXHMwIFd5c3TEmXB1amUgdHUgbWHFgnkgcHJvYmxlbSwgcG9uaWV3YcW8IHBsaWsgbmFkcGlzYcWEIGplc3QgIgorImluZGVrc293YW55IHBha2lldGFtaSBiaW5hcm55bWksIGEgbmllIMW6csOzZMWCb3d5bWkuIE9iZWNuYSBpbXBsZW1lbnRhY2phICIKKyJ1xbx5d2EgamFrbyBwcmlvcnl0ZXR1IHBha2lldHUgxbpyw7NkxYJvd2VnbyBuYWp3acSZa3N6ZWdvIHNwb8WbcsOzZCBwcmlvcnl0ZXTDs3cgIgorIndzenlzdGtpY2ggYmluYXJueWNoIHBha2lldMOzdyBnZW5lcm93YW55Y2ggeiBwbGlrdSBJPC5kc2M+LCBhIGRvICIKKyJ6bW9keWZpa293YW5pYSBpbmZvcm1hY2ppIG8gb3BpZWt1bmllIC0gbmFkcGlzYW5pYSBvcGlla3VuYSB6IHBpZXJ3c3plZ28gIgorInBha2lldHUgYmluYXJuZWdvIHd5bWllbmlvbmVnbyB3IHBsaWt1IEk8LmRzYz4uIE1vxbxlIHNpxJkgdG8gem1pZW5pxIcuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6MzIKK21zZ2lkICIiCisiVGhlIEk8cGF0aC1wcmVmaXg+LCBpZiBnaXZlbiwgaXMgcHJlcGVuZGVkIHRvIHRoZSBkaXJlY3RvcnkgZmllbGQgaW4gdGhlICIKKyJnZW5lcmF0ZWQgc291cmNlIGluZGV4LiBZb3UgZ2VuZXJhbGx5IHVzZSB0aGlzIHRvIG1ha2UgdGhlIGRpcmVjdG9yeSBmaWVsZHMgIgorImNvbnRhaW4gdGhlIHBhdGggZnJvbSB0aGUgdG9wIG9mIHRoZSBEZWJpYW4gYXJjaGl2ZSBoaWVyYXJjaHkuIgorbXNnc3RyICIiCisiSTxQcmVmaWtzX8WbY2llxbxraT4sIGplxZtsaSBwb2Rhbm8sIGplc3QgZG/FgsSFY3phbnkgbmEgcG9jesSFdGVrIHBvbGEgRGlyZWN0b3J5ICIKKyJ3IHd5Z2VuZXJvd2FueW0gaW5kZWtzaWUgxbpyw7NkxYJvd3ltLiBPZ8OzbG5pZSBqZXN0IHRvIHXFvHl3YW5lLCBhYnkgcG9sYSAiCisiRGlyZWN0b3J5IHphd2llcmHFgnkgxZtjaWXFvGvEmSBvZCBuYWp3ecW8c3plZ28gcG96aW9tdSBoaWVyYXJjaGlpIGFyY2hpd3VtICIKKyJEZWJpYW5hLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2Fuc291cmNlcy4xOjQzCittc2dpZCAiIgorIkI8Tm90ZTo+IElmIHlvdSB3YW50IHRvIGFjY2VzcyB0aGUgZ2VuZXJhdGVkIFNvdXJjZXMgZmlsZSB3aXRoIEI8YXB0Pig4KSAgIgorInlvdSB3aWxsIHByb2JhYmx5IG5lZWQgdG8gY29tcHJlc3MgdGhlIGZpbGUgd2l0aCBCPGd6aXA+KDEpICAoZ2VuZXJhdGluZyBhICIKKyJTb3VyY2VzLmd6IGZpbGUpLiBhcHQgaWdub3JlcyB1bmNvbXByZXNzZWQgU291cmNlcyBmaWxlcyBleGNlcHQgb24gbG9jYWwgIgorImFjY2VzcyAoaS5lLiAgQjxmaWxlOi8vPiBzb3VyY2VzKS4iCittc2dzdHIgIiIKKyJCPFV3YWdhPjogQWJ5IEI8YXB0Pig4KSBtb2fFgm8gdcW8ecSHIHd5Z2VuZXJvd2FuZWdvIHBsaWt1IFNvdXJjZXMsIG5hbGXFvHkgZ28gIgorInNrb21wcmVzb3dhxIcgcHJvZ3JhbWVtIEI8Z3ppcD4oMSkgKHR3b3J6xIVjIHBsaWsgU291cmNlcy5neikuIGFwdCBpZ25vcnVqZSAiCisibmllc2tvbXByZXNvd2FuZSBwbGlraSBTb3VyY2VzIHogd3lqxIV0a2llbSBsb2thbG5lZ28gZG9zdMSZcHUgKHRqLiAiCisicG9jaG9kesSFY2VnbyB6IEI8ZmlsZTovLz4pLiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMTo0NQorIywgbm8td3JhcAorbXNnaWQgIkI8LW4+LCBCPC0tbm8tc29ydD4iCittc2dzdHIgIkI8LW4+LCBCPC0tbm8tc29ydD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMTo0OAorbXNnaWQgIiIKKyJEb24ndCBzb3J0IHRoZSBpbmRleCByZWNvcmRzLiBOb3JtYWxseSB0aGV5IGFyZSBzb3J0ZWQgYnkgc291cmNlIHBhY2thZ2UgIgorIm5hbWUuIgorbXNnc3RyICIiCisiTmllIHNvcnR1amUgcmVrb3Jkw7N3IGluZGVrc3UuIE5vcm1hbG5pZSBzxIUgb25lIHBvc29ydG93YW5lIHBvIG5hendpZSBwYWtpZXR1ICIKKyLFunLDs2TFgm93ZWdvLiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMTo1NAorIywgbm8td3JhcAorbXNnaWQgIkI8LXM+LCBCPC0tc291cmNlLW92ZXJyaWRlPiBJPGZpbGU+IgorbXNnc3RyICJCPC1zPiwgQjwtLXNvdXJjZS1vdmVycmlkZT4gSTxwbGlrPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2Fuc291cmNlcy4xOjU4CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJVc2UgSTxmaWxlPiBhcyB0aGUgc291cmNlIG92ZXJyaWRlIGZpbGUuIFRoZSBkZWZhdWx0IGlzIHRoZSBuYW1lIG9mIHRoZSAiCisjfCAib3ZlcnJpZGUgZmlsZSB5b3Ugc3BlY2lmaWVkIHdpdGggSTwuc3JjPiBhcHBlbmRlZC4iCittc2dpZCAiIgorIlVzZSBJPGZpbGU+IGFzIHRoZSBzb3VyY2Ugb3ZlcnJpZGUgZmlsZSAodGhlIGZpbGUgY2FuIGJlIGNvbXByZXNzZWQpLiAgVGhlICIKKyJkZWZhdWx0IGlzIHRoZSBuYW1lIG9mIHRoZSBvdmVycmlkZSBmaWxlIHlvdSBzcGVjaWZpZWQgd2l0aCBJPC5zcmM+IGFwcGVuZGVkLiIKK21zZ3N0ciAiIgorIlXFvHl3YSBJPHBsaWt1PiBqYWtvIHBsaWt1IG5hZHBpc2HFhCDFunLDs2RlxYIuIERvbXnFm2xuaWUgamVzdCB0byBwb2RhbmEgbmF6d2EgIgorInBsaWt1IG5hZHBpc2HFhCB6IGRvxYLEhWN6b255bSByb3pzemVyemVuaWVtIEk8LnNyYz4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6NjQKK21zZ2lkICIiCisiVGhlIHNvdXJjZSBvdmVycmlkZSBmaWxlIGlzIGluIGEgZGlmZmVyZW50IGZvcm1hdCBmcm9tIHRoZSBiaW5hcnkgb3ZlcnJpZGUgIgorImZpbGUuIEl0IGNvbnRhaW5zIG9ubHkgdHdvIHdoaXRlc3BhY2Ugc2VwYXJhdGVkIGZpZWxkcywgdGhlIGZpcnN0IGlzIHRoZSAiCisic291cmNlIHBhY2thZ2UgbmFtZSBhbmQgdGhlIHNlY29uZCBpcyB0aGUgc2VjdGlvbi4gQmxhbmsgbGluZXMgYW5kIGNvbW1lbnQgIgorImxpbmVzIGFyZSBpZ25vcmVkIGluIHRoZSBub3JtYWwgbWFubmVyLiBJZiBhIHBhY2thZ2UgYXBwZWFycyBpbiBib3RoIGZpbGVzICIKKyJ0aGUgc291cmNlIG92ZXJyaWRlIHRha2VzIHByZWNlZGVuY2UgZm9yIHNldHRpbmcgdGhlIHNlY3Rpb24uIgorbXNnc3RyICIiCisiRm9ybWF0IHBsaWsgbmFkcGlzYcWEIMW6csOzZGXFgiByw7PFvG5pIHNpxJkgb2QgZm9ybWF0dSBuYWRwaXNhxYQgcGFraWV0w7N3ICIKKyJiaW5hcm55Y2guIFphd2llcmEgdHlsa28gZHdhIHBvbGEgb2RkemllbG9uZSBvZCBzaWViaWUgYmlhxYJ5bWkgem5ha2FtaTogIgorInBpZXJ3c3p5bSBqZXN0IG5hendhIHBha2lldHUsIGEgZHJ1Z2ltIC0gc2VrY2phLiBMaW5pZSBwdXN0ZSBvcmF6IGxpbmllICIKKyJrb21lbnRhcnphIHPEhSBpZ25vcm93YW5lLiBKZcWbbGkgcGFraWV0IHBvamF3aWEgc2nEmSB3IG9idSBwbGlrYWNoLCB0byBwb2RjemFzICIKKyJ1c3Rhd2lhbmlhIHNla2NqaSBuYWRwaXNhbmllIMW6csOzZGXFgiBtYSB3acSZa3N6eSBwcmlvcnl0ZXQuIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1zY2Fuc291cmNlcy4xOjY0CisjLCBuby13cmFwCittc2dpZCAiQjwtLWRlYnVnPiIKK21zZ3N0ciAiQjwtLWRlYnVnPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2Fuc291cmNlcy4xOjY2Cittc2dpZCAiVHVybiBkZWJ1Z2dpbmcgb24uIgorbXNnc3RyICJXxYLEhWN6YSB0cnliIGRlYnVnb3dhbmlhLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2Fuc291cmNlcy4xOjc1Cittc2dpZCAiQjxkZWItb3ZlcnJpZGU+KDUpLCBCPGRlYi1leHRyYS1vdmVycmlkZT4oNSksIEI8ZHBrZy1zY2FucGFja2FnZXM+KDEpLiIKK21zZ3N0ciAiQjxkZWItb3ZlcnJpZGU+KDUpLCBCPGRlYi1leHRyYS1vdmVycmlkZT4oNSksIEI8ZHBrZy1zY2FucGFja2FnZXM+KDEpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2Fuc291cmNlcy4xOjc3Cittc2dpZCAiUm9kZXJpY2sgU2NoZXJ0bGVyIEU8bHQ+cm9kZXJpY2tAYXJnb24ub3JnRTxndD4iCittc2dzdHIgIlJvZGVyaWNrIFNjaGVydGxlciBFPGx0PnJvZGVyaWNrQGFyZ29uLm9yZ0U8Z3Q+IgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1zaGxpYmRlcHMuMToxCisjLCBuby13cmFwCittc2dpZCAiZHBrZy1zaGxpYmRlcHMiCittc2dzdHIgImRwa2ctc2hsaWJkZXBzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjQKK21zZ2lkICJkcGtnLXNobGliZGVwcyAtIGdlbmVyYXRlIHNoYXJlZCBsaWJyYXJ5IHN1YnN0dmFyIGRlcGVuZGVuY2llcyIKK21zZ3N0ciAiIgorImRwa2ctc2hsaWJkZXBzIC0gZ2VuZXJvd2FuaWUgemFsZcW8bm/Fm2NpIHBvZHN0YXdpZcWEIHdzcMOzxYJkemllbG9ueWNoIGJpYmxpb3RlayIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTo4CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJCPGRwa2ctc2hsaWJkZXBzPiBbSTxvcHRpb25zPl0gSTxleGVjdXRhYmxlPnxCPC1lPkk8ZXhlY3V0YWJsZT4gIgorI3wgIltJPG9wdGlvbnM+XSIKK21zZ2lkICJCPGRwa2ctc2hsaWJkZXBzPiBbSTxvcHRpb24+Li4uXSBbQjwtZT5dSTxleGVjdXRhYmxlPiBbSTxvcHRpb24+Li4uXSIKK21zZ3N0ciAiIgorIkI8ZHBrZy1zaGxpYmRlcHM+IFtJPG9wY2plPl0gSTxwbGlrX3d5a29ueXdhbG55PnxCPC1lPkk8cGxpa193eWtvbnl3YWxueT4gIgorIltJPG9wY2plPl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjIKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIkI8ZHBrZy1zaGxpYmRlcHM+IGNhbGN1bGF0ZXMgc2hhcmVkIGxpYnJhcnkgZGVwZW5kZW5jaWVzIGZvciBleGVjdXRhYmxlcyAiCisjfCAibmFtZWQgaW4gaXRzIGFyZ3VtZW50cy4gVGhlIGRlcGVuZGVuY2llcyBhcmUgYWRkZWQgdG8gdGhlIHN1YnN0aXR1dGlvbiAiCisjfCAidmFyaWFibGVzIGZpbGUgQjxkZWJpYW4vc3Vic3R2YXJzPiBhcyB2YXJpYWJsZSBuYW1lcyBCPHNobGliczoiCisjfCAiPkk8ZGVwZW5kZW5jeWZpZWxkPiB3aGVyZSBJPGRlcGVuZGVuY3lmaWVsZD4gaXMgYSBkZXBlbmRlbmN5IGZpZWxkIG5hbWUuICIKKyN8ICJBbnkgb3RoZXIgdmFyaWFibGVzIHN0YXJ0aW5nIEk8c2hsaWJzOj4gYXJlIHJlbW92ZWQgZnJvbSB0aGUgZmlsZS4iCittc2dpZCAiIgorIkI8ZHBrZy1zaGxpYmRlcHM+IGNhbGN1bGF0ZXMgc2hhcmVkIGxpYnJhcnkgZGVwZW5kZW5jaWVzIGZvciBleGVjdXRhYmxlcyAiCisibmFtZWQgaW4gaXRzIGFyZ3VtZW50cy4gVGhlIGRlcGVuZGVuY2llcyBhcmUgYWRkZWQgdG8gdGhlIHN1YnN0aXR1dGlvbiAiCisidmFyaWFibGVzIGZpbGUgQjxkZWJpYW4vc3Vic3R2YXJzPiBhcyB2YXJpYWJsZSBuYW1lcyBCPHNobGliczoiCisiPkk8ZGVwZW5kZW5jeWZpZWxkPiB3aGVyZSBJPGRlcGVuZGVuY3lmaWVsZD4gaXMgYSBkZXBlbmRlbmN5IGZpZWxkIG5hbWUuIEFueSAiCisib3RoZXIgdmFyaWFibGVzIHN0YXJ0aW5nIHdpdGggQjxzaGxpYnM6PiBhcmUgcmVtb3ZlZCBmcm9tIHRoZSBmaWxlLiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1zaGxpYmRlcHM+IG9rcmXFm2xhIHphbGXFvG5vxZtjaSBwb2RzdGF3aWXFhCB3c3DDs8WCZHppZWxvbnljaCBiaWJsaW90ZWsgIgorImRsYSBwbGlrw7N3IHd5a29ueXdhbG55Y2ggcG9kYW55Y2ggamFrbyBhcmd1bWVudHkuIFphbGXFvG5vxZtjaSB0ZSBzxIUgZG9kYXdhbmUgIgorImRvIHBsaWt1IHBvZHN0YXdpZcWEIHptaWVubnljaCBCPGRlYmlhbi9zdWJzdHZhcnM+IGpha28gem1pZW5uZSBCPHNobGliczoiCisiPkk8cG9sZS16YWxlxbxub8WbY2k+LCBwcnp5IGN6eW0gSTxwb2xlLXphbGXFvG5vxZtjaT4gamVzdCBuYXp3xIUgb2Rwb3dpZWRuaWVnbyAiCisicG9sYSB6YWxlxbxub8WbY2kuIFdzenlzdGtpZSBpbm5lIHptaWVubmUgcm96cG9jenluYWrEhWNlIHNpxJkgb2QgSTxzaGxpYnM6PiBzxIUgIgorInVzdXdhbmUgeiB0ZWdvIHBsaWt1LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTo0NQorbXNnaWQgIiIKKyJCPGRwa2ctc2hsaWJkZXBzPiBoYXMgdHdvIHBvc3NpYmxlIHNvdXJjZXMgb2YgaW5mb3JtYXRpb24gdG8gZ2VuZXJhdGUgIgorImRlcGVuZGVuY3kgaW5mb3JtYXRpb24uIEVpdGhlciBJPHN5bWJvbHM+IGZpbGVzIG9yIEk8c2hsaWJzPiBmaWxlcy4gRm9yIGVhY2ggIgorImJpbmFyeSB0aGF0IEI8ZHBrZy1zaGxpYmRlcHM+IGFuYWx5emVzLCBpdCBmaW5kcyBvdXQgdGhlIGxpc3Qgb2YgbGlicmFyaWVzICIKKyJ0aGF0IGl0J3MgbGlua2VkIHdpdGguICBUaGVuLCBmb3IgZWFjaCBsaWJyYXJ5LCBpdCBsb29rcyB1cCBlaXRoZXIgdGhlICIKKyJJPHN5bWJvbHM+IGZpbGUsIG9yIHRoZSBJPHNobGlicz4gZmlsZSAoaWYgdGhlIGZvcm1lciBkb2Vzbid0IGV4aXN0IG9yIGlmICIKKyJkZWJpYW4vc2hsaWJzLmxvY2FsIGNvbnRhaW5zIHRoZSByZWxldmFudCBkZXBlbmRlbmN5KS4gQm90aCBmaWxlcyBhcmUgIgorInN1cHBvc2VkIHRvIGJlIHByb3ZpZGVkIGJ5IHRoZSBsaWJyYXJ5IHBhY2thZ2UgYW5kIHNob3VsZCB0aHVzIGJlIGF2YWlsYWJsZSAiCisiYXMgL3Zhci9saWIvZHBrZy9pbmZvL0k8cGFja2FnZT4uSTxzeW1ib2xzPiBvciAvdmFyL2xpYi9kcGtnL2luZm8vSTxwYWNrYWdlPi4iCisiSTxzaGxpYnM+LiBUaGUgcGFja2FnZSBuYW1lIGlzIGlkZW50aWZpZWQgaW4gdHdvIHN0ZXBzOiBmaW5kIHRoZSBsaWJyYXJ5ICIKKyJmaWxlIG9uIHRoZSBzeXN0ZW0gKGxvb2tpbmcgaW4gdGhlIHNhbWUgZGlyZWN0b3JpZXMgdGhhdCBCPGxkLnNvPiB3b3VsZCAiCisidXNlKSwgdGhlbiB1c2UgQjxkcGtnIC1TID5JPGxpYnJhcnktZmlsZT4gdG8gbG9va3VwIHRoZSBwYWNrYWdlIHByb3ZpZGluZyAiCisidGhlIGxpYnJhcnkuIgorbXNnc3RyICIiCisiQjxkcGtnLXNobGliZGVwcz4gbWEgZHdhIMW6csOzZMWCYSBpbmZvcm1hY2ppIHPFgnXFvMSFY2UgZG8gZ2VuZXJvd2FuaWEgaW5mb3JtYWNqaSAiCisibyB6YWxlxbxub8WbY2lhY2guIFPEhSB0byBwbGlraSBJPHN5bWJvbHM+IGx1YiBwbGlraSBJPHNobGlicz4uIERsYSBrYcW8ZGVnbyAiCisicGxpa3UgYmluYXJuZWdvIGFuYWxpem93YW5lZ28gcHJ6ZXogQjxkcGtnLXNobGliZGVwcz4gb2tyZcWbbGFuYSBqZXN0IGxpc3RhICIKKyJiaWJsaW90ZWssIHoga3TDs3J5bWkgamVzdCBvbiBsaW5rb3dhbnkuIE5hc3TEmXBuaWUgZGxhIGthxbxkZWogYmlibGlvdGVraSAiCisicHJ6ZWdsxIVkYW55IGplc3QgcGxpayBJPHN5bWJvbHM+IGx1YiBwbGlrIEk8c2hsaWJzPiAoamXFm2xpIHRlbiBwaWVyd3N6eSBuaWUgIgorImlzdG5pZWplLCBsdWIgZ2R5IGRlYmlhbi9zaGxpYnMubG9jYWwgemF3aWVyYSBzdG9zb3duxIUgemFsZcW8bm/Fm8SHKS4gT2JhIHBsaWtpICIKKyJwb3dpbm55IGJ5xIcgZG9zdGFyY3phbmUgcHJ6ZXogcGFraWV0IHphd2llcmFqxIVjeSBiaWJsaW90ZWvEmSBpIHBvd2lubnkgd2nEmWMgIgorImJ5xIcgZG9zdMSZcG5lIGpha28gL3Zhci9saWIvZHBrZy9pbmZvL0k8cGFraWV0Pi5JPHN5bWJvbHM+IGx1YiAvdmFyL2xpYi9kcGtnLyIKKyJpbmZvL0k8cGFraWV0Pi5JPHNobGlicz4uIE5hendhIHBha2lldHUgamVzdCBva3JlxZtsYW5hIHcgZHfDs2NoIGtyb2thY2g6ICIKKyJvZG5hbGV6aWVuaWUgcGxpa3UgYmlibGlvdGVraSB3IHN5c3RlbWllIChzcHJhd2R6YWrEhWMgdyB0eWNoIHNhbXljaCAiCisia2F0YWxvZ2FjaCwga3TDs3J5Y2ggdcW8eXdhIEI8bGQuc28+KSwgYSBuYXN0xJlwbmllIHXFvHljaWUgQjxkcGtnIC1TID5JPHBsaWstIgorImJpYmxpb3Rla2k+IHcgY2VsdSBva3JlxZtsZW5pYSBwYWtpZXR1IGRvc3RhcmN6YWrEhWNlZ28gZGFuxIUgYmlibGlvdGVrxJkuIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zaGxpYmRlcHMuMTo0NQorIywgbm8td3JhcAorbXNnaWQgIlN5bWJvbHMgZmlsZXMiCittc2dzdHIgIlBsaWtpIHN5bWJvbGkiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6NTAKK21zZ2lkICIiCisiU3ltYm9scyBmaWxlcyBjb250YWluIGZpbmVyLWdyYWluZWQgZGVwZW5kZW5jeSBpbmZvcm1hdGlvbiBieSBwcm92aWRpbmcgdGhlICIKKyJtaW5pbXVtIGRlcGVuZGVuY3kgZm9yIGVhY2ggc3ltYm9sIHRoYXQgdGhlIGxpYnJhcnkgZXhwb3J0cy4gVGhlIHNjcmlwdCAiCisidHJpZXMgdG8gZmluZCBhIHN5bWJvbHMgZmlsZSBhc3NvY2lhdGVkIHRvIGEgbGlicmFyeSBwYWNrYWdlIGluIHRoZSAiCisiZm9sbG93aW5nIHBsYWNlcyAoZmlyc3QgbWF0Y2ggaXMgdXNlZCk6IgorbXNnc3RyICIiCisiUGxpa2kgc3ltYm9saSB6YXdpZXJhasSFIGRva8WCYWRuaWVqc3plIG9rcmXFm2xlbmlhIGluZm9ybWFjamkgbyB6YWxlxbxub8WbY2lhY2gsICIKKyJkb3N0YXJjemFqxIVjIG1pbmltdW0gemFsZcW8bm/Fm2NpIGRsYSBrYcW8ZGVnbyBzeW1ib2x1IGVrc3BvcnRvd2FuZWdvIHByemV6ICIKKyJiaWJsaW90ZWvEmS4gU2tyeXB0IHByw7NidWplIG9kbmFsZcW6xIcgcGxpayB6d2nEhXphbnkgeiBwYWtpZXRlbSBiaWJsaW90ZWtpIHcgIgorIm5hc3TEmXB1asSFY3ljaCBtaWVqc2NhY2ggKHXFvHl0ZSBqZXN0IHBpZXJ3c3plIGRvcGFzb3dhbmllKToiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLXNobGliZGVwcy4xOjUwCisjLCBuby13cmFwCittc2dpZCAiZGViaWFuLyovREVCSUFOL3N5bWJvbHMiCittc2dzdHIgImRlYmlhbi8qL0RFQklBTi9zeW1ib2xzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjU4Cittc2dpZCAiIgorIlNoYXJlZCBsaWJyYXJ5IGluZm9ybWF0aW9uIGdlbmVyYXRlZCBieSB0aGUgY3VycmVudCBidWlsZCBwcm9jZXNzIHRoYXQgYWxzbyAiCisiaW52b2tlZCBCPGRwa2ctc2hsaWJkZXBzPi4gIFRoZXkgYXJlIGdlbmVyYXRlZCBieSBCPGRwa2ctZ2Vuc3ltYm9scz4oMSkuICAiCisiVGhleSBhcmUgb25seSB1c2VkIGlmIHRoZSBsaWJyYXJ5IGlzIGZvdW5kIGluIGEgcGFja2FnZSdzIGJ1aWxkIHRyZWUuIFRoZSAiCisic3ltYm9scyBmaWxlIGluIHRoYXQgYnVpbGQgdHJlZSB0YWtlcyBwcmVjZWRlbmNlIG92ZXIgc3ltYm9scyBmaWxlcyBmcm9tICIKKyJvdGhlciBiaW5hcnkgcGFja2FnZXMuIgorbXNnc3RyICIiCisiSW5mb3JtYWNqZSBvIHdzcMOzxYJkemllbG9uZWogYmlibGlvdGVjZSB3eWdlbmVyb3dhbmUgdyBiaWXFvMSFY3ltIHByb2Nlc2llICIKKyJidWRvd3ksIGt0w7NyeSB3eXdvxYJhxYIgcsOzd25pZcW8IEI8ZHBrZy1zaGxpYmRlcHM+LiBTxIUgb25lIGdlbmVyb3dhbmUgcHJ6ZXogIgorIkI8ZHBrZy1nZW5zeW1ib2xzPigxKS4gU8SFIHXFvHl3YW5lIHR5bGtvLCBnZHkgYmlibGlvdGVrYSB6bmFqZHVqZSBzacSZIHcgIgorImRyemV3aWUgYnVkb3dhbmlhIHBha2lldHUuIFBsaWsgXCJzeW1ib2xzXCIgeiB0ZWdvIGRyemV3YSBtYSBwaWVyd3N6ZcWEc3R3byAiCisibmFkIHBsaWthbWkgc3ltYm9saSB6IGlubnljaCBwYWtpZXTDs3cgYmluYXJueWNoLiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6NTgKKyMsIG5vLXdyYXAKK21zZ2lkICIvZXRjL2Rwa2cvc3ltYm9scy9JPHBhY2thZ2U+LnN5bWJvbHMuSTxhcmNoPiIKK21zZ3N0ciAiL2V0Yy9kcGtnL3N5bWJvbHMvSTxwYWtpZXQ+LnN5bWJvbHMuSTxhcmNoPiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6NTkKKyMsIG5vLXdyYXAKK21zZ2lkICIvZXRjL2Rwa2cvc3ltYm9scy9JPHBhY2thZ2U+LnN5bWJvbHMiCittc2dzdHIgIi9ldGMvZHBrZy9zeW1ib2xzL0k8cGFraWV0Pi5zeW1ib2xzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjYzCittc2dpZCAiIgorIlBlci1zeXN0ZW0gb3ZlcnJpZGluZyBzaGFyZWQgbGlicmFyeSBkZXBlbmRlbmN5IGluZm9ybWF0aW9uLiAgSTxhcmNoPiBpcyB0aGUgIgorImFyY2hpdGVjdHVyZSBvZiB0aGUgY3VycmVudCBzeXN0ZW0gKG9idGFpbmVkIGJ5IEI8ZHBrZy1hcmNoaXRlY3R1cmUgLSIKKyJxREVCX0hPU1RfQVJDSD4pLiIKK21zZ3N0ciAiIgorIkluZm9ybWFjamUgbyB6YXNpxJlndSBzeXN0ZW11LCBrdMOzcmUgbmFkcGlzdWrEhSBpbmZvcm1hY2plIG8gemFsZcW8bm/Fm2NpYWNoICIKKyJiaWJsaW90ZWsgd3Nww7PFgmR6aWVsb255Y2guIEk8YXJjaD4gamVzdCBhcmNoaXRla3R1csSFIGJpZcW8xIVjZWdvIHN5c3RlbXUgIgorIihva3JlxZtsb27EhSBwcnpleiBCPGRwa2ctYXJjaGl0ZWN0dXJlIC1xREVCX0hPU1RfQVJDSD4pLiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6NjMKKyMsIG5vLXdyYXAKK21zZ2lkICJPdXRwdXQgZnJvbSBcXChscUI8ZHBrZy1xdWVyeSAtLWNvbnRyb2wtcGF0aD4gSTxwYWNrYWdlPiBzeW1ib2xzXFwocnEiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTo2NiBkcGtnLXNobGliZGVwcy4xOjEwMAorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiUGFja2FnZS1wcm92aWRlZCBzaGFyZWQgbGlicmFyeSBkZXBlbmRlbmN5IGluZm9ybWF0aW9uLiAgVW5sZXNzICIKKyN8ICJvdmVycmlkZGVuLCBJPGFkbWluZGlyPiBpcyAvdmFyL2xpYi9kcGtnLiIKK21zZ2lkICIiCisiUGFja2FnZS1wcm92aWRlZCBzaGFyZWQgbGlicmFyeSBkZXBlbmRlbmN5IGluZm9ybWF0aW9uLiAgVW5sZXNzIG92ZXJyaWRkZW4gIgorImJ5IC0tYWRtaW5kaXIsIHRob3NlIGZpbGVzIGFyZSBsb2NhdGVkIGluIC92YXIvbGliL2Rwa2cuIgorbXNnc3RyICIiCisiRG9zdGFyY3phbmUgcHJ6ZXogcGFraWV0IGluZm9ybWFjamUgbyB6YWxlxbxub8WbY2lhY2ggYmlibGlvdGVrICIKKyJ3c3DDs8WCZHppZWxvbnljaC4gTyBpbGUgbmllIGplc3QgbmFkcGlzYW55LCBJPGFkbWluZGlyPiBtYSB3YXJ0b8WbxIcgL3Zhci9saWIvIgorImRwa2cuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjczCittc2dpZCAiIgorIldoaWxlIHNjYW5uaW5nIHRoZSBzeW1ib2xzIHVzZWQgYnkgYWxsIGJpbmFyaWVzLCBCPGRwa2ctc2hsaWJkZXBzPiByZW1lbWJlcnMgIgorInRoZSAoYmlnZ2VzdCkgbWluaW1hbCB2ZXJzaW9uIG5lZWRlZCBmb3IgZWFjaCBsaWJyYXJ5LiBBdCB0aGUgZW5kIG9mIHRoZSAiCisicHJvY2VzcywgaXQgaXMgYWJsZSB0byB3cml0ZSBvdXQgdGhlIG1pbmltYWwgZGVwZW5kZW5jeSBmb3IgZXZlcnkgbGlicmFyeSAiCisidXNlZCAocHJvdmlkZWQgdGhhdCB0aGUgaW5mb3JtYXRpb24gb2YgdGhlIEk8c3ltYm9scz4gZmlsZXMgYXJlIGFjY3VyYXRlKS4iCittc2dzdHIgIiIKKyJQb2RjemFzIHByemVzenVraXdhbmlhIHN5bWJvbGkgdcW8eXdhbnljaCBwcnpleiB3c3p5c3RraWUgcGxpa2kgYmluYXJuZSwgIgorIkI8ZHBrZy1zaGxpYmRlcHM+IHphcGFtacSZdHVqZSAobmFqd2nEmWtzesSFKSBtaW5pbWFsbsSFIHdlcnNqxJkgd3ltYWdhbsSFIGRsYSAiCisia2HFvGRlaiBiaWJsaW90ZWtpLiBOYSBrb8WEY3UgcHJvY2VzdSBqZXN0IHdpxJljIHcgc3RhbmllIHd5cGlzYcSHIG1pbmltYWxuZSAiCisiemFsZcW8bm/Fm2NpIGRsYSBrYcW8ZGVqIHXFvHl0ZWogYmlibGlvdGVraSAocG9kIHdhcnVua2llbSwgxbxlIGluZm9ybWFjamEgeiAiCisicGxpa8OzdyBJPHN5bWJvbHM+IGplc3QgZG9rxYJhZG5hKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6ODAKK21zZ2lkICIiCisiQXMgYSBzYWZlLWd1YXJkIG1lYXN1cmUsIGEgc3ltYm9scyBmaWxlIGNhbiBwcm92aWRlIGEgSTxCdWlsZC1EZXBlbmRzLSIKKyJQYWNrYWdlPiBtZXRhLWluZm9ybWF0aW9uIGZpZWxkIGFuZCBCPGRwa2ctc2hsaWJkZXBzPiB3aWxsIGV4dHJhY3QgdGhlICIKKyJtaW5pbWFsIHZlcnNpb24gcmVxdWlyZWQgYnkgdGhlIGNvcnJlc3BvbmRpbmcgcGFja2FnZSBpbiB0aGUgQnVpbGQtRGVwZW5kcyAiCisiZmllbGQgYW5kIHVzZSB0aGlzIHZlcnNpb24gaWYgaXQncyBoaWdoZXIgdGhhbiB0aGUgbWluaW1hbCB2ZXJzaW9uIGNvbXB1dGVkICIKKyJieSBzY2FubmluZyBzeW1ib2xzLiIKK21zZ3N0ciAiIgorIkpha28gemFiZXpwaWVjemVuaWUgcGxpayBzeW1ib2xpIG1vxbxlIHphd2llcmHEhyBwb2xlIG1ldGFpbmZvcm1hY2ppIEk8QnVpbGQtIgorIkRlcGVuZHMtUGFja2FnZT4sIHphxZsgQjxkcGtnLXNobGliZGVwcz4gb2tyZcWbbGFqxIVjIG1pbmltYWxuxIUgd2Vyc2rEmSB3eW1hZ2FuxIUgIgorInByemV6IG9kcG93aWFkYWrEhWN5IHBha2lldCB6IHBvbGEgQnVpbGQtRGVwZW5kcyBixJlkemllIHXFvHl3YcSHIHfFgmHFm25pZSB0ZWogIgorIndlcnNqaSwgamXFm2xpIGplc3Qgb25hIHd5xbxzemEgbmnFvCBtaW5pbWFsbmEgd2Vyc2phIG9rcmXFm2xvbmEgZHppxJlraSAiCisicHJ6ZXN6dWtpd2FuaXUgc3ltYm9saS4iCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNobGliZGVwcy4xOjgwCisjLCBuby13cmFwCittc2dpZCAiU2hsaWJzIGZpbGVzIgorbXNnc3RyICJQbGlraSBcInNobGlic1wiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjg0Cittc2dpZCAiIgorIlNobGlicyBmaWxlcyBhc3NvY2lhdGUgZGlyZWN0bHkgYSBsaWJyYXJ5IHRvIGEgZGVwZW5kZW5jeSAod2l0aG91dCBsb29raW5nICIKKyJhdCB0aGUgc3ltYm9scykuIEl0J3MgdGh1cyBvZnRlbiBzdHJvbmdlciB0aGFuIHJlYWxseSBuZWVkZWQgYnV0IHZlcnkgc2FmZSAiCisiYW5kIGVhc3kgdG8gaGFuZGxlLiIKK21zZ3N0ciAiIgorIlBsaWtpIFwic2hsaWJzXCIgd2nEhcW8xIUgYmV6cG/Fm3JlZG5pbyBiaWJsaW90ZWvEmSB6IHphbGXFvG5vxZtjaWFtaSAoYmV6ICIKKyJwcnplZ2zEhWRhbmlhIHN5bWJvbGkpLiBKZXN0IHRvIHdpxJljIGN6xJlzdG8gc2lsbmllanN6ZSBuacW8IG5hcHJhd2TEmSAiCisicG90cnplYm5lLCBhbGUgYmFyZHpvIGJlenBpZWN6bmUgaSDFgmF0d2UgdyBvYnPFgnVkemUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjg3Cittc2dpZCAiIgorIlRoZSBkZXBlbmRlbmNpZXMgZm9yIGEgbGlicmFyeSBhcmUgbG9va2VkIHVwIGluIHNldmVyYWwgcGxhY2VzLiBUaGUgZmlyc3QgIgorImZpbGUgcHJvdmlkaW5nIGluZm9ybWF0aW9uIGZvciB0aGUgbGlicmFyeSBvZiBpbnRlcmVzdCBpcyB1c2VkOiIKK21zZ3N0ciAiIgorIlphbGXFvG5vxZtjaSBkbGEgYmlibGlvdGVraSBzxIUgd3lzenVraXdhbmUgdyBraWxrdSBtaWVqc2NhY2guIFXFvHl3YW55IGplc3QgIgorInBpZXJ3c3p5IHBsaWsgemF3aWVyYWrEhWN5IGluZm9ybWFjamUgZGxhIGRhbmVqIGJpYmxpb3Rla2k6IgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1zaGxpYmRlcHMuMTo4NworIywgbm8td3JhcAorbXNnaWQgImRlYmlhbi9zaGxpYnMubG9jYWwiCittc2dzdHIgImRlYmlhbi9zaGxpYnMubG9jYWwiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6ODkKK21zZ2lkICJQYWNrYWdlLWxvY2FsIG92ZXJyaWRpbmcgc2hhcmVkIGxpYnJhcnkgZGVwZW5kZW5jeSBpbmZvcm1hdGlvbi4iCittc2dzdHIgIiIKKyJMb2thbG5lIGluZm9ybWFjamUgeiBwYWtpZXR1IG5hZHBpc3VqxIVjZSBpbmZvcm1hY2plIG8gemFsZcW8bm/Fm2NpYWNoICIKKyJiaWJsaW90ZWsgd3Nww7PFgmR6aWVsb255Y2guIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1zaGxpYmRlcHMuMTo4OQorIywgbm8td3JhcAorbXNnaWQgIi9ldGMvZHBrZy9zaGxpYnMub3ZlcnJpZGUiCittc2dzdHIgIi9ldGMvZHBrZy9zaGxpYnMub3ZlcnJpZGUiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6OTEKK21zZ2lkICJQZXItc3lzdGVtIG92ZXJyaWRpbmcgc2hhcmVkIGxpYnJhcnkgZGVwZW5kZW5jeSBpbmZvcm1hdGlvbi4iCittc2dzdHIgIiIKKyJJbmZvcm1hY2plIG8gemFzacSZZ3Ugc3lzdGVtdSwga3TDs3JlIG5hZHBpc3VqxIUgaW5mb3JtYWNqZSBvIHphbGXFvG5vxZtjaWFjaCAiCisiYmlibGlvdGVrIHdzcMOzxYJkemllbG9ueWNoLiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6OTEKKyMsIG5vLXdyYXAKK21zZ2lkICJkZWJpYW4vKi9ERUJJQU4vc2hsaWJzIgorbXNnc3RyICJkZWJpYW4vKi9ERUJJQU4vc2hsaWJzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjk3Cittc2dpZCAiIgorIlNoYXJlZCBsaWJyYXJ5IGluZm9ybWF0aW9uIGdlbmVyYXRlZCBieSB0aGUgY3VycmVudCBidWlsZCBwcm9jZXNzIHRoYXQgYWxzbyAiCisiaW52b2tlZCBCPGRwa2ctc2hsaWJkZXBzPi4gIFRoZXkgYXJlIG9ubHkgdXNlZCBpZiB0aGUgbGlicmFyeSBpcyBmb3VuZCBpbiBhICIKKyJwYWNrYWdlJ3MgYnVpbGQgdHJlZS4gVGhlIHNobGlicyBmaWxlIGluIHRoYXQgYnVpbGQgdHJlZSB0YWtlcyBwcmVjZWRlbmNlICIKKyJvdmVyIHNobGlicyBmaWxlcyBmcm9tIG90aGVyIGJpbmFyeSBwYWNrYWdlcy4iCittc2dzdHIgIiIKKyJJbmZvcm1hY2plIG8gemFsZcW8bm/Fm2NpYWNoIHdzcMOzxYJkemllbG9ueWNoIGJpYmxpb3RlayB3eWdlbmVyb3dhbmUgdyBiaWXFvMSFY3ltICIKKyJwcm9jZXNpZSBidWRvd3ksIGt0w7NyeSB3eXdvxYJhxYIgcsOzd25pZcW8IEI8ZHBrZy1zaGxpYmRlcHM+LiBTxIUgdcW8eXdhbmUgdHlsa28sICIKKyJnZHkgYmlibGlvdGVrYSB6bmFqZHVqZSBzacSZIHcgZHJ6ZXdpZSBidWRvd2FuaWEgcGFraWV0dS4gUGxpayBcInNobGlic1wiIHogIgorInRlZ28gZHJ6ZXdhIG1hIHBpZXJ3c3plxYRzdHdvIG5hZCBwbGlrYW1pIHNobGlicyB6IGlubnljaCBwYWtpZXTDs3cgYmluYXJueWNoLiIKKyJcIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6OTcKKyMsIG5vLXdyYXAKK21zZ2lkICJPdXRwdXQgZnJvbSBcXChscUI8ZHBrZy1xdWVyeSAtLWNvbnRyb2wtcGF0aD4gSTxwYWNrYWdlPiBzaGxpYnNcXChycSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1zaGxpYmRlcHMuMToxMDAKKyMsIG5vLXdyYXAKK21zZ2lkICIvZXRjL2Rwa2cvc2hsaWJzLmRlZmF1bHQiCittc2dzdHIgIi9ldGMvZHBrZy9zaGxpYnMuZGVmYXVsdCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToxMDIKK21zZ2lkICJQZXItc3lzdGVtIGRlZmF1bHQgc2hhcmVkIGxpYnJhcnkgZGVwZW5kZW5jeSBpbmZvcm1hdGlvbi4iCittc2dzdHIgIiIKKyJEb215xZtsbmEgaW5mb3JtYWNqYSBvIHphbGXFvG5vxZtjaWFjaCBiaWJsaW90ZWsgd3Nww7PFgmR6aWVsb255Y2gsIG8gemFrcmVzaWUgIgorInN5c3RlbXUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjEwNgorbXNnaWQgIiIKKyJUaGUgZXh0cmFjdGVkIGRlcGVuZGVuY2llcyBhcmUgdGhlbiBkaXJlY3RseSB1c2VkIChleGNlcHQgaWYgdGhleSBhcmUgIgorImZpbHRlcmVkIG91dCBiZWNhdXNlIHRoZXkgaGF2ZSBiZWVuIGlkZW50aWZpZWQgYXMgZHVwbGljYXRlLCBvciBhcyB3ZWFrZXIgIgorInRoYW4gYW5vdGhlciBkZXBlbmRlbmN5KS4iCittc2dzdHIgIiIKKyJVenlza2FuZSB6YWxlxbxub8WbY2kgc8SFIHXFvHl3YW5lIGJlenBvxZtyZWRuaW8gKGNoeWJhLCDFvGUgc8SFIG9kZmlsdHJvd2FuZSAiCisicG9uaWV3YcW8IHpvc3RhxYJ5IHppZGVudHlmaWtvd2FuZSBqYWtvIGR1cGxpa2F0eSBsdWIgc8WCYWJzemUgbmnFvCBqYWthxZsgaW5uYSAiCisiemFsZcW8bm/Fm8SHKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTExCittc2dpZCAiIgorIkI8ZHBrZy1zaGxpYmRlcHM+IGludGVycHJldHMgbm9uLW9wdGlvbiBhcmd1bWVudHMgYXMgZXhlY3V0YWJsZSBuYW1lcywganVzdCAiCisiYXMgaWYgdGhleSdkIGJlZW4gc3VwcGxpZWQgYXMgQjwtZT5JPGV4ZWN1dGFibGU+LiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1zaGxpYmRlcHM+IGludGVycHJldHVqZSBwYXJhbWV0cnkgbmllIGLEmWTEhWNlIG9wY2phbWkgamFrbyBuYXp3eSAiCisicGxpa8OzdyB3eWtvbnl3YWxueWNoLCB0YWsgamFrYnkgYnnFgnkgcG9kYW5lIHByemV6IEI8LWU+STxwbGlrX3d5a29ueXdhbG55Pi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNobGliZGVwcy4xOjExMQorIywgbm8td3JhcAorbXNnaWQgIkI8LWU+STxleGVjdXRhYmxlPiIKK21zZ3N0ciAiQjwtZT5JPHBsaWtfd3lrb255d2Fsbnk+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjExNQorbXNnaWQgIiIKKyJJbmNsdWRlIGRlcGVuZGVuY2llcyBhcHByb3ByaWF0ZSBmb3IgdGhlIHNoYXJlZCBsaWJyYXJpZXMgcmVxdWlyZWQgYnkgIgorIkk8ZXhlY3V0YWJsZT4uIgorbXNnc3RyICIiCisiV8WCxIVjemVuaWUgemFsZcW8bm/Fm2NpIG9kcG93aWFkYWrEhWN5Y2ggYmlibGlvdGVrb20gd3Nww7PFgmR6aWVsb255bSB3eW1hZ2FueW0gIgorInByemV6IEk8cGxpa193eWtvbnl3YWxueT4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zaGxpYmRlcHMuMToxMTUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1kPkk8ZGVwZW5kZW5jeWZpZWxkPiIKK21zZ3N0ciAiQjwtZD5JPHBvbGVfemFsZcW8bm/Fm2NpPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToxMjEKK21zZ2lkICIiCisiQWRkIGRlcGVuZGVuY2llcyB0byBiZSBhZGRlZCB0byB0aGUgY29udHJvbCBmaWxlIGRlcGVuZGVuY3kgZmllbGQgIgorIkk8ZGVwZW5kZW5jeWZpZWxkPi4gIChUaGUgZGVwZW5kZW5jaWVzIGZvciB0aGlzIGZpZWxkIGFyZSBwbGFjZWQgaW4gdGhlICIKKyJ2YXJpYWJsZSBCPHNobGliczo+STxkZXBlbmRlbmN5ZmllbGQ+LikiCittc2dzdHIgIiIKKyJEb2RhbmllIHphbGXFvG5vxZtjaSwga3TDs3JlIG1hasSFIGJ5xIcgZG9kYW5lIGRvIHBvbGEgemFsZcW8bm/Fm2NpICIKKyJJPHBvbGVfemFsZcW8bm/Fm2NpPiBwbGlrdSBrb250cm9sbmVnby4gKFphbGXFvG5vxZtjaSBkbGEgdGVnbyBwb2xhIHPEhSAiCisidW1pZXN6Y3phbmUgdyB6bWllbm5laiBCPHNobGliczo+STxwb2xlX3phbGXFvG5vxZtjaT4uKSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToxMzEKK21zZ2lkICIiCisiVGhlIEI8LWQ+STxkZXBlbmRlbmN5ZmllbGQ+IG9wdGlvbiB0YWtlcyBlZmZlY3QgZm9yIGFsbCBleGVjdXRhYmxlcyBhZnRlciAiCisidGhlIG9wdGlvbiwgdW50aWwgdGhlIG5leHQgQjwtZD5JPGRlcGVuZGVuY3lmaWVsZD4uICBUaGUgZGVmYXVsdCAiCisiSTxkZXBlbmRlbmN5ZmllbGQ+IGlzIEI8RGVwZW5kcz4uIgorbXNnc3RyICIiCisiT3BjamEgQjwtZD5JPHBvbGVfemFsZcW8bm/Fm2NpPiB3cMWCeXdhIG5hIHdzenlzdGtpZSBwbGlraSB3eWtvbnl3YWxuZSBwb2RhbmUgIgorInBvIHRlaiBvcGNqaSwgYcW8IGRvIG5hc3TEmXBuZWdvIEI8LWQ+STxwb2xlX3phbGXFvG5vxZtjaT4uIERvbXnFm2xueW0gIgorIkk8cG9sZW1femFsZcW8bm/Fm2NpPiBqZXN0IEI8RGVwZW5kcz4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjEzOQorbXNnaWQgIiIKKyJJZiB0aGUgc2FtZSBkZXBlbmRlbmN5IGVudHJ5IChvciBzZXQgb2YgYWx0ZXJuYXRpdmVzKSBhcHBlYXJzIGluIG1vcmUgdGhhbiAiCisib25lIG9mIHRoZSByZWNvZ25pc2VkIGRlcGVuZGVuY3kgZmllbGQgbmFtZXMgQjxQcmUtRGVwZW5kcz4sIEI8RGVwZW5kcz4sICIKKyJCPFJlY29tbWVuZHM+LCBCPEVuaGFuY2VzPiBvciBCPFN1Z2dlc3RzPiB0aGVuIEI8ZHBrZy1zaGxpYmRlcHM+IHdpbGwgIgorImF1dG9tYXRpY2FsbHkgcmVtb3ZlIHRoZSBkZXBlbmRlbmN5IGZyb20gYWxsIGZpZWxkcyBleGNlcHQgdGhlIG9uZSAiCisicmVwcmVzZW50aW5nIHRoZSBtb3N0IGltcG9ydGFudCBkZXBlbmRlbmNpZXMuIgorbXNnc3RyICIiCisiSmXFm2xpIHRvIHNhbW8gb2tyZcWbbGVuaWUgemFsZcW8bm/Fm2NpIChsdWIgemJpw7NyIGFsdGVybmF0eXcpIHBvamF3aWEgc2nEmSB3ICIKKyJ3acSZY2VqIG5pxbwgamVkbmVqIG5hendpZSB6IHJvenLDs8W8bmlhbnljaCBww7NsIHphbGXFvG5vxZtjaSBCPFByZS1EZXBlbmRzPiwgIgorIkI8RGVwZW5kcz4sIEI8UmVjb21tZW5kcz4sIEI8RW5oYW5jZXM+IGx1YiBCPFN1Z2dlc3RzPiB0byBCPGRwa2ctc2hsaWJkZXBzPiAiCisiYXV0b21hdHljem5pZSB1c3VuaWUgemFsZcW8bm/Fm8SHIHplIHdzenlzdGtpY2ggcMOzbCwgcG96YSBwb2xlbSByZXByZXplbnR1asSFY3ltICIKKyJuYWp3YcW8bmllanN6ZSB6YWxlxbxub8WbY2kuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zaGxpYmRlcHMuMToxMzkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1wPkk8dmFybmFtZXByZWZpeD4iCittc2dzdHIgIkI8LXA+STxwcmVmaWtzX25hendfem1pZW5ueWNoPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToxNTAKK21zZ2lkICIiCisiU3RhcnQgc3Vic3RpdHV0aW9uIHZhcmlhYmxlcyB3aXRoIEk8dmFybmFtZXByZWZpeD5CPDo+IGluc3RlYWQgb2YgQjxzaGxpYnM6IgorIj4uICBMaWtld2lzZSwgYW55IGV4aXN0aW5nIHN1YnN0aXR1dGlvbiB2YXJpYWJsZXMgc3RhcnRpbmcgd2l0aCAiCisiSTx2YXJuYW1lcHJlZml4PkI8Oj4gKHJhdGhlciB0aGFuIEI8c2hsaWJzOj4pICBhcmUgcmVtb3ZlZCBmcm9tIHRoZSB0aGUgIgorInN1YnN0aXR1dGlvbiB2YXJpYWJsZXMgZmlsZS4iCittc2dzdHIgIiIKKyJSb3pwb2N6eW5hbmllIG5hencgem1pZW5ueWNoIHBvZHN0YXdpYW5pYSBvZCBJPHByZWZpa3NfbmF6d196bWllbm55Y2g+Qjw6PiAiCisiemFtaWFzdCBCPHNobGliczo+LiBQb2RvYm5pZSwgd3N6eXN0a2llIHptaWVubmUgcm96cG9jenluYWrEhWNlIHNpxJkgb2QgIgorIkk8cHJlZmlrc19uYXp3X3ptaWVubnljaD5CPDo+ICh6YW1pYXN0IEI8c2hsaWJzOj4pIHPEhSB1c3V3YW5lIHogcGxpa3UgIgorInptaWVubnljaCBwb2RzdGF3aWFuaWEuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjE1NgorbXNnaWQgIiIKKyJQcmludCBzdWJzdGl0dXRpb24gdmFyaWFibGUgc2V0dGluZ3MgdG8gc3RhbmRhcmQgb3V0cHV0LCByYXRoZXIgdGhhbiBiZWluZyAiCisiYWRkZWQgdG8gdGhlIHN1YnN0aXR1dGlvbiB2YXJpYWJsZXMgZmlsZSAoQjxkZWJpYW4vc3Vic3R2YXJzPiBieSBkZWZhdWx0KS4iCittc2dzdHIgIiIKKyJXecWbd2lldGxlbmllIHVzdGF3aWXFhCB6bWllbm55Y2ggcG9kc3Rhd2lhbmlhIG5hIHN0YW5kYXJkb3dlIHd5asWbY2llLCB6YW1pYXN0ICIKKyJkb2Rhd2FuaWEgaWNoIGRvIHBsaWt1IHptaWVubnljaCBwb2RzdGF3aWFuaWEgKGRvbXnFm2xuaWUgQjxkZWJpYW4vIgorInN1YnN0dmFycz4pLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTU2CisjLCBuby13cmFwCittc2dpZCAiQjwtdD5JPHR5cGU+IgorbXNnc3RyICJCPC10Pkk8dHlwPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToxNjMKK21zZ2lkICIiCisiUHJlZmVyIHNoYXJlZCBsaWJyYXJ5IGRlcGVuZGVuY3kgaW5mb3JtYXRpb24gdGFnZ2VkIGZvciB0aGUgZ2l2ZW4gcGFja2FnZSAiCisidHlwZS4gSWYgbm8gdGFnZ2VkIGluZm9ybWF0aW9uIGlzIGF2YWlsYWJsZSwgZmFsbHMgYmFjayB0byB1bnRhZ2dlZCAiCisiaW5mb3JtYXRpb24uIFRoZSBkZWZhdWx0IHBhY2thZ2UgdHlwZSBpcyBcImRlYlwiLiBTaGFyZWQgbGlicmFyeSBkZXBlbmRlbmN5ICIKKyJpbmZvcm1hdGlvbiBpcyB0YWdnZWQgZm9yIGEgZ2l2ZW4gdHlwZSBieSBwcmVmaXhpbmcgaXQgd2l0aCB0aGUgbmFtZSBvZiB0aGUgIgorInR5cGUsIGEgY29sb24sIGFuZCB3aGl0ZXNwYWNlLiIKK21zZ3N0ciAiIgorIlByZWZlcm93YW5pZSBpbmZvcm1hY2ppIG8gemFsZcW8bm/Fm2NpYWNoIGJpYmxpb3RlayB3c3DDs8WCZHppZWxvbnljaCAiCisib3puYWN6b255Y2ggZGxhIGRhbmVnbyB0eXB1IHBha2lldHUuIEplxZtsaSBpbmZvcm1hY2ppIG96bmFjem9ueWNoIG5pZSBtYSwgIgorInXFvHl3YW5lIHPEhSBpbmZvcm1hY2plIGJleiBvem5hY3plxYQuIERvbXnFm2xueW0gdHlwZW0gcGFraWV0dSBqZXN0IFwiZGViXCIuICIKKyJJbmZvcm1hY2plIG8gemFsZcW8bm/Fm2NpYWNoIGJpYmxpb3RlayB3c3DDs8WCZHppZWxvbnljaCBzxIUgb3puYWN6YW5lIGRsYSBkYW5lZ28gIgorInR5cHUgcGFraWV0dSBwcnpleiBwb3ByemVkemVuaWUgaWNoIG5henfEhSB0eXB1LCBkd3Vrcm9wa2llbSBvcmF6IGJpYcWCeW1pICIKKyJ6bmFrYW1pIChzcGFjamFtaSkuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zaGxpYmRlcHMuMToxNjMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1MPkk8bG9jYWxzaGxpYnNmaWxlPiIKK21zZ3N0ciAiQjwtTD5JPGxva2FsbnlfcGxpa19zaGxpYnM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjE2OQorbXNnaWQgIiIKKyJSZWFkIG92ZXJyaWRpbmcgc2hhcmVkIGxpYnJhcnkgZGVwZW5kZW5jeSBpbmZvcm1hdGlvbiBmcm9tICIKKyJJPGxvY2Fsc2hsaWJzZmlsZT4gaW5zdGVhZCBvZiBCPGRlYmlhbi9zaGxpYnMubG9jYWw+LiIKK21zZ3N0ciAiIgorIk9kY3p5dCBuYWRwaXNhxYQgaW5mb3JtYWNqaSBvIGJpYmxpb3Rla2FjaCB3c3DDs8WCZHppZWxvbnljaCB6ICIKKyJJPGxva2FsbmVnb19wbGlrdV9zaGxpYnM+IHphbWlhc3QgQjxkZWJpYW4vc2hsaWJzLmxvY2FsPi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTc1Cittc2dpZCAiIgorIldyaXRlIHN1YnN0aXR1dGlvbiB2YXJpYWJsZXMgaW4gSTxzdWJzdHZhcnNmaWxlPjsgdGhlIGRlZmF1bHQgaXMgQjxkZWJpYW4vIgorInN1YnN0dmFycz4uIgorbXNnc3RyICIiCisiWmFwaXMgem1pZW5ueWNoIHBvZHN0YXdpYW5pYSB3IHBsaWt1IEk8cGxpa196bWllbm55Y2hfcG9kc3Q+OyBkb215xZtsbmllIGplc3QgIgorInRvIEI8ZGViaWFuL3N1YnN0dmFycz4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zaGxpYmRlcHMuMToxNzUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC12PiIKK21zZ3N0ciAiQjwtdj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTgwCittc2dpZCAiIgorIkVuYWJsZSB2ZXJib3NlIG1vZGUuIE51bWVyb3VzIG1lc3NhZ2VzIGFyZSBkaXNwbGF5ZWQgdG8gZXhwbGFpbiB3aGF0IEI8ZHBrZy0iCisic2hsaWJkZXBzPiBkb2VzLiIKK21zZ3N0ciAiIgorIlfFgsSFY3plbmllIGRvZGF0a293eWNoIGluZm9ybWFjamkuIFd5xZt3aWV0bGFueWNoIGplc3Qgd2llbGUga29tdW5pa2F0w7N3ICIKKyJ0xYJ1bWFjesSFY3ljaCBkemlhxYJhbmllIEI8ZHBrZy1zaGxpYmRlcHM+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTgwCisjLCBuby13cmFwCittc2dpZCAiQjwteD5JPHBhY2thZ2U+IgorbXNnc3RyICJCPC14Pkk8cGFraWV0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToxODcKK21zZ2lkICIiCisiRXhjbHVkZSB0aGUgcGFja2FnZSBmcm9tIHRoZSBnZW5lcmF0ZWQgZGVwZW5kZW5jaWVzLiBUaGlzIGlzIHVzZWZ1bCB0byBhdm9pZCAiCisic2VsZi1kZXBlbmRlbmNpZXMgZm9yIHBhY2thZ2VzIHdoaWNoIHByb3ZpZGUgRUxGIGJpbmFyaWVzIChleGVjdXRhYmxlcyBvciAiCisibGlicmFyeSBwbHVnaW5zKSB1c2luZyBhIGxpYnJhcnkgY29udGFpbmVkIGluIHRoZSBzYW1lIHBhY2thZ2UuIFRoaXMgb3B0aW9uICIKKyJjYW4gYmUgdXNlZCBtdWx0aXBsZSB0aW1lcyB0byBleGNsdWRlIHNldmVyYWwgcGFja2FnZXMuIgorbXNnc3RyICIiCisiV3nFgsSFY3plbmllIHBha2lldHUgeiBnZW5lcm93YW55Y2ggemFsZcW8bm/Fm2NpLiBVxbx5dGVjem5lIGFieSB6YXBvYmllYyAiCisiemFsZcW8bm/Fm2Npb20gcGFraWV0dSBvZCBzYW1lZ28gc2llYmllIGRsYSBwYWtpZXTDs3cgZG9zdGFyY3phasSFY3ljaCBiaW5hcmlhICIKKyJ0eXB1IEVMRiAocGxpa2kgd3lrb255d2FsbmUgbHViIGJpYmxpb3Rla2kpLCBrdMOzcmUgemFsZcW8xIUgb2QgaW5uZWogIgorImJpYmxpb3Rla2kgemF3YXJ0ZWogdyB0eW0gc2FteW0gcGFraWVjaWUuIFRhIG9wY2phIG1vxbxlIGJ5xIcgdcW8eXRhICIKKyJ3aWVsb2tyb3RuaWUgYWJ5IHd5xYLEhWN6ecSHIGtpbGthIHBha2lldMOzdy4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNobGliZGVwcy4xOjE4NworIywgbm8td3JhcAorbXNnaWQgIkI8LVM+STxwa2didWlsZGRpcj4iCittc2dzdHIgIkI8LVM+STxrYXRhbG9nX2J1ZG93YW5pYV9wYWtpZXR1PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToxOTQKK21zZ2lkICIiCisiTG9vayBpbnRvIEk8cGtnYnVpbGRkaXI+IGZpcnN0IHdoZW4gdHJ5aW5nIHRvIGZpbmQgYSBsaWJyYXJ5LiBUaGlzIGlzIHVzZWZ1bCAiCisid2hlbiB0aGUgc291cmNlIHBhY2thZ2UgYnVpbGRzIG11bHRpcGxlIGZsYXZvcnMgb2YgdGhlIHNhbWUgbGlicmFyeSBhbmQgeW91ICIKKyJ3YW50IHRvIGVuc3VyZSB0aGF0IHlvdSBnZXQgdGhlIGRlcGVuZGVuY3kgZnJvbSBhIGdpdmVuIGJpbmFyeSBwYWNrYWdlLiBZb3UgIgorImNhbiB1c2UgdGhpcyBvcHRpb24gbXVsdGlwbGUgdGltZXM6IGRpcmVjdG9yaWVzIHdpbGwgYmUgdHJpZWQgaW4gdGhlIHNhbWUgIgorIm9yZGVyIGJlZm9yZSBkaXJlY3RvcmllcyBvZiBvdGhlciBiaW5hcnkgcGFja2FnZXMuIgorbXNnc3RyICIiCisiUHJ6ZWdsxIVkYW5pZSBuYWpwaWVydyBJPGthdGFsb2d1X2J1ZG93YW5pYV9wYWtpZXR1PiBwcnp5IHByw7NiaWUgb2RuYWxlemllbmlhICIKKyJiaWJsaW90ZWtpLiBQcnp5ZGF0bmUgZ2R5IHBha2lldCDFunLDs2TFgm93eSB0d29yenkgd2llbGUgb2RtaWFuIHRlaiBzYW1laiAiCisiYmlibGlvdGVraSwgYSBjaGNlIHNpxJkgemFwZXduacSHIHV6eXNrYW5pZSB6YWxlxbxub8WbY2kgb2Qgb2tyZcWbbG9uZWdvIHBha2lldHUgIgorImJpbmFybmVnby4gVGEgb3BjamEgbW/FvGUgYnnEhyB1xbx5dGEgd2llbG9rcm90bmllOiBrYXRhbG9naSBixJlkxIUgcHJ6ZWdsxIVkYW5lIHcgIgorInRlaiBzYW1laiBrb2xlam5vxZtjaSBwcnplZCBrYXRhbG9nYW1pIGlubnljaCBwYWtpZXTDs3cgYmluYXJueWNoLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTk0CisjLCBuby13cmFwCittc2dpZCAiQjwtLWlnbm9yZS1taXNzaW5nLWluZm8+IgorbXNnc3RyICJCPC0taWdub3JlLW1pc3NpbmctaW5mbz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjAwCittc2dpZCAiIgorIkRvIG5vdCBmYWlsIGlmIGRlcGVuZGVuY3kgaW5mb3JtYXRpb24gY2FuJ3QgYmUgZm91bmQgZm9yIGEgc2hhcmVkIGxpYnJhcnkuICAiCisiVXNhZ2Ugb2YgdGhpcyBvcHRpb24gaXMgZGlzY291cmFnZWQsIGFsbCBsaWJyYXJpZXMgc2hvdWxkIHByb3ZpZGUgZGVwZW5kZW5jeSAiCisiaW5mb3JtYXRpb24gKGVpdGhlciB3aXRoIHNobGlicyBmaWxlcywgb3Igd2l0aCBzeW1ib2xzIGZpbGVzKSAgZXZlbiBpZiB0aGV5ICIKKyJhcmUgbm90IHlldCB1c2VkIGJ5IG90aGVyIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorIktvbnR5bnVhY2phIHBvbWltbyBicmFrdSBpbmZvcm1hY2ppIG8gemFsZcW8bm/Fm2NpYWNoIGRsYSBiaWJsaW90ZWtpICIKKyJ3c3DDs8WCZHppZWxvbmVqLiBPZHJhZHphIHNpxJkgdcW8eXdhbmllIHRlaiBvcGNqaSwgd3N6eXN0a2llIGJpYmxpb3Rla2kgcG93aW5ueSAiCisiZG9zdGFyY3phxIcgaW5mb3JtYWNqZSBvIHphbGXFvG5vxZtjaWFjaCAodyBwb3N0YWNpIHBsaWvDs3cgc2hsaWJzIGx1YiBwbGlrw7N3ICIKKyJzeW1ib2xpKSAtIG5hd2V0IGplxZtsaSBuaWUgc8SFIGplc3pjemUgdcW8eXdhbmUgcHJ6ZXogaW5uZSBwYWtpZXR5LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjAwCisjLCBuby13cmFwCittc2dpZCAiQjwtLXdhcm5pbmdzPT5JPHZhbHVlPiIKK21zZ3N0ciAiQjwtLXdhcm5pbmdzPT5JPHdhcnRvxZvEhz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjExCittc2dpZCAiIgorIkk8dmFsdWU+IGlzIGEgYml0IGZpZWxkIGRlZmluaW5nIHRoZSBzZXQgb2Ygd2FybmluZ3MgdGhhdCBjYW4gYmUgZW1pdHRlZCBieSAiCisiQjxkcGtnLXNobGliZGVwcz4uICBCaXQgMCAodmFsdWU9MSkgZW5hYmxlcyB0aGUgd2FybmluZyBcInN5bWJvbCBJPHN5bT4gdXNlZCAiCisiYnkgSTxiaW5hcnk+IGZvdW5kIGluIG5vbmUgb2YgdGhlIGxpYnJhcmllc1wiLCBiaXQgMSAodmFsdWU9MikgZW5hYmxlcyB0aGUgIgorIndhcm5pbmcgXCJkZXBlbmRlbmN5IG9uIEk8bGlicmFyeT4gY291bGQgYmUgYXZvaWRlZFwiIGFuZCBiaXQgMiAodmFsdWU9NCkgICIKKyJlbmFibGVzIHRoZSB3YXJuaW5nIFwiSTxiaW5hcnk+IHNob3VsZG4ndCBiZSBsaW5rZWQgd2l0aCBJPGxpYnJhcnk+XCIuICBUaGUgIgorImRlZmF1bHQgSTx2YWx1ZT4gaXMgMzogdGhlIGZpcnN0IHR3byB3YXJuaW5ncyBhcmUgYWN0aXZlIGJ5IGRlZmF1bHQsIHRoZSAiCisibGFzdCBvbmUgaXMgbm90LiBTZXQgSTx2YWx1ZT4gdG8gNyBpZiB5b3Ugd2FudCBhbGwgd2FybmluZ3MgdG8gYmUgYWN0aXZlLiIKK21zZ3N0ciAiIgorIkk8d2FydG/Fm8SHPiBqZXN0IHBvbGVtIGJpdG93eW0gZGVmaW5pdWrEhWN5bSB6YmnDs3Igb3N0cnplxbxlxYQsIGt0w7NyZSBtb2fEhSBiecSHICIKKyJ3eXPFgmFuZSBwcnpleiBCPGRwa2ctc2hsaWJkZXBzPi4gQml0IDAgKHdhcnRvxZvEhz0xKSB3xYLEhWN6YSBvc3RyemXFvGVuaWUgXCJ3ICIKKyLFvGFkbmVqIHogYmlibGlvdGVrIG5pZSB6bmFsZXppb25vIHN5bWJvbHUgSTxzeW1iPiB1xbx5d2FuZWdvIHByemV6ICIKKyJJPHBsaWtfYmluYXJueT5cIiwgYml0IDEgKHdhcnRvxZvEhz0yKSB3xYLEhWN6YSBvc3RyemXFvGVuaWUgXCJtb8W8bmEgYnkgdW5pa27EhcSHICIKKyJ6YWxlxbxub8WbY2kgb2QgYmlibGlvdGVraSBJPGJpYmw+XCIsIHphxZsgYml0IDIgKHdhcnRvxZvEhz00KSB3xYLEhWN6YSBvc3RyemXFvGVuaWUgIgorIlwiSTxwbGlrX2JpbmFybnk+IG5pZSBwb3dpbmllbiBiecSHIGxpbmtvd2FueSB6IEk8YmlibGlvdGVrxIU+XCIuIERvbXnFm2xuxIUgIgorIkk8d2FydG/Fm2NpxIU+IGplc3QgMzogcGllcndzemUgZHdhIG9zdHJ6ZcW8ZW5pYSBzxIUgZG9tecWbbG5pZSBha3R5d25lLCB6YcWbICIKKyJvc3RhdG5pZSBuaWUuIFVzdGF3aWVuaWUgSTx3YXJ0b8WbY2k+IG5hIDcgcG93b2R1amUgYWt0eXdhY2rEmSB3c3p5c3RraWNoICIKKyJvc3RyemXFvGXFhC4iCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLXNobGliZGVwcy4xOjIyMgorIywgbm8td3JhcAorbXNnaWQgIldBUk5JTkdTIgorbXNnc3RyICJVV0FHSSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToyMzAKK21zZ2lkICIiCisiU2luY2UgQjxkcGtnLXNobGliZGVwcz4gYW5hbHl6ZXMgdGhlIHNldCBvZiBzeW1ib2xzIHVzZWQgYnkgZWFjaCBiaW5hcnkgb2YgIgorInRoZSBnZW5lcmF0ZWQgcGFja2FnZSwgaXQgaXMgYWJsZSB0byBlbWl0IHdhcm5pbmdzIGluIHNldmVyYWwgY2FzZXMuIFRoZXkgIgorImluZm9ybSB5b3Ugb2YgdGhpbmdzIHRoYXQgY2FuIGJlIGltcHJvdmVkIGluIHRoZSBwYWNrYWdlLiBJbiBtb3N0IGNhc2VzLCAiCisidGhvc2UgaW1wcm92ZW1lbnRzIGNvbmNlcm4gdGhlIHVwc3RyZWFtIHNvdXJjZXMgZGlyZWN0bHkuIEJ5IG9yZGVyIG9mICIKKyJkZWNyZWFzaW5nIGltcG9ydGFuY2UsIGhlcmUgYXJlIHRoZSB2YXJpb3VzIHdhcm5pbmdzIHRoYXQgeW91IGNhbiBlbmNvdW50ZXI6IgorbXNnc3RyICIiCisiUG9uaWV3YcW8IEI8ZHBrZy1zaGxpYmRlcHM+IGFuYWxpenVqZSB6YmnDs3Igc3ltYm9saSB1xbx5d2FueWNoIHByemV6IGthxbxkeSAiCisicGxpayBiaW5hcm55IGdlbmVyb3dhbmVnbyBwYWtpZXR1LCBqZXN0IHcgc3RhbmllIHd5c3nFgmHEhyBvc3RyemXFvGVuaWEgdyAiCisicGV3bnljaCBwcnp5cGFka2FjaC4gSW5mb3JtdWrEhSBvbmUgbyByemVjemFjaCwga3TDs3JlIG1vZ8SFIGJ5xIcgdWxlcHN6b25lIHcgIgorInBha2llY2llLiBXIHdpxJlrc3pvxZtjaSBwcnp5cGFka8OzdyBkb3R5Y3p5IHRvIGJlenBvxZtyZWRuaW8gb3J5Z2luYWxueWNoICIKKyLFunLDs2RlxYIuIFBvbmnFvGVqIHplYnJhbmUgc8SFIG9zdHJ6ZcW8ZW5pYSBuYSBqYWtpZSBtb8W8bmEgbmF0cmFmacSHLCB3IGtvbGVqbm/Fm2NpICIKKyJtYWxlasSFY2VqIHdhxbxub8WbY2k6IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zaGxpYmRlcHMuMToyMzAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHN5bWJvbD5JPCBzeW0+QjwgdXNlZCBieSA+STxiaW5hcnk+QjwgZm91bmQgaW4gbm9uZSBvZiB0aGUgbGlicmFyaWVzLj4iCittc2dzdHIgIkI8dyDFvGFkbmVqIHogYmlibGlvdGVrIG5pZSB6bmFsZXppb25vIHN5bWJvbHU+STwgc3ltYj5CPCB1xbx5d2FuZWdvIHByemV6ID5JPHBsaWtfYmluYXJueT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjM2Cittc2dpZCAiIgorIlRoZSBpbmRpY2F0ZWQgc3ltYm9sIGhhcyBub3QgYmVlbiBmb3VuZCBpbiB0aGUgbGlicmFyaWVzIGxpbmtlZCB3aXRoIHRoZSAiCisiYmluYXJ5LiBUaGUgSTxiaW5hcnk+IGlzIG1vc3QgbGlrZWx5IGEgbGlicmFyeSBhbmQgaXQgbmVlZHMgdG8gYmUgbGlua2VkICIKKyJ3aXRoIGFuIGFkZGl0aW9uYWwgbGlicmFyeSBkdXJpbmcgdGhlIGJ1aWxkIHByb2Nlc3MgKG9wdGlvbiBCPC1sPkk8bGlicmFyeT4gIgorIm9mIHRoZSBsaW5rZXIpLiIKK21zZ3N0ciAiIgorIldza2F6YW55IHN5bWJvbCBuaWUgem9zdGHFgiBvZG5hbGV6aW9ueSB3IMW8YWRuZWogeiBiaWJsaW90ZWssIHoga3TDs3J5bWkgamVzdCAiCisibGlua293YW55IHBsaWsgYmluYXJueS4gVGFraSBJPHBsaWtfYmluYXJueT4gamVzdCBuYWpwZXduaWVqIGJpYmxpb3Rla8SFIGkgIgorInBvd2luaWVuIGJ5xIcgbGlua293YW55IHogZG9kYXRrb3fEhSBiaWJsaW90ZWvEhSBwb2RjemFzIGJ1ZG93YW5pYSBwYWtpZXR1ICIKKyIob3BjamEgQjwtbD5JPGJpYmxpb3Rla2E+IGxpbmtlcmEpLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjM2CisjLCBuby13cmFwCittc2dpZCAiSTxiaW5hcnk+QjwgY29udGFpbnMgYW4gdW5yZXNvbHZhYmxlIHJlZmVyZW5jZSB0byBzeW1ib2wgPkk8c3ltPkI8OiBpdCdzIHByb2JhYmx5IGEgcGx1Z2luPiIKK21zZ3N0ciAiSTxwbGlrX2JpbmFybnk+QjwgemF3aWVyYSBuaWVyb3p3acSFenl3YWxuZSBvZG5pZXNpZW5pZSBkbyBzeW1ib2x1ID5JPHN5bT5CPDogcHJhd2RvcG9kb2JuaWUgamVzdCB0byB3dHljemthPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToyNDkKK21zZ2lkICIiCisiVGhlIGluZGljYXRlZCBzeW1ib2wgaGFzIG5vdCBiZWVuIGZvdW5kIGluIHRoZSBsaWJyYXJpZXMgbGlua2VkIHdpdGggdGhlICIKKyJiaW5hcnkuIFRoZSBJPGJpbmFyeT4gaXMgbW9zdCBsaWtlbHkgYSBwbHVnaW4gYW5kIHRoZSBzeW1ib2wgaXMgcHJvYmFibHkgIgorInByb3ZpZGVkIGJ5IHRoZSBwcm9ncmFtIHRoYXQgbG9hZHMgdGhpcyBwbHVnaW4uIEluIHRoZW9yeSBhIHBsdWdpbiBkb2Vzbid0ICIKKyJoYXZlIGFueSBTT05BTUUgYnV0IHRoaXMgYmluYXJ5IGRvZXMgaGF2ZSBvbmUgYW5kIGFzIHN1Y2ggaXQgY291bGQgbm90IGJlICIKKyJjbGVhcmx5IGlkZW50aWZpZWQgYXMgc3VjaC4gSG93ZXZlciB0aGUgZmFjdCB0aGF0IHRoZSBiaW5hcnkgaXMgc3RvcmVkIGluIGEgIgorIm5vbi1wdWJsaWMgZGlyZWN0b3J5IGlzIGEgc3Ryb25nIGluZGljYXRpb24gdGhhdCdzIGl0J3Mgbm90IGEgbm9ybWFsIHNoYXJlZCAiCisibGlicmFyeS4gSWYgdGhlIGJpbmFyeSBpcyByZWFsbHkgYSBwbHVnaW4sIHRoZW4gZGlzcmVnYXJkIHRoaXMgd2FybmluZy4gQnV0ICIKKyJ0aGVyZSdzIGFsd2F5cyB0aGUgcG9zc2liaWxpdHkgdGhhdCBpdCdzIGEgcmVhbCBsaWJyYXJ5IGFuZCB0aGF0IHByb2dyYW1zICIKKyJsaW5raW5nIHRvIGl0IGFyZSB1c2luZyBhbiBSUEFUSCBzbyB0aGF0IHRoZSBkeW5hbWljIGxvYWRlciBmaW5kcyBpdC4gSW4gIgorInRoYXQgY2FzZSwgdGhlIGxpYnJhcnkgaXMgYnJva2VuIGFuZCBuZWVkcyB0byBiZSBmaXhlZC4iCittc2dzdHIgIiIKKyJXc2themFueSBzeW1ib2wgbmllIHpvc3RhxYIgb2RuYWxlemlvbnkgdyDFvGFkbmVqIHogYmlibGlvdGVrLCB6IGt0w7NyeW1pIGplc3QgIgorImxpbmtvd2FueSBwbGlrIGJpbmFybnkuIFRha2kgSTxwbGlrX2JpbmFybnk+IGplc3QgbmFqcGV3bmllaiB3dHljemvEhSBpIGplc3QgIgorInByYXdkb3BvZG9ibmllIGRvc3RhcmN6YW55IHdyYXogeiBwcm9ncmFtZW0sIGt0w7NyeSDFgmFkdWrEmSB0YWvEhSB3dHljemvEmS4gIgorIlRlb3JldHljem5pZSB3dHljemthIG5pZSBwb3dpbm5hIG1pZcSHIHBvbGEgU09OQU1FLCBqZWRuYWsgdGVuIHBsaWsgYmluYXJueSAiCisiamUgcG9zaWFkYSBpIG5pZSBtb8W8bmEgZ28gemlkZW50eWZpa293YcSHIG5hIHRlaiBwb2RzdGF3aWUuIEZha3QsIGnFvCBwbGlrIHRlbiAiCisiamVzdCB1bWllc3pjem9ueSB3IG5pZXB1YmxpY3pueW0ga2F0YWxvZ3UgbW9jbm8gd3NrYXp1amUgbmEgdG8sIMW8ZSBuaWUgamVzdCAiCisib24gend5a8WCxIUgYmlibGlvdGVrxIUgd3Nww7PFgmR6aWVsb27EhS4gSmXFm2xpIHBsaWsgYmluYXJueSByemVjenl3acWbY2llIGplc3QgIgorInd0eWN6a8SFLCBtb8W8bmEgcG9taW7EhcSHIHRvIG9zdHJ6ZcW8ZW5pZS4gSmVkbmFrIHphd3N6ZSBpc3RuaWVqZSBtb8W8bGl3b8WbxIcsIMW8ZSAiCisiamVzdCB0byBiaWJsaW90ZWthIGkgcHJvZ3JhbXkgeiBuacSFIGxpbmtvd2FuZSB1xbx5d2FqxIUgUlBBVEgsIGFieSBkeW5hbWljem55ICIKKyJsb2FkZXIgYnnFgiB3IHN0YW5pZSBqxIUgb2RuYWxlxbrEhy4gVyB0YWtpbSBwcnp5cGFka3UgYmlibGlvdGVrxJkgbW/FvG5hIHV6bmHEhyB6YSAiCisiemVwc3V0xIUgaSBuYWxlxbx5IGrEhSBuYXByYXdpxIcuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zaGxpYmRlcHMuMToyNDkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGRlcGVuZGVuY3kgb24gPkk8bGlicmFyeT5CPCBjb3VsZCBiZSBhdm9pZGVkIGlmID5JPGJpbmFyaWVzPkI8IHdlcmUgbm90IHVzZWxlc3NseSBsaW5rZWQgYWdhaW5zdCBpdCAodGhleSB1c2Ugbm9uZSBvZiBpdHMgc3ltYm9scykuPiIKK21zZ3N0ciAiQjxtb8W8bmEgYnkgdW5pa27EhcSHIHphbGXFvG5vxZtjaSBvZCA+STxiaWJsaW90ZWtpPkI8LCBqZcW8ZWxpIG5pZSBiecWCb2J5IG5pZXBvdHJ6ZWJuZWdvIGxpbmtvd2FuaWEgPkk8cGxpa8Ozd19iaW5hcm55Y2g+QjwgeiBuacSFIChuaWUgc8SFIHXFvHl3YW5lIMW8YWRuZSB6IHRhbXRlanN6eWNoIHN5bWJvbGkpLj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjU1Cittc2dpZCAiIgorIk5vbmUgb2YgdGhlIEk8YmluYXJpZXM+IHRoYXQgYXJlIGxpbmtlZCB3aXRoIEk8bGlicmFyeT4gdXNlIGFueSBvZiB0aGUgIgorInN5bWJvbHMgcHJvdmlkZWQgYnkgdGhlIGxpYnJhcnkuIEJ5IGZpeGluZyBhbGwgdGhlIGJpbmFyaWVzLCB5b3Ugd291bGQgYXZvaWQgIgorInRoZSBkZXBlbmRlbmN5IGFzc29jaWF0ZWQgdG8gdGhpcyBsaWJyYXJ5ICh1bmxlc3MgdGhlIHNhbWUgZGVwZW5kZW5jeSBpcyAiCisiYWxzbyBnZW5lcmF0ZWQgYnkgYW5vdGhlciBsaWJyYXJ5IHRoYXQgaXMgcmVhbGx5IHVzZWQpLiIKK21zZ3N0ciAiIgorIsW7YWRlbiB6IEk8cGxpa8Ozd19iaW5hcm55Y2g+LCBrdMOzcmUgc8SFIGxpbmtvd2FuZSB6IEk8YmlibGlvdGVrxIU+IG5pZSB1xbx5d2EgIgorInN5bWJvbGkgcHJ6ZXogbmnEhSB1ZG9zdMSZcG5pYW55Y2guIFBvcHJhd2lhasSFYyB3c3p5c3RraWUgcGxpa2kgYmluYXJuZSBtb8W8bmEgIgorInVuaWtuxIXEhyB6YWxlxbxub8WbY2kgendpxIV6YW55Y2ggeiB0xIUgYmlibGlvdGVrxIUgKGNoeWJhLCDFvGUgdGFrYSBzYW1hIHphbGXFvG5vxZvEhyAiCisiamVzdCByw7N3bmllxbwgZ2VuZXJvd2FuYSBwcnpleiBpbm7EhSBiaWJsaW90ZWvEmSwga3TDs3JhIGplc3QgZmFrdHljem5pZSAiCisidcW8eXdhbmEpLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjU1CisjLCBuby13cmFwCittc2dpZCAiSTxiaW5hcnk+Qjwgc2hvdWxkbid0IGJlIGxpbmtlZCB3aXRoID5JPGxpYnJhcnk+QjwgKGl0IHVzZXMgbm9uZSBvZiBpdHMgc3ltYm9scykuPiIKK21zZ3N0ciAiSTxwbGlrX2JpbmFybnk+QjwgbmllIHBvd2luaWVuIGJ5xIcgbGlua293YW55IHogPkk8YmlibGlvdGVrxIU+QjwgKG5pZSBzxIUgdcW8eXdhbmUgxbxhZG5lIHogdGFtdGVqc3p5Y2ggc3ltYm9saSkuPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToyNjIKK21zZ2lkICIiCisiVGhlIEk8YmluYXJ5PiBpcyBsaW5rZWQgdG8gYSBsaWJyYXJ5IHRoYXQgaXQgZG9lc24ndCBuZWVkLiBJdCdzIG5vdCBhICIKKyJwcm9ibGVtIGJ1dCBzb21lIHNtYWxsIHBlcmZvcm1hbmNlIGltcHJvdmVtZW50cyBpbiBiaW5hcnkgbG9hZCB0aW1lIGNhbiBiZSAiCisib2J0YWluZWQgYnkgbm90IGxpbmtpbmcgdGhpcyBsaWJyYXJ5IHRvIHRoaXMgYmluYXJ5LiBUaGlzIHdhcm5pbmcgY2hlY2tzIHRoZSAiCisic2FtZSBpbmZvcm1hdGlvbiB0aGFuIHRoZSBwcmV2aW91cyBvbmUgYnV0IGRvZXMgaXQgZm9yIGVhY2ggYmluYXJ5IGluc3RlYWQgIgorIm9mIGRvaW5nIHRoZSBjaGVjayBnbG9iYWxseSBvbiBhbGwgYmluYXJpZXMgYW5hbHl6ZWQuIgorbXNnc3RyICIiCisiSTxwbGlrX2JpbmFybnk+IGplc3QgbGlua293YW55IHogYmlibGlvdGVrxIUsIGt0w7NyZWogbmllIHBvdHJ6ZWJ1amUuIE5pZSBqZXN0ICIKKyJ0byBwcm9ibGVtLCBhbGUgbW/FvG5hIHV6eXNrYcSHIHBld27EhSBwb3ByYXfEmSB3eWRham5vxZtjaSBjemFzdSDFgmFkb3dhbmlhIHBsaWt1ICIKKyJiaW5hcm5lZ28sIGplxZtsaSBiaWJsaW90ZWthIHRhIG5pZSBixJlkemllIHogbmltIGxpbmtvd2FuYS4gVG8gb3N0cnplxbxlbmllICIKKyJzcHJhd2R6YSB0ZSBzYW1lIGluZm9ybWFjamUgY28gcG9wcnplZG5pZSwgYWxlIHd5a29udWplIHRvIGRsYSBrYcW8ZGVnbyBwbGlrdSAiCisiYmluYXJuZWdvIHphbWlhc3Qgd3lrb255d2FuaWEgZ2xvYmFsbmVnbyBzcHJhd2R6ZW5pYSBkbGEgd3N6eXN0a2ljaCAiCisiYW5hbGl6b3dhbnljaCBwbGlrw7N3LiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjYyCisjLCBuby13cmFwCittc2dpZCAiRVJST1JTIgorbXNnc3RyICJCxYHEmERZIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjI2OQorbXNnaWQgIiIKKyJCPGRwa2ctc2hsaWJkZXBzPiB3aWxsIGZhaWwgaWYgaXQgY2FuJ3QgZmluZCBhIHB1YmxpYyBsaWJyYXJ5IHVzZWQgYnkgYSAiCisiYmluYXJ5IG9yIGlmIHRoaXMgbGlicmFyeSBoYXMgbm8gYXNzb2NpYXRlZCBkZXBlbmRlbmN5IGluZm9ybWF0aW9uIChlaXRoZXIgIgorInNobGlicyBmaWxlIG9yIHN5bWJvbHMgZmlsZSkuIEEgcHVibGljIGxpYnJhcnkgaGFzIGEgU09OQU1FIGFuZCBpcyB2ZXJzaW9uZWQgIgorIihsaWJzb21ldGhpbmcuc28uSTxYPikuIEEgcHJpdmF0ZSBsaWJyYXJ5IChsaWtlIGEgcGx1Z2luKSBzaG91bGQgbm90IGhhdmUgYSAiCisiU09OQU1FIGFuZCBkb2Vzbid0IG5lZWQgdG8gYmUgdmVyc2lvbmVkLiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1zaGxpYmRlcHM+IHByemVyd2llIGR6aWHFgmFuaWUgeiBixYLEmWRlbSBqZcWbbGkgbmllIGLEmWR6aWUgdyBzdGFuaWUgIgorInpuYWxlxbrEhyBwdWJsaWN6bmVqIGJpYmxpb3Rla2kgdcW8eXdhbmVqIHByemV6IHBsaWsgYmluYXJueSwgbHViIGplxZtsaSAiCisiYmlibGlvdGVrYSB0YWthIG5pZSBixJlkemllIG1pZcSHIHBvd2nEhXphbmVqIGluZm9ybWFjamkgbyB6YWxlxbxub8WbY2lhY2ggKHBsaWt1ICIKKyJzaGxpYnMgbHViIHBsaWt1IHN5bWJvbGkpLiBQdWJsaWN6bmUgYmlibGlvdGVraSBtYWrEhSBTT05BTUUgaSBzxIUgIgorIndlcnNqb25vd2FuZSAoamFrIG5wLiBsaWJzb21ldGhpbmcuc28uSTxYPikuIEJpYmxpb3Rla2kgcHJ5d2F0bmUgKGphayBucC4gIgorInd0eWN6a2kpIG5pZSBwb3dpbm55IG1pZcSHIFNPTkFNRSBpIG5pZSBtdXN6xIUgYnnEhyB3ZXJzam9ub3dhbmUuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zaGxpYmRlcHMuMToyNjkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGNvdWxkbid0IGZpbmQgbGlicmFyeSA+STxsaWJyYXJ5LXNvbmFtZT5CPCBuZWVkZWQgYnkgPkk8YmluYXJ5PkI8IChpdHMgUlBBVEggaXMgJz5JPHJwYXRoPkI8Jyk+IgorbXNnc3RyICJCPG5pZSBtb8W8bmEgem5hbGXFusSHIGJpYmxpb3Rla2kgPkk8c29uYW1lLWJpYmxpb3Rla2k+QjwgcG90cnplYm5laiBkbGEgPkk8cGxpa3VfYmluYXJuZWdvPkI8IChSUEFUSCB0byBcIj5JPHJwYXRoPkI8XCIpPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToyODUKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlRoZSBJPGJpbmFyeT4gdXNlcyBhIGxpYnJhcnkgY2FsbGVkIEk8bGlicmFyeS1zb25hbWU+IGJ1dCBCPGRwa2ctIgorI3wgInNobGliZGVwcz4gaGFzIGJlZW4gdW5hYmxlIHRvIGZpbmQgdGhlIGxpYnJhcnkuICBCPGRwa2ctc2hsaWJkZXBzPiAiCisjfCAiY3JlYXRlcyBhIGxpc3Qgb2YgZGlyZWN0b3JpZXMgdG8gY2hlY2sgYXMgZm9sbG93aW5nOiBkaXJlY3RvcmllcyBsaXN0ZWQgIgorI3wgImluIHRoZSBSUEFUSCBvZiB0aGUgYmluYXJ5LCBkaXJlY3RvcmllcyBsaXN0ZWQgaW4gL2V0Yy9sZC5zby5jb25mLCAiCisjfCAiZGlyZWN0b3JpZXMgbGlzdGVkIGluIHRoZSBMRF9MSUJSQVJZX1BBVEggZW52aXJvbm1lbnQgdmFyaWFibGUsIGFuZCAiCisjfCAic3RhbmRhcmQgcHVibGljIGRpcmVjdG9yaWVzICgvbGliLCAvdXNyL2xpYiwgL2xpYjMyLCAvdXNyL2xpYjMyLCAvbGliNjQsIC8iCisjfCAidXNyL2xpYjY0KS4gVGhlbiBpdCBjaGVja3MgdGhvc2UgZGlyZWN0b3JpZXMgaW4gdGhlIHBhY2thZ2UncyBidWlsZCB0cmVlICIKKyN8ICJvZiB0aGUgYmluYXJ5IGJlaW5nIGFuYWx5emVkLCBpbiB0aGUgcGFja2FnZXMncyBidWlsZCB0cmVlcyBpbmRpY2F0ZWQgIgorI3wgIndpdGggdGhlIC1TIGNvbW1hbmQtbGluZSBvcHRpb24sIGluIG90aGVyIHBhY2thZ2VzJ3MgYnVpbGQgdHJlZXMgdGhhdCAiCisjfCAiY29udGFpbnMgYSBERUJJQU4vc2hsaWJzIG9yIERFQklBTi9zeW1ib2xzIGZpbGUgYW5kIGZpbmFsbHkgaW4gdGhlIHJvb3QgIgorI3wgImRpcmVjdG9yeS4gIElmIHRoZSBsaWJyYXJ5IGlzIG5vdCBmb3VuZCBpbiBhbnkgb2YgdGhvc2UgZGlyZWN0b3JpZXMsIHRoZW4gIgorI3wgInlvdSBnZXQgdGhpcyBlcnJvci4iCittc2dpZCAiIgorIlRoZSBJPGJpbmFyeT4gdXNlcyBhIGxpYnJhcnkgY2FsbGVkIEk8bGlicmFyeS1zb25hbWU+IGJ1dCBCPGRwa2ctc2hsaWJkZXBzPiAiCisiaGFzIGJlZW4gdW5hYmxlIHRvIGZpbmQgdGhlIGxpYnJhcnkuICBCPGRwa2ctc2hsaWJkZXBzPiBjcmVhdGVzIGEgbGlzdCBvZiAiCisiZGlyZWN0b3JpZXMgdG8gY2hlY2sgYXMgZm9sbG93aW5nOiBkaXJlY3RvcmllcyBsaXN0ZWQgaW4gdGhlIFJQQVRIIG9mIHRoZSAiCisiYmluYXJ5LCBkaXJlY3RvcmllcyBsaXN0ZWQgaW4gL2V0Yy9sZC5zby5jb25mLCBkaXJlY3RvcmllcyBsaXN0ZWQgaW4gdGhlICIKKyJMRF9MSUJSQVJZX1BBVEggZW52aXJvbm1lbnQgdmFyaWFibGUsIGFuZCBzdGFuZGFyZCBwdWJsaWMgZGlyZWN0b3JpZXMgKC8iCisibGliLCAvdXNyL2xpYiwgL2xpYjMyLCAvdXNyL2xpYjMyLCAvbGliNjQsIC91c3IvbGliNjQpLiBUaGVuIGl0IGNoZWNrcyB0aG9zZSAiCisiZGlyZWN0b3JpZXMgaW4gdGhlIHBhY2thZ2UncyBidWlsZCB0cmVlIG9mIHRoZSBiaW5hcnkgYmVpbmcgYW5hbHl6ZWQsIGluIHRoZSAiCisicGFja2FnZXMnIGJ1aWxkIHRyZWVzIGluZGljYXRlZCB3aXRoIHRoZSAtUyBjb21tYW5kLWxpbmUgb3B0aW9uLCBpbiBvdGhlciAiCisicGFja2FnZXMnIGJ1aWxkIHRyZWVzIHRoYXQgY29udGFpbnMgYSBERUJJQU4vc2hsaWJzIG9yIERFQklBTi9zeW1ib2xzIGZpbGUgIgorImFuZCBmaW5hbGx5IGluIHRoZSByb290IGRpcmVjdG9yeS4gIElmIHRoZSBsaWJyYXJ5IGlzIG5vdCBmb3VuZCBpbiBhbnkgb2YgIgorInRob3NlIGRpcmVjdG9yaWVzLCB0aGVuIHlvdSBnZXQgdGhpcyBlcnJvci4iCittc2dzdHIgIiIKKyJCPHBsaWtfYmluYXJueT4gdcW8eXdhIGJpYmxpb3Rla2kgbyBuYXp3aWUgSTxzb25hbWUtYmlibGlvdGVraT4sIGFsZSBCPGRwa2ctIgorInNobGliZGVwcz4gbmllIG3Ds2fFgiBvZG5hbGXFusSHIHRlaiBiaWJsaW90ZWtpLiBCPGRwa2ctc2hsaWJkZXBzPiB0d29yenkgbGlzdMSZICIKKyJrYXRhbG9nw7N3IGRvIHNwcmF3ZHplbmlhIHcgbmFzdMSZcHVqxIVjeSBzcG9zw7NiOiBrYXRhbG9naSB3eW1pZW5pb25lIHcgUlBBVEggIgorInBsaWt1IGJpbmFybmVnbywga2F0YWxvZ2kgd3ltaWVuaW9uZSB3IC9ldGMvbGQuc28uY29uZiwga2F0YWxvZ2kgd3ltaWVuaW9uZSAiCisidyB6bWllbm5laiDFm3JvZG93aXNrb3dlaiBMRF9MSUJSQVJZX1BBVEgsIG9yYXogc3RhbmRhcmRvd2Uga2F0YWxvZ2kgIgorInB1YmxpY3puZSAoL2xpYiwgL3Vzci9saWIsIC9saWIzMiwgL3Vzci9saWIzMiwgL2xpYjY0LCAvdXNyL2xpYjY0KS4gIgorIk5hc3TEmXBuaWUgc3ByYXdkemEgcG9kb2JuaWUga2F0YWxvZ2kgdyBkcnpld2llIGJ1ZG93YW5pYSBwYWtpZXR1IGRsYSAiCisiYW5hbGl6b3dhbmVnbyBwbGlrdSBiaW5hcm5lZ28sIHcgZHJ6ZXdhY2ggYnVkb3dhbmlhIHBha2lldMOzdyBwb2RhbnljaCBqYWtvICIKKyJwYXJhbWV0cnkgb3BjamkgLVMsIHcgaW5ueWNoIGRyemV3YWNoIGJ1ZG93YW5pYSB6YXdpZXJhasSFY3ljaCBwbGlraSBERUJJQU4vIgorInNobGlicyBvbHViIERFQklBTi9zeW1ib2xzLCBhIG5hIGtvxYRjdSB3IGthdGFsb2d1IGfFgsOzd255bS4gSmXFm2xpIGJpYmxpb3Rla2EgIgorIm5pZSB6b3N0YW5pZSBvZG5hbGV6aW9uYSB3IMW8YWRueW0geiB0eWNoIGthdGFsb2fDs3csIG90cnp5bXVqZSBzacSZIHRlbiBixYLEhWQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjI5MQorbXNnaWQgIiIKKyJJZiB0aGUgbGlicmFyeSBub3QgZm91bmQgaXMgaW4gYSBwcml2YXRlIGRpcmVjdG9yeSBvZiB0aGUgc2FtZSBwYWNrYWdlLCB0aGVuICIKKyJ5b3Ugd2FudCB0byBhZGQgdGhlIGRpcmVjdG9yeSB0byBMRF9MSUJSQVJZX1BBVEguIElmIGl0J3MgaW4gYW5vdGhlciBiaW5hcnkgIgorInBhY2thZ2UgYmVpbmcgYnVpbHQsIHlvdSB3YW50IHRvIG1ha2Ugc3VyZSB0aGF0IHRoZSBzaGxpYnMvc3ltYm9scyBmaWxlIG9mICIKKyJ0aGlzIHBhY2thZ2UgaXMgYWxyZWFkeSBjcmVhdGVkIGFuZCB0aGF0IExEX0xJQlJBUllfUEFUSCBjb250YWlucyB0aGUgIgorImFwcHJvcHJpYXRlIGRpcmVjdG9yeSBpZiBpdCBhbHNvIGlzIGluIGEgcHJpdmF0ZSBkaXJlY3RvcnkuIgorbXNnc3RyICIiCisiSmXFm2xpIG5pZSBvZG5hbGV6aW9uYSBiaWJsaW90ZWthIGplc3QgdyBwcnl3YXRueW0ga2F0YWxvZ3UgdGVnbyBzYW1lZ28gIgorInBha2lldHUsIG5hbGXFvHkgZG9kYcSHIHRha2kga2F0YWxvZyBkbyBMRF9MSUJSQVJZX1BBVEguIEplxZtsaSBiaWJsaW90ZWthIGplc3QgIgorIncgaW5ueW0gYnVkb3dhbnltIGJpbmFybnltIHBha2llY2llLCBuYWxlxbx5IHVwZXduacSHIHNpxJksIMW8ZSBwbGlrIHNobGlicyBsdWIgIgorInBsaWsgc3ltYm9saSBkbGEgdGVnbyBwYWtpZXR1IHpvc3RhxYIgc3R3b3J6b255IG9yYXosIMW8ZSBMRF9MSUJSQVJZX1BBVEggIgorInphd2llcmEgb2Rwb3dpZWRuaSBrYXRhbG9nIGplxZtsaSBiaWJsaW90ZWthIHRha8W8ZSBqZXN0IHcga2F0YWxvZ3UgcHJ5d2F0bnltLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjkxCisjLCBuby13cmFwCittc2dpZCAiQjxubyBkZXBlbmRlbmN5IGluZm9ybWF0aW9uIGZvdW5kIGZvciA+STxsaWJyYXJ5LWZpbGU+QjwgKHVzZWQgYnkgPkk8YmluYXJ5PkI8KS4+IgorbXNnc3RyICJCPG5pZSB6bmFsZXppb25vIGluZm9ybWFjamkgbyB6YWxlxbxub8WbY2lhY2ggZGxhID5JPHBsaWstYmlibGlvdGVraT5CPCAodcW8eXdhbmVnbyBwcnpleiA+STxwbGlrLWJpbmFybnk+QjwpLj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MzA0Cittc2dpZCAiIgorIlRoZSBsaWJyYXJ5IG5lZWRlZCBieSBJPGJpbmFyeT4gaGFzIGJlZW4gZm91bmQgYnkgQjxkcGtnLXNobGliZGVwcz4gaW4gIgorIkk8bGlicmFyeS1maWxlPiBidXQgQjxkcGtnLXNobGliZGVwcz4gaGFzIGJlZW4gdW5hYmxlIHRvIGZpbmQgYW55IGRlcGVuZGVuY3kgIgorImluZm9ybWF0aW9uIGZvciB0aGF0IGxpYnJhcnkuIFRvIGZpbmQgb3V0IHRoZSBkZXBlbmRlbmN5LCBpdCBoYXMgdHJpZWQgdG8gIgorIm1hcCB0aGUgbGlicmFyeSB0byBhIERlYmlhbiBwYWNrYWdlIHdpdGggdGhlIGhlbHAgb2YgQjxkcGtnIC1TID5JPGxpYnJhcnktIgorImZpbGU+LiAgVGhlbiBpdCBjaGVja2VkIHRoZSBjb3JyZXNwb25kaW5nIHNobGlicyBhbmQgc3ltYm9scyBmaWxlcyBpbiAvdmFyLyIKKyJsaWIvZHBrZy9pbmZvLywgYW5kIGluIHRoZSB2YXJpb3VzIHBhY2thZ2UncyBidWlsZCB0cmVlcyAoZGViaWFuLyovREVCSUFOLykuIgorbXNnc3RyICIiCisiQmlibGlvdGVrYSB3eW1hZ2FuYSBwcnpleiBJPHBsaWstYmluYXJueT4gem9zdGHFgmEgem5hbGV6aW9uYSBwcnpleiBCPGRwa2ctIgorInNobGliZGVwcz4gdyBJPHBsaWt1LWJpYmxpb3Rla2k+LCBhbGUgQjxkcGtnLXNobGliZGVwcz4gbmllIG3Ds2fFgiBvZG5hbGXFusSHICIKKyLFvGFkbmVqIGluZm9ybWFjamkgbyB6YWxlxbxub8WbY2lhY2ggZGxhIHRlaiBiaWJsaW90ZWtpLiBBYnkgb2tyZcWbbGnEhyAiCisiemFsZcW8bm/Fm2NpLCBwb2RqxJl0byBwcsOzYsSZIHXFvHljaWEgQjxkcGtnIC1TPkk8cGxpay1iaWJsaW90ZWtpPiB3IGNlbHUgIgorIm9rcmXFm2xlbmlhIHBha2lldHUgZG9zdGFyY3phasSFY2VnbyBkYW7EhSBiaWJsaW90ZWvEmS4gTmFzdMSZcG5pZSBzcHJhd2R6b25vICIKKyJvZHBvd2llZG5pZSBwbGlraSBzaGxpYnMgaSBwbGlraSBzeW1ib2xpIHcgL3Zhci9saWIvZHBrZy9pbmZvLyBvcmF6IHcgIgorInLDs8W8bnljaCBkcnpld2FjaCBidWRvd2FuaWEgcGFraWV0w7N3IChkZWJpYW4vKi9ERUJJQU4vKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MzE4Cittc2dpZCAiIgorIlRoaXMgZmFpbHVyZSBjYW4gYmUgY2F1c2VkIGJ5IGEgYmFkIG9yIG1pc3Npbmcgc2hsaWJzIG9yIHN5bWJvbHMgZmlsZSBpbiB0aGUgIgorInBhY2thZ2Ugb2YgdGhlIGxpYnJhcnkuIEl0IG1pZ2h0IGFsc28gaGFwcGVuIGlmIHRoZSBsaWJyYXJ5IGlzIGJ1aWx0IHdpdGhpbiAiCisidGhlIHNhbWUgc291cmNlIHBhY2thZ2UgYW5kIGlmIHRoZSBzaGxpYnMgZmlsZXMgaGFzIG5vdCB5ZXQgYmVlbiBjcmVhdGVkIChpbiAiCisid2hpY2ggY2FzZSB5b3UgbXVzdCBmaXggZGViaWFuL3J1bGVzIHRvIGNyZWF0ZSB0aGUgc2hsaWJzIGJlZm9yZSBjYWxsaW5nICIKKyJCPGRwa2ctc2hsaWJkZXBzPikuIEJhZCBSUEFUSCBjYW4gYWxzbyBsZWFkIHRvIHRoZSBsaWJyYXJ5IGJlaW5nIGZvdW5kIHVuZGVyICIKKyJhIG5vbi1jYW5vbmljYWwgbmFtZSAoZXhhbXBsZTogL3Vzci9saWIvb3Blbm9mZmljZS5vcmcvLi4vbGliL2xpYnNzbC4iCisic28uMC45LjggaW5zdGVhZCBvZiAvdXNyL2xpYi9saWJzc2wuc28uMC45LjgpIHRoYXQncyBub3QgYXNzb2NpYXRlZCB0byBhbnkgIgorInBhY2thZ2UsIEI8ZHBrZy1zaGxpYmRlcHM+IHRyaWVzIHRvIHdvcmsgYXJvdW5kIHRoaXMgYnkgdHJ5aW5nIHRvIGZhbGxiYWNrICIKKyJvbiBhIGNhbm9uaWNhbCBuYW1lICh1c2luZyBCPHJlYWxwYXRoPigzKSkgIGJ1dCBpdCBtaWdodCBub3QgYWx3YXlzIHdvcmsuICIKKyJJdCdzIGFsd2F5cyBiZXN0IHRvIGNsZWFuIHVwIHRoZSBSUEFUSCBvZiB0aGUgYmluYXJ5IHRvIGF2b2lkIHByb2JsZW1zLiIKK21zZ3N0ciAiIgorIlRvIG5pZXBvd29kemVuaWUgbW/FvGUgYnnEhyBzcG93b2Rvd2FuZSBwcnpleiBuaWVwb3ByYXdueSBsdWIgbmllaXN0bmllasSFY3kgIgorInBsaWsgc2hsaWJzIGx1YiBwbGlrIHN5bWJvbGkgdyBwYWtpZWNpZSBiaWJsaW90ZWtpLiBNb8W8ZSBzacSZIHLDs3duaWXFvCB6ZGFyennEhyAiCisiamXFm2xpIGJpYmxpb3Rla2EgamVzdCBidWRvd2FuYSB3ZXduxIV0cnogdGVnbyBzYW1lZ28gcGFraWV0dSDFunLDs2TFgm93ZWdvLCBhICIKKyJwbGlraSBzaGxpYnMgamVzemN6ZSBuaWUgem9zdGHFgnkgc3R3b3J6b25lICh3IHRha2ltIHByenlwYWRrdSBuYWxlxbx5ICIKKyJwb3ByYXdpxIcgZGViaWFuL3J1bGVzIGFieSBzaGxpYnMgYnnFgnkgdHdvcnpvbmUgcHJ6ZWQgd3l3b8WCYW5pZW0gQjxkcGtnLSIKKyJzaGxpYmRlcHM+KS4gTmlld8WCYcWbY2l3YSB3YXJ0b8WbxIcgUlBBVEggbW/FvGUgcsOzd25pZcW8IHBvd29kb3dhxIcsIMW8ZSBiaWJsaW90ZWthICIKKyJ6b3N0YW5pZSBvZG5hbGV6aW9uYSBwb2QgbmlldHlwb3fEhSBuYXp3xIUsIGt0w7NyYSBuaWUgamVzdCB6d2nEhXphbmEgeiDFvGFkbnltICIKKyJwYWtpZXRlbSAobnAuIC91c3IvbGliL29wZW5vZmZpY2Uub3JnLy4uL2xpYi9saWJzc2wuc28uMC45LjggemFtaWFzdCAvdXNyLyIKKyJsaWIvbGlic3NsLnNvLjAuOS44KS4gQjxkcGtnLXNobGliZGVwcz4gcHLDs2J1amUgcG9yYWR6acSHIHNvYmllIHogdHltICIKKyJzdGFyYWrEhWMgc2nEmSBvZGN6eXRhxIcgbmF6d8SZIGthbm9uaWN6bsSFICh6IHXFvHljaWVtIEI8cmVhbHBhdGg+KDMpKSBhbGUgbW/FvGUgIgorInRvIG5pZSB6YXdzemUgemFkemlhxYJhxIcuIEFieSB1bmlrbsSFxIcgcHJvYmxlbcOzdywgbmFqbGVwaWVqIGplc3QgemF3c3plICIKKyJkb3Byb3dhZHppxIcgZG8gcG9yesSFZGt1IFJQQVRIIHBsaWt1IGJpbmFybmVnby4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MzI0Cittc2dpZCAiIgorIkNhbGxpbmcgQjxkcGtnLXNobGliZGVwcz4gaW4gdmVyYm9zZSBtb2RlICgtdikgd2lsbCBwcm92aWRlIG11Y2ggbW9yZSAiCisiaW5mb3JtYXRpb24gYWJvdXQgd2hlcmUgaXQgdHJpZWQgdG8gZmluZCB0aGUgZGVwZW5kZW5jeSBpbmZvcm1hdGlvbi4gVGhpcyAiCisibWlnaHQgYmUgdXNlZnVsIGlmIHlvdSBkb24ndCB1bmRlcnN0YW5kIHdoeSBpdCdzIGdpdmluZyB5b3UgdGhpcyBlcnJvci4iCittc2dzdHIgIiIKKyJXeXdvxYJhbmllIEI8ZHBrZy1zaGxpYmRlcHM+IHcgdHJ5YmllIHJvenN6ZXJ6b25laiBpbmZvcm1hY2ppICgtdikgZG9zdGFyY3phICIKKyJ3aWVsdSBkb2RhdGtvd3ljaCBpbmZvcm1hY2ppIG8gdHltLCBnZHppZSBwcsOzYm93YcWCIG9uIHpuYWxlxbrEhyBpbmZvcm1hY2rEmSBvICIKKyJ6YWxlxbxub8WbY2lhY2guIE1vxbxlIHRvIGJ5xIcgcHJ6eWRhdG5lIGplxZtsaSBuaWUgd2lhZG9tbyBkbGFjemVnbyB6d3JhY2FueSAiCisiamVzdCB0ZW4gYsWCxIVkLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTozMjgKK21zZ2lkICJCPGRlYi1zaGxpYnM+KDUpLCBCPGRlYi1zeW1ib2xzPig1KSwgQjxkcGtnLWdlbnN5bWJvbHM+KDEpLiIKK21zZ3N0ciAiQjxkZWItc2hsaWJzPig1KSwgQjxkZWItc3ltYm9scz4oNSksIEI8ZHBrZy1nZW5zeW1ib2xzPigxKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MzM1Cittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMDYgRnJhbmsgTGljaHRlbmhlbGQiCittc2dzdHIgIkNvcHlyaWdodCBcXChjbyAyMDA2IEZyYW5rIExpY2h0ZW5oZWxkIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1zb3VyY2UuMToyCisjLCBuby13cmFwCittc2dpZCAiZHBrZy1zb3VyY2UiCittc2dzdHIgImRwa2ctc291cmNlIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjUKK21zZ2lkICJkcGtnLXNvdXJjZSAtIERlYmlhbiBzb3VyY2UgcGFja2FnZSAoLmRzYykgbWFuaXB1bGF0aW9uIHRvb2wiCittc2dzdHIgIiIKKyJkcGtnLXNvdXJjZSAtIG5hcnrEmWR6aWEgZG8gemFyesSFZHphbmlhIMW6csOzZMWCb3d5bWkgcGFraWV0YW1pIERlYmlhbmEgKC5kc2MpIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjkKKyMsIGZ1enp5CisjfCBtc2dpZCAiQjxkcGtnLXNvdXJjZT4gW0k8b3B0aW9ucz5dIEk8Y29tbWFuZD4iCittc2dpZCAiQjxkcGtnLXNvdXJjZT4gW0k8b3B0aW9uPi4uLl0gSTxjb21tYW5kPiIKK21zZ3N0ciAiQjxkcGtnLXNvdXJjZT4gW0k8b3BjamU+XSBJPHBvbGVjZW5pZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MTMKK21zZ2lkICJCPGRwa2ctc291cmNlPiBwYWNrcyBhbmQgdW5wYWNrcyBEZWJpYW4gc291cmNlIGFyY2hpdmVzLiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1zb3VyY2U+IHR3b3J6eSBpIHJvenBha293dWplIMW6csOzZMWCb3dlIGFyY2hpd2EgKHBha2lldHkpIERlYmlhbmEuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjE3Cittc2dpZCAiIgorIk5vbmUgb2YgdGhlc2UgY29tbWFuZHMgYWxsb3cgbXVsdGlwbGUgb3B0aW9ucyB0byBiZSBjb21iaW5lZCBpbnRvIG9uZSwgYW5kICIKKyJ0aGV5IGRvIG5vdCBhbGxvdyB0aGUgdmFsdWUgZm9yIGFuIG9wdGlvbiB0byBiZSBzcGVjaWZpZWQgaW4gYSBzZXBhcmF0ZSAiCisiYXJndW1lbnQuIgorbXNnc3RyICIiCisixbthZG5lIHogdHljaCBwb2xlY2XFhCBuaWUgcG96d2FsYSBuYSDFgsSFY3plbmllIHdpZWx1IG9wY2ppIHcgamVkbsSFLCBuaWUgIgorInBvendhbGFqxIUgcsOzd25pZcW8IG5hIHBvZGF3YW5pZSB3YXJ0b8WbY2kgb3BjamkgamFrbyBvZGR6aWVsbmVnbyBwYXJhbWV0cnUuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMToxOQorIywgbm8td3JhcAorbXNnaWQgIkI8LXggPkk8ZmlsZW5hbWU+QjwuZHNjID5bSTxvdXRwdXQtZGlyZWN0b3J5Pl0iCittc2dzdHIgIkI8LXggPkk8bmF6d2EtcGxpa3U+QjwuZHNjID5bSTxrYXRhbG9nLXd5asWbY2lvd3k+XSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToyOQorbXNnaWQgIiIKKyJFeHRyYWN0IGEgc291cmNlIHBhY2thZ2UuIE9uZSBub24tb3B0aW9uIGFyZ3VtZW50IG11c3QgYmUgc3VwcGxpZWQsIHRoZSBuYW1lICIKKyJvZiB0aGUgRGViaWFuIHNvdXJjZSBjb250cm9sIGZpbGUgKEI8LmRzYz4pLiAgQW4gb3B0aW9uYWwgc2Vjb25kIG5vbi1vcHRpb24gIgorImFyZ3VtZW50IG1heSBiZSBzdXBwbGllZCB0byBzcGVjaWZ5IHRoZSBkaXJlY3RvcnkgdG8gZXh0cmFjdCB0aGUgc291cmNlICIKKyJwYWNrYWdlIHRvLCB0aGlzIG11c3Qgbm90IGV4aXN0LiBJZiBubyBvdXRwdXQgZGlyZWN0b3J5IGlzIHNwZWNpZmllZCwgdGhlICIKKyJzb3VyY2UgcGFja2FnZSBpcyBleHRyYWN0ZWQgaW50byBhIGRpcmVjdG9yeSBuYW1lZCBJPHNvdXJjZT4tSTx2ZXJzaW9uPiAiCisidW5kZXIgdGhlIGN1cnJlbnQgd29ya2luZyBkaXJlY3RvcnkuIgorbXNnc3RyICIiCisiUm96cGFrb3dhbmllIHBha2lldHUgxbpyw7NkxYJvd2Vnby4gV3ltYWdhbmUgamVzdCBwb2RhbmllIGplZG5lZ28gYXJndW1lbnR1IG5pZSAiCisiYsSZZMSFY2VnbyBvcGNqxIUsIG5hend5IHBsaWt1IGtvbnRyb2xueSBwYWtpZXR1IMW6csOzZMWCb3dlZ28gKEI8LmRzYz4pLiBQb25hZHRvICIKKyJtb8W8ZSBiecSHIHBvZGFueSBkcnVnaSBvcGNqb25hbG55IGFyZ3VtZW50IG5pZWLEmWTEhWN5IG9wY2rEhSwgb2tyZcWbbGFqxIVjeSAiCisia2F0YWxvZywgZG8ga3TDs3JlZ28gcGFraWV0IMW6csOzZMWCb3d5IG1hIHpvc3RhxIcgcm96cGFrb3dhbnkgKGthdGFsb2cgdGVuIG5pZSAiCisibW/FvGUgaXN0bmllxIcpLiBKZcWbbGkgbmllIHBvZGFubyBrYXRhbG9ndSB3eWrFm2Npb3dlZ28sIHBha2lldCDFunLDs2TFgm93eSBqZXN0ICIKKyJyb3pwYWtvd3l3YW55IGRvIGthdGFsb2d1IG8gbmF6d2llIEk8xbpyw7NkxYJvPi1JPHdlcnNqYT4gdyByYW1hY2ggYmllxbzEhWNlZ28gIgorImthdGFsb2d1IHJvYm9jemVnby4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MzUKK21zZ2lkICIiCisiQjxkcGtnLXNvdXJjZT4gd2lsbCByZWFkIHRoZSBuYW1lcyBvZiB0aGUgb3RoZXIgZmlsZShzKSBtYWtpbmcgdXAgdGhlIHNvdXJjZSAiCisicGFja2FnZSBmcm9tIHRoZSBjb250cm9sIGZpbGU7IHRoZXkgYXJlIGFzc3VtZWQgdG8gYmUgaW4gdGhlIHNhbWUgZGlyZWN0b3J5ICIKKyJhcyB0aGUgQjwuZHNjPi4iCittc2dzdHIgIiIKKyJCPGRwa2ctc291cmNlPiBvZGN6eXRhIG5hend5IGlubnljaCBwbGlrw7N3IHR3b3J6xIVjeWNoIHBha2lldCDFunLDs2TFgm93eSB6ICIKKyJwbGlrdSBrb250cm9sbmVnbzsgemFrxYJhZGFuZSBqZXN0LCDFvGUgc8SFIG9uZSB3IHR5bSBzYW15bSBrYXRhbG9ndSBjbyBCPC5kc2M+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo0MworbXNnaWQgIiIKKyJUaGUgZmlsZXMgaW4gdGhlIGV4dHJhY3RlZCBwYWNrYWdlIHdpbGwgaGF2ZSB0aGVpciBwZXJtaXNzaW9ucyBhbmQgIgorIm93bmVyc2hpcHMgc2V0IHRvIHRob3NlIHdoaWNoIHdvdWxkIGhhdmUgYmVlbiBleHBlY3RlZCBpZiB0aGUgZmlsZXMgYW5kICIKKyJkaXJlY3RvcmllcyBoYWQgc2ltcGx5IGJlZW4gY3JlYXRlZCAtIGRpcmVjdG9yaWVzIGFuZCBleGVjdXRhYmxlIGZpbGVzIHdpbGwgIgorImJlIDA3NzcgYW5kIHBsYWluIGZpbGVzIHdpbGwgYmUgMDY2NiwgYm90aCBtb2RpZmllZCBieSB0aGUgZXh0cmFjdG9ycycgIgorInVtYXNrOyBpZiB0aGUgcGFyZW50IGRpcmVjdG9yeSBpcyBzZXRnaWQgdGhlbiB0aGUgZXh0cmFjdGVkIGRpcmVjdG9yaWVzIHdpbGwgIgorImJlIHRvbywgYW5kIGFsbCB0aGUgZmlsZXMgYW5kIGRpcmVjdG9yaWVzIHdpbGwgaW5oZXJpdCBpdHMgZ3JvdXAgb3duZXJzaGlwLiIKK21zZ3N0ciAiIgorIlBsaWtpIHcgcm96cGFrb3dhbnltIHBha2llY2llIGLEmWTEhSBtaWXEhyB1cHJhd25pZW5pYSBpIHfFgmHFm2NpY2llbGEgemdvZG5pZSB6ICIKKyJ0eXBvd3ltaSwgb2N6ZWtpd2FueW1pIHdhcnRvxZtjaWFtaSBqYWsgcHJ6eSB6d3lrxYJ5bSB0d29yemVuaXUgcGxpa8OzdyBpICIKKyJrYXRhbG9nw7N3IC0ga2F0YWxvZ2kgaSBwbGlraSB3eWtvbnl3YWxuZSBixJlkxIUgbWllxIcgcHJhd2EgMDc3NywgemHFmyB6d3lrxYJlICIKKyJwbGlraSBixJlkxIUgbWllxIcgcHJhd2EgMDY2NiAodyBvYnUgcHJ6eXBhZGthY2ggbW9keWZpa293YW5lIHByemV6IHVtYXNrICIKKyJyb3pwYWtvd3VqxIVjZWdvKS4gUG9uYWR0byBqZcWbbGkga2F0YWxvZyBuYWRyesSZZG55IG1hIHVzdGF3aW9ueSBiaXQgc2V0Z2lkLCAiCisicm96cGFrb3dhbmUga2F0YWxvZ2kgdGFrxbxlIGLEmWTEhSBnbyBtaWXEhywgemHFmyB3c3p5c3RraWUgcGxpa2kgaSBrYXRhbG9naSAiCisicHJ6ZWptxIUgdXN0YXdpZW5pYSBncnVweSBrYXRhbG9ndSBuYWRyesSZZG5lZ28uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjQ4Cittc2dpZCAiIgorIklmIHRoZSBzb3VyY2UgcGFja2FnZSB1c2VzIGEgbm9uLXN0YW5kYXJkIGZvcm1hdCAoY3VycmVudGx5IHRoaXMgbWVhbnMgYWxsICIKKyJmb3JtYXRzIGV4Y2VwdCBcIjEuMFwiKSwgaXRzIG5hbWUgd2lsbCBiZSBzdG9yZWQgaW4gQjxkZWJpYW4vc291cmNlL2Zvcm1hdD4gIgorInNvIHRoYXQgdGhlIGZvbGxvd2luZyBidWlsZHMgb2YgdGhlIHNvdXJjZSBwYWNrYWdlIHVzZSB0aGUgc2FtZSBmb3JtYXQgYnkgIgorImRlZmF1bHQuIgorbXNnc3RyICIiCisiSmXFm2xpIHBha2lldCDFunLDs2TFgm93eSB1xbx5d2Egbmllc3RhbmRhcmRvd2VnbyBmb3JtYXR1IChha3R1YWxuaWUgb3puYWN6YSB0byAiCisid3N6eXN0a2llIGZvcm1hdHkgcG96YSBcIjEuMFwiKSwgamVnbyBuYXp3YSBixJlkemllIHVtaWVzemN6b25hIHcgcGxpa3UgIgorIkI8ZGViaWFuL3NvdXJjZS9mb3JtYXQ+LiBEemnEmWtpIHRlbXUgcHJ6eSBuYXN0xJlwbnljaCBidWRvd2FjaCBwYWtpZXR1ICIKKyLFunLDs2TFgm93ZWdvIGLEmWR6aWUgZG9tecWbbG5pZSB1xbx5d2FueSB0ZW4gc2FtIGZvcm1hdC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjQ5CisjLCBuby13cmFwCittc2dpZCAiQjwtYj4gSTxkaXJlY3Rvcnk+IFtJPGZvcm1hdC1zcGVjaWZpYy1wYXJhbWV0ZXJzPl0iCittc2dzdHIgIkI8LWI+LCBJPGthdGFsb2c+IFtJPHBhcmFtZXRyeS16YWxlxbxuZS1vZC1mb3JtYXR1Pl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTYKK21zZ2lkICIiCisiQnVpbGQgYSBzb3VyY2UgcGFja2FnZS4gVGhlIGZpcnN0IG5vbi1vcHRpb24gYXJndW1lbnQgaXMgdGFrZW4gYXMgdGhlIG5hbWUgIgorIm9mIHRoZSBkaXJlY3RvcnkgY29udGFpbmluZyB0aGUgZGViaWFuaXplZCBzb3VyY2UgdHJlZSAoaS5lLiB3aXRoIGEgZGViaWFuICIKKyJzdWItZGlyZWN0b3J5IGFuZCBtYXliZSBjaGFuZ2VzIHRvIHRoZSBvcmlnaW5hbCBmaWxlcykuICBEZXBlbmRpbmcgb24gdGhlICIKKyJzb3VyY2UgcGFja2FnZSBmb3JtYXQgdXNlZCB0byBidWlsZCB0aGUgcGFja2FnZSwgYWRkaXRpb25hbCBwYXJhbWV0ZXJzIG1pZ2h0ICIKKyJiZSBhY2NlcHRlZC4iCittc2dzdHIgIiIKKyJCdWRvd2FuaWUgcGFraWV0dSDFunLDs2TFgm93ZWdvLiBQaWVyd3N6eSBhcmd1bWVudCBuaWUgYsSZZMSFY3kgb3BjasSFIHByenlqbW93YW55ICIKKyJqZXN0IGpha28gbmF6d2Ega2F0YWxvZ3UgemRlYmlhbml6b3dhbmVnbyBkcnpld2EgemUgxbpyw7NkxYJhbWkgKGN6eWxpICIKKyJ6YXdpZXJhasSFY2VnbyBwb2RrYXRhbG9nIFwiZGViaWFuXCIgaSBiecSHIG1vxbxlIHptaWFueSB3IHN0b3N1bmt1IGRvICIKKyJvcnlnaW5hbG55Y2ggcGxpa8OzdykuIFphbGXFvG5pZSBvZCBmb3JtYXR1IHBha2lldHUgxbpyw7NkxYJvd2VnbyB1xbx5d2FuZWdvIHByenkgIgorImJ1ZG93YW5pdSBwYWtpZXR1LCBtb2fEhSBiecSHIHLDs3duaWXFvCBha2NlcHRvd2FuZSBkb2RhdGtvd2UgcGFyYW1ldHJ5LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2NQorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiQjxkcGtnLXNvdXJjZT4gd2lsbCBidWlsZCB0aGUgc291cmNlIHBhY2thZ2Ugd2l0aCB0aGUgZmlyc3QgZm9ybWF0IHRoYXQgIgorI3wgIndvcmtzIGZyb20gdGhpcyBvcmRlcmVkIGxpc3Q6IHRoZSBmb3JtYXQocykgaW5kaWNhdGVkIHdpdGggdGhlIEk8LS0iCisjfCAiZm9ybWF0PiBjb21tYW5kLWxpbmUgb3B0aW9uKHMpLCB0aGUgZm9ybWF0IGluZGljYXRlZCBpbiBCPGRlYmlhbi9zb3VyY2UvIgorI3wgImZvcm1hdD4sIFwiMS4wXCIsIFwiMy4wIChuYXRpdmUpXCIuIFNlZSBzZWN0aW9uIEI8U09VUkNFIFBBQ0tBR0UgRk9STUFUUz4gIgorI3wgImZvciBhbiBleHRlbnNpdmUgZGVzY3JpcHRpb24gb2YgdGhlIHZhcmlvdXMgc291cmNlIHBhY2thZ2UgZm9ybWF0cy4iCittc2dpZCAiIgorIkI8ZHBrZy1zb3VyY2U+IHdpbGwgYnVpbGQgdGhlIHNvdXJjZSBwYWNrYWdlIHdpdGggdGhlIGZpcnN0IGZvcm1hdCBmb3VuZCBpbiAiCisidGhpcyBvcmRlcmVkIGxpc3Q6IHRoZSBmb3JtYXQgaW5kaWNhdGVkIHdpdGggdGhlIEk8LS1mb3JtYXQ+IGNvbW1hbmQgbGluZSAiCisib3B0aW9uLCB0aGUgZm9ybWF0IGluZGljYXRlZCBpbiBCPGRlYmlhbi9zb3VyY2UvZm9ybWF0PiwgXCIxLjBcIi4gVGhlICIKKyJmYWxsYmFjayB0byBcIjEuMFwiIGlzIGRlcHJlY2F0ZWQgYW5kIHdpbGwgYmUgcmVtb3ZlZCBhdCBzb21lIHBvaW50IGluIHRoZSAiCisiZnV0dXJlLCB5b3Ugc2hvdWxkIGFsd2F5cyBkb2N1bWVudCB0aGUgZGVzaXJlZCBzb3VyY2UgZm9ybWF0IGluIEI8ZGViaWFuLyIKKyJzb3VyY2UvZm9ybWF0Pi4gU2VlIHNlY3Rpb24gQjxTT1VSQ0UgUEFDS0FHRSBGT1JNQVRTPiBmb3IgYW4gZXh0ZW5zaXZlICIKKyJkZXNjcmlwdGlvbiBvZiB0aGUgdmFyaW91cyBzb3VyY2UgcGFja2FnZSBmb3JtYXRzLiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1zb3VyY2U+IGLEmWR6aWUgYnVkb3dhxIcgcGFraWV0IMW6csOzZMWCb3d5IHogdcW8eWNpZW0gcGllcndzemVnbyAiCisiZHppYcWCYWrEhWNlZ28gZm9ybWF0dSB6IG5hc3TEmXB1asSFY2VqIGxpc3R5LCB3IGtvbGVqbm/Fm2NpOiBmb3JtYXQoeSkgb2tyZcWbbG9ueSIKKyIoZSkgemEgcG9tb2PEhSBvcGNqaSBJPC0tZm9ybWF0PiwgZm9ybWF0IG9rcmXFm2xvbnkgdyBwbGlrdSBCPGRlYmlhbi9zb3VyY2UvIgorImZvcm1hdD4sIFwiMS4wXCIsIFwiMy4wIChuYXRpdmUpXCIuIFcgc2VrY2ppIEI8Rk9STUFUWSBQQUtJRVTDk1cgxblSw5NExYFPV1lDSD4gIgorIm1vxbxuYSB6bmFsZcW6xIcgd3ljemVycHVqxIVjeSBvcGlzIHLDs8W8bnljaCBmb3JtYXTDs3cgcGFraWV0w7N3IMW6csOzZMWCb3d5Y2guIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTo2NgorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPC0tYWRtaW5kaXI+STwgZGlyZWN0b3J5PiIKK21zZ2lkICJCPC0tcHJpbnQtZm9ybWF0PiBJPGRpcmVjdG9yeT4iCittc2dzdHIgIkI8LS1hZG1pbmRpcj5JPCBrYXRhbG9nPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo3MQorbXNnaWQgIiIKKyJQcmludCB0aGUgc291cmNlIGZvcm1hdCB0aGF0IHdvdWxkIGJlIHVzZWQgdG8gYnVpbGQgdGhlIHNvdXJjZSBwYWNrYWdlIGlmICIKKyJCPGRwa2ctc291cmNlIC1iID5JPGRpcmVjdG9yeT4gd2FzIGNhbGxlZCAoaW4gdGhlIHNhbWUgY29uZGl0aW9ucyBhbmQgd2l0aCAiCisidGhlIHNhbWUgcGFyYW1ldGVycykuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjcyCisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8LS1kZXBvdGRpcj5JPCBkaXJlY3Rvcnk+IgorbXNnaWQgIkI8LS1iZWZvcmUtYnVpbGQ+IEk8ZGlyZWN0b3J5PiIKK21zZ3N0ciAiQjwtLWRlcG90ZGlyPkk8IGthdGFsb2c+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjgxCittc2dpZCAiIgorIlJ1biB0aGUgY29ycmVzcG9uZGluZyBob29rIG9mIHRoZSBzb3VyY2UgcGFja2FnZSBmb3JtYXQuIFRoaXMgaG9vayBpcyBjYWxsZWQgIgorImJlZm9yZSBhbnkgYnVpbGQgb2YgdGhlIHBhY2thZ2UgKEI8ZHBrZy1idWlsZHBhY2thZ2U+IGNhbGxzIGl0IHZlcnkgZWFybHkgIgorImV2ZW4gYmVmb3JlIEI8ZGViaWFuL3J1bGVzIGNsZWFuPikuIFRoaXMgY29tbWFuZCBpcyBpZGVtcG90ZW50IGFuZCBjYW4gYmUgIgorImNhbGxlZCBtdWx0aXBsZSB0aW1lcy4gTm90IGFsbCBzb3VyY2UgZm9ybWF0cyBpbXBsZW1lbnQgc29tZXRoaW5nIGluIHRoaXMgIgorImhvb2ssIGFuZCB0aG9zZSB0aGF0IGRvIHVzdWFsbHkgcHJlcGFyZSB0aGUgc291cmNlIHRyZWUgZm9yIHRoZSBidWlsZCBmb3IgIgorImV4YW1wbGUgYnkgZW5zdXJpbmcgdGhhdCB0aGUgRGViaWFuIHBhdGNoZXMgYXJlIGFwcGxpZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjgyCisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8LS1hbHRkaXI+STwgZGlyZWN0b3J5PiIKK21zZ2lkICJCPC0tYWZ0ZXItYnVpbGQ+IEk8ZGlyZWN0b3J5PiIKK21zZ3N0ciAiQjwtLWFsdGRpcj5JPCBrYXRhbG9nPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo4OQorbXNnaWQgIiIKKyJSdW4gdGhlIGNvcnJlc3BvbmRpbmcgaG9vayBvZiB0aGUgc291cmNlIHBhY2thZ2UgZm9ybWF0LiBUaGlzIGhvb2sgaXMgY2FsbGVkICIKKyJhZnRlciBhbnkgYnVpbGQgb2YgdGhlIHBhY2thZ2UgKEI8ZHBrZy1idWlsZHBhY2thZ2U+IGNhbGxzIGl0IGxhc3QpLiBUaGlzICIKKyJjb21tYW5kIGlzIGlkZW1wb3RlbnQgYW5kIGNhbiBiZSBjYWxsZWQgbXVsdGlwbGUgdGltZXMuIE5vdCBhbGwgc291cmNlICIKKyJmb3JtYXRzIGltcGxlbWVudCBzb21ldGhpbmcgaW4gdGhpcyBob29rLCBhbmQgdGhvc2UgdGhhdCBkbyB1c3VhbGx5IHVzZSBpdCAiCisidG8gdW5kbyB3aGF0IEI8LS1iZWZvcmUtYnVpbGQ+IGhhcyBkb25lLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTo5MAorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPC0tYWRtaW5kaXI+STwgZGlyZWN0b3J5PiIKK21zZ2lkICJCPC0tY29tbWl0PiBbSTxkaXJlY3Rvcnk+XSAuLi4iCittc2dzdHIgIkI8LS1hZG1pbmRpcj5JPCBrYXRhbG9nPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo5NQorbXNnaWQgIiIKKyJSZWNvcmQgY2hhbmdlcyBpbiB0aGUgc291cmNlIHRyZWUgdW5wYWNrZWQgaW4gSTxkaXJlY3Rvcnk+LiBUaGlzIGNvbW1hbmQgY2FuICIKKyJ0YWtlIHN1cHBsZW1lbnRhcnkgcGFyYW1ldGVycyBkZXBlbmRpbmcgb24gdGhlIHNvdXJjZSBmb3JtYXQuICBJdCB3aWxsIGVycm9yICIKKyJvdXQgZm9yIGZvcm1hdHMgd2hlcmUgdGhpcyBvcGVyYXRpb24gZG9lc24ndCBtZWFuIGFueXRoaW5nLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1zb3VyY2UuMToxMDMKKyMsIG5vLXdyYXAKK21zZ2lkICJHRU5FUklDIEJVSUxEIE9QVElPTlMiCittc2dzdHIgIk9Hw5NMTkUgT1BDSkUgQlVET1dBTklBIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjExMQorbXNnaWQgIiIKKyJTcGVjaWZpZXMgdGhlIG1haW4gc291cmNlIGNvbnRyb2wgZmlsZSB0byByZWFkIGluZm9ybWF0aW9uIGZyb20uIFRoZSBkZWZhdWx0ICIKKyJpcyBCPGRlYmlhbi9jb250cm9sPi4gIElmIGdpdmVuIHdpdGggcmVsYXRpdmUgcGF0aG5hbWUgdGhpcyBpcyBpbnRlcnByZXRlZCAiCisic3RhcnRpbmcgYXQgdGhlIHNvdXJjZSB0cmVlJ3MgdG9wIGxldmVsIGRpcmVjdG9yeS4iCittc2dzdHIgIiIKKyJPa3JlxZtsYSBnxYLDs3dueSBwbGlrIGtvbnRyb2xueSDFunLDs2RlxYIsIHoga3TDs3JlZ28gYsSZZMSFIGN6eXRhbmUgaW5mb3JtYWNqZS4gIgorIkRvbXnFm2xuaWUgamVzdCB0byBCPGRlYmlhbi9jb250cm9sPi4gSmXFm2xpIHBvZGFubyB3emdsxJlkbsSFIMWbY2llxbxrxJksIHRvIGplc3QgIgorIm9uYSBpbnRlcnByZXRvd2FuYSBvZCBuYWp3ecW8c3plZ28gcG96aW9tdSBrYXRhbG9ndSBkcnpld2EgemUgxbpyw7NkxYJhbWkuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjExOAorbXNnaWQgIiIKKyJTcGVjaWZpZXMgdGhlIGNoYW5nZSBsb2cgZmlsZSB0byByZWFkIGluZm9ybWF0aW9uIGZyb20uIFRoZSBkZWZhdWx0IGlzICIKKyJCPGRlYmlhbi9jaGFuZ2Vsb2c+LiAgSWYgZ2l2ZW4gd2l0aCByZWxhdGl2ZSBwYXRobmFtZSB0aGlzIGlzIGludGVycHJldGVkICIKKyJzdGFydGluZyBhdCB0aGUgc291cmNlIHRyZWUncyB0b3AgbGV2ZWwgZGlyZWN0b3J5LiIKK21zZ3N0ciAiIgorIk9rcmXFm2xhIGR6aWVubmlrIHptaWFuLCB6IGt0w7NyZWdvIGLEmWTEhSBjenl0YW5lIGluZm9ybWFjamUuIERvbXnFm2xuaWUgamVzdCB0byAiCisiQjxkZWJpYW4vY2hhbmdlbG9nPi4gSmXFm2xpIHBvZGFubyB3emdsxJlkbsSFIMWbY2llxbxrxJksIHRvIGplc3Qgb25hICIKKyJpbnRlcnByZXRvd2FuYSBvZCBuYWp3ecW8c3plZ28gcG96aW9tdSBrYXRhbG9ndSBkcnpld2EgemUgxbpyw7NkxYJhbWkuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMToxMjMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tZm9ybWF0PT5JPHZhbHVlPiIKK21zZ3N0ciAiQjwtLWZvcm1hdD0+STx3YXJ0b8WbxIc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjEyNworIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiVHJ5IGZpcnN0IHRoZSBnaXZlbiBmb3JtYXQgZm9yIGJ1aWxkaW5nIHRoZSBzb3VyY2UgcGFja2FnZS4gSWYgdXNlZCAiCisjfCAibXVsdGlwbGUgdGltZXMsIHRoZXkgYXJlIHRyaWVkIGluIG9yZGVyLiBJdCBkb2VzIG92ZXJyaWRlIGFueSBmb3JtYXQgIgorI3wgImdpdmVuIGluIEI8ZGViaWFuL3NvdXJjZS9mb3JtYXQ+LiIKK21zZ2lkICIiCisiVXNlIHRoZSBnaXZlbiBmb3JtYXQgZm9yIGJ1aWxkaW5nIHRoZSBzb3VyY2UgcGFja2FnZS4gSXQgZG9lcyBvdmVycmlkZSBhbnkgIgorImZvcm1hdCBnaXZlbiBpbiBCPGRlYmlhbi9zb3VyY2UvZm9ybWF0Pi4iCittc2dzdHIgIiIKKyJEbyBidWRvd3kgcGFraWV0dSDFunLDs2TFgm93ZWdvIHByw7Nib3dhbnkgamVzdCBuYWpwaWVydyBwb2RhbnkgZm9ybWF0LiBKZcWbbGkgIgorIm9wY2phIHRhIGplc3QgdcW8eXRhIHdpZWxva3JvdG5pZSwgZm9ybWF0eSBzxIUgcHLDs2Jvd2FuZSB3IHBvZGFuZWoga29sZWpub8WbY2kuICIKKyJOYWRwaXN1amUgdG8ga2HFvGR5IGZvcm1hdCBwb2RhbnkgdyBwbGlrdSBCPGRlYmlhbi9zb3VyY2UvZm9ybWF0Pi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MTM3CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJSZWFkIHN1YnN0aXR1dGlvbiB2YXJpYWJsZXMgaW4gSTxzdWJzdHZhcnNmaWxlPjsgdGhlIGRlZmF1bHQgaXMgdG8gbm90ICIKKyN8ICJyZWFkIGFueSBmaWxlLiIKK21zZ2lkICIiCisiUmVhZCBzdWJzdGl0dXRpb24gdmFyaWFibGVzIGluIEk8c3Vic3R2YXJzZmlsZT47IHRoZSBkZWZhdWx0IGlzIHRvIG5vdCByZWFkICIKKyJhbnkgZmlsZS4gVGhpcyBvcHRpb24gY2FuIGJlIHVzZWQgbXVsdGlwbGUgdGltZXMgdG8gcmVhZCBzdWJzdGl0dXRpb24gIgorInZhcmlhYmxlcyBmcm9tIG11bHRpcGxlIGZpbGVzLiIKK21zZ3N0ciAiIgorIkN6eXRhIHptaWVubmUgcG9kc3Rhd2lhbmlhIHogSTxwbGlrdV96bWllbm55Y2hfcG9kc3Q+OyBkb215xZtsbmllIG5pZSBjenl0YSAiCisixbxhZG5lZ28gcGxpa3UuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMToxNDMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1aPkk8Y29tcHJlc3Npb24+LCBCPC0tY29tcHJlc3Npb24+PUk8Y29tcHJlc3Npb24+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MTUxCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJTcGVjaWZ5IHRoZSBjb21wcmVzc2lvbiB0byB1c2UgZm9yIGNyZWF0ZWQgZmlsZXMgKHRhcmJhbGxzIGFuZCBkaWZmcykuICAiCisjfCAiTm90ZSB0aGF0IHRoaXMgb3B0aW9uIHdpbGwgbm90IGNhdXNlIGV4aXN0aW5nIHRhcmJhbGxzIHRvIGJlICIKKyN8ICJyZWNvbXByZXNzZWQsIGl0IG9ubHkgYWZmZWN0cyBuZXcgZmlsZXMuIFN1cHBvcnRlZCB2YWx1ZXMgYXJlOiBJPGd6aXA+LCAiCisjfCAiSTxiemlwMj4sIGFuZCBJPGx6bWE+LiAgSTxnemlwPiBpcyB0aGUgZGVmYXVsdC4iCittc2dpZCAiIgorIlNwZWNpZnkgdGhlIGNvbXByZXNzaW9uIHRvIHVzZSBmb3IgY3JlYXRlZCBmaWxlcyAodGFyYmFsbHMgYW5kIGRpZmZzKS4gIE5vdGUgIgorInRoYXQgdGhpcyBvcHRpb24gd2lsbCBub3QgY2F1c2UgZXhpc3RpbmcgdGFyYmFsbHMgdG8gYmUgcmVjb21wcmVzc2VkLCBpdCAiCisib25seSBhZmZlY3RzIG5ldyBmaWxlcy4gU3VwcG9ydGVkIHZhbHVlcyBhcmU6IEk8Z3ppcD4sIEk8YnppcDI+LCBJPGx6bWE+IGFuZCAiCisiSTx4ej4uICBJPGd6aXA+IGlzIHRoZSBkZWZhdWx0LiBJPHh6PiBpcyBvbmx5IHN1cHBvcnRlZCBzaW5jZSBkcGtnLWRldiAiCisiMS4xNS41LiIKK21zZ3N0ciAiIgorIk9rcmXFm2xhIHJvZHphaiBrb21wcmVzamkgdcW8eXdhbmVqIHBvZGN6YXMgdHdvcnplbmlhIHBsaWvDs3cgKGFyY2hpd8OzdyB0YXIgIgorIm9yYXogcGxpa8OzdyByw7PFvG5pYykuIFV3YWdhOiBvcGNqYSB0YSBuaWUgc3Bvd29kdWplLCDFvGUgaXN0bmllasSFY2UgYXJjaGl3YSAiCisidGFyIGLEmWTEhSBwb25vd25pZSBrb21wcmVzb3dhbmUsIGxlY3ogbWEgemFzdG9zb3dhbmllIHR5bGtvIGRvIHBsaWvDs3cgbm93byAiCisidHdvcnpvbnljaC4gT2JzxYJ1Z2l3YW5lIHdhcnRvxZtjaTogSTxnemlwPiwgSTxiemlwMj4gb3JheiBJPGx6bWE+LiBJPGd6aXA+ICIKKyJqZXN0IHdhcnRvxZtjacSFIGRvbXnFm2xuxIUuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMToxNTEKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjwtej5JPGNvbXByZXNzX2xldmVsPiIKK21zZ2lkICJCPC16Pkk8bGV2ZWw+LCBCPC0tY29tcHJlc3Npb24tbGV2ZWw+PUk8bGV2ZWw+IgorbXNnc3RyICJCPC16Pkk8cG96aW9tX2tvbXByZXNqaT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MTU3CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJDb21wcmVzc2lvbiBsZXZlbCB0byB1c2UuIEFzIHdpdGggQjwtWj4gaXQgb25seSBhZmZlY3RzIG5ld2x5IGNyZWF0ZWQgIgorI3wgImZpbGVzLiBTdXBwb3J0ZWQgdmFsdWVzIGFyZTogSTwxPiB0byBJPDk+LCBJPGJlc3Q+LCBhbmQgSTxmYXN0Pi4gIEk8OT4gaXMgIgorI3wgInRoZSBkZWZhdWx0LiIKK21zZ2lkICIiCisiQ29tcHJlc3Npb24gbGV2ZWwgdG8gdXNlLiBBcyB3aXRoIEI8LVo+IGl0IG9ubHkgYWZmZWN0cyBuZXdseSBjcmVhdGVkIGZpbGVzLiAiCisiU3VwcG9ydGVkIHZhbHVlcyBhcmU6IEk8MT4gdG8gSTw5PiwgSTxiZXN0PiwgYW5kIEk8ZmFzdD4uICBUaGUgZGVmYXVsdCBpcyAiCisiSTw5PiBmb3IgZ3ppcCBhbmQgYnppcDIsIEk8Nj4gZm9yIHh6IGFuZCBsem1hLiIKK21zZ3N0ciAiIgorIlXFvHl3YW55IHBvemlvbSBrb21wcmVzb3dhbmlhLiBQb2RvYm5pZSBqYWsgdyB3eXBhZGtpIEI8LVo+LCBkb3R5Y3p5IHR5bGtvICIKKyJub3dvIHR3b3J6b255Y2ggcGxpa8Ozdy4gT2JzxYJ1Z2l3YW5lIHdhcnRvxZtjaTogSTwxPiBkbyBJPDk+LCBJPGJlc3Q+IG9yYXogIgorIkk8ZmFzdD4uIEk8OT4gamVzdCB3YXJ0b8WbY2nEhSBkb215xZtsbsSFLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6MTU3CisjLCBuby13cmFwCittc2dpZCAiQjwtaT5bSTxyZWdleHA+XSwgQjwtLWRpZmYtaWdub3JlPls9STxyZWdleHA+XSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjE2OQorbXNnaWQgIiIKKyJZb3UgbWF5IHNwZWNpZnkgYSBwZXJsIHJlZ3VsYXIgZXhwcmVzc2lvbiB0byBtYXRjaCBmaWxlcyB5b3Ugd2FudCBmaWx0ZXJlZCAiCisib3V0IG9mIHRoZSBsaXN0IG9mIGZpbGVzIGZvciB0aGUgZGlmZi4gKFRoaXMgbGlzdCBpcyBnZW5lcmF0ZWQgYnkgYSBmaW5kICIKKyJjb21tYW5kLikgKElmIHRoZSBzb3VyY2UgcGFja2FnZSBpcyBiZWluZyBidWlsdCBhcyBhIHZlcnNpb24gMyBzb3VyY2UgIgorInBhY2thZ2UgdXNpbmcgYSBWQ1MsIHRoaXMgY2FuIGJlIHVzZWQgdG8gaWdub3JlIHVuY29tbWl0ZWQgY2hhbmdlcyBvbiAiCisic3BlY2lmaWMgZmlsZXMuIFVzaW5nIC1pLiogd2lsbCBpZ25vcmUgYWxsIG9mIHRoZW0uKSAgQjwtaT4gYnkgaXRzZWxmICIKKyJlbmFibGVzIHRoZSBvcHRpb24sIHdpdGggYSBkZWZhdWx0IHJlZ2V4cCB0aGF0IHdpbGwgZmlsdGVyIG91dCBjb250cm9sIGZpbGVzICIKKyJhbmQgZGlyZWN0b3JpZXMgb2YgdGhlIG1vc3QgY29tbW9uIHJldmlzaW9uIGNvbnRyb2wgc3lzdGVtcywgYmFja3VwIGFuZCBzd2FwICIKKyJmaWxlcyBhbmQgTGlidG9vbCBidWlsZCBvdXRwdXQgZGlyZWN0b3JpZXMuIFRoZXJlIGNhbiBvbmx5IGJlIG9uZSBhY3RpdmUgIgorInJlZ2V4cCwgb2YgbXVsdGlwbGUgQjwtaT4gb3B0aW9ucyBvbmx5IHRoZSBsYXN0IG9uZSB3aWxsIHRha2UgZWZmZWN0LiIKK21zZ3N0ciAiIgorIk1vxbxuYSBwb2RhxIcgd3lyYcW8ZW5pZSByZWd1bGFybmUgUGVybGEgcGFzdWrEhWNlIGRvIGxpc3R5IHBsaWvDs3csIGt0w7NyZSBtYWrEhSAiCisibmllIGJ5xIcgdXd6Z2zEmWRuaWFuZSBwb2RjemFzIHR3b3J6ZW5pYSBwbGlrdSByw7PFvG5pYyAobGlzdGEgdGEgamVzdCB0d29yem9uYSAiCisicG9sZWNlbmllbSBmaW5kKS4gKEplxZtsaSB6YcWbIHBha2lldCDFunLDs2TFgm93eSBqZXN0IGJ1ZG93YW55IHcgZm9ybWFjaWUgMy4wIHogIgorInXFvHljaWVtIHN5c3RlbXUga29udHJvbGkgd2Vyc2ppLCBqZXN0IG9ubyB1xbx5d2FuZSB0byBpZ25vcm93YW5pYSAiCisibmllemF0d2llcmR6b255Y2ggcGxpa8Ozdy4gVcW8eWNpZSAtaS4qIHBvendhbGEgemlnbm9yb3dhxIcgd3N6eXN0a2llIHRha2llICIKKyJwbGlrLikgQjwtaT4gcG9kYW5lIGJleiDFvGFkbnljaCBhcmd1bWVudMOzdyB3xYLEhWN6YSB0xJkgb3BjasSZLCBkb215xZtsbmllICIKKyJvZGZpbHRyb3d1asSFYyBwbGlraSBrb250cm9sbmUgaSBrYXRhbG9naSBuYWpwb3B1bGFybmllanN6eWNoIHN5c3RlbcOzdyAiCisia29udHJvbGkgd2Vyc2ppLCBrb3BpZSB6YXBhc293ZSwgcGxpa2kgd3ltaWFueSBvcmF6IGthdGFsb2dpIHd5asWbY2lvd2UgIgorIm5hcnrEmWR6aWEgbGlidG9vbC4gVHlsa28gamVkbm8gd3lyYcW8ZW5pZSByZWd1bGFybmUgbW/FvGUgYnnEhyBha3R5d25lLCBqZcWbbGkgIgorIm9wY2rEmSBCPC1pPiBwb2Rhbm8ga2lsa2Frcm90bmllLCB0byB0eWxrbyBvc3RhdG5pYSB6IG5pY2ggYsSZZHppZSB3emnEmXRhIHBvZCAiCisidXdhZ8SZLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToxNzkKK21zZ2lkICIiCisiVGhpcyBpcyB2ZXJ5IGhlbHBmdWwgaW4gY3V0dGluZyBvdXQgZXh0cmFuZW91cyBmaWxlcyB0aGF0IGdldCBpbmNsdWRlZCBpbiAiCisidGhlIGRpZmYsIGUuZy4gaWYgeW91IG1haW50YWluIHlvdXIgc291cmNlIGluIGEgcmV2aXNpb24gY29udHJvbCBzeXN0ZW0gYW5kICIKKyJ3YW50IHRvIHVzZSBhIGNoZWNrb3V0IHRvIGJ1aWxkIGEgc291cmNlIHBhY2thZ2Ugd2l0aG91dCBpbmNsdWRpbmcgdGhlICIKKyJhZGRpdGlvbmFsIGZpbGVzIGFuZCBkaXJlY3RvcmllcyB0aGF0IGl0IHdpbGwgdXN1YWxseSBjb250YWluIChlLmcuIENWUy8sIC4iCisiY3ZzaWdub3JlLCAuc3ZuLykuIFRoZSBkZWZhdWx0IHJlZ2V4cCBpcyBhbHJlYWR5IHZlcnkgZXhoYXVzdGl2ZSwgYnV0IGlmIHlvdSAiCisibmVlZCB0byByZXBsYWNlIGl0LCBwbGVhc2Ugbm90ZSB0aGF0IGJ5IGRlZmF1bHQgaXQgY2FuIG1hdGNoIGFueSBwYXJ0IG9mIGEgIgorInBhdGgsIHNvIGlmIHlvdSB3YW50IHRvIG1hdGNoIHRoZSBiZWdpbiBvZiBhIGZpbGVuYW1lIG9yIG9ubHkgZnVsbCAiCisiZmlsZW5hbWVzLCB5b3Ugd2lsbCBuZWVkIHRvIHByb3ZpZGUgdGhlIG5lY2Vzc2FyeSBhbmNob3JzIChlLmcuICcoXnwvKScsICIKKyInKCR8LyknKSB5b3Vyc2VsZi4iCittc2dzdHIgIiIKKyJKZXN0IHRvIGJhcmR6byBwcnp5ZGF0bmUgZG8gd3lrbHVjemFuaWEgbmllaXN0b3RueWNoIHBsaWvDs3csIGt0w7NyZSB6b3N0YcWCeWJ5ICIKKyJ3xYLEhWN6b25lIGRvIHBsaWt1IHLDs8W8bmljIChkaWZmKS4gUHJ6eWvFgmFkZW0gbW/FvGUgYnnEhyBzeXR1YWNqYSwgZ2R6aWUga29kICIKKyLFunLDs2TFgm93eSBqZXN0IHphcnrEhWR6YW55IHByemV6IHN5c3RlbSBrb250cm9saSB3ZXJzamkgaSBrb2QgcG9icmFueSB6ICIKKyJyZXBvenl0b3JpdW0gbWEgYnnEhyB1xbx5dHkgZG8gemJ1ZG93YW5pYSBwYWtpZXR1IMW6csOzZMWCb3dlZ28sIGJleiB3xYLEhWN6YW5pYSB3ICIKKyJ0byBkb2RhdGtvd3ljaCBwbGlrw7N3IGkga2F0YWxvZ8OzdyB6d2nEhXphbnljaCB6IG9ic8WCdWfEhSByZXBvenl0b3JpdW0gKG5wLiAiCisiQ1ZTLywgLmN2c2lnbm9yZSwgLnN2bi8pLiBEb215xZtsbmUgd3lyYcW8ZW5pZSByZWd1bGFybmUgamVzdCBqdcW8IGNhxYJraWVtICIKKyJvYnN6ZXJuZSwgYWxlIGplxZtsaSBpc3RuaWVqZSBwb3RyemViYSB6YXN0xIVwaWVuaWEgZ28sIG5hbGXFvHkgemF1d2HFvHnEhyDFvGUgIgorImRvbXnFm2xuaWUgbW/FvGUgb25vIHBhc293YcSHIGRvIGRvd29sbmVqIGN6xJnFm2NpIMWbY2llxbxraSAtIGRsYXRlZ28gdyBjZWx1ICIKKyJkb3Bhc293YW5pYSBkbyBwb2N6xIV0a3UgbmF6d3kgcGxpa3UgbHViIGplZHluaWUgcGXFgm55Y2ggbmF6dyBwbGlrw7N3LCAiCisia29uaWVjem5lIGplc3Qgc2Ftb2R6aWVsbmUgdcW8eWNpZSBvZHBvd2llZG5pY2ggd3lyYcW8ZcWEIChucC4gXCIoXnwvKVwiLCBjenkgIgorIlwiKCR8LylcIikuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMToxNzkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tZXh0ZW5kLWRpZmYtaWdub3JlPj1JPHJlZ2V4cD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToxODYKK21zZ2lkICIiCisiVGhlIHBlcmwgcmVndWxhciBleHByZXNzaW9uIHNwZWNpZmllZCB3aWxsIGV4dGVuZCB0aGUgZGVmYXVsdCB2YWx1ZSBvZiBCPC0tIgorImRpZmYtaWdub3JlPiBhbmQgaXRzIGN1cnJlbnQgdmFsdWUgKGlmIHNldCkuIEl0IGRvZXMgdGhpcyBieSBjb25jYXRlbmF0aW5nICIKKyJcIkI8fD5JPHJlZ2V4cD5cIiB0byB0aGUgZXhpc3RpbmcgdmFsdWUuICBUaGlzIG9wdGlvbiBpcyBjb252ZW5pZW50IHRvIHVzZSAiCisiaW4gQjxkZWJpYW4vc291cmNlL29wdGlvbnM+IHRvIGV4Y2x1ZGUgc29tZSBhdXRvLWdlbmVyYXRlZCBmaWxlcyBmcm9tIHRoZSAiCisiYXV0b21hdGljIHBhdGNoIGdlbmVyYXRpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjE4NgorIywgbm8td3JhcAorbXNnaWQgIkI8LUk+W0k8ZmlsZS1wYXR0ZXJuPl0sIEI8LS10YXItaWdub3JlPls9STxmaWxlLXBhdHRlcm4+XSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjE5NQorbXNnaWQgIiIKKyJJZiB0aGlzIG9wdGlvbiBpcyBzcGVjaWZpZWQsIHRoZSBwYXR0ZXJuIHdpbGwgYmUgcGFzc2VkIHRvIEI8dGFyPigxKSdzIC0tIgorImV4Y2x1ZGUgb3B0aW9uIHdoZW4gaXQgaXMgY2FsbGVkIHRvIGdlbmVyYXRlIGEgLm9yaWcudGFyIG9yIC50YXIgZmlsZS4gRm9yICIKKyJleGFtcGxlLCAtSUNWUyB3aWxsIG1ha2UgdGFyIHNraXAgb3ZlciBDVlMgZGlyZWN0b3JpZXMgd2hlbiBnZW5lcmF0aW5nIGEgLiIKKyJ0YXIuZ3ogZmlsZS4gVGhlIG9wdGlvbiBtYXkgYmUgcmVwZWF0ZWQgbXVsdGlwbGUgdGltZXMgdG8gbGlzdCBtdWx0aXBsZSAiCisicGF0dGVybnMgdG8gZXhjbHVkZS4iCittc2dzdHIgIiIKKyJQbyBwb2Rhbml1IHRlaiBvcGNqaSwgd3pvcnplYyBixJlkemllIHByemVrYXphbnkgamFrbyBwYXJhbWV0ciBkbGEgLS1leGNsdWRlICIKKyJwb2xlY2VuaWEgQjx0YXI+KDEpLCB1xbx5d2FuZWdvIGRvIHN0d29yemVuaWEgYXJjaGl3dW0gLm9yaWcudGFyIGx1YiAudGFyLiBOYSAiCisicHJ6eWvFgmFkLCAtSUNWUyBwb3dvZHVqZSwgxbxlIHRhciBixJlkemllIHBvbWlqYcWCIGthdGFsb2dpIENWUyBwcnp5IHR3b3J6ZW5pdSAiCisicGxpa3UgLnRhci5nei4gVGEgb3BjamEgbW/FvGUgYnnEhyBwb2RhbmEgd2llbG9rcm90bmllIHcgY2VsdSBva3JlxZtsZW5pYSB3aWVsdSAiCisid3pvcmPDs3cgd3lrbHVjemXFhC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MjAwCittc2dpZCAiIgorIkI8LUk+IGJ5IGl0c2VsZiBhZGRzIGRlZmF1bHQgLS1leGNsdWRlIG9wdGlvbnMgdGhhdCB3aWxsIGZpbHRlciBvdXQgY29udHJvbCAiCisiZmlsZXMgYW5kIGRpcmVjdG9yaWVzIG9mIHRoZSBtb3N0IGNvbW1vbiByZXZpc2lvbiBjb250cm9sIHN5c3RlbXMsIGJhY2t1cCAiCisiYW5kIHN3YXAgZmlsZXMgYW5kIExpYnRvb2wgYnVpbGQgb3V0cHV0IGRpcmVjdG9yaWVzLiIKK21zZ3N0ciAiIgorIlNhbW8gQjwtST4gcG9kYW5lIGJleiDFvGFkbnljaCBhcmd1bWVudMOzdyB1c3Rhd2lhIG9wY2plIC0tZXhjbHVkZSwgZG9tecWbbG5pZSAiCisib2RmaWx0cm93dWrEhWMgcGxpa2kga29udHJvbG5lIGkga2F0YWxvZ2kgbmFqcG9wdWxhcm5pZWpzenljaCBzeXN0ZW3Ds3cgIgorImtvbnRyb2xpIHdlcnNqaSwga29waWUgemFwYXNvd2UsIHBsaWtpIHd5bWlhbnkgb3JheiBrYXRhbG9naSB3eWrFm2Npb3dlICIKKyJsaWJ0b29sYS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MjEyCittc2dpZCAiIgorIkI8Tm90ZTo+IFdoaWxlIHRoZXkgaGF2ZSBzaW1pbGFyIHB1cnBvc2VzLCBCPC1pPiBhbmQgQjwtST4gaGF2ZSB2ZXJ5ICIKKyJkaWZmZXJlbnQgc3ludGF4IGFuZCBzZW1hbnRpY3MuIEI8LWk+IGNhbiBvbmx5IGJlIHNwZWNpZmllZCBvbmNlIGFuZCB0YWtlcyBhICIKKyJwZXJsIGNvbXBhdGlibGUgcmVndWxhciBleHByZXNzaW9uIHdoaWNoIGlzIG1hdGNoZWQgYWdhaW5zdCB0aGUgZnVsbCAiCisicmVsYXRpdmUgcGF0aCBvZiBlYWNoIGZpbGUuIEI8LUk+IGNhbiBzcGVjaWZpZWQgbXVsdGlwbGUgdGltZXMgYW5kIHRha2VzIGEgIgorImZpbGVuYW1lIHBhdHRlcm4gd2l0aCBzaGVsbCB3aWxkY2FyZHMuICBUaGUgcGF0dGVybiBpcyBhcHBsaWVkIHRvIHRoZSBmdWxsICIKKyJyZWxhdGl2ZSBwYXRoIGJ1dCBhbHNvIHRvIGVhY2ggcGFydCBvZiB0aGUgcGF0aCBpbmRpdmlkdWFsbHkuIFRoZSBleGFjdCAiCisic2VtYW50aWMgb2YgdGFyJ3MgLS1leGNsdWRlIG9wdGlvbiBpcyBzb21ld2hhdCBjb21wbGljYXRlZCwgc2VlIGh0dHA6Ly93d3cuIgorImdudS5vcmcvc29mdHdhcmUvdGFyL21hbnVhbC90YXIuaHRtbCN3aWxkY2FyZHMgZm9yIGEgZnVsbCBkb2N1bWVudGF0aW9uLiIKK21zZ3N0ciAiIgorIkI8VXdhZ2E6PiBNaW1vLCDFvGUgbWFqxIUgcG9kb2JuZSBwcnplem5hY3plbmllLCBvcGNqZSBCPC1pPiBvcmF6IEI8LUk+IG1hasSFICIKKyJjYcWCa2llbSBvZG1pZW5uxIUgc2vFgmFkbmnEmSBpIHNlbWFudHlrxJkuIEI8LWk+IG1vxbxlIGJ5xIcgcG9kYW5hIHR5bGtvIHJheiBpICIKKyJwcnp5am11amUgd3lyYcW8ZW5pZSByZWd1bGFybmUgUGVybGEsIGt0w7NyZSBqZXN0IGRvcGFzb3d5d2FuZSBkbyBwZcWCbmVqICIKKyLFm2NpZcW8a2kgd3pnbMSZZG5laiBrYcW8ZGVnbyBwbGlrdS4gQjwtST4gbW/FvGUgYnnEhyBwb2RhbmEgd2llbG9rcm90bmllIGkgIgorInByenlqbXVqZSB3em9yemVjIG5hencgcGxpa8OzdyB3cmF6IHplIHpuYWthbWkgc3BlY2phbG55bWkgcG93xYJva2kgIgorIih3aWxkY2FyZHMpLiBXem9yemVjIGplc3QgZG9wYXNvd3l3YW55IGRvIHBlxYJuZWogxZtjaWXFvGtpIHd6Z2zEmWRuZWosIGFsZSAiCisicsOzd25pZcW8IGluZHl3aWR1YWxuaWUgZG8ga2HFvGRlaiBjesSZxZtjaSDFm2NpZcW8a2kuIFBlxYJuYSBzZW1hbnR5a2Egb3BjamkgLS0iCisiZXhjbHVkZSBwcm9ncmFtdSB0YXIgamVzdCBuaWVjbyBza29tcGxpa293YW5hLCBwcm9zesSZIHNwcmF3ZHppxIcgaHR0cDovL3d3dy4iCisiZ251Lm9yZy9zb2Z0d2FyZS90YXIvbWFudWFsL3Rhci5odG1sI3dpbGRjYXJkcyB3IGNlbHUgdXp5c2thbmlhIGRva8WCYWRueWNoICIKKyJpbmZvcm1hY2ppLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToyMTUKK21zZ2lkICIiCisiVGhlIGRlZmF1bHQgcmVnZXhwIGFuZCBwYXR0ZXJucyBmb3IgYm90aCBvcHRpb25zIGNhbiBiZSBzZWVuIGluIHRoZSBvdXRwdXQgIgorIm9mIHRoZSBCPC0taGVscD4gY29tbWFuZC4iCittc2dzdHIgIiIKKyJEb215xZtsbmUgd3lyYcW8ZW5pYSByZWd1bGFybmUgaSB3em9yY2UgZGxhIG9idSBvcGNqaSBtb8W8bmEgem5hbGXFusSHIHcgd3lqxZtjaXUgIgorInBvbGVjZW5pYSBCPC0taGVscD4uIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1zb3VyY2UuMToyMTUKKyMsIG5vLXdyYXAKK21zZ2lkICJHRU5FUklDIEVYVFJBQ1QgT1BUSU9OUyIKK21zZ3N0ciAiT0fDk0xORSBPUENKRSBST1pQQUtPV1lXQU5JQSIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6MjE2CisjLCBuby13cmFwCittc2dpZCAiQjwtLW5vLWNvcHk+IgorbXNnc3RyICJCPC0tbm8tY29weT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MjE5Cittc2dpZCAiRG8gbm90IGNvcHkgb3JpZ2luYWwgdGFyYmFsbHMgbmVhciB0aGUgZXh0cmFjdGVkIHNvdXJjZSBwYWNrYWdlLiIKK21zZ3N0ciAiIgorIk5pZSBrb3BpdWplIG9yeWdpbmFsbnljaCBhcmNoaXfDs3cgb2JvayByb3pwYWtvd2FuZWdvIHBha2lldHUgxbpyw7NkxYJvd2Vnby4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjIxOQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1uby1jaGVjaz4iCittc2dzdHIgIkI8LS1uby1jaGVjaz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MjIyCittc2dpZCAiRG8gbm90IGNoZWNrIHNpZ25hdHVyZXMgYW5kIGNoZWNrc3VtcyBiZWZvcmUgdW5wYWNraW5nLiIKK21zZ3N0ciAiIgorIkJleiB3ZXJ5ZmlrYWNqaSBwb2RwaXPDs3cgaSBzcHJhd2R6YW5pYSBzdW0ga29udHJvbG55Y2ggcHJ6ZWQgcm96cGFrb3dhbmllbS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjIyMgorIywgbm8td3JhcAorbXNnaWQgIkI8LS1yZXF1aXJlLXZhbGlkLXNpZ25hdHVyZT4iCittc2dzdHIgIkI8LS1yZXF1aXJlLXZhbGlkLXNpZ25hdHVyZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MjMwCittc2dpZCAiIgorIlJlZnVzZSB0byB1bnBhY2sgdGhlIHNvdXJjZSBwYWNrYWdlIGlmIGl0IGRvZXNuJ3QgY29udGFpbiBhbiBPcGVuUEdQICIKKyJzaWduYXR1cmUgdGhhdCBjYW4gYmUgdmVyaWZpZWQgZWl0aGVyIHdpdGggdGhlIHVzZXIncyBJPHRydXN0ZWRrZXlzLmdwZz4gIgorImtleXJpbmcsIG9uZSBvZiB0aGUgdmVuZG9yLXNwZWNpZmljIGtleXJpbmdzLCBvciBvbmUgb2YgdGhlIG9mZmljaWFsIERlYmlhbiAiCisia2V5cmluZ3MgKEk8L3Vzci9zaGFyZS9rZXlyaW5ncy9kZWJpYW4ta2V5cmluZy5ncGc+IGFuZCBJPC91c3Ivc2hhcmUvIgorImtleXJpbmdzL2RlYmlhbi1tYWludGFpbmVycy5ncGc+KS4iCittc2dzdHIgIiIKKyJQb3dvZHVqZSBvZG1vd8SZIHJvenBha293YW5pYSBwYWtpZXR1IMW6csOzZMWCb3dlZ28sIGplxZtsaSBuaWUgemF3aWVyYSBvbiAiCisicG9kcGlzdSBPcGVuUEdQLCBrdMOzcnkgbcOzZ8WCYnkgYnnEhyB6d2VyeWZpa293YW55IHByemV6IGtsdWN6ZSB1xbx5dGtvd25pa2EgeiAiCisicGxpa3UgSTx0cnVzdGVka2V5cy5ncGc+LCBqZWRlbiB6IGtsdWN6eSB0d8OzcmPDs3cgcGFraWV0dSwgbHViIGplZGVuIHogIgorIm9maWNqYWxueWNoIGtsdWN6eSBEZWJpYW5hIChJPC91c3Ivc2hhcmUva2V5cmluZ3MvZGViaWFuLWtleXJpbmcuZ3BnPiBvcmF6ICIKKyJJPC91c3Ivc2hhcmUva2V5cmluZ3MvZGViaWFuLW1haW50YWluZXJzLmdwZz4pLiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctc291cmNlLjE6MjMxCisjLCBuby13cmFwCittc2dpZCAiU09VUkNFIFBBQ0tBR0UgRk9STUFUUyIKK21zZ3N0ciAiRk9STUFUWSBQQUtJRVTDk1cgxblSw5NExYFPV1lDSCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToyMzYKK21zZ2lkICIiCisiSWYgeW91IGRvbid0IGtub3cgd2hhdCBzb3VyY2UgZm9ybWF0IHRvIHVzZSwgeW91IHNob3VsZCBwcm9iYWJseSBwaWNrIGVpdGhlciAiCisiXCIzLjAgKHF1aWx0KVwiIG9yIFwiMy4wIChuYXRpdmUpXCIuIFNlZSBodHRwOi8vd2lraS5kZWJpYW4ub3JnL1Byb2plY3RzLyIKKyJEZWJTcmMzLjAgZm9yIGluZm9ybWF0aW9uIG9uIHRoZSBkZXBsb3ltZW50IG9mIHRob3NlIGZvcm1hdHMgd2l0aGluIERlYmlhbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6MjM3CisjLCBuby13cmFwCittc2dpZCAiRm9ybWF0OiAxLjAiCittc2dzdHIgIkZvcm1hdDogMS4wIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjI0MQorbXNnaWQgIiIKKyJBIHNvdXJjZSBwYWNrYWdlIGluIHRoaXMgZm9ybWF0IGNvbnNpc3RzIGVpdGhlciBvZiBhIEI8Lm9yaWcudGFyLmd6PiAiCisiYXNzb2NpYXRlZCB0byBhIEI8LmRpZmYuZ3o+IG9yIGEgc2luZ2xlIEI8LnRhci5nej4gKGluIHRoYXQgY2FzZSB0aGUgcGFja2FnZSAiCisiaXMgc2FpZCB0byBiZSBJPG5hdGl2ZT4pLiIKK21zZ3N0ciAiIgorIlBha2lldCDFunLDs2TFgm93eSB3IHR5bSBmb3JtYWNpZSBza8WCYWRhIHNpxJkgeiBwbGlrdSBCPC5vcmlnLnRhci5nej4gIgorInBvd2nEhXphbmVnbyB6IHBsaWtpZW0gcsOzxbxuaWMgQjwuZGlmZi5nej4sIGx1YiB6IHBvamVkeW5jemVnbyBwbGlrdSBCPC50YXIuIgorImd6PiAodyB0YWtpbSBwcnp5cGFka3UgbcOzd2kgc2nEmSwgxbxlIHBha2lldCBqZXN0IEk8bmF0eXdueT4pLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToyNDMgZHBrZy1zb3VyY2UuMTo0MTEgZHBrZy1zb3VyY2UuMTo1ODYgZHBrZy1zb3VyY2UuMTo2MjUKK21zZ2lkICJCPEV4dHJhY3Rpbmc+IgorbXNnc3RyICJCPFJvenBha293eXdhbmllPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToyNTMKK21zZ2lkICIiCisiRXh0cmFjdGluZyBhIG5hdGl2ZSBwYWNrYWdlIGlzIGEgc2ltcGxlIGV4dHJhY3Rpb24gb2YgdGhlIHNpbmdsZSB0YXJiYWxsIGluICIKKyJ0aGUgdGFyZ2V0IGRpcmVjdG9yeS4gRXh0cmFjdGluZyBhIG5vbi1uYXRpdmUgcGFja2FnZSBpcyBkb25lIGJ5IGZpcnN0ICIKKyJ1bnBhY2tpbmcgdGhlIEI8Lm9yaWcudGFyLmd6PiBhbmQgdGhlbiBhcHBseWluZyB0aGUgcGF0Y2ggY29udGFpbmVkIGluIHRoZSAiCisiQjwuZGlmZi5nej4gZmlsZS4gVGhlIHRpbWVzdGFtcCBvZiBhbGwgcGF0Y2hlZCBmaWxlcyBpcyByZXNldCB0byB0aGUgIgorImV4dHJhY3Rpb24gdGltZSBvZiB0aGUgc291cmNlIHBhY2thZ2UgKHRoaXMgYXZvaWRzIHRpbWVzdGFtcCBza2V3cyBsZWFkaW5nICIKKyJ0byBwcm9ibGVtcyB3aGVuIGF1dG9nZW5lcmF0ZWQgZmlsZXMgYXJlIHBhdGNoZWQpLiBUaGUgZGlmZiBjYW4gY3JlYXRlIG5ldyAiCisiZmlsZXMgKHRoZSB3aG9sZSBkZWJpYW4gZGlyZWN0b3J5IGlzIGNyZWF0ZWQgdGhhdCB3YXkpIGJ1dCBjYW4ndCByZW1vdmUgIgorImZpbGVzIChlbXB0eSBmaWxlcyB3aWxsIGJlIGxlZnQgb3ZlcikuIgorbXNnc3RyICIiCisiUm96cGFrb3dhbmllIHBha2lldHUgbmF0eXduZWdvIHRvIHByb3N0ZSByb3pwYWtvd2FuaWUgcG9qZWR5bmN6ZWdvIHBsaWt1ICIKKyJhcmNoaXd1bSB3IGthdGFsb2d1IGRvY2Vsb3d5bS4gUm96cGFrb3dhbmllIHBha2lldHUgdyBzdHlsdSBEZWJpYW5hIChub24tIgorIm5hdGl2ZSkgb2RieXdhIHNpxJkgcG9wcnpleiBuYWpwaWVydyByb3pwYWtvd2FuaWUgcGxpa3UgQjwub3JpZy50YXIuZ3o+IGEgIgorIm5hc3TEmXBuaWUgbmHFgm/FvGVuaWEgxYJhdGVrIHphd2FydHljaCB3IHBsaWt1IEI8LmRpZmYuZ3o+LiBDemFzeSBtb2R5ZmlrYWNqaSAiCisid3N6eXN0a2ljaCDFgmF0YW55Y2ggcGxpa8OzdyBzxIUgdXN0YXdpYW5lIG5hIHdhcnRvxZvEhyBvZHBvd2lhZGFqxIVjxIUgY3phc293aSAiCisicm96cGFrb3dhbmlhIHBha2lldHUgxbpyw7NkxYJvd2VnbyAoemFwb2JpZWdhIHRvIHByemVzdW5pxJljaW9tIGN6YXPDs3csIGt0w7NyZSAiCisicHJvd2FkesSFIGRvIHByb2JsZW3Ds3cgcHJ6eSDFgmF0YW5pdSBwbGlrw7N3IGdlbmVyb3dhbnljaCBhdXRvbWF0eWN6bmllKS4gUGxpayAiCisicsOzxbxuaWMgKGRpZmYpIG1vxbxlIHR3b3J6ecSHIG5vd2UgcGxpa2kgKGNhxYJ5IGthdGFsb2cgXCJkZWJpYW5cIiBqZXN0IHRhayAiCisidHdvcnpvbnkpLCBhbGUgbmllIG1vxbxlIHVzdXdhxIcgcGxpa8OzdyAocG96b3N0YXdpYW5lIHPEhSBwdXN0ZSBwbGlraSBvIHplcm93ZWogIgorImTFgnVnb8WbY2kpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToyNTUgZHBrZy1zb3VyY2UuMTo0MzkgZHBrZy1zb3VyY2UuMTo1OTcgZHBrZy1zb3VyY2UuMTo2MzAKK21zZ2lkICJCPEJ1aWxkaW5nPiIKK21zZ3N0ciAiQjxCdWRvd2FuaWU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjI2MQorbXNnaWQgIiIKKyJCdWlsZGluZyBhIG5hdGl2ZSBwYWNrYWdlIGlzIGp1c3QgY3JlYXRpbmcgYSBzaW5nbGUgdGFyYmFsbCB3aXRoIHRoZSBzb3VyY2UgIgorImRpcmVjdG9yeS4gQnVpbGRpbmcgYSBub24tbmF0aXZlIHBhY2thZ2UgaW52b2x2ZXMgZXh0cmFjdGluZyB0aGUgb3JpZ2luYWwgIgorInRhcmJhbGwgaW4gYSBzZXBhcmF0ZSBcIi5vcmlnXCIgZGlyZWN0b3J5IGFuZCByZWdlbmVyYXRpbmcgdGhlIEI8LmRpZmYuZ3o+ICIKKyJieSBjb21wYXJpbmcgdGhlIHNvdXJjZSBwYWNrYWdlIEk8ZGlyZWN0b3J5PiB3aXRoIHRoZSAub3JpZyBkaXJlY3RvcnkuIgorbXNnc3RyICIiCisiQnVkb3dhbmllIHBha2lldHUgbmF0eXduZWdvIHRvIHByb3N0ZSBzdHdvcnplbmllIHBvamVkeW5jemVnbyBwbGlrdSBhcmNoaXd1bSAiCisieiBrYXRhbG9ndSDFunLDs2RlxYIuIEJ1ZG93YW5pZSBwYWtpZXR1IHcgc3R5bHUgRGViaWFuYSAobm9uLW5hdGl2ZSkgb2Jlam11amUgIgorInJvenBha293YW5pZSBvcnlnaW5hbG5lZ28gYXJjaGl3dW0gZG8gb2RkemllbG5lZ28ga2F0YWxvZ3UgeiBwcnp5cm9zdGtpZW0gXCIuIgorIm9yaWdcIiBpIHJlZ2VuZXJhY2rEmSBwbGlrdSBCPC5kaWZmLmd6PiBwb3ByemV6IHBvcsOzd25hbmllIEk8a2F0YWxvZ3U+ICIKKyJwYWtpZXR1IMW6csOzZMWCb3dlZ28geiBrYXRhbG9naWVtIFwiLm9yaWdcIi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjI2MgorIywgbm8td3JhcAorbXNnaWQgIkI8QnVpbGQgb3B0aW9ucyAod2l0aCAtYik6PiIKK21zZ3N0ciAiQjxPcGNqZSBidWRvd2FuaWEgKHogLWIpOj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6Mjc1Cittc2dpZCAiIgorIklmIGEgc2Vjb25kIG5vbi1vcHRpb24gYXJndW1lbnQgaXMgc3VwcGxpZWQgaXQgc2hvdWxkIGJlIHRoZSBuYW1lIG9mIHRoZSAiCisib3JpZ2luYWwgc291cmNlIGRpcmVjdG9yeSBvciB0YXJmaWxlIG9yIHRoZSBlbXB0eSBzdHJpbmcgaWYgdGhlIHBhY2thZ2UgaXMgYSAiCisiRGViaWFuLXNwZWNpZmljIG9uZSBhbmQgc28gaGFzIG5vIERlYmlhbmlzYXRpb24gZGlmZnMuIElmIG5vIHNlY29uZCBhcmd1bWVudCAiCisiaXMgc3VwcGxpZWQgdGhlbiBCPGRwa2ctc291cmNlPiB3aWxsIGxvb2sgZm9yIHRoZSBvcmlnaW5hbCBzb3VyY2UgdGFyZmlsZSAiCisiSTxwYWNrYWdlPkI8Xz5JPHVwc3RyZWFtLXZlcnNpb24+Qjwub3JpZy50YXIuZ3o+IG9yIHRoZSBvcmlnaW5hbCBzb3VyY2UgIgorImRpcmVjdG9yeSBJPGRpcmVjdG9yeT5CPC5vcmlnPiBkZXBlbmRpbmcgb24gdGhlIEI8LXNYPiBhcmd1bWVudHMuIgorbXNnc3RyICIiCisiQnVkdWplIHBha2lldCDFunLDs2TFgm93eS4gTmFsZcW8eSBwb2RhxIcgamVkZW4gbHViIGR3YSBhcmd1bWVudHksIG5pZSBixJlkxIVjZSAiCisib3BjamFtaS4gUGllcndzenltIHogbmljaCBqZXN0IG5hendhIGthdGFsb2d1IHphd2llcmFqxIVjZWdvIHJvenBha293YW5lICIKKyLFunLDs2TFgmEuIEplxbxlbGkgcG9kYW5vIGRydWdpIGFyZ3VtZW50LCB0byBwb3dpbmllbiBvbiBiecSHIG5henfEhSBvcnlnaW5hbG5lZ28gIgorImthdGFsb2d1IHplIMW6csOzZMWCYW1pIGx1YiBhcmNoaXd1bSB0YXIgYWxibyBwdXN0eW0gxYJhxYRjdWNoZW0gem5ha8OzdywgamXFm2xpICIKKyJwYWtpZXQgamVzdCBzcGVjeWZpY3pueSBkbGEgRGViaWFuYSBpIG5pZSBtYSBwbGlrdSByw7PFvG5pYy4gSmXFvGVsaSBuaWUgcG9kYW5vICIKKyJkcnVnaWVnbyBhcmd1bWVudHUsIHRvIEI8ZHBrZy1zb3VyY2U+IC0gdyB6YWxlxbxub8WbY2kgb2QgYXJndW1lbnTDs3cgQjwtc1g+IC0gIgorImLEmWR6aWUgc3p1a2HFgiBhbGJvIGFyY2hpd3VtIHRhciB6IG9yeWdpbmFsbnltaSDFunLDs2TFgmFtaSAiCisiSTxwYWtpZXQ+QjxfPkk8d2Vyc2phX3Vwc3RyZWFtPkI8Lm9yaWcudGFyLj5JPHJvenN6ZXJ6ZW5pZT4gKGdkemllICIKKyJJPHJvenN6ZXJ6ZW5pZT4gamVzdCBqZWRueW0geiBCPGd6PixCPGJ6Mj4gbHViIEI8bHptYT4pLCAgYWxibyBrYXRhbG9ndSB6ICIKKyJvcnlnaW5hbG55bWkgxbpyw7NkxYJhbWkgSTxrYXRhbG9nPi5vcmlnLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToyODEKK21zZ2lkICIiCisiQjwtc2E+LCBCPC1zcD4sIEI8LXNrPiwgQjwtc3U+IGFuZCBCPC1zcj4gd2lsbCBub3Qgb3ZlcndyaXRlIGV4aXN0aW5nICIKKyJ0YXJmaWxlcyBvciBkaXJlY3Rvcmllcy4gSWYgdGhpcyBpcyBkZXNpcmVkIHRoZW4gQjwtc0E+LCBCPC1zUD4sIEI8LXNLPiwgQjwtIgorInNVPiBhbmQgQjwtc1I+IHNob3VsZCBiZSB1c2VkIGluc3RlYWQuIgorbXNnc3RyICIiCisiQjwtc2E+LCBCPC1zcD4sIEI8LXNrPiwgQjwtc3U+IG9yYXogQjwtc3I+IG5pZSBuYWRwaXN6xIUgaXN0bmllasSFY3ljaCAiCisiYXJjaGl3w7N3IHRhciBsdWIga2F0YWxvZ8Ozdy4gSmXFm2xpIGplc3QgdG8gd3ltYWdhbmUsIG5hbGXFvHkgdcW8ecSHIEI8LXNBPiwgQjwtIgorInNQPiwgQjwtc0s+LCBCPC1zVT4gaSBCPC1zUj4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMToyODEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1zaz4iCittc2dzdHIgIkI8LXNrPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToyOTAKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRvIGV4cGVjdCB0aGUgb3JpZ2luYWwgc291cmNlIGFzIGEgdGFyZmlsZSwgYnkgZGVmYXVsdCAiCisiSTxwYWNrYWdlPkI8Xz5JPHVwc3RyZWFtLXZlcnNpb24+Qjwub3JpZy50YXIuPkk8ZXh0ZW5zaW9uPi4gIEl0IHdpbGwgbGVhdmUgIgorInRoaXMgb3JpZ2luYWwgc291cmNlIGluIHBsYWNlIGFzIGEgdGFyZmlsZSwgb3IgY29weSBpdCB0byB0aGUgY3VycmVudCAiCisiZGlyZWN0b3J5IGlmIGl0IGlzbid0IGFscmVhZHkgdGhlcmUuIFRoZSB0YXJiYWxsIHdpbGwgYmUgdW5wYWNrZWQgaW50byAiCisiSTxkaXJlY3Rvcnk+Qjwub3JpZz4gZm9yIHRoZSBnZW5lcmF0aW9uIG9mIHRoZSBkaWZmLiIKK21zZ3N0ciAiIgorIk9rcmXFm2xhLCDFvGUgbmFsZcW8eSBzcG9kemlld2HEhyBzacSZIG9yeWdpbmFsbnljaCDFunLDs2RlxYIgdyBwb3N0YWNpIGFyY2hpd3VtICIKKyJ0YXIsIGRvbXnFm2xuaWUgSTxwYWtpZXQ+QjxfPkk8d2Vyc2phLWF1dG9yYS1wYWtpZXR1PkI8Lm9yaWcudGFyLiIKKyI+STxyb3pzemVyemVuaWU+LiBQb3pvc3Rhd2lhIG9yeWdpbmFsbmUgxbpyw7NkxYJhIHcgdHltIHNhbXltIG1pZWpzY3UgamFrbyBwbGlrICIKKyJ0YXIgbHViIGtvcGl1amUgamUgZG8gYmllxbzEhWNlZ28ga2F0YWxvZ3UgamXFm2xpIGplc3pjemUgaWNoIHRhbSBuaWUgbWEuICIKKyJBcmNoaXd1bSBixJlkemllIHJvenBha293YW5lIGRvIEk8a2F0YWxvZ3U+Qjwub3JpZz4gdyBjZWx1IHV0d29yemVuaWEgcGxpa3UgIgorInLDs8W8bmljIChkaWZmKS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjI5MCBkcGtnLXNvdXJjZS4xOjM1OQorIywgbm8td3JhcAorbXNnaWQgIkI8LXNwPiIKK21zZ3N0ciAiQjwtc3A+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjI5NQorbXNnaWQgIkxpa2UgQjwtc2s+IGJ1dCB3aWxsIHJlbW92ZSB0aGUgZGlyZWN0b3J5IGFnYWluIGFmdGVyd2FyZHMuIgorbXNnc3RyICJKYWsgQjwtc2s+LCBhbGUgcG9ub3duaWUgdXN1bmllIGthdGFsb2cgcG8gemFrb8WEY3plbml1LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6Mjk1IGRwa2ctc291cmNlLjE6MzY1CisjLCBuby13cmFwCittc2dpZCAiQjwtc3U+IgorbXNnc3RyICJCPC1zdT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MzAzCittc2dpZCAiIgorIlNwZWNpZmllcyB0aGF0IHRoZSBvcmlnaW5hbCBzb3VyY2UgaXMgZXhwZWN0ZWQgYXMgYSBkaXJlY3RvcnksIGJ5IGRlZmF1bHQgIgorIkk8cGFja2FnZT5CPC0+STx1cHN0cmVhbS12ZXJzaW9uPkI8Lm9yaWc+IGFuZCBCPGRwa2ctc291cmNlPiB3aWxsIGNyZWF0ZSBhICIKKyJuZXcgb3JpZ2luYWwgc291cmNlIGFyY2hpdmUgZnJvbSBpdC4iCittc2dzdHIgIiIKKyJPa3JlxZtsYSwgxbxlIG5hbGXFvHkgc3BvZHppZXdhxIcgc2nEmSBvcnlnaW5hbG55Y2ggxbpyw7NkZcWCIHcgcG9zdGFjaSBrYXRhbG9ndSwgIgorImRvbXnFm2xuaWUgSTxwYWtpZXQ+QjwtPkk8d2Vyc2phLWF1dG9yYS1wYWtpZXR1PkI8Lm9yaWc+LCBuYSBwb2RzdGF3aWUgIgorImt0w7NyZWdvIEI8ZHBrZy1zb3VyY2U+IHV0d29yenkgbm93ZSBhcmNoaXd1bSBvcnlnaW5hbG55Y2ggxbpyw7NkZcWCLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6MzAzCisjLCBuby13cmFwCittc2dpZCAiQjwtc3I+IgorbXNnc3RyICJCPC1zcj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MzA4Cittc2dpZCAiTGlrZSBCPC1zdT4gYnV0IHdpbGwgcmVtb3ZlIHRoYXQgZGlyZWN0b3J5IGFmdGVyIGl0IGhhcyBiZWVuIHVzZWQuIgorbXNnc3RyICJKYWsgQjwtc3U+LCBqZWRuYWvFvGUgdXN1bmllIGthdGFsb2cgcG8gamVnbyB1xbx5Y2l1LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6MzA4CisjLCBuby13cmFwCittc2dpZCAiQjwtc3M+IgorbXNnc3RyICJCPC1zcz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MzE2Cittc2dpZCAiIgorIlNwZWNpZmllcyB0aGF0IHRoZSBvcmlnaW5hbCBzb3VyY2UgaXMgYXZhaWxhYmxlIGJvdGggYXMgYSBkaXJlY3RvcnkgYW5kIGFzIGEgIgorInRhcmZpbGUuIGRwa2ctc291cmNlIHdpbGwgdXNlIHRoZSBkaXJlY3RvcnkgdG8gY3JlYXRlIHRoZSBkaWZmLCBidXQgdGhlICIKKyJ0YXJmaWxlIHRvIGNyZWF0ZSB0aGUgQjwuZHNjPi4gIFRoaXMgb3B0aW9uIG11c3QgYmUgdXNlZCB3aXRoIGNhcmUgLSBpZiB0aGUgIgorImRpcmVjdG9yeSBhbmQgdGFyZmlsZSBkbyBub3QgbWF0Y2ggYSBiYWQgc291cmNlIGFyY2hpdmUgd2lsbCBiZSBnZW5lcmF0ZWQuIgorbXNnc3RyICIiCisiT2tyZcWbbGEsIMW8ZSBvcnlnaW5hbG5lIMW6csOzZMWCYSBzxIUgZG9zdMSZcG5lIHphcsOzd25vIGpha28ga2F0YWxvZyBvcmF6IGpha28gIgorImFyY2hpd3VtIHRhci4gQjxkcGtnLXNvdXJjZT4gYsSZZHppZSB1dHdvcnp5IHBsaWsgcsOzxbxuaWMgbmEgcG9kc3Rhd2llICIKKyJrYXRhbG9ndSwgYWxlIHXFvHlqZSBwbGlrdSB0YXIgZG8gdXR3b3J6ZW5pYSBwbGlrdSBCPC5kc2M+LiBOYWxlxbx5IHXFvHl3YcSHIHRlaiAiCisib3BjamkgeiByb3p3YWfEhSAtIGplxZtsaSBrYXRhbG9nIG9yYXogcGxpayB0YXIgc29iaWUgbmllIG9kcG93aWFkYWrEhSwgIgorInpvc3RhbmllIHd5Z2VuZXJvd2FuZSBuaWVwb3ByYXduZSBhcmNoaXd1bSDFunLDs2TFgm93ZS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjMxNiBkcGtnLXNvdXJjZS4xOjM2OAorIywgbm8td3JhcAorbXNnaWQgIkI8LXNuPiIKK21zZ3N0ciAiQjwtc24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjMyMgorbXNnaWQgIiIKKyJTcGVjaWZpZXMgdG8gbm90IGxvb2sgZm9yIGFueSBvcmlnaW5hbCBzb3VyY2UsIGFuZCB0byBub3QgZ2VuZXJhdGUgYSBkaWZmLiAgIgorIlRoZSBzZWNvbmQgYXJndW1lbnQsIGlmIHN1cHBsaWVkLCBtdXN0IGJlIHRoZSBlbXB0eSBzdHJpbmcuIFRoaXMgaXMgdXNlZCBmb3IgIgorIkRlYmlhbi1zcGVjaWZpYyBwYWNrYWdlcyB3aGljaCBkbyBub3QgaGF2ZSBhIHNlcGFyYXRlIHVwc3RyZWFtIHNvdXJjZSBhbmQgIgorInRoZXJlZm9yZSBoYXZlIG5vIGRlYmlhbmlzYXRpb24gZGlmZnMuIgorbXNnc3RyICIiCisiT2tyZcWbbGEgYWJ5IG5pZSBzenVrYcSHIMW8YWRueWNoIG9yeWdpbmFsbnljaCDFunLDs2RlxYIsIGFuaSBuaWUgZ2VuZXJvd2HEhyBwbGlrdSAiCisicsOzxbxuaWMuIEplxZtsaSBqZXN0IHBvZGFueSBkcnVnaSBhcmd1bWVudCwgbXVzaSBvbiBiecSHIHB1c3R5bSBjacSFZ2llbSB6bmFrw7N3LiAiCisiSmVzdCB0byB1xbx5d2FuZSBkbGEgcGFraWV0w7N3IHNwZWN5Zmljem55Y2ggZGxhIERlYmlhbmEsIGt0w7NyZSBuaWUgbWFqxIUgIgorIm9kZHppZWxueWNoIMW6csOzZGXFgiBpIHcgendpxIV6a3UgeiB0eW0gbmllIG1hasSFIGRlYmlhbml6dWrEhWN5Y2ggcGxpa8OzdyByw7PFvG5pYyAiCisiKGRpZmYpLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6MzIyCisjLCBuby13cmFwCittc2dpZCAiQjwtc2E+IG9yIEI8LXNBPiIKK21zZ3N0ciAiQjwtc2E+IGx1YiBCPC1zQT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MzQ4Cittc2dpZCAiIgorIlNwZWNpZmllcyB0byBsb29rIGZvciB0aGUgb3JpZ2luYWwgc291cmNlIGFyY2hpdmUgYXMgYSB0YXJmaWxlIG9yIGFzIGEgIgorImRpcmVjdG9yeSAtIHRoZSBzZWNvbmQgYXJndW1lbnQsIGlmIGFueSwgbWF5IGJlIGVpdGhlciwgb3IgdGhlIGVtcHR5IHN0cmluZyAiCisiKHRoaXMgaXMgZXF1aXZhbGVudCB0byB1c2luZyBCPC1zbj4pLiAgSWYgYSB0YXJmaWxlIGlzIGZvdW5kIGl0IHdpbGwgdW5wYWNrICIKKyJpdCB0byBjcmVhdGUgdGhlIGRpZmYgYW5kIHJlbW92ZSBpdCBhZnRlcndhcmRzICh0aGlzIGlzIGVxdWl2YWxlbnQgdG8gQjwtIgorInNwPik7IGlmIGEgZGlyZWN0b3J5IGlzIGZvdW5kIGl0IHdpbGwgcGFjayBpdCB0byBjcmVhdGUgdGhlIG9yaWdpbmFsIHNvdXJjZSAiCisiYW5kIHJlbW92ZSBpdCBhZnRlcndhcmRzICh0aGlzIGlzIGVxdWl2YWxlbnQgdG8gQjwtc3I+KTsgaWYgbmVpdGhlciBpcyBmb3VuZCAiCisiaXQgd2lsbCBhc3N1bWUgdGhhdCB0aGUgcGFja2FnZSBoYXMgbm8gZGViaWFuaXNhdGlvbiBkaWZmcywgb25seSBhICIKKyJzdHJhaWdodGZvcndhcmQgc291cmNlIGFyY2hpdmUgKHRoaXMgaXMgZXF1aXZhbGVudCB0byBCPC1zbj4pLiAgSWYgYm90aCBhcmUgIgorImZvdW5kIHRoZW4gQjxkcGtnLXNvdXJjZT4gd2lsbCBpZ25vcmUgdGhlIGRpcmVjdG9yeSwgb3ZlcndyaXRpbmcgaXQsIGlmIEI8LSIKKyJzQT4gd2FzIHNwZWNpZmllZCAodGhpcyBpcyBlcXVpdmFsZW50IHRvIEI8LXNQPikgIG9yIHJhaXNlIGFuIGVycm9yIGlmIEI8LSIKKyJzYT4gd2FzIHNwZWNpZmllZC4gIEI8LXNBPiBpcyB0aGUgZGVmYXVsdC4iCittc2dzdHIgIiIKKyJPa3JlxZtsYSwgxbxlIG5hbGXFvHkgc3p1a2HEhyBvcnlnaW5hbG55Y2ggxbpyw7NkZcWCIHcgcG9zdGFjaSBhcmNoaXd1bSB0YXIgbHViICIKKyJrYXRhbG9ndS4gSmXFm2xpIHBvZGFubyBkcnVnaSBhcmd1bWVudCBtb8W8ZSB3c2thenl3YcSHIG9uIHBsaWsgbHViIGthdGFsb2csICIKKyJhbGJvIGJ5xIcgcHVzdHltIGNpxIVnaWVtIHpuYWvDs3cgKGNvIGplc3QgcsOzd25vd2HFvG5lIHXFvHljaXUgQjwtc24+KS4gSmXFm2xpICIKKyJ6bmFsZXppb255IHpvc3RhbmllIHBsaWsgdGFyLCBixJlkemllIG9uIHJvenBha293YW55IHcgY2VsdSB1dHdvcnplbmlhIHBsaWt1ICIKKyJyw7PFvG5pYywgcG8gY3p5bSB6b3N0YW5pZSBvbiB1c3VuacSZdHkgKGNvIGplc3QgcsOzd25vd2HFvG5lIEI8LXNwPikuIEplxZtsaSAiCisiem9zdGFuaWUgem5hbGV6aW9ueSBrYXRhbG9nLCBixJlkemllIG9uIHNwYWtvd2FueSB3IGNlbHUgdXR3b3J6ZW5pYSBhcmNoaXd1bSAiCisixbpyw7NkxYJvd2VnbywgcG8gY3p5bSB6b3N0YW5pZSBvbiB1c3VuacSZdHkgKGNvIGplc3QgcsOzd25vd2HFvG5lIEI8LXNyPikuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTozNDggZHBrZy1zb3VyY2UuMTo1NDEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tYWJvcnQtb24tdXBzdHJlYW0tY2hhbmdlcz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTozNTQKK21zZ2lkICIiCisiVGhlIHByb2Nlc3MgZmFpbHMgaWYgdGhlIGdlbmVyYXRlZCBkaWZmIGNvbnRhaW5zIGNoYW5nZXMgdG8gZmlsZXMgb3V0c2lkZSBvZiAiCisidGhlIGRlYmlhbiBzdWItZGlyZWN0b3J5LiBUaGlzIG9wdGlvbiBpcyBub3QgYWxsb3dlZCBpbiBCPGRlYmlhbi9zb3VyY2UvIgorIm9wdGlvbnM+IGJ1dCBjYW4gYmUgdXNlZCBpbiBCPGRlYmlhbi9zb3VyY2UvbG9jYWwtb3B0aW9ucz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjM1NQorIywgbm8td3JhcAorbXNnaWQgIkI8RXh0cmFjdCBvcHRpb25zICh3aXRoIC14KTo+IgorbXNnc3RyICJCPE9wY2plIHJvenBha293eXdhbmlhICh6IC14KTo+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjM1OQorbXNnaWQgIkluIGFsbCBjYXNlcyBhbnkgZXhpc3Rpbmcgb3JpZ2luYWwgc291cmNlIHRyZWUgd2lsbCBiZSByZW1vdmVkLiIKK21zZ3N0ciAiIgorIldlIHdzenlzdGtpY2ggcHJ6eXBhZGthY2gsIGlzdG5pZWrEhWNlIG9yeWdpbmFsbmUgZHJ6ZXdvIHplIMW6csOzZMWCYW1pIGLEmWR6aWUgIgorInVzdW5pxJl0ZS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MzY1Cittc2dpZCAiIgorIlVzZWQgd2hlbiBleHRyYWN0aW5nIHRoZW4gdGhlIG9yaWdpbmFsIHNvdXJjZSAoaWYgYW55KSB3aWxsIGJlIGxlZnQgYXMgYSAiCisidGFyZmlsZS4gSWYgaXQgaXMgbm90IGFscmVhZHkgbG9jYXRlZCBpbiB0aGUgY3VycmVudCBkaXJlY3Rvcnkgb3IgaWYgYW4gIgorImV4aXN0aW5nIGJ1dCBkaWZmZXJlbnQgZmlsZSBpcyB0aGVyZSBpdCB3aWxsIGJlIGNvcGllZCB0aGVyZS4gIChCPFRoaXMgaXMgIgorInRoZSBkZWZhdWx0PikuIgorbXNnc3RyICIiCisiSmXFm2xpIHpvc3RhbmllIHXFvHl0YSBwcnp5IHd5cGFrb3d5d2FuaXUsIHd0ZWR5IG9yeWdpbmFsbmUgxbpyw7NkxYJhIChqZcWbbGkgc8SFKSAiCisicG96b3N0YW7EhSB3IGZvcm1pZSBhcmNoaXd1bSB0YXIuIEplxZtsaSBhcmNoaXd1bSBuaWUgbWEgamVzemN6ZSB3IGJpZcW8xIVjeW0gIgorImthdGFsb2d1LCBsdWIgZ2R5IGlzdG5pZWplIGFsZSBqZXN0IHRvIGlubnkgcGxpaywgem9zdGFuaWUgdGFtIHNrb3Bpb3dhbmUuICIKKyIoQjxKZXN0IHRvIHphY2hvd2FuaWUgZG9tecWbbG5lPikuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjM2OAorbXNnaWQgIlVucGFja3MgdGhlIG9yaWdpbmFsIHNvdXJjZSB0cmVlLiIKK21zZ3N0ciAiUm96cGFrb3d1amUgb3J5Z2luYWxuZSBkcnpld28gxbpyw7NkZcWCIHByb2dyYW11LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTozNzMKK21zZ2lkICIiCisiRW5zdXJlcyB0aGF0IHRoZSBvcmlnaW5hbCBzb3VyY2UgaXMgbmVpdGhlciBjb3BpZWQgdG8gdGhlIGN1cnJlbnQgZGlyZWN0b3J5ICIKKyJub3IgdW5wYWNrZWQuIEFueSBvcmlnaW5hbCBzb3VyY2UgdHJlZSB0aGF0IHdhcyBpbiB0aGUgY3VycmVudCBkaXJlY3RvcnkgaXMgIgorInN0aWxsIHJlbW92ZWQuIgorbXNnc3RyICIiCisiWmFwZXduaWEsIMW8ZSBvcnlnaW5hbG5lIMW6csOzZMWCYSBuaWUgYsSZZMSFIGtvcGlvd2FuZSBkbyBiaWXFvMSFY2VnbyBrYXRhbG9ndSBhbmkgIgorInJvenBha293eXdhbmUuIFdlIHdzenlzdGtpY2ggcHJ6eXBhZGthY2gsIGlzdG5pZWrEhWN5IGthdGFsb2cgemUgxbpyw7NkxYJhbWkgIgorImLEmWR6aWUgdXN1bmnEmXR5IHogYmllxbzEhWNlZ28ga2F0YWxvZ3UuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjM3OAorbXNnaWQgIiIKKyJBbGwgdGhlIEI8LXM+STxYPiBvcHRpb25zIGFyZSBtdXR1YWxseSBleGNsdXNpdmUuIElmIHlvdSBzcGVjaWZ5IG1vcmUgdGhhbiAiCisib25lIG9ubHkgdGhlIGxhc3Qgb25lIHdpbGwgYmUgdXNlZC4iCittc2dzdHIgIiIKKyJXc3p5c3RraWUgc3BvxZtyw7NkIG9wY2ppIEI8LXM+STwtWD4gc2nEmSB3emFqZW1uaWUgd3lrbHVjemFqxIUuIEplxZtsaSB6b3N0YW5pZSAiCisicG9kYW5hIHdpxJljZWogbmnFvCBqZWRuYSwgdG8gem9zdGFuaWUgdcW8eXRhIG9zdGF0bmlhIHogbmljaC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjM3OCBkcGtnLXNvdXJjZS4xOjU1NQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1za2lwLWRlYmlhbml6YXRpb24+IgorbXNnc3RyICJCPC0tc2tpcC1kZWJpYW5pemF0aW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTozODEKK21zZ2lkICJTa2lwcyBhcHBsaWNhdGlvbiBvZiB0aGUgZGViaWFuIGRpZmYgb24gdG9wIG9mIHRoZSB1cHN0cmVhbSBzb3VyY2VzLiIKK21zZ3N0ciAiIgorIlBvbWlqYSB3eWtvcnp5c3RhbmllIHLDs8W8bmljIERlYmlhbmEgKGRlYmlhbiBkaWZmKSBkbyBuYcWCb8W8ZW5pYSDFgmF0ZWsgbmEgIgorIm9yeWdpbmFsbmUgxbpyw7NkxYJhLiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6MzgyCisjLCBuby13cmFwCittc2dpZCAiRm9ybWF0OiAyLjAiCittc2dzdHIgIkZvcm1hdDogMi4wIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjM4NgorbXNnaWQgIiIKKyJBbHNvIGtub3duIGFzIHdpZyZwZW4uIFRoaXMgZm9ybWF0IGlzIG5vdCByZWNvbW1lbmRlZCBmb3Igd2lkZS1zcHJlYWQgdXNhZ2UsICIKKyJ0aGUgZm9ybWF0IFwiMy4wIChxdWlsdClcIiByZXBsYWNlcyBpdC4gV2lnJnBlbiB3YXMgdGhlIGZpcnN0IHNwZWNpZmljYXRpb24gIgorIm9mIGEgbmV3LWdlbmVyYXRpb24gc291cmNlIHBhY2thZ2UgZm9ybWF0LiIKK21zZ3N0ciAiIgorIlpuYW55IHLDs3duaWXFvCBqYWtvIHdpZyZwZW4uIFRlbiBmb3JtYXQgbmllIGplc3QgemFsZWNhbnkgZG8gc3plcm9raWVnbyAiCisic3Rvc293YW5pYSwgemFzdMSZcHVqZSBnbyBmb3JtYXQgXCIzLjAgKHF1aWx0KVwiLiBXaWcmcGVuIGJ5xYIgcGllcndzesSFICIKKyJzcGVjeWZpa2FjasSFIG5vd2VqIGdlbmVyYWNqaSBmb3JtYXR1IHBha2lldMOzdyDFunLDs2TFgm93eWNoLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTozOTEKK21zZ2lkICIiCisiVGhlIGJlaGF2aW91ciBvZiB0aGlzIGZvcm1hdCBpcyB0aGUgc2FtZSBhcyB0aGUgXCIzLjAgKHF1aWx0KVwiIGZvcm1hdCAiCisiZXhjZXB0IHRoYXQgaXQgZG9lc24ndCB1c2UgYW4gZXhwbGljaXQgbGlzdCBvZiBwYXRjaGVzLiBBbGwgZmlsZXMgaW4gIgorIkI8ZGViaWFuL3BhdGNoZXMvPiBtYXRjaGluZyB0aGUgcGVybCByZWd1bGFyIGV4cHJlc3Npb24gQjxbXFxldy1dKz4gbXVzdCBiZSAiCisidmFsaWQgcGF0Y2hlczogdGhleSBhcmUgYXBwbGllZCBhdCBleHRyYWN0aW9uIHRpbWUuIgorbXNnc3RyICIiCisiWmFjaG93YW5pZSBkbGEgdGVnbyBmb3JtYXR1IGplc3QgdGFraWUgc2FtbyBqYWsgZGxhIFwiMy4wIChxdWlsdClcIiB6IHTEhSAiCisicsOzxbxuaWPEhSwgxbxlIG5pZSB1xbx5d2EgamF3bmVqIGxpc3R5IMWCYXRlay4gV3N6eXN0a2llIHBsaWtpIHcga2F0YWxvZ3UgIgorIkI8ZGViaWFuL3BhdGNoZXMvPiBwYXN1asSFY2UgZG8gd3lyYcW8ZW5pYSByZWd1bGFybmVnbyBQZXJsYSBCPFtcXGV3LV0rPiBtdXN6xIUgIgorImJ5xIcgcHJhd2lkxYJvd3ltaSDFgmF0a2FtaTogc8SFIG9uZSBuYWvFgmFkYW5lIHBvZGN6YXMgcm96cGFrb3d5d2FuaWEuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjM5NAorbXNnaWQgIiIKKyJXaGVuIGJ1aWxkaW5nIGEgbmV3IHNvdXJjZSBwYWNrYWdlLCBhbnkgY2hhbmdlIHRvIHRoZSB1cHN0cmVhbSBzb3VyY2UgaXMgIgorInN0b3JlZCBpbiBhIHBhdGNoIG5hbWVkIEI8enpfZGViaWFuLWRpZmYtYXV0bz4uIgorbXNnc3RyICIiCisiUG9kY3phcyBidWRvd2FuaWEgbm93ZWdvIHBha2lldHUgxbpyw7NkxYJvd2Vnbywgd3N6eXN0a2llIHptaWFueSB3IHN0b3N1bmt1IGRvICIKKyJrb2R1IMW6csOzZMWCb3dlZ28gcG9jaG9kesSFY2VnbyBvZCBhdXRvcsOzdyBwcm9ncmFtdSBzxIUgemFwaXN5d2FuZSB3IMWCYXRjZSBvICIKKyJuYXp3aWUgQjx6el9kZWJpYW4tZGlmZi1hdXRvPi4iCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjM5NQorIywgbm8td3JhcAorbXNnaWQgIkZvcm1hdDogMy4wIChuYXRpdmUpIgorbXNnc3RyICJGb3JtYXQ6IDMuMCAobmF0aXZlKSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo0MDEKK21zZ2lkICIiCisiVGhpcyBmb3JtYXQgaXMgYW4gZXh0ZW5zaW9uIG9mIHRoZSBuYXRpdmUgcGFja2FnZSBmb3JtYXQgYXMgZGVmaW5lZCBpbiB0aGUgIgorIjEuMCBmb3JtYXQuIEl0IHN1cHBvcnRzIGFsbCBjb21wcmVzc2lvbiBtZXRob2RzIGFuZCB3aWxsIGlnbm9yZSBieSBkZWZhdWx0ICIKKyJhbnkgVkNTIHNwZWNpZmljIGZpbGVzIGFuZCBkaXJlY3RvcmllcyBhcyB3ZWxsIGFzIG1hbnkgdGVtcG9yYXJ5IGZpbGVzIChzZWUgIgorImRlZmF1bHQgdmFsdWUgYXNzb2NpYXRlZCB0byBCPC1JPiBvcHRpb24gaW4gdGhlIEI8LS1oZWxwPiBvdXRwdXQpLiIKK21zZ3N0ciAiIgorIlRlbiBmb3JtYXQgamVzdCByb3pzemVyemVuaWVtIG5hdHl3bmVnbyBmb3JtYXR1IHBha2lldMOzdyB6ZGVmaW5pb3dhbmVnbyB3ICIKKyJmb3JtYWNpZSB3IHdlcnNqaSAxLjAuIE9ic8WCdWd1amUgd3N6eXN0a2llIG1ldG9keSBrb21wcmVzamkgaSBkb215xZtsbmllICIKKyJpZ25vcnVqZSBwbGlraSBpIGthdGFsb2dpIHNwZWN5Zmljem5lIGRsYSBzeXN0ZW3Ds3cga29udHJvbGkgd2Vyc2ppLCBqYWsgIgorInLDs3duaWXFvCB3aWVsZSB0eXDDs3cgcGxpa8OzdyB0eW1jemFzb3d5Y2ggKHByb3N6xJkgc3ByYXdkemnEhyBvcGlzIGRvbXnFm2xuZWogIgorIndhcnRvxZtjaSBvcGNqaSBCPC1JPiB3IGluZm9ybWFjamFjaCB1enlza2l3YW55Y2ggcG9sZWNlbmllbSBCPC0taGVscD4pLiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6NDAyCisjLCBuby13cmFwCittc2dpZCAiRm9ybWF0OiAzLjAgKHF1aWx0KSIKK21zZ3N0ciAiRm9ybWF0OiAzLjAgKHF1aWx0KSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo0MDkKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIkEgc291cmNlIHBhY2thZ2UgaW4gdGhpcyBmb3JtYXQgY29udGFpbnMgYXQgbGVhc3QgYW4gb3JpZ2luYWwgdGFyYmFsbCAoQjwuIgorI3wgIm9yaWcudGFyLj5JPGV4dD4gd2hlcmUgSTxleHQ+IGNhbiBiZSBCPGd6PiwgQjxiejI+IGFuZCBCPGx6bWE+KSBhbmQgYSAiCisjfCAiZGViaWFuIHRhcmJhbGwgKEI8LmRlYmlhbi50YXIuPkk8ZXh0PikuIEl0IGNhbiBhbHNvIGNvbnRhaW4gYWRkaXRpb25hbCAiCisjfCAib3JpZ2luYWwgdGFyYmFsbHMgKEI8Lm9yaWctPkk8Y29tcG9uZW50PkI8LnRhci4+STxleHQ+KS4gIEk8Y29tcG9uZW50PiAiCisjfCAiY2FuIG9ubHkgY29udGFpbiBhbHBoYW51bWVyaWMgY2hhcmFjdGVycyBhbmQgZGFzaGVzIChcIi1cIikuIgorbXNnaWQgIiIKKyJBIHNvdXJjZSBwYWNrYWdlIGluIHRoaXMgZm9ybWF0IGNvbnRhaW5zIGF0IGxlYXN0IGFuIG9yaWdpbmFsIHRhcmJhbGwgKEI8LiIKKyJvcmlnLnRhci4+STxleHQ+IHdoZXJlIEk8ZXh0PiBjYW4gYmUgQjxnej4sIEI8YnoyPiwgQjxsem1hPiBhbmQgQjx4ej4pIGFuZCBhICIKKyJkZWJpYW4gdGFyYmFsbCAoQjwuZGViaWFuLnRhci4+STxleHQ+KS4gSXQgY2FuIGFsc28gY29udGFpbiBhZGRpdGlvbmFsICIKKyJvcmlnaW5hbCB0YXJiYWxscyAoQjwub3JpZy0+STxjb21wb25lbnQ+QjwudGFyLj5JPGV4dD4pLiAgSTxjb21wb25lbnQ+IGNhbiAiCisib25seSBjb250YWluIGFscGhhbnVtZXJpYyBjaGFyYWN0ZXJzIGFuZCBkYXNoZXMgKFwiLVwiKS4iCittc2dzdHIgIiIKKyJQYWtpZXQgxbpyw7NkxYJvd3kgdyB0eW0gZm9ybWFjaWUgemF3aWVyYSBjbyBuYWptbmllaiBvcnlnaW5hbG5lIGFyY2hpd3VtIHRhciAiCisiKEI8Lm9yaWcudGFyLj5JPHJvenN6ZXJ6ZW5pZT4sIGdkemllIEk8cm96c3plcnplbmllbT4gbW/FvGUgYnnEhyBCPGd6PiwgQjxiejI+ICIKKyJpIEI8bHptYT4pIG9yYXogYXJjaGl3dW0gZGViaWFuIChCPC5kZWJpYW4udGFyLj5JPHJvenN6ZXJ6ZW5pZT4pLiBNb8W8ZSAiCisicsOzd25pZcW8IHphd2llcmHEhyBkb2RhdGtvd2Ugb3J5Z2luYWxuZSBhcmNoaXdhIChCPC5vcmlnLT5JPGtvbXBvbmVudD5CPC50YXIuIgorIj5JPHJvenN6ZXJ6ZW5pZT4pLiBJPGtvbXBvbmVudD4gbW/FvGUgemF3aWVyYcSHIGplZHluaWUgem5ha2kgYWxmYW51bWVyeWN6bmUgIgorIm9yYXogem5ha2kgbXnFm2xuaWthIChcIi1cIikuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjQyMAorbXNnaWQgIiIKKyJUaGUgbWFpbiBvcmlnaW5hbCB0YXJiYWxsIGlzIGV4dHJhY3RlZCBmaXJzdCwgdGhlbiBhbGwgYWRkaXRpb25hbCBvcmlnaW5hbCAiCisidGFyYmFsbHMgYXJlIGV4dHJhY3RlZCBpbiBzdWJkaXJlY3RvcmllcyBuYW1lZCBhZnRlciB0aGUgSTxjb21wb25lbnQ+IHBhcnQgIgorIm9mIHRoZWlyIGZpbGVuYW1lIChhbnkgcHJlLWV4aXN0aW5nIGRpcmVjdG9yeSBpcyByZXBsYWNlZCkuIFRoZSBkZWJpYW4gIgorInRhcmJhbGwgaXMgZXh0cmFjdGVkIG9uIHRvcCBvZiB0aGUgc291cmNlIGRpcmVjdG9yeSBhZnRlciBwcmlvciByZW1vdmFsIG9mICIKKyJhbnkgcHJlLWV4aXN0aW5nIEI8ZGViaWFuPiBkaXJlY3RvcnkuIE5vdGUgdGhhdCB0aGUgZGViaWFuIHRhcmJhbGwgbXVzdCAiCisiY29udGFpbiBhIEI8ZGViaWFuPiBzdWItZGlyZWN0b3J5IGJ1dCBpdCBjYW4gYWxzbyBjb250YWluIGJpbmFyeSBmaWxlcyAiCisib3V0c2lkZSBvZiB0aGF0IGRpcmVjdG9yeSAoc2VlIEI8LS1pbmNsdWRlLWJpbmFyaWVzPiBvcHRpb24pLiIKK21zZ3N0ciAiIgorIk5hanBpZXJ3IHJvenBha293eXdhbmUgamVzdCBnxYLDs3duZSBvcnlnaW5hbG5lIGFyY2hpd3VtIHRhciwgbmFzdMSZcG5pZSAiCisicm96cGFrb3d5d2FuZSBzxIUgZG9kYXRrb3dlIG9yeWdpbmFsbmUgYXJjaGl3YSB0YXIgZG8gcG9ka2F0YWxvZ8OzdyBuYXp3YW55Y2ggIgorIm9kIGN6xJnFm2NpIEk8a29tcG9uZW50PiB6IGljaCBuYXp3eSBwbGlrdSAoaXN0bmllasSFY2Uga2F0YWxvZ2kgbyB0YWtpY2ggIgorIm5hendhY2ggc8SFIHphbWllbmlhbmUpLiBOYSBrb8WEY3Ugcm96cGFrb3d5d2FuZSBqZXN0IGFyY2hpd3VtIGRlYmlhbiwgcG8gIgorInVwcnplZG5pbSB1c3VuacSZY2l1IGthdGFsb2d1IEI8ZGViaWFuPiAoamXFm2xpIHRha2kgaXN0bmlhxYIpLiBOYWxlxbx5ICIKKyJ6YXV3YcW8ecSHLCDFvGUgYXJjaGl3dW0gZGViaWFuIG11c2kgemF3aWVyYcSHIHBvZGthdGFsb2cgQjxkZWJpYW4+LCBhbGUgbW/FvGUgIgorInLDs3duaWXFvCB6YXdpZXJhxIcgcGxpa2kgYmluYXJuZSBwb3phIHR5bSBrYXRhbG9naWVtIChwcm9zesSZIHNwcmF3ZHppxIcgb3BjasSZICIKKyJCPC0taW5jbHVkZS1iaW5hcmllcz4pLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo0MzIKK21zZ2lkICIiCisiQWxsIHBhdGNoZXMgbGlzdGVkIGluIEI8ZGViaWFuL3BhdGNoZXMvZGViaWFuLnNlcmllcz4gb3IgQjxkZWJpYW4vcGF0Y2hlcy8iCisic2VyaWVzPiBhcmUgdGhlbiBhcHBsaWVkLiAgSWYgdGhlIGZvcm1lciBmaWxlIGlzIHVzZWQgYW5kIHRoZSBsYXR0ZXIgb25lICIKKyJkb2Vzbid0IGV4aXN0IChvciBpcyBhIHN5bWxpbmspLCB0aGVuIHRoZSBsYXR0ZXIgaXMgcmVwbGFjZWQgd2l0aCBhIHN5bWxpbmsgIgorInRvIHRoZSBmb3JtZXIuIFRoaXMgaXMgbWVhbnQgdG8gc2ltcGxpZnkgdXNhZ2Ugb2YgcXVpbHQgdG8gbWFuYWdlIHRoZSBzZXQgb2YgIgorInBhdGNoZXMuIE5vdGUgaG93ZXZlciB0aGF0IHdoaWxlIEI8ZHBrZy1zb3VyY2U+IHBhcnNlcyBjb3JyZWN0bHkgc2VyaWVzICIKKyJmaWxlcyB3aXRoIGV4cGxpY2l0IG9wdGlvbnMgdXNlZCBmb3IgcGF0Y2ggYXBwbGljYXRpb24gKHN0b3JlZCBvbiBlYWNoIGxpbmUgIgorImFmdGVyIHRoZSBwYXRjaCBmaWxlbmFtZSBhbmQgb25lIG9yIG1vcmUgc3BhY2VzKSwgaXQgZG9lcyBpZ25vcmUgdGhvc2UgIgorIm9wdGlvbnMgYW5kIGFsd2F5cyBleHBlY3QgcGF0Y2hlcyB0aGF0IGNhbiBiZSBhcHBsaWVkIHdpdGggdGhlIEI8LXAxPiBvcHRpb24gIgorIm9mIEI8cGF0Y2g+LiBJdCB3aWxsIHRodXMgZW1pdCBhIHdhcm5pbmcgd2hlbiBpdCBlbmNvdW50ZXJzIHN1Y2ggb3B0aW9ucywgIgorImFuZCB0aGUgYnVpbGQgaXMgbGlrZWx5IHRvIGZhaWwuIgorbXNnc3RyICIiCisiTmFzdMSZcG5pZSBuYWvFgmFkYW5lIHPEhSB3c3p5c3RraWUgxYJhdGtpIHd5bWllbmlvbmUgdyBCPGRlYmlhbi9wYXRjaGVzL2RlYmlhbi4iCisic2VyaWVzPiBsdWIgQjxkZWJpYW4vcGF0Y2hlcy9zZXJpZXM+LiBKZcWbbGkgamVzdCB1xbx5dHkgcGllcndzenkgeiB0eWNoICIKKyJwbGlrw7N3IGEgZHJ1Z2kgeiBuaWNoIG5pZSBpc3RuaWVqZSAobHViIGplc3QgxYLEhWN6ZW0gc3ltYm9saWN6bnltKSwgd3RlZHkgdGVuICIKKyJkcnVnaSBwbGlrIGplc3QgemFzdMSZcG93YW55IMWCxIVjemVtIHN5bWJvbGljem55bSBkbyBwaWVyd3N6ZWdvIHBsaWt1LiBNYSB0byAiCisidXByb8WbY2nEhyB1xbx5d2FuaWUgcXVpbHQgZG8gemFyesSFZHphbmlhIHpiaW9yZW0gxYJhdGVrLiBOYWxlxbx5IHphdXdhxbx5xIcsIMW8ZSBvICIKKyJpbGUgQjxkcGtnLXNvdXJjZT4gcG9wcmF3bmllIHByemV0d2FyemEgcGxpa2kgc2VyaWVzIHogcG9kYW55bWkgamF3bmllICIKKyJvcGNqYW1pIHByb2dyYW11IHBhdGNoICh6YXBpc2FueW1pIHcga2HFvGRlaiB6IGxpbmlpIHBvIG5hendpZSBwbGlrdSB6IMWCYXRrxIUgIgorImkgamVkbmVqIGx1YiB3acSZY2VqIHNwYWNqaSksIHRvIGplZG5hayBpZ25vcnVqZSB0ZSBvcGNqZSBpIHphd3N6ZSBvY3pla3VqZSAiCisixYJhdGVrLCBrdMOzcmUgbW/FvG5hIG5hxYJvxbx5xIcgdcW8eXdhasSFYyBvcGNqaSBCPC1wMT4gcHJvZ3JhbXUgQjxwYXRjaD4uIFBvICIKKyJuYXBvdGthbml1IHRha2ljaCBvcGNqaSB3eXN5xYJhbmUgamVzdCBvc3RyemXFvGVuaWUsIHphxZsgcHJvY2VzIGJ1ZG93YW5pYSAiCisicHJhd2RvcG9kb2JuaWUgc2nEmSBuaWUgcG93aWVkemllLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo0MzQKK21zZ2lkICIiCisiU2ltaWxhcmx5IHRvIHF1aWx0J3MgZGVmYXVsdCBiZWhhdmlvdXIsIHRoZSBwYXRjaGVzIGNhbiByZW1vdmUgZmlsZXMgdG9vLiIKK21zZ3N0ciAiIgorIlBvZG9ibmllIGRvIGRvbXnFm2xuZWdvIHphY2hvd2FuaWEgcXVpbHQsIMWCYXRraSBtb2fEhSB0YWvFvGUgdXN1d2HEhyBwbGlraS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NDM3CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJUaGUgZmlsZSBCPGRlYmlhbi9wYXRjaGVzLy5kcGtnLXNvdXJjZS1hcHBsaWVkPiBpcyBjcmVhdGVkIGlmIHNvbWUgIgorI3wgInBhdGNoZXMgaGF2ZSBiZWVuIGFwcGxpZWQgZHVyaW5nIHRoZSBleHRyYWN0aW9uLiIKK21zZ2lkICIiCisiVGhlIGZpbGUgQjwucGMvYXBwbGllZC1wYXRjaGVzPiBpcyBjcmVhdGVkIGlmIHNvbWUgcGF0Y2hlcyBoYXZlIGJlZW4gYXBwbGllZCAiCisiZHVyaW5nIHRoZSBleHRyYWN0aW9uLiIKK21zZ3N0ciAiIgorIkplxZtsaSBwb2RjemFzIHJvenBha293eXdhbmlhIHpvc3RhxYJ5IG5hxYJvxbxvbmUgamFraWXFmyDFgmF0a2ksIHR3b3J6b255IGplc3QgIgorInBsaWsgQjxkZWJpYW4vcGF0Y2hlcy8uZHBrZy1zb3VyY2UtYXBwbGllZD4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjQ1MQorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiQWxsIG9yaWdpbmFsIHRhcmJhbGxzIGZvdW5kIGluIHRoZSBjdXJyZW50IGRpcmVjdG9yeSBhcmUgZXh0cmFjdGVkIGluIGEgIgorI3wgInRlbXBvcmFyeSBkaXJlY3RvcnkgYnkgZm9sbG93aW5nIHRoZSBzYW1lIGxvZ2ljIGFzIGZvciB0aGUgdW5wYWNrLCB0aGUgIgorI3wgImRlYmlhbiBkaXJlY3RvcnkgaXMgY29waWVkIG92ZXIgaW4gdGhlIHRlbXBvcmFyeSBkaXJlY3RvcnksIGFuZCBhbGwgIgorI3wgInBhdGNoZXMgZXhjZXB0IEI8ZGViaWFuLWNoYW5nZXMtPkk8dmVyc2lvbj4gYXJlIGFwcGxpZWQuICBUaGUgdGVtcG9yYXJ5ICIKKyN8ICJkaXJlY3RvcnkgaXMgY29tcGFyZWQgdG8gdGhlIHNvdXJjZSBwYWNrYWdlIGRpcmVjdG9yeSBhbmQgdGhlIGRpZmYgKGlmICIKKyN8ICJub24tZW1wdHkpIGlzIHN0b3JlZCBpbiBCPGRlYmlhbi9wYXRjaGVzL2RlYmlhbi1jaGFuZ2VzLT5JPHZlcnNpb24+LiBBbnkgIgorI3wgImNoYW5nZSBvbiBhIGJpbmFyeSBmaWxlIGlzIG5vdCByZXByZXNlbnRhYmxlIGluIGEgZGlmZiBhbmQgd2lsbCB0aHVzIGxlYWQgIgorI3wgInRvIGEgZmFpbHVyZSB1bmxlc3MgdGhlIG1haW50YWluZXIgZGVsaWJlcmF0ZWx5IGRlY2lkZWQgdG8gaW5jbHVkZSB0aGF0ICIKKyN8ICJtb2RpZmllZCBiaW5hcnkgZmlsZSBpbiB0aGUgZGViaWFuIHRhcmJhbGwgKGJ5IGxpc3RpbmcgaXQgaW4gQjxkZWJpYW4vIgorI3wgInNvdXJjZS9pbmNsdWRlLWJpbmFyaWVzPikuIFRoZSBidWlsZCB3aWxsIGFsc28gZmFpbCBpZiBpdCBmaW5kcyBiaW5hcnkgIgorI3wgImZpbGVzIGluIHRoZSBkZWJpYW4gc3ViLWRpcmVjdG9yeSB1bmxlc3MgdGhleSBoYXZlIGJlZW4gd2hpdGVsaXN0ZWQgIgorI3wgInRocm91Z2ggQjxkZWJpYW4vc291cmNlL2luY2x1ZGUtYmluYXJpZXM+LiIKK21zZ2lkICIiCisiQWxsIG9yaWdpbmFsIHRhcmJhbGxzIGZvdW5kIGluIHRoZSBjdXJyZW50IGRpcmVjdG9yeSBhcmUgZXh0cmFjdGVkIGluIGEgIgorInRlbXBvcmFyeSBkaXJlY3RvcnkgYnkgZm9sbG93aW5nIHRoZSBzYW1lIGxvZ2ljIGFzIGZvciB0aGUgdW5wYWNrLCB0aGUgIgorImRlYmlhbiBkaXJlY3RvcnkgaXMgY29waWVkIG92ZXIgaW4gdGhlIHRlbXBvcmFyeSBkaXJlY3RvcnksIGFuZCBhbGwgcGF0Y2hlcyAiCisiZXhjZXB0IHRoZSBhdXRvbWF0aWMgcGF0Y2ggKEI8ZGViaWFuLWNoYW5nZXMtPkk8dmVyc2lvbj4gb3IgQjxkZWJpYW4tIgorImNoYW5nZXM+LCBkZXBlbmRpbmcgb24gQjwtLXNpbmdsZS1kZWJpYW4tcGF0Y2g+KSBhcmUgYXBwbGllZC4gVGhlIHRlbXBvcmFyeSAiCisiZGlyZWN0b3J5IGlzIGNvbXBhcmVkIHRvIHRoZSBzb3VyY2UgcGFja2FnZSBkaXJlY3RvcnkuIFdoZW4gdGhlIGRpZmYgaXMgbm9uLSIKKyJlbXB0eSwgdGhlIGJ1aWxkIGZhaWxzIHVubGVzcyBCPC0tc2luZ2xlLWRlYmlhbi1wYXRjaD4gb3IgQjwtLWF1dG8tY29tbWl0PiAiCisiaGFzIGJlZW4gdXNlZCwgaW4gd2hpY2ggY2FzZSB0aGUgZGlmZiBpcyBzdG9yZWQgaW4gdGhlIGF1dG9tYXRpYyBwYXRjaC4gIElmICIKKyJ0aGUgYXV0b21hdGljIHBhdGNoIGlzIGNyZWF0ZWQvZGVsZXRlZCwgaXQncyBhZGRlZC9yZW1vdmVkIGZyb20gdGhlIHNlcmllcyAiCisiZmlsZSBhbmQgZnJvbSB0aGUgcXVpbHQgbWV0YWRhdGEuIgorbXNnc3RyICIiCisiV3N6eXN0a2llIG9yeWdpbmFsbmUgYXJjaGl3YSB6bmFsZXppb25lIHcgYmllxbzEhWN5bSBrYXRhbG9ndSBzxIUgcm96cGFrb3d5d2FuZSAiCisiZG8ga2F0YWxvZ3UgdHltY3phc293ZWdvIHcgdGFraSBzYW0gc3Bvc8OzYiBqYWsgZGxhIHVucGFjaywgbmFzdMSZcG5pZSBrYXRhbG9nICIKKyJkZWJpYW4gamVzdCBrb3Bpb3dhbnkgZG8ga2F0YWxvZ3UgdHltY3phc293ZWdvIGkgbmFrxYJhZGFuZSBzxIUgd3N6eXN0a2llICIKKyLFgmF0a2ksIHogd3nFgsSFY3plbmllbSBqZWR5bmllIEI8ZGViaWFuLWNoYW5nZXMtPkk8d2Vyc2phPi4gS2F0YWxvZyB0eW1jemFzb3d5ICIKKyJqZXN0IHBvcsOzd255d2FueSB6IGthdGFsb2dpZW0gcGFraWV0dSDFunLDs2TFgm93ZWdvIGEgcGxpayByw7PFvG5pYyAoamXFm2xpIGplc3QgIgorIm5pZXB1c3R5KSBqZXN0IHphcGlzeXdhbnkgdyBCPGRlYmlhbi9wYXRjaGVzL2RlYmlhbi1jaGFuZ2VzLT5JPHdlcnNqYT4uICIKKyLFu2FkbmUgem1pYW55IHcgamFraW1rb2x3aWVrIHBsaWt1IGJpbmFybnltIG5pZSBtb2fEhSBiecSHIG9kd3pvcm93YW5lIHcgcGxpa3UgIgorInptaWFuLCBjbyBkb3Byb3dhZHppIGRvIG5pZXBvd29kemVuaWEgLSBjaHliYSwgxbxlIG9waWVrdW4gcGFraWV0dSByb3ptecWbbG5pZSAiCisiemRlY3lkb3dhxYIgbyB3xYLEhWN6ZW5pdSB0YWsgem1vZHlmaWtvd2FuZWdvIHBsaWt1IGJpbmFybmVnbyBkbyBhcmNoaXd1bSAiCisiZGViaWFuICh3c2thenVqxIVjIGdvIHcgQjxkZWJpYW4vc291cmNlL2luY2x1ZGUtYmluYXJpZXM+KS4gUHJvY2VzIGJ1ZG93YW5pYSAiCisibmllIHBvd2llZHppZSBzacSZIHRha8W8ZSBqZcWbbGkgem9zdGFuxIUgem5hbGV6aW9uZSBwbGlraSBiaW5hcm5lIHcgcG9ka2F0YWxvZ3UgIgorImRlYmlhbiwgY2h5YmEgxbxlIHpvc3RhxYJ5IG9uZSB1cHJ6ZWRuaW8gd3ltaWVuaW9uZSB3IEI8ZGViaWFuL3NvdXJjZS9pbmNsdWRlLSIKKyJiaW5hcmllcz4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjQ1OQorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiQWxsIG9yaWdpbmFsIHRhcmJhbGxzIGZvdW5kIGluIHRoZSBjdXJyZW50IGRpcmVjdG9yeSBhcmUgZXh0cmFjdGVkIGluIGEgIgorI3wgInRlbXBvcmFyeSBkaXJlY3RvcnkgYnkgZm9sbG93aW5nIHRoZSBzYW1lIGxvZ2ljIGFzIGZvciB0aGUgdW5wYWNrLCB0aGUgIgorI3wgImRlYmlhbiBkaXJlY3RvcnkgaXMgY29waWVkIG92ZXIgaW4gdGhlIHRlbXBvcmFyeSBkaXJlY3RvcnksIGFuZCBhbGwgIgorI3wgInBhdGNoZXMgZXhjZXB0IEI8ZGViaWFuLWNoYW5nZXMtPkk8dmVyc2lvbj4gYXJlIGFwcGxpZWQuICBUaGUgdGVtcG9yYXJ5ICIKKyN8ICJkaXJlY3RvcnkgaXMgY29tcGFyZWQgdG8gdGhlIHNvdXJjZSBwYWNrYWdlIGRpcmVjdG9yeSBhbmQgdGhlIGRpZmYgKGlmICIKKyN8ICJub24tZW1wdHkpIGlzIHN0b3JlZCBpbiBCPGRlYmlhbi9wYXRjaGVzL2RlYmlhbi1jaGFuZ2VzLT5JPHZlcnNpb24+LiBBbnkgIgorI3wgImNoYW5nZSBvbiBhIGJpbmFyeSBmaWxlIGlzIG5vdCByZXByZXNlbnRhYmxlIGluIGEgZGlmZiBhbmQgd2lsbCB0aHVzIGxlYWQgIgorI3wgInRvIGEgZmFpbHVyZSB1bmxlc3MgdGhlIG1haW50YWluZXIgZGVsaWJlcmF0ZWx5IGRlY2lkZWQgdG8gaW5jbHVkZSB0aGF0ICIKKyN8ICJtb2RpZmllZCBiaW5hcnkgZmlsZSBpbiB0aGUgZGViaWFuIHRhcmJhbGwgKGJ5IGxpc3RpbmcgaXQgaW4gQjxkZWJpYW4vIgorI3wgInNvdXJjZS9pbmNsdWRlLWJpbmFyaWVzPikuIFRoZSBidWlsZCB3aWxsIGFsc28gZmFpbCBpZiBpdCBmaW5kcyBiaW5hcnkgIgorI3wgImZpbGVzIGluIHRoZSBkZWJpYW4gc3ViLWRpcmVjdG9yeSB1bmxlc3MgdGhleSBoYXZlIGJlZW4gd2hpdGVsaXN0ZWQgIgorI3wgInRocm91Z2ggQjxkZWJpYW4vc291cmNlL2luY2x1ZGUtYmluYXJpZXM+LiIKK21zZ2lkICIiCisiQW55IGNoYW5nZSBvbiBhIGJpbmFyeSBmaWxlIGlzIG5vdCByZXByZXNlbnRhYmxlIGluIGEgZGlmZiBhbmQgd2lsbCB0aHVzICIKKyJsZWFkIHRvIGEgZmFpbHVyZSB1bmxlc3MgdGhlIG1haW50YWluZXIgZGVsaWJlcmF0ZWx5IGRlY2lkZWQgdG8gaW5jbHVkZSB0aGF0ICIKKyJtb2RpZmllZCBiaW5hcnkgZmlsZSBpbiB0aGUgZGViaWFuIHRhcmJhbGwgKGJ5IGxpc3RpbmcgaXQgaW4gQjxkZWJpYW4vc291cmNlLyIKKyJpbmNsdWRlLWJpbmFyaWVzPikuIFRoZSBidWlsZCB3aWxsIGFsc28gZmFpbCBpZiBpdCBmaW5kcyBiaW5hcnkgZmlsZXMgaW4gdGhlICIKKyJkZWJpYW4gc3ViLWRpcmVjdG9yeSB1bmxlc3MgdGhleSBoYXZlIGJlZW4gd2hpdGVsaXN0ZWQgdGhyb3VnaCBCPGRlYmlhbi8iCisic291cmNlL2luY2x1ZGUtYmluYXJpZXM+LiIKK21zZ3N0ciAiIgorIldzenlzdGtpZSBvcnlnaW5hbG5lIGFyY2hpd2Egem5hbGV6aW9uZSB3IGJpZcW8xIVjeW0ga2F0YWxvZ3Ugc8SFIHJvenBha293eXdhbmUgIgorImRvIGthdGFsb2d1IHR5bWN6YXNvd2VnbyB3IHRha2kgc2FtIHNwb3PDs2IgamFrIGRsYSB1bnBhY2ssIG5hc3TEmXBuaWUga2F0YWxvZyAiCisiZGViaWFuIGplc3Qga29waW93YW55IGRvIGthdGFsb2d1IHR5bWN6YXNvd2VnbyBpIG5ha8WCYWRhbmUgc8SFIHdzenlzdGtpZSAiCisixYJhdGtpLCB6IHd5xYLEhWN6ZW5pZW0gamVkeW5pZSBCPGRlYmlhbi1jaGFuZ2VzLT5JPHdlcnNqYT4uIEthdGFsb2cgdHltY3phc293eSAiCisiamVzdCBwb3LDs3dueXdhbnkgeiBrYXRhbG9naWVtIHBha2lldHUgxbpyw7NkxYJvd2VnbyBhIHBsaWsgcsOzxbxuaWMgKGplxZtsaSBqZXN0ICIKKyJuaWVwdXN0eSkgamVzdCB6YXBpc3l3YW55IHcgQjxkZWJpYW4vcGF0Y2hlcy9kZWJpYW4tY2hhbmdlcy0+STx3ZXJzamE+LiAiCisixbthZG5lIHptaWFueSB3IGpha2lta29sd2llayBwbGlrdSBiaW5hcm55bSBuaWUgbW9nxIUgYnnEhyBvZHd6b3Jvd2FuZSB3IHBsaWt1ICIKKyJ6bWlhbiwgY28gZG9wcm93YWR6aSBkbyBuaWVwb3dvZHplbmlhIC0gY2h5YmEsIMW8ZSBvcGlla3VuIHBha2lldHUgcm96bXnFm2xuaWUgIgorInpkZWN5ZG93YcWCIG8gd8WCxIVjemVuaXUgdGFrIHptb2R5Zmlrb3dhbmVnbyBwbGlrdSBiaW5hcm5lZ28gZG8gYXJjaGl3dW0gIgorImRlYmlhbiAod3NrYXp1asSFYyBnbyB3IEI8ZGViaWFuL3NvdXJjZS9pbmNsdWRlLWJpbmFyaWVzPikuIFByb2NlcyBidWRvd2FuaWEgIgorIm5pZSBwb3dpZWR6aWUgc2nEmSB0YWvFvGUgamXFm2xpIHpvc3RhbsSFIHpuYWxlemlvbmUgcGxpa2kgYmluYXJuZSB3IHBvZGthdGFsb2d1ICIKKyJkZWJpYW4sIGNoeWJhIMW8ZSB6b3N0YcWCeSBvbmUgdXByemVkbmlvIHd5bWllbmlvbmUgdyBCPGRlYmlhbi9zb3VyY2UvaW5jbHVkZS0iCisiYmluYXJpZXM+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo0NjIKK21zZ2lkICIiCisiVGhlIHVwZGF0ZWQgZGViaWFuIGRpcmVjdG9yeSBhbmQgdGhlIGxpc3Qgb2YgbW9kaWZpZWQgYmluYXJpZXMgaXMgdGhlbiB1c2VkICIKKyJ0byBnZW5lcmF0ZSB0aGUgZGViaWFuIHRhcmJhbGwuIgorbXNnc3RyICIiCisiWmFrdHVhbGl6b3dhbnkga2F0YWxvZyBkZWJpYW4gb3JheiBsaXN0YSB6bW9keWZpa293YW55Y2ggcGxpa8OzdyBiaW5hcm55Y2ggc8SFICIKKyJuYXN0xJlwbmllIHXFvHl3YW5lIGRvIHBvd3TDs3JuZWdvIHd5Z2VuZXJvd2FuaWEgYXJjaGl3dW0gZGViaWFuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo0NjgKK21zZ2lkICIiCisiVGhlIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGRpZmYgZG9lc24ndCBpbmNsdWRlIGNoYW5nZXMgb24gVkNTIHNwZWNpZmljICIKKyJmaWxlcyBhcyB3ZWxsIGFzIG1hbnkgdGVtcG9yYXJ5IGZpbGVzIChzZWUgZGVmYXVsdCB2YWx1ZSBhc3NvY2lhdGVkIHRvIEI8LWk+ICIKKyJvcHRpb24gaW4gdGhlIEI8LS1oZWxwPiBvdXRwdXQpLiBJbiBwYXJ0aWN1bGFyLCB0aGUgQjwucGM+IGRpcmVjdG9yeSB1c2VkIGJ5ICIKKyJxdWlsdCBpcyBpZ25vcmVkIGR1cmluZyBnZW5lcmF0aW9uIG9mIHRoZSBhdXRvbWF0aWMgcGF0Y2guIgorbXNnc3RyICIiCisiQXV0b21hdHljem5pZSB3eWdlbmVyb3dhbnkgcGxpayByw7PFvG5pYyBuaWUgemF3aWVyYSB6bWlhbiB3IHBsaWthY2ggIgorInNwZWN5Zmljem55Y2ggZGxhIHN5c3RlbcOzdyBrb250cm9saSB3ZXJzamksIGphayByw7N3bmllxbwgdyB3aWVsdSB0eXBhY2ggIgorInBsaWvDs3cgdHltY3phc293eWNoIChwcm9zesSZIHNwcmF3ZHppxIcgb3BpcyBkb215xZtsbmVqIHdhcnRvxZtjaSBvcGNqaSBCPC1pPiB3ICIKKyJpbmZvcm1hY2phY2ggdXp5c2tpd2FueWNoIHBvbGVjZW5pZW0gQjwtLWhlbHA+KS4gVyBzemN6ZWfDs2xub8WbY2ksIGthdGFsb2cgQjwuIgorInBjPiB1xbx5d2FueSBwcnpleiBxdWlsdCBqZXN0IGlnbm9yb3dhbnkgcG9kY3phcyBhdXRvbWF0eWN6bmVnbyBnZW5lcm93YW5pYSAiCisixYJhdGtpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo0NzcKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIk5vdGU6IEI8ZHBrZy1zb3VyY2U+IGV4cGVjdHMgdGhlIHNvdXJjZSB0cmVlIHRvIGhhdmUgYWxsIHBhdGNoZXMgbGlzdGVkICIKKyN8ICJpbiB0aGUgc2VyaWVzIGZpbGUgYXBwbGllZCB3aGVuIHlvdSBnZW5lcmF0ZSB0aGUgc291cmNlIHBhY2thZ2UuICBUaGlzIGlzICIKKyN8ICJub3QgdGhlIGNhc2Ugd2hlbiB0aGUgc291cmNlIHRyZWUgaGFzIGJlZW4gb2J0YWluZWQgYnkgdW5wYWNraW5nIGEgc291cmNlICIKKyN8ICJwYWNrYWdlIHVzaW5nIHRoZSBGb3JtYXQ6IDEuMCBmb3IgaW5zdGFuY2UuIFRvIG1pdGlnYXRlIHRoZSBwcm9ibGVtLCAiCisjfCAiQjxkcGtnLXNvdXJjZT4gd2lsbCBhcHBseSB0aGUgcGF0Y2hlcyBieSBpdHNlbGYgaWYgaXQgYmVsaWV2ZXMgdGhhdCB0aGV5ICIKKyN8ICJoYXZlIG5vdCB5ZXQgYmVlbiBhcHBsaWVkLiBUbyBkZXRlY3QgdGhpcyBzaXR1YXRpb24sIGl0IHVzZXMgdGhlICIKKyN8ICJmb2xsb3dpbmcgaGV1cmlzdGljOiBpZiBhIEI8LnBjPiBzdWJkaXJlY3RvcnkgaXMgZGV0ZWN0ZWQsIGl0IHdpbGwgY2FsbCAiCisjfCAiQjxxdWlsdCB1bmFwcGxpZWQ+IHRvIGZpbmQgb3V0IGlmIHNvbWUgcGF0Y2hlcyBhcmUgbm90IGFwcGxpZWQuIEFmdGVyICIKKyN8ICJ0aGF0LCBpdCB3aWxsIHRha2UgdGhlIGZpcnN0IHBhdGNoIG9mIHRoZSBzZXJpZXMgKG9yIHRoZSBmaXJzdCB1bmFwcGxpZWQgIgorI3wgInBhdGNoIHJldHVybmVkIGJ5IEI8cXVpbHQgdW5hcHBsaWVkPiwgaWYgYW55KSBhbmQgdmVyaWZ5IGlmIGl0IGNhbiBiZSAiCisjfCAiYXBwbGllZCB3aXRob3V0IGVycm9ycy4gSWYgdGhlIHZlcmlmaWNhdGlvbiBzdWNjZWVkcywgaXQgY29uY2x1ZGVzIHRoYXQgIgorI3wgInBhdGNoZXMgaGF2ZSBub3QgYmVlbiBhcHBsaWVkIGFuZCB3aWxsIGFwcGx5IHRoZW0gYWxsLiAgVGhlIG9wdGlvbiBCPC0tbm8tIgorI3wgInByZXBhcmF0aW9uPiBjYW4gYmUgdXNlZCB0byBkaXNhYmxlIHRoaXMgYmVoYXZpb3VyLiIKK21zZ2lkICIiCisiTm90ZTogQjxkcGtnLXNvdXJjZT4gQjwtLWJlZm9yZS1idWlsZD4gKGFuZCBCPC1iPikgd2lsbCBlbnN1cmUgdGhhdCBhbGwgIgorInBhdGNoZXMgbGlzdGVkIGluIHRoZSBzZXJpZXMgZmlsZSBhcmUgYXBwbGllZCBzbyB0aGF0IGEgcGFja2FnZSBidWlsZCBhbHdheXMgIgorImhhcyBhbGwgcGF0Y2hlcyBhcHBsaWVkLiBJdCBkb2VzIHRoaXMgYnkgZmluZGluZyB1bmFwcGxpZWQgcGF0Y2hlcyAodGhleSBhcmUgIgorImxpc3RlZCBpbiB0aGUgQjxzZXJpZXM+IGZpbGUgYnV0IG5vdCBpbiBCPC5wYy9hcHBsaWVkLXBhdGNoZXM+KSwgYW5kIGlmIHRoZSAiCisiZmlyc3QgcGF0Y2ggaW4gdGhhdCBzZXQgY2FuIGJlIGFwcGxpZWQgd2l0aG91dCBlcnJvcnMsIGl0IHdpbGwgYXBwbHkgdGhlbSAiCisiYWxsLiBUaGUgb3B0aW9uIEI8LS1uby1wcmVwYXJhdGlvbj4gY2FuIGJlIHVzZWQgdG8gZGlzYWJsZSB0aGlzIGJlaGF2aW9yLiIKK21zZ3N0ciAiIgorIlV3YWdhOiBCPGRwa2ctc291cmNlPiB6YWvFgmFkYSwgxbxlIGRyemV3byB6ZSDFunLDs2TFgmFtaSBixJlkemllIG1pZcSHIG5hxYJvxbxvbmUgIgorIndzenlzdGtpZSDFgmF0a2kgb2tyZcWbbG9uZSB3IHBsaWt1IHNlcmllcyBwb2RjemFzIGdlbmVyb3dhbmlhIHBha2lldHUgIgorIsW6csOzZMWCb3dlZ28uIE5pZSBqZXN0IHRhaywgamXFm2xpIGRyemV3byDFunLDs2RlxYIgem9zdGHFgm8gdXp5c2thbmUgcHJ6ZXogIgorInJvenBha293YW5pZSBwYWtpZXR1IMW6csOzZMWCb3dlZ28gdcW8eXdhasSFY2VnbyBuYSBwcnp5a8WCYWQgRm9ybWF0OiAxLjAuIEFieSAiCisidGVtdSB6YXBvYmllYywgQjxkcGtnLXNvdXJjZT4gdGFrxbxlIG5ha8WCYWRhIMWCYXRraSBwcnplZCBidWRvd2FuaWVtLCBqZcWbbGkgIgorInN0d2llcmR6aSwgxbxlIG5pZSB6b3N0YcWCeSBqZXN6Y3plIG5hxYJvxbxvbmUuIFcgY2VsdSBzdHdpZXJkemVuaWEgdGVqIHN5dHVhY2ppICIKKyJ1xbx5d2FuYSBqZXN0IG5hc3TEmXB1asSFY2EgaGV1cnlzdHlrYTogcG8gb2RuYWxlemllbml1IHBvZGthdGFsb2d1IEI8LnBjPiAiCisid3l3b8WCeXdhbnkgamVzdCBCPHF1aWx0IHVuYXBwbGllZD4gdyBjZWx1IHdlcnlmaWthY2ppLCBjenkgd3N6eXN0a2llIMWCYXRraSAiCisiem9zdGHFgnkgbmHFgm/FvG9uZS4gTmFzdMSZcG5pZSBwaWVyd3N6YSDFgmF0a2EgeiBwbGlrdSBzZXJpZXMgKGx1YiBwaWVyd3N6YSAiCisibmllbmHFgm/FvG9uYSwgendyw7Njb25hIHByemV6IEI8cXVpbHQgdW5hcHBsaWVkPiAtIGplxZtsaSB0YWthIGplc3QpIHXFvHl3YW5hICIKKyJqZXN0IHcgY2VsdSB3ZXJ5ZmlrYWNqaSwgY3p5IG1vxbxlIGJ5xIcgbmHFgm/FvG9uYSBiZXogYsWCxJlkw7N3LiBKZcWbbGkgd2VyeWZpa2FjamEgIgorInNpxJkgcG93aWVkemllIHRvIHN0d2llcmR6YW5lIGplc3QsIMW8ZSDFgmF0a2kgbmllIHpvc3RhxYJ5IG5hxYJvxbxvbmUgaSB3dGVkeSAiCisiem9zdGFuxIUgbmHFgm/FvG9uZSB3c3p5c3RraWUuIE9wY2phIEI8LS1uby1wcmVwYXJhdGlvbj4gbW/FvGUgYnnEhyB1xbx5dGEsIGFieSAiCisid3nFgsSFY3p5xIcgdG8gemFjaG93YW5pZS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NDgwCisjLCBmdXp6eQorI3wgbXNnaWQgIkI8ZGViaWFuL2NoYW5nZWxvZz4iCittc2dpZCAiQjxSZWNvcmRpbmcgY2hhbmdlcz4iCittc2dzdHIgIkI8ZGViaWFuL2NoYW5nZWxvZz4iCisKKyMKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjQ4MAorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPC1jPiwgQjwtLWNvbnRyb2wtcGF0aD4gSTxwYWNrYWdlLW5hbWU+IFtJPGNvbnRyb2wtZmlsZT5dIgorbXNnaWQgIkI8LS1jb21taXQ+IFtJPGRpcmVjdG9yeT5dIFtJPHBhdGNoLW5hbWU+XSBbSTxwYXRjaC1maWxlPl0iCittc2dzdHIgIkI8LWM+LCBCPC0tY29udHJvbC1wYXRoPiBJPG5hendhLXBha2lldHU+IFtJPHBsaWsta29udHJvbG55Pl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NDkwCittc2dpZCAiIgorIkdlbmVyYXRlcyBhIHBhdGNoIGNvcnJlc3BvbmRpbmcgdG8gdGhlIGxvY2FsIGNoYW5nZXMgdGhhdCBhcmUgbm90IG1hbmFnZWQgYnkgIgorInRoZSBxdWlsdCBwYXRjaCBzeXN0ZW0gYW5kIGludGVncmF0ZXMgaXQgaW4gdGhlIHBhdGNoIHN5c3RlbSB1bmRlciB0aGUgbmFtZSAiCisiSTxwYXRjaC1uYW1lPi4gSWYgdGhlIG5hbWUgaXMgbWlzc2luZywgaXQgd2lsbCBiZSBhc2tlZCBpbnRlcmFjdGl2ZWx5LiBJZiAiCisiSTxwYXRjaC1maWxlPiBpcyBnaXZlbiwgaXQgaXMgdXNlZCBhcyB0aGUgcGF0Y2ggY29ycmVzcG9uZGluZyB0byB0aGUgbG9jYWwgIgorImNoYW5nZXMgdG8gaW50ZWdyYXRlLiBUaGlzIGlzIG1haW5seSB1c2VmdWwgYWZ0ZXIgYSBidWlsZCBmYWlsdXJlIHRoYXQgcHJlLSIKKyJnZW5lcmF0ZWQgdGhpcyBmaWxlLiBPbmNlIGludGVncmF0ZWQsIGFuIGVkaXRvciBpcyBsYXVuY2hlZCBzbyB0aGF0IHlvdSBjYW4gIgorImVkaXQgdGhlIG1ldGEtaW5mb3JtYXRpb24gaW4gdGhlIHBhdGNoIGhlYWRlci4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo0OTMgZHBrZy1zb3VyY2UuMTo1NjcgZHBrZy1zb3VyY2UuMTo2MDYKK21zZ2lkICJCPEJ1aWxkIG9wdGlvbnM+IgorbXNnc3RyICJCPE9wY2plIGJ1ZG93YW5pYT4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjQ5MworIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPC0tdG8+IEk8dmVyc2lvbj4sIEI8LXQ+STx2ZXJzaW9uPiIKK21zZ2lkICJCPC0tYWxsb3ctdmVyc2lvbi1vZi1xdWlsdC1kYj0+STx2ZXJzaW9uPiIKK21zZ3N0ciAiQjwtLXRvPiBJPHdlcnNqYT4sIEI8LXQ+STx3ZXJzamE+IgorCisjIHR5cGU6IFBsYWluIHRleHQKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTAxCittc2dpZCAiIgorIkFsbG93IEI8ZHBrZy1zb3VyY2U+IHRvIGJ1aWxkIHRoZSBzb3VyY2UgcGFja2FnZSBpZiB0aGUgdmVyc2lvbiBvZiB0aGUgcXVpbHQgIgorIm1ldGFkYXRhIGlzIHRoZSBvbmUgc3BlY2lmaWVkLCBldmVuIGlmIEI8ZHBrZy1zb3VyY2U+IGRvZXNuJ3Qga25vdyBhYm91dCBpdC4gIgorIkVmZmVjdGl2ZWx5IHRoaXMgc2F5cyB0aGF0IHRoZSBnaXZlbiB2ZXJzaW9uIG9mIHRoZSBxdWlsdCBtZXRhZGF0YSBpcyAiCisiY29tcGF0aWJsZSB3aXRoIHRoZSB2ZXJzaW9uIDIgdGhhdCBCPGRwa2ctc291cmNlPiBjdXJyZW50bHkgc3VwcG9ydHMuIFRoZSAiCisidmVyc2lvbiBvZiB0aGUgcXVpbHQgbWV0YWRhdGEgaXMgc3RvcmVkIGluIEI8LnBjLy52ZXJzaW9uPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NTAxCisjLCBuby13cmFwCittc2dpZCAiQjwtLWluY2x1ZGUtcmVtb3ZhbD4iCittc2dzdHIgIkI8LS1pbmNsdWRlLXJlbW92YWw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjUwNQorbXNnaWQgIiIKKyJEbyBub3QgaWdub3JlIHJlbW92ZWQgZmlsZXMgYW5kIGluY2x1ZGUgdGhlbSBpbiB0aGUgYXV0b21hdGljYWxseSBnZW5lcmF0ZWQgIgorInBhdGNoLiIKK21zZ3N0ciAiIgorIlVzdW5pxJl0ZSBwbGlraSBuaWUgYsSZZMSFIGlnbm9yb3dhbmUsIGFsZSBixJlkxIUgd8WCxIVjem9uZSBkbyBhdXRvbWF0eWN6bmllICIKKyJnZW5lcm93YW5laiDFgmF0a2kuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTo1MDUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0taW5jbHVkZS10aW1lc3RhbXA+IgorbXNnc3RyICJCPC0taW5jbHVkZS10aW1lc3RhbXA+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjUwOAorbXNnaWQgIkluY2x1ZGUgdGltZXN0YW1wIGluIHRoZSBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlZCBwYXRjaC4iCittc2dzdHIgIlfFgsSFY3plbmllIGN6YXN1IG1vZHlmaWthY2ppIHcgYXV0b21hdHljem5pZSBnZW5lcm93YW5laiDFgmF0Y2UuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTo1MDgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0taW5jbHVkZS1iaW5hcmllcz4iCittc2dzdHIgIkI8LS1pbmNsdWRlLWJpbmFyaWVzPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1MTMKK21zZ2lkICIiCisiQWRkIGFsbCBtb2RpZmllZCBiaW5hcmllcyBpbiB0aGUgZGViaWFuIHRhcmJhbGwuIEFsc28gYWRkIHRoZW0gdG8gQjxkZWJpYW4vIgorInNvdXJjZS9pbmNsdWRlLWJpbmFyaWVzPjogdGhleSB3aWxsIGJlIGFkZGVkIGJ5IGRlZmF1bHQgaW4gc3Vic2VxdWVudCBidWlsZHMgIgorImFuZCB0aGlzIG9wdGlvbiBpcyB0aHVzIG5vIG1vcmUgbmVlZGVkLiIKK21zZ3N0ciAiIgorIkRvZGFuaWUgd3N6eXN0a2ljaCB6bW9keWZpa293YW55Y2ggcGxpa8OzdyBiaW5hcm55Y2ggZG8gYXJjaGl3dW0gZGViaWFuLiBTxIUgIgorIm9uZSByw7N3bmllxbwgZG9kYXdhbmUgZG8gQjxkZWJpYW4vc291cmNlL2luY2x1ZGUtYmluYXJpZXM+OiBkemnEmWtpIHRlbXUgYsSZZMSFICIKKyJkb215xZtsbmllIGRvZGF3YW5lIHByenkgbmFzdMSZcG55Y2ggYnVkb3dhY2ggcGFraWV0dSwgemHFmyB0YSBvcGNqYSBuaWUgYsSZZHppZSAiCisianXFvCB3acSZY2VqIHBvdHJ6ZWJuYS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjUxMworIywgbm8td3JhcAorbXNnaWQgIkI8LS1uby1wcmVwYXJhdGlvbj4iCittc2dzdHIgIkI8LS1uby1wcmVwYXJhdGlvbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTE3Cittc2dpZCAiIgorIkRvIG5vdCB0cnkgdG8gcHJlcGFyZSB0aGUgYnVpbGQgdHJlZSBieSBhcHBseWluZyBwYXRjaGVzIHdoaWNoIGFyZSAiCisiYXBwYXJlbnRseSB1bmFwcGxpZWQuIgorbXNnc3RyICIiCisiTmllIHByw7NidWplIHByenlnb3Rvd3l3YcSHIGRyemV3YSBidWRvd2FuaWEgcG9wcnpleiBuYWvFgmFkYW5pZSDFgmF0ZWssIGt0w7NyZSAiCisid3lyYcW6bmllIG5pZSBzxIUgbmHFgm/FvG9uZS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjUxNworIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPC0tc2tpcC1kZWJpYW5pemF0aW9uPiIKK21zZ2lkICJCPC0tc2luZ2xlLWRlYmlhbi1wYXRjaD4iCittc2dzdHIgIkI8LS1za2lwLWRlYmlhbml6YXRpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjUyOAorbXNnaWQgIiIKKyJVc2UgQjxkZWJpYW4vcGF0Y2hlcy9kZWJpYW4tY2hhbmdlcz4gaW5zdGVhZCBvZiBCPGRlYmlhbi9wYXRjaGVzL2RlYmlhbi0iCisiY2hhbmdlcy0+STx2ZXJzaW9uPiBmb3IgdGhlIG5hbWUgb2YgdGhlIGF1dG9tYXRpYyBwYXRjaCBnZW5lcmF0ZWQgZHVyaW5nICIKKyJidWlsZC4gVGhpcyBvcHRpb24gaXMgcGFydGljdWxhcmx5IHVzZWZ1bCB3aGVuIHRoZSBwYWNrYWdlIGlzIG1haW50YWluZWQgaW4gIgorImEgVkNTIGFuZCBhIHBhdGNoIHNldCBjYW4ndCByZWxpYWJseSBiZSBnZW5lcmF0ZWQuIEluc3RlYWQgdGhlIGN1cnJlbnQgZGlmZiAiCisid2l0aCB1cHN0cmVhbSBzaG91bGQgYmUgc3RvcmVkIGluIGEgc2luZ2xlIHBhdGNoLiBUaGUgb3B0aW9uIHdvdWxkIGJlIHB1dCBpbiAiCisiQjxkZWJpYW4vc291cmNlL2xvY2FsLW9wdGlvbnM+IGFuZCB3b3VsZCBiZSBhY2NvbXBhbmllZCBieSBhIEI8ZGViaWFuL3NvdXJjZS8iCisibG9jYWwtcGF0Y2gtaGVhZGVyPiBmaWxlIGV4cGxhaW5pbmcgaG93IHRoZSBEZWJpYW4gY2hhbmdlcyBjYW4gYmUgYmVzdCAiCisicmV2aWV3ZWQsIGZvciBleGFtcGxlIGluIHRoZSBWQ1MgdGhhdCBpcyB1c2VkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTo1MjgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tY3JlYXRlLWVtcHR5LW9yaWc+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTM0Cittc2dpZCAiIgorIkF1dG9tYXRpY2FsbHkgY3JlYXRlIHRoZSBtYWluIG9yaWdpbmFsIHRhcmJhbGwgYXMgZW1wdHkgaWYgaXQncyBtaXNzaW5nIGFuZCAiCisiaWYgdGhlcmUgYXJlIHN1cHBsZW1lbnRhcnkgb3JpZ2luYWwgdGFyYmFsbHMuIFRoaXMgb3B0aW9uIGlzIG1lYW50IHRvIGJlICIKKyJ1c2VkIHdoZW4gdGhlIHNvdXJjZSBwYWNrYWdlIGlzIGp1c3QgYSBidW5kbGUgb2YgbXVsdGlwbGUgdXBzdHJlYW0gc29mdHdhcmUgIgorImFuZCB3aGVyZSB0aGVyZSdzIG5vIFwibWFpblwiIHNvZnR3YXJlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTo1MzQKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjwtLXNraXAtcGF0Y2hlcz4iCittc2dpZCAiQjwtLXVuYXBwbHktcGF0Y2hlcz4iCittc2dzdHIgIkI8LS1za2lwLXBhdGNoZXM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjU0MQorbXNnaWQgIiIKKyJVbmFwcGx5IHRoZSBwYXRjaGVzIGluIHRoZSBCPC0tYWZ0ZXItYnVpbGQ+IGhvb2suIFlvdSB1c3VhbGx5IGRvbid0IG5lZWQgIgorInRoaXMgb3B0aW9uIGFzIGRwa2ctc291cmNlIHdpbGwgYXV0b21hdGljYWxseSB1bmFwcGx5IHRoZSBwYXRjaGVzIGlmIGl0IGRpZCAiCisiYXBwbHkgdGhlbSBkdXJpbmcgQjwtLWJlZm9yZS1idWlsZD4uIFRoaXMgb3B0aW9uIGlzIG9ubHkgYWxsb3dlZCBpbiBCPGRlYmlhbi8iCisic291cmNlL2xvY2FsLW9wdGlvbnM+IHNvIHRoYXQgYWxsIGdlbmVyYXRlZCBzb3VyY2UgcGFja2FnZXMgaGF2ZSB0aGUgc2FtZSAiCisiYmVoYXZpb3IgYnkgZGVmYXVsdC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1NDgKK21zZ2lkICIiCisiVGhlIHByb2Nlc3MgZmFpbHMgaWYgYW4gYXV0b21hdGljIHBhdGNoIGhhcyBiZWVuIGdlbmVyYXRlZC4gVGhpcyBvcHRpb24gY2FuICIKKyJiZSB1c2VkIHRvIGVuc3VyZSB0aGF0IGFsbCBjaGFuZ2VzIHdlcmUgcHJvcGVybHkgcmVjb3JkZWQgaW4gc2VwYXJhdGUgcXVpbHQgIgorInBhdGNoZXMgcHJpb3IgdG8gdGhlIHNvdXJjZSBwYWNrYWdlIGJ1aWxkLiBUaGlzIG9wdGlvbiBpcyBub3QgYWxsb3dlZCBpbiAiCisiQjxkZWJpYW4vc291cmNlL29wdGlvbnM+IGJ1dCBjYW4gYmUgdXNlZCBpbiBCPGRlYmlhbi9zb3VyY2UvbG9jYWwtb3B0aW9ucz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjU0OAorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPC0tbm8tYWN0PiIKK21zZ2lkICJCPC0tYXV0by1jb21taXQ+IgorbXNnc3RyICJCPC0tbm8tYWN0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1NTIKK21zZ2lkICIiCisiVGhlIHByb2Nlc3MgZG9lc24ndCBmYWlsIGlmIGFuIGF1dG9tYXRpYyBwYXRjaCBoYXMgYmVlbiBnZW5lcmF0ZWQsIGluc3RlYWQgIgorIml0J3MgaW1tZWRpYXRlbHkgcmVjb3JkZWQgaW4gdGhlIHF1aWx0IHNlcmllcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1NTUKK21zZ2lkICJCPEV4dHJhY3Qgb3B0aW9ucz4iCittc2dzdHIgIkI8T3BjamUgcm96cGFrb3d5d2FuaWE+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjU1OAorbXNnaWQgIlNraXBzIGV4dHJhY3Rpb24gb2YgdGhlIGRlYmlhbiB0YXJiYWxsIG9uIHRvcCBvZiB0aGUgdXBzdHJlYW0gc291cmNlcy4iCittc2dzdHIgIiIKKyJQb21pamEgcm96cGFrb3dhbmllIGFyY2hpd3VtIGRlYmlhbiB6IHfFgsSFY3plbmllbSBqZWdvIHphd2FydG/Fm2NpIG5hICIKKyJvcnlnaW5hbG5lIMW6csOzZMWCYS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjU1OAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1za2lwLXBhdGNoZXM+IgorbXNnc3RyICJCPC0tc2tpcC1wYXRjaGVzPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1NjEKK21zZ2lkICJEbyBub3QgYXBwbHkgcGF0Y2hlcyBhdCB0aGUgZW5kIG9mIHRoZSBleHRyYWN0aW9uLiIKK21zZ3N0ciAiTmllIG5ha8WCYWRhIMWCYXRlayBwbyBza2/FhGN6ZW5pdSByb3pwYWtvd3l3YW5pYS4iCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjU2MgorIywgbm8td3JhcAorbXNnaWQgIkZvcm1hdDogMy4wIChjdXN0b20pIgorbXNnc3RyICJGb3JtYXQ6IDMuMCAoY3VzdG9tKSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1NjUKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlRoaXMgZm9ybWF0IGlzIHBhcnRpY3VsYXIuIEl0IGRvZXNuJ3QgcmVwcmVzZW50IGEgcmVhbCBzb3VyY2UgcGFja2FnZSAiCisjfCAiZm9ybWF0IGJ1dCBjYW4gYmUgdXNlZCB0byBjcmVhdGUgc291cmNlIHBhY2thZ2VzIHdpdGggYXJiaXRyYXJ5IGZpbGVzLiIKK21zZ2lkICIiCisiVGhpcyBmb3JtYXQgaXMgc3BlY2lhbC4gSXQgZG9lc24ndCByZXByZXNlbnQgYSByZWFsIHNvdXJjZSBwYWNrYWdlIGZvcm1hdCAiCisiYnV0IGNhbiBiZSB1c2VkIHRvIGNyZWF0ZSBzb3VyY2UgcGFja2FnZXMgd2l0aCBhcmJpdHJhcnkgZmlsZXMuIgorbXNnc3RyICIiCisiVGVuIGZvcm1hdCBqZXN0IHN6Y3plZ8OzbG55LiBOaWUgamVzdCBwcmF3ZHppd3ltIGZvcm1hdGVtIHBha2lldHUgxbpyw7NkxYJvd2VnbywgIgorImFsZSBtb8W8ZSBiecSHIHXFvHl0eSBkbyBzdHdvcnplbmlhIHBha2lldHUgxbpyw7NkxYJvd2VnbyB6YXdpZXJhasSFY2VnbyBkb3dvbG5lICIKKyJwbGlraS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTcxCittc2dpZCAiIgorIkFsbCBub24tb3B0aW9uIGFyZ3VtZW50cyBhcmUgdGFrZW4gYXMgZmlsZXMgdG8gaW50ZWdyYXRlIGluIHRoZSBnZW5lcmF0ZWQgIgorInNvdXJjZSBwYWNrYWdlLiBUaGV5IG11c3QgZXhpc3QgYW5kIGFyZSBwcmVmZXJhYmx5IGluIHRoZSBjdXJyZW50IGRpcmVjdG9yeS4gIgorIkF0IGxlYXN0IG9uZSBmaWxlIG11c3QgYmUgZ2l2ZW4uIgorbXNnc3RyICIiCisiV3N6eXN0a2llIGFyZ3VtZW50eSBuaWUgYsSZZMSFY2Ugb3BjamFtaSBzxIUgdXdhxbxhbmUgemEgcGxpa2ksIGt0w7NyZSBtYWrEhSBiecSHICIKKyJ6aW50ZWdyb3dhbmUgeiBnZW5lcm93YW55bSBwYWtpZXRlbSDFunLDs2TFgm93eW0uIFBsaWtpIHRlIG11c3rEhSBpc3RuaWXEhyBpICIKKyJuYWpsZXBpZWogcG93aW5ueSBiecSHIHcgYmllxbzEhWN5bSBrYXRhbG9ndS4gTXVzaSBiecSHIHBvZGFueSBwcnp5bmFqbW5pZWogIgorImplZGVuIHBsaWsuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTo1NzEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tdGFyZ2V0LWZvcm1hdD0+STx2YWx1ZT4iCittc2dzdHIgIkI8LS10YXJnZXQtZm9ybWF0PT5JPHdhcnRvxZvEhz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTc2Cittc2dpZCAiIgorIkI8UmVxdWlyZWQ+LiBEZWZpbmVzIHRoZSByZWFsIGZvcm1hdCBvZiB0aGUgZ2VuZXJhdGVkIHNvdXJjZSBwYWNrYWdlLiAgVGhlICIKKyJnZW5lcmF0ZWQgLmRzYyBmaWxlIHdpbGwgY29udGFpbiB0aGlzIHZhbHVlIGluIGl0cyBJPEZvcm1hdD4gZmllbGQgYW5kIG5vdCAiCisiXCIzLjAgKGN1c3RvbSlcIi4iCittc2dzdHIgIiIKKyJCPFd5bWFnYW5lPi4gT2tyZcWbbGEgcHJhd2R6aXd5IGZvcm1hdCBnZW5lcm93YW5lZ28gcGFraWV0dSDFunLDs2TFgm93ZWdvLiAiCisiR2VuZXJvd2FueSBwbGlrIC5kc2MgYsSZZHppZSB6YXdpZXJhxIcgdMSFIHdhcnRvxZvEhyB3IHN3b2ltIHBvbHUgSTxGb3JtYXQ+ICIKKyJ6YW1pYXN0IFwiMy4wIChjdXN0b20pXCIuIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo1NzcKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiRm9ybWF0OiAzLjAgKHF1aWx0KSIKK21zZ2lkICJGb3JtYXQ6IDMuMCAoZ2l0KSIKK21zZ3N0ciAiRm9ybWF0OiAzLjAgKHF1aWx0KSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1NzkKK21zZ2lkICJUaGlzIGZvcm1hdCBpcyBleHBlcmltZW50YWwuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTg0Cittc2dpZCAiIgorIkEgc291cmNlIHBhY2thZ2UgaW4gdGhpcyBmb3JtYXQgY29uc2lzdHMgb2YgYSBzaW5nbGUgYnVuZGxlIG9mIGEgZ2l0ICIKKyJyZXBvc2l0b3J5IEI8LmdpdD4gdG8gaG9sZCB0aGUgc291cmNlIG9mIGEgcGFja2FnZS4gIFRoZXJlIG1heSBhbHNvIGJlIGEgQjwuIgorImdpdHNoYWxsb3c+IGZpbGUgbGlzdGluZyByZXZpc2lvbnMgZm9yIGEgc2hhbGxvdyBnaXQgY2xvbmUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTkwCittc2dpZCAiIgorIlRoZSBidW5kbGUgaXMgY2xvbmVkIGFzIGEgZ2l0IHJlcG9zaXRvcnkgdG8gdGhlIHRhcmdldCBkaXJlY3RvcnkuICBJZiB0aGVyZSAiCisiaXMgYSBnaXRzaGFsbG93IGZpbGUsIGl0IGlzIGluc3RhbGxlZCBhcyBgLmdpdC9zaGFsbG93YCBpbnNpZGUgdGhlIGNsb25lZCAiCisiZ2l0IHJlcG9zaXRvcnkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTk1Cittc2dpZCAiIgorIk5vdGUgdGhhdCBieSBkZWZhdWx0IHRoZSBuZXcgcmVwb3NpdG9yeSB3aWxsIGhhdmUgdGhlIHNhbWUgYnJhbmNoIGNoZWNrZWQgIgorIm91dCB0aGF0IHdhcyBjaGVja2VkIG91dCBpbiB0aGUgb3JpZ2luYWwgc291cmNlLiAoVHlwaWNhbGx5IFwibWFzdGVyXCIsIGJ1dCAiCisiaXQgY291bGQgYmUgYW55dGhpbmcuKSBBbnkgb3RoZXIgYnJhbmNoZXMgd2lsbCBiZSBhdmFpbGFibGUgdW5kZXIgYHJlbW90ZXMvIgorIm9yaWdpbi9gLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjYwMCBkcGtnLXNvdXJjZS4xOjYzMworbXNnaWQgIiIKKyJCZWZvcmUgZ29pbmcgYW55IGZ1cnRoZXIsIHNvbWUgY2hlY2tzIGFyZSBkb25lIHRvIGVuc3VyZSB0aGF0IHdlIGRvbid0IGhhdmUgIgorImFueSBub24taWdub3JlZCB1bmNvbW1pdHRlZCBjaGFuZ2VzLiIKK21zZ3N0ciAiIgorIk5pZSB6YWfFgsSZYmlhasSFYyBzacSZIGRhbGVqLCB3eWtvbnl3YW5lIHPEhSBwZXduZSB0ZXN0eSBhYnkgdXBld25pxIcgc2nEmSwgY3p5ICIKKyJuaWUgbWEgxbxhZG55Y2ggbmllemF0d2llcmR6b255Y2ggem1pYW4sIGt0w7NyZSBuaWUgc8SFIGlnbm9yb3dhbmUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjYwNAorbXNnaWQgIiIKKyJCPGdpdC1idW5kbGU+KDEpIGlzIHVzZWQgdG8gZ2VuZXJhdGUgYSBidW5kbGUgb2YgdGhlIGdpdCByZXBvc2l0b3J5LiAgQnkgIgorImRlZmF1bHQsIGFsbCBicmFuY2hlcyBhbmQgdGFncyBpbiB0aGUgcmVwb3NpdG9yeSBhcmUgaW5jbHVkZWQgaW4gdGhlIGJ1bmRsZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NjA2CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8LS10YXJnZXQ9Pkk8dGFyZ2V0PiIKK21zZ2lkICJCPC0tZ2l0LXJlZj0+STxyZWY+IgorbXNnc3RyICJCPC0tdGFyZ2V0PT5JPGNlbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NjE2Cittc2dpZCAiIgorIkFsbG93cyBzcGVjaWZ5aW5nIGEgZ2l0IHJlZiB0byBpbmNsdWRlIGluIHRoZSBnaXQgYnVuZGxlLiBVc2UgZGlzYWJsZXMgdGhlICIKKyJkZWZhdWx0IGJlaGF2aW9yIG9mIGluY2x1ZGluZyBhbGwgYnJhbmNoZXMgYW5kIHRhZ3MuIE1heSBiZSBzcGVjaWZpZWQgIgorIm11bHRpcGxlIHRpbWVzLiBUaGUgSTxyZWY+IGNhbiBiZSB0aGUgbmFtZSBvZiBhIGJyYW5jaCBvciB0YWcgdG8gaW5jbHVkZS4gSXQgIgorIm1heSBhbHNvIGJlIGFueSBwYXJhbWV0ZXIgdGhhdCBjYW4gYmUgcGFzc2VkIHRvIEI8Z2l0LXJldi1saXN0PigxKS4gRm9yICIKKyJleGFtcGxlLCB0byBpbmNsdWRlIG9ubHkgdGhlIG1hc3RlciBicmFuY2gsIHVzZSAtLWdpdC1yZWY9bWFzdGVyLiBUbyBpbmNsdWRlICIKKyJhbGwgdGFncyBhbmQgYnJhbmNoZXMsIGV4Y2VwdCBmb3IgdGhlIHByaXZhdGUgYnJhbmNoLCB1c2UgLS1naXQtcmVmPS0tYWxsIC0tIgorImdpdC1yZWY9XnByaXZhdGUiCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NjE2CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8LS1hYm9ydC1hZnRlcj0+STxudW1iZXI+IgorbXNnaWQgIkI8LS1naXQtZGVwdGg9Pkk8bnVtYmVyPiIKK21zZ3N0ciAiQjwtLWFib3J0LWFmdGVyPT5JPGxpY3piYT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NjIwCittc2dpZCAiIgorIkNyZWF0ZXMgYSBzaGFsbG93IGNsb25lIHdpdGggYSBoaXN0b3J5IHRydW5jYXRlZCB0byB0aGUgc3BlY2lmaWVkIG51bWJlciBvZiAiCisicmV2aXNpb25zLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo2MjAKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiRm9ybWF0OiAzLjAgKHF1aWx0KSIKK21zZ2lkICJGb3JtYXQ6IDMuMCAoYnpyKSIKK21zZ3N0ciAiRm9ybWF0OiAzLjAgKHF1aWx0KSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2MjMKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlRob3NlIGZvcm1hdHMgYXJlIGV4cGVyaW1lbnRhbC4gVGhleSBnZW5lcmF0ZSBhIHNpbmdsZSB0YXJiYWxsIGNvbnRhaW5pbmcgIgorI3wgInRoZSBjb3JyZXNwb25kaW5nIFZDUyByZXBvc2l0b3J5LiIKK21zZ2lkICIiCisiVGhpcyBmb3JtYXQgaXMgZXhwZXJpbWVudGFsLiBJdCBnZW5lcmF0ZXMgYSBzaW5nbGUgdGFyYmFsbCBjb250YWluaW5nIHRoZSAiCisiYnpyIHJlcG9zaXRvcnkuIgorbXNnc3RyICIiCisiVGUgZm9ybWF0eSBzxIUgZWtzcGVyeW1lbnRhbG5lLiBHZW5lcnVqxIUgcG9qZWR5bmN6ZSBhcmNoaXdhIHRhciB6YXdpZXJhasSFY2UgIgorIm9kcG93aWVkbmllIHJlcG96eXRvcmlhIHN5c3RlbXUga29udHJvbGkgd2Vyc2ppLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2MjgKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlRoZSB0YXJiYWxsIGlzIHVucGFja2VkIGFuZCB0aGVuIHRoZSBWQ1MgaXMgdXNlZCB0byBjaGVja291dCB0aGUgY3VycmVudCAiCisjfCAiYnJhbmNoLiIKK21zZ2lkICIiCisiVGhlIHRhcmJhbGwgaXMgdW5wYWNrZWQgYW5kIHRoZW4gYnpyIGlzIHVzZWQgdG8gY2hlY2tvdXQgdGhlIGN1cnJlbnQgYnJhbmNoLiIKK21zZ3N0ciAiIgorIkFyY2hpd3VtIHRhciBqZXN0IHJvenBha293eXdhbmUgaSBzeXN0ZW0ga29udHJvbGkgd2Vyc2ppIGplc3QgdcW8eXdhbnkgYWJ5ICIKKyJwb2JyYcSHIGFrdHVhbG7EhSBnYcWCxIXFuiBrb2R1LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2MzcKK21zZ2lkICIiCisiVGhlbiB0aGUgVkNTIHNwZWNpZmljIHBhcnQgb2YgdGhlIHNvdXJjZSBkaXJlY3RvcnkgaXMgY29waWVkIG92ZXIgdG8gYSAiCisidGVtcG9yYXJ5IGRpcmVjdG9yeS4gQmVmb3JlIHRoaXMgdGVtcG9yYXJ5IGRpcmVjdG9yeSBpcyBwYWNrZWQgaW4gYSB0YXJiYWxsLCAiCisidmFyaW91cyBjbGVhbnVwIGFyZSBkb25lIHRvIHNhdmUgc3BhY2UuIgorbXNnc3RyICIiCisiTmFzdMSZcG5pZSBjesSZxZvEhyBrYXRhbG9ndSDFunLDs2RlxYIgc3BlY3lmaWN6bmEgZGxhIHN5c3RlbXUga29udHJvbGkgd2Vyc2ppIGplc3QgIgorImtvcGlvd2FuYSBkbyBrYXRhbG9ndSB0eW1jemFzb3dlZ28uIFByemVkIHR5bSBrYXRhbG9nIHR5bWN6YXNvd3kgamVzdCAiCisicGFrb3dhbnkgZG8gYXJjaGl3dW0gdGFyIGkgd3lrb255d2FuZSBzxIUgcsOzxbxuZSBjenlubm/Fm2NpIHBvcnrEhWRrb3dlLCBhYnkgIgorInphb3N6Y3rEmWR6acSHIG1pZWpzY2UuIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1zb3VyY2UuMTo2MzcKKyMsIG5vLXdyYXAKK21zZ2lkICJXQVJOSU5HUyBBTkQgRVJST1JTIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjYzOAorIywgbm8td3JhcAorbXNnaWQgIm5vIHNvdXJjZSBmb3JtYXQgc3BlY2lmaWVkIGluIGRlYmlhbi9zb3VyY2UvZm9ybWF0IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NjQ0Cittc2dpZCAiIgorIlRoZSBmaWxlIEI8ZGViaWFuL3NvdXJjZS9mb3JtYXQ+IHNob3VsZCBhbHdheXMgZXhpc3QgYW5kIGluZGljYXRlIHRoZSAiCisiZGVzaXJlZCBzb3VyY2UgZm9ybWF0LiBGb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHksIGZvcm1hdCBcIjEuMFwiIGlzICIKKyJhc3N1bWVkIHdoZW4gdGhlIGZpbGUgZG9lc24ndCBleGlzdCBidXQgeW91IHNob3VsZCBub3QgcmVseSBvbiB0aGlzOiBhdCBzb21lICIKKyJwb2ludCBpbiB0aGUgZnV0dXJlIGRwa2ctc291cmNlIHdpbGwgYmUgbW9kaWZpZWQgdG8gZmFpbCB3aGVuIHRoYXQgZmlsZSAiCisiZG9lc24ndCBleGlzdC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2NTAKK21zZ2lkICIiCisiVGhlIHJhdGlvbmFsZSBpcyB0aGF0IGZvcm1hdCBcIjEuMFwiIGlzIG5vIGxvbmdlciB0aGUgcmVjb21tZW5kZWQgZm9ybWF0LCAiCisieW91IHNob3VsZCB1c3VhbGx5IHBpY2sgb25lIG9mIHRoZSBuZXdlciBmb3JtYXRzIChcIjMuMCAocXVpbHQpXCIsIFwiMy4wICIKKyIobmF0aXZlKVwiKSBidXQgQjxkcGtnLXNvdXJjZT4gd2lsbCBub3QgZG8gdGhpcyBhdXRvbWF0aWNhbGx5IGZvciB5b3UuICBJZiAiCisieW91IHdhbnQgdG8gY29udGludWUgdXNpbmcgdGhlIG9sZCBmb3JtYXQsIHlvdSBzaG91bGQgYmUgZXhwbGljaXQgYWJvdXQgaXQgIgorImFuZCBwdXQgXCIxLjBcIiBpbiBCPGRlYmlhbi9zb3VyY2UvZm9ybWF0Pi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6NjUwCisjLCBuby13cmFwCittc2dpZCAidGhlIGRpZmYgbW9kaWZpZXMgdGhlIGZvbGxvd2luZyB1cHN0cmVhbSBmaWxlcyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjY1NworbXNnaWQgIiIKKyJXaGVuIHVzaW5nIHNvdXJjZSBmb3JtYXQgXCIxLjBcIiBpdCBpcyB1c3VhbGx5IGEgYmFkIGlkZWEgdG8gbW9kaWZ5IHVwc3RyZWFtICIKKyJmaWxlcyBkaXJlY3RseSBhcyB0aGUgY2hhbmdlcyBlbmQgdXAgaGlkZGVuIGFuZCBtb3N0bHkgdW5kb2N1bWVudGVkIGluIHRoZSAuIgorImRpZmYuZ3ogZmlsZS4gSW5zdGVhZCB5b3Ugc2hvdWxkIHN0b3JlIHlvdXIgY2hhbmdlcyBhcyBwYXRjaGVzIGluIHRoZSBkZWJpYW4gIgorImRpcmVjdG9yeSBhbmQgYXBwbHkgdGhlbSBhdCBidWlsZC10aW1lLiBUbyBhdm9pZCB0aGlzIGNvbXBsZXhpdHkgeW91IGNhbiAiCisiYWxzbyB1c2UgdGhlIGZvcm1hdCBcIjMuMCAocXVpbHQpXCIgdGhhdCBvZmZlcnMgdGhpcyBuYXRpdmVseS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6NjU3CisjLCBuby13cmFwCittc2dpZCAiY2Fubm90IHJlcHJlc2VudCBjaGFuZ2UgdG8gSTxmaWxlPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjY2MworbXNnaWQgIiIKKyJDaGFuZ2VzIHRvIHVwc3RyZWFtIHNvdXJjZXMgYXJlIHVzdWFsbHkgc3RvcmVkIHdpdGggcGF0Y2ggZmlsZXMsIGJ1dCBub3QgYWxsICIKKyJjaGFuZ2VzIGNhbiBiZSByZXByZXNlbnRlZCB3aXRoIHBhdGNoZXM6IHRoZXkgY2FuIG9ubHkgYWx0ZXIgdGhlIGNvbnRlbnQgb2YgIgorInBsYWluIHRleHQgZmlsZXMuIElmIHlvdSB0cnkgcmVwbGFjaW5nIGEgZmlsZSB3aXRoIHNvbWV0aGluZyBvZiBhIGRpZmZlcmVudCAiCisidHlwZSAoZm9yIGV4YW1wbGUgcmVwbGFjaW5nIGEgcGxhaW4gZmlsZSB3aXRoIGEgc3ltbGluayBvciBhIGRpcmVjdG9yeSksIHlvdSAiCisid2lsbCBnZXQgdGhpcyBlcnJvciBtZXNzYWdlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo2NjMKKyMsIG5vLXdyYXAKK21zZ2lkICJuZXdseSBjcmVhdGVkIGVtcHR5IGZpbGUgSTxmaWxlPiB3aWxsIG5vdCBiZSByZXByZXNlbnRlZCBpbiBkaWZmIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NjY2Cittc2dpZCAiIgorIkVtcHR5IGZpbGVzIGNhbid0IGJlIGNyZWF0ZWQgd2l0aCBwYXRjaCBmaWxlcy4gVGh1cyB0aGlzIGNoYW5nZSBpcyBub3QgIgorInJlY29yZGVkIGluIHRoZSBzb3VyY2UgcGFja2FnZSBhbmQgeW91IGFyZSB3YXJuZWQgYWJvdXQgaXQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjY2NgorIywgbm8td3JhcAorbXNnaWQgImV4ZWN1dGFibGUgbW9kZSBJPHBlcm1zPiBvZiBJPGZpbGU+IHdpbGwgbm90IGJlIHJlcHJlc2VudGVkIGluIGRpZmYiCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6NjY3CisjLCBuby13cmFwCittc2dpZCAic3BlY2lhbCBtb2RlIEk8cGVybXM+IG9mIEk8ZmlsZT4gd2lsbCBub3QgYmUgcmVwcmVzZW50ZWQgaW4gZGlmZiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjY3MQorbXNnaWQgIiIKKyJQYXRjaCBmaWxlcyBkbyBub3QgcmVjb3JkIHBlcm1pc3Npb25zIG9mIGZpbGVzIGFuZCB0aHVzIG1vZGlmaWVkIHBlcm1pc3Npb25zICIKKyJhcmUgbm90IHN0b3JlZCBpbiB0aGUgc291cmNlIHBhY2thZ2UuIFRoaXMgd2FybmluZyByZW1pbmRzIHlvdSBvZiB0aGF0IGZhY3QuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLXNvdXJjZS4xOjY3MQorIywgbm8td3JhcAorbXNnaWQgIkZJTEUgRk9STUFUUyIKK21zZ3N0ciAiRk9STUFUWSBQTElLw5NXIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo2NzIKKyMsIG5vLXdyYXAKK21zZ2lkICJkZWJpYW4vc291cmNlL2Zvcm1hdCIKK21zZ3N0ciAiZGViaWFuL3NvdXJjZS9mb3JtYXQiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6Njc2Cittc2dpZCAiIgorIlRoaXMgZmlsZSBjb250YWlucyBvbiBhIHNpbmdsZSBsaW5lIHRoZSBmb3JtYXQgdGhhdCBzaG91bGQgYmUgdXNlZCB0byBidWlsZCAiCisidGhlIHNvdXJjZSBwYWNrYWdlIChwb3NzaWJsZSBmb3JtYXRzIGFyZSBkZXNjcmliZWQgYWJvdmUpLiBObyBsZWFkaW5nIG9yICIKKyJ0cmFpbGluZyBzcGFjZXMgYXJlIGFsbG93ZWQuIgorbXNnc3RyICIiCisiUGxpayB0ZW4gemF3aWVyYSB3IHBvamVkeW5jemVqIGxpbmlpIG9rcmXFm2xlbmllIGZvcm1hdHUsIGt0w7NyeSBwb3dpbmllbiAiCisiem9zdGHEhyB1xbx5dHkgZG8gemJ1ZG93YW5pYSBwYWtpZXR1IMW6csOzZMWCb3dlZ28gKGRvc3TEmXBuZSBmb3JtYXR5IG9waXNhbmUgc8SFICIKKyJ3ecW8ZWopLiBOaWVkb3p3b2xvbmUgc8SFIHBvY3rEhXRrb3dlIGkga2/FhGNvd2Ugem5ha2kgc3BhY2ppLiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6Njc2CisjLCBuby13cmFwCittc2dpZCAiZGViaWFuL3NvdXJjZS9pbmNsdWRlLWJpbmFyaWVzIgorbXNnc3RyICJkZWJpYW4vc291cmNlL2luY2x1ZGUtYmluYXJpZXMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NjgwCittc2dpZCAiIgorIlRoaXMgZmlsZSBjb250YWlucyBhIGxpc3Qgb2YgYmluYXJ5IGZpbGVzIChvbmUgcGVyIGxpbmUpIHRoYXQgc2hvdWxkIGJlICIKKyJpbmNsdWRlZCBpbiB0aGUgZGViaWFuIHRhcmJhbGwuIExlYWRpbmcgYW5kIHRyYWlsaW5nIHNwYWNlcyBhcmUgc3RyaXBwZWQuICAiCisiTGluZXMgc3RhcnRpbmcgd2l0aCBcIiNcIiBhcmUgY29tbWVudHMgYW5kIGFyZSBza2lwcGVkLiBFbXB0eSBsaW5lcyBhcmUgIgorImlnbm9yZWQuIgorbXNnc3RyICIiCisiUGxpayB0ZW4gemF3aWVyYSBsaXN0xJkgcGxpa8OzdyBiaW5hcm55Y2ggKHBvIGplZG55bSB3IGthxbxkZWogbGluaWkpLCBrdMOzcmUgIgorInBvd2lubnkgYnnEhyB6YXdhcnRlIHcgYXJjaGl3dW0gZGViaWFuLiBQb2N6xIV0a293ZSBpIGtvxYRjb3dlIHpuYWtpIHNwYWNqaSBzxIUgIgorInVzdXdhbmUuIExpbmllIHJvenBvY3p5bmFqxIVjZSBzacSZIG9kIFwiI1wiIHPEhSB0cmFrdG93YW5lIGphayBrb21lbnRhcnplIGkgc8SFICIKKyJwb21pamFuZSwgcHVzdGUgbGluaWUgc8SFIGlnbm9yb3dhbmUuIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo2ODAKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiZGViaWFuL3NvdXJjZS9mb3JtYXQiCittc2dpZCAiZGViaWFuL3NvdXJjZS9vcHRpb25zIgorbXNnc3RyICJkZWJpYW4vc291cmNlL2Zvcm1hdCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2ODYKK21zZ2lkICIiCisiVGhpcyBmaWxlIGNvbnRhaW5zIGEgbGlzdCBvZiBsb25nIG9wdGlvbnMgdGhhdCBzaG91bGQgYmUgYXV0b21hdGljYWxseSAiCisicHJlcGVuZGVkIHRvIHRoZSBzZXQgb2YgY29tbWFuZCBsaW5lIG9wdGlvbnMgb2YgYSBCPGRwa2ctc291cmNlIC1iPiBvciAiCisiQjxkcGtnLXNvdXJjZSAtLXByaW50LWZvcm1hdD4gY2FsbC4gT3B0aW9ucyBsaWtlIEI8LS1jb21wcmVzc2lvbj4gYW5kIEI8LS0iCisiY29tcHJlc3Npb24tbGV2ZWw+IGFyZSB3ZWxsIHN1aXRlZCBmb3IgdGhpcyBmaWxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjY5MgorbXNnaWQgIiIKKyJFYWNoIG9wdGlvbiBzaG91bGQgYmUgcHV0IG9uIGEgc2VwYXJhdGUgbGluZS4gRW1wdHkgbGluZXMgYW5kIGxpbmVzIHN0YXJ0aW5nICIKKyJ3aXRoIFwiI1wiIGFyZSBpZ25vcmVkLiBUaGUgbGVhZGluZyBcIi0tXCIgc2hvdWxkIGJlIHN0cmlwcGVkIGFuZCBzaG9ydCAiCisib3B0aW9ucyBhcmUgbm90IGFsbG93ZWQuIE9wdGlvbmFsIHNwYWNlcyBhcmUgYWxsb3dlZCBhcm91bmQgdGhlIFwiPVwiIHN5bWJvbCAiCisiYW5kIG9wdGlvbmFsIHF1b3RlcyBhcmUgYWxsb3dlZCBhcm91bmQgdGhlIHZhbHVlLiAgSGVyZSdzIGFuIGV4YW1wbGUgb2Ygc3VjaCAiCisiYSBmaWxlOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjcwMAorIywgbm8td3JhcAorbXNnaWQgIiIKKyIgICMgbGV0IGRwa2ctc291cmNlIGNyZWF0ZSBhIGRlYmlhbi50YXIuYnoyIHdpdGggbWF4aW1hbCBjb21wcmVzc2lvblxuIgorIiAgY29tcHJlc3Npb24gPSBcImJ6aXAyXCJcbiIKKyIgIGNvbXByZXNzaW9uLWxldmVsID0gOVxuIgorIiAgIyB1c2UgZGViaWFuL3BhdGNoZXMvZGViaWFuLWNoYW5nZXMgYXMgYXV0b21hdGljIHBhdGNoXG4iCisiICBzaW5nbGUtZGViaWFuLXBhdGNoXG4iCisiICAjIGlnbm9yZSBjaGFuZ2VzIG9uIGNvbmZpZy57c3ViLGd1ZXNzfVxuIgorIiAgZXh0ZW5kLWRpZmYtaWdub3JlID0gXCIoXnwvKShjb25maWcuc3VifGNvbmZpZy5ndWVzcykkXCJcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjcwMworbXNnaWQgIiIKKyJOb3RlOiBCPGZvcm1hdD4gb3B0aW9ucyBhcmUgbm90IGFjY2VwdGVkIGluIHRoaXMgZmlsZSwgeW91IHNob3VsZCB1c2UgIgorIkI8ZGViaWFuL3NvdXJjZS9mb3JtYXQ+IGluc3RlYWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjcwMworIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJkZWJpYW4vc291cmNlL2Zvcm1hdCIKK21zZ2lkICJkZWJpYW4vc291cmNlL2xvY2FsLW9wdGlvbnMiCittc2dzdHIgImRlYmlhbi9zb3VyY2UvZm9ybWF0IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjcwOAorbXNnaWQgIiIKKyJFeGFjdGx5IGxpa2UgQjxkZWJpYW4vc291cmNlL29wdGlvbnM+IGV4Y2VwdCB0aGF0IHRoZSBmaWxlIGlzIG5vdCBpbmNsdWRlZCAiCisiaW4gdGhlIGdlbmVyYXRlZCBzb3VyY2UgcGFja2FnZS4gSXQgY2FuIGJlIHVzZWZ1bCB0byBzdG9yZSBhIHByZWZlcmVuY2UgdGllZCAiCisidG8gdGhlIG1haW50YWluZXIgb3IgdG8gdGhlIFZDUyByZXBvc2l0b3J5IHdoZXJlIHRoZSBzb3VyY2UgcGFja2FnZSBpcyAiCisibWFpbnRhaW5lZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6NzA4CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgImRlYmlhbi9zb3VyY2UvZm9ybWF0IgorbXNnaWQgImRlYmlhbi9zb3VyY2UvbG9jYWwtcGF0Y2gtaGVhZGVyIgorbXNnc3RyICJkZWJpYW4vc291cmNlL2Zvcm1hdCIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6NzA5CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgImRlYmlhbi9zb3VyY2UvZm9ybWF0IgorbXNnaWQgImRlYmlhbi9zb3VyY2UvcGF0Y2gtaGVhZGVyIgorbXNnc3RyICJkZWJpYW4vc291cmNlL2Zvcm1hdCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo3MTMKK21zZ2lkICIiCisiRnJlZSBmb3JtIHRleHQgdGhhdCBpcyBwdXQgb24gdG9wIG9mIHRoZSBhdXRvbWF0aWMgcGF0Y2ggZ2VuZXJhdGVkIGluICIKKyJmb3JtYXRzIFwiMi4wXCIgb3IgXCIzLjAgKHF1aWx0KVwiLiBCPGxvY2FsLXBhdGNoLWhlYWRlcj4gaXMgbm90IGluY2x1ZGVkIGluICIKKyJ0aGUgZ2VuZXJhdGVkIHNvdXJjZSBwYWNrYWdlIHdoaWxlIEI8cGF0Y2gtaGVhZGVyPiBpcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6NzEzCisjLCBuby13cmFwCittc2dpZCAiZGViaWFuL3BhdGNoZXMvc2VyaWVzIgorbXNnc3RyICJkZWJpYW4vcGF0Y2hlcy9zZXJpZXMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NzIyCittc2dpZCAiIgorIlRoaXMgZmlsZSBsaXN0cyBhbGwgcGF0Y2hlcyB0aGF0IGhhdmUgdG8gYmUgYXBwbGllZCAoaW4gdGhlIGdpdmVuIG9yZGVyKSAgb24gIgorInRvcCBvZiB0aGUgdXBzdHJlYW0gc291cmNlIHBhY2thZ2UuIExlYWRpbmcgYW5kIHRyYWlsaW5nIHNwYWNlcyBhcmUgIgorInN0cmlwcGVkLiBMaW5lcyBzdGFydGluZyB3aXRoIFwiI1wiIGFyZSBjb21tZW50cyBhbmQgYXJlIHNraXBwZWQuIEVtcHR5ICIKKyJsaW5lcyBhcmUgaWdub3JlZC4gUmVtYWluaW5nIGxpbmVzIHN0YXJ0IHdpdGggYSBwYXRjaCBmaWxlbmFtZSAocmVsYXRpdmUgdG8gIgorInRoZSBCPGRlYmlhbi9wYXRjaGVzLz4gZGlyZWN0b3J5KSB1cCB0byB0aGUgZmlyc3Qgc3BhY2UgY2hhcmFjdGVyIG9yIHRoZSBlbmQgIgorIm9mIGxpbmUuIE9wdGlvbmFsIHF1aWx0IG9wdGlvbnMgY2FuIGZvbGxvdyB1cCB0byB0aGUgZW5kIG9mIGxpbmUgb3IgdGhlICIKKyJmaXJzdCBcIiNcIiBwcmVjZWRlZCBieSBvbmUgb3IgbW9yZSBzcGFjZXMgKHdoaWNoIG1hcmtzIHRoZSBzdGFydCBvZiBhICIKKyJjb21tZW50IHVwIHRvIHRoZSBlbmQgb2YgbGluZSkuIgorbXNnc3RyICIiCisiUGxpayB0ZW4gemF3aWVyYSBsaXN0xJkgd3N6eXN0a2ljaCDFgmF0ZWssIGpha2llIHBvd2lubnkgYnnEhyBuYcWCb8W8b25lICh3ICIKKyJva3JlxZtsb25laiBrb2xlam5vxZtjaSkgbmEga29kIG9yeWdpbmFsbmVnbyBwYWtpZXR1IMW6csOzZMWCb3dlZ28uIFBvY3rEhXRrb3dlIGkgIgorImtvxYRjb3dlIHpuYWtpIHNwYWNqaSBzxIUgdXN1d2FuZS4gTGluaWUgcm96cG9jenluYWrEhWNlIHNpxJkgb2QgXCIjXCIgc8SFICIKKyJ0cmFrdG93YW5lIGphayBrb21lbnRhcnplIGkgc8SFIHBvbWlqYW5lLCBwdXN0ZSBsaW5pZSBzxIUgaWdub3Jvd2FuZS4gIgorIlBvem9zdGHFgmUgbGluaWUgemF3aWVyYWrEhSBuYXp3eSBwbGlrw7N3IMWCYXRlayAod3pnbMSZZGVtIGthdGFsb2d1IEI8ZGViaWFuLyIKKyJwYXRjaGVzLz4pLCBhxbwgZG8gcGllcndzemVnbyBuYXBvdGthbmVnbyB6bmFrdSBzcGFjamkgbHViIGtvxYRjYSBsaW5paS4gIgorIk9wY2pvbmFsbmUgb3BjamUgcHJvZ3JhbXUgcXVpbHQgbmFzdMSZcHVqxIUgZG8ga2/FhGNhIGxpbmlpIGx1YiBwaWVyd3N6ZWdvICIKKyJ6bmFrdSBcIiNcIiwgcG9wcnplZHpvbmVnbyBjbyBuYWptbmllaiBqZWRuxIUgc3BhY2rEhSAoY28gcm96cG9jenluYSBrb21lbnRhcnogIgorImNpxIVnbsSFY3kgc2nEmSBhxbwgZG8ga2/FhGNhIGxpbmlpKS4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NzI5Cittc2dpZCAiQjxkcGtnLWRlYj4oMSksIEI8ZHBrZz4oMSksIEI8ZHNlbGVjdD4oMSkuIgorbXNnc3RyICJCPGRwa2ctZGViPigxKSwgQjxkcGtnPigxKSwgQjxkc2VsZWN0PigxKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NzM2CisjLCBmdXp6eQorI3wgbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDA4LTIwMDkgUmFwaGFcXFs6ZV1sIEhlcnR6b2ciCittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMDgtMjAxMSBSYXBoYVxcWzplXWwgSGVydHpvZyIKK21zZ3N0ciAiQ29weXJpZ2h0IFxcKGNvIDIwMDgtMjAwOSBSYXBoYVxcWzplXWwgSGVydHpvZyIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctc3BsaXQuMToyCisjLCBuby13cmFwCittc2dpZCAiZHBrZy1zcGxpdCIKK21zZ3N0ciAiZHBrZy1zcGxpdCIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjUKK21zZ2lkICJkcGtnLXNwbGl0IC0gRGViaWFuIHBhY2thZ2UgYXJjaGl2ZSBzcGxpdC9qb2luIHRvb2wiCittc2dzdHIgImRwa2ctc3BsaXQgLSBuYXJ6xJlkemllIGR6aWVsZW5pYS/FgsSFY3plbmlhIHBha2lldMOzdyBEZWJpYW5hIgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6OQorIywgZnV6enkKKyN8IG1zZ2lkICJCPGRwa2ctc3BsaXQ+IFtJPG9wdGlvbnM+XSBJPGNvbW1hbmQ+IgorbXNnaWQgIkI8ZHBrZy1zcGxpdD4gW0k8b3B0aW9uPi4uLl0gSTxjb21tYW5kPiIKK21zZ3N0ciAiQjxkcGtnLXNwbGl0PiBbSTxvcGNqZT5dIEk8cG9sZWNlbmllPiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjE1Cittc2dpZCAiIgorIkI8ZHBrZy1zcGxpdD4gc3BsaXRzIERlYmlhbiBiaW5hcnkgcGFja2FnZSBmaWxlcyBpbnRvIHNtYWxsZXIgcGFydHMgYW5kICIKKyJyZWFzc2VtYmxlcyB0aGVtIGFnYWluLCB0byBzdXBwb3J0IHRoZSBzdG9yYWdlIG9mIGxhcmdlIHBhY2thZ2UgZmlsZXMgb24gIgorInNtYWxsIG1lZGlhIHN1Y2ggYXMgZmxvcHB5IGRpc2tzLiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1zcGxpdD4gZHppZWxpIHBha2lldHkgYmluYXJuZSBEZWJpYW5hIG5hIG1uaWVqc3plIGN6xJnFm2NpIG9yYXogc2NhbGEgIgorImplIHogcG93cm90ZW0sIHRhayDFvGUgbW/FvGxpd2UgamVzdCBwcnplY2hvd2FuaWUgd2nEmWtzenljaCBwYWtpZXTDs3cgbmEgbWHFgnljaCAiCisibm/Fm25pa2FjaCwgdGFraWNoIGphayBkeXNraWV0a2kuIgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTkKK21zZ2lkICIiCisiSXQgY2FuIGJlIG9wZXJhdGVkIG1hbnVhbGx5IHVzaW5nIHRoZSBCPC0tc3BsaXQ+LCBCPC0tam9pbj4gYW5kIEI8LS1pbmZvPiAiCisib3B0aW9ucy4iCittc2dzdHIgIiIKKyJQcm9ncmFtIHd5d2/FgnVqZSBzacSZIHLEmWN6bmllLCB3cmF6IHogb3BjasSFIEI8LS1zcGxpdD4sIEI8LS1qb2luPiBsdWIgQjwtLSIKKyJpbmZvPi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToyNworbXNnaWQgIiIKKyJJdCBhbHNvIGhhcyBhbiBhdXRvbWF0aWMgbW9kZSwgaW52b2tlZCB1c2luZyB0aGUgQjwtLWF1dG8+IG9wdGlvbiwgd2hlcmUgaXQgIgorIm1haW50YWlucyBhIHF1ZXVlIG9mIHBhcnRzIHNlZW4gYnV0IG5vdCB5ZXQgcmVhc3NlbWJsZWQgYW5kIHJlYXNzZW1ibGVzIGEgIgorInBhY2thZ2UgZmlsZSB3aGVuIGl0IGhhcyBzZWVuIGFsbCBvZiBpdHMgcGFydHMuIFRoZSBCPC0tbGlzdHE+IGFuZCBCPC0tIgorImRpc2NhcmQ+IG9wdGlvbnMgYWxsb3cgdGhlIG1hbmFnZW1lbnQgb2YgdGhlIHF1ZXVlLiIKK21zZ3N0ciAiIgorIk1vxbxsaXdlIGplc3QgdGFrxbxlIHd5d2/FgmFuaWUgYXV0b21hdHljem5lLCBwcnpleiB1xbx5Y2llIG9wY2ppIEI8LS1hdXRvPi4gIgorIld0ZWR5IHRvIHR3b3J6b25hIGplc3Qga29sZWprYSBjesSZxZtjaSBwYWtpZXR1LCBhIGdkeSB3c3p5c3RraWUgY3rEmcWbY2kgYsSZZMSFICIKKyJkb3N0xJlwbmUsIGNhxYJ5IHBha2lldCB6b3N0YW5pZSBvZHR3b3J6b255LiBPcGNqZSBCPC0tbGlzdHE+IGkgQjwtLWRpc2NhcmQ+ICIKKyJwb3p3YWxhasSFIG5hIHphcnrEhWR6YW5pZSBrb2xlamvEhS4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMTozMAorbXNnaWQgIiIKKyJBbGwgc3BsaXR0aW5nLCBqb2luaW5nIGFuZCBxdWV1ZWluZyBvcGVyYXRpb25zIHByb2R1Y2UgaW5mb3JtYXRpdmUgbWVzc2FnZXMgIgorIm9uIHN0YW5kYXJkIG91dHB1dDsgdGhlc2UgbWF5IHNhZmVseSBiZSBpZ25vcmVkLiIKK21zZ3N0ciAiIgorIldzenlzdGtpZSBkemlhxYJhbmlhLCB0YWtpZSBqYWsgcm96ZHppZWxhbmllLCDFgsSFY3plbmllLCBjenkga29sZWprb3dhbmllLCAiCisicG93b2R1asSFIHd5xZt3aWV0bGVuaWUgaW5mb3JtYWNqaSBuYSBzdGFuZGFyZG93ZSB3eWrFm2NpZS4gSW5mb3JtYWNqZSB0ZSBtb8W8bmEgIgorInppZ25vcm93YcSHLiIKKworIworIy4gdHlwZTogVFAKKyM6IGRwa2ctc3BsaXQuMTozMgorIywgbm8td3JhcAorbXNnaWQgIkI8LXM+LCBCPC0tc3BsaXQ+IEk8Y29tcGxldGUtYXJjaGl2ZT4gW0k8cHJlZml4Pl0iCittc2dzdHIgIkI8LXM+LCBCPC0tc3BsaXQ+IEk8a29tcGxldG5lLWFyY2hpd3VtPiBbSTxwcnplZHJvc3Rlaz5dIgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MzUKK21zZ2lkICJTcGxpdHMgYSBzaW5nbGUgRGViaWFuIGJpbmFyeSBwYWNrYWdlIGludG8gc2V2ZXJhbCBwYXJ0cy4iCittc2dzdHIgIlJvemR6aWVsZW5pZSBwb2plZHluY3plZ28gcGFraWV0dSBiaW5hcm5lZ28gbmEgcG9zemN6ZWfDs2xuZSBjesSZxZtjaS4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMTo0MworbXNnaWQgIiIKKyJUaGUgcGFydHMgYXJlIG5hbWVkIEk8cHJlZml4PkI8Lj5JPE4+QjxvZj5JPE0+QjwuZGViPiB3aGVyZSBJPE4+IGlzIHRoZSBwYXJ0ICIKKyJudW1iZXIsIHN0YXJ0aW5nIGF0IDEsIGFuZCBJPE0+IGlzIHRoZSB0b3RhbCBudW1iZXIgb2YgcGFydHMgKGJvdGggaW4gIgorImRlY2ltYWwpLiIKK21zZ3N0ciAiIgorIkN6xJnFm2NpIG1hasSFIG5henfEmSBJPHByenlyb3N0ZWs+QjwuPkk8Tj5CPG9mPkk8TT5CPC5kZWI+IGdkemllIEk8Tj4gamVzdCAiCisibnVtZXJlbSBjesSZxZtjaSwgcm96cG9jenluYWrEhWMgb2QgMSwgYSBJPE0+IGplc3QgbGljemLEhSB3c3p5c3RraWNoIGN6xJnFm2NpICIKKyIoZHppZXNpxJl0bmllKS4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMTo1MQorbXNnaWQgIiIKKyJJZiBubyBJPHByZWZpeD4gaXMgc3VwcGxpZWQgdGhlbiB0aGUgSTxjb21wbGV0ZS1hcmNoaXZlPiBmaWxlbmFtZSBpcyB0YWtlbiwgIgorImluY2x1ZGluZyBkaXJlY3RvcnksIHdpdGggYW55IHRyYWlsaW5nIEI8LmRlYj4gcmVtb3ZlZC4iCittc2dzdHIgIiIKKyJKZcWbbGkgbmllIHBvZGFubyBJPHByemVkcm9zdGthPiwgdG8gdcW8eXRhIGplc3QgbmF6d2EgcGxpa3UgSTxwZcWCbmVnby0iCisiYXJjaGl3dW0+LCB3cmF6IHoga2F0YWxvZ2llbSwgZ2R5IGplc3Qgb2tyZcWbbG9ueS4gUG9uYWR0byB1c3VuacSZdGEgamVzdCAiCisia2/FhGPDs3drYSBCPC5kZWI+LiIKKworIworIy4gdHlwZTogVFAKKyM6IGRwa2ctc3BsaXQuMTo1MQorIywgbm8td3JhcAorbXNnaWQgIkI8LWo+LCBCPC0tam9pbj4gSTxwYXJ0Pi4uLiIKK21zZ3N0ciAiQjwtaj4sIEI8LS1qb2luPiBJPHBhcnQ+Li4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6NTUKK21zZ2lkICIiCisiSm9pbnMgdGhlIHBhcnRzIG9mIGEgcGFja2FnZSBmaWxlIHRvZ2V0aGVyLCByZWFzc2VtYmxpbmcgdGhlIG9yaWdpbmFsIGZpbGUgIgorImFzIGl0IHdhcyBiZWZvcmUgaXQgd2FzIHNwbGl0LiIKK21zZ3N0ciAiIgorIsWBxIVjemVuaWUgY3rEmcWbY2kgcGFraWV0dSBpIG9kdHdvcnplbmllIG9yeWdpbmFsbmVnbyBwbGlrdSBzcHJ6ZWQgZHppZWxlbmlhLiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjU5Cittc2dpZCAiIgorIlRoZSBwYXJ0IGZpbGVzIGdpdmVuIGFzIGFyZ3VtZW50cyBtdXN0IGJlIGFsbCB0aGUgcGFydHMgb2YgZXhhY3RseSB0aGUgc2FtZSAiCisib3JpZ2luYWwgYmluYXJ5IGZpbGUuIEVhY2ggcGFydCBtdXN0IG9jY3VyIGV4YWN0bHkgb25jZSBpbiB0aGUgYXJndW1lbnQgIgorImxpc3QsIHRob3VnaCB0aGUgcGFydHMgdG8gbm90IG5lZWQgdG8gYmUgbGlzdGVkIGluIG9yZGVyLiIKK21zZ3N0ciAiIgorIlBsaWtpIHBvZGFuZSBqYWtvIGFyZ3VtZW50eSBtdXN6xIUgYnnEhyBjesSZxZtjaWFtaSB0ZWdvIHNhbWVnbyBvcnlnaW5hbG5lZ28gIgorInBha2lldHUuIEthxbxkYSBjesSZxZvEhyBtdXNpIHBvamF3acSHIHNpxJkgcmF6IG5hIGxpxZtjaWUgYXJndW1lbnTDs3csIGFsZSBuaWUgamVzdCAiCisia29uaWVjem5lIHphY2hvd2FuaWUgd8WCYcWbY2l3ZWoga29sZWpub8WbY2kuIgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6NjQKK21zZ2lkICIiCisiVGhlIHBhcnRzIG11c3Qgb2YgY291cnNlIGFsbCBoYXZlIGJlZW4gZ2VuZXJhdGVkIHdpdGggdGhlIHNhbWUgcGFydCBzaXplICIKKyJzcGVjaWZpZWQgYXQgc3BsaXQgdGltZSwgd2hpY2ggbWVhbnMgdGhhdCB0aGV5IG11c3QgdXN1YWxseSBoYXZlIGJlZW4gIgorImdlbmVyYXRlZCBieSB0aGUgc2FtZSBpbnZvY2F0aW9uIG9mIEI8ZHBrZy1zcGxpdCAtLXNwbGl0Pi4iCittc2dzdHIgIiIKKyJDesSZxZtjaSBtdXN6xIUgYnnEhyB3eWdlbmVyb3dhbmUgeiB1xbx5Y2llbSB0ZWdvIHNhbWVnbyByb3ptaWFydSwgY28gb3puYWN6YSwgxbxlICIKKyJtdXN6xIUgdG8gYnnEhyB0ZSBzYW1lIGN6xJnFm2NpIHV0d29yem9uZSB6YSBwb21vY8SFIHBvbGVjZW5pYSBCPGRwa2ctc3BsaXQgLS0iCisic3BsaXQ+LiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjY2Cittc2dpZCAiVGhlIHBhcnRzJyBmaWxlbmFtZXMgYXJlIG5vdCBzaWduaWZpY2FudCBmb3IgdGhlIHJlYXNzZW1ibHkgcHJvY2Vzcy4iCittc2dzdHIgIiIKKyJOYXp3eSBwbGlrw7N3IGN6xJnFm2NpIG5pZSBtYWrEhSB6bmFjemVuaWEgZGxhIHByb2Nlc3Ugb2R0d29yemVuaWEgcGFraWV0dS4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMTo2OQorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiQnkgZGVmYXVsdCB0aGUgb3V0cHV0IGZpbGUgaXMgY2FsbGVkIEk8cGFja2FnZT5CPC0+STx2ZXJzaW9uPkI8LmRlYj4uIgorbXNnaWQgIiIKKyJCeSBkZWZhdWx0IHRoZSBvdXRwdXQgZmlsZSBpcyBjYWxsZWQgSTxwYWNrYWdlPkI8Xz5JPHZlcnNpb24+QjxfPkk8YXJjaD5CPC4iCisiZGViPi4iCittc2dzdHIgIkRvbXnFm2xuaWUsIG9kdHdvcnpvbnkgcGxpayBtYSBuYXp3xJkgSTxwYWtpZXQ+QjwtPkk8d2Vyc2phPkI8LmRlYj4uIgorCisjCisjLiB0eXBlOiBUUAorIzogZHBrZy1zcGxpdC4xOjcwCisjLCBuby13cmFwCittc2dpZCAiQjwtST4sIEI8LS1pbmZvPiBJPHBhcnQ+Li4uIgorbXNnc3RyICJCPC1JPiwgQjwtLWluZm8+IEk8cGFydD4uLi4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMTo3NQorbXNnaWQgIiIKKyJQcmludHMgaW5mb3JtYXRpb24sIGluIGEgaHVtYW4tcmVhZGFibGUgZm9ybWF0LCBhYm91dCB0aGUgcGFydCBmaWxlKHMpICAiCisic3BlY2lmaWVkLiBBcmd1bWVudHMgd2hpY2ggYXJlIG5vdCBiaW5hcnkgcGFja2FnZSBwYXJ0cyBwcm9kdWNlIGEgbWVzc2FnZSAiCisic2F5aW5nIHNvIGluc3RlYWQgKGJ1dCBzdGlsbCBvbiBzdGFuZGFyZCBvdXRwdXQpLiIKK21zZ3N0ciAiIgorIld5xZt3aWV0bGFuaWUgaW5mb3JtYWNqaSwgcG9kYW55Y2ggdyBmb3JtYWNpZSBjenl0ZWxueW0gZGxhIGN6xYJvd2lla2EsIG8gIgorImN6xJnFm2NpYWNoIHBha2lldHUuIEFyZ3VtZW50eSwga3TDs3JlIG5pZSBzxIUgY3rEmcWbY2nEhSBwYWtpZXR1LCBwb3dvZHVqxIUgIgorInd5xZt3aWV0bGVuaWUgaW5mb3JtYWNqaSBvIHR5bSBmYWtjaWUgbmEgc3RhbmRhcmRvd3ltIHd5asWbY2l1LiIKKworIworIy4gdHlwZTogVFAKKyM6IGRwa2ctc3BsaXQuMTo3NQorIywgbm8td3JhcAorbXNnaWQgIkI8LWE+LCBCPC0tYXV0byAtbz4gSTxjb21wbGV0ZS1vdXRwdXQgcGFydD4iCittc2dzdHIgIkI8LWE+LCBCPC0tYXV0byAtbz4gSTxwZcWCbmUtYXJjaGl3dW0gY3rEmcWbxIc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6NzgKK21zZ2lkICJBdXRvbWF0aWNhbGx5IHF1ZXVlIHBhcnRzIGFuZCByZWFzc2VtYmxlIGEgcGFja2FnZSBpZiBwb3NzaWJsZS4iCittc2dzdHIgIiIKKyJBdXRvbWF0eWN6bmUga29sZWprb3dhbmllIGN6xJnFm2NpIGkgb2R0d29yemVuaWUgcGFraWV0dSwgZ2R5IHRvIGplc3QgbW/FvGxpd2UuIgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6ODMKK21zZ2lkICIiCisiVGhlIEk8cGFydD4gc3BlY2lmaWVkIGlzIGV4YW1pbmVkLCBhbmQgY29tcGFyZWQgd2l0aCBvdGhlciBwYXJ0cyBvZiB0aGUgc2FtZSAiCisicGFja2FnZSAoaWYgYW55KSBpbiB0aGUgcXVldWUgb2YgcGFja2FnZXMgZmlsZSBwYXJ0cy4iCittc2dzdHIgIiIKKyJQb2RhbmEgSTxjesSZxZvEhz4gem9zdGFqZSBzcHJhd2R6b25hIGkgcG9yw7N3bmFuYSB6IGlubnltaSBjesSZxZtjaWFtaSB0ZWdvICIKKyJzYW1lZ28gcGFraWV0dSwga3TDs3JlIHpuYWpkdWrEhSBzacSZIHcga29sZWpjZS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMTo5MAorbXNnaWQgIiIKKyJJZiBhbGwgcGFydHMgb2YgdGhlIHBhY2thZ2UgZmlsZSBvZiB3aGljaCBJPHBhcnQ+IGlzIGEgcGFydCBhcmUgYXZhaWxhYmxlICIKKyJ0aGVuIHRoZSBwYWNrYWdlIGlzIHJlYXNzZW1ibGVkIGFuZCB3cml0dGVuIHRvIEk8Y29tcGxldGUtb3V0cHV0PiAod2hpY2ggIgorInNob3VsZCBub3QgdXN1YWxseSBhbHJlYWR5IGV4aXN0LCB0aG91Z2ggdGhpcyBpcyBub3QgYW4gZXJyb3IpLiIKK21zZ3N0ciAiIgorIkplxZtsaSB3c3p5c3RraWUgY3rEmcWbY2kgcGFraWV0dSBzxIUganXFvCBkb3N0xJlwbmUsIHBha2lldCBqZXN0IG9kdHdhcnphbnkgaSAiCisiemFwaXN5d2FueSBkbyBJPHBlxYJuZWdvLWFyY2hpd3VtPi4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMTo5NgorbXNnaWQgIiIKKyJJZiBub3QgdGhlbiB0aGUgSTxwYXJ0PiBpcyBjb3BpZWQgaW50byB0aGUgcXVldWUgYW5kIEk8Y29tcGxldGUtb3V0cHV0PiBpcyAiCisibm90IGNyZWF0ZWQuIgorbXNnc3RyICIiCisiSmXFm2xpIGplc3pjemUgbmllIG1hIHdzenlzdGtpY2ggY3rEmcWbY2ksIHBvZGFuYSBJPGN6xJnFm8SHPiBqZXN0IGtvcGlvd2FuYSBkbyAiCisia29sZWpraSBpIEk8cGXFgm5lLWFyY2hpd3VtPiBuaWUgamVzdCBvZHR3YXJ6YW5lLiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjEwMworIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiSWYgSTxwYXJ0PiBpcyBub3QgYSBzcGxpdCBiaW5hcnkgcGFja2FnZSBwYXJ0IHRoZW4gQjxkcGtnLXNwbGl0PiB3aWxsICIKKyN8ICJleGl0IHdpdGggc3RhdHVzIDE7IGlmIHNvbWUgb3RoZXIgdHJvdWJsZSBvY2N1cnMgdGhlbiBpdCB3aWxsIGV4aXQgd2l0aCAiCisjfCAic3RhdHVzIDIuIgorbXNnaWQgIiIKKyJJZiBJPHBhcnQ+IGlzIG5vdCBhIHNwbGl0IGJpbmFyeSBwYWNrYWdlIHBhcnQgdGhlbiBCPGRwa2ctc3BsaXQ+IHdpbGwgZXhpdCAiCisid2l0aCBzdGF0dXMgQjwxPjsgaWYgc29tZSBvdGhlciB0cm91YmxlIG9jY3VycyB0aGVuIGl0IHdpbGwgZXhpdCB3aXRoIHN0YXR1cyAiCisiQjwyPi4iCittc2dzdHIgIiIKKyJKZcWbbGkgcGxpayBJPGN6xJnFm8SHPiBuaWUgamVzdCBjesSZxZtjacSFIHBha2lldHUgYmluYXJuZWdvLCBCPGRwa2ctc3BsaXQ+ICIKKyJ6YWtvxYRjenkgc2nEmSBpIHp3csOzY2kga29kIGLFgsSZZHUgMSwgYWxibyBrb2QgYsWCxJlkdSAyIHcgcHJ6eXBhZGt1IHd5c3TEhXBpZW5pYSAiCisiaW5ueWNoIHByb2JsZW3Ds3cuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTEwCittc2dpZCAiIgorIlRoZSBCPC0tb3V0cHV0PiBvciBCPC1vPiBvcHRpb24gbXVzdCBiZSBzdXBwbGllZCB3aGVuIHVzaW5nIEI8LS1hdXRvPi4gIChJZiAiCisidGhpcyB3ZXJlIG5vdCBtYW5kYXRvcnkgdGhlIGNhbGxpbmcgcHJvZ3JhbSB3b3VsZCBub3Qga25vdyB3aGF0IG91dHB1dCBmaWxlICIKKyJ0byBleHBlY3QuKSIKK21zZ3N0ciAiIgorIk9wY2phIEI8LS1vdXRwdXQ+IGx1YiBCPC1vPiBtdXNpIHpvc3RhxIcgcG9kYW5hIHcgcHJ6eXBhZGt1IHXFvHljaWEgQjwtLWF1dG8+LiAiCisiKFcgcHJ6ZWNpd255bSByYXppZSBwcm9ncmFtIG5pZSB3aWVkemlhxYJieSwgamFraWVnbyBzcG9kemlld2HEhyBzacSZIHBsaWt1ICIKKyJ3eWrFm2Npb3dlZ28uKSIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc3BsaXQuMToxMTAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1sPiwgQjwtLWxpc3RxPiIKK21zZ3N0ciAiQjwtbD4sIEI8LS1saXN0cT4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxMTMKK21zZ2lkICJMaXN0cyB0aGUgY29udGVudHMgb2YgdGhlIHF1ZXVlIG9mIHBhY2thZ2VzIHRvIGJlIHJlYXNzZW1ibGVkLiIKK21zZ3N0ciAiTGlzdG93YW5pZSB6YXdhcnRvxZtjaSBrb2xlamtpIGN6xJnFm2NpIHBha2lldHUgZG8gb2R0d29yemVuaWEuIgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTE3Cittc2dpZCAiIgorIkZvciBlYWNoIHBhY2thZ2UgZmlsZSBvZiB3aGljaCBwYXJ0cyBhcmUgaW4gdGhlIHF1ZXVlIHRoZSBvdXRwdXQgZ2l2ZXMgdGhlICIKKyJuYW1lIG9mIHRoZSBwYWNrYWdlLCB0aGUgcGFydHMgaW4gdGhlIHF1ZXVlLCBhbmQgdGhlIHRvdGFsIG51bWJlciBvZiBieXRlcyAiCisic3RvcmVkIGluIHRoZSBxdWV1ZS4iCittc2dzdHIgIiIKKyJEbGEga2HFvGRlZ28gcGxpa3UgY3rEmcWbY2kgcGFraWV0dSB3ecWbd2lldGxhbmEgamVzdCBuYXp3YSBwYWtpZXR1LCBjesSZxZvEhyB3ICIKKyJrb2xlamNlLCBjYcWCa293aXRhIGxpY3piYSBiYWp0w7N3IHByemVjaG93eXdhbnljaCB3IGtvbGVqY2UuIgorCisjCisjLiB0eXBlOiBUUAorIzogZHBrZy1zcGxpdC4xOjExNworIywgbm8td3JhcAorbXNnaWQgIkI8LWQ+LCBCPC0tZGlzY2FyZD4gW0k8cGFja2FnZT4uLi5dIgorbXNnc3RyICJCPC1kPiwgQjwtLWRpc2NhcmQ+IFtJPHBha2lldD4uLi5dIgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTIxCittc2dpZCAiIgorIlRoaXMgZGlzY2FyZHMgcGFydHMgZnJvbSB0aGUgcXVldWUgb2YgdGhvc2Ugd2FpdGluZyBmb3IgdGhlIHJlbWFpbmluZyBwYXJ0cyAiCisib2YgdGhlaXIgcGFja2FnZXMuIgorbXNnc3RyICJVc3V3YSBjesSZxZtjaSBwYWtpZXR1IHoga29sZWpraS4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxMjYKK21zZ2lkICIiCisiSWYgbm8gSTxwYWNrYWdlPiBpcyBzcGVjaWZpZWQgdGhlbiB0aGUgcXVldWUgaXMgY2xlYXJlZCBjb21wbGV0ZWx5OyBpZiBhbnkgIgorImFyZSBzcGVjaWZpZWQgdGhlbiBvbmx5IHBhcnRzIG9mIHRoZSByZWxldmFudCBwYWNrYWdlKHMpIGFyZSBkZWxldGVkLiIKK21zZ3N0ciAiIgorIkplxZtsaSBuaWUgcG9kYW5vIG5hend5IEk8cGFraWV0dT4sIGN6eXN6Y3pvbmEgamVzdCBjYcWCYSBrb2xlamthLiBHZHkgbmF6d2EgIgorImplc3QgcG9kYW5hLCB1c3V3YW5lIHPEhSB0eWxrbyBjesSZxZtjaSBwb2RhbmVnbyBwYWtpZXR1LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc3BsaXQuMToxMzQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tZGVwb3RkaXI+STwgZGlyZWN0b3J5PiIKK21zZ3N0ciAiQjwtLWRlcG90ZGlyPkk8IGthdGFsb2c+IgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTM5Cittc2dpZCAiIgorIlNwZWNpZmllcyBhbiBhbHRlcm5hdGl2ZSBkaXJlY3RvcnkgZm9yIHRoZSBxdWV1ZSBvZiBwYXJ0cyBhd2FpdGluZyBhdXRvbWF0aWMgIgorInJlYXNzZW1ibHkuIFRoZSBkZWZhdWx0IGlzIEI8L3Zhci9saWIvZHBrZz4uIgorbXNnc3RyICIiCisiT2tyZcWbbGVuaWUgYWx0ZXJuYXR5d25lZ28ga2F0YWxvZ3UgZGxhIGtvbGVqa2kgY3rEmcWbY2kgcGFraWV0w7N3IGRvICIKKyJ6cmVrb25zdHJ1b3dhbmlhLiBEb215xZtsbnltIGplc3QgQjwvdmFyL2xpYi9kcGtnPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNwbGl0LjE6MTM5CisjLCBuby13cmFwCittc2dpZCAiQjwtUz4sIEI8LS1wYXJ0c2l6ZT4gSTxraWJpYnl0ZXM+IgorbXNnc3RyICJCPC1TPiwgQjwtLXBhcnRzaXplPiBJPGtpYmliYWp0eT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxNDMKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRoZSBtYXhpbXVtIHBhcnQgc2l6ZSB3aGVuIHNwbGl0dGluZywgaW4ga2liaWJ5dGVzICgxMDI0IGJ5dGVzKS4gIgorIlRoZSBkZWZhdWx0IGlzIDQ1MCBLaUIuIgorbXNnc3RyICIiCisiT2tyZcWbbGVuaWUgbWFrc3ltYWxuZWdvIHJvem1pYXJ1IGN6xJnFm2NpIHBha2lldHUgdyBraWJpYmFqdGFjaCAoS2lCLCAxMDI0ICIKKyJiYWp0w7N3KS4gV2FydG/Fm2NpxIUgZG9tecWbbG7EhSBqZXN0IDQ1MCBLaUIuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zcGxpdC4xOjE0MworIywgbm8td3JhcAorbXNnaWQgIkI8LW8+LCBCPC0tb3V0cHV0PiBJPGNvbXBsZXRlLW91dHB1dD4iCittc2dzdHIgIkI8LW8+LCBCPC0tb3V0cHV0PiBJPHBlxYJuZS1hcmNoaXd1bT4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxNDYKK21zZ2lkICJTcGVjaWZpZXMgdGhlIG91dHB1dCBmaWxlIG5hbWUgZm9yIGEgcmVhc3NlbWJseS4iCittc2dzdHIgIk9rcmXFm2xlbmllIG5hend5IHBsaWt1IHBlxYJuZWdvIGFyY2hpd3VtLiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjE1MQorbXNnaWQgIiIKKyJUaGlzIG92ZXJyaWRlcyB0aGUgZGVmYXVsdCBmb3IgYSBtYW51YWwgcmVhc3NlbWJseSAoQjwtLWpvaW4+KSAgYW5kIGlzICIKKyJtYW5kYXRvcnkgZm9yIGFuIGF1dG9tYXRpYyBxdWV1ZS1vci1yZWFzc2VtYmxlIChCPC0tYXV0bz4pLiIKK21zZ3N0ciAiIgorIlRhIG9wY2phIG5hZHBpc3VqZSBkb215xZtsbsSFIG5henfEmSBwcnp5IG9kdHdhcnphbml1IHBha2lldHUgKEI8LS1qb2luPikgb3JheiAiCisiamVzdCB3eW1hZ2FuYSBwcnp5IGF1dG9tYXR5Y3pueW0gb2R0d2FyemFuaXUgcGFraWV0dSAoQjwtLWF1dG8+KS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNwbGl0LjE6MTUxCisjLCBuby13cmFwCittc2dpZCAiQjwtUT4sIEI8LS1ucHF1aWV0PiIKK21zZ3N0ciAiQjwtUT4sIEI8LS1ucHF1aWV0PiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjE2MgorbXNnaWQgIiIKKyJXaGVuIGRvaW5nIGF1dG9tYXRpYyBxdWV1ZS1vci1yZWFzc2VtYmx5IEI8ZHBrZy1zcGxpdD4gdXN1YWxseSBwcmludHMgYSAiCisibWVzc2FnZSBpZiBpdCBpcyBnaXZlbiBhIEk8cGFydD4gdGhhdCBpcyBub3QgYSBiaW5hcnkgcGFja2FnZSBwYXJ0LiBUaGlzICIKKyJvcHRpb24gc3VwcHJlc3NlcyB0aGlzIG1lc3NhZ2UsIHRvIGFsbG93IHByb2dyYW1zIHN1Y2ggYXMgQjxkcGtnPiB0byBjb3BlICIKKyJ3aXRoIGJvdGggc3BsaXQgYW5kIHVuc3BsaXQgcGFja2FnZXMgd2l0aG91dCBwcm9kdWNpbmcgc3B1cmlvdXMgbWVzc2FnZXMuIgorbXNnc3RyICIiCisiR2R5IHd5a29ueXdhbmUgamVzdCBhdXRvbWF0eWN6bmUgxYLEhWN6ZW5pZSBjesSZxZtjaSBwYWtpZXR1LCBCPGRwa2ctc3BsaXQ+ICIKKyJ6d3lrbGUgd3nFm3dpZXRsYSBpbmZvcm1hY2plIG8gYsWCxJlkemllLCBnZHkgZGFueSBwbGlrIEk8Y3rEmcWbY2k+IG5pZSBqZXN0ICIKKyJjesSZxZtjacSFIHBha2lldHUuIFRhIG9wY2phIHphcG9iaWVnYSB3ecWbd2lldGxhbml1IG5hZG1pZXJuZWogaWxvxZtjaSAiCisiaW5mb3JtYWNqaSBwcnpleiBwcm9ncmFteSB0YWtpZSBqYWsgQjxkcGtnPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNwbGl0LjE6MTYyCisjLCBuby13cmFwCittc2dpZCAiQjwtLW1zZG9zPiIKK21zZ3N0ciAiQjwtLW1zZG9zPiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjE2NworbXNnaWQgIiIKKyJGb3JjZXMgdGhlIG91dHB1dCBmaWxlbmFtZXMgZ2VuZXJhdGVkIGJ5IEI8LS1zcGxpdD4gdG8gYmUgbXNkb3MtY29tcGF0aWJsZS4iCittc2dzdHIgIiIKKyJQbGlraSBnZW5lcm93YW5lIHByemV6IEI8LS1zcGxpdD4gc8SFIHphcGlzeXdhbmUgdyBmb3JtYWNpZSBvZGN6eXR5d2FueW0gIgorInByemV6IE1TRE9TLiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjE3MworbXNnaWQgIiIKKyJUaGlzIG1hbmdsZXMgdGhlIHByZWZpeCAtIGVpdGhlciB0aGUgZGVmYXVsdCBkZXJpdmVkIGZyb20gdGhlIGlucHV0IGZpbGVuYW1lICIKKyJvciB0aGUgb25lIHN1cHBsaWVkIGFzIGFuIGFyZ3VtZW50OiBhbHBoYW51bWVyaWNzIGFyZSBsb3dlcmNhc2VkLCBwbHVzIHNpZ25zICIKKyJhcmUgcmVwbGFjZWQgYnkgQjx4PidzIGFuZCBhbGwgb3RoZXIgY2hhcmFjdGVycyBhcmUgZGlzY2FyZGVkLiIKK21zZ3N0ciAiIgorIlptaWVuaWFueSBqZXN0IHByemVkcm9zdGVrLCB6YXLDs3dubyB0ZW4gZG9tecWbbG55IGphayBpIHRlbiBwb2RhbnkgdyAiCisiYXJndW1lbmNpZTogbGl0ZXJ5IHPEhSB6YW1pZW5pYW5lIG5hIG1hxYJlLCB6bmFrIHBsdXNhIHphbWllbmlhbnkgamVzdCBuYSAiCisiQjx4PiwgYSBwb3pvc3RhxYJlIHpuYWtpIHPEhSBwb21pamFuZS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxNzgKK21zZ2lkICIiCisiVGhlIHJlc3VsdCBpcyB0aGVuIHRydW5jYXRlZCBhcyBtdWNoIGFzIGlzIG5lY2Vzc2FyeSwgYW5kIGZpbGVuYW1lcyBvZiB0aGUgIgorImZvcm0gSTxwcmVmaXhOPkI8b2Y+STxNPkI8LmRlYj4gYXJlIGdlbmVyYXRlZC4iCittc2dzdHIgIiIKKyJQb3dzdGHFgnkgcHJ6ZWRyb3N0ZWsgamVzdCB1Y2luYW55IGRvIG5pZXpixJlkbmVnbyByb3ptaWFydS4gUG93c3RhxYJhIG5hendhIG1hICIKKyJwb3N0YcSHIEk8cHJ6ZWRyb3N0ZWtOPkI8b2Y+STxNPkI8LmRlYi4uPiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjE4NgorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiQW4gZXhpdCBzdGF0dXMgb2YgMCBpbmRpY2F0ZXMgdGhhdCB0aGUgcmVxdWVzdGVkIHNwbGl0LCBtZXJnZSwgb3Igb3RoZXIgIgorI3wgImNvbW1hbmQgc3VjY2VlZGVkLiAgQjwtLWluZm8+IGNvbW1hbmRzIGNvdW50IGFzIHN1Y2Nlc3NmdWwgZXZlbiBpZiB0aGUgIgorI3wgImZpbGVzIGFyZSBub3QgYmluYXJ5IHBhY2thZ2UgcGFydHMuIgorbXNnaWQgIiIKKyJUaGUgcmVxdWVzdGVkIHNwbGl0LCBtZXJnZSwgb3Igb3RoZXIgY29tbWFuZCBzdWNjZWVkZWQuICBCPC0taW5mbz4gY29tbWFuZHMgIgorImNvdW50IGFzIHN1Y2Nlc3NmdWwgZXZlbiBpZiB0aGUgZmlsZXMgYXJlIG5vdCBiaW5hcnkgcGFja2FnZSBwYXJ0cy4iCittc2dzdHIgIiIKKyJLb2QgYsWCxJlkdSAwIG96bmFjemEsIMW8ZSDFvMSFZGFuYSBvcGVyYWNqYSBkemllbGVuaWEsIMWCxIVjemVuaWEgY3p5IGpha2Frb2x3aWVrICIKKyJpbm5hLCB6YWtvxYRjennFgmEgc2nEmSBzdWtjZXNlbS4gUG9sZWNlbmllIEI8LS1pbmZvPiBrb8WEY3p5IHNpxJkgc3VrY2VzZW0gbmF3ZXQgIgorImdkeSBwb2RhbnkgcGxpayBuaWUgamVzdCBjesSZxZtjacSFIHBha2lldHUuIgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTkzCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJBbiBleGl0IHN0YXR1cyBvZiAxIG9jY3VycyBvbmx5IHdpdGggQjwtLWF1dG8+IGFuZCBpbmRpY2F0ZXMgdGhhdCB0aGUgIgorI3wgIkk8cGFydD4gZmlsZSB3YXMgbm90IGEgYmluYXJ5IHBhY2thZ2UgcGFydC4iCittc2dpZCAiIgorIk9ubHkgb2NjdXJzIHdpdGggQjwtLWF1dG8+IGFuZCBpbmRpY2F0ZXMgdGhhdCB0aGUgSTxwYXJ0PiBmaWxlIHdhcyBub3QgYSAiCisiYmluYXJ5IHBhY2thZ2UgcGFydC4iCittc2dzdHIgIiIKKyJLb2QgYsWCxJlkdSAxIG96bmFjemEsIMW8ZSBvcGNqYSBCPC0tYXV0bz4gem9zdGHFgmEgd3lrb25hbmEgbmEgcGxpa3UsIGt0w7NyeSBuaWUgIgorImplc3QgSTxjesSZxZtjacSFPiBwYWtpZXR1LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc3BsaXQuMToxOTMgc3RhcnQtc3RvcC1kYWVtb24uODoyNzUgdXBkYXRlLWFsdGVybmF0aXZlcy44OjM3OAorIywgbm8td3JhcAorbXNnaWQgIkI8Mj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjE5OAorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiQW4gZXhpdCBzdGF0dXMgb2YgMiBpbmRpY2F0ZXMgc29tZSBraW5kIG9mIHRyb3VibGUsIHN1Y2ggYXMgYSBzeXN0ZW0gY2FsbCAiCisjfCAiZmFpbHVyZSwgYSBmaWxlIHRoYXQgbG9va2VkIGxpa2UgYSBwYWNrYWdlIHBhcnQgZmlsZSBidXQgd2FzIGNvcnJ1cHRlZCwgYSAiCisjfCAidXNhZ2UgZXJyb3Igb3Igc29tZSBvdGhlciBwcm9ibGVtLiIKK21zZ2lkICIiCisiU29tZSBraW5kIG9mIHRyb3VibGUgaGFwcGVuZWQsIHN1Y2ggYXMgYSBzeXN0ZW0gY2FsbCBmYWlsdXJlLCBhIGZpbGUgdGhhdCAiCisibG9va2VkIGxpa2UgYSBwYWNrYWdlIHBhcnQgZmlsZSBidXQgd2FzIGNvcnJ1cHRlZCwgYSB1c2FnZSBlcnJvciBvciBzb21lICIKKyJvdGhlciBwcm9ibGVtLiIKK21zZ3N0ciAiIgorIktvZCBixYLEmWR1IDIgcG9qYXdpYSBzacSZIHByenkgcsOzxbxuZWdvIHJvZHphanUgcHJvYmxlbWFjaCwgdGFraWNoIGphayBixYLEmWR5ICIKKyJ3eXdvxYJhbmlhIGZ1bmtjamkgc3lzdGVtdSwgdXN6a29kemVuaWUgcGxpa8OzdyBjesSZxZtjaSBwYWtpZXR1LCBjenkgaW5ueWNoICIKKyJ3eXBhZGthY2guIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MjAyCittc2dpZCAiIgorIkZ1bGwgZGV0YWlscyBvZiB0aGUgcGFja2FnZXMgaW4gdGhlIHF1ZXVlIGFyZSBpbXBvc3NpYmxlIHRvIGdldCB3aXRob3V0ICIKKyJkaWdnaW5nIGludG8gdGhlIHF1ZXVlIGRpcmVjdG9yeSB5b3Vyc2VsZi4iCittc2dzdHIgIiIKKyJQb2JyYW5pZSBwZcWCbmVqIGluZm9ybWFjamkgbyBwYWtpZXRhY2ggdyBrb2xlamNlIGplc3QgbmllbW/FvGxpd2UsIGJleiAiCisicHJ6ZXN6dWthbmlhIGthdGFsb2d1IGtvbGVqa2kuIgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MjA1Cittc2dpZCAiIgorIlRoZXJlIGlzIG5vIGVhc3kgd2F5IHRvIHRlc3Qgd2hldGhlciBhIGZpbGUgdGhhdCBtYXkgYmUgYSBiaW5hcnkgcGFja2FnZSAiCisicGFydCBpcyBvbmUuIgorbXNnc3RyICIiCisiTmllIG1hIHByb3N0ZWdvIHRlc3R1IG5hIHNwcmF3ZHplbmllLCBjenkgZGFueSBwbGlrIGplc3QgbmEgcGV3bm8gY3rEmcWbY2nEhSAiCisicGFraWV0dS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNwbGl0LjE6MjA3CisjLCBuby13cmFwCittc2dpZCAiSTwvdmFyL2xpYi9kcGtnL3BhcnRzPiIKK21zZ3N0ciAiSTwvdmFyL2xpYi9kcGtnL3BhcnRzPiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjIxMQorbXNnaWQgIiIKKyJUaGUgZGVmYXVsdCBxdWV1ZSBkaXJlY3RvcnkgZm9yIHBhcnQgZmlsZXMgYXdhaXRpbmcgYXV0b21hdGljIHJlYXNzZW1ibHkuIgorbXNnc3RyICIiCisiRG9tecWbbG55IGthdGFsb2cga29sZWpraSBjesSZxZtjaSBwYWtpZXTDs3cgY3pla2FqxIVjeWNoIG5hIGF1dG9tYXR5Y3puZSAiCisib2R0d29yemVuaWUuIgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MjE2Cittc2dpZCAiIgorIlRoZSBmaWxlbmFtZXMgdXNlZCBpbiB0aGlzIGRpcmVjdG9yeSBhcmUgaW4gYSBmb3JtYXQgaW50ZXJuYWwgdG8gQjxkcGtnLSIKKyJzcGxpdD4gYW5kIGFyZSB1bmxpa2VseSB0byBiZSB1c2VmdWwgdG8gb3RoZXIgcHJvZ3JhbXMsIGFuZCBpbiBhbnkgY2FzZSB0aGUgIgorImZpbGVuYW1lIGZvcm1hdCBzaG91bGQgbm90IGJlIHJlbGllZCB1cG9uLiIKK21zZ3N0ciAiIgorIk5hend5IHBsaWvDs3cgdyB0eW0ga2F0YWxvZ3Ugc8SFIHdld27EmXRyem5pZSB1dHdvcnpvbmUgcHJ6ZXogQjxkcGtnLXNwbGl0PiBpICIKKyJuaWUgc8SFIHXFvHl0ZWN6bmUgZGxhIGlubnljaCBwcm9ncmFtw7N3LiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjIyMgorbXNnaWQgIkI8ZGViPig1KSwgQjxkZWItY29udHJvbD4oNSksIEI8ZHBrZy1kZWI+KDEpLCBCPGRwa2c+KDEpLiIKK21zZ3N0ciAiQjxkZWI+KDUpLCBCPGRlYi1jb250cm9sPig1KSwgQjxkcGtnLWRlYj4oMSksIEI8ZHBrZz4oMSkuIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODoxCisjLCBuby13cmFwCittc2dpZCAiZHBrZy1zdGF0b3ZlcnJpZGUiCittc2dzdHIgImRwa2ctc3RhdG92ZXJyaWRlIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODoxCisjLCBuby13cmFwCittc2dpZCAiRGViaWFuIHByb2plY3QiCittc2dzdHIgIlByb2pla3QgRGViaWFuYSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo0Cittc2dpZCAiZHBrZy1zdGF0b3ZlcnJpZGUgLSBvdmVycmlkZSBvd25lcnNoaXAgYW5kIG1vZGUgb2YgZmlsZXMiCittc2dzdHIgImRwa2ctc3RhdG92ZXJyaWRlIC0gbmFkcGlzeXdhbmllIHfFgmHFm2NpY2llbGEgaSBwcmF3IHBsaWvDs3ciCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6OAorIywgZnV6enkKKyN8IG1zZ2lkICJCPGRwa2ctc3RhdG92ZXJyaWRlPiBbSTxvcHRpb25zPl0gSTxjb21tYW5kPiIKK21zZ2lkICJCPGRwa2ctc3RhdG92ZXJyaWRlPiBbSTxvcHRpb24+Li4uXSBJPGNvbW1hbmQ+IgorbXNnc3RyICJCPGRwa2ctc3RhdG92ZXJyaWRlPiBbSTxvcGNqZT5dIEk8cG9sZWNlbmllPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODoxOAorbXNnaWQgIiIKKyJgQjxzdGF0IG92ZXJyaWRlcz4nIGFyZSBhIHdheSB0byB0ZWxsIEI8ZHBrZz4oMSkgIHRvIHVzZSBhIGRpZmZlcmVudCBvd25lciAiCisib3IgbW9kZSBmb3IgYSBmaWxlIHdoZW4gYSBwYWNrYWdlIGlzIGluc3RhbGxlZC4gKG5vdGU6IEkgdXNlIHRoZSB3b3JkIGBmaWxlJyAiCisiaGVyZSwgYnV0IGluIHJlYWxpdHkgdGhpcyBjYW4gYmUgYW55IGZpbGVzeXN0ZW0gb2JqZWN0IHRoYXQgZHBrZyBoYW5kbGVzLCAiCisiaW5jbHVkaW5nIGRpcmVjdG9yaWVzLCBkZXZpY2VzLCBldGMuKS4gVGhpcyBjYW4gYmUgdXNlZCB0byBmb3JjZSBwcm9ncmFtcyAiCisidGhhdCBhcmUgbm9ybWFsbHkgc2V0dWlkIHRvIGJlIGluc3RhbGwgd2l0aG91dCBhIHNldHVpZCBmbGFnLCBvciBvbmx5ICIKKyJleGVjdXRhYmxlIGJ5IGEgY2VydGFpbiBncm91cC4iCittc2dzdHIgIiIKKyJCPE5hZHBpc2FuaWEgc3RhbnU+IHPEhSBzcG9zb2JlbSBuYWthemFuaWEgcHJvZ3JhbW93aSBCPGRwa2c+KDEpIHXFvHljaWUgIgorImlubmVnbyB3xYJhxZtjaWNpZWxhIGkgdHJ5YnUgcGxpa3UgcG9kY3phcyBpbnN0YWxhY2ppIHBha2lldHUuIChVd2FnYTogdcW8ecWCZW0gIgorInR1IHPFgm93YSBcInBsaWtcIiwgYWxlIHRhayBuYXByYXdkxJkgbW/FvGUgdG8gYnnEhyBkb3dvbG55IG9iaWVrdCBzeXN0ZW11ICIKKyJwbGlrw7N3LCBrdMOzcnltIHphcnrEhWR6YSBkcGtnLCBucC4ga2F0YWxvZ2kgY3p5IHVyesSFZHplbmlhKS4gTW/FvG5hIGljaCB1xbx5xIcgIgorImRvIHptdXN6ZW5pYSBwcm9ncmFtw7N3LCBrdMOzcmUgc8SFIHphend5Y3phaiBpbnN0YWxvd2FuZSB6IGZsYWfEhSBzZXR1aWQsIGJ5ICIKKyJiecWCeSB6YWluc3RhbG93YW5lIGJleiB0ZWogZmxhZ2kgbHViYnkgYnnFgnkgbW/FvGxpd2UgZG8gd3lrb25hbmlhIHR5bGtvIHByemV6ICIKKyJwZXduxIUgZ3J1cMSZIHXFvHl0a293bmlrw7N3LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODoyMgorbXNnaWQgIiIKKyJCPGRwa2ctc3RhdG92ZXJyaWRlPiBpcyBhIHV0aWxpdHkgdG8gbWFuYWdlIHRoZSBsaXN0IG9mIHN0YXQgb3ZlcnJpZGVzLiBJdCAiCisiaGFzIHRocmVlIGJhc2ljIGZ1bmN0aW9uczogYWRkaW5nLCByZW1vdmluZyBhbmQgbGlzdGluZyBvdmVycmlkZXMuIgorbXNnc3RyICIiCisiQjxkcGtnLXN0YXRvdmVycmlkZT4gamVzdCBuYXJ6xJlkemllbSB1xbx5dGtvd3ltIGRvIHphcnrEhWR6YW5pYSBsaXN0xIUgbmFkcGlzYcWEICIKKyJzdGFudS4gTWEgdHJ6eSBwb2RzdGF3b3dlIGZ1bmtjamU6IGRvZGF3YW5pYSwgdXN1d2FuaWEgaSB3ecWbd2lldGxhbmlhIGxpc3R5ICIKKyJ0YWtpY2ggbmFkcGlzYcWELiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6MjQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tYWRkPkk8IHVzZXIgZ3JvdXAgbW9kZSBmaWxlPiIKK21zZ3N0ciAiQjwtLWFkZD5JPCB1xbx5dGtvd25payBncnVwYSB0cnliIHBsaWs+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjMyCittc2dpZCAiIgorIkFkZCBhbiBvdmVycmlkZSBmb3IgSTxmaWxlPi4gSTxmaWxlPiBkb2VzIG5vdCBuZWVkIHRvIGV4aXN0IHdoZW4gdGhpcyAiCisiY29tbWFuZCBpcyB1c2VkOyB0aGUgb3ZlcnJpZGUgd2lsbCBiZSBzdG9yZWQgYW5kIHVzZWQgbGF0ZXIuICBVc2VycyBhbmQgIgorImdyb3VwcyBjYW4gYmUgc3BlY2lmaWVkIGJ5IHRoZWlyIG5hbWUgKGZvciBleGFtcGxlIEI8cm9vdD4gb3IgQjxub2JvZHk+KSwgb3IgIgorImJ5IHRoZWlyIG51bWJlciBieSBwcmVwZW5kaW5nIHRoZSBudW1iZXIgd2l0aCBhIGBCPCM+JyAoZm9yIGV4YW1wbGUgQjwjMD4gb3IgIgorIkI8IzY1NTM0PikuIFRoZSBJPG1vZGU+IG5lZWRzIHRvIGJlIHNwZWNpZmllZCBpbiBvY3RhbC4iCittc2dzdHIgIiIKKyJEb2RhamUgbmFkcGlzYW5pZSBkbGEgSTxwbGlrdT4uIFNhbSBJPHBsaWs+IG5pZSBtdXNpIGlzdG5pZcSHIHcgY3phc2llICIKKyJ3eWtvbmFuaWEgdGVnbyBwb2xlY2VuaWEsIG5hZHBpc2FuaWUgYsSZZHppZSBwcnplY2hvd2FuZSBpIHXFvHl0ZSBww7PFum5pZWouICIKKyJVxbx5dGtvd25pa8OzdyBpIGdydXB5IG1vxbxuYSBwb2Rhd2HEhyB1xbx5d2FqxIVjIGFsYm8gaWNoIG5hencgKG5hIHByenlrxYJhZCAiCisiQjxyb290PiBsdWIgQjxub2JvZHk+KSwgYWxibyBpY2ggbnVtZXJ1IHBvcHJ6ZWR6b25lZ28gem5ha2llbSBcIkI8Iz5cIiAobmEgIgorInByenlrxYJhZCBCPCMwPiBsdWIgQjwjNjU1MzQ+KS4gTmF0b21pYXN0IEk8dHJ5Yj4gbXVzaSBiecSHIHBvZGFueSBqYWtvIGxpY3piYSAiCisiw7NzZW1rb3dhLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODozNQorbXNnaWQgIiIKKyJJZiAtLXVwZGF0ZSBpcyBzcGVjaWZpZWQgYW5kIEk8ZmlsZT4gZXhpc3RzLCBpdCBpcyBpbW1lZGlhdGVseSBzZXQgdG8gdGhlICIKKyJuZXcgb3duZXIgYW5kIG1vZGUuIgorbXNnc3RyICIiCisiSmXFvGVsaSBwb2Rhbm8gb3BjasSZIC0tdXBkYXRlIGkgSTxwbGlrPiBpc3RuaWVqZSwgdG8gbm93eSB3xYJhxZtjaWNpZWwgaSBwcmF3YSAiCisiem9zdGFuxIUgb2QgcmF6dSB1c3Rhd2lvbmUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjM5Cittc2dpZCAiIgorIlJlbW92ZSBhbiBvdmVycmlkZSBmb3IgSTxmaWxlPiwgdGhlIHN0YXR1cyBvZiBJPGZpbGU+IGlzIGxlZnQgdW5jaGFuZ2VkIGJ5ICIKKyJ0aGlzIGNvbW1hbmQuIgorbXNnc3RyICJVc3V3YSBuYWRwaXNhbmllIEk8cGxpa3U+LiBQb2xlY2VuaWUgdG8gbmllIHptaWVuaWEgc3RhbnUgSTxwbGlrdT4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODozOQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1saXN0PiBbSTxnbG9iLXBhdHRlcm4+XSIKK21zZ3N0ciAiQjwtLWxpc3Q+IFtJPHd6b3J6ZWMtZ2xvYj5dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjQ0Cittc2dpZCAiIgorIkxpc3QgYWxsIG92ZXJyaWRlcy4gSWYgYSBnbG9iIHBhdHRlcm4gaXMgc3BlY2lmaWVkIHJlc3RyaWN0IHRoZSBvdXRwdXQgdG8gIgorIm92ZXJyaWRlcyB3aGljaCBtYXRjaCB0aGUgZ2xvYi4gSWYgdGhlcmUgYXJlIG5vIG92ZXJyaWRlcyBvciBub25lIG1hdGNoIHRoZSAiCisiZ2xvYiBCPGRwa2ctc3RhdG92ZXJyaWRlPiB3aWxsIGV4aXQgd2l0aCBhbiBleGl0Y29kZSBvZiAxLiIKK21zZ3N0ciAiIgorIld5xZt3aWV0bGEgd3N6eXN0a2llIG5hcGlzYW5pYS4gSmXFvGVsaSBwb2Rhbm8gd3pvcnplYyBuYXp3eSwgdG8gd3lqxZtjaW93YSAiCisibGlzdGEgYsSZZHppZSB6YXdpZXJhxIcgdHlsa28gbmFkcGlzYW5pYSBwYXN1asSFY2UgZG8gdGVnbyB3em9yY2EuIEplxbxlbGkgbmllICIKKyJtYSDFvGFkbnljaCBuYWRwaXNhxYQgbHViIMW8YWRuZSBuYWRwaXNhbmllIG5pZSBwYXN1amUgZG8gd3pvcmNhLCB0byBCPGRwa2ctIgorInN0YXRvdmVycmlkZT4gemFrb8WEY3p5IGR6aWHFgmFuaWUgeiBrb2RlbSBixYLEmWR1IDEuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjU2Cittc2dpZCAiIgorIkNoYW5nZSB0aGUgSTxkaXJlY3Rvcnk+IG9mIHRoZSBkcGtnIGRhdGFiYXNlIHdoZXJlIHRoZSBzdGF0b3ZlcnJpZGUgZmlsZSBpcyAiCisiYWxzbyBzdG9yZWQuIERlZmF1bHRzIHRvIEk8L3Zhci9saWIvZHBrZz4uIgorbXNnc3RyICIiCisiWm1pZW5pYSBJPGthdGFsb2c+IGJhenkgZGFueWNoIGRwa2csIHcga3TDs3J5bSB0YWvFvGUgamVzdCBwcnplY2hvd3l3YW55IHBsaWsgIgorInN0YXRvdmVycmlkZS4gRG9tecWbbG5pZSBqZXN0IHRvIEk8L3Zhci9saWIvZHBrZz4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo1NiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzM2CisjLCBuby13cmFwCittc2dpZCAiQjwtLWZvcmNlPiIKK21zZ3N0ciAiQjwtLWZvcmNlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo2MAorbXNnaWQgIiIKKyJGb3JjZSBhbiBhY3Rpb24sIGV2ZW4gaWYgYSBzYW5pdHkgY2hlY2sgd291bGQgb3RoZXJ3aXNlIHByb2hpYml0IGl0LiAgVGhpcyAiCisiaXMgbmVjZXNzYXJ5IHRvIG92ZXJyaWRlIGFuIGV4aXN0aW5nIG92ZXJyaWRlLiIKK21zZ3N0ciAiIgorIld5bXVzemEgcG9kYW7EhSBha2NqxJksIG5hd2V0IGplxbxlbGkgc3ByYXdkemVuaWEgZG9rb255d2FuZSBwcnpleiBwcm9ncmFtIGJ5ICIKKyJ0ZWdvIHphYnJvbmnFgnkuIEplc3QgdG8gcG90cnplYm5lLCBhYnkgbmFkcGlzYcSHIGlzdG5pZWrEhWNlIG5hZHBpc2FuaWUuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo2MAorIywgbm8td3JhcAorbXNnaWQgIkI8LS11cGRhdGU+IgorbXNnc3RyICJCPC0tdXBkYXRlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo2NAorbXNnaWQgIiIKKyJJbW1lZGlhdGVseSB0cnkgdG8gY2hhbmdlIHRoZSBmaWxlIHRvIHRoZSBuZXcgb3duZXIgYW5kIG1vZGUgaWYgaXQgZXhpc3RzLiIKK21zZ3N0ciAiIgorIk9kIHJhenkgcHLDs2J1amUgem1pZW5pxIcgd8WCYcWbY2ljaWVsYSBpIHByYXdhIHBsaWt1LCBqZcW8ZWxpIHRlbiBwbGlrIGlzdG5pZWplLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo2NworbXNnaWQgIkJlIGxlc3MgdmVyYm9zZSBhYm91dCB3aGF0IHdlIGRvLiIKK21zZ3N0ciAiV3nFm3dpZXRsYSBtbmllaiBrb211bmlrYXTDs3cgbyBwb2Rlam1vd2FueWNoIHByemV6IHByb2dyYW0gYWtjamFjaC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXN0YXRvdmVycmlkZS44Ojc1CisjLCBuby13cmFwCittc2dpZCAiSTwvdmFyL2xpYi9kcGtnL3N0YXRvdmVycmlkZT4iCittc2dzdHIgIkk8L3Zhci9saWIvZHBrZy9zdGF0b3ZlcnJpZGU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjgwCittc2dpZCAiIgorIkZpbGUgd2hpY2ggY29udGFpbnMgdGhlIGN1cnJlbnQgbGlzdCBvZiBzdGF0IG92ZXJyaWRlcyBvZiB0aGUgc3lzdGVtLiBJdCBpcyAiCisibG9jYXRlZCBpbiB0aGUgZHBrZyBhZG1pbmlzdHJhdGlvbiBkaXJlY3RvcnksIGFsb25nIHdpdGggb3RoZXIgZmlsZXMgIgorImltcG9ydGFudCB0byBkcGtnLCBzdWNoIGFzIGBzdGF0dXMnIG9yIGBhdmFpbGFibGUnLiIKK21zZ3N0ciAiIgorIlBsaWsgemF3aWVyYWrEhWN5IG9iZWNuxIUgbGlzdMSZIG5hZHBpc2HFhCBzdGFudSB3IHN5c3RlbWllLiBabG9rYWxpem93YW55IGplc3QgIgorIncga2F0YWxvZ3UgYWRtaW5pc3RyYWN5am55bSBkcGtnLCDFgsSFY3puaWUgeiBpbm55bWkgcGxpa2FtaSB3YcW8bnltaSBkbGEgZHBrZywgIgorInRha2ltaSBqYWsgXCJzdGF0dXNcIiBsdWIgXCJhdmFpbGFibGVcIi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6ODMKK21zZ2lkICIiCisiTm90ZTogQjxkcGtnLXN0YXRvdmVycmlkZT4gcHJlc2VydmVzIHRoZSBvbGQgY29weSBvZiB0aGlzIGZpbGUsIHdpdGggIgorImV4dGVuc2lvbiBcIi1vbGRcIiwgYmVmb3JlIHJlcGxhY2luZyBpdCB3aXRoIHRoZSBuZXcgb25lLiIKK21zZ3N0ciAiIgorIlV3YWdhOiBwcnplZCB6YXN0xIVwaWVuaWVtIHBsaWt1IG5vd8SFIHdlcnNqxIUsIEI8ZHBrZy1zdGF0b3ZlcnJpZGU+IHphY2hvd3VqZSAiCisic3RhcsSFIGtvcGnEmSB3IHBsaWt1IHogcm96c3plcnplbmllbSBcIi1vbGRcIi4iCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLXRyaWdnZXIuMToxCisjLCBuby13cmFwCittc2dpZCAiZHBrZy10cmlnZ2VyIgorbXNnc3RyICJkcGtnLXRyaWdnZXIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctdHJpZ2dlci4xOjQKK21zZ2lkICJkcGtnLXRyaWdnZXIgLSBhIHBhY2thZ2UgdHJpZ2dlciB1dGlsaXR5IgorbXNnc3RyICJkcGtnLXRyaWdnZXIgLSBwcm9ncmFtIHBvbW9jbmljenkgd3l6d2FsYWN6eSBkbGEgcGFraWV0w7N3IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXRyaWdnZXIuMTo4Cittc2dpZCAiQjxkcGtnLXRyaWdnZXI+IFtJPG9wdGlvbj4uLi5dIEk8dHJpZ2dlci1uYW1lPiIKK21zZ3N0ciAiQjxkcGtnLXRyaWdnZXI+IFtJPG9wY2phPi4uLl0gSTxuYXp3YS13eXp3YWxhY3phPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy10cmlnZ2VyLjE6MTEKK21zZ2lkICJCPGRwa2ctdHJpZ2dlcj4gW0k8b3B0aW9uPi4uLl0gSTxjb21tYW5kPiIKK21zZ3N0ciAiQjxkcGtnLXRyaWdnZXI+IFtJPG9wY2phPi4uLl0gSTxwb2xlY2VuaWU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXRyaWdnZXIuMToxNQorbXNnaWQgIiIKKyJCPGRwa2ctdHJpZ2dlcj4gaXMgYSB0b29sIHRvIGV4cGxpY2l0bHkgYWN0aXZhdGUgdHJpZ2dlcnMgYW5kIGNoZWNrIGZvciBpdHMgIgorInN1cHBvcnQgb24gdGhlIHJ1bm5pbmcgQjxkcGtnPi4iCittc2dzdHIgIiIKKyJCPGRwa2ctdHJpZ2dlcj4gamVzdCBuYXJ6xJlkemllbSwga3TDs3JlIHBvendhbGEgamF3bmllIGFrdHl3b3dhxIcgd3l6d2FsYWN6ZSAiCisib3JheiBzcHJhd2R6YSB3c3BhcmNpZSBkbGEgbmljaCB3IHVydWNob21pb255bSBCPGRwa2c+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy10cmlnZ2VyLjE6MjEKK21zZ2lkICIiCisiVGhpcyBjYW4gYmUgdXNlZCBieSBtYWludGFpbmVyIHNjcmlwdHMgaW4gY29tcGxleCBhbmQgY29uZGl0aW9uYWwgc2l0dWF0aW9ucyAiCisid2hlcmUgdGhlIGZpbGUgdHJpZ2dlcnMsIG9yIHRoZSBkZWNsYXJhdGl2ZSBCPGFjdGl2YXRlPiB0cmlnZ2VycyBjb250cm9sICIKKyJmaWxlIGRpcmVjdGl2ZSwgYXJlIGluc3VmZmljaWVudGx5IHJpY2guIEl0IGNhbiBhbHNvIGJlIHVzZWQgZm9yIHRlc3RpbmcgYW5kICIKKyJieSBzeXN0ZW0gYWRtaW5pc3RyYXRvcnMgKGJ1dCBub3RlIHRoYXQgdGhlIHRyaWdnZXJzIHdvbid0IGFjdHVhbGx5IGJlIHJ1biAiCisiYnkgQjxkcGtnLXRyaWdnZXI+KS4iCittc2dzdHIgIiIKKyJNb8W8ZSBiecSHIHXFvHl0ZSBwcnpleiBza3J5cHR5IG9waWVrdW5hIHBha2lldHUgdyBzeXR1YWNqYWNoIHrFgm/FvG9ueWNoIGkgIgorIm9ixYJvxbxvbnljaCB3YXJ1bmthbWksIGdkeSB3eXp3YWxhY3plIHBsaWtvd2UgbHViIGR5cmVrdHl3eSBCPGFjdGl2YXRlPiB6ICIKKyJwbGlrdSBrb250cm9sbmVnbyB0cmlnZ2VycyBzxIUgbmlld3lzdGFyY3phasSFY2UuIE1vxbxlIGJ5xIcgcsOzd25pZcW8IHXFvHl0ZSBkbyAiCisidGVzdG93YW5pYSBvcmF6IHByemV6IGFkbWluaXN0cmF0b3LDs3cgc3lzdGVtdSAocHJvc3rEmSB6YXV3YcW8ecSHLCDFvGUgc2FtZSAiCisid3l6d2FsYWN6ZSBuaWUgYsSZZMSFIHVydWNoYW1pYW5lIHByemV6IEI8ZHBrZy10cmlnZ2VyPikuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXRyaWdnZXIuMToyMworbXNnaWQgIlVucmVjb2duaXNlZCB0cmlnZ2VyIG5hbWUgc3ludGF4ZXMgYXJlIGFuIGVycm9yIGZvciBCPGRwa2ctdHJpZ2dlcj4uIgorbXNnc3RyICIiCisiTmllcm96cG96bmFuYSBza8WCYWRuaWEgbmF6d3kgd3l6d2FsYWN6YSBzdGFub3dpIGLFgsSFZCBkbGEgQjxkcGtnLXRyaWdnZXI+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctdHJpZ2dlci4xOjI1CisjLCBuby13cmFwCittc2dpZCAiQjwtLWNoZWNrLXN1cHBvcnRlZD4iCittc2dzdHIgIkI8LS1jaGVjay1zdXBwb3J0ZWQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXRyaWdnZXIuMTozMQorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiQ2hlY2sgaWYgdGhlIHJ1bm5pbmcgQjxkcGtnPiBzdXBwb3J0cyB0cmlnZ2VycyAodXN1YWxseSBjYWxsZWQgZnJvbSBhICIKKyN8ICJwb3N0aW5zdCkuIFdpbGwgZXhpdCAwIGlmIGEgdHJpZ2dlcnMtY2FwYWJsZSBCPGRwa2c+IGhhcyBydW4sIG9yIDEgd2l0aCAiCisjfCAiYW4gZXJyb3IgbWVzc2FnZSB0byBzdGRlcnIgaWYgbm90LiBOb3JtYWxseSwgaG93ZXZlciwgaXQgaXMgYmV0dGVyIGp1c3QgIgorI3wgInRvIGFjdGl2YXRlIHRoZSBkZXNpcmVkIHRyaWdnZXIgd2l0aCBCPGRwa2ctdHJpZ2dlcj4uIgorbXNnaWQgIiIKKyJDaGVjayBpZiB0aGUgcnVubmluZyBCPGRwa2c+IHN1cHBvcnRzIHRyaWdnZXJzICh1c3VhbGx5IGNhbGxlZCBmcm9tIGEgIgorInBvc3RpbnN0KS4gV2lsbCBleGl0IEI8MD4gaWYgYSB0cmlnZ2Vycy1jYXBhYmxlIEI8ZHBrZz4gaGFzIHJ1biwgb3IgQjwxPiAiCisid2l0aCBhbiBlcnJvciBtZXNzYWdlIHRvIHN0ZGVyciBpZiBub3QuIE5vcm1hbGx5LCBob3dldmVyLCBpdCBpcyBiZXR0ZXIganVzdCAiCisidG8gYWN0aXZhdGUgdGhlIGRlc2lyZWQgdHJpZ2dlciB3aXRoIEI8ZHBrZy10cmlnZ2VyPi4iCittc2dzdHIgIiIKKyJTcHJhd2R6YSBjenkgdXJ1Y2hvbWlvbmUgQjxkcGtnPiBvYnPFgnVndWplIHd5endhbGFjemUgKHp3eWtsZSB3eXdvxYJ5d2FuZSB6ZSAiCisic2tyeXB0dSBwb3N0aW5zdCkuIFByb2dyYW0ga2/FhGN6eSBzacSZIHoga29kZW0gMCwgamXFm2xpIHVydWNoYW1pYW5lIGplc3QgIgorIkI8ZHBrZz4gd3NwaWVyYWrEhWNlIHd5endhbGFjemUsIGx1YiB6IGtvZGVtIDEgaSBrb211bmlrYXRlbSBixYLEmWR1IG5hIHN0ZGVyciAiCisidyBwcnplY2l3bnltIHd5cGFka3UuIEplZG5hayBub3JtYWxuaWUgbGVwaWVqIGplc3QgcG8gcHJvc3R1IGFrdHl3b3dhxIcgIgorInBvdHJ6ZWJueSB3eXp3YWxhY3osIHXFvHl3YWrEhWMgQjxkcGtnLXRyaWdnZXI+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctdHJpZ2dlci4xOjQzCisjLCBuby13cmFwCittc2dpZCAiQjwtLWJ5LXBhY2thZ2U9Pkk8cGFja2FnZT4iCittc2dzdHIgIkI8LS1ieS1wYWNrYWdlPT5JPHBha2lldD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctdHJpZ2dlci4xOjQ5CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJPdmVycmlkZSB0cmlnZ2VyIGF3YWl0ZXIgKG5vcm1hbGx5IHNldCBieSBCPGRwa2c+IHRocm91Z2ggdGhlICIKKyN8ICJEUEtHX01BSU5UU0NSSVBUX1BBQ0tBR0UgZW52aXJvbm1lbnQgdmFyaWFibGUgb2YgdGhlIG1haW50YWluZXIgc2NyaXB0cywgIgorI3wgIm5hbWluZyB0aGUgcGFja2FnZSB0byB3aGljaCB0aGUgc2NyaXB0IGJlbG9uZ3MsIGFuZCB0aGlzIHdpbGwgYmUgdXNlZCBieSAiCisjfCAiZGVmYXVsdCkuIgorbXNnaWQgIiIKKyJPdmVycmlkZSB0cmlnZ2VyIGF3YWl0ZXIgKG5vcm1hbGx5IHNldCBieSBCPGRwa2c+IHRocm91Z2ggdGhlICIKKyJCPERQS0dfTUFJTlRTQ1JJUFRfUEFDS0FHRT4gZW52aXJvbm1lbnQgdmFyaWFibGUgb2YgdGhlIG1haW50YWluZXIgc2NyaXB0cywgIgorIm5hbWluZyB0aGUgcGFja2FnZSB0byB3aGljaCB0aGUgc2NyaXB0IGJlbG9uZ3MsIGFuZCB0aGlzIHdpbGwgYmUgdXNlZCBieSAiCisiZGVmYXVsdCkuIgorbXNnc3RyICIiCisiV3ltdXN6ZW5pZSBwYWtpZXR1IG9jemVrdWrEhWNlZ28gbmEgd3l6d2FsYWN6LiBOb3JtYWxuaWUgdXN0YXdpYW5lIHByemV6ICIKKyJCPGRwa2c+IHcgem1pZW5uZWogxZtyb2Rvd2lza293ZWogRFBLR19NQUlOVFNDUklQVF9QQUNLQUdFIHNrcnlwdHUgb3BpZWt1bmEgIgorInBha2lldHUsIHdza2F6dWrEhWMgbmF6d8SZIHBha2lldHUsIGRvIGt0w7NyZWdvIG5hbGXFvHkgc2tyeXB0IChqZXN0IHRvIHdhcnRvxZvEhyAiCisidcW8eXdhbmEgZG9tecWbbG5pZSkuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy10cmlnZ2VyLjE6NDkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tbm8tYXdhaXQ+IgorbXNnc3RyICJCPC0tbm8tYXdhaXQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXRyaWdnZXIuMTo1NgorbXNnaWQgIiIKKyJUaGlzIG9wdGlvbiBhcnJhbmdlcyB0aGF0IHRoZSBjYWxsaW5nIHBhY2thZ2UgVCAoaWYgYW55KSBuZWVkIG5vdCBhd2FpdCB0aGUgIgorInByb2Nlc3Npbmcgb2YgdGhpcyB0cmlnZ2VyOyB0aGUgaW50ZXJlc3RlZCBwYWNrYWdlKHMpIEksIHdpbGwgbm90IGJlIGFkZGVkICIKKyJ0byBUJ3MgdHJpZ2dlciBwcm9jZXNzaW5nIGF3YWl0ZWQgbGlzdCBhbmQgVCdzIHN0YXR1cyBpcyB1bmNoYW5nZWQuICBUIG1heSAiCisiYmUgY29uc2lkZXJlZCBpbnN0YWxsZWQgZXZlbiB0aG91Z2ggSSBtYXkgbm90IHlldCBoYXZlIHByb2Nlc3NlZCB0aGUgdHJpZ2dlci4iCittc2dzdHIgIiIKKyJUYSBvcGNqYSB6YXBld25pYSwgxbxlIHd5d2/FgnVqxIVjeSBwYWtpZXQgVCAoamXFm2xpIGplc3QpIG5pZSBwb3RyemVidWplICIKKyJvY3pla2l3YcSHIG5hIHByemV0d29yemVuaWUgdGVnbyB3eXp3YWxhY3phLiBUencuIFwiemFpbnRlcmVzb3dhbmVcIiBwYWtpZXQiCisiKHkpIEkgbmllIGLEmWTEhSBkb2RhbmUgZG8gbGlzdHkgcGFraWV0w7N3IG9jemVrdWrEhWN5Y2ggbmEgcHJ6ZXR3b3J6ZW5pZSAiCisid3l6d2FsYWN6YSBkbGEgVCwgYSBzdGF0dXMgVCBuaWUgem9zdGFuaWUgem1pZW5pb255LiBNb8W8bmEgdXdhxbxhxIcgVCB6YSAiCisiemFpbnN0YWxvd2FueSwgbWltbyDFvGUgcGFraWV0KHkpIEkgd3l6d2FsYWN6IG3Ds2fFgiBqZXN6Y3plIG5pZSB6b3N0YcSHICIKKyJwcnpldHdvcnpvbnkuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy10cmlnZ2VyLjE6NTYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tbm8tYWN0PiIKK21zZ3N0ciAiQjwtLW5vLWFjdD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctdHJpZ2dlci4xOjU5Cittc2dpZCAiSnVzdCB0ZXN0LCBkbyBub3QgYWN0dWFsbHkgY2hhbmdlIGFueXRoaW5nLiIKK21zZ3N0ciAiIFR5bGtvIHRlc3QgLSBiZXogd3lrb255d2FuaWEgxbxhZG55Y2ggem1pYW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXRyaWdnZXIuMTo2OQorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiQjxkcGtnPigxKSwgQjxkZWItdHJpZ2dlcnM+KDUpLCBCPC91c3Ivc2hhcmUvZG9jL2Rwa2cvdHJpZ2dlcnMudHh0Lmd6Pi4iCittc2dpZCAiIgorIkI8ZHBrZz4oMSksIEI8ZGViLXRyaWdnZXJzPig1KSwgQjwvdXNyL3NoYXJlL2RvYy9kcGtnLWRldi90cmlnZ2Vycy50eHQuZ3o+LiIKK21zZ3N0ciAiIgorIkI8ZHBrZz4oMSksIEI8ZGViLXRyaWdnZXJzPig1KSwgQjwvdXNyL3NoYXJlL2RvYy9kcGtnL3RyaWdnZXJzLnR4dC5nej4uIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy12ZW5kb3IuMToxCisjLCBuby13cmFwCittc2dpZCAiZHBrZy12ZW5kb3IiCittc2dzdHIgImRwa2ctdmVuZG9yIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXZlbmRvci4xOjQKK21zZ2lkICJkcGtnLXZlbmRvciAtIHF1ZXJpZXMgaW5mb3JtYXRpb24gYWJvdXQgZGlzdHJpYnV0aW9uIHZlbmRvcnMiCittc2dzdHIgImRwa2ctdmVuZG9yIC0gb2Rjenl0dWplIGluZm9ybWFjasSZIG8gdHfDs3JjYWNoIGR5c3RyeWJ1Y2ppIgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXZlbmRvci4xOjgKK21zZ2lkICJCPGRwa2ctdmVuZG9yPiBbSTxvcHRpb24+Li4uXSBJPGNvbW1hbmQ+IgorbXNnc3RyICJCPGRwa2ctdmVuZG9yPiBbSTxvcGNqYT4uLi5dIEk8cG9sZWNlbmllPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy12ZW5kb3IuMToxMworbXNnaWQgIiIKKyJCPGRwa2ctdmVuZG9yPiBpcyBhIHRvb2wgdG8gcXVlcnkgaW5mb3JtYXRpb24gYWJvdXQgdmVuZG9ycyBsaXN0ZWQgaW4gQjwvZXRjLyIKKyJkcGtnL29yaWdpbnM+LiBCPC9ldGMvZHBrZy9vcmlnaW5zL2RlZmF1bHQ+IGNvbnRhaW5zIGluZm9ybWF0aW9uIGFib3V0IHRoZSAiCisiY3VycmVudCB2ZW5kb3IuIgorbXNnc3RyICIiCisiQjxkcGtnLXZlbmRvcj4gamVzdCBuYXJ6xJlkemllbSBwb3p3YWxhasSFY3ltIG5hIG9kY3p5dHl3YW5pZSBpbmZvcm1hY2ppIG8gIgorInR3w7NyY2FjaCB3eW1pZW5pb255Y2ggdyBCPC9ldGMvZHBrZy9vcmlnaW5zPi4gQjwvZXRjL2Rwa2cvb3JpZ2lucy9kZWZhdWx0PiAiCisiemF3aWVyYSBpbmZvcm1hY2plIGRvdHljesSFY2UgYWt0dWFsbmVnbyB0d8OzcmN5LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctdmVuZG9yLjE6MTUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0taXM+STwgdmVuZG9yPiIKK21zZ3N0ciAiQjwtLWlzPkk8IHR3w7NyY2E+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXZlbmRvci4xOjE5CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJFeGl0cyB3aXRoIDAgaWYgdGhlIGN1cnJlbnQgdmVuZG9yIGlzIEk8dmVuZG9yPi4gT3RoZXJ3aXNlIGV4aXRzIHdpdGggbm9uLSIKKyN8ICJ6ZXJvLiIKK21zZ2lkICIiCisiRXhpdHMgd2l0aCBCPDA+IGlmIHRoZSBjdXJyZW50IHZlbmRvciBpcyBJPHZlbmRvcj4uIE90aGVyd2lzZSBleGl0cyB3aXRoIG5vbi0iCisiemVyby4iCittc2dzdHIgIiIKKyJLb8WEY3p5IHNpxJkgendyYWNhasSFYyAwIGplxZtsaSBha3R1YWxueSB0d8OzcmNhIHRvIEk8dHfDs3JjYT4uIFcgcHJ6ZWNpd255bSAiCisid3lwYWRrdSBrb8WEY3p5IHNpxJkgendyYWNhasSFYyB3YXJ0b8WbxIcgcsOzxbxuxIUgb2QgemVyYS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXZlbmRvci4xOjE5CisjLCBuby13cmFwCittc2dpZCAiQjwtLWRlcml2ZXMtZnJvbT5JPCB2ZW5kb3I+IgorbXNnc3RyICJCPC0tZGVyaXZlcy1mcm9tPkk8IHR3w7NyY2E+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXZlbmRvci4xOjI0CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJFeGl0cyB3aXRoIDAgaWYgdGhlIGN1cnJlbnQgdmVuZG9yIGRpc3RyaWJ1dGlvbiBpcyBhIGRlcml2YXRpdmUgb2YgIgorI3wgIkk8dmVuZG9yPiwgb3RoZXJ3aXNlIGV4aXRzIHdpdGggbm9uLXplcm8uIEl0IHVzZXMgdGhlIFwiUGFyZW50XCIgZmllbGQgdG8gIgorI3wgImJyb3dzZSBhbGwgYW5jZXN0b3JzIG9mIHRoZSBjdXJyZW50IHZlbmRvci4iCittc2dpZCAiIgorIkV4aXRzIHdpdGggQjwwPiBpZiB0aGUgY3VycmVudCB2ZW5kb3IgZGlzdHJpYnV0aW9uIGlzIGEgZGVyaXZhdGl2ZSBvZiAiCisiSTx2ZW5kb3I+LCBvdGhlcndpc2UgZXhpdHMgd2l0aCBub24temVyby4gSXQgdXNlcyB0aGUgXCJQYXJlbnRcIiBmaWVsZCB0byAiCisiYnJvd3NlIGFsbCBhbmNlc3RvcnMgb2YgdGhlIGN1cnJlbnQgdmVuZG9yLiIKK21zZ3N0ciAiIgorIktvxYRjenkgc2nEmSB6d3JhY2FqxIVjIDAgamXFm2xpIGFrdHVhbG5hIGR5c3RyeWJ1Y2phIHR3w7NyY3kgamVzdCBwb2Nob2RuxIUgIgorInBvZGFuZWdvIEk8dHfDs3JjeT4sIHcgcHJ6ZWNpd255bSB3eXBhZGt1IGtvxYRjenkgc2nEmSB6d3JhY2FqxIVjIHdhcnRvxZvEhyByw7PFvG7EhSAiCisib2QgemVyYS4gVcW8eXdhIHBvbGEgXCJQYXJlbnRcIiBhYnkgemJhZGHEhyB3c3p5c3RraWNoIHByem9ka8OzdyBiaWXFvMSFY2VnbyAiCisidHfDs3JjeS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXZlbmRvci4xOjI0CisjLCBuby13cmFwCittc2dpZCAiQjwtLXF1ZXJ5Pkk8IGZpZWxkPiIKK21zZ3N0ciAiQjwtLXF1ZXJ5Pkk8IHBvbGU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXZlbmRvci4xOjI4Cittc2dpZCAiIgorIlByaW50IG9uIHN0YW5kYXJkIG91dHB1dCB0aGUgdmFsdWUgb2YgdGhlIHZlbmRvci1zcGVjaWZpYyBJPGZpZWxkPiBmb3IgdGhlICIKKyJjdXJyZW50IHZlbmRvci4iCittc2dzdHIgIiIKKyJXecWbd2lldGxhIG5hIHN0YW5kYXJkb3d5bSB3eWrFm2NpdSB3YXJ0b8WbxIcgb2tyZcWbbG9uZWdvIEk8cG9sYT4gb2Rjenl0YW5lZ28geiAiCisiaW5mb3JtYWNqaSBkb3R5Y3rEhWN5Y2ggYWt0dWFsbmVnbyB0d8OzcmN5LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctdmVuZG9yLjE6MzYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tdmVuZG9yPkk8IHZlbmRvcj4iCittc2dzdHIgIkI8LS12ZW5kb3I+STwgdHfDs3JjYT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctdmVuZG9yLjE6NDEKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIkFzc3VtZXMgdGhlIGN1cnJlbnQgdmVuZG9yIGlzIEk8dmVuZG9yPiBpbnN0ZWFkIG9mIGRpc2NvdmVyaW5nIGl0IHdpdGggIgorI3wgInRoZSBERUJfVkVORE9SIGVudmlyb25tZW50IHZhcmlhYmxlIG9yIEI8L2V0Yy9kcGtnL29yaWdpbnMvZGVmYXVsdD4uIgorbXNnaWQgIiIKKyJBc3N1bWVzIHRoZSBjdXJyZW50IHZlbmRvciBpcyBJPHZlbmRvcj4gaW5zdGVhZCBvZiBkaXNjb3ZlcmluZyBpdCB3aXRoIHRoZSAiCisiQjxERUJfVkVORE9SPiBlbnZpcm9ubWVudCB2YXJpYWJsZSBvciBCPC9ldGMvZHBrZy9vcmlnaW5zL2RlZmF1bHQ+LiIKK21zZ3N0ciAiIgorIlByenlqbXVqZSwgxbxlIGFrdHVhbG55bSB0d8OzcmPEhSBqZXN0IEk8dHfDs3JjYT4sIHphbWlhc3Qgb2tyZcWbbGFuaWEgdGVnbyBwcnpleiAiCisiem1pZW5uxIUgxZtyb2Rvd2lza2EgREVCX1ZFTkRPUiBsdWIgb2Rjenl0IHogQjwvZXRjL2Rwa2cvb3JpZ2lucy9kZWZhdWx0Pi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXZlbmRvci4xOjQzCisjLCBuby13cmFwCittc2dpZCAiQjxERUJfVkVORE9SPiIKK21zZ3N0ciAiQjxERUJfVkVORE9SPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy12ZW5kb3IuMTo0NworbXNnaWQgIiIKKyJUaGlzIHNldHRpbmcgZGVmaW5lcyB0aGUgY3VycmVudCB2ZW5kb3IuIElmIG5vdCBzZXQsIGl0IHdpbGwgZGlzY292ZXIgdGhlICIKKyJjdXJyZW50IHZlbmRvciBieSByZWFkaW5nIEI8L2V0Yy9kcGtnL29yaWdpbnMvZGVmYXVsdD4uIgorbXNnc3RyICIiCisiVXN0YXdpZW5pZSBva3JlxZtsYWrEhWNlIGFrdHVhbG5lZ28gdHfDs3JjxJkuIEplxZtsaSBuaWUgamVzdCB1c3Rhd2lvbmUsIGFrdHVhbG55ICIKKyJ0d8OzcmNhIHpvc3RhbmllIG9rcmXFm2xvbnkgcG9wcnpleiBvZGN6eXRhbmllIHogQjwvZXRjL2Rwa2cvb3JpZ2lucy9kZWZhdWx0Pi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctdmVuZG9yLjE6NTAgdXBkYXRlLWFsdGVybmF0aXZlcy44OjQ5OAorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDA5IFJhcGhhXFxbOmVdbCBIZXJ0em9nIgorbXNnc3RyICJDb3B5cmlnaHQgXFwoY28gMjAwOSBSYXBoYVxcWzplXWwgSGVydHpvZyIKKworIy4gdHlwZTogVEgKKyM6IGRzZWxlY3QuMToxCisjLCBuby13cmFwCittc2dpZCAiZHNlbGVjdCIKK21zZ3N0ciAiZHNlbGVjdCIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjQKK21zZ2lkICJkc2VsZWN0IC0gRGViaWFuIHBhY2thZ2UgbWFuYWdlbWVudCBmcm9udGVuZCIKK21zZ3N0ciAiZHNlbGVjdCAtIGtvbnNvbG93ZSBuYXJ6xJlkemllIHphcnrEhWR6YW5pYSBwYWtpZXRhbWkgRGViaWFuYSIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjgKKyMsIGZ1enp5CisjfCBtc2dpZCAiQjxkcGtnPiBbSTxvcHRpb25zPl0gSTxhY3Rpb24+IgorbXNnaWQgIkI8ZHNlbGVjdD4gW0k8b3B0aW9uPi4uLl0gW0k8YWN0aW9uPl0iCittc2dzdHIgIkI8ZHBrZz4gW0k8b3BjamU+XSBJPGR6aWHFgmFuaWU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTcKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiQjxkc2VsZWN0PlxuIgorImlzIG9uZSBvZiB0aGUgcHJpbWFyeSB1c2VyIGludGVyZmFjZXMgZm9yIG1hbmFnaW5nIHBhY2thZ2VzIG9uIGEgRGViaWFuXG4iCisic3lzdGVtLiBBdCB0aGUgQjxkc2VsZWN0PiBtYWluIG1lbnUsIHRoZSBzeXN0ZW0gYWRtaW5pc3RyYXRvciBjYW46XG4iCisiIC0gVXBkYXRlIHRoZSBsaXN0IG9mIGF2YWlsYWJsZSBwYWNrYWdlIHZlcnNpb25zLFxuIgorIiAtIFZpZXcgdGhlIHN0YXR1cyBvZiBpbnN0YWxsZWQgYW5kIGF2YWlsYWJsZSBwYWNrYWdlcyxcbiIKKyIgLSBBbHRlciBwYWNrYWdlIHNlbGVjdGlvbnMgYW5kIG1hbmFnZSBkZXBlbmRlbmNpZXMsXG4iCisiIC0gSW5zdGFsbCBuZXcgcGFja2FnZXMgb3IgdXBncmFkZSB0byBuZXdlciB2ZXJzaW9ucy5cbiIKK21zZ3N0ciAiIgorIkI8ZHNlbGVjdD5cbiIKKyJqZXN0IGplZG55bSB6IHBvZHN0YXdvd3ljaCBuYXJ6xJlkemkgdcW8eXRrb3duaWthIGRvIHphcnrEhWR6YW5pYVxuIgorInBha2lldGFtaSBEZWJpYW5hLiBaIGfFgsOzd25lZ28gbWVudSBwcm9ncmFtdSBCPGRzZWxlY3Q+IGFkbWluaXN0cmF0b3Igc3lzdGVtdSBtb8W8ZTpcbiIKKyIgLSB6YWt0dWFsaXpvd2HEhyBsaXN0xJkgZG9zdMSZcG55Y2ggcGFraWV0w7N3LFxuIgorIiAtIHd5xZt3aWV0bGnEhyBzdGFuIHphaW5zdGFsb3dhbnljaCBpIGRvc3TEmXBueWNoIHdlcnNqaSBwYWtpZXTDs3csXG4iCisiIC0gd3liaWVyYcSHIHBha2lldHkgaSB6YXJ6xIVkemHEhyB6YWxlxbxub8WbY2lhbWksXG4iCisiIC0gemFpbnN0YWxvd2HEhyBub3dlIHBha2lldHkgbHViIHpha3R1YWxpem93YcSHIHBha2lldHkgZG8gbm93c3p5Y2ggd2Vyc2ppLlxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MjkKK21zZ2lkICIiCisiQjxkc2VsZWN0PiBvcGVyYXRlcyBhcyBhIGZyb250LWVuZCB0byBCPGRwa2c+KDEpLCB0aGUgbG93LWxldmVsIGRlYmlhbiAiCisicGFja2FnZSBoYW5kbGluZyB0b29sLiBJdCBmZWF0dXJlcyBhIGZ1bGwtc2NyZWVuIHBhY2thZ2Ugc2VsZWN0aW9ucyBtYW5hZ2VyICIKKyJ3aXRoIHBhY2thZ2UgZGVwZW5kcyBhbmQgY29uZmxpY3RzIHJlc29sdmVyLiBXaGVuIHJ1biB3aXRoIGFkbWluaXN0cmF0b3IgIgorInByaXZpbGVnZXMsIHBhY2thZ2VzIGNhbiBiZSBpbnN0YWxsZWQsIHVwZ3JhZGVkIGFuZCByZW1vdmVkLiBWYXJpb3VzIGFjY2VzcyAiCisibWV0aG9kcyBjYW4gYmUgY29uZmlndXJlZCB0byByZXRyaWV2ZSBhdmFpbGFibGUgcGFja2FnZSB2ZXJzaW9uIGluZm9ybWF0aW9uICIKKyJhbmQgaW5zdGFsbGFibGUgcGFja2FnZXMgZnJvbSBwYWNrYWdlIHJlcG9zaXRvcmllcy4gIERlcGVuZGluZyBvbiB0aGUgdXNlZCAiCisiYWNjZXNzIG1ldGhvZCwgdGhlc2UgcmVwb3NpdG9yaWVzIGNhbiBiZSBwdWJsaWMgYXJjaGl2ZSBzZXJ2ZXJzIG9uIHRoZSAiCisiaW50ZXJuZXQsIGxvY2FsIGFyY2hpdmUgc2VydmVycyBvciBjZHJvbXMuICBUaGUgcmVjb21tZW5kZWQgYWNjZXNzIG1ldGhvZCBpcyAiCisiSTxhcHQ+LCB3aGljaCBpcyBwcm92aWRlZCBieSB0aGUgcGFja2FnZSBCPGFwdD4uIgorbXNnc3RyICIiCisiQjxkc2VsZWN0PiBqZXN0IG5ha8WCYWRrxIUgbmEgcG9sZWNlbmllIEI8ZHBrZygxKT4sIG5pc2tvcG96aW9tb3dlIG5hcnrEmWR6aWUgIgorInphcnrEhWR6YW5pYSBwYWtpZXRhbWkgRGViaWFuYS4gSmVnbyBwb2RzdGF3b3fEhSB6YWxldMSFIGplc3QgbWVuYWTFvGVyICIKKyJwZcWCbm9la3Jhbm93ZWdvIHd5Ym9ydSBwYWtpZXTDs3cgeiBtb8W8bGl3b8WbY2nEhSB6bmFqZG93YW5pYSB6YWxlxbxub8WbY2kgbWnEmWR6eSAiCisibmltaSBpIHJvendpxIV6eXdhbmlhIGtvbmZsaWt0w7N3LiBQcm9ncmFtIHVydWNob21pb255IHogcHJhd2FtaSAiCisiYWRtaW5pc3RyYXRvcmEgZGFqZSBtb8W8bGl3b8WbxIcgaW5zdGFsb3dhbmlhLCBha3R1YWxpem93YW5pYSBvcmF6IHVzdXdhbmlhICIKKyJwYWtpZXTDs3cuIE1vxbxuYSBza29uZmlndXJvd2HEhyByw7PFvG5vcm9kbmUgbWV0b2R5IGRvc3TEmXB1LCB6YSBrdMOzcnljaCBwb21vY8SFICIKKyJtb8W8bmEgxZtjacSFZ27EhcSHIHogcmVwb3p5dG9yaXVtIHBha2lldMOzdyB6YXLDs3dubyBpbmZvcm1hY2plIG8gZG9zdMSZcG55Y2ggIgorIndlcnNqYWNoIHBha2lldMOzdywgamFrIGkgc2FtZSBwYWtpZXR5IGRvIHphaW5zdGFsb3dhbmlhLiBXIHphbGXFvG5vxZtjaSBvZCAiCisibWV0b2R5IGRvc3TEmXB1IHJlcG96eXRvcmlhIHRlIG1vZ8SFIHNpxJkgem5hamRvd2HEhyBuYSBwdWJsaWN6bnljaCBzZXJ3ZXJhY2gtIgorImFyY2hpd2FjaCB3IEludGVybmVjaWUsIGxva2FsbnljaCBzZXJ3ZXJhY2ggeiBhcmNoaXdhbWkgbHViIG5hIENELVJPTS1hY2guICIKKyJaYWxlY2FuxIUgbWV0b2TEhSBkb3N0xJlwdSBqZXN0IG1ldG9kYSBJPGFwdD4sIGRvc3RhcmN6YW5hIHByemV6IHBha2lldCBCPGFwdD4uIgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MzUKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIk5vcm1hbGx5IEI8ZHNlbGVjdD4gaXMgaW52b2tlZCB3aXRob3V0IHBhcmFtZXRlcnMuIEFuIGludGVyYWN0aXZlIG1lbnUgaXMgIgorI3wgInByZXNlbnRlZCwgb2ZmZXJpbmcgdGhlIHVzZXIgYSBsaXN0IG9mIGFjdGlvbnMuIElmIGFuIGFjdGlvbiBpcyBnaXZlbiBhcyAiCisjfCAiYXJndW1lbnQsIHRoZW4gdGhhdCBhY3Rpb24gaXMgc3RhcnRlZCBpbW1lZGlhdGVseS4gU2V2ZXJhbCBjb21tYW5kbGluZSAiCisjfCAicGFyYW1ldGVycyBhcmUgc3RpbGwgYXZhaWxhYmxlIHRvIG1vZGlmeSB0aGUgcnVubmluZyBiZWhhdmlvdXIgb2YgIgorI3wgIkI8ZHNlbGVjdD4gb3Igc2hvdyBhZGRpdGlvbmFsIGluZm9ybWF0aW9uIGFib3V0IHRoZSBwcm9ncmFtLiIKK21zZ2lkICIiCisiTm9ybWFsbHkgQjxkc2VsZWN0PiBpcyBpbnZva2VkIHdpdGhvdXQgcGFyYW1ldGVycy4gQW4gaW50ZXJhY3RpdmUgbWVudSBpcyAiCisicHJlc2VudGVkLCBvZmZlcmluZyB0aGUgdXNlciBhIGxpc3Qgb2YgYWN0aW9ucy4gSWYgYW4gYWN0aW9uIGlzIGdpdmVuIGFzICIKKyJhcmd1bWVudCwgdGhlbiB0aGF0IGFjdGlvbiBpcyBzdGFydGVkIGltbWVkaWF0ZWx5LiBTZXZlcmFsIGNvbW1hbmQgbGluZSAiCisicGFyYW1ldGVycyBhcmUgc3RpbGwgYXZhaWxhYmxlIHRvIG1vZGlmeSB0aGUgcnVubmluZyBiZWhhdmlvdXIgb2YgQjxkc2VsZWN0PiAiCisib3Igc2hvdyBhZGRpdGlvbmFsIGluZm9ybWF0aW9uIGFib3V0IHRoZSBwcm9ncmFtLiIKK21zZ3N0ciAiIgorIlphend5Y3phaiBCPGRzZWxlY3Q+IGplc3QgdXJ1Y2hhbWlhbnkgYmV6IMW8YWRueWNoIHBhcmFtZXRyw7N3LiBXdGVkeSAiCisid3nFm3dpZXRsYW5lIGplc3QgaW50ZXJha3R5d25lIG1lbnUgeiBsaXN0xIUgYWtjamkuIEplxbxlbGkgYWtjamEgem9zdGFuaWUgIgorInBvZGFuYSBqYWtvIGFyZ3VtZW50IHd5d2/FgmFuaWEgcHJvZ3JhbXUsIHRvIHRhIGFrY2phIGplc3Qgb2QgcmF6dSAiCisid3lrb255d2FuYS4gUG9uYWR0byBqZXN0IGRvc3TEmXBueWNoIGtpbGthIHBhcmFtZXRyw7N3IHd5d2/FgmFuaWEsIGt0w7NyZSAiCisibW9keWZpa3VqxIUgemFjaG93YW5pZSBCPGRzZWxlY3RhPiBhbGJvIHd5xZt3aWV0bGFqxIUgZG9kYXRrb3dlIGluZm9ybWFjamUgbyAiCisicHJvZ3JhbWllLiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjQzCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJBbGwgb3B0aW9ucyBjYW4gYmUgc3BlY2lmaWVkIGJvdGggb24gdGhlIGNvbW1hbmRsaW5lIGFuZCBpbiB0aGUgIgorI3wgIkI8ZHNlbGVjdD4gY29uZmlndXJhdGlvbiBmaWxlIEk8L2V0Yy9kcGtnL2RzZWxlY3QuY2ZnPiBvciB0aGUgZmlsZXMgb24gIgorI3wgInRoZSBjb25maWd1cmF0aW9uIGRpcmVjdG9yeSBJPC9ldGMvZHBrZy9kcGtnLmNmZy5kLz4uIEVhY2ggbGluZSBpbiB0aGUgIgorI3wgImNvbmZpZ3VyYXRpb24gZmlsZSBpcyBlaXRoZXIgYW4gb3B0aW9uIChleGFjdGx5IHRoZSBzYW1lIGFzIHRoZSAiCisjfCAiY29tbWFuZGxpbmUgb3B0aW9uIGJ1dCB3aXRob3V0IGxlYWRpbmcgZGFzaGVzKSBvciBhIGNvbW1lbnQgKGlmIGl0IHN0YXJ0cyAiCisjfCAid2l0aCBhIEI8Iz4pLiIKK21zZ2lkICIiCisiQWxsIG9wdGlvbnMgY2FuIGJlIHNwZWNpZmllZCBib3RoIG9uIHRoZSBjb21tYW5kIGxpbmUgYW5kIGluIHRoZSBCPGRzZWxlY3Q+ICIKKyJjb25maWd1cmF0aW9uIGZpbGUgSTwvZXRjL2Rwa2cvZHNlbGVjdC5jZmc+IG9yIHRoZSBmaWxlcyBvbiB0aGUgIgorImNvbmZpZ3VyYXRpb24gZGlyZWN0b3J5IEk8L2V0Yy9kcGtnL2RzZWxlY3QuY2ZnLmQvPi4gRWFjaCBsaW5lIGluIHRoZSAiCisiY29uZmlndXJhdGlvbiBmaWxlIGlzIGVpdGhlciBhbiBvcHRpb24gKGV4YWN0bHkgdGhlIHNhbWUgYXMgdGhlIGNvbW1hbmQgbGluZSAiCisib3B0aW9uIGJ1dCB3aXRob3V0IGxlYWRpbmcgZGFzaGVzKSBvciBhIGNvbW1lbnQgKGlmIGl0IHN0YXJ0cyB3aXRoIGEgQjwjPikuIgorbXNnc3RyICIiCisiV3N6eXN0a2llIG9wY2plIG1vZ8SFIGJ5xIcgcG9kYW5lIHphcsOzd25vIHcgbGluaWkgcG9sZWNlxYQsIGphayBpIHcgcGxpa3UgIgorImtvbmZpZ3VyYWN5am55bSBJPC9ldGMvZHBrZy9kc2VsZWN0LmNmZz4gcHJvZ3JhbXUgQjxkc2VsZWN0PiBsdWIgdyBwbGlrYWNoIHcgIgorImthdGFsb2d1IGtvbmZpZ3VyYWN5am55bSBJPC9ldGMvZHBrZy9kcGtnLmNmZy5kLz4uIEthxbxkYSBsaW5pYSBwbGlrdSAiCisia29uZmlndXJhY3lqbmVnbyBqZXN0IGFsYm8gb3BjasSFIChkb2vFgmFkbmllIHRha8SFIHNhbcSFIGphayBvcGNqYSBsaW5paSAiCisicG9sZWNlxYQsIGFsZSBiZXogcG9jesSFdGtvd3ljaCBtecWbbG5pa8OzdyksIGFsYm8ga29tZW50YXJ6ZW0gKGplxbxlbGkgemFjenluYSAiCisic2nEmSBvZCBCPCM+KS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0OQorbXNnaWQgIiIKKyJDaGFuZ2VzIHRoZSBkaXJlY3Rvcnkgd2hlcmUgdGhlIGRwa2cgYEk8c3RhdHVzPicsIGBJPGF2YWlsYWJsZT4nIGFuZCBzaW1pbGFyICIKKyJmaWxlcyBhcmUgbG9jYXRlZC4gVGhpcyBkZWZhdWx0cyB0byBJPC92YXIvbGliL2Rwa2c+IGFuZCBub3JtYWxseSB0aGVyZSAiCisic2hvdWxkbid0IGJlIGFueSBuZWVkIHRvIGNoYW5nZSBpdC4iCittc2dzdHIgIiIKKyJabWllbmlhIGthdGFsb2cgemF3aWVyYWrEhWN5IHBsaWtpIFwiSTxzdGF0dXM+XCIgLFwiSTxhdmFpbGFibGU+XCIgaSBpbm5lICIKKyJwb3RyemVibmUgcHJvZ3JhbW93aSBCPGRwa2c+LiBEb215xZtsbnltIGthdGFsb2dpZW0gamVzdCBJPC92YXIvbGliL2Rwa2c+IGkgIgorInphend5Y3phaiBuaWUgcG93aW5ubyBiecSHIHBvdHJ6ZWJ5IHptaWVuaWFuaWEgZ28gbmEgaW5ueS4iCisKKyMuIHR5cGU6IFRQCisjOiBkc2VsZWN0LjE6NDkKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjwtLWRlYnVnPkk8IEU8bHQ+ZmlsZUU8Z3Q+ID58STwgPkI8LUQ+STxFPGx0PmZpbGVFPGd0Pj4iCittc2dpZCAiQjwtLWRlYnVnPkk8IGZpbGUgPnxJPCA+QjwtRD5JPGZpbGU+IgorbXNnc3RyICJCPC0tZGVidWc+STwgRTxsdD5wbGlrRTxndD4gPnxJPCA+QjwtRD5JPEU8bHQ+cGxpa0U8Z3Q+PiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjUyCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJUdXJuIG9uIGRlYnVnZ2luZy4gRGVidWdnaW5nIGluZm9ybWF0aW9uIGlzIHNlbnQgdG8gSTxFPGx0PmZpbGVFPGd0Pj4uIgorbXNnaWQgIlR1cm4gb24gZGVidWdnaW5nLiBEZWJ1Z2dpbmcgaW5mb3JtYXRpb24gaXMgc2VudCB0byBJPGZpbGU+LiIKK21zZ3N0ciAiIgorIlfFgsSFY3phIG9wY2rEmSBkZWJ1Z2dlcmEuIEluZm9ybWFjamUgZGVidWdnZXJhIHPEhSB3eXN5xYJhbmUgZG8gIgorIkk8RTxsdD5wbGlrdUU8Z3Q+Pi4iCisKKyMuIHR5cGU6IFRQCisjOiBkc2VsZWN0LjE6NTIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tZXhwZXJ0PiIKK21zZ3N0ciAiQjwtLWV4cGVydD4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo1NgorbXNnaWQgIiIKKyJUdXJucyBvbiBleHBlcnQgbW9kZSwgaS5lLiBkb2Vzbid0IGRpc3BsYXkgcG9zc2libHkgYW5ub3lpbmcgaGVscCBtZXNzYWdlcy4iCittc2dzdHIgIiIKKyJXxYLEhWN6YSB0cnliIGRvxZt3aWFkY3pvbmVnbyB1xbx5dGtvd25pa2EgaSBuYSBwcnp5a8WCYWQgbmllIHd5xZt3aWV0bGEgbcSZY3rEhWN5Y2ggIgorImluZm9ybWFjamkgeiBwb21vY8SFLiIKKworIy4gdHlwZTogVFAKKyM6IGRzZWxlY3QuMTo1NgorIywgbm8td3JhcAorbXNnaWQgIkI8LS1jb2xvdXI+fEI8LS1jb2xvcj4gSTxzY3JlZW5wYXJ0Oj5bSTxmb3JlZ3JvdW5kPl0sW0k8YmFja2dyb3VuZD5dW0k8OmF0dHI+W0k8K2F0dHIrLi4+XV0iCittc2dzdHIgIkI8LS1jb2xvdXI+fEI8LS1jb2xvcj4gSTxjesSZxZvEh19la3JhbnU6PltJPHBpZXJ3c3pvcGxhbj5dLFtJPHTFgm8+XVtJPDphdHI+W0k8K2F0cisuLj5dXSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjYzCittc2dpZCAiIgorIkNvbmZpZ3VyZXMgc2NyZWVuIGNvbG9ycy4gVGhpcyB3b3JrcyBvbmx5IGlmIHlvdXIgZGlzcGxheSBzdXBwb3J0cyBjb2xvcnMuICAiCisiVGhpcyBvcHRpb24gbWF5IGJlIHVzZWQgbXVsdGlwbGUgdGltZXMgKGFuZCBpcyBiZXN0IHVzZWQgaW4gSTxkc2VsZWN0LmNmZz4pLiAiCisiRWFjaCB1c2UgY2hhbmdlcyB0aGUgY29sb3IgKGFuZCBvcHRpb25hbGx5LCBvdGhlciBhdHRyaWJ1dGVzKSBvZiBvbmUgcGFydCBvZiAiCisidGhlIHNjcmVlbi4gIFRoZSBwYXJ0cyBvZiB0aGUgc2NyZWVuIChmcm9tIHRvcCB0byBib3R0b20pIGFyZToiCittc2dzdHIgIiIKKyJVc3Rhd2lhIGtvbG9yeSBla3JhbnUuIER6aWHFgmEgdHlsa28gcG9kIHdhcnVua2llbSwgxbxlIHRlcm1pbmFsIG9ic8WCdWd1amUgIgorImtvbG9yeS4gVGEgb3BjamEgbW/FvGUgem9zdGHEhyB1xbx5dGEgd2llbGUgcmF6eSAoaSBuYWpsZXBpZWogamVqIHXFvHl3YcSHIHcgIgorIkk8ZHNlbGVjdC5jZmc+KS4gS2HFvGRlIHXFvHljaWUgem1pZW5pYSBrb2xvciAoaSBvcGNqb25hbG5pZSBpbm5lIGF0cnlidXR5KSAiCisiamFraWVqxZsgY3rEmcWbY2kgZWtyYW51LiBDesSZxZtjaSBla3JhbnUgc8SFIG5hc3TEmXB1asSFY2UgKG9kIGfDs3J5IGRvIGRvxYJ1KToiCisKKyMuIHR5cGU6IFRQCisjOiBkc2VsZWN0LjE6NjQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHRpdGxlPiIKK21zZ3N0ciAiQjx0aXRsZT4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo2NworbXNnaWQgIlRoZSBzY3JlZW4gdGl0bGUuIgorbXNnc3RyICJUeXR1xYIgZWtyYW51LiIKKworIy4gdHlwZTogVFAKKyM6IGRzZWxlY3QuMTo2NworIywgbm8td3JhcAorbXNnaWQgIkI8bGlzdGhlYWQ+IgorbXNnc3RyICJCPGxpc3RoZWFkPiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjcwCittc2dpZCAiVGhlIGhlYWRlciBsaW5lIGFib3ZlIHRoZSBsaXN0IG9mIHBhY2thZ2VzLiIKK21zZ3N0ciAiTGluaWEgbmFnxYLDs3drYSBuYWQgbGlzdMSFIHBha2lldMOzdy4iCisKKyMuIHR5cGU6IFRQCisjOiBkc2VsZWN0LjE6NzAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGxpc3Q+IgorbXNnc3RyICJCPGxpc3Q+IgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NzMKK21zZ2lkICJUaGUgc2Nyb2xsaW5nIGxpc3Qgb2YgcGFja2FnZXMgKGFuZCBhbHNvIHNvbWUgaGVscCB0ZXh0KS4iCittc2dzdHIgIlByemV3aWphbmEgbGlzdGEgcGFraWV0w7N3IChpIHLDs3duaWXFvCBuaWVrdMOzcmUgdGVrc3R5IHBvbW9jeSkuIgorCisjLiB0eXBlOiBUUAorIzogZHNlbGVjdC4xOjczCisjLCBuby13cmFwCittc2dpZCAiQjxsaXN0c2VsPiIKK21zZ3N0ciAiQjxsaXN0c2VsPiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjc2Cittc2dpZCAiVGhlIHNlbGVjdGVkIGl0ZW0gaW4gdGhlIGxpc3QuIgorbXNnc3RyICJQb2TFm3dpZXRsb255IGVsZW1lbnQgeiBsaXN0eS4iCisKKyMuIHR5cGU6IFRQCisjOiBkc2VsZWN0LjE6NzYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHBrZ3N0YXRlPiIKK21zZ3N0ciAiQjxwa2dzdGF0ZT4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo4MAorbXNnaWQgIiIKKyJJbiB0aGUgbGlzdCBvZiBwYWNrYWdlcywgdGhlIHRleHQgaW5kaWNhdGluZyB0aGUgY3VycmVudCBzdGF0ZSBvZiBlYWNoICIKKyJwYWNrYWdlLiIKK21zZ3N0ciAiVyBsacWbY2llIHBha2lldMOzdyAtIHRla3N0IG96bmFjemFqxIVjeSBvYmVjbnkgc3RhbiBrYcW8ZGVnbyBwYWtpZXR1LiIKKworIy4gdHlwZTogVFAKKyM6IGRzZWxlY3QuMTo4MAorIywgbm8td3JhcAorbXNnaWQgIkI8cGtnc3RhdGVzZWw+IgorbXNnc3RyICJCPHBrZ3N0YXRlc2VsPiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjg0Cittc2dpZCAiIgorIkluIHRoZSBsaXN0IG9mIHBhY2thZ2VzLCB0aGUgdGV4dCBpbmRpY2F0aW5nIHRoZSBjdXJyZW50IHN0YXRlIG9mIHRoZSAiCisiY3VycmVudGx5IHNlbGVjdGVkIHBhY2thZ2UuIgorbXNnc3RyICIiCisiVyBsacWbY2llIHBha2lldMOzdyAtIHRla3N0IG96bmFjemFqxIVjeSBvYmVjbnkgc3RhbiBwb2TFm3dpZXRsb25lZ28gcGFraWV0dS4iCisKKyMuIHR5cGU6IFRQCisjOiBkc2VsZWN0LjE6ODQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGluZm9oZWFkPiIKK21zZ3N0ciAiQjxpbmZvaGVhZD4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo4NworbXNnaWQgIiIKKyJUaGUgaGVhZGVyIGxpbmUgdGhhdCBkaXNwbGF5cyB0aGUgc3RhdGUgb2YgdGhlIGN1cnJlbnRseSBzZWxlY3RlZCBwYWNrYWdlLiIKK21zZ3N0ciAiIgorIkxpbmlhIG5hZ8WCw7N3a2EsIHcga3TDs3JlaiB3ecWbd2lldGxvbnkgamVzdCBzdGFuIG9iZWNuaWUgemF6bmFjem9uZWdvIHBha2lldHUuIgorCisjLiB0eXBlOiBUUAorIzogZHNlbGVjdC4xOjg3CisjLCBuby13cmFwCittc2dpZCAiQjxpbmZvZGVzYz4iCittc2dzdHIgIkI8aW5mb2Rlc2M+IgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6OTAKK21zZ2lkICJUaGUgcGFja2FnZSdzIHNob3J0IGRlc2NyaXB0aW9uLiIKK21zZ3N0ciAiS3LDs3RraSBvcGlzIHBha2lldHUuIgorCisjLiB0eXBlOiBUUAorIzogZHNlbGVjdC4xOjkwCisjLCBuby13cmFwCittc2dpZCAiQjxpbmZvPiIKK21zZ3N0ciAiQjxpbmZvPiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjkzCittc2dpZCAiVXNlZCB0byBkaXNwbGF5IHBhY2thZ2UgaW5mbyBzdWNoIGFzIHRoZSBwYWNrYWdlJ3MgZGVzY3JpcHRpb24uIgorbXNnc3RyICJVxbx5d2FuZSBkbyB3ecWbd2lldGxhbmlhIGluZm9ybWFjamkgbyBwYWtpZWNpZSB0YWtpY2ggamFrIGplZ28gb3Bpcy4iCisKKyMuIHR5cGU6IFRQCisjOiBkc2VsZWN0LjE6OTMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGluZm9mb290PiIKK21zZ3N0ciAiQjxpbmZvZm9vdD4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo5NgorbXNnaWQgIlRoZSBsYXN0IGxpbmUgb2YgdGhlIHNjcmVlbiB3aGVuIHNlbGVjdGluZyBwYWNrYWdlcy4iCittc2dzdHIgIk9zdGF0bmlhIGxpbmlhIGVrcmFudSB6IHd5Ym9yZW0gcGFraWV0w7N3LiIKKworIy4gdHlwZTogVFAKKyM6IGRzZWxlY3QuMTo5NgorIywgbm8td3JhcAorbXNnaWQgIkI8cXVlcnk+IgorbXNnc3RyICJCPHF1ZXJ5PiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjk5Cittc2dpZCAiVXNlZCB0byBkaXNwbGF5IHF1ZXJ5IGxpbmVzIgorbXNnc3RyICJVxbx5d2FuZSBkbyB3ecWbd2lldGxhbmlhIGxpbmlpIHphcHl0YcWELiIKKworIy4gdHlwZTogVFAKKyM6IGRzZWxlY3QuMTo5OQorIywgbm8td3JhcAorbXNnaWQgIkI8aGVscHNjcmVlbj4iCittc2dzdHIgIkI8aGVscHNjcmVlbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxMDIKK21zZ2lkICJDb2xvciBvZiBoZWxwIHNjcmVlbnMuIgorbXNnc3RyICJLb2xvciBla3JhbsOzdyBwb21vY3kuIgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTA3Cittc2dpZCAiIgorIkFmdGVyIHRoZSBwYXJ0IG9mIHRoZSBzY3JlZW4gY29tZXMgYSBjb2xvbiBhbmQgdGhlIGNvbG9yIHNwZWNpZmljYXRpb24uIFlvdSAiCisiY2FuIHNwZWNpZnkgZWl0aGVyIHRoZSBmb3JlZ3JvdW5kIGNvbG9yLCB0aGUgYmFja2dyb3VuZCBjb2xvciwgb3IgYm90aCwgIgorIm92ZXJyaWRpbmcgdGhlIGNvbXBpbGVkLWluIGNvbG9ycy4gVXNlIHN0YW5kYXJkIGN1cnNlcyBjb2xvciBuYW1lcy4iCittc2dzdHIgIiIKKyJQbyBjesSZxZtjaSBla3JhbnUgbmFzdMSZcHVqZSBkd3Vrcm9wZWsgaSBzcGVjeWZpa2FjamEga29sb3J1LiBNb8W8bmEgb2tyZcWbbGnEhyAiCisia29sb3IgY3pjaW9uZWssIGtvbG9yIHTFgmEgYWxibyBvYmEgdGUga29sb3J5LCB1bmlld2HFvG5pYWrEhWMgZG9tecWbbG5lICIKKyJ3YXJ0b8WbY2kga29sb3LDs3cuIE5hbGXFvHkgdcW8eXdhxIcgc3RhbmRhcmRvd3ljaCBuYXp3IGtvbG9yw7N3IHogYmlibGlvdGVraSAiCisiY3Vyc2VzLiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjExMworbXNnaWQgIiIKKyJPcHRpb25hbGx5LCBhZnRlciB0aGUgY29sb3Igc3BlY2lmaWNhdGlvbiBpcyBhbm90aGVyIGNvbG9uLCBhbmQgYW4gYXR0cmlidXRlICIKKyJzcGVjaWZpY2F0aW9uLiBUaGlzIGlzIGEgbGlzdCBvZiBvbmUgb3IgbW9yZSBhdHRyaWJ1dGVzLCBzZXBhcmF0ZWQgYnkgcGx1cyAiCisiKFwiK1wiKSBjaGFyYWN0ZXJzLiBBdmFpbGFibGUgYXR0cmlidXRlcyBpbmNsdWRlIChub3QgYWxsIG9mIHRoZXNlIHdpbGwgd29yayAiCisib24gYWxsIHRlcm1pbmFscyk6IG5vcm1hbCwgc3RhbmRvdXQsIHVuZGVybGluZSwgcmV2ZXJzZSwgYmxpbmssIGJyaWdodCwgZGltLCAiCisiYm9sZCIKK21zZ3N0ciAiIgorIk9wY2pvbmFsbmllLCBwbyBzcGVjeWZpa2Fjamkga29sb3LDs3cgbW/FvG5hIGRvZGHEhyBqZXN6Y3plIGplZGVuIGR3dWtyb3BlaywgYSAiCisicG8gbmltIG9waXMgYXRyeWJ1dMOzdy4gSmVzdCB0byBsaXN0YSB6YXdpZXJhasSFY2EgamVkZW4gbHViIHdpxJljZWogYXRyeWJ1dMOzdyAiCisib2RkemllbG9ueWNoIHpuYWthbWkgcGx1c2EgKFwiK1wiKS4gRG9zdMSZcG5lIGF0cnlidXR5IChuaWUgd3N6eXN0a2llICIKKyJkemlhxYJhasSFIG5hIHdzenlzdGtpY2ggdGVybWluYWxhY2gpIHRvOiBub3JtYWwgKG5vcm1hbG55KSwgc3RhbmRvdXQgIgorIih3eXLDs8W8bmlvbnkpLCB1bmRlcmxpbmUgKHBvZGtyZcWbbG9ueSksIHJldmVyc2UgKG9kd3LDs2NvbnkpLCBibGluayAiCisiKG1pZ2FqxIVjeSksIGJyaWdodCAoamFzbnkpLCBkaW0gKGNpZW1ueSksIGJvbGQgKHBvZ3J1YmlvbnkpLiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjExNgorbXNnaWQgIlByaW50IGEgYnJpZWYgaGVscCB0ZXh0IGFuZCBleGl0IHN1Y2Nlc3NmdWxseS4iCittc2dzdHIgIld5xZt3aWV0bGEga3LDs3RrxIUgaW5mb3JtYWNqxJkgbyBwb21vY3kgaSBwb215xZtsbmllIGtvxYRjenkgZHppYcWCYW5pZS4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxMTkKK21zZ2lkICJQcmludCB2ZXJzaW9uIGluZm9ybWF0aW9uIGFuZCBleGl0IHN1Y2Nlc3NmdWxseS4iCittc2dzdHIgIld5xZt3aWV0bGEgaW5mb3JtYWNqxJkgbyB3ZXJzamkgaSBwb215xZtsbmllIGtvxYRjenkgZHppYcWCYW5pZS4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxMjYKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIldoZW4gQjxkc2VsZWN0PiBpcyBzdGFydGVkIGludGVyYWN0aXZlbHksIGl0IHByb21wdHMgdGhlIHVzZXIgd2l0aCBhIG1lbnUgIgorI3wgIm9mIGF2YWlsYWJsZSBhY3Rpb25zOiIKK21zZ2lkICIiCisiV2hlbiBCPGRzZWxlY3Q+IGlzIHN0YXJ0ZWQgaXQgY2FuIHBlcmZvcm0gdGhlIGZvbGxvd2luZyBhY3Rpb25zLCBlaXRoZXIgIgorImRpcmVjdGx5IGlmIGl0IHdhcyBzcGVjaWZpZWQgb24gdGhlIGNvbW1hbmQgbGluZSBvciBieSBwcm9tcHRpbmcgdGhlIHVzZXIgIgorIndpdGggYSBtZW51IG9mIGF2YWlsYWJsZSBhY3Rpb25zIGlmIHJ1bm5pbmcgaW50ZXJhY3RpdmVseToiCittc2dzdHIgIiIKKyJCPGRzZWxlY3Q+IHVydWNob21pb255IHcgdHJ5YmllIGludGVyYWtjeWpueW0gd3nFm3dpZXRsYSBtZW51IHogbmFzdMSZcHVqxIVjeW1pICIKKyJha2NqYW1pOiIKKworIy4gdHlwZTogU1MKKyM6IGRzZWxlY3QuMToxMjYKKyMsIG5vLXdyYXAKK21zZ2lkICJhY2Nlc3MiCittc2dzdHIgImFjY2VzcyAoZG9zdMSZcCkiCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxMjgKK21zZ2lkICJDaG9vc2UgYW5kIGNvbmZpZ3VyZSBhbiBhY2Nlc3MgbWV0aG9kIHRvIGFjY2VzcyBwYWNrYWdlIHJlcG9zaXRvcmllcy4iCittc2dzdHIgIld5YmllcmEgbWV0b2TEmSBkb3N0xJlwdSB1xbx5d2FuxIUgZG8gem5hbGV6aWVuaWEgcmVwb3p5dG9yaXVtIHBha2lldMOzdy4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxMzQKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIkJ5IGRlZmF1bHQsIEI8ZHNlbGVjdD4gcHJvdmlkZXMgc2V2ZXJhbCBtZXRob2RzIHN1Y2ggYXMgSTxmbG9wcHk+LCAiCisjfCAiSTxoYXJkZGlzaz4gb3IgSTxjZHJvbT4sIGJ1dCBvdGhlciBwYWNrYWdlcyBtYXkgcHJvdmlkZSBhZGRpdGlvbmFsICIKKyN8ICJtZXRob2RzLCBlZy4gdGhlIEk8YXB0PiBhY2Nlc3MgbWV0aG9kIHByb3ZpZGVkIGJ5IHRoZSBCPGFwdD4gcGFja2FnZSBvciAiCisjfCAiSTxtdWx0aV9jZD4gYnkgdGhlIEI8ZHBrZy1tdWx0aWNkPiBwYWNrYWdlLiIKK21zZ2lkICIiCisiQnkgZGVmYXVsdCwgQjxkc2VsZWN0PiBwcm92aWRlcyBzZXZlcmFsIG1ldGhvZHMgc3VjaCBhcyBJPGNkcm9tPiwgIgorIkk8bXVsdGlfY2Q+LCBJPG5mcz4sIEk8bXVsdGlfbmZzPiwgSTxoYXJkZGlzaz4sIEk8bW91bnRlZD4sIEk8bXVsdGlfbW91bnQ+LCAiCisiSTxmbG9wcHk+IG9yIEk8ZnRwPiwgYnV0IG90aGVyIHBhY2thZ2VzIG1heSBwcm92aWRlIGFkZGl0aW9uYWwgbWV0aG9kcywgZWcuICIKKyJ0aGUgSTxhcHQ+IGFjY2VzcyBtZXRob2QgcHJvdmlkZWQgYnkgdGhlIEI8YXB0PiBwYWNrYWdlLiIKK21zZ3N0ciAiIgorIkRvbXnFm2xuaWUgaXN0bmllamUga2lsa2EgbWV0b2QsIHRha2ljaCBqYWsgSTxmbG9wcHk+IChkeXNraWV0a2EpLCAiCisiSTxoYXJkZGlzaz4gKGR5c2sgdHdhcmR5KSBsdWIgSTxjZHJvbT4gKENELVJPTSksIGFsZSBpbm5lIHBha2lldHkgbW9nxIUgIgorImRvc3RhcmN6ecSHIGRvZGF0a293eWNoIG1ldG9kLCBuYSBwcnp5a8WCYWQgbWV0b2R5IEk8YXB0PiBkb3N0YXJjemEgcGFraWV0ICIKKyJCPGFwdD4sIGEgSTxtdWx0aV9jZD4gLSBwYWtpZXQgQjxkcGtnLW11bHRpY2Q+LiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjEzNgorbXNnaWQgIlRoZSB1c2Ugb2YgdGhlIEk8YXB0PiBhY2Nlc3MgbWV0aG9kIGlzIHN0cm9uZ2x5IHJlY29tbWVuZGVkLiIKK21zZ3N0ciAiWmFsZWNhbmUgamVzdCB1xbx5d2FuaWUgbWV0b2R5IEk8YXB0Pi4iCisKKyMuIHR5cGU6IFNTCisjOiBkc2VsZWN0LjE6MTM3CisjLCBuby13cmFwCittc2dpZCAidXBkYXRlIgorbXNnc3RyICJ1cGRhdGUgKGFrdHVhbGl6YWNqYSkiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxMzkKK21zZ2lkICJSZWZyZXNoIHRoZSBhdmFpbGFibGUgcGFja2FnZXMgZGF0YWJhc2UuIgorbXNnc3RyICJBa3R1YWxpenVqZSBiYXrEmSBkb3N0xJlwbnljaCBwYWtpZXTDs3cuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTQ2Cittc2dpZCAiIgorIlJldHJpZXZlcyBhIGxpc3Qgb2YgYXZhaWxhYmxlIHBhY2thZ2UgdmVyc2lvbnMgZnJvbSB0aGUgcGFja2FnZSByZXBvc2l0b3J5LCAiCisiY29uZmlndXJlZCBmb3IgdGhlIGN1cnJlbnQgYWNjZXNzIG1ldGhvZCwgYW5kIHVwZGF0ZSB0aGUgZHBrZyBkYXRhYmFzZS4gVGhlICIKKyJwYWNrYWdlIGxpc3RzIGFyZSBjb21tb25seSBwcm92aWRlZCBieSB0aGUgcmVwb3NpdG9yeSBhcyBmaWxlcyBuYW1lZCAiCisiSTxQYWNrYWdlcz4gb3IgSTxQYWNrYWdlcy5nej4uICBUaGVzZSBmaWxlcyBjYW4gYmUgZ2VuZXJhdGVkIGJ5IHJlcG9zaXRvcnkgIgorIm1haW50YWluZXJzLCB1c2luZyB0aGUgcHJvZ3JhbSBCPGRwa2ctc2NhbnBhY2thZ2VzPigxKS4iCittc2dzdHIgIiIKKyLFmmNpxIVnYSBsaXN0xJkgZG9zdMSZcG55Y2ggd2Vyc2ppIHBha2lldMOzdyB6IHJlcG96eXRvcml1bSBwYWtpZXTDs3csICIKKyJza29uZmlndXJvd2FuZWdvIHphIHBvbW9jxIUgd3licmFuZWogbWV0b2R5IGRvc3TEmXB1LCBpIGFrdHVhbGl6dWplIGJhesSZICIKKyJwYWtpZXTDs3cgcHJvZ3JhbXUgZHBrZy4gTGlzdHkgcGFraWV0w7N3IHPEhSB6d3ljemFqb3dvIHphd2FydGUgdyByZXBvenl0b3JpdW0gIgorIncgcGxpa2FjaCBuYXp3YW55Y2ggSTxQYWNrYWdlcz4gbHViIEk8UGFja2FnZXMuZ3o+LiBQbGlraSB0ZSBtb2fEhSB6b3N0YcSHICIKKyJ3eWdlbmVyb3dhbmUgcHJ6ZXogb3BpZWt1bsOzdyByZXBvenl0b3Jpw7N3IHphIHBvbW9jxIUgcHJvZ3JhbXUgQjxkcGtnLSIKKyJzY2FucGFja2FnZXM+KDEpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjE0OQorbXNnaWQgIiIKKyJEZXRhaWxzIG9mIHRoZSB1cGRhdGUgYWN0aW9uIGRlcGVuZCBvbiB0aGUgYWNjZXNzIG1ldGhvZCdzIGltcGxlbWVudGF0aW9uLiAgIgorIk5vcm1hbGx5IHRoZSBwcm9jZXNzIGlzIHN0cmFpZ2h0Zm9yd2FyZCBhbmQgcmVxdWlyZXMgbm8gdXNlciBpbnRlcmFjdGlvbi4iCittc2dzdHIgIiIKKyJTemN6ZWfDs8WCeSBha3R1YWxpemFjamkgemFsZcW8xIUgb2QgaW1wbGVtZW50YWNqaSBtZXRvZHkgZG9zdMSZcHUuIFphend5Y3phaiB0ZW4gIgorInByb2NlcyBqZXN0IGJhcmR6byBwcm9zdHkgaSBuaWUgd3ltYWdhIGludGVyYWtjamkgeiB1xbx5dGtvd25pa2llbS4iCisKKyMuIHR5cGU6IFNTCisjOiBkc2VsZWN0LjE6MTUwCisjLCBuby13cmFwCittc2dpZCAic2VsZWN0IgorbXNnc3RyICJzZWxlY3QgKHd5YsOzcikiCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxNTIKK21zZ2lkICJWaWV3IG9yIG1hbmFnZSBwYWNrYWdlIHNlbGVjdGlvbnMgYW5kIGRlcGVuZGVuY2llcy4iCittc2dzdHIgIiIKKyJXecWbd2lldGxhIGluZm9ybWFjamUgbyB3eWJvcnplIHBha2lldMOzdyBpIHphbGXFvG5vxZtjaWFjaCBvcmF6IHphcnrEhWR6YSBuaW1pLiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjE1OAorbXNnaWQgIiIKKyJUaGlzIGlzIHRoZSBtYWluIGZ1bmN0aW9uIG9mIEI8ZHNlbGVjdD4uIEluIHRoZSBzZWxlY3Qgc2NyZWVuLCB0aGUgdXNlciBjYW4gIgorInJldmlldyBhIGxpc3Qgb2YgYWxsIGF2YWlsYWJsZSBhbmQgaW5zdGFsbGVkIHBhY2thZ2VzLiBXaGVuIHJ1biB3aXRoICIKKyJhZG1pbmlzdHJhdG9yIHByaXZpbGVnZXMsIGl0IGlzIGFsc28gcG9zc2libGUgdG8gaW50ZXJhY3RpdmVseSBjaGFuZ2UgIgorInBhY2thZ2VzIHNlbGVjdGlvbiBzdGF0ZS4gQjxkc2VsZWN0PiB0cmFja3MgdGhlIGltcGxpY2F0aW9ucyBvZiB0aGVzZSAiCisiY2hhbmdlcyB0byBvdGhlciBkZXBlbmRpbmcgb3IgY29uZmxpY3RpbmcgcGFja2FnZXMuIgorbXNnc3RyICIiCisiSmVzdCB0byBnxYLDs3duYSBmdW5rY2phIHByb2dyYW11IEI8ZHNlbGVjdD4uIFcgZWtyYW5pZSB3eWJvcnUgcGFraWV0w7N3ICIKKyJ1xbx5dGtvd25payBtb8W8ZSBwcnplZ2zEhWRhxIcgbGlzdMSZIGRvc3TEmXBueWNoIGkgemFpbnN0YWxvd2FueWNoIHBha2lldMOzdy4gIgorIkplxbxlbGkgcHJvZ3JhbSBkemlhxYJhIHogdXByYXduaWVuaWFtaSBhZG1pbmlzdHJhdG9yYSwgbW/FvGxpd2UgamVzdCAiCisiaW50ZXJha3R5d25lIHptaWVuaWFuaWUgc3RhbnUgcGFraWV0w7N3LiBCPGRzZWxlY3Q+IMWbbGVkemkgd3DFgnl3IHR5Y2ggem1pYW4gIgorIm5hIHBha2lldHkgemFsZcW8bmUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTY1Cittc2dpZCAiIgorIldoZW4gYSBjb25mbGljdCBvciBmYWlsZWQgZGVwZW5kcyBpcyBkZXRlY3RlZCwgYSBkZXBlbmRlbmN5IHJlc29sdXRpb24gIgorInN1YnNjcmVlbiBpcyBwcm9tcHRlZCB0byB0aGUgdXNlci4gSW4gdGhpcyBzY3JlZW4sIGEgbGlzdCBvZiBjb25mbGljdGluZyBvciAiCisiZGVwZW5kaW5nIHBhY2thZ2VzIGlzIHNob3duLCBhbmQgZm9yIGVhY2ggcGFja2FnZSBsaXN0ZWQsIHRoZSByZWFzb24gZm9yIGl0cyAiCisibGlzdGluZyBpcyBzaG93bi4gVGhlIHVzZXIgbWF5IGFwcGx5IHRoZSBzdWdnZXN0aW9ucyBwcm9wb3NlZCBieSBCPGRzZWxlY3Q+LCAiCisib3ZlcnJpZGUgdGhlbSwgb3IgYmFjayBvdXQgYWxsIHRoZSBjaGFuZ2VzLCBpbmNsdWRpbmcgdGhlIG9uZXMgdGhhdCBjcmVhdGVkICIKKyJ0aGUgdW5yZXNvbHZlZCBkZXBlbmRzIG9yIGNvbmZsaWN0cy4iCittc2dzdHIgIiIKKyJKZcWbbGkgem9zdGFuaWUgd3lrcnl0eSBrb25mbGlrdCBsdWIgbmllc3BlxYJuaW9uYSB6YWxlxbxub8WbxIcsIHd5xZt3aWV0bGFueSBqZXN0ICIKKyJla3JhbiByb3p3acSFenl3YW5pYSB6YWxlxbxub8WbY2kgcG9rYXp1asSFY3kgbGlzdMSZIHBha2lldMOzdywgcG93b2R1asSFY3ljaCAiCisia29uZmxpa3QgbHViIG5pZXNwZcWCbmlvbsSFIHphbGXFvG5vxZvEhyBpIGRsYSBrYcW8ZGVnbyB3ecWbd2lldGxvbmVnbyBwYWtpZXR1IC0gIgorInByenljenluxJksIGRsYSBrdMOzcmVqIGplc3Qgb24gd3nFm3dpZXRsb255LiBVxbx5dGtvd25payBtb8W8ZSB6YXN0b3Nvd2HEhyBzacSZIGRvICIKKyJzdWdlc3RpaSB6YXByb3Bvbm93YW55Y2ggcHJ6ZXogQjxkc2VsZWN0PiwgdW5pZXdhxbxuacSHIGplIGx1YiB3eWNvZmHEhyBzacSZIHplICIKKyJ6bWlhbiwgd8WCxIVjemFqxIVjIHcgdG8gcGFraWV0eSwga3TDs3JlIHNwb3dvZG93YcWCeSBuaWVzcGXFgm5pb25lIHphbGXFvG5vxZtjaSBsdWIgIgorImtvbmZsaWt0eS4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxNjgKK21zZ2lkICIiCisiVGhlIHVzZSBvZiB0aGUgaW50ZXJhY3RpdmUgcGFja2FnZSBzZWxlY3Rpb25zIG1hbmFnZW1lbnQgc2NyZWVuIGlzIGV4cGxhaW5lZCAiCisiaW4gbW9yZSBkZXRhaWwgYmVsb3cuIgorbXNnc3RyICIiCisiVcW8eXdhbmllIGVrcmFueSBkbyB6YXJ6xIVkYW5pYSBpbnRlcmFrdHl3bnltIHd5Ym9yZW0gcGFraWV0w7N3IGplc3QgIgorInN6Y3plZ8OzxYJvd28gd3lqxIXFm25pb25lIHBvbmnFvGVqLiIKKworIy4gdHlwZTogU1MKKyM6IGRzZWxlY3QuMToxNjkKKyMsIG5vLXdyYXAKK21zZ2lkICJpbnN0YWxsIgorbXNnc3RyICJpbnN0YWxsIChpbnN0YWxhY2phKSIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjE3MQorbXNnaWQgIkluc3RhbGxzIHNlbGVjdGVkIHBhY2thZ2VzLiIKK21zZ3N0ciAiSW5zdGFsdWplIHd5YnJhbmUgcGFraWV0eS4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxNzcKK21zZ2lkICIiCisiVGhlIGNvbmZpZ3VyZWQgYWNjZXNzIG1ldGhvZCB3aWxsIGZldGNoIGluc3RhbGxhYmxlIG9yIHVwZ3JhZGFibGUgcGFja2FnZXMgIgorImZyb20gdGhlIHJlbGV2YW50IHJlcG9zaXRvcmllcyBhbmQgaW5zdGFsbCB0aGVzZSB1c2luZyBCPGRwa2c+LiAgRGVwZW5kaW5nICIKKyJvbiB0aGUgaW1wbGVtZW50YXRpb24gb2YgdGhlIGFjY2VzcyBtZXRob2QsIGFsbCBwYWNrYWdlcyBjYW4gYmUgcHJlZmV0Y2hlZCAiCisiYmVmb3JlIGluc3RhbGxhdGlvbiwgb3IgZmV0Y2hlZCB3aGVuIG5lZWRlZC4gIFNvbWUgYWNjZXNzIG1ldGhvZHMgbWF5IGFsc28gIgorInJlbW92ZSBwYWNrYWdlcyB0aGF0IHdlcmUgbWFya2VkIGZvciByZW1vdmFsLiIKK21zZ3N0ciAiIgorIlphIHBvbW9jxIUgc2tvbmZpZ3Vyb3dhbmVqIG1ldG9keSBkb3N0xJlwdSB6b3N0YW7EhSB6IG9kcG93aWVkbmljaCByZXBvenl0b3Jpw7N3ICIKKyJwb2JyYW5lIHBha2lldHkgZG8gemFpbnN0YWxvd2FuaWEgbHViIHpha3R1YWxpem93YW5pYSB6YSBwb21vY8SFIHByb2dyYW11ICIKKyJCPGRwa2c+LiBaYWxlxbxuaWUgb2QgaW1wbGVtZW50YWNqaSB0ZWogbWV0b2R5IGRvc3TEmXB1LCBwYWtpZXR5IG1vZ8SFIHpvc3RhxIcgIgorInBvYnJhbmUgd2N6ZcWbbmllaiAtIHByemVkIGluc3RhbGFjasSFIC0gbHViIHd0ZWR5LCBnZHkgYsSZZMSFIHBvdHJ6ZWJuZS4gIgorIk5pZWt0w7NyZSBtZXRvZHkgZG9zdMSZcHUgcsOzd25pZcW8IHVzdXdhasSFIHBha2lldHkgemF6bmFjem9uZSBkbyB1c3VuacSZY2lhLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjE4NQorbXNnaWQgIiIKKyJJZiBhbiBlcnJvciBvY2N1cnJlZCBkdXJpbmcgaW5zdGFsbCwgaXQgaXMgdXN1YWxseSBhZHZpc2FibGUgdG8gcnVuIGluc3RhbGwgIgorImFnYWluLiBJbiBtb3N0IGNhc2VzLCB0aGUgcHJvYmxlbXMgd2lsbCBkaXNhcHBlYXIgb3IgYmUgc29sdmVkLiAgSWYgcHJvYmxlbXMgIgorInBlcnNpc3Qgb3IgdGhlIGluc3RhbGxhdGlvbiBwZXJmb3JtZWQgd2FzIGluY29ycmVjdCwgcGxlYXNlIGludmVzdGlnYXRlIGludG8gIgorInRoZSBjYXVzZXMgYW5kIGNpcmN1bXN0YW5jZXMsIGFuZCBmaWxlIGEgYnVnIGluIHRoZSBEZWJpYW4gYnVnIHRyYWNraW5nICIKKyJzeXN0ZW0uIEluc3RydWN0aW9ucyBvbiBob3cgdG8gZG8gdGhpcyBjYW4gYmUgZm91bmQgYXQgaHR0cDovL2J1Z3MuZGViaWFuLiIKKyJvcmcvIG9yIGJ5IHJlYWRpbmcgdGhlIGRvY3VtZW50YXRpb24gZm9yIEI8YnVnPigxKSBvciBCPHJlcG9ydGJ1Zz4oMSksIGlmICIKKyJ0aGVzZSBhcmUgaW5zdGFsbGVkLiIKK21zZ3N0ciAiIgorIkplxbxlbGkgcG9kY3phcyBpbnN0YWxhY2ppIHd5c3TEhXBpIGLFgsSFZCwgcG9sZWNhIHNpxJkgdXJ1Y2hvbWllbmllIGFrY2ppICIKKyJpbnN0YWxsIGplc3pjemUgcmF6LiBXIHdpxJlrc3pvxZtjaSBwcnp5cGFka8OzdywgcHJvYmxlbXkgc2FtZSB6bmlrbsSFIGx1YiAiCisiem9zdGFuxIUgcm96d2nEhXphbmUuIEplxZtsaSBwcm9ibGVtIHBvem9zdGFqZSBsdWIgcHJ6ZXByb3dhZHpvbmEgaW5zdGFsYWNqYSAiCisiYnnFgmEgbmllcHJhd2lkxYJvd2EsIHByb3NpbXkgbyB6YmFkYW5pZSBwcnp5Y3p5biBwcm9ibGVtdSBpIG9rb2xpY3pub8WbY2kgamVnbyAiCisid3lzdMSFcGllbmlhIGkgbyB3eXPFgmFuaWUgcmVwb3J0dSBvIGLFgsSZZHppZSBkbyBzeXN0ZW11IMWbbGVkemVuaWEgYsWCxJlkw7N3ICIKKyJEZWJpYW5hLiBJbnN0cnVrY2plLCBqYWsgdG8genJvYmnEhywgbW/FvG5hIHpuYWxlxbrEhyBwb2QgYWRyZXNlbSBodHRwOi8vYnVncy4iCisiZGViaWFuLm9yZy8gYWxibyB3IGRva3VtZW50YWNqaSBwcm9ncmFtw7N3IEI8YnVnPigxKSBsdWIgQjxyZXBvcnRidWc+KDEpLCAiCisiamXFvGVsaSBzxIUgemFpbnN0YWxvd2FuZS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxOTIKK21zZ2lkICIiCisiRGV0YWlscyBvZiB0aGUgaW5zdGFsbCBhY3Rpb24gZGVwZW5kIG9uIHRoZSBhY2Nlc3MgbWV0aG9kJ3MgaW1wbGVtZW50YXRpb24uICAiCisiVGhlIHVzZXIncyBhdHRlbnRpb24gYW5kIGlucHV0IG1heSBiZSByZXF1aXJlZCBkdXJpbmcgaW5zdGFsbGF0aW9uLCAiCisiY29uZmlndXJhdGlvbiBvciByZW1vdmFsIG9mIHBhY2thZ2VzLiBUaGlzIGRlcGVuZHMgb24gdGhlIG1haW50YWluZXIgc2NyaXB0cyAiCisiaW4gdGhlIHBhY2thZ2UuIFNvbWUgcGFja2FnZXMgbWFrZSB1c2Ugb2YgdGhlIEI8ZGViY29uZj4oMSkgIGxpYnJhcnksICIKKyJhbGxvd2luZyBmb3IgbW9yZSBmbGV4aWJsZSBvciBldmVuIGF1dG9tYXRlZCBpbnN0YWxsYXRpb24gc2V0dXBzLiIKK21zZ3N0ciAiIgorIlN6Y3plZ8OzxYJ5IGRvdHljesSFY2UgYWtjamkgaW5zdGFsYWNqaSB6YWxlxbzEhSBvZCBpbXBsZW1lbnRhY2ppIG1ldG9keSBkb3N0xJlwdS4gIgorIlBvZGN6YXMgaW5zdGFsYWNqaSwga29uZmlndXJhY2ppIGN6eSB1c3V3YW5pYSBwYWtpZXTDs3cgbW/FvGUgYnnEhyBwb3RyemVibmEgIgorImludGVyYWtjamEgeiB1xbx5dGtvd25pa2llbS4gWmFsZcW8eSB0byBvZCBza3J5cHTDs3cgb3BpZWt1bmEgcGFraWV0dS4gTmlla3TDs3JlICIKKyJwYWtpZXR5IHXFvHl3YWrEhSBiaWJsaW90ZWtpIEI8ZGViY29uZj4oMSksIGNvIHBvendhbGEgbmEgYmFyZHppZWogZWxhc3R5Y3puxIUgIgorImx1YiBuYXdldCB3IHBlxYJuaSBhdXRvbWF0eWN6bsSFIGluc3RhbGFjasSZIHBha2lldHUuIgorCisjLiB0eXBlOiBTUworIzogZHNlbGVjdC4xOjE5MworIywgbm8td3JhcAorbXNnaWQgImNvbmZpZyIKK21zZ3N0ciAiY29uZmlnIChrb25maWd1cm93YW5pZSkiCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxOTUKK21zZ2lkICJDb25maWd1cmVzIGFueSBwcmV2aW91c2x5IGluc3RhbGxlZCwgYnV0IG5vdCBmdWxseSBjb25maWd1cmVkIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorIktvbmZpZ3VydWplIHdzenlzdGtpZSBwYWtpZXR5IHBvcHJ6ZWRuaW8gemFpbnN0YWxvd2FuZSwgYWxlIG5pZSBkbyBrb8WEY2EgIgorInNrb25maWd1cm93YW5lLiIKKworIy4gdHlwZTogU1MKKyM6IGRzZWxlY3QuMToxOTYKKyMsIG5vLXdyYXAKK21zZ2lkICJyZW1vdmUiCittc2dzdHIgInJlbW92ZSAodXN1d2FuaWUpIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTk4Cittc2dpZCAiUmVtb3ZlcyBvciBwdXJnZXMgaW5zdGFsbGVkIHBhY2thZ2VzLCB0aGF0IGFyZSBtYXJrZWQgZm9yIHJlbW92YWwuIgorbXNnc3RyICIiCisiVXN1d2EgbHViIGN6ecWbY2kgdGUgemFpbnN0YWxvd2FuZSBwYWtpZXR5LCBrdMOzcmUgc8SFIHphem5hY3pvbmUgZG8gdXN1bmnEmWNpYS4iCisKKyMuIHR5cGU6IFNTCisjOiBkc2VsZWN0LjE6MTk5CisjLCBuby13cmFwCittc2dpZCAicXVpdCIKK21zZ3N0ciAicXVpdCAod3lqxZtjaWUpIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MjAxCittc2dpZCAiUXVpdCBCPGRzZWxlY3Q+IgorbXNnc3RyICJXeWrFm2NpZSB6IEI8ZHNlbGVjdD4uIgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MjAzCittc2dpZCAiRXhpdHMgdGhlIHByb2dyYW0gd2l0aCB6ZXJvIChzdWNjZXNzZnVsKSBlcnJvcmNvZGUuIgorbXNnc3RyICJXeWNob2R6aSB6IHByb2dyYW11IHogemVyb3d5bSBrb2RlbSBixYLEmWR1IChwb215xZtsbmllKS4iCisKKyMuIHR5cGU6IFNICisjOiBkc2VsZWN0LjE6MjA1CisjLCBuby13cmFwCittc2dpZCAiUGFja2FnZSBzZWxlY3Rpb25zIG1hbmFnZW1lbnQiCittc2dzdHIgIlphcnrEhWR6YW5pZSB3eWJvcmVtIHBha2lldMOzdyIKKworIy4gdHlwZTogU1MKKyM6IGRzZWxlY3QuMToyMDcKKyMsIG5vLXdyYXAKK21zZ2lkICJJbnRyb2R1Y3Rpb24iCittc2dzdHIgIldzdMSZcCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjIyMworbXNnaWQgIiIKKyJCPGRzZWxlY3Q+IGRpcmVjdGx5IGV4cG9zZXMgdGhlIGFkbWluaXN0cmF0b3IgdG8gc29tZSBvZiB0aGUgY29tcGxleGl0aWVzICIKKyJpbnZvbHZlZCB3aXRoIG1hbmFnaW5nIGxhcmdlIHNldHMgb2YgcGFja2FnZXMgd2l0aCBtYW55IGludGVyZGVwZW5kZW5jaWVzLiAiCisiRm9yIGEgdXNlciB3aG8gaXMgdW5mYW1pbGlhciB3aXRoIHRoZSBjb25jZXB0cyBhbmQgdGhlIHdheXMgb2YgdGhlIGRlYmlhbiAiCisicGFja2FnZSBtYW5hZ2VtZW50IHN5c3RlbSwgaXQgY2FuIGJlIHF1aXRlIG92ZXJ3aGVsbWluZy4gQWx0aG91Z2ggQjxkc2VsZWN0PiAiCisiaXMgYWltZWQgYXQgZWFzaW5nIHBhY2thZ2UgbWFuYWdlbWVudCBhbmQgYWRtaW5pc3RyYXRpb24sIGl0IGlzIG9ubHkgIgorImluc3RydW1lbnRhbCBpbiBkb2luZyBzbyBhbmQgY2FuIG5vdCBiZSBhc3N1bWVkIHRvIGJlIGEgc3VmZmljaWVudCAiCisic3Vic3RpdHV0ZSBmb3IgYWRtaW5pc3RyYXRvciBza2lsbCBhbmQgdW5kZXJzdGFuZGluZy4gVGhlIHVzZXIgaXMgcmVxdWlyZWQgIgorInRvIGJlIGZhbWlsaWFyIHdpdGggdGhlIGNvbmNlcHRzIHVuZGVybHlpbmcgdGhlIERlYmlhbiBwYWNrYWdpbmcgc3lzdGVtLiAgSW4gIgorImNhc2Ugb2YgZG91YnQsIGNvbnN1bHQgdGhlIEI8ZHBrZz4oMSkgbWFucGFnZSBhbmQgdGhlIERlYmlhbiBQb2xpY3kgbWFudWFsLCAiCisiY29udGFpbmVkIGluIHRoZSBCPGRlYmlhbi1wb2xpY3k+IHBhY2thZ2UuIgorbXNnc3RyICIiCisiQjxkc2VsZWN0PiBvZGtyeXdhIHByemVkIGFkbWluaXN0cmF0b3JlbSBuaWVrdMOzcmUgesWCb8W8b25vxZtjaSB3acSFxbzEhWNlIHNpxJkgeiAiCisiemFyesSFZHphbmllbSBkdcW8eW0gemJpb3JlbSBwYWtpZXTDs3cgeiB3aWVsb21hIHphbGXFvG5vxZtjaWFtaSBtacSZZHp5IG5pbWkuIERsYSAiCisidcW8eXRrb3duaWthLCBrdMOzcnkgbmllIGplc3QgemF6bmFqb21pb255IHoga29uY2VwY2phbWkgRGViaWFub3dlZ28gc3lzdGVtdSAiCisiemFyesSFZHphbmlhIHBha2lldGFtaSwgbW/FvGUgdG8gYnnEhyBiYXJkem8gcHJ6eXTFgmFjemFqxIVjZS4gQ2hvY2lhxbwgY2VsZW0gIgorInByb2dyYW11IEI8ZHNlbGVjdD4gamVzdCB1xYJhdHdpZW5pZSB6YXJ6xIVkemFuaWEgaSBhZG1pbmlzdHJvd2FuaWEgcGFraWV0YW1pLCAiCisiamVzdCBvbiB0eWxrbyBpbnN0cnVtZW50ZW0gc8WCdcW8xIVjeW0gZG8gdGVnbyBpIG5pZSBtb8W8ZSB3IHd5c3RhcmN6YWrEhWN5bSAiCisic3RvcG5pdSB6YXN0xIVwacSHIHVtaWVqxJl0bm/Fm2NpIGkgd2llZHp5IGFkbWluaXN0cmF0b3JhLiBVxbx5dGtvd25payBwb3dpbmllbiAiCisiYnnEhyB6YXpuYWpvbWlvbnkgeiBrb25jZXBjamFtaSBsZcW8xIVjeW1pIHUgcG9kc3RhdyBzeXN0ZW11IHBha2lldMOzdyBEZWJpYW5hLiAiCisiVyByYXppZSBqYWtpY2hrb2x3aWVrIHfEhXRwbGl3b8WbY2ksIG5hbGXFvHkgamUgc3ByYXdkemnEhyB3IHBvZHLEmWN6bmlrdSBCPGRwa2c+IgorIigxKSBvcmF6IHcgcG9kcsSZY3puaWt1IFwiWmFzYWR5IHBvbGl0eWtpIERlYmlhbmFcIiB6YXdhcnR5bSB3IHBha2llY2llICIKKyJCPGRlYmlhbi1wb2xpY3k+LiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjIyOQorbXNnaWQgIiIKKyJVbmxlc3MgQjxkc2VsZWN0PiBpcyBydW4gaW4gZXhwZXJ0IG9yIGltbWVkaWF0ZSBtb2RlLCBhIGhlbHAgc2NyZWVuIGlzIGZpcnN0ICIKKyJkaXNwbGF5ZWQgd2hlbiBjaG9vc2luZyB0aGlzIGFjdGlvbiBmcm9tIHRoZSBtZW51LiBUaGUgdXNlciBpcyBJPHN0cm9uZ2x5PiAiCisiYWR2aXNlZCB0byBzdHVkeSBhbGwgb2YgdGhlIGluZm9ybWF0aW9uIHByZXNlbnRlZCBpbiB0aGUgb25saW5lIGhlbHAgIgorInNjcmVlbnMsIHdoZW4gb25lIHBvcHMgdXAuICBUaGUgb25saW5lIGhlbHAgc2NyZWVucyBjYW4gYXQgYW55IHRpbWUgYmUgIgorImludm9rZWQgd2l0aCB0aGUgQjwnPyc+IGtleS4iCittc2dzdHIgIiIKKyJKZcW8ZWxpIEI8ZHNlbGVjdD4gbmllIGJ5xYIgdXJ1Y2hvbWlvbnkgdyB0cnliaWUgZWtzcGVydGEgKGV4cGVydCkgbHViIHRyeWJpZSAiCisicGlsbnltIChpbW1lZGlhdGUpLCB0byBwbyB3eWJyYW5pdSBha2NqaSB6IG1lbnUsIHd5xZt3aWV0bGFueSBqZXN0IGVrcmFuICIKKyJwb21vY3kuIFXFvHl0a293bmlrIEk8cG93aW5pZW4+IGRva8WCYWRuaWUgcHJ6ZWN6eXRhxIcgd3N6eXN0a2llIGluZm9ybWFjamUgIgorInphd2FydGUgdyBla3JhbmFjaCBwb21vY3ksIGtpZWR5IHNpxJkgcG9qYXdpYWrEhS4gRWtyYW55IHBvbW9jeSBtb2fEhSB6b3N0YcSHICIKKyJ3ecWbd2lldGxvbmUgdyBkb3dvbG55bSBtb21lbmNpZSBwcnpleiB3eWJyYW5pZSBrbGF3aXN6YSBCPFwiP1wiPi4iCisKKyMuIHR5cGU6IFNTCisjOiBkc2VsZWN0LjE6MjMwCisjLCBuby13cmFwCittc2dpZCAiU2NyZWVuIGxheW91dCIKK21zZ3N0ciAiVWvFgmFkIGVrcmFudSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjIzOAorbXNnaWQgIiIKKyJUaGUgc2VsZWN0IHNjcmVlbiBpcyBieSBkZWZhdWx0IHNwbGl0IGluIGEgdG9wIGFuZCBhIGJvdHRvbSBoYWxmLiAgVGhlIHRvcCAiCisiaGFsZiBzaG93cyBhIGxpc3Qgb2YgcGFja2FnZXMuIEEgY3Vyc29yIGJhciBjYW4gc2VsZWN0IGFuIGluZGl2aWR1YWwgIgorInBhY2thZ2UsIG9yIGEgZ3JvdXAgb2YgcGFja2FnZXMsIGlmIGFwcGxpY2FibGUsIGJ5IHNlbGVjdGluZyB0aGUgZ3JvdXAgIgorImhlYWRlci4gVGhlIGJvdHRvbSBoYWxmIG9mIHRoZSBzY3JlZW4gc2hvd3Mgc29tZSBkZXRhaWxzIGFib3V0IHRoZSBwYWNrYWdlICIKKyJjdXJyZW50bHkgc2VsZWN0ZWQgaW4gdGhlIHRvcCBoYWxmIG9mIHRoZSBzY3JlZW4uICBUaGUgdHlwZSBvZiBkZXRhaWwgdGhhdCAiCisiaXMgZGlzcGxheWVkIGNhbiBiZSB2YXJpZWQuIgorbXNnc3RyICIiCisiRWtyYW4gd3lib3J1IHBha2lldMOzdyBkb215xZtsbmllIHBvZHppZWxvbnkgamVzdCBuYSBnw7NybsSFIGkgZG9sbsSFIHBvxYJvd8SZLiBXICIKKyJnw7NybmVqIHBvxYJvd2llIHd5xZt3aWV0bG9uYSBqZXN0IGxpc3RhIHBha2lldMOzdy4gWmEgcG9tb2PEhSBwYXNrYSB3eWJvcnUgbW/FvG5hICIKKyJ3eWJyYcSHIHBvamVkeW5jenkgcGFraWV0IGx1YiBncnVwxJkgcGFraWV0w7N3LCBwcnpleiB6YXpuYWN6ZW5pZSBuYWfFgsOzd2thICIKKyJncnVweSBwYWtpZXTDs3cuIFcgZG9sbmVqIHBvxYJvd2llIGVrcmFudSBwb2themFuZSBzxIUgc3pjemVnw7PFgm93ZSBpbmZvcm1hY2plICIKKyJuYSB0ZW1hdCBwYWtpZXR1IG9iZWNuaWUgd3licmFuZWdvIHcgZ8Ozcm5laiBwb8WCb3dpZSBla3JhbnUuIFR5cCB0eWNoICIKKyJpbmZvcm1hY2ppIG1vxbxlIGJ5xIcgcsOzxbxueS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToyNDEKK21zZ2lkICIiCisiUHJlc3NpbmcgdGhlIEI8J0knPiBrZXkgdG9nZ2xlcyBhIGZ1bGwtc2NyZWVuIGRpc3BsYXkgb2YgdGhlIHBhY2thZ2VzIGxpc3QsICIKKyJhbiBlbmxhcmdlZCB2aWV3IG9mIHRoZSBwYWNrYWdlIGRldGFpbHMsIG9yIHRoZSBlcXVhbGx5IHNwbGl0IHNjcmVlbi4iCittc2dzdHIgIiIKKyJOYWNpxZtuacSZY2llIGtsYXdpc3phIEI8XCJJXCI+IHByemXFgsSFY3phIHBvbWnEmWR6eSBwZcWCbm9la3Jhbm93eW0gd2lkb2tpZW0gIgorInBha2lldMOzdywgcG93acSZa3N6b255bSB3aWRva2llbSBzemN6ZWfDs8WCb3d5Y2ggaW5mb3JtYWNqaSBvIHBha2llY2llIGFsYm8gIgorImR6aWVsaSBla3JhbiBuYSBwb8WCb3fEmS4iCisKKyMuIHR5cGU6IFNTCisjOiBkc2VsZWN0LjE6MjQyCisjLCBuby13cmFwCittc2dpZCAiUGFja2FnZSBkZXRhaWxzIHZpZXciCittc2dzdHIgIldpZG9rIHN6Y3plZ8OzxYJvd3ljaCBpbmZvcm1hY2ppIG8gcGFraWVjaWUiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToyNTEKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiVGhlIHBhY2thZ2UgZGV0YWlscyB2aWV3IGJ5IGRlZmF1bHQgc2hvd3MgdGhlIGV4dGVuZGVkIHBhY2thZ2UgZGVzY3JpcHRpb25cbiIKKyJmb3IgdGhlIHBhY2thZ2UgdGhhdCBpcyBjdXJyZW50bHkgc2VsZWN0ZWQgaW4gdGhlIHBhY2thZ2VzIHN0YXR1cyBsaXN0LlxuIgorIlRoZSB0eXBlIG9mIGRldGFpbCBjYW4gYmUgdG9nZ2xlZCBieSBwcmVzc2luZyB0aGUgQjwnaSc+IGtleS4gVGhpc1xuIgorImFsdGVybmF0ZXMgYmV0d2VlbjpcbiIKKyIgLSB0aGUgZXh0ZW5kZWQgZGVzY3JpcHRpb25cbiIKKyIgLSB0aGUgY29udHJvbCBpbmZvcm1hdGlvbiBmb3IgdGhlIGluc3RhbGxlZCB2ZXJzaW9uXG4iCisiIC0gdGhlIGNvbnRyb2wgaW5mb3JtYXRpb24gZm9yIHRoZSBhdmFpbGFibGUgdmVyc2lvblxuIgorbXNnc3RyICIiCisiVyB3aWRva3Ugc3pjemVnw7PFgm93eWNoIGluZm9ybWFjamkgbyBwYWtpZWNpZSBkb215xZtsbmllIHd5xZt3aWV0bG9ueSBqZXN0IHJvenN6ZXJ6b255XG4iCisib3BpcyBwYWtpZXR1IG9iZWNuaWUgd3licmFuZWdvIHcgbGnFm2NpZSBwYWtpZXTDs3cuXG4iCisiVHlwIHR5Y2ggaW5mb3JtYWNqaSBtb8W8ZSBiecSHIHptaWVuaW9ueSB6YSBwb21vY8SFIGtsYXdpc3phIEI8XCJpXCI+LiBNb8W8bGl3ZSB3eWJvcnkgc8SFXG4iCisibmFzdMSZcHVqxIVjZTpcbiIKKyIgLSBwb3N6ZXJ6b255IG9waXNcbiIKKyIgLSBpbmZvcm1hY2phIG8gemFpbnN0YWxvd2FuZWogd2Vyc2ppIHBha2lldHVcbiIKKyIgLSBpbmZvcm1hY2phIG8gZG9zdMSZcG5laiB3ZXJzamkgcGFraWV0dVxuIgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MjU1Cittc2dpZCAiIgorIkluIGEgZGVwZW5kZW5jeSByZXNvbHV0aW9uIHNjcmVlbiwgdGhlcmUgaXMgYWxzbyB0aGUgcG9zc2liaWxpdHkgb2Ygdmlld2luZyAiCisidGhlIHNwZWNpZmljIHVucmVzb2x2ZWQgZGVwZW5kcyBvciBjb25mbGljdHMgcmVsYXRlZCB0byB0aGUgcGFja2FnZSBhbmQgIgorImNhdXNpbmcgaXQgdG8gYmUgbGlzdGVkLiIKK21zZ3N0ciAiIgorIkVrcmFuIHJvendpxIV6eXdhbmlhIHphbGXFvG5vxZtjaSBkYWplIHRha8W8ZSBtb8W8bGl3b8WbxIcgcG9kZWpyemVuaWEgb2tyZcWbbG9ueWNoICIKKyJuaWVzcGXFgm5pb255Y2ggemFsZcW8bm/Fm2NpIGLEhWTFuiBrb25mbGlrdMOzdyB6d2nEhXphbnljaCB6IHBha2lldGVtLCB0ai4gdHljaCAiCisiemFsZcW8bm/Fm2NpLCBrdMOzcmUgc3Bvd29kb3dhxYJ5IHd5bGlzdG93YW5pZSB0ZWdvIHBha2lldHUuIgorCisjLiB0eXBlOiBTUworIzogZHNlbGVjdC4xOjI1NgorIywgbm8td3JhcAorbXNnaWQgIlBhY2thZ2VzIHN0YXR1cyBsaXN0IgorbXNnc3RyICJMaXN0YSBzdGFuw7N3IHBha2lldMOzdyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjI2MQorbXNnaWQgIiIKKyJUaGUgbWFpbiBzZWxlY3Qgc2NyZWVuIGRpc3BsYXlzIGEgbGlzdCBvZiBhbGwgcGFja2FnZXMga25vd24gdG8gdGhlIGRlYmlhbiAiCisicGFja2FnZSBtYW5hZ2VtZW50IHN5c3RlbS4gVGhpcyBpbmNsdWRlcyBwYWNrYWdlcyBpbnN0YWxsZWQgb24gdGhlIHN5c3RlbSAiCisiYW5kIHBhY2thZ2VzIGtub3duIGZyb20gdGhlIGF2YWlsYWJsZSBwYWNrYWdlcyBkYXRhYmFzZS4iCittc2dzdHIgIiIKKyJXIGfFgsOzd255bSBla3JhbmllIHd5Ym9ydSBwYWtpZXTDs3cgd3nFm3dpZXRsb25hIGplc3QgbGlzdGEgd3N6eXN0a2ljaCBwYWtpZXTDs3cgIgorInpuYW55Y2ggc3lzdGVtb3dpIHphcnrEhWR6YW5pYSBwYWtpZXRhbWkgRGViaWFuYS4gU8SFIHRvIHphcsOzd25vIHBha2lldHkgIgorInphaW5zdGFsb3dhbmUgdyBzeXN0ZW1pZSwgamFrIGkgcGFraWV0eSB6YXdhcnRlIHcgYmF6aWUgZG9zdMSZcG55Y2ggcGFraWV0w7N3LiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjI2OQorbXNnaWQgIiIKKyJGb3IgZXZlcnkgcGFja2FnZSwgdGhlIGxpc3Qgc2hvd3MgdGhlIHBhY2thZ2UncyBzdGF0dXMsIHByaW9yaXR5LCBzZWN0aW9uLCAiCisiaW5zdGFsbGVkIGFuZCBhdmFpbGFibGUgdmVyc2lvbnMsIHRoZSBwYWNrYWdlIG5hbWUgYW5kIGl0cyBzaG9ydCAiCisiZGVzY3JpcHRpb24sIGFsbCBpbiBvbmUgbGluZS4gQnkgcHJlc3NpbmcgdGhlIEI8J1YnPiBrZXksIHRoZSBkaXNwbGF5IG9mIHRoZSAiCisiaW5zdGFsbGVkIGFuZCBhdmFpbGFibGUgdmVyc2lvbiBjYW4gYmUgdG9nZ2xlZCBiZXR3ZWVuIG9uIGFuIG9mZi4gQnkgIgorInByZXNzaW5nIHRoZSBCPCd2Jz4ga2V5LCB0aGUgcGFja2FnZSBzdGF0dXMgZGlzcGxheSBpcyB0b2dnbGVkIGJldHdlZW4gIgorInZlcmJvc2UgYW5kIHNob3J0aGFuZC4gIFNob3J0aGFuZCBkaXNwbGF5IGlzIHRoZSBkZWZhdWx0LiIKK21zZ3N0ciAiIgorIkRsYSBrYcW8ZGVnbyBwYWtpZXR1IHBva2F6YW5lIHPEhTogamVnbyBzdGFuLCBwcmlvcnl0ZXQsIHNla2NqYSwgbnVtZXIgd2Vyc2ppICIKKyJ6YWluc3RhbG93YW5laiBpIG51bWVyIHdlcnNqaSBkb3N0xJlwbmVqLCBuYXp3YSBwYWtpZXR1IG9yYXoga3LDs3RraSBvcGlzIC0gIgorIndzenlzdGtvIHcgamVkbmVqIGxpbmlpLiBOYWNpc2thasSFYyBrbGF3aXN6IEI8XCJWXCI+LCBtb8W8bmEgd8WCxIVjemHEhyBpICIKKyJ3ecWCxIVjemHEhyB3ecWbd2lldGxhbmllIGluZm9ybWFjamkgbyBudW1lcnplIHphaW5zdGFsb3dhbmVqIGkgZG9zdMSZcG5laiB3ZXJzamkgIgorInBha2lldHUuIE5hY2nFm25pxJljaWUga2xhd2lzemEgQjxcInZcIj4gcG93b2R1amUgcHJ6ZcWCxIVjemFuaWUgcG9tacSZZHp5ICIKKyJ3ecWbd2lldGxhbmllbSByb3p3bGVrxYJlZ28gaSBza3LDs2NvbmVnbyBvcGlzdSBzdGFudSBwYWtpZXR1LiBTa3LDs2Nvbnkgb3BpcyAiCisic3RhbnUgamVzdCB3ecWbd2lldGxhbnkgZG9tecWbbG5pZS4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToyNzUKK21zZ2lkICIiCisiVGhlIHNob3J0aGFuZCBzdGF0dXMgaW5kaWNhdGlvbiBjb25zaXN0cyBvZiBmb3VyIHBhcnRzOiBhbiBlcnJvciBmbGFnLCB3aGljaCAiCisic2hvdWxkIG5vcm1hbGx5IGJlIGNsZWFyLCB0aGUgY3VycmVudCBzdGF0dXMsIHRoZSBsYXN0IHNlbGVjdGlvbiBzdGF0ZSBhbmQgIgorInRoZSBjdXJyZW50IHNlbGVjdGlvbiBzdGF0ZS4gIFRoZSBmaXJzdCB0d28gcmVsYXRlIHRvIHRoZSBhY3R1YWwgc3RhdGUgb2YgIgorInRoZSBwYWNrYWdlLCB0aGUgc2Vjb25kIHBhaXIgYXJlIGFib3V0IHRoZSBzZWxlY3Rpb25zIHNldCBieSB0aGUgdXNlci4iCittc2dzdHIgIiIKKyJOYSBza3LDs2Nvbnkgb3BpcyBzdGFudSBwYWtpZXR1IHNrxYJhZGFqxIUgc2nEmSBjenRlcnkgY3rEmcWbY2k6IGZsYWdhIGLFgsSZZHUsICIKKyJrdMOzcmEgbm9ybWFsbmllIHBvd2lubmEgYnnEhyBjenlzdGEsIG9iZWNueSBzdGFuIHphaW5zdGFsb3dhbmlhIHBha2lldHUsICIKKyJwb3ByemVkbmkgc3RhbiB3eWJvcnUgcGFraWV0dSBvcmF6IG9iZWNueSBzdGFuIHd5Ym9ydSBwYWtpZXR1LiBEd2llIHBpZXJ3c3plICIKKyJjesSZxZtjaSBzxIUgendpxIV6YW5lIHogb2JlY255bSBzdGFuZW0gcGFraWV0dSwga29sZWpuZSBkd2llIC0gendpxIV6YW5lIHogIgorInd5Ym9yYW1pIGRva29uYW55bWkgcHJ6ZXogdcW8eXRrb3duaWthLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjI5MworIywgbm8td3JhcAorbXNnaWQgIiIKKyJUaGVzZSBhcmUgdGhlIG1lYW5pbmdzIG9mIHRoZSBzaG9ydGhhbmQgcGFja2FnZSBzdGF0dXMgaW5kaWNhdG9yIGNvZGVzOlxuIgorIiBFcnJvciBmbGFnOlxuIgorIiAgSTxlbXB0eT4gICBubyBlcnJvclxuIgorIiAgQjxSPiAgICAgICBzZXJpb3VzIGVycm9yLCBuZWVkcyByZWluc3RhbGxhdGlvbjtcbiIKKyIgSW5zdGFsbGVkIHN0YXRlOlxuIgorIiAgSTxlbXB0eT4gICBub3QgaW5zdGFsbGVkO1xuIgorIiAgQjwqPiAgICAgICBmdWxseSBpbnN0YWxsZWQgYW5kIGNvbmZpZ3VyZWQ7XG4iCisiICBCPC0+ICAgICAgIG5vdCBpbnN0YWxsZWQgYnV0IHNvbWUgY29uZmlnIGZpbGVzIG1heSByZW1haW47XG4iCisiICBCPFU+ICAgICAgIHVucGFja2VkIGJ1dCBub3QgeWV0IGNvbmZpZ3VyZWQ7XG4iCisiICBCPEM+ICAgICAgIGhhbGYtY29uZmlndXJlZCAoYW4gZXJyb3IgaGFwcGVuZWQpO1xuIgorIiAgQjxJPiAgICAgICBoYWxmLWluc3RhbGxlZCAoYW4gZXJyb3IgaGFwcGVuZWQpLlxuIgorIiBDdXJyZW50IGFuZCByZXF1ZXN0ZWQgc2VsZWN0aW9uczpcbiIKKyIgIEI8Kj4gICAgICAgbWFya2VkIGZvciBpbnN0YWxsYXRpb24gb3IgdXBncmFkZTtcbiIKKyIgIEI8LT4gICAgICAgbWFya2VkIGZvciByZW1vdmFsLCBjb25maWd1cmF0aW9uIGZpbGVzIHJlbWFpbjtcbiIKKyIgIEI8PT4gICAgICAgb24gaG9sZDogcGFja2FnZSB3aWxsIG5vdCBiZSBwcm9jZXNzZWQgYXQgYWxsO1xuIgorIiAgQjxfPiAgICAgICBtYXJrZWQgZm9yIHB1cmdlLCBhbHNvIHJlbW92ZSBjb25maWd1cmF0aW9uO1xuIgorIiAgQjxuPiAgICAgICBwYWNrYWdlIGlzIG5ldyBhbmQgaGFzIHlldCB0byBiZSBtYXJrZWQuXG4iCittc2dzdHIgIiIKKyJPem5hY3plbmlhIHXFvHl3YW5lIHcgc2tyw7Njb255bSBvcGlzaWUgc3RhbnUgcGFraWV0dSBzxIUgbmFzdMSZcHVqxIVjZTpcbiIKKyIgRmxhZ2EgYsWCxJlkdTpcbiIKKyIgIEk8cHVzdHk+ICAgYmV6IGLFgsSZZHU7XG4iCisiICBCPFI+ICAgICAgIHBvd2HFvG55IGLFgsSFZCwgcGFraWV0IHd5bWFnYSByZWluc3RhbGFjamk7XG4iCisiIFN0YW4gaW5zdGFsYWNqaTpcbiIKKyIgIEk8cHVzdHk+ICAgbmllIHphaW5zdGFsb3dhbnk7XG4iCisiICBCPCo+ICAgICAgIHcgcGXFgm5pIHphaW5zdGFsb3dhbnkgaSBza29uZmlndXJvd2FueTtcbiIKKyIgIEI8LT4gICAgICAgbmllIHphaW5zdGFsb3dhbnksIGFsZSBtb2fFgnkgcG96b3N0YcSHIHBsaWtpIGtvbmZpZ3VyYWN5am5lO1xuIgorIiAgQjxVPiAgICAgICByb3pwYWtvd2FueSwgYWxlIGplc3pjemUgbmllIHNrb25maWd1cm93YW55O1xuIgorIiAgQjxDPiAgICAgICB3IHBvxYJvd2llIHNrb25maWd1cm93YW55ICh3eXN0xIVwacWCIGLFgsSFZCk7XG4iCisiICBCPEk+ICAgICAgIHcgcG/Fgm93aWUgemFpbnN0YWxvd2FueSAod3lzdMSFcGnFgiBixYLEhWQpLlxuIgorIiBPYmVjbmUgaSDFvMSFZGFuZSB3eWJvcnk6XG4iCisiICBCPCo+ICAgICAgIHphem5hY3pvbnkgZG8gemFpbnN0YWxvd2FuaWEgbHViIHpha3R1YWxpem93YW5pYTtcbiIKKyIgIEI8LT4gICAgICAgemF6bmFjem9ueSBkbyB1c3VuacSZY2lhIHogcG96b3N0YXdpZW5pZW0gcGxpa8OzdyBrb25maWcuO1xuIgorIiAgQjw9PiAgICAgICB3c3RyenltYW55OiBwYWtpZXQgbmllIGLEmWR6aWUgcHJ6ZXR3YXJ6YW55O1xuIgorIiAgQjxfPiAgICAgICB6YXpuYWN6b255IGRvIHVzdW5pxJljaWEgaSB3eWN6eXN6Y3plbmlhIHBsaWvDs3cga29uZmlnLjtcbiIKKyIgIEI8bj4gICAgICAgcGFraWV0IGplc3Qgbm93eSBpIGplc3pjemUgbmllIGJ5xYIgem5hY3pvbnkuXG4iCisKKyMuIHR5cGU6IFNTCisjOiBkc2VsZWN0LjE6Mjk0CisjLCBuby13cmFwCittc2dpZCAiQ3Vyc29yIGFuZCBzY3JlZW4gbW92ZW1lbnQiCittc2dzdHIgIlByemVzdXdhbmllIGt1cnNvcmEgaSBla3JhbnUiCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToyOTkKK21zZ2lkICIiCisiVGhlIHBhY2thZ2Ugc2VsZWN0aW9uIGxpc3QgYW5kIHRoZSBkZXBlbmRlbmN5IGNvbmZsaWN0IHJlc29sdXRpb24gc2NyZWVucyAiCisiY2FuIGJlIG5hdmlnYXRlZCB1c2luZyBtb3Rpb24gY29tbWFuZHMgbWFwcGVkIHRvIHRoZSBmb2xsb3dpbmcga2V5czoiCittc2dzdHIgIiIKKyJFa3JhbiB3eWJvcnUgcGFraWV0w7N3IG9yYXogZWtyYW4gcm96d2nEhXp5d2FuaWEgemFsZcW8bm/Fm2NpIG1vxbxuYSBwcnplc3V3YcSHICIKKyJ1xbx5d2FqxIVjIHBvbGVjZcWEIHByenlwaXNhbnljaCBkbyBuYXN0xJlwdWrEhWN5Y2gga2xhd2lzenk6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MzE2CisjLCBuby13cmFwCittc2dpZCAiIgorIiAgQjxwLCBVcCwgaz4gICAgICAgICAgIG1vdmUgY3Vyc29yIGJhciB1cFxuIgorIiAgQjxuLCBEb3duLCBqPiAgICAgICAgIG1vdmUgY3Vyc29yIGJhciBkb3duXG4iCisiICBCPFAsIFBndXAsIEJhY2tzcGFjZT4gc2Nyb2xsIGxpc3QgMSBwYWdlIHVwXG4iCisiICBCPE4sIFBnZG4sIFNwYWNlPiAgICAgc2Nyb2xsIGxpc3QgMSBwYWdlIGRvd25cbiIKKyIgIEI8XnA+ICAgICAgICAgICAgICAgICBzY3JvbGwgbGlzdCAxIGxpbmUgdXBcbiIKKyIgIEI8Xm4+ICAgICAgICAgICAgICAgICBzY3JvbGwgbGlzdCAxIGxpbmUgZG93blxuIgorIiAgQjx0LCBIb21lPiAgICAgICAgICAgIGp1bXAgdG8gdG9wIG9mIGxpc3RcbiIKKyIgIEI8ZSwgRW5kPiAgICAgICAgICAgICBqdW1wIHRvIGVuZCBvZiBsaXN0XG4iCisiICBCPHU+ICAgICAgICAgICAgICAgICAgc2Nyb2xsIGluZm8gMSBwYWdlIHVwXG4iCisiICBCPGQ+ICAgICAgICAgICAgICAgICAgc2Nyb2xsIGluZm8gMSBwYWdlIGRvd25cbiIKKyIgIEI8XnU+ICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyAxIGxpbmUgdXBcbiIKKyIgIEI8XmQ+ICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyAxIGxpbmUgZG93blxuIgorIiAgQjxCLCBMZWZ0LWFycm93PiAgICAgIHBhbiBkaXNwbGF5IDEvMyBzY3JlZW4gbGVmdFxuIgorIiAgQjxGLCBSaWdodC1hcnJvdz4gICAgIHBhbiBkaXNwbGF5IDEvMyBzY3JlZW4gcmlnaHRcbiIKKyIgIEI8XmI+ICAgICAgICAgICAgICAgICBwYW4gZGlzcGxheSAxIGNoYXJhY3RlciBsZWZ0XG4iCisiICBCPF5mPiAgICAgICAgICAgICAgICAgcGFuIGRpc3BsYXkgMSBjaGFyYWN0ZXIgcmlnaHRcbiIKK21zZ3N0ciAiIgorIiAgQjxwLCBVcCwgaz4gICAgICAgICAgIHByemVzdW5pxJljaWUgcGFza2Ega3Vyc29yYSB3IGfDs3LEmVxuIgorIiAgQjxuLCBEb3duLCBqPiAgICAgICAgIHByemVzdW5pxJljaWUgcGFza2Ega3Vyc29yYSB3IGTDs8WCXG4iCisiICBCPFAsIFBndXAsIEJhY2tzcGFjZT4gcHJ6ZXN1bmnEmWNpZSBsaXN0eSAxIHN0cm9uxJkgdyBnw7NyxJlcbiIKKyIgIEI8TiwgUGdkbiwgU3BhY2U+ICAgICBwcnplc3VuacSZY2llIGxpc3R5IDEgc3Ryb27EmSB3IGTDs8WCXG4iCisiICBCPF5wPiAgICAgICAgICAgICAgICAgcHJ6ZXN1bmnEmWNpZSBsaXN0eSAxIGxpbmnEmSB3IGfDs3LEmVxuIgorIiAgQjxebj4gICAgICAgICAgICAgICAgIHByemVzdW5pxJljaWUgbGlzdHkgMSBsaW5pxJkgdyBkw7PFglxuIgorIiAgQjx0LCBIb21lPiAgICAgICAgICAgIHNrb2sgbmEgcG9jesSFdGVrIGxpc3R5XG4iCisiICBCPGUsIEVuZD4gICAgICAgICAgICAgc2tvayBuYSBrb25pZWMgbGlzdHlcbiIKKyIgIEI8dT4gICAgICAgICAgICAgICAgICBwcnplc3VuacSZY2llIGluZm9ybWFjamkgMSBzdHJvbsSZIHcgZ8OzcsSZXG4iCisiICBCPGQ+ICAgICAgICAgICAgICAgICAgcHJ6ZXN1bmnEmWNpZSBpbmZvcm1hY2ppIDEgc3Ryb27EmSB3IGTDs8WCXG4iCisiICBCPF51PiAgICAgICAgICAgICAgICAgcHJ6ZXN1bmnEmWNpZSBpbmZvcm1hY2ppIDEgbGluacSZIHcgZ8OzcsSZXG4iCisiICBCPF5kPiAgICAgICAgICAgICAgICAgcHJ6ZXN1bmnEmWNpZSBpbmZvcm1hY2ppIDEgbGluacSZIHcgZMOzxYJcbiIKKyIgIEI8QiwgTGVmdC1hcnJvdz4gICAgICBwcnplc3VuacSZY2llIGVrcmFudSBvIDEvMyBla3JhbnUgdyBsZXdvXG4iCisiICBCPEYsIFJpZ2h0LWFycm93PiAgICAgcHJ6ZXN1bmnEmWNpZSBla3JhbnUgbyAxLzMgZWtyYW51IHcgcHJhd29cbiIKKyIgIEI8XmI+ICAgICAgICAgICAgICAgICBwcnplc3VuacSZY2llIGVrcmFudSBvIDEgem5hayB3IGxld29cbiIKKyIgIEI8XmY+ICAgICAgICAgICAgICAgICBwcnplc3VuacSZY2llIGVrcmFudSBvIDEgem5hayB3IHByYXdvXG4iCisKKyMuIHR5cGU6IFNTCisjOiBkc2VsZWN0LjE6MzE3CisjLCBuby13cmFwCittc2dpZCAiU2VhcmNoaW5nIGFuZCBzb3J0aW5nIgorbXNnc3RyICJXeXN6dWtpd2FuaWUgaSBzb3J0b3dhbmllIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MzMxCittc2dpZCAiIgorIlRoZSBsaXN0IG9mIHBhY2thZ2VzIGNhbiBiZSBzZWFyY2hlZCBieSBwYWNrYWdlIG5hbWUuIFRoaXMgaXMgZG9uZSBieSAiCisicHJlc3NpbmcgQjwnLyc+LCBhbmQgdHlwaW5nIGEgc2ltcGxlIHNlYXJjaCBzdHJpbmcuIFRoZSBzdHJpbmcgaXMgIgorImludGVycHJldGVkIGFzIGEgQjxyZWdleD4oNykgIHJlZ3VsYXIgZXhwcmVzc2lvbi4gIElmIHlvdSBhZGQgQjwnL2QnPiB0byB0aGUgIgorInNlYXJjaCBleHByZXNzaW9uLCBkc2VsZWN0IHdpbGwgYWxzbyBzZWFyY2ggaW4gZGVzY3JpcHRpb25zLiBJZiB5b3UgYWRkIEI8Jy8iCisiaSc+IHRoZSBzZWFyY2ggd2lsbCBiZSBjYXNlIGluc2Vuc2l0aXZlLiAgWW91IG1heSBjb21iaW5lIHRoZXNlIHR3byBzdWZmaXhlcyAiCisibGlrZSB0aGlzOiBCPCcvaWQnPi4gIFJlcGVhdGVkIHNlYXJjaGluZyBpcyBhY2NvbXBsaXNoZWQgYnkgcmVwZWF0ZWRseSAiCisicHJlc3NpbmcgdGhlIEI8J24nPiBvciBCPCdcXGUnPiBrZXlzLCB1bnRpbCB0aGUgd2FudGVkIHBhY2thZ2UgaXMgZm91bmQuICBJZiAiCisidGhlIHNlYXJjaCByZWFjaGVzIHRoZSBib3R0b20gb2YgdGhlIGxpc3QsIGl0IHdyYXBzIHRvIHRoZSB0b3AgYW5kIGNvbnRpbnVlcyAiCisic2VhcmNoaW5nIGZyb20gdGhlcmUuIgorbXNnc3RyICIiCisiTGlzdMSZIHBha2lldMOzdyBtb8W8bmEgcHJ6ZXN6dWtpd2HEhyBwbyBuYXp3aWUgcGFraWV0dS4gTW/FvG5hIHRvIHpyb2JpxIcsICIKKyJwcnp5Y2lza2FqxIVjIEI8XCIvXCI+IGkgd3Bpc3VqxIVjIHRla3N0IHd5c3p1a2l3YW5pYSwga3TDs3J5IGplc3QgIgorImludGVycHJldG93YW55IGpha28gd3lyYcW8ZW5pZSByZWd1bGFybmUgQjxyZWdleD4oNykuIERvZGFuaWUgQjxcIi9kXCI+IGRvICIKKyLFgmHFhGN1Y2hhIHd5c3p1a2l3YW5pYSwgc3Bvd29kdWplIHByemVzenVraXdhbmllIHLDs3duaWXFvCBvcGlzw7N3LiBEb2RhbmllIEI8XCIvIgorImlcIj4gc3Bvd29kdWplIGlnbm9yb3dhbmllIHdpZWxrb8WbY2kgem5ha8OzdyBwb2RjemFzIHd5c3p1a2l3YW5pYS4gTW/FvG5hICIKKyLFgsSFY3p5xIcgdGUgc3VmaWtzeSwgbmEgcHJ6eWvFgmFkIHRhazogQjxcIi9pZFwiPi4gUG93dMOzcm5lIHd5c3p1a2l3YW5pZSAiCisibmFzdMSZcHVqZSBwcnpleiB3aWVsb2tyb3RuZSBuYWNpc2thbmllIGtsYXdpc3p5IEI8XCJuXCI+IGx1YiBCPFwiXFxlXCI+LCBhxbwgIgorImRvIHpuYWxlemllbmlhIHBvc3p1a2l3YW5lZ28gcGFraWV0dS4gUG8gb3NpxIVnbmnEmWNpdSBrb8WEY2EgbGlzdHksICIKKyJwb3N6dWtpd2FuaWUgamVzdCBrb250eW51b3dhbmUgb2QgcG9jesSFdGt1IGxpc3R5LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjMzOAorIywgbm8td3JhcAorbXNnaWQgIiIKKyJUaGUgbGlzdCBzb3J0IG9yZGVyIGNhbiBiZSB2YXJpZWQgYnkgcHJlc3NpbmdcbiIKKyJ0aGUgQjwnbyc+IGFuZCBCPCdPJz4ga2V5cyByZXBlYXRlZGx5LlxuIgorIlRoZSBmb2xsb3dpbmcgbmluZSBzb3J0IG9yZGVyaW5ncyBjYW4gYmUgc2VsZWN0ZWQ6XG4iCisiIGFscGhhYmV0ICAgICAgICAgIGF2YWlsYWJsZSAgICAgICAgICAgc3RhdHVzXG4iCisiIHByaW9yaXR5K3NlY3Rpb24gIGF2YWlsYWJsZStwcmlvcml0eSAgc3RhdHVzK3ByaW9yaXR5XG4iCisiIHNlY3Rpb24rcHJpb3JpdHkgIGF2YWlsYWJsZStzZWN0aW9uICAgc3RhdHVzK3NlY3Rpb25cbiIKK21zZ3N0ciAiIgorIlBvcnrEhWRlayBzb3J0b3dhbmlhIGxpc3R5IG1vxbxuYSB6bWllbmlhxIcgcHJ6ZXogd2llbG9rcm90bmUgbmFjaXNrYW5pZVxuIgorImtsYXdpc3p5IEI8XCJvXCI+IGkgQjxcIk9cIj4uXG4iCisiTW/FvG5hIHd5YnJhxIcgamVkZW4geiBkemlld2nEmWNpdSBuYXN0xJlwdWrEhWN5Y2ggcG9yesSFZGvDs3cgc29ydG93YW5pYTpcbiIKKyIgYWxmYWJldHljem55ICAgICAgZG9zdMSZcG55ICAgICAgICAgICAgc3RhblxuIgorIiBwcmlvcnl0ZXQrc2VrY2phICBkb3N0xJlwbnkrcHJpb3J5dGV0ICBzdGFuK3ByaW9yeXRldFxuIgorIiBzZWtjamErcHJpb3J5dGV0ICBkb3N0xJlwbnkrc2VrY2phICAgICBzdGFuK3Nla2NqYVxuIgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MzQxCittc2dpZCAiIgorIldoZXJlIG5vdCBsaXN0ZWQgYWJvdmUgZXhwbGljaXRseSwgYWxwaGFiZXRpYyBvcmRlciBpcyB1c2VkIGFzIHRoZSBmaW5hbCAiCisic3Vib3JkZXJpbmcgc29ydCBrZXkuIgorbXNnc3RyICIiCisiVGFtIGdkemllIG5pZSBqZXN0IHRvIHBvd3nFvGVqIHd5cmHFum5pZSBwb3dpZWR6aWFuZSwgcG9yesSFZGVrIGFsZmFiZXR5Y3pueSAiCisiamVzdCB1xbx5d2FueSBqYWtvIGtsdWN6IHBvZHd5c3p1a2l3YW5pYS4iCisKKyMuIHR5cGU6IFNTCisjOiBkc2VsZWN0LjE6MzQyCisjLCBuby13cmFwCittc2dpZCAiQWx0ZXJpbmcgc2VsZWN0aW9ucyIKK21zZ3N0ciAiWm1pZW5pYW5pZSB3eWJvcnUgcGFraWV0w7N3IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MzUxCisjLCBuby13cmFwCittc2dpZCAiIgorIlRoZSByZXF1ZXN0ZWQgc2VsZWN0aW9uIHN0YXRlIG9mIGluZGl2aWR1YWwgcGFja2FnZXMgbWF5IGJlXG4iCisiYWx0ZXJlZCB3aXRoIHRoZSBmb2xsb3dpbmcgY29tbWFuZHM6XG4iCisiICBCPCssIEluc2VydD4gICAgaW5zdGFsbCBvciB1cGdyYWRlXG4iCisiICBCPD0sIEg+ICAgICAgICAgaG9sZCBpbiBwcmVzZW50IHN0YXRlIGFuZCB2ZXJzaW9uXG4iCisiICBCPDosIEc+ICAgICAgICAgdW5ob2xkOiB1cGdyYWRlIG9yIGxlYXZlIHVuaW5zdGFsbGVkXG4iCisiICBCPC0sIERlbGV0ZT4gICAgcmVtb3ZlLCBidXQgbGVhdmUgY29uZmlndXJhdGlvblxuIgorIiAgQjxfPiAgICAgICAgICAgIHJlbW92ZSAmIHB1cmdlIGNvbmZpZ3VyYXRpb25cbiIKK21zZ3N0ciAiIgorIsW7xIVkYW55IHN0YW4gd3lib3J1IGluZHl3aWR1YWxueWNoIHBha2lldMOzdyBtb8W8bmEgem1pZW5pxIdcbiIKKyJ6YSBwb21vY8SFIG5hc3TEmXB1asSFY3ljaCBwb2xlY2XFhDpcbiIKKyIgIEI8KywgSW5zZXJ0PiAgICBpbnN0YWxhY2phIGx1YiBha3R1YWxpemFjamFcbiIKKyIgIEI8PSwgSD4gICAgICAgICB3c3RyenltYW5pZSBwYWtpZXR1IHcgb2JlY255bSBzdGFuaWUgaSB3ZXJzamlcbiIKKyIgIEI8OiwgRz4gICAgICAgICB6YXByemVzdGFuaWUgd3N0cnp5bWFuaWE6IGFrdHVhbGl6YWNqYSBwYWtpZXR1IGx1YiBwb3pvc3Rhd2llbmllIGdvIGpha28gbmllemFpbnN0YWxvd2FuZWdvXG4iCisiICBCPC0sIERlbGV0ZT4gICAgdXN1bmnEmWNpZSwgYWxlIHogem9zdGF3aWVuaWVtIHBsaWvDs3cga29uZmlndXJhY3lqbnljaFxuIgorIiAgQjxfPiAgICAgICAgICAgIHVzdW5pxJljaWUgeiB3eWN6eXN6Y3plbmllbSBwbGlrw7N3IGtvbmZpZ3VyYWN5am55Y2hcbiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjM1NQorbXNnaWQgIiIKKyJXaGVuIHRoZSBjaGFuZ2UgcmVxdWVzdCByZXN1bHRzIGluIG9uZSBvciBtb3JlIHVuc2F0aXNmaWVkIGRlcGVuZHMgb3IgIgorImNvbmZsaWN0cywgQjxkc2VsZWN0PiBwcm9tcHRzIHRoZSB1c2VyIHdpdGggYSBkZXBlbmRlbmN5IHJlc29sdXRpb24gc2NyZWVuLiAiCisiVGhpcyB3aWxsIGJlIGZ1cnRoZXIgZXhwbGFpbmVkIGJlbG93LiIKK21zZ3N0ciAiIgorIktpZWR5IHcgd3luaWt1IHptaWFuIHBvd3N0YWrEhSBqZWRuYSBsdWIgd2nEmWNlaiBuaWVzcGXFgm5pb255Y2ggemFsZcW8bm/Fm2NpICIKKyJhbGJvIGtvbmZsaWt0eSwgQjxkc2VsZWN0PiB3ecWbd2lldGxhIHXFvHl0a293bmlrb3dpIGVrcmFuIHJvendpxIV6eXdhbmlhICIKKyJ6YWxlxbxub8WbY2kuIELEmWR6aWUgb24gb2JqYcWbbmlvbnkgbmllY28gcMOzxbpuaWVqLiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjM2MAorbXNnaWQgIiIKKyJJdCBpcyBhbHNvIHBvc3NpYmxlIHRvIGFwcGx5IHRoZXNlIGNvbW1hbmRzIHRvIGdyb3VwcyBvZiBwYWNrYWdlIHNlbGVjdGlvbnMsICIKKyJieSBwb2ludGluZyB0aGUgY3Vyc29yIGJhciBvbnRvIGEgZ3JvdXAgaGVhZGVyLiBUaGUgZXhhY3QgZ3JvdXBpbmcgb2YgIgorInBhY2thZ2VzIGlzIGRlcGVuZGVudCBvbiB0aGUgY3VycmVudCBsaXN0IG9yZGVyaW5nIHNldHRpbmdzLiIKK21zZ3N0ciAiIgorIlBvd3nFvHN6ZSBwb2xlY2VuaWEgbW/FvG5hIHphc3Rvc293YcSHIHLDs3duaWXFvCBkbyBncnVwIHBha2lldMOzdyAtIHByemV6ICIKKyJ1c3Rhd2llbmllIHBhc2thIGt1cnNvcmEgbmEgbmFnxYLDs3drdSBncnVweS4gU3Bvc8OzYiBncnVwb3dhbmlhIHBha2lldMOzdyAiCisiemFsZcW8eSBvZCB1c3Rhd2llxYQgc29ydG93YW5pYSBsaXN0eSBwYWtpZXTDs3cuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MzY2Cittc2dpZCAiIgorIlByb3BlciBjYXJlIHNob3VsZCBiZSB0YWtlbiB3aGVuIGFsdGVyaW5nIGxhcmdlIGdyb3VwcyBvZiBzZWxlY3Rpb25zLCAiCisiYmVjYXVzZSB0aGlzIGNhbiBpbnN0YW50YW5lb3VzbHkgY3JlYXRlIGxhcmdlIG51bWJlcnMgb2YgdW5yZXNvbHZlZCBkZXBlbmRzICIKKyJvciBjb25mbGljdHMsIGFsbCBvZiB3aGljaCB3aWxsIGJlIGxpc3RlZCBpbiBvbmUgZGVwZW5kZW5jeSByZXNvbHV0aW9uICIKKyJzY3JlZW4sIG1ha2luZyB0aGVtIHZlcnkgaGFyZCB0byBoYW5kbGUuIEluIHByYWN0aWNlLCBvbmx5IGhvbGQgYW5kIHVuaG9sZCAiCisib3BlcmF0aW9ucyBhcmUgdXNlZnVsIHdoZW4gYXBwbGllZCB0byBncm91cHMuIgorbXNnc3RyICIiCisiTmFsZcW8eSB6YWNob3dhxIcgbmFsZcW8eXTEhSBvc3Ryb8W8bm/Fm8SHLCB6bWllbmlhasSFYyBkdcW8ZSBncnVweSBwYWtpZXTDs3csICIKKyJwb25pZXdhxbwgbW/FvGUgdG8gb3puYWN6YcSHIG5hdHljaG1pYXN0b3dlIHV0d29yemVuaWUgZHXFvGVqIGxpY3pieSAiCisibmllc3BlxYJuaW9ueWNoIHphbGXFvG5vxZtjaSBpIGtvbmZsaWt0w7N3LCBiYXJkem8gdHJ1ZG5laiBkbyByb3p3acSFemFuaWEuIFcgIgorInByYWt0eWNlIHR5bGtvIG9wZXJhY2plIHdzdHJ6eW1hbmlhIGkgemFwcnplc3RhbmlhIHdzdHJ6eW1hbmlhIHPEhSB1xbx5dGVjem5lICIKKyJ3IG9kbmllc2llbml1IGRvIGdydXAgcGFraWV0w7N3LiIKKworIy4gdHlwZTogU1MKKyM6IGRzZWxlY3QuMTozNjcKKyMsIG5vLXdyYXAKK21zZ2lkICJSZXNvbHZpbmcgZGVwZW5kcyBhbmQgY29uZmxpY3RzIgorbXNnc3RyICJSb3p3acSFenl3YW5pZSB6YWxlxbxub8WbY2kgaSBrb25mbGlrdMOzdyIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjM3MgorbXNnaWQgIiIKKyJXaGVuIHRoZSBjaGFuZ2UgcmVxdWVzdCByZXN1bHRzIGluIG9uZSBvciBtb3JlIHVuc2F0aXNmaWVkIGRlcGVuZHMgb3IgIgorImNvbmZsaWN0cywgQjxkc2VsZWN0PiBwcm9tcHRzIHRoZSB1c2VyIHdpdGggYSBkZXBlbmRlbmN5IHJlc29sdXRpb24gc2NyZWVuLiAiCisiRmlyc3QgaG93ZXZlciwgYW4gaW5mb3JtYXRpdmUgaGVscCBzY3JlZW4gaXMgZGlzcGxheWVkLiIKK21zZ3N0ciAiIgorIktpZWR5IHcgd3luaWt1IHptaWFuIHBvd3N0YWrEhSBqZWRuYSBsdWIgd2nEmWNlaiBuaWVzcGXFgm5pb255Y2ggemFsZcW8bm/Fm2NpICIKKyJhbGJvIGtvbmZsaWt0eSwgQjxkc2VsZWN0PiB3ecWbd2lldGxhIHXFvHl0a293bmlrb3dpIGVrcmFuIHJvendpxIV6eXdhbmlhICIKKyJ6YWxlxbxub8WbY2kuIE5hanBpZXJ3LCBqZWRuYWvFvGUsIHd5xZt3aWV0bGFueSBqZXN0IGVrcmFuIHBvbW9jeS4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTozNzkKK21zZ2lkICIiCisiVGhlIHRvcCBoYWxmIG9mIHRoaXMgc2NyZWVuIGxpc3RzIGFsbCB0aGUgcGFja2FnZXMgdGhhdCB3aWxsIGhhdmUgdW5yZXNvbHZlZCAiCisiZGVwZW5kcyBvciBjb25mbGljdHMsIGFzIGEgcmVzdWx0IG9mIHRoZSByZXF1ZXN0ZWQgY2hhbmdlLCBhbmQgYWxsIHRoZSAiCisicGFja2FnZXMgd2hvc2UgaW5zdGFsbGF0aW9uIGNhbiByZXNvbHZlIGFueSBvZiB0aGVzZSBkZXBlbmRzIG9yIHdob3NlICIKKyJyZW1vdmFsIGNhbiByZXNvbHZlIGFueSBvZiB0aGUgY29uZmxpY3RzLiAgVGhlIGJvdHRvbSBoYWxmIGRlZmF1bHRzIHRvIHNob3cgIgorInRoZSBkZXBlbmRzIG9yIGNvbmZsaWN0cyB0aGF0IGNhdXNlIHRoZSBjdXJyZW50bHkgc2VsZWN0ZWQgcGFja2FnZSB0byBiZSAiCisibGlzdGVkLiIKK21zZ3N0ciAiIgorIlcgZ8Ozcm5laiBwb8WCb3dpZSBla3JhbnUgcm96d2nEhXp5d2FuaWEgemFsZcW8bm/Fm2NpIHd5xZt3aWV0bG9uZSBzxIUgd3N6eXN0a2llIHRlICIKKyJwYWtpZXR5LCBrdMOzcmUgdyB3eW5pa3UgemFzdG9zb3dhbmlhIMW8xIVkYW55Y2ggcHJ6ZXogdcW8eXRrb3duaWthIHptaWFuICIKKyJtaWHFgnlieSBuaWVzcGXFgm5pb25lIHphbGXFvG5vxZtjaSBhbGJvIGtvbmZsaWt0eSwgb3JheiB3c3p5c3RraWUgdGUgcGFraWV0eSwgIgorImt0w7NyeWNoIGluc3RhbGFjamEgc3BlxYJuacWCYWJ5IGt0w7NyZcWbIHogdHljaCB6YWxlxbxub8WbY2ksIGx1YiBrdMOzcnljaCAiCisidXN1bmnEmWNpZSByb3p3acSFemHFgm9ieSBrb25mbGlrdHkuIFcgZG9sbmVqIHBvxYJvd2llIHd5xZt3aWV0bG9uZSBzxIUgdGUgIgorInphbGXFvG5vxZtjaSBsdWIga29uZmxpa3R5LCBrdMOzcmUgc3Bvd29kb3dhxYJ5LCDFvGUgb2JlY25pZSB3eWJyYW55IHBha2lldCAiCisiem9zdGHFgiB1bWllc3pjem9ueSBuYSBsacWbY2llLiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjM4NQorbXNnaWQgIiIKKyJXaGVuIHRoZSBzdWJsaXN0IG9mIHBhY2thZ2VzIGlzIGRpc3BsYXllZCBpbml0aWFsbHksIEI8ZHNlbGVjdD4gbWF5IGhhdmUgIgorImFscmVhZHkgc2V0IHRoZSByZXF1ZXN0ZWQgc2VsZWN0aW9uIHN0YXR1cyBvZiBzb21lIG9mIHRoZSBsaXN0ZWQgcGFja2FnZXMsICIKKyJpbiBvcmRlciB0byByZXNvbHZlIHRoZSBkZXBlbmRzIG9yIGNvbmZsaWN0cyB0aGF0IGNhdXNlZCB0aGUgZGVwZW5kZW5jeSAiCisicmVzb2x1dGlvbiBzY3JlZW4gdG8gYmUgZGlzcGxheWVkLiBVc3VhbGx5LCBpdCBpcyBiZXN0IHRvIGZvbGxvdyB1cCB0aGUgIgorInN1Z2dlc3Rpb25zIG1hZGUgYnkgQjxkc2VsZWN0Pi4iCittc2dzdHIgIiIKKyJXecWbd2lldGxhasSFYyBwb2N6xIV0a293xIUgcG9kbGlzdMSZIHBha2lldMOzdywgQjxkc2VsZWN0PiBtw7NnxYIgdXN0YXdpxIcganXFvCBwZXduZSAiCisixbzEhWRhbmUgd3lib3J5IG5pZWt0w7NyeWNoIHNwb8WbcsOzZCB3eWxpc3Rvd2FueWNoIHBha2lldMOzdywgdyBjZWx1IHJvendpxIV6YW5pYSAiCisiemFsZcW8bm/Fm2NpIGx1YiBrb25mbGlrdMOzdywga3TDs3JlIGJ5xYJ5IHByenljenluxIUgd3nFm3dpZXRsZW5pYSBla3JhbnUgIgorInJvendpxIV6eXdhbmlhIHphbGXFvG5vxZtjaS4gWmF6d3ljemFqIG5hamxlcHN6eW0gd3lqxZtjaWVtIGplc3QgemFzdG9zb3dhbmllICIKKyJzacSZIGRvIHN1Z2VzdGlpIHpyb2Jpb255Y2ggcHJ6ZXogQjxkc2VsZWN0Pi4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTozOTMKK21zZ2lkICIiCisiVGhlIGxpc3RlZCBwYWNrYWdlcycgc2VsZWN0aW9uIHN0YXRlIG1heSBiZSByZXZlcnRlZCB0byB0aGUgb3JpZ2luYWwgIgorInNldHRpbmdzLCBhcyB0aGV5IHdlcmUgYmVmb3JlIHRoZSB1bnJlc29sdmVkIGRlcGVuZHMgb3IgY29uZmxpY3RzIHdlcmUgIgorImNyZWF0ZWQsIGJ5IHByZXNzaW5nIHRoZSBCPCdSJz4ga2V5LiBCeSBwcmVzc2luZyB0aGUgQjwnRCc+IGtleSwgdGhlICIKKyJhdXRvbWF0aWMgc3VnZ2VzdGlvbnMgYXJlIHJlc2V0LCBidXQgdGhlIGNoYW5nZSB0aGF0IGNhdXNlZCB0aGUgZGVwZW5kZW5jeSAiCisicmVzb2x1dGlvbiBzY3JlZW4gdG8gYmUgcHJvbXB0ZWQgaXMga2VwdCBhcyByZXF1ZXN0ZWQuICBGaW5hbGx5LCBieSBwcmVzc2luZyAiCisiQjwnVSc+LCB0aGUgc2VsZWN0aW9ucyBhcmUgYWdhaW4gc2V0IHRvIHRoZSBhdXRvbWF0aWMgc3VnZ2VzdGlvbiB2YWx1ZXMuIgorbXNnc3RyICIiCisiTW/FvGxpd2UgamVzdCBwcnp5d3LDs2NlbmllIHN0YW51IHd5Ym9yw7N3IHd5bGlzdG93YW55Y2ggcGFraWV0w7N3IGRvICIKKyJwb3ByemVkbmljaCB1c3Rhd2llxYQsIHphbmltIHpvc3RhxYJ5IHN0d29yem9uZSBuaWVyb3p3acSFemFuZSB6YWxlxbxub8WbY2kgbHViICIKKyJrb25mbGlrdHkgLSBwcnpleiBuYWNpxZtuacSZY2llIGtsYXdpc3phIEI8XCJSXCI+LiBOYWNpc2thasSFYyBrbGF3aXN6IEI8XCJEIgorIlwiPiwgc3Bvd29kdWplbXkgb2R6bmFjemVuaWUgYXV0b21hdHljem55Y2ggcHJvcG96eWNqaSBpIGplc3QgcHJ6eSB0eW0gIgorInphY2hvd3l3YW5hIHptaWFuYSwga3TDs3JhIHNwb3dvZG93YcWCYSB3ecWbd2lldGxlbmllIGVrcmFudSByb3p3acSFenl3YW5pYSAiCisiemFsZcW8bm/Fm2NpLiBXIGtvxYRjdSwgcG8gbmFjacWbbmnEmWNpdSBrbGF3aXN6YSBCPFwiVVwiPiB3eWJvcnkgc8SFIHBvbm93bmllICIKKyJ1c3Rhd2lhbmUgbmEgc3VnZXJvd2FuZSB3YXJ0b8WbY2kuIgorCisjLiB0eXBlOiBTUworIzogZHNlbGVjdC4xOjM5NAorIywgbm8td3JhcAorbXNnaWQgIkVzdGFibGlzaGluZyB0aGUgcmVxdWVzdGVkIHNlbGVjdGlvbnMiCittc2dzdHIgIlVzdGFuYXdpYW5pZSDFvMSFZGFueWNoIHd5Ym9yw7N3IHBha2lldMOzdyIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjQwMQorbXNnaWQgIiIKKyJCeSBwcmVzc2luZyBCPGVudGVyPiwgdGhlIGN1cnJlbnRseSBkaXNwbGF5ZWQgc2V0IG9mIHNlbGVjdGlvbnMgaXMgYWNjZXB0ZWQuICIKKyJJZiBCPGRzZWxlY3Q+IGRldGVjdHMgbm8gdW5yZXNvbHZlZCBkZXBlbmRzIGFzIGEgcmVzdWx0IG9mIHRoZSByZXF1ZXN0ZWQgIgorInNlbGVjdGlvbnMsIHRoZSBuZXcgc2VsZWN0aW9ucyB3aWxsIGJlIHNldC4gIEhvd2V2ZXIsIGlmIHRoZXJlIGFyZSBhbnkgIgorInVucmVzb2x2ZWQgZGVwZW5kcywgQjxkc2VsZWN0PiB3aWxsIGFnYWluIHByb21wdCB0aGUgdXNlciB3aXRoIGEgZGVwZW5kZW5jeSAiCisicmVzb2x1dGlvbiBzY3JlZW4uIgorbXNnc3RyICIiCisiUG8gbmFjacWbbmnEmWNpdSBrbGF3aXN6YSBCPGVudGVyPiwgb2JlY25pZSB3ecWbd2lldGxvbnkgemJpw7NyIHd5Ym9yw7N3IHpvc3RhamUgIgorInphYWtjZXB0b3dhbnkuIEplxbxlbGkgQjxkc2VsZWN0PiBuaWUgd3lrcnlqZSBuaWVzcGXFgm5pb255Y2ggemFsZcW8bm/Fm2NpICIKKyJwb3dzdGHFgnljaCB3IHd5bmlrdSB6YWFrY2VwdG93YW5pYSDFvMSFZGFueWNoIHd5Ym9yw7N3LCB0byB6b3N0YW7EhSBvbmUgIgorInVzdGF3aW9uZS4gSmVkbmFrxbxlLCBqZcW8ZWxpIGLEmWTEhSBuaWVyb3p3acSFemFuZSB6YWxlxbxub8WbY2ksIHRvIEI8ZHNlbGVjdD4gIgorInBvbm93bmllIHd5xZt3aWV0bGkgZWtyYW4gcm96d2nEhXp5d2FuaWEgemFsZcW8bm/Fm2NpLiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjQwNworbXNnaWQgIiIKKyJUbyBhbHRlciBhIHNldCBvZiBzZWxlY3Rpb25zIHRoYXQgY3JlYXRlcyB1bnJlc29sdmVkIGRlcGVuZHMgb3IgY29uZmxpY3RzICIKKyJhbmQgZm9yY2luZyBCPGRzZWxlY3Q+IHRvIGFjY2VwdCBpdCwgcHJlc3MgdGhlIEI8J1EnPiBrZXkuIFRoaXMgc2V0cyB0aGUgIgorInNlbGVjdGlvbnMgYXMgc3BlY2lmaWVkIGJ5IHRoZSB1c2VyLCB1bmNvbmRpdGlvbmFsbHkuIEdlbmVyYWxseSwgZG9uJ3QgZG8gIgorInRoaXMgdW5sZXNzIHlvdSd2ZSByZWFkIHRoZSBmaW5lIHByaW50LiIKK21zZ3N0ciAiIgorIkFieSB6bWllbmnEhyB6YmnDs3Igd3lib3LDs3csIGt0w7NyeSBwb3dvZHVqZSBwb3dzdGFuaWUgbmllcm96d2nEhXphbnljaCAiCisiemFsZcW8bm/Fm2NpIGkgem11c2nEhyBCPGRzZWxlY3Q+IGRvIHphYWtjZXB0b3dhbmlhIGdvLCBuYWxlxbx5IG5hY2lzbsSFxIcga2xhd2lzeiAiCisiQjxcIlFcIj4uIFNwb3dvZHVqZSB0byBiZXp3YXJ1bmtvd2UgdXN0YXdpZW5pZSB3eWJvcsOzdyBwb2RhbnljaCBwcnpleiAiCisidcW8eXRrb3duaWthLiBPZ8OzbG5pZSwgbmllIG5hbGXFvHkgdGVnbyByb2JpxIcuIgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NDE0Cittc2dpZCAiIgorIlRoZSBvcHBvc2l0ZSBlZmZlY3QsIHRvIGJhY2sgb3V0IGFueSBzZWxlY3Rpb25zIGNoYW5nZSByZXF1ZXN0cyBhbmQgZ28gYmFjayAiCisidG8gdGhlIHByZXZpb3VzIGxpc3Qgb2Ygc2VsZWN0aW9ucywgaXMgYXR0YWluZWQgYnkgcHJlc3NpbmcgdGhlIEI8J1gnPiBvciAiCisiQjxlc2NhcGU+IGtleXMuIEJ5IHJlcGVhdGVkbHkgcHJlc3NpbmcgdGhlc2Uga2V5cywgYW55IHBvc3NpYmx5IGRldHJpbWVudGFsICIKKyJjaGFuZ2VzIHRvIHRoZSByZXF1ZXN0ZWQgcGFja2FnZSBzZWxlY3Rpb25zIGNhbiBiZSBiYWNrZWQgb3V0IGNvbXBsZXRlbHkgdG8gIgorInRoZSBsYXN0IGVzdGFibGlzaGVkIHNldHRpbmdzLiIKK21zZ3N0ciAiIgorIkFieSB1enlza2HEhyBwcnplY2l3bnkgZWZla3QgLSB3eWNvZmFuaWUgc2nEmSB6ZSB3c3p5c3RraWNoIHptaWFuIGkgcG93csOzY2VuaWUgIgorImRvIHBvcHJ6ZWRuaWVqIGxpc3R5IHd5Ym9yw7N3LCBuYWxlxbx5IG5hY2lzbsSFxIcga2xhd2lzemUgQjxcIlhcIj4gbHViICIKKyJCPGVzY2FwZT4uIFByemV6IHBvd3RhcnphasSFY2Ugc2nEmSBwcnp5Y2lza2FuaWUgdHljaCBrbGF3aXN6eSBtb8W8bmEgd3ljb2ZhxIcgIgorInNpxJkgemUgd3N6eXN0a2ljaCBwb3RlbmNqYWxuaWUgc3prb2RsaXd5Y2ggem1pYW4gdyB3eWJvcnplIHBha2lldMOzdyBhxbwgZG8gIgorIm9zdGF0bmllZ28gZG9icmVnbyB1c3Rhd2llbmlhLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjQyMQorbXNnaWQgIiIKKyJJZiB5b3UgbWlzdGFrZW5seSBlc3RhYmxpc2ggc29tZSBzZXR0aW5ncyBhbmQgd2lzaCB0byByZXZlcnQgYWxsIHRoZSAiCisic2VsZWN0aW9ucyB0byB3aGF0IGlzIGN1cnJlbnRseSBpbnN0YWxsZWQgb24gdGhlIHN5c3RlbSwgcHJlc3MgdGhlIEI8J0MnPiAiCisia2V5LiAgVGhpcyBpcyBzb21ld2hhdCBzaW1pbGFyIHRvIHVzaW5nIHRoZSB1bmhvbGQgY29tbWFuZCBvbiBhbGwgcGFja2FnZXMsICIKKyJidXQgcHJvdmlkZXMgYSBtb3JlIG9idmlvdXMgcGFuaWMgYnV0dG9uIGluIGNhc2VzIHdoZXJlIHRoZSB1c2VyIHByZXNzZWQgIgorIkI8ZW50ZXI+IGJ5IGFjY2lkZW50LiIKK21zZ3N0ciAiIgorIkplxbxlbGkgcGV3bmUgdXN0YXdpZW5pYSBwcnpleiBwb215xYJrxJkgem9zdGHFgnkgd8WCxIVjem9uZSBpIGlzdG5pZWplIHBvdHJ6ZWJhICIKKyJ3eWNvZmFuaWEgdHljaCB6bWlhbiBpIHptaWVuaWVuaWEgdXN0YXdpZcWEIG5hIHRha2llLCBqYWtpZSBzxIUgb2JlY25pZSB3ICIKKyJzeXN0ZW1pZSwgbmFsZcW8eSB1xbx5xIcgcHJ6eWNpc2t1IEI8XCJDXCI+LiBKZXN0IHRvIHRyb2NoxJkgcG9kb2JuZSBkbyAiCisicG9sZWNlbmlhIHVuaG9sZCB3eWRhbmVnbyBuYSB3c3p5c3RraWNoIHBha2lldGFjaCwgYWxlIGRvc3RhcmN6YSBiYXJkemllaiAiCisib2N6eXdpc3RlZ28gc3Bvc29idSBkemlhxYJhbmlhIHcgc3l0dWFjamksIGdkeSB1xbx5dGtvd25payBuYWNpc27EhcWCIEI8RW50ZXI+ICIKKyJwcnpleiBwb215xYJrxJkuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NDI4Cittc2dpZCAiIgorIklmIHNldCwgQjxkc2VsZWN0PiB3aWxsIHVzZSBpdCBhcyB0aGUgZGlyZWN0b3J5IGZyb20gd2hpY2ggdG8gcmVhZCB0aGUgdXNlciAiCisic3BlY2lmaWMgY29uZmlndXJhdGlvbiBmaWxlLiIKK21zZ3N0ciAiIgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NDM0Cittc2dpZCAiIgorIlRoZSBCPGRzZWxlY3Q+IHBhY2thZ2Ugc2VsZWN0aW9uIGludGVyZmFjZSBpcyBjb25mdXNpbmcgdG8gc29tZSBuZXcgdXNlcnMuICAiCisiUmVwb3J0ZWRseSwgaXQgZXZlbiBtYWtlcyBzZWFzb25lZCBrZXJuZWwgZGV2ZWxvcGVycyBjcnkuIgorbXNnc3RyICIiCisiRGxhIG5vd3ljaCB1xbx5dGtvd25pa8OzdywgQjxkc2VsZWN0PiBtb8W8ZSBiecSHIHRydWRueSBkbyBvcGFub3dhbmlhLiBQb2RvYm5vICIKKyJ6bXVzemEgZG8gcMWCYWN6dSBuYXdldCB3eXRyYXdueWNoIHdzcMOzxYJ0d8OzcmPDs3cgasSFZHJhIExpbnVrc2EuIgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NDM2Cittc2dpZCAiVGhlIGRvY3VtZW50YXRpb24gaXMgbGFja2luZy4iCittc2dzdHIgIkRva3VtZW50YWNqYSBqZXN0IHd5YnJha293YW5hLiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjQzOAorbXNnaWQgIlRoZXJlIGlzIG5vIGhlbHAgb3B0aW9uIGluIHRoZSBtYWluIG1lbnUuIgorbXNnc3RyICJCcmFrIG9wY2ppIFwicG9tb2NcIiB3IGfFgsOzd255bSBtZW51LiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjQ0MAorbXNnaWQgIlRoZSB2aXNpYmxlIGxpc3Qgb2YgYXZhaWxhYmxlIHBhY2thZ2VzIGNhbm5vdCBiZSByZWR1Y2VkLiIKK21zZ3N0ciAiTmllIG1vxbxuYSBvZ3JhbmljennEhyBsaXN0eSBkb3N0xJlwbnljaCBwYWtpZXTDs3cuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NDQ0Cittc2dpZCAiIgorIlRoZSBidWlsdCBpbiBhY2Nlc3MgbWV0aG9kcyBjYW4gbm8gbG9uZ2VyIHN0YW5kIHVwIHRvIGN1cnJlbnQgcXVhbGl0eSAiCisic3RhbmRhcmRzLiBVc2UgdGhlIGFjY2VzcyBtZXRob2QgcHJvdmlkZWQgYnkgYXB0LCBpdCBpcyBub3Qgb25seSBub3QgYnJva2VuLCAiCisiaXQgaXMgYWxzbyBtdWNoIG1vcmUgZmxleGlibGUgdGhhbiB0aGUgYnVpbHQgaW4gYWNjZXNzIG1ldGhvZHMuIgorbXNnc3RyICIiCisiV2J1ZG93YW5lIG1ldG9keSBkb3N0xJlwdSBuaWUgc8SFIHpnb2RuZSB6IG9iZWNueW1pIHN0YW5kYXJkYW1pIGpha2/Fm2NpLiAiCisiTmFsZcW8eSB1xbx5d2HEhyBtZXRvZHkgYXB0LCBrdMOzcmEgbmllIHR5bGtvIG5pZSBqZXN0IHplcHN1dGEsIGFsZSB0YWvFvGUgamVzdCBvICIKKyJ3aWVsZSBiYXJkemllaiBlbGFzdHljem5hIG5pxbwgbWV0b2R5IHdidWRvd2FuZS4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0NTAKK21zZ2lkICJCPGRwa2c+KDEpLCBCPGFwdC1nZXQ+KDgpLCBCPHNvdXJjZXMubGlzdD4oNSksIEI8ZGViPig1KS4iCittc2dzdHIgIkI8ZHBrZz4oMSksIEI8YXB0LWdldD4oOCksIEI8c291cmNlcy5saXN0Pig1KSwgQjxkZWI+KDUpLiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjQ1NQorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiQjxkc2VsZWN0PiB3YXMgd3JpdHRlbiBieSBJYW4gSmFja3NvbiAoaWphY2tzb25AZ251LmFpLm1pdC5lZHUpLiBGdWxsICIKKyN8ICJsaXN0IG9mIGNvbnRyaWJ1dG9ycyBtYXkgYmUgZm91bmQgaW4gYGRzZWxlY3QgLS1saWNlbnNlJy4iCittc2dpZCAiIgorIkI8ZHNlbGVjdD4gd2FzIHdyaXR0ZW4gYnkgSWFuIEphY2tzb24gKGlqYWNrc29uQGdudS5haS5taXQuZWR1KS4gRnVsbCBsaXN0ICIKKyJvZiBjb250cmlidXRvcnMgbWF5IGJlIGZvdW5kIGluICdkc2VsZWN0IC0tdmVyc2lvbicuIgorbXNnc3RyICIiCisiQjxkc2VsZWN0PiBuYXBpc2HFgiBJYW4gSmFja3NvbiAoaWphY2tzb25AZ251LmFpLm1pdC5lZHUpLiBQZcWCbsSFIGxpc3TEmSAiCisid3Nww7PFgnR3w7NyY8OzdyBtb8W8bmEgdXp5c2thxIcgd3lrb251asSFYyBcImRzZWxlY3QgLS1saWNlbnNlXCIuIgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NDU4Cittc2dpZCAiIgorIlRoaXMgbWFudWFsIHBhZ2Ugd2FzIHdyaXR0ZW4gYnkgSnVobyBWdW9yaSBFPGx0PmphdnVvcmlAY2MuaGVsc2lua2kuZmlFPGd0PiwgIgorIkpvc2lwIFJvZGluIGFuZCBKb29zdCBrb29pai4iCittc2dzdHIgIiIKKyJQb2RyxJljem5payBuYXBpc2FsaSBKdWhvIFZ1b3JpIEU8bHQ+amF2dW9yaUBjYy5oZWxzaW5raS5maUU8Z3Q+LCBKb3NpcCBSb2RpbiAiCisiaSBKb29zdCBrb29pai4iCisKKyMuIHR5cGU6IFRICisjOiBkc2VsZWN0LmNmZy41OjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkc2VsZWN0LmNmZyIKK21zZ3N0ciAiZHNlbGVjdC5jZmciCisKKyMuIHR5cGU6IFRICisjOiBkc2VsZWN0LmNmZy41OjEKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiMjAwOS0wMi0yNyIKK21zZ2lkICIyMDExLTA3LTAzIgorbXNnc3RyICIyMDA5LTAyLTI3IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LmNmZy41OjQKK21zZ2lkICJkc2VsZWN0LmNmZyAtIGRzZWxlY3QgY29uZmlndXJhdGlvbiBmaWxlIgorbXNnc3RyICJkc2VsZWN0LmNmZyAtIHBsaWsga29uZmlndXJhY3lqbnkgcHJvZ3JhbXUgZHNlbGVjdCAiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuY2ZnLjU6MTEKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlRoaXMgZmlsZSBjb250YWlucyBkZWZhdWx0IG9wdGlvbnMgZm9yIGRzZWxlY3QuIEVhY2ggbGluZSBjb250YWlucyBhICIKKyN8ICJzaW5nbGUgb3B0aW9uIHdoaWNoIGlzIGV4YWN0bHkgdGhlIHNhbWUgYXMgYSBub3JtYWwgY29tbWFuZGxpbmUgb3B0aW9uICIKKyN8ICJmb3IgZHNlbGVjdCBleGNlcHQgZm9yIHRoZSBsZWFkaW5nIGRhc2hlcyB3aGljaCBhcmUgbm90IHVzZWQgaGVyZS4gUXVvdGVzICIKKyN8ICJzdXJyb3VuZGluZyBvcHRpb24gdmFsdWVzIGFyZSBzdHJpcHBlZC4gQ29tbWVudHMgYXJlIGFsbG93ZWQgYnkgc3RhcnRpbmcgIgorI3wgImEgbGluZSB3aXRoIGEgaGFzaCBzaWduIChcIkI8Iz5cIikuIgorbXNnaWQgIiIKKyJUaGlzIGZpbGUgY29udGFpbnMgZGVmYXVsdCBvcHRpb25zIGZvciBkc2VsZWN0LiBFYWNoIGxpbmUgY29udGFpbnMgYSBzaW5nbGUgIgorIm9wdGlvbiB3aGljaCBpcyBleGFjdGx5IHRoZSBzYW1lIGFzIGEgbm9ybWFsIGNvbW1hbmQgbGluZSBvcHRpb24gZm9yIGRzZWxlY3QgIgorImV4Y2VwdCBmb3IgdGhlIGxlYWRpbmcgZGFzaGVzIHdoaWNoIGFyZSBub3QgdXNlZCBoZXJlLiBRdW90ZXMgc3Vycm91bmRpbmcgIgorIm9wdGlvbiB2YWx1ZXMgYXJlIHN0cmlwcGVkLiBDb21tZW50cyBhcmUgYWxsb3dlZCBieSBzdGFydGluZyBhIGxpbmUgd2l0aCBhICIKKyJoYXNoIHNpZ24gKFwiQjwjPlwiKS4iCittc2dzdHIgIiIKKyJQbGlrIHRlbiB6YXdpZXJhIGRvbXnFm2xuZSBvcGNqZSBwcm9ncmFtdSBkc2VsZWN0LiBXIGthxbxkZWogbGluaWkgd3ltaWVuaW9uYSAiCisiamVzdCBwb2plZHluY3phIG9wY2phLCBkb2vFgmFkbmllIHRha2Egc2FtYSBqYWsgbm9ybWFsbmEgb3BjamEgbGluaWkgcG9sZWNlxYQgIgorInByb2dyYW11IGRzZWxlY3QsIHogd3lqxIV0a2llbSB0ZWdvLCDFvGUgbmllIHPEhSB1xbx5d2FuZSBwb2N6xIV0a293ZSBtecWbbG5pa2kuICIKKyJabmFraSBjdWR6eXPFgm93w7N3IG90YWN6YWrEhWNlIHdhcnRvxZtjaSBvcGNqaSBzxIUgdXN1d2FuZS4gTW/FvG5hIHXFvHl3YcSHICIKKyJrb21lbnRhcnp5LCB6YWN6eW5hasSFYyBsaW5pxJkgem5ha2llbSBoYXNoIChcIkI8Iz5cIikuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LmNmZy41OjE0Cittc2dpZCAiSTwvZXRjL2Rwa2cvZHNlbGVjdC5jZmcuZC9bMC05YS16QS1aXy1dKj4iCittc2dzdHIgIkk8L2V0Yy9kcGtnL2RzZWxlY3QuY2ZnLmQvWzAtOWEtekEtWl8tXSo+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LmNmZy41OjE2Cittc2dpZCAiSTwvZXRjL2Rwa2cvZHNlbGVjdC5jZmc+IgorbXNnc3RyICJJPC9ldGMvZHBrZy9kc2VsZWN0LmNmZz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuY2ZnLjU6MTgKK21zZ2lkICJJPH4vLmRzZWxlY3QuY2ZnPiIKK21zZ3N0ciAiSTx+Ly5kc2VsZWN0LmNmZz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuY2ZnLjU6MjIKK21zZ2lkICIiCisiU2VlIEk8L3Vzci9zaGFyZS9kb2MvZHBrZy9USEFOS1M+IGZvciB0aGUgbGlzdCBvZiBwZW9wbGUgd2hvIGhhdmUgIgorImNvbnRyaWJ1dGVkIHRvIEI8ZHNlbGVjdD4uIgorbXNnc3RyICIiCisiUGF0cnogcGxpayBJPC91c3Ivc2hhcmUvZG9jL2Rwa2cvVEhBTktTLmd6PiB6YXdpZXJhasSFY3kgbGlzdMSZIG9zw7NiLCBrdMOzcmUgIgorInByenljenluacWCeSBzacSZIGRvIHJvendvanUgcHJvZ3JhbXUgQjxkc2VsZWN0Pi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuY2ZnLjU6MjQKK21zZ2lkICJCPGRzZWxlY3Q+KDEpLiIKK21zZ3N0ciAiQjxkc2VsZWN0PigxKS4iCisKKyMKKyMuIHR5cGU6IFRICisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjEKKyMsIG5vLXdyYXAKK21zZ2lkICJzdGFydC1zdG9wLWRhZW1vbiIKK21zZ3N0ciAic3RhcnQtc3RvcC1kYWVtb24iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6NAorbXNnaWQgInN0YXJ0LXN0b3AtZGFlbW9uIC0gc3RhcnQgYW5kIHN0b3Agc3lzdGVtIGRhZW1vbiBwcm9ncmFtcyIKK21zZ3N0ciAic3RhcnQtc3RvcC1kYWVtb24gLSB1cnVjaGFtaWEgaSB6YXRyenltdWplIGRlbW9ueSBzeXN0ZW1vd2UiCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6OAorIywgZnV6enkKKyN8IG1zZ2lkICJCPHN0YXJ0LXN0b3AtZGFlbW9uPiBbSTxvcHRpb25zPl0gSTxjb21tYW5kPiIKK21zZ2lkICJCPHN0YXJ0LXN0b3AtZGFlbW9uPiBbSTxvcHRpb24+Li4uXSBJPGNvbW1hbmQ+IgorbXNnc3RyICJCPHN0YXJ0LXN0b3AtZGFlbW9uPiBbSTxvcGNqZT5dIEk8cG9sZWNlbmllPiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxNAorbXNnaWQgIiIKKyJCPHN0YXJ0LXN0b3AtZGFlbW9uPiBpcyB1c2VkIHRvIGNvbnRyb2wgdGhlIGNyZWF0aW9uIGFuZCB0ZXJtaW5hdGlvbiBvZiAiCisic3lzdGVtLWxldmVsIHByb2Nlc3Nlcy4gIFVzaW5nIG9uZSBvZiB0aGUgbWF0Y2hpbmcgb3B0aW9ucywgQjxzdGFydC1zdG9wLSIKKyJkYWVtb24+IGNhbiBiZSBjb25maWd1cmVkIHRvIGZpbmQgZXhpc3RpbmcgaW5zdGFuY2VzIG9mIGEgcnVubmluZyBwcm9jZXNzLiIKK21zZ3N0ciAiIgorIkI8c3RhcnQtc3RvcC1kYWVtb24+IGplc3Qgd3lrb3J6eXN0eXdhbnkgZG8ga29udHJvbGkgcHJvY2Vzw7N3IHVydWNoYW1pYW55Y2ggIgorImkgemF0cnp5bXl3YW55Y2ggcG9kY3phcyBwcnplxYLEhWN6YW5pYSB0cnliw7N3IHByYWN5LiBQcnpleiB1xbx5Y2llIGplZG5laiB6ICIKKyJvcGNqaSBkb3Bhc293eXdhbmlhLCBtb8W8bmEgc2tvbmZpZ3Vyb3dhxIcgQjxzdGFydC1zdG9wLWRhZW1vbj4gZG8gIgorInd5c3p1a2l3YW5pYSBpc3RuaWVqxIVjeWNoIGluc3RhbmNqaSBkemlhxYJhasSFY2VnbyBwcm9jZXN1LiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODozMworbXNnaWQgIiIKKyJOb3RlOiB1bmxlc3MgQjwtLXBpZGZpbGU+IGlzIHNwZWNpZmllZCwgQjxzdGFydC1zdG9wLWRhZW1vbj4gYmVoYXZlcyBzaW1pbGFyICIKKyJ0byBCPGtpbGxhbGw+KDEpLiAgQjxzdGFydC1zdG9wLWRhZW1vbj4gd2lsbCBzY2FuIHRoZSBwcm9jZXNzIHRhYmxlIGxvb2tpbmcgIgorImZvciBhbnkgcHJvY2Vzc2VzIHdoaWNoIG1hdGNoIHRoZSBwcm9jZXNzIG5hbWUsIHVpZCwgYW5kL29yIGdpZCAoaWYgIgorInNwZWNpZmllZCkuIEFueSBtYXRjaGluZyBwcm9jZXNzIHdpbGwgcHJldmVudCBCPC0tc3RhcnQ+IGZyb20gc3RhcnRpbmcgdGhlICIKKyJkYWVtb24uIEFsbCBtYXRjaGluZyBwcm9jZXNzZXMgd2lsbCBiZSBzZW50IHRoZSBURVJNIHNpZ25hbCAob3IgdGhlIG9uZSAiCisic3BlY2lmaWVkIHZpYSBCPC0tc2lnbmFsPiBvciBCPC0tcmV0cnk+KSBpZiBCPC0tc3RvcD4gaXMgc3BlY2lmaWVkLiBGb3IgIgorImRhZW1vbnMgd2hpY2ggaGF2ZSBsb25nLWxpdmVkIGNoaWxkcmVuIHdoaWNoIG5lZWQgdG8gbGl2ZSB0aHJvdWdoIGEgQjwtLSIKKyJzdG9wPiwgeW91IG11c3Qgc3BlY2lmeSBhIHBpZGZpbGUuIgorbXNnc3RyICIiCisiUHJvc3rEmSB6YXV3YcW8ecSHLCDFvGUgamXFvGVsaSBuaWUgcG9kYW5vIG9wY2ppIEI8LS1waWRmaWxlPiwgdG8gQjxzdGFydC1zdG9wLSIKKyJkYWVtb24+IHphY2hvd3VqZSBzacSZIHBvZG9ibmllIGRvIEI8a2lsbGFsbD4oMSkuIEI8c3RhcnQtc3RvcC1kYWVtb24+ICIKKyJwcnplanJ6eSB0YWJlbMSZIHByb2Nlc8Ozdywgc3p1a2FqxIVjIGpha2llZ29rb2x3aWVrIHByb2Nlc3UgbyB6Z29kbmVqIG5hendpZSwgIgorImlkZW50eWZpa2F0b3J6ZSB1xbx5dGtvd25pa2EgaS9sdWIgZ3J1cHkgKGplxbxlbGkgamUgcG9kYW5vKS4gWm5hbGV6aWVuaWUgIgorImpha2llZ29rb2x3aWVrIHBhc3VqxIVjZWdvIHByb2Nlc3Ugc3Bvd29kdWplLCDFvGUgQjwtLXN0YXJ0PiBuaWUgdXJ1Y2hvbWkgIgorInByb2Nlc3UuIFcgd3lwYWRrdSBvcGNqaSBCPC0tc3RvcD4gZG8gd3N6eXN0a2ljaCBwYXN1asSFY3ljaCBwcm9jZXPDs3cgIgorInpvc3RhbmllIHd5c8WCYW55IHN5Z25hxYIgVEVSTSAobHViIGlubnksIG9rcmXFm2xvbnkgdyBvcGNqaSBCPC0tc2lnbmFsPiBsdWIgIgorIkI8LS1yZXRyeT4pLiBEbGEgcHJvY2Vzw7N3IG1hasSFY3ljaCBkxYJ1Z28gxbx5asSFY2UgcHJvY2VzeSBwb3RvbW5lLCBrdMOzcmUgbXVzesSFICIKKyJwcnplxbx5xIcgb3BlcmFjasSZIEI8LS1zdG9wPiwgbmFsZcW8eSBva3JlxZtsacSHIHBsaWsgcGlkZmlsZS4iCisKKyMKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjM1CisjLCBuby13cmFwCittc2dpZCAiQjwtUz4sIEI8LS1zdGFydD4gW0I8LS0+XSBJPGFyZ3VtZW50cz4iCittc2dzdHIgIkI8LVM+LCBCPC0tc3RhcnQ+IFtCPC0tPl0gSTxhcmd1bWVudHk+IgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjUyCittc2dpZCAiIgorIkNoZWNrIGZvciB0aGUgZXhpc3RlbmNlIG9mIGEgc3BlY2lmaWVkIHByb2Nlc3MuICBJZiBzdWNoIGEgcHJvY2VzcyBleGlzdHMsICIKKyJCPHN0YXJ0LXN0b3AtZGFlbW9uPiBkb2VzIG5vdGhpbmcsIGFuZCBleGl0cyB3aXRoIGVycm9yIHN0YXR1cyAxICgwIGlmIEI8LS0iCisib2tub2RvPiBpcyBzcGVjaWZpZWQpLiAgSWYgc3VjaCBhIHByb2Nlc3MgZG9lcyBub3QgZXhpc3QsIGl0IHN0YXJ0cyBhbiAiCisiaW5zdGFuY2UsIHVzaW5nIGVpdGhlciB0aGUgZXhlY3V0YWJsZSBzcGVjaWZpZWQgYnkgQjwtLWV4ZWM+IG9yLCBpZiAiCisic3BlY2lmaWVkLCBieSBCPC0tc3RhcnRhcz4uICBBbnkgYXJndW1lbnRzIGdpdmVuIGFmdGVyIEI8LS0+IG9uIHRoZSBjb21tYW5kICIKKyJsaW5lIGFyZSBwYXNzZWQgdW5tb2RpZmllZCB0byB0aGUgcHJvZ3JhbSBiZWluZyBzdGFydGVkLiIKK21zZ3N0ciAiIgorIlNwcmF3ZHphLCBjenkgZGFueSBwcm9jZXMgamVzdCBqdcW8IHVydWNob21pb255LiBKZcWbbGkgdGFrIGplc3QsIHRvIEI8c3RhcnQtIgorInN0b3AtZGFlbW9uPiBuaWUgd3lrb251amUgxbxhZG55Y2ggY3p5bm5vxZtjaSBpIGtvxYRjenkgc2nEmSwgendyYWNhasSFYyBrb2QgIgorImLFgsSZZHUgMSAobHViIDAsIGplxZtsaSBwb2Rhbm8gb3BjasSZIEI8LS1va25vZG8+KS4gSmXFm2xpIGRhbnkgcHJvY2VzIG5pZSBqZXN0ICIKKyJqZXN6Y3plIHVydWNob21pb255LCB0byBnbyB1cnVjaGFtaWEsICB3eWtvbnVqxIVjIHByb2dyYW0gb2tyZcWbbG9ueSBhbGJvICIKKyJvcGNqxIUgQjwtLWV4ZWM+LCBhbGJvIGplxZtsaSBwb2Rhbm8sIG9wY2rEhSBCPC0tc3RhcnRhcz4uIFdzemVsa2llIGFyZ3VtZW50eSAiCisicG9kYW5lIHR1xbwgcG8gb3BjamkgQjwtLT4gc8SFIHByemVrYXp5d2FuZSBkbyB3eWtvbnl3YW5lZ28gcG9sZWNlbmlhLiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6NTIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1LPiwgQjwtLXN0b3A+IgorbXNnc3RyICJCPC1LPiwgQjwtLXN0b3A+IgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjcwCittc2dpZCAiIgorIkNoZWNrcyBmb3IgdGhlIGV4aXN0ZW5jZSBvZiBhIHNwZWNpZmllZCBwcm9jZXNzLiAgSWYgc3VjaCBhIHByb2Nlc3MgZXhpc3RzLCAiCisiQjxzdGFydC1zdG9wLWRhZW1vbj4gc2VuZHMgaXQgdGhlIHNpZ25hbCBzcGVjaWZpZWQgYnkgQjwtLXNpZ25hbD4sIGFuZCBleGl0cyAiCisid2l0aCBlcnJvciBzdGF0dXMgMC4gIElmIHN1Y2ggYSBwcm9jZXNzIGRvZXMgbm90IGV4aXN0LCBCPHN0YXJ0LXN0b3AtZGFlbW9uPiAiCisiZXhpdHMgd2l0aCBlcnJvciBzdGF0dXMgMSAoMCBpZiBCPC0tb2tub2RvPiBpcyBzcGVjaWZpZWQpLiBJZiBCPC0tcmV0cnk+IGlzICIKKyJzcGVjaWZpZWQsIHRoZW4gQjxzdGFydC1zdG9wLWRhZW1vbj4gd2lsbCBjaGVjayB0aGF0IHRoZSBwcm9jZXNzKGVzKSBoYXZlICIKKyJ0ZXJtaW5hdGVkLiIKK21zZ3N0ciAiIgorIlNwcmF3ZHphLCBjenkgZGFueSBwcm9jZXMgamVzdCBqdcW8IHVydWNob21pb255LiBKZcWbbGkgdGFrIGplc3QsIHRvIEI8c3RhcnQtIgorInN0b3AtZGFlbW9uPiB3eXN5xYJhIHN5Z25hxYIgb2tyZcWbbG9ueSBvcGNqxIUgQjwtLXNpZ25hbD4gaSBrb8WEY3p5IHN3b2rEhSBwcmFjxJkgIgorInoga29kZW0gYsWCxJlkdSAwLiBKZcWbbGkgcHJvY2VzIG5pZSBpc3RuaWVqZSwgQjxzdGFydC1zdG9wLWRhZW1vbj4ga2/FhGN6eSBzacSZICIKKyJ6IGtvZGVtIGLFgsSZZHUgMSAobHViIDAsIGplxZtsaSBwb2Rhbm8gb3BjasSZIEI8LS1va25vZG8+KS4gSmXFvGVsaSBwb2Rhbm8gb3BjasSZICIKKyJCPC0tcmV0cnk+LCB0byBCPHN0YXJ0LXN0b3AtZGFlbW9uPiBzcHJhd2R6aSwgY3p5IHByb2Nlcyh5KSBzacSZIHpha2/FhGN6ecWCKHkpLiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6NzAKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjwtSz4sIEI8LS1zdG9wPiIKK21zZ2lkICJCPC1UPiwgQjwtLXN0YXR1cz4iCittc2dzdHIgIkI8LUs+LCBCPC0tc3RvcD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6NzQKK21zZ2lkICIiCisiQ2hlY2sgZm9yIHRoZSBleGlzdGVuY2Ugb2YgYSBzcGVjaWZpZWQgcHJvY2VzcywgYW5kIHJldHVybnMgYW4gZXhpdCBzdGF0dXMgIgorImNvZGUsIGFjY29yZGluZyB0byB0aGUgTFNCIEluaXQgU2NyaXB0IEFjdGlvbnMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44Ojc0CisjLCBuby13cmFwCittc2dpZCAiQjwtSD4sIEI8LS1oZWxwPiIKK21zZ3N0ciAiQjwtSD4sIEI8LS1oZWxwPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo3NworbXNnaWQgIlNob3cgdXNhZ2UgaW5mb3JtYXRpb24gYW5kIGV4aXQuIgorbXNnc3RyICJXecWbd2lldGxhIGluZm9ybWFjasSZIG8gdcW8eXRrb3dhbml1IHByb2dyYW11IGkga2/FhGN6eSBkemlhxYJhbmllLiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6NzcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1WPiwgQjwtLXZlcnNpb24+IgorbXNnc3RyICJCPC1WPiwgQjwtLXZlcnNpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjgwCittc2dpZCAiU2hvdyB0aGUgcHJvZ3JhbSB2ZXJzaW9uIGFuZCBleGl0LiIKK21zZ3N0ciAiV3nFm3dpZXRsYSBpbmZvcm1hY2rEmSBvIHdlcnNqaSBwcm9ncmFtdSBpIGtvxYRjenkgZHppYcWCYW5pZS4iCisKKyMuIHR5cGU6IFNICisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjgxCisjLCBuby13cmFwCittc2dpZCAiTUFUQ0hJTkcgT1BUSU9OUyIKK21zZ3N0ciAiT1BDSkUgRE9QQVNPV1lXQU5JQSIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6ODIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1wPiwgQjwtLXBpZGZpbGU+IEk8cGlkLWZpbGU+IgorbXNnc3RyICJCPC1wPiwgQjwtLXBpZGZpbGU+IEk8cGlkLWZpbGU+IgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44Ojg2Cittc2dpZCAiQ2hlY2sgd2hldGhlciBhIHByb2Nlc3MgaGFzIGNyZWF0ZWQgdGhlIGZpbGUgSTxwaWQtZmlsZT4uIgorbXNnc3RyICJTcHJhd2R6YW5pZSBwcm9jZXPDs3csIGt0w7NyeWNoIHBpZCBqZXN0IHBvZGFueSB3IHBsaWt1IEk8cGxpay1waWQ+LiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6ODYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC14PiwgQjwtLWV4ZWM+IEk8ZXhlY3V0YWJsZT4iCittc2dzdHIgIkI8LXg+LCBCPC0tZXhlYz4gSTxwbGlrX3d5a29ueXdhbG55PiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo5MAorbXNnaWQgIiIKKyJDaGVjayBmb3IgcHJvY2Vzc2VzIHRoYXQgYXJlIGluc3RhbmNlcyBvZiB0aGlzIGV4ZWN1dGFibGUgKGFjY29yZGluZyB0byBCPC8iCisicHJvYy8+STxwaWQ+QjwvZXhlPikuIgorbXNnc3RyICIiCisiU3ByYXdkemEgaXN0bmllbmllIHByb2Nlc8Ozdywga3TDs3JlIGJ5xYJ5Ynkgd3l3b8WCYW5lIHVydWNob21pZW5pZW0gcG9kYW5lZ28gdyAiCisib3BjamkgcHJvZ3JhbXUgKHNwcmF3ZHphbmEgamVzdCB6YXdhcnRvxZvEhyBCPC9wcm9jLz5JPHBpZD5CPC9leGU+KS4iCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjkwCisjLCBuby13cmFwCittc2dpZCAiQjwtbj4sIEI8LS1uYW1lPiBJPHByb2Nlc3MtbmFtZT4iCittc2dzdHIgIkI8LW4+LCBCPC0tbmFtZT4gSTxuYXp3YS1wcm9jZXN1PiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo5NgorbXNnaWQgIiIKKyJDaGVjayBmb3IgcHJvY2Vzc2VzIHdpdGggdGhlIG5hbWUgSTxwcm9jZXNzLW5hbWU+IChhY2NvcmRpbmcgdG8gQjwvcHJvYy8iCisiPkk8cGlkPkI8L3N0YXQ+KS4iCittc2dzdHIgIiIKKyJTcHJhd2R6YW5pZSBwcm9jZXPDs3cgbyBuYXp3aWUgSTxuYXp3YS1wcm9jZXN1PiAoc3ByYXdkemFuYSBqZXN0IHphd2FydG/Fm8SHIEI8LyIKKyJwcm9jLz5JPHBpZD5CPC9zdGF0PikuIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo5NgorIywgbm8td3JhcAorbXNnaWQgIkI8LXU+LCBCPC0tdXNlcj4gSTx1c2VybmFtZT58STx1aWQ+IgorbXNnc3RyICJCPC11PiwgQjwtLXVzZXI+IEk8dXNlcm5hbWU+fEk8dWlkPiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxMDIKK21zZ2lkICIiCisiQ2hlY2sgZm9yIHByb2Nlc3NlcyBvd25lZCBieSB0aGUgdXNlciBzcGVjaWZpZWQgYnkgSTx1c2VybmFtZT4gb3IgSTx1aWQ+LiIKK21zZ3N0ciAiIgorIlNwcmF3ZHphbmllIHByb2Nlc8Ozdywga3TDs3J5Y2ggd8WCYcWbY2ljaWVsZW0gamVzdCB1xbx5dGtvd25payBvIG5hendpZSAiCisiSTx1xbx5dGtvd25paz4gbHViIG51bWVyemUgSTx1aWQ+LiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTA0CisjLCBuby13cmFwCittc2dpZCAiQjwtZz4sIEI8LS1ncm91cD4gSTxncm91cD58STxnaWQ+IgorbXNnc3RyICJCPC1nPiwgQjwtLWdyb3VwPiBJPGdyb3VwPnxJPGdpZD4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTA3Cittc2dpZCAiQ2hhbmdlIHRvIEk8Z3JvdXA+IG9yIEk8Z2lkPiB3aGVuIHN0YXJ0aW5nIHRoZSBwcm9jZXNzLiIKK21zZ3N0ciAiUG9kY3phcyB1cnVjaGFtaWFuaWEgcHJvY2VzdSB6bWllbmlhIGdydXDEmSBuYSBJPGdydXDEmT4gbHViIEk8Z2lkPi4iCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjEwNworIywgbm8td3JhcAorbXNnaWQgIkI8LXM+LCBCPC0tc2lnbmFsPiBJPHNpZ25hbD4iCittc2dzdHIgIkI8LXM+LCBCPC0tc2lnbmFsPiBJPHN5Z25hxYI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjExMgorbXNnaWQgIiIKKyJXaXRoIEI8LS1zdG9wPiwgc3BlY2lmaWVzIHRoZSBzaWduYWwgdG8gc2VuZCB0byBwcm9jZXNzZXMgYmVpbmcgc3RvcHBlZCAiCisiKGRlZmF1bHQgVEVSTSkuIgorbXNnc3RyICIiCisiUHJ6eSBvcGVyYWNqaSBCPC0tc3RvcD4sIHd5c3nFgmFueSBqZXN0IHN5Z25hxYIgbyBwb2RhbmVqIHdhcnRvxZtjaSBkbyAiCisiemF0cnp5bXl3YW5lZ28gcHJvY2VzdSAoZG9tecWbbG5pZSBqZXN0IHRvIFRFUk0pLiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTEyCisjLCBuby13cmFwCittc2dpZCAiQjwtUj4sIEI8LS1yZXRyeT4gSTx0aW1lb3V0PnxJPHNjaGVkdWxlPiIKK21zZ3N0ciAiQjwtUj4sIEI8LS1yZXRyeT4gSTx0aW1lb3V0PnxJPHBsYW4tZHppYcWCYW5pYT4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTIyCittc2dpZCAiIgorIldpdGggQjwtLXN0b3A+LCBzcGVjaWZpZXMgdGhhdCBCPHN0YXJ0LXN0b3AtZGFlbW9uPiBpcyB0byBjaGVjayB3aGV0aGVyIHRoZSAiCisicHJvY2VzcyhlcykgIGRvIGZpbmlzaC4gSXQgd2lsbCBjaGVjayByZXBlYXRlZGx5IHdoZXRoZXIgYW55IG1hdGNoaW5nICIKKyJwcm9jZXNzZXMgYXJlIHJ1bm5pbmcsIHVudGlsIG5vbmUgYXJlLiBJZiB0aGUgcHJvY2Vzc2VzIGRvIG5vdCBleGl0IGl0IHdpbGwgIgorInRoZW4gdGFrZSBmdXJ0aGVyIGFjdGlvbiBhcyBkZXRlcm1pbmVkIGJ5IHRoZSBzY2hlZHVsZS4iCittc2dzdHIgIiIKKyJXIGN6YXNpZSBvcGVyYWNqaSBCPC0tc3RvcD4gcG93b2R1amUgc3ByYXdkemVuaWUgcHJ6ZXogQjxzdGFydC1zdG9wLWRhZW1vbj4sICIKKyJjenkgcHJvY2VzKHkpIHNpxJkgemFrb8WEY3p5xYIoeSkuIFNwcmF3ZHphbmllIGplc3QgcG93dGFyemFuZSwgamXFvGVsaSBkemlhxYJhICIKKyJqYWtpa29sd2llayBwYXN1asSFY3kgcHJvY2VzLCBkb3DDs2tpIHdzenlzdGtpZSBzacSZIG5pZSBza2/FhGN6xIUuIEplxbxlbGkgIgorInByb2Nlc3kgc2nEmSBuaWUgemFrb8WEY3rEhSwgcG9kZWptb3dhbmUgc8SFIGFrY2plIG9rcmXFm2xvbmUgcHJ6ZXogcGFyYW1ldHIgIgorIkk8cGxhbi1kemlhxYJhbmlhPi4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTMzCittc2dpZCAiIgorIklmIEk8dGltZW91dD4gaXMgc3BlY2lmaWVkIGluc3RlYWQgb2YgSTxzY2hlZHVsZT4sIHRoZW4gdGhlIHNjaGVkdWxlICIKKyJJPHNpZ25hbD5CPC8+STx0aW1lb3V0PkI8L0tJTEwvPkk8dGltZW91dD4gaXMgdXNlZCwgd2hlcmUgSTxzaWduYWw+IGlzIHRoZSAiCisic2lnbmFsIHNwZWNpZmllZCB3aXRoIEI8LS1zaWduYWw+LiIKK21zZ3N0ciAiIgorIkplxbxlbGkgb2tyZcWbbG9ubyBJPHRpbWVvdXQ+IHphbWlhc3QgSTxwbGFudS1kemlhxYJhbmlhPiwgdG8gd3RlZHkgdcW8eXdhbnkgIgorImplc3QgbmFzdMSZcHVqxIVjeSBwbGFuIGR6aWHFgmFuaWE6IEk8c3lnbmHFgj5CPC8+STx0aW1lb3V0PkI8L0tJTEwvPkk8dGltZW91dD4sICIKKyJnZHppZSBJPHN5Z25hxYI+IGplc3Qgb2tyZcWbbG9ueSB6YSBwb21vY8SFIG9wY2ppIEI8LS1zaWduYWw+LiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxNDkKK21zZ2lkICIiCisiSTxzY2hlZHVsZT4gaXMgYSBsaXN0IG9mIGF0IGxlYXN0IHR3byBpdGVtcyBzZXBhcmF0ZWQgYnkgc2xhc2hlcyAoQjwvPik7ICIKKyJlYWNoIGl0ZW0gbWF5IGJlIEI8LT5JPHNpZ25hbC1udW1iZXI+IG9yIFtCPC0+XUk8c2lnbmFsLW5hbWU+LCB3aGljaCBtZWFucyAiCisidG8gc2VuZCB0aGF0IHNpZ25hbCwgb3IgSTx0aW1lb3V0Piwgd2hpY2ggbWVhbnMgdG8gd2FpdCB0aGF0IG1hbnkgc2Vjb25kcyAiCisiZm9yIHByb2Nlc3NlcyB0byBleGl0LCBvciBCPGZvcmV2ZXI+LCB3aGljaCBtZWFucyB0byByZXBlYXQgdGhlIHJlc3Qgb2YgdGhlICIKKyJzY2hlZHVsZSBmb3JldmVyIGlmIG5lY2Vzc2FyeS4iCittc2dzdHIgIiIKKyJJPHBsYW4tZHppYcWCYW5pYT4gamVzdCBsaXN0xIUgY28gbmFqbW5pZWogZHfDs2NoIHdhcnRvxZtjaSBvZGR6aWVsb255Y2ggem5ha2FtaSAiCisidWtvxZtuaWthIChCPC8+KTsga2HFvGTEhSB6IHR5Y2ggd2FydG/Fm2NpIG1vxbxlIGJ5xIcgYWxibyBCPC0+STxudW1lci1zeWduYcWCdT4gIgorImx1YiBbQjwtPl1JPG5hendhLXN5Z25hxYJ1PiwgY28gb3puYWN6YSB3eXPFgmFuaWUgdGVnbyBzeWduYcWCdSwgYWxibyAiCisiSTx0aW1lb3V0Piwgb2tyZcWbbGFqxIVjeSBsaWN6YsSZIHNla3VuZCwga3TDs3LEhSBuYWxlxbx5IGN6ZWthxIcgbmEgemFrb8WEY3plbmllICIKKyJwcm9jZXN1LCBhbGJvIEk8Zm9yZXZlcj4sIG96bmFjemFqxIVjeSwgxbxlIHJlc3p0YSBwbGFudSBkemlhxYJhbmlhIG1hIGJ5xIcgIgorInBvd3RhcnphbmEgZG9ww7NraSBqZXN0IHRvIGtvbmllY3puZS4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTU5Cittc2dpZCAiIgorIklmIHRoZSBlbmQgb2YgdGhlIHNjaGVkdWxlIGlzIHJlYWNoZWQgYW5kIEI8Zm9yZXZlcj4gaXMgbm90IHNwZWNpZmllZCwgdGhlbiAiCisiQjxzdGFydC1zdG9wLWRhZW1vbj4gZXhpdHMgd2l0aCBlcnJvciBzdGF0dXMgMi4gIElmIGEgc2NoZWR1bGUgaXMgc3BlY2lmaWVkLCAiCisidGhlbiBhbnkgc2lnbmFsIHNwZWNpZmllZCB3aXRoIEI8LS1zaWduYWw+IGlzIGlnbm9yZWQuIgorbXNnc3RyICIiCisiSmXFvGVsaSBvc2nEhWduacSZdG8ga29uaWVjIHBsYW51IGR6aWHFgmFuaWEsIGEgb3BjamEgQjxmb3JldmVyPiBuaWUgem9zdGHFgmEgIgorInXFvHl0YSwgdG8gQjxzdGFydC1zdG9wLWRhZW1vbj4ga2/FhGN6eSBkemlhxYJhbmllIHoga29kZW0gYsWCxJlkdSAyLiBKZcW8ZWxpICIKKyJ6b3N0YcWCIG9rcmXFm2xvbnkgcGxhbiBkemlhxYJhbmlhLCB0byBzeWduYcWCIHBvZGFueSB3IEI8LS1zaWduYWw+IGplc3QgIgorImlnbm9yb3dhbnkuIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxNTkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1hPiwgQjwtLXN0YXJ0YXM+IEk8cGF0aG5hbWU+IgorbXNnc3RyICJCPC1hPiwgQjwtLXN0YXJ0YXM+IEk8bmF6d2EtxZtjaWXFvGtpPiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxNjcKK21zZ2lkICIiCisiV2l0aCBCPC0tc3RhcnQ+LCBzdGFydCB0aGUgcHJvY2VzcyBzcGVjaWZpZWQgYnkgSTxwYXRobmFtZT4uICBJZiBub3QgIgorInNwZWNpZmllZCwgZGVmYXVsdHMgdG8gdGhlIGFyZ3VtZW50IGdpdmVuIHRvIEI8LS1leGVjPi4iCittc2dzdHIgIiIKKyJQcnp5IG9wZXJhY2ppIEI8LS1zdGFydD4sIFVydWNoYW1pYW55IGplc3QgcHJvZ3JhbSBvIG9rcmXFm2xvbmVqIEk8xZtjaWXFvGNlPi4gIgorIkplxZtsaSBicmFrIHRlaiBvcGNqaSwgZG9tecWbbG5pZSB1cnVjaGFtaWFueSBqZXN0IHByb2dyYW0gcG9kYW55IHcgb3BjamkgQjwtLSIKKyJleGVjPi4iCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjE2NworIywgbm8td3JhcAorbXNnaWQgIkI8LXQ+LCBCPC0tdGVzdD4iCittc2dzdHIgIkI8LXQ+LCBCPC0tdGVzdD4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTcxCittc2dpZCAiIgorIlByaW50IGFjdGlvbnMgdGhhdCB3b3VsZCBiZSB0YWtlbiBhbmQgc2V0IGFwcHJvcHJpYXRlIHJldHVybiB2YWx1ZSwgYnV0IHRha2UgIgorIm5vIGFjdGlvbi4iCittc2dzdHIgIiIKKyJXecWbd2lldGxhbmEgamVzdCBjenlubm/Fm8SHLCBqYWvEhSBuYWxlxbxhxYJvYnkgd3lrb25hxIcsIGEgdGFrxbxlIHp3cmFjYW55IGplc3QgIgorIm9kcG93aWVkbmkga29kIGLFgsSZZHUsIGplZG5ha8W8ZSBvcGNqYSB0YSBuaWUgd3lrb251amUgxbxhZG55Y2ggb3BlcmFjamkuIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxNzEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1vPiwgQjwtLW9rbm9kbz4iCittc2dzdHIgIkI8LW8+LCBCPC0tb2tub2RvPiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxNzQKK21zZ2lkICJSZXR1cm4gZXhpdCBzdGF0dXMgMCBpbnN0ZWFkIG9mIDEgaWYgbm8gYWN0aW9ucyBhcmUgKHdvdWxkIGJlKSB0YWtlbi4iCittc2dzdHIgIiIKKyJad3JhY2FueSBqZXN0IGtvZCBixYLEmWR1IDAsIG5hd2V0IGdkeWJ5IG9wZXJhY2phIG5pZSB6YWtvxYRjennFgmEgc2nEmSAiCisicG93b2R6ZW5pZW0gKHp3csOzY2nFgmFieSAxKS4iCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjE3NAorIywgbm8td3JhcAorbXNnaWQgIkI8LXE+LCBCPC0tcXVpZXQ+IgorbXNnc3RyICJCPC1xPiwgQjwtLXF1aWV0PiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxNzcKK21zZ2lkICJEbyBub3QgcHJpbnQgaW5mb3JtYXRpb25hbCBtZXNzYWdlczsgb25seSBkaXNwbGF5IGVycm9yIG1lc3NhZ2VzLiIKK21zZ3N0ciAiTmllIHPEhSB3ecWbd2lldGxhbmUgxbxhZG5lIGluZm9ybWFjamUgb3Byw7NjeiBrb211bmlrYXTDs3cgbyBixYLEmWRhY2guIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxNzcKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjwtYz4sIEI8LS1jaHVpZD4gSTx1c2VybmFtZT58STx1aWQ+IgorbXNnaWQgIkI8LWM+LCBCPC0tY2h1aWQ+IEk8dXNlcm5hbWU+fEk8dWlkPltCPDo+STxncm91cD58STxnaWQ+XSIKK21zZ3N0ciAiQjwtYz4sIEI8LS1jaHVpZD4gSTx1xbx5dGtvd25paz58STx1aWQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjE5NQorbXNnaWQgIiIKKyJDaGFuZ2UgdG8gdGhpcyB1c2VybmFtZS91aWQgYmVmb3JlIHN0YXJ0aW5nIHRoZSBwcm9jZXNzLiBZb3UgY2FuIGFsc28gIgorInNwZWNpZnkgYSBncm91cCBieSBhcHBlbmRpbmcgYSBCPDo+LCB0aGVuIHRoZSBncm91cCBvciBnaWQgaW4gdGhlIHNhbWUgd2F5ICIKKyJhcyB5b3Ugd291bGQgZm9yIHRoZSBgY2hvd24nIGNvbW1hbmQgKEk8dXNlcj5CPDo+STxncm91cD4pLiAgSWYgYSB1c2VyIGlzICIKKyJzcGVjaWZpZWQgd2l0aG91dCBhIGdyb3VwLCB0aGUgcHJpbWFyeSBHSUQgZm9yIHRoYXQgdXNlciBpcyB1c2VkLiAgV2hlbiAiCisidXNpbmcgdGhpcyBvcHRpb24geW91IG11c3QgcmVhbGl6ZSB0aGF0IHRoZSBwcmltYXJ5IGFuZCBzdXBwbGVtZW50YWwgZ3JvdXBzICIKKyJhcmUgc2V0IGFzIHdlbGwsIGV2ZW4gaWYgdGhlIEI8LS1ncm91cD4gb3B0aW9uIGlzIG5vdCBzcGVjaWZpZWQuIFRoZSBCPC0tIgorImdyb3VwPiBvcHRpb24gaXMgb25seSBmb3IgZ3JvdXBzIHRoYXQgdGhlIHVzZXIgaXNuJ3Qgbm9ybWFsbHkgYSBtZW1iZXIgb2YgIgorIihsaWtlIGFkZGluZyBwZXIgcHJvY2VzcyBncm91cCBtZW1iZXJzaGlwIGZvciBnZW5lcmljIHVzZXJzIGxpa2UgQjxub2JvZHk+KS4iCittc2dzdHIgIiIKKyJabWlhbmEgdcW8eXRrb3duaWthL3VpZCBwcnplZCB1cnVjaG9taWVuaWVtIHByb2Nlc3UuIE1vxbxuYSB0YWvFvGUgem1pZW5pxIcgIgorImdydXDEmSBwcnpleiBkb8WCxIVjemVuaWUgQjw6PiB3cmF6IHogbmF6d8SFIGdydXB5IGLEhWTFuiBudW1lcmVtIGdpZCwgcG9kb2JuaWUgIgorImphayB3IHBvbGVjZW5pdSBcImNob3duXCIgKEk8dcW8eXRrb3duaWs+Qjw6Pkk8Z3J1cGE+KS4gSmXFvGVsaSBuaWUgcG9kYW5vICIKKyJncnVweSwgdG8gem9zdGFuaWUgdcW8eXRhIHBvZHN0YXdvd2EgZ3J1cGEgdGVnbyB1xbx5dGtvd25pa2EuIFBvZGN6YXMgIgorImtvcnp5c3RhbmlhIHogdGVqIG9wY2ppIG5hbGXFvHkgcGFtacSZdGHEhywgxbxlIGdydXBhIGfFgsOzd25hIGkgcG9ib2N6bmUgem9zdGFuxIUgIgorInVzdGF3aW9uZSwgbmF3ZXQgZ2R5IG5pZSBwb2Rhbm8gb3BjamkgQjwtLWdyb3VwPi4gT3BjamEgQjwtLWdyb3VwPiBqZXN0ICIKKyJwcnp5ZGF0bmEgdHlsa28gZGxhIGdydXAsIGt0w7NyeWNoIHBvZGFueSB1xbx5dGtvd25payBuaWUgamVzdCBjesWCb25raWVtIChuYSAiCisicHJ6eWvFgmFkIHByenkgZG9kYXdhbml1IHByb2Nlc293aSBjesWCb25rb3N0d2EgZ3J1cHkgZGxhIHRha2ljaCB1xbx5dGtvd25pa8OzdyAiCisiamFrIEI8bm9ib2R5PikuIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxOTUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1yPiwgQjwtLWNocm9vdD4gSTxyb290PiIKK21zZ3N0ciAiQjwtcj4sIEI8LS1jaHJvb3Q+IEk8cm9vdD4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjAxCittc2dpZCAiIgorIkNoZGlyIGFuZCBjaHJvb3QgdG8gSTxyb290PiBiZWZvcmUgc3RhcnRpbmcgdGhlIHByb2Nlc3MuIFBsZWFzZSBub3RlIHRoYXQgIgorInRoZSBwaWRmaWxlIGlzIGFsc28gd3JpdHRlbiBhZnRlciB0aGUgY2hyb290LiIKK21zZ3N0ciAiIgorIlptaWVuaWEga2F0YWxvZyBiaWXFvMSFY3kgbmEgSTxyb290PiBpIGN6eW5pIGdvIGfFgsOzd255bSBrYXRhbG9naWVtIChyb290ZW0pICIKKyJwcnplZCB3eXN0YXJ0b3dhbmllbSBwcm9jZXN1LiBQcm9zesSZIHphdXdhxbx5xIcsIMW8ZSBwbGlrIHBpZGZpbGUgamVzdCB0d29yem9ueSAiCisicG8gd3lrb25hbml1IGNocm9vdC4iCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjIwMQorIywgbm8td3JhcAorbXNnaWQgIkI8LWQ+LCBCPC0tY2hkaXI+IEk8cGF0aD4iCittc2dzdHIgIkI8LWQ+LCBCPC0tY2hkaXI+IEk8xZtjaWXFvGthPiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyMDkKK21zZ2lkICIiCisiQ2hkaXIgdG8gSTxwYXRoPiBiZWZvcmUgc3RhcnRpbmcgdGhlIHByb2Nlc3MuIFRoaXMgaXMgZG9uZSBhZnRlciB0aGUgY2hyb290ICIKKyJpZiB0aGUgQjwtcj58QjwtLWNocm9vdD4gb3B0aW9uIGlzIHNldC4gV2hlbiBub3Qgc3BlY2lmaWVkLCBzdGFydC1zdG9wLSIKKyJkYWVtb24gd2lsbCBjaGRpciB0byB0aGUgcm9vdCBkaXJlY3RvcnkgYmVmb3JlIHN0YXJ0aW5nIHRoZSBwcm9jZXNzLiIKK21zZ3N0ciAiIgorIlByemVkIHVydWNob21pZW5pZW0gcHJvY2VzdSB6bWllbmlhIGthdGFsb2cgYmllxbzEhWN5IG5hIEk8xZtjaWXFvGvEmT4uIFJvYmlvbmUgIgorImplc3QgdG8gcHJ6ZWQgem1pZW5pZW5pZW0gZ8WCw7N3bmVnbyBrYXRhbG9ndSAocm9vdGEpLCBqZcW8ZWxpIHBvZGFubyByw7N3bmllxbwgIgorIm9wY2rEmSBCPC1yPnxCPC0tY2hyb290Pi4gSmXFm2xpIG5pZSBwb2Rhbm8gdGVqIG9wY2ppLCB0byBwcnplZCB1cnVjaG9taWVuaWVtICIKKyJwcm9jZXN1IEI8c3RhcnQtc3RvcC1kYWVtb24+IHVzdGF3aSBqZWdvIGthdGFsb2cgYmllxbzEhWN5IG5hIGfFgsOzd255IGthdGFsb2cgIgorIihyb290KS4iCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjIwOQorIywgbm8td3JhcAorbXNnaWQgIkI8LWI+LCBCPC0tYmFja2dyb3VuZD4iCittc2dzdHIgIkI8LWI+LCBCPC0tYmFja2dyb3VuZD4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjIxCittc2dpZCAiIgorIlR5cGljYWxseSB1c2VkIHdpdGggcHJvZ3JhbXMgdGhhdCBkb24ndCBkZXRhY2ggb24gdGhlaXIgb3duLiBUaGlzIG9wdGlvbiAiCisid2lsbCBmb3JjZSBCPHN0YXJ0LXN0b3AtZGFlbW9uPiB0byBmb3JrIGJlZm9yZSBzdGFydGluZyB0aGUgcHJvY2VzcywgYW5kICIKKyJmb3JjZSBpdCBpbnRvIHRoZSBiYWNrZ3JvdW5kLiAgQjxXQVJOSU5HOiBzdGFydC1zdG9wLWRhZW1vbj4gY2Fubm90IGNoZWNrICIKKyJ0aGUgZXhpdCBzdGF0dXMgaWYgdGhlIHByb2Nlc3MgZmFpbHMgdG8gZXhlY3V0ZSBmb3IgQjxhbnk+IHJlYXNvbi4gVGhpcyBpcyBhICIKKyJsYXN0IHJlc29ydCwgYW5kIGlzIG9ubHkgbWVhbnQgZm9yIHByb2dyYW1zIHRoYXQgZWl0aGVyIG1ha2Ugbm8gc2Vuc2UgIgorImZvcmtpbmcgb24gdGhlaXIgb3duLCBvciB3aGVyZSBpdCdzIG5vdCBmZWFzaWJsZSB0byBhZGQgdGhlIGNvZGUgZm9yIHRoZW0gdG8gIgorImRvIHRoaXMgdGhlbXNlbHZlcy4iCittc2dzdHIgIiIKKyJad3lrbGUgdcW8eXdhIHNpxJkgdGVqIG9wY2ppIGRsYSBwcm9ncmFtw7N3LCBrdMOzcmUgbmllIG9kxYLEhWN6YWrEhSBzacSZIG9kICIKKyJ0ZXJtaW5hbGEgKGRldGFjaCkgc2Ftb2lzdG5pZS4gVGEgb3BjamEgc3Bvd29kdWplLCDFvGUgQjxzdGFydC1zdG9wLWRhZW1vbj4gIgorInV0d29yenkgcHJvY2VzIHBvdG9tbnkgcHJ6ZWQgdXJ1Y2hvbWllbmllbSBwcm9ncmFtdSBpIGLEmWR6aWUga29udHludW93YcSHIGdvICIKKyJ3IHRsZS4gQjxPU1RSWkXFu0VOSUU6IHN0YXJ0LXN0b3AtZGFlbW9uPiBuaWUgbW/FvGUgc3ByYXdkemnEhyBrb2R1IGLFgsSZZHUsICIKKyJqZcW8ZWxpIHByb2NlcyBzacSZIG5pZSB3eWtvbmEgeiBCPGpha2llZ29rb2x3aWVrPiBwb3dvZHUuIFRhIG9wY2phIHBvd2lubmEgIgorImJ5xIcgdcW8eXdhbmEgdyBvc3RhdGVjem5vxZtjaSBpIGplc3QgcHJ6ZXdpZHppYW5hIHR5bGtvIGRsYSBwcm9ncmFtw7N3LCBrdMOzcmUgIgorInNhbWUgbmllIHR3b3J6xIUgcHJvY2Vzw7N3IHBvdG9tbnljaCBpIG5pZSBqZXN0IG1vxbxsaXdlIGRvZGFuaWUgZG8gc2FtZWdvICIKKyJwcm9ncmFtdSBrb2R1IHVydWNoYW1pYWrEhWNlZ28gcHJvY2VzIHBvdG9tbnkuIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyMjEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1OPiwgQjwtLW5pY2VsZXZlbD4gSTxpbnQ+IgorbXNnc3RyICJCPC1OPiwgQjwtLW5pY2VsZXZlbD4gSTxsaWN6YmE+IgorCisjCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjIyNAorbXNnaWQgIlRoaXMgYWx0ZXJzIHRoZSBwcmlvcml0eSBvZiB0aGUgcHJvY2VzcyBiZWZvcmUgc3RhcnRpbmcgaXQuIgorbXNnc3RyICJabWllbmlhIHByaW9yeXRldCB1cnVjaGFtaWFuZWdvIHByb2Nlc3UuIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyMjQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1QPiwgQjwtLXByb2NzY2hlZD4gSTxwb2xpY3k+Qjw6Pkk8cHJpb3JpdHk+IgorbXNnc3RyICJCPC1QPiwgQjwtLXByb2NzY2hlZD4gSTxwb2xpdHlrYT5CPDo+STxwcmlvcnl0ZXQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjIzMAorbXNnaWQgIiIKKyJUaGlzIGFsdGVycyB0aGUgcHJvY2VzcyBzY2hlZHVsZXIgcG9saWN5IGFuZCBwcmlvcml0eSBvZiB0aGUgcHJvY2VzcyBiZWZvcmUgIgorInN0YXJ0aW5nIGl0LiBUaGUgcHJpb3JpdHkgY2FuIGJlIG9wdGlvbmFsbHkgc3BlY2lmaWVkIGJ5IGFwcGVuZGluZyBhIEI8Oj4gIgorImZvbGxvd2VkIGJ5IHRoZSB2YWx1ZS4gVGhlIGRlZmF1bHQgSTxwcmlvcml0eT4gaXMgMC4gVGhlIGN1cnJlbnRseSBzdXBwb3J0ZWQgIgorInBvbGljeSB2YWx1ZXMgYXJlIEI8b3RoZXI+LCBCPGZpZm8+IGFuZCBCPHJyPi4iCittc2dzdHIgIiIKKyJabWllbmlhIHBvbGl0eWvEmSBpIHByaW9yeXRldCBwbGFuaXN0eSBwcm9jZXPDs3cgZGxhIHByb2Nlc3UgcHJ6ZWQgamVnbyAiCisidXJ1Y2hvbWllbmllbS4gUHJpb3J5dGV0IG1vxbxlIGJ5xIcgb3Bjam9uYWxuaWUgb2tyZcWbbG9ueSBwcnpleiBkb2RhbmllIEI8Oj4gIgorInBvIGt0w7NyeW0gamVzdCBwb2RhbmEgd2FydG/Fm8SHLiBEb215xZtsbnltIEk8cHJpb3J5dGV0ZW0+IGplc3QgMC4gQWt0dWFsbmllICIKKyJ3c3BpZXJhbmUgd2FydG/Fm2NpIGRsYSBJPHBvbGl0eWtpPiB0byBCPG90aGVyPiwgQjxmaWZvPiBvcmF6IEI8cnI+LiIKKworIworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjMwCisjLCBuby13cmFwCittc2dpZCAiQjwtST4sIEI8LS1pb3NjaGVkPiBJPGNsYXNzPkI8Oj5JPHByaW9yaXR5PiIKK21zZ3N0ciAiQjwtST4sIEI8LS1pb3NjaGVkPiBJPGtsYXNhPkI8Oj5JPHByaW9yeXRldD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjM3Cittc2dpZCAiIgorIlRoaXMgYWx0ZXJzIHRoZSBJTyBzY2hlZHVsZXIgY2xhc3MgYW5kIHByaW9yaXR5IG9mIHRoZSBwcm9jZXNzIGJlZm9yZSAiCisic3RhcnRpbmcgaXQuIFRoZSBwcmlvcml0eSBjYW4gYmUgb3B0aW9uYWxseSBzcGVjaWZpZWQgYnkgYXBwZW5kaW5nIGEgQjw6PiAiCisiZm9sbG93ZWQgYnkgdGhlIHZhbHVlLiBUaGUgZGVmYXVsdCBJPHByaW9yaXR5PiBpcyA0LCB1bmxlc3MgSTxjbGFzcz4gaXMgIgorIkI8aWRsZT4sIHRoZW4gSTxwcmlvcml0eT4gd2lsbCBhbHdheXMgYmUgNy4gVGhlIGN1cnJlbnRseSBzdXBwb3J0ZWQgdmFsdWVzICIKKyJmb3IgSTxjbGFzcz4gYXJlIEI8aWRsZT4sIEI8YmVzdC1lZmZvcnQ+IGFuZCBCPHJlYWwtdGltZT4uIgorbXNnc3RyICIiCisiWm1pZW5pYSBrbGFzxJkgaSBwcmlvcnl0ZXQgcGxhbmlzdHkgd2VqxZtjaWEvd3lqxZtjaWEgZGxhIHByb2Nlc3UgcHJ6ZWQgamVnbyAiCisidXJ1Y2hvbWllbmllbS4gUHJpb3J5dGV0IG1vxbxlIGJ5xIcgb3Bjam9uYWxuaWUgb2tyZcWbbG9ueSBwcnpleiBkb2RhbmllIEI8Oj4gIgorInBvIGt0w7NyeW0gamVzdCBwb2RhbmEgd2FydG/Fm8SHLiBEb215xZtsbnltIEk8cHJpb3J5dGV0ZW0+IGplc3QgNCwgY2h5YmEgxbxlICIKKyJ3YXJ0b8WbY2nEhSBJPGtsYXN5PiBqZXN0IEI8aWRsZT4sIHcga3TDs3J5bSB0byBwcnp5cGFka3UgSTxwcmlvcnl0ZXQ+IGLEmWR6aWUgIgorInphd3N6ZSByw7N3bnkgNy4gQWt0dWFsbmllIHdzcGllcmFuZSB3YXJ0b8WbY2kgZGxhIEk8a2xhc3k+IHRvIEI8aWRsZT4sIEI8YmVzdC0iCisiZWZmb3J0PiBvcmF6IEI8cmVhbC10aW1lPi4iCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjIzNworIywgbm8td3JhcAorbXNnaWQgIkI8LWs+LCBCPC0tdW1hc2s+IEk8bWFzaz4iCittc2dzdHIgIkI8LWs+LCBCPC0tdW1hc2s+IEk8bWFza2E+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjI0MAorbXNnaWQgIlRoaXMgc2V0cyB0aGUgdW1hc2sgb2YgdGhlIHByb2Nlc3MgYmVmb3JlIHN0YXJ0aW5nIGl0LiIKK21zZ3N0ciAiVXN0YXdpYSBtYXNrxJkgcHJhdyBkb3N0xJlwdSAodW1hc2spIHByb2Nlc3UgcHJ6ZWQgamVnbyB1cnVjaG9taWVuaWVtLiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjQwCisjLCBuby13cmFwCittc2dpZCAiQjwtbT4sIEI8LS1tYWtlLXBpZGZpbGU+IgorbXNnc3RyICJCPC1tPiwgQjwtLW1ha2UtcGlkZmlsZT4iCisKKyMKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjU1Cittc2dpZCAiIgorIlVzZWQgd2hlbiBzdGFydGluZyBhIHByb2dyYW0gdGhhdCBkb2VzIG5vdCBjcmVhdGUgaXRzIG93biBwaWQgZmlsZS4gVGhpcyAiCisib3B0aW9uIHdpbGwgbWFrZSBCPHN0YXJ0LXN0b3AtZGFlbW9uPiBjcmVhdGUgdGhlIGZpbGUgcmVmZXJlbmNlZCB3aXRoIEI8LS0iCisicGlkZmlsZT4gYW5kIHBsYWNlIHRoZSBwaWQgaW50byBpdCBqdXN0IGJlZm9yZSBleGVjdXRpbmcgdGhlIHByb2Nlc3MuIE5vdGUsICIKKyJ0aGUgZmlsZSB3aWxsIG5vdCBiZSByZW1vdmVkIHdoZW4gc3RvcHBpbmcgdGhlIHByb2dyYW0uICBCPE5PVEU6PiBUaGlzICIKKyJmZWF0dXJlIG1heSBub3Qgd29yayBpbiBhbGwgY2FzZXMuIE1vc3Qgbm90YWJseSB3aGVuIHRoZSBwcm9ncmFtIGJlaW5nICIKKyJleGVjdXRlZCBmb3JrcyBmcm9tIGl0cyBtYWluIHByb2Nlc3MuIEJlY2F1c2Ugb2YgdGhpcywgaXQgaXMgdXN1YWxseSBvbmx5ICIKKyJ1c2VmdWwgd2hlbiBjb21iaW5lZCB3aXRoIHRoZSBCPC0tYmFja2dyb3VuZD4gb3B0aW9uLiIKK21zZ3N0ciAiIgorIk9wY2phIHXFvHl3YW5hLCBnZHkgcHJvZ3JhbSBzYW0gbmllIHR3b3J6eSB3xYJhc25lZ28gcGxpa3UgcGlkLiBXeWtvcnp5c3RhbmllICIKKyJ0ZWogb3Bjamkgc3Bvd29kdWplLCDFvGUgQjxzdGFydC1zdG9wLWRhZW1vbj4gdXR3b3J6eSBwbGlrLCBrdMOzcnkgem9zdGHFgiAiCisicG9kYW55IHcgb3BjamkgQjwtLXBpZGZpbGU+IGkgdW1pZcWbY2kgdyBuaW0gbnVtZXIgcGlkIHR1xbwgcHJ6ZWQgIgorInVydWNob21pZW5pZW0gcHJvY2VzdS4gTmFsZcW8eSB6YXV3YcW8ecSHLCDFvGUgdGEgb3BjamEgbmllIHNrYXN1amUgdGVnbyBwbGlrdSAiCisicG8gemF0cnp5bWFuaXUgcHJvZ3JhbXUuIEI8VVdBR0E6PiBUYSBvcGNqYSBtb8W8ZSBuaWUgemFkemlhxYJhxIcgdyBrYcW8ZHltICIKKyJwcnp5cGFka3UuIE5pZSB6YWR6aWHFgmEgcHJ6ZWRlIHdzenlzdGtpbSB3dGVkeSwgZ2R5IHVydWNoYW1pYW55IHByb2dyYW0gIgorInV0d29yenkgcHJvY2VzIHBvdG9tbnkuIFogdGVnbyBwb3dvZHUgb3BjamEgamVzdCB1xbx5dGVjem5hIGplZHluaWUgd3JheiB6ICIKKyJvcGNqxIUgQjwtLWJhY2tncm91bmQ+LiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyNTgKK21zZ2lkICJQcmludCB2ZXJib3NlIGluZm9ybWF0aW9uYWwgbWVzc2FnZXMuIgorbXNnc3RyICJXecWbd2lldGxhbmUgc8SFIGRvZGF0a293ZSBrb211bmlrYXR5LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyNzAKK21zZ2lkICIiCisiVGhlIHJlcXVlc3RlZCBhY3Rpb24gd2FzIHBlcmZvcm1lZC4gSWYgQjwtLW9rbm9kbz4gd2FzIHNwZWNpZmllZCwgaXQncyBhbHNvICIKKyJwb3NzaWJsZSB0aGF0IG5vdGhpbmcgaGFkIHRvIGJlIGRvbmUuICBUaGlzIGNhbiBoYXBwZW4gd2hlbiBCPC0tc3RhcnQ+IHdhcyAiCisic3BlY2lmaWVkIGFuZCBhIG1hdGNoaW5nIHByb2Nlc3Mgd2FzIGFscmVhZHkgcnVubmluZywgb3Igd2hlbiBCPC0tc3RvcD4gd2FzICIKKyJzcGVjaWZpZWQgYW5kIHRoZXJlIHdlcmUgbm8gbWF0Y2hpbmcgcHJvY2Vzc2VzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjI3NQorbXNnaWQgIklmIEI8LS1va25vZG8+IHdhcyBub3Qgc3BlY2lmaWVkIGFuZCBub3RoaW5nIHdhcyBkb25lLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjI4MworbXNnaWQgIiIKKyJJZiBCPC0tc3RvcD4gYW5kIEI8LS1yZXRyeT4gd2VyZSBzcGVjaWZpZWQsIGJ1dCB0aGUgZW5kIG9mIHRoZSBzY2hlZHVsZSB3YXMgIgorInJlYWNoZWQgYW5kIHRoZSBwcm9jZXNzZXMgd2VyZSBzdGlsbCBydW5uaW5nLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyODMgc3RhcnQtc3RvcC1kYWVtb24uODoyOTUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPDM+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6Mjg2Cittc2dpZCAiQW55IG90aGVyIGVycm9yLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjI4OQorbXNnaWQgIiIKKyJXaGVuIHVzaW5nIHRoZSBCPC0tc3RhdHVzPiBjb21tYW5kLCB0aGUgZm9sbG93aW5nIHN0YXR1cyBjb2RlcyBhcmUgcmV0dXJuZWQ6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjkyCittc2dpZCAiUHJvZ3JhbSBpcyBydW5uaW5nLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjI5NQorbXNnaWQgIlByb2dyYW0gaXMgbm90IHJ1bm5pbmcgYW5kIHRoZSBwaWQgZmlsZSBleGlzdHMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6Mjk4Cittc2dpZCAiUHJvZ3JhbSBpcyBub3QgcnVubmluZy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6Mjk4CisjLCBuby13cmFwCittc2dpZCAiQjw0PiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjMwMQorbXNnaWQgIlVuYWJsZSB0byBkZXRlcm1pbmUgcHJvZ3JhbSBzdGF0dXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MzA1Cittc2dpZCAiIgorIlN0YXJ0IHRoZSBCPGZvb2Q+IGRhZW1vbiwgdW5sZXNzIG9uZSBpcyBhbHJlYWR5IHJ1bm5pbmcgKGEgcHJvY2VzcyBuYW1lZCAiCisiZm9vZCwgcnVubmluZyBhcyB1c2VyIGZvb2QsIHdpdGggcGlkIGluIGZvb2QucGlkKToiCittc2dzdHIgIiIKKyJVcnVjaGFtaWEgZGVtb24gQjxmb29kPiwgamXFm2xpIGplc3pjemUgbmllIGR6aWHFgmEgKHByb2NlcyBuYXp3YW55IGZvb2QsICIKKyJkemlhxYJhasSFY3kgamFrbyB1xbx5dGtvd25payBmb29kLCB6IGlkZW50eWZpa2F0b3JlbSBwcm9jZXN1IHcgcGxpa3UgZm9vZC5waWQpOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODozMDgKKyMsIG5vLXdyYXAKK21zZ2lkICJzdGFydC1zdG9wLWRhZW1vbiAtLXN0YXJ0IC0tb2tub2RvIC0tdXNlciBmb29kIC0tbmFtZSBmb29kIC0tcGlkZmlsZSAvdmFyL3J1bi9mb29kLnBpZCAtLXN0YXJ0YXMgL3Vzci9zYmluL2Zvb2QgLS1jaHVpZCBmb29kIC0tIC0tZGFlbW9uXG4iCittc2dzdHIgInN0YXJ0LXN0b3AtZGFlbW9uIC0tc3RhcnQgLS1va25vZG8gLS11c2VyIGZvb2QgLS1uYW1lIGZvb2QgLS1waWRmaWxlIC92YXIvcnVuL2Zvb2QucGlkIC0tc3RhcnRhcyAvdXNyL3NiaW4vZm9vZCAtLWNodWlkIGZvb2QgLS0gLS1kYWVtb25cbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODozMTEKK21zZ2lkICJTZW5kIEI8U0lHVEVSTT4gdG8gQjxmb29kPiBhbmQgd2FpdCB1cCB0byA1IHNlY29uZHMgZm9yIGl0IHRvIHN0b3A6IgorbXNnc3RyICJXecWbbGlqIEI8U0lHVEVSTT4gZG8gQjxmb29kPiBpIGN6ZWthaiBkbyA1IHNla3VuZCBuYSBqZWdvIHpha2/FhGN6ZW5pZToiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MzE0CisjLCBuby13cmFwCittc2dpZCAic3RhcnQtc3RvcC1kYWVtb24gLS1zdG9wIC0tb2tub2RvIC0tdXNlciBmb29kIC0tbmFtZSBmb29kIC0tcGlkZmlsZSAvdmFyL3J1bi9mb29kLnBpZCAtLXJldHJ5IDVcbiIKK21zZ3N0ciAic3RhcnQtc3RvcC1kYWVtb24gLS1zdG9wIC0tb2tub2RvIC0tdXNlciBmb29kIC0tbmFtZSBmb29kIC0tcGlkZmlsZSAvdmFyL3J1bi9mb29kLnBpZCAtLXJldHJ5IDVcbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODozMTcKK21zZ2lkICJEZW1vbnN0cmF0aW9uIG9mIGEgY3VzdG9tIHNjaGVkdWxlIGZvciBzdG9wcGluZyBCPGZvb2Q+OiIKK21zZ3N0ciAiUHJ6eWvFgmFkIHfFgmFzbmVnbyBwbGFudSB6YXRyenlteXdhbmlhIEI8Zm9vZD46IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjMyMAorIywgbm8td3JhcAorbXNnaWQgInN0YXJ0LXN0b3AtZGFlbW9uIC0tc3RvcCAtLW9rbm9kbyAtLXVzZXIgZm9vZCAtLW5hbWUgZm9vZCAtLXBpZGZpbGUgL3Zhci9ydW4vZm9vZC5waWQgLS1yZXRyeT1URVJNLzMwL0tJTEwvNVxuIgorbXNnc3RyICJzdGFydC1zdG9wLWRhZW1vbiAtLXN0b3AgLS1va25vZG8gLS11c2VyIGZvb2QgLS1uYW1lIGZvb2QgLS1waWRmaWxlIC92YXIvcnVuL2Zvb2QucGlkIC0tcmV0cnk9VEVSTS8zMC9LSUxMLzVcbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODozMjYKK21zZ2lkICIiCisiTWFyZWsgTWljaGFsa2lld2ljeiBFPGx0Pm1hcmVrbUBpMTdsaW51eGIuaXN0cy5wd3Iud3JvYy5wbEU8Z3Q+IGJhc2VkIG9uIGEgIgorInByZXZpb3VzIHZlcnNpb24gYnkgSWFuIEphY2tzb24gRTxsdD5pYW5AY2hpYXJrLmdyZWVuZW5kLm9yZy51a0U8Z3Q+LiIKK21zZ3N0ciAiIgorIk1hcmVrIE1pY2hhxYJraWV3aWN6IEU8bHQ+bWFyZWttQGkxN2xpbnV4Yi5pc3RzLnB3ci53cm9jLnBsRTxndD4gbmEgcG9kc3Rhd2llICIKKyJwb3ByemVkbmllaiB3ZXJzamkgbmFwaXNhbmVqIHByemV6IElhbmEgSmFja3NvbmEgRTxsdD5pamFja3NvbkBnbnUuYWkubWl0LiIKKyJlZHVFPGd0PiIKKworIworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODozMjgKK21zZ2lkICIiCisiTWFudWFsIHBhZ2UgYnkgS2xlZSBEaWVuZXMgRTxsdD5rbGVlQG1pdC5lZHVFPGd0PiwgcGFydGlhbGx5IHJlZm9ybWF0dGVkIGJ5ICIKKyJJYW4gSmFja3Nvbi4iCittc2dzdHIgIiIKKyJQb2RyxJljem5payBuYXBpc2HFgiBLbGVlIERpZW5lcyBFPGx0PmtsZWVAbWl0LmVkdUU8Z3Q+LCBhIHBvcHJhd2nFgiBJYW4gIgorIkphY2tzb24uIgorCisjLiB0eXBlOiBUSAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjgKKyMsIG5vLXdyYXAKK21zZ2lkICJ1cGRhdGUtYWx0ZXJuYXRpdmVzIgorbXNnc3RyICJ1cGRhdGUtYWx0ZXJuYXRpdmVzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTEKK21zZ2lkICIiCisidXBkYXRlLWFsdGVybmF0aXZlcyAtIG1haW50YWluIHN5bWJvbGljIGxpbmtzIGRldGVybWluaW5nIGRlZmF1bHQgY29tbWFuZHMiCittc2dzdHIgIiIKKyJ1cGRhdGUtYWx0ZXJuYXRpdmVzIC0gemFyesSFZHphbmllIGRvd2nEhXphbmlhbWkgc3ltYm9saWN6bnltaSBva3JlxZtsYWrEhWN5bWkgIgorImRvbXnFm2xuZSBwb2xlY2VuaWEiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNQorIywgZnV6enkKKyN8IG1zZ2lkICJCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IFtJPG9wdGlvbnM+XSBJPGNvbW1hbmQ+IgorbXNnaWQgIkI8dXBkYXRlLWFsdGVybmF0aXZlcz4gW0k8b3B0aW9uPi4uLl0gSTxjb21tYW5kPiIKK21zZ3N0ciAiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBbSTxvcGNqZT5dIEk8cG9sZWNlbmllPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjIwCittc2dpZCAiIgorIkI8dXBkYXRlLWFsdGVybmF0aXZlcz4gY3JlYXRlcywgcmVtb3ZlcywgbWFpbnRhaW5zIGFuZCBkaXNwbGF5cyBpbmZvcm1hdGlvbiAiCisiYWJvdXQgdGhlIHN5bWJvbGljIGxpbmtzIGNvbXByaXNpbmcgdGhlIERlYmlhbiBhbHRlcm5hdGl2ZXMgc3lzdGVtLiIKK21zZ3N0ciAiIgorIkI8dXBkYXRlLWFsdGVybmF0aXZlcz4gdHdvcnp5LCB1c3V3YSwgd3nFm3dpZXRsYSBpbmZvcm1hY2plIG8gZG93acSFemFuaWFjaCAiCisic3ltYm9saWN6bnljaCBza8WCYWRhasSFY3ljaCBzacSZIG5hIHN5c3RlbSBhbHRlcm5hdHl3IERlYmlhbmEgb3JheiBuaW1pICIKKyJ6YXJ6xIVkemEuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjgKK21zZ2lkICIiCisiSXQgaXMgcG9zc2libGUgZm9yIHNldmVyYWwgcHJvZ3JhbXMgZnVsZmlsbGluZyB0aGUgc2FtZSBvciBzaW1pbGFyIGZ1bmN0aW9ucyAiCisidG8gYmUgaW5zdGFsbGVkIG9uIGEgc2luZ2xlIHN5c3RlbSBhdCB0aGUgc2FtZSB0aW1lLiAgRm9yIGV4YW1wbGUsIG1hbnkgIgorInN5c3RlbXMgaGF2ZSBzZXZlcmFsIHRleHQgZWRpdG9ycyBpbnN0YWxsZWQgYXQgb25jZS4gIFRoaXMgZ2l2ZXMgY2hvaWNlIHRvICIKKyJ0aGUgdXNlcnMgb2YgYSBzeXN0ZW0sIGFsbG93aW5nIGVhY2ggdG8gdXNlIGEgZGlmZmVyZW50IGVkaXRvciwgaWYgZGVzaXJlZCwgIgorImJ1dCBtYWtlcyBpdCBkaWZmaWN1bHQgZm9yIGEgcHJvZ3JhbSB0byBtYWtlIGEgZ29vZCBjaG9pY2UgZm9yIGFuIGVkaXRvciB0byAiCisiaW52b2tlIGlmIHRoZSB1c2VyIGhhcyBub3Qgc3BlY2lmaWVkIGEgcGFydGljdWxhciBwcmVmZXJlbmNlLiIKK21zZ3N0ciAiIgorIktpbGthIHByb2dyYW3Ds3cgbWFqxIVjeWNoIHTEmSBzYW3EhSBsdWIgcG9kb2JuxIUgZnVua2Nqb25hbG5vxZvEhyBtb8W8ZSB6b3N0YcSHICIKKyJ6YWluc3RhbG93YW55Y2ggdyBzeXN0ZW1pZSB3IHR5bSBzYW15bSBjemFzaWUuIE5hIHByenlrxYJhZCB3IHdpZWx1IHN5c3RlbWFjaCAiCisiamVzdCB6YWluc3RhbG93YW55Y2ggamVkbm9jemXFm25pZSBraWxrYSBlZHl0b3LDs3cgdGVrc3R1LiBTdGFub3dpIHRvICIKKyJ1xYJhdHdpZW5pZSBkbGEgdcW8eXRrb3duaWvDs3cgdGFraWVnbyBzeXN0ZW11LCB6IGt0w7NyeWNoIGthxbxkeSBtb8W8ZSB1cnVjaG9tacSHICIKKyJpbm55IGVkeXRvciwgamXFm2xpIG1hIG5hIHRvIG9jaG90xJkuIFogZHJ1Z2llaiBzdHJvbnkgamVzdCB0byBqZWRuYWsgIgorInV0cnVkbmllbmllIGRsYSBwcm9ncmFtw7N3IGNoY8SFY3ljaCBwb2RqxIXEhyB3xYJhxZtjaXfEhSBkZWN5emrEmSwga3TDs3J5IGVkeXRvciAiCisidXJ1Y2hvbWnEhywgamXFvGVsaSB1xbx5dGtvd25payBuaWUgb2tyZcWbbGnFgiBzd29pY2ggcHJlZmVyZW5jamkgY28gZG8gZWR5dG9yYS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo1MAorbXNnaWQgIiIKKyJEZWJpYW4ncyBhbHRlcm5hdGl2ZXMgc3lzdGVtIGFpbXMgdG8gc29sdmUgdGhpcyBwcm9ibGVtLiAgQSBnZW5lcmljIG5hbWUgaW4gIgorInRoZSBmaWxlc3lzdGVtIGlzIHNoYXJlZCBieSBhbGwgZmlsZXMgcHJvdmlkaW5nIGludGVyY2hhbmdlYWJsZSAiCisiZnVuY3Rpb25hbGl0eS4gIFRoZSBhbHRlcm5hdGl2ZXMgc3lzdGVtIGFuZCB0aGUgc3lzdGVtIGFkbWluaXN0cmF0b3IgIgorInRvZ2V0aGVyIGRldGVybWluZSB3aGljaCBhY3R1YWwgZmlsZSBpcyByZWZlcmVuY2VkIGJ5IHRoaXMgZ2VuZXJpYyBuYW1lLiAgIgorIkZvciBleGFtcGxlLCBpZiB0aGUgdGV4dCBlZGl0b3JzIEI8ZWQ+KDEpICBhbmQgQjxudmk+KDEpICBhcmUgYm90aCBpbnN0YWxsZWQgIgorIm9uIHRoZSBzeXN0ZW0sIHRoZSBhbHRlcm5hdGl2ZXMgc3lzdGVtIHdpbGwgY2F1c2UgdGhlIGdlbmVyaWMgbmFtZSBJPC91c3IvIgorImJpbi9lZGl0b3I+IHRvIHJlZmVyIHRvIEk8L3Vzci9iaW4vbnZpPiBieSBkZWZhdWx0LiBUaGUgc3lzdGVtIGFkbWluaXN0cmF0b3IgIgorImNhbiBvdmVycmlkZSB0aGlzIGFuZCBjYXVzZSBpdCB0byByZWZlciB0byBJPC91c3IvYmluL2VkPiBpbnN0ZWFkLCBhbmQgdGhlICIKKyJhbHRlcm5hdGl2ZXMgc3lzdGVtIHdpbGwgbm90IGFsdGVyIHRoaXMgc2V0dGluZyB1bnRpbCBleHBsaWNpdGx5IHJlcXVlc3RlZCAiCisidG8gZG8gc28uIgorbXNnc3RyICIiCisiQ2VsZW0gc3lzdGVtdSBhbHRlcm5hdHl3IERlYmlhbmEgamVzdCByb3p3acSFemFuaWUgdGVnbyBwcm9ibGVtdS4gT2fDs2xuYSAiCisibmF6d2EgdyBzeXN0ZW1pZSBwbGlrw7N3IGplc3Qgd3Nww7PFgmR6aWVsb25hIHByemV6IHdzenlzdGtpZSBwbGlraSAiCisiZG9zdGFyY3phasSFY2Ugem1pZW5pYWrEhWPEhSBzacSZIGZ1bmtjam9uYWxub8WbxIcuIFN5c3RlbSBhbHRlcm5hdHl3IG9yYXogIgorImFkbWluaXN0cmF0b3Igc3lzdGVtdSBva3JlxZtsYWrEhSwgZG8ga3TDs3JlZ28gb2JlY25lZ28gcGxpa3UgcHJvd2FkemkgdGEgIgorIm9nw7NsbmEgbmF6d2EuIE5hIHByenlrxYJhZCwgamXFvGVsaSB6YWluc3RhbG93YW5vIHphcsOzd25vIGVkeXRvciBCPGVkPigxKSBqYWsgIgorImkgQjxudmk+KDEpLCB0byBzeXN0ZW0gYWx0ZXJuYXR5dyBzcG93b2R1amUsIMW8ZSBuYXp3YSBvZ8OzbG5hIEk8L3Vzci9iaW4vIgorImVkaXRvcj4gYsSZZHppZSBzacSZIG9kbm9zacSHIGRvIEk8L3Vzci9iaW4vbnZpPi4gQWRtaW5pc3RyYXRvciBzeXN0ZW11IG1vxbxlICIKKyJ6bWllbmnEhyB0byB1c3Rhd2llbmllIG5hIEk8L3Vzci9iaW4vZWQ+LCBhIHN5c3RlbSBhbHRlcm5hdHl3IHRlZ28gbmllICIKKyJ6bWllbmksIGNoeWJhIMW8ZSBhZG1pbmlzdHJhdG9yIGthxbxlIG11IHRhayB6cm9iacSHLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjYwCittc2dpZCAiIgorIlRoZSBnZW5lcmljIG5hbWUgaXMgbm90IGEgZGlyZWN0IHN5bWJvbGljIGxpbmsgdG8gdGhlIHNlbGVjdGVkIGFsdGVybmF0aXZlLiAgIgorIkluc3RlYWQsIGl0IGlzIGEgc3ltYm9saWMgbGluayB0byBhIG5hbWUgaW4gdGhlIEk8YWx0ZXJuYXRpdmVzPiAiCisiSTxkaXJlY3Rvcnk+LCB3aGljaCBpbiB0dXJuIGlzIGEgc3ltYm9saWMgbGluayB0byB0aGUgYWN0dWFsIGZpbGUgIgorInJlZmVyZW5jZWQuICBUaGlzIGlzIGRvbmUgc28gdGhhdCB0aGUgc3lzdGVtIGFkbWluaXN0cmF0b3IncyBjaGFuZ2VzIGNhbiBiZSAiCisiY29uZmluZWQgd2l0aGluIHRoZSBJPC9ldGM+IGRpcmVjdG9yeTogdGhlIEZIUyAocS52LikgZ2l2ZXMgcmVhc29ucyB3aHkgdGhpcyAiCisiaXMgYSBHb29kIFRoaW5nLiIKK21zZ3N0ciAiIgorIk5hendhIG9nw7NsbmEgbmllIGplc3QgYmV6cG/Fm3JlZG5pbSBkb3dpxIV6YW5pZW0gc3ltYm9saWN6bnltIGRvIHd5YnJhbmVqICIKKyJhbHRlcm5hdHl3eSwgYWxlIGplc3QgZG93acSFemFuaWVtIGRvIHBsaWt1IHcgSTxrYXRhbG9ndT4gSTxhbHRlcm5hdHl3PiwgIgorImt0w7NyZSB6IGtvbGVpIGplc3QgZG93acSFemFuaWVtIGRvIHfFgmHFm2Npd2VnbyBwbGlrdS4gSmVzdCB0YWsgenJvYmlvbmUgIgorImRsYXRlZ28sIMW8ZWJ5IHptaWFueSB3cHJvd2FkemFuZSBwcnpleiBhZG1pbmlzdHJhdG9yYSBzeXN0ZW11IGJ5xYJ5ICIKKyJvZ3Jhbmljem9uZSBkbyBrYXRhbG9ndSBJPC9ldGM+OiBzdGFuZGFyZCBGSFMgd3ltaWVuaWEgcG93b2R5LCBhYnkgdGFrICIKKyJ6cm9iacSHLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjcyCittc2dpZCAiIgorIldoZW4gZWFjaCBwYWNrYWdlIHByb3ZpZGluZyBhIGZpbGUgd2l0aCBhIHBhcnRpY3VsYXIgZnVuY3Rpb25hbGl0eSBpcyAiCisiaW5zdGFsbGVkLCBjaGFuZ2VkIG9yIHJlbW92ZWQsIEI8dXBkYXRlLWFsdGVybmF0aXZlcz4gaXMgY2FsbGVkIHRvIHVwZGF0ZSAiCisiaW5mb3JtYXRpb24gYWJvdXQgdGhhdCBmaWxlIGluIHRoZSBhbHRlcm5hdGl2ZXMgc3lzdGVtLiAgQjx1cGRhdGUtIgorImFsdGVybmF0aXZlcz4gaXMgdXN1YWxseSBjYWxsZWQgZnJvbSB0aGUgQjxwb3N0aW5zdD4gKGNvbmZpZ3VyZSkgb3IgQjxwcmVybT4gIgorIihpbnN0YWxsKSBzY3JpcHRzIGluIERlYmlhbiBwYWNrYWdlcy4iCittc2dzdHIgIiIKKyJLaWVkeSBwYWtpZXQgZG9zdGFyY3phasSFY3kgcGxpa3UgbyBva3JlxZtsb25laiBmdW5rY2pvbmFsbm/Fm2NpIGplc3QgIgorImluc3RhbG93YW55LCB6bWllbmlhbnkgbHViIHVzdXdhbnksIHd5d2/Fgnl3YW55IGplc3QgcHJvZ3JhbSBCPHVwZGF0ZS0iCisiYWx0ZXJuYXRpdmVzPiwgYWJ5IHpha3R1YWxpem93YcSHIGluZm9ybWFjamUgbyB0eW0gcGxpa3UgdyBzeXN0ZW1pZSAiCisiYWx0ZXJuYXR5dy4gQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBqZXN0IHphend5Y3phaiB3eXdvxYJ5d2FueSB6ZSBza3J5cHTDs3cgIgorIkI8cG9zdGluc3Q+IChjb25maWd1cmUpIGx1YiBCPHByZXJtPiAoaW5zdGFsbCkgdyBwYWtpZXRhY2ggRGViaWFuYS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo5MQorbXNnaWQgIiIKKyJJdCBpcyBvZnRlbiB1c2VmdWwgZm9yIGEgbnVtYmVyIG9mIGFsdGVybmF0aXZlcyB0byBiZSBzeW5jaHJvbmlzZWQsIHNvIHRoYXQgIgorInRoZXkgYXJlIGNoYW5nZWQgYXMgYSBncm91cDsgZm9yIGV4YW1wbGUsIHdoZW4gc2V2ZXJhbCB2ZXJzaW9ucyBvZiB0aGUgQjx2aT4iCisiKDEpICBlZGl0b3IgYXJlIGluc3RhbGxlZCwgdGhlIG1hbiBwYWdlIHJlZmVyZW5jZWQgYnkgSTwvdXNyL3NoYXJlL21hbi9tYW4xLyIKKyJ2aS4xPiBzaG91bGQgY29ycmVzcG9uZCB0byB0aGUgZXhlY3V0YWJsZSByZWZlcmVuY2VkIGJ5IEk8L3Vzci9iaW4vdmk+LiAgIgorIkI8dXBkYXRlLWFsdGVybmF0aXZlcz4gaGFuZGxlcyB0aGlzIGJ5IG1lYW5zIG9mIEk8bWFzdGVyPiBhbmQgSTxzbGF2ZT4gIgorImxpbmtzOyB3aGVuIHRoZSBtYXN0ZXIgaXMgY2hhbmdlZCwgYW55IGFzc29jaWF0ZWQgc2xhdmVzIGFyZSBjaGFuZ2VkIHRvby4gIEEgIgorIm1hc3RlciBsaW5rIGFuZCBpdHMgYXNzb2NpYXRlZCBzbGF2ZXMgbWFrZSB1cCBhIEk8bGluaz4gSTxncm91cD4uIgorbXNnc3RyICIiCisiQ3rEmXN0byB1xbx5dGVjem5lIGplc3QsIGFieSBwZXduYSBsaWN6YmEgYWx0ZXJuYXR5dyBiecWCYSB6c3luY2hyb25pem93YW5hLCAiCisidGFrIMW8ZWJ5IGJ5xYJhIHptaWVuaWFuYSBqYWtvIGdydXBhLiBOYSBwcnp5a8WCYWQgamXFvGVsaSBqZXN0IHphaW5zdGFsb3dhbmUgIgorImtpbGthIHdlcnNqaSBlZHl0b3JhIEI8dmk+KDEpLCB0byBzdHJvbmEgcG9kcsSZY3puaWthIEk8L3Vzci9zaGFyZS9tYW4vbWFuMS8iCisidmkuMT4gcG93aW5uYSBvZHBvd2lhZGHEhyB3ZXJzamkgcHJvZ3JhbXUgemFpbnN0YWxvd2FuZWdvIGpha28gSTwvdXNyL2Jpbi8iCisidmk+LiBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IG9ic8WCdWd1amUgdG8gcHJ6eSBwb21vY3kgZG93acSFemHFhCBJPGfFgsOzd255Y2g+IGkgIgorIkk8cG9kcnrEmWRueWNoPiAtIHptaWFuYSBkb3dpxIV6YW5pYSBnxYLDs3duZWdvIHBvd29kdWplIHptaWFuxJkgc2tvamFyem9ueWNoICIKKyJkb3dpxIV6YcWEIHBvZHJ6xJlkbnljaC4gRG93acSFemFuaWUgZ8WCw7N3bmUgaSBza29qYXJ6b25lIHogbmltIGRvd2nEhXphbmlhICIKKyJwb2RyesSZZG5lIHR3b3J6xIUgSTxncnVwxJk+IEk8ZG93acSFemHFhD4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTAwCittc2dpZCAiIgorIkVhY2ggbGluayBncm91cCBpcywgYXQgYW55IGdpdmVuIHRpbWUsIGluIG9uZSBvZiB0d28gbW9kZXM6IGF1dG9tYXRpYyBvciAiCisibWFudWFsLiAgV2hlbiBhIGdyb3VwIGlzIGluIGF1dG9tYXRpYyBtb2RlLCB0aGUgYWx0ZXJuYXRpdmVzIHN5c3RlbSB3aWxsICIKKyJhdXRvbWF0aWNhbGx5IGRlY2lkZSwgYXMgcGFja2FnZXMgYXJlIGluc3RhbGxlZCBhbmQgcmVtb3ZlZCwgd2hldGhlciBhbmQgaG93ICIKKyJ0byB1cGRhdGUgdGhlIGxpbmtzLiAgSW4gbWFudWFsIG1vZGUsIHRoZSBhbHRlcm5hdGl2ZXMgc3lzdGVtIHdpbGwgcmV0YWluICIKKyJ0aGUgY2hvaWNlIG9mIHRoZSBhZG1pbmlzdHJhdG9yIGFuZCBhdm9pZCBjaGFuZ2luZyB0aGUgbGlua3MgKGV4Y2VwdCB3aGVuICIKKyJzb21ldGhpbmcgaXMgYnJva2VuKS4iCittc2dzdHIgIiIKKyJLYcW8ZGEgZ3J1cGEgZG93acSFemHFhCBqZXN0IHphd3N6ZSB3IGplZG55bSB6IGR3w7NjaCB0cnliw7N3OiBhdXRvbWF0eWN6bnltIGx1YiAiCisicsSZY3pueW0uIFcgdHJ5YmllIGF1dG9tYXR5Y3pueW0gcG9kY3phcyBpbnN0YWxhY2ppIGx1YiB1c3V3YW5pYSBwYWtpZXR1ICIKKyJzeXN0ZW0gYWx0ZXJuYXR5dyBhdXRvbWF0eWN6bmllIHpkZWN5ZHVqZSwgY3p5IGkgamFrIGFrdHVhbGl6b3dhxIcgIgorImRvd2nEhXphbmlhLiBXIHRyeWJpZSByxJljem55bSBzeXN0ZW0gYWx0ZXJuYXR5dyBuaWUgYsSZZHppZSB6bWllbmlhxYIgZG93acSFemHFhCAiCisiaSB6b3N0YXdpIHdzenlzdGtpZSBkZWN5emplIGFkbWluaXN0cmF0b3Jvd2kgc3lzdGVtdS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxMDkKK21zZ2lkICIiCisiTGluayBncm91cHMgYXJlIGluIGF1dG9tYXRpYyBtb2RlIHdoZW4gdGhleSBhcmUgZmlyc3QgaW50cm9kdWNlZCB0byB0aGUgIgorInN5c3RlbS4gIElmIHRoZSBzeXN0ZW0gYWRtaW5pc3RyYXRvciBtYWtlcyBjaGFuZ2VzIHRvIHRoZSBzeXN0ZW0ncyBhdXRvbWF0aWMgIgorInNldHRpbmdzLCB0aGlzIHdpbGwgYmUgbm90aWNlZCB0aGUgbmV4dCB0aW1lIEI8dXBkYXRlLWFsdGVybmF0aXZlcz4gaXMgcnVuICIKKyJvbiB0aGUgY2hhbmdlZCBsaW5rJ3MgZ3JvdXAsIGFuZCB0aGUgZ3JvdXAgd2lsbCBhdXRvbWF0aWNhbGx5IGJlIHN3aXRjaGVkIHRvICIKKyJtYW51YWwgbW9kZS4iCittc2dzdHIgIiIKKyJHcnVwYSBkb3dpxIV6YcWEIGplc3QgdHJ5YmllIGF1dG9tYXR5Y3pueW0sIGtpZWR5IGplc3QgcG8gcmF6IHBpZXJ3c3p5ICIKKyJ3cHJvd2FkemFuYSBkbyBzeXN0ZW11LiBKZcW8ZWxpIGFkbWluaXN0cmF0b3Igc3lzdGVtdSB3cHJvd2Fkemkgem1pYW55IGRvICIKKyJhdXRvbWF0eWN6bnljaCB1c3Rhd2llxYQsIGLEmWTEhSBvbmUgd3ppxJl0ZSBwb2QgdXdhZ8SZIHBvZGN6YXMgbmFzdMSZcG5lZ28gIgorInVydWNob21pZW5pYSBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IG5hIHRha2llaiB6bWllbmlvbmVqIGdydXBpZSBkb3dpxIV6YcWELCBhICIKKyJncnVwYSB0YSBhdXRvbWF0eWN6bmllIHByemVqZHppZSB3IHRyeWIgcsSZY3pueS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxMTYKK21zZ2lkICIiCisiRWFjaCBhbHRlcm5hdGl2ZSBoYXMgYSBJPHByaW9yaXR5PiBhc3NvY2lhdGVkIHdpdGggaXQuICBXaGVuIGEgbGluayBncm91cCBpcyAiCisiaW4gYXV0b21hdGljIG1vZGUsIHRoZSBhbHRlcm5hdGl2ZXMgcG9pbnRlZCB0byBieSBtZW1iZXJzIG9mIHRoZSBncm91cCB3aWxsICIKKyJiZSB0aG9zZSB3aGljaCBoYXZlIHRoZSBoaWdoZXN0IHByaW9yaXR5LiIKK21zZ3N0ciAiIgorIloga2HFvGTEhSBhbHRlcm5hdHl3xIUgc2tvamFyem9ueSBqZXN0IEk8cHJpb3J5dGV0Pi4gSmXFvGVsaSBncnVwYSBkb3dpxIV6YcWEIGplc3QgIgorIncgdHJ5YmllIGF1dG9tYXR5Y3pueW0sIHRvIHd5YnJhbsSFIGFsdGVybmF0eXfEhSBixJlkemllIHRhLCBrdMOzcmEgbWEgbmFqd3nFvHN6eSAiCisicHJpb3J5dGV0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjEzMworIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiV2hlbiB1c2luZyB0aGUgSTwtLWNvbmZpZz4gb3B0aW9uLCBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IHdpbGwgbGlzdCBhbGwgIgorI3wgIm9mIHRoZSBjaG9pY2VzIGZvciB0aGUgbGluayBncm91cCBvZiB3aGljaCBnaXZlbiBJPG5hbWU+IGlzIHRoZSBtYXN0ZXIgIgorI3wgImFsdGVybmF0aXZlIG5hbWUuIFRoZSBjdXJyZW50IGNob2ljZSBpcyBtYXJrZWQgd2l0aCBhICcqJy4gIFlvdSB3aWxsIHRoZW4gIgorI3wgImJlIHByb21wdGVkIGZvciB5b3VyIGNob2ljZSByZWdhcmRpbmcgdGhpcyBsaW5rIGdyb3VwLiAgRGVwZW5kaW5nIG9uIHRoZSAiCisjfCAiY2hvaWNlIG1hZGUsIHRoZSBsaW5rIGdyb3VwIG1pZ2h0IG5vIGxvbmdlciBiZSBpbiBJPGF1dG8+IG1vZGUuIFlvdSB3aWxsICIKKyN8ICJuZWVkIHRvIHVzZSB0aGUgSTwtLWF1dG8+IG9wdGlvbiBpbiBvcmRlciB0byByZXR1cm4gdG8gdGhlIGF1dG9tYXRpYyBtb2RlICIKKyN8ICIob3IgeW91IGNhbiByZXJ1biBJPC0tY29uZmlnPiBhbmQgc2VsZWN0IHRoZSBlbnRyeSBtYXJrZWQgYXMgYXV0b21hdGljKS4iCittc2dpZCAiIgorIldoZW4gdXNpbmcgdGhlIEI8LS1jb25maWc+IG9wdGlvbiwgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiB3aWxsIGxpc3QgYWxsIG9mICIKKyJ0aGUgY2hvaWNlcyBmb3IgdGhlIGxpbmsgZ3JvdXAgb2Ygd2hpY2ggZ2l2ZW4gSTxuYW1lPiBpcyB0aGUgbWFzdGVyICIKKyJhbHRlcm5hdGl2ZSBuYW1lLiBUaGUgY3VycmVudCBjaG9pY2UgaXMgbWFya2VkIHdpdGggYSAnKicuICBZb3Ugd2lsbCB0aGVuIGJlICIKKyJwcm9tcHRlZCBmb3IgeW91ciBjaG9pY2UgcmVnYXJkaW5nIHRoaXMgbGluayBncm91cC4gIERlcGVuZGluZyBvbiB0aGUgY2hvaWNlICIKKyJtYWRlLCB0aGUgbGluayBncm91cCBtaWdodCBubyBsb25nZXIgYmUgaW4gSTxhdXRvPiBtb2RlLiBZb3Ugd2lsbCBuZWVkIHRvICIKKyJ1c2UgdGhlIEI8LS1hdXRvPiBvcHRpb24gaW4gb3JkZXIgdG8gcmV0dXJuIHRvIHRoZSBhdXRvbWF0aWMgbW9kZSAob3IgeW91ICIKKyJjYW4gcmVydW4gQjwtLWNvbmZpZz4gYW5kIHNlbGVjdCB0aGUgZW50cnkgbWFya2VkIGFzIGF1dG9tYXRpYykuIgorbXNnc3RyICIiCisiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiB1xbx5dGUgeiBvcGNqxIUgSTwtLWNvbmZpZz4gd3nFm3dpZXRsaSBsaXN0xJkgd3N6eXN0a2ljaCAiCisiYWx0ZXJuYXR5dyBkbGEgZ3J1cHkgZG93acSFemHFhCwgZGxhIGt0w7NyZWogcG9kYW5hIEk8bmF6d2E+IGplc3QgbmF6d8SFICIKKyJnxYLDs3duZWdvIGRvd2nEhXphbmlhLiBCaWXFvMSFY2EgYWx0ZXJuYXR5d2EgYsSZZHppZSBvem5hY3pvbmEgem5ha2llbSBcIipcIi4gIgorIlXFvHl0a293bmlrIHpvc3RhbmllIHBvcHJvc3pvbnkgbyB3eWLDs3IgYWx0ZXJuYXR5d3ksIGt0w7NyYSBixJlkemllIHXFvHl3YW5hIGRsYSAiCisidGVqIGdydXB5IGRvd2nEhXphxYQuIFBvIGRva29uYW5pdSB6bWlhbnkgZ3J1cGEgZG93acSFemHFhCBuaWUgYsSZZHppZSBqdcW8IHcgIgorInRyeWJpZSBJPGF1dG9tYXR5Y3pueW0+LiBBYnkgcHJ6eXdyw7NjacSHIHRyeWIgYXV0b21hdHljem55LCBuYWxlxbx5IHXFvHnEhyBvcGNqaSAiCisiSTwtLWF1dG8+IChsdWIgcG9ub3duaWUgdXJ1Y2hvbWnEhyBJPC0tY29uZmlnPiBpIHd5YnJhxIcgcG96eWNqxJkgb3puYWN6b27EhSAiCisiamFrbyBhdXRvbWF0eWN6bsSFKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxMzcKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIklmIHlvdSB3YW50IHRvIGNvbmZpZ3VyZSBub24taW50ZXJhY3RpdmVseSB5b3UgY2FuIHVzZSB0aGUgSTwtLXNldD4gIgorI3wgIm9wdGlvbiBpbnN0ZWFkIChzZWUgYmVsb3cpLiIKK21zZ2lkICIiCisiSWYgeW91IHdhbnQgdG8gY29uZmlndXJlIG5vbi1pbnRlcmFjdGl2ZWx5IHlvdSBjYW4gdXNlIHRoZSBCPC0tc2V0PiBvcHRpb24gIgorImluc3RlYWQgKHNlZSBiZWxvdykuIgorbXNnc3RyICIiCisiQWJ5IHNrb25maWd1cm93YcSHIG5pZWludGVyYWt0eXduaWUsIG1vxbxuYSB1xbx5xIcgb3BjamkgSTwtLXNldD4gKHBhdHJ6IG5pxbxlaikuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTQ4Cittc2dpZCAiIgorIkRpZmZlcmVudCBwYWNrYWdlcyBwcm92aWRpbmcgdGhlIHNhbWUgZmlsZSBuZWVkIHRvIGRvIHNvIEI8Y29vcGVyYXRpdmVseT4uICAiCisiSW4gb3RoZXIgd29yZHMsIHRoZSB1c2FnZSBvZiBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IGlzIEI8bWFuZGF0b3J5PiBmb3IgYWxsICIKKyJpbnZvbHZlZCBwYWNrYWdlcyBpbiBzdWNoIGNhc2UuIEl0IGlzIG5vdCBwb3NzaWJsZSB0byBvdmVycmlkZSBzb21lIGZpbGUgaW4gIgorImEgcGFja2FnZSB0aGF0IGRvZXMgbm90IGVtcGxveSB0aGUgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBtZWNoYW5pc20uIgorbXNnc3RyICIiCisiUsOzxbxuZSBwYWtpZXR5IGRvc3RhcmN6YWrEhWNlIHR5Y2ggc2FteWNoIHBsaWvDs3cgcG93aW5ueSBCPHdzcMOzxYJwcmFjb3dhxIc+IHplICIKKyJzb2LEhSB3IHR5bSB6YWtyZXNpZS4gT3puYWN6YSB0bywgxbxlIHXFvHl3YW5pZSBwcm9ncmFtdSBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+ICIKKyJqZXN0IEI8b2Jvd2nEhXprb3dlPiBkbGEgd3N6eXN0a2ljaCB0YWtpY2ggcGFraWV0w7N3IC0gbmllIGplc3QgbW/FvGxpd2UgIgorIm5hZHBpc2FuaWUgcGV3bnljaCBwbGlrw7N3IHcgcGFraWVjaWUsIGt0w7NyeSBuaWUgdcW8eXdhIG1lY2hhbml6bXUgQjx1cGRhdGUtIgorImFsdGVybmF0aXZlcz4uIgorCisjLiB0eXBlOiBTSAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE0OQorIywgbm8td3JhcAorbXNnaWQgIlRFUk1JTk9MT0dZIgorbXNnc3RyICJURVJNSU5PTE9HSUEiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNTQKK21zZ2lkICIiCisiU2luY2UgdGhlIGFjdGl2aXRpZXMgb2YgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBhcmUgcXVpdGUgaW52b2x2ZWQsIHNvbWUgIgorInNwZWNpZmljIHRlcm1zIHdpbGwgaGVscCB0byBleHBsYWluIGl0cyBvcGVyYXRpb24uIgorbXNnc3RyICIiCisiUG9uaWV3YcW8IG9wZXJhY2plIHByb2dyYW11IEI8dXBkYXRlLWFsdGVybmF0aXZlcz4gc8SFIGRvxZvEhyB6xYJvxbxvbmUsIHBvbmnFvGVqICIKKyJwb2RhbmUgc8SFIHRlcm1pbnksIGt0w7NyZSBwb21vZ8SFIGplIHpyb3p1bWllxIcuIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE1NAorIywgbm8td3JhcAorbXNnaWQgImdlbmVyaWMgbmFtZSAob3IgYWx0ZXJuYXRpdmUgbGluaykiCittc2dzdHIgIm5hendhIG9nw7NsbmEgKGx1YiBkb3dpxIV6YW5pZSBhbHRlcm5hdHl3eSkiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNjAKK21zZ2lkICIiCisiQSBuYW1lLCBsaWtlIEk8L3Vzci9iaW4vZWRpdG9yPiwgd2hpY2ggcmVmZXJzLCB2aWEgdGhlIGFsdGVybmF0aXZlcyBzeXN0ZW0sICIKKyJ0byBvbmUgb2YgYSBudW1iZXIgb2YgZmlsZXMgb2Ygc2ltaWxhciBmdW5jdGlvbi4iCittc2dzdHIgIiIKKyJOYXp3YSwgdGFrYSBqYWsgSTwvdXNyL2Jpbi9lZGl0b3I+LCBrdMOzcmEgb2Rub3NpIHNpxJkgcHJ6ZXogc3lzdGVtIGFsdGVybmF0eXcgIgorImRvIGplZG5lZ28geiBraWxrdSBwbGlrw7N3IG8gcG9kb2JuZWogZnVua2Nqb25hbG5vxZtjaS4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTYwCisjLCBuby13cmFwCittc2dpZCAiYWx0ZXJuYXRpdmUgbmFtZSIKK21zZ3N0ciAibmF6d2EgYWx0ZXJuYXR5d3kiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNjMKK21zZ2lkICJUaGUgbmFtZSBvZiBhIHN5bWJvbGljIGxpbmsgaW4gdGhlIGFsdGVybmF0aXZlcyBkaXJlY3RvcnkuIgorbXNnc3RyICJOYXp3YSBkb3dpxIV6YW5pYSBzeW1ib2xpY3puZWdvIHcga2F0YWxvZ3UgYWx0ZXJuYXR5dy4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTYzCisjLCBuby13cmFwCittc2dpZCAiYWx0ZXJuYXRpdmUgKG9yIGFsdGVybmF0aXZlIHBhdGgpIgorbXNnc3RyICJhbHRlcm5hdHl3YSAobHViIMWbY2llxbxrYSBhbHRlcm5hdHl3eSkiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNjcKK21zZ2lkICIiCisiVGhlIG5hbWUgb2YgYSBzcGVjaWZpYyBmaWxlIGluIHRoZSBmaWxlc3lzdGVtLCB3aGljaCBtYXkgYmUgbWFkZSBhY2Nlc3NpYmxlICIKKyJ2aWEgYSBnZW5lcmljIG5hbWUgdXNpbmcgdGhlIGFsdGVybmF0aXZlcyBzeXN0ZW0uIgorbXNnc3RyICIiCisiTmF6d2Egb2tyZcWbbG9uZWdvIHBsaWt1IHcgc3lzdGVtaWUgcGxpa8Ozdywga3TDs3J5IHcgc3lzdGVtaWUgYWx0ZXJuYXR5dyBtb8W8ZSAiCisiYnnEhyBkb3N0xJlwbnkgcHJ6ZXogbmF6d8SZIG9nw7NsbsSFLiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNjcKKyMsIG5vLXdyYXAKK21zZ2lkICJhbHRlcm5hdGl2ZXMgZGlyZWN0b3J5IgorbXNnc3RyICJrYXRhbG9nIGFsdGVybmF0eXciCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNzIKK21zZ2lkICJBIGRpcmVjdG9yeSwgYnkgZGVmYXVsdCBJPC9ldGMvYWx0ZXJuYXRpdmVzPiwgY29udGFpbmluZyB0aGUgc3ltbGlua3MuIgorbXNnc3RyICIiCisiS2F0YWxvZyB6YXdpZXJhasSFY3kgZG93acSFemFuaWEgc3ltYm9saWN6bmUsIGRvbXnFm2xuaWUgSTwvZXRjL2FsdGVybmF0aXZlcz4uIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE3MgorIywgbm8td3JhcAorbXNnaWQgImFkbWluaXN0cmF0aXZlIGRpcmVjdG9yeSIKK21zZ3N0ciAia2F0YWxvZyBhZG1pbmlzdHJhY3lqbnkiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNzkKK21zZ2lkICIiCisiQSBkaXJlY3RvcnksIGJ5IGRlZmF1bHQgSTwvdmFyL2xpYi9kcGtnL2FsdGVybmF0aXZlcz4sIGNvbnRhaW5pbmcgQjx1cGRhdGUtIgorImFsdGVybmF0aXZlcz4nIHN0YXRlIGluZm9ybWF0aW9uLiIKK21zZ3N0ciAiIgorIkthdGFsb2cgemF3aWVyYWrEhWN5IGluZm9ybWFjamUgbyBzdGFuaWUgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiwgZG9tecWbbG5pZSBJPC8iCisidmFyL2xpYi9kcGtnL2FsdGVybmF0aXZlcz4uIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE3OQorIywgbm8td3JhcAorbXNnaWQgImxpbmsgZ3JvdXAiCittc2dzdHIgImdydXBhIGRvd2nEhXphxYQiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxODIKK21zZ2lkICJBIHNldCBvZiByZWxhdGVkIHN5bWxpbmtzLCBpbnRlbmRlZCB0byBiZSB1cGRhdGVkIGFzIGEgZ3JvdXAuIgorbXNnc3RyICJaYmnDs3IgcG93acSFemFueWNoIGRvd2nEhXphxYQgc3ltYm9saWN6bnljaCwgemFyesSFZHphbnkgamFrbyBncnVwYS4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTgyCisjLCBuby13cmFwCittc2dpZCAibWFzdGVyIGxpbmsiCittc2dzdHIgImRvd2nEhXphbmllIGfFgsOzd25lIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTg2Cittc2dpZCAiIgorIlRoZSBhbHRlcm5hdGl2ZSBsaW5rIGluIGEgbGluayBncm91cCB3aGljaCBkZXRlcm1pbmVzIGhvdyB0aGUgb3RoZXIgbGlua3MgaW4gIgorInRoZSBncm91cCBhcmUgY29uZmlndXJlZC4iCittc2dzdHIgIiIKKyJEb3dpxIV6YW5pZSBhbHRlcm5hdHl3eSB3IGdydXBpZSBkb3dpxIV6YcWELCBrdMOzcmUgb2tyZcWbbGEgc3Bvc8OzYiAiCisia29uZmlndXJvd2FuaWEgaW5ueWNoIGRvd2nEhXphxYQgeiB0ZWogZ3J1cHkuIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE4NgorIywgbm8td3JhcAorbXNnaWQgInNsYXZlIGxpbmsiCittc2dzdHIgImRvd2nEhXphbmllIHBvZHJ6xJlkbmUiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxOTAKK21zZ2lkICIiCisiQW4gYWx0ZXJuYXRpdmUgbGluayBpbiBhIGxpbmsgZ3JvdXAgd2hpY2ggaXMgY29udHJvbGxlZCBieSB0aGUgc2V0dGluZyBvZiAiCisidGhlIG1hc3RlciBsaW5rLiIKK21zZ3N0ciAiIgorIkRvd2nEhXphbmllIGFsdGVybmF0eXd5IHcgZ3J1cGllIGRvd2nEhXphxYQsIGt0w7NyZSBqZXN0IGtvbnRyb2xvd2FuZSBwcnpleiAiCisidXN0YXdpZW5pZSBnxYLDs3duZWdvIGRvd2nEhXphbmlhLiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxOTAKKyMsIG5vLXdyYXAKK21zZ2lkICJhdXRvbWF0aWMgbW9kZSIKK21zZ3N0ciAidHJ5YiBhdXRvbWF0eWN6bnkiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxOTYKK21zZ2lkICIiCisiV2hlbiBhIGxpbmsgZ3JvdXAgaXMgaW4gYXV0b21hdGljIG1vZGUsIHRoZSBhbHRlcm5hdGl2ZXMgc3lzdGVtIGVuc3VyZXMgdGhhdCAiCisidGhlIGxpbmtzIGluIHRoZSBncm91cCBwb2ludCB0byB0aGUgaGlnaGVzdCBwcmlvcml0eSBhbHRlcm5hdGl2ZSBhcHByb3ByaWF0ZSAiCisiZm9yIHRoZSBncm91cC4iCittc2dzdHIgIiIKKyJLaWVkeSBncnVwYSBkb3dpxIV6YcWEIGplc3QgdyB0cnliaWUgYXV0b21hdHljem55bSwgc3lzdGVtIGFsdGVybmF0eXcgemFwZXduaSwgIgorIsW8ZSBkb3dpxIV6YW5pYSB6IHRlaiBncnVweSB3c2thenVqxIUgbmEgYWx0ZXJuYXR5d8SZIG8gbmFqd3nFvHN6eW0gcHJpb3J5dGVjaWUuIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE5NgorIywgbm8td3JhcAorbXNnaWQgIm1hbnVhbCBtb2RlIgorbXNnc3RyICJ0cnliIHLEmWN6bnkiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyMDEKK21zZ2lkICIiCisiV2hlbiBhIGxpbmsgZ3JvdXAgaXMgaW4gbWFudWFsIG1vZGUsIHRoZSBhbHRlcm5hdGl2ZXMgc3lzdGVtIHdpbGwgbm90IG1ha2UgIgorImFueSBjaGFuZ2VzIHRvIHRoZSBzeXN0ZW0gYWRtaW5pc3RyYXRvcidzIHNldHRpbmdzLiIKK21zZ3N0ciAiIgorIktpZWR5IGdydXBhIGRvd2nEhXphxYQgamVzdCB3IHRyeWJpZSByxJljem55bSwgc3lzdGVtIGFsdGVybmF0eXcgbmljIG5pZSB6bWllbmkgIgorIncgdXN0YXdpZW5pYWNoIHdwcm93YWR6b255Y2ggcHJ6ZXogYWRtaW5pc3RyYXRvcmEgc3lzdGVtdS4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjAzCisjLCBuby13cmFwCittc2dpZCAiQjwtLWluc3RhbGw+IEk8bGluayBuYW1lIHBhdGggcHJpb3JpdHk+IFtCPC0tc2xhdmU+IEk8bGluayBuYW1lIHBhdGg+XS4uLiIKK21zZ3N0ciAiQjwtLWluc3RhbGw+IEk8ZG93acSFemFuaWUgbmF6d2EgxZtjaWXFvGthIHByaW9yeXRldD4gW0I8LS1zbGF2ZT4gSTxkb3dpxIV6YW5pZSBuYXp3YSDFm2NpZcW8a2E+XS4uLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjIyMgorbXNnaWQgIiIKKyJBZGQgYSBncm91cCBvZiBhbHRlcm5hdGl2ZXMgdG8gdGhlIHN5c3RlbS4gIEk8bGluaz4gaXMgdGhlIGdlbmVyaWMgbmFtZSBmb3IgIgorInRoZSBtYXN0ZXIgbGluaywgSTxuYW1lPiBpcyB0aGUgbmFtZSBvZiBpdHMgc3ltbGluayBpbiB0aGUgYWx0ZXJuYXRpdmVzICIKKyJkaXJlY3RvcnksIGFuZCBJPHBhdGg+IGlzIHRoZSBhbHRlcm5hdGl2ZSBiZWluZyBpbnRyb2R1Y2VkIGZvciB0aGUgbWFzdGVyICIKKyJsaW5rLiAgVGhlIGFyZ3VtZW50cyBhZnRlciBCPC0tc2xhdmU+IGFyZSB0aGUgZ2VuZXJpYyBuYW1lLCBzeW1saW5rIG5hbWUgaW4gIgorInRoZSBhbHRlcm5hdGl2ZXMgZGlyZWN0b3J5IGFuZCB0aGUgYWx0ZXJuYXRpdmUgcGF0aCBmb3IgYSBzbGF2ZSBsaW5rLiAgWmVybyAiCisib3IgbW9yZSBCPC0tc2xhdmU+IG9wdGlvbnMsIGVhY2ggZm9sbG93ZWQgYnkgdGhyZWUgYXJndW1lbnRzLCBtYXkgYmUgIgorInNwZWNpZmllZC4gTm90ZSB0aGF0IHRoZSBtYXN0ZXIgYWx0ZXJuYXRpdmUgbXVzdCBleGlzdCBvciB0aGUgY2FsbCB3aWxsICIKKyJmYWlsLiBIb3dldmVyIGlmIGEgc2xhdmUgYWx0ZXJuYXRpdmUgZG9lc24ndCBleGlzdCwgdGhlIGNvcnJlc3BvbmRpbmcgc2xhdmUgIgorImFsdGVybmF0aXZlIGxpbmsgd2lsbCBzaW1wbHkgbm90IGJlIGluc3RhbGxlZCAoYSB3YXJuaW5nIHdpbGwgc3RpbGwgYmUgIgorImRpc3BsYXllZCkuIElmIHNvbWUgcmVhbCBmaWxlIGlzIGluc3RhbGxlZCB3aGVyZSBhbiBhbHRlcm5hdGl2ZSBsaW5rIGhhcyB0byAiCisiYmUgaW5zdGFsbGVkLCBpdCBpcyBrZXB0IHVubGVzcyBCPC0tZm9yY2U+IGlzIHVzZWQuIgorbXNnc3RyICIiCisiRG9kYWplIGdydXDEmSBhbHRlcm5hdHl3IGRvIHN5c3RlbXUuIEk8ZG93acSFemFuaWU+IGplc3Qgb2fDs2xuxIUgbmF6d8SFIGfFgsOzd25lZ28gIgorImRvd2nEhXphbmlhLCBJPG5hendhPiBqZXN0IG5henfEhSBkb3dpxIV6YW5pYSBzeW1ib2xpY3puZWdvIHcga2F0YWxvZ3UgIgorImFsdGVybmF0eXcsIGEgSTzFm2NpZcW8a2E+IGplc3Qgd3Byb3dhZHphbsSFIGFsdGVybmF0eXfEhSBkbGEgZ8WCw7N3bmVnbyAiCisiZG93acSFemFuaWEuIEFyZ3VtZW50YW1pIG9wY2ppIEI8LS1zbGF2ZT4gc8SFIG5hendhIG9nw7NsbmEsIG5hendhIGRvd2nEhXphbmlhICIKKyJzeW1ib2xpY3puZWdvIHcga2F0YWxvZ3UgYWx0ZXJuYXR5dyBpIMWbY2llxbxrYSBhbHRlcm5hdHl3eSBkbGEgZG93acSFemFuaWEgIgorInBvZHJ6xJlkbmVnby4gTW/FvG5hIHBvZGHEhyB6ZXJvIGx1YiB3acSZY2VqIG9wY2ppIEI8LS1zbGF2ZT4sIHBvIGthxbxkZWogbXVzesSFICIKKyJuYXN0xJlwb3dhxIcgamVqIHRyenkgYXJndW1lbnR5LiBOYWxlxbx5IHphdXdhxbx5xIcsIMW8ZSBnxYLDs3duYSBhbHRlcm5hdHl3YSBtdXNpICIKKyJpc3RuaWXEhywgaW5hY3plaiB3eXdvxYJhbmllIHNpxJkgbmllIHBvd2llZHppZS4gSmVkbmFrIGplxZtsaSBuaWUgYsSZZHppZSAiCisiaXN0bmllxIcgcG9kcnrEmWRuYSBhbHRlcm5hdHl3YSwgb2Rwb3dpZWRuaWUgZG93acSFemFuaWUgcG9kcnrEmWRuZSBwbyBwcm9zdHUgIgorIm5pZSB6b3N0YW5pZSB6YWluc3RhbG93YW5lIChhbGUgbmFkYWwgYsSZZHppZSB3ecWbd2lldGxhbmUgb3N0cnplxbxlbmllKS4gSmXFm2xpICIKKyJ3IG1pZWpzY3UgZ2R6aWUgcG93aW5ubyBiecSHIHphaW5zdGFsb3dhbmUgZG93acSFemFuaWUgYWx0ZXJuYXR5d3kgaXN0bmllamUgIgorInJ6ZWN6eXdpc3R5IHBsaWssIGplc3Qgb24gemFjaG93eXdhbnksIGNoeWJhIMW8ZSB1xbx5dGEgamVzdCBvcGNqYSBCPC0tZm9yY2U+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjIzMworbXNnaWQgIiIKKyJJZiB0aGUgYWx0ZXJuYXRpdmUgbmFtZSBzcGVjaWZpZWQgZXhpc3RzIGFscmVhZHkgaW4gdGhlIGFsdGVybmF0aXZlcyAiCisic3lzdGVtJ3MgcmVjb3JkcywgdGhlIGluZm9ybWF0aW9uIHN1cHBsaWVkIHdpbGwgYmUgYWRkZWQgYXMgYSBuZXcgc2V0IG9mICIKKyJhbHRlcm5hdGl2ZXMgZm9yIHRoZSBncm91cC4gIE90aGVyd2lzZSwgYSBuZXcgZ3JvdXAsIHNldCB0byBhdXRvbWF0aWMgbW9kZSwgIgorIndpbGwgYmUgYWRkZWQgd2l0aCB0aGlzIGluZm9ybWF0aW9uLiAgSWYgdGhlIGdyb3VwIGlzIGluIGF1dG9tYXRpYyBtb2RlLCBhbmQgIgorInRoZSBuZXdseSBhZGRlZCBhbHRlcm5hdGl2ZXMnIHByaW9yaXR5IGlzIGhpZ2hlciB0aGFuIGFueSBvdGhlciBpbnN0YWxsZWQgIgorImFsdGVybmF0aXZlcyBmb3IgdGhpcyBncm91cCwgdGhlIHN5bWxpbmtzIHdpbGwgYmUgdXBkYXRlZCB0byBwb2ludCB0byB0aGUgIgorIm5ld2x5IGFkZGVkIGFsdGVybmF0aXZlcy4iCittc2dzdHIgIiIKKyJKZcW8ZWxpIG9rcmXFm2xvbmEgbmF6d2EgYWx0ZXJuYXR5d3kganXFvCBpc3RuaWVqZSB3IHN5c3RlbWllIGFsdGVybmF0eXcsIHRvICIKKyJwb2RhbmEgaW5mb3JtYWNqYSBixJlkemllIGRvZGFuYSBqYWtvIG5vd3kgemJpw7NyIGFsdGVybmF0eXcgZGxhIHRlaiBncnVweS4gVyAiCisicHJ6ZWNpd255bSB3eXBhZGt1IHpvc3RhbmllIHV0d29yem9uYSBub3dhIGdydXBhLCB1c3Rhd2lvbmEgdyB0cnliICIKKyJhdXRvbWF0eWN6bnkuIEplxbxlbGkgZ3J1cGEgamVzdCB3IHRyeWJpZSBhdXRvbWF0eWN6bnltLCBhIHByaW9yeXRldCBub3dvICIKKyJkb2Rhd2FueWNoIGFsdGVybmF0eXcgamVzdCB3acSZa3N6eSBvZCBwcmlvcnl0ZXR1IGthxbxkZWogeiBpbm55Y2ggIgorInphaW5zdGFsb3dhbnljaCBhbHRlcm5hdHl3IHcgdGVqIGdydXBpZSwgdG8gZG93acSFemFuaWEgc3ltYm9saWN6bmUgYsSZZMSFICIKKyJ6YWt0dWFsaXpvd2FuZSB0YWssIMW8ZWJ5IHByb3dhZHppxYJ5IGRvIG5vd28gZG9kYW55Y2ggYWx0ZXJuYXR5dy4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjMzCisjLCBuby13cmFwCittc2dpZCAiQjwtLXNldD4gSTxuYW1lIHBhdGg+IgorbXNnc3RyICJCPC0tc2V0PiBJPG5hendhIMWbY2llxbxrYT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyNDIKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlNldCB0aGUgcHJvZ3JhbSBJPHBhdGg+IGFzIGFsdGVybmF0aXZlIGZvciBJPG5hbWUuPiBUaGlzIGlzIGVxdWl2YWxlbnQgdG8gIgorI3wgIkk8LS1jb25maWc+IGJ1dCBpcyBub24taW50ZXJhY3RpdmUgYW5kIHRodXMgc2NyaXB0YWJsZS4iCittc2dpZCAiIgorIlNldCB0aGUgcHJvZ3JhbSBJPHBhdGg+IGFzIGFsdGVybmF0aXZlIGZvciBJPG5hbWUuPiBUaGlzIGlzIGVxdWl2YWxlbnQgdG8gIgorIkI8LS1jb25maWc+IGJ1dCBpcyBub24taW50ZXJhY3RpdmUgYW5kIHRodXMgc2NyaXB0YWJsZS4iCittc2dzdHIgIiIKKyJVc3Rhd2lhIHByb2dyYW0gSTzFm2NpZcW8a2E+IGpha28gYWx0ZXJuYXR5d8SZIGRsYSBJPG5hend5Pi4gSmVzdCB0byAiCisibmllaW50ZXJha3R5d255LCBhIHdpxJljIG1vxbxsaXd5IGRvIHXFvHljaWEgdyBza3J5cHRhY2gsIG9kcG93aWVkbmlrIG9wY2ppIEk8LS0iCisiY29uZmlnPi4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjQyCisjLCBuby13cmFwCittc2dpZCAiQjwtLXJlbW92ZT4gSTxuYW1lIHBhdGg+IgorbXNnc3RyICJCPC0tcmVtb3ZlPiBJPG5hendhIMWbY2llxbxrYT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyNjMKK21zZ2lkICIiCisiUmVtb3ZlIGFuIGFsdGVybmF0aXZlIGFuZCBhbGwgb2YgaXRzIGFzc29jaWF0ZWQgc2xhdmUgbGlua3MuICBJPG5hbWU+IGlzIGEgIgorIm5hbWUgaW4gdGhlIGFsdGVybmF0aXZlcyBkaXJlY3RvcnksIGFuZCBJPHBhdGg+IGlzIGFuIGFic29sdXRlIGZpbGVuYW1lIHRvICIKKyJ3aGljaCBJPG5hbWU+IGNvdWxkIGJlIGxpbmtlZC4gSWYgSTxuYW1lPiBpcyBpbmRlZWQgbGlua2VkIHRvIEk8cGF0aD4sICIKKyJJPG5hbWU+IHdpbGwgYmUgdXBkYXRlZCB0byBwb2ludCB0byBhbm90aGVyIGFwcHJvcHJpYXRlIGFsdGVybmF0aXZlIChhbmQgdGhlICIKKyJncm91cCBpcyBwdXQgYmFjayBpbiBhdXRvbWF0aWMgbW9kZSksIG9yIHJlbW92ZWQgaWYgdGhlcmUgaXMgbm8gc3VjaCAiCisiYWx0ZXJuYXRpdmUgbGVmdC4gIEFzc29jaWF0ZWQgc2xhdmUgbGlua3Mgd2lsbCBiZSB1cGRhdGVkIG9yIHJlbW92ZWQsICIKKyJjb3JyZXNwb25kaW5nbHkuICBJZiB0aGUgbGluayBpcyBub3QgY3VycmVudGx5IHBvaW50aW5nIHRvIEk8cGF0aD4sIG5vIGxpbmtzICIKKyJhcmUgY2hhbmdlZDsgb25seSB0aGUgaW5mb3JtYXRpb24gYWJvdXQgdGhlIGFsdGVybmF0aXZlIGlzIHJlbW92ZWQuIgorbXNnc3RyICIiCisiVXN1d2EgYWx0ZXJuYXR5d8SZIGkgd3N6eXN0a2llIGRvd2nEhXphbmlhIHBvZHJ6xJlkbmUgeiBuacSFIHNrb2phcnpvbmUuICIKKyJJPG5hendhPiBqZXN0IG5henfEhSB3IGthdGFsb2d1IGFsdGVybmF0eXcsIEk8xZtjaWXFvGthPiBqZXN0IGFic29sdXRuxIUgbmF6d8SFICIKKyJwbGlrdSwgZG8ga3TDs3JlaiBJPG5hendhPiBtb2fFgmFieSBiecSHIGRvd2nEhXphbmllbS4gSmXFvGVsaSBJPG5hendhPiAiCisicnplY3p5d2nFm2NpZSBqZXN0IGRvd2nEhXphbmllbSBkbyBJPMWbY2llxbxraT4sIHRvIEk8bmF6d2E+IHpvc3RhbmllICIKKyJ6YWt0dWFsaXpvd2FuYSwgdGFrIMW8ZWJ5IHdza2F6eXdhxYJhIG5hIGlubsSFIG9kcG93aWVkbmnEhSBhbHRlcm5hdHl3xJkgKHphxZsgIgorImdydXBhIGplc3QgdXN0YXdpYW5hIHBvbm93bmllIHcgdHJ5YiBhdXRvbWF0eWN6bnkpLCBhbGJvIHpvc3RhbmllIHVzdW5pxJl0YSAiCisiamXFvGVsaSBuaWUgcG96b3N0YW5pZSBhbmkgamVkbmEgYWx0ZXJuYXR5d2EuIFNrb2phcnpvbmUgZG93acSFemFuaWEgcG9kcnrEmWRuZSAiCisiem9zdGFuxIUgb2Rwb3dpZWRuaW8gemFrdHVhbGl6b3dhbmUgbHViIHVzdW5pxJl0ZS4gSmXFvGVsaSBkb3dpxIV6YW5pZSBuaWUgIgorInByb3dhZHppIG9iZWNuaWUgZG8gSTzFm2NpZcW8a2k+LCB0byDFvGFkbmUgZG93acSFemFuaWEgbmllIGLEmWTEhSBha3R1YWxpem93YW5lOyAiCisiem9zdGFuaWUgdHlsa28gdXN1bmnEmXRhIGluZm9ybWFjamEgbyBhbHRlcm5hdHl3aWUuIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjI2MworIywgbm8td3JhcAorbXNnaWQgIkI8LS1yZW1vdmUtYWxsPiBJPG5hbWU+IgorbXNnc3RyICJCPC0tcmVtb3ZlLWFsbD4gSTxuYXp3YT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyNjgKK21zZ2lkICIiCisiUmVtb3ZlIGFsbCBhbHRlcm5hdGl2ZXMgYW5kIGFsbCBvZiB0aGVpciBhc3NvY2lhdGVkIHNsYXZlIGxpbmtzLiAgSTxuYW1lPiBpcyAiCisiYSBuYW1lIGluIHRoZSBhbHRlcm5hdGl2ZXMgZGlyZWN0b3J5LiIKK21zZ3N0ciAiIgorIlVzdXdhIHdzenlzdGtpZSBkb3dpxIV6YW5pYSBhbHRlcm5hdHl3IGkgd3N6eXN0a2llIHNrb2phcnpvbmUgeiBuaW1pICIKKyJkb3dpxIV6YW5pYSBwb2RyesSZZG5lLiBJPG5hendhPiBqZXN0IG5henfEhSB3IGthdGFsb2d1IGFsdGVybmF0eXcuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6Mjc1Cittc2dpZCAiIgorIkNhbGwgQjwtLWNvbmZpZz4gb24gYWxsIGFsdGVybmF0aXZlcy4gSXQgY2FuIGJlIHVzZWZ1bGx5IGNvbWJpbmVkIHdpdGggQjwtLSIKKyJza2lwLWF1dG8+IHRvIHJldmlldyBhbmQgY29uZmlndXJlIGFsbCBhbHRlcm5hdGl2ZXMgd2hpY2ggYXJlIG5vdCBjb25maWd1cmVkICIKKyJpbiBhdXRvbWF0aWMgbW9kZS4gQnJva2VuIGFsdGVybmF0aXZlcyBhcmUgYWxzbyBkaXNwbGF5ZWQuICBUaHVzIGEgc2ltcGxlICIKKyJ3YXkgdG8gZml4IGFsbCBicm9rZW4gYWx0ZXJuYXRpdmVzIGlzIHRvIGNhbGwgQjx5ZXMgXFxbYXFdXFxbYXFdIHwgdXBkYXRlLSIKKyJhbHRlcm5hdGl2ZXMgLS1mb3JjZSAtLWFsbD4uIgorbXNnc3RyICIiCisiV3l3b8WCdWplIEI8LS1jb25maWc+IGRsYSB3c3p5c3RraWNoIGFsdGVybmF0eXcuIE1vxbxuYSB0byB1xbx5dGVjem5pZSBwb8WCxIVjennEhyAiCisieiBCPC0tc2tpcC1hdXRvPiBhYnkgcHJ6ZWpyemXEhyBpIHNrb25maWd1cm93YcSHIHdzenlzdGtpZSBhbHRlcm5hdHl3eSwga3TDs3JlICIKKyJuaWUgc8SFIHNrb25maWd1cm93YW5lIHcgdHJ5YiBhdXRvbWF0eWN6bnkuIFd5xZt3aWV0bGFuZSBzxIUgcsOzd25pZcW8ICIKKyJuaWVha3R1YWxuZSBhbHRlcm5hdHl3eS4gRGxhdGVnbyBwcm9zdHltIHNwb3NvYmVtIG5hcHJhd2llbmlhIHVzemtvZHpvbnljaCAiCisiYWx0ZXJuYXR5dyBqZXN0IHd5d2/FgmFuaWUgQjx5ZXMgXFxbYXFdXFxbYXFdIHwgdXBkYXRlLWFsdGVybmF0aXZlcyAtLWZvcmNlIC0tIgorImFsbD4uIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjI3NQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1hdXRvPiBJPG5hbWU+IgorbXNnc3RyICJCPC0tYXV0bz4gSTxuYXp3YT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyODIKK21zZ2lkICIiCisiU3dpdGNoIHRoZSBsaW5rIGdyb3VwIGJlaGluZCB0aGUgYWx0ZXJuYXRpdmUgZm9yIEk8bmFtZT4gdG8gYXV0b21hdGljIG1vZGUuICAiCisiSW4gdGhlIHByb2Nlc3MsIHRoZSBtYXN0ZXIgc3ltbGluayBhbmQgaXRzIHNsYXZlcyBhcmUgdXBkYXRlZCB0byBwb2ludCB0byAiCisidGhlIGhpZ2hlc3QgcHJpb3JpdHkgaW5zdGFsbGVkIGFsdGVybmF0aXZlcy4iCittc2dzdHIgIiIKKyJQcnplxYLEhWN6YSBncnVwxJkgZG93acSFemHFhCBkbGEgYWx0ZXJuYXR5d3kgdyB0cnliIGF1dG9tYXR5Y3pueS4gUG9kY3phcyB0ZWdvICIKKyJwcm9jZXN1LCBnxYLDs3duZSBkb3dpxIV6YW5pZSB3cmF6IHogamVnbyBkb3dpxIV6YW5pYW1pIHBvZHJ6xJlkbnltaSBixJlkxIUgIgorInpha3R1YWxpem93YW5lIHRhaywgYWJ5IHdza2F6eXdhxIcgbmEgYWx0ZXJuYXR5d8SZIG8gbmFqd3nFvHN6eW0gcHJpb3J5dGVjaWUuIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjI4MgorIywgbm8td3JhcAorbXNnaWQgIkI8LS1kaXNwbGF5PiBJPG5hbWU+IgorbXNnc3RyICJCPC0tZGlzcGxheT4gSTxuYXp3YT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyOTEKK21zZ2lkICIiCisiRGlzcGxheSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgbGluayBncm91cC4gIEluZm9ybWF0aW9uIGRpc3BsYXllZCBpbmNsdWRlcyAiCisidGhlIGdyb3VwJ3MgbW9kZSAoYXV0byBvciBtYW51YWwpLCB3aGljaCBhbHRlcm5hdGl2ZSB0aGUgbWFzdGVyIGxpbmsgIgorImN1cnJlbnRseSBwb2ludHMgdG8sIHdoYXQgb3RoZXIgYWx0ZXJuYXRpdmVzIGFyZSBhdmFpbGFibGUgKGFuZCB0aGVpciAiCisiY29ycmVzcG9uZGluZyBzbGF2ZSBhbHRlcm5hdGl2ZXMpLCBhbmQgdGhlIGhpZ2hlc3QgcHJpb3JpdHkgYWx0ZXJuYXRpdmUgIgorImN1cnJlbnRseSBpbnN0YWxsZWQuIgorbXNnc3RyICIiCisiV3nFm3dpZXRsYSBpbmZvcm1hY2plIG8gZ3J1cGllIGRvd2nEhXphxYQuIEluZm9ybWFjamUgdGUgemF3aWVyYWrEhSB0cnliIGdydXB5ICIKKyIoYXV0b21hdHljem55IGx1YiByxJljem55KSwgb2tyZcWbbGFqxIUgbmEga3TDs3LEhSBhbHRlcm5hdHl3xJkgb2JlY25pZSB3c2thenVqZSAiCisiZG93acSFemFuaWUgZ8WCw7N3bmUsIGpha2llIHPEhSBpbm5lIGRvc3TEmXBuZSBhbHRlcm5hdHl3eSAoaSBvZHBvd2lhZGFqxIVjZSBpbSAiCisiYWx0ZXJuYXR5d3kgcG9kcnrEmWRuZSkgb3JheiBvYmVjbmllIHphaW5zdGFsb3dhbsSFIGFsdGVybmF0eXfEmSBvIG5hand5xbxzenltICIKKyJwcmlvcnl0ZWNpZS4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjkxCisjLCBuby13cmFwCittc2dpZCAiQjwtLWdldC1zZWxlY3Rpb25zPiIKK21zZ3N0ciAiQjwtLWdldC1zZWxlY3Rpb25zPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjI5OQorbXNnaWQgIiIKKyJMaXN0IGFsbCBtYXN0ZXIgYWx0ZXJuYXRpdmUgbmFtZXMgKHRob3NlIGNvbnRyb2xsaW5nIGEgbGluayBncm91cCkgIGFuZCAiCisidGhlaXIgc3RhdHVzLiBFYWNoIGxpbmUgY29udGFpbnMgdXAgdG8gMyBmaWVsZHMgKHNlcGFyYXRlZCBieSBvbmUgb3IgbW9yZSAiCisic3BhY2VzKS4gVGhlIGZpcnN0IGZpZWxkIGlzIHRoZSBhbHRlcm5hdGl2ZSBuYW1lLCB0aGUgc2Vjb25kIG9uZSBpcyB0aGUgIgorInN0YXR1cyAoZWl0aGVyIFwiYXV0b1wiIG9yIFwibWFudWFsXCIpLCBhbmQgdGhlIGxhc3Qgb25lIGNvbnRhaW5zIHRoZSAiCisiY3VycmVudCBjaG9pY2UgaW4gdGhlIGFsdGVybmF0aXZlIChiZXdhcmU6IGl0J3MgYSBmaWxlbmFtZSBhbmQgdGh1cyBtaWdodCAiCisiY29udGFpbiBzcGFjZXMpLiIKK21zZ3N0ciAiIgorIld5xZt3aWV0bGEgd3N6eXN0a2llIG5hend5IGfFgsOzd255Y2ggYWx0ZXJuYXR5dyAoa29udHJvbHVqxIVjeWNoIGdydXDEmSAiCisiZG93acSFemHFhCkgb3JheiBpY2ggc3RhdHVzLiBLYcW8ZGEgbGluaWEgemF3aWVyYSBkbyAzIHDDs2wgKHJvemR6aWVsb255Y2ggY28gIgorIm5ham1uaWVqIGplZG7EhSBzcGFjasSFKS4gUGllcndzemUgcG9sZSBva3JlxZtsYSBuYXp3xIUgYWx0ZXJuYXR5d3ksIGRydWdpZSBwb2xlICIKKyJ0byBzdGF0dXMgKFwiYXV0b1wiIGx1YiBcIm1hbnVhbFwiKSwgemHFmyBvc3RhdG5pZSBwb2xlIHphd2llcmEgYmllxbzEhWN5IHd5YsOzciAiCisiZGxhIGFsdGVybmF0eXd5ICh1d2FnYTogamVzdCB0byBuYXp3YSBwbGlrdSBpIG1vxbxlIHphd2llcmHEhyB6bmFraSBzcGFjamkpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjMwNAorbXNnaWQgIiIKKyJSZWFkIGNvbmZpZ3VyYXRpb24gb2YgYWx0ZXJuYXRpdmVzIG9uIHN0YW5kYXJkIGlucHV0IGluIHRoZSBmb3JtYXQgZ2VuZXJhdGVkICIKKyJieSBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXMgLS1nZXQtc2VsZWN0aW9ucz4gYW5kIHJlY29uZmlndXJlIHRoZW0gYWNjb3JkaW5nbHkuIgorbXNnc3RyICIiCisiV2N6eXR1amUga29uZmlndXJhY2rEmSBhbHRlcm5hdHl3IHplIHN0YW5kYXJkb3dlZ28gd2VqxZtjaWEgdyBmb3JtYWNpZSAiCisid3lnZW5lcm93YW55bSBwcnpleiBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXMgLS1nZXQtc2VsZWN0aW9ucz4gaSBvZHBvd2llZG5pbyBqZSAiCisicmVrb25maWd1cnVqZS4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzA0CisjLCBuby13cmFwCittc2dpZCAiQjwtLXF1ZXJ5PiBJPG5hbWU+IgorbXNnc3RyICJCPC0tcXVlcnk+IEk8bmF6d2E+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzA5Cittc2dpZCAiIgorIkRpc3BsYXkgaW5mb3JtYXRpb24gYWJvdXQgdGhlIGxpbmsgZ3JvdXAgbGlrZSAtLWRpc3BsYXkgZG9lcywgYnV0IGluIGEgIgorIm1hY2hpbmUgcGFyc2VhYmxlIHdheSAoc2VlIHNlY3Rpb24gQjxRVUVSWSBGT1JNQVQ+IGJlbG93KS4iCittc2dzdHIgIiIKKyJXecWbd2lldGxhIGluZm9ybWFjasSZIG8gZ3J1cGllIGRvd2nEhXphxYQgdGFrIGphayAtLWRpc3BsYXksIGFsZSB3IHNwb3PDs2IgIgorIm9kcG93aWVkbmkgZGxhIG1hc3p5bm93ZWdvIHBhcnNvd2FuaWEgKGRva8WCYWRuaWVqc3p5IG9waXMgcG9uacW8ZWosIHcgc2VrY2ppICIKKyJCPEZPUk1BVCBaQVBZVEFOSUE+KS4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzA5CisjLCBuby13cmFwCittc2dpZCAiQjwtLWxpc3Q+IEk8bmFtZT4iCittc2dzdHIgIkI8LS1saXN0PiBJPG5hendhPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjMxMgorbXNnaWQgIkRpc3BsYXkgYWxsIHRhcmdldHMgb2YgdGhlIGxpbmsgZ3JvdXAuIgorbXNnc3RyICJXecWbd2lldGxhIHdzenlzdGtpZSBjZWxlIHcgZ3J1cGllIGRvd2nEhXphxYQuIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjMxMgorIywgbm8td3JhcAorbXNnaWQgIkI8LS1jb25maWc+IEk8bmFtZT4iCittc2dzdHIgIkI8LS1jb25maWc+IEk8bmF6d2E+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzE2Cittc2dpZCAiIgorIlNob3cgYXZhaWxhYmxlIGFsdGVybmF0aXZlcyBmb3IgYSBsaW5rIGdyb3VwIGFuZCBhbGxvdyB0aGUgdXNlciB0byAiCisiaW50ZXJhY3RpdmVseSBzZWxlY3Qgd2hpY2ggb25lIHRvIHVzZS4gVGhlIGxpbmsgZ3JvdXAgaXMgdXBkYXRlZC4iCittc2dzdHIgIiIKKyJXecWbd2lldGxhIGRvc3TEmXBuZSBhbHRlcm5hdHl3eSB3IGdydXBpZSBkb3dpxIV6YcWEIGkgcG96d2FsYSB1xbx5dGtvd25pa293aSAiCisiaW50ZXJha2N5am5pZSB3eWJyYcSHLCBrdMOzcmVqIG5hbGXFvHkgdcW8ecSHLiBHcnVwYSBkb3dpxIV6YcWEIHpvc3RhbmllICIKKyJvZHBvd2llZG5pbyB6YWt0dWFsaXpvd2FuYS4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzI0CisjLCBuby13cmFwCittc2dpZCAiQjwtLWFsdGRpcj5JPCBkaXJlY3Rvcnk+IgorbXNnc3RyICJCPC0tYWx0ZGlyPkk8IGthdGFsb2c+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzI4Cittc2dpZCAiIgorIlNwZWNpZmllcyB0aGUgYWx0ZXJuYXRpdmVzIGRpcmVjdG9yeSwgd2hlbiB0aGlzIGlzIHRvIGJlIGRpZmZlcmVudCBmcm9tIHRoZSAiCisiZGVmYXVsdC4iCittc2dzdHIgIk9rcmXFm2xhIGthdGFsb2cgYWx0ZXJuYXR5dywgamXFvGVsaSBtYSBiecSHIGlubnkgbmnFvCBkb215xZtsbnkuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzMyCittc2dpZCAiIgorIlNwZWNpZmllcyB0aGUgYWRtaW5pc3RyYXRpdmUgZGlyZWN0b3J5LCB3aGVuIHRoaXMgaXMgdG8gYmUgZGlmZmVyZW50IGZyb20gIgorInRoZSBkZWZhdWx0LiIKK21zZ3N0ciAiT2tyZcWbbGEga2F0YWxvZyBhZG1pbmlzdHJhY3lqbnksIGplxbxlbGkgbWEgYnnEhyBpbm55IG5pxbwgZG9tecWbbG55LiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMzIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tbG9nPkk8IGZpbGU+IgorbXNnc3RyICJCPC0tbG9nPkk8IHBsaWs+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzM2CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJTcGVjaWZpZXMgdGhlIGxvZyBmaWxlLCB3aGVuIHRoaXMgaXMgdG8gYmUgZGlmZmVyZW50IGZyb20gdGhlIGRlZmF1bHQgKC8iCisjfCAidmFyL2xvZy9kcGtnLmxvZykuIgorbXNnaWQgIiIKKyJTcGVjaWZpZXMgdGhlIGxvZyBmaWxlLCB3aGVuIHRoaXMgaXMgdG8gYmUgZGlmZmVyZW50IGZyb20gdGhlIGRlZmF1bHQgKC92YXIvIgorImxvZy9hbHRlcm5hdGl2ZXMubG9nKS4iCittc2dzdHIgIiIKKyJPa3JlxZtsYSBwbGlrIGR6aWVubmlrYSwgamXFvGVsaSBtYSBiecSHIGlubnkgbmnFvCBkb215xZtsbnkgKC92YXIvbG9nL2Rwa2cubG9nKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozNDAKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIkxldCBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IHJlcGxhY2UgYW55IHJlYWwgZmlsZSB0aGF0IGlzIGluc3RhbGxlZCB3aGVyZSAiCisjfCAiYW4gYWx0ZXJuYXRpdmUgbGluayBoYXMgdG8gYmUgaW5zdGFsbGVkLiIKK21zZ2lkICIiCisiTGV0IEI8dXBkYXRlLWFsdGVybmF0aXZlcz4gcmVwbGFjZSBvciBkcm9wIGFueSByZWFsIGZpbGUgdGhhdCBpcyBpbnN0YWxsZWQgIgorIndoZXJlIGFuIGFsdGVybmF0aXZlIGxpbmsgaGFzIHRvIGJlIGluc3RhbGxlZCBvciByZW1vdmVkLiIKK21zZ3N0ciAiIgorIlplendhbGEgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBuYSB6YXN0xJlwb3dhbmllIGlzdG5pZWrEhWN5Y2ggcnplY3p5d2lzdHljaCAiCisicGxpa8OzdyB0YW0sIGdkemllIHBvd2lubm8gYnnEhyB6YWluc3RhbG93YW5lIGRvd2nEhXphbmllIGFsdGVybmF0eXd5LiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozNDAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tc2tpcC1hdXRvPiIKK21zZ3N0ciAiQjwtLXNraXAtYXV0bz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozNDUKK21zZ2lkICIiCisiU2tpcCBjb25maWd1cmF0aW9uIHByb21wdCBmb3IgYWx0ZXJuYXRpdmVzIHdoaWNoIGFyZSBwcm9wZXJseSBjb25maWd1cmVkIGluICIKKyJhdXRvbWF0aWMgbW9kZS4gVGhpcyBvcHRpb24gaXMgb25seSByZWxldmFudCB3aXRoIEI8LS1jb25maWc+IG9yIEI8LS1hbGw+LiIKK21zZ3N0ciAiIgorIlBvbWlqYSBweXRhbmlhIG8ga29uZmlndXJhY2rEmSBhbHRlcm5hdHl3LCBrdMOzcmUgc8SFIHfFgmHFm2Npd2llIHNrb25maWd1cm93YW5lICIKKyJ3IHRyeWJpZSBhdXRvbWF0eWN6bnltLiBUYSBvcGNqYSBtYSB6bmFjemVuaWUgdHlsa28gcHJ6eSBCPC0tY29uZmlnPiBsdWIgQjwtLSIKKyJhbGw+LiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozNDUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tdmVyYm9zZT4iCittc2dzdHIgIkI8LS12ZXJib3NlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM1MAorbXNnaWQgIkdlbmVyYXRlIG1vcmUgY29tbWVudHMgYWJvdXQgd2hhdCBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IGlzIGRvaW5nLiIKK21zZ3N0ciAiIgorIlBvZGFqZSB3acSZY2VqIGluZm9ybWFjamkgbyBwcnplYmllZ3Ugd3lrb255d2FuaWEgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozNTMKK21zZ2lkICJEb24ndCBnZW5lcmF0ZSBhbnkgY29tbWVudHMgdW5sZXNzIGVycm9ycyBvY2N1ci4iCittc2dzdHIgIk5pZSB3ecWbd2lldGxhIMW8YWRueWNoIGtvbWVudGFyenksIGNoeWJhIMW8ZSB3eXN0xIVwaSBixYLEhWQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzU5Cittc2dpZCAiIgorIklmIHNldCBhbmQgdGhlIEI8LS1hZG1pbmRpcj4gb3B0aW9uIGhhcyBub3QgYmVlbiBzcGVjaWZpZWQsIGl0IHdpbGwgYmUgdXNlZCAiCisiYXMgdGhlIGJhc2UgYWRtaW5pc3RyYXRpdmUgZGlyZWN0b3J5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM2MQorIywgbm8td3JhcAorbXNnaWQgIkk8L2V0Yy9hbHRlcm5hdGl2ZXMvPiIKK21zZ3N0ciAiSTwvZXRjL2FsdGVybmF0aXZlcy8+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzY3Cittc2dpZCAiIgorIlRoZSBkZWZhdWx0IGFsdGVybmF0aXZlcyBkaXJlY3RvcnkuICBDYW4gYmUgb3ZlcnJpZGRlbiBieSB0aGUgQjwtLWFsdGRpcj4gIgorIm9wdGlvbi4iCittc2dzdHIgIkRvbXnFm2xueSBrYXRhbG9nIGFsdGVybmF0eXcuIE1vxbxuYSBnbyB6bWllbmnEhyBvcGNqxIUgQjwtYWx0ZGlyPi4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzY3CisjLCBuby13cmFwCittc2dpZCAiSTwvdmFyL2xpYi9kcGtnL2FsdGVybmF0aXZlcy8+IgorbXNnc3RyICJJPC92YXIvbGliL2Rwa2cvYWx0ZXJuYXRpdmVzLz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozNzMKK21zZ2lkICIiCisiVGhlIGRlZmF1bHQgYWRtaW5pc3RyYXRpb24gZGlyZWN0b3J5LiAgQ2FuIGJlIG92ZXJyaWRkZW4gYnkgdGhlIEI8LS0iCisiYWRtaW5kaXI+IG9wdGlvbi4iCittc2dzdHIgIkRvbXnFm2xueSBrYXRhbG9nIGFkbWluaXN0cmFjeWpueS4gTW/FvG5hIGdvIHptaWVuacSHIG9wY2rEhSBCPC1hZG1pbmRpcj4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6Mzc4Cittc2dpZCAiVGhlIHJlcXVlc3RlZCBhY3Rpb24gd2FzIHN1Y2Nlc3NmdWxseSBwZXJmb3JtZWQuIgorbXNnc3RyICJBa2NqYSB6YWtvxYRjennFgmEgc2nEmSBwb3dvZHplbmllbS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozODIKK21zZ2lkICIiCisiUHJvYmxlbXMgd2VyZSBlbmNvdW50ZXJlZCB3aGlsc3QgcGFyc2luZyB0aGUgY29tbWFuZCBsaW5lIG9yIHBlcmZvcm1pbmcgdGhlICIKKyJhY3Rpb24uIgorbXNnc3RyICIiCisiV3lzdMSFcGnFgnkgcHJvYmxlbXkgcG9kY3phcyBwcnpldHdhcnphbmlhIGxpbmlpIHBvbGVjZcWEIGx1YiB3eWtvbnl3YW5pYSBha2NqaS4iCisKKyMuIHR5cGU6IFNICisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzgzCisjLCBuby13cmFwCittc2dpZCAiUVVFUlkgRk9STUFUIgorbXNnc3RyICJGT1JNQVQgWkFQWVRBTklBIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6Mzg4CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJUaGUgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBJPC0tcXVlcnk+IGZvcm1hdCBpcyB1c2luZyBhbiBSRkM4MjItbGlrZSBmbGF0ICIKKyN8ICJmb3JtYXQuIEl0J3MgbWFkZSBvZiBJPG4+ICsgMSBibG9ja3Mgd2hlcmUgSTxuPiBpcyB0aGUgbnVtYmVyIG9mICIKKyN8ICJhbHRlcm5hdGl2ZXMgYXZhaWxhYmxlIGluIHRoZSBxdWVyaWVkIGxpbmsgZ3JvdXAuIFRoZSBmaXJzdCBibG9jayAiCisjfCAiY29udGFpbnMgdGhlIGZvbGxvd2luZyBmaWVsZHM6IgorbXNnaWQgIiIKKyJUaGUgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzIC0tcXVlcnk+IGZvcm1hdCBpcyB1c2luZyBhbiBSRkM4MjItbGlrZSBmbGF0ICIKKyJmb3JtYXQuIEl0J3MgbWFkZSBvZiBJPG4+ICsgMSBibG9ja3Mgd2hlcmUgSTxuPiBpcyB0aGUgbnVtYmVyIG9mICIKKyJhbHRlcm5hdGl2ZXMgYXZhaWxhYmxlIGluIHRoZSBxdWVyaWVkIGxpbmsgZ3JvdXAuIFRoZSBmaXJzdCBibG9jayBjb250YWlucyAiCisidGhlIGZvbGxvd2luZyBmaWVsZHM6IgorbXNnc3RyICIiCisiV3luaWsgcG9sZWNlbmlhIEI8dXBkYXRlLWFsdGVybmF0aXZlcz4gSTwtLXF1ZXJ5PiB1xbx5d2EgZm9ybWF0dSBwb2RvYm5lZ28gZG8gIgorInDFgmFza2llZ28gZm9ybWF0dSBSRkM4MjIuIFNrxYJhZGEgc2nEmSB6IEk8bj4gKyAxIGJsb2vDs3csIGdkemllIEk8bj4gamVzdCAiCisibGljemLEhSBhbHRlcm5hdHl3IGRvc3TEmXBueWNoIHcgZ3J1cGllIGRvd2nEhXphxYQsIGRvIGt0w7NyZWogb2Rub3NpIHNpxJkgIgorInphcHl0YW5pZS4gUGllcndzenkgYmxvayB6YXdpZXJhIG5hc3TEmXB1asSFY2UgcG9sYToiCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6Mzg4CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8TGluazo+IEU8bHQ+bGlua0U8Z3Q+IgorbXNnaWQgIkI8TGluazo+STwgbGluaz4iCittc2dzdHIgIkI8TGluazo+IEU8bHQ+ZG93acSFemFuaWVFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM5MQorbXNnaWQgIlRoZSBnZW5lcmljIG5hbWUgb2YgdGhlIGFsdGVybmF0aXZlLiIKK21zZ3N0ciAiTmF6d2Egb2fDs2xuYSBhbHRlcm5hdHl3eS4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzkxCisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8U3RhdHVzOj4gRTxsdD5zdGF0dXNFPGd0PiIKK21zZ2lkICJCPFN0YXR1czo+STwgc3RhdHVzPiIKK21zZ3N0ciAiQjxTdGF0dXM6PiBFPGx0PnN0YXR1c0U8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6Mzk0Cittc2dpZCAiVGhlIHN0YXR1cyBvZiB0aGUgYWx0ZXJuYXRpdmUgKEI8YXV0bz4gb3IgQjxtYW51YWw+KS4iCittc2dzdHIgIlN0YXR1cyBhbHRlcm5hdHl3eSAoQjxhdXRvPiBsdWIgQjxtYW51YWw+KS4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6Mzk0CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8QmVzdDo+IEU8bHQ+YmVzdCBjaG9pY2VFPGd0PiIKK21zZ2lkICJCPEJlc3Q6Pkk8IGJlc3QtY2hvaWNlPiIKK21zZ3N0ciAiQjxCZXN0Oj4gRTxsdD5uYWpsZXBzenkgd3liw7NyRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozOTgKK21zZ2lkICIiCisiVGhlIHBhdGggb2YgdGhlIGJlc3QgYWx0ZXJuYXRpdmUgZm9yIHRoaXMgbGluayBncm91cC4gTm90IHByZXNlbnQgaWYgdGhlcmUgIgorImlzIG5vIGFsdGVybmF0aXZlcyBhdmFpbGFibGUuIgorbXNnc3RyICIiCisixZpjaWXFvGthIG5hamxlcHN6ZWogYWx0ZXJuYXR5d3kgZGxhIHRlaiBncnVweSBkb3dpxIV6YcWELiBOaWUgamVzdCB3ecWbd2lldGxhbmEsICIKKyJqZcWbbGkgbmllIG1hIGRvc3TEmXBueWNoIMW8YWRueWNoIGFsdGVybmF0eXcuIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM5OAorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPFZhbHVlOj4gRTxsdD5jdXJyZW50bHkgc2VsZWN0ZWQgYWx0ZXJuYXRpdmVFPGd0PiAiCittc2dpZCAiQjxWYWx1ZTo+STwgY3VycmVudGx5LXNlbGVjdGVkLWFsdGVybmF0aXZlPiIKK21zZ3N0ciAiQjxWYWx1ZTo+IEU8bHQ+YWt0dWFsbmllIHd5YnJhbmEgYWx0ZXJuYXR5d2FFPGd0PiAiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0MDIKK21zZ2lkICIiCisiVGhlIHBhdGggb2YgdGhlIGN1cnJlbnRseSBzZWxlY3RlZCBhbHRlcm5hdGl2ZS4gSXQgY2FuIGFsc28gdGFrZSB0aGUgbWFnaWMgIgorInZhbHVlIEI8bm9uZT4uIEl0IGlzIHVzZWQgaWYgdGhlIGxpbmsgZG9lc24ndCBleGlzdC4iCittc2dzdHIgIiIKKyLFmmNpZcW8a2EgYWt0dWFsbmllIHd5YnJhbmVqIGFsdGVybmF0eXd5LiBNb8W8ZSByw7N3bmllxbwgcHJ6eWptb3dhxIcgc3BlY2phbG7EhSAiCisid2FydG/Fm8SHIEI8bm9uZT4gLSBqZXN0IG9uYSB1xbx5d2FuYSBqZcWbbGkgZG93acSFemFuaWUgbmllIGlzdG5pZWplLiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0MDMKKyMsIG5vLXdyYXAKK21zZ2lkICJUaGUgb3RoZXIgYmxvY2tzIGRlc2NyaWJlIHRoZSBhdmFpbGFibGUgYWx0ZXJuYXRpdmVzIGluIHRoZSBxdWVyaWVkIGxpbmsgZ3JvdXA6IgorbXNnc3RyICJJbm5lIGJsb2tpIG9waXN1asSFIGRvc3TEmXBuZSBhbHRlcm5hdHl3eSB3IGdydXBpZSBkb3dpxIV6YcWELCBkbyBrdMOzcmVqIG9kbm9zaSBzacSZIHphcHl0YW5pZToiCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDA1CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8QWx0ZXJuYXRpdmU6PiBFPGx0PnBhdGggb2YgdGhpcyBhbHRlcm5hdGl2ZUU8Z3Q+IgorbXNnaWQgIkI8QWx0ZXJuYXRpdmU6Pkk8IHBhdGgtb2YtdGhpcy1hbHRlcm5hdGl2ZT4iCittc2dzdHIgIkI8QWx0ZXJuYXRpdmU6PiBFPGx0PsWbY2llxbxrYSBhbHRlcm5hdHl3eUU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDA4Cittc2dpZCAiUGF0aCB0byB0aGlzIGJsb2NrJ3MgYWx0ZXJuYXRpdmUuIgorbXNnc3RyICLFmmNpZcW8a2EgZG8gYWx0ZXJuYXR5d3kgb3Bpc3l3YW5laiB3IHR5bSBibG9rdS4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDA4CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8UHJpb3JpdHk6PiBFPGx0PnByaW9yaXR5IHZhbHVlRTxndD4iCittc2dpZCAiQjxQcmlvcml0eTo+STwgcHJpb3JpdHktdmFsdWU+IgorbXNnc3RyICJCPFByaW9yaXR5Oj4gRTxsdD53YXJ0b8WbxIcgcHJpb3J5dGV0dUU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDExCittc2dpZCAiVmFsdWUgb2YgdGhlIHByaW9yaXR5IG9mIHRoaXMgYWx0ZXJuYXRpdmUuIgorbXNnc3RyICJXYXJ0b8WbxIcgcHJpb3J5dGV0dSBhbHRlcm5hdHl3eS4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDExCisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8U2xhdmVzOj4gRTxsdD5saXN0IG9mIHNsYXZlc0U8Z3Q+IgorbXNnaWQgIkI8U2xhdmVzOj5JPCBsaXN0LW9mLXNsYXZlcz4iCittc2dzdHIgIkI8U2xhdmVzOj4gRTxsdD5saXN0YSBhbHRlcm5hdHl3IHBvZHJ6xJlkbnljaEU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDE3Cittc2dpZCAiIgorIldoZW4gdGhpcyBoZWFkZXIgaXMgcHJlc2VudCwgdGhlIEI8bmV4dD4gbGluZXMgaG9sZCBhbGwgc2xhdmUgYWx0ZXJuYXRpdmVzICIKKyJhc3NvY2lhdGVkIHRvIHRoZSBtYXN0ZXIgbGluayBvZiB0aGUgYWx0ZXJuYXRpdmUuIFRoZXJlIGlzIG9uZSBzbGF2ZSBwZXIgIgorImxpbmUuIEVhY2ggbGluZSBjb250YWlucyBvbmUgc3BhY2UsIHRoZSBnZW5lcmljIG5hbWUgb2YgdGhlIHNsYXZlICIKKyJhbHRlcm5hdGl2ZSwgYW5vdGhlciBzcGFjZSwgYW5kIHRoZSBwYXRoIHRvIHRoZSBzbGF2ZSBhbHRlcm5hdGl2ZS4iCittc2dzdHIgIiIKKyJHZHkgb2JlY255IGplc3QgdGVuIG5hZ8WCw7N3ZWssIEI8bmFzdMSZcG5lPiBsaW5pZSB6YXdpZXJhasSFIHdzenlzdGtpZSAiCisicG9kcnrEmWRuZSBhbHRlcm5hdHl3eSB6d2nEhXphbmUgeiBnxYLDs3dueW0gZG93acSFemFuaWVtIGFsdGVybmF0eXd5LiBXIGthxbxkZWogIgorImxpbmlpIHBvZGFuYSBqZXN0IGplZG5hIHBvZHJ6xJlkbmEgYWx0ZXJuYXR5d2EuIEthxbxkYSBsaW5pYSB6YXdpZXJhIGplZG7EhSAiCisic3BhY2rEmSwgb2fDs2xuxIUgbmF6d8SZIGFsdGVybmF0eXd5IHBvZHJ6xJlkbmVqLCBrb2xlam7EhSBzcGFjasSZIGkgdyBrb8WEY3UgIgorIsWbY2llxbxrxJkgZG8gYWx0ZXJuYXR5d3kgcG9kcnrEmWRuZWouIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQxOAorIywgbm8td3JhcAorbXNnaWQgIkI8RXhhbXBsZT4iCittc2dzdHIgIkI8UHJ6eWvFgmFkPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQyNgorIywgbm8td3JhcAorbXNnaWQgIiIKKyIkIHVwZGF0ZS1hbHRlcm5hdGl2ZXMgLS1xdWVyeSBlZGl0b3JcbiIKKyJMaW5rOiBlZGl0b3JcbiIKKyJTdGF0dXM6IGF1dG9cbiIKKyJCZXN0OiAvdXNyL2Jpbi92aW0uZ3RrXG4iCisiVmFsdWU6IC91c3IvYmluL3ZpbS5ndGtcbiIKK21zZ3N0ciAiIgorIiQgdXBkYXRlLWFsdGVybmF0aXZlcyAtLXF1ZXJ5IGVkaXRvclxuIgorIkxpbms6IGVkaXRvclxuIgorIlN0YXR1czogYXV0b1xuIgorIkJlc3Q6IC91c3IvYmluL3ZpbS5ndGtcbiIKKyJWYWx1ZTogL3Vzci9iaW4vdmltLmd0a1xuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDMxCisjLCBuby13cmFwCittc2dpZCAiIgorIkFsdGVybmF0aXZlOiAvYmluL2VkXG4iCisiUHJpb3JpdHk6IC0xMDBcbiIKKyJTbGF2ZXM6XG4iCisiIGVkaXRvci4xLmd6IC91c3Ivc2hhcmUvbWFuL21hbjEvZWQuMS5nelxuIgorbXNnc3RyICIiCisiQWx0ZXJuYXRpdmU6IC9iaW4vZWRcbiIKKyJQcmlvcml0eTogLTEwMFxuIgorIlNsYXZlczpcbiIKKyIgZWRpdG9yLjEuZ3ogL3Vzci9zaGFyZS9tYW4vbWFuMS9lZC4xLmd6XG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0NDYKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiQWx0ZXJuYXRpdmU6IC91c3IvYmluL3ZpbS5ndGtcbiIKKyJQcmlvcml0eTogNTBcbiIKKyJTbGF2ZXM6XG4iCisiIGVkaXRvci4xLmd6IC91c3Ivc2hhcmUvbWFuL21hbjEvdmltLjEuZ3pcbiIKKyIgZWRpdG9yLnJ1LjEuZ3ogL3Vzci9zaGFyZS9tYW4vcnUvbWFuMS92aW0uMS5nelxuIgorIiBlZGl0b3IucGwuSVNPODg1OS0yLjEuZ3ogL3Vzci9zaGFyZS9tYW4vcGwuSVNPODg1OS0yL21hbjEvdmltLjEuZ3pcbiIKKyIgZWRpdG9yLml0LklTTzg4NTktMS4xLmd6IC91c3Ivc2hhcmUvbWFuL2l0LklTTzg4NTktMS9tYW4xL3ZpbS4xLmd6XG4iCisiIGVkaXRvci5wbC5VVEYtOC4xLmd6IC91c3Ivc2hhcmUvbWFuL3BsLlVURi04L21hbjEvdmltLjEuZ3pcbiIKKyIgZWRpdG9yLml0LjEuZ3ogL3Vzci9zaGFyZS9tYW4vaXQvbWFuMS92aW0uMS5nelxuIgorIiBlZGl0b3IuZnIuVVRGLTguMS5neiAvdXNyL3NoYXJlL21hbi9mci5VVEYtOC9tYW4xL3ZpbS4xLmd6XG4iCisiIGVkaXRvci5mci4xLmd6IC91c3Ivc2hhcmUvbWFuL2ZyL21hbjEvdmltLjEuZ3pcbiIKKyIgZWRpdG9yLml0LlVURi04LjEuZ3ogL3Vzci9zaGFyZS9tYW4vaXQuVVRGLTgvbWFuMS92aW0uMS5nelxuIgorIiBlZGl0b3IucGwuMS5neiAvdXNyL3NoYXJlL21hbi9wbC9tYW4xL3ZpbS4xLmd6XG4iCisiIGVkaXRvci5mci5JU084ODU5LTEuMS5neiAvdXNyL3NoYXJlL21hbi9mci5JU084ODU5LTEvbWFuMS92aW0uMS5nelxuIgorbXNnc3RyICIiCisiQWx0ZXJuYXRpdmU6IC91c3IvYmluL3ZpbS5ndGtcbiIKKyJQcmlvcml0eTogNTBcbiIKKyJTbGF2ZXM6XG4iCisiIGVkaXRvci4xLmd6IC91c3Ivc2hhcmUvbWFuL21hbjEvdmltLjEuZ3pcbiIKKyIgZWRpdG9yLnJ1LjEuZ3ogL3Vzci9zaGFyZS9tYW4vcnUvbWFuMS92aW0uMS5nelxuIgorIiBlZGl0b3IucGwuSVNPODg1OS0yLjEuZ3ogL3Vzci9zaGFyZS9tYW4vcGwuSVNPODg1OS0yL21hbjEvdmltLjEuZ3pcbiIKKyIgZWRpdG9yLml0LklTTzg4NTktMS4xLmd6IC91c3Ivc2hhcmUvbWFuL2l0LklTTzg4NTktMS9tYW4xL3ZpbS4xLmd6XG4iCisiIGVkaXRvci5wbC5VVEYtOC4xLmd6IC91c3Ivc2hhcmUvbWFuL3BsLlVURi04L21hbjEvdmltLjEuZ3pcbiIKKyIgZWRpdG9yLml0LjEuZ3ogL3Vzci9zaGFyZS9tYW4vaXQvbWFuMS92aW0uMS5nelxuIgorIiBlZGl0b3IuZnIuVVRGLTguMS5neiAvdXNyL3NoYXJlL21hbi9mci5VVEYtOC9tYW4xL3ZpbS4xLmd6XG4iCisiIGVkaXRvci5mci4xLmd6IC91c3Ivc2hhcmUvbWFuL2ZyL21hbjEvdmltLjEuZ3pcbiIKKyIgZWRpdG9yLml0LlVURi04LjEuZ3ogL3Vzci9zaGFyZS9tYW4vaXQuVVRGLTgvbWFuMS92aW0uMS5nelxuIgorIiBlZGl0b3IucGwuMS5neiAvdXNyL3NoYXJlL21hbi9wbC9tYW4xL3ZpbS4xLmd6XG4iCisiIGVkaXRvci5mci5JU084ODU5LTEuMS5neiAvdXNyL3NoYXJlL21hbi9mci5JU084ODU5LTEvbWFuMS92aW0uMS5nelxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDU4CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJXaXRoIEk8LS12ZXJib3NlPiBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IGNoYXR0ZXJzIGluY2Vzc2FudGx5IGFib3V0IGl0cyAiCisjfCAiYWN0aXZpdGllcyBvbiBpdHMgc3RhbmRhcmQgb3V0cHV0IGNoYW5uZWwuICBJZiBwcm9ibGVtcyBvY2N1ciwgQjx1cGRhdGUtIgorI3wgImFsdGVybmF0aXZlcz4gb3V0cHV0cyBlcnJvciBtZXNzYWdlcyBvbiBpdHMgc3RhbmRhcmQgZXJyb3IgY2hhbm5lbCBhbmQgIgorI3wgInJldHVybnMgYW4gZXhpdCBzdGF0dXMgb2YgMi4gIFRoZXNlIGRpYWdub3N0aWNzIHNob3VsZCBiZSBzZWxmLSIKKyN8ICJleHBsYW5hdG9yeTsgaWYgeW91IGRvIG5vdCBmaW5kIHRoZW0gc28sIHBsZWFzZSByZXBvcnQgdGhpcyBhcyBhIGJ1Zy4iCittc2dpZCAiIgorIldpdGggQjwtLXZlcmJvc2U+IEI8dXBkYXRlLWFsdGVybmF0aXZlcz4gY2hhdHRlcnMgaW5jZXNzYW50bHkgYWJvdXQgaXRzICIKKyJhY3Rpdml0aWVzIG9uIGl0cyBzdGFuZGFyZCBvdXRwdXQgY2hhbm5lbC4gIElmIHByb2JsZW1zIG9jY3VyLCBCPHVwZGF0ZS0iCisiYWx0ZXJuYXRpdmVzPiBvdXRwdXRzIGVycm9yIG1lc3NhZ2VzIG9uIGl0cyBzdGFuZGFyZCBlcnJvciBjaGFubmVsIGFuZCAiCisicmV0dXJucyBhbiBleGl0IHN0YXR1cyBvZiAyLiAgVGhlc2UgZGlhZ25vc3RpY3Mgc2hvdWxkIGJlIHNlbGYtZXhwbGFuYXRvcnk7ICIKKyJpZiB5b3UgZG8gbm90IGZpbmQgdGhlbSBzbywgcGxlYXNlIHJlcG9ydCB0aGlzIGFzIGEgYnVnLiIKK21zZ3N0ciAiIgorIlBvIHBvZGFuaXUgSTwtLXZlcmJvc2U+LCBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IHd5cGlzdWplIG5pZXVzdGFubmllICIKKyJpbmZvcm1hY2plIG8gcG9kZWptb3dhbnljaCBkemlhxYJhbmlhY2ggbmEgc3dvaW0gc3RhbmRhcmRvd3ltIHd5asWbY2l1LiBKZcW8ZWxpICIKKyJ3eXN0xIVwaSBixYLEhWQsIEI8dXBkYXRlLWFsdGVybmF0aXZlcz4gd3nFm3dpZXRsYSBrb211bmlrYXR5IGLFgsSZZMOzdyBuYSAiCisic3RhbmRhcmRvd3ltIHd5asWbY2l1IGLFgsSZZMOzdyBpIGtvxYRjenkgZHppYcWCYW5pZSB6IGtvZGVtIHd5asWbY2lhIDIuIFd5cGlzeXdhbmEgIgorImRpYWdub3N0eWthIHBvd2lubmEgd3N6eXN0a28gd3lqYcWbbmlhxIcsIGplxbxlbGkgdGFrIG5pZSBqZXN0LCBwcm9zesSZIHpnxYJvc2nEhyAiCisidG8gamFrbyBixYLEhWQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDY0Cittc2dpZCAiIgorIlRoZXJlIGFyZSBzZXZlcmFsIHBhY2thZ2VzIHdoaWNoIHByb3ZpZGUgYSB0ZXh0IGVkaXRvciBjb21wYXRpYmxlIHdpdGggIgorIkI8dmk+LCBmb3IgZXhhbXBsZSBCPG52aT4gYW5kIEI8dmltPi4gV2hpY2ggb25lIGlzIHVzZWQgaXMgY29udHJvbGxlZCBieSB0aGUgIgorImxpbmsgZ3JvdXAgQjx2aT4sIHdoaWNoIGluY2x1ZGVzIGxpbmtzIGZvciB0aGUgcHJvZ3JhbSBpdHNlbGYgYW5kIHRoZSAiCisiYXNzb2NpYXRlZCBtYW5wYWdlLiIKK21zZ3N0ciAiIgorIklzdG5pZWplIGtsaWthIHBha2lldMOzdywga3TDs3JlIGRvc3RhcmN6YWrEhSBlZHl0b3JhIHRla3N0dSBrb21wYXR5YmlsbmVnbyB6ICIKKyJlZHl0b3JlbSBCPHZpPiwgbmEgcHJ6eWvFgmFkIEI8bnZpPiBpIEI8dmltPi4gVG8sIGt0w7NyeSBwYWtpZXQgYsSZZHppZSAiCisidcW8eXdhbnksIGtvbnRyb2xvd2FuZSBqZXN0IHByemV6IGdydXDEmSBkb3dpxIV6YcWEIEI8dmk+LCB6YXdpZXJhasSFY8SFICIKKyJkb3dpxIV6YW5pYSBkbyBzYW1lZ28gcHJvZ3JhbXUgaSBvZHBvd2lhZGFqxIVjeWNoIG11IHN0cm9uIHBvZHLEmWN6bmlrYS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0NjcKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlRvIGRpc3BsYXkgdGhlIGF2YWlsYWJsZSBwYWNrYWdlcyB3aGljaCBwcm92aWRlIEI8dmk+IGFuZCB0aGUgY3VycmVudCAiCisjfCAic2V0dGluZyBmb3IgaXQsIHVzZSB0aGUgSTwtLWRpc3BsYXk+IGFjdGlvbjoiCittc2dpZCAiIgorIlRvIGRpc3BsYXkgdGhlIGF2YWlsYWJsZSBwYWNrYWdlcyB3aGljaCBwcm92aWRlIEI8dmk+IGFuZCB0aGUgY3VycmVudCAiCisic2V0dGluZyBmb3IgaXQsIHVzZSB0aGUgQjwtLWRpc3BsYXk+IGFjdGlvbjoiCittc2dzdHIgIiIKKyJBYnkgd3nFm3dpZXRsacSHIGxpc3TEmSBkb3N0xJlwbnljaCBwYWtpZXTDs3csIGt0w7NyZSBkb3N0YXJjemFqxIUgQjx2aT4gb3JheiBqZWdvICIKKyJiaWXFvMSFY2UgdXN0YXdpZW5pZSwgbmFsZcW8eSB1xbx5xIcgYWtjamkgSTwtLWRpc3BsYXk+OiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQ3MAorbXNnaWQgIkI8dXBkYXRlLWFsdGVybmF0aXZlcyAtLWRpc3BsYXkgdmk+IgorbXNnc3RyICJCPHVwZGF0ZS1hbHRlcm5hdGl2ZXMgLS1kaXNwbGF5IHZpPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQ3NAorbXNnaWQgIiIKKyJUbyBjaG9vc2UgYSBwYXJ0aWN1bGFyIEI8dmk+IGltcGxlbWVudGF0aW9uLCB1c2UgdGhpcyBjb21tYW5kIGFzIHJvb3QgYW5kICIKKyJ0aGVuIHNlbGVjdCBhIG51bWJlciBmcm9tIHRoZSBsaXN0OiIKK21zZ3N0ciAiIgorIkFieSB3eWJyYcSHIG9rcmXFm2xvbsSFIGltcGxlbWVudGFjasSZIGVkeXRvcmEgQjx2aT4sIG5hbGXFvHkgdcW8ecSHIHRlZ28gcG9sZWNlbmlhICIKKyJqYWtvIHXFvHl0a293bmlrIHJvb3QgaSB3eWJyYcSHIGxpY3pixJkgeiBsaXN0eToiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0NzcKK21zZ2lkICJCPHVwZGF0ZS1hbHRlcm5hdGl2ZXMgLS1jb25maWcgdmk+IgorbXNnc3RyICJCPHVwZGF0ZS1hbHRlcm5hdGl2ZXMgLS1jb25maWcgdmk+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDgxCittc2dpZCAiIgorIlRvIGdvIGJhY2sgdG8gaGF2aW5nIHRoZSBCPHZpPiBpbXBsZW1lbnRhdGlvbiBjaG9zZW4gYXV0b21hdGljYWxseSwgZG8gdGhpcyAiCisiYXMgcm9vdDoiCittc2dzdHIgIiIKKyJBYnkgcHJ6eXdyw7NjacSHIGF1dG9tYXR5Y3puZSB3eWJpZXJhbmllIGltcGxlbWVudGFjamkgcHJvZ3JhbXUgQjx2aT4sIG5hbGXFvHkgIgorImpha28gdcW8eXRrb3duaWsgcm9vdCB3eWtvbmHEhzoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0ODQKK21zZ2lkICJCPHVwZGF0ZS1hbHRlcm5hdGl2ZXMgLS1hdXRvIHZpPiIKK21zZ3N0ciAiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzIC0tYXV0byB2aT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0ODgKK21zZ2lkICIiCisiSWYgeW91IGZpbmQgYSBidWcsIHBsZWFzZSByZXBvcnQgaXQgdXNpbmcgdGhlIERlYmlhbiBidWctdHJhY2tpbmcgc3lzdGVtLiIKK21zZ3N0ciAiIgorIlcgcmF6aWUgem5hbGV6aWVuaWEgYsWCxJlkdSwgcHJvc2lteSBvIGplZ28gemfFgm9zemVuaWUsIHXFvHl3YWrEhWMgc3lzdGVtdSAiCisixZtsZWR6ZW5pYSBixYLEmWTDs3cgRGViaWFuYS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0OTMKK21zZ2lkICIiCisiSWYgeW91IGZpbmQgYW55IGRpc2NyZXBhbmN5IGJldHdlZW4gdGhlIG9wZXJhdGlvbiBvZiBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+ICIKKyJhbmQgdGhpcyBtYW51YWwgcGFnZSwgaXQgaXMgYSBidWcsIGVpdGhlciBpbiB0aGUgaW1wbGVtZW50YXRpb24gb3IgdGhlICIKKyJkb2N1bWVudGF0aW9uOyBwbGVhc2UgcmVwb3J0IGl0LiIKK21zZ3N0ciAiIgorIlJvemJpZcW8bm/Fm2NpIHBvbWnEmWR6eSBkemlhxYJhbmllbSBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IGEgdMSFIHN0cm9uxIUgIgorInBvZHLEmWN6bmlrYSBzdGFub3dpxIUgYWxibyBixYLEhWQgdyBpbXBsZW1lbnRhY2ppLCBhbGJvIHcgZG9rdW1lbnRhY2ppLiBXIHJhemllICIKKyJ6bmFsZXppZW5pYSBqYWtpY2hrb2x3aWVrIHJvemJpZcW8bm/Fm2NpLCBwcm9zaW15IG8gaWNoIHpnxYJvc3plbmllLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjUwNAorbXNnaWQgIiIKKyJUaGlzIG1hbnVhbCBwYWdlIGlzIGNvcHlyaWdodCAxOTk3LDE5OTggQ2hhcmxlcyBCcmlzY29lLVNtaXRoIGFuZCBvdGhlcnMuIgorbXNnc3RyICIiCisiQ29weXJpZ2h0IHRlaiBzdHJvbnkgcG9kcsSZY3puaWthOiAxOTk3LDE5OTggQ2hhcmxlcyBCcmlzY29lLVNtaXRoIGkgaW5uaS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo1MDcKK21zZ2lkICIiCisiVGhpcyBpcyBmcmVlIGRvY3VtZW50YXRpb247IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgdmVyc2lvbiAyIG9yICIKKyJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyBXQVJSQU5UWS4iCittc2dzdHIgIiIKKyJUbyBqZXN0IHdvbG5hIGRva3VtZW50YWNqYSwgc3ByYXdkxbogUG93c3plY2huxIUgTGljZW5jasSZIFB1YmxpY3puxIUgR05VIHcgIgorIndlcnNqaSBkcnVnaWVqIGx1YiBww7PFum5pZWpzemVqLCBieSBkb3dpZWR6aWXEhyBzacSZIG8gd2FydW5rYWNoIGR5c3RyeWJ1Y2ppLiAiCisiQnJhayBKQUtJRUpLT0xXSUVLIGd3YXJhbmNqaS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo1MTAKK21zZ2lkICJCPGxuPigxKSwgRkhTLCB0aGUgRmlsZXN5c3RlbSBIaWVyYXJjaHkgU3RhbmRhcmQuIgorbXNnc3RyICJCPGxuPigxKSwgRkhTIC0gc3RhbmRhcmQgaGllcmFyY2hpaSBzeXN0ZW11IHBsaWvDs3cuIgorCisjfiBtc2dpZCAiMjAwOS0wMi0yNyIKKyN+IG1zZ3N0ciAiMjAwOS0wMi0yNyIKKworIywgZnV6enkKKyN+fCBtc2dpZCAiMjAwOS0wMi0yNyIKKyN+IG1zZ2lkICIyMDExLTA0LTI5IgorI34gbXNnc3RyICIyMDA5LTAyLTI3IgorCisjfiBtc2dpZCAiMjAwNi0wMi0yOCIKKyN+IG1zZ3N0ciAiMjAwNi0wMi0yOCIKKworI34gbXNnaWQgIjIwMDctMDMtMDciCisjfiBtc2dzdHIgIjIwMDctMDMtMDciCisKKyN+IG1zZ2lkICIyMDA3LTA3LTE2IgorI34gbXNnc3RyICIyMDA3LTA3LTE2IgorCisjLCBmdXp6eQorI358IG1zZ2lkICIyMDA5LTA4LTE2IgorI34gbXNnaWQgIjIwMDktMDMtMTUiCisjfiBtc2dzdHIgIjIwMDktMDgtMTYiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgIjIwMDktMDItMjciCisjfiBtc2dpZCAiMjAxMS0wNC0yNyIKKyN+IG1zZ3N0ciAiMjAwOS0wMi0yNyIKKworIywgZnV6enkKKyN+fCBtc2dpZCAiMjAwOS0wMi0yNyIKKyN+IG1zZ2lkICIyMDExLTA3LTA3IgorI34gbXNnc3RyICIyMDA5LTAyLTI3IgorCisjLCBmdXp6eQorI358IG1zZ2lkICIyMDA2LTAyLTI4IgorI34gbXNnaWQgIjIwMTAtMDQtMTgiCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgImRzZWxlY3QuY2ZnIC0gZHNlbGVjdCBjb25maWd1cmF0aW9uIGZpbGUiCisjfiBtc2dpZCAiUGFja2FnZSBtYWludGFpbmVyIGNvbmZpZ3VyYXRpb24gZmlsZS4iCisjfiBtc2dzdHIgImRzZWxlY3QuY2ZnIC0gcGxpayBrb25maWd1cmFjeWpueSBwcm9ncmFtdSBkc2VsZWN0ICIKKworIywgZnV6enkKKyN+fCBtc2dpZCAiMjAwNi0wMi0yOCIKKyN+IG1zZ2lkICIyMDEwLTA3LTI5IgorI34gbXNnc3RyICIyMDA2LTAyLTI4IgorCisjfiBtc2dpZCAiQjxQYWNrYWdlOj4gRTxsdD5wYWNrYWdlIG5hbWVFPGd0PiIKKyN+IG1zZ3N0ciAiQjxQYWNrYWdlOj4gRTxsdD5uYXp3YSBwYWtpZXR1RTxndD4iCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgIjIwMDYtMDItMjgiCisjfiBtc2dpZCAiMjAxMC0xMS0yMiIKKyN+IG1zZ3N0ciAiMjAwNi0wMi0yOCIKKworIywgZnV6enkKKyN+fCBtc2dpZCAiQjxTb3VyY2U6PiBFPGx0PnNvdXJjZSBuYW1lRTxndD4iCisjfiBtc2dpZCAiQjxNdWx0aS1BcmNoOj4gRTxsdD5zYW1lfGZvcmVpZ258YWxsb3dlZEU8Z3Q+ICIKKyN+IG1zZ3N0ciAiQjxTb3VyY2U6PiBFPGx0Pm5hendhIMW6csOzZMWCYUU8Z3Q+IgorCisjLCBmdXp6eQorI358IG1zZ2lkICIyMDA2LTAyLTI4IgorI34gbXNnaWQgIjIwMTAtMDEtMjgiCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgIiIKKyN+fCAiVGhlIGZpcnN0IG1lbWJlciBpcyBuYW1lZCBCPGRlYmlhbi1iaW5hcnk+IGFuZCBjb250YWlucyBhIHNlcmllcyBvZiAiCisjfnwgImxpbmVzLCBzZXBhcmF0ZWQgYnkgbmV3bGluZXMuIEN1cnJlbnRseSBvbmx5IG9uZSBsaW5lIGlzIHByZXNlbnQsIHRoZSAiCisjfnwgImZvcm1hdCB2ZXJzaW9uIG51bWJlciwgQjwyLjA+IGF0IHRoZSB0aW1lIHRoaXMgbWFudWFsIHBhZ2Ugd2FzIHdyaXR0ZW4uICAiCisjfnwgIlByb2dyYW1zIHdoaWNoIHJlYWQgbmV3LWZvcm1hdCBhcmNoaXZlcyBzaG91bGQgYmUgcHJlcGFyZWQgZm9yIHRoZSBtaW5vciAiCisjfnwgIm51bWJlciB0byBiZSBpbmNyZWFzZWQgYW5kIG5ldyBsaW5lcyB0byBiZSBwcmVzZW50LCBhbmQgc2hvdWxkIGlnbm9yZSAiCisjfnwgInRoZXNlIGlmIHRoaXMgaXMgdGhlIGNhc2UuIgorI34gbXNnaWQgIiIKKyN+ICJUaGUgZmlyc3QgbWVtYmVyIGlzIG5hbWVkIEI8ZGViaWFuLXNwbGl0PiBhbmQgY29udGFpbnMgYSBzZXJpZXMgb2YgbGluZXMsICIKKyN+ICJzZXBhcmF0ZWQgYnkgbmV3bGluZXMuIEN1cnJlbnRseSBzZXZlbiBsaW5lcyBhcmUgcHJlc2VudC4gIFRoZSBmaXJzdCBpcyAiCisjfiAidGhlIGZvcm1hdCB2ZXJzaW9uIG51bWJlciwgQjwyLjE+IGF0IHRoZSB0aW1lIHRoaXMgbWFudWFsIHBhZ2Ugd2FzICIKKyN+ICJ3cml0dGVuLiBUaGUgc2Vjb25kIGlzIHRoZSBwYWNrYWdlIG5hbWUuIFRoZSB0aGlyZCBpcyB0aGUgcGFja2FnZSAiCisjfiAidmVyc2lvbi4gVGhlIGZvdXJ0aCBpcyB0aGUgbWQ1c3VtIG9mIHRoZSBwYWNrYWdlLiAgVGhlIGZpZnRoIGlzIHRoZSB0b3RhbCAiCisjfiAic2l6ZSBvZiB0aGUgcGFja2FnZS4gVGhlIHNpeHRoIGlzIHRoZSBtYXhpbXVtIHBhcnQgc2l6ZS4gVGhlIHNldmVudGggaXMgIgorI34gInRoZSBjdXJyZW50IHBhcnQgbnVtYmVyLCBmb2xsb3dlZCBieSBhIHNsYXNoIGFuZCB0aGUgdG90YWwgYW1vdW50IG9mICIKKyN+ICJwYXJ0cyAoYXMgaW4gXFwob3ExLzEwXFwoY3EpLiIKKyN+IG1zZ3N0ciAiIgorI34gIlBpZXJ3c3p5IHNrxYJhZG5payBuYXp5d2Egc2nEmSBCPGRlYmlhbi1iaW5hcnk+IGkgemF3aWVyYSBzZXJpxJkgbGluaWkgIgorI34gInJvemR6aWVsb255Y2ggem5ha2FtaSBub3dlaiBsaW5paS4gT2JlY25pZSBwbGlrIHRlbiB6YXdpZXJhIHR5bGtvIGplZG7EhSAiCisjfiAibGluacSZIC0gbnVtZXIgd2Vyc2ppIGZvcm1hdHUsIGt0w7NyeSAtIHcgY3phc2llIHBpc2FuaWEgdGVqIHN0cm9ueSAiCisjfiAicG9kcsSZY3puaWthIC0gd3lub3NpxYIgQjwyLjA+LiBQcm9ncmFteSBvYnPFgnVndWrEhWNlIGFyY2hpd2EgdyBub3d5bSAiCisjfiAiZm9ybWFjaWUgcG93aW5ueSBiecSHIGdvdG93ZSBuYSBvYnPFgnXFvGVuaWUgem1pYW55IGxpY3pieSBwb2JvY3puZWogKHBvICIKKyN+ICJrcm9wY2UpIG9yYXogbmEgb2JlY25vxZvEhyBub3d5Y2ggbGluaWksIGt0w7NyZSBwb3dpbm55IGlnbm9yb3dhxIcuIgorCisjfiBtc2dpZCAiMjAwOC0wOC0xOCIKKyN+IG1zZ3N0ciAiMjAwOC0wOC0xOCIKKworIworI34gbXNnaWQgIiIKKyN+ICJCPGRwa2c+IGNhbiBhbHNvIGJlIHVzZWQgYXMgYSBmcm9udC1lbmQgdG8gQjxkcGtnLWRlYj4oMSkuICBUaGUgZm9sbG93aW5nICIKKyN+ICJhcmUgQjxkcGtnLWRlYj4gYWN0aW9ucywgYW5kIGlmIHRoZXkgYXJlIGVuY291bnRlcmVkLCBCPGRwa2c+IGp1c3QgcnVucyAiCisjfiAiQjxkcGtnLWRlYj4gd2l0aCB0aGUgcGFyYW1ldGVycyBnaXZlbiB0byBpdDoiCisjfiBtc2dzdHIgIiIKKyN+ICJCPGRwa2c+IG1vxbxlIGJ5xIcgdGFrxbxlIHXFvHl0eSBqYWtvIG5ha8WCYWRrYSBuYSBCPGRwa2ctZGViPigxKS4gV3ltaWVuaW9uZSAiCisjfiAicG9uacW8ZWogZHppYcWCYW5pYSBzxIUgZHppYcWCYW5pYW1pIHByb2dyYW11IEI8ZHBrZy1kZWI+IGkgamXFvGVsaSB6b3N0YW7EhSAiCisjfiAidcW8eXRlLCB0byBCPGRwa2c+IHVydWNob21pIEI8ZHBrZy1kZWI+LCBwcnpla2F6dWrEhWMgbXUgb2Rwb3dpZWRuaWUgIgorI34gInBhcmFtZXRyeToiCisKKyN+IG1zZ2lkICIiCisjfiAiICAgIEI8LWI+LCBCPC0tYnVpbGQ+LFxuIgorI34gIiAgICBCPC1jPiwgQjwtLWNvbnRlbnRzPixcbiIKKyN+ICIgICAgQjwtST4sIEI8LS1pbmZvPixcbiIKKyN+ICIgICAgQjwtZj4sIEI8LS1maWVsZD4sXG4iCisjfiAiICAgIEI8LWU+LCBCPC0tY29udHJvbD4sXG4iCisjfiAiICAgIEI8LXg+LCBCPC0tZXh0cmFjdD4sXG4iCisjfiAiICAgIEI8LVg+LCBCPC0tdmV4dHJhY3Q+LCBhbmRcbiIKKyN+ICIgICAgQjwtLWZzeXMtdGFyZmlsZT4uXG4iCisjfiBtc2dzdHIgIiIKKyN+ICIgICAgQjwtYj4sIEI8LS1idWlsZD4sXG4iCisjfiAiICAgIEI8LWM+LCBCPC0tY29udGVudHM+LFxuIgorI34gIiAgICBCPC1JPiwgQjwtLWluZm8+LFxuIgorI34gIiAgICBCPC1mPiwgQjwtLWZpZWxkPixcbiIKKyN+ICIgICAgQjwtZT4sIEI8LS1jb250cm9sPixcbiIKKyN+ICIgICAgQjwteD4sIEI8LS1leHRyYWN0PixcbiIKKyN+ICIgICAgQjwtWD4sIEI8LS12ZXh0cmFjdD4gb3JhelxuIgorI34gIiAgICBCPC0tZnN5cy10YXJmaWxlPi5cbiIKKworIworI34gbXNnaWQgIlBsZWFzZSByZWZlciB0byBCPGRwa2ctZGViPigxKSBmb3IgaW5mb3JtYXRpb24gYWJvdXQgdGhlc2UgYWN0aW9ucy4iCisjfiBtc2dzdHIgIkR6aWHFgmFuaWEgdGUgc8SFIG9waXNhbmUgdyBvc29ibnltIHBvZHLEmWN6bmlrdSBkbyBCPGRwa2ctZGViPigxKS4iCisKKyN+IG1zZ2lkICJCPC0tbmV3PiwgQjwtLW9sZD4iCisjfiBtc2dzdHIgIkI8LS1uZXc+LCBCPC0tb2xkPiIKKworIworI34gbXNnaWQgIiIKKyN+ICJTZWxlY3QgbmV3IG9yIG9sZCBiaW5hcnkgcGFja2FnZSBmb3JtYXQuIFRoaXMgaXMgYSBCPGRwa2ctZGViPigxKSAgb3B0aW9uLiIKKyN+IG1zZ3N0ciAiIgorI34gIld5YsOzciBwb21pxJlkenkgbm93eW0gaSBzdGFyeW0gZm9ybWF0ZW0gYmluYXJueW0gcGFraWV0dS4gVGEgb3BjamEgamVzdCAiCisjfiAicHJ6ZXPFgmFuYSBkbyBCPGRwa2ctZGViPigxKS4iCisKKyN+IG1zZ2lkICIiCisjfiAiRG9uJ3QgcmVhZCBvciBjaGVjayBjb250ZW50cyBvZiBjb250cm9sIGZpbGUgd2hpbGUgYnVpbGRpbmcgYSBwYWNrYWdlLiAgIgorI34gIlRoaXMgaXMgYSBCPGRwa2ctZGViPigxKSBvcHRpb24uIgorI34gbXNnc3RyICIiCisjfiAiQnJhayBzcHJhd2R6YW5pYSB6YXdhcnRvxZtjaSBwbGlrdSBrb250cm9sbmVnbyBwb2RjemFzIGJ1ZG93YW5pYSBwYWtpZXR1LiAiCisjfiAiVGEgb3BjamEgamVzdCBwcnplc8WCYW5hIGRvIEI8ZHBrZy1kZWI+KDEpLiIKKworIywgZnV6enkKKyN+fCBtc2dpZCAiMjAwOS0wOC0xNiIKKyN+IG1zZ2lkICIyMDA5LTA4LTE1IgorI34gbXNnc3RyICIyMDA5LTA4LTE2IgorCisjfiBtc2dpZCAiQ29tcGlsZXIgZmxhZ3MiCisjfiBtc2dzdHIgIkZsYWdpIGtvbXBpbGF0b3JhIgorCisjLCBmdXp6eQorI358IG1zZ2lkICIyMDA3LTExLTE5IgorI34gbXNnaWQgIjIwMDktMTEtMjEiCisjfiBtc2dzdHIgIjIwMDctMTEtMTkiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgIjIwMDctMDMtMDciCisjfiBtc2dpZCAiMjAxMC0wMy0wNyIKKyN+IG1zZ3N0ciAiMjAwNy0wMy0wNyIKKworIywgZnV6enkKKyN+fCBtc2dpZCAiMjAwNi0wMi0yOCIKKyN+IG1zZ2lkICIyMDEwLTEwLTEyIgorI34gbXNnc3RyICIyMDA2LTAyLTI4IgorCisjLCBmdXp6eQorI358IG1zZ2lkICIyMDA5LTAxLTA3IgorI34gbXNnaWQgIjIwMDktMDgtMDciCisjfiBtc2dzdHIgIjIwMDktMDEtMDciCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgIjIwMDktMDgtMTYiCisjfiBtc2dpZCAiMjAxMC0wNC0xNiIKKyN+IG1zZ3N0ciAiMjAwOS0wOC0xNiIKKworIywgZnV6enkKKyN+fCBtc2dpZCAiMjAwOS0wNS0xMCIKKyN+IG1zZ2lkICIyMDA5LTA1LTE5IgorI34gbXNnc3RyICIyMDA5LTA1LTEwIgorCisjfiBtc2dpZCAiMCIKKyN+IG1zZ3N0ciAiMCIKKworIywgZnV6enkKKyN+fCBtc2dpZCAiMjAwNy0xMC0wOCIKKyN+IG1zZ2lkICIyMDA5LTEwLTAxIgorI34gbXNnc3RyICIyMDA3LTEwLTA4IgorCisjfiBtc2dpZCAiMjAwOS0wNi0yNiIKKyN+IG1zZ3N0ciAiMjAwOS0wNi0yNiIKKworIworI34gbXNnaWQgIiIKKyN+ICJCPGRwa2ctc3BsaXQ+IHVzZXMgc29tZSByYXRoZXIgb3V0LW9mLWRhdGUgY29udmVudGlvbnMgZm9yIHRoZSB0aGUgIgorI34gImZpbGVuYW1lcyBvZiBEZWJpYW4gcGFja2FnZXMuIgorI34gbXNnc3RyICJCPGRwa2ctc3BsaXQ+IHXFvHl3YSByYWN6ZWogc3RhcmVqIGtvbndlbmNqaSBuYXp3IHBsaWvDs3cgcGFraWV0w7N3LiIKKworIworI34gbXNnaWQgIiIKKyN+ICJUaGUgYXJjaGl0ZWN0dXJlIGlzIG5vdCByZXByZXNlbnRlZCBpbiB0aGUgcGFydCBmaWxlcycgaGVhZGVyLCBvbmx5IGluICIKKyN+ICJ0aGUgY29udHJvbCBpbmZvcm1hdGlvbiBvZiB0aGUgY29udGFpbmVkIGJpbmFyeSBwYWNrYWdlIGZpbGUsIGFuZCBpdCBpcyAiCisjfiAibm90IHByZXNlbnQgaW4gdGhlIGZpbGVuYW1lcyBnZW5lcmF0ZWQuIgorI34gbXNnc3RyICIiCisjfiAiQXJjaGl0ZWt0dXJhIG5pZSBqZXN0IG9rcmXFm2xvbmEgdyBwbGlrYWNoIGN6xJnFm2NpIHBha2lldHUsIGplZHluaWUgdyAiCisjfiAia29udHJvbG55Y2ggcGxpa2FjaCBjYcWCZWdvIHBha2lldHUsIHRhayB3acSZYyBhcmNoaXRla3R1cmEgbmllIGplc3QgIgorI34gImN6xJnFm2NpxIUgZ2VuZXJvd2FuZWogbmF6d3kgcGxpa3UuIgorCisjfiBtc2dpZCAiMjAwOS0wNS0xMCIKKyN+IG1zZ3N0ciAiMjAwOS0wNS0xMCIKKworIworIywgZnV6enkKKyN+fCBtc2dpZCAiIgorI358ICJCPGRzZWxlY3Q+IFtCPC0tYWRtaW5kaXI+IEk8RTxsdD5kaXJlY3RvcnlFPGd0Pj5dIFtCPC0taGVscD5dIFtCPC0tIgorI358ICJ2ZXJzaW9uPl0gW0I8LS1saWNlbmNlPnxCPC0tbGljZW5zZT5dIFtCPC0tZXhwZXJ0Pl0gW0I8LS1kZWJ1Zz58QjwtIgorI358ICJEPkk8RTxsdD5maWxlRTxndD4+XSBbSTxFPGx0PmFjdGlvbkU8Z3Q+Pl0gW0I8LS1jb2xvdXI+fEI8LS1jb2xvcj4gIgorI358ICJJPHNjcmVlbnBhcnQ6PltJPGZvcmVncm91bmQ+XSxbSTxiYWNrZ3JvdW5kPl1bSTw6YXR0cj5bSTwrYXR0cisuLj5dXV0iCisjfiBtc2dpZCAiIgorI34gIkI8ZHNlbGVjdD4gW0I8LS1hZG1pbmRpcj4gSTxFPGx0PmRpcmVjdG9yeUU8Z3Q+Pl0gW0I8LS1oZWxwPl0gW0I8LS0iCisjfiAidmVyc2lvbj5dIFtCPC0tZXhwZXJ0Pl0gW0I8LS1kZWJ1Zz58QjwtRD5JPEU8bHQ+ZmlsZUU8Z3Q+Pl0gIgorI34gIltJPEU8bHQ+YWN0aW9uRTxndD4+XSBbQjwtLWNvbG91cj58QjwtLWNvbG9yPiBJPHNjcmVlbnBhcnQ6PiIKKyN+ICJbSTxmb3JlZ3JvdW5kPl0sW0k8YmFja2dyb3VuZD5dW0k8OmF0dHI+W0k8K2F0dHIrLi4+XV1dIgorI34gbXNnc3RyICIiCisjfiAiQjxkc2VsZWN0PiBbQjwtLWFkbWluZGlyPiBJPEU8bHQ+a2F0YWxvZ0U8Z3Q+Pl0gW0I8LS1oZWxwPl0gW0I8LS0iCisjfiAidmVyc2lvbj5dIFtCPC0tbGljZW5jZT58QjwtLWxpY2Vuc2U+XSBbQjwtLWV4cGVydD5dIFtCPC0tZGVidWc+fEI8LSIKKyN+ICJEPkk8RTxsdD5wbGlrRTxndD4+XSBbSTxFPGx0PmFrY2phRTxndD4+XSBbQjwtLWNvbG91cj58QjwtLWNvbG9yPiAiCisjfiAiSTxjesSZxZvEh19la3JhbnU6PltJPHBpZXJ3c3pvcGxhbj5dLFtJPHTFgm8+XVtJPDphdHI+W0k8K2F0cisuLj5dXV0iCisKKyN+IG1zZ2lkICJCPC0tYWRtaW5kaXI+STwgRTxsdD5kaXJlY3RvcnlFPGd0Pj4iCisjfiBtc2dzdHIgIkI8LS1hZG1pbmRpcj5JPCBFPGx0PmthdGFsb2dFPGd0Pj4iCisKKyN+IG1zZ2lkICJVU0FHRSIKKyN+IG1zZ3N0ciAiVcW7WVRLT1dBTklFIgorCisjfiBtc2dpZCAiIgorI34gIkI8c3RhcnQtc3RvcC1kYWVtb24+IHJldHVybnMgMCBpZiB0aGUgcmVxdWVzdGVkIGFjdGlvbiB3YXMgcGVyZm9ybWVkLCBvciAiCisjfiAiaWYgQjwtLW9rbm9kbz4gaXMgc3BlY2lmaWVkIGFuZCBlaXRoZXIgQjwtLXN0YXJ0PiB3YXMgc3BlY2lmaWVkIGFuZCBhICIKKyN+ICJtYXRjaGluZyBwcm9jZXNzIHdhcyBhbHJlYWR5IHJ1bm5pbmcsIG9yIEI8LS1zdG9wPiB3YXMgc3BlY2lmaWVkIGFuZCAiCisjfiAidGhlcmUgd2VyZSBubyBtYXRjaGluZyBwcm9jZXNzZXMuIElmIEI8LS1va25vZG8+IHdhcyBub3Qgc3BlY2lmaWVkIGFuZCAiCisjfiAibm90aGluZyB3YXMgZG9uZSwgMSBpcyByZXR1cm5lZC4gSWYgQjwtLXN0b3A+IGFuZCBCPC0tcmV0cnk+IHdlcmUgIgorI34gInNwZWNpZmllZCwgYnV0IHRoZSBlbmQgb2YgdGhlIHNjaGVkdWxlIHdhcyByZWFjaGVkIGFuZCB0aGUgcHJvY2Vzc2VzIHdlcmUgIgorI34gInN0aWxsIHJ1bm5pbmcsIHRoZSBlcnJvciB2YWx1ZSBpcyAyLiBGb3IgYWxsIG90aGVyIGVycm9ycywgdGhlIHN0YXR1cyBpcyAiCisjfiAiMy4iCisjfiBtc2dzdHIgIiIKKyN+ICJCPHN0YXJ0LXN0b3AtZGFlbW9uPiB6d3JhY2EgMCwgamXFm2xpIMW8xIVkYW5hIGFrY2phIHNpxJkgcG93aW9kxYJhIGx1YiBnZHkgIgorI34gInBvZGFubyBCPC0tb2tub2RvPiBpIGFsYm8gcG9kYW5vIHRha8W8ZSBCPC0tc3RhcnQ+LCBhIG9kcG93aWFkYWrEhWN5IHByb2NlcyAiCisjfiAianXFvCBkemlhxYJhxYIsIGFsYm8gcG9kYW5vIEI8LS1zdG9wPiBpIG5pZSB6bmFsZXppb25vIG9kcG93aWFkYWrEhWNlZ28gIgorI34gInByb2Nlc3UuIEplxZtsaSBuaWUgcG9kYW5vIEI8LS1va25vZG8+IGkgbmljIG5pZSB6cm9iaW9ubywgdG8gendyYWNhbmUgIgorI34gImplc3QgMS4gSmXFm2xpIHBvZGFubyBCPC0tc3RvcD4gaSBCPC0tcmV0cnk+IGkgY2HFgnkgcGxhbiBkemlhxYJhbmlhIHpvc3RhxYIgIgorI34gInd5a29uYW55LCBhIHByb2NlcyBkYWxlaiBkemlhxYJhLCB0byBrb2RlbSBixYLEmWR1IGplc3QgMi4gVyByYXppZSBpbm55Y2ggIgorI34gImLFgsSZZMOzdyB6d3JhY2FuZSBqZXN0IDMuIgorCisjfiBtc2dpZCAiMiIKKyN+IG1zZ3N0ciAiMiIKKworI34gbXNnaWQgIiIKKyN+ICJBbiBlcnJvciBvY2N1cnJlZC4gVW5mb3J0dW5hdGVseSBhdCB0aGUgdGltZSBvZiB3cml0aW5nIEk8ZXh0ZW5kZWQtZXJyb3ItIgorI34gIm1lc3NhZ2U+IGNhbiBjb250YWluIG5ld2xpbmVzLCBhbHRob3VnaCBpbiBsb2NhbGVzIHdoZXJlIHRoZSB0cmFuc2xhdG9ycyAiCisjfiAiaGF2ZSBub3QgbWFkZSBtaXN0YWtlcyBldmVyeSBuZXdsaW5lIGlzIGZvbGxvd2VkIGJ5IGF0IGxlYXN0IG9uZSBzcGFjZS4iCisjfiBtc2dzdHIgIiIKKyN+ICJOYXN0xIVwacWCIGLFgsSFZC4gTmllZm9ydHVubmllIG5hIGN6YXMgcGlzYW5pYSB0ZWdvIEk8cm96c3plcnpvbnkta29tdW5pa2F0LSIKKyN+ICJixYLEmWR1PiBtb8W8ZSB6YXdpZXJhxIcgem5ha2kgbm93ZWogbGluaWksIGFjemtvbHdpZWsgdyBqxJl6eWthY2ggZ2R6aWUgIgorI34gInTFgnVtYWN6ZSBuaWUgcG9wZcWCbmlsaSBixYLEmWTDs3csIHBvIGthxbxkeW0gem5hayBub3dlaiBsaW5paSBuYXN0xJlwdWplICIKKyN+ICJwcnp5bmFqbW5pZWogamVkbmEgc3BhY2phLiIKKworIywgZnV6enkKKyN+fCBtc2dpZCAiMjAwOS0wMy0wOSIKKyN+IG1zZ2lkICIyMDA5LTAzLTA4IgorI34gbXNnc3RyICIyMDA5LTAzLTA5IgorCisjfiBtc2dpZCAiSTxhZG1pbmRpcj4vaW5mby9JPHBhY2thZ2U+LnN5bWJvbHMiCisjfiBtc2dzdHIgIkk8a2F0YWxvZ19hZG1pbj4vaW5mby9JPHBha2lldD4uc3ltYm9scyIKKworI34gbXNnaWQgIkk8YWRtaW5kaXI+L2luZm8vSTxwYWNrYWdlPi5zaGxpYnMiCisjfiBtc2dzdHIgIkk8a2F0YWxvZ19hZG1pbj4vaW5mby9JPHBhY2thZ2U+LnNobGlicyIKKworIywgZnV6enkKKyN+fCBtc2dpZCAiMjAwNy0xMS0xOSIKKyN+IG1zZ2lkICIyMDA5LTExLTExIgorI34gbXNnc3RyICIyMDA3LTExLTE5IgorCisjLCBmdXp6eQorI358IG1zZ2lkICIyMDA5LTAyLTI3IgorI34gbXNnaWQgIjIwMDktMDItMjYiCisjfiBtc2dzdHIgIjIwMDktMDItMjciCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgIjIwMDktMDgtMTYiCisjfiBtc2dpZCAiMjAwOS0wNC0xMyIKKyN+IG1zZ3N0ciAiMjAwOS0wOC0xNiIKKworI34gbXNnaWQgIjIwMDctMTAtMDgiCisjfiBtc2dzdHIgIjIwMDctMTAtMDgiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgIiIKKyN+fCAiRGVmaW5lZCBieSBCPGRwa2c+IG9uIHRoZSBtYWludGFpbmVyIHNjcmlwdCBlbnZpcm9ubWVudCB0byB0aGUgdmVyc2lvbiAiCisjfnwgIm9mIHRoZSBjdXJyZW50bHkgcnVubmluZyBCPGRwa2c+IGluc3RhbmNlLiIKKyN+IG1zZ2lkICIiCisjfiAiRGVmaW5lZCBieSBCPGRwa2c+IG9uIHRoZSBtYWludGFpbmVyIHNjcmlwdCBlbnZpcm9ubWVudCB0byB0aGUgcHJpdmF0ZSAiCisjfiAibGlicmFyeSBkaXJlY3Rvcnkgb2YgdGhlIGN1cnJlbnRseSBydW5uaW5nIEI8ZHBrZz4gaW5zdGFuY2UuIgorI34gbXNnc3RyICIiCisjfiAiWmRlZmluaW93YW5hIHByemV6IEI8ZHBrZz4gdyDFm3JvZG93aXNrdSBza3J5cHR1IG9waWVrdW5hIHBha2lldHUsIGpha28gIgorI34gIndlcnNqYSBha3R1YWxuaWUgdXJ1Y2hvbWlvbmVqIGluc3RhbmNqaSBwcm9ncmFtdSBCPGRwa2c+LiIKKworIywgZnV6enkKKyN+fCBtc2dpZCAiMjAwOS0wOC0xNiIKKyN+IG1zZ2lkICIyMDEwLTA0LTExIgorI34gbXNnc3RyICIyMDA5LTA4LTE2IgorCisjfiBtc2dpZCAiRm9ybWF0OiAzLjAgKGdpdCkgYW5kIDMuMCAoYnpyKSIKKyN+IG1zZ3N0ciAiRm9ybWF0OiAzLjAgKGdpdCkgb3JheiAzLjAgKGJ6cikiCisKKyN+IG1zZ2lkICIiCisjfiAiSTxwcmlvcml0eT4gYW5kIEk8c2VjdGlvbj4gcGxhY2UgdGhlIHBhY2thZ2Ugd2l0aGluIHRoZSByZWxlYXNlIHRyZWU7ICIKKyN+ICJ0aGVzZSBvdWdodCBub3QgdG8gYmUgZm91bmQgaW4gdGhlIGNvbnRyb2wgZmlsZS4gSWYgdGhlIHBhY2thZ2UgaXMgZm91bmQgIgorI34gImluIGEgc3ViZGlyZWN0b3J5IG9mIEk8YmluYXJ5ZGlyPiwgdGhhdCB3aWxsIGJlIGNoZWNrZWQgYWdhaW5zdCAiCisjfiAiSTxzZWN0aW9uPi4iCisjfiBtc2dzdHIgIiIKKyN+ICJJPHByaW9yeXRldD4gaSBJPHNla2NqYT4gdW1pZWpzY2F3aWFqxIUgcGFraWV0IHcgZHJ6ZXdpZSB3eWRhbmlhOyBuaWUgIgorI34gInBvd2lubnkgc2nEmSB6bmFqZG93YcSHIHcgcGxpa3Uga29udHJvbG55bS4gSmXFvGVsaSBwYWtpZXQgem9zdGFuaWUgIgorI34gInpuYWxlemlvbnkgdyBwb2RrYXRhbG9ndSBJPGthdGFsb2d1X2Jpbj4sIHRvIGLEmWR6aWUgc3ByYXdkem9ueSB3emdsxJlkZW0gIgorI34gIkk8c2VrY2ppPi4iCisKKyN+IG1zZ2lkICIiCisjfiAiSWYgdGhlIGhvc3QgYXJjaGl0ZWN0dXJlIGRpZmZlcnMgZnJvbSB0aGUgYnVpbGQgYXJjaGl0ZWN0dXJlIChhcyBpcyB0aGUgIgorI34gImNhc2UgZm9yIGEgY3Jvc3MtY29tcGlsYXRpb24pLCBhbmQgaWYgdGhlIGVudmlyb25tZW50IHZhcmlhYmxlICIKKyN+ICJCPFBLR19DT05GSUdfTElCRElSPiBpcyBub3Qgc2V0LCB0aGVuIGl0IGlzIHNldCB0byBhIHZhbHVlIHN1aXRhYmxlIGZvciAiCisjfiAiY3Jvc3MtY29tcGlsYXRpb24gKFwiL3Vzci9JPGdudS1zeXN0ZW0tdHlwZT4vbGliL3BrZ2NvbmZpZy86L3Vzci9zaGFyZS8iCisjfiAicGtnY29uZmlnXCIpLiIKKyN+IG1zZ3N0ciAiIgorI34gIkplxZtsaSBhcmNoaXRla3R1cmEgZG9jZWxvd2EgcsOzxbxuaSBzacSZIG9kIGFyY2hpdGVrdHVyeSB1xbx5d2FuZWogcG9kY3phcyAiCisjfiAiYnVkb3dhbmlhIChqYWsgbWEgdG8gbWllanNjZSBwcnp5IGtvbXBpbGFjamkgc2tyb8WbbmVqKSwgb3JheiBqZcWbbGkgIgorI34gInptaWVubmEgxZtyb2Rvd2lza2EgQjxQS0dfQ09ORklHX0xJQkRJUj4gbmllIGplc3QgdXN0YXdpb25hLCB3dGVkeSBqZXN0ICIKKyN+ICJ1c3Rhd2lhbmEgbmEgd2FydG/Fm8SHIG5hZGFqxIVjxIUgc2nEmSBkbyBrb21waWxhY2ppIHNrcm/Fm25laiAoXCIvdXNyL0k8dHlwLSIKKyN+ICJzeXN0ZW11LWdudT4vbGliL3BrZ2NvbmZpZy86L3Vzci9zaGFyZS9wa2djb25maWdcIikuIgorCisjfiBtc2dpZCAiIgorI34gIlNvbWUgZW52aXJvbm1lbnQgdmFyaWFibGVzIGRlZmluaW5nIGNvbXBpbGVyIGFuZCBsaW5rZXIgb3B0aW9ucyBhcmUgc2V0ICIKKyN+ICJ0byBkZWZhdWx0IHZhbHVlcyB1bmxlc3MgYWxyZWFkeSBwcmVzZW50IGluIHRoZSBlbnZpcm9ubWVudC4gTm90ZSB0aGF0ICIKKyN+ICJ0aGlzIG1lY2hhbmlzbSB3YXMgb25seSBpbnRyb2R1Y2VkIGluIHZlcnNpb24gMS4xNC4xNyBvZiBkcGtnLWRldiBhbmQgbm90ICIKKyN+ICJhbGwgSTxydWxlcz4gZmlsZXMgYW5kIGJ1aWxkIHRvb2xzIHdpbGwgaG9ub3VyIHRoZXNlIHZhcmlhYmxlcywgeWV0LiIKKyN+IG1zZ3N0ciAiIgorI34gIk9kcG93aWVkbmllIHptaWVubmUgxZtyb2Rvd2lza2EgZG8gb2tyZcWbbGFuaWEgb3Bjamkga29tcGlsYXRvcmEgaSBsaW5rZXJhICIKKyN+ICJzxIUgdXN0YXdpYW5lIG5hIHdhcnRvxZtjaSBkb215xZtsbmUsIGNoeWJhIMW8ZSBqdcW8IHPEhSB1c3Rhd2lvbmUgdyAiCisjfiAixZtyb2Rvd2lza3UuIE5hbGXFvHkgemF1d2HFvHnEhywgxbxlIHRlbiBtZWNoYW5pem0gem9zdGHFgiB3cHJvd2Fkem9ueSBkb3BpZXJvICIKKyN+ICJ3IHdlcnNqaSAxLjE0LjE3IGRwa2ctZGV2IGkgamVzemN6ZSBuaWUgd3N6eXN0a2llIHBsaWtpIEk8cnVsZXM+IGkgIgorI34gIm5hcnrEmWR6aWEgZG8gYnVkb3dhbmlhIHBha2lldMOzdyBob25vcnVqxIUgdGUgem1pZW5uZS4iCisKKyN+IG1zZ2lkICIiCisjfiAiT3B0aW1pemF0aW9uIG9wdGlvbnMgd2hpY2ggYXJlIHBhc3NlZCB0byB0aGUgRGViaWFuIGJ1aWxkIHN5c3RlbSBhbmQgY2FuLyIKKyN+ICJzaG91bGQgYmUgb3ZlcnJpZGRlbiBieSB0aGUgcGFja2FnZSBidWlsZCBpZiBuZWVkZWQgKGRlZmF1bHQgdmFsdWU6IEI8LWcgLSIKKyN+ICJPMj4sIG9yIEI8LWdcXCAtTzA+IGlmIEI8bm9vcHQ+IGlzIHNwZWNpZmllZCBpbiBERUJfQlVJTERfT1BUSU9OUykuICIKKyN+ICJPdmVycmlkaW5nIG9wdGlvbnMgY2FuIGJlIHVzZWQgdG8gZXhwbGljaXRseSBzZXQgYSBoaWdoZXIgb3B0aW1pemF0aW9uICIKKyN+ICJsZXZlbCwgb3Igd29yayBhcm91bmQgY29tcGlsZXIgYnVncywgd2hpY2ggb25seSBjYW4gYmUgc2VlbiB3aXRoIHNvbWUgIgorI34gIm9wdGltaXphdGlvbiBsZXZlbHMgKHRoZSBsYXN0IG9wdCBsZXZlbCBcIndpbnNcIikuIgorI34gbXNnc3RyICIiCisjfiAiT3BjamUgb3B0eW1hbGl6YWNqaSwga3TDs3JlIHPEhSBwcnpla2F6eXdhbmUgZG8gc3lzdGVtdSBidWRvd2FuaWEgRGViaWFuYSBpICIKKyN+ICJtb2fEhS9wb3dpbm55IGJ5xIcgbmFkcGlzYW5lIHByenkgYnVkb3dhbml1IHBha2lldHUgamXFm2xpIGplc3QgdG8gcG90cnplYm5lICIKKyN+ICIod2FydG/Fm8SHIGRvbXnFm2xuYTogQjwtZyAtTzI+LCBsdWIgQjwtZ1xcIC1PMD4gamXFm2xpIG9wY2phIEI8bm9vcHQ+IGplc3QgIgorI34gInBvZGFuYSB3IERFQl9CVUlMRF9PUFRJT05TKS4gTmFkcGlzeXdhbmllIG9wY2ppIG1vxbxlIGJ5xIcgdcW8eXRlIHcgY2VsdSAiCisjfiAidXN0YXdpZW5pYSB3ecW8c3plZ28gcG96aW9tdSBvcHR5bWFsaXphY2ppIGx1YiByYWR6ZW5pYSBzb2JpZSB6IGLFgsSZZGFtaSAiCisjfiAia29tcGlsYXRvcmEsIGt0w7NyZSBwb2phd2lhasSFIHNpxJkgcHJ6eSBuaWVrdMOzcnljaCBwb3ppb21hY2ggb3B0eW1hbGl6YWNqaSAiCisjfiAiKHBvemlvbSBva3JlxZtsb255IHcgb3N0YXRuaWVqIG9wY2ppIFwiend5Y2nEmcW8YVwiKS4iCisKKyN+IG1zZ2lkICJCPENGTEFHU19BUFBFTkQ+IgorI34gbXNnc3RyICJCPENGTEFHU19BUFBFTkQ+IgorCisjfiBtc2dpZCAiIgorI34gIk9wdGltaXphdGlvbiBvcHRpb25zIGFwcGVuZGVkIHRvIHRoZSBjb21waWxlciBmbGFncywgd2hpY2ggbXVzdCBub3QgYmUgIgorI34gIm92ZXJ3cml0dGVuIGJ5IHRoZSBwYWNrYWdlIChtb3N0bHkgdXNlZCB0byBmb3IgdGVzdCBidWlsZHMpLiBEZWZhdWx0ICIKKyN+ICJ2YWx1ZTogZW1wdHkuIgorI34gbXNnc3RyICIiCisjfiAiT3BjamUgb3B0eW1hbGl6YWNqaSBkb2Rhd2FuZSBkbyBmbGFnIGtvbXBpbGF0b3JhLCBrdMOzcmUgbmllIG1vZ8SFIGJ5xIcgIgorI34gIm5hZHBpc2FuZSBwcnpleiBwYWtpZXQgKGfFgsOzd25pZSB1xbx5d2FuZSBkbGEgdGVzdMOzdyBidWRvd2FuaWEpLiBXYXJ0b8WbxIcgIgorI34gImRvbXnFm2xuYTogcHVzdGUuIgorCisjfiBtc2dpZCAiU2FtZSBhcyBCPENGTEFHUz4gZm9yIEMrKyBzb3VyY2VzLiIKKyN+IG1zZ3N0ciAiVG8gc2FtbyBjbyBCPENGTEFHUz4gZGxhIMW6csOzZGXFgiBDKysuIgorCisjfiBtc2dpZCAiQjxDWFhGTEFHU19BUFBFTkQ+IgorI34gbXNnc3RyICJCPENYWEZMQUdTX0FQUEVORD4iCisKKyN+IG1zZ2lkICJTYW1lIGFzIEI8Q0ZMQUdTX0FQUEVORD4gZm9yIEMrKyBzb3VyY2VzLiIKKyN+IG1zZ3N0ciAiVG8gc2FtbyBjbyBCPENGTEFHU19BUFBFTkQ+IGRsYSDFunLDs2RlxYIgQysrLiIKKworI34gbXNnaWQgIlNhbWUgYXMgQjxDRkxBR1M+IGZvciBGb3J0cmFuIHNvdXJjZXMuIgorI34gbXNnc3RyICJUbyBzYW1vIGNvIEI8Q0ZMQUdTPiBkbGEgxbpyw7NkZcWCIHcgRm9ydHJhbmllLiIKKworI34gbXNnaWQgIkI8RkZMQUdTX0FQUEVORD4iCisjfiBtc2dzdHIgIkI8RkZMQUdTX0FQUEVORD4iCisKKyN+IG1zZ2lkICJTYW1lIGFzIEI8Q0ZMQUdTX0FQUEVORD4gZm9yIEZvcnRyYW4gc291cmNlcy4iCisjfiBtc2dzdHIgIlRvIHNhbW8gY28gQjxDRkxBR1NfQVBQRU5EPiBkbGEgxbpyw7NkZcWCIHcgRm9ydHJhbmllLiIKKworI34gbXNnaWQgIiIKKyN+ICJQcmVwcm9jZXNzb3IgZmxhZ3Mgd2hpY2ggYXJlIHBhc3NlZCB0byB0aGUgRGViaWFuIGJ1aWxkIHN5c3RlbSBhbmQgY2FuLyIKKyN+ICJzaG91bGQgYmUgb3ZlcnJpZGRlbiBieSB0aGUgcGFja2FnZSBidWlsZCBpZiBuZWVkZWQgKGRlZmF1bHQ6IGVtcHR5KS4gIgorI34gIlRoaXMgbWFjcm8gaXMgc2VsZG9tIHVzZWQgKG1vc3QgYnVpbGQgc3lzdGVtcyBqdXN0IHVzZSBCPENGTEFHUz4gaW5zdGVhZCAiCisjfiAib2YgQjxDUFBGTEFHUz4pLiIKKyN+IG1zZ3N0ciAiIgorI34gIkZsYWdpIHByZXByb2Nlc29yYSwga3TDs3JlIHPEhSBwcnpla2F6eXdhbmUgZG8gc3lzdGVtdSBidWRvd2FuaWEgRGViaWFuYSBpICIKKyN+ICJtb2fEhS9wb3dpbm55IGJ5xIcgbmFkcGlzYW5lIHByenkgYnVkb3dhbml1IHBha2lldHUgamXFm2xpIGplc3QgdG8gcG90cnplYm5lICIKKyN+ICIod2FydG/Fm8SHIGRvbXnFm2xuYTogcHVzdGUpLiBUbyBtYWtybyBqZXN0IHJ6YWRrbyBzdG9zb3dhbmUgKHdpxJlrc3pvxZvEhyAiCisjfiAic3lzdGVtw7N3IGJ1ZG93YW5pYSB1xbx5d2EgcG8gcHJvc3R1IEI8Q0ZMQUdTPiB6YW1pYXN0IEI8Q1BQRkxBR1M+KS4iCisKKyN+IG1zZ2lkICJCPENQUEZMQUdTX0FQUEVORD4iCisjfiBtc2dzdHIgIkI8Q1BQRkxBR1NfQVBQRU5EPiIKKworI34gbXNnaWQgIiIKKyN+ICJQcmVwcm9jZXNzb3IgZmxhZ3MgYXBwZW5kZWQgdG8gdGhlIHByZXByb2Nlc3NvciBmbGFncywgd2hpY2ggbXVzdCBub3QgYmUgIgorI34gIm92ZXJ3cml0dGVuIGJ5IHRoZSBwYWNrYWdlIChtb3N0bHkgdXNlZCB0byBmb3IgdGVzdCBidWlsZHMpLiBEZWZhdWx0ICIKKyN+ICJ2YWx1ZTogZW1wdHkuIgorI34gbXNnc3RyICIiCisjfiAiRmxhZ2kgZG9kYXdhbmUgZG8gZmxhZyBwcmVwcm9jZXNvcmEsIGt0w7NyZSBuaWUgbW9nxIUgYnnEhyBuYWRwaXNhbmUgcHJ6ZXogIgorI34gInBha2lldCAoZ8WCw7N3bmllIHXFvHl3YW5lIGRsYSB0ZXN0w7N3IGJ1ZG93YW5pYSkuIFdhcnRvxZvEhyBkb215xZtsbmE6IHB1c3RlLiIKKworI34gbXNnaWQgIkI8TERGTEFHU19BUFBFTkQ+IgorI34gbXNnc3RyICJCPExERkxBR1NfQVBQRU5EPiIKKworI34gbXNnaWQgIiIKKyN+ICJPcHRpbWl6YXRpb24gb3B0aW9ucyBhcHBlbmRlZCB0byB0aGUgY29tcGlsZXIgZmxhZ3Mgd2hlbiBsaW5raW5nIGNvZGUsICIKKyN+ICJ3aGljaCBtdXN0IG5vdCBiZSBvdmVyd3JpdHRlbiBieSB0aGUgcGFja2FnZSAobW9zdGx5IHVzZWQgdG8gZm9yIHRlc3QgIgorI34gImJ1aWxkcykuIERlZmF1bHQgdmFsdWU6IGVtcHR5LiIKKyN+IG1zZ3N0ciAiIgorI34gIk9wY2plIG9wdHltYWxpemFjamkgZG9kYXdhbmUgZG8gZmxhZyBrb21waWxhdG9yYSBwb2RjemFzIMWCxIVjemVuaWEga29kdSwgIgorI34gImt0w7NyZSBuaWUgbW9nxIUgYnnEhyBuYWRwaXNhbmUgcHJ6ZXogcGFraWV0IChnxYLDs3duaWUgdcW8eXdhbmUgZGxhIHRlc3TDs3cgIgorI34gImJ1ZG93YW5pYSkuIFdhcnRvxZvEhyBkb215xZtsbmE6IHB1c3RlLiIKKworI34gbXNnaWQgImluY2x1ZGUgYWxsIGNoYW5nZXMuIgorI34gbXNnc3RyICJkb8WCxIVjemEgd3N6eXN0a2llIHptaWFueS4iCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgIjIwMDctMTEtMTkiCisjfiBtc2dpZCAiMjAwOS0xMS0xMiIKKyN+IG1zZ3N0ciAiMjAwNy0xMS0xOSIKKworI34gbXNnaWQgIkI8LS1saWNlbmNlPiwgQjwtLWxpY2Vuc2U+IgorI34gbXNnc3RyICJCPC0tbGljZW5jZT4sIEI8LS1saWNlbnNlPiIKKworIworI34gbXNnaWQgIkRpc3BsYXkgQjxkcGtnPiBsaWNlbmNlLiIKKyN+IG1zZ3N0ciAiV3nFm3dpZXRsZW5pZSBsaWNlbmNqaSBCPGRwa2c+LiIKKworI34gbXNnaWQgIkVOVklST05NRU5UIFZBUklBQkxFUyIKKyN+IG1zZ3N0ciAiWk1JRU5ORSDFmlJPRE9XSVNLQSIKKworI34gbXNnaWQgIkI8RFBLR19OT19UU1RQPiIKKyN+IG1zZ3N0ciAiQjxEUEtHX05PX1RTVFA+IgorCisjCisjfiBtc2dpZCAiIgorI34gIkRlZmluZSB0aGlzIHRvIHNvbWV0aGluZyBpZiB5b3UgcHJlZmVyIEI8ZHBrZz4gc3RhcnRpbmcgYSBuZXcgc2hlbGwgIgorI34gInJhdGhlciB0aGFuIHN1c3BlbmRpbmcgaXRzZWxmLCB3aGlsZSBkb2luZyBhIHNoZWxsIGVzY2FwZS4iCisjfiBtc2dzdHIgIiIKKyN+ICJaZGVmaW5pdWogdMSZIHptaWVubsSFLCBqZcWbbGkgY2hjZXN6LCBhYnkgQjxkcGtnPiB1cnVjaG9tacWCIG5vd8SFIHNlc2rEmSAiCisjfiAicG93xYJva2kgemFtaWFzdCB1c3V3YcSHIEI8ZHBrZz4gdyB0xYJvLCBnZHkgcG90cnplYmEgd3lrb25hxIcgY2/FmyB3IHBvd8WCb2NlLiIKKworIywgZnV6enkKKyN+fCBtc2dpZCAiMjAwOS0wOC0xNiIKKyN+IG1zZ2lkICIyMDA5LTA2LTEzIgorI34gbXNnc3RyICIyMDA5LTA4LTE2IgorCisjfiBtc2dpZCAiMjAwOS0wMS0wNyIKKyN+IG1zZ3N0ciAiMjAwOS0wMS0wNyIKKworI34gbXNnaWQgIkI8LS1saWNlbnNlPiwgQjwtLWxpY2VuY2U+IgorI34gbXNnc3RyICJCPC0tbGljZW5zZT4sIEI8LS1saWNlbmNlPiIKKworI34gbXNnaWQgIlNob3cgdGhlIGNvcHlyaWdodCBsaWNlbnNpbmcgdGVybXMgYW5kIGV4aXQuIgorI34gbXNnc3RyICIiCisjfiAiUG9rYXp1amUgaW5mb3JtYWNqZSBvIGxpY2VuY2ppIGkgcHJhd2FjaCBhdXRvcnNraWNoIGkga2/FhGN6eSBkemlhxYJhbmllLiIKKworI34gbXNnaWQgIiIKKyN+ICJSZWFkIHN1YnN0aXR1dGlvbiB2YXJpYWJsZXMgaW4gSTxzdWJzdHZhcnNmaWxlPjsgdGhlIGRlZmF1bHQgaXMgQjxkZWJpYW4vIgorI34gInN1YnN0dmFycz4uIgorI34gbXNnc3RyICIiCisjfiAiQ3p5dGEgem1pZW5uZSBwb2RzdGF3aWFuaWEgeiBJPHBsaWt1X3ptaWVubnljaF9wb2RzdD47IGRvbXnFm2xuaWUgamVzdCB0byAiCisjfiAiQjxkZWJpYW4vc3Vic3R2YXJzPi4iCisKKyN+IG1zZ2lkICJCPC1sPiwgQjwtLWxpY2Vuc2U+IgorI34gbXNnc3RyICJCPC1sPiwgQjwtLWxpY2Vuc2U+IgorCisjfiBtc2dpZCAiMjAwOS0wOS0wNiIKKyN+IG1zZ3N0ciAiMjAwOS0wOS0wNiIKKworI34gbXNnaWQgIkI8LUk+W0k8ZmlsZS1wYXR0ZXJuPl0iCisjfiBtc2dzdHIgIkI8LUk+IFtJPHd6b3J6ZWMtcGxpa3U+XSIKKworI34gbXNnaWQgIjIwMDktMDgtMjAiCisjfiBtc2dzdHIgIjIwMDktMDgtMjAiCisKKyN+IG1zZ2lkICJCPC0tbGljZW5jZT58QjwtLWxpY2Vuc2U+IgorI34gbXNnc3RyICJCPC0tbGljZW5jZT58QjwtLWxpY2Vuc2U+IgorCisjCisjfiBtc2dpZCAiIgorI34gIkRpc3BsYXlzIHRoZSBCPGRzZWxlY3Q+IGNvcHlyaWdodCBhbmQgbGljZW5zZSBpbmZvcm1hdGlvbiBhbmQgZXhpdHMgIgorI34gInN1Y2Nlc3NmdWxseS4iCisjfiBtc2dzdHIgIiIKKyN+ICJXecWbd2lldGxhIGluZm9ybWFjasSZIG8gbGljZW5jamkgaSBwcmF3YWNoIGF1dG9yc2tpY2ggcHJvZ3JhbXUgaSBwb215xZtsbmllICIKKyN+ICJrb8WEY3p5IGR6aWHFgmFuaWUuIgorCisjfiBtc2dpZCAiQjwtaD4iCisjfiBtc2dzdHIgIkI8LWg+IgorCisjfiBtc2dpZCAiQjwtLXdpdGhvdXQtcXVpbHQ+IgorI34gbXNnc3RyICJCPC0td2l0aG91dC1xdWlsdD4iCisKKyN+IG1zZ2lkICIiCisjfiAiRG9uJ3QgdXNlIHF1aWx0IHRvIGFwcGx5IHBhdGNoZXMgYnV0IGRwa2ctc291cmNlJ3Mgb3duIGNvZGUuIEl0IHdvbid0IGJlICIKKyN+ICJwb3NzaWJsZSB0byB1c2UgcXVpbHQgZGlyZWN0bHkgb24gdGhlIHVucGFja2VkIGRpcmVjdG9yeSBidXQgaXQgd2lsbCBiZSAiCisjfiAiZnJlZSBvZiBxdWlsdCdzIHRlbXBvcmFyeSBmaWxlcyBhcyB3ZWxsLiIKKyN+IG1zZ3N0ciAiIgorI34gIk5pZSB1xbx5d2EgcXVpbHQgZG8gbmFrxYJhZGFuaWEgxYJhdGVrLCBhbGUgd8WCYXNuZWdvIGtvZHUgZHBrZy1zb3VyY2UuIE5pZSAiCisjfiAiYsSZZHppZSBtb8W8bmEgdcW8eXdhxIcgcXVpbHQgYmV6cG/Fm3JlZG5pbyBuYSByb3pwYWtvd2FueW0ga2F0YWxvZ3UsIGFsZSBuaWUgIgorI34gImLEmWR6aWUgb24gcsOzd25pZcW8IHphd2llcmHEhyBwbGlrw7N3IHR5bWN6YXNvd3ljaCBxdWlsdC4iCisKKyN+IG1zZ2lkICIyMDA4LTA0LTA5IgorI34gbXNnc3RyICIyMDA4LTA0LTA5IgorCisjfiBtc2dpZCAiMjAwNy0wMy0wNiIKKyN+IG1zZ3N0ciAiMjAwNy0wMy0wNiIKKworI34gbXNnaWQgIjIwMDctMDYtMTIiCisjfiBtc2dzdHIgIjIwMDctMDYtMTIiCisKKyN+IG1zZ2lkICJCPC1aPkk8Y29tcHJlc3Npb24+IgorI34gbXNnc3RyICJCPC1aPkk8a29tcHJlc2phPiIKKworI34gbXNnaWQgIkI8LXo+STxsZXZlbD4iCisjfiBtc2dzdHIgIkI8LXo+STxwb3ppb20+IgorCisjfiBtc2dpZCAiMjAwOS0wMS0wNCIKKyN+IG1zZ3N0ciAiMjAwOS0wMS0wNCIKKworI34gbXNnaWQgIjIwMDktMDItMTgiCisjfiBtc2dzdHIgIjIwMDktMDItMTgiCisKKyMKKyN+IG1zZ2lkICJGb3JnZXQgYWJvdXQgdW5pbnN0YWxsZWQgdW5hdmFpbGFibGUgcGFja2FnZXMuIgorI34gbXNnc3RyICIiCisjfiAiU2thc293YW5pZSBpbmZvcm1hY2ppIG8gd3N6eXN0a2ljaCBuaWV6YWluc3RhbG93YW55Y2ggaSBuaWVkb3N0xJlwbnljaCAiCisjfiAicGFraWV0YWNoLiIKKworI34gbXNnaWQgImluc3RhbGwtaW5mbyIKKyN+IG1zZ3N0ciAiaW5zdGFsbC1pbmZvIgorCisjfiBtc2dpZCAiaW5zdGFsbC1pbmZvIC0gY3JlYXRlIG9yIHVwZGF0ZSBlbnRyeSBpbiBJbmZvIGRpciBmaWxlIgorI34gbXNnc3RyICJpbnN0YWxsLWluZm8gLSB0d29yenkgbHViIGFrdHVhbGl6dWplIHdwaXMgdyBrYXRhbG9ndSBJbmZvIgorCisjfiBtc2dpZCAiIgorI34gIkI8aW5zdGFsbC1pbmZvPiBbQjwtLXZlcnNpb24+XSBbQjwtLWhlbHA+XSBbQjwtLWRlYnVnPl0gW0I8LS0iCisjfiAibWF4d2lkdGg9Pkk8bm5uPl0gW0I8LS1zZWN0aW9uID5JPHJlZ2V4cD5CPCA+STx0aXRsZT5dIFtCPC0tIgorI34gImluZm9kaXI9Pkk8eHh4Pl0gW0I8LS1hbGlnbj0+STxubm4+XSBbQjwtLXF1aWV0Pl0gW0I8LS1tZW51ZW50cnk9Pkk8eHh4Pl0gIgorI34gIltCPC0tZGVzY3JpcHRpb249Pkk8eHh4Pl0gW0I8LS1yZW1vdmU+fEI8LS1yZW1vdmUtZXhhY3RseT5dIFtCPC0tPl0gIgorI34gIkk8ZmlsZW5hbWU+IgorI34gbXNnc3RyICIiCisjfiAiQjxpbnN0YWxsLWluZm8+IFtCPC0tdmVyc2lvbj5dIFtCPC0taGVscD5dIFtCPC0tZGVidWc+XSBbQjwtLSIKKyN+ICJtYXh3aWR0aD0+STxubm4+XSBbQjwtLXNlY3Rpb24gPkk8d3lyYcW8X3JlZ3VsYXJuZT5CPCA+STx0eXR1xYI+XSBbQjwtLSIKKyN+ICJpbmZvZGlyPT5JPHh4eD5dIFtCPC0tYWxpZ249Pkk8bm5uPl0gW0I8LS1xdWlldD5dIFtCPC0tbWVudWVudHJ5PT5JPHh4eD5dICIKKyN+ICJbQjwtLWRlc2NyaXB0aW9uPT5JPHh4eD5dIFtCPC0tcmVtb3ZlPnxCPC0tcmVtb3ZlLWV4YWN0bHk+XSBbQjwtLT5dICIKKyN+ICJJPG5hendhX3BsaWt1PiIKKworI34gbXNnaWQgIiIKKyN+ICJCPGluc3RhbGwtaW5mbz4gY3JlYXRlcywgdXBkYXRlcyBvciByZW1vdmVzIGVudHJpZXMgaW4gdGhlIEluZm8gQjxkaXI+ICIKKyN+ICJmaWxlLiBXaGVuIHVwZGF0aW5nIG9yIGNyZWF0aW5nIGVudHJpZXMsIGlmIG5vIGRlc2NyaXB0aW9uIGlzIHNwZWNpZmllZCAiCisjfiAib24gdGhlIGNvbW1hbmQgbGluZSBvciBpbiB0aGUgSW5mbyBmaWxlLCBpdCBhdHRlbXB0cyB0byBndWVzcyBhICIKKyN+ICJkZXNjcmlwdGlvbiBmcm9tIHRoZSBjb250ZW50cyBvZiB0aGUgZmlsZS4iCisjfiBtc2dzdHIgIiIKKyN+ICJCPGluc3RhbGwtaW5mbz4gdHdvcnp5LCBha3R1YWxpenVqZSBpIHVzdXdhIHdwaXN5IHcga2F0YWxvZ3UgSW5mbywgY3p5bGkgIgorI34gInBsaWt1IEI8ZGlyPi4gUG9kY3phcyBha3R1YWxpem93YW5pYSBsdWIgdHdvcnplbmlhIHdwaXPDs3csIGplxbxlbGkgbmllICIKKyN+ICJwb2Rhbm8gb3Bpc3UgYW5pIHcgbGluaWkgcG9sZWNlxYQsIGFuaSB3IHBsaWt1IEluZm8sIHBvZGVqbW93YW5hIGplc3QgIgorI34gInByw7NiYSB6Z2FkbmnEmWNpYSBvcGlzdSBuYSBwb2RzdGF3aWUgemF3YXJ0b8WbY2kgcGxpa3UuIgorCisjfiBtc2dpZCAiIgorI34gIlNlZSB0aGUgZGVzY3JpcHRpb24gb2YgdGhlIEI8LS1zZWN0aW9uPiBvcHRpb24gZm9yIGRldGFpbHMgb2Ygd2hlcmUgdGhlICIKKyN+ICJlbnRyeSB3aWxsIGJlIHBsYWNlZCBhbmQgYSBkZXNjcmlwdGlvbiBvZiB0aGUgZXhwZWN0ZWQgZm9ybWF0IG9mIHRoZSAiCisjfiAiQjxkaXI+IGZpbGUuIgorI34gbXNnc3RyICIiCisjfiAiVyBvcGlzaWUgb3BjamkgQjwtLXNlY3Rpb24+IG1vxbxuYSB6bmFsZcW6xIcgc3pjemVnw7PFgnkgZG90eWN6xIVjZSBtaWVqc2NhLCB3ICIKKyN+ICJrdMOzcnltIHpvc3RhbmllIHVtaWVzemN6b255IHdwaXMgb3JheiBvcGlzIG9jemVraXdhbmVnbyBmb3JtYXR1IHBsaWt1ICIKKyN+ICJCPGRpcj4uIgorCisjfiBtc2dpZCAiQjxbLS1dID5JPGZpbGVuYW1lPiIKKyN+IG1zZ3N0ciAiQjxbLS1dID5JPG5hendhIHBsaWt1PiIKKworI34gbXNnaWQgIiIKKyN+ICJHaXZlcyB0aGUgZmlsZW5hbWUgb2YgdGhlIEluZm8gZmlsZSB3aG9zZSBtZW51IGVudHJ5IGlzIHRvIGJlIGNyZWF0ZWQsICIKKyN+ICJ1cGRhdGVkIG9yIHJlbW92ZWQuIElmIEI8LS1yZW1vdmUtZXhhY3RseT4gaXMgc3BlY2lmaWVkLCB0aGVuIEk8ZmlsZW5hbWU+ICIKKyN+ICJzaG91bGQgYmUgdGhlIGV4YWN0IGVudHJ5IG5hbWUgdG8gYmUgcmVtb3ZlZCAoZS5nLiBcImVtYWNzLTIwL2VtYWNzXCIgb3IgIgorI34gIlwiZ2NjXCIpLCBvdGhlcndpc2UgdGhlIGJhc2VuYW1lIG9mIHRoaXMgZmlsZW5hbWUgaXMgdXNlZCBhcyB0aGUgcmVmZXJlbnQgIgorI34gIm9mIHRoZSBtZW51IGVudHJ5IHdoaWNoIGlzIGNyZWF0ZWQsIHVubGVzcyB0aGVyZSdzIGFuIG92ZXJyaWRpbmcgU1RBUlQtIgorI34gIklORk8tRElSIGVudHJ5IGluc2lkZSB0aGUgZ2l2ZW4gZmlsZS4gVGhpcyBmaWxlIG11c3QgdGhlcmVmb3JlIGV4aXN0IChvciAiCisjfiAiYmUgYWJvdXQgdG8gYmUgaW5zdGFsbGVkLCBvciBoYXZlIHByZXZpb3VzbHkgZXhpc3RlZCB3aGVuIHJlbW92aW5nIGFuICIKKyN+ICJlbnRyeSkgaW4gdGhlIHNhbWUgZGlyZWN0b3J5IGFzIHRoZSBCPGRpcj4gZmlsZSAoc2VlIHRoZSBCPC0taW5mb2Rpcj4gIgorI34gIm9wdGlvbikuIgorI34gbXNnc3RyICIiCisjfiAiT2tyZcWbbGEgbmF6d8SZIHBsaWt1IEluZm8sIGRsYSBrdMOzcmVnbyBtYSB6b3N0YcSHIHV0d29yem9ueSwgemFrdHVhbGl6b3dhbnkgIgorI34gImx1YiB1c3VuacSZdHkgd3BpcyB3IG1lbnUuIEplxZtsaSBwb2Rhbm8gQjwtLXJlbW92ZS1leGFjdGx5Piwgd3RlZHkgIgorI34gIkk8bmF6d2FfcGxpa3U+IHBvd2lubmEgemF3aWVyYcSHIGRva8WCYWRuxIUgbmF6d8SZIHdwaXN1IHcgbWVudSBkbyB1c3VuacSZY2lhICIKKyN+ICIoamFrIG5wLiBcImVtYWNzLTIwL2VtYWNzXCIgbHViIFwiZ2NjXCIpLiBXIHByemVjaXdueW0gd3lwYWRrdSBiYXpvd2EgIgorI34gIm5hendhIHRlZ28gcGxpa3UgamVzdCB1xbx5d2FuYSBqYWtvIG9kbmllc2llbmllIGRvIHdwaXN1IHcgbWVudSwga3TDs3J5ICIKKyN+ICJixJlkemllIHR3b3J6b255LCBjaHliYSDFvGUgdyBwb2RhbnltIHBsaWt1IHpuYWpkdWplIHNpxJkgbmFkcGlzdWrEhWN5IHdwaXMgIgorI34gIlNUQVJULUlORk8tRElSLiBUYWtpIHBsaWsgbXVzaSB3dGVkeSBpc3RuaWXEhyAobHViIHBvd2luaWVuIGJ5xIcgIgorI34gImluc3RhbG93YW55LCBsdWIgcG93aW5pZW4ganXFvCBpc3RuaWXEhyBwb2RjemFzIHVzdXdhbmlhIHdwaXN1KSB3IHR5bSBzYW15bSAiCisjfiAia2F0YWxvZ3UgY28gcGxpayBCPGRpcj4gKHByb3N6xJkgc3ByYXdkemnEhyBvcGNqxJkgQjwtLWluZm9kaXI+KS4iCisKKyN+IG1zZ2lkICIiCisjfiAiSWYgSTxmaWxlbmFtZT4gZW5kcyBpbiBCPC5nej4sIGl0IGlzIHRha2VuIHRvIHJlZmVyIHRvIGEgZmlsZSBjb21wcmVzc2VkICIKKyN+ICJ3aXRoIEI8Z3ppcD47IGlmIGl0IGRvZXNuJ3QgZXhpc3QsIGJ1dCBhIGNvcnJlc3BvbmRpbmcgSTxmaWxlbmFtZT5CPC5nej4gIgorI34gImRvZXMsIHRoZSBsYXR0ZXIgaXMgdXNlZCBpbnN0ZWFkLiIKKyN+IG1zZ3N0ciAiIgorI34gIkplxbxlbGkgSTxuYXp3YV9wbGlrdT4ga2/FhGN6eSBzacSZIHJvenN6ZXJ6ZW5pZW0gQjwuZ3o+LCB0byBqZXN0IHRyYWt0b3dhbmEgIgorI34gImpha28gb2R3b8WCYW5pZSBkbyBwbGlrdSBzcGFrb3dhbmVnbyBwcm9ncmFtZW0gQjxnemlwPi4gSmXFm2xpIHBsaWsgIgorI34gIkk8bmF6d2FfcGxpa3U+IG5pZSBpc3RuaWVqZSwgdG8gdcW8eXdhbnkgamVzdCBwbGlrIEk8bmF6d2FfcGxpa3U+QjwuZ3o+LCBvICIKKyN+ICJpbGUgdGFrb3d5IGlzdG5pZWplLiIKKworI34gbXNnaWQgIiIKKyN+ICJXaGVuIGFkZGluZyBvciB1cGRhdGluZyBlbnRyaWVzLCB0aGUgZmlsZSBtdXN0IGV4aXN0IGF0IHRoZSBwYXRoICIKKyN+ICJzcGVjaWZpZWQgKHBvc3NpYmx5IHdpdGggYW4gYWRkaXRpb25hbCBCPC5nej4gZXh0ZW5zaW9uKS4iCisjfiBtc2dzdHIgIiIKKyN+ICJQb2RjemFzIGRvZGF3YW5pYSBsdWIgYWt0dWFsaXpvd2FuaWEgd3Bpc8OzdyBwbGlrIHRlbiBtdXNpIGlzdG5pZcSHIHcgIgorI34gInBvZGFuZWogxZtjaWXFvGNlIChiecSHIG1vxbxlIHogZG9kYXRrb3d5bSByb3pzemVyemVuaWVtIEI8Lmd6PikuIgorCisjfiBtc2dpZCAiQjwtLXJlbW92ZT4iCisjfiBtc2dzdHIgIkI8LS1yZW1vdmU+IgorCisjfiBtc2dpZCAiIgorI34gIlNwZWNpZmllcyB0aGF0IHRoZSBlbnRyeSBmb3IgdGhlIGZpbGUgSTxmaWxlbmFtZT4gaXMgdG8gYmUgcmVtb3ZlZDsgYnkgIgorI34gImRlZmF1bHQgZW50cmllcyBhcmUgY3JlYXRlZCBvciB1cGRhdGVkLiIKKyN+IG1zZ3N0ciAiIgorI34gIk9rcmXFm2xhLCDFvGUgd3BpcyBkbGEgcGxpa3UgSTxuYXp3YV9wbGlrdT4gYsSZZHppZSB1c3VuacSZdHk7IGRvbXnFm2xuaWUgIgorI34gIndwaXN5IHPEhSB0d29yem9uZSBsdWIgYWt0dWFsaXpvd2FuZS4iCisKKyN+IG1zZ2lkICIiCisjfiAiSWYgdGhlIHJlbW92YWwgcmVzdWx0cyBpbiBhIHNlY3Rpb24gYmVjb21pbmcgZW1wdHksIHRoZSBzZWN0aW9uIGhlYWRpbmcgIgorI34gIihhbmQgdGhlIHNwYXJlIGJsYW5rIGxpbmUpIHdpbGwgYmUgcmVtb3ZlZCBhcyB3ZWxsLCB1bmxlc3MgdGhpcyBpcyB0aGUgIgorI34gImxhc3Qgc2VjdGlvbiBpbiB0aGUgZmlsZSBvciBCPC0ta2VlcC1vbGQ+IGlzIHNwZWNpZmllZC4gU2VlIHRoZSBCPC0tIgorI34gInNlY3Rpb24+IG9wdGlvbiBmb3IgZGV0YWlscyBhYm91dCB0aGUgZXhwZWN0ZWQgZm9ybWF0IG9mIHRoZSBCPGRpcj4gZmlsZS4iCisjfiBtc2dzdHIgIiIKKyN+ICJKZcWbbGkgdXN1bmnEmWNpZSBwcm93YWR6aSBkbyB0ZWdvLCDFvGUgc2VrY2phIHpvc3RhxYJhYnkgcHVzdGEsIG5hZ8WCw7N3ZWsgIgorI34gInNla2NqaSAob3JheiB6YXBhc293YSBwdXN0YSBsaW5pYSkgdGFrxbxlIGLEmWTEhSB1c3VuacSZdGUsIGNoeWJhIMW8ZSBqZXN0IHRvICIKKyN+ICJvc3RhdG5pYSBzZWtjamEgdyBwbGlrdSBsdWIgcG9kYW5vIG9wY2rEmSBCPC0ta2VlcC1vbGQ+LiBQcm9zesSZIHNwcmF3ZHppxIcgIgorI34gIm9wY2rEmSBCPC0tc2VjdGlvbj4gdyBjZWx1IHV6eXNrYW5pYSBpbmZvcm1hY2ppIG5hIHRlbWF0IHNwb2R6aWV3YW5lZ28gIgorI34gImZvcm1hdHUgcGxpa3UgQjxkaXI+LiIKKworI34gbXNnaWQgIiIKKyN+ICJJZiB0aGVyZSBhcmUgc2V2ZXJhbCBzdWl0YWJsZSBlbnRyaWVzIGluIHRoZSBCPGRpcj4gZmlsZSwgb25seSB0aG9zZSBpbiAiCisjfiAidGhlIGZpcnN0IG1hdGNoaW5nIGNvbnRpZ3VvdXMgZ3JvdXAgd2lsbCBiZSByZW1vdmVkIGFuZCB0aGUgb3RoZXJzICIKKyN+ICJzaWxlbnRseSBpZ25vcmVkLiIKKyN+IG1zZ3N0ciAiIgorI34gIkplxZtsaSB3IHBsaWt1IEI8ZGlyPiB6bmFqZHVqZSBzacSZIGtpbGthIG9kcG93aWVkbmljaCB3cGlzw7N3LCBixJlkxIUgIgorI34gInVzdW5pxJl0ZSB0eWxrbyB3cGlzeSB6IHBpZXJ3c3plaiBjacSFZ8WCZWogcGFzdWrEhWNlaiBncnVweSwgemHFmyBwb3pvc3RhxYJlICIKKyN+ICJ6b3N0YW7EhSB6aWdub3Jvd2FuZSBiZXogxbxhZG5lZ28gb3N0cnplxbxlbmlhLiIKKworI34gbXNnaWQgIiIKKyN+ICJJdCBpcyBub3QgYW4gZXJyb3IgZm9yIG5vIHN1aXRhYmxlIGVudHJ5IHRvIGJlIGZvdW5kLCB0aG91Z2ggQjxpbnN0YWxsLSIKKyN+ICJpbmZvPiB3aWxsIGlzc3VlIGEgd2FybmluZyB1bmxlc3MgdGhlIEI8LS1xdWlldD4gb3B0aW9uIHdhcyBzcGVjaWZpZWQuIgorI34gbXNnc3RyICIiCisjfiAiTmllIG9kbmFsZXppZW5pZSBvZHBvd2llZG5pZWdvIHdwaXN1IG5pZSBqZXN0IGLFgsSZZGVtLCBqZWRuYWsgQjxpbnN0YWxsLSIKKyN+ICJpbmZvPiB3ecWbbGUgb3N0cnplxbxlbmllLCBjaHliYSDFvGUgcG9kYW5vIG9wY2rEmSBCPC0tcXVpZXQ+LiIKKworI34gbXNnaWQgIiIKKyN+ICJXaGVuIEI8LS1yZW1vdmU+IGlzIHNwZWNpZmllZCB0aGUgQjwtLW1heHdpZHRoPiwgQjwtLWFsaWduPiBhbmQgQjwtLSIKKyN+ICJjYWxpZ24+IGZvcm1hdHRpbmcgb3B0aW9ucyBhcmUgc2lsZW50bHkgaWdub3JlZC4iCisjfiBtc2dzdHIgIiIKKyN+ICJKZcW8ZWxpIHBvZGFubyBCPC0tcmVtb3ZlPiwgdG8gb3BjamUgZm9ybWF0b3dhbmlhIEI8LS1tYXh3aWR0aD4sIEI8LS0iCisjfiAiYWxpZ24+IG9yYXogQjwtLWNhbGlnbj4gem9zdGFuxIUgemlnbm9yb3dhbmUgYmV6IMW8YWRuZWdvIG9zdHJ6ZcW8ZW5pYS4iCisKKyN+IG1zZ2lkICJCPC0tcmVtb3ZlLWV4YWN0bHk+IgorI34gbXNnc3RyICJCPC0tcmVtb3ZlLWV4YWN0bHk+IgorCisjfiBtc2dpZCAiIgorI34gIlRoaXMgb3B0aW9uIGlzIGVzc2VudGlhbGx5IHRoZSBzYW1lIGFzIEI8LS1yZW1vdmU+IGV4Y2VwdCB0aGF0ICIKKyN+ICJJPGZpbGVuYW1lPiBpcyB0YWtlbiBhcyB0aGUgZXhhY3QgZW50cnkgdG8gYmUgcmVtb3ZlZCwgcmF0aGVyIHRoYW4gYXMgdGhlICIKKyN+ICJuYW1lIG9mIGFuIGV4aXN0aW5nIGZpbGUuIFRoaXMgY2FuIGJlIGltcG9ydGFudCB3aGVuIHRyeWluZyB0byByZW1vdmUgIgorI34gImVudHJpZXMgdGhhdCByZWZlciB0byBpbmZvIGZpbGVzIGluIHN1YmRpcmVjdG9yaWVzIChlLmcuIFwiZW1hY3MtMjAvZW1hY3MiCisjfiAiXCIpIGJlY2F1c2UgQjwtLXJlbW92ZT4gd2lsbCBvcGVyYXRlIG9uIHRoZSBiYXNlbmFtZSBvZiB0aGUgZ2l2ZW4gIgorI34gIkk8ZmlsZW5hbWU+IHJhdGhlciB0aGFuIHRoZSBleGFjdCBuYW1lIGdpdmVuLiAoaS5lLiAgQjwtLXJlbW92ZT4gIgorI34gIlwiZW1hY3MtMjAvZW1hY3NcIiB3b3VsZCBjYXVzZSBCPGluc3RhbGwtaW5mbz4gdG8gbG9vayBmb3IgXCJlbWFjc1wiLCBub3QgIgorI34gIlwiZW1hY3MtMjAvZW1hY3NcIikuIgorI34gbXNnc3RyICIiCisjfiAiVGEgb3BjamEgamVzdCBwcmFrdHljem5pZSB0YWthIHNhbWEgamFrIEI8LS1yZW1vdmU+IHogdMSFIHLDs8W8bmljxIUsIMW8ZSAiCisjfiAid3RlZHkgSTxuYXp3YV9wbGlrdT4gcG93aW5uYSB6YXdpZXJhxIcgZG9rxYJhZG7EhSBuYXp3xJkgd3Bpc3UgdyBtZW51IGRvICIKKyN+ICJ1c3VuacSZY2lhLCB6YW1pYXN0IG5hend5IGlzdG5pZWrEhWNlZ28gcGxpa3UuIE1vxbxlIGJ5xIcgdG8gaXN0b3RuZSBwb2RjemFzICIKKyN+ICJwcsOzYnkgdXN1bmnEmWNpYSB3cGlzw7N3IG9kbm9zesSFY3ljaCBzacSZIGRvIHBsaWvDs3cgdyBwb2RrYXRhbG9nYWNoIChucC4gIgorI34gIlwiZW1hY3MtMjAvZW1hY3NcIiksIHBvbmlld2HFvCBCPC0tcmVtb3ZlPiBixJlkemllIGtvcnp5c3RhxIcgeiBiYXpvd2VqICIKKyN+ICJuYXp3eSBwb2RhbmVqIEk8bmF6d3lfcGxpa3U+IHphbWlhc3QgZG9rxYJhZG5laiBuYXp3eS4gKG5wLiBCPC0tcmVtb3ZlPiAiCisjfiAiXCJlbWFjcy0yMC9lbWFjc1wiIHNwb3dvZG93YcWCYnksIMW8ZSBCPGluc3RhbGwtaW5mbz4gc3p1a2HFgm9ieSBcImVtYWNzXCIsICIKKyN+ICJhIG5pZSBcImVtYWNzLTIwL2VtYWNzXCIpLiIKKworI34gbXNnaWQgIkI8LS1zZWN0aW9uID5JPHJlZ2V4cCB0aXRsZT4iCisjfiBtc2dzdHIgIkI8LS1zZWN0aW9uID5JPHd5cmHFvF9yZWd1bGFybmUgdHl0dcWCPiIKKworI34gbXNnaWQgIiIKKyN+ICJTcGVjaWZpZXMgdGhhdCBpZiBhIG5ldyBlbnRyeSBpcyB0byBiZSBtYWRlLCBpdCBzaG91bGQgYmUgcGxhY2VkIGluIGEgIgorI34gInNlY3Rpb24gb2YgdGhlIEI8ZGlyPiBmaWxlIHdob3NlIHRpdGxlIG1hdGNoZXMgSTxyZWdleHA+LiAgSWYgbm8gc3VjaCAiCisjfiAic2VjdGlvbiBleGlzdHMsIG9uZSB3aWxsIGJlIGNyZWF0ZWQgYXMgdGhlIHNlY29uZCB0byBsYXN0IHNlY3Rpb24gaW4gdGhlICIKKyN+ICJmaWxlIChzZWUgYmVsb3cpIHdpdGggdGl0bGUgSTx0aXRsZT4uICBBIHNlY3Rpb24gaXMgYSBwYXJ0IG9mIHRoZSBCPGRpcj4gIgorI34gIm1lbnUgZGVsaW1pdGVkIGJ5IGJsYW5rIGxpbmVzOyB0aGUgZmlyc3QgbGluZSBpcyBhc3N1bWVkIHRvIGJlIHRoZSB0aXRsZS4iCisjfiBtc2dzdHIgIiIKKyN+ICJPa3JlxZtsYSwgxbxlIGplxZtsaSBtYSBiecSHIHN0d29yem9ueSBub3d5IHdwaXMsIHBvd2luaWVuIGJ5xIcgdW1pZXN6Y3pvbnkgdyAiCisjfiAic2VrY2ppIHcgcGxpa3UgQjxkaXI+LCBrdMOzcmVqIHR5dHXFgiBwYXN1amUgZG8gSTx3eXJhxbxfcmVndWxhcm5lZ28+LiBKZcWbbGkgIgorI34gInRha2Egc2VrY2phIG5pZSBpc3RuaWVqZSwgem9zdGFuaWUgdXR3b3J6b25hIGpha28gcHJ6ZWRvc3RhdG5pYSBzZWtjamEgdyAiCisjfiAicGxpa3UgKHBhdHJ6IG5pxbxlaikgeiB0eXR1xYJlbSBJPHR5dHXFgj4uIFNla2NqYSBqZXN0IGN6xJnFm2NpxIUgbWVudSBCPGRpcj4gIgorI34gIm90b2N6b27EhSBwdXN0eW1pIGxpbmlhbWk7IHBpZXJ3c3phIGxpbmlhIHNla2NqaSB1d2HFvGFuYSBqZXN0IHphIGplaiB0eXR1xYIuIgorCisjfiBtc2dpZCAiIgorI34gIklmIGEgbmV3IGVudHJ5IGlzIHRvIGJlIGNyZWF0ZWQsIEI8aW5zdGFsbC1pbmZvPiB3aWxsIGF0dGVtcHQgdG8gaW5zZXJ0ICIKKyN+ICJpdCB3aXRoaW4gdGhlIHNlY3Rpb24gaW4gYWxwaGFiZXRpYyBvcmRlci4gSWYgdGhlIGVudHJpZXMgaW4gdGhlIHNlY3Rpb24gIgorI34gImFyZW4ndCBhbHJlYWR5IHNvcnRlZCwgdGhlIG5ldyBsb2NhdGlvbiB3aXRoaW4gdGhlIHNlY3Rpb24gd2lsbCBiZSAiCisjfiAidW5wcmVkaWN0YWJsZS4gVGhlIG9yZGVyIG9mIGV4aXN0aW5nIGVudHJpZXMgd2lsbCBub3QgYmUgY2hhbmdlZC4iCisjfiBtc2dzdHIgIiIKKyN+ICJKZcWbbGkgbWEgYnnEhyB1dHdvcnpvbnkgbm93eSB3cGlzLCBCPGluc3RhbGwtaW5mbz4gYsSZZHppZSBzdGFyYcSHIHNpxJkgIgorI34gIndzdGF3acSHIGdvIHcgcmFtYWNoIHNla2NqaSB3IHBvcnrEhWRrdSBhbGZhYmV0eWN6bnltLiBKZcWbbGkgd3Bpc3kgdyBzZWtjamkgIgorI34gIm5pZSBzxIUgd3N0xJlwbmllIHBvc29ydG93YW5lLCBwb8WCb8W8ZW5pZSB3cGlzdSB3IHNla2NqaSBixJlkemllIG5pZSBkbyAiCisjfiAicHJ6ZXdpZHplbmlhLiBLb2xlam5vxZvEhyBpc3RuaWVqxIVjeWNoIHdwaXPDs3cgbmllIGLEmWR6aWUgem1pZW5pYW5hLiIKKworI34gbXNnaWQgIiIKKyN+ICJJZiB0aGUgQjwtLXNlY3Rpb24+IG9wdGlvbiBpcyBub3Qgc3BlY2lmaWVkLCBCPGluc3RhbGwtaW5mbz4gd2lsbCBsb29rICIKKyN+ICJmb3IgYSB0aXRsZSBpbiB0aGUgSW5mbyBmaWxlIGl0c2VsZiBieSBsb29raW5nIGZvciBhbiBlbnRyeSBvZiB0aGUgZm9ybSIKKyN+IG1zZ3N0ciAiIgorI34gIkplxZtsaSBuaWUgem9zdGFuaWUgcG9kYW5hIG9wY2phIEI8LS1zZWN0aW9uPiwgQjxpbnN0YWxsLWluZm8+IGLEmWR6aWUgIgorI34gInN6dWthxIcgdHl0dcWCdSB3IHNhbXltIHBsaWt1IEluZm8sIHBvc3p1a3VqxIVjIHdwaXN1IHBvc3RhY2kiCisKKyN+IG1zZ2lkICJCPElORk8tRElSLVNFQ1RJT04+STwgdGl0bGU+IgorI34gbXNnc3RyICJCPElORk8tRElSLVNFQ1RJT04+STwgdHl0dcWCPiIKKworI34gbXNnaWQgIiIKKyN+ICJJZiBubyBzZWN0aW9uIHRpdGxlIGlzIGZvdW5kLCB0aGUgZGVmYXVsdCBpcyB0byBhcHBlbmQgbmV3IGVudHJpZXMgdG8gdGhlICIKKyN+ICJlbmQgb2YgdGhlIGZpbGUuIFRoZSBsYXN0IHNlY3Rpb24gKGV2ZW4gaWYgaXQgb25seSBjb25zaXN0cyBvZiB0aGUgdGl0bGUgIgorI34gImxpbmUpIHNob3VsZCBhbHdheXMgZXhpc3QgdG8gZW5zdXJlIHRoYXQgbmV3IHNlY3Rpb25zIGFyZSBjcmVhdGVkIGluIHRoZSAiCisjfiAicmlnaHQgcGxhY2UuIFRoZSBmaW5hbCBzZWN0aW9uIHNob3VsZCBiZSB0aXRsZWQgdG8gcmVmbGVjdCB0aGUgZmFjdCB0aGF0ICIKKyN+ICJJbmZvIGZpbGVzIHdpdGggbm8gYmV0dGVyIHNwZWNpZmllZCBsb2NhdGlvbiBhcmUgYXBwZW5kZWQgdG8gaXQuIgorI34gbXNnc3RyICIiCisjfiAiSmXFm2xpIHR5dHXFgiBzZWtjamkgbmllIHpvc3RhbmllIHpuYWxlemlvbnksIGRvbXnFm2xueW0gemFjaG93YW5pZW0gamVzdCAiCisjfiAiZG9kYW5pZSBub3d5Y2ggd3Bpc8OzdyBuYSBrb8WEY3UgcGxpa3UuIE9zdGF0bmlhIHNla2NqYSAobmF3ZXQgamXFm2xpIHNrxYJhZGEgIgorI34gInNpxJkgdHlsa28geiBsaW5paSB6IHR5dHXFgmVtKSBwb3dpbm5hIHphd3N6ZSBpc3RuaWXEhyBhYnkgemFwZXduacSHLCDFvGUgbm93ZSAiCisjfiAic2VrY2plIGLEmWTEhSB0d29yem9uZSB3ZSB3xYJhxZtjaXd5bSBtaWVqc2N1LiBPc3RhdG5pYSBzZWtjamEgcG93aW5uYSBiecSHICIKKyN+ICJ6YXR5dHXFgm93YW5hIHcgc3Bvc8OzYiBvZHp3aWVyY2llZGxhasSFY3kgZmFrdCwgxbxlIGLEmWTEhSBkbyBuaWVqIGRvxYLEhWN6YW5lICIKKyN+ICJwbGlraSBJbmZvLCBrdMOzcmUgbmllIG1hasSFIG9rcmXFm2xvbmVnbyBsZXBzemVnbyBwb8WCb8W8ZW5pYS4iCisKKyN+IG1zZ2lkICIiCisjfiAiSWYgdGhlcmUgaXMgYWxyZWFkeSBhbiBlbnRyeSBmb3IgdGhlIEluZm8gZmlsZSBiZWluZyBpbnN0YWxsZWQsIGl0IGlzICIKKyN+ICJyZXBsYWNlZCBpbiBzaXR1IHdpdGggdGhlIG5ldyBlbnRyeS4iCisjfiBtc2dzdHIgIiIKKyN+ICJKZcWbbGkgd3BpcyBkbGEgaW5zdGFsb3dhbmVnbyBwbGlrdSBJbmZvIGp1xbwgaXN0bmllamUsIGplc3QgemFzdMSZcG93YW55IHcgIgorI34gIm1pZWpzY3UgcHJ6ZXogbm93eSB3cGlzLiIKKworI34gbXNnaWQgIiIKKyN+ICJJZiBhIHNlY3Rpb24gaXMgc3BlY2lmaWVkIHdoZW4gcmVtb3ZpbmcgYW4gZW50cnksIHRoZSBzZWN0aW9uIGlzIGlnbm9yZWQgIgorI34gImFuZCBhIHdhcm5pbmcgaXMgaXNzdWVkLiIKKyN+IG1zZ3N0ciAiIgorI34gIkplxZtsaSBwb2RjemFzIHVzdXdhbmlhIHdwaXN1IHBvZGFubyBzZWtjasSZLCB0byBixJlkemllIG9uYSB6aWdub3Jvd2FuYSAiCisjfiAib3JheiB6b3N0YW5pZSB3eXBpc2FuZSBvZHBvd2llZG5pZSBvc3RyemXFvGVuaWUuIgorCisjfiBtc2dpZCAiIgorI34gIklmIGEgc2VjdGlvbiBpcyByZXF1ZXN0ZWQgd2hlbiBhZGRpbmcgYW4gZW50cnksIGJ1dCB0aGUgZmlsZSBjb250YWlucyBubyAiCisjfiAic2VjdGlvbiBoZWFkaW5ncyBhdCBhbGwsIHRoZW4gQjxpbnN0YWxsLWluZm8+IHdpbGwgY3JlYXRlIGJvdGggdGhlICIKKyN+ICJyZXF1ZXN0ZWQgc2VjdGlvbiBhbmQgYSBNaXNjZWxsYW5lb3VzIHNlY3Rpb24gYXQgdGhlIGVuZCBvZiB0aGUgZmlsZS4iCisjfiBtc2dzdHIgIiIKKyN+ICJKZcWbbGkgb2tyZcWbbG9ubyBzZWtjasSZIHBvZGN6YXMgZG9kYXdhbmlhIHdwaXN1LCBhbGUgcGxpayBuaWUgemF3aWVyYSAiCisjfiAid2NhbGUgbmFnxYLDs3drw7N3IHNla2NqaSwgQjxpbnN0YWxsLWluZm8+IHV0d29yenkgemFyw7N3bm8gxbzEhWRhbsSFIHNla2NqxJkgamFrICIKKyN+ICJpIHNla2NqxJkgTWlzY2VsbGFuZW91cyBuYSBrb8WEY3UgcGxpa3UuIgorCisjfiBtc2dpZCAiQjwtLWluZm9kaXI9Pkk8aW5mb2Rpcj4iCisjfiBtc2dzdHIgIkI8LS1pbmZvZGlyPT5JPGthdGFsb2dfaW5mbz4iCisKKyN+IG1zZ2lkICIiCisjfiAiU3BlY2lmaWVzIHRoYXQgdGhlIEI8ZGlyPiBmaWxlIGlzLCBhbmQgdGhlIGluc3RhbGxlZCBjb3B5IG9mIHRoZSBuZXcgSW5mbyAiCisjfiAiZmlsZSB3YXMsIGlzIG9yIHdpbGwgYmUgbG9jYXRlZCBpbiBJPGluZm9kaXI+LiAgVGhlIGRlZmF1bHQgaXMgQjwvdXNyLyIKKyN+ICJzaGFyZS9pbmZvLz4uIgorI34gbXNnc3RyICIiCisjfiAiT2tyZcWbbGEsIMW8ZSBwbGlrIEI8ZGlyPiBqZXN0LCBhIHphaW5zdGFsb3dhbmEga29waWEgbm93ZWdvIHBsaWt1IEluZm8gIgorI34gImJ5xYJhLCBqZXN0IGx1YiBixJlkemllIHpsb2thbGl6b3dhbmEgdyBJPGthdGFsb2d1X2luZm8+LiBEb215xZtsbmllIGplc3QgdG8gIgorI34gIkI8L3Vzci9zaGFyZS9pbmZvLz4uIgorCisjfiBtc2dpZCAiQjwtLWFsaWduPT5JPG5ubj5CPCBbZGVwcmVjYXRlZF0+IgorI34gbXNnc3RyICJCPC0tYWxpZ249Pkk8bm5uPkI8IFtwcnplc3RhcnphxYJlXT4iCisKKyN+IG1zZ2lkICIiCisjfiAiU3BlY2lmaWVzIHRoYXQgdGhlIGZpcnN0IGxpbmUgb2YgdGhlIGRlc2NyaXB0aW9uIHNob3VsZCBiZSBpbmRlbnRlZCBhdCAiCisjfiAibGVhc3QgSTxubm4+IGNoYXJhY3RlcnM7IGV4dHJhIHNwYWNlcyB3aWxsIGJlIGFkZGVkIGFzIHJlcXVpcmVkLiBJZiAiCisjfiAibmVjZXNzYXJ5IGJlY2F1c2Ugb2YgdGhlIGxlbmd0aCBvZiB0aGUgQjxkaXI+IG1lbnUgZW50cnkgZGV0YWlscywgaXQgbWF5ICIKKyN+ICJiZSBvZmZzZXQgbW9yZS4gVGhlIGRlZmF1bHQgaXMgMjcuIgorI34gbXNnc3RyICIiCisjfiAiT2tyZcWbbGEsIMW8ZSB3Y2nEmWNpZSBwaWVyd3N6ZWogbGluaWkgb3Bpc3UgcG93aW5ubyB3eW5vc2nEhyBjbyBuYWptbmllaiAiCisjfiAiSTxubm4+IHpuYWvDs3c7IGplxZtsaSBixJlkemllIHRvIHBvdHJ6ZWJuZSwgdG8gem9zdGFuxIUgZG9kYW5lIGRvZGF0a293ZSAiCisjfiAic3BhY2plLiBKZcWbbGkgYsSZZHppZSB0byBwb3RyemVibmUgeiBwb3dvZHUgZMWCdWdvxZtjaSBzemN6ZWfDs8WCw7N3IHdwaXN1ICIKKyN+ICJCPGRpcj4gdyBtZW51LCBtb8W8ZSBiecSHIGljaCBkb2RhbnljaCBuYXdldCB3acSZY2VqLiBEb215xZtsbsSFIHdhcnRvxZtjacSFICIKKyN+ICJqZXN0IDI3LiIKKworI34gbXNnaWQgIkI8LS1jYWxpZ249Pkk8bm5uPkI8IFtkZXByZWNhdGVkXT4iCisjfiBtc2dzdHIgIkI8LS1jYWxpZ249Pkk8bm5uPkI8IFtwcnplc3RhcnphxYJlXT4iCisKKyN+IG1zZ2lkICIiCisjfiAiU3BlY2lmaWVzIHRoYXQgdGhlIHNlY29uZCBhbmQgc3Vic2VxdWVudCBsaW5lcyBvZiB0aGUgZGVzY3JpcHRpb24gc2hvdWxkICIKKyN+ICJiZSBpbmRlbnRlZCBhdCBsZWFzdCBJPG5ubj4gY2hhcmFjdGVycy4gVGhlIGRlZmF1bHQgaXMgMjkuIgorI34gbXNnc3RyICIiCisjfiAiT2tyZcWbbGEsIMW8ZSB3Y2nEmWNpZSBkcnVnaWVqIGkga29sZWpueWNoIGxpbmlpIG9waXN1IHBvd2lubm8gd3lub3NpxIcgY28gIgorI34gIm5ham1uaWVqIEk8bm5uPiB6bmFrw7N3LiBEb215xZtsbmllIGplc3QgdG8gMjkuIgorCisjfiBtc2dpZCAiQjwtLW1heHdpZHRoPT5JPG5ubj5CPCBbZGVwcmVjYXRlZF0+IgorI34gbXNnc3RyICJCPC0tbWF4d2lkdGg9Pkk8bm5uPkI8IFtwcnplc3RhcnphxYJlXT4iCisKKyN+IG1zZ2lkICIiCisjfiAiU3BlY2lmaWVzIHRoYXQgdGhlIG1heGltdW0gd2lkdGggZm9yIHRoZSBJbmZvIGZpbGUgaXMgSTxubm4+LiAgVGhpcyBpcyAiCisjfiAidXNlZCB3aGVuIHdvcmQtd3JhcHBpbmcgdGhlIGRlc2NyaXB0aXZlIHRleHQuICBUaGUgZGVmYXVsdCBpcyA3OS4iCisjfiBtc2dzdHIgIiIKKyN+ICJPa3JlxZtsYSwgxbxlIG1ha3N5bWFsbmEgc3plcm9rb8WbxIcgcGxpa3UgSW5mbyB0byBJPG5ubj4uIEplc3QgdG8gdcW8eXdhbmUgIgorI34gInBvZGN6YXMgemF3aWphbmlhIHPFgsOzdyB0ZWtzdHUgb3Bpc3UuIERvbXnFm2xuaWUgamVzdCB0byA3OS4iCisKKyN+IG1zZ2lkICIiCisjfiAiUHJldmVudHMgdGhlIHVzdWFsIGRpc3BsYXkgb2YgdGhlIG5ldyBtZW51IGVudHJ5IGp1c3QgYmVmb3JlIGl0IGlzICIKKyN+ICJpbnNlcnRlZCBhbmQgb2YgdGhlIG1lc3NhZ2VzIGFubm91bmNpbmcgdGhlIHJlcGxhY2VtZW50IGFuZCByZW1vdmFsIG9mICIKKyN+ICJleGlzdGluZyBlbnRyaWVzIGFuZCB0aGUgY3JlYXRpb24gYW5kIGRlbGV0aW9uIG9mIHNlY3Rpb25zLiIKKyN+IG1zZ3N0ciAiIgorI34gIlphcG9iaWVnYSB0eXBvd2VtdSB3ecWbd2lldGxhbml1IG5vd2VnbyB3cGlzdSB3IG1lbnUgdHXFvCBwcnplZCBqZWdvICIKKyN+ICJ3c3Rhd2llbmllbSwga29tdW5pa2F0b20gb2fFgmFzemFqxIVjeW0gemFzdMSFcGllbmllIGkgdXN1bmnEmWNpZSAiCisjfiAiaXN0bmllasSFY3ljaCB3cGlzw7N3IG9yYXogdHdvcnplbmllIGkgdXN1d2FuaWUgc2VrY2ppLiIKKworI34gbXNnaWQgIkNhdXNlcyBCPGluc3RhbGwtaW5mbz4gdG8gZGlzcGxheSBpdHMgdXNhZ2UgaW5mb3JtYXRpb24gYW5kIGV4aXQuIgorI34gbXNnc3RyICIiCisjfiAiUG93b2R1amUsIMW8ZSBCPGluc3RhbGwtaW5mbz4gd3nFm3dpZXRsaSBpbmZvcm1hY2plIG8gdcW8eWNpdSBpIHpha2/FhGN6eSAiCisjfiAiZHppYcWCYW5pZS4iCisKKyMKKyN+IG1zZ2lkICIiCisjfiAiQ2F1c2VzIEI8aW5zdGFsbC1pbmZvPiB0byBkaXNwbGF5IGl0cyB2ZXJzaW9uIGFuZCBjb3B5cmlnaHQgaW5mb3JtYXRpb24gIgorI34gImFuZCBleGl0LiIKKyN+IG1zZ3N0ciAiIgorI34gIlBvd29kdWplLCDFvGUgQjxpbnN0YWxsLWluZm8+IHd5xZt3aWV0bGkgaW5mb3JtYWNqZSBvIHdlcnNqaSBpIHByYXdhY2ggIgorI34gImF1dG9yc2tpY2ggaSB6YWtvxYRjenkgZHppYcWCYW5pZS4iCisKKyN+IG1zZ2lkICIiCisjfiAiU3BlY2lmaWVzIHRoYXQgdGhlIGRlc2NyaXB0aW9uIHRvIHVzZSBhZnRlciB0aGUgbWVudSBlbnRyeSBpbiBuZXcgb3IgIgorI34gInVwZGF0ZWQgZW50cmllcyBiZSBJPHh4eD4uICBUaGUgZGVmYXVsdCBpcyB0byB1c2UgdGhlIHRoZSB2YWx1ZSBzcGVjaWZpZWQgIgorI34gImluIHRoZSBJbmZvIGZpbGUgaXRzZWxmOyB0aGlzIGlzIGZvdW5kIGJ5IHNlYXJjaGluZyBmb3IgYSBzZWN0aW9uIG9mIHRoZSAiCisjfiAiZm9ybSIKKyN+IG1zZ3N0ciAiIgorI34gIk9rcmXFm2xhLCDFvGUgb3Bpc2VtIHXFvHl3YW55bSB6YSB3cGlzZW0gdyBtZW51IGRsYSBub3d5Y2ggbHViICIKKyN+ICJha3R1YWxpem93YW55Y2ggd3Bpc8OzdyBtYSBiecSHIEk8eHh4Pi4gRG9tecWbbG5pZSB1xbx5d2FuYSBqZXN0IHdhcnRvxZvEhyAiCisjfiAib2tyZcWbbG9uYSB3IHNhbXltIHBsaWt1IEluZm8sIGplc3Qgb25hIHd5c3p1a2l3YW5hIHBvc3p1a3VqxIVjIHNla2NqaSAiCisjfiAicG9zdGFjaSIKKworI34gbXNnaWQgIkI8U1RBUlQtSU5GTy1ESVItRU5UUlk+IgorI34gbXNnc3RyICJCPFNUQVJULUlORk8tRElSLUVOVFJZPiIKKworI34gbXNnaWQgIkI8KiBBdXRvLVBHUDogKGF1dG8tcGdwKS4gUEdQIHVuZGVyIEdOVSBFbWFjcy4+IgorI34gbXNnc3RyICJCPCogQXV0by1QR1A6IChhdXRvLXBncCkuIFBHUCB3IEdOVSBFbWFjc2llLj4iCisKKyN+IG1zZ2lkICJCPEVORC1JTkZPLURJUi1FTlRSWT4iCisjfiBtc2dzdHIgIkI8RU5ELUlORk8tRElSLUVOVFJZPiIKKworI34gbXNnaWQgIiIKKyN+ICJJZiB0aGUgZW50cnkgZm91bmQgaW4gdGhlIEluZm8gZmlsZSBpdHNlbGYgZXh0ZW5kcyBhY3Jvc3Mgc2V2ZXJhbCBsaW5lcywgIgorI34gImVhY2ggZ2l2aW5nIGEgbWVudSBlbnRyeSwgdGhlIHRleHQgZm91bmQgaW4gdGhlIGZpbGUgaXMgdXNlZCB2ZXJiYXRpbS4gSW4gIgorI34gInRoaXMgY2FzZSwgdGhlIGFscGhhYmV0aWMgb3JkZXJpbmcgc2NoZW1lIGlzIHR1cm5lZCBvZmYsIGFuZCB0aGUgZW50cmllcyAiCisjfiAiYXJlIGluc2VydGVkIGF0IHRoZSB0b3Agb2Ygc2VjdGlvbiBpbiBxdWVzdGlvbi4gSW4gdGhpcyBjYXNlLCB0aGUgQjwtLSIKKyN+ICJtZW51ZW50cnk+LCBCPC0tbWF4d2lkdGg+LCBCPC0tYWxpZ24+LCBCPC0tY2FsaWduPiBhbmQgQjwtLW1lbnVlbnRyeT4gIgorI34gIm9wdGlvbnMgYXJlIGlnbm9yZWQuIgorI34gbXNnc3RyICIiCisjfiAiSmXFm2xpIHdwaXMgem5hbGV6aW9ueSB3IHNhbXltIHBsaWt1IEluZm8gcm96Y2nEhWdhIHNpxJkgbmEga2lsa2EgbGluaWksIHogIgorI34gImt0w7NyeWNoIGthxbxkYSB0d29yenkgd3BpcyB3IG1lbnUsIHRla3N0IHpuYWxlemlvbnkgdyBwbGlrdSBqZXN0IHXFvHl3YW55ICIKKyN+ICJkb3PFgm93bmllLiBTb3J0b3dhbmllIGFsZmFiZXR5Y3puZSBqZXN0IHd0ZWR5IHd5xYLEhWN6YW5lLCBhIHdwaXN5IHPEhSAiCisjfiAid3N0YXdpYW5lIG5hIHBvY3rEhXRrdSB3c2themFuZWogc2VrY2ppLiBXIHRha2ltIHByenlwYWRrdSBvcGNqZSBCPC0tIgorI34gIm1lbnVlbnRyeT4sIEI8LS1tYXh3aWR0aD4sIEI8LS1hbGlnbj4sIEI8LS1jYWxpZ24+IGkgQjwtLW1lbnVlbnRyeT4gc8SFICIKKyN+ICJpZ25vcm93YW5lLiIKKworI34gbXNnaWQgIiIKKyN+ICJJZiB0aGVyZSBpcyBubyBCPGRpcj4gZW50cnkgaW4gdGhlIGZpbGUsIHRoZSBwcm9ncmFtIHdpbGwgdHJ5IHRvIGZpbmQgYSAiCisjfiAicGFyYWdyYXBoIGVhcmx5IGluIHRoZSBmaWxlIHN0YXJ0aW5nIEI8dGhpcyBmaWxlIGRvY3VtZW50cz4uICBJdCB3aWxsICIKKyN+ICJjYXBpdGFsaXNlIHRoZSBmaXJzdCBjaGFyYWN0ZXIgb2YgdGhlIHJlbWFpbmRlciwgYW5kIHVzZSB0aGF0LiIKKyN+IG1zZ3N0ciAiIgorI34gIkplxZtsaSB3IHBsaWt1IG5pZSBtYSB3cGlzdSBCPGRpcj4sIHByb2dyYW0gYsSZZHppZSBzdGFyYcWCIHNpxJkgem5hbGXFusSHICIKKyN+ICJwYXJhZ3JhZiBuYSBwb2N6xIV0a3UgcGxpa3Ugcm96cG9jenluYWrEhWN5IHNpxJkgb2QgQjx0aGlzIGZpbGUgZG9jdW1lbnRzPi4gIgorI34gIlBpZXJ3c3p5IHpuYWsgcG96b3N0YcWCZWogY3rEmcWbY2kgem9zdGFuaWUgemFtaWVuaW9ueSBuYSB3aWVsa8SFIGxpdGVyxJkgaSB0byAiCisjfiAiem9zdGFuaWUgdcW8eXRlLiIKKworI34gbXNnaWQgIkl0IGlzIGFuIGVycm9yIGZvciBub25lIG9mIHRoZXNlIG1ldGhvZHMgdG8geWllbGQgYSBkZXNjcmlwdGlvbi4iCisjfiBtc2dzdHIgIkLFgsSZZGVtIGplc3QgamXFm2xpIMW8YWRuYSB6IHR5Y2ggbWV0b2QgbmllIHp3csOzY2kgb3Bpc3UuIgorCisjfiBtc2dpZCAiIgorI34gIklmIGEgZGVzY3JpcHRpb24gYXJndW1lbnQgaXMgZ2l2ZW4gd2hlbiBCPC0tcmVtb3ZlPiBpcyBzcGVjaWZpZWQsIGl0IGlzICIKKyN+ICJpZ25vcmVkIGFuZCBhIHdhcm5pbmcgaXMgaXNzdWVkLiIKKyN+IG1zZ3N0ciAiIgorI34gIkplxZtsaSBwb2RjemFzIHVzdXdhbmlhIChCPC0tcmVtb3ZlPikgcG9kYW5vIGFyZ3VtZW50IHphd2llcmFqxIVjeSBvcGlzLCB0byAiCisjfiAiamVzdCBvbiBpZ25vcm93YW55IGkgb2Rwb3dpZWRuaWUgb3N0cnplxbxlbmllIGplc3Qgd3lwaXN5d2FuZS4iCisKKyN+IG1zZ2lkICJCPC0tbWVudWVudHJ5PT5JPHh4eD4iCisjfiBtc2dzdHIgIkI8LS1tZW51ZW50cnk9Pkk8eHh4PiIKKworI34gbXNnaWQgIiIKKyN+ICJTcGVjaWZpZXMgdGhhdCB0aGUgZW50cnkgaW4gdGhlIG1lbnUgc2hvdWxkIGJlIEk8eHh4Pi4gIFRoZSBkZWZhdWx0IGlzIHRvICIKKyN+ICJ1c2UgdGhlIHRoZSB2YWx1ZSBzcGVjaWZpZWQgaW4gdGhlIEluZm8gZmlsZSBpdHNlbGYuICBJZiB0aGlzIGlzIG5vdCAiCisjfiAicHJlc2VudCwgdGhlIGJhc2VuYW1lIG9mIHRoZSBJbmZvIGZpbGUgaXMgdXNlZCAoYW55IEI8LmluZm8gPmlzIGRlbGV0ZWQsICIKKyN+ICJhbmQgdGhlIGVudHJ5IGlzIG1hZGUgbWl4ZWQgY2FzZSkuICBTZWUgYWJvdmUgZm9yIGRldGFpbHMgb2YgdGhlIGZvcm1hdCAiCisjfiAiZXhwZWN0ZWQgZm9yIHRoZSBtZW51IGVudHJ5IGluIHRoZSBJbmZvIGZpbGUuIgorI34gbXNnc3RyICIiCisjfiAiT2tyZcWbbGEsIMW8ZSB3cGlzZW0gdyBtZW51IHBvd2lubm8gYnnEhyBJPHh4eD4uIERvbXnFm2xuaWUgdcW8eXdhbmEgamVzdCAiCisjfiAid2FydG/Fm8SHIG9rcmXFm2xvbmEgdyBzYW15bSBwbGlrdSBJbmZvLiBKZcWbbGkgamVqIG5pZSBtYSwgdcW8eXdhbmEgamVzdCAiCisjfiAiYmF6b3dhIG5hendhIHBsaWt1IEluZm8gKHBvbmFkdG8gY3rEmcWbxIcgQjwuaW5mbz4gamVzdCB1c3V3YW5hLCBqZXN0IHRlxbwgIgorI34gInptaWVuaWFueSBvZHBvd2llZG5pbyByb3ptaWFyIGxpdGVyIHBvem9zdGHFgmVnbyB3cGlzdSkuIFN6Y3plZ8OzxYJvd2UgIgorI34gImluZm9ybWFjamUgbmEgdGVtYXQgb2N6ZWtpd2FuZWdvIGZvcm1hdHUgd3Bpc3UgdyBtZW51IHphd2FydGVnbyB3IHBsaWt1ICIKKyN+ICJJbmZvIG1vxbxuYSB6bmFsZcW6xIcgcG93ecW8ZWouIgorCisjfiBtc2dpZCAiIgorI34gIldoZW4gcmVtb3ZpbmcgZW50cmllcywgdGhlIHZhbHVlIG9mIHRoZSBCPC0tbWVudWVudHJ5PiBvcHRpb24gbXVzdCBtYXRjaCAiCisjfiAidGhlIGFjdHVhbCBtZW51IGVudHJ5IGZpZWxkIGluIHRoZSBtZW51IGl0ZW0gdG8gYmUgcmVtb3ZlZCAoY2FzZSBub3QgIgorI34gInNpZ25pZmljYW50KS4gSWYgQjwtLW1lbnVlbnRyeT4gaXMgb21pdHRlZCwgbm8gY2hlY2sgb24gdGhlIG1lbnUgZW50cnkgaXMgIgorI34gImRvbmUuIgorI34gbXNnc3RyICIiCisjfiAiUG9kY3phcyB1c3V3YW5pYSB3cGlzw7N3LCB3YXJ0b8WbxIcgb3BjamkgQjwtLW1lbnVlbnRyeT4gbXVzaSBvZHBvd2lhZGHEhyAiCisjfiAiYmllxbzEhWNlaiB3YXJ0b8WbY2kgd3Bpc3UgcG9sYSBtZW51IHcgdXN1d2FuZWogcG96eWNqaSBtZW51ICh3aWVsa2/Fm8SHICIKKyN+ICJ6bmFrw7N3IG5pZSBtYSB6bmFjemVuaWEpLiBKZcWbbGkgbmllIHBvZGFubyBCPC0tbWVudWVudHJ5PiwgdG8gd3BpcyBtZW51ICIKKyN+ICJuaWUgamVzdCBzcHJhd2R6YW55LiIKKworI34gbXNnaWQgIkI8LS1rZWVwLW9sZD4iCisjfiBtc2dzdHIgIkI8LS1rZWVwLW9sZD4iCisKKyN+IG1zZ2lkICIiCisjfiAiSW5oaWJpdHMgdGhlIHJlcGxhY2VtZW50IG9mIGV4aXN0aW5nIGVudHJpZXMgYW5kIHRoZSByZW1vdmFsIG9mIGVtcHR5ICIKKyN+ICJzZWN0aW9ucy4iCisjfiBtc2dzdHIgIiIKKyN+ICJaYWJyYW5pYSB6YXN0xJlwb3dhbmlhIGlzdG5pZWrEhWN5Y2ggd3Bpc8OzdyBpIHVzdXdhbmlhIHB1c3R5Y2ggc2VrY2ppLiIKKworI34gbXNnaWQgIiIKKyN+ICJJZiB0aGUgZmlsZSBiZWluZyBpbnN0YWxsZWQgYWxyZWFkeSBoYXMgYW4gZW50cnkgaW4gdGhlIEluZm8gQjxkaXI+IGZpbGUsICIKKyN+ICJ0aGUgb2xkIGVudHJ5IHdpbGwgYmUgbGVmdCBhbG9uZSBpbnN0ZWFkIG9mIGJlaW5nIHJlcGxhY2VkOyB0aGUgZGVmYXVsdCAiCisjfiAiaXMgdG8gb3ZlcndyaXRlIGFueSBvbGQgZW50cnkgZm91bmQgd2l0aCB0aGUgbmV3bHkgZ2VuZXJhdGVkIG9uZS4iCisjfiBtc2dzdHIgIiIKKyN+ICJKZcWbbGkgaW5zdGFsb3dhbnkgcGxpayBtYSBqdcW8IHdwaXMgdyBwbGlrdSBCPGRpcj4sIHN0YXJ5IHdwaXMgYsSZZHppZSAiCisjfiAicG96b3N0YXdpb255IHphbWlhc3QgemFtaWVuaWFuaWEgZ28uIERvbXnFm2xuaWUgc3RhcmUgd3Bpc3kgc8SFIG5hZHBpc3l3YW5lICIKKyN+ICJwcnpleiBub3dvIHd5Z2VuZXJvd2FuZS4iCisKKyN+IG1zZ2lkICIiCisjfiAiSWYgQjwtLXJlbW92ZT4gaXMgc3BlY2lmaWVkLCBCPC0ta2VlcC1vbGQ+IHdpbGwgcHJldmVudCB0aGUgcmVtb3ZhbCBvZiAiCisjfiAidGhlIHNlY3Rpb24gaGVhZGluZyB3aGljaCB3b3VsZCBvdGhlcndpc2UgaGFwcGVuIGlmIHRoZSBzZWN0aW9uIGlzIG1hZGUgIgorI34gImVtcHR5IGJ5IHRoZSByZW1vdmFsLiIKKyN+IG1zZ3N0ciAiIgorI34gIkplxbxlbGkgcG9kYW5vIG9wY2rEmSBCPC0tcmVtb3ZlPiwgdG8gQjwtLWtlZXAtb2xkPiB6YXBvYmllZ25pZSB1c3VuacSZY2l1ICIKKyN+ICJuYWfFgsOzd2thIHNla2NqaSwgY28gYnkgc2nEmSB6ZGFyennFgm8sIGdkeWJ5IHBvIHVzdW5pxJljaXUgbmFnxYLDs3drYSBzZWtjamEgIgorI34gInN0YcWCYSBzacSZIHB1c3RhLiIKKworI34gbXNnaWQgIiIKKyN+ICJFbmFibGVzIHRlc3QgbW9kZSwgd2hpY2ggaW5oaWJpdHMgdGhlIHVwZGF0ZSBvZiB0aGUgSW5mbyBCPGRpcj4gZmlsZS4iCisjfiBtc2dzdHIgIiIKKyN+ICJXxYLEhWN6YSB0cnliIHRlc3Rvd3ksIGt0w7NyeSBwb3dzdHJ6eW11amUgYWt0dWFsaXphY2rEmSBwbGlrdSBrYXRhbG9ndSBJbmZvICIKKyN+ICJCPGRpcj4uICIKKworI34gbXNnaWQgIiIKKyN+ICJFbmFibGVzIGRlYnVnZ2luZyBtb2RlLCBpbiB3aGljaCB0aGUgcmVzdWx0cyBvZiBzb21lIGludGVybmFsIHByb2Nlc3NpbmcgIgorI34gInN0ZXBzIGFyZSBzaG93bi4iCisjfiBtc2dzdHIgIiIKKyN+ICJXxYLEhWN6YSB0cnliIGRlYnVnb3dhbmlhLCB3IGt0w7NyeW0gcG9rYXp5d2FuZSBzxIUgd3luaWtpIHdld27EmXRyem55Y2ggIgorI34gImtyb2vDs3cgcHJ6ZXR3YXJ6YW5pYS4iCisKKyN+IG1zZ2lkICJCPGVtYWNzPigxKSwgQjxpbmZvPigxKSwgQjxnemlwKDEpLj4iCisjfiBtc2dzdHIgIkI8ZW1hY3M+KDEpLCBCPGluZm8+KDEpLCBCPGd6aXAoMSkuPiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJDb3B5cmlnaHQgXFwoY28gMTk5NCBJYW4gSmFja3NvbiIKKyN+IG1zZ3N0ciAiQ29weXJpZ2h0IDE5OTQgSWFuIEphY2tzb24iCisKKyN+IG1zZ2lkICI4MjItZGF0ZSIKKyN+IG1zZ3N0ciAiODIyLWRhdGUiCisKKyN+IG1zZ2lkICIyMDA3LTAxLTI0IgorI34gbXNnc3RyICIyMDA3LTAxLTI0IgorCisjCisjfiBtc2dpZCAiODIyLWRhdGUgLSBQcmludCBkYXRlIGFuZCB0aW1lIGluIFJGQzI4MjIgZm9ybWF0IgorI34gbXNnc3RyICI4MjItZGF0ZSAtIERydWt1amUgZGF0xJkgaSBjemFzIHcgZm9ybWFjaWUgUkZDMjgyMiIKKworIworI34gbXNnaWQgIkI8ODIyLWRhdGU+IgorI34gbXNnc3RyICJCPDgyMi1kYXRlPiIKKworI34gbXNnaWQgIiIKKyN+ICJCPDgyMi1kYXRlPiBkaXNwbGF5cyB0aGUgY3VycmVudCBkYXRlIGFuZCB0aW1lIGluIHRoZSBmb3JtYXQgZGVzY3JpYmVkIGluICIKKyN+ICJSRkMyODIyLiAgSXQgZG9lcyBzbyBieSBzaW1wbHkgY2FsbGluZyBCPGRhdGU+KDEpICB3aXRoIHRoZSBCPC1SPiBvcHRpb24uIgorI34gbXNnc3RyICIiCisjfiAiQjw4MjItZGF0ZT4gd3nFm3dpZXRsYSBiaWXFvMSFY8SFIGRhdMSZIGkgY3phcyB3IGZvcm1hY2llIG9waXN5d2FueW0gcHJ6ZXogIgorI34gImRva3VtZW50IFJGQzI4MjIuIFJvYmkgdG8gcHJ6ZXogcHJvc3RlIHd5d2/FgmFuaWUgcG9sZWNlbmlhIEI8ZGF0ZT4oMSkgeiAiCisjfiAib3BjasSFIEI8LVI+LiIKKworI34gbXNnaWQgIiIKKyN+ICJCPFVzaW5nIDgyMi1kYXRlIGlzIGRlcHJlY2F0ZWQgc2luY2U+IEI8ZGF0ZT4oMSkgIHByb3ZpZGVzIHRoZSBzYW1lICIKKyN+ICJmdW5jdGlvbmFsaXR5IHdoZW4gY2FsbGVkIHdpdGggdGhlIEI8LVI+LiIKKyN+IG1zZ3N0ciAiIgorI34gIkI8VcW8eXdhbmllIDgyMi1kYXRlIGplc3QgdXpuYXdhbmUgemEgcHJ6ZXN0YXJ6YcWCZT4sIHBvbmlld2HFvCBCPGRhdGU+KDEpICIKKyN+ICJ1cnVjaG9taW9ueSB6IG9wY2rEhSBCPC1SPiBkb3N0YXJjemEgdGVqIHNhbWVqIGZ1bmtjam9uYWxub8WbY2kuIgorCisjfiBtc2dpZCAiQjw4MjItZGF0ZT4gZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnRzIG9yIG9wdGlvbnMuIgorI34gbXNnc3RyICJCPDgyMi1kYXRlPiBuaWUgd3ltYWdhIHBvZGFuaWEgxbxhZG5laiBvcGNqaS4iCisKKyN+IG1zZ2lkICJUaGlzIGZhY2lsaXR5IHJlYWxseSBvdWdodCB0byBiZSBwYXJ0IG9mIEI8ZGF0ZT4oMSkuIgorI34gbXNnc3RyICJUbyBwb2xlY2VuaWUgcG93aW5ubyBiecSHIGN6xJnFm2NpxIUgcG9sZWNlbmlhIEI8ZGF0ZT4oMSkuIgorCisjfiBtc2dpZCAiSTxJbnRlcm5ldCBNZXNzYWdlIEZvcm1hdD4gKFJGQzI4MjIpLCBCPGRhdGU+KDEpLiIKKyN+IG1zZ3N0ciAiSTxJbnRlcm5ldCBNZXNzYWdlIEZvcm1hdD4gKFJGQzI4MjIpLCBCPGRhdGU+KDEpLiIKKworI34gbXNnaWQgIiIKKyN+ICJCPDgyMi1kYXRlPiBpcyBhIHJlYWxseSBzaW1wbGUgd3JhcHBlciBhcm91bmQgQjxkYXRlPigxKS4gIEJ5IGl0cyAiCisjfiAic2ltcGxpY2l0eSwgdGhlIGNvZGUgaXMgcHJvYmFibHkgbm90IGNvcHlyaWdodGFibGUgYW5kIHNob3VsZCBiZSAiCisjfiAiY29uc2lkZXJlZCB0byBiZSBpbiB0aGUgcHVibGljIGRvbWFpbi4gVGhpcyBtYW4gcGFnZSB3YXMgd3JpdHRlbiBieSBGcmFuayAiCisjfiAiTGljaHRlbmhlbGQgYmFzZWQgb24gYW4gZWFybGllciB2ZXJzaW9uIGJ5IElhbiBKYWNrc29uIGFuZCB3YXMgYWxzbyBwdXQgIgorI34gImluIHRoZSBwdWJsaWMgZG9tYWluLiIKKyN+IG1zZ3N0ciAiIgorI34gIkI8ODIyLWRhdGU+IGplc3QgdGFrIG5hcHJhd2TEmSBwcm9zdHltIHByb2dyYW1lbSB3eXdvxYJ1asSFY3ltIHBvbGVjZW5pZSAiCisjfiAiQjxkYXRlPigxKS4gWiBwb3dvZHUgc3dvamVqIHByb3N0b3R5IGtvZCB0ZW4gbmFqcHJhd2RvcG9kb2JuaWVqIG5pZSBqZXN0ICIKKyN+ICJwcnplZG1pb3RlbSBwcmF3IGF1dG9yc2tpY2ggaSBwb3dpbmllbiBiecSHIHV3YcW8YW55IHphIG9wcm9ncmFtb3dhbmllIHR5cHUgIgorI34gInB1YmxpYyBkb21haW4uIFTEmSBzdHJvbsSZIHBvZHLEmWN6bmlrYSwga3TDs3JhIHLDs3duaWXFvCBqZXN0IHVkb3N0xJlwbmlhbmEgIgorI34gImpha28gcHVibGljIGRvbWFpbiwgbmFwaXNhxYIgRnJhbmsgTGljaHRlbmhlbGQgbmEgcG9kc3Rhd2llIHBvcHJ6ZWRuaWVqICIKKyN+ICJ3ZXJzamkgYXV0b3JzdHdhIElhbmEgSmFja3NvbmEuIgorCisjfiBtc2dpZCAiRG8gbm90IGNsZWFuIHRoZSBzb3VyY2UgdHJlZSAoaW1wbGllcyBCPC1iPikuIgorI34gbXNnc3RyICJOaWUgY3p5xZtjaSBrYXRhbG9ndSB6ZSDFunLDs2TFgmFtaSAoaW1wbGlrdWplIEI8LWI+KS4iCisKKyN+IG1zZ2lkICIiCisjfiAiQjxEZXByZWNhdGVkPi4gU2V0IGFuIG91dHB1dCBzdWJzdGl0dXRpb24gdmFyaWFibGUuICBTZWUgQjxkZWItc3Vic3R2YXJzPiIKKyN+ICIoNSkgZm9yIGEgZGlzY3Vzc2lvbiBvZiBvdXRwdXQgc3Vic3RpdHV0aW9uLiIKKyN+IG1zZ3N0ciAiIgorI34gIkI8UHJ6ZXN0YXJ6YcWCZT4uIFVzdGF3aWEgem1pZW5uxIUgcG9kc3Rhd2llbmlhIHd5asWbY2lhLiBTemN6ZWfDs8WCb3d5IG9waXMgIgorI34gInBvZHN0YXdpYW5pYSB3eWrFm2NpYSB6bmFqZHVqZSBzacSZIHcgQjxkZWItc3Vic3R2YXJzPig1KS4iCisKKyN+IG1zZ2lkICJjbGVhbnVwLWluZm8iCisjfiBtc2dzdHIgImNsZWFudXAtaW5mbyIKKworI34gbXNnaWQgIiIKKyN+ICJjbGVhbnVwLWluZm8gLSBjbGVhbiB1cCB0aGUgbWVzcyB0aGF0IGJvZ3VzIGluc3RhbGwtaW5mbyBtYXkgaGF2ZSBkb25lIgorI34gbXNnc3RyICJjbGVhbnVwLWluZm8gLSByb2JpIHBvcnrEhWRlayBwbyBkemlhxYJhbml1IGZhxYJzenl3ZWdvIGluc3RhbGwtaW5mbyIKKworI34gbXNnaWQgIkI8Y2xlYW51cC1pbmZvPiBbSTxvcHRpb25zPl0gW0I8LS0+XSBbSTxkaXJuYW1lPl0iCisjfiBtc2dzdHIgIkI8Y2xlYW51cC1pbmZvPiBbSTxvcGNqZT5dIFtCPC0tPl0gW0k8bmF6d2Ffa2F0YWxvZ3U+XSIKKworI34gbXNnaWQgIiIKKyN+ICJCPGNsZWFudXAtaW5mbz4gaXMgYSBQZXJsIHNjcmlwdCB0aGF0IHRyaWVzIHRvIGNsZWFuIHVwIHRoZSBtZXNzIHRoYXQgIgorI34gImJvZ3VzIEI8aW5zdGFsbC1pbmZvPig4KSAgbWF5IGhhdmUgZG9uZS4gIEl0IGdhdGhlcnMgYWxsIHNlY3Rpb25zIHdpdGggIgorI34gInRoZSBzYW1lIGhlYWRpbmcgaW50byBhIHNpbmdsZSBvbmUuICBJdCB0cmllcyB0byBiZSBzbWFydCBhYm91dCBjYXNlcyBhbmQgIgorI34gInRyYWlsaW5nIGNvbG9uL3NwYWNlcy4iCisjfiBtc2dzdHIgIiIKKyN+ICJCPGNsZWFudXAtaW5mbz4gamVzdCBza3J5cHRlbSBQZXJsYSwga3TDs3J5IHN0YXJhIHNpxJkgdXBvcnrEhWRrb3dhxIcgIgorI34gImJhxYJhZ2FuLCBrdMOzcnkgbcOzZ8WCIHN0d29yennEhyBmYcWCc3p5d3kgQjxpbnN0YWxsLWluZm8+KDgpLiDFgcSFY3p5IHdzenlzdGtpZSAiCisjfiAic2VrY2plIG1hasSFY2UgdGVuIHNhbSBuYWfFgsOzd2VrIHcgamVkbsSFLiBTdGFyYSBzacSZIG3EhWRyemUgd3ljaHd5Y2nEhyByw7PFvG5lICIKKyN+ICJwcnp5cGFka2kgb3JheiBrb8WEY293ZSBkd3Vrcm9wa2kvc3BhY2plLiIKKworI34gbXNnaWQgIiIKKyN+ICJPdGhlciBjbGVhbi11cHMgaW5jbHVkZSByZW1vdmluZyBvZiBlbXB0eSBzZWN0aW9ucywgYW5kIHNxdWVlemluZyB0aGUgIgorI34gImJsYW5rIGxpbmVzIChpbiBlbnRyaWVzIHBhcnQgb25seSkuIgorI34gbXNnc3RyICIiCisjfiAiSW5uZSBwb3J6xIVka2kgZG90eWN6xIUgdXN1d2FuaWEgcHVzdHljaCBzZWtjamkgaSDFgsSFY3plbmllIHB1c3R5Y2ggbGluaWkgIgorI34gIih0eWxrbyB3IGN6xJnFm2NpYWNoIHdwaXPDs3cpLiIKKworI34gbXNnaWQgIiIKKyN+ICJPcmRlciBvZiBzZWN0aW9ucyBpcyBwcmVzZXJ2ZWQgKHRoZSBmaXJzdCBlbmNvdW50ZXJlZCBzZWN0aW9uIGNvdW50cykuICAiCisjfiAiT3JkZXIgb2YgZW50cmllcyB3aXRoaW4gYSBzZWN0aW9uIGlzIHByZXNlcnZlZC4iCisjfiBtc2dzdHIgIiIKKyN+ICJaYWNob3d5d2FueSBqZXN0IHBvcnrEhWRlayBzZWtjamkgKGxpY3p5IHNpxJkgdHlsa28gcGllcndzemUgbmFwb3RrYW5pZSAiCisjfiAic2VrY2ppKS4gWmFjaG93eXdhbnkgamVzdCByw7N3bmllxbwgcG9yesSFZGVrIHdwaXPDs3cgdyBkYW5laiBzZWtjamkuIgorCisjfiBtc2dpZCAiIgorI34gIlBsZWFzZSBiZSBCPGV4dHJlbWVseSBjYXJlZnVsPiB3aGVuIHVzaW5nIHRoaXMgdXRpbGl0eSAtIGl0IG1pZ2h0IG5vdCBiZSAiCisjfiAiMTAwJSBzYWZlLiBjbGVhbnVwLWluZm8gdHJpZXMgdG8gYmUgY2FyZWZ1bCB3aXRoIHlvdXIgaW5mbyBkaXIgZmlsZSwgYnV0ICIKKyN+ICJvbmx5IHVudGlsIGl0IHdyaXRlcyBpdC4gWW91IHNob3VsZCBiYWNrIHRoZSBmaWxlIHVwIHByaW9yIHRvIHVzaW5nIHRoaXMgIgorI34gInNjcmlwdC4iCisjfiBtc2dzdHIgIiIKKyN+ICJQcm9zesSZIHphY2hvd2HEhyBCPHN6Y3plZ8OzbG7EhSBvc3Ryb8W8bm/Fm8SHPiwgdcW8eXdhasSFYyB0ZWdvIHByb2dyYW11IC0gbW/FvGUgIgorI34gIm5pZSBiecSHIGNhxYJraWVtIGJlenBpZWN6bnkuIGNsZWFudXAtaW5mbyBzdGFyYSBzacSZIG9zdHJvxbxuaWUgb2JjaG9kemnEhyAiCisjfiAic2nEmSB6IHBsaWtpZW0gZGlyLCBhbGUgdHlsa28gZG8gY3phc3UsIGdkeSBnbyB6YXBpc3plLiBQcnplZCB1xbx5Y2llbSB0ZWdvICIKKyN+ICJza3J5cHR1LCBwb3dpbm5vIHNpxJkgenJvYmnEhyBrb3BpxJkgemFwYXNvd8SFIHBsaWt1IGRpci4iCisKKyN+IG1zZ2lkICJCPC0tdW5zYWZlPiIKKyN+IG1zZ3N0ciAiQjwtLXVuc2FmZT4iCisKKyN+IG1zZ2lkICJTZXQgc29tZSBhZGRpdGlvbmFsIHBvc3NpYmx5IHVzZWZ1bCBvcHRpb25zLiIKKyN+IG1zZ3N0ciAiVXN0YXdpYSBraWxrYSBvcGNqaSBkb2RhdGtvd3ljaCwgYSBiecSHIG1vxbxlIHXFvHl0ZWN6bnljaC4iCisKKyN+IG1zZ2lkICIiCisjfiAiQjxXYXJuaW5nOiB0aGUgYC0tdW5zYWZlJyBvcHRpb24gbWF5IGdhcmJsZSBhbiBvdGhlcndpc2UgY29ycmVjdCBmaWxlIT4iCisjfiBtc2dzdHIgIkI8T3N0cnplxbxlbmllOiBvcGNqYSBcIi0tdW5zYWZlXCIgbW/FvGUgdXN6a29kemnEhyBwb3ByYXdueSBwbGlrIT4iCisKKyN+IG1zZ2lkICJJPC91c3IvaW5mby9kaXI+IG9yIEk8RTxsdD5kaXJuYW1lRTxndD4vZGlyPiIKKyN+IG1zZ3N0ciAiSTwvdXNyL2luZm8vZGlyPiBsdWIgSTxFPGx0Pm5hendhX2thdGFsb2d1RTxndD4vZGlyPiIKKworI34gbXNnaWQgIiIKKyN+ICJUaGUgaW5mbyBkaXJlY3RvcnkgZmlsZS4gVGhlIGxvY2sgZmlsZSBpcyBuYW1lZCB0aGUgc2FtZSwgd2l0aCBcIi5sb2NrXCIgIgorI34gInN1ZmZpeC4iCisjfiBtc2dzdHIgIiIKKyN+ICJQbGlrIHoga2F0YWxvZ2llbSBpbmZvLiBQbGlrIGJsb2thZHkgbWEgdMSZIHNhbcSFIG5henfEmSB6IGRvxYLEhWN6b255bSAiCisjfiAic3VmaWtzZW0gXCIubG9ja1wiLiIKKworI34gbXNnaWQgIlByb2JhYmx5IG1hbnkuIgorI34gbXNnc3RyICJQcmF3ZG9wb2RvYm5pZSB3aWVsZS4iCisKKyN+IG1zZ2lkICJCPGluc3RhbGwtaW5mbz4oOCksIEI8aW5mbz4oMSkuIgorI34gbXNnc3RyICJCPGluc3RhbGwtaW5mbz4oOCksIEI8aW5mbz4oMSkuIgorCisjLCBmdXp6eQorI34gbXNnaWQgIkNvcHlyaWdodCBcXChjbyAxOTk2IEtpbS1NaW5oIEthcGxhbiIKKyN+IG1zZ3N0ciAiQ29weXJpZ2h0IChDKSAxOTk2IEtpbS1NaW5oIEthcGxhbiIKKworI34gbXNnaWQgIjIwMDgtMDEtMzAiCisjfiBtc2dzdHIgIjIwMDgtMDEtMzAiCisKKyN+IG1zZ2lkICJnZW5lcmljIG5hbWUiCisjfiBtc2dzdHIgIm5hendhIG9nw7NsbmEiCisKKyN+IG1zZ2lkICJzeW1saW5rIgorI34gbXNnc3RyICJsaW5rIHN5bWJvbGljem55IgorCisjfiBtc2dpZCAiIgorI34gIldpdGhvdXQgYW55IGZ1cnRoZXIgcXVhbGlmaWNhdGlvbiwgdGhpcyBtZWFucyBhIHN5bWJvbGljIGxpbmsgaW4gdGhlICIKKyN+ICJhbHRlcm5hdGl2ZXMgZGlyZWN0b3J5OiBvbmUgd2hpY2ggdGhlIHN5c3RlbSBhZG1pbmlzdHJhdG9yIGlzIGV4cGVjdGVkIHRvICIKKyN+ICJhZGp1c3QuIgorI34gbXNnc3RyICIiCisjfiAiQmV6IMW8YWRuZWdvIHN6Y3plZ8OzxYJvd2VnbyBkb29rcmXFm2xlbmlhLCBvem5hY3phIHRvIGxpbmsgc3ltYm9saWN6bnkgdyAiCisjfiAia2F0YWxvZ3UgYWx0ZXJuYXR5dzogdGVuLCBrdMOzcnkgYWRtaW5pc3RyYXRvciBzeXN0ZW11IHBvd2luaWVuIHBvcHJhd2lhxIcuIgorCisjfiBtc2dpZCAiQ2FsbCBCPC0tY29uZmlnPiBvbiBhbGwgYWx0ZXJuYXRpdmVzLiIKKyN+IG1zZ3N0ciAiV3l3b8WCdWplIEI8LS1jb25maWc+IGRsYSB3c3p5c3RraWNoIGFsdGVybmF0eXcuIgorCisjLCBmdXp6eQorI34gbXNnaWQgIkI8RXJyb3I6PiBFPGx0PmVycm9yIGRldGFpbHNFPGd0PiIKKyN+IG1zZ3N0ciAiQjxQcmlvcml0eTo+IEU8bHQ+cHJpb3J5dGV0RTxndD4iCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9wby9wbzRhLmNmZyBiL2Rwa2ctMS4xNi4xLjEvbWFuL3BvL3BvNGEuY2ZnCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQ5ZTY1MWEKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9wby9wbzRhLmNmZwpAQCAtMCwwICsxLDEzNyBAQAorW3BvNGFfbGFuZ3NdIGRlIGVzIGZyIGh1IGphIHBsIHB0X0JSIHJ1IHN2CitbcG80YV9wYXRoc10gcG8vZHBrZy1tYW4ucG90ICRsYW5nOnBvLyRsYW5nLnBvCisKKyMgTWFrZSBzdXJlIHRoZSBtYW4gcGFnZXMgYXJlIGdlbmVyYXRlZCB3aXRoIHRoZSByaWdodCBlbmNvZGluZy4KK1twbzRhX2FsaWFzOm1hbl0gbWFuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgICAgICAgICAgIG9wdF9kZToiLUwgSVNPLTg4NTktMSAgICAgLUEgdXRmLTgiICAgICAgXAorICAgICAgICAgICAgICAgICBvcHRfZXM6Ii1MIElTTy04ODU5LTEgICAgIC1BIHV0Zi04IiAgICAgIFwKKyAgICAgICAgICAgICAgICAgb3B0X2ZyOiItTCBJU08tODg1OS0xICAgICAtQSB1dGYtOCIgICAgICBcCisgICAgICAgICAgICAgICAgIG9wdF9odToiLUwgSVNPLTg4NTktMiAgICAgLUEgdXRmLTgiICAgICAgXAorICAgICAgICAgICAgICAgICBvcHRfamE6Ii1MIGV1Yy1qcCAgICAgICAgIC1BIHV0Zi04IiAgICAgIFwKKyAgICAgICAgICAgICAgICAgb3B0X3BsOiItTCBJU08tODg1OS0yICAgICAtQSB1dGYtOCIgICAgICBcCisgICAgICAgICAgICAgICAgIG9wdF9wdF9CUjoiLUwgSVNPLTg4NTktMSAgLUEgdXRmLTgiICAgICAgXAorICAgICAgICAgICAgICAgICBvcHRfcnU6Ii1MIGtvaTgtciAgICAgICAgIC1BIHV0Zi04IiAgICAgIFwKKyAgICAgICAgICAgICAgICAgb3B0X3N2OiItTCBJU08tODg1OS0xICAgICAtQSB1dGYtOCIKKworW3R5cGU6bWFuXSBkZWIuNSAkbGFuZzokbGFuZy9kZWIuNSBcCisgICAgICAgICAgIGFkZF8kbGFuZzpwby8kbGFuZy5hZGQKKworW3R5cGU6bWFuXSBkZWItY29udHJvbC41ICRsYW5nOiRsYW5nL2RlYi1jb250cm9sLjUgXAorICAgICAgICAgICBhZGRfJGxhbmc6cG8vJGxhbmcuYWRkCisKK1t0eXBlOm1hbl0gZGViLXNyYy1jb250cm9sLjUgJGxhbmc6JGxhbmcvZGViLXNyYy1jb250cm9sLjUgXAorICAgICAgICAgICBhZGRfJGxhbmc6cG8vJGxhbmcuYWRkCisKK1t0eXBlOm1hbl0gZGViLXNwbGl0LjUgJGxhbmc6JGxhbmcvZGViLXNwbGl0LjUgXAorICAgICAgICAgICBhZGRfJGxhbmc6cG8vJGxhbmcuYWRkCisKK1t0eXBlOm1hbl0gZGViLXZlcnNpb24uNSAkbGFuZzokbGFuZy9kZWItdmVyc2lvbi41IFwKKyAgICAgICAgICAgYWRkXyRsYW5nOnBvLyRsYW5nLmFkZAorCitbdHlwZTptYW5dIGRlYi1vbGQuNSAkbGFuZzokbGFuZy9kZWItb2xkLjUgXAorICAgICAgICAgICBhZGRfJGxhbmc6cG8vJGxhbmcuYWRkCisKK1t0eXBlOm1hbl0gZGViLW92ZXJyaWRlLjUgJGxhbmc6JGxhbmcvZGViLW92ZXJyaWRlLjUgXAorICAgICAgICAgICBhZGRfJGxhbmc6cG8vJGxhbmcuYWRkCisKK1t0eXBlOm1hbl0gZGViLWV4dHJhLW92ZXJyaWRlLjUgJGxhbmc6JGxhbmcvZGViLWV4dHJhLW92ZXJyaWRlLjUgXAorICAgICAgICAgICBhZGRfJGxhbmc6cG8vJGxhbmcuYWRkCisKK1t0eXBlOm1hbl0gZGViLXNobGlicy41ICRsYW5nOiRsYW5nL2RlYi1zaGxpYnMuNSBcCisgICAgICAgICAgIGFkZF8kbGFuZzpwby8kbGFuZy5hZGQKKworW3R5cGU6bWFuXSBkZWItc3Vic3R2YXJzLjUgJGxhbmc6JGxhbmcvZGViLXN1YnN0dmFycy41IFwKKyAgICAgICAgICAgYWRkXyRsYW5nOnBvLyRsYW5nLmFkZAorCitbdHlwZTptYW5dIGRlYi1zeW1ib2xzLjUgJGxhbmc6JGxhbmcvZGViLXN5bWJvbHMuNSBcCisgICAgICAgICAgIGFkZF8kbGFuZzpwby8kbGFuZy5hZGQKKworW3R5cGU6bWFuXSBkZWItdHJpZ2dlcnMuNSAkbGFuZzokbGFuZy9kZWItdHJpZ2dlcnMuNSBcCisgICAgICAgICAgIGFkZF8kbGFuZzpwby8kbGFuZy5hZGQKKworW3R5cGU6bWFuXSBkcGtnLjEgJGxhbmc6JGxhbmcvZHBrZy4xIFwKKyAgICAgICAgICAgYWRkXyRsYW5nOnBvLyRsYW5nLmFkZAorCitbdHlwZTptYW5dIGRwa2ctYXJjaGl0ZWN0dXJlLjEgJGxhbmc6JGxhbmcvZHBrZy1hcmNoaXRlY3R1cmUuMSBcCisgICAgICAgICAgIGFkZF8kbGFuZzpwby8kbGFuZy5hZGQKKworW3R5cGU6bWFuXSBkcGtnLmNmZy41ICRsYW5nOiRsYW5nL2Rwa2cuY2ZnLjUgXAorICAgICAgICAgICBhZGRfJGxhbmc6cG8vJGxhbmcuYWRkCisKK1t0eXBlOm1hbl0gZHBrZy1idWlsZGZsYWdzLjEgJGxhbmc6JGxhbmcvZHBrZy1idWlsZGZsYWdzLjEgXAorICAgICAgICAgICBhZGRfJGxhbmc6cG8vJGxhbmcuYWRkCisKK1t0eXBlOm1hbl0gZHBrZy1idWlsZHBhY2thZ2UuMSAkbGFuZzokbGFuZy9kcGtnLWJ1aWxkcGFja2FnZS4xIFwKKyAgICAgICAgICAgYWRkXyRsYW5nOnBvLyRsYW5nLmFkZAorCitbdHlwZTptYW5dIGRwa2ctY2hlY2tidWlsZGRlcHMuMSAkbGFuZzokbGFuZy9kcGtnLWNoZWNrYnVpbGRkZXBzLjEgXAorICAgICAgICAgICBhZGRfJGxhbmc6cG8vJGxhbmcuYWRkCisKK1t0eXBlOm1hbl0gZHBrZy1kaXN0YWRkZmlsZS4xICRsYW5nOiRsYW5nL2Rwa2ctZGlzdGFkZGZpbGUuMSBcCisgICAgICAgICAgIGFkZF8kbGFuZzpwby8kbGFuZy5hZGQKKworW3R5cGU6bWFuXSBkcGtnLWRlYi4xICRsYW5nOiRsYW5nL2Rwa2ctZGViLjEgXAorICAgICAgICAgICBhZGRfJGxhbmc6cG8vJGxhbmcuYWRkCisKK1t0eXBlOm1hbl0gZHBrZy1kaXZlcnQuOCAkbGFuZzokbGFuZy9kcGtnLWRpdmVydC44IFwKKyAgICAgICAgICAgYWRkXyRsYW5nOnBvLyRsYW5nLmFkZAorCitbdHlwZTptYW5dIGRwa2ctZ2VuY2hhbmdlcy4xICRsYW5nOiRsYW5nL2Rwa2ctZ2VuY2hhbmdlcy4xIFwKKyAgICAgICAgICAgYWRkXyRsYW5nOnBvLyRsYW5nLmFkZAorCitbdHlwZTptYW5dIGRwa2ctZ2VuY29udHJvbC4xICRsYW5nOiRsYW5nL2Rwa2ctZ2VuY29udHJvbC4xIFwKKyAgICAgICAgICAgYWRkXyRsYW5nOnBvLyRsYW5nLmFkZAorCitbdHlwZTptYW5dIGRwa2ctZ2Vuc3ltYm9scy4xICRsYW5nOiRsYW5nL2Rwa2ctZ2Vuc3ltYm9scy4xIFwKKyAgICAgICAgICAgYWRkXyRsYW5nOnBvLyRsYW5nLmFkZAorCitbdHlwZTptYW5dIGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjEgJGxhbmc6JGxhbmcvZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMSBcCisgICAgICAgICAgIGFkZF8kbGFuZzpwby8kbGFuZy5hZGQKKworW3R5cGU6bWFuXSBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xICRsYW5nOiRsYW5nL2Rwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjEgXAorICAgICAgICAgICBhZGRfJGxhbmc6cG8vJGxhbmcuYWRkCisKK1t0eXBlOm1hbl0gZHBrZy1uYW1lLjEgJGxhbmc6JGxhbmcvZHBrZy1uYW1lLjEgXAorICAgICAgICAgICBhZGRfJGxhbmc6cG8vJGxhbmcuYWRkCisKK1t0eXBlOm1hbl0gZHBrZy1wYXJzZWNoYW5nZWxvZy4xICRsYW5nOiRsYW5nL2Rwa2ctcGFyc2VjaGFuZ2Vsb2cuMSBcCisgICAgICAgICAgIGFkZF8kbGFuZzpwby8kbGFuZy5hZGQKKworW3R5cGU6bWFuXSBkcGtnLXF1ZXJ5LjEgJGxhbmc6JGxhbmcvZHBrZy1xdWVyeS4xIFwKKyAgICAgICAgICAgYWRkXyRsYW5nOnBvLyRsYW5nLmFkZAorCitbdHlwZTptYW5dIGRwa2ctc2NhbnBhY2thZ2VzLjEgJGxhbmc6JGxhbmcvZHBrZy1zY2FucGFja2FnZXMuMSBcCisgICAgICAgICAgIGFkZF8kbGFuZzpwby8kbGFuZy5hZGQKKworW3R5cGU6bWFuXSBkcGtnLXNjYW5zb3VyY2VzLjEgJGxhbmc6JGxhbmcvZHBrZy1zY2Fuc291cmNlcy4xIFwKKyAgICAgICAgICAgYWRkXyRsYW5nOnBvLyRsYW5nLmFkZAorCitbdHlwZTptYW5dIGRwa2ctc2hsaWJkZXBzLjEgJGxhbmc6JGxhbmcvZHBrZy1zaGxpYmRlcHMuMSBcCisgICAgICAgICAgIGFkZF8kbGFuZzpwby8kbGFuZy5hZGQKKworW3R5cGU6bWFuXSBkcGtnLXNvdXJjZS4xICRsYW5nOiRsYW5nL2Rwa2ctc291cmNlLjEgXAorICAgICAgICAgICBhZGRfJGxhbmc6cG8vJGxhbmcuYWRkCisKK1t0eXBlOm1hbl0gZHBrZy1zcGxpdC4xICRsYW5nOiRsYW5nL2Rwa2ctc3BsaXQuMSBcCisgICAgICAgICAgIGFkZF8kbGFuZzpwby8kbGFuZy5hZGQKKworW3R5cGU6bWFuXSBkcGtnLXN0YXRvdmVycmlkZS44ICRsYW5nOiRsYW5nL2Rwa2ctc3RhdG92ZXJyaWRlLjggXAorICAgICAgICAgICBhZGRfJGxhbmc6cG8vJGxhbmcuYWRkCisKK1t0eXBlOm1hbl0gZHBrZy10cmlnZ2VyLjEgJGxhbmc6JGxhbmcvZHBrZy10cmlnZ2VyLjEgXAorICAgICAgICAgICBhZGRfJGxhbmc6cG8vJGxhbmcuYWRkCisKK1t0eXBlOm1hbl0gZHBrZy12ZW5kb3IuMSAkbGFuZzokbGFuZy9kcGtnLXZlbmRvci4xIFwKKyAgICAgICAgICAgYWRkXyRsYW5nOnBvLyRsYW5nLmFkZAorCitbdHlwZTptYW5dIGRzZWxlY3QuMSAkbGFuZzokbGFuZy9kc2VsZWN0LjEgXAorICAgICAgICAgICBhZGRfJGxhbmc6cG8vJGxhbmcuYWRkCisKK1t0eXBlOm1hbl0gZHNlbGVjdC5jZmcuNSAkbGFuZzokbGFuZy9kc2VsZWN0LmNmZy41IFwKKyAgICAgICAgICAgYWRkXyRsYW5nOnBvLyRsYW5nLmFkZAorCitbdHlwZTptYW5dIHN0YXJ0LXN0b3AtZGFlbW9uLjggJGxhbmc6JGxhbmcvc3RhcnQtc3RvcC1kYWVtb24uOCBcCisgICAgICAgICAgIGFkZF8kbGFuZzpwby8kbGFuZy5hZGQKKworW3R5cGU6bWFuXSB1cGRhdGUtYWx0ZXJuYXRpdmVzLjggJGxhbmc6JGxhbmcvdXBkYXRlLWFsdGVybmF0aXZlcy44IFwKKyAgICAgICAgICAgYWRkXyRsYW5nOnBvLyRsYW5nLmFkZApkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vcG8vcHRfQlIuYWRkIGIvZHBrZy0xLjE2LjEuMS9tYW4vcG8vcHRfQlIuYWRkCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjY0NGU5OTYKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9wby9wdF9CUi5hZGQKQEAgLTAsMCArMSwyIEBACitQTzRBLUhFQURFUjptb2RlPWFmdGVyO3Bvc2l0aW9uPV5cLlRIO2JlZ2luYm91bmRhcnk9RmFrZVBvNGFCb3VuZGFyeQorCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9wby9wdF9CUi5wbyBiL2Rwa2ctMS4xNi4xLjEvbWFuL3BvL3B0X0JSLnBvCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQ2MDFhMmMKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9wby9wdF9CUi5wbwpAQCAtMCwwICsxLDE2MTIyIEBACisjIEJyYXppbGlhbiBQb3J0dWd1ZXNlIHRyYW5zbGF0aW9uIG9mIHRoZSBtYW5wYWdlcyBpbiB0aGUgZHBrZyBwYWNrYWdlCisjIFRoaXMgZmlsZSBpcyBkaXN0cmlidXRlZCB1bmRlciB0aGUgc2FtZSBsaWNlbnNlIGFzIHRoZSBkcGtnIHBhY2thZ2UuCisjIENvcHlyaWdodCAoQykgRklSU1QgQVVUSE9SIDxFTUFJTEBBRERSRVNTPiwgWUVBUi4KKyMKK21zZ2lkICIiCittc2dzdHIgIiIKKyJQcm9qZWN0LUlkLVZlcnNpb246IGRwa2cgbWFuIHBhZ2VzXG4iCisiUE9ULUNyZWF0aW9uLURhdGU6IDIwMTEtMTAtMTQgMDc6MTErMDMwMFxuIgorIlBPLVJldmlzaW9uLURhdGU6IDIwMTAtMDMtMDcgMjI6MTgrMDEwMFxuIgorIkxhc3QtVHJhbnNsYXRvcjogQW5kcmUgTHVpcyBMb3BlcyAgPGFuZHJlbG9wQGRlYmlhbi5vcmc+XG4iCisiTGFuZ3VhZ2UtVGVhbTogUG9ydHVndWVzZSA8ZGViaWFuLWwxMG4tcG9ydHVndWVzZUBsaXN0cy5kZWJpYW4ub3JnPlxuIgorIkxhbmd1YWdlOiBwdFxuIgorIk1JTUUtVmVyc2lvbjogMS4wXG4iCisiQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PVVURi04XG4iCisiQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdFxuIgorCisjLiB0eXBlOiBUSAorIzogZGViLjU6MQorIywgbm8td3JhcAorbXNnaWQgImRlYiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUSAorIzogZGViLjU6MSBkZWItY29udHJvbC41OjMgZGViLXNyYy1jb250cm9sLjU6MyBkZWItdmVyc2lvbi41OjUgZGViLW9sZC41OjEKKyM6IGRlYi1vdmVycmlkZS41OjE1IGRlYi1zeW1ib2xzLjU6MiBkZWItdHJpZ2dlcnMuNToxIGRwa2cuMToxCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEgZHBrZy1idWlsZHBhY2thZ2UuMToxIGRwa2ctZGViLjE6MSBkcGtnLWRpdmVydC44OjEKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjEgZHBrZy1nZW5jb250cm9sLjE6MSBkcGtnLWdlbnN5bWJvbHMuMToyCisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjEgZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMToxIGRwa2ctbmFtZS4xOjYKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxIGRwa2ctcXVlcnkuMToxIGRwa2ctc2NhbnBhY2thZ2VzLjE6MTUKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMToxIGRwa2ctc2hsaWJkZXBzLjE6MSBkcGtnLXNvdXJjZS4xOjIgZHBrZy10cmlnZ2VyLjE6MQorIzogZHNlbGVjdC4xOjEgdXBkYXRlLWFsdGVybmF0aXZlcy44OjgKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiMjAxMS0wOC0xNCIKK21zZ3N0ciAiMjAwNi0wNC0wOSIKKworIy4gdHlwZTogVEgKKyM6IGRlYi41OjEgZGViLWNvbnRyb2wuNTozIGRlYi1zcmMtY29udHJvbC41OjMgZGViLXNwbGl0LjU6MSBkZWItdmVyc2lvbi41OjUKKyM6IGRlYi1vbGQuNToxIGRlYi1vdmVycmlkZS41OjE1IGRlYi1leHRyYS1vdmVycmlkZS41OjEgZGViLXNobGlicy41OjE2CisjOiBkZWItc3Vic3R2YXJzLjU6MiBkZWItc3ltYm9scy41OjIgZGViLXRyaWdnZXJzLjU6MSBkcGtnLjE6MQorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxIGRwa2cuY2ZnLjU6MSBkcGtnLWJ1aWxkZmxhZ3MuMToxCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEgZHBrZy1jaGVja2J1aWxkZGVwcy4xOjEgZHBrZy1kaXN0YWRkZmlsZS4xOjEKKyM6IGRwa2ctZGViLjE6MSBkcGtnLWRpdmVydC44OjEgZHBrZy1nZW5jaGFuZ2VzLjE6MSBkcGtnLWdlbmNvbnRyb2wuMToxCisjOiBkcGtnLWdlbnN5bWJvbHMuMToyIGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MSBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjEKKyM6IGRwa2ctbmFtZS4xOjYgZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjEgZHBrZy1xdWVyeS4xOjEgZHBrZy1zY2FucGFja2FnZXMuMToxNQorIzogZHBrZy1zY2Fuc291cmNlcy4xOjEgZHBrZy1zaGxpYmRlcHMuMToxIGRwa2ctc291cmNlLjE6MiBkcGtnLXNwbGl0LjE6MgorIzogZHBrZy10cmlnZ2VyLjE6MSBkcGtnLXZlbmRvci4xOjEgZHNlbGVjdC4xOjEgZHNlbGVjdC5jZmcuNToxCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjEgdXBkYXRlLWFsdGVybmF0aXZlcy44OjgKKyMsIG5vLXdyYXAKK21zZ2lkICJEZWJpYW4gUHJvamVjdCIKK21zZ3N0ciAiUHJvamV0byBEZWJpYW4iCisKKyMuIHR5cGU6IFRICisjOiBkZWIuNToxIGRlYi1jb250cm9sLjU6MyBkZWItc3JjLWNvbnRyb2wuNTozIGRlYi1zcGxpdC41OjEgZGViLXZlcnNpb24uNTo1CisjOiBkZWItb2xkLjU6MSBkc2VsZWN0LjE6MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJEZWJpYW4iCittc2dzdHIgIlByb2pldG8gRGViaWFuIgorCisjLiB0eXBlOiBTSAorIzogZGViLjU6MiBkZWItY29udHJvbC41OjQgZGViLXNyYy1jb250cm9sLjU6NCBkZWItc3BsaXQuNToyIGRlYi12ZXJzaW9uLjU6NgorIzogZGViLW9sZC41OjIgZGViLW92ZXJyaWRlLjU6MTYgZGViLWV4dHJhLW92ZXJyaWRlLjU6MiBkZWItc2hsaWJzLjU6MTcKKyM6IGRlYi1zdWJzdHZhcnMuNTozIGRlYi1zeW1ib2xzLjU6MyBkZWItdHJpZ2dlcnMuNToyIGRwa2cuMToyCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjIgZHBrZy5jZmcuNToyIGRwa2ctYnVpbGRmbGFncy4xOjIKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MiBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6MiBkcGtnLWRpc3RhZGRmaWxlLjE6MgorIzogZHBrZy1kZWIuMToyIGRwa2ctZGl2ZXJ0Ljg6MiBkcGtnLWdlbmNoYW5nZXMuMToyIGRwa2ctZ2VuY29udHJvbC4xOjIKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjMgZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToyIGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6MgorIzogZHBrZy1uYW1lLjE6NyBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MiBkcGtnLXF1ZXJ5LjE6MiBkcGtnLXNjYW5wYWNrYWdlcy4xOjE2CisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6MiBkcGtnLXNobGliZGVwcy4xOjIgZHBrZy1zb3VyY2UuMTozIGRwa2ctc3BsaXQuMTozCisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjIgZHBrZy10cmlnZ2VyLjE6MiBkcGtnLXZlbmRvci4xOjIgZHNlbGVjdC4xOjIKKyM6IGRzZWxlY3QuY2ZnLjU6MiBzdGFydC1zdG9wLWRhZW1vbi44OjIgdXBkYXRlLWFsdGVybmF0aXZlcy44OjkKKyMsIG5vLXdyYXAKK21zZ2lkICJOQU1FIgorbXNnc3RyICJOT01FIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWIuNTo0Cittc2dpZCAiZGViIC0gRGViaWFuIGJpbmFyeSBwYWNrYWdlIGZvcm1hdCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZGViLjU6NCBkZWItY29udHJvbC41OjcgZGViLXNyYy1jb250cm9sLjU6NyBkZWItc3BsaXQuNTo0IGRlYi12ZXJzaW9uLjU6OQorIzogZGViLW9sZC41OjUgZGViLW92ZXJyaWRlLjU6MTkgZGViLWV4dHJhLW92ZXJyaWRlLjU6NSBkZWItc3Vic3R2YXJzLjU6NgorIzogZGViLXN5bWJvbHMuNTo2IGRlYi10cmlnZ2Vycy41OjUgZHBrZy4xOjUgZHBrZy1hcmNoaXRlY3R1cmUuMTo1CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo1IGRwa2ctYnVpbGRwYWNrYWdlLjE6NSBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6NQorIzogZHBrZy1kaXN0YWRkZmlsZS4xOjUgZHBrZy1kZWIuMTo1IGRwa2ctZGl2ZXJ0Ljg6NSBkcGtnLWdlbmNoYW5nZXMuMTo1CisjOiBkcGtnLWdlbmNvbnRyb2wuMTo1IGRwa2ctZ2Vuc3ltYm9scy4xOjYgZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMTo1CisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjUgZHBrZy1uYW1lLjE6MTAgZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjUKKyM6IGRwa2ctcXVlcnkuMTo1IGRwa2ctc2NhbnBhY2thZ2VzLjE6MTkgZHBrZy1zY2Fuc291cmNlcy4xOjUKKyM6IGRwa2ctc2hsaWJkZXBzLjE6NSBkcGtnLXNvdXJjZS4xOjYgZHBrZy1zcGxpdC4xOjYgZHBrZy1zdGF0b3ZlcnJpZGUuODo1CisjOiBkcGtnLXRyaWdnZXIuMTo1IGRwa2ctdmVuZG9yLjE6NSBkc2VsZWN0LjE6NSBzdGFydC1zdG9wLWRhZW1vbi44OjUKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxMgorIywgbm8td3JhcAorbXNnaWQgIlNZTk9QU0lTIgorbXNnc3RyICJSRVNVTU8iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi41OjYgZGViLXNwbGl0LjU6NiBkZWItb2xkLjU6NworbXNnaWQgIkk8ZmlsZW5hbWU+QjwuZGViPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZGViLjU6NiBkZWItY29udHJvbC41OjEwIGRlYi1zcmMtY29udHJvbC41OjEwIGRlYi1zcGxpdC41OjYKKyM6IGRlYi12ZXJzaW9uLjU6MTEgZGViLW9sZC41OjggZGViLW92ZXJyaWRlLjU6MjIgZGViLWV4dHJhLW92ZXJyaWRlLjU6OAorIzogZGViLXNobGlicy41OjIwIGRlYi1zdWJzdHZhcnMuNTo5IGRlYi1zeW1ib2xzLjU6OSBkZWItdHJpZ2dlcnMuNTo4CisjOiBkcGtnLjE6MTkgZHBrZy1hcmNoaXRlY3R1cmUuMToxMCBkcGtnLmNmZy41OjUgZHBrZy1idWlsZGZsYWdzLjE6OQorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo5IGRwa2ctY2hlY2tidWlsZGRlcHMuMToxMCBkcGtnLWRpc3RhZGRmaWxlLjE6OQorIzogZHBrZy1kZWIuMTo5IGRwa2ctZGl2ZXJ0Ljg6MTAgZHBrZy1nZW5jaGFuZ2VzLjE6MTAgZHBrZy1nZW5jb250cm9sLjE6OQorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTAgZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxNSBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjkKKyM6IGRwa2ctbmFtZS4xOjE2IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo5IGRwa2ctcXVlcnkuMTo5CisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjI3IGRwa2ctc2NhbnNvdXJjZXMuMToxMyBkcGtnLXNobGliZGVwcy4xOjkKKyM6IGRwa2ctc291cmNlLjE6MTAgZHBrZy1zcGxpdC4xOjEwIGRwa2ctc3RhdG92ZXJyaWRlLjg6OSBkcGtnLXRyaWdnZXIuMToxMgorIzogZHBrZy12ZW5kb3IuMTo5IGRzZWxlY3QuMTo5IGRzZWxlY3QuY2ZnLjU6NSBzdGFydC1zdG9wLWRhZW1vbi44OjkKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNgorIywgbm8td3JhcAorbXNnaWQgIkRFU0NSSVBUSU9OIgorbXNnc3RyICJERVNDUknDh8ODTyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLjU6MTIKK21zZ2lkICIiCisiVGhlIEI8LmRlYj4gZm9ybWF0IGlzIHRoZSBEZWJpYW4gYmluYXJ5IHBhY2thZ2UgZmlsZSBmb3JtYXQuIEl0IGlzICIKKyJ1bmRlcnN0b29kIGJ5IGRwa2cgMC45My43NiBhbmQgbGF0ZXIsIGFuZCBpcyBnZW5lcmF0ZWQgYnkgZGVmYXVsdCBieSBhbGwgIgorInZlcnNpb25zIG9mIGRwa2cgc2luY2UgMS4yLjAgYW5kIGFsbCBpMzg2L0VMRiB2ZXJzaW9ucyBzaW5jZSAxLjEuMWVsZi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLjU6MTYKK21zZ2lkICIiCisiVGhlIGZvcm1hdCBkZXNjcmliZWQgaGVyZSBpcyB1c2VkIHNpbmNlIERlYmlhbiAwLjkzOyBkZXRhaWxzIG9mIHRoZSBvbGQgIgorImZvcm1hdCBhcmUgZGVzY3JpYmVkIGluIEI8ZGViLW9sZD4oNSkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkZWIuNToxNiBkZWItc3BsaXQuNTo5IGRlYi1vbGQuNToxOAorIywgbm8td3JhcAorbXNnaWQgIkZPUk1BVCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWIuNToyMgorbXNnaWQgIiIKKyJUaGUgZmlsZSBpcyBhbiBCPGFyPiBhcmNoaXZlIHdpdGggYSBtYWdpYyB2YWx1ZSBvZiBCPCFFPGx0PmFyY2hFPGd0Pj4uICBUaGUgIgorImZpbGUgbmFtZXMgbWlnaHQgY29udGFpbiBhIHRyYWlsaW5nIHNsYXNoLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWIuNToyOAorbXNnaWQgIiIKKyJUaGUgQjx0YXI+IGFyY2hpdmVzIGN1cnJlbnRseSBhbGxvd2VkIGFyZSwgdGhlIG9sZC1zdHlsZSAodjcpIGZvcm1hdCwgdGhlICIKKyJwcmUtUE9TSVggdXN0YXIgZm9ybWF0LCBhIHN1YnNldCBvZiB0aGUgR05VIGZvcm1hdCAob25seSB0aGUgbmV3IHN0eWxlIGxvbmcgIgorInBhdGhuYW1lcyBhbmQgbG9uZyBsaW5rbmFtZXMsIHN1cHBvcnRlZCBzaW5jZSBkcGtnIDEuNC4xLjE3KSwgYW5kIHRoZSBQT1NJWCAiCisidXN0YXIgZm9ybWF0IChsb25nIG5hbWVzIHN1cHBvcnRlZCBzaW5jZSBkcGtnIDEuMTUuMCkuICBVbnJlY29nbml6ZWQgdGFyICIKKyJ0eXBlZmxhZ3MgYXJlIGNvbnNpZGVyZWQgYW4gZXJyb3IuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi41OjM4Cittc2dpZCAiIgorIlRoZSBmaXJzdCBtZW1iZXIgaXMgbmFtZWQgQjxkZWJpYW4tYmluYXJ5PiBhbmQgY29udGFpbnMgYSBzZXJpZXMgb2YgbGluZXMsICIKKyJzZXBhcmF0ZWQgYnkgbmV3bGluZXMuIEN1cnJlbnRseSBvbmx5IG9uZSBsaW5lIGlzIHByZXNlbnQsIHRoZSBmb3JtYXQgIgorInZlcnNpb24gbnVtYmVyLCBCPDIuMD4gYXQgdGhlIHRpbWUgdGhpcyBtYW51YWwgcGFnZSB3YXMgd3JpdHRlbi4gIFByb2dyYW1zICIKKyJ3aGljaCByZWFkIG5ldy1mb3JtYXQgYXJjaGl2ZXMgc2hvdWxkIGJlIHByZXBhcmVkIGZvciB0aGUgbWlub3IgbnVtYmVyIHRvIGJlICIKKyJpbmNyZWFzZWQgYW5kIG5ldyBsaW5lcyB0byBiZSBwcmVzZW50LCBhbmQgc2hvdWxkIGlnbm9yZSB0aGVzZSBpZiB0aGlzIGlzICIKKyJ0aGUgY2FzZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLjU6NDMKK21zZ2lkICIiCisiSWYgdGhlIG1ham9yIG51bWJlciBoYXMgY2hhbmdlZCwgYW4gaW5jb21wYXRpYmxlIGNoYW5nZSBoYXMgYmVlbiBtYWRlIGFuZCAiCisidGhlIHByb2dyYW0gc2hvdWxkIHN0b3AuIElmIGl0IGhhcyBub3QsIHRoZW4gdGhlIHByb2dyYW0gc2hvdWxkIGJlIGFibGUgdG8gIgorInNhZmVseSBjb250aW51ZSwgdW5sZXNzIGl0IGVuY291bnRlcnMgYW4gdW5leHBlY3RlZCBtZW1iZXIgaW4gdGhlIGFyY2hpdmUgIgorIihleGNlcHQgYXQgdGhlIGVuZCksIGFzIGRlc2NyaWJlZCBiZWxvdy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLjU6NTMKK21zZ2lkICIiCisiVGhlIHNlY29uZCByZXF1aXJlZCBtZW1iZXIgaXMgbmFtZWQgQjxjb250cm9sLnRhci5nej4uICBJdCBpcyBhIGd6aXBwZWQgdGFyICIKKyJhcmNoaXZlIGNvbnRhaW5pbmcgdGhlIHBhY2thZ2UgY29udHJvbCBpbmZvcm1hdGlvbiwgYXMgYSBzZXJpZXMgb2YgcGxhaW4gIgorImZpbGVzLCBvZiB3aGljaCB0aGUgZmlsZSBCPGNvbnRyb2w+IGlzIG1hbmRhdG9yeSBhbmQgY29udGFpbnMgdGhlIGNvcmUgIgorImNvbnRyb2wgaW5mb3JtYXRpb24uIFRoZSBjb250cm9sIHRhcmJhbGwgbWF5IG9wdGlvbmFsbHkgY29udGFpbiBhbiBlbnRyeSBmb3IgIgorImBCPC4+JywgdGhlIGN1cnJlbnQgZGlyZWN0b3J5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWIuNTo2MgorbXNnaWQgIiIKKyJUaGUgdGhpcmQsIGxhc3QgcmVxdWlyZWQgbWVtYmVyIGlzIG5hbWVkIEI8ZGF0YS50YXI+LiAgSXQgY29udGFpbnMgdGhlICIKKyJmaWxlc3lzdGVtIGFzIGEgdGFyIGFyY2hpdmUsIGVpdGhlciBub3QgY29tcHJlc3NlZCAoc3VwcG9ydGVkIHNpbmNlIGRwa2cgIgorIjEuMTAuMjQpLCBvciBjb21wcmVzc2VkIHdpdGggZ3ppcCAod2l0aCBCPC5nej4gZXh0ZW5zaW9uKSwgeHogKHdpdGggQjwueHo+ICIKKyJleHRlbnNpb24sIHN1cHBvcnRlZCBzaW5jZSBkcGtnIDEuMTUuNiksIGJ6aXAyICh3aXRoIEI8LmJ6Mj4gZXh0ZW5zaW9uLCAiCisic3VwcG9ydGVkIHNpbmNlIGRwa2cgMS4xMC4yNCkgb3IgbHptYSAod2l0aCBCPC5sem1hPiBleHRlbnNpb24sIHN1cHBvcnRlZCAiCisic2luY2UgZHBrZyAxLjEzLjI1KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLjU6NzMKK21zZ2lkICIiCisiVGhlc2UgbWVtYmVycyBtdXN0IG9jY3VyIGluIHRoaXMgZXhhY3Qgb3JkZXIuIEN1cnJlbnQgaW1wbGVtZW50YXRpb25zIHNob3VsZCAiCisiaWdub3JlIGFueSBhZGRpdGlvbmFsIG1lbWJlcnMgYWZ0ZXIgQjxkYXRhLnRhcj4uICBGdXJ0aGVyIG1lbWJlcnMgbWF5IGJlICIKKyJkZWZpbmVkIGluIHRoZSBmdXR1cmUsIGFuZCAoaWYgcG9zc2libGUpIHdpbGwgYmUgcGxhY2VkIGFmdGVyIHRoZXNlIHRocmVlLiAiCisiQW55IGFkZGl0aW9uYWwgbWVtYmVycyB0aGF0IG1heSBuZWVkIHRvIGJlIGluc2VydGVkIGJlZm9yZSBCPGRhdGEudGFyPiBhbmQgIgorIndoaWNoIHNob3VsZCBiZSBzYWZlbHkgaWdub3JlZCBieSBvbGRlciBwcm9ncmFtcywgd2lsbCBoYXZlIG5hbWVzIHN0YXJ0aW5nICIKKyJ3aXRoIGFuIHVuZGVyc2NvcmUsIGBCPF8+Jy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLjU6NzkKK21zZ2lkICIiCisiVGhvc2UgbmV3IG1lbWJlcnMgd2hpY2ggd29uJ3QgYmUgYWJsZSB0byBiZSBzYWZlbHkgaWdub3JlZCB3aWxsIGJlIGluc2VydGVkICIKKyJiZWZvcmUgQjxkYXRhLnRhcj4gd2l0aCBuYW1lcyBzdGFydGluZyB3aXRoIHNvbWV0aGluZyBvdGhlciB0aGFuICIKKyJ1bmRlcnNjb3Jlcywgb3Igd2lsbCAobW9yZSBsaWtlbHkpIGNhdXNlIHRoZSBtYWpvciB2ZXJzaW9uIG51bWJlciB0byBiZSAiCisiaW5jcmVhc2VkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZGViLjU6NzkgZGViLWNvbnRyb2wuNToyNzEgZGViLXNyYy1jb250cm9sLjU6MzI3IGRlYi1zcGxpdC41OjQ5CisjOiBkZWItdmVyc2lvbi41OjExNiBkZWItb2xkLjU6NTEgZGViLW92ZXJyaWRlLjU6NjIgZGViLWV4dHJhLW92ZXJyaWRlLjU6MzcKKyM6IGRlYi1zaGxpYnMuNTo2MSBkZWItc3Vic3R2YXJzLjU6MTU0IGRlYi1zeW1ib2xzLjU6NjEgZGViLXRyaWdnZXJzLjU6NjcKKyM6IGRwa2cuMTo3NjggZHBrZy1hcmNoaXRlY3R1cmUuMToyOTkgZHBrZy5jZmcuNToyMyBkcGtnLWJ1aWxkcGFja2FnZS4xOjI0OQorIzogZHBrZy1kZWIuMToyNTkgZHBrZy1kaXZlcnQuODoxMzIgZHBrZy1nZW5zeW1ib2xzLjE6NDUwIGRwa2ctbmFtZS4xOjk2CisjOiBkcGtnLXF1ZXJ5LjE6MjIwIGRwa2ctc2NhbnBhY2thZ2VzLjE6MTEwIGRwa2ctc2NhbnNvdXJjZXMuMTo3MQorIzogZHBrZy1zaGxpYmRlcHMuMTozMjQgZHBrZy1zb3VyY2UuMTo3MjUgZHBrZy1zcGxpdC4xOjIxNworIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo4NCBkcGtnLXRyaWdnZXIuMTo2NiBkc2VsZWN0LjE6NDQ1IGRzZWxlY3QuY2ZnLjU6MjMKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo1MDgKKyMsIG5vLXdyYXAKK21zZ2lkICJTRUUgQUxTTyIKK21zZ3N0ciAiVkVKQSBUQU1Cw4lNIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWIuNTo4MgorbXNnaWQgIkI8ZGViLW9sZD4oNSksIEI8ZHBrZy1kZWI+KDEpLCBCPGRlYi1jb250cm9sPig1KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVEgKKyM6IGRlYi1jb250cm9sLjU6MworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJkZWItY29udHJvbCIKK21zZ3N0ciAiSTxjb250cm9sPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNTo2Cittc2dpZCAiZGViLWNvbnRyb2wgLSBEZWJpYW4gcGFja2FnZXMnIG1hc3RlciBjb250cm9sIGZpbGUgZm9ybWF0IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6OSBkZWItc3JjLWNvbnRyb2wuNTo5CisjLCBmdXp6eQorbXNnaWQgImNvbnRyb2wiCittc2dzdHIgIkk8Y29udHJvbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MjQKK21zZ2lkICIiCisiRWFjaCBEZWJpYW4gcGFja2FnZSBjb250YWlucyB0aGUgbWFzdGVyIGBjb250cm9sJyBmaWxlLCB3aGljaCBjb250YWlucyBhICIKKyJudW1iZXIgb2YgZmllbGRzLCBvciBjb21tZW50cyB3aGVuIHRoZSBsaW5lIHN0YXJ0cyB3aXRoIEI8JyMnPi4gRWFjaCBmaWVsZCAiCisiYmVnaW5zIHdpdGggYSB0YWcsIHN1Y2ggYXMgQjxQYWNrYWdlPiBvciBCPFZlcnNpb24+IChjYXNlIGluc2Vuc2l0aXZlKSwgIgorImZvbGxvd2VkIGJ5IGEgY29sb24sIGFuZCB0aGUgYm9keSBvZiB0aGUgZmllbGQuICBGaWVsZHMgYXJlIGRlbGltaXRlZCBvbmx5ICIKKyJieSBmaWVsZCB0YWdzLiBJbiBvdGhlciB3b3JkcywgZmllbGQgdGV4dCBtYXkgYmUgbXVsdGlwbGUgbGluZXMgaW4gbGVuZ3RoLCAiCisiYnV0IHRoZSBpbnN0YWxsYXRpb24gdG9vbHMgd2lsbCBnZW5lcmFsbHkgam9pbiBsaW5lcyB3aGVuIHByb2Nlc3NpbmcgdGhlICIKKyJib2R5IG9mIHRoZSBmaWVsZCAoZXhjZXB0IGluIHRoZSBjYXNlIG9mIHRoZSBCPERlc2NyaXB0aW9uPiBmaWVsZCwgc2VlICIKKyJiZWxvdykuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkZWItY29udHJvbC41OjI1CisjLCBuby13cmFwCittc2dpZCAiUkVRVUlSRUQgRklFTERTIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjI2CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8UGFja2FnZTo+STwgcGFja2FnZS1uYW1lPiIKK21zZ3N0ciAiQjwtLXN0YXR1cy1mZCA+STxFPGx0Pm5FPGd0Pj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MzAKK21zZ2lkICIiCisiVGhlIHZhbHVlIG9mIHRoaXMgZmllbGQgZGV0ZXJtaW5lcyB0aGUgcGFja2FnZSBuYW1lLCBhbmQgaXMgdXNlZCB0byBnZW5lcmF0ZSAiCisiZmlsZSBuYW1lcyBieSBtb3N0IGluc3RhbGxhdGlvbiB0b29scy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MzAKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxWZXJzaW9uOj5JPCB2ZXJzaW9uLXN0cmluZz4iCittc2dzdHIgIkI8LS1sb2c9Pkk8ZmlsZW5hbWU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjM3Cittc2dpZCAiIgorIlR5cGljYWxseSwgdGhpcyBpcyB0aGUgb3JpZ2luYWwgcGFja2FnZSdzIHZlcnNpb24gbnVtYmVyIGluIHdoYXRldmVyIGZvcm0gIgorInRoZSBwcm9ncmFtJ3MgYXV0aG9yIHVzZXMuIEl0IG1heSBhbHNvIGluY2x1ZGUgYSBEZWJpYW4gcmV2aXNpb24gbnVtYmVyIChmb3IgIgorIm5vbi1uYXRpdmUgcGFja2FnZXMpLiBUaGUgZXhhY3QgZm9ybWF0IGFuZCBzb3J0aW5nIGFsZ29yaXRobSBhcmUgZGVzY3JpYmVkICIKKyJpbiBCPGRlYi12ZXJzaW9uPig1KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MzcKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxNYWludGFpbmVyOj5JPCBmdWxsbmFtZS1lbWFpbD4iCittc2dzdHIgIkI8LS1sb2c9Pkk8ZmlsZW5hbWU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjQyCittc2dpZCAiIgorIlNob3VsZCBiZSBpbiB0aGUgZm9ybWF0IGBKb2UgQmxvZ2dzIEU8bHQ+amJsb2dnc0Bmb28uY29tRTxndD4nLCBhbmQgaXMgIgorInR5cGljYWxseSB0aGUgcGVyc29uIHdobyBjcmVhdGVkIHRoZSBwYWNrYWdlLCBhcyBvcHBvc2VkIHRvIHRoZSBhdXRob3Igb2YgIgorInRoZSBzb2Z0d2FyZSB0aGF0IHdhcyBwYWNrYWdlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6NDIKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxEZXNjcmlwdGlvbjo+STwgc2hvcnQtZGVzY3JpcHRpb24+IgorbXNnc3RyICJCPC0tbG9nPT5JPGZpbGVuYW1lPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNTo0NQorbXNnaWQgIkI8ID5JPGxvbmctZGVzY3JpcHRpb24+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6NTEKK21zZ2lkICIiCisiVGhlIGZvcm1hdCBmb3IgdGhlIHBhY2thZ2UgZGVzY3JpcHRpb24gaXMgYSBzaG9ydCBicmllZiBzdW1tYXJ5IG9uIHRoZSBmaXJzdCAiCisibGluZSAoYWZ0ZXIgdGhlIFwiRGVzY3JpcHRpb25cIiBmaWVsZCkuIFRoZSBmb2xsb3dpbmcgbGluZXMgc2hvdWxkIGJlIHVzZWQgIgorImFzIGEgbG9uZ2VyLCBtb3JlIGRldGFpbGVkIGRlc2NyaXB0aW9uLiBFYWNoIGxpbmUgb2YgdGhlIGxvbmcgZGVzY3JpcHRpb24gIgorIm11c3QgYmUgcHJlY2VkZWQgYnkgYSBzcGFjZSwgYW5kIGJsYW5rIGxpbmVzIGluIHRoZSBsb25nIGRlc2NyaXB0aW9uIG11c3QgIgorImNvbnRhaW4gYSBzaW5nbGUgJy4nIGZvbGxvd2luZyB0aGUgcHJlY2VkaW5nIHNwYWNlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZGViLWNvbnRyb2wuNTo1MgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJPUFRJT05BTCBGSUVMRFMiCittc2dzdHIgIk9Qw4fDlUVTIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNTo1MyBkZWItc3JjLWNvbnRyb2wuNTo5MAorIywgbm8td3JhcAorbXNnaWQgIkI8U2VjdGlvbjo+STwgc2VjdGlvbj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNTo1OAorbXNnaWQgIiIKKyJUaGlzIGlzIGEgZ2VuZXJhbCBmaWVsZCB0aGF0IGdpdmVzIHRoZSBwYWNrYWdlIGEgY2F0ZWdvcnkgYmFzZWQgb24gdGhlICIKKyJzb2Z0d2FyZSB0aGF0IGl0IGluc3RhbGxzLiBTb21lIGNvbW1vbiBzZWN0aW9ucyBhcmUgYHV0aWxzJywgYG5ldCcsIGBtYWlsJywgIgorImB0ZXh0JywgYHgxMScgZXRjLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNTo1OCBkZWItc3JjLWNvbnRyb2wuNTo5NgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPFByaW9yaXR5Oj5JPCBwcmlvcml0eT4iCittc2dzdHIgIkI8LS1sb2c9Pkk8ZmlsZW5hbWU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjYyCittc2dpZCAiIgorIlNldHMgdGhlIGltcG9ydGFuY2Ugb2YgdGhpcyBwYWNrYWdlIGluIHJlbGF0aW9uIHRvIHRoZSBzeXN0ZW0gYXMgYSB3aG9sZS4gICIKKyJDb21tb24gcHJpb3JpdGllcyBhcmUgYHJlcXVpcmVkJywgYHN0YW5kYXJkJywgYG9wdGlvbmFsJywgYGV4dHJhJyBldGMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6NzEgZGViLXNyYy1jb250cm9sLjU6MTA5Cittc2dpZCAiIgorIkluIERlYmlhbiwgdGhlIEI8U2VjdGlvbj4gYW5kIEI8UHJpb3JpdHk+IGZpZWxkcyBoYXZlIGEgZGVmaW5lZCBzZXQgb2YgIgorImFjY2VwdGVkIHZhbHVlcyBiYXNlZCBvbiB0aGUgUG9saWN5IE1hbnVhbC4gIEEgbGlzdCBvZiB0aGVzZSB2YWx1ZXMgY2FuIGJlICIKKyJvYnRhaW5lZCBmcm9tIHRoZSBsYXRlc3QgdmVyc2lvbiBvZiB0aGUgQjxkZWJpYW4tcG9saWN5PiBwYWNrYWdlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNTo3MSBkZWItc3JjLWNvbnRyb2wuNToyMTYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPEVzc2VudGlhbDo+IEI8eWVzPnxCPG5vPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41Ojc4Cittc2dpZCAiIgorIlRoaXMgZmllbGQgaXMgdXN1YWxseSBvbmx5IG5lZWRlZCB3aGVuIHRoZSBhbnN3ZXIgaXMgQjx5ZXM+LiBJdCBkZW5vdGVzIGEgIgorInBhY2thZ2UgdGhhdCBpcyByZXF1aXJlZCBmb3IgcHJvcGVyIG9wZXJhdGlvbiBvZiB0aGUgc3lzdGVtLiBEcGtnIG9yIGFueSAiCisib3RoZXIgaW5zdGFsbGF0aW9uIHRvb2wgd2lsbCBub3QgYWxsb3cgYW4gQjxFc3NlbnRpYWw+IHBhY2thZ2UgdG8gYmUgcmVtb3ZlZCAiCisiKGF0IGxlYXN0IG5vdCB3aXRob3V0IHVzaW5nIG9uZSBvZiB0aGUgZm9yY2Ugb3B0aW9ucykuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41Ojc4CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8QXJjaGl0ZWN0dXJlOj4gSTxhcmNoPnxCPGFsbD4iCittc2dzdHIgIkI8LS1sb2c9Pkk8ZmlsZW5hbWU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41Ojg2Cittc2dpZCAiIgorIlRoZSBhcmNoaXRlY3R1cmUgc3BlY2lmaWVzIHdoaWNoIHR5cGUgb2YgaGFyZHdhcmUgdGhpcyBwYWNrYWdlIHdhcyBjb21waWxlZCAiCisiZm9yLiBDb21tb24gYXJjaGl0ZWN0dXJlcyBhcmUgYGkzODYnLCBgbTY4aycsIGBzcGFyYycsIGBhbHBoYScsIGBwb3dlcnBjJyAiCisiZXRjLiBOb3RlIHRoYXQgdGhlIEI8YWxsPiBvcHRpb24gaXMgbWVhbnQgZm9yIHBhY2thZ2VzIHRoYXQgYXJlIGFyY2hpdGVjdHVyZSAiCisiaW5kZXBlbmRlbnQuIFNvbWUgZXhhbXBsZXMgb2YgdGhpcyBhcmUgc2hlbGwgYW5kIFBlcmwgc2NyaXB0cywgYW5kICIKKyJkb2N1bWVudGF0aW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNTo4NiBkZWItc3JjLWNvbnRyb2wuNTo4NQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPE9yaWdpbjo+STwgbmFtZT4iCittc2dzdHIgIkI8LS1sb2c9Pkk8ZmlsZW5hbWU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41Ojg5Cittc2dpZCAiVGhlIG5hbWUgb2YgdGhlIGRpc3RyaWJ1dGlvbiB0aGlzIHBhY2thZ2UgaXMgb3JpZ2luYXRpbmcgZnJvbS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6ODkgZGViLXNyYy1jb250cm9sLjU6NjYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPEJ1Z3M6Pkk8IHVybD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNTo5NAorbXNnaWQgIiIKKyJUaGUgSTx1cmw+IG9mIHRoZSBidWcgdHJhY2tpbmcgc3lzdGVtIGZvciB0aGlzIHBhY2thZ2UuIFRoZSBjdXJyZW50IHVzZWQgIgorImZvcm1hdCBpcyBJPGJ0cy10eXBlPkI8Oi8vPkk8YnRzLWFkZHJlc3M+LCBsaWtlIEI8ZGViYnVnczovL2J1Z3MuZGViaWFuLm9yZz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41Ojk0IGRlYi1zcmMtY29udHJvbC41OjYyCisjLCBuby13cmFwCittc2dpZCAiQjxIb21lcGFnZTo+STwgdXJsPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41Ojk3Cittc2dpZCAiVGhlIHVwc3RyZWFtIHByb2plY3QgaG9tZSBwYWdlIEk8dXJsPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6OTcgZGViLXNyYy1jb250cm9sLjU6MjIyCisjLCBuby13cmFwCittc2dpZCAiQjxUYWc6Pkk8IHRhZy1saXN0PiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjEwMQorbXNnaWQgIiIKKyJMaXN0IG9mIHRhZ3MgZGVzY3JpYmluZyB0aGUgcXVhbGl0aWVzIG9mIHRoZSBwYWNrYWdlLiBUaGUgZGVzY3JpcHRpb24gYW5kICIKKyJsaXN0IG9mIHN1cHBvcnRlZCB0YWdzIGNhbiBiZSBmb3VuZCBpbiB0aGUgQjxkZWJ0YWdzPiBwYWNrYWdlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNToxMDEgZGViLXNyYy1jb250cm9sLjU6MjE5CisjLCBuby13cmFwCittc2dpZCAiQjxNdWx0aS1BcmNoOj4gQjxzYW1lPnxCPGZvcmVpZ24+fEI8YWxsb3dlZD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToxMTMKK21zZ2lkICIiCisiVGhpcyBmaWVsZCBpcyB1c2VkIHRvIGluZGljYXRlIGhvdyB0aGlzIHBhY2thZ2Ugc2hvdWxkIGJlaGF2ZSBvbiBhIG11bHRpLSIKKyJhcmNoIGluc3RhbGxhdGlvbnMuIFRoZSB2YWx1ZSBCPHNhbWU+IG1lYW5zIHRoYXQgdGhlIHBhY2thZ2UgaXMgY28tIgorImluc3RhbGxhYmxlIHdpdGggaXRzZWxmLCBidXQgaXQgbXVzdCBub3QgYmUgdXNlZCB0byBzYXRpc2Z5IHRoZSBkZXBlbmRlbmN5ICIKKyJvZiBhbnkgcGFja2FnZSBvZiBhIGRpZmZlcmVudCBhcmNoaXRlY3R1cmUgZnJvbSBpdHNlbGYuIFRoZSB2YWx1ZSBCPGZvcmVpZ24+ICIKKyJtZWFucyB0aGF0IHRoZSBwYWNrYWdlIGlzIG5vdCBjby1pbnN0YWxsYWJsZSB3aXRoIGl0c2VsZiwgYnV0IHNob3VsZCBiZSAiCisiYWxsb3dlZCB0byBzYXRpc2Z5IHRoZSBkZXBlbmRlbmN5IG9mIGEgcGFja2FnZSBvZiBhIGRpZmZlcmVudCBhcmNoIGZyb20gIgorIml0c2VsZi4gVGhlIHZhbHVlIEI8YWxsb3dlZD4gYWxsb3dzIHJldmVyc2UtZGVwZW5kZW5jaWVzIHRvIGluZGljYXRlIGluICIKKyJ0aGVpciBEZXBlbmRzIGZpZWxkIHRoYXQgdGhleSBuZWVkIGEgcGFja2FnZSBmcm9tIGEgZm9yZWlnbiBhcmNoaXRlY3R1cmUsICIKKyJidXQgaGFzIG5vIGVmZmVjdCBvdGhlcndpc2UuIFRoaXMgZmllbGQgc2hvdWxkIG5vdCBiZSBwcmVzZW50IGluIHBhY2thZ2VzICIKKyJ3aXRoIHRoZSBCPEFyY2hpdGVjdHVyZTogYWxsPiBmaWVsZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MTEzCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8U291cmNlOj5JPCBzb3VyY2UtbmFtZT4iCittc2dzdHIgIkI8LS1sb2c9Pkk8ZmlsZW5hbWU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjExNworbXNnaWQgIiIKKyJUaGUgbmFtZSBvZiB0aGUgc291cmNlIHBhY2thZ2UgdGhhdCB0aGlzIGJpbmFyeSBwYWNrYWdlIGNhbWUgZnJvbSwgaWYgIgorImRpZmZlcmVudCB0aGFuIHRoZSBuYW1lIG9mIHRoZSBwYWNrYWdlIGl0c2VsZi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MTE4IGRlYi1zcmMtY29udHJvbC41OjIwMgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPFN1YmFyY2hpdGVjdHVyZTo+STwgdmFsdWU+IgorbXNnc3RyICJCPC0tbG9nPT5JPGZpbGVuYW1lPiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MTIxIGRlYi1zcmMtY29udHJvbC41OjIwNQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPEtlcm5lbC1WZXJzaW9uOj5JPCB2YWx1ZT4iCittc2dzdHIgIkI8LS1sb2c9Pkk8ZmlsZW5hbWU+IgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNToxMjQgZGViLXNyYy1jb250cm9sLjU6MjA4CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8SW5zdGFsbGVyLU1lbnUtSXRlbTo+STwgdmFsdWU+IgorbXNnc3RyICJCPC0tbG9nPT5JPGZpbGVuYW1lPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToxMzEgZGViLXNyYy1jb250cm9sLjU6MjE1Cittc2dpZCAiIgorIlRoZXNlIGZpZWxkcyBhcmUgdXNlZCBieSB0aGUgZGViaWFuLWluc3RhbGxlciBhbmQgYXJlIHVzdWFsbHkgbm90IG5lZWRlZC4gICIKKyJTZWUgL3Vzci9zaGFyZS9kb2MvZGViaWFuLWluc3RhbGxlci9kZXZlbC9tb2R1bGVzLnR4dCBmcm9tIHRoZSBCPGRlYmlhbi0iCisiaW5zdGFsbGVyPiBwYWNrYWdlIGZvciBtb3JlIGRldGFpbHMgYWJvdXQgdGhlbS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MTMyIGRlYi1zcmMtY29udHJvbC41OjIzMworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPERlcGVuZHM6Pkk8IHBhY2thZ2UtbGlzdD4iCittc2dzdHIgIkI8LS1sb2c9Pkk8ZmlsZW5hbWU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjE0MworbXNnaWQgIiIKKyJMaXN0IG9mIHBhY2thZ2VzIHRoYXQgYXJlIHJlcXVpcmVkIGZvciB0aGlzIHBhY2thZ2UgdG8gcHJvdmlkZSBhIG5vbi10cml2aWFsICIKKyJhbW91bnQgb2YgZnVuY3Rpb25hbGl0eS4gVGhlIHBhY2thZ2UgbWFpbnRlbmFuY2Ugc29mdHdhcmUgd2lsbCBub3QgYWxsb3cgYSAiCisicGFja2FnZSB0byBiZSBpbnN0YWxsZWQgaWYgdGhlIHBhY2thZ2VzIGxpc3RlZCBpbiBpdHMgQjxEZXBlbmRzPiBmaWVsZCAiCisiYXJlbid0IGluc3RhbGxlZCAoYXQgbGVhc3Qgbm90IHdpdGhvdXQgdXNpbmcgdGhlIGZvcmNlIG9wdGlvbnMpLiAgSW4gYW4gIgorImluc3RhbGxhdGlvbiwgdGhlIHBvc3RpbnN0IHNjcmlwdHMgb2YgcGFja2FnZXMgbGlzdGVkIGluIERlcGVuZHM6IGZpZWxkcyBhcmUgIgorInJ1biBiZWZvcmUgdGhvc2Ugb2YgdGhlIHBhY2thZ2VzIHdoaWNoIGRlcGVuZCBvbiB0aGVtLiBPbiB0aGUgb3Bwb3NpdGUsIGluIGEgIgorInJlbW92YWwsIHRoZSBwcmVybSBzY3JpcHQgb2YgYSBwYWNrYWdlIGlzIHJ1biBiZWZvcmUgdGhvc2Ugb2YgdGhlIHBhY2thZ2VzICIKKyJsaXN0ZWQgaW4gaXRzIERlcGVuZHM6IGZpZWxkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNToxNDMgZGViLXNyYy1jb250cm9sLjU6MjM2CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8UHJlLURlcGVuZHM6Pkk8IHBhY2thZ2UtbGlzdD4iCittc2dzdHIgIkI8LS1sb2c9Pkk8ZmlsZW5hbWU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjE1MAorbXNnaWQgIiIKKyJMaXN0IG9mIHBhY2thZ2VzIHRoYXQgbXVzdCBiZSBpbnN0YWxsZWQgQjxhbmQ+IGNvbmZpZ3VyZWQgYmVmb3JlIHRoaXMgb25lICIKKyJjYW4gYmUgaW5zdGFsbGVkLiBUaGlzIGlzIHVzdWFsbHkgdXNlZCBpbiB0aGUgY2FzZSB3aGVyZSB0aGlzIHBhY2thZ2UgIgorInJlcXVpcmVzIGFub3RoZXIgcGFja2FnZSBmb3IgcnVubmluZyBpdHMgcHJlaW5zdCBzY3JpcHQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjE1MCBkZWItc3JjLWNvbnRyb2wuNToyMzkKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxSZWNvbW1lbmRzOj5JPCBwYWNrYWdlLWxpc3Q+IgorbXNnc3RyICJCPC0tbG9nPT5JPGZpbGVuYW1lPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToxNTcKK21zZ2lkICIiCisiTGlzdHMgcGFja2FnZXMgdGhhdCB3b3VsZCBiZSBmb3VuZCB0b2dldGhlciB3aXRoIHRoaXMgb25lIGluIGFsbCBidXQgdW51c3VhbCAiCisiaW5zdGFsbGF0aW9ucy4gVGhlIHBhY2thZ2UgbWFpbnRlbmFuY2Ugc29mdHdhcmUgd2lsbCB3YXJuIHRoZSB1c2VyIGlmIHRoZXkgIgorImluc3RhbGwgYSBwYWNrYWdlIHdpdGhvdXQgdGhvc2UgbGlzdGVkIGluIGl0cyBCPFJlY29tbWVuZHM+IGZpZWxkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNToxNTcgZGViLXNyYy1jb250cm9sLjU6MjQyCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8U3VnZ2VzdHM6Pkk8IHBhY2thZ2UtbGlzdD4iCittc2dzdHIgIkI8LS1zdGF0dXMtZmQgPkk8RTxsdD5uRTxndD4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjE2MgorbXNnaWQgIiIKKyJMaXN0cyBwYWNrYWdlcyB0aGF0IGFyZSByZWxhdGVkIHRvIHRoaXMgb25lIGFuZCBjYW4gcGVyaGFwcyBlbmhhbmNlIGl0cyAiCisidXNlZnVsbmVzcywgYnV0IHdpdGhvdXQgd2hpY2ggaW5zdGFsbGluZyB0aGlzIHBhY2thZ2UgaXMgcGVyZmVjdGx5ICIKKyJyZWFzb25hYmxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjE3NAorbXNnaWQgIiIKKyJUaGUgc3ludGF4IG9mIEI8RGVwZW5kcz4sIEI8UHJlLURlcGVuZHM+LCBCPFJlY29tbWVuZHM+IGFuZCBCPFN1Z2dlc3RzPiAiCisiZmllbGRzIGlzIGEgbGlzdCBvZiBncm91cHMgb2YgYWx0ZXJuYXRpdmUgcGFja2FnZXMuIEVhY2ggZ3JvdXAgaXMgYSBsaXN0IG9mICIKKyJwYWNrYWdlcyBzZXBhcmF0ZWQgYnkgdmVydGljYWwgYmFyIChvciBgcGlwZScpIHN5bWJvbHMsIGB8Jy4gVGhlIGdyb3VwcyBhcmUgIgorInNlcGFyYXRlZCBieSBjb21tYXMuIENvbW1hcyBhcmUgdG8gYmUgcmVhZCBhcyBgQU5EJywgYW5kIHBpcGVzIGFzIGBPUicsIHdpdGggIgorInBpcGVzIGJpbmRpbmcgbW9yZSB0aWdodGx5LiBFYWNoIHBhY2thZ2UgbmFtZSBpcyBvcHRpb25hbGx5IGZvbGxvd2VkIGJ5IGEgIgorInZlcnNpb24gbnVtYmVyIHNwZWNpZmljYXRpb24gaW4gcGFyZW50aGVzZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MTgwCittc2dpZCAiIgorIkEgdmVyc2lvbiBudW1iZXIgbWF5IHN0YXJ0IHdpdGggYSBgRTxndD5FPGd0PicsIGluIHdoaWNoIGNhc2UgYW55IGxhdGVyICIKKyJ2ZXJzaW9uIHdpbGwgbWF0Y2gsIGFuZCBtYXkgc3BlY2lmeSBvciBvbWl0IHRoZSBEZWJpYW4gcGFja2FnaW5nIHJldmlzaW9uICIKKyIoc2VwYXJhdGVkIGJ5IGEgaHlwaGVuKS4gQWNjZXB0ZWQgdmVyc2lvbiByZWxhdGlvbnNoaXBzIGFyZSBcIkU8Z3Q+RTxndD5cIiAiCisiZm9yIGdyZWF0ZXIgdGhhbiwgXCJFPGx0PkU8bHQ+XCIgZm9yIGxlc3MgdGhhbiwgXCJFPGd0Pj1cIiBmb3IgZ3JlYXRlciB0aGFuICIKKyJvciBlcXVhbCB0bywgXCJFPGx0Pj1cIiBmb3IgbGVzcyB0aGFuIG9yIGVxdWFsIHRvLCBhbmQgXCI9XCIgZm9yIGVxdWFsIHRvLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNToxODAgZGViLXNyYy1jb250cm9sLjU6MjQ1CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8QnJlYWtzOj5JPCBwYWNrYWdlLWxpc3Q+IgorbXNnc3RyICJCPC0tc3RhdHVzLWZkID5JPEU8bHQ+bkU8Z3Q+PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToxODgKK21zZ2lkICIiCisiTGlzdHMgcGFja2FnZXMgdGhhdCB0aGlzIG9uZSBicmVha3MsIGZvciBleGFtcGxlIGJ5IGV4cG9zaW5nIGJ1Z3Mgd2hlbiB0aGUgIgorIm5hbWVkIHBhY2thZ2VzIHJlbHkgb24gdGhpcyBvbmUuIFRoZSBwYWNrYWdlIG1haW50ZW5hbmNlIHNvZnR3YXJlIHdpbGwgbm90ICIKKyJhbGxvdyBicm9rZW4gcGFja2FnZXMgdG8gYmUgY29uZmlndXJlZDsgZ2VuZXJhbGx5IHRoZSByZXNvbHV0aW9uIGlzIHRvICIKKyJ1cGdyYWRlIHRoZSBwYWNrYWdlcyBuYW1lZCBpbiBhIEI8QnJlYWtzPiBmaWVsZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MTg4IGRlYi1zcmMtY29udHJvbC41OjI1NAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPENvbmZsaWN0czo+STwgcGFja2FnZS1saXN0PiIKK21zZ3N0ciAiQjwtLWxvZz0+STxmaWxlbmFtZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MTk2Cittc2dpZCAiIgorIkxpc3RzIHBhY2thZ2VzIHRoYXQgY29uZmxpY3Qgd2l0aCB0aGlzIG9uZSwgZm9yIGV4YW1wbGUgYnkgY29udGFpbmluZyBmaWxlcyAiCisid2l0aCB0aGUgc2FtZSBuYW1lcy4gVGhlIHBhY2thZ2UgbWFpbnRlbmFuY2Ugc29mdHdhcmUgd2lsbCBub3QgYWxsb3cgIgorImNvbmZsaWN0aW5nIHBhY2thZ2VzIHRvIGJlIGluc3RhbGxlZCBhdCB0aGUgc2FtZSB0aW1lLiBUd28gY29uZmxpY3RpbmcgIgorInBhY2thZ2VzIHNob3VsZCBlYWNoIGluY2x1ZGUgYSBCPENvbmZsaWN0cz4gbGluZSBtZW50aW9uaW5nIHRoZSBvdGhlci4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MTk2IGRlYi1zcmMtY29udHJvbC41OjI1MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPFJlcGxhY2VzOj5JPCBwYWNrYWdlLWxpc3Q+IgorbXNnc3RyICJCPC0tc3RhdHVzLWZkID5JPEU8bHQ+bkU8Z3Q+PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToyMDQKK21zZ2lkICIiCisiTGlzdCBvZiBwYWNrYWdlcyBmaWxlcyBmcm9tIHdoaWNoIHRoaXMgb25lIHJlcGxhY2VzLiBUaGlzIGlzIHVzZWQgZm9yICIKKyJhbGxvd2luZyB0aGlzIHBhY2thZ2UgdG8gb3ZlcndyaXRlIHRoZSBmaWxlcyBvZiBhbm90aGVyIHBhY2thZ2UgYW5kIGlzICIKKyJ1c3VhbGx5IHVzZWQgd2l0aCB0aGUgQjxDb25mbGljdHM+IGZpZWxkIHRvIGZvcmNlIHJlbW92YWwgb2YgdGhlIG90aGVyICIKKyJwYWNrYWdlLCBpZiB0aGlzIG9uZSBhbHNvIGhhcyB0aGUgc2FtZSBmaWxlcyBhcyB0aGUgY29uZmxpY3RlZCBwYWNrYWdlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNToyMDQgZGViLXNyYy1jb250cm9sLjU6MjU3CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8UHJvdmlkZXM6Pkk8IHBhY2thZ2UtbGlzdD4iCittc2dzdHIgIkI8LS1sb2c9Pkk8ZmlsZW5hbWU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjIxNAorbXNnaWQgIiIKKyJUaGlzIGlzIGEgbGlzdCBvZiB2aXJ0dWFsIHBhY2thZ2VzIHRoYXQgdGhpcyBvbmUgcHJvdmlkZXMuIFVzdWFsbHkgdGhpcyBpcyAiCisidXNlZCBpbiB0aGUgY2FzZSBvZiBzZXZlcmFsIHBhY2thZ2VzIGFsbCBwcm92aWRpbmcgdGhlIHNhbWUgc2VydmljZS4gIEZvciAiCisiZXhhbXBsZSwgc2VuZG1haWwgYW5kIGV4aW0gY2FuIHNlcnZlIGFzIGEgbWFpbCBzZXJ2ZXIsIHNvIHRoZXkgcHJvdmlkZSBhICIKKyJjb21tb24gcGFja2FnZSAoYG1haWwtdHJhbnNwb3J0LWFnZW50Jykgb24gd2hpY2ggb3RoZXIgcGFja2FnZXMgY2FuIGRlcGVuZC4gIgorIlRoaXMgd2lsbCBhbGxvdyBzZW5kbWFpbCBvciBleGltIHRvIHNlcnZlIGFzIGEgdmFsaWQgb3B0aW9uIHRvIHNhdGlzZnkgdGhlICIKKyJkZXBlbmRlbmN5LiBUaGlzIHByZXZlbnRzIHRoZSBwYWNrYWdlcyB0aGF0IGRlcGVuZCBvbiBhIG1haWwgc2VydmVyIGZyb20gIgorImhhdmluZyB0byBrbm93IHRoZSBwYWNrYWdlIG5hbWVzIGZvciBhbGwgb2YgdGhlbSwgYW5kIHVzaW5nIGB8JyB0byBzZXBhcmF0ZSAiCisidGhlIGxpc3QuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MjMzCittc2dpZCAiIgorIlRoZSBzeW50YXggb2YgQjxCcmVha3M+LCBCPENvbmZsaWN0cz4sIEI8UmVwbGFjZXM+IGFuZCBCPFByb3ZpZGVzPiBpcyBhIGxpc3QgIgorIm9mIHBhY2thZ2UgbmFtZXMsIHNlcGFyYXRlZCBieSBjb21tYXMgKGFuZCBvcHRpb25hbCB3aGl0ZXNwYWNlKS4gIEluIHRoZSAiCisiQjxCcmVha3M+IGFuZCBCPENvbmZsaWN0cz4gZmllbGRzLCB0aGUgY29tbWEgc2hvdWxkIGJlIHJlYWQgYXMgYE9SJy4gQW4gIgorIm9wdGlvbmFsIHZlcnNpb24gY2FuIGFsc28gYmUgZ2l2ZW4gd2l0aCB0aGUgc2FtZSBzeW50YXggYXMgYWJvdmUgZm9yIHRoZSAiCisiQjxCcmVha3M+LCBCPENvbmZsaWN0cz4gYW5kIEI8UmVwbGFjZXM+IGZpZWxkcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MjM0IGRlYi1zcmMtY29udHJvbC41OjI2MAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPEJ1aWx0LVVzaW5nOj5JPCBwYWNrYWdlLWxpc3Q+IgorbXNnc3RyICJCPC0tbG9nPT5JPGZpbGVuYW1lPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToyNDQKK21zZ2lkICIiCisiVGhpcyBmaWVsZCBsaXN0cyBleHRyYSBzb3VyY2UgcGFja2FnZXMgdGhhdCB3ZXJlIHVzZWQgZHVyaW5nIHRoZSBidWlsZCBvZiAiCisidGhpcyBiaW5hcnkgcGFja2FnZS4gIFRoaXMgaXMgYW4gaW5kaWNhdGlvbiB0byB0aGUgYXJjaGl2ZSBtYWludGVuYW5jZSAiCisic29mdHdhcmUgdGhhdCB0aGVzZSBleHRyYSBzb3VyY2UgcGFja2FnZXMgbXVzdCBiZSBrZXB0IHdoaWxzdCB0aGlzIGJpbmFyeSAiCisicGFja2FnZSBpcyBtYWludGFpbmVkLiAgVGhpcyBmaWVsZCBtdXN0IGJlIGEgbGlzdCBvZiBzb3VyY2UgcGFja2FnZSBuYW1lcyAiCisid2l0aCBzdHJpY3QgKD0pICB2ZXJzaW9uIHJlbGF0aW9uc2hpcHMuICBOb3RlIHRoYXQgdGhlIGFyY2hpdmUgbWFpbnRlbmFuY2UgIgorInNvZnR3YXJlIGlzIGxpa2VseSB0byByZWZ1c2UgdG8gYWNjZXB0IGFuIHVwbG9hZCB3aGljaCBkZWNsYXJlcyBhIEI8QnVpbHQtIgorIlVzaW5nPiByZWxhdGlvbnNoaXAgd2hpY2ggY2Fubm90IGJlIHNhdGlzZmllZCB3aXRoaW4gdGhlIGFyY2hpdmUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkZWItY29udHJvbC41OjI0NSBkZWItc3JjLWNvbnRyb2wuNToyODggc3RhcnQtc3RvcC1kYWVtb24uODozMDIKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiRVhBTVBMRSIKK21zZ3N0ciAiRVhFTVBMT1MiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MjY4CisjLCBuby13cmFwCittc2dpZCAiIgorIiMgQ29tbWVudFxuIgorIlBhY2thZ2U6IGdyZXBcbiIKKyJFc3NlbnRpYWw6IHllc1xuIgorIlByaW9yaXR5OiByZXF1aXJlZFxuIgorIlNlY3Rpb246IGJhc2VcbiIKKyJNYWludGFpbmVyOiBXaWNoZXJ0IEFra2VybWFuIEU8bHQ+d2Fra2VybWFAZGViaWFuLm9yZ0U8Z3Q+XG4iCisiQXJjaGl0ZWN0dXJlOiBzcGFyY1xuIgorIlZlcnNpb246IDIuNC0xXG4iCisiUHJlLURlcGVuZHM6IGxpYmM2IChFPGd0Pj0gMi4wLjEwNSlcbiIKKyJQcm92aWRlczogcmdyZXBcbiIKKyJDb25mbGljdHM6IHJncmVwXG4iCisiRGVzY3JpcHRpb246IEdOVSBncmVwLCBlZ3JlcCBhbmQgZmdyZXAuXG4iCisiIFRoZSBHTlUgZmFtaWx5IG9mIGdyZXAgdXRpbGl0aWVzIG1heSBiZSB0aGUgXCJmYXN0ZXN0IGdyZXAgaW4gdGhlIHdlc3RcIi5cbiIKKyIgR05VIGdyZXAgaXMgYmFzZWQgb24gYSBmYXN0IGxhenktc3RhdGUgZGV0ZXJtaW5pc3RpYyBtYXRjaGVyIChhYm91dFxuIgorIiB0d2ljZSBhcyBmYXN0IGFzIHN0b2NrIFVuaXggZWdyZXApIGh5YnJpZGl6ZWQgd2l0aCBhIEJveWVyLU1vb3JlLUdvc3BlclxuIgorIiBzZWFyY2ggZm9yIGEgZml4ZWQgc3RyaW5nIHRoYXQgZWxpbWluYXRlcyBpbXBvc3NpYmxlIHRleHQgZnJvbSBiZWluZ1xuIgorIiBjb25zaWRlcmVkIGJ5IHRoZSBmdWxsIHJlZ2V4cCBtYXRjaGVyIHdpdGhvdXQgbmVjZXNzYXJpbHkgaGF2aW5nIHRvXG4iCisiIGxvb2sgYXQgZXZlcnkgY2hhcmFjdGVyLiBUaGUgcmVzdWx0IGlzIHR5cGljYWxseSBtYW55IHRpbWVzIGZhc3RlclxuIgorIiB0aGFuIFVuaXggZ3JlcCBvciBlZ3JlcC4gKFJlZ3VsYXIgZXhwcmVzc2lvbnMgY29udGFpbmluZyBiYWNrcmVmZXJlbmNpbmdcbiIKKyIgd2lsbCBydW4gbW9yZSBzbG93bHksIGhvd2V2ZXIpLlxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6Mjc2CisjLCBmdXp6eQorbXNnaWQgIiIKKyJCPGRlYj4oNSksIEI8ZGViLXZlcnNpb24+KDUpLCBCPGRlYnRhZ3M+KDEpLCBCPGRwa2c+KDEpLCBCPGRwa2ctZGViPigxKS4iCittc2dzdHIgIiIKKyJCPGRzZWxlY3Q+KDgpLCBCPGRwa2ctZGViPigxKSwgQjxkZWI+KDUpLCBCPGRlYi1jb250cm9sPig1KSwgZSBCPGRwa2ctIgorInJlY29uZmlndXJlPig4KSIKKworIy4gdHlwZTogVEgKKyM6IGRlYi1zcmMtY29udHJvbC41OjMKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiZGViLXNyYy1jb250cm9sIgorbXNnc3RyICJJPGNvbnRyb2w+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNTo2Cittc2dpZCAiZGViLXNyYy1jb250cm9sIC0gRGViaWFuIHNvdXJjZSBwYWNrYWdlcycgbWFzdGVyIGNvbnRyb2wgZmlsZSBmb3JtYXQiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MjgKK21zZ2lkICIiCisiRWFjaCBEZWJpYW4gc291cmNlIHBhY2thZ2UgY29udGFpbnMgdGhlIG1hc3RlciBcImNvbnRyb2xcIiBmaWxlLCB3aGljaCAiCisiY29udGFpbnMgYXQgbGVhc3QgMiBwYXJhZ3JhcGhzLCBzZXBhcmF0ZWQgYnkgYSBibGFuayBsaW5lLiBUaGUgZmlyc3QgIgorInBhcmFncmFwaCBsaXN0cyBhbGwgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHNvdXJjZSBwYWNrYWdlIGluIGdlbmVyYWwsIHdoaWxlICIKKyJlYWNoIGZvbGxvd2luZyBwYXJhZ3JhcGggZGVzY3JpYmVzIGV4YWN0bHkgb25lIGJpbmFyeSBwYWNrYWdlLiBFYWNoICIKKyJwYXJhZ3JhcGggY29uc2lzdHMgb2YgYXQgbGVhc3Qgb25lIGZpZWxkLiBBIGZpZWxkIHN0YXJ0cyB3aXRoIGEgZmllbGRuYW1lLCAiCisic3VjaCBhcyBCPFBhY2thZ2U+IG9yIEI8U2VjdGlvbj4gKGNhc2UgaW5zZW5zaXRpdmUpLCBmb2xsb3dlZCBieSBhIGNvbG9uLCAiCisidGhlIGJvZHkgb2YgdGhlIGZpZWxkIGFuZCBhIG5ld2xpbmUuICBNdWx0aS1saW5lIGZpZWxkcyBhcmUgYWxzbyBhbGxvd2VkLCAiCisiYnV0IGVhY2ggc3VwcGxlbWVudGFyeSBsaW5lLCB3aXRob3V0IGEgZmllbGRuYW1lLCBzaG91bGQgc3RhcnQgd2l0aCBhdCBsZWFzdCAiCisib25lIHNwYWNlLiBUaGUgY29udGVudCBvZiB0aGUgbXVsdGktbGluZSBmaWVsZHMgaXMgZ2VuZXJhbGx5IGpvaW5lZCB0byBhICIKKyJzaW5nbGUgbGluZSBieSB0aGUgdG9vbHMgKGV4Y2VwdCBpbiB0aGUgY2FzZSBvZiB0aGUgQjxEZXNjcmlwdGlvbj4gZmllbGQsICIKKyJzZWUgYmVsb3cpLiBUbyBpbnNlcnQgZW1wdHkgbGluZXMgaW50byBhIG11bHRpLWxpbmUgZmllbGQsIGluc2VydCBhIGRvdCAiCisiYWZ0ZXIgdGhlIHNwYWNlLiBMaW5lcyBzdGFydGluZyB3aXRoIGEgQjwnIyc+IGFyZSB0cmVhdGVkIGFzIGNvbW1lbnRzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZGViLXNyYy1jb250cm9sLjU6MjkKKyMsIG5vLXdyYXAKK21zZ2lkICJTT1VSQ0UgRklFTERTIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3JjLWNvbnRyb2wuNTozMAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPFNvdXJjZTo+IEk8c291cmNlLXBhY2thZ2UtbmFtZT4gKHJlcXVpcmVkKSIKK21zZ3N0ciAiQjwtLWxvZz0+STxmaWxlbmFtZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjM3Cittc2dpZCAiIgorIlRoZSB2YWx1ZSBvZiB0aGlzIGZpZWxkIGlzIHRoZSBuYW1lIG9mIHRoZSBzb3VyY2UgcGFja2FnZSwgYW5kIHNob3VsZCBtYXRjaCAiCisidGhlIG5hbWUgb2YgdGhlIHNvdXJjZSBwYWNrYWdlIGluIHRoZSBkZWJpYW4vY2hhbmdlbG9nIGZpbGUuIEEgcGFja2FnZSBuYW1lICIKKyJtdXN0IGNvbnNpc3Qgb25seSBvZiBsb3dlciBjYXNlIGxldHRlcnMgKGEteiksIGRpZ2l0cyAoMC05KSwgcGx1cyAoKykgYW5kICIKKyJtaW51cyAoLSkgc2lnbnMsIGFuZCBwZXJpb2RzICguKS4gUGFja2FnZSBuYW1lcyBtdXN0IGJlIGF0IGxlYXN0IHR3byAiCisiY2hhcmFjdGVycyBsb25nIGFuZCBtdXN0IHN0YXJ0IHdpdGggYW4gYWxwaGFudW1lcmljIGNoYXJhY3Rlci4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zcmMtY29udHJvbC41OjM4CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8TWFpbnRhaW5lcjo+IEk8ZnVsbG5hbWUtZW1haWw+IChyZXF1aXJlZCkiCittc2dzdHIgIkI8LS1sb2c9Pkk8ZmlsZW5hbWU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNTo0MworbXNnaWQgIiIKKyJTaG91bGQgYmUgaW4gdGhlIGZvcm1hdCBcIkpvZSBCbG9nZ3MgRTxsdD5qYmxvZ2dzQGZvby5jb21FPGd0PlwiLCBhbmQgIgorInJlZmVyZW5jZXMgdGhlIHBlcnNvbiB3aG8gY3VycmVudGx5IG1haW50YWlucyB0aGUgcGFja2FnZSwgYXMgb3Bwb3NlZCB0byB0aGUgIgorImF1dGhvciBvZiB0aGUgc29mdHdhcmUgb3IgdGhlIG9yaWdpbmFsIHBhY2thZ2VyLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLXNyYy1jb250cm9sLjU6NDQKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxVcGxvYWRlcnM6Pkk8IGZ1bGxuYW1lLWVtYWlsPiIKK21zZ3N0ciAiQjwtLWxvZz0+STxmaWxlbmFtZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjQ5Cittc2dpZCAiIgorIkxpc3RzIGFsbCB0aGUgbmFtZXMgYW5kIGVtYWlsIGFkZHJlc3NlcyBvZiBjby1tYWludGFpbmVycyBvZiB0aGUgcGFja2FnZSwgaW4gIgorInRoZSBzYW1lIGZvcm1hdCBhcyB0aGUgTWFpbnRhaW5lciBmaWVsZC4gTXVsdGlwbGUgY28tbWFpbnRhaW5lcnMgc2hvdWxkIGJlICIKKyJzZXBhcmF0ZWQgYnkgYSBjb21tYS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zcmMtY29udHJvbC41OjUwCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8U3RhbmRhcmRzLVZlcnNpb246Pkk8IHZlcnNpb24tc3RyaW5nPiIKK21zZ3N0ciAiQjwtLWxvZz0+STxmaWxlbmFtZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjU2Cittc2dpZCAiIgorIlRoaXMgZG9jdW1lbnRzIHRoZSBtb3N0IHJlY2VudCB2ZXJzaW9uIG9mIHRoZSBzdGFuZGFyZHMgKHdoaWNoIGNvbnNpc3RzIG9mICIKKyJ0aGUgRGViaWFuIFBvbGljeSBNYW51YWwgYW5kIHJlZmVyZW5jZWQgdGV4dHMgZnJvbSB0aGUgQjxkZWJpYW4tcG9saWN5PiAiCisicGFja2FnZSkgdGhpcyBwYWNrYWdlIGNvbXBsaWVzIHRvLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLXNyYy1jb250cm9sLjU6NTcKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxETS1VcGxvYWQtQWxsb3dlZDo+IEI8eWVzPnxCPG5vPiIKK21zZ3N0ciAiQjwtLWxvZz0+STxmaWxlbmFtZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjYxCittc2dpZCAiIgorIlRoaXMgZmllbGQgaW5kaWNhdGVzIHdoZXRoZXIgdGhlIHBhY2thZ2UgY2FuIGJlIHVwbG9hZGVkIGJ5IERlYmlhbiAiCisiTWFpbnRhaW5lcnMgYXBwZWFyaW5nIGluIHRoZSBNYWludGFpbmVyIG9yIFVwbG9hZGVycyBmaWVsZC4gVGhlIGRlZmF1bHQgIgorInZhbHVlIGlzIFwibm9cIi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6NjUKK21zZ2lkICJUaGUgdXBzdHJlYW0gcHJvamVjdCBob21lIHBhZ2UgVVJMLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNTo3MQorbXNnaWQgIiIKKyJUaGUgSTx1cmw+IG9mIHRoZSBidWcgdHJhY2tpbmcgc3lzdGVtIGZvciB0aGlzIHBhY2thZ2UuIFRoZSBjdXJyZW50IHVzZWQgIgorImZvcm1hdCBpcyBJPGJ0cy10eXBlPkI8Oi8vPkk8YnRzLWFkZHJlc3M+LCBsaWtlIEI8ZGViYnVnczovL2J1Z3MuZGViaWFuLiIKKyJvcmc+LiBUaGlzIGZpZWxkIGlzIHVzdWFsbHkgbm90IG5lZWRlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zcmMtY29udHJvbC41OjcyCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8VmNzLSo6Pkk8IHVybD4iCittc2dzdHIgIkI8LS1sb2c9Pkk8ZmlsZW5hbWU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNTo3OQorbXNnaWQgIiIKKyJUaGUgSTx1cmw+IG9mIHRoZSBWZXJzaW9uIENvbnRyb2wgU3lzdGVtIHJlcG9zaXRvcnkgdXNlZCB0byBtYWludGFpbiB0aGlzICIKKyJwYWNrYWdlLiBDdXJyZW50bHkgc3VwcG9ydGVkIGFyZSBCPEFyY2g+LCBCPEJ6cj4gKEJhemFhciksIEI8Q3ZzPiwgQjxEYXJjcz4sICIKKyJCPEdpdD4sIEI8SGc+IChNZXJjdXJpYWwpLCBCPE10bj4gKE1vbm90b25lKSBhbmQgQjxTdm4+IChTdWJ2ZXJzaW9uKS4gIgorIlVzdWFsbHkgdGhpcyBmaWVsZCBwb2ludHMgdG8gdGhlIGxhdGVzdCB2ZXJzaW9uIG9mIHRoZSBwYWNrYWdlLCBzdWNoIGFzIHRoZSAiCisibWFpbiBicmFuY2ggb3IgdGhlIHRydW5rLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLXNyYy1jb250cm9sLjU6ODAKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxWY3MtQnJvd3Nlcjo+STwgdXJsPiIKK21zZ3N0ciAiQjwtLWxvZz0+STxmaWxlbmFtZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41Ojg0Cittc2dpZCAiIgorIlRoZSBJPHVybD4gb2YgYSB3ZWJpbnRlcmZhY2UgdG8gYnJvd3NlIHRoZSBWZXJzaW9uIENvbnRyb2wgU3lzdGVtIHJlcG9zaXRvcnkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41Ojg5Cittc2dpZCAiIgorIlRoZSBuYW1lIG9mIHRoZSBkaXN0cmlidXRpb24gdGhpcyBwYWNrYWdlIGlzIG9yaWdpbmF0aW5nIGZyb20uIFRoaXMgZmllbGQgaXMgIgorInVzdWFsbHkgbm90IG5lZWRlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6OTUKK21zZ2lkICIiCisiVGhpcyBpcyBhIGdlbmVyYWwgZmllbGQgdGhhdCBnaXZlcyB0aGUgcGFja2FnZSBhIGNhdGVnb3J5IGJhc2VkIG9uIHRoZSAiCisic29mdHdhcmUgdGhhdCBpdCBpbnN0YWxscy4gU29tZSBjb21tb24gc2VjdGlvbnMgYXJlIFwidXRpbHNcIiwgXCJuZXRcIiwgIgorIlwibWFpbFwiLCBcInRleHRcIiwgXCJ4MTFcIiwgZXRjLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToxMDAKK21zZ2lkICIiCisiU2V0cyB0aGUgaW1wb3J0YW5jZSBvZiB0aGlzIHBhY2thZ2UgaW4gcmVsYXRpb24gdG8gdGhlIHN5c3RlbSBhcyBhIHdob2xlLiAgIgorIkNvbW1vbiBwcmlvcml0aWVzIGFyZSBcInJlcXVpcmVkXCIsIFwic3RhbmRhcmRcIiwgXCJvcHRpb25hbFwiLCBcImV4dHJhXCIsICIKKyJldGMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3JjLWNvbnRyb2wuNToxMTAKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxCdWlsZC1EZXBlbmRzOj5JPCBwYWNrYWdlLWxpc3Q+IgorbXNnc3RyICJCPC0tbG9nPT5JPGZpbGVuYW1lPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MTE0Cittc2dpZCAiIgorIkEgbGlzdCBvZiBwYWNrYWdlcyB0aGF0IG5lZWQgdG8gYmUgaW5zdGFsbGVkIGFuZCBjb25maWd1cmVkIHRvIGJlIGFibGUgdG8gIgorImJ1aWxkIHRoZSBzb3VyY2UgcGFja2FnZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zcmMtY29udHJvbC41OjExNQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPEJ1aWxkLURlcGVuZHMtSW5kZXA6Pkk8IHBhY2thZ2UtbGlzdD4iCittc2dzdHIgIkI8LS1sb2c9Pkk8ZmlsZW5hbWU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToxMjAKK21zZ2lkICIiCisiU2FtZSBhcyBCPEJ1aWxkLURlcGVuZHM+LCBidXQgdGhleSBhcmUgb25seSBuZWVkZWQgd2hlbiBidWlsZGluZyB0aGUgIgorImFyY2hpdGVjdHVyZSBpbmRlcGVuZGVudCBwYWNrYWdlcy4gVGhlIEI8QnVpbGQtRGVwZW5kcz4gYXJlIGFsc28gaW5zdGFsbGVkICIKKyJpbiB0aGlzIGNhc2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3JjLWNvbnRyb2wuNToxMjEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxCdWlsZC1Db25mbGljdHM6Pkk8IHBhY2thZ2UtbGlzdD4iCittc2dzdHIgIkI8LS1sb2c9Pkk8ZmlsZW5hbWU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToxMjUKK21zZ2lkICIiCisiQSBsaXN0IG9mIHBhY2thZ2VzIHRoYXQgc2hvdWxkIG5vdCBiZSBpbnN0YWxsZWQgd2hlbiB0aGUgcGFja2FnZSBpcyBidWlsZCwgIgorImZvciBleGFtcGxlIGJlY2F1c2UgdGhleSBpbnRlcmZlcmUgd2l0aCB0aGUgdXNlZCBidWlsZCBzeXN0ZW0uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3JjLWNvbnRyb2wuNToxMjYKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxCdWlsZC1Db25mbGljdHMtSW5kZXA6Pkk8IHBhY2thZ2UtbGlzdD4iCittc2dzdHIgIkI8LS1sb2c9Pkk8ZmlsZW5hbWU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToxMzAKK21zZ2lkICIiCisiU2FtZSBhcyBCPEJ1aWxkLUNvbmZsaWN0cz4sIGJ1dCBvbmx5IHdoZW4gYnVpbGRpbmcgdGhlIGFyY2hpdGVjdHVyZSAiCisiaW5kZXBlbmRlbnQgcGFja2FnZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjE0MQorbXNnaWQgIiIKKyJUaGUgc3ludGF4IG9mIHRoZSBCPEJ1aWxkLURlcGVuZHM+IGFuZCBCPEJ1aWxkLURlcGVuZHMtSW5kZXA+IGZpZWxkcyBpcyBhICIKKyJsaXN0IG9mIGdyb3VwcyBvZiBhbHRlcm5hdGl2ZSBwYWNrYWdlcy4gRWFjaCBncm91cCBpcyBhIGxpc3Qgb2YgcGFja2FnZXMgIgorInNlcGFyYXRlZCBieSB2ZXJ0aWNhbCBiYXIgKG9yIFwicGlwZVwiKSBzeW1ib2xzLCBcInxcIi4gVGhlIGdyb3VwcyBhcmUgIgorInNlcGFyYXRlZCBieSBjb21tYXMuIENvbW1hcyBhcmUgdG8gYmUgcmVhZCBhcyBcIkFORFwiLCBhbmQgcGlwZXMgYXMgXCJPUlwiLCAiCisid2l0aCBwaXBlcyBiaW5kaW5nIG1vcmUgdGlnaHRseS4gRWFjaCBwYWNrYWdlIG5hbWUgaXMgb3B0aW9uYWxseSBmb2xsb3dlZCBieSAiCisiYSB2ZXJzaW9uIG51bWJlciBzcGVjaWZpY2F0aW9uIGluIHBhcmVudGhlc2VzIGFuZCBhbiBhcmNoaXRlY3R1cmUgIgorInNwZWNpZmljYXRpb24gaW4gc3F1YXJlIGJyYWNrZXRzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToxNTAKK21zZ2lkICIiCisiVGhlIHN5bnRheCBvZiB0aGUgQjxCdWlsZC1Db25mbGljdHM+IGFuZCBCPEJ1aWxkLUNvbmZsaWN0cy1JbmRlcD4gZmllbGRzIGlzICIKKyJhIGxpc3Qgb2YgY29tbWEtc2VwYXJhdGVkIHBhY2thZ2UgbmFtZXMsIHdoZXJlIHRoZSBjb21tYSBpcyByZWFkIGFzIGFuIFwiQU5EIgorIlwiLiBTcGVjaWZ5aW5nIGFsdGVybmF0aXZlIHBhY2thZ2VzIHVzaW5nIGEgXCJwaXBlXCIgaXMgbm90IHN1cHBvcnRlZC4gIEVhY2ggIgorInBhY2thZ2UgbmFtZSBpcyBvcHRpb25hbGx5IGZvbGxvd2VkIGJ5IGEgdmVyc2lvbiBudW1iZXIgc3BlY2lmaWNhdGlvbiBpbiAiCisicGFyZW50aGVzZXMgYW5kIGFuIGFyY2hpdGVjdHVyZSBzcGVjaWZpY2F0aW9uIGluIHNxdWFyZSBicmFja2V0cy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MTU2Cittc2dpZCAiIgorIkEgdmVyc2lvbiBudW1iZXIgbWF5IHN0YXJ0IHdpdGggYSBcIkU8Z3Q+RTxndD5cIiwgaW4gd2hpY2ggY2FzZSBhbnkgbGF0ZXIgIgorInZlcnNpb24gd2lsbCBtYXRjaCwgYW5kIG1heSBzcGVjaWZ5IG9yIG9taXQgdGhlIERlYmlhbiBwYWNrYWdpbmcgcmV2aXNpb24gIgorIihzZXBhcmF0ZWQgYnkgYSBoeXBoZW4pLiBBY2NlcHRlZCB2ZXJzaW9uIHJlbGF0aW9uc2hpcHMgYXJlIFwiRTxndD5FPGd0PlwiICIKKyJmb3IgZ3JlYXRlciB0aGFuLCBcIkU8bHQ+RTxsdD5cIiBmb3IgbGVzcyB0aGFuLCBcIkU8Z3Q+PVwiIGZvciBncmVhdGVyIHRoYW4gIgorIm9yIGVxdWFsIHRvLCBcIkU8bHQ+PVwiIGZvciBsZXNzIHRoYW4gb3IgZXF1YWwgdG8sIGFuZCBcIj1cIiBmb3IgZXF1YWwgdG8uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjE2MAorbXNnaWQgIiIKKyJBIGFyY2hpdGVjdHVyZSBzcGVjaWZpY2F0aW9uIGNvbnNpc3RzIG9mIG9uZSBvciBtb3JlIGFyY2hpdGVjdHVyZSBuYW1lcywgIgorInNlcGFyYXRlZCBieSB3aGl0ZXNwYWNlLiBFeGNsYW1hdGlvbiBtYXJrcyBtYXkgYmUgcHJlcGVuZGVkIHRvIGVhY2ggb2YgdGhlICIKKyJuYW1lcywgbWVhbmluZyBcIk5PVFwiLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToxNjUKK21zZ2lkICIiCisiTm90ZSB0aGF0IGRlcGVuZGVuY2llcyBvbiBwYWNrYWdlcyBpbiB0aGUgQjxidWlsZC1lc3NlbnRpYWw+IHNldCBjYW4gYmUgIgorIm9taXR0ZWQgYW5kIHRoYXQgZGVjbGFyaW5nIGJ1aWxkIGNvbmZsaWN0cyBhZ2FpbnN0IHRoZW0gaXMgaW1wb3NzaWJsZS4gQSAiCisibGlzdCBvZiB0aGVzZSBwYWNrYWdlcyBpcyBpbiB0aGUgYnVpbGQtZXNzZW50aWFsIHBhY2thZ2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkZWItc3JjLWNvbnRyb2wuNToxNjcKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQklOQVJZIEZJRUxEUyIKK21zZ3N0ciAiT1DDh8OVRVMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjE3NgorbXNnaWQgIiIKKyJOb3RlIHRoYXQgdGhlIEI8UHJpb3JpdHk+LCBCPFNlY3Rpb24+IGFuZCBCPEhvbWVwYWdlPiBmaWVsZHMgY2FuIGFsc28gYmUgaW4gIgorImEgYmluYXJ5IHBhcmFncmFwaCB0byBvdmVycmlkZSB0aGUgZ2xvYmFsIHZhbHVlIGZyb20gdGhlIHNvdXJjZSBwYWNrYWdlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLXNyYy1jb250cm9sLjU6MTc3CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8UGFja2FnZTo+IEk8YmluYXJ5LXBhY2thZ2UtbmFtZT4gKHJlcXVpcmVkKSIKK21zZ3N0ciAiQjwtLWxvZz0+STxmaWxlbmFtZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjE4MQorbXNnaWQgIiIKKyJUaGlzIGZpZWxkIGlzIHVzZWQgdG8gbmFtZSB0aGUgYmluYXJ5IHBhY2thZ2UgbmFtZS4gVGhlIHNhbWUgcmVzdHJpY3Rpb25zIGFzICIKKyJ0byBhIHNvdXJjZSBwYWNrYWdlIG5hbWUgYXBwbHkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3JjLWNvbnRyb2wuNToxODIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPEFyY2hpdGVjdHVyZTo+IEk8YXJjaD58QjxhbGw+fEI8YW55PiAocmVxdWlyZWQpIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjE5NQorbXNnaWQgIiIKKyJUaGUgYXJjaGl0ZWN0dXJlIHNwZWNpZmllcyBvbiB3aGljaCB0eXBlIG9mIGhhcmR3YXJlIHRoaXMgcGFja2FnZSBydW5zLiBGb3IgIgorInBhY2thZ2VzIHRoYXQgcnVuIG9uIGFsbCBhcmNoaXRlY3R1cmVzLCB1c2UgdGhlIEI8YW55PiB2YWx1ZS4gRm9yIHBhY2thZ2VzICIKKyJ0aGF0IGFyZSBhcmNoaXRlY3R1cmUgaW5kZXBlbmRlbnQsIHN1Y2ggYXMgc2hlbGwgYW5kIFBlcmwgc2NyaXB0cyBvciAiCisiZG9jdW1lbnRhdGlvbiwgdXNlIHRoZSBCPGFsbD4gdmFsdWUuIFRvIHJlc3RyaWN0IHRoZSBwYWNrYWdlcyB0byBhIGNlcnRhaW4gIgorInNldCBvZiBhcmNoaXRlY3R1cmVzLCBzcGVjaWZ5IHRoZSBhcmNoaXRlY3R1cmUgbmFtZXMsIHNlcGFyYXRlZCBieSBhIHNwYWNlLiAiCisiSXQncyBhbHNvIHBvc3NpYmxlIHRvIHB1dCBhcmNoaXRlY3R1cmUgd2lsZGNhcmRzIGluIHRoYXQgbGlzdCAoc2VlIEI8ZHBrZy0iCisiYXJjaGl0ZWN0dXJlPigxKSAgZm9yIG1vcmUgaW5mb3JtYXRpb24gYWJvdXQgdGhlbSkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3JjLWNvbnRyb2wuNToxOTYKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxQYWNrYWdlLVR5cGU6PiBCPGRlYj58Qjx1ZGViPiIKK21zZ3N0ciAiQjwtLWxvZz0+STxmaWxlbmFtZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjIwMQorbXNnaWQgIiIKKyJUaGlzIGZpZWxkIGRlZmluZXMgdGhlIHR5cGUgb2YgdGhlIHBhY2thZ2UuIFwidWRlYlwiIGlzIGZvciBzaXplLWNvbnN0cmFpbmVkICIKKyJwYWNrYWdlcyB1c2VkIGJ5IHRoZSBkZWJpYW4gaW5zdGFsbGVyLiBcImRlYlwiIGlzIHRoZSBkZWZhdWx0IHZhbHVlLCBpdCdzICIKKyJhc3N1bWVkIGlmIHRoZSBmaWVsZCBpcyBhYnNlbnQuIE1vcmUgdHlwZXMgbWlnaHQgYmUgYWRkZWQgaW4gdGhlIGZ1dHVyZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zcmMtY29udHJvbC41OjIyNQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPERlc2NyaXB0aW9uOj4gSTxzaG9ydC1kZXNjcmlwdGlvbj4gKHJlcXVpcmVkKSIKK21zZ3N0ciAiQjwtLWxvZz0+STxmaWxlbmFtZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjIzMgorbXNnaWQgIiIKKyJUaGVzZSBmaWVsZHMgYXJlIGRlc2NyaWJlZCBpbiB0aGUgQjxkZWItY29udHJvbD4oNSkgIG1hbnVhbCBwYWdlLCBhcyB0aGV5ICIKKyJhcmUgY29waWVkIGxpdGVyYWxseSB0byB0aGUgY29udHJvbCBmaWxlIG9mIHRoZSBiaW5hcnkgcGFja2FnZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zcmMtY29udHJvbC41OjI0OAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPEVuaGFuY2VzOj5JPCBwYWNrYWdlLWxpc3Q+IgorbXNnc3RyICJCPC0tbG9nPT5JPGZpbGVuYW1lPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MjcwCittc2dpZCAiIgorIlRoZXNlIGZpZWxkcyBkZWNsYXJlIHJlbGF0aW9uc2hpcHMgYmV0d2VlbiBwYWNrYWdlcy4gVGhleSBhcmUgZGlzY3Vzc2VkIGluICIKKyJ0aGUgQjxkZWItY29udHJvbD4oNSkgIG1hbnBhZ2UgYW5kIGluIHRoZSBCPGRlYmlhbi1wb2xpY3k+IHBhY2thZ2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkZWItc3JjLWNvbnRyb2wuNToyNzEKKyMsIG5vLXdyYXAKK21zZ2lkICJVU0VSLURFRklORUQgRklFTERTIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjI4NgorbXNnaWQgIiIKKyJJdCBpcyBhbGxvd2VkIHRvIGFkZCBhZGRpdGlvbmFsIHVzZXItZGVmaW5lZCBmaWVsZHMgdG8gdGhlIGNvbnRyb2wgZmlsZS4gVGhlICIKKyJ0b29scyB3aWxsIGlnbm9yZSB0aGVzZSBmaWVsZHMuIElmIHlvdSB3YW50IHRoZSBmaWVsZHMgdG8gYmUgY29waWVkIG92ZXIgdG8gIgorInRoZSBvdXRwdXQgZmlsZXMsIHN1Y2ggYXMgdGhlIGJpbmFyeSBwYWNrYWdlcywgeW91IG5lZWQgdG8gdXNlIGEgY3VzdG9tICIKKyJuYW1pbmcgc2NoZW1lOiB0aGUgZmllbGRzIHNob3VsZCBzdGFydCB3aXRoIGEgWCwgZm9sbG93ZWQgYnkgb25lIG9yIG1vcmUgb2YgIgorInRoZSBsZXR0ZXJzIEJDUyBhbmQgYSBoeXBlbi4gSWYgdGhlIGxldHRlciBCIGlzIHVzZWQsIHRoZSBmaWVsZCB3aWxsIGFwcGVhciAiCisiaW4gdGhlIGNvbnRyb2wgZmlsZSBpbiB0aGUgYmluYXJ5IHBhY2thZ2UsIHNlZSBCPGRlYi1jb250cm9sPig1KSwgZm9yIHRoZSAiCisibGV0dGVyIFMgaW4gdGhlIHNvdXJjZSBwYWNrYWdlIGNvbnRyb2wgZmlsZSBhcyBjb25zdHJ1Y3RlZCBieSBCPGRwa2ctc291cmNlPiIKKyIoMSkgIGFuZCBmb3IgdGhlIGxldHRlciBDIGluIHRoZSB1cGxvYWQgY29udHJvbCAoLmNoYW5nZXMpIGZpbGUuIE5vdGUgdGhhdCAiCisidGhlIFhbQkNTXS0gcHJlZml4ZXMgYXJlIHN0cmlwcGVkIHdoZW4gdGhlIGZpZWxkcyBhcmUgY29waWVkIG92ZXIgdG8gdGhlICIKKyJvdXRwdXQgZmlsZXMuIEEgZmllbGQgQjxYQy1BcHByb3ZlZC1CeT4gd2lsbCBhcHBlYXIgYXMgQjxBcHByb3ZlZC1CeT4gaW4gdGhlICIKKyJjaGFuZ2VzIGZpbGUgYW5kIHdpbGwgbm90IGFwcGVhciBpbiB0aGUgYmluYXJ5IG9yIHNvdXJjZSBwYWNrYWdlIGNvbnRyb2wgIgorImZpbGVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNTozMDQKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiIyBDb21tZW50XG4iCisiU291cmNlOiBkcGtnXG4iCisiU2VjdGlvbjogYWRtaW5cbiIKKyJQcmlvcml0eTogcmVxdWlyZWRcbiIKKyJNYWludGFpbmVyOiBEcGtnIERldmVsb3BlcnMgRTxsdD5kZWJpYW4tZHBrZ0BsaXN0cy5kZWJpYW4ub3JnRTxndD5cbiIKKyIjIHRoaXMgZmllbGQgaXMgY29waWVkIHRvIHRoZSBiaW5hcnkgYW5kIHNvdXJjZSBwYWNrYWdlc1xuIgorIlhCUy1VcHN0cmVhbS1SZWxlYXNlLVN0YXR1czogc3RhYmxlXG4iCisiSG9tZXBhZ2U6IGh0dHA6Ly93aWtpLmRlYmlhbi5vcmcvVGVhbXMvRHBrZ1xuIgorIlZjcy1Ccm93c2VyOiBodHRwOi8vZ2l0LmRlYmlhbi5vcmcvP3A9ZHBrZy9kcGtnLmdpdFxuIgorIlZjcy1HaXQ6IGdpdDovL2dpdC5kZWJpYW4ub3JnL2dpdC9kcGtnL2Rwa2cuZ2l0XG4iCisiU3RhbmRhcmRzLVZlcnNpb246IDMuNy4zXG4iCisiQnVpbGQtRGVwZW5kczogcGtnLWNvbmZpZywgZGViaGVscGVyIChFPGd0Pj0gNC4xLjgxKSxcbiIKKyIgbGlic2VsaW51eDEtZGV2IChFPGd0Pj0gMS4yOC00KSBbIWxpbnV4LWFueV1cbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNTozMjMKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiUGFja2FnZTogZHBrZy1kZXZcbiIKKyJTZWN0aW9uOiB1dGlsc1xuIgorIlByaW9yaXR5OiBvcHRpb25hbFxuIgorIkFyY2hpdGVjdHVyZTogYWxsXG4iCisiIyB0aGlzIGlzIGEgY3VzdG9tIGZpZWxkIGluIHRoZSBiaW5hcnkgcGFja2FnZVxuIgorIlhCLU1lbnRvcmluZy1Db250YWN0OiBSYXBoYWVsIEhlcnR6b2cgRTxsdD5oZXJ0em9nQGRlYmlhbi5vcmdFPGd0PlxuIgorIkRlcGVuZHM6IGRwa2cgKEU8Z3Q+PSAxLjE0LjYpLCBwZXJsNSwgcGVybC1tb2R1bGVzLCBjcGlvIChFPGd0Pj0gMi40LjItMiksXG4iCisiIGJ6aXAyLCBsem1hLCBwYXRjaCAoRTxndD49IDIuMi0xKSwgbWFrZSwgYmludXRpbHMsIGxpYnRpbWVkYXRlLXBlcmxcbiIKKyJSZWNvbW1lbmRzOiBnY2MgfCBjLWNvbXBpbGVyLCBidWlsZC1lc3NlbnRpYWxcbiIKKyJTdWdnZXN0czogZ251cGcsIGRlYmlhbi1rZXlyaW5nXG4iCisiQ29uZmxpY3RzOiBkcGtnLWNyb3NzIChFPGx0PkU8bHQ+IDIuMC4wKSwgZGV2c2NyaXB0cyAoRTxsdD5FPGx0PiAyLjEwLjI2KVxuIgorIlJlcGxhY2VzOiBtYW5wYWdlcy1wbCAoRTxsdD49IDIwMDUxMTE3LTEpXG4iCisiRGVzY3JpcHRpb246IERlYmlhbiBwYWNrYWdlIGRldmVsb3BtZW50IHRvb2xzXG4iCisiIFRoaXMgcGFja2FnZSBwcm92aWRlcyB0aGUgZGV2ZWxvcG1lbnQgdG9vbHMgKGluY2x1ZGluZyBkcGtnLXNvdXJjZSlcbiIKKyIgcmVxdWlyZWQgdG8gdW5wYWNrLCBidWlsZCBhbmQgdXBsb2FkIERlYmlhbiBzb3VyY2UgcGFja2FnZXMuXG4iCisiIC5cbiIKKyIgTW9zdCBEZWJpYW4gc291cmNlIHBhY2thZ2VzIHdpbGwgcmVxdWlyZSBhZGRpdGlvbmFsIHRvb2xzIHRvIGJ1aWxkO1xuIgorIiBmb3IgZXhhbXBsZSwgbW9zdCBwYWNrYWdlcyBuZWVkIG1ha2UgYW5kIHRoZSBDIGNvbXBpbGVyIGdjYy5cbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNTozMzAKKyMsIGZ1enp5Cittc2dpZCAiQjxkZWItY29udHJvbD4oNSksIEI8ZGViLXZlcnNpb24+KDUpLCBCPGRwa2ctc291cmNlPigxKSIKK21zZ3N0ciAiIgorIkI8ZHNlbGVjdD4oOCksIEI8ZHBrZy1kZWI+KDEpLCBCPGRlYj4oNSksIEI8ZGViLWNvbnRyb2w+KDUpLCBlIEI8ZHBrZy0iCisicmVjb25maWd1cmU+KDgpIgorCisjLiB0eXBlOiBUSAorIzogZGViLXNwbGl0LjU6MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJkZWItc3BsaXQiCittc2dzdHIgImRwa2cgc3VpdGUiCisKKyMuIHR5cGU6IFRICisjOiBkZWItc3BsaXQuNToxIGRwa2ctY2hlY2tidWlsZGRlcHMuMToxIGRwa2ctZGlzdGFkZGZpbGUuMToxIGRwa2ctc3BsaXQuMToyCisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjEgZHBrZy12ZW5kb3IuMToxIHN0YXJ0LXN0b3AtZGFlbW9uLjg6MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICIyMDExLTA3LTA0IgorbXNnc3RyICIyMDA2LTA0LTA5IgorCisjIHR5cGU6IFBsYWluIHRleHQKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcGxpdC41OjQKK21zZ2lkICJkZWItc3BsaXQgLSBEZWJpYW4gbXVsdGktcGFydCBiaW5hcnkgcGFja2FnZSBmb3JtYXQiCittc2dzdHIgIiIKKworIyB0eXBlOiBQbGFpbiB0ZXh0CisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3BsaXQuNTo5Cittc2dpZCAiIgorIlRoZSBtdWx0aS1wYXJ0IEI8LmRlYj4gZm9ybWF0IGlzIHVzZWQgdG8gc3BsaXQgYmlnIHBhY2thZ2VzIGludG8gc21hbGxlciAiCisicGllY2VzIHRvIGVhc2UgdHJhbnNwb3J0IGluIHNtYWxsIG1lZGlhLiIKK21zZ3N0ciAiIgorCisjIHR5cGU6IFBsYWluIHRleHQKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcGxpdC41OjEyCittc2dpZCAiIgorIlRoZSBmaWxlIGlzIGFuIEI8YXI+IGFyY2hpdmUgd2l0aCBhIG1hZ2ljIHZhbHVlIG9mIEI8IUU8bHQ+YXJjaEU8Z3Q+Pi4gIFRoZSAiCisiZmlsZSBuYW1lcyBtaWdodCBjb250YWluIGEgdHJhaWxpbmcgc2xhc2ggKHNpbmNlIGRwa2cgMS4xNS42KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNwbGl0LjU6MTUKK21zZ2lkICIiCisiVGhlIGZpcnN0IG1lbWJlciBpcyBuYW1lZCBCPGRlYmlhbi1zcGxpdD4gYW5kIGNvbnRhaW5zIGEgc2VyaWVzIG9mIGxpbmVzLCAiCisic2VwYXJhdGVkIGJ5IG5ld2xpbmVzLiBDdXJyZW50bHkgZWlnaHQgbGluZXMgYXJlIHByZXNlbnQ6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkZWItc3BsaXQuNToxNSBkZWItc3BsaXQuNToxOCBkZWItc3BsaXQuNToyMCBkZWItc3BsaXQuNToyMiBkZWItc3BsaXQuNToyNAorIzogZGViLXNwbGl0LjU6MjYgZGViLXNwbGl0LjU6MjggZGViLXNwbGl0LjU6MzEgZHBrZy1nZW5zeW1ib2xzLjE6MjAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjIyIGRwa2ctZ2Vuc3ltYm9scy4xOjI0IGRwa2ctZ2Vuc3ltYm9scy4xOjI2CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozMTEgZHBrZy1nZW5zeW1ib2xzLjE6MzE3IGRwa2ctZ2Vuc3ltYm9scy4xOjM1MQorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzU1IGRwa2ctZ2Vuc3ltYm9scy4xOjM1OAorIywgbm8td3JhcAorbXNnaWQgIlxcKGJ1IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcGxpdC41OjE4Cittc2dpZCAiIgorIlRoZSBmb3JtYXQgdmVyc2lvbiBudW1iZXIsIEI8Mi4xPiBhdCB0aGUgdGltZSB0aGlzIG1hbnVhbCBwYWdlIHdhcyB3cml0dGVuLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3BsaXQuNToyMAorIywgZnV6enkKK21zZ2lkICJUaGUgcGFja2FnZSBuYW1lLiIKK21zZ3N0ciAiTyBwYWNvdGUgZXN0w6EgaW5zdGFsYWRvIGUgY29uZmlndXJhZG8uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3BsaXQuNToyMgorIywgZnV6enkKK21zZ2lkICJUaGUgcGFja2FnZSB2ZXJzaW9uLiIKK21zZ3N0ciAiTyBwYWNvdGUgZXN0w6Egc2VsZWNpb25hZG8gcGFyYSBpbnN0YWxhw6fDo28uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3BsaXQuNToyNAorbXNnaWQgIlRoZSBtZDVzdW0gb2YgdGhlIHBhY2thZ2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcGxpdC41OjI2CisjLCBmdXp6eQorbXNnaWQgIlRoZSB0b3RhbCBzaXplIG9mIHRoZSBwYWNrYWdlLiIKK21zZ3N0ciAiUGFyYSBwcm9jdXJhciBuYSBsaXN0YSBkZSBwYWNvdGVzIHZvY8OqIG1lc21vOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNwbGl0LjU6MjgKK21zZ2lkICJUaGUgbWF4aW11bSBwYXJ0IHNpemUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcGxpdC41OjMxCittc2dpZCAiIgorIlRoZSBjdXJyZW50IHBhcnQgbnVtYmVyLCBmb2xsb3dlZCBieSBhIHNsYXNoIGFuZCB0aGUgdG90YWwgYW1vdW50IG9mIHBhcnRzICIKKyIoYXMgaW4gXFwob3ExLzEwXFwoY3EpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3BsaXQuNTozMworbXNnaWQgIlRoZSBwYWNrYWdlIGFyY2hpdGVjdHVyZSAoc2luY2UgZHBrZyAxLjE2LjEpLiIKK21zZ3N0ciAiIgorCisjIHR5cGU6IFBsYWluIHRleHQKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcGxpdC41OjM2Cittc2dpZCAiIgorIlByb2dyYW1zIHdoaWNoIHJlYWQgbXVsdGktcGFydCBhcmNoaXZlcyBzaG91bGQgYmUgcHJlcGFyZWQgZm9yIGFkZGl0aW9uYWwgIgorImxpbmVzIHRvIGJlIHByZXNlbnQsIGFuZCBzaG91bGQgaWdub3JlIHRoZXNlIGlmIHRoaXMgaXMgdGhlIGNhc2UuIgorbXNnc3RyICIiCisKKyMgdHlwZTogUGxhaW4gdGV4dAorIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNwbGl0LjU6NDEKK21zZ2lkICIiCisiSWYgdGhlIHZlcnNpb24gbnVtYmVyIGhhcyBjaGFuZ2VkLCBhbiBpbmNvbXBhdGlibGUgY2hhbmdlIGhhcyBiZWVuIG1hZGUgYW5kICIKKyJ0aGUgcHJvZ3JhbSBzaG91bGQgc3RvcC4gSWYgaXQgaGFzIG5vdCwgdGhlbiB0aGUgcHJvZ3JhbSBzaG91bGQgYmUgYWJsZSB0byAiCisic2FmZWx5IGNvbnRpbnVlLCB1bmxlc3MgaXQgZW5jb3VudGVycyBhbiB1bmV4cGVjdGVkIG1lbWJlciBpbiB0aGUgYXJjaGl2ZSAiCisiKGV4Y2VwdCBhdCB0aGUgZW5kKSwgYXMgZGVzY3JpYmVkIGJlbG93LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3BsaXQuNTo0NAorbXNnaWQgIiIKKyJUaGUgc2Vjb25kLCBsYXN0IHJlcXVpcmVkIG1lbWJlciBpcyBuYW1lZCBCPGRhdGEuPkk8Tj4sIHdoZXJlIEk8Tj4gZGVub3RlcyAiCisidGhlIHBhcnQgbnVtYmVyLiBJdCBjb250YWlucyB0aGUgcmF3IHBhcnQgZGF0YS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNwbGl0LjU6NDkKK21zZ2lkICIiCisiVGhlc2UgbWVtYmVycyBtdXN0IG9jY3VyIGluIHRoaXMgZXhhY3Qgb3JkZXIuIEN1cnJlbnQgaW1wbGVtZW50YXRpb25zIHNob3VsZCAiCisiaWdub3JlIGFueSBhZGRpdGlvbmFsIG1lbWJlcnMgYWZ0ZXIgQjxkYXRhLj5JPE4+LiAgRnVydGhlciBtZW1iZXJzIG1heSBiZSAiCisiZGVmaW5lZCBpbiB0aGUgZnV0dXJlLCBhbmQgKGlmIHBvc3NpYmxlKSB3aWxsIGJlIHBsYWNlZCBhZnRlciB0aGVzZSB0d28uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcGxpdC41OjUxCisjLCBmdXp6eQorbXNnaWQgIkI8ZGViPig1KSwgQjxkcGtnLXNwbGl0PigxKS4iCittc2dzdHIgIiIKKyJCPGRzZWxlY3Q+KDgpLCBCPGRwa2ctZGViPigxKSwgQjxkZWI+KDUpLCBCPGRlYi1jb250cm9sPig1KSwgZSBCPGRwa2ctIgorInJlY29uZmlndXJlPig4KSIKKworIy4gdHlwZTogVEgKKyM6IGRlYi12ZXJzaW9uLjU6NQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJkZWItdmVyc2lvbiIKK21zZ3N0ciAiQjwtLXZlcnNpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjgKK21zZ2lkICJkZWItdmVyc2lvbiAtIERlYmlhbiBwYWNrYWdlIHZlcnNpb24gbnVtYmVyIGZvcm1hdCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjExCittc2dpZCAiW0k8ZXBvY2g+Qjw6Pl1JPHVwc3RyZWFtLXZlcnNpb24+W0I8LT5JPGRlYmlhbi1yZXZpc2lvbj5dIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6MTQKK21zZ2lkICIiCisiVmVyc2lvbiBudW1iZXJzIGFzIHVzZWQgZm9yIERlYmlhbiBiaW5hcnkgYW5kIHNvdXJjZSBwYWNrYWdlcyBjb25zaXN0IG9mICIKKyJ0aHJlZSBjb21wb25lbnRzLiBUaGVzZSBhcmU6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItdmVyc2lvbi41OjE0CisjLCBuby13cmFwCittc2dpZCAiSTxlcG9jaD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNToyMAorbXNnaWQgIiIKKyJUaGlzIGlzIGEgc2luZ2xlIChnZW5lcmFsbHkgc21hbGwpIHVuc2lnbmVkIGludGVnZXIuICBJdCBtYXkgYmUgb21pdHRlZCwgaW4gIgorIndoaWNoIGNhc2UgemVybyBpcyBhc3N1bWVkLiAgSWYgaXQgaXMgb21pdHRlZCB0aGVuIHRoZSBJPHVwc3RyZWFtLXZlcnNpb24+ICIKKyJtYXkgbm90IGNvbnRhaW4gYW55IGNvbG9ucy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNToyNAorbXNnaWQgIiIKKyJJdCBpcyBwcm92aWRlZCB0byBhbGxvdyBtaXN0YWtlcyBpbiB0aGUgdmVyc2lvbiBudW1iZXJzIG9mIG9sZGVyIHZlcnNpb25zIG9mICIKKyJhIHBhY2thZ2UsIGFuZCBhbHNvIGEgcGFja2FnZSdzIHByZXZpb3VzIHZlcnNpb24gbnVtYmVyaW5nIHNjaGVtZXMsIHRvIGJlICIKKyJsZWZ0IGJlaGluZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi12ZXJzaW9uLjU6MjQKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiSTx1cHN0cmVhbS12ZXJzaW9uPiIKK21zZ3N0ciAiQjxkcGtnIC0tdmVyc2lvbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6MzQKK21zZ2lkICIiCisiVGhpcyBpcyB0aGUgbWFpbiBwYXJ0IG9mIHRoZSB2ZXJzaW9uIG51bWJlci4gIEl0IGlzIHVzdWFsbHkgdGhlIHZlcnNpb24gIgorIm51bWJlciBvZiB0aGUgb3JpZ2luYWwgKFwidXBzdHJlYW1cIikgIHBhY2thZ2UgZnJvbSB3aGljaCB0aGUgSTwuZGViPiBmaWxlICIKKyJoYXMgYmVlbiBtYWRlLCBpZiB0aGlzIGlzIGFwcGxpY2FibGUuICBVc3VhbGx5IHRoaXMgd2lsbCBiZSBpbiB0aGUgc2FtZSAiCisiZm9ybWF0IGFzIHRoYXQgc3BlY2lmaWVkIGJ5IHRoZSB1cHN0cmVhbSBhdXRob3Iocyk7IGhvd2V2ZXIsIGl0IG1heSBuZWVkIHRvICIKKyJiZSByZWZvcm1hdHRlZCB0byBmaXQgaW50byB0aGUgcGFja2FnZSBtYW5hZ2VtZW50IHN5c3RlbSdzIGZvcm1hdCBhbmQgIgorImNvbXBhcmlzb24gc2NoZW1lLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjM5Cittc2dpZCAiIgorIlRoZSBjb21wYXJpc29uIGJlaGF2aW9yIG9mIHRoZSBwYWNrYWdlIG1hbmFnZW1lbnQgc3lzdGVtIHdpdGggcmVzcGVjdCB0byB0aGUgIgorIkk8dXBzdHJlYW0tdmVyc2lvbj4gaXMgZGVzY3JpYmVkIGJlbG93LiBUaGUgSTx1cHN0cmVhbS12ZXJzaW9uPiBwb3J0aW9uIG9mICIKKyJ0aGUgdmVyc2lvbiBudW1iZXIgaXMgbWFuZGF0b3J5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjQ4Cittc2dpZCAiIgorIlRoZSBJPHVwc3RyZWFtLXZlcnNpb24+IG1heSBjb250YWluIG9ubHkgYWxwaGFudW1lcmljcyAoXCJBLVphLXowLTlcIikgYW5kICIKKyJ0aGUgY2hhcmFjdGVycyBCPC4+IEI8Kz4gQjwtPiBCPDo+IEI8fj4gKGZ1bGwgc3RvcCwgcGx1cywgaHlwaGVuLCBjb2xvbiwgIgorInRpbGRlKSBhbmQgc2hvdWxkIHN0YXJ0IHdpdGggYSBkaWdpdC4gIElmIHRoZXJlIGlzIG5vIEk8ZGViaWFuLXJldmlzaW9uPiAiCisidGhlbiBoeXBoZW5zIGFyZSBub3QgYWxsb3dlZDsgaWYgdGhlcmUgaXMgbm8gSTxlcG9jaD4gdGhlbiBjb2xvbnMgYXJlIG5vdCAiCisiYWxsb3dlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi12ZXJzaW9uLjU6NDgKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiSTxkZWJpYW4tcmV2aXNpb24+IgorbXNnc3RyICJCPC0tdmVyc2lvbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6NTcKK21zZ2lkICIiCisiVGhpcyBwYXJ0IG9mIHRoZSB2ZXJzaW9uIG51bWJlciBzcGVjaWZpZXMgdGhlIHZlcnNpb24gb2YgdGhlIERlYmlhbiBwYWNrYWdlICIKKyJiYXNlZCBvbiB0aGUgdXBzdHJlYW0gdmVyc2lvbi4gIEl0IG1heSBjb250YWluIG9ubHkgYWxwaGFudW1lcmljcyBhbmQgdGhlICIKKyJjaGFyYWN0ZXJzIEI8Kz4gQjwuPiBCPH4+IChwbHVzLCBmdWxsIHN0b3AsIHRpbGRlKSBhbmQgaXMgY29tcGFyZWQgaW4gdGhlICIKKyJzYW1lIHdheSBhcyB0aGUgSTx1cHN0cmVhbS12ZXJzaW9uPiBpcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNTo2NAorbXNnaWQgIiIKKyJJdCBpcyBvcHRpb25hbDsgaWYgaXQgaXNuJ3QgcHJlc2VudCB0aGVuIHRoZSBJPHVwc3RyZWFtLXZlcnNpb24+IG1heSBub3QgIgorImNvbnRhaW4gYSBoeXBoZW4uICBUaGlzIGZvcm1hdCByZXByZXNlbnRzIHRoZSBjYXNlIHdoZXJlIGEgcGllY2Ugb2Ygc29mdHdhcmUgIgorIndhcyB3cml0dGVuIHNwZWNpZmljYWxseSB0byBiZSB0dXJuZWQgaW50byBhIERlYmlhbiBwYWNrYWdlLCBhbmQgc28gdGhlcmUgaXMgIgorIm9ubHkgb25lIFwiZGViaWFuaXNhdGlvblwiIG9mIGl0IGFuZCB0aGVyZWZvcmUgbm8gcmV2aXNpb24gaW5kaWNhdGlvbiBpcyAiCisicmVxdWlyZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6NjgKK21zZ2lkICIiCisiSXQgaXMgY29udmVudGlvbmFsIHRvIHJlc3RhcnQgdGhlIEk8ZGViaWFuLXJldmlzaW9uPiBhdCAnMScgZWFjaCB0aW1lIHRpbWUgIgorInRoZSBJPHVwc3RyZWFtLXZlcnNpb24+IGlzIGluY3JlYXNlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNTo3NgorbXNnaWQgIiIKKyJEcGtnIHdpbGwgYnJlYWsgdGhlIHZlcnNpb24gbnVtYmVyIGFwYXJ0IGF0IHRoZSBsYXN0IGh5cGhlbiBpbiB0aGUgc3RyaW5nICIKKyIoaWYgdGhlcmUgaXMgb25lKSB0byBkZXRlcm1pbmUgdGhlIEk8dXBzdHJlYW0tdmVyc2lvbj4gYW5kIEk8ZGViaWFuLSIKKyJyZXZpc2lvbj4uIFRoZSBhYnNlbmNlIG9mIGEgSTxkZWJpYW4tcmV2aXNpb24+IGNvbXBhcmVzIGVhcmxpZXIgdGhhbiB0aGUgIgorInByZXNlbmNlIG9mIG9uZSAoYnV0IG5vdGUgdGhhdCB0aGUgSTxkZWJpYW4tcmV2aXNpb24+IGlzIHRoZSBsZWFzdCAiCisic2lnbmlmaWNhbnQgcGFydCBvZiB0aGUgdmVyc2lvbiBudW1iZXIpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZGViLXZlcnNpb24uNTo3NgorIywgbm8td3JhcAorbXNnaWQgIlNvcnRpbmcgQWxnb3JpdGhtIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6ODAKK21zZ2lkICIiCisiVGhlIEk8dXBzdHJlYW0tdmVyc2lvbj4gYW5kIEk8ZGViaWFuLXJldmlzaW9uPiBwYXJ0cyBhcmUgY29tcGFyZWQgYnkgdGhlICIKKyJwYWNrYWdlIG1hbmFnZW1lbnQgc3lzdGVtIHVzaW5nIHRoZSBzYW1lIGFsZ29yaXRobToiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNTo4MgorbXNnaWQgIlRoZSBzdHJpbmdzIGFyZSBjb21wYXJlZCBmcm9tIGxlZnQgdG8gcmlnaHQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6OTIKK21zZ2lkICIiCisiRmlyc3QgdGhlIGluaXRpYWwgcGFydCBvZiBlYWNoIHN0cmluZyBjb25zaXN0aW5nIGVudGlyZWx5IG9mIG5vbi1kaWdpdCAiCisiY2hhcmFjdGVycyBpcyBkZXRlcm1pbmVkLiAgVGhlc2UgdHdvIHBhcnRzIChvbmUgb2Ygd2hpY2ggbWF5IGJlIGVtcHR5KSBhcmUgIgorImNvbXBhcmVkIGxleGljYWxseS4gIElmIGEgZGlmZmVyZW5jZSBpcyBmb3VuZCBpdCBpcyByZXR1cm5lZC4gIFRoZSBsZXhpY2FsICIKKyJjb21wYXJpc29uIGlzIGEgY29tcGFyaXNvbiBvZiBBU0NJSSB2YWx1ZXMgbW9kaWZpZWQgc28gdGhhdCBhbGwgdGhlIGxldHRlcnMgIgorInNvcnQgZWFybGllciB0aGFuIGFsbCB0aGUgbm9uLWxldHRlcnMgYW5kIHNvIHRoYXQgYSB0aWxkZSBzb3J0cyBiZWZvcmUgIgorImFueXRoaW5nLCBldmVuIHRoZSBlbmQgb2YgYSBwYXJ0LiAgRm9yIGV4YW1wbGUsIHRoZSBmb2xsb3dpbmcgcGFydHMgYXJlIGluICIKKyJzb3J0ZWQgb3JkZXI6ICd+ficsICd+fmEnLCAnficsIHRoZSBlbXB0eSBwYXJ0LCAnYScuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6MTAwCittc2dpZCAiIgorIlRoZW4gdGhlIGluaXRpYWwgcGFydCBvZiB0aGUgcmVtYWluZGVyIG9mIGVhY2ggc3RyaW5nIHdoaWNoIGNvbnNpc3RzICIKKyJlbnRpcmVseSBvZiBkaWdpdCBjaGFyYWN0ZXJzIGlzIGRldGVybWluZWQuICBUaGUgbnVtZXJpY2FsIHZhbHVlcyBvZiB0aGVzZSAiCisidHdvIHBhcnRzIGFyZSBjb21wYXJlZCwgYW5kIGFueSBkaWZmZXJlbmNlIGZvdW5kIGlzIHJldHVybmVkIGFzIHRoZSByZXN1bHQgIgorIm9mIHRoZSBjb21wYXJpc29uLiAgRm9yIHRoZXNlIHB1cnBvc2VzIGFuIGVtcHR5IHN0cmluZyAod2hpY2ggY2FuIG9ubHkgb2NjdXIgIgorImF0IHRoZSBlbmQgb2Ygb25lIG9yIGJvdGggdmVyc2lvbiBzdHJpbmdzIGJlaW5nIGNvbXBhcmVkKSBjb3VudHMgYXMgemVyby4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNToxMDQKK21zZ2lkICIiCisiVGhlc2UgdHdvIHN0ZXBzIChjb21wYXJpbmcgYW5kIHJlbW92aW5nIGluaXRpYWwgbm9uLWRpZ2l0IHN0cmluZ3MgYW5kICIKKyJpbml0aWFsIGRpZ2l0IHN0cmluZ3MpIGFyZSByZXBlYXRlZCB1bnRpbCBhIGRpZmZlcmVuY2UgaXMgZm91bmQgb3IgYm90aCAiCisic3RyaW5ncyBhcmUgZXhoYXVzdGVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjExMgorbXNnaWQgIiIKKyJOb3RlIHRoYXQgdGhlIHB1cnBvc2Ugb2YgZXBvY2hzIGlzIHRvIGFsbG93IHVzIHRvIGxlYXZlIGJlaGluZCBtaXN0YWtlcyBpbiAiCisidmVyc2lvbiBudW1iZXJpbmcsIGFuZCB0byBjb3BlIHdpdGggc2l0dWF0aW9ucyB3aGVyZSB0aGUgdmVyc2lvbiBudW1iZXJpbmcgIgorInNjaGVtZSBjaGFuZ2VzLiAgSXQgaXMgQjxub3Q+IGludGVuZGVkIHRvIGNvcGUgd2l0aCB2ZXJzaW9uIG51bWJlcnMgIgorImNvbnRhaW5pbmcgc3RyaW5ncyBvZiBsZXR0ZXJzIHdoaWNoIHRoZSBwYWNrYWdlIG1hbmFnZW1lbnQgc3lzdGVtIGNhbm5vdCAiCisiaW50ZXJwcmV0IChzdWNoIGFzICdBTFBIQScgb3IgJ3ByZS0nKSwgb3Igd2l0aCBzaWxseSBvcmRlcmluZ3MuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkZWItdmVyc2lvbi41OjExMiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTA5CisjLCBuby13cmFwCittc2dpZCAiQ0FWRUFUUyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjExNgorbXNnaWQgIiIKKyJUaGUgdGlsZGUgY2hhcmFjdGVyIGFuZCBpdHMgc3BlY2lhbCBzb3J0aW5nIHByb3BlcnRpZXMgd2VyZSBpbnRyb2R1Y2VkIGluICIKKyJkcGtnLCB2ZXJzaW9uIDEuMTAgYW5kIHNvbWUgcGFydHMgb2YgZHBrZy1kZXYgb25seSBnYWluZWQgc3VwcG9ydCBmb3IgaXQgIgorImxhdGVyIGluIHRoZSAxLjEwLnggc2VyaWVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjEyMAorIywgZnV6enkKK21zZ2lkICJCPGRlYi1jb250cm9sPig1KSwgQjxkZWI+KDUpLCBCPGRwa2c+KDEpIgorbXNnc3RyICIiCisiQjxkc2VsZWN0Pig4KSwgQjxkcGtnLWRlYj4oMSksIEI8ZGViPig1KSwgQjxkZWItY29udHJvbD4oNSksIGUgQjxkcGtnLSIKKyJyZWNvbmZpZ3VyZT4oOCkiCisKKyMuIHR5cGU6IFNICisjOiBkZWItdmVyc2lvbi41OjEyMCBkcGtnLjE6NzgzIGRwa2ctYnVpbGRwYWNrYWdlLjE6MjU3IGRwa2ctZGlzdGFkZGZpbGUuMTo0NworIzogZHBrZy1nZW5jaGFuZ2VzLjE6MTQ4IGRwa2ctZ2VuY29udHJvbC4xOjE0MiBkcGtnLWdlbnN5bWJvbHMuMTo0NjAKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MTI4IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxMjMKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MzI5IGRwa2ctc291cmNlLjE6NzMwIGRzZWxlY3QuMTo0NTEKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MzIzIHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0OTQKKyMsIG5vLXdyYXAKK21zZ2lkICJBVVRIT1JTIgorbXNnc3RyICJBVVRPUkVTIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjEyMgorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAxOTk2LDE5OTcsMTk5OCBJYW4gSmFja3NvbiBhbmQgQ2hyaXN0aWFuIFNjaHdhcnoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNToxMjQgZHBrZy1idWlsZHBhY2thZ2UuMToyNjMKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAwNyBGcmFuayBMaWNodGVuaGVsZCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjEyNiBkZWItc3Vic3R2YXJzLjU6MTY3IGRwa2ctYnVpbGRmbGFncy4xOjI3MworIzogZHBrZy1idWlsZHBhY2thZ2UuMToyNjcgZHBrZy1jaGVja2J1aWxkZGVwcy4xOjQ0IGRwa2ctZGlzdGFkZGZpbGUuMTo1MworIzogZHBrZy1kZWIuMToyNjkgZHBrZy1kaXZlcnQuODoxMzkgZHBrZy1nZW5jaGFuZ2VzLjE6MTU0CisjOiBkcGtnLWdlbmNvbnRyb2wuMToxNTAgZHBrZy1nZW5zeW1ib2xzLjE6NDY0IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MTM5CisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjcxIGRwa2ctbmFtZS4xOjEwOCBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTMxCisjOiBkcGtnLXF1ZXJ5LjE6MjE5IGRwa2ctc2hsaWJkZXBzLjE6MzM5IGRwa2ctc291cmNlLjE6NzM4IGRwa2ctc3BsaXQuMToyMjcKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6OTEgZHBrZy12ZW5kb3IuMTo1MyB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NTAxCisjLCBmdXp6eQorbXNnaWQgIiIKKyJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgdmVyc2lvbiAyIG9yIGxhdGVyICIKKyJmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyBXQVJSQU5UWS4iCittc2dzdHIgIiIKKyJEZWJpYW4gdXBkYXRlLWFsdGVybmF0aXZlcyDDqSBjb3B5cmlnaHQgMTk5NSBJYW4gSmFja3Nvbi4gIElzc28gw6kgc29mdHdhcmUgIgorImxpdnJlOyB2ZWphIGEgTGljZW7Dp2EgUMO6YmxpY2EgR2VyYWwgR05VIHZlcnPDo28gMiBvdSBwb3N0ZXJpb3IgcGFyYSBhcyAiCisiY29uZGnDp8O1ZXMgZGUgY8OzcGlhLiBOw4JPIGV4aXN0ZSBnYXJhbnRpYS4iCisKKyMuIHR5cGU6IFRICisjOiBkZWItb2xkLjU6MQorIywgbm8td3JhcAorbXNnaWQgImRlYi1vbGQiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW9sZC41OjQKK21zZ2lkICJkZWItb2xkIC0gb2xkIHN0eWxlIERlYmlhbiBiaW5hcnkgcGFja2FnZSBmb3JtYXQiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW9sZC41OjE3Cittc2dpZCAiIgorIlRoZSBCPC5kZWI+IGZvcm1hdCBpcyB0aGUgRGViaWFuIGJpbmFyeSBwYWNrYWdlIGZpbGUgZm9ybWF0LiBUaGlzIG1hbnVhbCAiCisicGFnZSBkZXNjcmliZXMgdGhlIEI8b2xkPiBmb3JtYXQsIHVzZWQgYmVmb3JlIERlYmlhbiAwLjkzLiBQbGVhc2Ugc2VlIEI8ZGViPiIKKyIoNSkgIGZvciBkZXRhaWxzIG9mIHRoZSBuZXcgZm9ybWF0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb2xkLjU6MjEKK21zZ2lkICIiCisiVGhlIGZpbGUgaXMgdHdvIGxpbmVzIG9mIGZvcm1hdCBpbmZvcm1hdGlvbiBhcyBBU0NJSSB0ZXh0LCBmb2xsb3dlZCBieSB0d28gIgorImNvbmNhdGVuYXRlZCBnemlwcGVkIHVzdGFyIGZpbGVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb2xkLjU6MjUKK21zZ2lkICIiCisiVGhlIGZpcnN0IGxpbmUgaXMgdGhlIGZvcm1hdCB2ZXJzaW9uIG51bWJlciBwYWRkZWQgdG8gOCBkaWdpdHMsIGFuZCBpcyAiCisiQjwwLjkzOTAwMD4gZm9yIGFsbCBvbGQtZm9ybWF0IGFyY2hpdmVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb2xkLjU6MjgKK21zZ2lkICIiCisiVGhlIHNlY29uZCBsaW5lIGlzIGEgZGVjaW1hbCBzdHJpbmcgKHdpdGhvdXQgbGVhZGluZyB6ZXJvZXMpIGdpdmluZyB0aGUgIgorImxlbmd0aCBvZiB0aGUgZmlyc3QgZ3ppcHBlZCB0YXJmaWxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb2xkLjU6MzAKK21zZ2lkICJFYWNoIG9mIHRoZXNlIGxpbmVzIGlzIHRlcm1pbmF0ZWQgd2l0aCBhIHNpbmdsZSBuZXdsaW5lIGNoYXJhY3Rlci4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW9sZC41OjM1Cittc2dpZCAiIgorIlRoZSBmaXJzdCB0YXJmaWxlIGNvbnRhaW5zIHRoZSBjb250cm9sIGluZm9ybWF0aW9uLCBhcyBhIHNlcmllcyBvZiBvcmRpbmFyeSAiCisiZmlsZXMuIFRoZSBmaWxlIEI8Y29udHJvbD4gbXVzdCBiZSBwcmVzZW50LCBhcyBpdCBjb250YWlucyB0aGUgY29yZSBjb250cm9sICIKKyJpbmZvcm1hdGlvbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW9sZC41OjQ2Cittc2dpZCAiIgorIkluIHNvbWUgdmVyeSBvbGQgYXJjaGl2ZXMsIHRoZSBmaWxlcyBpbiB0aGUgY29udHJvbCB0YXJmaWxlIG1heSBvcHRpb25hbGx5ICIKKyJiZSBpbiBhIEI8REVCSUFOPiBzdWJkaXJlY3RvcnkuIEluIHRoYXQgY2FzZSwgdGhlIEI8REVCSUFOPiBzdWJkaXJlY3RvcnkgIgorIndpbGwgYmUgaW4gdGhlIGNvbnRyb2wgdGFyZmlsZSB0b28sIGFuZCB0aGUgY29udHJvbCB0YXJmaWxlIHdpbGwgaGF2ZSBvbmx5ICIKKyJmaWxlcyBpbiB0aGF0IGRpcmVjdG9yeS4gT3B0aW9uYWxseSB0aGUgY29udHJvbCB0YXJmaWxlIG1heSBjb250YWluIGFuIGVudHJ5ICIKKyJmb3IgYEI8Lj4nLCB0aGF0IGlzLCB0aGUgY3VycmVudCBkaXJlY3RvcnkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vbGQuNTo1MAorbXNnaWQgIiIKKyJUaGUgc2Vjb25kIGd6aXBwZWQgdGFyZmlsZSBpcyB0aGUgZmlsZXN5c3RlbSBhcmNoaXZlLCBjb250YWluaW5nIHBhdGhuYW1lcyAiCisicmVsYXRpdmUgdG8gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoZSBzeXN0ZW0gdG8gYmUgaW5zdGFsbGVkIG9uLiBUaGUgIgorInBhdGhuYW1lcyBkbyBub3QgaGF2ZSBsZWFkaW5nIHNsYXNoZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vbGQuNTo1NAorbXNnaWQgIkI8ZGViPig1KSwgQjxkcGtnLWRlYj4oMSksIEI8ZGViLWNvbnRyb2w+KDUpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUSAorIzogZGViLW92ZXJyaWRlLjU6MTUKKyMsIG5vLXdyYXAKK21zZ2lkICJkZWItb3ZlcnJpZGUiCittc2dzdHIgIiIKKworIy4gdHlwZTogVEgKKyM6IGRlYi1vdmVycmlkZS41OjE1IGRlYi1leHRyYS1vdmVycmlkZS41OjEgZGViLXNobGlicy41OjE2IGRlYi1zdWJzdHZhcnMuNToyCisjOiBkZWItc3ltYm9scy41OjIgZGViLXRyaWdnZXJzLjU6MSBkcGtnLWFyY2hpdGVjdHVyZS4xOjEKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MSBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6MSBkcGtnLWRpc3RhZGRmaWxlLjE6MQorIzogZHBrZy1kaXZlcnQuODoxIGRwa2ctZ2VuY2hhbmdlcy4xOjEgZHBrZy1nZW5jb250cm9sLjE6MSBkcGtnLWdlbnN5bWJvbHMuMToyCisjOiBkcGtnLW5hbWUuMTo2IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxIGRwa2ctc2NhbnBhY2thZ2VzLjE6MTUKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMToxIGRwa2ctc2hsaWJkZXBzLjE6MSBkcGtnLXNvdXJjZS4xOjIgZHBrZy1zcGxpdC4xOjIKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6MSBzdGFydC1zdG9wLWRhZW1vbi44OjEgdXBkYXRlLWFsdGVybmF0aXZlcy44OjgKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnIHV0aWxpdGllcyIKK21zZ3N0ciAidXRpbGl0w6FyaW9zIGRwa2ciCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vdmVycmlkZS41OjE4Cittc2dpZCAiZGViLW92ZXJyaWRlIC0gRGViaWFuIGFyY2hpdmUgb3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb3ZlcnJpZGUuNToyMSBkZWItZXh0cmEtb3ZlcnJpZGUuNTo3Cittc2dpZCAib3ZlcnJpZGUiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW92ZXJyaWRlLjU6MjcKK21zZ2lkICIiCisiV2hpbGUgbW9zdCBpbmZvcm1hdGlvbiBhYm91dCBhIHBhY2thZ2UgY2FuIGJlIGZvdW5kIGluIHRoZSBjb250cm9sIGZpbGUsICIKKyJzb21lIGlzIG1hbmFnZWQgY2VudHJhbGx5IGJ5IHRoZSBkaXN0cmlidXRpb24gY3phcnMgcmF0aGVyIHRoYW4gYnkgdGhlICIKKyJtYWludGFpbmVyIGluIG9yZGVyIHRvIG9mZmVyIHNvbWUgZ2xvYmFsIGNvbnNpc3RlbmN5LiAgVGhpcyBpbmZvcm1hdGlvbiBpcyAiCisiZm91bmQgaW4gdGhlIG92ZXJyaWRlIGZpbGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vdmVycmlkZS41OjMxCittc2dpZCAiIgorIlRoZSBvdmVycmlkZSBmaWxlIGhhcyBhIHNpbXBsZSB3aGl0ZXNwYWNlLWRlbGltaXRlZCBmb3JtYXQuIENvbW1lbnRzIGFyZSAiCisiYWxsb3dlZCAoZGVub3RlZCB3aXRoIGEgQjwjPikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vdmVycmlkZS41OjM3Cittc2dpZCAiSTxwYWNrYWdlPiBJPHByaW9yaXR5PiBJPHNlY3Rpb24+IFtJPG1haW50YWluZXJpbmZvPl0iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW92ZXJyaWRlLjU6NDIKK21zZ2lkICIiCisiSTxwYWNrYWdlPiBpcyB0aGUgbmFtZSBvZiB0aGUgcGFja2FnZS4gRW50cmllcyBpbiB0aGUgb3ZlcnJpZGUgZmlsZSBmb3IgIgorInBhY2thZ2VzIG5vdCBmb3VuZCBpbiB0aGUgdHJlZSBvZiBiaW5hcnkgcGFja2FnZXMgYXJlIGlnbm9yZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vdmVycmlkZS41OjQ4Cittc2dpZCAiIgorIkk8cHJpb3JpdHk+IGFuZCBJPHNlY3Rpb24+IGNvcnJlc3BvbmQgdG8gdGhlIHJlc3BlY3RpdmUgY29udHJvbCBmaWVsZHMgIgorImF2YWlsYWJsZSBpbiB0aGUgLmRlYi4gVGhlIGFsbG93ZWQgdmFsdWVzIGFyZSBsaXN0ZWQgaW4gdGhlIERlYmlhbiBwb2xpY3kuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vdmVycmlkZS41OjU2Cittc2dpZCAiIgorIkk8bWFpbnRhaW5lcmluZm8+LCBpZiBwcmVzZW50LCBjYW4gYmUgZWl0aGVyIHRoZSBuYW1lIG9mIGEgbWFpbnRhaW5lciBmb3IgYW4gIgorInVuY29uZGl0aW9uYWwgb3ZlcnJpZGUsIG9yIGVsc2UgSTxvbGRtYWludGFpbmVyPiBCPD1FPGd0Pj4gSTxuZXdtYWludGFpbmVyPiAiCisidG8gcGVyZm9ybSBhIHN1YnN0aXR1dGlvbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW92ZXJyaWRlLjU6NjEKK21zZ2lkICIiCisiVGhlIG92ZXJyaWRlIGZpbGVzIHVzZWQgdG8gbWFrZSB0aGUgb2ZmaWNpYWwgUGFja2FnZXMgbGlzdHMgbWF5IGJlIGZvdW5kIGluICIKKyJ0aGUgSTxpbmRpY2VzPiBkaXJlY3Rvcnkgb24gYW55IERlYmlhbiBtaXJyb3IuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vdmVycmlkZS41OjY2Cittc2dpZCAiIgorIkI8ZHBrZy1zY2FucGFja2FnZXM+KDEpLCBCPGRwa2ctc2NhbnNvdXJjZXM+KDEpLCBCPGFwdC1mdHBhcmNoaXZlPigxKSwgQjwvIgorInVzci9zaGFyZS9kb2MvZGViaWFuLXBvbGljeS9wb2xpY3kuaHRtbC9pbmRleC5odG1sPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVEgKKyM6IGRlYi1leHRyYS1vdmVycmlkZS41OjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkZWItZXh0cmEtb3ZlcnJpZGUiCittc2dzdHIgIiIKKworIy4gdHlwZTogVEgKKyM6IGRlYi1leHRyYS1vdmVycmlkZS41OjEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiMjAwOS0wOC0xNiIKK21zZ3N0ciAiMjAwNi0wNC0wOSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWV4dHJhLW92ZXJyaWRlLjU6NAorbXNnaWQgImRlYi1leHRyYS1vdmVycmlkZSAtIERlYmlhbiBhcmNoaXZlIGV4dHJhIG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWV4dHJhLW92ZXJyaWRlLjU6MTIKK21zZ2lkICIiCisiV2hpbGUgbW9zdCBpbmZvcm1hdGlvbiBhYm91dCBhIGJpbmFyeS9zb3VyY2UgcGFja2FnZSBjYW4gYmUgZm91bmQgaW4gdGhlICIKKyJjb250cm9sLy5kc2MgZmlsZSwgYWxsIG9mIGl0IGNhbiBiZSBvdmVycmlkZGVuIHdoZW4gaXQncyBleHBvcnRlZCB0byAiCisiUGFja2FnZXMvU291cmNlcyBmaWxlcy4gVGhlIGV4dHJhIG92ZXJyaWRlIGZpbGUgY29udGFpbnMgdGhvc2Ugb3ZlcnJpZGVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItZXh0cmEtb3ZlcnJpZGUuNToxNgorbXNnaWQgIiIKKyJUaGUgZXh0cmEgb3ZlcnJpZGUgZmlsZSBoYXMgYSBzaW1wbGUgd2hpdGVzcGFjZS1kZWxpbWl0ZWQgZm9ybWF0LiBDb21tZW50cyAiCisiYXJlIGFsbG93ZWQgKGRlbm90ZWQgd2l0aCBhIEI8Iz4pLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItZXh0cmEtb3ZlcnJpZGUuNToyMQorIywgZnV6enkKK21zZ2lkICJJPHBhY2thZ2U+IEk8ZmllbGQtbmFtZT4gSTx2YWx1ZT4iCittc2dzdHIgIkI8LUQ+STxvY3RhbD5CPCB8IC0tZGVidWc9Pkk8b2N0YWw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItZXh0cmEtb3ZlcnJpZGUuNToyNQorbXNnaWQgIkk8cGFja2FnZT4gaXMgdGhlIG5hbWUgb2YgdGhlIGJpbmFyeS9zb3VyY2UgcGFja2FnZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWV4dHJhLW92ZXJyaWRlLjU6MzEKK21zZ2lkICIiCisiSTxmaWVsZC1uYW1lPiBpcyB0aGUgbmFtZSBvZiB0aGUgZmllbGQgdGhhdCBpcyBvdmVycmlkZGVuLiAgSTx2YWx1ZT4gaXMgdGhlICIKKyJ2YWx1ZSB0byBwdXQgaW4gdGhlIGZpZWxkLiBJdCBjYW4gY29udGFpbiBzcGFjZXMgYXMgdGhlIGxpbmUgaXMgc3BsaXQgaW4gbm8gIgorIm1vcmUgdGhhbiAzIGNvbHVtbnMgd2hlbiBpdCdzIHBhcnNlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWV4dHJhLW92ZXJyaWRlLjU6MzYKK21zZ2lkICIiCisiVGhlIGV4dHJhIG92ZXJyaWRlIGZpbGVzIHVzZWQgdG8gbWFrZSB0aGUgb2ZmaWNpYWwgUGFja2FnZXMgbGlzdHMgbWF5IGJlICIKKyJmb3VuZCBpbiB0aGUgSTxpbmRpY2VzPiBkaXJlY3Rvcnkgb24gYW55IERlYmlhbiBtaXJyb3IuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1leHRyYS1vdmVycmlkZS41OjQwCittc2dpZCAiQjxkcGtnLXNjYW5wYWNrYWdlcz4oMSksIEI8ZHBrZy1zY2Fuc291cmNlcz4oMSksIEI8YXB0LWZ0cGFyY2hpdmU+KDEpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUSAorIzogZGViLXNobGlicy41OjE2CisjLCBuby13cmFwCittc2dpZCAiZGViLXNobGlicyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUSAorIzogZGViLXNobGlicy41OjE2CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIjIwMDgtMDItMTciCittc2dzdHIgIjIwMDYtMDQtMDkiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zaGxpYnMuNToxOQorbXNnaWQgImRlYi1zaGxpYnMgLSBEZWJpYW4gc2hhcmVkIGxpYnJhcnkgaW5mb3JtYXRpb24gZmlsZSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc2hsaWJzLjU6MjkKK21zZ2lkICIiCisiQjxzaGxpYnM+IGZpbGVzIG1hcCBzaGFyZWQgbGlicmFyeSBuYW1lcyBhbmQgdmVyc2lvbnMgKEk8c29uYW1lcz4pICB0byAiCisiZGVwZW5kZW5jaWVzIHN1aXRhYmxlIGZvciBhIHBhY2thZ2UgY29udHJvbCBmaWxlLiAgVGhlcmUgaXMgb25lIGVudHJ5IHBlciAiCisibGluZS4gQmxhbmsgbGluZXMgYXJlIEI8bm90PiBhbGxvd2VkLiAgTGluZXMgYmVnaW5uaW5nIHdpdGggYW4gQjwjPiAiCisiY2hhcmFjdGVyIGFyZSBjb25zaWRlcmVkIGNvbW1lbnRhcnksIGFuZCBhcmUgaWdub3JlZC4gIEFsbCBvdGhlciBsaW5lcyBtdXN0ICIKKyJoYXZlIHRoZSBmb3JtYXQiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNobGlicy41OjM0Cittc2dpZCAiW0k8dHlwZT5CPDo+XSBJPGxpYnJhcnk+IEk8dmVyc2lvbj4gSTxkZXBlbmRlbmNpZXM+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zaGxpYnMuNTozOAorbXNnaWQgIiIKKyJUaGUgSTxsaWJyYXJ5PiBhbmQgSTx2ZXJzaW9uPiBmaWVsZHMgYXJlIHdoaXRlc3BhY2UtZGVsaW1pdGVkLCBidXQgdGhlICIKKyJJPGRlcGVuZGVuY2llcz4gZmllbGQgZXh0ZW5kcyB0byB0aGUgZW5kIG9mIHRoZSBsaW5lLiAgVGhlIEk8dHlwZT4gZmllbGQgaXMgIgorIm9wdGlvbmFsIGFuZCBub3JtYWxseSBub3QgbmVlZGVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc2hsaWJzLjU6NDAKK21zZ2lkICJTZWUgdGhlIERlYmlhbiBQb2xpY3kgTWFudWFsIGZvciBmdXJ0aGVyIGRldGFpbHMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkZWItc2hsaWJzLjU6NDEgZGViLXN5bWJvbHMuNTo0MyBkcGtnLjE6NzE0IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjYyCisjOiBkcGtnLWRpdmVydC44OjkxIGRwa2ctbmFtZS4xOjY1IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0NTkKKyMsIG5vLXdyYXAKK21zZ2lkICJFWEFNUExFUyIKK21zZ3N0ciAiRVhFTVBMT1MiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zaGxpYnMuNTo1MAorbXNnaWQgIiIKKyJUaGUgQjxzaGxpYnM+IGZpbGUgZm9yIGEgdHlwaWNhbCBsaWJyYXJ5IHBhY2thZ2UsIG5hbWVkIEk8bGliY3J1bmNoMT4sIHRoYXQgIgorInByb3ZpZGVzIG9uZSBsaWJyYXJ5IHdob3NlIHNvbmFtZSBpcyBJPGxpYmNydW5jaC5zby4xPiwgbWlnaHQgcmVhZCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc2hsaWJzLjU6NTIKK21zZ2lkICJsaWJjcnVuY2ggMSBsaWJjcnVuY2gxIChFPGd0Pj0gMS4yLTEpIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zaGxpYnMuNTo2MAorbXNnaWQgIiIKKyJUaGUgSTxkZXBlbmRlbmNpZXM+IG11c3QgbWVudGlvbiB0aGUgbW9zdCByZWNlbnQgdmVyc2lvbiBvZiB0aGUgcGFja2FnZSB0aGF0ICIKKyJhZGRlZCBuZXcgc3ltYm9scyB0byB0aGUgbGlicmFyeTogaW4gdGhlIGFib3ZlIGV4YW1wbGUsIG5ldyBzeW1ib2xzIHdlcmUgIgorImFkZGVkIHRvIHZlcnNpb24gMS4yIG9mIEk8bGliY3J1bmNoPi4gIFRoaXMgaXMgbm90IHRoZSBvbmx5IHJlYXNvbiB0aGUgIgorImRlcGVuZGVuY2llcyBtaWdodCBuZWVkIHRvIGJlIHRpZ2h0ZW5lZDsgYWdhaW4sIHNlZSB0aGUgRGViaWFuIFBvbGljeSBNYW51YWwgIgorImZvciBkZXRhaWxzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc2hsaWJzLjU6NjMKKyMsIGZ1enp5Cittc2dpZCAiQjxkcGtnLXNobGliZGVwcz4oMSksIEI8ZGViLXN5bWJvbHM+KDUpLiIKK21zZ3N0ciAiQjxkcGtnLWRlYi1hY3Rpb25zPiIKKworIy4gdHlwZTogVEgKKyM6IGRlYi1zdWJzdHZhcnMuNToyCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgImRlYi1zdWJzdHZhcnMiCittc2dzdHIgIkI8ZGVpbnN0YWxsPiIKKworIy4gdHlwZTogVEgKKyM6IGRlYi1zdWJzdHZhcnMuNToyCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIjIwMDktMDctMTUiCittc2dzdHIgIjIwMDYtMDQtMDkiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNTo1Cittc2dpZCAiZGViLXN1YnN0dmFycyAtIERlYmlhbiBzb3VyY2Ugc3Vic3RpdHV0aW9uIHZhcmlhYmxlcyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6OAorIywgZnV6enkKK21zZ2lkICJzdWJzdHZhcnMiCittc2dzdHIgIkI8ZGVpbnN0YWxsPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjE5Cittc2dpZCAiIgorIkJlZm9yZSBCPGRwa2ctc291cmNlPiwgQjxkcGtnLWdlbmNvbnRyb2w+IGFuZCBCPGRwa2ctZ2VuY2hhbmdlcz4gd3JpdGUgdGhlaXIgIgorImNvbnRyb2wgaW5mb3JtYXRpb24gKHRvIHRoZSBzb3VyY2UgY29udHJvbCBmaWxlIEI8LmRzYz4gZm9yIEI8ZHBrZy1zb3VyY2U+ICIKKyJhbmQgdG8gc3RhbmRhcmQgb3V0cHV0IGZvciBCPGRwa2ctZ2VuY29udHJvbD4gYW5kIEI8ZHBrZy1nZW5jaGFuZ2VzPikgIHRoZXkgIgorInBlcmZvcm0gc29tZSB2YXJpYWJsZSBzdWJzdGl0dXRpb25zIG9uIHRoZSBvdXRwdXQgZmlsZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjI2Cittc2dpZCAiIgorIkEgdmFyaWFibGUgc3Vic3RpdHV0aW9uIGhhcyB0aGUgZm9ybSBCPCR7Pkk8dmFyaWFibGUtbmFtZT5CPH0+LiAgVmFyaWFibGUgIgorIm5hbWVzIGNvbnNpc3Qgb2YgYWxwaGFudW1lcmljcywgaHlwaGVucyBhbmQgY29sb25zIGFuZCBzdGFydCB3aXRoIGFuICIKKyJhbHBoYW51bWVyaWMuIFZhcmlhYmxlIHN1YnN0aXR1dGlvbnMgYXJlIHBlcmZvcm1lZCByZXBlYXRlZGx5IHVudGlsIG5vbmUgYXJlICIKKyJsZWZ0OyB0aGUgZnVsbCB0ZXh0IG9mIHRoZSBmaWVsZCBhZnRlciB0aGUgc3Vic3RpdHV0aW9uIGlzIHJlc2Nhbm5lZCB0byBsb29rICIKKyJmb3IgbW9yZSBzdWJzdGl0dXRpb25zLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MzMKK21zZ2lkICIiCisiQWZ0ZXIgYWxsIHRoZSBzdWJzdGl0dXRpb25zIGhhdmUgYmVlbiBkb25lIGVhY2ggb2NjdXJyZW5jZSBvZiB0aGUgc3RyaW5nIEI8IgorIiR7fT4gKHdoaWNoIGlzIG5vdCBhIGxlZ2FsIHN1YnN0aXR1dGlvbikgaXMgcmVwbGFjZWQgd2l0aCBhIEI8JD4gc2lnbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjM4Cittc2dpZCAiIgorIldoaWxlIHZhcmlhYmxlIHN1YnN0aXR1dGlvbiBpcyBkb25lIG9uIGFsbCBjb250cm9sIGZpZWxkcywgc29tZSBvZiB0aG9zZSAiCisiZmllbGRzIGFyZSB1c2VkIGFuZCBuZWVkZWQgZHVyaW5nIHRoZSBidWlsZCB3aGVuIHRoZSBzdWJzdGl0dXRpb24gZGlkIG5vdCAiCisieWV0IG9jY3VyLiBUaGF0J3Mgd2h5IHlvdSBjYW4ndCB1c2UgdmFyaWFibGVzIGluIHRoZSBCPFBhY2thZ2U+LCBCPFNvdXJjZT4gIgorImFuZCBCPEFyY2hpdGVjdHVyZT4gZmllbGRzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6NDUKK21zZ2lkICIiCisiVmFyaWFibGUgc3Vic3RpdHV0aW9uIGhhcHBlbnMgb24gdGhlIGNvbnRlbnQgb2YgdGhlIGZpZWxkcyBhZnRlciB0aGV5IGhhdmUgIgorImJlZW4gcGFyc2VkLCB0aHVzIGlmIHlvdSB3YW50IGEgdmFyaWFibGUgdG8gZXhwYW5kIG92ZXIgbXVsdGlwbGUgbGluZXMgeW91ICIKKyJkbyBub3QgaGF2ZSB0byBpbmNsdWRlIGEgc3BhY2UgYWZ0ZXIgdGhlIG5ld2xpbmUuIFRoaXMgaXMgZG9uZSBpbXBsaWNpdGx5ICIKKyJ3aGVuIHRoZSBmaWVsZCBpcyBvdXRwdXQuIEZvciBleGFtcGxlLCBpZiB0aGUgdmFyaWFibGUgQjwke0Rlc2NyaXB0aW9ufT4gaXMgIgorInNldCB0byBcImZvbyBpcyBiYXIuJHtOZXdsaW5lfWZvbyBpcyBncmVhdC5cIiBhbmQgaWYgeW91IGhhdmUgdGhlIGZvbGxvd2luZyAiCisiZmllbGQ6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNTo1MAorIywgbm8td3JhcAorbXNnaWQgIiIKKyIgRGVzY3JpcHRpb246IGZvbyBhcHBsaWNhdGlvblxuIgorIiAgJHtEZXNjcmlwdGlvbn1cbiIKKyIgIC5cbiIKKyIgIE1vcmUgdGV4dC5cbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6NTIKK21zZ2lkICJJdCB3aWxsIHJlc3VsdCBpbjoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjU4CisjLCBuby13cmFwCittc2dpZCAiIgorIiBEZXNjcmlwdGlvbjogZm9vIGFwcGxpY2F0aW9uXG4iCisiICBmb28gaXMgYmFyLlxuIgorIiAgZm9vIGlzIGdyZWF0LlxuIgorIiAgLlxuIgorIiAgTW9yZSB0ZXh0LlxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNTo3MQorbXNnaWQgIiIKKyJWYXJpYWJsZXMgY2FuIGJlIHNldCB1c2luZyB0aGUgQjwtVj4gY29tbW9uIG9wdGlvbi4gVGhleSBjYW4gYmUgYWxzbyAiCisic3BlY2lmaWVkIGluIHRoZSBmaWxlIEI8ZGViaWFuL3N1YnN0dmFycz4gKG9yIHdoYXRldmVyIG90aGVyIGZpbGUgaXMgIgorInNwZWNpZmllZCB1c2luZyB0aGUgQjwtVD4gb3B0aW9uKS4gVGhpcyBmaWxlIGNvbnNpc3RzIG9mIGxpbmVzIG9mIHRoZSBmb3JtICIKKyJJPG5hbWU+Qjw9Pkk8dmFsdWU+LiAgVHJhaWxpbmcgd2hpdGVzcGFjZSBvbiBlYWNoIGxpbmUsIGJsYW5rIGxpbmVzLCBhbmQgIgorImxpbmVzIHN0YXJ0aW5nIHdpdGggYSBCPCM+IHN5bWJvbCAoY29tbWVudHMpIGFyZSBpZ25vcmVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6NzMKK21zZ2lkICJBZGRpdGlvbmFsbHksIHRoZSBmb2xsb3dpbmcgc3RhbmRhcmQgdmFyaWFibGVzIGFyZSBhdmFpbGFibGU6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3Vic3R2YXJzLjU6NzMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPEFyY2g+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNTo3NworbXNnaWQgIlRoZSBjdXJyZW50IGJ1aWxkIGFyY2hpdGVjdHVyZSAoZnJvbSBCPGRwa2cgLS1wcmludC1hcmNoaXRlY3R1cmU+KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zdWJzdHZhcnMuNTo3NworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPHNvdXJjZTpWZXJzaW9uPiIKK21zZ3N0ciAiQjwtLXZlcnNpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6ODAKK21zZ2lkICJUaGUgc291cmNlIHBhY2thZ2UgdmVyc2lvbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zdWJzdHZhcnMuNTo4MAorIywgbm8td3JhcAorbXNnaWQgIkI8c291cmNlOlVwc3RyZWFtLVZlcnNpb24+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNTo4NAorbXNnaWQgIiIKKyJUaGUgdXBzdHJlYW0gc291cmNlIHBhY2thZ2UgdmVyc2lvbiwgaW5jbHVkaW5nIHRoZSBEZWJpYW4gdmVyc2lvbiBlcG9jaCBpZiAiCisiYW55LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLXN1YnN0dmFycy41Ojg0CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8YmluYXJ5OlZlcnNpb24+IgorbXNnc3RyICJCPC0tdmVyc2lvbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNTo4OAorbXNnaWQgIiIKKyJUaGUgYmluYXJ5IHBhY2thZ2UgdmVyc2lvbiAod2hpY2ggbWF5IGRpZmZlciBmcm9tIHNvdXJjZTpWZXJzaW9uIGluIGEgYmluTk1VICIKKyJmb3IgZXhhbXBsZSkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3Vic3R2YXJzLjU6ODgKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxTb3VyY2UtVmVyc2lvbj4iCittc2dzdHIgIkI8LS12ZXJzaW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjkzCittc2dpZCAiIgorIlRoZSBzb3VyY2UgcGFja2FnZSB2ZXJzaW9uIChmcm9tIHRoZSBjaGFuZ2Vsb2cgZmlsZSkuIFRoaXMgdmFyaWFibGUgaXMgbm93ICIKKyJCPGRlcHJlY2F0ZWQ+IGFzIGl0cyBtZWFuaW5nIGlzIGRpZmZlcmVudCBmcm9tIGl0cyBmdW5jdGlvbiwgcGxlYXNlIHVzZSB0aGUgIgorIkI8c291cmNlOlZlcnNpb24+IG9yIEI8YmluYXJ5OlZlcnNpb24+IGFzIGFwcHJvcHJpYXRlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLXN1YnN0dmFycy41OjkzCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8SW5zdGFsbGVkLVNpemU+IgorbXNnc3RyICJCPGluc3RhbGxlZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToxMDIKK21zZ2lkICIiCisiVGhlIHRvdGFsIHNpemUgb2YgdGhlIHBhY2thZ2UncyBpbnN0YWxsZWQgZmlsZXMuIFRoaXMgdmFsdWUgaXMgY29waWVkIGludG8gIgorInRoZSBjb3JyZXNwb25kaW5nIGNvbnRyb2wgZmlsZSBmaWVsZDsgc2V0dGluZyBpdCB3aWxsIG1vZGlmeSB0aGUgdmFsdWUgb2YgIgorInRoYXQgZmllbGQuIElmIHRoaXMgdmFyaWFibGUgaXNuJ3Qgc2V0IEI8ZHBrZy1nZW5jb250cm9sPiB3aWxsIHVzZSBCPGR1IC1rICIKKyJkZWJpYW4vdG1wPiB0byBmaW5kIHRoZSBkZWZhdWx0IHZhbHVlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLXN1YnN0dmFycy41OjEwMgorIywgbm8td3JhcAorbXNnaWQgIkI8RXh0cmEtU2l6ZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjExMQorbXNnaWQgIiIKKyJBZGRpdGlvbmFsIGRpc2sgc3BhY2UgdXNlZCB3aGVuIHRoZSBwYWNrYWdlIGlzIGluc3RhbGxlZC4gSWYgdGhpcyB2YXJpYWJsZSAiCisiaXMgc2V0IGl0cyB2YWx1ZSBpcyBhZGRlZCB0byB0aGF0IG9mIHRoZSBCPEluc3RhbGxlZC1TaXplPiB2YXJpYWJsZSAod2hldGhlciAiCisic2V0IGV4cGxpY2l0bHkgb3IgdXNpbmcgdGhlIGRlZmF1bHQgdmFsdWUpIGJlZm9yZSBpdCBpcyBjb3BpZWQgaW50byB0aGUgIgorIkI8SW5zdGFsbGVkLVNpemU+IGNvbnRyb2wgZmlsZSBmaWVsZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zdWJzdHZhcnMuNToxMTEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxGOj5JPGZpZWxkbmFtZT4iCittc2dzdHIgIkI8LS1sb2c9Pkk8ZmlsZW5hbWU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MTE4Cittc2dpZCAiIgorIlRoZSB2YWx1ZSBvZiB0aGUgb3V0cHV0IGZpZWxkIEk8ZmllbGRuYW1lPiAod2hpY2ggbXVzdCBiZSBnaXZlbiBpbiB0aGUgIgorImNhbm9uaWNhbCBjYXBpdGFsaXNhdGlvbikuIFNldHRpbmcgdGhlc2UgdmFyaWFibGVzIGhhcyBubyBlZmZlY3Qgb3RoZXIgdGhhbiAiCisib24gcGxhY2VzIHdoZXJlIHRoZXkgYXJlIGV4cGFuZGVkIGV4cGxpY2l0bHkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3Vic3R2YXJzLjU6MTE4CisjLCBuby13cmFwCittc2dpZCAiQjxGb3JtYXQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToxMjgKK21zZ2lkICIiCisiVGhlIEI8LmNoYW5nZXM+IGZpbGUgZm9ybWF0IHZlcnNpb24gZ2VuZXJhdGVkIGJ5IHRoaXMgdmVyc2lvbiBvZiB0aGUgc291cmNlICIKKyJwYWNrYWdpbmcgc2NyaXB0cy4gSWYgeW91IHNldCB0aGlzIHZhcmlhYmxlIHRoZSBjb250ZW50cyBvZiB0aGUgQjxGb3JtYXQ+ICIKKyJmaWVsZCBpbiB0aGUgQjwuY2hhbmdlcz4gZmlsZSB3aWxsIGNoYW5nZSB0b28uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3Vic3R2YXJzLjU6MTI4CisjLCBuby13cmFwCittc2dpZCAiQjxOZXdsaW5lPiwgQjxTcGFjZT4sIEI8VGFiPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MTMxCittc2dpZCAiVGhlc2UgdmFyaWFibGVzIGVhY2ggaG9sZCB0aGUgY29ycmVzcG9uZGluZyBjaGFyYWN0ZXIuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3Vic3R2YXJzLjU6MTMxCisjLCBuby13cmFwCittc2dpZCAiQjxzaGxpYnM6Pkk8ZGVwZW5kZW5jeWZpZWxkPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MTM1Cittc2dpZCAiIgorIlZhcmlhYmxlIHNldHRpbmdzIHdpdGggbmFtZXMgb2YgdGhpcyBmb3JtIGFyZSBnZW5lcmF0ZWQgYnkgQjxkcGtnLXNobGliZGVwcz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3Vic3R2YXJzLjU6MTM1CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8ZHBrZzpVcHN0cmVhbS1WZXJzaW9uPiIKK21zZ3N0ciAiQjxkcGtnIC0tdmVyc2lvbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToxMzgKK21zZ2lkICJUaGUgdXBzdHJlYW0gdmVyc2lvbiBvZiBkcGtnLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLXN1YnN0dmFycy41OjEzOAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPGRwa2c6VmVyc2lvbj4iCittc2dzdHIgIkI8ZHBrZyAtLXZlcnNpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MTQxCittc2dpZCAiVGhlIGZ1bGwgdmVyc2lvbiBvZiBkcGtnLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MTQ0Cittc2dpZCAiIgorIklmIGEgdmFyaWFibGUgaXMgcmVmZXJyZWQgdG8gYnV0IG5vdCBkZWZpbmVkIGl0IGdlbmVyYXRlcyBhIHdhcm5pbmcgYW5kIGFuICIKKyJlbXB0eSB2YWx1ZSBpcyBhc3N1bWVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZGViLXN1YnN0dmFycy41OjE0NSBkcGtnLjE6NjI3IGRwa2ctYXJjaGl0ZWN0dXJlLjE6Mjg0IGRwa2cuY2ZnLjU6MTIKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEyMSBkcGtnLWRpc3RhZGRmaWxlLjE6MzkgZHBrZy1kaXZlcnQuODoxMjIKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjEzOCBkcGtnLWdlbmNvbnRyb2wuMToxMjggZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjExNQorIzogZHBrZy1zcGxpdC4xOjIwNiBkcGtnLXN0YXRvdmVycmlkZS44Ojc0IGRzZWxlY3QuY2ZnLjU6MTIKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozNjAKKyMsIG5vLXdyYXAKK21zZ2lkICJGSUxFUyIKK21zZ3N0ciAiQVJRVUlWT1MiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3Vic3R2YXJzLjU6MTQ2CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8ZGViaWFuL3N1YnN0dmFycz4iCittc2dzdHIgIkI8ZGVpbnN0YWxsPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjE0OQorIywgZnV6enkKK21zZ2lkICJMaXN0IG9mIHN1YnN0aXR1dGlvbiB2YXJpYWJsZXMgYW5kIHZhbHVlcy4iCittc2dzdHIgIkxpc3RhIGRvcyBwYWNvdGVzIGRpc3BvbsOtdmVpcy4iCisKKyMuIHR5cGU6IFNICisjOiBkZWItc3Vic3R2YXJzLjU6MTUwIGRwa2cuMTo3ODAgZHBrZy1idWlsZHBhY2thZ2UuMToyNDQgZHBrZy1kZWIuMToyMzgKKyM6IGRwa2ctbmFtZS4xOjg2IGRwa2ctc291cmNlLjE6NzIyIGRwa2ctc3BsaXQuMToxOTkgZHNlbGVjdC4xOjQyOQorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQ4NgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCVUdTIgorbXNnc3RyICJCVUdTIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MTUzIGRwa2ctc291cmNlLjE6NzI1Cittc2dpZCAiIgorIlRoZSBwb2ludCBhdCB3aGljaCBmaWVsZCBvdmVycmlkaW5nIG9jY3VycyBjb21wYXJlZCB0byBjZXJ0YWluIHN0YW5kYXJkICIKKyJvdXRwdXQgZmllbGQgc2V0dGluZ3MgaXMgcmF0aGVyIGNvbmZ1c2VkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MTYwCisjLCBmdXp6eQorbXNnaWQgIiIKKyJCPGRwa2c+KDEpLCBCPGRwa2ctZ2VuY2hhbmdlcz4oMSksIEI8ZHBrZy1nZW5jb250cm9sPigxKSwgQjxkcGtnLXNobGliZGVwcz4iCisiKDEpLCBCPGRwa2ctc291cmNlPigxKS4iCittc2dzdHIgIiIKKyJCPGRzZWxlY3Q+KDgpLCBCPGRwa2ctZGViPigxKSwgQjxkZWI+KDUpLCBCPGRlYi1jb250cm9sPig1KSwgZSBCPGRwa2ctIgorInJlY29uZmlndXJlPig4KSIKKworIy4gdHlwZTogU0gKKyM6IGRlYi1zdWJzdHZhcnMuNToxNjEgZHBrZy1hcmNoaXRlY3R1cmUuMTozMDMgZHBrZy5jZmcuNToxOQorIzogZHBrZy1idWlsZGZsYWdzLjE6MjY2IGRwa2ctY2hlY2tidWlsZGRlcHMuMTo0MCBkcGtnLWRlYi4xOjI2NQorIzogZHBrZy1kaXZlcnQuODoxMzUgZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTo2NiBkcGtnLW5hbWUuMToxMDQKKyM6IGRwa2ctcXVlcnkuMToyMTQgZHBrZy1zY2Fuc291cmNlcy4xOjc2IGRwa2ctc3BsaXQuMToyMjMKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6ODcgZHBrZy12ZW5kb3IuMTo0OCBkc2VsZWN0LmNmZy41OjE5CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkFVVEhPUiIKK21zZ3N0ciAiQVVUT1IiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToxNjMgZHBrZy1idWlsZHBhY2thZ2UuMToyNTkgZHBrZy1kaXN0YWRkZmlsZS4xOjQ5CisjOiBkcGtnLWRlYi4xOjI2NyBkcGtnLWdlbmNoYW5nZXMuMToxNTAgZHBrZy1nZW5jb250cm9sLjE6MTQ0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTI1IGRwa2ctc2hsaWJkZXBzLjE6MzMxIGRwa2ctc291cmNlLjE6NzMyCisjOiBkcGtnLXNwbGl0LjE6MjI1Cittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDE5OTUtMTk5NiBJYW4gSmFja3NvbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MTY1IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjYxIGRwa2ctZGlzdGFkZGZpbGUuMTo1MQorIzogZHBrZy1nZW5jaGFuZ2VzLjE6MTUyIGRwa2ctZ2VuY29udHJvbC4xOjE0NiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTI3CisjOiBkcGtnLXNobGliZGVwcy4xOjMzMyBkcGtnLXNvdXJjZS4xOjczNCBkcGtnLXN0YXRvdmVycmlkZS44Ojg5Cittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMDAgV2ljaGVydCBBa2tlcm1hbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUSAorIzogZGViLXN5bWJvbHMuNToyCisjLCBuby13cmFwCittc2dpZCAiZGViLXN5bWJvbHMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNTo1Cittc2dpZCAiZGViLXN5bWJvbHMgLSBEZWJpYW4ncyBleHRlbmRlZCBzaGFyZWQgbGlicmFyeSBpbmZvcm1hdGlvbiBmaWxlIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6OAorbXNnaWQgInN5bWJvbHMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNToxMgorbXNnaWQgIiIKKyJUaGUgZm9ybWF0IGZvciBhbiBleHRlbmRlZCBzaGFyZWQgbGlicmFyeSBkZXBlbmRlbmN5IGluZm9ybWF0aW9uIGVudHJ5IGluICIKKyJ0aGVzZSBmaWxlcyBpczoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNToxNAorbXNnaWQgIkk8bGlicmFyeS1zb25hbWUgbWFpbi1kZXBlbmRlbmN5LXRlbXBsYXRlPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3ltYm9scy41OjE2Cittc2dpZCAiWyB8IEk8YWx0ZXJuYXRpdmUtZGVwZW5kZW5jeS10ZW1wbGF0ZT4gXSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3ltYm9scy41OjE4Cittc2dpZCAiWyAuLi4gXSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3ltYm9scy41OjIwCisjLCBmdXp6eQorbXNnaWQgIlsgKiBJPGZpZWxkLW5hbWU+OiBJPGZpZWxkLXZhbHVlPiBdIgorbXNnc3RyICJCPC1EPkk8b2N0YWw+QjwgfCAtLWRlYnVnPT5JPG9jdGFsPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNToyMworIywgbm8td3JhcAorbXNnaWQgIiIKKyJbIC4uLiBdXG4iCisiIEk8c3ltYm9sPiBJPG1pbmltYWwtdmVyc2lvbj5bIEk8aWQtb2YtZGVwZW5kZW5jeS10ZW1wbGF0ZT4gXVxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6MjkKK21zZ2lkICIiCisiVGhlIEk8bGlicmFyeS1zb25hbWU+IGlzIGV4YWN0bHkgdGhlIHZhbHVlIG9mIHRoZSBTT05BTUUgZmllbGQgYXMgZXhwb3J0ZWQgIgorImJ5IEI8b2JqZHVtcD4oMSkuIEEgSTxkZXBlbmRlbmN5LXRlbXBsYXRlPiBpcyBhIGRlcGVuZGVuY3kgd2hlcmUgSTwjTUlOVkVSIz4gIgorImlzIGR5bmFtaWNhbGx5IHJlcGxhY2VkIGVpdGhlciBieSBhIHZlcnNpb24gY2hlY2sgbGlrZSBcIihFPGd0Pj0gSTxtaW5pbWFsLSIKKyJ2ZXJzaW9uPilcIiBvciBieSBub3RoaW5nIChpZiBhbiB1bnZlcnNpb25lZCBkZXBlbmRlbmN5IGlzIGRlZW1lZCAiCisic3VmZmljaWVudCkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6MzYKK21zZ2lkICIiCisiRWFjaCBleHBvcnRlZCBJPHN5bWJvbD4gKGxpc3RlZCBhcyBJPG5hbWU+QEk8dmVyc2lvbj4sIHdpdGggSTx2ZXJzaW9uPiBiZWluZyAiCisiXCJCYXNlXCIgaWYgdGhlIGxpYnJhcnkgaXMgbm90IHZlcnNpb25lZCkgaXMgYXNzb2NpYXRlZCB0byBhIEk8bWluaW1hbC0iCisidmVyc2lvbj4gb2YgaXRzIGRlcGVuZGVuY3kgdGVtcGxhdGUgKHRoZSBtYWluIGRlcGVuZGVuY3kgdGVtcGxhdGUgaXMgdXNlZCBpZiAiCisiSTxpZC1vZi1kZXBlbmRlbmN5LXRlbXBsYXRlPiBpcyBub3QgcHJlc2VudCkuIFRoZSBmaXJzdCBhbHRlcm5hdGl2ZSAiCisiZGVwZW5kZW5jeSB0ZW1wbGF0ZSBpcyBudW1iZXJlZCAxLCB0aGUgc2Vjb25kIG9uZSAyLCBldGMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6NDMKK21zZ2lkICIiCisiRWFjaCBlbnRyeSBmb3IgYSBsaWJyYXJ5IGNhbiBhbHNvIGhhdmUgc29tZSBmaWVsZHMgb2YgbWV0YS1pbmZvcm1hdGlvbi4gICIKKyJUaG9zZSBmaWVsZHMgYXJlIHN0b3JlZCBvbiBsaW5lcyBzdGFydGluZyB3aXRoIGFuIGFzdGVyaXNrLiBDdXJyZW50bHksIHRoZSAiCisib25seSB2YWxpZCBmaWVsZCBpcyBJPEJ1aWxkLURlcGVuZHMtUGFja2FnZT4sIGl0IGluZGljYXRlcyB0aGUgbmFtZSBvZiB0aGUgIgorIlwiLWRldlwiIHBhY2thZ2UgYXNzb2NpYXRlZCB0byB0aGUgbGlicmFyeSBhbmQgaXMgdXNlZCBieSBCPGRwa2ctc2hsaWJkZXBzPiAiCisidG8gbWFrZSBzdXJlIHRoYXQgdGhlIGRlcGVuZGVuY3kgZ2VuZXJhdGVkIGlzIGF0IGxlYXN0IGFzIHN0cmljdCBhcyB0aGUgIgorImNvcnJlc3BvbmRpbmcgYnVpbGQgZGVwZW5kZW5jeS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRlYi1zeW1ib2xzLjU6NDQKKyMsIG5vLXdyYXAKK21zZ2lkICJTaW1wbGUgc3ltYm9scyBmaWxlIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6NTAKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisibGliZnRwLnNvLjMgbGliZnRwMyAjTUlOVkVSI1xuIgorIiBEZWZhdWx0TmV0YnVmQEJhc2UgMy4xLTEtNlxuIgorIiBGdHBBY2Nlc3NAQmFzZSAzLjEtMS02XG4iCisiIFsuLi5dXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRlYi1zeW1ib2xzLjU6NTAKKyMsIG5vLXdyYXAKK21zZ2lkICJBZHZhbmNlZCBzeW1ib2xzIGZpbGUiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNTo1MworbXNnaWQgImxpYkdMLnNvLjEgbGliZ2wxIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6NTUKK21zZ2lkICJ8IGxpYmdsMS1tZXNhLWdseCAjTUlOVkVSIyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3ltYm9scy41OjYxCisjLCBuby13cmFwCittc2dpZCAiIgorIiogQnVpbGQtRGVwZW5kcy1QYWNrYWdlOiBsaWJnbDEtbWVzYS1kZXZcbiIKKyIgcHVibGljR2xTeW1ib2xAQmFzZSA2LjMtMVxuIgorIiBbLi4uXVxuIgorIiBpbXBsZW1lbnRhdGlvblNwZWNpZmljU3ltYm9sQEJhc2UgNi41LjItNyAxXG4iCisiIFsuLi5dXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNTo2MworbXNnaWQgIkI8aHR0cDovL3dpa2kuZGViaWFuLm9yZy9Qcm9qZWN0cy9JbXByb3ZlZERwa2dTaGxpYmRlcHM+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6NjUKKyMsIGZ1enp5Cittc2dpZCAiQjxkcGtnLXNobGliZGVwcz4oMSksIEI8ZHBrZy1nZW5zeW1ib2xzPigxKS4iCittc2dzdHIgIkI8ZHBrZy1kZWItYWN0aW9ucz4iCisKKyMuIHR5cGU6IFRICisjOiBkZWItdHJpZ2dlcnMuNToxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgImRlYi10cmlnZ2VycyIKK21zZ3N0ciAiQjwtLXZlcnNpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdHJpZ2dlcnMuNTo0Cittc2dpZCAiZGViLXRyaWdnZXJzIC0gcGFja2FnZSB0cmlnZ2VycyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdHJpZ2dlcnMuNTo3Cittc2dpZCAidHJpZ2dlcnMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXRyaWdnZXJzLjU6MTIKK21zZ2lkICIiCisiQSBwYWNrYWdlIGRlY2xhcmVzIGl0cyByZWxhdGlvbnNoaXAgdG8gc29tZSB0cmlnZ2VyKHMpIGJ5IGluY2x1ZGluZyBhICIKKyJJPHRyaWdnZXJzPiBmaWxlIGluIGl0cyBjb250cm9sIGFyY2hpdmUgKGkuZS4gSTxERUJJQU4vdHJpZ2dlcnM+IGR1cmluZyAiCisicGFja2FnZSBjcmVhdGlvbikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi10cmlnZ2Vycy41OjE2Cittc2dpZCAiIgorIlRoaXMgZmlsZSBjb250YWlucyBkaXJlY3RpdmVzLCBvbmUgcGVyIGxpbmUuIExlYWRpbmcgYW5kIHRyYWlsaW5nIHdoaXRlc3BhY2UgIgorImFuZCBldmVyeXRoaW5nIGFmdGVyIHRoZSBmaXJzdCBCPCM+IG9uIGFueSBsaW5lIHdpbGwgYmUgdHJpbW1lZCwgYW5kIGVtcHR5ICIKKyJsaW5lcyB3aWxsIGJlIGlnbm9yZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi10cmlnZ2Vycy41OjE4Cittc2dpZCAiVGhlIHRyaWdnZXIgY29udHJvbCBkaXJlY3RpdmVzIGN1cnJlbnRseSBzdXBwb3J0ZWQgYXJlOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdHJpZ2dlcnMuNToyMgorIywgZnV6enkKK21zZ2lkICJCPGludGVyZXN0PiBJPHRyaWdnZXItbmFtZT4iCittc2dzdHIgIkI8LS1sb2c9Pkk8ZmlsZW5hbWU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdHJpZ2dlcnMuNToyNgorIywgZnV6enkKK21zZ2lkICJCPGludGVyZXN0LW5vYXdhaXQ+IEk8dHJpZ2dlci1uYW1lPiIKK21zZ3N0ciAiQjwtLWxvZz0+STxmaWxlbmFtZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi10cmlnZ2Vycy41OjMzCittc2dpZCAiIgorIlNwZWNpZmllcyB0aGF0IHRoZSBwYWNrYWdlIGlzIGludGVyZXN0ZWQgaW4gdGhlIG5hbWVkIHRyaWdnZXIuIEFsbCB0cmlnZ2VycyAiCisiaW4gd2hpY2ggYSBwYWNrYWdlIGlzIGludGVyZXN0ZWQgbXVzdCBiZSBsaXN0ZWQgdXNpbmcgdGhpcyBkaXJlY3RpdmUgaW4gdGhlICIKKyJ0cmlnZ2VycyBjb250cm9sIGZpbGUuIFRoZSBcIm5vYXdhaXRcIiB2YXJpYW50IGRvZXMgbm90IHB1dCB0aGUgdHJpZ2dlcmluZyAiCisicGFja2FnZXMgaW4gdHJpZ2dlcnMtYXdhaXRlZCBzdGF0ZS4gVGhpcyBzaG91bGQgYmUgdXNlZCB3aGVuIHRoZSAiCisiZnVuY3Rpb25hbGl0eSBwcm92aWRlZCBieSB0aGUgdHJpZ2dlciBpcyBub3QgY3J1Y2lhbC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXRyaWdnZXJzLjU6MzcKK21zZ2lkICJCPGFjdGl2YXRlPiBJPHRyaWdnZXItbmFtZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXRyaWdnZXJzLjU6NDEKKyMsIGZ1enp5Cittc2dpZCAiQjxhY3RpdmF0ZS1ub2F3YWl0PiBJPHRyaWdnZXItbmFtZT4iCittc2dzdHIgIkI8LS1sb2c9Pkk8ZmlsZW5hbWU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdHJpZ2dlcnMuNTo1MAorbXNnaWQgIiIKKyJBcnJhbmdlcyB0aGF0IGNoYW5nZXMgdG8gdGhpcyBwYWNrYWdlJ3Mgc3RhdGUgd2lsbCBhY3RpdmF0ZSB0aGUgc3BlY2lmaWVkICIKKyJ0cmlnZ2VyLiBUaGUgdHJpZ2dlciB3aWxsIGJlIGFjdGl2YXRlZCBhdCB0aGUgc3RhcnQgb2YgdGhlIGZvbGxvd2luZyAiCisib3BlcmF0aW9uczogdW5wYWNrLCBjb25maWd1cmUsIHJlbW92ZSAoaW5jbHVkaW5nIGZvciB0aGUgYmVuZWZpdCBvZiBhICIKKyJjb25mbGljdGluZyBwYWNrYWdlKSwgcHVyZ2UgYW5kIGRlY29uZmlndXJlLiAgVGhlIFwibm9hd2FpdFwiIHZhcmlhbnQgZG9lcyAiCisibm90IHB1dCB0aGUgdHJpZ2dlcmluZyBwYWNrYWdlcyBpbiB0cmlnZ2Vycy1hd2FpdGVkIHN0YXRlLiBUaGlzIHNob3VsZCBiZSAiCisidXNlZCB3aGVuIHRoZSBmdW5jdGlvbmFsaXR5IHByb3ZpZGVkIGJ5IHRoZSB0cmlnZ2VyIGlzIG5vdCBjcnVjaWFsLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdHJpZ2dlcnMuNTo1OAorbXNnaWQgIiIKKyJJZiB0aGlzIHBhY2thZ2UgZGlzYXBwZWFycyBkdXJpbmcgdGhlIHVucGFja2luZyBvZiBhbm90aGVyIHBhY2thZ2UgdGhlICIKKyJ0cmlnZ2VyIHdpbGwgYmUgYWN0aXZhdGVkIHdoZW4gdGhlIGRpc2FwcGVhcmFuY2UgaXMgbm90ZWQgdG93YXJkcyB0aGUgZW5kIG9mICIKKyJ0aGUgdW5wYWNrLiBUcmlnZ2VyIHByb2Nlc3NpbmcsIGFuZCB0cmFuc2l0aW9uIGZyb20gdHJpZ2dlcnMtYXdhaXRlZCB0byAiCisiaW5zdGFsbGVkLCBkb2VzIG5vdCBjYXVzZSBhY3RpdmF0aW9ucy4gIEluIHRoZSBjYXNlIG9mIHVucGFjaywgdHJpZ2dlcnMgIgorIm1lbnRpb25lZCBpbiBib3RoIHRoZSBvbGQgYW5kIG5ldyB2ZXJzaW9ucyBvZiB0aGUgcGFja2FnZSB3aWxsIGJlIGFjdGl2YXRlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXRyaWdnZXJzLjU6NjEKK21zZ2lkICIiCisiVW5rbm93biBkaXJlY3RpdmVzIGFyZSBhbiBlcnJvciB3aGljaCB3aWxsIHByZXZlbnQgaW5zdGFsbGF0aW9uIG9mIHRoZSAiCisicGFja2FnZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXRyaWdnZXJzLjU6NjYKK21zZ2lkICIiCisiVGhlIFwiLW5vYXdhaXRcIiB2YXJpYW50cyBhcmUgb25seSBzdXBwb3J0ZWQgYnkgZHBrZyAxLjE2LjEgb3IgbmV3ZXIsIGFuZCAiCisid2lsbCBsZWFkIHRvIGVycm9ycyBpZiB1c2VkIHdpdGggYW4gb2xkZXIgZHBrZy4gSXQgaXMgdGh1cyByZWNvbW1lbmRlZCB0byAiCisiYWRkIGEgXCJQcmUtRGVwZW5kczogZHBrZyAoRTxndD49IDEuMTYuMSlcIiB0byBhbnkgcGFja2FnZSB0aGF0IHdpc2ggdG8gdXNlICIKKyJ0aG9zZSBkaXJlY3RpdmVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdHJpZ2dlcnMuNTo3MAorIywgZnV6enkKK21zZ2lkICIiCisiQjxkcGtnLXRyaWdnZXI+KDEpLCBCPGRwa2c+KDEpLCBCPC91c3Ivc2hhcmUvZG9jL2Rwa2ctZGV2L3RyaWdnZXJzLnR4dC5nej4uIgorbXNnc3RyICJCPGRwa2ctZGViLWFjdGlvbnM+IgorCisjLiB0eXBlOiBUSAorIzogZHBrZy4xOjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnIgorbXNnc3RyICJkcGtnIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy4xOjEgZHBrZy5jZmcuNToxIGRwa2ctYnVpbGRmbGFncy4xOjEgZHBrZy1kZWIuMToxCisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjEgZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMToxIGRwa2ctcXVlcnkuMToxCisjOiBkcGtnLXRyaWdnZXIuMToxIGRwa2ctdmVuZG9yLjE6MSBkc2VsZWN0LmNmZy41OjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnIHN1aXRlIgorbXNnc3RyICJkcGtnIHN1aXRlIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NAorIywgZnV6enkKK21zZ2lkICJkcGtnIC0gcGFja2FnZSBtYW5hZ2VyIGZvciBEZWJpYW4iCittc2dzdHIgImRwa2cgLSB1bSBnZXJlbmNpYWRvciBkZSBwYWNvdGVzIGRlIG7DrXZlbCBtw6lkaW8gcGFyYSBvIERlYmlhbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjgKKyMsIGZ1enp5CisjfCBtc2dpZCAiQjxkcGtnPiBbSTxvcHRpb25zPl0gSTxhY3Rpb24+IgorbXNnaWQgIkI8ZHBrZz4gW0k8b3B0aW9uPi4uLl0gSTxhY3Rpb24+IgorbXNnc3RyICJCPGRwa2c+IFtJPG9ww6fDtWVzPl0gSTxhw6fDo28+IgorCisjLiB0eXBlOiBTSAorIzogZHBrZy4xOjkKKyMsIG5vLXdyYXAKK21zZ2lkICJXQVJOSU5HIgorbXNnc3RyICJBVEVOw4fDg08iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxMworIywgZnV6enkKK21zZ2lkICIiCisiVGhpcyBtYW51YWwgaXMgaW50ZW5kZWQgZm9yIHVzZXJzIHdpc2hpbmcgdG8gdW5kZXJzdGFuZCBCPGRwa2c+J3MgY29tbWFuZCAiCisibGluZSBvcHRpb25zIGFuZCBwYWNrYWdlIHN0YXRlcyBpbiBtb3JlIGRldGFpbCB0aGFuIHRoYXQgcHJvdmlkZWQgYnkgQjxkcGtnICIKKyItLWhlbHA+LiIKK21zZ3N0ciAiIgorIkVzdGUgbWFudWFsIMOpIGVsYWJvcmFkbyBwYXJhIHVzdcOhcmlvcyBxdWUgZGVzZWphbSBjb21wcmVlbmRlciBhcyBvcMOnw7VlcyBkYSAiCisibGluaGEgZGUgY29tYW5kbyBkbyBCPGRwa2c+IGUgZXN0YWRvcyBkZSBwYWNvdGVzIGVtIG1haXMgZGV0YWxoZXMgcXVlIG9zICIKKyJwcm92aWRvcyBwb3IgQjxkcGtnIC0taGVscD4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTgKKyMsIGZ1enp5Cittc2dpZCAiIgorIkl0IHNob3VsZCBJPG5vdD4gYmUgdXNlZCBieSBwYWNrYWdlIG1haW50YWluZXJzIHdpc2hpbmcgdG8gdW5kZXJzdGFuZCBob3cgIgorIkI8ZHBrZz4gd2lsbCBpbnN0YWxsIHRoZWlyIHBhY2thZ2VzLiBUaGUgZGVzY3JpcHRpb25zIG9mIHdoYXQgQjxkcGtnPiBkb2VzICIKKyJ3aGVuIGluc3RhbGxpbmcgYW5kIHJlbW92aW5nIHBhY2thZ2VzIGFyZSBwYXJ0aWN1bGFybHkgaW5hZGVxdWF0ZS4iCittc2dzdHIgIiIKKyJFbGUgSTxuw6NvPiBkZXZlIHNlciB1c2FkbyBwb3IgbWFudGVuZWRvcmVzIGRlIHBhY290ZXMgcXVlIGRlc2VqYW0gIgorImNvbXByZWVuZGVyIGNvbW8gbyBCPGRwa2c+IGluc3RhbGFyw6Egc2V1cyBwYWNvdGVzLiBBcyBkZXNjcmnDp8O1ZXMgZG8gcXVlIG8gIgorIkI8ZHBrZz4gZmF6IHF1YW5kbyBlc3TDoSBpbnN0YWxhbmRvIGUgcmVtb3ZlbmRvIHBhY290ZXMgc8OjbyBwYXJ0aWN1bGFybWVudGUgIgorImluYWRlcXVhZGFzLiBQYXJhIGluZm9ybWHDp8O1ZXMgZGV0YWxoYWRhcyBhIGVzc2UgcmVzcGVpdG8sIHBvciBmYXZvciwgcmVmaXJhLSIKKyJzZSBhbyB0w7NwaWNvIEk8UGFja2FnZSBNYW5hZ2VtZW50IFN5c3RlbT4gZG8gSTxkZWJpYW4tZmFxPiBubyBzaXN0ZW1hIEdOVSAiCisiSW5mby4gUGFyYSBpbmZvbWHDp8O1ZXMgc29icmUgYSBjcmlhw6fDo28gZGUgcGFjb3RlcyBEZWJpYW4sIHZlamEgbyB0w7NwaWNvICIKKyJJPERlYmlhbiBQYWNrYWdlIE1hbmFnZW1lbnQgVG9vbHM+IG5vIG1lc21vIGRvY3VtZW50by4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyNgorIywgZnV6enkKK21zZ2lkICIiCisiQjxkcGtnPiBpcyBhIHRvb2wgdG8gaW5zdGFsbCwgYnVpbGQsIHJlbW92ZSBhbmQgbWFuYWdlIERlYmlhbiBwYWNrYWdlcy4gVGhlICIKKyJwcmltYXJ5IGFuZCBtb3JlIHVzZXItZnJpZW5kbHkgZnJvbnQtZW5kIGZvciBCPGRwa2c+IGlzIEI8YXB0aXR1ZGU+KDEpLiAiCisiQjxkcGtnPiBpdHNlbGYgaXMgY29udHJvbGxlZCBlbnRpcmVseSB2aWEgY29tbWFuZCBsaW5lIHBhcmFtZXRlcnMsIHdoaWNoICIKKyJjb25zaXN0IG9mIGV4YWN0bHkgb25lIGFjdGlvbiBhbmQgemVybyBvciBtb3JlIG9wdGlvbnMuIFRoZSBhY3Rpb24tcGFyYW1ldGVyICIKKyJ0ZWxscyBCPGRwa2c+IHdoYXQgdG8gZG8gYW5kIG9wdGlvbnMgY29udHJvbCB0aGUgYmVoYXZpb3Igb2YgdGhlIGFjdGlvbiBpbiAiCisic29tZSB3YXkuIgorbXNnc3RyICIiCisiQjxkcGtnPiDDqSB1bWEgZmVycmFtZW50YSBkZSBuw612ZWwgbcOpZGlvIHBhcmEgaW5zdGFsYXIsIGNyaWFyLCByZW1vdmVyIGUgIgorImdlcmVuY2lhciBwYWNvdGVzIERlYmlhbi4gTyBmcm9udC1lbmQgcHJpbcOhcmlvIGUgbWFpcyBhbWlnw6F2ZWwgcGFyYSBvICIKKyJCPGRwa2c+IMOpIG8gQjxkc2VsZWN0Pig4KS4gTyBwcsOzcHJpbyBCPGRwa2c+IMOpIGNvbnRyb2xhZG8gaW50ZWlyYW1lbnRlICIKKyJhdHJhdsOpcyBkZSBwYXLDom1ldHJvcyBkZSBsaW5oYSBkZSBjb21hbmRvLCBxdWUgY29uc2lzdGVtIGV4YXRhbWVudGUgZGUgdW1hICIKKyJhw6fDo28gZSB6ZXJvIG91IG1haXMgb3DDp8O1ZXMuIEEgYcOnw6NvLXBhcsOibWV0cm8gaW5mb3JtYSBhbyBkcGtnIG8gcXVlIGZhemVyIGUgIgorImFzIG9ww6fDtWVzIGNvbnRyb2xhbSBvIGNvbXBvcnRhbWVudG8gZGEgYcOnw6NvIGRlIGFsZ3VtYSBtYW5laXJhLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjMzCittc2dpZCAiIgorIkI8ZHBrZz4gY2FuIGFsc28gYmUgdXNlZCBhcyBhIGZyb250LWVuZCB0byBCPGRwa2ctZGViPigxKSBhbmQgQjxkcGtnLXF1ZXJ5PiIKKyIoMSkuIFRoZSBsaXN0IG9mIHN1cHBvcnRlZCBhY3Rpb25zIGNhbiBiZSBmb3VuZCBsYXRlciBvbiBpbiB0aGUgQjxBQ1RJT05TPiAiCisic2VjdGlvbi4gSWYgYW55IHN1Y2ggYWN0aW9uIGlzIGVuY291bnRlcmVkIEI8ZHBrZz4ganVzdCBydW5zIEI8ZHBrZy1kZWI+IG9yICIKKyJCPGRwa2ctcXVlcnk+IHdpdGggdGhlIHBhcmFtZXRlcnMgZ2l2ZW4gdG8gaXQsIGJ1dCBubyBzcGVjaWZpYyBvcHRpb25zIGFyZSAiCisiY3VycmVudGx5IHBhc3NlZCB0byB0aGVtLCB0byB1c2UgYW55IHN1Y2ggb3B0aW9uIHRoZSBiYWNrLWVuZHMgbmVlZCB0byBiZSAiCisiY2FsbGVkIGRpcmVjdGx5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy4xOjM0CisjLCBuby13cmFwCittc2dpZCAiSU5GT1JNQVRJT04gQUJPVVQgUEFDS0FHRVMiCittc2dzdHIgIklORk9STUHDh8ODTyBTT0JSRSBQQUNPVEVTIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzkKKyMsIGZ1enp5Cittc2dpZCAiIgorIkI8ZHBrZz4gbWFpbnRhaW5zIHNvbWUgdXNhYmxlIGluZm9ybWF0aW9uIGFib3V0IGF2YWlsYWJsZSBwYWNrYWdlcy4gVGhlICIKKyJpbmZvcm1hdGlvbiBpcyBkaXZpZGVkIGluIHRocmVlIGNsYXNzZXM6IEI8c3RhdGVzPiwgQjxzZWxlY3Rpb24gc3RhdGVzPiBhbmQgIgorIkI8ZmxhZ3M+LiBUaGVzZSB2YWx1ZXMgYXJlIGludGVuZGVkIHRvIGJlIGNoYW5nZWQgbWFpbmx5IHdpdGggQjxkc2VsZWN0Pi4iCittc2dzdHIgIiIKKyJPIEI8ZHBrZz4gbWFudMOpbSBhbGd1bWFzIGluZm9ybWHDp8O1ZXMgc29icmUgb3MgcGFjb3RlcyBkaXNwb27DrXZlaXMuIEFzICIKKyJpbmZvcm1hw6fDtWVzIHPDo28gZGl2aWRpZGFzIGVtIHRyw6pzIGdydXBvczogQjxlc3RhZG9zPiwgQjxlc3RhZG9zIGRlIHNlbGXDp8Ojbz4gIgorImUgQjxzaW5hbGl6YWRvcmVzPi4gIEVzc2VzIHZhbG9yZXMgc8OjbyBhbHRlcmFkb3MgcHJpbmNpcGFsbWVudGUgY29tIG8gIgorIkI8ZHNlbGVjdD4uIgorCisjLiB0eXBlOiBTUworIzogZHBrZy4xOjM5CisjLCBuby13cmFwCittc2dpZCAiUEFDS0FHRSBTVEFURVMiCittc2dzdHIgIkVTVEFET1MgRE9TIFBBQ09URVMiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NDAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPG5vdC1pbnN0YWxsZWQ+IgorbXNnc3RyICJCPG5vdC1pbnN0YWxsZWQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDMKK21zZ2lkICJUaGUgcGFja2FnZSBpcyBub3QgaW5zdGFsbGVkIG9uIHlvdXIgc3lzdGVtLiIKK21zZ3N0ciAiTyBwYWNvdGUgbsOjbyBlc3TDoSBpbnN0YWxhZG8gZW0gc2V1IHNpc3RlbWEuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjQzCisjLCBuby13cmFwCittc2dpZCAiQjxjb25maWctZmlsZXM+IgorbXNnc3RyICJCPGNvbmZpZy1maWxlcz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0NgorbXNnaWQgIk9ubHkgdGhlIGNvbmZpZ3VyYXRpb24gZmlsZXMgb2YgdGhlIHBhY2thZ2UgZXhpc3Qgb24gdGhlIHN5c3RlbS4iCittc2dzdHIgIkV4aXN0ZW0gYXBlbmFzIG9zIGFycXVpdm9zIGRlIGNvbmZpZ3VyYcOnw6NvIGVtIHNldSBzaXN0ZW1hLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo0NgorIywgbm8td3JhcAorbXNnaWQgIkI8aGFsZi1pbnN0YWxsZWQ+IgorbXNnc3RyICJCPGhhbGYtaW5zdGFsbGVkPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjUwCisjLCBmdXp6eQorbXNnaWQgIiIKKyJUaGUgaW5zdGFsbGF0aW9uIG9mIHRoZSBwYWNrYWdlIGhhcyBiZWVuIHN0YXJ0ZWQsIGJ1dCBub3QgY29tcGxldGVkIGZvciBzb21lICIKKyJyZWFzb24uIgorbXNnc3RyICIiCisiQSBpbnN0YWxhw6fDo28gZG8gcGFjb3RlIGZvaSBpbmljaWFkYSwgbWFzIG7Do28gY29tcGxldGFkYSBwb3IgYWxndW1hIHJhesOjby4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHVucGFja2VkPiIKK21zZ3N0ciAiQjx1bnBhY2tlZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1MworbXNnaWQgIlRoZSBwYWNrYWdlIGlzIHVucGFja2VkLCBidXQgbm90IGNvbmZpZ3VyZWQuIgorbXNnc3RyICJPIHBhY290ZSBlc3TDoSBkZXNjb21wYWN0YWRvLCBtYXMgbsOjbyBjb25maWd1cmFkby4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGhhbGYtY29uZmlndXJlZD4iCittc2dzdHIgIkI8aGFsZi1jb25maWd1cmVkPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjU3CisjLCBmdXp6eQorbXNnaWQgIiIKKyJUaGUgcGFja2FnZSBpcyB1bnBhY2tlZCBhbmQgY29uZmlndXJhdGlvbiBoYXMgYmVlbiBzdGFydGVkLCBidXQgbm90IHlldCAiCisiY29tcGxldGVkIGZvciBzb21lIHJlYXNvbi4iCittc2dzdHIgIiIKKyJPIHBhY290ZSBlc3TDoSBkZXNjb21wYWN0YWRvIGUgc3VhIGNvbmZpZ3VyYcOnw6NvIGNvbWXDp291LCBtYXMgbsOjbyBmb2kgIgorImNvbXBsZXRhZGEgcG9yIGFsZ3VtYSByYXrDo28uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjU3CisjLCBuby13cmFwCittc2dpZCAiQjx0cmlnZ2Vycy1hd2FpdGVkPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NjAKK21zZ2lkICJUaGUgcGFja2FnZSBhd2FpdHMgdHJpZ2dlciBwcm9jZXNzaW5nIGJ5IGFub3RoZXIgcGFja2FnZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2MAorIywgbm8td3JhcAorbXNnaWQgIkI8dHJpZ2dlcnMtcGVuZGluZz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjYzCisjLCBmdXp6eQorbXNnaWQgIlRoZSBwYWNrYWdlIGhhcyBiZWVuIHRyaWdnZXJlZC4iCittc2dzdHIgIk8gcGFjb3RlIGVzdMOhIGluc3RhbGFkbyBlIGNvbmZpZ3VyYWRvLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2MworIywgbm8td3JhcAorbXNnaWQgIkI8aW5zdGFsbGVkPiIKK21zZ3N0ciAiQjxpbnN0YWxsZWQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NjYKKyMsIGZ1enp5Cittc2dpZCAiVGhlIHBhY2thZ2UgaXMgdW5wYWNrZWQgYW5kIGNvbmZpZ3VyZWQgT0suIgorbXNnc3RyICJPIHBhY290ZSBlc3TDoSBpbnN0YWxhZG8gZSBjb25maWd1cmFkby4iCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLjE6NjYKKyMsIG5vLXdyYXAKK21zZ2lkICJQQUNLQUdFIFNFTEVDVElPTiBTVEFURVMiCittc2dzdHIgIkVTVEFET1MgREUgU0VMRcOHw4NPIERPUyBQQUNPVEVTIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjY3CisjLCBuby13cmFwCittc2dpZCAiQjxpbnN0YWxsPiIKK21zZ3N0ciAiQjxpbnN0YWxsPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjcwCittc2dpZCAiVGhlIHBhY2thZ2UgaXMgc2VsZWN0ZWQgZm9yIGluc3RhbGxhdGlvbi4iCittc2dzdHIgIk8gcGFjb3RlIGVzdMOhIHNlbGVjaW9uYWRvIHBhcmEgaW5zdGFsYcOnw6NvLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo3MAorIywgbm8td3JhcAorbXNnaWQgIkI8aG9sZD4iCittc2dzdHIgIkI8aG9sZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3NAorbXNnaWQgIiIKKyJBIHBhY2thZ2UgbWFya2VkIHRvIGJlIG9uIEI8aG9sZD4gaXMgbm90IGhhbmRsZWQgYnkgQjxkcGtnPiwgdW5sZXNzIGZvcmNlZCAiCisidG8gZG8gdGhhdCB3aXRoIG9wdGlvbiBCPC0tZm9yY2UtaG9sZD4uIgorbXNnc3RyICIiCisiVW0gcGFjb3RlIG1hcmNhZG8gY29tbyBCPGhvbGQ+IG7Do28gw6kgbWFuaXB1bGFkbyBwZWxvIEI8ZHBrZz4sIGEgbWVub3MgcXVlICIKKyJlbGUgc2VqYSBmb3LDp2FkbyBhIGlzc28gY29tIGEgb3DDp8OjbyBCPC0tZm9yY2UtaG9sZD4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjc0CisjLCBuby13cmFwCittc2dpZCAiQjxkZWluc3RhbGw+IgorbXNnc3RyICJCPGRlaW5zdGFsbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3OAorIywgZnV6enkKK21zZ2lkICIiCisiVGhlIHBhY2thZ2UgaXMgc2VsZWN0ZWQgZm9yIGRlaW5zdGFsbGF0aW9uIChpLmUuIHdlIHdhbnQgdG8gcmVtb3ZlIGFsbCAiCisiZmlsZXMsIGV4Y2VwdCBjb25maWd1cmF0aW9uIGZpbGVzKS4iCittc2dzdHIgIiIKKyJPIHBhY290ZSBlc3TDoSBzZWxlY2lvbmFkbyBwYXJhIGRlc2luc3RhbGHDp8OjbyAoaS5lLiBxdWVyZW1vcyByZW1vdmVyIHRvZG9zIG9zICIKKyJhcnF1aXZvcywgZXhjZXRvIG9zIGFycXVpdm9zIGRlIGNvbmZpZ3VyYcOnw6NvKS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NzgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHB1cmdlPiIKK21zZ3N0ciAiQjxwdXJnZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo4MgorIywgZnV6enkKK21zZ2lkICIiCisiVGhlIHBhY2thZ2UgaXMgc2VsZWN0ZWQgdG8gYmUgcHVyZ2VkIChpLmUuIHdlIHdhbnQgdG8gcmVtb3ZlIGV2ZXJ5dGhpbmcgZnJvbSAiCisic3lzdGVtIGRpcmVjdG9yaWVzLCBldmVuIGNvbmZpZ3VyYXRpb24gZmlsZXMpLiIKK21zZ3N0ciAiIgorIk8gcGFjb3RlIGVzdMOhIHNlbGVjaW9uYWRvIHBhcmEgc2VyIGVsaW1pbmFkbyAoaS5lLiBxdWVyZW1vcyBleGNsdWlyIHR1ZG8sICIKKyJhdMOpIG9zIGFycXVpdm9zIGRlIGNvbmZpZ3VyYcOnw6NvKS4iCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLjE6ODIKKyMsIG5vLXdyYXAKK21zZ2lkICJQQUNLQUdFIEZMQUdTIgorbXNnc3RyICJTSU5BTElaQURPUkVTIERPUyBQQUNPVEVTIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjgzCisjLCBuby13cmFwCittc2dpZCAiQjxyZWluc3QtcmVxdWlyZWQ+IgorbXNnc3RyICJCPHJlaW5zdC1yZXF1aXJlZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo4OAorIywgZnV6enkKK21zZ2lkICIiCisiQSBwYWNrYWdlIG1hcmtlZCBCPHJlaW5zdC1yZXF1aXJlZD4gaXMgYnJva2VuIGFuZCByZXF1aXJlcyByZWluc3RhbGxhdGlvbi4gIgorIlRoZXNlIHBhY2thZ2VzIGNhbm5vdCBiZSByZW1vdmVkLCB1bmxlc3MgZm9yY2VkIHdpdGggb3B0aW9uIEI8LS1mb3JjZS1yZW1vdmUtIgorInJlaW5zdHJlcT4uIgorbXNnc3RyICIiCisiVW0gcGFjb3RlIG1hcmNhZG8gY29tbyBCPHJlaW5zdC1yZXF1aXJlZD4gZXN0w6EgcXVlYnJhZG8gZSBwcmVjaXNhIHNlciAiCisicmVpbnN0YWxhZG8uIEVzc2VzIHBhY290ZXMgbsOjbyBwb2RlbSBzZXIgcmVtb3ZpZG9zLCBhIG1lbm9zIHF1ZSBpc3NvIHNlamEgIgorImZvcsOnYWRvIGNvbSBhIG9ww6fDo28gQjwtLWZvcmNlLXJlaW5zdHJlcT4uIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy4xOjg5IGRzZWxlY3QuMToxMjAKKyMsIG5vLXdyYXAKK21zZ2lkICJBQ1RJT05TIgorbXNnc3RyICJBw4fDlUVTIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjkwCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LWk+LCBCPC0taW5zdGFsbD4gSTxwYWNrYWdlLWZpbGU+Li4uIgorbXNnc3RyICJCPGRwa2cgLWk+IHwgQjwtLWluc3RhbGw+IEk8YXJxdWl2b19kb19wYWNvdGU+Li4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6OTQKKyMsIGZ1enp5Cittc2dpZCAiIgorIkluc3RhbGwgdGhlIHBhY2thZ2UuIElmIEI8LS1yZWN1cnNpdmU+IG9yIEI8LVI+IG9wdGlvbiBpcyBzcGVjaWZpZWQsICIKKyJJPHBhY2thZ2UtZmlsZT4gbXVzdCByZWZlciB0byBhIGRpcmVjdG9yeSBpbnN0ZWFkLiIKK21zZ3N0ciAiIgorIkluc3RhbGEgbyBwYWNvdGUuIFNlIGEgb3DDp8OjbyBCPC0tcmVjdXJzaXZlPiBvdSBCPC1SPiBmb3IgZXNwZWNpZmljYWRhLCAiCisiSTxhcnF1aXZvX2RvX3BhY290ZT4gcHJlY2lzYSBzZSByZWZlcmlyIGEgdW0gZGlyZXTDs3Jpby4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo5NgorbXNnaWQgIkluc3RhbGxhdGlvbiBjb25zaXN0cyBvZiB0aGUgZm9sbG93aW5nIHN0ZXBzOiIKK21zZ3N0ciAiQSBpbnN0YWxhw6fDo28gY29uc2lzdGUgZG9zIHNlZ3VpbnRlcyBwYXNzb3M6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6OTkKK21zZ2lkICJCPDEuPiBFeHRyYWN0IHRoZSBjb250cm9sIGZpbGVzIG9mIHRoZSBuZXcgcGFja2FnZS4iCittc2dzdHIgIkI8MS4+IE9zIGFycXVpdm9zIGRlIGNvbnRyb2xlIGRvIG5vdm8gcGFjb3RlIHPDo28gZXh0cmHDrWRvcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxMDMKKyMsIGZ1enp5Cittc2dpZCAiIgorIkI8Mi4+IElmIGFub3RoZXIgdmVyc2lvbiBvZiB0aGUgc2FtZSBwYWNrYWdlIHdhcyBpbnN0YWxsZWQgYmVmb3JlIHRoZSBuZXcgIgorImluc3RhbGxhdGlvbiwgZXhlY3V0ZSBJPHByZXJtPiBzY3JpcHQgb2YgdGhlIG9sZCBwYWNrYWdlLiIKK21zZ3N0ciAiIgorIkI8Mi4+IFNlIG91dHJhIHZlcnPDo28gZG8gbWVzbW8gcGFjb3RlIGZvaSBpbnN0YWxhZGEgYW50ZXMgZGEgbm92YSAiCisiaW5zdGFsYcOnw6NvLCDDqSBleGVjdXRhZG8gbyBzY3JpcHQgSTxwcmVybT4gZG8gcGFjb3RlIGFudGlnby4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxMDYKK21zZ2lkICJCPDMuPiBSdW4gSTxwcmVpbnN0PiBzY3JpcHQsIGlmIHByb3ZpZGVkIGJ5IHRoZSBwYWNrYWdlLiIKK21zZ3N0ciAiQjwzLj4gTyBzY3JpcHQgSTxwcmVpbnN0Piwgc2UgaG91dmVyIG5vIHBhY290ZSwgw6kgZXhlY3V0YWRvLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjExMAorIywgZnV6enkKK21zZ2lkICIiCisiQjw0Lj4gVW5wYWNrIHRoZSBuZXcgZmlsZXMsIGFuZCBhdCB0aGUgc2FtZSB0aW1lIGJhY2sgdXAgdGhlIG9sZCBmaWxlcywgc28gIgorInRoYXQgaWYgc29tZXRoaW5nIGdvZXMgd3JvbmcsIHRoZXkgY2FuIGJlIHJlc3RvcmVkLiIKK21zZ3N0ciAiIgorIkI8NC4+IE9zIG5vdm9zIGFycXVpdm9zIHPDo28gZGVzY29tcGFjdGFkb3MsIGUgYW8gbWVzbW8gdGVtcG8gw6kgZmVpdGEgdW1hICIKKyJjw7NwaWEgZGUgc2VndXJhbsOnYSBkb3MgYW50aWdvcywgZGUgZm9ybWEgcXVlIHNlIGFsZ28gc2FpciBlcnJhZG8sIGVsZXMgcG9kZW0gIgorInNlciByZXN0YXVyYWRvcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxMTcKKyMsIGZ1enp5Cittc2dpZCAiIgorIkI8NS4+IElmIGFub3RoZXIgdmVyc2lvbiBvZiB0aGUgc2FtZSBwYWNrYWdlIHdhcyBpbnN0YWxsZWQgYmVmb3JlIHRoZSBuZXcgIgorImluc3RhbGxhdGlvbiwgZXhlY3V0ZSB0aGUgSTxwb3N0cm0+IHNjcmlwdCBvZiB0aGUgb2xkIHBhY2thZ2UuIE5vdGUgdGhhdCAiCisidGhpcyBzY3JpcHQgaXMgZXhlY3V0ZWQgYWZ0ZXIgdGhlIEk8cHJlaW5zdD4gc2NyaXB0IG9mIHRoZSBuZXcgcGFja2FnZSwgIgorImJlY2F1c2UgbmV3IGZpbGVzIGFyZSB3cml0dGVuIGF0IHRoZSBzYW1lIHRpbWUgb2xkIGZpbGVzIGFyZSByZW1vdmVkLiIKK21zZ3N0ciAiIgorIkI8NS4+IFNlIGVzdGF2YSBpbnN0YWxhZGEgdW1hIG91dHJhIHZlcnPDo28gZG8gbWVzbW8gcGFjb3RlIGFudGVzIGRhIG5vdmEgIgorImluc3RhbGHDp8OjbywgbyBzY3JpcHQgSTxwb3N0cm0+IGRvIHBhY290ZSBhbnRpZ28gw6kgZXhlY3V0YWRvLiBOb3RlIHF1ZSBlc3NlICIKKyJzY3JpcHQgw6kgZXhlY3V0YWRvIGRlcG9pcyBkbyBzY3JpcHQgSTxwcmVpbnN0PiBkbyBwYWNvdGUgbm92bywgcG9ycXVlIG9zICIKKyJub3ZvcyBhcnF1aXZvcyBzw6NvIGdyYXZhZG9zIGFvIG1lc21vIHRlbXBvIHF1ZSBvcyBhbnRpZ29zIHPDo28gcmVtb3ZpZG9zLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjEyMQorIywgZnV6enkKK21zZ2lkICIiCisiQjw2Lj4gQ29uZmlndXJlIHRoZSBwYWNrYWdlLiBTZWUgQjwtLWNvbmZpZ3VyZT4gZm9yIGRldGFpbGVkIGluZm9ybWF0aW9uICIKKyJhYm91dCBob3cgdGhpcyBpcyBkb25lLiIKK21zZ3N0ciAiIgorIkI8Ni4+IE8gcGFjb3RlIMOpIGNvbmZpZ3VyYWRvLiBWZWphIEI8LS1jb25maWd1cmU+IHBhcmEgaW5mb3JtYcOnw7VlcyAiCisiZGV0YWxoYWRhcyBzb2JyZSBjb21vIGlzc28gw6kgZmVpdG8uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjEyMQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tdW5wYWNrID5JPHBhY2thZ2UtZmlsZT4uLi4iCittc2dzdHIgIkI8ZHBrZyAtLXVucGFjayA+STxhcnF1aXZvX2RvX3BhY290ZT4gLi4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTI2CisjLCBmdXp6eQorbXNnaWQgIiIKKyJVbnBhY2sgdGhlIHBhY2thZ2UsIGJ1dCBkb24ndCBjb25maWd1cmUgaXQuIElmIEI8LS1yZWN1cnNpdmU+IG9yIEI8LVI+ICIKKyJvcHRpb24gaXMgc3BlY2lmaWVkLCBJPHBhY2thZ2UtZmlsZT4gbXVzdCByZWZlciB0byBhIGRpcmVjdG9yeSBpbnN0ZWFkLiIKK21zZ3N0ciAiIgorIkRlc2NvbXBhY3RhIG8gcGFjb3RlLCBtYXMgbsOjbyBvIGNvbmZpZ3VyYS4gU2UgYSBvcMOnw6NvIEI8LS1yZWN1cnNpdmU+IG91IEI8LSIKKyJSPiBmb3IgZXNwZWNpZmljYWRhLCBJPGFycXVpdm9fZG9fcGFjb3RlPiBwcmVjaXNhIGVudMOjbyBzZSByZWZlcmlyIGEgdW0gIgorImRpcmV0w7NyaW8uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjEyNgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tY29uZmlndXJlID5JPHBhY2thZ2U+Li4ufEI8LWE+fEI8LS1wZW5kaW5nPiIKK21zZ3N0ciAiQjxkcGtnIC0tY29uZmlndXJlID5JPHBhY290ZT4gLi4uIHwgQjwtYT4gfCBCPC0tcGVuZGluZz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxMzEKKyMsIGZ1enp5Cittc2dpZCAiIgorIkNvbmZpZ3VyZSBhIHBhY2thZ2Ugd2hpY2ggaGFzIGJlZW4gdW5wYWNrZWQgYnV0IG5vdCB5ZXQgY29uZmlndXJlZC4gIElmIEI8LSIKKyJhPiBvciBCPC0tcGVuZGluZz4gaXMgZ2l2ZW4gaW5zdGVhZCBvZiBJPHBhY2thZ2U+LCBhbGwgdW5wYWNrZWQgYnV0ICIKKyJ1bmNvbmZpZ3VyZWQgcGFja2FnZXMgYXJlIGNvbmZpZ3VyZWQuIgorbXNnc3RyICIiCisiUmVjb25maWd1cmEgdW0gcGFjb3RlIGRlc2NvbXBhY3RhZG8uICBTZSBmb3IgZXNwZWNpZmljYWRhIGEgb3DDp8OjbyBCPC1hPiBvdSAiCisiQjwtLXBlbmRpbmc+IGFvIGludsOpcyBkZSBJPHBhY290ZT4sIHRvZG9zIG9zIHBhY290ZXMgZGVzY29tcGFjdGFkb3MgbWFzIG7Do28gIgorImNvbmZpZ3VyYWRvcyBzw6NvIGNvbmZpZ3VyYWRvcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxMzUKK21zZ2lkICIiCisiVG8gcmVjb25maWd1cmUgYSBwYWNrYWdlIHdoaWNoIGhhcyBhbHJlYWR5IGJlZW4gY29uZmlndXJlZCwgdHJ5IHRoZSBCPGRwa2ctIgorInJlY29uZmlndXJlPig4KSAgY29tbWFuZCBpbnN0ZWFkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTM3Cittc2dpZCAiQ29uZmlndXJpbmcgY29uc2lzdHMgb2YgdGhlIGZvbGxvd2luZyBzdGVwczoiCittc2dzdHIgIkEgY29uZmlndXJhw6fDo28gY29uc2lzdGUgZG9zIHNlZ3VpbnRlcyBwYXNzb3M6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTQyCisjLCBmdXp6eQorbXNnaWQgIiIKKyJCPDEuPiBVbnBhY2sgdGhlIGNvbmZmaWxlcywgYW5kIGF0IHRoZSBzYW1lIHRpbWUgYmFjayB1cCB0aGUgb2xkIGNvbmZmaWxlcywgIgorInNvIHRoYXQgdGhleSBjYW4gYmUgcmVzdG9yZWQgaWYgc29tZXRoaW5nIGdvZXMgd3JvbmcuIgorbXNnc3RyICIiCisiQjwxLj4gT3MgYXJxdWl2b3MgZGUgY29uZmlndXJhw6fDo28gc8OjbyBkZXNjb21wYWN0YWRvcywgZSBhbyBtZXNtbyB0ZW1wbyDDqSAiCisiZmVpdGEgdW1hIGPDs3BpYSBkZSBzZWd1cmFuw6dhIGRvcyBhcnF1aXZvcyBkZSBjb25maWd1cmHDp8OjbyBhbnRpZ29zLCBkZSBmb3JtYSAiCisicXVlIHBvZGVtIHNlciByZXN0YXVyYWRvcyBzZSBhbGdvIHNhaXIgZXJyYWRvLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjE0NQorIywgZnV6enkKK21zZ2lkICJCPDIuPiBSdW4gSTxwb3N0aW5zdD4gc2NyaXB0LCBpZiBwcm92aWRlZCBieSB0aGUgcGFja2FnZS4iCittc2dzdHIgIkI8Mi4+IE8gc2NyaXB0IEk8cG9zdGluc3Q+LCBzZSBleGlzdGlyIG5vIHBhY290ZSwgw6kgZXhlY3V0YWRvLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToxNDUKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLXRyaWdnZXJzLW9ubHk+IEk8cGFja2FnZT4uLi58QjwtYT58QjwtLXBlbmRpbmc+IgorbXNnc3RyICJCPGRwa2cgLS1jb25maWd1cmUgPkk8cGFjb3RlPiAuLi4gfCBCPC1hPiB8IEI8LS1wZW5kaW5nPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjE1MgorbXNnaWQgIiIKKyJQcm9jZXNzZXMgb25seSB0cmlnZ2Vycy4gQWxsIHBlbmRpbmcgdHJpZ2dlcnMgd2lsbCBiZSBwcm9jZXNzZWQuIElmIHBhY2thZ2UgIgorIm5hbWVzIGFyZSBzdXBwbGllZCBvbmx5IHRob3NlIHBhY2thZ2VzJyB0cmlnZ2VycyB3aWxsIGJlIHByb2Nlc3NlZCwgZXhhY3RseSAiCisib25jZSBlYWNoIHdoZXJlIG5lY2Vzc2FyeS4gVXNlIG9mIHRoaXMgb3B0aW9uIG1heSBsZWF2ZSBwYWNrYWdlcyBpbiB0aGUgIgorImltcHJvcGVyIEI8dHJpZ2dlcnMtYXdhaXRlZD4gYW5kIEI8dHJpZ2dlcnMtcGVuZGluZz4gc3RhdGVzLiBUaGlzIGNhbiBiZSAiCisiZml4ZWQgbGF0ZXIgYnkgcnVubmluZzogQjxkcGtnIC0tY29uZmlndXJlIC0tcGVuZGluZz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MTUyCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LXI+LCBCPC0tcmVtb3ZlPiwgQjwtUD4sIEI8LS1wdXJnZSA+STxwYWNrYWdlPi4uLnxCPC1hPnxCPC0tcGVuZGluZz4iCittc2dzdHIgIkI8ZHBrZyAtcj4gfCBCPC0tcmVtb3ZlPiB8IEI8LVA+IHwgQjwtLXB1cmdlID5JPHBhY290ZT4gLi4uIHwgQjwtYT4gfCBCPC0tcGVuZGluZz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxNjkKKyMsIGZ1enp5Cittc2dpZCAiIgorIlJlbW92ZSBhbiBpbnN0YWxsZWQgcGFja2FnZS4gQjwtcj4gb3IgQjwtLXJlbW92ZT4gcmVtb3ZlIGV2ZXJ5dGhpbmcgZXhjZXB0ICIKKyJjb25mZmlsZXMuIFRoaXMgbWF5IGF2b2lkIGhhdmluZyB0byByZWNvbmZpZ3VyZSB0aGUgcGFja2FnZSBpZiBpdCBpcyAiCisicmVpbnN0YWxsZWQgbGF0ZXIuIChDb25mZmlsZXMgYXJlIGNvbmZpZ3VyYXRpb24gZmlsZXMgdGhhdCBhcmUgbGlzdGVkIGluIHRoZSAiCisiSTxERUJJQU4vY29uZmZpbGVzPiBjb250cm9sIGZpbGUpLiBCPC1QPiBvciBCPC0tcHVyZ2U+IHJlbW92ZXMgZXZlcnl0aGluZywgIgorImluY2x1ZGluZyBjb25mZmlsZXMuIElmIEI8LWE+IG9yIEI8LS1wZW5kaW5nPiBpcyBnaXZlbiBpbnN0ZWFkIG9mIGEgcGFja2FnZSAiCisibmFtZSwgdGhlbiBhbGwgcGFja2FnZXMgdW5wYWNrZWQsIGJ1dCBtYXJrZWQgdG8gYmUgcmVtb3ZlZCBvciBwdXJnZWQgaW4gZmlsZSAiCisiSTwvdmFyL2xpYi9kcGtnL3N0YXR1cz4sIGFyZSByZW1vdmVkIG9yIHB1cmdlZCwgcmVzcGVjdGl2ZWx5LiBOb3RlOiBzb21lICIKKyJjb25maWd1cmF0aW9uIGZpbGVzIG1pZ2h0IGJlIHVua25vd24gdG8gQjxkcGtnPiBiZWNhdXNlIHRoZXkgYXJlIGNyZWF0ZWQgYW5kICIKKyJoYW5kbGVkIHNlcGFyYXRlbHkgdGhyb3VnaCB0aGUgY29uZmlndXJhdGlvbiBzY3JpcHRzLiBJbiB0aGF0IGNhc2UsIEI8ZHBrZz4gIgorIndvbid0IHJlbW92ZSB0aGVtIGJ5IGl0c2VsZiwgYnV0IHRoZSBwYWNrYWdlJ3MgSTxwb3N0cm0+IHNjcmlwdCAod2hpY2ggaXMgIgorImNhbGxlZCBieSBCPGRwa2c+KSwgaGFzIHRvIHRha2UgY2FyZSBvZiB0aGVpciByZW1vdmFsIGR1cmluZyBwdXJnZS4gT2YgIgorImNvdXJzZSwgdGhpcyBvbmx5IGFwcGxpZXMgdG8gZmlsZXMgaW4gc3lzdGVtIGRpcmVjdG9yaWVzLCBub3QgY29uZmlndXJhdGlvbiAiCisiZmlsZXMgd3JpdHRlbiB0byBpbmRpdmlkdWFsIHVzZXJzJyBob21lIGRpcmVjdG9yaWVzLiIKK21zZ3N0ciAiIgorIlJlbW92ZSB1bSBwYWNvdGUgaW5zdGFsYWRvLiAgQjwtcj4gb3UgQjwtLXJlbW92ZT4gcmVtb3ZlIHR1ZG8sIGV4Y2V0byBvcyAiCisiYXJxdWl2b3MgZGUgY29uZmlndXJhw6fDo28uICBJc3NvIHBvZGUgZXZpdGFyIGEgbmVjZXNzaWRhZGUgZGUgcmVjb25maWd1cmFyIG8gIgorInBhY290ZSBzZSBlbGUgZm9yIHJlaW5zdGFsYWRvIGRlcG9pcy4gKG9zIGFycXVpdm9zIGRlIGNvbmZpZ3VyYcOnw6NvIHPDo28gb3MgIgorImxpc3RhZG9zIG5vIGFycXVpdm8gZGUgY29udHJvbGUgSTxkZWJpYW4vY29uZmZpbGVzPikuIEI8LVA+IG91IEI8LS1wdXJnZT4gIgorInJlbW92ZSB0dWRvLCBpbmNsdWluZG8gb3MgYXJxdWl2b3MgZGUgY29uZmlndXJhw6fDo28uIFNlIGZvciBkYWRhIGEgb3DDp8OjbyBCPC0iCisiYT4gb3UgQjwtLXBlbmRpbmc+IGFvIGludsOpcyBkbyBub21lIGRvIHBhY290ZSwgZW50w6NvIHRvZG9zIG9zIHBhY290ZXMgIgorImRlc2NvbXBhY3RhZG9zLCBtYXMgbWFyY2Fkb3MgcGFyYSBzZXJlbSByZW1vdmlkb3Mgb3UgZWxpbWluYWRvcyAocHVyZ2UpICBubyAiCisiYXJxdWl2byBJPC92YXIvbGliL2Rwa2cvc3RhdHVzPiwgc8OjbyByZW1vdmlkb3Mgb3UgZWxpbWluYWRvcyAocHVyZ2UpICIKKyJyZXNwZWN0aXZhbWVudGUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTcxCittc2dpZCAiUmVtb3Zpbmcgb2YgYSBwYWNrYWdlIGNvbnNpc3RzIG9mIHRoZSBmb2xsb3dpbmcgc3RlcHM6IgorbXNnc3RyICJBIHJlbW/Dp8OjbyBkZSB1bSBwYWNvdGUgY29uc2lzdGUgZG9zIHNlZ3VpbnRlcyBwYXNzb3M6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTc0CisjLCBmdXp6eQorbXNnaWQgIkI8MS4+IFJ1biBJPHByZXJtPiBzY3JpcHQiCittc2dzdHIgIkI8MS4+IE8gc2NyaXB0IEk8cHJlcm0+IMOpIGV4ZWN1dGFkby4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxNzcKKyMsIGZ1enp5Cittc2dpZCAiQjwyLj4gUmVtb3ZlIHRoZSBpbnN0YWxsZWQgZmlsZXMiCittc2dzdHIgIkI8Mi4+IE9zIGFycXVpdm9zIGluc3RhbGFkb3Mgc8OjbyByZW1vdmlkb3MuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTgwCittc2dpZCAiQjwzLj4gUnVuIEk8cG9zdHJtPiBzY3JpcHQiCittc2dzdHIgIkI8My4+IE8gc2NyaXB0IEk8cG9zdHJtPiDDqSBleGVjdXRhZG8uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjE4MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tdXBkYXRlLWF2YWlsPiwgQjwtLW1lcmdlLWF2YWlsPiBJPFBhY2thZ2VzLWZpbGU+IgorbXNnc3RyICJCPGRwa2cgLS11cGRhdGUtYXZhaWw+IHwgQjwtLW1lcmdlLWF2YWlsPiBJPGFycXVpdm8tUGFja2FnZXM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTkwCisjLCBmdXp6eQorbXNnaWQgIiIKKyJVcGRhdGUgQjxkcGtnPidzIGFuZCBCPGRzZWxlY3Q+J3MgaWRlYSBvZiB3aGljaCBwYWNrYWdlcyBhcmUgYXZhaWxhYmxlLiBXaXRoICIKKyJhY3Rpb24gQjwtLW1lcmdlLWF2YWlsPiwgb2xkIGluZm9ybWF0aW9uIGlzIGNvbWJpbmVkIHdpdGggaW5mb3JtYXRpb24gZnJvbSAiCisiSTxQYWNrYWdlcy1maWxlPi4gV2l0aCBhY3Rpb24gQjwtLXVwZGF0ZS1hdmFpbD4sIG9sZCBpbmZvcm1hdGlvbiBpcyByZXBsYWNlZCAiCisid2l0aCB0aGUgaW5mb3JtYXRpb24gaW4gdGhlIEk8UGFja2FnZXMtZmlsZT4uIFRoZSBJPFBhY2thZ2VzLWZpbGU+ICIKKyJkaXN0cmlidXRlZCB3aXRoIERlYmlhbiBpcyBzaW1wbHkgbmFtZWQgSTxQYWNrYWdlcz4uIEI8ZHBrZz4ga2VlcHMgaXRzICIKKyJyZWNvcmQgb2YgYXZhaWxhYmxlIHBhY2thZ2VzIGluIEk8L3Zhci9saWIvZHBrZy9hdmFpbGFibGU+LiIKK21zZ3N0ciAiIgorIkF0dWFsaXphIGEgaWTDqWlhIGRvIEI8ZHBrZz4gZSBkbyBCPGRzZWxlY3Q+IGRlIHF1YWlzIHBhY290ZXMgZXN0w6NvICIKKyJkaXNwb27DrXZlaXMuIENvbSBhIGHDp8OjbyBCPC0tbWVyZ2UtYXZhaWw+LCBhcyBpbmZvcm1hw6fDtWVzIGFudGlnYXMgc8OjbyAiCisiY29tYmluYWRhcyBhcyBpbmZvcm1hw6fDtWVzIGRvIEk8YXJxdWl2by1QYWNrYWdlcz4uICBDb20gYSBhw6fDo28gQjwtLXVwZGF0ZS0iCisiYXZhaWw+LCBhcyBpbmZvcm1hw6fDtWVzIGFudGlnYXMgc8OjbyBzdWJzdGl0dcOtZGFzIHBlbGFzIGRvIEk8YXJxdWl2by0iCisiUGFja2FnZXM+LiBPIEk8YXJxdWl2by1QYWNrYWdlcz4gZGlzdHJpYnXDrWRvIGNvbSBvIERlYmlhbiDDqSBzaW1wbGVzbWVudGUgIgorIm5vbWVhZG8gSTxQYWNrYWdlcz4uIE8gQjxkcGtnPiBtYW50w6ltIHNldSByZWdpc3RybyBkb3MgcGFjb3RlcyBkaXNwb27DrXZlaXMgIgorImVtIEk8L3Zhci9saWIvZHBrZy9hdmFpbGFibGU+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjE5NQorbXNnaWQgIiIKKyJBIHNpbXBsZXIgb25lLXNob3QgY29tbWFuZCB0byByZXRyaWV2ZSBhbmQgdXBkYXRlIHRoZSBJPGF2YWlsYWJsZT4gZmlsZSBpcyAiCisiQjxkc2VsZWN0IHVwZGF0ZT4uIE5vdGUgdGhhdCB0aGlzIGZpbGUgaXMgbW9zdGx5IHVzZWxlc3MgaWYgeW91IGRvbid0IHVzZSAiCisiQjxkc2VsZWN0PiBidXQgYW4gQVBULWJhc2VkIGZyb250ZW5kOiBBUFQgaGFzIGl0cyBvd24gc3lzdGVtIHRvIGtlZXAgdHJhY2sgIgorIm9mIGF2YWlsYWJsZSBwYWNrYWdlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToxOTUKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtQT4sIEI8LS1yZWNvcmQtYXZhaWw+IEk8cGFja2FnZS1maWxlPi4uLiIKK21zZ3N0ciAiQjxkcGtnIC1BPiB8IEI8LS1yZWNvcmQtYXZhaWw+IEk8YXJxdWl2b19kb19wYWNvdGU+IC4uLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjIwMQorIywgZnV6enkKK21zZ2lkICIiCisiVXBkYXRlIEI8ZHBrZz4gYW5kIEI8ZHNlbGVjdD4ncyBpZGVhIG9mIHdoaWNoIHBhY2thZ2VzIGFyZSBhdmFpbGFibGUgd2l0aCAiCisiaW5mb3JtYXRpb24gZnJvbSB0aGUgcGFja2FnZSBJPHBhY2thZ2UtZmlsZT4uIElmIEI8LS1yZWN1cnNpdmU+IG9yIEI8LVI+ICIKKyJvcHRpb24gaXMgc3BlY2lmaWVkLCBJPHBhY2thZ2UtZmlsZT4gbXVzdCByZWZlciB0byBhIGRpcmVjdG9yeSBpbnN0ZWFkLiIKK21zZ3N0ciAiIgorIkF0dWFsaXphIGEgaWTDqWlhIGRvIEI8ZHBrZz4gZSBkbyBCPGRzZWxlY3Q+IGRlIHF1YWlzIHBhY290ZXMgZXN0w6NvICIKKyJkaXNwb27DrXZlaXMgY29tIGFzIGluZm9ybWHDp8O1ZXMgZG8gcGFjb3RlIEk8YXJxdWl2b19kb19wYWNvdGU+LiBTZSBhIG9ww6fDo28gIgorIkI8LS1yZWN1cnNpdmU+IG91IEI8LVI+IGZvciBlc3BlY2lmaWNhZGEsIGVudMOjbyBJPGFycXVpdm9fZG9fcGFjb3RlPiBkZXZlIHNlICIKKyJyZWZlcmlyIGEgdW0gZGlyZXTDs3Jpby4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MjAxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1mb3JnZXQtb2xkLXVuYXZhaWw+IgorbXNnc3RyICJCPGRwa2cgLS1mb3JnZXQtb2xkLXVuYXZhaWw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MjA1Cittc2dpZCAiIgorIk5vdyBCPG9ic29sZXRlPiBhbmQgYSBuby1vcCBhcyBCPGRwa2c+IHdpbGwgYXV0b21hdGljYWxseSBmb3JnZXQgdW5pbnN0YWxsZWQgIgorInVuYXZhaWxhYmxlIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjIwNQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tY2xlYXItYXZhaWw+IgorbXNnc3RyICJCPGRwa2cgLS1jbGVhci1hdmFpbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyMDgKKyMsIGZ1enp5Cittc2dpZCAiRXJhc2UgdGhlIGV4aXN0aW5nIGluZm9ybWF0aW9uIGFib3V0IHdoYXQgcGFja2FnZXMgYXJlIGF2YWlsYWJsZS4iCittc2dzdHIgIkFwYWdhIGFzIGluZm9ybWHDp8O1ZXMgZXhpc3RlbnRlcyBzb2JyZSBxdWFpcyBwYWNvdGVzIGVzdMOjbyBkaXNwb27DrXZlaXMuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjIwOAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICIgQjwtQz4sIEI8LS1hdWRpdD4iCittc2dzdHIgIkI8LS1xdWlldD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyMTMKKyMsIGZ1enp5Cittc2dpZCAiIgorIlNlYXJjaGVzIGZvciBwYWNrYWdlcyB0aGF0IGhhdmUgYmVlbiBpbnN0YWxsZWQgb25seSBwYXJ0aWFsbHkgb24geW91ciAiCisic3lzdGVtLiBCPGRwa2c+IHdpbGwgc3VnZ2VzdCB3aGF0IHRvIGRvIHdpdGggdGhlbSB0byBnZXQgdGhlbSB3b3JraW5nLiIKK21zZ3N0ciAiIgorIlByb2N1cmEgcG9yIHBhY290ZXMgcXVlIGZvcmFtIGFwZW5hcyBwYXJjaWFsbWVudGUgaW5zdGFsYWRvcyBlbSBzZXUgc2lzdGVtYS4gIgorIk8gQjxkcGtnPiBzdWdlcmlyw6EgbyBxdWUgZmF6ZXIgY29tIGVsZXMgcGFyYSBxdWUgZnVuY2lvbmVtLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToyMTMKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWdldC1zZWxlY3Rpb25zPiBbSTxwYWNrYWdlLW5hbWUtcGF0dGVybj4uLi5dIgorbXNnc3RyICJCPGRwa2cgLS1nZXQtc2VsZWN0aW9ucz4gW0k8cGFkcsOjbz4uLi5dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MjE4CisjLCBmdXp6eQorbXNnaWQgIiIKKyJHZXQgbGlzdCBvZiBwYWNrYWdlIHNlbGVjdGlvbnMsIGFuZCB3cml0ZSBpdCB0byBzdGRvdXQuIFdpdGhvdXQgYSBwYXR0ZXJuLCAiCisibm9uLWluc3RhbGxlZCBwYWNrYWdlcyAoaS5lLiB0aG9zZSB3aGljaCBoYXZlIGJlZW4gcHJldmlvdXNseSBwdXJnZWQpICB3aWxsICIKKyJub3QgYmUgc2hvd24uIgorbXNnc3RyICJPYnTDqW0gdW1hIGxpc3RhIGRlIHNlbGXDp8OjbyBkZSBwYWNvdGVzIGUgYSBlc2NyZXZlIGVtIHN0ZG91dC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MjE4IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyOTkKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLXNldC1zZWxlY3Rpb25zPiIKK21zZ3N0ciAiQjxkcGtnIC0tc2V0LXNlbGVjdGlvbnM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MjI0CisjLCBmdXp6eQorbXNnaWQgIiIKKyJTZXQgcGFja2FnZSBzZWxlY3Rpb25zIHVzaW5nIGZpbGUgcmVhZCBmcm9tIHN0ZGluLiBUaGlzIGZpbGUgc2hvdWxkIGJlIGluICIKKyJ0aGUgZm9ybWF0ICdJPHBhY2thZ2U+IEk8c3RhdGU+Jywgd2hlcmUgc3RhdGUgaXMgb25lIG9mIEI8aW5zdGFsbD4sIEI8aG9sZD4sICIKKyJCPGRlaW5zdGFsbD4gb3IgQjxwdXJnZT4uIEJsYW5rIGxpbmVzIGFuZCBjb21tZW50IGxpbmVzIGJlZ2lubmluZyB3aXRoICcjJyAiCisiYXJlIGFsc28gcGVybWl0dGVkLiIKK21zZ3N0ciAiQ29uZmlndXJhIGFzIHNlbGXDp8O1ZXMgZGUgcGFjb3RlcyB1c2FuZG8gbyBhcnF1aXZvIGxpZG8gZGUgc3RkaW4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjIyNAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tY2xlYXItc2VsZWN0aW9ucz4iCittc2dzdHIgIkI8ZHBrZyAtLXNldC1zZWxlY3Rpb25zPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjIyOQorbXNnaWQgIiIKKyJTZXQgdGhlIHJlcXVlc3RlZCBzdGF0ZSBvZiBldmVyeSBub24tZXNzZW50aWFsIHBhY2thZ2UgdG8gZGVpbnN0YWxsLiAgVGhpcyAiCisiaXMgaW50ZW5kZWQgdG8gYmUgdXNlZCBpbW1lZGlhdGVseSBiZWZvcmUgLS1zZXQtc2VsZWN0aW9ucywgdG8gZGVpbnN0YWxsIGFueSAiCisicGFja2FnZXMgbm90IGluIGxpc3QgZ2l2ZW4gdG8gLS1zZXQtc2VsZWN0aW9ucy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToyMjkKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLXlldC10by11bnBhY2s+IgorbXNnc3RyICJCPGRwa2cgLS15ZXQtdG8tdW5wYWNrPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjIzMworIywgZnV6enkKK21zZ2lkICIiCisiU2VhcmNoZXMgZm9yIHBhY2thZ2VzIHNlbGVjdGVkIGZvciBpbnN0YWxsYXRpb24sIGJ1dCB3aGljaCBmb3Igc29tZSByZWFzb24gIgorInN0aWxsIGhhdmVuJ3QgYmVlbiBpbnN0YWxsZWQuIgorbXNnc3RyICIiCisiUHJvY3VyYSBwYWNvdGVzIHF1ZSBmb3JhbSBzZWxlY2lvbmFkb3MgcGFyYSBpbnN0YWxhw6fDo28sIG1hcyBwb3IgYWxndW1hIHJhesOjbyAiCisiYWluZGEgbsOjbyBmb3JhbSBpbnN0YWxhZG9zLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToyMzQKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLXByaW50LWFyY2hpdGVjdHVyZT4iCittc2dzdHIgIkI8ZHBrZyAtLXByaW50LWFyY2hpdGVjdHVyZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyMzcKKyMsIGZ1enp5Cittc2dpZCAiIgorIlByaW50IGFyY2hpdGVjdHVyZSBvZiBwYWNrYWdlcyBCPGRwa2c+IGluc3RhbGxzIChmb3IgZXhhbXBsZSwgXCJpMzg2XCIpLiIKK21zZ3N0ciAiIgorIk1vc3RyYSBhIGFycXVpdGV0dXJhIGFsdm8gKHBvciBleGVtcGxvLCBcImkzODZcIikuICBFc3NhIG9ww6fDo28gdXNhIG8gQjxnY2M+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToyMzcKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWNvbXBhcmUtdmVyc2lvbnMgPkk8dmVyMSBvcCB2ZXIyPiIKK21zZ3N0ciAiQjxkcGtnIC0tY29tcGFyZS12ZXJzaW9ucyA+STx2ZXIxIG9wIHZlcjI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MjQ4CisjLCBmdXp6eQorbXNnaWQgIiIKKyJDb21wYXJlIHZlcnNpb24gbnVtYmVycywgd2hlcmUgSTxvcD4gaXMgYSBiaW5hcnkgb3BlcmF0b3IuIEI8ZHBrZz4gcmV0dXJucyAiCisic3VjY2VzcyAoemVybyByZXN1bHQpIGlmIHRoZSBzcGVjaWZpZWQgY29uZGl0aW9uIGlzIHNhdGlzZmllZCwgYW5kIGZhaWx1cmUgIgorIihub256ZXJvIHJlc3VsdCkgb3RoZXJ3aXNlLiBUaGVyZSBhcmUgdHdvIGdyb3VwcyBvZiBvcGVyYXRvcnMsIHdoaWNoIGRpZmZlciAiCisiaW4gaG93IHRoZXkgdHJlYXQgYW4gZW1wdHkgSTx2ZXIxPiBvciBJPHZlcjI+LiBUaGVzZSB0cmVhdCBhbiBlbXB0eSB2ZXJzaW9uICIKKyJhcyBlYXJsaWVyIHRoYW4gYW55IHZlcnNpb246IEI8bHQgbGUgZXEgbmUgZ2UgZ3Q+LiBUaGVzZSB0cmVhdCBhbiBlbXB0eSAiCisidmVyc2lvbiBhcyBsYXRlciB0aGFuIGFueSB2ZXJzaW9uOiBCPGx0LW5sIGxlLW5sIGdlLW5sIGd0LW5sPi4gVGhlc2UgYXJlICIKKyJwcm92aWRlZCBvbmx5IGZvciBjb21wYXRpYmlsaXR5IHdpdGggY29udHJvbCBmaWxlIHN5bnRheDogQjxFPGx0PiBFPGx0PkU8bHQ+ICIKKyJFPGx0Pj0gPSBFPGd0Pj0gRTxndD5FPGd0PiBFPGd0Pj4uIgorbXNnc3RyICIiCisiQ29tcGFyYSBuw7ptZXJvcyBkZSB2ZXJzw6NvLCBvbmRlIEk8b3A+IMOpIHVtIG9wZXJhZG9yIGJpbsOhcmlvLiBPIEI8ZHBrZz4gIgorInJldG9ybmEgY29tIHN1Y2Nlc3NvIChyZXN1bHRhZG8gemVybykgc2UgYSBjb25kacOnw6NvIGVzcGVjaWZpY2FkYSBmb3IgIgorInNhdGlzZmVpdGEgZSBjb20gZmFsaGEgKHJlc3VsdGFkbyBuw6NvIG51bG8pIGVtIGNhc28gY29udHLDoXJpby4gSMOhIGRvaXMgIgorImdydXBvcyBkZSBvcGVyYWRvcmVzLCBxdWUgZGlmZXJlbSBlbSBjb21vIHRyYXRhbSBhIGZhbHRhIGRlIEk8dmVyMT4gb3UgIgorIkk8dmVyMj4uICBFc3NlcyB0cmF0YW0gYSBmYWx0YSBkZSB1bWEgdmVyc8OjbyBjb21vIGFudGVyaW9yIGEgcXVhbHF1ZXIgb3V0cmE6ICIKKyJCPGx0IGxlIGVxIG5lIGdlIGd0Pi4gIEVzc2VzIHRyYXRhbSBhIGZhbHRhIGRlIHVtYSB2ZXJzw6NvIGNvbW8gcG9zdGVyaW9yIGEgIgorInF1YWxxdWVyIG91dHJhOiBCPGx0LW5sIGxlLW5sIGdlLW5sIGd0LW5sPi4gIEVzc2VzIHPDo28gcHJvdmlkb3MgYXBlbmFzIHBhcmEgIgorIm1hbnRlciBjb21wYXRpYmlsaWRhZGUgY29tIGEgc2ludGF4ZSBkbyBhcnF1aXZvIGRlIGNvbnRyb2xlOiBCPEU8bHQ+ICIKKyJFPGx0PkU8bHQ+IEU8bHQ+PSA9IEU8Z3Q+PSBFPGd0PkU8Z3Q+IEU8Z3Q+Pi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MjQ4CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1jb21tYW5kLWZkID5JPG4+IgorbXNnc3RyICJCPGRwa2cgLS1jb21tYW5kLWZkIEU8bHQ+bkU8Z3Q+PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjI1MworIywgZnV6enkKK21zZ2lkICIiCisiQWNjZXB0IGEgc2VyaWVzIG9mIGNvbW1hbmRzIG9uIGlucHV0IGZpbGUgZGVzY3JpcHRvciBJPG4+LiBOb3RlOiBhZGRpdGlvbmFsICIKKyJvcHRpb25zIHNldCBvbiB0aGUgY29tbWFuZCBsaW5lLCBhbmQgdGhyb3VnaCB0aGlzIGZpbGUgZGVzY3JpcHRvciwgYXJlIG5vdCAiCisicmVzZXQgZm9yIHN1YnNlcXVlbnQgY29tbWFuZHMgZXhlY3V0ZWQgZHVyaW5nIHRoZSBzYW1lIHJ1bi4iCittc2dzdHIgIiIKKyJBY2VpdGEgdW1hIHPDqXJpZSBkZSBjb21hbmRvcyBubyBkZXNjcml0b3IgZGUgYXJxdWl2byBkZSBlbnRyYWRhICIKKyJCPEU8bHQ+bkU8Z3Q+Pi4gIE5vdGE6IG9ww6fDtWVzIGFkaWNpb25haXMgY29uZmlndXJhZGFzIG5hIGxpbmhhIGRlIGNvbWFuZG8sIGUgIgorImF0cmF2w6lzIGRvIGRlc2NyaXRvciBkZSBhcnF1aXZvLCBuw6NvIHPDo28gcmVkZWZpbmlkYXMgcGFyYSBjb21hbmRvcyAiCisic3Vic2Vxw7xlbnRlcyB1c2Fkb3MgZHVyYW50ZSBhIG1lc21hIGV4ZWN1w6fDo28uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjI1MyBkcGtnLWFyY2hpdGVjdHVyZS4xOjYwIGRwa2ctYnVpbGRmbGFncy4xOjg5IGRwa2ctZGl2ZXJ0Ljg6NzEKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6MzggZHBrZy1zY2Fuc291cmNlcy4xOjY2IGRwa2ctc3RhdG92ZXJyaWRlLjg6NDQKKyM6IGRwa2ctdmVuZG9yLjE6MjggZHNlbGVjdC4xOjExMyB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzE2CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1oZWxwPiIKK21zZ3N0ciAiQjwtLWhlbHA+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MjU2Cittc2dpZCAiRGlzcGxheSBhIGJyaWVmIGhlbHAgbWVzc2FnZS4iCittc2dzdHIgIkV4aWJlIHVtYSBicmV2ZSBtZW5zYWdlbSBkZSBhanVkYS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MjU2CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1mb3JjZS1oZWxwPiIKK21zZ3N0ciAiQjxkcGtnIC0tZm9yY2UtaGVscD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyNTkKK21zZ2lkICJHaXZlIGhlbHAgYWJvdXQgdGhlIEI8LS1mb3JjZS0+STx0aGluZz4gb3B0aW9ucy4iCittc2dzdHIgIkFqdWRhIGNvbSBhcyBvcMOnw7VlcyBCPC0tZm9yY2UtPkk8Y29pc2E+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToyNTkKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtRGg+LCBCPC0tZGVidWc9aGVscD4iCittc2dzdHIgIkI8LS1ub2NoZWNrPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjI2MgorIywgZnV6enkKK21zZ2lkICJHaXZlIGhlbHAgYWJvdXQgZGVidWdnaW5nIG9wdGlvbnMuIgorbXNnc3RyICJBanVkYSBjb20gYXMgb3DDp8O1ZXMgZGUgZGVwdXJhw6fDo28uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjI2MiBkcGtnLWFyY2hpdGVjdHVyZS4xOjYzIGRwa2ctYnVpbGRmbGFncy4xOjkyCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIyNiBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6MzYgZHBrZy1kaXN0YWRkZmlsZS4xOjM1CisjOiBkcGtnLWRlYi4xOjE3NSBkcGtnLWRpdmVydC44Ojc0IGRwa2ctZ2VuY2hhbmdlcy4xOjEzNCBkcGtnLWdlbmNvbnRyb2wuMToxMjQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQ0NiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjQxIGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTozNgorIzogZHBrZy1xdWVyeS4xOjExMyBkcGtnLXNjYW5wYWNrYWdlcy4xOjk5IGRwa2ctc2NhbnNvdXJjZXMuMTo2OAorIzogZHBrZy1zaGxpYmRlcHMuMToyMTggZHBrZy1zb3VyY2UuMTo5OSBkcGtnLXNwbGl0LjE6MTI5CisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjQ3IGRwa2ctdHJpZ2dlci4xOjM0IGRwa2ctdmVuZG9yLjE6MzEgZHNlbGVjdC4xOjExNgorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjMxOQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tdmVyc2lvbj4iCittc2dzdHIgIkI8LS12ZXJzaW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjI2NQorbXNnaWQgIkRpc3BsYXkgQjxkcGtnPiB2ZXJzaW9uIGluZm9ybWF0aW9uLiIKK21zZ3N0ciAiRXhpYmUgaW5mb3JtYcOnw6NvIHNvYnJlIGEgdmVyc8OjbyBkbyBCPGRwa2c+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToyNjUKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxkcGtnLWRlYiBhY3Rpb25zPiIKK21zZ3N0ciAiQjxkcGtnLWRlYi1hY3Rpb25zPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjI2OAorIywgZnV6enkKK21zZ2lkICJTZWUgQjxkcGtnLWRlYj4oMSkgZm9yIG1vcmUgaW5mb3JtYXRpb24gYWJvdXQgdGhlIGZvbGxvd2luZyBhY3Rpb25zLiIKK21zZ3N0ciAiVmVqYSBCPGRwa2ctZGViPigxKSBwYXJhIG1haXMgaW5mb3JtYcOnw7VlcyBzb2JyZSBhcyBzZWd1aW50ZXMgYcOnw7Vlcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyODgKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiIgorIkI8LWI+LCBCPC0tYnVpbGQ+IEk8ZGlyZWN0b3J5PiBbSTxhcmNoaXZlPnxJPGRpcmVjdG9yeT5dXG4iCisiICAgIEJ1aWxkIGEgZGViIHBhY2thZ2UuXG4iCisiQjwtYz4sIEI8LS1jb250ZW50cz4gSTxhcmNoaXZlPlxuIgorIiAgICBMaXN0IGNvbnRlbnRzIG9mIGEgZGViIHBhY2thZ2UuXG4iCisiQjwtZT4sIEI8LS1jb250cm9sPiBJPGZpbGVuYW1lPiBbSTxkaXJlY3Rvcnk+XVxuIgorIiAgICBFeHRyYWN0IGNvbnRyb2wtaW5mb3JtYXRpb24gZnJvbSBhIHBhY2thZ2UuXG4iCisiQjwteD4sIEI8LS1leHRyYWN0PiBJPGFyY2hpdmUgZGlyZWN0b3J5PlxuIgorIiAgICBFeHRyYWN0IHRoZSBmaWxlcyBjb250YWluZWQgYnkgcGFja2FnZS5cbiIKKyJCPC1YPiwgQjwtLXZleHRyYWN0PiBJPGFyY2hpdmUgZGlyZWN0b3J5PlxuIgorIiAgICBFeHRyYWN0IGFuZCBkaXNwbGF5IHRoZSBmaWxlbmFtZXMgY29udGFpbmVkIGJ5IGFcbiIKKyIgICAgcGFja2FnZS5cbiIKKyJCPC1mPiwgQjwtLWZpZWxkPiAgSTxhcmNoaXZlPiBbSTxjb250cm9sLWZpZWxkPi4uLl1cbiIKKyIgICAgRGlzcGxheSBjb250cm9sIGZpZWxkKHMpIG9mIGEgcGFja2FnZS5cbiIKKyJCPC0tZnN5cy10YXJmaWxlPiBJPGFyY2hpdmU+XG4iCisiICAgIERpc3BsYXkgdGhlIGZpbGVzeXN0ZW0gdGFyLWZpbGUgY29udGFpbmVkIGJ5IGFcbiIKKyIgICAgRGViaWFuIHBhY2thZ2UuXG4iCisiQjwtST4sIEI8LS1pbmZvPiBJPGFyY2hpdmU+IFtJPGNvbnRyb2wtZmlsZT4uLi5dXG4iCisiICAgIFNob3cgaW5mb3JtYXRpb24gYWJvdXQgYSBwYWNrYWdlLlxuIgorbXNnc3RyICIiCisiQjxkcGtnIC1iPiB8IEI8LS1idWlsZD4gSTxkaXJldMOzcmlvPiBbSTxub21lX2RlX2FycXVpdm8+XVxuIgorIiAgICBDcmlhIHVtIHBhY290ZSBkZWIuXG4iCisiQjxkcGtnIC1jPiB8IEI8LS1jb250ZW50cz4gSTxub21lX2RlX2FycXVpdm8+XG4iCisiICAgIExpc3RhIG8gY29udGXDumRvIGRlIHVtIHBhY290ZSBkZWIuXG4iCisiQjxkcGtnIC1lPiB8IEI8LS1jb250cm9sPiBJPG5vbWVfZGVfYXJxdWl2bz4gW0k8ZGlyZXTDs3Jpbz5dXG4iCisiICAgIEV4dHJhaSBpbmZvcm1hw6fDo28gZGUgY29udHJvbGUgZGUgdW0gcGFjb3RlLlxuIgorIkI8ZHBrZyAteD4gfCBCPC0tZXh0cmFjdD4gSTxub21lX2RlX2FycXVpdm8gZGlyZXTDs3Jpbz5cbiIKKyIgICAgRXh0cmFpIG9zIGFycXVpdm9zIGNvbnRpZG9zIHBlbG8gcGFjb3RlLlxuIgorIkI8ZHBrZyAtZj4gfCBCPC0tZmllbGQ+ICBJPG5vbWVfZGVfYXJxdWl2bz4gW0k8Y2FtcG8tZGUtY29udHJvbGU+XSAuLi5cbiIKKyIgICAgRXhpYmUgbyhzKSBjYW1wbyhzKSBkZSBjb250cm9sZSBkbyBwYWNvdGUuXG4iCisiQjxkcGtnIC0tZnN5cy10YXJmaWxlPiBJPG5vbWVfZGVfYXJxdWl2bz5cbiIKKyIgICAgRXhpYmUgbyBzaXN0ZW1hIGRlIGFycXVpdm8gZG8gYXJxdWl2byB0YXIgY29udGlkbyBubyBwYWNvdGUgRGViaWFuLiBcbiIKKyJCPGRwa2cgLUk+IHwgQjwtLWluZm8+IEk8bm9tZV9kZV9hcnF1aXZvPiBbSTxhcnF1aXZvLWRlLWNvbnRyb2xlPl1cbiIKKyIgICAgTW9zdHJhIGluZm9ybWHDp8OjbyBzb2JyZSB1bSBwYWNvdGUuXG4iCisiQjxkcGtnIC1YPiB8IEI8LS12ZXh0cmFjdD4gSTxub21lX2RlX2FycXVpdm8+IEk8ZGlyZXTDs3Jpbz5cbiIKKyIgICAgRXh0cmFpIGUgZXhpYmUgb3Mgbm9tZXMgZGUgYXJxdWl2b3MgY29udGlkb3MgZW0gdW0gcGFjb3RlLlxuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjI5MAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPGRwa2ctcXVlcnkgYWN0aW9ucz4iCittc2dzdHIgIkI8ZHBrZy1xdWVyeS1hY3Rpb25zPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjI5MworbXNnaWQgIlNlZSBCPGRwa2ctcXVlcnk+KDEpIGZvciBtb3JlIGluZm9ybWF0aW9uIGFib3V0IHRoZSBmb2xsb3dpbmcgYWN0aW9ucy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjMwOAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICIiCisiQjwtbD4sIEI8LS1saXN0PiBJPHBhY2thZ2UtbmFtZS1wYXR0ZXJuPi4uLlxuIgorIiAgICBMaXN0IHBhY2thZ2VzIG1hdGNoaW5nIGdpdmVuIHBhdHRlcm4uXG4iCisiQjwtcz4sIEI8LS1zdGF0dXM+IEk8cGFja2FnZS1uYW1lPi4uLlxuIgorIiAgICBSZXBvcnQgc3RhdHVzIG9mIHNwZWNpZmllZCBwYWNrYWdlLlxuIgorIkI8LUw+LCBCPC0tbGlzdGZpbGVzPiBJPHBhY2thZ2UtbmFtZT4uLi5cbiIKKyIgICAgTGlzdCBmaWxlcyBpbnN0YWxsZWQgdG8geW91ciBzeXN0ZW0gZnJvbSBJPHBhY2thZ2UtbmFtZT4uXG4iCisiQjwtUz4sIEI8LS1zZWFyY2g+IEk8ZmlsZW5hbWUtc2VhcmNoLXBhdHRlcm4+Li4uXG4iCisiICAgIFNlYXJjaCBmb3IgYSBmaWxlbmFtZSBmcm9tIGluc3RhbGxlZCBwYWNrYWdlcy5cbiIKKyJCPC1wPiwgQjwtLXByaW50LWF2YWlsPiBJPHBhY2thZ2UtbmFtZT4uLi5cbiIKKyIgICAgRGlzcGxheSBkZXRhaWxzIGFib3V0IEk8cGFja2FnZS1uYW1lPiwgYXMgZm91bmQgaW5cbiIKKyIgICAgSTwvdmFyL2xpYi9kcGtnL2F2YWlsYWJsZT4uIFVzZXJzIG9mIEFQVC1iYXNlZCBmcm9udGVuZHNcbiIKKyIgICAgc2hvdWxkIHVzZSBCPGFwdC1jYWNoZSBzaG93PiBJPHBhY2thZ2UtbmFtZT4gaW5zdGVhZC5cbiIKK21zZ3N0ciAiIgorIkI8ZHBrZyAtbD4gfCBCPC0tbGlzdD4gSTxwYWRyw6NvLWRvLW5vbWUtZG8tcGFjb3RlPiAuLi4gICAgTGlzdGEgb3MgcGFjb3RlcyBxdWUgY29tYmluYW0gY29tIG8gcGFkcsOjbyBkYWRvLlxuIgorIkI8ZHBrZyAtcz4gfCBCPC0tc3RhdHVzPiBJPG5vbWUtZG8tcGFjb3RlPiAuLi5cbiIKKyIgICAgRXhpYmUgbyBlc3RhZG8gZG8gcGFjb3RlIGVzcGVjaWZpY2Fkby4gSXNzbyBhcGVuYXMgbW9zdHJhIGEgZW50cmFkYSBuYSBiYXNlIGRlIGRhZG9zIGRvcyBwYWNvdGVzIGluc3RhbGFkb3MuXG4iCisiQjxkcGtnIC1MPiB8IEI8LS1saXN0ZmlsZXM+IEk8cGFjb3RlPiAuLi5cbiIKKyIgICAgTGlzdGEgb3MgYXJxdWl2b3MgaW5zdGFsYWRvcyBlbSBzZXUgc2lzdGVtYSBhIHBhcnRpciBkbyBCPHBhY290ZT4uXG4iCisiQjxkcGtnIC1TPiB8IEI8LS1zZWFyY2g+IEk8cGFkcsOjby1kZS1wcm9jdXJhPiAuLi5cbiIKKyIgICAgUHJvY3VyYSBwb3IgdW0gbm9tZSBkZSBhcnF1aXZvIGEgcGFydGlyIGRvcyBwYWNvdGVzIGluc3RhbGFkb3MuIFRvZG9zIG9zIGNhcmFjdGVyZXMgY3VyaW5nYSBwYWRyw7VlcyBkZSBzaGVsbCBwb2RlbSBzZXIgdXNhZG9zIG5vIHBhZHLDo28uXG4iCisiQjxkcGtnICAtcHwtLXByaW50LWF2YWlsID5JPHBhY290ZT5cbiIKKyIgICAgRXhpYmUgZGV0YWxoZXMgc29icmUgbyBJPHBhY290ZT4sIGNvbW8gZW5jb250cmFkb3MgZW0gSTwvdmFyL2xpYi9kcGtnL2F2YWlsYWJsZT4uXG4iCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLjE6MzEwIGRwa2ctYXJjaGl0ZWN0dXJlLjE6NjcgZHBrZy1idWlsZHBhY2thZ2UuMTo1MAorIzogZHBrZy1jaGVja2J1aWxkZGVwcy4xOjE4IGRwa2ctZGlzdGFkZGZpbGUuMToyNyBkcGtnLWRlYi4xOjE3OQorIzogZHBrZy1kaXZlcnQuODo0MiBkcGtnLWdlbmNoYW5nZXMuMToxNyBkcGtnLWdlbmNvbnRyb2wuMTozNworIzogZHBrZy1nZW5zeW1ib2xzLjE6MzY5IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6MjcgZHBrZy1uYW1lLjE6MzAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxNSBkcGtnLXF1ZXJ5LjE6MTE3IGRwa2ctc2NhbnBhY2thZ2VzLjE6NzEKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMTo0NCBkcGtnLXNobGliZGVwcy4xOjEwNiBkcGtnLXNwbGl0LjE6MTMzCisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjUxIGRwa2ctdHJpZ2dlci4xOjM4IGRwa2ctdmVuZG9yLjE6MzUgZHNlbGVjdC4xOjM2CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjEwMyB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzIzCisjLCBuby13cmFwCittc2dpZCAiT1BUSU9OUyIKK21zZ3N0ciAiT1DDh8OVRVMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTozMTYKKyMsIGZ1enp5Cittc2dpZCAiIgorIkFsbCBvcHRpb25zIGNhbiBiZSBzcGVjaWZpZWQgYm90aCBvbiB0aGUgY29tbWFuZCBsaW5lIGFuZCBpbiB0aGUgQjxkcGtnPiAiCisiY29uZmlndXJhdGlvbiBmaWxlIEk8L2V0Yy9kcGtnL2Rwa2cuY2ZnPiBvciB0aGUgZmlsZXMgb24gdGhlIGNvbmZpZ3VyYXRpb24gIgorImRpcmVjdG9yeSBJPC9ldGMvZHBrZy9kcGtnLmNmZy5kLz4uIEVhY2ggbGluZSBpbiB0aGUgY29uZmlndXJhdGlvbiBmaWxlIGlzICIKKyJlaXRoZXIgYW4gb3B0aW9uIChleGFjdGx5IHRoZSBzYW1lIGFzIHRoZSBjb21tYW5kIGxpbmUgb3B0aW9uIGJ1dCB3aXRob3V0ICIKKyJsZWFkaW5nIGRhc2hlcykgb3IgYSBjb21tZW50IChpZiBpdCBzdGFydHMgd2l0aCBhIEI8Iz4pLiIKK21zZ3N0ciAiIgorIlRvZGFzIGFzIG9ww6fDtWVzIHBvZGVtIHNlciBlc3BlY2lmaWNhZGFzIHRhbnRvIG5hIGxpbmhhIGRlIGNvbWFuZG8gcXVhbnRvIG5vICIKKyJhcnF1aXZvIGRlIGNvbmZpZ3VyYcOnw6NvIGRvIEI8ZHBrZz4gY2hhbWFkbyBJPC9ldGMvZHBrZy9kcGtnLmNmZz4uIENhZGEgbGluaGEgIgorIm5vIGFycXVpdm8gZGUgY29uZmlndXJhw6fDo28gw6kgdW1hIG9ww6fDo28gKGV4YXRhbWVudGUgYSBtZXNtYSBvcMOnw6NvIGRhIGxpbmhhIGRlICIKKyJjb21hbmRvLCBtYXMgc2VtIG9zIGjDrWZlbnMpICBvdSB1bSBjb21lbnTDoXJpbyAoc2UgY29tZcOnYXIgY29tIHVtYSBCPCM+KS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MzE3CisjLCBuby13cmFwCittc2dpZCAiQjwtLWFib3J0LWFmdGVyPT5JPG51bWJlcj4iCittc2dzdHIgIkI8LS1hYm9ydC1hZnRlcj0+STxuw7ptZXJvPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjMyMAorIywgZnV6enkKK21zZ2lkICJDaGFuZ2UgYWZ0ZXIgaG93IG1hbnkgZXJyb3JzIEI8ZHBrZz4gd2lsbCBhYm9ydC4gVGhlIGRlZmF1bHQgaXMgNTAuIgorbXNnc3RyICJBbHRlcmEgbyBuw7ptZXJvIGRlIGVycm9zIGFww7NzIG9zIHF1YWlzIG8gZHBrZyBhYm9ydGFyw6EuIE8gcGFkcsOjbyDDqSA1MC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MzIwCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LUI+LCBCPC0tYXV0by1kZWNvbmZpZ3VyZT4iCittc2dzdHIgIkI8LUI+fEI8LS1hdXRvLWRlY29uZmlndXJlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjMyNgorIywgZnV6enkKK21zZ2lkICIiCisiV2hlbiBhIHBhY2thZ2UgaXMgcmVtb3ZlZCwgdGhlcmUgaXMgYSBwb3NzaWJpbGl0eSB0aGF0IGFub3RoZXIgaW5zdGFsbGVkICIKKyJwYWNrYWdlIGRlcGVuZGVkIG9uIHRoZSByZW1vdmVkIHBhY2thZ2UuIFNwZWNpZnlpbmcgdGhpcyBvcHRpb24gd2lsbCBjYXVzZSAiCisiYXV0b21hdGljIGRlY29uZmlndXJhdGlvbiBvZiB0aGUgcGFja2FnZSB3aGljaCBkZXBlbmRlZCBvbiB0aGUgcmVtb3ZlZCAiCisicGFja2FnZS4iCittc2dzdHIgIiIKKyJRdWFuZG8gdW0gcGFjb3RlIMOpIHJlbW92aWRvLCBow6EgYSBwb3NzaWJpbGlkYWRlIGRlIHF1ZSBvdXRybyBwYWNvdGUgIgorImluc3RhbGFkbyBkZXBlbmRhIGRvIHF1ZSBmb2kgcmVtb3ZpZG8uIEVzcGVjaWZpY2FuZG8gZXNzYSBvcMOnw6NvLCBvIHBhY290ZSAiCisicXVlIGRlcGVuZGUgZG8gcXVlIGZvaSByZW1vdmlkbyBzZXLDoSBhdXRvbWF0aWNhbWVudGUgZGVzY29uZmlndXJhZG8uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjMyNgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1EPkk8b2N0YWw+QjwsIC0tZGVidWc9Pkk8b2N0YWw+IgorbXNnc3RyICJCPC1EPkk8b2N0YWw+QjwgfCAtLWRlYnVnPT5JPG9jdGFsPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjMzMgorIywgZnV6enkKK21zZ2lkICIiCisiU3dpdGNoIGRlYnVnZ2luZyBvbi4gSTxvY3RhbD4gaXMgZm9ybWVkIGJ5IGJpdHdpc2Utb3JyaW5nIGRlc2lyZWQgdmFsdWVzICIKKyJ0b2dldGhlciBmcm9tIHRoZSBsaXN0IGJlbG93IChub3RlIHRoYXQgdGhlc2UgdmFsdWVzIG1heSBjaGFuZ2UgaW4gZnV0dXJlICIKKyJyZWxlYXNlcykuIEI8LURoPiBvciBCPC0tZGVidWc9aGVscD4gZGlzcGxheSB0aGVzZSBkZWJ1Z2dpbmcgdmFsdWVzLiIKK21zZ3N0ciAiIgorIkF0aXZhIGEgZGVwdXJhw6fDo28uICBJPG9jdGFsPiDDqSBmb3JtYWRvIHBvciB1bWEgb3BlcmHDp8OjbyBcIm9yXCIgYml0LWEtYml0ICIKKyJlbnRyZSBvcyB2YWxvcmVzIGRlc2VqYWRvcyBkYSBsaXN0YSBhYmFpeG8gKG5vdGUgcXVlIGVzc2VzIHZhbG9yZXMgcG9kZW0gc2VyICIKKyJhbHRlcmFkb3MgZW0gdmVyc8O1ZXMgZnV0dXJhcykuICBCPC1EaD4gb3UgQjwtLWRlYnVnPWhlbHA+IGV4aWJlIGVzc2VzICIKKyJ2YWxvcmVzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjM0NworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICIiCisiICAgIE51bWJlciAgIERlc2NyaXB0aW9uXG4iCisiICAgICAgICAgMSAgIEdlbmVyYWxseSBoZWxwZnVsIHByb2dyZXNzIGluZm9ybWF0aW9uXG4iCisiICAgICAgICAgMiAgIEludm9jYXRpb24gYW5kIHN0YXR1cyBvZiBtYWludGFpbmVyIHNjcmlwdHNcbiIKKyIgICAgICAgIDEwICAgT3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkXG4iCisiICAgICAgIDEwMCAgIExvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkXG4iCisiICAgICAgICAyMCAgIE91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGVcbiIKKyIgICAgICAgMjAwICAgTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggY29uZmlndXJhdGlvbiBmaWxlXG4iCisiICAgICAgICA0MCAgIERlcGVuZGVuY2llcyBhbmQgY29uZmxpY3RzXG4iCisiICAgICAgIDQwMCAgIExvdHMgb2YgZGVwZW5kZW5jaWVzL2NvbmZsaWN0cyBvdXRwdXRcbiIKKyIgICAgIDEwMDAwICAgVHJpZ2dlciBhY3RpdmF0aW9uIGFuZCBwcm9jZXNzaW5nXG4iCisiICAgICAyMDAwMCAgIExvdHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2Vyc1xuIgorIiAgICAgNDAwMDAgICBTaWxseSBhbW91bnRzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnNcbiIKKyIgICAgICAxMDAwICAgTG90cyBvZiBkcml2ZWwgYWJvdXQgZS5nLiB0aGUgZHBrZy9pbmZvIGRpclxuIgorIiAgICAgIDIwMDAgICBJbnNhbmUgYW1vdW50cyBvZiBkcml2ZWxcbiIKK21zZ3N0ciAiIgorIiBuw7ptZXJvICBkZXNjcmnDp8Ojb1xuIgorIiAgICAxICAgSW5mb3JtYcOnw6NvIGRlIHByb2dyZXNzbyBnZXJhbG1lbnRlIMO6dGlsXG4iCisiICAgIDIgICBJbnZvY2HDp8OjbyBlIGVzdGFkbyBkb3Mgc2NyaXB0cyBkbyBtYW50ZW5lZG9yXG4iCisiICAgMTAgICBTYcOtZGEgZGUgY2FkYSBhcnF1aXZvIHByb2Nlc3NhZG9cbiIKKyIgIDEwMCAgIE11aXRhIHNhw61kYSBkZSBjYWRhIGFycXVpdm8gcHJvY2Vzc2Fkb1xuIgorIiAgIDIwICAgU2HDrWRhIGRlIGNhZGEgYXJxdWl2byBkZSBjb25maWd1cmHDp8Ojb1xuIgorIiAgMjAwICAgTXVpdGEgc2HDrWRhIGRlIGNhZGEgYXJxdWl2byBkZSBjb25maWd1cmHDp8Ojb1xuIgorIiAgIDQwICAgRGVwZW5kw6puY2lhcyBlIGNvbmZsaXRvc1xuIgorIiAgNDAwICAgTXVpdGEgc2HDrWRhIGRlIGRlcGVuZMOqbmNpYXMvY29uZmxpdG9zXG4iCisiIDEwMDAgICBNdWl0YSB0YWdhcmVsaWNlIHNvYnJlIHBvciBleGVtcGxvIG8gZGlyZXTDs3JpbyBkcGtnL2luZm9cbiIKKyIgMjAwMCAgIFF1YW50aWRhZGVzIGluc2FuYXMgZGUgc2HDrWRhLlxuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjM0NworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tZm9yY2UtPkk8dGhpbmdzPiwgQjwtLW5vLWZvcmNlLT5JPHRoaW5ncz4sIEI8LS1yZWZ1c2UtPkk8dGhpbmdzPiIKK21zZ3N0ciAiQjwtLWZvcmNlLT5JPGNvaXNhcz4gfCBCPC0tbm8tZm9yY2UtPkk8Y29pc2FzPiB8IEI8LS1yZWZ1c2UtPkk8Y29pc2FzPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjM1NAorIywgZnV6enkKK21zZ2lkICIiCisiRm9yY2Ugb3IgcmVmdXNlIChCPG5vLWZvcmNlPiBhbmQgQjxyZWZ1c2U+IG1lYW4gdGhlIHNhbWUgdGhpbmcpICB0byBkbyBzb21lICIKKyJ0aGluZ3MuIEk8dGhpbmdzPiBpcyBhIGNvbW1hIHNlcGFyYXRlZCBsaXN0IG9mIHRoaW5ncyBzcGVjaWZpZWQgYmVsb3cuIEI8LS0iCisiZm9yY2UtaGVscD4gZGlzcGxheXMgYSBtZXNzYWdlIGRlc2NyaWJpbmcgdGhlbS4gIFRoaW5ncyBtYXJrZWQgd2l0aCAoKikgYXJlICIKKyJmb3JjZWQgYnkgZGVmYXVsdC4iCittc2dzdHIgIiIKKyJGb3LDp2Egb3UgcmVqZWl0YSAoQjxuby1mb3JjZT4gZSBCPHJlZnVzZT4gc8OjbyBhIG1lc21hIGNvaXNhKSAgYSBmYXplciAiCisiYWxndW1hcyBjb2lzYXMuICBJPGNvaXNhcz4gw6kgdW1hIGxpc3RhIHNlcGFyYWRhIHBvciB2w61yZ3VsYXMgZGUgY29pc2FzICIKKyJlc3BlY2lmaWNhZGFzIGFiYWl4by4gIEI8LS1mb3JjZS1oZWxwPiBleGliZSB1bWEgbWVuc2FnZW0gZGVzY3JldmVuZG8tYXMuICAiCisiQ29pc2FzIG1hcmNhZGFzIGNvbSAoKikgc8OjbyBmb3LDp2FkYXMgcG9yIHBhZHLDo28uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzU4CisjLCBmdXp6eQorbXNnaWQgIiIKKyJJPFdhcm5pbmc6IFRoZXNlIG9wdGlvbnMgYXJlIG1vc3RseSBpbnRlbmRlZCB0byBiZSB1c2VkIGJ5IGV4cGVydHMgb25seS4gIgorIlVzaW5nIHRoZW0gd2l0aG91dCBmdWxseSB1bmRlcnN0YW5kaW5nIHRoZWlyIGVmZmVjdHMgbWF5IGJyZWFrIHlvdXIgd2hvbGUgIgorInN5c3RlbS4+IgorbXNnc3RyICIiCisiSTxBdGVuw6fDo286IEEgbWFpb3IgcGFydGUgZGVzc2FzIG9ww6fDtWVzIGRldmVtIHNlciB1c2FkYXMgYXBlbmFzIHBvciBleHBlcnRzLiAiCisiVXPDoS1sYXMgc2VtIG8gY29tcGxldG8gY29uaGVjaW1lbnRvIGRlIHNldXMgZWZlaXRvcyBwb2RlIHF1ZWJyYXIgdG9kbyBzZXUgIgorInNpc3RlbWEuPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjM2MQorIywgZnV6enkKK21zZ2lkICJCPGFsbD46IFR1cm5zIG9uIChvciBvZmYpIGFsbCBmb3JjZSBvcHRpb25zLiIKK21zZ3N0ciAiQjxhbGw+OiBMaWdhIChvdSBkZXNsaWdhKSB0b2RhcyBhcyBvcMOnw7VlcyBkZSBmb3LDp2EuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzY0CisjLCBmdXp6eQorbXNnaWQgIiIKKyJCPGRvd25ncmFkZT4oKik6IEluc3RhbGwgYSBwYWNrYWdlLCBldmVuIGlmIG5ld2VyIHZlcnNpb24gb2YgaXQgaXMgYWxyZWFkeSAiCisiaW5zdGFsbGVkLiIKK21zZ3N0ciAiIgorIkI8ZG93bmdyYWRlPigqKTogSW5zdGFsYSB1bSBwYWNvdGUsIG1lc21vIHNlIHVtYSB2ZXJzw6NvIG1haXMgbm92YSBqw6EgZXN0aXZlciAiCisiaW5zdGFsYWRhLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjM3MQorbXNnaWQgIiIKKyJJPFdhcm5pbmc6IEF0IHByZXNlbnQgZHBrZyBkb2VzIG5vdCBkbyBhbnkgZGVwZW5kZW5jeSBjaGVja2luZyBvbiBkb3duZ3JhZGVzICIKKyJhbmQgdGhlcmVmb3JlIHdpbGwgbm90IHdhcm4geW91IGlmIHRoZSBkb3duZ3JhZGUgYnJlYWtzIHRoZSBkZXBlbmRlbmN5IG9mICIKKyJzb21lIG90aGVyIHBhY2thZ2UuIFRoaXMgY2FuIGhhdmUgc2VyaW91cyBzaWRlIGVmZmVjdHMsIGRvd25ncmFkaW5nICIKKyJlc3NlbnRpYWwgc3lzdGVtIGNvbXBvbmVudHMgY2FuIGV2ZW4gbWFrZSB5b3VyIHdob2xlIHN5c3RlbSB1bnVzYWJsZS4gVXNlICIKKyJ3aXRoIGNhcmUuPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6Mzc1CisjLCBmdXp6eQorbXNnaWQgIiIKKyJCPGNvbmZpZ3VyZS1hbnk+OiBDb25maWd1cmUgYWxzbyBhbnkgdW5wYWNrZWQgYnV0IHVuY29uZmlndXJlZCBwYWNrYWdlcyBvbiAiCisid2hpY2ggdGhlIGN1cnJlbnQgcGFja2FnZSBkZXBlbmRzLiIKK21zZ3N0ciAiIgorIkI8Y29uZmlndXJlLWFueT46IENvbmZpZ3VyYSB0YW1iw6ltIHF1YWxxdWVyIHBhY290ZSBkZXNjb21wYWN0YWRvIGRlIHF1ZSBvICIKKyJwYWNvdGUgYXR1YWwgZGVwZW5kYS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTozNzgKK21zZ2lkICJCPGhvbGQ+OiBQcm9jZXNzIHBhY2thZ2VzIGV2ZW4gd2hlbiBtYXJrZWQgXCJob2xkXCIuIgorbXNnc3RyICJCPGhvbGQ+OiBQcm9jZXNzYSBwYWNvdGVzIG1lc21vIHF1YW5kbyBtYXJjYWRvcyBjb20gXCJob2xkXCIuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzgzCisjLCBmdXp6eQorbXNnaWQgIiIKKyJCPHJlbW92ZS1yZWluc3RyZXE+OiBSZW1vdmUgYSBwYWNrYWdlLCBldmVuIGlmIGl0J3MgYnJva2VuIGFuZCBtYXJrZWQgdG8gIgorInJlcXVpcmUgcmVpbnN0YWxsYXRpb24uIFRoaXMgbWF5LCBmb3IgZXhhbXBsZSwgY2F1c2UgcGFydHMgb2YgdGhlIHBhY2thZ2UgdG8gIgorInJlbWFpbiBvbiB0aGUgc3lzdGVtLCB3aGljaCB3aWxsIHRoZW4gYmUgZm9yZ290dGVuIGJ5IEI8ZHBrZz4uIgorbXNnc3RyICIiCisiQjxyZW1vdmUtcmVpbnN0cmVxPjogUmVtb3ZlIHVtIHBhY290ZSwgbWVzbW8gc2UgZXN0aXZlciBxdWVicmFkbyBlIG1hcmNhZG8gIgorImNvbW8gcmVxdWVyIHJlaW5zdGFsYcOnw6NvLiBJc3NvIHBvZGUsIHBvciBleGVtcGxvLCBmYXplciBjb20gcXVlIHBhcnRlcyBkbyAiCisicGFjb3RlIHBlcm1hbmXDp2FtIGVtIHNldSBzaXN0ZW1hLCBxdWUgc2Vyw6NvIGVudMOjbyBlc3F1ZWNpZGFzIHBlbG8gQjxkcGtnPi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTozODgKKyMsIGZ1enp5Cittc2dpZCAiIgorIkI8cmVtb3ZlLWVzc2VudGlhbD46IFJlbW92ZSwgZXZlbiBpZiB0aGUgcGFja2FnZSBpcyBjb25zaWRlcmVkIGVzc2VudGlhbC4gIgorIkVzc2VudGlhbCBwYWNrYWdlcyBjb250YWluIG1vc3RseSB2ZXJ5IGJhc2ljIFVuaXggY29tbWFuZHMuIFJlbW92aW5nIHRoZW0gIgorIm1pZ2h0IGNhdXNlIHRoZSB3aG9sZSBzeXN0ZW0gdG8gc3RvcCB3b3JraW5nLCBzbyB1c2Ugd2l0aCBjYXV0aW9uLiIKK21zZ3N0ciAiIgorIkI8cmVtb3ZlLWVzc2VudGlhbD46IFJlbW92ZSwgbWVzbW8gc2UgbyBwYWNvdGUgw6kgY29uc2lkZXJhZG8gZXNzZW5jaWFsLiAiCisiUGFjb3RlcyBlc3NlbmNpYWlzIGNvbnTDqW0gZ2VyYWxtZW50ZSBjb21hbmRvcyBtdWl0byBiw6FzaWNvcyBkZSBVbml4LiBSZW1vdsOqLSIKKyJsb3MgcG9kZSBjYXVzYXIgYSBwYXJhZGEgZGUgZnVuY2lvbmFtZW50byBkZSB0b2RvIG8gc2lzdGVtYSwgZW50w6NvIHVzZS1hIGNvbSAiCisiY3VpZGFkby4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTozOTEKK21zZ2lkICJCPGRlcGVuZHM+OiBUdXJuIGFsbCBkZXBlbmRlbmN5IHByb2JsZW1zIGludG8gd2FybmluZ3MuIgorbXNnc3RyICJCPGRlcGVuZHM+OiBDb252ZXJ0ZSB0b2RvcyBvcyBwcm9ibGVtYXMgZGUgZGVwZW5kw6puY2lhIGVtIGF2aXNvcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTozOTQKK21zZ2lkICIiCisiQjxkZXBlbmRzLXZlcnNpb24+OiBEb24ndCBjYXJlIGFib3V0IHZlcnNpb25zIHdoZW4gY2hlY2tpbmcgZGVwZW5kZW5jaWVzLiIKK21zZ3N0ciAiIgorIkI8ZGVwZW5kcy12ZXJzaW9uPjogTsOjbyB2ZXJpZmljYSB2ZXJzw7VlcyBxdWFuZG8gdmVyaWZpY2FuZG8gZGVwZW5kw6puY2lhcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTozOTcKK21zZ2lkICJCPGJyZWFrcz46IEluc3RhbGwsIGV2ZW4gaWYgdGhpcyB3b3VsZCBicmVhayBhbm90aGVyIHBhY2thZ2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0MDEKK21zZ2lkICIiCisiQjxjb25mbGljdHM+OiBJbnN0YWxsLCBldmVuIGlmIGl0IGNvbmZsaWN0cyB3aXRoIGFub3RoZXIgcGFja2FnZS4gVGhpcyBpcyAiCisiZGFuZ2Vyb3VzLCBmb3IgaXQgd2lsbCB1c3VhbGx5IGNhdXNlIG92ZXJ3cml0aW5nIG9mIHNvbWUgZmlsZXMuIgorbXNnc3RyICIiCisiQjxjb25mbGljdHM+OiBJbnN0YWxhLCBtZXNtbyBzZSBjb25mbGl0YSBjb20gb3V0cm8gcGFjb3RlLiBJc3NvIMOpIHBlcmlnb3NvLCAiCisicG9pcyBnZXJhbG1lbnRlIGNhdXNhcsOhIGEgcmVncmF2YcOnw6NvIGRlIGFsZ3VucyBhcnF1aXZvcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0MDYKKyMsIGZ1enp5Cittc2dpZCAiIgorIkI8Y29uZm1pc3M+OiBBbHdheXMgaW5zdGFsbCBhIG1pc3NpbmcgY29uZmZpbGUuIFRoaXMgaXMgZGFuZ2Vyb3VzLCBzaW5jZSBpdCAiCisibWVhbnMgbm90IHByZXNlcnZpbmcgYSBjaGFuZ2UgKHJlbW92aW5nKSBtYWRlIHRvIHRoZSBmaWxlLiIKK21zZ3N0ciAiIgorIkI8Y29uZm1pc3M+OiBTZW1wcmUgaW5zdGFsYSB1bSBhcnF1aXZvIGRlIGNvbmZpZ3VyYcOnw6NvIHF1ZSBmYWx0YS4gSXNzbyDDqSAiCisicGVyaWdvc28sIGrDoSBxdWUgc2lnbmlmaWNhIHF1ZSB1bWEgbXVkYW7Dp2EgKHJlbW/Dp8OjbykgZmVpdGEgYW8gYXJxdWl2byBuw6NvICIKKyJzZXLDoSBwcmVzZXJ2YWRhLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQxMQorIywgZnV6enkKK21zZ2lkICIiCisiQjxjb25mbmV3PjogSWYgYSBjb25mZmlsZSBoYXMgYmVlbiBtb2RpZmllZCBhbHdheXMgaW5zdGFsbCB0aGUgbmV3IHZlcnNpb24gIgorIndpdGhvdXQgcHJvbXB0aW5nLCB1bmxlc3MgdGhlIEI8LS1mb3JjZS1jb25mZGVmPiBpcyBhbHNvIHNwZWNpZmllZCwgaW4gd2hpY2ggIgorImNhc2UgdGhlIGRlZmF1bHQgYWN0aW9uIGlzIHByZWZlcnJlZC4iCittc2dzdHIgIiIKKyJCPGNvbmZuZXc+OiBTZSB1bSBhcnF1aXZvIGRlIGNvbmZpZ3VyYcOnw6NvIGZvaSBtb2RpZmljYWRvLCBzZW1wcmUgaW5zdGFsYSBhICIKKyJub3ZhIHZlcnPDo28gc2VtIHBlcmd1bnRhciwgYSBtZW5vcyBxdWUgQjwtLWZvcmNlLWNvbmZkZWY+IHRhbWLDqW0gc2VqYSAiCisiZXNwZWNpZmljYWRhLCBxdWFuZG8gYSBhw6fDo28gcGFkcsOjbyDDqSBlbnTDo28gcHJlZmVyaWRhLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQxNgorIywgZnV6enkKK21zZ2lkICIiCisiQjxjb25mb2xkPjogSWYgYSBjb25mZmlsZSBoYXMgYmVlbiBtb2RpZmllZCBhbHdheXMga2VlcCB0aGUgb2xkIHZlcnNpb24gIgorIndpdGhvdXQgcHJvbXB0aW5nLCB1bmxlc3MgdGhlIEI8LS1mb3JjZS1jb25mZGVmPiBpcyBhbHNvIHNwZWNpZmllZCwgaW4gd2hpY2ggIgorImNhc2UgdGhlIGRlZmF1bHQgYWN0aW9uIGlzIHByZWZlcnJlZC4iCittc2dzdHIgIiIKKyJCPGNvbmZvbGQ+OiBTZSB1bSBhcnF1aXZvIGRlIGNvbmZpZ3VyYcOnw6NvIGZvaSBtb2RpZmljYWRvLCBzZW1wcmUgbWFudMOpbSBhICIKKyJ2ZXJzw6NvIGFudGlnYSBzZW0gcGVyZ3VudGFyLCBhIG1lbm9zIHF1ZSBCPC0tZm9yY2UtY29uZmRlZj4gdGFtYsOpbSBzZWphICIKKyJlc3BlY2lmaWNhZGEsIHF1YW5kbyBhIGHDp8OjbyBwYWRyw6NvIMOpIGVudMOjbyBwcmVmZXJpZGEuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDIyCisjLCBmdXp6eQorbXNnaWQgIiIKKyJCPGNvbmZkZWY+OiBJZiBhIGNvbmZmaWxlIGhhcyBiZWVuIG1vZGlmaWVkIGFsd2F5cyBjaG9vc2UgdGhlIGRlZmF1bHQgIgorImFjdGlvbi4gSWYgdGhlcmUgaXMgbm8gZGVmYXVsdCBhY3Rpb24gaXQgd2lsbCBzdG9wIHRvIGFzayB0aGUgdXNlciB1bmxlc3MgIgorIkI8LS1mb3JjZS1jb25mbmV3PiBvciBCPC0tZm9yY2UtY29uZm9sZD4gaXMgYWxzbyBiZWVuIGdpdmVuLCBpbiB3aGljaCBjYXNlICIKKyJpdCB3aWxsIHVzZSB0aGF0IHRvIGRlY2lkZSB0aGUgZmluYWwgYWN0aW9uLiIKK21zZ3N0ciAiIgorIkI8Y29uZmRlZj46IFNlIHVtIGFycXVpdm8gZGUgY29uZmlndXJhw6fDo28gZm9pIG1vZGlmaWNhZG8sIHNlbXByZSBlc2NvbGhlIGEgIgorImHDp8OjbyBwYWRyw6NvLiBTZSBuw6NvIGhvdXZlciBhw6fDo28gcGFkcsOjbywgZWxlIGlyw6EgcGFyYXIgZSBwZXJndW50YXIgYW8gIgorInVzdcOhcmlvLCBhIG1lbm9zIHF1ZSBCPC0tZm9yY2UtY29uZm5ldz4gb3UgQjwtLWZvcmNlLWNvbmZvbGQ+IHRhbWLDqW0gdGVuaGFtICIKKyJzaWRvIGRhZGFzLCBxdWFuZG8gc2Vyw6EgZW50w6NvIHVzYWRvIGlzc28gcGFyYSBkZWNpZGlyIGEgYcOnw6NvIGZpbmFsLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQyOQorIywgZnV6enkKK21zZ2lkICIiCisiQjxjb25mYXNrPjogSWYgYSBjb25mZmlsZSBoYXMgYmVlbiBtb2RpZmllZCBhbHdheXMgb2ZmZXIgdG8gcmVwbGFjZSBpdCB3aXRoICIKKyJ0aGUgdmVyc2lvbiBpbiB0aGUgcGFja2FnZSwgZXZlbiBpZiB0aGUgdmVyc2lvbiBpbiB0aGUgcGFja2FnZSBkaWQgbm90ICIKKyJjaGFuZ2UuIElmIGFueSBvZiBCPC0tZm9yY2UtY29uZm1pc3M+LCBCPC0tZm9yY2UtY29uZm5ldz4sIEI8LS1mb3JjZS0iCisiY29uZm9sZD4sIG9yIEI8LS1mb3JjZS1jb25mZGVmPiBpcyBhbHNvIGdpdmVuLCBpdCB3aWxsIGJlIHVzZWQgdG8gZGVjaWRlIHRoZSAiCisiZmluYWwgYWN0aW9uLiIKK21zZ3N0ciAiIgorIkI8Y29uZmRlZj46IFNlIHVtIGFycXVpdm8gZGUgY29uZmlndXJhw6fDo28gZm9pIG1vZGlmaWNhZG8sIHNlbXByZSBlc2NvbGhlIGEgIgorImHDp8OjbyBwYWRyw6NvLiBTZSBuw6NvIGhvdXZlciBhw6fDo28gcGFkcsOjbywgZWxlIGlyw6EgcGFyYXIgZSBwZXJndW50YXIgYW8gIgorInVzdcOhcmlvLCBhIG1lbm9zIHF1ZSBCPC0tZm9yY2UtY29uZm5ldz4gb3UgQjwtLWZvcmNlLWNvbmZvbGQ+IHRhbWLDqW0gdGVuaGFtICIKKyJzaWRvIGRhZGFzLCBxdWFuZG8gc2Vyw6EgZW50w6NvIHVzYWRvIGlzc28gcGFyYSBkZWNpZGlyIGEgYcOnw6NvIGZpbmFsLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQzMgorbXNnaWQgIkI8b3ZlcndyaXRlPjogT3ZlcndyaXRlIG9uZSBwYWNrYWdlJ3MgZmlsZSB3aXRoIGFub3RoZXIncyBmaWxlLiIKK21zZ3N0ciAiQjxvdmVyd3JpdGU+OiBTb2JyZXNjcmV2ZSB1bSBhcnF1aXZvIGRvIHBhY290ZSBjb20gYXJxdWl2byBkZSBvdXRyby4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0MzUKK21zZ2lkICJCPG92ZXJ3cml0ZS1kaXI+IE92ZXJ3cml0ZSBvbmUgcGFja2FnZSdzIGRpcmVjdG9yeSB3aXRoIGFub3RoZXIncyBmaWxlLiIKK21zZ3N0ciAiIgorIkI8b3ZlcndyaXRlLWRpcj4gU29icmVzY3JldmUgdW0gZGlyZXTDs3JpbyBkbyBwYWNvdGUgY29tIGFycXVpdm8gZGUgb3V0cm8uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDM4CisjLCBmdXp6eQorbXNnaWQgIiIKKyJCPG92ZXJ3cml0ZS1kaXZlcnRlZD46IE92ZXJ3cml0ZSBhIGRpdmVydGVkIGZpbGUgd2l0aCBhbiB1bmRpdmVydGVkIHZlcnNpb24uIgorbXNnc3RyICIiCisiQjxvdmVyd3JpdGUtZGl2ZXJ0ZWQ+OiBTb2JyZXNjcmV2ZSB1bSBhcnF1aXZvIGRlc3ZpYWRvIGNvbSB1bWEgdmVyc8OjbyBuw6NvICIKKyJkZXN2aWFkYS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0NDYKK21zZ2lkICIiCisiQjx1bnNhZmUtaW8+OiBEbyBub3QgcGVyZm9ybSBzYWZlIEkvTyBvcGVyYXRpb25zIHdoZW4gdW5wYWNraW5nLiBDdXJyZW50bHkgIgorInRoaXMgaW1wbGllcyBub3QgcGVyZm9ybWluZyBmaWxlIHN5c3RlbSBzeW5jcyBiZWZvcmUgZmlsZSByZW5hbWVzLCB3aGljaCBpcyAiCisia25vd24gdG8gY2F1c2Ugc3Vic3RhbnRpYWwgcGVyZm9ybWFuY2UgZGVncmFkYXRpb24gb24gc29tZSBmaWxlIHN5c3RlbXMsICIKKyJ1bmZvcnR1bmF0ZWx5IHRoZSBvbmVzIHRoYXQgcmVxdWlyZSB0aGUgc2FmZSBJL08gb24gdGhlIGZpcnN0IHBsYWNlIGR1ZSB0byAiCisidGhlaXIgdW5yZWxpYWJsZSBiZWhhdmlvdXIgY2F1c2luZyB6ZXJvLWxlbmd0aCBmaWxlcyBvbiBhYnJ1cHQgc3lzdGVtICIKKyJjcmFzaGVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDUyCittc2dpZCAiIgorIkk8Tm90ZT46IEZvciBleHQ0LCB0aGUgbWFpbiBvZmZlbmRlciwgY29uc2lkZXIgdXNpbmcgaW5zdGVhZCB0aGUgbW91bnQgIgorIm9wdGlvbiBCPG5vZGVsYWxsb2M+LCB3aGljaCB3aWxsIGZpeCBib3RoIHRoZSBwZXJmb3JtYW5jZSBkZWdyYWRhdGlvbiBhbmQgIgorInRoZSBkYXRhIHNhZmV0eSBpc3N1ZXMsIHRoZSBsYXR0ZXIgYnkgbWFraW5nIHRoZSBmaWxlIHN5c3RlbSBub3QgcHJvZHVjZSAiCisiemVyby1sZW5ndGggZmlsZXMgb24gYWJydXB0IHN5c3RlbSBjcmFzaGVzIHdpdGggYW55IHNvZnR3YXJlIG5vdCBkb2luZyBzeW5jcyAiCisiYmVmb3JlIGF0b21pYyByZW5hbWVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDU1Cittc2dpZCAiIgorIkk8V2FybmluZzogVXNpbmcgdGhpcyBvcHRpb24gbWlnaHQgaW1wcm92ZSBwZXJmb3JtYW5jZSBhdCB0aGUgY29zdCBvZiBsb3NpbmcgIgorImRhdGEsIHVzZSB3aXRoIGNhcmUuPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDU4CisjLCBmdXp6eQorI3wgbXNnaWQgIkI8YXJjaGl0ZWN0dXJlPjogUHJvY2VzcyBldmVuIHBhY2thZ2VzIHdpdGggdGhlIHdyb25nIGFyY2hpdGVjdHVyZS4iCittc2dpZCAiQjxhcmNoaXRlY3R1cmU+OiBQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyBvciBubyBhcmNoaXRlY3R1cmUuIgorbXNnc3RyICJCPGFyY2hpdGVjdHVyZT46IFByb2Nlc3NhIGF0w6kgcGFjb3RlcyBjb20gYSBhcnF1aXRldHVyYSBlcnJhZGEuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDYxCisjLCBmdXp6eQorI3wgbXNnaWQgIkI8YXJjaGl0ZWN0dXJlPjogUHJvY2VzcyBldmVuIHBhY2thZ2VzIHdpdGggdGhlIHdyb25nIGFyY2hpdGVjdHVyZS4iCittc2dpZCAiQjxiYWQtdmVyc2lvbj46IFByb2Nlc3MgZXZlbiBwYWNrYWdlcyB3aXRoIHdyb25nIHZlcnNpb25zLiIKK21zZ3N0ciAiQjxhcmNoaXRlY3R1cmU+OiBQcm9jZXNzYSBhdMOpIHBhY290ZXMgY29tIGEgYXJxdWl0ZXR1cmEgZXJyYWRhLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQ2NAorbXNnaWQgIiIKKyJCPGJhZC1wYXRoPjogQjxQQVRIPiBpcyBtaXNzaW5nIGltcG9ydGFudCBwcm9ncmFtcywgc28gcHJvYmxlbXMgYXJlIGxpa2VseS4iCittc2dzdHIgIiIKKyJCPGJhZC1wYXRoPjogRmFsdGFtIHByb2dyYW1hcyBpbXBvcnRhbnRlcyBubyBCPFBBVEg+LCBkZXZlbmRvIGFwYXJlY2VyICIKKyJwcm9ibGVtYXMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDY3Cittc2dpZCAiQjxub3Qtcm9vdD46IFRyeSB0byAoZGUpaW5zdGFsbCB0aGluZ3MgZXZlbiB3aGVuIG5vdCByb290LiIKK21zZ3N0ciAiQjxub3Qtcm9vdD46IFRlbnRhIChkZXMpaW5zdGFsYXIgY29pc2FzIG1lc21vIG7Do28gc2VuZG8gcm9vdC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0NzAKK21zZ2lkICJCPGJhZC12ZXJpZnk+OiBJbnN0YWxsIGEgcGFja2FnZSBldmVuIGlmIGl0IGZhaWxzIGF1dGhlbnRpY2l0eSBjaGVjay4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo0NzEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0taWdub3JlLWRlcGVuZHM+PUk8cGFja2FnZT4sLi4uIgorbXNnc3RyICJCPC0taWdub3JlLWRlcGVuZHM+PUk8cGFjb3RlPiwuLi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0NzUKKyMsIGZ1enp5Cittc2dpZCAiIgorIklnbm9yZSBkZXBlbmRlbmN5LWNoZWNraW5nIGZvciBzcGVjaWZpZWQgcGFja2FnZXMgKGFjdHVhbGx5LCBjaGVja2luZyBpcyAiCisicGVyZm9ybWVkLCBidXQgb25seSB3YXJuaW5ncyBhYm91dCBjb25mbGljdHMgYXJlIGdpdmVuLCBub3RoaW5nIGVsc2UpLiIKK21zZ3N0ciAiIgorIklnbm9yYSBhIHZlcmlmaWNhw6fDo28gZGUgZGVwZW5kw6puY2lhIGRvcyBwYWNvdGVzIGVzcGVjaWZpY2Fkb3MgKGF0dWFsbWVudGUsIGEgIgorInZlcmlmaWNhw6fDo28gw6kgZmVpdGEsIG1hcyBzw6NvIGFwZW5hcyBkYWRvcyBhdmlzb3Mgc29icmUgb3MgY29uZmxpdG9zLCBuYWRhICIKKyJtYWlzKS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NDc1CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1uby1hY3Q+LCBCPC0tZHJ5LXJ1bj4sIEI8LS1zaW11bGF0ZT4iCittc2dzdHIgIkI8LS1uby1hY3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDgwCisjLCBmdXp6eQorbXNnaWQgIiIKKyJEbyBldmVyeXRoaW5nIHdoaWNoIGlzIHN1cHBvc2VkIHRvIGJlIGRvbmUsIGJ1dCBkb24ndCB3cml0ZSBhbnkgY2hhbmdlcy4gIgorIlRoaXMgaXMgdXNlZCB0byBzZWUgd2hhdCB3b3VsZCBoYXBwZW4gd2l0aCB0aGUgc3BlY2lmaWVkIGFjdGlvbiwgd2l0aG91dCAiCisiYWN0dWFsbHkgbW9kaWZ5aW5nIGFueXRoaW5nLiIKK21zZ3N0ciAiIgorIkZheiB0dWRvIHF1ZSBzZSBlc3BlcmEgcXVlIHNlamEgZmVpdG8sIG1hcyBuw6NvIGdyYXZhIG5lbmh1bWEgYWx0ZXJhw6fDo28uIElzc28gIgorIsOpIHVzYWRvIHBhcmEgdmVyIG8gcXVlIGFjb250ZWNlIGNvbSBhIGHDp8OjbyBlc3BlY2lmaWNhZGEsIHNlbSBtb2RpZmljYXIgbmFkYS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0ODUKKyMsIGZ1enp5Cittc2dpZCAiIgorIkJlIHN1cmUgdG8gZ2l2ZSBCPC0tbm8tYWN0PiBiZWZvcmUgdGhlIGFjdGlvbi1wYXJhbWV0ZXIsIG9yIHlvdSBtaWdodCBlbmQgdXAgIgorIndpdGggdW5kZXNpcmFibGUgcmVzdWx0cy4gKGUuZy4gQjxkcGtnIC0tcHVyZ2UgZm9vIC0tbm8tYWN0PiB3aWxsIGZpcnN0ICIKKyJwdXJnZSBwYWNrYWdlIGZvbyBhbmQgdGhlbiB0cnkgdG8gcHVyZ2UgcGFja2FnZSAtLW5vLWFjdCwgZXZlbiB0aG91Z2ggeW91ICIKKyJwcm9iYWJseSBleHBlY3RlZCBpdCB0byBhY3R1YWxseSBkbyBub3RoaW5nKSIKK21zZ3N0ciAiIgorIkNlcnRpZmlxdWUtc2UgZGUgZm9ybmVjZXIgQjwtLW5vLWFjdD4gYW50ZXMgZGEgYcOnw6NvLXBhcsOibWV0cm8sIG91IHZvY8OqIHBvZGUgIgorIm9idGVyIHJlc3VsdGFkb3MgaW5kZXNlasOhdmVpcy4gIChwb3IgZXhlbXBsbywgQjxkcGtnIC0tcHVyZ2UgZm9vIC0tbm8tYWN0PiAiCisiaXLDoSBwcmltZWlybyBleGNsdWlyIChwdXJnZSkgbyBwYWNvdGUgZm9vIGUgZW50w6NvIHRlbnRhcsOhIGV4Y2x1aXIgbyBwYWNvdGUgLS0iCisibm8tYWN0LCBhcGVzYXIgZGUgcXVlIHZvY8OqIGVzcGVyYXZhIHF1ZSBuYWRhIGZvc3NlIGZlaXRvKSIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo0ODUKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtUj4sIEI8LS1yZWN1cnNpdmU+IgorbXNnc3RyICJCPC1SPiB8IEI8LS1yZWN1cnNpdmU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDkxCisjLCBmdXp6eQorbXNnaWQgIiIKKyJSZWN1cnNpdmVseSBoYW5kbGUgYWxsIHJlZ3VsYXIgZmlsZXMgbWF0Y2hpbmcgcGF0dGVybiBCPCouZGViPiBmb3VuZCBhdCAiCisic3BlY2lmaWVkIGRpcmVjdG9yaWVzIGFuZCBhbGwgb2YgaXRzIHN1YmRpcmVjdG9yaWVzLiBUaGlzIGNhbiBiZSB1c2VkIHdpdGggIgorIkI8LWk+LCBCPC1BPiwgQjwtLWluc3RhbGw+LCBCPC0tdW5wYWNrPiBhbmQgQjwtLWF2YWlsPiBhY3Rpb25zLiIKK21zZ3N0ciAiIgorIk1hbmlwdWxhIHJlY3Vyc2l2YW1lbnRlIHRvZG9zIG9zIGFycXVpdm9zIHJlZ3VsYXJlcyBxdWUgY29tYmluZW0gY29tIG8gIgorInBhZHLDo28gQjwqLmRlYj4gZW5jb250cmFkb3Mgbm9zIGRpcmV0w7NyaW9zIGVzcGVjaWZpY2Fkb3MgZSB0b2RvcyBzZXVzICIKKyJzdWJkaXJldMOzcmlvcy4gSXNzbyBwb2RlIHNlciB1c2FkbyBjb20gYXMgYcOnw7VlcyBCPC1pPiwgQjwtQT4sIEI8LS1pbnN0YWxsPiwgIgorIkI8LS11bnBhY2s+IGUgQjwtLWF2YWlsPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NDkxCisjLCBuby13cmFwCittc2dpZCAiQjwtRz4iCittc2dzdHIgIkI8LUc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDk1CisjLCBmdXp6eQorbXNnaWQgIiIKKyJEb24ndCBpbnN0YWxsIGEgcGFja2FnZSBpZiBhIG5ld2VyIHZlcnNpb24gb2YgdGhlIHNhbWUgcGFja2FnZSBpcyBhbHJlYWR5ICIKKyJpbnN0YWxsZWQuIFRoaXMgaXMgYW4gYWxpYXMgb2YgQjwtLXJlZnVzZS1kb3duZ3JhZGU+LiIKK21zZ3N0ciAiIgorIk7Do28gaW5zdGFsYSB1bSBwYWNvdGUgc2UgdW1hIG5vdmEgdmVyc8OjbyBkbyBtZXNtbyBwYWNvdGUgasOhIGVzdGl2ZXIgIgorImluc3RhbGFkYS4gSXNzbyDDqSB1bSBhcGVsaWRvIGRlIEI8LS1yZWZ1c2UtZG93bmdyYWRlLj4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NDk1IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjE3IGRwa2ctY2hlY2tidWlsZGRlcHMuMToxOQorIzogZHBrZy1xdWVyeS4xOjExOCBkcGtnLXNobGliZGVwcy4xOjIxMSBkcGtnLXRyaWdnZXIuMTozOQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tYWRtaW5kaXI9Pkk8ZGlyPiIKK21zZ3N0ciAiQjwtLWFkbWluZGlyPiBJPGRpcmV0w7NyaW8+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTAwCittc2dpZCAiIgorIkNoYW5nZSBkZWZhdWx0IGFkbWluaXN0cmF0aXZlIGRpcmVjdG9yeSwgd2hpY2ggY29udGFpbnMgbWFueSBmaWxlcyB0aGF0IGdpdmUgIgorImluZm9ybWF0aW9uIGFib3V0IHN0YXR1cyBvZiBpbnN0YWxsZWQgb3IgdW5pbnN0YWxsZWQgcGFja2FnZXMsIGV0Yy4gICIKKyIoRGVmYXVsdHMgdG8gSTwvdmFyL2xpYi9kcGtnPikiCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo1MDAKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWluc3RkaXI9Pkk8ZGlyPiIKK21zZ3N0ciAiQjwtLWFkbWluZGlyPiBJPGRpcmV0w7NyaW8+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTA3CisjLCBmdXp6eQorbXNnaWQgIiIKKyJDaGFuZ2UgZGVmYXVsdCBpbnN0YWxsYXRpb24gZGlyZWN0b3J5IHdoaWNoIHJlZmVycyB0byB0aGUgZGlyZWN0b3J5IHdoZXJlICIKKyJwYWNrYWdlcyBhcmUgdG8gYmUgaW5zdGFsbGVkLiBCPGluc3RkaXI+IGlzIGFsc28gdGhlIGRpcmVjdG9yeSBwYXNzZWQgdG8gIgorIkI8Y2hyb290PigyKSBiZWZvcmUgcnVubmluZyBwYWNrYWdlJ3MgaW5zdGFsbGF0aW9uIHNjcmlwdHMsIHdoaWNoIG1lYW5zIHRoYXQgIgorInRoZSBzY3JpcHRzIHNlZSBCPGluc3RkaXI+IGFzIGEgcm9vdCBkaXJlY3RvcnkuICAoRGVmYXVsdHMgdG8gSTwvPikiCittc2dzdHIgIiIKKyJNdWRhIG9zIGRpcmV0w7NyaW9zIHBhZHLDtWVzLiAgTyBCPGFkbWluZGlyPiBwYWRyw6NvIMOpIEk8L3Zhci9saWIvZHBrZz4gZSAiCisiY29udMOpbSBtdWl0b3MgYXJxdWl2b3MgcXVlIGTDo28gaW5mb3JtYcOnw7VlcyBzb2JyZSBvIGVzdGFkbyBkb3MgcGFjb3RlcyAiCisiaW5zdGFsYWRvcyBvdSBuw6NvIGluc3RhbGFkb3MsIGV0Yy4gIE8gQjxpbnN0ZGlyPiBwYWRyw6NvIMOpIEk8Lz4gZSByZWZlcmUtc2UgIgorImFvIGRpcmV0w7NyaW8gb25kZSBvcyBwYWNvdGVzIGRldmVtIHNlciBpbnN0YWxhZG9zLiBCPGluc3RkaXI+IHRhbWLDqW0gw6kgbyAiCisiZGlyZXTDs3JpbyBwYXNzYWRvIHBhcmEgQjxjaHJvb3Q+KDIpIGFudGVzIGRlIGV4ZWN1dGFyIG9zIHNjcmlwdHMgZGUgIgorImluc3RhbGHDp8OjbyBkbyBJPHBhY290ZT4sIG8gcXVlIHNpZ25pZmljYSBxdWUgb3Mgc2NyaXB0cyB2w6plbSBCPGluc3RkaXI+IGNvbW8gIgorIm8gZGlyZXTDs3JpbyByYWl6LiAgQWx0ZXJhciBCPHJvb3Q+IG1vZGlmaWNhIEI8aW5zdGRpcj4gcGFyYSBJPGRpcj4gZSAiCisiQjxhZG1pbmRpcj4gcGFyYSBJPGRpcj5CPC92YXIvbGliL2Rwa2c+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo1MDcKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLXJvb3Q9Pkk8ZGlyPiIKK21zZ3N0ciAiQjwtLWFkbWluZGlyPiBJPGRpcmV0w7NyaW8+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTExCittc2dpZCAiIgorIkNoYW5naW5nIEI8cm9vdD4gY2hhbmdlcyBCPGluc3RkaXI+IHRvIEk8ZGlyPiBhbmQgQjxhZG1pbmRpcj4gdG8gSTxkaXI+QjwvIgorInZhci9saWIvZHBrZz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTExCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LU8+LCBCPC0tc2VsZWN0ZWQtb25seT4iCittc2dzdHIgIkI8LU8+IHwgQjwtLXNlbGVjdGVkLW9ubHk+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTE3CisjLCBmdXp6eQorbXNnaWQgIiIKKyJPbmx5IHByb2Nlc3MgdGhlIHBhY2thZ2VzIHRoYXQgYXJlIHNlbGVjdGVkIGZvciBpbnN0YWxsYXRpb24uIFRoZSBhY3R1YWwgIgorIm1hcmtpbmcgaXMgZG9uZSB3aXRoIEI8ZHNlbGVjdD4gb3IgYnkgQjxkcGtnPiwgd2hlbiBpdCBoYW5kbGVzIHBhY2thZ2VzLiBGb3IgIgorImV4YW1wbGUsIHdoZW4gYSBwYWNrYWdlIGlzIHJlbW92ZWQsIGl0IHdpbGwgYmUgbWFya2VkIHNlbGVjdGVkIGZvciAiCisiZGVpbnN0YWxsYXRpb24uIgorbXNnc3RyICIiCisiU29tZW50ZSBwcm9jZXNzYSBvcyBwYWNvdGVzIHNlbGVjaW9uYWRvcyBwYXJhIGluc3RhbGHDp8Ojby4gQSBtYXJjYcOnw6NvIGF0dWFsIMOpICIKKyJmZWl0YSBjb20gQjxkc2VsZWN0PiBvdSBwZWxvIEI8ZHBrZz4sIHF1YW5kbyBlbGUgbWFuaXB1bGEgcGFjb3Rlcy4gUG9yICIKKyJleGVtcGxvLCBxdWFuZG8gdW0gcGFjb3RlIMOpIHJlbW92aWRvLCBlbGUgc2Vyw6EgbWFyY2FkbyBjb21vIHNlbGVjaW9uYWRvIHBhcmEgIgorImluc3RhbGHDp8Ojby4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTE3CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LUU+LCBCPC0tc2tpcC1zYW1lLXZlcnNpb24+IgorbXNnc3RyICJCPC1FPiB8IEI8LS1za2lwLXNhbWUtdmVyc2lvbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1MjEKKyMsIGZ1enp5Cittc2dpZCAiIgorIkRvbid0IGluc3RhbGwgdGhlIHBhY2thZ2UgaWYgdGhlIHNhbWUgdmVyc2lvbiBvZiB0aGUgcGFja2FnZSBpcyBhbHJlYWR5ICIKKyJpbnN0YWxsZWQuIgorbXNnc3RyICJOw6NvIGluc3RhbGEgbyBwYWNvdGUgc2UgYSBtZXNtYSB2ZXJzw6NvIGRlbGUgasOhIGVzdGl2ZXIgaW5zdGFsYWRhLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjUyMworbXNnaWQgIkI8LS1wcmUtaW52b2tlPT5JPGNvbW1hbmQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1MjUKK21zZ2lkICJCPC0tcG9zdC1pbnZva2U9Pkk8Y29tbWFuZD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjUzNAorbXNnaWQgIiIKKyJTZXQgYW4gaW52b2tlIGhvb2sgSTxjb21tYW5kPiB0byBiZSBydW4gdmlhIGBgc2ggLWMnJyBiZWZvcmUgb3IgYWZ0ZXIgdGhlICIKKyJkcGtnIHJ1biBmb3IgdGhlIEk8dW5wYWNrPiwgSTxjb25maWd1cmU+LCBJPGluc3RhbGw+LCBJPHRyaWdnZXJzLW9ubHk+LCAiCisiSTxyZW1vdmU+IGFuZCBJPHB1cmdlPiBkcGtnIGFjdGlvbnMuIFRoaXMgb3B0aW9uIGNhbiBiZSBzcGVjaWZpZWQgbXVsdGlwbGUgIgorInRpbWVzLiBUaGUgb3JkZXIgdGhlIG9wdGlvbnMgYXJlIHNwZWNpZmllZCBpcyBwcmVzZXJ2ZWQsIHdpdGggdGhlIG9uZXMgZnJvbSAiCisidGhlIGNvbmZpZ3VyYXRpb24gZmlsZXMgdGFraW5nIHByZWNlZGVuY2UuICBUaGUgZW52aXJvbm1lbnQgdmFyaWFibGUgIgorIkI8RFBLR19IT09LX0FDVElPTj4gaXMgc2V0IGZvciB0aGUgaG9va3MgdG8gdGhlIGN1cnJlbnQgZHBrZyBhY3Rpb24uIE5vdGU6ICIKKyJmcm9udC1lbmRzIG1pZ2h0IGNhbGwgZHBrZyBzZXZlcmFsIHRpbWVzIHBlciBpbnZvY2F0aW9uLCB3aGljaCBtaWdodCBydW4gdGhlICIKKyJob29rcyBtb3JlIHRpbWVzIHRoYW4gZXhwZWN0ZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1MzcKKyMsIGZ1enp5Cittc2dpZCAiQjwtLXBhdGgtZXhjbHVkZT0+STxnbG9iLXBhdHRlcm4+IgorbXNnc3RyICJCPC0tc3RhdHVzLWZkID5JPEU8bHQ+bkU8Z3Q+PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjUzOQorIywgZnV6enkKK21zZ2lkICJCPC0tcGF0aC1pbmNsdWRlPT5JPGdsb2ItcGF0dGVybj4iCittc2dzdHIgIkI8LS1zdGF0dXMtZmQgPkk8RTxsdD5uRTxndD4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTQyCittc2dpZCAiIgorIlNldCBJPGdsb2ItcGF0dGVybj4gYXMgYSBwYXRoIGZpbHRlciwgZWl0aGVyIGJ5IGV4Y2x1ZGluZyBvciByZS1pbmNsdWRpbmcgIgorInByZXZpb3VzbHkgZXhjbHVkZWQgcGF0aHMgbWF0Y2hpbmcgdGhlIHNwZWNpZmllZCBwYXR0ZXJucyBkdXJpbmcgaW5zdGFsbC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjU0NQorbXNnaWQgIiIKKyJJPFdhcm5pbmc6IHRha2UgaW50byBhY2NvdW50IHRoYXQgZGVwZW5kaW5nIG9uIHRoZSBleGNsdWRlZCBwYXRocyB5b3UgbWlnaHQgIgorImNvbXBsZXRlbHkgYnJlYWsgeW91ciBzeXN0ZW0sIHVzZSB3aXRoIGNhdXRpb24uPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTU1Cittc2dpZCAiIgorIlRoZSBnbG9iIHBhdHRlcm5zIHVzZSB0aGUgc2FtZSB3aWxkY2FyZHMgdXNlZCBpbiB0aGUgc2hlbGwsIHdlcmUgJyonIG1hdGNoZXMgIgorImFueSBzZXF1ZW5jZSBvZiBjaGFyYWN0ZXJzLCBpbmNsdWRpbmcgdGhlIGVtcHR5IHN0cmluZyBhbmQgYWxzbyAnLycuIEZvciAiCisiZXhhbXBsZSwgSTwnL3Vzci8qL1JFQUQqJz4gbWF0Y2hlcyBJPCcvdXNyL3NoYXJlL2RvYy9wYWNrYWdlL1JFQURNRSc+LiAgQXMgIgorInVzdWFsLCAnPycgbWF0Y2hlcyBhbnkgc2luZ2xlIGNoYXJhY3RlciAoYWdhaW4sIGluY2x1ZGluZyAnLycpLiBBbmQgJ1snICIKKyJzdGFydHMgYSBjaGFyYWN0ZXIgY2xhc3MsIHdoaWNoIGNhbiBjb250YWluIGEgbGlzdCBvZiBjaGFyYWN0ZXJzLCByYW5nZXMgYW5kICIKKyJjb21wbGVtZW50YXRpb25zLiBTZWUgQjxnbG9iPig3KSBmb3IgZGV0YWlsZWQgaW5mb3JtYXRpb24gYWJvdXQgZ2xvYmJpbmcuICIKKyJOb3RlOiB0aGUgY3VycmVudCBpbXBsZW1lbnRhdGlvbiBtaWdodCByZS1pbmNsdWRlIG1vcmUgZGlyZWN0b3JpZXMgYW5kICIKKyJzeW1saW5rcyB0aGFuIG5lZWRlZCwgdG8gYmUgb24gdGhlIHNhZmUgc2lkZSBhbmQgYXZvaWQgcG9zc2libGUgdW5wYWNrICIKKyJmYWlsdXJlcywgZnV0dXJlIHdvcmsgbWlnaHQgZml4IHRoaXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1NTgKK21zZ2lkICIiCisiVGhpcyBjYW4gYmUgdXNlZCB0byByZW1vdmUgYWxsIHBhdGhzIGV4Y2VwdCBzb21lIHBhcnRpY3VsYXIgb25lczsgYSB0eXBpY2FsICIKKyJjYXNlIGlzOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTYyCisjLCBuby13cmFwCittc2dpZCAiIgorIkI8LS1wYXRoLWV4Y2x1ZGU9L3Vzci9zaGFyZS9kb2MvKj5cbiIKKyJCPC0tcGF0aC1pbmNsdWRlPS91c3Ivc2hhcmUvZG9jLyovY29weXJpZ2h0PlxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1NjUKK21zZ2lkICJ0byByZW1vdmUgYWxsIGRvY3VtZW50YXRpb24gZmlsZXMgZXhjZXB0IHRoZSBjb3B5cmlnaHQgZmlsZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1NjkKK21zZ2lkICIiCisiVGhlc2UgdHdvIG9wdGlvbnMgY2FuIGJlIHNwZWNpZmllZCBtdWx0aXBsZSB0aW1lcywgYW5kIGludGVybGVhdmVkIHdpdGggZWFjaCAiCisib3RoZXIuIEJvdGggYXJlIHByb2Nlc3NlZCBpbiB0aGUgZ2l2ZW4gb3JkZXIsIHdpdGggdGhlIGxhc3QgcnVsZSB0aGF0ICIKKyJtYXRjaGVzIGEgZmlsZSBuYW1lIG1ha2luZyB0aGUgZGVjaXNpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTcwCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1zdGF0dXMtZmQgPkk8bj4iCittc2dzdHIgIkI8LS1zdGF0dXMtZmQgPkk8RTxsdD5uRTxndD4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTc2Cittc2dpZCAiIgorIlNlbmQgbWFjaGluZS1yZWFkYWJsZSBwYWNrYWdlIHN0YXR1cyBhbmQgcHJvZ3Jlc3MgaW5mb3JtYXRpb24gdG8gZmlsZSAiCisiZGVzY3JpcHRvciBJPG4+LiBUaGlzIG9wdGlvbiBjYW4gYmUgc3BlY2lmaWVkIG11bHRpcGxlIHRpbWVzLiBUaGUgIgorImluZm9ybWF0aW9uIGlzIGdlbmVyYWxseSBvbmUgcmVjb3JkIHBlciBsaW5lLCBpbiBvbmUgb2YgdGhlIGZvbGxvd2luZyBmb3JtczoiCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo1NzcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHN0YXR1czogPkk8cGFja2FnZT5CPDogPkk8c3RhdHVzPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTgwCittc2dpZCAiUGFja2FnZSBzdGF0dXMgY2hhbmdlZDsgSTxzdGF0dXM+IGlzIGFzIGluIHRoZSBzdGF0dXMgZmlsZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo1ODAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHN0YXR1czogPkk8cGFja2FnZT5CPCA6IGVycm9yIDogPkk8ZXh0ZW5kZWQtZXJyb3ItbWVzc2FnZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjU4NAorbXNnaWQgIiIKKyJBbiBlcnJvciBvY2N1cnJlZC4gQW55IHBvc3NpYmxlIG5ld2xpbmVzIGluIEk8ZXh0ZW5kZWQtZXJyb3ItbWVzc2FnZT4gd2lsbCAiCisiYmUgY29udmVydGVkIHRvIHNwYWNlcyBiZWZvcmUgb3V0cHV0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjU4NAorIywgbm8td3JhcAorbXNnaWQgIkI8c3RhdHVzOiA+STxmaWxlPkI8IDogY29uZmZpbGUtcHJvbXB0IDogJz5JPHJlYWwtb2xkPkI8JyAnPkk8cmVhbC1uZXc+QjwnID5JPHVzZXJlZGl0ZWQ+QjwgPkk8ZGlzdGVkaXRlZD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjU4NworbXNnaWQgIlVzZXIgaXMgYmVpbmcgYXNrZWQgYSBjb25mZmlsZSBxdWVzdGlvbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo1ODcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHByb2Nlc3Npbmc6ID5JPHN0YWdlPkI8OiA+STxwYWNrYWdlPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTkyCittc2dpZCAiIgorIlNlbnQganVzdCBiZWZvcmUgYSBwcm9jZXNzaW5nIHN0YWdlIHN0YXJ0cy4gSTxzdGFnZT4gaXMgb25lIG9mIEI8dXBncmFkZT4sICIKKyJCPGluc3RhbGw+IChib3RoIHNlbnQgYmVmb3JlIHVucGFja2luZyksIEI8Y29uZmlndXJlPiwgQjx0cmlncHJvYz4sICIKKyJCPGRpc2FwcGVhcj4sIEI8cmVtb3ZlPiwgQjxwdXJnZT4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTkzCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1zdGF0dXMtbG9nZ2VyPj1JPGNvbW1hbmQ+IgorbXNnc3RyICJCPC0tc3RhdHVzLWZkID5JPEU8bHQ+bkU8Z3Q+PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjU5OAorbXNnaWQgIiIKKyJTZW5kIG1hY2hpbmUtcmVhZGFibGUgcGFja2FnZSBzdGF0dXMgYW5kIHByb2dyZXNzIGluZm9ybWF0aW9uIHRvIHRoZSBzaGVsbCAiCisiSTxjb21tYW5kPidzIHN0YW5kYXJkIGlucHV0LiBUaGlzIG9wdGlvbiBjYW4gYmUgc3BlY2lmaWVkIG11bHRpcGxlIHRpbWVzLiAiCisiVGhlIG91dHB1dCBmb3JtYXQgdXNlZCBpcyB0aGUgc2FtZSBhcyBpbiBCPC0tc3RhdHVzLWZkLj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo1OTkKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWxvZz0+STxmaWxlbmFtZT4iCittc2dzdHIgIkI8LS1sb2c9Pkk8ZmlsZW5hbWU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NjExCittc2dpZCAiIgorIkxvZyBzdGF0dXMgY2hhbmdlIHVwZGF0ZXMgYW5kIGFjdGlvbnMgdG8gSTxmaWxlbmFtZT4sIGluc3RlYWQgb2YgdGhlIGRlZmF1bHQgIgorIkk8L3Zhci9sb2cvZHBrZy5sb2c+LiBJZiB0aGlzIG9wdGlvbiBpcyBnaXZlbiBtdWx0aXBsZSB0aW1lcywgdGhlIGxhc3QgIgorImZpbGVuYW1lIGlzIHVzZWQuIExvZyBtZXNzYWdlcyBhcmUgb2YgdGhlIGZvcm0gYFlZWVktTU0tREQgSEg6TU06U1Mgc3RhdHVzICIKKyJJPHN0YXRlPiBJPHBrZz4gSTxpbnN0YWxsZWQtdmVyc2lvbj4nIGZvciBzdGF0dXMgY2hhbmdlIHVwZGF0ZXM7IGBZWVlZLU1NLUREICIKKyJISDpNTTpTUyBJPGFjdGlvbj4gSTxwa2c+IEk8aW5zdGFsbGVkLXZlcnNpb24+IEk8YXZhaWxhYmxlLXZlcnNpb24+JyBmb3IgIgorImFjdGlvbnMgd2hlcmUgSTxhY3Rpb24+IGlzIG9uZSBvZiBCPGluc3RhbGw+LCBCPHVwZ3JhZGU+LCBCPHJlbW92ZT4sICIKKyJCPHB1cmdlPjsgYW5kIGBZWVlZLU1NLUREIEhIOk1NOlNTIGNvbmZmaWxlIEk8ZmlsZW5hbWU+IEk8ZGVjaXNpb24+JyBmb3IgIgorImNvbmZmaWxlIGNoYW5nZXMgd2hlcmUgSTxkZWNpc2lvbj4gaXMgZWl0aGVyIEI8aW5zdGFsbD4gb3IgQjxrZWVwPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2MTEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLW5vLWRlYnNpZz4iCittc2dzdHIgIkI8LS1ub2NoZWNrPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjYxNAorbXNnaWQgIkRvIG5vdCB0cnkgdG8gdmVyaWZ5IHBhY2thZ2Ugc2lnbmF0dXJlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2MTQKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLW5vLXRyaWdnZXJzPiIKK21zZ3N0ciAiQjwtLW5vY2hlY2s+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NjIzCittc2dpZCAiIgorIkRvIG5vdCBydW4gYW55IHRyaWdnZXJzIGluIHRoaXMgcnVuIChhY3RpdmF0aW9ucyB3aWxsIHN0aWxsIGJlIHJlY29yZGVkKS4gICIKKyJJZiB1c2VkIHdpdGggQjwtLWNvbmZpZ3VyZT4gSTxwYWNrYWdlPiBvciBCPC0tdHJpZ2dlcnMtb25seT4gSTxwYWNrYWdlPiB0aGVuICIKKyJ0aGUgbmFtZWQgcGFja2FnZSBwb3N0aW5zdCB3aWxsIHN0aWxsIGJlIHJ1biBldmVuIGlmIG9ubHkgYSB0cmlnZ2VycyBydW4gaXMgIgorIm5lZWRlZC4gVXNlIG9mIHRoaXMgb3B0aW9uIG1heSBsZWF2ZSBwYWNrYWdlcyBpbiB0aGUgaW1wcm9wZXIgQjx0cmlnZ2Vycy0iCisiYXdhaXRlZD4gYW5kIEI8dHJpZ2dlcnMtcGVuZGluZz4gc3RhdGVzLiBUaGlzIGNhbiBiZSBmaXhlZCBsYXRlciBieSBydW5uaW5nOiAiCisiQjxkcGtnIC0tY29uZmlndXJlIC0tcGVuZGluZz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NjIzCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS10cmlnZ2Vycz4iCittc2dzdHIgIkI8LS10ZXN0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjYyNgorbXNnaWQgIkNhbmNlbHMgYSBwcmV2aW91cyBCPC0tbm8tdHJpZ2dlcnM+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NjI4IGRwa2cuY2ZnLjU6MTYKKyMsIG5vLXdyYXAKK21zZ2lkICJJPC9ldGMvZHBrZy9kcGtnLmNmZz4iCittc2dzdHIgIkk8L2V0Yy9kcGtnL2Rwa2cuY2ZnPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjYzMQorbXNnaWQgIkNvbmZpZ3VyYXRpb24gZmlsZSB3aXRoIGRlZmF1bHQgb3B0aW9ucy4iCittc2dzdHIgIkFycXVpdm8gZGUgY29uZmlndXJhw6fDo28gY29tIGFzIG9ww6fDtWVzIHBhZHLDtWVzLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2MzEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiSTwvdmFyL2xvZy9kcGtnLmxvZz4iCittc2dzdHIgIkk8L3Zhci9saWIvZHBrZy9hdmFpbGFibGU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NjM1Cittc2dpZCAiRGVmYXVsdCBsb2cgZmlsZSAoc2VlIEk8L2V0Yy9kcGtnL2Rwa2cuY2ZnPig1KSBhbmQgb3B0aW9uIEI8LS1sb2c+KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjYzOAorIywgZnV6enkKK21zZ2lkICIiCisiVGhlIG90aGVyIGZpbGVzIGxpc3RlZCBiZWxvdyBhcmUgaW4gdGhlaXIgZGVmYXVsdCBkaXJlY3Rvcmllcywgc2VlIG9wdGlvbiAiCisiQjwtLWFkbWluZGlyPiB0byBzZWUgaG93IHRvIGNoYW5nZSBsb2NhdGlvbnMgb2YgdGhlc2UgZmlsZXMuIgorbXNnc3RyICIiCisiT3Mgb3V0cm9zIGFycXVpdm9zIGxpc3RhZG9zIGFiYWl4byBlc3TDo28gZW0gc2V1cyBkaXJldMOzcmlvcyBwYWRyw7VlcywgdmVqYSBhICIKKyJvcMOnw6NvIEI8LS1hZG1pbmRpcj4gcGFyYSB2ZXIgY29tbyBhbHRlcmFyIGEgbG9jYWxpemHDp8OjbyBkZXNzZXMgYXJxdWl2b3MuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjYzOAorIywgbm8td3JhcAorbXNnaWQgIkk8L3Zhci9saWIvZHBrZy9hdmFpbGFibGU+IgorbXNnc3RyICJJPC92YXIvbGliL2Rwa2cvYXZhaWxhYmxlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjY0MQorbXNnaWQgIkxpc3Qgb2YgYXZhaWxhYmxlIHBhY2thZ2VzLiIKK21zZ3N0ciAiTGlzdGEgZG9zIHBhY290ZXMgZGlzcG9uw612ZWlzLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2NDEKKyMsIG5vLXdyYXAKK21zZ2lkICJJPC92YXIvbGliL2Rwa2cvc3RhdHVzPiIKK21zZ3N0ciAiSTwvdmFyL2xpYi9kcGtnL3N0YXR1cz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2NDcKKyMsIGZ1enp5Cittc2dpZCAiIgorIlN0YXR1c2VzIG9mIGF2YWlsYWJsZSBwYWNrYWdlcy4gVGhpcyBmaWxlIGNvbnRhaW5zIGluZm9ybWF0aW9uIGFib3V0IHdoZXRoZXIgIgorImEgcGFja2FnZSBpcyBtYXJrZWQgZm9yIHJlbW92aW5nIG9yIG5vdCwgd2hldGhlciBpdCBpcyBpbnN0YWxsZWQgb3Igbm90LCAiCisiZXRjLiBTZWUgc2VjdGlvbiBCPElORk9STUFUSU9OIEFCT1VUIFBBQ0tBR0VTPiBmb3IgbW9yZSBpbmZvLiIKK21zZ3N0ciAiIgorIkTDoSBvIGVzdGFkbyBkb3MgcGFjb3RlcyBkaXNwb27DrXZlaXMuIEVzc2UgYXJxdWl2byBjb250w6ltIGluZm9ybWHDp8OjbyBzb2JyZSBzZSAiCisidW0gcGFjb3RlIGVzdMOhIG1hcmNhZG8gcGFyYSByZW1vw6fDo28gb3UgbsOjbywgc2UgZXN0w6EgaW5zdGFsYWRvIG91IG7Do28sIGV0Yy4gIgorIlZlamEgYSBzZcOnw6NvIEI8SU5GT1JNQcOHw4NPIFNPQlJFIFBBQ09URVM+IHBhcmEgbWFpb3JlcyBpbmZvcm1hw6fDtWVzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjY1MAorbXNnaWQgIiIKKyJUaGUgc3RhdHVzIGZpbGUgaXMgYmFja2VkIHVwIGRhaWx5IGluIEk8L3Zhci9iYWNrdXBzPi4gSXQgY2FuIGJlIHVzZWZ1bCBpZiAiCisiaXQncyBsb3N0IG9yIGNvcnJ1cHRlZCBkdWUgdG8gZmlsZXN5c3RlbXMgdHJvdWJsZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2NTMKKyMsIGZ1enp5Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgZmlsZXMgYXJlIGNvbXBvbmVudHMgb2YgYSBiaW5hcnkgcGFja2FnZS4gU2VlIEI8ZGViPig1KSAgZm9yICIKKyJtb3JlIGluZm9ybWF0aW9uIGFib3V0IHRoZW06IgorbXNnc3RyICIiCisiT3Mgc2VndWludGVzIGFycXVpdm9zIHPDo28gY29tcG9uZW50ZXMgZGUgdW0gcGFjb3RlIGJpbsOhcmlvLiBWZWphIEI8ZGViPig1KSAiCisicGFyYSBtYWlzIGluZm9ybWHDp8O1ZXMgc29icmUgZWxlczoiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NjUzCisjLCBuby13cmFwCittc2dpZCAiSTxjb250cm9sPiIKK21zZ3N0ciAiSTxjb250cm9sPiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2NTUKKyMsIG5vLXdyYXAKK21zZ2lkICJJPGNvbmZmaWxlcz4iCittc2dzdHIgIkk8Y29uZmZpbGVzPiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2NTcKKyMsIG5vLXdyYXAKK21zZ2lkICJJPHByZWluc3Q+IgorbXNnc3RyICJJPHByZWluc3Q+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjY1OQorIywgbm8td3JhcAorbXNnaWQgIkk8cG9zdGluc3Q+IgorbXNnc3RyICJJPHBvc3RpbnN0PiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2NjEKKyMsIG5vLXdyYXAKK21zZ2lkICJJPHByZXJtPiIKK21zZ3N0ciAiSTxwcmVybT4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NjYzCisjLCBuby13cmFwCittc2dpZCAiSTxwb3N0cm0+IgorbXNnc3RyICJJPHBvc3RybT4iCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLjE6NjY2IGRwa2ctYnVpbGRmbGFncy4xOjEyOCBkcGtnLWJ1aWxkcGFja2FnZS4xOjIzMCBkcGtnLWRlYi4xOjIzMgorIzogZHBrZy1kaXZlcnQuODoxMTIgZHBrZy1xdWVyeS4xOjIwNCBkcGtnLXN0YXRvdmVycmlkZS44OjY4IGRwa2ctdHJpZ2dlci4xOjYwCisjOiBkcGtnLXZlbmRvci4xOjQyIGRzZWxlY3QuMTo0MjMgdXBkYXRlLWFsdGVybmF0aXZlcy44OjM1NAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJFTlZJUk9OTUVOVCIKK21zZ3N0ciAiVkFSScOBVkVJUyBERSBBTUJJRU5URSIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2NjcgZHNlbGVjdC4xOjQyNAorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPFNIRUxMPiIKK21zZ2lkICJCPEhPTUU+IgorbXNnc3RyICJCPFNIRUxMPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjY3MQorbXNnaWQgIiIKKyJJZiBzZXQsIEI8ZHBrZz4gd2lsbCB1c2UgaXQgYXMgdGhlIGRpcmVjdG9yeSBmcm9tIHdoaWNoIHRvIHJlYWQgdGhlIHVzZXIgIgorInNwZWNpZmljIGNvbmZpZ3VyYXRpb24gZmlsZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2NzEgZHBrZy1kZWIuMToyMzMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPFRNUERJUj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjY3NQorbXNnaWQgIiIKKyJJZiBzZXQsIEI8ZHBrZz4gd2lsbCB1c2UgaXQgYXMgdGhlIGRpcmVjdG9yeSBpbiB3aGljaCB0byBjcmVhdGUgdGVtcG9yYXJ5ICIKKyJmaWxlcyBhbmQgZGlyZWN0b3JpZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6Njc1CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8LUc+IgorbXNnaWQgIkI8UEFHRVI+IgorbXNnc3RyICJCPC1HPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjY3OAorIywgZnV6enkKK21zZ2lkICJUaGUgcHJvZ3JhbSBCPGRwa2c+IHdpbGwgZXhlY3V0ZSB3aGVuIGRpc3BsYXlpbmcgdGhlIGNvbmZmaWxlcy4iCittc2dzdHIgIiIKKyJPIHByb2dyYW1hIHF1ZSBvIEI8ZHBrZz4gZXhlY3V0YXLDoSBxdWFuZG8gZXN0aXZlciBpbmljaWFuZG8gdW0gbm92byBzaGVsbC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6Njc4CisjLCBuby13cmFwCittc2dpZCAiQjxTSEVMTD4iCittc2dzdHIgIkI8U0hFTEw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NjgxCisjLCBmdXp6eQorbXNnaWQgIlRoZSBwcm9ncmFtIEI8ZHBrZz4gd2lsbCBleGVjdXRlIHdoZW4gc3RhcnRpbmcgYSBuZXcgc2hlbGwuIgorbXNnc3RyICIiCisiTyBwcm9ncmFtYSBxdWUgbyBCPGRwa2c+IGV4ZWN1dGFyw6EgcXVhbmRvIGVzdGl2ZXIgaW5pY2lhbmRvIHVtIG5vdm8gc2hlbGwuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjY4MSBkcGtnLXF1ZXJ5LjE6MjA5CisjLCBuby13cmFwCittc2dpZCAiQjxDT0xVTU5TPiIKK21zZ3N0ciAiQjxDT0xVTU5TPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjY4NQorIywgZnV6enkKK21zZ2lkICIiCisiU2V0cyB0aGUgbnVtYmVyIG9mIGNvbHVtbnMgQjxkcGtnPiBzaG91bGQgdXNlIHdoZW4gZGlzcGxheWluZyBmb3JtYXR0ZWQgIgorInRleHQuIEN1cnJlbnRseSBvbmx5IHVzZWQgYnkgLWwuIgorbXNnc3RyICIiCisiQWp1c3RhIG8gbsO6bWVybyBkZSBjb2x1bmFzIHF1ZSBvIEI8ZHBrZz4gZGV2ZSB1c2FyIHF1YW5kbyBlc3RpdmVyIGV4aWJpbmRvICIKKyJ0ZXh0byBmb3JtYXRhZG8uIEF0dWFsbWVudGUgc8OzIHVzYWRvIHBvciAtbC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6Njg1CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8RFBLR19PTERfQ09ORkZJTEU+IgorbXNnaWQgIkI8RFBLR19TSEVMTF9SRUFTT04+IgorbXNnc3RyICJCPERQS0dfT0xEX0NPTkZGSUxFPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjY4OQorbXNnaWQgIiIKKyJEZWZpbmVkIGJ5IEI8ZHBrZz4gb24gdGhlIHNoZWxsIHNwYXduZWQgb24gdGhlIGNvbmZmaWxlIHByb21wdCB0byBleGFtaW5lICIKKyJ0aGUgc2l0dWF0aW9uLiBDdXJyZW50IHZhbGlkIHZhbHVlOiBCPGNvbmZmaWxlLXByb21wdD4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6Njg5CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8RFBLR19PTERfQ09ORkZJTEU+IgorbXNnaWQgIkI8RFBLR19DT05GRklMRV9PTEQ+IgorbXNnc3RyICJCPERQS0dfT0xEX0NPTkZGSUxFPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjY5MworbXNnaWQgIiIKKyJEZWZpbmVkIGJ5IEI8ZHBrZz4gb24gdGhlIHNoZWxsIHNwYXduZWQgb24gdGhlIGNvbmZmaWxlIHByb21wdCB0byBleGFtaW5lICIKKyJ0aGUgc2l0dWF0aW9uLiBDb250YWlucyB0aGUgcGF0aCB0byB0aGUgb2xkIGNvbmZmaWxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjY5MworIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPERQS0dfT0xEX0NPTkZGSUxFPiIKK21zZ2lkICJCPERQS0dfQ09ORkZJTEVfTkVXPiIKK21zZ3N0ciAiQjxEUEtHX09MRF9DT05GRklMRT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2OTcKK21zZ2lkICIiCisiRGVmaW5lZCBieSBCPGRwa2c+IG9uIHRoZSBzaGVsbCBzcGF3bmVkIG9uIHRoZSBjb25mZmlsZSBwcm9tcHQgdG8gZXhhbWluZSAiCisidGhlIHNpdHVhdGlvbi4gQ29udGFpbnMgdGhlIHBhdGggdG8gdGhlIG5ldyBjb25mZmlsZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2OTcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPERQS0dfUlVOTklOR19WRVJTSU9OPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzAxCittc2dpZCAiIgorIkRlZmluZWQgYnkgQjxkcGtnPiBvbiB0aGUgbWFpbnRhaW5lciBzY3JpcHQgZW52aXJvbm1lbnQgdG8gdGhlIHZlcnNpb24gb2YgIgorInRoZSBjdXJyZW50bHkgcnVubmluZyBCPGRwa2c+IGluc3RhbmNlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjcwMSBkcGtnLWRpdmVydC44OjExNworIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPERQS0dfTk9fVFNUUD4iCittc2dpZCAiQjxEUEtHX01BSU5UU0NSSVBUX1BBQ0tBR0U+IgorbXNnc3RyICJCPERQS0dfTk9fVFNUUD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3MDUKK21zZ2lkICIiCisiRGVmaW5lZCBieSBCPGRwa2c+IG9uIHRoZSBtYWludGFpbmVyIHNjcmlwdCBlbnZpcm9ubWVudCB0byB0aGUgcGFja2FnZSBuYW1lICIKKyJiZWluZyBoYW5kbGVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjcwNQorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPERQS0dfTk9fVFNUUD4iCittc2dpZCAiQjxEUEtHX01BSU5UU0NSSVBUX0FSQ0g+IgorbXNnc3RyICJCPERQS0dfTk9fVFNUUD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3MDkKK21zZ2lkICIiCisiRGVmaW5lZCBieSBCPGRwa2c+IG9uIHRoZSBtYWludGFpbmVyIHNjcmlwdCBlbnZpcm9ubWVudCB0byB0aGUgYXJjaGl0ZWN0dXJlICIKKyJ0aGUgcGFja2FnZSBnb3QgYnVpbHQgZm9yLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjcwOQorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPERQS0dfTk9fVFNUUD4iCittc2dpZCAiQjxEUEtHX01BSU5UU0NSSVBUX05BTUU+IgorbXNnc3RyICJCPERQS0dfTk9fVFNUUD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3MTMKK21zZ2lkICIiCisiRGVmaW5lZCBieSBCPGRwa2c+IG9uIHRoZSBtYWludGFpbmVyIHNjcmlwdCBlbnZpcm9ubWVudCB0byB0aGUgbmFtZSBvZiB0aGUgIgorInNjcmlwdCBydW5uaW5nIChwcmVpbnN0LCBwb3N0aW5zdCwgcHJlcm0sIHBvc3RybSkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3MTYKKyMsIGZ1enp5Cittc2dpZCAiVG8gbGlzdCBwYWNrYWdlcyByZWxhdGVkIHRvIHRoZSBlZGl0b3IgQjx2aT4oMSk6IgorbXNnc3RyICJQYXJhIGxpc3RhciBvcyBwYWNvdGVzIHJlbGFjaW9uYWRvcyBjb20gbyBlZGl0b3Igdmk6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzE4CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIiAgICAgQjxkcGtnIC1sIFxcKGFxKnZpKlxcKGFxPlxuIgorbXNnc3RyICJCPCBkcGtnIC1sICcqdmkqJz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3MjEKKyMsIGZ1enp5Cittc2dpZCAiVG8gc2VlIHRoZSBlbnRyaWVzIGluIEk8L3Zhci9saWIvZHBrZy9hdmFpbGFibGU+IG9mIHR3byBwYWNrYWdlczoiCittc2dzdHIgIlBhcmEgdmVyIGFzIGVudHJhZGFzIGVtIEk8L3Zhci9saWIvZHBrZy9hdmFpbGFibGU+IGVtIGRvaXMgcGFjb3RlczoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3MjMKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiICAgICBCPGRwa2cgLS1wcmludC1hdmFpbCBlbHZpcyB2aW0gfCBsZXNzPlxuIgorbXNnc3RyICJCPCBkcGtnIC0tcHJpbnQtYXZhaWwgZWx2aXMgdmltIHwgbGVzcz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3MjYKK21zZ2lkICJUbyBzZWFyY2ggdGhlIGxpc3Rpbmcgb2YgcGFja2FnZXMgeW91cnNlbGY6IgorbXNnc3RyICJQYXJhIHByb2N1cmFyIG5hIGxpc3RhIGRlIHBhY290ZXMgdm9jw6ogbWVzbW86IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzI4CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIiAgICAgQjxsZXNzIC92YXIvbGliL2Rwa2cvYXZhaWxhYmxlPlxuIgorbXNnc3RyICJCPCBsZXNzIC92YXIvbGliL2Rwa2cvYXZhaWxhYmxlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjczMQorbXNnaWQgIlRvIHJlbW92ZSBhbiBpbnN0YWxsZWQgZWx2aXMgcGFja2FnZToiCittc2dzdHIgIlBhcmEgcmVtb3ZlciB1bSBwYWNvdGUgaW5zdGFsYWRvIGVsdmlzOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjczMworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICIgICAgIEI8ZHBrZyAtciBlbHZpcz5cbiIKK21zZ3N0ciAiQjwgZHBrZyAtciBlbHZpcz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3MzgKKyMsIGZ1enp5Cittc2dpZCAiIgorIlRvIGluc3RhbGwgYSBwYWNrYWdlLCB5b3UgZmlyc3QgbmVlZCB0byBmaW5kIGl0IGluIGFuIGFyY2hpdmUgb3IgQ0RST00uIFRoZSAiCisiXCJhdmFpbGFibGVcIiBmaWxlIHNob3dzIHRoYXQgdGhlIHZpbSBwYWNrYWdlIGlzIGluIHNlY3Rpb24gXCJlZGl0b3JzXCI6IgorbXNnc3RyICIiCisiUGFyYSBpbnN0YWxhciB1bSBwYWNvdGUsIHZvY8OqIHByaW1laXJvIHByZWNpc2EgZW5jb250csOhLWxvIGVtIHVtIHJlcG9zaXTDs3JpbyAiCisib3UgQ0RST00uICBPIGFycXVpdm8gXCJhdmFpbGFibGVcIiBtb3N0cmEgcXVlIG8gcGFjb3RlIHZpbSBlc3TDoSBuYSBzZcOnw6NvICIKKyJcImVkaXRvcnNcIjoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3NDEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiIgorIiAgICAgQjxjZCAvbWVkaWEvY2Ryb20vcG9vbC9tYWluL3YvdmltPlxuIgorIiAgICAgQjxkcGtnIC1pIHZpbV80LjUtMy5kZWI+XG4iCittc2dzdHIgIkI8IGNkIC9jZHJvbS9oYW1tL2hhbW0vYmluYXJ5L2VkaXRvcnM+IEI8IGRwa2cgLWkgdmltXzQuNS0zLmRlYj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3NDQKK21zZ2lkICJUbyBtYWtlIGEgbG9jYWwgY29weSBvZiB0aGUgcGFja2FnZSBzZWxlY3Rpb24gc3RhdGVzOiIKK21zZ3N0ciAiUGFyYSBmYXplciB1bWEgY8OzcGlhIGxvY2FsIGRvcyBlc3RhZG9zIGRlIHNlbGXDp8OjbyBkb3MgcGFjb3RlczoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3NDYKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiICAgICBCPGRwa2cgLS1nZXQtc2VsZWN0aW9ucyBFPGd0Pm15c2VsZWN0aW9ucz5cbiIKK21zZ3N0ciAiQjwgZHBrZyAtLWdldC1zZWxlY3Rpb25zIEU8Z3Q+bXlzZWxlY3Rpb25zPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjc1MAorbXNnaWQgIiIKKyJZb3UgbWlnaHQgdHJhbnNmZXIgdGhpcyBmaWxlIHRvIGFub3RoZXIgY29tcHV0ZXIsIGFuZCBpbnN0YWxsIGl0IHRoZXJlIHdpdGg6IgorbXNnc3RyICIiCisiVm9jw6ogcG9kZSB0cmFuc2ZlcmlyIGVzc2UgYXJxdWl2byBwYXJhIG91dHJvIGNvbXB1dGFkb3IgZSBpbnN0YWzDoS1sbyBjb206IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzUzCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIiIKKyIgICAgIEI8ZHBrZyAtLWNsZWFyLXNlbGVjdGlvbnM+XG4iCisiICAgICBCPGRwa2cgLS1zZXQtc2VsZWN0aW9ucyBFPGx0Pm15c2VsZWN0aW9ucz5cbiIKK21zZ3N0ciAiQjwgZHBrZyAtLXNldC1zZWxlY3Rpb25zIEU8bHQ+bXlzZWxlY3Rpb25zPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjc1OQorIywgZnV6enkKK21zZ2lkICIiCisiTm90ZSB0aGF0IHRoaXMgd2lsbCBub3QgYWN0dWFsbHkgaW5zdGFsbCBvciByZW1vdmUgYW55dGhpbmcsIGJ1dCBqdXN0IHNldCAiCisidGhlIHNlbGVjdGlvbiBzdGF0ZSBvbiB0aGUgcmVxdWVzdGVkIHBhY2thZ2VzLiBZb3Ugd2lsbCBuZWVkIHNvbWUgb3RoZXIgIgorImFwcGxpY2F0aW9uIHRvIGFjdHVhbGx5IGRvd25sb2FkIGFuZCBpbnN0YWxsIHRoZSByZXF1ZXN0ZWQgcGFja2FnZXMuIEZvciAiCisiZXhhbXBsZSwgcnVuIEI8YXB0LWdldCBkc2VsZWN0LXVwZ3JhZGU+LiIKK21zZ3N0ciAiIgorIk5vdGUgcXVlIGlzc28gbsOjbyBpbnN0YWxhcsOhIG5lbSByZW1vdmVyw6EgbmFkYSwgbWFzIGFwZW5hcyBpcsOhIGNvbmZpZ3VyYXIgbyAiCisiZXN0YWRvIGRlIHNlbGXDp8OjbyBkb3MgcGFjb3RlcyByZXF1aXNpdGFkb3MuICBWb2PDqiBwcmVjaXNhcsOhIGRlIGFsZ3VtYSBvdXRyYSAiCisiYXBsaWNhw6fDo28gcGFyYSBiYWl4YXIgZSBpbnN0YWxhciBvcyBwYWNvdGVzIHJlcXVpc2l0YWRvcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3NjIKKyMsIGZ1enp5Cittc2dpZCAiIgorIk9yZGluYXJpbHksIHlvdSB3aWxsIGZpbmQgdGhhdCBCPGRzZWxlY3Q+KDEpIHByb3ZpZGVzIGEgbW9yZSBjb252ZW5pZW50IHdheSAiCisidG8gbW9kaWZ5IHRoZSBwYWNrYWdlIHNlbGVjdGlvbiBzdGF0ZXMuIgorbXNnc3RyICIiCisiT3JkaW5hcmlhbWVudGUsIHZvY8OqIHZlcmlmaWNhcsOhIHF1ZSBvIEI8ZHNlbGVjdD4oOCkgcHJvdsOqIHVtYSBtYW5laXJhIG1haXMgIgorImNvbnZlbmllbnRlIGRlIG1vZGlmaWNhciBvIGVzdGFkbyBkZSBzZWxlw6fDo28gZG9zIHBhY290ZXMuIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy4xOjc2NAorIywgbm8td3JhcAorbXNnaWQgIkFERElUSU9OQUwgRlVOQ1RJT05BTElUWSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzY3Cittc2dpZCAiIgorIkFkZGl0aW9uYWwgZnVuY3Rpb25hbGl0eSBjYW4gYmUgZ2FpbmVkIGJ5IGluc3RhbGxpbmcgYW55IG9mIHRoZSBmb2xsb3dpbmcgIgorInBhY2thZ2VzOiBCPGFwdD4sIEI8YXB0aXR1ZGU+IGFuZCBCPGRlYnN1bXM+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6Nzc5CisjLCBmdXp6eQorbXNnaWQgIiIKKyJCPGFwdGl0dWRlPigxKSwgQjxhcHQ+KDEpLCBCPGRzZWxlY3Q+KDEpLCBCPGRwa2ctZGViPigxKSwgQjxkcGtnLXF1ZXJ5PigxKSwgIgorIkI8ZGViPig1KSwgQjxkZWItY29udHJvbD4oNSksIEI8ZHBrZy5jZmc+KDUpLCBhbmQgQjxkcGtnLXJlY29uZmlndXJlPig4KS4iCittc2dzdHIgIiIKKyJCPGRzZWxlY3Q+KDgpLCBCPGRwa2ctZGViPigxKSwgQjxkZWI+KDUpLCBCPGRlYi1jb250cm9sPig1KSwgZSBCPGRwa2ctIgorInJlY29uZmlndXJlPig4KSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjc4MgorbXNnaWQgIkI8LS1uby1hY3Q+IHVzdWFsbHkgZ2l2ZXMgbGVzcyBpbmZvcm1hdGlvbiB0aGFuIG1pZ2h0IGJlIGhlbHBmdWwuIgorbXNnc3RyICJCPC0tbm8tYWN0PiBub3JtYWxtZW50ZSBkw6EgbWVub3MgaW5mb3JtYcOnw6NvIGRvIHF1ZSBzZXJpYSDDunRpbC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3ODUgZHBrZy5jZmcuNToyMgorIywgZnV6enkKK21zZ2lkICIiCisiU2VlIEk8L3Vzci9zaGFyZS9kb2MvZHBrZy9USEFOS1M+IGZvciB0aGUgbGlzdCBvZiBwZW9wbGUgd2hvIGhhdmUgIgorImNvbnRyaWJ1dGVkIHRvIEI8ZHBrZz4uIgorbXNnc3RyICIiCisiVmVqYSBCPC91c3Ivc2hhcmUvZG9jL2Rwa2cvVEhBTktTPiBwYXJhIGEgbGlzdGEgZGUgcGVzc29hcyBxdWVcbiIKKyJjb250cmlidcOtcmFtIHBhcmEgbyBCPGRwa2c+LlxuIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgImRwa2ctYXJjaGl0ZWN0dXJlIgorbXNnc3RyICJCPGRwa2cgLS1wcmludC1hcmNoaXRlY3R1cmU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjQKK21zZ2lkICIiCisiZHBrZy1hcmNoaXRlY3R1cmUgLSBzZXQgYW5kIGRldGVybWluZSB0aGUgYXJjaGl0ZWN0dXJlIGZvciBwYWNrYWdlIGJ1aWxkaW5nIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6OAorIywgZnV6enkKK21zZ2lkICJCPGRwa2ctYXJjaGl0ZWN0dXJlPiBbSTxvcHRpb24+Li4uXSBbSTxjb21tYW5kPl0iCittc2dzdHIgIkI8ZHBrZz4gW0k8b3DDp8O1ZXM+XSBJPGHDp8Ojbz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTMKK21zZ2lkICIiCisiZHBrZy1hcmNoaXRlY3R1cmUgZG9lcyBwcm92aWRlIGEgZmFjaWxpdHkgdG8gZGV0ZXJtaW5lIGFuZCBzZXQgdGhlIGJ1aWxkIGFuZCAiCisiaG9zdCBhcmNoaXRlY3R1cmUgZm9yIHBhY2thZ2UgYnVpbGRpbmcuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTYKK21zZ2lkICIiCisiVGhlIGJ1aWxkIGFyY2hpdGVjdHVyZSBpcyBhbHdheXMgZGV0ZXJtaW5lZCBieSBhbiBleHRlcm5hbCBjYWxsIHRvIEI8ZHBrZz4iCisiKDEpLCBhbmQgY2FuIG5vdCBiZSBzZXQgYXQgdGhlIGNvbW1hbmQgbGluZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyNQorbXNnaWQgIiIKKyJZb3UgY2FuIHNwZWNpZnkgdGhlIGhvc3QgYXJjaGl0ZWN0dXJlIGJ5IHByb3ZpZGluZyBvbmUgb3IgYm90aCBvZiB0aGUgIgorIm9wdGlvbnMgQjwtYT4gYW5kIEI8LXQ+LiBUaGUgZGVmYXVsdCBpcyBkZXRlcm1pbmVkIGJ5IGFuIGV4dGVybmFsIGNhbGwgdG8gIgorIkI8Z2NjPigxKSwgb3IgdGhlIHNhbWUgYXMgdGhlIGJ1aWxkIGFyY2hpdGVjdHVyZSBpZiBcXHMtMUNDXFxzMCBvciBnY2MgYXJlICIKKyJib3RoIG5vdCBhdmFpbGFibGUuIE9uZSBvdXQgb2YgQjwtYT4gYW5kIEI8LXQ+IGlzIHN1ZmZpY2llbnQsIHRoZSB2YWx1ZSBvZiAiCisidGhlIG90aGVyIHdpbGwgYmUgc2V0IHRvIGEgdXNhYmxlIGRlZmF1bHQuIEluZGVlZCwgaXQgaXMgb2Z0ZW4gYmV0dGVyIHRvICIKKyJvbmx5IHNwZWNpZnkgb25lLCBiZWNhdXNlIEI8ZHBrZy1hcmNoaXRlY3R1cmU+IHdpbGwgd2FybiB5b3UgaWYgeW91ciBjaG9pY2UgIgorImRvZXMgbm90IG1hdGNoIHRoZSBkZWZhdWx0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyNiBkcGtnLWJ1aWxkZmxhZ3MuMTo0NSBkcGtnLWRlYi4xOjI3IGRwa2ctZGl2ZXJ0Ljg6MjQKKyM6IGRwa2ctcXVlcnkuMToxMyBkcGtnLXNvdXJjZS4xOjE4IGRwa2ctc3BsaXQuMTozMSBkcGtnLXN0YXRvdmVycmlkZS44OjIzCisjOiBkcGtnLXRyaWdnZXIuMToyNCBkcGtnLXZlbmRvci4xOjE0IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MzQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyMDIKKyMsIG5vLXdyYXAKK21zZ2lkICJDT01NQU5EUyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyNworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1sPiIKK21zZ3N0ciAiQjwtRz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MzEKK21zZ2lkICIiCisiUHJpbnQgdGhlIGVudmlyb25tZW50IHZhcmlhYmxlcywgb25lIGVhY2ggbGluZSwgaW4gdGhlIGZvcm1hdCAiCisiSTxWQVJJQUJMRT12YWx1ZT4uIFRoaXMgaXMgdGhlIGRlZmF1bHQgYWN0aW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTozMQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1lPkk8ZGViaWFuLWFyY2hpdGVjdHVyZT4iCittc2dzdHIgIkI8ZHBrZyAtLXByaW50LWFyY2hpdGVjdHVyZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MzcKK21zZ2lkICIiCisiQ2hlY2sgZm9yIGVxdWFsaXR5IG9mIGFyY2hpdGVjdHVyZS4gQnkgZGVmYXVsdCBJPGRlYmlhbi1hcmNoaXRlY3R1cmU+IGlzICIKKyJjb21wYXJlZCBhZ2FpbnN0IHRoZSBjdXJyZW50IERlYmlhbiBhcmNoaXRlY3R1cmUsIGJlaW5nIHRoZSBob3N0LiAgVGhpcyAiCisiYWN0aW9uIHdpbGwgbm90IGV4cGFuZCB0aGUgYXJjaGl0ZWN0dXJlIHdpbGRjYXJkcy4gQ29tbWFuZCBmaW5pc2hlcyB3aXRoIGFuICIKKyJleGl0IHN0YXR1cyBvZiAwIGlmIG1hdGNoZWQsIDEgaWYgbm90IG1hdGNoZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjM3CisjLCBuby13cmFwCittc2dpZCAiQjwtaT5JPGFyY2hpdGVjdHVyZS13aWxkY2FyZD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo0MworbXNnaWQgIiIKKyJDaGVjayBmb3IgaWRlbnRpdHkgb2YgYXJjaGl0ZWN0dXJlIGJ5IGV4cGFuZGluZyBJPGFyY2hpdGVjdHVyZS13aWxkY2FyZD4gYXMgIgorImFuIGFyY2hpdGVjdHVyZSB3aWxkY2FyZCBhbmQgY29tcGFyaW5nIGFnYWluc3QgdGhlIGN1cnJlbnQgRGViaWFuICIKKyJhcmNoaXRlY3R1cmUuIENvbW1hbmQgZmluaXNoZXMgd2l0aCBhbiBleGl0IHN0YXR1cyBvZiAwIGlmIG1hdGNoZWQsIDEgaWYgbm90ICIKKyJtYXRjaGVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo0MworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1xPkk8dmFyaWFibGUtbmFtZT4iCittc2dzdHIgIkI8LS1sb2c9Pkk8ZmlsZW5hbWU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjQ2Cittc2dpZCAiUHJpbnQgdGhlIHZhbHVlIG9mIGEgc2luZ2xlIHZhcmlhYmxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo0NgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1zPiIKK21zZ3N0ciAiQjwtRz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NTAKK21zZ2lkICIiCisiUHJpbnQgYW4gZXhwb3J0IGNvbW1hbmQuIFRoaXMgY2FuIGJlIHVzZWQgdG8gc2V0IHRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZXMgIgorInVzaW5nIGV2YWwuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjUwCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LXU+IgorbXNnc3RyICJCPC1HPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo1MworbXNnaWQgIlByaW50IGEgc2ltaWxhciBjb21tYW5kIHRvIEI8LXM+IGJ1dCB0byB1bnNldCBhbGwgdmFyaWFibGVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo1MworIywgbm8td3JhcAorbXNnaWQgIkI8LWM+STwgY29tbWFuZD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo1NworbXNnaWQgIiIKKyJFeGVjdXRlIGEgSTxjb21tYW5kPiBpbiBhbiBlbnZpcm9ubWVudCB3aGljaCBoYXMgYWxsIHZhcmlhYmxlcyBzZXQgdG8gdGhlICIKKyJkZXRlcm1pbmVkIHZhbHVlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo1NworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1MPiIKK21zZ3N0ciAiQjwtRz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NjAKK21zZ2lkICJQcmludCBhIGxpc3Qgb2YgdmFsaWQgYXJjaGl0ZWN0dXJlIG5hbWVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjYzIGRwa2ctYnVpbGRmbGFncy4xOjkyIGRwa2ctYnVpbGRwYWNrYWdlLjE6MjI2CisjOiBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6MzYgZHBrZy1kaXN0YWRkZmlsZS4xOjM1IGRwa2ctZGViLjE6MTc1CisjOiBkcGtnLWRpdmVydC44Ojc0IGRwa2ctZ2VuY2hhbmdlcy4xOjEzNCBkcGtnLWdlbmNvbnRyb2wuMToxMjQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQ0NiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjQxIGRwa2ctbmFtZS4xOjYxCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MzYgZHBrZy1xdWVyeS4xOjExMyBkcGtnLXNjYW5wYWNrYWdlcy4xOjk5CisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6NjggZHBrZy1zaGxpYmRlcHMuMToyMTggZHBrZy1zb3VyY2UuMTo5OQorIzogZHBrZy1zcGxpdC4xOjEyOSBkcGtnLXN0YXRvdmVycmlkZS44OjQ3IGRwa2ctdHJpZ2dlci4xOjM0IGRwa2ctdmVuZG9yLjE6MzEKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMTkKK21zZ2lkICJTaG93IHRoZSB1c2FnZSBtZXNzYWdlIGFuZCBleGl0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjY2IGRwa2ctYnVpbGRmbGFncy4xOjk1IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjI5CisjOiBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6MzkgZHBrZy1kaXN0YWRkZmlsZS4xOjM4IGRwa2ctZGViLjE6MTc4CisjOiBkcGtnLWRpdmVydC44Ojc3IGRwa2ctZ2VuY2hhbmdlcy4xOjEzNyBkcGtnLWdlbmNvbnRyb2wuMToxMjcKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQ0OSBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjQ0IGRwa2ctbmFtZS4xOjY0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MzkgZHBrZy1xdWVyeS4xOjExNiBkcGtnLXNjYW5wYWNrYWdlcy4xOjEwMgorIzogZHBrZy1zY2Fuc291cmNlcy4xOjcwIGRwa2ctc2hsaWJkZXBzLjE6MjIxIGRwa2ctc291cmNlLjE6MTAyCisjOiBkcGtnLXNwbGl0LjE6MTMyIGRwa2ctc3RhdG92ZXJyaWRlLjg6NTAgZHBrZy10cmlnZ2VyLjE6MzcgZHBrZy12ZW5kb3IuMTozNAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjMyMgorbXNnaWQgIlNob3cgdGhlIHZlcnNpb24gYW5kIGV4aXQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjY4CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LWE+STxkZWJpYW4tYXJjaGl0ZWN0dXJlPiIKK21zZ3N0ciAiQjxkcGtnIC0tcHJpbnQtYXJjaGl0ZWN0dXJlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo3MQorbXNnaWQgIlNldCB0aGUgRGViaWFuIGFyY2hpdGVjdHVyZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NzEgZHBrZy1idWlsZHBhY2thZ2UuMToxMTAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC10Pkk8Z251LXN5c3RlbS10eXBlPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjc0Cittc2dpZCAiU2V0IHRoZSBHTlUgc3lzdGVtIHR5cGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjc0CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LWY+IgorbXNnc3RyICJCPC1HPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo4MQorbXNnaWQgIiIKKyJWYWx1ZXMgc2V0IGJ5IGV4aXN0aW5nIGVudmlyb25tZW50IHZhcmlhYmxlcyB3aXRoIHRoZSBzYW1lIG5hbWUgYXMgdXNlZCBieSAiCisidGhlIHNjcmlwdHMgYXJlIGhvbm9yZWQgKGkuZS4gdXNlZCBieSBCPGRwa2ctYXJjaGl0ZWN0dXJlPiksIGV4Y2VwdCBpZiB0aGlzICIKKyJmb3JjZSBmbGFnIGlzIHByZXNlbnQuIFRoaXMgYWxsb3dzIHRoZSB1c2VyIHRvIG92ZXJyaWRlIGEgdmFsdWUgZXZlbiB3aGVuICIKKyJ0aGUgY2FsbCB0byBCPGRwa2ctYXJjaGl0ZWN0dXJlPiBpcyBidXJpZWQgaW4gc29tZSBvdGhlciBzY3JpcHQgKGZvciBleGFtcGxlICIKKyJCPGRwa2ctYnVpbGRwYWNrYWdlPigxKSkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjgyCisjLCBuby13cmFwCittc2dpZCAiVEVSTVMiCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6ODMKKyMsIG5vLXdyYXAKK21zZ2lkICJidWlsZCBtYWNoaW5lIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6ODUKK21zZ2lkICJUaGUgbWFjaGluZSB0aGUgcGFja2FnZSBpcyBidWlsdCBvbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6ODUKKyMsIG5vLXdyYXAKK21zZ2lkICJob3N0IG1hY2hpbmUiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo4NworbXNnaWQgIlRoZSBtYWNoaW5lIHRoZSBwYWNrYWdlIGlzIGJ1aWx0IGZvci4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6ODcKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiRGViaWFuIGFyY2hpdGVjdHVyZSIKK21zZ3N0ciAiUHJvamV0byBEZWJpYW4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6OTAKK21zZ2lkICIiCisiVGhlIERlYmlhbiBhcmNoaXRlY3R1cmUgc3RyaW5nLCB3aGljaCBzcGVjaWZpZXMgdGhlIGJpbmFyeSB0cmVlIGluIHRoZSAiCisiXFxzLTFGVFBcXHMwIGFyY2hpdmUuIEV4YW1wbGVzOiBpMzg2LCBzcGFyYywgaHVyZC1pMzg2LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo5MAorIywgbm8td3JhcAorbXNnaWQgImFyY2hpdGVjdHVyZSB3aWxkY2FyZCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjk0Cittc2dpZCAiIgorIkFuIGFyY2hpdGVjdHVyZSB3aWxkY2FyZCBpcyBhIHNwZWNpYWwgYXJjaGl0ZWN0dXJlIHN0cmluZyB0aGF0IHdpbGwgbWF0Y2ggIgorImFueSByZWFsIGFyY2hpdGVjdHVyZSBiZWluZyBwYXJ0IG9mIGl0LiBUaGUgZ2VuZXJhbCBmb3JtIGlzIEU8bHQ+a2VybmVsRTxndD4tIgorIkU8bHQ+Y3B1RTxndD4uICBFeGFtcGxlczogbGludXgtYW55LCBhbnktaTM4NiwgaHVyZC1hbnkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjk0CisjLCBuby13cmFwCittc2dpZCAiXFxzLTFHTlVcXHMwIHN5c3RlbSB0eXBlIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6OTgKK21zZ2lkICIiCisiQW4gYXJjaGl0ZWN0dXJlIHNwZWNpZmljYXRpb24gc3RyaW5nIGNvbnNpc3Rpbmcgb2YgdHdvIHBhcnRzIHNlcGFyYXRlZCBieSBhICIKKyJkYXNoOiBjcHUgYW5kIHN5c3RlbS4gRXhhbXBsZXM6IGkzODYtbGludXgtZ251LCBzcGFyYy1saW51eC1nbnUsIGkzODYtZ251LCAiCisieDg2XzY0LW5ldGJzZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6OTkKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiVkFSSUFCTEVTIgorbXNnc3RyICJWQVJJw4FWRUlTIERFIEFNQklFTlRFIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEwMQorbXNnaWQgIlRoZSBmb2xsb3dpbmcgdmFyaWFibGVzIGFyZSBzZXQgYnkgQjxkcGtnLWFyY2hpdGVjdHVyZT46IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEwMQorIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0JVSUxEX0FSQ0hcXHMwIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTAzCittc2dpZCAiVGhlIERlYmlhbiBhcmNoaXRlY3R1cmUgb2YgdGhlIGJ1aWxkIG1hY2hpbmUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEwMworIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0JVSUxEX0FSQ0hfT1NcXHMwIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTA1Cittc2dpZCAiVGhlIERlYmlhbiBzeXN0ZW0gbmFtZSBvZiB0aGUgYnVpbGQgbWFjaGluZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTA1CisjLCBuby13cmFwCittc2dpZCAiXFxzLTFERUJfQlVJTERfQVJDSF9DUFVcXHMwIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTA3Cittc2dpZCAiVGhlIERlYmlhbiBjcHUgbmFtZSBvZiB0aGUgYnVpbGQgbWFjaGluZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTA3CisjLCBuby13cmFwCittc2dpZCAiXFxzLTFERUJfQlVJTERfQVJDSF9CSVRTXFxzMCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEwOQorbXNnaWQgIlRoZSBwb2ludGVyIHNpemUgb2YgdGhlIGJ1aWxkIG1hY2hpbmUgKGluIGJpdHMpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMDkKKyMsIG5vLXdyYXAKK21zZ2lkICJcXHMtMURFQl9CVUlMRF9BUkNIX0VORElBTlxcczAiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMTEKK21zZ2lkICJUaGUgZW5kaWFubmVzcyBvZiB0aGUgYnVpbGQgbWFjaGluZSAobGl0dGxlIC8gYmlnKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTExCisjLCBuby13cmFwCittc2dpZCAiXFxzLTFERUJfQlVJTERfR05VX0NQVVxcczAiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMTMKK21zZ2lkICJUaGUgXFxzLTFDUFVcXHMwIHBhcnQgb2YgXFxzLTFERUJfQlVJTERfR05VX1RZUEVcXHMwLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMTMKKyMsIG5vLXdyYXAKK21zZ2lkICJcXHMtMURFQl9CVUlMRF9HTlVfU1lTVEVNXFxzMCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjExNQorbXNnaWQgIlRoZSBTeXN0ZW0gcGFydCBvZiBcXHMtMURFQl9CVUlMRF9HTlVfVFlQRVxcczAuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjExNQorIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0JVSUxEX0dOVV9UWVBFXFxzMCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjExNworbXNnaWQgIlRoZSBcXHMtMUdOVVxcczAgc3lzdGVtIHR5cGUgb2YgdGhlIGJ1aWxkIG1hY2hpbmUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjExNworIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0JVSUxEX01VTFRJQVJDSFxcczAiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMjAKK21zZ2lkICIiCisiVGhlIGNsYXJpZmllZCBcXHMtMUdOVVxcczAgc3lzdGVtIHR5cGUgb2YgdGhlIGJ1aWxkIG1hY2hpbmUsIHVzZWQgZm9yICIKKyJmaWxlc3lzdGVtIHBhdGhzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMjAKKyMsIG5vLXdyYXAKK21zZ2lkICJcXHMtMURFQl9IT1NUX0FSQ0hcXHMwIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTIyCittc2dpZCAiVGhlIERlYmlhbiBhcmNoaXRlY3R1cmUgb2YgdGhlIGhvc3QgbWFjaGluZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTIyCisjLCBuby13cmFwCittc2dpZCAiXFxzLTFERUJfSE9TVF9BUkNIX09TXFxzMCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEyNAorbXNnaWQgIlRoZSBEZWJpYW4gc3lzdGVtIG5hbWUgb2YgdGhlIGhvc3QgbWFjaGluZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTI0CisjLCBuby13cmFwCittc2dpZCAiXFxzLTFERUJfSE9TVF9BUkNIX0NQVVxcczAiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMjYKK21zZ2lkICJUaGUgRGViaWFuIGNwdSBuYW1lIG9mIHRoZSBob3N0IG1hY2hpbmUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEyNgorIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0hPU1RfQVJDSF9CSVRTXFxzMCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEyOAorbXNnaWQgIlRoZSBwb2ludGVyIHNpemUgb2YgdGhlIGhvc3QgbWFjaGluZSAoaW4gYml0cykuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEyOAorIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0hPU1RfQVJDSF9FTkRJQU5cXHMwIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTMwCittc2dpZCAiVGhlIGVuZGlhbm5lc3Mgb2YgdGhlIGhvc3QgbWFjaGluZSAobGl0dGxlIC8gYmlnKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTMwCisjLCBuby13cmFwCittc2dpZCAiXFxzLTFERUJfSE9TVF9HTlVfQ1BVXFxzMCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEzMgorbXNnaWQgIlRoZSBcXHMtMUNQVVxcczAgcGFydCBvZiBcXHMtMURFQl9IT1NUX0dOVV9UWVBFXFxzMC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTMyCisjLCBuby13cmFwCittc2dpZCAiXFxzLTFERUJfSE9TVF9HTlVfU1lTVEVNXFxzMCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEzNAorbXNnaWQgIlRoZSBTeXN0ZW0gcGFydCBvZiBcXHMtMURFQl9IT1NUX0dOVV9UWVBFXFxzMC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTM0CisjLCBuby13cmFwCittc2dpZCAiXFxzLTFERUJfSE9TVF9HTlVfVFlQRVxcczAiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMzYKK21zZ2lkICJUaGUgXFxzLTFHTlVcXHMwIHN5c3RlbSB0eXBlIG9mIHRoZSBob3N0IG1hY2hpbmUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEzNgorIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0hPU1RfTVVMVElBUkNIXFxzMCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEzOQorbXNnaWQgIiIKKyJUaGUgY2xhcmlmaWVkIFxccy0xR05VXFxzMCBzeXN0ZW0gdHlwZSBvZiB0aGUgaG9zdCBtYWNoaW5lLCB1c2VkIGZvciAiCisiZmlsZXN5c3RlbSBwYXRocy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTQwCisjLCBuby13cmFwCittc2dpZCAiREVCSUFOL1JVTEVTIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTQ4Cittc2dpZCAiIgorIlRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZXMgc2V0IGJ5IEI8ZHBrZy1hcmNoaXRlY3R1cmU+IGFyZSBwYXNzZWQgdG8gSTxkZWJpYW4vIgorInJ1bGVzPiBhcyBtYWtlIHZhcmlhYmxlcyAoc2VlIG1ha2UgZG9jdW1lbnRhdGlvbikuIEhvd2V2ZXIsIHlvdSBzaG91bGQgbm90ICIKKyJyZWx5IG9uIHRoZW0sIGFzIHRoaXMgYnJlYWtzIG1hbnVhbCBpbnZvY2F0aW9uIG9mIHRoZSBzY3JpcHQuIEluc3RlYWQsIHlvdSAiCisic2hvdWxkIGFsd2F5cyBpbml0aWFsaXplIHRoZW0gdXNpbmcgQjxkcGtnLWFyY2hpdGVjdHVyZT4gd2l0aCB0aGUgLXEgb3B0aW9uLiAiCisiSGVyZSBhcmUgc29tZSBleGFtcGxlcywgd2hpY2ggYWxzbyBzaG93IGhvdyB5b3UgY2FuIGltcHJvdmUgdGhlIGNyb3NzICIKKyJjb21waWxhdGlvbiBzdXBwb3J0IGluIHlvdXIgcGFja2FnZToiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxNTEgZHBrZy1hcmNoaXRlY3R1cmUuMToxNjgKK21zZ2lkICJJbnN0ZWFkIG9mOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjE1NQorIywgbm8td3JhcAorbXNnaWQgIiIKKyJBUkNIPVxcYGRwa2cgLS1wcmludC1hcmNoaXRlY3R1cmVcXGBcbiIKKyJjb25maWd1cmUgJChcXHMtMUFSQ0hcXHMwKS1saW51eFxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTU4Cittc2dpZCAicGxlYXNlIHVzZSB0aGUgZm9sbG93aW5nOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjE2MgorIywgbm8td3JhcAorbXNnaWQgIiIKKyJcXCZcXHMtMURFQl9CVUlMRF9HTlVfVFlQRVxcczAgOj0gJChzaGVsbCBkcGtnLWFyY2hpdGVjdHVyZSAtcURFQl9CVUlMRF9HTlVfVFlQRSlcbiIKKyJcXCZcXHMtMURFQl9IT1NUX0dOVV9UWVBFXFxzMCA6PSAkKHNoZWxsIGRwa2ctYXJjaGl0ZWN0dXJlIC1xREVCX0hPU1RfR05VX1RZUEUpXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxNjQKKyMsIG5vLXdyYXAKK21zZ2lkICJjb25maWd1cmUgLS1idWlsZD0kKFxccy0xREVCX0JVSUxEX0dOVV9UWVBFXFxzMCkgLS1ob3N0PSQoXFxzLTFERUJfSE9TVF9HTlVfVFlQRVxcczApXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxNzQKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiQVJDSD1cXGBkcGtnIC0tcHJpbnQtYXJjaGl0ZWN0dXJlXFxgXG4iCisiaWZlcSAoJChcXHMtMUFSQ0hcXHMwKSxhbHBoYSlcbiIKKyIgIC4uLlxuIgorImVuZGlmXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxNzcKK21zZ2lkICJwbGVhc2UgdXNlOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjE4MAorIywgbm8td3JhcAorbXNnaWQgIlxcJlxccy0xREVCX0hPU1RfQVJDSFxcczAgOj0gJChzaGVsbCBkcGtnLWFyY2hpdGVjdHVyZSAtcURFQl9IT1NUX0FSQ0gpXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxODQKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiaWZlcSAoJChcXHMtMURFQl9IT1NUX0FSQ0hcXHMwKSxhbHBoYSlcbiIKKyIgIC4uLlxuIgorImVuZGlmXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxODgKK21zZ2lkICIiCisib3IgaWYgeW91IG9ubHkgbmVlZCB0byBjaGVjayB0aGUgQ1BVIG9yIE9TIHR5cGUsIHVzZSB0aGUgREVCX0hPU1RfQVJDSF9DUFUgIgorIm9yIERFQl9IT1NUX0FSQ0hfT1MgdmFyaWFibGVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjE5MworbXNnaWQgIiIKKyJJbiBnZW5lcmFsLCBjYWxsaW5nIGRwa2cgaW4gdGhlIHJ1bGVzIGZpbGUgdG8gZ2V0IGFyY2hpdGVjdHVyZSBpbmZvcm1hdGlvbiAiCisiaXMgZGVwcmVjYXRlZCAodW5sZXNzIHlvdSB3YW50IHRvIHByb3ZpZGUgYmFja3dhcmQgY29tcGF0aWJpbGl0eSwgc2VlICIKKyJiZWxvdykuICBFc3BlY2lhbGx5IHRoZSAtLXByaW50LWFyY2hpdGVjdHVyZSBvcHRpb24gaXMgdW5yZWxpYWJsZSBzaW5jZSB3ZSAiCisiaGF2ZSBEZWJpYW4gYXJjaGl0ZWN0dXJlcyB3aGljaCBkb24ndCBlcXVhbCBhIHByb2Nlc3NvciBuYW1lLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxOTQKKyMsIG5vLXdyYXAKK21zZ2lkICJCQUNLV0FSRCBDT01QQVRJQklMSVRZIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTk4Cittc2dpZCAiIgorIlRoZSBERUJfKl9BUkNIX0JJVFMgYW5kIERFQl8qX0FSQ0hfRU5ESUFOIHZhcmlhYmxlcyB3ZXJlIGludHJvZHVjZWQgaW4gZHBrZy0iCisiZGV2IDEuMTUuNC4gVXNpbmcgdGhlbSBpbiBJPGRlYmlhbi9ydWxlcz4gdGh1cyByZXF1aXJlcyBhIGJ1aWxkLWRlcGVuZGVuY3kgIgorIm9uIGRwa2ctZGV2IChFPGd0Pj0gMS4xNS40KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyMDMKK21zZ2lkICIiCisiVGhlIERFQl9IT1NUX0FSQ0hfQ1BVIGFuZCBERUJfSE9TVF9BUkNIX09TIHZhcmlhYmxlcyB3ZXJlIGludHJvZHVjZWQgaW4gZHBrZy0iCisiZGV2IDEuMTMuMi4gQmVmb3JlIHRoaXMgSTxkZWJpYW4vcnVsZXM+IGZpbGVzIHRlbmRlZCB0byBjaGVjayB0aGUgdmFsdWVzIG9mICIKKyJ0aGUgREVCX0hPU1RfR05VX0NQVSBvciBERUJfSE9TVF9HTlVfVFlQRSB2YXJpYWJsZXMgd2hpY2ggaGF2ZSBiZWVuIHN1YmplY3QgIgorInRvIGNoYW5nZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyMDgKK21zZ2lkICIiCisiV2hlcmUgSTxkZWJpYW4vcnVsZXM+IGZpbGVzIGNoZWNrIHRoZXNlIHZhcmlhYmxlcyB0byBkZWNpZGUgaG93IG9yIHdoYXQgdG8gIgorImNvbXBpbGUsIHRoaXMgc2hvdWxkIGJlIHVwZGF0ZWQgdG8gdXNlIHRoZSBuZXcgdmFyaWFibGVzIGFuZCB2YWx1ZXMuICBZb3UgIgorIm1heSB3aXNoIHRvIHJldGFpbiBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eSB3aXRoIG9sZGVyIHZlcnNpb24gb2YgZHBrZy1kZXYgYnkgIgorInVzaW5nIHRoZSBmb2xsb3dpbmcgY29kZToiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyMTIKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiREVCX0hPU1RfQVJDSF9DUFUgOj0gJChzaGVsbCBkcGtnLWFyY2hpdGVjdHVyZSAtcURFQl9IT1NUX0FSQ0hfQ1BVIDJFPGd0Pi9kZXYvbnVsbClcbiIKKyJERUJfSE9TVF9BUkNIX09TIDo9ICQoc2hlbGwgZHBrZy1hcmNoaXRlY3R1cmUgLXFERUJfSE9TVF9BUkNIX09TIDJFPGd0Pi9kZXYvbnVsbClcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjIyNgorIywgbm8td3JhcAorbXNnaWQgIiIKKyIjIFRha2UgYWNjb3VudCBvZiBvbGQgZHBrZy1hcmNoaXRlY3R1cmUgb3V0cHV0LlxuIgorImlmZXEgKCQoREVCX0hPU1RfQVJDSF9DUFUpLClcbiIKKyIgIERFQl9IT1NUX0FSQ0hfQ1BVIDo9ICQoc2hlbGwgZHBrZy1hcmNoaXRlY3R1cmUgLXFERUJfSE9TVF9HTlVfQ1BVKVxuIgorIiAgaWZlcSAoJChERUJfSE9TVF9BUkNIX0NQVSkseDg2XzY0KVxuIgorIiAgICBERUJfSE9TVF9BUkNIX0NQVSA6PSBhbWQ2NFxuIgorIiAgZW5kaWZcbiIKKyJlbmRpZlxuIgorImlmZXEgKCQoREVCX0hPU1RfQVJDSF9PUyksKVxuIgorIiAgREVCX0hPU1RfQVJDSF9PUyA6PSAkKHN1YnN0IC1nbnUsLCQoc2hlbGwgZHBrZy1hcmNoaXRlY3R1cmUgLXFERUJfSE9TVF9HTlVfU1lTVEVNKSlcbiIKKyIgIGlmZXEgKCQoREVCX0hPU1RfQVJDSF9PUyksZ251KVxuIgorIiAgICBERUJfSE9TVF9BUkNIX09TIDo9IGh1cmRcbiIKKyIgIGVuZGlmXG4iCisiZW5kaWZcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjIyOQorbXNnaWQgIkFuZCBzaW1pbGFybHkgZm9yIERFQl9CVUlMRF9BUkNIX0NQVSBhbmQgREVCX0JVSUxEX0FSQ0hfT1MuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjMyCittc2dpZCAiIgorIklmIHlvdSBzdGlsbCB3aXNoIHRvIHN1cHBvcnQgdmVyc2lvbnMgb2YgZHBrZy1kZXYgdGhhdCBkaWQgbm90IGluY2x1ZGUgIgorIkI8ZHBrZy1hcmNoaXRlY3R1cmU+LCB0aGUgZm9sbG93aW5nIGRvZXMgdGhlIGpvYjoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyNDIKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiXFwmXFxzLTFERUJfQlVJTERfQVJDSFxcczAgOj0gJChzaGVsbCBkcGtnIC0tcHJpbnQtYXJjaGl0ZWN0dXJlKVxuIgorIlxcJlxccy0xREVCX0JVSUxEX0dOVV9DUFVcXHMwIDo9ICQocGF0c3Vic3QgaHVyZC0lLCUsJChcXHMtMURFQl9CVUlMRF9BUkNIXFxzMCkpXG4iCisiaWZlcSAoJChmaWx0ZXItb3V0IGh1cmQtJSwkKFxccy0xREVCX0JVSUxEX0FSQ0hcXHMwKSksKVxuIgorIiAgXFxzLTFERUJfQlVJTERfR05VX1NZU1RFTVxcczAgOj0gZ251XG4iCisiZWxzZVxuIgorIiAgXFxzLTFERUJfQlVJTERfR05VX1NZU1RFTVxcczAgOj0gbGludXgtZ251XG4iCisiZW5kaWZcbiIKKyJERUJfQlVJTERfR05VX1RZUEU9JChcXHMtMURFQl9CVUlMRF9HTlVfQ1BVXFxzMCktJChcXHMtMURFQl9CVUlMRF9HTlVfU1lTVEVNXFxzMClcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI0NworIywgbm8td3JhcAorbXNnaWQgIiIKKyJcXCZcXHMtMURFQl9IT1NUX0FSQ0hcXHMwIDo9ICQoXFxzLTFERUJfQlVJTERfQVJDSFxcczApXG4iCisiXFwmXFxzLTFERUJfSE9TVF9HTlVfQ1BVXFxzMCA6PSAkKFxccy0xREVCX0JVSUxEX0dOVV9DUFVcXHMwKVxuIgorIlxcJlxccy0xREVCX0hPU1RfR05VX1NZU1RFTVxcczAgOj0gJChcXHMtMURFQl9CVUlMRF9HTlVfU1lTVEVNXFxzMClcbiIKKyJcXCZcXHMtMURFQl9IT1NUX0dOVV9UWVBFXFxzMCA6PSAkKFxccy0xREVCX0JVSUxEX0dOVV9UWVBFXFxzMClcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI1MQorbXNnaWQgIiIKKyJQdXQgYSBzdWJzZXQgb2YgdGhlc2UgbGluZXMgYXQgdGhlIHRvcCBvZiB5b3VyIGRlYmlhbi9ydWxlcyBmaWxlOyB0aGVzZSAiCisiZGVmYXVsdCB2YWx1ZXMgd2lsbCBiZSBvdmVyd3JpdHRlbiBpZiBkcGtnLWFyY2hpdGVjdHVyZSBpcyB1c2VkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI1OAorbXNnaWQgIiIKKyJZb3UgZG9uJ3QgbmVlZCB0aGUgZnVsbCBzZXQuIENob29zZSBhIGNvbnNpc3RlbnQgc2V0IHdoaWNoIGNvbnRhaW5zIHRoZSAiCisidmFsdWVzIHlvdSB1c2UgaW4gdGhlIHJ1bGVzIGZpbGUuIEZvciBleGFtcGxlLCBpZiB5b3Ugb25seSBuZWVkIHRoZSBob3N0ICIKKyJEZWJpYW4gYXJjaGl0ZWN0dXJlLCBgREVCX0hPU1RfQVJDSD1cXGBkcGtnIC0tcHJpbnQtYXJjaGl0ZWN0dXJlXFxgJyBpcyAiCisic3VmZmljaWVudCAodGhpcyBpcyBpbmRlZWQgdGhlIERlYmlhbiBhcmNoaXRlY3R1cmUgb2YgdGhlIGJ1aWxkIG1hY2hpbmUsIGJ1dCAiCisicmVtZW1iZXIgdGhhdCB3ZSBhcmUgb25seSB0cnlpbmcgdG8gYmUgYmFja3dhcmQgY29tcGF0aWJsZSB3aXRoIG5hdGl2ZSAiCisiY29tcGlsYXRpb24pLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI2MQorbXNnaWQgIiIKKyJUaGUgQjwtZT4gYW5kIEI8LWk+IG9wdGlvbnMgd2VyZSBvbmx5IGludHJvZHVjZWQgaW4gcmVsYXRpdmVseSByZWNlbnQgIgorInZlcnNpb25zIG9mIEI8ZHBrZy1hcmNoaXRlY3R1cmU+IChzaW5jZSBkcGtnIDEuMTMuMTMpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI2NQorbXNnaWQgIiIKKyJCPGRwa2ctYnVpbGRwYWNrYWdlPiBhY2NlcHRzIHRoZSBCPC1hPiBvcHRpb24gYW5kIHBhc3NlcyBpdCB0byBCPGRwa2ctIgorImFyY2hpdGVjdHVyZT4uIE90aGVyIGV4YW1wbGVzOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI2NworbXNnaWQgIkNDPWkzODYtZ251LWdjYyBkcGtnLWFyY2hpdGVjdHVyZSAtYyBkZWJpYW4vcnVsZXMgYnVpbGQiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyNjkKKyMsIGZ1enp5Cittc2dpZCAiZXZhbCBcXGBkcGtnLWFyY2hpdGVjdHVyZSAtdVxcYCIKK21zZ3N0ciAiQjxkcGtnIC0tcHJpbnQtYXJjaGl0ZWN0dXJlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyNzIKK21zZ2lkICIiCisiQ2hlY2sgaWYgYW4gYXJjaGl0ZWN0dXJlIGlzIGVxdWFsIHRvIHRoZSBjdXJyZW50IGFyY2hpdGVjdHVyZSBvciBhIGdpdmVuIG9uZToiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyNzQKK21zZ2lkICJkcGtnLWFyY2hpdGVjdHVyZSAtZWxpbnV4LWFscGhhIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6Mjc2Cittc2dpZCAiZHBrZy1hcmNoaXRlY3R1cmUgLWFtaXBzIC1lbGludXgtbWlwcyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI3OQorbXNnaWQgIiIKKyJDaGVjayBpZiB0aGUgY3VycmVudCBhcmNoaXRlY3R1cmUgb3IgYW4gYXJjaGl0ZWN0dXJlIHByb3ZpZGVkIHdpdGggLWEgYXJlICIKKyJMaW51eCBzeXN0ZW1zOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI4MQorbXNnaWQgImRwa2ctYXJjaGl0ZWN0dXJlIC1pbGludXgtYW55IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjgzCittc2dpZCAiZHBrZy1hcmNoaXRlY3R1cmUgLWFpMzg2IC1pbGludXgtYW55IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6Mjg4Cittc2dpZCAiIgorIkFsbCB0aGVzZSBmaWxlcyBoYXZlIHRvIGJlIHByZXNlbnQgZm9yIEI8ZHBrZy1hcmNoaXRlY3R1cmU+IHRvIHdvcmsuIFRoZWlyICIKKyJsb2NhdGlvbiBjYW4gYmUgb3ZlcnJpZGRlbiBhdCBydW50aW1lIHdpdGggdGhlIGVudmlyb25tZW50IHZhcmlhYmxlICIKKyJCPERQS0dfREFUQURJUj4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI4OAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJJPC91c3Ivc2hhcmUvZHBrZy9jcHV0YWJsZT4iCittc2dzdHIgIkk8L3Zhci9saWIvZHBrZy9hdmFpbGFibGU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI5MQorbXNnaWQgIlRhYmxlIG9mIGtub3duIENQVSBuYW1lcyBhbmQgbWFwcGluZyB0byB0aGVpciBHTlUgbmFtZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjkxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkk8L3Vzci9zaGFyZS9kcGtnL29zdGFibGU+IgorbXNnc3RyICJJPC92YXIvbGliL2Rwa2cvYXZhaWxhYmxlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyOTQKK21zZ2lkICJUYWJsZSBvZiBrbm93biBvcGVyYXRpbmcgc3lzdGVtIG5hbWVzIGFuZCBtYXBwaW5nIHRvIHRoZWlyIEdOVSBuYW1lLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyOTQKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiSTwvdXNyL3NoYXJlL2Rwa2cvdHJpcGxldHRhYmxlPiIKK21zZ3N0ciAiSTwvdmFyL2xpYi9kcGtnL2F2YWlsYWJsZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6Mjk4Cittc2dpZCAiIgorIk1hcHBpbmcgYmV0d2VlbiBEZWJpYW4gYXJjaGl0ZWN0dXJlIHRyaXBsZXRzIGFuZCBEZWJpYW4gYXJjaGl0ZWN0dXJlIG5hbWVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjMwMgorbXNnaWQgIkI8ZHBrZy1idWlsZHBhY2thZ2U+KDEpLCBCPGRwa2ctY3Jvc3M+KDEpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjMwNworbXNnaWQgIiIKKyJCPGRwa2ctYXJjaGl0ZWN0dXJlPiBhbmQgdGhpcyBtYW4gcGFnZSB3ZXJlIGluaXRpYWxseSB3cml0dGVuIGJ5IE1hcmN1cyAiCisiQnJpbmttYW5uIEU8bHQ+YnJpbmttZEBkZWJpYW4ub3JnRTxndD4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLmNmZy41OjEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiZHBrZy5jZmciCittc2dzdHIgImRwa2ciCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLmNmZy41OjEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiMjAwOS0wOS0wNSIKK21zZ3N0ciAiMjAwNi0wNC0wOSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy5jZmcuNTo0Cittc2dpZCAiZHBrZy5jZmcgLSBkcGtnIGNvbmZpZ3VyYXRpb24gZmlsZSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLmNmZy41OjExCittc2dpZCAiIgorIlRoaXMgZmlsZSBjb250YWlucyBkZWZhdWx0IG9wdGlvbnMgZm9yIGRwa2cuIEVhY2ggbGluZSBjb250YWlucyBhIHNpbmdsZSAiCisib3B0aW9uIHdoaWNoIGlzIGV4YWN0bHkgdGhlIHNhbWUgYXMgYSBub3JtYWwgY29tbWFuZCBsaW5lIG9wdGlvbiBmb3IgZHBrZyAiCisiZXhjZXB0IGZvciB0aGUgbGVhZGluZyBkYXNoZXMgd2hpY2ggYXJlIG5vdCB1c2VkIGhlcmUuIFF1b3RlcyBzdXJyb3VuZGluZyAiCisib3B0aW9uIHZhbHVlcyBhcmUgc3RyaXBwZWQuIENvbW1lbnRzIGFyZSBhbGxvd2VkIGJ5IHN0YXJ0aW5nIGEgbGluZSB3aXRoIGEgIgorImhhc2ggc2lnbiAoXCJCPCM+XCIpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLmNmZy41OjE0CisjLCBmdXp6eQorI3wgbXNnaWQgIkk8L2V0Yy9kcGtnL2Rwa2cuY2ZnPiIKK21zZ2lkICJJPC9ldGMvZHBrZy9kcGtnLmNmZy5kL1swLTlhLXpBLVpfLV0qPiIKK21zZ3N0ciAiSTwvZXRjL2Rwa2cvZHBrZy5jZmc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLmNmZy41OjE4CisjLCBmdXp6eQorbXNnaWQgIkk8fi8uZHBrZy5jZmc+IgorbXNnc3RyICJJPC9ldGMvZHBrZy9kcGtnLmNmZz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuY2ZnLjU6MjQgZHBrZy1kaXZlcnQuODoxMzQgZHBrZy1xdWVyeS4xOjIyMiBkcGtnLXN0YXRvdmVycmlkZS44Ojg2Cittc2dpZCAiQjxkcGtnPigxKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiZHBrZy1idWlsZGZsYWdzIgorbXNnc3RyICJCPGRwa2c+IFtJPG9ww6fDtWVzPl0gSTxhw6fDo28+IgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1idWlsZGZsYWdzLjE6MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICIyMDExLTA5LTEzIgorbXNnc3RyICIyMDA2LTA0LTA5IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo0Cittc2dpZCAiZHBrZy1idWlsZGZsYWdzIC0gcmV0dXJucyBidWlsZCBmbGFncyB0byB1c2UgZHVyaW5nIHBhY2thZ2UgYnVpbGQiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6OAorIywgZnV6enkKK21zZ2lkICJCPGRwa2ctYnVpbGRmbGFncz4gW0k8b3B0aW9uPi4uLl0gW0k8Y29tbWFuZD5dIgorbXNnc3RyICJCPGRwa2c+IFtJPG9ww6fDtWVzPl0gSTxhw6fDo28+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMgorbXNnaWQgIiIKKyJCPGRwa2ctYnVpbGRmbGFncz4gaXMgYSB0b29sIHRvIHJldHJpZXZlIGNvbXBpbGF0aW9uIGZsYWdzIHRvIHVzZSBkdXJpbmcgIgorImJ1aWxkIG9mIERlYmlhbiBwYWNrYWdlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTUKK21zZ2lkICIiCisiVGhlIGRlZmF1bHQgZmxhZ3MgYXJlIGRlZmluZWQgYnkgdGhlIHZlbmRvciBidXQgdGhleSBjYW4gYmUgZXh0ZW5kZWQvIgorIm92ZXJyaWRlbiBpbiBzZXZlcmFsIHdheXM6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNQorIywgbm8td3JhcAorbXNnaWQgIjEuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE3Cittc2dpZCAic3lzdGVtLXdpZGUgd2l0aCBCPC9ldGMvZHBrZy9idWlsZGZsYWdzLmNvbmY+OyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTcKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiMi4iCittc2dzdHIgIjIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjIwCittc2dpZCAiIgorImZvciB0aGUgY3VycmVudCB1c2VyIHdpdGggQjwkWERHX0NPTkZJR19IT01FL2Rwa2cvYnVpbGRmbGFncy5jb25mPiB3aGVyZSBCPCIKKyIkWERHX0NPTkZJR19IT01FPiBkZWZhdWx0cyB0byBCPCRIT01FLy5jb25maWc+OyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjAKKyMsIG5vLXdyYXAKK21zZ2lkICIzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyMworbXNnaWQgIiIKKyJ0ZW1wb3JhcmlseSBieSB0aGUgdXNlciB3aXRoIGVudmlyb25tZW50IHZhcmlhYmxlcyAoc2VlIHNlY3Rpb24gIgorIkI8RU5WSVJPTk1FTlQ+KTsiCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjIzCisjLCBuby13cmFwCittc2dpZCAiNC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjYKK21zZ2lkICIiCisiZHluYW1pY2FsbHkgYnkgdGhlIHBhY2thZ2UgbWFpbnRhaW5lciB3aXRoIGVudmlyb25tZW50IHZhcmlhYmxlcyBzZXQgdmlhICIKKyJCPGRlYmlhbi9ydWxlcz4gKHNlZSBzZWN0aW9uIEI8RU5WSVJPTk1FTlQ+KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjgKK21zZ2lkICJUaGUgY29uZmlndXJhdGlvbiBmaWxlcyBjYW4gY29udGFpbiB0d28gdHlwZXMgb2YgZGlyZWN0aXZlczoiCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjI4CisjLCBuby13cmFwCittc2dpZCAiQjxTRVQ+STwgZmxhZyB2YWx1ZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MzEKK21zZ2lkICJPdmVycmlkZSB0aGUgZmxhZyBuYW1lZCBJPGZsYWc+IHRvIGhhdmUgdGhlIHZhbHVlIEk8dmFsdWU+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MzEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPFNUUklQPkk8IGZsYWcgdmFsdWU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjM0Cittc2dpZCAiIgorIlN0cmlwIGZyb20gdGhlIGZsYWcgbmFtZWQgSTxmbGFnPiBhbGwgdGhlIGJ1aWxkIGZsYWdzIGxpc3RlZCBpbiBJPHZhbHVlPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjM0CisjLCBuby13cmFwCittc2dpZCAiQjxBUFBFTkQ+STwgZmxhZyB2YWx1ZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MzgKK21zZ2lkICIiCisiRXh0ZW5kIHRoZSBmbGFnIG5hbWVkIEk8ZmxhZz4gYnkgYXBwZW5kaW5nIHRoZSBvcHRpb25zIGdpdmVuIGluIEk8dmFsdWU+LiAgQSAiCisic3BhY2UgaXMgcHJlcGVuZGVkIHRvIHRoZSBhcHBlbmRlZCB2YWx1ZSBpZiB0aGUgZmxhZydzIGN1cnJlbnQgdmFsdWUgaXMgbm9uLSIKKyJlbXB0eS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjM4CisjLCBuby13cmFwCittc2dpZCAiQjxQUkVQRU5EPkk8IGZsYWcgdmFsdWU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjQyCittc2dpZCAiIgorIkV4dGVuZCB0aGUgZmxhZyBuYW1lZCBJPGZsYWc+IGJ5IHByZXBlbmRpbmcgdGhlIG9wdGlvbnMgZ2l2ZW4gaW4gSTx2YWx1ZT4uICAiCisiQSBzcGFjZSBpcyBhcHBlbmRlZCB0byB0aGUgcHJlcGVuZGVkIHZhbHVlIGlmIHRoZSBmbGFnJ3MgY3VycmVudCB2YWx1ZSBpcyAiCisibm9uLWVtcHR5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo0NQorbXNnaWQgIiIKKyJUaGUgY29uZmlndXJhdGlvbiBmaWxlcyBjYW4gY29udGFpbiBjb21tZW50cyBvbiBsaW5lcyBzdGFydGluZyB3aXRoIGEgaGFzaCAiCisiKCMpLiBFbXB0eSBsaW5lcyBhcmUgYWxzbyBpZ25vcmVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6NDYKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWR1bXA+IgorbXNnc3RyICJCPC0tbm9jaGVjaz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjUxCittc2dpZCAiIgorIlByaW50IHRvIHN0YW5kYXJkIG91dHB1dCBhbGwgY29tcGlsYXRpb24gZmxhZ3MgYW5kIHRoZWlyIHZhbHVlcy4gSXQgcHJpbnRzICIKKyJvbmUgZmxhZyBwZXIgbGluZSBzZXBhcmF0ZWQgZnJvbSBpdHMgdmFsdWUgYnkgYW4gZXF1YWwgc2lnbiAiCisiKFwiSTxmbGFnPj1JPHZhbHVlPlwiKS4gVGhpcyBpcyB0aGUgZGVmYXVsdCBhY3Rpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo1MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tbGlzdD4iCittc2dzdHIgIkI8aW5zdGFsbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjU2Cittc2dpZCAiIgorIlByaW50IHRoZSBsaXN0IG9mIGZsYWdzIHN1cHBvcnRlZCBieSB0aGUgY3VycmVudCB2ZW5kb3IgKG9uZSBwZXIgbGluZSkuIFNlZSAiCisidGhlIEI8U1VQUE9SVEVEIEZMQUdTPiBzZWN0aW9uIGZvciBtb3JlIGluZm9ybWF0aW9uIGFib3V0IHRoZW0uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo1NgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tZXhwb3J0PT5JPGZvcm1hdD4iCittc2dzdHIgIkI8LS1hZG1pbmRpcj4gSTxkaXJldMOzcmlvPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6NjYKK21zZ2lkICIiCisiUHJpbnQgdG8gc3RhbmRhcmQgb3V0cHV0IHNoZWxsIChpZiBJPGZvcm1hdD4gaXMgQjxzaD4pIG9yIG1ha2UgKGlmIEk8Zm9ybWF0PiAiCisiaXMgQjxtYWtlPikgY29tbWFuZHMgdGhhdCBjYW4gYmUgdXNlZCB0byBleHBvcnQgYWxsIHRoZSBjb21waWxhdGlvbiBmbGFncyBpbiAiCisidGhlIGVudmlyb25tZW50LiBJZiBJPGZvcm1hdD4gaXMgQjxjb25maWd1cmU+IHRoZW4gdGhlIG91dHB1dCBjYW4gYmUgdXNlZCBvbiAiCisiYSBCPC4vY29uZmlndXJlPiBjb21tYW5kLWxpbmUuIElmIHRoZSBJPGZvcm1hdD4gdmFsdWUgaXMgbm90IGdpdmVuLCBCPHNoPiBpcyAiCisiYXNzdW1lZC4gT25seSBjb21waWxhdGlvbiBmbGFncyBzdGFydGluZyB3aXRoIGFuIHVwcGVyIGNhc2UgY2hhcmFjdGVyIGFyZSAiCisiaW5jbHVkZWQsIG90aGVycyBhcmUgYXNzdW1lZCB0byBub3QgYmUgc3VpdGFibGUgZm9yIHRoZSBlbnZpcm9ubWVudC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjY2CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1nZXQ+STwgZmxhZz4iCittc2dzdHIgIkI8LS1sb2c9Pkk8ZmlsZW5hbWU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo3MAorbXNnaWQgIiIKKyJQcmludCB0aGUgdmFsdWUgb2YgdGhlIGZsYWcgb24gc3RhbmRhcmQgb3V0cHV0LiBFeGl0cyB3aXRoIDAgaWYgdGhlIGZsYWcgaXMgIgorImtub3duIG90aGVyd2lzZSBleGl0cyB3aXRoIDEuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo3MAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tb3JpZ2luPkk8IGZsYWc+IgorbXNnc3RyICJCPC0tbG9nPT5JPGZpbGVuYW1lPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6NzUKK21zZ2lkICIiCisiUHJpbnQgdGhlIG9yaWdpbiBvZiB0aGUgdmFsdWUgdGhhdCBpcyByZXR1cm5lZCBieSBCPC0tZ2V0Pi4gRXhpdHMgd2l0aCAwIGlmICIKKyJ0aGUgZmxhZyBpcyBrbm93biBvdGhlcndpc2UgZXhpdHMgd2l0aCAxLiBUaGUgb3JpZ2luIGNhbiBiZSBvbmUgb2YgdGhlICIKKyJmb2xsb3dpbmcgdmFsdWVzOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6NzYKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjx2ZW5kb3I+IgorbXNnc3RyICJCPC0tYWRtaW5kaXI+IEk8ZGlyZXTDs3Jpbz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjc5Cittc2dpZCAidGhlIG9yaWdpbmFsIGZsYWcgc2V0IGJ5IHRoZSB2ZW5kb3IgaXMgcmV0dXJuZWQ7IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo3OQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPHN5c3RlbT4iCittc2dzdHIgIkI8LUc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo4MgorbXNnaWQgInRoZSBmbGFnIGlzIHNldC9tb2RpZmllZCBieSBhIHN5c3RlbS13aWRlIGNvbmZpZ3VyYXRpb247IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo4MgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPHVzZXI+IgorbXNnc3RyICJCPC0tcXVpZXQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo4NQorbXNnaWQgInRoZSBmbGFnIGlzIHNldC9tb2RpZmllZCBieSBhIHVzZXItc3BlY2lmaWMgY29uZmlndXJhdGlvbjsiCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjg1CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8ZW52PiIKK21zZ3N0ciAiQjwtRz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjg4Cittc2dpZCAidGhlIGZsYWcgaXMgc2V0L21vZGlmaWVkIGJ5IGFuIGVudmlyb25tZW50LXNwZWNpZmljIGNvbmZpZ3VyYXRpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo5NgorIywgbm8td3JhcAorbXNnaWQgIlNVUFBPUlRFRCBGTEFHUyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6OTcKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxDRkxBR1M+IgorbXNnc3RyICJCPENPTFVNTlM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMDMKK21zZ2lkICIiCisiT3B0aW9ucyBmb3IgdGhlIEMgY29tcGlsZXIuIFRoZSBkZWZhdWx0IHZhbHVlIHNldCBieSB0aGUgdmVuZG9yIGluY2x1ZGVzIEk8LSIKKyJnPiBhbmQgdGhlIGRlZmF1bHQgb3B0aW1pemF0aW9uIGxldmVsIChJPC1PMj4gdXN1YWxseSwgb3IgSTwtTzA+IGlmIHRoZSAiCisiQjxERUJfQlVJTERfT1BUSU9OUz4gZW52aXJvbm1lbnQgdmFyaWFibGUgZGVmaW5lcyBJPG5vb3B0PikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMDMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPENQUEZMQUdTPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMDYKK21zZ2lkICJPcHRpb25zIGZvciB0aGUgQyBwcmVwcm9jZXNzb3IuIERlZmF1bHQgdmFsdWU6IGVtcHR5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTA2CisjLCBuby13cmFwCittc2dpZCAiQjxDWFhGTEFHUz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTA5Cittc2dpZCAiT3B0aW9ucyBmb3IgdGhlIEMrKyBjb21waWxlci4gU2FtZSBhcyBCPENGTEFHUz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMDkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPEZGTEFHUz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTEyCittc2dpZCAiT3B0aW9ucyBmb3IgdGhlIEZvcnRyYW4gY29tcGlsZXIuIFNhbWUgYXMgQjxDRkxBR1M+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTEyCisjLCBuby13cmFwCittc2dpZCAiQjxMREZMQUdTPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMjAKK21zZ2lkICIiCisiT3B0aW9ucyBwYXNzZWQgdG8gdGhlIGNvbXBpbGVyIHdoZW4gbGlua2luZyBleGVjdXRhYmxlcyBvciBzaGFyZWQgb2JqZWN0cyAiCisiKGlmIHRoZSBsaW5rZXIgaXMgY2FsbGVkIGRpcmVjdGx5LCB0aGVuIEI8LVdsPiBhbmQgQjwsPiBoYXZlIHRvIGJlIHN0cmlwcGVkICIKKyJmcm9tIHRoZXNlIG9wdGlvbnMpLiBEZWZhdWx0IHZhbHVlOiBlbXB0eS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEyMgorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJJPC9ldGMvZHBrZy9kcGtnLmNmZz4iCittc2dpZCAiQjwvZXRjL2Rwa2cvYnVpbGRmbGFncy5jb25mPiIKK21zZ3N0ciAiSTwvZXRjL2Rwa2cvZHBrZy5jZmc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMjUKK21zZ2lkICJTeXN0ZW0gd2lkZSBjb25maWd1cmF0aW9uIGZpbGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMjUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPCRYREdfQ09ORklHX0hPTUUvZHBrZy9idWlsZGZsYWdzLmNvbmY+IG9yIEI8JEhPTUUvLmNvbmZpZy9kcGtnL2J1aWxkZmxhZ3MuY29uZj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTI4Cittc2dpZCAiVXNlciBjb25maWd1cmF0aW9uIGZpbGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEzNQorbXNnaWQgIiIKKyJUaGVyZSBhcmUgMiBzZXRzIG9mIGVudmlyb25tZW50IHZhcmlhYmxlcyBkb2luZyB0aGUgc2FtZSBvcGVyYXRpb25zLCB0aGUgIgorImZpcnN0IG9uZSAoREVCX0k8ZmxhZz5fSTxvcD4pIHNob3VsZCBuZXZlciBiZSB1c2VkIHdpdGhpbiBCPGRlYmlhbi9ydWxlcz4uICIKKyJJdCdzIG1lYW50IGZvciBhbnkgdXNlciB0aGF0IHdhbnRzIHRvIHJlYnVpbGQgdGhlIHNvdXJjZSBwYWNrYWdlIHdpdGggIgorImRpZmZlcmVudCBidWlsZCBmbGFncy4gVGhlIHNlY29uZCBzZXQgKERFQl9JPGZsYWc+X01BSU5UX0k8b3A+KSBzaG91bGQgb25seSAiCisiYmUgdXNlZCBpbiBCPGRlYmlhbi9ydWxlcz4gYnkgcGFja2FnZSBtYWludGFpbmVycyB0byBjaGFuZ2UgdGhlIHJlc3VsdGluZyAiCisiYnVpbGQgZmxhZ3MuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMzUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPERFQl8+STxmbGFnPkI8X1NFVD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFEKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEzNworIywgbm8td3JhcAorbXNnaWQgIkI8REVCXz5JPGZsYWc+QjxfTUFJTlRfU0VUPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNDEKK21zZ2lkICIiCisiVGhpcyB2YXJpYWJsZSBjYW4gYmUgdXNlZCB0byBmb3JjZSB0aGUgdmFsdWUgcmV0dXJuZWQgZm9yIHRoZSBnaXZlbiBJPGZsYWc+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTQxCisjLCBuby13cmFwCittc2dpZCAiQjxERUJfPkk8ZmxhZz5CPF9TVFJJUD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFEKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE0MworIywgbm8td3JhcAorbXNnaWQgIkI8REVCXz5JPGZsYWc+QjxfTUFJTlRfU1RSSVA+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE0OAorbXNnaWQgIiIKKyJUaGlzIHZhcmlhYmxlIGNhbiBiZSB1c2VkIHRvIHByb3ZpZGUgYSBzcGFjZSBzZXBhcmF0ZWQgbGlzdCBvZiBvcHRpb25zIHRoYXQgIgorIndpbGwgYmUgc3RyaXBwZWQgZnJvbSB0aGUgc2V0IG9mIGZsYWdzIHJldHVybmVkIGZvciB0aGUgZ2l2ZW4gSTxmbGFnPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE0OAorIywgbm8td3JhcAorbXNnaWQgIkI8REVCXz5JPGZsYWc+QjxfQVBQRU5EPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUQorIzogZHBrZy1idWlsZGZsYWdzLjE6MTUwCisjLCBuby13cmFwCittc2dpZCAiQjxERUJfPkk8ZmxhZz5CPF9NQUlOVF9BUFBFTkQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE1NAorbXNnaWQgIiIKKyJUaGlzIHZhcmlhYmxlIGNhbiBiZSB1c2VkIHRvIGFwcGVuZCBzdXBwbGVtZW50YXJ5IG9wdGlvbnMgdG8gdGhlIHZhbHVlICIKKyJyZXR1cm5lZCBmb3IgdGhlIGdpdmVuIEk8ZmxhZz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNTQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPERFQl8+STxmbGFnPkI8X1BSRVBFTkQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRRCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNTYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPERFQl8+STxmbGFnPkI8X01BSU5UX1BSRVBFTkQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE2MAorbXNnaWQgIiIKKyJUaGlzIHZhcmlhYmxlIGNhbiBiZSB1c2VkIHRvIHByZXBlbmQgc3VwcGxlbWVudGFyeSBvcHRpb25zIHRvIHRoZSB2YWx1ZSAiCisicmV0dXJuZWQgZm9yIHRoZSBnaXZlbiBJPGZsYWc+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTYwCisjLCBuby13cmFwCittc2dpZCAiQjxERUJfQlVJTERfTUFJTlRfT1BUSU9OUz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTY1Cittc2dpZCAiIgorIlRoaXMgdmFyaWFibGUgY2FuIGJlIHVzZWQgdG8gZGlzYWJsZS9lbmFibGUgdmFyaW91cyBoYXJkZW5pbmcgYnVpbGQgZmxhZ3MgIgorInRocm91Z2ggdGhlIEI8aGFyZGVuaW5nPiBvcHRpb24uIFNlZSB0aGUgQjxIQVJERU5JTkc+IHNlY3Rpb24gZm9yIGRldGFpbHMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNjYKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiV0FSTklORyIKK21zZ2lkICJIQVJERU5JTkciCittc2dzdHIgIkFURU7Dh8ODTyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTcxCittc2dpZCAiIgorIlNldmVyYWwgY29tcGlsZS10aW1lIG9wdGlvbnMgKGRldGFpbGVkIGJlbG93KSBjYW4gYmUgdXNlZCB0byBoZWxwIGhhcmRlbiBhICIKKyJyZXN1bHRpbmcgYmluYXJ5IGFnYWluc3QgbWVtb3J5IGNvcnJ1cHRpb24gYXR0YWNrcywgb3IgcHJvdmlkZSBhZGRpdGlvbmFsICIKKyJ3YXJuaW5nIG1lc3NhZ2VzIGR1cmluZyBjb21waWxhdGlvbi4gRXhjZXB0IGFzIG5vdGVkIGJlbG93LCB0aGVzZSBhcmUgIgorImVuYWJsZWQgYnkgZGVmYXVsdCBmb3IgYXJjaGl0ZWN0dXJlcyB0aGF0IHN1cHBvcnQgdGhlbS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTc3Cittc2dpZCAiIgorIkVhY2ggaGFyZGVuaW5nIGZlYXR1cmUgY2FuIGJlIGVuYWJsZWQgYW5kIGRpc2FibGVkIGluIHRoZSAiCisiQjxERUJfQlVJTERfTUFJTlRfT1BUSU9OUz4gZW52aXJvbm1lbnQgdmFyaWFibGUncyBCPGhhcmRlbmluZz4gdmFsdWUgd2l0aCAiCisidGhlIFwiK1wiIGFuZCBcIi1cIiBtb2RpZmllci4gRm9yIGV4YW1wbGUsIHRvIGVuYWJsZSB0aGUgXCJwaWVcIiBmZWF0dXJlIGFuZCAiCisiZGlzYWJsZSB0aGUgXCJmb3J0aWZ5XCIgZmVhdHVyZSB5b3UgY2FuIGRvIHRoaXMgaW4gQjxkZWJpYW4vcnVsZXM+OiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNzkKKyMsIG5vLXdyYXAKK21zZ2lkICIgIGV4cG9ydCBERUJfQlVJTERfTUFJTlRfT1BUSU9OUz1oYXJkZW5pbmc9K3BpZSwtZm9ydGlmeVxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE4MworbXNnaWQgIiIKKyJUaGUgc3BlY2lhbCBmZWF0dXJlIEI8YWxsPiBjYW4gYmUgdXNlZCB0byBlbmFibGUgb3IgZGlzYWJsZSBhbGwgaGFyZGVuaW5nICIKKyJmZWF0dXJlcyBhdCB0aGUgc2FtZSB0aW1lLiBUaHVzIGRpc2FibGluZyBldmVyeXRoaW5nIGFuZCBlbmFibGluZyBvbmx5ICIKKyJcImZvcm1hdFwiIGFuZCBcImZvcnRpZnlcIiBjYW4gYmUgYWNoaWV2ZWQgd2l0aDoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTg1CisjLCBuby13cmFwCittc2dpZCAiICBleHBvcnQgREVCX0JVSUxEX01BSU5UX09QVElPTlM9aGFyZGVuaW5nPS1hbGwsK2Zvcm1hdCwrZm9ydGlmeVxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxODYKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxmb3JtYXQ+IgorbXNnc3RyICJCPC0tYWJvcnQtYWZ0ZXI9Pkk8bsO6bWVybz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE5OAorbXNnaWQgIiIKKyJUaGlzIHNldHRpbmcgKGVuYWJsZWQgYnkgZGVmYXVsdCkgYWRkcyBCPC1XZm9ybWF0IC1XZm9ybWF0LXNlY3VyaXR5IC0iCisiV2Vycm9yPWZvcm1hdC1zZWN1cml0eT4gdG8gQjxDRkxBR1M+IGFuZCBCPENYWEZMQUdTPi4gVGhpcyB3aWxsIHdhcm4gYWJvdXQgIgorImltcHJvcGVyIGZvcm1hdCBzdHJpbmcgdXNlcywgYW5kIHdpbGwgZmFpbCB3aGVuIGZvcm1hdCBmdW5jdGlvbnMgYXJlIHVzZWQgaW4gIgorImEgd2F5IHRoYXQgdGhhdCByZXByZXNlbnQgcG9zc2libGUgc2VjdXJpdHkgcHJvYmxlbXMuIEF0IHByZXNlbnQsIHRoaXMgd2FybnMgIgorImFib3V0IGNhbGxzIHRvIEI8cHJpbnRmPiBhbmQgQjxzY2FuZj4gZnVuY3Rpb25zIHdoZXJlIHRoZSBmb3JtYXQgc3RyaW5nIGlzICIKKyJub3QgYSBzdHJpbmcgbGl0ZXJhbCBhbmQgdGhlcmUgYXJlIG5vIGZvcm1hdCBhcmd1bWVudHMsIGFzIGluIEI8cHJpbnRmKGZvbyk7IgorIj4gaW5zdGVhZCBvZiBCPHByaW50ZihcIiVzXCIsIGZvbyk7PiBUaGlzIG1heSBiZSBhIHNlY3VyaXR5IGhvbGUgaWYgdGhlICIKKyJmb3JtYXQgc3RyaW5nIGNhbWUgZnJvbSB1bnRydXN0ZWQgaW5wdXQgYW5kIGNvbnRhaW5zIFwiJW5cIi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE5OQorIywgbm8td3JhcAorbXNnaWQgIkI8Zm9ydGlmeT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjEwCittc2dpZCAiIgorIlRoaXMgc2V0dGluZyAoZW5hYmxlZCBieSBkZWZhdWx0KSBhZGRzIEI8LURfRk9SVElGWV9TT1VSQ0U9Mj4gdG8gQjxDRkxBR1M+ICIKKyJhbmQgQjxDWFhGTEFHUz4uIER1cmluZyBjb2RlIGdlbmVyYXRpb24gdGhlIGNvbXBpbGVyIGtub3dzIGEgZ3JlYXQgZGVhbCBvZiAiCisiaW5mb3JtYXRpb24gYWJvdXQgYnVmZmVyIHNpemVzICh3aGVyZSBwb3NzaWJsZSksIGFuZCBhdHRlbXB0cyB0byByZXBsYWNlICIKKyJpbnNlY3VyZSB1bmxpbWl0ZWQgbGVuZ3RoIGJ1ZmZlciBmdW5jdGlvbiBjYWxscyB3aXRoIGxlbmd0aC1saW1pdGVkIG9uZXMuICIKKyJUaGlzIGlzIGVzcGVjaWFsbHkgdXNlZnVsIGZvciBvbGQsIGNydWZ0eSBjb2RlLiAgQWRkaXRpb25hbGx5LCBmb3JtYXQgIgorInN0cmluZ3MgaW4gd3JpdGFibGUgbWVtb3J5IHRoYXQgY29udGFpbiAnJW4nIGFyZSBibG9ja2VkLiBJZiBhbiBhcHBsaWNhdGlvbiAiCisiZGVwZW5kcyBvbiBzdWNoIGEgZm9ybWF0IHN0cmluZywgaXQgd2lsbCBuZWVkIHRvIGJlIHdvcmtlZCBhcm91bmQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjIxMworbXNnaWQgIiIKKyJOb3RlIHRoYXQgZm9yIHRoaXMgb3B0aW9uIHRvIGhhdmUgYW55IGVmZmVjdCwgdGhlIHNvdXJjZSBtdXN0IGFsc28gYmUgIgorImNvbXBpbGVkIHdpdGggQjwtTzE+IG9yIGhpZ2hlci4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjIxMworIywgbm8td3JhcAorbXNnaWQgIkI8c3RhY2twcm90ZWN0b3I+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjIyMgorbXNnaWQgIiIKKyJUaGlzIHNldHRpbmcgKGVuYWJsZWQgYnkgZGVmYXVsdCkgYWRkcyBCPC1mc3RhY2stcHJvdGVjdG9yIC0tcGFyYW09c3NwLSIKKyJidWZmZXItc2l6ZT00PiB0byBCPENGTEFHUz4gYW5kIEI8Q1hYRkxBR1M+LiBUaGlzIGFkZHMgc2FmZXR5IGNoZWNrcyBhZ2FpbnN0ICIKKyJzdGFjayBvdmVyd3JpdGVzLiBUaGlzIHJlbmRlcnMgbWFueSBwb3RlbnRpYWwgY29kZSBpbmplY3Rpb24gYXR0YWNrcyBpbnRvICIKKyJhYm9ydGluZyBzaXR1YXRpb25zLiBJbiB0aGUgYmVzdCBjYXNlIHRoaXMgdHVybnMgY29kZSBpbmplY3Rpb24gIgorInZ1bG5lcmFiaWxpdGllcyBpbnRvIGRlbmlhbCBvZiBzZXJ2aWNlIG9yIGludG8gbm9uLWlzc3VlcyAoZGVwZW5kaW5nIG9uIHRoZSAiCisiYXBwbGljYXRpb24pLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyMjYKK21zZ2lkICIiCisiVGhpcyBmZWF0dXJlIHJlcXVpcmVzIGxpbmtpbmcgYWdhaW5zdCBnbGliYyAob3IgYW5vdGhlciBwcm92aWRlciBvZiAiCisiQjxfX3N0YWNrX2Noa19mYWlsPiksIHNvIG5lZWRzIHRvIGJlIGRpc2FibGVkIHdoZW4gYnVpbGRpbmcgd2l0aCBCPC0iCisibm9zdGRsaWI+IG9yIEI8LWZmcmVlc3RhbmRpbmc+IG9yIHNpbWlsYXIuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyMjcKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxwdXJnZT4iCittc2dpZCAiQjxyZWxybz4iCittc2dzdHIgIkI8cHVyZ2U+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyMzUKK21zZ2lkICIiCisiVGhpcyBzZXR0aW5nIChlbmFibGVkIGJ5IGRlZmF1bHQpIGFkZHMgQjwtV2wsLXoscmVscm8+IHRvIEI8TERGTEFHUz4uICAiCisiRHVyaW5nIHByb2dyYW0gbG9hZCwgc2V2ZXJhbCBFTEYgbWVtb3J5IHNlY3Rpb25zIG5lZWQgdG8gYmUgd3JpdHRlbiB0byBieSAiCisidGhlIGxpbmtlci4gVGhpcyBmbGFncyB0aGUgbG9hZGVyIHRvIHR1cm4gdGhlc2Ugc2VjdGlvbnMgcmVhZC1vbmx5IGJlZm9yZSAiCisidHVybmluZyBvdmVyIGNvbnRyb2wgdG8gdGhlIHByb2dyYW0uIE1vc3Qgbm90YWJseSB0aGlzIHByZXZlbnRzIEdPVCAiCisib3ZlcndyaXRlIGF0dGFja3MuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyMzYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGJpbmRub3c+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjI0MworbXNnaWQgIiIKKyJUaGlzIHNldHRpbmcgKGRpc2FibGVkIGJ5IGRlZmF1bHQpIGFkZHMgQjwtV2wsLXosbm93PiB0byBCPExERkxBR1M+LiBEdXJpbmcgIgorInByb2dyYW0gbG9hZCwgYWxsIGR5bmFtaWMgc3ltYm9scyBhcmUgcmVzb2x2ZWQsIGFsbG93aW5nIGZvciB0aGUgZW50aXJlIFBMVCAiCisidG8gYmUgbWFya2VkIHJlYWQtb25seSAoZHVlIHRvIEI8cmVscm8+IGFib3ZlKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjI0NAorIywgbm8td3JhcAorbXNnaWQgIkI8cGllPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyNTYKK21zZ2lkICIiCisiVGhpcyBzZXR0aW5nIChkaXNhYmxlZCBieSBkZWZhdWx0KSBhZGRzIEI8LWZQSUU+IHRvIEI8Q0ZMQUdTPiBhbmQgIgorIkI8Q1hYRkxBR1M+LCBhbmQgQjwtZlBJRSAtcGllPiB0byBCPExERkxBR1M+LiBQb3NpdGlvbiBJbmRlcGVuZGVudCAiCisiRXhlY3V0YWJsZSBhcmUgbmVlZGVkIHRvIHRha2UgYWR2YW50YWdlIG9mIEFkZHJlc3MgU3BhY2UgTGF5b3V0ICIKKyJSYW5kb21pemF0aW9uLCBzdXBwb3J0ZWQgYnkgc29tZSBrZXJuZWwgdmVyc2lvbnMuIFdoaWxlIEFTTFIgY2FuIGFscmVhZHkgYmUgIgorImVuZm9yY2VkIGZvciBkYXRhIGFyZWFzIGluIHRoZSBzdGFjayBhbmQgaGVhcCAoYnJrIGFuZCBtbWFwKSwgdGhlIGNvZGUgYXJlYXMgIgorIm11c3QgYmUgY29tcGlsZWQgYXMgcG9zaXRpb24taW5kZXBlbmRlbnQuIFNoYXJlZCBsaWJyYXJpZXMgYWxyZWFkeSBkbyB0aGlzICgtIgorImZQSUMpLCBzbyB0aGV5IGdhaW4gQVNMUiBhdXRvbWF0aWNhbGx5LCBidXQgYmluYXJ5IC50ZXh0IHJlZ2lvbnMgbmVlZCB0byBiZSAiCisiYnVpbGQgUElFIHRvIGdhaW4gQVNMUi4gV2hlbiB0aGlzIGhhcHBlbnMsIFJPUCAoUmV0dXJuIE9yaWVudGVkIFByb2dyYW1taW5nKSAiCisiYXR0YWNrcyBhcmUgbXVjaCBoYXJkZXIgc2luY2UgdGhlcmUgYXJlIG5vIHN0YXRpYyBsb2NhdGlvbnMgdG8gYm91bmNlIG9mZiBvZiAiCisiZHVyaW5nIGEgbWVtb3J5IGNvcnJ1cHRpb24gYXR0YWNrLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyNTkKK21zZ2lkICIiCisiVGhpcyBpcyBub3QgY29tcGF0aWJsZSB3aXRoIEI8LWZQSUM+IHNvIGNhcmUgbXVzdCBiZSB0YWtlbiB3aGVuIGJ1aWxkaW5nICIKKyJzaGFyZWQgb2JqZWN0cy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjY1Cittc2dpZCAiIgorIkFkZGl0aW9uYWxseSwgc2luY2UgUElFIGlzIGltcGxlbWVudGVkIHZpYSBhIGdlbmVyYWwgcmVnaXN0ZXIsIHNvbWUgIgorImFyY2hpdGVjdHVyZXMgKG1vc3Qgbm90YWJseSBpMzg2KSBjYW4gc2VlIHBlcmZvcm1hbmNlIGxvc3NlcyBvZiB1cCB0byAxNSUgaW4gIgorInZlcnkgdGV4dC1zZWdtZW50LWhlYXZ5IGFwcGxpY2F0aW9uIHdvcmtsb2FkczsgbW9zdCB3b3JrbG9hZHMgc2VlIGxlc3MgdGhhbiAiCisiMSUuIEFyY2hpdGVjdHVyZXMgd2l0aCBtb3JlIGdlbmVyYWwgcmVnaXN0ZXJzIChlLmcuIGFtZDY0KSAgZG8gbm90IHNlZSBhcyAiCisiaGlnaCBhIHdvcnN0LWNhc2UgcGVuYWx0eS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjY4Cittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMTAtMjAxMSBSYXBoYVxcWzplXWwgSGVydHpvZyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyNzAKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAxMSBLZWVzIENvb2siCittc2dzdHIgIiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJkcGtnLWJ1aWxkcGFja2FnZSIKK21zZ3N0ciAiQjxkcGtnPiBbSTxvcMOnw7Vlcz5dIEk8YcOnw6NvPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo0Cittc2dpZCAiZHBrZy1idWlsZHBhY2thZ2UgLSBidWlsZCBiaW5hcnkgb3Igc291cmNlIHBhY2thZ2VzIGZyb20gc291cmNlcyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjgKKyMsIGZ1enp5Cittc2dpZCAiQjxkcGtnLWJ1aWxkcGFja2FnZT4gW0k8b3B0aW9uPi4uLl0iCittc2dzdHIgIkI8ZHBrZz4gW0k8b3DDp8O1ZXM+XSBJPGHDp8Ojbz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTMKK21zZ2lkICIiCisiQjxkcGtnLWJ1aWxkcGFja2FnZT4gaXMgYSBwcm9ncmFtIHRoYXQgYXV0b21hdGVzIHRoZSBwcm9jZXNzIG9mIGJ1aWxkaW5nIGEgIgorIkRlYmlhbiBwYWNrYWdlLiBJdCBjb25zaXN0cyBvZiB0aGUgZm9sbG93aW5nIHN0ZXBzOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxMworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPDEuPiIKK21zZ3N0ciAiQjwtRz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTcKK21zZ2lkICIiCisiSXQgcHJlcGFyZXMgdGhlIGJ1aWxkIGVudmlyb25tZW50IGJ5IHNldHRpbmcgdmFyaW91cyBlbnZpcm9ubWVudCB2YXJpYWJsZXMgIgorIihzZWUgQjxFTlZJUk9OTUVOVD4pIGFuZCBjYWxscyBCPGRwa2ctc291cmNlIC0tYmVmb3JlLWJ1aWxkPiAodW5sZXNzIEI8LVQ+ICIKKyJvciBCPC0tdGFyZ2V0PiBoYXMgYmVlbiB1c2VkKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTcKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwyLj4iCittc2dzdHIgIkI8LUc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIwCittc2dpZCAiIgorIkl0IGNoZWNrcyB0aGF0IHRoZSBidWlsZC1kZXBlbmRlbmNpZXMgYW5kIGJ1aWxkLWNvbmZsaWN0cyBhcmUgc2F0aXNmaWVkICIKKyIodW5sZXNzIEI8LWQ+IGlzIHNwZWNpZmllZCkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIwCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8My4+IgorbXNnc3RyICJCPC1HPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyNQorbXNnaWQgIiIKKyJJZiBhIHNwZWNpZmljIHRhcmdldCBoYXMgYmVlbiBzZWxlY3RlZCB3aXRoIHRoZSBCPC1UPiBvciBCPC0tdGFyZ2V0PiBvcHRpb24sICIKKyJpdCBjYWxscyB0aGF0IHRhcmdldCBhbmQgc3RvcHMgaGVyZS4gT3RoZXJ3aXNlIGl0IGNhbGxzIEI8ZmFrZXJvb3QgZGViaWFuLyIKKyJydWxlcyBjbGVhbj4gdG8gY2xlYW4gdGhlIGJ1aWxkLXRyZWUgKHVubGVzcyBCPC1uYz4gaXMgc3BlY2lmaWVkKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjUKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjw0Lj4iCittc2dzdHIgIkI8LUc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjI5Cittc2dpZCAiIgorIkl0IGNhbGxzIEI8ZHBrZy1zb3VyY2UgLWI+IHRvIGdlbmVyYXRlIHRoZSBzb3VyY2UgcGFja2FnZSAodW5sZXNzIGEgYmluYXJ5LSIKKyJvbmx5IGJ1aWxkIGhhcyBiZWVuIHJlcXVlc3RlZCB3aXRoIEI8LWI+LCBCPC1CPiBvciBCPC1BPikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjI5CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8NS4+IgorbXNnc3RyICJCPC1HPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTozNgorbXNnaWQgIiIKKyJJdCBjYWxscyBCPGRlYmlhbi9ydWxlcz4gQjxidWlsZD4gZm9sbG93ZWQgYnkgQjxmYWtlcm9vdCBkZWJpYW4vcnVsZXM+ICIKKyJJPGJpbmFyeS10YXJnZXQ+ICh1bmxlc3MgYSBzb3VyY2Utb25seSBidWlsZCBoYXMgYmVlbiByZXF1ZXN0ZWQgd2l0aCBCPC1TPikuICIKKyJOb3RlIHRoYXQgSTxiaW5hcnktdGFyZ2V0PiBpcyBlaXRoZXIgQjxiaW5hcnk+IChkZWZhdWx0IGNhc2UsIG9yIGlmIEI8LWI+IGlzICIKKyJzcGVjaWZpZWQpICBvciBCPGJpbmFyeS1hcmNoPiAoaWYgQjwtQj4gaXMgc3BlY2lmaWVkKSBvciBCPGJpbmFyeS1pbmRlcD4gKGlmICIKKyJCPC1BPiBpcyBzcGVjaWZpZWQpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTozNgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPDYuPiIKK21zZ3N0ciAiQjwtRz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MzkKK21zZ2lkICIiCisiSXQgY2FsbHMgQjxncGc+IHRvIHNpZ24gdGhlIEI8LmRzYz4gZmlsZSAoaWYgYW55LCB1bmxlc3MgQjwtdXM+IGlzICIKKyJzcGVjaWZpZWQpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTozOQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPDcuPiIKK21zZ3N0ciAiQjwtRz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NDMKK21zZ2lkICIiCisiSXQgY2FsbHMgQjxkcGtnLWdlbmNoYW5nZXM+IHRvIGdlbmVyYXRlIGEgQjwuY2hhbmdlcz4gZmlsZS4gIE1hbnkgQjxkcGtnLSIKKyJidWlsZHBhY2thZ2U+IG9wdGlvbnMgYXJlIGZvcndhcmRlZCB0byBCPGRwa2ctZ2VuY2hhbmdlcz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjQzCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8OC4+IgorbXNnc3RyICJCPC1HPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo0NgorbXNnaWQgIiIKKyJJdCBjYWxscyBCPGdwZz4gdG8gc2lnbiB0aGUgQjwuY2hhbmdlcz4gZmlsZSAodW5sZXNzIEI8LXVjPiBpcyBzcGVjaWZpZWQpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo0NgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPDkuPiIKK21zZ3N0ciAiQjwtRz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NDkKK21zZ2lkICIiCisiSWYgQjwtdGM+IGlzIHNwZWNpZmllZCwgaXQgd2lsbCBjYWxsIEI8ZmFrZXJvb3QgZGViaWFuL3J1bGVzIGNsZWFuPiBhZ2Fpbi4gIgorIkZpbmFsbHkgaXQgY2FsbHMgQjxkcGtnLXNvdXJjZSAtLWFmdGVyLWJ1aWxkPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NTEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtYj4iCittc2dzdHIgIkI8LUc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjU1Cittc2dpZCAiIgorIlNwZWNpZmllcyBhIGJpbmFyeS1vbmx5IGJ1aWxkLCBubyBzb3VyY2UgZmlsZXMgYXJlIHRvIGJlIGJ1aWx0IGFuZC9vciAiCisiZGlzdHJpYnV0ZWQuIFBhc3NlZCB0byBCPGRwa2ctZ2VuY2hhbmdlcz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjU1IGRwa2ctY2hlY2tidWlsZGRlcHMuMToyMworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1CPiIKK21zZ3N0ciAiQjwtRz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NTkKK21zZ2lkICIiCisiU3BlY2lmaWVzIGEgYmluYXJ5LW9ubHkgYnVpbGQsIGxpbWl0ZWQgdG8gYXJjaGl0ZWN0dXJlIGRlcGVuZGVudCBwYWNrYWdlcy4gICIKKyJQYXNzZWQgdG8gQjxkcGtnLWdlbmNoYW5nZXM+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo1OQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1BPiIKK21zZ3N0ciAiQjwtRz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NjMKK21zZ2lkICIiCisiU3BlY2lmaWVzIGEgYmluYXJ5LW9ubHkgYnVpbGQsIGxpbWl0ZWQgdG8gYXJjaGl0ZWN0dXJlIGluZGVwZW5kZW50IHBhY2thZ2VzLiAiCisiUGFzc2VkIHRvIEI8ZHBrZy1nZW5jaGFuZ2VzPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NjMgZHBrZy1nZW5jaGFuZ2VzLjE6MjcKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtUz4iCittc2dzdHIgIkI8LUc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjY3Cittc2dpZCAiIgorIlNwZWNpZmllcyBhIHNvdXJjZS1vbmx5IGJ1aWxkLCBubyBiaW5hcnkgcGFja2FnZXMgbmVlZCB0byBiZSBtYWRlLiAgUGFzc2VkICIKKyJ0byBCPGRwa2ctZ2VuY2hhbmdlcz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjY3CisjLCBuby13cmFwCittc2dpZCAiQjwtRj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo3MQorbXNnaWQgIiIKKyJTcGVjaWZpZXMgYSBub3JtYWwgZnVsbCBidWlsZCwgYmluYXJ5IGFuZCBzb3VyY2UgcGFja2FnZXMgd2lsbCBiZSBidWlsdC4gICIKKyJUaGlzIGlzIHRoZSBzYW1lIGFzIHRoZSBkZWZhdWx0IGNhc2Ugd2hlbiBubyBidWlsZCBvcHRpb24gaXMgc3BlY2lmaWVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjczCisjLCBmdXp6eQorbXNnaWQgIkI8LS10YXJnZXQ9Pkk8dGFyZ2V0PiIKK21zZ3N0ciAiQjwtLWFib3J0LWFmdGVyPT5JPG7Dum1lcm8+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjc1CisjLCBmdXp6eQorbXNnaWQgIkI8LS10YXJnZXQgPkk8dGFyZ2V0PiIKK21zZ3N0ciAiQjwtLWFib3J0LWFmdGVyPT5JPG7Dum1lcm8+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjc3CisjLCBmdXp6eQorbXNnaWQgIkI8LVQ+STx0YXJnZXQ+IgorbXNnc3RyICJCPHVucGFja2VkPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo4MworbXNnaWQgIiIKKyJDYWxscyBCPGRlYmlhbi9ydWxlcz4gSTx0YXJnZXQ+IGFmdGVyIGhhdmluZyBzZXR1cCB0aGUgYnVpbGQgZW52aXJvbm1lbnQgYW5kICIKKyJzdG9wcyB0aGUgcGFja2FnZSBidWlsZCBwcm9jZXNzIGhlcmUuIElmIEI8LS1hcy1yb290PiBpcyBhbHNvIGdpdmVuLCB0aGVuICIKKyJ0aGUgY29tbWFuZCBpcyBleGVjdXRlZCBhcyByb290IChzZWUgQjwtcj4pLiBOb3RlIHRoYXQgb2ZmaWNpYWwgdGFyZ2V0cyB0aGF0ICIKKyJhcmUgcmVxdWlyZWQgdG8gYmUgcnVuIGFzIHJvb3QgYnkgdGhlIERlYmlhbiBwb2xpY3kgZG8gbm90IG5lZWQgdGhpcyBvcHRpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjg0CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1hcy1yb290PiIKK21zZ3N0ciAiQjwtLXRlc3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjg4Cittc2dpZCAiIgorIk9ubHkgbWVhbmluZ2Z1bCB0b2dldGhlciB3aXRoIEI8LS10YXJnZXQ+LiBSZXF1aXJlcyB0aGF0IHRoZSB0YXJnZXQgYmUgcnVuICIKKyJ3aXRoIHJvb3QgcmlnaHRzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo5MCBkcGtnLWdlbmNoYW5nZXMuMTozNgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1zaT4iCittc2dzdHIgIkI8LUc+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo5MiBkcGtnLWdlbmNoYW5nZXMuMTo0MgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1zYT4iCittc2dzdHIgIkI8LUc+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo5NCBkcGtnLWdlbmNoYW5nZXMuMTo0NQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1zZD4iCittc2dzdHIgIkI8LUc+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo5NiBkcGtnLWdlbmNoYW5nZXMuMTo0OSBkcGtnLWdlbmNvbnRyb2wuMTozOAorIzogZHBrZy1nZW5zeW1ib2xzLjE6Mzc3CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LXY+STx2ZXJzaW9uPiIKK21zZ3N0ciAiQjwtLXZlcnNpb24+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo5OCBkcGtnLWdlbmNoYW5nZXMuMTo1NAorIywgbm8td3JhcAorbXNnaWQgIkI8LUM+STxjaGFuZ2VzZGVzY3JpcHRpb24+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEwMCBkcGtnLWdlbmNoYW5nZXMuMTo2MAorIywgbm8td3JhcAorbXNnaWQgIkI8LW0+STxtYWludGFpbmVyYWRkcmVzcz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTAyIGRwa2ctZ2VuY2hhbmdlcy4xOjY2CisjLCBuby13cmFwCittc2dpZCAiQjwtZT5JPG1haW50YWluZXJhZGRyZXNzPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEwNAorbXNnaWQgIlBhc3NlZCB1bmNoYW5nZWQgdG8gQjxkcGtnLWdlbmNoYW5nZXM+LiBTZWUgaXRzIG1hbnVhbCBwYWdlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxMDUKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtYT5JPGFyY2hpdGVjdHVyZT4iCittc2dzdHIgIkI8ZHBrZyAtLXByaW50LWFyY2hpdGVjdHVyZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTEwCittc2dpZCAiIgorIlNwZWNpZnkgdGhlIERlYmlhbiBhcmNoaXRlY3R1cmUgd2UgYnVpbGQgZm9yLiBUaGUgYXJjaGl0ZWN0dXJlIG9mIHRoZSAiCisibWFjaGluZSB3ZSBidWlsZCBvbiBpcyBkZXRlcm1pbmVkIGF1dG9tYXRpY2FsbHksIGFuZCBpcyBhbHNvIHRoZSBkZWZhdWx0IGZvciAiCisidGhlIGhvc3QgbWFjaGluZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxMTUKK21zZ2lkICIiCisiU3BlY2lmeSB0aGUgR05VIHN5c3RlbSB0eXBlIHdlIGJ1aWxkIGZvci4gSXQgY2FuIGJlIHVzZWQgaW4gcGxhY2Ugb2YgLWEgb3IgIgorImFzIGEgY29tcGxlbWVudCB0byBvdmVycmlkZSB0aGUgZGVmYXVsdCBHTlUgc3lzdGVtIHR5cGUgb2YgdGhlIHRhcmdldCBEZWJpYW4gIgorImFyY2hpdGVjdHVyZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTE1CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LWo+STxqb2JzPiIKK21zZ3N0ciAiQjwtLWxvZz0+STxmaWxlbmFtZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTI2Cittc2dpZCAiIgorIk51bWJlciBvZiBqb2JzIGFsbG93ZWQgdG8gYmUgcnVuIHNpbXVsdGFuZW91c2x5LCBlcXVpdmFsZW50IHRvIHRoZSBCPG1ha2U+IgorIigxKSAgb3B0aW9uIG9mIHRoZSBzYW1lIG5hbWUuIFdpbGwgYWRkIGl0c2VsZiB0byB0aGUgTUFLRUZMQUdTIGVudmlyb25tZW50ICIKKyJ2YXJpYWJsZSwgd2hpY2ggc2hvdWxkIGNhdXNlIGFsbCBzdWJzZXF1ZW50IG1ha2UgaW52b2NhdGlvbnMgdG8gaW5oZXJpdCB0aGUgIgorIm9wdGlvbi4gQWxzbyBhZGRzIEI8cGFyYWxsZWw9Pkk8am9icz4gdG8gdGhlIERFQl9CVUlMRF9PUFRJT05TIGVudmlyb25tZW50ICIKKyJ2YXJpYWJsZSB3aGljaCBhbGxvd3MgZGViaWFuL3J1bGVzIGZpbGVzIHRvIHVzZSB0aGlzIGluZm9ybWF0aW9uIGZvciB0aGVpciAiCisib3duIHB1cnBvc2VzLiAgVGhlIEI8cGFyYWxsZWw9Pkk8am9icz4gaW4gREVCX0JVSUxEX09QVElPTlMgZW52aXJvbm1lbnQgIgorInZhcmlhYmxlIHdpbGwgb3ZlcnJpZGUgdGhlIEI8LWo+IHZhbHVlIGlmIHRoaXMgb3B0aW9uIGlzIGdpdmVuLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxMjYKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtRD4iCittc2dzdHIgIkI8LUc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEzMAorbXNnaWQgIiIKKyJDaGVjayBidWlsZCBkZXBlbmRlbmNpZXMgYW5kIGNvbmZsaWN0czsgYWJvcnQgaWYgdW5zYXRpc2ZpZWQuIFRoaXMgaXMgdGhlICIKKyJkZWZhdWx0IGJlaGF2aW9yLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxMzAgZHBrZy1nZW5zeW1ib2xzLjE6NDMyCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LWQ+IgorbXNnc3RyICJCPC1HPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxMzMKK21zZ2lkICJEbyBub3QgY2hlY2sgYnVpbGQgZGVwZW5kZW5jaWVzIGFuZCBjb25mbGljdHMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEzMworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1uYz4iCittc2dzdHIgIkI8LUc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEzNworbXNnaWQgIiIKKyJEbyBub3QgY2xlYW4gdGhlIHNvdXJjZSB0cmVlIChpbXBsaWVzIEI8LWI+IGlmIG5vdGhpbmcgZWxzZSBoYXMgYmVlbiAiCisic2VsZWN0ZWQgYW1vbmcgQjwtQj4sIEI8LUE+IG9yIEI8LVM+KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTM3CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LXRjPiIKK21zZ3N0ciAiQjwtRz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTQzCittc2dpZCAiIgorIkNsZWFuIHRoZSBzb3VyY2UgdHJlZSAodXNpbmcgSTxnYWluLXJvb3QtY29tbWFuZD4gQjxkZWJpYW4vcnVsZXMgY2xlYW4+KSAgIgorImFmdGVyIHRoZSBwYWNrYWdlIGhhcyBiZWVuIGJ1aWx0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxNDMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1yPkk8Z2Fpbi1yb290LWNvbW1hbmQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTY3Cittc2dpZCAiIgorIldoZW4gQjxkcGtnLWJ1aWxkcGFja2FnZT4gbmVlZHMgdG8gZXhlY3V0ZSBwYXJ0IG9mIHRoZSBidWlsZCBwcm9jZXNzIGFzICIKKyJyb290LCBpdCBwcmVmaXhlcyB0aGUgY29tbWFuZCBpdCBleGVjdXRlcyB3aXRoIEk8Z2Fpbi1yb290LWNvbW1hbmQ+IGlmIG9uZSAiCisiaGFzIGJlZW4gc3BlY2lmaWVkLiBPdGhlcndpc2UsIGlmIG5vbmUgaGFzIGJlZW4gc3BlY2lmaWVkLCBCPGZha2Vyb290PiB3aWxsICIKKyJiZSB1c2VkIGJ5IGRlZmF1bHQsIGlmIHRoZSBjb21tYW5kIGlzIHByZXNlbnQuICBJPGdhaW4tcm9vdC1jb21tYW5kPiBzaG91bGQgIgorInN0YXJ0IHdpdGggdGhlIG5hbWUgb2YgYSBwcm9ncmFtIG9uIHRoZSBCPFBBVEg+IGFuZCB3aWxsIGdldCBhcyBhcmd1bWVudHMgIgorInRoZSBuYW1lIG9mIHRoZSByZWFsIGNvbW1hbmQgdG8gcnVuIGFuZCB0aGUgYXJndW1lbnRzIGl0IHNob3VsZCB0YWtlLiAgIgorIkk8Z2Fpbi1yb290LWNvbW1hbmQ+IGNhbiBpbmNsdWRlIHBhcmFtZXRlcnMgKHRoZXkgbXVzdCBiZSBzcGFjZS1zZXBhcmF0ZWQpICIKKyJidXQgbm8gc2hlbGwgbWV0YWNoYXJhY3RlcnMuICBJPGdhaW4tcm9vdC1jb21tYW5kPiBtaWdodCB0eXBpY2FsbHkgYmUgIgorIkI8ZmFrZXJvb3Q+LCBCPHN1ZG8+LCBCPHN1cGVyPiBvciBCPHJlYWxseT4uICBCPHN1PiBpcyBub3Qgc3VpdGFibGUsIHNpbmNlICIKKyJpdCBjYW4gb25seSBpbnZva2UgdGhlIHVzZXIncyBzaGVsbCB3aXRoIEI8LWM+IGluc3RlYWQgb2YgcGFzc2luZyBhcmd1bWVudHMgIgorImluZGl2aWR1YWxseSB0byB0aGUgY29tbWFuZCB0byBiZSBydW4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE2NworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1SPkk8cnVsZXMtZmlsZT4iCittc2dzdHIgIkk8Y29udHJvbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTc4Cittc2dpZCAiIgorIkJ1aWxkaW5nIGEgRGViaWFuIHBhY2thZ2UgdXN1YWxseSBpbnZvbHZlcyBpbnZva2luZyBCPGRlYmlhbi9ydWxlcz4gYXMgYSAiCisiY29tbWFuZCB3aXRoIHNldmVyYWwgc3RhbmRhcmQgcGFyYW1ldGVycy4gV2l0aCB0aGlzIG9wdGlvbiBpdCdzIHBvc3NpYmxlIHRvICIKKyJ1c2UgYW5vdGhlciBwcm9ncmFtIGludm9jYXRpb24gdG8gYnVpbGQgdGhlIHBhY2thZ2UgKGl0IGNhbiBpbmNsdWRlIHNwYWNlICIKKyJzZXBhcmF0ZWQgcGFyYW1ldGVycykuICBBbHRlcm5hdGl2ZWx5IGl0IGNhbiBiZSB1c2VkIHRvIGV4ZWN1dGUgdGhlIHN0YW5kYXJkICIKKyJydWxlcyBmaWxlIHdpdGggYW5vdGhlciBtYWtlIHByb2dyYW0gKGZvciBleGFtcGxlIGJ5IHVzaW5nIEI8L3Vzci9sb2NhbC9iaW4vIgorIm1ha2UgLWYgZGViaWFuL3J1bGVzPiBhcyBJPHJ1bGVzLWZpbGU+KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTc4CisjLCBuby13cmFwCittc2dpZCAiQjwtcD5JPHNpZ24tY29tbWFuZD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxODgKK21zZ2lkICIiCisiV2hlbiBCPGRwa2ctYnVpbGRwYWNrYWdlPiBuZWVkcyB0byBleGVjdXRlIEdQRyBvciBQR1AgdG8gc2lnbiBhIHNvdXJjZSAiCisiY29udHJvbCAoQjwuZHNjPikgZmlsZSBvciBhIEI8LmNoYW5nZXM+IGZpbGUgaXQgd2lsbCBydW4gSTxzaWduLWNvbW1hbmQ+ICIKKyIoc2VhcmNoaW5nIHRoZSBCPFBBVEg+IGlmIG5lY2Vzc2FyeSkgaW5zdGVhZCBvZiBCPGdwZz4uIEk8c2lnbi1jb21tYW5kPiB3aWxsICIKKyJnZXQgYWxsIHRoZSBhcmd1bWVudHMgdGhhdCBCPHBncD4gd291bGQgaGF2ZSBnb3R0ZW4uIElmIEk8c2lnbi1jb21tYW5kPiAiCisidGFrZXMgaXRzIGFyZ3VtZW50cyBpbiBHUEcgcmF0aGVyIHRoYW4gUEdQIHN0eWxlLCB5b3Ugc2hvdWxkIGdpdmUgdGhlIEI8LSIKKyJzZ3BnPiBvcHRpb24uIEk8c2lnbi1jb21tYW5kPiBzaG91bGQgbm90IGNvbnRhaW4gc3BhY2VzIG9yIGFueSBvdGhlciBzaGVsbCAiCisibWV0YWNoYXJhY3RlcnMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE4OAorIywgbm8td3JhcAorbXNnaWQgIkI8LWs+STxrZXktaWQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTkxCittc2dpZCAiU3BlY2lmeSBhIGtleS1JRCB0byB1c2Ugd2hlbiBzaWduaW5nIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxOTEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtdXM+IgorbXNnc3RyICJCPC1HPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxOTQKK21zZ2lkICJEbyBub3Qgc2lnbiB0aGUgc291cmNlIHBhY2thZ2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE5NAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC11Yz4iCittc2dzdHIgIkI8LUc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE5NworbXNnaWQgIkRvIG5vdCBzaWduIHRoZSBCPC5jaGFuZ2VzPiBmaWxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE5OQorbXNnaWQgIkI8LWk+W0k8cmVnZXhwPl0iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMDEKKyMsIGZ1enp5Cittc2dpZCAiQjwtST5JPFtwYXR0ZXJuXT4iCittc2dzdHIgIkI8LS1zdGF0dXMtZmQgPkk8RTxsdD5uRTxndD4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIwMworbXNnaWQgIkI8LXM+W0I8bnNBa3VyS1VSPl0iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMDUKKyMsIGZ1enp5Cittc2dpZCAiQjwtej4sIEI8LVo+IgorbXNnc3RyICJCPC0tbmV3PiB8IEI8LS1vbGQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIwOAorbXNnaWQgIlBhc3NlZCB1bmNoYW5nZWQgdG8gQjxkcGtnLXNvdXJjZT4uIFNlZSBpdHMgbWFudWFsIHBhZ2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIwOQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tc291cmNlLW9wdGlvbj0+STxvcHQ+IgorbXNnc3RyICJCPGRwa2c+IFtJPG9ww6fDtWVzPl0gSTxhw6fDo28+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIxMgorbXNnaWQgIlBhc3Mgb3B0aW9uIEk8b3B0PiB0byBCPGRwa2ctc291cmNlPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjEyCisjLCBuby13cmFwCittc2dpZCAiQjwtLWNoYW5nZXMtb3B0aW9uPT5JPG9wdD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMTUKK21zZ2lkICJQYXNzIG9wdGlvbiBJPG9wdD4gdG8gQjxkcGtnLWdlbmNoYW5nZXM+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIxOQorIywgZnV6enkKK21zZ2lkICJCPC0tYWRtaW5kaXIgPkk8ZGlyPiIKK21zZ3N0ciAiQjwtLWFkbWluZGlyPiBJPGRpcmV0w7NyaW8+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIyMiBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6MjMgZHBrZy1xdWVyeS4xOjEyMgorIzogZHBrZy1zaGxpYmRlcHMuMToyMTUgZHBrZy10cmlnZ2VyLjE6NDMKK21zZ2lkICIiCisiQ2hhbmdlIHRoZSBsb2NhdGlvbiBvZiB0aGUgQjxkcGtnPiBkYXRhYmFzZS4gVGhlIGRlZmF1bHQgbG9jYXRpb24gaXMgSTwvdmFyLyIKKyJsaWIvZHBrZz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIyMyBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6MzMgZHBrZy1kaXN0YWRkZmlsZS4xOjMyCisjOiBkcGtnLWRlYi4xOjE3MiBkcGtnLWdlbmNoYW5nZXMuMToxMzEgZHBrZy1nZW5jb250cm9sLjE6MTIxCisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0NDMgZHBrZy1uYW1lLjE6NTggZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjMzCisjOiBkcGtnLXF1ZXJ5LjE6MTEwIGRwa2ctc2NhbnBhY2thZ2VzLjE6OTYgZHBrZy1zaGxpYmRlcHMuMToyMTUKKyM6IGRwa2ctc291cmNlLjE6OTYgZHBrZy1zcGxpdC4xOjEyNiBkcGtnLXRyaWdnZXIuMTozMQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1oPiwgQjwtLWhlbHA+IgorbXNnc3RyICJCPC0taGVscD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjM0Cittc2dpZCAiIgorIkV2ZW4gaWYgQjxkcGtnLWJ1aWxkcGFja2FnZT4gZXhwb3J0cyBzb21lIHZhcmlhYmxlcywgQjxkZWJpYW4vcnVsZXM+IHNob3VsZCAiCisibm90IHJlbHkgb24gdGhlaXIgcHJlc2VuY2UgYW5kIHNob3VsZCBpbnN0ZWFkIHVzZSB0aGUgcmVzcGVjdGl2ZSBpbnRlcmZhY2UgIgorInRvIHJldHJpZXZlIHRoZSBuZWVkZWQgdmFsdWVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMzQKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiVmFyaWFibGVzIHNldCBieSBkcGtnLWFyY2hpdGVjdHVyZSIKK21zZ3N0ciAiQjxkcGtnIC0tcHJpbnQtYXJjaGl0ZWN0dXJlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMzgKK21zZ2lkICIiCisiQjxkcGtnLWFyY2hpdGVjdHVyZT4gaXMgY2FsbGVkIHdpdGggdGhlIEI8LWE+IGFuZCBCPC10PiBwYXJhbWV0ZXJzICIKKyJmb3J3YXJkZWQuIEFueSB2YXJpYWJsZSB0aGF0IGlzIG91dHB1dCBieSBpdHMgQjwtcz4gb3B0aW9uIGlzIGludGVncmF0ZWQgaW4gIgorInRoZSBidWlsZCBlbnZpcm9ubWVudC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjM4CisjLCBuby13cmFwCittc2dpZCAiQ29tcGlsZXIgZmxhZ3MgYXJlIG5vIGxvbmdlciBleHBvcnRlZCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjI0MworbXNnaWQgIiIKKyJCZXR3ZWVuIHZlcnNpb25zIDEuMTQuMTcgYW5kIDEuMTYuMSwgQjxkcGtnLWJ1aWxkcGFja2FnZT4gZXhwb3J0ZWQgY29tcGlsZXIgIgorImZsYWdzIChCPENGTEFHUz4sIEI8Q1hYRkxBR1M+LCBCPEZGTEFHUz4sIEI8Q1BQRkxBR1M+IGFuZCBCPExERkxBR1M+KSB3aXRoICIKKyJ2YWx1ZXMgYXMgcmV0dXJuZWQgYnkgQjxkcGtnLWJ1aWxkZmxhZ3M+LiBUaGlzIGlzIG5vIGxvbmdlciB0aGUgY2FzZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyNDgKK21zZ2lkICIiCisiSXQgc2hvdWxkIGJlIHBvc3NpYmxlIHRvIHNwZWNpZnkgc3BhY2VzIGFuZCBzaGVsbCBtZXRhY2hhcmFjdGVycyBpbiBhbmQgIgorImluaXRpYWwgYXJndW1lbnRzIGZvciBJPGdhaW4tcm9vdC1jb21tYW5kPiBhbmQgSTxzaWduLWNvbW1hbmQ+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjI1NgorIywgZnV6enkKK21zZ2lkICIiCisiQjxkcGtnLXNvdXJjZT4oMSksIEI8ZHBrZy1hcmNoaXRlY3R1cmU+KDEpLCBCPGRwa2ctYnVpbGRmbGFncz4oMSksIEI8ZHBrZy0iCisiZ2VuY2hhbmdlcz4oMSksIEI8ZmFrZXJvb3Q+KDEpLCBCPGdwZz4oMSkuIgorbXNnc3RyICIiCisiQjxkc2VsZWN0Pig4KSwgQjxkcGtnLWRlYj4oMSksIEI8ZGViPig1KSwgQjxkZWItY29udHJvbD4oNSksIGUgQjxkcGtnLSIKKyJyZWNvbmZpZ3VyZT4oOCkiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjY1Cittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMDgtMjAxMCBSYXBoYVxcWzplXWwgSGVydHpvZyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1jaGVja2J1aWxkZGVwcy4xOjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLWNoZWNrYnVpbGRkZXBzIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctY2hlY2tidWlsZGRlcHMuMTo0Cittc2dpZCAiZHBrZy1jaGVja2J1aWxkZGVwcyAtIGNoZWNrIGJ1aWxkIGRlcGVuZGVuY2llcyBhbmQgY29uZmxpY3RzIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctY2hlY2tidWlsZGRlcHMuMTo5CisjLCBmdXp6eQorbXNnaWQgIkI8ZHBrZy1jaGVja2J1aWxkZGVwcz4gW0k8b3B0aW9uPi4uLl0gW0k8Y29udHJvbC1maWxlPl0iCittc2dzdHIgIkI8ZHBrZz4gW0k8b3DDp8O1ZXM+XSBJPGHDp8Ojbz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctY2hlY2tidWlsZGRlcHMuMToxNAorbXNnaWQgIiIKKyJUaGlzIHByb2dyYW0gY2hlY2tzIHRoZSBpbnN0YWxsZWQgcGFja2FnZXMgaW4gdGhlIHN5c3RlbSBhZ2FpbnN0IHRoZSBidWlsZCAiCisiZGVwZW5kZW5jaWVzIGFuZCBidWlsZCBjb25mbGljdHMgbGlzdGVkIGluIHRoZSBjb250cm9sIGZpbGUuIElmIGFueSBhcmUgbm90ICIKKyJtZXQsIGl0IGRpc3BsYXlzIHRoZW0gYW5kIGV4aXRzIHdpdGggYSBub256ZXJvIHJldHVybiBjb2RlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6MTcKK21zZ2lkICIiCisiQnkgZGVmYXVsdCwgQjxkZWJpYW4vY29udHJvbD4gaXMgcmVhZCwgYnV0IGFuIGFsdGVybmF0ZSBjb250cm9sIGZpbGVuYW1lIG1heSAiCisiYmUgc3BlY2lmaWVkIG9uIHRoZSBjb21tYW5kIGxpbmUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctY2hlY2tidWlsZGRlcHMuMToyNworbXNnaWQgIiIKKyJJZ25vcmUgSTxCdWlsZC1EZXBlbmRzLUluZGVwPiBsaW5lcy4gVXNlIHdoZW4gbm8gYXJjaC1pbmRlcCBwYWNrYWdlcyB3aWxsIGJlICIKKyJidWlsdC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctY2hlY2tidWlsZGRlcHMuMToyNworIywgbm8td3JhcAorbXNnaWQgIkI8LWQgPkk8YnVpbGQtZGVwZW5kcy1zdHJpbmc+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6MjkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1jID5JPGJ1aWxkLWNvbmZsaWN0cy1zdHJpbmc+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctY2hlY2tidWlsZGRlcHMuMTozMworbXNnaWQgIiIKKyJVc2UgdGhlIGdpdmVuIGJ1aWxkIGRlcGVuZGVuY2llcy9jb25mbGljdHMgaW5zdGVhZCBvZiB0aG9zZSBjb250YWluZWQgaW4gdGhlICIKKyJJPGRlYmlhbi9jb250cm9sPiBmaWxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6NDIKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAwMSBKb2V5IEhlc3MiCittc2dzdHIgIiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctZGlzdGFkZGZpbGUuMToxCisjLCBuby13cmFwCittc2dpZCAiZHBrZy1kaXN0YWRkZmlsZSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpc3RhZGRmaWxlLjE6NAorbXNnaWQgImRwa2ctZGlzdGFkZGZpbGUgLSBhZGQgZW50cmllcyB0byBkZWJpYW4vZmlsZXMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXN0YWRkZmlsZS4xOjgKKyMsIGZ1enp5Cittc2dpZCAiQjxkcGtnLWRpc3RhZGRmaWxlPiBbSTxvcHRpb24+Li4uXUk8IGZpbGVuYW1lIHNlY3Rpb24gcHJpb3JpdHk+IgorbXNnc3RyICJCPGRwa2c+IFtJPG9ww6fDtWVzPl0gSTxhw6fDo28+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpc3RhZGRmaWxlLjE6MTMKK21zZ2lkICJCPGRwa2ctZGlzdGFkZGZpbGU+IGFkZHMgYW4gZW50cnkgZm9yIGEgbmFtZWQgZmlsZSB0byBCPGRlYmlhbi9maWxlcz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGlzdGFkZGZpbGUuMToxOAorbXNnaWQgIiIKKyJJdCB0YWtlcyB0aHJlZSBub24tb3B0aW9uIGFyZ3VtZW50cywgdGhlIGZpbGVuYW1lIGFuZCB0aGUgc2VjdGlvbiBhbmQgIgorInByaW9yaXR5IGZvciB0aGUgQjwuY2hhbmdlcz4gZmlsZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXN0YWRkZmlsZS4xOjI2Cittc2dpZCAiIgorIlRoZSBmaWxlbmFtZSBzaG91bGQgYmUgc3BlY2lmaWVkIHJlbGF0aXZlIHRvIHRoZSBkaXJlY3Rvcnkgd2hlcmUgQjxkcGtnLSIKKyJnZW5jaGFuZ2VzPiB3aWxsIGV4cGVjdCB0byBmaW5kIHRoZSBmaWxlcywgdXN1YWxseSBCPC4uPiwgcmF0aGVyIHRoYW4gYmVpbmcgIgorImEgcGF0aG5hbWUgcmVsYXRpdmUgdG8gdGhlIGN1cnJlbnQgZGlyZWN0b3J5IHdoZW4gQjxkcGtnLWRpc3RhZGRmaWxlPiBpcyBydW4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRpc3RhZGRmaWxlLjE6MjggZHBrZy1nZW5jaGFuZ2VzLjE6MTAzIGRwa2ctZ2VuY29udHJvbC4xOjY5CisjLCBuby13cmFwCittc2dpZCAiQjwtZj5JPGZpbGVzbGlzdGZpbGU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGlzdGFkZGZpbGUuMTozMiBkcGtnLWdlbmNvbnRyb2wuMTo3MworbXNnaWQgIiIKKyJSZWFkIG9yIHdyaXRlIHRoZSBsaXN0IG9mIGZpbGVzIHRvIGJlIHVwbG9hZGVkIGhlcmUsIHJhdGhlciB0aGFuIHVzaW5nICIKKyJCPGRlYmlhbi9maWxlcz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRpc3RhZGRmaWxlLjE6NDAgZHBrZy1nZW5jaGFuZ2VzLjE6MTM5IGRwa2ctZ2VuY29udHJvbC4xOjEzNAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPGRlYmlhbi9maWxlcz4iCittc2dzdHIgIkI8Y29uZmlnLWZpbGVzPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXN0YWRkZmlsZS4xOjQ2Cittc2dpZCAiIgorIlRoZSBsaXN0IG9mIGdlbmVyYXRlZCBmaWxlcyB3aGljaCBhcmUgcGFydCBvZiB0aGUgdXBsb2FkIGJlaW5nIHByZXBhcmVkLiAgIgorIkI8ZHBrZy1kaXN0YWRkZmlsZT4gY2FuIGJlIHVzZWQgdG8gYWRkIGFkZGl0aW9uYWwgZmlsZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLWRlYi4xOjEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiZHBrZy1kZWIiCittc2dzdHIgImRwa2ciCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6NAorbXNnaWQgImRwa2ctZGViIC0gRGViaWFuIHBhY2thZ2UgYXJjaGl2ZSAoLmRlYikgbWFuaXB1bGF0aW9uIHRvb2wiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMTo4CisjLCBmdXp6eQorbXNnaWQgIkI8ZHBrZy1kZWI+IFtJPG9wdGlvbj4uLi5dIEk8Y29tbWFuZD4iCittc2dzdHIgIkI8ZHBrZz4gW0k8b3DDp8O1ZXM+XSBJPGHDp8Ojbz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTIKKyMsIGZ1enp5Cittc2dpZCAiIgorIkI8ZHBrZy1kZWI+IHBhY2tzLCB1bnBhY2tzIGFuZCBwcm92aWRlcyBpbmZvcm1hdGlvbiBhYm91dCBEZWJpYW4gYXJjaGl2ZXMuIgorbXNnc3RyICJWZWphIEI8ZHBrZy1kZWI+KDEpIHBhcmEgbWFpcyBpbmZvcm1hw6fDtWVzIHNvYnJlIGFzIHNlZ3VpbnRlcyBhw6fDtWVzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxNgorbXNnaWQgIlVzZSBCPGRwa2c+IHRvIGluc3RhbGwgYW5kIHJlbW92ZSBwYWNrYWdlcyBmcm9tIHlvdXIgc3lzdGVtLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjI2Cittc2dpZCAiIgorIllvdSBjYW4gYWxzbyBpbnZva2UgQjxkcGtnLWRlYj4gYnkgY2FsbGluZyBCPGRwa2c+IHdpdGggd2hhdGV2ZXIgb3B0aW9ucyB5b3UgIgorIndhbnQgdG8gcGFzcyB0byBCPGRwa2ctZGViPi4gQjxkcGtnPiB3aWxsIHNwb3QgdGhhdCB5b3Ugd2FudGVkIEI8ZHBrZy1kZWI+ICIKKyJhbmQgcnVuIGl0IGZvciB5b3UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRlYi4xOjI4CisjLCBuby13cmFwCittc2dpZCAiQjwtYj4sIEI8LS1idWlsZD4gSTxkaXJlY3Rvcnk+IFtJPGFyY2hpdmU+fEk8ZGlyZWN0b3J5Pl0iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMTo0MAorbXNnaWQgIiIKKyJDcmVhdGVzIGEgZGViaWFuIGFyY2hpdmUgZnJvbSB0aGUgZmlsZXN5c3RlbSB0cmVlIHN0b3JlZCBpbiBJPGRpcmVjdG9yeT4uICIKKyJJPGRpcmVjdG9yeT4gbXVzdCBoYXZlIGEgQjxERUJJQU4+IHN1YmRpcmVjdG9yeSwgd2hpY2ggY29udGFpbnMgdGhlIGNvbnRyb2wgIgorImluZm9ybWF0aW9uIGZpbGVzIHN1Y2ggYXMgdGhlIGNvbnRyb2wgZmlsZSBpdHNlbGYuIFRoaXMgZGlyZWN0b3J5IHdpbGwgIgorIkk8bm90PiBhcHBlYXIgaW4gdGhlIGJpbmFyeSBwYWNrYWdlJ3MgZmlsZXN5c3RlbSBhcmNoaXZlLCBidXQgaW5zdGVhZCB0aGUgIgorImZpbGVzIGluIGl0IHdpbGwgYmUgcHV0IGluIHRoZSBiaW5hcnkgcGFja2FnZSdzIGNvbnRyb2wgaW5mb3JtYXRpb24gYXJlYS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMTo1MgorbXNnaWQgIiIKKyJVbmxlc3MgeW91IHNwZWNpZnkgQjwtLW5vY2hlY2s+LCBCPGRwa2ctZGViPiB3aWxsIHJlYWQgQjxERUJJQU4vY29udHJvbD4gYW5kICIKKyJwYXJzZSBpdC4gSXQgd2lsbCBjaGVjayBpdCBmb3Igc3ludGF4IGVycm9ycyBhbmQgb3RoZXIgcHJvYmxlbXMsIGFuZCBkaXNwbGF5ICIKKyJ0aGUgbmFtZSBvZiB0aGUgYmluYXJ5IHBhY2thZ2UgYmVpbmcgYnVpbHQuICBCPGRwa2ctZGViPiB3aWxsIGFsc28gY2hlY2sgdGhlICIKKyJwZXJtaXNzaW9ucyBvZiB0aGUgbWFpbnRhaW5lciBzY3JpcHRzIGFuZCBvdGhlciBmaWxlcyBmb3VuZCBpbiB0aGUgQjxERUJJQU4+ICIKKyJjb250cm9sIGluZm9ybWF0aW9uIGRpcmVjdG9yeS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMTo1OQorbXNnaWQgIiIKKyJJZiBubyBJPGFyY2hpdmU+IGlzIHNwZWNpZmllZCB0aGVuIEI8ZHBrZy1kZWI+IHdpbGwgd3JpdGUgdGhlIHBhY2thZ2UgaW50byAiCisidGhlIGZpbGUgSTxkaXJlY3Rvcnk+QjwuZGViPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMTo2MQorbXNnaWQgIklmIHRoZSBhcmNoaXZlIHRvIGJlIGNyZWF0ZWQgYWxyZWFkeSBleGlzdHMgaXQgd2lsbCBiZSBvdmVyd3JpdHRlbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMTo3NworbXNnaWQgIiIKKyJJZiB0aGUgc2Vjb25kIGFyZ3VtZW50IGlzIGEgZGlyZWN0b3J5IHRoZW4gQjxkcGtnLWRlYj4gd2lsbCB3cml0ZSB0byB0aGUgIgorImZpbGUgSTxwYWNrYWdlPkI8Xz5JPHZlcnNpb24+QjxfPkk8YXJjaD5CPC5kZWI+LCBvciAiCisiSTxwYWNrYWdlPkI8Xz5JPHZlcnNpb24+QjwuZGViPiBpZiBubyBCPEFyY2hpdGVjdHVyZT4gZmllbGQgaXMgcHJlc2VudCBpbiAiCisidGhlIHBhY2thZ2UgY29udHJvbCBmaWxlLiBXaGVuIGEgdGFyZ2V0IGRpcmVjdG9yeSBpcyBzcGVjaWZpZWQsIHJhdGhlciB0aGFuICIKKyJhIGZpbGUsIHRoZSBCPC0tbm9jaGVjaz4gb3B0aW9uIG1heSBub3QgYmUgdXNlZCAoc2luY2UgQjxkcGtnLWRlYj4gbmVlZHMgdG8gIgorInJlYWQgYW5kIHBhcnNlIHRoZSBwYWNrYWdlIGNvbnRyb2wgZmlsZSB0byBkZXRlcm1pbmUgd2hpY2ggZmlsZW5hbWUgdG8gdXNlKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6NzcKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtST4sIEI8LS1pbmZvPiBJPGFyY2hpdmU+IFtJPGNvbnRyb2wtZmlsZS1uYW1lPi4uLl0iCittc2dzdHIgIkI8ZHBrZyAtaT4gfCBCPC0taW5zdGFsbD4gSTxhcnF1aXZvX2RvX3BhY290ZT4uLi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6ODAKKyMsIGZ1enp5Cittc2dpZCAiUHJvdmlkZXMgaW5mb3JtYXRpb24gYWJvdXQgYSBiaW5hcnkgcGFja2FnZSBhcmNoaXZlLiIKK21zZ3N0ciAiQXBhZ2EgYXMgaW5mb3JtYcOnw7VlcyBleGlzdGVudGVzIHNvYnJlIHF1YWlzIHBhY290ZXMgZXN0w6NvIGRpc3BvbsOtdmVpcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6ODUKK21zZ2lkICIiCisiSWYgbm8gSTxjb250cm9sLWZpbGUtbmFtZT5zIGFyZSBzcGVjaWZpZWQgdGhlbiBpdCB3aWxsIHByaW50IGEgc3VtbWFyeSBvZiAiCisidGhlIGNvbnRlbnRzIG9mIHRoZSBwYWNrYWdlIGFzIHdlbGwgYXMgaXRzIGNvbnRyb2wgZmlsZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMTo5MworbXNnaWQgIiIKKyJJZiBhbnkgSTxjb250cm9sLWZpbGUtbmFtZT5zIGFyZSBzcGVjaWZpZWQgdGhlbiBCPGRwa2ctZGViPiB3aWxsIHByaW50IHRoZW0gIgorImluIHRoZSBvcmRlciB0aGV5IHdlcmUgc3BlY2lmaWVkOyBpZiBhbnkgb2YgdGhlIGNvbXBvbmVudHMgd2VyZW4ndCBwcmVzZW50ICIKKyJpdCB3aWxsIHByaW50IGFuIGVycm9yIG1lc3NhZ2UgdG8gc3RkZXJyIGFib3V0IGVhY2ggb25lIGFuZCBleGl0IHdpdGggc3RhdHVzICIKKyIyLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMTo5MworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1XPiwgQjwtLXNob3c+IEk8YXJjaGl2ZT4iCittc2dzdHIgIkI8LVI+IHwgQjwtLXJlY3Vyc2l2ZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTAwCittc2dpZCAiIgorIlByb3ZpZGVzIGluZm9ybWF0aW9uIGFib3V0IGEgYmluYXJ5IHBhY2thZ2UgYXJjaGl2ZSBpbiB0aGUgZm9ybWF0IHNwZWNpZmllZCAiCisiYnkgdGhlIEI8LS1zaG93Zm9ybWF0PiBhcmd1bWVudC4gVGhlIGRlZmF1bHQgZm9ybWF0IGRpc3BsYXlzIHRoZSBwYWNrYWdlJ3MgIgorIm5hbWUgYW5kIHZlcnNpb24gb24gb25lIGxpbmUsIHNlcGFyYXRlZCBieSBhIHRhYnVsYXRvci4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MTAwCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LWY+LCBCPC0tZmllbGQ+IEk8YXJjaGl2ZT4gW0k8Y29udHJvbC1maWVsZC1uYW1lPi4uLl0iCittc2dzdHIgIkI8ZHBrZyAtaT4gfCBCPC0taW5zdGFsbD4gSTxhcnF1aXZvX2RvX3BhY290ZT4uLi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTAzCisjLCBmdXp6eQorbXNnaWQgIkV4dHJhY3RzIGNvbnRyb2wgZmlsZSBpbmZvcm1hdGlvbiBmcm9tIGEgYmluYXJ5IHBhY2thZ2UgYXJjaGl2ZS4iCittc2dzdHIgIkI8MS4+IE9zIGFycXVpdm9zIGRlIGNvbnRyb2xlIGRvIG5vdm8gcGFjb3RlIHPDo28gZXh0cmHDrWRvcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTA3Cittc2dpZCAiIgorIklmIG5vIEI8Y29udHJvbC1maWxlLWZpZWxkPnMgYXJlIHNwZWNpZmllZCB0aGVuIGl0IHdpbGwgcHJpbnQgdGhlIHdob2xlICIKKyJjb250cm9sIGZpbGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTE2Cittc2dpZCAiIgorIklmIGFueSBhcmUgc3BlY2lmaWVkIHRoZW4gQjxkcGtnLWRlYj4gd2lsbCBwcmludCB0aGVpciBjb250ZW50cywgaW4gdGhlICIKKyJvcmRlciBpbiB3aGljaCB0aGV5IGFwcGVhciBpbiB0aGUgY29udHJvbCBmaWxlLiBJZiBtb3JlIHRoYW4gb25lIEI8Y29udHJvbC0iCisiZmlsZS1maWVsZD4gaXMgc3BlY2lmaWVkIHRoZW4gQjxkcGtnLWRlYj4gd2lsbCBwcmVjZWRlIGVhY2ggd2l0aCBpdHMgZmllbGQgIgorIm5hbWUgKGFuZCBhIGNvbG9uIGFuZCBzcGFjZSkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTE4Cittc2dpZCAiTm8gZXJyb3JzIGFyZSByZXBvcnRlZCBmb3IgZmllbGRzIHJlcXVlc3RlZCBidXQgbm90IGZvdW5kLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToxMTgKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtYz4sIEI8LS1jb250ZW50cz4gSTxhcmNoaXZlPiIKK21zZ3N0ciAiQjwtLW5ldz4gfCBCPC0tb2xkPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxMjQKK21zZ2lkICIiCisiTGlzdHMgdGhlIGNvbnRlbnRzIG9mIHRoZSBmaWxlc3lzdGVtIHRyZWUgYXJjaGl2ZSBwb3J0aW9uIG9mIHRoZSBwYWNrYWdlICIKKyJhcmNoaXZlLiBJdCBpcyBjdXJyZW50bHkgcHJvZHVjZWQgaW4gdGhlIGZvcm1hdCBnZW5lcmF0ZWQgYnkgQjx0YXI+J3MgIgorInZlcmJvc2UgbGlzdGluZy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MTI0CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LXg+LCBCPC0tZXh0cmFjdD4gSTxhcmNoaXZlIGRpcmVjdG9yeT4iCittc2dzdHIgIkI8LS1hbHRkaXI+IEk8ZGlyZXTDs3Jpbz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTI4Cittc2dpZCAiIgorIkV4dHJhY3RzIHRoZSBmaWxlc3lzdGVtIHRyZWUgZnJvbSBhIHBhY2thZ2UgYXJjaGl2ZSBpbnRvIHRoZSBzcGVjaWZpZWQgIgorImRpcmVjdG9yeS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxMzQKK21zZ2lkICIiCisiTm90ZSB0aGF0IGV4dHJhY3RpbmcgYSBwYWNrYWdlIHRvIHRoZSByb290IGRpcmVjdG9yeSB3aWxsIEk8bm90PiByZXN1bHQgaW4gYSAiCisiY29ycmVjdCBpbnN0YWxsYXRpb24hIFVzZSBCPGRwa2c+IHRvIGluc3RhbGwgcGFja2FnZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTM4Cittc2dpZCAiIgorIkk8ZGlyZWN0b3J5PiAoYnV0IG5vdCBpdHMgcGFyZW50cykgd2lsbCBiZSBjcmVhdGVkIGlmIG5lY2Vzc2FyeSwgYW5kIGl0cyAiCisicGVybWlzc2lvbnMgbW9kaWZpZWQgdG8gbWF0Y2ggdGhlIGNvbnRlbnRzIG9mIHRoZSBwYWNrYWdlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToxMzgKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtWD4sIEI8LS12ZXh0cmFjdD4gSTxhcmNoaXZlIGRpcmVjdG9yeT4iCittc2dzdHIgIkI8LS1hbHRkaXI+IEk8ZGlyZXTDs3Jpbz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTQ1Cittc2dpZCAiIgorIklzIGxpa2UgQjwtLWV4dHJhY3Q+IChCPC14PikgIHdpdGggQjwtLXZlcmJvc2U+IChCPC12PikgIHdoaWNoIHByaW50cyBhICIKKyJsaXN0aW5nIG9mIHRoZSBmaWxlcyBleHRyYWN0ZWQgYXMgaXQgZ29lcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MTQ1CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LVI+LCBCPC0tcmF3LWV4dHJhY3Q+IEk8YXJjaGl2ZSBkaXJlY3Rvcnk+IgorbXNnc3RyICJCPC0tYWx0ZGlyPiBJPGRpcmV0w7NyaW8+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjE1MAorbXNnaWQgIiIKKyJFeHRyYWN0cyB0aGUgZmlsZXN5c3RlbSB0cmVlIGZyb20gYSBwYWNrYWdlIGFyY2hpdmUgaW50byBhIHNwZWNpZmllZCAiCisiZGlyZWN0b3J5LCBhbmQgdGhlIGNvbnRyb2wgaW5mb3JtYXRpb24gZmlsZXMgaW50byBhIERFQklBTiBzdWJkaXJlY3Rvcnkgb2YgIgorInRoZSBzcGVjaWZpZWQgZGlyZWN0b3J5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjE1MiBkcGtnLWRlYi4xOjE3MgorbXNnaWQgIiIKKyJUaGUgdGFyZ2V0IGRpcmVjdG9yeSAoYnV0IG5vdCBpdHMgcGFyZW50cykgd2lsbCBiZSBjcmVhdGVkIGlmIG5lY2Vzc2FyeS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MTUyCisjLCBuby13cmFwCittc2dpZCAiQjwtLWZzeXMtdGFyZmlsZT4gSTxhcmNoaXZlPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjE2MQorbXNnaWQgIiIKKyJFeHRyYWN0cyB0aGUgZmlsZXN5c3RlbSB0cmVlIGRhdGEgZnJvbSBhIGJpbmFyeSBwYWNrYWdlIGFuZCBzZW5kcyBpdCB0byAiCisic3RhbmRhcmQgb3V0cHV0IGluIEI8dGFyPiBmb3JtYXQuIFRvZ2V0aGVyIHdpdGggQjx0YXI+KDEpICB0aGlzIGNhbiBiZSB1c2VkICIKKyJ0byBleHRyYWN0IGEgcGFydGljdWxhciBmaWxlIGZyb20gYSBwYWNrYWdlIGFyY2hpdmUuICBUaGUgaW5wdXQgYXJjaGl2ZSB3aWxsICIKKyJhbHdheXMgYmUgcHJvY2Vzc2VkIHNlcXVlbnRpYWxseS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MTYxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LWU+LCBCPC0tY29udHJvbD4gSTxhcmNoaXZlPiBbSTxkaXJlY3Rvcnk+XSIKK21zZ3N0ciAiQjwtLWFsdGRpcj4gSTxkaXJldMOzcmlvPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxNjUKK21zZ2lkICIiCisiRXh0cmFjdHMgdGhlIGNvbnRyb2wgaW5mb3JtYXRpb24gZmlsZXMgZnJvbSBhIHBhY2thZ2UgYXJjaGl2ZSBpbnRvIHRoZSAiCisic3BlY2lmaWVkIGRpcmVjdG9yeS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxNjkKK21zZ2lkICIiCisiSWYgbm8gZGlyZWN0b3J5IGlzIHNwZWNpZmllZCB0aGVuIGEgc3ViZGlyZWN0b3J5IEI8REVCSUFOPiBpbiB0aGUgY3VycmVudCAiCisiZGlyZWN0b3J5IGlzIHVzZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRlYi4xOjE4MAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1zaG93Zm9ybWF0PT5JPGZvcm1hdD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxODUgZHBrZy1xdWVyeS4xOjEyNworbXNnaWQgIiIKKyJUaGlzIG9wdGlvbiBpcyB1c2VkIHRvIHNwZWNpZnkgdGhlIGZvcm1hdCBvZiB0aGUgb3V0cHV0IEI8LS1zaG93PiB3aWxsICIKKyJwcm9kdWNlLiBUaGUgZm9ybWF0IGlzIGEgc3RyaW5nIHRoYXQgd2lsbCBiZSBvdXRwdXQgZm9yIGVhY2ggcGFja2FnZSBsaXN0ZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTk0Cittc2dpZCAiIgorIlRoZSBzdHJpbmcgbWF5IHJlZmVyZW5jZSBhbnkgc3RhdHVzIGZpZWxkIHVzaW5nIHRoZSBcIiR7STxmaWVsZC1uYW1lPn1cIiAiCisiZm9ybSwgYSBsaXN0IG9mIHRoZSB2YWxpZCBmaWVsZHMgY2FuIGJlIGVhc2lseSBwcm9kdWNlZCB1c2luZyBCPC1JPiBvbiB0aGUgIgorInNhbWUgcGFja2FnZS4gQSBjb21wbGV0ZSBleHBsYW5hdGlvbiBvZiB0aGUgZm9ybWF0dGluZyBvcHRpb25zIChpbmNsdWRpbmcgIgorImVzY2FwZSBzZXF1ZW5jZXMgYW5kIGZpZWxkIHRhYmJpbmcpIGNhbiBiZSBmb3VuZCBpbiB0aGUgZXhwbGFuYXRpb24gb2YgdGhlICIKKyJCPC0tc2hvd2Zvcm1hdD4gb3B0aW9uIGluIEI8ZHBrZy1xdWVyeT4oMSkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTk2Cittc2dpZCAiVGhlIGRlZmF1bHQgZm9yIHRoaXMgZmllbGQgaXMgXCIke1BhY2thZ2V9XFxldCR7VmVyc2lvbn1cXGVuXCIuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRlYi4xOjE5NgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC16Pkk8Y29tcHJlc3MtbGV2ZWw+IgorbXNnc3RyICJCPC0tbG9nPT5JPGZpbGVuYW1lPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToyMDAKK21zZ2lkICIiCisiU3BlY2lmeSB3aGljaCBjb21wcmVzc2lvbiBsZXZlbCB0byB1c2Ugb24gdGhlIGNvbXByZXNzb3IgYmFja2VuZCwgd2hlbiAiCisiYnVpbGRpbmcgYSBwYWNrYWdlIChkZWZhdWx0IGlzIDkgZm9yIGd6aXAgYW5kIGJ6aXAyLCA2IGZvciB4eiBhbmQgbHptYSkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRlYi4xOjIwMAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1aPkk8Y29tcHJlc3MtdHlwZT4iCittc2dzdHIgIkI8LS12ZXJzaW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToyMDUKK21zZ2lkICIiCisiU3BlY2lmeSB3aGljaCBjb21wcmVzc2lvbiB0eXBlIHRvIHVzZSB3aGVuIGJ1aWxkaW5nIGEgcGFja2FnZS4gQWxsb3dlZCAiCisidmFsdWVzIGFyZSBJPGd6aXA+LCBJPHh6PiwgSTxiemlwMj4sIEk8bHptYT4sIGFuZCBJPG5vbmU+IChkZWZhdWx0IGlzICIKKyJJPGd6aXA+KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MjA1CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1uZXc+IgorbXNnc3RyICJCPC0tdGVzdD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MjEwCittc2dpZCAiIgorIkVuc3VyZXMgdGhhdCBCPGRwa2ctZGViPiBidWlsZHMgYSBgbmV3JyBmb3JtYXQgYXJjaGl2ZS4gVGhpcyBpcyB0aGUgZGVmYXVsdC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MjEwCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1vbGQ+IgorbXNnc3RyICJCPGhvbGQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjIxOAorbXNnaWQgIiIKKyJGb3JjZXMgQjxkcGtnLWRlYj4gdG8gYnVpbGQgYW4gYG9sZCcgZm9ybWF0IGFyY2hpdmUuIFRoaXMgb2xkIGFyY2hpdmUgZm9ybWF0ICIKKyJpcyBsZXNzIGVhc2lseSBwYXJzZWQgYnkgbm9uLURlYmlhbiB0b29scyBhbmQgaXMgbm93IG9ic29sZXRlOyBpdHMgb25seSB1c2UgIgorImlzIHdoZW4gYnVpbGRpbmcgcGFja2FnZXMgdG8gYmUgcGFyc2VkIGJ5IHZlcnNpb25zIG9mIGRwa2cgb2xkZXIgdGhhbiAiCisiMC45My43NiAoU2VwdGVtYmVyIDE5OTUpLCB3aGljaCB3YXMgcmVsZWFzZWQgYXMgaTM4NiBhLm91dCBvbmx5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToyMTgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tbm9jaGVjaz4iCittc2dzdHIgIkI8LS1ub2NoZWNrPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToyMjQKK21zZ2lkICIiCisiSW5oaWJpdHMgQjxkcGtnLWRlYiAtLWJ1aWxkPidzIHVzdWFsIGNoZWNrcyBvbiB0aGUgcHJvcG9zZWQgY29udGVudHMgb2YgYW4gIgorImFyY2hpdmUuIFlvdSBjYW4gYnVpbGQgYW55IGFyY2hpdmUgeW91IHdhbnQsIG5vIG1hdHRlciBob3cgYnJva2VuLCB0aGlzIHdheS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MjI0IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjU1CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LXY+LCBCPC0tdmVyYm9zZT4iCittc2dzdHIgIkI8LS12ZXJib3NlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToyMjgKK21zZ2lkICIiCisiRW5hYmxlcyB2ZXJib3NlIG91dHB1dC4gVGhpcyBjdXJyZW50bHkgb25seSBhZmZlY3RzIEI8LS1leHRyYWN0PiBtYWtpbmcgaXQgIgorImJlaGF2ZSBsaWtlIEI8LS12ZXh0cmFjdD4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRlYi4xOjIyOAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1EPiwgQjwtLWRlYnVnPiIKK21zZ3N0ciAiQjwtLW5vY2hlY2s+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjIzMQorbXNnaWQgIkVuYWJsZXMgZGVidWdnaW5nIG91dHB1dC4gVGhpcyBpcyBub3QgdmVyeSBpbnRlcmVzdGluZy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToyMzcKK21zZ2lkICIiCisiSWYgc2V0LCBCPGRwa2ctZGViPiB3aWxsIHVzZSBpdCBhcyB0aGUgZGlyZWN0b3J5IGluIHdoaWNoIHRvIGNyZWF0ZSAiCisidGVtcG9yYXJ5IGZpbGVzIGFuZCBkaXJlY3Rvcmllcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToyNDMKK21zZ2lkICIiCisiQjxkcGtnLWRlYiAtST4gSTxwYWNrYWdlMT5CPC5kZWI+IEk8cGFja2FnZTI+QjwuZGViPiBkb2VzIHRoZSB3cm9uZyB0aGluZy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToyNTEKK21zZ2lkICIiCisiVGhlcmUgaXMgbm8gYXV0aGVudGljYXRpb24gb24gQjwuZGViPiBmaWxlczsgaW4gZmFjdCwgdGhlcmUgaXNuJ3QgZXZlbiBhICIKKyJzdHJhaWdodGZvcndhcmQgY2hlY2tzdW0uICAoSGlnaGVyIGxldmVsIHRvb2xzIGxpa2UgQVBUIHN1cHBvcnQgIgorImF1dGhlbnRpY2F0aW5nIEI8LmRlYj4gcGFja2FnZXMgcmV0cmlldmVkIGZyb20gYSBnaXZlbiByZXBvc2l0b3J5LCBhbmQgbW9zdCAiCisicGFja2FnZXMgbm93YWRheXMgcHJvdmlkZSBhbiBtZDVzdW0gY29udHJvbCBmaWxlIGdlbmVyYXRlZCBieSBkZWJpYW4vcnVsZXMuICIKKyJUaG91Z2ggdGhpcyBpcyBub3QgZGlyZWN0bHkgc3VwcG9ydGVkIGJ5IHRoZSBsb3dlciBsZXZlbCB0b29scy4pIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MjU4Cittc2dpZCAiIgorIkRvIG5vdCBhdHRlbXB0IHRvIHVzZSBqdXN0IEI8ZHBrZy1kZWI+IHRvIGluc3RhbGwgc29mdHdhcmUhIFlvdSBtdXN0IHVzZSAiCisiQjxkcGtnPiBwcm9wZXIgdG8gZW5zdXJlIHRoYXQgYWxsIHRoZSBmaWxlcyBhcmUgY29ycmVjdGx5IHBsYWNlZCBhbmQgdGhlICIKKyJwYWNrYWdlJ3Mgc2NyaXB0cyBydW4gYW5kIGl0cyBzdGF0dXMgYW5kIGNvbnRlbnRzIHJlY29yZGVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjI2NAorbXNnaWQgIkI8ZGViPig1KSwgQjxkZWItY29udHJvbD4oNSksIEI8ZHBrZz4oMSksIEI8ZHNlbGVjdD4oMSkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLWRpdmVydC44OjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLWRpdmVydCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjQKK21zZ2lkICJkcGtnLWRpdmVydCAtIG92ZXJyaWRlIGEgcGFja2FnZSdzIHZlcnNpb24gb2YgYSBmaWxlIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6OQorIywgZnV6enkKK21zZ2lkICJCPGRwa2ctZGl2ZXJ0PiBbSTxvcHRpb24+Li4uXSBJPGNvbW1hbmQ+IgorbXNnc3RyICJCPGRwa2c+IFtJPG9ww6fDtWVzPl0gSTxhw6fDo28+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjEzCittc2dpZCAiIgorIkI8ZHBrZy1kaXZlcnQ+IGlzIHRoZSB1dGlsaXR5IHVzZWQgdG8gc2V0IHVwIGFuZCB1cGRhdGUgdGhlIGxpc3Qgb2YgIgorImRpdmVyc2lvbnMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6MjMKK21zZ2lkICIiCisiRmlsZSBJPGRpdmVyc2lvbnM+IGFyZSBhIHdheSBvZiBmb3JjaW5nIEI8ZHBrZz4oMSkgIG5vdCB0byBpbnN0YWxsIGEgZmlsZSAiCisiaW50byBpdHMgbG9jYXRpb24sIGJ1dCB0byBhIEk8ZGl2ZXJ0ZWQ+IGxvY2F0aW9uLiBEaXZlcnNpb25zIGNhbiBiZSB1c2VkICIKKyJ0aHJvdWdoIHRoZSBEZWJpYW4gcGFja2FnZSBzY3JpcHRzIHRvIG1vdmUgYSBmaWxlIGF3YXkgd2hlbiBpdCBjYXVzZXMgYSAiCisiY29uZmxpY3QuIFN5c3RlbSBhZG1pbmlzdHJhdG9ycyBjYW4gYWxzbyB1c2UgaXQgdG8gb3ZlcnJpZGUgc29tZSBwYWNrYWdlJ3MgIgorImNvbmZpZ3VyYXRpb24gZmlsZSwgb3Igd2hlbmV2ZXIgc29tZSBmaWxlcyAod2hpY2ggYXJlbid0IG1hcmtlZCBhcyAiCisiJ2NvbmZmaWxlcycpIG5lZWQgdG8gYmUgcHJlc2VydmVkIGJ5IGRwa2csIHdoZW4gaW5zdGFsbGluZyBhIG5ld2VyIHZlcnNpb24gIgorIm9mIGEgcGFja2FnZSB3aGljaCBjb250YWlucyB0aG9zZSBmaWxlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGl2ZXJ0Ljg6MjUKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiW0I8LS1hZGQ+XSBJPGZpbGU+IgorbXNnc3RyICJCPC0tbG9nPT5JPGZpbGVuYW1lPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODoyOAorbXNnaWQgIkFkZCBhIGRpdmVyc2lvbiBmb3IgSTxmaWxlPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGl2ZXJ0Ljg6MjggZHBrZy1zdGF0b3ZlcnJpZGUuODozNQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tcmVtb3ZlPkk8IGZpbGU+IgorbXNnc3RyICJCPC0tc3RhdHVzLWZkID5JPEU8bHQ+bkU8Z3Q+PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODozMQorbXNnaWQgIlJlbW92ZSBhIGRpdmVyc2lvbiBmb3IgSTxmaWxlPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGl2ZXJ0Ljg6MzEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWxpc3Q+STwgZ2xvYi1wYXR0ZXJuPiIKK21zZ3N0ciAiQjwtLXN0YXR1cy1mZCA+STxFPGx0Pm5FPGd0Pj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6MzQKK21zZ2lkICJMaXN0IGRpdmVyc2lvbnMgbWF0Y2hpbmcgSTxnbG9iLXBhdHRlcm4+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kaXZlcnQuODozNAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tbGlzdHBhY2thZ2U+STwgZmlsZT4iCittc2dzdHIgIkI8LS1zdGF0dXMtZmQgPkk8RTxsdD5uRTxndD4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjM4Cittc2dpZCAiIgorIlByaW50IHRoZSBuYW1lIG9mIHRoZSBwYWNrYWdlIHRoYXQgZGl2ZXJ0cyBJPGZpbGU+LiAgUHJpbnRzIExPQ0FMIGlmIEk8ZmlsZT4gIgorImlzIGxvY2FsbHkgZGl2ZXJ0ZWQgYW5kIG5vdGhpbmcgaWYgSTxmaWxlPiBpcyBub3QgZGl2ZXJ0ZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRpdmVydC44OjM4CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS10cnVlbmFtZT5JPCBmaWxlPiIKK21zZ3N0ciAiQjwtLWxvZz0+STxmaWxlbmFtZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6NDEKK21zZ2lkICJQcmludCB0aGUgcmVhbCBuYW1lIGZvciBhIGRpdmVydGVkIGZpbGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRpdmVydC44OjQzIGRwa2ctc3RhdG92ZXJyaWRlLjg6NTIgZHNlbGVjdC4xOjQ0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzI4CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1hZG1pbmRpcj5JPCBkaXJlY3Rvcnk+IgorbXNnc3RyICJCPC0tYWRtaW5kaXI+IEk8ZGlyZXTDs3Jpbz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6NDYKK21zZ2lkICIiCisiU2V0IHRoZSBkcGtnIGRhdGEgZGlyZWN0b3J5IHRvIEk8ZGlyZWN0b3J5PiAoZGVmYXVsdDogSTwvdmFyL2xpYi9kcGtnPikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRpdmVydC44OjQ2CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1kaXZlcnQ+STwgZGl2ZXJ0LXRvPiIKK21zZ3N0ciAiQjwtLXN0YXR1cy1mZCA+STxFPGx0Pm5FPGd0Pj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6NTAKK21zZ2lkICIiCisiSTxkaXZlcnQtdG8+IGlzIHRoZSBsb2NhdGlvbiB3aGVyZSB0aGUgdmVyc2lvbnMgb2YgSTxmaWxlPiwgYXMgcHJvdmlkZWQgYnkgIgorIm90aGVyIHBhY2thZ2VzLCB3aWxsIGJlIGRpdmVydGVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kaXZlcnQuODo1MAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tbG9jYWw+IgorbXNnc3RyICJCPC0tYWxsPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo1NgorbXNnaWQgIiIKKyJTcGVjaWZpZXMgdGhhdCBhbGwgcGFja2FnZXMnIHZlcnNpb25zIG9mIHRoaXMgZmlsZSBhcmUgZGl2ZXJ0ZWQuICBUaGlzICIKKyJtZWFucywgdGhhdCB0aGVyZSBhcmUgbm8gZXhjZXB0aW9ucywgYW5kIHdoYXRldmVyIHBhY2thZ2UgaXMgaW5zdGFsbGVkLCB0aGUgIgorImZpbGUgaXMgZGl2ZXJ0ZWQuIFRoaXMgY2FuIGJlIHVzZWQgYnkgYW4gYWRtaW4gdG8gaW5zdGFsbCBhIGxvY2FsbHkgbW9kaWZpZWQgIgorInZlcnNpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRpdmVydC44OjU2CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1wYWNrYWdlPkk8IHBhY2thZ2U+IgorbXNnc3RyICJCPC0tc3RhdHVzLWZkID5JPEU8bHQ+bkU8Z3Q+PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo2MQorbXNnaWQgIiIKKyJJPHBhY2thZ2U+IGlzIHRoZSBuYW1lIG9mIGEgcGFja2FnZSB3aG9zZSBjb3B5IG9mIEk8ZmlsZT4gd2lsbCBub3QgYmUgIgorImRpdmVydGVkLiBpLmUuIEk8ZmlsZT4gd2lsbCBiZSBkaXZlcnRlZCBmb3IgYWxsIHBhY2thZ2VzIGV4Y2VwdCBJPHBhY2thZ2U+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kaXZlcnQuODo2MSBkcGtnLXN0YXRvdmVycmlkZS44OjY0IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozNTAKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLXF1aWV0PiIKK21zZ3N0ciAiQjwtLXF1aWV0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo2NAorbXNnaWQgIlF1aWV0IG1vZGUsIGkuZS4gbm8gdmVyYm9zZSBvdXRwdXQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRpdmVydC44OjY0CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1yZW5hbWU+IgorbXNnc3RyICJCPC0tbG9nPT5JPGZpbGVuYW1lPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo2OAorbXNnaWQgIiIKKyJBY3R1YWxseSBtb3ZlIHRoZSBmaWxlIGFzaWRlIChvciBiYWNrKS4gQjxkcGtnLWRpdmVydD4gd2lsbCBhYm9ydCBvcGVyYXRpb24gIgorImluIGNhc2UgdGhlIGRlc3RpbmF0aW9uIGZpbGUgYWxyZWFkeSBleGlzdHMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRpdmVydC44OjY4CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS10ZXN0PiIKK21zZ3N0ciAiQjwtLXRlc3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjcxCittc2dpZCAiVGVzdCBtb2RlLCBpLmUuIGRvbid0IGFjdHVhbGx5IHBlcmZvcm0gYW55IGNoYW5nZXMsIGp1c3QgZGVtb25zdHJhdGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLWRpdmVydC44Ojc4CisjLCBuby13cmFwCittc2dpZCAiTk9URVMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo4MgorbXNnaWQgIiIKKyJXaGVuIGFkZGluZywgZGVmYXVsdCBpcyBCPC0tbG9jYWw+IGFuZCBCPC0tZGl2ZXJ0PiBJPG9yaWdpbmFsPkI8LmRpc3RyaWI+LiAiCisiV2hlbiByZW1vdmluZywgQjwtLXBhY2thZ2U+IG9yIEI8LS1sb2NhbD4gYW5kIEI8LS1kaXZlcnQ+IG11c3QgbWF0Y2ggaWYgIgorInNwZWNpZmllZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo4NAorbXNnaWQgIkRpcmVjdG9yaWVzIGNhbid0IGJlIGRpdmVydGVkIHdpdGggQjxkcGtnLWRpdmVydD4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6OTAKK21zZ2lkICIiCisiQ2FyZSBzaG91bGQgYmUgdGFrZW4gd2hlbiBkaXZlcnRpbmcgc2hhcmVkIGxpYnJhcmllcywgQjxsZGNvbmZpZz4oOCkgICIKKyJjcmVhdGVzIGEgc3ltYm9saWMgbGluayBiYXNlZCBvbiB0aGUgRFRfU09OQU1FIGZpZWxkIGVtYmVkZGVkIGluIHRoZSAiCisibGlicmFyeS4gIEJlY2F1c2UgbGRjb25maWcgZG9lc24ndCBob25vdXIgZGl2ZXJ0cyAob25seSBkcGtnIGRvZXMpLCB0aGUgIgorInN5bWxpbmsgbWF5IGVuZCB1cCBwb2ludGluZyBhdCB0aGUgZGl2ZXJ0ZWQgbGlicmFyeSwgaWYgYSBkaXZlcnRlZCBsaWJyYXJ5ICIKKyJoYXMgdGhlIHNhbWUgU09OQU1FIGFzIHRoZSB1bmRpdmVydGVkIG9uZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo5NQorbXNnaWQgIiIKKyJUbyBkaXZlcnQgYWxsIGNvcGllcyBvZiBhIEk8L3Vzci9iaW4vZXhhbXBsZT4gdG8gSTwvdXNyL2Jpbi9leGFtcGxlLmZvbz4sIGkuIgorImUuIGRpcmVjdHMgYWxsIHBhY2thZ2VzIHByb3ZpZGluZyBJPC91c3IvYmluL2V4YW1wbGU+IHRvIGluc3RhbGwgaXQgYXMgSTwvIgorInVzci9iaW4vZXhhbXBsZS5mb28+LCBwZXJmb3JtaW5nIHRoZSByZW5hbWUgaWYgcmVxdWlyZWQ6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6OTcKK21zZ2lkICJkcGtnLWRpdmVydCAtLWRpdmVydCAvdXNyL2Jpbi9leGFtcGxlLmZvbyAtLXJlbmFtZSAvdXNyL2Jpbi9leGFtcGxlIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6OTkgZHBrZy1kaXZlcnQuODoxMDkKK21zZ2lkICJUbyByZW1vdmUgdGhhdCBkaXZlcnNpb246IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6MTAxCittc2dpZCAiZHBrZy1kaXZlcnQgLS1yZW5hbWUgLS1yZW1vdmUgL3Vzci9iaW4vZXhhbXBsZSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjEwNQorbXNnaWQgIiIKKyJUbyBkaXZlcnQgYW55IHBhY2thZ2UgdHJ5aW5nIHRvIGluc3RhbGwgSTwvdXNyL2Jpbi9leGFtcGxlPiB0byBJPC91c3IvYmluLyIKKyJleGFtcGxlLmZvbz4sIGV4Y2VwdCB5b3VyIG93biBJPHdpYmJsZT4gcGFja2FnZToiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODoxMDcKK21zZ2lkICIiCisiZHBrZy1kaXZlcnQgLS1wYWNrYWdlIHdpYmJsZSAtLWRpdmVydCAvdXNyL2Jpbi9leGFtcGxlLmZvbyAtLXJlbmFtZSAvdXNyL2Jpbi8iCisiZXhhbXBsZSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjExMQorbXNnaWQgImRwa2ctZGl2ZXJ0IC0tcGFja2FnZSB3aWJibGUgLS1yZW5hbWUgLS1yZW1vdmUgL3Vzci9iaW4vZXhhbXBsZSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kaXZlcnQuODoxMTMgZHBrZy1xdWVyeS4xOjIwNSBkcGtnLXN0YXRvdmVycmlkZS44OjY5IGRwa2ctdHJpZ2dlci4xOjYxCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzU1CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8RFBLR19OT19UU1RQPiIKK21zZ2lkICJCPERQS0dfQURNSU5ESVI+IgorbXNnc3RyICJCPERQS0dfTk9fVFNUUD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6MTE3IGRwa2ctcXVlcnkuMToyMDkgZHBrZy1zdGF0b3ZlcnJpZGUuODo3MyBkcGtnLXRyaWdnZXIuMTo2NQorbXNnaWQgIiIKKyJJZiBzZXQgYW5kIHRoZSBCPC0tYWRtaW5kaXI+IG9wdGlvbiBoYXMgbm90IGJlZW4gc3BlY2lmaWVkLCBpdCB3aWxsIGJlIHVzZWQgIgorImFzIHRoZSBkcGtnIGRhdGEgZGlyZWN0b3J5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjEyMQorbXNnaWQgIiIKKyJJZiBzZXQgYW5kIHRoZSBCPC0tbG9jYWw+IGFuZCBCPC0tcGFja2FnZT4gb3B0aW9ucyBoYXZlIG5vdCBiZWVuIHNwZWNpZmllZCwgIgorIkI8ZHBrZy1kaXZlcnQ+IHdpbGwgdXNlIGl0IGFzIHRoZSBwYWNrYWdlIG5hbWUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRpdmVydC44OjEyMworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJJPC92YXIvbGliL2Rwa2cvZGl2ZXJzaW9ucz4iCittc2dzdHIgIkk8L3Zhci9saWIvZHBrZy9zdGF0dXM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjEyOAorbXNnaWQgIiIKKyJGaWxlIHdoaWNoIGNvbnRhaW5zIHRoZSBjdXJyZW50IGxpc3Qgb2YgZGl2ZXJzaW9ucyBvZiB0aGUgc3lzdGVtLiBJdCBpcyAiCisibG9jYXRlZCBpbiB0aGUgZHBrZyBhZG1pbmlzdHJhdGlvbiBkaXJlY3RvcnksIGFsb25nIHdpdGggb3RoZXIgZmlsZXMgIgorImltcG9ydGFudCB0byBkcGtnLCBzdWNoIGFzIEk8c3RhdHVzPiBvciBJPGF2YWlsYWJsZT4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6MTMxCittc2dpZCAiIgorIk5vdGU6IEI8ZHBrZy1kaXZlcnQ+IHByZXNlcnZlcyB0aGUgb2xkIGNvcHkgb2YgdGhpcyBmaWxlLCB3aXRoIGV4dGVuc2lvbiBJPC0iCisib2xkPiwgYmVmb3JlIHJlcGxhY2luZyBpdCB3aXRoIHRoZSBuZXcgb25lLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjEzNyB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDk2Cittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDE5OTUgSWFuIEphY2tzb24iCittc2dzdHIgIiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiZHBrZy1nZW5jaGFuZ2VzIgorbXNnc3RyICJkcGtnIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMTo0Cittc2dpZCAiZHBrZy1nZW5jaGFuZ2VzIC0gZ2VuZXJhdGUgRGViaWFuIC5jaGFuZ2VzIGZpbGVzIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjgKKyMsIGZ1enp5Cittc2dpZCAiQjxkcGtnLWdlbmNoYW5nZXM+IFtJPG9wdGlvbj4uLi5dIgorbXNnc3RyICJCPGRwa2c+IFtJPG9ww6fDtWVzPl0gSTxhw6fDo28+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMToxNgorbXNnaWQgIiIKKyJCPGRwa2ctZ2VuY2hhbmdlcz4gcmVhZHMgaW5mb3JtYXRpb24gZnJvbSBhbiB1bnBhY2tlZCBhbmQgYnVpbHQgRGViaWFuICIKKyJzb3VyY2UgdHJlZSBhbmQgZnJvbSB0aGUgZmlsZXMgaXQgaGFzIGdlbmVyYXRlZCBhbmQgZ2VuZXJhdGVzIGEgRGViaWFuICIKKyJ1cGxvYWQgY29udHJvbCBmaWxlIChCPC5jaGFuZ2VzPiBmaWxlKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjE4CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LWI+LCBCPC1CPiwgQjwtQT4iCittc2dzdHIgIkI8LS1uZXc+IHwgQjwtLW9sZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjI3Cittc2dpZCAiIgorIlNwZWNpZmllcyB0aGF0IGEgYmluYXJ5LW9ubHkgYnVpbGQgaXMgdGFraW5nIHBsYWNlIChubyBzb3VyY2UgZmlsZXMgYXJlIHRvICIKKyJiZSBpbmNsdWRlZCkuIFRoZXJlJ3Mgbm8gZGlzdGluY3Rpb24gYmV0d2VlbiBCPC1iPiwgQjwtQj4gYW5kIEI8LUE+LCB0aGUgIgorInByb2R1Y2VkIEI8LmNoYW5nZXM+IGZpbGUgd2lsbCBpbmNsdWRlIHdoYXRldmVyIGZpbGVzIHdlcmUgY3JlYXRlZCBieSB0aGUgIgorIkI8YmluYXJ5LSo+IHRhcmdldChzKSBvZiB0aGUgcGFja2FnZSBiZWluZyBidWlsdC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6MzEKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRoYXQgb25seSB0aGUgc291cmNlIHNob3VsZCBiZSB1cGxvYWRlZCAobm8gYmluYXJ5IHBhY2thZ2VzIHdpbGwgIgorImJlIGluY2x1ZGVkKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6MzYKK21zZ2lkICIiCisiVGhlIEI8LXM+STx4PiBvcHRpb25zIGNvbnRyb2wgd2hldGhlciB0aGUgb3JpZ2luYWwgc291cmNlIGFyY2hpdmUgaXMgIgorImluY2x1ZGVkIGluIHRoZSB1cGxvYWQgaWYgYW55IHNvdXJjZSBpcyBiZWluZyBnZW5lcmF0ZWQgKGkuZS4gIEI8LWI+IG9yIEI8LSIKKyJCPiBoYXZlbid0IGJlZW4gdXNlZCkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjQyCittc2dpZCAiIgorIkJ5IGRlZmF1bHQsIG9yIGlmIHNwZWNpZmllZCwgdGhlIG9yaWdpbmFsIHNvdXJjZSB3aWxsIGJlIGluY2x1ZGVkIG9ubHkgaWYgIgorInRoZSB1cHN0cmVhbSB2ZXJzaW9uIG51bWJlciAodGhlIHZlcnNpb24gd2l0aG91dCBlcG9jaCBhbmQgd2l0aG91dCBEZWJpYW4gIgorInJldmlzaW9uKSBkaWZmZXJzIGZyb20gdGhlIHVwc3RyZWFtIHZlcnNpb24gbnVtYmVyIG9mIHRoZSBwcmV2aW91cyBjaGFuZ2Vsb2cgIgorImVudHJ5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMTo0NQorbXNnaWQgIkZvcmNlcyB0aGUgaW5jbHVzaW9uIG9mIHRoZSBvcmlnaW5hbCBzb3VyY2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjQ4Cittc2dpZCAiRm9yY2VzIHRoZSBleGNsdXNpb24gb2YgdGhlIG9yaWdpbmFsIHNvdXJjZSBhbmQgaW5jbHVkZXMgb25seSB0aGUgZGlmZi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6NTQKK21zZ2lkICIiCisiQ2F1c2VzIGNoYW5nZWxvZyBpbmZvcm1hdGlvbiBmcm9tIGFsbCB2ZXJzaW9ucyBzdHJpY3RseSBsYXRlciB0aGFuICIKKyJJPHZlcnNpb24+IHRvIGJlIHVzZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjYwCittc2dpZCAiIgorIlJlYWQgdGhlIGRlc2NyaXB0aW9uIG9mIHRoZSBjaGFuZ2VzIGZyb20gdGhlIGZpbGUgSTxjaGFuZ2VzZGVzY3JpcHRpb24+ICIKKyJyYXRoZXIgdGhhbiB1c2luZyB0aGUgaW5mb3JtYXRpb24gZnJvbSB0aGUgc291cmNlIHRyZWUncyBjaGFuZ2Vsb2cgZmlsZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6NjYKK21zZ2lkICIiCisiVXNlIEk8bWFpbnRhaW5lcmFkZHJlc3M+IGFzIHRoZSBuYW1lIGFuZCBlbWFpbCBhZGRyZXNzIG9mIHRoZSBtYWludGFpbmVyIGZvciAiCisidGhpcyBwYWNrYWdlLCByYXRoZXIgdGhhbiB1c2luZyB0aGUgaW5mb3JtYXRpb24gZnJvbSB0aGUgc291cmNlIHRyZWUncyAiCisiY29udHJvbCBmaWxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMTo3MgorbXNnaWQgIiIKKyJVc2UgSTxtYWludGFpbmVyYWRkcmVzcz4gYXMgdGhlIG5hbWUgYW5kIGVtYWlsIGFkZHJlc3Mgb2YgdGhlIG1haW50YWluZXIgZm9yICIKKyJ0aGlzIHVwbG9hZCwgcmF0aGVyIHRoYW4gdXNpbmcgdGhlIGluZm9ybWF0aW9uIGZyb20gdGhlIHNvdXJjZSB0cmVlJ3MgIgorImNoYW5nZWxvZy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjcyIGRwa2ctZ2VuY29udHJvbC4xOjQxIGRwa2ctc291cmNlLjE6MTI3CisjLCBuby13cmFwCittc2dpZCAiQjwtVj5JPG5hbWU+Qjw9Pkk8dmFsdWU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjc2IGRwa2ctc291cmNlLjE6MTMxCittc2dpZCAiIgorIlNldCBhbiBvdXRwdXQgc3Vic3RpdHV0aW9uIHZhcmlhYmxlLiAgU2VlIEI8ZGViLXN1YnN0dmFycz4oNSkgZm9yIGEgIgorImRpc2N1c3Npb24gb2Ygb3V0cHV0IHN1YnN0aXR1dGlvbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjc2IGRwa2ctZ2VuY29udHJvbC4xOjQ1IGRwa2ctc2hsaWJkZXBzLjE6MTY5CisjOiBkcGtnLXNvdXJjZS4xOjEzMQorIywgbm8td3JhcAorbXNnaWQgIkI8LVQ+STxzdWJzdHZhcnNmaWxlPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMTo4NgorbXNnaWQgIiIKKyJSZWFkIHN1YnN0aXR1dGlvbiB2YXJpYWJsZXMgaW4gSTxzdWJzdHZhcnNmaWxlPjsgdGhlIGRlZmF1bHQgaXMgQjxkZWJpYW4vIgorInN1YnN0dmFycz4uICBObyB2YXJpYWJsZSBzdWJzdGl0dXRpb24gaXMgZG9uZSBvbiBhbnkgb2YgdGhlIGZpZWxkcyB0aGF0IGFyZSAiCisib3V0cHV0LCBob3dldmVyIHRoZSBzcGVjaWFsIHZhcmlhYmxlIEk8Rm9ybWF0PiB3aWxsIG92ZXJyaWRlIHRoZSBmaWVsZCBvZiAiCisidGhlIHNhbWUgbmFtZS4gVGhpcyBvcHRpb24gY2FuIGJlIHVzZWQgbXVsdGlwbGUgdGltZXMgdG8gcmVhZCBzdWJzdGl0dXRpb24gIgorInZhcmlhYmxlcyBmcm9tIG11bHRpcGxlIGZpbGVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6ODcgZHBrZy1nZW5jb250cm9sLjE6NTMgZHBrZy1zb3VyY2UuMToxMzcKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtRD5JPGZpZWxkPkI8PT5JPHZhbHVlPiIKK21zZ3N0ciAiQjwtRD5JPG9jdGFsPkI8IHwgLS1kZWJ1Zz0+STxvY3RhbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjkwIGRwa2ctZ2VuY29udHJvbC4xOjU2IGRwa2ctc291cmNlLjE6MTQwCittc2dpZCAiT3ZlcnJpZGUgb3IgYWRkIGFuIG91dHB1dCBjb250cm9sIGZpbGUgZmllbGQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbmNoYW5nZXMuMTo5MCBkcGtnLWdlbmNvbnRyb2wuMTo1NiBkcGtnLXNvdXJjZS4xOjE0MAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1VPkk8ZmllbGQ+IgorbXNnc3RyICJCPC0tbG9nPT5JPGZpbGVuYW1lPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6OTMgZHBrZy1nZW5jb250cm9sLjE6NTkgZHBrZy1zb3VyY2UuMToxNDMKK21zZ2lkICJSZW1vdmUgYW4gb3V0cHV0IGNvbnRyb2wgZmlsZSBmaWVsZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjkzIGRwa2ctZ2VuY29udHJvbC4xOjU5IGRwa2ctc291cmNlLjE6MTA0CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LWM+STxjb250cm9sZmlsZT4iCittc2dzdHIgIkk8Y29udHJvbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjk4IGRwa2ctZ2VuY29udHJvbC4xOjY0Cittc2dpZCAiIgorIlNwZWNpZmllcyB0aGUgbWFpbiBzb3VyY2UgY29udHJvbCBmaWxlIHRvIHJlYWQgaW5mb3JtYXRpb24gZnJvbS4gVGhlIGRlZmF1bHQgIgorImlzIEI8ZGViaWFuL2NvbnRyb2w+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6OTggZHBrZy1nZW5jb250cm9sLjE6NjQgZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjE2CisjOiBkcGtnLXNvdXJjZS4xOjExMQorIywgbm8td3JhcAorbXNnaWQgIkI8LWw+STxjaGFuZ2Vsb2dmaWxlPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMToxMDMgZHBrZy1nZW5jb250cm9sLjE6NjkgZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjIxCittc2dpZCAiIgorIlNwZWNpZmllcyB0aGUgY2hhbmdlIGxvZyBmaWxlIHRvIHJlYWQgaW5mb3JtYXRpb24gZnJvbS4gVGhlIGRlZmF1bHQgaXMgIgorIkI8ZGViaWFuL2NoYW5nZWxvZz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjEwNworbXNnaWQgIiIKKyJSZWFkIHRoZSBsaXN0IG9mIGZpbGVzIHRvIGJlIHVwbG9hZGVkIGhlcmUsIHJhdGhlciB0aGFuIHVzaW5nIEI8ZGViaWFuLyIKKyJmaWxlcz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbmNoYW5nZXMuMToxMDcgZHBrZy1nZW5jb250cm9sLjE6NzMgZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjIxCisjOiBkcGtnLXNvdXJjZS4xOjExOAorIywgbm8td3JhcAorbXNnaWQgIkI8LUY+STxjaGFuZ2Vsb2dmb3JtYXQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjExMiBkcGtnLWdlbmNvbnRyb2wuMTo3OCBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MjYKKyM6IGRwa2ctc291cmNlLjE6MTIzCittc2dpZCAiIgorIlNwZWNpZmllcyB0aGUgZm9ybWF0IG9mIHRoZSBjaGFuZ2Vsb2cuIEJ5IGRlZmF1bHQgdGhlIGZvcm1hdCBpcyByZWFkIGZyb20gYSAiCisic3BlY2lhbCBsaW5lIG5lYXIgdGhlIGJvdHRvbSBvZiB0aGUgY2hhbmdlbG9nIG9yIGZhaWxpbmcgdGhhdCBkZWZhdWx0cyB0byAiCisidGhlIGRlYmlhbiBzdGFuZGFyZCBmb3JtYXQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbmNoYW5nZXMuMToxMTIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC11Pkk8dXBsb2FkZmlsZXNkaXI+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjEyMworbXNnaWQgIiIKKyJMb29rIGZvciB0aGUgZmlsZXMgdG8gYmUgdXBsb2FkZWQgaW4gSTx1cGxvYWRmaWxlc2Rpcj4gcmF0aGVyIHRoYW4gQjwuLj4gIgorIihCPGRwa2ctZ2VuY2hhbmdlcz4gbmVlZHMgdG8gZmluZCB0aGVzZSBmaWxlcyBzbyB0aGF0IGl0IGNhbiBpbmNsdWRlIHRoZWlyICIKKyJzaXplcyBhbmQgY2hlY2tzdW1zIGluIHRoZSBCPC5jaGFuZ2VzPiBmaWxlKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjEyMyBkcGtnLWdlbnN5bWJvbHMuMTo0MjEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtcT4iCittc2dzdHIgIkI8LUc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMToxMzEKK21zZ2lkICIiCisiVXN1YWxseSBCPGRwa2ctZ2VuY2hhbmdlcz4gd2lsbCBwcm9kdWNlIGluZm9ybWF0aXZlIG1lc3NhZ2VzIG9uIHN0YW5kYXJkICIKKyJlcnJvciwgZm9yIGV4YW1wbGUgYWJvdXQgaG93IG1hbnkgb2YgdGhlIHBhY2thZ2UncyBzb3VyY2UgZmlsZXMgYXJlIGJlaW5nICIKKyJ1cGxvYWRlZC4gIEI8LXE+IHN1cHByZXNzZXMgdGhlc2UgbWVzc2FnZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjE0NworbXNnaWQgIiIKKyJUaGUgbGlzdCBvZiBnZW5lcmF0ZWQgZmlsZXMgd2hpY2ggYXJlIHBhcnQgb2YgdGhlIHVwbG9hZCBiZWluZyBwcmVwYXJlZC4gICIKKyJCPGRwa2ctZ2VuY2hhbmdlcz4gcmVhZHMgdGhlIGRhdGEgaGVyZSB3aGVuIHByb2R1Y2luZyBhIEI8LmNoYW5nZXM+IGZpbGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLWdlbmNvbnRyb2wuMToxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgImRwa2ctZ2VuY29udHJvbCIKK21zZ3N0ciAiSTxjb250cm9sPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jb250cm9sLjE6NAorbXNnaWQgImRwa2ctZ2VuY29udHJvbCAtIGdlbmVyYXRlIERlYmlhbiBjb250cm9sIGZpbGVzIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjgKKyMsIGZ1enp5Cittc2dpZCAiQjxkcGtnLWdlbmNvbnRyb2w+IFtJPG9wdGlvbj4uLi5dIgorbXNnc3RyICJCPGRwa2c+IFtJPG9ww6fDtWVzPl0gSTxhw6fDo28+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMToxNAorbXNnaWQgIiIKKyJCPGRwa2ctZ2VuY29udHJvbD4gcmVhZHMgaW5mb3JtYXRpb24gZnJvbSBhbiB1bnBhY2tlZCBEZWJpYW4gc291cmNlIHRyZWUgYW5kICIKKyJnZW5lcmF0ZXMgYSBiaW5hcnkgcGFja2FnZSBjb250cm9sIGZpbGUgKHdoaWNoIGRlZmF1bHRzIHRvIGRlYmlhbi90bXAvREVCSUFOLyIKKyJjb250cm9sKTsgZHVyaW5nIHRoaXMgcHJvY2VzcyBpdCB3aWxsIHNpbXBsaWZ5IHRoZSByZWxhdGlvbiBmaWVsZHMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjI3Cittc2dpZCAiIgorIlRodXMgSTxQcmUtRGVwZW5kcz4sIEk8RGVwZW5kcz4sIEk8UmVjb21tZW5kcz4gYW5kIEk8U3VnZ2VzdHM+IGFyZSAiCisic2ltcGxpZmllZCBpbiB0aGlzIG9yZGVyIGJ5IHJlbW92aW5nIGRlcGVuZGVuY2llcyB3aGljaCBhcmUga25vd24gdG8gYmUgdHJ1ZSAiCisiYWNjb3JkaW5nIHRvIHRoZSBzdHJvbmdlciBkZXBlbmRlbmNpZXMgYWxyZWFkeSBwYXJzZWQuIEl0IHdpbGwgYWxzbyByZW1vdmUgIgorImFueSBzZWxmLWRlcGVuZGVuY3kgKGluIGZhY3QgaXQgd2lsbCByZW1vdmUgYW55IGRlcGVuZGVuY3kgd2hpY2ggZXZhbHVhdGVzICIKKyJ0byB0cnVlIGdpdmVuIHRoZSBjdXJyZW50IHZlcnNpb24gb2YgdGhlIHBhY2thZ2UgYXMgaW5zdGFsbGVkKS4gTG9naWNhbGx5IGl0ICIKKyJrZWVwcyB0aGUgaW50ZXJzZWN0aW9uIG9mIG11bHRpcGxlIGRlcGVuZGVuY2llcyBvbiB0aGUgc2FtZSBwYWNrYWdlLiBUaGUgIgorIm9yZGVyIG9mIGRlcGVuZGVuY2llcyBpcyBwcmVzZXJ2ZWQgYXMgYmVzdCBhcyBwb3NzaWJsZTogaWYgYW55IGRlcGVuZGVuY3kgIgorIm11c3QgYmUgZGlzY2FyZGVkIGR1ZSB0byBhbm90aGVyIGRlcGVuZGVuY3kgYXBwZWFyaW5nIGZ1cnRoZXIgaW4gdGhlIGZpZWxkLCAiCisidGhlIHN1cGVyc2VkaW5nIGRlcGVuZGVuY3kgd2lsbCB0YWtlIHRoZSBwbGFjZSBvZiB0aGUgZGlzY2FyZGVkIG9uZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jb250cm9sLjE6MzIKK21zZ2lkICIiCisiVGhlIG90aGVyIHJlbGF0aW9uIGZpZWxkcyAoSTxFbmhhbmNlcz4sIEk8Q29uZmxpY3RzPiwgSTxCcmVha3M+LCBJPFJlcGxhY2VzPiAiCisiYW5kIEk8UHJvdmlkZXM+KSAgYXJlIGFsc28gc2ltcGxpZmllZCBpbmRpdmlkdWFsbHkgYnkgY29tcHV0aW5nIHRoZSB1bmlvbiBvZiAiCisidGhlIHZhcmlvdXMgZGVwZW5kZW5jaWVzIHdoZW4gYSBwYWNrYWdlIGlzIGxpc3RlZCBtdWx0aXBsZSB0aW1lcyBpbiB0aGUgIgorImZpZWxkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMTozNgorbXNnaWQgIiIKKyJCPGRwa2ctZ2VuY29udHJvbD4gYWxzbyBhZGRzIGFuIGVudHJ5IGZvciB0aGUgYmluYXJ5IHBhY2thZ2UgdG8gQjxkZWJpYW4vIgorImZpbGVzPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jb250cm9sLjE6NDEKK21zZ2lkICJTZXRzIHRoZSB2ZXJzaW9uIG51bWJlciBvZiB0aGUgYmluYXJ5IHBhY2thZ2Ugd2hpY2ggd2lsbCBiZSBnZW5lcmF0ZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjQ1Cittc2dpZCAiIgorIlNldCBhbiBvdXRwdXQgc3Vic3RpdHV0aW9uIHZhcmlhYmxlLiBTZWUgQjxkZWItc3Vic3R2YXJzPig1KSBmb3IgZGlzY3Vzc2lvbiAiCisib2Ygb3V0cHV0IHN1YnN0aXR1dGlvbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jb250cm9sLjE6NTMKK21zZ2lkICIiCisiUmVhZCBzdWJzdGl0dXRpb24gdmFyaWFibGVzIGluIEk8c3Vic3R2YXJzZmlsZT47IHRoZSBkZWZhdWx0IGlzIEI8ZGViaWFuLyIKKyJzdWJzdHZhcnM+LiAgVGhpcyBvcHRpb24gY2FuIGJlIHVzZWQgbXVsdGlwbGUgdGltZXMgdG8gcmVhZCBzdWJzdGl0dXRpb24gIgorInZhcmlhYmxlcyBmcm9tIG11bHRpcGxlIGZpbGVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5jb250cm9sLjE6NzggZHBrZy1nZW5zeW1ib2xzLjE6MzczCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LXA+STxwYWNrYWdlPiIKK21zZ3N0ciAiQjx1bnBhY2tlZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjg1Cittc2dpZCAiIgorIkdlbmVyYXRlIGluZm9ybWF0aW9uIGZvciB0aGUgYmluYXJ5IHBhY2thZ2UgSTxwYWNrYWdlPi4gIElmIHRoZSBzb3VyY2UgIgorImNvbnRyb2wgZmlsZSBsaXN0cyBvbmx5IG9uZSBiaW5hcnkgcGFja2FnZSB0aGVuIHRoaXMgb3B0aW9uIG1heSBiZSBvbWl0dGVkOyAiCisib3RoZXJ3aXNlIGl0IGlzIGVzc2VudGlhbCB0byBzZWxlY3Qgd2hpY2ggYmluYXJ5IHBhY2thZ2UncyBpbmZvcm1hdGlvbiB0byAiCisiZ2VuZXJhdGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbmNvbnRyb2wuMTo4NQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1uPkk8ZmlsZW5hbWU+IgorbXNnc3RyICJCPC0tbG9nPT5JPGZpbGVuYW1lPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jb250cm9sLjE6OTAKK21zZ2lkICIiCisiQXNzdW1lIHRoZSBmaWxlbmFtZSBvZiB0aGUgcGFja2FnZSB3aWxsIGJlIEk8ZmlsZW5hbWU+IGluc3RlYWQgb2YgdGhlIG5vcm1hbCAiCisicGFja2FnZV92ZXJzaW9uX2FyY2guZGViIGZpbGVuYW1lLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5jb250cm9sLjE6OTAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1pcz4sIEI8LWlwPiwgQjwtaXNwPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMTo5OQorbXNnaWQgIiIKKyJUaGVzZSBvcHRpb25zIGFyZSBpZ25vcmVkIGZvciBjb21wYXRpYmlsaXR5IHdpdGggb2xkZXIgdmVyc2lvbnMgb2YgZHBrZy1kZXYgIgorImJ1dCBhcmUgbm93IGRlcHJlY2F0ZWQuIFByZXZpb3VzbHkgdGhleSB3ZXJlIHVzZWQgdG8gdGVsbCBkcGtnLWdlbmNvbnRyb2wgdG8gIgorImluY2x1ZGUgdGhlIFNlY3Rpb24gYW5kIFByaW9yaXR5IGZpZWxkcyBpbiB0aGUgY29udHJvbCBmaWxlLiBUaGlzIGlzIG5vdyB0aGUgIgorImRlZmF1bHQgYmVoYXZpb3VyLiBJZiB5b3Ugd2FudCB0byBnZXQgdGhlIG9sZCBiZWhhdmlvdXIgeW91IGNhbiB1c2UgdGhlIEI8LSIKKyJVPiBvcHRpb24gdG8gZGVsZXRlIHRoZSBmaWVsZHMgZnJvbSB0aGUgY29udHJvbCBmaWxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5jb250cm9sLjE6OTkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1QPkk8cGFja2FnZWJ1aWxkZGlyPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMToxMTIKK21zZ2lkICIiCisiVGVsbHMgQjxkcGtnLXNvdXJjZT4gdGhhdCB0aGUgcGFja2FnZSBpcyBiZWluZyBidWlsdCBpbiBJPHBhY2thZ2VidWlsZGRpcj4gIgorImluc3RlYWQgb2YgQjxkZWJpYW4vdG1wPi4gIFRoaXMgdmFsdWUgaXMgdXNlZCB0byBmaW5kIHRoZSBkZWZhdWx0IHZhbHVlIG9mICIKKyJ0aGUgQjxJbnN0YWxsZWQtU2l6ZT4gc3Vic3RpdHV0aW9uIHZhcmlhYmxlIGFuZCBjb250cm9sIGZpbGUgZmllbGQgKHVzaW5nICIKKyJCPGR1PiksIGFuZCBmb3IgdGhlIGRlZmF1bHQgbG9jYXRpb24gb2YgdGhlIG91dHB1dCBmaWxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5jb250cm9sLjE6MTEyIGRwa2ctZ2Vuc3ltYm9scy4xOjM5MSBkcGtnLXNobGliZGVwcy4xOjE1MAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1PPiIKK21zZ3N0ciAiQjwtRz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjEyMQorbXNnaWQgIiIKKyJQcmludCB0aGUgY29udHJvbCBmaWxlIHRvIHN0YW5kYXJkIG91dHB1dCwgcmF0aGVyIHRoYW4gdG8gQjxkZWJpYW4vdG1wLyIKKyJERUJJQU4vY29udHJvbD4gKG9yIEk8cGFja2FnZWJ1aWxkZGlyPkI8L0RFQklBTi9jb250cm9sPiBpZiBCPC1QPiB3YXMgdXNlZCkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbmNvbnRyb2wuMToxMjkKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxkZWJpYW4vY29udHJvbD4iCittc2dzdHIgIkk8Y29udHJvbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjEzNAorbXNnaWQgIiIKKyJUaGUgbWFpbiBzb3VyY2UgY29udHJvbCBpbmZvcm1hdGlvbiBmaWxlLCBnaXZpbmcgdmVyc2lvbi1pbmRlcGVuZGVudCAiCisiaW5mb3JtYXRpb24gYWJvdXQgdGhlIHNvdXJjZSBwYWNrYWdlIGFuZCB0aGUgYmluYXJ5IHBhY2thZ2VzIGl0IGNhbiBwcm9kdWNlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMToxNDEKK21zZ2lkICIiCisiVGhlIGxpc3Qgb2YgZ2VuZXJhdGVkIGZpbGVzIHdoaWNoIGFyZSBwYXJ0IG9mIHRoZSB1cGxvYWQgYmVpbmcgcHJlcGFyZWQuICAiCisiQjxkcGtnLWdlbmNvbnRyb2w+IGFkZHMgdGhlIHByZXN1bWVkIGZpbGVuYW1lcyBvZiBiaW5hcnkgcGFja2FnZXMgd2hvc2UgIgorImNvbnRyb2wgZmlsZXMgaXQgZ2VuZXJhdGVzIGhlcmUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjE0OCBkcGtnLXNobGliZGVwcy4xOjMzNworbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDA3LTIwMDggUmFwaGFcXFs6ZV1sIEhlcnR6b2ciCittc2dzdHIgIiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjIKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiZHBrZy1nZW5zeW1ib2xzIgorbXNnc3RyICJJPGNvbnRyb2w+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo1Cittc2dpZCAiIgorImRwa2ctZ2Vuc3ltYm9scyAtIGdlbmVyYXRlIHN5bWJvbHMgZmlsZXMgKHNoYXJlZCBsaWJyYXJ5IGRlcGVuZGVuY3kgIgorImluZm9ybWF0aW9uKSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo5CisjLCBmdXp6eQorbXNnaWQgIkI8ZHBrZy1nZW5zeW1ib2xzPiBbSTxvcHRpb24+Li4uXSIKK21zZ3N0ciAiQjxkcGtnPiBbSTxvcMOnw7Vlcz5dIEk8YcOnw6NvPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTYKK21zZ2lkICIiCisiQjxkcGtnLWdlbnN5bWJvbHM+IHNjYW5zIGEgdGVtcG9yYXJ5IGJ1aWxkIHRyZWUgKGRlYmlhbi90bXAgYnkgZGVmYXVsdCkgIgorImxvb2tpbmcgZm9yIGxpYnJhcmllcyBhbmQgZ2VuZXJhdGUgYSBJPHN5bWJvbHM+IGZpbGUgZGVzY3JpYmluZyB0aGVtLiBUaGlzICIKKyJmaWxlLCBpZiBub24tZW1wdHksIGlzIHRoZW4gaW5zdGFsbGVkIGluIHRoZSBERUJJQU4gc3ViZGlyZWN0b3J5IG9mIHRoZSAiCisiYnVpbGQgdHJlZSBzbyB0aGF0IGl0IGVuZHMgdXAgaW5jbHVkZWQgaW4gdGhlIGNvbnRyb2wgaW5mb3JtYXRpb24gb2YgdGhlICIKKyJwYWNrYWdlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyMAorbXNnaWQgIiIKKyJXaGVuIGdlbmVyYXRpbmcgdGhvc2UgZmlsZXMsIGl0IHVzZXMgYXMgaW5wdXQgc29tZSBzeW1ib2xzIGZpbGVzIHByb3ZpZGVkIGJ5ICIKKyJ0aGUgbWFpbnRhaW5lci4gSXQgbG9va3MgZm9yIHRoZSBmb2xsb3dpbmcgZmlsZXMgKGFuZCB1c2UgdGhlIGZpcnN0IHRoYXQgaXMgIgorImZvdW5kKToiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjIKK21zZ2lkICJkZWJpYW4vSTxwYWNrYWdlPi5zeW1ib2xzLkk8YXJjaD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjQKKyMsIGZ1enp5Cittc2dpZCAiZGViaWFuL3N5bWJvbHMuSTxhcmNoPiIKK21zZ3N0ciAiQjxkZWluc3RhbGw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyNgorbXNnaWQgImRlYmlhbi9JPHBhY2thZ2U+LnN5bWJvbHMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjgKKyMsIGZ1enp5Cittc2dpZCAiZGViaWFuL3N5bWJvbHMiCittc2dzdHIgIkI8Y29uZmlnLWZpbGVzPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzYKK21zZ2lkICIiCisiVGhlIG1haW4gaW50ZXJlc3Qgb2YgdGhvc2UgZmlsZXMgaXMgdG8gcHJvdmlkZSB0aGUgbWluaW1hbCB2ZXJzaW9uICIKKyJhc3NvY2lhdGVkIHRvIGVhY2ggc3ltYm9sIHByb3ZpZGVkIGJ5IHRoZSBsaWJyYXJpZXMuIFVzdWFsbHkgaXQgY29ycmVzcG9uZHMgIgorInRvIHRoZSBmaXJzdCB2ZXJzaW9uIG9mIHRoYXQgcGFja2FnZSB0aGF0IHByb3ZpZGVkIHRoZSBzeW1ib2wsIGJ1dCBpdCBjYW4gYmUgIgorIm1hbnVhbGx5IGluY3JlbWVudGVkIGJ5IHRoZSBtYWludGFpbmVyIGlmIHRoZSBBQkkgb2YgdGhlIHN5bWJvbCBpcyBleHRlbmRlZCAiCisid2l0aG91dCBicmVha2luZyBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eS4gSXQncyB0aGUgcmVzcG9uc2liaWxpdHkgb2YgdGhlICIKKyJtYWludGFpbmVyIHRvIGtlZXAgdGhvc2UgZmlsZXMgdXAtdG8tZGF0ZSBhbmQgYWNjdXJhdGUsIGJ1dCBCPGRwa2ctIgorImdlbnN5bWJvbHM+IGhlbHBzIGhpbS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDIKK21zZ2lkICIiCisiV2hlbiB0aGUgZ2VuZXJhdGVkIHN5bWJvbHMgZmlsZXMgZGlmZmVyIGZyb20gdGhlIG1haW50YWluZXIgc3VwcGxpZWQgb25lLCAiCisiQjxkcGtnLWdlbnN5bWJvbHM+IHdpbGwgcHJpbnQgYSBkaWZmIGJldHdlZW4gdGhlIHR3byB2ZXJzaW9ucy4gIEZ1cnRoZXJtb3JlICIKKyJpZiB0aGUgZGlmZmVyZW5jZSBpcyB0b28gc2lnbmlmaWNhbnQsIGl0IHdpbGwgZXZlbiBmYWlsICh5b3UgY2FuIGN1c3RvbWl6ZSAiCisiaG93IG11Y2ggZGlmZmVyZW5jZSB5b3UgY2FuIHRvbGVyYXRlLCBzZWUgdGhlIEI8LWM+IG9wdGlvbikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0MgorIywgbm8td3JhcAorbXNnaWQgIk1BSU5UQUlOSU5HIFNZTUJPTFMgRklMRVMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NTUKK21zZ2lkICIiCisiVGhlIHN5bWJvbHMgZmlsZXMgYXJlIHJlYWxseSB1c2VmdWwgb25seSBpZiB0aGV5IHJlZmxlY3QgdGhlIGV2b2x1dGlvbiBvZiAiCisidGhlIHBhY2thZ2UgdGhyb3VnaCBzZXZlcmFsIHJlbGVhc2VzLiBUaHVzIHRoZSBtYWludGFpbmVyIGhhcyB0byB1cGRhdGUgdGhlbSAiCisiZXZlcnkgdGltZSB0aGF0IGEgbmV3IHN5bWJvbCBpcyBhZGRlZCBzbyB0aGF0IGl0cyBhc3NvY2lhdGVkIG1pbmltYWwgdmVyc2lvbiAiCisibWF0Y2hlcyByZWFsaXR5LiBUbyBkbyB0aGlzIHByb3Blcmx5IGhlIGNhbiB1c2UgdGhlIGRpZmZzIGNvbnRhaW5lZCBpbiB0aGUgIgorImJ1aWxkIGxvZ3MuIEluIG1vc3QgY2FzZXMsIHRoZSBkaWZmIGFwcGxpZXMgZGlyZWN0bHkgdG8gaGlzIGRlYmlhbi8iCisiSTxwYWNrYWdlPi5zeW1ib2xzIGZpbGUuIFRoYXQgc2FpZCwgZnVydGhlciB0d2Vha3MgYXJlIHVzdWFsbHkgbmVlZGVkOiBpdCdzICIKKyJyZWNvbW1lbmRlZCBmb3IgZXhhbXBsZSB0byBkcm9wIHRoZSBEZWJpYW4gcmV2aXNpb24gZnJvbSB0aGUgbWluaW1hbCB2ZXJzaW9uICIKKyJzbyB0aGF0IGJhY2twb3J0cyB3aXRoIGEgbG93ZXIgdmVyc2lvbiBudW1iZXIgYnV0IHRoZSBzYW1lIHVwc3RyZWFtIHZlcnNpb24gIgorInN0aWxsIHNhdGlzZnkgdGhlIGdlbmVyYXRlZCBkZXBlbmRlbmNpZXMuICBJZiB0aGUgRGViaWFuIHJldmlzaW9uIGNhbid0IGJlICIKKyJkcm9wcGVkIGJlY2F1c2UgdGhlIHN5bWJvbCByZWFsbHkgZ290IGFkZGVkIGJ5IHRoZSBEZWJpYW4gc3BlY2lmaWMgY2hhbmdlLCAiCisidGhlbiBvbmUgc2hvdWxkIHN1ZmZpeCB0aGUgdmVyc2lvbiB3aXRoIFwiflwiLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo1OQorbXNnaWQgIiIKKyJCZWZvcmUgYXBwbHlpbmcgYW55IHBhdGNoIHRvIHRoZSBzeW1ib2xzIGZpbGUsIHRoZSBtYWludGFpbmVyIHNob3VsZCBkb3VibGUtIgorImNoZWNrIHRoYXQgaXQncyBzYW5lLiBQdWJsaWMgc3ltYm9scyBhcmUgbm90IHN1cHBvc2VkIHRvIGRpc2FwcGVhciwgc28gdGhlICIKKyJwYXRjaCBzaG91bGQgaWRlYWxseSBvbmx5IGFkZCBuZXcgbGluZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjY0Cittc2dpZCAiIgorIk5vdGUgdGhhdCB5b3UgY2FuIHB1dCBjb21tZW50cyBpbiBzeW1ib2xzIGZpbGVzOiBhbnkgbGluZSB3aXRoICcjJyBhcyB0aGUgIgorImZpcnN0IGNoYXJhY3RlciBpcyBhIGNvbW1lbnQgZXhjZXB0IGlmIGl0IHN0YXJ0cyB3aXRoICcjaW5jbHVkZScgKHNlZSAiCisic2VjdGlvbiBCPFVzaW5nIGluY2x1ZGVzPikuIExpbmVzIHN0YXJ0aW5nIHdpdGggJyNNSVNTSU5HOicgYXJlIHNwZWNpYWwgIgorImNvbW1lbnRzIGRvY3VtZW50aW5nIHN5bWJvbHMgdGhhdCBoYXZlIGRpc2FwcGVhcmVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1nZW5zeW1ib2xzLjE6NjQKKyMsIG5vLXdyYXAKK21zZ2lkICJVc2luZyAjUEFDS0FHRSMgc3Vic3RpdHV0aW9uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjcyCittc2dpZCAiIgorIkluIHNvbWUgcmFyZSBjYXNlcywgdGhlIG5hbWUgb2YgdGhlIGxpYnJhcnkgdmFyaWVzIGJldHdlZW4gYXJjaGl0ZWN0dXJlcy4gICIKKyJUbyBhdm9pZCBoYXJkY29kaW5nIHRoZSBuYW1lIG9mIHRoZSBwYWNrYWdlIGluIHRoZSBzeW1ib2xzIGZpbGUsIHlvdSBjYW4gdXNlICIKKyJ0aGUgbWFya2VyIEk8I1BBQ0tBR0UjPi4gSXQgd2lsbCBiZSByZXBsYWNlZCBieSB0aGUgcmVhbCBwYWNrYWdlIG5hbWUgZHVyaW5nICIKKyJpbnN0YWxsYXRpb24gb2YgdGhlIHN5bWJvbHMgZmlsZXMuIENvbnRyYXJ5IHRvIHRoZSBJPCNNSU5WRVIjPiBtYXJrZXIsICIKKyJJPCNQQUNLQUdFIz4gd2lsbCBuZXZlciBhcHBlYXIgaW4gYSBzeW1ib2xzIGZpbGUgaW5zaWRlIGEgYmluYXJ5IHBhY2thZ2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLWdlbnN5bWJvbHMuMTo3MgorIywgbm8td3JhcAorbXNnaWQgIlVzaW5nIHN5bWJvbCB0YWdzIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjc5Cittc2dpZCAiIgorIlN5bWJvbCB0YWdnaW5nIGlzIHVzZWZ1bCBmb3IgbWFya2luZyBzeW1ib2xzIHRoYXQgYXJlIHNwZWNpYWwgaW4gc29tZSB3YXkuICAiCisiQW55IHN5bWJvbCBjYW4gaGF2ZSBhbiBhcmJpdHJhcnkgbnVtYmVyIG9mIHRhZ3MgYXNzb2NpYXRlZCB3aXRoIGl0LiBXaGlsZSAiCisiYWxsIHRhZ3MgYXJlIHBhcnNlZCBhbmQgc3RvcmVkLCBvbmx5IGEgc29tZSBvZiB0aGVtIGFyZSB1bmRlcnN0b29kIGJ5IEI8ZHBrZy0iCisiZ2Vuc3ltYm9scz4gYW5kIHRyaWdnZXIgc3BlY2lhbCBoYW5kbGluZyBvZiB0aGUgc3ltYm9scy4gU2VlIHN1YnNlY3Rpb24gIgorIkI8U3RhbmRhcmQgc3ltYm9sIHRhZ3M+IGZvciByZWZlcmVuY2Ugb2YgdGhlc2UgdGFncy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6OTEKK21zZ2lkICIiCisiVGFnIHNwZWNpZmljYXRpb24gY29tZXMgcmlnaHQgYmVmb3JlIHRoZSBzeW1ib2wgbmFtZSAobm8gd2hpdGVzcGFjZSBpcyAiCisiYWxsb3dlZCBpbiBiZXR3ZWVuKS4gSXQgYWx3YXlzIHN0YXJ0cyB3aXRoIGFuIG9wZW5pbmcgYnJhY2tldCBCPCg+LCBlbmRzICIKKyJ3aXRoIGEgY2xvc2luZyBicmFja2V0IEI8KT4gYW5kIG11c3QgY29udGFpbiBhdCBsZWFzdCBvbmUgdGFnLiBNdWx0aXBsZSB0YWdzICIKKyJhcmUgc2VwYXJhdGVkIGJ5IHRoZSBCPHw+IGNoYXJhY3Rlci4gRWFjaCB0YWcgY2FuIG9wdGlvbmFsbHkgaGF2ZSBhIHZhbHVlICIKKyJ3aGljaCBpcyBzZXBhcmF0ZWQgZm9ybSB0aGUgdGFnIG5hbWUgYnkgdGhlIEI8PT4gY2hhcmFjdGVyLiBUYWcgbmFtZXMgYW5kICIKKyJ2YWx1ZXMgY2FuIGJlIGFyYml0cmFyeSBzdHJpbmdzIGV4Y2VwdCB0aGV5IGNhbm5vdCBjb250YWluIGFueSBvZiB0aGUgIgorInNwZWNpYWwgQjwpPiBCPHw+IEI8PT4gY2hhcmFjdGVycy4gU3ltYm9sIG5hbWVzIGZvbGxvd2luZyBhIHRhZyAiCisic3BlY2lmaWNhdGlvbiBjYW4gb3B0aW9uYWxseSBiZSBxdW90ZWQgd2l0aCBlaXRoZXIgQjwnPiBvciBCPFwiPiBjaGFyYWN0ZXJzICIKKyJ0byBhbGxvdyB3aGl0ZXNwYWNlcyBpbiB0aGVtLiBIb3dldmVyLCBpZiB0aGVyZSBhcmUgbm8gdGFncyBzcGVjaWZpZWQgZm9yICIKKyJ0aGUgc3ltYm9sLCBxdW90ZXMgYXJlIHRyZWF0ZWQgYXMgcGFydCBvZiB0aGUgc3ltYm9sIG5hbWUgd2hpY2ggY29udGludWVzIHVwICIKKyJ1bnRpbCB0aGUgZmlyc3Qgc3BhY2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjk1CisjLCBuby13cmFwCittc2dpZCAiIgorIiAodGFnMT1pIGFtIG1hcmtlZHx0YWcgbmFtZSB3aXRoIHNwYWNlKVwidGFnZ2VkIHF1b3RlZCBzeW1ib2xcIkBCYXNlIDEuMFxuIgorIiAob3B0aW9uYWwpdGFnZ2VkX3VucXVvdGVkX3N5bWJvbEBCYXNlIDEuMCAxXG4iCisiIHVudGFnZ2VkX3N5bWJvbEBCYXNlIDEuMFxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjEwMQorbXNnaWQgIiIKKyJUaGUgZmlyc3Qgc3ltYm9sIGluIHRoZSBleGFtcGxlIGlzIG5hbWVkIEk8dGFnZ2VkIHF1b3RlZCBzeW1ib2w+IGFuZCBoYXMgdHdvICIKKyJ0YWdzOiBJPHRhZzE+IHdpdGggdmFsdWUgSTxpIGFtIG1hcmtlZD4gYW5kIEk8dGFnIG5hbWUgd2l0aCBzcGFjZT4gdGhhdCBoYXMgIgorIm5vIHZhbHVlLiBUaGUgc2Vjb25kIHN5bWJvbCBuYW1lZCBJPHRhZ2dlZF91bnF1b3RlZF9zeW1ib2w+IGlzIG9ubHkgdGFnZ2VkICIKKyJ3aXRoIHRoZSB0YWcgbmFtZWQgSTxvcHRpb25hbD4uIFRoZSBsYXN0IHN5bWJvbCBpcyBhbiBleGFtcGxlIG9mIHRoZSBub3JtYWwgIgorInVudGFnZ2VkIHN5bWJvbC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTEzCittc2dpZCAiIgorIlNpbmNlIHN5bWJvbCB0YWdzIGFyZSBhbiBleHRlbnNpb24gb2YgdGhlIEk8ZGViLXN5bWJvbHMoNSk+IGZvcm1hdCwgdGhleSBjYW4gIgorIm9ubHkgYmUgcGFydCBvZiB0aGUgc3ltYm9scyBmaWxlcyB1c2VkIGluIHNvdXJjZSBwYWNrYWdlcyAodGhvc2UgZmlsZXMgIgorInNob3VsZCB0aGVuIGJlIHNlZW4gYXMgdGVtcGxhdGVzIHVzZWQgdG8gYnVpbGQgdGhlIHN5bWJvbHMgZmlsZXMgdGhhdCBhcmUgIgorImVtYmVkZGVkIGluIGJpbmFyeSBwYWNrYWdlcykuIFdoZW4gQjxkcGtnLWdlbnN5bWJvbHM+IGlzIGNhbGxlZCB3aXRob3V0IHRoZSAiCisiSTwtdD4gb3B0aW9uLCBpdCB3aWxsIG91dHB1dCBzeW1ib2xzIGZpbGVzIGNvbXBhdGlibGUgdG8gdGhlIEk8ZGViLXN5bWJvbHMoNSkiCisiPiBmb3JtYXQ6IGl0IGZ1bGx5IHByb2Nlc3NlcyBzeW1ib2xzIGFjY29yZGluZyB0byB0aGUgcmVxdWlyZW1lbnRzIG9mIHRoZWlyICIKKyJzdGFuZGFyZCB0YWdzIGFuZCBzdHJpcHMgYWxsIHRhZ3MgZnJvbSB0aGUgb3V0cHV0LiBPbiB0aGUgY29udHJhcnksIGluICIKKyJ0ZW1wbGF0ZSBtb2RlIChJPC10PikgYWxsIHN5bWJvbHMgYW5kIHRoZWlyIHRhZ3MgKGJvdGggc3RhbmRhcmQgYW5kIHVua25vd24gIgorIm9uZXMpICBhcmUga2VwdCBpbiB0aGUgb3V0cHV0IGFuZCBhcmUgd3JpdHRlbiBpbiB0aGVpciBvcmlnaW5hbCBmb3JtIGFzIHRoZXkgIgorIndlcmUgbG9hZGVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1nZW5zeW1ib2xzLjE6MTEzCisjLCBuby13cmFwCittc2dpZCAiU3RhbmRhcmQgc3ltYm9sIHRhZ3MiCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjExNAorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPG5vdC1pbnN0YWxsZWQ+IgorbXNnaWQgIkI8b3B0aW9uYWw+IgorbXNnc3RyICJCPG5vdC1pbnN0YWxsZWQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToxMjQKK21zZ2lkICIiCisiQSBzeW1ib2wgbWFya2VkIGFzIG9wdGlvbmFsIGNhbiBkaXNhcHBlYXIgZnJvbSB0aGUgbGlicmFyeSBhdCBhbnkgdGltZSBhbmQgIgorInRoYXQgd2lsbCBuZXZlciBjYXVzZSBCPGRwa2ctZ2Vuc3ltYm9scz4gdG8gZmFpbC4gSG93ZXZlciwgZGlzYXBwZWFyZWQgIgorIm9wdGlvbmFsIHN5bWJvbHMgd2lsbCBjb250aW51b3VzbHkgYXBwZWFyIGFzIE1JU1NJTkcgaW4gdGhlIGRpZmYgaW4gZWFjaCBuZXcgIgorInBhY2thZ2UgcmV2aXNpb24uICBUaGlzIGJlaGF2aW91ciBzZXJ2ZXMgYXMgYSByZW1pbmRlciBmb3IgdGhlIG1haW50YWluZXIgIgorInRoYXQgc3VjaCBhIHN5bWJvbCBuZWVkcyB0byBiZSByZW1vdmVkIGZyb20gdGhlIHN5bWJvbCBmaWxlIG9yIHJlYWRkZWQgdG8gIgorInRoZSBsaWJyYXJ5LiBXaGVuIHRoZSBvcHRpb25hbCBzeW1ib2wsIHdoaWNoIHdhcyBwcmV2aW91c2x5IGRlY2xhcmVkIGFzICIKKyJNSVNTSU5HLCBzdWRkZW5seSByZWFwcGVhcnMgaW4gdGhlIG5leHQgcmV2aXNpb24sIGl0IHdpbGwgYmUgdXBncmFkZWQgYmFjayAiCisidG8gdGhlIFwiZXhpc3RpbmdcIiBzdGF0dXMgd2l0aCBpdHMgbWluaW11bSB2ZXJzaW9uIHVuY2hhbmdlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTI5Cittc2dpZCAiIgorIlRoaXMgdGFnIGlzIHVzZWZ1bCBmb3Igc3ltYm9scyB3aGljaCBhcmUgcHJpdmF0ZSB3aGVyZSB0aGVpciBkaXNhcHBlYXJhbmNlICIKKyJkbyBub3QgY2F1c2UgQUJJIGJyZWFrYWdlLiBGb3IgZXhhbXBsZSwgbW9zdCBvZiBDKysgdGVtcGxhdGUgaW5zdGFudGlhdGlvbnMgIgorImZhbGwgaW50byB0aGlzIGNhdGVnb3J5LiBMaWtlIGFueSBvdGhlciB0YWcsIHRoaXMgb25lIG1heSBhbHNvIGhhdmUgYW4gIgorImFyYml0cmFyeSB2YWx1ZTogaXQgY291bGQgYmUgdXNlZCB0byBpbmRpY2F0ZSB3aHkgdGhlIHN5bWJvbCBpcyBjb25zaWRlcmVkICIKKyJvcHRpb25hbC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjEyOQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPGFyY2g9Pkk8YXJjaGl0ZWN0dXJlIGxpc3Q+IgorbXNnc3RyICJCPGRwa2cgLS1wcmludC1hcmNoaXRlY3R1cmU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToxNDIKK21zZ2lkICIiCisiVGhpcyB0YWcgYWxsb3dzIG9uZSB0byByZXN0cmljdCB0aGUgc2V0IG9mIGFyY2hpdGVjdHVyZXMgd2hlcmUgdGhlIHN5bWJvbCBpcyAiCisic3VwcG9zZWQgdG8gZXhpc3QuIFdoZW4gdGhlIHN5bWJvbHMgbGlzdCBpcyB1cGRhdGVkIHdpdGggdGhlIHN5bWJvbHMgIgorImRpc2NvdmVyZWQgaW4gdGhlIGxpYnJhcnksIGFsbCBhcmNoLXNwZWNpZmljIHN5bWJvbHMgd2hpY2ggZG8gbm90IGNvbmNlcm4gIgorInRoZSBjdXJyZW50IGhvc3QgYXJjaGl0ZWN0dXJlIGFyZSB0cmVhdGVkIGFzIGlmIHRoZXkgZGlkIG5vdCBleGlzdC4gSWYgYW4gIgorImFyY2gtc3BlY2lmaWMgc3ltYm9sIG1hdGNoaW5nIHRoZSBjdXJyZW50IGhvc3QgYXJjaGl0ZWN0dXJlIGRvZXMgbm90IGV4aXN0ICIKKyJpbiB0aGUgbGlicmFyeSwgbm9ybWFsIHByb2NlZHVyZXMgZm9yIG1pc3Npbmcgc3ltYm9scyBhcHBseSBhbmQgaXQgbWF5IGNhdXNlICIKKyJCPGRwa2ctZ2Vuc3ltYm9scz4gdG8gZmFpbC4gT24gdGhlIG90aGVyIGhhbmQsIGlmIHRoZSBhcmNoLXNwZWNpZmljIHN5bWJvbCAiCisiaXMgZm91bmQgd2hlbiBpdCB3YXMgbm90IHN1cHBvc2VkIHRvIGV4aXN0IChiZWNhdXNlIHRoZSBjdXJyZW50IGhvc3QgIgorImFyY2hpdGVjdHVyZSBpcyBub3QgbGlzdGVkIGluIHRoZSB0YWcpLCBpdCBpcyBtYWRlIGFyY2ggbmV1dHJhbCAoaS5lLiB0aGUgIgorImFyY2ggdGFnIGlzIGRyb3BwZWQgYW5kIHRoZSBzeW1ib2wgd2lsbCBhcHBlYXIgaW4gdGhlIGRpZmYgZHVlIHRvIHRoaXMgIgorImNoYW5nZSksIGJ1dCBpdCBpcyBub3QgY29uc2lkZXJlZCBhcyBuZXcuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjE0OAorbXNnaWQgIiIKKyJXaGVuIG9wZXJhdGluZyBpbiB0aGUgZGVmYXVsdCBub24tdGVtcGxhdGUgbW9kZSwgYW1vbmcgYXJjaC1zcGVjaWZpYyBzeW1ib2xzICIKKyJvbmx5IHRob3NlIHRoYXQgbWF0Y2ggdGhlIGN1cnJlbnQgaG9zdCBhcmNoaXRlY3R1cmUgYXJlIHdyaXR0ZW4gdG8gdGhlICIKKyJzeW1ib2xzIGZpbGUuIE9uIHRoZSBjb250cmFyeSwgYWxsIGFyY2gtc3BlY2lmaWMgc3ltYm9scyAoaW5jbHVkaW5nIHRob3NlICIKKyJmcm9tIGZvcmVpZ24gYXJjaGVzKSBhcmUgYWx3YXlzIHdyaXR0ZW4gdG8gdGhlIHN5bWJvbCBmaWxlIHdoZW4gb3BlcmF0aW5nIGluICIKKyJ0ZW1wbGF0ZSBtb2RlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToxNTQKK21zZ2lkICIiCisiVGhlIGZvcm1hdCBvZiBJPGFyY2hpdGVjdHVyZSBsaXN0PiBpcyB0aGUgc2FtZSBhcyB0aGUgb25lIHVzZWQgaW4gdGhlICIKKyJJPEJ1aWxkLURlcGVuZHM+IGZpZWxkIG9mIEk8ZGViaWFuL2NvbnRyb2w+IChleGNlcHQgdGhlIGVuY2xvc2luZyBzcXVhcmUgIgorImJyYWNrZXRzIFtdKS4gRm9yIGV4YW1wbGUsIHRoZSBmaXJzdCBzeW1ib2wgZnJvbSB0aGUgbGlzdCBiZWxvdyB3aWxsIGJlICIKKyJjb25zaWRlcmVkIG9ubHkgb24gYWxwaGEsIGFtZDY0LCBrZnJlZWJzZC1hbWQ2NCBhbmQgaWE2NCBhcmNoaXRlY3R1cmVzIHdoaWxlICIKKyJ0aGUgc2Vjb25kIG9uZSBhbnl3aGVyZSBleGNlcHQgb24gYXJtZWwuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjE1NworIywgbm8td3JhcAorbXNnaWQgIiIKKyIgKGFyY2g9YWxwaGEgYW1kNjQga2ZyZWVic2QtYW1kNjQgaWE2NClhXzY0Yml0X3NwZWNpZmljX3N5bWJvbEBCYXNlIDEuMFxuIgorIiAoYXJjaD0hYXJtZWwpc3ltYm9sX2FybWVsX2RvZXNfbm90X2hhdmVAQmFzZSAxLjBcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTU3CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8aWdub3JlLWJsYWNrbGlzdD4iCittc2dzdHIgIkI8LS1ub2NoZWNrPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTY1Cittc2dpZCAiIgorImRwa2ctZ2Vuc3ltYm9scyBoYXMgYW4gaW50ZXJuYWwgYmxhY2tsaXN0IG9mIHN5bWJvbHMgdGhhdCBzaG91bGQgbm90IGFwcGVhciAiCisiaW4gc3ltYm9scyBmaWxlcyBhcyB0aGV5IGFyZSB1c3VhbGx5IG9ubHkgc2lkZS1lZmZlY3RzIG9mIGltcGxlbWVudGF0aW9uICIKKyJkZXRhaWxzIG9mIHRoZSB0b29sY2hhaW4uIElmIGZvciBzb21lIHJlYXNvbiwgeW91IHJlYWxseSB3YW50IG9uZSBvZiB0aG9zZSAiCisic3ltYm9scyB0byBiZSBpbmNsdWRlZCBpbiB0aGUgc3ltYm9scyBmaWxlLCB5b3Ugc2hvdWxkIHRhZyB0aGUgc3ltYm9sIHdpdGggIgorIkI8aWdub3JlLWJsYWNrbGlzdD4uIEl0IGNhbiBiZSBuZWNlc3NhcnkgZm9yIHNvbWUgbG93IGxldmVsIHRvb2xjaGFpbiAiCisibGlicmFyaWVzIGxpa2UgbGliZ2NjLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTY1IGRwa2ctZ2Vuc3ltYm9scy4xOjIwMgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPGMrKz4iCittc2dzdHIgIkI8LUc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToxNjkKK21zZ2lkICIiCisiRGVub3RlcyBJPGMrKz4gc3ltYm9sIHBhdHRlcm4uIFNlZSBCPFVzaW5nIHN5bWJvbCBwYXR0ZXJucz4gc3Vic2VjdGlvbiBiZWxvdy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjE2OSBkcGtnLWdlbnN5bWJvbHMuMToyMzMKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxzeW12ZXI+IgorbXNnc3RyICJCPC1HPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTczCittc2dpZCAiIgorIkRlbm90ZXMgSTxzeW12ZXI+IChzeW1ib2wgdmVyc2lvbikgc3ltYm9sIHBhdHRlcm4uIFNlZSBCPFVzaW5nIHN5bWJvbCAiCisicGF0dGVybnM+IHN1YnNlY3Rpb24gYmVsb3cuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbnN5bWJvbHMuMToxNzMgZHBrZy1nZW5zeW1ib2xzLjE6MjU4CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8cHVyZ2U+IgorbXNnaWQgIkI8cmVnZXg+IgorbXNnc3RyICJCPHB1cmdlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTc3Cittc2dpZCAiIgorIkRlbm90ZXMgSTxyZWdleD4gc3ltYm9sIHBhdHRlcm4uIFNlZSBCPFVzaW5nIHN5bWJvbCBwYXR0ZXJucz4gc3Vic2VjdGlvbiAiCisiYmVsb3cuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLWdlbnN5bWJvbHMuMToxNzcKKyMsIG5vLXdyYXAKK21zZ2lkICJVc2luZyBzeW1ib2wgcGF0dGVybnMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTg1Cittc2dpZCAiIgorIlVubGlrZSBhIHN0YW5kYXJkIHN5bWJvbCBzcGVjaWZpY2F0aW9uLCBhIHBhdHRlcm4gbWF5IGNvdmVyIG11bHRpcGxlIHJlYWwgIgorInN5bWJvbHMgZnJvbSB0aGUgbGlicmFyeS4gQjxkcGtnLWdlbnN5bWJvbHM+IHdpbGwgYXR0ZW1wdCB0byBtYXRjaCBlYWNoICIKKyJwYXR0ZXJuIGFnYWluc3QgZWFjaCByZWFsIHN5bWJvbCB0aGF0IGRvZXMgSTxub3Q+IGhhdmUgYSBzcGVjaWZpYyBzeW1ib2wgIgorImNvdW50ZXJwYXJ0IGRlZmluZWQgaW4gdGhlIHN5bWJvbCBmaWxlLiBXaGVuZXZlciB0aGUgZmlyc3QgbWF0Y2hpbmcgcGF0dGVybiAiCisiaXMgZm91bmQsIGFsbCBpdHMgdGFncyBhbmQgcHJvcGVydGllcyB3aWxsIGJlIHVzZWQgYXMgYSBiYXNpcyBzcGVjaWZpY2F0aW9uICIKKyJvZiB0aGUgc3ltYm9sLiBJZiBub25lIG9mIHRoZSBwYXR0ZXJucyBtYXRjaGVzLCB0aGUgc3ltYm9sIHdpbGwgYmUgIgorImNvbnNpZGVyZWQgYXMgbmV3LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToxOTMKK21zZ2lkICIiCisiQSBwYXR0ZXJuIGlzIGNvbnNpZGVyZWQgbG9zdCBpZiBpdCBkb2VzIG5vdCBtYXRjaCBhbnkgc3ltYm9sIGluIHRoZSBsaWJyYXJ5LiAiCisiQnkgZGVmYXVsdCB0aGlzIHdpbGwgdHJpZ2dlciBhIEI8ZHBrZy1nZW5zeW1ib2xzPiBmYWlsdXJlIHVuZGVyIEk8LWMxPiBvciAiCisiaGlnaGVyIGxldmVsLiBIb3dldmVyLCBpZiB0aGUgZmFpbHVyZSBpcyB1bmRlc2lyZWQsIHRoZSBwYXR0ZXJuIG1heSBiZSAiCisibWFya2VkIHdpdGggdGhlIEk8b3B0aW9uYWw+IHRhZy4gVGhlbiBpZiB0aGUgcGF0dGVybiBkb2VzIG5vdCBtYXRjaCAiCisiYW55dGhpbmcsIGl0IHdpbGwgb25seSBhcHBlYXIgaW4gdGhlIGRpZmYgYXMgTUlTU0lORy4gTW9yZW92ZXIsIGxpa2UgYW55ICIKKyJzeW1ib2wsIHRoZSBwYXR0ZXJuIG1heSBiZSBsaW1pdGVkIHRvIHRoZSBzcGVjaWZpYyBhcmNoaXRlY3R1cmVzIHdpdGggdGhlICIKKyJJPGFyY2g+IHRhZy4gUGxlYXNlIHJlZmVyIHRvIEI8U3RhbmRhcmQgc3ltYm9sIHRhZ3M+IHN1YnNlY3Rpb24gYWJvdmUgZm9yICIKKyJtb3JlIGluZm9ybWF0aW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyMDAKK21zZ2lkICIiCisiUGF0dGVybnMgYXJlIGFuIGV4dGVuc2lvbiBvZiB0aGUgSTxkZWItc3ltYm9scyg1KT4gZm9ybWF0IGhlbmNlIHRoZXkgYXJlICIKKyJvbmx5IHZhbGlkIGluIHN5bWJvbCBmaWxlIHRlbXBsYXRlcy4gUGF0dGVybiBzcGVjaWZpY2F0aW9uIHN5bnRheCBpcyBub3QgYW55ICIKKyJkaWZmZXJlbnQgZnJvbSB0aGUgb25lIG9mIGEgc3BlY2lmaWMgc3ltYm9sLiBIb3dldmVyLCBzeW1ib2wgbmFtZSBwYXJ0IG9mICIKKyJ0aGUgc3BlY2lmaWNhdGlvbiBzZXJ2ZXMgYXMgYW4gZXhwcmVzc2lvbiB0byBiZSBtYXRjaGVkIGFnYWluc3QgIgorIkk8bmFtZUB2ZXJzaW9uPiBvZiB0aGUgcmVhbCBzeW1ib2wuIEluIG9yZGVyIHRvIGRpc3Rpbmd1aXNoIGFtb25nIGRpZmZlcmVudCAiCisicGF0dGVybiB0eXBlcywgYSBwYXR0ZXJuIHdpbGwgdHlwaWNhbGx5IGJlIHRhZ2dlZCB3aXRoIGEgc3BlY2lhbCB0YWcuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjIwMgorbXNnaWQgIkF0IHRoZSBtb21lbnQsIEI8ZHBrZy1nZW5zeW1ib2xzPiBzdXBwb3J0cyB0aHJlZSBiYXNpYyBwYXR0ZXJuIHR5cGVzOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyMTQKK21zZ2lkICIiCisiVGhpcyBwYXR0ZXJuIGlzIGRlbm90ZWQgYnkgdGhlIEk8YysrPiB0YWcuIEl0IG1hdGNoZXMgb25seSBDKysgc3ltYm9scyBieSAiCisidGhlaXIgZGVtYW5nbGVkIHN5bWJvbCBuYW1lIChhcyBlbWl0dGVkIGJ5IEI8YysrZmlsdD4oMSkgdXRpbGl0eSkuIFRoaXMgIgorInBhdHRlcm4gaXMgdmVyeSBoYW5keSBmb3IgbWF0Y2hpbmcgc3ltYm9scyB3aGljaCBtYW5nbGVkIG5hbWVzIG1pZ2h0IHZhcnkgIgorImFjcm9zcyBkaWZmZXJlbnQgYXJjaGl0ZWN0dXJlcyB3aGlsZSB0aGVpciBkZW1hbmdsZWQgbmFtZXMgcmVtYWluIHRoZSBzYW1lLiAiCisiT25lIGdyb3VwIG9mIHN1Y2ggc3ltYm9scyBpcyBJPG5vbi12aXJ0dWFsIHRodW5rcz4gd2hpY2ggaGF2ZSBhcmNoaXRlY3R1cmUgIgorInNwZWNpZmljIG9mZnNldHMgZW1iZWRkZWQgaW4gdGhlaXIgbWFuZ2xlZCBuYW1lcy4gQSBjb21tb24gaW5zdGFuY2Ugb2YgdGhpcyAiCisiY2FzZSBpcyBhIHZpcnR1YWwgZGVzdHJ1Y3RvciB3aGljaCB1bmRlciBkaWFtb25kIGluaGVyaXRhbmNlIG5lZWRzIGEgbm9uLSIKKyJ2aXJ0dWFsIHRodW5rIHN5bWJvbC4gRm9yIGV4YW1wbGUsIGV2ZW4gaWYgX1pUaG44X04zTlNCNkNsYXNzREQxRXZAQmFzZSBvbiAiCisiMzJiaXQgYXJjaGl0ZWN0dXJlcyB3aWxsIHByb2JhYmx5IGJlIF9aVGhuMTZfTjNOU0I2Q2xhc3NERDFFdkBCYXNlIG9uIDY0Yml0ICIKKyJvbmVzLCBpdCBjYW4gYmUgbWF0Y2hlZCB3aXRoIGEgc2luZ2xlIEk8YysrPiBwYXR0ZXJuOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyMjAKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisibGliZHVtbXkuc28uMSBsaWJkdW1teTEgI01JTlZFUiNcbiIKKyIgWy4uLl1cbiIKKyIgKGMrKylcIm5vbi12aXJ0dWFsIHRodW5rIHRvIE5TQjo6Q2xhc3NEOjp+Q2xhc3NEKClAQmFzZVwiIDEuMFxuIgorIiBbLi4uXVxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjIyMgorbXNnaWQgIiIKKyJUaGUgZGVtYW5nbGVkIG5hbWUgYWJvdmUgY2FuIGJlIG9idGFpbmVkIGJ5IGV4ZWN1dGluZyB0aGUgZm9sbG93aW5nIGNvbW1hbmQ6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjIyNAorIywgbm8td3JhcAorbXNnaWQgIiAkIGVjaG8gJ19aVGhuOF9OM05TQjZDbGFzc0REMUV2QEJhc2UnIHwgYysrZmlsdFxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjIzMgorbXNnaWQgIiIKKyJQbGVhc2Ugbm90ZSB0aGF0IHdoaWxlIG1hbmdsZWQgbmFtZSBpcyB1bmlxdWUgaW4gdGhlIGxpYnJhcnkgYnkgZGVmaW5pdGlvbiwgIgorInRoaXMgaXMgbm90IG5lY2Vzc2FyaWx5IHRydWUgZm9yIGRlbWFuZ2xlZCBuYW1lcy4gQSBjb3VwbGUgb2YgZGlzdGluY3QgcmVhbCAiCisic3ltYm9scyBtYXkgaGF2ZSB0aGUgc2FtZSBkZW1hbmdsZWQgbmFtZS4gRm9yIGV4YW1wbGUsIHRoYXQncyB0aGUgY2FzZSB3aXRoICIKKyJub24tdmlydHVhbCB0aHVuayBzeW1ib2xzIGluIGNvbXBsZXggaW5oZXJpdGFuY2UgY29uZmlndXJhdGlvbnMgb3Igd2l0aCBtb3N0ICIKKyJjb25zdHJ1Y3RvcnMgYW5kIGRlc3RydWN0b3JzIChzaW5jZSBnKysgdHlwaWNhbGx5IGdlbmVyYXRlcyB0d28gcmVhbCBzeW1ib2xzICIKKyJmb3IgdGhlbSkuIEhvd2V2ZXIsIGFzIHRoZXNlIGNvbGxpc2lvbnMgaGFwcGVuIG9uIHRoZSBBQkkgbGV2ZWwsIHRoZXkgc2hvdWxkICIKKyJub3QgZGVncmFkZSBxdWFsaXR5IG9mIHRoZSBzeW1ib2wgZmlsZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjM5Cittc2dpZCAiIgorIlRoaXMgcGF0dGVybiBpcyBkZW5vdGVkIGJ5IHRoZSBJPHN5bXZlcj4gdGFnLiBXZWxsIG1haW50YWluZWQgbGlicmFyaWVzIGhhdmUgIgorInZlcnNpb25lZCBzeW1ib2xzIHdoZXJlIGVhY2ggdmVyc2lvbiBjb3JyZXNwb25kcyB0byB0aGUgdXBzdHJlYW0gdmVyc2lvbiAiCisid2hlcmUgdGhlIHN5bWJvbCBnb3QgYWRkZWQuIElmIHRoYXQncyB0aGUgY2FzZSwgeW91IGNhbiB1c2UgYSBJPHN5bXZlcj4gIgorInBhdHRlcm4gdG8gbWF0Y2ggYW55IHN5bWJvbCBhc3NvY2lhdGVkIHRvIHRoZSBzcGVjaWZpYyB2ZXJzaW9uLiBGb3IgZXhhbXBsZToiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjQ2CisjLCBuby13cmFwCittc2dpZCAiIgorImxpYmMuc28uNiBsaWJjNiAjTUlOVkVSI1xuIgorIiAoc3ltdmVyKUdMSUJDXzIuMCAyLjBcbiIKKyIgWy4uLl1cbiIKKyIgKHN5bXZlcilHTElCQ18yLjcgMi43XG4iCisiIGFjY2Vzc0BHTElCQ18yLjAgMi4yXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjUyCittc2dpZCAiIgorIkFsbCBzeW1ib2xzIGFzc29jaWF0ZWQgd2l0aCB2ZXJzaW9ucyBHTElCQ18yLjAgYW5kIEdMSUJDXzIuNyB3aWxsIGxlYWQgdG8gIgorIm1pbmltYWwgdmVyc2lvbiBvZiAyLjAgYW5kIDIuNyByZXNwZWN0aXZlbHkgd2l0aCB0aGUgZXhjZXB0aW9uIG9mIHRoZSBzeW1ib2wgIgorImFjY2Vzc0BHTElCQ18yLjAuIFRoZSBsYXR0ZXIgd2lsbCBsZWFkIHRvIGEgbWluaW1hbCBkZXBlbmRlbmN5IG9uIGxpYmM2ICIKKyJ2ZXJzaW9uIDIuMiBkZXNwaXRlIGJlaW5nIGluIHRoZSBzY29wZSBvZiB0aGUgXCIoc3ltdmVyKUdMSUJDXzIuMFwiIHBhdHRlcm4gIgorImJlY2F1c2Ugc3BlY2lmaWMgc3ltYm9scyB0YWtlIHByZWNlZGVuY2Ugb3ZlciBwYXR0ZXJucy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjU3Cittc2dpZCAiIgorIlBsZWFzZSBub3RlIHRoYXQgd2hpbGUgb2xkIHN0eWxlIHdpbGRjYXJkIHBhdHRlcm5zIChkZW5vdGVkIGJ5IFwiKkB2ZXJzaW9uXCIgIgorImluIHRoZSBzeW1ib2wgbmFtZSBmaWVsZCkgYXJlIHN0aWxsIHN1cHBvcnRlZCwgdGhleSBoYXZlIGJlZW4gZGVwcmVjYXRlZCBieSAiCisibmV3IHN0eWxlIHN5bnRheCBcIihzeW12ZXJ8b3B0aW9uYWwpdmVyc2lvblwiLiBGb3IgZXhhbXBsZSwgXCIqQEdMSUJDXzIuMCAiCisiMi4wXCIgc2hvdWxkIGJlIHdyaXR0ZW4gYXMgXCIoc3ltdmVyfG9wdGlvbmFsKUdMSUJDXzIuMCAyLjBcIiBpZiB0aGUgc2FtZSAiCisiYmVoYXZpb3VyIGlzIG5lZWRlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjY1Cittc2dpZCAiIgorIlJlZ3VsYXIgZXhwcmVzc2lvbiBwYXR0ZXJucyBhcmUgZGVub3RlZCBieSB0aGUgSTxyZWdleD4gdGFnLiBUaGV5IG1hdGNoIGJ5ICIKKyJ0aGUgcGVybCByZWd1bGFyIGV4cHJlc3Npb24gc3BlY2lmaWVkIGluIHRoZSBzeW1ib2wgbmFtZSBmaWVsZC4gQSByZWd1bGFyICIKKyJleHByZXNzaW9uIGlzIG1hdGNoZWQgYXMgaXQgaXMsIHRoZXJlZm9yZSBkbyBub3QgZm9yZ2V0IHRvIHN0YXJ0IGl0IHdpdGggdGhlICIKKyJJPF4+IGNoYXJhY3RlciBvciBpdCBtYXkgbWF0Y2ggYW55IHBhcnQgb2YgdGhlIHJlYWwgc3ltYm9sIEk8bmFtZUB2ZXJzaW9uPiAiCisic3RyaW5nLiBGb3IgZXhhbXBsZToiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjcwCisjLCBuby13cmFwCittc2dpZCAiIgorImxpYmR1bW15LnNvLjEgbGliZHVtbXkxICNNSU5WRVIjXG4iCisiIChyZWdleClcIl5teXN0YWNrXy4qQEJhc2UkXCIgMS4wXG4iCisiIChyZWdleHxvcHRpb25hbClcInByaXZhdGVcIiAxLjBcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyNzUKK21zZ2lkICIiCisiU3ltYm9scyBsaWtlIFwibXlzdGFja19uZXdAQmFzZVwiLCBcIm15c3RhY2tfcHVzaEBCYXNlXCIsIFwibXlzdGFja19wb3BAQmFzZSIKKyJcIiBldGMuICB3aWxsIGJlIG1hdGNoZWQgYnkgdGhlIGZpcnN0IHBhdHRlcm4gd2hpbGUgZS5nLiAiCisiXCJuZ19teXN0YWNrX25ld0BCYXNlXCIgd29uJ3QuICBUaGUgc2Vjb25kIHBhdHRlcm4gd2lsbCBtYXRjaCBhbGwgc3ltYm9scyAiCisiaGF2aW5nIHRoZSBzdHJpbmcgXCJwcml2YXRlXCIgaW4gdGhlaXIgbmFtZXMgYW5kIG1hdGNoZXMgd2lsbCBpbmhlcml0ICIKKyJJPG9wdGlvbmFsPiB0YWcgZnJvbSB0aGUgcGF0dGVybi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjgwCittc2dpZCAiIgorIkJhc2ljIHBhdHRlcm5zIGxpc3RlZCBhYm92ZSBjYW4gYmUgY29tYmluZWQgd2hlcmUgaXQgbWFrZXMgc2Vuc2UuIEluIHRoYXQgIgorImNhc2UsIHRoZXkgYXJlIHByb2Nlc3NlZCBpbiB0aGUgb3JkZXIgaW4gd2hpY2ggdGhlIHRhZ3MgYXJlIHNwZWNpZmllZC4gRm9yICIKKyJleGFtcGxlLCBib3RoIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjI4MworIywgbm8td3JhcAorbXNnaWQgIiIKKyIgKGMrK3xyZWdleClcIl5OU0E6OkNsYXNzQTo6UHJpdmF0ZTo6cHJpdm1ldGhvZFxcZWRcXGUoaW50XFxlKUBCYXNlXCIgMS4wXG4iCisiIChyZWdleHxjKyspTjNOU0E2Q2xhc3NBN1ByaXZhdGUxMXByaXZtZXRob2RcXGVkRWlAQmFzZSAxLjBcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyOTMKK21zZ2lkICIiCisid2lsbCBtYXRjaCBzeW1ib2xzIFwiX1pOM05TQTZDbGFzc0E3UHJpdmF0ZTExcHJpdm1ldGhvZDFFaUBCYXNlXCIgYW5kICIKKyJcIl9aTjNOU0E2Q2xhc3NBN1ByaXZhdGUxMXByaXZtZXRob2QyRWlAQmFzZVwiLiBXaGVuIG1hdGNoaW5nIHRoZSBmaXJzdCAiCisicGF0dGVybiwgdGhlIHJhdyBzeW1ib2wgaXMgZmlyc3QgZGVtYW5nbGVkIGFzIEMrKyBzeW1ib2wsIHRoZW4gdGhlIGRlbWFuZ2xlZCAiCisibmFtZSBpcyBtYXRjaGVkIGFnYWluc3QgdGhlIHJlZ3VsYXIgZXhwcmVzc2lvbi4gT24gdGhlIG90aGVyIGhhbmQsIHdoZW4gIgorIm1hdGNoaW5nIHRoZSBzZWNvbmQgcGF0dGVybiwgcmVndWxhciBleHByZXNzaW9uIGlzIG1hdGNoZWQgYWdhaW5zdCB0aGUgcmF3ICIKKyJzeW1ib2wgbmFtZSwgdGhlbiB0aGUgc3ltYm9sIGlzIHRlc3RlZCBpZiBpdCBpcyBDKysgb25lIGJ5IGF0dGVtcHRpbmcgdG8gIgorImRlbWFuZ2xlIGl0LiBBIGZhaWx1cmUgb2YgYW55IGJhc2ljIHBhdHRlcm4gd2lsbCByZXN1bHQgaW4gdGhlIGZhaWx1cmUgb2YgIgorInRoZSB3aG9sZSBwYXR0ZXJuLiAgVGhlcmVmb3JlLCBmb3IgZXhhbXBsZSwgIgorIlwiX19OM05TQTZDbGFzc0E3UHJpdmF0ZTExcHJpdm1ldGhvZFxcZWRFaUBCYXNlXCIgd2lsbCBub3QgbWF0Y2ggZWl0aGVyIG9mICIKKyJ0aGUgcGF0dGVybnMgYmVjYXVzZSBpdCBpcyBub3QgYSB2YWxpZCBDKysgc3ltYm9sLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyOTkKK21zZ2lkICIiCisiSW4gZ2VuZXJhbCwgYWxsIHBhdHRlcm5zIGFyZSBkaXZpZGVkIGludG8gdHdvIGdyb3VwczogYWxpYXNlcyAoYmFzaWMgSTxjKys+ICIKKyJhbmQgSTxzeW12ZXI+KSBhbmQgZ2VuZXJpYyBwYXR0ZXJucyAoSTxyZWdleD4sIGFsbCBjb21iaW5hdGlvbnMgb2YgbXVsdGlwbGUgIgorImJhc2ljIHBhdHRlcm5zKS4gTWF0Y2hpbmcgb2YgYmFzaWMgYWxpYXMtYmFzZWQgcGF0dGVybnMgaXMgZmFzdCAoTygxKSkgICIKKyJ3aGlsZSBnZW5lcmljIHBhdHRlcm5zIGFyZSBPKE4pIChOIC0gZ2VuZXJpYyBwYXR0ZXJuIGNvdW50KSBmb3IgZWFjaCAiCisic3ltYm9sLiAgVGhlcmVmb3JlLCBpdCBpcyByZWNvbW1lbmRlZCBub3QgdG8gb3ZlcnVzZSBnZW5lcmljIHBhdHRlcm5zLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozMDYKK21zZ2lkICIiCisiV2hlbiBtdWx0aXBsZSBwYXR0ZXJucyBtYXRjaCB0aGUgc2FtZSByZWFsIHN5bWJvbCwgYWxpYXNlcyAoZmlyc3QgSTxjKys+LCAiCisidGhlbiBJPHN5bXZlcj4pIGFyZSBwcmVmZXJyZWQgb3ZlciBnZW5lcmljIHBhdHRlcm5zLiBHZW5lcmljIHBhdHRlcm5zIGFyZSAiCisibWF0Y2hlZCBpbiB0aGUgb3JkZXIgdGhleSBhcmUgZm91bmQgaW4gdGhlIHN5bWJvbCBmaWxlIHRlbXBsYXRlIHVudGlsIHRoZSAiCisiZmlyc3Qgc3VjY2Vzcy4gIFBsZWFzZSBub3RlLCBob3dldmVyLCB0aGF0IG1hbnVhbCByZW9yZGVyaW5nIG9mIHRlbXBsYXRlICIKKyJmaWxlIGVudHJpZXMgaXMgbm90IHJlY29tbWVuZGVkIGJlY2F1c2UgQjxkcGtnLWdlbnN5bWJvbHM+IGdlbmVyYXRlcyBkaWZmcyAiCisiYmFzZWQgb24gdGhlIGFscGhhbnVtZXJpY2FsIG9yZGVyIG9mIHRoZWlyIG5hbWVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1nZW5zeW1ib2xzLjE6MzA2CisjLCBuby13cmFwCittc2dpZCAiVXNpbmcgaW5jbHVkZXMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzExCittc2dpZCAiIgorIldoZW4gdGhlIHNldCBvZiBleHBvcnRlZCBzeW1ib2xzIGRpZmZlciBiZXR3ZWVuIGFyY2hpdGVjdHVyZXMsIGl0IG1heSBiZWNvbWUgIgorImluZWZmaWNpZW50IHRvIHVzZSBhIHNpbmdsZSBzeW1ib2wgZmlsZS4gSW4gdGhvc2UgY2FzZXMsIGFuIGluY2x1ZGUgIgorImRpcmVjdGl2ZSBtYXkgcHJvdmUgdG8gYmUgdXNlZnVsIGluIGEgY291cGxlIG9mIHdheXM6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjMxNQorbXNnaWQgIiIKKyJZb3UgY2FuIGZhY3Rvcml6ZSB0aGUgY29tbW9uIHBhcnQgaW4gc29tZSBleHRlcm5hbCBmaWxlIGFuZCBpbmNsdWRlIHRoYXQgIgorImZpbGUgaW4geW91ciBJPHBhY2thZ2U+LnN5bWJvbHMuSTxhcmNoPiBmaWxlIGJ5IHVzaW5nIGFuIGluY2x1ZGUgZGlyZWN0aXZlICIKKyJsaWtlIHRoaXM6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjMxNworbXNnaWQgIiNpbmNsdWRlIFwiSTxwYWNrYWdlcz4uc3ltYm9scy5jb21tb25cIiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozMTkKK21zZ2lkICJUaGUgaW5jbHVkZSBkaXJlY3RpdmUgbWF5IGFsc28gYmUgdGFnZ2VkIGxpa2UgYW55IHN5bWJvbDoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzIxCittc2dpZCAiKHRhZ3wuLnx0YWdOKSNpbmNsdWRlIFwiZmlsZS10by1pbmNsdWRlXCIiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzI2Cittc2dpZCAiIgorIkFzIGEgcmVzdWx0LCBhbGwgc3ltYm9scyBpbmNsdWRlZCBmcm9tIEk8ZmlsZS10by1pbmNsdWRlPiB3aWxsIGJlIGNvbnNpZGVyZWQgIgorInRvIGJlIHRhZ2dlZCB3aXRoIEk8dGFnPiAuLiBJPHRhZ04+IGJ5IGRlZmF1bHQuIFlvdSBjYW4gdXNlIHRoaXMgZmVhdHVyZSB0byAiCisiY3JlYXRlIGEgY29tbW9uIEk8cGFja2FnZT4uc3ltYm9scyBmaWxlIHdoaWNoIGluY2x1ZGVzIGFyY2hpdGVjdHVyZSBzcGVjaWZpYyAiCisic3ltYm9sIGZpbGVzOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozMzEKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiICBjb21tb25fc3ltYm9sMUBCYXNlIDEuMFxuIgorIiAoYXJjaD1hbWQ2NCBpYTY0IGFscGhhKSNpbmNsdWRlIFwicGFja2FnZS5zeW1ib2xzLjY0Yml0XCJcbiIKKyIgKGFyY2g9IWFtZDY0ICFpYTY0ICFhbHBoYSkjaW5jbHVkZSBcInBhY2thZ2Uuc3ltYm9scy4zMmJpdFwiXG4iCisiICBjb21tb25fc3ltYm9sMkBCYXNlIDEuMFxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM0MAorbXNnaWQgIiIKKyJUaGUgc3ltYm9scyBmaWxlcyBhcmUgcmVhZCBsaW5lIGJ5IGxpbmUsIGFuZCBpbmNsdWRlIGRpcmVjdGl2ZXMgYXJlICIKKyJwcm9jZXNzZWQgYXMgc29vbiBhcyB0aGV5IGFyZSBlbmNvdW50ZXJlZC4gVGhpcyBtZWFucyB0aGF0IHRoZSBjb250ZW50IG9mICIKKyJ0aGUgaW5jbHVkZWQgZmlsZSBjYW4gb3ZlcnJpZGUgYW55IGNvbnRlbnQgdGhhdCBhcHBlYXJlZCBiZWZvcmUgdGhlIGluY2x1ZGUgIgorImRpcmVjdGl2ZSBhbmQgdGhhdCBhbnkgY29udGVudCBhZnRlciB0aGUgZGlyZWN0aXZlIGNhbiBvdmVycmlkZSBhbnl0aGluZyAiCisiY29udGFpbmVkIGluIHRoZSBpbmNsdWRlZCBmaWxlLiBBbnkgc3ltYm9sIChvciBldmVuIGFub3RoZXIgI2luY2x1ZGUgIgorImRpcmVjdGl2ZSkgaW4gdGhlIGluY2x1ZGVkIGZpbGUgY2FuIHNwZWNpZnkgYWRkaXRpb25hbCB0YWdzIG9yIG92ZXJyaWRlICIKKyJ2YWx1ZXMgb2YgdGhlIGluaGVyaXRlZCB0YWdzIGluIGl0cyB0YWcgc3BlY2lmaWNhdGlvbi4gSG93ZXZlciwgdGhlcmUgaXMgbm8gIgorIndheSBmb3IgdGhlIHN5bWJvbCB0byByZW1vdmUgYW55IG9mIHRoZSBpbmhlcml0ZWQgdGFncy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzQ1Cittc2dpZCAiIgorIkFuIGluY2x1ZGVkIGZpbGUgY2FuIHJlcGVhdCB0aGUgaGVhZGVyIGxpbmUgY29udGFpbmluZyB0aGUgU09OQU1FIG9mIHRoZSAiCisibGlicmFyeS4gSW4gdGhhdCBjYXNlLCBpdCBvdmVycmlkZXMgYW55IGhlYWRlciBsaW5lIHByZXZpb3VzbHkgcmVhZC4gICIKKyJIb3dldmVyLCBpbiBnZW5lcmFsIGl0J3MgYmVzdCB0byBhdm9pZCBkdXBsaWNhdGluZyBoZWFkZXIgbGluZXMuIE9uZSB3YXkgdG8gIgorImRvIGl0IGlzIHRoZSBmb2xsb3dpbmc6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM0OAorIywgbm8td3JhcAorbXNnaWQgIiIKKyIjaW5jbHVkZSBcImxpYnNvbWV0aGluZzEuc3ltYm9scy5jb21tb25cIlxuIgorIiBhcmNoX3NwZWNpZmljX3N5bWJvbEBCYXNlIDEuMFxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLWdlbnN5bWJvbHMuMTozNDgKKyMsIG5vLXdyYXAKK21zZ2lkICJHb29kIGxpYnJhcnkgbWFuYWdlbWVudCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozNTEKK21zZ2lkICJBIHdlbGwtbWFpbnRhaW5lZCBsaWJyYXJ5IGhhcyB0aGUgZm9sbG93aW5nIGZlYXR1cmVzOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozNTUKK21zZ2lkICIiCisiaXRzIEFQSSBpcyBzdGFibGUgKHB1YmxpYyBzeW1ib2xzIGFyZSBuZXZlciBkcm9wcGVkLCBvbmx5IG5ldyBwdWJsaWMgc3ltYm9scyAiCisiYXJlIGFkZGVkKSBhbmQgY2hhbmdlcyBpbiBpbmNvbXBhdGlibGUgd2F5cyBvbmx5IHdoZW4gdGhlIFNPTkFNRSBjaGFuZ2VzOyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozNTgKK21zZ2lkICIiCisiaWRlYWxseSwgaXQgdXNlcyBzeW1ib2wgdmVyc2lvbmluZyB0byBhY2hpZXZlIEFCSSBzdGFiaWxpdHkgZGVzcGl0ZSBpbnRlcm5hbCAiCisiY2hhbmdlcyBhbmQgQVBJIGV4dGVuc2lvbjsiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzYxCittc2dpZCAiIgorIml0IGRvZXNuJ3QgZXhwb3J0IHByaXZhdGUgc3ltYm9scyAoc3VjaCBzeW1ib2xzIGNhbiBiZSB0YWdnZWQgb3B0aW9uYWwgYXMgIgorIndvcmthcm91bmQpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozNjkKK21zZ2lkICIiCisiV2hpbGUgbWFpbnRhaW5pbmcgdGhlIHN5bWJvbHMgZmlsZSwgaXQncyBlYXN5IHRvIG5vdGljZSBhcHBlYXJhbmNlIGFuZCAiCisiZGlzYXBwZWFyYW5jZSBvZiBzeW1ib2xzLiBCdXQgaXQncyBtb3JlIGRpZmZpY3VsdCB0byBjYXRjaCBpbmNvbXBhdGlibGUgQVBJICIKKyJhbmQgQUJJIGNoYW5nZS4gVGh1cyB0aGUgbWFpbnRhaW5lciBzaG91bGQgcmVhZCB0aG9yb3VnaGx5IHRoZSB1cHN0cmVhbSAiCisiY2hhbmdlbG9nIGxvb2tpbmcgZm9yIGNhc2VzIHdoZXJlIHRoZSBydWxlcyBvZiBnb29kIGxpYnJhcnkgbWFuYWdlbWVudCBoYXZlICIKKyJiZWVuIGJyb2tlbi4gSWYgcG90ZW50aWFsIHByb2JsZW1zIGFyZSBkaXNjb3ZlcmVkLCB0aGUgdXBzdHJlYW0gYXV0aG9yICIKKyJzaG91bGQgYmUgbm90aWZpZWQgYXMgYW4gdXBzdHJlYW0gZml4IGlzIGFsd2F5cyBiZXR0ZXIgdGhhbiBhIERlYmlhbiAiCisic3BlY2lmaWMgd29yay1hcm91bmQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbnN5bWJvbHMuMTozNzAKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtUD5JPHBhY2thZ2UtYnVpbGQtZGlyPiIKK21zZ3N0ciAiQjwtLWxvZz0+STxmaWxlbmFtZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM3MworbXNnaWQgIlNjYW4gSTxwYWNrYWdlLWJ1aWxkLWRpcj4gaW5zdGVhZCBvZiBkZWJpYW4vdG1wLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozNzcKK21zZ2lkICIiCisiRGVmaW5lIHRoZSBwYWNrYWdlIG5hbWUuIFJlcXVpcmVkIGlmIG1vcmUgdGhhbiBvbmUgYmluYXJ5IHBhY2thZ2UgaXMgbGlzdGVkICIKKyJpbiBkZWJpYW4vY29udHJvbCAob3IgaWYgdGhlcmUncyBubyBkZWJpYW4vY29udHJvbCBmaWxlKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzgxCittc2dpZCAiIgorIkRlZmluZSB0aGUgcGFja2FnZSB2ZXJzaW9uLiBEZWZhdWx0cyB0byB0aGUgdmVyc2lvbiBleHRyYWN0ZWQgZnJvbSBkZWJpYW4vIgorImNoYW5nZWxvZy4gUmVxdWlyZWQgaWYgY2FsbGVkIG91dHNpZGUgb2YgYSBzb3VyY2UgcGFja2FnZSB0cmVlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzgxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LWU+STxsaWJyYXJ5LWZpbGU+IgorbXNnc3RyICJJPGNvbnRyb2w+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozODcKK21zZ2lkICIiCisiT25seSBhbmFseXplIGxpYnJhcmllcyBleHBsaWNpdGx5IGxpc3RlZCBpbnN0ZWFkIG9mIGZpbmRpbmcgYWxsIHB1YmxpYyAiCisibGlicmFyaWVzLiBZb3UgY2FuIHVzZSBhIHJlZ3VsYXIgZXhwcmVzc2lvbiBpbiBJPGxpYnJhcnktZmlsZT4gdG8gbWF0Y2ggIgorIm11bHRpcGxlIGxpYnJhcmllcyB3aXRoIGEgc2luZ2xlIGFyZ3VtZW50IChvdGhlcndpc2UgeW91IG5lZWQgbXVsdGlwbGUgQjwtIgorImU+KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM4NworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1JPkk8ZmlsZW5hbWU+IgorbXNnc3RyICJCPC0tbG9nPT5JPGZpbGVuYW1lPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzkxCittc2dpZCAiIgorIlVzZSBJPGZpbGVuYW1lPiBhcyByZWZlcmVuY2UgZmlsZSB0byBnZW5lcmF0ZSB0aGUgc3ltYm9scyBmaWxlIHRoYXQgaXMgIgorImludGVncmF0ZWQgaW4gdGhlIHBhY2thZ2UgaXRzZWxmLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozOTUKK21zZ2lkICIiCisiUHJpbnQgdGhlIGdlbmVyYXRlZCBzeW1ib2xzIGZpbGUgdG8gc3RhbmRhcmQgb3V0cHV0LCByYXRoZXIgdGhhbiBiZWluZyAiCisic3RvcmVkIGluIHRoZSBwYWNrYWdlIGJ1aWxkIHRyZWUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbnN5bWJvbHMuMTozOTUKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtTz5JPGZpbGVuYW1lPiIKK21zZ3N0ciAiQjwtLWxvZz0+STxmaWxlbmFtZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQwMQorbXNnaWQgIiIKKyJTdG9yZSB0aGUgZ2VuZXJhdGVkIHN5bWJvbHMgZmlsZSBhcyBJPGZpbGVuYW1lPi4gSWYgSTxmaWxlbmFtZT4gaXMgcHJlLSIKKyJleGlzdGluZywgaXRzIGNvbnRlbnQgaXMgdXNlZCBhcyBiYXNpcyBmb3IgdGhlIGdlbmVyYXRlZCBzeW1ib2xzIGZpbGUuICBZb3UgIgorImNhbiB1c2UgdGhpcyBmZWF0dXJlIHRvIHVwZGF0ZSBhIHN5bWJvbHMgZmlsZSBzbyB0aGF0IGl0IG1hdGNoZXMgYSBuZXdlciAiCisidXBzdHJlYW0gdmVyc2lvbiBvZiB5b3VyIGxpYnJhcnkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0MDEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtdD4iCittc2dzdHIgIkI8LUc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0MTAKK21zZ2lkICIiCisiV3JpdGUgdGhlIHN5bWJvbCBmaWxlIGluIHRlbXBsYXRlIG1vZGUgcmF0aGVyIHRoYW4gdGhlIGZvcm1hdCBjb21wYXRpYmxlICIKKyJ3aXRoIEk8ZGViLXN5bWJvbHMoNSk+LiBUaGUgbWFpbiBkaWZmZXJlbmNlIGlzIHRoYXQgaW4gdGhlIHRlbXBsYXRlIG1vZGUgIgorInN5bWJvbCBuYW1lcyBhbmQgdGFncyBhcmUgd3JpdHRlbiBpbiB0aGVpciBvcmlnaW5hbCBmb3JtIGNvbnRyYXJ5IHRvIHRoZSAiCisicG9zdC1wcm9jZXNzZWQgc3ltYm9sIG5hbWVzIHdpdGggdGFncyBzdHJpcHBlZCBpbiB0aGUgY29tcGF0aWJpbGl0eSBtb2RlLiAgIgorIk1vcmVvdmVyLCBzb21lIHN5bWJvbHMgbWlnaHQgYmUgb21pdHRlZCB3aGVuIHdyaXRpbmcgYSBzdGFuZGFyZCBJPGRlYi1zeW1ib2xzIgorIig1KT4gZmlsZSAoYWNjb3JkaW5nIHRvIHRoZSB0YWcgcHJvY2Vzc2luZyBydWxlcykgd2hpbGUgYWxsIHN5bWJvbHMgYXJlICIKKyJhbHdheXMgd3JpdHRlbiB0byB0aGUgc3ltYm9sIGZpbGUgdGVtcGxhdGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0MTAKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtYz5JPFswLTRdPiIKK21zZ3N0ciAiQjwtLXN0YXR1cy1mZCA+STxFPGx0Pm5FPGd0Pj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQxOAorbXNnaWQgIiIKKyJEZWZpbmUgdGhlIGNoZWNrcyB0byBkbyB3aGVuIGNvbXBhcmluZyB0aGUgZ2VuZXJhdGVkIHN5bWJvbHMgZmlsZSB3aXRoIHRoZSAiCisidGVtcGxhdGUgZmlsZSB1c2VkIGFzIHN0YXJ0aW5nIHBvaW50LiBCeSBkZWZhdWx0IHRoZSBsZXZlbCBpcyAxLiBJbmNyZWFzaW5nICIKKyJsZXZlbHMgZG8gbW9yZSBjaGVja3MgYW5kIGluY2x1ZGUgYWxsIGNoZWNrcyBvZiBsb3dlciBsZXZlbHMuIExldmVsIDAgbmV2ZXIgIgorImZhaWxzLiBMZXZlbCAxIGZhaWxzIGlmIHNvbWUgc3ltYm9scyBoYXZlIGRpc2FwcGVhcmVkLiBMZXZlbCAyIGZhaWxzIGlmIHNvbWUgIgorIm5ldyBzeW1ib2xzIGhhdmUgYmVlbiBpbnRyb2R1Y2VkLiBMZXZlbCAzIGZhaWxzIGlmIHNvbWUgbGlicmFyaWVzIGhhdmUgIgorImRpc2FwcGVhcmVkLiBMZXZlbCA0IGZhaWxzIGlmIHNvbWUgbGlicmFyaWVzIGhhdmUgYmVlbiBpbnRyb2R1Y2VkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0MjEKK21zZ2lkICIiCisiVGhpcyB2YWx1ZSBjYW4gYmUgb3ZlcnJpZGRlbiBieSB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGUgIgorIkRQS0dfR0VOU1lNQk9MU19DSEVDS19MRVZFTC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDI3Cittc2dpZCAiIgorIktlZXAgcXVpZXQgYW5kIG5ldmVyIGdlbmVyYXRlIGEgZGlmZiBiZXR3ZWVuIGdlbmVyYXRlZCBzeW1ib2xzIGZpbGUgYW5kIHRoZSAiCisidGVtcGxhdGUgZmlsZSB1c2VkIGFzIHN0YXJ0aW5nIHBvaW50IG9yIHNob3cgYW55IHdhcm5pbmdzIGFib3V0IG5ldy9sb3N0ICIKKyJsaWJyYXJpZXMgb3IgbmV3L2xvc3Qgc3ltYm9scy4gVGhpcyBvcHRpb24gb25seSBkaXNhYmxlcyBpbmZvcm1hdGlvbmFsICIKKyJvdXRwdXQgYnV0IG5vdCB0aGUgY2hlY2tzIHRoZW1zZWx2ZXMgKHNlZSBJPC1jPiBvcHRpb24pLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDI3CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LWE+STxhcmNoPiIKK21zZ3N0ciAiQjxkcGtnIC0tcHJpbnQtYXJjaGl0ZWN0dXJlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDMyCittc2dpZCAiIgorIkFzc3VtZSBJPGFyY2g+IGFzIGhvc3QgYXJjaGl0ZWN0dXJlIHdoZW4gcHJvY2Vzc2luZyBzeW1ib2wgZmlsZXMuIFVzZSB0aGlzICIKKyJvcHRpb24gdG8gZ2VuZXJhdGUgYSBzeW1ib2wgZmlsZSBvciBkaWZmIGZvciBhbnkgYXJjaGl0ZWN0dXJlIHByb3ZpZGVkIGl0cyAiCisiYmluYXJpZXMgYXJlIGFscmVhZHkgYXZhaWxhYmxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0MzcKK21zZ2lkICIiCisiRW5hYmxlIGRlYnVnIG1vZGUuIE51bWVyb3VzIG1lc3NhZ2VzIGFyZSBkaXNwbGF5ZWQgdG8gZXhwbGFpbiB3aGF0IEI8ZHBrZy0iCisiZ2Vuc3ltYm9scz4gZG9lcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQzNworIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPC1HPiIKK21zZ2lkICJCPC1WPiIKK21zZ3N0ciAiQjwtRz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQ0MworbXNnaWQgIiIKKyJFbmFibGUgdmVyYm9zZSBtb2RlLiBUaGUgZ2VuZXJhdGVkIHN5bWJvbHMgZmlsZSBjb250YWlucyBkZXByZWNhdGVkIHN5bWJvbHMgIgorImFzIGNvbW1lbnRzLiBGdXJ0aGVybW9yZSBpbiB0ZW1wbGF0ZSBtb2RlLCBwYXR0ZXJuIHN5bWJvbHMgYXJlIGZvbGxvd2VkIGJ5ICIKKyJjb21tZW50cyBsaXN0aW5nIHJlYWwgc3ltYm9scyB0aGF0IGhhdmUgbWF0Y2hlZCB0aGUgcGF0dGVybi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDUyCittc2dpZCAiQjxodHRwOi8vcGVvcGxlLnJlZGhhdC5jb20vZHJlcHBlci9zeW1ib2wtdmVyc2lvbmluZz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDU0Cittc2dpZCAiQjxodHRwOi8vcGVvcGxlLnJlZGhhdC5jb20vZHJlcHBlci9nb29kcHJhY3RpY2UucGRmPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0NTYKK21zZ2lkICJCPGh0dHA6Ly9wZW9wbGUucmVkaGF0LmNvbS9kcmVwcGVyL2Rzb2hvd3RvLnBkZj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDU5CisjLCBmdXp6eQorbXNnaWQgIkI8ZGViLXN5bWJvbHM+KDUpLCBCPGRwa2ctc2hsaWJkZXBzPigxKS4iCittc2dzdHIgIiIKKyJCPGRzZWxlY3Q+KDgpLCBCPGRwa2ctZGViPigxKSwgQjxkZWI+KDUpLCBCPGRlYi1jb250cm9sPig1KSwgZSBCPGRwa2ctIgorInJlY29uZmlndXJlPig4KSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDYyCittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMDctMjAwOSBSYXBoYVxcWzplXWwgSGVydHpvZyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxCisjLCBuby13cmFwCittc2dpZCAiZHBrZy1tYWludHNjcmlwdC1oZWxwZXIiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMTo0Cittc2dpZCAiIgorImRwa2ctbWFpbnRzY3JpcHQtaGVscGVyIC0gd29ya3MgYXJvdW5kIGtub3duIGRwa2cgbGltaXRhdGlvbnMgaW4gbWFpbnRhaW5lciAiCisic2NyaXB0cyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjgKK21zZ2lkICIiCisiQjxkcGtnLW1haW50c2NyaXB0LWhlbHBlcj4gSTxjb21tYW5kPiBbSTxwYXJhbWV0ZXI+Li4uXSBCPC0tPiBJPG1haW50LXNjcmlwdC0iCisicGFyYW1ldGVyPi4uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMTo5CisjLCBuby13cmFwCittc2dpZCAiQ09NTUFORFMgQU5EIFBBUkFNRVRFUlMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxMgorbXNnaWQgIkI8cm1fY29uZmZpbGU+IEk8Y29uZmZpbGU+IFtJPGxhc3R2ZXJzaW9uPiBbSTxwYWNrYWdlPl1dIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MTQKK21zZ2lkICIiCisiQjxtdl9jb25mZmlsZT4gSTxvbGRjb25mZmlsZT4gSTxuZXdjb25mZmlsZT4gW0k8bGFzdHZlcnNpb24+IFtJPHBhY2thZ2U+XV0iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToyMAorbXNnaWQgIiIKKyJUaGlzIHByb2dyYW0gaXMgZGVzaWduZWQgdG8gYmUgcnVuIHdpdGhpbiBtYWludGFpbmVyIHNjcmlwdHMgdG8gYWNoaWV2ZSBzb21lICIKKyJ0YXNrcyB0aGF0IGRwa2cgY2FuJ3QgKHlldCkgaGFuZGxlIG5hdGl2ZWx5IGVpdGhlciBiZWNhdXNlIG9mIGRlc2lnbiAiCisiZGVjaXNpb25zIG9yIGR1ZSB0byBjdXJyZW50IGxpbWl0YXRpb25zLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjI3Cittc2dpZCAiIgorIk1hbnkgb2YgdGhvc2UgdGFza3MgcmVxdWlyZSBjb29yZGluYXRlZCBhY3Rpb25zIGZyb20gc2V2ZXJhbCBtYWludGFpbmVyICIKKyJzY3JpcHRzIChCPHByZWluc3Q+LCBCPHBvc3RpbnN0PiwgQjxwcmVybT4sIEI8cG9zdHJtPikuIFRvIGF2b2lkIG1pc3Rha2VzICIKKyJ0aGUgc2FtZSBjYWxsIHNpbXBseSBuZWVkcyB0byBiZSBwdXQgaW4gYWxsIHNjcmlwdHMgYW5kIHRoZSBwcm9ncmFtIHdpbGwgIgorImF1dG9tYXRpY2FsbHkgYWRhcHQgaXRzIGJlaGF2aW91ciBiYXNlZCBvbiB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGUgIgorIkI8RFBLR19NQUlOVFNDUklQVF9OQU1FPiBhbmQgb24gdGhlIG1haW50YWluZXIgc2NyaXB0cyBhcmd1bWVudHMgdGhhdCB5b3UgIgorImhhdmUgdG8gZm9yd2FyZCBhZnRlciBhIGRvdWJsZSBkYXNoLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToyOAorIywgbm8td3JhcAorbXNnaWQgIkNPTkZGSUxFIFJFTEFURUQgVEFTS1MiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMTozOAorbXNnaWQgIiIKKyJXaGVuIHVwZ3JhZGluZyBhIHBhY2thZ2UsIGRwa2cgd2lsbCBub3QgYXV0b21hdGljYWxseSByZW1vdmUgYSBjb25mZmlsZSAoYSAiCisiY29uZmlndXJhdGlvbiBmaWxlIGZvciB3aGljaCBkcGtnIHNob3VsZCBwcmVzZXJ2ZSB1c2VyIGNoYW5nZXMpIGlmIGl0IGlzIG5vdCAiCisicHJlc2VudCBpbiB0aGUgbmV3ZXIgdmVyc2lvbi4gVGhlcmUgYXJlIHR3byBwcmluY2lwYWwgcmVhc29ucyBmb3IgdGhpczsgdGhlICIKKyJmaXJzdCBpcyB0aGF0IHRoZSBjb25mZmlsZSBjb3VsZCd2ZSBiZWVuIGRyb3BwZWQgYnkgYWNjaWRlbnQgYW5kIHRoZSBuZXh0ICIKKyJ2ZXJzaW9uIGNvdWxkIHJlc3RvcmUgaXQsIHVzZXJzIHdvdWxkbid0IHdhbnQgdGhlaXIgY2hhbmdlcyB0aHJvd24gYXdheS4gVGhlICIKKyJzZWNvbmQgaXMgdG8gYWxsb3cgcGFja2FnZXMgdG8gdHJhbnNpdGlvbiBmaWxlcyBmcm9tIGEgZHBrZy1tYWludGFpbmVkICIKKyJjb25mZmlsZSB0byBhIGZpbGUgbWFpbnRhaW5lZCBieSB0aGUgcGFja2FnZSdzIG1haW50YWluZXIgc2NyaXB0cywgdXN1YWxseSAiCisid2l0aCBhIHRvb2wgbGlrZSBkZWJjb25mIG9yIHVjZi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMTo0MworbXNnaWQgIiIKKyJUaGlzIG1lYW5zIHRoYXQgaWYgYSBwYWNrYWdlIGlzIGludGVuZGVkIHRvIHJlbmFtZSBvciByZW1vdmUgYSBjb25mZmlsZSwgaXQgIgorIm11c3QgZXhwbGljaXRseSBkbyBzbyBhbmQgQjxkcGtnLW1haW50c2NyaXB0LWhlbHBlcj4gY2FuIGJlIHVzZWQgdG8gIgorImltcGxlbWVudCBncmFjZWZ1bCBkZWxldGlvbiBhbmQgbW92aW5nIG9mIGNvbmZmaWxlcyB3aXRoaW4gbWFpbnRhaW5lciAiCisic2NyaXB0cy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6NDQKKyMsIG5vLXdyYXAKK21zZ2lkICJSRU1PVklORyBBIENPTkZGSUxFIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6NTAKK21zZ2lkICIiCisiSWYgYSBjb25mZmlsZSBpcyBjb21wbGV0ZWx5IHJlbW92ZWQsIGl0IHNob3VsZCBiZSByZW1vdmVkIGZyb20gZGlzaywgdW5sZXNzICIKKyJ0aGUgdXNlciBoYXMgbW9kaWZpZWQgaXQuIElmIHRoZXJlIGFyZSBsb2NhbCBtb2RpZmljYXRpb25zLCB0aGV5IHNob3VsZCBiZSAiCisicHJlc2VydmVkLiBJZiB0aGUgcGFja2FnZSB1cGdyYWRlcyBhYm9ydHMsIHRoZSBuZXdseSBvYnNvbGV0ZSBjb25mZmlsZSAiCisic2hvdWxkIG5vdCBkaXNhcHBlYXIuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6NTMKK21zZ2lkICIiCisiQWxsIG9mIHRoaXMgaXMgaW1wbGVtZW50ZWQgYnkgcHV0dGluZyB0aGUgZm9sbG93aW5nIHNoZWxsIHNuaXBwZXQgaW4gdGhlICIKKyJCPHByZWluc3Q+LCBCPHBvc3RpbnN0PiBhbmQgQjxwb3N0cm0+IG1haW50YWluZXIgc2NyaXB0czoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMTo1NgorIywgbm8td3JhcAorbXNnaWQgIiIKKyIgICAgZHBrZy1tYWludHNjcmlwdC1oZWxwZXIgcm1fY29uZmZpbGUgXFxlXG4iCisiICAgICAgICBJPGNvbmZmaWxlPiBJPGxhc3R2ZXJzaW9uPiBJPHBhY2thZ2U+IC0tIFwiJEBcIlxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6NjYKK21zZ2lkICIiCisiSTxjb25mZmlsZT4gaXMgdGhlIGZpbGVuYW1lIG9mIHRoZSBjb25mZmlsZSB0byByZW1vdmUuICBJPGxhc3R2ZXJzaW9uPiBpcyAiCisidGhlIGxhc3QgdmVyc2lvbiBvZiB0aGUgcGFja2FnZSB0aGF0IGNvbnRhaW5lZCB0aGUgY29uZmZpbGUgKG9yIHRoZSBsYXN0ICIKKyJ2ZXJzaW9uIG9mIHRoZSBwYWNrYWdlIHRoYXQgZGlkIG5vdCB0YWtlIGNhcmUgdG8gcmVtb3ZlIHRoZSBvYnNvbGV0ZSAiCisiY29uZmZpbGUgaWYgdGhpcyB3YXMgbm90IGltbWVkaWF0ZWx5IGltcGxlbWVudGVkKS4gIElmIEk8bGFzdHZlcnNpb24+IGlzICIKKyJlbXB0eSBvciBvbWl0dGVkLCB0aGVuIHRoZSBvcGVyYXRpb24gaXMgdHJpZWQgb24gZXZlcnkgdXBncmFkZS4gSTxwYWNrYWdlPiAiCisiaXMgdGhlIHBhY2thZ2UgbmFtZSwgaXQncyBvcHRpb25hbCBhcyBpdCB3aWxsIGRlZmF1bHQgdG8gIgorIiREUEtHX01BSU5UU0NSSVBUX1BBQ0tBR0UgKHRoaXMgdmFyaWFibGUgaXMgc2V0IGJ5IGRwa2cgdG8gdGhlIG5hbWUgb2YgdGhlICIKKyJwYWNrYWdlIGFjdGVkIHVwb24pLiBBbGwgdGhlIHBhcmFtZXRlcnMgb2YgdGhlIG1haW50YWluZXIgc2NyaXB0cyBoYXZlIHRvIGJlICIKKyJmb3J3YXJkZWQgdG8gdGhlIHByb2dyYW0gYWZ0ZXIgXCItLVwiLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjc1Cittc2dpZCAiIgorIkN1cnJlbnQgaW1wbGVtZW50YXRpb246IGluIHRoZSBCPHByZWluc3Q+LCBpdCBjaGVja3MgaWYgdGhlIGNvbmZmaWxlIHdhcyAiCisibW9kaWZpZWQgYW5kIHJlbmFtZXMgaXQgZWl0aGVyIHRvIEk8Y29uZmZpbGU+QjwuZHBrZy1yZW1vdmU+IChpZiBub3QgIgorIm1vZGlmaWVkKSBvciB0byBJPGNvbmZmaWxlPkI8LmRwa2ctYmFja3VwPiAoaWYgbW9kaWZpZWQpLiBJbiB0aGUgIgorIkI8cG9zdGluc3Q+LCB0aGUgbGF0dGVyIGZpbGUgaXMgcmVuYW1lZCB0byBJPGNvbmZmaWxlPkI8LmRwa2ctYmFrPiBhbmQga2VwdCAiCisiZm9yIHJlZmVyZW5jZSBhcyBpdCBjb250YWlucyB1c2VyIG1vZGlmaWNhdGlvbnMgYnV0IHRoZSBmb3JtZXIgd2lsbCBiZSAiCisicmVtb3ZlZC4gSWYgdGhlIHBhY2thZ2UgdXBncmFkZSBhYm9ydHMsIHRoZSBCPHBvc3RybT4gcmVpbnN0YWxscyB0aGUgIgorIm9yaWdpbmFsIGNvbmZmaWxlLiBEdXJpbmcgcHVyZ2UsIHRoZSBCPHBvc3RybT4gd2lsbCBhbHNvIGRlbGV0ZSB0aGUgQjwuZHBrZy0iCisiYmFrPiBmaWxlIGtlcHQgdXAgdG8gbm93LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMTo3NgorIywgbm8td3JhcAorbXNnaWQgIlJFTkFNSU5HIEEgQ09ORkZJTEUiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMTo4MworbXNnaWQgIiIKKyJJZiBhIGNvbmZmaWxlIGlzIG1vdmVkIGZyb20gb25lIGxvY2F0aW9uIHRvIGFub3RoZXIsIHlvdSBuZWVkIHRvIG1ha2Ugc3VyZSAiCisieW91IG1vdmUgYWNyb3NzIGFueSBjaGFuZ2VzIHRoZSB1c2VyIGhhcyBtYWRlLiBUaGlzIG1heSBzZWVtIGEgc2ltcGxlIGNoYW5nZSAiCisidG8gdGhlIEI8cHJlaW5zdD4gc2NyaXB0IGF0IGZpcnN0LCBob3dldmVyIHRoYXQgd2lsbCByZXN1bHQgaW4gdGhlIHVzZXIgIgorImJlaW5nIHByb21wdGVkIGJ5IGRwa2cgdG8gYXBwcm92ZSB0aGUgY29uZmZpbGUgZWRpdHMgZXZlbiB0aG91Z2ggdGhleSBhcmUgIgorIm5vdCByZXNwb25zaWJsZSBvZiB0aGVtLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjg3Cittc2dpZCAiIgorIkdyYWNlZnVsIHJlbmFtaW5nIGNhbiBiZSBpbXBsZW1lbnRlZCBieSBwdXR0aW5nIHRoZSBmb2xsb3dpbmcgc2hlbGwgc25pcHBldCAiCisiaW4gdGhlIEI8cHJlaW5zdD4sIEI8cG9zdGluc3Q+IGFuZCBCPHBvc3RybT4gbWFpbnRhaW5lciBzY3JpcHRzOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjkwCisjLCBuby13cmFwCittc2dpZCAiIgorIiAgICBkcGtnLW1haW50c2NyaXB0LWhlbHBlciBtdl9jb25mZmlsZSBcXGVcbiIKKyIgICAgICAgIEk8b2xkY29uZmZpbGU+IEk8bmV3Y29uZmZpbGU+IEk8bGFzdHZlcnNpb24+IEk8cGFja2FnZT4gLS0gXCIkQFwiXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxMDAKK21zZ2lkICIiCisiSTxvbGRjb25mZmlsZT4gYW5kIEk8bmV3Y29uZmZpbGU+IGFyZSB0aGUgb2xkIGFuZCBuZXcgbmFtZSBvZiB0aGUgY29uZmZpbGUgIgorInRvIHJlbmFtZS4gSTxsYXN0dmVyc2lvbj4gaXMgdGhlIGxhc3QgdmVyc2lvbiBvZiB0aGUgcGFja2FnZSB0aGF0IGNvbnRhaW5lZCAiCisidGhlIGNvbmZmaWxlIHdpdGggdGhlIG9sZCBuYW1lLiBJZiBJPGxhc3R2ZXJzaW9uPiBpcyBlbXB0eSBvciBvbWl0dGVkLCB0aGVuICIKKyJ0aGUgb3BlcmF0aW9uIGlzIHRyaWVkIG9uIGV2ZXJ5IHVwZ3JhZGUgKG5vdGU6IGl0J3Mgc2FmZXIgdG8gZ2l2ZSB0aGUgIgorInZlcnNpb24gYW5kIGhhdmUgdGhlIG9wZXJhdGlvbiB0cmllZCBvbmx5IG9uY2UpLiBJPHBhY2thZ2U+IGlzIHRoZSBwYWNrYWdlICIKKyJuYW1lLCBpdCdzIG9wdGlvbmFsIGFzIGl0IHdpbGwgZGVmYXVsdCB0byAkRFBLR19NQUlOVFNDUklQVF9QQUNLQUdFICh0aGlzICIKKyJ2YXJpYWJsZSBpcyBzZXQgYnkgZHBrZyB0byB0aGUgbmFtZSBvZiB0aGUgcGFja2FnZSBhY3RlZCB1cG9uKS4gQWxsIHRoZSAiCisicGFyYW1ldGVycyBvZiB0aGUgbWFpbnRhaW5lciBzY3JpcHRzIGhhdmUgdG8gYmUgZm9yd2FyZGVkIHRvIHRoZSBwcm9ncmFtICIKKyJhZnRlciBcIi0tXCIuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MTA4Cittc2dpZCAiIgorIkN1cnJlbnQgaW1wbGVtZW50YXRpb246IHRoZSBCPHByZWluc3Q+IGNoZWNrcyBpZiB0aGUgY29uZmZpbGUgaGFzIGJlZW4gIgorIm1vZGlmaWVkLCBpZiB5ZXMgaXQncyBsZWZ0IG9uIHBsYWNlIG90aGVyd2lzZSBpdCdzIHJlbmFtZWQgdG8gIgorIkk8b2xkY29uZmZpbGU+QjwuZHBrZy1yZW1vdmU+LiBPbiBjb25maWd1cmF0aW9uLCB0aGUgQjxwb3N0aW5zdD4gcmVtb3ZlcyAiCisiSTxvbGRjb25mZmlsZT5CPC5kcGtnLXJlbW92ZT4gYW5kIHJlbmFtZXMgSTxvbGRjb25mZmlsZT4gdG8gSTxuZXdjb25mZmlsZT4gIgorImlmIEk8b2xkY29uZmZpbGU+IGlzIHN0aWxsIGF2YWlsYWJsZS4gT24gYWJvcnQtdXBncmFkZS9hYm9ydC1pbnN0YWxsLCB0aGUgIgorIkI8cG9zdHJtPiByZW5hbWVzIEk8b2xkY29uZmZpbGU+QjwuZHBrZy1yZW1vdmU+IGJhY2sgdG8gSTxvbGRjb25mZmlsZT4gaWYgIgorInJlcXVpcmVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxMDkKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiSU5GT1JNQVRJT04gQUJPVVQgUEFDS0FHRVMiCittc2dpZCAiSU5URUdSQVRJT04gSU4gUEFDS0FHRVMiCittc2dzdHIgIklORk9STUHDh8ODTyBTT0JSRSBQQUNPVEVTIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjExNgorbXNnaWQgIiIKKyJHaXZlbiB0aGF0IEI8ZHBrZy1tYWludHNjcmlwdC1oZWxwZXI+IGlzIHVzZWQgaW4gdGhlIEI8cHJlaW5zdD4sIHVzaW5nIGl0ICIKKyJ1bmNvbmRpdGlvbmFsbHkgcmVxdWlyZXMgYSBwcmUtZGVwZW5kZW5jeSB0byBlbnN1cmUgdGhhdCB0aGUgcmVxdWlyZWQgIgorInZlcnNpb24gb2YgZHBrZyBoYXMgYmVlbiB1bnBhY2tlZCBiZWZvcmUuIFRoZSByZXF1aXJlZCB2ZXJzaW9uIGRlcGVuZHMgb24gIgorInRoZSBjb21tYW5kIHVzZWQsIGZvciBCPHJtX2NvbmZmaWxlPiBhbmQgQjxtdl9jb25mZmlsZT4gaXQgaXMgMS4xNS43LjI6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MTE4CisjLCBuby13cmFwCittc2dpZCAiICAgIEI8UHJlLURlcGVuZHM6PiBkcGtnIChFPGd0Pj0gMS4xNS43LjIpXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxMjMKK21zZ2lkICIiCisiQnV0IGluIG1hbnkgY2FzZXMgdGhlIG9wZXJhdGlvbiBkb25lIGJ5IHRoZSBwcm9ncmFtIGlzIG5vdCBjcml0aWNhbCBmb3IgdGhlICIKKyJwYWNrYWdlLCBhbmQgaW5zdGVhZCBvZiB1c2luZyBhIHByZS1kZXBlbmRlbmN5IHdlIGNhbiBjYWxsIHRoZSBwcm9ncmFtIG9ubHkgIgorImlmIHdlIGtub3cgdGhhdCB0aGUgcmVxdWlyZWQgY29tbWFuZCBpcyBzdXBwb3J0ZWQgYnkgdGhlIGN1cnJlbnRseSBpbnN0YWxsZWQgIgorImRwa2c6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MTI3CisjLCBuby13cmFwCittc2dpZCAiIgorIiAgICBpZiBkcGtnLW1haW50c2NyaXB0LWhlbHBlciBzdXBwb3J0cyBJPGNvbW1hbmQ+OyB0aGVuXG4iCisiICAgICAgICBkcGtnLW1haW50c2NyaXB0LWhlbHBlciBJPGNvbW1hbmQ+IC4uLlxuIgorIiAgICBmaVxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MTMwCittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMTAgUmFwaGFcXFs6ZV1sIEhlcnR6b2ciCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxMzIKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAwOCBKb2V5IEhlc3MiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxMzQKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAwNyBHdWlsbGVtIEpvdmVyIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MTM2Cittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMDUgU2NvdHQgSmFtZXMgUmVtbmFudCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMToxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgImRwa2ctbWVyZ2VjaGFuZ2Vsb2dzIgorbXNnc3RyICJCPGRwa2c+IFtJPG9ww6fDtWVzPl0gSTxhw6fDo28+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjQKK21zZ2lkICJkcGtnLW1lcmdlY2hhbmdlbG9ncyAtIDMtd2F5IG1lcmdlIG9mIGRlYmlhbi9jaGFuZ2Vsb2cgZmlsZXMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTo4CisjLCBmdXp6eQorbXNnaWQgIiIKKyJCPGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzPiBbSTxvcHRpb24+Li4uXSBJPG9sZD4gSTxuZXctYT4gSTxuZXctYj4gW0k8b3V0Pl0iCittc2dzdHIgIkI8ZHBrZz4gW0k8b3DDp8O1ZXM+XSBJPGHDp8Ojbz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6MTUKK21zZ2lkICIiCisiVGhpcyBwcm9ncmFtIHdpbGwgdXNlIHRoZSAzIHByb3ZpZGVkIHZlcnNpb25zIG9mIHRoZSBEZWJpYW4gY2hhbmdlbG9nIHRvICIKKyJnZW5lcmF0ZSBhIG1lcmdlZCBjaGFuZ2Vsb2cgZmlsZS4gVGhlIHJlc3VsdGluZyBjaGFuZ2Vsb2cgaXMgc3RvcmVkIGluIHRoZSAiCisiZmlsZSBJPG91dD4gb3Igb3V0cHV0IHRvIHRoZSBzdGFuZGFyZCBvdXRwdXQgaWYgdGhhdCBwYXJhbWV0ZXIgaXMgbm90IGdpdmVuLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjI2Cittc2dpZCAiIgorIkVhY2ggZW50cnkgaXMgaWRlbnRpZmllZCBieSBpdHMgdmVyc2lvbiBudW1iZXIgYW5kIHRoZXkgYXJlIGFzc3VtZWQgdG8gYmUgIgorIm5vdCBjb25mbGljdGluZywgdGhleSBhcmUgc2ltcGx5IG1lcmdlZCBpbiB0aGUgcmlnaHQgb3JkZXIgKGJ5IGRlY3JlYXNpbmcgIgorInZlcnNpb24gbnVtYmVyKS4gV2hlbiBCPC0tbWVyZ2UtcHJlcmVsZWFzZXM+IGlzIHVzZWQsIHRoZSBwYXJ0IG9mIHRoZSAiCisidmVyc2lvbiBudW1iZXIgYWZ0ZXIgdGhlIGxhc3QgdGlsZGUgaXMgZHJvcHBlZCBzbyB0aGF0IDEuMC0xfmV4cDEgYW5kICIKKyIxLjAtMX5leHA1IGFyZSBjb25zaWRlcmVkIHRvIGJlIHRoZSBzYW1lIGVudHJ5LiBXaGVuIHRoZSBzYW1lIHZlcnNpb24gaXMgIgorImF2YWlsYWJsZSBpbiBib3RoIEk8bmV3LWE+IGFuZCBJPG5ldy1iPiwgYSBzdGFuZGFyZCBsaW5lLWJhc2VkIDMtd2F5IG1lcmdlICIKKyJpcyBhdHRlbXB0ZWQgKHByb3ZpZGVkIHRoYXQgdGhlIG1vZHVsZSBBbGdvcml0aG06Ok1lcmdlIGlzIGF2YWlsYWJsZSBcXFtlbV0gIgorIml0J3MgcGFydCBvZiB0aGUgcGFja2FnZSBsaWJhbGdvcml0aG0tbWVyZ2UtcGVybCBcXFtlbV0gb3RoZXJ3aXNlIHlvdSBnZXQgYSAiCisiZ2xvYmFsIGNvbmZsaWN0IG9uIHRoZSBjb250ZW50IG9mIHRoZSBlbnRyeSkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjI4CisjLCBuby13cmFwCittc2dpZCAiQjwtLW1lcmdlLXByZXJlbGVhc2VzPiwgQjwtbT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTozMworbXNnaWQgIiIKKyJEcm9wIHRoZSBwYXJ0IGFmdGVyIHRoZSBsYXN0IHRpbGRlIGluIHRoZSB2ZXJzaW9uIG51bWJlciB3aGVuIGRvaW5nIHZlcnNpb24gIgorImNvbXBhcmlzb24gdG8gaWRlbnRpZnkgaWYgdHdvIGVudHJpZXMgYXJlIHN1cHBvc2VkIHRvIGJlIHRoZSBzYW1lIG9yIG5vdC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTozOAorbXNnaWQgIiIKKyJUaGlzIGlzIHVzZWZ1bCB3aGVuIHlvdSBrZWVwIHVzaW5nIHRoZSBzYW1lIGNoYW5nZWxvZyBlbnRyeSBidXQgeW91IGluY3JlYXNlICIKKyJpdHMgdmVyc2lvbiBudW1iZXIgcmVndWxhcmx5LiBGb3IgaW5zdGFuY2UsIHlvdSBtaWdodCBoYXZlIDIuMy0xfmV4cDEsICIKKyIyLjMtMX5leHAyLCAuLi4gdW50aWwgdGhlIG9mZmljaWFsIHJlbGVhc2UgMi4zLTEgYW5kIHRoZXkgYXJlIGFsbCB0aGUgc2FtZSAiCisiY2hhbmdlbG9nIGVudHJ5IHRoYXQgaGFzIGV2b2x2ZWQgb3ZlciB0aW1lLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTo0NQorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJBQ1RJT05TIgorbXNnaWQgIkxJTUlUQVRJT05TIgorbXNnc3RyICJBw4fDlUVTIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjUwCittc2dpZCAiIgorIkFueXRoaW5nIHRoYXQgaXMgbm90IHBhcnNlZCBieSBEcGtnOjpDaGFuZ2Vsb2cgaXMgbG9zdCBkdXJpbmcgdGhlIG1lcmdlLiAgIgorIlRoaXMgbWlnaHQgaW5jbHVkZSBzdHVmZiBsaWtlIHZpbSBtb2RlbGluZXMsIGNvbW1lbnRzIHdoaWNoIHdlcmUgbm90ICIKKyJzdXBwb3NlZCB0byBiZSB0aGVyZSwgZXRjLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTo1MQorIywgbm8td3JhcAorbXNnaWQgIklOVEVHUkFUSU9OIFdJVEggR0lUIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6NTYKK21zZ2lkICIiCisiSWYgeW91IHdhbnQgdG8gdXNlIHRoaXMgcHJvZ3JhbSB0byBtZXJnZSBEZWJpYW4gY2hhbmdlbG9nIGZpbGVzIGluIGEgZ2l0ICIKKyJyZXBvc2l0b3J5LCB5b3UgaGF2ZSBmaXJzdCB0byByZWdpc3RlciBhIG5ldyBtZXJnZSBkcml2ZXIgaW4gQjwuZ2l0L2NvbmZpZz4gIgorIm9yIEI8fi8uZ2l0Y29uZmlnPjoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTo2MAorIywgbm8td3JhcAorbXNnaWQgIiIKKyIgW21lcmdlIFwiZHBrZy1tZXJnZWNoYW5nZWxvZ3NcIl1cbiIKKyIgICAgIG5hbWUgPSBkZWJpYW4vY2hhbmdlbG9nIG1lcmdlIGRyaXZlclxuIgorIiAgICAgZHJpdmVyID0gZHBrZy1tZXJnZWNoYW5nZWxvZ3MgLW0gJU8gJUEgJUIgJUFcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjY0Cittc2dpZCAiIgorIlRoZW4geW91IGhhdmUgdG8gc2V0dXAgdGhlIG1lcmdlIGF0dHJpYnV0ZSBmb3IgdGhlIGRlYmlhbi9jaGFuZ2Vsb2cgZmlsZSAiCisiZWl0aGVyIGluIEI8LmdpdGF0dHJpYnV0ZXM+IGluIHRoZSByZXBvc2l0b3J5IGl0c2VsZiwgb3IgaW4gQjwuZ2l0L2luZm8vIgorImF0dHJpYnV0ZXM+OiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjY2CisjLCBuby13cmFwCittc2dpZCAiIGRlYmlhbi9jaGFuZ2Vsb2cgbWVyZ2U9ZHBrZy1tZXJnZWNoYW5nZWxvZ3NcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjY4Cittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMDktMjAxMCBSYXBoYVxcWzplXWwgSGVydHpvZyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1uYW1lLjE6NgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJkcGtnLW5hbWUiCittc2dzdHIgImRwa2ciCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbmFtZS4xOjkKK21zZ2lkICJkcGtnLW5hbWUgLSByZW5hbWUgRGViaWFuIHBhY2thZ2VzIHRvIGZ1bGwgcGFja2FnZSBuYW1lcyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW5hbWUuMToxNQorIywgZnV6enkKK21zZ2lkICJCPGRwa2ctbmFtZT4gW0k8b3B0aW9uPi4uLl0gW0I8LS0+XSBJPGZpbGU+Li4uIgorbXNnc3RyICJCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IFtJPG9wdMOnw7Vlcz5dIEI8LS1hdXRvPiBJPG5vbWU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW5hbWUuMToyOQorbXNnaWQgIiIKKyJUaGlzIG1hbnVhbCBwYWdlIGRvY3VtZW50cyB0aGUgQjxkcGtnLW5hbWU+IHByb2dyYW0gd2hpY2ggcHJvdmlkZXMgYW4gZWFzeSAiCisid2F5IHRvIHJlbmFtZSBCPERlYmlhbj4gcGFja2FnZXMgaW50byB0aGVpciBmdWxsIHBhY2thZ2UgbmFtZXMuIEEgZnVsbCAiCisicGFja2FnZSBuYW1lIGNvbnNpc3RzIG9mIEk8cGFja2FnZT5CPF8+STx2ZXJzaW9uPkI8Xz5JPGFyY2hpdGVjdHVyZT5CPC4iCisiPkk8cGFja2FnZS10eXBlPiBhcyBzcGVjaWZpZWQgaW4gdGhlIGNvbnRyb2wgZmlsZSBvZiB0aGUgcGFja2FnZS4gVGhlICIKKyJJPHZlcnNpb24+IHBhcnQgb2YgdGhlIGZpbGVuYW1lIGNvbnNpc3RzIG9mIHRoZSB1cHN0cmVhbSB2ZXJzaW9uIGluZm9ybWF0aW9uICIKKyJvcHRpb25hbGx5IGZvbGxvd2VkIGJ5IGEgaHlwaGVuIGFuZCB0aGUgcmV2aXNpb24gaW5mb3JtYXRpb24uIFRoZSBJPHBhY2thZ2UtIgorInR5cGU+IHBhcnQgY29tZXMgZnJvbSB0aGF0IGZpZWxkIGlmIHByZXNlbnQgb3IgZmFsbGJhY2tzIHRvIEI8ZGViPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctbmFtZS4xOjMxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LWE+LCBCPC0tbm8tYXJjaGl0ZWN0dXJlPiIKK21zZ3N0ciAiQjxkcGtnIC0tcHJpbnQtYXJjaGl0ZWN0dXJlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6MzQKK21zZ2lkICJUaGUgZGVzdGluYXRpb24gZmlsZW5hbWUgd2lsbCBub3QgaGF2ZSB0aGUgYXJjaGl0ZWN0dXJlIGluZm9ybWF0aW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1uYW1lLjE6MzQKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtaz4sIEI8LS1zeW1saW5rPiIKK21zZ3N0ciAiQjwtLWRpc3BsYXk+IEk8bGlnYcOnw6NvPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6MzcKK21zZ2lkICJDcmVhdGUgYSBzeW1saW5rLCBpbnN0ZWFkIG9mIG1vdmluZy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctbmFtZS4xOjM3CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LW8+LCBCPC0tb3ZlcndyaXRlPiIKK21zZ3N0ciAiQjwtLXZlcmJvc2U+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW5hbWUuMTo0MQorbXNnaWQgIiIKKyJFeGlzdGluZyBmaWxlcyB3aWxsIGJlIG92ZXJ3cml0dGVuIGlmIHRoZXkgaGF2ZSB0aGUgc2FtZSBuYW1lIGFzIHRoZSAiCisiZGVzdGluYXRpb24gZmlsZW5hbWUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLW5hbWUuMTo0MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1zPiwgQjwtLXN1YmRpcj4gW0k8ZGlyPl0iCittc2dzdHIgIkI8LS1hbHRkaXI+IEk8ZGlyZXTDs3Jpbz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbmFtZS4xOjUzCittc2dpZCAiIgorIkZpbGVzIHdpbGwgYmUgbW92ZWQgaW50byBhIHN1YmRpcmVjdG9yeS4gSWYgdGhlIGRpcmVjdG9yeSBnaXZlbiBhcyBhcmd1bWVudCAiCisiZXhpc3RzIHRoZSBmaWxlcyB3aWxsIGJlIG1vdmVkIGludG8gdGhhdCBkaXJlY3Rvcnkgb3RoZXJ3aXNlIHRoZSBuYW1lIG9mIHRoZSAiCisidGFyZ2V0IGRpcmVjdG9yeSBpcyBleHRyYWN0ZWQgZnJvbSB0aGUgc2VjdGlvbiBmaWVsZCBpbiB0aGUgY29udHJvbCBwYXJ0IG9mICIKKyJ0aGUgcGFja2FnZS4gVGhlIHRhcmdldCBkaXJlY3Rvcnkgd2lsbCBiZSBgdW5zdGFibGUvYmluYXJ5LUk8YXJjaGl0ZWN0dXJlPi8iCisiSTxzZWN0aW9uPicuIElmIHRoZSBzZWN0aW9uIGlzIG5vdCBmb3VuZCBpbiB0aGUgY29udHJvbCwgdGhlbiBgbm8tc2VjdGlvbicgIgorImlzIGFzc3VtZWQsIGFuZCBpbiB0aGlzIGNhc2UsIGFzIHdlbGwgYXMgZm9yIHNlY3Rpb25zIGBub24tZnJlZScgYW5kICIKKyJgY29udHJpYicgdGhlIHRhcmdldCBkaXJlY3RvcnkgaXMgYEk8c2VjdGlvbj4vYmluYXJ5LUk8YXJjaGl0ZWN0dXJlPicuIFRoZSAiCisic2VjdGlvbiBmaWVsZCBpc24ndCByZXF1aXJlZCBzbyBhIGxvdCBvZiBwYWNrYWdlcyB3aWxsIGZpbmQgdGhlaXIgd2F5IHRvIHRoZSAiCisiYG5vLXNlY3Rpb24nIGFyZWEuIFVzZSB0aGlzIG9wdGlvbiB3aXRoIGNhcmUsIGl0J3MgbWVzc3kuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLW5hbWUuMTo1MworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1jPiwgQjwtLWNyZWF0ZS1kaXI+IgorbXNnc3RyICJCPC0tbmV3PiB8IEI8LS1vbGQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW5hbWUuMTo1OAorbXNnaWQgIiIKKyJUaGlzIG9wdGlvbiBjYW4gdXNlZCB0b2dldGhlciB3aXRoIHRoZSAtcyBvcHRpb24uIElmIGEgdGFyZ2V0IGRpcmVjdG9yeSAiCisiaXNuJ3QgZm91bmQgaXQgd2lsbCBiZSBjcmVhdGVkIGF1dG9tYXRpY2FsbHkuICBCPFVzZSB0aGlzIG9wdGlvbiB3aXRoIGNhcmUuPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1uYW1lLjE6NjEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtdj4sIEI8LS12ZXJzaW9uPiIKK21zZ3N0ciAiQjwtLXZlcnNpb24+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1uYW1lLjE6NjYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGRwa2ctbmFtZSBiYXItZm9vLmRlYj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6NzEKK21zZ2lkICIiCisiVGhlIGZpbGUgYGJhci1mb28uZGViJyB3aWxsIGJlIHJlbmFtZWQgdG8gYmFyLWZvb18xLjAtMl9pMzg2LmRlYiBvciAiCisic29tZXRoaW5nIHNpbWlsYXIgKGRlcGVuZGluZyBvbiB3aGF0ZXZlciBpbmZvcm1hdGlvbiBpcyBpbiB0aGUgY29udHJvbCBwYXJ0ICIKKyJvZiBgYmFyLWZvby5kZWInKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctbmFtZS4xOjcxCisjLCBuby13cmFwCittc2dpZCAiQjxmaW5kIC9yb290L2RlYmlhbi8gLW5hbWUgXFwoYXEqLmRlYlxcKGFxIHwgeGFyZ3MgLW4gMSBkcGtnLW5hbWUgLWE+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbmFtZS4xOjc2Cittc2dpZCAiIgorIkFsbCBmaWxlcyB3aXRoIHRoZSBleHRlbnNpb24gYGRlYicgaW4gdGhlIGRpcmVjdG9yeSAvcm9vdC9kZWJpYW4gYW5kIGl0cyAiCisic3ViZGlyZWN0b3J5J3Mgd2lsbCBiZSByZW5hbWVkIGJ5IGRwa2ctbmFtZSBpZiByZXF1aXJlZCBpbnRvIG5hbWVzIHdpdGggbm8gIgorImFyY2hpdGVjdHVyZSBpbmZvcm1hdGlvbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctbmFtZS4xOjc2CisjLCBuby13cmFwCittc2dpZCAiQjxmaW5kIC1uYW1lIFxcKGFxKi5kZWJcXChhcSB8IHhhcmdzIC1uIDEgZHBrZy1uYW1lIC1hIC1vIC1zIC1jPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW5hbWUuMTo4MgorbXNnaWQgIiIKKyJCPERvbid0IGRvIHRoaXMuPiBZb3VyIGFyY2hpdmUgd2lsbCBiZSBtZXNzZWQgdXAgY29tcGxldGVseSBiZWNhdXNlIGEgbG90IG9mICIKKyJwYWNrYWdlcyBkb24ndCBjb21lIHdpdGggc2VjdGlvbiBpbmZvcm1hdGlvbi4gIEI8RG9uJ3QgZG8gdGhpcy4+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLW5hbWUuMTo4MgorIywgbm8td3JhcAorbXNnaWQgIkI8ZHBrZyAtLWJ1aWxkIGRlYmlhbi10bXAgJiYgZHBrZy1uYW1lIC1vIC1zIC4uIGRlYmlhbi10bXAuZGViPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW5hbWUuMTo4NQorbXNnaWQgIlRoaXMgY2FuIGJlIHVzZWQgd2hlbiBidWlsZGluZyBuZXcgcGFja2FnZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbmFtZS4xOjk1Cittc2dpZCAiIgorIlNvbWUgcGFja2FnZXMgZG9uJ3QgZm9sbG93IHRoZSBuYW1lIHN0cnVjdHVyZSAiCisiSTxwYWNrYWdlPkI8Xz5JPHZlcnNpb24+QjxfPkk8YXJjaGl0ZWN0dXJlPkI8LmRlYj4uICBQYWNrYWdlcyByZW5hbWVkIGJ5ICIKKyJkcGtnLW5hbWUgd2lsbCBmb2xsb3cgdGhpcyBzdHJ1Y3R1cmUuIEdlbmVyYWxseSB0aGlzIHdpbGwgaGF2ZSBubyBpbXBhY3Qgb24gIgorImhvdyBwYWNrYWdlcyBhcmUgaW5zdGFsbGVkIGJ5IEI8ZHNlbGVjdD4oMSkvQjxkcGtnPigxKSwgYnV0IG90aGVyICIKKyJpbnN0YWxsYXRpb24gdG9vbHMgbWlnaHQgZGVwZW5kIG9uIHRoaXMgbmFtaW5nIHN0cnVjdHVyZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6MTAzCittc2dpZCAiIgorIkI8ZGViPig1KSwgQjxkZWItY29udHJvbD4oNSksIEI8ZHBrZz4oMSksIEI8ZHBrZy1kZWI+KDEpLCBCPGZpbmQ+KDEpLCAiCisiQjx4YXJncz4oMSkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbmFtZS4xOjEwNgorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAxOTk1LDE5OTYgRXJpY2sgQnJhbmRlcmhvcnN0IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJkcGtnLXBhcnNlY2hhbmdlbG9nIgorbXNnc3RyICJCPGRwa2c+IFtJPG9ww6fDtWVzPl0gSTxhw6fDo28+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6NAorbXNnaWQgImRwa2ctcGFyc2VjaGFuZ2Vsb2cgLSBwYXJzZSBEZWJpYW4gY2hhbmdlbG9nIGZpbGVzIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo4CisjLCBmdXp6eQorbXNnaWQgIkI8ZHBrZy1wYXJzZWNoYW5nZWxvZz4gW0k8b3B0aW9uPi4uLl0iCittc2dzdHIgIkI8ZHBrZz4gW0k8b3DDp8O1ZXM+XSBJPGHDp8Ojbz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxNAorbXNnaWQgIiIKKyJCPGRwa2ctcGFyc2VjaGFuZ2Vsb2c+IHJlYWRzIGFuZCBwYXJzZXMgdGhlIGNoYW5nZWxvZyBvZiBhbiB1bnBhY2tlZCBEZWJpYW4gIgorInNvdXJjZSB0cmVlIGFuZCBvdXRwdXRzIHRoZSBpbmZvcm1hdGlvbiBpbiBpdCB0byBzdGFuZGFyZCBvdXRwdXQgaW4gYSAiCisibWFjaGluZS1yZWFkYWJsZSBmb3JtLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjI2CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LUw+STxsaWJkaXI+IgorbXNnc3RyICJCPC0tbG9nPT5JPGZpbGVuYW1lPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjMzCittc2dpZCAiIgorIlNwZWNpZnkgYW4gYWRkaXRpb25hbCBkaXJlY3RvcnkgdG8gc2VhcmNoIGZvciBwYXJzZXIgc2NyaXB0cy4gIFRoaXMgIgorImRpcmVjdG9yeSBpcyBzZWFyY2hlZCBiZWZvcmUgdGhlIGRlZmF1bHQgZGlyZWN0b3JpZXMgd2hpY2ggYXJlIGN1cnJlbnRseSBCPC8iCisidXNyL2xvY2FsL2xpYi9kcGtnL3BhcnNlY2hhbmdlbG9nPiBhbmQgQjwvdXNyL2xpYi9kcGtnL3BhcnNlY2hhbmdlbG9nPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTozOQorIywgbm8td3JhcAorbXNnaWQgIlBhcnNlciBPcHRpb25zIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo0NAorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIG9wdGlvbnMgY2FuIGJlIHVzZWQgdG8gaW5mbHVlbmNlIHRoZSBvdXRwdXQgb2YgdGhlIGNoYW5nZWxvZyAiCisicGFyc2VyLCBlLmcuIHRoZSByYW5nZSBvZiBlbnRyaWVzIG9yIHRoZSBmb3JtYXQgb2YgdGhlIG91dHB1dC4gVGhleSBuZWVkIHRvICIKKyJiZSBzdXBwb3J0ZWQgYnkgdGhlIHBhcnNlciBzY3JpcHQgaW4gcXVlc3Rpb24uIFNlZSBhbHNvIEI8Q0FWRUFUUz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6NDQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tZm9ybWF0Pkk8IG91dHB1dGZvcm1hdD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjUzCittc2dpZCAiIgorIlNldCB0aGUgb3V0cHV0IGZvcm1hdC4gQ3VycmVudGx5IHN1cHBvcnRlZCB2YWx1ZXMgYXJlIEk8ZHBrZz4gYW5kICIKKyJJPHJmYzgyMj4uICBJPGRwa2c+IGlzIHRoZSBjbGFzc2ljIG91dHB1dCBmb3JtYXQgKGZyb20gYmVmb3JlIHRoaXMgb3B0aW9uICIKKyJleGlzdGVkKSBhbmQgdGhlIGRlZmF1bHQuIEl0IGNvbnNpc3RzIG9mIG9uZSBwYXJhZ3JhcGggaW4gRGViaWFuIGNvbnRyb2wgIgorImZvcm1hdCAoc2VlIEI8ZGViLWNvbnRyb2w+KDUpKS4gSWYgbW9yZSB0aGFuIG9uZSBlbnRyeSBpcyByZXF1ZXN0ZWQsIHRoZW4gIgorIm1vc3QgZmllbGRzIGFyZSB0YWtlbiBmcm9tIHRoZSBsYXRlc3QgZW50cnksIGV4Y2VwdCBvdGhlcndpc2Ugc3RhdGVkOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjU0CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8U291cmNlOj5JPCBwa2ctbmFtZT4iCittc2dzdHIgIkI8LS1sb2c9Pkk8ZmlsZW5hbWU+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjU2CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8VmVyc2lvbjo+STwgdmVyc2lvbj4iCittc2dzdHIgIkI8LS1sb2c9Pkk8ZmlsZW5hbWU+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjU4CisjLCBuby13cmFwCittc2dpZCAiQjxEaXN0cmlidXRpb246Pkk8IHRhcmdldC1kaXN0cmlidXRpb24+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6NjAKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxVcmdlbmN5Oj5JPCB1cmdlbmN5PiIKK21zZ3N0ciAiQjwtLWxvZz0+STxmaWxlbmFtZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo2MworbXNnaWQgIlRoZSBoaWdoZXN0IHVyZ2VuY3kgb2YgYWxsIGluY2x1ZGVkIGVudHJpZXMgaXMgdXNlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo2MworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPE1haW50YWluZXI6Pkk8IGF1dGhvcj4iCittc2dzdHIgIkI8LS1sb2c9Pkk8ZmlsZW5hbWU+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjY1CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8RGF0ZTo+STwgZGF0ZT4iCittc2dzdHIgIkI8LS1sb2c9Pkk8ZmlsZW5hbWU+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjY3CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8Q2xvc2VzOj5JPCBidWctbnVtYmVyPiIKK21zZ3N0ciAiQjwtLWxvZz0+STxmaWxlbmFtZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo3MAorbXNnaWQgIlRoZSBDbG9zZXMgZmllbGRzIG9mIGFsbCBpbmNsdWRlZCBlbnRyaWVzIGFyZSBtZXJnZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6NzAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPENoYW5nZXM6Pkk8IGNoYW5nZWxvZy1lbnRyaWVzPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6NzcKK21zZ2lkICIiCisiVGhlIHRleHQgb2YgYWxsIGNoYW5nZWxvZyBlbnRyaWVzIGlzIGNvbmNhdGVuYXRlZC4gVG8gbWFrZSB0aGlzIGZpZWxkIGEgIgorInZhbGlkIERlYmlhbiBjb250cm9sIGZvcm1hdCBtdWx0aWxpbmUgZmllbGQgZW1wdHkgbGluZXMgYXJlIHJlcGxhY2VkIHdpdGggYSAiCisic2luZ2xlIGZ1bGwgc3RvcCBhbmQgYWxsIGxpbmVzIGlzIGludGVuZGVkIGJ5IG9uZSBzcGFjZSBjaGFyYWN0ZXIuIFRoZSBleGFjdCAiCisiY29udGVudCBkZXBlbmRzIG9uIHRoZSBjaGFuZ2Vsb2cgZm9ybWF0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6ODAKK21zZ2lkICJUaGVyZSBtaWdodCBiZSBhZGRpdGlvbmFsIHVzZXItZGVmaW5lZCBmaWVsZHMgcHJlc2VudC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjg0Cittc2dpZCAiIgorIlRoZSBCPHJmYzgyMj4gZm9ybWF0IHVzZXMgdGhlIHNhbWUgZmllbGRzIGJ1dCBvdXRwdXRzIGEgc2VwYXJhdGUgcGFyYWdyYXBoICIKKyJmb3IgZWFjaCBjaGFuZ2Vsb2cgZW50cnkgc28gdGhhdCBhbGwgbWV0YWRhdGEgZm9yIGVhY2ggZW50cnkgaXMgcHJlc2VydmVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjg0CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1zaW5jZT4gSTx2ZXJzaW9uPiwgQjwtcz5JPHZlcnNpb24+LEI8IC12Pkk8dmVyc2lvbj4iCittc2dzdHIgIkI8LS12ZXJzaW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjg3Cittc2dpZCAiaW5jbHVkZSBhbGwgY2hhbmdlcyBsYXRlciB0aGFuIEk8dmVyc2lvbj4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6ODcKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLXVudGlsPiBJPHZlcnNpb24+LCBCPC11Pkk8dmVyc2lvbj4iCittc2dzdHIgIkI8LS12ZXJzaW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjkwCittc2dpZCAiaW5jbHVkZSBhbGwgY2hhbmdlcyBlYXJsaWVyIHRoYW4gSTx2ZXJzaW9uPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo5MAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tZnJvbT4gSTx2ZXJzaW9uPiwgQjwtZj5JPHZlcnNpb24+IgorbXNnc3RyICJCPC0tdmVyc2lvbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo5MworbXNnaWQgImluY2x1ZGUgYWxsIGNoYW5nZXMgZXF1YWwgb3IgbGF0ZXIgdGhhbiBJPHZlcnNpb24+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjkzCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS10bz4gSTx2ZXJzaW9uPiwgQjwtdD5JPHZlcnNpb24+IgorbXNnc3RyICJCPC0tdmVyc2lvbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo5NgorbXNnaWQgImluY2x1ZGUgYWxsIGNoYW5nZXMgdXAgdG8gb3IgZXF1YWwgdGhhbiBJPHZlcnNpb24+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjk2CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1jb3VudD4gSTxudW1iZXI+LCBCPC1jPkk8bnVtYmVyPiwgQjwtbj5JPG51bWJlcj4iCittc2dzdHIgIkI8ZHBrZyAtaT4gfCBCPC0taW5zdGFsbD4gSTxhcnF1aXZvX2RvX3BhY290ZT4uLi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxMDAKK21zZ2lkICIiCisiaW5jbHVkZSBJPG51bWJlcj4gZW50cmllcyBmcm9tIHRoZSB0b3AgKG9yIHRoZSB0YWlsIGlmIEk8bnVtYmVyPiBpcyBsb3dlciAiCisidGhhbiAwKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxMDAKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLW9mZnNldD4gSTxudW1iZXI+LCBCPC1vPkk8bnVtYmVyPiIKK21zZ3N0ciAiQjwtLWFib3J0LWFmdGVyPT5JPG7Dum1lcm8+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTA0Cittc2dpZCAiIgorImNoYW5nZSB0aGUgc3RhcnRpbmcgcG9pbnQgZm9yIC0tY291bnQsIGNvdW50ZWQgZnJvbSB0aGUgdG9wIChvciB0aGUgdGFpbCBpZiAiCisiSTxudW1iZXI+IGlzIGxvd2VyIHRoYW4gMCkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTA0IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyNjgKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWFsbD4iCittc2dzdHIgIkI8LS1hbGw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTA4Cittc2dpZCAiIgorImluY2x1ZGUgYWxsIGNoYW5nZXMuIE5vdGU6IG90aGVyIG9wdGlvbnMgaGF2ZSBubyBlZmZlY3Qgd2hlbiB0aGlzIGlzIGluIHVzZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjExNAorbXNnaWQgIiIKKyJBbGwgQjxQYXJzZXIgT3B0aW9ucz4gZXhjZXB0IGZvciAtdiBhcmUgb25seSBzdXBwb3J0ZWQgaW4gQjxkcGtnPiwgdmVyc2lvbiAiCisiMS4xNC4xNiBhbmQgbGF0ZXIuIFRoaXJkIHBhcnR5IHBhcnNlcnMgZm9yIGNoYW5nZWxvZyBmb3JtYXRzIG90aGVyIHRoYW4gIgorIkk8ZGViaWFuPiBtaWdodCBub3Qgc3VwcG9ydCBhbGwgb3B0aW9ucy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxMTYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGRlYmlhbi9jaGFuZ2Vsb2c+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxMjIKK21zZ2lkICIiCisiVGhlIGNoYW5nZWxvZyBmaWxlLCB1c2VkIHRvIG9idGFpbiB2ZXJzaW9uLWRlcGVuZGVudCBpbmZvcm1hdGlvbiBhYm91dCB0aGUgIgorInNvdXJjZSBwYWNrYWdlLCBzdWNoIGFzIHRoZSB1cmdlbmN5IGFuZCBkaXN0cmlidXRpb24gb2YgYW4gdXBsb2FkLCB0aGUgIgorImNoYW5nZXMgbWFkZSBzaW5jZSBhIHBhcnRpY3VsYXIgcmVsZWFzZSwgYW5kIHRoZSBzb3VyY2UgdmVyc2lvbiBudW1iZXIgIgorIml0c2VsZi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjEyOQorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDA3LCAyMDA4IEZyYW5rIExpY2h0ZW5oZWxkIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLXF1ZXJ5LjE6MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJkcGtnLXF1ZXJ5IgorbXNnc3RyICJCPGRwa2ctcXVlcnktYWN0aW9ucz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMTo0Cittc2dpZCAiZHBrZy1xdWVyeSAtIGEgdG9vbCB0byBxdWVyeSB0aGUgZHBrZyBkYXRhYmFzZSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6OAorIywgZnV6enkKK21zZ2lkICJCPGRwa2ctcXVlcnk+IFtJPG9wdGlvbj4uLi5dIEk8Y29tbWFuZD4iCittc2dzdHIgIkI8ZHBrZz4gW0k8b3DDp8O1ZXM+XSBJPGHDp8Ojbz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMToxMgorbXNnaWQgIiIKKyJCPGRwa2ctcXVlcnk+IGlzIGEgdG9vbCB0byBzaG93IGluZm9ybWF0aW9uIGFib3V0IHBhY2thZ2VzIGxpc3RlZCBpbiB0aGUgIgorIkI8ZHBrZz4gZGF0YWJhc2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXF1ZXJ5LjE6MTQKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtbD4sIEI8LS1saXN0PiBbSTxwYWNrYWdlLW5hbWUtcGF0dGVybj4uLi5dIgorbXNnc3RyICJCPGRwa2cgLS1nZXQtc2VsZWN0aW9ucz4gW0k8cGFkcsOjbz4uLi5dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6MjQKK21zZ2lkICIiCisiTGlzdCBwYWNrYWdlcyBtYXRjaGluZyBnaXZlbiBwYXR0ZXJuLiBJZiBubyBJPHBhY2thZ2UtbmFtZS1wYXR0ZXJuPiBpcyAiCisiZ2l2ZW4sIGxpc3QgYWxsIHBhY2thZ2VzIGluIEk8L3Zhci9saWIvZHBrZy9zdGF0dXM+LCBleGNsdWRpbmcgdGhlIG9uZXMgIgorIm1hcmtlZCBhcyBub3QtaW5zdGFsbGVkIChpLmUuIHRob3NlIHdoaWNoIGhhdmUgYmVlbiBwcmV2aW91c2x5IHB1cmdlZCkuICIKKyJOb3JtYWwgc2hlbGwgd2lsZGNoYXJzIGFyZSBhbGxvd2VkIGluIEk8cGFja2FnZS1uYW1lLXBhdHRlcm4+LiBQbGVhc2Ugbm90ZSAiCisieW91IHdpbGwgcHJvYmFibHkgaGF2ZSB0byBxdW90ZSBJPHBhY2thZ2UtbmFtZS1wYXR0ZXJuPiB0byBwcmV2ZW50IHRoZSBzaGVsbCAiCisiZnJvbSBwZXJmb3JtaW5nIGZpbGVuYW1lIGV4cGFuc2lvbi4gRm9yIGV4YW1wbGUgdGhpcyB3aWxsIGxpc3QgYWxsIHBhY2thZ2UgIgorIm5hbWVzIHN0YXJ0aW5nIHdpdGggYGBsaWJjNicnOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6MjcKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiICBCPGRwa2ctcXVlcnkgLWwgXFwoYXFsaWJjNipcXChhcT5cbiIKK21zZ3N0ciAiQjwgZHBrZyAtbCAnKnZpKic+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6MzEKK21zZ2lkICIiCisiVGhlIGZpcnN0IHRocmVlIGNvbHVtbnMgb2YgdGhlIG91dHB1dCBzaG93IHRoZSBkZXNpcmVkIGFjdGlvbiwgdGhlIHBhY2thZ2UgIgorInN0YXR1cywgYW5kIGVycm9ycywgaW4gdGhhdCBvcmRlci4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjMzCittc2dpZCAiRGVzaXJlZCBhY3Rpb246IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMTozOQorIywgbm8td3JhcAorbXNnaWQgIiIKKyIgIHUgPSBVbmtub3duXG4iCisiICBpID0gSW5zdGFsbFxuIgorIiAgaCA9IEhvbGRcbiIKKyIgIHIgPSBSZW1vdmVcbiIKKyIgIHAgPSBQdXJnZVxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMTo0MgorbXNnaWQgIlBhY2thZ2Ugc3RhdHVzOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6NTEKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiICBuID0gTm90LWluc3RhbGxlZFxuIgorIiAgYyA9IENvbmZpZy1maWxlc1xuIgorIiAgSCA9IEhhbGYtaW5zdGFsbGVkXG4iCisiICBVID0gVW5wYWNrZWRcbiIKKyIgIEYgPSBIYWxmLWNvbmZpZ3VyZWRcbiIKKyIgIFcgPSBUcmlnZ2Vycy1hd2FpdGluZ1xuIgorIiAgdCA9IFRyaWdnZXJzLXBlbmRpbmdcbiIKKyIgIGkgPSBJbnN0YWxsZWRcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6NTQKK21zZ2lkICJFcnJvciBmbGFnczoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjU3CisjLCBuby13cmFwCittc2dpZCAiIgorIiAgRTxsdD5lbXB0eUU8Z3Q+ID0gKG5vbmUpXG4iCisiICBSID0gUmVpbnN0LXJlcXVpcmVkXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjYyCittc2dpZCAiIgorIkFuIHVwcGVyY2FzZSBzdGF0dXMgb3IgZXJyb3IgbGV0dGVyIGluZGljYXRlcyB0aGUgcGFja2FnZSBpcyBsaWtlbHkgdG8gY2F1c2UgIgorInNldmVyZSBwcm9ibGVtcy4gUGxlYXNlIHJlZmVyIHRvIEI8ZHBrZz4oMSkgZm9yIGluZm9ybWF0aW9uIGFib3V0IHRoZSBhYm92ZSAiCisic3RhdGVzIGFuZCBmbGFncy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjY3Cittc2dpZCAiIgorIlRoZSBvdXRwdXQgZm9ybWF0IG9mIHRoaXMgb3B0aW9uIGlzIG5vdCBjb25maWd1cmFibGUsIGJ1dCB2YXJpZXMgIgorImF1dG9tYXRpY2FsbHkgdG8gZml0IHRoZSB0ZXJtaW5hbCB3aWR0aC4gSXQgaXMgaW50ZW5kZWQgZm9yIGh1bWFuIHJlYWRlcnMsICIKKyJhbmQgaXMgbm90IGVhc2lseSBtYWNoaW5lLXJlYWRhYmxlLiBTZWUgQjwtVz4gKEI8LS1zaG93PikgIGFuZCBCPC0tIgorInNob3dmb3JtYXQ+IGZvciBhIHdheSB0byBjb25maWd1cmUgdGhlIG91dHB1dCBmb3JtYXQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXF1ZXJ5LjE6NjcKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtVz4sIEI8LS1zaG93PiBbSTxwYWNrYWdlLW5hbWUtcGF0dGVybj4uLi5dIgorbXNnc3RyICJCPGRwa2cgLS1nZXQtc2VsZWN0aW9ucz4gW0k8cGFkcsOjbz4uLi5dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6NzQKK21zZ2lkICIiCisiSnVzdCBsaWtlIHRoZSBCPC0tbGlzdD4gb3B0aW9uIHRoaXMgd2lsbCBsaXN0IGFsbCBwYWNrYWdlcyBtYXRjaGluZyB0aGUgIgorImdpdmVuIHBhdHRlcm4uIEhvd2V2ZXIgdGhlIG91dHB1dCBjYW4gYmUgY3VzdG9taXplZCB1c2luZyB0aGUgQjwtLSIKKyJzaG93Zm9ybWF0PiBvcHRpb24uICBUaGUgZGVmYXVsdCBvdXRwdXQgZm9ybWF0IGdpdmVzIG9uZSBsaW5lIHBlciBtYXRjaGluZyAiCisicGFja2FnZSwgZWFjaCBsaW5lIGhhdmluZyB0aGUgbmFtZSBhbmQgaW5zdGFsbGVkIHZlcnNpb24gb2YgdGhlIHBhY2thZ2UsICIKKyJzZXBhcmF0ZWQgYnkgYSB0YWIuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXF1ZXJ5LjE6NzQKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtcz4sIEI8LS1zdGF0dXM+IEk8cGFja2FnZS1uYW1lPi4uLiIKK21zZ3N0ciAiQjxkcGtnIC1pPiB8IEI8LS1pbnN0YWxsPiBJPGFycXVpdm9fZG9fcGFjb3RlPi4uLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjc5Cittc2dpZCAiIgorIlJlcG9ydCBzdGF0dXMgb2Ygc3BlY2lmaWVkIHBhY2thZ2UuIFRoaXMganVzdCBkaXNwbGF5cyB0aGUgZW50cnkgaW4gdGhlICIKKyJpbnN0YWxsZWQgcGFja2FnZSBzdGF0dXMgZGF0YWJhc2UuIFdoZW4gbXVsdGlwbGUgSTxwYWNrYWdlLW5hbWU+IGFyZSBsaXN0ZWQsICIKKyJ0aGUgcmVxdWVzdGVkIHN0YXR1cyBlbnRyaWVzIGFyZSBzZXBhcmF0ZWQgYnkgYW4gZW1wdHkgbGluZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcXVlcnkuMTo3OQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1MPiwgQjwtLWxpc3RmaWxlcz4gSTxwYWNrYWdlLW5hbWU+Li4uIgorbXNnc3RyICJCPGRwa2cgLWk+IHwgQjwtLWluc3RhbGw+IEk8YXJxdWl2b19kb19wYWNvdGU+Li4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6ODUKK21zZ2lkICIiCisiTGlzdCBmaWxlcyBpbnN0YWxsZWQgdG8geW91ciBzeXN0ZW0gZnJvbSBJPHBhY2thZ2UtbmFtZT4uIFdoZW4gbXVsdGlwbGUgIgorIkk8cGFja2FnZS1uYW1lPiBhcmUgbGlzdGVkLCB0aGUgcmVxdWVzdGVkIGxpc3RzIG9mIGZpbGVzIGFyZSBzZXBhcmF0ZWQgYnkgYW4gIgorImVtcHR5IGxpbmUuIEhvd2V2ZXIsIG5vdGUgdGhhdCBmaWxlcyBjcmVhdGVkIGJ5IHBhY2thZ2Utc3BlY2lmaWMgIgorImluc3RhbGxhdGlvbi1zY3JpcHRzIGFyZSBub3QgbGlzdGVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1xdWVyeS4xOjg1CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LWM+LCBCPC0tY29udHJvbC1wYXRoPiBJPHBhY2thZ2UtbmFtZT4gW0k8Y29udHJvbC1maWxlPl0iCittc2dzdHIgIkI8ZHBrZyAtaT4gfCBCPC0taW5zdGFsbD4gSTxhcnF1aXZvX2RvX3BhY290ZT4uLi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMTo5MworbXNnaWQgIiIKKyJMaXN0IHBhdGhzIGZvciBjb250cm9sIGZpbGVzIGluc3RhbGxlZCB0byB5b3VyIHN5c3RlbSBmcm9tIEk8cGFja2FnZS1uYW1lPi4gICIKKyJJZiBJPGNvbnRyb2wtZmlsZT4gaXMgc3BlY2lmaWVkIHRoZW4gb25seSBsaXN0IHRoZSBwYXRoIGZvciB0aGF0IGNvbnRyb2wgIgorImZpbGUgaWYgaXQgaXMgcHJlc2VudC4gQjxXYXJuaW5nPjogdGhpcyBjb21tYW5kIGlzIHNlbWktcHVibGljLCBpdCBzaG91bGQgYmUgIgorInVzZWQgb25seSBhcyBhIGxhc3QgcmVzb3J0IHNvbHV0aW9uLCBhbmQgaWYgbm8gb3RoZXIgaW50ZXJmYWNlIGlzIGF2YWlsYWJsZS4gIgorIkl0IG1pZ2h0IGdldCBkZXByZWNhdGVkIGxhdGVyIG9uIGlmIGJldHRlciBpbnRlcmZhY2VzIG9yIHRoZSBjdXJyZW50ICIKKyJhcmNoaXRlY3R1cmFsIGRlZmljaWVuY2llcyBoYXZlIGJlZW4gc29sdmVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1xdWVyeS4xOjkzCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LVM+LCBCPC0tc2VhcmNoPiBJPGZpbGVuYW1lLXNlYXJjaC1wYXR0ZXJuPi4uLiIKK21zZ3N0ciAiQjxkcGtnIC0tZ2V0LXNlbGVjdGlvbnM+IFtJPHBhZHLDo28+Li4uXSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjk5Cittc2dpZCAiIgorIlNlYXJjaCBmb3IgcGFja2FnZXMgdGhhdCBvd24gZmlsZXMgY29ycmVzcG9uZGluZyB0byB0aGUgZ2l2ZW4gcGF0dGVybi4gICIKKyJTdGFuZGFyZCBzaGVsbCB3aWxkY2hhcnMgY2FuIGJlIHVzZWQgaW4gdGhlIHBhdHRlcm4uICBUaGlzIGNvbW1hbmQgd2lsbCBub3QgIgorImxpc3QgZXh0cmEgZmlsZXMgY3JlYXRlZCBieSBtYWludGFpbmVyIHNjcmlwdHMsIG5vciB3aWxsIGl0IGxpc3QgIgorImFsdGVybmF0aXZlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcXVlcnkuMTo5OQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1wPiwgQjwtLXByaW50LWF2YWlsPiBJPHBhY2thZ2UtbmFtZT4uLi4iCittc2dzdHIgIkI8ZHBrZyAtaT4gfCBCPC0taW5zdGFsbD4gSTxhcnF1aXZvX2RvX3BhY290ZT4uLi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMToxMDUKK21zZ2lkICIiCisiRGlzcGxheSBkZXRhaWxzIGFib3V0IEk8cGFja2FnZS1uYW1lPiwgYXMgZm91bmQgaW4gSTwvdmFyL2xpYi9kcGtnLyIKKyJhdmFpbGFibGU+LiBXaGVuIG11bHRpcGxlIEk8cGFja2FnZS1uYW1lPiBhcmUgbGlzdGVkLCB0aGUgcmVxdWVzdGVkICIKKyJJPGF2YWlsYWJsZT4gZW50cmllcyBhcmUgc2VwYXJhdGVkIGJ5IGFuIGVtcHR5IGxpbmUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMToxMTAKK21zZ2lkICIiCisiVXNlcnMgb2YgQVBULWJhc2VkIGZyb250ZW5kcyBzaG91bGQgdXNlIEI8YXB0LWNhY2hlIHNob3c+IEk8cGFja2FnZS1uYW1lPiAiCisiaW5zdGVhZCBhcyB0aGUgSTxhdmFpbGFibGU+IGZpbGUgaXMgb25seSBrZXB0IHVwLXRvLWRhdGUgd2hlbiB1c2luZyAiCisiQjxkc2VsZWN0Pi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcXVlcnkuMToxMjIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1mPiwgQjwtLXNob3dmb3JtYXQ9Pkk8Zm9ybWF0PiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6MTI5Cittc2dpZCAiSW4gdGhlIGZvcm1hdCBzdHJpbmcsIFxcKGxxQjxcXGU+XFwocnEgaW50cm9kdWNlcyBlc2NhcGVzOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6MTM0CisjLCBuby13cmFwCittc2dpZCAiIgorIiAgICBCPFxcZW4+ICBuZXdsaW5lXG4iCisiICAgIEI8XFxlcj4gIGNhcnJpYWdlIHJldHVyblxuIgorIiAgICBCPFxcZXQ+ICB0YWJcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6MTM5Cittc2dpZCAiIgorIlxcKGxxQjxcXGU+XFwocnEgYmVmb3JlIGFueSBvdGhlciBjaGFyYWN0ZXIgc3VwcHJlc3NlcyBhbnkgc3BlY2lhbCBtZWFuaW5nICIKKyJvZiB0aGUgZm9sbG93aW5nIGNoYXJhY3Rlciwgd2hpY2ggaXMgdXNlZnVsIGZvciBcXChscUI8XFxlPlxcKHJxIGFuZCBcXChscUI8IgorIiQ+XFwocnEuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMToxNDcKK21zZ2lkICIiCisiUGFja2FnZSBpbmZvcm1hdGlvbiBjYW4gYmUgaW5jbHVkZWQgYnkgaW5zZXJ0aW5nIHZhcmlhYmxlIHJlZmVyZW5jZXMgdG8gIgorInBhY2thZ2UgZmllbGRzIHVzaW5nIHRoZSBzeW50YXggXFwobHFCPCR7Pkk8ZmllbGQ+W0I8Oz5JPHdpZHRoPl1CPH0+XFwocnEuICIKKyJGaWVsZHMgYXJlIHByaW50ZWQgcmlnaHQtYWxpZ25lZCB1bmxlc3MgdGhlIHdpZHRoIGlzIG5lZ2F0aXZlIGluIHdoaWNoIGNhc2UgIgorImxlZnQgYWxpZ25tZW50IHdpbGwgYmUgdXNlZC4gVGhlIGZvbGxvd2luZyBJPGZpZWxkPnMgYXJlIHJlY29nbmlzZWQgYnV0IHRoZXkgIgorImFyZSBub3QgbmVjZXNzYXJpbHkgYXZhaWxhYmxlIGluIHRoZSBzdGF0dXMgZmlsZSAob25seSBpbnRlcm5hbCBmaWVsZHMgb3IgIgorImZpZWxkcyBzdG9yZWQgaW4gdGhlIGJpbmFyeSBwYWNrYWdlIGVuZCB1cCBpbiBpdCk6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMToxODIKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiICAgIEI8QXJjaGl0ZWN0dXJlPlxuIgorIiAgICBCPEJ1Z3M+XG4iCisiICAgIEI8Q29uZmZpbGVzPiAoaW50ZXJuYWwpXG4iCisiICAgIEI8Q29uZmlnLVZlcnNpb24+IChpbnRlcm5hbClcbiIKKyIgICAgQjxDb25mbGljdHM+XG4iCisiICAgIEI8QnJlYWtzPlxuIgorIiAgICBCPERlcGVuZHM+XG4iCisiICAgIEI8RGVzY3JpcHRpb24+XG4iCisiICAgIEI8RW5oYW5jZXM+XG4iCisiICAgIEI8RXNzZW50aWFsPlxuIgorIiAgICBCPEZpbGVuYW1lPiAoaW50ZXJuYWwsIGZyb250LWVuZCByZWxhdGVkKVxuIgorIiAgICBCPEhvbWVwYWdlPlxuIgorIiAgICBCPEluc3RhbGxlZC1TaXplPlxuIgorIiAgICBCPE1ENXN1bT4gKGludGVybmFsLCBmcm9udC1lbmQgcmVsYXRlZClcbiIKKyIgICAgQjxNU0RPUy1GaWxlbmFtZT4gKGludGVybmFsLCBmcm9udC1lbmQgcmVsYXRlZClcbiIKKyIgICAgQjxNYWludGFpbmVyPlxuIgorIiAgICBCPE9yaWdpbj5cbiIKKyIgICAgQjxQYWNrYWdlPlxuIgorIiAgICBCPFByZS1EZXBlbmRzPlxuIgorIiAgICBCPFByaW9yaXR5PlxuIgorIiAgICBCPFByb3ZpZGVzPlxuIgorIiAgICBCPFJlY29tbWVuZHM+XG4iCisiICAgIEI8UmVwbGFjZXM+XG4iCisiICAgIEI8UmV2aXNpb24+IChvYnNvbGV0ZSlcbiIKKyIgICAgQjxTZWN0aW9uPlxuIgorIiAgICBCPFNpemU+IChpbnRlcm5hbCwgZnJvbnQtZW5kIHJlbGF0ZWQpXG4iCisiICAgIEI8U291cmNlPlxuIgorIiAgICBCPFN0YXR1cz4gKGludGVybmFsKVxuIgorIiAgICBCPFN1Z2dlc3RzPlxuIgorIiAgICBCPFRhZz4gKHVzdWFsbHkgbm90IGluIHRoZSAuZGViIGJ1dCBpbiB0aGUgcmVwb3NpdG9yeSBQYWNrYWdlcyBmaWxlcylcbiIKKyIgICAgQjxUcmlnZ2Vycy1Bd2FpdGVkPiAoaW50ZXJuYWwpXG4iCisiICAgIEI8VHJpZ2dlcnMtUGVuZGluZz4gKGludGVybmFsKVxuIgorIiAgICBCPFZlcnNpb24+XG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjE5MAorbXNnaWQgIiIKKyJUaGUgZGVmYXVsdCBmb3JtYXQgc3RyaW5nIGlzIFxcKGxxQjwke1BhY2thZ2V9XFxldCR7VmVyc2lvbn1cXGVuPlxcKHJxLiAgIgorIkFjdHVhbGx5LCBhbGwgb3RoZXIgZmllbGRzIGZvdW5kIGluIHRoZSBzdGF0dXMgZmlsZSAoaS5lLiB1c2VyIGRlZmluZWQgIgorImZpZWxkcykgY2FuIGJlIHJlcXVlc3RlZCwgdG9vLiBUaGV5IHdpbGwgYmUgcHJpbnRlZCBhcy1pcywgdGhvdWdoLCBubyAiCisiY29udmVyc2lvbiBub3IgZXJyb3IgY2hlY2tpbmcgaXMgZG9uZSBvbiB0aGVtLiAgVG8gZ2V0IHRoZSBuYW1lIG9mIHRoZSBkcGtnICIKKyJtYWludGFpbmVyIGFuZCB0aGUgaW5zdGFsbGVkIHZlcnNpb24sIHlvdSBjb3VsZCBydW46IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMToxOTMKKyMsIG5vLXdyYXAKK21zZ2lkICIgIEI8ZHBrZy1xdWVyeSAtVyAtZj1cXChhcSR7UGFja2FnZX0gJHtWZXJzaW9ufVxcZXQke01haW50YWluZXJ9XFxlblxcKGFxIGRwa2c+XG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctcXVlcnkuMToxOTUgZHBrZy1zcGxpdC4xOjE3OSBzdGFydC1zdG9wLWRhZW1vbi44OjI1OQorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM3NAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJFWElUIFNUQVRVUyIKK21zZ3N0ciAiU1RBVFVTIERFIFNBw41EQSIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcXVlcnkuMToxOTYgZHBrZy1zcGxpdC4xOjE4MCBzdGFydC1zdG9wLWRhZW1vbi44OjI2MAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyODkgdXBkYXRlLWFsdGVybmF0aXZlcy44OjM3NQorIywgbm8td3JhcAorbXNnaWQgIkI8MD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjE5OQorIywgZnV6enkKK21zZ2lkICJUaGUgcmVxdWVzdGVkIHF1ZXJ5IHdhcyBzdWNjZXNzZnVsbHkgcGVyZm9ybWVkLiIKK21zZ3N0ciAiQSBhw6fDo28gcmVxdWlzaXRhZGEgZm9pIGNvbXBsZXRhZGEgY29tIHN1Y2Vzc28uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1xdWVyeS4xOjE5OSBkcGtnLXNwbGl0LjE6MTg2IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjcwCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjI5MgorIywgbm8td3JhcAorbXNnaWQgIkI8MT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjIwMworIywgZnV6enkKK21zZ2lkICIiCisiUHJvYmxlbXMgd2VyZSBlbmNvdW50ZXJlZCB3aGlsZSBwYXJzaW5nIHRoZSBjb21tYW5kIGxpbmUgb3IgcGVyZm9ybWluZyB0aGUgIgorInF1ZXJ5LCBpbmNsdWRpbmcgbm8gZmlsZSBvciBwYWNrYWdlIGJlaW5nIGZvdW5kIChleGNlcHQgZm9yIC0tY29udHJvbC1wYXRoKS4iCittc2dzdHIgIiIKKyJGb3JhbSBlbmNvbnRyYWRvcyBwcm9ibGVtYXMgcXVhbmRvIGFuYWxpc2FuZG8gYSBsaW5oYSBkZSBjb21hbmRvIG91ICIKKyJleGVjdXRhbmRvIGEgYcOnw6NvLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjIxMworbXNnaWQgIiIKKyJUaGlzIHNldHRpbmcgaW5mbHVlbmNlcyB0aGUgb3V0cHV0IG9mIHRoZSBCPC0tbGlzdD4gb3B0aW9uIGJ5IGNoYW5naW5nIHRoZSAiCisid2lkdGggb2YgaXRzIG91dHB1dC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjIxNgorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDAxIFdpY2hlcnQgQWtrZXJtYW4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6MTUKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLXNjYW5wYWNrYWdlcyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjE4Cittc2dpZCAiZHBrZy1zY2FucGFja2FnZXMgLSBjcmVhdGUgUGFja2FnZXMgaW5kZXggZmlsZXMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2FucGFja2FnZXMuMToyNgorbXNnaWQgIiIKKyJCPGRwa2ctc2NhbnBhY2thZ2VzPiBbSTxvcHRpb24+Li4uXSBJPGJpbmFyeS1kaXI+IFtJPG92ZXJyaWRlLWZpbGU+IFtJPHBhdGgtIgorInByZWZpeD5dXSBCPEU8Z3Q+PiBJPFBhY2thZ2VzPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjM5Cittc2dpZCAiIgorIkI8ZHBrZy1zY2FucGFja2FnZXM+IHNvcnRzIHRocm91Z2ggYSB0cmVlIG9mIERlYmlhbiBiaW5hcnkgcGFja2FnZXMgYW5kICIKKyJjcmVhdGVzIGEgUGFja2FnZXMgZmlsZSwgdXNlZCBieSBCPGFwdD4oOCksIEI8ZHNlbGVjdD4oMSksIGV0YywgdG8gdGVsbCB0aGUgIgorInVzZXIgd2hhdCBwYWNrYWdlcyBhcmUgYXZhaWxhYmxlIGZvciBpbnN0YWxsYXRpb24uIFRoZXNlIFBhY2thZ2VzIGZpbGVzIGFyZSAiCisidGhlIHNhbWUgYXMgdGhvc2UgZm91bmQgb24gRGViaWFuIGFyY2hpdmUgc2l0ZXMgYW5kIENELVJPTXMuIFlvdSBtaWdodCB1c2UgIgorIkI8ZHBrZy1zY2FucGFja2FnZXM+IHlvdXJzZWxmIGlmIG1ha2luZyBhIGRpcmVjdG9yeSBvZiBsb2NhbCBwYWNrYWdlcyB0byAiCisiaW5zdGFsbCBvbiBhIGNsdXN0ZXIgb2YgbWFjaGluZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6NTEKK21zZ2lkICIiCisiQjxOb3RlOj4gSWYgeW91IHdhbnQgdG8gYWNjZXNzIHRoZSBnZW5lcmF0ZWQgUGFja2FnZXMgZmlsZSB3aXRoIEI8YXB0PiB5b3UgIgorIndpbGwgcHJvYmFibHkgbmVlZCB0byBjb21wcmVzcyB0aGUgZmlsZSB3aXRoIEI8YnppcDI+KDEpICAoZ2VuZXJhdGluZyBhICIKKyJQYWNrYWdlcy5iejIgZmlsZSkgb3IgQjxnemlwPigxKSAgKGdlbmVyYXRpbmcgYSBQYWNrYWdlcy5neiBmaWxlKS4gYXB0ICIKKyJpZ25vcmVzIHVuY29tcHJlc3NlZCBQYWNrYWdlcyBmaWxlcyBleGNlcHQgb24gbG9jYWwgYWNjZXNzIChpLmUuICBCPGZpbGU6Ly8+ICIKKyJzb3VyY2VzKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2FucGFja2FnZXMuMTo1OAorbXNnaWQgIiIKKyJJPGJpbmFyeWRpcj4gaXMgdGhlIG5hbWUgb2YgdGhlIHRyZWUgb2YgdGhlIGJpbmFyeSBwYWNrYWdlcyB0byBwcm9jZXNzIChmb3IgIgorImV4YW1wbGUsIEI8Y29udHJpYi9iaW5hcnktaTM4Nj4pLiAgSXQgaXMgYmVzdCB0byBtYWtlIHRoaXMgcmVsYXRpdmUgdG8gdGhlICIKKyJyb290IG9mIHRoZSBEZWJpYW4gYXJjaGl2ZSwgYmVjYXVzZSBldmVyeSBGaWxlbmFtZSBmaWVsZCBpbiB0aGUgbmV3IFBhY2thZ2VzICIKKyJmaWxlIHdpbGwgc3RhcnQgd2l0aCB0aGlzIHN0cmluZy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2FucGFja2FnZXMuMTo2MworbXNnaWQgIiIKKyJJPG92ZXJyaWRlZmlsZT4gaXMgdGhlIG5hbWUgb2YgYSBmaWxlIHRvIHJlYWQgd2hpY2ggY29udGFpbnMgaW5mb3JtYXRpb24gIgorImFib3V0IGhvdyB0aGUgcGFja2FnZSBmaXRzIGludG8gdGhlIGRpc3RyaWJ1dGlvbiAoaXQgY2FuIGJlIGEgY29tcHJlc3NlZCAiCisiZmlsZSk7IHNlZSBCPGRlYi1vdmVycmlkZT4oNSkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6NjYKK21zZ2lkICIiCisiSTxwYXRocHJlZml4PiBpcyBhbiBvcHRpb25hbCBzdHJpbmcgdG8gYmUgcHJlcGVuZGVkIHRvIHRoZSBGaWxlbmFtZSBmaWVsZHMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6NzAKK21zZ2lkICIiCisiSWYgbW9yZSB0aGFuIG9uZSB2ZXJzaW9uIG9mIGEgcGFja2FnZSBpcyBmb3VuZCBvbmx5IHRoZSBuZXdlc3Qgb25lIGlzICIKKyJpbmNsdWRlZCBpbiB0aGUgb3V0cHV0LiBJZiB0aGV5IGhhdmUgdGhlIHNhbWUgdmVyc2lvbiBhbmQgb25seSBkaWZmZXIgaW4gIgorImFyY2hpdGVjdHVyZSBvbmx5IHRoZSBmaXJzdCBvbmUgZm91bmQgaXMgdXNlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6NzIKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtdD4sIEI8LS10eXBlPiBJPHR5cGU+IgorbXNnc3RyICJCPC0tdGVzdD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6NzUKK21zZ2lkICJTY2FuIGZvciAqLkk8dHlwZT4gcGFja2FnZXMsIGluc3RlYWQgb2YgKi5kZWIuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjc1CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LXU+LCBCPC0tdWRlYj4iCittc2dzdHIgIkI8LS1oZWxwPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2FucGFja2FnZXMuMTo3OAorbXNnaWQgIkI8T2Jzb2xldGU+IGFsaWFzIGZvciBCPC10dWRlYj4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjc4IGRwa2ctc2NhbnNvdXJjZXMuMTo0OQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1lPiwgQjwtLWV4dHJhLW92ZXJyaWRlPiBJPGZpbGU+IgorbXNnc3RyICJCPC1CPnxCPC0tYXV0by1kZWNvbmZpZ3VyZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6ODQgZHBrZy1zY2Fuc291cmNlcy4xOjU0Cittc2dpZCAiIgorIlNjYW4gSTxmaWxlPiB0byBmaW5kIHN1cHBsZW1lbnRhcnkgb3ZlcnJpZGVzICh0aGUgZmlsZSBjYW4gYmUgY29tcHJlc3NlZCkuICIKKyJTZWUgQjxkZWItZXh0cmEtb3ZlcnJpZGU+KDUpICBmb3IgbW9yZSBpbmZvcm1hdGlvbiBvbiBpdHMgZm9ybWF0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zY2FucGFja2FnZXMuMTo4NAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1hPiwgQjwtLWFyY2g+IEk8YXJjaD4iCittc2dzdHIgIkI8LS1hdXRvPiBJPGxpZ2HDp8Ojbz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6ODgKK21zZ2lkICIiCisiVXNlIGEgcGF0dGVybiBjb25zaXN0aW5nIG9mIEk8Kl9hbGwuZGViPiBhbmQgSTwqX2FyY2guZGViPiBpbnN0ZWFkIG9mICIKKyJzY2FubmluZyBmb3IgYWxsIGRlYnMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjg4CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LW0+LCBCPC0tbXVsdGl2ZXJzaW9uPiIKK21zZ3N0ciAiQjwtLXZlcnNpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjkxCittc2dpZCAiSW5jbHVkZSBhbGwgZm91bmQgcGFja2FnZXMgaW4gdGhlIG91dHB1dC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6OTEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtTT4sIEI8LS1tZWRpdW0+IEk8aWQtc3RyaW5nPiIKK21zZ3N0ciAiQjwtQj58QjwtLWF1dG8tZGVjb25maWd1cmU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjk2Cittc2dpZCAiIgorIkFkZCBhbiBYLU1lZGl1bSBmaWVsZCBjb250YWluaW5nIHRoZSB2YWx1ZSBJPGlkLXN0cmluZz4uIFRoaXMgZmllbGQgaXMgIgorInJlcXVpcmVkIGlmIHlvdSB3YW50IHRvIGdlbmVyYXRlIEI8UGFja2FnZXMuY2Q+IGZpbGVzIGZvciB1c2UgYnkgdGhlIG11bHRpY2QgIgorImFjY2VzcyBtZXRob2Qgb2YgZHNlbGVjdC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6MTAzIHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0NDgKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiRElBR05PU1RJQ1MiCittc2dzdHIgIkRJQUdOw5NTVElDT1MiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6MTA5Cittc2dpZCAiIgorIkI8ZHBrZy1zY2FucGFja2FnZXM+IG91dHB1dHMgdGhlIHVzdWFsIHNlbGYtZXhwbGFuYXRvcnkgZXJyb3JzLiBJdCBhbHNvICIKKyJ3YXJucyBhYm91dCBwYWNrYWdlcyB0aGF0IGFyZSBpbiB0aGUgd3Jvbmcgc3ViZGlyZWN0b3J5LCBhcmUgZHVwbGljYXRlZCwgIgorImhhdmUgYSBGaWxlbmFtZSBmaWVsZCBpbiB0aGVpciBjb250cm9sIGZpbGUsIGFyZSBtaXNzaW5nIGZyb20gdGhlIG92ZXJyaWRlICIKKyJmaWxlLCBvciBoYXZlIG1haW50YWluZXIgc3Vic3RpdHV0aW9ucyB3aGljaCBkbyBub3QgdGFrZSBlZmZlY3QuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6MTE1CisjLCBmdXp6eQorbXNnaWQgIiIKKyJCPGRwa2c+KDEpLCBCPGRzZWxlY3Q+KDEpLCBCPGRlYi1vdmVycmlkZT4oNSksIEI8ZGViLWV4dHJhLW92ZXJyaWRlPig1KSwgIgorIkI8ZHBrZy1zY2Fuc291cmNlcz4oMSkuIgorbXNnc3RyICIiCisiQjxkc2VsZWN0Pig4KSwgQjxkcGtnLWRlYj4oMSksIEI8ZGViPig1KSwgQjxkZWItY29udHJvbD4oNSksIGUgQjxkcGtnLSIKKyJyZWNvbmZpZ3VyZT4oOCkiCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6MQorIywgbm8td3JhcAorbXNnaWQgImRwa2ctc2NhbnNvdXJjZXMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2Fuc291cmNlcy4xOjQKK21zZ2lkICJkcGtnLXNjYW5zb3VyY2VzIC0gY3JlYXRlIFNvdXJjZXMgaW5kZXggZmlsZXMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2Fuc291cmNlcy4xOjEyCittc2dpZCAiIgorIkI8ZHBrZy1zY2Fuc291cmNlcz4gW0k8b3B0aW9uPi4uLl0gSTxiaW5hcnktZGlyPiBbSTxvdmVycmlkZS1maWxlPiBbSTxwYXRoLSIKKyJwcmVmaXg+XV0gQjxFPGd0Pj4gSTxTb3VyY2VzPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6MTcKK21zZ2lkICIiCisiQjxkcGtnLXNjYW5zb3VyY2VzPiBzY2FucyB0aGUgZ2l2ZW4gSTxiaW5hcnktZGlyPiBmb3IgSTwuZHNjPiBmaWxlcy4gIFRoZXNlICIKKyJhcmUgdXNlZCB0byBjcmVhdGUgYSBEZWJpYW4gc291cmNlIGluZGV4LCB3aGljaCBpcyBvdXRwdXQgdG8gc3Rkb3V0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6MjgKK21zZ2lkICIiCisiVGhlIEk8b3ZlcnJpZGUtZmlsZT4sIGlmIGdpdmVuLCBpcyB1c2VkIHRvIHNldCBwcmlvcml0aWVzIGluIHRoZSByZXN1bHRpbmcgIgorImluZGV4IHJlY29yZHMgYW5kIHRvIG92ZXJyaWRlIHRoZSBtYWludGFpbmVyIGZpZWxkIGdpdmVuIGluIHRoZSBJPC5kc2M+ICIKKyJmaWxlcy4gVGhlIGZpbGUgY2FuIGJlIGNvbXByZXNzZWQuIFNlZSBCPGRlYi1vdmVycmlkZT4oNSkgIGZvciB0aGUgZm9ybWF0IG9mICIKKyJ0aGlzIGZpbGUuIFxccy0xTkI6XFxzMCBTaW5jZSB0aGUgb3ZlcnJpZGUgZmlsZSBpcyBpbmRleGVkIGJ5IGJpbmFyeSwgbm90ICIKKyJzb3VyY2UsIHBhY2thZ2VzLCB0aGVyZSdzIGEgYml0IG9mIGEgcHJvYmxlbSBoZXJlLiBUaGUgY3VycmVudCAiCisiaW1wbGVtZW50YXRpb24gdXNlcyB0aGUgaGlnaGVzdCBwcmlvcml0eSBvZiBhbGwgdGhlIGJpbmFyeSBwYWNrYWdlcyBwcm9kdWNlZCAiCisiYnkgYSBJPC5kc2M+IGZpbGUgZm9yIHRoZSBwcmlvcml0eSBvZiB0aGUgc291cmNlIHBhY2thZ2UsIGFuZCB0aGUgb3ZlcnJpZGUgIgorImVudHJ5IGZvciB0aGUgZmlyc3QgYmluYXJ5IHBhY2thZ2UgbGlzdGVkIGluIHRoZSBJPC5kc2M+IGZpbGUgdG8gbW9kaWZ5ICIKKyJtYWludGFpbmVyIGluZm9ybWF0aW9uLiBUaGlzIG1pZ2h0IGNoYW5nZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2Fuc291cmNlcy4xOjMyCittc2dpZCAiIgorIlRoZSBJPHBhdGgtcHJlZml4PiwgaWYgZ2l2ZW4sIGlzIHByZXBlbmRlZCB0byB0aGUgZGlyZWN0b3J5IGZpZWxkIGluIHRoZSAiCisiZ2VuZXJhdGVkIHNvdXJjZSBpbmRleC4gWW91IGdlbmVyYWxseSB1c2UgdGhpcyB0byBtYWtlIHRoZSBkaXJlY3RvcnkgZmllbGRzICIKKyJjb250YWluIHRoZSBwYXRoIGZyb20gdGhlIHRvcCBvZiB0aGUgRGViaWFuIGFyY2hpdmUgaGllcmFyY2h5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6NDMKK21zZ2lkICIiCisiQjxOb3RlOj4gSWYgeW91IHdhbnQgdG8gYWNjZXNzIHRoZSBnZW5lcmF0ZWQgU291cmNlcyBmaWxlIHdpdGggQjxhcHQ+KDgpICAiCisieW91IHdpbGwgcHJvYmFibHkgbmVlZCB0byBjb21wcmVzcyB0aGUgZmlsZSB3aXRoIEI8Z3ppcD4oMSkgIChnZW5lcmF0aW5nIGEgIgorIlNvdXJjZXMuZ3ogZmlsZSkuIGFwdCBpZ25vcmVzIHVuY29tcHJlc3NlZCBTb3VyY2VzIGZpbGVzIGV4Y2VwdCBvbiBsb2NhbCAiCisiYWNjZXNzIChpLmUuICBCPGZpbGU6Ly8+IHNvdXJjZXMpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1zY2Fuc291cmNlcy4xOjQ1CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LW4+LCBCPC0tbm8tc29ydD4iCittc2dzdHIgIkI8LS1uZXc+IHwgQjwtLW9sZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMTo0OAorbXNnaWQgIiIKKyJEb24ndCBzb3J0IHRoZSBpbmRleCByZWNvcmRzLiBOb3JtYWxseSB0aGV5IGFyZSBzb3J0ZWQgYnkgc291cmNlIHBhY2thZ2UgIgorIm5hbWUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6NTQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1zPiwgQjwtLXNvdXJjZS1vdmVycmlkZT4gSTxmaWxlPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6NTgKK21zZ2lkICIiCisiVXNlIEk8ZmlsZT4gYXMgdGhlIHNvdXJjZSBvdmVycmlkZSBmaWxlICh0aGUgZmlsZSBjYW4gYmUgY29tcHJlc3NlZCkuICBUaGUgIgorImRlZmF1bHQgaXMgdGhlIG5hbWUgb2YgdGhlIG92ZXJyaWRlIGZpbGUgeW91IHNwZWNpZmllZCB3aXRoIEk8LnNyYz4gYXBwZW5kZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMTo2NAorbXNnaWQgIiIKKyJUaGUgc291cmNlIG92ZXJyaWRlIGZpbGUgaXMgaW4gYSBkaWZmZXJlbnQgZm9ybWF0IGZyb20gdGhlIGJpbmFyeSBvdmVycmlkZSAiCisiZmlsZS4gSXQgY29udGFpbnMgb25seSB0d28gd2hpdGVzcGFjZSBzZXBhcmF0ZWQgZmllbGRzLCB0aGUgZmlyc3QgaXMgdGhlICIKKyJzb3VyY2UgcGFja2FnZSBuYW1lIGFuZCB0aGUgc2Vjb25kIGlzIHRoZSBzZWN0aW9uLiBCbGFuayBsaW5lcyBhbmQgY29tbWVudCAiCisibGluZXMgYXJlIGlnbm9yZWQgaW4gdGhlIG5vcm1hbCBtYW5uZXIuIElmIGEgcGFja2FnZSBhcHBlYXJzIGluIGJvdGggZmlsZXMgIgorInRoZSBzb3VyY2Ugb3ZlcnJpZGUgdGFrZXMgcHJlY2VkZW5jZSBmb3Igc2V0dGluZyB0aGUgc2VjdGlvbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMTo2NAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tZGVidWc+IgorbXNnc3RyICJCPC0tbm9jaGVjaz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMTo2NgorbXNnaWQgIlR1cm4gZGVidWdnaW5nIG9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6NzUKKyMsIGZ1enp5Cittc2dpZCAiQjxkZWItb3ZlcnJpZGU+KDUpLCBCPGRlYi1leHRyYS1vdmVycmlkZT4oNSksIEI8ZHBrZy1zY2FucGFja2FnZXM+KDEpLiIKK21zZ3N0ciAiIgorIkI8ZHNlbGVjdD4oOCksIEI8ZHBrZy1kZWI+KDEpLCBCPGRlYj4oNSksIEI8ZGViLWNvbnRyb2w+KDUpLCBlIEI8ZHBrZy0iCisicmVjb25maWd1cmU+KDgpIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6NzcKK21zZ2lkICJSb2RlcmljayBTY2hlcnRsZXIgRTxsdD5yb2Rlcmlja0Bhcmdvbi5vcmdFPGd0PiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1zaGxpYmRlcHMuMToxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgImRwa2ctc2hsaWJkZXBzIgorbXNnc3RyICJCPGRwa2ctZGViLWFjdGlvbnM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjQKK21zZ2lkICJkcGtnLXNobGliZGVwcyAtIGdlbmVyYXRlIHNoYXJlZCBsaWJyYXJ5IHN1YnN0dmFyIGRlcGVuZGVuY2llcyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjgKKyMsIGZ1enp5Cittc2dpZCAiQjxkcGtnLXNobGliZGVwcz4gW0k8b3B0aW9uPi4uLl0gW0I8LWU+XUk8ZXhlY3V0YWJsZT4gW0k8b3B0aW9uPi4uLl0iCittc2dzdHIgIkI8ZHBrZz4gW0k8b3DDp8O1ZXM+XSBJPGHDp8Ojbz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjIKK21zZ2lkICIiCisiQjxkcGtnLXNobGliZGVwcz4gY2FsY3VsYXRlcyBzaGFyZWQgbGlicmFyeSBkZXBlbmRlbmNpZXMgZm9yIGV4ZWN1dGFibGVzICIKKyJuYW1lZCBpbiBpdHMgYXJndW1lbnRzLiBUaGUgZGVwZW5kZW5jaWVzIGFyZSBhZGRlZCB0byB0aGUgc3Vic3RpdHV0aW9uICIKKyJ2YXJpYWJsZXMgZmlsZSBCPGRlYmlhbi9zdWJzdHZhcnM+IGFzIHZhcmlhYmxlIG5hbWVzIEI8c2hsaWJzOiIKKyI+STxkZXBlbmRlbmN5ZmllbGQ+IHdoZXJlIEk8ZGVwZW5kZW5jeWZpZWxkPiBpcyBhIGRlcGVuZGVuY3kgZmllbGQgbmFtZS4gQW55ICIKKyJvdGhlciB2YXJpYWJsZXMgc3RhcnRpbmcgd2l0aCBCPHNobGliczo+IGFyZSByZW1vdmVkIGZyb20gdGhlIGZpbGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6NDUKK21zZ2lkICIiCisiQjxkcGtnLXNobGliZGVwcz4gaGFzIHR3byBwb3NzaWJsZSBzb3VyY2VzIG9mIGluZm9ybWF0aW9uIHRvIGdlbmVyYXRlICIKKyJkZXBlbmRlbmN5IGluZm9ybWF0aW9uLiBFaXRoZXIgSTxzeW1ib2xzPiBmaWxlcyBvciBJPHNobGlicz4gZmlsZXMuIEZvciBlYWNoICIKKyJiaW5hcnkgdGhhdCBCPGRwa2ctc2hsaWJkZXBzPiBhbmFseXplcywgaXQgZmluZHMgb3V0IHRoZSBsaXN0IG9mIGxpYnJhcmllcyAiCisidGhhdCBpdCdzIGxpbmtlZCB3aXRoLiAgVGhlbiwgZm9yIGVhY2ggbGlicmFyeSwgaXQgbG9va3MgdXAgZWl0aGVyIHRoZSAiCisiSTxzeW1ib2xzPiBmaWxlLCBvciB0aGUgSTxzaGxpYnM+IGZpbGUgKGlmIHRoZSBmb3JtZXIgZG9lc24ndCBleGlzdCBvciBpZiAiCisiZGViaWFuL3NobGlicy5sb2NhbCBjb250YWlucyB0aGUgcmVsZXZhbnQgZGVwZW5kZW5jeSkuIEJvdGggZmlsZXMgYXJlICIKKyJzdXBwb3NlZCB0byBiZSBwcm92aWRlZCBieSB0aGUgbGlicmFyeSBwYWNrYWdlIGFuZCBzaG91bGQgdGh1cyBiZSBhdmFpbGFibGUgIgorImFzIC92YXIvbGliL2Rwa2cvaW5mby9JPHBhY2thZ2U+Lkk8c3ltYm9scz4gb3IgL3Zhci9saWIvZHBrZy9pbmZvL0k8cGFja2FnZT4uIgorIkk8c2hsaWJzPi4gVGhlIHBhY2thZ2UgbmFtZSBpcyBpZGVudGlmaWVkIGluIHR3byBzdGVwczogZmluZCB0aGUgbGlicmFyeSAiCisiZmlsZSBvbiB0aGUgc3lzdGVtIChsb29raW5nIGluIHRoZSBzYW1lIGRpcmVjdG9yaWVzIHRoYXQgQjxsZC5zbz4gd291bGQgIgorInVzZSksIHRoZW4gdXNlIEI8ZHBrZyAtUyA+STxsaWJyYXJ5LWZpbGU+IHRvIGxvb2t1cCB0aGUgcGFja2FnZSBwcm92aWRpbmcgIgorInRoZSBsaWJyYXJ5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zaGxpYmRlcHMuMTo0NQorIywgbm8td3JhcAorbXNnaWQgIlN5bWJvbHMgZmlsZXMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTo1MAorbXNnaWQgIiIKKyJTeW1ib2xzIGZpbGVzIGNvbnRhaW4gZmluZXItZ3JhaW5lZCBkZXBlbmRlbmN5IGluZm9ybWF0aW9uIGJ5IHByb3ZpZGluZyB0aGUgIgorIm1pbmltdW0gZGVwZW5kZW5jeSBmb3IgZWFjaCBzeW1ib2wgdGhhdCB0aGUgbGlicmFyeSBleHBvcnRzLiBUaGUgc2NyaXB0ICIKKyJ0cmllcyB0byBmaW5kIGEgc3ltYm9scyBmaWxlIGFzc29jaWF0ZWQgdG8gYSBsaWJyYXJ5IHBhY2thZ2UgaW4gdGhlICIKKyJmb2xsb3dpbmcgcGxhY2VzIChmaXJzdCBtYXRjaCBpcyB1c2VkKToiCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6NTAKKyMsIG5vLXdyYXAKK21zZ2lkICJkZWJpYW4vKi9ERUJJQU4vc3ltYm9scyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjU4Cittc2dpZCAiIgorIlNoYXJlZCBsaWJyYXJ5IGluZm9ybWF0aW9uIGdlbmVyYXRlZCBieSB0aGUgY3VycmVudCBidWlsZCBwcm9jZXNzIHRoYXQgYWxzbyAiCisiaW52b2tlZCBCPGRwa2ctc2hsaWJkZXBzPi4gIFRoZXkgYXJlIGdlbmVyYXRlZCBieSBCPGRwa2ctZ2Vuc3ltYm9scz4oMSkuICAiCisiVGhleSBhcmUgb25seSB1c2VkIGlmIHRoZSBsaWJyYXJ5IGlzIGZvdW5kIGluIGEgcGFja2FnZSdzIGJ1aWxkIHRyZWUuIFRoZSAiCisic3ltYm9scyBmaWxlIGluIHRoYXQgYnVpbGQgdHJlZSB0YWtlcyBwcmVjZWRlbmNlIG92ZXIgc3ltYm9scyBmaWxlcyBmcm9tICIKKyJvdGhlciBiaW5hcnkgcGFja2FnZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLXNobGliZGVwcy4xOjU4CisjLCBuby13cmFwCittc2dpZCAiL2V0Yy9kcGtnL3N5bWJvbHMvSTxwYWNrYWdlPi5zeW1ib2xzLkk8YXJjaD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6NTkKKyMsIG5vLXdyYXAKK21zZ2lkICIvZXRjL2Rwa2cvc3ltYm9scy9JPHBhY2thZ2U+LnN5bWJvbHMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTo2MworbXNnaWQgIiIKKyJQZXItc3lzdGVtIG92ZXJyaWRpbmcgc2hhcmVkIGxpYnJhcnkgZGVwZW5kZW5jeSBpbmZvcm1hdGlvbi4gIEk8YXJjaD4gaXMgdGhlICIKKyJhcmNoaXRlY3R1cmUgb2YgdGhlIGN1cnJlbnQgc3lzdGVtIChvYnRhaW5lZCBieSBCPGRwa2ctYXJjaGl0ZWN0dXJlIC0iCisicURFQl9IT1NUX0FSQ0g+KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6NjMKKyMsIG5vLXdyYXAKK21zZ2lkICJPdXRwdXQgZnJvbSBcXChscUI8ZHBrZy1xdWVyeSAtLWNvbnRyb2wtcGF0aD4gSTxwYWNrYWdlPiBzeW1ib2xzXFwocnEiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTo2NiBkcGtnLXNobGliZGVwcy4xOjEwMAorbXNnaWQgIiIKKyJQYWNrYWdlLXByb3ZpZGVkIHNoYXJlZCBsaWJyYXJ5IGRlcGVuZGVuY3kgaW5mb3JtYXRpb24uICBVbmxlc3Mgb3ZlcnJpZGRlbiAiCisiYnkgLS1hZG1pbmRpciwgdGhvc2UgZmlsZXMgYXJlIGxvY2F0ZWQgaW4gL3Zhci9saWIvZHBrZy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTo3MworbXNnaWQgIiIKKyJXaGlsZSBzY2FubmluZyB0aGUgc3ltYm9scyB1c2VkIGJ5IGFsbCBiaW5hcmllcywgQjxkcGtnLXNobGliZGVwcz4gcmVtZW1iZXJzICIKKyJ0aGUgKGJpZ2dlc3QpIG1pbmltYWwgdmVyc2lvbiBuZWVkZWQgZm9yIGVhY2ggbGlicmFyeS4gQXQgdGhlIGVuZCBvZiB0aGUgIgorInByb2Nlc3MsIGl0IGlzIGFibGUgdG8gd3JpdGUgb3V0IHRoZSBtaW5pbWFsIGRlcGVuZGVuY3kgZm9yIGV2ZXJ5IGxpYnJhcnkgIgorInVzZWQgKHByb3ZpZGVkIHRoYXQgdGhlIGluZm9ybWF0aW9uIG9mIHRoZSBJPHN5bWJvbHM+IGZpbGVzIGFyZSBhY2N1cmF0ZSkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6ODAKK21zZ2lkICIiCisiQXMgYSBzYWZlLWd1YXJkIG1lYXN1cmUsIGEgc3ltYm9scyBmaWxlIGNhbiBwcm92aWRlIGEgSTxCdWlsZC1EZXBlbmRzLSIKKyJQYWNrYWdlPiBtZXRhLWluZm9ybWF0aW9uIGZpZWxkIGFuZCBCPGRwa2ctc2hsaWJkZXBzPiB3aWxsIGV4dHJhY3QgdGhlICIKKyJtaW5pbWFsIHZlcnNpb24gcmVxdWlyZWQgYnkgdGhlIGNvcnJlc3BvbmRpbmcgcGFja2FnZSBpbiB0aGUgQnVpbGQtRGVwZW5kcyAiCisiZmllbGQgYW5kIHVzZSB0aGlzIHZlcnNpb24gaWYgaXQncyBoaWdoZXIgdGhhbiB0aGUgbWluaW1hbCB2ZXJzaW9uIGNvbXB1dGVkICIKKyJieSBzY2FubmluZyBzeW1ib2xzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zaGxpYmRlcHMuMTo4MAorIywgbm8td3JhcAorbXNnaWQgIlNobGlicyBmaWxlcyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjg0Cittc2dpZCAiIgorIlNobGlicyBmaWxlcyBhc3NvY2lhdGUgZGlyZWN0bHkgYSBsaWJyYXJ5IHRvIGEgZGVwZW5kZW5jeSAod2l0aG91dCBsb29raW5nICIKKyJhdCB0aGUgc3ltYm9scykuIEl0J3MgdGh1cyBvZnRlbiBzdHJvbmdlciB0aGFuIHJlYWxseSBuZWVkZWQgYnV0IHZlcnkgc2FmZSAiCisiYW5kIGVhc3kgdG8gaGFuZGxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjg3Cittc2dpZCAiIgorIlRoZSBkZXBlbmRlbmNpZXMgZm9yIGEgbGlicmFyeSBhcmUgbG9va2VkIHVwIGluIHNldmVyYWwgcGxhY2VzLiBUaGUgZmlyc3QgIgorImZpbGUgcHJvdmlkaW5nIGluZm9ybWF0aW9uIGZvciB0aGUgbGlicmFyeSBvZiBpbnRlcmVzdCBpcyB1c2VkOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1zaGxpYmRlcHMuMTo4NworIywgbm8td3JhcAorbXNnaWQgImRlYmlhbi9zaGxpYnMubG9jYWwiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTo4OQorbXNnaWQgIlBhY2thZ2UtbG9jYWwgb3ZlcnJpZGluZyBzaGFyZWQgbGlicmFyeSBkZXBlbmRlbmN5IGluZm9ybWF0aW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1zaGxpYmRlcHMuMTo4OQorIywgbm8td3JhcAorbXNnaWQgIi9ldGMvZHBrZy9zaGxpYnMub3ZlcnJpZGUiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTo5MQorbXNnaWQgIlBlci1zeXN0ZW0gb3ZlcnJpZGluZyBzaGFyZWQgbGlicmFyeSBkZXBlbmRlbmN5IGluZm9ybWF0aW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1zaGxpYmRlcHMuMTo5MQorIywgbm8td3JhcAorbXNnaWQgImRlYmlhbi8qL0RFQklBTi9zaGxpYnMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTo5NworbXNnaWQgIiIKKyJTaGFyZWQgbGlicmFyeSBpbmZvcm1hdGlvbiBnZW5lcmF0ZWQgYnkgdGhlIGN1cnJlbnQgYnVpbGQgcHJvY2VzcyB0aGF0IGFsc28gIgorImludm9rZWQgQjxkcGtnLXNobGliZGVwcz4uICBUaGV5IGFyZSBvbmx5IHVzZWQgaWYgdGhlIGxpYnJhcnkgaXMgZm91bmQgaW4gYSAiCisicGFja2FnZSdzIGJ1aWxkIHRyZWUuIFRoZSBzaGxpYnMgZmlsZSBpbiB0aGF0IGJ1aWxkIHRyZWUgdGFrZXMgcHJlY2VkZW5jZSAiCisib3ZlciBzaGxpYnMgZmlsZXMgZnJvbSBvdGhlciBiaW5hcnkgcGFja2FnZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLXNobGliZGVwcy4xOjk3CisjLCBuby13cmFwCittc2dpZCAiT3V0cHV0IGZyb20gXFwobHFCPGRwa2ctcXVlcnkgLS1jb250cm9sLXBhdGg+IEk8cGFja2FnZT4gc2hsaWJzXFwocnEiCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTAwCisjLCBuby13cmFwCittc2dpZCAiL2V0Yy9kcGtnL3NobGlicy5kZWZhdWx0IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTAyCittc2dpZCAiUGVyLXN5c3RlbSBkZWZhdWx0IHNoYXJlZCBsaWJyYXJ5IGRlcGVuZGVuY3kgaW5mb3JtYXRpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTA2Cittc2dpZCAiIgorIlRoZSBleHRyYWN0ZWQgZGVwZW5kZW5jaWVzIGFyZSB0aGVuIGRpcmVjdGx5IHVzZWQgKGV4Y2VwdCBpZiB0aGV5IGFyZSAiCisiZmlsdGVyZWQgb3V0IGJlY2F1c2UgdGhleSBoYXZlIGJlZW4gaWRlbnRpZmllZCBhcyBkdXBsaWNhdGUsIG9yIGFzIHdlYWtlciAiCisidGhhbiBhbm90aGVyIGRlcGVuZGVuY3kpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjExMQorbXNnaWQgIiIKKyJCPGRwa2ctc2hsaWJkZXBzPiBpbnRlcnByZXRzIG5vbi1vcHRpb24gYXJndW1lbnRzIGFzIGV4ZWN1dGFibGUgbmFtZXMsIGp1c3QgIgorImFzIGlmIHRoZXknZCBiZWVuIHN1cHBsaWVkIGFzIEI8LWU+STxleGVjdXRhYmxlPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTExCisjLCBuby13cmFwCittc2dpZCAiQjwtZT5JPGV4ZWN1dGFibGU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTE1Cittc2dpZCAiIgorIkluY2x1ZGUgZGVwZW5kZW5jaWVzIGFwcHJvcHJpYXRlIGZvciB0aGUgc2hhcmVkIGxpYnJhcmllcyByZXF1aXJlZCBieSAiCisiSTxleGVjdXRhYmxlPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTE1CisjLCBuby13cmFwCittc2dpZCAiQjwtZD5JPGRlcGVuZGVuY3lmaWVsZD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToxMjEKK21zZ2lkICIiCisiQWRkIGRlcGVuZGVuY2llcyB0byBiZSBhZGRlZCB0byB0aGUgY29udHJvbCBmaWxlIGRlcGVuZGVuY3kgZmllbGQgIgorIkk8ZGVwZW5kZW5jeWZpZWxkPi4gIChUaGUgZGVwZW5kZW5jaWVzIGZvciB0aGlzIGZpZWxkIGFyZSBwbGFjZWQgaW4gdGhlICIKKyJ2YXJpYWJsZSBCPHNobGliczo+STxkZXBlbmRlbmN5ZmllbGQ+LikiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToxMzEKK21zZ2lkICIiCisiVGhlIEI8LWQ+STxkZXBlbmRlbmN5ZmllbGQ+IG9wdGlvbiB0YWtlcyBlZmZlY3QgZm9yIGFsbCBleGVjdXRhYmxlcyBhZnRlciAiCisidGhlIG9wdGlvbiwgdW50aWwgdGhlIG5leHQgQjwtZD5JPGRlcGVuZGVuY3lmaWVsZD4uICBUaGUgZGVmYXVsdCAiCisiSTxkZXBlbmRlbmN5ZmllbGQ+IGlzIEI8RGVwZW5kcz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTM5Cittc2dpZCAiIgorIklmIHRoZSBzYW1lIGRlcGVuZGVuY3kgZW50cnkgKG9yIHNldCBvZiBhbHRlcm5hdGl2ZXMpIGFwcGVhcnMgaW4gbW9yZSB0aGFuICIKKyJvbmUgb2YgdGhlIHJlY29nbmlzZWQgZGVwZW5kZW5jeSBmaWVsZCBuYW1lcyBCPFByZS1EZXBlbmRzPiwgQjxEZXBlbmRzPiwgIgorIkI8UmVjb21tZW5kcz4sIEI8RW5oYW5jZXM+IG9yIEI8U3VnZ2VzdHM+IHRoZW4gQjxkcGtnLXNobGliZGVwcz4gd2lsbCAiCisiYXV0b21hdGljYWxseSByZW1vdmUgdGhlIGRlcGVuZGVuY3kgZnJvbSBhbGwgZmllbGRzIGV4Y2VwdCB0aGUgb25lICIKKyJyZXByZXNlbnRpbmcgdGhlIG1vc3QgaW1wb3J0YW50IGRlcGVuZGVuY2llcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTM5CisjLCBuby13cmFwCittc2dpZCAiQjwtcD5JPHZhcm5hbWVwcmVmaXg+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTUwCittc2dpZCAiIgorIlN0YXJ0IHN1YnN0aXR1dGlvbiB2YXJpYWJsZXMgd2l0aCBJPHZhcm5hbWVwcmVmaXg+Qjw6PiBpbnN0ZWFkIG9mIEI8c2hsaWJzOiIKKyI+LiAgTGlrZXdpc2UsIGFueSBleGlzdGluZyBzdWJzdGl0dXRpb24gdmFyaWFibGVzIHN0YXJ0aW5nIHdpdGggIgorIkk8dmFybmFtZXByZWZpeD5CPDo+IChyYXRoZXIgdGhhbiBCPHNobGliczo+KSAgYXJlIHJlbW92ZWQgZnJvbSB0aGUgdGhlICIKKyJzdWJzdGl0dXRpb24gdmFyaWFibGVzIGZpbGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTU2Cittc2dpZCAiIgorIlByaW50IHN1YnN0aXR1dGlvbiB2YXJpYWJsZSBzZXR0aW5ncyB0byBzdGFuZGFyZCBvdXRwdXQsIHJhdGhlciB0aGFuIGJlaW5nICIKKyJhZGRlZCB0byB0aGUgc3Vic3RpdHV0aW9uIHZhcmlhYmxlcyBmaWxlIChCPGRlYmlhbi9zdWJzdHZhcnM+IGJ5IGRlZmF1bHQpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zaGxpYmRlcHMuMToxNTYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC10Pkk8dHlwZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToxNjMKK21zZ2lkICIiCisiUHJlZmVyIHNoYXJlZCBsaWJyYXJ5IGRlcGVuZGVuY3kgaW5mb3JtYXRpb24gdGFnZ2VkIGZvciB0aGUgZ2l2ZW4gcGFja2FnZSAiCisidHlwZS4gSWYgbm8gdGFnZ2VkIGluZm9ybWF0aW9uIGlzIGF2YWlsYWJsZSwgZmFsbHMgYmFjayB0byB1bnRhZ2dlZCAiCisiaW5mb3JtYXRpb24uIFRoZSBkZWZhdWx0IHBhY2thZ2UgdHlwZSBpcyBcImRlYlwiLiBTaGFyZWQgbGlicmFyeSBkZXBlbmRlbmN5ICIKKyJpbmZvcm1hdGlvbiBpcyB0YWdnZWQgZm9yIGEgZ2l2ZW4gdHlwZSBieSBwcmVmaXhpbmcgaXQgd2l0aCB0aGUgbmFtZSBvZiB0aGUgIgorInR5cGUsIGEgY29sb24sIGFuZCB3aGl0ZXNwYWNlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zaGxpYmRlcHMuMToxNjMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1MPkk8bG9jYWxzaGxpYnNmaWxlPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjE2OQorbXNnaWQgIiIKKyJSZWFkIG92ZXJyaWRpbmcgc2hhcmVkIGxpYnJhcnkgZGVwZW5kZW5jeSBpbmZvcm1hdGlvbiBmcm9tICIKKyJJPGxvY2Fsc2hsaWJzZmlsZT4gaW5zdGVhZCBvZiBCPGRlYmlhbi9zaGxpYnMubG9jYWw+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjE3NQorbXNnaWQgIiIKKyJXcml0ZSBzdWJzdGl0dXRpb24gdmFyaWFibGVzIGluIEk8c3Vic3R2YXJzZmlsZT47IHRoZSBkZWZhdWx0IGlzIEI8ZGViaWFuLyIKKyJzdWJzdHZhcnM+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zaGxpYmRlcHMuMToxNzUKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtdj4iCittc2dzdHIgIkI8LUc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjE4MAorbXNnaWQgIiIKKyJFbmFibGUgdmVyYm9zZSBtb2RlLiBOdW1lcm91cyBtZXNzYWdlcyBhcmUgZGlzcGxheWVkIHRvIGV4cGxhaW4gd2hhdCBCPGRwa2ctIgorInNobGliZGVwcz4gZG9lcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTgwCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LXg+STxwYWNrYWdlPiIKK21zZ3N0ciAiQjx1bnBhY2tlZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTg3Cittc2dpZCAiIgorIkV4Y2x1ZGUgdGhlIHBhY2thZ2UgZnJvbSB0aGUgZ2VuZXJhdGVkIGRlcGVuZGVuY2llcy4gVGhpcyBpcyB1c2VmdWwgdG8gYXZvaWQgIgorInNlbGYtZGVwZW5kZW5jaWVzIGZvciBwYWNrYWdlcyB3aGljaCBwcm92aWRlIEVMRiBiaW5hcmllcyAoZXhlY3V0YWJsZXMgb3IgIgorImxpYnJhcnkgcGx1Z2lucykgdXNpbmcgYSBsaWJyYXJ5IGNvbnRhaW5lZCBpbiB0aGUgc2FtZSBwYWNrYWdlLiBUaGlzIG9wdGlvbiAiCisiY2FuIGJlIHVzZWQgbXVsdGlwbGUgdGltZXMgdG8gZXhjbHVkZSBzZXZlcmFsIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zaGxpYmRlcHMuMToxODcKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtUz5JPHBrZ2J1aWxkZGlyPiIKK21zZ3N0ciAiQjwtLWxvZz0+STxmaWxlbmFtZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTk0Cittc2dpZCAiIgorIkxvb2sgaW50byBJPHBrZ2J1aWxkZGlyPiBmaXJzdCB3aGVuIHRyeWluZyB0byBmaW5kIGEgbGlicmFyeS4gVGhpcyBpcyB1c2VmdWwgIgorIndoZW4gdGhlIHNvdXJjZSBwYWNrYWdlIGJ1aWxkcyBtdWx0aXBsZSBmbGF2b3JzIG9mIHRoZSBzYW1lIGxpYnJhcnkgYW5kIHlvdSAiCisid2FudCB0byBlbnN1cmUgdGhhdCB5b3UgZ2V0IHRoZSBkZXBlbmRlbmN5IGZyb20gYSBnaXZlbiBiaW5hcnkgcGFja2FnZS4gWW91ICIKKyJjYW4gdXNlIHRoaXMgb3B0aW9uIG11bHRpcGxlIHRpbWVzOiBkaXJlY3RvcmllcyB3aWxsIGJlIHRyaWVkIGluIHRoZSBzYW1lICIKKyJvcmRlciBiZWZvcmUgZGlyZWN0b3JpZXMgb2Ygb3RoZXIgYmluYXJ5IHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zaGxpYmRlcHMuMToxOTQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0taWdub3JlLW1pc3NpbmctaW5mbz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToyMDAKK21zZ2lkICIiCisiRG8gbm90IGZhaWwgaWYgZGVwZW5kZW5jeSBpbmZvcm1hdGlvbiBjYW4ndCBiZSBmb3VuZCBmb3IgYSBzaGFyZWQgbGlicmFyeS4gICIKKyJVc2FnZSBvZiB0aGlzIG9wdGlvbiBpcyBkaXNjb3VyYWdlZCwgYWxsIGxpYnJhcmllcyBzaG91bGQgcHJvdmlkZSBkZXBlbmRlbmN5ICIKKyJpbmZvcm1hdGlvbiAoZWl0aGVyIHdpdGggc2hsaWJzIGZpbGVzLCBvciB3aXRoIHN5bWJvbHMgZmlsZXMpICBldmVuIGlmIHRoZXkgIgorImFyZSBub3QgeWV0IHVzZWQgYnkgb3RoZXIgcGFja2FnZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNobGliZGVwcy4xOjIwMAorIywgbm8td3JhcAorbXNnaWQgIkI8LS13YXJuaW5ncz0+STx2YWx1ZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToyMTEKK21zZ2lkICIiCisiSTx2YWx1ZT4gaXMgYSBiaXQgZmllbGQgZGVmaW5pbmcgdGhlIHNldCBvZiB3YXJuaW5ncyB0aGF0IGNhbiBiZSBlbWl0dGVkIGJ5ICIKKyJCPGRwa2ctc2hsaWJkZXBzPi4gIEJpdCAwICh2YWx1ZT0xKSBlbmFibGVzIHRoZSB3YXJuaW5nIFwic3ltYm9sIEk8c3ltPiB1c2VkICIKKyJieSBJPGJpbmFyeT4gZm91bmQgaW4gbm9uZSBvZiB0aGUgbGlicmFyaWVzXCIsIGJpdCAxICh2YWx1ZT0yKSBlbmFibGVzIHRoZSAiCisid2FybmluZyBcImRlcGVuZGVuY3kgb24gSTxsaWJyYXJ5PiBjb3VsZCBiZSBhdm9pZGVkXCIgYW5kIGJpdCAyICh2YWx1ZT00KSAgIgorImVuYWJsZXMgdGhlIHdhcm5pbmcgXCJJPGJpbmFyeT4gc2hvdWxkbid0IGJlIGxpbmtlZCB3aXRoIEk8bGlicmFyeT5cIi4gIFRoZSAiCisiZGVmYXVsdCBJPHZhbHVlPiBpcyAzOiB0aGUgZmlyc3QgdHdvIHdhcm5pbmdzIGFyZSBhY3RpdmUgYnkgZGVmYXVsdCwgdGhlICIKKyJsYXN0IG9uZSBpcyBub3QuIFNldCBJPHZhbHVlPiB0byA3IGlmIHlvdSB3YW50IGFsbCB3YXJuaW5ncyB0byBiZSBhY3RpdmUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLXNobGliZGVwcy4xOjIyMgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJXQVJOSU5HUyIKK21zZ3N0ciAiQVRFTsOHw4NPIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjIzMAorbXNnaWQgIiIKKyJTaW5jZSBCPGRwa2ctc2hsaWJkZXBzPiBhbmFseXplcyB0aGUgc2V0IG9mIHN5bWJvbHMgdXNlZCBieSBlYWNoIGJpbmFyeSBvZiAiCisidGhlIGdlbmVyYXRlZCBwYWNrYWdlLCBpdCBpcyBhYmxlIHRvIGVtaXQgd2FybmluZ3MgaW4gc2V2ZXJhbCBjYXNlcy4gVGhleSAiCisiaW5mb3JtIHlvdSBvZiB0aGluZ3MgdGhhdCBjYW4gYmUgaW1wcm92ZWQgaW4gdGhlIHBhY2thZ2UuIEluIG1vc3QgY2FzZXMsICIKKyJ0aG9zZSBpbXByb3ZlbWVudHMgY29uY2VybiB0aGUgdXBzdHJlYW0gc291cmNlcyBkaXJlY3RseS4gQnkgb3JkZXIgb2YgIgorImRlY3JlYXNpbmcgaW1wb3J0YW5jZSwgaGVyZSBhcmUgdGhlIHZhcmlvdXMgd2FybmluZ3MgdGhhdCB5b3UgY2FuIGVuY291bnRlcjoiCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjMwCisjLCBuby13cmFwCittc2dpZCAiQjxzeW1ib2w+STwgc3ltPkI8IHVzZWQgYnkgPkk8YmluYXJ5PkI8IGZvdW5kIGluIG5vbmUgb2YgdGhlIGxpYnJhcmllcy4+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjM2Cittc2dpZCAiIgorIlRoZSBpbmRpY2F0ZWQgc3ltYm9sIGhhcyBub3QgYmVlbiBmb3VuZCBpbiB0aGUgbGlicmFyaWVzIGxpbmtlZCB3aXRoIHRoZSAiCisiYmluYXJ5LiBUaGUgSTxiaW5hcnk+IGlzIG1vc3QgbGlrZWx5IGEgbGlicmFyeSBhbmQgaXQgbmVlZHMgdG8gYmUgbGlua2VkICIKKyJ3aXRoIGFuIGFkZGl0aW9uYWwgbGlicmFyeSBkdXJpbmcgdGhlIGJ1aWxkIHByb2Nlc3MgKG9wdGlvbiBCPC1sPkk8bGlicmFyeT4gIgorIm9mIHRoZSBsaW5rZXIpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zaGxpYmRlcHMuMToyMzYKKyMsIG5vLXdyYXAKK21zZ2lkICJJPGJpbmFyeT5CPCBjb250YWlucyBhbiB1bnJlc29sdmFibGUgcmVmZXJlbmNlIHRvIHN5bWJvbCA+STxzeW0+Qjw6IGl0J3MgcHJvYmFibHkgYSBwbHVnaW4+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjQ5Cittc2dpZCAiIgorIlRoZSBpbmRpY2F0ZWQgc3ltYm9sIGhhcyBub3QgYmVlbiBmb3VuZCBpbiB0aGUgbGlicmFyaWVzIGxpbmtlZCB3aXRoIHRoZSAiCisiYmluYXJ5LiBUaGUgSTxiaW5hcnk+IGlzIG1vc3QgbGlrZWx5IGEgcGx1Z2luIGFuZCB0aGUgc3ltYm9sIGlzIHByb2JhYmx5ICIKKyJwcm92aWRlZCBieSB0aGUgcHJvZ3JhbSB0aGF0IGxvYWRzIHRoaXMgcGx1Z2luLiBJbiB0aGVvcnkgYSBwbHVnaW4gZG9lc24ndCAiCisiaGF2ZSBhbnkgU09OQU1FIGJ1dCB0aGlzIGJpbmFyeSBkb2VzIGhhdmUgb25lIGFuZCBhcyBzdWNoIGl0IGNvdWxkIG5vdCBiZSAiCisiY2xlYXJseSBpZGVudGlmaWVkIGFzIHN1Y2guIEhvd2V2ZXIgdGhlIGZhY3QgdGhhdCB0aGUgYmluYXJ5IGlzIHN0b3JlZCBpbiBhICIKKyJub24tcHVibGljIGRpcmVjdG9yeSBpcyBhIHN0cm9uZyBpbmRpY2F0aW9uIHRoYXQncyBpdCdzIG5vdCBhIG5vcm1hbCBzaGFyZWQgIgorImxpYnJhcnkuIElmIHRoZSBiaW5hcnkgaXMgcmVhbGx5IGEgcGx1Z2luLCB0aGVuIGRpc3JlZ2FyZCB0aGlzIHdhcm5pbmcuIEJ1dCAiCisidGhlcmUncyBhbHdheXMgdGhlIHBvc3NpYmlsaXR5IHRoYXQgaXQncyBhIHJlYWwgbGlicmFyeSBhbmQgdGhhdCBwcm9ncmFtcyAiCisibGlua2luZyB0byBpdCBhcmUgdXNpbmcgYW4gUlBBVEggc28gdGhhdCB0aGUgZHluYW1pYyBsb2FkZXIgZmluZHMgaXQuIEluICIKKyJ0aGF0IGNhc2UsIHRoZSBsaWJyYXJ5IGlzIGJyb2tlbiBhbmQgbmVlZHMgdG8gYmUgZml4ZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNobGliZGVwcy4xOjI0OQorIywgbm8td3JhcAorbXNnaWQgIkI8ZGVwZW5kZW5jeSBvbiA+STxsaWJyYXJ5PkI8IGNvdWxkIGJlIGF2b2lkZWQgaWYgPkk8YmluYXJpZXM+Qjwgd2VyZSBub3QgdXNlbGVzc2x5IGxpbmtlZCBhZ2FpbnN0IGl0ICh0aGV5IHVzZSBub25lIG9mIGl0cyBzeW1ib2xzKS4+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjU1Cittc2dpZCAiIgorIk5vbmUgb2YgdGhlIEk8YmluYXJpZXM+IHRoYXQgYXJlIGxpbmtlZCB3aXRoIEk8bGlicmFyeT4gdXNlIGFueSBvZiB0aGUgIgorInN5bWJvbHMgcHJvdmlkZWQgYnkgdGhlIGxpYnJhcnkuIEJ5IGZpeGluZyBhbGwgdGhlIGJpbmFyaWVzLCB5b3Ugd291bGQgYXZvaWQgIgorInRoZSBkZXBlbmRlbmN5IGFzc29jaWF0ZWQgdG8gdGhpcyBsaWJyYXJ5ICh1bmxlc3MgdGhlIHNhbWUgZGVwZW5kZW5jeSBpcyAiCisiYWxzbyBnZW5lcmF0ZWQgYnkgYW5vdGhlciBsaWJyYXJ5IHRoYXQgaXMgcmVhbGx5IHVzZWQpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zaGxpYmRlcHMuMToyNTUKKyMsIG5vLXdyYXAKK21zZ2lkICJJPGJpbmFyeT5CPCBzaG91bGRuJ3QgYmUgbGlua2VkIHdpdGggPkk8bGlicmFyeT5CPCAoaXQgdXNlcyBub25lIG9mIGl0cyBzeW1ib2xzKS4+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjYyCittc2dpZCAiIgorIlRoZSBJPGJpbmFyeT4gaXMgbGlua2VkIHRvIGEgbGlicmFyeSB0aGF0IGl0IGRvZXNuJ3QgbmVlZC4gSXQncyBub3QgYSAiCisicHJvYmxlbSBidXQgc29tZSBzbWFsbCBwZXJmb3JtYW5jZSBpbXByb3ZlbWVudHMgaW4gYmluYXJ5IGxvYWQgdGltZSBjYW4gYmUgIgorIm9idGFpbmVkIGJ5IG5vdCBsaW5raW5nIHRoaXMgbGlicmFyeSB0byB0aGlzIGJpbmFyeS4gVGhpcyB3YXJuaW5nIGNoZWNrcyB0aGUgIgorInNhbWUgaW5mb3JtYXRpb24gdGhhbiB0aGUgcHJldmlvdXMgb25lIGJ1dCBkb2VzIGl0IGZvciBlYWNoIGJpbmFyeSBpbnN0ZWFkICIKKyJvZiBkb2luZyB0aGUgY2hlY2sgZ2xvYmFsbHkgb24gYWxsIGJpbmFyaWVzIGFuYWx5emVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1zaGxpYmRlcHMuMToyNjIKKyMsIG5vLXdyYXAKK21zZ2lkICJFUlJPUlMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToyNjkKK21zZ2lkICIiCisiQjxkcGtnLXNobGliZGVwcz4gd2lsbCBmYWlsIGlmIGl0IGNhbid0IGZpbmQgYSBwdWJsaWMgbGlicmFyeSB1c2VkIGJ5IGEgIgorImJpbmFyeSBvciBpZiB0aGlzIGxpYnJhcnkgaGFzIG5vIGFzc29jaWF0ZWQgZGVwZW5kZW5jeSBpbmZvcm1hdGlvbiAoZWl0aGVyICIKKyJzaGxpYnMgZmlsZSBvciBzeW1ib2xzIGZpbGUpLiBBIHB1YmxpYyBsaWJyYXJ5IGhhcyBhIFNPTkFNRSBhbmQgaXMgdmVyc2lvbmVkICIKKyIobGlic29tZXRoaW5nLnNvLkk8WD4pLiBBIHByaXZhdGUgbGlicmFyeSAobGlrZSBhIHBsdWdpbikgc2hvdWxkIG5vdCBoYXZlIGEgIgorIlNPTkFNRSBhbmQgZG9lc24ndCBuZWVkIHRvIGJlIHZlcnNpb25lZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjY5CisjLCBuby13cmFwCittc2dpZCAiQjxjb3VsZG4ndCBmaW5kIGxpYnJhcnkgPkk8bGlicmFyeS1zb25hbWU+QjwgbmVlZGVkIGJ5ID5JPGJpbmFyeT5CPCAoaXRzIFJQQVRIIGlzICc+STxycGF0aD5CPCcpPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjI4NQorbXNnaWQgIiIKKyJUaGUgSTxiaW5hcnk+IHVzZXMgYSBsaWJyYXJ5IGNhbGxlZCBJPGxpYnJhcnktc29uYW1lPiBidXQgQjxkcGtnLXNobGliZGVwcz4gIgorImhhcyBiZWVuIHVuYWJsZSB0byBmaW5kIHRoZSBsaWJyYXJ5LiAgQjxkcGtnLXNobGliZGVwcz4gY3JlYXRlcyBhIGxpc3Qgb2YgIgorImRpcmVjdG9yaWVzIHRvIGNoZWNrIGFzIGZvbGxvd2luZzogZGlyZWN0b3JpZXMgbGlzdGVkIGluIHRoZSBSUEFUSCBvZiB0aGUgIgorImJpbmFyeSwgZGlyZWN0b3JpZXMgbGlzdGVkIGluIC9ldGMvbGQuc28uY29uZiwgZGlyZWN0b3JpZXMgbGlzdGVkIGluIHRoZSAiCisiTERfTElCUkFSWV9QQVRIIGVudmlyb25tZW50IHZhcmlhYmxlLCBhbmQgc3RhbmRhcmQgcHVibGljIGRpcmVjdG9yaWVzICgvIgorImxpYiwgL3Vzci9saWIsIC9saWIzMiwgL3Vzci9saWIzMiwgL2xpYjY0LCAvdXNyL2xpYjY0KS4gVGhlbiBpdCBjaGVja3MgdGhvc2UgIgorImRpcmVjdG9yaWVzIGluIHRoZSBwYWNrYWdlJ3MgYnVpbGQgdHJlZSBvZiB0aGUgYmluYXJ5IGJlaW5nIGFuYWx5emVkLCBpbiB0aGUgIgorInBhY2thZ2VzJyBidWlsZCB0cmVlcyBpbmRpY2F0ZWQgd2l0aCB0aGUgLVMgY29tbWFuZC1saW5lIG9wdGlvbiwgaW4gb3RoZXIgIgorInBhY2thZ2VzJyBidWlsZCB0cmVlcyB0aGF0IGNvbnRhaW5zIGEgREVCSUFOL3NobGlicyBvciBERUJJQU4vc3ltYm9scyBmaWxlICIKKyJhbmQgZmluYWxseSBpbiB0aGUgcm9vdCBkaXJlY3RvcnkuICBJZiB0aGUgbGlicmFyeSBpcyBub3QgZm91bmQgaW4gYW55IG9mICIKKyJ0aG9zZSBkaXJlY3RvcmllcywgdGhlbiB5b3UgZ2V0IHRoaXMgZXJyb3IuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjkxCittc2dpZCAiIgorIklmIHRoZSBsaWJyYXJ5IG5vdCBmb3VuZCBpcyBpbiBhIHByaXZhdGUgZGlyZWN0b3J5IG9mIHRoZSBzYW1lIHBhY2thZ2UsIHRoZW4gIgorInlvdSB3YW50IHRvIGFkZCB0aGUgZGlyZWN0b3J5IHRvIExEX0xJQlJBUllfUEFUSC4gSWYgaXQncyBpbiBhbm90aGVyIGJpbmFyeSAiCisicGFja2FnZSBiZWluZyBidWlsdCwgeW91IHdhbnQgdG8gbWFrZSBzdXJlIHRoYXQgdGhlIHNobGlicy9zeW1ib2xzIGZpbGUgb2YgIgorInRoaXMgcGFja2FnZSBpcyBhbHJlYWR5IGNyZWF0ZWQgYW5kIHRoYXQgTERfTElCUkFSWV9QQVRIIGNvbnRhaW5zIHRoZSAiCisiYXBwcm9wcmlhdGUgZGlyZWN0b3J5IGlmIGl0IGFsc28gaXMgaW4gYSBwcml2YXRlIGRpcmVjdG9yeS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjkxCisjLCBuby13cmFwCittc2dpZCAiQjxubyBkZXBlbmRlbmN5IGluZm9ybWF0aW9uIGZvdW5kIGZvciA+STxsaWJyYXJ5LWZpbGU+QjwgKHVzZWQgYnkgPkk8YmluYXJ5PkI8KS4+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MzA0Cittc2dpZCAiIgorIlRoZSBsaWJyYXJ5IG5lZWRlZCBieSBJPGJpbmFyeT4gaGFzIGJlZW4gZm91bmQgYnkgQjxkcGtnLXNobGliZGVwcz4gaW4gIgorIkk8bGlicmFyeS1maWxlPiBidXQgQjxkcGtnLXNobGliZGVwcz4gaGFzIGJlZW4gdW5hYmxlIHRvIGZpbmQgYW55IGRlcGVuZGVuY3kgIgorImluZm9ybWF0aW9uIGZvciB0aGF0IGxpYnJhcnkuIFRvIGZpbmQgb3V0IHRoZSBkZXBlbmRlbmN5LCBpdCBoYXMgdHJpZWQgdG8gIgorIm1hcCB0aGUgbGlicmFyeSB0byBhIERlYmlhbiBwYWNrYWdlIHdpdGggdGhlIGhlbHAgb2YgQjxkcGtnIC1TID5JPGxpYnJhcnktIgorImZpbGU+LiAgVGhlbiBpdCBjaGVja2VkIHRoZSBjb3JyZXNwb25kaW5nIHNobGlicyBhbmQgc3ltYm9scyBmaWxlcyBpbiAvdmFyLyIKKyJsaWIvZHBrZy9pbmZvLywgYW5kIGluIHRoZSB2YXJpb3VzIHBhY2thZ2UncyBidWlsZCB0cmVlcyAoZGViaWFuLyovREVCSUFOLykuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MzE4Cittc2dpZCAiIgorIlRoaXMgZmFpbHVyZSBjYW4gYmUgY2F1c2VkIGJ5IGEgYmFkIG9yIG1pc3Npbmcgc2hsaWJzIG9yIHN5bWJvbHMgZmlsZSBpbiB0aGUgIgorInBhY2thZ2Ugb2YgdGhlIGxpYnJhcnkuIEl0IG1pZ2h0IGFsc28gaGFwcGVuIGlmIHRoZSBsaWJyYXJ5IGlzIGJ1aWx0IHdpdGhpbiAiCisidGhlIHNhbWUgc291cmNlIHBhY2thZ2UgYW5kIGlmIHRoZSBzaGxpYnMgZmlsZXMgaGFzIG5vdCB5ZXQgYmVlbiBjcmVhdGVkIChpbiAiCisid2hpY2ggY2FzZSB5b3UgbXVzdCBmaXggZGViaWFuL3J1bGVzIHRvIGNyZWF0ZSB0aGUgc2hsaWJzIGJlZm9yZSBjYWxsaW5nICIKKyJCPGRwa2ctc2hsaWJkZXBzPikuIEJhZCBSUEFUSCBjYW4gYWxzbyBsZWFkIHRvIHRoZSBsaWJyYXJ5IGJlaW5nIGZvdW5kIHVuZGVyICIKKyJhIG5vbi1jYW5vbmljYWwgbmFtZSAoZXhhbXBsZTogL3Vzci9saWIvb3Blbm9mZmljZS5vcmcvLi4vbGliL2xpYnNzbC4iCisic28uMC45LjggaW5zdGVhZCBvZiAvdXNyL2xpYi9saWJzc2wuc28uMC45LjgpIHRoYXQncyBub3QgYXNzb2NpYXRlZCB0byBhbnkgIgorInBhY2thZ2UsIEI8ZHBrZy1zaGxpYmRlcHM+IHRyaWVzIHRvIHdvcmsgYXJvdW5kIHRoaXMgYnkgdHJ5aW5nIHRvIGZhbGxiYWNrICIKKyJvbiBhIGNhbm9uaWNhbCBuYW1lICh1c2luZyBCPHJlYWxwYXRoPigzKSkgIGJ1dCBpdCBtaWdodCBub3QgYWx3YXlzIHdvcmsuICIKKyJJdCdzIGFsd2F5cyBiZXN0IHRvIGNsZWFuIHVwIHRoZSBSUEFUSCBvZiB0aGUgYmluYXJ5IHRvIGF2b2lkIHByb2JsZW1zLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjMyNAorbXNnaWQgIiIKKyJDYWxsaW5nIEI8ZHBrZy1zaGxpYmRlcHM+IGluIHZlcmJvc2UgbW9kZSAoLXYpIHdpbGwgcHJvdmlkZSBtdWNoIG1vcmUgIgorImluZm9ybWF0aW9uIGFib3V0IHdoZXJlIGl0IHRyaWVkIHRvIGZpbmQgdGhlIGRlcGVuZGVuY3kgaW5mb3JtYXRpb24uIFRoaXMgIgorIm1pZ2h0IGJlIHVzZWZ1bCBpZiB5b3UgZG9uJ3QgdW5kZXJzdGFuZCB3aHkgaXQncyBnaXZpbmcgeW91IHRoaXMgZXJyb3IuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MzI4CisjLCBmdXp6eQorbXNnaWQgIkI8ZGViLXNobGlicz4oNSksIEI8ZGViLXN5bWJvbHM+KDUpLCBCPGRwa2ctZ2Vuc3ltYm9scz4oMSkuIgorbXNnc3RyICIiCisiQjxkc2VsZWN0Pig4KSwgQjxkcGtnLWRlYj4oMSksIEI8ZGViPig1KSwgQjxkZWItY29udHJvbD4oNSksIGUgQjxkcGtnLSIKKyJyZWNvbmZpZ3VyZT4oOCkiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MzM1Cittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMDYgRnJhbmsgTGljaHRlbmhlbGQiCittc2dzdHIgIiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctc291cmNlLjE6MgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJkcGtnLXNvdXJjZSIKK21zZ3N0ciAiZHBrZyBzdWl0ZSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1Cittc2dpZCAiZHBrZy1zb3VyY2UgLSBEZWJpYW4gc291cmNlIHBhY2thZ2UgKC5kc2MpIG1hbmlwdWxhdGlvbiB0b29sIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6OQorIywgZnV6enkKK21zZ2lkICJCPGRwa2ctc291cmNlPiBbSTxvcHRpb24+Li4uXSBJPGNvbW1hbmQ+IgorbXNnc3RyICJCPGRwa2c+IFtJPG9ww6fDtWVzPl0gSTxhw6fDo28+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjEzCittc2dpZCAiQjxkcGtnLXNvdXJjZT4gcGFja3MgYW5kIHVucGFja3MgRGViaWFuIHNvdXJjZSBhcmNoaXZlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToxNworbXNnaWQgIiIKKyJOb25lIG9mIHRoZXNlIGNvbW1hbmRzIGFsbG93IG11bHRpcGxlIG9wdGlvbnMgdG8gYmUgY29tYmluZWQgaW50byBvbmUsIGFuZCAiCisidGhleSBkbyBub3QgYWxsb3cgdGhlIHZhbHVlIGZvciBhbiBvcHRpb24gdG8gYmUgc3BlY2lmaWVkIGluIGEgc2VwYXJhdGUgIgorImFyZ3VtZW50LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMToxOQorIywgbm8td3JhcAorbXNnaWQgIkI8LXggPkk8ZmlsZW5hbWU+QjwuZHNjID5bSTxvdXRwdXQtZGlyZWN0b3J5Pl0iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToyOQorbXNnaWQgIiIKKyJFeHRyYWN0IGEgc291cmNlIHBhY2thZ2UuIE9uZSBub24tb3B0aW9uIGFyZ3VtZW50IG11c3QgYmUgc3VwcGxpZWQsIHRoZSBuYW1lICIKKyJvZiB0aGUgRGViaWFuIHNvdXJjZSBjb250cm9sIGZpbGUgKEI8LmRzYz4pLiAgQW4gb3B0aW9uYWwgc2Vjb25kIG5vbi1vcHRpb24gIgorImFyZ3VtZW50IG1heSBiZSBzdXBwbGllZCB0byBzcGVjaWZ5IHRoZSBkaXJlY3RvcnkgdG8gZXh0cmFjdCB0aGUgc291cmNlICIKKyJwYWNrYWdlIHRvLCB0aGlzIG11c3Qgbm90IGV4aXN0LiBJZiBubyBvdXRwdXQgZGlyZWN0b3J5IGlzIHNwZWNpZmllZCwgdGhlICIKKyJzb3VyY2UgcGFja2FnZSBpcyBleHRyYWN0ZWQgaW50byBhIGRpcmVjdG9yeSBuYW1lZCBJPHNvdXJjZT4tSTx2ZXJzaW9uPiAiCisidW5kZXIgdGhlIGN1cnJlbnQgd29ya2luZyBkaXJlY3RvcnkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MzUKK21zZ2lkICIiCisiQjxkcGtnLXNvdXJjZT4gd2lsbCByZWFkIHRoZSBuYW1lcyBvZiB0aGUgb3RoZXIgZmlsZShzKSBtYWtpbmcgdXAgdGhlIHNvdXJjZSAiCisicGFja2FnZSBmcm9tIHRoZSBjb250cm9sIGZpbGU7IHRoZXkgYXJlIGFzc3VtZWQgdG8gYmUgaW4gdGhlIHNhbWUgZGlyZWN0b3J5ICIKKyJhcyB0aGUgQjwuZHNjPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo0MworbXNnaWQgIiIKKyJUaGUgZmlsZXMgaW4gdGhlIGV4dHJhY3RlZCBwYWNrYWdlIHdpbGwgaGF2ZSB0aGVpciBwZXJtaXNzaW9ucyBhbmQgIgorIm93bmVyc2hpcHMgc2V0IHRvIHRob3NlIHdoaWNoIHdvdWxkIGhhdmUgYmVlbiBleHBlY3RlZCBpZiB0aGUgZmlsZXMgYW5kICIKKyJkaXJlY3RvcmllcyBoYWQgc2ltcGx5IGJlZW4gY3JlYXRlZCAtIGRpcmVjdG9yaWVzIGFuZCBleGVjdXRhYmxlIGZpbGVzIHdpbGwgIgorImJlIDA3NzcgYW5kIHBsYWluIGZpbGVzIHdpbGwgYmUgMDY2NiwgYm90aCBtb2RpZmllZCBieSB0aGUgZXh0cmFjdG9ycycgIgorInVtYXNrOyBpZiB0aGUgcGFyZW50IGRpcmVjdG9yeSBpcyBzZXRnaWQgdGhlbiB0aGUgZXh0cmFjdGVkIGRpcmVjdG9yaWVzIHdpbGwgIgorImJlIHRvbywgYW5kIGFsbCB0aGUgZmlsZXMgYW5kIGRpcmVjdG9yaWVzIHdpbGwgaW5oZXJpdCBpdHMgZ3JvdXAgb3duZXJzaGlwLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjQ4Cittc2dpZCAiIgorIklmIHRoZSBzb3VyY2UgcGFja2FnZSB1c2VzIGEgbm9uLXN0YW5kYXJkIGZvcm1hdCAoY3VycmVudGx5IHRoaXMgbWVhbnMgYWxsICIKKyJmb3JtYXRzIGV4Y2VwdCBcIjEuMFwiKSwgaXRzIG5hbWUgd2lsbCBiZSBzdG9yZWQgaW4gQjxkZWJpYW4vc291cmNlL2Zvcm1hdD4gIgorInNvIHRoYXQgdGhlIGZvbGxvd2luZyBidWlsZHMgb2YgdGhlIHNvdXJjZSBwYWNrYWdlIHVzZSB0aGUgc2FtZSBmb3JtYXQgYnkgIgorImRlZmF1bHQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjQ5CisjLCBuby13cmFwCittc2dpZCAiQjwtYj4gSTxkaXJlY3Rvcnk+IFtJPGZvcm1hdC1zcGVjaWZpYy1wYXJhbWV0ZXJzPl0iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1NgorbXNnaWQgIiIKKyJCdWlsZCBhIHNvdXJjZSBwYWNrYWdlLiBUaGUgZmlyc3Qgbm9uLW9wdGlvbiBhcmd1bWVudCBpcyB0YWtlbiBhcyB0aGUgbmFtZSAiCisib2YgdGhlIGRpcmVjdG9yeSBjb250YWluaW5nIHRoZSBkZWJpYW5pemVkIHNvdXJjZSB0cmVlIChpLmUuIHdpdGggYSBkZWJpYW4gIgorInN1Yi1kaXJlY3RvcnkgYW5kIG1heWJlIGNoYW5nZXMgdG8gdGhlIG9yaWdpbmFsIGZpbGVzKS4gIERlcGVuZGluZyBvbiB0aGUgIgorInNvdXJjZSBwYWNrYWdlIGZvcm1hdCB1c2VkIHRvIGJ1aWxkIHRoZSBwYWNrYWdlLCBhZGRpdGlvbmFsIHBhcmFtZXRlcnMgbWlnaHQgIgorImJlIGFjY2VwdGVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjY1Cittc2dpZCAiIgorIkI8ZHBrZy1zb3VyY2U+IHdpbGwgYnVpbGQgdGhlIHNvdXJjZSBwYWNrYWdlIHdpdGggdGhlIGZpcnN0IGZvcm1hdCBmb3VuZCBpbiAiCisidGhpcyBvcmRlcmVkIGxpc3Q6IHRoZSBmb3JtYXQgaW5kaWNhdGVkIHdpdGggdGhlIEk8LS1mb3JtYXQ+IGNvbW1hbmQgbGluZSAiCisib3B0aW9uLCB0aGUgZm9ybWF0IGluZGljYXRlZCBpbiBCPGRlYmlhbi9zb3VyY2UvZm9ybWF0PiwgXCIxLjBcIi4gVGhlICIKKyJmYWxsYmFjayB0byBcIjEuMFwiIGlzIGRlcHJlY2F0ZWQgYW5kIHdpbGwgYmUgcmVtb3ZlZCBhdCBzb21lIHBvaW50IGluIHRoZSAiCisiZnV0dXJlLCB5b3Ugc2hvdWxkIGFsd2F5cyBkb2N1bWVudCB0aGUgZGVzaXJlZCBzb3VyY2UgZm9ybWF0IGluIEI8ZGViaWFuLyIKKyJzb3VyY2UvZm9ybWF0Pi4gU2VlIHNlY3Rpb24gQjxTT1VSQ0UgUEFDS0FHRSBGT1JNQVRTPiBmb3IgYW4gZXh0ZW5zaXZlICIKKyJkZXNjcmlwdGlvbiBvZiB0aGUgdmFyaW91cyBzb3VyY2UgcGFja2FnZSBmb3JtYXRzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTo2NgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tcHJpbnQtZm9ybWF0PiBJPGRpcmVjdG9yeT4iCittc2dzdHIgIkI8LS1hZG1pbmRpcj4gSTxkaXJldMOzcmlvPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo3MQorbXNnaWQgIiIKKyJQcmludCB0aGUgc291cmNlIGZvcm1hdCB0aGF0IHdvdWxkIGJlIHVzZWQgdG8gYnVpbGQgdGhlIHNvdXJjZSBwYWNrYWdlIGlmICIKKyJCPGRwa2ctc291cmNlIC1iID5JPGRpcmVjdG9yeT4gd2FzIGNhbGxlZCAoaW4gdGhlIHNhbWUgY29uZGl0aW9ucyBhbmQgd2l0aCAiCisidGhlIHNhbWUgcGFyYW1ldGVycykuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjcyCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1iZWZvcmUtYnVpbGQ+IEk8ZGlyZWN0b3J5PiIKK21zZ3N0ciAiQjwtLWFsdGRpcj4gSTxkaXJldMOzcmlvPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo4MQorbXNnaWQgIiIKKyJSdW4gdGhlIGNvcnJlc3BvbmRpbmcgaG9vayBvZiB0aGUgc291cmNlIHBhY2thZ2UgZm9ybWF0LiBUaGlzIGhvb2sgaXMgY2FsbGVkICIKKyJiZWZvcmUgYW55IGJ1aWxkIG9mIHRoZSBwYWNrYWdlIChCPGRwa2ctYnVpbGRwYWNrYWdlPiBjYWxscyBpdCB2ZXJ5IGVhcmx5ICIKKyJldmVuIGJlZm9yZSBCPGRlYmlhbi9ydWxlcyBjbGVhbj4pLiBUaGlzIGNvbW1hbmQgaXMgaWRlbXBvdGVudCBhbmQgY2FuIGJlICIKKyJjYWxsZWQgbXVsdGlwbGUgdGltZXMuIE5vdCBhbGwgc291cmNlIGZvcm1hdHMgaW1wbGVtZW50IHNvbWV0aGluZyBpbiB0aGlzICIKKyJob29rLCBhbmQgdGhvc2UgdGhhdCBkbyB1c3VhbGx5IHByZXBhcmUgdGhlIHNvdXJjZSB0cmVlIGZvciB0aGUgYnVpbGQgZm9yICIKKyJleGFtcGxlIGJ5IGVuc3VyaW5nIHRoYXQgdGhlIERlYmlhbiBwYXRjaGVzIGFyZSBhcHBsaWVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTo4MgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tYWZ0ZXItYnVpbGQ+IEk8ZGlyZWN0b3J5PiIKK21zZ3N0ciAiQjwtLWFsdGRpcj4gSTxkaXJldMOzcmlvPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo4OQorbXNnaWQgIiIKKyJSdW4gdGhlIGNvcnJlc3BvbmRpbmcgaG9vayBvZiB0aGUgc291cmNlIHBhY2thZ2UgZm9ybWF0LiBUaGlzIGhvb2sgaXMgY2FsbGVkICIKKyJhZnRlciBhbnkgYnVpbGQgb2YgdGhlIHBhY2thZ2UgKEI8ZHBrZy1idWlsZHBhY2thZ2U+IGNhbGxzIGl0IGxhc3QpLiBUaGlzICIKKyJjb21tYW5kIGlzIGlkZW1wb3RlbnQgYW5kIGNhbiBiZSBjYWxsZWQgbXVsdGlwbGUgdGltZXMuIE5vdCBhbGwgc291cmNlICIKKyJmb3JtYXRzIGltcGxlbWVudCBzb21ldGhpbmcgaW4gdGhpcyBob29rLCBhbmQgdGhvc2UgdGhhdCBkbyB1c3VhbGx5IHVzZSBpdCAiCisidG8gdW5kbyB3aGF0IEI8LS1iZWZvcmUtYnVpbGQ+IGhhcyBkb25lLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTo5MAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tY29tbWl0PiBbSTxkaXJlY3Rvcnk+XSAuLi4iCittc2dzdHIgIkI8LS1hZG1pbmRpcj4gSTxkaXJldMOzcmlvPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo5NQorbXNnaWQgIiIKKyJSZWNvcmQgY2hhbmdlcyBpbiB0aGUgc291cmNlIHRyZWUgdW5wYWNrZWQgaW4gSTxkaXJlY3Rvcnk+LiBUaGlzIGNvbW1hbmQgY2FuICIKKyJ0YWtlIHN1cHBsZW1lbnRhcnkgcGFyYW1ldGVycyBkZXBlbmRpbmcgb24gdGhlIHNvdXJjZSBmb3JtYXQuICBJdCB3aWxsIGVycm9yICIKKyJvdXQgZm9yIGZvcm1hdHMgd2hlcmUgdGhpcyBvcGVyYXRpb24gZG9lc24ndCBtZWFuIGFueXRoaW5nLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1zb3VyY2UuMToxMDMKKyMsIG5vLXdyYXAKK21zZ2lkICJHRU5FUklDIEJVSUxEIE9QVElPTlMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToxMTEKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRoZSBtYWluIHNvdXJjZSBjb250cm9sIGZpbGUgdG8gcmVhZCBpbmZvcm1hdGlvbiBmcm9tLiBUaGUgZGVmYXVsdCAiCisiaXMgQjxkZWJpYW4vY29udHJvbD4uICBJZiBnaXZlbiB3aXRoIHJlbGF0aXZlIHBhdGhuYW1lIHRoaXMgaXMgaW50ZXJwcmV0ZWQgIgorInN0YXJ0aW5nIGF0IHRoZSBzb3VyY2UgdHJlZSdzIHRvcCBsZXZlbCBkaXJlY3RvcnkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MTE4Cittc2dpZCAiIgorIlNwZWNpZmllcyB0aGUgY2hhbmdlIGxvZyBmaWxlIHRvIHJlYWQgaW5mb3JtYXRpb24gZnJvbS4gVGhlIGRlZmF1bHQgaXMgIgorIkI8ZGViaWFuL2NoYW5nZWxvZz4uICBJZiBnaXZlbiB3aXRoIHJlbGF0aXZlIHBhdGhuYW1lIHRoaXMgaXMgaW50ZXJwcmV0ZWQgIgorInN0YXJ0aW5nIGF0IHRoZSBzb3VyY2UgdHJlZSdzIHRvcCBsZXZlbCBkaXJlY3RvcnkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjEyMworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tZm9ybWF0PT5JPHZhbHVlPiIKK21zZ3N0ciAiQjwtLWFib3J0LWFmdGVyPT5JPG7Dum1lcm8+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjEyNworbXNnaWQgIiIKKyJVc2UgdGhlIGdpdmVuIGZvcm1hdCBmb3IgYnVpbGRpbmcgdGhlIHNvdXJjZSBwYWNrYWdlLiBJdCBkb2VzIG92ZXJyaWRlIGFueSAiCisiZm9ybWF0IGdpdmVuIGluIEI8ZGViaWFuL3NvdXJjZS9mb3JtYXQ+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjEzNworbXNnaWQgIiIKKyJSZWFkIHN1YnN0aXR1dGlvbiB2YXJpYWJsZXMgaW4gSTxzdWJzdHZhcnNmaWxlPjsgdGhlIGRlZmF1bHQgaXMgdG8gbm90IHJlYWQgIgorImFueSBmaWxlLiBUaGlzIG9wdGlvbiBjYW4gYmUgdXNlZCBtdWx0aXBsZSB0aW1lcyB0byByZWFkIHN1YnN0aXR1dGlvbiAiCisidmFyaWFibGVzIGZyb20gbXVsdGlwbGUgZmlsZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjE0MworIywgbm8td3JhcAorbXNnaWQgIkI8LVo+STxjb21wcmVzc2lvbj4sIEI8LS1jb21wcmVzc2lvbj49STxjb21wcmVzc2lvbj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToxNTEKK21zZ2lkICIiCisiU3BlY2lmeSB0aGUgY29tcHJlc3Npb24gdG8gdXNlIGZvciBjcmVhdGVkIGZpbGVzICh0YXJiYWxscyBhbmQgZGlmZnMpLiAgTm90ZSAiCisidGhhdCB0aGlzIG9wdGlvbiB3aWxsIG5vdCBjYXVzZSBleGlzdGluZyB0YXJiYWxscyB0byBiZSByZWNvbXByZXNzZWQsIGl0ICIKKyJvbmx5IGFmZmVjdHMgbmV3IGZpbGVzLiBTdXBwb3J0ZWQgdmFsdWVzIGFyZTogSTxnemlwPiwgSTxiemlwMj4sIEk8bHptYT4gYW5kICIKKyJJPHh6Pi4gIEk8Z3ppcD4gaXMgdGhlIGRlZmF1bHQuIEk8eHo+IGlzIG9ubHkgc3VwcG9ydGVkIHNpbmNlIGRwa2ctZGV2ICIKKyIxLjE1LjUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjE1MQorIywgbm8td3JhcAorbXNnaWQgIkI8LXo+STxsZXZlbD4sIEI8LS1jb21wcmVzc2lvbi1sZXZlbD49STxsZXZlbD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToxNTcKK21zZ2lkICIiCisiQ29tcHJlc3Npb24gbGV2ZWwgdG8gdXNlLiBBcyB3aXRoIEI8LVo+IGl0IG9ubHkgYWZmZWN0cyBuZXdseSBjcmVhdGVkIGZpbGVzLiAiCisiU3VwcG9ydGVkIHZhbHVlcyBhcmU6IEk8MT4gdG8gSTw5PiwgSTxiZXN0PiwgYW5kIEk8ZmFzdD4uICBUaGUgZGVmYXVsdCBpcyAiCisiSTw5PiBmb3IgZ3ppcCBhbmQgYnppcDIsIEk8Nj4gZm9yIHh6IGFuZCBsem1hLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMToxNTcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1pPltJPHJlZ2V4cD5dLCBCPC0tZGlmZi1pZ25vcmU+Wz1JPHJlZ2V4cD5dIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MTY5Cittc2dpZCAiIgorIllvdSBtYXkgc3BlY2lmeSBhIHBlcmwgcmVndWxhciBleHByZXNzaW9uIHRvIG1hdGNoIGZpbGVzIHlvdSB3YW50IGZpbHRlcmVkICIKKyJvdXQgb2YgdGhlIGxpc3Qgb2YgZmlsZXMgZm9yIHRoZSBkaWZmLiAoVGhpcyBsaXN0IGlzIGdlbmVyYXRlZCBieSBhIGZpbmQgIgorImNvbW1hbmQuKSAoSWYgdGhlIHNvdXJjZSBwYWNrYWdlIGlzIGJlaW5nIGJ1aWx0IGFzIGEgdmVyc2lvbiAzIHNvdXJjZSAiCisicGFja2FnZSB1c2luZyBhIFZDUywgdGhpcyBjYW4gYmUgdXNlZCB0byBpZ25vcmUgdW5jb21taXRlZCBjaGFuZ2VzIG9uICIKKyJzcGVjaWZpYyBmaWxlcy4gVXNpbmcgLWkuKiB3aWxsIGlnbm9yZSBhbGwgb2YgdGhlbS4pICBCPC1pPiBieSBpdHNlbGYgIgorImVuYWJsZXMgdGhlIG9wdGlvbiwgd2l0aCBhIGRlZmF1bHQgcmVnZXhwIHRoYXQgd2lsbCBmaWx0ZXIgb3V0IGNvbnRyb2wgZmlsZXMgIgorImFuZCBkaXJlY3RvcmllcyBvZiB0aGUgbW9zdCBjb21tb24gcmV2aXNpb24gY29udHJvbCBzeXN0ZW1zLCBiYWNrdXAgYW5kIHN3YXAgIgorImZpbGVzIGFuZCBMaWJ0b29sIGJ1aWxkIG91dHB1dCBkaXJlY3Rvcmllcy4gVGhlcmUgY2FuIG9ubHkgYmUgb25lIGFjdGl2ZSAiCisicmVnZXhwLCBvZiBtdWx0aXBsZSBCPC1pPiBvcHRpb25zIG9ubHkgdGhlIGxhc3Qgb25lIHdpbGwgdGFrZSBlZmZlY3QuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MTc5Cittc2dpZCAiIgorIlRoaXMgaXMgdmVyeSBoZWxwZnVsIGluIGN1dHRpbmcgb3V0IGV4dHJhbmVvdXMgZmlsZXMgdGhhdCBnZXQgaW5jbHVkZWQgaW4gIgorInRoZSBkaWZmLCBlLmcuIGlmIHlvdSBtYWludGFpbiB5b3VyIHNvdXJjZSBpbiBhIHJldmlzaW9uIGNvbnRyb2wgc3lzdGVtIGFuZCAiCisid2FudCB0byB1c2UgYSBjaGVja291dCB0byBidWlsZCBhIHNvdXJjZSBwYWNrYWdlIHdpdGhvdXQgaW5jbHVkaW5nIHRoZSAiCisiYWRkaXRpb25hbCBmaWxlcyBhbmQgZGlyZWN0b3JpZXMgdGhhdCBpdCB3aWxsIHVzdWFsbHkgY29udGFpbiAoZS5nLiBDVlMvLCAuIgorImN2c2lnbm9yZSwgLnN2bi8pLiBUaGUgZGVmYXVsdCByZWdleHAgaXMgYWxyZWFkeSB2ZXJ5IGV4aGF1c3RpdmUsIGJ1dCBpZiB5b3UgIgorIm5lZWQgdG8gcmVwbGFjZSBpdCwgcGxlYXNlIG5vdGUgdGhhdCBieSBkZWZhdWx0IGl0IGNhbiBtYXRjaCBhbnkgcGFydCBvZiBhICIKKyJwYXRoLCBzbyBpZiB5b3Ugd2FudCB0byBtYXRjaCB0aGUgYmVnaW4gb2YgYSBmaWxlbmFtZSBvciBvbmx5IGZ1bGwgIgorImZpbGVuYW1lcywgeW91IHdpbGwgbmVlZCB0byBwcm92aWRlIHRoZSBuZWNlc3NhcnkgYW5jaG9ycyAoZS5nLiAnKF58LyknLCAiCisiJygkfC8pJykgeW91cnNlbGYuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjE3OQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1leHRlbmQtZGlmZi1pZ25vcmU+PUk8cmVnZXhwPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjE4NgorbXNnaWQgIiIKKyJUaGUgcGVybCByZWd1bGFyIGV4cHJlc3Npb24gc3BlY2lmaWVkIHdpbGwgZXh0ZW5kIHRoZSBkZWZhdWx0IHZhbHVlIG9mIEI8LS0iCisiZGlmZi1pZ25vcmU+IGFuZCBpdHMgY3VycmVudCB2YWx1ZSAoaWYgc2V0KS4gSXQgZG9lcyB0aGlzIGJ5IGNvbmNhdGVuYXRpbmcgIgorIlwiQjx8Pkk8cmVnZXhwPlwiIHRvIHRoZSBleGlzdGluZyB2YWx1ZS4gIFRoaXMgb3B0aW9uIGlzIGNvbnZlbmllbnQgdG8gdXNlICIKKyJpbiBCPGRlYmlhbi9zb3VyY2Uvb3B0aW9ucz4gdG8gZXhjbHVkZSBzb21lIGF1dG8tZ2VuZXJhdGVkIGZpbGVzIGZyb20gdGhlICIKKyJhdXRvbWF0aWMgcGF0Y2ggZ2VuZXJhdGlvbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6MTg2CisjLCBuby13cmFwCittc2dpZCAiQjwtST5bSTxmaWxlLXBhdHRlcm4+XSwgQjwtLXRhci1pZ25vcmU+Wz1JPGZpbGUtcGF0dGVybj5dIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MTk1Cittc2dpZCAiIgorIklmIHRoaXMgb3B0aW9uIGlzIHNwZWNpZmllZCwgdGhlIHBhdHRlcm4gd2lsbCBiZSBwYXNzZWQgdG8gQjx0YXI+KDEpJ3MgLS0iCisiZXhjbHVkZSBvcHRpb24gd2hlbiBpdCBpcyBjYWxsZWQgdG8gZ2VuZXJhdGUgYSAub3JpZy50YXIgb3IgLnRhciBmaWxlLiBGb3IgIgorImV4YW1wbGUsIC1JQ1ZTIHdpbGwgbWFrZSB0YXIgc2tpcCBvdmVyIENWUyBkaXJlY3RvcmllcyB3aGVuIGdlbmVyYXRpbmcgYSAuIgorInRhci5neiBmaWxlLiBUaGUgb3B0aW9uIG1heSBiZSByZXBlYXRlZCBtdWx0aXBsZSB0aW1lcyB0byBsaXN0IG11bHRpcGxlICIKKyJwYXR0ZXJucyB0byBleGNsdWRlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjIwMAorbXNnaWQgIiIKKyJCPC1JPiBieSBpdHNlbGYgYWRkcyBkZWZhdWx0IC0tZXhjbHVkZSBvcHRpb25zIHRoYXQgd2lsbCBmaWx0ZXIgb3V0IGNvbnRyb2wgIgorImZpbGVzIGFuZCBkaXJlY3RvcmllcyBvZiB0aGUgbW9zdCBjb21tb24gcmV2aXNpb24gY29udHJvbCBzeXN0ZW1zLCBiYWNrdXAgIgorImFuZCBzd2FwIGZpbGVzIGFuZCBMaWJ0b29sIGJ1aWxkIG91dHB1dCBkaXJlY3Rvcmllcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToyMTIKK21zZ2lkICIiCisiQjxOb3RlOj4gV2hpbGUgdGhleSBoYXZlIHNpbWlsYXIgcHVycG9zZXMsIEI8LWk+IGFuZCBCPC1JPiBoYXZlIHZlcnkgIgorImRpZmZlcmVudCBzeW50YXggYW5kIHNlbWFudGljcy4gQjwtaT4gY2FuIG9ubHkgYmUgc3BlY2lmaWVkIG9uY2UgYW5kIHRha2VzIGEgIgorInBlcmwgY29tcGF0aWJsZSByZWd1bGFyIGV4cHJlc3Npb24gd2hpY2ggaXMgbWF0Y2hlZCBhZ2FpbnN0IHRoZSBmdWxsICIKKyJyZWxhdGl2ZSBwYXRoIG9mIGVhY2ggZmlsZS4gQjwtST4gY2FuIHNwZWNpZmllZCBtdWx0aXBsZSB0aW1lcyBhbmQgdGFrZXMgYSAiCisiZmlsZW5hbWUgcGF0dGVybiB3aXRoIHNoZWxsIHdpbGRjYXJkcy4gIFRoZSBwYXR0ZXJuIGlzIGFwcGxpZWQgdG8gdGhlIGZ1bGwgIgorInJlbGF0aXZlIHBhdGggYnV0IGFsc28gdG8gZWFjaCBwYXJ0IG9mIHRoZSBwYXRoIGluZGl2aWR1YWxseS4gVGhlIGV4YWN0ICIKKyJzZW1hbnRpYyBvZiB0YXIncyAtLWV4Y2x1ZGUgb3B0aW9uIGlzIHNvbWV3aGF0IGNvbXBsaWNhdGVkLCBzZWUgaHR0cDovL3d3dy4iCisiZ251Lm9yZy9zb2Z0d2FyZS90YXIvbWFudWFsL3Rhci5odG1sI3dpbGRjYXJkcyBmb3IgYSBmdWxsIGRvY3VtZW50YXRpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MjE1Cittc2dpZCAiIgorIlRoZSBkZWZhdWx0IHJlZ2V4cCBhbmQgcGF0dGVybnMgZm9yIGJvdGggb3B0aW9ucyBjYW4gYmUgc2VlbiBpbiB0aGUgb3V0cHV0ICIKKyJvZiB0aGUgQjwtLWhlbHA+IGNvbW1hbmQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLXNvdXJjZS4xOjIxNQorIywgbm8td3JhcAorbXNnaWQgIkdFTkVSSUMgRVhUUkFDVCBPUFRJT05TIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjIxNgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tbm8tY29weT4iCittc2dzdHIgIkI8LS1ub2NoZWNrPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToyMTkKK21zZ2lkICJEbyBub3QgY29weSBvcmlnaW5hbCB0YXJiYWxscyBuZWFyIHRoZSBleHRyYWN0ZWQgc291cmNlIHBhY2thZ2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjIxOQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tbm8tY2hlY2s+IgorbXNnc3RyICJCPC0tbm9jaGVjaz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MjIyCittc2dpZCAiRG8gbm90IGNoZWNrIHNpZ25hdHVyZXMgYW5kIGNoZWNrc3VtcyBiZWZvcmUgdW5wYWNraW5nLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMToyMjIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tcmVxdWlyZS12YWxpZC1zaWduYXR1cmU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MjMwCittc2dpZCAiIgorIlJlZnVzZSB0byB1bnBhY2sgdGhlIHNvdXJjZSBwYWNrYWdlIGlmIGl0IGRvZXNuJ3QgY29udGFpbiBhbiBPcGVuUEdQICIKKyJzaWduYXR1cmUgdGhhdCBjYW4gYmUgdmVyaWZpZWQgZWl0aGVyIHdpdGggdGhlIHVzZXIncyBJPHRydXN0ZWRrZXlzLmdwZz4gIgorImtleXJpbmcsIG9uZSBvZiB0aGUgdmVuZG9yLXNwZWNpZmljIGtleXJpbmdzLCBvciBvbmUgb2YgdGhlIG9mZmljaWFsIERlYmlhbiAiCisia2V5cmluZ3MgKEk8L3Vzci9zaGFyZS9rZXlyaW5ncy9kZWJpYW4ta2V5cmluZy5ncGc+IGFuZCBJPC91c3Ivc2hhcmUvIgorImtleXJpbmdzL2RlYmlhbi1tYWludGFpbmVycy5ncGc+KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctc291cmNlLjE6MjMxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIlNPVVJDRSBQQUNLQUdFIEZPUk1BVFMiCittc2dzdHIgIlNJTkFMSVpBRE9SRVMgRE9TIFBBQ09URVMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MjM2Cittc2dpZCAiIgorIklmIHlvdSBkb24ndCBrbm93IHdoYXQgc291cmNlIGZvcm1hdCB0byB1c2UsIHlvdSBzaG91bGQgcHJvYmFibHkgcGljayBlaXRoZXIgIgorIlwiMy4wIChxdWlsdClcIiBvciBcIjMuMCAobmF0aXZlKVwiLiBTZWUgaHR0cDovL3dpa2kuZGViaWFuLm9yZy9Qcm9qZWN0cy8iCisiRGViU3JjMy4wIGZvciBpbmZvcm1hdGlvbiBvbiB0aGUgZGVwbG95bWVudCBvZiB0aG9zZSBmb3JtYXRzIHdpdGhpbiBEZWJpYW4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjIzNworIywgbm8td3JhcAorbXNnaWQgIkZvcm1hdDogMS4wIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MjQxCittc2dpZCAiIgorIkEgc291cmNlIHBhY2thZ2UgaW4gdGhpcyBmb3JtYXQgY29uc2lzdHMgZWl0aGVyIG9mIGEgQjwub3JpZy50YXIuZ3o+ICIKKyJhc3NvY2lhdGVkIHRvIGEgQjwuZGlmZi5nej4gb3IgYSBzaW5nbGUgQjwudGFyLmd6PiAoaW4gdGhhdCBjYXNlIHRoZSBwYWNrYWdlICIKKyJpcyBzYWlkIHRvIGJlIEk8bmF0aXZlPikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MjQzIGRwa2ctc291cmNlLjE6NDExIGRwa2ctc291cmNlLjE6NTg2IGRwa2ctc291cmNlLjE6NjI1Cittc2dpZCAiQjxFeHRyYWN0aW5nPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjI1MworbXNnaWQgIiIKKyJFeHRyYWN0aW5nIGEgbmF0aXZlIHBhY2thZ2UgaXMgYSBzaW1wbGUgZXh0cmFjdGlvbiBvZiB0aGUgc2luZ2xlIHRhcmJhbGwgaW4gIgorInRoZSB0YXJnZXQgZGlyZWN0b3J5LiBFeHRyYWN0aW5nIGEgbm9uLW5hdGl2ZSBwYWNrYWdlIGlzIGRvbmUgYnkgZmlyc3QgIgorInVucGFja2luZyB0aGUgQjwub3JpZy50YXIuZ3o+IGFuZCB0aGVuIGFwcGx5aW5nIHRoZSBwYXRjaCBjb250YWluZWQgaW4gdGhlICIKKyJCPC5kaWZmLmd6PiBmaWxlLiBUaGUgdGltZXN0YW1wIG9mIGFsbCBwYXRjaGVkIGZpbGVzIGlzIHJlc2V0IHRvIHRoZSAiCisiZXh0cmFjdGlvbiB0aW1lIG9mIHRoZSBzb3VyY2UgcGFja2FnZSAodGhpcyBhdm9pZHMgdGltZXN0YW1wIHNrZXdzIGxlYWRpbmcgIgorInRvIHByb2JsZW1zIHdoZW4gYXV0b2dlbmVyYXRlZCBmaWxlcyBhcmUgcGF0Y2hlZCkuIFRoZSBkaWZmIGNhbiBjcmVhdGUgbmV3ICIKKyJmaWxlcyAodGhlIHdob2xlIGRlYmlhbiBkaXJlY3RvcnkgaXMgY3JlYXRlZCB0aGF0IHdheSkgYnV0IGNhbid0IHJlbW92ZSAiCisiZmlsZXMgKGVtcHR5IGZpbGVzIHdpbGwgYmUgbGVmdCBvdmVyKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToyNTUgZHBrZy1zb3VyY2UuMTo0MzkgZHBrZy1zb3VyY2UuMTo1OTcgZHBrZy1zb3VyY2UuMTo2MzAKK21zZ2lkICJCPEJ1aWxkaW5nPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjI2MQorbXNnaWQgIiIKKyJCdWlsZGluZyBhIG5hdGl2ZSBwYWNrYWdlIGlzIGp1c3QgY3JlYXRpbmcgYSBzaW5nbGUgdGFyYmFsbCB3aXRoIHRoZSBzb3VyY2UgIgorImRpcmVjdG9yeS4gQnVpbGRpbmcgYSBub24tbmF0aXZlIHBhY2thZ2UgaW52b2x2ZXMgZXh0cmFjdGluZyB0aGUgb3JpZ2luYWwgIgorInRhcmJhbGwgaW4gYSBzZXBhcmF0ZSBcIi5vcmlnXCIgZGlyZWN0b3J5IGFuZCByZWdlbmVyYXRpbmcgdGhlIEI8LmRpZmYuZ3o+ICIKKyJieSBjb21wYXJpbmcgdGhlIHNvdXJjZSBwYWNrYWdlIEk8ZGlyZWN0b3J5PiB3aXRoIHRoZSAub3JpZyBkaXJlY3RvcnkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjI2MgorIywgbm8td3JhcAorbXNnaWQgIkI8QnVpbGQgb3B0aW9ucyAod2l0aCAtYik6PiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjI3NQorbXNnaWQgIiIKKyJJZiBhIHNlY29uZCBub24tb3B0aW9uIGFyZ3VtZW50IGlzIHN1cHBsaWVkIGl0IHNob3VsZCBiZSB0aGUgbmFtZSBvZiB0aGUgIgorIm9yaWdpbmFsIHNvdXJjZSBkaXJlY3Rvcnkgb3IgdGFyZmlsZSBvciB0aGUgZW1wdHkgc3RyaW5nIGlmIHRoZSBwYWNrYWdlIGlzIGEgIgorIkRlYmlhbi1zcGVjaWZpYyBvbmUgYW5kIHNvIGhhcyBubyBEZWJpYW5pc2F0aW9uIGRpZmZzLiBJZiBubyBzZWNvbmQgYXJndW1lbnQgIgorImlzIHN1cHBsaWVkIHRoZW4gQjxkcGtnLXNvdXJjZT4gd2lsbCBsb29rIGZvciB0aGUgb3JpZ2luYWwgc291cmNlIHRhcmZpbGUgIgorIkk8cGFja2FnZT5CPF8+STx1cHN0cmVhbS12ZXJzaW9uPkI8Lm9yaWcudGFyLmd6PiBvciB0aGUgb3JpZ2luYWwgc291cmNlICIKKyJkaXJlY3RvcnkgSTxkaXJlY3Rvcnk+Qjwub3JpZz4gZGVwZW5kaW5nIG9uIHRoZSBCPC1zWD4gYXJndW1lbnRzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjI4MQorbXNnaWQgIiIKKyJCPC1zYT4sIEI8LXNwPiwgQjwtc2s+LCBCPC1zdT4gYW5kIEI8LXNyPiB3aWxsIG5vdCBvdmVyd3JpdGUgZXhpc3RpbmcgIgorInRhcmZpbGVzIG9yIGRpcmVjdG9yaWVzLiBJZiB0aGlzIGlzIGRlc2lyZWQgdGhlbiBCPC1zQT4sIEI8LXNQPiwgQjwtc0s+LCBCPC0iCisic1U+IGFuZCBCPC1zUj4gc2hvdWxkIGJlIHVzZWQgaW5zdGVhZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6MjgxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LXNrPiIKK21zZ3N0ciAiQjwtRz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MjkwCittc2dpZCAiIgorIlNwZWNpZmllcyB0byBleHBlY3QgdGhlIG9yaWdpbmFsIHNvdXJjZSBhcyBhIHRhcmZpbGUsIGJ5IGRlZmF1bHQgIgorIkk8cGFja2FnZT5CPF8+STx1cHN0cmVhbS12ZXJzaW9uPkI8Lm9yaWcudGFyLj5JPGV4dGVuc2lvbj4uICBJdCB3aWxsIGxlYXZlICIKKyJ0aGlzIG9yaWdpbmFsIHNvdXJjZSBpbiBwbGFjZSBhcyBhIHRhcmZpbGUsIG9yIGNvcHkgaXQgdG8gdGhlIGN1cnJlbnQgIgorImRpcmVjdG9yeSBpZiBpdCBpc24ndCBhbHJlYWR5IHRoZXJlLiBUaGUgdGFyYmFsbCB3aWxsIGJlIHVucGFja2VkIGludG8gIgorIkk8ZGlyZWN0b3J5PkI8Lm9yaWc+IGZvciB0aGUgZ2VuZXJhdGlvbiBvZiB0aGUgZGlmZi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6MjkwIGRwa2ctc291cmNlLjE6MzU5CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LXNwPiIKK21zZ3N0ciAiQjwtRz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6Mjk1Cittc2dpZCAiTGlrZSBCPC1zaz4gYnV0IHdpbGwgcmVtb3ZlIHRoZSBkaXJlY3RvcnkgYWdhaW4gYWZ0ZXJ3YXJkcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6Mjk1IGRwa2ctc291cmNlLjE6MzY1CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LXN1PiIKK21zZ3N0ciAiQjwtRz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MzAzCittc2dpZCAiIgorIlNwZWNpZmllcyB0aGF0IHRoZSBvcmlnaW5hbCBzb3VyY2UgaXMgZXhwZWN0ZWQgYXMgYSBkaXJlY3RvcnksIGJ5IGRlZmF1bHQgIgorIkk8cGFja2FnZT5CPC0+STx1cHN0cmVhbS12ZXJzaW9uPkI8Lm9yaWc+IGFuZCBCPGRwa2ctc291cmNlPiB3aWxsIGNyZWF0ZSBhICIKKyJuZXcgb3JpZ2luYWwgc291cmNlIGFyY2hpdmUgZnJvbSBpdC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6MzAzCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LXNyPiIKK21zZ3N0ciAiQjwtRz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MzA4Cittc2dpZCAiTGlrZSBCPC1zdT4gYnV0IHdpbGwgcmVtb3ZlIHRoYXQgZGlyZWN0b3J5IGFmdGVyIGl0IGhhcyBiZWVuIHVzZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjMwOAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1zcz4iCittc2dzdHIgIkI8LUc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjMxNgorbXNnaWQgIiIKKyJTcGVjaWZpZXMgdGhhdCB0aGUgb3JpZ2luYWwgc291cmNlIGlzIGF2YWlsYWJsZSBib3RoIGFzIGEgZGlyZWN0b3J5IGFuZCBhcyBhICIKKyJ0YXJmaWxlLiBkcGtnLXNvdXJjZSB3aWxsIHVzZSB0aGUgZGlyZWN0b3J5IHRvIGNyZWF0ZSB0aGUgZGlmZiwgYnV0IHRoZSAiCisidGFyZmlsZSB0byBjcmVhdGUgdGhlIEI8LmRzYz4uICBUaGlzIG9wdGlvbiBtdXN0IGJlIHVzZWQgd2l0aCBjYXJlIC0gaWYgdGhlICIKKyJkaXJlY3RvcnkgYW5kIHRhcmZpbGUgZG8gbm90IG1hdGNoIGEgYmFkIHNvdXJjZSBhcmNoaXZlIHdpbGwgYmUgZ2VuZXJhdGVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTozMTYgZHBrZy1zb3VyY2UuMTozNjgKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtc24+IgorbXNnc3RyICJCPC1HPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTozMjIKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRvIG5vdCBsb29rIGZvciBhbnkgb3JpZ2luYWwgc291cmNlLCBhbmQgdG8gbm90IGdlbmVyYXRlIGEgZGlmZi4gICIKKyJUaGUgc2Vjb25kIGFyZ3VtZW50LCBpZiBzdXBwbGllZCwgbXVzdCBiZSB0aGUgZW1wdHkgc3RyaW5nLiBUaGlzIGlzIHVzZWQgZm9yICIKKyJEZWJpYW4tc3BlY2lmaWMgcGFja2FnZXMgd2hpY2ggZG8gbm90IGhhdmUgYSBzZXBhcmF0ZSB1cHN0cmVhbSBzb3VyY2UgYW5kICIKKyJ0aGVyZWZvcmUgaGF2ZSBubyBkZWJpYW5pc2F0aW9uIGRpZmZzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTozMjIKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtc2E+IG9yIEI8LXNBPiIKK21zZ3N0ciAiQjwtLWxpc3Q+IEk8bGlnYcOnw6NvPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTozNDgKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRvIGxvb2sgZm9yIHRoZSBvcmlnaW5hbCBzb3VyY2UgYXJjaGl2ZSBhcyBhIHRhcmZpbGUgb3IgYXMgYSAiCisiZGlyZWN0b3J5IC0gdGhlIHNlY29uZCBhcmd1bWVudCwgaWYgYW55LCBtYXkgYmUgZWl0aGVyLCBvciB0aGUgZW1wdHkgc3RyaW5nICIKKyIodGhpcyBpcyBlcXVpdmFsZW50IHRvIHVzaW5nIEI8LXNuPikuICBJZiBhIHRhcmZpbGUgaXMgZm91bmQgaXQgd2lsbCB1bnBhY2sgIgorIml0IHRvIGNyZWF0ZSB0aGUgZGlmZiBhbmQgcmVtb3ZlIGl0IGFmdGVyd2FyZHMgKHRoaXMgaXMgZXF1aXZhbGVudCB0byBCPC0iCisic3A+KTsgaWYgYSBkaXJlY3RvcnkgaXMgZm91bmQgaXQgd2lsbCBwYWNrIGl0IHRvIGNyZWF0ZSB0aGUgb3JpZ2luYWwgc291cmNlICIKKyJhbmQgcmVtb3ZlIGl0IGFmdGVyd2FyZHMgKHRoaXMgaXMgZXF1aXZhbGVudCB0byBCPC1zcj4pOyBpZiBuZWl0aGVyIGlzIGZvdW5kICIKKyJpdCB3aWxsIGFzc3VtZSB0aGF0IHRoZSBwYWNrYWdlIGhhcyBubyBkZWJpYW5pc2F0aW9uIGRpZmZzLCBvbmx5IGEgIgorInN0cmFpZ2h0Zm9yd2FyZCBzb3VyY2UgYXJjaGl2ZSAodGhpcyBpcyBlcXVpdmFsZW50IHRvIEI8LXNuPikuICBJZiBib3RoIGFyZSAiCisiZm91bmQgdGhlbiBCPGRwa2ctc291cmNlPiB3aWxsIGlnbm9yZSB0aGUgZGlyZWN0b3J5LCBvdmVyd3JpdGluZyBpdCwgaWYgQjwtIgorInNBPiB3YXMgc3BlY2lmaWVkICh0aGlzIGlzIGVxdWl2YWxlbnQgdG8gQjwtc1A+KSAgb3IgcmFpc2UgYW4gZXJyb3IgaWYgQjwtIgorInNhPiB3YXMgc3BlY2lmaWVkLiAgQjwtc0E+IGlzIHRoZSBkZWZhdWx0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTozNDggZHBrZy1zb3VyY2UuMTo1NDEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tYWJvcnQtb24tdXBzdHJlYW0tY2hhbmdlcz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTozNTQKK21zZ2lkICIiCisiVGhlIHByb2Nlc3MgZmFpbHMgaWYgdGhlIGdlbmVyYXRlZCBkaWZmIGNvbnRhaW5zIGNoYW5nZXMgdG8gZmlsZXMgb3V0c2lkZSBvZiAiCisidGhlIGRlYmlhbiBzdWItZGlyZWN0b3J5LiBUaGlzIG9wdGlvbiBpcyBub3QgYWxsb3dlZCBpbiBCPGRlYmlhbi9zb3VyY2UvIgorIm9wdGlvbnM+IGJ1dCBjYW4gYmUgdXNlZCBpbiBCPGRlYmlhbi9zb3VyY2UvbG9jYWwtb3B0aW9ucz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjM1NQorIywgbm8td3JhcAorbXNnaWQgIkI8RXh0cmFjdCBvcHRpb25zICh3aXRoIC14KTo+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MzU5Cittc2dpZCAiSW4gYWxsIGNhc2VzIGFueSBleGlzdGluZyBvcmlnaW5hbCBzb3VyY2UgdHJlZSB3aWxsIGJlIHJlbW92ZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MzY1Cittc2dpZCAiIgorIlVzZWQgd2hlbiBleHRyYWN0aW5nIHRoZW4gdGhlIG9yaWdpbmFsIHNvdXJjZSAoaWYgYW55KSB3aWxsIGJlIGxlZnQgYXMgYSAiCisidGFyZmlsZS4gSWYgaXQgaXMgbm90IGFscmVhZHkgbG9jYXRlZCBpbiB0aGUgY3VycmVudCBkaXJlY3Rvcnkgb3IgaWYgYW4gIgorImV4aXN0aW5nIGJ1dCBkaWZmZXJlbnQgZmlsZSBpcyB0aGVyZSBpdCB3aWxsIGJlIGNvcGllZCB0aGVyZS4gIChCPFRoaXMgaXMgIgorInRoZSBkZWZhdWx0PikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MzY4Cittc2dpZCAiVW5wYWNrcyB0aGUgb3JpZ2luYWwgc291cmNlIHRyZWUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MzczCittc2dpZCAiIgorIkVuc3VyZXMgdGhhdCB0aGUgb3JpZ2luYWwgc291cmNlIGlzIG5laXRoZXIgY29waWVkIHRvIHRoZSBjdXJyZW50IGRpcmVjdG9yeSAiCisibm9yIHVucGFja2VkLiBBbnkgb3JpZ2luYWwgc291cmNlIHRyZWUgdGhhdCB3YXMgaW4gdGhlIGN1cnJlbnQgZGlyZWN0b3J5IGlzICIKKyJzdGlsbCByZW1vdmVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjM3OAorbXNnaWQgIiIKKyJBbGwgdGhlIEI8LXM+STxYPiBvcHRpb25zIGFyZSBtdXR1YWxseSBleGNsdXNpdmUuIElmIHlvdSBzcGVjaWZ5IG1vcmUgdGhhbiAiCisib25lIG9ubHkgdGhlIGxhc3Qgb25lIHdpbGwgYmUgdXNlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6Mzc4IGRwa2ctc291cmNlLjE6NTU1CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1za2lwLWRlYmlhbml6YXRpb24+IgorbXNnc3RyICJCPGRwa2ctZGViLWFjdGlvbnM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjM4MQorbXNnaWQgIlNraXBzIGFwcGxpY2F0aW9uIG9mIHRoZSBkZWJpYW4gZGlmZiBvbiB0b3Agb2YgdGhlIHVwc3RyZWFtIHNvdXJjZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjM4MgorIywgbm8td3JhcAorbXNnaWQgIkZvcm1hdDogMi4wIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6Mzg2Cittc2dpZCAiIgorIkFsc28ga25vd24gYXMgd2lnJnBlbi4gVGhpcyBmb3JtYXQgaXMgbm90IHJlY29tbWVuZGVkIGZvciB3aWRlLXNwcmVhZCB1c2FnZSwgIgorInRoZSBmb3JtYXQgXCIzLjAgKHF1aWx0KVwiIHJlcGxhY2VzIGl0LiBXaWcmcGVuIHdhcyB0aGUgZmlyc3Qgc3BlY2lmaWNhdGlvbiAiCisib2YgYSBuZXctZ2VuZXJhdGlvbiBzb3VyY2UgcGFja2FnZSBmb3JtYXQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MzkxCittc2dpZCAiIgorIlRoZSBiZWhhdmlvdXIgb2YgdGhpcyBmb3JtYXQgaXMgdGhlIHNhbWUgYXMgdGhlIFwiMy4wIChxdWlsdClcIiBmb3JtYXQgIgorImV4Y2VwdCB0aGF0IGl0IGRvZXNuJ3QgdXNlIGFuIGV4cGxpY2l0IGxpc3Qgb2YgcGF0Y2hlcy4gQWxsIGZpbGVzIGluICIKKyJCPGRlYmlhbi9wYXRjaGVzLz4gbWF0Y2hpbmcgdGhlIHBlcmwgcmVndWxhciBleHByZXNzaW9uIEI8W1xcZXctXSs+IG11c3QgYmUgIgorInZhbGlkIHBhdGNoZXM6IHRoZXkgYXJlIGFwcGxpZWQgYXQgZXh0cmFjdGlvbiB0aW1lLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjM5NAorbXNnaWQgIiIKKyJXaGVuIGJ1aWxkaW5nIGEgbmV3IHNvdXJjZSBwYWNrYWdlLCBhbnkgY2hhbmdlIHRvIHRoZSB1cHN0cmVhbSBzb3VyY2UgaXMgIgorInN0b3JlZCBpbiBhIHBhdGNoIG5hbWVkIEI8enpfZGViaWFuLWRpZmYtYXV0bz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjM5NQorIywgbm8td3JhcAorbXNnaWQgIkZvcm1hdDogMy4wIChuYXRpdmUpIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NDAxCittc2dpZCAiIgorIlRoaXMgZm9ybWF0IGlzIGFuIGV4dGVuc2lvbiBvZiB0aGUgbmF0aXZlIHBhY2thZ2UgZm9ybWF0IGFzIGRlZmluZWQgaW4gdGhlICIKKyIxLjAgZm9ybWF0LiBJdCBzdXBwb3J0cyBhbGwgY29tcHJlc3Npb24gbWV0aG9kcyBhbmQgd2lsbCBpZ25vcmUgYnkgZGVmYXVsdCAiCisiYW55IFZDUyBzcGVjaWZpYyBmaWxlcyBhbmQgZGlyZWN0b3JpZXMgYXMgd2VsbCBhcyBtYW55IHRlbXBvcmFyeSBmaWxlcyAoc2VlICIKKyJkZWZhdWx0IHZhbHVlIGFzc29jaWF0ZWQgdG8gQjwtST4gb3B0aW9uIGluIHRoZSBCPC0taGVscD4gb3V0cHV0KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6NDAyCisjLCBuby13cmFwCittc2dpZCAiRm9ybWF0OiAzLjAgKHF1aWx0KSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjQwOQorbXNnaWQgIiIKKyJBIHNvdXJjZSBwYWNrYWdlIGluIHRoaXMgZm9ybWF0IGNvbnRhaW5zIGF0IGxlYXN0IGFuIG9yaWdpbmFsIHRhcmJhbGwgKEI8LiIKKyJvcmlnLnRhci4+STxleHQ+IHdoZXJlIEk8ZXh0PiBjYW4gYmUgQjxnej4sIEI8YnoyPiwgQjxsem1hPiBhbmQgQjx4ej4pIGFuZCBhICIKKyJkZWJpYW4gdGFyYmFsbCAoQjwuZGViaWFuLnRhci4+STxleHQ+KS4gSXQgY2FuIGFsc28gY29udGFpbiBhZGRpdGlvbmFsICIKKyJvcmlnaW5hbCB0YXJiYWxscyAoQjwub3JpZy0+STxjb21wb25lbnQ+QjwudGFyLj5JPGV4dD4pLiAgSTxjb21wb25lbnQ+IGNhbiAiCisib25seSBjb250YWluIGFscGhhbnVtZXJpYyBjaGFyYWN0ZXJzIGFuZCBkYXNoZXMgKFwiLVwiKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo0MjAKK21zZ2lkICIiCisiVGhlIG1haW4gb3JpZ2luYWwgdGFyYmFsbCBpcyBleHRyYWN0ZWQgZmlyc3QsIHRoZW4gYWxsIGFkZGl0aW9uYWwgb3JpZ2luYWwgIgorInRhcmJhbGxzIGFyZSBleHRyYWN0ZWQgaW4gc3ViZGlyZWN0b3JpZXMgbmFtZWQgYWZ0ZXIgdGhlIEk8Y29tcG9uZW50PiBwYXJ0ICIKKyJvZiB0aGVpciBmaWxlbmFtZSAoYW55IHByZS1leGlzdGluZyBkaXJlY3RvcnkgaXMgcmVwbGFjZWQpLiBUaGUgZGViaWFuICIKKyJ0YXJiYWxsIGlzIGV4dHJhY3RlZCBvbiB0b3Agb2YgdGhlIHNvdXJjZSBkaXJlY3RvcnkgYWZ0ZXIgcHJpb3IgcmVtb3ZhbCBvZiAiCisiYW55IHByZS1leGlzdGluZyBCPGRlYmlhbj4gZGlyZWN0b3J5LiBOb3RlIHRoYXQgdGhlIGRlYmlhbiB0YXJiYWxsIG11c3QgIgorImNvbnRhaW4gYSBCPGRlYmlhbj4gc3ViLWRpcmVjdG9yeSBidXQgaXQgY2FuIGFsc28gY29udGFpbiBiaW5hcnkgZmlsZXMgIgorIm91dHNpZGUgb2YgdGhhdCBkaXJlY3RvcnkgKHNlZSBCPC0taW5jbHVkZS1iaW5hcmllcz4gb3B0aW9uKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo0MzIKK21zZ2lkICIiCisiQWxsIHBhdGNoZXMgbGlzdGVkIGluIEI8ZGViaWFuL3BhdGNoZXMvZGViaWFuLnNlcmllcz4gb3IgQjxkZWJpYW4vcGF0Y2hlcy8iCisic2VyaWVzPiBhcmUgdGhlbiBhcHBsaWVkLiAgSWYgdGhlIGZvcm1lciBmaWxlIGlzIHVzZWQgYW5kIHRoZSBsYXR0ZXIgb25lICIKKyJkb2Vzbid0IGV4aXN0IChvciBpcyBhIHN5bWxpbmspLCB0aGVuIHRoZSBsYXR0ZXIgaXMgcmVwbGFjZWQgd2l0aCBhIHN5bWxpbmsgIgorInRvIHRoZSBmb3JtZXIuIFRoaXMgaXMgbWVhbnQgdG8gc2ltcGxpZnkgdXNhZ2Ugb2YgcXVpbHQgdG8gbWFuYWdlIHRoZSBzZXQgb2YgIgorInBhdGNoZXMuIE5vdGUgaG93ZXZlciB0aGF0IHdoaWxlIEI8ZHBrZy1zb3VyY2U+IHBhcnNlcyBjb3JyZWN0bHkgc2VyaWVzICIKKyJmaWxlcyB3aXRoIGV4cGxpY2l0IG9wdGlvbnMgdXNlZCBmb3IgcGF0Y2ggYXBwbGljYXRpb24gKHN0b3JlZCBvbiBlYWNoIGxpbmUgIgorImFmdGVyIHRoZSBwYXRjaCBmaWxlbmFtZSBhbmQgb25lIG9yIG1vcmUgc3BhY2VzKSwgaXQgZG9lcyBpZ25vcmUgdGhvc2UgIgorIm9wdGlvbnMgYW5kIGFsd2F5cyBleHBlY3QgcGF0Y2hlcyB0aGF0IGNhbiBiZSBhcHBsaWVkIHdpdGggdGhlIEI8LXAxPiBvcHRpb24gIgorIm9mIEI8cGF0Y2g+LiBJdCB3aWxsIHRodXMgZW1pdCBhIHdhcm5pbmcgd2hlbiBpdCBlbmNvdW50ZXJzIHN1Y2ggb3B0aW9ucywgIgorImFuZCB0aGUgYnVpbGQgaXMgbGlrZWx5IHRvIGZhaWwuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NDM0Cittc2dpZCAiIgorIlNpbWlsYXJseSB0byBxdWlsdCdzIGRlZmF1bHQgYmVoYXZpb3VyLCB0aGUgcGF0Y2hlcyBjYW4gcmVtb3ZlIGZpbGVzIHRvby4iCittc2dzdHIgIiIKKworIyB0eXBlOiBQbGFpbiB0ZXh0CisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjQzNworbXNnaWQgIiIKKyJUaGUgZmlsZSBCPC5wYy9hcHBsaWVkLXBhdGNoZXM+IGlzIGNyZWF0ZWQgaWYgc29tZSBwYXRjaGVzIGhhdmUgYmVlbiBhcHBsaWVkICIKKyJkdXJpbmcgdGhlIGV4dHJhY3Rpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NDUxCittc2dpZCAiIgorIkFsbCBvcmlnaW5hbCB0YXJiYWxscyBmb3VuZCBpbiB0aGUgY3VycmVudCBkaXJlY3RvcnkgYXJlIGV4dHJhY3RlZCBpbiBhICIKKyJ0ZW1wb3JhcnkgZGlyZWN0b3J5IGJ5IGZvbGxvd2luZyB0aGUgc2FtZSBsb2dpYyBhcyBmb3IgdGhlIHVucGFjaywgdGhlICIKKyJkZWJpYW4gZGlyZWN0b3J5IGlzIGNvcGllZCBvdmVyIGluIHRoZSB0ZW1wb3JhcnkgZGlyZWN0b3J5LCBhbmQgYWxsIHBhdGNoZXMgIgorImV4Y2VwdCB0aGUgYXV0b21hdGljIHBhdGNoIChCPGRlYmlhbi1jaGFuZ2VzLT5JPHZlcnNpb24+IG9yIEI8ZGViaWFuLSIKKyJjaGFuZ2VzPiwgZGVwZW5kaW5nIG9uIEI8LS1zaW5nbGUtZGViaWFuLXBhdGNoPikgYXJlIGFwcGxpZWQuIFRoZSB0ZW1wb3JhcnkgIgorImRpcmVjdG9yeSBpcyBjb21wYXJlZCB0byB0aGUgc291cmNlIHBhY2thZ2UgZGlyZWN0b3J5LiBXaGVuIHRoZSBkaWZmIGlzIG5vbi0iCisiZW1wdHksIHRoZSBidWlsZCBmYWlscyB1bmxlc3MgQjwtLXNpbmdsZS1kZWJpYW4tcGF0Y2g+IG9yIEI8LS1hdXRvLWNvbW1pdD4gIgorImhhcyBiZWVuIHVzZWQsIGluIHdoaWNoIGNhc2UgdGhlIGRpZmYgaXMgc3RvcmVkIGluIHRoZSBhdXRvbWF0aWMgcGF0Y2guICBJZiAiCisidGhlIGF1dG9tYXRpYyBwYXRjaCBpcyBjcmVhdGVkL2RlbGV0ZWQsIGl0J3MgYWRkZWQvcmVtb3ZlZCBmcm9tIHRoZSBzZXJpZXMgIgorImZpbGUgYW5kIGZyb20gdGhlIHF1aWx0IG1ldGFkYXRhLiIKK21zZ3N0ciAiIgorCisjIHR5cGU6IFBsYWluIHRleHQKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NDU5Cittc2dpZCAiIgorIkFueSBjaGFuZ2Ugb24gYSBiaW5hcnkgZmlsZSBpcyBub3QgcmVwcmVzZW50YWJsZSBpbiBhIGRpZmYgYW5kIHdpbGwgdGh1cyAiCisibGVhZCB0byBhIGZhaWx1cmUgdW5sZXNzIHRoZSBtYWludGFpbmVyIGRlbGliZXJhdGVseSBkZWNpZGVkIHRvIGluY2x1ZGUgdGhhdCAiCisibW9kaWZpZWQgYmluYXJ5IGZpbGUgaW4gdGhlIGRlYmlhbiB0YXJiYWxsIChieSBsaXN0aW5nIGl0IGluIEI8ZGViaWFuL3NvdXJjZS8iCisiaW5jbHVkZS1iaW5hcmllcz4pLiBUaGUgYnVpbGQgd2lsbCBhbHNvIGZhaWwgaWYgaXQgZmluZHMgYmluYXJ5IGZpbGVzIGluIHRoZSAiCisiZGViaWFuIHN1Yi1kaXJlY3RvcnkgdW5sZXNzIHRoZXkgaGF2ZSBiZWVuIHdoaXRlbGlzdGVkIHRocm91Z2ggQjxkZWJpYW4vIgorInNvdXJjZS9pbmNsdWRlLWJpbmFyaWVzPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo0NjIKK21zZ2lkICIiCisiVGhlIHVwZGF0ZWQgZGViaWFuIGRpcmVjdG9yeSBhbmQgdGhlIGxpc3Qgb2YgbW9kaWZpZWQgYmluYXJpZXMgaXMgdGhlbiB1c2VkICIKKyJ0byBnZW5lcmF0ZSB0aGUgZGViaWFuIHRhcmJhbGwuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NDY4Cittc2dpZCAiIgorIlRoZSBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlZCBkaWZmIGRvZXNuJ3QgaW5jbHVkZSBjaGFuZ2VzIG9uIFZDUyBzcGVjaWZpYyAiCisiZmlsZXMgYXMgd2VsbCBhcyBtYW55IHRlbXBvcmFyeSBmaWxlcyAoc2VlIGRlZmF1bHQgdmFsdWUgYXNzb2NpYXRlZCB0byBCPC1pPiAiCisib3B0aW9uIGluIHRoZSBCPC0taGVscD4gb3V0cHV0KS4gSW4gcGFydGljdWxhciwgdGhlIEI8LnBjPiBkaXJlY3RvcnkgdXNlZCBieSAiCisicXVpbHQgaXMgaWdub3JlZCBkdXJpbmcgZ2VuZXJhdGlvbiBvZiB0aGUgYXV0b21hdGljIHBhdGNoLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjQ3NworbXNnaWQgIiIKKyJOb3RlOiBCPGRwa2ctc291cmNlPiBCPC0tYmVmb3JlLWJ1aWxkPiAoYW5kIEI8LWI+KSB3aWxsIGVuc3VyZSB0aGF0IGFsbCAiCisicGF0Y2hlcyBsaXN0ZWQgaW4gdGhlIHNlcmllcyBmaWxlIGFyZSBhcHBsaWVkIHNvIHRoYXQgYSBwYWNrYWdlIGJ1aWxkIGFsd2F5cyAiCisiaGFzIGFsbCBwYXRjaGVzIGFwcGxpZWQuIEl0IGRvZXMgdGhpcyBieSBmaW5kaW5nIHVuYXBwbGllZCBwYXRjaGVzICh0aGV5IGFyZSAiCisibGlzdGVkIGluIHRoZSBCPHNlcmllcz4gZmlsZSBidXQgbm90IGluIEI8LnBjL2FwcGxpZWQtcGF0Y2hlcz4pLCBhbmQgaWYgdGhlICIKKyJmaXJzdCBwYXRjaCBpbiB0aGF0IHNldCBjYW4gYmUgYXBwbGllZCB3aXRob3V0IGVycm9ycywgaXQgd2lsbCBhcHBseSB0aGVtICIKKyJhbGwuIFRoZSBvcHRpb24gQjwtLW5vLXByZXBhcmF0aW9uPiBjYW4gYmUgdXNlZCB0byBkaXNhYmxlIHRoaXMgYmVoYXZpb3IuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NDgwCittc2dpZCAiQjxSZWNvcmRpbmcgY2hhbmdlcz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NDgwCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1jb21taXQ+IFtJPGRpcmVjdG9yeT5dIFtJPHBhdGNoLW5hbWU+XSBbSTxwYXRjaC1maWxlPl0iCittc2dzdHIgIkI8ZHBrZyAtaT4gfCBCPC0taW5zdGFsbD4gSTxhcnF1aXZvX2RvX3BhY290ZT4uLi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NDkwCittc2dpZCAiIgorIkdlbmVyYXRlcyBhIHBhdGNoIGNvcnJlc3BvbmRpbmcgdG8gdGhlIGxvY2FsIGNoYW5nZXMgdGhhdCBhcmUgbm90IG1hbmFnZWQgYnkgIgorInRoZSBxdWlsdCBwYXRjaCBzeXN0ZW0gYW5kIGludGVncmF0ZXMgaXQgaW4gdGhlIHBhdGNoIHN5c3RlbSB1bmRlciB0aGUgbmFtZSAiCisiSTxwYXRjaC1uYW1lPi4gSWYgdGhlIG5hbWUgaXMgbWlzc2luZywgaXQgd2lsbCBiZSBhc2tlZCBpbnRlcmFjdGl2ZWx5LiBJZiAiCisiSTxwYXRjaC1maWxlPiBpcyBnaXZlbiwgaXQgaXMgdXNlZCBhcyB0aGUgcGF0Y2ggY29ycmVzcG9uZGluZyB0byB0aGUgbG9jYWwgIgorImNoYW5nZXMgdG8gaW50ZWdyYXRlLiBUaGlzIGlzIG1haW5seSB1c2VmdWwgYWZ0ZXIgYSBidWlsZCBmYWlsdXJlIHRoYXQgcHJlLSIKKyJnZW5lcmF0ZWQgdGhpcyBmaWxlLiBPbmNlIGludGVncmF0ZWQsIGFuIGVkaXRvciBpcyBsYXVuY2hlZCBzbyB0aGF0IHlvdSBjYW4gIgorImVkaXQgdGhlIG1ldGEtaW5mb3JtYXRpb24gaW4gdGhlIHBhdGNoIGhlYWRlci4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo0OTMgZHBrZy1zb3VyY2UuMTo1NjcgZHBrZy1zb3VyY2UuMTo2MDYKKyMsIGZ1enp5Cittc2dpZCAiQjxCdWlsZCBvcHRpb25zPiIKK21zZ3N0ciAiQjxkcGtnPiBbSTxvcMOnw7Vlcz5dIEk8YcOnw6NvPiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NDkzCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1hbGxvdy12ZXJzaW9uLW9mLXF1aWx0LWRiPT5JPHZlcnNpb24+IgorbXNnc3RyICJCPC0tdmVyc2lvbj4iCisKKyMgdHlwZTogUGxhaW4gdGV4dAorIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1MDEKK21zZ2lkICIiCisiQWxsb3cgQjxkcGtnLXNvdXJjZT4gdG8gYnVpbGQgdGhlIHNvdXJjZSBwYWNrYWdlIGlmIHRoZSB2ZXJzaW9uIG9mIHRoZSBxdWlsdCAiCisibWV0YWRhdGEgaXMgdGhlIG9uZSBzcGVjaWZpZWQsIGV2ZW4gaWYgQjxkcGtnLXNvdXJjZT4gZG9lc24ndCBrbm93IGFib3V0IGl0LiAiCisiRWZmZWN0aXZlbHkgdGhpcyBzYXlzIHRoYXQgdGhlIGdpdmVuIHZlcnNpb24gb2YgdGhlIHF1aWx0IG1ldGFkYXRhIGlzICIKKyJjb21wYXRpYmxlIHdpdGggdGhlIHZlcnNpb24gMiB0aGF0IEI8ZHBrZy1zb3VyY2U+IGN1cnJlbnRseSBzdXBwb3J0cy4gVGhlICIKKyJ2ZXJzaW9uIG9mIHRoZSBxdWlsdCBtZXRhZGF0YSBpcyBzdG9yZWQgaW4gQjwucGMvLnZlcnNpb24+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTo1MDEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWluY2x1ZGUtcmVtb3ZhbD4iCittc2dzdHIgIkI8ZHBrZyAtLWNsZWFyLWF2YWlsPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1MDUKK21zZ2lkICIiCisiRG8gbm90IGlnbm9yZSByZW1vdmVkIGZpbGVzIGFuZCBpbmNsdWRlIHRoZW0gaW4gdGhlIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkICIKKyJwYXRjaC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NTA1CisjLCBuby13cmFwCittc2dpZCAiQjwtLWluY2x1ZGUtdGltZXN0YW1wPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjUwOAorbXNnaWQgIkluY2x1ZGUgdGltZXN0YW1wIGluIHRoZSBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlZCBwYXRjaC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NTA4CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1pbmNsdWRlLWJpbmFyaWVzPiIKK21zZ3N0ciAiQjxjb25maWctZmlsZXM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjUxMworbXNnaWQgIiIKKyJBZGQgYWxsIG1vZGlmaWVkIGJpbmFyaWVzIGluIHRoZSBkZWJpYW4gdGFyYmFsbC4gQWxzbyBhZGQgdGhlbSB0byBCPGRlYmlhbi8iCisic291cmNlL2luY2x1ZGUtYmluYXJpZXM+OiB0aGV5IHdpbGwgYmUgYWRkZWQgYnkgZGVmYXVsdCBpbiBzdWJzZXF1ZW50IGJ1aWxkcyAiCisiYW5kIHRoaXMgb3B0aW9uIGlzIHRodXMgbm8gbW9yZSBuZWVkZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjUxMworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tbm8tcHJlcGFyYXRpb24+IgorbXNnc3RyICJCPC0tdmVyc2lvbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTE3Cittc2dpZCAiIgorIkRvIG5vdCB0cnkgdG8gcHJlcGFyZSB0aGUgYnVpbGQgdHJlZSBieSBhcHBseWluZyBwYXRjaGVzIHdoaWNoIGFyZSAiCisiYXBwYXJlbnRseSB1bmFwcGxpZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjUxNworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tc2luZ2xlLWRlYmlhbi1wYXRjaD4iCittc2dzdHIgIkI8ZHBrZy1kZWItYWN0aW9ucz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTI4Cittc2dpZCAiIgorIlVzZSBCPGRlYmlhbi9wYXRjaGVzL2RlYmlhbi1jaGFuZ2VzPiBpbnN0ZWFkIG9mIEI8ZGViaWFuL3BhdGNoZXMvZGViaWFuLSIKKyJjaGFuZ2VzLT5JPHZlcnNpb24+IGZvciB0aGUgbmFtZSBvZiB0aGUgYXV0b21hdGljIHBhdGNoIGdlbmVyYXRlZCBkdXJpbmcgIgorImJ1aWxkLiBUaGlzIG9wdGlvbiBpcyBwYXJ0aWN1bGFybHkgdXNlZnVsIHdoZW4gdGhlIHBhY2thZ2UgaXMgbWFpbnRhaW5lZCBpbiAiCisiYSBWQ1MgYW5kIGEgcGF0Y2ggc2V0IGNhbid0IHJlbGlhYmx5IGJlIGdlbmVyYXRlZC4gSW5zdGVhZCB0aGUgY3VycmVudCBkaWZmICIKKyJ3aXRoIHVwc3RyZWFtIHNob3VsZCBiZSBzdG9yZWQgaW4gYSBzaW5nbGUgcGF0Y2guIFRoZSBvcHRpb24gd291bGQgYmUgcHV0IGluICIKKyJCPGRlYmlhbi9zb3VyY2UvbG9jYWwtb3B0aW9ucz4gYW5kIHdvdWxkIGJlIGFjY29tcGFuaWVkIGJ5IGEgQjxkZWJpYW4vc291cmNlLyIKKyJsb2NhbC1wYXRjaC1oZWFkZXI+IGZpbGUgZXhwbGFpbmluZyBob3cgdGhlIERlYmlhbiBjaGFuZ2VzIGNhbiBiZSBiZXN0ICIKKyJyZXZpZXdlZCwgZm9yIGV4YW1wbGUgaW4gdGhlIFZDUyB0aGF0IGlzIHVzZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjUyOAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1jcmVhdGUtZW1wdHktb3JpZz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1MzQKK21zZ2lkICIiCisiQXV0b21hdGljYWxseSBjcmVhdGUgdGhlIG1haW4gb3JpZ2luYWwgdGFyYmFsbCBhcyBlbXB0eSBpZiBpdCdzIG1pc3NpbmcgYW5kICIKKyJpZiB0aGVyZSBhcmUgc3VwcGxlbWVudGFyeSBvcmlnaW5hbCB0YXJiYWxscy4gVGhpcyBvcHRpb24gaXMgbWVhbnQgdG8gYmUgIgorInVzZWQgd2hlbiB0aGUgc291cmNlIHBhY2thZ2UgaXMganVzdCBhIGJ1bmRsZSBvZiBtdWx0aXBsZSB1cHN0cmVhbSBzb2Z0d2FyZSAiCisiYW5kIHdoZXJlIHRoZXJlJ3Mgbm8gXCJtYWluXCIgc29mdHdhcmUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjUzNAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tdW5hcHBseS1wYXRjaGVzPiIKK21zZ3N0ciAiQjwtLXRlc3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjU0MQorbXNnaWQgIiIKKyJVbmFwcGx5IHRoZSBwYXRjaGVzIGluIHRoZSBCPC0tYWZ0ZXItYnVpbGQ+IGhvb2suIFlvdSB1c3VhbGx5IGRvbid0IG5lZWQgIgorInRoaXMgb3B0aW9uIGFzIGRwa2ctc291cmNlIHdpbGwgYXV0b21hdGljYWxseSB1bmFwcGx5IHRoZSBwYXRjaGVzIGlmIGl0IGRpZCAiCisiYXBwbHkgdGhlbSBkdXJpbmcgQjwtLWJlZm9yZS1idWlsZD4uIFRoaXMgb3B0aW9uIGlzIG9ubHkgYWxsb3dlZCBpbiBCPGRlYmlhbi8iCisic291cmNlL2xvY2FsLW9wdGlvbnM+IHNvIHRoYXQgYWxsIGdlbmVyYXRlZCBzb3VyY2UgcGFja2FnZXMgaGF2ZSB0aGUgc2FtZSAiCisiYmVoYXZpb3IgYnkgZGVmYXVsdC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1NDgKK21zZ2lkICIiCisiVGhlIHByb2Nlc3MgZmFpbHMgaWYgYW4gYXV0b21hdGljIHBhdGNoIGhhcyBiZWVuIGdlbmVyYXRlZC4gVGhpcyBvcHRpb24gY2FuICIKKyJiZSB1c2VkIHRvIGVuc3VyZSB0aGF0IGFsbCBjaGFuZ2VzIHdlcmUgcHJvcGVybHkgcmVjb3JkZWQgaW4gc2VwYXJhdGUgcXVpbHQgIgorInBhdGNoZXMgcHJpb3IgdG8gdGhlIHNvdXJjZSBwYWNrYWdlIGJ1aWxkLiBUaGlzIG9wdGlvbiBpcyBub3QgYWxsb3dlZCBpbiAiCisiQjxkZWJpYW4vc291cmNlL29wdGlvbnM+IGJ1dCBjYW4gYmUgdXNlZCBpbiBCPGRlYmlhbi9zb3VyY2UvbG9jYWwtb3B0aW9ucz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjU0OAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tYXV0by1jb21taXQ+IgorbXNnc3RyICJCPC0tbm9jaGVjaz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTUyCittc2dpZCAiIgorIlRoZSBwcm9jZXNzIGRvZXNuJ3QgZmFpbCBpZiBhbiBhdXRvbWF0aWMgcGF0Y2ggaGFzIGJlZW4gZ2VuZXJhdGVkLCBpbnN0ZWFkICIKKyJpdCdzIGltbWVkaWF0ZWx5IHJlY29yZGVkIGluIHRoZSBxdWlsdCBzZXJpZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTU1Cittc2dpZCAiQjxFeHRyYWN0IG9wdGlvbnM+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTU4Cittc2dpZCAiU2tpcHMgZXh0cmFjdGlvbiBvZiB0aGUgZGViaWFuIHRhcmJhbGwgb24gdG9wIG9mIHRoZSB1cHN0cmVhbSBzb3VyY2VzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTo1NTgKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLXNraXAtcGF0Y2hlcz4iCittc2dzdHIgIkI8LS10ZXN0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1NjEKK21zZ2lkICJEbyBub3QgYXBwbHkgcGF0Y2hlcyBhdCB0aGUgZW5kIG9mIHRoZSBleHRyYWN0aW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo1NjIKKyMsIG5vLXdyYXAKK21zZ2lkICJGb3JtYXQ6IDMuMCAoY3VzdG9tKSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjU2NQorbXNnaWQgIiIKKyJUaGlzIGZvcm1hdCBpcyBzcGVjaWFsLiBJdCBkb2Vzbid0IHJlcHJlc2VudCBhIHJlYWwgc291cmNlIHBhY2thZ2UgZm9ybWF0ICIKKyJidXQgY2FuIGJlIHVzZWQgdG8gY3JlYXRlIHNvdXJjZSBwYWNrYWdlcyB3aXRoIGFyYml0cmFyeSBmaWxlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1NzEKK21zZ2lkICIiCisiQWxsIG5vbi1vcHRpb24gYXJndW1lbnRzIGFyZSB0YWtlbiBhcyBmaWxlcyB0byBpbnRlZ3JhdGUgaW4gdGhlIGdlbmVyYXRlZCAiCisic291cmNlIHBhY2thZ2UuIFRoZXkgbXVzdCBleGlzdCBhbmQgYXJlIHByZWZlcmFibHkgaW4gdGhlIGN1cnJlbnQgZGlyZWN0b3J5LiAiCisiQXQgbGVhc3Qgb25lIGZpbGUgbXVzdCBiZSBnaXZlbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NTcxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS10YXJnZXQtZm9ybWF0PT5JPHZhbHVlPiIKK21zZ3N0ciAiQjwtLWFib3J0LWFmdGVyPT5JPG7Dum1lcm8+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjU3NgorbXNnaWQgIiIKKyJCPFJlcXVpcmVkPi4gRGVmaW5lcyB0aGUgcmVhbCBmb3JtYXQgb2YgdGhlIGdlbmVyYXRlZCBzb3VyY2UgcGFja2FnZS4gIFRoZSAiCisiZ2VuZXJhdGVkIC5kc2MgZmlsZSB3aWxsIGNvbnRhaW4gdGhpcyB2YWx1ZSBpbiBpdHMgSTxGb3JtYXQ+IGZpZWxkIGFuZCBub3QgIgorIlwiMy4wIChjdXN0b20pXCIuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjU3NworIywgbm8td3JhcAorbXNnaWQgIkZvcm1hdDogMy4wIChnaXQpIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTc5Cittc2dpZCAiVGhpcyBmb3JtYXQgaXMgZXhwZXJpbWVudGFsLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjU4NAorbXNnaWQgIiIKKyJBIHNvdXJjZSBwYWNrYWdlIGluIHRoaXMgZm9ybWF0IGNvbnNpc3RzIG9mIGEgc2luZ2xlIGJ1bmRsZSBvZiBhIGdpdCAiCisicmVwb3NpdG9yeSBCPC5naXQ+IHRvIGhvbGQgdGhlIHNvdXJjZSBvZiBhIHBhY2thZ2UuICBUaGVyZSBtYXkgYWxzbyBiZSBhIEI8LiIKKyJnaXRzaGFsbG93PiBmaWxlIGxpc3RpbmcgcmV2aXNpb25zIGZvciBhIHNoYWxsb3cgZ2l0IGNsb25lLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjU5MAorbXNnaWQgIiIKKyJUaGUgYnVuZGxlIGlzIGNsb25lZCBhcyBhIGdpdCByZXBvc2l0b3J5IHRvIHRoZSB0YXJnZXQgZGlyZWN0b3J5LiAgSWYgdGhlcmUgIgorImlzIGEgZ2l0c2hhbGxvdyBmaWxlLCBpdCBpcyBpbnN0YWxsZWQgYXMgYC5naXQvc2hhbGxvd2AgaW5zaWRlIHRoZSBjbG9uZWQgIgorImdpdCByZXBvc2l0b3J5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjU5NQorbXNnaWQgIiIKKyJOb3RlIHRoYXQgYnkgZGVmYXVsdCB0aGUgbmV3IHJlcG9zaXRvcnkgd2lsbCBoYXZlIHRoZSBzYW1lIGJyYW5jaCBjaGVja2VkICIKKyJvdXQgdGhhdCB3YXMgY2hlY2tlZCBvdXQgaW4gdGhlIG9yaWdpbmFsIHNvdXJjZS4gKFR5cGljYWxseSBcIm1hc3RlclwiLCBidXQgIgorIml0IGNvdWxkIGJlIGFueXRoaW5nLikgQW55IG90aGVyIGJyYW5jaGVzIHdpbGwgYmUgYXZhaWxhYmxlIHVuZGVyIGByZW1vdGVzLyIKKyJvcmlnaW4vYC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2MDAgZHBrZy1zb3VyY2UuMTo2MzMKK21zZ2lkICIiCisiQmVmb3JlIGdvaW5nIGFueSBmdXJ0aGVyLCBzb21lIGNoZWNrcyBhcmUgZG9uZSB0byBlbnN1cmUgdGhhdCB3ZSBkb24ndCBoYXZlICIKKyJhbnkgbm9uLWlnbm9yZWQgdW5jb21taXR0ZWQgY2hhbmdlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2MDQKK21zZ2lkICIiCisiQjxnaXQtYnVuZGxlPigxKSBpcyB1c2VkIHRvIGdlbmVyYXRlIGEgYnVuZGxlIG9mIHRoZSBnaXQgcmVwb3NpdG9yeS4gIEJ5ICIKKyJkZWZhdWx0LCBhbGwgYnJhbmNoZXMgYW5kIHRhZ3MgaW4gdGhlIHJlcG9zaXRvcnkgYXJlIGluY2x1ZGVkIGluIHRoZSBidW5kbGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjYwNgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tZ2l0LXJlZj0+STxyZWY+IgorbXNnc3RyICJCPC0tYWJvcnQtYWZ0ZXI9Pkk8bsO6bWVybz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NjE2Cittc2dpZCAiIgorIkFsbG93cyBzcGVjaWZ5aW5nIGEgZ2l0IHJlZiB0byBpbmNsdWRlIGluIHRoZSBnaXQgYnVuZGxlLiBVc2UgZGlzYWJsZXMgdGhlICIKKyJkZWZhdWx0IGJlaGF2aW9yIG9mIGluY2x1ZGluZyBhbGwgYnJhbmNoZXMgYW5kIHRhZ3MuIE1heSBiZSBzcGVjaWZpZWQgIgorIm11bHRpcGxlIHRpbWVzLiBUaGUgSTxyZWY+IGNhbiBiZSB0aGUgbmFtZSBvZiBhIGJyYW5jaCBvciB0YWcgdG8gaW5jbHVkZS4gSXQgIgorIm1heSBhbHNvIGJlIGFueSBwYXJhbWV0ZXIgdGhhdCBjYW4gYmUgcGFzc2VkIHRvIEI8Z2l0LXJldi1saXN0PigxKS4gRm9yICIKKyJleGFtcGxlLCB0byBpbmNsdWRlIG9ubHkgdGhlIG1hc3RlciBicmFuY2gsIHVzZSAtLWdpdC1yZWY9bWFzdGVyLiBUbyBpbmNsdWRlICIKKyJhbGwgdGFncyBhbmQgYnJhbmNoZXMsIGV4Y2VwdCBmb3IgdGhlIHByaXZhdGUgYnJhbmNoLCB1c2UgLS1naXQtcmVmPS0tYWxsIC0tIgorImdpdC1yZWY9XnByaXZhdGUiCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NjE2CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8LS1hYm9ydC1hZnRlcj0+STxudW1iZXI+IgorbXNnaWQgIkI8LS1naXQtZGVwdGg9Pkk8bnVtYmVyPiIKK21zZ3N0ciAiQjwtLWFib3J0LWFmdGVyPT5JPG7Dum1lcm8+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjYyMAorbXNnaWQgIiIKKyJDcmVhdGVzIGEgc2hhbGxvdyBjbG9uZSB3aXRoIGEgaGlzdG9yeSB0cnVuY2F0ZWQgdG8gdGhlIHNwZWNpZmllZCBudW1iZXIgb2YgIgorInJldmlzaW9ucy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6NjIwCisjLCBuby13cmFwCittc2dpZCAiRm9ybWF0OiAzLjAgKGJ6cikiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2MjMKK21zZ2lkICIiCisiVGhpcyBmb3JtYXQgaXMgZXhwZXJpbWVudGFsLiBJdCBnZW5lcmF0ZXMgYSBzaW5nbGUgdGFyYmFsbCBjb250YWluaW5nIHRoZSAiCisiYnpyIHJlcG9zaXRvcnkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NjI4Cittc2dpZCAiIgorIlRoZSB0YXJiYWxsIGlzIHVucGFja2VkIGFuZCB0aGVuIGJ6ciBpcyB1c2VkIHRvIGNoZWNrb3V0IHRoZSBjdXJyZW50IGJyYW5jaC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2MzcKK21zZ2lkICIiCisiVGhlbiB0aGUgVkNTIHNwZWNpZmljIHBhcnQgb2YgdGhlIHNvdXJjZSBkaXJlY3RvcnkgaXMgY29waWVkIG92ZXIgdG8gYSAiCisidGVtcG9yYXJ5IGRpcmVjdG9yeS4gQmVmb3JlIHRoaXMgdGVtcG9yYXJ5IGRpcmVjdG9yeSBpcyBwYWNrZWQgaW4gYSB0YXJiYWxsLCAiCisidmFyaW91cyBjbGVhbnVwIGFyZSBkb25lIHRvIHNhdmUgc3BhY2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLXNvdXJjZS4xOjYzNworIywgbm8td3JhcAorbXNnaWQgIldBUk5JTkdTIEFORCBFUlJPUlMiCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6NjM4CisjLCBuby13cmFwCittc2dpZCAibm8gc291cmNlIGZvcm1hdCBzcGVjaWZpZWQgaW4gZGViaWFuL3NvdXJjZS9mb3JtYXQiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2NDQKK21zZ2lkICIiCisiVGhlIGZpbGUgQjxkZWJpYW4vc291cmNlL2Zvcm1hdD4gc2hvdWxkIGFsd2F5cyBleGlzdCBhbmQgaW5kaWNhdGUgdGhlICIKKyJkZXNpcmVkIHNvdXJjZSBmb3JtYXQuIEZvciBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eSwgZm9ybWF0IFwiMS4wXCIgaXMgIgorImFzc3VtZWQgd2hlbiB0aGUgZmlsZSBkb2Vzbid0IGV4aXN0IGJ1dCB5b3Ugc2hvdWxkIG5vdCByZWx5IG9uIHRoaXM6IGF0IHNvbWUgIgorInBvaW50IGluIHRoZSBmdXR1cmUgZHBrZy1zb3VyY2Ugd2lsbCBiZSBtb2RpZmllZCB0byBmYWlsIHdoZW4gdGhhdCBmaWxlICIKKyJkb2Vzbid0IGV4aXN0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjY1MAorbXNnaWQgIiIKKyJUaGUgcmF0aW9uYWxlIGlzIHRoYXQgZm9ybWF0IFwiMS4wXCIgaXMgbm8gbG9uZ2VyIHRoZSByZWNvbW1lbmRlZCBmb3JtYXQsICIKKyJ5b3Ugc2hvdWxkIHVzdWFsbHkgcGljayBvbmUgb2YgdGhlIG5ld2VyIGZvcm1hdHMgKFwiMy4wIChxdWlsdClcIiwgXCIzLjAgIgorIihuYXRpdmUpXCIpIGJ1dCBCPGRwa2ctc291cmNlPiB3aWxsIG5vdCBkbyB0aGlzIGF1dG9tYXRpY2FsbHkgZm9yIHlvdS4gIElmICIKKyJ5b3Ugd2FudCB0byBjb250aW51ZSB1c2luZyB0aGUgb2xkIGZvcm1hdCwgeW91IHNob3VsZCBiZSBleHBsaWNpdCBhYm91dCBpdCAiCisiYW5kIHB1dCBcIjEuMFwiIGluIEI8ZGViaWFuL3NvdXJjZS9mb3JtYXQ+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo2NTAKKyMsIG5vLXdyYXAKK21zZ2lkICJ0aGUgZGlmZiBtb2RpZmllcyB0aGUgZm9sbG93aW5nIHVwc3RyZWFtIGZpbGVzIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NjU3Cittc2dpZCAiIgorIldoZW4gdXNpbmcgc291cmNlIGZvcm1hdCBcIjEuMFwiIGl0IGlzIHVzdWFsbHkgYSBiYWQgaWRlYSB0byBtb2RpZnkgdXBzdHJlYW0gIgorImZpbGVzIGRpcmVjdGx5IGFzIHRoZSBjaGFuZ2VzIGVuZCB1cCBoaWRkZW4gYW5kIG1vc3RseSB1bmRvY3VtZW50ZWQgaW4gdGhlIC4iCisiZGlmZi5neiBmaWxlLiBJbnN0ZWFkIHlvdSBzaG91bGQgc3RvcmUgeW91ciBjaGFuZ2VzIGFzIHBhdGNoZXMgaW4gdGhlIGRlYmlhbiAiCisiZGlyZWN0b3J5IGFuZCBhcHBseSB0aGVtIGF0IGJ1aWxkLXRpbWUuIFRvIGF2b2lkIHRoaXMgY29tcGxleGl0eSB5b3UgY2FuICIKKyJhbHNvIHVzZSB0aGUgZm9ybWF0IFwiMy4wIChxdWlsdClcIiB0aGF0IG9mZmVycyB0aGlzIG5hdGl2ZWx5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo2NTcKKyMsIG5vLXdyYXAKK21zZ2lkICJjYW5ub3QgcmVwcmVzZW50IGNoYW5nZSB0byBJPGZpbGU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NjYzCittc2dpZCAiIgorIkNoYW5nZXMgdG8gdXBzdHJlYW0gc291cmNlcyBhcmUgdXN1YWxseSBzdG9yZWQgd2l0aCBwYXRjaCBmaWxlcywgYnV0IG5vdCBhbGwgIgorImNoYW5nZXMgY2FuIGJlIHJlcHJlc2VudGVkIHdpdGggcGF0Y2hlczogdGhleSBjYW4gb25seSBhbHRlciB0aGUgY29udGVudCBvZiAiCisicGxhaW4gdGV4dCBmaWxlcy4gSWYgeW91IHRyeSByZXBsYWNpbmcgYSBmaWxlIHdpdGggc29tZXRoaW5nIG9mIGEgZGlmZmVyZW50ICIKKyJ0eXBlIChmb3IgZXhhbXBsZSByZXBsYWNpbmcgYSBwbGFpbiBmaWxlIHdpdGggYSBzeW1saW5rIG9yIGEgZGlyZWN0b3J5KSwgeW91ICIKKyJ3aWxsIGdldCB0aGlzIGVycm9yIG1lc3NhZ2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjY2MworIywgbm8td3JhcAorbXNnaWQgIm5ld2x5IGNyZWF0ZWQgZW1wdHkgZmlsZSBJPGZpbGU+IHdpbGwgbm90IGJlIHJlcHJlc2VudGVkIGluIGRpZmYiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2NjYKK21zZ2lkICIiCisiRW1wdHkgZmlsZXMgY2FuJ3QgYmUgY3JlYXRlZCB3aXRoIHBhdGNoIGZpbGVzLiBUaHVzIHRoaXMgY2hhbmdlIGlzIG5vdCAiCisicmVjb3JkZWQgaW4gdGhlIHNvdXJjZSBwYWNrYWdlIGFuZCB5b3UgYXJlIHdhcm5lZCBhYm91dCBpdC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6NjY2CisjLCBuby13cmFwCittc2dpZCAiZXhlY3V0YWJsZSBtb2RlIEk8cGVybXM+IG9mIEk8ZmlsZT4gd2lsbCBub3QgYmUgcmVwcmVzZW50ZWQgaW4gZGlmZiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo2NjcKKyMsIG5vLXdyYXAKK21zZ2lkICJzcGVjaWFsIG1vZGUgSTxwZXJtcz4gb2YgSTxmaWxlPiB3aWxsIG5vdCBiZSByZXByZXNlbnRlZCBpbiBkaWZmIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NjcxCittc2dpZCAiIgorIlBhdGNoIGZpbGVzIGRvIG5vdCByZWNvcmQgcGVybWlzc2lvbnMgb2YgZmlsZXMgYW5kIHRodXMgbW9kaWZpZWQgcGVybWlzc2lvbnMgIgorImFyZSBub3Qgc3RvcmVkIGluIHRoZSBzb3VyY2UgcGFja2FnZS4gVGhpcyB3YXJuaW5nIHJlbWluZHMgeW91IG9mIHRoYXQgZmFjdC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctc291cmNlLjE6NjcxCisjLCBuby13cmFwCittc2dpZCAiRklMRSBGT1JNQVRTIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjY3MgorIywgbm8td3JhcAorbXNnaWQgImRlYmlhbi9zb3VyY2UvZm9ybWF0IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6Njc2Cittc2dpZCAiIgorIlRoaXMgZmlsZSBjb250YWlucyBvbiBhIHNpbmdsZSBsaW5lIHRoZSBmb3JtYXQgdGhhdCBzaG91bGQgYmUgdXNlZCB0byBidWlsZCAiCisidGhlIHNvdXJjZSBwYWNrYWdlIChwb3NzaWJsZSBmb3JtYXRzIGFyZSBkZXNjcmliZWQgYWJvdmUpLiBObyBsZWFkaW5nIG9yICIKKyJ0cmFpbGluZyBzcGFjZXMgYXJlIGFsbG93ZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjY3NgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJkZWJpYW4vc291cmNlL2luY2x1ZGUtYmluYXJpZXMiCittc2dzdHIgIkI8Y29uZmlnLWZpbGVzPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2ODAKK21zZ2lkICIiCisiVGhpcyBmaWxlIGNvbnRhaW5zIGEgbGlzdCBvZiBiaW5hcnkgZmlsZXMgKG9uZSBwZXIgbGluZSkgdGhhdCBzaG91bGQgYmUgIgorImluY2x1ZGVkIGluIHRoZSBkZWJpYW4gdGFyYmFsbC4gTGVhZGluZyBhbmQgdHJhaWxpbmcgc3BhY2VzIGFyZSBzdHJpcHBlZC4gICIKKyJMaW5lcyBzdGFydGluZyB3aXRoIFwiI1wiIGFyZSBjb21tZW50cyBhbmQgYXJlIHNraXBwZWQuIEVtcHR5IGxpbmVzIGFyZSAiCisiaWdub3JlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6NjgwCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgImRlYmlhbi9zb3VyY2Uvb3B0aW9ucyIKK21zZ3N0ciAiQjxjb25maWctZmlsZXM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjY4NgorbXNnaWQgIiIKKyJUaGlzIGZpbGUgY29udGFpbnMgYSBsaXN0IG9mIGxvbmcgb3B0aW9ucyB0aGF0IHNob3VsZCBiZSBhdXRvbWF0aWNhbGx5ICIKKyJwcmVwZW5kZWQgdG8gdGhlIHNldCBvZiBjb21tYW5kIGxpbmUgb3B0aW9ucyBvZiBhIEI8ZHBrZy1zb3VyY2UgLWI+IG9yICIKKyJCPGRwa2ctc291cmNlIC0tcHJpbnQtZm9ybWF0PiBjYWxsLiBPcHRpb25zIGxpa2UgQjwtLWNvbXByZXNzaW9uPiBhbmQgQjwtLSIKKyJjb21wcmVzc2lvbi1sZXZlbD4gYXJlIHdlbGwgc3VpdGVkIGZvciB0aGlzIGZpbGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NjkyCittc2dpZCAiIgorIkVhY2ggb3B0aW9uIHNob3VsZCBiZSBwdXQgb24gYSBzZXBhcmF0ZSBsaW5lLiBFbXB0eSBsaW5lcyBhbmQgbGluZXMgc3RhcnRpbmcgIgorIndpdGggXCIjXCIgYXJlIGlnbm9yZWQuIFRoZSBsZWFkaW5nIFwiLS1cIiBzaG91bGQgYmUgc3RyaXBwZWQgYW5kIHNob3J0ICIKKyJvcHRpb25zIGFyZSBub3QgYWxsb3dlZC4gT3B0aW9uYWwgc3BhY2VzIGFyZSBhbGxvd2VkIGFyb3VuZCB0aGUgXCI9XCIgc3ltYm9sICIKKyJhbmQgb3B0aW9uYWwgcXVvdGVzIGFyZSBhbGxvd2VkIGFyb3VuZCB0aGUgdmFsdWUuICBIZXJlJ3MgYW4gZXhhbXBsZSBvZiBzdWNoICIKKyJhIGZpbGU6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NzAwCisjLCBuby13cmFwCittc2dpZCAiIgorIiAgIyBsZXQgZHBrZy1zb3VyY2UgY3JlYXRlIGEgZGViaWFuLnRhci5iejIgd2l0aCBtYXhpbWFsIGNvbXByZXNzaW9uXG4iCisiICBjb21wcmVzc2lvbiA9IFwiYnppcDJcIlxuIgorIiAgY29tcHJlc3Npb24tbGV2ZWwgPSA5XG4iCisiICAjIHVzZSBkZWJpYW4vcGF0Y2hlcy9kZWJpYW4tY2hhbmdlcyBhcyBhdXRvbWF0aWMgcGF0Y2hcbiIKKyIgIHNpbmdsZS1kZWJpYW4tcGF0Y2hcbiIKKyIgICMgaWdub3JlIGNoYW5nZXMgb24gY29uZmlnLntzdWIsZ3Vlc3N9XG4iCisiICBleHRlbmQtZGlmZi1pZ25vcmUgPSBcIihefC8pKGNvbmZpZy5zdWJ8Y29uZmlnLmd1ZXNzKSRcIlxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NzAzCittc2dpZCAiIgorIk5vdGU6IEI8Zm9ybWF0PiBvcHRpb25zIGFyZSBub3QgYWNjZXB0ZWQgaW4gdGhpcyBmaWxlLCB5b3Ugc2hvdWxkIHVzZSAiCisiQjxkZWJpYW4vc291cmNlL2Zvcm1hdD4gaW5zdGVhZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6NzAzCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgImRlYmlhbi9zb3VyY2UvbG9jYWwtb3B0aW9ucyIKK21zZ3N0ciAiQjxjb25maWctZmlsZXM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjcwOAorbXNnaWQgIiIKKyJFeGFjdGx5IGxpa2UgQjxkZWJpYW4vc291cmNlL29wdGlvbnM+IGV4Y2VwdCB0aGF0IHRoZSBmaWxlIGlzIG5vdCBpbmNsdWRlZCAiCisiaW4gdGhlIGdlbmVyYXRlZCBzb3VyY2UgcGFja2FnZS4gSXQgY2FuIGJlIHVzZWZ1bCB0byBzdG9yZSBhIHByZWZlcmVuY2UgdGllZCAiCisidG8gdGhlIG1haW50YWluZXIgb3IgdG8gdGhlIFZDUyByZXBvc2l0b3J5IHdoZXJlIHRoZSBzb3VyY2UgcGFja2FnZSBpcyAiCisibWFpbnRhaW5lZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6NzA4CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgImRlYmlhbi9zb3VyY2UvbG9jYWwtcGF0Y2gtaGVhZGVyIgorbXNnc3RyICJCPGNvbmZpZy1maWxlcz4iCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjcwOQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJkZWJpYW4vc291cmNlL3BhdGNoLWhlYWRlciIKK21zZ3N0ciAiQjxjb25maWctZmlsZXM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjcxMworbXNnaWQgIiIKKyJGcmVlIGZvcm0gdGV4dCB0aGF0IGlzIHB1dCBvbiB0b3Agb2YgdGhlIGF1dG9tYXRpYyBwYXRjaCBnZW5lcmF0ZWQgaW4gIgorImZvcm1hdHMgXCIyLjBcIiBvciBcIjMuMCAocXVpbHQpXCIuIEI8bG9jYWwtcGF0Y2gtaGVhZGVyPiBpcyBub3QgaW5jbHVkZWQgaW4gIgorInRoZSBnZW5lcmF0ZWQgc291cmNlIHBhY2thZ2Ugd2hpbGUgQjxwYXRjaC1oZWFkZXI+IGlzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo3MTMKKyMsIG5vLXdyYXAKK21zZ2lkICJkZWJpYW4vcGF0Y2hlcy9zZXJpZXMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo3MjIKK21zZ2lkICIiCisiVGhpcyBmaWxlIGxpc3RzIGFsbCBwYXRjaGVzIHRoYXQgaGF2ZSB0byBiZSBhcHBsaWVkIChpbiB0aGUgZ2l2ZW4gb3JkZXIpICBvbiAiCisidG9wIG9mIHRoZSB1cHN0cmVhbSBzb3VyY2UgcGFja2FnZS4gTGVhZGluZyBhbmQgdHJhaWxpbmcgc3BhY2VzIGFyZSAiCisic3RyaXBwZWQuIExpbmVzIHN0YXJ0aW5nIHdpdGggXCIjXCIgYXJlIGNvbW1lbnRzIGFuZCBhcmUgc2tpcHBlZC4gRW1wdHkgIgorImxpbmVzIGFyZSBpZ25vcmVkLiBSZW1haW5pbmcgbGluZXMgc3RhcnQgd2l0aCBhIHBhdGNoIGZpbGVuYW1lIChyZWxhdGl2ZSB0byAiCisidGhlIEI8ZGViaWFuL3BhdGNoZXMvPiBkaXJlY3RvcnkpIHVwIHRvIHRoZSBmaXJzdCBzcGFjZSBjaGFyYWN0ZXIgb3IgdGhlIGVuZCAiCisib2YgbGluZS4gT3B0aW9uYWwgcXVpbHQgb3B0aW9ucyBjYW4gZm9sbG93IHVwIHRvIHRoZSBlbmQgb2YgbGluZSBvciB0aGUgIgorImZpcnN0IFwiI1wiIHByZWNlZGVkIGJ5IG9uZSBvciBtb3JlIHNwYWNlcyAod2hpY2ggbWFya3MgdGhlIHN0YXJ0IG9mIGEgIgorImNvbW1lbnQgdXAgdG8gdGhlIGVuZCBvZiBsaW5lKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo3MjkKKyMsIGZ1enp5Cittc2dpZCAiQjxkcGtnLWRlYj4oMSksIEI8ZHBrZz4oMSksIEI8ZHNlbGVjdD4oMSkuIgorbXNnc3RyICIiCisiQjxkc2VsZWN0Pig4KSwgQjxkcGtnLWRlYj4oMSksIEI8ZGViPig1KSwgQjxkZWItY29udHJvbD4oNSksIGUgQjxkcGtnLSIKKyJyZWNvbmZpZ3VyZT4oOCkiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NzM2Cittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMDgtMjAxMSBSYXBoYVxcWzplXWwgSGVydHpvZyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1zcGxpdC4xOjIKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiZHBrZy1zcGxpdCIKK21zZ3N0ciAiZHBrZyBzdWl0ZSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjUKK21zZ2lkICJkcGtnLXNwbGl0IC0gRGViaWFuIHBhY2thZ2UgYXJjaGl2ZSBzcGxpdC9qb2luIHRvb2wiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjkKKyMsIGZ1enp5Cittc2dpZCAiQjxkcGtnLXNwbGl0PiBbSTxvcHRpb24+Li4uXSBJPGNvbW1hbmQ+IgorbXNnc3RyICJCPGRwa2c+IFtJPG9ww6fDtWVzPl0gSTxhw6fDo28+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTUKK21zZ2lkICIiCisiQjxkcGtnLXNwbGl0PiBzcGxpdHMgRGViaWFuIGJpbmFyeSBwYWNrYWdlIGZpbGVzIGludG8gc21hbGxlciBwYXJ0cyBhbmQgIgorInJlYXNzZW1ibGVzIHRoZW0gYWdhaW4sIHRvIHN1cHBvcnQgdGhlIHN0b3JhZ2Ugb2YgbGFyZ2UgcGFja2FnZSBmaWxlcyBvbiAiCisic21hbGwgbWVkaWEgc3VjaCBhcyBmbG9wcHkgZGlza3MuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxOQorbXNnaWQgIiIKKyJJdCBjYW4gYmUgb3BlcmF0ZWQgbWFudWFsbHkgdXNpbmcgdGhlIEI8LS1zcGxpdD4sIEI8LS1qb2luPiBhbmQgQjwtLWluZm8+ICIKKyJvcHRpb25zLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MjcKK21zZ2lkICIiCisiSXQgYWxzbyBoYXMgYW4gYXV0b21hdGljIG1vZGUsIGludm9rZWQgdXNpbmcgdGhlIEI8LS1hdXRvPiBvcHRpb24sIHdoZXJlIGl0ICIKKyJtYWludGFpbnMgYSBxdWV1ZSBvZiBwYXJ0cyBzZWVuIGJ1dCBub3QgeWV0IHJlYXNzZW1ibGVkIGFuZCByZWFzc2VtYmxlcyBhICIKKyJwYWNrYWdlIGZpbGUgd2hlbiBpdCBoYXMgc2VlbiBhbGwgb2YgaXRzIHBhcnRzLiBUaGUgQjwtLWxpc3RxPiBhbmQgQjwtLSIKKyJkaXNjYXJkPiBvcHRpb25zIGFsbG93IHRoZSBtYW5hZ2VtZW50IG9mIHRoZSBxdWV1ZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjMwCittc2dpZCAiIgorIkFsbCBzcGxpdHRpbmcsIGpvaW5pbmcgYW5kIHF1ZXVlaW5nIG9wZXJhdGlvbnMgcHJvZHVjZSBpbmZvcm1hdGl2ZSBtZXNzYWdlcyAiCisib24gc3RhbmRhcmQgb3V0cHV0OyB0aGVzZSBtYXkgc2FmZWx5IGJlIGlnbm9yZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNwbGl0LjE6MzIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1zPiwgQjwtLXNwbGl0PiBJPGNvbXBsZXRlLWFyY2hpdmU+IFtJPHByZWZpeD5dIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMTozNQorbXNnaWQgIlNwbGl0cyBhIHNpbmdsZSBEZWJpYW4gYmluYXJ5IHBhY2thZ2UgaW50byBzZXZlcmFsIHBhcnRzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6NDMKK21zZ2lkICIiCisiVGhlIHBhcnRzIGFyZSBuYW1lZCBJPHByZWZpeD5CPC4+STxOPkI8b2Y+STxNPkI8LmRlYj4gd2hlcmUgSTxOPiBpcyB0aGUgcGFydCAiCisibnVtYmVyLCBzdGFydGluZyBhdCAxLCBhbmQgSTxNPiBpcyB0aGUgdG90YWwgbnVtYmVyIG9mIHBhcnRzIChib3RoIGluICIKKyJkZWNpbWFsKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjUxCittc2dpZCAiIgorIklmIG5vIEk8cHJlZml4PiBpcyBzdXBwbGllZCB0aGVuIHRoZSBJPGNvbXBsZXRlLWFyY2hpdmU+IGZpbGVuYW1lIGlzIHRha2VuLCAiCisiaW5jbHVkaW5nIGRpcmVjdG9yeSwgd2l0aCBhbnkgdHJhaWxpbmcgQjwuZGViPiByZW1vdmVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zcGxpdC4xOjUxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LWo+LCBCPC0tam9pbj4gSTxwYXJ0Pi4uLiIKK21zZ3N0ciAiQjxkcGtnIC1pPiB8IEI8LS1pbnN0YWxsPiBJPGFycXVpdm9fZG9fcGFjb3RlPi4uLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjU1Cittc2dpZCAiIgorIkpvaW5zIHRoZSBwYXJ0cyBvZiBhIHBhY2thZ2UgZmlsZSB0b2dldGhlciwgcmVhc3NlbWJsaW5nIHRoZSBvcmlnaW5hbCBmaWxlICIKKyJhcyBpdCB3YXMgYmVmb3JlIGl0IHdhcyBzcGxpdC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjU5Cittc2dpZCAiIgorIlRoZSBwYXJ0IGZpbGVzIGdpdmVuIGFzIGFyZ3VtZW50cyBtdXN0IGJlIGFsbCB0aGUgcGFydHMgb2YgZXhhY3RseSB0aGUgc2FtZSAiCisib3JpZ2luYWwgYmluYXJ5IGZpbGUuIEVhY2ggcGFydCBtdXN0IG9jY3VyIGV4YWN0bHkgb25jZSBpbiB0aGUgYXJndW1lbnQgIgorImxpc3QsIHRob3VnaCB0aGUgcGFydHMgdG8gbm90IG5lZWQgdG8gYmUgbGlzdGVkIGluIG9yZGVyLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6NjQKK21zZ2lkICIiCisiVGhlIHBhcnRzIG11c3Qgb2YgY291cnNlIGFsbCBoYXZlIGJlZW4gZ2VuZXJhdGVkIHdpdGggdGhlIHNhbWUgcGFydCBzaXplICIKKyJzcGVjaWZpZWQgYXQgc3BsaXQgdGltZSwgd2hpY2ggbWVhbnMgdGhhdCB0aGV5IG11c3QgdXN1YWxseSBoYXZlIGJlZW4gIgorImdlbmVyYXRlZCBieSB0aGUgc2FtZSBpbnZvY2F0aW9uIG9mIEI8ZHBrZy1zcGxpdCAtLXNwbGl0Pi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjY2Cittc2dpZCAiVGhlIHBhcnRzJyBmaWxlbmFtZXMgYXJlIG5vdCBzaWduaWZpY2FudCBmb3IgdGhlIHJlYXNzZW1ibHkgcHJvY2Vzcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjY5Cittc2dpZCAiIgorIkJ5IGRlZmF1bHQgdGhlIG91dHB1dCBmaWxlIGlzIGNhbGxlZCBJPHBhY2thZ2U+QjxfPkk8dmVyc2lvbj5CPF8+STxhcmNoPkI8LiIKKyJkZWI+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zcGxpdC4xOjcwCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LUk+LCBCPC0taW5mbz4gSTxwYXJ0Pi4uLiIKK21zZ3N0ciAiQjxkcGtnIC1pPiB8IEI8LS1pbnN0YWxsPiBJPGFycXVpdm9fZG9fcGFjb3RlPi4uLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjc1Cittc2dpZCAiIgorIlByaW50cyBpbmZvcm1hdGlvbiwgaW4gYSBodW1hbi1yZWFkYWJsZSBmb3JtYXQsIGFib3V0IHRoZSBwYXJ0IGZpbGUocykgICIKKyJzcGVjaWZpZWQuIEFyZ3VtZW50cyB3aGljaCBhcmUgbm90IGJpbmFyeSBwYWNrYWdlIHBhcnRzIHByb2R1Y2UgYSBtZXNzYWdlICIKKyJzYXlpbmcgc28gaW5zdGVhZCAoYnV0IHN0aWxsIG9uIHN0YW5kYXJkIG91dHB1dCkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNwbGl0LjE6NzUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1hPiwgQjwtLWF1dG8gLW8+IEk8Y29tcGxldGUtb3V0cHV0IHBhcnQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMTo3OAorbXNnaWQgIkF1dG9tYXRpY2FsbHkgcXVldWUgcGFydHMgYW5kIHJlYXNzZW1ibGUgYSBwYWNrYWdlIGlmIHBvc3NpYmxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6ODMKK21zZ2lkICIiCisiVGhlIEk8cGFydD4gc3BlY2lmaWVkIGlzIGV4YW1pbmVkLCBhbmQgY29tcGFyZWQgd2l0aCBvdGhlciBwYXJ0cyBvZiB0aGUgc2FtZSAiCisicGFja2FnZSAoaWYgYW55KSBpbiB0aGUgcXVldWUgb2YgcGFja2FnZXMgZmlsZSBwYXJ0cy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjkwCittc2dpZCAiIgorIklmIGFsbCBwYXJ0cyBvZiB0aGUgcGFja2FnZSBmaWxlIG9mIHdoaWNoIEk8cGFydD4gaXMgYSBwYXJ0IGFyZSBhdmFpbGFibGUgIgorInRoZW4gdGhlIHBhY2thZ2UgaXMgcmVhc3NlbWJsZWQgYW5kIHdyaXR0ZW4gdG8gSTxjb21wbGV0ZS1vdXRwdXQ+ICh3aGljaCAiCisic2hvdWxkIG5vdCB1c3VhbGx5IGFscmVhZHkgZXhpc3QsIHRob3VnaCB0aGlzIGlzIG5vdCBhbiBlcnJvcikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMTo5NgorbXNnaWQgIiIKKyJJZiBub3QgdGhlbiB0aGUgSTxwYXJ0PiBpcyBjb3BpZWQgaW50byB0aGUgcXVldWUgYW5kIEk8Y29tcGxldGUtb3V0cHV0PiBpcyAiCisibm90IGNyZWF0ZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxMDMKK21zZ2lkICIiCisiSWYgSTxwYXJ0PiBpcyBub3QgYSBzcGxpdCBiaW5hcnkgcGFja2FnZSBwYXJ0IHRoZW4gQjxkcGtnLXNwbGl0PiB3aWxsIGV4aXQgIgorIndpdGggc3RhdHVzIEI8MT47IGlmIHNvbWUgb3RoZXIgdHJvdWJsZSBvY2N1cnMgdGhlbiBpdCB3aWxsIGV4aXQgd2l0aCBzdGF0dXMgIgorIkI8Mj4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxMTAKK21zZ2lkICIiCisiVGhlIEI8LS1vdXRwdXQ+IG9yIEI8LW8+IG9wdGlvbiBtdXN0IGJlIHN1cHBsaWVkIHdoZW4gdXNpbmcgQjwtLWF1dG8+LiAgKElmICIKKyJ0aGlzIHdlcmUgbm90IG1hbmRhdG9yeSB0aGUgY2FsbGluZyBwcm9ncmFtIHdvdWxkIG5vdCBrbm93IHdoYXQgb3V0cHV0IGZpbGUgIgorInRvIGV4cGVjdC4pIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNwbGl0LjE6MTEwCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LWw+LCBCPC0tbGlzdHE+IgorbXNnc3RyICJCPC0tbmV3PiB8IEI8LS1vbGQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTEzCittc2dpZCAiTGlzdHMgdGhlIGNvbnRlbnRzIG9mIHRoZSBxdWV1ZSBvZiBwYWNrYWdlcyB0byBiZSByZWFzc2VtYmxlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjExNworbXNnaWQgIiIKKyJGb3IgZWFjaCBwYWNrYWdlIGZpbGUgb2Ygd2hpY2ggcGFydHMgYXJlIGluIHRoZSBxdWV1ZSB0aGUgb3V0cHV0IGdpdmVzIHRoZSAiCisibmFtZSBvZiB0aGUgcGFja2FnZSwgdGhlIHBhcnRzIGluIHRoZSBxdWV1ZSwgYW5kIHRoZSB0b3RhbCBudW1iZXIgb2YgYnl0ZXMgIgorInN0b3JlZCBpbiB0aGUgcXVldWUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNwbGl0LjE6MTE3CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LWQ+LCBCPC0tZGlzY2FyZD4gW0k8cGFja2FnZT4uLi5dIgorbXNnc3RyICJCPGRwa2cgLWk+IHwgQjwtLWluc3RhbGw+IEk8YXJxdWl2b19kb19wYWNvdGU+Li4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTIxCittc2dpZCAiIgorIlRoaXMgZGlzY2FyZHMgcGFydHMgZnJvbSB0aGUgcXVldWUgb2YgdGhvc2Ugd2FpdGluZyBmb3IgdGhlIHJlbWFpbmluZyBwYXJ0cyAiCisib2YgdGhlaXIgcGFja2FnZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxMjYKK21zZ2lkICIiCisiSWYgbm8gSTxwYWNrYWdlPiBpcyBzcGVjaWZpZWQgdGhlbiB0aGUgcXVldWUgaXMgY2xlYXJlZCBjb21wbGV0ZWx5OyBpZiBhbnkgIgorImFyZSBzcGVjaWZpZWQgdGhlbiBvbmx5IHBhcnRzIG9mIHRoZSByZWxldmFudCBwYWNrYWdlKHMpIGFyZSBkZWxldGVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zcGxpdC4xOjEzNAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tZGVwb3RkaXI+STwgZGlyZWN0b3J5PiIKK21zZ3N0ciAiQjwtLWFsdGRpcj4gSTxkaXJldMOzcmlvPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjEzOQorbXNnaWQgIiIKKyJTcGVjaWZpZXMgYW4gYWx0ZXJuYXRpdmUgZGlyZWN0b3J5IGZvciB0aGUgcXVldWUgb2YgcGFydHMgYXdhaXRpbmcgYXV0b21hdGljICIKKyJyZWFzc2VtYmx5LiBUaGUgZGVmYXVsdCBpcyBCPC92YXIvbGliL2Rwa2c+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zcGxpdC4xOjEzOQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1TPiwgQjwtLXBhcnRzaXplPiBJPGtpYmlieXRlcz4iCittc2dzdHIgIkI8LS10ZXN0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjE0MworbXNnaWQgIiIKKyJTcGVjaWZpZXMgdGhlIG1heGltdW0gcGFydCBzaXplIHdoZW4gc3BsaXR0aW5nLCBpbiBraWJpYnl0ZXMgKDEwMjQgYnl0ZXMpLiAiCisiVGhlIGRlZmF1bHQgaXMgNDUwIEtpQi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc3BsaXQuMToxNDMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1vPiwgQjwtLW91dHB1dD4gSTxjb21wbGV0ZS1vdXRwdXQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxNDYKK21zZ2lkICJTcGVjaWZpZXMgdGhlIG91dHB1dCBmaWxlIG5hbWUgZm9yIGEgcmVhc3NlbWJseS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjE1MQorbXNnaWQgIiIKKyJUaGlzIG92ZXJyaWRlcyB0aGUgZGVmYXVsdCBmb3IgYSBtYW51YWwgcmVhc3NlbWJseSAoQjwtLWpvaW4+KSAgYW5kIGlzICIKKyJtYW5kYXRvcnkgZm9yIGFuIGF1dG9tYXRpYyBxdWV1ZS1vci1yZWFzc2VtYmxlIChCPC0tYXV0bz4pLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zcGxpdC4xOjE1MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1RPiwgQjwtLW5wcXVpZXQ+IgorbXNnc3RyICJCPC0tcXVpZXQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTYyCittc2dpZCAiIgorIldoZW4gZG9pbmcgYXV0b21hdGljIHF1ZXVlLW9yLXJlYXNzZW1ibHkgQjxkcGtnLXNwbGl0PiB1c3VhbGx5IHByaW50cyBhICIKKyJtZXNzYWdlIGlmIGl0IGlzIGdpdmVuIGEgSTxwYXJ0PiB0aGF0IGlzIG5vdCBhIGJpbmFyeSBwYWNrYWdlIHBhcnQuIFRoaXMgIgorIm9wdGlvbiBzdXBwcmVzc2VzIHRoaXMgbWVzc2FnZSwgdG8gYWxsb3cgcHJvZ3JhbXMgc3VjaCBhcyBCPGRwa2c+IHRvIGNvcGUgIgorIndpdGggYm90aCBzcGxpdCBhbmQgdW5zcGxpdCBwYWNrYWdlcyB3aXRob3V0IHByb2R1Y2luZyBzcHVyaW91cyBtZXNzYWdlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc3BsaXQuMToxNjIKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLW1zZG9zPiIKK21zZ3N0ciAiQjwtLXZlcmJvc2U+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTY3Cittc2dpZCAiIgorIkZvcmNlcyB0aGUgb3V0cHV0IGZpbGVuYW1lcyBnZW5lcmF0ZWQgYnkgQjwtLXNwbGl0PiB0byBiZSBtc2Rvcy1jb21wYXRpYmxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTczCittc2dpZCAiIgorIlRoaXMgbWFuZ2xlcyB0aGUgcHJlZml4IC0gZWl0aGVyIHRoZSBkZWZhdWx0IGRlcml2ZWQgZnJvbSB0aGUgaW5wdXQgZmlsZW5hbWUgIgorIm9yIHRoZSBvbmUgc3VwcGxpZWQgYXMgYW4gYXJndW1lbnQ6IGFscGhhbnVtZXJpY3MgYXJlIGxvd2VyY2FzZWQsIHBsdXMgc2lnbnMgIgorImFyZSByZXBsYWNlZCBieSBCPHg+J3MgYW5kIGFsbCBvdGhlciBjaGFyYWN0ZXJzIGFyZSBkaXNjYXJkZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxNzgKK21zZ2lkICIiCisiVGhlIHJlc3VsdCBpcyB0aGVuIHRydW5jYXRlZCBhcyBtdWNoIGFzIGlzIG5lY2Vzc2FyeSwgYW5kIGZpbGVuYW1lcyBvZiB0aGUgIgorImZvcm0gSTxwcmVmaXhOPkI8b2Y+STxNPkI8LmRlYj4gYXJlIGdlbmVyYXRlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjE4NgorbXNnaWQgIiIKKyJUaGUgcmVxdWVzdGVkIHNwbGl0LCBtZXJnZSwgb3Igb3RoZXIgY29tbWFuZCBzdWNjZWVkZWQuICBCPC0taW5mbz4gY29tbWFuZHMgIgorImNvdW50IGFzIHN1Y2Nlc3NmdWwgZXZlbiBpZiB0aGUgZmlsZXMgYXJlIG5vdCBiaW5hcnkgcGFja2FnZSBwYXJ0cy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjE5MworbXNnaWQgIiIKKyJPbmx5IG9jY3VycyB3aXRoIEI8LS1hdXRvPiBhbmQgaW5kaWNhdGVzIHRoYXQgdGhlIEk8cGFydD4gZmlsZSB3YXMgbm90IGEgIgorImJpbmFyeSBwYWNrYWdlIHBhcnQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNwbGl0LjE6MTkzIHN0YXJ0LXN0b3AtZGFlbW9uLjg6Mjc1IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozNzgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPDI+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxOTgKK21zZ2lkICIiCisiU29tZSBraW5kIG9mIHRyb3VibGUgaGFwcGVuZWQsIHN1Y2ggYXMgYSBzeXN0ZW0gY2FsbCBmYWlsdXJlLCBhIGZpbGUgdGhhdCAiCisibG9va2VkIGxpa2UgYSBwYWNrYWdlIHBhcnQgZmlsZSBidXQgd2FzIGNvcnJ1cHRlZCwgYSB1c2FnZSBlcnJvciBvciBzb21lICIKKyJvdGhlciBwcm9ibGVtLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MjAyCittc2dpZCAiIgorIkZ1bGwgZGV0YWlscyBvZiB0aGUgcGFja2FnZXMgaW4gdGhlIHF1ZXVlIGFyZSBpbXBvc3NpYmxlIHRvIGdldCB3aXRob3V0ICIKKyJkaWdnaW5nIGludG8gdGhlIHF1ZXVlIGRpcmVjdG9yeSB5b3Vyc2VsZi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjIwNQorbXNnaWQgIiIKKyJUaGVyZSBpcyBubyBlYXN5IHdheSB0byB0ZXN0IHdoZXRoZXIgYSBmaWxlIHRoYXQgbWF5IGJlIGEgYmluYXJ5IHBhY2thZ2UgIgorInBhcnQgaXMgb25lLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zcGxpdC4xOjIwNworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJJPC92YXIvbGliL2Rwa2cvcGFydHM+IgorbXNnc3RyICJJPC92YXIvbGliL2Rwa2cvc3RhdHVzPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjIxMQorbXNnaWQgIiIKKyJUaGUgZGVmYXVsdCBxdWV1ZSBkaXJlY3RvcnkgZm9yIHBhcnQgZmlsZXMgYXdhaXRpbmcgYXV0b21hdGljIHJlYXNzZW1ibHkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToyMTYKK21zZ2lkICIiCisiVGhlIGZpbGVuYW1lcyB1c2VkIGluIHRoaXMgZGlyZWN0b3J5IGFyZSBpbiBhIGZvcm1hdCBpbnRlcm5hbCB0byBCPGRwa2ctIgorInNwbGl0PiBhbmQgYXJlIHVubGlrZWx5IHRvIGJlIHVzZWZ1bCB0byBvdGhlciBwcm9ncmFtcywgYW5kIGluIGFueSBjYXNlIHRoZSAiCisiZmlsZW5hbWUgZm9ybWF0IHNob3VsZCBub3QgYmUgcmVsaWVkIHVwb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToyMjIKK21zZ2lkICJCPGRlYj4oNSksIEI8ZGViLWNvbnRyb2w+KDUpLCBCPGRwa2ctZGViPigxKSwgQjxkcGtnPigxKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6MQorIywgbm8td3JhcAorbXNnaWQgImRwa2ctc3RhdG92ZXJyaWRlIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiRGViaWFuIHByb2plY3QiCittc2dzdHIgIlByb2pldG8gRGViaWFuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjQKK21zZ2lkICJkcGtnLXN0YXRvdmVycmlkZSAtIG92ZXJyaWRlIG93bmVyc2hpcCBhbmQgbW9kZSBvZiBmaWxlcyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjgKKyMsIGZ1enp5Cittc2dpZCAiQjxkcGtnLXN0YXRvdmVycmlkZT4gW0k8b3B0aW9uPi4uLl0gSTxjb21tYW5kPiIKK21zZ3N0ciAiQjxkcGtnPiBbSTxvcMOnw7Vlcz5dIEk8YcOnw6NvPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODoxOAorbXNnaWQgIiIKKyJgQjxzdGF0IG92ZXJyaWRlcz4nIGFyZSBhIHdheSB0byB0ZWxsIEI8ZHBrZz4oMSkgIHRvIHVzZSBhIGRpZmZlcmVudCBvd25lciAiCisib3IgbW9kZSBmb3IgYSBmaWxlIHdoZW4gYSBwYWNrYWdlIGlzIGluc3RhbGxlZC4gKG5vdGU6IEkgdXNlIHRoZSB3b3JkIGBmaWxlJyAiCisiaGVyZSwgYnV0IGluIHJlYWxpdHkgdGhpcyBjYW4gYmUgYW55IGZpbGVzeXN0ZW0gb2JqZWN0IHRoYXQgZHBrZyBoYW5kbGVzLCAiCisiaW5jbHVkaW5nIGRpcmVjdG9yaWVzLCBkZXZpY2VzLCBldGMuKS4gVGhpcyBjYW4gYmUgdXNlZCB0byBmb3JjZSBwcm9ncmFtcyAiCisidGhhdCBhcmUgbm9ybWFsbHkgc2V0dWlkIHRvIGJlIGluc3RhbGwgd2l0aG91dCBhIHNldHVpZCBmbGFnLCBvciBvbmx5ICIKKyJleGVjdXRhYmxlIGJ5IGEgY2VydGFpbiBncm91cC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODoyMgorbXNnaWQgIiIKKyJCPGRwa2ctc3RhdG92ZXJyaWRlPiBpcyBhIHV0aWxpdHkgdG8gbWFuYWdlIHRoZSBsaXN0IG9mIHN0YXQgb3ZlcnJpZGVzLiBJdCAiCisiaGFzIHRocmVlIGJhc2ljIGZ1bmN0aW9uczogYWRkaW5nLCByZW1vdmluZyBhbmQgbGlzdGluZyBvdmVycmlkZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjI0CisjLCBuby13cmFwCittc2dpZCAiQjwtLWFkZD5JPCB1c2VyIGdyb3VwIG1vZGUgZmlsZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODozMgorbXNnaWQgIiIKKyJBZGQgYW4gb3ZlcnJpZGUgZm9yIEk8ZmlsZT4uIEk8ZmlsZT4gZG9lcyBub3QgbmVlZCB0byBleGlzdCB3aGVuIHRoaXMgIgorImNvbW1hbmQgaXMgdXNlZDsgdGhlIG92ZXJyaWRlIHdpbGwgYmUgc3RvcmVkIGFuZCB1c2VkIGxhdGVyLiAgVXNlcnMgYW5kICIKKyJncm91cHMgY2FuIGJlIHNwZWNpZmllZCBieSB0aGVpciBuYW1lIChmb3IgZXhhbXBsZSBCPHJvb3Q+IG9yIEI8bm9ib2R5PiksIG9yICIKKyJieSB0aGVpciBudW1iZXIgYnkgcHJlcGVuZGluZyB0aGUgbnVtYmVyIHdpdGggYSBgQjwjPicgKGZvciBleGFtcGxlIEI8IzA+IG9yICIKKyJCPCM2NTUzND4pLiBUaGUgSTxtb2RlPiBuZWVkcyB0byBiZSBzcGVjaWZpZWQgaW4gb2N0YWwuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6MzUKK21zZ2lkICIiCisiSWYgLS11cGRhdGUgaXMgc3BlY2lmaWVkIGFuZCBJPGZpbGU+IGV4aXN0cywgaXQgaXMgaW1tZWRpYXRlbHkgc2V0IHRvIHRoZSAiCisibmV3IG93bmVyIGFuZCBtb2RlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjM5Cittc2dpZCAiIgorIlJlbW92ZSBhbiBvdmVycmlkZSBmb3IgSTxmaWxlPiwgdGhlIHN0YXR1cyBvZiBJPGZpbGU+IGlzIGxlZnQgdW5jaGFuZ2VkIGJ5ICIKKyJ0aGlzIGNvbW1hbmQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjM5CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1saXN0PiBbSTxnbG9iLXBhdHRlcm4+XSIKK21zZ3N0ciAiQjwtLXN0YXR1cy1mZCA+STxFPGx0Pm5FPGd0Pj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6NDQKK21zZ2lkICIiCisiTGlzdCBhbGwgb3ZlcnJpZGVzLiBJZiBhIGdsb2IgcGF0dGVybiBpcyBzcGVjaWZpZWQgcmVzdHJpY3QgdGhlIG91dHB1dCB0byAiCisib3ZlcnJpZGVzIHdoaWNoIG1hdGNoIHRoZSBnbG9iLiBJZiB0aGVyZSBhcmUgbm8gb3ZlcnJpZGVzIG9yIG5vbmUgbWF0Y2ggdGhlICIKKyJnbG9iIEI8ZHBrZy1zdGF0b3ZlcnJpZGU+IHdpbGwgZXhpdCB3aXRoIGFuIGV4aXRjb2RlIG9mIDEuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6NTYKK21zZ2lkICIiCisiQ2hhbmdlIHRoZSBJPGRpcmVjdG9yeT4gb2YgdGhlIGRwa2cgZGF0YWJhc2Ugd2hlcmUgdGhlIHN0YXRvdmVycmlkZSBmaWxlIGlzICIKKyJhbHNvIHN0b3JlZC4gRGVmYXVsdHMgdG8gSTwvdmFyL2xpYi9kcGtnPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6NTYgdXBkYXRlLWFsdGVybmF0aXZlcy44OjMzNgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tZm9yY2U+IgorbXNnc3RyICJCPC0tbm9jaGVjaz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6NjAKK21zZ2lkICIiCisiRm9yY2UgYW4gYWN0aW9uLCBldmVuIGlmIGEgc2FuaXR5IGNoZWNrIHdvdWxkIG90aGVyd2lzZSBwcm9oaWJpdCBpdC4gIFRoaXMgIgorImlzIG5lY2Vzc2FyeSB0byBvdmVycmlkZSBhbiBleGlzdGluZyBvdmVycmlkZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6NjAKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLXVwZGF0ZT4iCittc2dzdHIgIkI8LS10ZXN0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo2NAorbXNnaWQgIiIKKyJJbW1lZGlhdGVseSB0cnkgdG8gY2hhbmdlIHRoZSBmaWxlIHRvIHRoZSBuZXcgb3duZXIgYW5kIG1vZGUgaWYgaXQgZXhpc3RzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjY3Cittc2dpZCAiQmUgbGVzcyB2ZXJib3NlIGFib3V0IHdoYXQgd2UgZG8uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXN0YXRvdmVycmlkZS44Ojc1CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkk8L3Zhci9saWIvZHBrZy9zdGF0b3ZlcnJpZGU+IgorbXNnc3RyICJJPC92YXIvbGliL2Rwa2cvc3RhdHVzPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo4MAorbXNnaWQgIiIKKyJGaWxlIHdoaWNoIGNvbnRhaW5zIHRoZSBjdXJyZW50IGxpc3Qgb2Ygc3RhdCBvdmVycmlkZXMgb2YgdGhlIHN5c3RlbS4gSXQgaXMgIgorImxvY2F0ZWQgaW4gdGhlIGRwa2cgYWRtaW5pc3RyYXRpb24gZGlyZWN0b3J5LCBhbG9uZyB3aXRoIG90aGVyIGZpbGVzICIKKyJpbXBvcnRhbnQgdG8gZHBrZywgc3VjaCBhcyBgc3RhdHVzJyBvciBgYXZhaWxhYmxlJy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo4MworbXNnaWQgIiIKKyJOb3RlOiBCPGRwa2ctc3RhdG92ZXJyaWRlPiBwcmVzZXJ2ZXMgdGhlIG9sZCBjb3B5IG9mIHRoaXMgZmlsZSwgd2l0aCAiCisiZXh0ZW5zaW9uIFwiLW9sZFwiLCBiZWZvcmUgcmVwbGFjaW5nIGl0IHdpdGggdGhlIG5ldyBvbmUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLXRyaWdnZXIuMToxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgImRwa2ctdHJpZ2dlciIKK21zZ3N0ciAiQjxkcGtnLXF1ZXJ5LWFjdGlvbnM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXRyaWdnZXIuMTo0Cittc2dpZCAiZHBrZy10cmlnZ2VyIC0gYSBwYWNrYWdlIHRyaWdnZXIgdXRpbGl0eSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXRyaWdnZXIuMTo4CisjLCBmdXp6eQorbXNnaWQgIkI8ZHBrZy10cmlnZ2VyPiBbSTxvcHRpb24+Li4uXSBJPHRyaWdnZXItbmFtZT4iCittc2dzdHIgIkI8ZHBrZz4gW0k8b3DDp8O1ZXM+XSBJPGHDp8Ojbz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctdHJpZ2dlci4xOjExCisjLCBmdXp6eQorbXNnaWQgIkI8ZHBrZy10cmlnZ2VyPiBbSTxvcHRpb24+Li4uXSBJPGNvbW1hbmQ+IgorbXNnc3RyICJCPGRwa2c+IFtJPG9ww6fDtWVzPl0gSTxhw6fDo28+IgorCisjIHR5cGU6IFBsYWluIHRleHQKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctdHJpZ2dlci4xOjE1Cittc2dpZCAiIgorIkI8ZHBrZy10cmlnZ2VyPiBpcyBhIHRvb2wgdG8gZXhwbGljaXRseSBhY3RpdmF0ZSB0cmlnZ2VycyBhbmQgY2hlY2sgZm9yIGl0cyAiCisic3VwcG9ydCBvbiB0aGUgcnVubmluZyBCPGRwa2c+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXRyaWdnZXIuMToyMQorbXNnaWQgIiIKKyJUaGlzIGNhbiBiZSB1c2VkIGJ5IG1haW50YWluZXIgc2NyaXB0cyBpbiBjb21wbGV4IGFuZCBjb25kaXRpb25hbCBzaXR1YXRpb25zICIKKyJ3aGVyZSB0aGUgZmlsZSB0cmlnZ2Vycywgb3IgdGhlIGRlY2xhcmF0aXZlIEI8YWN0aXZhdGU+IHRyaWdnZXJzIGNvbnRyb2wgIgorImZpbGUgZGlyZWN0aXZlLCBhcmUgaW5zdWZmaWNpZW50bHkgcmljaC4gSXQgY2FuIGFsc28gYmUgdXNlZCBmb3IgdGVzdGluZyBhbmQgIgorImJ5IHN5c3RlbSBhZG1pbmlzdHJhdG9ycyAoYnV0IG5vdGUgdGhhdCB0aGUgdHJpZ2dlcnMgd29uJ3QgYWN0dWFsbHkgYmUgcnVuICIKKyJieSBCPGRwa2ctdHJpZ2dlcj4pLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXRyaWdnZXIuMToyMworbXNnaWQgIlVucmVjb2duaXNlZCB0cmlnZ2VyIG5hbWUgc3ludGF4ZXMgYXJlIGFuIGVycm9yIGZvciBCPGRwa2ctdHJpZ2dlcj4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXRyaWdnZXIuMToyNQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tY2hlY2stc3VwcG9ydGVkPiIKK21zZ3N0ciAiQjwtLW5vY2hlY2s+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXRyaWdnZXIuMTozMQorbXNnaWQgIiIKKyJDaGVjayBpZiB0aGUgcnVubmluZyBCPGRwa2c+IHN1cHBvcnRzIHRyaWdnZXJzICh1c3VhbGx5IGNhbGxlZCBmcm9tIGEgIgorInBvc3RpbnN0KS4gV2lsbCBleGl0IEI8MD4gaWYgYSB0cmlnZ2Vycy1jYXBhYmxlIEI8ZHBrZz4gaGFzIHJ1biwgb3IgQjwxPiAiCisid2l0aCBhbiBlcnJvciBtZXNzYWdlIHRvIHN0ZGVyciBpZiBub3QuIE5vcm1hbGx5LCBob3dldmVyLCBpdCBpcyBiZXR0ZXIganVzdCAiCisidG8gYWN0aXZhdGUgdGhlIGRlc2lyZWQgdHJpZ2dlciB3aXRoIEI8ZHBrZy10cmlnZ2VyPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctdHJpZ2dlci4xOjQzCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1ieS1wYWNrYWdlPT5JPHBhY2thZ2U+IgorbXNnc3RyICJCPC0tc3RhdHVzLWZkID5JPEU8bHQ+bkU8Z3Q+PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy10cmlnZ2VyLjE6NDkKK21zZ2lkICIiCisiT3ZlcnJpZGUgdHJpZ2dlciBhd2FpdGVyIChub3JtYWxseSBzZXQgYnkgQjxkcGtnPiB0aHJvdWdoIHRoZSAiCisiQjxEUEtHX01BSU5UU0NSSVBUX1BBQ0tBR0U+IGVudmlyb25tZW50IHZhcmlhYmxlIG9mIHRoZSBtYWludGFpbmVyIHNjcmlwdHMsICIKKyJuYW1pbmcgdGhlIHBhY2thZ2UgdG8gd2hpY2ggdGhlIHNjcmlwdCBiZWxvbmdzLCBhbmQgdGhpcyB3aWxsIGJlIHVzZWQgYnkgIgorImRlZmF1bHQpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy10cmlnZ2VyLjE6NDkKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLW5vLWF3YWl0PiIKK21zZ3N0ciAiQjwtLW5vY2hlY2s+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXRyaWdnZXIuMTo1NgorbXNnaWQgIiIKKyJUaGlzIG9wdGlvbiBhcnJhbmdlcyB0aGF0IHRoZSBjYWxsaW5nIHBhY2thZ2UgVCAoaWYgYW55KSBuZWVkIG5vdCBhd2FpdCB0aGUgIgorInByb2Nlc3Npbmcgb2YgdGhpcyB0cmlnZ2VyOyB0aGUgaW50ZXJlc3RlZCBwYWNrYWdlKHMpIEksIHdpbGwgbm90IGJlIGFkZGVkICIKKyJ0byBUJ3MgdHJpZ2dlciBwcm9jZXNzaW5nIGF3YWl0ZWQgbGlzdCBhbmQgVCdzIHN0YXR1cyBpcyB1bmNoYW5nZWQuICBUIG1heSAiCisiYmUgY29uc2lkZXJlZCBpbnN0YWxsZWQgZXZlbiB0aG91Z2ggSSBtYXkgbm90IHlldCBoYXZlIHByb2Nlc3NlZCB0aGUgdHJpZ2dlci4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctdHJpZ2dlci4xOjU2CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1uby1hY3Q+IgorbXNnc3RyICJCPC0tbm9jaGVjaz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctdHJpZ2dlci4xOjU5Cittc2dpZCAiSnVzdCB0ZXN0LCBkbyBub3QgYWN0dWFsbHkgY2hhbmdlIGFueXRoaW5nLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXRyaWdnZXIuMTo2OQorIywgZnV6enkKK21zZ2lkICIiCisiQjxkcGtnPigxKSwgQjxkZWItdHJpZ2dlcnM+KDUpLCBCPC91c3Ivc2hhcmUvZG9jL2Rwa2ctZGV2L3RyaWdnZXJzLnR4dC5nej4uIgorbXNnc3RyICJCPGRwa2ctZGViLWFjdGlvbnM+IgorCisjLiB0eXBlOiBUSAorIzogZHBrZy12ZW5kb3IuMToxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgImRwa2ctdmVuZG9yIgorbXNnc3RyICJJPGNvbnRyb2w+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXZlbmRvci4xOjQKK21zZ2lkICJkcGtnLXZlbmRvciAtIHF1ZXJpZXMgaW5mb3JtYXRpb24gYWJvdXQgZGlzdHJpYnV0aW9uIHZlbmRvcnMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy12ZW5kb3IuMTo4CisjLCBmdXp6eQorbXNnaWQgIkI8ZHBrZy12ZW5kb3I+IFtJPG9wdGlvbj4uLi5dIEk8Y29tbWFuZD4iCittc2dzdHIgIkI8ZHBrZz4gW0k8b3DDp8O1ZXM+XSBJPGHDp8Ojbz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctdmVuZG9yLjE6MTMKK21zZ2lkICIiCisiQjxkcGtnLXZlbmRvcj4gaXMgYSB0b29sIHRvIHF1ZXJ5IGluZm9ybWF0aW9uIGFib3V0IHZlbmRvcnMgbGlzdGVkIGluIEI8L2V0Yy8iCisiZHBrZy9vcmlnaW5zPi4gQjwvZXRjL2Rwa2cvb3JpZ2lucy9kZWZhdWx0PiBjb250YWlucyBpbmZvcm1hdGlvbiBhYm91dCB0aGUgIgorImN1cnJlbnQgdmVuZG9yLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy12ZW5kb3IuMToxNQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0taXM+STwgdmVuZG9yPiIKK21zZ3N0ciAiQjwtLWFkbWluZGlyPiBJPGRpcmV0w7NyaW8+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXZlbmRvci4xOjE5Cittc2dpZCAiIgorIkV4aXRzIHdpdGggQjwwPiBpZiB0aGUgY3VycmVudCB2ZW5kb3IgaXMgSTx2ZW5kb3I+LiBPdGhlcndpc2UgZXhpdHMgd2l0aCBub24tIgorInplcm8uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXZlbmRvci4xOjE5CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1kZXJpdmVzLWZyb20+STwgdmVuZG9yPiIKK21zZ3N0ciAiQjwtLXN0YXR1cy1mZCA+STxFPGx0Pm5FPGd0Pj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctdmVuZG9yLjE6MjQKK21zZ2lkICIiCisiRXhpdHMgd2l0aCBCPDA+IGlmIHRoZSBjdXJyZW50IHZlbmRvciBkaXN0cmlidXRpb24gaXMgYSBkZXJpdmF0aXZlIG9mICIKKyJJPHZlbmRvcj4sIG90aGVyd2lzZSBleGl0cyB3aXRoIG5vbi16ZXJvLiBJdCB1c2VzIHRoZSBcIlBhcmVudFwiIGZpZWxkIHRvICIKKyJicm93c2UgYWxsIGFuY2VzdG9ycyBvZiB0aGUgY3VycmVudCB2ZW5kb3IuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXZlbmRvci4xOjI0CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1xdWVyeT5JPCBmaWVsZD4iCittc2dzdHIgIkI8LS1hdXRvPiBJPGxpZ2HDp8Ojbz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctdmVuZG9yLjE6MjgKK21zZ2lkICIiCisiUHJpbnQgb24gc3RhbmRhcmQgb3V0cHV0IHRoZSB2YWx1ZSBvZiB0aGUgdmVuZG9yLXNwZWNpZmljIEk8ZmllbGQ+IGZvciB0aGUgIgorImN1cnJlbnQgdmVuZG9yLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy12ZW5kb3IuMTozNgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tdmVuZG9yPkk8IHZlbmRvcj4iCittc2dzdHIgIkI8LS1zdGF0dXMtZmQgPkk8RTxsdD5uRTxndD4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXZlbmRvci4xOjQxCittc2dpZCAiIgorIkFzc3VtZXMgdGhlIGN1cnJlbnQgdmVuZG9yIGlzIEk8dmVuZG9yPiBpbnN0ZWFkIG9mIGRpc2NvdmVyaW5nIGl0IHdpdGggdGhlICIKKyJCPERFQl9WRU5ET1I+IGVudmlyb25tZW50IHZhcmlhYmxlIG9yIEI8L2V0Yy9kcGtnL29yaWdpbnMvZGVmYXVsdD4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXZlbmRvci4xOjQzCisjLCBuby13cmFwCittc2dpZCAiQjxERUJfVkVORE9SPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXZlbmRvci4xOjQ3Cittc2dpZCAiIgorIlRoaXMgc2V0dGluZyBkZWZpbmVzIHRoZSBjdXJyZW50IHZlbmRvci4gSWYgbm90IHNldCwgaXQgd2lsbCBkaXNjb3ZlciB0aGUgIgorImN1cnJlbnQgdmVuZG9yIGJ5IHJlYWRpbmcgQjwvZXRjL2Rwa2cvb3JpZ2lucy9kZWZhdWx0Pi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy12ZW5kb3IuMTo1MCB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDk4Cittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMDkgUmFwaGFcXFs6ZV1sIEhlcnR6b2ciCittc2dzdHIgIiIKKworIy4gdHlwZTogVEgKKyM6IGRzZWxlY3QuMToxCisjLCBuby13cmFwCittc2dpZCAiZHNlbGVjdCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NAorbXNnaWQgImRzZWxlY3QgLSBEZWJpYW4gcGFja2FnZSBtYW5hZ2VtZW50IGZyb250ZW5kIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo4CisjLCBmdXp6eQorI3wgbXNnaWQgIkI8ZHBrZz4gW0k8b3B0aW9ucz5dIEk8YWN0aW9uPiIKK21zZ2lkICJCPGRzZWxlY3Q+IFtJPG9wdGlvbj4uLi5dIFtJPGFjdGlvbj5dIgorbXNnc3RyICJCPGRwa2c+IFtJPG9ww6fDtWVzPl0gSTxhw6fDo28+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTcKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiQjxkc2VsZWN0PlxuIgorImlzIG9uZSBvZiB0aGUgcHJpbWFyeSB1c2VyIGludGVyZmFjZXMgZm9yIG1hbmFnaW5nIHBhY2thZ2VzIG9uIGEgRGViaWFuXG4iCisic3lzdGVtLiBBdCB0aGUgQjxkc2VsZWN0PiBtYWluIG1lbnUsIHRoZSBzeXN0ZW0gYWRtaW5pc3RyYXRvciBjYW46XG4iCisiIC0gVXBkYXRlIHRoZSBsaXN0IG9mIGF2YWlsYWJsZSBwYWNrYWdlIHZlcnNpb25zLFxuIgorIiAtIFZpZXcgdGhlIHN0YXR1cyBvZiBpbnN0YWxsZWQgYW5kIGF2YWlsYWJsZSBwYWNrYWdlcyxcbiIKKyIgLSBBbHRlciBwYWNrYWdlIHNlbGVjdGlvbnMgYW5kIG1hbmFnZSBkZXBlbmRlbmNpZXMsXG4iCisiIC0gSW5zdGFsbCBuZXcgcGFja2FnZXMgb3IgdXBncmFkZSB0byBuZXdlciB2ZXJzaW9ucy5cbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MjkKK21zZ2lkICIiCisiQjxkc2VsZWN0PiBvcGVyYXRlcyBhcyBhIGZyb250LWVuZCB0byBCPGRwa2c+KDEpLCB0aGUgbG93LWxldmVsIGRlYmlhbiAiCisicGFja2FnZSBoYW5kbGluZyB0b29sLiBJdCBmZWF0dXJlcyBhIGZ1bGwtc2NyZWVuIHBhY2thZ2Ugc2VsZWN0aW9ucyBtYW5hZ2VyICIKKyJ3aXRoIHBhY2thZ2UgZGVwZW5kcyBhbmQgY29uZmxpY3RzIHJlc29sdmVyLiBXaGVuIHJ1biB3aXRoIGFkbWluaXN0cmF0b3IgIgorInByaXZpbGVnZXMsIHBhY2thZ2VzIGNhbiBiZSBpbnN0YWxsZWQsIHVwZ3JhZGVkIGFuZCByZW1vdmVkLiBWYXJpb3VzIGFjY2VzcyAiCisibWV0aG9kcyBjYW4gYmUgY29uZmlndXJlZCB0byByZXRyaWV2ZSBhdmFpbGFibGUgcGFja2FnZSB2ZXJzaW9uIGluZm9ybWF0aW9uICIKKyJhbmQgaW5zdGFsbGFibGUgcGFja2FnZXMgZnJvbSBwYWNrYWdlIHJlcG9zaXRvcmllcy4gIERlcGVuZGluZyBvbiB0aGUgdXNlZCAiCisiYWNjZXNzIG1ldGhvZCwgdGhlc2UgcmVwb3NpdG9yaWVzIGNhbiBiZSBwdWJsaWMgYXJjaGl2ZSBzZXJ2ZXJzIG9uIHRoZSAiCisiaW50ZXJuZXQsIGxvY2FsIGFyY2hpdmUgc2VydmVycyBvciBjZHJvbXMuICBUaGUgcmVjb21tZW5kZWQgYWNjZXNzIG1ldGhvZCBpcyAiCisiSTxhcHQ+LCB3aGljaCBpcyBwcm92aWRlZCBieSB0aGUgcGFja2FnZSBCPGFwdD4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTozNQorbXNnaWQgIiIKKyJOb3JtYWxseSBCPGRzZWxlY3Q+IGlzIGludm9rZWQgd2l0aG91dCBwYXJhbWV0ZXJzLiBBbiBpbnRlcmFjdGl2ZSBtZW51IGlzICIKKyJwcmVzZW50ZWQsIG9mZmVyaW5nIHRoZSB1c2VyIGEgbGlzdCBvZiBhY3Rpb25zLiBJZiBhbiBhY3Rpb24gaXMgZ2l2ZW4gYXMgIgorImFyZ3VtZW50LCB0aGVuIHRoYXQgYWN0aW9uIGlzIHN0YXJ0ZWQgaW1tZWRpYXRlbHkuIFNldmVyYWwgY29tbWFuZCBsaW5lICIKKyJwYXJhbWV0ZXJzIGFyZSBzdGlsbCBhdmFpbGFibGUgdG8gbW9kaWZ5IHRoZSBydW5uaW5nIGJlaGF2aW91ciBvZiBCPGRzZWxlY3Q+ICIKKyJvciBzaG93IGFkZGl0aW9uYWwgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHByb2dyYW0uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0MworIywgZnV6enkKK21zZ2lkICIiCisiQWxsIG9wdGlvbnMgY2FuIGJlIHNwZWNpZmllZCBib3RoIG9uIHRoZSBjb21tYW5kIGxpbmUgYW5kIGluIHRoZSBCPGRzZWxlY3Q+ICIKKyJjb25maWd1cmF0aW9uIGZpbGUgSTwvZXRjL2Rwa2cvZHNlbGVjdC5jZmc+IG9yIHRoZSBmaWxlcyBvbiB0aGUgIgorImNvbmZpZ3VyYXRpb24gZGlyZWN0b3J5IEk8L2V0Yy9kcGtnL2RzZWxlY3QuY2ZnLmQvPi4gRWFjaCBsaW5lIGluIHRoZSAiCisiY29uZmlndXJhdGlvbiBmaWxlIGlzIGVpdGhlciBhbiBvcHRpb24gKGV4YWN0bHkgdGhlIHNhbWUgYXMgdGhlIGNvbW1hbmQgbGluZSAiCisib3B0aW9uIGJ1dCB3aXRob3V0IGxlYWRpbmcgZGFzaGVzKSBvciBhIGNvbW1lbnQgKGlmIGl0IHN0YXJ0cyB3aXRoIGEgQjwjPikuIgorbXNnc3RyICIiCisiVG9kYXMgYXMgb3DDp8O1ZXMgcG9kZW0gc2VyIGVzcGVjaWZpY2FkYXMgdGFudG8gbmEgbGluaGEgZGUgY29tYW5kbyBxdWFudG8gbm8gIgorImFycXVpdm8gZGUgY29uZmlndXJhw6fDo28gZG8gQjxkcGtnPiBjaGFtYWRvIEk8L2V0Yy9kcGtnL2Rwa2cuY2ZnPi4gQ2FkYSBsaW5oYSAiCisibm8gYXJxdWl2byBkZSBjb25maWd1cmHDp8OjbyDDqSB1bWEgb3DDp8OjbyAoZXhhdGFtZW50ZSBhIG1lc21hIG9ww6fDo28gZGEgbGluaGEgZGUgIgorImNvbWFuZG8sIG1hcyBzZW0gb3MgaMOtZmVucykgIG91IHVtIGNvbWVudMOhcmlvIChzZSBjb21lw6dhciBjb20gdW1hIEI8Iz4pLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjQ5Cittc2dpZCAiIgorIkNoYW5nZXMgdGhlIGRpcmVjdG9yeSB3aGVyZSB0aGUgZHBrZyBgSTxzdGF0dXM+JywgYEk8YXZhaWxhYmxlPicgYW5kIHNpbWlsYXIgIgorImZpbGVzIGFyZSBsb2NhdGVkLiBUaGlzIGRlZmF1bHRzIHRvIEk8L3Zhci9saWIvZHBrZz4gYW5kIG5vcm1hbGx5IHRoZXJlICIKKyJzaG91bGRuJ3QgYmUgYW55IG5lZWQgdG8gY2hhbmdlIGl0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHNlbGVjdC4xOjQ5CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1kZWJ1Zz5JPCBmaWxlID58STwgPkI8LUQ+STxmaWxlPiIKK21zZ3N0ciAiQjwtLW5ldz4gfCBCPC0tb2xkPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjUyCittc2dpZCAiVHVybiBvbiBkZWJ1Z2dpbmcuIERlYnVnZ2luZyBpbmZvcm1hdGlvbiBpcyBzZW50IHRvIEk8ZmlsZT4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkc2VsZWN0LjE6NTIKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWV4cGVydD4iCittc2dzdHIgIkI8LS10ZXN0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjU2Cittc2dpZCAiIgorIlR1cm5zIG9uIGV4cGVydCBtb2RlLCBpLmUuIGRvZXNuJ3QgZGlzcGxheSBwb3NzaWJseSBhbm5veWluZyBoZWxwIG1lc3NhZ2VzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHNlbGVjdC4xOjU2CisjLCBuby13cmFwCittc2dpZCAiQjwtLWNvbG91cj58QjwtLWNvbG9yPiBJPHNjcmVlbnBhcnQ6PltJPGZvcmVncm91bmQ+XSxbSTxiYWNrZ3JvdW5kPl1bSTw6YXR0cj5bSTwrYXR0cisuLj5dXSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NjMKK21zZ2lkICIiCisiQ29uZmlndXJlcyBzY3JlZW4gY29sb3JzLiBUaGlzIHdvcmtzIG9ubHkgaWYgeW91ciBkaXNwbGF5IHN1cHBvcnRzIGNvbG9ycy4gICIKKyJUaGlzIG9wdGlvbiBtYXkgYmUgdXNlZCBtdWx0aXBsZSB0aW1lcyAoYW5kIGlzIGJlc3QgdXNlZCBpbiBJPGRzZWxlY3QuY2ZnPikuICIKKyJFYWNoIHVzZSBjaGFuZ2VzIHRoZSBjb2xvciAoYW5kIG9wdGlvbmFsbHksIG90aGVyIGF0dHJpYnV0ZXMpIG9mIG9uZSBwYXJ0IG9mICIKKyJ0aGUgc2NyZWVuLiAgVGhlIHBhcnRzIG9mIHRoZSBzY3JlZW4gKGZyb20gdG9wIHRvIGJvdHRvbSkgYXJlOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHNlbGVjdC4xOjY0CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8dGl0bGU+IgorbXNnc3RyICJCPGluc3RhbGxlZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo2NworbXNnaWQgIlRoZSBzY3JlZW4gdGl0bGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkc2VsZWN0LjE6NjcKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxsaXN0aGVhZD4iCittc2dzdHIgIkI8aW5zdGFsbGVkPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjcwCisjLCBmdXp6eQorbXNnaWQgIlRoZSBoZWFkZXIgbGluZSBhYm92ZSB0aGUgbGlzdCBvZiBwYWNrYWdlcy4iCittc2dzdHIgIlBhcmEgcHJvY3VyYXIgbmEgbGlzdGEgZGUgcGFjb3RlcyB2b2PDqiBtZXNtbzoiCisKKyMuIHR5cGU6IFRQCisjOiBkc2VsZWN0LjE6NzAKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxsaXN0PiIKK21zZ3N0ciAiQjxpbnN0YWxsPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjczCittc2dpZCAiVGhlIHNjcm9sbGluZyBsaXN0IG9mIHBhY2thZ2VzIChhbmQgYWxzbyBzb21lIGhlbHAgdGV4dCkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkc2VsZWN0LjE6NzMKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxsaXN0c2VsPiIKK21zZ3N0ciAiQjxpbnN0YWxsPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjc2Cittc2dpZCAiVGhlIHNlbGVjdGVkIGl0ZW0gaW4gdGhlIGxpc3QuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkc2VsZWN0LjE6NzYKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxwa2dzdGF0ZT4iCittc2dzdHIgIkI8cHVyZ2U+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6ODAKK21zZ2lkICIiCisiSW4gdGhlIGxpc3Qgb2YgcGFja2FnZXMsIHRoZSB0ZXh0IGluZGljYXRpbmcgdGhlIGN1cnJlbnQgc3RhdGUgb2YgZWFjaCAiCisicGFja2FnZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRzZWxlY3QuMTo4MAorIywgbm8td3JhcAorbXNnaWQgIkI8cGtnc3RhdGVzZWw+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo4NAorbXNnaWQgIiIKKyJJbiB0aGUgbGlzdCBvZiBwYWNrYWdlcywgdGhlIHRleHQgaW5kaWNhdGluZyB0aGUgY3VycmVudCBzdGF0ZSBvZiB0aGUgIgorImN1cnJlbnRseSBzZWxlY3RlZCBwYWNrYWdlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHNlbGVjdC4xOjg0CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8aW5mb2hlYWQ+IgorbXNnc3RyICJCPGluc3RhbGxlZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo4NworbXNnaWQgIiIKKyJUaGUgaGVhZGVyIGxpbmUgdGhhdCBkaXNwbGF5cyB0aGUgc3RhdGUgb2YgdGhlIGN1cnJlbnRseSBzZWxlY3RlZCBwYWNrYWdlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHNlbGVjdC4xOjg3CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8aW5mb2Rlc2M+IgorbXNnc3RyICJCPC0tbm9jaGVjaz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo5MAorIywgZnV6enkKK21zZ2lkICJUaGUgcGFja2FnZSdzIHNob3J0IGRlc2NyaXB0aW9uLiIKK21zZ3N0ciAiTyBwYWNvdGUgZXN0w6Egc2VsZWNpb25hZG8gcGFyYSBpbnN0YWxhw6fDo28uIgorCisjLiB0eXBlOiBUUAorIzogZHNlbGVjdC4xOjkwCisjLCBuby13cmFwCittc2dpZCAiQjxpbmZvPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6OTMKK21zZ2lkICJVc2VkIHRvIGRpc3BsYXkgcGFja2FnZSBpbmZvIHN1Y2ggYXMgdGhlIHBhY2thZ2UncyBkZXNjcmlwdGlvbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRzZWxlY3QuMTo5MworIywgbm8td3JhcAorbXNnaWQgIkI8aW5mb2Zvb3Q+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo5NgorbXNnaWQgIlRoZSBsYXN0IGxpbmUgb2YgdGhlIHNjcmVlbiB3aGVuIHNlbGVjdGluZyBwYWNrYWdlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRzZWxlY3QuMTo5NgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPHF1ZXJ5PiIKK21zZ3N0ciAiQjwtLXF1aWV0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjk5Cittc2dpZCAiVXNlZCB0byBkaXNwbGF5IHF1ZXJ5IGxpbmVzIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkc2VsZWN0LjE6OTkKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxoZWxwc2NyZWVuPiIKK21zZ3N0ciAiQjwtLWhlbHA+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTAyCittc2dpZCAiQ29sb3Igb2YgaGVscCBzY3JlZW5zLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTA3Cittc2dpZCAiIgorIkFmdGVyIHRoZSBwYXJ0IG9mIHRoZSBzY3JlZW4gY29tZXMgYSBjb2xvbiBhbmQgdGhlIGNvbG9yIHNwZWNpZmljYXRpb24uIFlvdSAiCisiY2FuIHNwZWNpZnkgZWl0aGVyIHRoZSBmb3JlZ3JvdW5kIGNvbG9yLCB0aGUgYmFja2dyb3VuZCBjb2xvciwgb3IgYm90aCwgIgorIm92ZXJyaWRpbmcgdGhlIGNvbXBpbGVkLWluIGNvbG9ycy4gVXNlIHN0YW5kYXJkIGN1cnNlcyBjb2xvciBuYW1lcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjExMworbXNnaWQgIiIKKyJPcHRpb25hbGx5LCBhZnRlciB0aGUgY29sb3Igc3BlY2lmaWNhdGlvbiBpcyBhbm90aGVyIGNvbG9uLCBhbmQgYW4gYXR0cmlidXRlICIKKyJzcGVjaWZpY2F0aW9uLiBUaGlzIGlzIGEgbGlzdCBvZiBvbmUgb3IgbW9yZSBhdHRyaWJ1dGVzLCBzZXBhcmF0ZWQgYnkgcGx1cyAiCisiKFwiK1wiKSBjaGFyYWN0ZXJzLiBBdmFpbGFibGUgYXR0cmlidXRlcyBpbmNsdWRlIChub3QgYWxsIG9mIHRoZXNlIHdpbGwgd29yayAiCisib24gYWxsIHRlcm1pbmFscyk6IG5vcm1hbCwgc3RhbmRvdXQsIHVuZGVybGluZSwgcmV2ZXJzZSwgYmxpbmssIGJyaWdodCwgZGltLCAiCisiYm9sZCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTE2Cittc2dpZCAiUHJpbnQgYSBicmllZiBoZWxwIHRleHQgYW5kIGV4aXQgc3VjY2Vzc2Z1bGx5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTE5Cittc2dpZCAiUHJpbnQgdmVyc2lvbiBpbmZvcm1hdGlvbiBhbmQgZXhpdCBzdWNjZXNzZnVsbHkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxMjYKK21zZ2lkICIiCisiV2hlbiBCPGRzZWxlY3Q+IGlzIHN0YXJ0ZWQgaXQgY2FuIHBlcmZvcm0gdGhlIGZvbGxvd2luZyBhY3Rpb25zLCBlaXRoZXIgIgorImRpcmVjdGx5IGlmIGl0IHdhcyBzcGVjaWZpZWQgb24gdGhlIGNvbW1hbmQgbGluZSBvciBieSBwcm9tcHRpbmcgdGhlIHVzZXIgIgorIndpdGggYSBtZW51IG9mIGF2YWlsYWJsZSBhY3Rpb25zIGlmIHJ1bm5pbmcgaW50ZXJhY3RpdmVseToiCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRzZWxlY3QuMToxMjYKKyMsIG5vLXdyYXAKK21zZ2lkICJhY2Nlc3MiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjEyOAorbXNnaWQgIkNob29zZSBhbmQgY29uZmlndXJlIGFuIGFjY2VzcyBtZXRob2QgdG8gYWNjZXNzIHBhY2thZ2UgcmVwb3NpdG9yaWVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTM0Cittc2dpZCAiIgorIkJ5IGRlZmF1bHQsIEI8ZHNlbGVjdD4gcHJvdmlkZXMgc2V2ZXJhbCBtZXRob2RzIHN1Y2ggYXMgSTxjZHJvbT4sICIKKyJJPG11bHRpX2NkPiwgSTxuZnM+LCBJPG11bHRpX25mcz4sIEk8aGFyZGRpc2s+LCBJPG1vdW50ZWQ+LCBJPG11bHRpX21vdW50PiwgIgorIkk8ZmxvcHB5PiBvciBJPGZ0cD4sIGJ1dCBvdGhlciBwYWNrYWdlcyBtYXkgcHJvdmlkZSBhZGRpdGlvbmFsIG1ldGhvZHMsIGVnLiAiCisidGhlIEk8YXB0PiBhY2Nlc3MgbWV0aG9kIHByb3ZpZGVkIGJ5IHRoZSBCPGFwdD4gcGFja2FnZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjEzNgorbXNnaWQgIlRoZSB1c2Ugb2YgdGhlIEk8YXB0PiBhY2Nlc3MgbWV0aG9kIGlzIHN0cm9uZ2x5IHJlY29tbWVuZGVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHNlbGVjdC4xOjEzNworIywgbm8td3JhcAorbXNnaWQgInVwZGF0ZSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTM5CisjLCBmdXp6eQorbXNnaWQgIlJlZnJlc2ggdGhlIGF2YWlsYWJsZSBwYWNrYWdlcyBkYXRhYmFzZS4iCittc2dzdHIgIkxpc3RhIGRvcyBwYWNvdGVzIGRpc3BvbsOtdmVpcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxNDYKK21zZ2lkICIiCisiUmV0cmlldmVzIGEgbGlzdCBvZiBhdmFpbGFibGUgcGFja2FnZSB2ZXJzaW9ucyBmcm9tIHRoZSBwYWNrYWdlIHJlcG9zaXRvcnksICIKKyJjb25maWd1cmVkIGZvciB0aGUgY3VycmVudCBhY2Nlc3MgbWV0aG9kLCBhbmQgdXBkYXRlIHRoZSBkcGtnIGRhdGFiYXNlLiBUaGUgIgorInBhY2thZ2UgbGlzdHMgYXJlIGNvbW1vbmx5IHByb3ZpZGVkIGJ5IHRoZSByZXBvc2l0b3J5IGFzIGZpbGVzIG5hbWVkICIKKyJJPFBhY2thZ2VzPiBvciBJPFBhY2thZ2VzLmd6Pi4gIFRoZXNlIGZpbGVzIGNhbiBiZSBnZW5lcmF0ZWQgYnkgcmVwb3NpdG9yeSAiCisibWFpbnRhaW5lcnMsIHVzaW5nIHRoZSBwcm9ncmFtIEI8ZHBrZy1zY2FucGFja2FnZXM+KDEpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTQ5Cittc2dpZCAiIgorIkRldGFpbHMgb2YgdGhlIHVwZGF0ZSBhY3Rpb24gZGVwZW5kIG9uIHRoZSBhY2Nlc3MgbWV0aG9kJ3MgaW1wbGVtZW50YXRpb24uICAiCisiTm9ybWFsbHkgdGhlIHByb2Nlc3MgaXMgc3RyYWlnaHRmb3J3YXJkIGFuZCByZXF1aXJlcyBubyB1c2VyIGludGVyYWN0aW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHNlbGVjdC4xOjE1MAorIywgbm8td3JhcAorbXNnaWQgInNlbGVjdCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTUyCittc2dpZCAiVmlldyBvciBtYW5hZ2UgcGFja2FnZSBzZWxlY3Rpb25zIGFuZCBkZXBlbmRlbmNpZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxNTgKK21zZ2lkICIiCisiVGhpcyBpcyB0aGUgbWFpbiBmdW5jdGlvbiBvZiBCPGRzZWxlY3Q+LiBJbiB0aGUgc2VsZWN0IHNjcmVlbiwgdGhlIHVzZXIgY2FuICIKKyJyZXZpZXcgYSBsaXN0IG9mIGFsbCBhdmFpbGFibGUgYW5kIGluc3RhbGxlZCBwYWNrYWdlcy4gV2hlbiBydW4gd2l0aCAiCisiYWRtaW5pc3RyYXRvciBwcml2aWxlZ2VzLCBpdCBpcyBhbHNvIHBvc3NpYmxlIHRvIGludGVyYWN0aXZlbHkgY2hhbmdlICIKKyJwYWNrYWdlcyBzZWxlY3Rpb24gc3RhdGUuIEI8ZHNlbGVjdD4gdHJhY2tzIHRoZSBpbXBsaWNhdGlvbnMgb2YgdGhlc2UgIgorImNoYW5nZXMgdG8gb3RoZXIgZGVwZW5kaW5nIG9yIGNvbmZsaWN0aW5nIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTY1Cittc2dpZCAiIgorIldoZW4gYSBjb25mbGljdCBvciBmYWlsZWQgZGVwZW5kcyBpcyBkZXRlY3RlZCwgYSBkZXBlbmRlbmN5IHJlc29sdXRpb24gIgorInN1YnNjcmVlbiBpcyBwcm9tcHRlZCB0byB0aGUgdXNlci4gSW4gdGhpcyBzY3JlZW4sIGEgbGlzdCBvZiBjb25mbGljdGluZyBvciAiCisiZGVwZW5kaW5nIHBhY2thZ2VzIGlzIHNob3duLCBhbmQgZm9yIGVhY2ggcGFja2FnZSBsaXN0ZWQsIHRoZSByZWFzb24gZm9yIGl0cyAiCisibGlzdGluZyBpcyBzaG93bi4gVGhlIHVzZXIgbWF5IGFwcGx5IHRoZSBzdWdnZXN0aW9ucyBwcm9wb3NlZCBieSBCPGRzZWxlY3Q+LCAiCisib3ZlcnJpZGUgdGhlbSwgb3IgYmFjayBvdXQgYWxsIHRoZSBjaGFuZ2VzLCBpbmNsdWRpbmcgdGhlIG9uZXMgdGhhdCBjcmVhdGVkICIKKyJ0aGUgdW5yZXNvbHZlZCBkZXBlbmRzIG9yIGNvbmZsaWN0cy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjE2OAorbXNnaWQgIiIKKyJUaGUgdXNlIG9mIHRoZSBpbnRlcmFjdGl2ZSBwYWNrYWdlIHNlbGVjdGlvbnMgbWFuYWdlbWVudCBzY3JlZW4gaXMgZXhwbGFpbmVkICIKKyJpbiBtb3JlIGRldGFpbCBiZWxvdy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRzZWxlY3QuMToxNjkKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiaW5zdGFsbCIKK21zZ3N0ciAiQjxpbnN0YWxsPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjE3MQorbXNnaWQgIkluc3RhbGxzIHNlbGVjdGVkIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTc3Cittc2dpZCAiIgorIlRoZSBjb25maWd1cmVkIGFjY2VzcyBtZXRob2Qgd2lsbCBmZXRjaCBpbnN0YWxsYWJsZSBvciB1cGdyYWRhYmxlIHBhY2thZ2VzICIKKyJmcm9tIHRoZSByZWxldmFudCByZXBvc2l0b3JpZXMgYW5kIGluc3RhbGwgdGhlc2UgdXNpbmcgQjxkcGtnPi4gIERlcGVuZGluZyAiCisib24gdGhlIGltcGxlbWVudGF0aW9uIG9mIHRoZSBhY2Nlc3MgbWV0aG9kLCBhbGwgcGFja2FnZXMgY2FuIGJlIHByZWZldGNoZWQgIgorImJlZm9yZSBpbnN0YWxsYXRpb24sIG9yIGZldGNoZWQgd2hlbiBuZWVkZWQuICBTb21lIGFjY2VzcyBtZXRob2RzIG1heSBhbHNvICIKKyJyZW1vdmUgcGFja2FnZXMgdGhhdCB3ZXJlIG1hcmtlZCBmb3IgcmVtb3ZhbC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjE4NQorbXNnaWQgIiIKKyJJZiBhbiBlcnJvciBvY2N1cnJlZCBkdXJpbmcgaW5zdGFsbCwgaXQgaXMgdXN1YWxseSBhZHZpc2FibGUgdG8gcnVuIGluc3RhbGwgIgorImFnYWluLiBJbiBtb3N0IGNhc2VzLCB0aGUgcHJvYmxlbXMgd2lsbCBkaXNhcHBlYXIgb3IgYmUgc29sdmVkLiAgSWYgcHJvYmxlbXMgIgorInBlcnNpc3Qgb3IgdGhlIGluc3RhbGxhdGlvbiBwZXJmb3JtZWQgd2FzIGluY29ycmVjdCwgcGxlYXNlIGludmVzdGlnYXRlIGludG8gIgorInRoZSBjYXVzZXMgYW5kIGNpcmN1bXN0YW5jZXMsIGFuZCBmaWxlIGEgYnVnIGluIHRoZSBEZWJpYW4gYnVnIHRyYWNraW5nICIKKyJzeXN0ZW0uIEluc3RydWN0aW9ucyBvbiBob3cgdG8gZG8gdGhpcyBjYW4gYmUgZm91bmQgYXQgaHR0cDovL2J1Z3MuZGViaWFuLiIKKyJvcmcvIG9yIGJ5IHJlYWRpbmcgdGhlIGRvY3VtZW50YXRpb24gZm9yIEI8YnVnPigxKSBvciBCPHJlcG9ydGJ1Zz4oMSksIGlmICIKKyJ0aGVzZSBhcmUgaW5zdGFsbGVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTkyCittc2dpZCAiIgorIkRldGFpbHMgb2YgdGhlIGluc3RhbGwgYWN0aW9uIGRlcGVuZCBvbiB0aGUgYWNjZXNzIG1ldGhvZCdzIGltcGxlbWVudGF0aW9uLiAgIgorIlRoZSB1c2VyJ3MgYXR0ZW50aW9uIGFuZCBpbnB1dCBtYXkgYmUgcmVxdWlyZWQgZHVyaW5nIGluc3RhbGxhdGlvbiwgIgorImNvbmZpZ3VyYXRpb24gb3IgcmVtb3ZhbCBvZiBwYWNrYWdlcy4gVGhpcyBkZXBlbmRzIG9uIHRoZSBtYWludGFpbmVyIHNjcmlwdHMgIgorImluIHRoZSBwYWNrYWdlLiBTb21lIHBhY2thZ2VzIG1ha2UgdXNlIG9mIHRoZSBCPGRlYmNvbmY+KDEpICBsaWJyYXJ5LCAiCisiYWxsb3dpbmcgZm9yIG1vcmUgZmxleGlibGUgb3IgZXZlbiBhdXRvbWF0ZWQgaW5zdGFsbGF0aW9uIHNldHVwcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRzZWxlY3QuMToxOTMKKyMsIG5vLXdyYXAKK21zZ2lkICJjb25maWciCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjE5NQorbXNnaWQgIkNvbmZpZ3VyZXMgYW55IHByZXZpb3VzbHkgaW5zdGFsbGVkLCBidXQgbm90IGZ1bGx5IGNvbmZpZ3VyZWQgcGFja2FnZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkc2VsZWN0LjE6MTk2CisjLCBuby13cmFwCittc2dpZCAicmVtb3ZlIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxOTgKK21zZ2lkICJSZW1vdmVzIG9yIHB1cmdlcyBpbnN0YWxsZWQgcGFja2FnZXMsIHRoYXQgYXJlIG1hcmtlZCBmb3IgcmVtb3ZhbC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRzZWxlY3QuMToxOTkKKyMsIG5vLXdyYXAKK21zZ2lkICJxdWl0IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToyMDEKK21zZ2lkICJRdWl0IEI8ZHNlbGVjdD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjIwMworbXNnaWQgIkV4aXRzIHRoZSBwcm9ncmFtIHdpdGggemVybyAoc3VjY2Vzc2Z1bCkgZXJyb3Jjb2RlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZHNlbGVjdC4xOjIwNQorIywgbm8td3JhcAorbXNnaWQgIlBhY2thZ2Ugc2VsZWN0aW9ucyBtYW5hZ2VtZW50IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkc2VsZWN0LjE6MjA3CisjLCBuby13cmFwCittc2dpZCAiSW50cm9kdWN0aW9uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToyMjMKK21zZ2lkICIiCisiQjxkc2VsZWN0PiBkaXJlY3RseSBleHBvc2VzIHRoZSBhZG1pbmlzdHJhdG9yIHRvIHNvbWUgb2YgdGhlIGNvbXBsZXhpdGllcyAiCisiaW52b2x2ZWQgd2l0aCBtYW5hZ2luZyBsYXJnZSBzZXRzIG9mIHBhY2thZ2VzIHdpdGggbWFueSBpbnRlcmRlcGVuZGVuY2llcy4gIgorIkZvciBhIHVzZXIgd2hvIGlzIHVuZmFtaWxpYXIgd2l0aCB0aGUgY29uY2VwdHMgYW5kIHRoZSB3YXlzIG9mIHRoZSBkZWJpYW4gIgorInBhY2thZ2UgbWFuYWdlbWVudCBzeXN0ZW0sIGl0IGNhbiBiZSBxdWl0ZSBvdmVyd2hlbG1pbmcuIEFsdGhvdWdoIEI8ZHNlbGVjdD4gIgorImlzIGFpbWVkIGF0IGVhc2luZyBwYWNrYWdlIG1hbmFnZW1lbnQgYW5kIGFkbWluaXN0cmF0aW9uLCBpdCBpcyBvbmx5ICIKKyJpbnN0cnVtZW50YWwgaW4gZG9pbmcgc28gYW5kIGNhbiBub3QgYmUgYXNzdW1lZCB0byBiZSBhIHN1ZmZpY2llbnQgIgorInN1YnN0aXR1dGUgZm9yIGFkbWluaXN0cmF0b3Igc2tpbGwgYW5kIHVuZGVyc3RhbmRpbmcuIFRoZSB1c2VyIGlzIHJlcXVpcmVkICIKKyJ0byBiZSBmYW1pbGlhciB3aXRoIHRoZSBjb25jZXB0cyB1bmRlcmx5aW5nIHRoZSBEZWJpYW4gcGFja2FnaW5nIHN5c3RlbS4gIEluICIKKyJjYXNlIG9mIGRvdWJ0LCBjb25zdWx0IHRoZSBCPGRwa2c+KDEpIG1hbnBhZ2UgYW5kIHRoZSBEZWJpYW4gUG9saWN5IG1hbnVhbCwgIgorImNvbnRhaW5lZCBpbiB0aGUgQjxkZWJpYW4tcG9saWN5PiBwYWNrYWdlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MjI5Cittc2dpZCAiIgorIlVubGVzcyBCPGRzZWxlY3Q+IGlzIHJ1biBpbiBleHBlcnQgb3IgaW1tZWRpYXRlIG1vZGUsIGEgaGVscCBzY3JlZW4gaXMgZmlyc3QgIgorImRpc3BsYXllZCB3aGVuIGNob29zaW5nIHRoaXMgYWN0aW9uIGZyb20gdGhlIG1lbnUuIFRoZSB1c2VyIGlzIEk8c3Ryb25nbHk+ICIKKyJhZHZpc2VkIHRvIHN0dWR5IGFsbCBvZiB0aGUgaW5mb3JtYXRpb24gcHJlc2VudGVkIGluIHRoZSBvbmxpbmUgaGVscCAiCisic2NyZWVucywgd2hlbiBvbmUgcG9wcyB1cC4gIFRoZSBvbmxpbmUgaGVscCBzY3JlZW5zIGNhbiBhdCBhbnkgdGltZSBiZSAiCisiaW52b2tlZCB3aXRoIHRoZSBCPCc/Jz4ga2V5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHNlbGVjdC4xOjIzMAorIywgbm8td3JhcAorbXNnaWQgIlNjcmVlbiBsYXlvdXQiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjIzOAorbXNnaWQgIiIKKyJUaGUgc2VsZWN0IHNjcmVlbiBpcyBieSBkZWZhdWx0IHNwbGl0IGluIGEgdG9wIGFuZCBhIGJvdHRvbSBoYWxmLiAgVGhlIHRvcCAiCisiaGFsZiBzaG93cyBhIGxpc3Qgb2YgcGFja2FnZXMuIEEgY3Vyc29yIGJhciBjYW4gc2VsZWN0IGFuIGluZGl2aWR1YWwgIgorInBhY2thZ2UsIG9yIGEgZ3JvdXAgb2YgcGFja2FnZXMsIGlmIGFwcGxpY2FibGUsIGJ5IHNlbGVjdGluZyB0aGUgZ3JvdXAgIgorImhlYWRlci4gVGhlIGJvdHRvbSBoYWxmIG9mIHRoZSBzY3JlZW4gc2hvd3Mgc29tZSBkZXRhaWxzIGFib3V0IHRoZSBwYWNrYWdlICIKKyJjdXJyZW50bHkgc2VsZWN0ZWQgaW4gdGhlIHRvcCBoYWxmIG9mIHRoZSBzY3JlZW4uICBUaGUgdHlwZSBvZiBkZXRhaWwgdGhhdCAiCisiaXMgZGlzcGxheWVkIGNhbiBiZSB2YXJpZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToyNDEKK21zZ2lkICIiCisiUHJlc3NpbmcgdGhlIEI8J0knPiBrZXkgdG9nZ2xlcyBhIGZ1bGwtc2NyZWVuIGRpc3BsYXkgb2YgdGhlIHBhY2thZ2VzIGxpc3QsICIKKyJhbiBlbmxhcmdlZCB2aWV3IG9mIHRoZSBwYWNrYWdlIGRldGFpbHMsIG9yIHRoZSBlcXVhbGx5IHNwbGl0IHNjcmVlbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRzZWxlY3QuMToyNDIKKyMsIG5vLXdyYXAKK21zZ2lkICJQYWNrYWdlIGRldGFpbHMgdmlldyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MjUxCisjLCBuby13cmFwCittc2dpZCAiIgorIlRoZSBwYWNrYWdlIGRldGFpbHMgdmlldyBieSBkZWZhdWx0IHNob3dzIHRoZSBleHRlbmRlZCBwYWNrYWdlIGRlc2NyaXB0aW9uXG4iCisiZm9yIHRoZSBwYWNrYWdlIHRoYXQgaXMgY3VycmVudGx5IHNlbGVjdGVkIGluIHRoZSBwYWNrYWdlcyBzdGF0dXMgbGlzdC5cbiIKKyJUaGUgdHlwZSBvZiBkZXRhaWwgY2FuIGJlIHRvZ2dsZWQgYnkgcHJlc3NpbmcgdGhlIEI8J2knPiBrZXkuIFRoaXNcbiIKKyJhbHRlcm5hdGVzIGJldHdlZW46XG4iCisiIC0gdGhlIGV4dGVuZGVkIGRlc2NyaXB0aW9uXG4iCisiIC0gdGhlIGNvbnRyb2wgaW5mb3JtYXRpb24gZm9yIHRoZSBpbnN0YWxsZWQgdmVyc2lvblxuIgorIiAtIHRoZSBjb250cm9sIGluZm9ybWF0aW9uIGZvciB0aGUgYXZhaWxhYmxlIHZlcnNpb25cbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MjU1Cittc2dpZCAiIgorIkluIGEgZGVwZW5kZW5jeSByZXNvbHV0aW9uIHNjcmVlbiwgdGhlcmUgaXMgYWxzbyB0aGUgcG9zc2liaWxpdHkgb2Ygdmlld2luZyAiCisidGhlIHNwZWNpZmljIHVucmVzb2x2ZWQgZGVwZW5kcyBvciBjb25mbGljdHMgcmVsYXRlZCB0byB0aGUgcGFja2FnZSBhbmQgIgorImNhdXNpbmcgaXQgdG8gYmUgbGlzdGVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHNlbGVjdC4xOjI1NgorIywgbm8td3JhcAorbXNnaWQgIlBhY2thZ2VzIHN0YXR1cyBsaXN0IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToyNjEKK21zZ2lkICIiCisiVGhlIG1haW4gc2VsZWN0IHNjcmVlbiBkaXNwbGF5cyBhIGxpc3Qgb2YgYWxsIHBhY2thZ2VzIGtub3duIHRvIHRoZSBkZWJpYW4gIgorInBhY2thZ2UgbWFuYWdlbWVudCBzeXN0ZW0uIFRoaXMgaW5jbHVkZXMgcGFja2FnZXMgaW5zdGFsbGVkIG9uIHRoZSBzeXN0ZW0gIgorImFuZCBwYWNrYWdlcyBrbm93biBmcm9tIHRoZSBhdmFpbGFibGUgcGFja2FnZXMgZGF0YWJhc2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToyNjkKK21zZ2lkICIiCisiRm9yIGV2ZXJ5IHBhY2thZ2UsIHRoZSBsaXN0IHNob3dzIHRoZSBwYWNrYWdlJ3Mgc3RhdHVzLCBwcmlvcml0eSwgc2VjdGlvbiwgIgorImluc3RhbGxlZCBhbmQgYXZhaWxhYmxlIHZlcnNpb25zLCB0aGUgcGFja2FnZSBuYW1lIGFuZCBpdHMgc2hvcnQgIgorImRlc2NyaXB0aW9uLCBhbGwgaW4gb25lIGxpbmUuIEJ5IHByZXNzaW5nIHRoZSBCPCdWJz4ga2V5LCB0aGUgZGlzcGxheSBvZiB0aGUgIgorImluc3RhbGxlZCBhbmQgYXZhaWxhYmxlIHZlcnNpb24gY2FuIGJlIHRvZ2dsZWQgYmV0d2VlbiBvbiBhbiBvZmYuIEJ5ICIKKyJwcmVzc2luZyB0aGUgQjwndic+IGtleSwgdGhlIHBhY2thZ2Ugc3RhdHVzIGRpc3BsYXkgaXMgdG9nZ2xlZCBiZXR3ZWVuICIKKyJ2ZXJib3NlIGFuZCBzaG9ydGhhbmQuICBTaG9ydGhhbmQgZGlzcGxheSBpcyB0aGUgZGVmYXVsdC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjI3NQorbXNnaWQgIiIKKyJUaGUgc2hvcnRoYW5kIHN0YXR1cyBpbmRpY2F0aW9uIGNvbnNpc3RzIG9mIGZvdXIgcGFydHM6IGFuIGVycm9yIGZsYWcsIHdoaWNoICIKKyJzaG91bGQgbm9ybWFsbHkgYmUgY2xlYXIsIHRoZSBjdXJyZW50IHN0YXR1cywgdGhlIGxhc3Qgc2VsZWN0aW9uIHN0YXRlIGFuZCAiCisidGhlIGN1cnJlbnQgc2VsZWN0aW9uIHN0YXRlLiAgVGhlIGZpcnN0IHR3byByZWxhdGUgdG8gdGhlIGFjdHVhbCBzdGF0ZSBvZiAiCisidGhlIHBhY2thZ2UsIHRoZSBzZWNvbmQgcGFpciBhcmUgYWJvdXQgdGhlIHNlbGVjdGlvbnMgc2V0IGJ5IHRoZSB1c2VyLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MjkzCisjLCBuby13cmFwCittc2dpZCAiIgorIlRoZXNlIGFyZSB0aGUgbWVhbmluZ3Mgb2YgdGhlIHNob3J0aGFuZCBwYWNrYWdlIHN0YXR1cyBpbmRpY2F0b3IgY29kZXM6XG4iCisiIEVycm9yIGZsYWc6XG4iCisiICBJPGVtcHR5PiAgIG5vIGVycm9yXG4iCisiICBCPFI+ICAgICAgIHNlcmlvdXMgZXJyb3IsIG5lZWRzIHJlaW5zdGFsbGF0aW9uO1xuIgorIiBJbnN0YWxsZWQgc3RhdGU6XG4iCisiICBJPGVtcHR5PiAgIG5vdCBpbnN0YWxsZWQ7XG4iCisiICBCPCo+ICAgICAgIGZ1bGx5IGluc3RhbGxlZCBhbmQgY29uZmlndXJlZDtcbiIKKyIgIEI8LT4gICAgICAgbm90IGluc3RhbGxlZCBidXQgc29tZSBjb25maWcgZmlsZXMgbWF5IHJlbWFpbjtcbiIKKyIgIEI8VT4gICAgICAgdW5wYWNrZWQgYnV0IG5vdCB5ZXQgY29uZmlndXJlZDtcbiIKKyIgIEI8Qz4gICAgICAgaGFsZi1jb25maWd1cmVkIChhbiBlcnJvciBoYXBwZW5lZCk7XG4iCisiICBCPEk+ICAgICAgIGhhbGYtaW5zdGFsbGVkIChhbiBlcnJvciBoYXBwZW5lZCkuXG4iCisiIEN1cnJlbnQgYW5kIHJlcXVlc3RlZCBzZWxlY3Rpb25zOlxuIgorIiAgQjwqPiAgICAgICBtYXJrZWQgZm9yIGluc3RhbGxhdGlvbiBvciB1cGdyYWRlO1xuIgorIiAgQjwtPiAgICAgICBtYXJrZWQgZm9yIHJlbW92YWwsIGNvbmZpZ3VyYXRpb24gZmlsZXMgcmVtYWluO1xuIgorIiAgQjw9PiAgICAgICBvbiBob2xkOiBwYWNrYWdlIHdpbGwgbm90IGJlIHByb2Nlc3NlZCBhdCBhbGw7XG4iCisiICBCPF8+ICAgICAgIG1hcmtlZCBmb3IgcHVyZ2UsIGFsc28gcmVtb3ZlIGNvbmZpZ3VyYXRpb247XG4iCisiICBCPG4+ICAgICAgIHBhY2thZ2UgaXMgbmV3IGFuZCBoYXMgeWV0IHRvIGJlIG1hcmtlZC5cbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHNlbGVjdC4xOjI5NAorIywgbm8td3JhcAorbXNnaWQgIkN1cnNvciBhbmQgc2NyZWVuIG1vdmVtZW50IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToyOTkKK21zZ2lkICIiCisiVGhlIHBhY2thZ2Ugc2VsZWN0aW9uIGxpc3QgYW5kIHRoZSBkZXBlbmRlbmN5IGNvbmZsaWN0IHJlc29sdXRpb24gc2NyZWVucyAiCisiY2FuIGJlIG5hdmlnYXRlZCB1c2luZyBtb3Rpb24gY29tbWFuZHMgbWFwcGVkIHRvIHRoZSBmb2xsb3dpbmcga2V5czoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjMxNgorIywgbm8td3JhcAorbXNnaWQgIiIKKyIgIEI8cCwgVXAsIGs+ICAgICAgICAgICBtb3ZlIGN1cnNvciBiYXIgdXBcbiIKKyIgIEI8biwgRG93biwgaj4gICAgICAgICBtb3ZlIGN1cnNvciBiYXIgZG93blxuIgorIiAgQjxQLCBQZ3VwLCBCYWNrc3BhY2U+IHNjcm9sbCBsaXN0IDEgcGFnZSB1cFxuIgorIiAgQjxOLCBQZ2RuLCBTcGFjZT4gICAgIHNjcm9sbCBsaXN0IDEgcGFnZSBkb3duXG4iCisiICBCPF5wPiAgICAgICAgICAgICAgICAgc2Nyb2xsIGxpc3QgMSBsaW5lIHVwXG4iCisiICBCPF5uPiAgICAgICAgICAgICAgICAgc2Nyb2xsIGxpc3QgMSBsaW5lIGRvd25cbiIKKyIgIEI8dCwgSG9tZT4gICAgICAgICAgICBqdW1wIHRvIHRvcCBvZiBsaXN0XG4iCisiICBCPGUsIEVuZD4gICAgICAgICAgICAganVtcCB0byBlbmQgb2YgbGlzdFxuIgorIiAgQjx1PiAgICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIDEgcGFnZSB1cFxuIgorIiAgQjxkPiAgICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIDEgcGFnZSBkb3duXG4iCisiICBCPF51PiAgICAgICAgICAgICAgICAgc2Nyb2xsIGluZm8gMSBsaW5lIHVwXG4iCisiICBCPF5kPiAgICAgICAgICAgICAgICAgc2Nyb2xsIGluZm8gMSBsaW5lIGRvd25cbiIKKyIgIEI8QiwgTGVmdC1hcnJvdz4gICAgICBwYW4gZGlzcGxheSAxLzMgc2NyZWVuIGxlZnRcbiIKKyIgIEI8RiwgUmlnaHQtYXJyb3c+ICAgICBwYW4gZGlzcGxheSAxLzMgc2NyZWVuIHJpZ2h0XG4iCisiICBCPF5iPiAgICAgICAgICAgICAgICAgcGFuIGRpc3BsYXkgMSBjaGFyYWN0ZXIgbGVmdFxuIgorIiAgQjxeZj4gICAgICAgICAgICAgICAgIHBhbiBkaXNwbGF5IDEgY2hhcmFjdGVyIHJpZ2h0XG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRzZWxlY3QuMTozMTcKKyMsIG5vLXdyYXAKK21zZ2lkICJTZWFyY2hpbmcgYW5kIHNvcnRpbmciCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjMzMQorbXNnaWQgIiIKKyJUaGUgbGlzdCBvZiBwYWNrYWdlcyBjYW4gYmUgc2VhcmNoZWQgYnkgcGFja2FnZSBuYW1lLiBUaGlzIGlzIGRvbmUgYnkgIgorInByZXNzaW5nIEI8Jy8nPiwgYW5kIHR5cGluZyBhIHNpbXBsZSBzZWFyY2ggc3RyaW5nLiBUaGUgc3RyaW5nIGlzICIKKyJpbnRlcnByZXRlZCBhcyBhIEI8cmVnZXg+KDcpICByZWd1bGFyIGV4cHJlc3Npb24uICBJZiB5b3UgYWRkIEI8Jy9kJz4gdG8gdGhlICIKKyJzZWFyY2ggZXhwcmVzc2lvbiwgZHNlbGVjdCB3aWxsIGFsc28gc2VhcmNoIGluIGRlc2NyaXB0aW9ucy4gSWYgeW91IGFkZCBCPCcvIgorImknPiB0aGUgc2VhcmNoIHdpbGwgYmUgY2FzZSBpbnNlbnNpdGl2ZS4gIFlvdSBtYXkgY29tYmluZSB0aGVzZSB0d28gc3VmZml4ZXMgIgorImxpa2UgdGhpczogQjwnL2lkJz4uICBSZXBlYXRlZCBzZWFyY2hpbmcgaXMgYWNjb21wbGlzaGVkIGJ5IHJlcGVhdGVkbHkgIgorInByZXNzaW5nIHRoZSBCPCduJz4gb3IgQjwnXFxlJz4ga2V5cywgdW50aWwgdGhlIHdhbnRlZCBwYWNrYWdlIGlzIGZvdW5kLiAgSWYgIgorInRoZSBzZWFyY2ggcmVhY2hlcyB0aGUgYm90dG9tIG9mIHRoZSBsaXN0LCBpdCB3cmFwcyB0byB0aGUgdG9wIGFuZCBjb250aW51ZXMgIgorInNlYXJjaGluZyBmcm9tIHRoZXJlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MzM4CisjLCBuby13cmFwCittc2dpZCAiIgorIlRoZSBsaXN0IHNvcnQgb3JkZXIgY2FuIGJlIHZhcmllZCBieSBwcmVzc2luZ1xuIgorInRoZSBCPCdvJz4gYW5kIEI8J08nPiBrZXlzIHJlcGVhdGVkbHkuXG4iCisiVGhlIGZvbGxvd2luZyBuaW5lIHNvcnQgb3JkZXJpbmdzIGNhbiBiZSBzZWxlY3RlZDpcbiIKKyIgYWxwaGFiZXQgICAgICAgICAgYXZhaWxhYmxlICAgICAgICAgICBzdGF0dXNcbiIKKyIgcHJpb3JpdHkrc2VjdGlvbiAgYXZhaWxhYmxlK3ByaW9yaXR5ICBzdGF0dXMrcHJpb3JpdHlcbiIKKyIgc2VjdGlvbitwcmlvcml0eSAgYXZhaWxhYmxlK3NlY3Rpb24gICBzdGF0dXMrc2VjdGlvblxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTozNDEKK21zZ2lkICIiCisiV2hlcmUgbm90IGxpc3RlZCBhYm92ZSBleHBsaWNpdGx5LCBhbHBoYWJldGljIG9yZGVyIGlzIHVzZWQgYXMgdGhlIGZpbmFsICIKKyJzdWJvcmRlcmluZyBzb3J0IGtleS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRzZWxlY3QuMTozNDIKKyMsIG5vLXdyYXAKK21zZ2lkICJBbHRlcmluZyBzZWxlY3Rpb25zIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTozNTEKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiVGhlIHJlcXVlc3RlZCBzZWxlY3Rpb24gc3RhdGUgb2YgaW5kaXZpZHVhbCBwYWNrYWdlcyBtYXkgYmVcbiIKKyJhbHRlcmVkIHdpdGggdGhlIGZvbGxvd2luZyBjb21tYW5kczpcbiIKKyIgIEI8KywgSW5zZXJ0PiAgICBpbnN0YWxsIG9yIHVwZ3JhZGVcbiIKKyIgIEI8PSwgSD4gICAgICAgICBob2xkIGluIHByZXNlbnQgc3RhdGUgYW5kIHZlcnNpb25cbiIKKyIgIEI8OiwgRz4gICAgICAgICB1bmhvbGQ6IHVwZ3JhZGUgb3IgbGVhdmUgdW5pbnN0YWxsZWRcbiIKKyIgIEI8LSwgRGVsZXRlPiAgICByZW1vdmUsIGJ1dCBsZWF2ZSBjb25maWd1cmF0aW9uXG4iCisiICBCPF8+ICAgICAgICAgICAgcmVtb3ZlICYgcHVyZ2UgY29uZmlndXJhdGlvblxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTozNTUKK21zZ2lkICIiCisiV2hlbiB0aGUgY2hhbmdlIHJlcXVlc3QgcmVzdWx0cyBpbiBvbmUgb3IgbW9yZSB1bnNhdGlzZmllZCBkZXBlbmRzIG9yICIKKyJjb25mbGljdHMsIEI8ZHNlbGVjdD4gcHJvbXB0cyB0aGUgdXNlciB3aXRoIGEgZGVwZW5kZW5jeSByZXNvbHV0aW9uIHNjcmVlbi4gIgorIlRoaXMgd2lsbCBiZSBmdXJ0aGVyIGV4cGxhaW5lZCBiZWxvdy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjM2MAorbXNnaWQgIiIKKyJJdCBpcyBhbHNvIHBvc3NpYmxlIHRvIGFwcGx5IHRoZXNlIGNvbW1hbmRzIHRvIGdyb3VwcyBvZiBwYWNrYWdlIHNlbGVjdGlvbnMsICIKKyJieSBwb2ludGluZyB0aGUgY3Vyc29yIGJhciBvbnRvIGEgZ3JvdXAgaGVhZGVyLiBUaGUgZXhhY3QgZ3JvdXBpbmcgb2YgIgorInBhY2thZ2VzIGlzIGRlcGVuZGVudCBvbiB0aGUgY3VycmVudCBsaXN0IG9yZGVyaW5nIHNldHRpbmdzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MzY2Cittc2dpZCAiIgorIlByb3BlciBjYXJlIHNob3VsZCBiZSB0YWtlbiB3aGVuIGFsdGVyaW5nIGxhcmdlIGdyb3VwcyBvZiBzZWxlY3Rpb25zLCAiCisiYmVjYXVzZSB0aGlzIGNhbiBpbnN0YW50YW5lb3VzbHkgY3JlYXRlIGxhcmdlIG51bWJlcnMgb2YgdW5yZXNvbHZlZCBkZXBlbmRzICIKKyJvciBjb25mbGljdHMsIGFsbCBvZiB3aGljaCB3aWxsIGJlIGxpc3RlZCBpbiBvbmUgZGVwZW5kZW5jeSByZXNvbHV0aW9uICIKKyJzY3JlZW4sIG1ha2luZyB0aGVtIHZlcnkgaGFyZCB0byBoYW5kbGUuIEluIHByYWN0aWNlLCBvbmx5IGhvbGQgYW5kIHVuaG9sZCAiCisib3BlcmF0aW9ucyBhcmUgdXNlZnVsIHdoZW4gYXBwbGllZCB0byBncm91cHMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkc2VsZWN0LjE6MzY3CisjLCBuby13cmFwCittc2dpZCAiUmVzb2x2aW5nIGRlcGVuZHMgYW5kIGNvbmZsaWN0cyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MzcyCittc2dpZCAiIgorIldoZW4gdGhlIGNoYW5nZSByZXF1ZXN0IHJlc3VsdHMgaW4gb25lIG9yIG1vcmUgdW5zYXRpc2ZpZWQgZGVwZW5kcyBvciAiCisiY29uZmxpY3RzLCBCPGRzZWxlY3Q+IHByb21wdHMgdGhlIHVzZXIgd2l0aCBhIGRlcGVuZGVuY3kgcmVzb2x1dGlvbiBzY3JlZW4uICIKKyJGaXJzdCBob3dldmVyLCBhbiBpbmZvcm1hdGl2ZSBoZWxwIHNjcmVlbiBpcyBkaXNwbGF5ZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTozNzkKK21zZ2lkICIiCisiVGhlIHRvcCBoYWxmIG9mIHRoaXMgc2NyZWVuIGxpc3RzIGFsbCB0aGUgcGFja2FnZXMgdGhhdCB3aWxsIGhhdmUgdW5yZXNvbHZlZCAiCisiZGVwZW5kcyBvciBjb25mbGljdHMsIGFzIGEgcmVzdWx0IG9mIHRoZSByZXF1ZXN0ZWQgY2hhbmdlLCBhbmQgYWxsIHRoZSAiCisicGFja2FnZXMgd2hvc2UgaW5zdGFsbGF0aW9uIGNhbiByZXNvbHZlIGFueSBvZiB0aGVzZSBkZXBlbmRzIG9yIHdob3NlICIKKyJyZW1vdmFsIGNhbiByZXNvbHZlIGFueSBvZiB0aGUgY29uZmxpY3RzLiAgVGhlIGJvdHRvbSBoYWxmIGRlZmF1bHRzIHRvIHNob3cgIgorInRoZSBkZXBlbmRzIG9yIGNvbmZsaWN0cyB0aGF0IGNhdXNlIHRoZSBjdXJyZW50bHkgc2VsZWN0ZWQgcGFja2FnZSB0byBiZSAiCisibGlzdGVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6Mzg1Cittc2dpZCAiIgorIldoZW4gdGhlIHN1Ymxpc3Qgb2YgcGFja2FnZXMgaXMgZGlzcGxheWVkIGluaXRpYWxseSwgQjxkc2VsZWN0PiBtYXkgaGF2ZSAiCisiYWxyZWFkeSBzZXQgdGhlIHJlcXVlc3RlZCBzZWxlY3Rpb24gc3RhdHVzIG9mIHNvbWUgb2YgdGhlIGxpc3RlZCBwYWNrYWdlcywgIgorImluIG9yZGVyIHRvIHJlc29sdmUgdGhlIGRlcGVuZHMgb3IgY29uZmxpY3RzIHRoYXQgY2F1c2VkIHRoZSBkZXBlbmRlbmN5ICIKKyJyZXNvbHV0aW9uIHNjcmVlbiB0byBiZSBkaXNwbGF5ZWQuIFVzdWFsbHksIGl0IGlzIGJlc3QgdG8gZm9sbG93IHVwIHRoZSAiCisic3VnZ2VzdGlvbnMgbWFkZSBieSBCPGRzZWxlY3Q+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MzkzCittc2dpZCAiIgorIlRoZSBsaXN0ZWQgcGFja2FnZXMnIHNlbGVjdGlvbiBzdGF0ZSBtYXkgYmUgcmV2ZXJ0ZWQgdG8gdGhlIG9yaWdpbmFsICIKKyJzZXR0aW5ncywgYXMgdGhleSB3ZXJlIGJlZm9yZSB0aGUgdW5yZXNvbHZlZCBkZXBlbmRzIG9yIGNvbmZsaWN0cyB3ZXJlICIKKyJjcmVhdGVkLCBieSBwcmVzc2luZyB0aGUgQjwnUic+IGtleS4gQnkgcHJlc3NpbmcgdGhlIEI8J0QnPiBrZXksIHRoZSAiCisiYXV0b21hdGljIHN1Z2dlc3Rpb25zIGFyZSByZXNldCwgYnV0IHRoZSBjaGFuZ2UgdGhhdCBjYXVzZWQgdGhlIGRlcGVuZGVuY3kgIgorInJlc29sdXRpb24gc2NyZWVuIHRvIGJlIHByb21wdGVkIGlzIGtlcHQgYXMgcmVxdWVzdGVkLiAgRmluYWxseSwgYnkgcHJlc3NpbmcgIgorIkI8J1UnPiwgdGhlIHNlbGVjdGlvbnMgYXJlIGFnYWluIHNldCB0byB0aGUgYXV0b21hdGljIHN1Z2dlc3Rpb24gdmFsdWVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHNlbGVjdC4xOjM5NAorIywgbm8td3JhcAorbXNnaWQgIkVzdGFibGlzaGluZyB0aGUgcmVxdWVzdGVkIHNlbGVjdGlvbnMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjQwMQorbXNnaWQgIiIKKyJCeSBwcmVzc2luZyBCPGVudGVyPiwgdGhlIGN1cnJlbnRseSBkaXNwbGF5ZWQgc2V0IG9mIHNlbGVjdGlvbnMgaXMgYWNjZXB0ZWQuICIKKyJJZiBCPGRzZWxlY3Q+IGRldGVjdHMgbm8gdW5yZXNvbHZlZCBkZXBlbmRzIGFzIGEgcmVzdWx0IG9mIHRoZSByZXF1ZXN0ZWQgIgorInNlbGVjdGlvbnMsIHRoZSBuZXcgc2VsZWN0aW9ucyB3aWxsIGJlIHNldC4gIEhvd2V2ZXIsIGlmIHRoZXJlIGFyZSBhbnkgIgorInVucmVzb2x2ZWQgZGVwZW5kcywgQjxkc2VsZWN0PiB3aWxsIGFnYWluIHByb21wdCB0aGUgdXNlciB3aXRoIGEgZGVwZW5kZW5jeSAiCisicmVzb2x1dGlvbiBzY3JlZW4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0MDcKK21zZ2lkICIiCisiVG8gYWx0ZXIgYSBzZXQgb2Ygc2VsZWN0aW9ucyB0aGF0IGNyZWF0ZXMgdW5yZXNvbHZlZCBkZXBlbmRzIG9yIGNvbmZsaWN0cyAiCisiYW5kIGZvcmNpbmcgQjxkc2VsZWN0PiB0byBhY2NlcHQgaXQsIHByZXNzIHRoZSBCPCdRJz4ga2V5LiBUaGlzIHNldHMgdGhlICIKKyJzZWxlY3Rpb25zIGFzIHNwZWNpZmllZCBieSB0aGUgdXNlciwgdW5jb25kaXRpb25hbGx5LiBHZW5lcmFsbHksIGRvbid0IGRvICIKKyJ0aGlzIHVubGVzcyB5b3UndmUgcmVhZCB0aGUgZmluZSBwcmludC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjQxNAorbXNnaWQgIiIKKyJUaGUgb3Bwb3NpdGUgZWZmZWN0LCB0byBiYWNrIG91dCBhbnkgc2VsZWN0aW9ucyBjaGFuZ2UgcmVxdWVzdHMgYW5kIGdvIGJhY2sgIgorInRvIHRoZSBwcmV2aW91cyBsaXN0IG9mIHNlbGVjdGlvbnMsIGlzIGF0dGFpbmVkIGJ5IHByZXNzaW5nIHRoZSBCPCdYJz4gb3IgIgorIkI8ZXNjYXBlPiBrZXlzLiBCeSByZXBlYXRlZGx5IHByZXNzaW5nIHRoZXNlIGtleXMsIGFueSBwb3NzaWJseSBkZXRyaW1lbnRhbCAiCisiY2hhbmdlcyB0byB0aGUgcmVxdWVzdGVkIHBhY2thZ2Ugc2VsZWN0aW9ucyBjYW4gYmUgYmFja2VkIG91dCBjb21wbGV0ZWx5IHRvICIKKyJ0aGUgbGFzdCBlc3RhYmxpc2hlZCBzZXR0aW5ncy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjQyMQorbXNnaWQgIiIKKyJJZiB5b3UgbWlzdGFrZW5seSBlc3RhYmxpc2ggc29tZSBzZXR0aW5ncyBhbmQgd2lzaCB0byByZXZlcnQgYWxsIHRoZSAiCisic2VsZWN0aW9ucyB0byB3aGF0IGlzIGN1cnJlbnRseSBpbnN0YWxsZWQgb24gdGhlIHN5c3RlbSwgcHJlc3MgdGhlIEI8J0MnPiAiCisia2V5LiAgVGhpcyBpcyBzb21ld2hhdCBzaW1pbGFyIHRvIHVzaW5nIHRoZSB1bmhvbGQgY29tbWFuZCBvbiBhbGwgcGFja2FnZXMsICIKKyJidXQgcHJvdmlkZXMgYSBtb3JlIG9idmlvdXMgcGFuaWMgYnV0dG9uIGluIGNhc2VzIHdoZXJlIHRoZSB1c2VyIHByZXNzZWQgIgorIkI8ZW50ZXI+IGJ5IGFjY2lkZW50LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NDI4Cittc2dpZCAiIgorIklmIHNldCwgQjxkc2VsZWN0PiB3aWxsIHVzZSBpdCBhcyB0aGUgZGlyZWN0b3J5IGZyb20gd2hpY2ggdG8gcmVhZCB0aGUgdXNlciAiCisic3BlY2lmaWMgY29uZmlndXJhdGlvbiBmaWxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NDM0Cittc2dpZCAiIgorIlRoZSBCPGRzZWxlY3Q+IHBhY2thZ2Ugc2VsZWN0aW9uIGludGVyZmFjZSBpcyBjb25mdXNpbmcgdG8gc29tZSBuZXcgdXNlcnMuICAiCisiUmVwb3J0ZWRseSwgaXQgZXZlbiBtYWtlcyBzZWFzb25lZCBrZXJuZWwgZGV2ZWxvcGVycyBjcnkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0MzYKK21zZ2lkICJUaGUgZG9jdW1lbnRhdGlvbiBpcyBsYWNraW5nLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NDM4Cittc2dpZCAiVGhlcmUgaXMgbm8gaGVscCBvcHRpb24gaW4gdGhlIG1haW4gbWVudS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjQ0MAorIywgZnV6enkKK21zZ2lkICJUaGUgdmlzaWJsZSBsaXN0IG9mIGF2YWlsYWJsZSBwYWNrYWdlcyBjYW5ub3QgYmUgcmVkdWNlZC4iCittc2dzdHIgIkxpc3RhIGRvcyBwYWNvdGVzIGRpc3BvbsOtdmVpcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0NDQKK21zZ2lkICIiCisiVGhlIGJ1aWx0IGluIGFjY2VzcyBtZXRob2RzIGNhbiBubyBsb25nZXIgc3RhbmQgdXAgdG8gY3VycmVudCBxdWFsaXR5ICIKKyJzdGFuZGFyZHMuIFVzZSB0aGUgYWNjZXNzIG1ldGhvZCBwcm92aWRlZCBieSBhcHQsIGl0IGlzIG5vdCBvbmx5IG5vdCBicm9rZW4sICIKKyJpdCBpcyBhbHNvIG11Y2ggbW9yZSBmbGV4aWJsZSB0aGFuIHRoZSBidWlsdCBpbiBhY2Nlc3MgbWV0aG9kcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjQ1MAorbXNnaWQgIkI8ZHBrZz4oMSksIEI8YXB0LWdldD4oOCksIEI8c291cmNlcy5saXN0Pig1KSwgQjxkZWI+KDUpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NDU1Cittc2dpZCAiIgorIkI8ZHNlbGVjdD4gd2FzIHdyaXR0ZW4gYnkgSWFuIEphY2tzb24gKGlqYWNrc29uQGdudS5haS5taXQuZWR1KS4gRnVsbCBsaXN0ICIKKyJvZiBjb250cmlidXRvcnMgbWF5IGJlIGZvdW5kIGluICdkc2VsZWN0IC0tdmVyc2lvbicuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0NTgKK21zZ2lkICIiCisiVGhpcyBtYW51YWwgcGFnZSB3YXMgd3JpdHRlbiBieSBKdWhvIFZ1b3JpIEU8bHQ+amF2dW9yaUBjYy5oZWxzaW5raS5maUU8Z3Q+LCAiCisiSm9zaXAgUm9kaW4gYW5kIEpvb3N0IGtvb2lqLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUSAorIzogZHNlbGVjdC5jZmcuNToxCisjLCBuby13cmFwCittc2dpZCAiZHNlbGVjdC5jZmciCittc2dzdHIgIiIKKworIy4gdHlwZTogVEgKKyM6IGRzZWxlY3QuY2ZnLjU6MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICIyMDExLTA3LTAzIgorbXNnc3RyICIyMDA2LTA0LTA5IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LmNmZy41OjQKK21zZ2lkICJkc2VsZWN0LmNmZyAtIGRzZWxlY3QgY29uZmlndXJhdGlvbiBmaWxlIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuY2ZnLjU6MTEKK21zZ2lkICIiCisiVGhpcyBmaWxlIGNvbnRhaW5zIGRlZmF1bHQgb3B0aW9ucyBmb3IgZHNlbGVjdC4gRWFjaCBsaW5lIGNvbnRhaW5zIGEgc2luZ2xlICIKKyJvcHRpb24gd2hpY2ggaXMgZXhhY3RseSB0aGUgc2FtZSBhcyBhIG5vcm1hbCBjb21tYW5kIGxpbmUgb3B0aW9uIGZvciBkc2VsZWN0ICIKKyJleGNlcHQgZm9yIHRoZSBsZWFkaW5nIGRhc2hlcyB3aGljaCBhcmUgbm90IHVzZWQgaGVyZS4gUXVvdGVzIHN1cnJvdW5kaW5nICIKKyJvcHRpb24gdmFsdWVzIGFyZSBzdHJpcHBlZC4gQ29tbWVudHMgYXJlIGFsbG93ZWQgYnkgc3RhcnRpbmcgYSBsaW5lIHdpdGggYSAiCisiaGFzaCBzaWduIChcIkI8Iz5cIikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuY2ZnLjU6MTQKKyMsIGZ1enp5Cittc2dpZCAiSTwvZXRjL2Rwa2cvZHNlbGVjdC5jZmcuZC9bMC05YS16QS1aXy1dKj4iCittc2dzdHIgIkk8L2V0Yy9kcGtnL2Rwa2cuY2ZnPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC5jZmcuNToxNgorIywgZnV6enkKK21zZ2lkICJJPC9ldGMvZHBrZy9kc2VsZWN0LmNmZz4iCittc2dzdHIgIkk8L2V0Yy9kcGtnL2Rwa2cuY2ZnPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC5jZmcuNToxOAorbXNnaWQgIkk8fi8uZHNlbGVjdC5jZmc+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuY2ZnLjU6MjIKKyMsIGZ1enp5Cittc2dpZCAiIgorIlNlZSBJPC91c3Ivc2hhcmUvZG9jL2Rwa2cvVEhBTktTPiBmb3IgdGhlIGxpc3Qgb2YgcGVvcGxlIHdobyBoYXZlICIKKyJjb250cmlidXRlZCB0byBCPGRzZWxlY3Q+LiIKK21zZ3N0ciAiIgorIlZlamEgQjwvdXNyL3NoYXJlL2RvYy9kcGtnL1RIQU5LUz4gcGFyYSBhIGxpc3RhIGRlIHBlc3NvYXMgcXVlXG4iCisiY29udHJpYnXDrXJhbSBwYXJhIG8gQjxkcGtnPi5cbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC5jZmcuNToyNAorbXNnaWQgIkI8ZHNlbGVjdD4oMSkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRICisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjEKKyMsIG5vLXdyYXAKK21zZ2lkICJzdGFydC1zdG9wLWRhZW1vbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjQKK21zZ2lkICJzdGFydC1zdG9wLWRhZW1vbiAtIHN0YXJ0IGFuZCBzdG9wIHN5c3RlbSBkYWVtb24gcHJvZ3JhbXMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo4CisjLCBmdXp6eQorbXNnaWQgIkI8c3RhcnQtc3RvcC1kYWVtb24+IFtJPG9wdGlvbj4uLi5dIEk8Y29tbWFuZD4iCittc2dzdHIgIkI8ZHBrZz4gW0k8b3DDp8O1ZXM+XSBJPGHDp8Ojbz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTQKK21zZ2lkICIiCisiQjxzdGFydC1zdG9wLWRhZW1vbj4gaXMgdXNlZCB0byBjb250cm9sIHRoZSBjcmVhdGlvbiBhbmQgdGVybWluYXRpb24gb2YgIgorInN5c3RlbS1sZXZlbCBwcm9jZXNzZXMuICBVc2luZyBvbmUgb2YgdGhlIG1hdGNoaW5nIG9wdGlvbnMsIEI8c3RhcnQtc3RvcC0iCisiZGFlbW9uPiBjYW4gYmUgY29uZmlndXJlZCB0byBmaW5kIGV4aXN0aW5nIGluc3RhbmNlcyBvZiBhIHJ1bm5pbmcgcHJvY2Vzcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODozMworbXNnaWQgIiIKKyJOb3RlOiB1bmxlc3MgQjwtLXBpZGZpbGU+IGlzIHNwZWNpZmllZCwgQjxzdGFydC1zdG9wLWRhZW1vbj4gYmVoYXZlcyBzaW1pbGFyICIKKyJ0byBCPGtpbGxhbGw+KDEpLiAgQjxzdGFydC1zdG9wLWRhZW1vbj4gd2lsbCBzY2FuIHRoZSBwcm9jZXNzIHRhYmxlIGxvb2tpbmcgIgorImZvciBhbnkgcHJvY2Vzc2VzIHdoaWNoIG1hdGNoIHRoZSBwcm9jZXNzIG5hbWUsIHVpZCwgYW5kL29yIGdpZCAoaWYgIgorInNwZWNpZmllZCkuIEFueSBtYXRjaGluZyBwcm9jZXNzIHdpbGwgcHJldmVudCBCPC0tc3RhcnQ+IGZyb20gc3RhcnRpbmcgdGhlICIKKyJkYWVtb24uIEFsbCBtYXRjaGluZyBwcm9jZXNzZXMgd2lsbCBiZSBzZW50IHRoZSBURVJNIHNpZ25hbCAob3IgdGhlIG9uZSAiCisic3BlY2lmaWVkIHZpYSBCPC0tc2lnbmFsPiBvciBCPC0tcmV0cnk+KSBpZiBCPC0tc3RvcD4gaXMgc3BlY2lmaWVkLiBGb3IgIgorImRhZW1vbnMgd2hpY2ggaGF2ZSBsb25nLWxpdmVkIGNoaWxkcmVuIHdoaWNoIG5lZWQgdG8gbGl2ZSB0aHJvdWdoIGEgQjwtLSIKKyJzdG9wPiwgeW91IG11c3Qgc3BlY2lmeSBhIHBpZGZpbGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjM1CisjLCBuby13cmFwCittc2dpZCAiQjwtUz4sIEI8LS1zdGFydD4gW0I8LS0+XSBJPGFyZ3VtZW50cz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo1MgorbXNnaWQgIiIKKyJDaGVjayBmb3IgdGhlIGV4aXN0ZW5jZSBvZiBhIHNwZWNpZmllZCBwcm9jZXNzLiAgSWYgc3VjaCBhIHByb2Nlc3MgZXhpc3RzLCAiCisiQjxzdGFydC1zdG9wLWRhZW1vbj4gZG9lcyBub3RoaW5nLCBhbmQgZXhpdHMgd2l0aCBlcnJvciBzdGF0dXMgMSAoMCBpZiBCPC0tIgorIm9rbm9kbz4gaXMgc3BlY2lmaWVkKS4gIElmIHN1Y2ggYSBwcm9jZXNzIGRvZXMgbm90IGV4aXN0LCBpdCBzdGFydHMgYW4gIgorImluc3RhbmNlLCB1c2luZyBlaXRoZXIgdGhlIGV4ZWN1dGFibGUgc3BlY2lmaWVkIGJ5IEI8LS1leGVjPiBvciwgaWYgIgorInNwZWNpZmllZCwgYnkgQjwtLXN0YXJ0YXM+LiAgQW55IGFyZ3VtZW50cyBnaXZlbiBhZnRlciBCPC0tPiBvbiB0aGUgY29tbWFuZCAiCisibGluZSBhcmUgcGFzc2VkIHVubW9kaWZpZWQgdG8gdGhlIHByb2dyYW0gYmVpbmcgc3RhcnRlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6NTIKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtSz4sIEI8LS1zdG9wPiIKK21zZ3N0ciAiQjwtLW5ldz4gfCBCPC0tb2xkPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo3MAorbXNnaWQgIiIKKyJDaGVja3MgZm9yIHRoZSBleGlzdGVuY2Ugb2YgYSBzcGVjaWZpZWQgcHJvY2Vzcy4gIElmIHN1Y2ggYSBwcm9jZXNzIGV4aXN0cywgIgorIkI8c3RhcnQtc3RvcC1kYWVtb24+IHNlbmRzIGl0IHRoZSBzaWduYWwgc3BlY2lmaWVkIGJ5IEI8LS1zaWduYWw+LCBhbmQgZXhpdHMgIgorIndpdGggZXJyb3Igc3RhdHVzIDAuICBJZiBzdWNoIGEgcHJvY2VzcyBkb2VzIG5vdCBleGlzdCwgQjxzdGFydC1zdG9wLWRhZW1vbj4gIgorImV4aXRzIHdpdGggZXJyb3Igc3RhdHVzIDEgKDAgaWYgQjwtLW9rbm9kbz4gaXMgc3BlY2lmaWVkKS4gSWYgQjwtLXJldHJ5PiBpcyAiCisic3BlY2lmaWVkLCB0aGVuIEI8c3RhcnQtc3RvcC1kYWVtb24+IHdpbGwgY2hlY2sgdGhhdCB0aGUgcHJvY2VzcyhlcykgaGF2ZSAiCisidGVybWluYXRlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6NzAKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtVD4sIEI8LS1zdGF0dXM+IgorbXNnc3RyICJCPC0tbmV3PiB8IEI8LS1vbGQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44Ojc0Cittc2dpZCAiIgorIkNoZWNrIGZvciB0aGUgZXhpc3RlbmNlIG9mIGEgc3BlY2lmaWVkIHByb2Nlc3MsIGFuZCByZXR1cm5zIGFuIGV4aXQgc3RhdHVzICIKKyJjb2RlLCBhY2NvcmRpbmcgdG8gdGhlIExTQiBJbml0IFNjcmlwdCBBY3Rpb25zLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo3NAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1IPiwgQjwtLWhlbHA+IgorbXNnc3RyICJCPC0taGVscD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6NzcKKyMsIGZ1enp5Cittc2dpZCAiU2hvdyB1c2FnZSBpbmZvcm1hdGlvbiBhbmQgZXhpdC4iCittc2dzdHIgIkV4aWJlIGluZm9ybWHDp8OjbyBzb2JyZSBhIHZlcnPDo28gZG8gQjxkcGtnPi4iCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44Ojc3CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LVY+LCBCPC0tdmVyc2lvbj4iCittc2dzdHIgIkI8LS12ZXJzaW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo4MAorbXNnaWQgIlNob3cgdGhlIHByb2dyYW0gdmVyc2lvbiBhbmQgZXhpdC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6ODEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiTUFUQ0hJTkcgT1BUSU9OUyIKK21zZ3N0ciAiT1DDh8OVRVMgQ09NVU5TIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo4MgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1wPiwgQjwtLXBpZGZpbGU+IEk8cGlkLWZpbGU+IgorbXNnc3RyICJCPC1CPnxCPC0tYXV0by1kZWNvbmZpZ3VyZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6ODYKK21zZ2lkICJDaGVjayB3aGV0aGVyIGEgcHJvY2VzcyBoYXMgY3JlYXRlZCB0aGUgZmlsZSBJPHBpZC1maWxlPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6ODYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC14PiwgQjwtLWV4ZWM+IEk8ZXhlY3V0YWJsZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo5MAorbXNnaWQgIiIKKyJDaGVjayBmb3IgcHJvY2Vzc2VzIHRoYXQgYXJlIGluc3RhbmNlcyBvZiB0aGlzIGV4ZWN1dGFibGUgKGFjY29yZGluZyB0byBCPC8iCisicHJvYy8+STxwaWQ+QjwvZXhlPikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjkwCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LW4+LCBCPC0tbmFtZT4gSTxwcm9jZXNzLW5hbWU+IgorbXNnc3RyICJCPGRwa2cgLWk+IHwgQjwtLWluc3RhbGw+IEk8YXJxdWl2b19kb19wYWNvdGU+Li4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44Ojk2Cittc2dpZCAiIgorIkNoZWNrIGZvciBwcm9jZXNzZXMgd2l0aCB0aGUgbmFtZSBJPHByb2Nlc3MtbmFtZT4gKGFjY29yZGluZyB0byBCPC9wcm9jLyIKKyI+STxwaWQ+Qjwvc3RhdD4pLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo5NgorIywgbm8td3JhcAorbXNnaWQgIkI8LXU+LCBCPC0tdXNlcj4gSTx1c2VybmFtZT58STx1aWQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTAyCittc2dpZCAiIgorIkNoZWNrIGZvciBwcm9jZXNzZXMgb3duZWQgYnkgdGhlIHVzZXIgc3BlY2lmaWVkIGJ5IEk8dXNlcm5hbWU+IG9yIEk8dWlkPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTA0CisjLCBuby13cmFwCittc2dpZCAiQjwtZz4sIEI8LS1ncm91cD4gSTxncm91cD58STxnaWQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTA3Cittc2dpZCAiQ2hhbmdlIHRvIEk8Z3JvdXA+IG9yIEk8Z2lkPiB3aGVuIHN0YXJ0aW5nIHRoZSBwcm9jZXNzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxMDcKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtcz4sIEI8LS1zaWduYWw+IEk8c2lnbmFsPiIKK21zZ3N0ciAiQjxkcGtnIC1pPiB8IEI8LS1pbnN0YWxsPiBJPGFycXVpdm9fZG9fcGFjb3RlPi4uLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxMTIKK21zZ2lkICIiCisiV2l0aCBCPC0tc3RvcD4sIHNwZWNpZmllcyB0aGUgc2lnbmFsIHRvIHNlbmQgdG8gcHJvY2Vzc2VzIGJlaW5nIHN0b3BwZWQgIgorIihkZWZhdWx0IFRFUk0pLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxMTIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1SPiwgQjwtLXJldHJ5PiBJPHRpbWVvdXQ+fEk8c2NoZWR1bGU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTIyCittc2dpZCAiIgorIldpdGggQjwtLXN0b3A+LCBzcGVjaWZpZXMgdGhhdCBCPHN0YXJ0LXN0b3AtZGFlbW9uPiBpcyB0byBjaGVjayB3aGV0aGVyIHRoZSAiCisicHJvY2VzcyhlcykgIGRvIGZpbmlzaC4gSXQgd2lsbCBjaGVjayByZXBlYXRlZGx5IHdoZXRoZXIgYW55IG1hdGNoaW5nICIKKyJwcm9jZXNzZXMgYXJlIHJ1bm5pbmcsIHVudGlsIG5vbmUgYXJlLiBJZiB0aGUgcHJvY2Vzc2VzIGRvIG5vdCBleGl0IGl0IHdpbGwgIgorInRoZW4gdGFrZSBmdXJ0aGVyIGFjdGlvbiBhcyBkZXRlcm1pbmVkIGJ5IHRoZSBzY2hlZHVsZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxMzMKK21zZ2lkICIiCisiSWYgSTx0aW1lb3V0PiBpcyBzcGVjaWZpZWQgaW5zdGVhZCBvZiBJPHNjaGVkdWxlPiwgdGhlbiB0aGUgc2NoZWR1bGUgIgorIkk8c2lnbmFsPkI8Lz5JPHRpbWVvdXQ+QjwvS0lMTC8+STx0aW1lb3V0PiBpcyB1c2VkLCB3aGVyZSBJPHNpZ25hbD4gaXMgdGhlICIKKyJzaWduYWwgc3BlY2lmaWVkIHdpdGggQjwtLXNpZ25hbD4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTQ5Cittc2dpZCAiIgorIkk8c2NoZWR1bGU+IGlzIGEgbGlzdCBvZiBhdCBsZWFzdCB0d28gaXRlbXMgc2VwYXJhdGVkIGJ5IHNsYXNoZXMgKEI8Lz4pOyAiCisiZWFjaCBpdGVtIG1heSBiZSBCPC0+STxzaWduYWwtbnVtYmVyPiBvciBbQjwtPl1JPHNpZ25hbC1uYW1lPiwgd2hpY2ggbWVhbnMgIgorInRvIHNlbmQgdGhhdCBzaWduYWwsIG9yIEk8dGltZW91dD4sIHdoaWNoIG1lYW5zIHRvIHdhaXQgdGhhdCBtYW55IHNlY29uZHMgIgorImZvciBwcm9jZXNzZXMgdG8gZXhpdCwgb3IgQjxmb3JldmVyPiwgd2hpY2ggbWVhbnMgdG8gcmVwZWF0IHRoZSByZXN0IG9mIHRoZSAiCisic2NoZWR1bGUgZm9yZXZlciBpZiBuZWNlc3NhcnkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTU5Cittc2dpZCAiIgorIklmIHRoZSBlbmQgb2YgdGhlIHNjaGVkdWxlIGlzIHJlYWNoZWQgYW5kIEI8Zm9yZXZlcj4gaXMgbm90IHNwZWNpZmllZCwgdGhlbiAiCisiQjxzdGFydC1zdG9wLWRhZW1vbj4gZXhpdHMgd2l0aCBlcnJvciBzdGF0dXMgMi4gIElmIGEgc2NoZWR1bGUgaXMgc3BlY2lmaWVkLCAiCisidGhlbiBhbnkgc2lnbmFsIHNwZWNpZmllZCB3aXRoIEI8LS1zaWduYWw+IGlzIGlnbm9yZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjE1OQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1hPiwgQjwtLXN0YXJ0YXM+IEk8cGF0aG5hbWU+IgorbXNnc3RyICJCPGRwa2cgLWk+IHwgQjwtLWluc3RhbGw+IEk8YXJxdWl2b19kb19wYWNvdGU+Li4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjE2NworbXNnaWQgIiIKKyJXaXRoIEI8LS1zdGFydD4sIHN0YXJ0IHRoZSBwcm9jZXNzIHNwZWNpZmllZCBieSBJPHBhdGhuYW1lPi4gIElmIG5vdCAiCisic3BlY2lmaWVkLCBkZWZhdWx0cyB0byB0aGUgYXJndW1lbnQgZ2l2ZW4gdG8gQjwtLWV4ZWM+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxNjcKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtdD4sIEI8LS10ZXN0PiIKK21zZ3N0ciAiQjwtLXRlc3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjE3MQorbXNnaWQgIiIKKyJQcmludCBhY3Rpb25zIHRoYXQgd291bGQgYmUgdGFrZW4gYW5kIHNldCBhcHByb3ByaWF0ZSByZXR1cm4gdmFsdWUsIGJ1dCB0YWtlICIKKyJubyBhY3Rpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjE3MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1vPiwgQjwtLW9rbm9kbz4iCittc2dzdHIgIkI8LS1uZXc+IHwgQjwtLW9sZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTc0Cittc2dpZCAiUmV0dXJuIGV4aXQgc3RhdHVzIDAgaW5zdGVhZCBvZiAxIGlmIG5vIGFjdGlvbnMgYXJlICh3b3VsZCBiZSkgdGFrZW4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjE3NAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1xPiwgQjwtLXF1aWV0PiIKK21zZ3N0ciAiQjwtLXF1aWV0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxNzcKK21zZ2lkICJEbyBub3QgcHJpbnQgaW5mb3JtYXRpb25hbCBtZXNzYWdlczsgb25seSBkaXNwbGF5IGVycm9yIG1lc3NhZ2VzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxNzcKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtYz4sIEI8LS1jaHVpZD4gSTx1c2VybmFtZT58STx1aWQ+W0I8Oj5JPGdyb3VwPnxJPGdpZD5dIgorbXNnc3RyICJCPC0tYWx0ZGlyPiBJPGRpcmV0w7NyaW8+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjE5NQorbXNnaWQgIiIKKyJDaGFuZ2UgdG8gdGhpcyB1c2VybmFtZS91aWQgYmVmb3JlIHN0YXJ0aW5nIHRoZSBwcm9jZXNzLiBZb3UgY2FuIGFsc28gIgorInNwZWNpZnkgYSBncm91cCBieSBhcHBlbmRpbmcgYSBCPDo+LCB0aGVuIHRoZSBncm91cCBvciBnaWQgaW4gdGhlIHNhbWUgd2F5ICIKKyJhcyB5b3Ugd291bGQgZm9yIHRoZSBgY2hvd24nIGNvbW1hbmQgKEk8dXNlcj5CPDo+STxncm91cD4pLiAgSWYgYSB1c2VyIGlzICIKKyJzcGVjaWZpZWQgd2l0aG91dCBhIGdyb3VwLCB0aGUgcHJpbWFyeSBHSUQgZm9yIHRoYXQgdXNlciBpcyB1c2VkLiAgV2hlbiAiCisidXNpbmcgdGhpcyBvcHRpb24geW91IG11c3QgcmVhbGl6ZSB0aGF0IHRoZSBwcmltYXJ5IGFuZCBzdXBwbGVtZW50YWwgZ3JvdXBzICIKKyJhcmUgc2V0IGFzIHdlbGwsIGV2ZW4gaWYgdGhlIEI8LS1ncm91cD4gb3B0aW9uIGlzIG5vdCBzcGVjaWZpZWQuIFRoZSBCPC0tIgorImdyb3VwPiBvcHRpb24gaXMgb25seSBmb3IgZ3JvdXBzIHRoYXQgdGhlIHVzZXIgaXNuJ3Qgbm9ybWFsbHkgYSBtZW1iZXIgb2YgIgorIihsaWtlIGFkZGluZyBwZXIgcHJvY2VzcyBncm91cCBtZW1iZXJzaGlwIGZvciBnZW5lcmljIHVzZXJzIGxpa2UgQjxub2JvZHk+KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTk1CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LXI+LCBCPC0tY2hyb290PiBJPHJvb3Q+IgorbXNnc3RyICJCPC0tbmV3PiB8IEI8LS1vbGQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjIwMQorbXNnaWQgIiIKKyJDaGRpciBhbmQgY2hyb290IHRvIEk8cm9vdD4gYmVmb3JlIHN0YXJ0aW5nIHRoZSBwcm9jZXNzLiBQbGVhc2Ugbm90ZSB0aGF0ICIKKyJ0aGUgcGlkZmlsZSBpcyBhbHNvIHdyaXR0ZW4gYWZ0ZXIgdGhlIGNocm9vdC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjAxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LWQ+LCBCPC0tY2hkaXI+IEk8cGF0aD4iCittc2dzdHIgIkI8LS1hbHRkaXI+IEk8ZGlyZXTDs3Jpbz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjA5Cittc2dpZCAiIgorIkNoZGlyIHRvIEk8cGF0aD4gYmVmb3JlIHN0YXJ0aW5nIHRoZSBwcm9jZXNzLiBUaGlzIGlzIGRvbmUgYWZ0ZXIgdGhlIGNocm9vdCAiCisiaWYgdGhlIEI8LXI+fEI8LS1jaHJvb3Q+IG9wdGlvbiBpcyBzZXQuIFdoZW4gbm90IHNwZWNpZmllZCwgc3RhcnQtc3RvcC0iCisiZGFlbW9uIHdpbGwgY2hkaXIgdG8gdGhlIHJvb3QgZGlyZWN0b3J5IGJlZm9yZSBzdGFydGluZyB0aGUgcHJvY2Vzcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjA5CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LWI+LCBCPC0tYmFja2dyb3VuZD4iCittc2dzdHIgIkI8LS1uZXc+IHwgQjwtLW9sZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjIxCittc2dpZCAiIgorIlR5cGljYWxseSB1c2VkIHdpdGggcHJvZ3JhbXMgdGhhdCBkb24ndCBkZXRhY2ggb24gdGhlaXIgb3duLiBUaGlzIG9wdGlvbiAiCisid2lsbCBmb3JjZSBCPHN0YXJ0LXN0b3AtZGFlbW9uPiB0byBmb3JrIGJlZm9yZSBzdGFydGluZyB0aGUgcHJvY2VzcywgYW5kICIKKyJmb3JjZSBpdCBpbnRvIHRoZSBiYWNrZ3JvdW5kLiAgQjxXQVJOSU5HOiBzdGFydC1zdG9wLWRhZW1vbj4gY2Fubm90IGNoZWNrICIKKyJ0aGUgZXhpdCBzdGF0dXMgaWYgdGhlIHByb2Nlc3MgZmFpbHMgdG8gZXhlY3V0ZSBmb3IgQjxhbnk+IHJlYXNvbi4gVGhpcyBpcyBhICIKKyJsYXN0IHJlc29ydCwgYW5kIGlzIG9ubHkgbWVhbnQgZm9yIHByb2dyYW1zIHRoYXQgZWl0aGVyIG1ha2Ugbm8gc2Vuc2UgIgorImZvcmtpbmcgb24gdGhlaXIgb3duLCBvciB3aGVyZSBpdCdzIG5vdCBmZWFzaWJsZSB0byBhZGQgdGhlIGNvZGUgZm9yIHRoZW0gdG8gIgorImRvIHRoaXMgdGhlbXNlbHZlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjIxCisjLCBuby13cmFwCittc2dpZCAiQjwtTj4sIEI8LS1uaWNlbGV2ZWw+IEk8aW50PiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjIyNAorbXNnaWQgIlRoaXMgYWx0ZXJzIHRoZSBwcmlvcml0eSBvZiB0aGUgcHJvY2VzcyBiZWZvcmUgc3RhcnRpbmcgaXQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjIyNAorIywgbm8td3JhcAorbXNnaWQgIkI8LVA+LCBCPC0tcHJvY3NjaGVkPiBJPHBvbGljeT5CPDo+STxwcmlvcml0eT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyMzAKK21zZ2lkICIiCisiVGhpcyBhbHRlcnMgdGhlIHByb2Nlc3Mgc2NoZWR1bGVyIHBvbGljeSBhbmQgcHJpb3JpdHkgb2YgdGhlIHByb2Nlc3MgYmVmb3JlICIKKyJzdGFydGluZyBpdC4gVGhlIHByaW9yaXR5IGNhbiBiZSBvcHRpb25hbGx5IHNwZWNpZmllZCBieSBhcHBlbmRpbmcgYSBCPDo+ICIKKyJmb2xsb3dlZCBieSB0aGUgdmFsdWUuIFRoZSBkZWZhdWx0IEk8cHJpb3JpdHk+IGlzIDAuIFRoZSBjdXJyZW50bHkgc3VwcG9ydGVkICIKKyJwb2xpY3kgdmFsdWVzIGFyZSBCPG90aGVyPiwgQjxmaWZvPiBhbmQgQjxycj4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjIzMAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1JPiwgQjwtLWlvc2NoZWQ+IEk8Y2xhc3M+Qjw6Pkk8cHJpb3JpdHk+IgorbXNnc3RyICJCPGRwa2cgLWk+IHwgQjwtLWluc3RhbGw+IEk8YXJxdWl2b19kb19wYWNvdGU+Li4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjIzNworbXNnaWQgIiIKKyJUaGlzIGFsdGVycyB0aGUgSU8gc2NoZWR1bGVyIGNsYXNzIGFuZCBwcmlvcml0eSBvZiB0aGUgcHJvY2VzcyBiZWZvcmUgIgorInN0YXJ0aW5nIGl0LiBUaGUgcHJpb3JpdHkgY2FuIGJlIG9wdGlvbmFsbHkgc3BlY2lmaWVkIGJ5IGFwcGVuZGluZyBhIEI8Oj4gIgorImZvbGxvd2VkIGJ5IHRoZSB2YWx1ZS4gVGhlIGRlZmF1bHQgSTxwcmlvcml0eT4gaXMgNCwgdW5sZXNzIEk8Y2xhc3M+IGlzICIKKyJCPGlkbGU+LCB0aGVuIEk8cHJpb3JpdHk+IHdpbGwgYWx3YXlzIGJlIDcuIFRoZSBjdXJyZW50bHkgc3VwcG9ydGVkIHZhbHVlcyAiCisiZm9yIEk8Y2xhc3M+IGFyZSBCPGlkbGU+LCBCPGJlc3QtZWZmb3J0PiBhbmQgQjxyZWFsLXRpbWU+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyMzcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1rPiwgQjwtLXVtYXNrPiBJPG1hc2s+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjQwCittc2dpZCAiVGhpcyBzZXRzIHRoZSB1bWFzayBvZiB0aGUgcHJvY2VzcyBiZWZvcmUgc3RhcnRpbmcgaXQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjI0MAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1tPiwgQjwtLW1ha2UtcGlkZmlsZT4iCittc2dzdHIgIkI8LUI+fEI8LS1hdXRvLWRlY29uZmlndXJlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyNTUKK21zZ2lkICIiCisiVXNlZCB3aGVuIHN0YXJ0aW5nIGEgcHJvZ3JhbSB0aGF0IGRvZXMgbm90IGNyZWF0ZSBpdHMgb3duIHBpZCBmaWxlLiBUaGlzICIKKyJvcHRpb24gd2lsbCBtYWtlIEI8c3RhcnQtc3RvcC1kYWVtb24+IGNyZWF0ZSB0aGUgZmlsZSByZWZlcmVuY2VkIHdpdGggQjwtLSIKKyJwaWRmaWxlPiBhbmQgcGxhY2UgdGhlIHBpZCBpbnRvIGl0IGp1c3QgYmVmb3JlIGV4ZWN1dGluZyB0aGUgcHJvY2Vzcy4gTm90ZSwgIgorInRoZSBmaWxlIHdpbGwgbm90IGJlIHJlbW92ZWQgd2hlbiBzdG9wcGluZyB0aGUgcHJvZ3JhbS4gIEI8Tk9URTo+IFRoaXMgIgorImZlYXR1cmUgbWF5IG5vdCB3b3JrIGluIGFsbCBjYXNlcy4gTW9zdCBub3RhYmx5IHdoZW4gdGhlIHByb2dyYW0gYmVpbmcgIgorImV4ZWN1dGVkIGZvcmtzIGZyb20gaXRzIG1haW4gcHJvY2Vzcy4gQmVjYXVzZSBvZiB0aGlzLCBpdCBpcyB1c3VhbGx5IG9ubHkgIgorInVzZWZ1bCB3aGVuIGNvbWJpbmVkIHdpdGggdGhlIEI8LS1iYWNrZ3JvdW5kPiBvcHRpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjU4Cittc2dpZCAiUHJpbnQgdmVyYm9zZSBpbmZvcm1hdGlvbmFsIG1lc3NhZ2VzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjI3MAorbXNnaWQgIiIKKyJUaGUgcmVxdWVzdGVkIGFjdGlvbiB3YXMgcGVyZm9ybWVkLiBJZiBCPC0tb2tub2RvPiB3YXMgc3BlY2lmaWVkLCBpdCdzIGFsc28gIgorInBvc3NpYmxlIHRoYXQgbm90aGluZyBoYWQgdG8gYmUgZG9uZS4gIFRoaXMgY2FuIGhhcHBlbiB3aGVuIEI8LS1zdGFydD4gd2FzICIKKyJzcGVjaWZpZWQgYW5kIGEgbWF0Y2hpbmcgcHJvY2VzcyB3YXMgYWxyZWFkeSBydW5uaW5nLCBvciB3aGVuIEI8LS1zdG9wPiB3YXMgIgorInNwZWNpZmllZCBhbmQgdGhlcmUgd2VyZSBubyBtYXRjaGluZyBwcm9jZXNzZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6Mjc1Cittc2dpZCAiSWYgQjwtLW9rbm9kbz4gd2FzIG5vdCBzcGVjaWZpZWQgYW5kIG5vdGhpbmcgd2FzIGRvbmUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjgzCittc2dpZCAiIgorIklmIEI8LS1zdG9wPiBhbmQgQjwtLXJldHJ5PiB3ZXJlIHNwZWNpZmllZCwgYnV0IHRoZSBlbmQgb2YgdGhlIHNjaGVkdWxlIHdhcyAiCisicmVhY2hlZCBhbmQgdGhlIHByb2Nlc3NlcyB3ZXJlIHN0aWxsIHJ1bm5pbmcuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjI4MyBzdGFydC1zdG9wLWRhZW1vbi44OjI5NQorIywgbm8td3JhcAorbXNnaWQgIkI8Mz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyODYKK21zZ2lkICJBbnkgb3RoZXIgZXJyb3IuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6Mjg5Cittc2dpZCAiIgorIldoZW4gdXNpbmcgdGhlIEI8LS1zdGF0dXM+IGNvbW1hbmQsIHRoZSBmb2xsb3dpbmcgc3RhdHVzIGNvZGVzIGFyZSByZXR1cm5lZDoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyOTIKK21zZ2lkICJQcm9ncmFtIGlzIHJ1bm5pbmcuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6Mjk1Cittc2dpZCAiUHJvZ3JhbSBpcyBub3QgcnVubmluZyBhbmQgdGhlIHBpZCBmaWxlIGV4aXN0cy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyOTgKK21zZ2lkICJQcm9ncmFtIGlzIG5vdCBydW5uaW5nLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyOTgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPDQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MzAxCittc2dpZCAiVW5hYmxlIHRvIGRldGVybWluZSBwcm9ncmFtIHN0YXR1cy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODozMDUKK21zZ2lkICIiCisiU3RhcnQgdGhlIEI8Zm9vZD4gZGFlbW9uLCB1bmxlc3Mgb25lIGlzIGFscmVhZHkgcnVubmluZyAoYSBwcm9jZXNzIG5hbWVkICIKKyJmb29kLCBydW5uaW5nIGFzIHVzZXIgZm9vZCwgd2l0aCBwaWQgaW4gZm9vZC5waWQpOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjMwOAorIywgbm8td3JhcAorbXNnaWQgInN0YXJ0LXN0b3AtZGFlbW9uIC0tc3RhcnQgLS1va25vZG8gLS11c2VyIGZvb2QgLS1uYW1lIGZvb2QgLS1waWRmaWxlIC92YXIvcnVuL2Zvb2QucGlkIC0tc3RhcnRhcyAvdXNyL3NiaW4vZm9vZCAtLWNodWlkIGZvb2QgLS0gLS1kYWVtb25cbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjMxMQorbXNnaWQgIlNlbmQgQjxTSUdURVJNPiB0byBCPGZvb2Q+IGFuZCB3YWl0IHVwIHRvIDUgc2Vjb25kcyBmb3IgaXQgdG8gc3RvcDoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODozMTQKKyMsIG5vLXdyYXAKK21zZ2lkICJzdGFydC1zdG9wLWRhZW1vbiAtLXN0b3AgLS1va25vZG8gLS11c2VyIGZvb2QgLS1uYW1lIGZvb2QgLS1waWRmaWxlIC92YXIvcnVuL2Zvb2QucGlkIC0tcmV0cnkgNVxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MzE3Cittc2dpZCAiRGVtb25zdHJhdGlvbiBvZiBhIGN1c3RvbSBzY2hlZHVsZSBmb3Igc3RvcHBpbmcgQjxmb29kPjoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODozMjAKKyMsIG5vLXdyYXAKK21zZ2lkICJzdGFydC1zdG9wLWRhZW1vbiAtLXN0b3AgLS1va25vZG8gLS11c2VyIGZvb2QgLS1uYW1lIGZvb2QgLS1waWRmaWxlIC92YXIvcnVuL2Zvb2QucGlkIC0tcmV0cnk9VEVSTS8zMC9LSUxMLzVcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjMyNgorbXNnaWQgIiIKKyJNYXJlayBNaWNoYWxraWV3aWN6IEU8bHQ+bWFyZWttQGkxN2xpbnV4Yi5pc3RzLnB3ci53cm9jLnBsRTxndD4gYmFzZWQgb24gYSAiCisicHJldmlvdXMgdmVyc2lvbiBieSBJYW4gSmFja3NvbiBFPGx0PmlhbkBjaGlhcmsuZ3JlZW5lbmQub3JnLnVrRTxndD4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MzI4Cittc2dpZCAiIgorIk1hbnVhbCBwYWdlIGJ5IEtsZWUgRGllbmVzIEU8bHQ+a2xlZUBtaXQuZWR1RTxndD4sIHBhcnRpYWxseSByZWZvcm1hdHRlZCBieSAiCisiSWFuIEphY2tzb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRICisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6OAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJ1cGRhdGUtYWx0ZXJuYXRpdmVzIgorbXNnc3RyICJ1cGRhdGUtYWx0ZXJuYXRpdmVzIC0tYXV0byB2aSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjExCittc2dpZCAiIgorInVwZGF0ZS1hbHRlcm5hdGl2ZXMgLSBtYWludGFpbiBzeW1ib2xpYyBsaW5rcyBkZXRlcm1pbmluZyBkZWZhdWx0IGNvbW1hbmRzIgorbXNnc3RyICIiCisidXBkYXRlLWFsdGVybmF0aXZlcyAtIG1hbnTDqW0gbGlnYcOnw7VlcyBzaW1iw7NsaWNhcyBkZXRlcm1pbmFuZG8gY29tYW5kb3MgIgorInBhZHLDtWVzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTUKKyMsIGZ1enp5Cittc2dpZCAiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBbSTxvcHRpb24+Li4uXSBJPGNvbW1hbmQ+IgorbXNnc3RyICJCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IFtJPG9wdMOnw7Vlcz5dIEI8LS1hbGw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjAKK21zZ2lkICIiCisiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBjcmVhdGVzLCByZW1vdmVzLCBtYWludGFpbnMgYW5kIGRpc3BsYXlzIGluZm9ybWF0aW9uICIKKyJhYm91dCB0aGUgc3ltYm9saWMgbGlua3MgY29tcHJpc2luZyB0aGUgRGViaWFuIGFsdGVybmF0aXZlcyBzeXN0ZW0uIgorbXNnc3RyICIiCisiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBjcmlhLCByZW1vdmUsIG1hbnTDqW0gZSBleGliZSBpbmZvcm1hw6fDo28gc29icmUgc29icmUgIgorImFzIGxpZ2HDp8O1ZXMgc2ltYsOzbGljYXMgcXVlIGVuZ2xvYmFtIG8gc2lzdGVtYSBkZSBhbHRlcm5hdGl2YXMgRGViaWFuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjI4CisjLCBmdXp6eQorbXNnaWQgIiIKKyJJdCBpcyBwb3NzaWJsZSBmb3Igc2V2ZXJhbCBwcm9ncmFtcyBmdWxmaWxsaW5nIHRoZSBzYW1lIG9yIHNpbWlsYXIgZnVuY3Rpb25zICIKKyJ0byBiZSBpbnN0YWxsZWQgb24gYSBzaW5nbGUgc3lzdGVtIGF0IHRoZSBzYW1lIHRpbWUuICBGb3IgZXhhbXBsZSwgbWFueSAiCisic3lzdGVtcyBoYXZlIHNldmVyYWwgdGV4dCBlZGl0b3JzIGluc3RhbGxlZCBhdCBvbmNlLiAgVGhpcyBnaXZlcyBjaG9pY2UgdG8gIgorInRoZSB1c2VycyBvZiBhIHN5c3RlbSwgYWxsb3dpbmcgZWFjaCB0byB1c2UgYSBkaWZmZXJlbnQgZWRpdG9yLCBpZiBkZXNpcmVkLCAiCisiYnV0IG1ha2VzIGl0IGRpZmZpY3VsdCBmb3IgYSBwcm9ncmFtIHRvIG1ha2UgYSBnb29kIGNob2ljZSBmb3IgYW4gZWRpdG9yIHRvICIKKyJpbnZva2UgaWYgdGhlIHVzZXIgaGFzIG5vdCBzcGVjaWZpZWQgYSBwYXJ0aWN1bGFyIHByZWZlcmVuY2UuIgorbXNnc3RyICIiCisiw4kgcG9zc8OtdmVsIHBhcmEgZGl2ZXJzb3MgcHJvZ3JhbWFzIHF1ZSBleGVjdXRhbSBhcyBtZXNtYXMgZnVuw6fDtWVzIG91IGZ1bsOnw7VlcyAiCisic2ltaWxhcmVzIHNlcmVtIGluc3RhbGFkb3MgZW0gdW0gw7puaWNvIHNpc3RlbWEgYW8gbWVzbW8gdGVtcG8uICBQb3IgZXhlbXBsbywgIgorIm11aXRvcyBzaXN0ZW1hcyBwb3NzdWVtIGRpdmVyc29zIGVkaXRvcmVzIGRlIHRleHRvIGluc3RhbGFkb3MuIElzdG8gZMOhIGEgIgorInBvc3NpYmlsaWRhZGUgZGUgZXNjb2xoYSBwYXJhIG9zIHVzdcOhcmlvcyBkbyBzaXN0ZW1hLCBwZXJtaXRpbmRvIGEgY2FkYSAiCisidXN1w6FyaW8gdXNhciB1bSBlZGl0b3IgZGlmZXJlbnRlLCBjYXNvIGRlc2VqYWRvLCBtYXMgZmF6IGNvbSBxdWUgc2VqYSAiCisiZGlmw61jaWwgcGFyYSB1bSBwcm9ncmFtYSBmYXplciB1bWEgYm9hIGVzY29saGEgZGUgdW0gZWRpdG9yIG8gcXVhbCBpbnZvY2FyICIKKyJjYXNvIG8gdXN1w6FyaW8gbsOjbyB0ZW5oYSBlc3BlY2lmaWNhZG8gdW0gZWRpdG9yIHBhcnRpY3VsYXIgZGUgc3VhICIKKyJwcmVmZXLDqm5jaWEuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NTAKKyMsIGZ1enp5Cittc2dpZCAiIgorIkRlYmlhbidzIGFsdGVybmF0aXZlcyBzeXN0ZW0gYWltcyB0byBzb2x2ZSB0aGlzIHByb2JsZW0uICBBIGdlbmVyaWMgbmFtZSBpbiAiCisidGhlIGZpbGVzeXN0ZW0gaXMgc2hhcmVkIGJ5IGFsbCBmaWxlcyBwcm92aWRpbmcgaW50ZXJjaGFuZ2VhYmxlICIKKyJmdW5jdGlvbmFsaXR5LiAgVGhlIGFsdGVybmF0aXZlcyBzeXN0ZW0gYW5kIHRoZSBzeXN0ZW0gYWRtaW5pc3RyYXRvciAiCisidG9nZXRoZXIgZGV0ZXJtaW5lIHdoaWNoIGFjdHVhbCBmaWxlIGlzIHJlZmVyZW5jZWQgYnkgdGhpcyBnZW5lcmljIG5hbWUuICAiCisiRm9yIGV4YW1wbGUsIGlmIHRoZSB0ZXh0IGVkaXRvcnMgQjxlZD4oMSkgIGFuZCBCPG52aT4oMSkgIGFyZSBib3RoIGluc3RhbGxlZCAiCisib24gdGhlIHN5c3RlbSwgdGhlIGFsdGVybmF0aXZlcyBzeXN0ZW0gd2lsbCBjYXVzZSB0aGUgZ2VuZXJpYyBuYW1lIEk8L3Vzci8iCisiYmluL2VkaXRvcj4gdG8gcmVmZXIgdG8gSTwvdXNyL2Jpbi9udmk+IGJ5IGRlZmF1bHQuIFRoZSBzeXN0ZW0gYWRtaW5pc3RyYXRvciAiCisiY2FuIG92ZXJyaWRlIHRoaXMgYW5kIGNhdXNlIGl0IHRvIHJlZmVyIHRvIEk8L3Vzci9iaW4vZWQ+IGluc3RlYWQsIGFuZCB0aGUgIgorImFsdGVybmF0aXZlcyBzeXN0ZW0gd2lsbCBub3QgYWx0ZXIgdGhpcyBzZXR0aW5nIHVudGlsIGV4cGxpY2l0bHkgcmVxdWVzdGVkICIKKyJ0byBkbyBzby4iCittc2dzdHIgIiIKKyJPIHNpc3RlbWEgZGUgYWx0ZXJuYXRpdmFzIERlYmlhbiBwcmV0ZW5kZSBzb2x1Y2luYXIgZXN0ZSBwcm9ibGVtYS4gVW0gbm9tZSAiCisiZ2Vuw6lyaWNvIG5vIHNpc3RlbWEgZGUgYXJxdWl2b3Mgw6kgY29tcGFydGlsaGFkbyBwb3IgdG9kb3Mgb3MgYXJxdWl2b3MgIgorInByb3ZlbmRvIGZ1bmNpb25hbGlkYWRlIGVxdWl2YWxlbnRlLiBPIHNpc3RlbWEgZGUgYWx0ZXJuYXRpdmFzIGUgbyAiCisiYWRtaW5pc3RyYWRvciBkbyBzaXN0ZW1hIGp1bnRvcyBkZXRlcm1pbmFtIHF1YWwgYXJxdWl2byBhdHVhbCDDqSByZWZlcmVuY2lhZG8gIgorInBvciBlc3NlIG5vbWUgZ2Vuw6lyaWNvLiBQb3IgZXhlbXBsbywgY2FzbyBvcyBlZGl0b3JlcyBkZSB0ZXh0byBCPGVkPigxKSAgZSAiCisiQjxudmk+KDEpICBlc3RlamFtIGFtYm9zIGluc3RhbGFkb3Mgbm8gc2lzdGVtYSwgbyBzaXN0ZW1hIGRlIGFsdGVybmF0aXZhcyAiCisiZmFyw6EgY29tIHF1ZSBvIG5vbWUgZ2Vuw6lyaWNvIEk8L3Vzci9iaW4vZWRpdG9yPiByZWZpcmEtc2UgYSBJPC91c3IvYmluL252aT4gIgorInBvciBwYWRyw6NvLiBPIGFkbWluaXN0cmFkb3IgZG8gc2lzdGVtYSBwb2RlIHNvYnJlZXNjcmV2ZXIgaXN0byBlIGZhemVyIGNvbSAiCisicXVlIHJlZmlyYS1zZSBhIEk8L3Vzci9iaW4vZWQ+IGUgbyBzaXN0ZW1hIGRlIGFsdGVybmF0aXZhcyBuw6NvIGlyw6EgYWx0ZXJhciAiCisiZXN0YSBjb25maWd1cmHDp8OjbyBhdMOpIHF1ZSBleHBsaWNpdGFtZW50ZSByZXF1aXNpdGFkbyBhIGZhesOqLWxvLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjYwCisjLCBmdXp6eQorbXNnaWQgIiIKKyJUaGUgZ2VuZXJpYyBuYW1lIGlzIG5vdCBhIGRpcmVjdCBzeW1ib2xpYyBsaW5rIHRvIHRoZSBzZWxlY3RlZCBhbHRlcm5hdGl2ZS4gICIKKyJJbnN0ZWFkLCBpdCBpcyBhIHN5bWJvbGljIGxpbmsgdG8gYSBuYW1lIGluIHRoZSBJPGFsdGVybmF0aXZlcz4gIgorIkk8ZGlyZWN0b3J5Piwgd2hpY2ggaW4gdHVybiBpcyBhIHN5bWJvbGljIGxpbmsgdG8gdGhlIGFjdHVhbCBmaWxlICIKKyJyZWZlcmVuY2VkLiAgVGhpcyBpcyBkb25lIHNvIHRoYXQgdGhlIHN5c3RlbSBhZG1pbmlzdHJhdG9yJ3MgY2hhbmdlcyBjYW4gYmUgIgorImNvbmZpbmVkIHdpdGhpbiB0aGUgSTwvZXRjPiBkaXJlY3Rvcnk6IHRoZSBGSFMgKHEudi4pIGdpdmVzIHJlYXNvbnMgd2h5IHRoaXMgIgorImlzIGEgR29vZCBUaGluZy4iCittc2dzdHIgIiIKKyJPIG5vbWUgZ2Vuw6lyaWNvIG7Do28gw6kgdW1hIGxpZ2HDp8OjbyBzaW1iw7NsaWNhIGRpcmV0YSBwYXJhIGEgYWx0ZXJuYXRpdmEgIgorInNlbGVjaW9uYWRhLiBBbyBpbnbDqXMgZGlzc28sIMOpIHVtYSBsaWdhw6fDo28gc2ltYsOzbGljYSBwYXJhIHVtIG5vbWUgbm8gIgorIkk8ZGlyZXTDs3Jpbz4sIEk8YWx0ZXJuYXRpdmVzPiBvIHF1YWwgw6ksIHBvciBzdWEgdmV6LCB1bWEgbGlnYcOnw6NvIHNpbWLDs2xpY2EgIgorInBhcmEgbyBhcnF1aXZvIGF0dWFsbWVudGUgcmVmZXJlbmNpYWRvLiBJc3RvIMOpIGZlaXRvIHBhcmEgcXVlIGFzIG11ZGFuw6dhcyBkbyAiCisiYWRtaW5pc3RyYWRvciBkbyBzaXN0ZW1hIHBvc3NhbSBzZXIgY29uZmluYWRhcyBkZW50cm8gZG8gZGlyZXTDs3JpbyBJPC9ldGM+IDogIgorImEgRkhTIChxLnYuKSBkw6EgcmF6w7VlcyBkZSBwb3JxdcOqIGlzdG8gw6kgdW0gQm9hIENvaXNhLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjcyCisjLCBmdXp6eQorbXNnaWQgIiIKKyJXaGVuIGVhY2ggcGFja2FnZSBwcm92aWRpbmcgYSBmaWxlIHdpdGggYSBwYXJ0aWN1bGFyIGZ1bmN0aW9uYWxpdHkgaXMgIgorImluc3RhbGxlZCwgY2hhbmdlZCBvciByZW1vdmVkLCBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IGlzIGNhbGxlZCB0byB1cGRhdGUgIgorImluZm9ybWF0aW9uIGFib3V0IHRoYXQgZmlsZSBpbiB0aGUgYWx0ZXJuYXRpdmVzIHN5c3RlbS4gIEI8dXBkYXRlLSIKKyJhbHRlcm5hdGl2ZXM+IGlzIHVzdWFsbHkgY2FsbGVkIGZyb20gdGhlIEI8cG9zdGluc3Q+IChjb25maWd1cmUpIG9yIEI8cHJlcm0+ICIKKyIoaW5zdGFsbCkgc2NyaXB0cyBpbiBEZWJpYW4gcGFja2FnZXMuIgorbXNnc3RyICIiCisiUXVhbmRvIGNhZGEgcGFjb3RlIHByb3ZlbmRvIHVtIGFycXVpdm8gY29tIHVtYSBmdW5jaW9uYWxpZGFkZSBwYXJ0aWN1bGFyIMOpICIKKyJpbnN0YWxhZG8sIG1vZGlmaWNkbyBvdSByZW1vdmlkbyBvLCBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IMOpIGNoYW1hZG8gcGFyYSAiCisiYXR1YWxpemFyIGEgaW5mb3JtYcOnw6NvIHNvYnJlIGVzdGUgYXJxaXZvIG5vIHNpc3RlbWEgZGUgYWx0ZXJuYXRpdmFzLiAgIgorIkI8dXBkYXRlLWFsdGVybmF0aXZlcz4gw6kgZ2VyYWxtZW50ZSBjaGFtYWRvIGEgcGFydGlyIGRlIHVtIHNjcmlwdCAiCisiQjxwb3N0aW5zdD4gb3UgQjxwcmVybT4gZW0gcGFjb3RlcyBEZWJpYW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6OTEKKyMsIGZ1enp5Cittc2dpZCAiIgorIkl0IGlzIG9mdGVuIHVzZWZ1bCBmb3IgYSBudW1iZXIgb2YgYWx0ZXJuYXRpdmVzIHRvIGJlIHN5bmNocm9uaXNlZCwgc28gdGhhdCAiCisidGhleSBhcmUgY2hhbmdlZCBhcyBhIGdyb3VwOyBmb3IgZXhhbXBsZSwgd2hlbiBzZXZlcmFsIHZlcnNpb25zIG9mIHRoZSBCPHZpPiIKKyIoMSkgIGVkaXRvciBhcmUgaW5zdGFsbGVkLCB0aGUgbWFuIHBhZ2UgcmVmZXJlbmNlZCBieSBJPC91c3Ivc2hhcmUvbWFuL21hbjEvIgorInZpLjE+IHNob3VsZCBjb3JyZXNwb25kIHRvIHRoZSBleGVjdXRhYmxlIHJlZmVyZW5jZWQgYnkgSTwvdXNyL2Jpbi92aT4uICAiCisiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBoYW5kbGVzIHRoaXMgYnkgbWVhbnMgb2YgSTxtYXN0ZXI+IGFuZCBJPHNsYXZlPiAiCisibGlua3M7IHdoZW4gdGhlIG1hc3RlciBpcyBjaGFuZ2VkLCBhbnkgYXNzb2NpYXRlZCBzbGF2ZXMgYXJlIGNoYW5nZWQgdG9vLiAgQSAiCisibWFzdGVyIGxpbmsgYW5kIGl0cyBhc3NvY2lhdGVkIHNsYXZlcyBtYWtlIHVwIGEgSTxsaW5rPiBJPGdyb3VwPi4iCittc2dzdHIgIiIKKyJJc3RvIMOpIGdlcmFsbWVudGUgw7p0aWwgcGFyYSBxdWUgZGl2ZXJzYXMgYWx0ZXJuYXRpdmFzIHNlamFtIHNpbmNyb25pemFkYXMsICIKKyJhc3NpbSBlbGFzIHPDo28gbW9kaWZpY2FkYXMgY29tbyB1bSBncnVwbzsgcG9yIGV4ZW1wbG8sIHF1YW5kbyBkaXZlcnNhcyAiCisidmVyc8O1ZXMgZG8gZWRpdG9yIEI8dmk+KDEpICBlc3TDo28gaW5zdGFsYWRhcywgYSBww6FnaW5hIGRlIG1hbnVhbCAiCisicmVmZXJlbmNpYWRhIHBvciBJPC91c3Ivc2hhcmUvbWFuL21hbjEvdmkuMT4gZGV2ZXLDoSBjb3JyZXNwb25kZXIgYW8gIgorImV4ZWN1dMOhdmVsIHJlZmVyZW5jaWFkbyBwb3IgSTwvdXNyL2Jpbi92aT4uICBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IGdlcmVuY2lhICIKKyJpc3NvIHBvciBtZWlvIGRlIGxpZ2HDp8O1ZXMgSTxtYXN0ZXI+IGUgSTxzbGF2ZT4gKG1lc3RyZSBlIGVzY3JhZG8pOyBxdWFuZG8gbyAiCisibWFzdGVyIMOpIG1vZGlmaWNhZG8sIHF1YWlzcXVlciBzbGF2ZXMgYXNzb2NpYWRvcyBzw6NvIHRhbWLDqW0gbW9kaWZpY2Fkb3MuICAiCisiVW1hIGxpZ2HDp8OjbyBtYXN0ZXIgZSBzZXVzIHNsYXZlcyBhc3NvY2lhZG9zIGNvbnN0aXR1ZW0gdW1hIEEgbWFzdGVyIGxpbmsgYW5kICIKKyJpdHMgYXNzb2NpYXRlZCBzbGF2ZXMgbWFrZSB1cCBhIEk8bGluaz4gSTxncm91cD4uICAob3UgbGlnYcOnw6NvIGVtIGdydXBvKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxMDAKKyMsIGZ1enp5Cittc2dpZCAiIgorIkVhY2ggbGluayBncm91cCBpcywgYXQgYW55IGdpdmVuIHRpbWUsIGluIG9uZSBvZiB0d28gbW9kZXM6IGF1dG9tYXRpYyBvciAiCisibWFudWFsLiAgV2hlbiBhIGdyb3VwIGlzIGluIGF1dG9tYXRpYyBtb2RlLCB0aGUgYWx0ZXJuYXRpdmVzIHN5c3RlbSB3aWxsICIKKyJhdXRvbWF0aWNhbGx5IGRlY2lkZSwgYXMgcGFja2FnZXMgYXJlIGluc3RhbGxlZCBhbmQgcmVtb3ZlZCwgd2hldGhlciBhbmQgaG93ICIKKyJ0byB1cGRhdGUgdGhlIGxpbmtzLiAgSW4gbWFudWFsIG1vZGUsIHRoZSBhbHRlcm5hdGl2ZXMgc3lzdGVtIHdpbGwgcmV0YWluICIKKyJ0aGUgY2hvaWNlIG9mIHRoZSBhZG1pbmlzdHJhdG9yIGFuZCBhdm9pZCBjaGFuZ2luZyB0aGUgbGlua3MgKGV4Y2VwdCB3aGVuICIKKyJzb21ldGhpbmcgaXMgYnJva2VuKS4iCittc2dzdHIgIiIKKyJDYWRhIGxpZ2HDp8OjbyBlbSBncnVwbyBlc3TDoSwgZW0gdW0gZGFkbyBtb21lbnRvLCBlbSB1bSBkZSBkb2lzIG1vZG9zOiAiCisiYXV0b23DoXRpY28gb3UgbWFudWFsLiAgUXVhbmRvIHVtIGdydXBvIGVzdMOhIGVtIG1vZG8gYXV0b23DoXRpY28sIG8gc2lzdGVtYSBkZSAiCisiYWx0ZXJuYXRpdmFzIGlyw6EgYXV0b21hdGljYW1lbnRlIGRlY2lkaXIsIGEgbWVkaWRhIGVtIHF1ZSBvcyBwYWNvdGVzIHPDo28gIgorImluc3RhbGFkb3MgZSByZW1vdmlkb3MsIHNlIGlyw6EgYXR1YWxpemFyIGUgY29tbyBhdHVhbGl6YXIgYXMgbGlnYcOnw7Vlcy4gIE5vICIKKyJtb2RvIG1hbnVhbCwgbyBzaXN0ZW1hIGRlIGFsdGVybmF0aXZhcyBuw6NvIGlyw6EgbW9kaWZpY2FyIGFzIGxpZ2HDp8O1ZXM7IGVsZSAiCisiZGVpeGFyw6EgdG9kYXMgYXMgZGVjaXPDtWVzIHBhcmEgbyBhZG1pbmlzdHJhZG9yIGRvIHNpc3RlbWEuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTA5CisjLCBmdXp6eQorbXNnaWQgIiIKKyJMaW5rIGdyb3VwcyBhcmUgaW4gYXV0b21hdGljIG1vZGUgd2hlbiB0aGV5IGFyZSBmaXJzdCBpbnRyb2R1Y2VkIHRvIHRoZSAiCisic3lzdGVtLiAgSWYgdGhlIHN5c3RlbSBhZG1pbmlzdHJhdG9yIG1ha2VzIGNoYW5nZXMgdG8gdGhlIHN5c3RlbSdzIGF1dG9tYXRpYyAiCisic2V0dGluZ3MsIHRoaXMgd2lsbCBiZSBub3RpY2VkIHRoZSBuZXh0IHRpbWUgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBpcyBydW4gIgorIm9uIHRoZSBjaGFuZ2VkIGxpbmsncyBncm91cCwgYW5kIHRoZSBncm91cCB3aWxsIGF1dG9tYXRpY2FsbHkgYmUgc3dpdGNoZWQgdG8gIgorIm1hbnVhbCBtb2RlLiIKK21zZ3N0ciAiIgorIkxpZ2HDp8O1ZXMgZW0gZ3J1cG8gZXN0w6NvIGVtIG1vZG8gYXV0b23DoXRpY28gcXVhbmRvIGFzIG1lc21hcyBzw6NvIGludHJvZHV6aWRhcyAiCisibm8gc2lzdGVtYSBwZWxhIHByaW1laXJhIHZlei4gQ2FzbyBvIGFkbWluaXN0cmFkb3IgZG8gc2lzdGVtYSBmYcOnYSBtdWRhbsOnYXMgIgorImNvbmZpZ3VyYcOnw7VlcyBhdXRvbcOhdGljYXMgZG8gc2lzdGVtYSwgaXNzbyBzZXLDoSB2w6FsaWRvIG5hIHByw7N4aW1hIHZleiBxdWUgbyAiCisiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBmb3IgZXhlY3V0YWRvIG5hcyBsaWdhw6fDtWVzIGVtIGdydXBvIG1vZGlmaWNhZGFzLCBlIG8gIgorImdydXBvIGlyw6EgYXV0b21hdGljYW1lbnRlIHNlciBtb2RpZmljYWRvIHBhcmEgbyBtb2RvIG1hbnVhbC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxMTYKKyMsIGZ1enp5Cittc2dpZCAiIgorIkVhY2ggYWx0ZXJuYXRpdmUgaGFzIGEgSTxwcmlvcml0eT4gYXNzb2NpYXRlZCB3aXRoIGl0LiAgV2hlbiBhIGxpbmsgZ3JvdXAgaXMgIgorImluIGF1dG9tYXRpYyBtb2RlLCB0aGUgYWx0ZXJuYXRpdmVzIHBvaW50ZWQgdG8gYnkgbWVtYmVycyBvZiB0aGUgZ3JvdXAgd2lsbCAiCisiYmUgdGhvc2Ugd2hpY2ggaGF2ZSB0aGUgaGlnaGVzdCBwcmlvcml0eS4iCittc2dzdHIgIiIKKyJDYWRhIGFsdGVybmF0aXZhIHBvc3N1aSB1bWEgSTxwcmlvcml0eT4gKHByaW9yaWRhZGUpIGFzc29jaWFkYSBhIGVsYS4gICIKKyJRdWFuZG8gdW1hIGxpZ2HDp8OjbyBlbSBncnVwbyBlc3TDoSBlbSBtb2RvIGF1dG9tw6F0aWNvLCBhcyBhbHRlcm5hdGl2YXMgIgorImFwb250YWRhcyBwb3IgbWVtYnJvcyBkbyBncnVwbyBzZXLDo28gYXF1ZWxhcyBxdWUgcG9zc3VlbSBhIG1haW9yIHByaW9yaWRhZGUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTMzCisjLCBmdXp6eQorbXNnaWQgIiIKKyJXaGVuIHVzaW5nIHRoZSBCPC0tY29uZmlnPiBvcHRpb24sIEI8dXBkYXRlLWFsdGVybmF0aXZlcz4gd2lsbCBsaXN0IGFsbCBvZiAiCisidGhlIGNob2ljZXMgZm9yIHRoZSBsaW5rIGdyb3VwIG9mIHdoaWNoIGdpdmVuIEk8bmFtZT4gaXMgdGhlIG1hc3RlciAiCisiYWx0ZXJuYXRpdmUgbmFtZS4gVGhlIGN1cnJlbnQgY2hvaWNlIGlzIG1hcmtlZCB3aXRoIGEgJyonLiAgWW91IHdpbGwgdGhlbiBiZSAiCisicHJvbXB0ZWQgZm9yIHlvdXIgY2hvaWNlIHJlZ2FyZGluZyB0aGlzIGxpbmsgZ3JvdXAuICBEZXBlbmRpbmcgb24gdGhlIGNob2ljZSAiCisibWFkZSwgdGhlIGxpbmsgZ3JvdXAgbWlnaHQgbm8gbG9uZ2VyIGJlIGluIEk8YXV0bz4gbW9kZS4gWW91IHdpbGwgbmVlZCB0byAiCisidXNlIHRoZSBCPC0tYXV0bz4gb3B0aW9uIGluIG9yZGVyIHRvIHJldHVybiB0byB0aGUgYXV0b21hdGljIG1vZGUgKG9yIHlvdSAiCisiY2FuIHJlcnVuIEI8LS1jb25maWc+IGFuZCBzZWxlY3QgdGhlIGVudHJ5IG1hcmtlZCBhcyBhdXRvbWF0aWMpLiIKK21zZ3N0ciAiIgorIlF1YW5kbyB1c2FuZG8gYSBvcMOnw6NvIEk8LS1jb25maWc+ICwgbyBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IGxpc3RhcsOhIHRvZGFzICIKKyJhcyBvcMOnw7VlcyBwYXJhIGEgbGlnYcOnw6NvIGVtIGdydXBvIGRhIHF1YWwgdW0gZGFkbyBJPG5hbWU+IChub21lKSDDqSBhIGxpZ2HDp8OjbyAiCisibWFzdGVyLiAgTGhlIHNlcsOhIGVudMOjbyBxdWVzdGlvbmFkbyBwb3IgY2FkYSB1bWEgZGFzIG9ww6fDtWVzIGEgdXNhciBwYXJhIGEgIgorImxpZ2HDp8OjbyBlbSBncnVwby4gVW1hIHZleiBxdWUgdm9jw6ogZmHDp2EgdW1hIG11ZGFuw6dhLCBhIGxpZ2HDp8OjbyBlbSBncnVwbyBuw6NvICIKKyJlc3RhcsOhIG1haXMgbm8gbW9kbyBJPGF1dG8+IFZvY8OqIHByZWNpc2Fyw6EgdXNhciBhIG9ww6fDo28gSTwtLWF1dG8+IHBhcmEgcG9kZXIgIgorInJldG9ybmFyIGFvIGVzdGFkbyBhdXRvbcOhdGljby4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxMzcKKyMsIGZ1enp5Cittc2dpZCAiIgorIklmIHlvdSB3YW50IHRvIGNvbmZpZ3VyZSBub24taW50ZXJhY3RpdmVseSB5b3UgY2FuIHVzZSB0aGUgQjwtLXNldD4gb3B0aW9uICIKKyJpbnN0ZWFkIChzZWUgYmVsb3cpLiIKK21zZ3N0ciAiIgorIklmIHlvdSB3YW50IHRvIGNvbmZpZ3VyZSBub24taW50ZXJhY3RpdmlseSB5b3UgY2FuIHVzZSB0aGUgSTwtLXNldD4gb3B0aW9uICIKKyJpbnN0ZWFkIChzZWUgYmVsb3cpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE0OAorbXNnaWQgIiIKKyJEaWZmZXJlbnQgcGFja2FnZXMgcHJvdmlkaW5nIHRoZSBzYW1lIGZpbGUgbmVlZCB0byBkbyBzbyBCPGNvb3BlcmF0aXZlbHk+LiAgIgorIkluIG90aGVyIHdvcmRzLCB0aGUgdXNhZ2Ugb2YgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBpcyBCPG1hbmRhdG9yeT4gZm9yIGFsbCAiCisiaW52b2x2ZWQgcGFja2FnZXMgaW4gc3VjaCBjYXNlLiBJdCBpcyBub3QgcG9zc2libGUgdG8gb3ZlcnJpZGUgc29tZSBmaWxlIGluICIKKyJhIHBhY2thZ2UgdGhhdCBkb2VzIG5vdCBlbXBsb3kgdGhlIEI8dXBkYXRlLWFsdGVybmF0aXZlcz4gbWVjaGFuaXNtLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE0OQorIywgbm8td3JhcAorbXNnaWQgIlRFUk1JTk9MT0dZIgorbXNnc3RyICJURVJNSU5PTE9HSUEiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNTQKK21zZ2lkICIiCisiU2luY2UgdGhlIGFjdGl2aXRpZXMgb2YgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBhcmUgcXVpdGUgaW52b2x2ZWQsIHNvbWUgIgorInNwZWNpZmljIHRlcm1zIHdpbGwgaGVscCB0byBleHBsYWluIGl0cyBvcGVyYXRpb24uIgorbXNnc3RyICIiCisiVW1hIHZleiBxdWUgYXMgYXRpdmlkYWRlcyBkZSBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IHPDo28gYmVtIGVudm9sdmlkYXMsICIKKyJhbGd1bnMgdGVybW9zIGVzcGVjw61maWNvcyBhanVkYXLDo28gYSBleHBsaWNhciBzdWEgb3BlcmHDp8Ojby4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTU0CisjLCBuby13cmFwCittc2dpZCAiZ2VuZXJpYyBuYW1lIChvciBhbHRlcm5hdGl2ZSBsaW5rKSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTYwCisjLCBmdXp6eQorbXNnaWQgIiIKKyJBIG5hbWUsIGxpa2UgSTwvdXNyL2Jpbi9lZGl0b3I+LCB3aGljaCByZWZlcnMsIHZpYSB0aGUgYWx0ZXJuYXRpdmVzIHN5c3RlbSwgIgorInRvIG9uZSBvZiBhIG51bWJlciBvZiBmaWxlcyBvZiBzaW1pbGFyIGZ1bmN0aW9uLiIKK21zZ3N0ciAiIgorIlVtIG5vbWUsIGNvbW8gQSBuYW1lLCBsaWtlIEk8L3Vzci9iaW4vZWRpdG9yPiwgbyBxdWFsIHJlZmVyZS1zZSwgYXRyYXbDqXMgZG8gIgorInNpc3RlbWEgZGUgYWx0ZXJuYXRpdmFzLCBhIHVtIG91IGEgZGl2ZXJzb3MgYXJxdWl2b3MgZGUgZnVuw6fDo28gc2ltaWxhci4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTYwCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgImFsdGVybmF0aXZlIG5hbWUiCittc2dzdHIgImFsdGVybmF0aXZhIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTYzCittc2dpZCAiVGhlIG5hbWUgb2YgYSBzeW1ib2xpYyBsaW5rIGluIHRoZSBhbHRlcm5hdGl2ZXMgZGlyZWN0b3J5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE2MworIywgbm8td3JhcAorbXNnaWQgImFsdGVybmF0aXZlIChvciBhbHRlcm5hdGl2ZSBwYXRoKSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTY3CisjLCBmdXp6eQorbXNnaWQgIiIKKyJUaGUgbmFtZSBvZiBhIHNwZWNpZmljIGZpbGUgaW4gdGhlIGZpbGVzeXN0ZW0sIHdoaWNoIG1heSBiZSBtYWRlIGFjY2Vzc2libGUgIgorInZpYSBhIGdlbmVyaWMgbmFtZSB1c2luZyB0aGUgYWx0ZXJuYXRpdmVzIHN5c3RlbS4iCittc2dzdHIgIiIKKyJPIG5vbWUgZGUgdW0gYXJxdWl2byBlc3BlY8OtZmljbyBubyBzaXRlbWEgZGUgYXJxdWl2b3MsIG8gcXVhbCBwb2RlIHNlciAiCisiYWNlc3NhZG8gYXRyYXbDqXMgZGUgdW0gbm9tZSBnZW7DqXJpY28gdXNhbmRvIG8gc2lzdGVtYSBkZSBhbHRlcm5hdGl2YXMuIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE2NworIywgbm8td3JhcAorbXNnaWQgImFsdGVybmF0aXZlcyBkaXJlY3RvcnkiCittc2dzdHIgImRpcmV0w7NyaW8gZGUgYWx0ZXJuYXRpdmFzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTcyCisjLCBmdXp6eQorbXNnaWQgIkEgZGlyZWN0b3J5LCBieSBkZWZhdWx0IEk8L2V0Yy9hbHRlcm5hdGl2ZXM+LCBjb250YWluaW5nIHRoZSBzeW1saW5rcy4iCittc2dzdHIgIiIKKyJVbSBkaXJldMOzcmlvLCBwb3IgcGFkcsOjbyBJPC9ldGMvYWx0ZXJuYXRpdmVzPiwgY29udGVuZG8gYXMgbGlnYcOnw7VlcyAiCisic2ltYsOzbGljYXMuIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE3MgorIywgbm8td3JhcAorbXNnaWQgImFkbWluaXN0cmF0aXZlIGRpcmVjdG9yeSIKK21zZ3N0ciAiZGlyZXTDs3JpbyBhZG1pbmlzdHJhdGl2byIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE3OQorIywgZnV6enkKK21zZ2lkICIiCisiQSBkaXJlY3RvcnksIGJ5IGRlZmF1bHQgSTwvdmFyL2xpYi9kcGtnL2FsdGVybmF0aXZlcz4sIGNvbnRhaW5pbmcgQjx1cGRhdGUtIgorImFsdGVybmF0aXZlcz4nIHN0YXRlIGluZm9ybWF0aW9uLiIKK21zZ3N0ciAiIgorIlVtIGRpcmV0w7NyaW8sIHBvciBwYWRyw6NvIEk8L3Zhci9saWIvZHBrZy9hbHRlcm5hdGl2ZXM+LCBjb250ZW5kbyBpbmZvcm1hw6fDo28gIgorImRlIGVzdGFkbyBkZSBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+LiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNzkKKyMsIG5vLXdyYXAKK21zZ2lkICJsaW5rIGdyb3VwIgorbXNnc3RyICJsaWdhw6fDo28gZW0gZ3J1cG8iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxODIKKyMsIGZ1enp5Cittc2dpZCAiQSBzZXQgb2YgcmVsYXRlZCBzeW1saW5rcywgaW50ZW5kZWQgdG8gYmUgdXBkYXRlZCBhcyBhIGdyb3VwLiIKK21zZ3N0ciAiIgorIlVtIGNvbmp1bnRvIGRlIGxpZ2HDp8O1ZXMgc2ltYsOzbGljYXMgcmVsYWNpb25hZGFzLCBjb20gbyBpbnR1aXRvIGRlIHNlcmVtICIKKyJhdHVhbGl6YWRhcyBlbSBncnVwb3MuIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE4MgorIywgbm8td3JhcAorbXNnaWQgIm1hc3RlciBsaW5rIgorbXNnc3RyICJsaWdhw6fDo28gbWVzdHJlIChtYXN0ZXIgbGluaykiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxODYKKyMsIGZ1enp5Cittc2dpZCAiIgorIlRoZSBhbHRlcm5hdGl2ZSBsaW5rIGluIGEgbGluayBncm91cCB3aGljaCBkZXRlcm1pbmVzIGhvdyB0aGUgb3RoZXIgbGlua3MgaW4gIgorInRoZSBncm91cCBhcmUgY29uZmlndXJlZC4iCittc2dzdHIgIiIKKyJBIGxpZ2HDp8OjbyBlbSB1bWEgbGlnYcOnw6NvIGVtIGdydXBvIHF1ZSBkZXRlcm1pbmEgY29tbyBhcyBvdXRyYXMgbGlnYcOnw7VlcyBubyAiCisiZ3J1cG8gc8OjbyBjb25maWd1cmFkYXMuIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE4NgorIywgbm8td3JhcAorbXNnaWQgInNsYXZlIGxpbmsiCittc2dzdHIgImxpZ2HDp8OjbyBlc2NyYXZvIChzbGF2ZSBsaW5rKSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE5MAorIywgZnV6enkKK21zZ2lkICIiCisiQW4gYWx0ZXJuYXRpdmUgbGluayBpbiBhIGxpbmsgZ3JvdXAgd2hpY2ggaXMgY29udHJvbGxlZCBieSB0aGUgc2V0dGluZyBvZiAiCisidGhlIG1hc3RlciBsaW5rLiIKK21zZ3N0ciAiIgorIlVtYSBsaWdhw6fDo28gZW0gdW1hIGxpZ2HDp8OjbyBlbSBncnVwbyBxdWUgw6kgY29udHJvbGFkYSBwZWxhIGNvbmZpZ3VyYcOnw6NvIGRlICIKKyJ1bWEgbGlnYcOnw6NvIG1lc3RyZS4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTkwCisjLCBuby13cmFwCittc2dpZCAiYXV0b21hdGljIG1vZGUiCittc2dzdHIgIm1vZG8gYXV0b23DoXRpY28iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxOTYKKyMsIGZ1enp5Cittc2dpZCAiIgorIldoZW4gYSBsaW5rIGdyb3VwIGlzIGluIGF1dG9tYXRpYyBtb2RlLCB0aGUgYWx0ZXJuYXRpdmVzIHN5c3RlbSBlbnN1cmVzIHRoYXQgIgorInRoZSBsaW5rcyBpbiB0aGUgZ3JvdXAgcG9pbnQgdG8gdGhlIGhpZ2hlc3QgcHJpb3JpdHkgYWx0ZXJuYXRpdmUgYXBwcm9wcmlhdGUgIgorImZvciB0aGUgZ3JvdXAuIgorbXNnc3RyICIiCisiUXVhbmRvIHVtYSBsaWdhw6fDo28gZW0gZ3J1cG8gZXN0w6EgZW0gbW9kbyBhdXRvbcOhdGljbywgbyBzaXN0ZW1hIGRlICIKKyJhbHRlcm5hdGl2YXMgY2VydGlmaWNhLXNlIGVkIHF1ZSBhcyBsaWdhw6fDtWVzIG5vIGdydXBvIGFwb250YW0gcGFyYSBhcyAiCisiYWx0ZXJuYXRpdmFzIGRlIG1haXMgYWx0YSBwcmlvcmlkYWRlIGFwcm9wcmlhZGFzIHBhcmEgbyBncnVwby4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTk2CisjLCBuby13cmFwCittc2dpZCAibWFudWFsIG1vZGUiCittc2dzdHIgIm1vZG8gbWFudWFsIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjAxCisjLCBmdXp6eQorbXNnaWQgIiIKKyJXaGVuIGEgbGluayBncm91cCBpcyBpbiBtYW51YWwgbW9kZSwgdGhlIGFsdGVybmF0aXZlcyBzeXN0ZW0gd2lsbCBub3QgbWFrZSAiCisiYW55IGNoYW5nZXMgdG8gdGhlIHN5c3RlbSBhZG1pbmlzdHJhdG9yJ3Mgc2V0dGluZ3MuIgorbXNnc3RyICIiCisiUXVhbmRvIHVtYSBsaWdhw6fDo28gZW0gZ3J1cG8gZXN0w6EgZW0gbW9kbyBtYW51YWwsIG8gc2lzdGVtYSBkZSBhbHRlcm5hdGl2YXMgIgorIm7Do28gZmFyw6EgcXVhbHF1ZXIgbW9kaWZpY2HDp8OjbyBuYXMgY29uZmlndXJhw6fDtWVzIGRvIGFkbWluaXN0cmFkb3IgZG8gc2lzdGVtYS4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjAzCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1pbnN0YWxsPiBJPGxpbmsgbmFtZSBwYXRoIHByaW9yaXR5PiBbQjwtLXNsYXZlPiBJPGxpbmsgbmFtZSBwYXRoPl0uLi4iCittc2dzdHIgIkI8LS1pbnN0YWxsPiBJPGxpZ2HDp8OjbyBnZW7DqXJpY28gY2FtaW5obyBwcmk+IFtCPC0tc2xhdmU+IEk8c2xpZ2HDp8OjbyBzZ2Vuw6lyaWNvIHNjYW1pbmhvPl0gLi4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjIyCisjLCBmdXp6eQorbXNnaWQgIiIKKyJBZGQgYSBncm91cCBvZiBhbHRlcm5hdGl2ZXMgdG8gdGhlIHN5c3RlbS4gIEk8bGluaz4gaXMgdGhlIGdlbmVyaWMgbmFtZSBmb3IgIgorInRoZSBtYXN0ZXIgbGluaywgSTxuYW1lPiBpcyB0aGUgbmFtZSBvZiBpdHMgc3ltbGluayBpbiB0aGUgYWx0ZXJuYXRpdmVzICIKKyJkaXJlY3RvcnksIGFuZCBJPHBhdGg+IGlzIHRoZSBhbHRlcm5hdGl2ZSBiZWluZyBpbnRyb2R1Y2VkIGZvciB0aGUgbWFzdGVyICIKKyJsaW5rLiAgVGhlIGFyZ3VtZW50cyBhZnRlciBCPC0tc2xhdmU+IGFyZSB0aGUgZ2VuZXJpYyBuYW1lLCBzeW1saW5rIG5hbWUgaW4gIgorInRoZSBhbHRlcm5hdGl2ZXMgZGlyZWN0b3J5IGFuZCB0aGUgYWx0ZXJuYXRpdmUgcGF0aCBmb3IgYSBzbGF2ZSBsaW5rLiAgWmVybyAiCisib3IgbW9yZSBCPC0tc2xhdmU+IG9wdGlvbnMsIGVhY2ggZm9sbG93ZWQgYnkgdGhyZWUgYXJndW1lbnRzLCBtYXkgYmUgIgorInNwZWNpZmllZC4gTm90ZSB0aGF0IHRoZSBtYXN0ZXIgYWx0ZXJuYXRpdmUgbXVzdCBleGlzdCBvciB0aGUgY2FsbCB3aWxsICIKKyJmYWlsLiBIb3dldmVyIGlmIGEgc2xhdmUgYWx0ZXJuYXRpdmUgZG9lc24ndCBleGlzdCwgdGhlIGNvcnJlc3BvbmRpbmcgc2xhdmUgIgorImFsdGVybmF0aXZlIGxpbmsgd2lsbCBzaW1wbHkgbm90IGJlIGluc3RhbGxlZCAoYSB3YXJuaW5nIHdpbGwgc3RpbGwgYmUgIgorImRpc3BsYXllZCkuIElmIHNvbWUgcmVhbCBmaWxlIGlzIGluc3RhbGxlZCB3aGVyZSBhbiBhbHRlcm5hdGl2ZSBsaW5rIGhhcyB0byAiCisiYmUgaW5zdGFsbGVkLCBpdCBpcyBrZXB0IHVubGVzcyBCPC0tZm9yY2U+IGlzIHVzZWQuIgorbXNnc3RyICIiCisiQWRpY2lvbmEgdW0gZ3J1cG8gZGUgYWx0ZXJuYXRpdmFzIHBhcmEgbyBzaXN0ZW1hLiAgSTxnZW7DqXJpY28+IMOpIG8gbm9tZSAiCisiZ2Vuw6lyaWNvIHBhcmEgYSBsaWdhw6fDo28gbWFzdGVyLCBJPGxpZ2HDp8Ojbz4gw6kgbyBub21lIGRlIHN1YSBsaWdhw6fDo28gIgorInNpbWLDs2xpY2EsIGUgSTxjYW1pbmhvPiDDqSBhIGFsdGVybmF0aXZhIHNlbmRvIGludHJ1emlkYSBwYXJhIGEgbGlnYcOnw6NvICIKKyJtZXN0cmUuICBJPHNnZW7DqXJpY28+LCBJPHNsaWdhw6fDo28+IGUgSTxzY2FtaW5obz4gc8OjbyBvIG5vbWUgZ2Vuw6lyY28sIGxpZ2HDp8OjbyAiCisic2ltYsOzbGljYSBlIGFsdGVybmF0aXZhIHBhcmEgdW1hIGxpZ2HDp8OjbyBzbGF2ZS4gIFplcm8gb3UgbWFpcyBvcMOnw7VlcyBCPC0tIgorInNsYXZlPiAsIGNhZGEgdW1hIHNlZ3VkYSBwb3IgdHLDqnMgYXJndW1lbnRvcywgcG9kZW0gc2VyIGVzcGVjaWZpY2FkYXMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjMzCisjLCBmdXp6eQorbXNnaWQgIiIKKyJJZiB0aGUgYWx0ZXJuYXRpdmUgbmFtZSBzcGVjaWZpZWQgZXhpc3RzIGFscmVhZHkgaW4gdGhlIGFsdGVybmF0aXZlcyAiCisic3lzdGVtJ3MgcmVjb3JkcywgdGhlIGluZm9ybWF0aW9uIHN1cHBsaWVkIHdpbGwgYmUgYWRkZWQgYXMgYSBuZXcgc2V0IG9mICIKKyJhbHRlcm5hdGl2ZXMgZm9yIHRoZSBncm91cC4gIE90aGVyd2lzZSwgYSBuZXcgZ3JvdXAsIHNldCB0byBhdXRvbWF0aWMgbW9kZSwgIgorIndpbGwgYmUgYWRkZWQgd2l0aCB0aGlzIGluZm9ybWF0aW9uLiAgSWYgdGhlIGdyb3VwIGlzIGluIGF1dG9tYXRpYyBtb2RlLCBhbmQgIgorInRoZSBuZXdseSBhZGRlZCBhbHRlcm5hdGl2ZXMnIHByaW9yaXR5IGlzIGhpZ2hlciB0aGFuIGFueSBvdGhlciBpbnN0YWxsZWQgIgorImFsdGVybmF0aXZlcyBmb3IgdGhpcyBncm91cCwgdGhlIHN5bWxpbmtzIHdpbGwgYmUgdXBkYXRlZCB0byBwb2ludCB0byB0aGUgIgorIm5ld2x5IGFkZGVkIGFsdGVybmF0aXZlcy4iCittc2dzdHIgIiIKKyJDYXNvIGEgbGlnYcOnw6NvIG1hc3RlciBlc3BlY2lmaWNhZGEgasOhIGV4aXN0YSBub3MgcmVnaXN0cm9zIGRvIHNpc3RlbWEgZGUgIgorImFsdGVybmF0aXZhcywgYSBpbmZvcm1hw6fDo28gZm9ybmVjaWRhIHNlcsOhIGFkaWNpb25hZGEgY29tbyB1bSBub3ZvIGNvbmp1bnRvICIKKyJkZSBhbHRlcm5hdGl2YXMgcGFyYSBvIGdydXBvLiBEZSBvdXRyYSBmb3JtYSwgdW0gbm92byBncnVwbywgZGVmaW5pZG8gcGFyYSBvICIKKyJtb2RvIGF1dG9tw6F0aWNvLCBzZXLDoSBhZGljaW9uYWRvIGNvbSBlc3RhIGluZm9ybWHDp8Ojby4gU2UgbyBncnVwbyBlc3TDoSBubyAiCisibW9kbyBhdXRvbcOhdGljbyBlIGEgcHJpb3JpZGFkZSBkYXMgbm92YXMgYWx0ZXJuYXRpdmFzIGFkaWNpb25hZGFzIMOpIG1haW9yIGRvICIKKyJxdWUgcXVhbHF1ZXIgb3V0cmEgYWx0ZXJuYXRpdmEgaW5zdGFsYWRhIHBhcmEgZXN0ZSBncnVwbywgYXMgbGlnYcOnw7VlcyAiCisic2ltYsOzbGljYXMgc2Vyw6NvIGF0dWFsaXphZGFzIHBhcmEgYXBvbnRhciBwYXJhIGFzIGFsdGVybmF0aXZhcyBub3ZhcyAiCisiaW5zdGFsYWRhcy4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjMzCisjLCBuby13cmFwCittc2dpZCAiQjwtLXNldD4gSTxuYW1lIHBhdGg+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyNDIKK21zZ2lkICIiCisiU2V0IHRoZSBwcm9ncmFtIEk8cGF0aD4gYXMgYWx0ZXJuYXRpdmUgZm9yIEk8bmFtZS4+IFRoaXMgaXMgZXF1aXZhbGVudCB0byAiCisiQjwtLWNvbmZpZz4gYnV0IGlzIG5vbi1pbnRlcmFjdGl2ZSBhbmQgdGh1cyBzY3JpcHRhYmxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjI0MgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tcmVtb3ZlPiBJPG5hbWUgcGF0aD4iCittc2dzdHIgIkI8LS1yZW1vdmU+IEk8bm9tZSBjYW1pbmhvPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjI2MworIywgZnV6enkKK21zZ2lkICIiCisiUmVtb3ZlIGFuIGFsdGVybmF0aXZlIGFuZCBhbGwgb2YgaXRzIGFzc29jaWF0ZWQgc2xhdmUgbGlua3MuICBJPG5hbWU+IGlzIGEgIgorIm5hbWUgaW4gdGhlIGFsdGVybmF0aXZlcyBkaXJlY3RvcnksIGFuZCBJPHBhdGg+IGlzIGFuIGFic29sdXRlIGZpbGVuYW1lIHRvICIKKyJ3aGljaCBJPG5hbWU+IGNvdWxkIGJlIGxpbmtlZC4gSWYgSTxuYW1lPiBpcyBpbmRlZWQgbGlua2VkIHRvIEk8cGF0aD4sICIKKyJJPG5hbWU+IHdpbGwgYmUgdXBkYXRlZCB0byBwb2ludCB0byBhbm90aGVyIGFwcHJvcHJpYXRlIGFsdGVybmF0aXZlIChhbmQgdGhlICIKKyJncm91cCBpcyBwdXQgYmFjayBpbiBhdXRvbWF0aWMgbW9kZSksIG9yIHJlbW92ZWQgaWYgdGhlcmUgaXMgbm8gc3VjaCAiCisiYWx0ZXJuYXRpdmUgbGVmdC4gIEFzc29jaWF0ZWQgc2xhdmUgbGlua3Mgd2lsbCBiZSB1cGRhdGVkIG9yIHJlbW92ZWQsICIKKyJjb3JyZXNwb25kaW5nbHkuICBJZiB0aGUgbGluayBpcyBub3QgY3VycmVudGx5IHBvaW50aW5nIHRvIEk8cGF0aD4sIG5vIGxpbmtzICIKKyJhcmUgY2hhbmdlZDsgb25seSB0aGUgaW5mb3JtYXRpb24gYWJvdXQgdGhlIGFsdGVybmF0aXZlIGlzIHJlbW92ZWQuIgorbXNnc3RyICIiCisiUmVtb3ZlIHVtYSBhbHRlcm5hdGl2YSBlIHRvZGFzIGFzIHN1YXMgbGlnYcOnw7VlcyBzbGF2ZXMgYXNzb2NpYWRhcy4gIEk8bm9tZT4gIgorIsOpIG8gbm9tZSBkbyBkaXJldMOzcmlvIGRlIGFsdGVybmF0aXZhcywgZSBJPGNhbWluaG8+IMOpIG8gbm9tZSBkZSBhcnF1aXZvICIKKyJhYnNvbHV0byBhbyBxdWFsIEk8bm9tZT4gcG9kZXLDoSBzZXIgbGlnYWRvLiBDYXNvIEk8bm9tZT4gZXN0ZWphIGxpZ2FkbyBjb20gIgorIkk8Y2FtaW5obz4sIEk8bm9tZT4gc2Vyw6EgYXR1YWxpemFkbyBwYXJhIGFwb250YXIgcGFyYSBvdXRyYSBhbHRlcm5hdGl2YSAiCisiYXByb3ByaWFkYSwgb3UgcmVtb3ZpZG8gY2FzbyBuw6NvIGV4aXN0YSBlc3NhIGFsdGVybmF0aXZhIHNlcGFyYWRhLiAgTGlnYcOnw7VlcyAiCisic2xhdmUgYXNzb2NpYWRhcyBzZXLDo28gYXR1YWxpemFkYXMgb3UgcmVtb3ZpZGFzIGRlIGFjb3Jkby4gIENhc28gYSBsaWdhw6fDo28gIgorIm7Do28gZXN0ZWphIGF0dWFsbWVudGUgYXBvbnRhbmRvIHBhcmEgSTxjYW1pbmhvPiwgbmVuaHVtYSBsaWdhw6fDo28gw6kgIgorIm1vZGlmaWNhZGE7IHNvbWVudGUgYSBpbmZvcm1hw6fDo28gc29icmUgYSBhbHRlcm5hdGl2YSDDqSByZW1vdmlkYS4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjYzCisjLCBuby13cmFwCittc2dpZCAiQjwtLXJlbW92ZS1hbGw+IEk8bmFtZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjI2OAorbXNnaWQgIiIKKyJSZW1vdmUgYWxsIGFsdGVybmF0aXZlcyBhbmQgYWxsIG9mIHRoZWlyIGFzc29jaWF0ZWQgc2xhdmUgbGlua3MuICBJPG5hbWU+IGlzICIKKyJhIG5hbWUgaW4gdGhlIGFsdGVybmF0aXZlcyBkaXJlY3RvcnkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyNzUKK21zZ2lkICIiCisiQ2FsbCBCPC0tY29uZmlnPiBvbiBhbGwgYWx0ZXJuYXRpdmVzLiBJdCBjYW4gYmUgdXNlZnVsbHkgY29tYmluZWQgd2l0aCBCPC0tIgorInNraXAtYXV0bz4gdG8gcmV2aWV3IGFuZCBjb25maWd1cmUgYWxsIGFsdGVybmF0aXZlcyB3aGljaCBhcmUgbm90IGNvbmZpZ3VyZWQgIgorImluIGF1dG9tYXRpYyBtb2RlLiBCcm9rZW4gYWx0ZXJuYXRpdmVzIGFyZSBhbHNvIGRpc3BsYXllZC4gIFRodXMgYSBzaW1wbGUgIgorIndheSB0byBmaXggYWxsIGJyb2tlbiBhbHRlcm5hdGl2ZXMgaXMgdG8gY2FsbCBCPHllcyBcXFthcV1cXFthcV0gfCB1cGRhdGUtIgorImFsdGVybmF0aXZlcyAtLWZvcmNlIC0tYWxsPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyNzUKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWF1dG8+IEk8bmFtZT4iCittc2dzdHIgIkI8LS1hdXRvPiBJPGxpZ2HDp8Ojbz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyODIKKyMsIGZ1enp5Cittc2dpZCAiIgorIlN3aXRjaCB0aGUgbGluayBncm91cCBiZWhpbmQgdGhlIGFsdGVybmF0aXZlIGZvciBJPG5hbWU+IHRvIGF1dG9tYXRpYyBtb2RlLiAgIgorIkluIHRoZSBwcm9jZXNzLCB0aGUgbWFzdGVyIHN5bWxpbmsgYW5kIGl0cyBzbGF2ZXMgYXJlIHVwZGF0ZWQgdG8gcG9pbnQgdG8gIgorInRoZSBoaWdoZXN0IHByaW9yaXR5IGluc3RhbGxlZCBhbHRlcm5hdGl2ZXMuIgorbXNnc3RyICIiCisiTXVkYSBhIGxpZ2HDp8OjbyBzaW1iw7NsaWNhIG1hc3RlciBJPGxpZ2HDp8Ojbz4gcGFyYSBvIG1vZG8gYXV0b23DoXRpY28uIE5vICIKKyJwcm9jZXNzbyBhIGxpZ2HDp8OjbyBzaW1iw7NsaWNhIGUgc2V1cyBzbGF2ZXMgc8OjbyBhdHVhbGl6YWRvcyBwYXJhIGFwb250YXIgcGFyYSAiCisiYXMgYWx0ZXJuYXRpdmFzIGluc3RhbGFkYXMgZGUgbWFpb3IgcHJpb3JpZGFkZS4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjgyCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1kaXNwbGF5PiBJPG5hbWU+IgorbXNnc3RyICJCPC0tZGlzcGxheT4gSTxsaWdhw6fDo28+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjkxCisjLCBmdXp6eQorbXNnaWQgIiIKKyJEaXNwbGF5IGluZm9ybWF0aW9uIGFib3V0IHRoZSBsaW5rIGdyb3VwLiAgSW5mb3JtYXRpb24gZGlzcGxheWVkIGluY2x1ZGVzICIKKyJ0aGUgZ3JvdXAncyBtb2RlIChhdXRvIG9yIG1hbnVhbCksIHdoaWNoIGFsdGVybmF0aXZlIHRoZSBtYXN0ZXIgbGluayAiCisiY3VycmVudGx5IHBvaW50cyB0bywgd2hhdCBvdGhlciBhbHRlcm5hdGl2ZXMgYXJlIGF2YWlsYWJsZSAoYW5kIHRoZWlyICIKKyJjb3JyZXNwb25kaW5nIHNsYXZlIGFsdGVybmF0aXZlcyksIGFuZCB0aGUgaGlnaGVzdCBwcmlvcml0eSBhbHRlcm5hdGl2ZSAiCisiY3VycmVudGx5IGluc3RhbGxlZC4iCittc2dzdHIgIiIKKyJNb3N0cmEgaW5mb3JtYcOnw6NvIHNvYnJlIGEgbGlnYcOnw6NvIGVtIGdydXBvIHBhcmEgcXVhbCBjYWRhIEk8bGlnYcOnw6NvPiDDqSBhICIKKyJsaWdhw6fDo28gbWFzdGVyLiAgQSBpbmZvcm1hw6fDo28gZXhpYmlkYSBpbmNsdWkgbyBtb2RvIGRvIGdydXBvIChhdXRvIG91ICIKKyJtYW51YWwpLCBwYXJhIHF1YWlzIGFsdGVybmF0aXZhcyBhIGxpZ2HDp8OjbyBzaW1iw7NsaWNhIGFwb250YSBhdHVhbG1lbnRlLCAiCisicXVhaXMgb3V0cmFzIGFsdGVybmF0aXZhcyBlc3TDo28gZGlzcG9uw612ZWlzIChlIHN1YXMgYWx0ZXJuYXRpdmFzIHNsYXZlICIKKyJjb3JyZXNwb25kZW50ZXMpICBlIGEgYWx0ZXJuYXRpdmEgZGUgbWFpb3IgcHJpb3JpZGFkZSBpbnN0YWxhZGEgYXR1YWxtZW50ZS4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjkxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1nZXQtc2VsZWN0aW9ucz4iCittc2dzdHIgIkI8ZHBrZyAtLXNldC1zZWxlY3Rpb25zPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjI5OQorbXNnaWQgIiIKKyJMaXN0IGFsbCBtYXN0ZXIgYWx0ZXJuYXRpdmUgbmFtZXMgKHRob3NlIGNvbnRyb2xsaW5nIGEgbGluayBncm91cCkgIGFuZCAiCisidGhlaXIgc3RhdHVzLiBFYWNoIGxpbmUgY29udGFpbnMgdXAgdG8gMyBmaWVsZHMgKHNlcGFyYXRlZCBieSBvbmUgb3IgbW9yZSAiCisic3BhY2VzKS4gVGhlIGZpcnN0IGZpZWxkIGlzIHRoZSBhbHRlcm5hdGl2ZSBuYW1lLCB0aGUgc2Vjb25kIG9uZSBpcyB0aGUgIgorInN0YXR1cyAoZWl0aGVyIFwiYXV0b1wiIG9yIFwibWFudWFsXCIpLCBhbmQgdGhlIGxhc3Qgb25lIGNvbnRhaW5zIHRoZSAiCisiY3VycmVudCBjaG9pY2UgaW4gdGhlIGFsdGVybmF0aXZlIChiZXdhcmU6IGl0J3MgYSBmaWxlbmFtZSBhbmQgdGh1cyBtaWdodCAiCisiY29udGFpbiBzcGFjZXMpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzA0Cittc2dpZCAiIgorIlJlYWQgY29uZmlndXJhdGlvbiBvZiBhbHRlcm5hdGl2ZXMgb24gc3RhbmRhcmQgaW5wdXQgaW4gdGhlIGZvcm1hdCBnZW5lcmF0ZWQgIgorImJ5IEI8dXBkYXRlLWFsdGVybmF0aXZlcyAtLWdldC1zZWxlY3Rpb25zPiBhbmQgcmVjb25maWd1cmUgdGhlbSBhY2NvcmRpbmdseS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMDQKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLXF1ZXJ5PiBJPG5hbWU+IgorbXNnc3RyICJCPC0tYXV0bz4gSTxsaWdhw6fDo28+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzA5Cittc2dpZCAiIgorIkRpc3BsYXkgaW5mb3JtYXRpb24gYWJvdXQgdGhlIGxpbmsgZ3JvdXAgbGlrZSAtLWRpc3BsYXkgZG9lcywgYnV0IGluIGEgIgorIm1hY2hpbmUgcGFyc2VhYmxlIHdheSAoc2VlIHNlY3Rpb24gQjxRVUVSWSBGT1JNQVQ+IGJlbG93KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMDkKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWxpc3Q+IEk8bmFtZT4iCittc2dzdHIgIkI8LS1saXN0PiBJPGxpZ2HDp8Ojbz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMTIKKyMsIGZ1enp5Cittc2dpZCAiRGlzcGxheSBhbGwgdGFyZ2V0cyBvZiB0aGUgbGluayBncm91cC4iCittc2dzdHIgIkV4aWJlIHRvZG9zIG9zIGFsdm9zIGRlIHVtYSBsaWdhw6fDo28gZW0gZ3J1cG8uIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjMxMgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tY29uZmlnPiBJPG5hbWU+IgorbXNnc3RyICJCPC0tY29uZmlnPiBJPGxpbms+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzE2Cittc2dpZCAiIgorIlNob3cgYXZhaWxhYmxlIGFsdGVybmF0aXZlcyBmb3IgYSBsaW5rIGdyb3VwIGFuZCBhbGxvdyB0aGUgdXNlciB0byAiCisiaW50ZXJhY3RpdmVseSBzZWxlY3Qgd2hpY2ggb25lIHRvIHVzZS4gVGhlIGxpbmsgZ3JvdXAgaXMgdXBkYXRlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMjQKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWFsdGRpcj5JPCBkaXJlY3Rvcnk+IgorbXNnc3RyICJCPC0tYWx0ZGlyPiBJPGRpcmV0w7NyaW8+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzI4CisjLCBmdXp6eQorbXNnaWQgIiIKKyJTcGVjaWZpZXMgdGhlIGFsdGVybmF0aXZlcyBkaXJlY3RvcnksIHdoZW4gdGhpcyBpcyB0byBiZSBkaWZmZXJlbnQgZnJvbSB0aGUgIgorImRlZmF1bHQuIgorbXNnc3RyICIiCisiRXNwZWNpZmljYSBvIGRpcmV0w7NyaW8gZGUgYWx0ZXJuYXRpdmFzLCBxdWFuZG8gZXN0ZSBlc3TDoSBjb25maWd1cmFkbyBwYXJhICIKKyJhbGdvIGRpZmVyZW50ZSBkbyBwYWRyw6NvLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjMzMgorIywgZnV6enkKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRoZSBhZG1pbmlzdHJhdGl2ZSBkaXJlY3RvcnksIHdoZW4gdGhpcyBpcyB0byBiZSBkaWZmZXJlbnQgZnJvbSAiCisidGhlIGRlZmF1bHQuIgorbXNnc3RyICIiCisiRXNwZWNpZmljYSBvIGRpcnTDs3JpbyBhZG1pbmlzdHJhdGl2bywgcXVhbmRvIGVzdGUgZXN0ZSBjb25maWd1cmFkbyBwYXJhIGFsZ28gIgorImRpZmVyZW50ZSBkbyBwYWRyw6NvLiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMzIKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWxvZz5JPCBmaWxlPiIKK21zZ3N0ciAiQjwtLWxvZz0+STxmaWxlbmFtZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMzYKKyMsIGZ1enp5Cittc2dpZCAiIgorIlNwZWNpZmllcyB0aGUgbG9nIGZpbGUsIHdoZW4gdGhpcyBpcyB0byBiZSBkaWZmZXJlbnQgZnJvbSB0aGUgZGVmYXVsdCAoL3Zhci8iCisibG9nL2FsdGVybmF0aXZlcy5sb2cpLiIKK21zZ3N0ciAiIgorIkVzcGVjaWZpY2EgbyBkaXJldMOzcmlvIGRlIGFsdGVybmF0aXZhcywgcXVhbmRvIGVzdGUgZXN0w6EgY29uZmlndXJhZG8gcGFyYSAiCisiYWxnbyBkaWZlcmVudGUgZG8gcGFkcsOjby4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozNDAKK21zZ2lkICIiCisiTGV0IEI8dXBkYXRlLWFsdGVybmF0aXZlcz4gcmVwbGFjZSBvciBkcm9wIGFueSByZWFsIGZpbGUgdGhhdCBpcyBpbnN0YWxsZWQgIgorIndoZXJlIGFuIGFsdGVybmF0aXZlIGxpbmsgaGFzIHRvIGJlIGluc3RhbGxlZCBvciByZW1vdmVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM0MAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tc2tpcC1hdXRvPiIKK21zZ3N0ciAiQjwtLXRlc3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzQ1Cittc2dpZCAiIgorIlNraXAgY29uZmlndXJhdGlvbiBwcm9tcHQgZm9yIGFsdGVybmF0aXZlcyB3aGljaCBhcmUgcHJvcGVybHkgY29uZmlndXJlZCBpbiAiCisiYXV0b21hdGljIG1vZGUuIFRoaXMgb3B0aW9uIGlzIG9ubHkgcmVsZXZhbnQgd2l0aCBCPC0tY29uZmlnPiBvciBCPC0tYWxsPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozNDUKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLXZlcmJvc2U+IgorbXNnc3RyICJCPC0tdmVyYm9zZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozNTAKKyMsIGZ1enp5Cittc2dpZCAiR2VuZXJhdGUgbW9yZSBjb21tZW50cyBhYm91dCB3aGF0IEI8dXBkYXRlLWFsdGVybmF0aXZlcz4gaXMgZG9pbmcuIgorbXNnc3RyICJHZXJhIG1haXMgY29tZW50w6FyaW9zIHNvYnJlIG8gcXVlIEI8dXBkYXRlLWFsdGVybmF0aXZlcz4gZXN0w6EgZmF6ZW5kby4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozNTMKKyMsIGZ1enp5Cittc2dpZCAiRG9uJ3QgZ2VuZXJhdGUgYW55IGNvbW1lbnRzIHVubGVzcyBlcnJvcnMgb2NjdXIuIgorbXNnc3RyICIiCisiTsOjbyBnZXJhIGNvbWVudMOhcmlvIGFsZ3VtIGEgbWVub3MgcXVlIG9jb3JyYW0gZXJyb3MuIEVzdGEgb3DDp8OjbyBhaW5kYSBuw6NvICIKKyJlc3TDoSBpbXBsZW1lbnRhZGEuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzU5Cittc2dpZCAiIgorIklmIHNldCBhbmQgdGhlIEI8LS1hZG1pbmRpcj4gb3B0aW9uIGhhcyBub3QgYmVlbiBzcGVjaWZpZWQsIGl0IHdpbGwgYmUgdXNlZCAiCisiYXMgdGhlIGJhc2UgYWRtaW5pc3RyYXRpdmUgZGlyZWN0b3J5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM2MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJJPC9ldGMvYWx0ZXJuYXRpdmVzLz4iCittc2dzdHIgIkk8L2V0Yy9hbHRlcm5hdGl2ZXMvPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM2NworIywgZnV6enkKK21zZ2lkICIiCisiVGhlIGRlZmF1bHQgYWx0ZXJuYXRpdmVzIGRpcmVjdG9yeS4gIENhbiBiZSBvdmVycmlkZGVuIGJ5IHRoZSBCPC0tYWx0ZGlyPiAiCisib3B0aW9uLiIKK21zZ3N0ciAiIgorIk8gZGlyZXTDs3JpbyBkZSBhbHRlcm5hdGl2YXMgcGFkcsOjby4gUG9kZSBzZXIgc29icmVlc2NyaXRvIHBlbGEgb3DDp8OjbyBCPC0tIgorImFsdGRpcj4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzY3CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkk8L3Zhci9saWIvZHBrZy9hbHRlcm5hdGl2ZXMvPiIKK21zZ3N0ciAiSTwvdmFyL2xpYi9kcGtnL2FsdGVybmF0aXZlcy8+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzczCisjLCBmdXp6eQorbXNnaWQgIiIKKyJUaGUgZGVmYXVsdCBhZG1pbmlzdHJhdGlvbiBkaXJlY3RvcnkuICBDYW4gYmUgb3ZlcnJpZGRlbiBieSB0aGUgQjwtLSIKKyJhZG1pbmRpcj4gb3B0aW9uLiIKK21zZ3N0ciAiIgorIk8gZGlyZXTDs3JpbyBkZSBhZG1pbmlzdHJhw6fDo28gcGFkcsOjby4gUG9kZSBzZXIgc29icmVlc2NyaXRvIHBlbGEgb3DDp8OjbyBCPC0tIgorImFkbWluZGlyPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM3OAorIywgZnV6enkKK21zZ2lkICJUaGUgcmVxdWVzdGVkIGFjdGlvbiB3YXMgc3VjY2Vzc2Z1bGx5IHBlcmZvcm1lZC4iCittc2dzdHIgIkEgYcOnw6NvIHJlcXVpc2l0YWRhIGZvaSBjb21wbGV0YWRhIGNvbSBzdWNlc3NvLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM4MgorIywgZnV6enkKK21zZ2lkICIiCisiUHJvYmxlbXMgd2VyZSBlbmNvdW50ZXJlZCB3aGlsc3QgcGFyc2luZyB0aGUgY29tbWFuZCBsaW5lIG9yIHBlcmZvcm1pbmcgdGhlICIKKyJhY3Rpb24uIgorbXNnc3RyICIiCisiRm9yYW0gZW5jb250cmFkb3MgcHJvYmxlbWFzIHF1YW5kbyBhbmFsaXNhbmRvIGEgbGluaGEgZGUgY29tYW5kbyBvdSAiCisiZXhlY3V0YW5kbyBhIGHDp8Ojby4iCisKKyMuIHR5cGU6IFNICisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzgzCisjLCBuby13cmFwCittc2dpZCAiUVVFUlkgRk9STUFUIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozODgKK21zZ2lkICIiCisiVGhlIEI8dXBkYXRlLWFsdGVybmF0aXZlcyAtLXF1ZXJ5PiBmb3JtYXQgaXMgdXNpbmcgYW4gUkZDODIyLWxpa2UgZmxhdCAiCisiZm9ybWF0LiBJdCdzIG1hZGUgb2YgSTxuPiArIDEgYmxvY2tzIHdoZXJlIEk8bj4gaXMgdGhlIG51bWJlciBvZiAiCisiYWx0ZXJuYXRpdmVzIGF2YWlsYWJsZSBpbiB0aGUgcXVlcmllZCBsaW5rIGdyb3VwLiBUaGUgZmlyc3QgYmxvY2sgY29udGFpbnMgIgorInRoZSBmb2xsb3dpbmcgZmllbGRzOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM4OAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPExpbms6Pkk8IGxpbms+IgorbXNnc3RyICJCPC0tbG9nPT5JPGZpbGVuYW1lPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM5MQorbXNnaWQgIlRoZSBnZW5lcmljIG5hbWUgb2YgdGhlIGFsdGVybmF0aXZlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM5MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPFN0YXR1czo+STwgc3RhdHVzPiIKK21zZ3N0ciAiQjwtLWxvZz0+STxmaWxlbmFtZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozOTQKK21zZ2lkICJUaGUgc3RhdHVzIG9mIHRoZSBhbHRlcm5hdGl2ZSAoQjxhdXRvPiBvciBCPG1hbnVhbD4pLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM5NAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPEJlc3Q6Pkk8IGJlc3QtY2hvaWNlPiIKK21zZ3N0ciAiQjwtLWxvZz0+STxmaWxlbmFtZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozOTgKK21zZ2lkICIiCisiVGhlIHBhdGggb2YgdGhlIGJlc3QgYWx0ZXJuYXRpdmUgZm9yIHRoaXMgbGluayBncm91cC4gTm90IHByZXNlbnQgaWYgdGhlcmUgIgorImlzIG5vIGFsdGVybmF0aXZlcyBhdmFpbGFibGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6Mzk4CisjLCBuby13cmFwCittc2dpZCAiQjxWYWx1ZTo+STwgY3VycmVudGx5LXNlbGVjdGVkLWFsdGVybmF0aXZlPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDAyCittc2dpZCAiIgorIlRoZSBwYXRoIG9mIHRoZSBjdXJyZW50bHkgc2VsZWN0ZWQgYWx0ZXJuYXRpdmUuIEl0IGNhbiBhbHNvIHRha2UgdGhlIG1hZ2ljICIKKyJ2YWx1ZSBCPG5vbmU+LiBJdCBpcyB1c2VkIGlmIHRoZSBsaW5rIGRvZXNuJ3QgZXhpc3QuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDAzCisjLCBuby13cmFwCittc2dpZCAiVGhlIG90aGVyIGJsb2NrcyBkZXNjcmliZSB0aGUgYXZhaWxhYmxlIGFsdGVybmF0aXZlcyBpbiB0aGUgcXVlcmllZCBsaW5rIGdyb3VwOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQwNQorIywgbm8td3JhcAorbXNnaWQgIkI8QWx0ZXJuYXRpdmU6Pkk8IHBhdGgtb2YtdGhpcy1hbHRlcm5hdGl2ZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQwOAorbXNnaWQgIlBhdGggdG8gdGhpcyBibG9jaydzIGFsdGVybmF0aXZlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQwOAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPFByaW9yaXR5Oj5JPCBwcmlvcml0eS12YWx1ZT4iCittc2dzdHIgIkI8LS1sb2c9Pkk8ZmlsZW5hbWU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDExCittc2dpZCAiVmFsdWUgb2YgdGhlIHByaW9yaXR5IG9mIHRoaXMgYWx0ZXJuYXRpdmUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDExCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8U2xhdmVzOj5JPCBsaXN0LW9mLXNsYXZlcz4iCittc2dzdHIgIkI8LS1sb2c9Pkk8ZmlsZW5hbWU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDE3Cittc2dpZCAiIgorIldoZW4gdGhpcyBoZWFkZXIgaXMgcHJlc2VudCwgdGhlIEI8bmV4dD4gbGluZXMgaG9sZCBhbGwgc2xhdmUgYWx0ZXJuYXRpdmVzICIKKyJhc3NvY2lhdGVkIHRvIHRoZSBtYXN0ZXIgbGluayBvZiB0aGUgYWx0ZXJuYXRpdmUuIFRoZXJlIGlzIG9uZSBzbGF2ZSBwZXIgIgorImxpbmUuIEVhY2ggbGluZSBjb250YWlucyBvbmUgc3BhY2UsIHRoZSBnZW5lcmljIG5hbWUgb2YgdGhlIHNsYXZlICIKKyJhbHRlcm5hdGl2ZSwgYW5vdGhlciBzcGFjZSwgYW5kIHRoZSBwYXRoIHRvIHRoZSBzbGF2ZSBhbHRlcm5hdGl2ZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0MTgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPEV4YW1wbGU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0MjYKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiJCB1cGRhdGUtYWx0ZXJuYXRpdmVzIC0tcXVlcnkgZWRpdG9yXG4iCisiTGluazogZWRpdG9yXG4iCisiU3RhdHVzOiBhdXRvXG4iCisiQmVzdDogL3Vzci9iaW4vdmltLmd0a1xuIgorIlZhbHVlOiAvdXNyL2Jpbi92aW0uZ3RrXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQzMQorIywgbm8td3JhcAorbXNnaWQgIiIKKyJBbHRlcm5hdGl2ZTogL2Jpbi9lZFxuIgorIlByaW9yaXR5OiAtMTAwXG4iCisiU2xhdmVzOlxuIgorIiBlZGl0b3IuMS5neiAvdXNyL3NoYXJlL21hbi9tYW4xL2VkLjEuZ3pcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDQ2CisjLCBuby13cmFwCittc2dpZCAiIgorIkFsdGVybmF0aXZlOiAvdXNyL2Jpbi92aW0uZ3RrXG4iCisiUHJpb3JpdHk6IDUwXG4iCisiU2xhdmVzOlxuIgorIiBlZGl0b3IuMS5neiAvdXNyL3NoYXJlL21hbi9tYW4xL3ZpbS4xLmd6XG4iCisiIGVkaXRvci5ydS4xLmd6IC91c3Ivc2hhcmUvbWFuL3J1L21hbjEvdmltLjEuZ3pcbiIKKyIgZWRpdG9yLnBsLklTTzg4NTktMi4xLmd6IC91c3Ivc2hhcmUvbWFuL3BsLklTTzg4NTktMi9tYW4xL3ZpbS4xLmd6XG4iCisiIGVkaXRvci5pdC5JU084ODU5LTEuMS5neiAvdXNyL3NoYXJlL21hbi9pdC5JU084ODU5LTEvbWFuMS92aW0uMS5nelxuIgorIiBlZGl0b3IucGwuVVRGLTguMS5neiAvdXNyL3NoYXJlL21hbi9wbC5VVEYtOC9tYW4xL3ZpbS4xLmd6XG4iCisiIGVkaXRvci5pdC4xLmd6IC91c3Ivc2hhcmUvbWFuL2l0L21hbjEvdmltLjEuZ3pcbiIKKyIgZWRpdG9yLmZyLlVURi04LjEuZ3ogL3Vzci9zaGFyZS9tYW4vZnIuVVRGLTgvbWFuMS92aW0uMS5nelxuIgorIiBlZGl0b3IuZnIuMS5neiAvdXNyL3NoYXJlL21hbi9mci9tYW4xL3ZpbS4xLmd6XG4iCisiIGVkaXRvci5pdC5VVEYtOC4xLmd6IC91c3Ivc2hhcmUvbWFuL2l0LlVURi04L21hbjEvdmltLjEuZ3pcbiIKKyIgZWRpdG9yLnBsLjEuZ3ogL3Vzci9zaGFyZS9tYW4vcGwvbWFuMS92aW0uMS5nelxuIgorIiBlZGl0b3IuZnIuSVNPODg1OS0xLjEuZ3ogL3Vzci9zaGFyZS9tYW4vZnIuSVNPODg1OS0xL21hbjEvdmltLjEuZ3pcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDU4CisjLCBmdXp6eQorbXNnaWQgIiIKKyJXaXRoIEI8LS12ZXJib3NlPiBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IGNoYXR0ZXJzIGluY2Vzc2FudGx5IGFib3V0IGl0cyAiCisiYWN0aXZpdGllcyBvbiBpdHMgc3RhbmRhcmQgb3V0cHV0IGNoYW5uZWwuICBJZiBwcm9ibGVtcyBvY2N1ciwgQjx1cGRhdGUtIgorImFsdGVybmF0aXZlcz4gb3V0cHV0cyBlcnJvciBtZXNzYWdlcyBvbiBpdHMgc3RhbmRhcmQgZXJyb3IgY2hhbm5lbCBhbmQgIgorInJldHVybnMgYW4gZXhpdCBzdGF0dXMgb2YgMi4gIFRoZXNlIGRpYWdub3N0aWNzIHNob3VsZCBiZSBzZWxmLWV4cGxhbmF0b3J5OyAiCisiaWYgeW91IGRvIG5vdCBmaW5kIHRoZW0gc28sIHBsZWFzZSByZXBvcnQgdGhpcyBhcyBhIGJ1Zy4iCittc2dzdHIgIiIKKyJCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IGZhbGEgc2VtIHBhcmFyIHNvYnJlIHN1YXMgYXRpdmlkYWRlcyBlbSBzZXUgY2FuYWwgZGUgIgorInNhw61kYSBwYWRyw6NvLiBDYXNvIHVtIHByb2JsZW1hIG9jb3JyYSwgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBleGliZSAiCisibWVuc2FnZW5zIGRlIGVycm8gZW0gc2V1IGNhbmFsIGRlIGVycm9zIHBhZHLDo28gZSByZXRvcm5hIHVtIGVzdGFkbyBkZSBzYcOtZGEgIgorImRlIDIuICBFc3RlcyBkaWFnbsOzc3RpY29zIGRldmVtIHNlciBhdXRvLWV4cGxpY2F0aXZvczsgY2FzbyB2b2PDqiBuw6NvIHBlbnNlICIKKyJhc3NpbSwgcG9yIGZhdm9yIHJlcG9ydGUgaXNzbyBjb20gdW0gYnVnLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQ2NAorbXNnaWQgIiIKKyJUaGVyZSBhcmUgc2V2ZXJhbCBwYWNrYWdlcyB3aGljaCBwcm92aWRlIGEgdGV4dCBlZGl0b3IgY29tcGF0aWJsZSB3aXRoICIKKyJCPHZpPiwgZm9yIGV4YW1wbGUgQjxudmk+IGFuZCBCPHZpbT4uIFdoaWNoIG9uZSBpcyB1c2VkIGlzIGNvbnRyb2xsZWQgYnkgdGhlICIKKyJsaW5rIGdyb3VwIEI8dmk+LCB3aGljaCBpbmNsdWRlcyBsaW5rcyBmb3IgdGhlIHByb2dyYW0gaXRzZWxmIGFuZCB0aGUgIgorImFzc29jaWF0ZWQgbWFucGFnZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQ2NworbXNnaWQgIiIKKyJUbyBkaXNwbGF5IHRoZSBhdmFpbGFibGUgcGFja2FnZXMgd2hpY2ggcHJvdmlkZSBCPHZpPiBhbmQgdGhlIGN1cnJlbnQgIgorInNldHRpbmcgZm9yIGl0LCB1c2UgdGhlIEI8LS1kaXNwbGF5PiBhY3Rpb246IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0NzAKKyMsIGZ1enp5Cittc2dpZCAiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzIC0tZGlzcGxheSB2aT4iCittc2dzdHIgInVwZGF0ZS1hbHRlcm5hdGl2ZXMgLS1kaXNwbGF5IHZpIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDc0Cittc2dpZCAiIgorIlRvIGNob29zZSBhIHBhcnRpY3VsYXIgQjx2aT4gaW1wbGVtZW50YXRpb24sIHVzZSB0aGlzIGNvbW1hbmQgYXMgcm9vdCBhbmQgIgorInRoZW4gc2VsZWN0IGEgbnVtYmVyIGZyb20gdGhlIGxpc3Q6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0NzcKKyMsIGZ1enp5Cittc2dpZCAiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzIC0tY29uZmlnIHZpPiIKK21zZ3N0ciAidXBkYXRlLWFsdGVybmF0aXZlcyAtLWNvbmZpZyB2aSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQ4MQorbXNnaWQgIiIKKyJUbyBnbyBiYWNrIHRvIGhhdmluZyB0aGUgQjx2aT4gaW1wbGVtZW50YXRpb24gY2hvc2VuIGF1dG9tYXRpY2FsbHksIGRvIHRoaXMgIgorImFzIHJvb3Q6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0ODQKKyMsIGZ1enp5Cittc2dpZCAiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzIC0tYXV0byB2aT4iCittc2dzdHIgInVwZGF0ZS1hbHRlcm5hdGl2ZXMgLS1hdXRvIHZpIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDg4CisjLCBmdXp6eQorbXNnaWQgIiIKKyJJZiB5b3UgZmluZCBhIGJ1ZywgcGxlYXNlIHJlcG9ydCBpdCB1c2luZyB0aGUgRGViaWFuIGJ1Zy10cmFja2luZyBzeXN0ZW0uIgorbXNnc3RyICIiCisiQ2FzbyB2b2PDqiBlbmNvbnRyZSB1bSBidWcsIHBvciBmYXZvciByZXBvcnRlLW8gdXNhbmRvIG8gc2lzdGVtYSBkZSAiCisiZ2VyZW5jaWFtZW50byBkZSBidWdzIERlYmlhbiwgb3UsIGNhc28gaXNzbyBuw6NvIHNlamEgcG9zc8OtdmVsLCBlbnZpZSB1bSAiCisibWVuc2FnZW0gZGlyZXRhbWVudGUgcGFyYSBvIGF1dG9yLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQ5MworIywgZnV6enkKK21zZ2lkICIiCisiSWYgeW91IGZpbmQgYW55IGRpc2NyZXBhbmN5IGJldHdlZW4gdGhlIG9wZXJhdGlvbiBvZiBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+ICIKKyJhbmQgdGhpcyBtYW51YWwgcGFnZSwgaXQgaXMgYSBidWcsIGVpdGhlciBpbiB0aGUgaW1wbGVtZW50YXRpb24gb3IgdGhlICIKKyJkb2N1bWVudGF0aW9uOyBwbGVhc2UgcmVwb3J0IGl0LiIKK21zZ3N0ciAiIgorIkNhc28gdm9jw6ogZW5jb250cmUgcXVhbHF1ZXIgZGlzY3JlcMOibmNpYSBlbnRyZSBhIG9wZXJhw6fDo28gZGUgQjx1cGRhdGUtIgorImFsdGVybmF0aXZlcz4gZSBlc3RhIHDDoWdpbmEgZGUgbWFudWFsLCBpc3NvIMOpIHVtIGJ1Zywgb3UgbmEgaW1wbGVtZW50YcOnw6NvIG91ICIKKyJuYSBkb2N1bWVudGHDp8OjbzsgcG9yIGZhdm9yIHJlcG9ydGUgaXNzby4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo1MDQKK21zZ2lkICIiCisiVGhpcyBtYW51YWwgcGFnZSBpcyBjb3B5cmlnaHQgMTk5NywxOTk4IENoYXJsZXMgQnJpc2NvZS1TbWl0aCBhbmQgb3RoZXJzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NTA3CisjLCBmdXp6eQorbXNnaWQgIiIKKyJUaGlzIGlzIGZyZWUgZG9jdW1lbnRhdGlvbjsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSB2ZXJzaW9uIDIgb3IgIgorImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIFdBUlJBTlRZLiIKK21zZ3N0ciAiIgorIkRlYmlhbiB1cGRhdGUtYWx0ZXJuYXRpdmVzIMOpIGNvcHlyaWdodCAxOTk1IElhbiBKYWNrc29uLiAgSXNzbyDDqSBzb2Z0d2FyZSAiCisibGl2cmU7IHZlamEgYSBMaWNlbsOnYSBQw7pibGljYSBHZXJhbCBHTlUgdmVyc8OjbyAyIG91IHBvc3RlcmlvciBwYXJhIGFzICIKKyJjb25kacOnw7VlcyBkZSBjw7NwaWEuIE7Dgk8gZXhpc3RlIGdhcmFudGlhLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjUxMAorIywgZnV6enkKK21zZ2lkICJCPGxuPigxKSwgRkhTLCB0aGUgRmlsZXN5c3RlbSBIaWVyYXJjaHkgU3RhbmRhcmQuIgorbXNnc3RyICJCPGxuPigxKSwgRkhTLCBvIFBhZHLDo28gZGEgSGllcmFycXVpYSBkbyBTaXN0ZW1hIGRlIEFycXVpdm9zLiIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA5LTAyLTI3IgorI34gbXNnc3RyICIyMDA2LTA0LTA5IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMTEtMDQtMjkiCisjfiBtc2dzdHIgIjIwMDYtMDQtMDkiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwNi0wMi0yOCIKKyN+IG1zZ3N0ciAiMjAwNi0wNC0wOSIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA3LTAzLTA3IgorI34gbXNnc3RyICIyMDA2LTA0LTA5IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDctMDctMTYiCisjfiBtc2dzdHIgIjIwMDYtMDQtMDkiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwOS0wMy0xNSIKKyN+IG1zZ3N0ciAiMjAwNi0wNC0wOSIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDExLTA0LTI3IgorI34gbXNnc3RyICIyMDA2LTA0LTA5IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMTEtMDctMDciCisjfiBtc2dzdHIgIjIwMDYtMDQtMDkiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAxMC0wNC0xOCIKKyN+IG1zZ3N0ciAiMjAwNi0wNC0wOSIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDEwLTA3LTI5IgorI34gbXNnc3RyICIyMDA2LTA0LTA5IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMTAtMTEtMjIiCisjfiBtc2dzdHIgIjIwMDYtMDQtMDkiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAxMC0wMS0yOCIKKyN+IG1zZ3N0ciAiMjAwNi0wNC0wOSIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA4LTA4LTE4IgorI34gbXNnc3RyICIyMDA2LTA0LTA5IgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICJCPGRwa2c+IGNhbiBhbHNvIGJlIHVzZWQgYXMgYSBmcm9udC1lbmQgdG8gQjxkcGtnLWRlYj4oMSkuICBUaGUgZm9sbG93aW5nICIKKyN+ICJhcmUgQjxkcGtnLWRlYj4gYWN0aW9ucywgYW5kIGlmIHRoZXkgYXJlIGVuY291bnRlcmVkLCBCPGRwa2c+IGp1c3QgcnVucyAiCisjfiAiQjxkcGtnLWRlYj4gd2l0aCB0aGUgcGFyYW1ldGVycyBnaXZlbiB0byBpdDoiCisjfiBtc2dzdHIgIiIKKyN+ICJPIEI8ZHBrZz4gcG9kZSB0YW1iw6ltIHNlciB1c2FkbyBjb21vIGZyb250LWVuZCBwYXJhIG8gQjxkcGtnLWRlYj4uICBBICIKKyN+ICJzZWd1aXIgZXN0w6NvIGFzIGHDp8O1ZXMgZG8gQjxkcGtnLWRlYj4sIGUgc2UgZm9yZW0gZW5jb250cmFkYXMsIG8gQjxkcGtnPiAiCisjfiAiYXBlbmFzIGV4ZWN1dGEgbyBCPGRwa2ctZGViPiBjb20gb3MgcGFyw6JtZXRyb3MgZGFkb3MgYSBlbGU6IgorCisjfiBtc2dpZCAiIgorI34gIiAgICBCPC1iPiwgQjwtLWJ1aWxkPixcbiIKKyN+ICIgICAgQjwtYz4sIEI8LS1jb250ZW50cz4sXG4iCisjfiAiICAgIEI8LUk+LCBCPC0taW5mbz4sXG4iCisjfiAiICAgIEI8LWY+LCBCPC0tZmllbGQ+LFxuIgorI34gIiAgICBCPC1lPiwgQjwtLWNvbnRyb2w+LFxuIgorI34gIiAgICBCPC14PiwgQjwtLWV4dHJhY3Q+LFxuIgorI34gIiAgICBCPC1YPiwgQjwtLXZleHRyYWN0PiwgYW5kXG4iCisjfiAiICAgIEI8LS1mc3lzLXRhcmZpbGU+LlxuIgorI34gbXNnc3RyICIiCisjfiAiICAgIEI8LWI+LCBCPC0tYnVpbGQ+LFxuIgorI34gIiAgICBCPC1jPiwgQjwtLWNvbnRlbnRzPixcbiIKKyN+ICIgICAgQjwtST4sIEI8LS1pbmZvPixcbiIKKyN+ICIgICAgQjwtZj4sIEI8LS1maWVsZD4sXG4iCisjfiAiICAgIEI8LWU+LCBCPC0tY29udHJvbD4sXG4iCisjfiAiICAgIEI8LXg+LCBCPC0tZXh0cmFjdD4sXG4iCisjfiAiICAgIEI8LVg+LCBCPC0tdmV4dHJhY3Q+LCBlXG4iCisjfiAiICAgIEI8LS1mc3lzLXRhcmZpbGU+LlxuIgorCisjfiBtc2dpZCAiUGxlYXNlIHJlZmVyIHRvIEI8ZHBrZy1kZWI+KDEpIGZvciBpbmZvcm1hdGlvbiBhYm91dCB0aGVzZSBhY3Rpb25zLiIKKyN+IG1zZ3N0ciAiIgorI34gIlBvciBmYXZvciwgcmVmaXJhLXNlIGEgQjxkcGtnLWRlYj4oMSkgcGFyYSBpbmZvcm1hw6fDtWVzIHNvYnJlIGVzc2FzIGHDp8O1ZXMuIgorCisjLCBmdXp6eQorI34gbXNnaWQgIkI8LS1uZXc+LCBCPC0tb2xkPiIKKyN+IG1zZ3N0ciAiQjwtLW5ldz4gfCBCPC0tb2xkPiIKKworIywgZnV6enkKKyN+IG1zZ2lkICIiCisjfiAiU2VsZWN0IG5ldyBvciBvbGQgYmluYXJ5IHBhY2thZ2UgZm9ybWF0LiBUaGlzIGlzIGEgQjxkcGtnLWRlYj4oMSkgIG9wdGlvbi4iCisjfiBtc2dzdHIgIiIKKyN+ICJTZWxlY2lvbmEgbyBmb3JtYXRvIGJpbsOhcmlvIG5vdm8gb3UgYW50aWdvIGRlIHBhY290ZS4gSXN0byDDqSB1bWEgb3DDp8OjbyBkbyAiCisjfiAiQjxkcGtnLWRlYj4oMSkuIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICJEb24ndCByZWFkIG9yIGNoZWNrIGNvbnRlbnRzIG9mIGNvbnRyb2wgZmlsZSB3aGlsZSBidWlsZGluZyBhIHBhY2thZ2UuICAiCisjfiAiVGhpcyBpcyBhIEI8ZHBrZy1kZWI+KDEpIG9wdGlvbi4iCisjfiBtc2dzdHIgIiIKKyN+ICJOw6NvIGzDqiBvdSB2ZXJpZmljYSBvIGNvbnRlw7pkbyBkbyBhcnF1aXZvIGRlIGNvbnRyb2xlIGVucXVhbnRvIGNyaWEgdW0gIgorI34gInBhY290ZS4gSXN0byDDqSB1bWEgb3DDp8OjbyBkbyBCPGRwa2ctZGViPigxKS4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwOS0wOC0xNSIKKyN+IG1zZ3N0ciAiMjAwNi0wNC0wOSIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA5LTExLTIxIgorI34gbXNnc3RyICIyMDA2LTA0LTA5IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMTAtMDMtMDciCisjfiBtc2dzdHIgIjIwMDYtMDQtMDkiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAxMC0xMC0xMiIKKyN+IG1zZ3N0ciAiMjAwNi0wNC0wOSIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA5LTA4LTA3IgorI34gbXNnc3RyICIyMDA2LTA0LTA5IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMTAtMDQtMTYiCisjfiBtc2dzdHIgIjIwMDYtMDQtMDkiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwOS0wNS0xOSIKKyN+IG1zZ3N0ciAiMjAwNi0wNC0wOSIKKworIywgZnV6enkKKyN+IG1zZ2lkICIwIgorI34gbXNnc3RyICIwIgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDktMTAtMDEiCisjfiBtc2dzdHIgIjIwMDYtMDQtMDkiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwOS0wNi0yNiIKKyN+IG1zZ3N0ciAiMjAwNi0wNC0wOSIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA5LTA1LTEwIgorI34gbXNnc3RyICIyMDA2LTA0LTA5IgorCisjLCBmdXp6eQorI34gbXNnaWQgIkI8LS1hZG1pbmRpcj5JPCBFPGx0PmRpcmVjdG9yeUU8Z3Q+PiIKKyN+IG1zZ3N0ciAiQjwtLWFkbWluZGlyPiBJPGRpcmV0w7NyaW8+IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIiCisjfiBtc2dzdHIgIjIiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwOS0wMy0wOCIKKyN+IG1zZ3N0ciAiMjAwNi0wNC0wOSIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA5LTExLTExIgorI34gbXNnc3RyICIyMDA2LTA0LTA5IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDktMDItMjYiCisjfiBtc2dzdHIgIjIwMDYtMDQtMDkiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwOS0wNC0xMyIKKyN+IG1zZ3N0ciAiMjAwNi0wNC0wOSIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA3LTEwLTA4IgorI34gbXNnc3RyICIyMDA2LTA0LTA5IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMTAtMDQtMTEiCisjfiBtc2dzdHIgIjIwMDYtMDQtMDkiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwOS0xMS0xMiIKKyN+IG1zZ3N0ciAiMjAwNi0wNC0wOSIKKworIywgZnV6enkKKyN+IG1zZ2lkICJCPC0tbGljZW5jZT4sIEI8LS1saWNlbnNlPiIKKyN+IG1zZ3N0ciAiQjxkcGtnIC0tbGljZW5jZT4gfCBCPGRwa2cgLS1saWNlbnNlPiIKKworI34gbXNnaWQgIkRpc3BsYXkgQjxkcGtnPiBsaWNlbmNlLiIKKyN+IG1zZ3N0ciAiRXhpYmUgYSBsaWNlbsOnYSBkbyBCPGRwa2c+LiIKKworI34gbXNnaWQgIkVOVklST05NRU5UIFZBUklBQkxFUyIKKyN+IG1zZ3N0ciAiVkFSScOBVkVJUyBERSBBTUJJRU5URSIKKworI34gbXNnaWQgIkI8RFBLR19OT19UU1RQPiIKKyN+IG1zZ3N0ciAiQjxEUEtHX05PX1RTVFA+IgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICJEZWZpbmUgdGhpcyB0byBzb21ldGhpbmcgaWYgeW91IHByZWZlciBCPGRwa2c+IHN0YXJ0aW5nIGEgbmV3IHNoZWxsICIKKyN+ICJyYXRoZXIgdGhhbiBzdXNwZW5kaW5nIGl0c2VsZiwgd2hpbGUgZG9pbmcgYSBzaGVsbCBlc2NhcGUuIgorI34gbXNnc3RyICIiCisjfiAiRGVmaW5hIGlzc28gcGFyYSBhbGd1bWEgY29pc2Egc2Ugdm9jw6ogcHJlZmVyaXIgcXVlIG8gQjxkcGtnPiBpbmljaWUgdW0gIgorI34gIm5vdm8gc2hlbGwgYW8gaW52w6lzIGRlIHN1c3BlbmRlciBhIHNpIHByw7NwcmlvLCBxdWFuZG8gZmF6ZW5kbyB1bSBlc2NhcGUgIgorI34gImRlIHNoZWxsLiIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA5LTA2LTEzIgorI34gbXNnc3RyICIyMDA2LTA0LTA5IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDktMDEtMDciCisjfiBtc2dzdHIgIjIwMDYtMDQtMDkiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjwtLWxpY2Vuc2U+LCBCPC0tbGljZW5jZT4iCisjfiBtc2dzdHIgIkI8ZHBrZyAtLWxpY2VuY2U+IHwgQjxkcGtnIC0tbGljZW5zZT4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjwtbD4sIEI8LS1saWNlbnNlPiIKKyN+IG1zZ3N0ciAiQjxkcGtnIC0tbGljZW5jZT4gfCBCPGRwa2cgLS1saWNlbnNlPiIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA5LTA5LTA2IgorI34gbXNnc3RyICIyMDA2LTA0LTA5IgorCisjLCBmdXp6eQorI34gbXNnaWQgIkI8LUk+W0k8ZmlsZS1wYXR0ZXJuPl0iCisjfiBtc2dzdHIgIkI8LS1sb2c9Pkk8ZmlsZW5hbWU+IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDktMDgtMjAiCisjfiBtc2dzdHIgIjIwMDYtMDQtMDkiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjwtLWxpY2VuY2U+fEI8LS1saWNlbnNlPiIKKyN+IG1zZ3N0ciAiQjxkcGtnIC0tbGljZW5jZT4gfCBCPGRwa2cgLS1saWNlbnNlPiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJCPC1oPiIKKyN+IG1zZ3N0ciAiQjwtRz4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjwtLXdpdGhvdXQtcXVpbHQ+IgorI34gbXNnc3RyICJCPC0tcXVpZXQ+IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDgtMDQtMDkiCisjfiBtc2dzdHIgIjIwMDYtMDQtMDkiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwNy0wMy0wNiIKKyN+IG1zZ3N0ciAiMjAwNi0wNC0wOSIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA3LTA2LTEyIgorI34gbXNnc3RyICIyMDA2LTA0LTA5IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDktMDEtMDQiCisjfiBtc2dzdHIgIjIwMDYtMDQtMDkiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwOS0wMi0xOCIKKyN+IG1zZ3N0ciAiMjAwNi0wNC0wOSIKKworIywgZnV6enkKKyN+IG1zZ2lkICJGb3JnZXQgYWJvdXQgdW5pbnN0YWxsZWQgdW5hdmFpbGFibGUgcGFja2FnZXMuIgorI34gbXNnc3RyICIiCisjfiAiRGVzcHJlemEgaW5mb3JtYcOnw7VlcyBzb2JyZSBwYWNvdGVzIG7Do28gaW5zdGFsYWRvcyBlIG7Do28gZGlzcG9uw612ZWlzLiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJpbnN0YWxsLWluZm8iCisjfiBtc2dzdHIgIkI8aW5zdGFsbD4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjxbLS1dID5JPGZpbGVuYW1lPiIKKyN+IG1zZ3N0ciAiQjwtLWxvZz0+STxmaWxlbmFtZT4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjwtLXJlbW92ZT4iCisjfiBtc2dzdHIgIkI8LS12ZXJib3NlPiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJCPC0tcmVtb3ZlLWV4YWN0bHk+IgorI34gbXNnc3RyICJCPC0tcmVtb3ZlPiBJPG5vbWUgY2FtaW5obz4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjwtLWluZm9kaXI9Pkk8aW5mb2Rpcj4iCisjfiBtc2dzdHIgIkI8LS1hZG1pbmRpcj4gSTxkaXJldMOzcmlvPiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJCPC0ta2VlcC1vbGQ+IgorI34gbXNnc3RyICJCPC0taGVscD4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwNy0wMS0yNCIKKyN+IG1zZ3N0ciAiMjAwNi0wNC0wOSIKKworIywgZnV6enkKKyN+IG1zZ2lkICJCPDgyMi1kYXRlPiIKKyN+IG1zZ3N0ciAiQjwtLXRlc3Q+IgorCisjLCBmdXp6eQorI34gbXNnaWQgIkI8Y2xlYW51cC1pbmZvPiBbSTxvcHRpb25zPl0gW0I8LS0+XSBbSTxkaXJuYW1lPl0iCisjfiBtc2dzdHIgIkI8dXBkYXRlLWFsdGVybmF0aXZlcz4gW0k8b3B0w6fDtWVzPl0gQjwtLWF1dG8+IEk8bm9tZT4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjwtLXVuc2FmZT4iCisjfiBtc2dzdHIgIkI8LS1xdWlldD4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwOC0wMS0zMCIKKyN+IG1zZ3N0ciAiMjAwNi0wNC0wOSIKKworI34gbXNnaWQgImdlbmVyaWMgbmFtZSIKKyN+IG1zZ3N0ciAibm9tZSBnZW7DqXJpY28iCisKKyN+IG1zZ2lkICJzeW1saW5rIgorI34gbXNnc3RyICJsaWdhw6fDo28gc2ltYsOzbGljYSAoc3ltbGluaykiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiIgorI34gIldpdGhvdXQgYW55IGZ1cnRoZXIgcXVhbGlmaWNhdGlvbiwgdGhpcyBtZWFucyBhIHN5bWJvbGljIGxpbmsgaW4gdGhlICIKKyN+ICJhbHRlcm5hdGl2ZXMgZGlyZWN0b3J5OiBvbmUgd2hpY2ggdGhlIHN5c3RlbSBhZG1pbmlzdHJhdG9yIGlzIGV4cGVjdGVkIHRvICIKKyN+ICJhZGp1c3QuIgorI34gbXNnc3RyICIiCisjfiAiU2VtIG5lbmh1bWEgcXVhbGlmaWNhw6fDo28gZnV0dXJhLCBlc3RhIHNpZ25pZmljYSB1bWEgbGlnYcOnw6NvIHNpbWLDs2xpY2Egbm8gIgorI34gImRpcmV0w7NyaW8gZGUgYWx0ZXJuYXRpdmFzOiBvIHF1YWwgZXNwZXJhLXNlIHF1ZSBvIGFkbWluaXN0cmFkb3IgZG8gIgorI34gInNpc3RlbWEgYWp1c3RlLiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJCPEVycm9yOj4gRTxsdD5lcnJvciBkZXRhaWxzRTxndD4iCisjfiBtc2dzdHIgIkI8LS1sb2c9Pkk8ZmlsZW5hbWU+IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDctMTAtMDYiCisjfiBtc2dzdHIgIjIwMDYtMDQtMDkiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwOC0wMy0xNCIKKyN+IG1zZ3N0ciAiMjAwNi0wNC0wOSIKKworIywgZnV6enkKKyN+IG1zZ2lkICJCPC1FPiIKKyN+IG1zZ3N0ciAiQjwtRz4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjwtVz4iCisjfiBtc2dzdHIgIkI8LUc+IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDctMDktMDgiCisjfiBtc2dzdHIgIjIwMDYtMDQtMDkiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwOC0wMy0wMiIKKyN+IG1zZ3N0ciAiMjAwNi0wNC0wOSIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA4LTAxLTEzIgorI34gbXNnc3RyICIyMDA2LTA0LTA5IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDgtMDMtMjUiCisjfiBtc2dzdHIgIjIwMDYtMDQtMDkiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwOC0wMy0xNiIKKyN+IG1zZ3N0ciAiMjAwNi0wNC0wOSIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA4LTA0LTA4IgorI34gbXNnc3RyICIyMDA2LTA0LTA5IgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICJTZW5kIHBhY2thZ2Ugc3RhdHVzIGluZm8gdG8gZmlsZSBkZXNjcmlwdG9yIEk8RTxsdD5uRTxndD4+LiBUaGlzIGNhbiBiZSAiCisjfiAiZ2l2ZW4gbXVsdGlwbGUgdGltZXMuIFN0YXR1cyB1cGRhdGVzIGFyZSBvZiB0aGUgZm9ybSBgc3RhdHVzOiAiCisjfiAiRTxsdD5wa2dFPGd0PjogRTxsdD5wa2cgc3RhdGVFPGd0PicuICBFcnJvcnMgYXJlIHJlcG9ydGVkIGFzIGBzdGF0dXM6ICIKKyN+ICJFPGx0PnBrZ0U8Z3Q+OiBlcnJvcjogZXh0ZW5kLWVycm9yLW1lc3NhZ2UnLiAgQ29uZmlndXJhdGlvbiBmaWxlICIKKyN+ICJjb25mbGljdHMgYXJlIHJlcG9ydGVkIGFzIGBzdGF0dXM6IGNvbmZmaWxlLXByb21wdDogY29uZmZpbGUgOiAnY3VycmVudC0iCisjfiAiY29uZmZpbGUnICduZXctY29uZmZpbGUnIHVzZXJlZGl0ZWQgZGlzdGVkaXRlZCcuIgorI34gbXNnc3RyICIiCisjfiAiRW52aWEgYSBpbmZvcm1hw6fDo28gZG8gZXN0YWRvIGRvIHBhY290ZSBwYXJhIG8gZGVzY3JpdG9yIGRlIGFycXVpdm8gIgorI34gIkk8RTxsdD5uRTxndD4+LiAgSXNzbyBwb2RlIHNlciBkYWRvIG3Dumx0aXBsYXMgdmV6ZXMuIEFzIGF0dWFsaXphw6fDtWVzIGRlICIKKyN+ICJlc3RhZG8gc8OjbyBkYSBmb3JtYSBgc3RhdHVzOiBFPGx0PnBrZ0U8Z3Q+OiBFPGx0PnBrZyBxc3RhdGVFPGd0PicuIgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDgtMDEtMDMiCisjfiBtc2dzdHIgIjIwMDYtMDQtMDkiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwNy0wOS0yNCIKKyN+IG1zZ3N0ciAiMjAwNi0wNC0wOSIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA3LTAzLTA4IgorI34gbXNnc3RyICIyMDA2LTA0LTA5IgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICJEb24ndCBhY3R1YWxseSBkbyBhbnl0aGluZywganVzdCBzYXkgd2hhdCB3b3VsZCBiZSBkb25lLiAgVGhpcyBvcHRpb24gaXMgIgorI34gIm5vdCB5ZXQgaW1wbGVtZW50ZWQuIgorI34gbXNnc3RyICIiCisjfiAiTsOjbyBmYXogbmFkYSwgc29tZW50IGRpeiBvIHF1ZSBzZXJpYSBmZWl0by4gRXN0YSBvcMOnw6NvIGFpbmRhIG7Do28gZXN0w6EgIgorI34gImltcGxlbWVudGFkYS4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwNy0wOS0yOCIKKyN+IG1zZ3N0ciAiMjAwNi0wNC0wOSIKKworI34gbXNnaWQgIiIKKyN+ICJTZWUgSTwvdXNyL3NoYXJlL2RvYy9kcGtnL1RIQU5LUz4gZm9yIHRoZSBsaXN0IG9mIHBlb3BsZSB3aG8gaGF2ZVxuIgorI34gImNvbnRyaWJ1dGVkIHRvIEI8ZHBrZz4uXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJWZWphIEI8L3Vzci9zaGFyZS9kb2MvZHBrZy9USEFOS1M+IHBhcmEgYSBsaXN0YSBkZSBwZXNzb2FzIHF1ZVxuIgorI34gImNvbnRyaWJ1w61yYW0gcGFyYSBvIEI8ZHBrZz4uXG4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwNy0wOC0zMSIKKyN+IG1zZ3N0ciAiMjAwNi0wNC0wOSIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA3LTA1LTE1IgorI34gbXNnc3RyICIyMDA2LTA0LTA5IgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgdmVyc2lvbiAyIG9yICIKKyN+ICJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS4iCisjfiBtc2dzdHIgIiIKKyN+ICJEZWJpYW4gdXBkYXRlLWFsdGVybmF0aXZlcyDDqSBjb3B5cmlnaHQgMTk5NSBJYW4gSmFja3Nvbi4gIElzc28gw6kgc29mdHdhcmUgIgorI34gImxpdnJlOyB2ZWphIGEgTGljZW7Dp2EgUMO6YmxpY2EgR2VyYWwgR05VIHZlcnPDo28gMiBvdSBwb3N0ZXJpb3IgcGFyYSBhcyAiCisjfiAiY29uZGnDp8O1ZXMgZGUgY8OzcGlhLiBOw4JPIGV4aXN0ZSBnYXJhbnRpYS4iCisKKyN+IG1zZ2lkICJCPGRwa2cgLUM+IHwgQjwtLWF1ZGl0PiIKKyN+IG1zZ3N0ciAiQjxkcGtnIC1DPiB8IEI8LS1hdWRpdD4iCisKKyN+IG1zZ2lkICJCPGRwa2cgLS1oZWxwPiIKKyN+IG1zZ3N0ciAiQjxkcGtnIC0taGVscD4iCisKKyN+IG1zZ2lkICJCPGRwa2cgLURoID58QjwgLS1kZWJ1Zz1oZWxwPiIKKyN+IG1zZ3N0ciAiQjxkcGtnIC1EaCA+fEI8IC0tZGVidWc9aGVscD4iCisKKyN+IG1zZ2lkICJCPGRwa2cgLS1saWNlbmNlPiB8IEI8ZHBrZyAtLWxpY2Vuc2U+IgorI34gbXNnc3RyICJCPGRwa2cgLS1saWNlbmNlPiB8IEI8ZHBrZyAtLWxpY2Vuc2U+IgorCisjfiBtc2dpZCAiQjxkcGtnIC0tdmVyc2lvbj4iCisjfiBtc2dzdHIgIkI8ZHBrZyAtLXZlcnNpb24+IgorCisjfiBtc2dpZCAiQjwtLXJvb3Q9Pkk8ZGlyPiB8IEI8LS1hZG1pbmRpcj0+STxkaXI+IHwgQjwtLWluc3RkaXI9Pkk8ZGlyPiIKKyN+IG1zZ3N0ciAiQjwtLXJvb3Q9Pkk8ZGlyPiB8IEI8LS1hZG1pbmRpcj0+STxkaXI+IHwgQjwtLWluc3RkaXI9Pkk8ZGlyPiIKKworIywgZnV6enkKKyN+IG1zZ2lkICIiCisjfiAiQ29weXJpZ2h0IDE5OTUsMTk5NiBFcmljayBCcmFuZGVyaG9yc3QuICBCPGRwa2ctbmFtZT4gaXMgZnJlZSBzb2Z0d2FyZTsgIgorI34gInNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgdmVyc2lvbiAyIG9yIGxhdGVyIGZvciBjb3B5aW5nICIKKyN+ICJjb25kaXRpb25zLiBUaGVyZSBpcyBCPG5vPiB3YXJyYW50eS4iCisjfiBtc2dzdHIgIiIKKyN+ICJEZWJpYW4gdXBkYXRlLWFsdGVybmF0aXZlcyDDqSBjb3B5cmlnaHQgMTk5NSBJYW4gSmFja3Nvbi4gIElzc28gw6kgc29mdHdhcmUgIgorI34gImxpdnJlOyB2ZWphIGEgTGljZW7Dp2EgUMO6YmxpY2EgR2VyYWwgR05VIHZlcnPDo28gMiBvdSBwb3N0ZXJpb3IgcGFyYSBhcyAiCisjfiAiY29uZGnDp8O1ZXMgZGUgY8OzcGlhLiBOw4JPIGV4aXN0ZSBnYXJhbnRpYS4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiIgorI34gIkNvcHlyaWdodCAxOTk0LCBJYW4gSmFja3Nvbi4gIEI8aW5zdGFsbC1pbmZvPiBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlICIKKyN+ICJHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSB2ZXJzaW9uIDIgb3IgbGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gIgorI34gIlRoZXJlIGlzIEk8bm8+IHdhcnJhbnR5LiIKKyN+IG1zZ3N0ciAiIgorI34gIkRlYmlhbiB1cGRhdGUtYWx0ZXJuYXRpdmVzIMOpIGNvcHlyaWdodCAxOTk1IElhbiBKYWNrc29uLiAgSXNzbyDDqSBzb2Z0d2FyZSAiCisjfiAibGl2cmU7IHZlamEgYSBMaWNlbsOnYSBQw7pibGljYSBHZXJhbCBHTlUgdmVyc8OjbyAyIG91IHBvc3RlcmlvciBwYXJhIGFzICIKKyN+ICJjb25kacOnw7VlcyBkZSBjw7NwaWEuIE7Dgk8gZXhpc3RlIGdhcmFudGlhLiIKKworIywgZnV6enkKKyN+IG1zZ2lkICIiCisjfiAiRGViaWFuIHVwZGF0ZS1hbHRlcm5hdGl2ZXMgaXMgY29weXJpZ2h0IDE5OTUgSWFuIEphY2tzb24uIEl0IGlzIGZyZWUgIgorI34gInNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbmNlIHZlcnNpb24gMiBvciBsYXRlciBmb3IgIgorI34gImNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuIgorI34gbXNnc3RyICIiCisjfiAiRGViaWFuIHVwZGF0ZS1hbHRlcm5hdGl2ZXMgw6kgY29weXJpZ2h0IDE5OTUgSWFuIEphY2tzb24uICBJc3NvIMOpIHNvZnR3YXJlICIKKyN+ICJsaXZyZTsgdmVqYSBhIExpY2Vuw6dhIFDDumJsaWNhIEdlcmFsIEdOVSB2ZXJzw6NvIDIgb3UgcG9zdGVyaW9yIHBhcmEgYXMgIgorI34gImNvbmRpw6fDtWVzIGRlIGPDs3BpYS4gTsOCTyBleGlzdGUgZ2FyYW50aWEuIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICJUaGlzIG1hbnVhbCBwYWdlIGlzIGNvcHlyaWdodCAxOTk3Lzk4IENoYXJsZXMgQnJpc2NvZS1TbWl0aC4gIFRoaXMgaXMgIgorI34gImZyZWUgZG9jdW1lbnRhdGlvbjsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSB2ZXJzaW9uIDIgb3IgbGF0ZXIgIgorI34gImZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIFdBUlJBTlRZLiIKKyN+IG1zZ3N0ciAiIgorI34gIkVzdGEgcMOhZ2luYSBkZSBtYW51YWwgw6kgY29weXJpZ2h0IDE5OTcvOTggQ2hhcmxlcyBCcmlzY29lLVNtaXRoLiAgSXN0byDDqSAiCisjfiAiZG9jdW1lbnRhw6fDo28gbGl2cmU7IHZlamEgYSBMaWNlbsOnYSBQw7pibGljYSBHZXJhbCBHTlUgdmVyc8OjbyAyIG91ICIKKyN+ICJwb3N0ZXJpb3IgcGFyYSBjb25kacOnw7VlcyBkZSBjw7NwaWEuIE7Dgk8gZXhpc3RlIGdhcmFudGlhLiIKKworIywgZnV6enkKKyN+IG1zZ2lkICIiCisjfiAiWW91IGNhbiBmaW5kIHRoZSBHTlUgR1BMIGluIC91c3Ivc2hhcmUvY29tbW9uLWxpY2Vuc2VzL0dQTCBvbiBhbnkgRGViaWFuICIKKyN+ICJzeXN0ZW0uIgorI34gbXNnc3RyICIiCisjfiAiVm9jw6ogcG9kZSBlbmNvbnRyYXIgYSBHTlUgR1BMIGVtIC91c3Ivc2hhcmUvY29tbW9uLWxpY2Vuc2VzL0dQTCBlbSAiCisjfiAicXVhbHF1ZXIgc2lzdGVtYSBEZWJpYW4uIgorCisjfiBtc2dpZCAiMjAwNi0wNC0wOSIKKyN+IG1zZ3N0ciAiMjAwNi0wNC0wOSIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA3LTAzLTEzIgorI34gbXNnc3RyICIyMDA2LTA0LTA5IgorCisjLCBmdXp6eQorI34gbXNnaWQgIkI8LS1zaG93PiwgQjwtVz4iCisjfiBtc2dzdHIgIkI8LS1uZXc+IHwgQjwtLW9sZD4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjwtLWZpZWxkPiwgQjwtZj4iCisjfiBtc2dzdHIgIkI8LS1uZXc+IHwgQjwtLW9sZD4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjwtLWNvbnRyb2w+LCBCPC1lPiIKKyN+IG1zZ3N0ciAiSTxjb250cm9sPiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJCPC0taGVscD4sIEI8LWg+IgorI34gbXNnc3RyICJCPC0taGVscD4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiUHJpbnRzIEI8ZHBrZy1kZWI+J3MgdmVyc2lvbiBudW1iZXIuIgorI34gbXNnc3RyICJFeGliZSBpbmZvcm1hw6fDo28gc29icmUgYSB2ZXJzw6NvIGRvIEI8ZHBrZz4uIgorCisjLCBmdXp6eQorI34gbXNnaWQgIkI8LS1saWNlbmNlPiIKKyN+IG1zZ3N0ciAiQjwtLW5vY2hlY2s+IgorCisjLCBmdXp6eQorI34gbXNnaWQgIk9USEVSIE9QVElPTlMiCisjfiBtc2dzdHIgIk9Qw4fDlUVTIgorCisjLCBmdXp6eQorI34gbXNnaWQgIkI8ZHBrZy1kaXZlcnQ+IFtJPG9wdGlvbnM+XSBCPC0tcmVtb3ZlPiBJPEU8bHQ+ZmlsZUU8Z3Q+PiIKKyN+IG1zZ3N0ciAiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBbSTxvcMOnw7Vlcz5dIEI8LS1yZW1vdmU+IEk8bm9tZSBjYW1pbmhvPiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJCPGRwa2ctZGl2ZXJ0PiBbSTxvcHRpb25zPl0gQjwtLWxpc3Q+IEk8RTxsdD5nbG9iLXBhdHRlcm5FPGd0Pj4iCisjfiBtc2dzdHIgIkI8dXBkYXRlLWFsdGVybmF0aXZlcz4gW0k8b3DDp8O1ZXM+XSBCPC0tbGlzdD4gSTxub21lPiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJCPGRwa2ctZGl2ZXJ0PiBbSTxvcHRpb25zPl0gQjwtLXRydWVuYW1lPiBJPEU8bHQ+ZmlsZUU8Z3Q+PiIKKyN+IG1zZ3N0ciAiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBbSTxvcMOnw7Vlcz5dIEI8LS1yZW1vdmU+IEk8bm9tZSBjYW1pbmhvPiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJCPC1oLCAtLWhlbHA+IgorI34gbXNnc3RyICJCPC0taGVscD4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjxkcGtnLXF1ZXJ5PiBCPC1sPnxCPC0tbGlzdD4gSTxwYWNrYWdlLW5hbWUtcGF0dGVybj4gLi4uIgorI34gbXNnc3RyICJCPGRwa2cgLS1nZXQtc2VsZWN0aW9ucz4gW0k8cGFkcsOjbz4uLi5dIgorCisjLCBmdXp6eQorI34gbXNnaWQgIkI8ZHBrZy1xdWVyeT4gQjwtVz58QjwtLXNob3c+IEk8cGFja2FnZS1uYW1lLXBhdHRlcm4+IC4uLiIKKyN+IG1zZ3N0ciAiQjxkcGtnIC0tZ2V0LXNlbGVjdGlvbnM+IFtJPHBhZHLDo28+Li4uXSIKKworIywgZnV6enkKKyN+IG1zZ2lkICJCPGRwa2ctcXVlcnk+IEI8LXM+fEI8LS1zdGF0dXM+IEk8cGFja2FnZS1uYW1lPiAuLi4iCisjfiBtc2dzdHIgIkI8ZHBrZyAtaT4gfCBCPC0taW5zdGFsbD4gSTxhcnF1aXZvX2RvX3BhY290ZT4uLi4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjxkcGtnLXF1ZXJ5PiBCPC1MPnxCPC0tbGlzdGZpbGVzPiBJPHBhY2thZ2UtbmFtZT4gLi4uIgorI34gbXNnc3RyICJCPGRwa2cgLWk+IHwgQjwtLWluc3RhbGw+IEk8YXJxdWl2b19kb19wYWNvdGU+Li4uIgorCisjLCBmdXp6eQorI34gbXNnaWQgIkI8ZHBrZy1xdWVyeT4gQjwtcD58QjwtLXByaW50LWF2YWlsPiBJPHBhY2thZ2UtbmFtZT4gLi4uIgorI34gbXNnc3RyICJCPGRwa2cgLUE+IHwgQjwtLXJlY29yZC1hdmFpbD4gSTxhcnF1aXZvX2RvX3BhY290ZT4gLi4uIgorCisjLCBmdXp6eQorI34gbXNnaWQgIkI8ZHBrZy1xdWVyeT4gQjwtLWxpY2VuY2U+fEI8LS1saWNlbnNlPiIKKyN+IG1zZ3N0ciAiQjxkcGtnIC0tbGljZW5jZT4gfCBCPGRwa2cgLS1saWNlbnNlPiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJCPGRwa2ctcXVlcnk+IEI8LS12ZXJzaW9uPiIKKyN+IG1zZ3N0ciAiQjxkcGtnIC0tdmVyc2lvbj4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiRGlzcGxheSBsaWNlbmNlIGFuZCBjb3B5cmlnaHQgaW5mb3JtYXRpb24uIgorI34gbXNnc3RyICJFeGliZSBpbmZvcm1hw6fDo28gc29icmUgYSB2ZXJzw6NvIGRvIEI8ZHBrZz4uIgorCisjLCBmdXp6eQorI34gbXNnaWQgIkRpc3BsYXkgdmVyc2lvbiBpbmZvcm1hdGlvbi4iCisjfiBtc2dzdHIgIkV4aWJlIGluZm9ybWHDp8OjbyBzb2JyZSBhIHZlcnPDo28gZG8gQjxkcGtnPi4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQ09NTU9OIE9QVElPTlMiCisjfiBtc2dzdHIgIk9Qw4fDlUVTIENPTVVOUyIKKworIywgZnV6enkKKyN+IG1zZ2lkICJCPC14PiIKKyN+IG1zZ3N0ciAiQjwtRz4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiIgorI34gIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSB2ZXJzaW9uIDIgb3IgIgorI34gImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIFdBUlJBTlRZLiBTZWUgQjwvdXNyL3NoYXJlL2RvYy8iCisjfiAiZHBrZy9jb3B5cmlnaHQ+IGFuZCBCPC91c3Ivc2hhcmUvY29tbW9uLWxpY2Vuc2VzL0dQTD4gZm9yIGRldGFpbHMuIgorI34gbXNnc3RyICIiCisjfiAiRGViaWFuIHVwZGF0ZS1hbHRlcm5hdGl2ZXMgw6kgY29weXJpZ2h0IDE5OTUgSWFuIEphY2tzb24uICBJc3NvIMOpIHNvZnR3YXJlICIKKyN+ICJsaXZyZTsgdmVqYSBhIExpY2Vuw6dhIFDDumJsaWNhIEdlcmFsIEdOVSB2ZXJzw6NvIDIgb3UgcG9zdGVyaW9yIHBhcmEgYXMgIgorI34gImNvbmRpw6fDtWVzIGRlIGPDs3BpYS4gTsOCTyBleGlzdGUgZ2FyYW50aWEuIgorCisjLCBmdXp6eQorI34gbXNnaWQgIkI8ZHBrZy1zcGxpdD4gQjwtbD58QjwtLWxpc3RxPiIKKyN+IG1zZ3N0ciAiQjxkcGtnIC1DPiB8IEI8LS1hdWRpdD4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjwtLWpvaW4+LCBCPC1qPiIKKyN+IG1zZ3N0ciAiQjwtLW5ldz4gfCBCPC0tb2xkPiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJCPC0tbGlzdHE+LCBCPC1sPiIKKyN+IG1zZ3N0ciAiQjwtLWxpc3Q+IEk8bGlnYcOnw6NvPiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJCPC0tZGlzY2FyZD4sIEI8LWQ+IgorI34gbXNnc3RyICJCPC0tZGlzcGxheT4gSTxsaWdhw6fDo28+IgorCisjLCBmdXp6eQorI34gbXNnaWQgIkI8LS1ucHF1aWV0PiwgQjwtUT4iCisjfiBtc2dzdHIgIkI8LS1xdWlldD4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjxkcGtnLXN0YXRvdmVycmlkZT4gW0k8b3B0aW9ucz5dIEI8LS1yZW1vdmU+STwgRTxsdD5maWxlRTxndD4+IgorI34gbXNnc3RyICJCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IFtJPG9ww6fDtWVzPl0gQjwtLXJlbW92ZT4gSTxub21lIGNhbWluaG8+IgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICJCPGRwa2ctc3RhdG92ZXJyaWRlPiBbSTxvcHRpb25zPl0gQjwtLWxpc3Q+IFtJPEU8bHQ+Z2xvYi1wYXR0ZXJuRTxndD4+XSIKKyN+IG1zZ3N0ciAiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBbSTxvcMOnw7Vlcz5dIEI8LS1saXN0PiBJPG5vbWU+IgorCisjLCBmdXp6eQorI34gbXNnaWQgIkI8LS1hZG1pbmRpcj4iCisjfiBtc2dzdHIgIkI8LS1hZG1pbmRpcj4gSTxkaXJldMOzcmlvPiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJCPC1IPnxCPC0taGVscD4iCisjfiBtc2dzdHIgIkI8LS1oZWxwPiIKKworI34gbXNnaWQgIiIKKyN+ICJCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IFtJPG9wdGlvbnM+XSBCPC0taW5zdGFsbD4gSTxnZW5uYW1lIHN5bWxpbmsgYWx0ZXJuICIKKyN+ICJwcmlvcml0eT4gW0I8LS1zbGF2ZT4gSTxnZW5uYW1lIHN5bWxpbms+IEk8YWx0ZXJuPl0uLi4iCisjfiBtc2dzdHIgIiIKKyN+ICJCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IFtJPG9ww6fDtWVzPl0gQjwtLWluc3RhbGw+IEk8bGlnYcOnw6NvIG5vbWUgY2FtaW5obyAiCisjfiAicHJpb3JpZGFkZT4gW0I8LS1zbGF2ZT4gSTxsaWdhw6fDo28gbm9tZT4gSTxjYW1pbmhvPl0uLi4iCisKKyN+IG1zZ2lkICJCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IFtJPG9wdGlvbnM+XSBCPC0tcmVtb3ZlPiBJPG5hbWUgcGF0aD4iCisjfiBtc2dzdHIgIkI8dXBkYXRlLWFsdGVybmF0aXZlcz4gW0k8b3DDp8O1ZXM+XSBCPC0tcmVtb3ZlPiBJPG5vbWUgY2FtaW5obz4iCisKKyN+IG1zZ2lkICJCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IFtJPG9wdGlvbnM+XSBCPC0tcmVtb3ZlLWFsbD4gSTxuYW1lPiIKKyN+IG1zZ3N0ciAiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBbSTxvcHRpb25zPl0gQjwtLXJlbW92ZS1hbGw+IEk8bm9tZT4iCisKKyN+IG1zZ2lkICJCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IFtJPG9wdGlvbnM+XSBCPC0tZGlzcGxheT4gSTxuYW1lPiIKKyN+IG1zZ3N0ciAiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBbSTxvcMOnw7Vlcz5dIEI8LS1kaXNwbGF5PiBJPG5vbWU+IgorCisjfiBtc2dpZCAiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBbSTxvcHRpb25zPl0gQjwtLWxpc3Q+IEk8bmFtZT4iCisjfiBtc2dzdHIgIkI8dXBkYXRlLWFsdGVybmF0aXZlcz4gW0k8b3DDp8O1ZXM+XSBCPC0tbGlzdD4gSTxub21lPiIKKworI34gbXNnaWQgIkI8dXBkYXRlLWFsdGVybmF0aXZlcz4gW0k8b3B0aW9ucz5dIEI8LS1jb25maWc+IEk8bmFtZT4iCisjfiBtc2dzdHIgIkI8dXBkYXRlLWFsdGVybmF0aXZlcz4gW0k8b3DDp8O1ZXM+XSBCPC0tY29uZmlnPiBJPG5vbWU+IgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICJFeGFjdGx5IG9uZSBhY3Rpb24gbXVzdCBiZSBzcGVjaWZpZWQgaWYgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBpcyB0byAiCisjfiAicGVyZm9ybSBhbnkgbWVhbmluZ2Z1bCB0YXNrLiAgQW55IG51bWJlciBvZiB0aGUgY29tbW9uIG9wdGlvbnMgbWF5IGJlICIKKyN+ICJzcGVjaWZpZWQgdG9nZXRoZXIgd2l0aCBhbnkgYWN0aW9uLiIKKyN+IG1zZ3N0ciAiIgorI34gIkV4YXRhbWVudGUgdW1hIGHDp8OjbyBkZXZlIHNlciBlc3BlY2lmaWNhZGEgc2UgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBlc3TDoSAiCisjfiAicHJlc3RlciBhIGV4ZWN1dGFyIHF1YWxxdWVyIHRhcmVmYSBzaWduaWZpY2FudGUuICBRdWFscXVlciBuw7ptZXJvIGRlICIKKyN+ICJvcMOnw7VlcyBjb211bnMgcG9kZW0gc2VyIGVzcGVjaWZpY2FkYXMganVudGFzIGNvbSBxdWFscXVlciBhw6fDo28uIgorCisjLCBmdXp6eQorI34gbXNnaWQgIlRlbGwgd2hpY2ggdmVyc2lvbiBvZiBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IHRoaXMgaXMuIgorI34gbXNnc3RyICIiCisjfiAiRGl6IHF1YWwgdmVyc8OjbyBkZSBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IMOpIGVzc2EgKGUgZMOhIGFsZ3VtYSBpbmZvcm1hw6fDo28gIgorI34gInNvYnJlIG8gdXNvKS4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiIgorI34gIlNldCBieSBCPGRwa2c+IHRvIHRoZSBmaWxlbmFtZSBvZiB0aGUgb2xkIGNvbmZpZ3VyYXRpb24gZmlsZSB3aGVuIHlvdSAiCisjfiAic3RhcnQgYSBzaGVsbCB0byBleGFtaW5lIGEgY2hhbmdlZCBjb25maWd1cmF0aW9uLiAgZmlsZS4iCisjfiBtc2dzdHIgIiIKKyN+ICJBanVzdGFkbyBwZWxvIEI8ZHBrZz4gcGFyYSBvIG5vbWUgZG8gYXJxdWl2byBkZSBjb25maWd1cmHDp8OjbyBhbnRpZ28gIgorI34gInF1YW5kbyB2b2PDqiBpbmljaWEgdW0gc2hlbGwgcGFyYSBleGFtaW5hciB1bSBhcnF1aXZvIGRlIGNvbmZpZ3VyYcOnw6NvICIKKyN+ICJtb2RpZmljYWRvLiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJCPERQS0dfTkVXX0NPTkZGSUxFPiIKKyN+IG1zZ3N0ciAiQjxEUEtHX05FV19DT05GRklMRT4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiIgorI34gIlNldCBieSBCPGRwa2c+IHRvIHRoZSBmaWxlbmFtZSBvZiB0aGUgbmV3dmVyc2lvbiBvZiBhIGNvbmZpZ3VyYXRpb24gZmlsZSAiCisjfiAid2hlbiB5b3Ugc3RhcnQgYSBzaGVsbCB0byBleGFtaW5lIGEgY2hhbmdlZCBjb25maWd1cmF0aW9uLiAgZmlsZS4iCisjfiBtc2dzdHIgIiIKKyN+ICJBanVzdGFkbyBwZWxvIEI8ZHBrZz4gcGFyYSBvIG5vbWUgZG8gYXJxdWl2byBkZSBjb25maWd1cmHDp8OjbyBkYSBub3ZhICIKKyN+ICJ2ZXJzw6NvIHF1YW5kbyB2b2PDqiBpbmljaWEgdW0gc2hlbGwgcGFyYSBleGFtaW5hciB1bSBhcnF1aXZvIGRlICIKKyN+ICJjb25maWd1cmHDp8OjbyBtb2RpZmljYWRvLiIKKworIywgZnV6enkKKyN+IG1zZ2lkICIiCisjfiAiQjxhdXRvLXNlbGVjdD4oKik6IFNlbGVjdCBwYWNrYWdlcyB0byBpbnN0YWxsIHRoZW0sIGFuZCBkZXNlbGVjdCBwYWNrYWdlcyAiCisjfiAidG8gcmVtb3ZlIHRoZW0uIgorI34gbXNnc3RyICIiCisjfiAiQjxhdXRvLXNlbGVjdD4oKik6IFNlbGVjaW9uYSBwYWNvdGVzIHBhcmEgc2VyZW0gaW5zdGFsYWRvcyBlIHRpcmEgYSAiCisjfiAic2VsZcOnw6NvIGRlIHBhY290ZXMgYSBzZXJlbSByZW1vdmlkb3MuIgorCisjfiBtc2dpZCAiRFBLRyIKKyN+IG1zZ3N0ciAiRFBLRyIKKworI34gbXNnaWQgIkFwcmlsIDEyLCAxOTk4IgorI34gbXNnc3RyICJBcHJpbCAxMiwgMTk5OCIKKworIywgZnV6enkKKyN+IG1zZ2lkICIiCisjfiAiR2l2ZSBzb21lIHVzYWdlIGluZm9ybWF0aW9uIChhbmQgc2F5IHdoaWNoIHZlcnNpb24gb2YgQjx1cGRhdGUtIgorI34gImFsdGVybmF0aXZlcz4gdGhpcyBpcykuIgorI34gbXNnc3RyICIiCisjfiAiRXhpYmUgaW5mb3JtYcOnw6NvIGRlIHVzbyAoZSBkaXogcXVhbCB2ZXJzw6NvIGRlIEI8dXBkYXRlLWFsdGVybmF0aXZlcz4gw6kgIgorI34gImVzc2EpLiIKKworI34gbXNnaWQgIlVQREFURS1BTFRFUk5BVElWRVMiCisjfiBtc2dzdHIgIlVQREFURS1BTFRFUk5BVElWRVMiCisKKyN+IG1zZ2lkICIxOSBKYW51YXJ5IDE5OTgiCisjfiBtc2dzdHIgIjE5IGRlIEphbmVpcm8gZGUgMTk5OCIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA3LTA3LTE4IgorI34gbXNnc3RyICIyMDA2LTA0LTA5IgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vcG8vcnUuYWRkIGIvZHBrZy0xLjE2LjEuMS9tYW4vcG8vcnUuYWRkCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmU5MmNhMTEKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9wby9ydS5hZGQKQEAgLTAsMCArMSw1IEBACitQTzRBLUhFQURFUjptb2RlPWFmdGVyO3Bvc2l0aW9uPV5cLlRIO2JlZ2luYm91bmRhcnk9RmFrZVBvNGFCb3VuZGFyeQorLlNIINCf0JXQoNCV0JLQntCUCivQn9C10YDQtdCy0ZHQuyDRgSDQsNC90LPQu9C40LnRgdC60L7Qs9C+INCS0LjQutGC0L7RgCDQktC40YHQu9C+0LHQvtC60L7QsiA8dmljdG9yX3ZAcGVybW9ubGluZS5ydT4KK9Ce0LHQvdC+0LLQu9C10L3QuNC1INC4INC60L7RgNGA0LXQutGC0YPRgNCwOiBBbGV4ZXkgTWFob3RraW4gPGFsZXhtQGhzeXMubXNrLnJ1Pi4KK9Cu0YDQuNC5INCa0L7Qt9C70L7QsiA8eV9rb3psb3ZAY2hhdC5ydT4uCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9wby9ydS5wbyBiL2Rwa2ctMS4xNi4xLjEvbWFuL3BvL3J1LnBvCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQ5NzJhNzYKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9wby9ydS5wbwpAQCAtMCwwICsxLDE2Mjk5IEBACisjIHRyYW5zbGF0aW9uIG9mIHRoZSBkcGtnIG1hbiBwYWdlcyB0byBSdXNzaWFuCisjIFNPTUUgREVTQ1JJUFRJVkUgVElUTEUKKyMgQ29weXJpZ2h0IChDKSAyMDA2IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgorIyBZdXJpIEtvemxvdiA8a296bG92LnlAZ21haWwuY29tPiwgMjAwNi4KKyMKK21zZ2lkICIiCittc2dzdHIgIiIKKyJQcm9qZWN0LUlkLVZlcnNpb246IGRwa2cgbWFuIHBhZ2VzXG4iCisiUE9ULUNyZWF0aW9uLURhdGU6IDIwMTEtMTAtMTQgMDc6MTErMDMwMFxuIgorIlBPLVJldmlzaW9uLURhdGU6IDIwMTAtMDMtMDcgMjI6MTgrMDEwMFxuIgorIkxhc3QtVHJhbnNsYXRvcjogWXVyaSBLb3psb3YgPGtvemxvdi55QGdtYWlsLmNvbT5cbiIKKyJMYW5ndWFnZS1UZWFtOiBSdXNzaWFuIDxkZWJpYW4tbDEwbi1ydXNzaWFuQGxpc3RzLmRlYmlhbi5vcmc+XG4iCisiTGFuZ3VhZ2U6IHJ1XG4iCisiTUlNRS1WZXJzaW9uOiAxLjBcbiIKKyJDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9VVRGLThcbiIKKyJDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiA4Yml0XG4iCisiWC1HZW5lcmF0b3I6IEtCYWJlbCAxLjkuMVxuIgorCisjLiB0eXBlOiBUSAorIzogZGViLjU6MQorIywgbm8td3JhcAorbXNnaWQgImRlYiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUSAorIzogZGViLjU6MSBkZWItY29udHJvbC41OjMgZGViLXNyYy1jb250cm9sLjU6MyBkZWItdmVyc2lvbi41OjUgZGViLW9sZC41OjEKKyM6IGRlYi1vdmVycmlkZS41OjE1IGRlYi1zeW1ib2xzLjU6MiBkZWItdHJpZ2dlcnMuNToxIGRwa2cuMToxCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEgZHBrZy1idWlsZHBhY2thZ2UuMToxIGRwa2ctZGViLjE6MSBkcGtnLWRpdmVydC44OjEKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjEgZHBrZy1nZW5jb250cm9sLjE6MSBkcGtnLWdlbnN5bWJvbHMuMToyCisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjEgZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMToxIGRwa2ctbmFtZS4xOjYKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxIGRwa2ctcXVlcnkuMToxIGRwa2ctc2NhbnBhY2thZ2VzLjE6MTUKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMToxIGRwa2ctc2hsaWJkZXBzLjE6MSBkcGtnLXNvdXJjZS4xOjIgZHBrZy10cmlnZ2VyLjE6MQorIzogZHNlbGVjdC4xOjEgdXBkYXRlLWFsdGVybmF0aXZlcy44OjgKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiMjAxMS0wOC0xNCIKK21zZ3N0ciAiMjAwNi0wMi0yOCIKKworIy4gdHlwZTogVEgKKyM6IGRlYi41OjEgZGViLWNvbnRyb2wuNTozIGRlYi1zcmMtY29udHJvbC41OjMgZGViLXNwbGl0LjU6MSBkZWItdmVyc2lvbi41OjUKKyM6IGRlYi1vbGQuNToxIGRlYi1vdmVycmlkZS41OjE1IGRlYi1leHRyYS1vdmVycmlkZS41OjEgZGViLXNobGlicy41OjE2CisjOiBkZWItc3Vic3R2YXJzLjU6MiBkZWItc3ltYm9scy41OjIgZGViLXRyaWdnZXJzLjU6MSBkcGtnLjE6MQorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxIGRwa2cuY2ZnLjU6MSBkcGtnLWJ1aWxkZmxhZ3MuMToxCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEgZHBrZy1jaGVja2J1aWxkZGVwcy4xOjEgZHBrZy1kaXN0YWRkZmlsZS4xOjEKKyM6IGRwa2ctZGViLjE6MSBkcGtnLWRpdmVydC44OjEgZHBrZy1nZW5jaGFuZ2VzLjE6MSBkcGtnLWdlbmNvbnRyb2wuMToxCisjOiBkcGtnLWdlbnN5bWJvbHMuMToyIGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MSBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjEKKyM6IGRwa2ctbmFtZS4xOjYgZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjEgZHBrZy1xdWVyeS4xOjEgZHBrZy1zY2FucGFja2FnZXMuMToxNQorIzogZHBrZy1zY2Fuc291cmNlcy4xOjEgZHBrZy1zaGxpYmRlcHMuMToxIGRwa2ctc291cmNlLjE6MiBkcGtnLXNwbGl0LjE6MgorIzogZHBrZy10cmlnZ2VyLjE6MSBkcGtnLXZlbmRvci4xOjEgZHNlbGVjdC4xOjEgZHNlbGVjdC5jZmcuNToxCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjEgdXBkYXRlLWFsdGVybmF0aXZlcy44OjgKKyMsIG5vLXdyYXAKK21zZ2lkICJEZWJpYW4gUHJvamVjdCIKK21zZ3N0ciAi0J/RgNC+0LXQutGCIERlYmlhbiIKKworIy4gdHlwZTogVEgKKyM6IGRlYi41OjEgZGViLWNvbnRyb2wuNTozIGRlYi1zcmMtY29udHJvbC41OjMgZGViLXNwbGl0LjU6MSBkZWItdmVyc2lvbi41OjUKKyM6IGRlYi1vbGQuNToxIGRzZWxlY3QuMToxCisjLCBuby13cmFwCittc2dpZCAiRGViaWFuIgorbXNnc3RyICJEZWJpYW4iCisKKyMuIHR5cGU6IFNICisjOiBkZWIuNToyIGRlYi1jb250cm9sLjU6NCBkZWItc3JjLWNvbnRyb2wuNTo0IGRlYi1zcGxpdC41OjIgZGViLXZlcnNpb24uNTo2CisjOiBkZWItb2xkLjU6MiBkZWItb3ZlcnJpZGUuNToxNiBkZWItZXh0cmEtb3ZlcnJpZGUuNToyIGRlYi1zaGxpYnMuNToxNworIzogZGViLXN1YnN0dmFycy41OjMgZGViLXN5bWJvbHMuNTozIGRlYi10cmlnZ2Vycy41OjIgZHBrZy4xOjIKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MiBkcGtnLmNmZy41OjIgZHBrZy1idWlsZGZsYWdzLjE6MgorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyIGRwa2ctY2hlY2tidWlsZGRlcHMuMToyIGRwa2ctZGlzdGFkZGZpbGUuMToyCisjOiBkcGtnLWRlYi4xOjIgZHBrZy1kaXZlcnQuODoyIGRwa2ctZ2VuY2hhbmdlcy4xOjIgZHBrZy1nZW5jb250cm9sLjE6MgorIzogZHBrZy1nZW5zeW1ib2xzLjE6MyBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjIgZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMToyCisjOiBkcGtnLW5hbWUuMTo3IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToyIGRwa2ctcXVlcnkuMToyIGRwa2ctc2NhbnBhY2thZ2VzLjE6MTYKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMToyIGRwa2ctc2hsaWJkZXBzLjE6MiBkcGtnLXNvdXJjZS4xOjMgZHBrZy1zcGxpdC4xOjMKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6MiBkcGtnLXRyaWdnZXIuMToyIGRwa2ctdmVuZG9yLjE6MiBkc2VsZWN0LjE6MgorIzogZHNlbGVjdC5jZmcuNToyIHN0YXJ0LXN0b3AtZGFlbW9uLjg6MiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6OQorIywgbm8td3JhcAorbXNnaWQgIk5BTUUiCittc2dzdHIgItCd0JDQl9CS0JDQndCY0JUiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi41OjQKK21zZ2lkICJkZWIgLSBEZWJpYW4gYmluYXJ5IHBhY2thZ2UgZm9ybWF0IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkZWIuNTo0IGRlYi1jb250cm9sLjU6NyBkZWItc3JjLWNvbnRyb2wuNTo3IGRlYi1zcGxpdC41OjQgZGViLXZlcnNpb24uNTo5CisjOiBkZWItb2xkLjU6NSBkZWItb3ZlcnJpZGUuNToxOSBkZWItZXh0cmEtb3ZlcnJpZGUuNTo1IGRlYi1zdWJzdHZhcnMuNTo2CisjOiBkZWItc3ltYm9scy41OjYgZGViLXRyaWdnZXJzLjU6NSBkcGtnLjE6NSBkcGtnLWFyY2hpdGVjdHVyZS4xOjUKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjUgZHBrZy1idWlsZHBhY2thZ2UuMTo1IGRwa2ctY2hlY2tidWlsZGRlcHMuMTo1CisjOiBkcGtnLWRpc3RhZGRmaWxlLjE6NSBkcGtnLWRlYi4xOjUgZHBrZy1kaXZlcnQuODo1IGRwa2ctZ2VuY2hhbmdlcy4xOjUKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjUgZHBrZy1nZW5zeW1ib2xzLjE6NiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjUKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6NSBkcGtnLW5hbWUuMToxMCBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6NQorIzogZHBrZy1xdWVyeS4xOjUgZHBrZy1zY2FucGFja2FnZXMuMToxOSBkcGtnLXNjYW5zb3VyY2VzLjE6NQorIzogZHBrZy1zaGxpYmRlcHMuMTo1IGRwa2ctc291cmNlLjE6NiBkcGtnLXNwbGl0LjE6NiBkcGtnLXN0YXRvdmVycmlkZS44OjUKKyM6IGRwa2ctdHJpZ2dlci4xOjUgZHBrZy12ZW5kb3IuMTo1IGRzZWxlY3QuMTo1IHN0YXJ0LXN0b3AtZGFlbW9uLjg6NQorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjEyCisjLCBuby13cmFwCittc2dpZCAiU1lOT1BTSVMiCittc2dzdHIgItCh0JjQndCi0JDQmtCh0JjQoSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLjU6NiBkZWItc3BsaXQuNTo2IGRlYi1vbGQuNTo3Cittc2dpZCAiSTxmaWxlbmFtZT5CPC5kZWI+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkZWIuNTo2IGRlYi1jb250cm9sLjU6MTAgZGViLXNyYy1jb250cm9sLjU6MTAgZGViLXNwbGl0LjU6NgorIzogZGViLXZlcnNpb24uNToxMSBkZWItb2xkLjU6OCBkZWItb3ZlcnJpZGUuNToyMiBkZWItZXh0cmEtb3ZlcnJpZGUuNTo4CisjOiBkZWItc2hsaWJzLjU6MjAgZGViLXN1YnN0dmFycy41OjkgZGViLXN5bWJvbHMuNTo5IGRlYi10cmlnZ2Vycy41OjgKKyM6IGRwa2cuMToxOSBkcGtnLWFyY2hpdGVjdHVyZS4xOjEwIGRwa2cuY2ZnLjU6NSBkcGtnLWJ1aWxkZmxhZ3MuMTo5CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjkgZHBrZy1jaGVja2J1aWxkZGVwcy4xOjEwIGRwa2ctZGlzdGFkZGZpbGUuMTo5CisjOiBkcGtnLWRlYi4xOjkgZHBrZy1kaXZlcnQuODoxMCBkcGtnLWdlbmNoYW5nZXMuMToxMCBkcGtnLWdlbmNvbnRyb2wuMTo5CisjOiBkcGtnLWdlbnN5bWJvbHMuMToxMCBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjE1IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6OQorIzogZHBrZy1uYW1lLjE6MTYgZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjkgZHBrZy1xdWVyeS4xOjkKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6MjcgZHBrZy1zY2Fuc291cmNlcy4xOjEzIGRwa2ctc2hsaWJkZXBzLjE6OQorIzogZHBrZy1zb3VyY2UuMToxMCBkcGtnLXNwbGl0LjE6MTAgZHBrZy1zdGF0b3ZlcnJpZGUuODo5IGRwa2ctdHJpZ2dlci4xOjEyCisjOiBkcGtnLXZlbmRvci4xOjkgZHNlbGVjdC4xOjkgZHNlbGVjdC5jZmcuNTo1IHN0YXJ0LXN0b3AtZGFlbW9uLjg6OQorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE2CisjLCBuby13cmFwCittc2dpZCAiREVTQ1JJUFRJT04iCittc2dzdHIgItCe0J/QmNCh0JDQndCY0JUiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi41OjEyCittc2dpZCAiIgorIlRoZSBCPC5kZWI+IGZvcm1hdCBpcyB0aGUgRGViaWFuIGJpbmFyeSBwYWNrYWdlIGZpbGUgZm9ybWF0LiBJdCBpcyAiCisidW5kZXJzdG9vZCBieSBkcGtnIDAuOTMuNzYgYW5kIGxhdGVyLCBhbmQgaXMgZ2VuZXJhdGVkIGJ5IGRlZmF1bHQgYnkgYWxsICIKKyJ2ZXJzaW9ucyBvZiBkcGtnIHNpbmNlIDEuMi4wIGFuZCBhbGwgaTM4Ni9FTEYgdmVyc2lvbnMgc2luY2UgMS4xLjFlbGYuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi41OjE2Cittc2dpZCAiIgorIlRoZSBmb3JtYXQgZGVzY3JpYmVkIGhlcmUgaXMgdXNlZCBzaW5jZSBEZWJpYW4gMC45MzsgZGV0YWlscyBvZiB0aGUgb2xkICIKKyJmb3JtYXQgYXJlIGRlc2NyaWJlZCBpbiBCPGRlYi1vbGQ+KDUpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZGViLjU6MTYgZGViLXNwbGl0LjU6OSBkZWItb2xkLjU6MTgKKyMsIG5vLXdyYXAKK21zZ2lkICJGT1JNQVQiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLjU6MjIKK21zZ2lkICIiCisiVGhlIGZpbGUgaXMgYW4gQjxhcj4gYXJjaGl2ZSB3aXRoIGEgbWFnaWMgdmFsdWUgb2YgQjwhRTxsdD5hcmNoRTxndD4+LiAgVGhlICIKKyJmaWxlIG5hbWVzIG1pZ2h0IGNvbnRhaW4gYSB0cmFpbGluZyBzbGFzaC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLjU6MjgKK21zZ2lkICIiCisiVGhlIEI8dGFyPiBhcmNoaXZlcyBjdXJyZW50bHkgYWxsb3dlZCBhcmUsIHRoZSBvbGQtc3R5bGUgKHY3KSBmb3JtYXQsIHRoZSAiCisicHJlLVBPU0lYIHVzdGFyIGZvcm1hdCwgYSBzdWJzZXQgb2YgdGhlIEdOVSBmb3JtYXQgKG9ubHkgdGhlIG5ldyBzdHlsZSBsb25nICIKKyJwYXRobmFtZXMgYW5kIGxvbmcgbGlua25hbWVzLCBzdXBwb3J0ZWQgc2luY2UgZHBrZyAxLjQuMS4xNyksIGFuZCB0aGUgUE9TSVggIgorInVzdGFyIGZvcm1hdCAobG9uZyBuYW1lcyBzdXBwb3J0ZWQgc2luY2UgZHBrZyAxLjE1LjApLiAgVW5yZWNvZ25pemVkIHRhciAiCisidHlwZWZsYWdzIGFyZSBjb25zaWRlcmVkIGFuIGVycm9yLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWIuNTozOAorbXNnaWQgIiIKKyJUaGUgZmlyc3QgbWVtYmVyIGlzIG5hbWVkIEI8ZGViaWFuLWJpbmFyeT4gYW5kIGNvbnRhaW5zIGEgc2VyaWVzIG9mIGxpbmVzLCAiCisic2VwYXJhdGVkIGJ5IG5ld2xpbmVzLiBDdXJyZW50bHkgb25seSBvbmUgbGluZSBpcyBwcmVzZW50LCB0aGUgZm9ybWF0ICIKKyJ2ZXJzaW9uIG51bWJlciwgQjwyLjA+IGF0IHRoZSB0aW1lIHRoaXMgbWFudWFsIHBhZ2Ugd2FzIHdyaXR0ZW4uICBQcm9ncmFtcyAiCisid2hpY2ggcmVhZCBuZXctZm9ybWF0IGFyY2hpdmVzIHNob3VsZCBiZSBwcmVwYXJlZCBmb3IgdGhlIG1pbm9yIG51bWJlciB0byBiZSAiCisiaW5jcmVhc2VkIGFuZCBuZXcgbGluZXMgdG8gYmUgcHJlc2VudCwgYW5kIHNob3VsZCBpZ25vcmUgdGhlc2UgaWYgdGhpcyBpcyAiCisidGhlIGNhc2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi41OjQzCittc2dpZCAiIgorIklmIHRoZSBtYWpvciBudW1iZXIgaGFzIGNoYW5nZWQsIGFuIGluY29tcGF0aWJsZSBjaGFuZ2UgaGFzIGJlZW4gbWFkZSBhbmQgIgorInRoZSBwcm9ncmFtIHNob3VsZCBzdG9wLiBJZiBpdCBoYXMgbm90LCB0aGVuIHRoZSBwcm9ncmFtIHNob3VsZCBiZSBhYmxlIHRvICIKKyJzYWZlbHkgY29udGludWUsIHVubGVzcyBpdCBlbmNvdW50ZXJzIGFuIHVuZXhwZWN0ZWQgbWVtYmVyIGluIHRoZSBhcmNoaXZlICIKKyIoZXhjZXB0IGF0IHRoZSBlbmQpLCBhcyBkZXNjcmliZWQgYmVsb3cuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi41OjUzCittc2dpZCAiIgorIlRoZSBzZWNvbmQgcmVxdWlyZWQgbWVtYmVyIGlzIG5hbWVkIEI8Y29udHJvbC50YXIuZ3o+LiAgSXQgaXMgYSBnemlwcGVkIHRhciAiCisiYXJjaGl2ZSBjb250YWluaW5nIHRoZSBwYWNrYWdlIGNvbnRyb2wgaW5mb3JtYXRpb24sIGFzIGEgc2VyaWVzIG9mIHBsYWluICIKKyJmaWxlcywgb2Ygd2hpY2ggdGhlIGZpbGUgQjxjb250cm9sPiBpcyBtYW5kYXRvcnkgYW5kIGNvbnRhaW5zIHRoZSBjb3JlICIKKyJjb250cm9sIGluZm9ybWF0aW9uLiBUaGUgY29udHJvbCB0YXJiYWxsIG1heSBvcHRpb25hbGx5IGNvbnRhaW4gYW4gZW50cnkgZm9yICIKKyJgQjwuPicsIHRoZSBjdXJyZW50IGRpcmVjdG9yeS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLjU6NjIKK21zZ2lkICIiCisiVGhlIHRoaXJkLCBsYXN0IHJlcXVpcmVkIG1lbWJlciBpcyBuYW1lZCBCPGRhdGEudGFyPi4gIEl0IGNvbnRhaW5zIHRoZSAiCisiZmlsZXN5c3RlbSBhcyBhIHRhciBhcmNoaXZlLCBlaXRoZXIgbm90IGNvbXByZXNzZWQgKHN1cHBvcnRlZCBzaW5jZSBkcGtnICIKKyIxLjEwLjI0KSwgb3IgY29tcHJlc3NlZCB3aXRoIGd6aXAgKHdpdGggQjwuZ3o+IGV4dGVuc2lvbiksIHh6ICh3aXRoIEI8Lnh6PiAiCisiZXh0ZW5zaW9uLCBzdXBwb3J0ZWQgc2luY2UgZHBrZyAxLjE1LjYpLCBiemlwMiAod2l0aCBCPC5iejI+IGV4dGVuc2lvbiwgIgorInN1cHBvcnRlZCBzaW5jZSBkcGtnIDEuMTAuMjQpIG9yIGx6bWEgKHdpdGggQjwubHptYT4gZXh0ZW5zaW9uLCBzdXBwb3J0ZWQgIgorInNpbmNlIGRwa2cgMS4xMy4yNSkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi41OjczCittc2dpZCAiIgorIlRoZXNlIG1lbWJlcnMgbXVzdCBvY2N1ciBpbiB0aGlzIGV4YWN0IG9yZGVyLiBDdXJyZW50IGltcGxlbWVudGF0aW9ucyBzaG91bGQgIgorImlnbm9yZSBhbnkgYWRkaXRpb25hbCBtZW1iZXJzIGFmdGVyIEI8ZGF0YS50YXI+LiAgRnVydGhlciBtZW1iZXJzIG1heSBiZSAiCisiZGVmaW5lZCBpbiB0aGUgZnV0dXJlLCBhbmQgKGlmIHBvc3NpYmxlKSB3aWxsIGJlIHBsYWNlZCBhZnRlciB0aGVzZSB0aHJlZS4gIgorIkFueSBhZGRpdGlvbmFsIG1lbWJlcnMgdGhhdCBtYXkgbmVlZCB0byBiZSBpbnNlcnRlZCBiZWZvcmUgQjxkYXRhLnRhcj4gYW5kICIKKyJ3aGljaCBzaG91bGQgYmUgc2FmZWx5IGlnbm9yZWQgYnkgb2xkZXIgcHJvZ3JhbXMsIHdpbGwgaGF2ZSBuYW1lcyBzdGFydGluZyAiCisid2l0aCBhbiB1bmRlcnNjb3JlLCBgQjxfPicuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi41Ojc5Cittc2dpZCAiIgorIlRob3NlIG5ldyBtZW1iZXJzIHdoaWNoIHdvbid0IGJlIGFibGUgdG8gYmUgc2FmZWx5IGlnbm9yZWQgd2lsbCBiZSBpbnNlcnRlZCAiCisiYmVmb3JlIEI8ZGF0YS50YXI+IHdpdGggbmFtZXMgc3RhcnRpbmcgd2l0aCBzb21ldGhpbmcgb3RoZXIgdGhhbiAiCisidW5kZXJzY29yZXMsIG9yIHdpbGwgKG1vcmUgbGlrZWx5KSBjYXVzZSB0aGUgbWFqb3IgdmVyc2lvbiBudW1iZXIgdG8gYmUgIgorImluY3JlYXNlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRlYi41Ojc5IGRlYi1jb250cm9sLjU6MjcxIGRlYi1zcmMtY29udHJvbC41OjMyNyBkZWItc3BsaXQuNTo0OQorIzogZGViLXZlcnNpb24uNToxMTYgZGViLW9sZC41OjUxIGRlYi1vdmVycmlkZS41OjYyIGRlYi1leHRyYS1vdmVycmlkZS41OjM3CisjOiBkZWItc2hsaWJzLjU6NjEgZGViLXN1YnN0dmFycy41OjE1NCBkZWItc3ltYm9scy41OjYxIGRlYi10cmlnZ2Vycy41OjY3CisjOiBkcGtnLjE6NzY4IGRwa2ctYXJjaGl0ZWN0dXJlLjE6Mjk5IGRwa2cuY2ZnLjU6MjMgZHBrZy1idWlsZHBhY2thZ2UuMToyNDkKKyM6IGRwa2ctZGViLjE6MjU5IGRwa2ctZGl2ZXJ0Ljg6MTMyIGRwa2ctZ2Vuc3ltYm9scy4xOjQ1MCBkcGtnLW5hbWUuMTo5NgorIzogZHBrZy1xdWVyeS4xOjIyMCBkcGtnLXNjYW5wYWNrYWdlcy4xOjExMCBkcGtnLXNjYW5zb3VyY2VzLjE6NzEKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MzI0IGRwa2ctc291cmNlLjE6NzI1IGRwa2ctc3BsaXQuMToyMTcKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6ODQgZHBrZy10cmlnZ2VyLjE6NjYgZHNlbGVjdC4xOjQ0NSBkc2VsZWN0LmNmZy41OjIzCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NTA4CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIlNFRSBBTFNPIgorbXNnc3RyICIiCisiIy0jLSMtIy0jICBydS5wbyAoZHBrZyBtYW4gcGFnZXMpICAjLSMtIy0jLSNcbiIKKyLQodCc0J7QotCg0Jgg0KLQkNCa0JbQlVxuIgorIiMtIy0jLSMtIyAgcnUucG8gKGRwa2cgbWFuIHBhZ2VzKSAgIy0jLSMtIy0jXG4iCisi0KHQnNCe0KLQoNCY0KLQlSDQotCQ0JrQltCVIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWIuNTo4MgorIywgZnV6enkKK21zZ2lkICJCPGRlYi1vbGQ+KDUpLCBCPGRwa2ctZGViPigxKSwgQjxkZWItY29udHJvbD4oNSkuIgorbXNnc3RyICJCPGRlYj4oNSksIEI8ZHBrZz4oMSksIEI8ZHBrZy1kZWI+KDEpLiIKKworIy4gdHlwZTogVEgKKyM6IGRlYi1jb250cm9sLjU6MworIywgbm8td3JhcAorbXNnaWQgImRlYi1jb250cm9sIgorbXNnc3RyICJkZWItY29udHJvbCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNTo2Cittc2dpZCAiZGViLWNvbnRyb2wgLSBEZWJpYW4gcGFja2FnZXMnIG1hc3RlciBjb250cm9sIGZpbGUgZm9ybWF0IgorbXNnc3RyICJkZWItY29udHJvbCAtLSDRhNC+0YDQvNCw0YIg0LzQsNGB0YLQtdGAINGE0LDQudC70LAgY29udHJvbCDQv9Cw0LrQtdGC0L7QsiBEZWJpYW4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6OSBkZWItc3JjLWNvbnRyb2wuNTo5Cittc2dpZCAiY29udHJvbCIKK21zZ3N0ciAiY29udHJvbCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToyNAorIywgZnV6enkKK21zZ2lkICIiCisiRWFjaCBEZWJpYW4gcGFja2FnZSBjb250YWlucyB0aGUgbWFzdGVyIGBjb250cm9sJyBmaWxlLCB3aGljaCBjb250YWlucyBhICIKKyJudW1iZXIgb2YgZmllbGRzLCBvciBjb21tZW50cyB3aGVuIHRoZSBsaW5lIHN0YXJ0cyB3aXRoIEI8JyMnPi4gRWFjaCBmaWVsZCAiCisiYmVnaW5zIHdpdGggYSB0YWcsIHN1Y2ggYXMgQjxQYWNrYWdlPiBvciBCPFZlcnNpb24+IChjYXNlIGluc2Vuc2l0aXZlKSwgIgorImZvbGxvd2VkIGJ5IGEgY29sb24sIGFuZCB0aGUgYm9keSBvZiB0aGUgZmllbGQuICBGaWVsZHMgYXJlIGRlbGltaXRlZCBvbmx5ICIKKyJieSBmaWVsZCB0YWdzLiBJbiBvdGhlciB3b3JkcywgZmllbGQgdGV4dCBtYXkgYmUgbXVsdGlwbGUgbGluZXMgaW4gbGVuZ3RoLCAiCisiYnV0IHRoZSBpbnN0YWxsYXRpb24gdG9vbHMgd2lsbCBnZW5lcmFsbHkgam9pbiBsaW5lcyB3aGVuIHByb2Nlc3NpbmcgdGhlICIKKyJib2R5IG9mIHRoZSBmaWVsZCAoZXhjZXB0IGluIHRoZSBjYXNlIG9mIHRoZSBCPERlc2NyaXB0aW9uPiBmaWVsZCwgc2VlICIKKyJiZWxvdykuIgorbXNnc3RyICIiCisi0JrQsNC20LTRi9C5INC/0LDQutC10YIgRGViaWFuINGB0L7QtNC10YDQttC40YIg0LzQsNGB0YLQtdGAINGE0LDQudC7IGBjb250cm9sJywg0YHQvtGB0YLQvtGP0YnQuNC5INC40Lcg0L3QtdGB0LrQvtC70YzQutC40YUgIgorItC/0L7Qu9C10LkuINCa0LDQttC00L7QtSDQv9C+0LvQtSDQvdCw0YfQuNC90LDQtdGC0YHRjyDRgSDRgtC10LPQsCwg0L3QsNC/0YDQuNC80LXRgCBCPFBhY2thZ2U+INC40LvQuCBCPFZlcnNpb24+ICIKKyIo0YDQtdCz0LjRgdGC0YAg0LfQvdCw0YfQtdC90LjRjyDQvdC1INC40LzQtdC10YIpLCDQt9Cw0YLQtdC8INC00LLQvtC10YLQvtGH0LjQtSDQuCDRgdC+0LTQtdGA0LbQuNC80L7QtSDQv9C+0LvRjy4g0J/QvtC70Y8gIgorItGA0LDQt9C00LXQu9GP0Y7RgtGB0Y8g0YLQvtC70YzQutC+INGC0LXQs9Cw0LzQuC4g0JTRgNGD0LPQuNC80Lgg0YHQu9C+0LLQsNC80LgsINGC0LXQutGB0YIg0L/QvtC70Y8g0LzQvtC20LXRgiDQt9Cw0L3QuNC80LDRgtGMICIKKyLQvdC10YHQutC+0LvRjNC60L4g0YHRgtGA0L7Quiwg0L3QviDRg9GC0LjQu9C40YLRiyDRg9GB0YLQsNC90L7QstC60Lgg0L7QsdGL0YfQvdC+INC+0LHRitC10LTQuNC90Y/RjtGCINGN0YLQuCDRgdGC0YDQvtC60Lgg0L/RgNC4ICIKKyLQvtCx0YDQsNCx0L7RgtC60LUg0YHQvtC00LXRgNC20LjQvNC+0LPQviDQv9C+0LvRjyAo0LrRgNC+0LzQtSDQv9C+0LvRjyBCPERlc2NyaXB0aW9uPiwg0L7Qv9C40YHQsNC90L3QvtCz0L4g0L3QuNC20LUpLiIKKworIy4gdHlwZTogU0gKKyM6IGRlYi1jb250cm9sLjU6MjUKKyMsIG5vLXdyYXAKK21zZ2lkICJSRVFVSVJFRCBGSUVMRFMiCittc2dzdHIgItCe0JHQr9CX0JDQotCV0JvQrNCd0KvQlSDQn9Ce0JvQryIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MjYKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxQYWNrYWdlOj5JPCBwYWNrYWdlLW5hbWU+IgorbXNnc3RyICJCPFBhY2thZ2U6PiBFPGx0PtC40LzRjyDQv9Cw0LrQtdGC0LBFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNTozMAorbXNnaWQgIiIKKyJUaGUgdmFsdWUgb2YgdGhpcyBmaWVsZCBkZXRlcm1pbmVzIHRoZSBwYWNrYWdlIG5hbWUsIGFuZCBpcyB1c2VkIHRvIGdlbmVyYXRlICIKKyJmaWxlIG5hbWVzIGJ5IG1vc3QgaW5zdGFsbGF0aW9uIHRvb2xzLiIKK21zZ3N0ciAiIgorItCX0L3QsNGH0LXQvdC40LUg0Y3RgtC+0LPQviDQv9C+0LvRjyDQt9Cw0LTQsNGR0YIg0LjQvNGPINC/0LDQutC10YLQsCDQuCDQuNGB0L/QvtC70YzQt9GD0LXRgtGB0Y8g0L/RgNC4INC60L7QvdGB0YLRgNGD0LjRgNC+0LLQsNC90LjQuCAiCisi0LjQvNGR0L0g0YTQsNC50LvQvtCyINCx0L7Qu9GM0YjQuNC90YHRgtCy0L7QvCDRg9GB0YLQsNC90L7QstC+0YfQvdGL0YUg0YPRgtC40LvQuNGCLiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MzAKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxWZXJzaW9uOj4gRTxsdD52ZXJzaW9uIHN0cmluZ0U8Z3Q+IgorbXNnaWQgIkI8VmVyc2lvbjo+STwgdmVyc2lvbi1zdHJpbmc+IgorbXNnc3RyICJCPFZlcnNpb246PiBFPGx0PtGB0YLRgNC+0LrQsCDRgSDQstC10YDRgdC40LXQuUU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjM3CisjLCBmdXp6eQorbXNnaWQgIiIKKyJUeXBpY2FsbHksIHRoaXMgaXMgdGhlIG9yaWdpbmFsIHBhY2thZ2UncyB2ZXJzaW9uIG51bWJlciBpbiB3aGF0ZXZlciBmb3JtICIKKyJ0aGUgcHJvZ3JhbSdzIGF1dGhvciB1c2VzLiBJdCBtYXkgYWxzbyBpbmNsdWRlIGEgRGViaWFuIHJldmlzaW9uIG51bWJlciAoZm9yICIKKyJub24tbmF0aXZlIHBhY2thZ2VzKS4gVGhlIGV4YWN0IGZvcm1hdCBhbmQgc29ydGluZyBhbGdvcml0aG0gYXJlIGRlc2NyaWJlZCAiCisiaW4gQjxkZWItdmVyc2lvbj4oNSkuIgorbXNnc3RyICIiCisi0J7QsdGL0YfQvdC+INCyINGN0YLQvtC8INC/0L7Qu9C1INGD0LrQsNC30YvQstCw0LXRgtGB0Y8g0L7RgNC40LPQuNC90LDQu9GM0L3Ri9C5INC90L7QvNC10YAg0LLQtdGA0YHQuNC4INC/0LDQutC10YLQsCDQsiDRgtC+0Lkg0YTQvtGA0LzQtSwgIgorItC60L7RgtC+0YDRg9GOINC40YHQv9C+0LvRjNC30YPQtdGCINCw0LLRgtC+0YAg0L/RgNC+0LPRgNCw0LzQvNGLLiDQktC10YDRgdC40Y8g0LzQvtC20LXRgiDRgtCw0LrQttC1INCy0LrQu9GO0YfQsNGC0Ywg0L3QvtC80LXRgCAiCisi0YDQtdCy0LjQt9C40LggRGViaWFuICjQtNC70Y8g0L3QtSDRgNC+0LTQvdGL0YUg0L/QsNC60LXRgtC+0LIpLiDQldGB0LvQuCDRg9C60LDQt9GL0LLQsNGO0YLRgdGPINC4INCy0LXRgNGB0LjRjyDQuCDQvdC+0LzQtdGAICIKKyLRgNC10LLQuNC30LjQuCwg0YLQviDQvtC90Lgg0YDQsNC30LTQtdC70Y/RjtGC0YHRjyDQtNC10YTQuNGB0L7QvDogYC0nLiAg0JjQty3Qt9CwINGN0YLQvtCz0L4g0L7RgNC40LPQuNC90LDQu9GM0L3Ri9C5INC90L7QvNC10YAgIgorItCy0LXRgNGB0LjQuCDQvdC1INC80L7QttC10YIg0YHQvtC00LXRgNC20LDRgtGMINCyINGB0LXQsdC1INC00LXRhNC40YEuIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNTozNworIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPE1haW50YWluZXI6PiBFPGx0PmZ1bGxuYW1lIGVtYWlsRTxndD4iCittc2dpZCAiQjxNYWludGFpbmVyOj5JPCBmdWxsbmFtZS1lbWFpbD4iCittc2dzdHIgIkI8TWFpbnRhaW5lcjo+IEU8bHQ+0L/QvtC70L3QvtC1INC40LzRjyDQuCDQsNC00YDQtdGBINGN0Lsu0L/QvtGH0YLRi0U8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjQyCittc2dpZCAiIgorIlNob3VsZCBiZSBpbiB0aGUgZm9ybWF0IGBKb2UgQmxvZ2dzIEU8bHQ+amJsb2dnc0Bmb28uY29tRTxndD4nLCBhbmQgaXMgIgorInR5cGljYWxseSB0aGUgcGVyc29uIHdobyBjcmVhdGVkIHRoZSBwYWNrYWdlLCBhcyBvcHBvc2VkIHRvIHRoZSBhdXRob3Igb2YgIgorInRoZSBzb2Z0d2FyZSB0aGF0IHdhcyBwYWNrYWdlZC4iCittc2dzdHIgIiIKKyLQotC10LvQviDQv9C+0LvRjyDQtNC+0LvQttC90L4g0LHRi9GC0Ywg0LIg0YTQvtGA0LzQsNGC0LUgYEpvZSBCbG9nZ3MgRTxsdD5qYmxvZ2dzQGZvby5jb21FPGd0Picg0LggIgorItC+0LHRi9GH0L3QviDQv9GA0LXQtNGB0YLQsNCy0LvRj9C10YIg0YHQvtCx0L7QuSDQuNC80Y8g0YHQvtC30LTQsNGC0LXQu9GPINC/0LDQutC10YLQsCwg0LAg0L3QtSDQuNC80Y8g0LDQstGC0L7RgNCwINC/0YDQvtCz0YDQsNC80LzRiywgIgorItC60L7RgtC+0YDQsNGPINCx0YvQu9CwINGD0L/QsNC60L7QstCw0L3QsC4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjQyCisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8RGVzY3JpcHRpb246PiBFPGx0PnNob3J0IGRlc2NyaXB0aW9uRTxndD4iCittc2dpZCAiQjxEZXNjcmlwdGlvbjo+STwgc2hvcnQtZGVzY3JpcHRpb24+IgorbXNnc3RyICJCPERlc2NyaXB0aW9uOj4gRTxsdD7QutC+0YDQvtGC0LrQvtC1INC+0L/QuNGB0LDQvdC40LVFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNTo0NQorIywgZnV6enkKKyN8IG1zZ2lkICJCPCA+RTxsdD5sb25nIGRlc2NyaXB0aW9uRTxndD4iCittc2dpZCAiQjwgPkk8bG9uZy1kZXNjcmlwdGlvbj4iCittc2dzdHIgIkI8ID5FPGx0PtC00LvQuNC90L3QvtC1INC+0L/QuNGB0LDQvdC40LVFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNTo1MQorIywgZnV6enkKK21zZ2lkICIiCisiVGhlIGZvcm1hdCBmb3IgdGhlIHBhY2thZ2UgZGVzY3JpcHRpb24gaXMgYSBzaG9ydCBicmllZiBzdW1tYXJ5IG9uIHRoZSBmaXJzdCAiCisibGluZSAoYWZ0ZXIgdGhlIFwiRGVzY3JpcHRpb25cIiBmaWVsZCkuIFRoZSBmb2xsb3dpbmcgbGluZXMgc2hvdWxkIGJlIHVzZWQgIgorImFzIGEgbG9uZ2VyLCBtb3JlIGRldGFpbGVkIGRlc2NyaXB0aW9uLiBFYWNoIGxpbmUgb2YgdGhlIGxvbmcgZGVzY3JpcHRpb24gIgorIm11c3QgYmUgcHJlY2VkZWQgYnkgYSBzcGFjZSwgYW5kIGJsYW5rIGxpbmVzIGluIHRoZSBsb25nIGRlc2NyaXB0aW9uIG11c3QgIgorImNvbnRhaW4gYSBzaW5nbGUgJy4nIGZvbGxvd2luZyB0aGUgcHJlY2VkaW5nIHNwYWNlLiIKK21zZ3N0ciAiIgorItCk0L7RgNC80LDRgiDQvtC/0LjRgdCw0L3QuNGPINC/0LDQutC10YLQsCAtLSDRjdGC0L4g0LrRgNCw0YLQutC+0LUg0Lgg0ZHQvNC60L7QtSDQvtC/0LjRgdCw0L3QuNC1INCyINC/0LXRgNCy0L7QuSDRgdGC0YDQvtC60LUgIgorIijQv9C+0YHQu9C1INC/0L7Qu9GPIFwiRGVzY3JpcHRpb25cIikuINCf0L7RgdC70LXQtNGD0Y7RidC40LUg0YHRgtGA0L7QutC4INC80L7Qs9GD0YIg0LHRi9GC0Ywg0LjRgdC/0L7Qu9GM0LfQvtCy0LDQvdGLINC60LDQuiAiCisi0LTQu9C40L3QvdC+0LUsINCx0L7Qu9C10LUg0LTQtdGC0LDQu9GM0L3QvtC1INC+0L/QuNGB0LDQvdC40LUuINCSINC90LDRh9Cw0LvQtSDQutCw0LbQtNC+0Lkg0YHRgtGA0L7QutC4INC00LvQuNC90L3QvtCz0L4g0L7Qv9C40YHQsNC90LjRjyAiCisi0LTQvtC70LbQtdC9INC90LDRhdC+0LTQuNGC0YzRgdGPINC/0YDQvtCx0LXQuywg0LAg0L/Rg9GB0YLRi9C1INGB0YLRgNC+0LrQuCDQsiDQtNC70LjQvdC90L7QvCDQvtC/0LjRgdCw0L3QuNC4INC00L7Qu9C20L3RiyAiCisi0YHQvtC00LXRgNC20LDRgtGMINC+0LTQvdGDINGC0L7Rh9C60YMgJy4nLCDRgdC70LXQtNGD0Y7RidGD0Y4g0YHRgNCw0LfRgyDQv9C+0YHQu9C1INC90LDRh9Cw0LvRjNC90L7Qs9C+INC/0YDQvtCx0LXQu9CwLiIKKworIy4gdHlwZTogU0gKKyM6IGRlYi1jb250cm9sLjU6NTIKKyMsIG5vLXdyYXAKK21zZ2lkICJPUFRJT05BTCBGSUVMRFMiCittc2dzdHIgItCd0JXQntCR0K/Ql9CQ0KLQldCb0KzQndCr0JUg0J/QntCb0K8iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjUzIGRlYi1zcmMtY29udHJvbC41OjkwCisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8U2VjdGlvbjo+IEU8bHQ+c2VjdGlvbkU8Z3Q+IgorbXNnaWQgIkI8U2VjdGlvbjo+STwgc2VjdGlvbj4iCittc2dzdHIgIkI8U2VjdGlvbjo+IEU8bHQ+0YHQtdC60YbQuNGPRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6NTgKK21zZ2lkICIiCisiVGhpcyBpcyBhIGdlbmVyYWwgZmllbGQgdGhhdCBnaXZlcyB0aGUgcGFja2FnZSBhIGNhdGVnb3J5IGJhc2VkIG9uIHRoZSAiCisic29mdHdhcmUgdGhhdCBpdCBpbnN0YWxscy4gU29tZSBjb21tb24gc2VjdGlvbnMgYXJlIGB1dGlscycsIGBuZXQnLCBgbWFpbCcsICIKKyJgdGV4dCcsIGB4MTEnIGV0Yy4iCittc2dzdHIgIiIKKyLQrdGC0L4g0L7QsdC+0LHRidCw0Y7RidC10LUg0L/QvtC70LUsINCyINC60L7RgtC+0YDQvtC8INC/0LDQutC10YLRgyDQv9GA0LjRgdCy0LDQuNCy0LDQtdGC0YHRjyDQutCw0YLQtdCz0L7RgNC40Y8sINCyINC30LDQstC40YHQuNC80L7RgdGC0LggIgorItC+0YIg0YLQuNC/0LAg0L/RgNC+0LPRgNCw0LzQvNC90L7Qs9C+INC+0LHQtdGB0L/QtdGH0LXQvdC40Y8sINC60L7RgtC+0YDQvtC1INC+0L0g0YHQvtC00LXRgNC20LjRgi4g0J/RgNC40LzQtdGA0LDQvNC4INGB0LXQutGG0LjQuSAiCisi0LzQvtCz0YPRgiDRgdC70YPQttC40YLRjCBgdXRpbHMnLCBgbmV0JywgYG1haWwnLCBgdGV4dCcsIGB4MTEnINC4INGCLtC0LiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6NTggZGViLXNyYy1jb250cm9sLjU6OTYKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxQcmlvcml0eTo+IEU8bHQ+cHJpb3JpdHlFPGd0PiIKK21zZ2lkICJCPFByaW9yaXR5Oj5JPCBwcmlvcml0eT4iCittc2dzdHIgIkI8UHJpb3JpdHk6PiBFPGx0PtC/0YDQuNC+0YDQuNGC0LXRgkU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjYyCittc2dpZCAiIgorIlNldHMgdGhlIGltcG9ydGFuY2Ugb2YgdGhpcyBwYWNrYWdlIGluIHJlbGF0aW9uIHRvIHRoZSBzeXN0ZW0gYXMgYSB3aG9sZS4gICIKKyJDb21tb24gcHJpb3JpdGllcyBhcmUgYHJlcXVpcmVkJywgYHN0YW5kYXJkJywgYG9wdGlvbmFsJywgYGV4dHJhJyBldGMuIgorbXNnc3RyICIiCisi0KPRgdGC0LDQvdCw0LLQu9C40LLQsNC10YIg0LLQsNC20L3QvtGB0YLRjCDQtNCw0L3QvdC+0LPQviDQv9Cw0LrQtdGC0LAsINCyINC30LDQstC40YHQuNC80L7RgdGC0Lgg0L7RgiDQtdCz0L4g0LfQvdCw0YfQuNC80L7RgdGC0Lgg0LTQu9GPICIKKyLRgdC40YHRgtC10LzRiy4g0J/RgNC40L7RgNC40YLQtdGC0Ysg0LzQvtCz0YPRgiDQsdGL0YLRjCDRgtCw0LrQuNC80Lg6IGByZXF1aXJlZCcsIGBzdGFuZGFyZCcsIGBvcHRpb25hbCcsICIKKyJgZXh0cmEnINC4INGCLtC0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNTo3MSBkZWItc3JjLWNvbnRyb2wuNToxMDkKKyMsIGZ1enp5Cittc2dpZCAiIgorIkluIERlYmlhbiwgdGhlIEI8U2VjdGlvbj4gYW5kIEI8UHJpb3JpdHk+IGZpZWxkcyBoYXZlIGEgZGVmaW5lZCBzZXQgb2YgIgorImFjY2VwdGVkIHZhbHVlcyBiYXNlZCBvbiB0aGUgUG9saWN5IE1hbnVhbC4gIEEgbGlzdCBvZiB0aGVzZSB2YWx1ZXMgY2FuIGJlICIKKyJvYnRhaW5lZCBmcm9tIHRoZSBsYXRlc3QgdmVyc2lvbiBvZiB0aGUgQjxkZWJpYW4tcG9saWN5PiBwYWNrYWdlLiIKK21zZ3N0ciAiIgorItCf0L7Qu9GPIEI8U2VjdGlvbj4g0LggQjxQcmlvcml0eT4g0LzQvtCz0YPRgiDQv9GA0LjQvdC40LzQsNGC0Ywg0YLQvtC70YzQutC+INC30L3QsNGH0LXQvdC40Y8g0LjQtyDRgdC/0LjRgdC60LAsICIKKyLQutC+0YLQvtGA0YvQuSDQvtC/0YDQtdC00LXQu9C10L0g0LIg0L/QvtC70LjRgtC40LrQtSBEZWJpYW4uINCe0L3QuCDQuNGB0L/QvtC70YzQt9GD0Y7RgtGB0Y8g0LTQu9GPINGC0L7Qs9C+LCDRh9GC0L7QsdGLICIKKyLRgNC10YjQuNGC0YwsINC60LDQuiDQv9Cw0LrQtdGC0Ysg0LHRg9C00YPRgiDRgNCw0LfQvNC10YnQtdC90Ysg0LIg0LDRgNGF0LjQstC1LiDQodC/0LjRgdC+0Log0LLQvtC30LzQvtC20L3Ri9GFINC30L3QsNGH0LXQvdC40Lkg0LzQvtC20L3QviAiCisi0YPQt9C90LDRgtGMINC40Lcg0L/QvtGB0LvQtdC00L3QtdC5INCy0LXRgNGB0LjQuCDQv9Cw0LrQtdGC0LAgQjxkZWJpYW4tcG9saWN5Pi4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjcxIGRlYi1zcmMtY29udHJvbC41OjIxNgorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPEVzc2VudGlhbDo+IEU8bHQ+eWVzfG5vRTxndD4iCittc2dpZCAiQjxFc3NlbnRpYWw6PiBCPHllcz58Qjxubz4iCittc2dzdHIgIkI8RXNzZW50aWFsOj4gRTxsdD55ZXN8bm9FPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNTo3OAorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiVGhpcyBmaWVsZCBpcyB1c3VhbGx5IG9ubHkgbmVlZGVkIHdoZW4gdGhlIGFuc3dlciBpcyBgeWVzJy4gSXQgZGVub3RlcyBhICIKKyN8ICJwYWNrYWdlIHRoYXQgaXMgcmVxdWlyZWQgZm9yIHByb3BlciBvcGVyYXRpb24gb2YgdGhlIHN5c3RlbS4gRHBrZyBvciBhbnkgIgorI3wgIm90aGVyIGluc3RhbGxhdGlvbiB0b29sIHdpbGwgbm90IGFsbG93IGFuIEI8RXNzZW50aWFsPiBwYWNrYWdlIHRvIGJlICIKKyN8ICJyZW1vdmVkIChhdCBsZWFzdCBub3Qgd2l0aG91dCB1c2luZyBvbmUgb2YgdGhlIGZvcmNlIG9wdGlvbnMpLiIKK21zZ2lkICIiCisiVGhpcyBmaWVsZCBpcyB1c3VhbGx5IG9ubHkgbmVlZGVkIHdoZW4gdGhlIGFuc3dlciBpcyBCPHllcz4uIEl0IGRlbm90ZXMgYSAiCisicGFja2FnZSB0aGF0IGlzIHJlcXVpcmVkIGZvciBwcm9wZXIgb3BlcmF0aW9uIG9mIHRoZSBzeXN0ZW0uIERwa2cgb3IgYW55ICIKKyJvdGhlciBpbnN0YWxsYXRpb24gdG9vbCB3aWxsIG5vdCBhbGxvdyBhbiBCPEVzc2VudGlhbD4gcGFja2FnZSB0byBiZSByZW1vdmVkICIKKyIoYXQgbGVhc3Qgbm90IHdpdGhvdXQgdXNpbmcgb25lIG9mIHRoZSBmb3JjZSBvcHRpb25zKS4iCittc2dzdHIgIiIKKyLQlNCw0L3QvdC+0LUg0L/QvtC70LUg0L7QsdGL0YfQvdC+INC90LXQvtCx0YXQvtC00LjQvNC+INGC0L7Qu9GM0LrQviDQutC+0LPQtNCwINC+0YLQstC10YIgLSBgeWVzJyAo0LTQsCkuINCt0YLQviDQvtC30L3QsNGH0LDQtdGCLCAiCisi0YfRgtC+INC00LDQvdC90YvQuSDQv9Cw0LrQtdGCINGC0YDQtdCx0YPQtdGC0YHRjyDQtNC70Y8g0L3QvtGA0LzQsNC70YzQvdC+0LPQviDRhNGD0L3QutGG0LjQvtC90LjRgNC+0LLQsNC90LjRjyDRgdC40YHRgtC10LzRiy4gRHBrZyDQuCAiCisi0LTRgNGD0LPQuNC1INC/0YDQvtCz0YDQsNC80LzRiyDRg9GB0YLQsNC90L7QstC60Lgg0L3QtSDRgNCw0LfRgNC10YjQsNGO0YIg0YPQtNCw0LvQtdC90LjQtSDQv9Cw0LrQtdGC0L7Qsiwg0L/QvtC80LXRh9C10L3QvdGL0YUg0LrQsNC6ICIKKyJCPEVzc2VudGlhbD4gKNC/0L4g0LrRgNCw0LnQvdC10Lkg0LzQtdGA0LUsINCx0LXQtyDRg9C60LDQt9Cw0L3QuNGPINGB0L/QtdGG0LjQsNC70YzQvdGL0YUg0YTQu9Cw0LPQvtCyKS4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41Ojc4CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8QXJjaGl0ZWN0dXJlOj4gRTxsdD5hcmNofGFsbEU8Z3Q+IgorbXNnaWQgIkI8QXJjaGl0ZWN0dXJlOj4gSTxhcmNoPnxCPGFsbD4iCittc2dzdHIgIkI8QXJjaGl0ZWN0dXJlOj4gRTxsdD7QsNGA0YXQuNGC0LXQutGC0YPRgNCwfGFsbEU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41Ojg2CisjLCBmdXp6eQorbXNnaWQgIiIKKyJUaGUgYXJjaGl0ZWN0dXJlIHNwZWNpZmllcyB3aGljaCB0eXBlIG9mIGhhcmR3YXJlIHRoaXMgcGFja2FnZSB3YXMgY29tcGlsZWQgIgorImZvci4gQ29tbW9uIGFyY2hpdGVjdHVyZXMgYXJlIGBpMzg2JywgYG02OGsnLCBgc3BhcmMnLCBgYWxwaGEnLCBgcG93ZXJwYycgIgorImV0Yy4gTm90ZSB0aGF0IHRoZSBCPGFsbD4gb3B0aW9uIGlzIG1lYW50IGZvciBwYWNrYWdlcyB0aGF0IGFyZSBhcmNoaXRlY3R1cmUgIgorImluZGVwZW5kZW50LiBTb21lIGV4YW1wbGVzIG9mIHRoaXMgYXJlIHNoZWxsIGFuZCBQZXJsIHNjcmlwdHMsIGFuZCAiCisiZG9jdW1lbnRhdGlvbi4iCittc2dzdHIgIiIKKyLQkNGA0YXQuNGC0LXQutGC0YPRgNCwINC+0L/RgNC10LTQtdC70Y/QtdGCLCDQtNC70Y8g0LrQsNC60L7Qs9C+INGC0LjQv9CwINCw0L/Qv9Cw0YDQsNGC0L3QvtC5INC/0LvQsNGC0YTQvtGA0LzRiyDQsdGL0LsgIgorItGB0LrQvtC80L/QuNC70LjRgNC+0LLQsNC9INC/0LDQutC10YIuINCQ0YDRhdC40YLQtdC60YLRg9GA0Ysg0LHRi9Cy0LDRjtGCINGC0LDQutC40LU6IGBpMzg2JywgYG02OGsnLCBgc3BhcmMnLCAiCisiYGFscGhhJywgYHBvd2VycGMnINC4INGCLtC0LiDQl9Cw0LzQtdGC0LjQvCwg0YfRgtC+INC30L3QsNGH0LXQvdC40LUgQjxhbGw+INC+0LfQvdCw0YfQsNC10YIsINGH0YLQviDQv9Cw0LrQtdGCICIKKyLQvdC1INC30LDQstC40YHQuNGCINC+0YIg0LDRgNGF0LjRgtC10LrRgtGD0YDRizog0L3QsNC/0YDQuNC80LXRgCwg0L7QvSDQvdCw0L/QuNGB0LDQvSDQvdCwIFBlcmwg0LjQu9C4INGB0L7QtNC10YDQttC40YIgIgorItC00L7QutGD0LzQtdC90YLQsNGG0LjRji4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41Ojg2IGRlYi1zcmMtY29udHJvbC41Ojg1CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8T3JpZ2luOj5JPCBuYW1lPiIKK21zZ3N0ciAiQjxTb3VyY2U6PiBFPGx0PtC40LzRjyDQsNGA0YXQuNCy0L7QsiDRgSDQuNGB0YXQvtC00L3QuNC60LDQvNC4RTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6ODkKK21zZ2lkICJUaGUgbmFtZSBvZiB0aGUgZGlzdHJpYnV0aW9uIHRoaXMgcGFja2FnZSBpcyBvcmlnaW5hdGluZyBmcm9tLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNTo4OSBkZWItc3JjLWNvbnRyb2wuNTo2NgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPEJ1Z3M6Pkk8IHVybD4iCittc2dzdHIgIkI8UmVwbGFjZXM6PiBFPGx0PtGB0L/QuNGB0L7QuiDQv9Cw0LrQtdGC0L7QskU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41Ojk0Cittc2dpZCAiIgorIlRoZSBJPHVybD4gb2YgdGhlIGJ1ZyB0cmFja2luZyBzeXN0ZW0gZm9yIHRoaXMgcGFja2FnZS4gVGhlIGN1cnJlbnQgdXNlZCAiCisiZm9ybWF0IGlzIEk8YnRzLXR5cGU+Qjw6Ly8+STxidHMtYWRkcmVzcz4sIGxpa2UgQjxkZWJidWdzOi8vYnVncy5kZWJpYW4ub3JnPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6OTQgZGViLXNyYy1jb250cm9sLjU6NjIKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxIb21lcGFnZTo+STwgdXJsPiIKK21zZ3N0ciAiQjxSZXBsYWNlczo+IEU8bHQ+0YHQv9C40YHQvtC6INC/0LDQutC10YLQvtCyRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6OTcKK21zZ2lkICJUaGUgdXBzdHJlYW0gcHJvamVjdCBob21lIHBhZ2UgSTx1cmw+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNTo5NyBkZWItc3JjLWNvbnRyb2wuNToyMjIKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxUYWc6Pkk8IHRhZy1saXN0PiIKK21zZ3N0ciAiQjxSZXBsYWNlczo+IEU8bHQ+0YHQv9C40YHQvtC6INC/0LDQutC10YLQvtCyRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MTAxCittc2dpZCAiIgorIkxpc3Qgb2YgdGFncyBkZXNjcmliaW5nIHRoZSBxdWFsaXRpZXMgb2YgdGhlIHBhY2thZ2UuIFRoZSBkZXNjcmlwdGlvbiBhbmQgIgorImxpc3Qgb2Ygc3VwcG9ydGVkIHRhZ3MgY2FuIGJlIGZvdW5kIGluIHRoZSBCPGRlYnRhZ3M+IHBhY2thZ2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjEwMSBkZWItc3JjLWNvbnRyb2wuNToyMTkKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxTb3VyY2U6PiBFPGx0PnNvdXJjZSBuYW1lRTxndD4iCittc2dpZCAiQjxNdWx0aS1BcmNoOj4gQjxzYW1lPnxCPGZvcmVpZ24+fEI8YWxsb3dlZD4iCittc2dzdHIgIkI8U291cmNlOj4gRTxsdD7QuNC80Y8g0LDRgNGF0LjQstC+0LIg0YEg0LjRgdGF0L7QtNC90LjQutCw0LzQuEU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjExMworbXNnaWQgIiIKKyJUaGlzIGZpZWxkIGlzIHVzZWQgdG8gaW5kaWNhdGUgaG93IHRoaXMgcGFja2FnZSBzaG91bGQgYmVoYXZlIG9uIGEgbXVsdGktIgorImFyY2ggaW5zdGFsbGF0aW9ucy4gVGhlIHZhbHVlIEI8c2FtZT4gbWVhbnMgdGhhdCB0aGUgcGFja2FnZSBpcyBjby0iCisiaW5zdGFsbGFibGUgd2l0aCBpdHNlbGYsIGJ1dCBpdCBtdXN0IG5vdCBiZSB1c2VkIHRvIHNhdGlzZnkgdGhlIGRlcGVuZGVuY3kgIgorIm9mIGFueSBwYWNrYWdlIG9mIGEgZGlmZmVyZW50IGFyY2hpdGVjdHVyZSBmcm9tIGl0c2VsZi4gVGhlIHZhbHVlIEI8Zm9yZWlnbj4gIgorIm1lYW5zIHRoYXQgdGhlIHBhY2thZ2UgaXMgbm90IGNvLWluc3RhbGxhYmxlIHdpdGggaXRzZWxmLCBidXQgc2hvdWxkIGJlICIKKyJhbGxvd2VkIHRvIHNhdGlzZnkgdGhlIGRlcGVuZGVuY3kgb2YgYSBwYWNrYWdlIG9mIGEgZGlmZmVyZW50IGFyY2ggZnJvbSAiCisiaXRzZWxmLiBUaGUgdmFsdWUgQjxhbGxvd2VkPiBhbGxvd3MgcmV2ZXJzZS1kZXBlbmRlbmNpZXMgdG8gaW5kaWNhdGUgaW4gIgorInRoZWlyIERlcGVuZHMgZmllbGQgdGhhdCB0aGV5IG5lZWQgYSBwYWNrYWdlIGZyb20gYSBmb3JlaWduIGFyY2hpdGVjdHVyZSwgIgorImJ1dCBoYXMgbm8gZWZmZWN0IG90aGVyd2lzZS4gVGhpcyBmaWVsZCBzaG91bGQgbm90IGJlIHByZXNlbnQgaW4gcGFja2FnZXMgIgorIndpdGggdGhlIEI8QXJjaGl0ZWN0dXJlOiBhbGw+IGZpZWxkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNToxMTMKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxTb3VyY2U6PiBFPGx0PnNvdXJjZSBuYW1lRTxndD4iCittc2dpZCAiQjxTb3VyY2U6Pkk8IHNvdXJjZS1uYW1lPiIKK21zZ3N0ciAiQjxTb3VyY2U6PiBFPGx0PtC40LzRjyDQsNGA0YXQuNCy0L7QsiDRgSDQuNGB0YXQvtC00L3QuNC60LDQvNC4RTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MTE3Cittc2dpZCAiIgorIlRoZSBuYW1lIG9mIHRoZSBzb3VyY2UgcGFja2FnZSB0aGF0IHRoaXMgYmluYXJ5IHBhY2thZ2UgY2FtZSBmcm9tLCBpZiAiCisiZGlmZmVyZW50IHRoYW4gdGhlIG5hbWUgb2YgdGhlIHBhY2thZ2UgaXRzZWxmLiIKK21zZ3N0ciAiIgorItCY0LzRjyDQv9Cw0LrQtdGC0LAg0YEg0LjRgdGF0L7QtNC90LjQutCw0LzQuCwg0LjQtyDQutC+0YLQvtGA0L7Qs9C+INC60L7QvNC/0LjQu9C40YDRg9C10YLRgdGPINCx0LjQvdCw0YDQvdGL0Lkg0L/QsNC60LXRgiwg0LXRgdC70Lgg0L7QvdC+ICIKKyLQvtGC0LvQuNGH0LDQtdGC0YHRjyDQvtGCINC40LzQtdC90Lgg0YHQsNC80L7Qs9C+INC/0LDQutC10YLQsC4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjExOCBkZWItc3JjLWNvbnRyb2wuNToyMDIKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxBcmNoaXRlY3R1cmU6PiBFPGx0PmFyY2h8YWxsRTxndD4iCittc2dpZCAiQjxTdWJhcmNoaXRlY3R1cmU6Pkk8IHZhbHVlPiIKK21zZ3N0ciAiQjxBcmNoaXRlY3R1cmU6PiBFPGx0PtCw0YDRhdC40YLQtdC60YLRg9GA0LB8YWxsRTxndD4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjEyMSBkZWItc3JjLWNvbnRyb2wuNToyMDUKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxLZXJuZWwtVmVyc2lvbjo+STwgdmFsdWU+IgorbXNnc3RyICJCPFZlcnNpb246PiBFPGx0PtGB0YLRgNC+0LrQsCDRgSDQstC10YDRgdC40LXQuUU8Z3Q+IgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNToxMjQgZGViLXNyYy1jb250cm9sLjU6MjA4CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8SW5zdGFsbGVyLU1lbnUtSXRlbTo+STwgdmFsdWU+IgorbXNnc3RyICJCPFJlcGxhY2VzOj4gRTxsdD7RgdC/0LjRgdC+0Log0L/QsNC60LXRgtC+0LJFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToxMzEgZGViLXNyYy1jb250cm9sLjU6MjE1Cittc2dpZCAiIgorIlRoZXNlIGZpZWxkcyBhcmUgdXNlZCBieSB0aGUgZGViaWFuLWluc3RhbGxlciBhbmQgYXJlIHVzdWFsbHkgbm90IG5lZWRlZC4gICIKKyJTZWUgL3Vzci9zaGFyZS9kb2MvZGViaWFuLWluc3RhbGxlci9kZXZlbC9tb2R1bGVzLnR4dCBmcm9tIHRoZSBCPGRlYmlhbi0iCisiaW5zdGFsbGVyPiBwYWNrYWdlIGZvciBtb3JlIGRldGFpbHMgYWJvdXQgdGhlbS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MTMyIGRlYi1zcmMtY29udHJvbC41OjIzMworIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPERlcGVuZHM6PiBFPGx0PnBhY2thZ2UgbGlzdEU8Z3Q+IgorbXNnaWQgIkI8RGVwZW5kczo+STwgcGFja2FnZS1saXN0PiIKK21zZ3N0ciAiQjxEZXBlbmRzOj4gRTxsdD7RgdC/0LjRgdC+0Log0L/QsNC60LXRgtC+0LJFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToxNDMKKyMsIGZ1enp5Cittc2dpZCAiIgorIkxpc3Qgb2YgcGFja2FnZXMgdGhhdCBhcmUgcmVxdWlyZWQgZm9yIHRoaXMgcGFja2FnZSB0byBwcm92aWRlIGEgbm9uLXRyaXZpYWwgIgorImFtb3VudCBvZiBmdW5jdGlvbmFsaXR5LiBUaGUgcGFja2FnZSBtYWludGVuYW5jZSBzb2Z0d2FyZSB3aWxsIG5vdCBhbGxvdyBhICIKKyJwYWNrYWdlIHRvIGJlIGluc3RhbGxlZCBpZiB0aGUgcGFja2FnZXMgbGlzdGVkIGluIGl0cyBCPERlcGVuZHM+IGZpZWxkICIKKyJhcmVuJ3QgaW5zdGFsbGVkIChhdCBsZWFzdCBub3Qgd2l0aG91dCB1c2luZyB0aGUgZm9yY2Ugb3B0aW9ucykuICBJbiBhbiAiCisiaW5zdGFsbGF0aW9uLCB0aGUgcG9zdGluc3Qgc2NyaXB0cyBvZiBwYWNrYWdlcyBsaXN0ZWQgaW4gRGVwZW5kczogZmllbGRzIGFyZSAiCisicnVuIGJlZm9yZSB0aG9zZSBvZiB0aGUgcGFja2FnZXMgd2hpY2ggZGVwZW5kIG9uIHRoZW0uIE9uIHRoZSBvcHBvc2l0ZSwgaW4gYSAiCisicmVtb3ZhbCwgdGhlIHByZXJtIHNjcmlwdCBvZiBhIHBhY2thZ2UgaXMgcnVuIGJlZm9yZSB0aG9zZSBvZiB0aGUgcGFja2FnZXMgIgorImxpc3RlZCBpbiBpdHMgRGVwZW5kczogZmllbGQuIgorbXNnc3RyICIiCisi0KHQv9C40YHQvtC6INC/0LDQutC10YLQvtCyLCDRgtGA0LXQsdGD0Y7RidC40YXRgdGPINC00LvRjyDQvtCx0LXRgdC/0LXRh9C10L3QuNGPINC90L7RgNC80LDQu9GM0L3QvtC5INGA0LDQsdC+0YLRiyDQtNCw0L3QvdC+0LPQviAiCisi0L/QsNC60LXRgtCwLiDQn9GA0L7Qs9GA0LDQvNC80LAg0YPRgdGC0LDQvdC+0LLQutC4INC90LUg0L/QvtC30LLQvtC70LjRgiAo0L/QviDQutGA0LDQudC90LXQuSDQvNC10YDQtSwg0LHQtdC3INC40YHQv9C+0LvRjNC30L7QstCw0L3QuNGPICIKKyLRgdC/0LXRhtC40LDQu9GM0L3Ri9GFINGE0LvQsNCz0L7Qsikg0YPRgdGC0LDQvdC+0LLQuNGC0Ywg0LTQsNC90L3Ri9C5INC/0LDQutC10YIsINC10YHQu9C4INC/0LDQutC10YLRiywg0L/QtdGA0LXRh9C40YHQu9C10L3QvdGL0LUg0LIgIgorIkI8RGVwZW5kcz4sINC10YnRkSDQvdC1INGD0YHRgtCw0L3QvtCy0LvQtdC90YsuINCf0YDQuCDRg9GB0YLQsNC90L7QstC60LUg0YHQutGA0LjQv9GC0YsgcG9zdGluc3Qg0Y3RgtC40YUg0L/QsNC60LXRgtC+0LIgIgorItCx0YPQtNGD0YIg0LLRi9C/0L7Qu9C90LXQvdGLINC/0LXRgNC10LQg0YHQutGA0LjQv9GC0L7QvCBwb3N0aW5zdCDQtNCw0L3QvdC+0LPQviDQv9Cw0LrQtdGC0LAsINCwINC/0YDQuCDRg9C00LDQu9C10L3QuNC4INC40LcgIgorItGB0LjRgdGC0LXQvNGLINGB0LrRgNC40L/RgtGLIHByZXJtINCx0YPQtNGD0YIg0LLRi9C/0L7Qu9C90LXQvdGLINC/0L7RgdC70LUg0YHQutGA0LjQv9GC0LAgcHJlcm0g0LTQsNC90L3QvtCz0L4g0L/QsNC60LXRgtCwLiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MTQzIGRlYi1zcmMtY29udHJvbC41OjIzNgorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPFByZS1EZXBlbmRzOj4gRTxsdD5wYWNrYWdlIGxpc3RFPGd0PiIKK21zZ2lkICJCPFByZS1EZXBlbmRzOj5JPCBwYWNrYWdlLWxpc3Q+IgorbXNnc3RyICJCPFByZS1EZXBlbmRzOj4gRTxsdD7RgdC/0LjRgdC+0Log0L/QsNC60LXRgtC+0LJFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToxNTAKK21zZ2lkICIiCisiTGlzdCBvZiBwYWNrYWdlcyB0aGF0IG11c3QgYmUgaW5zdGFsbGVkIEI8YW5kPiBjb25maWd1cmVkIGJlZm9yZSB0aGlzIG9uZSAiCisiY2FuIGJlIGluc3RhbGxlZC4gVGhpcyBpcyB1c3VhbGx5IHVzZWQgaW4gdGhlIGNhc2Ugd2hlcmUgdGhpcyBwYWNrYWdlICIKKyJyZXF1aXJlcyBhbm90aGVyIHBhY2thZ2UgZm9yIHJ1bm5pbmcgaXRzIHByZWluc3Qgc2NyaXB0LiIKK21zZ3N0ciAiIgorItCh0L/QuNGB0L7QuiDQv9Cw0LrQtdGC0L7Qsiwg0LrQvtGC0L7RgNGL0LUg0LTQvtC70LbQvdGLINCx0YvRgtGMINGD0YHRgtCw0L3QvtCy0LvQtdC90YsgQjzQuD4g0L3QsNGB0YLRgNC+0LXQvdGLINC/0LXRgNC10LQg0YLQtdC8LCAiCisi0LrQsNC6INCx0YPQtNC10YIg0YPRgdGC0LDQvdCw0LLQu9C40LLQsNGC0YzRgdGPINC00LDQvdC90YvQuSDQv9Cw0LrQtdGCLiDQntCx0YvRh9C90L4g0Y3RgtC+INC40YHQv9C+0LvRjNC30YPQtdGC0YHRjyDQsiDRgdC70YPRh9Cw0LUsICIKKyLQutC+0LPQtNCwINC/0LDQutC10YIg0YLRgNC10LHRg9C10YIg0L3QsNC70LjRh9C40Y8g0LTRgNGD0LPQvtCz0L4g0L/QsNC60LXRgtCwINC00LvRjyDQt9Cw0L/Rg9GB0LrQsCDRgdC+0LHRgdGC0LLQtdC90L3QvtCz0L4g0YHRhtC10L3QsNGA0LjRjyAiCisicHJlaW5zdC4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjE1MCBkZWItc3JjLWNvbnRyb2wuNToyMzkKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxSZWNvbW1lbmRzOj4gRTxsdD5wYWNrYWdlIGxpc3RFPGd0PiIKK21zZ2lkICJCPFJlY29tbWVuZHM6Pkk8IHBhY2thZ2UtbGlzdD4iCittc2dzdHIgIkI8UmVjb21tZW5kczo+IEU8bHQ+0YHQv9C40YHQvtC6INC/0LDQutC10YLQvtCyRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MTU3Cittc2dpZCAiIgorIkxpc3RzIHBhY2thZ2VzIHRoYXQgd291bGQgYmUgZm91bmQgdG9nZXRoZXIgd2l0aCB0aGlzIG9uZSBpbiBhbGwgYnV0IHVudXN1YWwgIgorImluc3RhbGxhdGlvbnMuIFRoZSBwYWNrYWdlIG1haW50ZW5hbmNlIHNvZnR3YXJlIHdpbGwgd2FybiB0aGUgdXNlciBpZiB0aGV5ICIKKyJpbnN0YWxsIGEgcGFja2FnZSB3aXRob3V0IHRob3NlIGxpc3RlZCBpbiBpdHMgQjxSZWNvbW1lbmRzPiBmaWVsZC4iCittc2dzdHIgIiIKKyLQodC/0LjRgdC+0Log0L/QsNC60LXRgtC+0LIsINC60L7RgtC+0YDRi9C1INGA0LXQutC+0LzQtdC90LTRg9C10YLRgdGPINGD0YHRgtCw0L3QvtCy0LjRgtGMINCy0LzQtdGB0YLQtSDRgSDQtNCw0L3QvdGL0Lwg0L/QsNC60LXRgtC+0LwuICIKKyLQn9GA0L7Qs9GA0LDQvNC80LAg0YPRgdGC0LDQvdC+0LLQutC4INC/0YDQtdC00YPQv9GA0LXQtNC40YIg0L/QvtC70YzQt9C+0LLQsNGC0LXQu9GPLCDQtdGB0LvQuCDQvtC9INGD0YHRgtCw0L3QsNCy0LvQuNCy0LDQtdGCINC/0LDQutC10YIgIgorItCx0LXQtyDQv9Cw0LrQtdGC0L7Qsiwg0LrQvtGC0L7RgNGL0LUg0L/QtdGA0LXRh9C40YHQu9C10L3RiyDQsiDQv9C+0LvQtSBCPFJlY29tbWVuZHM+LiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MTU3IGRlYi1zcmMtY29udHJvbC41OjI0MgorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPFN1Z2dlc3RzOj4gRTxsdD5wYWNrYWdlIGxpc3RFPGd0PiIKK21zZ2lkICJCPFN1Z2dlc3RzOj5JPCBwYWNrYWdlLWxpc3Q+IgorbXNnc3RyICJCPFN1Z2dlc3RzOj4gRTxsdD7RgdC/0LjRgdC+0Log0L/QsNC60LXRgtC+0LJFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToxNjIKK21zZ2lkICIiCisiTGlzdHMgcGFja2FnZXMgdGhhdCBhcmUgcmVsYXRlZCB0byB0aGlzIG9uZSBhbmQgY2FuIHBlcmhhcHMgZW5oYW5jZSBpdHMgIgorInVzZWZ1bG5lc3MsIGJ1dCB3aXRob3V0IHdoaWNoIGluc3RhbGxpbmcgdGhpcyBwYWNrYWdlIGlzIHBlcmZlY3RseSAiCisicmVhc29uYWJsZS4iCittc2dzdHIgIiIKKyLQodC/0LjRgdC+0Log0L/QsNC60LXRgtC+0LIsINC60L7RgtC+0YDRi9C1INGA0LDRgdGI0LjRgNGP0Y7RgiDRhNGD0L3QutGG0LjQvtC90LDQu9GM0L3QvtGB0YLRjCDRg9GB0YLQsNC90LDQstC70LjQstCw0LXQvNC+0LPQviDQv9Cw0LrQtdGC0LAsICIKKyLQvdC+INCx0LXQtyDQutC+0YLQvtGA0YvRhSDQtNCw0L3QvdGL0Lkg0L/QsNC60LXRgiDQvNC+0LbQtdGCINC/0YDQtdC60YDQsNGB0L3QviDQvtCx0L7QudGC0LjRgdGMLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToxNzQKKyMsIGZ1enp5Cittc2dpZCAiIgorIlRoZSBzeW50YXggb2YgQjxEZXBlbmRzPiwgQjxQcmUtRGVwZW5kcz4sIEI8UmVjb21tZW5kcz4gYW5kIEI8U3VnZ2VzdHM+ICIKKyJmaWVsZHMgaXMgYSBsaXN0IG9mIGdyb3VwcyBvZiBhbHRlcm5hdGl2ZSBwYWNrYWdlcy4gRWFjaCBncm91cCBpcyBhIGxpc3Qgb2YgIgorInBhY2thZ2VzIHNlcGFyYXRlZCBieSB2ZXJ0aWNhbCBiYXIgKG9yIGBwaXBlJykgc3ltYm9scywgYHwnLiBUaGUgZ3JvdXBzIGFyZSAiCisic2VwYXJhdGVkIGJ5IGNvbW1hcy4gQ29tbWFzIGFyZSB0byBiZSByZWFkIGFzIGBBTkQnLCBhbmQgcGlwZXMgYXMgYE9SJywgd2l0aCAiCisicGlwZXMgYmluZGluZyBtb3JlIHRpZ2h0bHkuIEVhY2ggcGFja2FnZSBuYW1lIGlzIG9wdGlvbmFsbHkgZm9sbG93ZWQgYnkgYSAiCisidmVyc2lvbiBudW1iZXIgc3BlY2lmaWNhdGlvbiBpbiBwYXJlbnRoZXNlcy4iCittc2dzdHIgIiIKKyLQodC40L3RgtCw0LrRgdC40YEg0L/QvtC70LXQuSBCPERlcGVuZHM+LCBCPFByZS1EZXBlbmRzPiwgQjxSZWNvbW1lbmRzPiDQuCBCPFN1Z2dlc3RzPiAiCisi0L/QvtC30LLQvtC70Y/QtdGCINC+0L/QuNGB0LDRgtGMINCz0YDRg9C/0L/RgyDQsNC70YzRgtC10YDQvdCw0YLQuNCy0L3Ri9GFINC/0LDQutC10YLQvtCyLiDQmtCw0LbQtNCw0Y8g0YLQsNC60LDRjyDQs9GA0YPQv9C/0LAgLS0g0Y3RgtC+ICIKKyLRgdC/0LjRgdC+0Log0L/QsNC60LXRgtC+0LIsINGA0LDQt9C00LXQu9GR0L3QvdGL0YUg0YHQuNC80LLQvtC70L7QvCDQstC10YDRgtC40LrQsNC70YzQvdC+0Lkg0YfQtdGA0YLRiyBgfCcuINCT0YDRg9C/0L/RiyAiCisi0YDQsNC30LTQtdC70Y/RjtGC0YHRjyDQt9Cw0L/Rj9GC0YvQvNC4LiDQl9Cw0L/Rj9GC0YvQtSDQvNC+0LbQvdC+INGH0LjRgtCw0YLRjCDQutCw0LogYNCYJywg0LAg0LLQtdGA0YLQuNC60LDQu9GM0L3Ri9C1INGH0ZHRgNGC0L7Rh9C60LggIgorItC60LDQuiBg0JjQm9CYJy4g0JrQsNC20LTRi9C5INGN0LvQtdC80LXQvdGCINGP0LLQu9GP0LXRgtGB0Y8g0LjQvNC10L3QtdC8INC/0LDQutC10YLQsCwg0L/RgNC40YfRkdC8INCyINC60YDRg9Cz0LvRi9GFINGB0LrQvtCx0LrQsNGFICIKKyLQvNC+0LbQvdC+INGD0LrQsNC30LDRgtGMINC10LPQviDQstC10YDRgdC40Y4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjE4MAorbXNnaWQgIiIKKyJBIHZlcnNpb24gbnVtYmVyIG1heSBzdGFydCB3aXRoIGEgYEU8Z3Q+RTxndD4nLCBpbiB3aGljaCBjYXNlIGFueSBsYXRlciAiCisidmVyc2lvbiB3aWxsIG1hdGNoLCBhbmQgbWF5IHNwZWNpZnkgb3Igb21pdCB0aGUgRGViaWFuIHBhY2thZ2luZyByZXZpc2lvbiAiCisiKHNlcGFyYXRlZCBieSBhIGh5cGhlbikuIEFjY2VwdGVkIHZlcnNpb24gcmVsYXRpb25zaGlwcyBhcmUgXCJFPGd0PkU8Z3Q+XCIgIgorImZvciBncmVhdGVyIHRoYW4sIFwiRTxsdD5FPGx0PlwiIGZvciBsZXNzIHRoYW4sIFwiRTxndD49XCIgZm9yIGdyZWF0ZXIgdGhhbiAiCisib3IgZXF1YWwgdG8sIFwiRTxsdD49XCIgZm9yIGxlc3MgdGhhbiBvciBlcXVhbCB0bywgYW5kIFwiPVwiIGZvciBlcXVhbCB0by4iCittc2dzdHIgIiIKKyLQldGB0LvQuCDQvdC+0LzQtdGAINCy0LXRgNGB0LjQuCDQvdCw0YfQuNC90LDQtdGC0YHRjyDRgSBgRTxndD5FPGd0PicsINGC0L4g0Y3RgtC+INC+0LfQvdCw0YfQsNC10YIg0LvRjtCx0YPRjiDQsdC+0LvQtdC1ICIKKyLQv9C+0LfQtNC90Y7RjiDQstC10YDRgdC40Y4sINC/0YDQuCDRh9GR0Lwg0YLQsNC60LbQtSDQvNC+0LbQtdGCINCx0YvRgtGMINC30LDQtNCw0L0g0LjQu9C4INC/0YDQvtC/0YPRidC10L0g0L3QvtC80LXRgCDRgNC10LLQuNC30LjQuCAiCisiRGViaWFuICjQutC+0YLQvtGA0YvQuSDQvtGC0LTQtdC70LXQvSDQvtGCINCy0LXRgNGB0LjQuCDQtNC10YTQuNGB0L7QvCkuINCi0LDQutC40Lwg0L7QsdGA0LDQt9C+0Lw6IFwiRTxndD5FPGd0PlwiICIKKyLQvtC30L3QsNGH0LDQtdGCIFwi0LHQvtC70YzRiNC1INGH0LXQvFwiLCBcIkU8bHQ+RTxsdD5cIiAtLSBcItC80LXQvdGM0YjQtSDRh9C10LxcIiwgXCJFPGd0Pj1cIiAtLSAiCisiXCLQsdC+0LvRjNGI0LUg0LjQu9C4INGA0LDQstC90L4g0YfQtdC8XCIsIFwiRTxsdD49XCIgLS0gXCLQvNC10L3RjNGI0LUg0LjQu9C4INGA0LDQstC90L4g0YfQtdC8XCIsINCwIFwiPVwiIC0tICIKKyJcItGC0L7Qu9GM0LrQviDQstC10YDRgdC40Y8sINC60L7RgtC+0YDQsNGPINGD0LrQsNC30LDQvdCwXCIuIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNToxODAgZGViLXNyYy1jb250cm9sLjU6MjQ1CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8QnJlYWtzOj5JPCBwYWNrYWdlLWxpc3Q+IgorbXNnc3RyICJCPFJlcGxhY2VzOj4gRTxsdD7RgdC/0LjRgdC+0Log0L/QsNC60LXRgtC+0LJFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToxODgKKyMsIGZ1enp5Cittc2dpZCAiIgorIkxpc3RzIHBhY2thZ2VzIHRoYXQgdGhpcyBvbmUgYnJlYWtzLCBmb3IgZXhhbXBsZSBieSBleHBvc2luZyBidWdzIHdoZW4gdGhlICIKKyJuYW1lZCBwYWNrYWdlcyByZWx5IG9uIHRoaXMgb25lLiBUaGUgcGFja2FnZSBtYWludGVuYW5jZSBzb2Z0d2FyZSB3aWxsIG5vdCAiCisiYWxsb3cgYnJva2VuIHBhY2thZ2VzIHRvIGJlIGNvbmZpZ3VyZWQ7IGdlbmVyYWxseSB0aGUgcmVzb2x1dGlvbiBpcyB0byAiCisidXBncmFkZSB0aGUgcGFja2FnZXMgbmFtZWQgaW4gYSBCPEJyZWFrcz4gZmllbGQuIgorbXNnc3RyICIiCisi0KHQv9C40YHQvtC6INC/0LDQutC10YLQvtCyLCDQutC+0YLQvtGA0YvQtSDQutC+0L3RhNC70LjQutGC0YPRjtGCINGBINC/0LDQutC10YLQvtC8OyDQvdCw0L/RgNC40LzQtdGALCDQtdGB0LvQuCDQsiDQvdC40YUgIgorItGB0L7QtNC10YDQttCw0YLRgdGPINGE0LDQudC70Ysg0YEg0YLQtdC80Lgg0LbQtSDQuNC80LXQvdCw0LzQuC4g0J/RgNC+0LPRgNCw0LzQvNCwINGD0YHRgtCw0L3QvtCy0LrQuCDQvdC1INC/0L7Qt9Cy0L7Qu9C40YIgIgorItGD0YHRgtCw0L3QvtCy0LjRgtGMINCyINGB0LjRgdGC0LXQvNGDINC00LLQsCDQutC+0L3RhNC70LjQutGC0YPRjtGJ0LjRhSDQv9Cw0LrQtdGC0LAuINCa0LDQttC00YvQuSDQuNC3INC00LLRg9GFINC60L7QvdGE0LvQuNC60YLRg9GO0YnQuNGFICIKKyLQv9Cw0LrQtdGC0L7QsiDQtNC+0LvQttC10L0g0YPQutCw0LfQsNGC0Ywg0LIg0YHRgtGA0L7QutC1IEI8Q29uZmxpY3RzPiDQuNC80Y8g0LTRgNGD0LPQvtCz0L4uIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNToxODggZGViLXNyYy1jb250cm9sLjU6MjU0CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8Q29uZmxpY3RzOj4gRTxsdD5wYWNrYWdlIGxpc3RFPGd0PiIKK21zZ2lkICJCPENvbmZsaWN0czo+STwgcGFja2FnZS1saXN0PiIKK21zZ3N0ciAiQjxDb25mbGljdHM6PiBFPGx0PtGB0L/QuNGB0L7QuiDQv9Cw0LrQtdGC0L7QskU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjE5NgorbXNnaWQgIiIKKyJMaXN0cyBwYWNrYWdlcyB0aGF0IGNvbmZsaWN0IHdpdGggdGhpcyBvbmUsIGZvciBleGFtcGxlIGJ5IGNvbnRhaW5pbmcgZmlsZXMgIgorIndpdGggdGhlIHNhbWUgbmFtZXMuIFRoZSBwYWNrYWdlIG1haW50ZW5hbmNlIHNvZnR3YXJlIHdpbGwgbm90IGFsbG93ICIKKyJjb25mbGljdGluZyBwYWNrYWdlcyB0byBiZSBpbnN0YWxsZWQgYXQgdGhlIHNhbWUgdGltZS4gVHdvIGNvbmZsaWN0aW5nICIKKyJwYWNrYWdlcyBzaG91bGQgZWFjaCBpbmNsdWRlIGEgQjxDb25mbGljdHM+IGxpbmUgbWVudGlvbmluZyB0aGUgb3RoZXIuIgorbXNnc3RyICIiCisi0KHQv9C40YHQvtC6INC/0LDQutC10YLQvtCyLCDQutC+0YLQvtGA0YvQtSDQutC+0L3RhNC70LjQutGC0YPRjtGCINGBINC/0LDQutC10YLQvtC8OyDQvdCw0L/RgNC40LzQtdGALCDQtdGB0LvQuCDQsiDQvdC40YUgIgorItGB0L7QtNC10YDQttCw0YLRgdGPINGE0LDQudC70Ysg0YEg0YLQtdC80Lgg0LbQtSDQuNC80LXQvdCw0LzQuC4g0J/RgNC+0LPRgNCw0LzQvNCwINGD0YHRgtCw0L3QvtCy0LrQuCDQvdC1INC/0L7Qt9Cy0L7Qu9C40YIgIgorItGD0YHRgtCw0L3QvtCy0LjRgtGMINCyINGB0LjRgdGC0LXQvNGDINC00LLQsCDQutC+0L3RhNC70LjQutGC0YPRjtGJ0LjRhSDQv9Cw0LrQtdGC0LAuINCa0LDQttC00YvQuSDQuNC3INC00LLRg9GFINC60L7QvdGE0LvQuNC60YLRg9GO0YnQuNGFICIKKyLQv9Cw0LrQtdGC0L7QsiDQtNC+0LvQttC10L0g0YPQutCw0LfQsNGC0Ywg0LIg0YHRgtGA0L7QutC1IEI8Q29uZmxpY3RzPiDQuNC80Y8g0LTRgNGD0LPQvtCz0L4uIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNToxOTYgZGViLXNyYy1jb250cm9sLjU6MjUxCisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8UmVwbGFjZXM6PiBFPGx0PnBhY2thZ2UgbGlzdEU8Z3Q+IgorbXNnaWQgIkI8UmVwbGFjZXM6Pkk8IHBhY2thZ2UtbGlzdD4iCittc2dzdHIgIkI8UmVwbGFjZXM6PiBFPGx0PtGB0L/QuNGB0L7QuiDQv9Cw0LrQtdGC0L7QskU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjIwNAorbXNnaWQgIiIKKyJMaXN0IG9mIHBhY2thZ2VzIGZpbGVzIGZyb20gd2hpY2ggdGhpcyBvbmUgcmVwbGFjZXMuIFRoaXMgaXMgdXNlZCBmb3IgIgorImFsbG93aW5nIHRoaXMgcGFja2FnZSB0byBvdmVyd3JpdGUgdGhlIGZpbGVzIG9mIGFub3RoZXIgcGFja2FnZSBhbmQgaXMgIgorInVzdWFsbHkgdXNlZCB3aXRoIHRoZSBCPENvbmZsaWN0cz4gZmllbGQgdG8gZm9yY2UgcmVtb3ZhbCBvZiB0aGUgb3RoZXIgIgorInBhY2thZ2UsIGlmIHRoaXMgb25lIGFsc28gaGFzIHRoZSBzYW1lIGZpbGVzIGFzIHRoZSBjb25mbGljdGVkIHBhY2thZ2UuIgorbXNnc3RyICIiCisi0KHQv9C40YHQvtC6INC/0LDQutC10YLQvtCyLCDQutC+0YLQvtGA0YvQtSDQt9Cw0LzQtdC90Y/RjtGCINC00LDQvdC90YvQuSDQv9Cw0LrQtdGCLiDQntC9INC40YHQv9C+0LvRjNC30YPQtdGC0YHRjyDQtNC70Y8g0YLQvtCz0L4sICIKKyLRh9GC0L7QsdGLINGA0LDQt9GA0LXRiNC40YLRjCDQtNCw0L3QvdC+0LzRgyDQv9Cw0LrQtdGC0YMg0L/QtdGA0LXQt9Cw0L/QuNGB0LDRgtGMINGE0LDQudC70Ysg0LTRgNGD0LPQvtCz0L4g0L/QsNC60LXRgtCwINC4INC+0LHRi9GH0L3QviAiCisi0LjRgdC/0L7Qu9GM0LfRg9C10YLRgdGPINGB0L7QstC80LXRgdGC0L3QviDRgSDQv9C+0LvQtdC8IEI8Q29uZmxpY3RzPiwg0YfRgtC+0LHRiyDRgdGA0LDQt9GDINC20LUg0LfQsNGB0YLQsNCy0LjRgtGMICIKKyLRg9C00LDQu9C40YLRjCDRjdGC0L7RgiDQtNGA0YPQs9C+0Lkg0L/QsNC60LXRgiwg0LXRgdC70Lgg0L7QvSDRgdC+0LTQtdGA0LbQuNGCINGC0LDQutC40LUg0LbQtSDRhNCw0LnQu9GLLCDQutCw0LogIgorItGD0YHRgtCw0L3QsNCy0LvQuNCy0LDQtdC80YvQuS4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjIwNCBkZWItc3JjLWNvbnRyb2wuNToyNTcKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxQcm92aWRlczo+IEU8bHQ+cGFja2FnZSBsaXN0RTxndD4iCittc2dpZCAiQjxQcm92aWRlczo+STwgcGFja2FnZS1saXN0PiIKK21zZ3N0ciAiQjxQcm92aWRlczo+IEU8bHQ+0YHQv9C40YHQvtC6INC/0LDQutC10YLQvtCyRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MjE0CisjLCBmdXp6eQorbXNnaWQgIiIKKyJUaGlzIGlzIGEgbGlzdCBvZiB2aXJ0dWFsIHBhY2thZ2VzIHRoYXQgdGhpcyBvbmUgcHJvdmlkZXMuIFVzdWFsbHkgdGhpcyBpcyAiCisidXNlZCBpbiB0aGUgY2FzZSBvZiBzZXZlcmFsIHBhY2thZ2VzIGFsbCBwcm92aWRpbmcgdGhlIHNhbWUgc2VydmljZS4gIEZvciAiCisiZXhhbXBsZSwgc2VuZG1haWwgYW5kIGV4aW0gY2FuIHNlcnZlIGFzIGEgbWFpbCBzZXJ2ZXIsIHNvIHRoZXkgcHJvdmlkZSBhICIKKyJjb21tb24gcGFja2FnZSAoYG1haWwtdHJhbnNwb3J0LWFnZW50Jykgb24gd2hpY2ggb3RoZXIgcGFja2FnZXMgY2FuIGRlcGVuZC4gIgorIlRoaXMgd2lsbCBhbGxvdyBzZW5kbWFpbCBvciBleGltIHRvIHNlcnZlIGFzIGEgdmFsaWQgb3B0aW9uIHRvIHNhdGlzZnkgdGhlICIKKyJkZXBlbmRlbmN5LiBUaGlzIHByZXZlbnRzIHRoZSBwYWNrYWdlcyB0aGF0IGRlcGVuZCBvbiBhIG1haWwgc2VydmVyIGZyb20gIgorImhhdmluZyB0byBrbm93IHRoZSBwYWNrYWdlIG5hbWVzIGZvciBhbGwgb2YgdGhlbSwgYW5kIHVzaW5nIGB8JyB0byBzZXBhcmF0ZSAiCisidGhlIGxpc3QuIgorbXNnc3RyICIiCisi0KHQv9C40YHQvtC6INCy0LjRgNGC0YPQsNC70YzQvdGL0YUg0L/QsNC60LXRgtC+0LIsINC60L7RgtC+0YDRi9C1INC/0YDQtdC00L7RgdGC0LDQstC70Y/QtdGCINC00LDQvdC90YvQuSDQv9Cw0LrQtdGCLiDQntCx0YvRh9C90L4g0L7QvSAiCisi0LjRgdC/0L7Qu9GM0LfRg9C10YLRgdGPLCDQtdGB0LvQuCDQvdC10YHQutC+0LvRjNC60L4g0YDQsNC30L3Ri9GFINC/0LDQutC10YLQvtCyINC/0YDQtdC00L7RgdGC0LDQstC70Y/RjtGCINC+0LTQuNC9INC4INGC0L7RgiDQttC1ICIKKyLRgdC10YDQstC40YEuINCd0LDQv9GA0LjQvNC10YAsIHNlbmRtYWlsINC4IGV4aW0g0LzQvtCz0YPRgiDRgNCw0LHQvtGC0LDRgtGMINC60LDQuiDQv9C+0YfRgtC+0LLRi9C1INGB0LXRgNCy0LXRgNGLLCAiCisi0L/QvtGN0YLQvtC80YMg0L7QvdC4INC/0YDQtdC00L7RgdGC0LDQstC70Y/RjtGCINC+0LHRidC40Lkg0L/QsNC60LXRgiAoYG1haWwtdHJhbnNwb3J0LWFnZW50Jykg0LTQu9GPINGC0LXRhSAiCisi0L/QsNC60LXRgtC+0LIsINC60L7RgtC+0YDRi9C1INC80L7Qs9GD0YIg0L7RgiDQvdC10LPQviDQt9Cw0LLQuNGB0LXRgtGMLiDQrdGC0L4g0L/QvtC30LLQvtC70Y/QtdGCINC40YHQv9C+0LvRjNC30L7QstCw0YLRjCBzZW5kbWFpbCAiCisi0LjQu9C4IGV4aW0g0LIg0YLQtdGFINC/0LDQutC10YLQsNGFLCDQutC+0YLQvtGA0YvQtSDQt9Cw0LLQuNGB0Y/RgiDQvtGCIGBtYWlsLXRyYW5zcG9ydC1hZ2VudCcuINCt0YLQviAiCisi0YPRgdGC0YDQsNC90Y/QtdGCINC90LXQvtCx0YXQvtC00LjQvNC+0YHRgtGMINGD0LrQsNC30YvQstCw0YLRjCDQsiDQv9Cw0LrQtdGC0LDRhSwg0LrQvtGC0L7RgNGL0LUg0LfQsNCy0LjRgdGP0YIg0L7RgiDQv9C+0YfRgtC+0LLQvtCz0L4gIgorItGB0LXRgNCy0LXRgNCwLCDRgdC/0LjRgdC+0Log0YfQtdGA0LXQtyBgfCcg0LLRgdC10YUg0L/QsNC60LXRgtC+0LIg0L/QvtGH0YLQvtCy0YvRhSDRgdC10YDQstC10YDQvtCyLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToyMzMKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlRoZSBzeW50YXggb2YgQjxDb25mbGljdHM+LCBCPFJlcGxhY2VzPiBhbmQgQjxQcm92aWRlcz4gaXMgYSBsaXN0IG9mICIKKyN8ICJwYWNrYWdlIG5hbWVzLCBzZXBhcmF0ZWQgYnkgY29tbWFzIChhbmQgb3B0aW9uYWwgd2hpdGVzcGFjZSkuICBJbiB0aGUgIgorI3wgIkI8Q29uZmxpY3RzPiBmaWVsZCwgdGhlIGNvbW1hIHNob3VsZCBiZSByZWFkIGFzIGBPUicuIEFuIG9wdGlvbmFsIHZlcnNpb24gIgorI3wgImNhbiBhbHNvIGJlIGdpdmVuIHdpdGggdGhlIHNhbWUgc3ludGF4IGFzIGFib3ZlIGZvciB0aGUgQjxDb25mbGljdHM+IGFuZCAiCisjfCAiQjxSZXBsYWNlcz4gZmllbGRzLiIKK21zZ2lkICIiCisiVGhlIHN5bnRheCBvZiBCPEJyZWFrcz4sIEI8Q29uZmxpY3RzPiwgQjxSZXBsYWNlcz4gYW5kIEI8UHJvdmlkZXM+IGlzIGEgbGlzdCAiCisib2YgcGFja2FnZSBuYW1lcywgc2VwYXJhdGVkIGJ5IGNvbW1hcyAoYW5kIG9wdGlvbmFsIHdoaXRlc3BhY2UpLiAgSW4gdGhlICIKKyJCPEJyZWFrcz4gYW5kIEI8Q29uZmxpY3RzPiBmaWVsZHMsIHRoZSBjb21tYSBzaG91bGQgYmUgcmVhZCBhcyBgT1InLiBBbiAiCisib3B0aW9uYWwgdmVyc2lvbiBjYW4gYWxzbyBiZSBnaXZlbiB3aXRoIHRoZSBzYW1lIHN5bnRheCBhcyBhYm92ZSBmb3IgdGhlICIKKyJCPEJyZWFrcz4sIEI8Q29uZmxpY3RzPiBhbmQgQjxSZXBsYWNlcz4gZmllbGRzLiIKK21zZ3N0ciAiIgorItCh0LjQvdGC0LDQutGB0LjRgSBCPENvbmZsaWN0cz4sIEI8UmVwbGFjZXM+INC4IEI8UHJvdmlkZXM+INC/0L7Qt9Cy0L7Qu9GP0LXRgiDQv9C10YDQtdGH0LjRgdC70LjRgtGMICIKKyLQv9Cw0LrQtdGC0Ysg0YfQtdGA0LXQtyDQt9Cw0L/Rj9GC0YPRjiAo0Lgg0L3QtdC+0LHRj9C30LDRgtC10LvRjNC90YvQuSDQv9GA0L7QsdC10LspLiDQkiDQv9C+0LvQtSBCPENvbmZsaWN0cz4g0LfQsNC/0Y/RgtCw0Y8gIgorItGH0LjRgtCw0LXRgtGB0Y8g0LrQsNC6IGDQmNCb0JgnLiDQkiDQt9C90LDRh9C10L3QuNGP0YUg0L/QvtC70LXQuSBCPENvbmZsaWN0cz4g0LggQjxSZXBsYWNlcz4g0LzQvtC20L3QviAiCisi0YPQutCw0LfRi9Cy0LDRgtGMINC90L7QvNC10YAg0LLQtdGA0YHQuNC4INC/0LDQutC10YLQsCAo0LjRgdC/0L7Qu9GM0LfRg9GPINCy0YvRiNC10L7Qv9C40YHQsNC90L3Ri9C5INGB0LjQvdGC0LDQutGB0LjRgSkuIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNToyMzQgZGViLXNyYy1jb250cm9sLjU6MjYwCisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8RGVwZW5kczo+IEU8bHQ+cGFja2FnZSBsaXN0RTxndD4iCittc2dpZCAiQjxCdWlsdC1Vc2luZzo+STwgcGFja2FnZS1saXN0PiIKK21zZ3N0ciAiQjxEZXBlbmRzOj4gRTxsdD7RgdC/0LjRgdC+0Log0L/QsNC60LXRgtC+0LJFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToyNDQKK21zZ2lkICIiCisiVGhpcyBmaWVsZCBsaXN0cyBleHRyYSBzb3VyY2UgcGFja2FnZXMgdGhhdCB3ZXJlIHVzZWQgZHVyaW5nIHRoZSBidWlsZCBvZiAiCisidGhpcyBiaW5hcnkgcGFja2FnZS4gIFRoaXMgaXMgYW4gaW5kaWNhdGlvbiB0byB0aGUgYXJjaGl2ZSBtYWludGVuYW5jZSAiCisic29mdHdhcmUgdGhhdCB0aGVzZSBleHRyYSBzb3VyY2UgcGFja2FnZXMgbXVzdCBiZSBrZXB0IHdoaWxzdCB0aGlzIGJpbmFyeSAiCisicGFja2FnZSBpcyBtYWludGFpbmVkLiAgVGhpcyBmaWVsZCBtdXN0IGJlIGEgbGlzdCBvZiBzb3VyY2UgcGFja2FnZSBuYW1lcyAiCisid2l0aCBzdHJpY3QgKD0pICB2ZXJzaW9uIHJlbGF0aW9uc2hpcHMuICBOb3RlIHRoYXQgdGhlIGFyY2hpdmUgbWFpbnRlbmFuY2UgIgorInNvZnR3YXJlIGlzIGxpa2VseSB0byByZWZ1c2UgdG8gYWNjZXB0IGFuIHVwbG9hZCB3aGljaCBkZWNsYXJlcyBhIEI8QnVpbHQtIgorIlVzaW5nPiByZWxhdGlvbnNoaXAgd2hpY2ggY2Fubm90IGJlIHNhdGlzZmllZCB3aXRoaW4gdGhlIGFyY2hpdmUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkZWItY29udHJvbC41OjI0NSBkZWItc3JjLWNvbnRyb2wuNToyODggc3RhcnQtc3RvcC1kYWVtb24uODozMDIKKyMsIG5vLXdyYXAKK21zZ2lkICJFWEFNUExFIgorbXNnc3RyICLQn9Cg0JjQnNCV0KAiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MjY4CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIiIKKyIjIENvbW1lbnRcbiIKKyJQYWNrYWdlOiBncmVwXG4iCisiRXNzZW50aWFsOiB5ZXNcbiIKKyJQcmlvcml0eTogcmVxdWlyZWRcbiIKKyJTZWN0aW9uOiBiYXNlXG4iCisiTWFpbnRhaW5lcjogV2ljaGVydCBBa2tlcm1hbiBFPGx0Pndha2tlcm1hQGRlYmlhbi5vcmdFPGd0PlxuIgorIkFyY2hpdGVjdHVyZTogc3BhcmNcbiIKKyJWZXJzaW9uOiAyLjQtMVxuIgorIlByZS1EZXBlbmRzOiBsaWJjNiAoRTxndD49IDIuMC4xMDUpXG4iCisiUHJvdmlkZXM6IHJncmVwXG4iCisiQ29uZmxpY3RzOiByZ3JlcFxuIgorIkRlc2NyaXB0aW9uOiBHTlUgZ3JlcCwgZWdyZXAgYW5kIGZncmVwLlxuIgorIiBUaGUgR05VIGZhbWlseSBvZiBncmVwIHV0aWxpdGllcyBtYXkgYmUgdGhlIFwiZmFzdGVzdCBncmVwIGluIHRoZSB3ZXN0XCIuXG4iCisiIEdOVSBncmVwIGlzIGJhc2VkIG9uIGEgZmFzdCBsYXp5LXN0YXRlIGRldGVybWluaXN0aWMgbWF0Y2hlciAoYWJvdXRcbiIKKyIgdHdpY2UgYXMgZmFzdCBhcyBzdG9jayBVbml4IGVncmVwKSBoeWJyaWRpemVkIHdpdGggYSBCb3llci1Nb29yZS1Hb3NwZXJcbiIKKyIgc2VhcmNoIGZvciBhIGZpeGVkIHN0cmluZyB0aGF0IGVsaW1pbmF0ZXMgaW1wb3NzaWJsZSB0ZXh0IGZyb20gYmVpbmdcbiIKKyIgY29uc2lkZXJlZCBieSB0aGUgZnVsbCByZWdleHAgbWF0Y2hlciB3aXRob3V0IG5lY2Vzc2FyaWx5IGhhdmluZyB0b1xuIgorIiBsb29rIGF0IGV2ZXJ5IGNoYXJhY3Rlci4gVGhlIHJlc3VsdCBpcyB0eXBpY2FsbHkgbWFueSB0aW1lcyBmYXN0ZXJcbiIKKyIgdGhhbiBVbml4IGdyZXAgb3IgZWdyZXAuIChSZWd1bGFyIGV4cHJlc3Npb25zIGNvbnRhaW5pbmcgYmFja3JlZmVyZW5jaW5nXG4iCisiIHdpbGwgcnVuIG1vcmUgc2xvd2x5LCBob3dldmVyKS5cbiIKK21zZ3N0ciAiIgorIlBhY2thZ2U6IGdyZXBcbiIKKyJFc3NlbnRpYWw6IHllc1xuIgorIlByaW9yaXR5OiByZXF1aXJlZFxuIgorIlNlY3Rpb246IGJhc2VcbiIKKyJNYWludGFpbmVyOiBXaWNoZXJ0IEFra2VybWFuIEU8bHQ+d2Fra2VybWFAZGViaWFuLm9yZ0U8Z3Q+XG4iCisiQXJjaGl0ZWN0dXJlOiBzcGFyY1xuIgorIlZlcnNpb246IDIuNC0xXG4iCisiUHJlLURlcGVuZHM6IGxpYmM2IChFPGd0Pj0gMi4wLjEwNSlcbiIKKyJQcm92aWRlczogcmdyZXBcbiIKKyJDb25mbGljdHM6IHJncmVwXG4iCisiRGVzY3JpcHRpb246IEdOVSBncmVwLCBlZ3JlcCBhbmQgZmdyZXAuXG4iCisiIFRoZSBHTlUgZmFtaWx5IG9mIGdyZXAgdXRpbGl0aWVzIG1heSBiZSB0aGUgXCJmYXN0ZXN0IGdyZXAgaW4gdGhlIHdlc3RcIi5cbiIKKyIgR05VIGdyZXAgaXMgYmFzZWQgb24gYSBmYXN0IGxhenktc3RhdGUgZGV0ZXJtaW5pc3RpYyBtYXRjaGVyIChhYm91dFxuIgorIiB0d2ljZSBhcyBmYXN0IGFzIHN0b2NrIFVuaXggZWdyZXApIGh5YnJpZGl6ZWQgd2l0aCBhIEJveWVyLU1vb3JlLUdvc3BlclxuIgorIiBzZWFyY2ggZm9yIGEgZml4ZWQgc3RyaW5nIHRoYXQgZWxpbWluYXRlcyBpbXBvc3NpYmxlIHRleHQgZnJvbSBiZWluZ1xuIgorIiBjb25zaWRlcmVkIGJ5IHRoZSBmdWxsIHJlZ2V4cCBtYXRjaGVyIHdpdGhvdXQgbmVjZXNzYXJpbHkgaGF2aW5nIHRvXG4iCisiIGxvb2sgYXQgZXZlcnkgY2hhcmFjdGVyLiBUaGUgcmVzdWx0IGlzIHR5cGljYWxseSBtYW55IHRpbWVzIGZhc3RlclxuIgorIiB0aGFuIFVuaXggZ3JlcCBvciBlZ3JlcC4gKFJlZ3VsYXIgZXhwcmVzc2lvbnMgY29udGFpbmluZyBiYWNrcmVmZXJlbmNpbmdcbiIKKyIgd2lsbCBydW4gbW9yZSBzbG93bHksIGhvd2V2ZXIpLlxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjI3NgorIywgZnV6enkKK21zZ2lkICIiCisiQjxkZWI+KDUpLCBCPGRlYi12ZXJzaW9uPig1KSwgQjxkZWJ0YWdzPigxKSwgQjxkcGtnPigxKSwgQjxkcGtnLWRlYj4oMSkuIgorbXNnc3RyICJCPGRlYj4oNSksIEI8ZHBrZz4oMSksIEI8ZHBrZy1kZWI+KDEpLiIKKworIy4gdHlwZTogVEgKKyM6IGRlYi1zcmMtY29udHJvbC41OjMKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiZGViLWNvbnRyb2wiCittc2dpZCAiZGViLXNyYy1jb250cm9sIgorbXNnc3RyICJkZWItY29udHJvbCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6NgorIywgZnV6enkKKyN8IG1zZ2lkICJkZWItY29udHJvbCAtIERlYmlhbiBwYWNrYWdlcycgbWFzdGVyIGNvbnRyb2wgZmlsZSBmb3JtYXQiCittc2dpZCAiZGViLXNyYy1jb250cm9sIC0gRGViaWFuIHNvdXJjZSBwYWNrYWdlcycgbWFzdGVyIGNvbnRyb2wgZmlsZSBmb3JtYXQiCittc2dzdHIgImRlYi1jb250cm9sIC0tINGE0L7RgNC80LDRgiDQvNCw0YHRgtC10YAg0YTQsNC50LvQsCBjb250cm9sINC/0LDQutC10YLQvtCyIERlYmlhbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MjgKK21zZ2lkICIiCisiRWFjaCBEZWJpYW4gc291cmNlIHBhY2thZ2UgY29udGFpbnMgdGhlIG1hc3RlciBcImNvbnRyb2xcIiBmaWxlLCB3aGljaCAiCisiY29udGFpbnMgYXQgbGVhc3QgMiBwYXJhZ3JhcGhzLCBzZXBhcmF0ZWQgYnkgYSBibGFuayBsaW5lLiBUaGUgZmlyc3QgIgorInBhcmFncmFwaCBsaXN0cyBhbGwgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHNvdXJjZSBwYWNrYWdlIGluIGdlbmVyYWwsIHdoaWxlICIKKyJlYWNoIGZvbGxvd2luZyBwYXJhZ3JhcGggZGVzY3JpYmVzIGV4YWN0bHkgb25lIGJpbmFyeSBwYWNrYWdlLiBFYWNoICIKKyJwYXJhZ3JhcGggY29uc2lzdHMgb2YgYXQgbGVhc3Qgb25lIGZpZWxkLiBBIGZpZWxkIHN0YXJ0cyB3aXRoIGEgZmllbGRuYW1lLCAiCisic3VjaCBhcyBCPFBhY2thZ2U+IG9yIEI8U2VjdGlvbj4gKGNhc2UgaW5zZW5zaXRpdmUpLCBmb2xsb3dlZCBieSBhIGNvbG9uLCAiCisidGhlIGJvZHkgb2YgdGhlIGZpZWxkIGFuZCBhIG5ld2xpbmUuICBNdWx0aS1saW5lIGZpZWxkcyBhcmUgYWxzbyBhbGxvd2VkLCAiCisiYnV0IGVhY2ggc3VwcGxlbWVudGFyeSBsaW5lLCB3aXRob3V0IGEgZmllbGRuYW1lLCBzaG91bGQgc3RhcnQgd2l0aCBhdCBsZWFzdCAiCisib25lIHNwYWNlLiBUaGUgY29udGVudCBvZiB0aGUgbXVsdGktbGluZSBmaWVsZHMgaXMgZ2VuZXJhbGx5IGpvaW5lZCB0byBhICIKKyJzaW5nbGUgbGluZSBieSB0aGUgdG9vbHMgKGV4Y2VwdCBpbiB0aGUgY2FzZSBvZiB0aGUgQjxEZXNjcmlwdGlvbj4gZmllbGQsICIKKyJzZWUgYmVsb3cpLiBUbyBpbnNlcnQgZW1wdHkgbGluZXMgaW50byBhIG11bHRpLWxpbmUgZmllbGQsIGluc2VydCBhIGRvdCAiCisiYWZ0ZXIgdGhlIHNwYWNlLiBMaW5lcyBzdGFydGluZyB3aXRoIGEgQjwnIyc+IGFyZSB0cmVhdGVkIGFzIGNvbW1lbnRzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZGViLXNyYy1jb250cm9sLjU6MjkKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiUkVRVUlSRUQgRklFTERTIgorbXNnaWQgIlNPVVJDRSBGSUVMRFMiCittc2dzdHIgItCe0JHQr9CX0JDQotCV0JvQrNCd0KvQlSDQn9Ce0JvQryIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zcmMtY29udHJvbC41OjMwCisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8U291cmNlOj4gRTxsdD5zb3VyY2UgbmFtZUU8Z3Q+IgorbXNnaWQgIkI8U291cmNlOj4gSTxzb3VyY2UtcGFja2FnZS1uYW1lPiAocmVxdWlyZWQpIgorbXNnc3RyICJCPFNvdXJjZTo+IEU8bHQ+0LjQvNGPINCw0YDRhdC40LLQvtCyINGBINC40YHRhdC+0LTQvdC40LrQsNC80LhFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MzcKK21zZ2lkICIiCisiVGhlIHZhbHVlIG9mIHRoaXMgZmllbGQgaXMgdGhlIG5hbWUgb2YgdGhlIHNvdXJjZSBwYWNrYWdlLCBhbmQgc2hvdWxkIG1hdGNoICIKKyJ0aGUgbmFtZSBvZiB0aGUgc291cmNlIHBhY2thZ2UgaW4gdGhlIGRlYmlhbi9jaGFuZ2Vsb2cgZmlsZS4gQSBwYWNrYWdlIG5hbWUgIgorIm11c3QgY29uc2lzdCBvbmx5IG9mIGxvd2VyIGNhc2UgbGV0dGVycyAoYS16KSwgZGlnaXRzICgwLTkpLCBwbHVzICgrKSBhbmQgIgorIm1pbnVzICgtKSBzaWducywgYW5kIHBlcmlvZHMgKC4pLiBQYWNrYWdlIG5hbWVzIG11c3QgYmUgYXQgbGVhc3QgdHdvICIKKyJjaGFyYWN0ZXJzIGxvbmcgYW5kIG11c3Qgc3RhcnQgd2l0aCBhbiBhbHBoYW51bWVyaWMgY2hhcmFjdGVyLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLXNyYy1jb250cm9sLjU6MzgKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxNYWludGFpbmVyOj4gRTxsdD5mdWxsbmFtZSBlbWFpbEU8Z3Q+IgorbXNnaWQgIkI8TWFpbnRhaW5lcjo+IEk8ZnVsbG5hbWUtZW1haWw+IChyZXF1aXJlZCkiCittc2dzdHIgIkI8TWFpbnRhaW5lcjo+IEU8bHQ+0L/QvtC70L3QvtC1INC40LzRjyDQuCDQsNC00YDQtdGBINGN0Lsu0L/QvtGH0YLRi0U8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNTo0MworIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiU2hvdWxkIGJlIGluIHRoZSBmb3JtYXQgYEpvZSBCbG9nZ3MgRTxsdD5qYmxvZ2dzQGZvby5jb21FPGd0PicsIGFuZCBpcyAiCisjfCAidHlwaWNhbGx5IHRoZSBwZXJzb24gd2hvIGNyZWF0ZWQgdGhlIHBhY2thZ2UsIGFzIG9wcG9zZWQgdG8gdGhlIGF1dGhvciBvZiAiCisjfCAidGhlIHNvZnR3YXJlIHRoYXQgd2FzIHBhY2thZ2VkLiIKK21zZ2lkICIiCisiU2hvdWxkIGJlIGluIHRoZSBmb3JtYXQgXCJKb2UgQmxvZ2dzIEU8bHQ+amJsb2dnc0Bmb28uY29tRTxndD5cIiwgYW5kICIKKyJyZWZlcmVuY2VzIHRoZSBwZXJzb24gd2hvIGN1cnJlbnRseSBtYWludGFpbnMgdGhlIHBhY2thZ2UsIGFzIG9wcG9zZWQgdG8gdGhlICIKKyJhdXRob3Igb2YgdGhlIHNvZnR3YXJlIG9yIHRoZSBvcmlnaW5hbCBwYWNrYWdlci4iCittc2dzdHIgIiIKKyLQotC10LvQviDQv9C+0LvRjyDQtNC+0LvQttC90L4g0LHRi9GC0Ywg0LIg0YTQvtGA0LzQsNGC0LUgYEpvZSBCbG9nZ3MgRTxsdD5qYmxvZ2dzQGZvby5jb21FPGd0Picg0LggIgorItC+0LHRi9GH0L3QviDQv9GA0LXQtNGB0YLQsNCy0LvRj9C10YIg0YHQvtCx0L7QuSDQuNC80Y8g0YHQvtC30LTQsNGC0LXQu9GPINC/0LDQutC10YLQsCwg0LAg0L3QtSDQuNC80Y8g0LDQstGC0L7RgNCwINC/0YDQvtCz0YDQsNC80LzRiywgIgorItC60L7RgtC+0YDQsNGPINCx0YvQu9CwINGD0L/QsNC60L7QstCw0L3QsC4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3JjLWNvbnRyb2wuNTo0NAorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPE1haW50YWluZXI6PiBFPGx0PmZ1bGxuYW1lIGVtYWlsRTxndD4iCittc2dpZCAiQjxVcGxvYWRlcnM6Pkk8IGZ1bGxuYW1lLWVtYWlsPiIKK21zZ3N0ciAiQjxNYWludGFpbmVyOj4gRTxsdD7Qv9C+0LvQvdC+0LUg0LjQvNGPINC4INCw0LTRgNC10YEg0Y3Quy7Qv9C+0YfRgtGLRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjQ5Cittc2dpZCAiIgorIkxpc3RzIGFsbCB0aGUgbmFtZXMgYW5kIGVtYWlsIGFkZHJlc3NlcyBvZiBjby1tYWludGFpbmVycyBvZiB0aGUgcGFja2FnZSwgaW4gIgorInRoZSBzYW1lIGZvcm1hdCBhcyB0aGUgTWFpbnRhaW5lciBmaWVsZC4gTXVsdGlwbGUgY28tbWFpbnRhaW5lcnMgc2hvdWxkIGJlICIKKyJzZXBhcmF0ZWQgYnkgYSBjb21tYS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zcmMtY29udHJvbC41OjUwCisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8VmVyc2lvbjo+IEU8bHQ+dmVyc2lvbiBzdHJpbmdFPGd0PiIKK21zZ2lkICJCPFN0YW5kYXJkcy1WZXJzaW9uOj5JPCB2ZXJzaW9uLXN0cmluZz4iCittc2dzdHIgIkI8VmVyc2lvbjo+IEU8bHQ+0YHRgtGA0L7QutCwINGBINCy0LXRgNGB0LjQtdC5RTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjU2Cittc2dpZCAiIgorIlRoaXMgZG9jdW1lbnRzIHRoZSBtb3N0IHJlY2VudCB2ZXJzaW9uIG9mIHRoZSBzdGFuZGFyZHMgKHdoaWNoIGNvbnNpc3RzIG9mICIKKyJ0aGUgRGViaWFuIFBvbGljeSBNYW51YWwgYW5kIHJlZmVyZW5jZWQgdGV4dHMgZnJvbSB0aGUgQjxkZWJpYW4tcG9saWN5PiAiCisicGFja2FnZSkgdGhpcyBwYWNrYWdlIGNvbXBsaWVzIHRvLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLXNyYy1jb250cm9sLjU6NTcKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxFc3NlbnRpYWw6PiBFPGx0Pnllc3xub0U8Z3Q+IgorbXNnaWQgIkI8RE0tVXBsb2FkLUFsbG93ZWQ6PiBCPHllcz58Qjxubz4iCittc2dzdHIgIkI8RXNzZW50aWFsOj4gRTxsdD55ZXN8bm9FPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6NjEKK21zZ2lkICIiCisiVGhpcyBmaWVsZCBpbmRpY2F0ZXMgd2hldGhlciB0aGUgcGFja2FnZSBjYW4gYmUgdXBsb2FkZWQgYnkgRGViaWFuICIKKyJNYWludGFpbmVycyBhcHBlYXJpbmcgaW4gdGhlIE1haW50YWluZXIgb3IgVXBsb2FkZXJzIGZpZWxkLiBUaGUgZGVmYXVsdCAiCisidmFsdWUgaXMgXCJub1wiLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNTo2NQorbXNnaWQgIlRoZSB1cHN0cmVhbSBwcm9qZWN0IGhvbWUgcGFnZSBVUkwuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjcxCittc2dpZCAiIgorIlRoZSBJPHVybD4gb2YgdGhlIGJ1ZyB0cmFja2luZyBzeXN0ZW0gZm9yIHRoaXMgcGFja2FnZS4gVGhlIGN1cnJlbnQgdXNlZCAiCisiZm9ybWF0IGlzIEk8YnRzLXR5cGU+Qjw6Ly8+STxidHMtYWRkcmVzcz4sIGxpa2UgQjxkZWJidWdzOi8vYnVncy5kZWJpYW4uIgorIm9yZz4uIFRoaXMgZmllbGQgaXMgdXN1YWxseSBub3QgbmVlZGVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLXNyYy1jb250cm9sLjU6NzIKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxWY3MtKjo+STwgdXJsPiIKK21zZ3N0ciAiQjxSZXBsYWNlczo+IEU8bHQ+0YHQv9C40YHQvtC6INC/0LDQutC10YLQvtCyRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41Ojc5Cittc2dpZCAiIgorIlRoZSBJPHVybD4gb2YgdGhlIFZlcnNpb24gQ29udHJvbCBTeXN0ZW0gcmVwb3NpdG9yeSB1c2VkIHRvIG1haW50YWluIHRoaXMgIgorInBhY2thZ2UuIEN1cnJlbnRseSBzdXBwb3J0ZWQgYXJlIEI8QXJjaD4sIEI8QnpyPiAoQmF6YWFyKSwgQjxDdnM+LCBCPERhcmNzPiwgIgorIkI8R2l0PiwgQjxIZz4gKE1lcmN1cmlhbCksIEI8TXRuPiAoTW9ub3RvbmUpIGFuZCBCPFN2bj4gKFN1YnZlcnNpb24pLiAiCisiVXN1YWxseSB0aGlzIGZpZWxkIHBvaW50cyB0byB0aGUgbGF0ZXN0IHZlcnNpb24gb2YgdGhlIHBhY2thZ2UsIHN1Y2ggYXMgdGhlICIKKyJtYWluIGJyYW5jaCBvciB0aGUgdHJ1bmsuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3JjLWNvbnRyb2wuNTo4MAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPFZjcy1Ccm93c2VyOj5JPCB1cmw+IgorbXNnc3RyICJCPFJlcGxhY2VzOj4gRTxsdD7RgdC/0LjRgdC+0Log0L/QsNC60LXRgtC+0LJFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6ODQKK21zZ2lkICIiCisiVGhlIEk8dXJsPiBvZiBhIHdlYmludGVyZmFjZSB0byBicm93c2UgdGhlIFZlcnNpb24gQ29udHJvbCBTeXN0ZW0gcmVwb3NpdG9yeS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6ODkKK21zZ2lkICIiCisiVGhlIG5hbWUgb2YgdGhlIGRpc3RyaWJ1dGlvbiB0aGlzIHBhY2thZ2UgaXMgb3JpZ2luYXRpbmcgZnJvbS4gVGhpcyBmaWVsZCBpcyAiCisidXN1YWxseSBub3QgbmVlZGVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNTo5NQorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiVGhpcyBpcyBhIGdlbmVyYWwgZmllbGQgdGhhdCBnaXZlcyB0aGUgcGFja2FnZSBhIGNhdGVnb3J5IGJhc2VkIG9uIHRoZSAiCisjfCAic29mdHdhcmUgdGhhdCBpdCBpbnN0YWxscy4gU29tZSBjb21tb24gc2VjdGlvbnMgYXJlIGB1dGlscycsIGBuZXQnLCAiCisjfCAiYG1haWwnLCBgdGV4dCcsIGB4MTEnIGV0Yy4iCittc2dpZCAiIgorIlRoaXMgaXMgYSBnZW5lcmFsIGZpZWxkIHRoYXQgZ2l2ZXMgdGhlIHBhY2thZ2UgYSBjYXRlZ29yeSBiYXNlZCBvbiB0aGUgIgorInNvZnR3YXJlIHRoYXQgaXQgaW5zdGFsbHMuIFNvbWUgY29tbW9uIHNlY3Rpb25zIGFyZSBcInV0aWxzXCIsIFwibmV0XCIsICIKKyJcIm1haWxcIiwgXCJ0ZXh0XCIsIFwieDExXCIsIGV0Yy4iCittc2dzdHIgIiIKKyLQrdGC0L4g0L7QsdC+0LHRidCw0Y7RidC10LUg0L/QvtC70LUsINCyINC60L7RgtC+0YDQvtC8INC/0LDQutC10YLRgyDQv9GA0LjRgdCy0LDQuNCy0LDQtdGC0YHRjyDQutCw0YLQtdCz0L7RgNC40Y8sINCyINC30LDQstC40YHQuNC80L7RgdGC0LggIgorItC+0YIg0YLQuNC/0LAg0L/RgNC+0LPRgNCw0LzQvNC90L7Qs9C+INC+0LHQtdGB0L/QtdGH0LXQvdC40Y8sINC60L7RgtC+0YDQvtC1INC+0L0g0YHQvtC00LXRgNC20LjRgi4g0J/RgNC40LzQtdGA0LDQvNC4INGB0LXQutGG0LjQuSAiCisi0LzQvtCz0YPRgiDRgdC70YPQttC40YLRjCBgdXRpbHMnLCBgbmV0JywgYG1haWwnLCBgdGV4dCcsIGB4MTEnINC4INGCLtC0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MTAwCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJTZXRzIHRoZSBpbXBvcnRhbmNlIG9mIHRoaXMgcGFja2FnZSBpbiByZWxhdGlvbiB0byB0aGUgc3lzdGVtIGFzIGEgIgorI3wgIndob2xlLiAgQ29tbW9uIHByaW9yaXRpZXMgYXJlIGByZXF1aXJlZCcsIGBzdGFuZGFyZCcsIGBvcHRpb25hbCcsIGBleHRyYScgIgorI3wgImV0Yy4iCittc2dpZCAiIgorIlNldHMgdGhlIGltcG9ydGFuY2Ugb2YgdGhpcyBwYWNrYWdlIGluIHJlbGF0aW9uIHRvIHRoZSBzeXN0ZW0gYXMgYSB3aG9sZS4gICIKKyJDb21tb24gcHJpb3JpdGllcyBhcmUgXCJyZXF1aXJlZFwiLCBcInN0YW5kYXJkXCIsIFwib3B0aW9uYWxcIiwgXCJleHRyYVwiLCAiCisiZXRjLiIKK21zZ3N0ciAiIgorItCj0YHRgtCw0L3QsNCy0LvQuNCy0LDQtdGCINCy0LDQttC90L7RgdGC0Ywg0LTQsNC90L3QvtCz0L4g0L/QsNC60LXRgtCwLCDQsiDQt9Cw0LLQuNGB0LjQvNC+0YHRgtC4INC+0YIg0LXQs9C+INC30L3QsNGH0LjQvNC+0YHRgtC4INC00LvRjyAiCisi0YHQuNGB0YLQtdC80YsuINCf0YDQuNC+0YDQuNGC0LXRgtGLINC80L7Qs9GD0YIg0LHRi9GC0Ywg0YLQsNC60LjQvNC4OiBgcmVxdWlyZWQnLCBgc3RhbmRhcmQnLCBgb3B0aW9uYWwnLCAiCisiYGV4dHJhJyDQuCDRgi7QtC4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3JjLWNvbnRyb2wuNToxMTAKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxEZXBlbmRzOj4gRTxsdD5wYWNrYWdlIGxpc3RFPGd0PiIKK21zZ2lkICJCPEJ1aWxkLURlcGVuZHM6Pkk8IHBhY2thZ2UtbGlzdD4iCittc2dzdHIgIkI8RGVwZW5kczo+IEU8bHQ+0YHQv9C40YHQvtC6INC/0LDQutC10YLQvtCyRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjExNAorbXNnaWQgIiIKKyJBIGxpc3Qgb2YgcGFja2FnZXMgdGhhdCBuZWVkIHRvIGJlIGluc3RhbGxlZCBhbmQgY29uZmlndXJlZCB0byBiZSBhYmxlIHRvICIKKyJidWlsZCB0aGUgc291cmNlIHBhY2thZ2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3JjLWNvbnRyb2wuNToxMTUKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxEZXBlbmRzOj4gRTxsdD5wYWNrYWdlIGxpc3RFPGd0PiIKK21zZ2lkICJCPEJ1aWxkLURlcGVuZHMtSW5kZXA6Pkk8IHBhY2thZ2UtbGlzdD4iCittc2dzdHIgIkI8RGVwZW5kczo+IEU8bHQ+0YHQv9C40YHQvtC6INC/0LDQutC10YLQvtCyRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjEyMAorbXNnaWQgIiIKKyJTYW1lIGFzIEI8QnVpbGQtRGVwZW5kcz4sIGJ1dCB0aGV5IGFyZSBvbmx5IG5lZWRlZCB3aGVuIGJ1aWxkaW5nIHRoZSAiCisiYXJjaGl0ZWN0dXJlIGluZGVwZW5kZW50IHBhY2thZ2VzLiBUaGUgQjxCdWlsZC1EZXBlbmRzPiBhcmUgYWxzbyBpbnN0YWxsZWQgIgorImluIHRoaXMgY2FzZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zcmMtY29udHJvbC41OjEyMQorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPENvbmZsaWN0czo+IEU8bHQ+cGFja2FnZSBsaXN0RTxndD4iCittc2dpZCAiQjxCdWlsZC1Db25mbGljdHM6Pkk8IHBhY2thZ2UtbGlzdD4iCittc2dzdHIgIkI8Q29uZmxpY3RzOj4gRTxsdD7RgdC/0LjRgdC+0Log0L/QsNC60LXRgtC+0LJFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MTI1Cittc2dpZCAiIgorIkEgbGlzdCBvZiBwYWNrYWdlcyB0aGF0IHNob3VsZCBub3QgYmUgaW5zdGFsbGVkIHdoZW4gdGhlIHBhY2thZ2UgaXMgYnVpbGQsICIKKyJmb3IgZXhhbXBsZSBiZWNhdXNlIHRoZXkgaW50ZXJmZXJlIHdpdGggdGhlIHVzZWQgYnVpbGQgc3lzdGVtLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLXNyYy1jb250cm9sLjU6MTI2CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8Q29uZmxpY3RzOj4gRTxsdD5wYWNrYWdlIGxpc3RFPGd0PiIKK21zZ2lkICJCPEJ1aWxkLUNvbmZsaWN0cy1JbmRlcDo+STwgcGFja2FnZS1saXN0PiIKK21zZ3N0ciAiQjxDb25mbGljdHM6PiBFPGx0PtGB0L/QuNGB0L7QuiDQv9Cw0LrQtdGC0L7QskU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToxMzAKK21zZ2lkICIiCisiU2FtZSBhcyBCPEJ1aWxkLUNvbmZsaWN0cz4sIGJ1dCBvbmx5IHdoZW4gYnVpbGRpbmcgdGhlIGFyY2hpdGVjdHVyZSAiCisiaW5kZXBlbmRlbnQgcGFja2FnZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjE0MQorIywgZnV6enkKK21zZ2lkICIiCisiVGhlIHN5bnRheCBvZiB0aGUgQjxCdWlsZC1EZXBlbmRzPiBhbmQgQjxCdWlsZC1EZXBlbmRzLUluZGVwPiBmaWVsZHMgaXMgYSAiCisibGlzdCBvZiBncm91cHMgb2YgYWx0ZXJuYXRpdmUgcGFja2FnZXMuIEVhY2ggZ3JvdXAgaXMgYSBsaXN0IG9mIHBhY2thZ2VzICIKKyJzZXBhcmF0ZWQgYnkgdmVydGljYWwgYmFyIChvciBcInBpcGVcIikgc3ltYm9scywgXCJ8XCIuIFRoZSBncm91cHMgYXJlICIKKyJzZXBhcmF0ZWQgYnkgY29tbWFzLiBDb21tYXMgYXJlIHRvIGJlIHJlYWQgYXMgXCJBTkRcIiwgYW5kIHBpcGVzIGFzIFwiT1JcIiwgIgorIndpdGggcGlwZXMgYmluZGluZyBtb3JlIHRpZ2h0bHkuIEVhY2ggcGFja2FnZSBuYW1lIGlzIG9wdGlvbmFsbHkgZm9sbG93ZWQgYnkgIgorImEgdmVyc2lvbiBudW1iZXIgc3BlY2lmaWNhdGlvbiBpbiBwYXJlbnRoZXNlcyBhbmQgYW4gYXJjaGl0ZWN0dXJlICIKKyJzcGVjaWZpY2F0aW9uIGluIHNxdWFyZSBicmFja2V0cy4iCittc2dzdHIgIiIKKyLQodC40L3RgtCw0LrRgdC40YEg0L/QvtC70LXQuSBCPERlcGVuZHM+LCBCPFByZS1EZXBlbmRzPiwgQjxSZWNvbW1lbmRzPiDQuCBCPFN1Z2dlc3RzPiAiCisi0L/QvtC30LLQvtC70Y/QtdGCINC+0L/QuNGB0LDRgtGMINCz0YDRg9C/0L/RgyDQsNC70YzRgtC10YDQvdCw0YLQuNCy0L3Ri9GFINC/0LDQutC10YLQvtCyLiDQmtCw0LbQtNCw0Y8g0YLQsNC60LDRjyDQs9GA0YPQv9C/0LAgLS0g0Y3RgtC+ICIKKyLRgdC/0LjRgdC+0Log0L/QsNC60LXRgtC+0LIsINGA0LDQt9C00LXQu9GR0L3QvdGL0YUg0YHQuNC80LLQvtC70L7QvCDQstC10YDRgtC40LrQsNC70YzQvdC+0Lkg0YfQtdGA0YLRiyBgfCcuINCT0YDRg9C/0L/RiyAiCisi0YDQsNC30LTQtdC70Y/RjtGC0YHRjyDQt9Cw0L/Rj9GC0YvQvNC4LiDQl9Cw0L/Rj9GC0YvQtSDQvNC+0LbQvdC+INGH0LjRgtCw0YLRjCDQutCw0LogYNCYJywg0LAg0LLQtdGA0YLQuNC60LDQu9GM0L3Ri9C1INGH0ZHRgNGC0L7Rh9C60LggIgorItC60LDQuiBg0JjQm9CYJy4g0JrQsNC20LTRi9C5INGN0LvQtdC80LXQvdGCINGP0LLQu9GP0LXRgtGB0Y8g0LjQvNC10L3QtdC8INC/0LDQutC10YLQsCwg0L/RgNC40YfRkdC8INCyINC60YDRg9Cz0LvRi9GFINGB0LrQvtCx0LrQsNGFICIKKyLQvNC+0LbQvdC+INGD0LrQsNC30LDRgtGMINC10LPQviDQstC10YDRgdC40Y4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToxNTAKK21zZ2lkICIiCisiVGhlIHN5bnRheCBvZiB0aGUgQjxCdWlsZC1Db25mbGljdHM+IGFuZCBCPEJ1aWxkLUNvbmZsaWN0cy1JbmRlcD4gZmllbGRzIGlzICIKKyJhIGxpc3Qgb2YgY29tbWEtc2VwYXJhdGVkIHBhY2thZ2UgbmFtZXMsIHdoZXJlIHRoZSBjb21tYSBpcyByZWFkIGFzIGFuIFwiQU5EIgorIlwiLiBTcGVjaWZ5aW5nIGFsdGVybmF0aXZlIHBhY2thZ2VzIHVzaW5nIGEgXCJwaXBlXCIgaXMgbm90IHN1cHBvcnRlZC4gIEVhY2ggIgorInBhY2thZ2UgbmFtZSBpcyBvcHRpb25hbGx5IGZvbGxvd2VkIGJ5IGEgdmVyc2lvbiBudW1iZXIgc3BlY2lmaWNhdGlvbiBpbiAiCisicGFyZW50aGVzZXMgYW5kIGFuIGFyY2hpdGVjdHVyZSBzcGVjaWZpY2F0aW9uIGluIHNxdWFyZSBicmFja2V0cy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MTU2CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJBIHZlcnNpb24gbnVtYmVyIG1heSBzdGFydCB3aXRoIGEgYEU8Z3Q+RTxndD4nLCBpbiB3aGljaCBjYXNlIGFueSBsYXRlciAiCisjfCAidmVyc2lvbiB3aWxsIG1hdGNoLCBhbmQgbWF5IHNwZWNpZnkgb3Igb21pdCB0aGUgRGViaWFuIHBhY2thZ2luZyByZXZpc2lvbiAiCisjfCAiKHNlcGFyYXRlZCBieSBhIGh5cGhlbikuIEFjY2VwdGVkIHZlcnNpb24gcmVsYXRpb25zaGlwcyBhcmUgXCJFPGd0PkU8Z3Q+IgorI3wgIlwiIGZvciBncmVhdGVyIHRoYW4sIFwiRTxsdD5FPGx0PlwiIGZvciBsZXNzIHRoYW4sIFwiRTxndD49XCIgZm9yIGdyZWF0ZXIgIgorI3wgInRoYW4gb3IgZXF1YWwgdG8sIFwiRTxsdD49XCIgZm9yIGxlc3MgdGhhbiBvciBlcXVhbCB0bywgYW5kIFwiPVwiIGZvciAiCisjfCAiZXF1YWwgdG8uIgorbXNnaWQgIiIKKyJBIHZlcnNpb24gbnVtYmVyIG1heSBzdGFydCB3aXRoIGEgXCJFPGd0PkU8Z3Q+XCIsIGluIHdoaWNoIGNhc2UgYW55IGxhdGVyICIKKyJ2ZXJzaW9uIHdpbGwgbWF0Y2gsIGFuZCBtYXkgc3BlY2lmeSBvciBvbWl0IHRoZSBEZWJpYW4gcGFja2FnaW5nIHJldmlzaW9uICIKKyIoc2VwYXJhdGVkIGJ5IGEgaHlwaGVuKS4gQWNjZXB0ZWQgdmVyc2lvbiByZWxhdGlvbnNoaXBzIGFyZSBcIkU8Z3Q+RTxndD5cIiAiCisiZm9yIGdyZWF0ZXIgdGhhbiwgXCJFPGx0PkU8bHQ+XCIgZm9yIGxlc3MgdGhhbiwgXCJFPGd0Pj1cIiBmb3IgZ3JlYXRlciB0aGFuICIKKyJvciBlcXVhbCB0bywgXCJFPGx0Pj1cIiBmb3IgbGVzcyB0aGFuIG9yIGVxdWFsIHRvLCBhbmQgXCI9XCIgZm9yIGVxdWFsIHRvLiIKK21zZ3N0ciAiIgorItCV0YHQu9C4INC90L7QvNC10YAg0LLQtdGA0YHQuNC4INC90LDRh9C40L3QsNC10YLRgdGPINGBIGBFPGd0PkU8Z3Q+Jywg0YLQviDRjdGC0L4g0L7Qt9C90LDRh9Cw0LXRgiDQu9GO0LHRg9GOINCx0L7Qu9C10LUgIgorItC/0L7Qt9C00L3RjtGOINCy0LXRgNGB0LjRjiwg0L/RgNC4INGH0ZHQvCDRgtCw0LrQttC1INC80L7QttC10YIg0LHRi9GC0Ywg0LfQsNC00LDQvSDQuNC70Lgg0L/RgNC+0L/Rg9GJ0LXQvSDQvdC+0LzQtdGAINGA0LXQstC40LfQuNC4ICIKKyJEZWJpYW4gKNC60L7RgtC+0YDRi9C5INC+0YLQtNC10LvQtdC9INC+0YIg0LLQtdGA0YHQuNC4INC00LXRhNC40YHQvtC8KS4g0KLQsNC60LjQvCDQvtCx0YDQsNC30L7QvDogXCJFPGd0PkU8Z3Q+XCIgIgorItC+0LfQvdCw0YfQsNC10YIgXCLQsdC+0LvRjNGI0LUg0YfQtdC8XCIsIFwiRTxsdD5FPGx0PlwiIC0tIFwi0LzQtdC90YzRiNC1INGH0LXQvFwiLCBcIkU8Z3Q+PVwiIC0tICIKKyJcItCx0L7Qu9GM0YjQtSDQuNC70Lgg0YDQsNCy0L3QviDRh9C10LxcIiwgXCJFPGx0Pj1cIiAtLSBcItC80LXQvdGM0YjQtSDQuNC70Lgg0YDQsNCy0L3QviDRh9C10LxcIiwg0LAgXCI9XCIgLS0gIgorIlwi0YLQvtC70YzQutC+INCy0LXRgNGB0LjRjywg0LrQvtGC0L7RgNCw0Y8g0YPQutCw0LfQsNC90LBcIi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjE2MAorbXNnaWQgIiIKKyJBIGFyY2hpdGVjdHVyZSBzcGVjaWZpY2F0aW9uIGNvbnNpc3RzIG9mIG9uZSBvciBtb3JlIGFyY2hpdGVjdHVyZSBuYW1lcywgIgorInNlcGFyYXRlZCBieSB3aGl0ZXNwYWNlLiBFeGNsYW1hdGlvbiBtYXJrcyBtYXkgYmUgcHJlcGVuZGVkIHRvIGVhY2ggb2YgdGhlICIKKyJuYW1lcywgbWVhbmluZyBcIk5PVFwiLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToxNjUKK21zZ2lkICIiCisiTm90ZSB0aGF0IGRlcGVuZGVuY2llcyBvbiBwYWNrYWdlcyBpbiB0aGUgQjxidWlsZC1lc3NlbnRpYWw+IHNldCBjYW4gYmUgIgorIm9taXR0ZWQgYW5kIHRoYXQgZGVjbGFyaW5nIGJ1aWxkIGNvbmZsaWN0cyBhZ2FpbnN0IHRoZW0gaXMgaW1wb3NzaWJsZS4gQSAiCisibGlzdCBvZiB0aGVzZSBwYWNrYWdlcyBpcyBpbiB0aGUgYnVpbGQtZXNzZW50aWFsIHBhY2thZ2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkZWItc3JjLWNvbnRyb2wuNToxNjcKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiT1BUSU9OQUwgRklFTERTIgorbXNnaWQgIkJJTkFSWSBGSUVMRFMiCittc2dzdHIgItCd0JXQntCR0K/Ql9CQ0KLQldCb0KzQndCr0JUg0J/QntCb0K8iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjE3NgorbXNnaWQgIiIKKyJOb3RlIHRoYXQgdGhlIEI8UHJpb3JpdHk+LCBCPFNlY3Rpb24+IGFuZCBCPEhvbWVwYWdlPiBmaWVsZHMgY2FuIGFsc28gYmUgaW4gIgorImEgYmluYXJ5IHBhcmFncmFwaCB0byBvdmVycmlkZSB0aGUgZ2xvYmFsIHZhbHVlIGZyb20gdGhlIHNvdXJjZSBwYWNrYWdlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLXNyYy1jb250cm9sLjU6MTc3CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8UGFja2FnZTo+IEU8bHQ+cGFja2FnZSBuYW1lRTxndD4iCittc2dpZCAiQjxQYWNrYWdlOj4gSTxiaW5hcnktcGFja2FnZS1uYW1lPiAocmVxdWlyZWQpIgorbXNnc3RyICJCPFBhY2thZ2U6PiBFPGx0PtC40LzRjyDQv9Cw0LrQtdGC0LBFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MTgxCittc2dpZCAiIgorIlRoaXMgZmllbGQgaXMgdXNlZCB0byBuYW1lIHRoZSBiaW5hcnkgcGFja2FnZSBuYW1lLiBUaGUgc2FtZSByZXN0cmljdGlvbnMgYXMgIgorInRvIGEgc291cmNlIHBhY2thZ2UgbmFtZSBhcHBseS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zcmMtY29udHJvbC41OjE4MgorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPEFyY2hpdGVjdHVyZTo+IEU8bHQ+YXJjaHxhbGxFPGd0PiIKK21zZ2lkICJCPEFyY2hpdGVjdHVyZTo+IEk8YXJjaD58QjxhbGw+fEI8YW55PiAocmVxdWlyZWQpIgorbXNnc3RyICJCPEFyY2hpdGVjdHVyZTo+IEU8bHQ+0LDRgNGF0LjRgtC10LrRgtGD0YDQsHxhbGxFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MTk1Cittc2dpZCAiIgorIlRoZSBhcmNoaXRlY3R1cmUgc3BlY2lmaWVzIG9uIHdoaWNoIHR5cGUgb2YgaGFyZHdhcmUgdGhpcyBwYWNrYWdlIHJ1bnMuIEZvciAiCisicGFja2FnZXMgdGhhdCBydW4gb24gYWxsIGFyY2hpdGVjdHVyZXMsIHVzZSB0aGUgQjxhbnk+IHZhbHVlLiBGb3IgcGFja2FnZXMgIgorInRoYXQgYXJlIGFyY2hpdGVjdHVyZSBpbmRlcGVuZGVudCwgc3VjaCBhcyBzaGVsbCBhbmQgUGVybCBzY3JpcHRzIG9yICIKKyJkb2N1bWVudGF0aW9uLCB1c2UgdGhlIEI8YWxsPiB2YWx1ZS4gVG8gcmVzdHJpY3QgdGhlIHBhY2thZ2VzIHRvIGEgY2VydGFpbiAiCisic2V0IG9mIGFyY2hpdGVjdHVyZXMsIHNwZWNpZnkgdGhlIGFyY2hpdGVjdHVyZSBuYW1lcywgc2VwYXJhdGVkIGJ5IGEgc3BhY2UuICIKKyJJdCdzIGFsc28gcG9zc2libGUgdG8gcHV0IGFyY2hpdGVjdHVyZSB3aWxkY2FyZHMgaW4gdGhhdCBsaXN0IChzZWUgQjxkcGtnLSIKKyJhcmNoaXRlY3R1cmU+KDEpICBmb3IgbW9yZSBpbmZvcm1hdGlvbiBhYm91dCB0aGVtKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zcmMtY29udHJvbC41OjE5NgorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPFBhY2thZ2U6PiBFPGx0PnBhY2thZ2UgbmFtZUU8Z3Q+IgorbXNnaWQgIkI8UGFja2FnZS1UeXBlOj4gQjxkZWI+fEI8dWRlYj4iCittc2dzdHIgIkI8UGFja2FnZTo+IEU8bHQ+0LjQvNGPINC/0LDQutC10YLQsEU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToyMDEKK21zZ2lkICIiCisiVGhpcyBmaWVsZCBkZWZpbmVzIHRoZSB0eXBlIG9mIHRoZSBwYWNrYWdlLiBcInVkZWJcIiBpcyBmb3Igc2l6ZS1jb25zdHJhaW5lZCAiCisicGFja2FnZXMgdXNlZCBieSB0aGUgZGViaWFuIGluc3RhbGxlci4gXCJkZWJcIiBpcyB0aGUgZGVmYXVsdCB2YWx1ZSwgaXQncyAiCisiYXNzdW1lZCBpZiB0aGUgZmllbGQgaXMgYWJzZW50LiBNb3JlIHR5cGVzIG1pZ2h0IGJlIGFkZGVkIGluIHRoZSBmdXR1cmUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3JjLWNvbnRyb2wuNToyMjUKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxEZXNjcmlwdGlvbjo+IEU8bHQ+c2hvcnQgZGVzY3JpcHRpb25FPGd0PiIKK21zZ2lkICJCPERlc2NyaXB0aW9uOj4gSTxzaG9ydC1kZXNjcmlwdGlvbj4gKHJlcXVpcmVkKSIKK21zZ3N0ciAiQjxEZXNjcmlwdGlvbjo+IEU8bHQ+0LrQvtGA0L7RgtC60L7QtSDQvtC/0LjRgdCw0L3QuNC1RTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjIzMgorbXNnaWQgIiIKKyJUaGVzZSBmaWVsZHMgYXJlIGRlc2NyaWJlZCBpbiB0aGUgQjxkZWItY29udHJvbD4oNSkgIG1hbnVhbCBwYWdlLCBhcyB0aGV5ICIKKyJhcmUgY29waWVkIGxpdGVyYWxseSB0byB0aGUgY29udHJvbCBmaWxlIG9mIHRoZSBiaW5hcnkgcGFja2FnZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zcmMtY29udHJvbC41OjI0OAorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPFJlcGxhY2VzOj4gRTxsdD5wYWNrYWdlIGxpc3RFPGd0PiIKK21zZ2lkICJCPEVuaGFuY2VzOj5JPCBwYWNrYWdlLWxpc3Q+IgorbXNnc3RyICJCPFJlcGxhY2VzOj4gRTxsdD7RgdC/0LjRgdC+0Log0L/QsNC60LXRgtC+0LJFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MjcwCittc2dpZCAiIgorIlRoZXNlIGZpZWxkcyBkZWNsYXJlIHJlbGF0aW9uc2hpcHMgYmV0d2VlbiBwYWNrYWdlcy4gVGhleSBhcmUgZGlzY3Vzc2VkIGluICIKKyJ0aGUgQjxkZWItY29udHJvbD4oNSkgIG1hbnBhZ2UgYW5kIGluIHRoZSBCPGRlYmlhbi1wb2xpY3k+IHBhY2thZ2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkZWItc3JjLWNvbnRyb2wuNToyNzEKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiUkVRVUlSRUQgRklFTERTIgorbXNnaWQgIlVTRVItREVGSU5FRCBGSUVMRFMiCittc2dzdHIgItCe0JHQr9CX0JDQotCV0JvQrNCd0KvQlSDQn9Ce0JvQryIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6Mjg2Cittc2dpZCAiIgorIkl0IGlzIGFsbG93ZWQgdG8gYWRkIGFkZGl0aW9uYWwgdXNlci1kZWZpbmVkIGZpZWxkcyB0byB0aGUgY29udHJvbCBmaWxlLiBUaGUgIgorInRvb2xzIHdpbGwgaWdub3JlIHRoZXNlIGZpZWxkcy4gSWYgeW91IHdhbnQgdGhlIGZpZWxkcyB0byBiZSBjb3BpZWQgb3ZlciB0byAiCisidGhlIG91dHB1dCBmaWxlcywgc3VjaCBhcyB0aGUgYmluYXJ5IHBhY2thZ2VzLCB5b3UgbmVlZCB0byB1c2UgYSBjdXN0b20gIgorIm5hbWluZyBzY2hlbWU6IHRoZSBmaWVsZHMgc2hvdWxkIHN0YXJ0IHdpdGggYSBYLCBmb2xsb3dlZCBieSBvbmUgb3IgbW9yZSBvZiAiCisidGhlIGxldHRlcnMgQkNTIGFuZCBhIGh5cGVuLiBJZiB0aGUgbGV0dGVyIEIgaXMgdXNlZCwgdGhlIGZpZWxkIHdpbGwgYXBwZWFyICIKKyJpbiB0aGUgY29udHJvbCBmaWxlIGluIHRoZSBiaW5hcnkgcGFja2FnZSwgc2VlIEI8ZGViLWNvbnRyb2w+KDUpLCBmb3IgdGhlICIKKyJsZXR0ZXIgUyBpbiB0aGUgc291cmNlIHBhY2thZ2UgY29udHJvbCBmaWxlIGFzIGNvbnN0cnVjdGVkIGJ5IEI8ZHBrZy1zb3VyY2U+IgorIigxKSAgYW5kIGZvciB0aGUgbGV0dGVyIEMgaW4gdGhlIHVwbG9hZCBjb250cm9sICguY2hhbmdlcykgZmlsZS4gTm90ZSB0aGF0ICIKKyJ0aGUgWFtCQ1NdLSBwcmVmaXhlcyBhcmUgc3RyaXBwZWQgd2hlbiB0aGUgZmllbGRzIGFyZSBjb3BpZWQgb3ZlciB0byB0aGUgIgorIm91dHB1dCBmaWxlcy4gQSBmaWVsZCBCPFhDLUFwcHJvdmVkLUJ5PiB3aWxsIGFwcGVhciBhcyBCPEFwcHJvdmVkLUJ5PiBpbiB0aGUgIgorImNoYW5nZXMgZmlsZSBhbmQgd2lsbCBub3QgYXBwZWFyIGluIHRoZSBiaW5hcnkgb3Igc291cmNlIHBhY2thZ2UgY29udHJvbCAiCisiZmlsZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjMwNAorIywgbm8td3JhcAorbXNnaWQgIiIKKyIjIENvbW1lbnRcbiIKKyJTb3VyY2U6IGRwa2dcbiIKKyJTZWN0aW9uOiBhZG1pblxuIgorIlByaW9yaXR5OiByZXF1aXJlZFxuIgorIk1haW50YWluZXI6IERwa2cgRGV2ZWxvcGVycyBFPGx0PmRlYmlhbi1kcGtnQGxpc3RzLmRlYmlhbi5vcmdFPGd0PlxuIgorIiMgdGhpcyBmaWVsZCBpcyBjb3BpZWQgdG8gdGhlIGJpbmFyeSBhbmQgc291cmNlIHBhY2thZ2VzXG4iCisiWEJTLVVwc3RyZWFtLVJlbGVhc2UtU3RhdHVzOiBzdGFibGVcbiIKKyJIb21lcGFnZTogaHR0cDovL3dpa2kuZGViaWFuLm9yZy9UZWFtcy9EcGtnXG4iCisiVmNzLUJyb3dzZXI6IGh0dHA6Ly9naXQuZGViaWFuLm9yZy8/cD1kcGtnL2Rwa2cuZ2l0XG4iCisiVmNzLUdpdDogZ2l0Oi8vZ2l0LmRlYmlhbi5vcmcvZ2l0L2Rwa2cvZHBrZy5naXRcbiIKKyJTdGFuZGFyZHMtVmVyc2lvbjogMy43LjNcbiIKKyJCdWlsZC1EZXBlbmRzOiBwa2ctY29uZmlnLCBkZWJoZWxwZXIgKEU8Z3Q+PSA0LjEuODEpLFxuIgorIiBsaWJzZWxpbnV4MS1kZXYgKEU8Z3Q+PSAxLjI4LTQpIFshbGludXgtYW55XVxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjMyMworIywgbm8td3JhcAorbXNnaWQgIiIKKyJQYWNrYWdlOiBkcGtnLWRldlxuIgorIlNlY3Rpb246IHV0aWxzXG4iCisiUHJpb3JpdHk6IG9wdGlvbmFsXG4iCisiQXJjaGl0ZWN0dXJlOiBhbGxcbiIKKyIjIHRoaXMgaXMgYSBjdXN0b20gZmllbGQgaW4gdGhlIGJpbmFyeSBwYWNrYWdlXG4iCisiWEItTWVudG9yaW5nLUNvbnRhY3Q6IFJhcGhhZWwgSGVydHpvZyBFPGx0PmhlcnR6b2dAZGViaWFuLm9yZ0U8Z3Q+XG4iCisiRGVwZW5kczogZHBrZyAoRTxndD49IDEuMTQuNiksIHBlcmw1LCBwZXJsLW1vZHVsZXMsIGNwaW8gKEU8Z3Q+PSAyLjQuMi0yKSxcbiIKKyIgYnppcDIsIGx6bWEsIHBhdGNoIChFPGd0Pj0gMi4yLTEpLCBtYWtlLCBiaW51dGlscywgbGlidGltZWRhdGUtcGVybFxuIgorIlJlY29tbWVuZHM6IGdjYyB8IGMtY29tcGlsZXIsIGJ1aWxkLWVzc2VudGlhbFxuIgorIlN1Z2dlc3RzOiBnbnVwZywgZGViaWFuLWtleXJpbmdcbiIKKyJDb25mbGljdHM6IGRwa2ctY3Jvc3MgKEU8bHQ+RTxsdD4gMi4wLjApLCBkZXZzY3JpcHRzIChFPGx0PkU8bHQ+IDIuMTAuMjYpXG4iCisiUmVwbGFjZXM6IG1hbnBhZ2VzLXBsIChFPGx0Pj0gMjAwNTExMTctMSlcbiIKKyJEZXNjcmlwdGlvbjogRGViaWFuIHBhY2thZ2UgZGV2ZWxvcG1lbnQgdG9vbHNcbiIKKyIgVGhpcyBwYWNrYWdlIHByb3ZpZGVzIHRoZSBkZXZlbG9wbWVudCB0b29scyAoaW5jbHVkaW5nIGRwa2ctc291cmNlKVxuIgorIiByZXF1aXJlZCB0byB1bnBhY2ssIGJ1aWxkIGFuZCB1cGxvYWQgRGViaWFuIHNvdXJjZSBwYWNrYWdlcy5cbiIKKyIgLlxuIgorIiBNb3N0IERlYmlhbiBzb3VyY2UgcGFja2FnZXMgd2lsbCByZXF1aXJlIGFkZGl0aW9uYWwgdG9vbHMgdG8gYnVpbGQ7XG4iCisiIGZvciBleGFtcGxlLCBtb3N0IHBhY2thZ2VzIG5lZWQgbWFrZSBhbmQgdGhlIEMgY29tcGlsZXIgZ2NjLlxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjMzMAorIywgZnV6enkKK21zZ2lkICJCPGRlYi1jb250cm9sPig1KSwgQjxkZWItdmVyc2lvbj4oNSksIEI8ZHBrZy1zb3VyY2U+KDEpIgorbXNnc3RyICJCPGRlYj4oNSksIEI8ZHBrZz4oMSksIEI8ZHBrZy1kZWI+KDEpLiIKKworIy4gdHlwZTogVEgKKyM6IGRlYi1zcGxpdC41OjEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiZGViLXNwbGl0IgorbXNnc3RyICLQutC+0LzQv9C70LXQutGCIGRwa2ciCisKKyMuIHR5cGU6IFRICisjOiBkZWItc3BsaXQuNToxIGRwa2ctY2hlY2tidWlsZGRlcHMuMToxIGRwa2ctZGlzdGFkZGZpbGUuMToxIGRwa2ctc3BsaXQuMToyCisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjEgZHBrZy12ZW5kb3IuMToxIHN0YXJ0LXN0b3AtZGFlbW9uLjg6MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICIyMDExLTA3LTA0IgorbXNnc3RyICIyMDA2LTAyLTI4IgorCisjIHR5cGU6IFBsYWluIHRleHQKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcGxpdC41OjQKK21zZ2lkICJkZWItc3BsaXQgLSBEZWJpYW4gbXVsdGktcGFydCBiaW5hcnkgcGFja2FnZSBmb3JtYXQiCittc2dzdHIgIiIKKworIyB0eXBlOiBQbGFpbiB0ZXh0CisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3BsaXQuNTo5Cittc2dpZCAiIgorIlRoZSBtdWx0aS1wYXJ0IEI8LmRlYj4gZm9ybWF0IGlzIHVzZWQgdG8gc3BsaXQgYmlnIHBhY2thZ2VzIGludG8gc21hbGxlciAiCisicGllY2VzIHRvIGVhc2UgdHJhbnNwb3J0IGluIHNtYWxsIG1lZGlhLiIKK21zZ3N0ciAiIgorCisjIHR5cGU6IFBsYWluIHRleHQKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcGxpdC41OjEyCittc2dpZCAiIgorIlRoZSBmaWxlIGlzIGFuIEI8YXI+IGFyY2hpdmUgd2l0aCBhIG1hZ2ljIHZhbHVlIG9mIEI8IUU8bHQ+YXJjaEU8Z3Q+Pi4gIFRoZSAiCisiZmlsZSBuYW1lcyBtaWdodCBjb250YWluIGEgdHJhaWxpbmcgc2xhc2ggKHNpbmNlIGRwa2cgMS4xNS42KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNwbGl0LjU6MTUKK21zZ2lkICIiCisiVGhlIGZpcnN0IG1lbWJlciBpcyBuYW1lZCBCPGRlYmlhbi1zcGxpdD4gYW5kIGNvbnRhaW5zIGEgc2VyaWVzIG9mIGxpbmVzLCAiCisic2VwYXJhdGVkIGJ5IG5ld2xpbmVzLiBDdXJyZW50bHkgZWlnaHQgbGluZXMgYXJlIHByZXNlbnQ6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkZWItc3BsaXQuNToxNSBkZWItc3BsaXQuNToxOCBkZWItc3BsaXQuNToyMCBkZWItc3BsaXQuNToyMiBkZWItc3BsaXQuNToyNAorIzogZGViLXNwbGl0LjU6MjYgZGViLXNwbGl0LjU6MjggZGViLXNwbGl0LjU6MzEgZHBrZy1nZW5zeW1ib2xzLjE6MjAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjIyIGRwa2ctZ2Vuc3ltYm9scy4xOjI0IGRwa2ctZ2Vuc3ltYm9scy4xOjI2CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozMTEgZHBrZy1nZW5zeW1ib2xzLjE6MzE3IGRwa2ctZ2Vuc3ltYm9scy4xOjM1MQorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzU1IGRwa2ctZ2Vuc3ltYm9scy4xOjM1OAorIywgbm8td3JhcAorbXNnaWQgIlxcKGJ1IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcGxpdC41OjE4Cittc2dpZCAiIgorIlRoZSBmb3JtYXQgdmVyc2lvbiBudW1iZXIsIEI8Mi4xPiBhdCB0aGUgdGltZSB0aGlzIG1hbnVhbCBwYWdlIHdhcyB3cml0dGVuLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3BsaXQuNToyMAorIywgZnV6enkKK21zZ2lkICJUaGUgcGFja2FnZSBuYW1lLiIKK21zZ3N0ciAi0J/QsNC60LXRgiDRgNCw0YHQv9Cw0LrQvtCy0LDQvSDQuCDRg9GB0L/QtdGI0L3QviDQvdCw0YHRgtGA0L7QtdC9LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNwbGl0LjU6MjIKKyMsIGZ1enp5Cittc2dpZCAiVGhlIHBhY2thZ2UgdmVyc2lvbi4iCittc2dzdHIgItCf0LDQutC10YIg0LLRi9Cx0YDQsNC9INC00LvRjyDRg9GB0YLQsNC90L7QstC60LguIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3BsaXQuNToyNAorbXNnaWQgIlRoZSBtZDVzdW0gb2YgdGhlIHBhY2thZ2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcGxpdC41OjI2CisjLCBmdXp6eQorbXNnaWQgIlRoZSB0b3RhbCBzaXplIG9mIHRoZSBwYWNrYWdlLiIKK21zZ3N0ciAi0JLRgNGD0YfQvdGD0Y4g0L/RgNC+0YHQvNC+0YLRgNC10YLRjCDRgdC/0LjRgdC+0Log0L/QsNC60LXRgtC+0LI6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3BsaXQuNToyOAorbXNnaWQgIlRoZSBtYXhpbXVtIHBhcnQgc2l6ZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNwbGl0LjU6MzEKK21zZ2lkICIiCisiVGhlIGN1cnJlbnQgcGFydCBudW1iZXIsIGZvbGxvd2VkIGJ5IGEgc2xhc2ggYW5kIHRoZSB0b3RhbCBhbW91bnQgb2YgcGFydHMgIgorIihhcyBpbiBcXChvcTEvMTBcXChjcSkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcGxpdC41OjMzCittc2dpZCAiVGhlIHBhY2thZ2UgYXJjaGl0ZWN0dXJlIChzaW5jZSBkcGtnIDEuMTYuMSkuIgorbXNnc3RyICIiCisKKyMgdHlwZTogUGxhaW4gdGV4dAorIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNwbGl0LjU6MzYKK21zZ2lkICIiCisiUHJvZ3JhbXMgd2hpY2ggcmVhZCBtdWx0aS1wYXJ0IGFyY2hpdmVzIHNob3VsZCBiZSBwcmVwYXJlZCBmb3IgYWRkaXRpb25hbCAiCisibGluZXMgdG8gYmUgcHJlc2VudCwgYW5kIHNob3VsZCBpZ25vcmUgdGhlc2UgaWYgdGhpcyBpcyB0aGUgY2FzZS4iCittc2dzdHIgIiIKKworIyB0eXBlOiBQbGFpbiB0ZXh0CisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3BsaXQuNTo0MQorbXNnaWQgIiIKKyJJZiB0aGUgdmVyc2lvbiBudW1iZXIgaGFzIGNoYW5nZWQsIGFuIGluY29tcGF0aWJsZSBjaGFuZ2UgaGFzIGJlZW4gbWFkZSBhbmQgIgorInRoZSBwcm9ncmFtIHNob3VsZCBzdG9wLiBJZiBpdCBoYXMgbm90LCB0aGVuIHRoZSBwcm9ncmFtIHNob3VsZCBiZSBhYmxlIHRvICIKKyJzYWZlbHkgY29udGludWUsIHVubGVzcyBpdCBlbmNvdW50ZXJzIGFuIHVuZXhwZWN0ZWQgbWVtYmVyIGluIHRoZSBhcmNoaXZlICIKKyIoZXhjZXB0IGF0IHRoZSBlbmQpLCBhcyBkZXNjcmliZWQgYmVsb3cuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcGxpdC41OjQ0Cittc2dpZCAiIgorIlRoZSBzZWNvbmQsIGxhc3QgcmVxdWlyZWQgbWVtYmVyIGlzIG5hbWVkIEI8ZGF0YS4+STxOPiwgd2hlcmUgSTxOPiBkZW5vdGVzICIKKyJ0aGUgcGFydCBudW1iZXIuIEl0IGNvbnRhaW5zIHRoZSByYXcgcGFydCBkYXRhLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3BsaXQuNTo0OQorbXNnaWQgIiIKKyJUaGVzZSBtZW1iZXJzIG11c3Qgb2NjdXIgaW4gdGhpcyBleGFjdCBvcmRlci4gQ3VycmVudCBpbXBsZW1lbnRhdGlvbnMgc2hvdWxkICIKKyJpZ25vcmUgYW55IGFkZGl0aW9uYWwgbWVtYmVycyBhZnRlciBCPGRhdGEuPkk8Tj4uICBGdXJ0aGVyIG1lbWJlcnMgbWF5IGJlICIKKyJkZWZpbmVkIGluIHRoZSBmdXR1cmUsIGFuZCAoaWYgcG9zc2libGUpIHdpbGwgYmUgcGxhY2VkIGFmdGVyIHRoZXNlIHR3by4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNwbGl0LjU6NTEKKyMsIGZ1enp5Cittc2dpZCAiQjxkZWI+KDUpLCBCPGRwa2ctc3BsaXQ+KDEpLiIKK21zZ3N0ciAiQjxkZWI+KDUpLCBCPGRwa2c+KDEpLCBCPGRwa2ctZGViPigxKS4iCisKKyMuIHR5cGU6IFRICisjOiBkZWItdmVyc2lvbi41OjUKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiZGViLXZlcnNpb24iCittc2dzdHIgIkI8ZHBrZyAtLXZlcnNpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjgKKyMsIGZ1enp5Cittc2dpZCAiZGViLXZlcnNpb24gLSBEZWJpYW4gcGFja2FnZSB2ZXJzaW9uIG51bWJlciBmb3JtYXQiCittc2dzdHIgImRlYi1jb250cm9sIC0tINGE0L7RgNC80LDRgiDQvNCw0YHRgtC10YAg0YTQsNC50LvQsCBjb250cm9sINC/0LDQutC10YLQvtCyIERlYmlhbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNToxMQorbXNnaWQgIltJPGVwb2NoPkI8Oj5dSTx1cHN0cmVhbS12ZXJzaW9uPltCPC0+STxkZWJpYW4tcmV2aXNpb24+XSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjE0Cittc2dpZCAiIgorIlZlcnNpb24gbnVtYmVycyBhcyB1c2VkIGZvciBEZWJpYW4gYmluYXJ5IGFuZCBzb3VyY2UgcGFja2FnZXMgY29uc2lzdCBvZiAiCisidGhyZWUgY29tcG9uZW50cy4gVGhlc2UgYXJlOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLXZlcnNpb24uNToxNAorIywgbm8td3JhcAorbXNnaWQgIkk8ZXBvY2g+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6MjAKK21zZ2lkICIiCisiVGhpcyBpcyBhIHNpbmdsZSAoZ2VuZXJhbGx5IHNtYWxsKSB1bnNpZ25lZCBpbnRlZ2VyLiAgSXQgbWF5IGJlIG9taXR0ZWQsIGluICIKKyJ3aGljaCBjYXNlIHplcm8gaXMgYXNzdW1lZC4gIElmIGl0IGlzIG9taXR0ZWQgdGhlbiB0aGUgSTx1cHN0cmVhbS12ZXJzaW9uPiAiCisibWF5IG5vdCBjb250YWluIGFueSBjb2xvbnMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6MjQKK21zZ2lkICIiCisiSXQgaXMgcHJvdmlkZWQgdG8gYWxsb3cgbWlzdGFrZXMgaW4gdGhlIHZlcnNpb24gbnVtYmVycyBvZiBvbGRlciB2ZXJzaW9ucyBvZiAiCisiYSBwYWNrYWdlLCBhbmQgYWxzbyBhIHBhY2thZ2UncyBwcmV2aW91cyB2ZXJzaW9uIG51bWJlcmluZyBzY2hlbWVzLCB0byBiZSAiCisibGVmdCBiZWhpbmQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItdmVyc2lvbi41OjI0CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkk8dXBzdHJlYW0tdmVyc2lvbj4iCittc2dzdHIgIkI8ZHBrZyAtLXZlcnNpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjM0Cittc2dpZCAiIgorIlRoaXMgaXMgdGhlIG1haW4gcGFydCBvZiB0aGUgdmVyc2lvbiBudW1iZXIuICBJdCBpcyB1c3VhbGx5IHRoZSB2ZXJzaW9uICIKKyJudW1iZXIgb2YgdGhlIG9yaWdpbmFsIChcInVwc3RyZWFtXCIpICBwYWNrYWdlIGZyb20gd2hpY2ggdGhlIEk8LmRlYj4gZmlsZSAiCisiaGFzIGJlZW4gbWFkZSwgaWYgdGhpcyBpcyBhcHBsaWNhYmxlLiAgVXN1YWxseSB0aGlzIHdpbGwgYmUgaW4gdGhlIHNhbWUgIgorImZvcm1hdCBhcyB0aGF0IHNwZWNpZmllZCBieSB0aGUgdXBzdHJlYW0gYXV0aG9yKHMpOyBob3dldmVyLCBpdCBtYXkgbmVlZCB0byAiCisiYmUgcmVmb3JtYXR0ZWQgdG8gZml0IGludG8gdGhlIHBhY2thZ2UgbWFuYWdlbWVudCBzeXN0ZW0ncyBmb3JtYXQgYW5kICIKKyJjb21wYXJpc29uIHNjaGVtZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNTozOQorbXNnaWQgIiIKKyJUaGUgY29tcGFyaXNvbiBiZWhhdmlvciBvZiB0aGUgcGFja2FnZSBtYW5hZ2VtZW50IHN5c3RlbSB3aXRoIHJlc3BlY3QgdG8gdGhlICIKKyJJPHVwc3RyZWFtLXZlcnNpb24+IGlzIGRlc2NyaWJlZCBiZWxvdy4gVGhlIEk8dXBzdHJlYW0tdmVyc2lvbj4gcG9ydGlvbiBvZiAiCisidGhlIHZlcnNpb24gbnVtYmVyIGlzIG1hbmRhdG9yeS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNTo0OAorbXNnaWQgIiIKKyJUaGUgSTx1cHN0cmVhbS12ZXJzaW9uPiBtYXkgY29udGFpbiBvbmx5IGFscGhhbnVtZXJpY3MgKFwiQS1aYS16MC05XCIpIGFuZCAiCisidGhlIGNoYXJhY3RlcnMgQjwuPiBCPCs+IEI8LT4gQjw6PiBCPH4+IChmdWxsIHN0b3AsIHBsdXMsIGh5cGhlbiwgY29sb24sICIKKyJ0aWxkZSkgYW5kIHNob3VsZCBzdGFydCB3aXRoIGEgZGlnaXQuICBJZiB0aGVyZSBpcyBubyBJPGRlYmlhbi1yZXZpc2lvbj4gIgorInRoZW4gaHlwaGVucyBhcmUgbm90IGFsbG93ZWQ7IGlmIHRoZXJlIGlzIG5vIEk8ZXBvY2g+IHRoZW4gY29sb25zIGFyZSBub3QgIgorImFsbG93ZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItdmVyc2lvbi41OjQ4CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkk8ZGViaWFuLXJldmlzaW9uPiIKK21zZ3N0ciAiQjxjb25maWctZmlsZXM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjU3Cittc2dpZCAiIgorIlRoaXMgcGFydCBvZiB0aGUgdmVyc2lvbiBudW1iZXIgc3BlY2lmaWVzIHRoZSB2ZXJzaW9uIG9mIHRoZSBEZWJpYW4gcGFja2FnZSAiCisiYmFzZWQgb24gdGhlIHVwc3RyZWFtIHZlcnNpb24uICBJdCBtYXkgY29udGFpbiBvbmx5IGFscGhhbnVtZXJpY3MgYW5kIHRoZSAiCisiY2hhcmFjdGVycyBCPCs+IEI8Lj4gQjx+PiAocGx1cywgZnVsbCBzdG9wLCB0aWxkZSkgYW5kIGlzIGNvbXBhcmVkIGluIHRoZSAiCisic2FtZSB3YXkgYXMgdGhlIEk8dXBzdHJlYW0tdmVyc2lvbj4gaXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6NjQKK21zZ2lkICIiCisiSXQgaXMgb3B0aW9uYWw7IGlmIGl0IGlzbid0IHByZXNlbnQgdGhlbiB0aGUgSTx1cHN0cmVhbS12ZXJzaW9uPiBtYXkgbm90ICIKKyJjb250YWluIGEgaHlwaGVuLiAgVGhpcyBmb3JtYXQgcmVwcmVzZW50cyB0aGUgY2FzZSB3aGVyZSBhIHBpZWNlIG9mIHNvZnR3YXJlICIKKyJ3YXMgd3JpdHRlbiBzcGVjaWZpY2FsbHkgdG8gYmUgdHVybmVkIGludG8gYSBEZWJpYW4gcGFja2FnZSwgYW5kIHNvIHRoZXJlIGlzICIKKyJvbmx5IG9uZSBcImRlYmlhbmlzYXRpb25cIiBvZiBpdCBhbmQgdGhlcmVmb3JlIG5vIHJldmlzaW9uIGluZGljYXRpb24gaXMgIgorInJlcXVpcmVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjY4Cittc2dpZCAiIgorIkl0IGlzIGNvbnZlbnRpb25hbCB0byByZXN0YXJ0IHRoZSBJPGRlYmlhbi1yZXZpc2lvbj4gYXQgJzEnIGVhY2ggdGltZSB0aW1lICIKKyJ0aGUgSTx1cHN0cmVhbS12ZXJzaW9uPiBpcyBpbmNyZWFzZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6NzYKK21zZ2lkICIiCisiRHBrZyB3aWxsIGJyZWFrIHRoZSB2ZXJzaW9uIG51bWJlciBhcGFydCBhdCB0aGUgbGFzdCBoeXBoZW4gaW4gdGhlIHN0cmluZyAiCisiKGlmIHRoZXJlIGlzIG9uZSkgdG8gZGV0ZXJtaW5lIHRoZSBJPHVwc3RyZWFtLXZlcnNpb24+IGFuZCBJPGRlYmlhbi0iCisicmV2aXNpb24+LiBUaGUgYWJzZW5jZSBvZiBhIEk8ZGViaWFuLXJldmlzaW9uPiBjb21wYXJlcyBlYXJsaWVyIHRoYW4gdGhlICIKKyJwcmVzZW5jZSBvZiBvbmUgKGJ1dCBub3RlIHRoYXQgdGhlIEk8ZGViaWFuLXJldmlzaW9uPiBpcyB0aGUgbGVhc3QgIgorInNpZ25pZmljYW50IHBhcnQgb2YgdGhlIHZlcnNpb24gbnVtYmVyKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRlYi12ZXJzaW9uLjU6NzYKKyMsIG5vLXdyYXAKK21zZ2lkICJTb3J0aW5nIEFsZ29yaXRobSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjgwCittc2dpZCAiIgorIlRoZSBJPHVwc3RyZWFtLXZlcnNpb24+IGFuZCBJPGRlYmlhbi1yZXZpc2lvbj4gcGFydHMgYXJlIGNvbXBhcmVkIGJ5IHRoZSAiCisicGFja2FnZSBtYW5hZ2VtZW50IHN5c3RlbSB1c2luZyB0aGUgc2FtZSBhbGdvcml0aG06IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6ODIKK21zZ2lkICJUaGUgc3RyaW5ncyBhcmUgY29tcGFyZWQgZnJvbSBsZWZ0IHRvIHJpZ2h0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjkyCittc2dpZCAiIgorIkZpcnN0IHRoZSBpbml0aWFsIHBhcnQgb2YgZWFjaCBzdHJpbmcgY29uc2lzdGluZyBlbnRpcmVseSBvZiBub24tZGlnaXQgIgorImNoYXJhY3RlcnMgaXMgZGV0ZXJtaW5lZC4gIFRoZXNlIHR3byBwYXJ0cyAob25lIG9mIHdoaWNoIG1heSBiZSBlbXB0eSkgYXJlICIKKyJjb21wYXJlZCBsZXhpY2FsbHkuICBJZiBhIGRpZmZlcmVuY2UgaXMgZm91bmQgaXQgaXMgcmV0dXJuZWQuICBUaGUgbGV4aWNhbCAiCisiY29tcGFyaXNvbiBpcyBhIGNvbXBhcmlzb24gb2YgQVNDSUkgdmFsdWVzIG1vZGlmaWVkIHNvIHRoYXQgYWxsIHRoZSBsZXR0ZXJzICIKKyJzb3J0IGVhcmxpZXIgdGhhbiBhbGwgdGhlIG5vbi1sZXR0ZXJzIGFuZCBzbyB0aGF0IGEgdGlsZGUgc29ydHMgYmVmb3JlICIKKyJhbnl0aGluZywgZXZlbiB0aGUgZW5kIG9mIGEgcGFydC4gIEZvciBleGFtcGxlLCB0aGUgZm9sbG93aW5nIHBhcnRzIGFyZSBpbiAiCisic29ydGVkIG9yZGVyOiAnfn4nLCAnfn5hJywgJ34nLCB0aGUgZW1wdHkgcGFydCwgJ2EnLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjEwMAorbXNnaWQgIiIKKyJUaGVuIHRoZSBpbml0aWFsIHBhcnQgb2YgdGhlIHJlbWFpbmRlciBvZiBlYWNoIHN0cmluZyB3aGljaCBjb25zaXN0cyAiCisiZW50aXJlbHkgb2YgZGlnaXQgY2hhcmFjdGVycyBpcyBkZXRlcm1pbmVkLiAgVGhlIG51bWVyaWNhbCB2YWx1ZXMgb2YgdGhlc2UgIgorInR3byBwYXJ0cyBhcmUgY29tcGFyZWQsIGFuZCBhbnkgZGlmZmVyZW5jZSBmb3VuZCBpcyByZXR1cm5lZCBhcyB0aGUgcmVzdWx0ICIKKyJvZiB0aGUgY29tcGFyaXNvbi4gIEZvciB0aGVzZSBwdXJwb3NlcyBhbiBlbXB0eSBzdHJpbmcgKHdoaWNoIGNhbiBvbmx5IG9jY3VyICIKKyJhdCB0aGUgZW5kIG9mIG9uZSBvciBib3RoIHZlcnNpb24gc3RyaW5ncyBiZWluZyBjb21wYXJlZCkgY291bnRzIGFzIHplcm8uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6MTA0Cittc2dpZCAiIgorIlRoZXNlIHR3byBzdGVwcyAoY29tcGFyaW5nIGFuZCByZW1vdmluZyBpbml0aWFsIG5vbi1kaWdpdCBzdHJpbmdzIGFuZCAiCisiaW5pdGlhbCBkaWdpdCBzdHJpbmdzKSBhcmUgcmVwZWF0ZWQgdW50aWwgYSBkaWZmZXJlbmNlIGlzIGZvdW5kIG9yIGJvdGggIgorInN0cmluZ3MgYXJlIGV4aGF1c3RlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNToxMTIKK21zZ2lkICIiCisiTm90ZSB0aGF0IHRoZSBwdXJwb3NlIG9mIGVwb2NocyBpcyB0byBhbGxvdyB1cyB0byBsZWF2ZSBiZWhpbmQgbWlzdGFrZXMgaW4gIgorInZlcnNpb24gbnVtYmVyaW5nLCBhbmQgdG8gY29wZSB3aXRoIHNpdHVhdGlvbnMgd2hlcmUgdGhlIHZlcnNpb24gbnVtYmVyaW5nICIKKyJzY2hlbWUgY2hhbmdlcy4gIEl0IGlzIEI8bm90PiBpbnRlbmRlZCB0byBjb3BlIHdpdGggdmVyc2lvbiBudW1iZXJzICIKKyJjb250YWluaW5nIHN0cmluZ3Mgb2YgbGV0dGVycyB3aGljaCB0aGUgcGFja2FnZSBtYW5hZ2VtZW50IHN5c3RlbSBjYW5ub3QgIgorImludGVycHJldCAoc3VjaCBhcyAnQUxQSEEnIG9yICdwcmUtJyksIG9yIHdpdGggc2lsbHkgb3JkZXJpbmdzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZGViLXZlcnNpb24uNToxMTIgZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjEwOQorIywgbm8td3JhcAorbXNnaWQgIkNBVkVBVFMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNToxMTYKK21zZ2lkICIiCisiVGhlIHRpbGRlIGNoYXJhY3RlciBhbmQgaXRzIHNwZWNpYWwgc29ydGluZyBwcm9wZXJ0aWVzIHdlcmUgaW50cm9kdWNlZCBpbiAiCisiZHBrZywgdmVyc2lvbiAxLjEwIGFuZCBzb21lIHBhcnRzIG9mIGRwa2ctZGV2IG9ubHkgZ2FpbmVkIHN1cHBvcnQgZm9yIGl0ICIKKyJsYXRlciBpbiB0aGUgMS4xMC54IHNlcmllcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNToxMjAKKyMsIGZ1enp5Cittc2dpZCAiQjxkZWItY29udHJvbD4oNSksIEI8ZGViPig1KSwgQjxkcGtnPigxKSIKK21zZ3N0ciAiQjxkZWI+KDUpLCBCPGRwa2c+KDEpLCBCPGRwa2ctZGViPigxKS4iCisKKyMuIHR5cGU6IFNICisjOiBkZWItdmVyc2lvbi41OjEyMCBkcGtnLjE6NzgzIGRwa2ctYnVpbGRwYWNrYWdlLjE6MjU3IGRwa2ctZGlzdGFkZGZpbGUuMTo0NworIzogZHBrZy1nZW5jaGFuZ2VzLjE6MTQ4IGRwa2ctZ2VuY29udHJvbC4xOjE0MiBkcGtnLWdlbnN5bWJvbHMuMTo0NjAKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MTI4IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxMjMKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MzI5IGRwa2ctc291cmNlLjE6NzMwIGRzZWxlY3QuMTo0NTEKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MzIzIHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0OTQKKyMsIG5vLXdyYXAKK21zZ2lkICJBVVRIT1JTIgorbXNnc3RyICLQkNCS0KLQntCg0KsiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6MTIyCittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDE5OTYsMTk5NywxOTk4IElhbiBKYWNrc29uIGFuZCBDaHJpc3RpYW4gU2Nod2FyeiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjEyNCBkcGtnLWJ1aWxkcGFja2FnZS4xOjI2MworIywgZnV6enkKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAwNyBGcmFuayBMaWNodGVuaGVsZCIKK21zZ3N0ciAiQ29weXJpZ2h0IDIwMDEgSm9leSBIZXNzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjEyNiBkZWItc3Vic3R2YXJzLjU6MTY3IGRwa2ctYnVpbGRmbGFncy4xOjI3MworIzogZHBrZy1idWlsZHBhY2thZ2UuMToyNjcgZHBrZy1jaGVja2J1aWxkZGVwcy4xOjQ0IGRwa2ctZGlzdGFkZGZpbGUuMTo1MworIzogZHBrZy1kZWIuMToyNjkgZHBrZy1kaXZlcnQuODoxMzkgZHBrZy1nZW5jaGFuZ2VzLjE6MTU0CisjOiBkcGtnLWdlbmNvbnRyb2wuMToxNTAgZHBrZy1nZW5zeW1ib2xzLjE6NDY0IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MTM5CisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjcxIGRwa2ctbmFtZS4xOjEwOCBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTMxCisjOiBkcGtnLXF1ZXJ5LjE6MjE5IGRwa2ctc2hsaWJkZXBzLjE6MzM5IGRwa2ctc291cmNlLjE6NzM4IGRwa2ctc3BsaXQuMToyMjcKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6OTEgZHBrZy12ZW5kb3IuMTo1MyB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NTAxCisjLCBmdXp6eQorbXNnaWQgIiIKKyJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgdmVyc2lvbiAyIG9yIGxhdGVyICIKKyJmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyBXQVJSQU5UWS4iCittc2dzdHIgIiIKKyLQrdGC0L4g0YHQstC+0LHQvtC00L3QsNGPINC/0YDQvtCz0YDQsNC80LzQsDsg0YHQvNC+0YLRgNC40YLQtSDQo9C90LjQstC10YDRgdCw0LvRjNC90YPRjiDQntCx0YnQtdGB0YLQstC10L3QvdGD0Y4g0JvQuNGG0LXQvdC30LjQuCBHTlUgIgorItCy0LXRgNGB0LjQuCAyINC40LvQuCDQsdC+0LvQtdC1INC/0L7Qt9C00L3RjtGOLCDQs9C00LUg0LjQt9C70L7QttC10L3RiyDRg9GB0LvQvtCy0LjRjyDRgNCw0YHQv9GA0L7RgdGC0YDQsNC90LXQvdC40Y8uINCd0JjQmtCQ0JrQmNClICIKKyLQs9Cw0YDQsNC90YLQuNC5LiIKKworIy4gdHlwZTogVEgKKyM6IGRlYi1vbGQuNToxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgImRlYi1vbGQiCittc2dzdHIgImRlYi1jb250cm9sIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb2xkLjU6NAorbXNnaWQgImRlYi1vbGQgLSBvbGQgc3R5bGUgRGViaWFuIGJpbmFyeSBwYWNrYWdlIGZvcm1hdCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb2xkLjU6MTcKK21zZ2lkICIiCisiVGhlIEI8LmRlYj4gZm9ybWF0IGlzIHRoZSBEZWJpYW4gYmluYXJ5IHBhY2thZ2UgZmlsZSBmb3JtYXQuIFRoaXMgbWFudWFsICIKKyJwYWdlIGRlc2NyaWJlcyB0aGUgQjxvbGQ+IGZvcm1hdCwgdXNlZCBiZWZvcmUgRGViaWFuIDAuOTMuIFBsZWFzZSBzZWUgQjxkZWI+IgorIig1KSAgZm9yIGRldGFpbHMgb2YgdGhlIG5ldyBmb3JtYXQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vbGQuNToyMQorbXNnaWQgIiIKKyJUaGUgZmlsZSBpcyB0d28gbGluZXMgb2YgZm9ybWF0IGluZm9ybWF0aW9uIGFzIEFTQ0lJIHRleHQsIGZvbGxvd2VkIGJ5IHR3byAiCisiY29uY2F0ZW5hdGVkIGd6aXBwZWQgdXN0YXIgZmlsZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vbGQuNToyNQorbXNnaWQgIiIKKyJUaGUgZmlyc3QgbGluZSBpcyB0aGUgZm9ybWF0IHZlcnNpb24gbnVtYmVyIHBhZGRlZCB0byA4IGRpZ2l0cywgYW5kIGlzICIKKyJCPDAuOTM5MDAwPiBmb3IgYWxsIG9sZC1mb3JtYXQgYXJjaGl2ZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vbGQuNToyOAorbXNnaWQgIiIKKyJUaGUgc2Vjb25kIGxpbmUgaXMgYSBkZWNpbWFsIHN0cmluZyAod2l0aG91dCBsZWFkaW5nIHplcm9lcykgZ2l2aW5nIHRoZSAiCisibGVuZ3RoIG9mIHRoZSBmaXJzdCBnemlwcGVkIHRhcmZpbGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vbGQuNTozMAorbXNnaWQgIkVhY2ggb2YgdGhlc2UgbGluZXMgaXMgdGVybWluYXRlZCB3aXRoIGEgc2luZ2xlIG5ld2xpbmUgY2hhcmFjdGVyLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb2xkLjU6MzUKK21zZ2lkICIiCisiVGhlIGZpcnN0IHRhcmZpbGUgY29udGFpbnMgdGhlIGNvbnRyb2wgaW5mb3JtYXRpb24sIGFzIGEgc2VyaWVzIG9mIG9yZGluYXJ5ICIKKyJmaWxlcy4gVGhlIGZpbGUgQjxjb250cm9sPiBtdXN0IGJlIHByZXNlbnQsIGFzIGl0IGNvbnRhaW5zIHRoZSBjb3JlIGNvbnRyb2wgIgorImluZm9ybWF0aW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb2xkLjU6NDYKK21zZ2lkICIiCisiSW4gc29tZSB2ZXJ5IG9sZCBhcmNoaXZlcywgdGhlIGZpbGVzIGluIHRoZSBjb250cm9sIHRhcmZpbGUgbWF5IG9wdGlvbmFsbHkgIgorImJlIGluIGEgQjxERUJJQU4+IHN1YmRpcmVjdG9yeS4gSW4gdGhhdCBjYXNlLCB0aGUgQjxERUJJQU4+IHN1YmRpcmVjdG9yeSAiCisid2lsbCBiZSBpbiB0aGUgY29udHJvbCB0YXJmaWxlIHRvbywgYW5kIHRoZSBjb250cm9sIHRhcmZpbGUgd2lsbCBoYXZlIG9ubHkgIgorImZpbGVzIGluIHRoYXQgZGlyZWN0b3J5LiBPcHRpb25hbGx5IHRoZSBjb250cm9sIHRhcmZpbGUgbWF5IGNvbnRhaW4gYW4gZW50cnkgIgorImZvciBgQjwuPicsIHRoYXQgaXMsIHRoZSBjdXJyZW50IGRpcmVjdG9yeS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW9sZC41OjUwCittc2dpZCAiIgorIlRoZSBzZWNvbmQgZ3ppcHBlZCB0YXJmaWxlIGlzIHRoZSBmaWxlc3lzdGVtIGFyY2hpdmUsIGNvbnRhaW5pbmcgcGF0aG5hbWVzICIKKyJyZWxhdGl2ZSB0byB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhlIHN5c3RlbSB0byBiZSBpbnN0YWxsZWQgb24uIFRoZSAiCisicGF0aG5hbWVzIGRvIG5vdCBoYXZlIGxlYWRpbmcgc2xhc2hlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW9sZC41OjU0CisjLCBmdXp6eQorbXNnaWQgIkI8ZGViPig1KSwgQjxkcGtnLWRlYj4oMSksIEI8ZGViLWNvbnRyb2w+KDUpLiIKK21zZ3N0ciAiQjxkZWI+KDUpLCBCPGRwa2c+KDEpLCBCPGRwa2ctZGViPigxKS4iCisKKyMuIHR5cGU6IFRICisjOiBkZWItb3ZlcnJpZGUuNToxNQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJkZWItb3ZlcnJpZGUiCittc2dzdHIgImRlYi1jb250cm9sIgorCisjLiB0eXBlOiBUSAorIzogZGViLW92ZXJyaWRlLjU6MTUgZGViLWV4dHJhLW92ZXJyaWRlLjU6MSBkZWItc2hsaWJzLjU6MTYgZGViLXN1YnN0dmFycy41OjIKKyM6IGRlYi1zeW1ib2xzLjU6MiBkZWItdHJpZ2dlcnMuNToxIGRwa2ctYXJjaGl0ZWN0dXJlLjE6MQorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxIGRwa2ctY2hlY2tidWlsZGRlcHMuMToxIGRwa2ctZGlzdGFkZGZpbGUuMToxCisjOiBkcGtnLWRpdmVydC44OjEgZHBrZy1nZW5jaGFuZ2VzLjE6MSBkcGtnLWdlbmNvbnRyb2wuMToxIGRwa2ctZ2Vuc3ltYm9scy4xOjIKKyM6IGRwa2ctbmFtZS4xOjYgZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjEgZHBrZy1zY2FucGFja2FnZXMuMToxNQorIzogZHBrZy1zY2Fuc291cmNlcy4xOjEgZHBrZy1zaGxpYmRlcHMuMToxIGRwa2ctc291cmNlLjE6MiBkcGtnLXNwbGl0LjE6MgorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODoxIHN0YXJ0LXN0b3AtZGFlbW9uLjg6MSB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6OAorIywgbm8td3JhcAorbXNnaWQgImRwa2cgdXRpbGl0aWVzIgorbXNnc3RyICLRg9GC0LjQu9C40YLRiyBkcGtnIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb3ZlcnJpZGUuNToxOAorbXNnaWQgImRlYi1vdmVycmlkZSAtIERlYmlhbiBhcmNoaXZlIG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW92ZXJyaWRlLjU6MjEgZGViLWV4dHJhLW92ZXJyaWRlLjU6NworbXNnaWQgIm92ZXJyaWRlIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vdmVycmlkZS41OjI3Cittc2dpZCAiIgorIldoaWxlIG1vc3QgaW5mb3JtYXRpb24gYWJvdXQgYSBwYWNrYWdlIGNhbiBiZSBmb3VuZCBpbiB0aGUgY29udHJvbCBmaWxlLCAiCisic29tZSBpcyBtYW5hZ2VkIGNlbnRyYWxseSBieSB0aGUgZGlzdHJpYnV0aW9uIGN6YXJzIHJhdGhlciB0aGFuIGJ5IHRoZSAiCisibWFpbnRhaW5lciBpbiBvcmRlciB0byBvZmZlciBzb21lIGdsb2JhbCBjb25zaXN0ZW5jeS4gIFRoaXMgaW5mb3JtYXRpb24gaXMgIgorImZvdW5kIGluIHRoZSBvdmVycmlkZSBmaWxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb3ZlcnJpZGUuNTozMQorbXNnaWQgIiIKKyJUaGUgb3ZlcnJpZGUgZmlsZSBoYXMgYSBzaW1wbGUgd2hpdGVzcGFjZS1kZWxpbWl0ZWQgZm9ybWF0LiBDb21tZW50cyBhcmUgIgorImFsbG93ZWQgKGRlbm90ZWQgd2l0aCBhIEI8Iz4pLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb3ZlcnJpZGUuNTozNworbXNnaWQgIkk8cGFja2FnZT4gSTxwcmlvcml0eT4gSTxzZWN0aW9uPiBbSTxtYWludGFpbmVyaW5mbz5dIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vdmVycmlkZS41OjQyCittc2dpZCAiIgorIkk8cGFja2FnZT4gaXMgdGhlIG5hbWUgb2YgdGhlIHBhY2thZ2UuIEVudHJpZXMgaW4gdGhlIG92ZXJyaWRlIGZpbGUgZm9yICIKKyJwYWNrYWdlcyBub3QgZm91bmQgaW4gdGhlIHRyZWUgb2YgYmluYXJ5IHBhY2thZ2VzIGFyZSBpZ25vcmVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb3ZlcnJpZGUuNTo0OAorbXNnaWQgIiIKKyJJPHByaW9yaXR5PiBhbmQgSTxzZWN0aW9uPiBjb3JyZXNwb25kIHRvIHRoZSByZXNwZWN0aXZlIGNvbnRyb2wgZmllbGRzICIKKyJhdmFpbGFibGUgaW4gdGhlIC5kZWIuIFRoZSBhbGxvd2VkIHZhbHVlcyBhcmUgbGlzdGVkIGluIHRoZSBEZWJpYW4gcG9saWN5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb3ZlcnJpZGUuNTo1NgorbXNnaWQgIiIKKyJJPG1haW50YWluZXJpbmZvPiwgaWYgcHJlc2VudCwgY2FuIGJlIGVpdGhlciB0aGUgbmFtZSBvZiBhIG1haW50YWluZXIgZm9yIGFuICIKKyJ1bmNvbmRpdGlvbmFsIG92ZXJyaWRlLCBvciBlbHNlIEk8b2xkbWFpbnRhaW5lcj4gQjw9RTxndD4+IEk8bmV3bWFpbnRhaW5lcj4gIgorInRvIHBlcmZvcm0gYSBzdWJzdGl0dXRpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vdmVycmlkZS41OjYxCittc2dpZCAiIgorIlRoZSBvdmVycmlkZSBmaWxlcyB1c2VkIHRvIG1ha2UgdGhlIG9mZmljaWFsIFBhY2thZ2VzIGxpc3RzIG1heSBiZSBmb3VuZCBpbiAiCisidGhlIEk8aW5kaWNlcz4gZGlyZWN0b3J5IG9uIGFueSBEZWJpYW4gbWlycm9yLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb3ZlcnJpZGUuNTo2NgorIywgZnV6enkKK21zZ2lkICIiCisiQjxkcGtnLXNjYW5wYWNrYWdlcz4oMSksIEI8ZHBrZy1zY2Fuc291cmNlcz4oMSksIEI8YXB0LWZ0cGFyY2hpdmU+KDEpLCBCPC8iCisidXNyL3NoYXJlL2RvYy9kZWJpYW4tcG9saWN5L3BvbGljeS5odG1sL2luZGV4Lmh0bWw+LiIKK21zZ3N0ciAiQjxkZWI+KDUpLCBCPGRwa2c+KDEpLCBCPGRwa2ctZGViPigxKS4iCisKKyMuIHR5cGU6IFRICisjOiBkZWItZXh0cmEtb3ZlcnJpZGUuNToxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgImRlYi1leHRyYS1vdmVycmlkZSIKK21zZ3N0ciAiZGViLWNvbnRyb2wiCisKKyMuIHR5cGU6IFRICisjOiBkZWItZXh0cmEtb3ZlcnJpZGUuNToxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIjIwMDktMDgtMTYiCittc2dzdHIgIjIwMDYtMDItMjgiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1leHRyYS1vdmVycmlkZS41OjQKK21zZ2lkICJkZWItZXh0cmEtb3ZlcnJpZGUgLSBEZWJpYW4gYXJjaGl2ZSBleHRyYSBvdmVycmlkZSBmaWxlIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1leHRyYS1vdmVycmlkZS41OjEyCittc2dpZCAiIgorIldoaWxlIG1vc3QgaW5mb3JtYXRpb24gYWJvdXQgYSBiaW5hcnkvc291cmNlIHBhY2thZ2UgY2FuIGJlIGZvdW5kIGluIHRoZSAiCisiY29udHJvbC8uZHNjIGZpbGUsIGFsbCBvZiBpdCBjYW4gYmUgb3ZlcnJpZGRlbiB3aGVuIGl0J3MgZXhwb3J0ZWQgdG8gIgorIlBhY2thZ2VzL1NvdXJjZXMgZmlsZXMuIFRoZSBleHRyYSBvdmVycmlkZSBmaWxlIGNvbnRhaW5zIHRob3NlIG92ZXJyaWRlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWV4dHJhLW92ZXJyaWRlLjU6MTYKK21zZ2lkICIiCisiVGhlIGV4dHJhIG92ZXJyaWRlIGZpbGUgaGFzIGEgc2ltcGxlIHdoaXRlc3BhY2UtZGVsaW1pdGVkIGZvcm1hdC4gQ29tbWVudHMgIgorImFyZSBhbGxvd2VkIChkZW5vdGVkIHdpdGggYSBCPCM+KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWV4dHJhLW92ZXJyaWRlLjU6MjEKKyMsIGZ1enp5Cittc2dpZCAiSTxwYWNrYWdlPiBJPGZpZWxkLW5hbWU+IEk8dmFsdWU+IgorbXNnc3RyICJCPC1EPkk8b2N0YWw+QjwgfCAtLWRlYnVnPT5JPG9jdGFsPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWV4dHJhLW92ZXJyaWRlLjU6MjUKK21zZ2lkICJJPHBhY2thZ2U+IGlzIHRoZSBuYW1lIG9mIHRoZSBiaW5hcnkvc291cmNlIHBhY2thZ2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1leHRyYS1vdmVycmlkZS41OjMxCittc2dpZCAiIgorIkk8ZmllbGQtbmFtZT4gaXMgdGhlIG5hbWUgb2YgdGhlIGZpZWxkIHRoYXQgaXMgb3ZlcnJpZGRlbi4gIEk8dmFsdWU+IGlzIHRoZSAiCisidmFsdWUgdG8gcHV0IGluIHRoZSBmaWVsZC4gSXQgY2FuIGNvbnRhaW4gc3BhY2VzIGFzIHRoZSBsaW5lIGlzIHNwbGl0IGluIG5vICIKKyJtb3JlIHRoYW4gMyBjb2x1bW5zIHdoZW4gaXQncyBwYXJzZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1leHRyYS1vdmVycmlkZS41OjM2Cittc2dpZCAiIgorIlRoZSBleHRyYSBvdmVycmlkZSBmaWxlcyB1c2VkIHRvIG1ha2UgdGhlIG9mZmljaWFsIFBhY2thZ2VzIGxpc3RzIG1heSBiZSAiCisiZm91bmQgaW4gdGhlIEk8aW5kaWNlcz4gZGlyZWN0b3J5IG9uIGFueSBEZWJpYW4gbWlycm9yLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItZXh0cmEtb3ZlcnJpZGUuNTo0MAorIywgZnV6enkKK21zZ2lkICJCPGRwa2ctc2NhbnBhY2thZ2VzPigxKSwgQjxkcGtnLXNjYW5zb3VyY2VzPigxKSwgQjxhcHQtZnRwYXJjaGl2ZT4oMSkuIgorbXNnc3RyICJCPGRlYj4oNSksIEI8ZHBrZz4oMSksIEI8ZHBrZy1kZWI+KDEpLiIKKworIy4gdHlwZTogVEgKKyM6IGRlYi1zaGxpYnMuNToxNgorIywgbm8td3JhcAorbXNnaWQgImRlYi1zaGxpYnMiCittc2dzdHIgIiIKKworIy4gdHlwZTogVEgKKyM6IGRlYi1zaGxpYnMuNToxNgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICIyMDA4LTAyLTE3IgorbXNnc3RyICIyMDA2LTAyLTI4IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc2hsaWJzLjU6MTkKK21zZ2lkICJkZWItc2hsaWJzIC0gRGViaWFuIHNoYXJlZCBsaWJyYXJ5IGluZm9ybWF0aW9uIGZpbGUiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNobGlicy41OjI5Cittc2dpZCAiIgorIkI8c2hsaWJzPiBmaWxlcyBtYXAgc2hhcmVkIGxpYnJhcnkgbmFtZXMgYW5kIHZlcnNpb25zIChJPHNvbmFtZXM+KSAgdG8gIgorImRlcGVuZGVuY2llcyBzdWl0YWJsZSBmb3IgYSBwYWNrYWdlIGNvbnRyb2wgZmlsZS4gIFRoZXJlIGlzIG9uZSBlbnRyeSBwZXIgIgorImxpbmUuIEJsYW5rIGxpbmVzIGFyZSBCPG5vdD4gYWxsb3dlZC4gIExpbmVzIGJlZ2lubmluZyB3aXRoIGFuIEI8Iz4gIgorImNoYXJhY3RlciBhcmUgY29uc2lkZXJlZCBjb21tZW50YXJ5LCBhbmQgYXJlIGlnbm9yZWQuICBBbGwgb3RoZXIgbGluZXMgbXVzdCAiCisiaGF2ZSB0aGUgZm9ybWF0IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zaGxpYnMuNTozNAorbXNnaWQgIltJPHR5cGU+Qjw6Pl0gSTxsaWJyYXJ5PiBJPHZlcnNpb24+IEk8ZGVwZW5kZW5jaWVzPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc2hsaWJzLjU6MzgKK21zZ2lkICIiCisiVGhlIEk8bGlicmFyeT4gYW5kIEk8dmVyc2lvbj4gZmllbGRzIGFyZSB3aGl0ZXNwYWNlLWRlbGltaXRlZCwgYnV0IHRoZSAiCisiSTxkZXBlbmRlbmNpZXM+IGZpZWxkIGV4dGVuZHMgdG8gdGhlIGVuZCBvZiB0aGUgbGluZS4gIFRoZSBJPHR5cGU+IGZpZWxkIGlzICIKKyJvcHRpb25hbCBhbmQgbm9ybWFsbHkgbm90IG5lZWRlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNobGlicy41OjQwCittc2dpZCAiU2VlIHRoZSBEZWJpYW4gUG9saWN5IE1hbnVhbCBmb3IgZnVydGhlciBkZXRhaWxzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZGViLXNobGlicy41OjQxIGRlYi1zeW1ib2xzLjU6NDMgZHBrZy4xOjcxNCBkcGtnLWFyY2hpdGVjdHVyZS4xOjI2MgorIzogZHBrZy1kaXZlcnQuODo5MSBkcGtnLW5hbWUuMTo2NSB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDU5CisjLCBuby13cmFwCittc2dpZCAiRVhBTVBMRVMiCittc2dzdHIgItCf0KDQmNCc0JXQoNCrIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc2hsaWJzLjU6NTAKK21zZ2lkICIiCisiVGhlIEI8c2hsaWJzPiBmaWxlIGZvciBhIHR5cGljYWwgbGlicmFyeSBwYWNrYWdlLCBuYW1lZCBJPGxpYmNydW5jaDE+LCB0aGF0ICIKKyJwcm92aWRlcyBvbmUgbGlicmFyeSB3aG9zZSBzb25hbWUgaXMgSTxsaWJjcnVuY2guc28uMT4sIG1pZ2h0IHJlYWQiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNobGlicy41OjUyCittc2dpZCAibGliY3J1bmNoIDEgbGliY3J1bmNoMSAoRTxndD49IDEuMi0xKSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc2hsaWJzLjU6NjAKK21zZ2lkICIiCisiVGhlIEk8ZGVwZW5kZW5jaWVzPiBtdXN0IG1lbnRpb24gdGhlIG1vc3QgcmVjZW50IHZlcnNpb24gb2YgdGhlIHBhY2thZ2UgdGhhdCAiCisiYWRkZWQgbmV3IHN5bWJvbHMgdG8gdGhlIGxpYnJhcnk6IGluIHRoZSBhYm92ZSBleGFtcGxlLCBuZXcgc3ltYm9scyB3ZXJlICIKKyJhZGRlZCB0byB2ZXJzaW9uIDEuMiBvZiBJPGxpYmNydW5jaD4uICBUaGlzIGlzIG5vdCB0aGUgb25seSByZWFzb24gdGhlICIKKyJkZXBlbmRlbmNpZXMgbWlnaHQgbmVlZCB0byBiZSB0aWdodGVuZWQ7IGFnYWluLCBzZWUgdGhlIERlYmlhbiBQb2xpY3kgTWFudWFsICIKKyJmb3IgZGV0YWlscy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNobGlicy41OjYzCisjLCBmdXp6eQorbXNnaWQgIkI8ZHBrZy1zaGxpYmRlcHM+KDEpLCBCPGRlYi1zeW1ib2xzPig1KS4iCittc2dzdHIgIkI8ZHBrZy1kZWItYWN0aW9ucz4iCisKKyMuIHR5cGU6IFRICisjOiBkZWItc3Vic3R2YXJzLjU6MgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJkZWItc3Vic3R2YXJzIgorbXNnc3RyICJCPGRlaW5zdGFsbD4iCisKKyMuIHR5cGU6IFRICisjOiBkZWItc3Vic3R2YXJzLjU6MgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICIyMDA5LTA3LTE1IgorbXNnc3RyICIyMDA2LTAyLTI4IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6NQorbXNnaWQgImRlYi1zdWJzdHZhcnMgLSBEZWJpYW4gc291cmNlIHN1YnN0aXR1dGlvbiB2YXJpYWJsZXMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjgKKyMsIGZ1enp5Cittc2dpZCAic3Vic3R2YXJzIgorbXNnc3RyICJCPGRlaW5zdGFsbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToxOQorbXNnaWQgIiIKKyJCZWZvcmUgQjxkcGtnLXNvdXJjZT4sIEI8ZHBrZy1nZW5jb250cm9sPiBhbmQgQjxkcGtnLWdlbmNoYW5nZXM+IHdyaXRlIHRoZWlyICIKKyJjb250cm9sIGluZm9ybWF0aW9uICh0byB0aGUgc291cmNlIGNvbnRyb2wgZmlsZSBCPC5kc2M+IGZvciBCPGRwa2ctc291cmNlPiAiCisiYW5kIHRvIHN0YW5kYXJkIG91dHB1dCBmb3IgQjxkcGtnLWdlbmNvbnRyb2w+IGFuZCBCPGRwa2ctZ2VuY2hhbmdlcz4pICB0aGV5ICIKKyJwZXJmb3JtIHNvbWUgdmFyaWFibGUgc3Vic3RpdHV0aW9ucyBvbiB0aGUgb3V0cHV0IGZpbGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToyNgorbXNnaWQgIiIKKyJBIHZhcmlhYmxlIHN1YnN0aXR1dGlvbiBoYXMgdGhlIGZvcm0gQjwkez5JPHZhcmlhYmxlLW5hbWU+Qjx9Pi4gIFZhcmlhYmxlICIKKyJuYW1lcyBjb25zaXN0IG9mIGFscGhhbnVtZXJpY3MsIGh5cGhlbnMgYW5kIGNvbG9ucyBhbmQgc3RhcnQgd2l0aCBhbiAiCisiYWxwaGFudW1lcmljLiBWYXJpYWJsZSBzdWJzdGl0dXRpb25zIGFyZSBwZXJmb3JtZWQgcmVwZWF0ZWRseSB1bnRpbCBub25lIGFyZSAiCisibGVmdDsgdGhlIGZ1bGwgdGV4dCBvZiB0aGUgZmllbGQgYWZ0ZXIgdGhlIHN1YnN0aXR1dGlvbiBpcyByZXNjYW5uZWQgdG8gbG9vayAiCisiZm9yIG1vcmUgc3Vic3RpdHV0aW9ucy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjMzCittc2dpZCAiIgorIkFmdGVyIGFsbCB0aGUgc3Vic3RpdHV0aW9ucyBoYXZlIGJlZW4gZG9uZSBlYWNoIG9jY3VycmVuY2Ugb2YgdGhlIHN0cmluZyBCPCIKKyIke30+ICh3aGljaCBpcyBub3QgYSBsZWdhbCBzdWJzdGl0dXRpb24pIGlzIHJlcGxhY2VkIHdpdGggYSBCPCQ+IHNpZ24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNTozOAorbXNnaWQgIiIKKyJXaGlsZSB2YXJpYWJsZSBzdWJzdGl0dXRpb24gaXMgZG9uZSBvbiBhbGwgY29udHJvbCBmaWVsZHMsIHNvbWUgb2YgdGhvc2UgIgorImZpZWxkcyBhcmUgdXNlZCBhbmQgbmVlZGVkIGR1cmluZyB0aGUgYnVpbGQgd2hlbiB0aGUgc3Vic3RpdHV0aW9uIGRpZCBub3QgIgorInlldCBvY2N1ci4gVGhhdCdzIHdoeSB5b3UgY2FuJ3QgdXNlIHZhcmlhYmxlcyBpbiB0aGUgQjxQYWNrYWdlPiwgQjxTb3VyY2U+ICIKKyJhbmQgQjxBcmNoaXRlY3R1cmU+IGZpZWxkcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjQ1Cittc2dpZCAiIgorIlZhcmlhYmxlIHN1YnN0aXR1dGlvbiBoYXBwZW5zIG9uIHRoZSBjb250ZW50IG9mIHRoZSBmaWVsZHMgYWZ0ZXIgdGhleSBoYXZlICIKKyJiZWVuIHBhcnNlZCwgdGh1cyBpZiB5b3Ugd2FudCBhIHZhcmlhYmxlIHRvIGV4cGFuZCBvdmVyIG11bHRpcGxlIGxpbmVzIHlvdSAiCisiZG8gbm90IGhhdmUgdG8gaW5jbHVkZSBhIHNwYWNlIGFmdGVyIHRoZSBuZXdsaW5lLiBUaGlzIGlzIGRvbmUgaW1wbGljaXRseSAiCisid2hlbiB0aGUgZmllbGQgaXMgb3V0cHV0LiBGb3IgZXhhbXBsZSwgaWYgdGhlIHZhcmlhYmxlIEI8JHtEZXNjcmlwdGlvbn0+IGlzICIKKyJzZXQgdG8gXCJmb28gaXMgYmFyLiR7TmV3bGluZX1mb28gaXMgZ3JlYXQuXCIgYW5kIGlmIHlvdSBoYXZlIHRoZSBmb2xsb3dpbmcgIgorImZpZWxkOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6NTAKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiIERlc2NyaXB0aW9uOiBmb28gYXBwbGljYXRpb25cbiIKKyIgICR7RGVzY3JpcHRpb259XG4iCisiICAuXG4iCisiICBNb3JlIHRleHQuXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjUyCittc2dpZCAiSXQgd2lsbCByZXN1bHQgaW46IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNTo1OAorIywgbm8td3JhcAorbXNnaWQgIiIKKyIgRGVzY3JpcHRpb246IGZvbyBhcHBsaWNhdGlvblxuIgorIiAgZm9vIGlzIGJhci5cbiIKKyIgIGZvbyBpcyBncmVhdC5cbiIKKyIgIC5cbiIKKyIgIE1vcmUgdGV4dC5cbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6NzEKK21zZ2lkICIiCisiVmFyaWFibGVzIGNhbiBiZSBzZXQgdXNpbmcgdGhlIEI8LVY+IGNvbW1vbiBvcHRpb24uIFRoZXkgY2FuIGJlIGFsc28gIgorInNwZWNpZmllZCBpbiB0aGUgZmlsZSBCPGRlYmlhbi9zdWJzdHZhcnM+IChvciB3aGF0ZXZlciBvdGhlciBmaWxlIGlzICIKKyJzcGVjaWZpZWQgdXNpbmcgdGhlIEI8LVQ+IG9wdGlvbikuIFRoaXMgZmlsZSBjb25zaXN0cyBvZiBsaW5lcyBvZiB0aGUgZm9ybSAiCisiSTxuYW1lPkI8PT5JPHZhbHVlPi4gIFRyYWlsaW5nIHdoaXRlc3BhY2Ugb24gZWFjaCBsaW5lLCBibGFuayBsaW5lcywgYW5kICIKKyJsaW5lcyBzdGFydGluZyB3aXRoIGEgQjwjPiBzeW1ib2wgKGNvbW1lbnRzKSBhcmUgaWdub3JlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjczCittc2dpZCAiQWRkaXRpb25hbGx5LCB0aGUgZm9sbG93aW5nIHN0YW5kYXJkIHZhcmlhYmxlcyBhcmUgYXZhaWxhYmxlOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLXN1YnN0dmFycy41OjczCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8QXJjaD4iCittc2dzdHIgIkI8LUI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6NzcKK21zZ2lkICJUaGUgY3VycmVudCBidWlsZCBhcmNoaXRlY3R1cmUgKGZyb20gQjxkcGtnIC0tcHJpbnQtYXJjaGl0ZWN0dXJlPikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3Vic3R2YXJzLjU6NzcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHNvdXJjZTpWZXJzaW9uPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6ODAKK21zZ2lkICJUaGUgc291cmNlIHBhY2thZ2UgdmVyc2lvbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zdWJzdHZhcnMuNTo4MAorIywgbm8td3JhcAorbXNnaWQgIkI8c291cmNlOlVwc3RyZWFtLVZlcnNpb24+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNTo4NAorbXNnaWQgIiIKKyJUaGUgdXBzdHJlYW0gc291cmNlIHBhY2thZ2UgdmVyc2lvbiwgaW5jbHVkaW5nIHRoZSBEZWJpYW4gdmVyc2lvbiBlcG9jaCBpZiAiCisiYW55LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLXN1YnN0dmFycy41Ojg0CisjLCBuby13cmFwCittc2dpZCAiQjxiaW5hcnk6VmVyc2lvbj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41Ojg4Cittc2dpZCAiIgorIlRoZSBiaW5hcnkgcGFja2FnZSB2ZXJzaW9uICh3aGljaCBtYXkgZGlmZmVyIGZyb20gc291cmNlOlZlcnNpb24gaW4gYSBiaW5OTVUgIgorImZvciBleGFtcGxlKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zdWJzdHZhcnMuNTo4OAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPFNvdXJjZS1WZXJzaW9uPiIKK21zZ3N0ciAiQjwtVj58QjwtLXZlcnNpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6OTMKK21zZ2lkICIiCisiVGhlIHNvdXJjZSBwYWNrYWdlIHZlcnNpb24gKGZyb20gdGhlIGNoYW5nZWxvZyBmaWxlKS4gVGhpcyB2YXJpYWJsZSBpcyBub3cgIgorIkI8ZGVwcmVjYXRlZD4gYXMgaXRzIG1lYW5pbmcgaXMgZGlmZmVyZW50IGZyb20gaXRzIGZ1bmN0aW9uLCBwbGVhc2UgdXNlIHRoZSAiCisiQjxzb3VyY2U6VmVyc2lvbj4gb3IgQjxiaW5hcnk6VmVyc2lvbj4gYXMgYXBwcm9wcmlhdGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3Vic3R2YXJzLjU6OTMKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxJbnN0YWxsZWQtU2l6ZT4iCittc2dzdHIgIkI8aW5zdGFsbGVkPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjEwMgorbXNnaWQgIiIKKyJUaGUgdG90YWwgc2l6ZSBvZiB0aGUgcGFja2FnZSdzIGluc3RhbGxlZCBmaWxlcy4gVGhpcyB2YWx1ZSBpcyBjb3BpZWQgaW50byAiCisidGhlIGNvcnJlc3BvbmRpbmcgY29udHJvbCBmaWxlIGZpZWxkOyBzZXR0aW5nIGl0IHdpbGwgbW9kaWZ5IHRoZSB2YWx1ZSBvZiAiCisidGhhdCBmaWVsZC4gSWYgdGhpcyB2YXJpYWJsZSBpc24ndCBzZXQgQjxkcGtnLWdlbmNvbnRyb2w+IHdpbGwgdXNlIEI8ZHUgLWsgIgorImRlYmlhbi90bXA+IHRvIGZpbmQgdGhlIGRlZmF1bHQgdmFsdWUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3Vic3R2YXJzLjU6MTAyCisjLCBuby13cmFwCittc2dpZCAiQjxFeHRyYS1TaXplPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MTExCittc2dpZCAiIgorIkFkZGl0aW9uYWwgZGlzayBzcGFjZSB1c2VkIHdoZW4gdGhlIHBhY2thZ2UgaXMgaW5zdGFsbGVkLiBJZiB0aGlzIHZhcmlhYmxlICIKKyJpcyBzZXQgaXRzIHZhbHVlIGlzIGFkZGVkIHRvIHRoYXQgb2YgdGhlIEI8SW5zdGFsbGVkLVNpemU+IHZhcmlhYmxlICh3aGV0aGVyICIKKyJzZXQgZXhwbGljaXRseSBvciB1c2luZyB0aGUgZGVmYXVsdCB2YWx1ZSkgYmVmb3JlIGl0IGlzIGNvcGllZCBpbnRvIHRoZSAiCisiQjxJbnN0YWxsZWQtU2l6ZT4gY29udHJvbCBmaWxlIGZpZWxkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZGViLXN1YnN0dmFycy41OjExMQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPEY6Pkk8ZmllbGRuYW1lPiIKK21zZ3N0ciAiQjwtLWxvZz0+STzQuNC80Y8g0YTQsNC50LvQsD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToxMTgKK21zZ2lkICIiCisiVGhlIHZhbHVlIG9mIHRoZSBvdXRwdXQgZmllbGQgSTxmaWVsZG5hbWU+ICh3aGljaCBtdXN0IGJlIGdpdmVuIGluIHRoZSAiCisiY2Fub25pY2FsIGNhcGl0YWxpc2F0aW9uKS4gU2V0dGluZyB0aGVzZSB2YXJpYWJsZXMgaGFzIG5vIGVmZmVjdCBvdGhlciB0aGFuICIKKyJvbiBwbGFjZXMgd2hlcmUgdGhleSBhcmUgZXhwYW5kZWQgZXhwbGljaXRseS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zdWJzdHZhcnMuNToxMTgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPEZvcm1hdD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjEyOAorbXNnaWQgIiIKKyJUaGUgQjwuY2hhbmdlcz4gZmlsZSBmb3JtYXQgdmVyc2lvbiBnZW5lcmF0ZWQgYnkgdGhpcyB2ZXJzaW9uIG9mIHRoZSBzb3VyY2UgIgorInBhY2thZ2luZyBzY3JpcHRzLiBJZiB5b3Ugc2V0IHRoaXMgdmFyaWFibGUgdGhlIGNvbnRlbnRzIG9mIHRoZSBCPEZvcm1hdD4gIgorImZpZWxkIGluIHRoZSBCPC5jaGFuZ2VzPiBmaWxlIHdpbGwgY2hhbmdlIHRvby4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zdWJzdHZhcnMuNToxMjgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPE5ld2xpbmU+LCBCPFNwYWNlPiwgQjxUYWI+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToxMzEKK21zZ2lkICJUaGVzZSB2YXJpYWJsZXMgZWFjaCBob2xkIHRoZSBjb3JyZXNwb25kaW5nIGNoYXJhY3Rlci4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zdWJzdHZhcnMuNToxMzEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHNobGliczo+STxkZXBlbmRlbmN5ZmllbGQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToxMzUKK21zZ2lkICIiCisiVmFyaWFibGUgc2V0dGluZ3Mgd2l0aCBuYW1lcyBvZiB0aGlzIGZvcm0gYXJlIGdlbmVyYXRlZCBieSBCPGRwa2ctc2hsaWJkZXBzPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zdWJzdHZhcnMuNToxMzUKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxkcGtnOlVwc3RyZWFtLVZlcnNpb24+IgorbXNnc3RyICJCPGRwa2cgLS12ZXJzaW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjEzOAorbXNnaWQgIlRoZSB1cHN0cmVhbSB2ZXJzaW9uIG9mIGRwa2cuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3Vic3R2YXJzLjU6MTM4CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8ZHBrZzpWZXJzaW9uPiIKK21zZ3N0ciAiQjxkcGtnIC0tdmVyc2lvbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToxNDEKK21zZ2lkICJUaGUgZnVsbCB2ZXJzaW9uIG9mIGRwa2cuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToxNDQKK21zZ2lkICIiCisiSWYgYSB2YXJpYWJsZSBpcyByZWZlcnJlZCB0byBidXQgbm90IGRlZmluZWQgaXQgZ2VuZXJhdGVzIGEgd2FybmluZyBhbmQgYW4gIgorImVtcHR5IHZhbHVlIGlzIGFzc3VtZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkZWItc3Vic3R2YXJzLjU6MTQ1IGRwa2cuMTo2MjcgZHBrZy1hcmNoaXRlY3R1cmUuMToyODQgZHBrZy5jZmcuNToxMgorIzogZHBrZy1idWlsZGZsYWdzLjE6MTIxIGRwa2ctZGlzdGFkZGZpbGUuMTozOSBkcGtnLWRpdmVydC44OjEyMgorIzogZHBrZy1nZW5jaGFuZ2VzLjE6MTM4IGRwa2ctZ2VuY29udHJvbC4xOjEyOCBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTE1CisjOiBkcGtnLXNwbGl0LjE6MjA2IGRwa2ctc3RhdG92ZXJyaWRlLjg6NzQgZHNlbGVjdC5jZmcuNToxMgorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM2MAorIywgbm8td3JhcAorbXNnaWQgIkZJTEVTIgorbXNnc3RyICLQpNCQ0JnQm9CrIgorCisjLiB0eXBlOiBUUAorIzogZGViLXN1YnN0dmFycy41OjE0NgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPGRlYmlhbi9zdWJzdHZhcnM+IgorbXNnc3RyICJCPGRlaW5zdGFsbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToxNDkKKyMsIGZ1enp5Cittc2dpZCAiTGlzdCBvZiBzdWJzdGl0dXRpb24gdmFyaWFibGVzIGFuZCB2YWx1ZXMuIgorbXNnc3RyICLQodC/0LjRgdC+0Log0LTQvtGB0YLRg9C/0L3Ri9GFINC/0LDQutC10YLQvtCyLiIKKworIy4gdHlwZTogU0gKKyM6IGRlYi1zdWJzdHZhcnMuNToxNTAgZHBrZy4xOjc4MCBkcGtnLWJ1aWxkcGFja2FnZS4xOjI0NCBkcGtnLWRlYi4xOjIzOAorIzogZHBrZy1uYW1lLjE6ODYgZHBrZy1zb3VyY2UuMTo3MjIgZHBrZy1zcGxpdC4xOjE5OSBkc2VsZWN0LjE6NDI5CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDg2CisjLCBuby13cmFwCittc2dpZCAiQlVHUyIKK21zZ3N0ciAi0J7QqNCY0JHQmtCYINCg0JXQkNCb0JjQl9CQ0KbQmNCYIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MTUzIGRwa2ctc291cmNlLjE6NzI1Cittc2dpZCAiIgorIlRoZSBwb2ludCBhdCB3aGljaCBmaWVsZCBvdmVycmlkaW5nIG9jY3VycyBjb21wYXJlZCB0byBjZXJ0YWluIHN0YW5kYXJkICIKKyJvdXRwdXQgZmllbGQgc2V0dGluZ3MgaXMgcmF0aGVyIGNvbmZ1c2VkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MTYwCisjLCBmdXp6eQorbXNnaWQgIiIKKyJCPGRwa2c+KDEpLCBCPGRwa2ctZ2VuY2hhbmdlcz4oMSksIEI8ZHBrZy1nZW5jb250cm9sPigxKSwgQjxkcGtnLXNobGliZGVwcz4iCisiKDEpLCBCPGRwa2ctc291cmNlPigxKS4iCittc2dzdHIgIkI8ZGViPig1KSwgQjxkcGtnPigxKSwgQjxkcGtnLWRlYj4oMSkuIgorCisjLiB0eXBlOiBTSAorIzogZGViLXN1YnN0dmFycy41OjE2MSBkcGtnLWFyY2hpdGVjdHVyZS4xOjMwMyBkcGtnLmNmZy41OjE5CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyNjYgZHBrZy1jaGVja2J1aWxkZGVwcy4xOjQwIGRwa2ctZGViLjE6MjY1CisjOiBkcGtnLWRpdmVydC44OjEzNSBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjY2IGRwa2ctbmFtZS4xOjEwNAorIzogZHBrZy1xdWVyeS4xOjIxNCBkcGtnLXNjYW5zb3VyY2VzLjE6NzYgZHBrZy1zcGxpdC4xOjIyMworIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo4NyBkcGtnLXZlbmRvci4xOjQ4IGRzZWxlY3QuY2ZnLjU6MTkKKyMsIG5vLXdyYXAKK21zZ2lkICJBVVRIT1IiCittc2dzdHIgItCQ0JLQotCe0KAiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToxNjMgZHBrZy1idWlsZHBhY2thZ2UuMToyNTkgZHBrZy1kaXN0YWRkZmlsZS4xOjQ5CisjOiBkcGtnLWRlYi4xOjI2NyBkcGtnLWdlbmNoYW5nZXMuMToxNTAgZHBrZy1nZW5jb250cm9sLjE6MTQ0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTI1IGRwa2ctc2hsaWJkZXBzLjE6MzMxIGRwa2ctc291cmNlLjE6NzMyCisjOiBkcGtnLXNwbGl0LjE6MjI1Cittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDE5OTUtMTk5NiBJYW4gSmFja3NvbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MTY1IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjYxIGRwa2ctZGlzdGFkZGZpbGUuMTo1MQorIzogZHBrZy1nZW5jaGFuZ2VzLjE6MTUyIGRwa2ctZ2VuY29udHJvbC4xOjE0NiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTI3CisjOiBkcGtnLXNobGliZGVwcy4xOjMzMyBkcGtnLXNvdXJjZS4xOjczNCBkcGtnLXN0YXRvdmVycmlkZS44Ojg5CisjLCBmdXp6eQorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDAwIFdpY2hlcnQgQWtrZXJtYW4iCittc2dzdHIgIkNvcHlyaWdodCAyMDAxIEpvZXkgSGVzcyIKKworIy4gdHlwZTogVEgKKyM6IGRlYi1zeW1ib2xzLjU6MgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJkZWItc3ltYm9scyIKK21zZ3N0ciAiZGViLWNvbnRyb2wiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6NQorbXNnaWQgImRlYi1zeW1ib2xzIC0gRGViaWFuJ3MgZXh0ZW5kZWQgc2hhcmVkIGxpYnJhcnkgaW5mb3JtYXRpb24gZmlsZSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3ltYm9scy41OjgKK21zZ2lkICJzeW1ib2xzIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6MTIKK21zZ2lkICIiCisiVGhlIGZvcm1hdCBmb3IgYW4gZXh0ZW5kZWQgc2hhcmVkIGxpYnJhcnkgZGVwZW5kZW5jeSBpbmZvcm1hdGlvbiBlbnRyeSBpbiAiCisidGhlc2UgZmlsZXMgaXM6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6MTQKK21zZ2lkICJJPGxpYnJhcnktc29uYW1lIG1haW4tZGVwZW5kZW5jeS10ZW1wbGF0ZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNToxNgorbXNnaWQgIlsgfCBJPGFsdGVybmF0aXZlLWRlcGVuZGVuY3ktdGVtcGxhdGU+IF0iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNToxOAorbXNnaWQgIlsgLi4uIF0iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNToyMAorIywgZnV6enkKK21zZ2lkICJbICogSTxmaWVsZC1uYW1lPjogSTxmaWVsZC12YWx1ZT4gXSIKK21zZ3N0ciAiQjwtRD5JPG9jdGFsPkI8IHwgLS1kZWJ1Zz0+STxvY3RhbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6MjMKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiWyAuLi4gXVxuIgorIiBJPHN5bWJvbD4gSTxtaW5pbWFsLXZlcnNpb24+WyBJPGlkLW9mLWRlcGVuZGVuY3ktdGVtcGxhdGU+IF1cbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3ltYm9scy41OjI5Cittc2dpZCAiIgorIlRoZSBJPGxpYnJhcnktc29uYW1lPiBpcyBleGFjdGx5IHRoZSB2YWx1ZSBvZiB0aGUgU09OQU1FIGZpZWxkIGFzIGV4cG9ydGVkICIKKyJieSBCPG9iamR1bXA+KDEpLiBBIEk8ZGVwZW5kZW5jeS10ZW1wbGF0ZT4gaXMgYSBkZXBlbmRlbmN5IHdoZXJlIEk8I01JTlZFUiM+ICIKKyJpcyBkeW5hbWljYWxseSByZXBsYWNlZCBlaXRoZXIgYnkgYSB2ZXJzaW9uIGNoZWNrIGxpa2UgXCIoRTxndD49IEk8bWluaW1hbC0iCisidmVyc2lvbj4pXCIgb3IgYnkgbm90aGluZyAoaWYgYW4gdW52ZXJzaW9uZWQgZGVwZW5kZW5jeSBpcyBkZWVtZWQgIgorInN1ZmZpY2llbnQpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3ltYm9scy41OjM2Cittc2dpZCAiIgorIkVhY2ggZXhwb3J0ZWQgSTxzeW1ib2w+IChsaXN0ZWQgYXMgSTxuYW1lPkBJPHZlcnNpb24+LCB3aXRoIEk8dmVyc2lvbj4gYmVpbmcgIgorIlwiQmFzZVwiIGlmIHRoZSBsaWJyYXJ5IGlzIG5vdCB2ZXJzaW9uZWQpIGlzIGFzc29jaWF0ZWQgdG8gYSBJPG1pbmltYWwtIgorInZlcnNpb24+IG9mIGl0cyBkZXBlbmRlbmN5IHRlbXBsYXRlICh0aGUgbWFpbiBkZXBlbmRlbmN5IHRlbXBsYXRlIGlzIHVzZWQgaWYgIgorIkk8aWQtb2YtZGVwZW5kZW5jeS10ZW1wbGF0ZT4gaXMgbm90IHByZXNlbnQpLiBUaGUgZmlyc3QgYWx0ZXJuYXRpdmUgIgorImRlcGVuZGVuY3kgdGVtcGxhdGUgaXMgbnVtYmVyZWQgMSwgdGhlIHNlY29uZCBvbmUgMiwgZXRjLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3ltYm9scy41OjQzCittc2dpZCAiIgorIkVhY2ggZW50cnkgZm9yIGEgbGlicmFyeSBjYW4gYWxzbyBoYXZlIHNvbWUgZmllbGRzIG9mIG1ldGEtaW5mb3JtYXRpb24uICAiCisiVGhvc2UgZmllbGRzIGFyZSBzdG9yZWQgb24gbGluZXMgc3RhcnRpbmcgd2l0aCBhbiBhc3Rlcmlzay4gQ3VycmVudGx5LCB0aGUgIgorIm9ubHkgdmFsaWQgZmllbGQgaXMgSTxCdWlsZC1EZXBlbmRzLVBhY2thZ2U+LCBpdCBpbmRpY2F0ZXMgdGhlIG5hbWUgb2YgdGhlICIKKyJcIi1kZXZcIiBwYWNrYWdlIGFzc29jaWF0ZWQgdG8gdGhlIGxpYnJhcnkgYW5kIGlzIHVzZWQgYnkgQjxkcGtnLXNobGliZGVwcz4gIgorInRvIG1ha2Ugc3VyZSB0aGF0IHRoZSBkZXBlbmRlbmN5IGdlbmVyYXRlZCBpcyBhdCBsZWFzdCBhcyBzdHJpY3QgYXMgdGhlICIKKyJjb3JyZXNwb25kaW5nIGJ1aWxkIGRlcGVuZGVuY3kuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkZWItc3ltYm9scy41OjQ0CisjLCBuby13cmFwCittc2dpZCAiU2ltcGxlIHN5bWJvbHMgZmlsZSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3ltYm9scy41OjUwCisjLCBuby13cmFwCittc2dpZCAiIgorImxpYmZ0cC5zby4zIGxpYmZ0cDMgI01JTlZFUiNcbiIKKyIgRGVmYXVsdE5ldGJ1ZkBCYXNlIDMuMS0xLTZcbiIKKyIgRnRwQWNjZXNzQEJhc2UgMy4xLTEtNlxuIgorIiBbLi4uXVxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkZWItc3ltYm9scy41OjUwCisjLCBuby13cmFwCittc2dpZCAiQWR2YW5jZWQgc3ltYm9scyBmaWxlIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6NTMKK21zZ2lkICJsaWJHTC5zby4xIGxpYmdsMSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3ltYm9scy41OjU1Cittc2dpZCAifCBsaWJnbDEtbWVzYS1nbHggI01JTlZFUiMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNTo2MQorIywgbm8td3JhcAorbXNnaWQgIiIKKyIqIEJ1aWxkLURlcGVuZHMtUGFja2FnZTogbGliZ2wxLW1lc2EtZGV2XG4iCisiIHB1YmxpY0dsU3ltYm9sQEJhc2UgNi4zLTFcbiIKKyIgWy4uLl1cbiIKKyIgaW1wbGVtZW50YXRpb25TcGVjaWZpY1N5bWJvbEBCYXNlIDYuNS4yLTcgMVxuIgorIiBbLi4uXVxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6NjMKK21zZ2lkICJCPGh0dHA6Ly93aWtpLmRlYmlhbi5vcmcvUHJvamVjdHMvSW1wcm92ZWREcGtnU2hsaWJkZXBzPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3ltYm9scy41OjY1CisjLCBmdXp6eQorbXNnaWQgIkI8ZHBrZy1zaGxpYmRlcHM+KDEpLCBCPGRwa2ctZ2Vuc3ltYm9scz4oMSkuIgorbXNnc3RyICJCPGRwa2ctZGViLWFjdGlvbnM+IgorCisjLiB0eXBlOiBUSAorIzogZGViLXRyaWdnZXJzLjU6MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJkZWItdHJpZ2dlcnMiCittc2dzdHIgIkI8ZHBrZyAtLXZlcnNpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdHJpZ2dlcnMuNTo0Cittc2dpZCAiZGViLXRyaWdnZXJzIC0gcGFja2FnZSB0cmlnZ2VycyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdHJpZ2dlcnMuNTo3Cittc2dpZCAidHJpZ2dlcnMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXRyaWdnZXJzLjU6MTIKK21zZ2lkICIiCisiQSBwYWNrYWdlIGRlY2xhcmVzIGl0cyByZWxhdGlvbnNoaXAgdG8gc29tZSB0cmlnZ2VyKHMpIGJ5IGluY2x1ZGluZyBhICIKKyJJPHRyaWdnZXJzPiBmaWxlIGluIGl0cyBjb250cm9sIGFyY2hpdmUgKGkuZS4gSTxERUJJQU4vdHJpZ2dlcnM+IGR1cmluZyAiCisicGFja2FnZSBjcmVhdGlvbikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi10cmlnZ2Vycy41OjE2Cittc2dpZCAiIgorIlRoaXMgZmlsZSBjb250YWlucyBkaXJlY3RpdmVzLCBvbmUgcGVyIGxpbmUuIExlYWRpbmcgYW5kIHRyYWlsaW5nIHdoaXRlc3BhY2UgIgorImFuZCBldmVyeXRoaW5nIGFmdGVyIHRoZSBmaXJzdCBCPCM+IG9uIGFueSBsaW5lIHdpbGwgYmUgdHJpbW1lZCwgYW5kIGVtcHR5ICIKKyJsaW5lcyB3aWxsIGJlIGlnbm9yZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi10cmlnZ2Vycy41OjE4Cittc2dpZCAiVGhlIHRyaWdnZXIgY29udHJvbCBkaXJlY3RpdmVzIGN1cnJlbnRseSBzdXBwb3J0ZWQgYXJlOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdHJpZ2dlcnMuNToyMgorIywgZnV6enkKK21zZ2lkICJCPGludGVyZXN0PiBJPHRyaWdnZXItbmFtZT4iCittc2dzdHIgIkI8LS1sb2c9Pkk80LjQvNGPINGE0LDQudC70LA+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdHJpZ2dlcnMuNToyNgorIywgZnV6enkKK21zZ2lkICJCPGludGVyZXN0LW5vYXdhaXQ+IEk8dHJpZ2dlci1uYW1lPiIKK21zZ3N0ciAiQjwtLWxvZz0+STzQuNC80Y8g0YTQsNC50LvQsD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi10cmlnZ2Vycy41OjMzCittc2dpZCAiIgorIlNwZWNpZmllcyB0aGF0IHRoZSBwYWNrYWdlIGlzIGludGVyZXN0ZWQgaW4gdGhlIG5hbWVkIHRyaWdnZXIuIEFsbCB0cmlnZ2VycyAiCisiaW4gd2hpY2ggYSBwYWNrYWdlIGlzIGludGVyZXN0ZWQgbXVzdCBiZSBsaXN0ZWQgdXNpbmcgdGhpcyBkaXJlY3RpdmUgaW4gdGhlICIKKyJ0cmlnZ2VycyBjb250cm9sIGZpbGUuIFRoZSBcIm5vYXdhaXRcIiB2YXJpYW50IGRvZXMgbm90IHB1dCB0aGUgdHJpZ2dlcmluZyAiCisicGFja2FnZXMgaW4gdHJpZ2dlcnMtYXdhaXRlZCBzdGF0ZS4gVGhpcyBzaG91bGQgYmUgdXNlZCB3aGVuIHRoZSAiCisiZnVuY3Rpb25hbGl0eSBwcm92aWRlZCBieSB0aGUgdHJpZ2dlciBpcyBub3QgY3J1Y2lhbC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXRyaWdnZXJzLjU6MzcKK21zZ2lkICJCPGFjdGl2YXRlPiBJPHRyaWdnZXItbmFtZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXRyaWdnZXJzLjU6NDEKKyMsIGZ1enp5Cittc2dpZCAiQjxhY3RpdmF0ZS1ub2F3YWl0PiBJPHRyaWdnZXItbmFtZT4iCittc2dzdHIgIkI8LS1sb2c9Pkk80LjQvNGPINGE0LDQudC70LA+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdHJpZ2dlcnMuNTo1MAorbXNnaWQgIiIKKyJBcnJhbmdlcyB0aGF0IGNoYW5nZXMgdG8gdGhpcyBwYWNrYWdlJ3Mgc3RhdGUgd2lsbCBhY3RpdmF0ZSB0aGUgc3BlY2lmaWVkICIKKyJ0cmlnZ2VyLiBUaGUgdHJpZ2dlciB3aWxsIGJlIGFjdGl2YXRlZCBhdCB0aGUgc3RhcnQgb2YgdGhlIGZvbGxvd2luZyAiCisib3BlcmF0aW9uczogdW5wYWNrLCBjb25maWd1cmUsIHJlbW92ZSAoaW5jbHVkaW5nIGZvciB0aGUgYmVuZWZpdCBvZiBhICIKKyJjb25mbGljdGluZyBwYWNrYWdlKSwgcHVyZ2UgYW5kIGRlY29uZmlndXJlLiAgVGhlIFwibm9hd2FpdFwiIHZhcmlhbnQgZG9lcyAiCisibm90IHB1dCB0aGUgdHJpZ2dlcmluZyBwYWNrYWdlcyBpbiB0cmlnZ2Vycy1hd2FpdGVkIHN0YXRlLiBUaGlzIHNob3VsZCBiZSAiCisidXNlZCB3aGVuIHRoZSBmdW5jdGlvbmFsaXR5IHByb3ZpZGVkIGJ5IHRoZSB0cmlnZ2VyIGlzIG5vdCBjcnVjaWFsLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdHJpZ2dlcnMuNTo1OAorbXNnaWQgIiIKKyJJZiB0aGlzIHBhY2thZ2UgZGlzYXBwZWFycyBkdXJpbmcgdGhlIHVucGFja2luZyBvZiBhbm90aGVyIHBhY2thZ2UgdGhlICIKKyJ0cmlnZ2VyIHdpbGwgYmUgYWN0aXZhdGVkIHdoZW4gdGhlIGRpc2FwcGVhcmFuY2UgaXMgbm90ZWQgdG93YXJkcyB0aGUgZW5kIG9mICIKKyJ0aGUgdW5wYWNrLiBUcmlnZ2VyIHByb2Nlc3NpbmcsIGFuZCB0cmFuc2l0aW9uIGZyb20gdHJpZ2dlcnMtYXdhaXRlZCB0byAiCisiaW5zdGFsbGVkLCBkb2VzIG5vdCBjYXVzZSBhY3RpdmF0aW9ucy4gIEluIHRoZSBjYXNlIG9mIHVucGFjaywgdHJpZ2dlcnMgIgorIm1lbnRpb25lZCBpbiBib3RoIHRoZSBvbGQgYW5kIG5ldyB2ZXJzaW9ucyBvZiB0aGUgcGFja2FnZSB3aWxsIGJlIGFjdGl2YXRlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXRyaWdnZXJzLjU6NjEKK21zZ2lkICIiCisiVW5rbm93biBkaXJlY3RpdmVzIGFyZSBhbiBlcnJvciB3aGljaCB3aWxsIHByZXZlbnQgaW5zdGFsbGF0aW9uIG9mIHRoZSAiCisicGFja2FnZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXRyaWdnZXJzLjU6NjYKK21zZ2lkICIiCisiVGhlIFwiLW5vYXdhaXRcIiB2YXJpYW50cyBhcmUgb25seSBzdXBwb3J0ZWQgYnkgZHBrZyAxLjE2LjEgb3IgbmV3ZXIsIGFuZCAiCisid2lsbCBsZWFkIHRvIGVycm9ycyBpZiB1c2VkIHdpdGggYW4gb2xkZXIgZHBrZy4gSXQgaXMgdGh1cyByZWNvbW1lbmRlZCB0byAiCisiYWRkIGEgXCJQcmUtRGVwZW5kczogZHBrZyAoRTxndD49IDEuMTYuMSlcIiB0byBhbnkgcGFja2FnZSB0aGF0IHdpc2ggdG8gdXNlICIKKyJ0aG9zZSBkaXJlY3RpdmVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdHJpZ2dlcnMuNTo3MAorIywgZnV6enkKK21zZ2lkICIiCisiQjxkcGtnLXRyaWdnZXI+KDEpLCBCPGRwa2c+KDEpLCBCPC91c3Ivc2hhcmUvZG9jL2Rwa2ctZGV2L3RyaWdnZXJzLnR4dC5nej4uIgorbXNnc3RyICJCPGRlYj4oNSksIEI8ZHBrZz4oMSksIEI8ZHBrZy1kZWI+KDEpLiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2cuMToxCisjLCBuby13cmFwCittc2dpZCAiZHBrZyIKK21zZ3N0ciAiZHBrZyIKKworIy4gdHlwZTogVEgKKyM6IGRwa2cuMToxIGRwa2cuY2ZnLjU6MSBkcGtnLWJ1aWxkZmxhZ3MuMToxIGRwa2ctZGViLjE6MQorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxIGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6MSBkcGtnLXF1ZXJ5LjE6MQorIzogZHBrZy10cmlnZ2VyLjE6MSBkcGtnLXZlbmRvci4xOjEgZHNlbGVjdC5jZmcuNToxCisjLCBuby13cmFwCittc2dpZCAiZHBrZyBzdWl0ZSIKK21zZ3N0ciAi0LrQvtC80L/Qu9C10LrRgiBkcGtnIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NAorbXNnaWQgImRwa2cgLSBwYWNrYWdlIG1hbmFnZXIgZm9yIERlYmlhbiIKK21zZ3N0ciAiZHBrZyAtLSDQvNC10L3QtdC00LbQtdGAINC/0LDQutC10YLQvtCyIERlYmlhbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjgKKyMsIGZ1enp5CisjfCBtc2dpZCAiQjxkcGtnPiBbSTxvcHRpb25zPl0gSTxhY3Rpb24+IgorbXNnaWQgIkI8ZHBrZz4gW0k8b3B0aW9uPi4uLl0gSTxhY3Rpb24+IgorbXNnc3RyICJCPGRwa2c+IFtJPNC/0LDRgNCw0LzQtdGC0YDRiz5dIEk80LTQtdC50YHRgtCy0LjQtT4iCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLjE6OQorIywgbm8td3JhcAorbXNnaWQgIldBUk5JTkciCittc2dzdHIgItCf0KDQldCU0KPQn9Cg0JXQltCU0JXQndCY0JUiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxMworbXNnaWQgIiIKKyJUaGlzIG1hbnVhbCBpcyBpbnRlbmRlZCBmb3IgdXNlcnMgd2lzaGluZyB0byB1bmRlcnN0YW5kIEI8ZHBrZz4ncyBjb21tYW5kICIKKyJsaW5lIG9wdGlvbnMgYW5kIHBhY2thZ2Ugc3RhdGVzIGluIG1vcmUgZGV0YWlsIHRoYW4gdGhhdCBwcm92aWRlZCBieSBCPGRwa2cgIgorIi0taGVscD4uIgorbXNnc3RyICIiCisi0K3RgtC+INGA0YPQutC+0LLQvtC00YHRgtCy0L4g0L/RgNC10LTQvdCw0LfQvdCw0YfQtdC90L4g0LTQu9GPINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvQtdC5LCDQttC10LvQsNGO0YnQuNGFINCx0L7Qu9C10LUg0L/QvtC00YDQvtCx0L3QviAiCisi0L7Qt9C90LDQutC+0LzQuNGC0YzRgdGPINGBINC/0LDRgNCw0LzQtdGC0YDQsNC80Lgg0LrQvtC80LDQvdC00L3QvtC5INGB0YLRgNC+0LrQuCBCPGRwa2c+INC4INGB0L7RgdGC0L7Rj9C90LjRj9C80Lgg0L/QsNC60LXRgtC+0LI6ICIKKyLQt9C00LXRgdGMINGN0YLQviDQvtC/0LjRgdCw0L3QviDQsdC+0LvQtdC1INC00LXRgtCw0LvRjNC90L4sINGH0LXQvCDQsiBCPGRwa2cgLS1oZWxwPi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxOAorbXNnaWQgIiIKKyJJdCBzaG91bGQgSTxub3Q+IGJlIHVzZWQgYnkgcGFja2FnZSBtYWludGFpbmVycyB3aXNoaW5nIHRvIHVuZGVyc3RhbmQgaG93ICIKKyJCPGRwa2c+IHdpbGwgaW5zdGFsbCB0aGVpciBwYWNrYWdlcy4gVGhlIGRlc2NyaXB0aW9ucyBvZiB3aGF0IEI8ZHBrZz4gZG9lcyAiCisid2hlbiBpbnN0YWxsaW5nIGFuZCByZW1vdmluZyBwYWNrYWdlcyBhcmUgcGFydGljdWxhcmx5IGluYWRlcXVhdGUuIgorbXNnc3RyICIiCisi0K3RgtC+INGA0YPQutC+0LLQvtC00YHRgtCy0L4gSTzQvdC1PiDRgdC70LXQtNGD0LXRgiDQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0YHQvtC/0YDQvtCy0L7QttC00LDRjtGJ0LjQvCDQv9Cw0LrQtdGC0L7Qsiwg0LrQvtGC0L7RgNGL0LUgIgorItGF0L7RgtGP0YIg0L/QvtC90Y/RgtGMLCDQutCw0LogQjxkcGtnPiDQsdGD0LTQtdGCINGD0YHRgtCw0L3QsNCy0LvQuNCy0LDRgtGMINC40YUg0L/QsNC60LXRgtGLLiDQntC/0LjRgdCw0L3QuNC1INGC0L7Qs9C+LCDRh9GC0L4gIgorItC00LXQu9Cw0LXRgiBCPGRwa2c+INC/0YDQuCDRg9GB0YLQsNC90L7QstC60LUg0Lgg0YPQtNCw0LvQtdC90LjQuCDQv9Cw0LrQtdGC0L7QsiDQvtGB0L7QsdC10L3QvdC+INC90LUg0L/QvtC70L3Qvi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyNgorIywgZnV6enkKK21zZ2lkICIiCisiQjxkcGtnPiBpcyBhIHRvb2wgdG8gaW5zdGFsbCwgYnVpbGQsIHJlbW92ZSBhbmQgbWFuYWdlIERlYmlhbiBwYWNrYWdlcy4gVGhlICIKKyJwcmltYXJ5IGFuZCBtb3JlIHVzZXItZnJpZW5kbHkgZnJvbnQtZW5kIGZvciBCPGRwa2c+IGlzIEI8YXB0aXR1ZGU+KDEpLiAiCisiQjxkcGtnPiBpdHNlbGYgaXMgY29udHJvbGxlZCBlbnRpcmVseSB2aWEgY29tbWFuZCBsaW5lIHBhcmFtZXRlcnMsIHdoaWNoICIKKyJjb25zaXN0IG9mIGV4YWN0bHkgb25lIGFjdGlvbiBhbmQgemVybyBvciBtb3JlIG9wdGlvbnMuIFRoZSBhY3Rpb24tcGFyYW1ldGVyICIKKyJ0ZWxscyBCPGRwa2c+IHdoYXQgdG8gZG8gYW5kIG9wdGlvbnMgY29udHJvbCB0aGUgYmVoYXZpb3Igb2YgdGhlIGFjdGlvbiBpbiAiCisic29tZSB3YXkuIgorbXNnc3RyICIiCisiQjxkcGtnPiAtLSDRjdGC0L4g0LjQvdGB0YLRgNGD0LzQtdC90YIg0LTQu9GPINGD0YHRgtCw0L3QvtCy0LrQuCwg0YHQvtC30LTQsNC90LjRjywg0YPQtNCw0LvQtdC90LjRjyDQuCDRg9C/0YDQsNCy0LvQtdC90LjRjyAiCisi0L/QsNC60LXRgtCw0LzQuCBEZWJpYW4uINCe0YHQvdC+0LLQvdCw0Y8g0Lgg0LHQvtC70LXQtSDQv9GA0L7RgdGC0LDRjyDQvtCx0L7Qu9C+0YfQutCwINC00LvRjyBCPGRwa2c+IC0tINGN0YLQviAiCisiQjxkc2VsZWN0Pig4KS4gQjxkcGtnPiDQv9C+0LvQvdC+0YHRgtGM0Y4g0YPQv9GA0LDQstC70Y/QtdGC0YHRjyDQv9Cw0YDQsNC80LXRgtGA0LDQvNC4INC60L7QvNCw0L3QtNC90L7QuSDRgdGC0YDQvtC60LgsICIKKyLQutC+0YLQvtGA0YvQtSDRgdC+0YHRgtC+0Y/RgiDQuNC3INC+0LTQvdC+0LPQviDQtNC10LnRgdGC0LLQuNGPINC4INC90YPQu9GPINC40LvQuCDQsdC+0LvQtdC1INC/0LDRgNCw0LzQtdGC0YDQvtCyLiDQlNC10LnRgdGC0LLQuNC1ICIKKyLQs9C+0LLQvtGA0LjRgiBCPGRwa2c+INGH0YLQviDQtdC80YMg0L3Rg9C20L3QviDRgdC00LXQu9Cw0YLRjCwg0LAg0L/QsNGA0LDQvNC10YLRgNGLINGD0L/RgNCw0LLQu9GP0Y7RgiDQstGL0L/QvtC70L3QtdC90LjQtdC8ICIKKyLQtNC10LnRgdGC0LLQuNGPLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjMzCittc2dpZCAiIgorIkI8ZHBrZz4gY2FuIGFsc28gYmUgdXNlZCBhcyBhIGZyb250LWVuZCB0byBCPGRwa2ctZGViPigxKSBhbmQgQjxkcGtnLXF1ZXJ5PiIKKyIoMSkuIFRoZSBsaXN0IG9mIHN1cHBvcnRlZCBhY3Rpb25zIGNhbiBiZSBmb3VuZCBsYXRlciBvbiBpbiB0aGUgQjxBQ1RJT05TPiAiCisic2VjdGlvbi4gSWYgYW55IHN1Y2ggYWN0aW9uIGlzIGVuY291bnRlcmVkIEI8ZHBrZz4ganVzdCBydW5zIEI8ZHBrZy1kZWI+IG9yICIKKyJCPGRwa2ctcXVlcnk+IHdpdGggdGhlIHBhcmFtZXRlcnMgZ2l2ZW4gdG8gaXQsIGJ1dCBubyBzcGVjaWZpYyBvcHRpb25zIGFyZSAiCisiY3VycmVudGx5IHBhc3NlZCB0byB0aGVtLCB0byB1c2UgYW55IHN1Y2ggb3B0aW9uIHRoZSBiYWNrLWVuZHMgbmVlZCB0byBiZSAiCisiY2FsbGVkIGRpcmVjdGx5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy4xOjM0CisjLCBuby13cmFwCittc2dpZCAiSU5GT1JNQVRJT04gQUJPVVQgUEFDS0FHRVMiCittc2dzdHIgItCY0J3QpNCe0KDQnNCQ0KbQmNCvINCeINCf0JDQmtCV0KLQkNClIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzkKK21zZ2lkICIiCisiQjxkcGtnPiBtYWludGFpbnMgc29tZSB1c2FibGUgaW5mb3JtYXRpb24gYWJvdXQgYXZhaWxhYmxlIHBhY2thZ2VzLiBUaGUgIgorImluZm9ybWF0aW9uIGlzIGRpdmlkZWQgaW4gdGhyZWUgY2xhc3NlczogQjxzdGF0ZXM+LCBCPHNlbGVjdGlvbiBzdGF0ZXM+IGFuZCAiCisiQjxmbGFncz4uIFRoZXNlIHZhbHVlcyBhcmUgaW50ZW5kZWQgdG8gYmUgY2hhbmdlZCBtYWlubHkgd2l0aCBCPGRzZWxlY3Q+LiIKK21zZ3N0ciAiIgorIkI8ZHBrZz4g0YPQv9GA0LDQstC70Y/QtdGCINC90LXQutC+0YLQvtGA0L7QuSDQv9C+0LvQtdC30L3QvtC5INC40L3RhNC+0YDQvNCw0YbQuNC10Lkg0L4g0LTQvtGB0YLRg9C/0L3Ri9GFINC/0LDQutC10YLQsNGFLiDQrdGC0LAgIgorItC40L3RhNC+0YDQvNCw0YbQuNGPINC00LXQu9C40YLRgdGPINC90LAg0YLRgNC4INC60LvQsNGB0YHQsDogQjzRgdC+0YHRgtC+0Y/QvdC40Y8+LCBCPNCy0YvQsdGA0LDQvdC90YvQtSDRgdC+0YHRgtC+0Y/QvdC40Y8+INC4ICIKKyJCPNGE0LvQsNCz0Lg+LiDQn9GA0LXQtNC/0L7Qu9Cw0LPQsNC10YLRgdGPLCDRh9GC0L4g0LIg0LHQvtC70YzRiNC40L3RgdGC0LLQtSDRgdC70YPRh9Cw0LXQsiDRjdGC0LAg0LjQvdGE0L7RgNC80LDRhtC40Y8gIgorItC40LfQvNC10L3Rj9C10YLRgdGPINGBINC/0L7QvNC+0YnRjNGOIEI8ZHNlbGVjdD4uIgorCisjLiB0eXBlOiBTUworIzogZHBrZy4xOjM5CisjLCBuby13cmFwCittc2dpZCAiUEFDS0FHRSBTVEFURVMiCittc2dzdHIgItCh0J7QodCi0J7Qr9Cd0JjQryDQn9CQ0JrQldCi0JAiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NDAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPG5vdC1pbnN0YWxsZWQ+IgorbXNnc3RyICJCPG5vdC1pbnN0YWxsZWQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDMKK21zZ2lkICJUaGUgcGFja2FnZSBpcyBub3QgaW5zdGFsbGVkIG9uIHlvdXIgc3lzdGVtLiIKK21zZ3N0ciAi0J/QsNC60LXRgiDQsiDRgdC40YHRgtC10LzQtSDQvdC1INGD0YHRgtCw0L3QvtCy0LvQtdC9LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo0MworIywgbm8td3JhcAorbXNnaWQgIkI8Y29uZmlnLWZpbGVzPiIKK21zZ3N0ciAiQjxjb25maWctZmlsZXM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDYKK21zZ2lkICJPbmx5IHRoZSBjb25maWd1cmF0aW9uIGZpbGVzIG9mIHRoZSBwYWNrYWdlIGV4aXN0IG9uIHRoZSBzeXN0ZW0uIgorbXNnc3RyICLQkiDRgdC40YHRgtC10LzQtSDQvtGB0YLQsNC70LjRgdGMINGC0L7Qu9GM0LrQviDQutC+0L3RhNC40LPRg9GA0LDRhtC40L7QvdC90YvQtSDRhNCw0LnQu9GLINC/0LDQutC10YLQsC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NDYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGhhbGYtaW5zdGFsbGVkPiIKK21zZ3N0ciAiQjxoYWxmLWluc3RhbGxlZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1MAorbXNnaWQgIiIKKyJUaGUgaW5zdGFsbGF0aW9uIG9mIHRoZSBwYWNrYWdlIGhhcyBiZWVuIHN0YXJ0ZWQsIGJ1dCBub3QgY29tcGxldGVkIGZvciBzb21lICIKKyJyZWFzb24uIgorbXNnc3RyICLQo9GB0YLQsNC90L7QstC60LAg0L/QsNC60LXRgtCwINCx0YvQu9CwINC30LDQv9GD0YnQtdC90LAsINC90L4g0L3QtSDQt9Cw0LrQvtC90YfQtdC90LAg0L/QviDQutCw0LrQvtC5LdC70LjQsdC+INC/0YDQuNGH0LjQvdC1LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo1MAorIywgbm8td3JhcAorbXNnaWQgIkI8dW5wYWNrZWQ+IgorbXNnc3RyICJCPHVucGFja2VkPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjUzCittc2dpZCAiVGhlIHBhY2thZ2UgaXMgdW5wYWNrZWQsIGJ1dCBub3QgY29uZmlndXJlZC4iCittc2dzdHIgItCf0LDQutC10YIg0YDQsNGB0L/QsNC60L7QstCw0L0sINC90L4g0L3QtSDQvdCw0YHRgtGA0L7QtdC9LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo1MworIywgbm8td3JhcAorbXNnaWQgIkI8aGFsZi1jb25maWd1cmVkPiIKK21zZ3N0ciAiQjxoYWxmLWNvbmZpZ3VyZWQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTcKK21zZ2lkICIiCisiVGhlIHBhY2thZ2UgaXMgdW5wYWNrZWQgYW5kIGNvbmZpZ3VyYXRpb24gaGFzIGJlZW4gc3RhcnRlZCwgYnV0IG5vdCB5ZXQgIgorImNvbXBsZXRlZCBmb3Igc29tZSByZWFzb24uIgorbXNnc3RyICIiCisi0J/QsNC60LXRgiDRgNCw0YHQv9Cw0LrQvtCy0LDQvSDQuCDQvdCw0YHRgtGA0L7QudC60LAg0LHRi9C70LAg0LfQsNC/0YPRidC10L3QsCwg0L3QviDQv9C+0LrQsCDQtdGJ0ZEg0L3QtSDQt9Cw0LLQtdGA0YjQtdC90LAg0L/QviAiCisi0LrQsNC60L7QuS3Qu9C40LHQviDQv9GA0LjRh9C40L3QtS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHRyaWdnZXJzLWF3YWl0ZWQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2MAorbXNnaWQgIlRoZSBwYWNrYWdlIGF3YWl0cyB0cmlnZ2VyIHByb2Nlc3NpbmcgYnkgYW5vdGhlciBwYWNrYWdlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjYwCisjLCBuby13cmFwCittc2dpZCAiQjx0cmlnZ2Vycy1wZW5kaW5nPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NjMKKyMsIGZ1enp5Cittc2dpZCAiVGhlIHBhY2thZ2UgaGFzIGJlZW4gdHJpZ2dlcmVkLiIKK21zZ3N0ciAi0J/QsNC60LXRgiDRgNCw0YHQv9Cw0LrQvtCy0LDQvSDQuCDRg9GB0L/QtdGI0L3QviDQvdCw0YHRgtGA0L7QtdC9LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2MworIywgbm8td3JhcAorbXNnaWQgIkI8aW5zdGFsbGVkPiIKK21zZ3N0ciAiQjxpbnN0YWxsZWQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NjYKK21zZ2lkICJUaGUgcGFja2FnZSBpcyB1bnBhY2tlZCBhbmQgY29uZmlndXJlZCBPSy4iCittc2dzdHIgItCf0LDQutC10YIg0YDQsNGB0L/QsNC60L7QstCw0L0g0Lgg0YPRgdC/0LXRiNC90L4g0L3QsNGB0YLRgNC+0LXQvS4iCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLjE6NjYKKyMsIG5vLXdyYXAKK21zZ2lkICJQQUNLQUdFIFNFTEVDVElPTiBTVEFURVMiCittc2dzdHIgItCS0KvQkdCg0JDQndCd0KvQlSDQodCe0KHQotCe0K/QndCY0K8g0J/QkNCa0JXQotCQIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjY3CisjLCBuby13cmFwCittc2dpZCAiQjxpbnN0YWxsPiIKK21zZ3N0ciAiQjxpbnN0YWxsPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjcwCittc2dpZCAiVGhlIHBhY2thZ2UgaXMgc2VsZWN0ZWQgZm9yIGluc3RhbGxhdGlvbi4iCittc2dzdHIgItCf0LDQutC10YIg0LLRi9Cx0YDQsNC9INC00LvRjyDRg9GB0YLQsNC90L7QstC60LguIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjcwCisjLCBuby13cmFwCittc2dpZCAiQjxob2xkPiIKK21zZ3N0ciAiQjxob2xkPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjc0Cittc2dpZCAiIgorIkEgcGFja2FnZSBtYXJrZWQgdG8gYmUgb24gQjxob2xkPiBpcyBub3QgaGFuZGxlZCBieSBCPGRwa2c+LCB1bmxlc3MgZm9yY2VkICIKKyJ0byBkbyB0aGF0IHdpdGggb3B0aW9uIEI8LS1mb3JjZS1ob2xkPi4iCittc2dzdHIgIiIKKyLQn9Cw0LrQtdGCINC/0L7QvNC10YfQtdC9INC60LDQuiBCPNC30LDRhNC40LrRgdC40YDQvtCy0LDQvdC90YvQuT4g0Lgg0L3QtSDQvtCx0YDQsNCx0LDRgtGL0LLQsNC10YLRgdGPIEI8ZHBrZz4sINGC0L7Qu9GM0LrQviAiCisi0LXRgdC70Lgg0L3QtSDRg9C60LDQt9Cw0L0g0L/QsNGA0LDQvNC10YLRgCBCPC0tZm9yY2UtaG9sZD4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjc0CisjLCBuby13cmFwCittc2dpZCAiQjxkZWluc3RhbGw+IgorbXNnc3RyICJCPGRlaW5zdGFsbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3OAorbXNnaWQgIiIKKyJUaGUgcGFja2FnZSBpcyBzZWxlY3RlZCBmb3IgZGVpbnN0YWxsYXRpb24gKGkuZS4gd2Ugd2FudCB0byByZW1vdmUgYWxsICIKKyJmaWxlcywgZXhjZXB0IGNvbmZpZ3VyYXRpb24gZmlsZXMpLiIKK21zZ3N0ciAiIgorItCf0LDQutC10YIg0LLRi9Cx0YDQsNC9INC00LvRjyDRg9C00LDQu9C10L3QuNGPICjRgi7QtS4g0LHRg9C00YPRgiDRg9C00LDQu9C10L3RiyDQstGB0LUg0YTQsNC50LvRiywg0LrRgNC+0LzQtSAiCisi0LrQvtC90YTQuNCz0YPRgNCw0YbQuNC+0L3QvdGL0YUpLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo3OAorIywgbm8td3JhcAorbXNnaWQgIkI8cHVyZ2U+IgorbXNnc3RyICJCPHB1cmdlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjgyCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJUaGUgcGFja2FnZSBpcyBzZWxlY3RlZCB0byBiZSBwdXJnZWQgKGkuZS4gd2Ugd2FudCB0byByZW1vdmUgZXZlcnl0aGluZywgIgorI3wgImV2ZW4gY29uZmlndXJhdGlvbiBmaWxlcykuIgorbXNnaWQgIiIKKyJUaGUgcGFja2FnZSBpcyBzZWxlY3RlZCB0byBiZSBwdXJnZWQgKGkuZS4gd2Ugd2FudCB0byByZW1vdmUgZXZlcnl0aGluZyBmcm9tICIKKyJzeXN0ZW0gZGlyZWN0b3JpZXMsIGV2ZW4gY29uZmlndXJhdGlvbiBmaWxlcykuIgorbXNnc3RyICIiCisi0J/QsNC60LXRgiDQstGL0LHRgNCw0L0g0LTQu9GPINC/0L7Qu9C90L7QuSDQvtGH0LjRgdGC0LrQuCAo0YIu0LUuINCx0YPQtNGD0YIg0YPQtNCw0LvQtdC90Ysg0LDQsdGB0L7Qu9GO0YLQvdC+INCy0YHQtSDRhNCw0LnQu9GLLCAiCisi0LLQutC70Y7Rh9Cw0Y8g0LrQvtC90YTQuNCz0YPRgNCw0YbQuNC+0L3QvdGL0LUpLiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2cuMTo4MgorIywgbm8td3JhcAorbXNnaWQgIlBBQ0tBR0UgRkxBR1MiCittc2dzdHIgItCk0JvQkNCT0Jgg0J/QkNCa0JXQotCQIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjgzCisjLCBuby13cmFwCittc2dpZCAiQjxyZWluc3QtcmVxdWlyZWQ+IgorbXNnc3RyICJCPHJlaW5zdC1yZXF1aXJlZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo4OAorbXNnaWQgIiIKKyJBIHBhY2thZ2UgbWFya2VkIEI8cmVpbnN0LXJlcXVpcmVkPiBpcyBicm9rZW4gYW5kIHJlcXVpcmVzIHJlaW5zdGFsbGF0aW9uLiAiCisiVGhlc2UgcGFja2FnZXMgY2Fubm90IGJlIHJlbW92ZWQsIHVubGVzcyBmb3JjZWQgd2l0aCBvcHRpb24gQjwtLWZvcmNlLXJlbW92ZS0iCisicmVpbnN0cmVxPi4iCittc2dzdHIgIiIKKyLQn9Cw0LrQtdGCLCDQv9C+0LzQtdGH0LXQvdC90YvQuSDQutCw0LogQjxyZWluc3QtcmVxdWlyZWQ+LCDRj9Cy0LvRj9C10YLRgdGPINGB0LvQvtC80LDQvdC90YvQvCDQuCDRgtGA0LXQsdGD0LXRgiAiCisi0L/QtdGA0LXRg9GB0YLQsNC90L7QstC60LguINCi0LDQutC40LUg0L/QsNC60LXRgtGLINC90LUg0LzQvtCz0YPRgiDQsdGL0YLRjCDRg9C00LDQu9C10L3Riywg0L/QvtC60LAg0L3QtSDRg9C60LDQt9Cw0L0g0L/QsNGA0LDQvNC10YLRgCAiCisiQjwtLWZvcmNlLXJlaW5zdHJlcT4uIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy4xOjg5IGRzZWxlY3QuMToxMjAKKyMsIG5vLXdyYXAKK21zZ2lkICJBQ1RJT05TIgorbXNnc3RyICLQlNCV0JnQodCi0JLQmNCvIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjkwCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LWk+LCBCPC0taW5zdGFsbD4gSTxwYWNrYWdlLWZpbGU+Li4uIgorbXNnc3RyICJCPGRwa2cgLWk+IHwgQjwtLWluc3RhbGw+IEk80LjQvNGPINGE0LDQudC70LAg0L/QsNC60LXRgtCwPi4uLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjk0CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJJbnN0YWxsIHRoZSBwYWNrYWdlLiBJZiBCPC0tcmVjdXJzaXZlPiBvciBCPC1SPiBvcHRpb24gaXMgc3BlY2lmaWVkLCAiCisjfCAiSTxwYWNrYWdlX2ZpbGU+IG11c3QgcmVmZXIgdG8gYSBkaXJlY3RvcnkgaW5zdGVhZC4iCittc2dpZCAiIgorIkluc3RhbGwgdGhlIHBhY2thZ2UuIElmIEI8LS1yZWN1cnNpdmU+IG9yIEI8LVI+IG9wdGlvbiBpcyBzcGVjaWZpZWQsICIKKyJJPHBhY2thZ2UtZmlsZT4gbXVzdCByZWZlciB0byBhIGRpcmVjdG9yeSBpbnN0ZWFkLiIKK21zZ3N0ciAiIgorItCj0YHRgtCw0L3QvtCy0LjRgtGMINC30LDQtNCw0L3QvdGL0Lkg0L/QsNC60LXRgi4g0JXRgdC70Lgg0YPQutCw0LfQsNC9INC/0LDRgNCw0LzQtdGC0YAgQjwtLXJlY3Vyc2l2ZT4g0LjQu9C4IEI8LVI+LCDRgtC+ICIKKyLQstC80LXRgdGC0L4gSTzQuNC80LXQvdC4INGE0LDQudC70LAg0L/QsNC60LXRgtCwPiDQtNC+0LvQttC10L0g0LHRi9GC0Ywg0YPQutCw0LfQsNC9INC60LDRgtCw0LvQvtCzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjk2Cittc2dpZCAiSW5zdGFsbGF0aW9uIGNvbnNpc3RzIG9mIHRoZSBmb2xsb3dpbmcgc3RlcHM6IgorbXNnc3RyICLQo9GB0YLQsNC90L7QstC60LAg0YHQvtGB0YLQvtC40YIg0LjQtyDRgdC70LXQtNGD0Y7RidC40YUg0YjQsNCz0L7QsjoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo5OQorbXNnaWQgIkI8MS4+IEV4dHJhY3QgdGhlIGNvbnRyb2wgZmlsZXMgb2YgdGhlIG5ldyBwYWNrYWdlLiIKK21zZ3N0ciAiQjwxLj4g0JjQt9Cy0LvQtdGH0LXQvdC40LUg0YPQv9GA0LDQstC70Y/RjtGJ0LjRhSDRhNCw0LnQu9C+0LIg0L3QvtCy0L7Qs9C+INC/0LDQutC10YLQsC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxMDMKK21zZ2lkICIiCisiQjwyLj4gSWYgYW5vdGhlciB2ZXJzaW9uIG9mIHRoZSBzYW1lIHBhY2thZ2Ugd2FzIGluc3RhbGxlZCBiZWZvcmUgdGhlIG5ldyAiCisiaW5zdGFsbGF0aW9uLCBleGVjdXRlIEk8cHJlcm0+IHNjcmlwdCBvZiB0aGUgb2xkIHBhY2thZ2UuIgorbXNnc3RyICIiCisiQjwyLj4g0JXRgdC70Lgg0LTRgNGD0LPQsNGPINCy0LXRgNGB0LjRjyDRjdGC0L7Qs9C+INC/0LDQutC10YLQsCDQsdGL0LvQsCDRg9GB0YLQsNC90L7QstC70LXQvdCwINGA0LDQvdC10LUsINGC0L4g0LfQsNC/0YPRgdC60LDQtdGC0YHRjyAiCisi0YHRhtC10L3QsNGA0LjQuSBJPHByZXJtPiDQuNC3INGB0YLQsNGA0L7Qs9C+INC/0LDQutC10YLQsC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxMDYKK21zZ2lkICJCPDMuPiBSdW4gSTxwcmVpbnN0PiBzY3JpcHQsIGlmIHByb3ZpZGVkIGJ5IHRoZSBwYWNrYWdlLiIKK21zZ3N0ciAiQjwzLj4g0JfQsNC/0YPRgdC60LDQtdGC0YHRjyDRgdGG0LXQvdCw0YDQuNC5IEk8cHJlaW5zdD4sINC10YHQu9C4INC+0L0g0LXRgdGC0Ywg0LIg0L/QsNC60LXRgtC1LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjExMAorbXNnaWQgIiIKKyJCPDQuPiBVbnBhY2sgdGhlIG5ldyBmaWxlcywgYW5kIGF0IHRoZSBzYW1lIHRpbWUgYmFjayB1cCB0aGUgb2xkIGZpbGVzLCBzbyAiCisidGhhdCBpZiBzb21ldGhpbmcgZ29lcyB3cm9uZywgdGhleSBjYW4gYmUgcmVzdG9yZWQuIgorbXNnc3RyICIiCisiQjw0Lj4g0KDQsNGB0L/QsNC60L7QstGL0LLQsNGO0YLRgdGPINC90L7QstGL0LUg0YTQsNC50LvRiywg0LIg0YLQvtC20LUg0YHQsNC80L7QtSDQstGA0LXQvNGPINGB0L7RhdGA0LDQvdGP0Y8g0YHRgtCw0YDRi9C1LCDRh9GC0L7QsdGLICIKKyLQtdGB0LvQuCDRh9GC0L4t0YLQviDQv9C+0LnQtNC10YIg0L3QtSDRgtCw0LosINC80L7QttC90L4g0LHRi9C70L4g0LjRhSDQstC+0YHRgdGC0LDQvdC+0LLQuNGC0YwuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTE3Cittc2dpZCAiIgorIkI8NS4+IElmIGFub3RoZXIgdmVyc2lvbiBvZiB0aGUgc2FtZSBwYWNrYWdlIHdhcyBpbnN0YWxsZWQgYmVmb3JlIHRoZSBuZXcgIgorImluc3RhbGxhdGlvbiwgZXhlY3V0ZSB0aGUgSTxwb3N0cm0+IHNjcmlwdCBvZiB0aGUgb2xkIHBhY2thZ2UuIE5vdGUgdGhhdCAiCisidGhpcyBzY3JpcHQgaXMgZXhlY3V0ZWQgYWZ0ZXIgdGhlIEk8cHJlaW5zdD4gc2NyaXB0IG9mIHRoZSBuZXcgcGFja2FnZSwgIgorImJlY2F1c2UgbmV3IGZpbGVzIGFyZSB3cml0dGVuIGF0IHRoZSBzYW1lIHRpbWUgb2xkIGZpbGVzIGFyZSByZW1vdmVkLiIKK21zZ3N0ciAiIgorIkI8NS4+INCV0YHQu9C4INGA0LDQvdC10LUg0LHRi9C70LAg0YPRgdGC0LDQvdC+0LLQu9C10L3QsCDQtNGA0YPQs9Cw0Y8g0LLQtdGA0YHQuNGPINGN0YLQvtCz0L4g0L/QsNC60LXRgtCwLCDRgtC+INC30LDQv9GD0YHQutCw0LXRgtGB0Y8gIgorItGB0YbQtdC90LDRgNC40LkgSTxwb3N0cm0+INC00LvRjyDRgdGC0LDRgNC+0LPQviDQv9Cw0LrQtdGC0LAuINCX0LDQvNC10YLQuNC8LCDRh9GC0L4g0Y3RgtC+0YIg0YHRhtC10L3QsNGA0LjQuSAiCisi0LfQsNC/0YPRgdC60LDQtdGC0YHRjyDQv9C+0YHQu9C1INGB0YbQtdC90LDRgNC40Y8gSTxwcmVpbnN0PiDQvdC+0LLQvtCz0L4g0L/QsNC60LXRgtCwLCDQv9C+0YLQvtC80YMg0YfRgtC+INC90L7QstGL0LUg0YTQsNC50LvRiyAiCisi0LfQsNC/0LjRgdGL0LLQsNGO0YLRgdGPINCyINGC0L4g0LbQtSDRgdCw0LzQvtC1INCy0YDQtdC80Y8sINC60L7Qs9C00LAg0YPQtNCw0LvRj9GO0YLRgdGPINGB0YLQsNGA0YvQtS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxMjEKK21zZ2lkICIiCisiQjw2Lj4gQ29uZmlndXJlIHRoZSBwYWNrYWdlLiBTZWUgQjwtLWNvbmZpZ3VyZT4gZm9yIGRldGFpbGVkIGluZm9ybWF0aW9uICIKKyJhYm91dCBob3cgdGhpcyBpcyBkb25lLiIKK21zZ3N0ciAiIgorIkI8Ni4+INCd0LDRgdGC0YDQvtC50LrQsCDQv9Cw0LrQtdGC0LAuINCh0LzQvtGC0YDQuNGC0LUg0L7Qv9C40YHQsNC90LjQtSBCPC0tY29uZmlndXJlPiwg0LPQtNC1INC/0YDQuNCy0LXQtNC10L3QsCAiCisi0L/QvtC00YDQvtCx0L3QsNGPINC40L3RhNC+0YDQvNCw0YbQuNGPINC+0LEg0Y3RgtC+0Lwg0YjQsNCz0LUuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjEyMQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tdW5wYWNrID5JPHBhY2thZ2UtZmlsZT4uLi4iCittc2dzdHIgIkI8ZHBrZyAtLXVucGFjayA+STzQuNC80Y8g0YTQsNC50LvQsCDQv9Cw0LrQtdGC0LA+Li4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTI2CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJVbnBhY2sgdGhlIHBhY2thZ2UsIGJ1dCBkb24ndCBjb25maWd1cmUgaXQuIElmIEI8LS1yZWN1cnNpdmU+IG9yIEI8LVI+ICIKKyN8ICJvcHRpb24gaXMgc3BlY2lmaWVkLCBJPHBhY2thZ2VfZmlsZT4gbXVzdCByZWZlciB0byBhIGRpcmVjdG9yeSBpbnN0ZWFkLiIKK21zZ2lkICIiCisiVW5wYWNrIHRoZSBwYWNrYWdlLCBidXQgZG9uJ3QgY29uZmlndXJlIGl0LiBJZiBCPC0tcmVjdXJzaXZlPiBvciBCPC1SPiAiCisib3B0aW9uIGlzIHNwZWNpZmllZCwgSTxwYWNrYWdlLWZpbGU+IG11c3QgcmVmZXIgdG8gYSBkaXJlY3RvcnkgaW5zdGVhZC4iCittc2dzdHIgIiIKKyLQoNCw0YHQv9Cw0LrQvtCy0LDRgtGMINC/0LDQutC10YIsINC90L4g0L3QtSDQvdCw0YHRgtGA0LDQuNCy0LDRgtGMLiDQldGB0LvQuCDRg9C60LDQt9Cw0L0g0L/QsNGA0LDQvNC10YLRgCBCPC0tcmVjdXJzaXZlPiAiCisi0LjQu9C4IEI8LS1SPiwg0YLQviDQstC80LXRgdGC0L4gSTzQuNC80LXQvdC4INGE0LDQudC70LAg0L/QsNC60LXRgtCwPiDQtNC+0LvQttC10L0g0LHRi9GC0Ywg0YPQutCw0LfQsNC9INC60LDRgtCw0LvQvtCzLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToxMjYKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWNvbmZpZ3VyZSA+STxwYWNrYWdlPi4uLnxCPC1hPnxCPC0tcGVuZGluZz4iCittc2dzdHIgIkI8ZHBrZyAtLWNvbmZpZ3VyZSA+STzQuNC80Y8g0L/QsNC60LXRgtCwPiAuLi4gfCBCPC1hPiB8IEI8LS1wZW5kaW5nPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjEzMQorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiUmVjb25maWd1cmUgYW4gdW5wYWNrZWQgcGFja2FnZS4gSWYgQjwtYT4gb3IgQjwtLXBlbmRpbmc+IGlzIGdpdmVuICIKKyN8ICJpbnN0ZWFkIG9mIEk8cGFja2FnZT4sIGFsbCB1bnBhY2tlZCBidXQgdW5jb25maWd1cmVkIHBhY2thZ2VzIGFyZSAiCisjfCAiY29uZmlndXJlZC4iCittc2dpZCAiIgorIkNvbmZpZ3VyZSBhIHBhY2thZ2Ugd2hpY2ggaGFzIGJlZW4gdW5wYWNrZWQgYnV0IG5vdCB5ZXQgY29uZmlndXJlZC4gIElmIEI8LSIKKyJhPiBvciBCPC0tcGVuZGluZz4gaXMgZ2l2ZW4gaW5zdGVhZCBvZiBJPHBhY2thZ2U+LCBhbGwgdW5wYWNrZWQgYnV0ICIKKyJ1bmNvbmZpZ3VyZWQgcGFja2FnZXMgYXJlIGNvbmZpZ3VyZWQuIgorbXNnc3RyICIiCisi0J/QvtCy0YLQvtGA0L3QviDQvdCw0YHRgtGA0L7QuNGC0Ywg0YDQsNGB0L/QsNC60L7QstCw0L3QvdGL0Lkg0L/QsNC60LXRgi4g0JXRgdC70Lgg0LLQvNC10YHRgtC+IEk80LjQvNC10L3QuCDQv9Cw0LrQtdGC0LA+INC30LDQtNCw0L0gIgorItC/0LDRgNCw0LzQtdGC0YAgQjwtYT4g0LjQu9C4IEI8LS1wZW5kaW5nPiwg0YLQviDQstGB0LUg0YDQsNGB0L/QsNC60L7QstCw0L3QvdGL0LUsINC90L4g0L3QtSDQvdCw0YHRgtGA0L7QtdC90L3Ri9C1ICIKKyLQv9Cw0LrQtdGC0Ysg0LHRg9C00YPRgiDQvdCw0YHRgtGA0L7QtdC90YsuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTM1Cittc2dpZCAiIgorIlRvIHJlY29uZmlndXJlIGEgcGFja2FnZSB3aGljaCBoYXMgYWxyZWFkeSBiZWVuIGNvbmZpZ3VyZWQsIHRyeSB0aGUgQjxkcGtnLSIKKyJyZWNvbmZpZ3VyZT4oOCkgIGNvbW1hbmQgaW5zdGVhZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjEzNworbXNnaWQgIkNvbmZpZ3VyaW5nIGNvbnNpc3RzIG9mIHRoZSBmb2xsb3dpbmcgc3RlcHM6IgorbXNnc3RyICLQndCw0YHRgtGA0L7QudC60LAg0YHQvtGB0YLQvtC40YIg0LjQtyDRgdC70LXQtNGD0Y7RidC40YUg0YjQsNCz0L7QsjoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxNDIKKyMsIGZ1enp5Cittc2dpZCAiIgorIkI8MS4+IFVucGFjayB0aGUgY29uZmZpbGVzLCBhbmQgYXQgdGhlIHNhbWUgdGltZSBiYWNrIHVwIHRoZSBvbGQgY29uZmZpbGVzLCAiCisic28gdGhhdCB0aGV5IGNhbiBiZSByZXN0b3JlZCBpZiBzb21ldGhpbmcgZ29lcyB3cm9uZy4iCittc2dzdHIgIiIKKyJCPDEuPiDQoNCw0YHQv9Cw0LrQvtCy0LrQsCDQutC+0L3RhNC40LPRg9GA0LDRhtC40L7QvdC90YvRhSDRhNCw0LnQu9C+0LIsINCyINGC0L4g0LbQtSDRgdCw0LzQvtC1INCy0YDQtdC80Y8g0YHQvtGF0YDQsNC90Y/RjyAiCisi0YHRgtCw0YDRi9C1INC60L7QvdGE0LjQs9GD0YDQsNGG0LjQvtC90L3Ri9C1INGE0LDQudC70YssINGH0YLQvtCx0Ysg0LzQvtC20L3QviDQsdGL0LvQviDQstC+0YHRgdGC0LDQvdC+0LLQuNGC0Ywg0LjRhSwg0LXRgdC70Lgg0YfRgtC+LdGC0L4gIgorItC/0L7QudC00LXRgiDQvdC1INGC0LDQui4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxNDUKK21zZ2lkICJCPDIuPiBSdW4gSTxwb3N0aW5zdD4gc2NyaXB0LCBpZiBwcm92aWRlZCBieSB0aGUgcGFja2FnZS4iCittc2dzdHIgIkI8Mi4+INCX0LDQv9GD0YHQuiDRgdGG0LXQvdCw0YDQuNGPIEk8cG9zdGluc3Q+LCDQtdGB0LvQuCDQvtC9INC10YHRgtGMINCyINC/0LDQutC10YLQtS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MTQ1CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS10cmlnZ2Vycy1vbmx5PiBJPHBhY2thZ2U+Li4ufEI8LWE+fEI8LS1wZW5kaW5nPiIKK21zZ3N0ciAiQjxkcGtnIC0tY29uZmlndXJlID5JPNC40LzRjyDQv9Cw0LrQtdGC0LA+IC4uLiB8IEI8LWE+IHwgQjwtLXBlbmRpbmc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTUyCittc2dpZCAiIgorIlByb2Nlc3NlcyBvbmx5IHRyaWdnZXJzLiBBbGwgcGVuZGluZyB0cmlnZ2VycyB3aWxsIGJlIHByb2Nlc3NlZC4gSWYgcGFja2FnZSAiCisibmFtZXMgYXJlIHN1cHBsaWVkIG9ubHkgdGhvc2UgcGFja2FnZXMnIHRyaWdnZXJzIHdpbGwgYmUgcHJvY2Vzc2VkLCBleGFjdGx5ICIKKyJvbmNlIGVhY2ggd2hlcmUgbmVjZXNzYXJ5LiBVc2Ugb2YgdGhpcyBvcHRpb24gbWF5IGxlYXZlIHBhY2thZ2VzIGluIHRoZSAiCisiaW1wcm9wZXIgQjx0cmlnZ2Vycy1hd2FpdGVkPiBhbmQgQjx0cmlnZ2Vycy1wZW5kaW5nPiBzdGF0ZXMuIFRoaXMgY2FuIGJlICIKKyJmaXhlZCBsYXRlciBieSBydW5uaW5nOiBCPGRwa2cgLS1jb25maWd1cmUgLS1wZW5kaW5nPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToxNTIKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtcj4sIEI8LS1yZW1vdmU+LCBCPC1QPiwgQjwtLXB1cmdlID5JPHBhY2thZ2U+Li4ufEI8LWE+fEI8LS1wZW5kaW5nPiIKK21zZ3N0ciAiQjxkcGtnIC1yPiB8IEI8LS1yZW1vdmU+IHwgQjwtUD4gfCBCPC0tcHVyZ2UgPkk80LjQvNGPINC/0LDQutC10YLQsD4gLi4uIHwgQjwtYT4gfCBCPC0tcGVuZGluZz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxNjkKKyMsIGZ1enp5Cittc2dpZCAiIgorIlJlbW92ZSBhbiBpbnN0YWxsZWQgcGFja2FnZS4gQjwtcj4gb3IgQjwtLXJlbW92ZT4gcmVtb3ZlIGV2ZXJ5dGhpbmcgZXhjZXB0ICIKKyJjb25mZmlsZXMuIFRoaXMgbWF5IGF2b2lkIGhhdmluZyB0byByZWNvbmZpZ3VyZSB0aGUgcGFja2FnZSBpZiBpdCBpcyAiCisicmVpbnN0YWxsZWQgbGF0ZXIuIChDb25mZmlsZXMgYXJlIGNvbmZpZ3VyYXRpb24gZmlsZXMgdGhhdCBhcmUgbGlzdGVkIGluIHRoZSAiCisiSTxERUJJQU4vY29uZmZpbGVzPiBjb250cm9sIGZpbGUpLiBCPC1QPiBvciBCPC0tcHVyZ2U+IHJlbW92ZXMgZXZlcnl0aGluZywgIgorImluY2x1ZGluZyBjb25mZmlsZXMuIElmIEI8LWE+IG9yIEI8LS1wZW5kaW5nPiBpcyBnaXZlbiBpbnN0ZWFkIG9mIGEgcGFja2FnZSAiCisibmFtZSwgdGhlbiBhbGwgcGFja2FnZXMgdW5wYWNrZWQsIGJ1dCBtYXJrZWQgdG8gYmUgcmVtb3ZlZCBvciBwdXJnZWQgaW4gZmlsZSAiCisiSTwvdmFyL2xpYi9kcGtnL3N0YXR1cz4sIGFyZSByZW1vdmVkIG9yIHB1cmdlZCwgcmVzcGVjdGl2ZWx5LiBOb3RlOiBzb21lICIKKyJjb25maWd1cmF0aW9uIGZpbGVzIG1pZ2h0IGJlIHVua25vd24gdG8gQjxkcGtnPiBiZWNhdXNlIHRoZXkgYXJlIGNyZWF0ZWQgYW5kICIKKyJoYW5kbGVkIHNlcGFyYXRlbHkgdGhyb3VnaCB0aGUgY29uZmlndXJhdGlvbiBzY3JpcHRzLiBJbiB0aGF0IGNhc2UsIEI8ZHBrZz4gIgorIndvbid0IHJlbW92ZSB0aGVtIGJ5IGl0c2VsZiwgYnV0IHRoZSBwYWNrYWdlJ3MgSTxwb3N0cm0+IHNjcmlwdCAod2hpY2ggaXMgIgorImNhbGxlZCBieSBCPGRwa2c+KSwgaGFzIHRvIHRha2UgY2FyZSBvZiB0aGVpciByZW1vdmFsIGR1cmluZyBwdXJnZS4gT2YgIgorImNvdXJzZSwgdGhpcyBvbmx5IGFwcGxpZXMgdG8gZmlsZXMgaW4gc3lzdGVtIGRpcmVjdG9yaWVzLCBub3QgY29uZmlndXJhdGlvbiAiCisiZmlsZXMgd3JpdHRlbiB0byBpbmRpdmlkdWFsIHVzZXJzJyBob21lIGRpcmVjdG9yaWVzLiIKK21zZ3N0ciAiIgorItCj0LTQsNC70LjRgtGMINGD0YHRgtCw0L3QvtCy0LvQtdC90L3Ri9C5INC/0LDQutC10YIuINCV0YHQu9C4INGD0LrQsNC30LDQvSDQv9Cw0YDQsNC80LXRgtGAIEI8LXI+INC40LvQuCBCPC0tcmVtb3ZlPiDRgtC+ICIKKyLRg9C00LDQu9GP0LXRgtGB0Y8g0LLRgdGRLCDQutGA0L7QvNC1INC60L7QvdGE0LjQs9GD0YDQsNGG0LjQvtC90L3Ri9GFINGE0LDQudC70L7Qsi4g0K3RgtC+INC/0L7Qt9Cy0L7Qu9GP0LXRgiDQuNC30LHQtdC20LDRgtGMICIKKyLQv9C10YDQtdC60L7QvdGE0LjQs9GD0YDQsNGG0LjQuCDQv9Cw0LrQtdGC0LAsINC10YHQu9C4INC+0L0g0LHRg9C00LXRgiDQv9C+0LLRgtC+0YDQvdC+INGD0YHRgtCw0L3QvtCy0LvQtdC9INGDINCx0YPQtNGD0YnQtdC8LiAiCisiKNCa0L7QvdGE0LjQs9GD0YDQsNGG0LjQvtC90L3Ri9C1INGE0LDQudC70YsgLS0g0Y3RgtC+INGC0LUsINGH0YLQviDRg9C60LDQt9Cw0L3RiyDQsiDRg9C/0YDQsNCy0LvRj9GO0YnQtdC8INGE0LDQudC70LUgSTxkZWJpYW4vIgorImNvbmZpbGVzPikuINCV0YHQu9C4INGD0LrQsNC30LDQvSDQv9Cw0YDQsNC80LXRgtGAIEI8LVA+INC40LvQuCBCPC0tcHVyZ2U+INGC0L4g0YPQtNCw0LvRj9C10YLRgdGPINCy0YHRkSwgIgorItCy0LrQu9GO0YfQsNGPINC60L7QvdGE0LjQs9GD0YDQsNGG0LjQvtC90L3Ri9C1INGE0LDQudC70YsuINCV0YHQu9C4INCy0LzQtdGB0YLQviBJPNC40LzQtdC90Lgg0L/QsNC60LXRgtCwPiDQt9Cw0LTQsNC9INC/0LDRgNCw0LzQtdGC0YAgIgorIkI8LWE+INC40LvQuCBCPC0tcGVuZGluZyw+INGC0L4g0LLRgdC1INGA0LDRgdC/0LDQutC+0LLQsNC90L3Ri9C1INC/0LDQutC10YLRiywg0L3QviDQvtGC0LzQtdGH0LXQvdC90YvQtSDQsiDRhNCw0LnQu9C1ICIKKyJJPC92YXIvbGliL2Rwa2cvc3RhdHVzPiDQtNC70Y8g0YPQtNCw0LvQtdC90LjRjyDQuNC70Lgg0L/QvtC70L3QvtC5INC+0YfQuNGB0YLQutC4LCDRgdC+0L7RgtCy0LXRgtGB0YLQstC10L3QvdC+LCAiCisi0YPQtNCw0LvRj9GO0YLRgdGPINC40LvQuCDQv9C+0LvQvdC+0YHRgtGM0Y4g0L7Rh9C40YnQsNGO0YLRgdGPLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjE3MQorbXNnaWQgIlJlbW92aW5nIG9mIGEgcGFja2FnZSBjb25zaXN0cyBvZiB0aGUgZm9sbG93aW5nIHN0ZXBzOiIKK21zZ3N0ciAi0KPQtNCw0LvQtdC90LjQtSDQv9Cw0LrQtdGC0LAg0YHQvtGB0YLQvtC40YIg0LjQtyDRgdC70LXQtNGD0Y7RidC40YUg0YjQsNCz0L7QsjoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxNzQKK21zZ2lkICJCPDEuPiBSdW4gSTxwcmVybT4gc2NyaXB0IgorbXNnc3RyICJCPDEuPiDQl9Cw0L/Rg9GB0Log0YHRhtC10L3QsNGA0LjRjyBJPHByZXJtPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjE3NworbXNnaWQgIkI8Mi4+IFJlbW92ZSB0aGUgaW5zdGFsbGVkIGZpbGVzIgorbXNnc3RyICJCPDIuPiDQo9C00LDQu9C10L3QuNC1INGD0YHRgtCw0L3QvtCy0LvQtdC90L3Ri9GFINGE0LDQu9C+0LIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxODAKK21zZ2lkICJCPDMuPiBSdW4gSTxwb3N0cm0+IHNjcmlwdCIKK21zZ3N0ciAiQjwzLj4g0JfQsNC/0YPRgdC6INGB0YbQtdC90LDRgNC40Y8gSTxwb3N0cm0+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjE4MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tdXBkYXRlLWF2YWlsPiwgQjwtLW1lcmdlLWF2YWlsPiBJPFBhY2thZ2VzLWZpbGU+IgorbXNnc3RyICJCPGRwa2cgLS11cGRhdGUtYXZhaWw+IHwgQjwtLW1lcmdlLWF2YWlsID4gSSA80YTQsNC50LsgUGFja2FnZXM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTkwCittc2dpZCAiIgorIlVwZGF0ZSBCPGRwa2c+J3MgYW5kIEI8ZHNlbGVjdD4ncyBpZGVhIG9mIHdoaWNoIHBhY2thZ2VzIGFyZSBhdmFpbGFibGUuIFdpdGggIgorImFjdGlvbiBCPC0tbWVyZ2UtYXZhaWw+LCBvbGQgaW5mb3JtYXRpb24gaXMgY29tYmluZWQgd2l0aCBpbmZvcm1hdGlvbiBmcm9tICIKKyJJPFBhY2thZ2VzLWZpbGU+LiBXaXRoIGFjdGlvbiBCPC0tdXBkYXRlLWF2YWlsPiwgb2xkIGluZm9ybWF0aW9uIGlzIHJlcGxhY2VkICIKKyJ3aXRoIHRoZSBpbmZvcm1hdGlvbiBpbiB0aGUgSTxQYWNrYWdlcy1maWxlPi4gVGhlIEk8UGFja2FnZXMtZmlsZT4gIgorImRpc3RyaWJ1dGVkIHdpdGggRGViaWFuIGlzIHNpbXBseSBuYW1lZCBJPFBhY2thZ2VzPi4gQjxkcGtnPiBrZWVwcyBpdHMgIgorInJlY29yZCBvZiBhdmFpbGFibGUgcGFja2FnZXMgaW4gSTwvdmFyL2xpYi9kcGtnL2F2YWlsYWJsZT4uIgorbXNnc3RyICIiCisi0J7QsdC90L7QstC40YLRjCDQuNC90YTQvtGA0LzQsNGG0LjRjiBCPGRwa2c+INC4IEI8ZHNlbGVjdD4g0L4g0LTQvtGB0YLRg9C/0L3Ri9GFINC/0LDQutC10YLQsNGFLiDQlNC10LnRgdGC0LLQuNC1IEI8LS0iCisibWVyZ2UtYXZhaWw+INC60L7QvNCx0LjQvdC40YDRg9C10YIg0YHRgtCw0YDRg9GOINC40L3RhNC+0YDQvNCw0YbQuNGOINGBINC40L3RhNC+0YDQvNCw0YbQuNC10Lkg0LjQtyBJPNGE0LDQudC70LAgIgorIlBhY2thZ2VzPi4g0JTQtdC50YHRgtCy0LjQtSBCPC0tdXBkYXRlLWF2YWlsPiDQv9C10YDQtdC30LDQv9C40YHRi9Cy0LDQtdGCINGB0YLQsNGA0YPRjiDQuNC90YTQvtGA0LzQsNGG0LjRjiAiCisi0LjQvdGE0L7RgNC80LDRhtC40LXQuSDQuNC3IEk80YTQsNC50LvQsCBQYWNrYWdlcz4uIEk80KTQsNC50LsgUGFja2FnZXM+INGA0LDRgdC/0YDQvtGB0YLRgNCw0L3Rj9C10YLRgdGPINGBIERlYmlhbiAiCisi0L/QvtC0INC40LzQtdC90LXQvCBJPFBhY2thZ2VzPi4gQjxkcGtnPiDRhdGA0LDQvdC40YIg0LjQvdGE0L7RgNC80LDRhtC40Y4g0L4g0LTQvtGB0YLRg9C/0L3Ri9GFINC/0LDQutC10YLQsNGFINCyICIKKyLRhNCw0LnQu9C1IEk8L3Zhci9saWIvZHBrZy9hdmFpbGFibGU+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjE5NQorbXNnaWQgIiIKKyJBIHNpbXBsZXIgb25lLXNob3QgY29tbWFuZCB0byByZXRyaWV2ZSBhbmQgdXBkYXRlIHRoZSBJPGF2YWlsYWJsZT4gZmlsZSBpcyAiCisiQjxkc2VsZWN0IHVwZGF0ZT4uIE5vdGUgdGhhdCB0aGlzIGZpbGUgaXMgbW9zdGx5IHVzZWxlc3MgaWYgeW91IGRvbid0IHVzZSAiCisiQjxkc2VsZWN0PiBidXQgYW4gQVBULWJhc2VkIGZyb250ZW5kOiBBUFQgaGFzIGl0cyBvd24gc3lzdGVtIHRvIGtlZXAgdHJhY2sgIgorIm9mIGF2YWlsYWJsZSBwYWNrYWdlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToxOTUKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtQT4sIEI8LS1yZWNvcmQtYXZhaWw+IEk8cGFja2FnZS1maWxlPi4uLiIKK21zZ3N0ciAiQjxkcGtnIC1BPiB8IEI8LS1yZWNvcmQtYXZhaWw+IEk80LjQvNGPINGE0LDQudC70LAg0L/QsNC60LXRgtCwPiAuLi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyMDEKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlVwZGF0ZSBCPGRwa2c+IGFuZCBCPGRzZWxlY3Q+J3MgaWRlYSBvZiB3aGljaCBwYWNrYWdlcyBhcmUgYXZhaWxhYmxlIHdpdGggIgorI3wgImluZm9ybWF0aW9uIGZyb20gdGhlIHBhY2thZ2UgSTxwYWNrYWdlX2ZpbGU+LiBJZiBCPC0tcmVjdXJzaXZlPiBvciBCPC1SPiAiCisjfCAib3B0aW9uIGlzIHNwZWNpZmllZCwgSTxwYWNrYWdlX2ZpbGU+IG11c3QgcmVmZXIgdG8gYSBkaXJlY3RvcnkgaW5zdGVhZC4iCittc2dpZCAiIgorIlVwZGF0ZSBCPGRwa2c+IGFuZCBCPGRzZWxlY3Q+J3MgaWRlYSBvZiB3aGljaCBwYWNrYWdlcyBhcmUgYXZhaWxhYmxlIHdpdGggIgorImluZm9ybWF0aW9uIGZyb20gdGhlIHBhY2thZ2UgSTxwYWNrYWdlLWZpbGU+LiBJZiBCPC0tcmVjdXJzaXZlPiBvciBCPC1SPiAiCisib3B0aW9uIGlzIHNwZWNpZmllZCwgSTxwYWNrYWdlLWZpbGU+IG11c3QgcmVmZXIgdG8gYSBkaXJlY3RvcnkgaW5zdGVhZC4iCittc2dzdHIgIiIKKyLQntCx0L3QvtCy0LjRgtGMINC40L3RhNC+0YDQvNCw0YbQuNGOIEI8ZHBrZz4g0LggQjxkc2VsZWN0PiDQviDQtNC+0YHRgtGD0L/QvdGL0YUg0L/QsNC60LXRgtCw0YUg0LjQvdGE0L7RgNC80LDRhtC40LXQuSDQuNC3ICIKKyLQv9Cw0LrQtdGC0LAgSTzQuNC80Y8g0YTQsNC50LvQsCDQv9Cw0LrQtdGC0LA+LiDQldGB0LvQuCDQt9Cw0LTQsNC9INC/0LDRgNCw0LzQtdGC0YAgQjwtLXJlY3Vyc2l2ZT4g0LjQu9C4IEI8LVI+LCDRgtC+ICIKKyLQstC80LXRgdGC0L4gSTzQuNC80LXQvdC4INGE0LDQudC70LAg0L/QsNC60LXRgtCwPiDQtNC+0LvQttC10L0g0LHRi9GC0Ywg0YPQutCw0LfQsNC9INC60LDRgtCw0LvQvtCzLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToyMDEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWZvcmdldC1vbGQtdW5hdmFpbD4iCittc2dzdHIgIkI8ZHBrZyAtLWZvcmdldC1vbGQtdW5hdmFpbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyMDUKK21zZ2lkICIiCisiTm93IEI8b2Jzb2xldGU+IGFuZCBhIG5vLW9wIGFzIEI8ZHBrZz4gd2lsbCBhdXRvbWF0aWNhbGx5IGZvcmdldCB1bmluc3RhbGxlZCAiCisidW5hdmFpbGFibGUgcGFja2FnZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MjA1CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1jbGVhci1hdmFpbD4iCittc2dzdHIgIkI8ZHBrZyAtLWNsZWFyLWF2YWlsPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjIwOAorbXNnaWQgIkVyYXNlIHRoZSBleGlzdGluZyBpbmZvcm1hdGlvbiBhYm91dCB3aGF0IHBhY2thZ2VzIGFyZSBhdmFpbGFibGUuIgorbXNnc3RyICLQntGH0LjRgdGC0LjRgtGMINC40LzQtdGO0YnRg9GO0YHRjyDQuNC90YTQvtGA0LzQsNGG0LjRjiDQviDRgtC+0LwsINC60LDQutC40LUg0L/QsNC60LXRgtGLINC00L7RgdGC0YPQv9C90YsuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjIwOAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICIgQjwtQz4sIEI8LS1hdWRpdD4iCittc2dzdHIgIkI8LXE+fEI8LS1xdWlldD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyMTMKK21zZ2lkICIiCisiU2VhcmNoZXMgZm9yIHBhY2thZ2VzIHRoYXQgaGF2ZSBiZWVuIGluc3RhbGxlZCBvbmx5IHBhcnRpYWxseSBvbiB5b3VyICIKKyJzeXN0ZW0uIEI8ZHBrZz4gd2lsbCBzdWdnZXN0IHdoYXQgdG8gZG8gd2l0aCB0aGVtIHRvIGdldCB0aGVtIHdvcmtpbmcuIgorbXNnc3RyICIiCisi0J3QsNC50YLQuCDQv9Cw0LrQtdGC0YssINC60L7RgtC+0YDRi9C1INCx0YvQu9C4INGD0YHRgtCw0L3QvtCy0LvQtdC90Ysg0LIg0YHQuNGB0YLQtdC80LUg0YLQvtC70YzQutC+INGH0LDRgdGC0LjRh9C90L4uIEI8ZHBrZz4gIgorItC/0L7RgdC+0LLQtdGC0YPQtdGCLCDRh9GC0L4g0LTQtdC70LDRgtGMLCDRh9GC0L7QsdGLINCy0L7RgdGB0YLQsNC90L7QstC40YLRjCDQuNGFINGA0LDQsdC+0YLQvtGB0L/QvtGB0L7QsdC90L7RgdGC0YwuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjIxMworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tZ2V0LXNlbGVjdGlvbnM+IFtJPHBhY2thZ2UtbmFtZS1wYXR0ZXJuPi4uLl0iCittc2dzdHIgIkI8ZHBrZyAtLWdldC1zZWxlY3Rpb25zPiBbSTzRiNCw0LHQu9C+0L0g0LjQvNC10L3QuCDQv9Cw0LrQtdGC0LA+Li4uXSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjIxOAorIywgZnV6enkKK21zZ2lkICIiCisiR2V0IGxpc3Qgb2YgcGFja2FnZSBzZWxlY3Rpb25zLCBhbmQgd3JpdGUgaXQgdG8gc3Rkb3V0LiBXaXRob3V0IGEgcGF0dGVybiwgIgorIm5vbi1pbnN0YWxsZWQgcGFja2FnZXMgKGkuZS4gdGhvc2Ugd2hpY2ggaGF2ZSBiZWVuIHByZXZpb3VzbHkgcHVyZ2VkKSAgd2lsbCAiCisibm90IGJlIHNob3duLiIKK21zZ3N0ciAiIgorItCf0L7Qu9GD0YfQuNGC0Ywg0YHQv9C40YHQvtC6INCy0YvQsdGA0LDQvdC90YvRhSDQv9Cw0LrQtdGC0L7QsiDQuCDQstGL0LLQtdGB0YLQuCDQtdCz0L4g0LIg0YHRgtCw0L3QtNCw0YDRgtC90YvQuSDQstGL0YXQvtC00L3QvtC5INC/0L7RgtC+0LouIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjIxOCB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6Mjk5CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1zZXQtc2VsZWN0aW9ucz4iCittc2dzdHIgIkI8ZHBrZyAtLXNldC1zZWxlY3Rpb25zPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjIyNAorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiU2V0IHBhY2thZ2Ugc2VsZWN0aW9ucyB1c2luZyBmaWxlIHJlYWQgZnJvbSBzdGRpbi4gVGhpcyBmaWxlIHNob3VsZCBiZSBpbiAiCisjfCAidGhlIGZvcm1hdCAnRTxsdD5wYWNrYWdlRTxndD4gRTxsdD5zdGF0ZUU8Z3Q+Jywgd2hlcmUgc3RhdGUgaXMgb25lIG9mICIKKyN8ICJpbnN0YWxsLCBob2xkLCBkZWluc3RhbGwgb3IgcHVyZ2UuIEJsYW5rIGxpbmVzIGFuZCBjb21tZW50IGxpbmVzICIKKyN8ICJiZWdpbm5pbmcgd2l0aCAnIycgYXJlIGFsc28gcGVybWl0dGVkLiIKK21zZ2lkICIiCisiU2V0IHBhY2thZ2Ugc2VsZWN0aW9ucyB1c2luZyBmaWxlIHJlYWQgZnJvbSBzdGRpbi4gVGhpcyBmaWxlIHNob3VsZCBiZSBpbiAiCisidGhlIGZvcm1hdCAnSTxwYWNrYWdlPiBJPHN0YXRlPicsIHdoZXJlIHN0YXRlIGlzIG9uZSBvZiBCPGluc3RhbGw+LCBCPGhvbGQ+LCAiCisiQjxkZWluc3RhbGw+IG9yIEI8cHVyZ2U+LiBCbGFuayBsaW5lcyBhbmQgY29tbWVudCBsaW5lcyBiZWdpbm5pbmcgd2l0aCAnIycgIgorImFyZSBhbHNvIHBlcm1pdHRlZC4iCittc2dzdHIgIiIKKyLQo9GB0YLQsNC90L7QstC40YLRjCDRgdC/0LjRgdC+0Log0LLRi9Cx0YDQsNC90L3Ri9GFINC/0LDQutC10YLQvtCyLCDQv9GA0LjQvdC40LzQsNGPINC10LPQviDRgdC+INGB0YLQsNC90LTQsNGA0YLQvdC+0LPQviDQstCy0L7QtNCwLiAiCisi0K3RgtC+0YIg0YTQsNC50Lsg0LTQvtC70LbQtdC9INCx0YvRgtGMINCyINGE0L7RgNC80LDRgtC1ICdFPGx0PtC/0LDQutC10YJFPGd0PiBFPGx0PtGB0L7RgdGC0L7Rj9C90LjQtUU8Z3Q+Jywg0LPQtNC1ICIKKyLRgdC+0YHRgtC+0Y/QvdC40LXQvCDQvNC+0LbQtdGCINCx0YvRgtGMIGluc3RhbGwsIGhvbGQsIGRlaW5zdGFsbCDQuNC70LggcHVyZ2UuINCU0L7Qv9GD0YHQutCw0Y7RgtGB0Y8g0L/Rg9GB0YLRi9C1ICIKKyLRgdGC0YDQvtC60Lgg0Lgg0YHRgtGA0L7QutC4INC60L7QvNC80LXQvdGC0LDRgNC40LXQsiAo0L3QsNGH0LjQvdCw0Y7RidC40LXRgdGPINGBICMpLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToyMjQKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWNsZWFyLXNlbGVjdGlvbnM+IgorbXNnc3RyICJCPGRwa2cgLS1zZXQtc2VsZWN0aW9ucz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyMjkKK21zZ2lkICIiCisiU2V0IHRoZSByZXF1ZXN0ZWQgc3RhdGUgb2YgZXZlcnkgbm9uLWVzc2VudGlhbCBwYWNrYWdlIHRvIGRlaW5zdGFsbC4gIFRoaXMgIgorImlzIGludGVuZGVkIHRvIGJlIHVzZWQgaW1tZWRpYXRlbHkgYmVmb3JlIC0tc2V0LXNlbGVjdGlvbnMsIHRvIGRlaW5zdGFsbCBhbnkgIgorInBhY2thZ2VzIG5vdCBpbiBsaXN0IGdpdmVuIHRvIC0tc2V0LXNlbGVjdGlvbnMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MjI5CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS15ZXQtdG8tdW5wYWNrPiIKK21zZ3N0ciAiQjxkcGtnIC0teWV0LXRvLXVucGFjaz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyMzMKK21zZ2lkICIiCisiU2VhcmNoZXMgZm9yIHBhY2thZ2VzIHNlbGVjdGVkIGZvciBpbnN0YWxsYXRpb24sIGJ1dCB3aGljaCBmb3Igc29tZSByZWFzb24gIgorInN0aWxsIGhhdmVuJ3QgYmVlbiBpbnN0YWxsZWQuIgorbXNnc3RyICIiCisi0J3QsNC50YLQuCDQv9Cw0LrQtdGC0YssINCy0YvQsdGA0LDQvdC90YvQtSDQtNC70Y8g0YPRgdGC0LDQvdC+0LLQutC4LCDQvdC+INC/0L4g0LrQsNC60L7QuS3RgtC+INC/0YDQuNGH0LjQvdC1INC10YnRkSDQvdC1ICIKKyLRg9GB0YLQsNC90L7QstC70LXQvdC90YvQtS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MjM0CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1wcmludC1hcmNoaXRlY3R1cmU+IgorbXNnc3RyICJCPGRwa2cgLS1wcmludC1hcmNoaXRlY3R1cmU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MjM3CisjLCBmdXp6eQorbXNnaWQgIiIKKyJQcmludCBhcmNoaXRlY3R1cmUgb2YgcGFja2FnZXMgQjxkcGtnPiBpbnN0YWxscyAoZm9yIGV4YW1wbGUsIFwiaTM4NlwiKS4iCittc2dzdHIgIiIKKyLQn9C+0LrQsNC30LDRgtGMINCw0YDRhdC40YLQtdC60YLRg9GA0YMg0YPRgdGC0LDQvdCw0LLQu9C40LLQsNC10LzRi9GFINC/0LDQutC10YLQvtCyINGBINC/0L7QvNC+0YnRjNGOIGRwa2cgKNC90LDQv9GA0LjQvNC10YAsICIKKyJcImkzODZcIikuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjIzNworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tY29tcGFyZS12ZXJzaW9ucyA+STx2ZXIxIG9wIHZlcjI+IgorbXNnc3RyICJCPGRwa2cgLS1jb21wYXJlLXZlcnNpb25zID5JPHZlcjEgb3AgdmVyMj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyNDgKK21zZ2lkICIiCisiQ29tcGFyZSB2ZXJzaW9uIG51bWJlcnMsIHdoZXJlIEk8b3A+IGlzIGEgYmluYXJ5IG9wZXJhdG9yLiBCPGRwa2c+IHJldHVybnMgIgorInN1Y2Nlc3MgKHplcm8gcmVzdWx0KSBpZiB0aGUgc3BlY2lmaWVkIGNvbmRpdGlvbiBpcyBzYXRpc2ZpZWQsIGFuZCBmYWlsdXJlICIKKyIobm9uemVybyByZXN1bHQpIG90aGVyd2lzZS4gVGhlcmUgYXJlIHR3byBncm91cHMgb2Ygb3BlcmF0b3JzLCB3aGljaCBkaWZmZXIgIgorImluIGhvdyB0aGV5IHRyZWF0IGFuIGVtcHR5IEk8dmVyMT4gb3IgSTx2ZXIyPi4gVGhlc2UgdHJlYXQgYW4gZW1wdHkgdmVyc2lvbiAiCisiYXMgZWFybGllciB0aGFuIGFueSB2ZXJzaW9uOiBCPGx0IGxlIGVxIG5lIGdlIGd0Pi4gVGhlc2UgdHJlYXQgYW4gZW1wdHkgIgorInZlcnNpb24gYXMgbGF0ZXIgdGhhbiBhbnkgdmVyc2lvbjogQjxsdC1ubCBsZS1ubCBnZS1ubCBndC1ubD4uIFRoZXNlIGFyZSAiCisicHJvdmlkZWQgb25seSBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIGNvbnRyb2wgZmlsZSBzeW50YXg6IEI8RTxsdD4gRTxsdD5FPGx0PiAiCisiRTxsdD49ID0gRTxndD49IEU8Z3Q+RTxndD4gRTxndD4+LiIKK21zZ3N0ciAiIgorItCh0YDQsNCy0L3QuNGC0Ywg0L3QvtC80LXRgNCwINCy0LXRgNGB0LjQuSwg0LjRgdC/0L7Qu9GM0LfRg9GPIEk8b3A+INCyINC60LDRh9C10YHRgtCy0LUg0LHQuNC90LDRgNC90L7Qs9C+INC+0L/QtdGA0LDRgtC+0YDQsC4gIgorIkI8ZHBrZz4g0LLQvtC30LLRgNCw0YnQsNC10YIg0LrQvtC0INGD0YHQv9C10YjQvdC+0LPQviDQt9Cw0LLQtdGA0YjQtdC90LjRjyAo0L3Rg9C70YwpLCDQtdGB0LvQuCDRg9C60LDQt9Cw0L3QvdC+0LUg0YPRgdC70L7QstC40LUgIgorItGD0LTQvtCy0LvQtdGC0LLQvtGA0Y/QtdGC0YHRjywg0LjQu9C4INC90LXRg9C00LDRh9GDICjQvdC1LdC90YPQu9GMKSDQsiDQv9GA0L7RgtC40LLQvdC+0Lwg0YHQu9GD0YfQsNC1LiDQldGB0YLRjCDQtNCy0LUg0LPRgNGD0L/Qv9GLICIKKyLQvtC/0LXRgNCw0YLQvtGA0L7Qsiwg0LrQvtGC0L7RgNGL0LUg0YDQsNCx0L7RgtCw0Y7RgiDQv9C+LdGA0LDQt9C90L7QvNGDINC/0YDQuCDQvtGC0YHRg9GC0YHRgtCy0YPRjtGJ0LXQvCDQv9Cw0YDQsNC80LXRgtGA0LUgSTx2ZXIxPiAiCisi0LjQu9C4IEk8dmVyMj4uINCe0L/QtdGA0LDRgtC+0YDRiyBCPGx0IGxlIGVxIG5lIGdlIGd0PiDRgdGH0LjRgtCw0Y7RgiDQvtGC0YHRg9GC0YHRgtCy0YPRjtGJ0LjQuSDQvdC+0LzQtdGAICIKKyLQstC10YDRgdC40Lgg0LHQvtC70LXQtSDRgNCw0L3QvdC40LwsINGH0LXQvCDQu9GO0LHQvtC5INC00YDRg9Cz0L7QuS4g0J7Qv9C10YDQsNGC0L7RgNGLIEI8bHQtbmwgbGUtbmwgZ2UtbmwgZ3Qtbmw+ICIKKyLRgdGH0LjRgtCw0Y7RgiDQvtGC0YHRg9GC0YHRgtCy0YPRjtGJ0LjQuSDQvdC+0LzQtdGAINCy0LXRgNGB0LjQuCDQsdC+0LvQtdC1INC/0L7Qt9C00L3QuNC8LCDRh9C10Lwg0LvRjtCx0L7QuSDQtNGA0YPQs9C+0LkuICIKKyLQntC/0LXRgNCw0YLQvtGA0YsgQjxFPGx0PiBFPGx0PkU8bHQ+IEU8bHQ+PSA9IEU8Z3Q+PSBFPGd0PkU8Z3Q+IEU8Z3Q+PiDQuNGB0L/QvtC70YzQt9GD0Y7RgtGB0Y8gIgorItGC0L7Qu9GM0LrQviDQtNC70Y8g0YHQvtCy0LzQtdGB0YLQuNC80L7RgdGC0Lgg0YEg0YHQuNC90YLQsNC60YHQuNGB0L7QvCDRhNCw0LnQu9CwIGNvbnRyb2wuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjI0OAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tY29tbWFuZC1mZCA+STxuPiIKK21zZ3N0ciAiQjxkcGtnIC0tY29tbWFuZC1mZCBFPGx0Pm5FPGd0Pj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyNTMKKyMsIGZ1enp5Cittc2dpZCAiIgorIkFjY2VwdCBhIHNlcmllcyBvZiBjb21tYW5kcyBvbiBpbnB1dCBmaWxlIGRlc2NyaXB0b3IgSTxuPi4gTm90ZTogYWRkaXRpb25hbCAiCisib3B0aW9ucyBzZXQgb24gdGhlIGNvbW1hbmQgbGluZSwgYW5kIHRocm91Z2ggdGhpcyBmaWxlIGRlc2NyaXB0b3IsIGFyZSBub3QgIgorInJlc2V0IGZvciBzdWJzZXF1ZW50IGNvbW1hbmRzIGV4ZWN1dGVkIGR1cmluZyB0aGUgc2FtZSBydW4uIgorbXNnc3RyICIiCisi0J/RgNC40L3QuNC80LDQtdGCINGB0LXRgNC40Y4g0LrQvtC80LDQvdC0INC40Lcg0LLRhdC+0LTQvdC+0LPQviDRhNCw0LnQu9C+0LLQvtCz0L4g0LTQtdGB0LrRgNC40L/RgtC+0YDQsCBCPEU8bHQ+bkU8Z3Q+Pi4gIgorItCX0LDQvNC10YfQsNC90LjQtTog0LTQvtC/0L7Qu9C90LjRgtC10LvRjNC90YvQtSDQv9Cw0YDQsNC80LXRgtGA0YssINC30LDQtNCw0L3QvdGL0LUg0LIg0LrQvtC80LDQvdC00L3QvtC5INGB0YLRgNC+0LrQtSwg0LAg0YLQsNC60LbQtSAiCisi0YfQtdGA0LXQtyDRjdGC0L7RgiDQtNC10YHQutGA0LjQv9GC0L7RgCwg0L3QtSDRgdCx0YDQsNGB0YvQstCw0Y7RgtGB0Y8g0LTQu9GPINC/0L7RgdC70LXQtNGD0Y7RidC40YUg0LrQvtC80LDQvdC0LCDQstGL0L/QvtC70L3Rj9GO0YnQuNGF0YHRjyAiCisi0LTQsNC70LXQtSDQsiDRjdGC0L7QvCDQt9Cw0L/Rg9GB0LrQtS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MjUzIGRwa2ctYXJjaGl0ZWN0dXJlLjE6NjAgZHBrZy1idWlsZGZsYWdzLjE6ODkgZHBrZy1kaXZlcnQuODo3MQorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTozOCBkcGtnLXNjYW5zb3VyY2VzLjE6NjYgZHBrZy1zdGF0b3ZlcnJpZGUuODo0NAorIzogZHBrZy12ZW5kb3IuMToyOCBkc2VsZWN0LjE6MTEzIHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMTYKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWhlbHA+IgorbXNnc3RyICJCPGRwa2cgLS1oZWxwPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjI1NgorbXNnaWQgIkRpc3BsYXkgYSBicmllZiBoZWxwIG1lc3NhZ2UuIgorbXNnc3RyICLQktGL0LLQtdGB0YLQuCDQvdC10LHQvtC70YzRiNGD0Y4g0L/QvtC00YHQutCw0LfQutGDLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToyNTYKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWZvcmNlLWhlbHA+IgorbXNnc3RyICJCPGRwa2cgLS1mb3JjZS1oZWxwPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjI1OQorbXNnaWQgIkdpdmUgaGVscCBhYm91dCB0aGUgQjwtLWZvcmNlLT5JPHRoaW5nPiBvcHRpb25zLiIKK21zZ3N0ciAi0JLRi9Cy0LXRgdGC0Lgg0L/QvtC00YHQutCw0LfQutGDINC+INC/0LDRgNCw0LzQtdGC0YDQsNGFIEI8LS1mb3JjZS0+STzRh9GC0L4t0L3QuNCx0YPQtNGMPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MjU5CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LURoPiwgQjwtLWRlYnVnPWhlbHA+IgorbXNnc3RyICJCPC0tbm8tZGVic2lnPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjI2MgorbXNnaWQgIkdpdmUgaGVscCBhYm91dCBkZWJ1Z2dpbmcgb3B0aW9ucy4iCittc2dzdHIgItCS0YvQstC10YHRgtC4INC/0L7QtNGB0LrQsNC30LrRgyDQviDQv9Cw0YDQsNC80LXRgtGA0LDRhSDQvtGC0LvQsNC00LrQuC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MjYyIGRwa2ctYXJjaGl0ZWN0dXJlLjE6NjMgZHBrZy1idWlsZGZsYWdzLjE6OTIKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjI2IGRwa2ctY2hlY2tidWlsZGRlcHMuMTozNiBkcGtnLWRpc3RhZGRmaWxlLjE6MzUKKyM6IGRwa2ctZGViLjE6MTc1IGRwa2ctZGl2ZXJ0Ljg6NzQgZHBrZy1nZW5jaGFuZ2VzLjE6MTM0IGRwa2ctZ2VuY29udHJvbC4xOjEyNAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDQ2IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6NDEgZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjM2CisjOiBkcGtnLXF1ZXJ5LjE6MTEzIGRwa2ctc2NhbnBhY2thZ2VzLjE6OTkgZHBrZy1zY2Fuc291cmNlcy4xOjY4CisjOiBkcGtnLXNobGliZGVwcy4xOjIxOCBkcGtnLXNvdXJjZS4xOjk5IGRwa2ctc3BsaXQuMToxMjkKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6NDcgZHBrZy10cmlnZ2VyLjE6MzQgZHBrZy12ZW5kb3IuMTozMSBkc2VsZWN0LjE6MTE2CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzE5CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS12ZXJzaW9uPiIKK21zZ3N0ciAiQjxkcGtnIC0tdmVyc2lvbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyNjUKK21zZ2lkICJEaXNwbGF5IEI8ZHBrZz4gdmVyc2lvbiBpbmZvcm1hdGlvbi4iCittc2dzdHIgItCf0L7QutCw0LfQsNGC0Ywg0LjQvdGE0L7RgNC80LDRhtC40Y4g0L4g0LLQtdGA0YHQuNC4IEI8ZHBrZz4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjI2NQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPGRwa2ctZGViIGFjdGlvbnM+IgorbXNnc3RyICJCPGRwa2ctZGViLWFjdGlvbnM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MjY4Cittc2dpZCAiU2VlIEI8ZHBrZy1kZWI+KDEpIGZvciBtb3JlIGluZm9ybWF0aW9uIGFib3V0IHRoZSBmb2xsb3dpbmcgYWN0aW9ucy4iCittc2dzdHIgIiIKKyLQodC80L7RgtGA0LjRgtC1IEI8ZHBrZy1kZWI+KDEpINC00LvRjyDQsdC+0LvQtdC1INC/0L7QtNGA0L7QsdC90L7QuSDQuNC90YTQvtGA0LzQsNGG0LjQuCDQviDQvdC40LbQtdGB0LvQtdC00YPRjtGJ0LjRhSAiCisi0LTQtdC50YHRgtCy0LjRj9GFLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjI4OAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICIiCisiQjwtYj4sIEI8LS1idWlsZD4gSTxkaXJlY3Rvcnk+IFtJPGFyY2hpdmU+fEk8ZGlyZWN0b3J5Pl1cbiIKKyIgICAgQnVpbGQgYSBkZWIgcGFja2FnZS5cbiIKKyJCPC1jPiwgQjwtLWNvbnRlbnRzPiBJPGFyY2hpdmU+XG4iCisiICAgIExpc3QgY29udGVudHMgb2YgYSBkZWIgcGFja2FnZS5cbiIKKyJCPC1lPiwgQjwtLWNvbnRyb2w+IEk8ZmlsZW5hbWU+IFtJPGRpcmVjdG9yeT5dXG4iCisiICAgIEV4dHJhY3QgY29udHJvbC1pbmZvcm1hdGlvbiBmcm9tIGEgcGFja2FnZS5cbiIKKyJCPC14PiwgQjwtLWV4dHJhY3Q+IEk8YXJjaGl2ZSBkaXJlY3Rvcnk+XG4iCisiICAgIEV4dHJhY3QgdGhlIGZpbGVzIGNvbnRhaW5lZCBieSBwYWNrYWdlLlxuIgorIkI8LVg+LCBCPC0tdmV4dHJhY3Q+IEk8YXJjaGl2ZSBkaXJlY3Rvcnk+XG4iCisiICAgIEV4dHJhY3QgYW5kIGRpc3BsYXkgdGhlIGZpbGVuYW1lcyBjb250YWluZWQgYnkgYVxuIgorIiAgICBwYWNrYWdlLlxuIgorIkI8LWY+LCBCPC0tZmllbGQ+ICBJPGFyY2hpdmU+IFtJPGNvbnRyb2wtZmllbGQ+Li4uXVxuIgorIiAgICBEaXNwbGF5IGNvbnRyb2wgZmllbGQocykgb2YgYSBwYWNrYWdlLlxuIgorIkI8LS1mc3lzLXRhcmZpbGU+IEk8YXJjaGl2ZT5cbiIKKyIgICAgRGlzcGxheSB0aGUgZmlsZXN5c3RlbSB0YXItZmlsZSBjb250YWluZWQgYnkgYVxuIgorIiAgICBEZWJpYW4gcGFja2FnZS5cbiIKKyJCPC1JPiwgQjwtLWluZm8+IEk8YXJjaGl2ZT4gW0k8Y29udHJvbC1maWxlPi4uLl1cbiIKKyIgICAgU2hvdyBpbmZvcm1hdGlvbiBhYm91dCBhIHBhY2thZ2UuXG4iCittc2dzdHIgIiIKKyJCPGRwa2cgLWI+IHwgQjwtLWJ1aWxkPiBJPNC60LDRgtCw0LvQvtCzPiBbSTzQuNC80Y8g0YTQsNC50LvQsD5dXG4iCisiICAgINCh0L7QsdC40YDQsNC10YIgZGViINC/0LDQutC10YIuXG4iCisiQjxkcGtnIC1jPiB8IEI8LS1jb250ZW50cz4gSTzQuNC80Y8g0YTQsNC50LvQsD5cbiIKKyIgICAg0J/QvtC60LDQt9GL0LLQsNC10YIg0YHQvtC00LXRgNC20LjQvNC+0LUgZGViINC/0LDQutC10YLQsC5cbiIKKyJCPGRwa2cgLWU+IHwgQjwtLWNvbnRyb2w+IEk80LjQvNGPINGE0LDQudC70LA+IFtJPNC60LDRgtCw0LvQvtCzPl1cbiIKKyIgICAg0JjQt9Cy0LvQtdC60LDQtdGCINGD0L/RgNCw0LLQu9GP0Y7RidGD0Y4g0LjQvdGE0L7RgNC80LDRhtC40Y4g0LjQtyDQv9Cw0LrQtdGC0LAuXG4iCisiQjxkcGtnIC14PiB8IEI8LS1leHRyYWN0PiBJPNC40LzRjyDRhNCw0LnQu9CwPiA80LrQsNGC0LDQu9C+0LM+XG4iCisiICAgINCY0LfQstC70LXQutCw0LXRgiDRhNCw0LnQu9GLLCDRgdC+0LTQtdGA0LbQsNGJ0LjQtdGB0Y8g0LIg0LTQsNC90L3QvtC8INC/0LDQutC10YLQtS5cbiIKKyJCPGRwa2cgLWY+IHwgQjwtLWZpZWxkPiAgSTzQuNC80Y8g0YTQsNC50LvQsD4gW0k80YPQv9GA0LDQstC70Y/RjtGJ0LXQtS3Qv9C+0LvQtT5dIC4uLlxuIgorIiAgICDQn9C+0LrQsNC30YvQstCw0LXRgiDRg9C/0YDQsNCy0LvRj9GO0YnQtdC1KNC40LUpINC/0L7Qu9C1KNGPKSDQv9Cw0LrQtdGC0LAuXG4iCisiQjxkcGtnIC0tZnN5cy10YXJmaWxlPiBJPNC40LzRjyDRhNCw0LnQu9CwPlxuIgorIiAgICDQktGL0LTQsNC10YIg0L3QsCDRgdGC0LDQvdC00LDRgNGC0L3Ri9C5INCy0YvQstC+0LQgdGFyLdGE0LDQudC7INGBINGE0LDQudC70L7QstC+0LlcbiIKKyIgICAg0YHQuNGB0YLQtdC80L7QuSDQuNC3INGD0LrQsNC30LDQvdC90L7Qs9C+INC/0LDQutC10YLQsCBEZWJpYW4uXG4iCisiQjxkcGtnIC1JPiB8IEI8LS1pbmZvPiBJPNC40LzRjyDRhNCw0LnQu9CwPiBbSTzRhNCw0LnQuyBjb250cm9sPl1cbiIKKyIgICAg0JLRi9C00LDQtdGCINC40L3RhNC+0YDQvNCw0YbQuNGOINC+INC00LDQvdC90L7QvCDQv9Cw0LrQtdGC0LUuXG4iCisiQjxkcGtnIC1YPiB8IEI8LS12ZXh0cmFjdD4gSTzQuNC80Y8g0YTQsNC50LvQsD4gSTzQutCw0YLQsNC70L7Qsz5cbiIKKyIgICAg0JjQt9Cy0LvQtdC60LDQtdGCINC4INCy0YvQtNCw0LXRgiDQuNC80LXQvdCwINGE0LDQudC70L7Qsiwg0YHQvtC00LXRgNC20LDRidC40LXRgdGPINCyINC/0LDQutC10YLQtS5cbiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToyOTAKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxkcGtnLXF1ZXJ5IGFjdGlvbnM+IgorbXNnc3RyICJCPGRwa2ctcXVlcnktYWN0aW9ucz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyOTMKK21zZ2lkICJTZWUgQjxkcGtnLXF1ZXJ5PigxKSBmb3IgbW9yZSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgZm9sbG93aW5nIGFjdGlvbnMuIgorbXNnc3RyICIiCisi0KHQvNC+0YLRgNC40YLQtSBCPGRwa2ctcXVlcnk+KDEpINC00LvRjyDQsdC+0LvQtdC1INC/0L7QtNGA0L7QsdC90L7QuSDQuNC90YTQvtGA0LzQsNGG0LjQuCDQviDQvdC40LbQtdGB0LvQtdC00YPRjtGJ0LjRhSAiCisi0LTQtdC50YHRgtCy0LjRj9GFLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjMwOAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICIiCisiQjwtbD4sIEI8LS1saXN0PiBJPHBhY2thZ2UtbmFtZS1wYXR0ZXJuPi4uLlxuIgorIiAgICBMaXN0IHBhY2thZ2VzIG1hdGNoaW5nIGdpdmVuIHBhdHRlcm4uXG4iCisiQjwtcz4sIEI8LS1zdGF0dXM+IEk8cGFja2FnZS1uYW1lPi4uLlxuIgorIiAgICBSZXBvcnQgc3RhdHVzIG9mIHNwZWNpZmllZCBwYWNrYWdlLlxuIgorIkI8LUw+LCBCPC0tbGlzdGZpbGVzPiBJPHBhY2thZ2UtbmFtZT4uLi5cbiIKKyIgICAgTGlzdCBmaWxlcyBpbnN0YWxsZWQgdG8geW91ciBzeXN0ZW0gZnJvbSBJPHBhY2thZ2UtbmFtZT4uXG4iCisiQjwtUz4sIEI8LS1zZWFyY2g+IEk8ZmlsZW5hbWUtc2VhcmNoLXBhdHRlcm4+Li4uXG4iCisiICAgIFNlYXJjaCBmb3IgYSBmaWxlbmFtZSBmcm9tIGluc3RhbGxlZCBwYWNrYWdlcy5cbiIKKyJCPC1wPiwgQjwtLXByaW50LWF2YWlsPiBJPHBhY2thZ2UtbmFtZT4uLi5cbiIKKyIgICAgRGlzcGxheSBkZXRhaWxzIGFib3V0IEk8cGFja2FnZS1uYW1lPiwgYXMgZm91bmQgaW5cbiIKKyIgICAgSTwvdmFyL2xpYi9kcGtnL2F2YWlsYWJsZT4uIFVzZXJzIG9mIEFQVC1iYXNlZCBmcm9udGVuZHNcbiIKKyIgICAgc2hvdWxkIHVzZSBCPGFwdC1jYWNoZSBzaG93PiBJPHBhY2thZ2UtbmFtZT4gaW5zdGVhZC5cbiIKK21zZ3N0ciAiIgorIkI8ZHBrZyAtbD4gfCBCPC0tbGlzdCA+IEk80YjQsNCx0LvQvtC9INC40LzQtdC90Lgg0L/QsNC60LXRgtCwPiAuLi5cbiIKKyIgICAg0J/QvtC60LDQt9GL0LLQsNC10YIg0L/QsNC60LXRgtGLLCDRgdC+0L7RgtCy0LXRgtGB0YLQstGD0Y7RidC40LUg0LTQsNC90L3QvtC80YMg0YjQsNCx0LvQvtC90YMuXG4iCisiQjxkcGtnIC1zPiB8IEI8LS1zdGF0dXMgPiBJPNC40LzRjyDQv9Cw0LrQtdGC0LA+IC4uLlxuIgorIiAgICDQodC+0L7QsdGJ0LDQtdGCINC+INGB0L7RgdGC0L7Rj9C90LjQuCDRg9C60LDQt9Cw0L3QvdC+0LPQviDQv9Cw0LrQtdGC0LAuXG4iCisiQjxkcGtnIC1MPiB8IEI8LS1saXN0ZmlsZXM+IEk80LjQvNGPINC/0LDQutC10YLQsD4gLi4uXG4iCisiICAgINCf0L7QutCw0LfRi9Cy0LDQtdGCINGE0LDQudC70YssINGD0YHRgtCw0L3QvtCy0LvQtdC90L3Ri9C1INCyINGB0LjRgdGC0LXQvNC1INC40Lcg0L/QsNC60LXRgtCwINGBINGD0LrQsNC30LDQvdC90YvQvCDQuNC80LXQvdC10LwuXG4iCisiQjxkcGtnIC1TPiB8IEI8LS1zZWFyY2g+IEk80YjQsNCx0LvQvtC9INC40LzQtdC90Lgg0YTQsNC50LvQsD4gLi4uXG4iCisiICAgINCY0YnQtdGCINCyINGD0YHRgtCw0L3QvtCy0LvQtdC90L3Ri9GFINC/0LDQutC10YLQsNGFINC40LzRjyDRhNCw0LnQu9CwINC/0L4g0LfQsNC00LDQvdC90L7QvNGDINGI0LDQsdC70L7QvdGDLlxuIgorIkI8ZHBrZyAtcD4gfCBCPC0tcHJpbnQtYXZhaWw+IEkgPNC40LzRjyDQv9Cw0LrQtdGC0LA+XG4iCisiICAgINCS0YvQstC+0LTQuNGCINC00LXRgtCw0LvRjNC90YPRjiDQuNC90YTQvtGA0LzQsNGG0LjRjiDQviBJPNC/0LDQutC10YLQtT4sINC60L7RgtC+0YDRg9GOINC40LfQstC70LXQutCw0LXRglxuIgorIiAgICDQuNC3INGE0LDQudC70LAgSTwvdmFyL2xpYi9kcGtnL2F2YWlsYWJsZT4uXG4iCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLjE6MzEwIGRwa2ctYXJjaGl0ZWN0dXJlLjE6NjcgZHBrZy1idWlsZHBhY2thZ2UuMTo1MAorIzogZHBrZy1jaGVja2J1aWxkZGVwcy4xOjE4IGRwa2ctZGlzdGFkZGZpbGUuMToyNyBkcGtnLWRlYi4xOjE3OQorIzogZHBrZy1kaXZlcnQuODo0MiBkcGtnLWdlbmNoYW5nZXMuMToxNyBkcGtnLWdlbmNvbnRyb2wuMTozNworIzogZHBrZy1nZW5zeW1ib2xzLjE6MzY5IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6MjcgZHBrZy1uYW1lLjE6MzAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxNSBkcGtnLXF1ZXJ5LjE6MTE3IGRwa2ctc2NhbnBhY2thZ2VzLjE6NzEKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMTo0NCBkcGtnLXNobGliZGVwcy4xOjEwNiBkcGtnLXNwbGl0LjE6MTMzCisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjUxIGRwa2ctdHJpZ2dlci4xOjM4IGRwa2ctdmVuZG9yLjE6MzUgZHNlbGVjdC4xOjM2CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjEwMyB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzIzCisjLCBuby13cmFwCittc2dpZCAiT1BUSU9OUyIKK21zZ3N0ciAi0J/QkNCg0JDQnNCV0KLQoNCrIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzE2CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJBbGwgb3B0aW9ucyBjYW4gYmUgc3BlY2lmaWVkIGJvdGggb24gdGhlIGNvbW1hbmQgbGluZSBhbmQgaW4gdGhlIEI8ZHBrZz4gIgorI3wgImNvbmZpZ3VyYXRpb24gZmlsZSBJPC9ldGMvZHBrZy9kcGtnLmNmZz4uIEVhY2ggbGluZSBpbiB0aGUgY29uZmlndXJhdGlvbiAiCisjfCAiZmlsZSBpcyBlaXRoZXIgYW4gb3B0aW9uIChleGFjdGx5IHRoZSBzYW1lIGFzIHRoZSBjb21tYW5kIGxpbmUgb3B0aW9uIGJ1dCAiCisjfCAid2l0aG91dCBsZWFkaW5nIGRhc2hlcykgb3IgYSBjb21tZW50IChpZiBpdCBzdGFydHMgd2l0aCBhIEI8Iz4pLiIKK21zZ2lkICIiCisiQWxsIG9wdGlvbnMgY2FuIGJlIHNwZWNpZmllZCBib3RoIG9uIHRoZSBjb21tYW5kIGxpbmUgYW5kIGluIHRoZSBCPGRwa2c+ICIKKyJjb25maWd1cmF0aW9uIGZpbGUgSTwvZXRjL2Rwa2cvZHBrZy5jZmc+IG9yIHRoZSBmaWxlcyBvbiB0aGUgY29uZmlndXJhdGlvbiAiCisiZGlyZWN0b3J5IEk8L2V0Yy9kcGtnL2Rwa2cuY2ZnLmQvPi4gRWFjaCBsaW5lIGluIHRoZSBjb25maWd1cmF0aW9uIGZpbGUgaXMgIgorImVpdGhlciBhbiBvcHRpb24gKGV4YWN0bHkgdGhlIHNhbWUgYXMgdGhlIGNvbW1hbmQgbGluZSBvcHRpb24gYnV0IHdpdGhvdXQgIgorImxlYWRpbmcgZGFzaGVzKSBvciBhIGNvbW1lbnQgKGlmIGl0IHN0YXJ0cyB3aXRoIGEgQjwjPikuIgorbXNnc3RyICIiCisi0JLRgdC1INC/0LDRgNCw0LzQtdGC0YDRiyDQvNC+0LbQvdC+INGD0LrQsNC30YvQstCw0YLRjCDQutCw0Log0LIg0LrQvtC80LDQvdC00L3QvtC5INGB0YLRgNC+0LrQtSwg0YLQsNC6INC4INCyICIKKyLQutC+0L3RhNC40LPRg9GA0LDRhtC40L7QvdC90L7QvCDRhNCw0LnQu9C1IEI8ZHBrZz4gLS0gSTwvZXRjL2Rwa2cvZHBrZy5jZmc+LiDQmtCw0LbQtNCw0Y8g0YHRgtGA0L7QutCwINCyICIKKyLQutC+0L3RhNC40LPRg9GA0LDRhtC40L7QvdC90L7QvCDRhNCw0LnQu9C1INC00L7Qu9C20L3QsCDQsdGL0YLRjCDQu9C40LHQviDQv9Cw0YDQsNC80LXRgtGA0L7QvCAo0LIg0YLQvtGH0L3QvtGB0YLQuCDQutCw0Log0LIgIgorItC60L7QvNCw0L3QtNC90L7QuSDRgdGC0YDQvtC60LUsINC90L4g0LHQtdC3INC90LDRh9Cw0LvRjNC90YvRhSDQtNC10YTQuNGB0L7QsiksINC70LjQsdC+INC60L7QvNC80LXQvdGC0LDRgNC40LXQvCAo0LXRgdC70LggIgorItC90LDRh9C40L3QsNC10YLRgdGPINGBIEI8Iz4pLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTozMTcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tYWJvcnQtYWZ0ZXI9Pkk8bnVtYmVyPiIKK21zZ3N0ciAiQjwtLWFib3J0LWFmdGVyPT5JPNGH0LjRgdC70L4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzIwCisjLCBmdXp6eQorbXNnaWQgIkNoYW5nZSBhZnRlciBob3cgbWFueSBlcnJvcnMgQjxkcGtnPiB3aWxsIGFib3J0LiBUaGUgZGVmYXVsdCBpcyA1MC4iCittc2dzdHIgIiIKKyLQl9Cw0LTQsNGC0Ywg0LrQvtC70LjRh9C10YHRgtCy0L4g0L7RiNC40LHQvtC6INC/0L7RgdC70LUg0LrQvtGC0L7RgNC+0LPQviBkcGtnINCw0LLQsNGA0LjQudC90L4g0LfQsNCy0LXRgNGI0LjRgtGB0Y8uINCf0L4gIgorItGD0LzQvtC70YfQsNC90LjRjiA1MC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MzIwCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LUI+LCBCPC0tYXV0by1kZWNvbmZpZ3VyZT4iCittc2dzdHIgIkI8LUI+fEI8LS1hdXRvLWRlY29uZmlndXJlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjMyNgorbXNnaWQgIiIKKyJXaGVuIGEgcGFja2FnZSBpcyByZW1vdmVkLCB0aGVyZSBpcyBhIHBvc3NpYmlsaXR5IHRoYXQgYW5vdGhlciBpbnN0YWxsZWQgIgorInBhY2thZ2UgZGVwZW5kZWQgb24gdGhlIHJlbW92ZWQgcGFja2FnZS4gU3BlY2lmeWluZyB0aGlzIG9wdGlvbiB3aWxsIGNhdXNlICIKKyJhdXRvbWF0aWMgZGVjb25maWd1cmF0aW9uIG9mIHRoZSBwYWNrYWdlIHdoaWNoIGRlcGVuZGVkIG9uIHRoZSByZW1vdmVkICIKKyJwYWNrYWdlLiIKK21zZ3N0ciAiIgorItCf0YDQuCDRg9C00LDQu9C10L3QuNC4INC/0LDQutC10YLQsCDQtdGB0YLRjCDQstC10YDQvtGP0YLQvdC+0YHRgtGMLCDRh9GC0L4g0LXRgdGC0Ywg0LTRgNGD0LPQvtC5INGD0YHRgtCw0L3QvtCy0LvQtdC90L3Ri9C5INC/0LDQutC10YIgIgorItC30LDQstC40YHRj9GJ0LjQuSDQvtGCINGD0LTQsNC70Y/QtdC80L7Qs9C+INC/0LDQutC10YLQsC4g0KPQutCw0LfQsNC90LjQtSDRjdGC0L7Qs9C+INC/0LDRgNCw0LzQtdGC0YDQsCDQv9GA0LjQstC10LTRkdGCINC6ICIKKyLQsNCy0YLQvtC80LDRgtC40YfQtdGB0LrQvtC5INC00LXQutC+0L3RhNC40LPRg9GA0LDRhtC40Lgg0L/QsNC60LXRgtCwLCDQutC+0YLQvtGA0YvQuSDQt9Cw0LLQuNGB0LjRgiDQvtGCINGD0LTQsNC70Y/QtdC80L7Qs9C+INC/0LDQutC10YLQsC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MzI2CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LUQ+STxvY3RhbD5CPCwgLS1kZWJ1Zz0+STxvY3RhbD4iCittc2dzdHIgIkI8LUQ+STxvY3RhbD5CPCB8IC0tZGVidWc9Pkk8b2N0YWw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzMyCisjLCBmdXp6eQorbXNnaWQgIiIKKyJTd2l0Y2ggZGVidWdnaW5nIG9uLiBJPG9jdGFsPiBpcyBmb3JtZWQgYnkgYml0d2lzZS1vcnJpbmcgZGVzaXJlZCB2YWx1ZXMgIgorInRvZ2V0aGVyIGZyb20gdGhlIGxpc3QgYmVsb3cgKG5vdGUgdGhhdCB0aGVzZSB2YWx1ZXMgbWF5IGNoYW5nZSBpbiBmdXR1cmUgIgorInJlbGVhc2VzKS4gQjwtRGg+IG9yIEI8LS1kZWJ1Zz1oZWxwPiBkaXNwbGF5IHRoZXNlIGRlYnVnZ2luZyB2YWx1ZXMuIgorbXNnc3RyICIiCisi0JLQutC70Y7Rh9C40YLRjCDQvtGC0LvQsNC00LrRgy4gSTxvY3RhbD4gLS0g0Y3RgtC+INCy0L7RgdGM0LzQtdGA0LjRh9C90L7QtSDRh9C40YHQu9C+LCDRgdGE0L7RgNC80LjRgNC+0LLQsNC90L3QvtC1INC/0L7QsdC40YLQvdC+ICIKKyLQuNC3INC90LjQttC10YPQutCw0LfQsNC90L3Ri9GFINCx0LjRgtC+0LLRi9GFINC80LDRgdC+0LosICjQt9Cw0LzQtdGC0LjQvCwg0YfRgtC+INGN0YLQuCDQstC10LvQuNGH0LjQvdGLINC80L7Qs9GD0YIg0LHRi9GC0YwgIgorItC40LfQvNC10L3QtdC90Ysg0LIg0YHQu9C10LTRg9GO0YnQuNGFINCy0LXRgNGB0LjRj9GFKS4g0J/QsNGA0LDQvNC10YLRgNGLIEI8LURoPiDQuNC70LggQjwtLWRlYnVnLWhlbHA+INCy0YvQstC+0LTRj9GCICIKKyLRjdGC0Lgg0L7RgtC70LDQtNC+0YfQvdGL0LUg0LfQvdCw0YfQtdC90LjRjy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTozNDcKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiIgorIiAgICBOdW1iZXIgICBEZXNjcmlwdGlvblxuIgorIiAgICAgICAgIDEgICBHZW5lcmFsbHkgaGVscGZ1bCBwcm9ncmVzcyBpbmZvcm1hdGlvblxuIgorIiAgICAgICAgIDIgICBJbnZvY2F0aW9uIGFuZCBzdGF0dXMgb2YgbWFpbnRhaW5lciBzY3JpcHRzXG4iCisiICAgICAgICAxMCAgIE91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZFxuIgorIiAgICAgICAxMDAgICBMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZFxuIgorIiAgICAgICAgMjAgICBPdXRwdXQgZm9yIGVhY2ggY29uZmlndXJhdGlvbiBmaWxlXG4iCisiICAgICAgIDIwMCAgIExvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZVxuIgorIiAgICAgICAgNDAgICBEZXBlbmRlbmNpZXMgYW5kIGNvbmZsaWN0c1xuIgorIiAgICAgICA0MDAgICBMb3RzIG9mIGRlcGVuZGVuY2llcy9jb25mbGljdHMgb3V0cHV0XG4iCisiICAgICAxMDAwMCAgIFRyaWdnZXIgYWN0aXZhdGlvbiBhbmQgcHJvY2Vzc2luZ1xuIgorIiAgICAgMjAwMDAgICBMb3RzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnNcbiIKKyIgICAgIDQwMDAwICAgU2lsbHkgYW1vdW50cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzXG4iCisiICAgICAgMTAwMCAgIExvdHMgb2YgZHJpdmVsIGFib3V0IGUuZy4gdGhlIGRwa2cvaW5mbyBkaXJcbiIKKyIgICAgICAyMDAwICAgSW5zYW5lIGFtb3VudHMgb2YgZHJpdmVsXG4iCittc2dzdHIgIiIKKyLQnNCw0YHQutCwICAg0J7Qv9C40YHQsNC90LjQtVxuIgorIiAgICAxICAg0J7RgdC90L7QstC90LDRjyDQv9C+0LvQtdC30L3QsNGPINC40L3RhNC+0YDQvNCw0YbQuNGPINC/0L4g0YXQvtC00YMg0LLRi9C/0L7Qu9C90LXQvdC40Y9cbiIKKyIgICAgMiAgINCS0YvQt9C+0LIg0Lgg0YHQvtGB0YLQvtGP0L3QuNGPINGB0LrRgNC40L/RgtC+0LIg0L/QvtC00LTQtdGA0LbQutC4XG4iCisiICAgMTAgICDQktGL0LLQvtC0INC/0L4g0LrQsNC20LTQvtC80YMg0L7QsdGA0LDQsdC+0YLQsNC90L3QvtC80YMg0YTQsNC50LvRg1xuIgorIiAgMTAwICAg0J/QvtC00YDQvtCx0L3Ri9C5INCy0YvQstC+0LQg0L/QviDQutCw0LbQtNC+0LzRgyDQvtCx0YDQsNCx0L7RgtCw0L3QvdC+0LzRgyDRhNCw0LnQu9GDXG4iCisiICAgMjAgICDQktGL0LLQvtC0INC/0L4g0LrQsNC20LTQvtC80YMg0LrQvtC90YTQuNCz0YPRgNCw0YbQuNC+0L3QvdC+0LzRgyDRhNCw0LnQu9GDXG4iCisiICAyMDAgICDQn9C+0LTRgNC+0LHQvdGL0Lkg0LLRi9Cy0L7QtCDQv9C+INC60LDQttC00L7QvNGDINC60L7QvdGE0LjQs9GD0YDQsNGG0LjQvtC90L3QvtC80YMg0YTQsNC50LvRg1xuIgorIiAgIDQwICAg0JfQsNCy0LjRgdC40LzQvtGB0YLQuCDQuCDQutC+0L3RhNC70LjQutGC0YtcbiIKKyIgIDQwMCAgINCf0L7QtNGA0L7QsdC90L7QtSDQvtGB0LLQtdGJ0LXQvdC40LUg0LfQsNCy0LjRgdC40LzQvtGB0YLQtdC5INC4INC60L7QvdGE0LvQuNC60YLQvtCyXG4iCisiIDEwMDAgICDQn9C+0LTRgNC+0LHQvdCw0Y8g0LXRgNGD0L3QtNCwLCDQvdCw0L/RgNC40LzQtdGAINC+INC60LDRgtCw0LvQvtCz0LUgZHBrZy9pbmZvXG4iCisiIDIwMDAgICDQndC10LLQtdGA0L7Rj9GC0L3QvtC1INC60L7Qu9C40YfQtdGB0YLQstC+INC10YDRg9C90LTRi1xuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjM0NworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tZm9yY2UtPkk8dGhpbmdzPiwgQjwtLW5vLWZvcmNlLT5JPHRoaW5ncz4sIEI8LS1yZWZ1c2UtPkk8dGhpbmdzPiIKK21zZ3N0ciAiQjwtLWZvcmNlLT5JPHRoaW5ncz4gfCBCPC0tbm8tZm9yY2UtPkk8dGhpbmdzPiB8IEI8LS1yZWZ1c2UtPkk8dGhpbmdzPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjM1NAorbXNnaWQgIiIKKyJGb3JjZSBvciByZWZ1c2UgKEI8bm8tZm9yY2U+IGFuZCBCPHJlZnVzZT4gbWVhbiB0aGUgc2FtZSB0aGluZykgIHRvIGRvIHNvbWUgIgorInRoaW5ncy4gSTx0aGluZ3M+IGlzIGEgY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2YgdGhpbmdzIHNwZWNpZmllZCBiZWxvdy4gQjwtLSIKKyJmb3JjZS1oZWxwPiBkaXNwbGF5cyBhIG1lc3NhZ2UgZGVzY3JpYmluZyB0aGVtLiAgVGhpbmdzIG1hcmtlZCB3aXRoICgqKSBhcmUgIgorImZvcmNlZCBieSBkZWZhdWx0LiIKK21zZ3N0ciAiIgorItCf0YDQuNC90YPQtNC40YLQtdC70YzQvdC+INCy0YvQv9C+0LvQvdGP0YLRjCDQuNC70Lgg0LbQtSDQvtGC0LrQsNC30YvQstCw0YLRjNGB0Y8g0LLRi9C/0L7Qu9C90Y/RgtGMIChCPG5vLWZvcmNlPiDQuCBCPC0tIgorInJlZnVzZT4g0L7Qt9C90LDRh9Cw0Y7RgiDQvtC00L3QviDQuCDRgtC+INC20LUpINGC0LUg0LjQu9C4INC40L3Ri9C1INCy0LXRidC4LiBJPHRoaW5ncz4gLS0g0Y3RgtC+INGB0L/QuNGB0L7QuiAiCisi0YfQtdGA0LXQtyDQt9Cw0L/Rj9GC0YPRjiDRjdC70LXQvNC10L3RgtC+0LIg0L7Qv9C40YHQsNC90L3Ri9GFINC00LDQu9C10LUpLiBCPC0tZm9yY2UtaGVscD4g0LLRi9C00LDQtdGCINGB0L7QvtCx0YnQtdC90LjQtSwgIgorItC+0L/QuNGB0YvQstCw0Y7RidC40LUg0LjRhS4g0K3Qu9C10LzQtdC90YLRiywg0L7QsdC+0LfQvdCw0YfQtdC90L3Ri9C1INC30LLRkdC30LTQvtGH0LrQvtC5ICgqKSwg0L/RgNC40L3Rg9C00LjRgtC10LvRjNC90L4gIgorItCy0YvQv9C+0LvQvdGP0Y7RgtGB0Y8g0L/QviDRg9C80L7Qu9GH0LDQvdC40Y4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzU4Cittc2dpZCAiIgorIkk8V2FybmluZzogVGhlc2Ugb3B0aW9ucyBhcmUgbW9zdGx5IGludGVuZGVkIHRvIGJlIHVzZWQgYnkgZXhwZXJ0cyBvbmx5LiAiCisiVXNpbmcgdGhlbSB3aXRob3V0IGZ1bGx5IHVuZGVyc3RhbmRpbmcgdGhlaXIgZWZmZWN0cyBtYXkgYnJlYWsgeW91ciB3aG9sZSAiCisic3lzdGVtLj4iCittc2dzdHIgIiIKKyJJPNCf0YDQtdC00YPQv9GA0LXQttC00LXQvdC40LU6INCt0YLQuCDQv9Cw0YDQsNC80LXRgtGA0Ysg0L/RgNC10LTQvdCw0LfQvdCw0YfQtdC90Ysg0YLQvtC70YzQutC+INC00LvRjyDQuNGB0L/QvtC70YzQt9C+0LLQsNC90LjRjyAiCisi0Y3QutGB0L/QtdGA0YLQsNC80LguINCY0YHQv9C+0LvRjNC30L7QstCw0L3QuNC1INCx0LXQtyDQv9C+0LvQvdC+0LPQviDQv9C+0L3QuNC80LDQvdC40Y8g0LjRhSDQtNC10LnRgdGC0LLQuNGPINC80L7QttC10YIg0L3QsNGA0YPRiNC40YLRjCAiCisi0YDQsNCx0L7RgtC+0YHQv9C+0YHQvtCx0L3QvtGB0YLRjCDQstGB0LXQuSDRgdC40YHRgtC10LzRiy4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzYxCisjLCBmdXp6eQorbXNnaWQgIkI8YWxsPjogVHVybnMgb24gKG9yIG9mZikgYWxsIGZvcmNlIG9wdGlvbnMuIgorbXNnc3RyICJCPGFsbD46INCS0LrQu9GO0YfQuNGC0YwgKNC40LvQuCDQstGL0LrQu9GO0YfQuNGC0YwpINCy0YHQtSDQv9GA0LjQvdGD0LTQuNGC0LXQu9GM0L3Ri9C1INC/0LDRgNCw0LzQtdGC0YDRiy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTozNjQKK21zZ2lkICIiCisiQjxkb3duZ3JhZGU+KCopOiBJbnN0YWxsIGEgcGFja2FnZSwgZXZlbiBpZiBuZXdlciB2ZXJzaW9uIG9mIGl0IGlzIGFscmVhZHkgIgorImluc3RhbGxlZC4iCittc2dzdHIgIiIKKyJCPGRvd25ncmFkZT4oKik6INCj0YHRgtCw0L3QvtCy0LjRgtGMINC/0LDQutC10YIsINC00LDQttC1INC10YHQu9C4INGD0LbQtSDRg9GB0YLQsNC90L7QstC70LXQvdCwINC10LPQviDQsdC+0LvQtdC1INC90L7QstCw0Y8gIgorItCy0LXRgNGB0LjRjy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTozNzEKK21zZ2lkICIiCisiSTxXYXJuaW5nOiBBdCBwcmVzZW50IGRwa2cgZG9lcyBub3QgZG8gYW55IGRlcGVuZGVuY3kgY2hlY2tpbmcgb24gZG93bmdyYWRlcyAiCisiYW5kIHRoZXJlZm9yZSB3aWxsIG5vdCB3YXJuIHlvdSBpZiB0aGUgZG93bmdyYWRlIGJyZWFrcyB0aGUgZGVwZW5kZW5jeSBvZiAiCisic29tZSBvdGhlciBwYWNrYWdlLiBUaGlzIGNhbiBoYXZlIHNlcmlvdXMgc2lkZSBlZmZlY3RzLCBkb3duZ3JhZGluZyAiCisiZXNzZW50aWFsIHN5c3RlbSBjb21wb25lbnRzIGNhbiBldmVuIG1ha2UgeW91ciB3aG9sZSBzeXN0ZW0gdW51c2FibGUuIFVzZSAiCisid2l0aCBjYXJlLj4iCittc2dzdHIgIiIKKyJJPNCf0YDQtdC00YPQv9GA0LXQttC00LXQvdC40LU6INCd0LAg0LTQsNC90L3Ri9C5INC80L7QvNC10L3RgiBkcGtnINC90LUg0LLRi9C/0L7Qu9C90Y/QtdGCINC/0YDQvtCy0LXRgNC60YMg0LfQsNCy0LjRgdC40LzQvtGB0YLQtdC5ICIKKyLQv9GA0Lgg0L/QtdGA0LXRhdC+0LTQtSDQvdCwINCx0L7Qu9C10LUg0YHRgtCw0YDRg9GOINCy0LXRgNGB0LjRjiDQuCDQv9C+0Y3RgtC+0LzRgyDQvdC1INC/0YDQtdC00YPQv9GA0LXQtNC40YIg0LXRgdC70Lgg0Y3RgtC+ICIKKyLQv9C+0LvQvtC80LDQtdGCINC30LDQstC40YHQuNC80L7RgdGC0Lgg0YEg0L7RgdGC0LDQu9GM0L3Ri9C80Lgg0L/QsNC60LXRgtCw0LzQuC4g0K3RgtC+INC80L7QttC10YIg0LjQvNC10YLRjCDRgdC10YDRjNGR0LfQvdGL0LUgIgorItC/0L7RgdC70LXQtNGB0YLQstC40Y86INC30LDQvNC10L3QsCDQvdCwINCx0L7Qu9C10LUg0YHRgtCw0YDRg9GOINCy0LXRgNGB0LjRjiDRgdC40YHRgtC10LzQvdGL0YUg0LrQvtC80L/QvtC90LXQvdGC0L7QsiDQv9C10YDQstC+0LkgIgorItC90LXQvtCx0YXQvtC00LjQvNC+0YHRgtC4INC80L7QttC10YIg0L/RgNC40LLQtdGB0YLQuCDQuiDQv9C+0LvQvdC+0Lkg0L3QtdGA0LDQsdC+0YLQvtGB0L/QvtGB0L7QsdC90L7RgdGC0Lgg0YHQuNGB0YLQtdC80YsuICIKKyLQmNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0L7RgdGC0L7RgNC+0LbQvdC+Lj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTozNzUKK21zZ2lkICIiCisiQjxjb25maWd1cmUtYW55PjogQ29uZmlndXJlIGFsc28gYW55IHVucGFja2VkIGJ1dCB1bmNvbmZpZ3VyZWQgcGFja2FnZXMgb24gIgorIndoaWNoIHRoZSBjdXJyZW50IHBhY2thZ2UgZGVwZW5kcy4iCittc2dzdHIgIiIKKyJCPGNvbmZpZ3VyZS1hbnk+OiDQndCw0YHRgtGA0L7QuNGC0Ywg0YLQsNC60LbQtSDQstGB0LUg0YDQsNGB0L/QsNC60L7QstCw0L3QvdGL0LUsINC90L4g0L3QtdC90LDRgdGC0YDQvtC10L3QvdGL0LUgIgorItC/0LDQutC10YLRiywg0L7RgiDQutC+0YLQvtGA0YvRhSDQt9Cw0LLQuNGB0LjRgiDRgtC10LrRg9GJ0LjQuSDQv9Cw0LrQtdGCLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjM3OAorbXNnaWQgIkI8aG9sZD46IFByb2Nlc3MgcGFja2FnZXMgZXZlbiB3aGVuIG1hcmtlZCBcImhvbGRcIi4iCittc2dzdHIgIkI8aG9sZD46INCe0LHRgNCw0LHQsNGC0YvQstCw0YLRjCDQtNCw0LbQtSDQv9Cw0LrQtdGC0YssINC/0L7QvNC10YfQtdC90L3Ri9C1INC60LDQuiBcItC30LDRhNC40LrRgdC40YDQvtCy0LDQvdC90YvQtVwiLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjM4MworbXNnaWQgIiIKKyJCPHJlbW92ZS1yZWluc3RyZXE+OiBSZW1vdmUgYSBwYWNrYWdlLCBldmVuIGlmIGl0J3MgYnJva2VuIGFuZCBtYXJrZWQgdG8gIgorInJlcXVpcmUgcmVpbnN0YWxsYXRpb24uIFRoaXMgbWF5LCBmb3IgZXhhbXBsZSwgY2F1c2UgcGFydHMgb2YgdGhlIHBhY2thZ2UgdG8gIgorInJlbWFpbiBvbiB0aGUgc3lzdGVtLCB3aGljaCB3aWxsIHRoZW4gYmUgZm9yZ290dGVuIGJ5IEI8ZHBrZz4uIgorbXNnc3RyICIiCisiQjxyZW1vdmUtcmVpbnN0cmVxPjog0KPQtNCw0LvQuNGC0Ywg0L/QsNC60LXRgiwg0LTQsNC20LUg0LXRgdC70Lgg0L7QvSDRgdC70L7QvNCw0L0g0Lgg0L7RgtC80LXRh9C10L0g0LrQsNC6ICIKKyLRgtGA0LXQsdGD0Y7RidC40Lkg0L/QtdGA0LXRg9GB0YLQsNC90L7QstC60LguINCt0YLQviDQvNC+0LbQtdGCLCDQvdCw0L/RgNC40LzQtdGALCDQv9GA0LjQstC10YHRgtC4INC6INGC0L7QvNGDLCDRh9GC0L4g0YfQsNGB0YLQuCAiCisi0L/QsNC60LXRgtCwINC+0YHRgtCw0L3Rg9GC0YHRjyDQsiDRgdC40YHRgtC10LzQtSwg0LAgQjxkcGtnPiDQv9GA0L4g0L3QuNGFINC30LDQsdGD0LTQtdGCLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjM4OAorbXNnaWQgIiIKKyJCPHJlbW92ZS1lc3NlbnRpYWw+OiBSZW1vdmUsIGV2ZW4gaWYgdGhlIHBhY2thZ2UgaXMgY29uc2lkZXJlZCBlc3NlbnRpYWwuICIKKyJFc3NlbnRpYWwgcGFja2FnZXMgY29udGFpbiBtb3N0bHkgdmVyeSBiYXNpYyBVbml4IGNvbW1hbmRzLiBSZW1vdmluZyB0aGVtICIKKyJtaWdodCBjYXVzZSB0aGUgd2hvbGUgc3lzdGVtIHRvIHN0b3Agd29ya2luZywgc28gdXNlIHdpdGggY2F1dGlvbi4iCittc2dzdHIgIiIKKyJCPHJlbW92ZS1lc3NlbnRpYWw+OiDQo9C00LDQu9C40YLRjCwg0LTQsNC20LUg0LXRgdC70Lgg0Y3RgtC+INC/0LDQutC10YIg0L/QtdGA0LLQvtC5INC90LXQvtCx0YXQvtC00LjQvNC+0YHRgtC4ICIKKyIo0LjQvNC10LXRgiDQv9GA0LjQvtGA0LjRgtC10YIgXCJFc3NlbnRpYWxcIikuINCt0YLQuCDQv9Cw0LrQtdGC0Ysg0LIg0L7RgdC90L7QstC90L7QvCDRgdC+0LTQtdGA0LbQsNGCINCx0LDQt9C+0LLRi9C1ICIKKyLQutC+0LzQsNC90LTRiyBVbml4LiDQo9C00LDQu9C10L3QuNC1INGC0LDQutC+0LPQviDQv9Cw0LrQtdGC0LAg0LzQvtC20LXRgiDQv9GA0LjQstC10YHRgtC4INC6INC/0L7RgtC10YDQtSAiCisi0YDQsNCx0L7RgtC+0YHQv9C+0YHQvtCx0L3QvtGB0YLQuCDRgdC40YHRgtC10LzRiywg0YLQsNC6INGH0YLQviDQuNGB0L/QvtC70YzQt9GD0LnRgtC1INC00LDQvdC90YvQuSDQv9Cw0YDQsNC80LXRgtGAINC+0YHRgtC+0YDQvtC20L3Qvi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTozOTEKK21zZ2lkICJCPGRlcGVuZHM+OiBUdXJuIGFsbCBkZXBlbmRlbmN5IHByb2JsZW1zIGludG8gd2FybmluZ3MuIgorbXNnc3RyICJCPGRlcGVuZHM+OiDQn9GA0LXQstGA0LDRgtC40YLRjCDQv9GA0L7QsdC70LXQvNGLINGBINC30LDQstC40YHQuNC80L7RgdGC0Y/QvNC4INCyINC/0YDQtdC00YPQv9GA0LXQttC00LXQvdC40Y8uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6Mzk0Cittc2dpZCAiIgorIkI8ZGVwZW5kcy12ZXJzaW9uPjogRG9uJ3QgY2FyZSBhYm91dCB2ZXJzaW9ucyB3aGVuIGNoZWNraW5nIGRlcGVuZGVuY2llcy4iCittc2dzdHIgIiIKKyJCPGRlcGVuZHMtdmVyc2lvbj46INCd0LUg0L7QsdGA0LDRidCw0YLRjCDQstC90LjQvNCw0L3QuNC1INC90LAg0LLQtdGA0YHQuNC4INC/0YDQuCDQv9GA0L7QstC10YDQutC1INC30LDQstC40YHQuNC80L7RgdGC0LXQuS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTozOTcKK21zZ2lkICJCPGJyZWFrcz46IEluc3RhbGwsIGV2ZW4gaWYgdGhpcyB3b3VsZCBicmVhayBhbm90aGVyIHBhY2thZ2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0MDEKK21zZ2lkICIiCisiQjxjb25mbGljdHM+OiBJbnN0YWxsLCBldmVuIGlmIGl0IGNvbmZsaWN0cyB3aXRoIGFub3RoZXIgcGFja2FnZS4gVGhpcyBpcyAiCisiZGFuZ2Vyb3VzLCBmb3IgaXQgd2lsbCB1c3VhbGx5IGNhdXNlIG92ZXJ3cml0aW5nIG9mIHNvbWUgZmlsZXMuIgorbXNnc3RyICIiCisiQjxjb25mbGljdHM+OiDQo9GB0YLQsNC90L7QstC40YLRjCwg0LTQsNC20LUg0LXRgdC70Lgg0L/QsNC60LXRgiDQutC+0L3RhNC70LjQutGC0YPQtdGCINGBINC00YDRg9Cz0LjQvCDQv9Cw0LrQtdGC0L7QvC4g0K3RgtC+ICIKKyLQvtC/0LDRgdC90L4sINGC0LDQuiDQutCw0Log0L7QsdGL0YfQvdC+INC/0YDQuNCy0L7QtNC40YIg0Log0L/QtdGA0LXQt9Cw0L/QuNGB0Lgg0L3QtdC60L7RgtC+0YDRi9GFINGE0LDQudC70L7Qsi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0MDYKKyMsIGZ1enp5Cittc2dpZCAiIgorIkI8Y29uZm1pc3M+OiBBbHdheXMgaW5zdGFsbCBhIG1pc3NpbmcgY29uZmZpbGUuIFRoaXMgaXMgZGFuZ2Vyb3VzLCBzaW5jZSBpdCAiCisibWVhbnMgbm90IHByZXNlcnZpbmcgYSBjaGFuZ2UgKHJlbW92aW5nKSBtYWRlIHRvIHRoZSBmaWxlLiIKK21zZ3N0ciAiIgorIkI8Y29uZm1pc3M+OiDQktGB0LXQs9C00LAg0YPRgdGC0LDQvdCw0LLQu9C40LLQsNGC0Ywg0L/RgNC+0L/Rg9GJ0LXQvdC90YvQuSDQutC+0L3RhNC40LPRg9GA0LDRhtC40L7QvdC90YvQuSDRhNCw0LnQuy4g0K3RgtC+ICIKKyLQvtC/0LDRgdC90L4sINGC0LDQuiDQutCw0Log0L3QtSDQsdGD0LTRg9GCINGB0L7RhdGA0LDQvdC10L3RiyDQuNC30LzQtdC90LXQvdC40Y8gKNGD0LTQsNC70LXQvdC40LUpINGE0LDQudC70LAuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDExCittc2dpZCAiIgorIkI8Y29uZm5ldz46IElmIGEgY29uZmZpbGUgaGFzIGJlZW4gbW9kaWZpZWQgYWx3YXlzIGluc3RhbGwgdGhlIG5ldyB2ZXJzaW9uICIKKyJ3aXRob3V0IHByb21wdGluZywgdW5sZXNzIHRoZSBCPC0tZm9yY2UtY29uZmRlZj4gaXMgYWxzbyBzcGVjaWZpZWQsIGluIHdoaWNoICIKKyJjYXNlIHRoZSBkZWZhdWx0IGFjdGlvbiBpcyBwcmVmZXJyZWQuIgorbXNnc3RyICIiCisiQjxjb25mbmV3Pjog0JXRgdC70Lgg0LrQvtC90YTQuNCz0YPRgNCw0YbQuNC+0L3QvdGL0Lkg0YTQsNC50Lsg0LHRi9C7INC40LfQvNC10L3RkdC9LCDRgtC+INCy0YHQtdCz0LTQsCDRg9GB0YLQsNC90LDQstC70LjQstCw0YLRjCAiCisi0L3QvtCy0YPRjiDQstC10YDRgdC40Y4g0LHQtdC3INC30LDQv9GA0L7RgdCwINC/0L7QtNGC0LLQtdGA0LbQtNC10L3QuNGPLCDQtdGB0LvQuCDQvdC1INC30LDQtNCw0L0g0YLQsNC60LbQtSDQv9Cw0YDQsNC80LXRgtGAIEI8LS0iCisiZm9yY2UtY29uZmRlZj4sINC/0YDQuCDQutC+0YLQvtGA0L7QvCDQv9GA0LXQtNC/0L7Rh9GC0LXQvdC40LUg0L7RgtC00LDRkdGC0YHRjyDQtNC10LnRgdGC0LLQuNGOINC/0L4g0YPQvNC+0LvRh9Cw0L3QuNGOLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQxNgorbXNnaWQgIiIKKyJCPGNvbmZvbGQ+OiBJZiBhIGNvbmZmaWxlIGhhcyBiZWVuIG1vZGlmaWVkIGFsd2F5cyBrZWVwIHRoZSBvbGQgdmVyc2lvbiAiCisid2l0aG91dCBwcm9tcHRpbmcsIHVubGVzcyB0aGUgQjwtLWZvcmNlLWNvbmZkZWY+IGlzIGFsc28gc3BlY2lmaWVkLCBpbiB3aGljaCAiCisiY2FzZSB0aGUgZGVmYXVsdCBhY3Rpb24gaXMgcHJlZmVycmVkLiIKK21zZ3N0ciAiIgorIkI8Y29uZm9sZD46INCV0YHQu9C4INC60L7QvdGE0LjQs9GD0YDQsNGG0LjQvtC90L3Ri9C5INGE0LDQudC7INCx0YvQuyDQuNC30LzQtdC90ZHQvSwg0LLRgdC10LPQtNCwINGB0L7RhdGA0LDQvdGP0YLRjCDRgdGC0LDRgNGD0Y4gIgorItCy0LXRgNGB0LjRjiDQsdC10Lcg0LfQsNC/0YDQvtGB0LAg0L/QvtC00YLQstC10YDQttC00LXQvdC40Y8sINC10YHQu9C4INC90LUg0LfQsNC00LDQvSDRgtCw0LrQttC1INC/0LDRgNCw0LzQtdGC0YAgQjwtLWZvcmNlLSIKKyJjb25mZGVmPiwg0L/RgNC4INC60L7RgtC+0YDQvtC8INC/0YDQtdC00L/QvtGH0YLQtdC90LjQtSDQvtGC0LTQsNGR0YLRgdGPINC00LXQudGB0YLQstC40Y4g0L/QviDRg9C80L7Qu9GH0LDQvdC40Y4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDIyCittc2dpZCAiIgorIkI8Y29uZmRlZj46IElmIGEgY29uZmZpbGUgaGFzIGJlZW4gbW9kaWZpZWQgYWx3YXlzIGNob29zZSB0aGUgZGVmYXVsdCAiCisiYWN0aW9uLiBJZiB0aGVyZSBpcyBubyBkZWZhdWx0IGFjdGlvbiBpdCB3aWxsIHN0b3AgdG8gYXNrIHRoZSB1c2VyIHVubGVzcyAiCisiQjwtLWZvcmNlLWNvbmZuZXc+IG9yIEI8LS1mb3JjZS1jb25mb2xkPiBpcyBhbHNvIGJlZW4gZ2l2ZW4sIGluIHdoaWNoIGNhc2UgIgorIml0IHdpbGwgdXNlIHRoYXQgdG8gZGVjaWRlIHRoZSBmaW5hbCBhY3Rpb24uIgorbXNnc3RyICIiCisiQjxjb25mZGVmPjog0JXRgdC70Lgg0LrQvtC90YTQuNCz0YPRgNCw0YbQuNC+0L3QvdGL0Lkg0YTQsNC50Lsg0LHRi9C7INC40LfQvNC10L3RkdC9LCDQstGB0LXQs9C00LAg0LLRi9Cx0LjRgNCw0YLRjCDQtNC10LnRgdGC0LLQuNC1ICIKKyLQv9C+INGD0LzQvtC70YfQsNC90LjRji4g0JXRgdC70Lgg0YLQsNC60L7QstC+0LPQviDQvdC10YIsINGC0L4g0YHQv9GA0L7RgdC40YLRjCDRgyDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y8sINC10YHQu9C4INC90LUg0LfQsNC00LDQvSAiCisi0L/QsNGA0LDQvNC10YLRgCBCPC0tZm9yY2UtY29uZm5ldz4g0LjQu9C4IEI8LS1mb3JjZS1jb25mb2xkPiAo0LIg0Y3RgtC+0Lwg0YHQu9GD0YfQsNC1ICIKKyLRgdC+0L7RgtCy0LXRgtGB0YLQstGD0Y7RidC40Lkg0L/QsNGA0LDQvNC10YLRgCDQuNGB0L/QvtC70YzQt9GD0LXRgtGB0Y8g0LTQu9GPINCy0YvRj9GB0L3QtdC90LjRjywg0YfRgtC+INC40LzQtdC90L3QviDQvdGD0LbQvdC+ICIKKyLQtNC10LvQsNGC0YwpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQyOQorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiQjxjb25mZGVmPjogSWYgYSBjb25mZmlsZSBoYXMgYmVlbiBtb2RpZmllZCBhbHdheXMgY2hvb3NlIHRoZSBkZWZhdWx0ICIKKyN8ICJhY3Rpb24uIElmIHRoZXJlIGlzIG5vIGRlZmF1bHQgYWN0aW9uIGl0IHdpbGwgc3RvcCB0byBhc2sgdGhlIHVzZXIgdW5sZXNzICIKKyN8ICJCPC0tZm9yY2UtY29uZm5ldz4gb3IgQjwtLWZvcmNlLWNvbmZvbGQ+IGlzIGFsc28gYmVlbiBnaXZlbiwgaW4gd2hpY2ggIgorI3wgImNhc2UgaXQgd2lsbCB1c2UgdGhhdCB0byBkZWNpZGUgdGhlIGZpbmFsIGFjdGlvbi4iCittc2dpZCAiIgorIkI8Y29uZmFzaz46IElmIGEgY29uZmZpbGUgaGFzIGJlZW4gbW9kaWZpZWQgYWx3YXlzIG9mZmVyIHRvIHJlcGxhY2UgaXQgd2l0aCAiCisidGhlIHZlcnNpb24gaW4gdGhlIHBhY2thZ2UsIGV2ZW4gaWYgdGhlIHZlcnNpb24gaW4gdGhlIHBhY2thZ2UgZGlkIG5vdCAiCisiY2hhbmdlLiBJZiBhbnkgb2YgQjwtLWZvcmNlLWNvbmZtaXNzPiwgQjwtLWZvcmNlLWNvbmZuZXc+LCBCPC0tZm9yY2UtIgorImNvbmZvbGQ+LCBvciBCPC0tZm9yY2UtY29uZmRlZj4gaXMgYWxzbyBnaXZlbiwgaXQgd2lsbCBiZSB1c2VkIHRvIGRlY2lkZSB0aGUgIgorImZpbmFsIGFjdGlvbi4iCittc2dzdHIgIiIKKyJCPGNvbmZkZWY+OiDQldGB0LvQuCDQutC+0L3RhNC40LPRg9GA0LDRhtC40L7QvdC90YvQuSDRhNCw0LnQuyDQsdGL0Lsg0LjQt9C80LXQvdGR0L0sINCy0YHQtdCz0LTQsCDQstGL0LHQuNGA0LDRgtGMINC00LXQudGB0YLQstC40LUgIgorItC/0L4g0YPQvNC+0LvRh9Cw0L3QuNGOLiDQldGB0LvQuCDRgtCw0LrQvtCy0L7Qs9C+INC90LXRgiwg0YLQviDRgdC/0YDQvtGB0LjRgtGMINGDINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjywg0LXRgdC70Lgg0L3QtSDQt9Cw0LTQsNC9ICIKKyLQv9Cw0YDQsNC80LXRgtGAIEI8LS1mb3JjZS1jb25mbmV3PiDQuNC70LggQjwtLWZvcmNlLWNvbmZvbGQ+ICjQsiDRjdGC0L7QvCDRgdC70YPRh9Cw0LUgIgorItGB0L7QvtGC0LLQtdGC0YHRgtCy0YPRjtGJ0LjQuSDQv9Cw0YDQsNC80LXRgtGAINC40YHQv9C+0LvRjNC30YPQtdGC0YHRjyDQtNC70Y8g0LLRi9GP0YHQvdC10L3QuNGPLCDRh9GC0L4g0LjQvNC10L3QvdC+INC90YPQttC90L4gIgorItC00LXQu9Cw0YLRjCkuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDMyCittc2dpZCAiQjxvdmVyd3JpdGU+OiBPdmVyd3JpdGUgb25lIHBhY2thZ2UncyBmaWxlIHdpdGggYW5vdGhlcidzIGZpbGUuIgorbXNnc3RyICIiCisiQjxvdmVyd3JpdGU+OiDQn9C10YDQtdC30LDQv9C40YHQsNGC0Ywg0YTQsNC50Lsg0LjQtyDQvtC00L3QvtCz0L4g0L/QsNC60LXRgtCwINGE0LDQudC70L7QvCDQuNC3INC00YDRg9Cz0L7Qs9C+INC/0LDQutC10YLQsC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0MzUKK21zZ2lkICJCPG92ZXJ3cml0ZS1kaXI+IE92ZXJ3cml0ZSBvbmUgcGFja2FnZSdzIGRpcmVjdG9yeSB3aXRoIGFub3RoZXIncyBmaWxlLiIKK21zZ3N0ciAiIgorIkI8b3ZlcndyaXRlLWRpcj46INCf0LXRgNC10LfQsNC/0LjRgdCw0YLRjCDQutCw0YLQsNC70L7QsyDQuNC3INC+0LTQvdC+0LPQviDQv9Cw0LrQtdGC0LAg0YTQsNC50LvQvtC8INC40Lcg0LTRgNGD0LPQvtCz0L4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDM4Cittc2dpZCAiIgorIkI8b3ZlcndyaXRlLWRpdmVydGVkPjogT3ZlcndyaXRlIGEgZGl2ZXJ0ZWQgZmlsZSB3aXRoIGFuIHVuZGl2ZXJ0ZWQgdmVyc2lvbi4iCittc2dzdHIgIiIKKyJCPG92ZXJ3cml0ZS1kaXZlcnRlZD46INCf0LXRgNC10LfQsNC/0LjRgdCw0YLRjCDRhNCw0LnQuyDRgSDQuNC30LzQtdC90ZHQvdC90YvQvCDRgNCw0YHQv9C+0LvQvtC20LXQvdC40LXQvCIKKyIoZGl2ZXJ0ZWQpINC10LPQviDQvdC10LjQt9C80LXQvdGR0L3QvdC+0Lkg0LLQtdGA0YHQuNC10LkuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDQ2Cittc2dpZCAiIgorIkI8dW5zYWZlLWlvPjogRG8gbm90IHBlcmZvcm0gc2FmZSBJL08gb3BlcmF0aW9ucyB3aGVuIHVucGFja2luZy4gQ3VycmVudGx5ICIKKyJ0aGlzIGltcGxpZXMgbm90IHBlcmZvcm1pbmcgZmlsZSBzeXN0ZW0gc3luY3MgYmVmb3JlIGZpbGUgcmVuYW1lcywgd2hpY2ggaXMgIgorImtub3duIHRvIGNhdXNlIHN1YnN0YW50aWFsIHBlcmZvcm1hbmNlIGRlZ3JhZGF0aW9uIG9uIHNvbWUgZmlsZSBzeXN0ZW1zLCAiCisidW5mb3J0dW5hdGVseSB0aGUgb25lcyB0aGF0IHJlcXVpcmUgdGhlIHNhZmUgSS9PIG9uIHRoZSBmaXJzdCBwbGFjZSBkdWUgdG8gIgorInRoZWlyIHVucmVsaWFibGUgYmVoYXZpb3VyIGNhdXNpbmcgemVyby1sZW5ndGggZmlsZXMgb24gYWJydXB0IHN5c3RlbSAiCisiY3Jhc2hlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQ1MgorbXNnaWQgIiIKKyJJPE5vdGU+OiBGb3IgZXh0NCwgdGhlIG1haW4gb2ZmZW5kZXIsIGNvbnNpZGVyIHVzaW5nIGluc3RlYWQgdGhlIG1vdW50ICIKKyJvcHRpb24gQjxub2RlbGFsbG9jPiwgd2hpY2ggd2lsbCBmaXggYm90aCB0aGUgcGVyZm9ybWFuY2UgZGVncmFkYXRpb24gYW5kICIKKyJ0aGUgZGF0YSBzYWZldHkgaXNzdWVzLCB0aGUgbGF0dGVyIGJ5IG1ha2luZyB0aGUgZmlsZSBzeXN0ZW0gbm90IHByb2R1Y2UgIgorInplcm8tbGVuZ3RoIGZpbGVzIG9uIGFicnVwdCBzeXN0ZW0gY3Jhc2hlcyB3aXRoIGFueSBzb2Z0d2FyZSBub3QgZG9pbmcgc3luY3MgIgorImJlZm9yZSBhdG9taWMgcmVuYW1lcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQ1NQorbXNnaWQgIiIKKyJJPFdhcm5pbmc6IFVzaW5nIHRoaXMgb3B0aW9uIG1pZ2h0IGltcHJvdmUgcGVyZm9ybWFuY2UgYXQgdGhlIGNvc3Qgb2YgbG9zaW5nICIKKyJkYXRhLCB1c2Ugd2l0aCBjYXJlLj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQ1OAorIywgZnV6enkKKyN8IG1zZ2lkICJCPGFyY2hpdGVjdHVyZT46IFByb2Nlc3MgZXZlbiBwYWNrYWdlcyB3aXRoIHRoZSB3cm9uZyBhcmNoaXRlY3R1cmUuIgorbXNnaWQgIkI8YXJjaGl0ZWN0dXJlPjogUHJvY2VzcyBldmVuIHBhY2thZ2VzIHdpdGggd3Jvbmcgb3Igbm8gYXJjaGl0ZWN0dXJlLiIKK21zZ3N0ciAiQjxhcmNoaXRlY3R1cmU+OiDQntCx0YDQsNCx0LDRgtGL0LLQsNGC0Ywg0LTQsNC20LUg0L/QsNC60LXRgtGLINGBINC90LXQv9GA0LDQstC40LvRjNC90L7QuSDQsNGA0YXQuNGC0LXQutGC0YPRgNC+0LkuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDYxCisjLCBmdXp6eQorI3wgbXNnaWQgIkI8YXJjaGl0ZWN0dXJlPjogUHJvY2VzcyBldmVuIHBhY2thZ2VzIHdpdGggdGhlIHdyb25nIGFyY2hpdGVjdHVyZS4iCittc2dpZCAiQjxiYWQtdmVyc2lvbj46IFByb2Nlc3MgZXZlbiBwYWNrYWdlcyB3aXRoIHdyb25nIHZlcnNpb25zLiIKK21zZ3N0ciAiQjxhcmNoaXRlY3R1cmU+OiDQntCx0YDQsNCx0LDRgtGL0LLQsNGC0Ywg0LTQsNC20LUg0L/QsNC60LXRgtGLINGBINC90LXQv9GA0LDQstC40LvRjNC90L7QuSDQsNGA0YXQuNGC0LXQutGC0YPRgNC+0LkuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDY0Cittc2dpZCAiIgorIkI8YmFkLXBhdGg+OiBCPFBBVEg+IGlzIG1pc3NpbmcgaW1wb3J0YW50IHByb2dyYW1zLCBzbyBwcm9ibGVtcyBhcmUgbGlrZWx5LiIKK21zZ3N0ciAiIgorIkI8YmFkLXBhdGg+OiDQkiBCPFBBVEg+INC+0YLRgdGD0YLRgdGC0LLRg9GO0YIg0LLQsNC20L3Ri9C1INC/0YDQvtCz0YDQsNC80LzRiywg0L/QvtGN0YLQvtC80YMg0LzQvtCz0YPRgiAiCisi0LLQvtC30L3QuNC60L3Rg9GC0Ywg0L/RgNC+0LHQu9C10LzRiy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0NjcKK21zZ2lkICJCPG5vdC1yb290PjogVHJ5IHRvIChkZSlpbnN0YWxsIHRoaW5ncyBldmVuIHdoZW4gbm90IHJvb3QuIgorbXNnc3RyICIiCisiQjxub3Qtcm9vdD46INCf0L7Qv9GL0YLQsNGC0YzRgdGPINGD0YHRgtCw0L3QvtCy0LjRgtGMINC40LvQuCDRg9C00LDQu9C40YLRjCDQv9Cw0LrQtdGCLCDQtNCw0LbQtSDQtdGB0LvQuCDQvdC1INC90LXRgiDQv9GA0LDQsiAiCisi0YHRg9C/0LXRgNC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0NzAKK21zZ2lkICJCPGJhZC12ZXJpZnk+OiBJbnN0YWxsIGEgcGFja2FnZSBldmVuIGlmIGl0IGZhaWxzIGF1dGhlbnRpY2l0eSBjaGVjay4iCittc2dzdHIgIiIKKyJCPGJhZC12ZXJpZnk+OiDQo9GB0YLQsNC90LDQstC70LjQstCw0YLRjCDQv9Cw0LrQtdGCLCDQtNCw0LbQtSDQtdGB0LvQuCDQvtC9INC90LUg0L/RgNC+0YjRkdC7INC/0YDQvtCy0LXRgNC60YMgIgorItC/0L7QtNC70LjQvdC90L7RgdGC0LguIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjQ3MQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1pZ25vcmUtZGVwZW5kcz49STxwYWNrYWdlPiwuLi4iCittc2dzdHIgIkI8LS1pZ25vcmUtZGVwZW5kcz49STzQv9Cw0LrQtdGCPiwuLi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0NzUKK21zZ2lkICIiCisiSWdub3JlIGRlcGVuZGVuY3ktY2hlY2tpbmcgZm9yIHNwZWNpZmllZCBwYWNrYWdlcyAoYWN0dWFsbHksIGNoZWNraW5nIGlzICIKKyJwZXJmb3JtZWQsIGJ1dCBvbmx5IHdhcm5pbmdzIGFib3V0IGNvbmZsaWN0cyBhcmUgZ2l2ZW4sIG5vdGhpbmcgZWxzZSkuIgorbXNnc3RyICIiCisi0JjQs9C90L7RgNC40YDQvtCy0LDRgtGMINC/0YDQvtCy0LXRgNC60YMg0LfQsNCy0LjRgdC40LzQvtGB0YLQtdC5INC00LvRjyDRg9C60LDQt9Cw0L3QvdGL0YUg0L/QsNC60LXRgtC+0LIgKNC90LAg0YHQsNC80L7QvCDQtNC10LvQtSwgIgorItC/0YDQvtCy0LXRgNC60LAg0LLRi9C/0L7Qu9C90Y/QtdGC0YHRjywg0L3QviDQstGL0LTQsNGO0YLRgdGPINGC0L7Qu9GM0LrQviDQv9GA0LXQtNGD0L/RgNC10LbQtNC10L3QuNGPINC+INC60L7QvdGE0LvQuNC60YLQsNGFINC4ICIKKyLQvdC40YfQtdCz0L4g0LHQvtC70LXQtSkuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjQ3NQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tbm8tYWN0PiwgQjwtLWRyeS1ydW4+LCBCPC0tc2ltdWxhdGU+IgorbXNnc3RyICJCPC0tbm8tYWN0PiB8IEI8LS1kcnktcnVuPiB8IEI8LS1zaW11bGF0ZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0ODAKK21zZ2lkICIiCisiRG8gZXZlcnl0aGluZyB3aGljaCBpcyBzdXBwb3NlZCB0byBiZSBkb25lLCBidXQgZG9uJ3Qgd3JpdGUgYW55IGNoYW5nZXMuICIKKyJUaGlzIGlzIHVzZWQgdG8gc2VlIHdoYXQgd291bGQgaGFwcGVuIHdpdGggdGhlIHNwZWNpZmllZCBhY3Rpb24sIHdpdGhvdXQgIgorImFjdHVhbGx5IG1vZGlmeWluZyBhbnl0aGluZy4iCittc2dzdHIgIiIKKyLQlNC10LvQsNGC0Ywg0LLRgdGRLCDRh9GC0L4g0L3QtdC+0LHRhdC+0LTQuNC80L4sINC90L4g0L3QtSDQt9Cw0L/QuNGB0YvQstCw0YLRjCDQvdCwINC00LjRgdC6INC40LfQvNC10L3QtdC90LjRjy4g0J7QvSAiCisi0LjRgdC/0L7Qu9GM0LfRg9C10YLRgdGPINC00LvRjyDRgtC+0LPQviwg0YfRgtC+0LHRiyDQv9C+0YHQvNC+0YLRgNC10YLRjCwg0YfRgtC+INC/0YDQvtC40LfQvtGI0LvQviDQsdGLINC/0YDQuCDQstGL0L/QvtC70L3QtdC90LjQuCAiCisi0YPQutCw0LfQsNC90L3QvtCz0L4g0LTQtdC50YHRgtCy0LjRjywg0L3QviDQv9GA0Lgg0Y3RgtC+0Lwg0L3QuNGH0LXQs9C+INC90LUg0LzQtdC90Y/QtdGC0YHRjy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0ODUKK21zZ2lkICIiCisiQmUgc3VyZSB0byBnaXZlIEI8LS1uby1hY3Q+IGJlZm9yZSB0aGUgYWN0aW9uLXBhcmFtZXRlciwgb3IgeW91IG1pZ2h0IGVuZCB1cCAiCisid2l0aCB1bmRlc2lyYWJsZSByZXN1bHRzLiAoZS5nLiBCPGRwa2cgLS1wdXJnZSBmb28gLS1uby1hY3Q+IHdpbGwgZmlyc3QgIgorInB1cmdlIHBhY2thZ2UgZm9vIGFuZCB0aGVuIHRyeSB0byBwdXJnZSBwYWNrYWdlIC0tbm8tYWN0LCBldmVuIHRob3VnaCB5b3UgIgorInByb2JhYmx5IGV4cGVjdGVkIGl0IHRvIGFjdHVhbGx5IGRvIG5vdGhpbmcpIgorbXNnc3RyICIiCisi0KPQsdC10LTQuNGC0LXRgdGMLCDRh9GC0L4g0YPQutCw0LfQsNC70LggQjwtLW5vLWFjdD4g0L/QtdGA0LXQtCDQtNC10LnRgdGC0LLQuNC10LwsINC40LvQuCDRgyDQstCw0YEg0LzQvtCz0YPRgiAiCisi0L/QvtC70YPRh9C40YLRjNGB0Y8g0L3QtdC20LXQu9Cw0LXQvNGL0LUg0YDQtdC30YPQu9GM0YLQsNGC0YsuICjQvdCw0L/RgNC40LzQtdGALCBCPGRwa2cgLS1wdXJnZSBmb28gLS1uby1hY3Q+ICIKKyLRgdC/0LXRgNCy0LAg0LLRi9C/0L7Qu9C90LjRgiDQv9C+0LvQvdC+0LUg0YPQtNCw0LvQtdC90LjQtSDQv9Cw0LrQtdGC0LAgZm9vLCDQsCDQt9Cw0YLQtdC8INCx0YPQtNC10YIg0L/Ri9GC0LDRgtGM0YHRjyDQv9C+0LvQvdC+0YHRgtGM0Y4gIgorItGD0LTQsNC70LjRgtGMINC/0LDQutC10YIgLS1uby1hY3QsINGF0L7RgtGPINCy0Ysg0L7QttC40LTQsNC70LgsINGH0YLQviDQvdC40YfQtdCz0L4g0LLRi9C/0L7Qu9C90LXQvdC+INC90LUg0LHRg9C00LXRgikiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NDg1CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LVI+LCBCPC0tcmVjdXJzaXZlPiIKK21zZ3N0ciAiQjwtUj4gfCBCPC0tcmVjdXJzaXZlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQ5MQorbXNnaWQgIiIKKyJSZWN1cnNpdmVseSBoYW5kbGUgYWxsIHJlZ3VsYXIgZmlsZXMgbWF0Y2hpbmcgcGF0dGVybiBCPCouZGViPiBmb3VuZCBhdCAiCisic3BlY2lmaWVkIGRpcmVjdG9yaWVzIGFuZCBhbGwgb2YgaXRzIHN1YmRpcmVjdG9yaWVzLiBUaGlzIGNhbiBiZSB1c2VkIHdpdGggIgorIkI8LWk+LCBCPC1BPiwgQjwtLWluc3RhbGw+LCBCPC0tdW5wYWNrPiBhbmQgQjwtLWF2YWlsPiBhY3Rpb25zLiIKK21zZ3N0ciAiIgorItCg0LXQutGD0YDRgdC40LLQvdCw0Y8g0L7QsdGA0LDQsdC+0YLQsNGC0Ywg0LLRgdC1INGE0LDQudC70YssINC+0YLQstC10YfQsNGO0YnQuNC1INGI0LDQsdC70L7QvdGDIEI8Ki5kZWI+LCDQutC+0YLQvtGA0YvQtSAiCisi0L3QsNC50LTQtdC90Ysg0LIg0LfQsNC00LDQvdC90YvRhSDQutCw0YLQsNC70L7Qs9Cw0YUg0Lgg0LLQviDQstGB0LXRhSDQuNGFINC/0L7QtNC60LDRgtCw0LvQvtCz0LDRhS4g0K3RgtC+0YIg0L/QsNGA0LDQvNC10YLRgCDQvNC+0LbQvdC+ICIKKyLQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0LLQvNC10YHRgtC1INGBINC00LXQudGB0YLQstC40Y/QvNC4IEI8LWk+LCBCPC1BPiwgQjwtLWluc3RhbGw+LCBCPC0tdW5wYWNrPiDQuCAiCisiQjwtLWF2YWlsPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NDkxCisjLCBuby13cmFwCittc2dpZCAiQjwtRz4iCittc2dzdHIgIkI8LUc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDk1CisjLCBmdXp6eQorbXNnaWQgIiIKKyJEb24ndCBpbnN0YWxsIGEgcGFja2FnZSBpZiBhIG5ld2VyIHZlcnNpb24gb2YgdGhlIHNhbWUgcGFja2FnZSBpcyBhbHJlYWR5ICIKKyJpbnN0YWxsZWQuIFRoaXMgaXMgYW4gYWxpYXMgb2YgQjwtLXJlZnVzZS1kb3duZ3JhZGU+LiIKK21zZ3N0ciAiIgorItCd0LUg0YPRgdGC0LDQvdCw0LLQu9C40LLQsNGC0Ywg0L/QsNC60LXRgiwg0LXRgdC70Lgg0L3QvtCy0LDRjyDQstC10YDRgdC40Y8g0YLQsNC60L7Qs9C+INC20LUg0L/QsNC60LXRgtCwINGD0LbQtSDRg9GB0YLQsNC90L7QstC70LXQvdCwLiAiCisi0K3RgtC+INGB0LjQvdC+0L3QuNC8INC/0LDRgNCw0LzQtdGC0YDQsCBCPC0tcmVmdXNlLWRvd25ncmFkZT4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjQ5NSBkcGtnLWJ1aWxkcGFja2FnZS4xOjIxNyBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6MTkKKyM6IGRwa2ctcXVlcnkuMToxMTggZHBrZy1zaGxpYmRlcHMuMToyMTEgZHBrZy10cmlnZ2VyLjE6MzkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tYWRtaW5kaXI9Pkk8ZGlyPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTAwCittc2dpZCAiIgorIkNoYW5nZSBkZWZhdWx0IGFkbWluaXN0cmF0aXZlIGRpcmVjdG9yeSwgd2hpY2ggY29udGFpbnMgbWFueSBmaWxlcyB0aGF0IGdpdmUgIgorImluZm9ybWF0aW9uIGFib3V0IHN0YXR1cyBvZiBpbnN0YWxsZWQgb3IgdW5pbnN0YWxsZWQgcGFja2FnZXMsIGV0Yy4gICIKKyIoRGVmYXVsdHMgdG8gSTwvdmFyL2xpYi9kcGtnPikiCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo1MDAKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWluc3RkaXI9Pkk8ZGlyPiIKK21zZ3N0ciAiQjwtLXN0YXR1cy1mZCA+STxFPGx0Pm5FPGd0Pj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1MDcKKyMsIGZ1enp5Cittc2dpZCAiIgorIkNoYW5nZSBkZWZhdWx0IGluc3RhbGxhdGlvbiBkaXJlY3Rvcnkgd2hpY2ggcmVmZXJzIHRvIHRoZSBkaXJlY3Rvcnkgd2hlcmUgIgorInBhY2thZ2VzIGFyZSB0byBiZSBpbnN0YWxsZWQuIEI8aW5zdGRpcj4gaXMgYWxzbyB0aGUgZGlyZWN0b3J5IHBhc3NlZCB0byAiCisiQjxjaHJvb3Q+KDIpIGJlZm9yZSBydW5uaW5nIHBhY2thZ2UncyBpbnN0YWxsYXRpb24gc2NyaXB0cywgd2hpY2ggbWVhbnMgdGhhdCAiCisidGhlIHNjcmlwdHMgc2VlIEI8aW5zdGRpcj4gYXMgYSByb290IGRpcmVjdG9yeS4gIChEZWZhdWx0cyB0byBJPC8+KSIKK21zZ3N0ciAiIgorItCY0LfQvNC10L3QuNGC0Ywg0LrQsNGC0LDQu9C+0LPQuCDQv9C+INGD0LzQvtC70YfQsNC90LjRji4g0JrQsNGC0LDQu9C+0LMgQjxhZG1pbmRpcj4g0L/QviDRg9C80L7Qu9GH0LDQvdC40Y4g0LjQvNC10LXRgiAiCisi0LfQvdCw0YfQtdC90LjQtSBCPC92YXIvbGliL2Rwa2c+INC4INGB0L7QtNC10YDQttC40YIg0LzQvdC+0LPQviDRhNCw0LnQu9C+0LIsINCyINC60L7RgtC+0YDRi9GFINC00LDRkdGC0YHRjyAiCisi0LjQvdGE0L7RgNC80LDRhtC40Y8g0L4g0YHQvtGB0YLQvtGP0L3QuNC4INGD0YHRgtCw0L3QvtCy0LvQtdC90L3Ri9GFINC40LvQuCDRg9C00LDQu9GR0L3QvdGL0YUg0L/QsNC60LXRgtC+0LIg0Lgg0YIu0LQuINCa0LDRgtCw0LvQvtCzICIKKyJCPGluc3RkaXI+INC/0L4g0YPQvNC+0LvRh9Cw0L3QuNGOINGA0LDQstC10L0gSTwvPiDQuCDRg9C60LDQt9GL0LLQsNC10YIg0LrQsNGC0LDQu9C+0LMsINC60YPQtNCwINCx0YPQtNGD0YIgIgorItGD0YHRgtCw0L3QsNCy0LvQuNCy0LDRgtGM0YHRjyDQv9Cw0LrQtdGC0YsuINCe0L0g0YLQsNC60LbQtSDQv9C10YDQtdC00LDRkdGC0YHRjyDRhNGD0L3QutGG0LjQuCBCPGNocm9vdD4oMikg0L/QtdGA0LXQtCAiCisi0LfQsNC/0YPRgdC60L7QvCDRgdGG0LXQvdCw0YDQuNGPINGD0YHRgtCw0L3QvtCy0LrQuCBCPNC/0LDQutC10YLQsD4gLS0g0Y3RgtC+INC+0LfQvdCw0YfQsNC10YIsINGH0YLQviDRgdGG0LXQvdCw0YDQuNC4INCx0YPQtNGD0YIgIgorItGB0YfQuNGC0LDRgtGMIEI8aW5zdGRpcj4g0LrQvtGA0L3QtdCy0YvQvCDQutCw0YLQsNC70L7Qs9C+0LwuINCY0LfQvNC10L3QtdC90LjQtSDQutCw0YLQsNC70L7Qs9CwIEI8cm9vdD4gIgorItGD0YHRgtCw0L3QsNCy0LvQuNCy0LDQtdGCINC60LDRgtCw0LvQvtCzIEI8aW5zdGRpcj4g0LIg0LfQvdCw0YfQtdC90LjQtSBCPGRpcj4sINCwINC60LDRgtCw0LvQvtCz0LAgQjxhZG1pbmRpcj4gIgorIi0tINCyINC30L3QsNGH0LXQvdC40LUgSTxkaXI+QjwvdmFyL2xpYi9kcGtnPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTA3CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1yb290PT5JPGRpcj4iCittc2dzdHIgIkI8LS1sb2c9Pkk80LjQvNGPINGE0LDQudC70LA+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTExCittc2dpZCAiIgorIkNoYW5naW5nIEI8cm9vdD4gY2hhbmdlcyBCPGluc3RkaXI+IHRvIEk8ZGlyPiBhbmQgQjxhZG1pbmRpcj4gdG8gSTxkaXI+QjwvIgorInZhci9saWIvZHBrZz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTExCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LU8+LCBCPC0tc2VsZWN0ZWQtb25seT4iCittc2dzdHIgIkI8LU8+IHwgQjwtLXNlbGVjdGVkLW9ubHk+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTE3Cittc2dpZCAiIgorIk9ubHkgcHJvY2VzcyB0aGUgcGFja2FnZXMgdGhhdCBhcmUgc2VsZWN0ZWQgZm9yIGluc3RhbGxhdGlvbi4gVGhlIGFjdHVhbCAiCisibWFya2luZyBpcyBkb25lIHdpdGggQjxkc2VsZWN0PiBvciBieSBCPGRwa2c+LCB3aGVuIGl0IGhhbmRsZXMgcGFja2FnZXMuIEZvciAiCisiZXhhbXBsZSwgd2hlbiBhIHBhY2thZ2UgaXMgcmVtb3ZlZCwgaXQgd2lsbCBiZSBtYXJrZWQgc2VsZWN0ZWQgZm9yICIKKyJkZWluc3RhbGxhdGlvbi4iCittc2dzdHIgIiIKKyLQntCx0YDQsNCx0LDRgtGL0LLQsNGC0Ywg0YLQvtC70YzQutC+INC/0LDQutC10YLRiywg0LLRi9Cx0YDQsNC90L3Ri9C1INC00LvRjyDRg9GB0YLQsNC90L7QstC60LguINCi0LDQutC+0Lkg0LLRi9Cx0L7RgCDQtNC10LvQsNC10YLRgdGPICIKKyLQv9GA0L7Qs9GA0LDQvNC80L7QuSBCPGRzZWxlY3Q+INC40LvQuCDQttC1INGB0LDQvNC+0Lkg0L/RgNC+0LPRgNCw0LzQvNC+0LkgQjxkcGtnPiDQv9GA0Lgg0YDQsNCx0L7RgtC1INGBINC/0LDQutC10YLQsNC80LguICIKKyLQndCw0L/RgNC40LzQtdGALCDQutC+0LPQtNCwINC/0LDQutC10YIg0YPQtNCw0LvRj9C10YLRgdGPLCDQvtC9INCx0YPQtNC10YIg0L/QvtC80LXRh9C10L0g0LTQu9GPINGD0LTQsNC70LXQvdC40Y8uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjUxNworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1FPiwgQjwtLXNraXAtc2FtZS12ZXJzaW9uPiIKK21zZ3N0ciAiQjwtRT4gfCBCPC0tc2tpcC1zYW1lLXZlcnNpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTIxCittc2dpZCAiIgorIkRvbid0IGluc3RhbGwgdGhlIHBhY2thZ2UgaWYgdGhlIHNhbWUgdmVyc2lvbiBvZiB0aGUgcGFja2FnZSBpcyBhbHJlYWR5ICIKKyJpbnN0YWxsZWQuIgorbXNnc3RyICIiCisi0J3QtSDRg9GB0YLQsNC90LDQstC70LjQstCw0YLRjCDQv9Cw0LrQtdGCLCDQtdGB0LvQuCDRgtCwINC20LUg0LLQtdGA0YHQuNGPINGN0YLQvtCz0L4g0L/QsNC60LXRgtCwINGD0LbQtSDRg9GB0YLQsNC90L7QstC70LXQvdCwLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjUyMworbXNnaWQgIkI8LS1wcmUtaW52b2tlPT5JPGNvbW1hbmQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1MjUKK21zZ2lkICJCPC0tcG9zdC1pbnZva2U9Pkk8Y29tbWFuZD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjUzNAorbXNnaWQgIiIKKyJTZXQgYW4gaW52b2tlIGhvb2sgSTxjb21tYW5kPiB0byBiZSBydW4gdmlhIGBgc2ggLWMnJyBiZWZvcmUgb3IgYWZ0ZXIgdGhlICIKKyJkcGtnIHJ1biBmb3IgdGhlIEk8dW5wYWNrPiwgSTxjb25maWd1cmU+LCBJPGluc3RhbGw+LCBJPHRyaWdnZXJzLW9ubHk+LCAiCisiSTxyZW1vdmU+IGFuZCBJPHB1cmdlPiBkcGtnIGFjdGlvbnMuIFRoaXMgb3B0aW9uIGNhbiBiZSBzcGVjaWZpZWQgbXVsdGlwbGUgIgorInRpbWVzLiBUaGUgb3JkZXIgdGhlIG9wdGlvbnMgYXJlIHNwZWNpZmllZCBpcyBwcmVzZXJ2ZWQsIHdpdGggdGhlIG9uZXMgZnJvbSAiCisidGhlIGNvbmZpZ3VyYXRpb24gZmlsZXMgdGFraW5nIHByZWNlZGVuY2UuICBUaGUgZW52aXJvbm1lbnQgdmFyaWFibGUgIgorIkI8RFBLR19IT09LX0FDVElPTj4gaXMgc2V0IGZvciB0aGUgaG9va3MgdG8gdGhlIGN1cnJlbnQgZHBrZyBhY3Rpb24uIE5vdGU6ICIKKyJmcm9udC1lbmRzIG1pZ2h0IGNhbGwgZHBrZyBzZXZlcmFsIHRpbWVzIHBlciBpbnZvY2F0aW9uLCB3aGljaCBtaWdodCBydW4gdGhlICIKKyJob29rcyBtb3JlIHRpbWVzIHRoYW4gZXhwZWN0ZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1MzcKKyMsIGZ1enp5Cittc2dpZCAiQjwtLXBhdGgtZXhjbHVkZT0+STxnbG9iLXBhdHRlcm4+IgorbXNnc3RyICJCPC0tc3RhdHVzLWZkID5JPEU8bHQ+bkU8Z3Q+PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjUzOQorIywgZnV6enkKK21zZ2lkICJCPC0tcGF0aC1pbmNsdWRlPT5JPGdsb2ItcGF0dGVybj4iCittc2dzdHIgIkI8LS1zdGF0dXMtZmQgPkk8RTxsdD5uRTxndD4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTQyCittc2dpZCAiIgorIlNldCBJPGdsb2ItcGF0dGVybj4gYXMgYSBwYXRoIGZpbHRlciwgZWl0aGVyIGJ5IGV4Y2x1ZGluZyBvciByZS1pbmNsdWRpbmcgIgorInByZXZpb3VzbHkgZXhjbHVkZWQgcGF0aHMgbWF0Y2hpbmcgdGhlIHNwZWNpZmllZCBwYXR0ZXJucyBkdXJpbmcgaW5zdGFsbC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjU0NQorbXNnaWQgIiIKKyJJPFdhcm5pbmc6IHRha2UgaW50byBhY2NvdW50IHRoYXQgZGVwZW5kaW5nIG9uIHRoZSBleGNsdWRlZCBwYXRocyB5b3UgbWlnaHQgIgorImNvbXBsZXRlbHkgYnJlYWsgeW91ciBzeXN0ZW0sIHVzZSB3aXRoIGNhdXRpb24uPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTU1Cittc2dpZCAiIgorIlRoZSBnbG9iIHBhdHRlcm5zIHVzZSB0aGUgc2FtZSB3aWxkY2FyZHMgdXNlZCBpbiB0aGUgc2hlbGwsIHdlcmUgJyonIG1hdGNoZXMgIgorImFueSBzZXF1ZW5jZSBvZiBjaGFyYWN0ZXJzLCBpbmNsdWRpbmcgdGhlIGVtcHR5IHN0cmluZyBhbmQgYWxzbyAnLycuIEZvciAiCisiZXhhbXBsZSwgSTwnL3Vzci8qL1JFQUQqJz4gbWF0Y2hlcyBJPCcvdXNyL3NoYXJlL2RvYy9wYWNrYWdlL1JFQURNRSc+LiAgQXMgIgorInVzdWFsLCAnPycgbWF0Y2hlcyBhbnkgc2luZ2xlIGNoYXJhY3RlciAoYWdhaW4sIGluY2x1ZGluZyAnLycpLiBBbmQgJ1snICIKKyJzdGFydHMgYSBjaGFyYWN0ZXIgY2xhc3MsIHdoaWNoIGNhbiBjb250YWluIGEgbGlzdCBvZiBjaGFyYWN0ZXJzLCByYW5nZXMgYW5kICIKKyJjb21wbGVtZW50YXRpb25zLiBTZWUgQjxnbG9iPig3KSBmb3IgZGV0YWlsZWQgaW5mb3JtYXRpb24gYWJvdXQgZ2xvYmJpbmcuICIKKyJOb3RlOiB0aGUgY3VycmVudCBpbXBsZW1lbnRhdGlvbiBtaWdodCByZS1pbmNsdWRlIG1vcmUgZGlyZWN0b3JpZXMgYW5kICIKKyJzeW1saW5rcyB0aGFuIG5lZWRlZCwgdG8gYmUgb24gdGhlIHNhZmUgc2lkZSBhbmQgYXZvaWQgcG9zc2libGUgdW5wYWNrICIKKyJmYWlsdXJlcywgZnV0dXJlIHdvcmsgbWlnaHQgZml4IHRoaXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1NTgKK21zZ2lkICIiCisiVGhpcyBjYW4gYmUgdXNlZCB0byByZW1vdmUgYWxsIHBhdGhzIGV4Y2VwdCBzb21lIHBhcnRpY3VsYXIgb25lczsgYSB0eXBpY2FsICIKKyJjYXNlIGlzOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTYyCisjLCBuby13cmFwCittc2dpZCAiIgorIkI8LS1wYXRoLWV4Y2x1ZGU9L3Vzci9zaGFyZS9kb2MvKj5cbiIKKyJCPC0tcGF0aC1pbmNsdWRlPS91c3Ivc2hhcmUvZG9jLyovY29weXJpZ2h0PlxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1NjUKK21zZ2lkICJ0byByZW1vdmUgYWxsIGRvY3VtZW50YXRpb24gZmlsZXMgZXhjZXB0IHRoZSBjb3B5cmlnaHQgZmlsZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1NjkKK21zZ2lkICIiCisiVGhlc2UgdHdvIG9wdGlvbnMgY2FuIGJlIHNwZWNpZmllZCBtdWx0aXBsZSB0aW1lcywgYW5kIGludGVybGVhdmVkIHdpdGggZWFjaCAiCisib3RoZXIuIEJvdGggYXJlIHByb2Nlc3NlZCBpbiB0aGUgZ2l2ZW4gb3JkZXIsIHdpdGggdGhlIGxhc3QgcnVsZSB0aGF0ICIKKyJtYXRjaGVzIGEgZmlsZSBuYW1lIG1ha2luZyB0aGUgZGVjaXNpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTcwCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1zdGF0dXMtZmQgPkk8bj4iCittc2dzdHIgIkI8LS1zdGF0dXMtZmQgPkk8RTxsdD5uRTxndD4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTc2Cittc2dpZCAiIgorIlNlbmQgbWFjaGluZS1yZWFkYWJsZSBwYWNrYWdlIHN0YXR1cyBhbmQgcHJvZ3Jlc3MgaW5mb3JtYXRpb24gdG8gZmlsZSAiCisiZGVzY3JpcHRvciBJPG4+LiBUaGlzIG9wdGlvbiBjYW4gYmUgc3BlY2lmaWVkIG11bHRpcGxlIHRpbWVzLiBUaGUgIgorImluZm9ybWF0aW9uIGlzIGdlbmVyYWxseSBvbmUgcmVjb3JkIHBlciBsaW5lLCBpbiBvbmUgb2YgdGhlIGZvbGxvd2luZyBmb3JtczoiCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo1NzcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHN0YXR1czogPkk8cGFja2FnZT5CPDogPkk8c3RhdHVzPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTgwCittc2dpZCAiUGFja2FnZSBzdGF0dXMgY2hhbmdlZDsgSTxzdGF0dXM+IGlzIGFzIGluIHRoZSBzdGF0dXMgZmlsZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo1ODAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHN0YXR1czogPkk8cGFja2FnZT5CPCA6IGVycm9yIDogPkk8ZXh0ZW5kZWQtZXJyb3ItbWVzc2FnZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjU4NAorbXNnaWQgIiIKKyJBbiBlcnJvciBvY2N1cnJlZC4gQW55IHBvc3NpYmxlIG5ld2xpbmVzIGluIEk8ZXh0ZW5kZWQtZXJyb3ItbWVzc2FnZT4gd2lsbCAiCisiYmUgY29udmVydGVkIHRvIHNwYWNlcyBiZWZvcmUgb3V0cHV0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjU4NAorIywgbm8td3JhcAorbXNnaWQgIkI8c3RhdHVzOiA+STxmaWxlPkI8IDogY29uZmZpbGUtcHJvbXB0IDogJz5JPHJlYWwtb2xkPkI8JyAnPkk8cmVhbC1uZXc+QjwnID5JPHVzZXJlZGl0ZWQ+QjwgPkk8ZGlzdGVkaXRlZD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjU4NworbXNnaWQgIlVzZXIgaXMgYmVpbmcgYXNrZWQgYSBjb25mZmlsZSBxdWVzdGlvbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo1ODcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHByb2Nlc3Npbmc6ID5JPHN0YWdlPkI8OiA+STxwYWNrYWdlPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTkyCittc2dpZCAiIgorIlNlbnQganVzdCBiZWZvcmUgYSBwcm9jZXNzaW5nIHN0YWdlIHN0YXJ0cy4gSTxzdGFnZT4gaXMgb25lIG9mIEI8dXBncmFkZT4sICIKKyJCPGluc3RhbGw+IChib3RoIHNlbnQgYmVmb3JlIHVucGFja2luZyksIEI8Y29uZmlndXJlPiwgQjx0cmlncHJvYz4sICIKKyJCPGRpc2FwcGVhcj4sIEI8cmVtb3ZlPiwgQjxwdXJnZT4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTkzCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1zdGF0dXMtbG9nZ2VyPj1JPGNvbW1hbmQ+IgorbXNnc3RyICJCPC0tc3RhdHVzLWZkID5JPEU8bHQ+bkU8Z3Q+PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjU5OAorbXNnaWQgIiIKKyJTZW5kIG1hY2hpbmUtcmVhZGFibGUgcGFja2FnZSBzdGF0dXMgYW5kIHByb2dyZXNzIGluZm9ybWF0aW9uIHRvIHRoZSBzaGVsbCAiCisiSTxjb21tYW5kPidzIHN0YW5kYXJkIGlucHV0LiBUaGlzIG9wdGlvbiBjYW4gYmUgc3BlY2lmaWVkIG11bHRpcGxlIHRpbWVzLiAiCisiVGhlIG91dHB1dCBmb3JtYXQgdXNlZCBpcyB0aGUgc2FtZSBhcyBpbiBCPC0tc3RhdHVzLWZkLj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo1OTkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tbG9nPT5JPGZpbGVuYW1lPiIKK21zZ3N0ciAiQjwtLWxvZz0+STzQuNC80Y8g0YTQsNC50LvQsD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2MTEKKyMsIGZ1enp5Cittc2dpZCAiIgorIkxvZyBzdGF0dXMgY2hhbmdlIHVwZGF0ZXMgYW5kIGFjdGlvbnMgdG8gSTxmaWxlbmFtZT4sIGluc3RlYWQgb2YgdGhlIGRlZmF1bHQgIgorIkk8L3Zhci9sb2cvZHBrZy5sb2c+LiBJZiB0aGlzIG9wdGlvbiBpcyBnaXZlbiBtdWx0aXBsZSB0aW1lcywgdGhlIGxhc3QgIgorImZpbGVuYW1lIGlzIHVzZWQuIExvZyBtZXNzYWdlcyBhcmUgb2YgdGhlIGZvcm0gYFlZWVktTU0tREQgSEg6TU06U1Mgc3RhdHVzICIKKyJJPHN0YXRlPiBJPHBrZz4gSTxpbnN0YWxsZWQtdmVyc2lvbj4nIGZvciBzdGF0dXMgY2hhbmdlIHVwZGF0ZXM7IGBZWVlZLU1NLUREICIKKyJISDpNTTpTUyBJPGFjdGlvbj4gSTxwa2c+IEk8aW5zdGFsbGVkLXZlcnNpb24+IEk8YXZhaWxhYmxlLXZlcnNpb24+JyBmb3IgIgorImFjdGlvbnMgd2hlcmUgSTxhY3Rpb24+IGlzIG9uZSBvZiBCPGluc3RhbGw+LCBCPHVwZ3JhZGU+LCBCPHJlbW92ZT4sICIKKyJCPHB1cmdlPjsgYW5kIGBZWVlZLU1NLUREIEhIOk1NOlNTIGNvbmZmaWxlIEk8ZmlsZW5hbWU+IEk8ZGVjaXNpb24+JyBmb3IgIgorImNvbmZmaWxlIGNoYW5nZXMgd2hlcmUgSTxkZWNpc2lvbj4gaXMgZWl0aGVyIEI8aW5zdGFsbD4gb3IgQjxrZWVwPi4iCittc2dzdHIgIiIKKyLQn9GA0L7RgtC+0LrQvtC70LjRgNC+0LLQsNGC0Ywg0LjQt9C80LXQvdC10L3QuNGPINC+0LHQvdC+0LLQu9C10L3QuNC5INC4INC00LXQudGB0YLQstC40Y8g0LIgSTzRhNCw0LnQuz4sINCy0LzQtdGB0YLQviDRhNCw0LnQuyDQv9C+ICIKKyLRg9C80L7Qu9GH0LDQvdC40Y4gSTwvdmFyL2xvZy9kcGtnLmxvZz4uINCV0YHQu9C4INGN0YLQvtGCINC/0LDRgNCw0LzQtdGC0YAg0YPQutCw0LfQsNC9INC90LXRgdC60L7Qu9GM0LrQviDRgNCw0LcsINGC0L4gIgorItC40YHQv9C+0LvRjNC30YPQtdGC0YHRjyDQv9C+0YHQu9C10LTQvdC10LUg0LjQvNGPINGE0LDQudC70LAuINCf0YDQvtGC0L7QutC+0LvQuNGA0YPQtdC80YvQtSDRgdC+0L7QsdGJ0LXQvdC40Y8g0LjQvNC10Y7RgiDQstC40LQgYFlZWVktIgorIk1NLUREIEhIOk1NOlNTIHN0YXR1cyBFPGx0PnN0YXRlRTxndD4gRTxsdD5wa2dFPGd0PiBFPGx0Pmluc3RhbGxlZC0iCisidmVyc2lvbkU8Z3Q+JyDQv9GA0Lgg0LjQt9C80LXQvdC10L3QuNC4INGB0L7RgdGC0L7Rj9C90LjRjyDQvtCx0L3QvtCy0LvQtdC90LjQuTsgYFlZWVktTU0tREQgSEg6TU06U1MgIgorIkU8bHQ+YWN0aW9uRTxndD4gRTxsdD5wa2dFPGd0PiBFPGx0Pmluc3RhbGxlZC12ZXJzaW9uRTxndD4gRTxsdD5hdmFpbGFibGUtIgorInZlcnNpb25FPGd0Picg0L/RgNC4INCy0YvQv9C+0LvQvdC10L3QuNC4INC00LXQudGB0YLQstC40Y8sINCz0LTQtSBJPEU8bHQ+YWN0aW9uRTxndD4+INC80L7QttC10YIg0LHRi9GC0YwgIgorImluc3RhbGwsIHVwZ3JhZGUsIHJlbW92ZSwgcHVyZ2U7INC4IGBZWVlZLU1NLUREIEhIOk1NOlNTIGNvbmZmaWxlICIKKyJFPGx0PmZpbGVuYW1lRTxndD4gRTxsdD5kZWNpc2lvbkU8Z3Q+JyDQv9GA0Lgg0LjQt9C80LXQvdC10L3QuNC4INC60L7QvdGE0LjQs9GD0YDQsNGG0LjQvtC90L3Ri9GFICIKKyLRhNCw0LnQu9C+0LIsIFxuIgorItCz0LTQtSBJPEU8bHQ+ZGVjaXNpb24+INC80L7QttC10YIg0LHRi9GC0YwgaW5zdGFsbCDQuNC70Lgga2VlcC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NjExCisjLCBuby13cmFwCittc2dpZCAiQjwtLW5vLWRlYnNpZz4iCittc2dzdHIgIkI8LS1uby1kZWJzaWc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NjE0Cittc2dpZCAiRG8gbm90IHRyeSB0byB2ZXJpZnkgcGFja2FnZSBzaWduYXR1cmVzLiIKK21zZ3N0ciAi0J3QtSDQv9GL0YLQsNGC0YzRgdGPINC/0YDQvtCy0LXRgNGP0YLRjCDQv9C+0LTQv9C40YHRjCDQv9Cw0LrQtdGC0LAuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjYxNAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tbm8tdHJpZ2dlcnM+IgorbXNnc3RyICJCPC0tbm8tZGVic2lnPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjYyMworbXNnaWQgIiIKKyJEbyBub3QgcnVuIGFueSB0cmlnZ2VycyBpbiB0aGlzIHJ1biAoYWN0aXZhdGlvbnMgd2lsbCBzdGlsbCBiZSByZWNvcmRlZCkuICAiCisiSWYgdXNlZCB3aXRoIEI8LS1jb25maWd1cmU+IEk8cGFja2FnZT4gb3IgQjwtLXRyaWdnZXJzLW9ubHk+IEk8cGFja2FnZT4gdGhlbiAiCisidGhlIG5hbWVkIHBhY2thZ2UgcG9zdGluc3Qgd2lsbCBzdGlsbCBiZSBydW4gZXZlbiBpZiBvbmx5IGEgdHJpZ2dlcnMgcnVuIGlzICIKKyJuZWVkZWQuIFVzZSBvZiB0aGlzIG9wdGlvbiBtYXkgbGVhdmUgcGFja2FnZXMgaW4gdGhlIGltcHJvcGVyIEI8dHJpZ2dlcnMtIgorImF3YWl0ZWQ+IGFuZCBCPHRyaWdnZXJzLXBlbmRpbmc+IHN0YXRlcy4gVGhpcyBjYW4gYmUgZml4ZWQgbGF0ZXIgYnkgcnVubmluZzogIgorIkI8ZHBrZyAtLWNvbmZpZ3VyZSAtLXBlbmRpbmc+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjYyMworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tdHJpZ2dlcnM+IgorbXNnc3RyICJCPC10PnxCPC0tdGVzdD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2MjYKK21zZ2lkICJDYW5jZWxzIGEgcHJldmlvdXMgQjwtLW5vLXRyaWdnZXJzPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjYyOCBkcGtnLmNmZy41OjE2CisjLCBuby13cmFwCittc2dpZCAiSTwvZXRjL2Rwa2cvZHBrZy5jZmc+IgorbXNnc3RyICJJPC9ldGMvZHBrZy9kcGtnLmNmZz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2MzEKK21zZ2lkICJDb25maWd1cmF0aW9uIGZpbGUgd2l0aCBkZWZhdWx0IG9wdGlvbnMuIgorbXNnc3RyICLQpNCw0LnQuyDQutC+0L3RhNC40LPRg9GA0LDRhtC40Lgg0YEg0L/QsNGA0LDQvNC10YLRgNCw0LzQuCDQv9C+INGD0LzQvtC70YfQsNC90LjRji4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NjMxCisjLCBuby13cmFwCittc2dpZCAiSTwvdmFyL2xvZy9kcGtnLmxvZz4iCittc2dzdHIgIkk8L3Zhci9sb2cvZHBrZy5sb2c+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NjM1Cittc2dpZCAiRGVmYXVsdCBsb2cgZmlsZSAoc2VlIEk8L2V0Yy9kcGtnL2Rwa2cuY2ZnPig1KSBhbmQgb3B0aW9uIEI8LS1sb2c+KS4iCittc2dzdHIgIiIKKyLQpNCw0LnQuyDQttGD0YDQvdCw0LvQsCDQv9C+INGD0LzQvtC70YfQsNC90LjRjiAo0YHQvNC+0YLRgNC40YLQtSBJPC9ldGMvZHBrZy9kcGtnLmNmZz4oNSkg0Lgg0L/QsNGA0LDQvNC10YLRgCBCPC0tIgorImxvZz4pLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjYzOAorbXNnaWQgIiIKKyJUaGUgb3RoZXIgZmlsZXMgbGlzdGVkIGJlbG93IGFyZSBpbiB0aGVpciBkZWZhdWx0IGRpcmVjdG9yaWVzLCBzZWUgb3B0aW9uICIKKyJCPC0tYWRtaW5kaXI+IHRvIHNlZSBob3cgdG8gY2hhbmdlIGxvY2F0aW9ucyBvZiB0aGVzZSBmaWxlcy4iCittc2dzdHIgIiIKKyLQntGB0YLQsNC70YzQvdGL0LUg0YTQsNC50LvRiyDQv9C10YDQtdGH0LjRgdC70LXQvdGLINGBINGD0LrQsNC30LDQvdC40LXQvCDQuNGFINC60LDRgtCw0LvQvtCz0L7QsiDQv9C+INGD0LzQvtC70YfQsNC90LjRjiwg0YHQvNC+0YLRgNC40YLQtSAiCisi0L/QsNGA0LDQvNC10YLRgCBCPGFkbWluZGlyPiwg0YfRgtC+0LHRiyDRg9C30L3QsNGC0YwsINC60LDQuiDQuNC30LzQtdC90LjRgtGMINC80LXRgdGC0L7Qv9C+0LvQvtC20LXQvdC40LUg0Y3RgtC40YUg0YTQsNC50LvQvtCyLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2MzgKKyMsIG5vLXdyYXAKK21zZ2lkICJJPC92YXIvbGliL2Rwa2cvYXZhaWxhYmxlPiIKK21zZ3N0ciAiSTwvdmFyL2xpYi9kcGtnL2F2YWlsYWJsZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2NDEKK21zZ2lkICJMaXN0IG9mIGF2YWlsYWJsZSBwYWNrYWdlcy4iCittc2dzdHIgItCh0L/QuNGB0L7QuiDQtNC+0YHRgtGD0L/QvdGL0YUg0L/QsNC60LXRgtC+0LIuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjY0MQorIywgbm8td3JhcAorbXNnaWQgIkk8L3Zhci9saWIvZHBrZy9zdGF0dXM+IgorbXNnc3RyICJJPC92YXIvbGliL2Rwa2cvc3RhdHVzPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjY0NworbXNnaWQgIiIKKyJTdGF0dXNlcyBvZiBhdmFpbGFibGUgcGFja2FnZXMuIFRoaXMgZmlsZSBjb250YWlucyBpbmZvcm1hdGlvbiBhYm91dCB3aGV0aGVyICIKKyJhIHBhY2thZ2UgaXMgbWFya2VkIGZvciByZW1vdmluZyBvciBub3QsIHdoZXRoZXIgaXQgaXMgaW5zdGFsbGVkIG9yIG5vdCwgIgorImV0Yy4gU2VlIHNlY3Rpb24gQjxJTkZPUk1BVElPTiBBQk9VVCBQQUNLQUdFUz4gZm9yIG1vcmUgaW5mby4iCittc2dzdHIgIiIKKyLQodC+0YHRgtC+0Y/QvdC40Y8g0LTQvtGB0YLRg9C/0L3Ri9GFINC/0LDQutC10YLQvtCyLiDQrdGC0L7RgiDRhNCw0LnQuyDRgdC+0LTQtdGA0LbQuNGCINC40L3RhNC+0YDQvNCw0YbQuNGOINC+INGC0L7QvCwg0L/QvtC80LXRh9C10L0g0LvQuCAiCisi0L/QsNC60LXRgiDQtNC70Y8g0YPQtNCw0LvQtdC90LjRjyDQuNC70Lgg0L3QtdGCLCDRg9GB0YLQsNC90L7QstC70LXQvSDQvtC9INC40LvQuCDQvdC10YIsINC4INGCLtC0LiDQodC80L7RgtGA0LjRgtC1INGA0LDQt9C00LXQuyAiCisiQjzQmNCd0KTQntCg0JzQkNCm0JjQryDQniDQn9CQ0JrQldCi0JDQpT4sINCz0LTQtSDQv9GA0LjQstC10LTQtdC90LAg0L/QvtC00YDQvtCx0L3QsNGPINC40L3RhNC+0YDQvNCw0YbQuNGPLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjY1MAorbXNnaWQgIiIKKyJUaGUgc3RhdHVzIGZpbGUgaXMgYmFja2VkIHVwIGRhaWx5IGluIEk8L3Zhci9iYWNrdXBzPi4gSXQgY2FuIGJlIHVzZWZ1bCBpZiAiCisiaXQncyBsb3N0IG9yIGNvcnJ1cHRlZCBkdWUgdG8gZmlsZXN5c3RlbXMgdHJvdWJsZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2NTMKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBmaWxlcyBhcmUgY29tcG9uZW50cyBvZiBhIGJpbmFyeSBwYWNrYWdlLiBTZWUgQjxkZWI+KDUpICBmb3IgIgorIm1vcmUgaW5mb3JtYXRpb24gYWJvdXQgdGhlbToiCittc2dzdHIgIiIKKyLQndC40LbQtdGB0LvQtdC00YPRjtGJ0LjQtSDRhNCw0LnQu9GLINGP0LLQu9GP0Y7RgtGB0Y8g0LrQvtC80L/QvtC90LXQvdGC0LDQvNC4INCx0LjQvdCw0YDQvdC+0LPQviDQv9Cw0LrQtdGC0LAuINCh0LzQvtGC0YDQuNGC0LUgQjxkZWI+IgorIig1KSwg0LPQtNC1INC/0YDQuNCy0LXQtNC10L3QsCDQv9C+0LTRgNC+0LHQvdCw0Y8g0LjQvdGE0L7RgNC80LDRhtC40Y86IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjY1MworIywgbm8td3JhcAorbXNnaWQgIkk8Y29udHJvbD4iCittc2dzdHIgIkk8Y29udHJvbD4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NjU1CisjLCBuby13cmFwCittc2dpZCAiSTxjb25mZmlsZXM+IgorbXNnc3RyICJJPGNvbmZmaWxlcz4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NjU3CisjLCBuby13cmFwCittc2dpZCAiSTxwcmVpbnN0PiIKK21zZ3N0ciAiSTxwcmVpbnN0PiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2NTkKKyMsIG5vLXdyYXAKK21zZ2lkICJJPHBvc3RpbnN0PiIKK21zZ3N0ciAiSTxwb3N0aW5zdD4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NjYxCisjLCBuby13cmFwCittc2dpZCAiSTxwcmVybT4iCittc2dzdHIgIkk8cHJlcm0+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjY2MworIywgbm8td3JhcAorbXNnaWQgIkk8cG9zdHJtPiIKK21zZ3N0ciAiSTxwb3N0cm0+IgorCisjLiB0eXBlOiBTSAorIzogZHBrZy4xOjY2NiBkcGtnLWJ1aWxkZmxhZ3MuMToxMjggZHBrZy1idWlsZHBhY2thZ2UuMToyMzAgZHBrZy1kZWIuMToyMzIKKyM6IGRwa2ctZGl2ZXJ0Ljg6MTEyIGRwa2ctcXVlcnkuMToyMDQgZHBrZy1zdGF0b3ZlcnJpZGUuODo2OCBkcGtnLXRyaWdnZXIuMTo2MAorIzogZHBrZy12ZW5kb3IuMTo0MiBkc2VsZWN0LjE6NDIzIHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozNTQKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiRU5WSVJPTk1FTlQiCittc2dzdHIgItCf0JXQoNCV0JzQldCd0J3Qq9CVINCe0JrQoNCj0JbQldCd0JjQryIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2NjcgZHNlbGVjdC4xOjQyNAorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPFNIRUxMPiIKK21zZ2lkICJCPEhPTUU+IgorbXNnc3RyICJCPFNIRUxMPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjY3MQorbXNnaWQgIiIKKyJJZiBzZXQsIEI8ZHBrZz4gd2lsbCB1c2UgaXQgYXMgdGhlIGRpcmVjdG9yeSBmcm9tIHdoaWNoIHRvIHJlYWQgdGhlIHVzZXIgIgorInNwZWNpZmljIGNvbmZpZ3VyYXRpb24gZmlsZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2NzEgZHBrZy1kZWIuMToyMzMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPFRNUERJUj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjY3NQorbXNnaWQgIiIKKyJJZiBzZXQsIEI8ZHBrZz4gd2lsbCB1c2UgaXQgYXMgdGhlIGRpcmVjdG9yeSBpbiB3aGljaCB0byBjcmVhdGUgdGVtcG9yYXJ5ICIKKyJmaWxlcyBhbmQgZGlyZWN0b3JpZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6Njc1CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8LUc+IgorbXNnaWQgIkI8UEFHRVI+IgorbXNnc3RyICJCPC1HPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjY3OAorIywgZnV6enkKK21zZ2lkICJUaGUgcHJvZ3JhbSBCPGRwa2c+IHdpbGwgZXhlY3V0ZSB3aGVuIGRpc3BsYXlpbmcgdGhlIGNvbmZmaWxlcy4iCittc2dzdHIgItCf0YDQvtCz0YDQsNC80LzQsCwg0LrQvtGC0L7RgNGD0Y4g0LfQsNC/0YPRgdGC0LjRgiBCPGRwa2c+INC/0YDQuCDRgdGC0LDRgNGC0LUg0L3QvtCy0L7QuSDQvtCx0L7Qu9C+0YfQutC4LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2NzgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPFNIRUxMPiIKK21zZ3N0ciAiQjxTSEVMTD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2ODEKKyMsIGZ1enp5Cittc2dpZCAiVGhlIHByb2dyYW0gQjxkcGtnPiB3aWxsIGV4ZWN1dGUgd2hlbiBzdGFydGluZyBhIG5ldyBzaGVsbC4iCittc2dzdHIgItCf0YDQvtCz0YDQsNC80LzQsCwg0LrQvtGC0L7RgNGD0Y4g0LfQsNC/0YPRgdGC0LjRgiBCPGRwa2c+INC/0YDQuCDRgdGC0LDRgNGC0LUg0L3QvtCy0L7QuSDQvtCx0L7Qu9C+0YfQutC4LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2ODEgZHBrZy1xdWVyeS4xOjIwOQorIywgbm8td3JhcAorbXNnaWQgIkI8Q09MVU1OUz4iCittc2dzdHIgIkI8Q09MVU1OUz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2ODUKK21zZ2lkICIiCisiU2V0cyB0aGUgbnVtYmVyIG9mIGNvbHVtbnMgQjxkcGtnPiBzaG91bGQgdXNlIHdoZW4gZGlzcGxheWluZyBmb3JtYXR0ZWQgIgorInRleHQuIEN1cnJlbnRseSBvbmx5IHVzZWQgYnkgLWwuIgorbXNnc3RyICIiCisi0JfQsNC00LDRkdGCINC60L7Qu9C40YfQtdGB0YLQstC+INC60L7Qu9C+0L3QvtC6INGC0LXQutGB0YLQsCwg0LjRgdC/0L7Qu9GM0LfRg9C10LzRi9GFINC/0YDQvtCz0YDQsNC80LzQvtC5IEI8ZHBrZz4g0L/RgNC4ICIKKyLRhNC+0YDQvNCw0YLQuNGA0L7QstCw0L3QuNC4INGC0LXQutGB0YLQsC4g0JIg0L3QsNGB0YLQvtGP0YnQuNC5INC80L7QvNC10L3RgiDQuNGB0L/QvtC70YzQt9GD0LXRgtGB0Y8g0YLQvtC70YzQutC+INGBINC/0LDRgNCw0LzQtdGC0YDQvtC8ICIKKyJCPC1sPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6Njg1CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8RFBLR19PTERfQ09ORkZJTEU+IgorbXNnaWQgIkI8RFBLR19TSEVMTF9SRUFTT04+IgorbXNnc3RyICJCPERQS0dfT0xEX0NPTkZGSUxFPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjY4OQorbXNnaWQgIiIKKyJEZWZpbmVkIGJ5IEI8ZHBrZz4gb24gdGhlIHNoZWxsIHNwYXduZWQgb24gdGhlIGNvbmZmaWxlIHByb21wdCB0byBleGFtaW5lICIKKyJ0aGUgc2l0dWF0aW9uLiBDdXJyZW50IHZhbGlkIHZhbHVlOiBCPGNvbmZmaWxlLXByb21wdD4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6Njg5CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8RFBLR19PTERfQ09ORkZJTEU+IgorbXNnaWQgIkI8RFBLR19DT05GRklMRV9PTEQ+IgorbXNnc3RyICJCPERQS0dfT0xEX0NPTkZGSUxFPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjY5MworbXNnaWQgIiIKKyJEZWZpbmVkIGJ5IEI8ZHBrZz4gb24gdGhlIHNoZWxsIHNwYXduZWQgb24gdGhlIGNvbmZmaWxlIHByb21wdCB0byBleGFtaW5lICIKKyJ0aGUgc2l0dWF0aW9uLiBDb250YWlucyB0aGUgcGF0aCB0byB0aGUgb2xkIGNvbmZmaWxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjY5MworIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPERQS0dfT0xEX0NPTkZGSUxFPiIKK21zZ2lkICJCPERQS0dfQ09ORkZJTEVfTkVXPiIKK21zZ3N0ciAiQjxEUEtHX09MRF9DT05GRklMRT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2OTcKK21zZ2lkICIiCisiRGVmaW5lZCBieSBCPGRwa2c+IG9uIHRoZSBzaGVsbCBzcGF3bmVkIG9uIHRoZSBjb25mZmlsZSBwcm9tcHQgdG8gZXhhbWluZSAiCisidGhlIHNpdHVhdGlvbi4gQ29udGFpbnMgdGhlIHBhdGggdG8gdGhlIG5ldyBjb25mZmlsZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2OTcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPERQS0dfUlVOTklOR19WRVJTSU9OPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzAxCittc2dpZCAiIgorIkRlZmluZWQgYnkgQjxkcGtnPiBvbiB0aGUgbWFpbnRhaW5lciBzY3JpcHQgZW52aXJvbm1lbnQgdG8gdGhlIHZlcnNpb24gb2YgIgorInRoZSBjdXJyZW50bHkgcnVubmluZyBCPGRwa2c+IGluc3RhbmNlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjcwMSBkcGtnLWRpdmVydC44OjExNworIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPERQS0dfTk9fVFNUUD4iCittc2dpZCAiQjxEUEtHX01BSU5UU0NSSVBUX1BBQ0tBR0U+IgorbXNnc3RyICJCPERQS0dfTk9fVFNUUD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3MDUKK21zZ2lkICIiCisiRGVmaW5lZCBieSBCPGRwa2c+IG9uIHRoZSBtYWludGFpbmVyIHNjcmlwdCBlbnZpcm9ubWVudCB0byB0aGUgcGFja2FnZSBuYW1lICIKKyJiZWluZyBoYW5kbGVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjcwNQorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPERQS0dfTk9fVFNUUD4iCittc2dpZCAiQjxEUEtHX01BSU5UU0NSSVBUX0FSQ0g+IgorbXNnc3RyICJCPERQS0dfTk9fVFNUUD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3MDkKK21zZ2lkICIiCisiRGVmaW5lZCBieSBCPGRwa2c+IG9uIHRoZSBtYWludGFpbmVyIHNjcmlwdCBlbnZpcm9ubWVudCB0byB0aGUgYXJjaGl0ZWN0dXJlICIKKyJ0aGUgcGFja2FnZSBnb3QgYnVpbHQgZm9yLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjcwOQorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPERQS0dfTk9fVFNUUD4iCittc2dpZCAiQjxEUEtHX01BSU5UU0NSSVBUX05BTUU+IgorbXNnc3RyICJCPERQS0dfTk9fVFNUUD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3MTMKK21zZ2lkICIiCisiRGVmaW5lZCBieSBCPGRwa2c+IG9uIHRoZSBtYWludGFpbmVyIHNjcmlwdCBlbnZpcm9ubWVudCB0byB0aGUgbmFtZSBvZiB0aGUgIgorInNjcmlwdCBydW5uaW5nIChwcmVpbnN0LCBwb3N0aW5zdCwgcHJlcm0sIHBvc3RybSkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3MTYKKyMsIGZ1enp5Cittc2dpZCAiVG8gbGlzdCBwYWNrYWdlcyByZWxhdGVkIHRvIHRoZSBlZGl0b3IgQjx2aT4oMSk6IgorbXNnc3RyICLQn9C+0LrQsNC30LDRgtGMINGB0L/QuNGB0L7QuiDQv9Cw0LrQtdGC0L7Qsiwg0L7RgtC90L7RgdGP0YnQuNGF0YHRjyDQuiDRgNC10LTQsNC60YLQvtGA0YMgdmk6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzE4CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIiAgICAgQjxkcGtnIC1sIFxcKGFxKnZpKlxcKGFxPlxuIgorbXNnc3RyICJCPCBkcGtnIC1sIFxcKGFxKnZpKlxcKGFxPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjcyMQorIywgZnV6enkKK21zZ2lkICJUbyBzZWUgdGhlIGVudHJpZXMgaW4gSTwvdmFyL2xpYi9kcGtnL2F2YWlsYWJsZT4gb2YgdHdvIHBhY2thZ2VzOiIKK21zZ3N0ciAi0J/QvtGB0LzQvtGC0YDQtdGC0Ywg0LfQsNC/0LjRgdC4INC+INC00LLRg9GFINC/0LDQutC10YLQsNGFINCyINGE0LDQudC70LUgQjwvdmFyL2xpYi9kcGtnL2F2YWlsYWJsZT46IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzIzCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIiAgICAgQjxkcGtnIC0tcHJpbnQtYXZhaWwgZWx2aXMgdmltIHwgbGVzcz5cbiIKK21zZ3N0ciAiQjwgZHBrZyAtLXByaW50LWF2YWlsIGVsdmlzIHZpbSB8IGxlc3M+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzI2Cittc2dpZCAiVG8gc2VhcmNoIHRoZSBsaXN0aW5nIG9mIHBhY2thZ2VzIHlvdXJzZWxmOiIKK21zZ3N0ciAi0JLRgNGD0YfQvdGD0Y4g0L/RgNC+0YHQvNC+0YLRgNC10YLRjCDRgdC/0LjRgdC+0Log0L/QsNC60LXRgtC+0LI6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzI4CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIiAgICAgQjxsZXNzIC92YXIvbGliL2Rwa2cvYXZhaWxhYmxlPlxuIgorbXNnc3RyICJCPCBsZXNzIC92YXIvbGliL2Rwa2cvYXZhaWxhYmxlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjczMQorbXNnaWQgIlRvIHJlbW92ZSBhbiBpbnN0YWxsZWQgZWx2aXMgcGFja2FnZToiCittc2dzdHIgItCj0LTQsNC70LjRgtGMINGD0YHRgtCw0L3QvtCy0LvQtdC90L3Ri9C5INC/0LDQutC10YIgZWx2aXM6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzMzCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIiAgICAgQjxkcGtnIC1yIGVsdmlzPlxuIgorbXNnc3RyICJCPCBkcGtnIC1yIGVsdmlzPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjczOAorbXNnaWQgIiIKKyJUbyBpbnN0YWxsIGEgcGFja2FnZSwgeW91IGZpcnN0IG5lZWQgdG8gZmluZCBpdCBpbiBhbiBhcmNoaXZlIG9yIENEUk9NLiBUaGUgIgorIlwiYXZhaWxhYmxlXCIgZmlsZSBzaG93cyB0aGF0IHRoZSB2aW0gcGFja2FnZSBpcyBpbiBzZWN0aW9uIFwiZWRpdG9yc1wiOiIKK21zZ3N0ciAiIgorItCn0YLQvtCx0Ysg0YPRgdGC0LDQvdC+0LLQuNGC0Ywg0L/QsNC60LXRgiwg0YHQvdCw0YfQsNC70LAg0L3Rg9C20L3QviDQvdCw0LnRgtC4INC10LPQviDQsiDQsNGA0YXQuNCy0LUg0LjQu9C4INC90LAgQ0RST00uINCk0LDQudC7ICIKKyJcImF2YWlsYWJsZVwiINC/0L7QutCw0LfRi9Cy0LDQtdGCLCDRh9GC0L4g0L/QsNC60LXRgiB2aW0g0L3QsNGF0L7QtNC40YLRgdGPINCyINGB0LXQutGG0LjQuCBcImVkaXRvcnMiCisiXCIgKFwi0YDQtdC00LDQutGC0L7RgNGLXCIpOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjc0MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICIiCisiICAgICBCPGNkIC9tZWRpYS9jZHJvbS9wb29sL21haW4vdi92aW0+XG4iCisiICAgICBCPGRwa2cgLWkgdmltXzQuNS0zLmRlYj5cbiIKK21zZ3N0ciAiQjwgY2QgL2Nkcm9tL2hhbW0vaGFtbS9iaW5hcnkvZWRpdG9ycz4gQjwgZHBrZyAtaSB2aW1fNC41LTMuZGViPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjc0NAorbXNnaWQgIlRvIG1ha2UgYSBsb2NhbCBjb3B5IG9mIHRoZSBwYWNrYWdlIHNlbGVjdGlvbiBzdGF0ZXM6IgorbXNnc3RyICLQn9C+0LvRg9GH0LjRgtGMINC70L7QutCw0LvRjNC90YPRjiDQutC+0L/QuNGOINGB0L7RgdGC0L7Rj9C90LjQuSDQstGL0LHRgNCw0L3QvdGL0YUg0L/QsNC60LXRgtC+0LI6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzQ2CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIiAgICAgQjxkcGtnIC0tZ2V0LXNlbGVjdGlvbnMgRTxndD5teXNlbGVjdGlvbnM+XG4iCittc2dzdHIgIkI8IGRwa2cgLS1nZXQtc2VsZWN0aW9ucyBFPGd0Pm15c2VsZWN0aW9ucz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3NTAKK21zZ2lkICIiCisiWW91IG1pZ2h0IHRyYW5zZmVyIHRoaXMgZmlsZSB0byBhbm90aGVyIGNvbXB1dGVyLCBhbmQgaW5zdGFsbCBpdCB0aGVyZSB3aXRoOiIKK21zZ3N0ciAiIgorItCS0Ysg0LzQvtC20LXRgtC1INC/0LXRgNC10L3QtdGB0YLQuCDRjdGC0L7RgiDRhNCw0LnQuyDQvdCwINC00YDRg9Cz0L7QuSDQutC+0LzQv9GM0Y7RgtC10YAg0Lgg0YPRgdGC0LDQvdC+0LLQuNGC0Ywg0LXQs9C+INGC0LDQvCDRgSAiCisi0L/QvtC80L7RidGM0Y46IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzUzCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIiIKKyIgICAgIEI8ZHBrZyAtLWNsZWFyLXNlbGVjdGlvbnM+XG4iCisiICAgICBCPGRwa2cgLS1zZXQtc2VsZWN0aW9ucyBFPGx0Pm15c2VsZWN0aW9ucz5cbiIKK21zZ3N0ciAiQjwgZHBrZyAtLXNldC1zZWxlY3Rpb25zIEU8bHQ+bXlzZWxlY3Rpb25zPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjc1OQorIywgZnV6enkKK21zZ2lkICIiCisiTm90ZSB0aGF0IHRoaXMgd2lsbCBub3QgYWN0dWFsbHkgaW5zdGFsbCBvciByZW1vdmUgYW55dGhpbmcsIGJ1dCBqdXN0IHNldCAiCisidGhlIHNlbGVjdGlvbiBzdGF0ZSBvbiB0aGUgcmVxdWVzdGVkIHBhY2thZ2VzLiBZb3Ugd2lsbCBuZWVkIHNvbWUgb3RoZXIgIgorImFwcGxpY2F0aW9uIHRvIGFjdHVhbGx5IGRvd25sb2FkIGFuZCBpbnN0YWxsIHRoZSByZXF1ZXN0ZWQgcGFja2FnZXMuIEZvciAiCisiZXhhbXBsZSwgcnVuIEI8YXB0LWdldCBkc2VsZWN0LXVwZ3JhZGU+LiIKK21zZ3N0ciAiIgorItCX0LDQvNC10YLQuNC8LCDRh9GC0L4g0L/RgNC4INGN0YLQvtC8INC90LjRh9C10LPQviDQvdC1INCx0YPQtNC10YIg0L3QuCDRg9GB0YLQsNC90L7QstC70LXQvdC+LCDQvdC4INGD0LTQsNC70LXQvdC+LCDQv9GA0L7RgdGC0L4gIgorItCx0YPQtNGD0YIg0LfQsNC00LDQvdGLINGB0L7RgdGC0L7Rj9C90LjRjyDQt9Cw0L/RgNC+0YjQtdC90L3Ri9GFINC/0LDQutC10YLQvtCyLiDQlNC70Y8g0YLQvtCz0L4sINGH0YLQvtCx0Ysg0L3QsCDRgdCw0LzQvtC8INC00LXQu9C1ICIKKyLRgdC60LDRh9Cw0YLRjCDQuCDRg9GB0YLQsNC90L7QstC40YLRjCDQt9Cw0L/RgNC+0YjQtdC90L3Ri9C1INC/0LDQutC10YLRiywg0LLQsNC8INC/0L7QvdCw0LTQvtCx0LjRgtGB0Y8g0LTRgNGD0LPQsNGPINC/0YDQvtCz0YDQsNC80LzQsC4gIgorItCd0LDQv9GA0LjQvNC10YAsINC30LDQv9GD0YHRgtC40YLQtSBCPGRzZWxlY3Q+INC4INCy0YvQsdC10YDQuNGC0LUgXCLQo9GB0YLQsNC90L7QstC40YLRjFwiLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjc2MgorbXNnaWQgIiIKKyJPcmRpbmFyaWx5LCB5b3Ugd2lsbCBmaW5kIHRoYXQgQjxkc2VsZWN0PigxKSBwcm92aWRlcyBhIG1vcmUgY29udmVuaWVudCB3YXkgIgorInRvIG1vZGlmeSB0aGUgcGFja2FnZSBzZWxlY3Rpb24gc3RhdGVzLiIKK21zZ3N0ciAiIgorItCe0LHRi9GH0L3QviBCPGRzZWxlY3Q+KDgpINC/0YDQtdC00L7RgdGC0LDQstC70Y/QtdGCINCx0L7Qu9C10LUg0YPQtNC+0LHQvdGL0Lkg0YHQv9C+0YHQvtCxINC40LfQvNC10L3QuNGC0Ywg0YHQvtGB0YLQvtGP0L3QuNGPICIKKyLQstGL0LHRgNCw0L3QvdGL0YUg0L/QsNC60LXRgtC+0LIuIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy4xOjc2NAorIywgbm8td3JhcAorbXNnaWQgIkFERElUSU9OQUwgRlVOQ1RJT05BTElUWSIKK21zZ3N0ciAi0JTQntCf0J7Qm9Cd0JjQotCV0JvQrNCd0JDQryDQpNCj0J3QmtCm0JjQntCd0JDQm9Cs0J3QntCh0KLQrCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjc2NworIywgZnV6enkKK21zZ2lkICIiCisiQWRkaXRpb25hbCBmdW5jdGlvbmFsaXR5IGNhbiBiZSBnYWluZWQgYnkgaW5zdGFsbGluZyBhbnkgb2YgdGhlIGZvbGxvd2luZyAiCisicGFja2FnZXM6IEI8YXB0PiwgQjxhcHRpdHVkZT4gYW5kIEI8ZGVic3Vtcz4uIgorbXNnc3RyICIiCisi0JTQvtC/0L7Qu9C90LjRgtC10LvRjNC90LDRjyDRhNGD0L3QutGG0LjQvtC90LDQu9GM0L3QvtGB0YLRjCDQvNC+0LbQtdGCINCx0YvRgtGMINC/0L7Qu9GD0YfQtdC90LAg0YPRgdGC0LDQvdC+0LLQutC+0Lkg0LvRjtCx0YvRhSAiCisi0YHQu9C10LTRg9GO0YnQuNGFINC/0LDQutC10YLQvtCyOiBJPGFwdD4sIEk8YXB0aXR1ZGU+INC4IEk8ZGVic3Vtcz4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6Nzc5CisjLCBmdXp6eQorbXNnaWQgIiIKKyJCPGFwdGl0dWRlPigxKSwgQjxhcHQ+KDEpLCBCPGRzZWxlY3Q+KDEpLCBCPGRwa2ctZGViPigxKSwgQjxkcGtnLXF1ZXJ5PigxKSwgIgorIkI8ZGViPig1KSwgQjxkZWItY29udHJvbD4oNSksIEI8ZHBrZy5jZmc+KDUpLCBhbmQgQjxkcGtnLXJlY29uZmlndXJlPig4KS4iCittc2dzdHIgIiIKKyJCPGRzZWxlY3Q+KDEpLCBCPGRwa2ctZGViPigxKSwgQjxkcGtnLXF1ZXJ5PigxKSwgQjxkZWI+KDUpLCBCPGRlYi1jb250cm9sPiIKKyIoNSksIEI8ZHBrZy5jZmc+KDUpINC4IEI8ZHBrZy1yZWNvbmZpZ3VyZT4oOCkuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzgyCittc2dpZCAiQjwtLW5vLWFjdD4gdXN1YWxseSBnaXZlcyBsZXNzIGluZm9ybWF0aW9uIHRoYW4gbWlnaHQgYmUgaGVscGZ1bC4iCittc2dzdHIgIkI8LS1uby1hY3Q+INC+0LHRi9GH0L3QviDQtNCw0LXRgiDQvNC10L3RjNGI0LUg0LjQvdGE0L7RgNC80LDRhtC40LgsINGH0LXQvCDQvNC+0LPQu9C+INCx0Ysg0LHRi9GC0Ywg0L/QvtC70LXQt9C90YvQvC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3ODUgZHBrZy5jZmcuNToyMgorIywgZnV6enkKK21zZ2lkICIiCisiU2VlIEk8L3Vzci9zaGFyZS9kb2MvZHBrZy9USEFOS1M+IGZvciB0aGUgbGlzdCBvZiBwZW9wbGUgd2hvIGhhdmUgIgorImNvbnRyaWJ1dGVkIHRvIEI8ZHBrZz4uIgorbXNnc3RyICIiCisi0KHQvNC+0YLRgNC40YLQtSDRhNCw0LnQuyBJPC91c3Ivc2hhcmUvZG9jL2Rwa2cvVEhBTktTPiwg0LPQtNC1INC/0YDQuNCy0LXQtNGR0L0g0YHQv9C40YHQvtC6INGC0LXRhSwg0LrRgtC+ICIKKyLRg9GH0LDRgdGC0LLQvtCy0LDQuyDQsiDRgNCw0LfRgNCw0LHQvtGC0LrQtSBCPGRwa2c+LlxuIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgImRwa2ctYXJjaGl0ZWN0dXJlIgorbXNnc3RyICJCPGRwa2cgLS1wcmludC1hcmNoaXRlY3R1cmU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjQKK21zZ2lkICIiCisiZHBrZy1hcmNoaXRlY3R1cmUgLSBzZXQgYW5kIGRldGVybWluZSB0aGUgYXJjaGl0ZWN0dXJlIGZvciBwYWNrYWdlIGJ1aWxkaW5nIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6OAorIywgZnV6enkKK21zZ2lkICJCPGRwa2ctYXJjaGl0ZWN0dXJlPiBbSTxvcHRpb24+Li4uXSBbSTxjb21tYW5kPl0iCittc2dzdHIgIkI8ZHBrZz4gW0k80L/QsNGA0LDQvNC10YLRgNGLPl0gSTzQtNC10LnRgdGC0LLQuNC1PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMworbXNnaWQgIiIKKyJkcGtnLWFyY2hpdGVjdHVyZSBkb2VzIHByb3ZpZGUgYSBmYWNpbGl0eSB0byBkZXRlcm1pbmUgYW5kIHNldCB0aGUgYnVpbGQgYW5kICIKKyJob3N0IGFyY2hpdGVjdHVyZSBmb3IgcGFja2FnZSBidWlsZGluZy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxNgorbXNnaWQgIiIKKyJUaGUgYnVpbGQgYXJjaGl0ZWN0dXJlIGlzIGFsd2F5cyBkZXRlcm1pbmVkIGJ5IGFuIGV4dGVybmFsIGNhbGwgdG8gQjxkcGtnPiIKKyIoMSksIGFuZCBjYW4gbm90IGJlIHNldCBhdCB0aGUgY29tbWFuZCBsaW5lLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI1Cittc2dpZCAiIgorIllvdSBjYW4gc3BlY2lmeSB0aGUgaG9zdCBhcmNoaXRlY3R1cmUgYnkgcHJvdmlkaW5nIG9uZSBvciBib3RoIG9mIHRoZSAiCisib3B0aW9ucyBCPC1hPiBhbmQgQjwtdD4uIFRoZSBkZWZhdWx0IGlzIGRldGVybWluZWQgYnkgYW4gZXh0ZXJuYWwgY2FsbCB0byAiCisiQjxnY2M+KDEpLCBvciB0aGUgc2FtZSBhcyB0aGUgYnVpbGQgYXJjaGl0ZWN0dXJlIGlmIFxccy0xQ0NcXHMwIG9yIGdjYyBhcmUgIgorImJvdGggbm90IGF2YWlsYWJsZS4gT25lIG91dCBvZiBCPC1hPiBhbmQgQjwtdD4gaXMgc3VmZmljaWVudCwgdGhlIHZhbHVlIG9mICIKKyJ0aGUgb3RoZXIgd2lsbCBiZSBzZXQgdG8gYSB1c2FibGUgZGVmYXVsdC4gSW5kZWVkLCBpdCBpcyBvZnRlbiBiZXR0ZXIgdG8gIgorIm9ubHkgc3BlY2lmeSBvbmUsIGJlY2F1c2UgQjxkcGtnLWFyY2hpdGVjdHVyZT4gd2lsbCB3YXJuIHlvdSBpZiB5b3VyIGNob2ljZSAiCisiZG9lcyBub3QgbWF0Y2ggdGhlIGRlZmF1bHQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI2IGRwa2ctYnVpbGRmbGFncy4xOjQ1IGRwa2ctZGViLjE6MjcgZHBrZy1kaXZlcnQuODoyNAorIzogZHBrZy1xdWVyeS4xOjEzIGRwa2ctc291cmNlLjE6MTggZHBrZy1zcGxpdC4xOjMxIGRwa2ctc3RhdG92ZXJyaWRlLjg6MjMKKyM6IGRwa2ctdHJpZ2dlci4xOjI0IGRwa2ctdmVuZG9yLjE6MTQgc3RhcnQtc3RvcC1kYWVtb24uODozNAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjIwMgorIywgbm8td3JhcAorbXNnaWQgIkNPTU1BTkRTIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI3CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LWw+IgorbXNnc3RyICJCPC1CPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTozMQorbXNnaWQgIiIKKyJQcmludCB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGVzLCBvbmUgZWFjaCBsaW5lLCBpbiB0aGUgZm9ybWF0ICIKKyJJPFZBUklBQkxFPXZhbHVlPi4gVGhpcyBpcyB0aGUgZGVmYXVsdCBhY3Rpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjMxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LWU+STxkZWJpYW4tYXJjaGl0ZWN0dXJlPiIKK21zZ3N0ciAiQjxkcGtnIC0tcHJpbnQtYXJjaGl0ZWN0dXJlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTozNworbXNnaWQgIiIKKyJDaGVjayBmb3IgZXF1YWxpdHkgb2YgYXJjaGl0ZWN0dXJlLiBCeSBkZWZhdWx0IEk8ZGViaWFuLWFyY2hpdGVjdHVyZT4gaXMgIgorImNvbXBhcmVkIGFnYWluc3QgdGhlIGN1cnJlbnQgRGViaWFuIGFyY2hpdGVjdHVyZSwgYmVpbmcgdGhlIGhvc3QuICBUaGlzICIKKyJhY3Rpb24gd2lsbCBub3QgZXhwYW5kIHRoZSBhcmNoaXRlY3R1cmUgd2lsZGNhcmRzLiBDb21tYW5kIGZpbmlzaGVzIHdpdGggYW4gIgorImV4aXQgc3RhdHVzIG9mIDAgaWYgbWF0Y2hlZCwgMSBpZiBub3QgbWF0Y2hlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MzcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1pPkk8YXJjaGl0ZWN0dXJlLXdpbGRjYXJkPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjQzCittc2dpZCAiIgorIkNoZWNrIGZvciBpZGVudGl0eSBvZiBhcmNoaXRlY3R1cmUgYnkgZXhwYW5kaW5nIEk8YXJjaGl0ZWN0dXJlLXdpbGRjYXJkPiBhcyAiCisiYW4gYXJjaGl0ZWN0dXJlIHdpbGRjYXJkIGFuZCBjb21wYXJpbmcgYWdhaW5zdCB0aGUgY3VycmVudCBEZWJpYW4gIgorImFyY2hpdGVjdHVyZS4gQ29tbWFuZCBmaW5pc2hlcyB3aXRoIGFuIGV4aXQgc3RhdHVzIG9mIDAgaWYgbWF0Y2hlZCwgMSBpZiBub3QgIgorIm1hdGNoZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjQzCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LXE+STx2YXJpYWJsZS1uYW1lPiIKK21zZ3N0ciAiQjwtLWxvZz0+STzQuNC80Y8g0YTQsNC50LvQsD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NDYKK21zZ2lkICJQcmludCB0aGUgdmFsdWUgb2YgYSBzaW5nbGUgdmFyaWFibGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjQ2CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LXM+IgorbXNnc3RyICJCPC1CPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo1MAorbXNnaWQgIiIKKyJQcmludCBhbiBleHBvcnQgY29tbWFuZC4gVGhpcyBjYW4gYmUgdXNlZCB0byBzZXQgdGhlIGVudmlyb25tZW50IHZhcmlhYmxlcyAiCisidXNpbmcgZXZhbC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NTAKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtdT4iCittc2dzdHIgIkI8LUI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjUzCittc2dpZCAiUHJpbnQgYSBzaW1pbGFyIGNvbW1hbmQgdG8gQjwtcz4gYnV0IHRvIHVuc2V0IGFsbCB2YXJpYWJsZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjUzCisjLCBuby13cmFwCittc2dpZCAiQjwtYz5JPCBjb21tYW5kPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjU3Cittc2dpZCAiIgorIkV4ZWN1dGUgYSBJPGNvbW1hbmQ+IGluIGFuIGVudmlyb25tZW50IHdoaWNoIGhhcyBhbGwgdmFyaWFibGVzIHNldCB0byB0aGUgIgorImRldGVybWluZWQgdmFsdWUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjU3CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LUw+IgorbXNnc3RyICJCPC1CPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo2MAorbXNnaWQgIlByaW50IGEgbGlzdCBvZiB2YWxpZCBhcmNoaXRlY3R1cmUgbmFtZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NjMgZHBrZy1idWlsZGZsYWdzLjE6OTIgZHBrZy1idWlsZHBhY2thZ2UuMToyMjYKKyM6IGRwa2ctY2hlY2tidWlsZGRlcHMuMTozNiBkcGtnLWRpc3RhZGRmaWxlLjE6MzUgZHBrZy1kZWIuMToxNzUKKyM6IGRwa2ctZGl2ZXJ0Ljg6NzQgZHBrZy1nZW5jaGFuZ2VzLjE6MTM0IGRwa2ctZ2VuY29udHJvbC4xOjEyNAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDQ2IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6NDEgZHBrZy1uYW1lLjE6NjEKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTozNiBkcGtnLXF1ZXJ5LjE6MTEzIGRwa2ctc2NhbnBhY2thZ2VzLjE6OTkKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMTo2OCBkcGtnLXNobGliZGVwcy4xOjIxOCBkcGtnLXNvdXJjZS4xOjk5CisjOiBkcGtnLXNwbGl0LjE6MTI5IGRwa2ctc3RhdG92ZXJyaWRlLjg6NDcgZHBrZy10cmlnZ2VyLjE6MzQgZHBrZy12ZW5kb3IuMTozMQorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjMxOQorbXNnaWQgIlNob3cgdGhlIHVzYWdlIG1lc3NhZ2UgYW5kIGV4aXQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NjYgZHBrZy1idWlsZGZsYWdzLjE6OTUgZHBrZy1idWlsZHBhY2thZ2UuMToyMjkKKyM6IGRwa2ctY2hlY2tidWlsZGRlcHMuMTozOSBkcGtnLWRpc3RhZGRmaWxlLjE6MzggZHBrZy1kZWIuMToxNzgKKyM6IGRwa2ctZGl2ZXJ0Ljg6NzcgZHBrZy1nZW5jaGFuZ2VzLjE6MTM3IGRwa2ctZ2VuY29udHJvbC4xOjEyNworIzogZHBrZy1nZW5zeW1ib2xzLjE6NDQ5IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6NDQgZHBrZy1uYW1lLjE6NjQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTozOSBkcGtnLXF1ZXJ5LjE6MTE2IGRwa2ctc2NhbnBhY2thZ2VzLjE6MTAyCisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6NzAgZHBrZy1zaGxpYmRlcHMuMToyMjEgZHBrZy1zb3VyY2UuMToxMDIKKyM6IGRwa2ctc3BsaXQuMToxMzIgZHBrZy1zdGF0b3ZlcnJpZGUuODo1MCBkcGtnLXRyaWdnZXIuMTozNyBkcGtnLXZlbmRvci4xOjM0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzIyCisjLCBmdXp6eQorbXNnaWQgIlNob3cgdGhlIHZlcnNpb24gYW5kIGV4aXQuIgorbXNnc3RyICLQktGL0LTQsNGC0Ywg0LjQvdGE0L7RgNC80LDRhtC40Y4g0L4g0LLQtdGA0YHQuNC4INC4INC30LDQstC10YDRiNC40YLRjCDRgNCw0LHQvtGC0YMuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo2OAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1hPkk8ZGViaWFuLWFyY2hpdGVjdHVyZT4iCittc2dzdHIgIkI8ZHBrZyAtLXByaW50LWFyY2hpdGVjdHVyZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NzEKK21zZ2lkICJTZXQgdGhlIERlYmlhbiBhcmNoaXRlY3R1cmUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjcxIGRwa2ctYnVpbGRwYWNrYWdlLjE6MTEwCisjLCBuby13cmFwCittc2dpZCAiQjwtdD5JPGdudS1zeXN0ZW0tdHlwZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo3NAorbXNnaWQgIlNldCB0aGUgR05VIHN5c3RlbSB0eXBlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo3NAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1mPiIKK21zZ3N0ciAiQjwtQj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6ODEKK21zZ2lkICIiCisiVmFsdWVzIHNldCBieSBleGlzdGluZyBlbnZpcm9ubWVudCB2YXJpYWJsZXMgd2l0aCB0aGUgc2FtZSBuYW1lIGFzIHVzZWQgYnkgIgorInRoZSBzY3JpcHRzIGFyZSBob25vcmVkIChpLmUuIHVzZWQgYnkgQjxkcGtnLWFyY2hpdGVjdHVyZT4pLCBleGNlcHQgaWYgdGhpcyAiCisiZm9yY2UgZmxhZyBpcyBwcmVzZW50LiBUaGlzIGFsbG93cyB0aGUgdXNlciB0byBvdmVycmlkZSBhIHZhbHVlIGV2ZW4gd2hlbiAiCisidGhlIGNhbGwgdG8gQjxkcGtnLWFyY2hpdGVjdHVyZT4gaXMgYnVyaWVkIGluIHNvbWUgb3RoZXIgc2NyaXB0IChmb3IgZXhhbXBsZSAiCisiQjxkcGtnLWJ1aWxkcGFja2FnZT4oMSkpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo4MgorIywgbm8td3JhcAorbXNnaWQgIlRFUk1TIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjgzCisjLCBuby13cmFwCittc2dpZCAiYnVpbGQgbWFjaGluZSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjg1Cittc2dpZCAiVGhlIG1hY2hpbmUgdGhlIHBhY2thZ2UgaXMgYnVpbHQgb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjg1CisjLCBuby13cmFwCittc2dpZCAiaG9zdCBtYWNoaW5lIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6ODcKK21zZ2lkICJUaGUgbWFjaGluZSB0aGUgcGFja2FnZSBpcyBidWlsdCBmb3IuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjg3CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkRlYmlhbiBhcmNoaXRlY3R1cmUiCittc2dzdHIgItCf0YDQvtC10LrRgiBEZWJpYW4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6OTAKK21zZ2lkICIiCisiVGhlIERlYmlhbiBhcmNoaXRlY3R1cmUgc3RyaW5nLCB3aGljaCBzcGVjaWZpZXMgdGhlIGJpbmFyeSB0cmVlIGluIHRoZSAiCisiXFxzLTFGVFBcXHMwIGFyY2hpdmUuIEV4YW1wbGVzOiBpMzg2LCBzcGFyYywgaHVyZC1pMzg2LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo5MAorIywgbm8td3JhcAorbXNnaWQgImFyY2hpdGVjdHVyZSB3aWxkY2FyZCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjk0Cittc2dpZCAiIgorIkFuIGFyY2hpdGVjdHVyZSB3aWxkY2FyZCBpcyBhIHNwZWNpYWwgYXJjaGl0ZWN0dXJlIHN0cmluZyB0aGF0IHdpbGwgbWF0Y2ggIgorImFueSByZWFsIGFyY2hpdGVjdHVyZSBiZWluZyBwYXJ0IG9mIGl0LiBUaGUgZ2VuZXJhbCBmb3JtIGlzIEU8bHQ+a2VybmVsRTxndD4tIgorIkU8bHQ+Y3B1RTxndD4uICBFeGFtcGxlczogbGludXgtYW55LCBhbnktaTM4NiwgaHVyZC1hbnkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjk0CisjLCBuby13cmFwCittc2dpZCAiXFxzLTFHTlVcXHMwIHN5c3RlbSB0eXBlIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6OTgKK21zZ2lkICIiCisiQW4gYXJjaGl0ZWN0dXJlIHNwZWNpZmljYXRpb24gc3RyaW5nIGNvbnNpc3Rpbmcgb2YgdHdvIHBhcnRzIHNlcGFyYXRlZCBieSBhICIKKyJkYXNoOiBjcHUgYW5kIHN5c3RlbS4gRXhhbXBsZXM6IGkzODYtbGludXgtZ251LCBzcGFyYy1saW51eC1nbnUsIGkzODYtZ251LCAiCisieDg2XzY0LW5ldGJzZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6OTkKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiVkFSSUFCTEVTIgorbXNnc3RyICLQn9CV0KDQldCc0JXQndCd0KvQlSDQntCa0KDQo9CW0JXQndCY0K8iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTAxCittc2dpZCAiVGhlIGZvbGxvd2luZyB2YXJpYWJsZXMgYXJlIHNldCBieSBCPGRwa2ctYXJjaGl0ZWN0dXJlPjoiCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTAxCisjLCBuby13cmFwCittc2dpZCAiXFxzLTFERUJfQlVJTERfQVJDSFxcczAiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMDMKK21zZ2lkICJUaGUgRGViaWFuIGFyY2hpdGVjdHVyZSBvZiB0aGUgYnVpbGQgbWFjaGluZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTAzCisjLCBuby13cmFwCittc2dpZCAiXFxzLTFERUJfQlVJTERfQVJDSF9PU1xcczAiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMDUKK21zZ2lkICJUaGUgRGViaWFuIHN5c3RlbSBuYW1lIG9mIHRoZSBidWlsZCBtYWNoaW5lLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMDUKKyMsIG5vLXdyYXAKK21zZ2lkICJcXHMtMURFQl9CVUlMRF9BUkNIX0NQVVxcczAiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMDcKK21zZ2lkICJUaGUgRGViaWFuIGNwdSBuYW1lIG9mIHRoZSBidWlsZCBtYWNoaW5lLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMDcKKyMsIG5vLXdyYXAKK21zZ2lkICJcXHMtMURFQl9CVUlMRF9BUkNIX0JJVFNcXHMwIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTA5Cittc2dpZCAiVGhlIHBvaW50ZXIgc2l6ZSBvZiB0aGUgYnVpbGQgbWFjaGluZSAoaW4gYml0cykuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEwOQorIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0JVSUxEX0FSQ0hfRU5ESUFOXFxzMCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjExMQorbXNnaWQgIlRoZSBlbmRpYW5uZXNzIG9mIHRoZSBidWlsZCBtYWNoaW5lIChsaXR0bGUgLyBiaWcpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMTEKKyMsIG5vLXdyYXAKK21zZ2lkICJcXHMtMURFQl9CVUlMRF9HTlVfQ1BVXFxzMCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjExMworbXNnaWQgIlRoZSBcXHMtMUNQVVxcczAgcGFydCBvZiBcXHMtMURFQl9CVUlMRF9HTlVfVFlQRVxcczAuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjExMworIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0JVSUxEX0dOVV9TWVNURU1cXHMwIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTE1Cittc2dpZCAiVGhlIFN5c3RlbSBwYXJ0IG9mIFxccy0xREVCX0JVSUxEX0dOVV9UWVBFXFxzMC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTE1CisjLCBuby13cmFwCittc2dpZCAiXFxzLTFERUJfQlVJTERfR05VX1RZUEVcXHMwIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTE3Cittc2dpZCAiVGhlIFxccy0xR05VXFxzMCBzeXN0ZW0gdHlwZSBvZiB0aGUgYnVpbGQgbWFjaGluZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTE3CisjLCBuby13cmFwCittc2dpZCAiXFxzLTFERUJfQlVJTERfTVVMVElBUkNIXFxzMCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEyMAorbXNnaWQgIiIKKyJUaGUgY2xhcmlmaWVkIFxccy0xR05VXFxzMCBzeXN0ZW0gdHlwZSBvZiB0aGUgYnVpbGQgbWFjaGluZSwgdXNlZCBmb3IgIgorImZpbGVzeXN0ZW0gcGF0aHMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEyMAorIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0hPU1RfQVJDSFxcczAiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMjIKK21zZ2lkICJUaGUgRGViaWFuIGFyY2hpdGVjdHVyZSBvZiB0aGUgaG9zdCBtYWNoaW5lLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMjIKKyMsIG5vLXdyYXAKK21zZ2lkICJcXHMtMURFQl9IT1NUX0FSQ0hfT1NcXHMwIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTI0Cittc2dpZCAiVGhlIERlYmlhbiBzeXN0ZW0gbmFtZSBvZiB0aGUgaG9zdCBtYWNoaW5lLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMjQKKyMsIG5vLXdyYXAKK21zZ2lkICJcXHMtMURFQl9IT1NUX0FSQ0hfQ1BVXFxzMCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEyNgorbXNnaWQgIlRoZSBEZWJpYW4gY3B1IG5hbWUgb2YgdGhlIGhvc3QgbWFjaGluZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTI2CisjLCBuby13cmFwCittc2dpZCAiXFxzLTFERUJfSE9TVF9BUkNIX0JJVFNcXHMwIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTI4Cittc2dpZCAiVGhlIHBvaW50ZXIgc2l6ZSBvZiB0aGUgaG9zdCBtYWNoaW5lIChpbiBiaXRzKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTI4CisjLCBuby13cmFwCittc2dpZCAiXFxzLTFERUJfSE9TVF9BUkNIX0VORElBTlxcczAiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMzAKK21zZ2lkICJUaGUgZW5kaWFubmVzcyBvZiB0aGUgaG9zdCBtYWNoaW5lIChsaXR0bGUgLyBiaWcpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMzAKKyMsIG5vLXdyYXAKK21zZ2lkICJcXHMtMURFQl9IT1NUX0dOVV9DUFVcXHMwIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTMyCittc2dpZCAiVGhlIFxccy0xQ1BVXFxzMCBwYXJ0IG9mIFxccy0xREVCX0hPU1RfR05VX1RZUEVcXHMwLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMzIKKyMsIG5vLXdyYXAKK21zZ2lkICJcXHMtMURFQl9IT1NUX0dOVV9TWVNURU1cXHMwIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTM0Cittc2dpZCAiVGhlIFN5c3RlbSBwYXJ0IG9mIFxccy0xREVCX0hPU1RfR05VX1RZUEVcXHMwLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMzQKKyMsIG5vLXdyYXAKK21zZ2lkICJcXHMtMURFQl9IT1NUX0dOVV9UWVBFXFxzMCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEzNgorbXNnaWQgIlRoZSBcXHMtMUdOVVxcczAgc3lzdGVtIHR5cGUgb2YgdGhlIGhvc3QgbWFjaGluZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTM2CisjLCBuby13cmFwCittc2dpZCAiXFxzLTFERUJfSE9TVF9NVUxUSUFSQ0hcXHMwIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTM5Cittc2dpZCAiIgorIlRoZSBjbGFyaWZpZWQgXFxzLTFHTlVcXHMwIHN5c3RlbSB0eXBlIG9mIHRoZSBob3N0IG1hY2hpbmUsIHVzZWQgZm9yICIKKyJmaWxlc3lzdGVtIHBhdGhzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxNDAKKyMsIG5vLXdyYXAKK21zZ2lkICJERUJJQU4vUlVMRVMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxNDgKK21zZ2lkICIiCisiVGhlIGVudmlyb25tZW50IHZhcmlhYmxlcyBzZXQgYnkgQjxkcGtnLWFyY2hpdGVjdHVyZT4gYXJlIHBhc3NlZCB0byBJPGRlYmlhbi8iCisicnVsZXM+IGFzIG1ha2UgdmFyaWFibGVzIChzZWUgbWFrZSBkb2N1bWVudGF0aW9uKS4gSG93ZXZlciwgeW91IHNob3VsZCBub3QgIgorInJlbHkgb24gdGhlbSwgYXMgdGhpcyBicmVha3MgbWFudWFsIGludm9jYXRpb24gb2YgdGhlIHNjcmlwdC4gSW5zdGVhZCwgeW91ICIKKyJzaG91bGQgYWx3YXlzIGluaXRpYWxpemUgdGhlbSB1c2luZyBCPGRwa2ctYXJjaGl0ZWN0dXJlPiB3aXRoIHRoZSAtcSBvcHRpb24uICIKKyJIZXJlIGFyZSBzb21lIGV4YW1wbGVzLCB3aGljaCBhbHNvIHNob3cgaG93IHlvdSBjYW4gaW1wcm92ZSB0aGUgY3Jvc3MgIgorImNvbXBpbGF0aW9uIHN1cHBvcnQgaW4geW91ciBwYWNrYWdlOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjE1MSBkcGtnLWFyY2hpdGVjdHVyZS4xOjE2OAorbXNnaWQgIkluc3RlYWQgb2Y6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTU1CisjLCBuby13cmFwCittc2dpZCAiIgorIkFSQ0g9XFxgZHBrZyAtLXByaW50LWFyY2hpdGVjdHVyZVxcYFxuIgorImNvbmZpZ3VyZSAkKFxccy0xQVJDSFxcczApLWxpbnV4XG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxNTgKK21zZ2lkICJwbGVhc2UgdXNlIHRoZSBmb2xsb3dpbmc6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTYyCisjLCBuby13cmFwCittc2dpZCAiIgorIlxcJlxccy0xREVCX0JVSUxEX0dOVV9UWVBFXFxzMCA6PSAkKHNoZWxsIGRwa2ctYXJjaGl0ZWN0dXJlIC1xREVCX0JVSUxEX0dOVV9UWVBFKVxuIgorIlxcJlxccy0xREVCX0hPU1RfR05VX1RZUEVcXHMwIDo9ICQoc2hlbGwgZHBrZy1hcmNoaXRlY3R1cmUgLXFERUJfSE9TVF9HTlVfVFlQRSlcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjE2NAorIywgbm8td3JhcAorbXNnaWQgImNvbmZpZ3VyZSAtLWJ1aWxkPSQoXFxzLTFERUJfQlVJTERfR05VX1RZUEVcXHMwKSAtLWhvc3Q9JChcXHMtMURFQl9IT1NUX0dOVV9UWVBFXFxzMClcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjE3NAorIywgbm8td3JhcAorbXNnaWQgIiIKKyJBUkNIPVxcYGRwa2cgLS1wcmludC1hcmNoaXRlY3R1cmVcXGBcbiIKKyJpZmVxICgkKFxccy0xQVJDSFxcczApLGFscGhhKVxuIgorIiAgLi4uXG4iCisiZW5kaWZcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjE3NworbXNnaWQgInBsZWFzZSB1c2U6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTgwCisjLCBuby13cmFwCittc2dpZCAiXFwmXFxzLTFERUJfSE9TVF9BUkNIXFxzMCA6PSAkKHNoZWxsIGRwa2ctYXJjaGl0ZWN0dXJlIC1xREVCX0hPU1RfQVJDSClcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjE4NAorIywgbm8td3JhcAorbXNnaWQgIiIKKyJpZmVxICgkKFxccy0xREVCX0hPU1RfQVJDSFxcczApLGFscGhhKVxuIgorIiAgLi4uXG4iCisiZW5kaWZcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjE4OAorbXNnaWQgIiIKKyJvciBpZiB5b3Ugb25seSBuZWVkIHRvIGNoZWNrIHRoZSBDUFUgb3IgT1MgdHlwZSwgdXNlIHRoZSBERUJfSE9TVF9BUkNIX0NQVSAiCisib3IgREVCX0hPU1RfQVJDSF9PUyB2YXJpYWJsZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTkzCittc2dpZCAiIgorIkluIGdlbmVyYWwsIGNhbGxpbmcgZHBrZyBpbiB0aGUgcnVsZXMgZmlsZSB0byBnZXQgYXJjaGl0ZWN0dXJlIGluZm9ybWF0aW9uICIKKyJpcyBkZXByZWNhdGVkICh1bmxlc3MgeW91IHdhbnQgdG8gcHJvdmlkZSBiYWNrd2FyZCBjb21wYXRpYmlsaXR5LCBzZWUgIgorImJlbG93KS4gIEVzcGVjaWFsbHkgdGhlIC0tcHJpbnQtYXJjaGl0ZWN0dXJlIG9wdGlvbiBpcyB1bnJlbGlhYmxlIHNpbmNlIHdlICIKKyJoYXZlIERlYmlhbiBhcmNoaXRlY3R1cmVzIHdoaWNoIGRvbid0IGVxdWFsIGEgcHJvY2Vzc29yIG5hbWUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjE5NAorIywgbm8td3JhcAorbXNnaWQgIkJBQ0tXQVJEIENPTVBBVElCSUxJVFkiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxOTgKK21zZ2lkICIiCisiVGhlIERFQl8qX0FSQ0hfQklUUyBhbmQgREVCXypfQVJDSF9FTkRJQU4gdmFyaWFibGVzIHdlcmUgaW50cm9kdWNlZCBpbiBkcGtnLSIKKyJkZXYgMS4xNS40LiBVc2luZyB0aGVtIGluIEk8ZGViaWFuL3J1bGVzPiB0aHVzIHJlcXVpcmVzIGEgYnVpbGQtZGVwZW5kZW5jeSAiCisib24gZHBrZy1kZXYgKEU8Z3Q+PSAxLjE1LjQpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjIwMworbXNnaWQgIiIKKyJUaGUgREVCX0hPU1RfQVJDSF9DUFUgYW5kIERFQl9IT1NUX0FSQ0hfT1MgdmFyaWFibGVzIHdlcmUgaW50cm9kdWNlZCBpbiBkcGtnLSIKKyJkZXYgMS4xMy4yLiBCZWZvcmUgdGhpcyBJPGRlYmlhbi9ydWxlcz4gZmlsZXMgdGVuZGVkIHRvIGNoZWNrIHRoZSB2YWx1ZXMgb2YgIgorInRoZSBERUJfSE9TVF9HTlVfQ1BVIG9yIERFQl9IT1NUX0dOVV9UWVBFIHZhcmlhYmxlcyB3aGljaCBoYXZlIGJlZW4gc3ViamVjdCAiCisidG8gY2hhbmdlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjIwOAorbXNnaWQgIiIKKyJXaGVyZSBJPGRlYmlhbi9ydWxlcz4gZmlsZXMgY2hlY2sgdGhlc2UgdmFyaWFibGVzIHRvIGRlY2lkZSBob3cgb3Igd2hhdCB0byAiCisiY29tcGlsZSwgdGhpcyBzaG91bGQgYmUgdXBkYXRlZCB0byB1c2UgdGhlIG5ldyB2YXJpYWJsZXMgYW5kIHZhbHVlcy4gIFlvdSAiCisibWF5IHdpc2ggdG8gcmV0YWluIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5IHdpdGggb2xkZXIgdmVyc2lvbiBvZiBkcGtnLWRldiBieSAiCisidXNpbmcgdGhlIGZvbGxvd2luZyBjb2RlOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjIxMgorIywgbm8td3JhcAorbXNnaWQgIiIKKyJERUJfSE9TVF9BUkNIX0NQVSA6PSAkKHNoZWxsIGRwa2ctYXJjaGl0ZWN0dXJlIC1xREVCX0hPU1RfQVJDSF9DUFUgMkU8Z3Q+L2Rldi9udWxsKVxuIgorIkRFQl9IT1NUX0FSQ0hfT1MgOj0gJChzaGVsbCBkcGtnLWFyY2hpdGVjdHVyZSAtcURFQl9IT1NUX0FSQ0hfT1MgMkU8Z3Q+L2Rldi9udWxsKVxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjI2CisjLCBuby13cmFwCittc2dpZCAiIgorIiMgVGFrZSBhY2NvdW50IG9mIG9sZCBkcGtnLWFyY2hpdGVjdHVyZSBvdXRwdXQuXG4iCisiaWZlcSAoJChERUJfSE9TVF9BUkNIX0NQVSksKVxuIgorIiAgREVCX0hPU1RfQVJDSF9DUFUgOj0gJChzaGVsbCBkcGtnLWFyY2hpdGVjdHVyZSAtcURFQl9IT1NUX0dOVV9DUFUpXG4iCisiICBpZmVxICgkKERFQl9IT1NUX0FSQ0hfQ1BVKSx4ODZfNjQpXG4iCisiICAgIERFQl9IT1NUX0FSQ0hfQ1BVIDo9IGFtZDY0XG4iCisiICBlbmRpZlxuIgorImVuZGlmXG4iCisiaWZlcSAoJChERUJfSE9TVF9BUkNIX09TKSwpXG4iCisiICBERUJfSE9TVF9BUkNIX09TIDo9ICQoc3Vic3QgLWdudSwsJChzaGVsbCBkcGtnLWFyY2hpdGVjdHVyZSAtcURFQl9IT1NUX0dOVV9TWVNURU0pKVxuIgorIiAgaWZlcSAoJChERUJfSE9TVF9BUkNIX09TKSxnbnUpXG4iCisiICAgIERFQl9IT1NUX0FSQ0hfT1MgOj0gaHVyZFxuIgorIiAgZW5kaWZcbiIKKyJlbmRpZlxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjI5Cittc2dpZCAiQW5kIHNpbWlsYXJseSBmb3IgREVCX0JVSUxEX0FSQ0hfQ1BVIGFuZCBERUJfQlVJTERfQVJDSF9PUy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyMzIKK21zZ2lkICIiCisiSWYgeW91IHN0aWxsIHdpc2ggdG8gc3VwcG9ydCB2ZXJzaW9ucyBvZiBkcGtnLWRldiB0aGF0IGRpZCBub3QgaW5jbHVkZSAiCisiQjxkcGtnLWFyY2hpdGVjdHVyZT4sIHRoZSBmb2xsb3dpbmcgZG9lcyB0aGUgam9iOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI0MgorIywgbm8td3JhcAorbXNnaWQgIiIKKyJcXCZcXHMtMURFQl9CVUlMRF9BUkNIXFxzMCA6PSAkKHNoZWxsIGRwa2cgLS1wcmludC1hcmNoaXRlY3R1cmUpXG4iCisiXFwmXFxzLTFERUJfQlVJTERfR05VX0NQVVxcczAgOj0gJChwYXRzdWJzdCBodXJkLSUsJSwkKFxccy0xREVCX0JVSUxEX0FSQ0hcXHMwKSlcbiIKKyJpZmVxICgkKGZpbHRlci1vdXQgaHVyZC0lLCQoXFxzLTFERUJfQlVJTERfQVJDSFxcczApKSwpXG4iCisiICBcXHMtMURFQl9CVUlMRF9HTlVfU1lTVEVNXFxzMCA6PSBnbnVcbiIKKyJlbHNlXG4iCisiICBcXHMtMURFQl9CVUlMRF9HTlVfU1lTVEVNXFxzMCA6PSBsaW51eC1nbnVcbiIKKyJlbmRpZlxuIgorIkRFQl9CVUlMRF9HTlVfVFlQRT0kKFxccy0xREVCX0JVSUxEX0dOVV9DUFVcXHMwKS0kKFxccy0xREVCX0JVSUxEX0dOVV9TWVNURU1cXHMwKVxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjQ3CisjLCBuby13cmFwCittc2dpZCAiIgorIlxcJlxccy0xREVCX0hPU1RfQVJDSFxcczAgOj0gJChcXHMtMURFQl9CVUlMRF9BUkNIXFxzMClcbiIKKyJcXCZcXHMtMURFQl9IT1NUX0dOVV9DUFVcXHMwIDo9ICQoXFxzLTFERUJfQlVJTERfR05VX0NQVVxcczApXG4iCisiXFwmXFxzLTFERUJfSE9TVF9HTlVfU1lTVEVNXFxzMCA6PSAkKFxccy0xREVCX0JVSUxEX0dOVV9TWVNURU1cXHMwKVxuIgorIlxcJlxccy0xREVCX0hPU1RfR05VX1RZUEVcXHMwIDo9ICQoXFxzLTFERUJfQlVJTERfR05VX1RZUEVcXHMwKVxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjUxCittc2dpZCAiIgorIlB1dCBhIHN1YnNldCBvZiB0aGVzZSBsaW5lcyBhdCB0aGUgdG9wIG9mIHlvdXIgZGViaWFuL3J1bGVzIGZpbGU7IHRoZXNlICIKKyJkZWZhdWx0IHZhbHVlcyB3aWxsIGJlIG92ZXJ3cml0dGVuIGlmIGRwa2ctYXJjaGl0ZWN0dXJlIGlzIHVzZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjU4Cittc2dpZCAiIgorIllvdSBkb24ndCBuZWVkIHRoZSBmdWxsIHNldC4gQ2hvb3NlIGEgY29uc2lzdGVudCBzZXQgd2hpY2ggY29udGFpbnMgdGhlICIKKyJ2YWx1ZXMgeW91IHVzZSBpbiB0aGUgcnVsZXMgZmlsZS4gRm9yIGV4YW1wbGUsIGlmIHlvdSBvbmx5IG5lZWQgdGhlIGhvc3QgIgorIkRlYmlhbiBhcmNoaXRlY3R1cmUsIGBERUJfSE9TVF9BUkNIPVxcYGRwa2cgLS1wcmludC1hcmNoaXRlY3R1cmVcXGAnIGlzICIKKyJzdWZmaWNpZW50ICh0aGlzIGlzIGluZGVlZCB0aGUgRGViaWFuIGFyY2hpdGVjdHVyZSBvZiB0aGUgYnVpbGQgbWFjaGluZSwgYnV0ICIKKyJyZW1lbWJlciB0aGF0IHdlIGFyZSBvbmx5IHRyeWluZyB0byBiZSBiYWNrd2FyZCBjb21wYXRpYmxlIHdpdGggbmF0aXZlICIKKyJjb21waWxhdGlvbikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjYxCittc2dpZCAiIgorIlRoZSBCPC1lPiBhbmQgQjwtaT4gb3B0aW9ucyB3ZXJlIG9ubHkgaW50cm9kdWNlZCBpbiByZWxhdGl2ZWx5IHJlY2VudCAiCisidmVyc2lvbnMgb2YgQjxkcGtnLWFyY2hpdGVjdHVyZT4gKHNpbmNlIGRwa2cgMS4xMy4xMykuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjY1Cittc2dpZCAiIgorIkI8ZHBrZy1idWlsZHBhY2thZ2U+IGFjY2VwdHMgdGhlIEI8LWE+IG9wdGlvbiBhbmQgcGFzc2VzIGl0IHRvIEI8ZHBrZy0iCisiYXJjaGl0ZWN0dXJlPi4gT3RoZXIgZXhhbXBsZXM6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjY3Cittc2dpZCAiQ0M9aTM4Ni1nbnUtZ2NjIGRwa2ctYXJjaGl0ZWN0dXJlIC1jIGRlYmlhbi9ydWxlcyBidWlsZCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI2OQorIywgZnV6enkKK21zZ2lkICJldmFsIFxcYGRwa2ctYXJjaGl0ZWN0dXJlIC11XFxgIgorbXNnc3RyICJCPGRwa2cgLS1wcmludC1hcmNoaXRlY3R1cmU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI3MgorbXNnaWQgIiIKKyJDaGVjayBpZiBhbiBhcmNoaXRlY3R1cmUgaXMgZXF1YWwgdG8gdGhlIGN1cnJlbnQgYXJjaGl0ZWN0dXJlIG9yIGEgZ2l2ZW4gb25lOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI3NAorbXNnaWQgImRwa2ctYXJjaGl0ZWN0dXJlIC1lbGludXgtYWxwaGEiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyNzYKK21zZ2lkICJkcGtnLWFyY2hpdGVjdHVyZSAtYW1pcHMgLWVsaW51eC1taXBzIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6Mjc5Cittc2dpZCAiIgorIkNoZWNrIGlmIHRoZSBjdXJyZW50IGFyY2hpdGVjdHVyZSBvciBhbiBhcmNoaXRlY3R1cmUgcHJvdmlkZWQgd2l0aCAtYSBhcmUgIgorIkxpbnV4IHN5c3RlbXM6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjgxCittc2dpZCAiZHBrZy1hcmNoaXRlY3R1cmUgLWlsaW51eC1hbnkiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyODMKK21zZ2lkICJkcGtnLWFyY2hpdGVjdHVyZSAtYWkzODYgLWlsaW51eC1hbnkiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyODgKK21zZ2lkICIiCisiQWxsIHRoZXNlIGZpbGVzIGhhdmUgdG8gYmUgcHJlc2VudCBmb3IgQjxkcGtnLWFyY2hpdGVjdHVyZT4gdG8gd29yay4gVGhlaXIgIgorImxvY2F0aW9uIGNhbiBiZSBvdmVycmlkZGVuIGF0IHJ1bnRpbWUgd2l0aCB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGUgIgorIkI8RFBLR19EQVRBRElSPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6Mjg4CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkk8L3Vzci9zaGFyZS9kcGtnL2NwdXRhYmxlPiIKK21zZ3N0ciAiSTwvdmFyL2xpYi9kcGtnL2F2YWlsYWJsZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjkxCittc2dpZCAiVGFibGUgb2Yga25vd24gQ1BVIG5hbWVzIGFuZCBtYXBwaW5nIHRvIHRoZWlyIEdOVSBuYW1lLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyOTEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiSTwvdXNyL3NoYXJlL2Rwa2cvb3N0YWJsZT4iCittc2dzdHIgIkk8L3Zhci9saWIvZHBrZy9hdmFpbGFibGU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI5NAorbXNnaWQgIlRhYmxlIG9mIGtub3duIG9wZXJhdGluZyBzeXN0ZW0gbmFtZXMgYW5kIG1hcHBpbmcgdG8gdGhlaXIgR05VIG5hbWUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI5NAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJJPC91c3Ivc2hhcmUvZHBrZy90cmlwbGV0dGFibGU+IgorbXNnc3RyICJJPC92YXIvbGliL2Rwa2cvYXZhaWxhYmxlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyOTgKK21zZ2lkICIiCisiTWFwcGluZyBiZXR3ZWVuIERlYmlhbiBhcmNoaXRlY3R1cmUgdHJpcGxldHMgYW5kIERlYmlhbiBhcmNoaXRlY3R1cmUgbmFtZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MzAyCisjLCBmdXp6eQorbXNnaWQgIkI8ZHBrZy1idWlsZHBhY2thZ2U+KDEpLCBCPGRwa2ctY3Jvc3M+KDEpLiIKK21zZ3N0ciAiQjxkZWI+KDUpLCBCPGRwa2c+KDEpLCBCPGRwa2ctZGViPigxKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MzA3Cittc2dpZCAiIgorIkI8ZHBrZy1hcmNoaXRlY3R1cmU+IGFuZCB0aGlzIG1hbiBwYWdlIHdlcmUgaW5pdGlhbGx5IHdyaXR0ZW4gYnkgTWFyY3VzICIKKyJCcmlua21hbm4gRTxsdD5icmlua21kQGRlYmlhbi5vcmdFPGd0Pi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2cuY2ZnLjU6MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJkcGtnLmNmZyIKK21zZ3N0ciAiZHBrZyIKKworIy4gdHlwZTogVEgKKyM6IGRwa2cuY2ZnLjU6MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICIyMDA5LTA5LTA1IgorbXNnc3RyICIyMDA2LTAyLTI4IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLmNmZy41OjQKK21zZ2lkICJkcGtnLmNmZyAtIGRwa2cgY29uZmlndXJhdGlvbiBmaWxlIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuY2ZnLjU6MTEKK21zZ2lkICIiCisiVGhpcyBmaWxlIGNvbnRhaW5zIGRlZmF1bHQgb3B0aW9ucyBmb3IgZHBrZy4gRWFjaCBsaW5lIGNvbnRhaW5zIGEgc2luZ2xlICIKKyJvcHRpb24gd2hpY2ggaXMgZXhhY3RseSB0aGUgc2FtZSBhcyBhIG5vcm1hbCBjb21tYW5kIGxpbmUgb3B0aW9uIGZvciBkcGtnICIKKyJleGNlcHQgZm9yIHRoZSBsZWFkaW5nIGRhc2hlcyB3aGljaCBhcmUgbm90IHVzZWQgaGVyZS4gUXVvdGVzIHN1cnJvdW5kaW5nICIKKyJvcHRpb24gdmFsdWVzIGFyZSBzdHJpcHBlZC4gQ29tbWVudHMgYXJlIGFsbG93ZWQgYnkgc3RhcnRpbmcgYSBsaW5lIHdpdGggYSAiCisiaGFzaCBzaWduIChcIkI8Iz5cIikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuY2ZnLjU6MTQKKyMsIGZ1enp5CisjfCBtc2dpZCAiSTwvZXRjL2Rwa2cvZHBrZy5jZmc+IgorbXNnaWQgIkk8L2V0Yy9kcGtnL2Rwa2cuY2ZnLmQvWzAtOWEtekEtWl8tXSo+IgorbXNnc3RyICJJPC9ldGMvZHBrZy9kcGtnLmNmZz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuY2ZnLjU6MTgKKyMsIGZ1enp5Cittc2dpZCAiSTx+Ly5kcGtnLmNmZz4iCittc2dzdHIgIkk8L2V0Yy9kcGtnL2Rwa2cuY2ZnPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy5jZmcuNToyNCBkcGtnLWRpdmVydC44OjEzNCBkcGtnLXF1ZXJ5LjE6MjIyIGRwa2ctc3RhdG92ZXJyaWRlLjg6ODYKKyMsIGZ1enp5Cittc2dpZCAiQjxkcGtnPigxKS4iCittc2dzdHIgIkI8ZGF0ZT4oMSkuIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1idWlsZGZsYWdzLjE6MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJkcGtnLWJ1aWxkZmxhZ3MiCittc2dzdHIgIkI8ZHBrZz4gW0k80L/QsNGA0LDQvNC10YLRgNGLPl0gSTzQtNC10LnRgdGC0LLQuNC1PiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiMjAxMS0wOS0xMyIKK21zZ3N0ciAiMjAwNi0wMi0yOCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6NAorbXNnaWQgImRwa2ctYnVpbGRmbGFncyAtIHJldHVybnMgYnVpbGQgZmxhZ3MgdG8gdXNlIGR1cmluZyBwYWNrYWdlIGJ1aWxkIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjgKKyMsIGZ1enp5Cittc2dpZCAiQjxkcGtnLWJ1aWxkZmxhZ3M+IFtJPG9wdGlvbj4uLi5dIFtJPGNvbW1hbmQ+XSIKK21zZ3N0ciAiQjxkcGtnPiBbSTzQv9Cw0YDQsNC80LXRgtGA0Ys+XSBJPNC00LXQudGB0YLQstC40LU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMgorbXNnaWQgIiIKKyJCPGRwa2ctYnVpbGRmbGFncz4gaXMgYSB0b29sIHRvIHJldHJpZXZlIGNvbXBpbGF0aW9uIGZsYWdzIHRvIHVzZSBkdXJpbmcgIgorImJ1aWxkIG9mIERlYmlhbiBwYWNrYWdlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTUKK21zZ2lkICIiCisiVGhlIGRlZmF1bHQgZmxhZ3MgYXJlIGRlZmluZWQgYnkgdGhlIHZlbmRvciBidXQgdGhleSBjYW4gYmUgZXh0ZW5kZWQvIgorIm92ZXJyaWRlbiBpbiBzZXZlcmFsIHdheXM6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNQorIywgbm8td3JhcAorbXNnaWQgIjEuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE3Cittc2dpZCAic3lzdGVtLXdpZGUgd2l0aCBCPC9ldGMvZHBrZy9idWlsZGZsYWdzLmNvbmY+OyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTcKKyMsIG5vLXdyYXAKK21zZ2lkICIyLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyMAorbXNnaWQgIiIKKyJmb3IgdGhlIGN1cnJlbnQgdXNlciB3aXRoIEI8JFhER19DT05GSUdfSE9NRS9kcGtnL2J1aWxkZmxhZ3MuY29uZj4gd2hlcmUgQjwiCisiJFhER19DT05GSUdfSE9NRT4gZGVmYXVsdHMgdG8gQjwkSE9NRS8uY29uZmlnPjsiCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjIwCisjLCBuby13cmFwCittc2dpZCAiMy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjMKK21zZ2lkICIiCisidGVtcG9yYXJpbHkgYnkgdGhlIHVzZXIgd2l0aCBlbnZpcm9ubWVudCB2YXJpYWJsZXMgKHNlZSBzZWN0aW9uICIKKyJCPEVOVklST05NRU5UPik7IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyMworIywgbm8td3JhcAorbXNnaWQgIjQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjI2Cittc2dpZCAiIgorImR5bmFtaWNhbGx5IGJ5IHRoZSBwYWNrYWdlIG1haW50YWluZXIgd2l0aCBlbnZpcm9ubWVudCB2YXJpYWJsZXMgc2V0IHZpYSAiCisiQjxkZWJpYW4vcnVsZXM+IChzZWUgc2VjdGlvbiBCPEVOVklST05NRU5UPikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjI4Cittc2dpZCAiVGhlIGNvbmZpZ3VyYXRpb24gZmlsZXMgY2FuIGNvbnRhaW4gdHdvIHR5cGVzIG9mIGRpcmVjdGl2ZXM6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyOAorIywgbm8td3JhcAorbXNnaWQgIkI8U0VUPkk8IGZsYWcgdmFsdWU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjMxCittc2dpZCAiT3ZlcnJpZGUgdGhlIGZsYWcgbmFtZWQgSTxmbGFnPiB0byBoYXZlIHRoZSB2YWx1ZSBJPHZhbHVlPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjMxCisjLCBuby13cmFwCittc2dpZCAiQjxTVFJJUD5JPCBmbGFnIHZhbHVlPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTozNAorbXNnaWQgIiIKKyJTdHJpcCBmcm9tIHRoZSBmbGFnIG5hbWVkIEk8ZmxhZz4gYWxsIHRoZSBidWlsZCBmbGFncyBsaXN0ZWQgaW4gSTx2YWx1ZT4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTozNAorIywgbm8td3JhcAorbXNnaWQgIkI8QVBQRU5EPkk8IGZsYWcgdmFsdWU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjM4Cittc2dpZCAiIgorIkV4dGVuZCB0aGUgZmxhZyBuYW1lZCBJPGZsYWc+IGJ5IGFwcGVuZGluZyB0aGUgb3B0aW9ucyBnaXZlbiBpbiBJPHZhbHVlPi4gIEEgIgorInNwYWNlIGlzIHByZXBlbmRlZCB0byB0aGUgYXBwZW5kZWQgdmFsdWUgaWYgdGhlIGZsYWcncyBjdXJyZW50IHZhbHVlIGlzIG5vbi0iCisiZW1wdHkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTozOAorIywgbm8td3JhcAorbXNnaWQgIkI8UFJFUEVORD5JPCBmbGFnIHZhbHVlPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo0MgorbXNnaWQgIiIKKyJFeHRlbmQgdGhlIGZsYWcgbmFtZWQgSTxmbGFnPiBieSBwcmVwZW5kaW5nIHRoZSBvcHRpb25zIGdpdmVuIGluIEk8dmFsdWU+LiAgIgorIkEgc3BhY2UgaXMgYXBwZW5kZWQgdG8gdGhlIHByZXBlbmRlZCB2YWx1ZSBpZiB0aGUgZmxhZydzIGN1cnJlbnQgdmFsdWUgaXMgIgorIm5vbi1lbXB0eS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6NDUKK21zZ2lkICIiCisiVGhlIGNvbmZpZ3VyYXRpb24gZmlsZXMgY2FuIGNvbnRhaW4gY29tbWVudHMgb24gbGluZXMgc3RhcnRpbmcgd2l0aCBhIGhhc2ggIgorIigjKS4gRW1wdHkgbGluZXMgYXJlIGFsc28gaWdub3JlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjQ2CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1kdW1wPiIKK21zZ3N0ciAiQjwtLW5vLWRlYnNpZz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjUxCittc2dpZCAiIgorIlByaW50IHRvIHN0YW5kYXJkIG91dHB1dCBhbGwgY29tcGlsYXRpb24gZmxhZ3MgYW5kIHRoZWlyIHZhbHVlcy4gSXQgcHJpbnRzICIKKyJvbmUgZmxhZyBwZXIgbGluZSBzZXBhcmF0ZWQgZnJvbSBpdHMgdmFsdWUgYnkgYW4gZXF1YWwgc2lnbiAiCisiKFwiSTxmbGFnPj1JPHZhbHVlPlwiKS4gVGhpcyBpcyB0aGUgZGVmYXVsdCBhY3Rpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo1MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tbGlzdD4iCittc2dzdHIgIkI8aW5zdGFsbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjU2Cittc2dpZCAiIgorIlByaW50IHRoZSBsaXN0IG9mIGZsYWdzIHN1cHBvcnRlZCBieSB0aGUgY3VycmVudCB2ZW5kb3IgKG9uZSBwZXIgbGluZSkuIFNlZSAiCisidGhlIEI8U1VQUE9SVEVEIEZMQUdTPiBzZWN0aW9uIGZvciBtb3JlIGluZm9ybWF0aW9uIGFib3V0IHRoZW0uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo1NgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tZXhwb3J0PT5JPGZvcm1hdD4iCittc2dzdHIgIkI8LXI+fEI8LS1jaHJvb3Q+IEk8cm9vdD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjY2Cittc2dpZCAiIgorIlByaW50IHRvIHN0YW5kYXJkIG91dHB1dCBzaGVsbCAoaWYgSTxmb3JtYXQ+IGlzIEI8c2g+KSBvciBtYWtlIChpZiBJPGZvcm1hdD4gIgorImlzIEI8bWFrZT4pIGNvbW1hbmRzIHRoYXQgY2FuIGJlIHVzZWQgdG8gZXhwb3J0IGFsbCB0aGUgY29tcGlsYXRpb24gZmxhZ3MgaW4gIgorInRoZSBlbnZpcm9ubWVudC4gSWYgSTxmb3JtYXQ+IGlzIEI8Y29uZmlndXJlPiB0aGVuIHRoZSBvdXRwdXQgY2FuIGJlIHVzZWQgb24gIgorImEgQjwuL2NvbmZpZ3VyZT4gY29tbWFuZC1saW5lLiBJZiB0aGUgSTxmb3JtYXQ+IHZhbHVlIGlzIG5vdCBnaXZlbiwgQjxzaD4gaXMgIgorImFzc3VtZWQuIE9ubHkgY29tcGlsYXRpb24gZmxhZ3Mgc3RhcnRpbmcgd2l0aCBhbiB1cHBlciBjYXNlIGNoYXJhY3RlciBhcmUgIgorImluY2x1ZGVkLCBvdGhlcnMgYXJlIGFzc3VtZWQgdG8gbm90IGJlIHN1aXRhYmxlIGZvciB0aGUgZW52aXJvbm1lbnQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo2NgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tZ2V0Pkk8IGZsYWc+IgorbXNnc3RyICJCPC0tbG9nPT5JPNC40LzRjyDRhNCw0LnQu9CwPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6NzAKK21zZ2lkICIiCisiUHJpbnQgdGhlIHZhbHVlIG9mIHRoZSBmbGFnIG9uIHN0YW5kYXJkIG91dHB1dC4gRXhpdHMgd2l0aCAwIGlmIHRoZSBmbGFnIGlzICIKKyJrbm93biBvdGhlcndpc2UgZXhpdHMgd2l0aCAxLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6NzAKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLW9yaWdpbj5JPCBmbGFnPiIKK21zZ3N0ciAiQjwtLWxvZz0+STzQuNC80Y8g0YTQsNC50LvQsD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjc1Cittc2dpZCAiIgorIlByaW50IHRoZSBvcmlnaW4gb2YgdGhlIHZhbHVlIHRoYXQgaXMgcmV0dXJuZWQgYnkgQjwtLWdldD4uIEV4aXRzIHdpdGggMCBpZiAiCisidGhlIGZsYWcgaXMga25vd24gb3RoZXJ3aXNlIGV4aXRzIHdpdGggMS4gVGhlIG9yaWdpbiBjYW4gYmUgb25lIG9mIHRoZSAiCisiZm9sbG93aW5nIHZhbHVlczoiCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjc2CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8dmVuZG9yPiIKK21zZ3N0ciAiQjwtLXN0YXR1cy1mZCA+STxFPGx0Pm5FPGd0Pj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjc5Cittc2dpZCAidGhlIG9yaWdpbmFsIGZsYWcgc2V0IGJ5IHRoZSB2ZW5kb3IgaXMgcmV0dXJuZWQ7IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo3OQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPHN5c3RlbT4iCittc2dzdHIgIkI8LUI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo4MgorbXNnaWQgInRoZSBmbGFnIGlzIHNldC9tb2RpZmllZCBieSBhIHN5c3RlbS13aWRlIGNvbmZpZ3VyYXRpb247IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo4MgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPHVzZXI+IgorbXNnc3RyICJCPHB1cmdlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6ODUKK21zZ2lkICJ0aGUgZmxhZyBpcyBzZXQvbW9kaWZpZWQgYnkgYSB1c2VyLXNwZWNpZmljIGNvbmZpZ3VyYXRpb247IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo4NQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPGVudj4iCittc2dzdHIgIkI8LUc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo4OAorbXNnaWQgInRoZSBmbGFnIGlzIHNldC9tb2RpZmllZCBieSBhbiBlbnZpcm9ubWVudC1zcGVjaWZpYyBjb25maWd1cmF0aW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1idWlsZGZsYWdzLjE6OTYKKyMsIG5vLXdyYXAKK21zZ2lkICJTVVBQT1JURUQgRkxBR1MiCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjk3CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8Q0ZMQUdTPiIKK21zZ3N0ciAiQjxDT0xVTU5TPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTAzCittc2dpZCAiIgorIk9wdGlvbnMgZm9yIHRoZSBDIGNvbXBpbGVyLiBUaGUgZGVmYXVsdCB2YWx1ZSBzZXQgYnkgdGhlIHZlbmRvciBpbmNsdWRlcyBJPC0iCisiZz4gYW5kIHRoZSBkZWZhdWx0IG9wdGltaXphdGlvbiBsZXZlbCAoSTwtTzI+IHVzdWFsbHksIG9yIEk8LU8wPiBpZiB0aGUgIgorIkI8REVCX0JVSUxEX09QVElPTlM+IGVudmlyb25tZW50IHZhcmlhYmxlIGRlZmluZXMgSTxub29wdD4pLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTAzCisjLCBuby13cmFwCittc2dpZCAiQjxDUFBGTEFHUz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTA2Cittc2dpZCAiT3B0aW9ucyBmb3IgdGhlIEMgcHJlcHJvY2Vzc29yLiBEZWZhdWx0IHZhbHVlOiBlbXB0eS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEwNgorIywgbm8td3JhcAorbXNnaWQgIkI8Q1hYRkxBR1M+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEwOQorbXNnaWQgIk9wdGlvbnMgZm9yIHRoZSBDKysgY29tcGlsZXIuIFNhbWUgYXMgQjxDRkxBR1M+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTA5CisjLCBuby13cmFwCittc2dpZCAiQjxGRkxBR1M+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjExMgorbXNnaWQgIk9wdGlvbnMgZm9yIHRoZSBGb3J0cmFuIGNvbXBpbGVyLiBTYW1lIGFzIEI8Q0ZMQUdTPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjExMgorIywgbm8td3JhcAorbXNnaWQgIkI8TERGTEFHUz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTIwCittc2dpZCAiIgorIk9wdGlvbnMgcGFzc2VkIHRvIHRoZSBjb21waWxlciB3aGVuIGxpbmtpbmcgZXhlY3V0YWJsZXMgb3Igc2hhcmVkIG9iamVjdHMgIgorIihpZiB0aGUgbGlua2VyIGlzIGNhbGxlZCBkaXJlY3RseSwgdGhlbiBCPC1XbD4gYW5kIEI8LD4gaGF2ZSB0byBiZSBzdHJpcHBlZCAiCisiZnJvbSB0aGVzZSBvcHRpb25zKS4gRGVmYXVsdCB2YWx1ZTogZW1wdHkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMjIKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiSTwvZXRjL2Rwa2cvZHBrZy5jZmc+IgorbXNnaWQgIkI8L2V0Yy9kcGtnL2J1aWxkZmxhZ3MuY29uZj4iCittc2dzdHIgIkk8L2V0Yy9kcGtnL2Rwa2cuY2ZnPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTI1Cittc2dpZCAiU3lzdGVtIHdpZGUgY29uZmlndXJhdGlvbiBmaWxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTI1CisjLCBuby13cmFwCittc2dpZCAiQjwkWERHX0NPTkZJR19IT01FL2Rwa2cvYnVpbGRmbGFncy5jb25mPiBvciBCPCRIT01FLy5jb25maWcvZHBrZy9idWlsZGZsYWdzLmNvbmY+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEyOAorbXNnaWQgIlVzZXIgY29uZmlndXJhdGlvbiBmaWxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMzUKK21zZ2lkICIiCisiVGhlcmUgYXJlIDIgc2V0cyBvZiBlbnZpcm9ubWVudCB2YXJpYWJsZXMgZG9pbmcgdGhlIHNhbWUgb3BlcmF0aW9ucywgdGhlICIKKyJmaXJzdCBvbmUgKERFQl9JPGZsYWc+X0k8b3A+KSBzaG91bGQgbmV2ZXIgYmUgdXNlZCB3aXRoaW4gQjxkZWJpYW4vcnVsZXM+LiAiCisiSXQncyBtZWFudCBmb3IgYW55IHVzZXIgdGhhdCB3YW50cyB0byByZWJ1aWxkIHRoZSBzb3VyY2UgcGFja2FnZSB3aXRoICIKKyJkaWZmZXJlbnQgYnVpbGQgZmxhZ3MuIFRoZSBzZWNvbmQgc2V0IChERUJfSTxmbGFnPl9NQUlOVF9JPG9wPikgc2hvdWxkIG9ubHkgIgorImJlIHVzZWQgaW4gQjxkZWJpYW4vcnVsZXM+IGJ5IHBhY2thZ2UgbWFpbnRhaW5lcnMgdG8gY2hhbmdlIHRoZSByZXN1bHRpbmcgIgorImJ1aWxkIGZsYWdzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTM1CisjLCBuby13cmFwCittc2dpZCAiQjxERUJfPkk8ZmxhZz5CPF9TRVQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRRCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMzcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPERFQl8+STxmbGFnPkI8X01BSU5UX1NFVD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTQxCittc2dpZCAiIgorIlRoaXMgdmFyaWFibGUgY2FuIGJlIHVzZWQgdG8gZm9yY2UgdGhlIHZhbHVlIHJldHVybmVkIGZvciB0aGUgZ2l2ZW4gSTxmbGFnPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE0MQorIywgbm8td3JhcAorbXNnaWQgIkI8REVCXz5JPGZsYWc+QjxfU1RSSVA+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRRCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNDMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPERFQl8+STxmbGFnPkI8X01BSU5UX1NUUklQPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNDgKK21zZ2lkICIiCisiVGhpcyB2YXJpYWJsZSBjYW4gYmUgdXNlZCB0byBwcm92aWRlIGEgc3BhY2Ugc2VwYXJhdGVkIGxpc3Qgb2Ygb3B0aW9ucyB0aGF0ICIKKyJ3aWxsIGJlIHN0cmlwcGVkIGZyb20gdGhlIHNldCBvZiBmbGFncyByZXR1cm5lZCBmb3IgdGhlIGdpdmVuIEk8ZmxhZz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNDgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPERFQl8+STxmbGFnPkI8X0FQUEVORD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFEKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE1MAorIywgbm8td3JhcAorbXNnaWQgIkI8REVCXz5JPGZsYWc+QjxfTUFJTlRfQVBQRU5EPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNTQKK21zZ2lkICIiCisiVGhpcyB2YXJpYWJsZSBjYW4gYmUgdXNlZCB0byBhcHBlbmQgc3VwcGxlbWVudGFyeSBvcHRpb25zIHRvIHRoZSB2YWx1ZSAiCisicmV0dXJuZWQgZm9yIHRoZSBnaXZlbiBJPGZsYWc+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTU0CisjLCBuby13cmFwCittc2dpZCAiQjxERUJfPkk8ZmxhZz5CPF9QUkVQRU5EPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUQorIzogZHBrZy1idWlsZGZsYWdzLjE6MTU2CisjLCBuby13cmFwCittc2dpZCAiQjxERUJfPkk8ZmxhZz5CPF9NQUlOVF9QUkVQRU5EPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNjAKK21zZ2lkICIiCisiVGhpcyB2YXJpYWJsZSBjYW4gYmUgdXNlZCB0byBwcmVwZW5kIHN1cHBsZW1lbnRhcnkgb3B0aW9ucyB0byB0aGUgdmFsdWUgIgorInJldHVybmVkIGZvciB0aGUgZ2l2ZW4gSTxmbGFnPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE2MAorIywgbm8td3JhcAorbXNnaWQgIkI8REVCX0JVSUxEX01BSU5UX09QVElPTlM+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE2NQorbXNnaWQgIiIKKyJUaGlzIHZhcmlhYmxlIGNhbiBiZSB1c2VkIHRvIGRpc2FibGUvZW5hYmxlIHZhcmlvdXMgaGFyZGVuaW5nIGJ1aWxkIGZsYWdzICIKKyJ0aHJvdWdoIHRoZSBCPGhhcmRlbmluZz4gb3B0aW9uLiBTZWUgdGhlIEI8SEFSREVOSU5HPiBzZWN0aW9uIGZvciBkZXRhaWxzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTY2CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIldBUk5JTkciCittc2dpZCAiSEFSREVOSU5HIgorbXNnc3RyICLQn9Cg0JXQlNCj0J/QoNCV0JbQlNCV0J3QmNCVIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNzEKK21zZ2lkICIiCisiU2V2ZXJhbCBjb21waWxlLXRpbWUgb3B0aW9ucyAoZGV0YWlsZWQgYmVsb3cpIGNhbiBiZSB1c2VkIHRvIGhlbHAgaGFyZGVuIGEgIgorInJlc3VsdGluZyBiaW5hcnkgYWdhaW5zdCBtZW1vcnkgY29ycnVwdGlvbiBhdHRhY2tzLCBvciBwcm92aWRlIGFkZGl0aW9uYWwgIgorIndhcm5pbmcgbWVzc2FnZXMgZHVyaW5nIGNvbXBpbGF0aW9uLiBFeGNlcHQgYXMgbm90ZWQgYmVsb3csIHRoZXNlIGFyZSAiCisiZW5hYmxlZCBieSBkZWZhdWx0IGZvciBhcmNoaXRlY3R1cmVzIHRoYXQgc3VwcG9ydCB0aGVtLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNzcKK21zZ2lkICIiCisiRWFjaCBoYXJkZW5pbmcgZmVhdHVyZSBjYW4gYmUgZW5hYmxlZCBhbmQgZGlzYWJsZWQgaW4gdGhlICIKKyJCPERFQl9CVUlMRF9NQUlOVF9PUFRJT05TPiBlbnZpcm9ubWVudCB2YXJpYWJsZSdzIEI8aGFyZGVuaW5nPiB2YWx1ZSB3aXRoICIKKyJ0aGUgXCIrXCIgYW5kIFwiLVwiIG1vZGlmaWVyLiBGb3IgZXhhbXBsZSwgdG8gZW5hYmxlIHRoZSBcInBpZVwiIGZlYXR1cmUgYW5kICIKKyJkaXNhYmxlIHRoZSBcImZvcnRpZnlcIiBmZWF0dXJlIHlvdSBjYW4gZG8gdGhpcyBpbiBCPGRlYmlhbi9ydWxlcz46IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE3OQorIywgbm8td3JhcAorbXNnaWQgIiAgZXhwb3J0IERFQl9CVUlMRF9NQUlOVF9PUFRJT05TPWhhcmRlbmluZz0rcGllLC1mb3J0aWZ5XG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTgzCittc2dpZCAiIgorIlRoZSBzcGVjaWFsIGZlYXR1cmUgQjxhbGw+IGNhbiBiZSB1c2VkIHRvIGVuYWJsZSBvciBkaXNhYmxlIGFsbCBoYXJkZW5pbmcgIgorImZlYXR1cmVzIGF0IHRoZSBzYW1lIHRpbWUuIFRodXMgZGlzYWJsaW5nIGV2ZXJ5dGhpbmcgYW5kIGVuYWJsaW5nIG9ubHkgIgorIlwiZm9ybWF0XCIgYW5kIFwiZm9ydGlmeVwiIGNhbiBiZSBhY2hpZXZlZCB3aXRoOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxODUKKyMsIG5vLXdyYXAKK21zZ2lkICIgIGV4cG9ydCBERUJfQlVJTERfTUFJTlRfT1BUSU9OUz1oYXJkZW5pbmc9LWFsbCwrZm9ybWF0LCtmb3J0aWZ5XG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE4NgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPGZvcm1hdD4iCittc2dzdHIgIkI8LS1hYm9ydC1hZnRlcj0+STzRh9C40YHQu9C+PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTk4Cittc2dpZCAiIgorIlRoaXMgc2V0dGluZyAoZW5hYmxlZCBieSBkZWZhdWx0KSBhZGRzIEI8LVdmb3JtYXQgLVdmb3JtYXQtc2VjdXJpdHkgLSIKKyJXZXJyb3I9Zm9ybWF0LXNlY3VyaXR5PiB0byBCPENGTEFHUz4gYW5kIEI8Q1hYRkxBR1M+LiBUaGlzIHdpbGwgd2FybiBhYm91dCAiCisiaW1wcm9wZXIgZm9ybWF0IHN0cmluZyB1c2VzLCBhbmQgd2lsbCBmYWlsIHdoZW4gZm9ybWF0IGZ1bmN0aW9ucyBhcmUgdXNlZCBpbiAiCisiYSB3YXkgdGhhdCB0aGF0IHJlcHJlc2VudCBwb3NzaWJsZSBzZWN1cml0eSBwcm9ibGVtcy4gQXQgcHJlc2VudCwgdGhpcyB3YXJucyAiCisiYWJvdXQgY2FsbHMgdG8gQjxwcmludGY+IGFuZCBCPHNjYW5mPiBmdW5jdGlvbnMgd2hlcmUgdGhlIGZvcm1hdCBzdHJpbmcgaXMgIgorIm5vdCBhIHN0cmluZyBsaXRlcmFsIGFuZCB0aGVyZSBhcmUgbm8gZm9ybWF0IGFyZ3VtZW50cywgYXMgaW4gQjxwcmludGYoZm9vKTsiCisiPiBpbnN0ZWFkIG9mIEI8cHJpbnRmKFwiJXNcIiwgZm9vKTs+IFRoaXMgbWF5IGJlIGEgc2VjdXJpdHkgaG9sZSBpZiB0aGUgIgorImZvcm1hdCBzdHJpbmcgY2FtZSBmcm9tIHVudHJ1c3RlZCBpbnB1dCBhbmQgY29udGFpbnMgXCIlblwiLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTk5CisjLCBuby13cmFwCittc2dpZCAiQjxmb3J0aWZ5PiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyMTAKK21zZ2lkICIiCisiVGhpcyBzZXR0aW5nIChlbmFibGVkIGJ5IGRlZmF1bHQpIGFkZHMgQjwtRF9GT1JUSUZZX1NPVVJDRT0yPiB0byBCPENGTEFHUz4gIgorImFuZCBCPENYWEZMQUdTPi4gRHVyaW5nIGNvZGUgZ2VuZXJhdGlvbiB0aGUgY29tcGlsZXIga25vd3MgYSBncmVhdCBkZWFsIG9mICIKKyJpbmZvcm1hdGlvbiBhYm91dCBidWZmZXIgc2l6ZXMgKHdoZXJlIHBvc3NpYmxlKSwgYW5kIGF0dGVtcHRzIHRvIHJlcGxhY2UgIgorImluc2VjdXJlIHVubGltaXRlZCBsZW5ndGggYnVmZmVyIGZ1bmN0aW9uIGNhbGxzIHdpdGggbGVuZ3RoLWxpbWl0ZWQgb25lcy4gIgorIlRoaXMgaXMgZXNwZWNpYWxseSB1c2VmdWwgZm9yIG9sZCwgY3J1ZnR5IGNvZGUuICBBZGRpdGlvbmFsbHksIGZvcm1hdCAiCisic3RyaW5ncyBpbiB3cml0YWJsZSBtZW1vcnkgdGhhdCBjb250YWluICclbicgYXJlIGJsb2NrZWQuIElmIGFuIGFwcGxpY2F0aW9uICIKKyJkZXBlbmRzIG9uIHN1Y2ggYSBmb3JtYXQgc3RyaW5nLCBpdCB3aWxsIG5lZWQgdG8gYmUgd29ya2VkIGFyb3VuZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjEzCittc2dpZCAiIgorIk5vdGUgdGhhdCBmb3IgdGhpcyBvcHRpb24gdG8gaGF2ZSBhbnkgZWZmZWN0LCB0aGUgc291cmNlIG11c3QgYWxzbyBiZSAiCisiY29tcGlsZWQgd2l0aCBCPC1PMT4gb3IgaGlnaGVyLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjEzCisjLCBuby13cmFwCittc2dpZCAiQjxzdGFja3Byb3RlY3Rvcj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjIyCittc2dpZCAiIgorIlRoaXMgc2V0dGluZyAoZW5hYmxlZCBieSBkZWZhdWx0KSBhZGRzIEI8LWZzdGFjay1wcm90ZWN0b3IgLS1wYXJhbT1zc3AtIgorImJ1ZmZlci1zaXplPTQ+IHRvIEI8Q0ZMQUdTPiBhbmQgQjxDWFhGTEFHUz4uIFRoaXMgYWRkcyBzYWZldHkgY2hlY2tzIGFnYWluc3QgIgorInN0YWNrIG92ZXJ3cml0ZXMuIFRoaXMgcmVuZGVycyBtYW55IHBvdGVudGlhbCBjb2RlIGluamVjdGlvbiBhdHRhY2tzIGludG8gIgorImFib3J0aW5nIHNpdHVhdGlvbnMuIEluIHRoZSBiZXN0IGNhc2UgdGhpcyB0dXJucyBjb2RlIGluamVjdGlvbiAiCisidnVsbmVyYWJpbGl0aWVzIGludG8gZGVuaWFsIG9mIHNlcnZpY2Ugb3IgaW50byBub24taXNzdWVzIChkZXBlbmRpbmcgb24gdGhlICIKKyJhcHBsaWNhdGlvbikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjIyNgorbXNnaWQgIiIKKyJUaGlzIGZlYXR1cmUgcmVxdWlyZXMgbGlua2luZyBhZ2FpbnN0IGdsaWJjIChvciBhbm90aGVyIHByb3ZpZGVyIG9mICIKKyJCPF9fc3RhY2tfY2hrX2ZhaWw+KSwgc28gbmVlZHMgdG8gYmUgZGlzYWJsZWQgd2hlbiBidWlsZGluZyB3aXRoIEI8LSIKKyJub3N0ZGxpYj4gb3IgQjwtZmZyZWVzdGFuZGluZz4gb3Igc2ltaWxhci4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjIyNworIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJCPHB1cmdlPiIKK21zZ2lkICJCPHJlbHJvPiIKK21zZ3N0ciAiQjxwdXJnZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjIzNQorbXNnaWQgIiIKKyJUaGlzIHNldHRpbmcgKGVuYWJsZWQgYnkgZGVmYXVsdCkgYWRkcyBCPC1XbCwteixyZWxybz4gdG8gQjxMREZMQUdTPi4gICIKKyJEdXJpbmcgcHJvZ3JhbSBsb2FkLCBzZXZlcmFsIEVMRiBtZW1vcnkgc2VjdGlvbnMgbmVlZCB0byBiZSB3cml0dGVuIHRvIGJ5ICIKKyJ0aGUgbGlua2VyLiBUaGlzIGZsYWdzIHRoZSBsb2FkZXIgdG8gdHVybiB0aGVzZSBzZWN0aW9ucyByZWFkLW9ubHkgYmVmb3JlICIKKyJ0dXJuaW5nIG92ZXIgY29udHJvbCB0byB0aGUgcHJvZ3JhbS4gTW9zdCBub3RhYmx5IHRoaXMgcHJldmVudHMgR09UICIKKyJvdmVyd3JpdGUgYXR0YWNrcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjIzNgorIywgbm8td3JhcAorbXNnaWQgIkI8YmluZG5vdz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjQzCittc2dpZCAiIgorIlRoaXMgc2V0dGluZyAoZGlzYWJsZWQgYnkgZGVmYXVsdCkgYWRkcyBCPC1XbCwteixub3c+IHRvIEI8TERGTEFHUz4uIER1cmluZyAiCisicHJvZ3JhbSBsb2FkLCBhbGwgZHluYW1pYyBzeW1ib2xzIGFyZSByZXNvbHZlZCwgYWxsb3dpbmcgZm9yIHRoZSBlbnRpcmUgUExUICIKKyJ0byBiZSBtYXJrZWQgcmVhZC1vbmx5IChkdWUgdG8gQjxyZWxybz4gYWJvdmUpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjQ0CisjLCBuby13cmFwCittc2dpZCAiQjxwaWU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjI1NgorbXNnaWQgIiIKKyJUaGlzIHNldHRpbmcgKGRpc2FibGVkIGJ5IGRlZmF1bHQpIGFkZHMgQjwtZlBJRT4gdG8gQjxDRkxBR1M+IGFuZCAiCisiQjxDWFhGTEFHUz4sIGFuZCBCPC1mUElFIC1waWU+IHRvIEI8TERGTEFHUz4uIFBvc2l0aW9uIEluZGVwZW5kZW50ICIKKyJFeGVjdXRhYmxlIGFyZSBuZWVkZWQgdG8gdGFrZSBhZHZhbnRhZ2Ugb2YgQWRkcmVzcyBTcGFjZSBMYXlvdXQgIgorIlJhbmRvbWl6YXRpb24sIHN1cHBvcnRlZCBieSBzb21lIGtlcm5lbCB2ZXJzaW9ucy4gV2hpbGUgQVNMUiBjYW4gYWxyZWFkeSBiZSAiCisiZW5mb3JjZWQgZm9yIGRhdGEgYXJlYXMgaW4gdGhlIHN0YWNrIGFuZCBoZWFwIChicmsgYW5kIG1tYXApLCB0aGUgY29kZSBhcmVhcyAiCisibXVzdCBiZSBjb21waWxlZCBhcyBwb3NpdGlvbi1pbmRlcGVuZGVudC4gU2hhcmVkIGxpYnJhcmllcyBhbHJlYWR5IGRvIHRoaXMgKC0iCisiZlBJQyksIHNvIHRoZXkgZ2FpbiBBU0xSIGF1dG9tYXRpY2FsbHksIGJ1dCBiaW5hcnkgLnRleHQgcmVnaW9ucyBuZWVkIHRvIGJlICIKKyJidWlsZCBQSUUgdG8gZ2FpbiBBU0xSLiBXaGVuIHRoaXMgaGFwcGVucywgUk9QIChSZXR1cm4gT3JpZW50ZWQgUHJvZ3JhbW1pbmcpICIKKyJhdHRhY2tzIGFyZSBtdWNoIGhhcmRlciBzaW5jZSB0aGVyZSBhcmUgbm8gc3RhdGljIGxvY2F0aW9ucyB0byBib3VuY2Ugb2ZmIG9mICIKKyJkdXJpbmcgYSBtZW1vcnkgY29ycnVwdGlvbiBhdHRhY2suIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjI1OQorbXNnaWQgIiIKKyJUaGlzIGlzIG5vdCBjb21wYXRpYmxlIHdpdGggQjwtZlBJQz4gc28gY2FyZSBtdXN0IGJlIHRha2VuIHdoZW4gYnVpbGRpbmcgIgorInNoYXJlZCBvYmplY3RzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyNjUKK21zZ2lkICIiCisiQWRkaXRpb25hbGx5LCBzaW5jZSBQSUUgaXMgaW1wbGVtZW50ZWQgdmlhIGEgZ2VuZXJhbCByZWdpc3Rlciwgc29tZSAiCisiYXJjaGl0ZWN0dXJlcyAobW9zdCBub3RhYmx5IGkzODYpIGNhbiBzZWUgcGVyZm9ybWFuY2UgbG9zc2VzIG9mIHVwIHRvIDE1JSBpbiAiCisidmVyeSB0ZXh0LXNlZ21lbnQtaGVhdnkgYXBwbGljYXRpb24gd29ya2xvYWRzOyBtb3N0IHdvcmtsb2FkcyBzZWUgbGVzcyB0aGFuICIKKyIxJS4gQXJjaGl0ZWN0dXJlcyB3aXRoIG1vcmUgZ2VuZXJhbCByZWdpc3RlcnMgKGUuZy4gYW1kNjQpICBkbyBub3Qgc2VlIGFzICIKKyJoaWdoIGEgd29yc3QtY2FzZSBwZW5hbHR5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyNjgKKyMsIGZ1enp5Cittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMTAtMjAxMSBSYXBoYVxcWzplXWwgSGVydHpvZyIKK21zZ3N0ciAiQ29weXJpZ2h0IDIwMDEgSm9leSBIZXNzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyNzAKKyMsIGZ1enp5Cittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMTEgS2VlcyBDb29rIgorbXNnc3RyICJDb3B5cmlnaHQgMjAwMSBKb2V5IEhlc3MiCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiZHBrZy1idWlsZHBhY2thZ2UiCittc2dzdHIgIkI8ZHBrZz4gW0k80L/QsNGA0LDQvNC10YLRgNGLPl0gSTzQtNC10LnRgdGC0LLQuNC1PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo0Cittc2dpZCAiZHBrZy1idWlsZHBhY2thZ2UgLSBidWlsZCBiaW5hcnkgb3Igc291cmNlIHBhY2thZ2VzIGZyb20gc291cmNlcyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjgKKyMsIGZ1enp5Cittc2dpZCAiQjxkcGtnLWJ1aWxkcGFja2FnZT4gW0k8b3B0aW9uPi4uLl0iCittc2dzdHIgIkI8ZHBrZz4gW0k80L/QsNGA0LDQvNC10YLRgNGLPl0gSTzQtNC10LnRgdGC0LLQuNC1PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxMworbXNnaWQgIiIKKyJCPGRwa2ctYnVpbGRwYWNrYWdlPiBpcyBhIHByb2dyYW0gdGhhdCBhdXRvbWF0ZXMgdGhlIHByb2Nlc3Mgb2YgYnVpbGRpbmcgYSAiCisiRGViaWFuIHBhY2thZ2UuIEl0IGNvbnNpc3RzIG9mIHRoZSBmb2xsb3dpbmcgc3RlcHM6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEzCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8MS4+IgorbXNnc3RyICJCPC1HPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxNworbXNnaWQgIiIKKyJJdCBwcmVwYXJlcyB0aGUgYnVpbGQgZW52aXJvbm1lbnQgYnkgc2V0dGluZyB2YXJpb3VzIGVudmlyb25tZW50IHZhcmlhYmxlcyAiCisiKHNlZSBCPEVOVklST05NRU5UPikgYW5kIGNhbGxzIEI8ZHBrZy1zb3VyY2UgLS1iZWZvcmUtYnVpbGQ+ICh1bmxlc3MgQjwtVD4gIgorIm9yIEI8LS10YXJnZXQ+IGhhcyBiZWVuIHVzZWQpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxNworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPDIuPiIKK21zZ3N0ciAiQjwtRz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjAKKyMsIGZ1enp5Cittc2dpZCAiIgorIkl0IGNoZWNrcyB0aGF0IHRoZSBidWlsZC1kZXBlbmRlbmNpZXMgYW5kIGJ1aWxkLWNvbmZsaWN0cyBhcmUgc2F0aXNmaWVkICIKKyIodW5sZXNzIEI8LWQ+IGlzIHNwZWNpZmllZCkuIgorbXNnc3RyICJkcGtnLWNoZWNrYnVpbGRkZXBzIC0tINC/0YDQvtCy0LXRgNGP0LXRgiDRgdCx0L7RgNC+0YfQvdGL0LUg0LfQsNCy0LjRgdC40LzQvtGB0YLQuCDQuCDQutC+0L3RhNC70LjQutGC0YsiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIwCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8My4+IgorbXNnc3RyICJCPC1HPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyNQorbXNnaWQgIiIKKyJJZiBhIHNwZWNpZmljIHRhcmdldCBoYXMgYmVlbiBzZWxlY3RlZCB3aXRoIHRoZSBCPC1UPiBvciBCPC0tdGFyZ2V0PiBvcHRpb24sICIKKyJpdCBjYWxscyB0aGF0IHRhcmdldCBhbmQgc3RvcHMgaGVyZS4gT3RoZXJ3aXNlIGl0IGNhbGxzIEI8ZmFrZXJvb3QgZGViaWFuLyIKKyJydWxlcyBjbGVhbj4gdG8gY2xlYW4gdGhlIGJ1aWxkLXRyZWUgKHVubGVzcyBCPC1uYz4gaXMgc3BlY2lmaWVkKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjUKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjw0Lj4iCittc2dzdHIgIkI8LUc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjI5Cittc2dpZCAiIgorIkl0IGNhbGxzIEI8ZHBrZy1zb3VyY2UgLWI+IHRvIGdlbmVyYXRlIHRoZSBzb3VyY2UgcGFja2FnZSAodW5sZXNzIGEgYmluYXJ5LSIKKyJvbmx5IGJ1aWxkIGhhcyBiZWVuIHJlcXVlc3RlZCB3aXRoIEI8LWI+LCBCPC1CPiBvciBCPC1BPikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjI5CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8NS4+IgorbXNnc3RyICJCPC1HPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTozNgorbXNnaWQgIiIKKyJJdCBjYWxscyBCPGRlYmlhbi9ydWxlcz4gQjxidWlsZD4gZm9sbG93ZWQgYnkgQjxmYWtlcm9vdCBkZWJpYW4vcnVsZXM+ICIKKyJJPGJpbmFyeS10YXJnZXQ+ICh1bmxlc3MgYSBzb3VyY2Utb25seSBidWlsZCBoYXMgYmVlbiByZXF1ZXN0ZWQgd2l0aCBCPC1TPikuICIKKyJOb3RlIHRoYXQgSTxiaW5hcnktdGFyZ2V0PiBpcyBlaXRoZXIgQjxiaW5hcnk+IChkZWZhdWx0IGNhc2UsIG9yIGlmIEI8LWI+IGlzICIKKyJzcGVjaWZpZWQpICBvciBCPGJpbmFyeS1hcmNoPiAoaWYgQjwtQj4gaXMgc3BlY2lmaWVkKSBvciBCPGJpbmFyeS1pbmRlcD4gKGlmICIKKyJCPC1BPiBpcyBzcGVjaWZpZWQpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTozNgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPDYuPiIKK21zZ3N0ciAiQjwtRz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MzkKK21zZ2lkICIiCisiSXQgY2FsbHMgQjxncGc+IHRvIHNpZ24gdGhlIEI8LmRzYz4gZmlsZSAoaWYgYW55LCB1bmxlc3MgQjwtdXM+IGlzICIKKyJzcGVjaWZpZWQpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTozOQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPDcuPiIKK21zZ3N0ciAiQjwtRz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NDMKK21zZ2lkICIiCisiSXQgY2FsbHMgQjxkcGtnLWdlbmNoYW5nZXM+IHRvIGdlbmVyYXRlIGEgQjwuY2hhbmdlcz4gZmlsZS4gIE1hbnkgQjxkcGtnLSIKKyJidWlsZHBhY2thZ2U+IG9wdGlvbnMgYXJlIGZvcndhcmRlZCB0byBCPGRwa2ctZ2VuY2hhbmdlcz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjQzCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8OC4+IgorbXNnc3RyICJCPC1HPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo0NgorbXNnaWQgIiIKKyJJdCBjYWxscyBCPGdwZz4gdG8gc2lnbiB0aGUgQjwuY2hhbmdlcz4gZmlsZSAodW5sZXNzIEI8LXVjPiBpcyBzcGVjaWZpZWQpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo0NgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPDkuPiIKK21zZ3N0ciAiQjwtRz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NDkKK21zZ2lkICIiCisiSWYgQjwtdGM+IGlzIHNwZWNpZmllZCwgaXQgd2lsbCBjYWxsIEI8ZmFrZXJvb3QgZGViaWFuL3J1bGVzIGNsZWFuPiBhZ2Fpbi4gIgorIkZpbmFsbHkgaXQgY2FsbHMgQjxkcGtnLXNvdXJjZSAtLWFmdGVyLWJ1aWxkPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NTEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtYj4iCittc2dzdHIgIkI8LUI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjU1Cittc2dpZCAiIgorIlNwZWNpZmllcyBhIGJpbmFyeS1vbmx5IGJ1aWxkLCBubyBzb3VyY2UgZmlsZXMgYXJlIHRvIGJlIGJ1aWx0IGFuZC9vciAiCisiZGlzdHJpYnV0ZWQuIFBhc3NlZCB0byBCPGRwa2ctZ2VuY2hhbmdlcz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjU1IGRwa2ctY2hlY2tidWlsZGRlcHMuMToyMworIywgbm8td3JhcAorbXNnaWQgIkI8LUI+IgorbXNnc3RyICJCPC1CPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo1OQorbXNnaWQgIiIKKyJTcGVjaWZpZXMgYSBiaW5hcnktb25seSBidWlsZCwgbGltaXRlZCB0byBhcmNoaXRlY3R1cmUgZGVwZW5kZW50IHBhY2thZ2VzLiAgIgorIlBhc3NlZCB0byBCPGRwa2ctZ2VuY2hhbmdlcz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjU5CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LUE+IgorbXNnc3RyICJCPC1HPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo2MworbXNnaWQgIiIKKyJTcGVjaWZpZXMgYSBiaW5hcnktb25seSBidWlsZCwgbGltaXRlZCB0byBhcmNoaXRlY3R1cmUgaW5kZXBlbmRlbnQgcGFja2FnZXMuICIKKyJQYXNzZWQgdG8gQjxkcGtnLWdlbmNoYW5nZXM+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo2MyBkcGtnLWdlbmNoYW5nZXMuMToyNworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1TPiIKK21zZ3N0ciAiQjwtRz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NjcKK21zZ2lkICIiCisiU3BlY2lmaWVzIGEgc291cmNlLW9ubHkgYnVpbGQsIG5vIGJpbmFyeSBwYWNrYWdlcyBuZWVkIHRvIGJlIG1hZGUuICBQYXNzZWQgIgorInRvIEI8ZHBrZy1nZW5jaGFuZ2VzPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NjcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1GPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjcxCittc2dpZCAiIgorIlNwZWNpZmllcyBhIG5vcm1hbCBmdWxsIGJ1aWxkLCBiaW5hcnkgYW5kIHNvdXJjZSBwYWNrYWdlcyB3aWxsIGJlIGJ1aWx0LiAgIgorIlRoaXMgaXMgdGhlIHNhbWUgYXMgdGhlIGRlZmF1bHQgY2FzZSB3aGVuIG5vIGJ1aWxkIG9wdGlvbiBpcyBzcGVjaWZpZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NzMKKyMsIGZ1enp5Cittc2dpZCAiQjwtLXRhcmdldD0+STx0YXJnZXQ+IgorbXNnc3RyICJCPC0tYWJvcnQtYWZ0ZXI9Pkk80YfQuNGB0LvQvj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NzUKKyMsIGZ1enp5Cittc2dpZCAiQjwtLXRhcmdldCA+STx0YXJnZXQ+IgorbXNnc3RyICJCPC0tYWJvcnQtYWZ0ZXI9Pkk80YfQuNGB0LvQvj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NzcKKyMsIGZ1enp5Cittc2dpZCAiQjwtVD5JPHRhcmdldD4iCittc2dzdHIgIkI8LXQ+fEI8LS10ZXN0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo4MworbXNnaWQgIiIKKyJDYWxscyBCPGRlYmlhbi9ydWxlcz4gSTx0YXJnZXQ+IGFmdGVyIGhhdmluZyBzZXR1cCB0aGUgYnVpbGQgZW52aXJvbm1lbnQgYW5kICIKKyJzdG9wcyB0aGUgcGFja2FnZSBidWlsZCBwcm9jZXNzIGhlcmUuIElmIEI8LS1hcy1yb290PiBpcyBhbHNvIGdpdmVuLCB0aGVuICIKKyJ0aGUgY29tbWFuZCBpcyBleGVjdXRlZCBhcyByb290IChzZWUgQjwtcj4pLiBOb3RlIHRoYXQgb2ZmaWNpYWwgdGFyZ2V0cyB0aGF0ICIKKyJhcmUgcmVxdWlyZWQgdG8gYmUgcnVuIGFzIHJvb3QgYnkgdGhlIERlYmlhbiBwb2xpY3kgZG8gbm90IG5lZWQgdGhpcyBvcHRpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjg0CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1hcy1yb290PiIKK21zZ3N0ciAiQjwtdD58QjwtLXRlc3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjg4Cittc2dpZCAiIgorIk9ubHkgbWVhbmluZ2Z1bCB0b2dldGhlciB3aXRoIEI8LS10YXJnZXQ+LiBSZXF1aXJlcyB0aGF0IHRoZSB0YXJnZXQgYmUgcnVuICIKKyJ3aXRoIHJvb3QgcmlnaHRzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo5MCBkcGtnLWdlbmNoYW5nZXMuMTozNgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1zaT4iCittc2dzdHIgIkI8LUI+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo5MiBkcGtnLWdlbmNoYW5nZXMuMTo0MgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1zYT4iCittc2dzdHIgIkI8LUI+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo5NCBkcGtnLWdlbmNoYW5nZXMuMTo0NQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1zZD4iCittc2dzdHIgIkI8LUI+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo5NiBkcGtnLWdlbmNoYW5nZXMuMTo0OSBkcGtnLWdlbmNvbnRyb2wuMTozOAorIzogZHBrZy1nZW5zeW1ib2xzLjE6Mzc3CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LXY+STx2ZXJzaW9uPiIKK21zZ3N0ciAiQjwtVj58QjwtLXZlcnNpb24+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo5OCBkcGtnLWdlbmNoYW5nZXMuMTo1NAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1DPkk8Y2hhbmdlc2Rlc2NyaXB0aW9uPiIKK21zZ3N0ciAiQjwgPkU8bHQ+0LTQu9C40L3QvdC+0LUg0L7Qv9C40YHQsNC90LjQtUU8Z3Q+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxMDAgZHBrZy1nZW5jaGFuZ2VzLjE6NjAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1tPkk8bWFpbnRhaW5lcmFkZHJlc3M+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEwMiBkcGtnLWdlbmNoYW5nZXMuMTo2NgorIywgbm8td3JhcAorbXNnaWQgIkI8LWU+STxtYWludGFpbmVyYWRkcmVzcz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxMDQKK21zZ2lkICJQYXNzZWQgdW5jaGFuZ2VkIHRvIEI8ZHBrZy1nZW5jaGFuZ2VzPi4gU2VlIGl0cyBtYW51YWwgcGFnZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTA1CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LWE+STxhcmNoaXRlY3R1cmU+IgorbXNnc3RyICJCPGRwa2cgLS1wcmludC1hcmNoaXRlY3R1cmU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjExMAorbXNnaWQgIiIKKyJTcGVjaWZ5IHRoZSBEZWJpYW4gYXJjaGl0ZWN0dXJlIHdlIGJ1aWxkIGZvci4gVGhlIGFyY2hpdGVjdHVyZSBvZiB0aGUgIgorIm1hY2hpbmUgd2UgYnVpbGQgb24gaXMgZGV0ZXJtaW5lZCBhdXRvbWF0aWNhbGx5LCBhbmQgaXMgYWxzbyB0aGUgZGVmYXVsdCBmb3IgIgorInRoZSBob3N0IG1hY2hpbmUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTE1Cittc2dpZCAiIgorIlNwZWNpZnkgdGhlIEdOVSBzeXN0ZW0gdHlwZSB3ZSBidWlsZCBmb3IuIEl0IGNhbiBiZSB1c2VkIGluIHBsYWNlIG9mIC1hIG9yICIKKyJhcyBhIGNvbXBsZW1lbnQgdG8gb3ZlcnJpZGUgdGhlIGRlZmF1bHQgR05VIHN5c3RlbSB0eXBlIG9mIHRoZSB0YXJnZXQgRGViaWFuICIKKyJhcmNoaXRlY3R1cmUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjExNQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1qPkk8am9icz4iCittc2dzdHIgIkI8LS1sb2c9Pkk80LjQvNGPINGE0LDQudC70LA+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEyNgorbXNnaWQgIiIKKyJOdW1iZXIgb2Ygam9icyBhbGxvd2VkIHRvIGJlIHJ1biBzaW11bHRhbmVvdXNseSwgZXF1aXZhbGVudCB0byB0aGUgQjxtYWtlPiIKKyIoMSkgIG9wdGlvbiBvZiB0aGUgc2FtZSBuYW1lLiBXaWxsIGFkZCBpdHNlbGYgdG8gdGhlIE1BS0VGTEFHUyBlbnZpcm9ubWVudCAiCisidmFyaWFibGUsIHdoaWNoIHNob3VsZCBjYXVzZSBhbGwgc3Vic2VxdWVudCBtYWtlIGludm9jYXRpb25zIHRvIGluaGVyaXQgdGhlICIKKyJvcHRpb24uIEFsc28gYWRkcyBCPHBhcmFsbGVsPT5JPGpvYnM+IHRvIHRoZSBERUJfQlVJTERfT1BUSU9OUyBlbnZpcm9ubWVudCAiCisidmFyaWFibGUgd2hpY2ggYWxsb3dzIGRlYmlhbi9ydWxlcyBmaWxlcyB0byB1c2UgdGhpcyBpbmZvcm1hdGlvbiBmb3IgdGhlaXIgIgorIm93biBwdXJwb3Nlcy4gIFRoZSBCPHBhcmFsbGVsPT5JPGpvYnM+IGluIERFQl9CVUlMRF9PUFRJT05TIGVudmlyb25tZW50ICIKKyJ2YXJpYWJsZSB3aWxsIG92ZXJyaWRlIHRoZSBCPC1qPiB2YWx1ZSBpZiB0aGlzIG9wdGlvbiBpcyBnaXZlbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTI2CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LUQ+IgorbXNnc3RyICJCPC1CPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxMzAKKyMsIGZ1enp5Cittc2dpZCAiIgorIkNoZWNrIGJ1aWxkIGRlcGVuZGVuY2llcyBhbmQgY29uZmxpY3RzOyBhYm9ydCBpZiB1bnNhdGlzZmllZC4gVGhpcyBpcyB0aGUgIgorImRlZmF1bHQgYmVoYXZpb3IuIgorbXNnc3RyICJkcGtnLWNoZWNrYnVpbGRkZXBzIC0tINC/0YDQvtCy0LXRgNGP0LXRgiDRgdCx0L7RgNC+0YfQvdGL0LUg0LfQsNCy0LjRgdC40LzQvtGB0YLQuCDQuCDQutC+0L3RhNC70LjQutGC0YsiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEzMCBkcGtnLWdlbnN5bWJvbHMuMTo0MzIKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtZD4iCittc2dzdHIgIkI8LUI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEzMworIywgZnV6enkKK21zZ2lkICJEbyBub3QgY2hlY2sgYnVpbGQgZGVwZW5kZW5jaWVzIGFuZCBjb25mbGljdHMuIgorbXNnc3RyICJkcGtnLWNoZWNrYnVpbGRkZXBzIC0tINC/0YDQvtCy0LXRgNGP0LXRgiDRgdCx0L7RgNC+0YfQvdGL0LUg0LfQsNCy0LjRgdC40LzQvtGB0YLQuCDQuCDQutC+0L3RhNC70LjQutGC0YsiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEzMworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1uYz4iCittc2dzdHIgIkI8LUI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEzNworbXNnaWQgIiIKKyJEbyBub3QgY2xlYW4gdGhlIHNvdXJjZSB0cmVlIChpbXBsaWVzIEI8LWI+IGlmIG5vdGhpbmcgZWxzZSBoYXMgYmVlbiAiCisic2VsZWN0ZWQgYW1vbmcgQjwtQj4sIEI8LUE+IG9yIEI8LVM+KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTM3CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LXRjPiIKK21zZ3N0ciAiQjwtQj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTQzCittc2dpZCAiIgorIkNsZWFuIHRoZSBzb3VyY2UgdHJlZSAodXNpbmcgSTxnYWluLXJvb3QtY29tbWFuZD4gQjxkZWJpYW4vcnVsZXMgY2xlYW4+KSAgIgorImFmdGVyIHRoZSBwYWNrYWdlIGhhcyBiZWVuIGJ1aWx0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxNDMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1yPkk8Z2Fpbi1yb290LWNvbW1hbmQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTY3Cittc2dpZCAiIgorIldoZW4gQjxkcGtnLWJ1aWxkcGFja2FnZT4gbmVlZHMgdG8gZXhlY3V0ZSBwYXJ0IG9mIHRoZSBidWlsZCBwcm9jZXNzIGFzICIKKyJyb290LCBpdCBwcmVmaXhlcyB0aGUgY29tbWFuZCBpdCBleGVjdXRlcyB3aXRoIEk8Z2Fpbi1yb290LWNvbW1hbmQ+IGlmIG9uZSAiCisiaGFzIGJlZW4gc3BlY2lmaWVkLiBPdGhlcndpc2UsIGlmIG5vbmUgaGFzIGJlZW4gc3BlY2lmaWVkLCBCPGZha2Vyb290PiB3aWxsICIKKyJiZSB1c2VkIGJ5IGRlZmF1bHQsIGlmIHRoZSBjb21tYW5kIGlzIHByZXNlbnQuICBJPGdhaW4tcm9vdC1jb21tYW5kPiBzaG91bGQgIgorInN0YXJ0IHdpdGggdGhlIG5hbWUgb2YgYSBwcm9ncmFtIG9uIHRoZSBCPFBBVEg+IGFuZCB3aWxsIGdldCBhcyBhcmd1bWVudHMgIgorInRoZSBuYW1lIG9mIHRoZSByZWFsIGNvbW1hbmQgdG8gcnVuIGFuZCB0aGUgYXJndW1lbnRzIGl0IHNob3VsZCB0YWtlLiAgIgorIkk8Z2Fpbi1yb290LWNvbW1hbmQ+IGNhbiBpbmNsdWRlIHBhcmFtZXRlcnMgKHRoZXkgbXVzdCBiZSBzcGFjZS1zZXBhcmF0ZWQpICIKKyJidXQgbm8gc2hlbGwgbWV0YWNoYXJhY3RlcnMuICBJPGdhaW4tcm9vdC1jb21tYW5kPiBtaWdodCB0eXBpY2FsbHkgYmUgIgorIkI8ZmFrZXJvb3Q+LCBCPHN1ZG8+LCBCPHN1cGVyPiBvciBCPHJlYWxseT4uICBCPHN1PiBpcyBub3Qgc3VpdGFibGUsIHNpbmNlICIKKyJpdCBjYW4gb25seSBpbnZva2UgdGhlIHVzZXIncyBzaGVsbCB3aXRoIEI8LWM+IGluc3RlYWQgb2YgcGFzc2luZyBhcmd1bWVudHMgIgorImluZGl2aWR1YWxseSB0byB0aGUgY29tbWFuZCB0byBiZSBydW4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE2NworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1SPkk8cnVsZXMtZmlsZT4iCittc2dzdHIgIkk8Y29udHJvbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTc4Cittc2dpZCAiIgorIkJ1aWxkaW5nIGEgRGViaWFuIHBhY2thZ2UgdXN1YWxseSBpbnZvbHZlcyBpbnZva2luZyBCPGRlYmlhbi9ydWxlcz4gYXMgYSAiCisiY29tbWFuZCB3aXRoIHNldmVyYWwgc3RhbmRhcmQgcGFyYW1ldGVycy4gV2l0aCB0aGlzIG9wdGlvbiBpdCdzIHBvc3NpYmxlIHRvICIKKyJ1c2UgYW5vdGhlciBwcm9ncmFtIGludm9jYXRpb24gdG8gYnVpbGQgdGhlIHBhY2thZ2UgKGl0IGNhbiBpbmNsdWRlIHNwYWNlICIKKyJzZXBhcmF0ZWQgcGFyYW1ldGVycykuICBBbHRlcm5hdGl2ZWx5IGl0IGNhbiBiZSB1c2VkIHRvIGV4ZWN1dGUgdGhlIHN0YW5kYXJkICIKKyJydWxlcyBmaWxlIHdpdGggYW5vdGhlciBtYWtlIHByb2dyYW0gKGZvciBleGFtcGxlIGJ5IHVzaW5nIEI8L3Vzci9sb2NhbC9iaW4vIgorIm1ha2UgLWYgZGViaWFuL3J1bGVzPiBhcyBJPHJ1bGVzLWZpbGU+KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTc4CisjLCBuby13cmFwCittc2dpZCAiQjwtcD5JPHNpZ24tY29tbWFuZD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxODgKK21zZ2lkICIiCisiV2hlbiBCPGRwa2ctYnVpbGRwYWNrYWdlPiBuZWVkcyB0byBleGVjdXRlIEdQRyBvciBQR1AgdG8gc2lnbiBhIHNvdXJjZSAiCisiY29udHJvbCAoQjwuZHNjPikgZmlsZSBvciBhIEI8LmNoYW5nZXM+IGZpbGUgaXQgd2lsbCBydW4gSTxzaWduLWNvbW1hbmQ+ICIKKyIoc2VhcmNoaW5nIHRoZSBCPFBBVEg+IGlmIG5lY2Vzc2FyeSkgaW5zdGVhZCBvZiBCPGdwZz4uIEk8c2lnbi1jb21tYW5kPiB3aWxsICIKKyJnZXQgYWxsIHRoZSBhcmd1bWVudHMgdGhhdCBCPHBncD4gd291bGQgaGF2ZSBnb3R0ZW4uIElmIEk8c2lnbi1jb21tYW5kPiAiCisidGFrZXMgaXRzIGFyZ3VtZW50cyBpbiBHUEcgcmF0aGVyIHRoYW4gUEdQIHN0eWxlLCB5b3Ugc2hvdWxkIGdpdmUgdGhlIEI8LSIKKyJzZ3BnPiBvcHRpb24uIEk8c2lnbi1jb21tYW5kPiBzaG91bGQgbm90IGNvbnRhaW4gc3BhY2VzIG9yIGFueSBvdGhlciBzaGVsbCAiCisibWV0YWNoYXJhY3RlcnMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE4OAorIywgbm8td3JhcAorbXNnaWQgIkI8LWs+STxrZXktaWQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTkxCittc2dpZCAiU3BlY2lmeSBhIGtleS1JRCB0byB1c2Ugd2hlbiBzaWduaW5nIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxOTEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtdXM+IgorbXNnc3RyICJCPC1CPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxOTQKK21zZ2lkICJEbyBub3Qgc2lnbiB0aGUgc291cmNlIHBhY2thZ2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE5NAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC11Yz4iCittc2dzdHIgIkI8LUI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE5NworbXNnaWQgIkRvIG5vdCBzaWduIHRoZSBCPC5jaGFuZ2VzPiBmaWxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE5OQorbXNnaWQgIkI8LWk+W0k8cmVnZXhwPl0iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMDEKKyMsIGZ1enp5Cittc2dpZCAiQjwtST5JPFtwYXR0ZXJuXT4iCittc2dzdHIgIkI8LS1zdGF0dXMtZmQgPkk8RTxsdD5uRTxndD4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIwMworbXNnaWQgIkI8LXM+W0I8bnNBa3VyS1VSPl0iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMDUKKyMsIGZ1enp5Cittc2dpZCAiQjwtej4sIEI8LVo+IgorbXNnc3RyICJCPC10PnxCPC0tdGVzdD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjA4Cittc2dpZCAiUGFzc2VkIHVuY2hhbmdlZCB0byBCPGRwa2ctc291cmNlPi4gU2VlIGl0cyBtYW51YWwgcGFnZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjA5CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1zb3VyY2Utb3B0aW9uPT5JPG9wdD4iCittc2dzdHIgIkI8ZHBrZz4gW0k80L/QsNGA0LDQvNC10YLRgNGLPl0gSTzQtNC10LnRgdGC0LLQuNC1PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMTIKK21zZ2lkICJQYXNzIG9wdGlvbiBJPG9wdD4gdG8gQjxkcGtnLXNvdXJjZT4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIxMgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tY2hhbmdlcy1vcHRpb249Pkk8b3B0PiIKK21zZ3N0ciAiQjwgPkU8bHQ+0LTQu9C40L3QvdC+0LUg0L7Qv9C40YHQsNC90LjQtUU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIxNQorbXNnaWQgIlBhc3Mgb3B0aW9uIEk8b3B0PiB0byBCPGRwa2ctZ2VuY2hhbmdlcz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjE5CisjLCBmdXp6eQorbXNnaWQgIkI8LS1hZG1pbmRpciA+STxkaXI+IgorbXNnc3RyICJCPC0tc3RhdHVzLWZkID5JPEU8bHQ+bkU8Z3Q+PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMjIgZHBrZy1jaGVja2J1aWxkZGVwcy4xOjIzIGRwa2ctcXVlcnkuMToxMjIKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjE1IGRwa2ctdHJpZ2dlci4xOjQzCittc2dpZCAiIgorIkNoYW5nZSB0aGUgbG9jYXRpb24gb2YgdGhlIEI8ZHBrZz4gZGF0YWJhc2UuIFRoZSBkZWZhdWx0IGxvY2F0aW9uIGlzIEk8L3Zhci8iCisibGliL2Rwa2c+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMjMgZHBrZy1jaGVja2J1aWxkZGVwcy4xOjMzIGRwa2ctZGlzdGFkZGZpbGUuMTozMgorIzogZHBrZy1kZWIuMToxNzIgZHBrZy1nZW5jaGFuZ2VzLjE6MTMxIGRwa2ctZ2VuY29udHJvbC4xOjEyMQorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDQzIGRwa2ctbmFtZS4xOjU4IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTozMworIzogZHBrZy1xdWVyeS4xOjExMCBkcGtnLXNjYW5wYWNrYWdlcy4xOjk2IGRwa2ctc2hsaWJkZXBzLjE6MjE1CisjOiBkcGtnLXNvdXJjZS4xOjk2IGRwa2ctc3BsaXQuMToxMjYgZHBrZy10cmlnZ2VyLjE6MzEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtaD4sIEI8LS1oZWxwPiIKK21zZ3N0ciAiQjwtSD58QjwtLWhlbHA+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIzNAorbXNnaWQgIiIKKyJFdmVuIGlmIEI8ZHBrZy1idWlsZHBhY2thZ2U+IGV4cG9ydHMgc29tZSB2YXJpYWJsZXMsIEI8ZGViaWFuL3J1bGVzPiBzaG91bGQgIgorIm5vdCByZWx5IG9uIHRoZWlyIHByZXNlbmNlIGFuZCBzaG91bGQgaW5zdGVhZCB1c2UgdGhlIHJlc3BlY3RpdmUgaW50ZXJmYWNlICIKKyJ0byByZXRyaWV2ZSB0aGUgbmVlZGVkIHZhbHVlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjM0CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIlZhcmlhYmxlcyBzZXQgYnkgZHBrZy1hcmNoaXRlY3R1cmUiCittc2dzdHIgIkI8ZHBrZyAtLXByaW50LWFyY2hpdGVjdHVyZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjM4Cittc2dpZCAiIgorIkI8ZHBrZy1hcmNoaXRlY3R1cmU+IGlzIGNhbGxlZCB3aXRoIHRoZSBCPC1hPiBhbmQgQjwtdD4gcGFyYW1ldGVycyAiCisiZm9yd2FyZGVkLiBBbnkgdmFyaWFibGUgdGhhdCBpcyBvdXRwdXQgYnkgaXRzIEI8LXM+IG9wdGlvbiBpcyBpbnRlZ3JhdGVkIGluICIKKyJ0aGUgYnVpbGQgZW52aXJvbm1lbnQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIzOAorIywgbm8td3JhcAorbXNnaWQgIkNvbXBpbGVyIGZsYWdzIGFyZSBubyBsb25nZXIgZXhwb3J0ZWQiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyNDMKK21zZ2lkICIiCisiQmV0d2VlbiB2ZXJzaW9ucyAxLjE0LjE3IGFuZCAxLjE2LjEsIEI8ZHBrZy1idWlsZHBhY2thZ2U+IGV4cG9ydGVkIGNvbXBpbGVyICIKKyJmbGFncyAoQjxDRkxBR1M+LCBCPENYWEZMQUdTPiwgQjxGRkxBR1M+LCBCPENQUEZMQUdTPiBhbmQgQjxMREZMQUdTPikgd2l0aCAiCisidmFsdWVzIGFzIHJldHVybmVkIGJ5IEI8ZHBrZy1idWlsZGZsYWdzPi4gVGhpcyBpcyBubyBsb25nZXIgdGhlIGNhc2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjQ4Cittc2dpZCAiIgorIkl0IHNob3VsZCBiZSBwb3NzaWJsZSB0byBzcGVjaWZ5IHNwYWNlcyBhbmQgc2hlbGwgbWV0YWNoYXJhY3RlcnMgaW4gYW5kICIKKyJpbml0aWFsIGFyZ3VtZW50cyBmb3IgSTxnYWluLXJvb3QtY29tbWFuZD4gYW5kIEk8c2lnbi1jb21tYW5kPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyNTYKKyMsIGZ1enp5Cittc2dpZCAiIgorIkI8ZHBrZy1zb3VyY2U+KDEpLCBCPGRwa2ctYXJjaGl0ZWN0dXJlPigxKSwgQjxkcGtnLWJ1aWxkZmxhZ3M+KDEpLCBCPGRwa2ctIgorImdlbmNoYW5nZXM+KDEpLCBCPGZha2Vyb290PigxKSwgQjxncGc+KDEpLiIKK21zZ3N0ciAiQjxkZWI+KDUpLCBCPGRwa2c+KDEpLCBCPGRwa2ctZGViPigxKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjY1CisjLCBmdXp6eQorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDA4LTIwMTAgUmFwaGFcXFs6ZV1sIEhlcnR6b2ciCittc2dzdHIgIkNvcHlyaWdodCAyMDAxIEpvZXkgSGVzcyIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctY2hlY2tidWlsZGRlcHMuMToxCisjLCBuby13cmFwCittc2dpZCAiZHBrZy1jaGVja2J1aWxkZGVwcyIKK21zZ3N0ciAiZHBrZy1jaGVja2J1aWxkZGVwcyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1jaGVja2J1aWxkZGVwcy4xOjQKK21zZ2lkICJkcGtnLWNoZWNrYnVpbGRkZXBzIC0gY2hlY2sgYnVpbGQgZGVwZW5kZW5jaWVzIGFuZCBjb25mbGljdHMiCittc2dzdHIgImRwa2ctY2hlY2tidWlsZGRlcHMgLS0g0L/RgNC+0LLQtdGA0Y/QtdGCINGB0LHQvtGA0L7Rh9C90YvQtSDQt9Cw0LLQuNGB0LjQvNC+0YHRgtC4INC4INC60L7QvdGE0LvQuNC60YLRiyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1jaGVja2J1aWxkZGVwcy4xOjkKKyMsIGZ1enp5Cittc2dpZCAiQjxkcGtnLWNoZWNrYnVpbGRkZXBzPiBbSTxvcHRpb24+Li4uXSBbSTxjb250cm9sLWZpbGU+XSIKK21zZ3N0ciAiQjxkcGtnLWNoZWNrYnVpbGRkZXBzPiAtQjwtQj4gW0k80YTQsNC50LsgY29udHJvbD5dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6MTQKK21zZ2lkICIiCisiVGhpcyBwcm9ncmFtIGNoZWNrcyB0aGUgaW5zdGFsbGVkIHBhY2thZ2VzIGluIHRoZSBzeXN0ZW0gYWdhaW5zdCB0aGUgYnVpbGQgIgorImRlcGVuZGVuY2llcyBhbmQgYnVpbGQgY29uZmxpY3RzIGxpc3RlZCBpbiB0aGUgY29udHJvbCBmaWxlLiBJZiBhbnkgYXJlIG5vdCAiCisibWV0LCBpdCBkaXNwbGF5cyB0aGVtIGFuZCBleGl0cyB3aXRoIGEgbm9uemVybyByZXR1cm4gY29kZS4iCittc2dzdHIgIiIKKyLQrdGC0LAg0L/RgNC+0LPRgNCw0LzQvNCwINC/0YDQvtCy0LXRgNGP0LXRgiDRg9GB0YLQsNC90L7QstC70LXQvdC90YvQtSDQsiDRgdC40YHRgtC10LzQtSDQv9Cw0LrQtdGC0Ysg0L3QsCDQv9GA0LXQtNC80LXRgiDRgdCx0L7RgNC+0YfQvdGL0YUgIgorItC30LDQstC40YHQuNC80L7RgdGC0LXQuSDQuCDQutC+0L3RhNC70LjQutGC0L7Qsiwg0L7Qv9C40YHQsNC90L3Ri9GFINCyINGE0LDQudC70LUgY29udHJvbC4g0JXRgdC70Lgg0LrQsNC60LjQtS3RgtC+INC40Lcg0Y3RgtC40YUgIgorItC30LDQstC40YHQuNC80L7RgdGC0LXQuSDQuNC70Lgg0LrQvtC90YTQu9C40LrRgtC+0LIg0L3QtSDRg9C00L7QstC70LXRgtCy0L7RgNC10L3Riywg0YLQviDQvtCxINGN0YLQvtC8INGB0L7QvtCx0YnQsNC10YLRgdGPINC4INGA0LDQsdC+0YLQsCAiCisi0LfQsNCy0LXRgNGI0LDQtdGC0YHRjyDRgSDQvdC10L3Rg9C70LXQstGL0Lwg0LrQvtC00L7QvCDQstC+0LfQstGA0LDRgtCwLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1jaGVja2J1aWxkZGVwcy4xOjE3CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJCeSBkZWZhdWx0LCBJPGRlYmlhbi9jb250cm9sPiBpcyByZWFkLCBidXQgYW4gYWx0ZXJuYXRlIGNvbnRyb2wgZmlsZW5hbWUgIgorI3wgIm1heSBiZSBzcGVjaWZpZWQgb24gdGhlIGNvbW1hbmQgbGluZS4iCittc2dpZCAiIgorIkJ5IGRlZmF1bHQsIEI8ZGViaWFuL2NvbnRyb2w+IGlzIHJlYWQsIGJ1dCBhbiBhbHRlcm5hdGUgY29udHJvbCBmaWxlbmFtZSBtYXkgIgorImJlIHNwZWNpZmllZCBvbiB0aGUgY29tbWFuZCBsaW5lLiIKK21zZ3N0ciAiIgorItCf0L4g0YPQvNC+0LvRh9Cw0L3QuNGOINGH0LjRgtCw0LXRgtGB0Y8gSTxkZWJpYW4vY29udHJvbD4sINC90L4g0LIg0LrQvtC80LDQvdC00L3QvtC5INGB0YLRgNC+0LrQtSDQvNC+0LbQvdC+INC30LDQtNCw0YLRjCAiCisi0LTRgNGD0LPQvtC1INC40LzRjyDRhNCw0LnQu9CwIGNvbnRyb2wuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6MjcKK21zZ2lkICIiCisiSWdub3JlIEk8QnVpbGQtRGVwZW5kcy1JbmRlcD4gbGluZXMuIFVzZSB3aGVuIG5vIGFyY2gtaW5kZXAgcGFja2FnZXMgd2lsbCBiZSAiCisiYnVpbHQuIgorbXNnc3RyICIiCisi0JjQs9C90L7RgNC40YDQvtCy0LDRgtGMINGB0YLRgNC+0LrQuCBJPEJ1aWxkLURlcGVuZHMtSW5kZXA+LiDQmNGB0L/QvtC70YzQt9GD0LXRgtGB0Y8sINC10YHQu9C4INC/0LDQutC10YLRiywgIgorItC90LXQt9Cw0LLQuNGB0Y/RidC40LUg0L7RgiDQsNGA0YXQuNGC0LXQutGC0YPRgNGLINC90LUg0YHQvtCx0LjRgNCw0Y7RgtGB0Y8uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1jaGVja2J1aWxkZGVwcy4xOjI3CisjLCBuby13cmFwCittc2dpZCAiQjwtZCA+STxidWlsZC1kZXBlbmRzLXN0cmluZz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctY2hlY2tidWlsZGRlcHMuMToyOQorIywgbm8td3JhcAorbXNnaWQgIkI8LWMgPkk8YnVpbGQtY29uZmxpY3RzLXN0cmluZz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1jaGVja2J1aWxkZGVwcy4xOjMzCittc2dpZCAiIgorIlVzZSB0aGUgZ2l2ZW4gYnVpbGQgZGVwZW5kZW5jaWVzL2NvbmZsaWN0cyBpbnN0ZWFkIG9mIHRob3NlIGNvbnRhaW5lZCBpbiB0aGUgIgorIkk8ZGViaWFuL2NvbnRyb2w+IGZpbGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctY2hlY2tidWlsZGRlcHMuMTo0MgorIywgZnV6enkKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAwMSBKb2V5IEhlc3MiCittc2dzdHIgIkNvcHlyaWdodCAyMDAxIEpvZXkgSGVzcyIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctZGlzdGFkZGZpbGUuMToxCisjLCBuby13cmFwCittc2dpZCAiZHBrZy1kaXN0YWRkZmlsZSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpc3RhZGRmaWxlLjE6NAorbXNnaWQgImRwa2ctZGlzdGFkZGZpbGUgLSBhZGQgZW50cmllcyB0byBkZWJpYW4vZmlsZXMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXN0YWRkZmlsZS4xOjgKKyMsIGZ1enp5Cittc2dpZCAiQjxkcGtnLWRpc3RhZGRmaWxlPiBbSTxvcHRpb24+Li4uXUk8IGZpbGVuYW1lIHNlY3Rpb24gcHJpb3JpdHk+IgorbXNnc3RyICJCPGRwa2c+IFtJPNC/0LDRgNCw0LzQtdGC0YDRiz5dIEk80LTQtdC50YHRgtCy0LjQtT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGlzdGFkZGZpbGUuMToxMworbXNnaWQgIkI8ZHBrZy1kaXN0YWRkZmlsZT4gYWRkcyBhbiBlbnRyeSBmb3IgYSBuYW1lZCBmaWxlIHRvIEI8ZGViaWFuL2ZpbGVzPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXN0YWRkZmlsZS4xOjE4Cittc2dpZCAiIgorIkl0IHRha2VzIHRocmVlIG5vbi1vcHRpb24gYXJndW1lbnRzLCB0aGUgZmlsZW5hbWUgYW5kIHRoZSBzZWN0aW9uIGFuZCAiCisicHJpb3JpdHkgZm9yIHRoZSBCPC5jaGFuZ2VzPiBmaWxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpc3RhZGRmaWxlLjE6MjYKK21zZ2lkICIiCisiVGhlIGZpbGVuYW1lIHNob3VsZCBiZSBzcGVjaWZpZWQgcmVsYXRpdmUgdG8gdGhlIGRpcmVjdG9yeSB3aGVyZSBCPGRwa2ctIgorImdlbmNoYW5nZXM+IHdpbGwgZXhwZWN0IHRvIGZpbmQgdGhlIGZpbGVzLCB1c3VhbGx5IEI8Li4+LCByYXRoZXIgdGhhbiBiZWluZyAiCisiYSBwYXRobmFtZSByZWxhdGl2ZSB0byB0aGUgY3VycmVudCBkaXJlY3Rvcnkgd2hlbiBCPGRwa2ctZGlzdGFkZGZpbGU+IGlzIHJ1bi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGlzdGFkZGZpbGUuMToyOCBkcGtnLWdlbmNoYW5nZXMuMToxMDMgZHBrZy1nZW5jb250cm9sLjE6NjkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1mPkk8ZmlsZXNsaXN0ZmlsZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXN0YWRkZmlsZS4xOjMyIGRwa2ctZ2VuY29udHJvbC4xOjczCittc2dpZCAiIgorIlJlYWQgb3Igd3JpdGUgdGhlIGxpc3Qgb2YgZmlsZXMgdG8gYmUgdXBsb2FkZWQgaGVyZSwgcmF0aGVyIHRoYW4gdXNpbmcgIgorIkI8ZGViaWFuL2ZpbGVzPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGlzdGFkZGZpbGUuMTo0MCBkcGtnLWdlbmNoYW5nZXMuMToxMzkgZHBrZy1nZW5jb250cm9sLjE6MTM0CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8ZGViaWFuL2ZpbGVzPiIKK21zZ3N0ciAiQjxjb25maWctZmlsZXM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpc3RhZGRmaWxlLjE6NDYKK21zZ2lkICIiCisiVGhlIGxpc3Qgb2YgZ2VuZXJhdGVkIGZpbGVzIHdoaWNoIGFyZSBwYXJ0IG9mIHRoZSB1cGxvYWQgYmVpbmcgcHJlcGFyZWQuICAiCisiQjxkcGtnLWRpc3RhZGRmaWxlPiBjYW4gYmUgdXNlZCB0byBhZGQgYWRkaXRpb25hbCBmaWxlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctZGViLjE6MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJkcGtnLWRlYiIKK21zZ3N0ciAiZHBrZyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMTo0Cittc2dpZCAiZHBrZy1kZWIgLSBEZWJpYW4gcGFja2FnZSBhcmNoaXZlICguZGViKSBtYW5pcHVsYXRpb24gdG9vbCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjgKKyMsIGZ1enp5Cittc2dpZCAiQjxkcGtnLWRlYj4gW0k8b3B0aW9uPi4uLl0gSTxjb21tYW5kPiIKK21zZ3N0ciAiQjxkcGtnPiBbSTzQv9Cw0YDQsNC80LXRgtGA0Ys+XSBJPNC00LXQudGB0YLQstC40LU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjEyCisjLCBmdXp6eQorbXNnaWQgIiIKKyJCPGRwa2ctZGViPiBwYWNrcywgdW5wYWNrcyBhbmQgcHJvdmlkZXMgaW5mb3JtYXRpb24gYWJvdXQgRGViaWFuIGFyY2hpdmVzLiIKK21zZ3N0ciAiIgorItCh0LzQvtGC0YDQuNGC0LUgQjxkcGtnLWRlYj4oMSkg0LTQu9GPINCx0L7Qu9C10LUg0L/QvtC00YDQvtCx0L3QvtC5INC40L3RhNC+0YDQvNCw0YbQuNC4INC+INC90LjQttC10YHQu9C10LTRg9GO0YnQuNGFICIKKyLQtNC10LnRgdGC0LLQuNGP0YUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjE2Cittc2dpZCAiVXNlIEI8ZHBrZz4gdG8gaW5zdGFsbCBhbmQgcmVtb3ZlIHBhY2thZ2VzIGZyb20geW91ciBzeXN0ZW0uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MjYKK21zZ2lkICIiCisiWW91IGNhbiBhbHNvIGludm9rZSBCPGRwa2ctZGViPiBieSBjYWxsaW5nIEI8ZHBrZz4gd2l0aCB3aGF0ZXZlciBvcHRpb25zIHlvdSAiCisid2FudCB0byBwYXNzIHRvIEI8ZHBrZy1kZWI+LiBCPGRwa2c+IHdpbGwgc3BvdCB0aGF0IHlvdSB3YW50ZWQgQjxkcGtnLWRlYj4gIgorImFuZCBydW4gaXQgZm9yIHlvdS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MjgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1iPiwgQjwtLWJ1aWxkPiBJPGRpcmVjdG9yeT4gW0k8YXJjaGl2ZT58STxkaXJlY3Rvcnk+XSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjQwCittc2dpZCAiIgorIkNyZWF0ZXMgYSBkZWJpYW4gYXJjaGl2ZSBmcm9tIHRoZSBmaWxlc3lzdGVtIHRyZWUgc3RvcmVkIGluIEk8ZGlyZWN0b3J5Pi4gIgorIkk8ZGlyZWN0b3J5PiBtdXN0IGhhdmUgYSBCPERFQklBTj4gc3ViZGlyZWN0b3J5LCB3aGljaCBjb250YWlucyB0aGUgY29udHJvbCAiCisiaW5mb3JtYXRpb24gZmlsZXMgc3VjaCBhcyB0aGUgY29udHJvbCBmaWxlIGl0c2VsZi4gVGhpcyBkaXJlY3Rvcnkgd2lsbCAiCisiSTxub3Q+IGFwcGVhciBpbiB0aGUgYmluYXJ5IHBhY2thZ2UncyBmaWxlc3lzdGVtIGFyY2hpdmUsIGJ1dCBpbnN0ZWFkIHRoZSAiCisiZmlsZXMgaW4gaXQgd2lsbCBiZSBwdXQgaW4gdGhlIGJpbmFyeSBwYWNrYWdlJ3MgY29udHJvbCBpbmZvcm1hdGlvbiBhcmVhLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjUyCittc2dpZCAiIgorIlVubGVzcyB5b3Ugc3BlY2lmeSBCPC0tbm9jaGVjaz4sIEI8ZHBrZy1kZWI+IHdpbGwgcmVhZCBCPERFQklBTi9jb250cm9sPiBhbmQgIgorInBhcnNlIGl0LiBJdCB3aWxsIGNoZWNrIGl0IGZvciBzeW50YXggZXJyb3JzIGFuZCBvdGhlciBwcm9ibGVtcywgYW5kIGRpc3BsYXkgIgorInRoZSBuYW1lIG9mIHRoZSBiaW5hcnkgcGFja2FnZSBiZWluZyBidWlsdC4gIEI8ZHBrZy1kZWI+IHdpbGwgYWxzbyBjaGVjayB0aGUgIgorInBlcm1pc3Npb25zIG9mIHRoZSBtYWludGFpbmVyIHNjcmlwdHMgYW5kIG90aGVyIGZpbGVzIGZvdW5kIGluIHRoZSBCPERFQklBTj4gIgorImNvbnRyb2wgaW5mb3JtYXRpb24gZGlyZWN0b3J5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjU5Cittc2dpZCAiIgorIklmIG5vIEk8YXJjaGl2ZT4gaXMgc3BlY2lmaWVkIHRoZW4gQjxkcGtnLWRlYj4gd2lsbCB3cml0ZSB0aGUgcGFja2FnZSBpbnRvICIKKyJ0aGUgZmlsZSBJPGRpcmVjdG9yeT5CPC5kZWI+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjYxCittc2dpZCAiSWYgdGhlIGFyY2hpdmUgdG8gYmUgY3JlYXRlZCBhbHJlYWR5IGV4aXN0cyBpdCB3aWxsIGJlIG92ZXJ3cml0dGVuLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjc3Cittc2dpZCAiIgorIklmIHRoZSBzZWNvbmQgYXJndW1lbnQgaXMgYSBkaXJlY3RvcnkgdGhlbiBCPGRwa2ctZGViPiB3aWxsIHdyaXRlIHRvIHRoZSAiCisiZmlsZSBJPHBhY2thZ2U+QjxfPkk8dmVyc2lvbj5CPF8+STxhcmNoPkI8LmRlYj4sIG9yICIKKyJJPHBhY2thZ2U+QjxfPkk8dmVyc2lvbj5CPC5kZWI+IGlmIG5vIEI8QXJjaGl0ZWN0dXJlPiBmaWVsZCBpcyBwcmVzZW50IGluICIKKyJ0aGUgcGFja2FnZSBjb250cm9sIGZpbGUuIFdoZW4gYSB0YXJnZXQgZGlyZWN0b3J5IGlzIHNwZWNpZmllZCwgcmF0aGVyIHRoYW4gIgorImEgZmlsZSwgdGhlIEI8LS1ub2NoZWNrPiBvcHRpb24gbWF5IG5vdCBiZSB1c2VkIChzaW5jZSBCPGRwa2ctZGViPiBuZWVkcyB0byAiCisicmVhZCBhbmQgcGFyc2UgdGhlIHBhY2thZ2UgY29udHJvbCBmaWxlIHRvIGRldGVybWluZSB3aGljaCBmaWxlbmFtZSB0byB1c2UpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMTo3NworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1JPiwgQjwtLWluZm8+IEk8YXJjaGl2ZT4gW0k8Y29udHJvbC1maWxlLW5hbWU+Li4uXSIKK21zZ3N0ciAiQjxkcGtnLWNoZWNrYnVpbGRkZXBzPiAtQjwtQj4gW0k80YTQsNC50LsgY29udHJvbD5dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjgwCisjLCBmdXp6eQorbXNnaWQgIlByb3ZpZGVzIGluZm9ybWF0aW9uIGFib3V0IGEgYmluYXJ5IHBhY2thZ2UgYXJjaGl2ZS4iCittc2dzdHIgItCe0YfQuNGB0YLQuNGC0Ywg0LjQvNC10Y7RidGD0Y7RgdGPINC40L3RhNC+0YDQvNCw0YbQuNGOINC+INGC0L7QvCwg0LrQsNC60LjQtSDQv9Cw0LrQtdGC0Ysg0LTQvtGB0YLRg9C/0L3Riy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6ODUKK21zZ2lkICIiCisiSWYgbm8gSTxjb250cm9sLWZpbGUtbmFtZT5zIGFyZSBzcGVjaWZpZWQgdGhlbiBpdCB3aWxsIHByaW50IGEgc3VtbWFyeSBvZiAiCisidGhlIGNvbnRlbnRzIG9mIHRoZSBwYWNrYWdlIGFzIHdlbGwgYXMgaXRzIGNvbnRyb2wgZmlsZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMTo5MworbXNnaWQgIiIKKyJJZiBhbnkgSTxjb250cm9sLWZpbGUtbmFtZT5zIGFyZSBzcGVjaWZpZWQgdGhlbiBCPGRwa2ctZGViPiB3aWxsIHByaW50IHRoZW0gIgorImluIHRoZSBvcmRlciB0aGV5IHdlcmUgc3BlY2lmaWVkOyBpZiBhbnkgb2YgdGhlIGNvbXBvbmVudHMgd2VyZW4ndCBwcmVzZW50ICIKKyJpdCB3aWxsIHByaW50IGFuIGVycm9yIG1lc3NhZ2UgdG8gc3RkZXJyIGFib3V0IGVhY2ggb25lIGFuZCBleGl0IHdpdGggc3RhdHVzICIKKyIyLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMTo5MworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1XPiwgQjwtLXNob3c+IEk8YXJjaGl2ZT4iCittc2dzdHIgIkI8LWQ+fEI8LS1jaGRpcj4gSTzQv9GD0YLRjD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTAwCittc2dpZCAiIgorIlByb3ZpZGVzIGluZm9ybWF0aW9uIGFib3V0IGEgYmluYXJ5IHBhY2thZ2UgYXJjaGl2ZSBpbiB0aGUgZm9ybWF0IHNwZWNpZmllZCAiCisiYnkgdGhlIEI8LS1zaG93Zm9ybWF0PiBhcmd1bWVudC4gVGhlIGRlZmF1bHQgZm9ybWF0IGRpc3BsYXlzIHRoZSBwYWNrYWdlJ3MgIgorIm5hbWUgYW5kIHZlcnNpb24gb24gb25lIGxpbmUsIHNlcGFyYXRlZCBieSBhIHRhYnVsYXRvci4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MTAwCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LWY+LCBCPC0tZmllbGQ+IEk8YXJjaGl2ZT4gW0k8Y29udHJvbC1maWVsZC1uYW1lPi4uLl0iCittc2dzdHIgIkI8ZHBrZy1jaGVja2J1aWxkZGVwcz4gLUI8LUI+IFtJPNGE0LDQudC7IGNvbnRyb2w+XSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxMDMKKyMsIGZ1enp5Cittc2dpZCAiRXh0cmFjdHMgY29udHJvbCBmaWxlIGluZm9ybWF0aW9uIGZyb20gYSBiaW5hcnkgcGFja2FnZSBhcmNoaXZlLiIKK21zZ3N0ciAiQjwxLj4g0JjQt9Cy0LvQtdGH0LXQvdC40LUg0YPQv9GA0LDQstC70Y/RjtGJ0LjRhSDRhNCw0LnQu9C+0LIg0L3QvtCy0L7Qs9C+INC/0LDQutC10YLQsC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTA3Cittc2dpZCAiIgorIklmIG5vIEI8Y29udHJvbC1maWxlLWZpZWxkPnMgYXJlIHNwZWNpZmllZCB0aGVuIGl0IHdpbGwgcHJpbnQgdGhlIHdob2xlICIKKyJjb250cm9sIGZpbGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTE2Cittc2dpZCAiIgorIklmIGFueSBhcmUgc3BlY2lmaWVkIHRoZW4gQjxkcGtnLWRlYj4gd2lsbCBwcmludCB0aGVpciBjb250ZW50cywgaW4gdGhlICIKKyJvcmRlciBpbiB3aGljaCB0aGV5IGFwcGVhciBpbiB0aGUgY29udHJvbCBmaWxlLiBJZiBtb3JlIHRoYW4gb25lIEI8Y29udHJvbC0iCisiZmlsZS1maWVsZD4gaXMgc3BlY2lmaWVkIHRoZW4gQjxkcGtnLWRlYj4gd2lsbCBwcmVjZWRlIGVhY2ggd2l0aCBpdHMgZmllbGQgIgorIm5hbWUgKGFuZCBhIGNvbG9uIGFuZCBzcGFjZSkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTE4Cittc2dpZCAiTm8gZXJyb3JzIGFyZSByZXBvcnRlZCBmb3IgZmllbGRzIHJlcXVlc3RlZCBidXQgbm90IGZvdW5kLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToxMTgKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtYz4sIEI8LS1jb250ZW50cz4gSTxhcmNoaXZlPiIKK21zZ3N0ciAiQjwtLW5ldz4gfCBCPC0tb2xkPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxMjQKK21zZ2lkICIiCisiTGlzdHMgdGhlIGNvbnRlbnRzIG9mIHRoZSBmaWxlc3lzdGVtIHRyZWUgYXJjaGl2ZSBwb3J0aW9uIG9mIHRoZSBwYWNrYWdlICIKKyJhcmNoaXZlLiBJdCBpcyBjdXJyZW50bHkgcHJvZHVjZWQgaW4gdGhlIGZvcm1hdCBnZW5lcmF0ZWQgYnkgQjx0YXI+J3MgIgorInZlcmJvc2UgbGlzdGluZy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MTI0CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LXg+LCBCPC0tZXh0cmFjdD4gSTxhcmNoaXZlIGRpcmVjdG9yeT4iCittc2dzdHIgIkI8LXg+fEI8LS1leGVjPiBJPNC40YHQv9C+0LvQvdGP0LXQvNGL0Llf0YTQsNC50Ls+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjEyOAorbXNnaWQgIiIKKyJFeHRyYWN0cyB0aGUgZmlsZXN5c3RlbSB0cmVlIGZyb20gYSBwYWNrYWdlIGFyY2hpdmUgaW50byB0aGUgc3BlY2lmaWVkICIKKyJkaXJlY3RvcnkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTM0Cittc2dpZCAiIgorIk5vdGUgdGhhdCBleHRyYWN0aW5nIGEgcGFja2FnZSB0byB0aGUgcm9vdCBkaXJlY3Rvcnkgd2lsbCBJPG5vdD4gcmVzdWx0IGluIGEgIgorImNvcnJlY3QgaW5zdGFsbGF0aW9uISBVc2UgQjxkcGtnPiB0byBpbnN0YWxsIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjEzOAorbXNnaWQgIiIKKyJJPGRpcmVjdG9yeT4gKGJ1dCBub3QgaXRzIHBhcmVudHMpIHdpbGwgYmUgY3JlYXRlZCBpZiBuZWNlc3NhcnksIGFuZCBpdHMgIgorInBlcm1pc3Npb25zIG1vZGlmaWVkIHRvIG1hdGNoIHRoZSBjb250ZW50cyBvZiB0aGUgcGFja2FnZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MTM4CisjLCBuby13cmFwCittc2dpZCAiQjwtWD4sIEI8LS12ZXh0cmFjdD4gSTxhcmNoaXZlIGRpcmVjdG9yeT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxNDUKK21zZ2lkICIiCisiSXMgbGlrZSBCPC0tZXh0cmFjdD4gKEI8LXg+KSAgd2l0aCBCPC0tdmVyYm9zZT4gKEI8LXY+KSAgd2hpY2ggcHJpbnRzIGEgIgorImxpc3Rpbmcgb2YgdGhlIGZpbGVzIGV4dHJhY3RlZCBhcyBpdCBnb2VzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToxNDUKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtUj4sIEI8LS1yYXctZXh0cmFjdD4gSTxhcmNoaXZlIGRpcmVjdG9yeT4iCittc2dzdHIgIkI8LXg+fEI8LS1leGVjPiBJPNC40YHQv9C+0LvQvdGP0LXQvNGL0Llf0YTQsNC50Ls+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjE1MAorbXNnaWQgIiIKKyJFeHRyYWN0cyB0aGUgZmlsZXN5c3RlbSB0cmVlIGZyb20gYSBwYWNrYWdlIGFyY2hpdmUgaW50byBhIHNwZWNpZmllZCAiCisiZGlyZWN0b3J5LCBhbmQgdGhlIGNvbnRyb2wgaW5mb3JtYXRpb24gZmlsZXMgaW50byBhIERFQklBTiBzdWJkaXJlY3Rvcnkgb2YgIgorInRoZSBzcGVjaWZpZWQgZGlyZWN0b3J5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjE1MiBkcGtnLWRlYi4xOjE3MgorbXNnaWQgIiIKKyJUaGUgdGFyZ2V0IGRpcmVjdG9yeSAoYnV0IG5vdCBpdHMgcGFyZW50cykgd2lsbCBiZSBjcmVhdGVkIGlmIG5lY2Vzc2FyeS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MTUyCisjLCBuby13cmFwCittc2dpZCAiQjwtLWZzeXMtdGFyZmlsZT4gSTxhcmNoaXZlPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjE2MQorbXNnaWQgIiIKKyJFeHRyYWN0cyB0aGUgZmlsZXN5c3RlbSB0cmVlIGRhdGEgZnJvbSBhIGJpbmFyeSBwYWNrYWdlIGFuZCBzZW5kcyBpdCB0byAiCisic3RhbmRhcmQgb3V0cHV0IGluIEI8dGFyPiBmb3JtYXQuIFRvZ2V0aGVyIHdpdGggQjx0YXI+KDEpICB0aGlzIGNhbiBiZSB1c2VkICIKKyJ0byBleHRyYWN0IGEgcGFydGljdWxhciBmaWxlIGZyb20gYSBwYWNrYWdlIGFyY2hpdmUuICBUaGUgaW5wdXQgYXJjaGl2ZSB3aWxsICIKKyJhbHdheXMgYmUgcHJvY2Vzc2VkIHNlcXVlbnRpYWxseS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MTYxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LWU+LCBCPC0tY29udHJvbD4gSTxhcmNoaXZlPiBbSTxkaXJlY3Rvcnk+XSIKK21zZ3N0ciAiQjwteD58QjwtLWV4ZWM+IEk80LjRgdC/0L7Qu9C90Y/QtdC80YvQuV/RhNCw0LnQuz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTY1Cittc2dpZCAiIgorIkV4dHJhY3RzIHRoZSBjb250cm9sIGluZm9ybWF0aW9uIGZpbGVzIGZyb20gYSBwYWNrYWdlIGFyY2hpdmUgaW50byB0aGUgIgorInNwZWNpZmllZCBkaXJlY3RvcnkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTY5Cittc2dpZCAiIgorIklmIG5vIGRpcmVjdG9yeSBpcyBzcGVjaWZpZWQgdGhlbiBhIHN1YmRpcmVjdG9yeSBCPERFQklBTj4gaW4gdGhlIGN1cnJlbnQgIgorImRpcmVjdG9yeSBpcyB1c2VkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToxODAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tc2hvd2Zvcm1hdD0+STxmb3JtYXQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTg1IGRwa2ctcXVlcnkuMToxMjcKK21zZ2lkICIiCisiVGhpcyBvcHRpb24gaXMgdXNlZCB0byBzcGVjaWZ5IHRoZSBmb3JtYXQgb2YgdGhlIG91dHB1dCBCPC0tc2hvdz4gd2lsbCAiCisicHJvZHVjZS4gVGhlIGZvcm1hdCBpcyBhIHN0cmluZyB0aGF0IHdpbGwgYmUgb3V0cHV0IGZvciBlYWNoIHBhY2thZ2UgbGlzdGVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjE5NAorbXNnaWQgIiIKKyJUaGUgc3RyaW5nIG1heSByZWZlcmVuY2UgYW55IHN0YXR1cyBmaWVsZCB1c2luZyB0aGUgXCIke0k8ZmllbGQtbmFtZT59XCIgIgorImZvcm0sIGEgbGlzdCBvZiB0aGUgdmFsaWQgZmllbGRzIGNhbiBiZSBlYXNpbHkgcHJvZHVjZWQgdXNpbmcgQjwtST4gb24gdGhlICIKKyJzYW1lIHBhY2thZ2UuIEEgY29tcGxldGUgZXhwbGFuYXRpb24gb2YgdGhlIGZvcm1hdHRpbmcgb3B0aW9ucyAoaW5jbHVkaW5nICIKKyJlc2NhcGUgc2VxdWVuY2VzIGFuZCBmaWVsZCB0YWJiaW5nKSBjYW4gYmUgZm91bmQgaW4gdGhlIGV4cGxhbmF0aW9uIG9mIHRoZSAiCisiQjwtLXNob3dmb3JtYXQ+IG9wdGlvbiBpbiBCPGRwa2ctcXVlcnk+KDEpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjE5NgorbXNnaWQgIlRoZSBkZWZhdWx0IGZvciB0aGlzIGZpZWxkIGlzIFwiJHtQYWNrYWdlfVxcZXQke1ZlcnNpb259XFxlblwiLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToxOTYKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtej5JPGNvbXByZXNzLWxldmVsPiIKK21zZ3N0ciAiQjwtdD58QjwtLXRlc3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjIwMAorbXNnaWQgIiIKKyJTcGVjaWZ5IHdoaWNoIGNvbXByZXNzaW9uIGxldmVsIHRvIHVzZSBvbiB0aGUgY29tcHJlc3NvciBiYWNrZW5kLCB3aGVuICIKKyJidWlsZGluZyBhIHBhY2thZ2UgKGRlZmF1bHQgaXMgOSBmb3IgZ3ppcCBhbmQgYnppcDIsIDYgZm9yIHh6IGFuZCBsem1hKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MjAwCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LVo+STxjb21wcmVzcy10eXBlPiIKK21zZ3N0ciAiQjwtdD58QjwtLXRlc3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjIwNQorbXNnaWQgIiIKKyJTcGVjaWZ5IHdoaWNoIGNvbXByZXNzaW9uIHR5cGUgdG8gdXNlIHdoZW4gYnVpbGRpbmcgYSBwYWNrYWdlLiBBbGxvd2VkICIKKyJ2YWx1ZXMgYXJlIEk8Z3ppcD4sIEk8eHo+LCBJPGJ6aXAyPiwgSTxsem1hPiwgYW5kIEk8bm9uZT4gKGRlZmF1bHQgaXMgIgorIkk8Z3ppcD4pLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToyMDUKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLW5ldz4iCittc2dzdHIgIkI8LS1ub2NoZWNrPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToyMTAKK21zZ2lkICIiCisiRW5zdXJlcyB0aGF0IEI8ZHBrZy1kZWI+IGJ1aWxkcyBhIGBuZXcnIGZvcm1hdCBhcmNoaXZlLiBUaGlzIGlzIHRoZSBkZWZhdWx0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToyMTAKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLW9sZD4iCittc2dzdHIgIkI8aG9sZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MjE4Cittc2dpZCAiIgorIkZvcmNlcyBCPGRwa2ctZGViPiB0byBidWlsZCBhbiBgb2xkJyBmb3JtYXQgYXJjaGl2ZS4gVGhpcyBvbGQgYXJjaGl2ZSBmb3JtYXQgIgorImlzIGxlc3MgZWFzaWx5IHBhcnNlZCBieSBub24tRGViaWFuIHRvb2xzIGFuZCBpcyBub3cgb2Jzb2xldGU7IGl0cyBvbmx5IHVzZSAiCisiaXMgd2hlbiBidWlsZGluZyBwYWNrYWdlcyB0byBiZSBwYXJzZWQgYnkgdmVyc2lvbnMgb2YgZHBrZyBvbGRlciB0aGFuICIKKyIwLjkzLjc2IChTZXB0ZW1iZXIgMTk5NSksIHdoaWNoIHdhcyByZWxlYXNlZCBhcyBpMzg2IGEub3V0IG9ubHkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRlYi4xOjIxOAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1ub2NoZWNrPiIKK21zZ3N0ciAiQjwtLW5vY2hlY2s+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjIyNAorbXNnaWQgIiIKKyJJbmhpYml0cyBCPGRwa2ctZGViIC0tYnVpbGQ+J3MgdXN1YWwgY2hlY2tzIG9uIHRoZSBwcm9wb3NlZCBjb250ZW50cyBvZiBhbiAiCisiYXJjaGl2ZS4gWW91IGNhbiBidWlsZCBhbnkgYXJjaGl2ZSB5b3Ugd2FudCwgbm8gbWF0dGVyIGhvdyBicm9rZW4sIHRoaXMgd2F5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToyMjQgc3RhcnQtc3RvcC1kYWVtb24uODoyNTUKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtdj4sIEI8LS12ZXJib3NlPiIKK21zZ3N0ciAiQjwtdj58QjwtLXZlcmJvc2U+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjIyOAorbXNnaWQgIiIKKyJFbmFibGVzIHZlcmJvc2Ugb3V0cHV0LiBUaGlzIGN1cnJlbnRseSBvbmx5IGFmZmVjdHMgQjwtLWV4dHJhY3Q+IG1ha2luZyBpdCAiCisiYmVoYXZlIGxpa2UgQjwtLXZleHRyYWN0Pi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MjI4CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LUQ+LCBCPC0tZGVidWc+IgorbXNnc3RyICJCPC0tbm8tZGVic2lnPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToyMzEKK21zZ2lkICJFbmFibGVzIGRlYnVnZ2luZyBvdXRwdXQuIFRoaXMgaXMgbm90IHZlcnkgaW50ZXJlc3RpbmcuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MjM3Cittc2dpZCAiIgorIklmIHNldCwgQjxkcGtnLWRlYj4gd2lsbCB1c2UgaXQgYXMgdGhlIGRpcmVjdG9yeSBpbiB3aGljaCB0byBjcmVhdGUgIgorInRlbXBvcmFyeSBmaWxlcyBhbmQgZGlyZWN0b3JpZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MjQzCittc2dpZCAiIgorIkI8ZHBrZy1kZWIgLUk+IEk8cGFja2FnZTE+QjwuZGViPiBJPHBhY2thZ2UyPkI8LmRlYj4gZG9lcyB0aGUgd3JvbmcgdGhpbmcuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MjUxCittc2dpZCAiIgorIlRoZXJlIGlzIG5vIGF1dGhlbnRpY2F0aW9uIG9uIEI8LmRlYj4gZmlsZXM7IGluIGZhY3QsIHRoZXJlIGlzbid0IGV2ZW4gYSAiCisic3RyYWlnaHRmb3J3YXJkIGNoZWNrc3VtLiAgKEhpZ2hlciBsZXZlbCB0b29scyBsaWtlIEFQVCBzdXBwb3J0ICIKKyJhdXRoZW50aWNhdGluZyBCPC5kZWI+IHBhY2thZ2VzIHJldHJpZXZlZCBmcm9tIGEgZ2l2ZW4gcmVwb3NpdG9yeSwgYW5kIG1vc3QgIgorInBhY2thZ2VzIG5vd2FkYXlzIHByb3ZpZGUgYW4gbWQ1c3VtIGNvbnRyb2wgZmlsZSBnZW5lcmF0ZWQgYnkgZGViaWFuL3J1bGVzLiAiCisiVGhvdWdoIHRoaXMgaXMgbm90IGRpcmVjdGx5IHN1cHBvcnRlZCBieSB0aGUgbG93ZXIgbGV2ZWwgdG9vbHMuKSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjI1OAorbXNnaWQgIiIKKyJEbyBub3QgYXR0ZW1wdCB0byB1c2UganVzdCBCPGRwa2ctZGViPiB0byBpbnN0YWxsIHNvZnR3YXJlISBZb3UgbXVzdCB1c2UgIgorIkI8ZHBrZz4gcHJvcGVyIHRvIGVuc3VyZSB0aGF0IGFsbCB0aGUgZmlsZXMgYXJlIGNvcnJlY3RseSBwbGFjZWQgYW5kIHRoZSAiCisicGFja2FnZSdzIHNjcmlwdHMgcnVuIGFuZCBpdHMgc3RhdHVzIGFuZCBjb250ZW50cyByZWNvcmRlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToyNjQKKyMsIGZ1enp5Cittc2dpZCAiQjxkZWI+KDUpLCBCPGRlYi1jb250cm9sPig1KSwgQjxkcGtnPigxKSwgQjxkc2VsZWN0PigxKS4iCittc2dzdHIgIkI8ZGViPig1KSwgQjxkcGtnPigxKSwgQjxkcGtnLWRlYj4oMSkuIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1kaXZlcnQuODoxCisjLCBuby13cmFwCittc2dpZCAiZHBrZy1kaXZlcnQiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo0Cittc2dpZCAiZHBrZy1kaXZlcnQgLSBvdmVycmlkZSBhIHBhY2thZ2UncyB2ZXJzaW9uIG9mIGEgZmlsZSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjkKKyMsIGZ1enp5Cittc2dpZCAiQjxkcGtnLWRpdmVydD4gW0k8b3B0aW9uPi4uLl0gSTxjb21tYW5kPiIKK21zZ3N0ciAiQjxkcGtnPiBbSTzQv9Cw0YDQsNC80LXRgtGA0Ys+XSBJPNC00LXQudGB0YLQstC40LU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjEzCittc2dpZCAiIgorIkI8ZHBrZy1kaXZlcnQ+IGlzIHRoZSB1dGlsaXR5IHVzZWQgdG8gc2V0IHVwIGFuZCB1cGRhdGUgdGhlIGxpc3Qgb2YgIgorImRpdmVyc2lvbnMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6MjMKK21zZ2lkICIiCisiRmlsZSBJPGRpdmVyc2lvbnM+IGFyZSBhIHdheSBvZiBmb3JjaW5nIEI8ZHBrZz4oMSkgIG5vdCB0byBpbnN0YWxsIGEgZmlsZSAiCisiaW50byBpdHMgbG9jYXRpb24sIGJ1dCB0byBhIEk8ZGl2ZXJ0ZWQ+IGxvY2F0aW9uLiBEaXZlcnNpb25zIGNhbiBiZSB1c2VkICIKKyJ0aHJvdWdoIHRoZSBEZWJpYW4gcGFja2FnZSBzY3JpcHRzIHRvIG1vdmUgYSBmaWxlIGF3YXkgd2hlbiBpdCBjYXVzZXMgYSAiCisiY29uZmxpY3QuIFN5c3RlbSBhZG1pbmlzdHJhdG9ycyBjYW4gYWxzbyB1c2UgaXQgdG8gb3ZlcnJpZGUgc29tZSBwYWNrYWdlJ3MgIgorImNvbmZpZ3VyYXRpb24gZmlsZSwgb3Igd2hlbmV2ZXIgc29tZSBmaWxlcyAod2hpY2ggYXJlbid0IG1hcmtlZCBhcyAiCisiJ2NvbmZmaWxlcycpIG5lZWQgdG8gYmUgcHJlc2VydmVkIGJ5IGRwa2csIHdoZW4gaW5zdGFsbGluZyBhIG5ld2VyIHZlcnNpb24gIgorIm9mIGEgcGFja2FnZSB3aGljaCBjb250YWlucyB0aG9zZSBmaWxlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGl2ZXJ0Ljg6MjUKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiW0I8LS1hZGQ+XSBJPGZpbGU+IgorbXNnc3RyICJCPC0tbG9nPT5JPNC40LzRjyDRhNCw0LnQu9CwPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODoyOAorbXNnaWQgIkFkZCBhIGRpdmVyc2lvbiBmb3IgSTxmaWxlPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGl2ZXJ0Ljg6MjggZHBrZy1zdGF0b3ZlcnJpZGUuODozNQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tcmVtb3ZlPkk8IGZpbGU+IgorbXNnc3RyICJCPC0tc3RhdHVzLWZkID5JPEU8bHQ+bkU8Z3Q+PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODozMQorbXNnaWQgIlJlbW92ZSBhIGRpdmVyc2lvbiBmb3IgSTxmaWxlPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGl2ZXJ0Ljg6MzEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWxpc3Q+STwgZ2xvYi1wYXR0ZXJuPiIKK21zZ3N0ciAiQjwtLXN0YXR1cy1mZCA+STxFPGx0Pm5FPGd0Pj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6MzQKK21zZ2lkICJMaXN0IGRpdmVyc2lvbnMgbWF0Y2hpbmcgSTxnbG9iLXBhdHRlcm4+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kaXZlcnQuODozNAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tbGlzdHBhY2thZ2U+STwgZmlsZT4iCittc2dzdHIgIkI8UGFja2FnZTo+IEU8bHQ+0LjQvNGPINC/0LDQutC10YLQsEU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjM4Cittc2dpZCAiIgorIlByaW50IHRoZSBuYW1lIG9mIHRoZSBwYWNrYWdlIHRoYXQgZGl2ZXJ0cyBJPGZpbGU+LiAgUHJpbnRzIExPQ0FMIGlmIEk8ZmlsZT4gIgorImlzIGxvY2FsbHkgZGl2ZXJ0ZWQgYW5kIG5vdGhpbmcgaWYgSTxmaWxlPiBpcyBub3QgZGl2ZXJ0ZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRpdmVydC44OjM4CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS10cnVlbmFtZT5JPCBmaWxlPiIKK21zZ3N0ciAiQjwtLWxvZz0+STzQuNC80Y8g0YTQsNC50LvQsD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6NDEKK21zZ2lkICJQcmludCB0aGUgcmVhbCBuYW1lIGZvciBhIGRpdmVydGVkIGZpbGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRpdmVydC44OjQzIGRwa2ctc3RhdG92ZXJyaWRlLjg6NTIgZHNlbGVjdC4xOjQ0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzI4CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1hZG1pbmRpcj5JPCBkaXJlY3Rvcnk+IgorbXNnc3RyICJCPC0tc3RhdHVzLWZkID5JPEU8bHQ+bkU8Z3Q+PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo0NgorbXNnaWQgIiIKKyJTZXQgdGhlIGRwa2cgZGF0YSBkaXJlY3RvcnkgdG8gSTxkaXJlY3Rvcnk+IChkZWZhdWx0OiBJPC92YXIvbGliL2Rwa2c+KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGl2ZXJ0Ljg6NDYKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWRpdmVydD5JPCBkaXZlcnQtdG8+IgorbXNnc3RyICJCPFByaW9yaXR5Oj4gRTxsdD7Qv9GA0LjQvtGA0LjRgtC10YJFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo1MAorbXNnaWQgIiIKKyJJPGRpdmVydC10bz4gaXMgdGhlIGxvY2F0aW9uIHdoZXJlIHRoZSB2ZXJzaW9ucyBvZiBJPGZpbGU+LCBhcyBwcm92aWRlZCBieSAiCisib3RoZXIgcGFja2FnZXMsIHdpbGwgYmUgZGl2ZXJ0ZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRpdmVydC44OjUwCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1sb2NhbD4iCittc2dzdHIgIkI8LS1ub2NoZWNrPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo1NgorbXNnaWQgIiIKKyJTcGVjaWZpZXMgdGhhdCBhbGwgcGFja2FnZXMnIHZlcnNpb25zIG9mIHRoaXMgZmlsZSBhcmUgZGl2ZXJ0ZWQuICBUaGlzICIKKyJtZWFucywgdGhhdCB0aGVyZSBhcmUgbm8gZXhjZXB0aW9ucywgYW5kIHdoYXRldmVyIHBhY2thZ2UgaXMgaW5zdGFsbGVkLCB0aGUgIgorImZpbGUgaXMgZGl2ZXJ0ZWQuIFRoaXMgY2FuIGJlIHVzZWQgYnkgYW4gYWRtaW4gdG8gaW5zdGFsbCBhIGxvY2FsbHkgbW9kaWZpZWQgIgorInZlcnNpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRpdmVydC44OjU2CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1wYWNrYWdlPkk8IHBhY2thZ2U+IgorbXNnc3RyICJCPFBhY2thZ2U6PiBFPGx0PtC40LzRjyDQv9Cw0LrQtdGC0LBFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo2MQorbXNnaWQgIiIKKyJJPHBhY2thZ2U+IGlzIHRoZSBuYW1lIG9mIGEgcGFja2FnZSB3aG9zZSBjb3B5IG9mIEk8ZmlsZT4gd2lsbCBub3QgYmUgIgorImRpdmVydGVkLiBpLmUuIEk8ZmlsZT4gd2lsbCBiZSBkaXZlcnRlZCBmb3IgYWxsIHBhY2thZ2VzIGV4Y2VwdCBJPHBhY2thZ2U+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kaXZlcnQuODo2MSBkcGtnLXN0YXRvdmVycmlkZS44OjY0IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozNTAKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLXF1aWV0PiIKK21zZ3N0ciAiQjwtcT58QjwtLXF1aWV0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo2NAorbXNnaWQgIlF1aWV0IG1vZGUsIGkuZS4gbm8gdmVyYm9zZSBvdXRwdXQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRpdmVydC44OjY0CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1yZW5hbWU+IgorbXNnc3RyICJCPC0tbG9nPT5JPNC40LzRjyDRhNCw0LnQu9CwPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo2OAorbXNnaWQgIiIKKyJBY3R1YWxseSBtb3ZlIHRoZSBmaWxlIGFzaWRlIChvciBiYWNrKS4gQjxkcGtnLWRpdmVydD4gd2lsbCBhYm9ydCBvcGVyYXRpb24gIgorImluIGNhc2UgdGhlIGRlc3RpbmF0aW9uIGZpbGUgYWxyZWFkeSBleGlzdHMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRpdmVydC44OjY4CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS10ZXN0PiIKK21zZ3N0ciAiQjwtdD58QjwtLXRlc3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjcxCittc2dpZCAiVGVzdCBtb2RlLCBpLmUuIGRvbid0IGFjdHVhbGx5IHBlcmZvcm0gYW55IGNoYW5nZXMsIGp1c3QgZGVtb25zdHJhdGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLWRpdmVydC44Ojc4CisjLCBuby13cmFwCittc2dpZCAiTk9URVMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo4MgorbXNnaWQgIiIKKyJXaGVuIGFkZGluZywgZGVmYXVsdCBpcyBCPC0tbG9jYWw+IGFuZCBCPC0tZGl2ZXJ0PiBJPG9yaWdpbmFsPkI8LmRpc3RyaWI+LiAiCisiV2hlbiByZW1vdmluZywgQjwtLXBhY2thZ2U+IG9yIEI8LS1sb2NhbD4gYW5kIEI8LS1kaXZlcnQ+IG11c3QgbWF0Y2ggaWYgIgorInNwZWNpZmllZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo4NAorbXNnaWQgIkRpcmVjdG9yaWVzIGNhbid0IGJlIGRpdmVydGVkIHdpdGggQjxkcGtnLWRpdmVydD4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6OTAKK21zZ2lkICIiCisiQ2FyZSBzaG91bGQgYmUgdGFrZW4gd2hlbiBkaXZlcnRpbmcgc2hhcmVkIGxpYnJhcmllcywgQjxsZGNvbmZpZz4oOCkgICIKKyJjcmVhdGVzIGEgc3ltYm9saWMgbGluayBiYXNlZCBvbiB0aGUgRFRfU09OQU1FIGZpZWxkIGVtYmVkZGVkIGluIHRoZSAiCisibGlicmFyeS4gIEJlY2F1c2UgbGRjb25maWcgZG9lc24ndCBob25vdXIgZGl2ZXJ0cyAob25seSBkcGtnIGRvZXMpLCB0aGUgIgorInN5bWxpbmsgbWF5IGVuZCB1cCBwb2ludGluZyBhdCB0aGUgZGl2ZXJ0ZWQgbGlicmFyeSwgaWYgYSBkaXZlcnRlZCBsaWJyYXJ5ICIKKyJoYXMgdGhlIHNhbWUgU09OQU1FIGFzIHRoZSB1bmRpdmVydGVkIG9uZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo5NQorbXNnaWQgIiIKKyJUbyBkaXZlcnQgYWxsIGNvcGllcyBvZiBhIEk8L3Vzci9iaW4vZXhhbXBsZT4gdG8gSTwvdXNyL2Jpbi9leGFtcGxlLmZvbz4sIGkuIgorImUuIGRpcmVjdHMgYWxsIHBhY2thZ2VzIHByb3ZpZGluZyBJPC91c3IvYmluL2V4YW1wbGU+IHRvIGluc3RhbGwgaXQgYXMgSTwvIgorInVzci9iaW4vZXhhbXBsZS5mb28+LCBwZXJmb3JtaW5nIHRoZSByZW5hbWUgaWYgcmVxdWlyZWQ6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6OTcKK21zZ2lkICJkcGtnLWRpdmVydCAtLWRpdmVydCAvdXNyL2Jpbi9leGFtcGxlLmZvbyAtLXJlbmFtZSAvdXNyL2Jpbi9leGFtcGxlIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6OTkgZHBrZy1kaXZlcnQuODoxMDkKK21zZ2lkICJUbyByZW1vdmUgdGhhdCBkaXZlcnNpb246IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6MTAxCittc2dpZCAiZHBrZy1kaXZlcnQgLS1yZW5hbWUgLS1yZW1vdmUgL3Vzci9iaW4vZXhhbXBsZSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjEwNQorbXNnaWQgIiIKKyJUbyBkaXZlcnQgYW55IHBhY2thZ2UgdHJ5aW5nIHRvIGluc3RhbGwgSTwvdXNyL2Jpbi9leGFtcGxlPiB0byBJPC91c3IvYmluLyIKKyJleGFtcGxlLmZvbz4sIGV4Y2VwdCB5b3VyIG93biBJPHdpYmJsZT4gcGFja2FnZToiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODoxMDcKK21zZ2lkICIiCisiZHBrZy1kaXZlcnQgLS1wYWNrYWdlIHdpYmJsZSAtLWRpdmVydCAvdXNyL2Jpbi9leGFtcGxlLmZvbyAtLXJlbmFtZSAvdXNyL2Jpbi8iCisiZXhhbXBsZSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjExMQorbXNnaWQgImRwa2ctZGl2ZXJ0IC0tcGFja2FnZSB3aWJibGUgLS1yZW5hbWUgLS1yZW1vdmUgL3Vzci9iaW4vZXhhbXBsZSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kaXZlcnQuODoxMTMgZHBrZy1xdWVyeS4xOjIwNSBkcGtnLXN0YXRvdmVycmlkZS44OjY5IGRwa2ctdHJpZ2dlci4xOjYxCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzU1CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8RFBLR19OT19UU1RQPiIKK21zZ2lkICJCPERQS0dfQURNSU5ESVI+IgorbXNnc3RyICJCPERQS0dfTk9fVFNUUD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6MTE3IGRwa2ctcXVlcnkuMToyMDkgZHBrZy1zdGF0b3ZlcnJpZGUuODo3MyBkcGtnLXRyaWdnZXIuMTo2NQorbXNnaWQgIiIKKyJJZiBzZXQgYW5kIHRoZSBCPC0tYWRtaW5kaXI+IG9wdGlvbiBoYXMgbm90IGJlZW4gc3BlY2lmaWVkLCBpdCB3aWxsIGJlIHVzZWQgIgorImFzIHRoZSBkcGtnIGRhdGEgZGlyZWN0b3J5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjEyMQorbXNnaWQgIiIKKyJJZiBzZXQgYW5kIHRoZSBCPC0tbG9jYWw+IGFuZCBCPC0tcGFja2FnZT4gb3B0aW9ucyBoYXZlIG5vdCBiZWVuIHNwZWNpZmllZCwgIgorIkI8ZHBrZy1kaXZlcnQ+IHdpbGwgdXNlIGl0IGFzIHRoZSBwYWNrYWdlIG5hbWUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRpdmVydC44OjEyMworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJJPC92YXIvbGliL2Rwa2cvZGl2ZXJzaW9ucz4iCittc2dzdHIgIkk8L3Zhci9saWIvZHBrZy9zdGF0dXM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjEyOAorbXNnaWQgIiIKKyJGaWxlIHdoaWNoIGNvbnRhaW5zIHRoZSBjdXJyZW50IGxpc3Qgb2YgZGl2ZXJzaW9ucyBvZiB0aGUgc3lzdGVtLiBJdCBpcyAiCisibG9jYXRlZCBpbiB0aGUgZHBrZyBhZG1pbmlzdHJhdGlvbiBkaXJlY3RvcnksIGFsb25nIHdpdGggb3RoZXIgZmlsZXMgIgorImltcG9ydGFudCB0byBkcGtnLCBzdWNoIGFzIEk8c3RhdHVzPiBvciBJPGF2YWlsYWJsZT4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6MTMxCittc2dpZCAiIgorIk5vdGU6IEI8ZHBrZy1kaXZlcnQ+IHByZXNlcnZlcyB0aGUgb2xkIGNvcHkgb2YgdGhpcyBmaWxlLCB3aXRoIGV4dGVuc2lvbiBJPC0iCisib2xkPiwgYmVmb3JlIHJlcGxhY2luZyBpdCB3aXRoIHRoZSBuZXcgb25lLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjEzNyB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDk2Cittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDE5OTUgSWFuIEphY2tzb24iCittc2dzdHIgIiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiZHBrZy1nZW5jaGFuZ2VzIgorbXNnc3RyICJkcGtnIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMTo0Cittc2dpZCAiZHBrZy1nZW5jaGFuZ2VzIC0gZ2VuZXJhdGUgRGViaWFuIC5jaGFuZ2VzIGZpbGVzIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjgKKyMsIGZ1enp5Cittc2dpZCAiQjxkcGtnLWdlbmNoYW5nZXM+IFtJPG9wdGlvbj4uLi5dIgorbXNnc3RyICJCPGRwa2c+IFtJPNC/0LDRgNCw0LzQtdGC0YDRiz5dIEk80LTQtdC50YHRgtCy0LjQtT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjE2Cittc2dpZCAiIgorIkI8ZHBrZy1nZW5jaGFuZ2VzPiByZWFkcyBpbmZvcm1hdGlvbiBmcm9tIGFuIHVucGFja2VkIGFuZCBidWlsdCBEZWJpYW4gIgorInNvdXJjZSB0cmVlIGFuZCBmcm9tIHRoZSBmaWxlcyBpdCBoYXMgZ2VuZXJhdGVkIGFuZCBnZW5lcmF0ZXMgYSBEZWJpYW4gIgorInVwbG9hZCBjb250cm9sIGZpbGUgKEI8LmNoYW5nZXM+IGZpbGUpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6MTgKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtYj4sIEI8LUI+LCBCPC1BPiIKK21zZ3N0ciAiQjwtdD58QjwtLXRlc3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMToyNworbXNnaWQgIiIKKyJTcGVjaWZpZXMgdGhhdCBhIGJpbmFyeS1vbmx5IGJ1aWxkIGlzIHRha2luZyBwbGFjZSAobm8gc291cmNlIGZpbGVzIGFyZSB0byAiCisiYmUgaW5jbHVkZWQpLiBUaGVyZSdzIG5vIGRpc3RpbmN0aW9uIGJldHdlZW4gQjwtYj4sIEI8LUI+IGFuZCBCPC1BPiwgdGhlICIKKyJwcm9kdWNlZCBCPC5jaGFuZ2VzPiBmaWxlIHdpbGwgaW5jbHVkZSB3aGF0ZXZlciBmaWxlcyB3ZXJlIGNyZWF0ZWQgYnkgdGhlICIKKyJCPGJpbmFyeS0qPiB0YXJnZXQocykgb2YgdGhlIHBhY2thZ2UgYmVpbmcgYnVpbHQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjMxCittc2dpZCAiIgorIlNwZWNpZmllcyB0aGF0IG9ubHkgdGhlIHNvdXJjZSBzaG91bGQgYmUgdXBsb2FkZWQgKG5vIGJpbmFyeSBwYWNrYWdlcyB3aWxsICIKKyJiZSBpbmNsdWRlZCkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjM2Cittc2dpZCAiIgorIlRoZSBCPC1zPkk8eD4gb3B0aW9ucyBjb250cm9sIHdoZXRoZXIgdGhlIG9yaWdpbmFsIHNvdXJjZSBhcmNoaXZlIGlzICIKKyJpbmNsdWRlZCBpbiB0aGUgdXBsb2FkIGlmIGFueSBzb3VyY2UgaXMgYmVpbmcgZ2VuZXJhdGVkIChpLmUuICBCPC1iPiBvciBCPC0iCisiQj4gaGF2ZW4ndCBiZWVuIHVzZWQpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMTo0MgorbXNnaWQgIiIKKyJCeSBkZWZhdWx0LCBvciBpZiBzcGVjaWZpZWQsIHRoZSBvcmlnaW5hbCBzb3VyY2Ugd2lsbCBiZSBpbmNsdWRlZCBvbmx5IGlmICIKKyJ0aGUgdXBzdHJlYW0gdmVyc2lvbiBudW1iZXIgKHRoZSB2ZXJzaW9uIHdpdGhvdXQgZXBvY2ggYW5kIHdpdGhvdXQgRGViaWFuICIKKyJyZXZpc2lvbikgZGlmZmVycyBmcm9tIHRoZSB1cHN0cmVhbSB2ZXJzaW9uIG51bWJlciBvZiB0aGUgcHJldmlvdXMgY2hhbmdlbG9nICIKKyJlbnRyeS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6NDUKK21zZ2lkICJGb3JjZXMgdGhlIGluY2x1c2lvbiBvZiB0aGUgb3JpZ2luYWwgc291cmNlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMTo0OAorbXNnaWQgIkZvcmNlcyB0aGUgZXhjbHVzaW9uIG9mIHRoZSBvcmlnaW5hbCBzb3VyY2UgYW5kIGluY2x1ZGVzIG9ubHkgdGhlIGRpZmYuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjU0Cittc2dpZCAiIgorIkNhdXNlcyBjaGFuZ2Vsb2cgaW5mb3JtYXRpb24gZnJvbSBhbGwgdmVyc2lvbnMgc3RyaWN0bHkgbGF0ZXIgdGhhbiAiCisiSTx2ZXJzaW9uPiB0byBiZSB1c2VkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMTo2MAorbXNnaWQgIiIKKyJSZWFkIHRoZSBkZXNjcmlwdGlvbiBvZiB0aGUgY2hhbmdlcyBmcm9tIHRoZSBmaWxlIEk8Y2hhbmdlc2Rlc2NyaXB0aW9uPiAiCisicmF0aGVyIHRoYW4gdXNpbmcgdGhlIGluZm9ybWF0aW9uIGZyb20gdGhlIHNvdXJjZSB0cmVlJ3MgY2hhbmdlbG9nIGZpbGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjY2Cittc2dpZCAiIgorIlVzZSBJPG1haW50YWluZXJhZGRyZXNzPiBhcyB0aGUgbmFtZSBhbmQgZW1haWwgYWRkcmVzcyBvZiB0aGUgbWFpbnRhaW5lciBmb3IgIgorInRoaXMgcGFja2FnZSwgcmF0aGVyIHRoYW4gdXNpbmcgdGhlIGluZm9ybWF0aW9uIGZyb20gdGhlIHNvdXJjZSB0cmVlJ3MgIgorImNvbnRyb2wgZmlsZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6NzIKK21zZ2lkICIiCisiVXNlIEk8bWFpbnRhaW5lcmFkZHJlc3M+IGFzIHRoZSBuYW1lIGFuZCBlbWFpbCBhZGRyZXNzIG9mIHRoZSBtYWludGFpbmVyIGZvciAiCisidGhpcyB1cGxvYWQsIHJhdGhlciB0aGFuIHVzaW5nIHRoZSBpbmZvcm1hdGlvbiBmcm9tIHRoZSBzb3VyY2UgdHJlZSdzICIKKyJjaGFuZ2Vsb2cuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbmNoYW5nZXMuMTo3MiBkcGtnLWdlbmNvbnRyb2wuMTo0MSBkcGtnLXNvdXJjZS4xOjEyNworIywgbm8td3JhcAorbXNnaWQgIkI8LVY+STxuYW1lPkI8PT5JPHZhbHVlPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMTo3NiBkcGtnLXNvdXJjZS4xOjEzMQorbXNnaWQgIiIKKyJTZXQgYW4gb3V0cHV0IHN1YnN0aXR1dGlvbiB2YXJpYWJsZS4gIFNlZSBCPGRlYi1zdWJzdHZhcnM+KDUpIGZvciBhICIKKyJkaXNjdXNzaW9uIG9mIG91dHB1dCBzdWJzdGl0dXRpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbmNoYW5nZXMuMTo3NiBkcGtnLWdlbmNvbnRyb2wuMTo0NSBkcGtnLXNobGliZGVwcy4xOjE2OQorIzogZHBrZy1zb3VyY2UuMToxMzEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1UPkk8c3Vic3R2YXJzZmlsZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6ODYKK21zZ2lkICIiCisiUmVhZCBzdWJzdGl0dXRpb24gdmFyaWFibGVzIGluIEk8c3Vic3R2YXJzZmlsZT47IHRoZSBkZWZhdWx0IGlzIEI8ZGViaWFuLyIKKyJzdWJzdHZhcnM+LiAgTm8gdmFyaWFibGUgc3Vic3RpdHV0aW9uIGlzIGRvbmUgb24gYW55IG9mIHRoZSBmaWVsZHMgdGhhdCBhcmUgIgorIm91dHB1dCwgaG93ZXZlciB0aGUgc3BlY2lhbCB2YXJpYWJsZSBJPEZvcm1hdD4gd2lsbCBvdmVycmlkZSB0aGUgZmllbGQgb2YgIgorInRoZSBzYW1lIG5hbWUuIFRoaXMgb3B0aW9uIGNhbiBiZSB1c2VkIG11bHRpcGxlIHRpbWVzIHRvIHJlYWQgc3Vic3RpdHV0aW9uICIKKyJ2YXJpYWJsZXMgZnJvbSBtdWx0aXBsZSBmaWxlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjg3IGRwa2ctZ2VuY29udHJvbC4xOjUzIGRwa2ctc291cmNlLjE6MTM3CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LUQ+STxmaWVsZD5CPD0+STx2YWx1ZT4iCittc2dzdHIgIkI8LUQ+STxvY3RhbD5CPCB8IC0tZGVidWc9Pkk8b2N0YWw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMTo5MCBkcGtnLWdlbmNvbnRyb2wuMTo1NiBkcGtnLXNvdXJjZS4xOjE0MAorbXNnaWQgIk92ZXJyaWRlIG9yIGFkZCBhbiBvdXRwdXQgY29udHJvbCBmaWxlIGZpZWxkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6OTAgZHBrZy1nZW5jb250cm9sLjE6NTYgZHBrZy1zb3VyY2UuMToxNDAKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtVT5JPGZpZWxkPiIKK21zZ3N0ciAiQjwtLWxvZz0+STzQuNC80Y8g0YTQsNC50LvQsD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjkzIGRwa2ctZ2VuY29udHJvbC4xOjU5IGRwa2ctc291cmNlLjE6MTQzCittc2dpZCAiUmVtb3ZlIGFuIG91dHB1dCBjb250cm9sIGZpbGUgZmllbGQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbmNoYW5nZXMuMTo5MyBkcGtnLWdlbmNvbnRyb2wuMTo1OSBkcGtnLXNvdXJjZS4xOjEwNAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1jPkk8Y29udHJvbGZpbGU+IgorbXNnc3RyICJJPGNvbnRyb2w+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMTo5OCBkcGtnLWdlbmNvbnRyb2wuMTo2NAorbXNnaWQgIiIKKyJTcGVjaWZpZXMgdGhlIG1haW4gc291cmNlIGNvbnRyb2wgZmlsZSB0byByZWFkIGluZm9ybWF0aW9uIGZyb20uIFRoZSBkZWZhdWx0ICIKKyJpcyBCPGRlYmlhbi9jb250cm9sPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjk4IGRwa2ctZ2VuY29udHJvbC4xOjY0IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxNgorIzogZHBrZy1zb3VyY2UuMToxMTEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1sPkk8Y2hhbmdlbG9nZmlsZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6MTAzIGRwa2ctZ2VuY29udHJvbC4xOjY5IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToyMQorbXNnaWQgIiIKKyJTcGVjaWZpZXMgdGhlIGNoYW5nZSBsb2cgZmlsZSB0byByZWFkIGluZm9ybWF0aW9uIGZyb20uIFRoZSBkZWZhdWx0IGlzICIKKyJCPGRlYmlhbi9jaGFuZ2Vsb2c+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMToxMDcKK21zZ2lkICIiCisiUmVhZCB0aGUgbGlzdCBvZiBmaWxlcyB0byBiZSB1cGxvYWRlZCBoZXJlLCByYXRoZXIgdGhhbiB1c2luZyBCPGRlYmlhbi8iCisiZmlsZXM+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6MTA3IGRwa2ctZ2VuY29udHJvbC4xOjczIGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToyMQorIzogZHBrZy1zb3VyY2UuMToxMTgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1GPkk8Y2hhbmdlbG9nZm9ybWF0PiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMToxMTIgZHBrZy1nZW5jb250cm9sLjE6NzggZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjI2CisjOiBkcGtnLXNvdXJjZS4xOjEyMworbXNnaWQgIiIKKyJTcGVjaWZpZXMgdGhlIGZvcm1hdCBvZiB0aGUgY2hhbmdlbG9nLiBCeSBkZWZhdWx0IHRoZSBmb3JtYXQgaXMgcmVhZCBmcm9tIGEgIgorInNwZWNpYWwgbGluZSBuZWFyIHRoZSBib3R0b20gb2YgdGhlIGNoYW5nZWxvZyBvciBmYWlsaW5nIHRoYXQgZGVmYXVsdHMgdG8gIgorInRoZSBkZWJpYW4gc3RhbmRhcmQgZm9ybWF0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6MTEyCisjLCBuby13cmFwCittc2dpZCAiQjwtdT5JPHVwbG9hZGZpbGVzZGlyPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMToxMjMKK21zZ2lkICIiCisiTG9vayBmb3IgdGhlIGZpbGVzIHRvIGJlIHVwbG9hZGVkIGluIEk8dXBsb2FkZmlsZXNkaXI+IHJhdGhlciB0aGFuIEI8Li4+ICIKKyIoQjxkcGtnLWdlbmNoYW5nZXM+IG5lZWRzIHRvIGZpbmQgdGhlc2UgZmlsZXMgc28gdGhhdCBpdCBjYW4gaW5jbHVkZSB0aGVpciAiCisic2l6ZXMgYW5kIGNoZWNrc3VtcyBpbiB0aGUgQjwuY2hhbmdlcz4gZmlsZSkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbmNoYW5nZXMuMToxMjMgZHBrZy1nZW5zeW1ib2xzLjE6NDIxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LXE+IgorbXNnc3RyICJCPC1CPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6MTMxCittc2dpZCAiIgorIlVzdWFsbHkgQjxkcGtnLWdlbmNoYW5nZXM+IHdpbGwgcHJvZHVjZSBpbmZvcm1hdGl2ZSBtZXNzYWdlcyBvbiBzdGFuZGFyZCAiCisiZXJyb3IsIGZvciBleGFtcGxlIGFib3V0IGhvdyBtYW55IG9mIHRoZSBwYWNrYWdlJ3Mgc291cmNlIGZpbGVzIGFyZSBiZWluZyAiCisidXBsb2FkZWQuICBCPC1xPiBzdXBwcmVzc2VzIHRoZXNlIG1lc3NhZ2VzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMToxNDcKK21zZ2lkICIiCisiVGhlIGxpc3Qgb2YgZ2VuZXJhdGVkIGZpbGVzIHdoaWNoIGFyZSBwYXJ0IG9mIHRoZSB1cGxvYWQgYmVpbmcgcHJlcGFyZWQuICAiCisiQjxkcGtnLWdlbmNoYW5nZXM+IHJlYWRzIHRoZSBkYXRhIGhlcmUgd2hlbiBwcm9kdWNpbmcgYSBCPC5jaGFuZ2VzPiBmaWxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1nZW5jb250cm9sLjE6MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJkcGtnLWdlbmNvbnRyb2wiCittc2dzdHIgImRlYi1jb250cm9sIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMTo0Cittc2dpZCAiZHBrZy1nZW5jb250cm9sIC0gZ2VuZXJhdGUgRGViaWFuIGNvbnRyb2wgZmlsZXMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jb250cm9sLjE6OAorIywgZnV6enkKK21zZ2lkICJCPGRwa2ctZ2VuY29udHJvbD4gW0k8b3B0aW9uPi4uLl0iCittc2dzdHIgIkI8ZHBrZz4gW0k80L/QsNGA0LDQvNC10YLRgNGLPl0gSTzQtNC10LnRgdGC0LLQuNC1PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jb250cm9sLjE6MTQKK21zZ2lkICIiCisiQjxkcGtnLWdlbmNvbnRyb2w+IHJlYWRzIGluZm9ybWF0aW9uIGZyb20gYW4gdW5wYWNrZWQgRGViaWFuIHNvdXJjZSB0cmVlIGFuZCAiCisiZ2VuZXJhdGVzIGEgYmluYXJ5IHBhY2thZ2UgY29udHJvbCBmaWxlICh3aGljaCBkZWZhdWx0cyB0byBkZWJpYW4vdG1wL0RFQklBTi8iCisiY29udHJvbCk7IGR1cmluZyB0aGlzIHByb2Nlc3MgaXQgd2lsbCBzaW1wbGlmeSB0aGUgcmVsYXRpb24gZmllbGRzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMToyNworbXNnaWQgIiIKKyJUaHVzIEk8UHJlLURlcGVuZHM+LCBJPERlcGVuZHM+LCBJPFJlY29tbWVuZHM+IGFuZCBJPFN1Z2dlc3RzPiBhcmUgIgorInNpbXBsaWZpZWQgaW4gdGhpcyBvcmRlciBieSByZW1vdmluZyBkZXBlbmRlbmNpZXMgd2hpY2ggYXJlIGtub3duIHRvIGJlIHRydWUgIgorImFjY29yZGluZyB0byB0aGUgc3Ryb25nZXIgZGVwZW5kZW5jaWVzIGFscmVhZHkgcGFyc2VkLiBJdCB3aWxsIGFsc28gcmVtb3ZlICIKKyJhbnkgc2VsZi1kZXBlbmRlbmN5IChpbiBmYWN0IGl0IHdpbGwgcmVtb3ZlIGFueSBkZXBlbmRlbmN5IHdoaWNoIGV2YWx1YXRlcyAiCisidG8gdHJ1ZSBnaXZlbiB0aGUgY3VycmVudCB2ZXJzaW9uIG9mIHRoZSBwYWNrYWdlIGFzIGluc3RhbGxlZCkuIExvZ2ljYWxseSBpdCAiCisia2VlcHMgdGhlIGludGVyc2VjdGlvbiBvZiBtdWx0aXBsZSBkZXBlbmRlbmNpZXMgb24gdGhlIHNhbWUgcGFja2FnZS4gVGhlICIKKyJvcmRlciBvZiBkZXBlbmRlbmNpZXMgaXMgcHJlc2VydmVkIGFzIGJlc3QgYXMgcG9zc2libGU6IGlmIGFueSBkZXBlbmRlbmN5ICIKKyJtdXN0IGJlIGRpc2NhcmRlZCBkdWUgdG8gYW5vdGhlciBkZXBlbmRlbmN5IGFwcGVhcmluZyBmdXJ0aGVyIGluIHRoZSBmaWVsZCwgIgorInRoZSBzdXBlcnNlZGluZyBkZXBlbmRlbmN5IHdpbGwgdGFrZSB0aGUgcGxhY2Ugb2YgdGhlIGRpc2NhcmRlZCBvbmUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjMyCittc2dpZCAiIgorIlRoZSBvdGhlciByZWxhdGlvbiBmaWVsZHMgKEk8RW5oYW5jZXM+LCBJPENvbmZsaWN0cz4sIEk8QnJlYWtzPiwgSTxSZXBsYWNlcz4gIgorImFuZCBJPFByb3ZpZGVzPikgIGFyZSBhbHNvIHNpbXBsaWZpZWQgaW5kaXZpZHVhbGx5IGJ5IGNvbXB1dGluZyB0aGUgdW5pb24gb2YgIgorInRoZSB2YXJpb3VzIGRlcGVuZGVuY2llcyB3aGVuIGEgcGFja2FnZSBpcyBsaXN0ZWQgbXVsdGlwbGUgdGltZXMgaW4gdGhlICIKKyJmaWVsZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jb250cm9sLjE6MzYKK21zZ2lkICIiCisiQjxkcGtnLWdlbmNvbnRyb2w+IGFsc28gYWRkcyBhbiBlbnRyeSBmb3IgdGhlIGJpbmFyeSBwYWNrYWdlIHRvIEI8ZGViaWFuLyIKKyJmaWxlcz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjQxCittc2dpZCAiU2V0cyB0aGUgdmVyc2lvbiBudW1iZXIgb2YgdGhlIGJpbmFyeSBwYWNrYWdlIHdoaWNoIHdpbGwgYmUgZ2VuZXJhdGVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMTo0NQorbXNnaWQgIiIKKyJTZXQgYW4gb3V0cHV0IHN1YnN0aXR1dGlvbiB2YXJpYWJsZS4gU2VlIEI8ZGViLXN1YnN0dmFycz4oNSkgZm9yIGRpc2N1c3Npb24gIgorIm9mIG91dHB1dCBzdWJzdGl0dXRpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjUzCittc2dpZCAiIgorIlJlYWQgc3Vic3RpdHV0aW9uIHZhcmlhYmxlcyBpbiBJPHN1YnN0dmFyc2ZpbGU+OyB0aGUgZGVmYXVsdCBpcyBCPGRlYmlhbi8iCisic3Vic3R2YXJzPi4gIFRoaXMgb3B0aW9uIGNhbiBiZSB1c2VkIG11bHRpcGxlIHRpbWVzIHRvIHJlYWQgc3Vic3RpdHV0aW9uICIKKyJ2YXJpYWJsZXMgZnJvbSBtdWx0aXBsZSBmaWxlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjc4IGRwa2ctZ2Vuc3ltYm9scy4xOjM3MworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1wPkk8cGFja2FnZT4iCittc2dzdHIgIkI8dW5wYWNrZWQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMTo4NQorbXNnaWQgIiIKKyJHZW5lcmF0ZSBpbmZvcm1hdGlvbiBmb3IgdGhlIGJpbmFyeSBwYWNrYWdlIEk8cGFja2FnZT4uICBJZiB0aGUgc291cmNlICIKKyJjb250cm9sIGZpbGUgbGlzdHMgb25seSBvbmUgYmluYXJ5IHBhY2thZ2UgdGhlbiB0aGlzIG9wdGlvbiBtYXkgYmUgb21pdHRlZDsgIgorIm90aGVyd2lzZSBpdCBpcyBlc3NlbnRpYWwgdG8gc2VsZWN0IHdoaWNoIGJpbmFyeSBwYWNrYWdlJ3MgaW5mb3JtYXRpb24gdG8gIgorImdlbmVyYXRlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5jb250cm9sLjE6ODUKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtbj5JPGZpbGVuYW1lPiIKK21zZ3N0ciAiQjwtLWxvZz0+STzQuNC80Y8g0YTQsNC50LvQsD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjkwCittc2dpZCAiIgorIkFzc3VtZSB0aGUgZmlsZW5hbWUgb2YgdGhlIHBhY2thZ2Ugd2lsbCBiZSBJPGZpbGVuYW1lPiBpbnN0ZWFkIG9mIHRoZSBub3JtYWwgIgorInBhY2thZ2VfdmVyc2lvbl9hcmNoLmRlYiBmaWxlbmFtZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjkwCisjLCBuby13cmFwCittc2dpZCAiQjwtaXM+LCBCPC1pcD4sIEI8LWlzcD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jb250cm9sLjE6OTkKK21zZ2lkICIiCisiVGhlc2Ugb3B0aW9ucyBhcmUgaWdub3JlZCBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIG9sZGVyIHZlcnNpb25zIG9mIGRwa2ctZGV2ICIKKyJidXQgYXJlIG5vdyBkZXByZWNhdGVkLiBQcmV2aW91c2x5IHRoZXkgd2VyZSB1c2VkIHRvIHRlbGwgZHBrZy1nZW5jb250cm9sIHRvICIKKyJpbmNsdWRlIHRoZSBTZWN0aW9uIGFuZCBQcmlvcml0eSBmaWVsZHMgaW4gdGhlIGNvbnRyb2wgZmlsZS4gVGhpcyBpcyBub3cgdGhlICIKKyJkZWZhdWx0IGJlaGF2aW91ci4gSWYgeW91IHdhbnQgdG8gZ2V0IHRoZSBvbGQgYmVoYXZpb3VyIHlvdSBjYW4gdXNlIHRoZSBCPC0iCisiVT4gb3B0aW9uIHRvIGRlbGV0ZSB0aGUgZmllbGRzIGZyb20gdGhlIGNvbnRyb2wgZmlsZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjk5CisjLCBuby13cmFwCittc2dpZCAiQjwtUD5JPHBhY2thZ2VidWlsZGRpcj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jb250cm9sLjE6MTEyCittc2dpZCAiIgorIlRlbGxzIEI8ZHBrZy1zb3VyY2U+IHRoYXQgdGhlIHBhY2thZ2UgaXMgYmVpbmcgYnVpbHQgaW4gSTxwYWNrYWdlYnVpbGRkaXI+ICIKKyJpbnN0ZWFkIG9mIEI8ZGViaWFuL3RtcD4uICBUaGlzIHZhbHVlIGlzIHVzZWQgdG8gZmluZCB0aGUgZGVmYXVsdCB2YWx1ZSBvZiAiCisidGhlIEI8SW5zdGFsbGVkLVNpemU+IHN1YnN0aXR1dGlvbiB2YXJpYWJsZSBhbmQgY29udHJvbCBmaWxlIGZpZWxkICh1c2luZyAiCisiQjxkdT4pLCBhbmQgZm9yIHRoZSBkZWZhdWx0IGxvY2F0aW9uIG9mIHRoZSBvdXRwdXQgZmlsZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjExMiBkcGtnLWdlbnN5bWJvbHMuMTozOTEgZHBrZy1zaGxpYmRlcHMuMToxNTAKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtTz4iCittc2dzdHIgIkI8LUI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMToxMjEKK21zZ2lkICIiCisiUHJpbnQgdGhlIGNvbnRyb2wgZmlsZSB0byBzdGFuZGFyZCBvdXRwdXQsIHJhdGhlciB0aGFuIHRvIEI8ZGViaWFuL3RtcC8iCisiREVCSUFOL2NvbnRyb2w+IChvciBJPHBhY2thZ2VidWlsZGRpcj5CPC9ERUJJQU4vY29udHJvbD4gaWYgQjwtUD4gd2FzIHVzZWQpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5jb250cm9sLjE6MTI5CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8ZGViaWFuL2NvbnRyb2w+IgorbXNnc3RyICJkZWItY29udHJvbCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jb250cm9sLjE6MTM0Cittc2dpZCAiIgorIlRoZSBtYWluIHNvdXJjZSBjb250cm9sIGluZm9ybWF0aW9uIGZpbGUsIGdpdmluZyB2ZXJzaW9uLWluZGVwZW5kZW50ICIKKyJpbmZvcm1hdGlvbiBhYm91dCB0aGUgc291cmNlIHBhY2thZ2UgYW5kIHRoZSBiaW5hcnkgcGFja2FnZXMgaXQgY2FuIHByb2R1Y2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjE0MQorbXNnaWQgIiIKKyJUaGUgbGlzdCBvZiBnZW5lcmF0ZWQgZmlsZXMgd2hpY2ggYXJlIHBhcnQgb2YgdGhlIHVwbG9hZCBiZWluZyBwcmVwYXJlZC4gICIKKyJCPGRwa2ctZ2VuY29udHJvbD4gYWRkcyB0aGUgcHJlc3VtZWQgZmlsZW5hbWVzIG9mIGJpbmFyeSBwYWNrYWdlcyB3aG9zZSAiCisiY29udHJvbCBmaWxlcyBpdCBnZW5lcmF0ZXMgaGVyZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jb250cm9sLjE6MTQ4IGRwa2ctc2hsaWJkZXBzLjE6MzM3CisjLCBmdXp6eQorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDA3LTIwMDggUmFwaGFcXFs6ZV1sIEhlcnR6b2ciCittc2dzdHIgIkNvcHlyaWdodCAyMDAxIEpvZXkgSGVzcyIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjIKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiZHBrZy1nZW5zeW1ib2xzIgorbXNnc3RyICJkZWItY29udHJvbCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NQorbXNnaWQgIiIKKyJkcGtnLWdlbnN5bWJvbHMgLSBnZW5lcmF0ZSBzeW1ib2xzIGZpbGVzIChzaGFyZWQgbGlicmFyeSBkZXBlbmRlbmN5ICIKKyJpbmZvcm1hdGlvbikiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6OQorIywgZnV6enkKK21zZ2lkICJCPGRwa2ctZ2Vuc3ltYm9scz4gW0k8b3B0aW9uPi4uLl0iCittc2dzdHIgIkI8ZHBrZz4gW0k80L/QsNGA0LDQvNC10YLRgNGLPl0gSTzQtNC10LnRgdGC0LLQuNC1PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTYKK21zZ2lkICIiCisiQjxkcGtnLWdlbnN5bWJvbHM+IHNjYW5zIGEgdGVtcG9yYXJ5IGJ1aWxkIHRyZWUgKGRlYmlhbi90bXAgYnkgZGVmYXVsdCkgIgorImxvb2tpbmcgZm9yIGxpYnJhcmllcyBhbmQgZ2VuZXJhdGUgYSBJPHN5bWJvbHM+IGZpbGUgZGVzY3JpYmluZyB0aGVtLiBUaGlzICIKKyJmaWxlLCBpZiBub24tZW1wdHksIGlzIHRoZW4gaW5zdGFsbGVkIGluIHRoZSBERUJJQU4gc3ViZGlyZWN0b3J5IG9mIHRoZSAiCisiYnVpbGQgdHJlZSBzbyB0aGF0IGl0IGVuZHMgdXAgaW5jbHVkZWQgaW4gdGhlIGNvbnRyb2wgaW5mb3JtYXRpb24gb2YgdGhlICIKKyJwYWNrYWdlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyMAorbXNnaWQgIiIKKyJXaGVuIGdlbmVyYXRpbmcgdGhvc2UgZmlsZXMsIGl0IHVzZXMgYXMgaW5wdXQgc29tZSBzeW1ib2xzIGZpbGVzIHByb3ZpZGVkIGJ5ICIKKyJ0aGUgbWFpbnRhaW5lci4gSXQgbG9va3MgZm9yIHRoZSBmb2xsb3dpbmcgZmlsZXMgKGFuZCB1c2UgdGhlIGZpcnN0IHRoYXQgaXMgIgorImZvdW5kKToiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjIKK21zZ2lkICJkZWJpYW4vSTxwYWNrYWdlPi5zeW1ib2xzLkk8YXJjaD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjQKKyMsIGZ1enp5Cittc2dpZCAiZGViaWFuL3N5bWJvbHMuSTxhcmNoPiIKK21zZ3N0ciAiQjxkZWluc3RhbGw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyNgorbXNnaWQgImRlYmlhbi9JPHBhY2thZ2U+LnN5bWJvbHMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjgKKyMsIGZ1enp5Cittc2dpZCAiZGViaWFuL3N5bWJvbHMiCittc2dzdHIgImRlYi1jb250cm9sIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozNgorbXNnaWQgIiIKKyJUaGUgbWFpbiBpbnRlcmVzdCBvZiB0aG9zZSBmaWxlcyBpcyB0byBwcm92aWRlIHRoZSBtaW5pbWFsIHZlcnNpb24gIgorImFzc29jaWF0ZWQgdG8gZWFjaCBzeW1ib2wgcHJvdmlkZWQgYnkgdGhlIGxpYnJhcmllcy4gVXN1YWxseSBpdCBjb3JyZXNwb25kcyAiCisidG8gdGhlIGZpcnN0IHZlcnNpb24gb2YgdGhhdCBwYWNrYWdlIHRoYXQgcHJvdmlkZWQgdGhlIHN5bWJvbCwgYnV0IGl0IGNhbiBiZSAiCisibWFudWFsbHkgaW5jcmVtZW50ZWQgYnkgdGhlIG1haW50YWluZXIgaWYgdGhlIEFCSSBvZiB0aGUgc3ltYm9sIGlzIGV4dGVuZGVkICIKKyJ3aXRob3V0IGJyZWFraW5nIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5LiBJdCdzIHRoZSByZXNwb25zaWJpbGl0eSBvZiB0aGUgIgorIm1haW50YWluZXIgdG8ga2VlcCB0aG9zZSBmaWxlcyB1cC10by1kYXRlIGFuZCBhY2N1cmF0ZSwgYnV0IEI8ZHBrZy0iCisiZ2Vuc3ltYm9scz4gaGVscHMgaGltLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0MgorbXNnaWQgIiIKKyJXaGVuIHRoZSBnZW5lcmF0ZWQgc3ltYm9scyBmaWxlcyBkaWZmZXIgZnJvbSB0aGUgbWFpbnRhaW5lciBzdXBwbGllZCBvbmUsICIKKyJCPGRwa2ctZ2Vuc3ltYm9scz4gd2lsbCBwcmludCBhIGRpZmYgYmV0d2VlbiB0aGUgdHdvIHZlcnNpb25zLiAgRnVydGhlcm1vcmUgIgorImlmIHRoZSBkaWZmZXJlbmNlIGlzIHRvbyBzaWduaWZpY2FudCwgaXQgd2lsbCBldmVuIGZhaWwgKHlvdSBjYW4gY3VzdG9taXplICIKKyJob3cgbXVjaCBkaWZmZXJlbmNlIHlvdSBjYW4gdG9sZXJhdGUsIHNlZSB0aGUgQjwtYz4gb3B0aW9uKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQyCisjLCBuby13cmFwCittc2dpZCAiTUFJTlRBSU5JTkcgU1lNQk9MUyBGSUxFUyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo1NQorbXNnaWQgIiIKKyJUaGUgc3ltYm9scyBmaWxlcyBhcmUgcmVhbGx5IHVzZWZ1bCBvbmx5IGlmIHRoZXkgcmVmbGVjdCB0aGUgZXZvbHV0aW9uIG9mICIKKyJ0aGUgcGFja2FnZSB0aHJvdWdoIHNldmVyYWwgcmVsZWFzZXMuIFRodXMgdGhlIG1haW50YWluZXIgaGFzIHRvIHVwZGF0ZSB0aGVtICIKKyJldmVyeSB0aW1lIHRoYXQgYSBuZXcgc3ltYm9sIGlzIGFkZGVkIHNvIHRoYXQgaXRzIGFzc29jaWF0ZWQgbWluaW1hbCB2ZXJzaW9uICIKKyJtYXRjaGVzIHJlYWxpdHkuIFRvIGRvIHRoaXMgcHJvcGVybHkgaGUgY2FuIHVzZSB0aGUgZGlmZnMgY29udGFpbmVkIGluIHRoZSAiCisiYnVpbGQgbG9ncy4gSW4gbW9zdCBjYXNlcywgdGhlIGRpZmYgYXBwbGllcyBkaXJlY3RseSB0byBoaXMgZGViaWFuLyIKKyJJPHBhY2thZ2U+LnN5bWJvbHMgZmlsZS4gVGhhdCBzYWlkLCBmdXJ0aGVyIHR3ZWFrcyBhcmUgdXN1YWxseSBuZWVkZWQ6IGl0J3MgIgorInJlY29tbWVuZGVkIGZvciBleGFtcGxlIHRvIGRyb3AgdGhlIERlYmlhbiByZXZpc2lvbiBmcm9tIHRoZSBtaW5pbWFsIHZlcnNpb24gIgorInNvIHRoYXQgYmFja3BvcnRzIHdpdGggYSBsb3dlciB2ZXJzaW9uIG51bWJlciBidXQgdGhlIHNhbWUgdXBzdHJlYW0gdmVyc2lvbiAiCisic3RpbGwgc2F0aXNmeSB0aGUgZ2VuZXJhdGVkIGRlcGVuZGVuY2llcy4gIElmIHRoZSBEZWJpYW4gcmV2aXNpb24gY2FuJ3QgYmUgIgorImRyb3BwZWQgYmVjYXVzZSB0aGUgc3ltYm9sIHJlYWxseSBnb3QgYWRkZWQgYnkgdGhlIERlYmlhbiBzcGVjaWZpYyBjaGFuZ2UsICIKKyJ0aGVuIG9uZSBzaG91bGQgc3VmZml4IHRoZSB2ZXJzaW9uIHdpdGggXCJ+XCIuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjU5Cittc2dpZCAiIgorIkJlZm9yZSBhcHBseWluZyBhbnkgcGF0Y2ggdG8gdGhlIHN5bWJvbHMgZmlsZSwgdGhlIG1haW50YWluZXIgc2hvdWxkIGRvdWJsZS0iCisiY2hlY2sgdGhhdCBpdCdzIHNhbmUuIFB1YmxpYyBzeW1ib2xzIGFyZSBub3Qgc3VwcG9zZWQgdG8gZGlzYXBwZWFyLCBzbyB0aGUgIgorInBhdGNoIHNob3VsZCBpZGVhbGx5IG9ubHkgYWRkIG5ldyBsaW5lcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NjQKK21zZ2lkICIiCisiTm90ZSB0aGF0IHlvdSBjYW4gcHV0IGNvbW1lbnRzIGluIHN5bWJvbHMgZmlsZXM6IGFueSBsaW5lIHdpdGggJyMnIGFzIHRoZSAiCisiZmlyc3QgY2hhcmFjdGVyIGlzIGEgY29tbWVudCBleGNlcHQgaWYgaXQgc3RhcnRzIHdpdGggJyNpbmNsdWRlJyAoc2VlICIKKyJzZWN0aW9uIEI8VXNpbmcgaW5jbHVkZXM+KS4gTGluZXMgc3RhcnRpbmcgd2l0aCAnI01JU1NJTkc6JyBhcmUgc3BlY2lhbCAiCisiY29tbWVudHMgZG9jdW1lbnRpbmcgc3ltYm9scyB0aGF0IGhhdmUgZGlzYXBwZWFyZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLWdlbnN5bWJvbHMuMTo2NAorIywgbm8td3JhcAorbXNnaWQgIlVzaW5nICNQQUNLQUdFIyBzdWJzdGl0dXRpb24iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NzIKK21zZ2lkICIiCisiSW4gc29tZSByYXJlIGNhc2VzLCB0aGUgbmFtZSBvZiB0aGUgbGlicmFyeSB2YXJpZXMgYmV0d2VlbiBhcmNoaXRlY3R1cmVzLiAgIgorIlRvIGF2b2lkIGhhcmRjb2RpbmcgdGhlIG5hbWUgb2YgdGhlIHBhY2thZ2UgaW4gdGhlIHN5bWJvbHMgZmlsZSwgeW91IGNhbiB1c2UgIgorInRoZSBtYXJrZXIgSTwjUEFDS0FHRSM+LiBJdCB3aWxsIGJlIHJlcGxhY2VkIGJ5IHRoZSByZWFsIHBhY2thZ2UgbmFtZSBkdXJpbmcgIgorImluc3RhbGxhdGlvbiBvZiB0aGUgc3ltYm9scyBmaWxlcy4gQ29udHJhcnkgdG8gdGhlIEk8I01JTlZFUiM+IG1hcmtlciwgIgorIkk8I1BBQ0tBR0UjPiB3aWxsIG5ldmVyIGFwcGVhciBpbiBhIHN5bWJvbHMgZmlsZSBpbnNpZGUgYSBiaW5hcnkgcGFja2FnZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjcyCisjLCBuby13cmFwCittc2dpZCAiVXNpbmcgc3ltYm9sIHRhZ3MiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NzkKK21zZ2lkICIiCisiU3ltYm9sIHRhZ2dpbmcgaXMgdXNlZnVsIGZvciBtYXJraW5nIHN5bWJvbHMgdGhhdCBhcmUgc3BlY2lhbCBpbiBzb21lIHdheS4gICIKKyJBbnkgc3ltYm9sIGNhbiBoYXZlIGFuIGFyYml0cmFyeSBudW1iZXIgb2YgdGFncyBhc3NvY2lhdGVkIHdpdGggaXQuIFdoaWxlICIKKyJhbGwgdGFncyBhcmUgcGFyc2VkIGFuZCBzdG9yZWQsIG9ubHkgYSBzb21lIG9mIHRoZW0gYXJlIHVuZGVyc3Rvb2QgYnkgQjxkcGtnLSIKKyJnZW5zeW1ib2xzPiBhbmQgdHJpZ2dlciBzcGVjaWFsIGhhbmRsaW5nIG9mIHRoZSBzeW1ib2xzLiBTZWUgc3Vic2VjdGlvbiAiCisiQjxTdGFuZGFyZCBzeW1ib2wgdGFncz4gZm9yIHJlZmVyZW5jZSBvZiB0aGVzZSB0YWdzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo5MQorbXNnaWQgIiIKKyJUYWcgc3BlY2lmaWNhdGlvbiBjb21lcyByaWdodCBiZWZvcmUgdGhlIHN5bWJvbCBuYW1lIChubyB3aGl0ZXNwYWNlIGlzICIKKyJhbGxvd2VkIGluIGJldHdlZW4pLiBJdCBhbHdheXMgc3RhcnRzIHdpdGggYW4gb3BlbmluZyBicmFja2V0IEI8KD4sIGVuZHMgIgorIndpdGggYSBjbG9zaW5nIGJyYWNrZXQgQjwpPiBhbmQgbXVzdCBjb250YWluIGF0IGxlYXN0IG9uZSB0YWcuIE11bHRpcGxlIHRhZ3MgIgorImFyZSBzZXBhcmF0ZWQgYnkgdGhlIEI8fD4gY2hhcmFjdGVyLiBFYWNoIHRhZyBjYW4gb3B0aW9uYWxseSBoYXZlIGEgdmFsdWUgIgorIndoaWNoIGlzIHNlcGFyYXRlZCBmb3JtIHRoZSB0YWcgbmFtZSBieSB0aGUgQjw9PiBjaGFyYWN0ZXIuIFRhZyBuYW1lcyBhbmQgIgorInZhbHVlcyBjYW4gYmUgYXJiaXRyYXJ5IHN0cmluZ3MgZXhjZXB0IHRoZXkgY2Fubm90IGNvbnRhaW4gYW55IG9mIHRoZSAiCisic3BlY2lhbCBCPCk+IEI8fD4gQjw9PiBjaGFyYWN0ZXJzLiBTeW1ib2wgbmFtZXMgZm9sbG93aW5nIGEgdGFnICIKKyJzcGVjaWZpY2F0aW9uIGNhbiBvcHRpb25hbGx5IGJlIHF1b3RlZCB3aXRoIGVpdGhlciBCPCc+IG9yIEI8XCI+IGNoYXJhY3RlcnMgIgorInRvIGFsbG93IHdoaXRlc3BhY2VzIGluIHRoZW0uIEhvd2V2ZXIsIGlmIHRoZXJlIGFyZSBubyB0YWdzIHNwZWNpZmllZCBmb3IgIgorInRoZSBzeW1ib2wsIHF1b3RlcyBhcmUgdHJlYXRlZCBhcyBwYXJ0IG9mIHRoZSBzeW1ib2wgbmFtZSB3aGljaCBjb250aW51ZXMgdXAgIgorInVudGlsIHRoZSBmaXJzdCBzcGFjZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6OTUKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiICh0YWcxPWkgYW0gbWFya2VkfHRhZyBuYW1lIHdpdGggc3BhY2UpXCJ0YWdnZWQgcXVvdGVkIHN5bWJvbFwiQEJhc2UgMS4wXG4iCisiIChvcHRpb25hbCl0YWdnZWRfdW5xdW90ZWRfc3ltYm9sQEJhc2UgMS4wIDFcbiIKKyIgdW50YWdnZWRfc3ltYm9sQEJhc2UgMS4wXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTAxCittc2dpZCAiIgorIlRoZSBmaXJzdCBzeW1ib2wgaW4gdGhlIGV4YW1wbGUgaXMgbmFtZWQgSTx0YWdnZWQgcXVvdGVkIHN5bWJvbD4gYW5kIGhhcyB0d28gIgorInRhZ3M6IEk8dGFnMT4gd2l0aCB2YWx1ZSBJPGkgYW0gbWFya2VkPiBhbmQgSTx0YWcgbmFtZSB3aXRoIHNwYWNlPiB0aGF0IGhhcyAiCisibm8gdmFsdWUuIFRoZSBzZWNvbmQgc3ltYm9sIG5hbWVkIEk8dGFnZ2VkX3VucXVvdGVkX3N5bWJvbD4gaXMgb25seSB0YWdnZWQgIgorIndpdGggdGhlIHRhZyBuYW1lZCBJPG9wdGlvbmFsPi4gVGhlIGxhc3Qgc3ltYm9sIGlzIGFuIGV4YW1wbGUgb2YgdGhlIG5vcm1hbCAiCisidW50YWdnZWQgc3ltYm9sLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToxMTMKK21zZ2lkICIiCisiU2luY2Ugc3ltYm9sIHRhZ3MgYXJlIGFuIGV4dGVuc2lvbiBvZiB0aGUgSTxkZWItc3ltYm9scyg1KT4gZm9ybWF0LCB0aGV5IGNhbiAiCisib25seSBiZSBwYXJ0IG9mIHRoZSBzeW1ib2xzIGZpbGVzIHVzZWQgaW4gc291cmNlIHBhY2thZ2VzICh0aG9zZSBmaWxlcyAiCisic2hvdWxkIHRoZW4gYmUgc2VlbiBhcyB0ZW1wbGF0ZXMgdXNlZCB0byBidWlsZCB0aGUgc3ltYm9scyBmaWxlcyB0aGF0IGFyZSAiCisiZW1iZWRkZWQgaW4gYmluYXJ5IHBhY2thZ2VzKS4gV2hlbiBCPGRwa2ctZ2Vuc3ltYm9scz4gaXMgY2FsbGVkIHdpdGhvdXQgdGhlICIKKyJJPC10PiBvcHRpb24sIGl0IHdpbGwgb3V0cHV0IHN5bWJvbHMgZmlsZXMgY29tcGF0aWJsZSB0byB0aGUgSTxkZWItc3ltYm9scyg1KSIKKyI+IGZvcm1hdDogaXQgZnVsbHkgcHJvY2Vzc2VzIHN5bWJvbHMgYWNjb3JkaW5nIHRvIHRoZSByZXF1aXJlbWVudHMgb2YgdGhlaXIgIgorInN0YW5kYXJkIHRhZ3MgYW5kIHN0cmlwcyBhbGwgdGFncyBmcm9tIHRoZSBvdXRwdXQuIE9uIHRoZSBjb250cmFyeSwgaW4gIgorInRlbXBsYXRlIG1vZGUgKEk8LXQ+KSBhbGwgc3ltYm9scyBhbmQgdGhlaXIgdGFncyAoYm90aCBzdGFuZGFyZCBhbmQgdW5rbm93biAiCisib25lcykgIGFyZSBrZXB0IGluIHRoZSBvdXRwdXQgYW5kIGFyZSB3cml0dGVuIGluIHRoZWlyIG9yaWdpbmFsIGZvcm0gYXMgdGhleSAiCisid2VyZSBsb2FkZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLWdlbnN5bWJvbHMuMToxMTMKKyMsIG5vLXdyYXAKK21zZ2lkICJTdGFuZGFyZCBzeW1ib2wgdGFncyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTE0CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8bm90LWluc3RhbGxlZD4iCittc2dpZCAiQjxvcHRpb25hbD4iCittc2dzdHIgIkI8bm90LWluc3RhbGxlZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjEyNAorbXNnaWQgIiIKKyJBIHN5bWJvbCBtYXJrZWQgYXMgb3B0aW9uYWwgY2FuIGRpc2FwcGVhciBmcm9tIHRoZSBsaWJyYXJ5IGF0IGFueSB0aW1lIGFuZCAiCisidGhhdCB3aWxsIG5ldmVyIGNhdXNlIEI8ZHBrZy1nZW5zeW1ib2xzPiB0byBmYWlsLiBIb3dldmVyLCBkaXNhcHBlYXJlZCAiCisib3B0aW9uYWwgc3ltYm9scyB3aWxsIGNvbnRpbnVvdXNseSBhcHBlYXIgYXMgTUlTU0lORyBpbiB0aGUgZGlmZiBpbiBlYWNoIG5ldyAiCisicGFja2FnZSByZXZpc2lvbi4gIFRoaXMgYmVoYXZpb3VyIHNlcnZlcyBhcyBhIHJlbWluZGVyIGZvciB0aGUgbWFpbnRhaW5lciAiCisidGhhdCBzdWNoIGEgc3ltYm9sIG5lZWRzIHRvIGJlIHJlbW92ZWQgZnJvbSB0aGUgc3ltYm9sIGZpbGUgb3IgcmVhZGRlZCB0byAiCisidGhlIGxpYnJhcnkuIFdoZW4gdGhlIG9wdGlvbmFsIHN5bWJvbCwgd2hpY2ggd2FzIHByZXZpb3VzbHkgZGVjbGFyZWQgYXMgIgorIk1JU1NJTkcsIHN1ZGRlbmx5IHJlYXBwZWFycyBpbiB0aGUgbmV4dCByZXZpc2lvbiwgaXQgd2lsbCBiZSB1cGdyYWRlZCBiYWNrICIKKyJ0byB0aGUgXCJleGlzdGluZ1wiIHN0YXR1cyB3aXRoIGl0cyBtaW5pbXVtIHZlcnNpb24gdW5jaGFuZ2VkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToxMjkKK21zZ2lkICIiCisiVGhpcyB0YWcgaXMgdXNlZnVsIGZvciBzeW1ib2xzIHdoaWNoIGFyZSBwcml2YXRlIHdoZXJlIHRoZWlyIGRpc2FwcGVhcmFuY2UgIgorImRvIG5vdCBjYXVzZSBBQkkgYnJlYWthZ2UuIEZvciBleGFtcGxlLCBtb3N0IG9mIEMrKyB0ZW1wbGF0ZSBpbnN0YW50aWF0aW9ucyAiCisiZmFsbCBpbnRvIHRoaXMgY2F0ZWdvcnkuIExpa2UgYW55IG90aGVyIHRhZywgdGhpcyBvbmUgbWF5IGFsc28gaGF2ZSBhbiAiCisiYXJiaXRyYXJ5IHZhbHVlOiBpdCBjb3VsZCBiZSB1c2VkIHRvIGluZGljYXRlIHdoeSB0aGUgc3ltYm9sIGlzIGNvbnNpZGVyZWQgIgorIm9wdGlvbmFsLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTI5CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8YXJjaD0+STxhcmNoaXRlY3R1cmUgbGlzdD4iCittc2dzdHIgIkI8ZHBrZyAtLXByaW50LWFyY2hpdGVjdHVyZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjE0MgorbXNnaWQgIiIKKyJUaGlzIHRhZyBhbGxvd3Mgb25lIHRvIHJlc3RyaWN0IHRoZSBzZXQgb2YgYXJjaGl0ZWN0dXJlcyB3aGVyZSB0aGUgc3ltYm9sIGlzICIKKyJzdXBwb3NlZCB0byBleGlzdC4gV2hlbiB0aGUgc3ltYm9scyBsaXN0IGlzIHVwZGF0ZWQgd2l0aCB0aGUgc3ltYm9scyAiCisiZGlzY292ZXJlZCBpbiB0aGUgbGlicmFyeSwgYWxsIGFyY2gtc3BlY2lmaWMgc3ltYm9scyB3aGljaCBkbyBub3QgY29uY2VybiAiCisidGhlIGN1cnJlbnQgaG9zdCBhcmNoaXRlY3R1cmUgYXJlIHRyZWF0ZWQgYXMgaWYgdGhleSBkaWQgbm90IGV4aXN0LiBJZiBhbiAiCisiYXJjaC1zcGVjaWZpYyBzeW1ib2wgbWF0Y2hpbmcgdGhlIGN1cnJlbnQgaG9zdCBhcmNoaXRlY3R1cmUgZG9lcyBub3QgZXhpc3QgIgorImluIHRoZSBsaWJyYXJ5LCBub3JtYWwgcHJvY2VkdXJlcyBmb3IgbWlzc2luZyBzeW1ib2xzIGFwcGx5IGFuZCBpdCBtYXkgY2F1c2UgIgorIkI8ZHBrZy1nZW5zeW1ib2xzPiB0byBmYWlsLiBPbiB0aGUgb3RoZXIgaGFuZCwgaWYgdGhlIGFyY2gtc3BlY2lmaWMgc3ltYm9sICIKKyJpcyBmb3VuZCB3aGVuIGl0IHdhcyBub3Qgc3VwcG9zZWQgdG8gZXhpc3QgKGJlY2F1c2UgdGhlIGN1cnJlbnQgaG9zdCAiCisiYXJjaGl0ZWN0dXJlIGlzIG5vdCBsaXN0ZWQgaW4gdGhlIHRhZyksIGl0IGlzIG1hZGUgYXJjaCBuZXV0cmFsIChpLmUuIHRoZSAiCisiYXJjaCB0YWcgaXMgZHJvcHBlZCBhbmQgdGhlIHN5bWJvbCB3aWxsIGFwcGVhciBpbiB0aGUgZGlmZiBkdWUgdG8gdGhpcyAiCisiY2hhbmdlKSwgYnV0IGl0IGlzIG5vdCBjb25zaWRlcmVkIGFzIG5ldy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTQ4Cittc2dpZCAiIgorIldoZW4gb3BlcmF0aW5nIGluIHRoZSBkZWZhdWx0IG5vbi10ZW1wbGF0ZSBtb2RlLCBhbW9uZyBhcmNoLXNwZWNpZmljIHN5bWJvbHMgIgorIm9ubHkgdGhvc2UgdGhhdCBtYXRjaCB0aGUgY3VycmVudCBob3N0IGFyY2hpdGVjdHVyZSBhcmUgd3JpdHRlbiB0byB0aGUgIgorInN5bWJvbHMgZmlsZS4gT24gdGhlIGNvbnRyYXJ5LCBhbGwgYXJjaC1zcGVjaWZpYyBzeW1ib2xzIChpbmNsdWRpbmcgdGhvc2UgIgorImZyb20gZm9yZWlnbiBhcmNoZXMpIGFyZSBhbHdheXMgd3JpdHRlbiB0byB0aGUgc3ltYm9sIGZpbGUgd2hlbiBvcGVyYXRpbmcgaW4gIgorInRlbXBsYXRlIG1vZGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjE1NAorbXNnaWQgIiIKKyJUaGUgZm9ybWF0IG9mIEk8YXJjaGl0ZWN0dXJlIGxpc3Q+IGlzIHRoZSBzYW1lIGFzIHRoZSBvbmUgdXNlZCBpbiB0aGUgIgorIkk8QnVpbGQtRGVwZW5kcz4gZmllbGQgb2YgSTxkZWJpYW4vY29udHJvbD4gKGV4Y2VwdCB0aGUgZW5jbG9zaW5nIHNxdWFyZSAiCisiYnJhY2tldHMgW10pLiBGb3IgZXhhbXBsZSwgdGhlIGZpcnN0IHN5bWJvbCBmcm9tIHRoZSBsaXN0IGJlbG93IHdpbGwgYmUgIgorImNvbnNpZGVyZWQgb25seSBvbiBhbHBoYSwgYW1kNjQsIGtmcmVlYnNkLWFtZDY0IGFuZCBpYTY0IGFyY2hpdGVjdHVyZXMgd2hpbGUgIgorInRoZSBzZWNvbmQgb25lIGFueXdoZXJlIGV4Y2VwdCBvbiBhcm1lbC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTU3CisjLCBuby13cmFwCittc2dpZCAiIgorIiAoYXJjaD1hbHBoYSBhbWQ2NCBrZnJlZWJzZC1hbWQ2NCBpYTY0KWFfNjRiaXRfc3BlY2lmaWNfc3ltYm9sQEJhc2UgMS4wXG4iCisiIChhcmNoPSFhcm1lbClzeW1ib2xfYXJtZWxfZG9lc19ub3RfaGF2ZUBCYXNlIDEuMFxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbnN5bWJvbHMuMToxNTcKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxpZ25vcmUtYmxhY2tsaXN0PiIKK21zZ3N0ciAiQjwtLW5vY2hlY2s+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToxNjUKK21zZ2lkICIiCisiZHBrZy1nZW5zeW1ib2xzIGhhcyBhbiBpbnRlcm5hbCBibGFja2xpc3Qgb2Ygc3ltYm9scyB0aGF0IHNob3VsZCBub3QgYXBwZWFyICIKKyJpbiBzeW1ib2xzIGZpbGVzIGFzIHRoZXkgYXJlIHVzdWFsbHkgb25seSBzaWRlLWVmZmVjdHMgb2YgaW1wbGVtZW50YXRpb24gIgorImRldGFpbHMgb2YgdGhlIHRvb2xjaGFpbi4gSWYgZm9yIHNvbWUgcmVhc29uLCB5b3UgcmVhbGx5IHdhbnQgb25lIG9mIHRob3NlICIKKyJzeW1ib2xzIHRvIGJlIGluY2x1ZGVkIGluIHRoZSBzeW1ib2xzIGZpbGUsIHlvdSBzaG91bGQgdGFnIHRoZSBzeW1ib2wgd2l0aCAiCisiQjxpZ25vcmUtYmxhY2tsaXN0Pi4gSXQgY2FuIGJlIG5lY2Vzc2FyeSBmb3Igc29tZSBsb3cgbGV2ZWwgdG9vbGNoYWluICIKKyJsaWJyYXJpZXMgbGlrZSBsaWJnY2MuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbnN5bWJvbHMuMToxNjUgZHBrZy1nZW5zeW1ib2xzLjE6MjAyCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8YysrPiIKK21zZ3N0ciAiQjwtQj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjE2OQorbXNnaWQgIiIKKyJEZW5vdGVzIEk8YysrPiBzeW1ib2wgcGF0dGVybi4gU2VlIEI8VXNpbmcgc3ltYm9sIHBhdHRlcm5zPiBzdWJzZWN0aW9uIGJlbG93LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTY5IGRwa2ctZ2Vuc3ltYm9scy4xOjIzMworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPHN5bXZlcj4iCittc2dzdHIgIkI8LUI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToxNzMKK21zZ2lkICIiCisiRGVub3RlcyBJPHN5bXZlcj4gKHN5bWJvbCB2ZXJzaW9uKSBzeW1ib2wgcGF0dGVybi4gU2VlIEI8VXNpbmcgc3ltYm9sICIKKyJwYXR0ZXJucz4gc3Vic2VjdGlvbiBiZWxvdy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjE3MyBkcGtnLWdlbnN5bWJvbHMuMToyNTgKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxwdXJnZT4iCittc2dpZCAiQjxyZWdleD4iCittc2dzdHIgIkI8cHVyZ2U+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToxNzcKK21zZ2lkICIiCisiRGVub3RlcyBJPHJlZ2V4PiBzeW1ib2wgcGF0dGVybi4gU2VlIEI8VXNpbmcgc3ltYm9sIHBhdHRlcm5zPiBzdWJzZWN0aW9uICIKKyJiZWxvdy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjE3NworIywgbm8td3JhcAorbXNnaWQgIlVzaW5nIHN5bWJvbCBwYXR0ZXJucyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToxODUKK21zZ2lkICIiCisiVW5saWtlIGEgc3RhbmRhcmQgc3ltYm9sIHNwZWNpZmljYXRpb24sIGEgcGF0dGVybiBtYXkgY292ZXIgbXVsdGlwbGUgcmVhbCAiCisic3ltYm9scyBmcm9tIHRoZSBsaWJyYXJ5LiBCPGRwa2ctZ2Vuc3ltYm9scz4gd2lsbCBhdHRlbXB0IHRvIG1hdGNoIGVhY2ggIgorInBhdHRlcm4gYWdhaW5zdCBlYWNoIHJlYWwgc3ltYm9sIHRoYXQgZG9lcyBJPG5vdD4gaGF2ZSBhIHNwZWNpZmljIHN5bWJvbCAiCisiY291bnRlcnBhcnQgZGVmaW5lZCBpbiB0aGUgc3ltYm9sIGZpbGUuIFdoZW5ldmVyIHRoZSBmaXJzdCBtYXRjaGluZyBwYXR0ZXJuICIKKyJpcyBmb3VuZCwgYWxsIGl0cyB0YWdzIGFuZCBwcm9wZXJ0aWVzIHdpbGwgYmUgdXNlZCBhcyBhIGJhc2lzIHNwZWNpZmljYXRpb24gIgorIm9mIHRoZSBzeW1ib2wuIElmIG5vbmUgb2YgdGhlIHBhdHRlcm5zIG1hdGNoZXMsIHRoZSBzeW1ib2wgd2lsbCBiZSAiCisiY29uc2lkZXJlZCBhcyBuZXcuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjE5MworbXNnaWQgIiIKKyJBIHBhdHRlcm4gaXMgY29uc2lkZXJlZCBsb3N0IGlmIGl0IGRvZXMgbm90IG1hdGNoIGFueSBzeW1ib2wgaW4gdGhlIGxpYnJhcnkuICIKKyJCeSBkZWZhdWx0IHRoaXMgd2lsbCB0cmlnZ2VyIGEgQjxkcGtnLWdlbnN5bWJvbHM+IGZhaWx1cmUgdW5kZXIgSTwtYzE+IG9yICIKKyJoaWdoZXIgbGV2ZWwuIEhvd2V2ZXIsIGlmIHRoZSBmYWlsdXJlIGlzIHVuZGVzaXJlZCwgdGhlIHBhdHRlcm4gbWF5IGJlICIKKyJtYXJrZWQgd2l0aCB0aGUgSTxvcHRpb25hbD4gdGFnLiBUaGVuIGlmIHRoZSBwYXR0ZXJuIGRvZXMgbm90IG1hdGNoICIKKyJhbnl0aGluZywgaXQgd2lsbCBvbmx5IGFwcGVhciBpbiB0aGUgZGlmZiBhcyBNSVNTSU5HLiBNb3Jlb3ZlciwgbGlrZSBhbnkgIgorInN5bWJvbCwgdGhlIHBhdHRlcm4gbWF5IGJlIGxpbWl0ZWQgdG8gdGhlIHNwZWNpZmljIGFyY2hpdGVjdHVyZXMgd2l0aCB0aGUgIgorIkk8YXJjaD4gdGFnLiBQbGVhc2UgcmVmZXIgdG8gQjxTdGFuZGFyZCBzeW1ib2wgdGFncz4gc3Vic2VjdGlvbiBhYm92ZSBmb3IgIgorIm1vcmUgaW5mb3JtYXRpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjIwMAorbXNnaWQgIiIKKyJQYXR0ZXJucyBhcmUgYW4gZXh0ZW5zaW9uIG9mIHRoZSBJPGRlYi1zeW1ib2xzKDUpPiBmb3JtYXQgaGVuY2UgdGhleSBhcmUgIgorIm9ubHkgdmFsaWQgaW4gc3ltYm9sIGZpbGUgdGVtcGxhdGVzLiBQYXR0ZXJuIHNwZWNpZmljYXRpb24gc3ludGF4IGlzIG5vdCBhbnkgIgorImRpZmZlcmVudCBmcm9tIHRoZSBvbmUgb2YgYSBzcGVjaWZpYyBzeW1ib2wuIEhvd2V2ZXIsIHN5bWJvbCBuYW1lIHBhcnQgb2YgIgorInRoZSBzcGVjaWZpY2F0aW9uIHNlcnZlcyBhcyBhbiBleHByZXNzaW9uIHRvIGJlIG1hdGNoZWQgYWdhaW5zdCAiCisiSTxuYW1lQHZlcnNpb24+IG9mIHRoZSByZWFsIHN5bWJvbC4gSW4gb3JkZXIgdG8gZGlzdGluZ3Vpc2ggYW1vbmcgZGlmZmVyZW50ICIKKyJwYXR0ZXJuIHR5cGVzLCBhIHBhdHRlcm4gd2lsbCB0eXBpY2FsbHkgYmUgdGFnZ2VkIHdpdGggYSBzcGVjaWFsIHRhZy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjAyCittc2dpZCAiQXQgdGhlIG1vbWVudCwgQjxkcGtnLWdlbnN5bWJvbHM+IHN1cHBvcnRzIHRocmVlIGJhc2ljIHBhdHRlcm4gdHlwZXM6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjIxNAorbXNnaWQgIiIKKyJUaGlzIHBhdHRlcm4gaXMgZGVub3RlZCBieSB0aGUgSTxjKys+IHRhZy4gSXQgbWF0Y2hlcyBvbmx5IEMrKyBzeW1ib2xzIGJ5ICIKKyJ0aGVpciBkZW1hbmdsZWQgc3ltYm9sIG5hbWUgKGFzIGVtaXR0ZWQgYnkgQjxjKytmaWx0PigxKSB1dGlsaXR5KS4gVGhpcyAiCisicGF0dGVybiBpcyB2ZXJ5IGhhbmR5IGZvciBtYXRjaGluZyBzeW1ib2xzIHdoaWNoIG1hbmdsZWQgbmFtZXMgbWlnaHQgdmFyeSAiCisiYWNyb3NzIGRpZmZlcmVudCBhcmNoaXRlY3R1cmVzIHdoaWxlIHRoZWlyIGRlbWFuZ2xlZCBuYW1lcyByZW1haW4gdGhlIHNhbWUuICIKKyJPbmUgZ3JvdXAgb2Ygc3VjaCBzeW1ib2xzIGlzIEk8bm9uLXZpcnR1YWwgdGh1bmtzPiB3aGljaCBoYXZlIGFyY2hpdGVjdHVyZSAiCisic3BlY2lmaWMgb2Zmc2V0cyBlbWJlZGRlZCBpbiB0aGVpciBtYW5nbGVkIG5hbWVzLiBBIGNvbW1vbiBpbnN0YW5jZSBvZiB0aGlzICIKKyJjYXNlIGlzIGEgdmlydHVhbCBkZXN0cnVjdG9yIHdoaWNoIHVuZGVyIGRpYW1vbmQgaW5oZXJpdGFuY2UgbmVlZHMgYSBub24tIgorInZpcnR1YWwgdGh1bmsgc3ltYm9sLiBGb3IgZXhhbXBsZSwgZXZlbiBpZiBfWlRobjhfTjNOU0I2Q2xhc3NERDFFdkBCYXNlIG9uICIKKyIzMmJpdCBhcmNoaXRlY3R1cmVzIHdpbGwgcHJvYmFibHkgYmUgX1pUaG4xNl9OM05TQjZDbGFzc0REMUV2QEJhc2Ugb24gNjRiaXQgIgorIm9uZXMsIGl0IGNhbiBiZSBtYXRjaGVkIHdpdGggYSBzaW5nbGUgSTxjKys+IHBhdHRlcm46IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjIyMAorIywgbm8td3JhcAorbXNnaWQgIiIKKyJsaWJkdW1teS5zby4xIGxpYmR1bW15MSAjTUlOVkVSI1xuIgorIiBbLi4uXVxuIgorIiAoYysrKVwibm9uLXZpcnR1YWwgdGh1bmsgdG8gTlNCOjpDbGFzc0Q6On5DbGFzc0QoKUBCYXNlXCIgMS4wXG4iCisiIFsuLi5dXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjIyCittc2dpZCAiIgorIlRoZSBkZW1hbmdsZWQgbmFtZSBhYm92ZSBjYW4gYmUgb2J0YWluZWQgYnkgZXhlY3V0aW5nIHRoZSBmb2xsb3dpbmcgY29tbWFuZDoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjI0CisjLCBuby13cmFwCittc2dpZCAiICQgZWNobyAnX1pUaG44X04zTlNCNkNsYXNzREQxRXZAQmFzZScgfCBjKytmaWx0XG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjMyCittc2dpZCAiIgorIlBsZWFzZSBub3RlIHRoYXQgd2hpbGUgbWFuZ2xlZCBuYW1lIGlzIHVuaXF1ZSBpbiB0aGUgbGlicmFyeSBieSBkZWZpbml0aW9uLCAiCisidGhpcyBpcyBub3QgbmVjZXNzYXJpbHkgdHJ1ZSBmb3IgZGVtYW5nbGVkIG5hbWVzLiBBIGNvdXBsZSBvZiBkaXN0aW5jdCByZWFsICIKKyJzeW1ib2xzIG1heSBoYXZlIHRoZSBzYW1lIGRlbWFuZ2xlZCBuYW1lLiBGb3IgZXhhbXBsZSwgdGhhdCdzIHRoZSBjYXNlIHdpdGggIgorIm5vbi12aXJ0dWFsIHRodW5rIHN5bWJvbHMgaW4gY29tcGxleCBpbmhlcml0YW5jZSBjb25maWd1cmF0aW9ucyBvciB3aXRoIG1vc3QgIgorImNvbnN0cnVjdG9ycyBhbmQgZGVzdHJ1Y3RvcnMgKHNpbmNlIGcrKyB0eXBpY2FsbHkgZ2VuZXJhdGVzIHR3byByZWFsIHN5bWJvbHMgIgorImZvciB0aGVtKS4gSG93ZXZlciwgYXMgdGhlc2UgY29sbGlzaW9ucyBoYXBwZW4gb24gdGhlIEFCSSBsZXZlbCwgdGhleSBzaG91bGQgIgorIm5vdCBkZWdyYWRlIHF1YWxpdHkgb2YgdGhlIHN5bWJvbCBmaWxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyMzkKK21zZ2lkICIiCisiVGhpcyBwYXR0ZXJuIGlzIGRlbm90ZWQgYnkgdGhlIEk8c3ltdmVyPiB0YWcuIFdlbGwgbWFpbnRhaW5lZCBsaWJyYXJpZXMgaGF2ZSAiCisidmVyc2lvbmVkIHN5bWJvbHMgd2hlcmUgZWFjaCB2ZXJzaW9uIGNvcnJlc3BvbmRzIHRvIHRoZSB1cHN0cmVhbSB2ZXJzaW9uICIKKyJ3aGVyZSB0aGUgc3ltYm9sIGdvdCBhZGRlZC4gSWYgdGhhdCdzIHRoZSBjYXNlLCB5b3UgY2FuIHVzZSBhIEk8c3ltdmVyPiAiCisicGF0dGVybiB0byBtYXRjaCBhbnkgc3ltYm9sIGFzc29jaWF0ZWQgdG8gdGhlIHNwZWNpZmljIHZlcnNpb24uIEZvciBleGFtcGxlOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyNDYKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisibGliYy5zby42IGxpYmM2ICNNSU5WRVIjXG4iCisiIChzeW12ZXIpR0xJQkNfMi4wIDIuMFxuIgorIiBbLi4uXVxuIgorIiAoc3ltdmVyKUdMSUJDXzIuNyAyLjdcbiIKKyIgYWNjZXNzQEdMSUJDXzIuMCAyLjJcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyNTIKK21zZ2lkICIiCisiQWxsIHN5bWJvbHMgYXNzb2NpYXRlZCB3aXRoIHZlcnNpb25zIEdMSUJDXzIuMCBhbmQgR0xJQkNfMi43IHdpbGwgbGVhZCB0byAiCisibWluaW1hbCB2ZXJzaW9uIG9mIDIuMCBhbmQgMi43IHJlc3BlY3RpdmVseSB3aXRoIHRoZSBleGNlcHRpb24gb2YgdGhlIHN5bWJvbCAiCisiYWNjZXNzQEdMSUJDXzIuMC4gVGhlIGxhdHRlciB3aWxsIGxlYWQgdG8gYSBtaW5pbWFsIGRlcGVuZGVuY3kgb24gbGliYzYgIgorInZlcnNpb24gMi4yIGRlc3BpdGUgYmVpbmcgaW4gdGhlIHNjb3BlIG9mIHRoZSBcIihzeW12ZXIpR0xJQkNfMi4wXCIgcGF0dGVybiAiCisiYmVjYXVzZSBzcGVjaWZpYyBzeW1ib2xzIHRha2UgcHJlY2VkZW5jZSBvdmVyIHBhdHRlcm5zLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyNTcKK21zZ2lkICIiCisiUGxlYXNlIG5vdGUgdGhhdCB3aGlsZSBvbGQgc3R5bGUgd2lsZGNhcmQgcGF0dGVybnMgKGRlbm90ZWQgYnkgXCIqQHZlcnNpb25cIiAiCisiaW4gdGhlIHN5bWJvbCBuYW1lIGZpZWxkKSBhcmUgc3RpbGwgc3VwcG9ydGVkLCB0aGV5IGhhdmUgYmVlbiBkZXByZWNhdGVkIGJ5ICIKKyJuZXcgc3R5bGUgc3ludGF4IFwiKHN5bXZlcnxvcHRpb25hbCl2ZXJzaW9uXCIuIEZvciBleGFtcGxlLCBcIipAR0xJQkNfMi4wICIKKyIyLjBcIiBzaG91bGQgYmUgd3JpdHRlbiBhcyBcIihzeW12ZXJ8b3B0aW9uYWwpR0xJQkNfMi4wIDIuMFwiIGlmIHRoZSBzYW1lICIKKyJiZWhhdmlvdXIgaXMgbmVlZGVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyNjUKK21zZ2lkICIiCisiUmVndWxhciBleHByZXNzaW9uIHBhdHRlcm5zIGFyZSBkZW5vdGVkIGJ5IHRoZSBJPHJlZ2V4PiB0YWcuIFRoZXkgbWF0Y2ggYnkgIgorInRoZSBwZXJsIHJlZ3VsYXIgZXhwcmVzc2lvbiBzcGVjaWZpZWQgaW4gdGhlIHN5bWJvbCBuYW1lIGZpZWxkLiBBIHJlZ3VsYXIgIgorImV4cHJlc3Npb24gaXMgbWF0Y2hlZCBhcyBpdCBpcywgdGhlcmVmb3JlIGRvIG5vdCBmb3JnZXQgdG8gc3RhcnQgaXQgd2l0aCB0aGUgIgorIkk8Xj4gY2hhcmFjdGVyIG9yIGl0IG1heSBtYXRjaCBhbnkgcGFydCBvZiB0aGUgcmVhbCBzeW1ib2wgSTxuYW1lQHZlcnNpb24+ICIKKyJzdHJpbmcuIEZvciBleGFtcGxlOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyNzAKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisibGliZHVtbXkuc28uMSBsaWJkdW1teTEgI01JTlZFUiNcbiIKKyIgKHJlZ2V4KVwiXm15c3RhY2tfLipAQmFzZSRcIiAxLjBcbiIKKyIgKHJlZ2V4fG9wdGlvbmFsKVwicHJpdmF0ZVwiIDEuMFxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjI3NQorbXNnaWQgIiIKKyJTeW1ib2xzIGxpa2UgXCJteXN0YWNrX25ld0BCYXNlXCIsIFwibXlzdGFja19wdXNoQEJhc2VcIiwgXCJteXN0YWNrX3BvcEBCYXNlIgorIlwiIGV0Yy4gIHdpbGwgYmUgbWF0Y2hlZCBieSB0aGUgZmlyc3QgcGF0dGVybiB3aGlsZSBlLmcuICIKKyJcIm5nX215c3RhY2tfbmV3QEJhc2VcIiB3b24ndC4gIFRoZSBzZWNvbmQgcGF0dGVybiB3aWxsIG1hdGNoIGFsbCBzeW1ib2xzICIKKyJoYXZpbmcgdGhlIHN0cmluZyBcInByaXZhdGVcIiBpbiB0aGVpciBuYW1lcyBhbmQgbWF0Y2hlcyB3aWxsIGluaGVyaXQgIgorIkk8b3B0aW9uYWw+IHRhZyBmcm9tIHRoZSBwYXR0ZXJuLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyODAKK21zZ2lkICIiCisiQmFzaWMgcGF0dGVybnMgbGlzdGVkIGFib3ZlIGNhbiBiZSBjb21iaW5lZCB3aGVyZSBpdCBtYWtlcyBzZW5zZS4gSW4gdGhhdCAiCisiY2FzZSwgdGhleSBhcmUgcHJvY2Vzc2VkIGluIHRoZSBvcmRlciBpbiB3aGljaCB0aGUgdGFncyBhcmUgc3BlY2lmaWVkLiBGb3IgIgorImV4YW1wbGUsIGJvdGgiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjgzCisjLCBuby13cmFwCittc2dpZCAiIgorIiAoYysrfHJlZ2V4KVwiXk5TQTo6Q2xhc3NBOjpQcml2YXRlOjpwcml2bWV0aG9kXFxlZFxcZShpbnRcXGUpQEJhc2VcIiAxLjBcbiIKKyIgKHJlZ2V4fGMrKylOM05TQTZDbGFzc0E3UHJpdmF0ZTExcHJpdm1ldGhvZFxcZWRFaUBCYXNlIDEuMFxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjI5MworbXNnaWQgIiIKKyJ3aWxsIG1hdGNoIHN5bWJvbHMgXCJfWk4zTlNBNkNsYXNzQTdQcml2YXRlMTFwcml2bWV0aG9kMUVpQEJhc2VcIiBhbmQgIgorIlwiX1pOM05TQTZDbGFzc0E3UHJpdmF0ZTExcHJpdm1ldGhvZDJFaUBCYXNlXCIuIFdoZW4gbWF0Y2hpbmcgdGhlIGZpcnN0ICIKKyJwYXR0ZXJuLCB0aGUgcmF3IHN5bWJvbCBpcyBmaXJzdCBkZW1hbmdsZWQgYXMgQysrIHN5bWJvbCwgdGhlbiB0aGUgZGVtYW5nbGVkICIKKyJuYW1lIGlzIG1hdGNoZWQgYWdhaW5zdCB0aGUgcmVndWxhciBleHByZXNzaW9uLiBPbiB0aGUgb3RoZXIgaGFuZCwgd2hlbiAiCisibWF0Y2hpbmcgdGhlIHNlY29uZCBwYXR0ZXJuLCByZWd1bGFyIGV4cHJlc3Npb24gaXMgbWF0Y2hlZCBhZ2FpbnN0IHRoZSByYXcgIgorInN5bWJvbCBuYW1lLCB0aGVuIHRoZSBzeW1ib2wgaXMgdGVzdGVkIGlmIGl0IGlzIEMrKyBvbmUgYnkgYXR0ZW1wdGluZyB0byAiCisiZGVtYW5nbGUgaXQuIEEgZmFpbHVyZSBvZiBhbnkgYmFzaWMgcGF0dGVybiB3aWxsIHJlc3VsdCBpbiB0aGUgZmFpbHVyZSBvZiAiCisidGhlIHdob2xlIHBhdHRlcm4uICBUaGVyZWZvcmUsIGZvciBleGFtcGxlLCAiCisiXCJfX04zTlNBNkNsYXNzQTdQcml2YXRlMTFwcml2bWV0aG9kXFxlZEVpQEJhc2VcIiB3aWxsIG5vdCBtYXRjaCBlaXRoZXIgb2YgIgorInRoZSBwYXR0ZXJucyBiZWNhdXNlIGl0IGlzIG5vdCBhIHZhbGlkIEMrKyBzeW1ib2wuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjI5OQorbXNnaWQgIiIKKyJJbiBnZW5lcmFsLCBhbGwgcGF0dGVybnMgYXJlIGRpdmlkZWQgaW50byB0d28gZ3JvdXBzOiBhbGlhc2VzIChiYXNpYyBJPGMrKz4gIgorImFuZCBJPHN5bXZlcj4pIGFuZCBnZW5lcmljIHBhdHRlcm5zIChJPHJlZ2V4PiwgYWxsIGNvbWJpbmF0aW9ucyBvZiBtdWx0aXBsZSAiCisiYmFzaWMgcGF0dGVybnMpLiBNYXRjaGluZyBvZiBiYXNpYyBhbGlhcy1iYXNlZCBwYXR0ZXJucyBpcyBmYXN0IChPKDEpKSAgIgorIndoaWxlIGdlbmVyaWMgcGF0dGVybnMgYXJlIE8oTikgKE4gLSBnZW5lcmljIHBhdHRlcm4gY291bnQpIGZvciBlYWNoICIKKyJzeW1ib2wuICBUaGVyZWZvcmUsIGl0IGlzIHJlY29tbWVuZGVkIG5vdCB0byBvdmVydXNlIGdlbmVyaWMgcGF0dGVybnMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjMwNgorbXNnaWQgIiIKKyJXaGVuIG11bHRpcGxlIHBhdHRlcm5zIG1hdGNoIHRoZSBzYW1lIHJlYWwgc3ltYm9sLCBhbGlhc2VzIChmaXJzdCBJPGMrKz4sICIKKyJ0aGVuIEk8c3ltdmVyPikgYXJlIHByZWZlcnJlZCBvdmVyIGdlbmVyaWMgcGF0dGVybnMuIEdlbmVyaWMgcGF0dGVybnMgYXJlICIKKyJtYXRjaGVkIGluIHRoZSBvcmRlciB0aGV5IGFyZSBmb3VuZCBpbiB0aGUgc3ltYm9sIGZpbGUgdGVtcGxhdGUgdW50aWwgdGhlICIKKyJmaXJzdCBzdWNjZXNzLiAgUGxlYXNlIG5vdGUsIGhvd2V2ZXIsIHRoYXQgbWFudWFsIHJlb3JkZXJpbmcgb2YgdGVtcGxhdGUgIgorImZpbGUgZW50cmllcyBpcyBub3QgcmVjb21tZW5kZWQgYmVjYXVzZSBCPGRwa2ctZ2Vuc3ltYm9scz4gZ2VuZXJhdGVzIGRpZmZzICIKKyJiYXNlZCBvbiB0aGUgYWxwaGFudW1lcmljYWwgb3JkZXIgb2YgdGhlaXIgbmFtZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLWdlbnN5bWJvbHMuMTozMDYKKyMsIG5vLXdyYXAKK21zZ2lkICJVc2luZyBpbmNsdWRlcyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozMTEKK21zZ2lkICIiCisiV2hlbiB0aGUgc2V0IG9mIGV4cG9ydGVkIHN5bWJvbHMgZGlmZmVyIGJldHdlZW4gYXJjaGl0ZWN0dXJlcywgaXQgbWF5IGJlY29tZSAiCisiaW5lZmZpY2llbnQgdG8gdXNlIGEgc2luZ2xlIHN5bWJvbCBmaWxlLiBJbiB0aG9zZSBjYXNlcywgYW4gaW5jbHVkZSAiCisiZGlyZWN0aXZlIG1heSBwcm92ZSB0byBiZSB1c2VmdWwgaW4gYSBjb3VwbGUgb2Ygd2F5czoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzE1Cittc2dpZCAiIgorIllvdSBjYW4gZmFjdG9yaXplIHRoZSBjb21tb24gcGFydCBpbiBzb21lIGV4dGVybmFsIGZpbGUgYW5kIGluY2x1ZGUgdGhhdCAiCisiZmlsZSBpbiB5b3VyIEk8cGFja2FnZT4uc3ltYm9scy5JPGFyY2g+IGZpbGUgYnkgdXNpbmcgYW4gaW5jbHVkZSBkaXJlY3RpdmUgIgorImxpa2UgdGhpczoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzE3Cittc2dpZCAiI2luY2x1ZGUgXCJJPHBhY2thZ2VzPi5zeW1ib2xzLmNvbW1vblwiIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjMxOQorbXNnaWQgIlRoZSBpbmNsdWRlIGRpcmVjdGl2ZSBtYXkgYWxzbyBiZSB0YWdnZWQgbGlrZSBhbnkgc3ltYm9sOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozMjEKK21zZ2lkICIodGFnfC4ufHRhZ04pI2luY2x1ZGUgXCJmaWxlLXRvLWluY2x1ZGVcIiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozMjYKK21zZ2lkICIiCisiQXMgYSByZXN1bHQsIGFsbCBzeW1ib2xzIGluY2x1ZGVkIGZyb20gSTxmaWxlLXRvLWluY2x1ZGU+IHdpbGwgYmUgY29uc2lkZXJlZCAiCisidG8gYmUgdGFnZ2VkIHdpdGggSTx0YWc+IC4uIEk8dGFnTj4gYnkgZGVmYXVsdC4gWW91IGNhbiB1c2UgdGhpcyBmZWF0dXJlIHRvICIKKyJjcmVhdGUgYSBjb21tb24gSTxwYWNrYWdlPi5zeW1ib2xzIGZpbGUgd2hpY2ggaW5jbHVkZXMgYXJjaGl0ZWN0dXJlIHNwZWNpZmljICIKKyJzeW1ib2wgZmlsZXM6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjMzMQorIywgbm8td3JhcAorbXNnaWQgIiIKKyIgIGNvbW1vbl9zeW1ib2wxQEJhc2UgMS4wXG4iCisiIChhcmNoPWFtZDY0IGlhNjQgYWxwaGEpI2luY2x1ZGUgXCJwYWNrYWdlLnN5bWJvbHMuNjRiaXRcIlxuIgorIiAoYXJjaD0hYW1kNjQgIWlhNjQgIWFscGhhKSNpbmNsdWRlIFwicGFja2FnZS5zeW1ib2xzLjMyYml0XCJcbiIKKyIgIGNvbW1vbl9zeW1ib2wyQEJhc2UgMS4wXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzQwCittc2dpZCAiIgorIlRoZSBzeW1ib2xzIGZpbGVzIGFyZSByZWFkIGxpbmUgYnkgbGluZSwgYW5kIGluY2x1ZGUgZGlyZWN0aXZlcyBhcmUgIgorInByb2Nlc3NlZCBhcyBzb29uIGFzIHRoZXkgYXJlIGVuY291bnRlcmVkLiBUaGlzIG1lYW5zIHRoYXQgdGhlIGNvbnRlbnQgb2YgIgorInRoZSBpbmNsdWRlZCBmaWxlIGNhbiBvdmVycmlkZSBhbnkgY29udGVudCB0aGF0IGFwcGVhcmVkIGJlZm9yZSB0aGUgaW5jbHVkZSAiCisiZGlyZWN0aXZlIGFuZCB0aGF0IGFueSBjb250ZW50IGFmdGVyIHRoZSBkaXJlY3RpdmUgY2FuIG92ZXJyaWRlIGFueXRoaW5nICIKKyJjb250YWluZWQgaW4gdGhlIGluY2x1ZGVkIGZpbGUuIEFueSBzeW1ib2wgKG9yIGV2ZW4gYW5vdGhlciAjaW5jbHVkZSAiCisiZGlyZWN0aXZlKSBpbiB0aGUgaW5jbHVkZWQgZmlsZSBjYW4gc3BlY2lmeSBhZGRpdGlvbmFsIHRhZ3Mgb3Igb3ZlcnJpZGUgIgorInZhbHVlcyBvZiB0aGUgaW5oZXJpdGVkIHRhZ3MgaW4gaXRzIHRhZyBzcGVjaWZpY2F0aW9uLiBIb3dldmVyLCB0aGVyZSBpcyBubyAiCisid2F5IGZvciB0aGUgc3ltYm9sIHRvIHJlbW92ZSBhbnkgb2YgdGhlIGluaGVyaXRlZCB0YWdzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozNDUKK21zZ2lkICIiCisiQW4gaW5jbHVkZWQgZmlsZSBjYW4gcmVwZWF0IHRoZSBoZWFkZXIgbGluZSBjb250YWluaW5nIHRoZSBTT05BTUUgb2YgdGhlICIKKyJsaWJyYXJ5LiBJbiB0aGF0IGNhc2UsIGl0IG92ZXJyaWRlcyBhbnkgaGVhZGVyIGxpbmUgcHJldmlvdXNseSByZWFkLiAgIgorIkhvd2V2ZXIsIGluIGdlbmVyYWwgaXQncyBiZXN0IHRvIGF2b2lkIGR1cGxpY2F0aW5nIGhlYWRlciBsaW5lcy4gT25lIHdheSB0byAiCisiZG8gaXQgaXMgdGhlIGZvbGxvd2luZzoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzQ4CisjLCBuby13cmFwCittc2dpZCAiIgorIiNpbmNsdWRlIFwibGlic29tZXRoaW5nMS5zeW1ib2xzLmNvbW1vblwiXG4iCisiIGFyY2hfc3BlY2lmaWNfc3ltYm9sQEJhc2UgMS4wXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM0OAorIywgbm8td3JhcAorbXNnaWQgIkdvb2QgbGlicmFyeSBtYW5hZ2VtZW50IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM1MQorbXNnaWQgIkEgd2VsbC1tYWludGFpbmVkIGxpYnJhcnkgaGFzIHRoZSBmb2xsb3dpbmcgZmVhdHVyZXM6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM1NQorbXNnaWQgIiIKKyJpdHMgQVBJIGlzIHN0YWJsZSAocHVibGljIHN5bWJvbHMgYXJlIG5ldmVyIGRyb3BwZWQsIG9ubHkgbmV3IHB1YmxpYyBzeW1ib2xzICIKKyJhcmUgYWRkZWQpIGFuZCBjaGFuZ2VzIGluIGluY29tcGF0aWJsZSB3YXlzIG9ubHkgd2hlbiB0aGUgU09OQU1FIGNoYW5nZXM7IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM1OAorbXNnaWQgIiIKKyJpZGVhbGx5LCBpdCB1c2VzIHN5bWJvbCB2ZXJzaW9uaW5nIHRvIGFjaGlldmUgQUJJIHN0YWJpbGl0eSBkZXNwaXRlIGludGVybmFsICIKKyJjaGFuZ2VzIGFuZCBBUEkgZXh0ZW5zaW9uOyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozNjEKK21zZ2lkICIiCisiaXQgZG9lc24ndCBleHBvcnQgcHJpdmF0ZSBzeW1ib2xzIChzdWNoIHN5bWJvbHMgY2FuIGJlIHRhZ2dlZCBvcHRpb25hbCBhcyAiCisid29ya2Fyb3VuZCkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM2OQorbXNnaWQgIiIKKyJXaGlsZSBtYWludGFpbmluZyB0aGUgc3ltYm9scyBmaWxlLCBpdCdzIGVhc3kgdG8gbm90aWNlIGFwcGVhcmFuY2UgYW5kICIKKyJkaXNhcHBlYXJhbmNlIG9mIHN5bWJvbHMuIEJ1dCBpdCdzIG1vcmUgZGlmZmljdWx0IHRvIGNhdGNoIGluY29tcGF0aWJsZSBBUEkgIgorImFuZCBBQkkgY2hhbmdlLiBUaHVzIHRoZSBtYWludGFpbmVyIHNob3VsZCByZWFkIHRob3JvdWdobHkgdGhlIHVwc3RyZWFtICIKKyJjaGFuZ2Vsb2cgbG9va2luZyBmb3IgY2FzZXMgd2hlcmUgdGhlIHJ1bGVzIG9mIGdvb2QgbGlicmFyeSBtYW5hZ2VtZW50IGhhdmUgIgorImJlZW4gYnJva2VuLiBJZiBwb3RlbnRpYWwgcHJvYmxlbXMgYXJlIGRpc2NvdmVyZWQsIHRoZSB1cHN0cmVhbSBhdXRob3IgIgorInNob3VsZCBiZSBub3RpZmllZCBhcyBhbiB1cHN0cmVhbSBmaXggaXMgYWx3YXlzIGJldHRlciB0aGFuIGEgRGViaWFuICIKKyJzcGVjaWZpYyB3b3JrLWFyb3VuZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM3MAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1QPkk8cGFja2FnZS1idWlsZC1kaXI+IgorbXNnc3RyICJCPC0tbG9nPT5JPNC40LzRjyDRhNCw0LnQu9CwPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzczCittc2dpZCAiU2NhbiBJPHBhY2thZ2UtYnVpbGQtZGlyPiBpbnN0ZWFkIG9mIGRlYmlhbi90bXAuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM3NworbXNnaWQgIiIKKyJEZWZpbmUgdGhlIHBhY2thZ2UgbmFtZS4gUmVxdWlyZWQgaWYgbW9yZSB0aGFuIG9uZSBiaW5hcnkgcGFja2FnZSBpcyBsaXN0ZWQgIgorImluIGRlYmlhbi9jb250cm9sIChvciBpZiB0aGVyZSdzIG5vIGRlYmlhbi9jb250cm9sIGZpbGUpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozODEKK21zZ2lkICIiCisiRGVmaW5lIHRoZSBwYWNrYWdlIHZlcnNpb24uIERlZmF1bHRzIHRvIHRoZSB2ZXJzaW9uIGV4dHJhY3RlZCBmcm9tIGRlYmlhbi8iCisiY2hhbmdlbG9nLiBSZXF1aXJlZCBpZiBjYWxsZWQgb3V0c2lkZSBvZiBhIHNvdXJjZSBwYWNrYWdlIHRyZWUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbnN5bWJvbHMuMTozODEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtZT5JPGxpYnJhcnktZmlsZT4iCittc2dzdHIgIkk8Y29udHJvbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM4NworbXNnaWQgIiIKKyJPbmx5IGFuYWx5emUgbGlicmFyaWVzIGV4cGxpY2l0bHkgbGlzdGVkIGluc3RlYWQgb2YgZmluZGluZyBhbGwgcHVibGljICIKKyJsaWJyYXJpZXMuIFlvdSBjYW4gdXNlIGEgcmVndWxhciBleHByZXNzaW9uIGluIEk8bGlicmFyeS1maWxlPiB0byBtYXRjaCAiCisibXVsdGlwbGUgbGlicmFyaWVzIHdpdGggYSBzaW5nbGUgYXJndW1lbnQgKG90aGVyd2lzZSB5b3UgbmVlZCBtdWx0aXBsZSBCPC0iCisiZT4pLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5zeW1ib2xzLjE6Mzg3CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LUk+STxmaWxlbmFtZT4iCittc2dzdHIgIkI8LS1sb2c9Pkk80LjQvNGPINGE0LDQudC70LA+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozOTEKK21zZ2lkICIiCisiVXNlIEk8ZmlsZW5hbWU+IGFzIHJlZmVyZW5jZSBmaWxlIHRvIGdlbmVyYXRlIHRoZSBzeW1ib2xzIGZpbGUgdGhhdCBpcyAiCisiaW50ZWdyYXRlZCBpbiB0aGUgcGFja2FnZSBpdHNlbGYuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM5NQorbXNnaWQgIiIKKyJQcmludCB0aGUgZ2VuZXJhdGVkIHN5bWJvbHMgZmlsZSB0byBzdGFuZGFyZCBvdXRwdXQsIHJhdGhlciB0aGFuIGJlaW5nICIKKyJzdG9yZWQgaW4gdGhlIHBhY2thZ2UgYnVpbGQgdHJlZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM5NQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1PPkk8ZmlsZW5hbWU+IgorbXNnc3RyICJCPC0tbG9nPT5JPNC40LzRjyDRhNCw0LnQu9CwPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDAxCittc2dpZCAiIgorIlN0b3JlIHRoZSBnZW5lcmF0ZWQgc3ltYm9scyBmaWxlIGFzIEk8ZmlsZW5hbWU+LiBJZiBJPGZpbGVuYW1lPiBpcyBwcmUtIgorImV4aXN0aW5nLCBpdHMgY29udGVudCBpcyB1c2VkIGFzIGJhc2lzIGZvciB0aGUgZ2VuZXJhdGVkIHN5bWJvbHMgZmlsZS4gIFlvdSAiCisiY2FuIHVzZSB0aGlzIGZlYXR1cmUgdG8gdXBkYXRlIGEgc3ltYm9scyBmaWxlIHNvIHRoYXQgaXQgbWF0Y2hlcyBhIG5ld2VyICIKKyJ1cHN0cmVhbSB2ZXJzaW9uIG9mIHlvdXIgbGlicmFyeS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQwMQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC10PiIKK21zZ3N0ciAiQjwtQj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQxMAorbXNnaWQgIiIKKyJXcml0ZSB0aGUgc3ltYm9sIGZpbGUgaW4gdGVtcGxhdGUgbW9kZSByYXRoZXIgdGhhbiB0aGUgZm9ybWF0IGNvbXBhdGlibGUgIgorIndpdGggSTxkZWItc3ltYm9scyg1KT4uIFRoZSBtYWluIGRpZmZlcmVuY2UgaXMgdGhhdCBpbiB0aGUgdGVtcGxhdGUgbW9kZSAiCisic3ltYm9sIG5hbWVzIGFuZCB0YWdzIGFyZSB3cml0dGVuIGluIHRoZWlyIG9yaWdpbmFsIGZvcm0gY29udHJhcnkgdG8gdGhlICIKKyJwb3N0LXByb2Nlc3NlZCBzeW1ib2wgbmFtZXMgd2l0aCB0YWdzIHN0cmlwcGVkIGluIHRoZSBjb21wYXRpYmlsaXR5IG1vZGUuICAiCisiTW9yZW92ZXIsIHNvbWUgc3ltYm9scyBtaWdodCBiZSBvbWl0dGVkIHdoZW4gd3JpdGluZyBhIHN0YW5kYXJkIEk8ZGViLXN5bWJvbHMiCisiKDUpPiBmaWxlIChhY2NvcmRpbmcgdG8gdGhlIHRhZyBwcm9jZXNzaW5nIHJ1bGVzKSB3aGlsZSBhbGwgc3ltYm9scyBhcmUgIgorImFsd2F5cyB3cml0dGVuIHRvIHRoZSBzeW1ib2wgZmlsZSB0ZW1wbGF0ZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQxMAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1jPkk8WzAtNF0+IgorbXNnc3RyICJCPC0tc3RhdHVzLWZkID5JPEU8bHQ+bkU8Z3Q+PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDE4Cittc2dpZCAiIgorIkRlZmluZSB0aGUgY2hlY2tzIHRvIGRvIHdoZW4gY29tcGFyaW5nIHRoZSBnZW5lcmF0ZWQgc3ltYm9scyBmaWxlIHdpdGggdGhlICIKKyJ0ZW1wbGF0ZSBmaWxlIHVzZWQgYXMgc3RhcnRpbmcgcG9pbnQuIEJ5IGRlZmF1bHQgdGhlIGxldmVsIGlzIDEuIEluY3JlYXNpbmcgIgorImxldmVscyBkbyBtb3JlIGNoZWNrcyBhbmQgaW5jbHVkZSBhbGwgY2hlY2tzIG9mIGxvd2VyIGxldmVscy4gTGV2ZWwgMCBuZXZlciAiCisiZmFpbHMuIExldmVsIDEgZmFpbHMgaWYgc29tZSBzeW1ib2xzIGhhdmUgZGlzYXBwZWFyZWQuIExldmVsIDIgZmFpbHMgaWYgc29tZSAiCisibmV3IHN5bWJvbHMgaGF2ZSBiZWVuIGludHJvZHVjZWQuIExldmVsIDMgZmFpbHMgaWYgc29tZSBsaWJyYXJpZXMgaGF2ZSAiCisiZGlzYXBwZWFyZWQuIExldmVsIDQgZmFpbHMgaWYgc29tZSBsaWJyYXJpZXMgaGF2ZSBiZWVuIGludHJvZHVjZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQyMQorbXNnaWQgIiIKKyJUaGlzIHZhbHVlIGNhbiBiZSBvdmVycmlkZGVuIGJ5IHRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZSAiCisiRFBLR19HRU5TWU1CT0xTX0NIRUNLX0xFVkVMLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0MjcKK21zZ2lkICIiCisiS2VlcCBxdWlldCBhbmQgbmV2ZXIgZ2VuZXJhdGUgYSBkaWZmIGJldHdlZW4gZ2VuZXJhdGVkIHN5bWJvbHMgZmlsZSBhbmQgdGhlICIKKyJ0ZW1wbGF0ZSBmaWxlIHVzZWQgYXMgc3RhcnRpbmcgcG9pbnQgb3Igc2hvdyBhbnkgd2FybmluZ3MgYWJvdXQgbmV3L2xvc3QgIgorImxpYnJhcmllcyBvciBuZXcvbG9zdCBzeW1ib2xzLiBUaGlzIG9wdGlvbiBvbmx5IGRpc2FibGVzIGluZm9ybWF0aW9uYWwgIgorIm91dHB1dCBidXQgbm90IHRoZSBjaGVja3MgdGhlbXNlbHZlcyAoc2VlIEk8LWM+IG9wdGlvbikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0MjcKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtYT5JPGFyY2g+IgorbXNnc3RyICJCPGRwa2cgLS1wcmludC1hcmNoaXRlY3R1cmU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0MzIKK21zZ2lkICIiCisiQXNzdW1lIEk8YXJjaD4gYXMgaG9zdCBhcmNoaXRlY3R1cmUgd2hlbiBwcm9jZXNzaW5nIHN5bWJvbCBmaWxlcy4gVXNlIHRoaXMgIgorIm9wdGlvbiB0byBnZW5lcmF0ZSBhIHN5bWJvbCBmaWxlIG9yIGRpZmYgZm9yIGFueSBhcmNoaXRlY3R1cmUgcHJvdmlkZWQgaXRzICIKKyJiaW5hcmllcyBhcmUgYWxyZWFkeSBhdmFpbGFibGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQzNworbXNnaWQgIiIKKyJFbmFibGUgZGVidWcgbW9kZS4gTnVtZXJvdXMgbWVzc2FnZXMgYXJlIGRpc3BsYXllZCB0byBleHBsYWluIHdoYXQgQjxkcGtnLSIKKyJnZW5zeW1ib2xzPiBkb2VzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDM3CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8LUc+IgorbXNnaWQgIkI8LVY+IgorbXNnc3RyICJCPC1HPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDQzCittc2dpZCAiIgorIkVuYWJsZSB2ZXJib3NlIG1vZGUuIFRoZSBnZW5lcmF0ZWQgc3ltYm9scyBmaWxlIGNvbnRhaW5zIGRlcHJlY2F0ZWQgc3ltYm9scyAiCisiYXMgY29tbWVudHMuIEZ1cnRoZXJtb3JlIGluIHRlbXBsYXRlIG1vZGUsIHBhdHRlcm4gc3ltYm9scyBhcmUgZm9sbG93ZWQgYnkgIgorImNvbW1lbnRzIGxpc3RpbmcgcmVhbCBzeW1ib2xzIHRoYXQgaGF2ZSBtYXRjaGVkIHRoZSBwYXR0ZXJuLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0NTIKK21zZ2lkICJCPGh0dHA6Ly9wZW9wbGUucmVkaGF0LmNvbS9kcmVwcGVyL3N5bWJvbC12ZXJzaW9uaW5nPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0NTQKK21zZ2lkICJCPGh0dHA6Ly9wZW9wbGUucmVkaGF0LmNvbS9kcmVwcGVyL2dvb2RwcmFjdGljZS5wZGY+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQ1NgorbXNnaWQgIkI8aHR0cDovL3Blb3BsZS5yZWRoYXQuY29tL2RyZXBwZXIvZHNvaG93dG8ucGRmPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0NTkKKyMsIGZ1enp5Cittc2dpZCAiQjxkZWItc3ltYm9scz4oNSksIEI8ZHBrZy1zaGxpYmRlcHM+KDEpLiIKK21zZ3N0ciAiQjxkZWI+KDUpLCBCPGRwa2c+KDEpLCBCPGRwa2ctZGViPigxKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQ2MgorIywgZnV6enkKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAwNy0yMDA5IFJhcGhhXFxbOmVdbCBIZXJ0em9nIgorbXNnc3RyICJDb3B5cmlnaHQgMjAwMSBKb2V5IEhlc3MiCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLW1haW50c2NyaXB0LWhlbHBlciIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjQKK21zZ2lkICIiCisiZHBrZy1tYWludHNjcmlwdC1oZWxwZXIgLSB3b3JrcyBhcm91bmQga25vd24gZHBrZyBsaW1pdGF0aW9ucyBpbiBtYWludGFpbmVyICIKKyJzY3JpcHRzIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6OAorbXNnaWQgIiIKKyJCPGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyPiBJPGNvbW1hbmQ+IFtJPHBhcmFtZXRlcj4uLi5dIEI8LS0+IEk8bWFpbnQtc2NyaXB0LSIKKyJwYXJhbWV0ZXI+Li4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjkKKyMsIG5vLXdyYXAKK21zZ2lkICJDT01NQU5EUyBBTkQgUEFSQU1FVEVSUyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjEyCittc2dpZCAiQjxybV9jb25mZmlsZT4gSTxjb25mZmlsZT4gW0k8bGFzdHZlcnNpb24+IFtJPHBhY2thZ2U+XV0iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxNAorbXNnaWQgIiIKKyJCPG12X2NvbmZmaWxlPiBJPG9sZGNvbmZmaWxlPiBJPG5ld2NvbmZmaWxlPiBbSTxsYXN0dmVyc2lvbj4gW0k8cGFja2FnZT5dXSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjIwCittc2dpZCAiIgorIlRoaXMgcHJvZ3JhbSBpcyBkZXNpZ25lZCB0byBiZSBydW4gd2l0aGluIG1haW50YWluZXIgc2NyaXB0cyB0byBhY2hpZXZlIHNvbWUgIgorInRhc2tzIHRoYXQgZHBrZyBjYW4ndCAoeWV0KSBoYW5kbGUgbmF0aXZlbHkgZWl0aGVyIGJlY2F1c2Ugb2YgZGVzaWduICIKKyJkZWNpc2lvbnMgb3IgZHVlIHRvIGN1cnJlbnQgbGltaXRhdGlvbnMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MjcKK21zZ2lkICIiCisiTWFueSBvZiB0aG9zZSB0YXNrcyByZXF1aXJlIGNvb3JkaW5hdGVkIGFjdGlvbnMgZnJvbSBzZXZlcmFsIG1haW50YWluZXIgIgorInNjcmlwdHMgKEI8cHJlaW5zdD4sIEI8cG9zdGluc3Q+LCBCPHByZXJtPiwgQjxwb3N0cm0+KS4gVG8gYXZvaWQgbWlzdGFrZXMgIgorInRoZSBzYW1lIGNhbGwgc2ltcGx5IG5lZWRzIHRvIGJlIHB1dCBpbiBhbGwgc2NyaXB0cyBhbmQgdGhlIHByb2dyYW0gd2lsbCAiCisiYXV0b21hdGljYWxseSBhZGFwdCBpdHMgYmVoYXZpb3VyIGJhc2VkIG9uIHRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZSAiCisiQjxEUEtHX01BSU5UU0NSSVBUX05BTUU+IGFuZCBvbiB0aGUgbWFpbnRhaW5lciBzY3JpcHRzIGFyZ3VtZW50cyB0aGF0IHlvdSAiCisiaGF2ZSB0byBmb3J3YXJkIGFmdGVyIGEgZG91YmxlIGRhc2guIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjI4CisjLCBuby13cmFwCittc2dpZCAiQ09ORkZJTEUgUkVMQVRFRCBUQVNLUyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjM4Cittc2dpZCAiIgorIldoZW4gdXBncmFkaW5nIGEgcGFja2FnZSwgZHBrZyB3aWxsIG5vdCBhdXRvbWF0aWNhbGx5IHJlbW92ZSBhIGNvbmZmaWxlIChhICIKKyJjb25maWd1cmF0aW9uIGZpbGUgZm9yIHdoaWNoIGRwa2cgc2hvdWxkIHByZXNlcnZlIHVzZXIgY2hhbmdlcykgaWYgaXQgaXMgbm90ICIKKyJwcmVzZW50IGluIHRoZSBuZXdlciB2ZXJzaW9uLiBUaGVyZSBhcmUgdHdvIHByaW5jaXBhbCByZWFzb25zIGZvciB0aGlzOyB0aGUgIgorImZpcnN0IGlzIHRoYXQgdGhlIGNvbmZmaWxlIGNvdWxkJ3ZlIGJlZW4gZHJvcHBlZCBieSBhY2NpZGVudCBhbmQgdGhlIG5leHQgIgorInZlcnNpb24gY291bGQgcmVzdG9yZSBpdCwgdXNlcnMgd291bGRuJ3Qgd2FudCB0aGVpciBjaGFuZ2VzIHRocm93biBhd2F5LiBUaGUgIgorInNlY29uZCBpcyB0byBhbGxvdyBwYWNrYWdlcyB0byB0cmFuc2l0aW9uIGZpbGVzIGZyb20gYSBkcGtnLW1haW50YWluZWQgIgorImNvbmZmaWxlIHRvIGEgZmlsZSBtYWludGFpbmVkIGJ5IHRoZSBwYWNrYWdlJ3MgbWFpbnRhaW5lciBzY3JpcHRzLCB1c3VhbGx5ICIKKyJ3aXRoIGEgdG9vbCBsaWtlIGRlYmNvbmYgb3IgdWNmLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjQzCittc2dpZCAiIgorIlRoaXMgbWVhbnMgdGhhdCBpZiBhIHBhY2thZ2UgaXMgaW50ZW5kZWQgdG8gcmVuYW1lIG9yIHJlbW92ZSBhIGNvbmZmaWxlLCBpdCAiCisibXVzdCBleHBsaWNpdGx5IGRvIHNvIGFuZCBCPGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyPiBjYW4gYmUgdXNlZCB0byAiCisiaW1wbGVtZW50IGdyYWNlZnVsIGRlbGV0aW9uIGFuZCBtb3Zpbmcgb2YgY29uZmZpbGVzIHdpdGhpbiBtYWludGFpbmVyICIKKyJzY3JpcHRzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMTo0NAorIywgbm8td3JhcAorbXNnaWQgIlJFTU9WSU5HIEEgQ09ORkZJTEUiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMTo1MAorbXNnaWQgIiIKKyJJZiBhIGNvbmZmaWxlIGlzIGNvbXBsZXRlbHkgcmVtb3ZlZCwgaXQgc2hvdWxkIGJlIHJlbW92ZWQgZnJvbSBkaXNrLCB1bmxlc3MgIgorInRoZSB1c2VyIGhhcyBtb2RpZmllZCBpdC4gSWYgdGhlcmUgYXJlIGxvY2FsIG1vZGlmaWNhdGlvbnMsIHRoZXkgc2hvdWxkIGJlICIKKyJwcmVzZXJ2ZWQuIElmIHRoZSBwYWNrYWdlIHVwZ3JhZGVzIGFib3J0cywgdGhlIG5ld2x5IG9ic29sZXRlIGNvbmZmaWxlICIKKyJzaG91bGQgbm90IGRpc2FwcGVhci4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMTo1MworbXNnaWQgIiIKKyJBbGwgb2YgdGhpcyBpcyBpbXBsZW1lbnRlZCBieSBwdXR0aW5nIHRoZSBmb2xsb3dpbmcgc2hlbGwgc25pcHBldCBpbiB0aGUgIgorIkI8cHJlaW5zdD4sIEI8cG9zdGluc3Q+IGFuZCBCPHBvc3RybT4gbWFpbnRhaW5lciBzY3JpcHRzOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjU2CisjLCBuby13cmFwCittc2dpZCAiIgorIiAgICBkcGtnLW1haW50c2NyaXB0LWhlbHBlciBybV9jb25mZmlsZSBcXGVcbiIKKyIgICAgICAgIEk8Y29uZmZpbGU+IEk8bGFzdHZlcnNpb24+IEk8cGFja2FnZT4gLS0gXCIkQFwiXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMTo2NgorbXNnaWQgIiIKKyJJPGNvbmZmaWxlPiBpcyB0aGUgZmlsZW5hbWUgb2YgdGhlIGNvbmZmaWxlIHRvIHJlbW92ZS4gIEk8bGFzdHZlcnNpb24+IGlzICIKKyJ0aGUgbGFzdCB2ZXJzaW9uIG9mIHRoZSBwYWNrYWdlIHRoYXQgY29udGFpbmVkIHRoZSBjb25mZmlsZSAob3IgdGhlIGxhc3QgIgorInZlcnNpb24gb2YgdGhlIHBhY2thZ2UgdGhhdCBkaWQgbm90IHRha2UgY2FyZSB0byByZW1vdmUgdGhlIG9ic29sZXRlICIKKyJjb25mZmlsZSBpZiB0aGlzIHdhcyBub3QgaW1tZWRpYXRlbHkgaW1wbGVtZW50ZWQpLiAgSWYgSTxsYXN0dmVyc2lvbj4gaXMgIgorImVtcHR5IG9yIG9taXR0ZWQsIHRoZW4gdGhlIG9wZXJhdGlvbiBpcyB0cmllZCBvbiBldmVyeSB1cGdyYWRlLiBJPHBhY2thZ2U+ICIKKyJpcyB0aGUgcGFja2FnZSBuYW1lLCBpdCdzIG9wdGlvbmFsIGFzIGl0IHdpbGwgZGVmYXVsdCB0byAiCisiJERQS0dfTUFJTlRTQ1JJUFRfUEFDS0FHRSAodGhpcyB2YXJpYWJsZSBpcyBzZXQgYnkgZHBrZyB0byB0aGUgbmFtZSBvZiB0aGUgIgorInBhY2thZ2UgYWN0ZWQgdXBvbikuIEFsbCB0aGUgcGFyYW1ldGVycyBvZiB0aGUgbWFpbnRhaW5lciBzY3JpcHRzIGhhdmUgdG8gYmUgIgorImZvcndhcmRlZCB0byB0aGUgcHJvZ3JhbSBhZnRlciBcIi0tXCIuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6NzUKK21zZ2lkICIiCisiQ3VycmVudCBpbXBsZW1lbnRhdGlvbjogaW4gdGhlIEI8cHJlaW5zdD4sIGl0IGNoZWNrcyBpZiB0aGUgY29uZmZpbGUgd2FzICIKKyJtb2RpZmllZCBhbmQgcmVuYW1lcyBpdCBlaXRoZXIgdG8gSTxjb25mZmlsZT5CPC5kcGtnLXJlbW92ZT4gKGlmIG5vdCAiCisibW9kaWZpZWQpIG9yIHRvIEk8Y29uZmZpbGU+QjwuZHBrZy1iYWNrdXA+IChpZiBtb2RpZmllZCkuIEluIHRoZSAiCisiQjxwb3N0aW5zdD4sIHRoZSBsYXR0ZXIgZmlsZSBpcyByZW5hbWVkIHRvIEk8Y29uZmZpbGU+QjwuZHBrZy1iYWs+IGFuZCBrZXB0ICIKKyJmb3IgcmVmZXJlbmNlIGFzIGl0IGNvbnRhaW5zIHVzZXIgbW9kaWZpY2F0aW9ucyBidXQgdGhlIGZvcm1lciB3aWxsIGJlICIKKyJyZW1vdmVkLiBJZiB0aGUgcGFja2FnZSB1cGdyYWRlIGFib3J0cywgdGhlIEI8cG9zdHJtPiByZWluc3RhbGxzIHRoZSAiCisib3JpZ2luYWwgY29uZmZpbGUuIER1cmluZyBwdXJnZSwgdGhlIEI8cG9zdHJtPiB3aWxsIGFsc28gZGVsZXRlIHRoZSBCPC5kcGtnLSIKKyJiYWs+IGZpbGUga2VwdCB1cCB0byBub3cuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjc2CisjLCBuby13cmFwCittc2dpZCAiUkVOQU1JTkcgQSBDT05GRklMRSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjgzCittc2dpZCAiIgorIklmIGEgY29uZmZpbGUgaXMgbW92ZWQgZnJvbSBvbmUgbG9jYXRpb24gdG8gYW5vdGhlciwgeW91IG5lZWQgdG8gbWFrZSBzdXJlICIKKyJ5b3UgbW92ZSBhY3Jvc3MgYW55IGNoYW5nZXMgdGhlIHVzZXIgaGFzIG1hZGUuIFRoaXMgbWF5IHNlZW0gYSBzaW1wbGUgY2hhbmdlICIKKyJ0byB0aGUgQjxwcmVpbnN0PiBzY3JpcHQgYXQgZmlyc3QsIGhvd2V2ZXIgdGhhdCB3aWxsIHJlc3VsdCBpbiB0aGUgdXNlciAiCisiYmVpbmcgcHJvbXB0ZWQgYnkgZHBrZyB0byBhcHByb3ZlIHRoZSBjb25mZmlsZSBlZGl0cyBldmVuIHRob3VnaCB0aGV5IGFyZSAiCisibm90IHJlc3BvbnNpYmxlIG9mIHRoZW0uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6ODcKK21zZ2lkICIiCisiR3JhY2VmdWwgcmVuYW1pbmcgY2FuIGJlIGltcGxlbWVudGVkIGJ5IHB1dHRpbmcgdGhlIGZvbGxvd2luZyBzaGVsbCBzbmlwcGV0ICIKKyJpbiB0aGUgQjxwcmVpbnN0PiwgQjxwb3N0aW5zdD4gYW5kIEI8cG9zdHJtPiBtYWludGFpbmVyIHNjcmlwdHM6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6OTAKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiICAgIGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyIG12X2NvbmZmaWxlIFxcZVxuIgorIiAgICAgICAgSTxvbGRjb25mZmlsZT4gSTxuZXdjb25mZmlsZT4gSTxsYXN0dmVyc2lvbj4gSTxwYWNrYWdlPiAtLSBcIiRAXCJcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjEwMAorbXNnaWQgIiIKKyJJPG9sZGNvbmZmaWxlPiBhbmQgSTxuZXdjb25mZmlsZT4gYXJlIHRoZSBvbGQgYW5kIG5ldyBuYW1lIG9mIHRoZSBjb25mZmlsZSAiCisidG8gcmVuYW1lLiBJPGxhc3R2ZXJzaW9uPiBpcyB0aGUgbGFzdCB2ZXJzaW9uIG9mIHRoZSBwYWNrYWdlIHRoYXQgY29udGFpbmVkICIKKyJ0aGUgY29uZmZpbGUgd2l0aCB0aGUgb2xkIG5hbWUuIElmIEk8bGFzdHZlcnNpb24+IGlzIGVtcHR5IG9yIG9taXR0ZWQsIHRoZW4gIgorInRoZSBvcGVyYXRpb24gaXMgdHJpZWQgb24gZXZlcnkgdXBncmFkZSAobm90ZTogaXQncyBzYWZlciB0byBnaXZlIHRoZSAiCisidmVyc2lvbiBhbmQgaGF2ZSB0aGUgb3BlcmF0aW9uIHRyaWVkIG9ubHkgb25jZSkuIEk8cGFja2FnZT4gaXMgdGhlIHBhY2thZ2UgIgorIm5hbWUsIGl0J3Mgb3B0aW9uYWwgYXMgaXQgd2lsbCBkZWZhdWx0IHRvICREUEtHX01BSU5UU0NSSVBUX1BBQ0tBR0UgKHRoaXMgIgorInZhcmlhYmxlIGlzIHNldCBieSBkcGtnIHRvIHRoZSBuYW1lIG9mIHRoZSBwYWNrYWdlIGFjdGVkIHVwb24pLiBBbGwgdGhlICIKKyJwYXJhbWV0ZXJzIG9mIHRoZSBtYWludGFpbmVyIHNjcmlwdHMgaGF2ZSB0byBiZSBmb3J3YXJkZWQgdG8gdGhlIHByb2dyYW0gIgorImFmdGVyIFwiLS1cIi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxMDgKK21zZ2lkICIiCisiQ3VycmVudCBpbXBsZW1lbnRhdGlvbjogdGhlIEI8cHJlaW5zdD4gY2hlY2tzIGlmIHRoZSBjb25mZmlsZSBoYXMgYmVlbiAiCisibW9kaWZpZWQsIGlmIHllcyBpdCdzIGxlZnQgb24gcGxhY2Ugb3RoZXJ3aXNlIGl0J3MgcmVuYW1lZCB0byAiCisiSTxvbGRjb25mZmlsZT5CPC5kcGtnLXJlbW92ZT4uIE9uIGNvbmZpZ3VyYXRpb24sIHRoZSBCPHBvc3RpbnN0PiByZW1vdmVzICIKKyJJPG9sZGNvbmZmaWxlPkI8LmRwa2ctcmVtb3ZlPiBhbmQgcmVuYW1lcyBJPG9sZGNvbmZmaWxlPiB0byBJPG5ld2NvbmZmaWxlPiAiCisiaWYgSTxvbGRjb25mZmlsZT4gaXMgc3RpbGwgYXZhaWxhYmxlLiBPbiBhYm9ydC11cGdyYWRlL2Fib3J0LWluc3RhbGwsIHRoZSAiCisiQjxwb3N0cm0+IHJlbmFtZXMgSTxvbGRjb25mZmlsZT5CPC5kcGtnLXJlbW92ZT4gYmFjayB0byBJPG9sZGNvbmZmaWxlPiBpZiAiCisicmVxdWlyZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjEwOQorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICJJTkZPUk1BVElPTiBBQk9VVCBQQUNLQUdFUyIKK21zZ2lkICJJTlRFR1JBVElPTiBJTiBQQUNLQUdFUyIKK21zZ3N0ciAi0JjQndCk0J7QoNCc0JDQptCY0K8g0J4g0J/QkNCa0JXQotCQ0KUiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MTE2Cittc2dpZCAiIgorIkdpdmVuIHRoYXQgQjxkcGtnLW1haW50c2NyaXB0LWhlbHBlcj4gaXMgdXNlZCBpbiB0aGUgQjxwcmVpbnN0PiwgdXNpbmcgaXQgIgorInVuY29uZGl0aW9uYWxseSByZXF1aXJlcyBhIHByZS1kZXBlbmRlbmN5IHRvIGVuc3VyZSB0aGF0IHRoZSByZXF1aXJlZCAiCisidmVyc2lvbiBvZiBkcGtnIGhhcyBiZWVuIHVucGFja2VkIGJlZm9yZS4gVGhlIHJlcXVpcmVkIHZlcnNpb24gZGVwZW5kcyBvbiAiCisidGhlIGNvbW1hbmQgdXNlZCwgZm9yIEI8cm1fY29uZmZpbGU+IGFuZCBCPG12X2NvbmZmaWxlPiBpdCBpcyAxLjE1LjcuMjoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxMTgKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQjxQcmUtRGVwZW5kczo+IEU8bHQ+cGFja2FnZSBsaXN0RTxndD4iCittc2dpZCAiICAgIEI8UHJlLURlcGVuZHM6PiBkcGtnIChFPGd0Pj0gMS4xNS43LjIpXG4iCittc2dzdHIgIkI8UHJlLURlcGVuZHM6PiBFPGx0PtGB0L/QuNGB0L7QuiDQv9Cw0LrQtdGC0L7QskU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjEyMworbXNnaWQgIiIKKyJCdXQgaW4gbWFueSBjYXNlcyB0aGUgb3BlcmF0aW9uIGRvbmUgYnkgdGhlIHByb2dyYW0gaXMgbm90IGNyaXRpY2FsIGZvciB0aGUgIgorInBhY2thZ2UsIGFuZCBpbnN0ZWFkIG9mIHVzaW5nIGEgcHJlLWRlcGVuZGVuY3kgd2UgY2FuIGNhbGwgdGhlIHByb2dyYW0gb25seSAiCisiaWYgd2Uga25vdyB0aGF0IHRoZSByZXF1aXJlZCBjb21tYW5kIGlzIHN1cHBvcnRlZCBieSB0aGUgY3VycmVudGx5IGluc3RhbGxlZCAiCisiZHBrZzoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxMjcKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiICAgIGlmIGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyIHN1cHBvcnRzIEk8Y29tbWFuZD47IHRoZW5cbiIKKyIgICAgICAgIGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyIEk8Y29tbWFuZD4gLi4uXG4iCisiICAgIGZpXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxMzAKKyMsIGZ1enp5Cittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMTAgUmFwaGFcXFs6ZV1sIEhlcnR6b2ciCittc2dzdHIgIkNvcHlyaWdodCAyMDAxIEpvZXkgSGVzcyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxMzIKKyMsIGZ1enp5Cittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMDggSm9leSBIZXNzIgorbXNnc3RyICJDb3B5cmlnaHQgMjAwMSBKb2V5IEhlc3MiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MTM0CisjLCBmdXp6eQorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDA3IEd1aWxsZW0gSm92ZXIiCittc2dzdHIgIkNvcHlyaWdodCAyMDAxIEpvZXkgSGVzcyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxMzYKKyMsIGZ1enp5Cittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMDUgU2NvdHQgSmFtZXMgUmVtbmFudCIKK21zZ3N0ciAiQ29weXJpZ2h0IDIwMDEgSm9leSBIZXNzIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMToxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgImRwa2ctbWVyZ2VjaGFuZ2Vsb2dzIgorbXNnc3RyICJCPGRwa2c+IFtJPNC/0LDRgNCw0LzQtdGC0YDRiz5dIEk80LTQtdC50YHRgtCy0LjQtT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6NAorbXNnaWQgImRwa2ctbWVyZ2VjaGFuZ2Vsb2dzIC0gMy13YXkgbWVyZ2Ugb2YgZGViaWFuL2NoYW5nZWxvZyBmaWxlcyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjgKKyMsIGZ1enp5Cittc2dpZCAiIgorIkI8ZHBrZy1tZXJnZWNoYW5nZWxvZ3M+IFtJPG9wdGlvbj4uLi5dIEk8b2xkPiBJPG5ldy1hPiBJPG5ldy1iPiBbSTxvdXQ+XSIKK21zZ3N0ciAiQjxkcGtnPiBbSTzQv9Cw0YDQsNC80LXRgtGA0Ys+XSBJPNC00LXQudGB0YLQstC40LU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjE1Cittc2dpZCAiIgorIlRoaXMgcHJvZ3JhbSB3aWxsIHVzZSB0aGUgMyBwcm92aWRlZCB2ZXJzaW9ucyBvZiB0aGUgRGViaWFuIGNoYW5nZWxvZyB0byAiCisiZ2VuZXJhdGUgYSBtZXJnZWQgY2hhbmdlbG9nIGZpbGUuIFRoZSByZXN1bHRpbmcgY2hhbmdlbG9nIGlzIHN0b3JlZCBpbiB0aGUgIgorImZpbGUgSTxvdXQ+IG9yIG91dHB1dCB0byB0aGUgc3RhbmRhcmQgb3V0cHV0IGlmIHRoYXQgcGFyYW1ldGVyIGlzIG5vdCBnaXZlbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMToyNgorbXNnaWQgIiIKKyJFYWNoIGVudHJ5IGlzIGlkZW50aWZpZWQgYnkgaXRzIHZlcnNpb24gbnVtYmVyIGFuZCB0aGV5IGFyZSBhc3N1bWVkIHRvIGJlICIKKyJub3QgY29uZmxpY3RpbmcsIHRoZXkgYXJlIHNpbXBseSBtZXJnZWQgaW4gdGhlIHJpZ2h0IG9yZGVyIChieSBkZWNyZWFzaW5nICIKKyJ2ZXJzaW9uIG51bWJlcikuIFdoZW4gQjwtLW1lcmdlLXByZXJlbGVhc2VzPiBpcyB1c2VkLCB0aGUgcGFydCBvZiB0aGUgIgorInZlcnNpb24gbnVtYmVyIGFmdGVyIHRoZSBsYXN0IHRpbGRlIGlzIGRyb3BwZWQgc28gdGhhdCAxLjAtMX5leHAxIGFuZCAiCisiMS4wLTF+ZXhwNSBhcmUgY29uc2lkZXJlZCB0byBiZSB0aGUgc2FtZSBlbnRyeS4gV2hlbiB0aGUgc2FtZSB2ZXJzaW9uIGlzICIKKyJhdmFpbGFibGUgaW4gYm90aCBJPG5ldy1hPiBhbmQgSTxuZXctYj4sIGEgc3RhbmRhcmQgbGluZS1iYXNlZCAzLXdheSBtZXJnZSAiCisiaXMgYXR0ZW1wdGVkIChwcm92aWRlZCB0aGF0IHRoZSBtb2R1bGUgQWxnb3JpdGhtOjpNZXJnZSBpcyBhdmFpbGFibGUgXFxbZW1dICIKKyJpdCdzIHBhcnQgb2YgdGhlIHBhY2thZ2UgbGliYWxnb3JpdGhtLW1lcmdlLXBlcmwgXFxbZW1dIG90aGVyd2lzZSB5b3UgZ2V0IGEgIgorImdsb2JhbCBjb25mbGljdCBvbiB0aGUgY29udGVudCBvZiB0aGUgZW50cnkpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMToyOAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1tZXJnZS1wcmVyZWxlYXNlcz4sIEI8LW0+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6MzMKK21zZ2lkICIiCisiRHJvcCB0aGUgcGFydCBhZnRlciB0aGUgbGFzdCB0aWxkZSBpbiB0aGUgdmVyc2lvbiBudW1iZXIgd2hlbiBkb2luZyB2ZXJzaW9uICIKKyJjb21wYXJpc29uIHRvIGlkZW50aWZ5IGlmIHR3byBlbnRyaWVzIGFyZSBzdXBwb3NlZCB0byBiZSB0aGUgc2FtZSBvciBub3QuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6MzgKK21zZ2lkICIiCisiVGhpcyBpcyB1c2VmdWwgd2hlbiB5b3Uga2VlcCB1c2luZyB0aGUgc2FtZSBjaGFuZ2Vsb2cgZW50cnkgYnV0IHlvdSBpbmNyZWFzZSAiCisiaXRzIHZlcnNpb24gbnVtYmVyIHJlZ3VsYXJseS4gRm9yIGluc3RhbmNlLCB5b3UgbWlnaHQgaGF2ZSAyLjMtMX5leHAxLCAiCisiMi4zLTF+ZXhwMiwgLi4uIHVudGlsIHRoZSBvZmZpY2lhbCByZWxlYXNlIDIuMy0xIGFuZCB0aGV5IGFyZSBhbGwgdGhlIHNhbWUgIgorImNoYW5nZWxvZyBlbnRyeSB0aGF0IGhhcyBldm9sdmVkIG92ZXIgdGltZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6NDUKKyMsIGZ1enp5LCBuby13cmFwCisjfCBtc2dpZCAiQUNUSU9OUyIKK21zZ2lkICJMSU1JVEFUSU9OUyIKK21zZ3N0ciAi0JTQldCZ0KHQotCS0JjQryIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTo1MAorbXNnaWQgIiIKKyJBbnl0aGluZyB0aGF0IGlzIG5vdCBwYXJzZWQgYnkgRHBrZzo6Q2hhbmdlbG9nIGlzIGxvc3QgZHVyaW5nIHRoZSBtZXJnZS4gICIKKyJUaGlzIG1pZ2h0IGluY2x1ZGUgc3R1ZmYgbGlrZSB2aW0gbW9kZWxpbmVzLCBjb21tZW50cyB3aGljaCB3ZXJlIG5vdCAiCisic3VwcG9zZWQgdG8gYmUgdGhlcmUsIGV0Yy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6NTEKKyMsIG5vLXdyYXAKK21zZ2lkICJJTlRFR1JBVElPTiBXSVRIIEdJVCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjU2Cittc2dpZCAiIgorIklmIHlvdSB3YW50IHRvIHVzZSB0aGlzIHByb2dyYW0gdG8gbWVyZ2UgRGViaWFuIGNoYW5nZWxvZyBmaWxlcyBpbiBhIGdpdCAiCisicmVwb3NpdG9yeSwgeW91IGhhdmUgZmlyc3QgdG8gcmVnaXN0ZXIgYSBuZXcgbWVyZ2UgZHJpdmVyIGluIEI8LmdpdC9jb25maWc+ICIKKyJvciBCPH4vLmdpdGNvbmZpZz46IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6NjAKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiIFttZXJnZSBcImRwa2ctbWVyZ2VjaGFuZ2Vsb2dzXCJdXG4iCisiICAgICBuYW1lID0gZGViaWFuL2NoYW5nZWxvZyBtZXJnZSBkcml2ZXJcbiIKKyIgICAgIGRyaXZlciA9IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzIC1tICVPICVBICVCICVBXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTo2NAorbXNnaWQgIiIKKyJUaGVuIHlvdSBoYXZlIHRvIHNldHVwIHRoZSBtZXJnZSBhdHRyaWJ1dGUgZm9yIHRoZSBkZWJpYW4vY2hhbmdlbG9nIGZpbGUgIgorImVpdGhlciBpbiBCPC5naXRhdHRyaWJ1dGVzPiBpbiB0aGUgcmVwb3NpdG9yeSBpdHNlbGYsIG9yIGluIEI8LmdpdC9pbmZvLyIKKyJhdHRyaWJ1dGVzPjoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTo2NgorIywgbm8td3JhcAorbXNnaWQgIiBkZWJpYW4vY2hhbmdlbG9nIG1lcmdlPWRwa2ctbWVyZ2VjaGFuZ2Vsb2dzXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTo2OAorIywgZnV6enkKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAwOS0yMDEwIFJhcGhhXFxbOmVdbCBIZXJ0em9nIgorbXNnc3RyICJDb3B5cmlnaHQgMjAwMSBKb2V5IEhlc3MiCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLW5hbWUuMTo2CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgImRwa2ctbmFtZSIKK21zZ3N0ciAiZHBrZyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6OQorbXNnaWQgImRwa2ctbmFtZSAtIHJlbmFtZSBEZWJpYW4gcGFja2FnZXMgdG8gZnVsbCBwYWNrYWdlIG5hbWVzIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbmFtZS4xOjE1CisjLCBmdXp6eQorbXNnaWQgIkI8ZHBrZy1uYW1lPiBbSTxvcHRpb24+Li4uXSBbQjwtLT5dIEk8ZmlsZT4uLi4iCittc2dzdHIgIkI8ZHBrZz4gW0k80L/QsNGA0LDQvNC10YLRgNGLPl0gSTzQtNC10LnRgdGC0LLQuNC1PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6MjkKK21zZ2lkICIiCisiVGhpcyBtYW51YWwgcGFnZSBkb2N1bWVudHMgdGhlIEI8ZHBrZy1uYW1lPiBwcm9ncmFtIHdoaWNoIHByb3ZpZGVzIGFuIGVhc3kgIgorIndheSB0byByZW5hbWUgQjxEZWJpYW4+IHBhY2thZ2VzIGludG8gdGhlaXIgZnVsbCBwYWNrYWdlIG5hbWVzLiBBIGZ1bGwgIgorInBhY2thZ2UgbmFtZSBjb25zaXN0cyBvZiBJPHBhY2thZ2U+QjxfPkk8dmVyc2lvbj5CPF8+STxhcmNoaXRlY3R1cmU+QjwuIgorIj5JPHBhY2thZ2UtdHlwZT4gYXMgc3BlY2lmaWVkIGluIHRoZSBjb250cm9sIGZpbGUgb2YgdGhlIHBhY2thZ2UuIFRoZSAiCisiSTx2ZXJzaW9uPiBwYXJ0IG9mIHRoZSBmaWxlbmFtZSBjb25zaXN0cyBvZiB0aGUgdXBzdHJlYW0gdmVyc2lvbiBpbmZvcm1hdGlvbiAiCisib3B0aW9uYWxseSBmb2xsb3dlZCBieSBhIGh5cGhlbiBhbmQgdGhlIHJldmlzaW9uIGluZm9ybWF0aW9uLiBUaGUgSTxwYWNrYWdlLSIKKyJ0eXBlPiBwYXJ0IGNvbWVzIGZyb20gdGhhdCBmaWVsZCBpZiBwcmVzZW50IG9yIGZhbGxiYWNrcyB0byBCPGRlYj4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLW5hbWUuMTozMQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1hPiwgQjwtLW5vLWFyY2hpdGVjdHVyZT4iCittc2dzdHIgIkI8ZHBrZyAtLXByaW50LWFyY2hpdGVjdHVyZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbmFtZS4xOjM0Cittc2dpZCAiVGhlIGRlc3RpbmF0aW9uIGZpbGVuYW1lIHdpbGwgbm90IGhhdmUgdGhlIGFyY2hpdGVjdHVyZSBpbmZvcm1hdGlvbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctbmFtZS4xOjM0CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LWs+LCBCPC0tc3ltbGluaz4iCittc2dzdHIgIkI8ZHBrZyAtLXZlcnNpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW5hbWUuMTozNworbXNnaWQgIkNyZWF0ZSBhIHN5bWxpbmssIGluc3RlYWQgb2YgbW92aW5nLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1uYW1lLjE6MzcKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtbz4sIEI8LS1vdmVyd3JpdGU+IgorbXNnc3RyICJCPC1vPnxCPC0tb2tub2RvPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6NDEKK21zZ2lkICIiCisiRXhpc3RpbmcgZmlsZXMgd2lsbCBiZSBvdmVyd3JpdHRlbiBpZiB0aGV5IGhhdmUgdGhlIHNhbWUgbmFtZSBhcyB0aGUgIgorImRlc3RpbmF0aW9uIGZpbGVuYW1lLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1uYW1lLjE6NDEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtcz4sIEI8LS1zdWJkaXI+IFtJPGRpcj5dIgorbXNnc3RyICJCPC1zPnxCPC0tc2lnbmFsPiBJPNGB0LjQs9C90LDQuz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbmFtZS4xOjUzCittc2dpZCAiIgorIkZpbGVzIHdpbGwgYmUgbW92ZWQgaW50byBhIHN1YmRpcmVjdG9yeS4gSWYgdGhlIGRpcmVjdG9yeSBnaXZlbiBhcyBhcmd1bWVudCAiCisiZXhpc3RzIHRoZSBmaWxlcyB3aWxsIGJlIG1vdmVkIGludG8gdGhhdCBkaXJlY3Rvcnkgb3RoZXJ3aXNlIHRoZSBuYW1lIG9mIHRoZSAiCisidGFyZ2V0IGRpcmVjdG9yeSBpcyBleHRyYWN0ZWQgZnJvbSB0aGUgc2VjdGlvbiBmaWVsZCBpbiB0aGUgY29udHJvbCBwYXJ0IG9mICIKKyJ0aGUgcGFja2FnZS4gVGhlIHRhcmdldCBkaXJlY3Rvcnkgd2lsbCBiZSBgdW5zdGFibGUvYmluYXJ5LUk8YXJjaGl0ZWN0dXJlPi8iCisiSTxzZWN0aW9uPicuIElmIHRoZSBzZWN0aW9uIGlzIG5vdCBmb3VuZCBpbiB0aGUgY29udHJvbCwgdGhlbiBgbm8tc2VjdGlvbicgIgorImlzIGFzc3VtZWQsIGFuZCBpbiB0aGlzIGNhc2UsIGFzIHdlbGwgYXMgZm9yIHNlY3Rpb25zIGBub24tZnJlZScgYW5kICIKKyJgY29udHJpYicgdGhlIHRhcmdldCBkaXJlY3RvcnkgaXMgYEk8c2VjdGlvbj4vYmluYXJ5LUk8YXJjaGl0ZWN0dXJlPicuIFRoZSAiCisic2VjdGlvbiBmaWVsZCBpc24ndCByZXF1aXJlZCBzbyBhIGxvdCBvZiBwYWNrYWdlcyB3aWxsIGZpbmQgdGhlaXIgd2F5IHRvIHRoZSAiCisiYG5vLXNlY3Rpb24nIGFyZWEuIFVzZSB0aGlzIG9wdGlvbiB3aXRoIGNhcmUsIGl0J3MgbWVzc3kuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLW5hbWUuMTo1MworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1jPiwgQjwtLWNyZWF0ZS1kaXI+IgorbXNnc3RyICJCPC1vPnxCPC0tb2tub2RvPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6NTgKK21zZ2lkICIiCisiVGhpcyBvcHRpb24gY2FuIHVzZWQgdG9nZXRoZXIgd2l0aCB0aGUgLXMgb3B0aW9uLiBJZiBhIHRhcmdldCBkaXJlY3RvcnkgIgorImlzbid0IGZvdW5kIGl0IHdpbGwgYmUgY3JlYXRlZCBhdXRvbWF0aWNhbGx5LiAgQjxVc2UgdGhpcyBvcHRpb24gd2l0aCBjYXJlLj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctbmFtZS4xOjYxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LXY+LCBCPC0tdmVyc2lvbj4iCittc2dzdHIgIkI8ZHBrZyAtLXZlcnNpb24+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1uYW1lLjE6NjYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGRwa2ctbmFtZSBiYXItZm9vLmRlYj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6NzEKK21zZ2lkICIiCisiVGhlIGZpbGUgYGJhci1mb28uZGViJyB3aWxsIGJlIHJlbmFtZWQgdG8gYmFyLWZvb18xLjAtMl9pMzg2LmRlYiBvciAiCisic29tZXRoaW5nIHNpbWlsYXIgKGRlcGVuZGluZyBvbiB3aGF0ZXZlciBpbmZvcm1hdGlvbiBpcyBpbiB0aGUgY29udHJvbCBwYXJ0ICIKKyJvZiBgYmFyLWZvby5kZWInKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctbmFtZS4xOjcxCisjLCBuby13cmFwCittc2dpZCAiQjxmaW5kIC9yb290L2RlYmlhbi8gLW5hbWUgXFwoYXEqLmRlYlxcKGFxIHwgeGFyZ3MgLW4gMSBkcGtnLW5hbWUgLWE+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbmFtZS4xOjc2Cittc2dpZCAiIgorIkFsbCBmaWxlcyB3aXRoIHRoZSBleHRlbnNpb24gYGRlYicgaW4gdGhlIGRpcmVjdG9yeSAvcm9vdC9kZWJpYW4gYW5kIGl0cyAiCisic3ViZGlyZWN0b3J5J3Mgd2lsbCBiZSByZW5hbWVkIGJ5IGRwa2ctbmFtZSBpZiByZXF1aXJlZCBpbnRvIG5hbWVzIHdpdGggbm8gIgorImFyY2hpdGVjdHVyZSBpbmZvcm1hdGlvbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctbmFtZS4xOjc2CisjLCBuby13cmFwCittc2dpZCAiQjxmaW5kIC1uYW1lIFxcKGFxKi5kZWJcXChhcSB8IHhhcmdzIC1uIDEgZHBrZy1uYW1lIC1hIC1vIC1zIC1jPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW5hbWUuMTo4MgorbXNnaWQgIiIKKyJCPERvbid0IGRvIHRoaXMuPiBZb3VyIGFyY2hpdmUgd2lsbCBiZSBtZXNzZWQgdXAgY29tcGxldGVseSBiZWNhdXNlIGEgbG90IG9mICIKKyJwYWNrYWdlcyBkb24ndCBjb21lIHdpdGggc2VjdGlvbiBpbmZvcm1hdGlvbi4gIEI8RG9uJ3QgZG8gdGhpcy4+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLW5hbWUuMTo4MgorIywgbm8td3JhcAorbXNnaWQgIkI8ZHBrZyAtLWJ1aWxkIGRlYmlhbi10bXAgJiYgZHBrZy1uYW1lIC1vIC1zIC4uIGRlYmlhbi10bXAuZGViPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW5hbWUuMTo4NQorbXNnaWQgIlRoaXMgY2FuIGJlIHVzZWQgd2hlbiBidWlsZGluZyBuZXcgcGFja2FnZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbmFtZS4xOjk1Cittc2dpZCAiIgorIlNvbWUgcGFja2FnZXMgZG9uJ3QgZm9sbG93IHRoZSBuYW1lIHN0cnVjdHVyZSAiCisiSTxwYWNrYWdlPkI8Xz5JPHZlcnNpb24+QjxfPkk8YXJjaGl0ZWN0dXJlPkI8LmRlYj4uICBQYWNrYWdlcyByZW5hbWVkIGJ5ICIKKyJkcGtnLW5hbWUgd2lsbCBmb2xsb3cgdGhpcyBzdHJ1Y3R1cmUuIEdlbmVyYWxseSB0aGlzIHdpbGwgaGF2ZSBubyBpbXBhY3Qgb24gIgorImhvdyBwYWNrYWdlcyBhcmUgaW5zdGFsbGVkIGJ5IEI8ZHNlbGVjdD4oMSkvQjxkcGtnPigxKSwgYnV0IG90aGVyICIKKyJpbnN0YWxsYXRpb24gdG9vbHMgbWlnaHQgZGVwZW5kIG9uIHRoaXMgbmFtaW5nIHN0cnVjdHVyZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6MTAzCisjLCBmdXp6eQorbXNnaWQgIiIKKyJCPGRlYj4oNSksIEI8ZGViLWNvbnRyb2w+KDUpLCBCPGRwa2c+KDEpLCBCPGRwa2ctZGViPigxKSwgQjxmaW5kPigxKSwgIgorIkI8eGFyZ3M+KDEpLiIKK21zZ3N0ciAiQjxkZWI+KDUpLCBCPGRwa2c+KDEpLCBCPGRwa2ctZGViPigxKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbmFtZS4xOjEwNgorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAxOTk1LDE5OTYgRXJpY2sgQnJhbmRlcmhvcnN0IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJkcGtnLXBhcnNlY2hhbmdlbG9nIgorbXNnc3RyICJCPGRwa2c+IFtJPNC/0LDRgNCw0LzQtdGC0YDRiz5dIEk80LTQtdC50YHRgtCy0LjQtT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo0Cittc2dpZCAiZHBrZy1wYXJzZWNoYW5nZWxvZyAtIHBhcnNlIERlYmlhbiBjaGFuZ2Vsb2cgZmlsZXMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjgKKyMsIGZ1enp5Cittc2dpZCAiQjxkcGtnLXBhcnNlY2hhbmdlbG9nPiBbSTxvcHRpb24+Li4uXSIKK21zZ3N0ciAiQjxkcGtnPiBbSTzQv9Cw0YDQsNC80LXRgtGA0Ys+XSBJPNC00LXQudGB0YLQstC40LU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTQKK21zZ2lkICIiCisiQjxkcGtnLXBhcnNlY2hhbmdlbG9nPiByZWFkcyBhbmQgcGFyc2VzIHRoZSBjaGFuZ2Vsb2cgb2YgYW4gdW5wYWNrZWQgRGViaWFuICIKKyJzb3VyY2UgdHJlZSBhbmQgb3V0cHV0cyB0aGUgaW5mb3JtYXRpb24gaW4gaXQgdG8gc3RhbmRhcmQgb3V0cHV0IGluIGEgIgorIm1hY2hpbmUtcmVhZGFibGUgZm9ybS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToyNgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1MPkk8bGliZGlyPiIKK21zZ3N0ciAiQjwtLWxvZz0+STzQuNC80Y8g0YTQsNC50LvQsD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTozMworbXNnaWQgIiIKKyJTcGVjaWZ5IGFuIGFkZGl0aW9uYWwgZGlyZWN0b3J5IHRvIHNlYXJjaCBmb3IgcGFyc2VyIHNjcmlwdHMuICBUaGlzICIKKyJkaXJlY3RvcnkgaXMgc2VhcmNoZWQgYmVmb3JlIHRoZSBkZWZhdWx0IGRpcmVjdG9yaWVzIHdoaWNoIGFyZSBjdXJyZW50bHkgQjwvIgorInVzci9sb2NhbC9saWIvZHBrZy9wYXJzZWNoYW5nZWxvZz4gYW5kIEI8L3Vzci9saWIvZHBrZy9wYXJzZWNoYW5nZWxvZz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MzkKKyMsIG5vLXdyYXAKK21zZ2lkICJQYXJzZXIgT3B0aW9ucyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6NDQKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBvcHRpb25zIGNhbiBiZSB1c2VkIHRvIGluZmx1ZW5jZSB0aGUgb3V0cHV0IG9mIHRoZSBjaGFuZ2Vsb2cgIgorInBhcnNlciwgZS5nLiB0aGUgcmFuZ2Ugb2YgZW50cmllcyBvciB0aGUgZm9ybWF0IG9mIHRoZSBvdXRwdXQuIFRoZXkgbmVlZCB0byAiCisiYmUgc3VwcG9ydGVkIGJ5IHRoZSBwYXJzZXIgc2NyaXB0IGluIHF1ZXN0aW9uLiBTZWUgYWxzbyBCPENBVkVBVFM+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjQ0CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1mb3JtYXQ+STwgb3V0cHV0Zm9ybWF0PiIKK21zZ3N0ciAiQjwtcj58QjwtLWNocm9vdD4gSTxyb290PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjUzCittc2dpZCAiIgorIlNldCB0aGUgb3V0cHV0IGZvcm1hdC4gQ3VycmVudGx5IHN1cHBvcnRlZCB2YWx1ZXMgYXJlIEk8ZHBrZz4gYW5kICIKKyJJPHJmYzgyMj4uICBJPGRwa2c+IGlzIHRoZSBjbGFzc2ljIG91dHB1dCBmb3JtYXQgKGZyb20gYmVmb3JlIHRoaXMgb3B0aW9uICIKKyJleGlzdGVkKSBhbmQgdGhlIGRlZmF1bHQuIEl0IGNvbnNpc3RzIG9mIG9uZSBwYXJhZ3JhcGggaW4gRGViaWFuIGNvbnRyb2wgIgorImZvcm1hdCAoc2VlIEI8ZGViLWNvbnRyb2w+KDUpKS4gSWYgbW9yZSB0aGFuIG9uZSBlbnRyeSBpcyByZXF1ZXN0ZWQsIHRoZW4gIgorIm1vc3QgZmllbGRzIGFyZSB0YWtlbiBmcm9tIHRoZSBsYXRlc3QgZW50cnksIGV4Y2VwdCBvdGhlcndpc2Ugc3RhdGVkOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjU0CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8U291cmNlOj5JPCBwa2ctbmFtZT4iCittc2dzdHIgIkI8U291cmNlOj4gRTxsdD7QuNC80Y8g0LDRgNGF0LjQstC+0LIg0YEg0LjRgdGF0L7QtNC90LjQutCw0LzQuEU8Z3Q+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjU2CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8VmVyc2lvbjo+STwgdmVyc2lvbj4iCittc2dzdHIgIkI8VmVyc2lvbjo+IEU8bHQ+0YHRgtGA0L7QutCwINGBINCy0LXRgNGB0LjQtdC5RTxndD4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6NTgKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxEaXN0cmlidXRpb246Pkk8IHRhcmdldC1kaXN0cmlidXRpb24+IgorbXNnc3RyICJCPERlc2NyaXB0aW9uOj4gRTxsdD7QutC+0YDQvtGC0LrQvtC1INC+0L/QuNGB0LDQvdC40LVFPGd0PiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo2MAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPFVyZ2VuY3k6Pkk8IHVyZ2VuY3k+IgorbXNnc3RyICJCPFJlcGxhY2VzOj4gRTxsdD7RgdC/0LjRgdC+0Log0L/QsNC60LXRgtC+0LJFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjYzCittc2dpZCAiVGhlIGhpZ2hlc3QgdXJnZW5jeSBvZiBhbGwgaW5jbHVkZWQgZW50cmllcyBpcyB1c2VkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjYzCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8TWFpbnRhaW5lcjo+STwgYXV0aG9yPiIKK21zZ3N0ciAiQjxNYWludGFpbmVyOj4gRTxsdD7Qv9C+0LvQvdC+0LUg0LjQvNGPINC4INCw0LTRgNC10YEg0Y3Quy7Qv9C+0YfRgtGLRTxndD4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6NjUKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxEYXRlOj5JPCBkYXRlPiIKK21zZ3N0ciAiQjxSZXBsYWNlczo+IEU8bHQ+0YHQv9C40YHQvtC6INC/0LDQutC10YLQvtCyRTxndD4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6NjcKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxDbG9zZXM6Pkk8IGJ1Zy1udW1iZXI+IgorbXNnc3RyICJCPFNvdXJjZTo+IEU8bHQ+0LjQvNGPINCw0YDRhdC40LLQvtCyINGBINC40YHRhdC+0LTQvdC40LrQsNC80LhFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjcwCittc2dpZCAiVGhlIENsb3NlcyBmaWVsZHMgb2YgYWxsIGluY2x1ZGVkIGVudHJpZXMgYXJlIG1lcmdlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo3MAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPENoYW5nZXM6Pkk8IGNoYW5nZWxvZy1lbnRyaWVzPiIKK21zZ3N0ciAiQjxQYWNrYWdlOj4gRTxsdD7QuNC80Y8g0L/QsNC60LXRgtCwRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo3NworbXNnaWQgIiIKKyJUaGUgdGV4dCBvZiBhbGwgY2hhbmdlbG9nIGVudHJpZXMgaXMgY29uY2F0ZW5hdGVkLiBUbyBtYWtlIHRoaXMgZmllbGQgYSAiCisidmFsaWQgRGViaWFuIGNvbnRyb2wgZm9ybWF0IG11bHRpbGluZSBmaWVsZCBlbXB0eSBsaW5lcyBhcmUgcmVwbGFjZWQgd2l0aCBhICIKKyJzaW5nbGUgZnVsbCBzdG9wIGFuZCBhbGwgbGluZXMgaXMgaW50ZW5kZWQgYnkgb25lIHNwYWNlIGNoYXJhY3Rlci4gVGhlIGV4YWN0ICIKKyJjb250ZW50IGRlcGVuZHMgb24gdGhlIGNoYW5nZWxvZyBmb3JtYXQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo4MAorbXNnaWQgIlRoZXJlIG1pZ2h0IGJlIGFkZGl0aW9uYWwgdXNlci1kZWZpbmVkIGZpZWxkcyBwcmVzZW50LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6ODQKK21zZ2lkICIiCisiVGhlIEI8cmZjODIyPiBmb3JtYXQgdXNlcyB0aGUgc2FtZSBmaWVsZHMgYnV0IG91dHB1dHMgYSBzZXBhcmF0ZSBwYXJhZ3JhcGggIgorImZvciBlYWNoIGNoYW5nZWxvZyBlbnRyeSBzbyB0aGF0IGFsbCBtZXRhZGF0YSBmb3IgZWFjaCBlbnRyeSBpcyBwcmVzZXJ2ZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6ODQKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLXNpbmNlPiBJPHZlcnNpb24+LCBCPC1zPkk8dmVyc2lvbj4sQjwgLXY+STx2ZXJzaW9uPiIKK21zZ3N0ciAiQjwtcz58QjwtLXNpZ25hbD4gSTzRgdC40LPQvdCw0Ls+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6ODcKK21zZ2lkICJpbmNsdWRlIGFsbCBjaGFuZ2VzIGxhdGVyIHRoYW4gSTx2ZXJzaW9uPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo4NworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tdW50aWw+IEk8dmVyc2lvbj4sIEI8LXU+STx2ZXJzaW9uPiIKK21zZ3N0ciAiQjxkcGtnIC0tdmVyc2lvbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo5MAorbXNnaWQgImluY2x1ZGUgYWxsIGNoYW5nZXMgZWFybGllciB0aGFuIEk8dmVyc2lvbj4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6OTAKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWZyb20+IEk8dmVyc2lvbj4sIEI8LWY+STx2ZXJzaW9uPiIKK21zZ3N0ciAiQjxkcGtnIC0tdmVyc2lvbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo5MworbXNnaWQgImluY2x1ZGUgYWxsIGNoYW5nZXMgZXF1YWwgb3IgbGF0ZXIgdGhhbiBJPHZlcnNpb24+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjkzCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS10bz4gSTx2ZXJzaW9uPiwgQjwtdD5JPHZlcnNpb24+IgorbXNnc3RyICJCPGRwa2cgLS12ZXJzaW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjk2Cittc2dpZCAiaW5jbHVkZSBhbGwgY2hhbmdlcyB1cCB0byBvciBlcXVhbCB0aGFuIEk8dmVyc2lvbj4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6OTYKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWNvdW50PiBJPG51bWJlcj4sIEI8LWM+STxudW1iZXI+LCBCPC1uPkk8bnVtYmVyPiIKK21zZ3N0ciAiQjxzdGFydC1zdG9wLWRhZW1vbj4gQjwtUz58QjwtLXN0YXJ0PiBJPNC/0LDRgNCw0LzQtdGC0YDRiz4gW0I8LS0+XSBJPNCw0YDQs9GD0LzQtdC90YLRiz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxMDAKK21zZ2lkICIiCisiaW5jbHVkZSBJPG51bWJlcj4gZW50cmllcyBmcm9tIHRoZSB0b3AgKG9yIHRoZSB0YWlsIGlmIEk8bnVtYmVyPiBpcyBsb3dlciAiCisidGhhbiAwKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxMDAKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLW9mZnNldD4gSTxudW1iZXI+LCBCPC1vPkk8bnVtYmVyPiIKK21zZ3N0ciAiQjwtLWFib3J0LWFmdGVyPT5JPNGH0LjRgdC70L4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTA0Cittc2dpZCAiIgorImNoYW5nZSB0aGUgc3RhcnRpbmcgcG9pbnQgZm9yIC0tY291bnQsIGNvdW50ZWQgZnJvbSB0aGUgdG9wIChvciB0aGUgdGFpbCBpZiAiCisiSTxudW1iZXI+IGlzIGxvd2VyIHRoYW4gMCkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTA0IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyNjgKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWFsbD4iCittc2dzdHIgIkI8aW5zdGFsbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxMDgKK21zZ2lkICIiCisiaW5jbHVkZSBhbGwgY2hhbmdlcy4gTm90ZTogb3RoZXIgb3B0aW9ucyBoYXZlIG5vIGVmZmVjdCB3aGVuIHRoaXMgaXMgaW4gdXNlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTE0Cittc2dpZCAiIgorIkFsbCBCPFBhcnNlciBPcHRpb25zPiBleGNlcHQgZm9yIC12IGFyZSBvbmx5IHN1cHBvcnRlZCBpbiBCPGRwa2c+LCB2ZXJzaW9uICIKKyIxLjE0LjE2IGFuZCBsYXRlci4gVGhpcmQgcGFydHkgcGFyc2VycyBmb3IgY2hhbmdlbG9nIGZvcm1hdHMgb3RoZXIgdGhhbiAiCisiSTxkZWJpYW4+IG1pZ2h0IG5vdCBzdXBwb3J0IGFsbCBvcHRpb25zLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjExNgorIywgbm8td3JhcAorbXNnaWQgIkI8ZGViaWFuL2NoYW5nZWxvZz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjEyMgorbXNnaWQgIiIKKyJUaGUgY2hhbmdlbG9nIGZpbGUsIHVzZWQgdG8gb2J0YWluIHZlcnNpb24tZGVwZW5kZW50IGluZm9ybWF0aW9uIGFib3V0IHRoZSAiCisic291cmNlIHBhY2thZ2UsIHN1Y2ggYXMgdGhlIHVyZ2VuY3kgYW5kIGRpc3RyaWJ1dGlvbiBvZiBhbiB1cGxvYWQsIHRoZSAiCisiY2hhbmdlcyBtYWRlIHNpbmNlIGEgcGFydGljdWxhciByZWxlYXNlLCBhbmQgdGhlIHNvdXJjZSB2ZXJzaW9uIG51bWJlciAiCisiaXRzZWxmLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTI5CisjLCBmdXp6eQorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDA3LCAyMDA4IEZyYW5rIExpY2h0ZW5oZWxkIgorbXNnc3RyICJDb3B5cmlnaHQgMjAwMSBKb2V5IEhlc3MiCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLXF1ZXJ5LjE6MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJkcGtnLXF1ZXJ5IgorbXNnc3RyICJCPGRwa2ctcXVlcnktYWN0aW9ucz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMTo0Cittc2dpZCAiZHBrZy1xdWVyeSAtIGEgdG9vbCB0byBxdWVyeSB0aGUgZHBrZyBkYXRhYmFzZSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6OAorIywgZnV6enkKK21zZ2lkICJCPGRwa2ctcXVlcnk+IFtJPG9wdGlvbj4uLi5dIEk8Y29tbWFuZD4iCittc2dzdHIgIkI8ZHBrZz4gW0k80L/QsNGA0LDQvNC10YLRgNGLPl0gSTzQtNC10LnRgdGC0LLQuNC1PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjEyCittc2dpZCAiIgorIkI8ZHBrZy1xdWVyeT4gaXMgYSB0b29sIHRvIHNob3cgaW5mb3JtYXRpb24gYWJvdXQgcGFja2FnZXMgbGlzdGVkIGluIHRoZSAiCisiQjxkcGtnPiBkYXRhYmFzZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcXVlcnkuMToxNAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1sPiwgQjwtLWxpc3Q+IFtJPHBhY2thZ2UtbmFtZS1wYXR0ZXJuPi4uLl0iCittc2dzdHIgIkI8ZHBrZyAtLWdldC1zZWxlY3Rpb25zPiBbSTzRiNCw0LHQu9C+0L0g0LjQvNC10L3QuCDQv9Cw0LrQtdGC0LA+Li4uXSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjI0Cittc2dpZCAiIgorIkxpc3QgcGFja2FnZXMgbWF0Y2hpbmcgZ2l2ZW4gcGF0dGVybi4gSWYgbm8gSTxwYWNrYWdlLW5hbWUtcGF0dGVybj4gaXMgIgorImdpdmVuLCBsaXN0IGFsbCBwYWNrYWdlcyBpbiBJPC92YXIvbGliL2Rwa2cvc3RhdHVzPiwgZXhjbHVkaW5nIHRoZSBvbmVzICIKKyJtYXJrZWQgYXMgbm90LWluc3RhbGxlZCAoaS5lLiB0aG9zZSB3aGljaCBoYXZlIGJlZW4gcHJldmlvdXNseSBwdXJnZWQpLiAiCisiTm9ybWFsIHNoZWxsIHdpbGRjaGFycyBhcmUgYWxsb3dlZCBpbiBJPHBhY2thZ2UtbmFtZS1wYXR0ZXJuPi4gUGxlYXNlIG5vdGUgIgorInlvdSB3aWxsIHByb2JhYmx5IGhhdmUgdG8gcXVvdGUgSTxwYWNrYWdlLW5hbWUtcGF0dGVybj4gdG8gcHJldmVudCB0aGUgc2hlbGwgIgorImZyb20gcGVyZm9ybWluZyBmaWxlbmFtZSBleHBhbnNpb24uIEZvciBleGFtcGxlIHRoaXMgd2lsbCBsaXN0IGFsbCBwYWNrYWdlICIKKyJuYW1lcyBzdGFydGluZyB3aXRoIGBgbGliYzYnJzoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjI3CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIiAgQjxkcGtnLXF1ZXJ5IC1sIFxcKGFxbGliYzYqXFwoYXE+XG4iCittc2dzdHIgIkI8IGRwa2cgLWwgXFwoYXEqdmkqXFwoYXE+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6MzEKK21zZ2lkICIiCisiVGhlIGZpcnN0IHRocmVlIGNvbHVtbnMgb2YgdGhlIG91dHB1dCBzaG93IHRoZSBkZXNpcmVkIGFjdGlvbiwgdGhlIHBhY2thZ2UgIgorInN0YXR1cywgYW5kIGVycm9ycywgaW4gdGhhdCBvcmRlci4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjMzCittc2dpZCAiRGVzaXJlZCBhY3Rpb246IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMTozOQorIywgbm8td3JhcAorbXNnaWQgIiIKKyIgIHUgPSBVbmtub3duXG4iCisiICBpID0gSW5zdGFsbFxuIgorIiAgaCA9IEhvbGRcbiIKKyIgIHIgPSBSZW1vdmVcbiIKKyIgIHAgPSBQdXJnZVxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMTo0MgorbXNnaWQgIlBhY2thZ2Ugc3RhdHVzOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6NTEKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiICBuID0gTm90LWluc3RhbGxlZFxuIgorIiAgYyA9IENvbmZpZy1maWxlc1xuIgorIiAgSCA9IEhhbGYtaW5zdGFsbGVkXG4iCisiICBVID0gVW5wYWNrZWRcbiIKKyIgIEYgPSBIYWxmLWNvbmZpZ3VyZWRcbiIKKyIgIFcgPSBUcmlnZ2Vycy1hd2FpdGluZ1xuIgorIiAgdCA9IFRyaWdnZXJzLXBlbmRpbmdcbiIKKyIgIGkgPSBJbnN0YWxsZWRcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6NTQKK21zZ2lkICJFcnJvciBmbGFnczoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjU3CisjLCBuby13cmFwCittc2dpZCAiIgorIiAgRTxsdD5lbXB0eUU8Z3Q+ID0gKG5vbmUpXG4iCisiICBSID0gUmVpbnN0LXJlcXVpcmVkXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjYyCittc2dpZCAiIgorIkFuIHVwcGVyY2FzZSBzdGF0dXMgb3IgZXJyb3IgbGV0dGVyIGluZGljYXRlcyB0aGUgcGFja2FnZSBpcyBsaWtlbHkgdG8gY2F1c2UgIgorInNldmVyZSBwcm9ibGVtcy4gUGxlYXNlIHJlZmVyIHRvIEI8ZHBrZz4oMSkgZm9yIGluZm9ybWF0aW9uIGFib3V0IHRoZSBhYm92ZSAiCisic3RhdGVzIGFuZCBmbGFncy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjY3Cittc2dpZCAiIgorIlRoZSBvdXRwdXQgZm9ybWF0IG9mIHRoaXMgb3B0aW9uIGlzIG5vdCBjb25maWd1cmFibGUsIGJ1dCB2YXJpZXMgIgorImF1dG9tYXRpY2FsbHkgdG8gZml0IHRoZSB0ZXJtaW5hbCB3aWR0aC4gSXQgaXMgaW50ZW5kZWQgZm9yIGh1bWFuIHJlYWRlcnMsICIKKyJhbmQgaXMgbm90IGVhc2lseSBtYWNoaW5lLXJlYWRhYmxlLiBTZWUgQjwtVz4gKEI8LS1zaG93PikgIGFuZCBCPC0tIgorInNob3dmb3JtYXQ+IGZvciBhIHdheSB0byBjb25maWd1cmUgdGhlIG91dHB1dCBmb3JtYXQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXF1ZXJ5LjE6NjcKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtVz4sIEI8LS1zaG93PiBbSTxwYWNrYWdlLW5hbWUtcGF0dGVybj4uLi5dIgorbXNnc3RyICJCPGRwa2cgLS1nZXQtc2VsZWN0aW9ucz4gW0k80YjQsNCx0LvQvtC9INC40LzQtdC90Lgg0L/QsNC60LXRgtCwPi4uLl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMTo3NAorbXNnaWQgIiIKKyJKdXN0IGxpa2UgdGhlIEI8LS1saXN0PiBvcHRpb24gdGhpcyB3aWxsIGxpc3QgYWxsIHBhY2thZ2VzIG1hdGNoaW5nIHRoZSAiCisiZ2l2ZW4gcGF0dGVybi4gSG93ZXZlciB0aGUgb3V0cHV0IGNhbiBiZSBjdXN0b21pemVkIHVzaW5nIHRoZSBCPC0tIgorInNob3dmb3JtYXQ+IG9wdGlvbi4gIFRoZSBkZWZhdWx0IG91dHB1dCBmb3JtYXQgZ2l2ZXMgb25lIGxpbmUgcGVyIG1hdGNoaW5nICIKKyJwYWNrYWdlLCBlYWNoIGxpbmUgaGF2aW5nIHRoZSBuYW1lIGFuZCBpbnN0YWxsZWQgdmVyc2lvbiBvZiB0aGUgcGFja2FnZSwgIgorInNlcGFyYXRlZCBieSBhIHRhYi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcXVlcnkuMTo3NAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1zPiwgQjwtLXN0YXR1cz4gSTxwYWNrYWdlLW5hbWU+Li4uIgorbXNnc3RyICJCPC1hPnxCPC0tc3RhcnRhcz4gSTzQv9C+0LvQvdC+0LVf0LjQvNGPPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjc5Cittc2dpZCAiIgorIlJlcG9ydCBzdGF0dXMgb2Ygc3BlY2lmaWVkIHBhY2thZ2UuIFRoaXMganVzdCBkaXNwbGF5cyB0aGUgZW50cnkgaW4gdGhlICIKKyJpbnN0YWxsZWQgcGFja2FnZSBzdGF0dXMgZGF0YWJhc2UuIFdoZW4gbXVsdGlwbGUgSTxwYWNrYWdlLW5hbWU+IGFyZSBsaXN0ZWQsICIKKyJ0aGUgcmVxdWVzdGVkIHN0YXR1cyBlbnRyaWVzIGFyZSBzZXBhcmF0ZWQgYnkgYW4gZW1wdHkgbGluZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcXVlcnkuMTo3OQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1MPiwgQjwtLWxpc3RmaWxlcz4gSTxwYWNrYWdlLW5hbWU+Li4uIgorbXNnc3RyICJCPGRwa2cgLWk+IHwgQjwtLWluc3RhbGw+IEk80LjQvNGPINGE0LDQudC70LAg0L/QsNC60LXRgtCwPi4uLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjg1Cittc2dpZCAiIgorIkxpc3QgZmlsZXMgaW5zdGFsbGVkIHRvIHlvdXIgc3lzdGVtIGZyb20gSTxwYWNrYWdlLW5hbWU+LiBXaGVuIG11bHRpcGxlICIKKyJJPHBhY2thZ2UtbmFtZT4gYXJlIGxpc3RlZCwgdGhlIHJlcXVlc3RlZCBsaXN0cyBvZiBmaWxlcyBhcmUgc2VwYXJhdGVkIGJ5IGFuICIKKyJlbXB0eSBsaW5lLiBIb3dldmVyLCBub3RlIHRoYXQgZmlsZXMgY3JlYXRlZCBieSBwYWNrYWdlLXNwZWNpZmljICIKKyJpbnN0YWxsYXRpb24tc2NyaXB0cyBhcmUgbm90IGxpc3RlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcXVlcnkuMTo4NQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1jPiwgQjwtLWNvbnRyb2wtcGF0aD4gSTxwYWNrYWdlLW5hbWU+IFtJPGNvbnRyb2wtZmlsZT5dIgorbXNnc3RyICJCPGRwa2ctY2hlY2tidWlsZGRlcHM+IC1CPC1CPiBbSTzRhNCw0LnQuyBjb250cm9sPl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMTo5MworbXNnaWQgIiIKKyJMaXN0IHBhdGhzIGZvciBjb250cm9sIGZpbGVzIGluc3RhbGxlZCB0byB5b3VyIHN5c3RlbSBmcm9tIEk8cGFja2FnZS1uYW1lPi4gICIKKyJJZiBJPGNvbnRyb2wtZmlsZT4gaXMgc3BlY2lmaWVkIHRoZW4gb25seSBsaXN0IHRoZSBwYXRoIGZvciB0aGF0IGNvbnRyb2wgIgorImZpbGUgaWYgaXQgaXMgcHJlc2VudC4gQjxXYXJuaW5nPjogdGhpcyBjb21tYW5kIGlzIHNlbWktcHVibGljLCBpdCBzaG91bGQgYmUgIgorInVzZWQgb25seSBhcyBhIGxhc3QgcmVzb3J0IHNvbHV0aW9uLCBhbmQgaWYgbm8gb3RoZXIgaW50ZXJmYWNlIGlzIGF2YWlsYWJsZS4gIgorIkl0IG1pZ2h0IGdldCBkZXByZWNhdGVkIGxhdGVyIG9uIGlmIGJldHRlciBpbnRlcmZhY2VzIG9yIHRoZSBjdXJyZW50ICIKKyJhcmNoaXRlY3R1cmFsIGRlZmljaWVuY2llcyBoYXZlIGJlZW4gc29sdmVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1xdWVyeS4xOjkzCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LVM+LCBCPC0tc2VhcmNoPiBJPGZpbGVuYW1lLXNlYXJjaC1wYXR0ZXJuPi4uLiIKK21zZ3N0ciAiQjxkcGtnIC0tZ2V0LXNlbGVjdGlvbnM+IFtJPNGI0LDQsdC70L7QvSDQuNC80LXQvdC4INC/0LDQutC10YLQsD4uLi5dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6OTkKK21zZ2lkICIiCisiU2VhcmNoIGZvciBwYWNrYWdlcyB0aGF0IG93biBmaWxlcyBjb3JyZXNwb25kaW5nIHRvIHRoZSBnaXZlbiBwYXR0ZXJuLiAgIgorIlN0YW5kYXJkIHNoZWxsIHdpbGRjaGFycyBjYW4gYmUgdXNlZCBpbiB0aGUgcGF0dGVybi4gIFRoaXMgY29tbWFuZCB3aWxsIG5vdCAiCisibGlzdCBleHRyYSBmaWxlcyBjcmVhdGVkIGJ5IG1haW50YWluZXIgc2NyaXB0cywgbm9yIHdpbGwgaXQgbGlzdCAiCisiYWx0ZXJuYXRpdmVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1xdWVyeS4xOjk5CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LXA+LCBCPC0tcHJpbnQtYXZhaWw+IEk8cGFja2FnZS1uYW1lPi4uLiIKK21zZ3N0ciAiQjwtbj58QjwtLW5hbWU+IEk80LjQvNGPX9C/0YDQvtGG0LXRgdGB0LA+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6MTA1Cittc2dpZCAiIgorIkRpc3BsYXkgZGV0YWlscyBhYm91dCBJPHBhY2thZ2UtbmFtZT4sIGFzIGZvdW5kIGluIEk8L3Zhci9saWIvZHBrZy8iCisiYXZhaWxhYmxlPi4gV2hlbiBtdWx0aXBsZSBJPHBhY2thZ2UtbmFtZT4gYXJlIGxpc3RlZCwgdGhlIHJlcXVlc3RlZCAiCisiSTxhdmFpbGFibGU+IGVudHJpZXMgYXJlIHNlcGFyYXRlZCBieSBhbiBlbXB0eSBsaW5lLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6MTEwCittc2dpZCAiIgorIlVzZXJzIG9mIEFQVC1iYXNlZCBmcm9udGVuZHMgc2hvdWxkIHVzZSBCPGFwdC1jYWNoZSBzaG93PiBJPHBhY2thZ2UtbmFtZT4gIgorImluc3RlYWQgYXMgdGhlIEk8YXZhaWxhYmxlPiBmaWxlIGlzIG9ubHkga2VwdCB1cC10by1kYXRlIHdoZW4gdXNpbmcgIgorIkI8ZHNlbGVjdD4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXF1ZXJ5LjE6MTIyCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LWY+LCBCPC0tc2hvd2Zvcm1hdD0+STxmb3JtYXQ+IgorbXNnc3RyICJCPC1yPnxCPC0tY2hyb290PiBJPHJvb3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6MTI5Cittc2dpZCAiSW4gdGhlIGZvcm1hdCBzdHJpbmcsIFxcKGxxQjxcXGU+XFwocnEgaW50cm9kdWNlcyBlc2NhcGVzOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6MTM0CisjLCBuby13cmFwCittc2dpZCAiIgorIiAgICBCPFxcZW4+ICBuZXdsaW5lXG4iCisiICAgIEI8XFxlcj4gIGNhcnJpYWdlIHJldHVyblxuIgorIiAgICBCPFxcZXQ+ICB0YWJcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6MTM5Cittc2dpZCAiIgorIlxcKGxxQjxcXGU+XFwocnEgYmVmb3JlIGFueSBvdGhlciBjaGFyYWN0ZXIgc3VwcHJlc3NlcyBhbnkgc3BlY2lhbCBtZWFuaW5nICIKKyJvZiB0aGUgZm9sbG93aW5nIGNoYXJhY3Rlciwgd2hpY2ggaXMgdXNlZnVsIGZvciBcXChscUI8XFxlPlxcKHJxIGFuZCBcXChscUI8IgorIiQ+XFwocnEuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMToxNDcKK21zZ2lkICIiCisiUGFja2FnZSBpbmZvcm1hdGlvbiBjYW4gYmUgaW5jbHVkZWQgYnkgaW5zZXJ0aW5nIHZhcmlhYmxlIHJlZmVyZW5jZXMgdG8gIgorInBhY2thZ2UgZmllbGRzIHVzaW5nIHRoZSBzeW50YXggXFwobHFCPCR7Pkk8ZmllbGQ+W0I8Oz5JPHdpZHRoPl1CPH0+XFwocnEuICIKKyJGaWVsZHMgYXJlIHByaW50ZWQgcmlnaHQtYWxpZ25lZCB1bmxlc3MgdGhlIHdpZHRoIGlzIG5lZ2F0aXZlIGluIHdoaWNoIGNhc2UgIgorImxlZnQgYWxpZ25tZW50IHdpbGwgYmUgdXNlZC4gVGhlIGZvbGxvd2luZyBJPGZpZWxkPnMgYXJlIHJlY29nbmlzZWQgYnV0IHRoZXkgIgorImFyZSBub3QgbmVjZXNzYXJpbHkgYXZhaWxhYmxlIGluIHRoZSBzdGF0dXMgZmlsZSAob25seSBpbnRlcm5hbCBmaWVsZHMgb3IgIgorImZpZWxkcyBzdG9yZWQgaW4gdGhlIGJpbmFyeSBwYWNrYWdlIGVuZCB1cCBpbiBpdCk6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMToxODIKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiICAgIEI8QXJjaGl0ZWN0dXJlPlxuIgorIiAgICBCPEJ1Z3M+XG4iCisiICAgIEI8Q29uZmZpbGVzPiAoaW50ZXJuYWwpXG4iCisiICAgIEI8Q29uZmlnLVZlcnNpb24+IChpbnRlcm5hbClcbiIKKyIgICAgQjxDb25mbGljdHM+XG4iCisiICAgIEI8QnJlYWtzPlxuIgorIiAgICBCPERlcGVuZHM+XG4iCisiICAgIEI8RGVzY3JpcHRpb24+XG4iCisiICAgIEI8RW5oYW5jZXM+XG4iCisiICAgIEI8RXNzZW50aWFsPlxuIgorIiAgICBCPEZpbGVuYW1lPiAoaW50ZXJuYWwsIGZyb250LWVuZCByZWxhdGVkKVxuIgorIiAgICBCPEhvbWVwYWdlPlxuIgorIiAgICBCPEluc3RhbGxlZC1TaXplPlxuIgorIiAgICBCPE1ENXN1bT4gKGludGVybmFsLCBmcm9udC1lbmQgcmVsYXRlZClcbiIKKyIgICAgQjxNU0RPUy1GaWxlbmFtZT4gKGludGVybmFsLCBmcm9udC1lbmQgcmVsYXRlZClcbiIKKyIgICAgQjxNYWludGFpbmVyPlxuIgorIiAgICBCPE9yaWdpbj5cbiIKKyIgICAgQjxQYWNrYWdlPlxuIgorIiAgICBCPFByZS1EZXBlbmRzPlxuIgorIiAgICBCPFByaW9yaXR5PlxuIgorIiAgICBCPFByb3ZpZGVzPlxuIgorIiAgICBCPFJlY29tbWVuZHM+XG4iCisiICAgIEI8UmVwbGFjZXM+XG4iCisiICAgIEI8UmV2aXNpb24+IChvYnNvbGV0ZSlcbiIKKyIgICAgQjxTZWN0aW9uPlxuIgorIiAgICBCPFNpemU+IChpbnRlcm5hbCwgZnJvbnQtZW5kIHJlbGF0ZWQpXG4iCisiICAgIEI8U291cmNlPlxuIgorIiAgICBCPFN0YXR1cz4gKGludGVybmFsKVxuIgorIiAgICBCPFN1Z2dlc3RzPlxuIgorIiAgICBCPFRhZz4gKHVzdWFsbHkgbm90IGluIHRoZSAuZGViIGJ1dCBpbiB0aGUgcmVwb3NpdG9yeSBQYWNrYWdlcyBmaWxlcylcbiIKKyIgICAgQjxUcmlnZ2Vycy1Bd2FpdGVkPiAoaW50ZXJuYWwpXG4iCisiICAgIEI8VHJpZ2dlcnMtUGVuZGluZz4gKGludGVybmFsKVxuIgorIiAgICBCPFZlcnNpb24+XG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjE5MAorbXNnaWQgIiIKKyJUaGUgZGVmYXVsdCBmb3JtYXQgc3RyaW5nIGlzIFxcKGxxQjwke1BhY2thZ2V9XFxldCR7VmVyc2lvbn1cXGVuPlxcKHJxLiAgIgorIkFjdHVhbGx5LCBhbGwgb3RoZXIgZmllbGRzIGZvdW5kIGluIHRoZSBzdGF0dXMgZmlsZSAoaS5lLiB1c2VyIGRlZmluZWQgIgorImZpZWxkcykgY2FuIGJlIHJlcXVlc3RlZCwgdG9vLiBUaGV5IHdpbGwgYmUgcHJpbnRlZCBhcy1pcywgdGhvdWdoLCBubyAiCisiY29udmVyc2lvbiBub3IgZXJyb3IgY2hlY2tpbmcgaXMgZG9uZSBvbiB0aGVtLiAgVG8gZ2V0IHRoZSBuYW1lIG9mIHRoZSBkcGtnICIKKyJtYWludGFpbmVyIGFuZCB0aGUgaW5zdGFsbGVkIHZlcnNpb24sIHlvdSBjb3VsZCBydW46IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMToxOTMKKyMsIG5vLXdyYXAKK21zZ2lkICIgIEI8ZHBrZy1xdWVyeSAtVyAtZj1cXChhcSR7UGFja2FnZX0gJHtWZXJzaW9ufVxcZXQke01haW50YWluZXJ9XFxlblxcKGFxIGRwa2c+XG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctcXVlcnkuMToxOTUgZHBrZy1zcGxpdC4xOjE3OSBzdGFydC1zdG9wLWRhZW1vbi44OjI1OQorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM3NAorIywgbm8td3JhcAorbXNnaWQgIkVYSVQgU1RBVFVTIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXF1ZXJ5LjE6MTk2IGRwa2ctc3BsaXQuMToxODAgc3RhcnQtc3RvcC1kYWVtb24uODoyNjAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6Mjg5IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozNzUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPDA+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMToxOTkKK21zZ2lkICJUaGUgcmVxdWVzdGVkIHF1ZXJ5IHdhcyBzdWNjZXNzZnVsbHkgcGVyZm9ybWVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1xdWVyeS4xOjE5OSBkcGtnLXNwbGl0LjE6MTg2IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjcwCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjI5MgorIywgbm8td3JhcAorbXNnaWQgIkI8MT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjIwMworbXNnaWQgIiIKKyJQcm9ibGVtcyB3ZXJlIGVuY291bnRlcmVkIHdoaWxlIHBhcnNpbmcgdGhlIGNvbW1hbmQgbGluZSBvciBwZXJmb3JtaW5nIHRoZSAiCisicXVlcnksIGluY2x1ZGluZyBubyBmaWxlIG9yIHBhY2thZ2UgYmVpbmcgZm91bmQgKGV4Y2VwdCBmb3IgLS1jb250cm9sLXBhdGgpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6MjEzCittc2dpZCAiIgorIlRoaXMgc2V0dGluZyBpbmZsdWVuY2VzIHRoZSBvdXRwdXQgb2YgdGhlIEI8LS1saXN0PiBvcHRpb24gYnkgY2hhbmdpbmcgdGhlICIKKyJ3aWR0aCBvZiBpdHMgb3V0cHV0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6MjE2CisjLCBmdXp6eQorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDAxIFdpY2hlcnQgQWtrZXJtYW4iCittc2dzdHIgIkNvcHlyaWdodCAyMDAxIEpvZXkgSGVzcyIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6MTUKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLXNjYW5wYWNrYWdlcyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjE4Cittc2dpZCAiZHBrZy1zY2FucGFja2FnZXMgLSBjcmVhdGUgUGFja2FnZXMgaW5kZXggZmlsZXMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2FucGFja2FnZXMuMToyNgorbXNnaWQgIiIKKyJCPGRwa2ctc2NhbnBhY2thZ2VzPiBbSTxvcHRpb24+Li4uXSBJPGJpbmFyeS1kaXI+IFtJPG92ZXJyaWRlLWZpbGU+IFtJPHBhdGgtIgorInByZWZpeD5dXSBCPEU8Z3Q+PiBJPFBhY2thZ2VzPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjM5Cittc2dpZCAiIgorIkI8ZHBrZy1zY2FucGFja2FnZXM+IHNvcnRzIHRocm91Z2ggYSB0cmVlIG9mIERlYmlhbiBiaW5hcnkgcGFja2FnZXMgYW5kICIKKyJjcmVhdGVzIGEgUGFja2FnZXMgZmlsZSwgdXNlZCBieSBCPGFwdD4oOCksIEI8ZHNlbGVjdD4oMSksIGV0YywgdG8gdGVsbCB0aGUgIgorInVzZXIgd2hhdCBwYWNrYWdlcyBhcmUgYXZhaWxhYmxlIGZvciBpbnN0YWxsYXRpb24uIFRoZXNlIFBhY2thZ2VzIGZpbGVzIGFyZSAiCisidGhlIHNhbWUgYXMgdGhvc2UgZm91bmQgb24gRGViaWFuIGFyY2hpdmUgc2l0ZXMgYW5kIENELVJPTXMuIFlvdSBtaWdodCB1c2UgIgorIkI8ZHBrZy1zY2FucGFja2FnZXM+IHlvdXJzZWxmIGlmIG1ha2luZyBhIGRpcmVjdG9yeSBvZiBsb2NhbCBwYWNrYWdlcyB0byAiCisiaW5zdGFsbCBvbiBhIGNsdXN0ZXIgb2YgbWFjaGluZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6NTEKK21zZ2lkICIiCisiQjxOb3RlOj4gSWYgeW91IHdhbnQgdG8gYWNjZXNzIHRoZSBnZW5lcmF0ZWQgUGFja2FnZXMgZmlsZSB3aXRoIEI8YXB0PiB5b3UgIgorIndpbGwgcHJvYmFibHkgbmVlZCB0byBjb21wcmVzcyB0aGUgZmlsZSB3aXRoIEI8YnppcDI+KDEpICAoZ2VuZXJhdGluZyBhICIKKyJQYWNrYWdlcy5iejIgZmlsZSkgb3IgQjxnemlwPigxKSAgKGdlbmVyYXRpbmcgYSBQYWNrYWdlcy5neiBmaWxlKS4gYXB0ICIKKyJpZ25vcmVzIHVuY29tcHJlc3NlZCBQYWNrYWdlcyBmaWxlcyBleGNlcHQgb24gbG9jYWwgYWNjZXNzIChpLmUuICBCPGZpbGU6Ly8+ICIKKyJzb3VyY2VzKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2FucGFja2FnZXMuMTo1OAorbXNnaWQgIiIKKyJJPGJpbmFyeWRpcj4gaXMgdGhlIG5hbWUgb2YgdGhlIHRyZWUgb2YgdGhlIGJpbmFyeSBwYWNrYWdlcyB0byBwcm9jZXNzIChmb3IgIgorImV4YW1wbGUsIEI8Y29udHJpYi9iaW5hcnktaTM4Nj4pLiAgSXQgaXMgYmVzdCB0byBtYWtlIHRoaXMgcmVsYXRpdmUgdG8gdGhlICIKKyJyb290IG9mIHRoZSBEZWJpYW4gYXJjaGl2ZSwgYmVjYXVzZSBldmVyeSBGaWxlbmFtZSBmaWVsZCBpbiB0aGUgbmV3IFBhY2thZ2VzICIKKyJmaWxlIHdpbGwgc3RhcnQgd2l0aCB0aGlzIHN0cmluZy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2FucGFja2FnZXMuMTo2MworbXNnaWQgIiIKKyJJPG92ZXJyaWRlZmlsZT4gaXMgdGhlIG5hbWUgb2YgYSBmaWxlIHRvIHJlYWQgd2hpY2ggY29udGFpbnMgaW5mb3JtYXRpb24gIgorImFib3V0IGhvdyB0aGUgcGFja2FnZSBmaXRzIGludG8gdGhlIGRpc3RyaWJ1dGlvbiAoaXQgY2FuIGJlIGEgY29tcHJlc3NlZCAiCisiZmlsZSk7IHNlZSBCPGRlYi1vdmVycmlkZT4oNSkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6NjYKK21zZ2lkICIiCisiSTxwYXRocHJlZml4PiBpcyBhbiBvcHRpb25hbCBzdHJpbmcgdG8gYmUgcHJlcGVuZGVkIHRvIHRoZSBGaWxlbmFtZSBmaWVsZHMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6NzAKK21zZ2lkICIiCisiSWYgbW9yZSB0aGFuIG9uZSB2ZXJzaW9uIG9mIGEgcGFja2FnZSBpcyBmb3VuZCBvbmx5IHRoZSBuZXdlc3Qgb25lIGlzICIKKyJpbmNsdWRlZCBpbiB0aGUgb3V0cHV0LiBJZiB0aGV5IGhhdmUgdGhlIHNhbWUgdmVyc2lvbiBhbmQgb25seSBkaWZmZXIgaW4gIgorImFyY2hpdGVjdHVyZSBvbmx5IHRoZSBmaXJzdCBvbmUgZm91bmQgaXMgdXNlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6NzIKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtdD4sIEI8LS10eXBlPiBJPHR5cGU+IgorbXNnc3RyICJCPC10PnxCPC0tdGVzdD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6NzUKK21zZ2lkICJTY2FuIGZvciAqLkk8dHlwZT4gcGFja2FnZXMsIGluc3RlYWQgb2YgKi5kZWIuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjc1CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LXU+LCBCPC0tdWRlYj4iCittc2dzdHIgIkI8LXE+fEI8LS1xdWlldD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6NzgKK21zZ2lkICJCPE9ic29sZXRlPiBhbGlhcyBmb3IgQjwtdHVkZWI+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1zY2FucGFja2FnZXMuMTo3OCBkcGtnLXNjYW5zb3VyY2VzLjE6NDkKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtZT4sIEI8LS1leHRyYS1vdmVycmlkZT4gSTxmaWxlPiIKK21zZ3N0ciAiQjwtcD58QjwtLXBpZGZpbGU+IEk8cGlkLdGE0LDQudC7PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2FucGFja2FnZXMuMTo4NCBkcGtnLXNjYW5zb3VyY2VzLjE6NTQKK21zZ2lkICIiCisiU2NhbiBJPGZpbGU+IHRvIGZpbmQgc3VwcGxlbWVudGFyeSBvdmVycmlkZXMgKHRoZSBmaWxlIGNhbiBiZSBjb21wcmVzc2VkKS4gIgorIlNlZSBCPGRlYi1leHRyYS1vdmVycmlkZT4oNSkgIGZvciBtb3JlIGluZm9ybWF0aW9uIG9uIGl0cyBmb3JtYXQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjg0CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LWE+LCBCPC0tYXJjaD4gSTxhcmNoPiIKK21zZ3N0ciAiQjwtZD58QjwtLWNoZGlyPiBJPNC/0YPRgtGMPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2FucGFja2FnZXMuMTo4OAorbXNnaWQgIiIKKyJVc2UgYSBwYXR0ZXJuIGNvbnNpc3Rpbmcgb2YgSTwqX2FsbC5kZWI+IGFuZCBJPCpfYXJjaC5kZWI+IGluc3RlYWQgb2YgIgorInNjYW5uaW5nIGZvciBhbGwgZGVicy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6ODgKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtbT4sIEI8LS1tdWx0aXZlcnNpb24+IgorbXNnc3RyICJCPC1WPnxCPC0tdmVyc2lvbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6OTEKK21zZ2lkICJJbmNsdWRlIGFsbCBmb3VuZCBwYWNrYWdlcyBpbiB0aGUgb3V0cHV0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zY2FucGFja2FnZXMuMTo5MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1NPiwgQjwtLW1lZGl1bT4gSTxpZC1zdHJpbmc+IgorbXNnc3RyICJCPC1wPnxCPC0tcGlkZmlsZT4gSTxwaWQt0YTQsNC50Ls+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjk2Cittc2dpZCAiIgorIkFkZCBhbiBYLU1lZGl1bSBmaWVsZCBjb250YWluaW5nIHRoZSB2YWx1ZSBJPGlkLXN0cmluZz4uIFRoaXMgZmllbGQgaXMgIgorInJlcXVpcmVkIGlmIHlvdSB3YW50IHRvIGdlbmVyYXRlIEI8UGFja2FnZXMuY2Q+IGZpbGVzIGZvciB1c2UgYnkgdGhlIG11bHRpY2QgIgorImFjY2VzcyBtZXRob2Qgb2YgZHNlbGVjdC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6MTAzIHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0NDgKKyMsIG5vLXdyYXAKK21zZ2lkICJESUFHTk9TVElDUyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjEwOQorbXNnaWQgIiIKKyJCPGRwa2ctc2NhbnBhY2thZ2VzPiBvdXRwdXRzIHRoZSB1c3VhbCBzZWxmLWV4cGxhbmF0b3J5IGVycm9ycy4gSXQgYWxzbyAiCisid2FybnMgYWJvdXQgcGFja2FnZXMgdGhhdCBhcmUgaW4gdGhlIHdyb25nIHN1YmRpcmVjdG9yeSwgYXJlIGR1cGxpY2F0ZWQsICIKKyJoYXZlIGEgRmlsZW5hbWUgZmllbGQgaW4gdGhlaXIgY29udHJvbCBmaWxlLCBhcmUgbWlzc2luZyBmcm9tIHRoZSBvdmVycmlkZSAiCisiZmlsZSwgb3IgaGF2ZSBtYWludGFpbmVyIHN1YnN0aXR1dGlvbnMgd2hpY2ggZG8gbm90IHRha2UgZWZmZWN0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjExNQorIywgZnV6enkKK21zZ2lkICIiCisiQjxkcGtnPigxKSwgQjxkc2VsZWN0PigxKSwgQjxkZWItb3ZlcnJpZGU+KDUpLCBCPGRlYi1leHRyYS1vdmVycmlkZT4oNSksICIKKyJCPGRwa2ctc2NhbnNvdXJjZXM+KDEpLiIKK21zZ3N0ciAiQjxkZWI+KDUpLCBCPGRwa2c+KDEpLCBCPGRwa2ctZGViPigxKS4iCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6MQorIywgbm8td3JhcAorbXNnaWQgImRwa2ctc2NhbnNvdXJjZXMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2Fuc291cmNlcy4xOjQKK21zZ2lkICJkcGtnLXNjYW5zb3VyY2VzIC0gY3JlYXRlIFNvdXJjZXMgaW5kZXggZmlsZXMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2Fuc291cmNlcy4xOjEyCittc2dpZCAiIgorIkI8ZHBrZy1zY2Fuc291cmNlcz4gW0k8b3B0aW9uPi4uLl0gSTxiaW5hcnktZGlyPiBbSTxvdmVycmlkZS1maWxlPiBbSTxwYXRoLSIKKyJwcmVmaXg+XV0gQjxFPGd0Pj4gSTxTb3VyY2VzPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6MTcKK21zZ2lkICIiCisiQjxkcGtnLXNjYW5zb3VyY2VzPiBzY2FucyB0aGUgZ2l2ZW4gSTxiaW5hcnktZGlyPiBmb3IgSTwuZHNjPiBmaWxlcy4gIFRoZXNlICIKKyJhcmUgdXNlZCB0byBjcmVhdGUgYSBEZWJpYW4gc291cmNlIGluZGV4LCB3aGljaCBpcyBvdXRwdXQgdG8gc3Rkb3V0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6MjgKK21zZ2lkICIiCisiVGhlIEk8b3ZlcnJpZGUtZmlsZT4sIGlmIGdpdmVuLCBpcyB1c2VkIHRvIHNldCBwcmlvcml0aWVzIGluIHRoZSByZXN1bHRpbmcgIgorImluZGV4IHJlY29yZHMgYW5kIHRvIG92ZXJyaWRlIHRoZSBtYWludGFpbmVyIGZpZWxkIGdpdmVuIGluIHRoZSBJPC5kc2M+ICIKKyJmaWxlcy4gVGhlIGZpbGUgY2FuIGJlIGNvbXByZXNzZWQuIFNlZSBCPGRlYi1vdmVycmlkZT4oNSkgIGZvciB0aGUgZm9ybWF0IG9mICIKKyJ0aGlzIGZpbGUuIFxccy0xTkI6XFxzMCBTaW5jZSB0aGUgb3ZlcnJpZGUgZmlsZSBpcyBpbmRleGVkIGJ5IGJpbmFyeSwgbm90ICIKKyJzb3VyY2UsIHBhY2thZ2VzLCB0aGVyZSdzIGEgYml0IG9mIGEgcHJvYmxlbSBoZXJlLiBUaGUgY3VycmVudCAiCisiaW1wbGVtZW50YXRpb24gdXNlcyB0aGUgaGlnaGVzdCBwcmlvcml0eSBvZiBhbGwgdGhlIGJpbmFyeSBwYWNrYWdlcyBwcm9kdWNlZCAiCisiYnkgYSBJPC5kc2M+IGZpbGUgZm9yIHRoZSBwcmlvcml0eSBvZiB0aGUgc291cmNlIHBhY2thZ2UsIGFuZCB0aGUgb3ZlcnJpZGUgIgorImVudHJ5IGZvciB0aGUgZmlyc3QgYmluYXJ5IHBhY2thZ2UgbGlzdGVkIGluIHRoZSBJPC5kc2M+IGZpbGUgdG8gbW9kaWZ5ICIKKyJtYWludGFpbmVyIGluZm9ybWF0aW9uLiBUaGlzIG1pZ2h0IGNoYW5nZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2Fuc291cmNlcy4xOjMyCittc2dpZCAiIgorIlRoZSBJPHBhdGgtcHJlZml4PiwgaWYgZ2l2ZW4sIGlzIHByZXBlbmRlZCB0byB0aGUgZGlyZWN0b3J5IGZpZWxkIGluIHRoZSAiCisiZ2VuZXJhdGVkIHNvdXJjZSBpbmRleC4gWW91IGdlbmVyYWxseSB1c2UgdGhpcyB0byBtYWtlIHRoZSBkaXJlY3RvcnkgZmllbGRzICIKKyJjb250YWluIHRoZSBwYXRoIGZyb20gdGhlIHRvcCBvZiB0aGUgRGViaWFuIGFyY2hpdmUgaGllcmFyY2h5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6NDMKK21zZ2lkICIiCisiQjxOb3RlOj4gSWYgeW91IHdhbnQgdG8gYWNjZXNzIHRoZSBnZW5lcmF0ZWQgU291cmNlcyBmaWxlIHdpdGggQjxhcHQ+KDgpICAiCisieW91IHdpbGwgcHJvYmFibHkgbmVlZCB0byBjb21wcmVzcyB0aGUgZmlsZSB3aXRoIEI8Z3ppcD4oMSkgIChnZW5lcmF0aW5nIGEgIgorIlNvdXJjZXMuZ3ogZmlsZSkuIGFwdCBpZ25vcmVzIHVuY29tcHJlc3NlZCBTb3VyY2VzIGZpbGVzIGV4Y2VwdCBvbiBsb2NhbCAiCisiYWNjZXNzIChpLmUuICBCPGZpbGU6Ly8+IHNvdXJjZXMpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1zY2Fuc291cmNlcy4xOjQ1CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LW4+LCBCPC0tbm8tc29ydD4iCittc2dzdHIgIkI8LW8+fEI8LS1va25vZG8+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6NDgKK21zZ2lkICIiCisiRG9uJ3Qgc29ydCB0aGUgaW5kZXggcmVjb3Jkcy4gTm9ybWFsbHkgdGhleSBhcmUgc29ydGVkIGJ5IHNvdXJjZSBwYWNrYWdlICIKKyJuYW1lLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1zY2Fuc291cmNlcy4xOjU0CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LXM+LCBCPC0tc291cmNlLW92ZXJyaWRlPiBJPGZpbGU+IgorbXNnc3RyICJCPC1wPnxCPC0tcGlkZmlsZT4gSTxwaWQt0YTQsNC50Ls+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6NTgKK21zZ2lkICIiCisiVXNlIEk8ZmlsZT4gYXMgdGhlIHNvdXJjZSBvdmVycmlkZSBmaWxlICh0aGUgZmlsZSBjYW4gYmUgY29tcHJlc3NlZCkuICBUaGUgIgorImRlZmF1bHQgaXMgdGhlIG5hbWUgb2YgdGhlIG92ZXJyaWRlIGZpbGUgeW91IHNwZWNpZmllZCB3aXRoIEk8LnNyYz4gYXBwZW5kZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMTo2NAorbXNnaWQgIiIKKyJUaGUgc291cmNlIG92ZXJyaWRlIGZpbGUgaXMgaW4gYSBkaWZmZXJlbnQgZm9ybWF0IGZyb20gdGhlIGJpbmFyeSBvdmVycmlkZSAiCisiZmlsZS4gSXQgY29udGFpbnMgb25seSB0d28gd2hpdGVzcGFjZSBzZXBhcmF0ZWQgZmllbGRzLCB0aGUgZmlyc3QgaXMgdGhlICIKKyJzb3VyY2UgcGFja2FnZSBuYW1lIGFuZCB0aGUgc2Vjb25kIGlzIHRoZSBzZWN0aW9uLiBCbGFuayBsaW5lcyBhbmQgY29tbWVudCAiCisibGluZXMgYXJlIGlnbm9yZWQgaW4gdGhlIG5vcm1hbCBtYW5uZXIuIElmIGEgcGFja2FnZSBhcHBlYXJzIGluIGJvdGggZmlsZXMgIgorInRoZSBzb3VyY2Ugb3ZlcnJpZGUgdGFrZXMgcHJlY2VkZW5jZSBmb3Igc2V0dGluZyB0aGUgc2VjdGlvbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMTo2NAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tZGVidWc+IgorbXNnc3RyICJCPC0tbm8tZGVic2lnPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2Fuc291cmNlcy4xOjY2Cittc2dpZCAiVHVybiBkZWJ1Z2dpbmcgb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMTo3NQorIywgZnV6enkKK21zZ2lkICJCPGRlYi1vdmVycmlkZT4oNSksIEI8ZGViLWV4dHJhLW92ZXJyaWRlPig1KSwgQjxkcGtnLXNjYW5wYWNrYWdlcz4oMSkuIgorbXNnc3RyICJCPGRlYj4oNSksIEI8ZHBrZz4oMSksIEI8ZHBrZy1kZWI+KDEpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2Fuc291cmNlcy4xOjc3Cittc2dpZCAiUm9kZXJpY2sgU2NoZXJ0bGVyIEU8bHQ+cm9kZXJpY2tAYXJnb24ub3JnRTxndD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJkcGtnLXNobGliZGVwcyIKK21zZ3N0ciAiZHBrZy1jaGVja2J1aWxkZGVwcyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTo0Cittc2dpZCAiZHBrZy1zaGxpYmRlcHMgLSBnZW5lcmF0ZSBzaGFyZWQgbGlicmFyeSBzdWJzdHZhciBkZXBlbmRlbmNpZXMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTo4CisjLCBmdXp6eQorbXNnaWQgIkI8ZHBrZy1zaGxpYmRlcHM+IFtJPG9wdGlvbj4uLi5dIFtCPC1lPl1JPGV4ZWN1dGFibGU+IFtJPG9wdGlvbj4uLi5dIgorbXNnc3RyICJCPGRwa2c+IFtJPNC/0LDRgNCw0LzQtdGC0YDRiz5dIEk80LTQtdC50YHRgtCy0LjQtT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjIKK21zZ2lkICIiCisiQjxkcGtnLXNobGliZGVwcz4gY2FsY3VsYXRlcyBzaGFyZWQgbGlicmFyeSBkZXBlbmRlbmNpZXMgZm9yIGV4ZWN1dGFibGVzICIKKyJuYW1lZCBpbiBpdHMgYXJndW1lbnRzLiBUaGUgZGVwZW5kZW5jaWVzIGFyZSBhZGRlZCB0byB0aGUgc3Vic3RpdHV0aW9uICIKKyJ2YXJpYWJsZXMgZmlsZSBCPGRlYmlhbi9zdWJzdHZhcnM+IGFzIHZhcmlhYmxlIG5hbWVzIEI8c2hsaWJzOiIKKyI+STxkZXBlbmRlbmN5ZmllbGQ+IHdoZXJlIEk8ZGVwZW5kZW5jeWZpZWxkPiBpcyBhIGRlcGVuZGVuY3kgZmllbGQgbmFtZS4gQW55ICIKKyJvdGhlciB2YXJpYWJsZXMgc3RhcnRpbmcgd2l0aCBCPHNobGliczo+IGFyZSByZW1vdmVkIGZyb20gdGhlIGZpbGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6NDUKK21zZ2lkICIiCisiQjxkcGtnLXNobGliZGVwcz4gaGFzIHR3byBwb3NzaWJsZSBzb3VyY2VzIG9mIGluZm9ybWF0aW9uIHRvIGdlbmVyYXRlICIKKyJkZXBlbmRlbmN5IGluZm9ybWF0aW9uLiBFaXRoZXIgSTxzeW1ib2xzPiBmaWxlcyBvciBJPHNobGlicz4gZmlsZXMuIEZvciBlYWNoICIKKyJiaW5hcnkgdGhhdCBCPGRwa2ctc2hsaWJkZXBzPiBhbmFseXplcywgaXQgZmluZHMgb3V0IHRoZSBsaXN0IG9mIGxpYnJhcmllcyAiCisidGhhdCBpdCdzIGxpbmtlZCB3aXRoLiAgVGhlbiwgZm9yIGVhY2ggbGlicmFyeSwgaXQgbG9va3MgdXAgZWl0aGVyIHRoZSAiCisiSTxzeW1ib2xzPiBmaWxlLCBvciB0aGUgSTxzaGxpYnM+IGZpbGUgKGlmIHRoZSBmb3JtZXIgZG9lc24ndCBleGlzdCBvciBpZiAiCisiZGViaWFuL3NobGlicy5sb2NhbCBjb250YWlucyB0aGUgcmVsZXZhbnQgZGVwZW5kZW5jeSkuIEJvdGggZmlsZXMgYXJlICIKKyJzdXBwb3NlZCB0byBiZSBwcm92aWRlZCBieSB0aGUgbGlicmFyeSBwYWNrYWdlIGFuZCBzaG91bGQgdGh1cyBiZSBhdmFpbGFibGUgIgorImFzIC92YXIvbGliL2Rwa2cvaW5mby9JPHBhY2thZ2U+Lkk8c3ltYm9scz4gb3IgL3Zhci9saWIvZHBrZy9pbmZvL0k8cGFja2FnZT4uIgorIkk8c2hsaWJzPi4gVGhlIHBhY2thZ2UgbmFtZSBpcyBpZGVudGlmaWVkIGluIHR3byBzdGVwczogZmluZCB0aGUgbGlicmFyeSAiCisiZmlsZSBvbiB0aGUgc3lzdGVtIChsb29raW5nIGluIHRoZSBzYW1lIGRpcmVjdG9yaWVzIHRoYXQgQjxsZC5zbz4gd291bGQgIgorInVzZSksIHRoZW4gdXNlIEI8ZHBrZyAtUyA+STxsaWJyYXJ5LWZpbGU+IHRvIGxvb2t1cCB0aGUgcGFja2FnZSBwcm92aWRpbmcgIgorInRoZSBsaWJyYXJ5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zaGxpYmRlcHMuMTo0NQorIywgbm8td3JhcAorbXNnaWQgIlN5bWJvbHMgZmlsZXMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTo1MAorbXNnaWQgIiIKKyJTeW1ib2xzIGZpbGVzIGNvbnRhaW4gZmluZXItZ3JhaW5lZCBkZXBlbmRlbmN5IGluZm9ybWF0aW9uIGJ5IHByb3ZpZGluZyB0aGUgIgorIm1pbmltdW0gZGVwZW5kZW5jeSBmb3IgZWFjaCBzeW1ib2wgdGhhdCB0aGUgbGlicmFyeSBleHBvcnRzLiBUaGUgc2NyaXB0ICIKKyJ0cmllcyB0byBmaW5kIGEgc3ltYm9scyBmaWxlIGFzc29jaWF0ZWQgdG8gYSBsaWJyYXJ5IHBhY2thZ2UgaW4gdGhlICIKKyJmb2xsb3dpbmcgcGxhY2VzIChmaXJzdCBtYXRjaCBpcyB1c2VkKToiCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6NTAKKyMsIG5vLXdyYXAKK21zZ2lkICJkZWJpYW4vKi9ERUJJQU4vc3ltYm9scyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjU4Cittc2dpZCAiIgorIlNoYXJlZCBsaWJyYXJ5IGluZm9ybWF0aW9uIGdlbmVyYXRlZCBieSB0aGUgY3VycmVudCBidWlsZCBwcm9jZXNzIHRoYXQgYWxzbyAiCisiaW52b2tlZCBCPGRwa2ctc2hsaWJkZXBzPi4gIFRoZXkgYXJlIGdlbmVyYXRlZCBieSBCPGRwa2ctZ2Vuc3ltYm9scz4oMSkuICAiCisiVGhleSBhcmUgb25seSB1c2VkIGlmIHRoZSBsaWJyYXJ5IGlzIGZvdW5kIGluIGEgcGFja2FnZSdzIGJ1aWxkIHRyZWUuIFRoZSAiCisic3ltYm9scyBmaWxlIGluIHRoYXQgYnVpbGQgdHJlZSB0YWtlcyBwcmVjZWRlbmNlIG92ZXIgc3ltYm9scyBmaWxlcyBmcm9tICIKKyJvdGhlciBiaW5hcnkgcGFja2FnZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLXNobGliZGVwcy4xOjU4CisjLCBuby13cmFwCittc2dpZCAiL2V0Yy9kcGtnL3N5bWJvbHMvSTxwYWNrYWdlPi5zeW1ib2xzLkk8YXJjaD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6NTkKKyMsIG5vLXdyYXAKK21zZ2lkICIvZXRjL2Rwa2cvc3ltYm9scy9JPHBhY2thZ2U+LnN5bWJvbHMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTo2MworbXNnaWQgIiIKKyJQZXItc3lzdGVtIG92ZXJyaWRpbmcgc2hhcmVkIGxpYnJhcnkgZGVwZW5kZW5jeSBpbmZvcm1hdGlvbi4gIEk8YXJjaD4gaXMgdGhlICIKKyJhcmNoaXRlY3R1cmUgb2YgdGhlIGN1cnJlbnQgc3lzdGVtIChvYnRhaW5lZCBieSBCPGRwa2ctYXJjaGl0ZWN0dXJlIC0iCisicURFQl9IT1NUX0FSQ0g+KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6NjMKKyMsIG5vLXdyYXAKK21zZ2lkICJPdXRwdXQgZnJvbSBcXChscUI8ZHBrZy1xdWVyeSAtLWNvbnRyb2wtcGF0aD4gSTxwYWNrYWdlPiBzeW1ib2xzXFwocnEiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTo2NiBkcGtnLXNobGliZGVwcy4xOjEwMAorbXNnaWQgIiIKKyJQYWNrYWdlLXByb3ZpZGVkIHNoYXJlZCBsaWJyYXJ5IGRlcGVuZGVuY3kgaW5mb3JtYXRpb24uICBVbmxlc3Mgb3ZlcnJpZGRlbiAiCisiYnkgLS1hZG1pbmRpciwgdGhvc2UgZmlsZXMgYXJlIGxvY2F0ZWQgaW4gL3Zhci9saWIvZHBrZy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTo3MworbXNnaWQgIiIKKyJXaGlsZSBzY2FubmluZyB0aGUgc3ltYm9scyB1c2VkIGJ5IGFsbCBiaW5hcmllcywgQjxkcGtnLXNobGliZGVwcz4gcmVtZW1iZXJzICIKKyJ0aGUgKGJpZ2dlc3QpIG1pbmltYWwgdmVyc2lvbiBuZWVkZWQgZm9yIGVhY2ggbGlicmFyeS4gQXQgdGhlIGVuZCBvZiB0aGUgIgorInByb2Nlc3MsIGl0IGlzIGFibGUgdG8gd3JpdGUgb3V0IHRoZSBtaW5pbWFsIGRlcGVuZGVuY3kgZm9yIGV2ZXJ5IGxpYnJhcnkgIgorInVzZWQgKHByb3ZpZGVkIHRoYXQgdGhlIGluZm9ybWF0aW9uIG9mIHRoZSBJPHN5bWJvbHM+IGZpbGVzIGFyZSBhY2N1cmF0ZSkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6ODAKK21zZ2lkICIiCisiQXMgYSBzYWZlLWd1YXJkIG1lYXN1cmUsIGEgc3ltYm9scyBmaWxlIGNhbiBwcm92aWRlIGEgSTxCdWlsZC1EZXBlbmRzLSIKKyJQYWNrYWdlPiBtZXRhLWluZm9ybWF0aW9uIGZpZWxkIGFuZCBCPGRwa2ctc2hsaWJkZXBzPiB3aWxsIGV4dHJhY3QgdGhlICIKKyJtaW5pbWFsIHZlcnNpb24gcmVxdWlyZWQgYnkgdGhlIGNvcnJlc3BvbmRpbmcgcGFja2FnZSBpbiB0aGUgQnVpbGQtRGVwZW5kcyAiCisiZmllbGQgYW5kIHVzZSB0aGlzIHZlcnNpb24gaWYgaXQncyBoaWdoZXIgdGhhbiB0aGUgbWluaW1hbCB2ZXJzaW9uIGNvbXB1dGVkICIKKyJieSBzY2FubmluZyBzeW1ib2xzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zaGxpYmRlcHMuMTo4MAorIywgbm8td3JhcAorbXNnaWQgIlNobGlicyBmaWxlcyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjg0Cittc2dpZCAiIgorIlNobGlicyBmaWxlcyBhc3NvY2lhdGUgZGlyZWN0bHkgYSBsaWJyYXJ5IHRvIGEgZGVwZW5kZW5jeSAod2l0aG91dCBsb29raW5nICIKKyJhdCB0aGUgc3ltYm9scykuIEl0J3MgdGh1cyBvZnRlbiBzdHJvbmdlciB0aGFuIHJlYWxseSBuZWVkZWQgYnV0IHZlcnkgc2FmZSAiCisiYW5kIGVhc3kgdG8gaGFuZGxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjg3Cittc2dpZCAiIgorIlRoZSBkZXBlbmRlbmNpZXMgZm9yIGEgbGlicmFyeSBhcmUgbG9va2VkIHVwIGluIHNldmVyYWwgcGxhY2VzLiBUaGUgZmlyc3QgIgorImZpbGUgcHJvdmlkaW5nIGluZm9ybWF0aW9uIGZvciB0aGUgbGlicmFyeSBvZiBpbnRlcmVzdCBpcyB1c2VkOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1zaGxpYmRlcHMuMTo4NworIywgbm8td3JhcAorbXNnaWQgImRlYmlhbi9zaGxpYnMubG9jYWwiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTo4OQorbXNnaWQgIlBhY2thZ2UtbG9jYWwgb3ZlcnJpZGluZyBzaGFyZWQgbGlicmFyeSBkZXBlbmRlbmN5IGluZm9ybWF0aW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1zaGxpYmRlcHMuMTo4OQorIywgbm8td3JhcAorbXNnaWQgIi9ldGMvZHBrZy9zaGxpYnMub3ZlcnJpZGUiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTo5MQorbXNnaWQgIlBlci1zeXN0ZW0gb3ZlcnJpZGluZyBzaGFyZWQgbGlicmFyeSBkZXBlbmRlbmN5IGluZm9ybWF0aW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1zaGxpYmRlcHMuMTo5MQorIywgbm8td3JhcAorbXNnaWQgImRlYmlhbi8qL0RFQklBTi9zaGxpYnMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTo5NworbXNnaWQgIiIKKyJTaGFyZWQgbGlicmFyeSBpbmZvcm1hdGlvbiBnZW5lcmF0ZWQgYnkgdGhlIGN1cnJlbnQgYnVpbGQgcHJvY2VzcyB0aGF0IGFsc28gIgorImludm9rZWQgQjxkcGtnLXNobGliZGVwcz4uICBUaGV5IGFyZSBvbmx5IHVzZWQgaWYgdGhlIGxpYnJhcnkgaXMgZm91bmQgaW4gYSAiCisicGFja2FnZSdzIGJ1aWxkIHRyZWUuIFRoZSBzaGxpYnMgZmlsZSBpbiB0aGF0IGJ1aWxkIHRyZWUgdGFrZXMgcHJlY2VkZW5jZSAiCisib3ZlciBzaGxpYnMgZmlsZXMgZnJvbSBvdGhlciBiaW5hcnkgcGFja2FnZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLXNobGliZGVwcy4xOjk3CisjLCBuby13cmFwCittc2dpZCAiT3V0cHV0IGZyb20gXFwobHFCPGRwa2ctcXVlcnkgLS1jb250cm9sLXBhdGg+IEk8cGFja2FnZT4gc2hsaWJzXFwocnEiCittc2dzdHIgIiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTAwCisjLCBuby13cmFwCittc2dpZCAiL2V0Yy9kcGtnL3NobGlicy5kZWZhdWx0IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTAyCittc2dpZCAiUGVyLXN5c3RlbSBkZWZhdWx0IHNoYXJlZCBsaWJyYXJ5IGRlcGVuZGVuY3kgaW5mb3JtYXRpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTA2Cittc2dpZCAiIgorIlRoZSBleHRyYWN0ZWQgZGVwZW5kZW5jaWVzIGFyZSB0aGVuIGRpcmVjdGx5IHVzZWQgKGV4Y2VwdCBpZiB0aGV5IGFyZSAiCisiZmlsdGVyZWQgb3V0IGJlY2F1c2UgdGhleSBoYXZlIGJlZW4gaWRlbnRpZmllZCBhcyBkdXBsaWNhdGUsIG9yIGFzIHdlYWtlciAiCisidGhhbiBhbm90aGVyIGRlcGVuZGVuY3kpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjExMQorbXNnaWQgIiIKKyJCPGRwa2ctc2hsaWJkZXBzPiBpbnRlcnByZXRzIG5vbi1vcHRpb24gYXJndW1lbnRzIGFzIGV4ZWN1dGFibGUgbmFtZXMsIGp1c3QgIgorImFzIGlmIHRoZXknZCBiZWVuIHN1cHBsaWVkIGFzIEI8LWU+STxleGVjdXRhYmxlPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTExCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LWU+STxleGVjdXRhYmxlPiIKK21zZ3N0ciAiQjwteD58QjwtLWV4ZWM+IEk80LjRgdC/0L7Qu9C90Y/QtdC80YvQuV/RhNCw0LnQuz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTE1Cittc2dpZCAiIgorIkluY2x1ZGUgZGVwZW5kZW5jaWVzIGFwcHJvcHJpYXRlIGZvciB0aGUgc2hhcmVkIGxpYnJhcmllcyByZXF1aXJlZCBieSAiCisiSTxleGVjdXRhYmxlPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTE1CisjLCBuby13cmFwCittc2dpZCAiQjwtZD5JPGRlcGVuZGVuY3lmaWVsZD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToxMjEKK21zZ2lkICIiCisiQWRkIGRlcGVuZGVuY2llcyB0byBiZSBhZGRlZCB0byB0aGUgY29udHJvbCBmaWxlIGRlcGVuZGVuY3kgZmllbGQgIgorIkk8ZGVwZW5kZW5jeWZpZWxkPi4gIChUaGUgZGVwZW5kZW5jaWVzIGZvciB0aGlzIGZpZWxkIGFyZSBwbGFjZWQgaW4gdGhlICIKKyJ2YXJpYWJsZSBCPHNobGliczo+STxkZXBlbmRlbmN5ZmllbGQ+LikiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToxMzEKK21zZ2lkICIiCisiVGhlIEI8LWQ+STxkZXBlbmRlbmN5ZmllbGQ+IG9wdGlvbiB0YWtlcyBlZmZlY3QgZm9yIGFsbCBleGVjdXRhYmxlcyBhZnRlciAiCisidGhlIG9wdGlvbiwgdW50aWwgdGhlIG5leHQgQjwtZD5JPGRlcGVuZGVuY3lmaWVsZD4uICBUaGUgZGVmYXVsdCAiCisiSTxkZXBlbmRlbmN5ZmllbGQ+IGlzIEI8RGVwZW5kcz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTM5Cittc2dpZCAiIgorIklmIHRoZSBzYW1lIGRlcGVuZGVuY3kgZW50cnkgKG9yIHNldCBvZiBhbHRlcm5hdGl2ZXMpIGFwcGVhcnMgaW4gbW9yZSB0aGFuICIKKyJvbmUgb2YgdGhlIHJlY29nbmlzZWQgZGVwZW5kZW5jeSBmaWVsZCBuYW1lcyBCPFByZS1EZXBlbmRzPiwgQjxEZXBlbmRzPiwgIgorIkI8UmVjb21tZW5kcz4sIEI8RW5oYW5jZXM+IG9yIEI8U3VnZ2VzdHM+IHRoZW4gQjxkcGtnLXNobGliZGVwcz4gd2lsbCAiCisiYXV0b21hdGljYWxseSByZW1vdmUgdGhlIGRlcGVuZGVuY3kgZnJvbSBhbGwgZmllbGRzIGV4Y2VwdCB0aGUgb25lICIKKyJyZXByZXNlbnRpbmcgdGhlIG1vc3QgaW1wb3J0YW50IGRlcGVuZGVuY2llcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTM5CisjLCBuby13cmFwCittc2dpZCAiQjwtcD5JPHZhcm5hbWVwcmVmaXg+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTUwCittc2dpZCAiIgorIlN0YXJ0IHN1YnN0aXR1dGlvbiB2YXJpYWJsZXMgd2l0aCBJPHZhcm5hbWVwcmVmaXg+Qjw6PiBpbnN0ZWFkIG9mIEI8c2hsaWJzOiIKKyI+LiAgTGlrZXdpc2UsIGFueSBleGlzdGluZyBzdWJzdGl0dXRpb24gdmFyaWFibGVzIHN0YXJ0aW5nIHdpdGggIgorIkk8dmFybmFtZXByZWZpeD5CPDo+IChyYXRoZXIgdGhhbiBCPHNobGliczo+KSAgYXJlIHJlbW92ZWQgZnJvbSB0aGUgdGhlICIKKyJzdWJzdGl0dXRpb24gdmFyaWFibGVzIGZpbGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTU2Cittc2dpZCAiIgorIlByaW50IHN1YnN0aXR1dGlvbiB2YXJpYWJsZSBzZXR0aW5ncyB0byBzdGFuZGFyZCBvdXRwdXQsIHJhdGhlciB0aGFuIGJlaW5nICIKKyJhZGRlZCB0byB0aGUgc3Vic3RpdHV0aW9uIHZhcmlhYmxlcyBmaWxlIChCPGRlYmlhbi9zdWJzdHZhcnM+IGJ5IGRlZmF1bHQpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zaGxpYmRlcHMuMToxNTYKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtdD5JPHR5cGU+IgorbXNnc3RyICJCPC10PnxCPC0tdGVzdD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTYzCittc2dpZCAiIgorIlByZWZlciBzaGFyZWQgbGlicmFyeSBkZXBlbmRlbmN5IGluZm9ybWF0aW9uIHRhZ2dlZCBmb3IgdGhlIGdpdmVuIHBhY2thZ2UgIgorInR5cGUuIElmIG5vIHRhZ2dlZCBpbmZvcm1hdGlvbiBpcyBhdmFpbGFibGUsIGZhbGxzIGJhY2sgdG8gdW50YWdnZWQgIgorImluZm9ybWF0aW9uLiBUaGUgZGVmYXVsdCBwYWNrYWdlIHR5cGUgaXMgXCJkZWJcIi4gU2hhcmVkIGxpYnJhcnkgZGVwZW5kZW5jeSAiCisiaW5mb3JtYXRpb24gaXMgdGFnZ2VkIGZvciBhIGdpdmVuIHR5cGUgYnkgcHJlZml4aW5nIGl0IHdpdGggdGhlIG5hbWUgb2YgdGhlICIKKyJ0eXBlLCBhIGNvbG9uLCBhbmQgd2hpdGVzcGFjZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTYzCisjLCBuby13cmFwCittc2dpZCAiQjwtTD5JPGxvY2Fsc2hsaWJzZmlsZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToxNjkKK21zZ2lkICIiCisiUmVhZCBvdmVycmlkaW5nIHNoYXJlZCBsaWJyYXJ5IGRlcGVuZGVuY3kgaW5mb3JtYXRpb24gZnJvbSAiCisiSTxsb2NhbHNobGlic2ZpbGU+IGluc3RlYWQgb2YgQjxkZWJpYW4vc2hsaWJzLmxvY2FsPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToxNzUKK21zZ2lkICIiCisiV3JpdGUgc3Vic3RpdHV0aW9uIHZhcmlhYmxlcyBpbiBJPHN1YnN0dmFyc2ZpbGU+OyB0aGUgZGVmYXVsdCBpcyBCPGRlYmlhbi8iCisic3Vic3R2YXJzPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTc1CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LXY+IgorbXNnc3RyICJCPC1HPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToxODAKK21zZ2lkICIiCisiRW5hYmxlIHZlcmJvc2UgbW9kZS4gTnVtZXJvdXMgbWVzc2FnZXMgYXJlIGRpc3BsYXllZCB0byBleHBsYWluIHdoYXQgQjxkcGtnLSIKKyJzaGxpYmRlcHM+IGRvZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNobGliZGVwcy4xOjE4MAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC14Pkk8cGFja2FnZT4iCittc2dzdHIgIkI8dW5wYWNrZWQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjE4NworbXNnaWQgIiIKKyJFeGNsdWRlIHRoZSBwYWNrYWdlIGZyb20gdGhlIGdlbmVyYXRlZCBkZXBlbmRlbmNpZXMuIFRoaXMgaXMgdXNlZnVsIHRvIGF2b2lkICIKKyJzZWxmLWRlcGVuZGVuY2llcyBmb3IgcGFja2FnZXMgd2hpY2ggcHJvdmlkZSBFTEYgYmluYXJpZXMgKGV4ZWN1dGFibGVzIG9yICIKKyJsaWJyYXJ5IHBsdWdpbnMpIHVzaW5nIGEgbGlicmFyeSBjb250YWluZWQgaW4gdGhlIHNhbWUgcGFja2FnZS4gVGhpcyBvcHRpb24gIgorImNhbiBiZSB1c2VkIG11bHRpcGxlIHRpbWVzIHRvIGV4Y2x1ZGUgc2V2ZXJhbCBwYWNrYWdlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTg3CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LVM+STxwa2didWlsZGRpcj4iCittc2dzdHIgIkI8LS1sb2c9Pkk80LjQvNGPINGE0LDQudC70LA+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjE5NAorbXNnaWQgIiIKKyJMb29rIGludG8gSTxwa2didWlsZGRpcj4gZmlyc3Qgd2hlbiB0cnlpbmcgdG8gZmluZCBhIGxpYnJhcnkuIFRoaXMgaXMgdXNlZnVsICIKKyJ3aGVuIHRoZSBzb3VyY2UgcGFja2FnZSBidWlsZHMgbXVsdGlwbGUgZmxhdm9ycyBvZiB0aGUgc2FtZSBsaWJyYXJ5IGFuZCB5b3UgIgorIndhbnQgdG8gZW5zdXJlIHRoYXQgeW91IGdldCB0aGUgZGVwZW5kZW5jeSBmcm9tIGEgZ2l2ZW4gYmluYXJ5IHBhY2thZ2UuIFlvdSAiCisiY2FuIHVzZSB0aGlzIG9wdGlvbiBtdWx0aXBsZSB0aW1lczogZGlyZWN0b3JpZXMgd2lsbCBiZSB0cmllZCBpbiB0aGUgc2FtZSAiCisib3JkZXIgYmVmb3JlIGRpcmVjdG9yaWVzIG9mIG90aGVyIGJpbmFyeSBwYWNrYWdlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTk0CisjLCBuby13cmFwCittc2dpZCAiQjwtLWlnbm9yZS1taXNzaW5nLWluZm8+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjAwCittc2dpZCAiIgorIkRvIG5vdCBmYWlsIGlmIGRlcGVuZGVuY3kgaW5mb3JtYXRpb24gY2FuJ3QgYmUgZm91bmQgZm9yIGEgc2hhcmVkIGxpYnJhcnkuICAiCisiVXNhZ2Ugb2YgdGhpcyBvcHRpb24gaXMgZGlzY291cmFnZWQsIGFsbCBsaWJyYXJpZXMgc2hvdWxkIHByb3ZpZGUgZGVwZW5kZW5jeSAiCisiaW5mb3JtYXRpb24gKGVpdGhlciB3aXRoIHNobGlicyBmaWxlcywgb3Igd2l0aCBzeW1ib2xzIGZpbGVzKSAgZXZlbiBpZiB0aGV5ICIKKyJhcmUgbm90IHlldCB1c2VkIGJ5IG90aGVyIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zaGxpYmRlcHMuMToyMDAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0td2FybmluZ3M9Pkk8dmFsdWU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjExCittc2dpZCAiIgorIkk8dmFsdWU+IGlzIGEgYml0IGZpZWxkIGRlZmluaW5nIHRoZSBzZXQgb2Ygd2FybmluZ3MgdGhhdCBjYW4gYmUgZW1pdHRlZCBieSAiCisiQjxkcGtnLXNobGliZGVwcz4uICBCaXQgMCAodmFsdWU9MSkgZW5hYmxlcyB0aGUgd2FybmluZyBcInN5bWJvbCBJPHN5bT4gdXNlZCAiCisiYnkgSTxiaW5hcnk+IGZvdW5kIGluIG5vbmUgb2YgdGhlIGxpYnJhcmllc1wiLCBiaXQgMSAodmFsdWU9MikgZW5hYmxlcyB0aGUgIgorIndhcm5pbmcgXCJkZXBlbmRlbmN5IG9uIEk8bGlicmFyeT4gY291bGQgYmUgYXZvaWRlZFwiIGFuZCBiaXQgMiAodmFsdWU9NCkgICIKKyJlbmFibGVzIHRoZSB3YXJuaW5nIFwiSTxiaW5hcnk+IHNob3VsZG4ndCBiZSBsaW5rZWQgd2l0aCBJPGxpYnJhcnk+XCIuICBUaGUgIgorImRlZmF1bHQgSTx2YWx1ZT4gaXMgMzogdGhlIGZpcnN0IHR3byB3YXJuaW5ncyBhcmUgYWN0aXZlIGJ5IGRlZmF1bHQsIHRoZSAiCisibGFzdCBvbmUgaXMgbm90LiBTZXQgSTx2YWx1ZT4gdG8gNyBpZiB5b3Ugd2FudCBhbGwgd2FybmluZ3MgdG8gYmUgYWN0aXZlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1zaGxpYmRlcHMuMToyMjIKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiV0FSTklOR1MiCittc2dzdHIgItCf0KDQldCU0KPQn9Cg0JXQltCU0JXQndCY0JUiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjMwCittc2dpZCAiIgorIlNpbmNlIEI8ZHBrZy1zaGxpYmRlcHM+IGFuYWx5emVzIHRoZSBzZXQgb2Ygc3ltYm9scyB1c2VkIGJ5IGVhY2ggYmluYXJ5IG9mICIKKyJ0aGUgZ2VuZXJhdGVkIHBhY2thZ2UsIGl0IGlzIGFibGUgdG8gZW1pdCB3YXJuaW5ncyBpbiBzZXZlcmFsIGNhc2VzLiBUaGV5ICIKKyJpbmZvcm0geW91IG9mIHRoaW5ncyB0aGF0IGNhbiBiZSBpbXByb3ZlZCBpbiB0aGUgcGFja2FnZS4gSW4gbW9zdCBjYXNlcywgIgorInRob3NlIGltcHJvdmVtZW50cyBjb25jZXJuIHRoZSB1cHN0cmVhbSBzb3VyY2VzIGRpcmVjdGx5LiBCeSBvcmRlciBvZiAiCisiZGVjcmVhc2luZyBpbXBvcnRhbmNlLCBoZXJlIGFyZSB0aGUgdmFyaW91cyB3YXJuaW5ncyB0aGF0IHlvdSBjYW4gZW5jb3VudGVyOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zaGxpYmRlcHMuMToyMzAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHN5bWJvbD5JPCBzeW0+QjwgdXNlZCBieSA+STxiaW5hcnk+QjwgZm91bmQgaW4gbm9uZSBvZiB0aGUgbGlicmFyaWVzLj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToyMzYKK21zZ2lkICIiCisiVGhlIGluZGljYXRlZCBzeW1ib2wgaGFzIG5vdCBiZWVuIGZvdW5kIGluIHRoZSBsaWJyYXJpZXMgbGlua2VkIHdpdGggdGhlICIKKyJiaW5hcnkuIFRoZSBJPGJpbmFyeT4gaXMgbW9zdCBsaWtlbHkgYSBsaWJyYXJ5IGFuZCBpdCBuZWVkcyB0byBiZSBsaW5rZWQgIgorIndpdGggYW4gYWRkaXRpb25hbCBsaWJyYXJ5IGR1cmluZyB0aGUgYnVpbGQgcHJvY2VzcyAob3B0aW9uIEI8LWw+STxsaWJyYXJ5PiAiCisib2YgdGhlIGxpbmtlcikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNobGliZGVwcy4xOjIzNgorIywgbm8td3JhcAorbXNnaWQgIkk8YmluYXJ5PkI8IGNvbnRhaW5zIGFuIHVucmVzb2x2YWJsZSByZWZlcmVuY2UgdG8gc3ltYm9sID5JPHN5bT5CPDogaXQncyBwcm9iYWJseSBhIHBsdWdpbj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToyNDkKK21zZ2lkICIiCisiVGhlIGluZGljYXRlZCBzeW1ib2wgaGFzIG5vdCBiZWVuIGZvdW5kIGluIHRoZSBsaWJyYXJpZXMgbGlua2VkIHdpdGggdGhlICIKKyJiaW5hcnkuIFRoZSBJPGJpbmFyeT4gaXMgbW9zdCBsaWtlbHkgYSBwbHVnaW4gYW5kIHRoZSBzeW1ib2wgaXMgcHJvYmFibHkgIgorInByb3ZpZGVkIGJ5IHRoZSBwcm9ncmFtIHRoYXQgbG9hZHMgdGhpcyBwbHVnaW4uIEluIHRoZW9yeSBhIHBsdWdpbiBkb2Vzbid0ICIKKyJoYXZlIGFueSBTT05BTUUgYnV0IHRoaXMgYmluYXJ5IGRvZXMgaGF2ZSBvbmUgYW5kIGFzIHN1Y2ggaXQgY291bGQgbm90IGJlICIKKyJjbGVhcmx5IGlkZW50aWZpZWQgYXMgc3VjaC4gSG93ZXZlciB0aGUgZmFjdCB0aGF0IHRoZSBiaW5hcnkgaXMgc3RvcmVkIGluIGEgIgorIm5vbi1wdWJsaWMgZGlyZWN0b3J5IGlzIGEgc3Ryb25nIGluZGljYXRpb24gdGhhdCdzIGl0J3Mgbm90IGEgbm9ybWFsIHNoYXJlZCAiCisibGlicmFyeS4gSWYgdGhlIGJpbmFyeSBpcyByZWFsbHkgYSBwbHVnaW4sIHRoZW4gZGlzcmVnYXJkIHRoaXMgd2FybmluZy4gQnV0ICIKKyJ0aGVyZSdzIGFsd2F5cyB0aGUgcG9zc2liaWxpdHkgdGhhdCBpdCdzIGEgcmVhbCBsaWJyYXJ5IGFuZCB0aGF0IHByb2dyYW1zICIKKyJsaW5raW5nIHRvIGl0IGFyZSB1c2luZyBhbiBSUEFUSCBzbyB0aGF0IHRoZSBkeW5hbWljIGxvYWRlciBmaW5kcyBpdC4gSW4gIgorInRoYXQgY2FzZSwgdGhlIGxpYnJhcnkgaXMgYnJva2VuIGFuZCBuZWVkcyB0byBiZSBmaXhlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjQ5CisjLCBuby13cmFwCittc2dpZCAiQjxkZXBlbmRlbmN5IG9uID5JPGxpYnJhcnk+QjwgY291bGQgYmUgYXZvaWRlZCBpZiA+STxiaW5hcmllcz5CPCB3ZXJlIG5vdCB1c2VsZXNzbHkgbGlua2VkIGFnYWluc3QgaXQgKHRoZXkgdXNlIG5vbmUgb2YgaXRzIHN5bWJvbHMpLj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToyNTUKK21zZ2lkICIiCisiTm9uZSBvZiB0aGUgSTxiaW5hcmllcz4gdGhhdCBhcmUgbGlua2VkIHdpdGggSTxsaWJyYXJ5PiB1c2UgYW55IG9mIHRoZSAiCisic3ltYm9scyBwcm92aWRlZCBieSB0aGUgbGlicmFyeS4gQnkgZml4aW5nIGFsbCB0aGUgYmluYXJpZXMsIHlvdSB3b3VsZCBhdm9pZCAiCisidGhlIGRlcGVuZGVuY3kgYXNzb2NpYXRlZCB0byB0aGlzIGxpYnJhcnkgKHVubGVzcyB0aGUgc2FtZSBkZXBlbmRlbmN5IGlzICIKKyJhbHNvIGdlbmVyYXRlZCBieSBhbm90aGVyIGxpYnJhcnkgdGhhdCBpcyByZWFsbHkgdXNlZCkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNobGliZGVwcy4xOjI1NQorIywgbm8td3JhcAorbXNnaWQgIkk8YmluYXJ5PkI8IHNob3VsZG4ndCBiZSBsaW5rZWQgd2l0aCA+STxsaWJyYXJ5PkI8IChpdCB1c2VzIG5vbmUgb2YgaXRzIHN5bWJvbHMpLj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToyNjIKK21zZ2lkICIiCisiVGhlIEk8YmluYXJ5PiBpcyBsaW5rZWQgdG8gYSBsaWJyYXJ5IHRoYXQgaXQgZG9lc24ndCBuZWVkLiBJdCdzIG5vdCBhICIKKyJwcm9ibGVtIGJ1dCBzb21lIHNtYWxsIHBlcmZvcm1hbmNlIGltcHJvdmVtZW50cyBpbiBiaW5hcnkgbG9hZCB0aW1lIGNhbiBiZSAiCisib2J0YWluZWQgYnkgbm90IGxpbmtpbmcgdGhpcyBsaWJyYXJ5IHRvIHRoaXMgYmluYXJ5LiBUaGlzIHdhcm5pbmcgY2hlY2tzIHRoZSAiCisic2FtZSBpbmZvcm1hdGlvbiB0aGFuIHRoZSBwcmV2aW91cyBvbmUgYnV0IGRvZXMgaXQgZm9yIGVhY2ggYmluYXJ5IGluc3RlYWQgIgorIm9mIGRvaW5nIHRoZSBjaGVjayBnbG9iYWxseSBvbiBhbGwgYmluYXJpZXMgYW5hbHl6ZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLXNobGliZGVwcy4xOjI2MgorIywgbm8td3JhcAorbXNnaWQgIkVSUk9SUyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjI2OQorbXNnaWQgIiIKKyJCPGRwa2ctc2hsaWJkZXBzPiB3aWxsIGZhaWwgaWYgaXQgY2FuJ3QgZmluZCBhIHB1YmxpYyBsaWJyYXJ5IHVzZWQgYnkgYSAiCisiYmluYXJ5IG9yIGlmIHRoaXMgbGlicmFyeSBoYXMgbm8gYXNzb2NpYXRlZCBkZXBlbmRlbmN5IGluZm9ybWF0aW9uIChlaXRoZXIgIgorInNobGlicyBmaWxlIG9yIHN5bWJvbHMgZmlsZSkuIEEgcHVibGljIGxpYnJhcnkgaGFzIGEgU09OQU1FIGFuZCBpcyB2ZXJzaW9uZWQgIgorIihsaWJzb21ldGhpbmcuc28uSTxYPikuIEEgcHJpdmF0ZSBsaWJyYXJ5IChsaWtlIGEgcGx1Z2luKSBzaG91bGQgbm90IGhhdmUgYSAiCisiU09OQU1FIGFuZCBkb2Vzbid0IG5lZWQgdG8gYmUgdmVyc2lvbmVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zaGxpYmRlcHMuMToyNjkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGNvdWxkbid0IGZpbmQgbGlicmFyeSA+STxsaWJyYXJ5LXNvbmFtZT5CPCBuZWVkZWQgYnkgPkk8YmluYXJ5PkI8IChpdHMgUlBBVEggaXMgJz5JPHJwYXRoPkI8Jyk+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6Mjg1Cittc2dpZCAiIgorIlRoZSBJPGJpbmFyeT4gdXNlcyBhIGxpYnJhcnkgY2FsbGVkIEk8bGlicmFyeS1zb25hbWU+IGJ1dCBCPGRwa2ctc2hsaWJkZXBzPiAiCisiaGFzIGJlZW4gdW5hYmxlIHRvIGZpbmQgdGhlIGxpYnJhcnkuICBCPGRwa2ctc2hsaWJkZXBzPiBjcmVhdGVzIGEgbGlzdCBvZiAiCisiZGlyZWN0b3JpZXMgdG8gY2hlY2sgYXMgZm9sbG93aW5nOiBkaXJlY3RvcmllcyBsaXN0ZWQgaW4gdGhlIFJQQVRIIG9mIHRoZSAiCisiYmluYXJ5LCBkaXJlY3RvcmllcyBsaXN0ZWQgaW4gL2V0Yy9sZC5zby5jb25mLCBkaXJlY3RvcmllcyBsaXN0ZWQgaW4gdGhlICIKKyJMRF9MSUJSQVJZX1BBVEggZW52aXJvbm1lbnQgdmFyaWFibGUsIGFuZCBzdGFuZGFyZCBwdWJsaWMgZGlyZWN0b3JpZXMgKC8iCisibGliLCAvdXNyL2xpYiwgL2xpYjMyLCAvdXNyL2xpYjMyLCAvbGliNjQsIC91c3IvbGliNjQpLiBUaGVuIGl0IGNoZWNrcyB0aG9zZSAiCisiZGlyZWN0b3JpZXMgaW4gdGhlIHBhY2thZ2UncyBidWlsZCB0cmVlIG9mIHRoZSBiaW5hcnkgYmVpbmcgYW5hbHl6ZWQsIGluIHRoZSAiCisicGFja2FnZXMnIGJ1aWxkIHRyZWVzIGluZGljYXRlZCB3aXRoIHRoZSAtUyBjb21tYW5kLWxpbmUgb3B0aW9uLCBpbiBvdGhlciAiCisicGFja2FnZXMnIGJ1aWxkIHRyZWVzIHRoYXQgY29udGFpbnMgYSBERUJJQU4vc2hsaWJzIG9yIERFQklBTi9zeW1ib2xzIGZpbGUgIgorImFuZCBmaW5hbGx5IGluIHRoZSByb290IGRpcmVjdG9yeS4gIElmIHRoZSBsaWJyYXJ5IGlzIG5vdCBmb3VuZCBpbiBhbnkgb2YgIgorInRob3NlIGRpcmVjdG9yaWVzLCB0aGVuIHlvdSBnZXQgdGhpcyBlcnJvci4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToyOTEKK21zZ2lkICIiCisiSWYgdGhlIGxpYnJhcnkgbm90IGZvdW5kIGlzIGluIGEgcHJpdmF0ZSBkaXJlY3Rvcnkgb2YgdGhlIHNhbWUgcGFja2FnZSwgdGhlbiAiCisieW91IHdhbnQgdG8gYWRkIHRoZSBkaXJlY3RvcnkgdG8gTERfTElCUkFSWV9QQVRILiBJZiBpdCdzIGluIGFub3RoZXIgYmluYXJ5ICIKKyJwYWNrYWdlIGJlaW5nIGJ1aWx0LCB5b3Ugd2FudCB0byBtYWtlIHN1cmUgdGhhdCB0aGUgc2hsaWJzL3N5bWJvbHMgZmlsZSBvZiAiCisidGhpcyBwYWNrYWdlIGlzIGFscmVhZHkgY3JlYXRlZCBhbmQgdGhhdCBMRF9MSUJSQVJZX1BBVEggY29udGFpbnMgdGhlICIKKyJhcHByb3ByaWF0ZSBkaXJlY3RvcnkgaWYgaXQgYWxzbyBpcyBpbiBhIHByaXZhdGUgZGlyZWN0b3J5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zaGxpYmRlcHMuMToyOTEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPG5vIGRlcGVuZGVuY3kgaW5mb3JtYXRpb24gZm91bmQgZm9yID5JPGxpYnJhcnktZmlsZT5CPCAodXNlZCBieSA+STxiaW5hcnk+QjwpLj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTozMDQKK21zZ2lkICIiCisiVGhlIGxpYnJhcnkgbmVlZGVkIGJ5IEk8YmluYXJ5PiBoYXMgYmVlbiBmb3VuZCBieSBCPGRwa2ctc2hsaWJkZXBzPiBpbiAiCisiSTxsaWJyYXJ5LWZpbGU+IGJ1dCBCPGRwa2ctc2hsaWJkZXBzPiBoYXMgYmVlbiB1bmFibGUgdG8gZmluZCBhbnkgZGVwZW5kZW5jeSAiCisiaW5mb3JtYXRpb24gZm9yIHRoYXQgbGlicmFyeS4gVG8gZmluZCBvdXQgdGhlIGRlcGVuZGVuY3ksIGl0IGhhcyB0cmllZCB0byAiCisibWFwIHRoZSBsaWJyYXJ5IHRvIGEgRGViaWFuIHBhY2thZ2Ugd2l0aCB0aGUgaGVscCBvZiBCPGRwa2cgLVMgPkk8bGlicmFyeS0iCisiZmlsZT4uICBUaGVuIGl0IGNoZWNrZWQgdGhlIGNvcnJlc3BvbmRpbmcgc2hsaWJzIGFuZCBzeW1ib2xzIGZpbGVzIGluIC92YXIvIgorImxpYi9kcGtnL2luZm8vLCBhbmQgaW4gdGhlIHZhcmlvdXMgcGFja2FnZSdzIGJ1aWxkIHRyZWVzIChkZWJpYW4vKi9ERUJJQU4vKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTozMTgKK21zZ2lkICIiCisiVGhpcyBmYWlsdXJlIGNhbiBiZSBjYXVzZWQgYnkgYSBiYWQgb3IgbWlzc2luZyBzaGxpYnMgb3Igc3ltYm9scyBmaWxlIGluIHRoZSAiCisicGFja2FnZSBvZiB0aGUgbGlicmFyeS4gSXQgbWlnaHQgYWxzbyBoYXBwZW4gaWYgdGhlIGxpYnJhcnkgaXMgYnVpbHQgd2l0aGluICIKKyJ0aGUgc2FtZSBzb3VyY2UgcGFja2FnZSBhbmQgaWYgdGhlIHNobGlicyBmaWxlcyBoYXMgbm90IHlldCBiZWVuIGNyZWF0ZWQgKGluICIKKyJ3aGljaCBjYXNlIHlvdSBtdXN0IGZpeCBkZWJpYW4vcnVsZXMgdG8gY3JlYXRlIHRoZSBzaGxpYnMgYmVmb3JlIGNhbGxpbmcgIgorIkI8ZHBrZy1zaGxpYmRlcHM+KS4gQmFkIFJQQVRIIGNhbiBhbHNvIGxlYWQgdG8gdGhlIGxpYnJhcnkgYmVpbmcgZm91bmQgdW5kZXIgIgorImEgbm9uLWNhbm9uaWNhbCBuYW1lIChleGFtcGxlOiAvdXNyL2xpYi9vcGVub2ZmaWNlLm9yZy8uLi9saWIvbGlic3NsLiIKKyJzby4wLjkuOCBpbnN0ZWFkIG9mIC91c3IvbGliL2xpYnNzbC5zby4wLjkuOCkgdGhhdCdzIG5vdCBhc3NvY2lhdGVkIHRvIGFueSAiCisicGFja2FnZSwgQjxkcGtnLXNobGliZGVwcz4gdHJpZXMgdG8gd29yayBhcm91bmQgdGhpcyBieSB0cnlpbmcgdG8gZmFsbGJhY2sgIgorIm9uIGEgY2Fub25pY2FsIG5hbWUgKHVzaW5nIEI8cmVhbHBhdGg+KDMpKSAgYnV0IGl0IG1pZ2h0IG5vdCBhbHdheXMgd29yay4gIgorIkl0J3MgYWx3YXlzIGJlc3QgdG8gY2xlYW4gdXAgdGhlIFJQQVRIIG9mIHRoZSBiaW5hcnkgdG8gYXZvaWQgcHJvYmxlbXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MzI0Cittc2dpZCAiIgorIkNhbGxpbmcgQjxkcGtnLXNobGliZGVwcz4gaW4gdmVyYm9zZSBtb2RlICgtdikgd2lsbCBwcm92aWRlIG11Y2ggbW9yZSAiCisiaW5mb3JtYXRpb24gYWJvdXQgd2hlcmUgaXQgdHJpZWQgdG8gZmluZCB0aGUgZGVwZW5kZW5jeSBpbmZvcm1hdGlvbi4gVGhpcyAiCisibWlnaHQgYmUgdXNlZnVsIGlmIHlvdSBkb24ndCB1bmRlcnN0YW5kIHdoeSBpdCdzIGdpdmluZyB5b3UgdGhpcyBlcnJvci4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTozMjgKKyMsIGZ1enp5Cittc2dpZCAiQjxkZWItc2hsaWJzPig1KSwgQjxkZWItc3ltYm9scz4oNSksIEI8ZHBrZy1nZW5zeW1ib2xzPigxKS4iCittc2dzdHIgIkI8ZGViPig1KSwgQjxkcGtnPigxKSwgQjxkcGtnLWRlYj4oMSkuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjMzNQorIywgZnV6enkKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAwNiBGcmFuayBMaWNodGVuaGVsZCIKK21zZ3N0ciAiQ29weXJpZ2h0IDIwMDEgSm9leSBIZXNzIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1zb3VyY2UuMToyCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgImRwa2ctc291cmNlIgorbXNnc3RyICLQutC+0LzQv9C70LXQutGCIGRwa2ciCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NQorbXNnaWQgImRwa2ctc291cmNlIC0gRGViaWFuIHNvdXJjZSBwYWNrYWdlICguZHNjKSBtYW5pcHVsYXRpb24gdG9vbCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjkKKyMsIGZ1enp5Cittc2dpZCAiQjxkcGtnLXNvdXJjZT4gW0k8b3B0aW9uPi4uLl0gSTxjb21tYW5kPiIKK21zZ3N0ciAiQjxkcGtnPiBbSTzQv9Cw0YDQsNC80LXRgtGA0Ys+XSBJPNC00LXQudGB0YLQstC40LU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjEzCittc2dpZCAiQjxkcGtnLXNvdXJjZT4gcGFja3MgYW5kIHVucGFja3MgRGViaWFuIHNvdXJjZSBhcmNoaXZlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToxNworbXNnaWQgIiIKKyJOb25lIG9mIHRoZXNlIGNvbW1hbmRzIGFsbG93IG11bHRpcGxlIG9wdGlvbnMgdG8gYmUgY29tYmluZWQgaW50byBvbmUsIGFuZCAiCisidGhleSBkbyBub3QgYWxsb3cgdGhlIHZhbHVlIGZvciBhbiBvcHRpb24gdG8gYmUgc3BlY2lmaWVkIGluIGEgc2VwYXJhdGUgIgorImFyZ3VtZW50LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMToxOQorIywgbm8td3JhcAorbXNnaWQgIkI8LXggPkk8ZmlsZW5hbWU+QjwuZHNjID5bSTxvdXRwdXQtZGlyZWN0b3J5Pl0iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToyOQorbXNnaWQgIiIKKyJFeHRyYWN0IGEgc291cmNlIHBhY2thZ2UuIE9uZSBub24tb3B0aW9uIGFyZ3VtZW50IG11c3QgYmUgc3VwcGxpZWQsIHRoZSBuYW1lICIKKyJvZiB0aGUgRGViaWFuIHNvdXJjZSBjb250cm9sIGZpbGUgKEI8LmRzYz4pLiAgQW4gb3B0aW9uYWwgc2Vjb25kIG5vbi1vcHRpb24gIgorImFyZ3VtZW50IG1heSBiZSBzdXBwbGllZCB0byBzcGVjaWZ5IHRoZSBkaXJlY3RvcnkgdG8gZXh0cmFjdCB0aGUgc291cmNlICIKKyJwYWNrYWdlIHRvLCB0aGlzIG11c3Qgbm90IGV4aXN0LiBJZiBubyBvdXRwdXQgZGlyZWN0b3J5IGlzIHNwZWNpZmllZCwgdGhlICIKKyJzb3VyY2UgcGFja2FnZSBpcyBleHRyYWN0ZWQgaW50byBhIGRpcmVjdG9yeSBuYW1lZCBJPHNvdXJjZT4tSTx2ZXJzaW9uPiAiCisidW5kZXIgdGhlIGN1cnJlbnQgd29ya2luZyBkaXJlY3RvcnkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MzUKK21zZ2lkICIiCisiQjxkcGtnLXNvdXJjZT4gd2lsbCByZWFkIHRoZSBuYW1lcyBvZiB0aGUgb3RoZXIgZmlsZShzKSBtYWtpbmcgdXAgdGhlIHNvdXJjZSAiCisicGFja2FnZSBmcm9tIHRoZSBjb250cm9sIGZpbGU7IHRoZXkgYXJlIGFzc3VtZWQgdG8gYmUgaW4gdGhlIHNhbWUgZGlyZWN0b3J5ICIKKyJhcyB0aGUgQjwuZHNjPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo0MworbXNnaWQgIiIKKyJUaGUgZmlsZXMgaW4gdGhlIGV4dHJhY3RlZCBwYWNrYWdlIHdpbGwgaGF2ZSB0aGVpciBwZXJtaXNzaW9ucyBhbmQgIgorIm93bmVyc2hpcHMgc2V0IHRvIHRob3NlIHdoaWNoIHdvdWxkIGhhdmUgYmVlbiBleHBlY3RlZCBpZiB0aGUgZmlsZXMgYW5kICIKKyJkaXJlY3RvcmllcyBoYWQgc2ltcGx5IGJlZW4gY3JlYXRlZCAtIGRpcmVjdG9yaWVzIGFuZCBleGVjdXRhYmxlIGZpbGVzIHdpbGwgIgorImJlIDA3NzcgYW5kIHBsYWluIGZpbGVzIHdpbGwgYmUgMDY2NiwgYm90aCBtb2RpZmllZCBieSB0aGUgZXh0cmFjdG9ycycgIgorInVtYXNrOyBpZiB0aGUgcGFyZW50IGRpcmVjdG9yeSBpcyBzZXRnaWQgdGhlbiB0aGUgZXh0cmFjdGVkIGRpcmVjdG9yaWVzIHdpbGwgIgorImJlIHRvbywgYW5kIGFsbCB0aGUgZmlsZXMgYW5kIGRpcmVjdG9yaWVzIHdpbGwgaW5oZXJpdCBpdHMgZ3JvdXAgb3duZXJzaGlwLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjQ4Cittc2dpZCAiIgorIklmIHRoZSBzb3VyY2UgcGFja2FnZSB1c2VzIGEgbm9uLXN0YW5kYXJkIGZvcm1hdCAoY3VycmVudGx5IHRoaXMgbWVhbnMgYWxsICIKKyJmb3JtYXRzIGV4Y2VwdCBcIjEuMFwiKSwgaXRzIG5hbWUgd2lsbCBiZSBzdG9yZWQgaW4gQjxkZWJpYW4vc291cmNlL2Zvcm1hdD4gIgorInNvIHRoYXQgdGhlIGZvbGxvd2luZyBidWlsZHMgb2YgdGhlIHNvdXJjZSBwYWNrYWdlIHVzZSB0aGUgc2FtZSBmb3JtYXQgYnkgIgorImRlZmF1bHQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjQ5CisjLCBuby13cmFwCittc2dpZCAiQjwtYj4gSTxkaXJlY3Rvcnk+IFtJPGZvcm1hdC1zcGVjaWZpYy1wYXJhbWV0ZXJzPl0iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1NgorbXNnaWQgIiIKKyJCdWlsZCBhIHNvdXJjZSBwYWNrYWdlLiBUaGUgZmlyc3Qgbm9uLW9wdGlvbiBhcmd1bWVudCBpcyB0YWtlbiBhcyB0aGUgbmFtZSAiCisib2YgdGhlIGRpcmVjdG9yeSBjb250YWluaW5nIHRoZSBkZWJpYW5pemVkIHNvdXJjZSB0cmVlIChpLmUuIHdpdGggYSBkZWJpYW4gIgorInN1Yi1kaXJlY3RvcnkgYW5kIG1heWJlIGNoYW5nZXMgdG8gdGhlIG9yaWdpbmFsIGZpbGVzKS4gIERlcGVuZGluZyBvbiB0aGUgIgorInNvdXJjZSBwYWNrYWdlIGZvcm1hdCB1c2VkIHRvIGJ1aWxkIHRoZSBwYWNrYWdlLCBhZGRpdGlvbmFsIHBhcmFtZXRlcnMgbWlnaHQgIgorImJlIGFjY2VwdGVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjY1Cittc2dpZCAiIgorIkI8ZHBrZy1zb3VyY2U+IHdpbGwgYnVpbGQgdGhlIHNvdXJjZSBwYWNrYWdlIHdpdGggdGhlIGZpcnN0IGZvcm1hdCBmb3VuZCBpbiAiCisidGhpcyBvcmRlcmVkIGxpc3Q6IHRoZSBmb3JtYXQgaW5kaWNhdGVkIHdpdGggdGhlIEk8LS1mb3JtYXQ+IGNvbW1hbmQgbGluZSAiCisib3B0aW9uLCB0aGUgZm9ybWF0IGluZGljYXRlZCBpbiBCPGRlYmlhbi9zb3VyY2UvZm9ybWF0PiwgXCIxLjBcIi4gVGhlICIKKyJmYWxsYmFjayB0byBcIjEuMFwiIGlzIGRlcHJlY2F0ZWQgYW5kIHdpbGwgYmUgcmVtb3ZlZCBhdCBzb21lIHBvaW50IGluIHRoZSAiCisiZnV0dXJlLCB5b3Ugc2hvdWxkIGFsd2F5cyBkb2N1bWVudCB0aGUgZGVzaXJlZCBzb3VyY2UgZm9ybWF0IGluIEI8ZGViaWFuLyIKKyJzb3VyY2UvZm9ybWF0Pi4gU2VlIHNlY3Rpb24gQjxTT1VSQ0UgUEFDS0FHRSBGT1JNQVRTPiBmb3IgYW4gZXh0ZW5zaXZlICIKKyJkZXNjcmlwdGlvbiBvZiB0aGUgdmFyaW91cyBzb3VyY2UgcGFja2FnZSBmb3JtYXRzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTo2NgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tcHJpbnQtZm9ybWF0PiBJPGRpcmVjdG9yeT4iCittc2dzdHIgIkI8LS1zdGF0dXMtZmQgPkk8RTxsdD5uRTxndD4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjcxCittc2dpZCAiIgorIlByaW50IHRoZSBzb3VyY2UgZm9ybWF0IHRoYXQgd291bGQgYmUgdXNlZCB0byBidWlsZCB0aGUgc291cmNlIHBhY2thZ2UgaWYgIgorIkI8ZHBrZy1zb3VyY2UgLWIgPkk8ZGlyZWN0b3J5PiB3YXMgY2FsbGVkIChpbiB0aGUgc2FtZSBjb25kaXRpb25zIGFuZCB3aXRoICIKKyJ0aGUgc2FtZSBwYXJhbWV0ZXJzKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NzIKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWJlZm9yZS1idWlsZD4gSTxkaXJlY3Rvcnk+IgorbXNnc3RyICJCPC0tc3RhdHVzLWZkID5JPEU8bHQ+bkU8Z3Q+PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo4MQorbXNnaWQgIiIKKyJSdW4gdGhlIGNvcnJlc3BvbmRpbmcgaG9vayBvZiB0aGUgc291cmNlIHBhY2thZ2UgZm9ybWF0LiBUaGlzIGhvb2sgaXMgY2FsbGVkICIKKyJiZWZvcmUgYW55IGJ1aWxkIG9mIHRoZSBwYWNrYWdlIChCPGRwa2ctYnVpbGRwYWNrYWdlPiBjYWxscyBpdCB2ZXJ5IGVhcmx5ICIKKyJldmVuIGJlZm9yZSBCPGRlYmlhbi9ydWxlcyBjbGVhbj4pLiBUaGlzIGNvbW1hbmQgaXMgaWRlbXBvdGVudCBhbmQgY2FuIGJlICIKKyJjYWxsZWQgbXVsdGlwbGUgdGltZXMuIE5vdCBhbGwgc291cmNlIGZvcm1hdHMgaW1wbGVtZW50IHNvbWV0aGluZyBpbiB0aGlzICIKKyJob29rLCBhbmQgdGhvc2UgdGhhdCBkbyB1c3VhbGx5IHByZXBhcmUgdGhlIHNvdXJjZSB0cmVlIGZvciB0aGUgYnVpbGQgZm9yICIKKyJleGFtcGxlIGJ5IGVuc3VyaW5nIHRoYXQgdGhlIERlYmlhbiBwYXRjaGVzIGFyZSBhcHBsaWVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTo4MgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tYWZ0ZXItYnVpbGQ+IEk8ZGlyZWN0b3J5PiIKK21zZ3N0ciAiQjwtLXN0YXR1cy1mZCA+STxFPGx0Pm5FPGd0Pj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6ODkKK21zZ2lkICIiCisiUnVuIHRoZSBjb3JyZXNwb25kaW5nIGhvb2sgb2YgdGhlIHNvdXJjZSBwYWNrYWdlIGZvcm1hdC4gVGhpcyBob29rIGlzIGNhbGxlZCAiCisiYWZ0ZXIgYW55IGJ1aWxkIG9mIHRoZSBwYWNrYWdlIChCPGRwa2ctYnVpbGRwYWNrYWdlPiBjYWxscyBpdCBsYXN0KS4gVGhpcyAiCisiY29tbWFuZCBpcyBpZGVtcG90ZW50IGFuZCBjYW4gYmUgY2FsbGVkIG11bHRpcGxlIHRpbWVzLiBOb3QgYWxsIHNvdXJjZSAiCisiZm9ybWF0cyBpbXBsZW1lbnQgc29tZXRoaW5nIGluIHRoaXMgaG9vaywgYW5kIHRob3NlIHRoYXQgZG8gdXN1YWxseSB1c2UgaXQgIgorInRvIHVuZG8gd2hhdCBCPC0tYmVmb3JlLWJ1aWxkPiBoYXMgZG9uZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6OTAKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWNvbW1pdD4gW0k8ZGlyZWN0b3J5Pl0gLi4uIgorbXNnc3RyICJCPC0tc3RhdHVzLWZkID5JPEU8bHQ+bkU8Z3Q+PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo5NQorbXNnaWQgIiIKKyJSZWNvcmQgY2hhbmdlcyBpbiB0aGUgc291cmNlIHRyZWUgdW5wYWNrZWQgaW4gSTxkaXJlY3Rvcnk+LiBUaGlzIGNvbW1hbmQgY2FuICIKKyJ0YWtlIHN1cHBsZW1lbnRhcnkgcGFyYW1ldGVycyBkZXBlbmRpbmcgb24gdGhlIHNvdXJjZSBmb3JtYXQuICBJdCB3aWxsIGVycm9yICIKKyJvdXQgZm9yIGZvcm1hdHMgd2hlcmUgdGhpcyBvcGVyYXRpb24gZG9lc24ndCBtZWFuIGFueXRoaW5nLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1zb3VyY2UuMToxMDMKKyMsIG5vLXdyYXAKK21zZ2lkICJHRU5FUklDIEJVSUxEIE9QVElPTlMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToxMTEKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRoZSBtYWluIHNvdXJjZSBjb250cm9sIGZpbGUgdG8gcmVhZCBpbmZvcm1hdGlvbiBmcm9tLiBUaGUgZGVmYXVsdCAiCisiaXMgQjxkZWJpYW4vY29udHJvbD4uICBJZiBnaXZlbiB3aXRoIHJlbGF0aXZlIHBhdGhuYW1lIHRoaXMgaXMgaW50ZXJwcmV0ZWQgIgorInN0YXJ0aW5nIGF0IHRoZSBzb3VyY2UgdHJlZSdzIHRvcCBsZXZlbCBkaXJlY3RvcnkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MTE4Cittc2dpZCAiIgorIlNwZWNpZmllcyB0aGUgY2hhbmdlIGxvZyBmaWxlIHRvIHJlYWQgaW5mb3JtYXRpb24gZnJvbS4gVGhlIGRlZmF1bHQgaXMgIgorIkI8ZGViaWFuL2NoYW5nZWxvZz4uICBJZiBnaXZlbiB3aXRoIHJlbGF0aXZlIHBhdGhuYW1lIHRoaXMgaXMgaW50ZXJwcmV0ZWQgIgorInN0YXJ0aW5nIGF0IHRoZSBzb3VyY2UgdHJlZSdzIHRvcCBsZXZlbCBkaXJlY3RvcnkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjEyMworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tZm9ybWF0PT5JPHZhbHVlPiIKK21zZ3N0ciAiQjwtLWFib3J0LWFmdGVyPT5JPNGH0LjRgdC70L4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjEyNworbXNnaWQgIiIKKyJVc2UgdGhlIGdpdmVuIGZvcm1hdCBmb3IgYnVpbGRpbmcgdGhlIHNvdXJjZSBwYWNrYWdlLiBJdCBkb2VzIG92ZXJyaWRlIGFueSAiCisiZm9ybWF0IGdpdmVuIGluIEI8ZGViaWFuL3NvdXJjZS9mb3JtYXQ+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjEzNworbXNnaWQgIiIKKyJSZWFkIHN1YnN0aXR1dGlvbiB2YXJpYWJsZXMgaW4gSTxzdWJzdHZhcnNmaWxlPjsgdGhlIGRlZmF1bHQgaXMgdG8gbm90IHJlYWQgIgorImFueSBmaWxlLiBUaGlzIG9wdGlvbiBjYW4gYmUgdXNlZCBtdWx0aXBsZSB0aW1lcyB0byByZWFkIHN1YnN0aXR1dGlvbiAiCisidmFyaWFibGVzIGZyb20gbXVsdGlwbGUgZmlsZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjE0MworIywgbm8td3JhcAorbXNnaWQgIkI8LVo+STxjb21wcmVzc2lvbj4sIEI8LS1jb21wcmVzc2lvbj49STxjb21wcmVzc2lvbj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToxNTEKK21zZ2lkICIiCisiU3BlY2lmeSB0aGUgY29tcHJlc3Npb24gdG8gdXNlIGZvciBjcmVhdGVkIGZpbGVzICh0YXJiYWxscyBhbmQgZGlmZnMpLiAgTm90ZSAiCisidGhhdCB0aGlzIG9wdGlvbiB3aWxsIG5vdCBjYXVzZSBleGlzdGluZyB0YXJiYWxscyB0byBiZSByZWNvbXByZXNzZWQsIGl0ICIKKyJvbmx5IGFmZmVjdHMgbmV3IGZpbGVzLiBTdXBwb3J0ZWQgdmFsdWVzIGFyZTogSTxnemlwPiwgSTxiemlwMj4sIEk8bHptYT4gYW5kICIKKyJJPHh6Pi4gIEk8Z3ppcD4gaXMgdGhlIGRlZmF1bHQuIEk8eHo+IGlzIG9ubHkgc3VwcG9ydGVkIHNpbmNlIGRwa2ctZGV2ICIKKyIxLjE1LjUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjE1MQorIywgbm8td3JhcAorbXNnaWQgIkI8LXo+STxsZXZlbD4sIEI8LS1jb21wcmVzc2lvbi1sZXZlbD49STxsZXZlbD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToxNTcKK21zZ2lkICIiCisiQ29tcHJlc3Npb24gbGV2ZWwgdG8gdXNlLiBBcyB3aXRoIEI8LVo+IGl0IG9ubHkgYWZmZWN0cyBuZXdseSBjcmVhdGVkIGZpbGVzLiAiCisiU3VwcG9ydGVkIHZhbHVlcyBhcmU6IEk8MT4gdG8gSTw5PiwgSTxiZXN0PiwgYW5kIEk8ZmFzdD4uICBUaGUgZGVmYXVsdCBpcyAiCisiSTw5PiBmb3IgZ3ppcCBhbmQgYnppcDIsIEk8Nj4gZm9yIHh6IGFuZCBsem1hLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMToxNTcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1pPltJPHJlZ2V4cD5dLCBCPC0tZGlmZi1pZ25vcmU+Wz1JPHJlZ2V4cD5dIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MTY5Cittc2dpZCAiIgorIllvdSBtYXkgc3BlY2lmeSBhIHBlcmwgcmVndWxhciBleHByZXNzaW9uIHRvIG1hdGNoIGZpbGVzIHlvdSB3YW50IGZpbHRlcmVkICIKKyJvdXQgb2YgdGhlIGxpc3Qgb2YgZmlsZXMgZm9yIHRoZSBkaWZmLiAoVGhpcyBsaXN0IGlzIGdlbmVyYXRlZCBieSBhIGZpbmQgIgorImNvbW1hbmQuKSAoSWYgdGhlIHNvdXJjZSBwYWNrYWdlIGlzIGJlaW5nIGJ1aWx0IGFzIGEgdmVyc2lvbiAzIHNvdXJjZSAiCisicGFja2FnZSB1c2luZyBhIFZDUywgdGhpcyBjYW4gYmUgdXNlZCB0byBpZ25vcmUgdW5jb21taXRlZCBjaGFuZ2VzIG9uICIKKyJzcGVjaWZpYyBmaWxlcy4gVXNpbmcgLWkuKiB3aWxsIGlnbm9yZSBhbGwgb2YgdGhlbS4pICBCPC1pPiBieSBpdHNlbGYgIgorImVuYWJsZXMgdGhlIG9wdGlvbiwgd2l0aCBhIGRlZmF1bHQgcmVnZXhwIHRoYXQgd2lsbCBmaWx0ZXIgb3V0IGNvbnRyb2wgZmlsZXMgIgorImFuZCBkaXJlY3RvcmllcyBvZiB0aGUgbW9zdCBjb21tb24gcmV2aXNpb24gY29udHJvbCBzeXN0ZW1zLCBiYWNrdXAgYW5kIHN3YXAgIgorImZpbGVzIGFuZCBMaWJ0b29sIGJ1aWxkIG91dHB1dCBkaXJlY3Rvcmllcy4gVGhlcmUgY2FuIG9ubHkgYmUgb25lIGFjdGl2ZSAiCisicmVnZXhwLCBvZiBtdWx0aXBsZSBCPC1pPiBvcHRpb25zIG9ubHkgdGhlIGxhc3Qgb25lIHdpbGwgdGFrZSBlZmZlY3QuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MTc5Cittc2dpZCAiIgorIlRoaXMgaXMgdmVyeSBoZWxwZnVsIGluIGN1dHRpbmcgb3V0IGV4dHJhbmVvdXMgZmlsZXMgdGhhdCBnZXQgaW5jbHVkZWQgaW4gIgorInRoZSBkaWZmLCBlLmcuIGlmIHlvdSBtYWludGFpbiB5b3VyIHNvdXJjZSBpbiBhIHJldmlzaW9uIGNvbnRyb2wgc3lzdGVtIGFuZCAiCisid2FudCB0byB1c2UgYSBjaGVja291dCB0byBidWlsZCBhIHNvdXJjZSBwYWNrYWdlIHdpdGhvdXQgaW5jbHVkaW5nIHRoZSAiCisiYWRkaXRpb25hbCBmaWxlcyBhbmQgZGlyZWN0b3JpZXMgdGhhdCBpdCB3aWxsIHVzdWFsbHkgY29udGFpbiAoZS5nLiBDVlMvLCAuIgorImN2c2lnbm9yZSwgLnN2bi8pLiBUaGUgZGVmYXVsdCByZWdleHAgaXMgYWxyZWFkeSB2ZXJ5IGV4aGF1c3RpdmUsIGJ1dCBpZiB5b3UgIgorIm5lZWQgdG8gcmVwbGFjZSBpdCwgcGxlYXNlIG5vdGUgdGhhdCBieSBkZWZhdWx0IGl0IGNhbiBtYXRjaCBhbnkgcGFydCBvZiBhICIKKyJwYXRoLCBzbyBpZiB5b3Ugd2FudCB0byBtYXRjaCB0aGUgYmVnaW4gb2YgYSBmaWxlbmFtZSBvciBvbmx5IGZ1bGwgIgorImZpbGVuYW1lcywgeW91IHdpbGwgbmVlZCB0byBwcm92aWRlIHRoZSBuZWNlc3NhcnkgYW5jaG9ycyAoZS5nLiAnKF58LyknLCAiCisiJygkfC8pJykgeW91cnNlbGYuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjE3OQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1leHRlbmQtZGlmZi1pZ25vcmU+PUk8cmVnZXhwPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjE4NgorbXNnaWQgIiIKKyJUaGUgcGVybCByZWd1bGFyIGV4cHJlc3Npb24gc3BlY2lmaWVkIHdpbGwgZXh0ZW5kIHRoZSBkZWZhdWx0IHZhbHVlIG9mIEI8LS0iCisiZGlmZi1pZ25vcmU+IGFuZCBpdHMgY3VycmVudCB2YWx1ZSAoaWYgc2V0KS4gSXQgZG9lcyB0aGlzIGJ5IGNvbmNhdGVuYXRpbmcgIgorIlwiQjx8Pkk8cmVnZXhwPlwiIHRvIHRoZSBleGlzdGluZyB2YWx1ZS4gIFRoaXMgb3B0aW9uIGlzIGNvbnZlbmllbnQgdG8gdXNlICIKKyJpbiBCPGRlYmlhbi9zb3VyY2Uvb3B0aW9ucz4gdG8gZXhjbHVkZSBzb21lIGF1dG8tZ2VuZXJhdGVkIGZpbGVzIGZyb20gdGhlICIKKyJhdXRvbWF0aWMgcGF0Y2ggZ2VuZXJhdGlvbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6MTg2CisjLCBuby13cmFwCittc2dpZCAiQjwtST5bSTxmaWxlLXBhdHRlcm4+XSwgQjwtLXRhci1pZ25vcmU+Wz1JPGZpbGUtcGF0dGVybj5dIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MTk1Cittc2dpZCAiIgorIklmIHRoaXMgb3B0aW9uIGlzIHNwZWNpZmllZCwgdGhlIHBhdHRlcm4gd2lsbCBiZSBwYXNzZWQgdG8gQjx0YXI+KDEpJ3MgLS0iCisiZXhjbHVkZSBvcHRpb24gd2hlbiBpdCBpcyBjYWxsZWQgdG8gZ2VuZXJhdGUgYSAub3JpZy50YXIgb3IgLnRhciBmaWxlLiBGb3IgIgorImV4YW1wbGUsIC1JQ1ZTIHdpbGwgbWFrZSB0YXIgc2tpcCBvdmVyIENWUyBkaXJlY3RvcmllcyB3aGVuIGdlbmVyYXRpbmcgYSAuIgorInRhci5neiBmaWxlLiBUaGUgb3B0aW9uIG1heSBiZSByZXBlYXRlZCBtdWx0aXBsZSB0aW1lcyB0byBsaXN0IG11bHRpcGxlICIKKyJwYXR0ZXJucyB0byBleGNsdWRlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjIwMAorbXNnaWQgIiIKKyJCPC1JPiBieSBpdHNlbGYgYWRkcyBkZWZhdWx0IC0tZXhjbHVkZSBvcHRpb25zIHRoYXQgd2lsbCBmaWx0ZXIgb3V0IGNvbnRyb2wgIgorImZpbGVzIGFuZCBkaXJlY3RvcmllcyBvZiB0aGUgbW9zdCBjb21tb24gcmV2aXNpb24gY29udHJvbCBzeXN0ZW1zLCBiYWNrdXAgIgorImFuZCBzd2FwIGZpbGVzIGFuZCBMaWJ0b29sIGJ1aWxkIG91dHB1dCBkaXJlY3Rvcmllcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToyMTIKK21zZ2lkICIiCisiQjxOb3RlOj4gV2hpbGUgdGhleSBoYXZlIHNpbWlsYXIgcHVycG9zZXMsIEI8LWk+IGFuZCBCPC1JPiBoYXZlIHZlcnkgIgorImRpZmZlcmVudCBzeW50YXggYW5kIHNlbWFudGljcy4gQjwtaT4gY2FuIG9ubHkgYmUgc3BlY2lmaWVkIG9uY2UgYW5kIHRha2VzIGEgIgorInBlcmwgY29tcGF0aWJsZSByZWd1bGFyIGV4cHJlc3Npb24gd2hpY2ggaXMgbWF0Y2hlZCBhZ2FpbnN0IHRoZSBmdWxsICIKKyJyZWxhdGl2ZSBwYXRoIG9mIGVhY2ggZmlsZS4gQjwtST4gY2FuIHNwZWNpZmllZCBtdWx0aXBsZSB0aW1lcyBhbmQgdGFrZXMgYSAiCisiZmlsZW5hbWUgcGF0dGVybiB3aXRoIHNoZWxsIHdpbGRjYXJkcy4gIFRoZSBwYXR0ZXJuIGlzIGFwcGxpZWQgdG8gdGhlIGZ1bGwgIgorInJlbGF0aXZlIHBhdGggYnV0IGFsc28gdG8gZWFjaCBwYXJ0IG9mIHRoZSBwYXRoIGluZGl2aWR1YWxseS4gVGhlIGV4YWN0ICIKKyJzZW1hbnRpYyBvZiB0YXIncyAtLWV4Y2x1ZGUgb3B0aW9uIGlzIHNvbWV3aGF0IGNvbXBsaWNhdGVkLCBzZWUgaHR0cDovL3d3dy4iCisiZ251Lm9yZy9zb2Z0d2FyZS90YXIvbWFudWFsL3Rhci5odG1sI3dpbGRjYXJkcyBmb3IgYSBmdWxsIGRvY3VtZW50YXRpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MjE1Cittc2dpZCAiIgorIlRoZSBkZWZhdWx0IHJlZ2V4cCBhbmQgcGF0dGVybnMgZm9yIGJvdGggb3B0aW9ucyBjYW4gYmUgc2VlbiBpbiB0aGUgb3V0cHV0ICIKKyJvZiB0aGUgQjwtLWhlbHA+IGNvbW1hbmQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLXNvdXJjZS4xOjIxNQorIywgbm8td3JhcAorbXNnaWQgIkdFTkVSSUMgRVhUUkFDVCBPUFRJT05TIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjIxNgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tbm8tY29weT4iCittc2dzdHIgIkI8LS1ub2NoZWNrPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToyMTkKK21zZ2lkICJEbyBub3QgY29weSBvcmlnaW5hbCB0YXJiYWxscyBuZWFyIHRoZSBleHRyYWN0ZWQgc291cmNlIHBhY2thZ2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjIxOQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tbm8tY2hlY2s+IgorbXNnc3RyICJCPC0tbm9jaGVjaz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MjIyCittc2dpZCAiRG8gbm90IGNoZWNrIHNpZ25hdHVyZXMgYW5kIGNoZWNrc3VtcyBiZWZvcmUgdW5wYWNraW5nLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMToyMjIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tcmVxdWlyZS12YWxpZC1zaWduYXR1cmU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MjMwCittc2dpZCAiIgorIlJlZnVzZSB0byB1bnBhY2sgdGhlIHNvdXJjZSBwYWNrYWdlIGlmIGl0IGRvZXNuJ3QgY29udGFpbiBhbiBPcGVuUEdQICIKKyJzaWduYXR1cmUgdGhhdCBjYW4gYmUgdmVyaWZpZWQgZWl0aGVyIHdpdGggdGhlIHVzZXIncyBJPHRydXN0ZWRrZXlzLmdwZz4gIgorImtleXJpbmcsIG9uZSBvZiB0aGUgdmVuZG9yLXNwZWNpZmljIGtleXJpbmdzLCBvciBvbmUgb2YgdGhlIG9mZmljaWFsIERlYmlhbiAiCisia2V5cmluZ3MgKEk8L3Vzci9zaGFyZS9rZXlyaW5ncy9kZWJpYW4ta2V5cmluZy5ncGc+IGFuZCBJPC91c3Ivc2hhcmUvIgorImtleXJpbmdzL2RlYmlhbi1tYWludGFpbmVycy5ncGc+KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctc291cmNlLjE6MjMxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIlNPVVJDRSBQQUNLQUdFIEZPUk1BVFMiCittc2dzdHIgItCk0JvQkNCT0Jgg0J/QkNCa0JXQotCQIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjIzNgorbXNnaWQgIiIKKyJJZiB5b3UgZG9uJ3Qga25vdyB3aGF0IHNvdXJjZSBmb3JtYXQgdG8gdXNlLCB5b3Ugc2hvdWxkIHByb2JhYmx5IHBpY2sgZWl0aGVyICIKKyJcIjMuMCAocXVpbHQpXCIgb3IgXCIzLjAgKG5hdGl2ZSlcIi4gU2VlIGh0dHA6Ly93aWtpLmRlYmlhbi5vcmcvUHJvamVjdHMvIgorIkRlYlNyYzMuMCBmb3IgaW5mb3JtYXRpb24gb24gdGhlIGRlcGxveW1lbnQgb2YgdGhvc2UgZm9ybWF0cyB3aXRoaW4gRGViaWFuLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMToyMzcKKyMsIG5vLXdyYXAKK21zZ2lkICJGb3JtYXQ6IDEuMCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjI0MQorbXNnaWQgIiIKKyJBIHNvdXJjZSBwYWNrYWdlIGluIHRoaXMgZm9ybWF0IGNvbnNpc3RzIGVpdGhlciBvZiBhIEI8Lm9yaWcudGFyLmd6PiAiCisiYXNzb2NpYXRlZCB0byBhIEI8LmRpZmYuZ3o+IG9yIGEgc2luZ2xlIEI8LnRhci5nej4gKGluIHRoYXQgY2FzZSB0aGUgcGFja2FnZSAiCisiaXMgc2FpZCB0byBiZSBJPG5hdGl2ZT4pLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjI0MyBkcGtnLXNvdXJjZS4xOjQxMSBkcGtnLXNvdXJjZS4xOjU4NiBkcGtnLXNvdXJjZS4xOjYyNQorbXNnaWQgIkI8RXh0cmFjdGluZz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToyNTMKK21zZ2lkICIiCisiRXh0cmFjdGluZyBhIG5hdGl2ZSBwYWNrYWdlIGlzIGEgc2ltcGxlIGV4dHJhY3Rpb24gb2YgdGhlIHNpbmdsZSB0YXJiYWxsIGluICIKKyJ0aGUgdGFyZ2V0IGRpcmVjdG9yeS4gRXh0cmFjdGluZyBhIG5vbi1uYXRpdmUgcGFja2FnZSBpcyBkb25lIGJ5IGZpcnN0ICIKKyJ1bnBhY2tpbmcgdGhlIEI8Lm9yaWcudGFyLmd6PiBhbmQgdGhlbiBhcHBseWluZyB0aGUgcGF0Y2ggY29udGFpbmVkIGluIHRoZSAiCisiQjwuZGlmZi5nej4gZmlsZS4gVGhlIHRpbWVzdGFtcCBvZiBhbGwgcGF0Y2hlZCBmaWxlcyBpcyByZXNldCB0byB0aGUgIgorImV4dHJhY3Rpb24gdGltZSBvZiB0aGUgc291cmNlIHBhY2thZ2UgKHRoaXMgYXZvaWRzIHRpbWVzdGFtcCBza2V3cyBsZWFkaW5nICIKKyJ0byBwcm9ibGVtcyB3aGVuIGF1dG9nZW5lcmF0ZWQgZmlsZXMgYXJlIHBhdGNoZWQpLiBUaGUgZGlmZiBjYW4gY3JlYXRlIG5ldyAiCisiZmlsZXMgKHRoZSB3aG9sZSBkZWJpYW4gZGlyZWN0b3J5IGlzIGNyZWF0ZWQgdGhhdCB3YXkpIGJ1dCBjYW4ndCByZW1vdmUgIgorImZpbGVzIChlbXB0eSBmaWxlcyB3aWxsIGJlIGxlZnQgb3ZlcikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MjU1IGRwa2ctc291cmNlLjE6NDM5IGRwa2ctc291cmNlLjE6NTk3IGRwa2ctc291cmNlLjE6NjMwCittc2dpZCAiQjxCdWlsZGluZz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToyNjEKK21zZ2lkICIiCisiQnVpbGRpbmcgYSBuYXRpdmUgcGFja2FnZSBpcyBqdXN0IGNyZWF0aW5nIGEgc2luZ2xlIHRhcmJhbGwgd2l0aCB0aGUgc291cmNlICIKKyJkaXJlY3RvcnkuIEJ1aWxkaW5nIGEgbm9uLW5hdGl2ZSBwYWNrYWdlIGludm9sdmVzIGV4dHJhY3RpbmcgdGhlIG9yaWdpbmFsICIKKyJ0YXJiYWxsIGluIGEgc2VwYXJhdGUgXCIub3JpZ1wiIGRpcmVjdG9yeSBhbmQgcmVnZW5lcmF0aW5nIHRoZSBCPC5kaWZmLmd6PiAiCisiYnkgY29tcGFyaW5nIHRoZSBzb3VyY2UgcGFja2FnZSBJPGRpcmVjdG9yeT4gd2l0aCB0aGUgLm9yaWcgZGlyZWN0b3J5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMToyNjIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPEJ1aWxkIG9wdGlvbnMgKHdpdGggLWIpOj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToyNzUKK21zZ2lkICIiCisiSWYgYSBzZWNvbmQgbm9uLW9wdGlvbiBhcmd1bWVudCBpcyBzdXBwbGllZCBpdCBzaG91bGQgYmUgdGhlIG5hbWUgb2YgdGhlICIKKyJvcmlnaW5hbCBzb3VyY2UgZGlyZWN0b3J5IG9yIHRhcmZpbGUgb3IgdGhlIGVtcHR5IHN0cmluZyBpZiB0aGUgcGFja2FnZSBpcyBhICIKKyJEZWJpYW4tc3BlY2lmaWMgb25lIGFuZCBzbyBoYXMgbm8gRGViaWFuaXNhdGlvbiBkaWZmcy4gSWYgbm8gc2Vjb25kIGFyZ3VtZW50ICIKKyJpcyBzdXBwbGllZCB0aGVuIEI8ZHBrZy1zb3VyY2U+IHdpbGwgbG9vayBmb3IgdGhlIG9yaWdpbmFsIHNvdXJjZSB0YXJmaWxlICIKKyJJPHBhY2thZ2U+QjxfPkk8dXBzdHJlYW0tdmVyc2lvbj5CPC5vcmlnLnRhci5nej4gb3IgdGhlIG9yaWdpbmFsIHNvdXJjZSAiCisiZGlyZWN0b3J5IEk8ZGlyZWN0b3J5PkI8Lm9yaWc+IGRlcGVuZGluZyBvbiB0aGUgQjwtc1g+IGFyZ3VtZW50cy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToyODEKK21zZ2lkICIiCisiQjwtc2E+LCBCPC1zcD4sIEI8LXNrPiwgQjwtc3U+IGFuZCBCPC1zcj4gd2lsbCBub3Qgb3ZlcndyaXRlIGV4aXN0aW5nICIKKyJ0YXJmaWxlcyBvciBkaXJlY3Rvcmllcy4gSWYgdGhpcyBpcyBkZXNpcmVkIHRoZW4gQjwtc0E+LCBCPC1zUD4sIEI8LXNLPiwgQjwtIgorInNVPiBhbmQgQjwtc1I+IHNob3VsZCBiZSB1c2VkIGluc3RlYWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjI4MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1zaz4iCittc2dzdHIgIkI8LUI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjI5MAorbXNnaWQgIiIKKyJTcGVjaWZpZXMgdG8gZXhwZWN0IHRoZSBvcmlnaW5hbCBzb3VyY2UgYXMgYSB0YXJmaWxlLCBieSBkZWZhdWx0ICIKKyJJPHBhY2thZ2U+QjxfPkk8dXBzdHJlYW0tdmVyc2lvbj5CPC5vcmlnLnRhci4+STxleHRlbnNpb24+LiAgSXQgd2lsbCBsZWF2ZSAiCisidGhpcyBvcmlnaW5hbCBzb3VyY2UgaW4gcGxhY2UgYXMgYSB0YXJmaWxlLCBvciBjb3B5IGl0IHRvIHRoZSBjdXJyZW50ICIKKyJkaXJlY3RvcnkgaWYgaXQgaXNuJ3QgYWxyZWFkeSB0aGVyZS4gVGhlIHRhcmJhbGwgd2lsbCBiZSB1bnBhY2tlZCBpbnRvICIKKyJJPGRpcmVjdG9yeT5CPC5vcmlnPiBmb3IgdGhlIGdlbmVyYXRpb24gb2YgdGhlIGRpZmYuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjI5MCBkcGtnLXNvdXJjZS4xOjM1OQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1zcD4iCittc2dzdHIgIkI8LUI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjI5NQorbXNnaWQgIkxpa2UgQjwtc2s+IGJ1dCB3aWxsIHJlbW92ZSB0aGUgZGlyZWN0b3J5IGFnYWluIGFmdGVyd2FyZHMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjI5NSBkcGtnLXNvdXJjZS4xOjM2NQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1zdT4iCittc2dzdHIgIkI8LUI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjMwMworbXNnaWQgIiIKKyJTcGVjaWZpZXMgdGhhdCB0aGUgb3JpZ2luYWwgc291cmNlIGlzIGV4cGVjdGVkIGFzIGEgZGlyZWN0b3J5LCBieSBkZWZhdWx0ICIKKyJJPHBhY2thZ2U+QjwtPkk8dXBzdHJlYW0tdmVyc2lvbj5CPC5vcmlnPiBhbmQgQjxkcGtnLXNvdXJjZT4gd2lsbCBjcmVhdGUgYSAiCisibmV3IG9yaWdpbmFsIHNvdXJjZSBhcmNoaXZlIGZyb20gaXQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjMwMworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1zcj4iCittc2dzdHIgIkI8LUI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjMwOAorbXNnaWQgIkxpa2UgQjwtc3U+IGJ1dCB3aWxsIHJlbW92ZSB0aGF0IGRpcmVjdG9yeSBhZnRlciBpdCBoYXMgYmVlbiB1c2VkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTozMDgKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtc3M+IgorbXNnc3RyICJCPC1CPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTozMTYKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRoYXQgdGhlIG9yaWdpbmFsIHNvdXJjZSBpcyBhdmFpbGFibGUgYm90aCBhcyBhIGRpcmVjdG9yeSBhbmQgYXMgYSAiCisidGFyZmlsZS4gZHBrZy1zb3VyY2Ugd2lsbCB1c2UgdGhlIGRpcmVjdG9yeSB0byBjcmVhdGUgdGhlIGRpZmYsIGJ1dCB0aGUgIgorInRhcmZpbGUgdG8gY3JlYXRlIHRoZSBCPC5kc2M+LiAgVGhpcyBvcHRpb24gbXVzdCBiZSB1c2VkIHdpdGggY2FyZSAtIGlmIHRoZSAiCisiZGlyZWN0b3J5IGFuZCB0YXJmaWxlIGRvIG5vdCBtYXRjaCBhIGJhZCBzb3VyY2UgYXJjaGl2ZSB3aWxsIGJlIGdlbmVyYXRlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6MzE2IGRwa2ctc291cmNlLjE6MzY4CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LXNuPiIKK21zZ3N0ciAiQjwtQj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MzIyCittc2dpZCAiIgorIlNwZWNpZmllcyB0byBub3QgbG9vayBmb3IgYW55IG9yaWdpbmFsIHNvdXJjZSwgYW5kIHRvIG5vdCBnZW5lcmF0ZSBhIGRpZmYuICAiCisiVGhlIHNlY29uZCBhcmd1bWVudCwgaWYgc3VwcGxpZWQsIG11c3QgYmUgdGhlIGVtcHR5IHN0cmluZy4gVGhpcyBpcyB1c2VkIGZvciAiCisiRGViaWFuLXNwZWNpZmljIHBhY2thZ2VzIHdoaWNoIGRvIG5vdCBoYXZlIGEgc2VwYXJhdGUgdXBzdHJlYW0gc291cmNlIGFuZCAiCisidGhlcmVmb3JlIGhhdmUgbm8gZGViaWFuaXNhdGlvbiBkaWZmcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6MzIyCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LXNhPiBvciBCPC1zQT4iCittc2dzdHIgIkI8LXQ+fEI8LS10ZXN0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTozNDgKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRvIGxvb2sgZm9yIHRoZSBvcmlnaW5hbCBzb3VyY2UgYXJjaGl2ZSBhcyBhIHRhcmZpbGUgb3IgYXMgYSAiCisiZGlyZWN0b3J5IC0gdGhlIHNlY29uZCBhcmd1bWVudCwgaWYgYW55LCBtYXkgYmUgZWl0aGVyLCBvciB0aGUgZW1wdHkgc3RyaW5nICIKKyIodGhpcyBpcyBlcXVpdmFsZW50IHRvIHVzaW5nIEI8LXNuPikuICBJZiBhIHRhcmZpbGUgaXMgZm91bmQgaXQgd2lsbCB1bnBhY2sgIgorIml0IHRvIGNyZWF0ZSB0aGUgZGlmZiBhbmQgcmVtb3ZlIGl0IGFmdGVyd2FyZHMgKHRoaXMgaXMgZXF1aXZhbGVudCB0byBCPC0iCisic3A+KTsgaWYgYSBkaXJlY3RvcnkgaXMgZm91bmQgaXQgd2lsbCBwYWNrIGl0IHRvIGNyZWF0ZSB0aGUgb3JpZ2luYWwgc291cmNlICIKKyJhbmQgcmVtb3ZlIGl0IGFmdGVyd2FyZHMgKHRoaXMgaXMgZXF1aXZhbGVudCB0byBCPC1zcj4pOyBpZiBuZWl0aGVyIGlzIGZvdW5kICIKKyJpdCB3aWxsIGFzc3VtZSB0aGF0IHRoZSBwYWNrYWdlIGhhcyBubyBkZWJpYW5pc2F0aW9uIGRpZmZzLCBvbmx5IGEgIgorInN0cmFpZ2h0Zm9yd2FyZCBzb3VyY2UgYXJjaGl2ZSAodGhpcyBpcyBlcXVpdmFsZW50IHRvIEI8LXNuPikuICBJZiBib3RoIGFyZSAiCisiZm91bmQgdGhlbiBCPGRwa2ctc291cmNlPiB3aWxsIGlnbm9yZSB0aGUgZGlyZWN0b3J5LCBvdmVyd3JpdGluZyBpdCwgaWYgQjwtIgorInNBPiB3YXMgc3BlY2lmaWVkICh0aGlzIGlzIGVxdWl2YWxlbnQgdG8gQjwtc1A+KSAgb3IgcmFpc2UgYW4gZXJyb3IgaWYgQjwtIgorInNhPiB3YXMgc3BlY2lmaWVkLiAgQjwtc0E+IGlzIHRoZSBkZWZhdWx0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTozNDggZHBrZy1zb3VyY2UuMTo1NDEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tYWJvcnQtb24tdXBzdHJlYW0tY2hhbmdlcz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTozNTQKK21zZ2lkICIiCisiVGhlIHByb2Nlc3MgZmFpbHMgaWYgdGhlIGdlbmVyYXRlZCBkaWZmIGNvbnRhaW5zIGNoYW5nZXMgdG8gZmlsZXMgb3V0c2lkZSBvZiAiCisidGhlIGRlYmlhbiBzdWItZGlyZWN0b3J5LiBUaGlzIG9wdGlvbiBpcyBub3QgYWxsb3dlZCBpbiBCPGRlYmlhbi9zb3VyY2UvIgorIm9wdGlvbnM+IGJ1dCBjYW4gYmUgdXNlZCBpbiBCPGRlYmlhbi9zb3VyY2UvbG9jYWwtb3B0aW9ucz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjM1NQorIywgbm8td3JhcAorbXNnaWQgIkI8RXh0cmFjdCBvcHRpb25zICh3aXRoIC14KTo+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MzU5Cittc2dpZCAiSW4gYWxsIGNhc2VzIGFueSBleGlzdGluZyBvcmlnaW5hbCBzb3VyY2UgdHJlZSB3aWxsIGJlIHJlbW92ZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MzY1Cittc2dpZCAiIgorIlVzZWQgd2hlbiBleHRyYWN0aW5nIHRoZW4gdGhlIG9yaWdpbmFsIHNvdXJjZSAoaWYgYW55KSB3aWxsIGJlIGxlZnQgYXMgYSAiCisidGFyZmlsZS4gSWYgaXQgaXMgbm90IGFscmVhZHkgbG9jYXRlZCBpbiB0aGUgY3VycmVudCBkaXJlY3Rvcnkgb3IgaWYgYW4gIgorImV4aXN0aW5nIGJ1dCBkaWZmZXJlbnQgZmlsZSBpcyB0aGVyZSBpdCB3aWxsIGJlIGNvcGllZCB0aGVyZS4gIChCPFRoaXMgaXMgIgorInRoZSBkZWZhdWx0PikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MzY4Cittc2dpZCAiVW5wYWNrcyB0aGUgb3JpZ2luYWwgc291cmNlIHRyZWUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MzczCittc2dpZCAiIgorIkVuc3VyZXMgdGhhdCB0aGUgb3JpZ2luYWwgc291cmNlIGlzIG5laXRoZXIgY29waWVkIHRvIHRoZSBjdXJyZW50IGRpcmVjdG9yeSAiCisibm9yIHVucGFja2VkLiBBbnkgb3JpZ2luYWwgc291cmNlIHRyZWUgdGhhdCB3YXMgaW4gdGhlIGN1cnJlbnQgZGlyZWN0b3J5IGlzICIKKyJzdGlsbCByZW1vdmVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjM3OAorbXNnaWQgIiIKKyJBbGwgdGhlIEI8LXM+STxYPiBvcHRpb25zIGFyZSBtdXR1YWxseSBleGNsdXNpdmUuIElmIHlvdSBzcGVjaWZ5IG1vcmUgdGhhbiAiCisib25lIG9ubHkgdGhlIGxhc3Qgb25lIHdpbGwgYmUgdXNlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6Mzc4IGRwa2ctc291cmNlLjE6NTU1CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1za2lwLWRlYmlhbml6YXRpb24+IgorbXNnc3RyICJCPGRwa2ctZGViLWFjdGlvbnM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjM4MQorbXNnaWQgIlNraXBzIGFwcGxpY2F0aW9uIG9mIHRoZSBkZWJpYW4gZGlmZiBvbiB0b3Agb2YgdGhlIHVwc3RyZWFtIHNvdXJjZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjM4MgorIywgbm8td3JhcAorbXNnaWQgIkZvcm1hdDogMi4wIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6Mzg2Cittc2dpZCAiIgorIkFsc28ga25vd24gYXMgd2lnJnBlbi4gVGhpcyBmb3JtYXQgaXMgbm90IHJlY29tbWVuZGVkIGZvciB3aWRlLXNwcmVhZCB1c2FnZSwgIgorInRoZSBmb3JtYXQgXCIzLjAgKHF1aWx0KVwiIHJlcGxhY2VzIGl0LiBXaWcmcGVuIHdhcyB0aGUgZmlyc3Qgc3BlY2lmaWNhdGlvbiAiCisib2YgYSBuZXctZ2VuZXJhdGlvbiBzb3VyY2UgcGFja2FnZSBmb3JtYXQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MzkxCittc2dpZCAiIgorIlRoZSBiZWhhdmlvdXIgb2YgdGhpcyBmb3JtYXQgaXMgdGhlIHNhbWUgYXMgdGhlIFwiMy4wIChxdWlsdClcIiBmb3JtYXQgIgorImV4Y2VwdCB0aGF0IGl0IGRvZXNuJ3QgdXNlIGFuIGV4cGxpY2l0IGxpc3Qgb2YgcGF0Y2hlcy4gQWxsIGZpbGVzIGluICIKKyJCPGRlYmlhbi9wYXRjaGVzLz4gbWF0Y2hpbmcgdGhlIHBlcmwgcmVndWxhciBleHByZXNzaW9uIEI8W1xcZXctXSs+IG11c3QgYmUgIgorInZhbGlkIHBhdGNoZXM6IHRoZXkgYXJlIGFwcGxpZWQgYXQgZXh0cmFjdGlvbiB0aW1lLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjM5NAorbXNnaWQgIiIKKyJXaGVuIGJ1aWxkaW5nIGEgbmV3IHNvdXJjZSBwYWNrYWdlLCBhbnkgY2hhbmdlIHRvIHRoZSB1cHN0cmVhbSBzb3VyY2UgaXMgIgorInN0b3JlZCBpbiBhIHBhdGNoIG5hbWVkIEI8enpfZGViaWFuLWRpZmYtYXV0bz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjM5NQorIywgbm8td3JhcAorbXNnaWQgIkZvcm1hdDogMy4wIChuYXRpdmUpIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NDAxCittc2dpZCAiIgorIlRoaXMgZm9ybWF0IGlzIGFuIGV4dGVuc2lvbiBvZiB0aGUgbmF0aXZlIHBhY2thZ2UgZm9ybWF0IGFzIGRlZmluZWQgaW4gdGhlICIKKyIxLjAgZm9ybWF0LiBJdCBzdXBwb3J0cyBhbGwgY29tcHJlc3Npb24gbWV0aG9kcyBhbmQgd2lsbCBpZ25vcmUgYnkgZGVmYXVsdCAiCisiYW55IFZDUyBzcGVjaWZpYyBmaWxlcyBhbmQgZGlyZWN0b3JpZXMgYXMgd2VsbCBhcyBtYW55IHRlbXBvcmFyeSBmaWxlcyAoc2VlICIKKyJkZWZhdWx0IHZhbHVlIGFzc29jaWF0ZWQgdG8gQjwtST4gb3B0aW9uIGluIHRoZSBCPC0taGVscD4gb3V0cHV0KS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6NDAyCisjLCBuby13cmFwCittc2dpZCAiRm9ybWF0OiAzLjAgKHF1aWx0KSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjQwOQorbXNnaWQgIiIKKyJBIHNvdXJjZSBwYWNrYWdlIGluIHRoaXMgZm9ybWF0IGNvbnRhaW5zIGF0IGxlYXN0IGFuIG9yaWdpbmFsIHRhcmJhbGwgKEI8LiIKKyJvcmlnLnRhci4+STxleHQ+IHdoZXJlIEk8ZXh0PiBjYW4gYmUgQjxnej4sIEI8YnoyPiwgQjxsem1hPiBhbmQgQjx4ej4pIGFuZCBhICIKKyJkZWJpYW4gdGFyYmFsbCAoQjwuZGViaWFuLnRhci4+STxleHQ+KS4gSXQgY2FuIGFsc28gY29udGFpbiBhZGRpdGlvbmFsICIKKyJvcmlnaW5hbCB0YXJiYWxscyAoQjwub3JpZy0+STxjb21wb25lbnQ+QjwudGFyLj5JPGV4dD4pLiAgSTxjb21wb25lbnQ+IGNhbiAiCisib25seSBjb250YWluIGFscGhhbnVtZXJpYyBjaGFyYWN0ZXJzIGFuZCBkYXNoZXMgKFwiLVwiKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo0MjAKK21zZ2lkICIiCisiVGhlIG1haW4gb3JpZ2luYWwgdGFyYmFsbCBpcyBleHRyYWN0ZWQgZmlyc3QsIHRoZW4gYWxsIGFkZGl0aW9uYWwgb3JpZ2luYWwgIgorInRhcmJhbGxzIGFyZSBleHRyYWN0ZWQgaW4gc3ViZGlyZWN0b3JpZXMgbmFtZWQgYWZ0ZXIgdGhlIEk8Y29tcG9uZW50PiBwYXJ0ICIKKyJvZiB0aGVpciBmaWxlbmFtZSAoYW55IHByZS1leGlzdGluZyBkaXJlY3RvcnkgaXMgcmVwbGFjZWQpLiBUaGUgZGViaWFuICIKKyJ0YXJiYWxsIGlzIGV4dHJhY3RlZCBvbiB0b3Agb2YgdGhlIHNvdXJjZSBkaXJlY3RvcnkgYWZ0ZXIgcHJpb3IgcmVtb3ZhbCBvZiAiCisiYW55IHByZS1leGlzdGluZyBCPGRlYmlhbj4gZGlyZWN0b3J5LiBOb3RlIHRoYXQgdGhlIGRlYmlhbiB0YXJiYWxsIG11c3QgIgorImNvbnRhaW4gYSBCPGRlYmlhbj4gc3ViLWRpcmVjdG9yeSBidXQgaXQgY2FuIGFsc28gY29udGFpbiBiaW5hcnkgZmlsZXMgIgorIm91dHNpZGUgb2YgdGhhdCBkaXJlY3RvcnkgKHNlZSBCPC0taW5jbHVkZS1iaW5hcmllcz4gb3B0aW9uKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo0MzIKK21zZ2lkICIiCisiQWxsIHBhdGNoZXMgbGlzdGVkIGluIEI8ZGViaWFuL3BhdGNoZXMvZGViaWFuLnNlcmllcz4gb3IgQjxkZWJpYW4vcGF0Y2hlcy8iCisic2VyaWVzPiBhcmUgdGhlbiBhcHBsaWVkLiAgSWYgdGhlIGZvcm1lciBmaWxlIGlzIHVzZWQgYW5kIHRoZSBsYXR0ZXIgb25lICIKKyJkb2Vzbid0IGV4aXN0IChvciBpcyBhIHN5bWxpbmspLCB0aGVuIHRoZSBsYXR0ZXIgaXMgcmVwbGFjZWQgd2l0aCBhIHN5bWxpbmsgIgorInRvIHRoZSBmb3JtZXIuIFRoaXMgaXMgbWVhbnQgdG8gc2ltcGxpZnkgdXNhZ2Ugb2YgcXVpbHQgdG8gbWFuYWdlIHRoZSBzZXQgb2YgIgorInBhdGNoZXMuIE5vdGUgaG93ZXZlciB0aGF0IHdoaWxlIEI8ZHBrZy1zb3VyY2U+IHBhcnNlcyBjb3JyZWN0bHkgc2VyaWVzICIKKyJmaWxlcyB3aXRoIGV4cGxpY2l0IG9wdGlvbnMgdXNlZCBmb3IgcGF0Y2ggYXBwbGljYXRpb24gKHN0b3JlZCBvbiBlYWNoIGxpbmUgIgorImFmdGVyIHRoZSBwYXRjaCBmaWxlbmFtZSBhbmQgb25lIG9yIG1vcmUgc3BhY2VzKSwgaXQgZG9lcyBpZ25vcmUgdGhvc2UgIgorIm9wdGlvbnMgYW5kIGFsd2F5cyBleHBlY3QgcGF0Y2hlcyB0aGF0IGNhbiBiZSBhcHBsaWVkIHdpdGggdGhlIEI8LXAxPiBvcHRpb24gIgorIm9mIEI8cGF0Y2g+LiBJdCB3aWxsIHRodXMgZW1pdCBhIHdhcm5pbmcgd2hlbiBpdCBlbmNvdW50ZXJzIHN1Y2ggb3B0aW9ucywgIgorImFuZCB0aGUgYnVpbGQgaXMgbGlrZWx5IHRvIGZhaWwuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NDM0Cittc2dpZCAiIgorIlNpbWlsYXJseSB0byBxdWlsdCdzIGRlZmF1bHQgYmVoYXZpb3VyLCB0aGUgcGF0Y2hlcyBjYW4gcmVtb3ZlIGZpbGVzIHRvby4iCittc2dzdHIgIiIKKworIyB0eXBlOiBQbGFpbiB0ZXh0CisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjQzNworbXNnaWQgIiIKKyJUaGUgZmlsZSBCPC5wYy9hcHBsaWVkLXBhdGNoZXM+IGlzIGNyZWF0ZWQgaWYgc29tZSBwYXRjaGVzIGhhdmUgYmVlbiBhcHBsaWVkICIKKyJkdXJpbmcgdGhlIGV4dHJhY3Rpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NDUxCittc2dpZCAiIgorIkFsbCBvcmlnaW5hbCB0YXJiYWxscyBmb3VuZCBpbiB0aGUgY3VycmVudCBkaXJlY3RvcnkgYXJlIGV4dHJhY3RlZCBpbiBhICIKKyJ0ZW1wb3JhcnkgZGlyZWN0b3J5IGJ5IGZvbGxvd2luZyB0aGUgc2FtZSBsb2dpYyBhcyBmb3IgdGhlIHVucGFjaywgdGhlICIKKyJkZWJpYW4gZGlyZWN0b3J5IGlzIGNvcGllZCBvdmVyIGluIHRoZSB0ZW1wb3JhcnkgZGlyZWN0b3J5LCBhbmQgYWxsIHBhdGNoZXMgIgorImV4Y2VwdCB0aGUgYXV0b21hdGljIHBhdGNoIChCPGRlYmlhbi1jaGFuZ2VzLT5JPHZlcnNpb24+IG9yIEI8ZGViaWFuLSIKKyJjaGFuZ2VzPiwgZGVwZW5kaW5nIG9uIEI8LS1zaW5nbGUtZGViaWFuLXBhdGNoPikgYXJlIGFwcGxpZWQuIFRoZSB0ZW1wb3JhcnkgIgorImRpcmVjdG9yeSBpcyBjb21wYXJlZCB0byB0aGUgc291cmNlIHBhY2thZ2UgZGlyZWN0b3J5LiBXaGVuIHRoZSBkaWZmIGlzIG5vbi0iCisiZW1wdHksIHRoZSBidWlsZCBmYWlscyB1bmxlc3MgQjwtLXNpbmdsZS1kZWJpYW4tcGF0Y2g+IG9yIEI8LS1hdXRvLWNvbW1pdD4gIgorImhhcyBiZWVuIHVzZWQsIGluIHdoaWNoIGNhc2UgdGhlIGRpZmYgaXMgc3RvcmVkIGluIHRoZSBhdXRvbWF0aWMgcGF0Y2guICBJZiAiCisidGhlIGF1dG9tYXRpYyBwYXRjaCBpcyBjcmVhdGVkL2RlbGV0ZWQsIGl0J3MgYWRkZWQvcmVtb3ZlZCBmcm9tIHRoZSBzZXJpZXMgIgorImZpbGUgYW5kIGZyb20gdGhlIHF1aWx0IG1ldGFkYXRhLiIKK21zZ3N0ciAiIgorCisjIHR5cGU6IFBsYWluIHRleHQKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NDU5Cittc2dpZCAiIgorIkFueSBjaGFuZ2Ugb24gYSBiaW5hcnkgZmlsZSBpcyBub3QgcmVwcmVzZW50YWJsZSBpbiBhIGRpZmYgYW5kIHdpbGwgdGh1cyAiCisibGVhZCB0byBhIGZhaWx1cmUgdW5sZXNzIHRoZSBtYWludGFpbmVyIGRlbGliZXJhdGVseSBkZWNpZGVkIHRvIGluY2x1ZGUgdGhhdCAiCisibW9kaWZpZWQgYmluYXJ5IGZpbGUgaW4gdGhlIGRlYmlhbiB0YXJiYWxsIChieSBsaXN0aW5nIGl0IGluIEI8ZGViaWFuL3NvdXJjZS8iCisiaW5jbHVkZS1iaW5hcmllcz4pLiBUaGUgYnVpbGQgd2lsbCBhbHNvIGZhaWwgaWYgaXQgZmluZHMgYmluYXJ5IGZpbGVzIGluIHRoZSAiCisiZGViaWFuIHN1Yi1kaXJlY3RvcnkgdW5sZXNzIHRoZXkgaGF2ZSBiZWVuIHdoaXRlbGlzdGVkIHRocm91Z2ggQjxkZWJpYW4vIgorInNvdXJjZS9pbmNsdWRlLWJpbmFyaWVzPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo0NjIKK21zZ2lkICIiCisiVGhlIHVwZGF0ZWQgZGViaWFuIGRpcmVjdG9yeSBhbmQgdGhlIGxpc3Qgb2YgbW9kaWZpZWQgYmluYXJpZXMgaXMgdGhlbiB1c2VkICIKKyJ0byBnZW5lcmF0ZSB0aGUgZGViaWFuIHRhcmJhbGwuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NDY4Cittc2dpZCAiIgorIlRoZSBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlZCBkaWZmIGRvZXNuJ3QgaW5jbHVkZSBjaGFuZ2VzIG9uIFZDUyBzcGVjaWZpYyAiCisiZmlsZXMgYXMgd2VsbCBhcyBtYW55IHRlbXBvcmFyeSBmaWxlcyAoc2VlIGRlZmF1bHQgdmFsdWUgYXNzb2NpYXRlZCB0byBCPC1pPiAiCisib3B0aW9uIGluIHRoZSBCPC0taGVscD4gb3V0cHV0KS4gSW4gcGFydGljdWxhciwgdGhlIEI8LnBjPiBkaXJlY3RvcnkgdXNlZCBieSAiCisicXVpbHQgaXMgaWdub3JlZCBkdXJpbmcgZ2VuZXJhdGlvbiBvZiB0aGUgYXV0b21hdGljIHBhdGNoLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjQ3NworbXNnaWQgIiIKKyJOb3RlOiBCPGRwa2ctc291cmNlPiBCPC0tYmVmb3JlLWJ1aWxkPiAoYW5kIEI8LWI+KSB3aWxsIGVuc3VyZSB0aGF0IGFsbCAiCisicGF0Y2hlcyBsaXN0ZWQgaW4gdGhlIHNlcmllcyBmaWxlIGFyZSBhcHBsaWVkIHNvIHRoYXQgYSBwYWNrYWdlIGJ1aWxkIGFsd2F5cyAiCisiaGFzIGFsbCBwYXRjaGVzIGFwcGxpZWQuIEl0IGRvZXMgdGhpcyBieSBmaW5kaW5nIHVuYXBwbGllZCBwYXRjaGVzICh0aGV5IGFyZSAiCisibGlzdGVkIGluIHRoZSBCPHNlcmllcz4gZmlsZSBidXQgbm90IGluIEI8LnBjL2FwcGxpZWQtcGF0Y2hlcz4pLCBhbmQgaWYgdGhlICIKKyJmaXJzdCBwYXRjaCBpbiB0aGF0IHNldCBjYW4gYmUgYXBwbGllZCB3aXRob3V0IGVycm9ycywgaXQgd2lsbCBhcHBseSB0aGVtICIKKyJhbGwuIFRoZSBvcHRpb24gQjwtLW5vLXByZXBhcmF0aW9uPiBjYW4gYmUgdXNlZCB0byBkaXNhYmxlIHRoaXMgYmVoYXZpb3IuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NDgwCittc2dpZCAiQjxSZWNvcmRpbmcgY2hhbmdlcz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NDgwCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1jb21taXQ+IFtJPGRpcmVjdG9yeT5dIFtJPHBhdGNoLW5hbWU+XSBbSTxwYXRjaC1maWxlPl0iCittc2dzdHIgIkI8ZHBrZy1jaGVja2J1aWxkZGVwcz4gLUI8LUI+IFtJPNGE0LDQudC7IGNvbnRyb2w+XSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo0OTAKK21zZ2lkICIiCisiR2VuZXJhdGVzIGEgcGF0Y2ggY29ycmVzcG9uZGluZyB0byB0aGUgbG9jYWwgY2hhbmdlcyB0aGF0IGFyZSBub3QgbWFuYWdlZCBieSAiCisidGhlIHF1aWx0IHBhdGNoIHN5c3RlbSBhbmQgaW50ZWdyYXRlcyBpdCBpbiB0aGUgcGF0Y2ggc3lzdGVtIHVuZGVyIHRoZSBuYW1lICIKKyJJPHBhdGNoLW5hbWU+LiBJZiB0aGUgbmFtZSBpcyBtaXNzaW5nLCBpdCB3aWxsIGJlIGFza2VkIGludGVyYWN0aXZlbHkuIElmICIKKyJJPHBhdGNoLWZpbGU+IGlzIGdpdmVuLCBpdCBpcyB1c2VkIGFzIHRoZSBwYXRjaCBjb3JyZXNwb25kaW5nIHRvIHRoZSBsb2NhbCAiCisiY2hhbmdlcyB0byBpbnRlZ3JhdGUuIFRoaXMgaXMgbWFpbmx5IHVzZWZ1bCBhZnRlciBhIGJ1aWxkIGZhaWx1cmUgdGhhdCBwcmUtIgorImdlbmVyYXRlZCB0aGlzIGZpbGUuIE9uY2UgaW50ZWdyYXRlZCwgYW4gZWRpdG9yIGlzIGxhdW5jaGVkIHNvIHRoYXQgeW91IGNhbiAiCisiZWRpdCB0aGUgbWV0YS1pbmZvcm1hdGlvbiBpbiB0aGUgcGF0Y2ggaGVhZGVyLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjQ5MyBkcGtnLXNvdXJjZS4xOjU2NyBkcGtnLXNvdXJjZS4xOjYwNgorIywgZnV6enkKK21zZ2lkICJCPEJ1aWxkIG9wdGlvbnM+IgorbXNnc3RyICJCPGRwa2c+IFtJPNC/0LDRgNCw0LzQtdGC0YDRiz5dIEk80LTQtdC50YHRgtCy0LjQtT4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjQ5MworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tYWxsb3ctdmVyc2lvbi1vZi1xdWlsdC1kYj0+STx2ZXJzaW9uPiIKK21zZ3N0ciAiQjxkcGtnIC0tdmVyc2lvbj4iCisKKyMgdHlwZTogUGxhaW4gdGV4dAorIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1MDEKK21zZ2lkICIiCisiQWxsb3cgQjxkcGtnLXNvdXJjZT4gdG8gYnVpbGQgdGhlIHNvdXJjZSBwYWNrYWdlIGlmIHRoZSB2ZXJzaW9uIG9mIHRoZSBxdWlsdCAiCisibWV0YWRhdGEgaXMgdGhlIG9uZSBzcGVjaWZpZWQsIGV2ZW4gaWYgQjxkcGtnLXNvdXJjZT4gZG9lc24ndCBrbm93IGFib3V0IGl0LiAiCisiRWZmZWN0aXZlbHkgdGhpcyBzYXlzIHRoYXQgdGhlIGdpdmVuIHZlcnNpb24gb2YgdGhlIHF1aWx0IG1ldGFkYXRhIGlzICIKKyJjb21wYXRpYmxlIHdpdGggdGhlIHZlcnNpb24gMiB0aGF0IEI8ZHBrZy1zb3VyY2U+IGN1cnJlbnRseSBzdXBwb3J0cy4gVGhlICIKKyJ2ZXJzaW9uIG9mIHRoZSBxdWlsdCBtZXRhZGF0YSBpcyBzdG9yZWQgaW4gQjwucGMvLnZlcnNpb24+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTo1MDEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWluY2x1ZGUtcmVtb3ZhbD4iCittc2dzdHIgIkI8ZHBrZyAtLWNsZWFyLWF2YWlsPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1MDUKK21zZ2lkICIiCisiRG8gbm90IGlnbm9yZSByZW1vdmVkIGZpbGVzIGFuZCBpbmNsdWRlIHRoZW0gaW4gdGhlIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkICIKKyJwYXRjaC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NTA1CisjLCBuby13cmFwCittc2dpZCAiQjwtLWluY2x1ZGUtdGltZXN0YW1wPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjUwOAorbXNnaWQgIkluY2x1ZGUgdGltZXN0YW1wIGluIHRoZSBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlZCBwYXRjaC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NTA4CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1pbmNsdWRlLWJpbmFyaWVzPiIKK21zZ3N0ciAiQjxjb25maWctZmlsZXM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjUxMworbXNnaWQgIiIKKyJBZGQgYWxsIG1vZGlmaWVkIGJpbmFyaWVzIGluIHRoZSBkZWJpYW4gdGFyYmFsbC4gQWxzbyBhZGQgdGhlbSB0byBCPGRlYmlhbi8iCisic291cmNlL2luY2x1ZGUtYmluYXJpZXM+OiB0aGV5IHdpbGwgYmUgYWRkZWQgYnkgZGVmYXVsdCBpbiBzdWJzZXF1ZW50IGJ1aWxkcyAiCisiYW5kIHRoaXMgb3B0aW9uIGlzIHRodXMgbm8gbW9yZSBuZWVkZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjUxMworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tbm8tcHJlcGFyYXRpb24+IgorbXNnc3RyICJCPGRwa2cgLS12ZXJzaW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1MTcKK21zZ2lkICIiCisiRG8gbm90IHRyeSB0byBwcmVwYXJlIHRoZSBidWlsZCB0cmVlIGJ5IGFwcGx5aW5nIHBhdGNoZXMgd2hpY2ggYXJlICIKKyJhcHBhcmVudGx5IHVuYXBwbGllZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NTE3CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1zaW5nbGUtZGViaWFuLXBhdGNoPiIKK21zZ3N0ciAiQjxkcGtnLWRlYi1hY3Rpb25zPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1MjgKK21zZ2lkICIiCisiVXNlIEI8ZGViaWFuL3BhdGNoZXMvZGViaWFuLWNoYW5nZXM+IGluc3RlYWQgb2YgQjxkZWJpYW4vcGF0Y2hlcy9kZWJpYW4tIgorImNoYW5nZXMtPkk8dmVyc2lvbj4gZm9yIHRoZSBuYW1lIG9mIHRoZSBhdXRvbWF0aWMgcGF0Y2ggZ2VuZXJhdGVkIGR1cmluZyAiCisiYnVpbGQuIFRoaXMgb3B0aW9uIGlzIHBhcnRpY3VsYXJseSB1c2VmdWwgd2hlbiB0aGUgcGFja2FnZSBpcyBtYWludGFpbmVkIGluICIKKyJhIFZDUyBhbmQgYSBwYXRjaCBzZXQgY2FuJ3QgcmVsaWFibHkgYmUgZ2VuZXJhdGVkLiBJbnN0ZWFkIHRoZSBjdXJyZW50IGRpZmYgIgorIndpdGggdXBzdHJlYW0gc2hvdWxkIGJlIHN0b3JlZCBpbiBhIHNpbmdsZSBwYXRjaC4gVGhlIG9wdGlvbiB3b3VsZCBiZSBwdXQgaW4gIgorIkI8ZGViaWFuL3NvdXJjZS9sb2NhbC1vcHRpb25zPiBhbmQgd291bGQgYmUgYWNjb21wYW5pZWQgYnkgYSBCPGRlYmlhbi9zb3VyY2UvIgorImxvY2FsLXBhdGNoLWhlYWRlcj4gZmlsZSBleHBsYWluaW5nIGhvdyB0aGUgRGViaWFuIGNoYW5nZXMgY2FuIGJlIGJlc3QgIgorInJldmlld2VkLCBmb3IgZXhhbXBsZSBpbiB0aGUgVkNTIHRoYXQgaXMgdXNlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NTI4CisjLCBuby13cmFwCittc2dpZCAiQjwtLWNyZWF0ZS1lbXB0eS1vcmlnPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjUzNAorbXNnaWQgIiIKKyJBdXRvbWF0aWNhbGx5IGNyZWF0ZSB0aGUgbWFpbiBvcmlnaW5hbCB0YXJiYWxsIGFzIGVtcHR5IGlmIGl0J3MgbWlzc2luZyBhbmQgIgorImlmIHRoZXJlIGFyZSBzdXBwbGVtZW50YXJ5IG9yaWdpbmFsIHRhcmJhbGxzLiBUaGlzIG9wdGlvbiBpcyBtZWFudCB0byBiZSAiCisidXNlZCB3aGVuIHRoZSBzb3VyY2UgcGFja2FnZSBpcyBqdXN0IGEgYnVuZGxlIG9mIG11bHRpcGxlIHVwc3RyZWFtIHNvZnR3YXJlICIKKyJhbmQgd2hlcmUgdGhlcmUncyBubyBcIm1haW5cIiBzb2Z0d2FyZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NTM0CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS11bmFwcGx5LXBhdGNoZXM+IgorbXNnc3RyICJCPDgyMi1kYXRlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1NDEKK21zZ2lkICIiCisiVW5hcHBseSB0aGUgcGF0Y2hlcyBpbiB0aGUgQjwtLWFmdGVyLWJ1aWxkPiBob29rLiBZb3UgdXN1YWxseSBkb24ndCBuZWVkICIKKyJ0aGlzIG9wdGlvbiBhcyBkcGtnLXNvdXJjZSB3aWxsIGF1dG9tYXRpY2FsbHkgdW5hcHBseSB0aGUgcGF0Y2hlcyBpZiBpdCBkaWQgIgorImFwcGx5IHRoZW0gZHVyaW5nIEI8LS1iZWZvcmUtYnVpbGQ+LiBUaGlzIG9wdGlvbiBpcyBvbmx5IGFsbG93ZWQgaW4gQjxkZWJpYW4vIgorInNvdXJjZS9sb2NhbC1vcHRpb25zPiBzbyB0aGF0IGFsbCBnZW5lcmF0ZWQgc291cmNlIHBhY2thZ2VzIGhhdmUgdGhlIHNhbWUgIgorImJlaGF2aW9yIGJ5IGRlZmF1bHQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTQ4Cittc2dpZCAiIgorIlRoZSBwcm9jZXNzIGZhaWxzIGlmIGFuIGF1dG9tYXRpYyBwYXRjaCBoYXMgYmVlbiBnZW5lcmF0ZWQuIFRoaXMgb3B0aW9uIGNhbiAiCisiYmUgdXNlZCB0byBlbnN1cmUgdGhhdCBhbGwgY2hhbmdlcyB3ZXJlIHByb3Blcmx5IHJlY29yZGVkIGluIHNlcGFyYXRlIHF1aWx0ICIKKyJwYXRjaGVzIHByaW9yIHRvIHRoZSBzb3VyY2UgcGFja2FnZSBidWlsZC4gVGhpcyBvcHRpb24gaXMgbm90IGFsbG93ZWQgaW4gIgorIkI8ZGViaWFuL3NvdXJjZS9vcHRpb25zPiBidXQgY2FuIGJlIHVzZWQgaW4gQjxkZWJpYW4vc291cmNlL2xvY2FsLW9wdGlvbnM+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTo1NDgKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWF1dG8tY29tbWl0PiIKK21zZ3N0ciAiQjwtLW5vY2hlY2s+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjU1MgorbXNnaWQgIiIKKyJUaGUgcHJvY2VzcyBkb2Vzbid0IGZhaWwgaWYgYW4gYXV0b21hdGljIHBhdGNoIGhhcyBiZWVuIGdlbmVyYXRlZCwgaW5zdGVhZCAiCisiaXQncyBpbW1lZGlhdGVseSByZWNvcmRlZCBpbiB0aGUgcXVpbHQgc2VyaWVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjU1NQorbXNnaWQgIkI8RXh0cmFjdCBvcHRpb25zPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjU1OAorbXNnaWQgIlNraXBzIGV4dHJhY3Rpb24gb2YgdGhlIGRlYmlhbiB0YXJiYWxsIG9uIHRvcCBvZiB0aGUgdXBzdHJlYW0gc291cmNlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NTU4CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1za2lwLXBhdGNoZXM+IgorbXNnc3RyICJCPDgyMi1kYXRlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1NjEKK21zZ2lkICJEbyBub3QgYXBwbHkgcGF0Y2hlcyBhdCB0aGUgZW5kIG9mIHRoZSBleHRyYWN0aW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo1NjIKKyMsIG5vLXdyYXAKK21zZ2lkICJGb3JtYXQ6IDMuMCAoY3VzdG9tKSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjU2NQorbXNnaWQgIiIKKyJUaGlzIGZvcm1hdCBpcyBzcGVjaWFsLiBJdCBkb2Vzbid0IHJlcHJlc2VudCBhIHJlYWwgc291cmNlIHBhY2thZ2UgZm9ybWF0ICIKKyJidXQgY2FuIGJlIHVzZWQgdG8gY3JlYXRlIHNvdXJjZSBwYWNrYWdlcyB3aXRoIGFyYml0cmFyeSBmaWxlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1NzEKK21zZ2lkICIiCisiQWxsIG5vbi1vcHRpb24gYXJndW1lbnRzIGFyZSB0YWtlbiBhcyBmaWxlcyB0byBpbnRlZ3JhdGUgaW4gdGhlIGdlbmVyYXRlZCAiCisic291cmNlIHBhY2thZ2UuIFRoZXkgbXVzdCBleGlzdCBhbmQgYXJlIHByZWZlcmFibHkgaW4gdGhlIGN1cnJlbnQgZGlyZWN0b3J5LiAiCisiQXQgbGVhc3Qgb25lIGZpbGUgbXVzdCBiZSBnaXZlbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NTcxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS10YXJnZXQtZm9ybWF0PT5JPHZhbHVlPiIKK21zZ3N0ciAiQjwtLWFib3J0LWFmdGVyPT5JPNGH0LjRgdC70L4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjU3NgorbXNnaWQgIiIKKyJCPFJlcXVpcmVkPi4gRGVmaW5lcyB0aGUgcmVhbCBmb3JtYXQgb2YgdGhlIGdlbmVyYXRlZCBzb3VyY2UgcGFja2FnZS4gIFRoZSAiCisiZ2VuZXJhdGVkIC5kc2MgZmlsZSB3aWxsIGNvbnRhaW4gdGhpcyB2YWx1ZSBpbiBpdHMgSTxGb3JtYXQ+IGZpZWxkIGFuZCBub3QgIgorIlwiMy4wIChjdXN0b20pXCIuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjU3NworIywgbm8td3JhcAorbXNnaWQgIkZvcm1hdDogMy4wIChnaXQpIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTc5Cittc2dpZCAiVGhpcyBmb3JtYXQgaXMgZXhwZXJpbWVudGFsLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjU4NAorbXNnaWQgIiIKKyJBIHNvdXJjZSBwYWNrYWdlIGluIHRoaXMgZm9ybWF0IGNvbnNpc3RzIG9mIGEgc2luZ2xlIGJ1bmRsZSBvZiBhIGdpdCAiCisicmVwb3NpdG9yeSBCPC5naXQ+IHRvIGhvbGQgdGhlIHNvdXJjZSBvZiBhIHBhY2thZ2UuICBUaGVyZSBtYXkgYWxzbyBiZSBhIEI8LiIKKyJnaXRzaGFsbG93PiBmaWxlIGxpc3RpbmcgcmV2aXNpb25zIGZvciBhIHNoYWxsb3cgZ2l0IGNsb25lLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjU5MAorbXNnaWQgIiIKKyJUaGUgYnVuZGxlIGlzIGNsb25lZCBhcyBhIGdpdCByZXBvc2l0b3J5IHRvIHRoZSB0YXJnZXQgZGlyZWN0b3J5LiAgSWYgdGhlcmUgIgorImlzIGEgZ2l0c2hhbGxvdyBmaWxlLCBpdCBpcyBpbnN0YWxsZWQgYXMgYC5naXQvc2hhbGxvd2AgaW5zaWRlIHRoZSBjbG9uZWQgIgorImdpdCByZXBvc2l0b3J5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjU5NQorbXNnaWQgIiIKKyJOb3RlIHRoYXQgYnkgZGVmYXVsdCB0aGUgbmV3IHJlcG9zaXRvcnkgd2lsbCBoYXZlIHRoZSBzYW1lIGJyYW5jaCBjaGVja2VkICIKKyJvdXQgdGhhdCB3YXMgY2hlY2tlZCBvdXQgaW4gdGhlIG9yaWdpbmFsIHNvdXJjZS4gKFR5cGljYWxseSBcIm1hc3RlclwiLCBidXQgIgorIml0IGNvdWxkIGJlIGFueXRoaW5nLikgQW55IG90aGVyIGJyYW5jaGVzIHdpbGwgYmUgYXZhaWxhYmxlIHVuZGVyIGByZW1vdGVzLyIKKyJvcmlnaW4vYC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2MDAgZHBrZy1zb3VyY2UuMTo2MzMKK21zZ2lkICIiCisiQmVmb3JlIGdvaW5nIGFueSBmdXJ0aGVyLCBzb21lIGNoZWNrcyBhcmUgZG9uZSB0byBlbnN1cmUgdGhhdCB3ZSBkb24ndCBoYXZlICIKKyJhbnkgbm9uLWlnbm9yZWQgdW5jb21taXR0ZWQgY2hhbmdlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2MDQKK21zZ2lkICIiCisiQjxnaXQtYnVuZGxlPigxKSBpcyB1c2VkIHRvIGdlbmVyYXRlIGEgYnVuZGxlIG9mIHRoZSBnaXQgcmVwb3NpdG9yeS4gIEJ5ICIKKyJkZWZhdWx0LCBhbGwgYnJhbmNoZXMgYW5kIHRhZ3MgaW4gdGhlIHJlcG9zaXRvcnkgYXJlIGluY2x1ZGVkIGluIHRoZSBidW5kbGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjYwNgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tZ2l0LXJlZj0+STxyZWY+IgorbXNnc3RyICJCPC0tYWJvcnQtYWZ0ZXI9Pkk80YfQuNGB0LvQvj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NjE2Cittc2dpZCAiIgorIkFsbG93cyBzcGVjaWZ5aW5nIGEgZ2l0IHJlZiB0byBpbmNsdWRlIGluIHRoZSBnaXQgYnVuZGxlLiBVc2UgZGlzYWJsZXMgdGhlICIKKyJkZWZhdWx0IGJlaGF2aW9yIG9mIGluY2x1ZGluZyBhbGwgYnJhbmNoZXMgYW5kIHRhZ3MuIE1heSBiZSBzcGVjaWZpZWQgIgorIm11bHRpcGxlIHRpbWVzLiBUaGUgSTxyZWY+IGNhbiBiZSB0aGUgbmFtZSBvZiBhIGJyYW5jaCBvciB0YWcgdG8gaW5jbHVkZS4gSXQgIgorIm1heSBhbHNvIGJlIGFueSBwYXJhbWV0ZXIgdGhhdCBjYW4gYmUgcGFzc2VkIHRvIEI8Z2l0LXJldi1saXN0PigxKS4gRm9yICIKKyJleGFtcGxlLCB0byBpbmNsdWRlIG9ubHkgdGhlIG1hc3RlciBicmFuY2gsIHVzZSAtLWdpdC1yZWY9bWFzdGVyLiBUbyBpbmNsdWRlICIKKyJhbGwgdGFncyBhbmQgYnJhbmNoZXMsIGV4Y2VwdCBmb3IgdGhlIHByaXZhdGUgYnJhbmNoLCB1c2UgLS1naXQtcmVmPS0tYWxsIC0tIgorImdpdC1yZWY9XnByaXZhdGUiCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NjE2CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8LS1hYm9ydC1hZnRlcj0+STxudW1iZXI+IgorbXNnaWQgIkI8LS1naXQtZGVwdGg9Pkk8bnVtYmVyPiIKK21zZ3N0ciAiQjwtLWFib3J0LWFmdGVyPT5JPNGH0LjRgdC70L4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjYyMAorbXNnaWQgIiIKKyJDcmVhdGVzIGEgc2hhbGxvdyBjbG9uZSB3aXRoIGEgaGlzdG9yeSB0cnVuY2F0ZWQgdG8gdGhlIHNwZWNpZmllZCBudW1iZXIgb2YgIgorInJldmlzaW9ucy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6NjIwCisjLCBuby13cmFwCittc2dpZCAiRm9ybWF0OiAzLjAgKGJ6cikiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2MjMKK21zZ2lkICIiCisiVGhpcyBmb3JtYXQgaXMgZXhwZXJpbWVudGFsLiBJdCBnZW5lcmF0ZXMgYSBzaW5nbGUgdGFyYmFsbCBjb250YWluaW5nIHRoZSAiCisiYnpyIHJlcG9zaXRvcnkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NjI4Cittc2dpZCAiIgorIlRoZSB0YXJiYWxsIGlzIHVucGFja2VkIGFuZCB0aGVuIGJ6ciBpcyB1c2VkIHRvIGNoZWNrb3V0IHRoZSBjdXJyZW50IGJyYW5jaC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2MzcKK21zZ2lkICIiCisiVGhlbiB0aGUgVkNTIHNwZWNpZmljIHBhcnQgb2YgdGhlIHNvdXJjZSBkaXJlY3RvcnkgaXMgY29waWVkIG92ZXIgdG8gYSAiCisidGVtcG9yYXJ5IGRpcmVjdG9yeS4gQmVmb3JlIHRoaXMgdGVtcG9yYXJ5IGRpcmVjdG9yeSBpcyBwYWNrZWQgaW4gYSB0YXJiYWxsLCAiCisidmFyaW91cyBjbGVhbnVwIGFyZSBkb25lIHRvIHNhdmUgc3BhY2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLXNvdXJjZS4xOjYzNworIywgbm8td3JhcAorbXNnaWQgIldBUk5JTkdTIEFORCBFUlJPUlMiCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6NjM4CisjLCBuby13cmFwCittc2dpZCAibm8gc291cmNlIGZvcm1hdCBzcGVjaWZpZWQgaW4gZGViaWFuL3NvdXJjZS9mb3JtYXQiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2NDQKK21zZ2lkICIiCisiVGhlIGZpbGUgQjxkZWJpYW4vc291cmNlL2Zvcm1hdD4gc2hvdWxkIGFsd2F5cyBleGlzdCBhbmQgaW5kaWNhdGUgdGhlICIKKyJkZXNpcmVkIHNvdXJjZSBmb3JtYXQuIEZvciBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eSwgZm9ybWF0IFwiMS4wXCIgaXMgIgorImFzc3VtZWQgd2hlbiB0aGUgZmlsZSBkb2Vzbid0IGV4aXN0IGJ1dCB5b3Ugc2hvdWxkIG5vdCByZWx5IG9uIHRoaXM6IGF0IHNvbWUgIgorInBvaW50IGluIHRoZSBmdXR1cmUgZHBrZy1zb3VyY2Ugd2lsbCBiZSBtb2RpZmllZCB0byBmYWlsIHdoZW4gdGhhdCBmaWxlICIKKyJkb2Vzbid0IGV4aXN0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjY1MAorbXNnaWQgIiIKKyJUaGUgcmF0aW9uYWxlIGlzIHRoYXQgZm9ybWF0IFwiMS4wXCIgaXMgbm8gbG9uZ2VyIHRoZSByZWNvbW1lbmRlZCBmb3JtYXQsICIKKyJ5b3Ugc2hvdWxkIHVzdWFsbHkgcGljayBvbmUgb2YgdGhlIG5ld2VyIGZvcm1hdHMgKFwiMy4wIChxdWlsdClcIiwgXCIzLjAgIgorIihuYXRpdmUpXCIpIGJ1dCBCPGRwa2ctc291cmNlPiB3aWxsIG5vdCBkbyB0aGlzIGF1dG9tYXRpY2FsbHkgZm9yIHlvdS4gIElmICIKKyJ5b3Ugd2FudCB0byBjb250aW51ZSB1c2luZyB0aGUgb2xkIGZvcm1hdCwgeW91IHNob3VsZCBiZSBleHBsaWNpdCBhYm91dCBpdCAiCisiYW5kIHB1dCBcIjEuMFwiIGluIEI8ZGViaWFuL3NvdXJjZS9mb3JtYXQ+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo2NTAKKyMsIG5vLXdyYXAKK21zZ2lkICJ0aGUgZGlmZiBtb2RpZmllcyB0aGUgZm9sbG93aW5nIHVwc3RyZWFtIGZpbGVzIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NjU3Cittc2dpZCAiIgorIldoZW4gdXNpbmcgc291cmNlIGZvcm1hdCBcIjEuMFwiIGl0IGlzIHVzdWFsbHkgYSBiYWQgaWRlYSB0byBtb2RpZnkgdXBzdHJlYW0gIgorImZpbGVzIGRpcmVjdGx5IGFzIHRoZSBjaGFuZ2VzIGVuZCB1cCBoaWRkZW4gYW5kIG1vc3RseSB1bmRvY3VtZW50ZWQgaW4gdGhlIC4iCisiZGlmZi5neiBmaWxlLiBJbnN0ZWFkIHlvdSBzaG91bGQgc3RvcmUgeW91ciBjaGFuZ2VzIGFzIHBhdGNoZXMgaW4gdGhlIGRlYmlhbiAiCisiZGlyZWN0b3J5IGFuZCBhcHBseSB0aGVtIGF0IGJ1aWxkLXRpbWUuIFRvIGF2b2lkIHRoaXMgY29tcGxleGl0eSB5b3UgY2FuICIKKyJhbHNvIHVzZSB0aGUgZm9ybWF0IFwiMy4wIChxdWlsdClcIiB0aGF0IG9mZmVycyB0aGlzIG5hdGl2ZWx5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo2NTcKKyMsIG5vLXdyYXAKK21zZ2lkICJjYW5ub3QgcmVwcmVzZW50IGNoYW5nZSB0byBJPGZpbGU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NjYzCittc2dpZCAiIgorIkNoYW5nZXMgdG8gdXBzdHJlYW0gc291cmNlcyBhcmUgdXN1YWxseSBzdG9yZWQgd2l0aCBwYXRjaCBmaWxlcywgYnV0IG5vdCBhbGwgIgorImNoYW5nZXMgY2FuIGJlIHJlcHJlc2VudGVkIHdpdGggcGF0Y2hlczogdGhleSBjYW4gb25seSBhbHRlciB0aGUgY29udGVudCBvZiAiCisicGxhaW4gdGV4dCBmaWxlcy4gSWYgeW91IHRyeSByZXBsYWNpbmcgYSBmaWxlIHdpdGggc29tZXRoaW5nIG9mIGEgZGlmZmVyZW50ICIKKyJ0eXBlIChmb3IgZXhhbXBsZSByZXBsYWNpbmcgYSBwbGFpbiBmaWxlIHdpdGggYSBzeW1saW5rIG9yIGEgZGlyZWN0b3J5KSwgeW91ICIKKyJ3aWxsIGdldCB0aGlzIGVycm9yIG1lc3NhZ2UuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjY2MworIywgbm8td3JhcAorbXNnaWQgIm5ld2x5IGNyZWF0ZWQgZW1wdHkgZmlsZSBJPGZpbGU+IHdpbGwgbm90IGJlIHJlcHJlc2VudGVkIGluIGRpZmYiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2NjYKK21zZ2lkICIiCisiRW1wdHkgZmlsZXMgY2FuJ3QgYmUgY3JlYXRlZCB3aXRoIHBhdGNoIGZpbGVzLiBUaHVzIHRoaXMgY2hhbmdlIGlzIG5vdCAiCisicmVjb3JkZWQgaW4gdGhlIHNvdXJjZSBwYWNrYWdlIGFuZCB5b3UgYXJlIHdhcm5lZCBhYm91dCBpdC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6NjY2CisjLCBuby13cmFwCittc2dpZCAiZXhlY3V0YWJsZSBtb2RlIEk8cGVybXM+IG9mIEk8ZmlsZT4gd2lsbCBub3QgYmUgcmVwcmVzZW50ZWQgaW4gZGlmZiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo2NjcKKyMsIG5vLXdyYXAKK21zZ2lkICJzcGVjaWFsIG1vZGUgSTxwZXJtcz4gb2YgSTxmaWxlPiB3aWxsIG5vdCBiZSByZXByZXNlbnRlZCBpbiBkaWZmIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NjcxCittc2dpZCAiIgorIlBhdGNoIGZpbGVzIGRvIG5vdCByZWNvcmQgcGVybWlzc2lvbnMgb2YgZmlsZXMgYW5kIHRodXMgbW9kaWZpZWQgcGVybWlzc2lvbnMgIgorImFyZSBub3Qgc3RvcmVkIGluIHRoZSBzb3VyY2UgcGFja2FnZS4gVGhpcyB3YXJuaW5nIHJlbWluZHMgeW91IG9mIHRoYXQgZmFjdC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctc291cmNlLjE6NjcxCisjLCBuby13cmFwCittc2dpZCAiRklMRSBGT1JNQVRTIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjY3MgorIywgbm8td3JhcAorbXNnaWQgImRlYmlhbi9zb3VyY2UvZm9ybWF0IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6Njc2Cittc2dpZCAiIgorIlRoaXMgZmlsZSBjb250YWlucyBvbiBhIHNpbmdsZSBsaW5lIHRoZSBmb3JtYXQgdGhhdCBzaG91bGQgYmUgdXNlZCB0byBidWlsZCAiCisidGhlIHNvdXJjZSBwYWNrYWdlIChwb3NzaWJsZSBmb3JtYXRzIGFyZSBkZXNjcmliZWQgYWJvdmUpLiBObyBsZWFkaW5nIG9yICIKKyJ0cmFpbGluZyBzcGFjZXMgYXJlIGFsbG93ZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjY3NgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJkZWJpYW4vc291cmNlL2luY2x1ZGUtYmluYXJpZXMiCittc2dzdHIgIkI8Y29uZmlnLWZpbGVzPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2ODAKK21zZ2lkICIiCisiVGhpcyBmaWxlIGNvbnRhaW5zIGEgbGlzdCBvZiBiaW5hcnkgZmlsZXMgKG9uZSBwZXIgbGluZSkgdGhhdCBzaG91bGQgYmUgIgorImluY2x1ZGVkIGluIHRoZSBkZWJpYW4gdGFyYmFsbC4gTGVhZGluZyBhbmQgdHJhaWxpbmcgc3BhY2VzIGFyZSBzdHJpcHBlZC4gICIKKyJMaW5lcyBzdGFydGluZyB3aXRoIFwiI1wiIGFyZSBjb21tZW50cyBhbmQgYXJlIHNraXBwZWQuIEVtcHR5IGxpbmVzIGFyZSAiCisiaWdub3JlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6NjgwCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgImRlYmlhbi9zb3VyY2Uvb3B0aW9ucyIKK21zZ3N0ciAiQjxjb25maWctZmlsZXM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjY4NgorbXNnaWQgIiIKKyJUaGlzIGZpbGUgY29udGFpbnMgYSBsaXN0IG9mIGxvbmcgb3B0aW9ucyB0aGF0IHNob3VsZCBiZSBhdXRvbWF0aWNhbGx5ICIKKyJwcmVwZW5kZWQgdG8gdGhlIHNldCBvZiBjb21tYW5kIGxpbmUgb3B0aW9ucyBvZiBhIEI8ZHBrZy1zb3VyY2UgLWI+IG9yICIKKyJCPGRwa2ctc291cmNlIC0tcHJpbnQtZm9ybWF0PiBjYWxsLiBPcHRpb25zIGxpa2UgQjwtLWNvbXByZXNzaW9uPiBhbmQgQjwtLSIKKyJjb21wcmVzc2lvbi1sZXZlbD4gYXJlIHdlbGwgc3VpdGVkIGZvciB0aGlzIGZpbGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NjkyCittc2dpZCAiIgorIkVhY2ggb3B0aW9uIHNob3VsZCBiZSBwdXQgb24gYSBzZXBhcmF0ZSBsaW5lLiBFbXB0eSBsaW5lcyBhbmQgbGluZXMgc3RhcnRpbmcgIgorIndpdGggXCIjXCIgYXJlIGlnbm9yZWQuIFRoZSBsZWFkaW5nIFwiLS1cIiBzaG91bGQgYmUgc3RyaXBwZWQgYW5kIHNob3J0ICIKKyJvcHRpb25zIGFyZSBub3QgYWxsb3dlZC4gT3B0aW9uYWwgc3BhY2VzIGFyZSBhbGxvd2VkIGFyb3VuZCB0aGUgXCI9XCIgc3ltYm9sICIKKyJhbmQgb3B0aW9uYWwgcXVvdGVzIGFyZSBhbGxvd2VkIGFyb3VuZCB0aGUgdmFsdWUuICBIZXJlJ3MgYW4gZXhhbXBsZSBvZiBzdWNoICIKKyJhIGZpbGU6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NzAwCisjLCBuby13cmFwCittc2dpZCAiIgorIiAgIyBsZXQgZHBrZy1zb3VyY2UgY3JlYXRlIGEgZGViaWFuLnRhci5iejIgd2l0aCBtYXhpbWFsIGNvbXByZXNzaW9uXG4iCisiICBjb21wcmVzc2lvbiA9IFwiYnppcDJcIlxuIgorIiAgY29tcHJlc3Npb24tbGV2ZWwgPSA5XG4iCisiICAjIHVzZSBkZWJpYW4vcGF0Y2hlcy9kZWJpYW4tY2hhbmdlcyBhcyBhdXRvbWF0aWMgcGF0Y2hcbiIKKyIgIHNpbmdsZS1kZWJpYW4tcGF0Y2hcbiIKKyIgICMgaWdub3JlIGNoYW5nZXMgb24gY29uZmlnLntzdWIsZ3Vlc3N9XG4iCisiICBleHRlbmQtZGlmZi1pZ25vcmUgPSBcIihefC8pKGNvbmZpZy5zdWJ8Y29uZmlnLmd1ZXNzKSRcIlxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NzAzCittc2dpZCAiIgorIk5vdGU6IEI8Zm9ybWF0PiBvcHRpb25zIGFyZSBub3QgYWNjZXB0ZWQgaW4gdGhpcyBmaWxlLCB5b3Ugc2hvdWxkIHVzZSAiCisiQjxkZWJpYW4vc291cmNlL2Zvcm1hdD4gaW5zdGVhZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6NzAzCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgImRlYmlhbi9zb3VyY2UvbG9jYWwtb3B0aW9ucyIKK21zZ3N0ciAiQjxjb25maWctZmlsZXM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjcwOAorbXNnaWQgIiIKKyJFeGFjdGx5IGxpa2UgQjxkZWJpYW4vc291cmNlL29wdGlvbnM+IGV4Y2VwdCB0aGF0IHRoZSBmaWxlIGlzIG5vdCBpbmNsdWRlZCAiCisiaW4gdGhlIGdlbmVyYXRlZCBzb3VyY2UgcGFja2FnZS4gSXQgY2FuIGJlIHVzZWZ1bCB0byBzdG9yZSBhIHByZWZlcmVuY2UgdGllZCAiCisidG8gdGhlIG1haW50YWluZXIgb3IgdG8gdGhlIFZDUyByZXBvc2l0b3J5IHdoZXJlIHRoZSBzb3VyY2UgcGFja2FnZSBpcyAiCisibWFpbnRhaW5lZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6NzA4CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgImRlYmlhbi9zb3VyY2UvbG9jYWwtcGF0Y2gtaGVhZGVyIgorbXNnc3RyICJCPGNvbmZpZy1maWxlcz4iCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjcwOQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJkZWJpYW4vc291cmNlL3BhdGNoLWhlYWRlciIKK21zZ3N0ciAiQjxjb25maWctZmlsZXM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjcxMworbXNnaWQgIiIKKyJGcmVlIGZvcm0gdGV4dCB0aGF0IGlzIHB1dCBvbiB0b3Agb2YgdGhlIGF1dG9tYXRpYyBwYXRjaCBnZW5lcmF0ZWQgaW4gIgorImZvcm1hdHMgXCIyLjBcIiBvciBcIjMuMCAocXVpbHQpXCIuIEI8bG9jYWwtcGF0Y2gtaGVhZGVyPiBpcyBub3QgaW5jbHVkZWQgaW4gIgorInRoZSBnZW5lcmF0ZWQgc291cmNlIHBhY2thZ2Ugd2hpbGUgQjxwYXRjaC1oZWFkZXI+IGlzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo3MTMKKyMsIG5vLXdyYXAKK21zZ2lkICJkZWJpYW4vcGF0Y2hlcy9zZXJpZXMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo3MjIKK21zZ2lkICIiCisiVGhpcyBmaWxlIGxpc3RzIGFsbCBwYXRjaGVzIHRoYXQgaGF2ZSB0byBiZSBhcHBsaWVkIChpbiB0aGUgZ2l2ZW4gb3JkZXIpICBvbiAiCisidG9wIG9mIHRoZSB1cHN0cmVhbSBzb3VyY2UgcGFja2FnZS4gTGVhZGluZyBhbmQgdHJhaWxpbmcgc3BhY2VzIGFyZSAiCisic3RyaXBwZWQuIExpbmVzIHN0YXJ0aW5nIHdpdGggXCIjXCIgYXJlIGNvbW1lbnRzIGFuZCBhcmUgc2tpcHBlZC4gRW1wdHkgIgorImxpbmVzIGFyZSBpZ25vcmVkLiBSZW1haW5pbmcgbGluZXMgc3RhcnQgd2l0aCBhIHBhdGNoIGZpbGVuYW1lIChyZWxhdGl2ZSB0byAiCisidGhlIEI8ZGViaWFuL3BhdGNoZXMvPiBkaXJlY3RvcnkpIHVwIHRvIHRoZSBmaXJzdCBzcGFjZSBjaGFyYWN0ZXIgb3IgdGhlIGVuZCAiCisib2YgbGluZS4gT3B0aW9uYWwgcXVpbHQgb3B0aW9ucyBjYW4gZm9sbG93IHVwIHRvIHRoZSBlbmQgb2YgbGluZSBvciB0aGUgIgorImZpcnN0IFwiI1wiIHByZWNlZGVkIGJ5IG9uZSBvciBtb3JlIHNwYWNlcyAod2hpY2ggbWFya3MgdGhlIHN0YXJ0IG9mIGEgIgorImNvbW1lbnQgdXAgdG8gdGhlIGVuZCBvZiBsaW5lKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo3MjkKKyMsIGZ1enp5Cittc2dpZCAiQjxkcGtnLWRlYj4oMSksIEI8ZHBrZz4oMSksIEI8ZHNlbGVjdD4oMSkuIgorbXNnc3RyICJCPGRlYj4oNSksIEI8ZHBrZz4oMSksIEI8ZHBrZy1kZWI+KDEpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo3MzYKKyMsIGZ1enp5Cittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMDgtMjAxMSBSYXBoYVxcWzplXWwgSGVydHpvZyIKK21zZ3N0ciAiQ29weXJpZ2h0IDIwMDEgSm9leSBIZXNzIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1zcGxpdC4xOjIKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiZHBrZy1zcGxpdCIKK21zZ3N0ciAi0LrQvtC80L/Qu9C10LrRgiBkcGtnIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6NQorbXNnaWQgImRwa2ctc3BsaXQgLSBEZWJpYW4gcGFja2FnZSBhcmNoaXZlIHNwbGl0L2pvaW4gdG9vbCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6OQorIywgZnV6enkKK21zZ2lkICJCPGRwa2ctc3BsaXQ+IFtJPG9wdGlvbj4uLi5dIEk8Y29tbWFuZD4iCittc2dzdHIgIkI8ZHBrZz4gW0k80L/QsNGA0LDQvNC10YLRgNGLPl0gSTzQtNC10LnRgdGC0LLQuNC1PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjE1Cittc2dpZCAiIgorIkI8ZHBrZy1zcGxpdD4gc3BsaXRzIERlYmlhbiBiaW5hcnkgcGFja2FnZSBmaWxlcyBpbnRvIHNtYWxsZXIgcGFydHMgYW5kICIKKyJyZWFzc2VtYmxlcyB0aGVtIGFnYWluLCB0byBzdXBwb3J0IHRoZSBzdG9yYWdlIG9mIGxhcmdlIHBhY2thZ2UgZmlsZXMgb24gIgorInNtYWxsIG1lZGlhIHN1Y2ggYXMgZmxvcHB5IGRpc2tzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTkKK21zZ2lkICIiCisiSXQgY2FuIGJlIG9wZXJhdGVkIG1hbnVhbGx5IHVzaW5nIHRoZSBCPC0tc3BsaXQ+LCBCPC0tam9pbj4gYW5kIEI8LS1pbmZvPiAiCisib3B0aW9ucy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjI3Cittc2dpZCAiIgorIkl0IGFsc28gaGFzIGFuIGF1dG9tYXRpYyBtb2RlLCBpbnZva2VkIHVzaW5nIHRoZSBCPC0tYXV0bz4gb3B0aW9uLCB3aGVyZSBpdCAiCisibWFpbnRhaW5zIGEgcXVldWUgb2YgcGFydHMgc2VlbiBidXQgbm90IHlldCByZWFzc2VtYmxlZCBhbmQgcmVhc3NlbWJsZXMgYSAiCisicGFja2FnZSBmaWxlIHdoZW4gaXQgaGFzIHNlZW4gYWxsIG9mIGl0cyBwYXJ0cy4gVGhlIEI8LS1saXN0cT4gYW5kIEI8LS0iCisiZGlzY2FyZD4gb3B0aW9ucyBhbGxvdyB0aGUgbWFuYWdlbWVudCBvZiB0aGUgcXVldWUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMTozMAorbXNnaWQgIiIKKyJBbGwgc3BsaXR0aW5nLCBqb2luaW5nIGFuZCBxdWV1ZWluZyBvcGVyYXRpb25zIHByb2R1Y2UgaW5mb3JtYXRpdmUgbWVzc2FnZXMgIgorIm9uIHN0YW5kYXJkIG91dHB1dDsgdGhlc2UgbWF5IHNhZmVseSBiZSBpZ25vcmVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zcGxpdC4xOjMyCisjLCBuby13cmFwCittc2dpZCAiQjwtcz4sIEI8LS1zcGxpdD4gSTxjb21wbGV0ZS1hcmNoaXZlPiBbSTxwcmVmaXg+XSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MzUKK21zZ2lkICJTcGxpdHMgYSBzaW5nbGUgRGViaWFuIGJpbmFyeSBwYWNrYWdlIGludG8gc2V2ZXJhbCBwYXJ0cy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjQzCittc2dpZCAiIgorIlRoZSBwYXJ0cyBhcmUgbmFtZWQgSTxwcmVmaXg+QjwuPkk8Tj5CPG9mPkk8TT5CPC5kZWI+IHdoZXJlIEk8Tj4gaXMgdGhlIHBhcnQgIgorIm51bWJlciwgc3RhcnRpbmcgYXQgMSwgYW5kIEk8TT4gaXMgdGhlIHRvdGFsIG51bWJlciBvZiBwYXJ0cyAoYm90aCBpbiAiCisiZGVjaW1hbCkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMTo1MQorbXNnaWQgIiIKKyJJZiBubyBJPHByZWZpeD4gaXMgc3VwcGxpZWQgdGhlbiB0aGUgSTxjb21wbGV0ZS1hcmNoaXZlPiBmaWxlbmFtZSBpcyB0YWtlbiwgIgorImluY2x1ZGluZyBkaXJlY3RvcnksIHdpdGggYW55IHRyYWlsaW5nIEI8LmRlYj4gcmVtb3ZlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc3BsaXQuMTo1MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1qPiwgQjwtLWpvaW4+IEk8cGFydD4uLi4iCittc2dzdHIgIkI8ZHBrZyAtaT4gfCBCPC0taW5zdGFsbD4gSTzQuNC80Y8g0YTQsNC50LvQsCDQv9Cw0LrQtdGC0LA+Li4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6NTUKK21zZ2lkICIiCisiSm9pbnMgdGhlIHBhcnRzIG9mIGEgcGFja2FnZSBmaWxlIHRvZ2V0aGVyLCByZWFzc2VtYmxpbmcgdGhlIG9yaWdpbmFsIGZpbGUgIgorImFzIGl0IHdhcyBiZWZvcmUgaXQgd2FzIHNwbGl0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6NTkKK21zZ2lkICIiCisiVGhlIHBhcnQgZmlsZXMgZ2l2ZW4gYXMgYXJndW1lbnRzIG11c3QgYmUgYWxsIHRoZSBwYXJ0cyBvZiBleGFjdGx5IHRoZSBzYW1lICIKKyJvcmlnaW5hbCBiaW5hcnkgZmlsZS4gRWFjaCBwYXJ0IG11c3Qgb2NjdXIgZXhhY3RseSBvbmNlIGluIHRoZSBhcmd1bWVudCAiCisibGlzdCwgdGhvdWdoIHRoZSBwYXJ0cyB0byBub3QgbmVlZCB0byBiZSBsaXN0ZWQgaW4gb3JkZXIuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMTo2NAorbXNnaWQgIiIKKyJUaGUgcGFydHMgbXVzdCBvZiBjb3Vyc2UgYWxsIGhhdmUgYmVlbiBnZW5lcmF0ZWQgd2l0aCB0aGUgc2FtZSBwYXJ0IHNpemUgIgorInNwZWNpZmllZCBhdCBzcGxpdCB0aW1lLCB3aGljaCBtZWFucyB0aGF0IHRoZXkgbXVzdCB1c3VhbGx5IGhhdmUgYmVlbiAiCisiZ2VuZXJhdGVkIGJ5IHRoZSBzYW1lIGludm9jYXRpb24gb2YgQjxkcGtnLXNwbGl0IC0tc3BsaXQ+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6NjYKK21zZ2lkICJUaGUgcGFydHMnIGZpbGVuYW1lcyBhcmUgbm90IHNpZ25pZmljYW50IGZvciB0aGUgcmVhc3NlbWJseSBwcm9jZXNzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6NjkKK21zZ2lkICIiCisiQnkgZGVmYXVsdCB0aGUgb3V0cHV0IGZpbGUgaXMgY2FsbGVkIEk8cGFja2FnZT5CPF8+STx2ZXJzaW9uPkI8Xz5JPGFyY2g+QjwuIgorImRlYj4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNwbGl0LjE6NzAKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtST4sIEI8LS1pbmZvPiBJPHBhcnQ+Li4uIgorbXNnc3RyICJCPGRwa2cgLWk+IHwgQjwtLWluc3RhbGw+IEk80LjQvNGPINGE0LDQudC70LAg0L/QsNC60LXRgtCwPi4uLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjc1Cittc2dpZCAiIgorIlByaW50cyBpbmZvcm1hdGlvbiwgaW4gYSBodW1hbi1yZWFkYWJsZSBmb3JtYXQsIGFib3V0IHRoZSBwYXJ0IGZpbGUocykgICIKKyJzcGVjaWZpZWQuIEFyZ3VtZW50cyB3aGljaCBhcmUgbm90IGJpbmFyeSBwYWNrYWdlIHBhcnRzIHByb2R1Y2UgYSBtZXNzYWdlICIKKyJzYXlpbmcgc28gaW5zdGVhZCAoYnV0IHN0aWxsIG9uIHN0YW5kYXJkIG91dHB1dCkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNwbGl0LjE6NzUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1hPiwgQjwtLWF1dG8gLW8+IEk8Y29tcGxldGUtb3V0cHV0IHBhcnQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMTo3OAorbXNnaWQgIkF1dG9tYXRpY2FsbHkgcXVldWUgcGFydHMgYW5kIHJlYXNzZW1ibGUgYSBwYWNrYWdlIGlmIHBvc3NpYmxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6ODMKK21zZ2lkICIiCisiVGhlIEk8cGFydD4gc3BlY2lmaWVkIGlzIGV4YW1pbmVkLCBhbmQgY29tcGFyZWQgd2l0aCBvdGhlciBwYXJ0cyBvZiB0aGUgc2FtZSAiCisicGFja2FnZSAoaWYgYW55KSBpbiB0aGUgcXVldWUgb2YgcGFja2FnZXMgZmlsZSBwYXJ0cy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjkwCittc2dpZCAiIgorIklmIGFsbCBwYXJ0cyBvZiB0aGUgcGFja2FnZSBmaWxlIG9mIHdoaWNoIEk8cGFydD4gaXMgYSBwYXJ0IGFyZSBhdmFpbGFibGUgIgorInRoZW4gdGhlIHBhY2thZ2UgaXMgcmVhc3NlbWJsZWQgYW5kIHdyaXR0ZW4gdG8gSTxjb21wbGV0ZS1vdXRwdXQ+ICh3aGljaCAiCisic2hvdWxkIG5vdCB1c3VhbGx5IGFscmVhZHkgZXhpc3QsIHRob3VnaCB0aGlzIGlzIG5vdCBhbiBlcnJvcikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMTo5NgorbXNnaWQgIiIKKyJJZiBub3QgdGhlbiB0aGUgSTxwYXJ0PiBpcyBjb3BpZWQgaW50byB0aGUgcXVldWUgYW5kIEk8Y29tcGxldGUtb3V0cHV0PiBpcyAiCisibm90IGNyZWF0ZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxMDMKK21zZ2lkICIiCisiSWYgSTxwYXJ0PiBpcyBub3QgYSBzcGxpdCBiaW5hcnkgcGFja2FnZSBwYXJ0IHRoZW4gQjxkcGtnLXNwbGl0PiB3aWxsIGV4aXQgIgorIndpdGggc3RhdHVzIEI8MT47IGlmIHNvbWUgb3RoZXIgdHJvdWJsZSBvY2N1cnMgdGhlbiBpdCB3aWxsIGV4aXQgd2l0aCBzdGF0dXMgIgorIkI8Mj4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxMTAKK21zZ2lkICIiCisiVGhlIEI8LS1vdXRwdXQ+IG9yIEI8LW8+IG9wdGlvbiBtdXN0IGJlIHN1cHBsaWVkIHdoZW4gdXNpbmcgQjwtLWF1dG8+LiAgKElmICIKKyJ0aGlzIHdlcmUgbm90IG1hbmRhdG9yeSB0aGUgY2FsbGluZyBwcm9ncmFtIHdvdWxkIG5vdCBrbm93IHdoYXQgb3V0cHV0IGZpbGUgIgorInRvIGV4cGVjdC4pIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNwbGl0LjE6MTEwCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LWw+LCBCPC0tbGlzdHE+IgorbXNnc3RyICJCPC1vPnxCPC0tb2tub2RvPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjExMworbXNnaWQgIkxpc3RzIHRoZSBjb250ZW50cyBvZiB0aGUgcXVldWUgb2YgcGFja2FnZXMgdG8gYmUgcmVhc3NlbWJsZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxMTcKK21zZ2lkICIiCisiRm9yIGVhY2ggcGFja2FnZSBmaWxlIG9mIHdoaWNoIHBhcnRzIGFyZSBpbiB0aGUgcXVldWUgdGhlIG91dHB1dCBnaXZlcyB0aGUgIgorIm5hbWUgb2YgdGhlIHBhY2thZ2UsIHRoZSBwYXJ0cyBpbiB0aGUgcXVldWUsIGFuZCB0aGUgdG90YWwgbnVtYmVyIG9mIGJ5dGVzICIKKyJzdG9yZWQgaW4gdGhlIHF1ZXVlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zcGxpdC4xOjExNworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1kPiwgQjwtLWRpc2NhcmQ+IFtJPHBhY2thZ2U+Li4uXSIKK21zZ3N0ciAiQjxkcGtnIC1pPiB8IEI8LS1pbnN0YWxsPiBJPNC40LzRjyDRhNCw0LnQu9CwINC/0LDQutC10YLQsD4uLi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxMjEKK21zZ2lkICIiCisiVGhpcyBkaXNjYXJkcyBwYXJ0cyBmcm9tIHRoZSBxdWV1ZSBvZiB0aG9zZSB3YWl0aW5nIGZvciB0aGUgcmVtYWluaW5nIHBhcnRzICIKKyJvZiB0aGVpciBwYWNrYWdlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjEyNgorbXNnaWQgIiIKKyJJZiBubyBJPHBhY2thZ2U+IGlzIHNwZWNpZmllZCB0aGVuIHRoZSBxdWV1ZSBpcyBjbGVhcmVkIGNvbXBsZXRlbHk7IGlmIGFueSAiCisiYXJlIHNwZWNpZmllZCB0aGVuIG9ubHkgcGFydHMgb2YgdGhlIHJlbGV2YW50IHBhY2thZ2UocykgYXJlIGRlbGV0ZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNwbGl0LjE6MTM0CisjLCBuby13cmFwCittc2dpZCAiQjwtLWRlcG90ZGlyPkk8IGRpcmVjdG9yeT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjEzOQorbXNnaWQgIiIKKyJTcGVjaWZpZXMgYW4gYWx0ZXJuYXRpdmUgZGlyZWN0b3J5IGZvciB0aGUgcXVldWUgb2YgcGFydHMgYXdhaXRpbmcgYXV0b21hdGljICIKKyJyZWFzc2VtYmx5LiBUaGUgZGVmYXVsdCBpcyBCPC92YXIvbGliL2Rwa2c+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zcGxpdC4xOjEzOQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1TPiwgQjwtLXBhcnRzaXplPiBJPGtpYmlieXRlcz4iCittc2dzdHIgIkI8LWE+fEI8LS1zdGFydGFzPiBJPNC/0L7Qu9C90L7QtV/QuNC80Y8+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTQzCittc2dpZCAiIgorIlNwZWNpZmllcyB0aGUgbWF4aW11bSBwYXJ0IHNpemUgd2hlbiBzcGxpdHRpbmcsIGluIGtpYmlieXRlcyAoMTAyNCBieXRlcykuICIKKyJUaGUgZGVmYXVsdCBpcyA0NTAgS2lCLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zcGxpdC4xOjE0MworIywgbm8td3JhcAorbXNnaWQgIkI8LW8+LCBCPC0tb3V0cHV0PiBJPGNvbXBsZXRlLW91dHB1dD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjE0NgorbXNnaWQgIlNwZWNpZmllcyB0aGUgb3V0cHV0IGZpbGUgbmFtZSBmb3IgYSByZWFzc2VtYmx5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTUxCittc2dpZCAiIgorIlRoaXMgb3ZlcnJpZGVzIHRoZSBkZWZhdWx0IGZvciBhIG1hbnVhbCByZWFzc2VtYmx5IChCPC0tam9pbj4pICBhbmQgaXMgIgorIm1hbmRhdG9yeSBmb3IgYW4gYXV0b21hdGljIHF1ZXVlLW9yLXJlYXNzZW1ibGUgKEI8LS1hdXRvPikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNwbGl0LjE6MTUxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LVE+LCBCPC0tbnBxdWlldD4iCittc2dzdHIgIkI8LXE+fEI8LS1xdWlldD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxNjIKK21zZ2lkICIiCisiV2hlbiBkb2luZyBhdXRvbWF0aWMgcXVldWUtb3ItcmVhc3NlbWJseSBCPGRwa2ctc3BsaXQ+IHVzdWFsbHkgcHJpbnRzIGEgIgorIm1lc3NhZ2UgaWYgaXQgaXMgZ2l2ZW4gYSBJPHBhcnQ+IHRoYXQgaXMgbm90IGEgYmluYXJ5IHBhY2thZ2UgcGFydC4gVGhpcyAiCisib3B0aW9uIHN1cHByZXNzZXMgdGhpcyBtZXNzYWdlLCB0byBhbGxvdyBwcm9ncmFtcyBzdWNoIGFzIEI8ZHBrZz4gdG8gY29wZSAiCisid2l0aCBib3RoIHNwbGl0IGFuZCB1bnNwbGl0IHBhY2thZ2VzIHdpdGhvdXQgcHJvZHVjaW5nIHNwdXJpb3VzIG1lc3NhZ2VzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zcGxpdC4xOjE2MgorIywgbm8td3JhcAorbXNnaWQgIkI8LS1tc2Rvcz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjE2NworbXNnaWQgIiIKKyJGb3JjZXMgdGhlIG91dHB1dCBmaWxlbmFtZXMgZ2VuZXJhdGVkIGJ5IEI8LS1zcGxpdD4gdG8gYmUgbXNkb3MtY29tcGF0aWJsZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjE3MworbXNnaWQgIiIKKyJUaGlzIG1hbmdsZXMgdGhlIHByZWZpeCAtIGVpdGhlciB0aGUgZGVmYXVsdCBkZXJpdmVkIGZyb20gdGhlIGlucHV0IGZpbGVuYW1lICIKKyJvciB0aGUgb25lIHN1cHBsaWVkIGFzIGFuIGFyZ3VtZW50OiBhbHBoYW51bWVyaWNzIGFyZSBsb3dlcmNhc2VkLCBwbHVzIHNpZ25zICIKKyJhcmUgcmVwbGFjZWQgYnkgQjx4PidzIGFuZCBhbGwgb3RoZXIgY2hhcmFjdGVycyBhcmUgZGlzY2FyZGVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTc4Cittc2dpZCAiIgorIlRoZSByZXN1bHQgaXMgdGhlbiB0cnVuY2F0ZWQgYXMgbXVjaCBhcyBpcyBuZWNlc3NhcnksIGFuZCBmaWxlbmFtZXMgb2YgdGhlICIKKyJmb3JtIEk8cHJlZml4Tj5CPG9mPkk8TT5CPC5kZWI+IGFyZSBnZW5lcmF0ZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxODYKK21zZ2lkICIiCisiVGhlIHJlcXVlc3RlZCBzcGxpdCwgbWVyZ2UsIG9yIG90aGVyIGNvbW1hbmQgc3VjY2VlZGVkLiAgQjwtLWluZm8+IGNvbW1hbmRzICIKKyJjb3VudCBhcyBzdWNjZXNzZnVsIGV2ZW4gaWYgdGhlIGZpbGVzIGFyZSBub3QgYmluYXJ5IHBhY2thZ2UgcGFydHMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxOTMKK21zZ2lkICIiCisiT25seSBvY2N1cnMgd2l0aCBCPC0tYXV0bz4gYW5kIGluZGljYXRlcyB0aGF0IHRoZSBJPHBhcnQ+IGZpbGUgd2FzIG5vdCBhICIKKyJiaW5hcnkgcGFja2FnZSBwYXJ0LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zcGxpdC4xOjE5MyBzdGFydC1zdG9wLWRhZW1vbi44OjI3NSB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6Mzc4CisjLCBuby13cmFwCittc2dpZCAiQjwyPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTk4Cittc2dpZCAiIgorIlNvbWUga2luZCBvZiB0cm91YmxlIGhhcHBlbmVkLCBzdWNoIGFzIGEgc3lzdGVtIGNhbGwgZmFpbHVyZSwgYSBmaWxlIHRoYXQgIgorImxvb2tlZCBsaWtlIGEgcGFja2FnZSBwYXJ0IGZpbGUgYnV0IHdhcyBjb3JydXB0ZWQsIGEgdXNhZ2UgZXJyb3Igb3Igc29tZSAiCisib3RoZXIgcHJvYmxlbS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjIwMgorbXNnaWQgIiIKKyJGdWxsIGRldGFpbHMgb2YgdGhlIHBhY2thZ2VzIGluIHRoZSBxdWV1ZSBhcmUgaW1wb3NzaWJsZSB0byBnZXQgd2l0aG91dCAiCisiZGlnZ2luZyBpbnRvIHRoZSBxdWV1ZSBkaXJlY3RvcnkgeW91cnNlbGYuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToyMDUKK21zZ2lkICIiCisiVGhlcmUgaXMgbm8gZWFzeSB3YXkgdG8gdGVzdCB3aGV0aGVyIGEgZmlsZSB0aGF0IG1heSBiZSBhIGJpbmFyeSBwYWNrYWdlICIKKyJwYXJ0IGlzIG9uZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc3BsaXQuMToyMDcKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiSTwvdmFyL2xpYi9kcGtnL3BhcnRzPiIKK21zZ3N0ciAiSTwvdmFyL2xpYi9kcGtnL3N0YXR1cz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToyMTEKK21zZ2lkICIiCisiVGhlIGRlZmF1bHQgcXVldWUgZGlyZWN0b3J5IGZvciBwYXJ0IGZpbGVzIGF3YWl0aW5nIGF1dG9tYXRpYyByZWFzc2VtYmx5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MjE2Cittc2dpZCAiIgorIlRoZSBmaWxlbmFtZXMgdXNlZCBpbiB0aGlzIGRpcmVjdG9yeSBhcmUgaW4gYSBmb3JtYXQgaW50ZXJuYWwgdG8gQjxkcGtnLSIKKyJzcGxpdD4gYW5kIGFyZSB1bmxpa2VseSB0byBiZSB1c2VmdWwgdG8gb3RoZXIgcHJvZ3JhbXMsIGFuZCBpbiBhbnkgY2FzZSB0aGUgIgorImZpbGVuYW1lIGZvcm1hdCBzaG91bGQgbm90IGJlIHJlbGllZCB1cG9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MjIyCisjLCBmdXp6eQorbXNnaWQgIkI8ZGViPig1KSwgQjxkZWItY29udHJvbD4oNSksIEI8ZHBrZy1kZWI+KDEpLCBCPGRwa2c+KDEpLiIKK21zZ3N0ciAiQjxkZWI+KDUpLCBCPGRwa2c+KDEpLCBCPGRwa2ctZGViPigxKS4iCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLXN0YXRvdmVycmlkZSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODoxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkRlYmlhbiBwcm9qZWN0IgorbXNnc3RyICLQn9GA0L7QtdC60YIgRGViaWFuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjQKK21zZ2lkICJkcGtnLXN0YXRvdmVycmlkZSAtIG92ZXJyaWRlIG93bmVyc2hpcCBhbmQgbW9kZSBvZiBmaWxlcyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjgKKyMsIGZ1enp5Cittc2dpZCAiQjxkcGtnLXN0YXRvdmVycmlkZT4gW0k8b3B0aW9uPi4uLl0gSTxjb21tYW5kPiIKK21zZ3N0ciAiQjxkcGtnPiBbSTzQv9Cw0YDQsNC80LXRgtGA0Ys+XSBJPNC00LXQudGB0YLQstC40LU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjE4Cittc2dpZCAiIgorImBCPHN0YXQgb3ZlcnJpZGVzPicgYXJlIGEgd2F5IHRvIHRlbGwgQjxkcGtnPigxKSAgdG8gdXNlIGEgZGlmZmVyZW50IG93bmVyICIKKyJvciBtb2RlIGZvciBhIGZpbGUgd2hlbiBhIHBhY2thZ2UgaXMgaW5zdGFsbGVkLiAobm90ZTogSSB1c2UgdGhlIHdvcmQgYGZpbGUnICIKKyJoZXJlLCBidXQgaW4gcmVhbGl0eSB0aGlzIGNhbiBiZSBhbnkgZmlsZXN5c3RlbSBvYmplY3QgdGhhdCBkcGtnIGhhbmRsZXMsICIKKyJpbmNsdWRpbmcgZGlyZWN0b3JpZXMsIGRldmljZXMsIGV0Yy4pLiBUaGlzIGNhbiBiZSB1c2VkIHRvIGZvcmNlIHByb2dyYW1zICIKKyJ0aGF0IGFyZSBub3JtYWxseSBzZXR1aWQgdG8gYmUgaW5zdGFsbCB3aXRob3V0IGEgc2V0dWlkIGZsYWcsIG9yIG9ubHkgIgorImV4ZWN1dGFibGUgYnkgYSBjZXJ0YWluIGdyb3VwLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjIyCittc2dpZCAiIgorIkI8ZHBrZy1zdGF0b3ZlcnJpZGU+IGlzIGEgdXRpbGl0eSB0byBtYW5hZ2UgdGhlIGxpc3Qgb2Ygc3RhdCBvdmVycmlkZXMuIEl0ICIKKyJoYXMgdGhyZWUgYmFzaWMgZnVuY3Rpb25zOiBhZGRpbmcsIHJlbW92aW5nIGFuZCBsaXN0aW5nIG92ZXJyaWRlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6MjQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tYWRkPkk8IHVzZXIgZ3JvdXAgbW9kZSBmaWxlPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjMyCittc2dpZCAiIgorIkFkZCBhbiBvdmVycmlkZSBmb3IgSTxmaWxlPi4gSTxmaWxlPiBkb2VzIG5vdCBuZWVkIHRvIGV4aXN0IHdoZW4gdGhpcyAiCisiY29tbWFuZCBpcyB1c2VkOyB0aGUgb3ZlcnJpZGUgd2lsbCBiZSBzdG9yZWQgYW5kIHVzZWQgbGF0ZXIuICBVc2VycyBhbmQgIgorImdyb3VwcyBjYW4gYmUgc3BlY2lmaWVkIGJ5IHRoZWlyIG5hbWUgKGZvciBleGFtcGxlIEI8cm9vdD4gb3IgQjxub2JvZHk+KSwgb3IgIgorImJ5IHRoZWlyIG51bWJlciBieSBwcmVwZW5kaW5nIHRoZSBudW1iZXIgd2l0aCBhIGBCPCM+JyAoZm9yIGV4YW1wbGUgQjwjMD4gb3IgIgorIkI8IzY1NTM0PikuIFRoZSBJPG1vZGU+IG5lZWRzIHRvIGJlIHNwZWNpZmllZCBpbiBvY3RhbC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODozNQorbXNnaWQgIiIKKyJJZiAtLXVwZGF0ZSBpcyBzcGVjaWZpZWQgYW5kIEk8ZmlsZT4gZXhpc3RzLCBpdCBpcyBpbW1lZGlhdGVseSBzZXQgdG8gdGhlICIKKyJuZXcgb3duZXIgYW5kIG1vZGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6MzkKK21zZ2lkICIiCisiUmVtb3ZlIGFuIG92ZXJyaWRlIGZvciBJPGZpbGU+LCB0aGUgc3RhdHVzIG9mIEk8ZmlsZT4gaXMgbGVmdCB1bmNoYW5nZWQgYnkgIgorInRoaXMgY29tbWFuZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6MzkKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWxpc3Q+IFtJPGdsb2ItcGF0dGVybj5dIgorbXNnc3RyICJCPC0tc3RhdHVzLWZkID5JPEU8bHQ+bkU8Z3Q+PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo0NAorbXNnaWQgIiIKKyJMaXN0IGFsbCBvdmVycmlkZXMuIElmIGEgZ2xvYiBwYXR0ZXJuIGlzIHNwZWNpZmllZCByZXN0cmljdCB0aGUgb3V0cHV0IHRvICIKKyJvdmVycmlkZXMgd2hpY2ggbWF0Y2ggdGhlIGdsb2IuIElmIHRoZXJlIGFyZSBubyBvdmVycmlkZXMgb3Igbm9uZSBtYXRjaCB0aGUgIgorImdsb2IgQjxkcGtnLXN0YXRvdmVycmlkZT4gd2lsbCBleGl0IHdpdGggYW4gZXhpdGNvZGUgb2YgMS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo1NgorbXNnaWQgIiIKKyJDaGFuZ2UgdGhlIEk8ZGlyZWN0b3J5PiBvZiB0aGUgZHBrZyBkYXRhYmFzZSB3aGVyZSB0aGUgc3RhdG92ZXJyaWRlIGZpbGUgaXMgIgorImFsc28gc3RvcmVkLiBEZWZhdWx0cyB0byBJPC92YXIvbGliL2Rwa2c+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo1NiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzM2CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1mb3JjZT4iCittc2dzdHIgIkI8LS1ub2NoZWNrPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo2MAorbXNnaWQgIiIKKyJGb3JjZSBhbiBhY3Rpb24sIGV2ZW4gaWYgYSBzYW5pdHkgY2hlY2sgd291bGQgb3RoZXJ3aXNlIHByb2hpYml0IGl0LiAgVGhpcyAiCisiaXMgbmVjZXNzYXJ5IHRvIG92ZXJyaWRlIGFuIGV4aXN0aW5nIG92ZXJyaWRlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo2MAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tdXBkYXRlPiIKK21zZ3N0ciAiQjw4MjItZGF0ZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6NjQKK21zZ2lkICIiCisiSW1tZWRpYXRlbHkgdHJ5IHRvIGNoYW5nZSB0aGUgZmlsZSB0byB0aGUgbmV3IG93bmVyIGFuZCBtb2RlIGlmIGl0IGV4aXN0cy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo2NworbXNnaWQgIkJlIGxlc3MgdmVyYm9zZSBhYm91dCB3aGF0IHdlIGRvLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo3NQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJJPC92YXIvbGliL2Rwa2cvc3RhdG92ZXJyaWRlPiIKK21zZ3N0ciAiSTwvdmFyL2xpYi9kcGtnL3N0YXR1cz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6ODAKK21zZ2lkICIiCisiRmlsZSB3aGljaCBjb250YWlucyB0aGUgY3VycmVudCBsaXN0IG9mIHN0YXQgb3ZlcnJpZGVzIG9mIHRoZSBzeXN0ZW0uIEl0IGlzICIKKyJsb2NhdGVkIGluIHRoZSBkcGtnIGFkbWluaXN0cmF0aW9uIGRpcmVjdG9yeSwgYWxvbmcgd2l0aCBvdGhlciBmaWxlcyAiCisiaW1wb3J0YW50IHRvIGRwa2csIHN1Y2ggYXMgYHN0YXR1cycgb3IgYGF2YWlsYWJsZScuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6ODMKK21zZ2lkICIiCisiTm90ZTogQjxkcGtnLXN0YXRvdmVycmlkZT4gcHJlc2VydmVzIHRoZSBvbGQgY29weSBvZiB0aGlzIGZpbGUsIHdpdGggIgorImV4dGVuc2lvbiBcIi1vbGRcIiwgYmVmb3JlIHJlcGxhY2luZyBpdCB3aXRoIHRoZSBuZXcgb25lLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy10cmlnZ2VyLjE6MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJkcGtnLXRyaWdnZXIiCittc2dzdHIgIkI8ZHBrZy1xdWVyeS1hY3Rpb25zPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy10cmlnZ2VyLjE6NAorbXNnaWQgImRwa2ctdHJpZ2dlciAtIGEgcGFja2FnZSB0cmlnZ2VyIHV0aWxpdHkiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy10cmlnZ2VyLjE6OAorIywgZnV6enkKK21zZ2lkICJCPGRwa2ctdHJpZ2dlcj4gW0k8b3B0aW9uPi4uLl0gSTx0cmlnZ2VyLW5hbWU+IgorbXNnc3RyICJCPGRwa2c+IFtJPNC/0LDRgNCw0LzQtdGC0YDRiz5dIEk80LTQtdC50YHRgtCy0LjQtT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctdHJpZ2dlci4xOjExCisjLCBmdXp6eQorbXNnaWQgIkI8ZHBrZy10cmlnZ2VyPiBbSTxvcHRpb24+Li4uXSBJPGNvbW1hbmQ+IgorbXNnc3RyICJCPGRwa2c+IFtJPNC/0LDRgNCw0LzQtdGC0YDRiz5dIEk80LTQtdC50YHRgtCy0LjQtT4iCisKKyMgdHlwZTogUGxhaW4gdGV4dAorIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy10cmlnZ2VyLjE6MTUKK21zZ2lkICIiCisiQjxkcGtnLXRyaWdnZXI+IGlzIGEgdG9vbCB0byBleHBsaWNpdGx5IGFjdGl2YXRlIHRyaWdnZXJzIGFuZCBjaGVjayBmb3IgaXRzICIKKyJzdXBwb3J0IG9uIHRoZSBydW5uaW5nIEI8ZHBrZz4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctdHJpZ2dlci4xOjIxCittc2dpZCAiIgorIlRoaXMgY2FuIGJlIHVzZWQgYnkgbWFpbnRhaW5lciBzY3JpcHRzIGluIGNvbXBsZXggYW5kIGNvbmRpdGlvbmFsIHNpdHVhdGlvbnMgIgorIndoZXJlIHRoZSBmaWxlIHRyaWdnZXJzLCBvciB0aGUgZGVjbGFyYXRpdmUgQjxhY3RpdmF0ZT4gdHJpZ2dlcnMgY29udHJvbCAiCisiZmlsZSBkaXJlY3RpdmUsIGFyZSBpbnN1ZmZpY2llbnRseSByaWNoLiBJdCBjYW4gYWxzbyBiZSB1c2VkIGZvciB0ZXN0aW5nIGFuZCAiCisiYnkgc3lzdGVtIGFkbWluaXN0cmF0b3JzIChidXQgbm90ZSB0aGF0IHRoZSB0cmlnZ2VycyB3b24ndCBhY3R1YWxseSBiZSBydW4gIgorImJ5IEI8ZHBrZy10cmlnZ2VyPikuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctdHJpZ2dlci4xOjIzCittc2dpZCAiVW5yZWNvZ25pc2VkIHRyaWdnZXIgbmFtZSBzeW50YXhlcyBhcmUgYW4gZXJyb3IgZm9yIEI8ZHBrZy10cmlnZ2VyPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctdHJpZ2dlci4xOjI1CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1jaGVjay1zdXBwb3J0ZWQ+IgorbXNnc3RyICJCPC0tbm9jaGVjaz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctdHJpZ2dlci4xOjMxCittc2dpZCAiIgorIkNoZWNrIGlmIHRoZSBydW5uaW5nIEI8ZHBrZz4gc3VwcG9ydHMgdHJpZ2dlcnMgKHVzdWFsbHkgY2FsbGVkIGZyb20gYSAiCisicG9zdGluc3QpLiBXaWxsIGV4aXQgQjwwPiBpZiBhIHRyaWdnZXJzLWNhcGFibGUgQjxkcGtnPiBoYXMgcnVuLCBvciBCPDE+ICIKKyJ3aXRoIGFuIGVycm9yIG1lc3NhZ2UgdG8gc3RkZXJyIGlmIG5vdC4gTm9ybWFsbHksIGhvd2V2ZXIsIGl0IGlzIGJldHRlciBqdXN0ICIKKyJ0byBhY3RpdmF0ZSB0aGUgZGVzaXJlZCB0cmlnZ2VyIHdpdGggQjxkcGtnLXRyaWdnZXI+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy10cmlnZ2VyLjE6NDMKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWJ5LXBhY2thZ2U9Pkk8cGFja2FnZT4iCittc2dzdHIgIkI8UGFja2FnZTo+IEU8bHQ+0LjQvNGPINC/0LDQutC10YLQsEU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXRyaWdnZXIuMTo0OQorbXNnaWQgIiIKKyJPdmVycmlkZSB0cmlnZ2VyIGF3YWl0ZXIgKG5vcm1hbGx5IHNldCBieSBCPGRwa2c+IHRocm91Z2ggdGhlICIKKyJCPERQS0dfTUFJTlRTQ1JJUFRfUEFDS0FHRT4gZW52aXJvbm1lbnQgdmFyaWFibGUgb2YgdGhlIG1haW50YWluZXIgc2NyaXB0cywgIgorIm5hbWluZyB0aGUgcGFja2FnZSB0byB3aGljaCB0aGUgc2NyaXB0IGJlbG9uZ3MsIGFuZCB0aGlzIHdpbGwgYmUgdXNlZCBieSAiCisiZGVmYXVsdCkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXRyaWdnZXIuMTo0OQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tbm8tYXdhaXQ+IgorbXNnc3RyICJCPC0tbm8tZGVic2lnPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy10cmlnZ2VyLjE6NTYKK21zZ2lkICIiCisiVGhpcyBvcHRpb24gYXJyYW5nZXMgdGhhdCB0aGUgY2FsbGluZyBwYWNrYWdlIFQgKGlmIGFueSkgbmVlZCBub3QgYXdhaXQgdGhlICIKKyJwcm9jZXNzaW5nIG9mIHRoaXMgdHJpZ2dlcjsgdGhlIGludGVyZXN0ZWQgcGFja2FnZShzKSBJLCB3aWxsIG5vdCBiZSBhZGRlZCAiCisidG8gVCdzIHRyaWdnZXIgcHJvY2Vzc2luZyBhd2FpdGVkIGxpc3QgYW5kIFQncyBzdGF0dXMgaXMgdW5jaGFuZ2VkLiAgVCBtYXkgIgorImJlIGNvbnNpZGVyZWQgaW5zdGFsbGVkIGV2ZW4gdGhvdWdoIEkgbWF5IG5vdCB5ZXQgaGF2ZSBwcm9jZXNzZWQgdGhlIHRyaWdnZXIuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXRyaWdnZXIuMTo1NgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tbm8tYWN0PiIKK21zZ3N0ciAiQjwtLW5vY2hlY2s+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXRyaWdnZXIuMTo1OQorbXNnaWQgIkp1c3QgdGVzdCwgZG8gbm90IGFjdHVhbGx5IGNoYW5nZSBhbnl0aGluZy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy10cmlnZ2VyLjE6NjkKKyMsIGZ1enp5Cittc2dpZCAiIgorIkI8ZHBrZz4oMSksIEI8ZGViLXRyaWdnZXJzPig1KSwgQjwvdXNyL3NoYXJlL2RvYy9kcGtnLWRldi90cmlnZ2Vycy50eHQuZ3o+LiIKK21zZ3N0ciAiQjxkcGtnLWRlYi1hY3Rpb25zPiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctdmVuZG9yLjE6MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJkcGtnLXZlbmRvciIKK21zZ3N0ciAiZGViLWNvbnRyb2wiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctdmVuZG9yLjE6NAorbXNnaWQgImRwa2ctdmVuZG9yIC0gcXVlcmllcyBpbmZvcm1hdGlvbiBhYm91dCBkaXN0cmlidXRpb24gdmVuZG9ycyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXZlbmRvci4xOjgKKyMsIGZ1enp5Cittc2dpZCAiQjxkcGtnLXZlbmRvcj4gW0k8b3B0aW9uPi4uLl0gSTxjb21tYW5kPiIKK21zZ3N0ciAiQjxkcGtnPiBbSTzQv9Cw0YDQsNC80LXRgtGA0Ys+XSBJPNC00LXQudGB0YLQstC40LU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXZlbmRvci4xOjEzCittc2dpZCAiIgorIkI8ZHBrZy12ZW5kb3I+IGlzIGEgdG9vbCB0byBxdWVyeSBpbmZvcm1hdGlvbiBhYm91dCB2ZW5kb3JzIGxpc3RlZCBpbiBCPC9ldGMvIgorImRwa2cvb3JpZ2lucz4uIEI8L2V0Yy9kcGtnL29yaWdpbnMvZGVmYXVsdD4gY29udGFpbnMgaW5mb3JtYXRpb24gYWJvdXQgdGhlICIKKyJjdXJyZW50IHZlbmRvci4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctdmVuZG9yLjE6MTUKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWlzPkk8IHZlbmRvcj4iCittc2dzdHIgIkI8LS1zdGF0dXMtZmQgPkk8RTxsdD5uRTxndD4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXZlbmRvci4xOjE5Cittc2dpZCAiIgorIkV4aXRzIHdpdGggQjwwPiBpZiB0aGUgY3VycmVudCB2ZW5kb3IgaXMgSTx2ZW5kb3I+LiBPdGhlcndpc2UgZXhpdHMgd2l0aCBub24tIgorInplcm8uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXZlbmRvci4xOjE5CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1kZXJpdmVzLWZyb20+STwgdmVuZG9yPiIKK21zZ3N0ciAiQjxQcmlvcml0eTo+IEU8bHQ+0L/RgNC40L7RgNC40YLQtdGCRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctdmVuZG9yLjE6MjQKK21zZ2lkICIiCisiRXhpdHMgd2l0aCBCPDA+IGlmIHRoZSBjdXJyZW50IHZlbmRvciBkaXN0cmlidXRpb24gaXMgYSBkZXJpdmF0aXZlIG9mICIKKyJJPHZlbmRvcj4sIG90aGVyd2lzZSBleGl0cyB3aXRoIG5vbi16ZXJvLiBJdCB1c2VzIHRoZSBcIlBhcmVudFwiIGZpZWxkIHRvICIKKyJicm93c2UgYWxsIGFuY2VzdG9ycyBvZiB0aGUgY3VycmVudCB2ZW5kb3IuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXZlbmRvci4xOjI0CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1xdWVyeT5JPCBmaWVsZD4iCittc2dzdHIgIkI8LS1sb2c9Pkk80LjQvNGPINGE0LDQudC70LA+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXZlbmRvci4xOjI4Cittc2dpZCAiIgorIlByaW50IG9uIHN0YW5kYXJkIG91dHB1dCB0aGUgdmFsdWUgb2YgdGhlIHZlbmRvci1zcGVjaWZpYyBJPGZpZWxkPiBmb3IgdGhlICIKKyJjdXJyZW50IHZlbmRvci4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctdmVuZG9yLjE6MzYKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLXZlbmRvcj5JPCB2ZW5kb3I+IgorbXNnc3RyICJCPFByaW9yaXR5Oj4gRTxsdD7Qv9GA0LjQvtGA0LjRgtC10YJFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy12ZW5kb3IuMTo0MQorbXNnaWQgIiIKKyJBc3N1bWVzIHRoZSBjdXJyZW50IHZlbmRvciBpcyBJPHZlbmRvcj4gaW5zdGVhZCBvZiBkaXNjb3ZlcmluZyBpdCB3aXRoIHRoZSAiCisiQjxERUJfVkVORE9SPiBlbnZpcm9ubWVudCB2YXJpYWJsZSBvciBCPC9ldGMvZHBrZy9vcmlnaW5zL2RlZmF1bHQ+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy12ZW5kb3IuMTo0MworIywgbm8td3JhcAorbXNnaWQgIkI8REVCX1ZFTkRPUj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy12ZW5kb3IuMTo0NworbXNnaWQgIiIKKyJUaGlzIHNldHRpbmcgZGVmaW5lcyB0aGUgY3VycmVudCB2ZW5kb3IuIElmIG5vdCBzZXQsIGl0IHdpbGwgZGlzY292ZXIgdGhlICIKKyJjdXJyZW50IHZlbmRvciBieSByZWFkaW5nIEI8L2V0Yy9kcGtnL29yaWdpbnMvZGVmYXVsdD4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctdmVuZG9yLjE6NTAgdXBkYXRlLWFsdGVybmF0aXZlcy44OjQ5OAorIywgZnV6enkKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAwOSBSYXBoYVxcWzplXWwgSGVydHpvZyIKK21zZ3N0ciAiQ29weXJpZ2h0IDIwMDEgSm9leSBIZXNzIgorCisjLiB0eXBlOiBUSAorIzogZHNlbGVjdC4xOjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkc2VsZWN0IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0CisjLCBmdXp6eQorbXNnaWQgImRzZWxlY3QgLSBEZWJpYW4gcGFja2FnZSBtYW5hZ2VtZW50IGZyb250ZW5kIgorbXNnc3RyICJkZWItY29udHJvbCAtLSDRhNC+0YDQvNCw0YIg0LzQsNGB0YLQtdGAINGE0LDQudC70LAgY29udHJvbCDQv9Cw0LrQtdGC0L7QsiBEZWJpYW4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo4CisjLCBmdXp6eQorI3wgbXNnaWQgIkI8ZHBrZz4gW0k8b3B0aW9ucz5dIEk8YWN0aW9uPiIKK21zZ2lkICJCPGRzZWxlY3Q+IFtJPG9wdGlvbj4uLi5dIFtJPGFjdGlvbj5dIgorbXNnc3RyICJCPGRwa2c+IFtJPNC/0LDRgNCw0LzQtdGC0YDRiz5dIEk80LTQtdC50YHRgtCy0LjQtT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxNworIywgbm8td3JhcAorbXNnaWQgIiIKKyJCPGRzZWxlY3Q+XG4iCisiaXMgb25lIG9mIHRoZSBwcmltYXJ5IHVzZXIgaW50ZXJmYWNlcyBmb3IgbWFuYWdpbmcgcGFja2FnZXMgb24gYSBEZWJpYW5cbiIKKyJzeXN0ZW0uIEF0IHRoZSBCPGRzZWxlY3Q+IG1haW4gbWVudSwgdGhlIHN5c3RlbSBhZG1pbmlzdHJhdG9yIGNhbjpcbiIKKyIgLSBVcGRhdGUgdGhlIGxpc3Qgb2YgYXZhaWxhYmxlIHBhY2thZ2UgdmVyc2lvbnMsXG4iCisiIC0gVmlldyB0aGUgc3RhdHVzIG9mIGluc3RhbGxlZCBhbmQgYXZhaWxhYmxlIHBhY2thZ2VzLFxuIgorIiAtIEFsdGVyIHBhY2thZ2Ugc2VsZWN0aW9ucyBhbmQgbWFuYWdlIGRlcGVuZGVuY2llcyxcbiIKKyIgLSBJbnN0YWxsIG5ldyBwYWNrYWdlcyBvciB1cGdyYWRlIHRvIG5ld2VyIHZlcnNpb25zLlxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToyOQorbXNnaWQgIiIKKyJCPGRzZWxlY3Q+IG9wZXJhdGVzIGFzIGEgZnJvbnQtZW5kIHRvIEI8ZHBrZz4oMSksIHRoZSBsb3ctbGV2ZWwgZGViaWFuICIKKyJwYWNrYWdlIGhhbmRsaW5nIHRvb2wuIEl0IGZlYXR1cmVzIGEgZnVsbC1zY3JlZW4gcGFja2FnZSBzZWxlY3Rpb25zIG1hbmFnZXIgIgorIndpdGggcGFja2FnZSBkZXBlbmRzIGFuZCBjb25mbGljdHMgcmVzb2x2ZXIuIFdoZW4gcnVuIHdpdGggYWRtaW5pc3RyYXRvciAiCisicHJpdmlsZWdlcywgcGFja2FnZXMgY2FuIGJlIGluc3RhbGxlZCwgdXBncmFkZWQgYW5kIHJlbW92ZWQuIFZhcmlvdXMgYWNjZXNzICIKKyJtZXRob2RzIGNhbiBiZSBjb25maWd1cmVkIHRvIHJldHJpZXZlIGF2YWlsYWJsZSBwYWNrYWdlIHZlcnNpb24gaW5mb3JtYXRpb24gIgorImFuZCBpbnN0YWxsYWJsZSBwYWNrYWdlcyBmcm9tIHBhY2thZ2UgcmVwb3NpdG9yaWVzLiAgRGVwZW5kaW5nIG9uIHRoZSB1c2VkICIKKyJhY2Nlc3MgbWV0aG9kLCB0aGVzZSByZXBvc2l0b3JpZXMgY2FuIGJlIHB1YmxpYyBhcmNoaXZlIHNlcnZlcnMgb24gdGhlICIKKyJpbnRlcm5ldCwgbG9jYWwgYXJjaGl2ZSBzZXJ2ZXJzIG9yIGNkcm9tcy4gIFRoZSByZWNvbW1lbmRlZCBhY2Nlc3MgbWV0aG9kIGlzICIKKyJJPGFwdD4sIHdoaWNoIGlzIHByb3ZpZGVkIGJ5IHRoZSBwYWNrYWdlIEI8YXB0Pi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjM1Cittc2dpZCAiIgorIk5vcm1hbGx5IEI8ZHNlbGVjdD4gaXMgaW52b2tlZCB3aXRob3V0IHBhcmFtZXRlcnMuIEFuIGludGVyYWN0aXZlIG1lbnUgaXMgIgorInByZXNlbnRlZCwgb2ZmZXJpbmcgdGhlIHVzZXIgYSBsaXN0IG9mIGFjdGlvbnMuIElmIGFuIGFjdGlvbiBpcyBnaXZlbiBhcyAiCisiYXJndW1lbnQsIHRoZW4gdGhhdCBhY3Rpb24gaXMgc3RhcnRlZCBpbW1lZGlhdGVseS4gU2V2ZXJhbCBjb21tYW5kIGxpbmUgIgorInBhcmFtZXRlcnMgYXJlIHN0aWxsIGF2YWlsYWJsZSB0byBtb2RpZnkgdGhlIHJ1bm5pbmcgYmVoYXZpb3VyIG9mIEI8ZHNlbGVjdD4gIgorIm9yIHNob3cgYWRkaXRpb25hbCBpbmZvcm1hdGlvbiBhYm91dCB0aGUgcHJvZ3JhbS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjQzCisjLCBmdXp6eQorbXNnaWQgIiIKKyJBbGwgb3B0aW9ucyBjYW4gYmUgc3BlY2lmaWVkIGJvdGggb24gdGhlIGNvbW1hbmQgbGluZSBhbmQgaW4gdGhlIEI8ZHNlbGVjdD4gIgorImNvbmZpZ3VyYXRpb24gZmlsZSBJPC9ldGMvZHBrZy9kc2VsZWN0LmNmZz4gb3IgdGhlIGZpbGVzIG9uIHRoZSAiCisiY29uZmlndXJhdGlvbiBkaXJlY3RvcnkgSTwvZXRjL2Rwa2cvZHNlbGVjdC5jZmcuZC8+LiBFYWNoIGxpbmUgaW4gdGhlICIKKyJjb25maWd1cmF0aW9uIGZpbGUgaXMgZWl0aGVyIGFuIG9wdGlvbiAoZXhhY3RseSB0aGUgc2FtZSBhcyB0aGUgY29tbWFuZCBsaW5lICIKKyJvcHRpb24gYnV0IHdpdGhvdXQgbGVhZGluZyBkYXNoZXMpIG9yIGEgY29tbWVudCAoaWYgaXQgc3RhcnRzIHdpdGggYSBCPCM+KS4iCittc2dzdHIgIiIKKyLQktGB0LUg0L/QsNGA0LDQvNC10YLRgNGLINC80L7QttC90L4g0YPQutCw0LfRi9Cy0LDRgtGMINC60LDQuiDQsiDQutC+0LzQsNC90LTQvdC+0Lkg0YHRgtGA0L7QutC1LCDRgtCw0Log0Lgg0LIgIgorItC60L7QvdGE0LjQs9GD0YDQsNGG0LjQvtC90L3QvtC8INGE0LDQudC70LUgQjxkcGtnPiAtLSBJPC9ldGMvZHBrZy9kcGtnLmNmZz4uINCa0LDQttC00LDRjyDRgdGC0YDQvtC60LAg0LIgIgorItC60L7QvdGE0LjQs9GD0YDQsNGG0LjQvtC90L3QvtC8INGE0LDQudC70LUg0LTQvtC70LbQvdCwINCx0YvRgtGMINC70LjQsdC+INC/0LDRgNCw0LzQtdGC0YDQvtC8ICjQsiDRgtC+0YfQvdC+0YHRgtC4INC60LDQuiDQsiAiCisi0LrQvtC80LDQvdC00L3QvtC5INGB0YLRgNC+0LrQtSwg0L3QviDQsdC10Lcg0L3QsNGH0LDQu9GM0L3Ri9GFINC00LXRhNC40YHQvtCyKSwg0LvQuNCx0L4g0LrQvtC80LzQtdC90YLQsNGA0LjQtdC8ICjQtdGB0LvQuCAiCisi0L3QsNGH0LjQvdCw0LXRgtGB0Y8g0YEgQjwjPikuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NDkKK21zZ2lkICIiCisiQ2hhbmdlcyB0aGUgZGlyZWN0b3J5IHdoZXJlIHRoZSBkcGtnIGBJPHN0YXR1cz4nLCBgSTxhdmFpbGFibGU+JyBhbmQgc2ltaWxhciAiCisiZmlsZXMgYXJlIGxvY2F0ZWQuIFRoaXMgZGVmYXVsdHMgdG8gSTwvdmFyL2xpYi9kcGtnPiBhbmQgbm9ybWFsbHkgdGhlcmUgIgorInNob3VsZG4ndCBiZSBhbnkgbmVlZCB0byBjaGFuZ2UgaXQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkc2VsZWN0LjE6NDkKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWRlYnVnPkk8IGZpbGUgPnxJPCA+QjwtRD5JPGZpbGU+IgorbXNnc3RyICJCPC0tbmV3PiB8IEI8LS1vbGQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NTIKK21zZ2lkICJUdXJuIG9uIGRlYnVnZ2luZy4gRGVidWdnaW5nIGluZm9ybWF0aW9uIGlzIHNlbnQgdG8gSTxmaWxlPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRzZWxlY3QuMTo1MgorIywgbm8td3JhcAorbXNnaWQgIkI8LS1leHBlcnQ+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo1NgorbXNnaWQgIiIKKyJUdXJucyBvbiBleHBlcnQgbW9kZSwgaS5lLiBkb2Vzbid0IGRpc3BsYXkgcG9zc2libHkgYW5ub3lpbmcgaGVscCBtZXNzYWdlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRzZWxlY3QuMTo1NgorIywgbm8td3JhcAorbXNnaWQgIkI8LS1jb2xvdXI+fEI8LS1jb2xvcj4gSTxzY3JlZW5wYXJ0Oj5bSTxmb3JlZ3JvdW5kPl0sW0k8YmFja2dyb3VuZD5dW0k8OmF0dHI+W0k8K2F0dHIrLi4+XV0iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjYzCittc2dpZCAiIgorIkNvbmZpZ3VyZXMgc2NyZWVuIGNvbG9ycy4gVGhpcyB3b3JrcyBvbmx5IGlmIHlvdXIgZGlzcGxheSBzdXBwb3J0cyBjb2xvcnMuICAiCisiVGhpcyBvcHRpb24gbWF5IGJlIHVzZWQgbXVsdGlwbGUgdGltZXMgKGFuZCBpcyBiZXN0IHVzZWQgaW4gSTxkc2VsZWN0LmNmZz4pLiAiCisiRWFjaCB1c2UgY2hhbmdlcyB0aGUgY29sb3IgKGFuZCBvcHRpb25hbGx5LCBvdGhlciBhdHRyaWJ1dGVzKSBvZiBvbmUgcGFydCBvZiAiCisidGhlIHNjcmVlbi4gIFRoZSBwYXJ0cyBvZiB0aGUgc2NyZWVuIChmcm9tIHRvcCB0byBib3R0b20pIGFyZToiCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRzZWxlY3QuMTo2NAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPHRpdGxlPiIKK21zZ3N0ciAiQjxpbnN0YWxsZWQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NjcKK21zZ2lkICJUaGUgc2NyZWVuIHRpdGxlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHNlbGVjdC4xOjY3CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8bGlzdGhlYWQ+IgorbXNnc3RyICJCPGluc3RhbGxlZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo3MAorIywgZnV6enkKK21zZ2lkICJUaGUgaGVhZGVyIGxpbmUgYWJvdmUgdGhlIGxpc3Qgb2YgcGFja2FnZXMuIgorbXNnc3RyICLQktGA0YPRh9C90YPRjiDQv9GA0L7RgdC80L7RgtGA0LXRgtGMINGB0L/QuNGB0L7QuiDQv9Cw0LrQtdGC0L7QsjoiCisKKyMuIHR5cGU6IFRQCisjOiBkc2VsZWN0LjE6NzAKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxsaXN0PiIKK21zZ3N0ciAiQjxpbnN0YWxsPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjczCittc2dpZCAiVGhlIHNjcm9sbGluZyBsaXN0IG9mIHBhY2thZ2VzIChhbmQgYWxzbyBzb21lIGhlbHAgdGV4dCkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkc2VsZWN0LjE6NzMKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxsaXN0c2VsPiIKK21zZ3N0ciAiQjxpbnN0YWxsPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjc2Cittc2dpZCAiVGhlIHNlbGVjdGVkIGl0ZW0gaW4gdGhlIGxpc3QuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkc2VsZWN0LjE6NzYKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxwa2dzdGF0ZT4iCittc2dzdHIgIkI8cHVyZ2U+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6ODAKK21zZ2lkICIiCisiSW4gdGhlIGxpc3Qgb2YgcGFja2FnZXMsIHRoZSB0ZXh0IGluZGljYXRpbmcgdGhlIGN1cnJlbnQgc3RhdGUgb2YgZWFjaCAiCisicGFja2FnZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRzZWxlY3QuMTo4MAorIywgbm8td3JhcAorbXNnaWQgIkI8cGtnc3RhdGVzZWw+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo4NAorbXNnaWQgIiIKKyJJbiB0aGUgbGlzdCBvZiBwYWNrYWdlcywgdGhlIHRleHQgaW5kaWNhdGluZyB0aGUgY3VycmVudCBzdGF0ZSBvZiB0aGUgIgorImN1cnJlbnRseSBzZWxlY3RlZCBwYWNrYWdlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHNlbGVjdC4xOjg0CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8aW5mb2hlYWQ+IgorbXNnc3RyICJCPGluc3RhbGxlZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo4NworbXNnaWQgIiIKKyJUaGUgaGVhZGVyIGxpbmUgdGhhdCBkaXNwbGF5cyB0aGUgc3RhdGUgb2YgdGhlIGN1cnJlbnRseSBzZWxlY3RlZCBwYWNrYWdlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogZHNlbGVjdC4xOjg3CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8aW5mb2Rlc2M+IgorbXNnc3RyICJCPC0tbm8tZGVic2lnPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjkwCisjLCBmdXp6eQorbXNnaWQgIlRoZSBwYWNrYWdlJ3Mgc2hvcnQgZGVzY3JpcHRpb24uIgorbXNnc3RyICLQn9Cw0LrQtdGCINCy0YvQsdGA0LDQvSDQtNC70Y8g0YPRgdGC0LDQvdC+0LLQutC4LiIKKworIy4gdHlwZTogVFAKKyM6IGRzZWxlY3QuMTo5MAorIywgbm8td3JhcAorbXNnaWQgIkI8aW5mbz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjkzCittc2dpZCAiVXNlZCB0byBkaXNwbGF5IHBhY2thZ2UgaW5mbyBzdWNoIGFzIHRoZSBwYWNrYWdlJ3MgZGVzY3JpcHRpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkc2VsZWN0LjE6OTMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGluZm9mb290PiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6OTYKK21zZ2lkICJUaGUgbGFzdCBsaW5lIG9mIHRoZSBzY3JlZW4gd2hlbiBzZWxlY3RpbmcgcGFja2FnZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBkc2VsZWN0LjE6OTYKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjxxdWVyeT4iCittc2dzdHIgIkI8cHVyZ2U+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6OTkKK21zZ2lkICJVc2VkIHRvIGRpc3BsYXkgcXVlcnkgbGluZXMiCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IGRzZWxlY3QuMTo5OQorIywgbm8td3JhcAorbXNnaWQgIkI8aGVscHNjcmVlbj4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjEwMgorbXNnaWQgIkNvbG9yIG9mIGhlbHAgc2NyZWVucy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjEwNworbXNnaWQgIiIKKyJBZnRlciB0aGUgcGFydCBvZiB0aGUgc2NyZWVuIGNvbWVzIGEgY29sb24gYW5kIHRoZSBjb2xvciBzcGVjaWZpY2F0aW9uLiBZb3UgIgorImNhbiBzcGVjaWZ5IGVpdGhlciB0aGUgZm9yZWdyb3VuZCBjb2xvciwgdGhlIGJhY2tncm91bmQgY29sb3IsIG9yIGJvdGgsICIKKyJvdmVycmlkaW5nIHRoZSBjb21waWxlZC1pbiBjb2xvcnMuIFVzZSBzdGFuZGFyZCBjdXJzZXMgY29sb3IgbmFtZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxMTMKK21zZ2lkICIiCisiT3B0aW9uYWxseSwgYWZ0ZXIgdGhlIGNvbG9yIHNwZWNpZmljYXRpb24gaXMgYW5vdGhlciBjb2xvbiwgYW5kIGFuIGF0dHJpYnV0ZSAiCisic3BlY2lmaWNhdGlvbi4gVGhpcyBpcyBhIGxpc3Qgb2Ygb25lIG9yIG1vcmUgYXR0cmlidXRlcywgc2VwYXJhdGVkIGJ5IHBsdXMgIgorIihcIitcIikgY2hhcmFjdGVycy4gQXZhaWxhYmxlIGF0dHJpYnV0ZXMgaW5jbHVkZSAobm90IGFsbCBvZiB0aGVzZSB3aWxsIHdvcmsgIgorIm9uIGFsbCB0ZXJtaW5hbHMpOiBub3JtYWwsIHN0YW5kb3V0LCB1bmRlcmxpbmUsIHJldmVyc2UsIGJsaW5rLCBicmlnaHQsIGRpbSwgIgorImJvbGQiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjExNgorbXNnaWQgIlByaW50IGEgYnJpZWYgaGVscCB0ZXh0IGFuZCBleGl0IHN1Y2Nlc3NmdWxseS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjExOQorIywgZnV6enkKK21zZ2lkICJQcmludCB2ZXJzaW9uIGluZm9ybWF0aW9uIGFuZCBleGl0IHN1Y2Nlc3NmdWxseS4iCittc2dzdHIgItCS0YvQtNCw0YLRjCDQuNC90YTQvtGA0LzQsNGG0LjRjiDQviDQstC10YDRgdC40Lgg0Lgg0LfQsNCy0LXRgNGI0LjRgtGMINGA0LDQsdC+0YLRgy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxMjYKK21zZ2lkICIiCisiV2hlbiBCPGRzZWxlY3Q+IGlzIHN0YXJ0ZWQgaXQgY2FuIHBlcmZvcm0gdGhlIGZvbGxvd2luZyBhY3Rpb25zLCBlaXRoZXIgIgorImRpcmVjdGx5IGlmIGl0IHdhcyBzcGVjaWZpZWQgb24gdGhlIGNvbW1hbmQgbGluZSBvciBieSBwcm9tcHRpbmcgdGhlIHVzZXIgIgorIndpdGggYSBtZW51IG9mIGF2YWlsYWJsZSBhY3Rpb25zIGlmIHJ1bm5pbmcgaW50ZXJhY3RpdmVseToiCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRzZWxlY3QuMToxMjYKKyMsIG5vLXdyYXAKK21zZ2lkICJhY2Nlc3MiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjEyOAorbXNnaWQgIkNob29zZSBhbmQgY29uZmlndXJlIGFuIGFjY2VzcyBtZXRob2QgdG8gYWNjZXNzIHBhY2thZ2UgcmVwb3NpdG9yaWVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTM0Cittc2dpZCAiIgorIkJ5IGRlZmF1bHQsIEI8ZHNlbGVjdD4gcHJvdmlkZXMgc2V2ZXJhbCBtZXRob2RzIHN1Y2ggYXMgSTxjZHJvbT4sICIKKyJJPG11bHRpX2NkPiwgSTxuZnM+LCBJPG11bHRpX25mcz4sIEk8aGFyZGRpc2s+LCBJPG1vdW50ZWQ+LCBJPG11bHRpX21vdW50PiwgIgorIkk8ZmxvcHB5PiBvciBJPGZ0cD4sIGJ1dCBvdGhlciBwYWNrYWdlcyBtYXkgcHJvdmlkZSBhZGRpdGlvbmFsIG1ldGhvZHMsIGVnLiAiCisidGhlIEk8YXB0PiBhY2Nlc3MgbWV0aG9kIHByb3ZpZGVkIGJ5IHRoZSBCPGFwdD4gcGFja2FnZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjEzNgorbXNnaWQgIlRoZSB1c2Ugb2YgdGhlIEk8YXB0PiBhY2Nlc3MgbWV0aG9kIGlzIHN0cm9uZ2x5IHJlY29tbWVuZGVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHNlbGVjdC4xOjEzNworIywgbm8td3JhcAorbXNnaWQgInVwZGF0ZSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTM5CisjLCBmdXp6eQorbXNnaWQgIlJlZnJlc2ggdGhlIGF2YWlsYWJsZSBwYWNrYWdlcyBkYXRhYmFzZS4iCittc2dzdHIgItCh0L/QuNGB0L7QuiDQtNC+0YHRgtGD0L/QvdGL0YUg0L/QsNC60LXRgtC+0LIuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTQ2Cittc2dpZCAiIgorIlJldHJpZXZlcyBhIGxpc3Qgb2YgYXZhaWxhYmxlIHBhY2thZ2UgdmVyc2lvbnMgZnJvbSB0aGUgcGFja2FnZSByZXBvc2l0b3J5LCAiCisiY29uZmlndXJlZCBmb3IgdGhlIGN1cnJlbnQgYWNjZXNzIG1ldGhvZCwgYW5kIHVwZGF0ZSB0aGUgZHBrZyBkYXRhYmFzZS4gVGhlICIKKyJwYWNrYWdlIGxpc3RzIGFyZSBjb21tb25seSBwcm92aWRlZCBieSB0aGUgcmVwb3NpdG9yeSBhcyBmaWxlcyBuYW1lZCAiCisiSTxQYWNrYWdlcz4gb3IgSTxQYWNrYWdlcy5nej4uICBUaGVzZSBmaWxlcyBjYW4gYmUgZ2VuZXJhdGVkIGJ5IHJlcG9zaXRvcnkgIgorIm1haW50YWluZXJzLCB1c2luZyB0aGUgcHJvZ3JhbSBCPGRwa2ctc2NhbnBhY2thZ2VzPigxKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjE0OQorbXNnaWQgIiIKKyJEZXRhaWxzIG9mIHRoZSB1cGRhdGUgYWN0aW9uIGRlcGVuZCBvbiB0aGUgYWNjZXNzIG1ldGhvZCdzIGltcGxlbWVudGF0aW9uLiAgIgorIk5vcm1hbGx5IHRoZSBwcm9jZXNzIGlzIHN0cmFpZ2h0Zm9yd2FyZCBhbmQgcmVxdWlyZXMgbm8gdXNlciBpbnRlcmFjdGlvbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRzZWxlY3QuMToxNTAKKyMsIG5vLXdyYXAKK21zZ2lkICJzZWxlY3QiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjE1MgorbXNnaWQgIlZpZXcgb3IgbWFuYWdlIHBhY2thZ2Ugc2VsZWN0aW9ucyBhbmQgZGVwZW5kZW5jaWVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTU4Cittc2dpZCAiIgorIlRoaXMgaXMgdGhlIG1haW4gZnVuY3Rpb24gb2YgQjxkc2VsZWN0Pi4gSW4gdGhlIHNlbGVjdCBzY3JlZW4sIHRoZSB1c2VyIGNhbiAiCisicmV2aWV3IGEgbGlzdCBvZiBhbGwgYXZhaWxhYmxlIGFuZCBpbnN0YWxsZWQgcGFja2FnZXMuIFdoZW4gcnVuIHdpdGggIgorImFkbWluaXN0cmF0b3IgcHJpdmlsZWdlcywgaXQgaXMgYWxzbyBwb3NzaWJsZSB0byBpbnRlcmFjdGl2ZWx5IGNoYW5nZSAiCisicGFja2FnZXMgc2VsZWN0aW9uIHN0YXRlLiBCPGRzZWxlY3Q+IHRyYWNrcyB0aGUgaW1wbGljYXRpb25zIG9mIHRoZXNlICIKKyJjaGFuZ2VzIHRvIG90aGVyIGRlcGVuZGluZyBvciBjb25mbGljdGluZyBwYWNrYWdlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjE2NQorbXNnaWQgIiIKKyJXaGVuIGEgY29uZmxpY3Qgb3IgZmFpbGVkIGRlcGVuZHMgaXMgZGV0ZWN0ZWQsIGEgZGVwZW5kZW5jeSByZXNvbHV0aW9uICIKKyJzdWJzY3JlZW4gaXMgcHJvbXB0ZWQgdG8gdGhlIHVzZXIuIEluIHRoaXMgc2NyZWVuLCBhIGxpc3Qgb2YgY29uZmxpY3Rpbmcgb3IgIgorImRlcGVuZGluZyBwYWNrYWdlcyBpcyBzaG93biwgYW5kIGZvciBlYWNoIHBhY2thZ2UgbGlzdGVkLCB0aGUgcmVhc29uIGZvciBpdHMgIgorImxpc3RpbmcgaXMgc2hvd24uIFRoZSB1c2VyIG1heSBhcHBseSB0aGUgc3VnZ2VzdGlvbnMgcHJvcG9zZWQgYnkgQjxkc2VsZWN0PiwgIgorIm92ZXJyaWRlIHRoZW0sIG9yIGJhY2sgb3V0IGFsbCB0aGUgY2hhbmdlcywgaW5jbHVkaW5nIHRoZSBvbmVzIHRoYXQgY3JlYXRlZCAiCisidGhlIHVucmVzb2x2ZWQgZGVwZW5kcyBvciBjb25mbGljdHMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxNjgKK21zZ2lkICIiCisiVGhlIHVzZSBvZiB0aGUgaW50ZXJhY3RpdmUgcGFja2FnZSBzZWxlY3Rpb25zIG1hbmFnZW1lbnQgc2NyZWVuIGlzIGV4cGxhaW5lZCAiCisiaW4gbW9yZSBkZXRhaWwgYmVsb3cuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkc2VsZWN0LjE6MTY5CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgImluc3RhbGwiCittc2dzdHIgIkI8aW5zdGFsbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxNzEKK21zZ2lkICJJbnN0YWxscyBzZWxlY3RlZCBwYWNrYWdlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjE3NworbXNnaWQgIiIKKyJUaGUgY29uZmlndXJlZCBhY2Nlc3MgbWV0aG9kIHdpbGwgZmV0Y2ggaW5zdGFsbGFibGUgb3IgdXBncmFkYWJsZSBwYWNrYWdlcyAiCisiZnJvbSB0aGUgcmVsZXZhbnQgcmVwb3NpdG9yaWVzIGFuZCBpbnN0YWxsIHRoZXNlIHVzaW5nIEI8ZHBrZz4uICBEZXBlbmRpbmcgIgorIm9uIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgYWNjZXNzIG1ldGhvZCwgYWxsIHBhY2thZ2VzIGNhbiBiZSBwcmVmZXRjaGVkICIKKyJiZWZvcmUgaW5zdGFsbGF0aW9uLCBvciBmZXRjaGVkIHdoZW4gbmVlZGVkLiAgU29tZSBhY2Nlc3MgbWV0aG9kcyBtYXkgYWxzbyAiCisicmVtb3ZlIHBhY2thZ2VzIHRoYXQgd2VyZSBtYXJrZWQgZm9yIHJlbW92YWwuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxODUKK21zZ2lkICIiCisiSWYgYW4gZXJyb3Igb2NjdXJyZWQgZHVyaW5nIGluc3RhbGwsIGl0IGlzIHVzdWFsbHkgYWR2aXNhYmxlIHRvIHJ1biBpbnN0YWxsICIKKyJhZ2Fpbi4gSW4gbW9zdCBjYXNlcywgdGhlIHByb2JsZW1zIHdpbGwgZGlzYXBwZWFyIG9yIGJlIHNvbHZlZC4gIElmIHByb2JsZW1zICIKKyJwZXJzaXN0IG9yIHRoZSBpbnN0YWxsYXRpb24gcGVyZm9ybWVkIHdhcyBpbmNvcnJlY3QsIHBsZWFzZSBpbnZlc3RpZ2F0ZSBpbnRvICIKKyJ0aGUgY2F1c2VzIGFuZCBjaXJjdW1zdGFuY2VzLCBhbmQgZmlsZSBhIGJ1ZyBpbiB0aGUgRGViaWFuIGJ1ZyB0cmFja2luZyAiCisic3lzdGVtLiBJbnN0cnVjdGlvbnMgb24gaG93IHRvIGRvIHRoaXMgY2FuIGJlIGZvdW5kIGF0IGh0dHA6Ly9idWdzLmRlYmlhbi4iCisib3JnLyBvciBieSByZWFkaW5nIHRoZSBkb2N1bWVudGF0aW9uIGZvciBCPGJ1Zz4oMSkgb3IgQjxyZXBvcnRidWc+KDEpLCBpZiAiCisidGhlc2UgYXJlIGluc3RhbGxlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjE5MgorbXNnaWQgIiIKKyJEZXRhaWxzIG9mIHRoZSBpbnN0YWxsIGFjdGlvbiBkZXBlbmQgb24gdGhlIGFjY2VzcyBtZXRob2QncyBpbXBsZW1lbnRhdGlvbi4gICIKKyJUaGUgdXNlcidzIGF0dGVudGlvbiBhbmQgaW5wdXQgbWF5IGJlIHJlcXVpcmVkIGR1cmluZyBpbnN0YWxsYXRpb24sICIKKyJjb25maWd1cmF0aW9uIG9yIHJlbW92YWwgb2YgcGFja2FnZXMuIFRoaXMgZGVwZW5kcyBvbiB0aGUgbWFpbnRhaW5lciBzY3JpcHRzICIKKyJpbiB0aGUgcGFja2FnZS4gU29tZSBwYWNrYWdlcyBtYWtlIHVzZSBvZiB0aGUgQjxkZWJjb25mPigxKSAgbGlicmFyeSwgIgorImFsbG93aW5nIGZvciBtb3JlIGZsZXhpYmxlIG9yIGV2ZW4gYXV0b21hdGVkIGluc3RhbGxhdGlvbiBzZXR1cHMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkc2VsZWN0LjE6MTkzCisjLCBuby13cmFwCittc2dpZCAiY29uZmlnIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxOTUKK21zZ2lkICJDb25maWd1cmVzIGFueSBwcmV2aW91c2x5IGluc3RhbGxlZCwgYnV0IG5vdCBmdWxseSBjb25maWd1cmVkIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHNlbGVjdC4xOjE5NgorIywgbm8td3JhcAorbXNnaWQgInJlbW92ZSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTk4Cittc2dpZCAiUmVtb3ZlcyBvciBwdXJnZXMgaW5zdGFsbGVkIHBhY2thZ2VzLCB0aGF0IGFyZSBtYXJrZWQgZm9yIHJlbW92YWwuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkc2VsZWN0LjE6MTk5CisjLCBuby13cmFwCittc2dpZCAicXVpdCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MjAxCittc2dpZCAiUXVpdCBCPGRzZWxlY3Q+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToyMDMKK21zZ2lkICJFeGl0cyB0aGUgcHJvZ3JhbSB3aXRoIHplcm8gKHN1Y2Nlc3NmdWwpIGVycm9yY29kZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IGRzZWxlY3QuMToyMDUKKyMsIG5vLXdyYXAKK21zZ2lkICJQYWNrYWdlIHNlbGVjdGlvbnMgbWFuYWdlbWVudCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHNlbGVjdC4xOjIwNworIywgbm8td3JhcAorbXNnaWQgIkludHJvZHVjdGlvbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MjIzCittc2dpZCAiIgorIkI8ZHNlbGVjdD4gZGlyZWN0bHkgZXhwb3NlcyB0aGUgYWRtaW5pc3RyYXRvciB0byBzb21lIG9mIHRoZSBjb21wbGV4aXRpZXMgIgorImludm9sdmVkIHdpdGggbWFuYWdpbmcgbGFyZ2Ugc2V0cyBvZiBwYWNrYWdlcyB3aXRoIG1hbnkgaW50ZXJkZXBlbmRlbmNpZXMuICIKKyJGb3IgYSB1c2VyIHdobyBpcyB1bmZhbWlsaWFyIHdpdGggdGhlIGNvbmNlcHRzIGFuZCB0aGUgd2F5cyBvZiB0aGUgZGViaWFuICIKKyJwYWNrYWdlIG1hbmFnZW1lbnQgc3lzdGVtLCBpdCBjYW4gYmUgcXVpdGUgb3ZlcndoZWxtaW5nLiBBbHRob3VnaCBCPGRzZWxlY3Q+ICIKKyJpcyBhaW1lZCBhdCBlYXNpbmcgcGFja2FnZSBtYW5hZ2VtZW50IGFuZCBhZG1pbmlzdHJhdGlvbiwgaXQgaXMgb25seSAiCisiaW5zdHJ1bWVudGFsIGluIGRvaW5nIHNvIGFuZCBjYW4gbm90IGJlIGFzc3VtZWQgdG8gYmUgYSBzdWZmaWNpZW50ICIKKyJzdWJzdGl0dXRlIGZvciBhZG1pbmlzdHJhdG9yIHNraWxsIGFuZCB1bmRlcnN0YW5kaW5nLiBUaGUgdXNlciBpcyByZXF1aXJlZCAiCisidG8gYmUgZmFtaWxpYXIgd2l0aCB0aGUgY29uY2VwdHMgdW5kZXJseWluZyB0aGUgRGViaWFuIHBhY2thZ2luZyBzeXN0ZW0uICBJbiAiCisiY2FzZSBvZiBkb3VidCwgY29uc3VsdCB0aGUgQjxkcGtnPigxKSBtYW5wYWdlIGFuZCB0aGUgRGViaWFuIFBvbGljeSBtYW51YWwsICIKKyJjb250YWluZWQgaW4gdGhlIEI8ZGViaWFuLXBvbGljeT4gcGFja2FnZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjIyOQorbXNnaWQgIiIKKyJVbmxlc3MgQjxkc2VsZWN0PiBpcyBydW4gaW4gZXhwZXJ0IG9yIGltbWVkaWF0ZSBtb2RlLCBhIGhlbHAgc2NyZWVuIGlzIGZpcnN0ICIKKyJkaXNwbGF5ZWQgd2hlbiBjaG9vc2luZyB0aGlzIGFjdGlvbiBmcm9tIHRoZSBtZW51LiBUaGUgdXNlciBpcyBJPHN0cm9uZ2x5PiAiCisiYWR2aXNlZCB0byBzdHVkeSBhbGwgb2YgdGhlIGluZm9ybWF0aW9uIHByZXNlbnRlZCBpbiB0aGUgb25saW5lIGhlbHAgIgorInNjcmVlbnMsIHdoZW4gb25lIHBvcHMgdXAuICBUaGUgb25saW5lIGhlbHAgc2NyZWVucyBjYW4gYXQgYW55IHRpbWUgYmUgIgorImludm9rZWQgd2l0aCB0aGUgQjwnPyc+IGtleS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRzZWxlY3QuMToyMzAKKyMsIG5vLXdyYXAKK21zZ2lkICJTY3JlZW4gbGF5b3V0IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToyMzgKK21zZ2lkICIiCisiVGhlIHNlbGVjdCBzY3JlZW4gaXMgYnkgZGVmYXVsdCBzcGxpdCBpbiBhIHRvcCBhbmQgYSBib3R0b20gaGFsZi4gIFRoZSB0b3AgIgorImhhbGYgc2hvd3MgYSBsaXN0IG9mIHBhY2thZ2VzLiBBIGN1cnNvciBiYXIgY2FuIHNlbGVjdCBhbiBpbmRpdmlkdWFsICIKKyJwYWNrYWdlLCBvciBhIGdyb3VwIG9mIHBhY2thZ2VzLCBpZiBhcHBsaWNhYmxlLCBieSBzZWxlY3RpbmcgdGhlIGdyb3VwICIKKyJoZWFkZXIuIFRoZSBib3R0b20gaGFsZiBvZiB0aGUgc2NyZWVuIHNob3dzIHNvbWUgZGV0YWlscyBhYm91dCB0aGUgcGFja2FnZSAiCisiY3VycmVudGx5IHNlbGVjdGVkIGluIHRoZSB0b3AgaGFsZiBvZiB0aGUgc2NyZWVuLiAgVGhlIHR5cGUgb2YgZGV0YWlsIHRoYXQgIgorImlzIGRpc3BsYXllZCBjYW4gYmUgdmFyaWVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MjQxCittc2dpZCAiIgorIlByZXNzaW5nIHRoZSBCPCdJJz4ga2V5IHRvZ2dsZXMgYSBmdWxsLXNjcmVlbiBkaXNwbGF5IG9mIHRoZSBwYWNrYWdlcyBsaXN0LCAiCisiYW4gZW5sYXJnZWQgdmlldyBvZiB0aGUgcGFja2FnZSBkZXRhaWxzLCBvciB0aGUgZXF1YWxseSBzcGxpdCBzY3JlZW4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkc2VsZWN0LjE6MjQyCisjLCBuby13cmFwCittc2dpZCAiUGFja2FnZSBkZXRhaWxzIHZpZXciCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjI1MQorIywgbm8td3JhcAorbXNnaWQgIiIKKyJUaGUgcGFja2FnZSBkZXRhaWxzIHZpZXcgYnkgZGVmYXVsdCBzaG93cyB0aGUgZXh0ZW5kZWQgcGFja2FnZSBkZXNjcmlwdGlvblxuIgorImZvciB0aGUgcGFja2FnZSB0aGF0IGlzIGN1cnJlbnRseSBzZWxlY3RlZCBpbiB0aGUgcGFja2FnZXMgc3RhdHVzIGxpc3QuXG4iCisiVGhlIHR5cGUgb2YgZGV0YWlsIGNhbiBiZSB0b2dnbGVkIGJ5IHByZXNzaW5nIHRoZSBCPCdpJz4ga2V5LiBUaGlzXG4iCisiYWx0ZXJuYXRlcyBiZXR3ZWVuOlxuIgorIiAtIHRoZSBleHRlbmRlZCBkZXNjcmlwdGlvblxuIgorIiAtIHRoZSBjb250cm9sIGluZm9ybWF0aW9uIGZvciB0aGUgaW5zdGFsbGVkIHZlcnNpb25cbiIKKyIgLSB0aGUgY29udHJvbCBpbmZvcm1hdGlvbiBmb3IgdGhlIGF2YWlsYWJsZSB2ZXJzaW9uXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjI1NQorbXNnaWQgIiIKKyJJbiBhIGRlcGVuZGVuY3kgcmVzb2x1dGlvbiBzY3JlZW4sIHRoZXJlIGlzIGFsc28gdGhlIHBvc3NpYmlsaXR5IG9mIHZpZXdpbmcgIgorInRoZSBzcGVjaWZpYyB1bnJlc29sdmVkIGRlcGVuZHMgb3IgY29uZmxpY3RzIHJlbGF0ZWQgdG8gdGhlIHBhY2thZ2UgYW5kICIKKyJjYXVzaW5nIGl0IHRvIGJlIGxpc3RlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRzZWxlY3QuMToyNTYKKyMsIG5vLXdyYXAKK21zZ2lkICJQYWNrYWdlcyBzdGF0dXMgbGlzdCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MjYxCittc2dpZCAiIgorIlRoZSBtYWluIHNlbGVjdCBzY3JlZW4gZGlzcGxheXMgYSBsaXN0IG9mIGFsbCBwYWNrYWdlcyBrbm93biB0byB0aGUgZGViaWFuICIKKyJwYWNrYWdlIG1hbmFnZW1lbnQgc3lzdGVtLiBUaGlzIGluY2x1ZGVzIHBhY2thZ2VzIGluc3RhbGxlZCBvbiB0aGUgc3lzdGVtICIKKyJhbmQgcGFja2FnZXMga25vd24gZnJvbSB0aGUgYXZhaWxhYmxlIHBhY2thZ2VzIGRhdGFiYXNlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MjY5Cittc2dpZCAiIgorIkZvciBldmVyeSBwYWNrYWdlLCB0aGUgbGlzdCBzaG93cyB0aGUgcGFja2FnZSdzIHN0YXR1cywgcHJpb3JpdHksIHNlY3Rpb24sICIKKyJpbnN0YWxsZWQgYW5kIGF2YWlsYWJsZSB2ZXJzaW9ucywgdGhlIHBhY2thZ2UgbmFtZSBhbmQgaXRzIHNob3J0ICIKKyJkZXNjcmlwdGlvbiwgYWxsIGluIG9uZSBsaW5lLiBCeSBwcmVzc2luZyB0aGUgQjwnVic+IGtleSwgdGhlIGRpc3BsYXkgb2YgdGhlICIKKyJpbnN0YWxsZWQgYW5kIGF2YWlsYWJsZSB2ZXJzaW9uIGNhbiBiZSB0b2dnbGVkIGJldHdlZW4gb24gYW4gb2ZmLiBCeSAiCisicHJlc3NpbmcgdGhlIEI8J3YnPiBrZXksIHRoZSBwYWNrYWdlIHN0YXR1cyBkaXNwbGF5IGlzIHRvZ2dsZWQgYmV0d2VlbiAiCisidmVyYm9zZSBhbmQgc2hvcnRoYW5kLiAgU2hvcnRoYW5kIGRpc3BsYXkgaXMgdGhlIGRlZmF1bHQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToyNzUKK21zZ2lkICIiCisiVGhlIHNob3J0aGFuZCBzdGF0dXMgaW5kaWNhdGlvbiBjb25zaXN0cyBvZiBmb3VyIHBhcnRzOiBhbiBlcnJvciBmbGFnLCB3aGljaCAiCisic2hvdWxkIG5vcm1hbGx5IGJlIGNsZWFyLCB0aGUgY3VycmVudCBzdGF0dXMsIHRoZSBsYXN0IHNlbGVjdGlvbiBzdGF0ZSBhbmQgIgorInRoZSBjdXJyZW50IHNlbGVjdGlvbiBzdGF0ZS4gIFRoZSBmaXJzdCB0d28gcmVsYXRlIHRvIHRoZSBhY3R1YWwgc3RhdGUgb2YgIgorInRoZSBwYWNrYWdlLCB0aGUgc2Vjb25kIHBhaXIgYXJlIGFib3V0IHRoZSBzZWxlY3Rpb25zIHNldCBieSB0aGUgdXNlci4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjI5MworIywgbm8td3JhcAorbXNnaWQgIiIKKyJUaGVzZSBhcmUgdGhlIG1lYW5pbmdzIG9mIHRoZSBzaG9ydGhhbmQgcGFja2FnZSBzdGF0dXMgaW5kaWNhdG9yIGNvZGVzOlxuIgorIiBFcnJvciBmbGFnOlxuIgorIiAgSTxlbXB0eT4gICBubyBlcnJvclxuIgorIiAgQjxSPiAgICAgICBzZXJpb3VzIGVycm9yLCBuZWVkcyByZWluc3RhbGxhdGlvbjtcbiIKKyIgSW5zdGFsbGVkIHN0YXRlOlxuIgorIiAgSTxlbXB0eT4gICBub3QgaW5zdGFsbGVkO1xuIgorIiAgQjwqPiAgICAgICBmdWxseSBpbnN0YWxsZWQgYW5kIGNvbmZpZ3VyZWQ7XG4iCisiICBCPC0+ICAgICAgIG5vdCBpbnN0YWxsZWQgYnV0IHNvbWUgY29uZmlnIGZpbGVzIG1heSByZW1haW47XG4iCisiICBCPFU+ICAgICAgIHVucGFja2VkIGJ1dCBub3QgeWV0IGNvbmZpZ3VyZWQ7XG4iCisiICBCPEM+ICAgICAgIGhhbGYtY29uZmlndXJlZCAoYW4gZXJyb3IgaGFwcGVuZWQpO1xuIgorIiAgQjxJPiAgICAgICBoYWxmLWluc3RhbGxlZCAoYW4gZXJyb3IgaGFwcGVuZWQpLlxuIgorIiBDdXJyZW50IGFuZCByZXF1ZXN0ZWQgc2VsZWN0aW9uczpcbiIKKyIgIEI8Kj4gICAgICAgbWFya2VkIGZvciBpbnN0YWxsYXRpb24gb3IgdXBncmFkZTtcbiIKKyIgIEI8LT4gICAgICAgbWFya2VkIGZvciByZW1vdmFsLCBjb25maWd1cmF0aW9uIGZpbGVzIHJlbWFpbjtcbiIKKyIgIEI8PT4gICAgICAgb24gaG9sZDogcGFja2FnZSB3aWxsIG5vdCBiZSBwcm9jZXNzZWQgYXQgYWxsO1xuIgorIiAgQjxfPiAgICAgICBtYXJrZWQgZm9yIHB1cmdlLCBhbHNvIHJlbW92ZSBjb25maWd1cmF0aW9uO1xuIgorIiAgQjxuPiAgICAgICBwYWNrYWdlIGlzIG5ldyBhbmQgaGFzIHlldCB0byBiZSBtYXJrZWQuXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRzZWxlY3QuMToyOTQKKyMsIG5vLXdyYXAKK21zZ2lkICJDdXJzb3IgYW5kIHNjcmVlbiBtb3ZlbWVudCIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6Mjk5Cittc2dpZCAiIgorIlRoZSBwYWNrYWdlIHNlbGVjdGlvbiBsaXN0IGFuZCB0aGUgZGVwZW5kZW5jeSBjb25mbGljdCByZXNvbHV0aW9uIHNjcmVlbnMgIgorImNhbiBiZSBuYXZpZ2F0ZWQgdXNpbmcgbW90aW9uIGNvbW1hbmRzIG1hcHBlZCB0byB0aGUgZm9sbG93aW5nIGtleXM6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTozMTYKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiICBCPHAsIFVwLCBrPiAgICAgICAgICAgbW92ZSBjdXJzb3IgYmFyIHVwXG4iCisiICBCPG4sIERvd24sIGo+ICAgICAgICAgbW92ZSBjdXJzb3IgYmFyIGRvd25cbiIKKyIgIEI8UCwgUGd1cCwgQmFja3NwYWNlPiBzY3JvbGwgbGlzdCAxIHBhZ2UgdXBcbiIKKyIgIEI8TiwgUGdkbiwgU3BhY2U+ICAgICBzY3JvbGwgbGlzdCAxIHBhZ2UgZG93blxuIgorIiAgQjxecD4gICAgICAgICAgICAgICAgIHNjcm9sbCBsaXN0IDEgbGluZSB1cFxuIgorIiAgQjxebj4gICAgICAgICAgICAgICAgIHNjcm9sbCBsaXN0IDEgbGluZSBkb3duXG4iCisiICBCPHQsIEhvbWU+ICAgICAgICAgICAganVtcCB0byB0b3Agb2YgbGlzdFxuIgorIiAgQjxlLCBFbmQ+ICAgICAgICAgICAgIGp1bXAgdG8gZW5kIG9mIGxpc3RcbiIKKyIgIEI8dT4gICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyAxIHBhZ2UgdXBcbiIKKyIgIEI8ZD4gICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyAxIHBhZ2UgZG93blxuIgorIiAgQjxedT4gICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIDEgbGluZSB1cFxuIgorIiAgQjxeZD4gICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIDEgbGluZSBkb3duXG4iCisiICBCPEIsIExlZnQtYXJyb3c+ICAgICAgcGFuIGRpc3BsYXkgMS8zIHNjcmVlbiBsZWZ0XG4iCisiICBCPEYsIFJpZ2h0LWFycm93PiAgICAgcGFuIGRpc3BsYXkgMS8zIHNjcmVlbiByaWdodFxuIgorIiAgQjxeYj4gICAgICAgICAgICAgICAgIHBhbiBkaXNwbGF5IDEgY2hhcmFjdGVyIGxlZnRcbiIKKyIgIEI8XmY+ICAgICAgICAgICAgICAgICBwYW4gZGlzcGxheSAxIGNoYXJhY3RlciByaWdodFxuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkc2VsZWN0LjE6MzE3CisjLCBuby13cmFwCittc2dpZCAiU2VhcmNoaW5nIGFuZCBzb3J0aW5nIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTozMzEKK21zZ2lkICIiCisiVGhlIGxpc3Qgb2YgcGFja2FnZXMgY2FuIGJlIHNlYXJjaGVkIGJ5IHBhY2thZ2UgbmFtZS4gVGhpcyBpcyBkb25lIGJ5ICIKKyJwcmVzc2luZyBCPCcvJz4sIGFuZCB0eXBpbmcgYSBzaW1wbGUgc2VhcmNoIHN0cmluZy4gVGhlIHN0cmluZyBpcyAiCisiaW50ZXJwcmV0ZWQgYXMgYSBCPHJlZ2V4Pig3KSAgcmVndWxhciBleHByZXNzaW9uLiAgSWYgeW91IGFkZCBCPCcvZCc+IHRvIHRoZSAiCisic2VhcmNoIGV4cHJlc3Npb24sIGRzZWxlY3Qgd2lsbCBhbHNvIHNlYXJjaCBpbiBkZXNjcmlwdGlvbnMuIElmIHlvdSBhZGQgQjwnLyIKKyJpJz4gdGhlIHNlYXJjaCB3aWxsIGJlIGNhc2UgaW5zZW5zaXRpdmUuICBZb3UgbWF5IGNvbWJpbmUgdGhlc2UgdHdvIHN1ZmZpeGVzICIKKyJsaWtlIHRoaXM6IEI8Jy9pZCc+LiAgUmVwZWF0ZWQgc2VhcmNoaW5nIGlzIGFjY29tcGxpc2hlZCBieSByZXBlYXRlZGx5ICIKKyJwcmVzc2luZyB0aGUgQjwnbic+IG9yIEI8J1xcZSc+IGtleXMsIHVudGlsIHRoZSB3YW50ZWQgcGFja2FnZSBpcyBmb3VuZC4gIElmICIKKyJ0aGUgc2VhcmNoIHJlYWNoZXMgdGhlIGJvdHRvbSBvZiB0aGUgbGlzdCwgaXQgd3JhcHMgdG8gdGhlIHRvcCBhbmQgY29udGludWVzICIKKyJzZWFyY2hpbmcgZnJvbSB0aGVyZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjMzOAorIywgbm8td3JhcAorbXNnaWQgIiIKKyJUaGUgbGlzdCBzb3J0IG9yZGVyIGNhbiBiZSB2YXJpZWQgYnkgcHJlc3NpbmdcbiIKKyJ0aGUgQjwnbyc+IGFuZCBCPCdPJz4ga2V5cyByZXBlYXRlZGx5LlxuIgorIlRoZSBmb2xsb3dpbmcgbmluZSBzb3J0IG9yZGVyaW5ncyBjYW4gYmUgc2VsZWN0ZWQ6XG4iCisiIGFscGhhYmV0ICAgICAgICAgIGF2YWlsYWJsZSAgICAgICAgICAgc3RhdHVzXG4iCisiIHByaW9yaXR5K3NlY3Rpb24gIGF2YWlsYWJsZStwcmlvcml0eSAgc3RhdHVzK3ByaW9yaXR5XG4iCisiIHNlY3Rpb24rcHJpb3JpdHkgIGF2YWlsYWJsZStzZWN0aW9uICAgc3RhdHVzK3NlY3Rpb25cbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MzQxCittc2dpZCAiIgorIldoZXJlIG5vdCBsaXN0ZWQgYWJvdmUgZXhwbGljaXRseSwgYWxwaGFiZXRpYyBvcmRlciBpcyB1c2VkIGFzIHRoZSBmaW5hbCAiCisic3Vib3JkZXJpbmcgc29ydCBrZXkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNTCisjOiBkc2VsZWN0LjE6MzQyCisjLCBuby13cmFwCittc2dpZCAiQWx0ZXJpbmcgc2VsZWN0aW9ucyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MzUxCisjLCBuby13cmFwCittc2dpZCAiIgorIlRoZSByZXF1ZXN0ZWQgc2VsZWN0aW9uIHN0YXRlIG9mIGluZGl2aWR1YWwgcGFja2FnZXMgbWF5IGJlXG4iCisiYWx0ZXJlZCB3aXRoIHRoZSBmb2xsb3dpbmcgY29tbWFuZHM6XG4iCisiICBCPCssIEluc2VydD4gICAgaW5zdGFsbCBvciB1cGdyYWRlXG4iCisiICBCPD0sIEg+ICAgICAgICAgaG9sZCBpbiBwcmVzZW50IHN0YXRlIGFuZCB2ZXJzaW9uXG4iCisiICBCPDosIEc+ICAgICAgICAgdW5ob2xkOiB1cGdyYWRlIG9yIGxlYXZlIHVuaW5zdGFsbGVkXG4iCisiICBCPC0sIERlbGV0ZT4gICAgcmVtb3ZlLCBidXQgbGVhdmUgY29uZmlndXJhdGlvblxuIgorIiAgQjxfPiAgICAgICAgICAgIHJlbW92ZSAmIHB1cmdlIGNvbmZpZ3VyYXRpb25cbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MzU1Cittc2dpZCAiIgorIldoZW4gdGhlIGNoYW5nZSByZXF1ZXN0IHJlc3VsdHMgaW4gb25lIG9yIG1vcmUgdW5zYXRpc2ZpZWQgZGVwZW5kcyBvciAiCisiY29uZmxpY3RzLCBCPGRzZWxlY3Q+IHByb21wdHMgdGhlIHVzZXIgd2l0aCBhIGRlcGVuZGVuY3kgcmVzb2x1dGlvbiBzY3JlZW4uICIKKyJUaGlzIHdpbGwgYmUgZnVydGhlciBleHBsYWluZWQgYmVsb3cuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTozNjAKK21zZ2lkICIiCisiSXQgaXMgYWxzbyBwb3NzaWJsZSB0byBhcHBseSB0aGVzZSBjb21tYW5kcyB0byBncm91cHMgb2YgcGFja2FnZSBzZWxlY3Rpb25zLCAiCisiYnkgcG9pbnRpbmcgdGhlIGN1cnNvciBiYXIgb250byBhIGdyb3VwIGhlYWRlci4gVGhlIGV4YWN0IGdyb3VwaW5nIG9mICIKKyJwYWNrYWdlcyBpcyBkZXBlbmRlbnQgb24gdGhlIGN1cnJlbnQgbGlzdCBvcmRlcmluZyBzZXR0aW5ncy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjM2NgorbXNnaWQgIiIKKyJQcm9wZXIgY2FyZSBzaG91bGQgYmUgdGFrZW4gd2hlbiBhbHRlcmluZyBsYXJnZSBncm91cHMgb2Ygc2VsZWN0aW9ucywgIgorImJlY2F1c2UgdGhpcyBjYW4gaW5zdGFudGFuZW91c2x5IGNyZWF0ZSBsYXJnZSBudW1iZXJzIG9mIHVucmVzb2x2ZWQgZGVwZW5kcyAiCisib3IgY29uZmxpY3RzLCBhbGwgb2Ygd2hpY2ggd2lsbCBiZSBsaXN0ZWQgaW4gb25lIGRlcGVuZGVuY3kgcmVzb2x1dGlvbiAiCisic2NyZWVuLCBtYWtpbmcgdGhlbSB2ZXJ5IGhhcmQgdG8gaGFuZGxlLiBJbiBwcmFjdGljZSwgb25seSBob2xkIGFuZCB1bmhvbGQgIgorIm9wZXJhdGlvbnMgYXJlIHVzZWZ1bCB3aGVuIGFwcGxpZWQgdG8gZ3JvdXBzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBTUworIzogZHNlbGVjdC4xOjM2NworIywgbm8td3JhcAorbXNnaWQgIlJlc29sdmluZyBkZXBlbmRzIGFuZCBjb25mbGljdHMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjM3MgorbXNnaWQgIiIKKyJXaGVuIHRoZSBjaGFuZ2UgcmVxdWVzdCByZXN1bHRzIGluIG9uZSBvciBtb3JlIHVuc2F0aXNmaWVkIGRlcGVuZHMgb3IgIgorImNvbmZsaWN0cywgQjxkc2VsZWN0PiBwcm9tcHRzIHRoZSB1c2VyIHdpdGggYSBkZXBlbmRlbmN5IHJlc29sdXRpb24gc2NyZWVuLiAiCisiRmlyc3QgaG93ZXZlciwgYW4gaW5mb3JtYXRpdmUgaGVscCBzY3JlZW4gaXMgZGlzcGxheWVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6Mzc5Cittc2dpZCAiIgorIlRoZSB0b3AgaGFsZiBvZiB0aGlzIHNjcmVlbiBsaXN0cyBhbGwgdGhlIHBhY2thZ2VzIHRoYXQgd2lsbCBoYXZlIHVucmVzb2x2ZWQgIgorImRlcGVuZHMgb3IgY29uZmxpY3RzLCBhcyBhIHJlc3VsdCBvZiB0aGUgcmVxdWVzdGVkIGNoYW5nZSwgYW5kIGFsbCB0aGUgIgorInBhY2thZ2VzIHdob3NlIGluc3RhbGxhdGlvbiBjYW4gcmVzb2x2ZSBhbnkgb2YgdGhlc2UgZGVwZW5kcyBvciB3aG9zZSAiCisicmVtb3ZhbCBjYW4gcmVzb2x2ZSBhbnkgb2YgdGhlIGNvbmZsaWN0cy4gIFRoZSBib3R0b20gaGFsZiBkZWZhdWx0cyB0byBzaG93ICIKKyJ0aGUgZGVwZW5kcyBvciBjb25mbGljdHMgdGhhdCBjYXVzZSB0aGUgY3VycmVudGx5IHNlbGVjdGVkIHBhY2thZ2UgdG8gYmUgIgorImxpc3RlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjM4NQorbXNnaWQgIiIKKyJXaGVuIHRoZSBzdWJsaXN0IG9mIHBhY2thZ2VzIGlzIGRpc3BsYXllZCBpbml0aWFsbHksIEI8ZHNlbGVjdD4gbWF5IGhhdmUgIgorImFscmVhZHkgc2V0IHRoZSByZXF1ZXN0ZWQgc2VsZWN0aW9uIHN0YXR1cyBvZiBzb21lIG9mIHRoZSBsaXN0ZWQgcGFja2FnZXMsICIKKyJpbiBvcmRlciB0byByZXNvbHZlIHRoZSBkZXBlbmRzIG9yIGNvbmZsaWN0cyB0aGF0IGNhdXNlZCB0aGUgZGVwZW5kZW5jeSAiCisicmVzb2x1dGlvbiBzY3JlZW4gdG8gYmUgZGlzcGxheWVkLiBVc3VhbGx5LCBpdCBpcyBiZXN0IHRvIGZvbGxvdyB1cCB0aGUgIgorInN1Z2dlc3Rpb25zIG1hZGUgYnkgQjxkc2VsZWN0Pi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjM5MworbXNnaWQgIiIKKyJUaGUgbGlzdGVkIHBhY2thZ2VzJyBzZWxlY3Rpb24gc3RhdGUgbWF5IGJlIHJldmVydGVkIHRvIHRoZSBvcmlnaW5hbCAiCisic2V0dGluZ3MsIGFzIHRoZXkgd2VyZSBiZWZvcmUgdGhlIHVucmVzb2x2ZWQgZGVwZW5kcyBvciBjb25mbGljdHMgd2VyZSAiCisiY3JlYXRlZCwgYnkgcHJlc3NpbmcgdGhlIEI8J1InPiBrZXkuIEJ5IHByZXNzaW5nIHRoZSBCPCdEJz4ga2V5LCB0aGUgIgorImF1dG9tYXRpYyBzdWdnZXN0aW9ucyBhcmUgcmVzZXQsIGJ1dCB0aGUgY2hhbmdlIHRoYXQgY2F1c2VkIHRoZSBkZXBlbmRlbmN5ICIKKyJyZXNvbHV0aW9uIHNjcmVlbiB0byBiZSBwcm9tcHRlZCBpcyBrZXB0IGFzIHJlcXVlc3RlZC4gIEZpbmFsbHksIGJ5IHByZXNzaW5nICIKKyJCPCdVJz4sIHRoZSBzZWxlY3Rpb25zIGFyZSBhZ2FpbiBzZXQgdG8gdGhlIGF1dG9tYXRpYyBzdWdnZXN0aW9uIHZhbHVlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU1MKKyM6IGRzZWxlY3QuMTozOTQKKyMsIG5vLXdyYXAKK21zZ2lkICJFc3RhYmxpc2hpbmcgdGhlIHJlcXVlc3RlZCBzZWxlY3Rpb25zIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0MDEKK21zZ2lkICIiCisiQnkgcHJlc3NpbmcgQjxlbnRlcj4sIHRoZSBjdXJyZW50bHkgZGlzcGxheWVkIHNldCBvZiBzZWxlY3Rpb25zIGlzIGFjY2VwdGVkLiAiCisiSWYgQjxkc2VsZWN0PiBkZXRlY3RzIG5vIHVucmVzb2x2ZWQgZGVwZW5kcyBhcyBhIHJlc3VsdCBvZiB0aGUgcmVxdWVzdGVkICIKKyJzZWxlY3Rpb25zLCB0aGUgbmV3IHNlbGVjdGlvbnMgd2lsbCBiZSBzZXQuICBIb3dldmVyLCBpZiB0aGVyZSBhcmUgYW55ICIKKyJ1bnJlc29sdmVkIGRlcGVuZHMsIEI8ZHNlbGVjdD4gd2lsbCBhZ2FpbiBwcm9tcHQgdGhlIHVzZXIgd2l0aCBhIGRlcGVuZGVuY3kgIgorInJlc29sdXRpb24gc2NyZWVuLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NDA3Cittc2dpZCAiIgorIlRvIGFsdGVyIGEgc2V0IG9mIHNlbGVjdGlvbnMgdGhhdCBjcmVhdGVzIHVucmVzb2x2ZWQgZGVwZW5kcyBvciBjb25mbGljdHMgIgorImFuZCBmb3JjaW5nIEI8ZHNlbGVjdD4gdG8gYWNjZXB0IGl0LCBwcmVzcyB0aGUgQjwnUSc+IGtleS4gVGhpcyBzZXRzIHRoZSAiCisic2VsZWN0aW9ucyBhcyBzcGVjaWZpZWQgYnkgdGhlIHVzZXIsIHVuY29uZGl0aW9uYWxseS4gR2VuZXJhbGx5LCBkb24ndCBkbyAiCisidGhpcyB1bmxlc3MgeW91J3ZlIHJlYWQgdGhlIGZpbmUgcHJpbnQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0MTQKK21zZ2lkICIiCisiVGhlIG9wcG9zaXRlIGVmZmVjdCwgdG8gYmFjayBvdXQgYW55IHNlbGVjdGlvbnMgY2hhbmdlIHJlcXVlc3RzIGFuZCBnbyBiYWNrICIKKyJ0byB0aGUgcHJldmlvdXMgbGlzdCBvZiBzZWxlY3Rpb25zLCBpcyBhdHRhaW5lZCBieSBwcmVzc2luZyB0aGUgQjwnWCc+IG9yICIKKyJCPGVzY2FwZT4ga2V5cy4gQnkgcmVwZWF0ZWRseSBwcmVzc2luZyB0aGVzZSBrZXlzLCBhbnkgcG9zc2libHkgZGV0cmltZW50YWwgIgorImNoYW5nZXMgdG8gdGhlIHJlcXVlc3RlZCBwYWNrYWdlIHNlbGVjdGlvbnMgY2FuIGJlIGJhY2tlZCBvdXQgY29tcGxldGVseSB0byAiCisidGhlIGxhc3QgZXN0YWJsaXNoZWQgc2V0dGluZ3MuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0MjEKK21zZ2lkICIiCisiSWYgeW91IG1pc3Rha2VubHkgZXN0YWJsaXNoIHNvbWUgc2V0dGluZ3MgYW5kIHdpc2ggdG8gcmV2ZXJ0IGFsbCB0aGUgIgorInNlbGVjdGlvbnMgdG8gd2hhdCBpcyBjdXJyZW50bHkgaW5zdGFsbGVkIG9uIHRoZSBzeXN0ZW0sIHByZXNzIHRoZSBCPCdDJz4gIgorImtleS4gIFRoaXMgaXMgc29tZXdoYXQgc2ltaWxhciB0byB1c2luZyB0aGUgdW5ob2xkIGNvbW1hbmQgb24gYWxsIHBhY2thZ2VzLCAiCisiYnV0IHByb3ZpZGVzIGEgbW9yZSBvYnZpb3VzIHBhbmljIGJ1dHRvbiBpbiBjYXNlcyB3aGVyZSB0aGUgdXNlciBwcmVzc2VkICIKKyJCPGVudGVyPiBieSBhY2NpZGVudC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjQyOAorbXNnaWQgIiIKKyJJZiBzZXQsIEI8ZHNlbGVjdD4gd2lsbCB1c2UgaXQgYXMgdGhlIGRpcmVjdG9yeSBmcm9tIHdoaWNoIHRvIHJlYWQgdGhlIHVzZXIgIgorInNwZWNpZmljIGNvbmZpZ3VyYXRpb24gZmlsZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjQzNAorbXNnaWQgIiIKKyJUaGUgQjxkc2VsZWN0PiBwYWNrYWdlIHNlbGVjdGlvbiBpbnRlcmZhY2UgaXMgY29uZnVzaW5nIHRvIHNvbWUgbmV3IHVzZXJzLiAgIgorIlJlcG9ydGVkbHksIGl0IGV2ZW4gbWFrZXMgc2Vhc29uZWQga2VybmVsIGRldmVsb3BlcnMgY3J5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NDM2Cittc2dpZCAiVGhlIGRvY3VtZW50YXRpb24gaXMgbGFja2luZy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjQzOAorbXNnaWQgIlRoZXJlIGlzIG5vIGhlbHAgb3B0aW9uIGluIHRoZSBtYWluIG1lbnUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0NDAKKyMsIGZ1enp5Cittc2dpZCAiVGhlIHZpc2libGUgbGlzdCBvZiBhdmFpbGFibGUgcGFja2FnZXMgY2Fubm90IGJlIHJlZHVjZWQuIgorbXNnc3RyICLQodC/0LjRgdC+0Log0LTQvtGB0YLRg9C/0L3Ri9GFINC/0LDQutC10YLQvtCyLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjQ0NAorbXNnaWQgIiIKKyJUaGUgYnVpbHQgaW4gYWNjZXNzIG1ldGhvZHMgY2FuIG5vIGxvbmdlciBzdGFuZCB1cCB0byBjdXJyZW50IHF1YWxpdHkgIgorInN0YW5kYXJkcy4gVXNlIHRoZSBhY2Nlc3MgbWV0aG9kIHByb3ZpZGVkIGJ5IGFwdCwgaXQgaXMgbm90IG9ubHkgbm90IGJyb2tlbiwgIgorIml0IGlzIGFsc28gbXVjaCBtb3JlIGZsZXhpYmxlIHRoYW4gdGhlIGJ1aWx0IGluIGFjY2VzcyBtZXRob2RzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NDUwCittc2dpZCAiQjxkcGtnPigxKSwgQjxhcHQtZ2V0Pig4KSwgQjxzb3VyY2VzLmxpc3Q+KDUpLCBCPGRlYj4oNSkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0NTUKK21zZ2lkICIiCisiQjxkc2VsZWN0PiB3YXMgd3JpdHRlbiBieSBJYW4gSmFja3NvbiAoaWphY2tzb25AZ251LmFpLm1pdC5lZHUpLiBGdWxsIGxpc3QgIgorIm9mIGNvbnRyaWJ1dG9ycyBtYXkgYmUgZm91bmQgaW4gJ2RzZWxlY3QgLS12ZXJzaW9uJy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjQ1OAorbXNnaWQgIiIKKyJUaGlzIG1hbnVhbCBwYWdlIHdhcyB3cml0dGVuIGJ5IEp1aG8gVnVvcmkgRTxsdD5qYXZ1b3JpQGNjLmhlbHNpbmtpLmZpRTxndD4sICIKKyJKb3NpcCBSb2RpbiBhbmQgSm9vc3Qga29vaWouIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRICisjOiBkc2VsZWN0LmNmZy41OjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkc2VsZWN0LmNmZyIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUSAorIzogZHNlbGVjdC5jZmcuNToxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIjIwMTEtMDctMDMiCittc2dzdHIgIjIwMDYtMDItMjgiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuY2ZnLjU6NAorbXNnaWQgImRzZWxlY3QuY2ZnIC0gZHNlbGVjdCBjb25maWd1cmF0aW9uIGZpbGUiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC5jZmcuNToxMQorbXNnaWQgIiIKKyJUaGlzIGZpbGUgY29udGFpbnMgZGVmYXVsdCBvcHRpb25zIGZvciBkc2VsZWN0LiBFYWNoIGxpbmUgY29udGFpbnMgYSBzaW5nbGUgIgorIm9wdGlvbiB3aGljaCBpcyBleGFjdGx5IHRoZSBzYW1lIGFzIGEgbm9ybWFsIGNvbW1hbmQgbGluZSBvcHRpb24gZm9yIGRzZWxlY3QgIgorImV4Y2VwdCBmb3IgdGhlIGxlYWRpbmcgZGFzaGVzIHdoaWNoIGFyZSBub3QgdXNlZCBoZXJlLiBRdW90ZXMgc3Vycm91bmRpbmcgIgorIm9wdGlvbiB2YWx1ZXMgYXJlIHN0cmlwcGVkLiBDb21tZW50cyBhcmUgYWxsb3dlZCBieSBzdGFydGluZyBhIGxpbmUgd2l0aCBhICIKKyJoYXNoIHNpZ24gKFwiQjwjPlwiKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC5jZmcuNToxNAorIywgZnV6enkKK21zZ2lkICJJPC9ldGMvZHBrZy9kc2VsZWN0LmNmZy5kL1swLTlhLXpBLVpfLV0qPiIKK21zZ3N0ciAiSTwvZXRjL2Rwa2cvZHBrZy5jZmc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LmNmZy41OjE2CisjLCBmdXp6eQorbXNnaWQgIkk8L2V0Yy9kcGtnL2RzZWxlY3QuY2ZnPiIKK21zZ3N0ciAiSTwvZXRjL2Rwa2cvZHBrZy5jZmc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LmNmZy41OjE4Cittc2dpZCAiSTx+Ly5kc2VsZWN0LmNmZz4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC5jZmcuNToyMgorIywgZnV6enkKK21zZ2lkICIiCisiU2VlIEk8L3Vzci9zaGFyZS9kb2MvZHBrZy9USEFOS1M+IGZvciB0aGUgbGlzdCBvZiBwZW9wbGUgd2hvIGhhdmUgIgorImNvbnRyaWJ1dGVkIHRvIEI8ZHNlbGVjdD4uIgorbXNnc3RyICIiCisi0KHQvNC+0YLRgNC40YLQtSDRhNCw0LnQuyBJPC91c3Ivc2hhcmUvZG9jL2Rwa2cvVEhBTktTPiwg0LPQtNC1INC/0YDQuNCy0LXQtNGR0L0g0YHQv9C40YHQvtC6INGC0LXRhSwg0LrRgtC+ICIKKyLRg9GH0LDRgdGC0LLQvtCy0LDQuyDQsiDRgNCw0LfRgNCw0LHQvtGC0LrQtSBCPGRwa2c+LlxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LmNmZy41OjI0CisjLCBmdXp6eQorbXNnaWQgIkI8ZHNlbGVjdD4oMSkuIgorbXNnc3RyICJCPGRhdGU+KDEpLiIKKworIy4gdHlwZTogVEgKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MQorIywgbm8td3JhcAorbXNnaWQgInN0YXJ0LXN0b3AtZGFlbW9uIgorbXNnc3RyICJzdGFydC1zdG9wLWRhZW1vbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo0Cittc2dpZCAic3RhcnQtc3RvcC1kYWVtb24gLSBzdGFydCBhbmQgc3RvcCBzeXN0ZW0gZGFlbW9uIHByb2dyYW1zIgorbXNnc3RyICIiCisic3RhcnQtc3RvcC1kYWVtb24gLS0g0LfQsNC/0YPRgdC60LDQtdGCINC4INC+0YHRgtCw0L3QsNCy0LvQuNCy0LDQtdGCINGB0LjRgdGC0LXQvNC90YvQtSDQv9GA0L7Qs9GA0LDQvNC80Yst0LTQtdC80L7QvdGLIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjgKKyMsIGZ1enp5Cittc2dpZCAiQjxzdGFydC1zdG9wLWRhZW1vbj4gW0k8b3B0aW9uPi4uLl0gSTxjb21tYW5kPiIKK21zZ3N0ciAiQjxzdGFydC1zdG9wLWRhZW1vbj4gQjwtSz58QjwtLXN0b3A+IEk80L/QsNGA0LDQvNC10YLRgNGLPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxNAorIywgZnV6enkKK21zZ2lkICIiCisiQjxzdGFydC1zdG9wLWRhZW1vbj4gaXMgdXNlZCB0byBjb250cm9sIHRoZSBjcmVhdGlvbiBhbmQgdGVybWluYXRpb24gb2YgIgorInN5c3RlbS1sZXZlbCBwcm9jZXNzZXMuICBVc2luZyBvbmUgb2YgdGhlIG1hdGNoaW5nIG9wdGlvbnMsIEI8c3RhcnQtc3RvcC0iCisiZGFlbW9uPiBjYW4gYmUgY29uZmlndXJlZCB0byBmaW5kIGV4aXN0aW5nIGluc3RhbmNlcyBvZiBhIHJ1bm5pbmcgcHJvY2Vzcy4iCittc2dzdHIgIiIKKyJCPHN0YXJ0LXN0b3AtZGFlbW9uPiDQuNGB0L/QvtC70YzQt9GD0LXRgtGB0Y8g0LTQu9GPINGD0L/RgNCw0LLQu9C10L3QuNGPINGB0L7Qt9C00LDQvdC40LXQvCDQuCDQt9Cw0LLQtdGA0YjQtdC90LjQtdC8ICIKKyLRgdC40YHRgtC10LzQvdGL0YUg0L/RgNC+0YbQtdGB0YHQvtCyLiDQmNGB0L/QvtC70YzQt9GD0Y8g0L/QsNGA0LDQvNC10YLRgNGLIEI8LS1leGVjPiwgQjwtLXBpZGZpbGU+LCBCPC0tdXNlcj4gIgorItC4IEI8LS1uYW1lPiwgQjxzdGFydC1zdG9wLWRhZW1vbj4g0LzQvtC20LXRgiDQsdGL0YLRjCDQvdCw0YHRgtGA0L7QtdC9INC00LvRjyDQv9C+0LjRgdC60LAg0YPQttC1ICIKKyLQt9Cw0L/Rg9GJ0LXQvdC90YvRhSDRjdC60LfQtdC80L/Qu9GP0YDQvtCyINC/0YDQvtGG0LXRgdGB0LAuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjMzCisjLCBmdXp6eQorbXNnaWQgIiIKKyJOb3RlOiB1bmxlc3MgQjwtLXBpZGZpbGU+IGlzIHNwZWNpZmllZCwgQjxzdGFydC1zdG9wLWRhZW1vbj4gYmVoYXZlcyBzaW1pbGFyICIKKyJ0byBCPGtpbGxhbGw+KDEpLiAgQjxzdGFydC1zdG9wLWRhZW1vbj4gd2lsbCBzY2FuIHRoZSBwcm9jZXNzIHRhYmxlIGxvb2tpbmcgIgorImZvciBhbnkgcHJvY2Vzc2VzIHdoaWNoIG1hdGNoIHRoZSBwcm9jZXNzIG5hbWUsIHVpZCwgYW5kL29yIGdpZCAoaWYgIgorInNwZWNpZmllZCkuIEFueSBtYXRjaGluZyBwcm9jZXNzIHdpbGwgcHJldmVudCBCPC0tc3RhcnQ+IGZyb20gc3RhcnRpbmcgdGhlICIKKyJkYWVtb24uIEFsbCBtYXRjaGluZyBwcm9jZXNzZXMgd2lsbCBiZSBzZW50IHRoZSBURVJNIHNpZ25hbCAob3IgdGhlIG9uZSAiCisic3BlY2lmaWVkIHZpYSBCPC0tc2lnbmFsPiBvciBCPC0tcmV0cnk+KSBpZiBCPC0tc3RvcD4gaXMgc3BlY2lmaWVkLiBGb3IgIgorImRhZW1vbnMgd2hpY2ggaGF2ZSBsb25nLWxpdmVkIGNoaWxkcmVuIHdoaWNoIG5lZWQgdG8gbGl2ZSB0aHJvdWdoIGEgQjwtLSIKKyJzdG9wPiwgeW91IG11c3Qgc3BlY2lmeSBhIHBpZGZpbGUuIgorbXNnc3RyICIiCisi0JfQsNC80LXRgtC40LwsINGH0YLQviDQtdGB0LvQuCDQvdC1INGD0LrQsNC30LDQvSDQv9Cw0YDQsNC80LXRgtGAIEI8LS1waWRmaWxlPiwg0YLQviBCPHN0YXJ0LXN0b3AtZGFlbW9uPiAiCisi0LTQtdC50YHRgtCy0YPQtdGCINC/0L7QtNC+0LHQvdC+IEI8a2lsbGFsbCgxKS4+IEI8c3RhcnQtc3RvcC1kYWVtb24+INGB0LrQsNC90LjRgNGD0LXRgiDRgtCw0LHQu9C40YbRgyAiCisi0L/RgNC+0YbQtdGB0YHQvtCyINCyINC/0L7QuNGB0LrQsNGFINC70Y7QsdGL0YUg0L/RgNC+0YbQtdGB0YHQvtCyINGBINC90YPQttC90YvQvCDQuNC80LXQvdC10LwsIHVpZCwg0Lgv0LjQu9C4IGdpZCAo0LXRgdC70LggIgorItGD0LrQsNC30LDQvdGLKS4g0JvRjtCx0L7QuSDQv9C+0LTRhdC+0LTRj9GJ0LjQuSDQv9GA0L7RhtC10YHRgSDQv9GA0LXQtNC+0YLQstGA0LDRgtC40YIg0LfQsNC/0YPRgdC6INC00LXQvNC+0L3QsCwg0LXRgdC70Lgg0YPQutCw0LfQsNC9ICIKKyLQv9Cw0YDQsNC80LXRgtGAIEI8LS1zdGFydD4uINCS0YHQtdC8INC/0L7QtNGF0L7QtNGP0YnQuNC8INC/0YDQvtGG0LXRgdGB0LDQvCDQsdGD0LTQtdGCINC/0L7RgdC70LDQvSDRgdC40LPQvdCw0LsgS0lMTCwgIgorItC10YHQu9C4INGD0LrQsNC30LDQvSDQv9Cw0YDQsNC80LXRgtGAIEI8LS1zdG9wPi4g0JTQu9GPINC00LXQvNC+0L3QvtCyLCDRgyDQutC+0YLQvtGA0YvRhSDQtdGB0YLRjCDQtNC+0LvQs9C+INC20LjQstGD0YnQuNC1ICIKKyLQv9C+0YLQvtC80LrQuCwg0LrQvtGC0L7RgNGL0YUg0L3Rg9C20L3QviDQvtGB0YLQsNCy0LjRgtGMINGA0LDQsdC+0YLQsNGC0Ywg0L/RgNC4INC/0LDRgNCw0LzQtdGC0YDQtSBCPC0tc3RvcD7QvdGD0LbQvdC+ICIKKyLRg9C60LDQt9GL0LLQsNGC0YwgcGlkZmlsZS4iCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjM1CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LVM+LCBCPC0tc3RhcnQ+IFtCPC0tPl0gSTxhcmd1bWVudHM+IgorbXNnc3RyICJCPHN0YXJ0LXN0b3AtZGFlbW9uPiBCPC1TPnxCPC0tc3RhcnQ+IEk80L/QsNGA0LDQvNC10YLRgNGLPiBbQjwtLT5dIEk80LDRgNCz0YPQvNC10L3RgtGLPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo1MgorIywgZnV6enkKK21zZ2lkICIiCisiQ2hlY2sgZm9yIHRoZSBleGlzdGVuY2Ugb2YgYSBzcGVjaWZpZWQgcHJvY2Vzcy4gIElmIHN1Y2ggYSBwcm9jZXNzIGV4aXN0cywgIgorIkI8c3RhcnQtc3RvcC1kYWVtb24+IGRvZXMgbm90aGluZywgYW5kIGV4aXRzIHdpdGggZXJyb3Igc3RhdHVzIDEgKDAgaWYgQjwtLSIKKyJva25vZG8+IGlzIHNwZWNpZmllZCkuICBJZiBzdWNoIGEgcHJvY2VzcyBkb2VzIG5vdCBleGlzdCwgaXQgc3RhcnRzIGFuICIKKyJpbnN0YW5jZSwgdXNpbmcgZWl0aGVyIHRoZSBleGVjdXRhYmxlIHNwZWNpZmllZCBieSBCPC0tZXhlYz4gb3IsIGlmICIKKyJzcGVjaWZpZWQsIGJ5IEI8LS1zdGFydGFzPi4gIEFueSBhcmd1bWVudHMgZ2l2ZW4gYWZ0ZXIgQjwtLT4gb24gdGhlIGNvbW1hbmQgIgorImxpbmUgYXJlIHBhc3NlZCB1bm1vZGlmaWVkIHRvIHRoZSBwcm9ncmFtIGJlaW5nIHN0YXJ0ZWQuIgorbXNnc3RyICIiCisiQjxzdGFydC1zdG9wLWRhZW1vbj4g0YEg0L/QsNGA0LDQvNC10YLRgNC+0LwgQjwtLXN0YXJ0PiDQv9GA0L7QstC10YDRj9C10YIg0YHRg9GJ0LXRgdGC0LLQvtCy0LDQvdC40LUgIgorItGD0LrQsNC30LDQvdC90L7Qs9C+INC/0YDQvtGG0LXRgdGB0LAuINCV0YHQu9C4INGC0LDQutC+0Lkg0L/RgNC+0YbQtdGB0YEg0YHRg9GJ0LXRgdGC0LLRg9C10YIsIEI8c3RhcnQtc3RvcC1kYWVtb24+ICIKKyLQvdC40YfQtdCz0L4g0L3QtSDQtNC10LvQsNC10YIg0Lgg0L/RgNC10LrRgNCw0YnQsNC10YIg0YDQsNCx0L7RgtGDINGBINC60L7QtNC+0Lwg0LfQsNCy0LXRgNGI0LXQvdC40Y8gMSAo0LjQu9C4IDAsINC10YHQu9C4INC30LDQtNCw0L0gIgorItC/0LDRgNCw0LzQtdGC0YAgQjwtLW9rbm9kbz4pLiDQldGB0LvQuCDQttC1INGC0LDQutC+0Lkg0L/RgNC+0YbQtdGB0YEg0L3QtSDRgdGD0YnQtdGB0YLQstGD0LXRgiwg0YLQviDQvtC9ICIKKyLQt9Cw0L/Rg9GB0LrQsNC10YLRgdGPLCDQuNGB0L/QvtC70YzQt9GD0Y8g0LvQuNCx0L4g0LjRgdC/0L7Qu9C90Y/QtdC80YvQuSDRhNCw0LnQuywg0LfQsNC00LDQvdC90YvQuSDQv9Cw0YDQsNC80LXRgtGA0L7QvCBCPC0tZXhlYz4sICIKKyIo0LvQuNCx0L4g0L/QsNGA0LDQvNC10YLRgNC+0LwgQjwtLXN0YXJ0YXM+KS4g0JLRgdC1INCw0YDQs9GD0LzQtdC90YLRiywg0LfQsNC00LDQvdC90YvQtSDQsiDQutC+0LzQsNC90LTQvdC+0Lkg0YHRgtGA0L7QutC1ICIKKyLQv9C+0YHQu9C1IEI8LS0+LCDQsdGD0LTRg9GCINCx0LXQtyDQuNC30LzQtdC90LXQvdC40Lkg0L/QtdGA0LXQtNCw0L3RiyDQt9Cw0L/Rg9GB0LrQsNC10LzQvtC5INC/0YDQvtCz0YDQsNC80LzQtS4iCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjUyCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LUs+LCBCPC0tc3RvcD4iCittc2dzdHIgIkI8LW8+fEI8LS1va25vZG8+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjcwCisjLCBmdXp6eQorbXNnaWQgIiIKKyJDaGVja3MgZm9yIHRoZSBleGlzdGVuY2Ugb2YgYSBzcGVjaWZpZWQgcHJvY2Vzcy4gIElmIHN1Y2ggYSBwcm9jZXNzIGV4aXN0cywgIgorIkI8c3RhcnQtc3RvcC1kYWVtb24+IHNlbmRzIGl0IHRoZSBzaWduYWwgc3BlY2lmaWVkIGJ5IEI8LS1zaWduYWw+LCBhbmQgZXhpdHMgIgorIndpdGggZXJyb3Igc3RhdHVzIDAuICBJZiBzdWNoIGEgcHJvY2VzcyBkb2VzIG5vdCBleGlzdCwgQjxzdGFydC1zdG9wLWRhZW1vbj4gIgorImV4aXRzIHdpdGggZXJyb3Igc3RhdHVzIDEgKDAgaWYgQjwtLW9rbm9kbz4gaXMgc3BlY2lmaWVkKS4gSWYgQjwtLXJldHJ5PiBpcyAiCisic3BlY2lmaWVkLCB0aGVuIEI8c3RhcnQtc3RvcC1kYWVtb24+IHdpbGwgY2hlY2sgdGhhdCB0aGUgcHJvY2VzcyhlcykgaGF2ZSAiCisidGVybWluYXRlZC4iCittc2dzdHIgIiIKKyJCPHN0YXJ0LXN0b3AtZGFlbW9uPiDRgSDQv9Cw0YDQsNC80LXRgtGA0L7QvCBCPC0tc3RvcD4g0YLQsNC60LbQtSDQv9GA0L7QstC10YDRj9C10YIg0YHRg9GJ0LXRgdGC0LLQvtCy0LDQvdC40LUgIgorItC30LDQtNCw0L3QvdC+0LPQviDQv9GA0L7RhtC10YHRgdCwLiDQldGB0LvQuCDRgtCw0LrQvtC5INC/0YDQvtGG0LXRgdGBINGB0YPRidC10YHRgtCy0YPQtdGCLCDRgtC+IEI8c3RhcnQtc3RvcC1kYWVtb24+ICIKKyLQv9C+0YHRi9C70LDQtdGCINC10LzRgyDRgdC40LPQvdCw0LssINC30LDQtNCw0L3QvdGL0Lkg0L/QsNGA0LDQvNC10YLRgNC+0LwgQjwtLXNpZ25hbD4g0Lgg0L/RgNC10LrRgNCw0YnQsNC10YIg0YDQsNCx0L7RgtGDINGBICIKKyLQutC+0LTQvtC8INC30LDQstC10YDRiNC10L3QuNGPIDAuINCV0YHQu9C4INGC0LDQutC+0Lkg0L/RgNC+0YbQtdGB0YEg0L3QtSDRgdGD0YnQtdGB0YLQstGD0LXRgiwg0YLQviBCPHN0YXJ0LXN0b3AtIgorImRhZW1vbj4g0L/RgNC10LrRgNCw0YnQsNC10YIg0YDQsNCx0L7RgtGDINGBINC60L7QtNC+0Lwg0LfQsNCy0LXRgNGI0LXQvdC40Y8gMSAo0LjQu9C4IDAsINC10YHQu9C4INC30LDQtNCw0L0g0L/QsNGA0LDQvNC10YLRgCAiCisiQjwtLW9rbm9kbz4pLiDQldGB0LvQuCDRg9C60LDQt9Cw0L0g0L/QsNGA0LDQvNC10YLRgCBCPC0tcmV0cnk+LCDRgtC+IEI8c3RhcnQtc3RvcC1kYWVtb24+INCx0YPQtNC10YIgIgorItC/0YDQvtCy0LXRgNGP0YLRjCwg0YfRgtC+INC/0YDQvtGG0LXRgdGBKNGLKSDQt9Cw0LLQtdGA0YjQuNC70Lgg0YDQsNCx0L7RgtGDLiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6NzAKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtVD4sIEI8LS1zdGF0dXM+IgorbXNnc3RyICJCPC1vPnxCPC0tb2tub2RvPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo3NAorbXNnaWQgIiIKKyJDaGVjayBmb3IgdGhlIGV4aXN0ZW5jZSBvZiBhIHNwZWNpZmllZCBwcm9jZXNzLCBhbmQgcmV0dXJucyBhbiBleGl0IHN0YXR1cyAiCisiY29kZSwgYWNjb3JkaW5nIHRvIHRoZSBMU0IgSW5pdCBTY3JpcHQgQWN0aW9ucy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6NzQKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtSD4sIEI8LS1oZWxwPiIKK21zZ3N0ciAiQjwtSD58QjwtLWhlbHA+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44Ojc3CisjLCBmdXp6eQorbXNnaWQgIlNob3cgdXNhZ2UgaW5mb3JtYXRpb24gYW5kIGV4aXQuIgorbXNnc3RyICLQktGL0LTQsNGC0Ywg0L/QvtC00YHQutCw0LfQutGDINC4INC30LDQstC10YDRiNC40YLRjCDRgNCw0LHQvtGC0YMuIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo3NworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1WPiwgQjwtLXZlcnNpb24+IgorbXNnc3RyICJCPC1WPnxCPC0tdmVyc2lvbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6ODAKKyMsIGZ1enp5Cittc2dpZCAiU2hvdyB0aGUgcHJvZ3JhbSB2ZXJzaW9uIGFuZCBleGl0LiIKK21zZ3N0ciAi0JLRi9C00LDRgtGMINC40L3RhNC+0YDQvNCw0YbQuNGOINC+INCy0LXRgNGB0LjQuCDQuCDQt9Cw0LLQtdGA0YjQuNGC0Ywg0YDQsNCx0L7RgtGDLiIKKworIy4gdHlwZTogU0gKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6ODEKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiTUFUQ0hJTkcgT1BUSU9OUyIKK21zZ3N0ciAi0J/QkNCg0JDQnNCV0KLQoNCrIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo4MgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1wPiwgQjwtLXBpZGZpbGU+IEk8cGlkLWZpbGU+IgorbXNnc3RyICJCPC1wPnxCPC0tcGlkZmlsZT4gSTxwaWQt0YTQsNC50Ls+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44Ojg2Cittc2dpZCAiQ2hlY2sgd2hldGhlciBhIHByb2Nlc3MgaGFzIGNyZWF0ZWQgdGhlIGZpbGUgSTxwaWQtZmlsZT4uIgorbXNnc3RyICLQn9GA0L7QstC10YDQuNGC0Ywg0LrQsNC60L7QuSDQv9GA0L7RhtC10YHRgSDRgdC+0LfQtNCw0LsgSTxwaWQt0YTQsNC50Ls+LiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6ODYKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwteD4sIEI8LS1leGVjPiBJPGV4ZWN1dGFibGU+IgorbXNnc3RyICJCPC14PnxCPC0tZXhlYz4gSTzQuNGB0L/QvtC70L3Rj9C10LzRi9C5X9GE0LDQudC7PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo5MAorbXNnaWQgIiIKKyJDaGVjayBmb3IgcHJvY2Vzc2VzIHRoYXQgYXJlIGluc3RhbmNlcyBvZiB0aGlzIGV4ZWN1dGFibGUgKGFjY29yZGluZyB0byBCPC8iCisicHJvYy8+STxwaWQ+QjwvZXhlPikuIgorbXNnc3RyICIiCisi0J/RgNC+0LLQtdGA0LjRgtGMINC/0YDQvtGG0LXRgdGB0YssINC60L7RgtC+0YDRi9C1INGP0LLQu9GP0Y7RgtGB0Y8g0Y3QutC30LXQvNC/0LvRj9GA0LDQvNC4INC00LDQvdC90L7Qs9C+INC40YHQv9C+0LvQvdGP0LXQvNC+0LPQviDRhNCw0LnQu9CwICIKKyIo0YHQvtCz0LvQsNGB0L3QviBCPC9wcm9jLz5JPHBpZD5CPC9leGU+KS4iCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjkwCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LW4+LCBCPC0tbmFtZT4gSTxwcm9jZXNzLW5hbWU+IgorbXNnc3RyICJCPC1uPnxCPC0tbmFtZT4gSTzQuNC80Y9f0L/RgNC+0YbQtdGB0YHQsD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6OTYKK21zZ2lkICIiCisiQ2hlY2sgZm9yIHByb2Nlc3NlcyB3aXRoIHRoZSBuYW1lIEk8cHJvY2Vzcy1uYW1lPiAoYWNjb3JkaW5nIHRvIEI8L3Byb2MvIgorIj5JPHBpZD5CPC9zdGF0PikuIgorbXNnc3RyICIiCisi0J/RgNC+0LLQtdGA0LjRgtGMINC/0YDQvtGG0LXRgdGB0Ysg0YEg0LjQvNC10L3QtdC8IEk80LjQvNGPX9C/0YDQvtGG0LXRgdGB0LA+ICjRgdC+0LPQu9Cw0YHQvdC+IEI8L3Byb2MvPkk8cGlkPkI8LyIKKyJzdGF0PikuIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo5NgorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC11PiwgQjwtLXVzZXI+IEk8dXNlcm5hbWU+fEk8dWlkPiIKK21zZ3N0ciAiQjwtdT58QjwtLXVzZXI+IEk80LjQvNGPX9C/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjz58STx1aWQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjEwMgorbXNnaWQgIiIKKyJDaGVjayBmb3IgcHJvY2Vzc2VzIG93bmVkIGJ5IHRoZSB1c2VyIHNwZWNpZmllZCBieSBJPHVzZXJuYW1lPiBvciBJPHVpZD4uIgorbXNnc3RyICIiCisi0J/RgNC+0LLQtdGA0LjRgtGMINC/0YDQvtGG0LXRgdGB0YssINC/0YDQuNC90LDQtNC70LXQttCw0YnQuNC1INC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjiwg0YPQutCw0LfQsNC90L3QvtC80YMg0YEg0L/QvtC80L7RidGM0Y4gIgorIkk80LjQvNC10L3QuF/Qv9C+0LvRjNC30L7QstCw0YLQtdC70Y8+INC40LvQuCBJPHVpZD4uIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxMDQKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtZz4sIEI8LS1ncm91cD4gSTxncm91cD58STxnaWQ+IgorbXNnc3RyICJCPC1nPnxCPC0tZ3JvdXA+IEk80LPRgNGD0L/Qv9CwPnxJPGdpZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTA3Cittc2dpZCAiQ2hhbmdlIHRvIEk8Z3JvdXA+IG9yIEk8Z2lkPiB3aGVuIHN0YXJ0aW5nIHRoZSBwcm9jZXNzLiIKK21zZ3N0ciAi0JjQt9C80LXQvdC40YLRjCDQs9GA0YPQv9C/0YMg0L3QsCBJPNCz0YDRg9C/0L/Rgz4g0LjQu9C4IEk8Z2lkPiDQv9GA0Lgg0LfQsNC/0YPRgdC60LUg0L/RgNC+0YbQtdGB0YHQsC4iCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjEwNworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1zPiwgQjwtLXNpZ25hbD4gSTxzaWduYWw+IgorbXNnc3RyICJCPC1zPnxCPC0tc2lnbmFsPiBJPNGB0LjQs9C90LDQuz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTEyCisjLCBmdXp6eQorbXNnaWQgIiIKKyJXaXRoIEI8LS1zdG9wPiwgc3BlY2lmaWVzIHRoZSBzaWduYWwgdG8gc2VuZCB0byBwcm9jZXNzZXMgYmVpbmcgc3RvcHBlZCAiCisiKGRlZmF1bHQgVEVSTSkuIgorbXNnc3RyICIiCisi0J/RgNC4INC40YHQv9C+0LvRjNC30L7QstCw0L3QuNC4INCy0LzQtdGB0YLQtSDRgSDQv9Cw0YDQsNC80LXRgtGA0L7QvCBCPC0tc3RvcD4sINC30LDQtNCw0YLRjCDRgdC40LPQvdCw0LssINC60L7RgtC+0YDRi9C5ICIKKyLQsdGD0LTQtdGCINC/0L7RgdC70LDQvSDQv9GA0L7RhtC10YHRgdCw0Lwg0LTQu9GPINC40YUg0L7RgdGC0LDQvdC+0LLQsCAo0L/QviDRg9C80L7Qu9GH0LDQvdC40Y4gMTUpLiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTEyCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LVI+LCBCPC0tcmV0cnk+IEk8dGltZW91dD58STxzY2hlZHVsZT4iCittc2dzdHIgIkI8LVI+fEI8LS1yZXRyeT4gSTzQstGA0LXQvNGPX9C+0LbQuNC00LDQvdC40Y8+fEk80LfQsNGC0LXQvD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTIyCittc2dpZCAiIgorIldpdGggQjwtLXN0b3A+LCBzcGVjaWZpZXMgdGhhdCBCPHN0YXJ0LXN0b3AtZGFlbW9uPiBpcyB0byBjaGVjayB3aGV0aGVyIHRoZSAiCisicHJvY2VzcyhlcykgIGRvIGZpbmlzaC4gSXQgd2lsbCBjaGVjayByZXBlYXRlZGx5IHdoZXRoZXIgYW55IG1hdGNoaW5nICIKKyJwcm9jZXNzZXMgYXJlIHJ1bm5pbmcsIHVudGlsIG5vbmUgYXJlLiBJZiB0aGUgcHJvY2Vzc2VzIGRvIG5vdCBleGl0IGl0IHdpbGwgIgorInRoZW4gdGFrZSBmdXJ0aGVyIGFjdGlvbiBhcyBkZXRlcm1pbmVkIGJ5IHRoZSBzY2hlZHVsZS4iCittc2dzdHIgIiIKKyLQn9GA0Lgg0LjRgdC/0L7Qu9GM0LfQvtCy0LDQvdC40Lgg0LLQvNC10YHRgtC1INGBINC/0LDRgNCw0LzQtdGC0YDQvtC8IEI8LS1zdG9wPiDRg9C60LDQt9Cw0YLRjCwg0YfRgtC+IEI8c3RhcnQtc3RvcC0iCisiZGFlbW9uPiDQtNC+0LvQttC10L0g0YHQu9C10LTQuNGC0Ywg0LfQsCDQt9Cw0LLQtdGA0YjQtdC90LjQtdC8INC/0YDQvtGG0LXRgdGB0LAuINCf0LXRgNC40L7QtNC40YfQtdGB0LrQuCDQsdGD0LTQtdGCICIKKyLQv9GA0L7QstC10YDRj9GC0YzRgdGPLCDQstGL0L/QvtC70L3Rj9GO0YLRgdGPINC70Lgg0LXRidGRINGD0LrQsNC30LDQvdC90YvQtSDQv9GA0L7RhtC10YHRgdGLLCDQtNC+INGC0LXRhSDQv9C+0YAsINC/0L7QutCwINCy0YHQtSDQvtC90LggIgorItC90LUg0LfQsNCy0LXRgNGI0LDRgtGB0Y8uINCV0YHQu9C4INC/0YDQvtGG0LXRgdGB0Ysg0L3QtSDQt9Cw0LLQtdGA0YjQsNGO0YLRgdGPLCDRgtC+INCx0YPQtNC10YIg0L/RgNC10LTQv9GA0LjQvdGP0YLQviDQtNC10LnRgdGC0LLQuNC1LCAiCisi0LfQsNC00LDQvdC90L7QtSDQsiDQv9Cw0YDQsNC80LXRgtGA0LUgSTzQt9Cw0YLQtdC8Pi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTMzCisjLCBmdXp6eQorbXNnaWQgIiIKKyJJZiBJPHRpbWVvdXQ+IGlzIHNwZWNpZmllZCBpbnN0ZWFkIG9mIEk8c2NoZWR1bGU+LCB0aGVuIHRoZSBzY2hlZHVsZSAiCisiSTxzaWduYWw+QjwvPkk8dGltZW91dD5CPC9LSUxMLz5JPHRpbWVvdXQ+IGlzIHVzZWQsIHdoZXJlIEk8c2lnbmFsPiBpcyB0aGUgIgorInNpZ25hbCBzcGVjaWZpZWQgd2l0aCBCPC0tc2lnbmFsPi4iCittc2dzdHIgIiIKKyLQldGB0LvQuCDQstC80LXRgdGC0L4g0L/QsNGA0LDQvNC10YLRgNCwIEk80LfQsNGC0LXQvD4g0YPQutCw0LfQsNC9IEk80LLRgNC10LzRj1/QvtC20LjQtNCw0L3QuNGPPiwg0YLQviDQuNGB0L/QvtC70YzQt9GD0LXRgtGB0Y8gIgorItC/0L7RgdC70LXQtNC+0LLQsNGC0LXQu9GM0L3QvtGB0YLRjCDQtNC10LnRgdGC0LLQuNC5IEk80YHQuNCz0L3QsNC7PkI8Lz5JPNCy0YDQtdC80Y9f0L7QttC40LTQsNC90LjRjz5CPC9LSUxMLyIKKyI+STzQstGA0LXQvNGPX9C+0LbQuNC00LDQvdC40Y8+LCDQs9C00LUgSTzRgdC40LPQvdCw0Ls+IC0tINGN0YLQviDRgdC40LPQvdCw0LssINC30LDQtNCw0L3QvdGL0Lkg0L/QsNGA0LDQvNC10YLRgNC+0LwgQjwtLSIKKyJzaWduYWw+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxNDkKK21zZ2lkICIiCisiSTxzY2hlZHVsZT4gaXMgYSBsaXN0IG9mIGF0IGxlYXN0IHR3byBpdGVtcyBzZXBhcmF0ZWQgYnkgc2xhc2hlcyAoQjwvPik7ICIKKyJlYWNoIGl0ZW0gbWF5IGJlIEI8LT5JPHNpZ25hbC1udW1iZXI+IG9yIFtCPC0+XUk8c2lnbmFsLW5hbWU+LCB3aGljaCBtZWFucyAiCisidG8gc2VuZCB0aGF0IHNpZ25hbCwgb3IgSTx0aW1lb3V0Piwgd2hpY2ggbWVhbnMgdG8gd2FpdCB0aGF0IG1hbnkgc2Vjb25kcyAiCisiZm9yIHByb2Nlc3NlcyB0byBleGl0LCBvciBCPGZvcmV2ZXI+LCB3aGljaCBtZWFucyB0byByZXBlYXQgdGhlIHJlc3Qgb2YgdGhlICIKKyJzY2hlZHVsZSBmb3JldmVyIGlmIG5lY2Vzc2FyeS4iCittc2dzdHIgIiIKKyLQn9Cw0YDQsNC80LXRgtGAIEk80LfQsNGC0LXQvD4gLS0g0Y3RgtC+INC/0L7RgdC70LXQtNC+0LLQsNGC0LXQu9GM0L3QvtGB0YLRjCDQuNC3INC90LUg0LzQtdC90LXQtSDQtNCy0YPRhSDRjdC70LXQvNC10L3RgtC+0LIsICIKKyLRgNCw0LfQtNC10LvRkdC90L3Ri9GFINC60L7RgdC+0Lkg0YfQtdGA0YLQvtC5IChCPC8+KTsg0LrQsNC20LTRi9C5INGN0LvQtdC80LXQvdGCIC0tINGN0YLQviDQu9C40LHQviBCPC0+STzQvdC+0LzQtdGALSIKKyLRgdC40LPQvdCw0LvQsD4g0LjQu9C4IFtCPC0+XUk80L3QsNC30LLQsNC90LjQtS3RgdC40LPQvdCw0LvQsD4sINC40LvQuCBJPNCy0YDQtdC80Y9f0L7QttC40LTQsNC90LjRjz4sINC30LDQtNCw0Y7RidC10LUgIgorItC60L7Qu9C40YfQtdGB0YLQstC+INGB0LXQutGD0L3QtCwg0LIg0YLQtdGH0LXQvdC40LUg0LrQvtGC0L7RgNGL0YUg0YHQu9C10LTRg9C10YIg0LbQtNCw0YLRjCDQt9Cw0LLQtdGA0YjQtdC90LjRjyDQv9GA0L7RhtC10YHRgdCwLCDQuNC70LggIgorItC20LUg0YHQu9C+0LLQviBCPGZvcmV2ZXI+LCDQv9GA0LXQtNC/0LjRgdGL0LLQsNGO0YnQtdC1INC/0L7QstGC0L7RgNGP0YLRjCDQvtGB0YLQsNGC0L7QuiDQv9C+0YHQu9C10LTQvtCy0LDRgtC10LvRjNC90L7RgdGC0LggIgorItCy0LXRh9C90L4sINC10YHQu9C4INC90YPQttC90L4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjE1OQorbXNnaWQgIiIKKyJJZiB0aGUgZW5kIG9mIHRoZSBzY2hlZHVsZSBpcyByZWFjaGVkIGFuZCBCPGZvcmV2ZXI+IGlzIG5vdCBzcGVjaWZpZWQsIHRoZW4gIgorIkI8c3RhcnQtc3RvcC1kYWVtb24+IGV4aXRzIHdpdGggZXJyb3Igc3RhdHVzIDIuICBJZiBhIHNjaGVkdWxlIGlzIHNwZWNpZmllZCwgIgorInRoZW4gYW55IHNpZ25hbCBzcGVjaWZpZWQgd2l0aCBCPC0tc2lnbmFsPiBpcyBpZ25vcmVkLiIKK21zZ3N0ciAiIgorItCV0YHQu9C4INC00L7RgdGC0LjQs9C90YPRgiDQutC+0L3QtdGGINC/0L7RgdC70LXQtNC+0LLQsNGC0LXQu9GM0L3QvtGB0YLQuCDQtNC10LnRgdGC0LLQuNC5INC4INC90LUg0LHRi9C7INGD0LrQsNC30LDQvSBCPGZvcmV2ZXI+LCAiCisi0YLQviBCPHN0YXJ0LXN0b3AtZGFlbW9uPiDQv9GA0LXQutGA0LDRidCw0LXRgiDRgNCw0LHQvtGC0YMg0YEg0LrQvtC00L7QvCDQt9Cw0LLQtdGA0YjQtdC90LjRjyAyLiDQldGB0LvQuCDRg9C60LDQt9Cw0L0gIgorItC/0LDRgNCw0LzQtdGC0YAgSTzQt9Cw0YLQtdC8Piwg0YLQviDRgdC40LPQvdCw0LssINC30LDQtNCw0L3QvdGL0Lkg0YEg0L/QvtC80L7RidGM0Y4g0L/QsNGA0LDQvNC10YLRgNCwIEI8LS1zaWduYWw+LCAiCisi0LjQs9C90L7RgNC40YDRg9C10YLRgdGPLiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTU5CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LWE+LCBCPC0tc3RhcnRhcz4gSTxwYXRobmFtZT4iCittc2dzdHIgIkI8LWE+fEI8LS1zdGFydGFzPiBJPNC/0L7Qu9C90L7QtV/QuNC80Y8+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjE2NworbXNnaWQgIiIKKyJXaXRoIEI8LS1zdGFydD4sIHN0YXJ0IHRoZSBwcm9jZXNzIHNwZWNpZmllZCBieSBJPHBhdGhuYW1lPi4gIElmIG5vdCAiCisic3BlY2lmaWVkLCBkZWZhdWx0cyB0byB0aGUgYXJndW1lbnQgZ2l2ZW4gdG8gQjwtLWV4ZWM+LiIKK21zZ3N0ciAiIgorItCf0YDQuCDQuNGB0L/QvtC70YzQt9C+0LLQsNC90LjQuCDRgSDQv9Cw0YDQsNC80LXRgtGA0L7QvCBCPC0tc3RhcnQ+INC30LDQv9GD0YHQutCw0LXRgiDQv9GA0L7RhtC10YHRgSwg0YPQutCw0LfQsNC90L3Ri9C5INCyICIKKyLQv9Cw0YDQsNC80LXRgtGA0LUgSTzQv9C+0LvQvdC+0LVf0LjQvNGPPi4g0JXRgdC70Lgg0Y3RgtC+0YIg0L/QsNGA0LDQvNC10YLRgCDQvdC1INC30LDQtNCw0L0sINGC0L4g0LHQtdGA0ZHRgtGB0Y8g0LfQvdCw0YfQtdC90LjQtSAiCisi0L/QsNGA0LDQvNC10YLRgNCwIEI8LS1leGVjPi4iCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjE2NworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC10PiwgQjwtLXRlc3Q+IgorbXNnc3RyICJCPC10PnxCPC0tdGVzdD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTcxCittc2dpZCAiIgorIlByaW50IGFjdGlvbnMgdGhhdCB3b3VsZCBiZSB0YWtlbiBhbmQgc2V0IGFwcHJvcHJpYXRlIHJldHVybiB2YWx1ZSwgYnV0IHRha2UgIgorIm5vIGFjdGlvbi4iCittc2dzdHIgIiIKKyLQktGL0LLQtdGB0YLQuCDQtNC10LnRgdGC0LLQuNGPLCDQutC+0YLQvtGA0YvQtSDQtNC+0LvQttC90Ysg0LHRi9GC0Ywg0LLRi9C/0L7Qu9C90LXQvdGLINC4INGD0YHRgtCw0L3QvtCy0LjRgtGMINGB0L7QvtGC0LLQtdGC0YHRgtCy0YPRjtGJ0LjQuSAiCisi0LrQvtC0INC30LDQstC10YDRiNC10L3QuNGPLCDQvdC+INC90LUg0LLRi9C/0L7Qu9C90Y/RgtGMINGN0YLQuCDQtNC10LnRgdGC0LLQuNGPLiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTcxCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LW8+LCBCPC0tb2tub2RvPiIKK21zZ3N0ciAiQjwtbz58QjwtLW9rbm9kbz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTc0Cittc2dpZCAiUmV0dXJuIGV4aXQgc3RhdHVzIDAgaW5zdGVhZCBvZiAxIGlmIG5vIGFjdGlvbnMgYXJlICh3b3VsZCBiZSkgdGFrZW4uIgorbXNnc3RyICIiCisi0JLQvtC30LLRgNCw0YnQsNGC0Ywg0LrQvtC0IDAg0LLQvNC10YHRgtC+IDEsINC10YHQu9C4INC90LUg0LHRi9C70L4g0LLRi9C/0L7Qu9C90LXQvdC+ICjQuNC70Lgg0L3QtSDQtNC+0LvQttC90L4g0LHRi9C70L4g0LHRi9GC0YwgIgorItCy0YvQv9C+0LvQvdC10L3Qvikg0L3QuNC60LDQutC40YUg0LTQtdC50YHRgtCy0LjQuS4iCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjE3NAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1xPiwgQjwtLXF1aWV0PiIKK21zZ3N0ciAiQjwtcT58QjwtLXF1aWV0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxNzcKK21zZ2lkICJEbyBub3QgcHJpbnQgaW5mb3JtYXRpb25hbCBtZXNzYWdlczsgb25seSBkaXNwbGF5IGVycm9yIG1lc3NhZ2VzLiIKK21zZ3N0ciAi0J3QtSDQstGL0LTQsNCy0LDRgtGMINC40L3RhNC+0YDQvNCw0YbQuNC+0L3QvdGL0YUg0YHQvtC+0LHRidC10L3QuNC5OyDRgtC+0LvRjNC60L4g0YHQvtC+0LHRidC10L3QuNGPINC+0LEg0L7RiNC40LHQutCw0YUuIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxNzcKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtYz4sIEI8LS1jaHVpZD4gSTx1c2VybmFtZT58STx1aWQ+W0I8Oj5JPGdyb3VwPnxJPGdpZD5dIgorbXNnc3RyICJCPC1jPnxCPC0tY2h1aWQ+IEk80LjQvNGPLdC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjz58STx1aWQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjE5NQorIywgZnV6enkKK21zZ2lkICIiCisiQ2hhbmdlIHRvIHRoaXMgdXNlcm5hbWUvdWlkIGJlZm9yZSBzdGFydGluZyB0aGUgcHJvY2Vzcy4gWW91IGNhbiBhbHNvICIKKyJzcGVjaWZ5IGEgZ3JvdXAgYnkgYXBwZW5kaW5nIGEgQjw6PiwgdGhlbiB0aGUgZ3JvdXAgb3IgZ2lkIGluIHRoZSBzYW1lIHdheSAiCisiYXMgeW91IHdvdWxkIGZvciB0aGUgYGNob3duJyBjb21tYW5kIChJPHVzZXI+Qjw6Pkk8Z3JvdXA+KS4gIElmIGEgdXNlciBpcyAiCisic3BlY2lmaWVkIHdpdGhvdXQgYSBncm91cCwgdGhlIHByaW1hcnkgR0lEIGZvciB0aGF0IHVzZXIgaXMgdXNlZC4gIFdoZW4gIgorInVzaW5nIHRoaXMgb3B0aW9uIHlvdSBtdXN0IHJlYWxpemUgdGhhdCB0aGUgcHJpbWFyeSBhbmQgc3VwcGxlbWVudGFsIGdyb3VwcyAiCisiYXJlIHNldCBhcyB3ZWxsLCBldmVuIGlmIHRoZSBCPC0tZ3JvdXA+IG9wdGlvbiBpcyBub3Qgc3BlY2lmaWVkLiBUaGUgQjwtLSIKKyJncm91cD4gb3B0aW9uIGlzIG9ubHkgZm9yIGdyb3VwcyB0aGF0IHRoZSB1c2VyIGlzbid0IG5vcm1hbGx5IGEgbWVtYmVyIG9mICIKKyIobGlrZSBhZGRpbmcgcGVyIHByb2Nlc3MgZ3JvdXAgbWVtYmVyc2hpcCBmb3IgZ2VuZXJpYyB1c2VycyBsaWtlIEI8bm9ib2R5PikuIgorbXNnc3RyICIiCisi0KPRgdGC0LDQvdC+0LLQuNGC0Ywg0YPQutCw0LfQsNC90L3QvtC1INC40LzRjyDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y8g0LjQu9C4IHVpZCDQv9C10YDQtdC0INC30LDQv9GD0YHQutC+0Lwg0L/RgNC+0YbQtdGB0YHQsC4g0JLRiyAiCisi0LzQvtC20LXRgtC1INGC0LDQutC20LUg0LfQsNC00LDRgtGMINCz0YDRg9C/0L/Rgywg0LTQvtCx0LDQstC40LIg0LTQstC+0LXRgtC+0YfQuNC1IEI8Oj4g0LjQvNGPINCz0YDRg9C/0L/RiyDQuNC70LggZ2lkLCDQutCw0Log0LIgIgorItC60L7QvNCw0L3QtNC1IGBjaG93bicgKEk80L/QvtC70YzQt9C+0LLQsNGC0LXQu9GMPkI8Oj5JPNCz0YDRg9C/0L/QsD4pLiDQn9GA0Lgg0LjRgdC/0L7Qu9GM0LfQvtCy0LDQvdC40Lgg0Y3RgtC+0LPQviAiCisi0L/QsNGA0LDQvNC10YLRgNCwINCy0Ysg0LTQvtC70LbQvdGLINC/0L7QvdC40LzQsNGC0YwsINGH0YLQviDRgtCw0LrQttC1INCx0YPQtNGD0YIg0YPRgdGC0LDQvdC+0LLQu9C10L3RiyDQvtGB0L3QvtCy0L3QsNGPINC4ICIKKyLQtNC+0L/QvtC70L3QuNGC0LXQu9GM0L3QsNGPINCz0YDRg9C/0L/Riywg0LTQsNC20LUg0LXRgdC70Lgg0L3QtSDRg9C60LDQt9Cw0L0g0L/QsNGA0LDQvNC10YLRgCBCPC0tZ3JvdXA+LiDQn9Cw0YDQsNC80LXRgtGAIEI8LS0iCisiZ3JvdXA+INC40YHQv9C+0LvRjNC30YPQtdGC0YHRjyDRgtC+0LvRjNC60L4g0LTQu9GPINCz0YDRg9C/0L8sINCyINC60L7RgtC+0YDRi9GFINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjCDQvtCx0YvRh9C90L4g0L3QtSAiCisi0YHQvtGB0YLQvtC40YIgKNC90LDQv9GA0LjQvNC10YAsINCyINGB0LvRg9GH0LDQtSDRgSDRgdC40YHRgtC10LzQvdGL0Lwg0L/QvtC70YzQt9C+0LLQsNGC0LXQu9C10LwgQjxub2JvZHk+KS4iCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjE5NQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1yPiwgQjwtLWNocm9vdD4gSTxyb290PiIKK21zZ3N0ciAiQjwtcj58QjwtLWNocm9vdD4gSTxyb290PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyMDEKK21zZ2lkICIiCisiQ2hkaXIgYW5kIGNocm9vdCB0byBJPHJvb3Q+IGJlZm9yZSBzdGFydGluZyB0aGUgcHJvY2Vzcy4gUGxlYXNlIG5vdGUgdGhhdCAiCisidGhlIHBpZGZpbGUgaXMgYWxzbyB3cml0dGVuIGFmdGVyIHRoZSBjaHJvb3QuIgorbXNnc3RyICIiCisi0J/QtdGA0LXQtCDQt9Cw0L/Rg9GB0LrQvtC8INC/0YDQvtGG0LXRgdGB0LAg0L/QtdGA0LXQudGC0Lgg0LIg0LrQsNGC0LDQu9C+0LMgSTxyb290PiDQuCDRgdC00LXQu9Cw0YLRjCDQtdCz0L4g0LrQvtGA0L3QtdCy0YvQvC4gIgorItCX0LDQvNC10YLQuNC8LCDRh9GC0L4gcGlkLdGE0LDQudC7INCx0YPQtNC10YIg0YHQvtC30LTQsNC9INC/0L7RgdC70LUg0YPRgdGC0LDQvdC+0LLQutC4INC90L7QstC+0LPQviDQutC+0YDQvdC10LLQvtCz0L4g0LrQsNGC0LDQu9C+0LPQsC4iCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjIwMQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1kPiwgQjwtLWNoZGlyPiBJPHBhdGg+IgorbXNnc3RyICJCPC1kPnxCPC0tY2hkaXI+IEk80L/Rg9GC0Yw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjIwOQorbXNnaWQgIiIKKyJDaGRpciB0byBJPHBhdGg+IGJlZm9yZSBzdGFydGluZyB0aGUgcHJvY2Vzcy4gVGhpcyBpcyBkb25lIGFmdGVyIHRoZSBjaHJvb3QgIgorImlmIHRoZSBCPC1yPnxCPC0tY2hyb290PiBvcHRpb24gaXMgc2V0LiBXaGVuIG5vdCBzcGVjaWZpZWQsIHN0YXJ0LXN0b3AtIgorImRhZW1vbiB3aWxsIGNoZGlyIHRvIHRoZSByb290IGRpcmVjdG9yeSBiZWZvcmUgc3RhcnRpbmcgdGhlIHByb2Nlc3MuIgorbXNnc3RyICIiCisi0J/QtdGA0LXQudGC0Lgg0LIg0LrQsNGC0LDQu9C+0LMgSTzQv9GD0YLRjD4g0L/QtdGA0LXQtCDQt9Cw0L/Rg9GB0LrQvtC8INC/0YDQvtGG0LXRgdGB0LAuINCt0YLQviDQtNC10LnRgdGC0LLQuNC1INCy0YvQv9C+0LvQvdGP0LXRgtGB0Y8gIgorItC/0L7RgdC70LUg0LLRi9C/0L7Qu9C90LXQvdC40Y8g0LTQtdC50YHRgtCy0LjQuSDRgdC+0LPQu9Cw0YHQvdC+INC/0LDRgNCw0LzQtdGC0YDRgyBCPC1yPnxCPC0tY2hyb290PiDQtdGB0LvQuCDQvtC9ICIKKyLQt9Cw0LTQsNC9LiDQldGB0LvQuCDQvtC9INC90LUg0YPQutCw0LfQsNC9LCDRgtC+IHN0YXJ0LXN0b3AtZGFlbW9uINC/0LXRgNC10YXQvtC00LjRgiDQsiDQutC+0YDQvdC10LLQvtC5INC60LDRgtCw0LvQvtCzICIKKyLQv9C10YDQtdC0INC30LDQv9GD0YHQutC+0Lwg0L/RgNC+0YbQtdGB0YHQsC4iCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjIwOQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1iPiwgQjwtLWJhY2tncm91bmQ+IgorbXNnc3RyICJCPC1iPnxCPC0tYmFja2dyb3VuZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjIxCisjLCBmdXp6eQorbXNnaWQgIiIKKyJUeXBpY2FsbHkgdXNlZCB3aXRoIHByb2dyYW1zIHRoYXQgZG9uJ3QgZGV0YWNoIG9uIHRoZWlyIG93bi4gVGhpcyBvcHRpb24gIgorIndpbGwgZm9yY2UgQjxzdGFydC1zdG9wLWRhZW1vbj4gdG8gZm9yayBiZWZvcmUgc3RhcnRpbmcgdGhlIHByb2Nlc3MsIGFuZCAiCisiZm9yY2UgaXQgaW50byB0aGUgYmFja2dyb3VuZC4gIEI8V0FSTklORzogc3RhcnQtc3RvcC1kYWVtb24+IGNhbm5vdCBjaGVjayAiCisidGhlIGV4aXQgc3RhdHVzIGlmIHRoZSBwcm9jZXNzIGZhaWxzIHRvIGV4ZWN1dGUgZm9yIEI8YW55PiByZWFzb24uIFRoaXMgaXMgYSAiCisibGFzdCByZXNvcnQsIGFuZCBpcyBvbmx5IG1lYW50IGZvciBwcm9ncmFtcyB0aGF0IGVpdGhlciBtYWtlIG5vIHNlbnNlICIKKyJmb3JraW5nIG9uIHRoZWlyIG93biwgb3Igd2hlcmUgaXQncyBub3QgZmVhc2libGUgdG8gYWRkIHRoZSBjb2RlIGZvciB0aGVtIHRvICIKKyJkbyB0aGlzIHRoZW1zZWx2ZXMuIgorbXNnc3RyICIiCisi0J7QsdGL0YfQvdC+INGN0YLQvtGCINC/0LDRgNCw0LzQtdGC0YAg0LjRgdC/0L7Qu9GM0LfRg9C10YLRgdGPINGBINC/0YDQvtCz0YDQsNC80LzQsNC80LgsINC60L7RgtC+0YDRi9C1INC90LUg0LzQvtCz0YPRgiDRgdCw0LzQuCAiCisi0L7RgtC60LvRjtGH0LjRgtGM0YHRjyDQvtGCINGC0LXRgNC80LjQvdCw0LvQsCwg0L3QsCDQutC+0YLQvtGA0L7QvCDQvtC90Lgg0LfQsNC/0YPRidC10L3Riy4g0K3RgtC+0YIg0L/QsNGA0LDQvNC10YLRgCDQt9Cw0YHRgtCw0LLQuNGCICIKKyJCPHN0YXJ0LXN0b3AtZGFlbW9uPiDRgdC00LXQu9Cw0YLRjCBmb3JrKCkg0L/QtdGA0LXQtCDQt9Cw0L/Rg9GB0LrQvtC8INC/0YDQvtGG0LXRgdGB0LAg0Lgg0L/QtdGA0LXQstC10YHRgtC4INC10LPQviAiCisi0LIg0YTQvtC90L7QstGL0Lkg0YDQtdC20LjQvC4gQjzQn9Cg0JXQlNCj0J/QoNCV0JbQlNCV0J3QmNCVOiBzdGFydC1zdG9wLWRhZW1vbj4g0L3QtSDQvNC+0LbQtdGCINC/0YDQvtCy0LXRgNC40YLRjCDQutC+0LQgIgorItCy0L7Qt9Cy0YDQsNGC0LAsINC10YHQu9C4INC/0YDQvtGG0LXRgdGBINC90LUg0LzQvtC20LXRgiDRg9GB0L/QtdGI0L3QviDQstGL0L/QvtC70L3QuNGC0YzRgdGPINC/0L4gSTzQutCw0LrQvtC5INCx0Ysg0YLQviDQvdC4ICIKKyLQsdGL0LvQvj4g0L/RgNC40YfQuNC90LUuINCt0YLQviDQv9C+0YHQu9C10LTQvdGP0Y8g0LLQvtC30LzQvtC20L3QvtGB0YLRjCwg0L/RgNC10LTQvdCw0LfQvdCw0YfQtdC90L3QsNGPINGC0L7Qu9GM0LrQviDQtNC70Y8gIgorItC/0YDQvtCz0YDQsNC80LwsINC60L7RgtC+0YDRi9C1INC90LUg0YPQvNC10Y7RgiDQstGL0L/QvtC70L3Rj9GC0YwgZm9yaygpINGB0LDQvNC4LCDQuNC70Lgg0LXRgdC70Lgg0L3QtdGCINCy0L7Qt9C80L7QttC90L7RgdGC0LggIgorItC00L7QsdCw0LLQuNGC0Ywg0LIg0L3QuNGFINC60L7QtCDQtNC70Y8g0Y3RgtC+0LPQvi4iCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjIyMQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1OPiwgQjwtLW5pY2VsZXZlbD4gSTxpbnQ+IgorbXNnc3RyICJCPC1OPnxCPC0tbmljZWxldmVsPiBJPGludD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjI0Cittc2dpZCAiVGhpcyBhbHRlcnMgdGhlIHByaW9yaXR5IG9mIHRoZSBwcm9jZXNzIGJlZm9yZSBzdGFydGluZyBpdC4iCittc2dzdHIgItCt0YLQvtGCINC/0LDRgNCw0LzQtdGC0YAg0L/QtdGA0LXQtCDQt9Cw0L/Rg9GB0LrQvtC8INC40LfQvNC10L3Rj9C10YIg0L/RgNC40L7RgNC40YLQtdGCINC/0YDQvtGG0LXRgdGB0LAuIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyMjQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1QPiwgQjwtLXByb2NzY2hlZD4gSTxwb2xpY3k+Qjw6Pkk8cHJpb3JpdHk+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjMwCittc2dpZCAiIgorIlRoaXMgYWx0ZXJzIHRoZSBwcm9jZXNzIHNjaGVkdWxlciBwb2xpY3kgYW5kIHByaW9yaXR5IG9mIHRoZSBwcm9jZXNzIGJlZm9yZSAiCisic3RhcnRpbmcgaXQuIFRoZSBwcmlvcml0eSBjYW4gYmUgb3B0aW9uYWxseSBzcGVjaWZpZWQgYnkgYXBwZW5kaW5nIGEgQjw6PiAiCisiZm9sbG93ZWQgYnkgdGhlIHZhbHVlLiBUaGUgZGVmYXVsdCBJPHByaW9yaXR5PiBpcyAwLiBUaGUgY3VycmVudGx5IHN1cHBvcnRlZCAiCisicG9saWN5IHZhbHVlcyBhcmUgQjxvdGhlcj4sIEI8Zmlmbz4gYW5kIEI8cnI+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyMzAKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtST4sIEI8LS1pb3NjaGVkPiBJPGNsYXNzPkI8Oj5JPHByaW9yaXR5PiIKK21zZ3N0ciAiQjxkcGtnIC1pPiB8IEI8LS1pbnN0YWxsPiBJPNC40LzRjyDRhNCw0LnQu9CwINC/0LDQutC10YLQsD4uLi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjM3Cittc2dpZCAiIgorIlRoaXMgYWx0ZXJzIHRoZSBJTyBzY2hlZHVsZXIgY2xhc3MgYW5kIHByaW9yaXR5IG9mIHRoZSBwcm9jZXNzIGJlZm9yZSAiCisic3RhcnRpbmcgaXQuIFRoZSBwcmlvcml0eSBjYW4gYmUgb3B0aW9uYWxseSBzcGVjaWZpZWQgYnkgYXBwZW5kaW5nIGEgQjw6PiAiCisiZm9sbG93ZWQgYnkgdGhlIHZhbHVlLiBUaGUgZGVmYXVsdCBJPHByaW9yaXR5PiBpcyA0LCB1bmxlc3MgSTxjbGFzcz4gaXMgIgorIkI8aWRsZT4sIHRoZW4gSTxwcmlvcml0eT4gd2lsbCBhbHdheXMgYmUgNy4gVGhlIGN1cnJlbnRseSBzdXBwb3J0ZWQgdmFsdWVzICIKKyJmb3IgSTxjbGFzcz4gYXJlIEI8aWRsZT4sIEI8YmVzdC1lZmZvcnQ+IGFuZCBCPHJlYWwtdGltZT4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjIzNworIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1rPiwgQjwtLXVtYXNrPiBJPG1hc2s+IgorbXNnc3RyICJCPC1zPnxCPC0tc2lnbmFsPiBJPNGB0LjQs9C90LDQuz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjQwCisjLCBmdXp6eQorbXNnaWQgIlRoaXMgc2V0cyB0aGUgdW1hc2sgb2YgdGhlIHByb2Nlc3MgYmVmb3JlIHN0YXJ0aW5nIGl0LiIKK21zZ3N0ciAi0K3RgtC+0YIg0L/QsNGA0LDQvNC10YLRgCDQv9C10YDQtdC0INC30LDQv9GD0YHQutC+0Lwg0LjQt9C80LXQvdGP0LXRgiDQv9GA0LjQvtGA0LjRgtC10YIg0L/RgNC+0YbQtdGB0YHQsC4iCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjI0MAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC1tPiwgQjwtLW1ha2UtcGlkZmlsZT4iCittc2dzdHIgIkI8LW0+fEI8LS1tYWtlLXBpZGZpbGU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjI1NQorIywgZnV6enkKK21zZ2lkICIiCisiVXNlZCB3aGVuIHN0YXJ0aW5nIGEgcHJvZ3JhbSB0aGF0IGRvZXMgbm90IGNyZWF0ZSBpdHMgb3duIHBpZCBmaWxlLiBUaGlzICIKKyJvcHRpb24gd2lsbCBtYWtlIEI8c3RhcnQtc3RvcC1kYWVtb24+IGNyZWF0ZSB0aGUgZmlsZSByZWZlcmVuY2VkIHdpdGggQjwtLSIKKyJwaWRmaWxlPiBhbmQgcGxhY2UgdGhlIHBpZCBpbnRvIGl0IGp1c3QgYmVmb3JlIGV4ZWN1dGluZyB0aGUgcHJvY2Vzcy4gTm90ZSwgIgorInRoZSBmaWxlIHdpbGwgbm90IGJlIHJlbW92ZWQgd2hlbiBzdG9wcGluZyB0aGUgcHJvZ3JhbS4gIEI8Tk9URTo+IFRoaXMgIgorImZlYXR1cmUgbWF5IG5vdCB3b3JrIGluIGFsbCBjYXNlcy4gTW9zdCBub3RhYmx5IHdoZW4gdGhlIHByb2dyYW0gYmVpbmcgIgorImV4ZWN1dGVkIGZvcmtzIGZyb20gaXRzIG1haW4gcHJvY2Vzcy4gQmVjYXVzZSBvZiB0aGlzLCBpdCBpcyB1c3VhbGx5IG9ubHkgIgorInVzZWZ1bCB3aGVuIGNvbWJpbmVkIHdpdGggdGhlIEI8LS1iYWNrZ3JvdW5kPiBvcHRpb24uIgorbXNnc3RyICIiCisi0K3RgtC+0YIg0L/QsNGA0LDQvNC10YLRgCDQuNGB0L/QvtC70YzQt9GD0LXRgtGB0Y8sINC10YHQu9C4INC30LDQv9GD0YHQutCw0LXQvNCw0Y8g0L/RgNC+0LPRgNCw0LzQvNCwINC90LUg0YHQvtC30LTQsNGR0YIg0YHQstC+0LkgIgorItGB0L7QsdGB0YLQstC10L3QvdGL0LkgcGlkLdGE0LDQudC7LiDQn9GA0Lgg0Y3RgtC+0LwgQjxzdGFydC1zdG9wLWRhZW1vbj4g0L3QtdC/0L7RgdGA0LXQtNGB0YLQstC10L3QvdC+INC/0LXRgNC10LQgIgorItC30LDQv9GD0YHQutC+0Lwg0L/RgNC+0YbQtdGB0YHQsCDRgdC+0LfQtNCw0YHRgiDRhNCw0LnQuywg0YPQutCw0LfQsNC90L3Ri9C5INCyINC/0LDRgNCw0LzQtdGC0YDQtSDRhNC70LDQs9CwIEI8LS1waWRmaWxlPiDQuCAiCisi0L/QvtC80LXRgdGC0LjRgiDQsiDQvdC10LPQviBwaWQg0LfQsNC/0YPRgdC60LDQtdC80L7Qs9C+INC/0YDQvtGG0LXRgdGB0LAuINCX0LDQvNC10YLQuNC8LCDRh9GC0L4g0Y3RgtC+0YIg0YTQsNC50Lsg0L3QtSDQsdGD0LTQtdGCICIKKyLRg9C00LDQu9GR0L0g0L/RgNC4INC+0YHRgtCw0L3QvtCy0LrQtSDQv9GA0L7Qs9GA0LDQvNC80YsuIEI80JfQkNCc0JXQp9CQ0J3QmNCVOj4g0K3RgtCwINCy0L7Qt9C80L7QttC90L7RgdGC0Ywg0LjQvdC+0LPQtNCwINC80L7QttC10YIgIgorItC90LUg0YDQsNCx0L7RgtCw0YLRjC4g0JIg0LIg0L7RgdC90L7QstC90L7QvCDRjdGC0L4g0YHQu9GD0YfQsNC10YLRgdGPLCDQutC+0LPQtNCwINC30LDQv9GD0YHQutCw0LXQvNCw0Y8g0L/RgNC+0LPRgNCw0LzQvNCwICIKKyLQstGL0L/QvtC70L3Rj9C10YIgZm9yaygpLiDQn9C+0Y3RgtC+0LzRgyDQtNCw0L3QvdGL0Lkg0L/QsNGA0LDQvNC10YLRgCDQvtCx0YvRh9C90L4g0LHRi9Cy0LDQtdGCINC/0L7Qu9C10LfQtdC9INGC0L7Qu9GM0LrQviDQv9GA0LggIgorItC40YHQv9C+0LvRjNC30L7QstCw0L3QuNC4INCy0LzQtdGB0YLQtSDRgSDQv9Cw0YDQsNC80LXRgtGA0L7QvCBCPC0tYmFja2dyb3VuZD4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjI1OAorbXNnaWQgIlByaW50IHZlcmJvc2UgaW5mb3JtYXRpb25hbCBtZXNzYWdlcy4iCittc2dzdHIgItCS0YvQtNCw0LLQsNGC0Ywg0L/QvtC00YDQvtCx0L3Ri9C1INC40L3RhNC+0YDQvNCw0YbQuNC+0L3QvdGL0LUg0YHQvtC+0LHRidC10L3QuNGPLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyNzAKK21zZ2lkICIiCisiVGhlIHJlcXVlc3RlZCBhY3Rpb24gd2FzIHBlcmZvcm1lZC4gSWYgQjwtLW9rbm9kbz4gd2FzIHNwZWNpZmllZCwgaXQncyBhbHNvICIKKyJwb3NzaWJsZSB0aGF0IG5vdGhpbmcgaGFkIHRvIGJlIGRvbmUuICBUaGlzIGNhbiBoYXBwZW4gd2hlbiBCPC0tc3RhcnQ+IHdhcyAiCisic3BlY2lmaWVkIGFuZCBhIG1hdGNoaW5nIHByb2Nlc3Mgd2FzIGFscmVhZHkgcnVubmluZywgb3Igd2hlbiBCPC0tc3RvcD4gd2FzICIKKyJzcGVjaWZpZWQgYW5kIHRoZXJlIHdlcmUgbm8gbWF0Y2hpbmcgcHJvY2Vzc2VzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjI3NQorbXNnaWQgIklmIEI8LS1va25vZG8+IHdhcyBub3Qgc3BlY2lmaWVkIGFuZCBub3RoaW5nIHdhcyBkb25lLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjI4MworbXNnaWQgIiIKKyJJZiBCPC0tc3RvcD4gYW5kIEI8LS1yZXRyeT4gd2VyZSBzcGVjaWZpZWQsIGJ1dCB0aGUgZW5kIG9mIHRoZSBzY2hlZHVsZSB3YXMgIgorInJlYWNoZWQgYW5kIHRoZSBwcm9jZXNzZXMgd2VyZSBzdGlsbCBydW5uaW5nLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyODMgc3RhcnQtc3RvcC1kYWVtb24uODoyOTUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPDM+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6Mjg2Cittc2dpZCAiQW55IG90aGVyIGVycm9yLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjI4OQorbXNnaWQgIiIKKyJXaGVuIHVzaW5nIHRoZSBCPC0tc3RhdHVzPiBjb21tYW5kLCB0aGUgZm9sbG93aW5nIHN0YXR1cyBjb2RlcyBhcmUgcmV0dXJuZWQ6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjkyCittc2dpZCAiUHJvZ3JhbSBpcyBydW5uaW5nLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjI5NQorbXNnaWQgIlByb2dyYW0gaXMgbm90IHJ1bm5pbmcgYW5kIHRoZSBwaWQgZmlsZSBleGlzdHMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6Mjk4Cittc2dpZCAiUHJvZ3JhbSBpcyBub3QgcnVubmluZy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6Mjk4CisjLCBuby13cmFwCittc2dpZCAiQjw0PiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjMwMQorbXNnaWQgIlVuYWJsZSB0byBkZXRlcm1pbmUgcHJvZ3JhbSBzdGF0dXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MzA1Cittc2dpZCAiIgorIlN0YXJ0IHRoZSBCPGZvb2Q+IGRhZW1vbiwgdW5sZXNzIG9uZSBpcyBhbHJlYWR5IHJ1bm5pbmcgKGEgcHJvY2VzcyBuYW1lZCAiCisiZm9vZCwgcnVubmluZyBhcyB1c2VyIGZvb2QsIHdpdGggcGlkIGluIGZvb2QucGlkKToiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODozMDgKKyMsIG5vLXdyYXAKK21zZ2lkICJzdGFydC1zdG9wLWRhZW1vbiAtLXN0YXJ0IC0tb2tub2RvIC0tdXNlciBmb29kIC0tbmFtZSBmb29kIC0tcGlkZmlsZSAvdmFyL3J1bi9mb29kLnBpZCAtLXN0YXJ0YXMgL3Vzci9zYmluL2Zvb2QgLS1jaHVpZCBmb29kIC0tIC0tZGFlbW9uXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODozMTEKK21zZ2lkICJTZW5kIEI8U0lHVEVSTT4gdG8gQjxmb29kPiBhbmQgd2FpdCB1cCB0byA1IHNlY29uZHMgZm9yIGl0IHRvIHN0b3A6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MzE0CisjLCBuby13cmFwCittc2dpZCAic3RhcnQtc3RvcC1kYWVtb24gLS1zdG9wIC0tb2tub2RvIC0tdXNlciBmb29kIC0tbmFtZSBmb29kIC0tcGlkZmlsZSAvdmFyL3J1bi9mb29kLnBpZCAtLXJldHJ5IDVcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjMxNworbXNnaWQgIkRlbW9uc3RyYXRpb24gb2YgYSBjdXN0b20gc2NoZWR1bGUgZm9yIHN0b3BwaW5nIEI8Zm9vZD46IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MzIwCisjLCBuby13cmFwCittc2dpZCAic3RhcnQtc3RvcC1kYWVtb24gLS1zdG9wIC0tb2tub2RvIC0tdXNlciBmb29kIC0tbmFtZSBmb29kIC0tcGlkZmlsZSAvdmFyL3J1bi9mb29kLnBpZCAtLXJldHJ5PVRFUk0vMzAvS0lMTC81XG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODozMjYKK21zZ2lkICIiCisiTWFyZWsgTWljaGFsa2lld2ljeiBFPGx0Pm1hcmVrbUBpMTdsaW51eGIuaXN0cy5wd3Iud3JvYy5wbEU8Z3Q+IGJhc2VkIG9uIGEgIgorInByZXZpb3VzIHZlcnNpb24gYnkgSWFuIEphY2tzb24gRTxsdD5pYW5AY2hpYXJrLmdyZWVuZW5kLm9yZy51a0U8Z3Q+LiIKK21zZ3N0ciAiIgorIk1hcmVrIE1pY2hhbGtpZXdpY3ogRTxsdD5tYXJla21AaTE3bGludXhiLmlzdHMucHdyLndyb2MucGxFPGd0PiDQvtGB0L3QvtCy0YvQstCw0Y/RgdGMICIKKyLQvdCwINCy0LXRgNGB0LjQuCwg0YHQtNC10LvQsNC90L3QvtC5IElhbiBKYWNrc29uIEU8bHQ+aWFuQGNoaWFyay5ncmVlbmVuZC5vcmcudWtFPGd0Pi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MzI4Cittc2dpZCAiIgorIk1hbnVhbCBwYWdlIGJ5IEtsZWUgRGllbmVzIEU8bHQ+a2xlZUBtaXQuZWR1RTxndD4sIHBhcnRpYWxseSByZWZvcm1hdHRlZCBieSAiCisiSWFuIEphY2tzb24uIgorbXNnc3RyICIiCisi0KHRgtGA0LDQvdC40YbQsCDRgNGD0LrQvtCy0L7QtNGB0YLQstCwINC90LDQv9C40YHQsNC90LAgS2xlZSBEaWVuZXMgRTxsdD5rbGVlQG1pdC5lZHVFPGd0Piwg0YfQsNGB0YLQuNGH0L3QviAiCisi0L/QtdGA0LXRhNC+0YDQvNCw0YLQuNGA0L7QstCw0L3QviBJYW4gSmFja3Nvbi4iCisKKyMuIHR5cGU6IFRICisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6OAorIywgbm8td3JhcAorbXNnaWQgInVwZGF0ZS1hbHRlcm5hdGl2ZXMiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjExCittc2dpZCAiIgorInVwZGF0ZS1hbHRlcm5hdGl2ZXMgLSBtYWludGFpbiBzeW1ib2xpYyBsaW5rcyBkZXRlcm1pbmluZyBkZWZhdWx0IGNvbW1hbmRzIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNQorIywgZnV6enkKK21zZ2lkICJCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IFtJPG9wdGlvbj4uLi5dIEk8Y29tbWFuZD4iCittc2dzdHIgIkI8ZHBrZz4gW0k80L/QsNGA0LDQvNC10YLRgNGLPl0gSTzQtNC10LnRgdGC0LLQuNC1PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjIwCittc2dpZCAiIgorIkI8dXBkYXRlLWFsdGVybmF0aXZlcz4gY3JlYXRlcywgcmVtb3ZlcywgbWFpbnRhaW5zIGFuZCBkaXNwbGF5cyBpbmZvcm1hdGlvbiAiCisiYWJvdXQgdGhlIHN5bWJvbGljIGxpbmtzIGNvbXByaXNpbmcgdGhlIERlYmlhbiBhbHRlcm5hdGl2ZXMgc3lzdGVtLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjgKK21zZ2lkICIiCisiSXQgaXMgcG9zc2libGUgZm9yIHNldmVyYWwgcHJvZ3JhbXMgZnVsZmlsbGluZyB0aGUgc2FtZSBvciBzaW1pbGFyIGZ1bmN0aW9ucyAiCisidG8gYmUgaW5zdGFsbGVkIG9uIGEgc2luZ2xlIHN5c3RlbSBhdCB0aGUgc2FtZSB0aW1lLiAgRm9yIGV4YW1wbGUsIG1hbnkgIgorInN5c3RlbXMgaGF2ZSBzZXZlcmFsIHRleHQgZWRpdG9ycyBpbnN0YWxsZWQgYXQgb25jZS4gIFRoaXMgZ2l2ZXMgY2hvaWNlIHRvICIKKyJ0aGUgdXNlcnMgb2YgYSBzeXN0ZW0sIGFsbG93aW5nIGVhY2ggdG8gdXNlIGEgZGlmZmVyZW50IGVkaXRvciwgaWYgZGVzaXJlZCwgIgorImJ1dCBtYWtlcyBpdCBkaWZmaWN1bHQgZm9yIGEgcHJvZ3JhbSB0byBtYWtlIGEgZ29vZCBjaG9pY2UgZm9yIGFuIGVkaXRvciB0byAiCisiaW52b2tlIGlmIHRoZSB1c2VyIGhhcyBub3Qgc3BlY2lmaWVkIGEgcGFydGljdWxhciBwcmVmZXJlbmNlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NTAKK21zZ2lkICIiCisiRGViaWFuJ3MgYWx0ZXJuYXRpdmVzIHN5c3RlbSBhaW1zIHRvIHNvbHZlIHRoaXMgcHJvYmxlbS4gIEEgZ2VuZXJpYyBuYW1lIGluICIKKyJ0aGUgZmlsZXN5c3RlbSBpcyBzaGFyZWQgYnkgYWxsIGZpbGVzIHByb3ZpZGluZyBpbnRlcmNoYW5nZWFibGUgIgorImZ1bmN0aW9uYWxpdHkuICBUaGUgYWx0ZXJuYXRpdmVzIHN5c3RlbSBhbmQgdGhlIHN5c3RlbSBhZG1pbmlzdHJhdG9yICIKKyJ0b2dldGhlciBkZXRlcm1pbmUgd2hpY2ggYWN0dWFsIGZpbGUgaXMgcmVmZXJlbmNlZCBieSB0aGlzIGdlbmVyaWMgbmFtZS4gICIKKyJGb3IgZXhhbXBsZSwgaWYgdGhlIHRleHQgZWRpdG9ycyBCPGVkPigxKSAgYW5kIEI8bnZpPigxKSAgYXJlIGJvdGggaW5zdGFsbGVkICIKKyJvbiB0aGUgc3lzdGVtLCB0aGUgYWx0ZXJuYXRpdmVzIHN5c3RlbSB3aWxsIGNhdXNlIHRoZSBnZW5lcmljIG5hbWUgSTwvdXNyLyIKKyJiaW4vZWRpdG9yPiB0byByZWZlciB0byBJPC91c3IvYmluL252aT4gYnkgZGVmYXVsdC4gVGhlIHN5c3RlbSBhZG1pbmlzdHJhdG9yICIKKyJjYW4gb3ZlcnJpZGUgdGhpcyBhbmQgY2F1c2UgaXQgdG8gcmVmZXIgdG8gSTwvdXNyL2Jpbi9lZD4gaW5zdGVhZCwgYW5kIHRoZSAiCisiYWx0ZXJuYXRpdmVzIHN5c3RlbSB3aWxsIG5vdCBhbHRlciB0aGlzIHNldHRpbmcgdW50aWwgZXhwbGljaXRseSByZXF1ZXN0ZWQgIgorInRvIGRvIHNvLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NjAKK21zZ2lkICIiCisiVGhlIGdlbmVyaWMgbmFtZSBpcyBub3QgYSBkaXJlY3Qgc3ltYm9saWMgbGluayB0byB0aGUgc2VsZWN0ZWQgYWx0ZXJuYXRpdmUuICAiCisiSW5zdGVhZCwgaXQgaXMgYSBzeW1ib2xpYyBsaW5rIHRvIGEgbmFtZSBpbiB0aGUgSTxhbHRlcm5hdGl2ZXM+ICIKKyJJPGRpcmVjdG9yeT4sIHdoaWNoIGluIHR1cm4gaXMgYSBzeW1ib2xpYyBsaW5rIHRvIHRoZSBhY3R1YWwgZmlsZSAiCisicmVmZXJlbmNlZC4gIFRoaXMgaXMgZG9uZSBzbyB0aGF0IHRoZSBzeXN0ZW0gYWRtaW5pc3RyYXRvcidzIGNoYW5nZXMgY2FuIGJlICIKKyJjb25maW5lZCB3aXRoaW4gdGhlIEk8L2V0Yz4gZGlyZWN0b3J5OiB0aGUgRkhTIChxLnYuKSBnaXZlcyByZWFzb25zIHdoeSB0aGlzICIKKyJpcyBhIEdvb2QgVGhpbmcuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo3MgorbXNnaWQgIiIKKyJXaGVuIGVhY2ggcGFja2FnZSBwcm92aWRpbmcgYSBmaWxlIHdpdGggYSBwYXJ0aWN1bGFyIGZ1bmN0aW9uYWxpdHkgaXMgIgorImluc3RhbGxlZCwgY2hhbmdlZCBvciByZW1vdmVkLCBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IGlzIGNhbGxlZCB0byB1cGRhdGUgIgorImluZm9ybWF0aW9uIGFib3V0IHRoYXQgZmlsZSBpbiB0aGUgYWx0ZXJuYXRpdmVzIHN5c3RlbS4gIEI8dXBkYXRlLSIKKyJhbHRlcm5hdGl2ZXM+IGlzIHVzdWFsbHkgY2FsbGVkIGZyb20gdGhlIEI8cG9zdGluc3Q+IChjb25maWd1cmUpIG9yIEI8cHJlcm0+ICIKKyIoaW5zdGFsbCkgc2NyaXB0cyBpbiBEZWJpYW4gcGFja2FnZXMuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo5MQorbXNnaWQgIiIKKyJJdCBpcyBvZnRlbiB1c2VmdWwgZm9yIGEgbnVtYmVyIG9mIGFsdGVybmF0aXZlcyB0byBiZSBzeW5jaHJvbmlzZWQsIHNvIHRoYXQgIgorInRoZXkgYXJlIGNoYW5nZWQgYXMgYSBncm91cDsgZm9yIGV4YW1wbGUsIHdoZW4gc2V2ZXJhbCB2ZXJzaW9ucyBvZiB0aGUgQjx2aT4iCisiKDEpICBlZGl0b3IgYXJlIGluc3RhbGxlZCwgdGhlIG1hbiBwYWdlIHJlZmVyZW5jZWQgYnkgSTwvdXNyL3NoYXJlL21hbi9tYW4xLyIKKyJ2aS4xPiBzaG91bGQgY29ycmVzcG9uZCB0byB0aGUgZXhlY3V0YWJsZSByZWZlcmVuY2VkIGJ5IEk8L3Vzci9iaW4vdmk+LiAgIgorIkI8dXBkYXRlLWFsdGVybmF0aXZlcz4gaGFuZGxlcyB0aGlzIGJ5IG1lYW5zIG9mIEk8bWFzdGVyPiBhbmQgSTxzbGF2ZT4gIgorImxpbmtzOyB3aGVuIHRoZSBtYXN0ZXIgaXMgY2hhbmdlZCwgYW55IGFzc29jaWF0ZWQgc2xhdmVzIGFyZSBjaGFuZ2VkIHRvby4gIEEgIgorIm1hc3RlciBsaW5rIGFuZCBpdHMgYXNzb2NpYXRlZCBzbGF2ZXMgbWFrZSB1cCBhIEk8bGluaz4gSTxncm91cD4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxMDAKK21zZ2lkICIiCisiRWFjaCBsaW5rIGdyb3VwIGlzLCBhdCBhbnkgZ2l2ZW4gdGltZSwgaW4gb25lIG9mIHR3byBtb2RlczogYXV0b21hdGljIG9yICIKKyJtYW51YWwuICBXaGVuIGEgZ3JvdXAgaXMgaW4gYXV0b21hdGljIG1vZGUsIHRoZSBhbHRlcm5hdGl2ZXMgc3lzdGVtIHdpbGwgIgorImF1dG9tYXRpY2FsbHkgZGVjaWRlLCBhcyBwYWNrYWdlcyBhcmUgaW5zdGFsbGVkIGFuZCByZW1vdmVkLCB3aGV0aGVyIGFuZCBob3cgIgorInRvIHVwZGF0ZSB0aGUgbGlua3MuICBJbiBtYW51YWwgbW9kZSwgdGhlIGFsdGVybmF0aXZlcyBzeXN0ZW0gd2lsbCByZXRhaW4gIgorInRoZSBjaG9pY2Ugb2YgdGhlIGFkbWluaXN0cmF0b3IgYW5kIGF2b2lkIGNoYW5naW5nIHRoZSBsaW5rcyAoZXhjZXB0IHdoZW4gIgorInNvbWV0aGluZyBpcyBicm9rZW4pLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTA5Cittc2dpZCAiIgorIkxpbmsgZ3JvdXBzIGFyZSBpbiBhdXRvbWF0aWMgbW9kZSB3aGVuIHRoZXkgYXJlIGZpcnN0IGludHJvZHVjZWQgdG8gdGhlICIKKyJzeXN0ZW0uICBJZiB0aGUgc3lzdGVtIGFkbWluaXN0cmF0b3IgbWFrZXMgY2hhbmdlcyB0byB0aGUgc3lzdGVtJ3MgYXV0b21hdGljICIKKyJzZXR0aW5ncywgdGhpcyB3aWxsIGJlIG5vdGljZWQgdGhlIG5leHQgdGltZSBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IGlzIHJ1biAiCisib24gdGhlIGNoYW5nZWQgbGluaydzIGdyb3VwLCBhbmQgdGhlIGdyb3VwIHdpbGwgYXV0b21hdGljYWxseSBiZSBzd2l0Y2hlZCB0byAiCisibWFudWFsIG1vZGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxMTYKK21zZ2lkICIiCisiRWFjaCBhbHRlcm5hdGl2ZSBoYXMgYSBJPHByaW9yaXR5PiBhc3NvY2lhdGVkIHdpdGggaXQuICBXaGVuIGEgbGluayBncm91cCBpcyAiCisiaW4gYXV0b21hdGljIG1vZGUsIHRoZSBhbHRlcm5hdGl2ZXMgcG9pbnRlZCB0byBieSBtZW1iZXJzIG9mIHRoZSBncm91cCB3aWxsICIKKyJiZSB0aG9zZSB3aGljaCBoYXZlIHRoZSBoaWdoZXN0IHByaW9yaXR5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTMzCittc2dpZCAiIgorIldoZW4gdXNpbmcgdGhlIEI8LS1jb25maWc+IG9wdGlvbiwgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiB3aWxsIGxpc3QgYWxsIG9mICIKKyJ0aGUgY2hvaWNlcyBmb3IgdGhlIGxpbmsgZ3JvdXAgb2Ygd2hpY2ggZ2l2ZW4gSTxuYW1lPiBpcyB0aGUgbWFzdGVyICIKKyJhbHRlcm5hdGl2ZSBuYW1lLiBUaGUgY3VycmVudCBjaG9pY2UgaXMgbWFya2VkIHdpdGggYSAnKicuICBZb3Ugd2lsbCB0aGVuIGJlICIKKyJwcm9tcHRlZCBmb3IgeW91ciBjaG9pY2UgcmVnYXJkaW5nIHRoaXMgbGluayBncm91cC4gIERlcGVuZGluZyBvbiB0aGUgY2hvaWNlICIKKyJtYWRlLCB0aGUgbGluayBncm91cCBtaWdodCBubyBsb25nZXIgYmUgaW4gSTxhdXRvPiBtb2RlLiBZb3Ugd2lsbCBuZWVkIHRvICIKKyJ1c2UgdGhlIEI8LS1hdXRvPiBvcHRpb24gaW4gb3JkZXIgdG8gcmV0dXJuIHRvIHRoZSBhdXRvbWF0aWMgbW9kZSAob3IgeW91ICIKKyJjYW4gcmVydW4gQjwtLWNvbmZpZz4gYW5kIHNlbGVjdCB0aGUgZW50cnkgbWFya2VkIGFzIGF1dG9tYXRpYykuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxMzcKK21zZ2lkICIiCisiSWYgeW91IHdhbnQgdG8gY29uZmlndXJlIG5vbi1pbnRlcmFjdGl2ZWx5IHlvdSBjYW4gdXNlIHRoZSBCPC0tc2V0PiBvcHRpb24gIgorImluc3RlYWQgKHNlZSBiZWxvdykuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNDgKK21zZ2lkICIiCisiRGlmZmVyZW50IHBhY2thZ2VzIHByb3ZpZGluZyB0aGUgc2FtZSBmaWxlIG5lZWQgdG8gZG8gc28gQjxjb29wZXJhdGl2ZWx5Pi4gICIKKyJJbiBvdGhlciB3b3JkcywgdGhlIHVzYWdlIG9mIEI8dXBkYXRlLWFsdGVybmF0aXZlcz4gaXMgQjxtYW5kYXRvcnk+IGZvciBhbGwgIgorImludm9sdmVkIHBhY2thZ2VzIGluIHN1Y2ggY2FzZS4gSXQgaXMgbm90IHBvc3NpYmxlIHRvIG92ZXJyaWRlIHNvbWUgZmlsZSBpbiAiCisiYSBwYWNrYWdlIHRoYXQgZG9lcyBub3QgZW1wbG95IHRoZSBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IG1lY2hhbmlzbS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogU0gKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNDkKKyMsIG5vLXdyYXAKK21zZ2lkICJURVJNSU5PTE9HWSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTU0Cittc2dpZCAiIgorIlNpbmNlIHRoZSBhY3Rpdml0aWVzIG9mIEI8dXBkYXRlLWFsdGVybmF0aXZlcz4gYXJlIHF1aXRlIGludm9sdmVkLCBzb21lICIKKyJzcGVjaWZpYyB0ZXJtcyB3aWxsIGhlbHAgdG8gZXhwbGFpbiBpdHMgb3BlcmF0aW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE1NAorIywgbm8td3JhcAorbXNnaWQgImdlbmVyaWMgbmFtZSAob3IgYWx0ZXJuYXRpdmUgbGluaykiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE2MAorbXNnaWQgIiIKKyJBIG5hbWUsIGxpa2UgSTwvdXNyL2Jpbi9lZGl0b3I+LCB3aGljaCByZWZlcnMsIHZpYSB0aGUgYWx0ZXJuYXRpdmVzIHN5c3RlbSwgIgorInRvIG9uZSBvZiBhIG51bWJlciBvZiBmaWxlcyBvZiBzaW1pbGFyIGZ1bmN0aW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE2MAorIywgbm8td3JhcAorbXNnaWQgImFsdGVybmF0aXZlIG5hbWUiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE2MworbXNnaWQgIlRoZSBuYW1lIG9mIGEgc3ltYm9saWMgbGluayBpbiB0aGUgYWx0ZXJuYXRpdmVzIGRpcmVjdG9yeS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNjMKKyMsIG5vLXdyYXAKK21zZ2lkICJhbHRlcm5hdGl2ZSAob3IgYWx0ZXJuYXRpdmUgcGF0aCkiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE2NworbXNnaWQgIiIKKyJUaGUgbmFtZSBvZiBhIHNwZWNpZmljIGZpbGUgaW4gdGhlIGZpbGVzeXN0ZW0sIHdoaWNoIG1heSBiZSBtYWRlIGFjY2Vzc2libGUgIgorInZpYSBhIGdlbmVyaWMgbmFtZSB1c2luZyB0aGUgYWx0ZXJuYXRpdmVzIHN5c3RlbS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNjcKKyMsIG5vLXdyYXAKK21zZ2lkICJhbHRlcm5hdGl2ZXMgZGlyZWN0b3J5IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNzIKK21zZ2lkICJBIGRpcmVjdG9yeSwgYnkgZGVmYXVsdCBJPC9ldGMvYWx0ZXJuYXRpdmVzPiwgY29udGFpbmluZyB0aGUgc3ltbGlua3MuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTcyCisjLCBuby13cmFwCittc2dpZCAiYWRtaW5pc3RyYXRpdmUgZGlyZWN0b3J5IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNzkKK21zZ2lkICIiCisiQSBkaXJlY3RvcnksIGJ5IGRlZmF1bHQgSTwvdmFyL2xpYi9kcGtnL2FsdGVybmF0aXZlcz4sIGNvbnRhaW5pbmcgQjx1cGRhdGUtIgorImFsdGVybmF0aXZlcz4nIHN0YXRlIGluZm9ybWF0aW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE3OQorIywgbm8td3JhcAorbXNnaWQgImxpbmsgZ3JvdXAiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE4MgorbXNnaWQgIkEgc2V0IG9mIHJlbGF0ZWQgc3ltbGlua3MsIGludGVuZGVkIHRvIGJlIHVwZGF0ZWQgYXMgYSBncm91cC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxODIKKyMsIG5vLXdyYXAKK21zZ2lkICJtYXN0ZXIgbGluayIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTg2Cittc2dpZCAiIgorIlRoZSBhbHRlcm5hdGl2ZSBsaW5rIGluIGEgbGluayBncm91cCB3aGljaCBkZXRlcm1pbmVzIGhvdyB0aGUgb3RoZXIgbGlua3MgaW4gIgorInRoZSBncm91cCBhcmUgY29uZmlndXJlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxODYKKyMsIG5vLXdyYXAKK21zZ2lkICJzbGF2ZSBsaW5rIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxOTAKK21zZ2lkICIiCisiQW4gYWx0ZXJuYXRpdmUgbGluayBpbiBhIGxpbmsgZ3JvdXAgd2hpY2ggaXMgY29udHJvbGxlZCBieSB0aGUgc2V0dGluZyBvZiAiCisidGhlIG1hc3RlciBsaW5rLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE5MAorIywgbm8td3JhcAorbXNnaWQgImF1dG9tYXRpYyBtb2RlIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxOTYKK21zZ2lkICIiCisiV2hlbiBhIGxpbmsgZ3JvdXAgaXMgaW4gYXV0b21hdGljIG1vZGUsIHRoZSBhbHRlcm5hdGl2ZXMgc3lzdGVtIGVuc3VyZXMgdGhhdCAiCisidGhlIGxpbmtzIGluIHRoZSBncm91cCBwb2ludCB0byB0aGUgaGlnaGVzdCBwcmlvcml0eSBhbHRlcm5hdGl2ZSBhcHByb3ByaWF0ZSAiCisiZm9yIHRoZSBncm91cC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxOTYKKyMsIG5vLXdyYXAKK21zZ2lkICJtYW51YWwgbW9kZSIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjAxCittc2dpZCAiIgorIldoZW4gYSBsaW5rIGdyb3VwIGlzIGluIG1hbnVhbCBtb2RlLCB0aGUgYWx0ZXJuYXRpdmVzIHN5c3RlbSB3aWxsIG5vdCBtYWtlICIKKyJhbnkgY2hhbmdlcyB0byB0aGUgc3lzdGVtIGFkbWluaXN0cmF0b3IncyBzZXR0aW5ncy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyMDMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0taW5zdGFsbD4gSTxsaW5rIG5hbWUgcGF0aCBwcmlvcml0eT4gW0I8LS1zbGF2ZT4gSTxsaW5rIG5hbWUgcGF0aD5dLi4uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyMjIKK21zZ2lkICIiCisiQWRkIGEgZ3JvdXAgb2YgYWx0ZXJuYXRpdmVzIHRvIHRoZSBzeXN0ZW0uICBJPGxpbms+IGlzIHRoZSBnZW5lcmljIG5hbWUgZm9yICIKKyJ0aGUgbWFzdGVyIGxpbmssIEk8bmFtZT4gaXMgdGhlIG5hbWUgb2YgaXRzIHN5bWxpbmsgaW4gdGhlIGFsdGVybmF0aXZlcyAiCisiZGlyZWN0b3J5LCBhbmQgSTxwYXRoPiBpcyB0aGUgYWx0ZXJuYXRpdmUgYmVpbmcgaW50cm9kdWNlZCBmb3IgdGhlIG1hc3RlciAiCisibGluay4gIFRoZSBhcmd1bWVudHMgYWZ0ZXIgQjwtLXNsYXZlPiBhcmUgdGhlIGdlbmVyaWMgbmFtZSwgc3ltbGluayBuYW1lIGluICIKKyJ0aGUgYWx0ZXJuYXRpdmVzIGRpcmVjdG9yeSBhbmQgdGhlIGFsdGVybmF0aXZlIHBhdGggZm9yIGEgc2xhdmUgbGluay4gIFplcm8gIgorIm9yIG1vcmUgQjwtLXNsYXZlPiBvcHRpb25zLCBlYWNoIGZvbGxvd2VkIGJ5IHRocmVlIGFyZ3VtZW50cywgbWF5IGJlICIKKyJzcGVjaWZpZWQuIE5vdGUgdGhhdCB0aGUgbWFzdGVyIGFsdGVybmF0aXZlIG11c3QgZXhpc3Qgb3IgdGhlIGNhbGwgd2lsbCAiCisiZmFpbC4gSG93ZXZlciBpZiBhIHNsYXZlIGFsdGVybmF0aXZlIGRvZXNuJ3QgZXhpc3QsIHRoZSBjb3JyZXNwb25kaW5nIHNsYXZlICIKKyJhbHRlcm5hdGl2ZSBsaW5rIHdpbGwgc2ltcGx5IG5vdCBiZSBpbnN0YWxsZWQgKGEgd2FybmluZyB3aWxsIHN0aWxsIGJlICIKKyJkaXNwbGF5ZWQpLiBJZiBzb21lIHJlYWwgZmlsZSBpcyBpbnN0YWxsZWQgd2hlcmUgYW4gYWx0ZXJuYXRpdmUgbGluayBoYXMgdG8gIgorImJlIGluc3RhbGxlZCwgaXQgaXMga2VwdCB1bmxlc3MgQjwtLWZvcmNlPiBpcyB1c2VkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjMzCittc2dpZCAiIgorIklmIHRoZSBhbHRlcm5hdGl2ZSBuYW1lIHNwZWNpZmllZCBleGlzdHMgYWxyZWFkeSBpbiB0aGUgYWx0ZXJuYXRpdmVzICIKKyJzeXN0ZW0ncyByZWNvcmRzLCB0aGUgaW5mb3JtYXRpb24gc3VwcGxpZWQgd2lsbCBiZSBhZGRlZCBhcyBhIG5ldyBzZXQgb2YgIgorImFsdGVybmF0aXZlcyBmb3IgdGhlIGdyb3VwLiAgT3RoZXJ3aXNlLCBhIG5ldyBncm91cCwgc2V0IHRvIGF1dG9tYXRpYyBtb2RlLCAiCisid2lsbCBiZSBhZGRlZCB3aXRoIHRoaXMgaW5mb3JtYXRpb24uICBJZiB0aGUgZ3JvdXAgaXMgaW4gYXV0b21hdGljIG1vZGUsIGFuZCAiCisidGhlIG5ld2x5IGFkZGVkIGFsdGVybmF0aXZlcycgcHJpb3JpdHkgaXMgaGlnaGVyIHRoYW4gYW55IG90aGVyIGluc3RhbGxlZCAiCisiYWx0ZXJuYXRpdmVzIGZvciB0aGlzIGdyb3VwLCB0aGUgc3ltbGlua3Mgd2lsbCBiZSB1cGRhdGVkIHRvIHBvaW50IHRvIHRoZSAiCisibmV3bHkgYWRkZWQgYWx0ZXJuYXRpdmVzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjIzMworIywgbm8td3JhcAorbXNnaWQgIkI8LS1zZXQ+IEk8bmFtZSBwYXRoPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjQyCittc2dpZCAiIgorIlNldCB0aGUgcHJvZ3JhbSBJPHBhdGg+IGFzIGFsdGVybmF0aXZlIGZvciBJPG5hbWUuPiBUaGlzIGlzIGVxdWl2YWxlbnQgdG8gIgorIkI8LS1jb25maWc+IGJ1dCBpcyBub24taW50ZXJhY3RpdmUgYW5kIHRodXMgc2NyaXB0YWJsZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyNDIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tcmVtb3ZlPiBJPG5hbWUgcGF0aD4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjI2MworbXNnaWQgIiIKKyJSZW1vdmUgYW4gYWx0ZXJuYXRpdmUgYW5kIGFsbCBvZiBpdHMgYXNzb2NpYXRlZCBzbGF2ZSBsaW5rcy4gIEk8bmFtZT4gaXMgYSAiCisibmFtZSBpbiB0aGUgYWx0ZXJuYXRpdmVzIGRpcmVjdG9yeSwgYW5kIEk8cGF0aD4gaXMgYW4gYWJzb2x1dGUgZmlsZW5hbWUgdG8gIgorIndoaWNoIEk8bmFtZT4gY291bGQgYmUgbGlua2VkLiBJZiBJPG5hbWU+IGlzIGluZGVlZCBsaW5rZWQgdG8gSTxwYXRoPiwgIgorIkk8bmFtZT4gd2lsbCBiZSB1cGRhdGVkIHRvIHBvaW50IHRvIGFub3RoZXIgYXBwcm9wcmlhdGUgYWx0ZXJuYXRpdmUgKGFuZCB0aGUgIgorImdyb3VwIGlzIHB1dCBiYWNrIGluIGF1dG9tYXRpYyBtb2RlKSwgb3IgcmVtb3ZlZCBpZiB0aGVyZSBpcyBubyBzdWNoICIKKyJhbHRlcm5hdGl2ZSBsZWZ0LiAgQXNzb2NpYXRlZCBzbGF2ZSBsaW5rcyB3aWxsIGJlIHVwZGF0ZWQgb3IgcmVtb3ZlZCwgIgorImNvcnJlc3BvbmRpbmdseS4gIElmIHRoZSBsaW5rIGlzIG5vdCBjdXJyZW50bHkgcG9pbnRpbmcgdG8gSTxwYXRoPiwgbm8gbGlua3MgIgorImFyZSBjaGFuZ2VkOyBvbmx5IHRoZSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgYWx0ZXJuYXRpdmUgaXMgcmVtb3ZlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyNjMKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLXJlbW92ZS1hbGw+IEk8bmFtZT4iCittc2dzdHIgIkI8LS1sb2c9Pkk80LjQvNGPINGE0LDQudC70LA+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjY4Cittc2dpZCAiIgorIlJlbW92ZSBhbGwgYWx0ZXJuYXRpdmVzIGFuZCBhbGwgb2YgdGhlaXIgYXNzb2NpYXRlZCBzbGF2ZSBsaW5rcy4gIEk8bmFtZT4gaXMgIgorImEgbmFtZSBpbiB0aGUgYWx0ZXJuYXRpdmVzIGRpcmVjdG9yeS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjI3NQorbXNnaWQgIiIKKyJDYWxsIEI8LS1jb25maWc+IG9uIGFsbCBhbHRlcm5hdGl2ZXMuIEl0IGNhbiBiZSB1c2VmdWxseSBjb21iaW5lZCB3aXRoIEI8LS0iCisic2tpcC1hdXRvPiB0byByZXZpZXcgYW5kIGNvbmZpZ3VyZSBhbGwgYWx0ZXJuYXRpdmVzIHdoaWNoIGFyZSBub3QgY29uZmlndXJlZCAiCisiaW4gYXV0b21hdGljIG1vZGUuIEJyb2tlbiBhbHRlcm5hdGl2ZXMgYXJlIGFsc28gZGlzcGxheWVkLiAgVGh1cyBhIHNpbXBsZSAiCisid2F5IHRvIGZpeCBhbGwgYnJva2VuIGFsdGVybmF0aXZlcyBpcyB0byBjYWxsIEI8eWVzIFxcW2FxXVxcW2FxXSB8IHVwZGF0ZS0iCisiYWx0ZXJuYXRpdmVzIC0tZm9yY2UgLS1hbGw+LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjI3NQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tYXV0bz4gSTxuYW1lPiIKK21zZ3N0ciAiQjwtLWxvZz0+STzQuNC80Y8g0YTQsNC50LvQsD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyODIKK21zZ2lkICIiCisiU3dpdGNoIHRoZSBsaW5rIGdyb3VwIGJlaGluZCB0aGUgYWx0ZXJuYXRpdmUgZm9yIEk8bmFtZT4gdG8gYXV0b21hdGljIG1vZGUuICAiCisiSW4gdGhlIHByb2Nlc3MsIHRoZSBtYXN0ZXIgc3ltbGluayBhbmQgaXRzIHNsYXZlcyBhcmUgdXBkYXRlZCB0byBwb2ludCB0byAiCisidGhlIGhpZ2hlc3QgcHJpb3JpdHkgaW5zdGFsbGVkIGFsdGVybmF0aXZlcy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyODIKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWRpc3BsYXk+IEk8bmFtZT4iCittc2dzdHIgIkI8LS1sb2c9Pkk80LjQvNGPINGE0LDQudC70LA+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjkxCittc2dpZCAiIgorIkRpc3BsYXkgaW5mb3JtYXRpb24gYWJvdXQgdGhlIGxpbmsgZ3JvdXAuICBJbmZvcm1hdGlvbiBkaXNwbGF5ZWQgaW5jbHVkZXMgIgorInRoZSBncm91cCdzIG1vZGUgKGF1dG8gb3IgbWFudWFsKSwgd2hpY2ggYWx0ZXJuYXRpdmUgdGhlIG1hc3RlciBsaW5rICIKKyJjdXJyZW50bHkgcG9pbnRzIHRvLCB3aGF0IG90aGVyIGFsdGVybmF0aXZlcyBhcmUgYXZhaWxhYmxlIChhbmQgdGhlaXIgIgorImNvcnJlc3BvbmRpbmcgc2xhdmUgYWx0ZXJuYXRpdmVzKSwgYW5kIHRoZSBoaWdoZXN0IHByaW9yaXR5IGFsdGVybmF0aXZlICIKKyJjdXJyZW50bHkgaW5zdGFsbGVkLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjI5MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tZ2V0LXNlbGVjdGlvbnM+IgorbXNnc3RyICJCPGRwa2cgLS1zZXQtc2VsZWN0aW9ucz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyOTkKK21zZ2lkICIiCisiTGlzdCBhbGwgbWFzdGVyIGFsdGVybmF0aXZlIG5hbWVzICh0aG9zZSBjb250cm9sbGluZyBhIGxpbmsgZ3JvdXApICBhbmQgIgorInRoZWlyIHN0YXR1cy4gRWFjaCBsaW5lIGNvbnRhaW5zIHVwIHRvIDMgZmllbGRzIChzZXBhcmF0ZWQgYnkgb25lIG9yIG1vcmUgIgorInNwYWNlcykuIFRoZSBmaXJzdCBmaWVsZCBpcyB0aGUgYWx0ZXJuYXRpdmUgbmFtZSwgdGhlIHNlY29uZCBvbmUgaXMgdGhlICIKKyJzdGF0dXMgKGVpdGhlciBcImF1dG9cIiBvciBcIm1hbnVhbFwiKSwgYW5kIHRoZSBsYXN0IG9uZSBjb250YWlucyB0aGUgIgorImN1cnJlbnQgY2hvaWNlIGluIHRoZSBhbHRlcm5hdGl2ZSAoYmV3YXJlOiBpdCdzIGEgZmlsZW5hbWUgYW5kIHRodXMgbWlnaHQgIgorImNvbnRhaW4gc3BhY2VzKS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjMwNAorbXNnaWQgIiIKKyJSZWFkIGNvbmZpZ3VyYXRpb24gb2YgYWx0ZXJuYXRpdmVzIG9uIHN0YW5kYXJkIGlucHV0IGluIHRoZSBmb3JtYXQgZ2VuZXJhdGVkICIKKyJieSBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXMgLS1nZXQtc2VsZWN0aW9ucz4gYW5kIHJlY29uZmlndXJlIHRoZW0gYWNjb3JkaW5nbHkuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzA0CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1xdWVyeT4gSTxuYW1lPiIKK21zZ3N0ciAiQjwtLWxvZz0+STzQuNC80Y8g0YTQsNC50LvQsD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMDkKK21zZ2lkICIiCisiRGlzcGxheSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgbGluayBncm91cCBsaWtlIC0tZGlzcGxheSBkb2VzLCBidXQgaW4gYSAiCisibWFjaGluZSBwYXJzZWFibGUgd2F5IChzZWUgc2VjdGlvbiBCPFFVRVJZIEZPUk1BVD4gYmVsb3cpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjMwOQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPC0tbGlzdD4gSTxuYW1lPiIKK21zZ3N0ciAiQjwtLW5ldz4gfCBCPC0tb2xkPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjMxMgorbXNnaWQgIkRpc3BsYXkgYWxsIHRhcmdldHMgb2YgdGhlIGxpbmsgZ3JvdXAuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzEyCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1jb25maWc+IEk8bmFtZT4iCittc2dzdHIgIkI8LS1sb2c9Pkk80LjQvNGPINGE0LDQudC70LA+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzE2Cittc2dpZCAiIgorIlNob3cgYXZhaWxhYmxlIGFsdGVybmF0aXZlcyBmb3IgYSBsaW5rIGdyb3VwIGFuZCBhbGxvdyB0aGUgdXNlciB0byAiCisiaW50ZXJhY3RpdmVseSBzZWxlY3Qgd2hpY2ggb25lIHRvIHVzZS4gVGhlIGxpbmsgZ3JvdXAgaXMgdXBkYXRlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMjQKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLWFsdGRpcj5JPCBkaXJlY3Rvcnk+IgorbXNnc3RyICJCPC0tc3RhdHVzLWZkID5JPEU8bHQ+bkU8Z3Q+PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjMyOAorbXNnaWQgIiIKKyJTcGVjaWZpZXMgdGhlIGFsdGVybmF0aXZlcyBkaXJlY3RvcnksIHdoZW4gdGhpcyBpcyB0byBiZSBkaWZmZXJlbnQgZnJvbSB0aGUgIgorImRlZmF1bHQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMzIKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRoZSBhZG1pbmlzdHJhdGl2ZSBkaXJlY3RvcnksIHdoZW4gdGhpcyBpcyB0byBiZSBkaWZmZXJlbnQgZnJvbSAiCisidGhlIGRlZmF1bHQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzMyCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8LS1sb2c+STwgZmlsZT4iCittc2dzdHIgIkI8LS1sb2c9Pkk80LjQvNGPINGE0LDQudC70LA+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzM2Cittc2dpZCAiIgorIlNwZWNpZmllcyB0aGUgbG9nIGZpbGUsIHdoZW4gdGhpcyBpcyB0byBiZSBkaWZmZXJlbnQgZnJvbSB0aGUgZGVmYXVsdCAoL3Zhci8iCisibG9nL2FsdGVybmF0aXZlcy5sb2cpLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzQwCittc2dpZCAiIgorIkxldCBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IHJlcGxhY2Ugb3IgZHJvcCBhbnkgcmVhbCBmaWxlIHRoYXQgaXMgaW5zdGFsbGVkICIKKyJ3aGVyZSBhbiBhbHRlcm5hdGl2ZSBsaW5rIGhhcyB0byBiZSBpbnN0YWxsZWQgb3IgcmVtb3ZlZC4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozNDAKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLXNraXAtYXV0bz4iCittc2dzdHIgIkI8ODIyLWRhdGU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzQ1Cittc2dpZCAiIgorIlNraXAgY29uZmlndXJhdGlvbiBwcm9tcHQgZm9yIGFsdGVybmF0aXZlcyB3aGljaCBhcmUgcHJvcGVybHkgY29uZmlndXJlZCBpbiAiCisiYXV0b21hdGljIG1vZGUuIFRoaXMgb3B0aW9uIGlzIG9ubHkgcmVsZXZhbnQgd2l0aCBCPC0tY29uZmlnPiBvciBCPC0tYWxsPi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozNDUKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiQjwtLXZlcmJvc2U+IgorbXNnc3RyICJCPC12PnxCPC0tdmVyYm9zZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozNTAKK21zZ2lkICJHZW5lcmF0ZSBtb3JlIGNvbW1lbnRzIGFib3V0IHdoYXQgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBpcyBkb2luZy4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM1MworbXNnaWQgIkRvbid0IGdlbmVyYXRlIGFueSBjb21tZW50cyB1bmxlc3MgZXJyb3JzIG9jY3VyLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzU5Cittc2dpZCAiIgorIklmIHNldCBhbmQgdGhlIEI8LS1hZG1pbmRpcj4gb3B0aW9uIGhhcyBub3QgYmVlbiBzcGVjaWZpZWQsIGl0IHdpbGwgYmUgdXNlZCAiCisiYXMgdGhlIGJhc2UgYWRtaW5pc3RyYXRpdmUgZGlyZWN0b3J5LiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM2MQorIywgbm8td3JhcAorbXNnaWQgIkk8L2V0Yy9hbHRlcm5hdGl2ZXMvPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzY3Cittc2dpZCAiIgorIlRoZSBkZWZhdWx0IGFsdGVybmF0aXZlcyBkaXJlY3RvcnkuICBDYW4gYmUgb3ZlcnJpZGRlbiBieSB0aGUgQjwtLWFsdGRpcj4gIgorIm9wdGlvbi4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozNjcKKyMsIGZ1enp5LCBuby13cmFwCittc2dpZCAiSTwvdmFyL2xpYi9kcGtnL2FsdGVybmF0aXZlcy8+IgorbXNnc3RyICJJPC92YXIvbGliL2Rwa2cvc3RhdHVzPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM3MworbXNnaWQgIiIKKyJUaGUgZGVmYXVsdCBhZG1pbmlzdHJhdGlvbiBkaXJlY3RvcnkuICBDYW4gYmUgb3ZlcnJpZGRlbiBieSB0aGUgQjwtLSIKKyJhZG1pbmRpcj4gb3B0aW9uLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6Mzc4Cittc2dpZCAiVGhlIHJlcXVlc3RlZCBhY3Rpb24gd2FzIHN1Y2Nlc3NmdWxseSBwZXJmb3JtZWQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozODIKK21zZ2lkICIiCisiUHJvYmxlbXMgd2VyZSBlbmNvdW50ZXJlZCB3aGlsc3QgcGFyc2luZyB0aGUgY29tbWFuZCBsaW5lIG9yIHBlcmZvcm1pbmcgdGhlICIKKyJhY3Rpb24uIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFNICisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzgzCisjLCBuby13cmFwCittc2dpZCAiUVVFUlkgRk9STUFUIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozODgKK21zZ2lkICIiCisiVGhlIEI8dXBkYXRlLWFsdGVybmF0aXZlcyAtLXF1ZXJ5PiBmb3JtYXQgaXMgdXNpbmcgYW4gUkZDODIyLWxpa2UgZmxhdCAiCisiZm9ybWF0LiBJdCdzIG1hZGUgb2YgSTxuPiArIDEgYmxvY2tzIHdoZXJlIEk8bj4gaXMgdGhlIG51bWJlciBvZiAiCisiYWx0ZXJuYXRpdmVzIGF2YWlsYWJsZSBpbiB0aGUgcXVlcmllZCBsaW5rIGdyb3VwLiBUaGUgZmlyc3QgYmxvY2sgY29udGFpbnMgIgorInRoZSBmb2xsb3dpbmcgZmllbGRzOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM4OAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPExpbms6Pkk8IGxpbms+IgorbXNnc3RyICJCPFNvdXJjZTo+IEU8bHQ+0LjQvNGPINCw0YDRhdC40LLQvtCyINGBINC40YHRhdC+0LTQvdC40LrQsNC80LhFPGd0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM5MQorbXNnaWQgIlRoZSBnZW5lcmljIG5hbWUgb2YgdGhlIGFsdGVybmF0aXZlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM5MQorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPFN0YXR1czo+STwgc3RhdHVzPiIKK21zZ3N0ciAiQjxSZXBsYWNlczo+IEU8bHQ+0YHQv9C40YHQvtC6INC/0LDQutC10YLQvtCyRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozOTQKK21zZ2lkICJUaGUgc3RhdHVzIG9mIHRoZSBhbHRlcm5hdGl2ZSAoQjxhdXRvPiBvciBCPG1hbnVhbD4pLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM5NAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPEJlc3Q6Pkk8IGJlc3QtY2hvaWNlPiIKK21zZ3N0ciAiQjxSZXBsYWNlczo+IEU8bHQ+0YHQv9C40YHQvtC6INC/0LDQutC10YLQvtCyRTxndD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozOTgKK21zZ2lkICIiCisiVGhlIHBhdGggb2YgdGhlIGJlc3QgYWx0ZXJuYXRpdmUgZm9yIHRoaXMgbGluayBncm91cC4gTm90IHByZXNlbnQgaWYgdGhlcmUgIgorImlzIG5vIGFsdGVybmF0aXZlcyBhdmFpbGFibGUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6Mzk4CisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8VmFsdWU6Pkk8IGN1cnJlbnRseS1zZWxlY3RlZC1hbHRlcm5hdGl2ZT4iCittc2dzdHIgIkI8U291cmNlOj4gRTxsdD7QuNC80Y8g0LDRgNGF0LjQstC+0LIg0YEg0LjRgdGF0L7QtNC90LjQutCw0LzQuEU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDAyCittc2dpZCAiIgorIlRoZSBwYXRoIG9mIHRoZSBjdXJyZW50bHkgc2VsZWN0ZWQgYWx0ZXJuYXRpdmUuIEl0IGNhbiBhbHNvIHRha2UgdGhlIG1hZ2ljICIKKyJ2YWx1ZSBCPG5vbmU+LiBJdCBpcyB1c2VkIGlmIHRoZSBsaW5rIGRvZXNuJ3QgZXhpc3QuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDAzCisjLCBuby13cmFwCittc2dpZCAiVGhlIG90aGVyIGJsb2NrcyBkZXNjcmliZSB0aGUgYXZhaWxhYmxlIGFsdGVybmF0aXZlcyBpbiB0aGUgcXVlcmllZCBsaW5rIGdyb3VwOiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQwNQorIywgbm8td3JhcAorbXNnaWQgIkI8QWx0ZXJuYXRpdmU6Pkk8IHBhdGgtb2YtdGhpcy1hbHRlcm5hdGl2ZT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQwOAorbXNnaWQgIlBhdGggdG8gdGhpcyBibG9jaydzIGFsdGVybmF0aXZlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQwOAorIywgZnV6enksIG5vLXdyYXAKK21zZ2lkICJCPFByaW9yaXR5Oj5JPCBwcmlvcml0eS12YWx1ZT4iCittc2dzdHIgIkI8UHJpb3JpdHk6PiBFPGx0PtC/0YDQuNC+0YDQuNGC0LXRgkU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDExCittc2dpZCAiVmFsdWUgb2YgdGhlIHByaW9yaXR5IG9mIHRoaXMgYWx0ZXJuYXRpdmUuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDExCisjLCBmdXp6eSwgbm8td3JhcAorbXNnaWQgIkI8U2xhdmVzOj5JPCBsaXN0LW9mLXNsYXZlcz4iCittc2dzdHIgIkI8UmVwbGFjZXM6PiBFPGx0PtGB0L/QuNGB0L7QuiDQv9Cw0LrQtdGC0L7QskU8Z3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDE3Cittc2dpZCAiIgorIldoZW4gdGhpcyBoZWFkZXIgaXMgcHJlc2VudCwgdGhlIEI8bmV4dD4gbGluZXMgaG9sZCBhbGwgc2xhdmUgYWx0ZXJuYXRpdmVzICIKKyJhc3NvY2lhdGVkIHRvIHRoZSBtYXN0ZXIgbGluayBvZiB0aGUgYWx0ZXJuYXRpdmUuIFRoZXJlIGlzIG9uZSBzbGF2ZSBwZXIgIgorImxpbmUuIEVhY2ggbGluZSBjb250YWlucyBvbmUgc3BhY2UsIHRoZSBnZW5lcmljIG5hbWUgb2YgdGhlIHNsYXZlICIKKyJhbHRlcm5hdGl2ZSwgYW5vdGhlciBzcGFjZSwgYW5kIHRoZSBwYXRoIHRvIHRoZSBzbGF2ZSBhbHRlcm5hdGl2ZS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0MTgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPEV4YW1wbGU+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0MjYKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiJCB1cGRhdGUtYWx0ZXJuYXRpdmVzIC0tcXVlcnkgZWRpdG9yXG4iCisiTGluazogZWRpdG9yXG4iCisiU3RhdHVzOiBhdXRvXG4iCisiQmVzdDogL3Vzci9iaW4vdmltLmd0a1xuIgorIlZhbHVlOiAvdXNyL2Jpbi92aW0uZ3RrXG4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQzMQorIywgbm8td3JhcAorbXNnaWQgIiIKKyJBbHRlcm5hdGl2ZTogL2Jpbi9lZFxuIgorIlByaW9yaXR5OiAtMTAwXG4iCisiU2xhdmVzOlxuIgorIiBlZGl0b3IuMS5neiAvdXNyL3NoYXJlL21hbi9tYW4xL2VkLjEuZ3pcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDQ2CisjLCBuby13cmFwCittc2dpZCAiIgorIkFsdGVybmF0aXZlOiAvdXNyL2Jpbi92aW0uZ3RrXG4iCisiUHJpb3JpdHk6IDUwXG4iCisiU2xhdmVzOlxuIgorIiBlZGl0b3IuMS5neiAvdXNyL3NoYXJlL21hbi9tYW4xL3ZpbS4xLmd6XG4iCisiIGVkaXRvci5ydS4xLmd6IC91c3Ivc2hhcmUvbWFuL3J1L21hbjEvdmltLjEuZ3pcbiIKKyIgZWRpdG9yLnBsLklTTzg4NTktMi4xLmd6IC91c3Ivc2hhcmUvbWFuL3BsLklTTzg4NTktMi9tYW4xL3ZpbS4xLmd6XG4iCisiIGVkaXRvci5pdC5JU084ODU5LTEuMS5neiAvdXNyL3NoYXJlL21hbi9pdC5JU084ODU5LTEvbWFuMS92aW0uMS5nelxuIgorIiBlZGl0b3IucGwuVVRGLTguMS5neiAvdXNyL3NoYXJlL21hbi9wbC5VVEYtOC9tYW4xL3ZpbS4xLmd6XG4iCisiIGVkaXRvci5pdC4xLmd6IC91c3Ivc2hhcmUvbWFuL2l0L21hbjEvdmltLjEuZ3pcbiIKKyIgZWRpdG9yLmZyLlVURi04LjEuZ3ogL3Vzci9zaGFyZS9tYW4vZnIuVVRGLTgvbWFuMS92aW0uMS5nelxuIgorIiBlZGl0b3IuZnIuMS5neiAvdXNyL3NoYXJlL21hbi9mci9tYW4xL3ZpbS4xLmd6XG4iCisiIGVkaXRvci5pdC5VVEYtOC4xLmd6IC91c3Ivc2hhcmUvbWFuL2l0LlVURi04L21hbjEvdmltLjEuZ3pcbiIKKyIgZWRpdG9yLnBsLjEuZ3ogL3Vzci9zaGFyZS9tYW4vcGwvbWFuMS92aW0uMS5nelxuIgorIiBlZGl0b3IuZnIuSVNPODg1OS0xLjEuZ3ogL3Vzci9zaGFyZS9tYW4vZnIuSVNPODg1OS0xL21hbjEvdmltLjEuZ3pcbiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDU4Cittc2dpZCAiIgorIldpdGggQjwtLXZlcmJvc2U+IEI8dXBkYXRlLWFsdGVybmF0aXZlcz4gY2hhdHRlcnMgaW5jZXNzYW50bHkgYWJvdXQgaXRzICIKKyJhY3Rpdml0aWVzIG9uIGl0cyBzdGFuZGFyZCBvdXRwdXQgY2hhbm5lbC4gIElmIHByb2JsZW1zIG9jY3VyLCBCPHVwZGF0ZS0iCisiYWx0ZXJuYXRpdmVzPiBvdXRwdXRzIGVycm9yIG1lc3NhZ2VzIG9uIGl0cyBzdGFuZGFyZCBlcnJvciBjaGFubmVsIGFuZCAiCisicmV0dXJucyBhbiBleGl0IHN0YXR1cyBvZiAyLiAgVGhlc2UgZGlhZ25vc3RpY3Mgc2hvdWxkIGJlIHNlbGYtZXhwbGFuYXRvcnk7ICIKKyJpZiB5b3UgZG8gbm90IGZpbmQgdGhlbSBzbywgcGxlYXNlIHJlcG9ydCB0aGlzIGFzIGEgYnVnLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDY0Cittc2dpZCAiIgorIlRoZXJlIGFyZSBzZXZlcmFsIHBhY2thZ2VzIHdoaWNoIHByb3ZpZGUgYSB0ZXh0IGVkaXRvciBjb21wYXRpYmxlIHdpdGggIgorIkI8dmk+LCBmb3IgZXhhbXBsZSBCPG52aT4gYW5kIEI8dmltPi4gV2hpY2ggb25lIGlzIHVzZWQgaXMgY29udHJvbGxlZCBieSB0aGUgIgorImxpbmsgZ3JvdXAgQjx2aT4sIHdoaWNoIGluY2x1ZGVzIGxpbmtzIGZvciB0aGUgcHJvZ3JhbSBpdHNlbGYgYW5kIHRoZSAiCisiYXNzb2NpYXRlZCBtYW5wYWdlLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDY3Cittc2dpZCAiIgorIlRvIGRpc3BsYXkgdGhlIGF2YWlsYWJsZSBwYWNrYWdlcyB3aGljaCBwcm92aWRlIEI8dmk+IGFuZCB0aGUgY3VycmVudCAiCisic2V0dGluZyBmb3IgaXQsIHVzZSB0aGUgQjwtLWRpc3BsYXk+IGFjdGlvbjoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQ3MAorbXNnaWQgIkI8dXBkYXRlLWFsdGVybmF0aXZlcyAtLWRpc3BsYXkgdmk+IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0NzQKK21zZ2lkICIiCisiVG8gY2hvb3NlIGEgcGFydGljdWxhciBCPHZpPiBpbXBsZW1lbnRhdGlvbiwgdXNlIHRoaXMgY29tbWFuZCBhcyByb290IGFuZCAiCisidGhlbiBzZWxlY3QgYSBudW1iZXIgZnJvbSB0aGUgbGlzdDoiCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQ3NworbXNnaWQgIkI8dXBkYXRlLWFsdGVybmF0aXZlcyAtLWNvbmZpZyB2aT4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQ4MQorbXNnaWQgIiIKKyJUbyBnbyBiYWNrIHRvIGhhdmluZyB0aGUgQjx2aT4gaW1wbGVtZW50YXRpb24gY2hvc2VuIGF1dG9tYXRpY2FsbHksIGRvIHRoaXMgIgorImFzIHJvb3Q6IgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0ODQKK21zZ2lkICJCPHVwZGF0ZS1hbHRlcm5hdGl2ZXMgLS1hdXRvIHZpPiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDg4Cittc2dpZCAiIgorIklmIHlvdSBmaW5kIGEgYnVnLCBwbGVhc2UgcmVwb3J0IGl0IHVzaW5nIHRoZSBEZWJpYW4gYnVnLXRyYWNraW5nIHN5c3RlbS4iCittc2dzdHIgIiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQ5MworbXNnaWQgIiIKKyJJZiB5b3UgZmluZCBhbnkgZGlzY3JlcGFuY3kgYmV0d2VlbiB0aGUgb3BlcmF0aW9uIG9mIEI8dXBkYXRlLWFsdGVybmF0aXZlcz4gIgorImFuZCB0aGlzIG1hbnVhbCBwYWdlLCBpdCBpcyBhIGJ1ZywgZWl0aGVyIGluIHRoZSBpbXBsZW1lbnRhdGlvbiBvciB0aGUgIgorImRvY3VtZW50YXRpb247IHBsZWFzZSByZXBvcnQgaXQuIgorbXNnc3RyICIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo1MDQKK21zZ2lkICIiCisiVGhpcyBtYW51YWwgcGFnZSBpcyBjb3B5cmlnaHQgMTk5NywxOTk4IENoYXJsZXMgQnJpc2NvZS1TbWl0aCBhbmQgb3RoZXJzLiIKK21zZ3N0ciAiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NTA3CisjLCBmdXp6eQorbXNnaWQgIiIKKyJUaGlzIGlzIGZyZWUgZG9jdW1lbnRhdGlvbjsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSB2ZXJzaW9uIDIgb3IgIgorImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIFdBUlJBTlRZLiIKK21zZ3N0ciAiIgorItCt0YLQviDRgdCy0L7QsdC+0LTQvdCw0Y8g0L/RgNC+0LPRgNCw0LzQvNCwOyDRgdC80L7RgtGA0LjRgtC1INCj0L3QuNCy0LXRgNGB0LDQu9GM0L3Rg9GOINCe0LHRidC10YHRgtCy0LXQvdC90YPRjiDQm9C40YbQtdC90LfQuNC4IEdOVSAiCisi0LLQtdGA0YHQuNC4IDIg0LjQu9C4INCx0L7Qu9C10LUg0L/QvtC30LTQvdGO0Y4sINCz0LTQtSDQuNC30LvQvtC20LXQvdGLINGD0YHQu9C+0LLQuNGPINGA0LDRgdC/0YDQvtGB0YLRgNCw0L3QtdC90LjRjy4g0J3QmNCa0JDQmtCY0KUgIgorItCz0LDRgNCw0L3RgtC40LkuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NTEwCittc2dpZCAiQjxsbj4oMSksIEZIUywgdGhlIEZpbGVzeXN0ZW0gSGllcmFyY2h5IFN0YW5kYXJkLiIKK21zZ3N0ciAiIgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDktMDItMjciCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAxMS0wNC0yOSIKKyN+IG1zZ3N0ciAiMjAwNi0wMi0yOCIKKworI34gbXNnaWQgIjIwMDYtMDItMjgiCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwNy0wMy0wNyIKKyN+IG1zZ3N0ciAiMjAwNi0wMi0yOCIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA3LTA3LTE2IgorI34gbXNnc3RyICIyMDA2LTAyLTI4IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDktMDMtMTUiCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAxMS0wNC0yNyIKKyN+IG1zZ3N0ciAiMjAwNi0wMi0yOCIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDExLTA3LTA3IgorI34gbXNnc3RyICIyMDA2LTAyLTI4IgorCisjLCBmdXp6eQorI358IG1zZ2lkICIyMDA2LTAyLTI4IgorI34gbXNnaWQgIjIwMTAtMDQtMTgiCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgIjIwMDYtMDItMjgiCisjfiBtc2dpZCAiMjAxMC0wNy0yOSIKKyN+IG1zZ3N0ciAiMjAwNi0wMi0yOCIKKworI34gbXNnaWQgIkI8UGFja2FnZTo+IEU8bHQ+cGFja2FnZSBuYW1lRTxndD4iCisjfiBtc2dzdHIgIkI8UGFja2FnZTo+IEU8bHQ+0LjQvNGPINC/0LDQutC10YLQsEU8Z3Q+IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMTAtMTEtMjIiCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgIkI8U291cmNlOj4gRTxsdD5zb3VyY2UgbmFtZUU8Z3Q+IgorI34gbXNnaWQgIkI8TXVsdGktQXJjaDo+IEU8bHQ+c2FtZXxmb3JlaWdufGFsbG93ZWRFPGd0PiAiCisjfiBtc2dzdHIgIkI8U291cmNlOj4gRTxsdD7QuNC80Y8g0LDRgNGF0LjQstC+0LIg0YEg0LjRgdGF0L7QtNC90LjQutCw0LzQuEU8Z3Q+IgorCisjLCBmdXp6eQorI358IG1zZ2lkICIyMDA2LTAyLTI4IgorI34gbXNnaWQgIjIwMTAtMDEtMjgiCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwOC0wOC0xOCIKKyN+IG1zZ3N0ciAiMjAwNi0wMi0yOCIKKworIywgZnV6enkKKyN+IG1zZ2lkICIiCisjfiAiQjxkcGtnPiBjYW4gYWxzbyBiZSB1c2VkIGFzIGEgZnJvbnQtZW5kIHRvIEI8ZHBrZy1kZWI+KDEpLiAgVGhlIGZvbGxvd2luZyAiCisjfiAiYXJlIEI8ZHBrZy1kZWI+IGFjdGlvbnMsIGFuZCBpZiB0aGV5IGFyZSBlbmNvdW50ZXJlZCwgQjxkcGtnPiBqdXN0IHJ1bnMgIgorI34gIkI8ZHBrZy1kZWI+IHdpdGggdGhlIHBhcmFtZXRlcnMgZ2l2ZW4gdG8gaXQ6IgorI34gbXNnc3RyICIiCisjfiAiQjxkcGtnPiDQvNC+0LbQtdGCINGC0LDQutC20LUg0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGM0YHRjyDQutCw0Log0LjQvdGC0LXRgNGE0LXQudGBINC6IEI8ZHBrZy1kZWI+LiAiCisjfiAi0J3QuNC20LXRgdC70LXQtNGD0Y7RidC40LUg0LTQtdC50YHRgtCy0LjRjyDRj9Cy0LvRj9GO0YLRgdGPINC00LXQudGB0YLQstC40Y/QvNC4IEI8ZHBrZy1kZWI+LCDQuCDQtdGB0LvQuCDQvtC90LggIgorI34gItCy0YHRgtGA0LXRh9Cw0Y7RgtGB0Y8sINGC0L4gQjxkcGtnPiDQv9GA0L7RgdGC0L4g0LfQsNC/0YPRgdC60LDQtdGCIEI8ZHBrZy1kZWI+INGBINGD0LrQsNC30LDQvdC90YvQvNC4ICIKKyN+ICLQv9Cw0YDQsNC80LXRgtGA0LDQvNC4OiIKKworI34gbXNnaWQgIiIKKyN+ICIgICAgQjwtYj4sIEI8LS1idWlsZD4sXG4iCisjfiAiICAgIEI8LWM+LCBCPC0tY29udGVudHM+LFxuIgorI34gIiAgICBCPC1JPiwgQjwtLWluZm8+LFxuIgorI34gIiAgICBCPC1mPiwgQjwtLWZpZWxkPixcbiIKKyN+ICIgICAgQjwtZT4sIEI8LS1jb250cm9sPixcbiIKKyN+ICIgICAgQjwteD4sIEI8LS1leHRyYWN0PixcbiIKKyN+ICIgICAgQjwtWD4sIEI8LS12ZXh0cmFjdD4sIGFuZFxuIgorI34gIiAgICBCPC0tZnN5cy10YXJmaWxlPi5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIiAgICBCPC1iPiwgQjwtLWJ1aWxkPixcbiIKKyN+ICIgICAgQjwtYz4sIEI8LS1jb250ZW50cz4sXG4iCisjfiAiICAgIEI8LUk+LCBCPC0taW5mbz4sXG4iCisjfiAiICAgIEI8LWY+LCBCPC0tZmllbGQ+LFxuIgorI34gIiAgICBCPC1lPiwgQjwtLWNvbnRyb2w+LFxuIgorI34gIiAgICBCPC14PiwgQjwtLWV4dHJhY3Q+LFxuIgorI34gIiAgICBCPC1YPiwgQjwtLXZleHRyYWN0PiDQuFxuIgorI34gIiAgICBCPC0tZnN5cy10YXJmaWxlPi5cbiIKKworI34gbXNnaWQgIlBsZWFzZSByZWZlciB0byBCPGRwa2ctZGViPigxKSBmb3IgaW5mb3JtYXRpb24gYWJvdXQgdGhlc2UgYWN0aW9ucy4iCisjfiBtc2dzdHIgItCS0YHQtSDRjdGC0Lgg0LTQtdC50YHRgtCy0LjRjyDQvtC/0LjRgdCw0L3RiyDQsiBCPGRwa2ctZGViPigxKS4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjwtLW5ldz4sIEI8LS1vbGQ+IgorI34gbXNnc3RyICJCPC0tbmV3PiB8IEI8LS1vbGQ+IgorCisjfiBtc2dpZCAiIgorI34gIlNlbGVjdCBuZXcgb3Igb2xkIGJpbmFyeSBwYWNrYWdlIGZvcm1hdC4gVGhpcyBpcyBhIEI8ZHBrZy1kZWI+KDEpICBvcHRpb24uIgorI34gbXNnc3RyICIiCisjfiAi0JLRi9Cx0YDQsNGC0YwsINGB0L7QvtGC0LLQtdGC0YHRgtCy0LXQvdC90L4sINC90L7QstGL0Lkg0LjQu9C4INGB0YLQsNGA0YvQuSDRhNC+0YDQvNCw0YIg0L/QsNC60LXRgtCwLiDQrdGC0L4g0L/QsNGA0LDQvNC10YLRgCAiCisjfiAi0L/RgNC+0LPRgNCw0LzQvNGLIEI8ZHBrZy1kZWI+KDEpLiIKKworI34gbXNnaWQgIiIKKyN+ICJEb24ndCByZWFkIG9yIGNoZWNrIGNvbnRlbnRzIG9mIGNvbnRyb2wgZmlsZSB3aGlsZSBidWlsZGluZyBhIHBhY2thZ2UuICAiCisjfiAiVGhpcyBpcyBhIEI8ZHBrZy1kZWI+KDEpIG9wdGlvbi4iCisjfiBtc2dzdHIgIiIKKyN+ICLQndC1INGH0LjRgtCw0YLRjCDQuCDQvdC1INC/0YDQvtCy0LXRgNGP0YLRjCDRgdC+0LTQtdGA0LbQuNC80L7QtSDRhNCw0LnQu9CwIGNvbnRyb2wg0L/RgNC4INGB0L7Qt9C00LDQvdC40Lgg0L/QsNC60LXRgtCwLiAiCisjfiAi0K3RgtC+INC/0LDRgNCw0LzQtdGC0YAg0L/RgNC+0LPRgNCw0LzQvNGLIEI8ZHBrZy1kZWI+KDEpLiIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA5LTA4LTE1IgorI34gbXNnc3RyICIyMDA2LTAyLTI4IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDktMTEtMjEiCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAxMC0wMy0wNyIKKyN+IG1zZ3N0ciAiMjAwNi0wMi0yOCIKKworIywgZnV6enkKKyN+fCBtc2dpZCAiMjAwNi0wMi0yOCIKKyN+IG1zZ2lkICIyMDEwLTEwLTEyIgorI34gbXNnc3RyICIyMDA2LTAyLTI4IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDktMDgtMDciCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAxMC0wNC0xNiIKKyN+IG1zZ3N0ciAiMjAwNi0wMi0yOCIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA5LTA1LTE5IgorI34gbXNnc3RyICIyMDA2LTAyLTI4IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDktMTAtMDEiCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwOS0wNi0yNiIKKyN+IG1zZ3N0ciAiMjAwNi0wMi0yOCIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA5LTA1LTEwIgorI34gbXNnc3RyICIyMDA2LTAyLTI4IgorCisjLCBmdXp6eQorI34gbXNnaWQgIkI8LS1hZG1pbmRpcj5JPCBFPGx0PmRpcmVjdG9yeUU8Z3Q+PiIKKyN+IG1zZ3N0ciAiQjwtLXN0YXR1cy1mZCA+STxFPGx0Pm5FPGd0Pj4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwOS0wMy0wOCIKKyN+IG1zZ3N0ciAiMjAwNi0wMi0yOCIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA5LTExLTExIgorI34gbXNnc3RyICIyMDA2LTAyLTI4IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDktMDItMjYiCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwOS0wNC0xMyIKKyN+IG1zZ3N0ciAiMjAwNi0wMi0yOCIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA3LTEwLTA4IgorI34gbXNnc3RyICIyMDA2LTAyLTI4IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMTAtMDQtMTEiCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwOS0xMS0xMiIKKyN+IG1zZ3N0ciAiMjAwNi0wMi0yOCIKKworIywgZnV6enkKKyN+IG1zZ2lkICJCPC0tbGljZW5jZT4sIEI8LS1saWNlbnNlPiIKKyN+IG1zZ3N0ciAiQjxkcGtnIC0tbGljZW5jZT4gfCBCPGRwa2cgLS1saWNlbnNlPiIKKworI34gbXNnaWQgIkRpc3BsYXkgQjxkcGtnPiBsaWNlbmNlLiIKKyN+IG1zZ3N0ciAi0J/QvtC60LDQt9Cw0YLRjCDQu9C40YbQtdC90LfQuNGOIEI8ZHBrZz4uIgorCisjfiBtc2dpZCAiRU5WSVJPTk1FTlQgVkFSSUFCTEVTIgorI34gbXNnc3RyICLQn9CV0KDQldCc0JXQndCd0KvQlSDQntCa0KDQo9CW0JXQndCY0K8iCisKKyN+IG1zZ2lkICJCPERQS0dfTk9fVFNUUD4iCisjfiBtc2dzdHIgIkI8RFBLR19OT19UU1RQPiIKKworI34gbXNnaWQgIiIKKyN+ICJEZWZpbmUgdGhpcyB0byBzb21ldGhpbmcgaWYgeW91IHByZWZlciBCPGRwa2c+IHN0YXJ0aW5nIGEgbmV3IHNoZWxsICIKKyN+ICJyYXRoZXIgdGhhbiBzdXNwZW5kaW5nIGl0c2VsZiwgd2hpbGUgZG9pbmcgYSBzaGVsbCBlc2NhcGUuIgorI34gbXNnc3RyICIiCisjfiAi0JXRgdC70Lgg0L7QvdCwINC+0L/RgNC10LTQtdC70LXQvdCwLCDRgtC+IEI8ZHBrZz4g0L/RgNC4INC30LDQv9GD0YHQutC1INC+0LHQvtC70L7Rh9C60Lgg0L3QtSDQv9GA0LjQvtGB0YLQsNC90LDQstC70LjQstCw0LXRgiAiCisjfiAi0YHQtdCx0Y8sINCwINGB0L7Qt9C00LDRkdGCINC90L7QstGL0Lkg0L/RgNC+0YbQtdGB0YEuIgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDktMDYtMTMiCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwOS0wMS0wNyIKKyN+IG1zZ3N0ciAiMjAwNi0wMi0yOCIKKworIywgZnV6enkKKyN+IG1zZ2lkICJCPC0tbGljZW5zZT4sIEI8LS1saWNlbmNlPiIKKyN+IG1zZ3N0ciAiQjxkcGtnIC0tbGljZW5jZT4gfCBCPGRwa2cgLS1saWNlbnNlPiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJCPC1sPiwgQjwtLWxpY2Vuc2U+IgorI34gbXNnc3RyICJCPGRwa2cgLS1saWNlbmNlPiB8IEI8ZHBrZyAtLWxpY2Vuc2U+IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDktMDktMDYiCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjwtST5bSTxmaWxlLXBhdHRlcm4+XSIKKyN+IG1zZ3N0ciAiQjwtLWxvZz0+STzQuNC80Y8g0YTQsNC50LvQsD4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwOS0wOC0yMCIKKyN+IG1zZ3N0ciAiMjAwNi0wMi0yOCIKKworIywgZnV6enkKKyN+IG1zZ2lkICJCPC0tbGljZW5jZT58QjwtLWxpY2Vuc2U+IgorI34gbXNnc3RyICJCPGRwa2cgLS1saWNlbmNlPiB8IEI8ZHBrZyAtLWxpY2Vuc2U+IgorCisjLCBmdXp6eQorI34gbXNnaWQgIkI8LWg+IgorI34gbXNnc3RyICJCPC1CPiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJCPC0td2l0aG91dC1xdWlsdD4iCisjfiBtc2dzdHIgIkI8LXE+fEI8LS1xdWlldD4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwOC0wNC0wOSIKKyN+IG1zZ3N0ciAiMjAwNi0wMi0yOCIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA3LTAzLTA2IgorI34gbXNnc3RyICIyMDA2LTAyLTI4IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDctMDYtMTIiCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjwtWj5JPGNvbXByZXNzaW9uPiIKKyN+IG1zZ3N0ciAiQjwtdD58QjwtLXRlc3Q+IgorCisjLCBmdXp6eQorI34gbXNnaWQgIkI8LXo+STxsZXZlbD4iCisjfiBtc2dzdHIgIkI8LS1sb2c9Pkk80LjQvNGPINGE0LDQudC70LA+IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDktMDEtMDQiCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwOS0wMi0xOCIKKyN+IG1zZ3N0ciAiMjAwNi0wMi0yOCIKKworI34gbXNnaWQgIkZvcmdldCBhYm91dCB1bmluc3RhbGxlZCB1bmF2YWlsYWJsZSBwYWNrYWdlcy4iCisjfiBtc2dzdHIgItCX0LDQsdGL0YLRjCDQviDQvdC10YPRgdGC0LDQvdC+0LLQu9C10L3QvdGL0YUg0L3QtdC00L7RgdGC0YPQv9C90YvRhSDQv9Cw0LrQtdGC0LDRhS4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiaW5zdGFsbC1pbmZvIgorI34gbXNnc3RyICJCPGluc3RhbGw+IgorCisjLCBmdXp6eQorI34gbXNnaWQgIkI8Wy0tXSA+STxmaWxlbmFtZT4iCisjfiBtc2dzdHIgIkI8LS1sb2c9Pkk80LjQvNGPINGE0LDQudC70LA+IgorCisjLCBmdXp6eQorI34gbXNnaWQgIkI8LS1yZW1vdmU+IgorI34gbXNnc3RyICJCPC0tbm9jaGVjaz4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjwtLWtlZXAtb2xkPiIKKyN+IG1zZ3N0ciAiQjwtLW5ldz4gfCBCPC0tb2xkPiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJCPGVtYWNzPigxKSwgQjxpbmZvPigxKSwgQjxnemlwKDEpLj4iCisjfiBtc2dzdHIgIkI8ZGViPig1KSwgQjxkcGtnPigxKSwgQjxkcGtnLWRlYj4oMSkuIgorCisjfiBtc2dpZCAiODIyLWRhdGUiCisjfiBtc2dzdHIgIjgyMi1kYXRlIgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDctMDEtMjQiCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiODIyLWRhdGUgLSBQcmludCBkYXRlIGFuZCB0aW1lIGluIFJGQzI4MjIgZm9ybWF0IgorI34gbXNnc3RyICI4MjItZGF0ZSAtLSDQstGL0LLQvtC00LjRgiDQtNCw0YLRgyDQuCDQstGA0LXQvNGPINCyINGE0L7RgNC80LDRgtC1IFJGQzgyMiIKKworI34gbXNnaWQgIkI8ODIyLWRhdGU+IgorI34gbXNnc3RyICJCPDgyMi1kYXRlPiIKKworIywgZnV6enkKKyN+IG1zZ2lkICIiCisjfiAiQjw4MjItZGF0ZT4gZGlzcGxheXMgdGhlIGN1cnJlbnQgZGF0ZSBhbmQgdGltZSBpbiB0aGUgZm9ybWF0IGRlc2NyaWJlZCBpbiAiCisjfiAiUkZDMjgyMi4gIEl0IGRvZXMgc28gYnkgc2ltcGx5IGNhbGxpbmcgQjxkYXRlPigxKSAgd2l0aCB0aGUgQjwtUj4gb3B0aW9uLiIKKyN+IG1zZ3N0ciAiIgorI34gIkI8ODIyLWRhdGU+INC/0L7QutCw0LfRi9Cy0LDQtdGCINGC0LXQutGD0YnRg9GOINC00LDRgtGDINC4INCy0YDQtdC80Y8g0LIg0YHQvtC+0YLQstC10YLRgdGC0LLQuNC4INGBINGE0L7RgNC80LDRgtC+0LwsICIKKyN+ICLQvtC/0LjRgdCw0L3QvdGL0Lwg0LIgUkZDODIyLCDQuNGB0L/QvtC70YzQt9GD0Y8g0YfQuNGB0LvQvtCy0L7QtSDRgdC80LXRidC10L3QuNC1INGH0LDRgdC+0LLQvtCz0L4g0L/QvtGP0YHQsCwg0YHQvtCz0LvQsNGB0L3QviAiCisjfiAiUkZDMTEyMy4iCisKKyN+IG1zZ2lkICJCPDgyMi1kYXRlPiBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudHMgb3Igb3B0aW9ucy4iCisjfiBtc2dzdHIgIkI8ODIyLWRhdGU+INC90LUg0LjRgdC/0L7Qu9GM0LfRg9C10YIg0LDRgNCz0YPQvNC10L3RgtC+0LIg0LjQu9C4INC/0LDRgNCw0LzQtdGC0YDQvtCyLiIKKworI34gbXNnaWQgIlRoaXMgZmFjaWxpdHkgcmVhbGx5IG91Z2h0IHRvIGJlIHBhcnQgb2YgQjxkYXRlPigxKS4iCisjfiBtc2dzdHIgItCd0LAg0YHQsNC80L7QvCDQtNC10LvQtSDRjdGC0YMg0LfQsNC00LDRh9GDINC00L7Qu9C20L3QsCDQstGL0L/QvtC70L3Rj9GC0Ywg0L/RgNC+0LPRgNCw0LzQvNCwIEI8ZGF0ZT4oMSkuIgorCisjLCBmdXp6eQorI34gbXNnaWQgIkI8Y2xlYW51cC1pbmZvPiBbSTxvcHRpb25zPl0gW0I8LS0+XSBbSTxkaXJuYW1lPl0iCisjfiBtc2dzdHIgIkI8ZHBrZz4gW0k80L/QsNGA0LDQvNC10YLRgNGLPl0gSTzQtNC10LnRgdGC0LLQuNC1PiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJCPC0tdW5zYWZlPiIKKyN+IG1zZ3N0ciAiQjx1bnBhY2tlZD4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwOC0wMS0zMCIKKyN+IG1zZ3N0ciAiMjAwNi0wMi0yOCIKKworIywgZnV6enkKKyN+IG1zZ2lkICJCPEVycm9yOj4gRTxsdD5lcnJvciBkZXRhaWxzRTxndD4iCisjfiBtc2dzdHIgIkI8UHJpb3JpdHk6PiBFPGx0PtC/0YDQuNC+0YDQuNGC0LXRgkU8Z3Q+IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDctMTAtMDYiCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwOC0wMy0xNCIKKyN+IG1zZ3N0ciAiMjAwNi0wMi0yOCIKKworIywgZnV6enkKKyN+IG1zZ2lkICJCPC1FPiIKKyN+IG1zZ3N0ciAiQjwtQj4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjwtVz4iCisjfiBtc2dzdHIgIkI8LUI+IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDctMDktMDgiCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwOC0wMy0wMiIKKyN+IG1zZ3N0ciAiMjAwNi0wMi0yOCIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA4LTAxLTEzIgorI34gbXNnc3RyICIyMDA2LTAyLTI4IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDgtMDMtMjUiCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwOC0wMy0xNiIKKyN+IG1zZ3N0ciAiMjAwNi0wMi0yOCIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA4LTA0LTA4IgorI34gbXNnc3RyICIyMDA2LTAyLTI4IgorCisjfiBtc2dpZCAiIgorI34gIkEgc2ltcGxlciBvbmUtc2hvdCBjb21tYW5kIHRvIHJldHJpZXZlIGFuZCB1cGRhdGUgdGhlIEk8YXZhaWxhYmxlPiBmaWxlICIKKyN+ICJpcyBCPGRzZWxlY3QgdXBkYXRlPi4iCisjfiBtc2dzdHIgIiIKKyN+ICLQlNC70Y8g0YPQv9GA0L7RidC10L3QuNGPINC/0YDQvtGG0LXQtNGD0YDRiyDQv9C+0LvRg9GH0LXQvdC40Y8g0Lgg0L7QsdC90L7QstC70LXQvdC40Y8g0YTQsNC50LvQsCBJPGF2YWlsYWJsZT4g0LzQvtC20L3QviAiCisjfiAi0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMINC60L7QvNCw0L3QtNGDIEI8ZHNlbGVjdCB1cGRhdGU+LiIKKworIywgZnV6enkKKyN+IG1zZ2lkICIiCisjfiAiU2VuZCBwYWNrYWdlIHN0YXR1cyBpbmZvIHRvIGZpbGUgZGVzY3JpcHRvciBJPEU8bHQ+bkU8Z3Q+Pi4gVGhpcyBjYW4gYmUgIgorI34gImdpdmVuIG11bHRpcGxlIHRpbWVzLiBTdGF0dXMgdXBkYXRlcyBhcmUgb2YgdGhlIGZvcm0gYHN0YXR1czogIgorI34gIkU8bHQ+cGtnRTxndD46IEU8bHQ+cGtnIHN0YXRlRTxndD4nLiAgRXJyb3JzIGFyZSByZXBvcnRlZCBhcyBgc3RhdHVzOiAiCisjfiAiRTxsdD5wa2dFPGd0PjogZXJyb3I6IGV4dGVuZC1lcnJvci1tZXNzYWdlJy4gIENvbmZpZ3VyYXRpb24gZmlsZSAiCisjfiAiY29uZmxpY3RzIGFyZSByZXBvcnRlZCBhcyBgc3RhdHVzOiBjb25mZmlsZS1wcm9tcHQ6IGNvbmZmaWxlIDogJ2N1cnJlbnQtIgorI34gImNvbmZmaWxlJyAnbmV3LWNvbmZmaWxlJyB1c2VyZWRpdGVkIGRpc3RlZGl0ZWQnLiIKKyN+IG1zZ3N0ciAiIgorI34gItCf0L7RgdC70LDRgtGMINC40L3RhNC+0YDQvNCw0YbQuNGOINC+INGB0L7RgdGC0L7Rj9C90LjQuCDQv9Cw0LrQtdGC0LAg0LIg0YTQsNC50LvQvtCy0YvQuSDQtNC10YHQutGA0LjQv9GC0L7RgCAiCisjfiAiSTxFPGx0Pm5FPGd0Pj4uINCt0YLQvtGCINC/0LDRgNCw0LzQtdGC0YAg0LzQvtC20L3QviDQt9Cw0LTQsNCy0LDRgtGMINC90LXRgdC60L7Qu9GM0LrQviDRgNCw0LcuINCt0YLQsCAiCisjfiAi0LjQvdGE0L7RgNC80LDRhtC40Y8g0LLRi9C00LDRkdGC0YHRjyDQsiDQstC40LTQtSBgc3RhdHVzOiBFPGx0PnBrZ0U8Z3Q+OiBFPGx0PnBrZyBxc3RhdGVFPGd0PicuICIKKyN+ICLQntGI0LjQsdC60Lgg0LLRi9C00LDRjtGC0YHRjyDQsiDRhNC+0YDQvNC1IGBzdGF0dXM6IEU8bHQ+cGtnRTxndD46IGVycm9yOiBleHRlbmQtZXJyb3ItIgorI34gIm1lc3NhZ2UnLiDQmtC+0L3RhNC70LjQutGC0Ysg0LrQvtC90YTQuNCz0YPRgNCw0YbQuNC+0L3QvdGL0YUg0YTQsNC50LvQvtCyINCy0YvQtNCw0Y7RgtGB0Y8g0LIg0YTQvtGA0LzQtSBgc3RhdHVzOiAiCisjfiAiY29uZmZpbGUtcHJvbXB0OiBjb25mZmlsZSA6ICdjdXJyZW50LWNvbmZmaWxlJyAnbmV3LWNvbmZmaWxlJyB1c2VyZWRpdGVkICIKKyN+ICJkaXN0ZWRpdGVkJyIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA4LTAxLTAzIgorI34gbXNnc3RyICIyMDA2LTAyLTI4IgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDctMDktMjQiCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwNy0wMy0wOCIKKyN+IG1zZ3N0ciAiMjAwNi0wMi0yOCIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA3LTA5LTI4IgorI34gbXNnc3RyICIyMDA2LTAyLTI4IgorCisjfiBtc2dpZCAibWFpbHRvOmpvZXloQGRlYmlhbi5vcmciCisjfiBtc2dzdHIgIm1haWx0bzpqb2V5aEBkZWJpYW4ub3JnIgorCisjLCBmdXp6eQorI34gbXNnaWQgIkU8bHQ+am9leWhAZGViaWFuLm9yZ0U8Z3Q+IgorI34gbXNnc3RyICJFPGx0PmpvZXloQGRlYmlhbi5vcmdFPGd0Pi4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAibWFpbHRvOndha2tlcm1hQGRlYmlhbi5vcmciCisjfiBtc2dzdHIgIm1haWx0bzpqb2V5aEBkZWJpYW4ub3JnIgorCisjLCBmdXp6eQorI34gbXNnaWQgIkU8bHQ+d2Fra2VybWFAZGViaWFuLm9yZ0U8Z3Q+IgorI34gbXNnc3RyICJFPGx0PmpvZXloQGRlYmlhbi5vcmdFPGd0Pi4iCisKKyN+IG1zZ2lkICIiCisjfiAiU2VlIEk8L3Vzci9zaGFyZS9kb2MvZHBrZy9USEFOS1M+IGZvciB0aGUgbGlzdCBvZiBwZW9wbGUgd2hvIGhhdmVcbiIKKyN+ICJjb250cmlidXRlZCB0byBCPGRwa2c+LlxuIgorI34gbXNnc3RyICIiCisjfiAi0KHQvNC+0YLRgNC40YLQtSDRhNCw0LnQuyBJPC91c3Ivc2hhcmUvZG9jL2Rwa2cvVEhBTktTPiwg0LPQtNC1INC/0YDQuNCy0LXQtNGR0L0g0YHQv9C40YHQvtC6INGC0LXRhSwg0LrRgtC+ICIKKyN+ICLRg9GH0LDRgdGC0LLQvtCy0LDQuyDQsiDRgNCw0LfRgNCw0LHQvtGC0LrQtSBCPGRwa2c+LlxuIgorCisjLCBmdXp6eQorI34gbXNnaWQgIjIwMDctMDgtMzEiCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwNy0wNS0xNSIKKyN+IG1zZ3N0ciAiMjAwNi0wMi0yOCIKKworI34gbXNnaWQgIiIKKyN+ICJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgdmVyc2lvbiAyIG9yICIKKyN+ICJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS4iCisjfiBtc2dzdHIgIiIKKyN+ICLQrdGC0L4g0YHQstC+0LHQvtC00L3QsNGPINC/0YDQvtCz0YDQsNC80LzQsDsg0YHQvNC+0YLRgNC40YLQtSDQo9C90LjQstC10YDRgdCw0LvRjNC90YPRjiDQntCx0YnQtdGB0YLQstC10L3QvdGD0Y4g0JvQuNGG0LXQvdC30LjQuCBHTlUgIgorI34gItCy0LXRgNGB0LjQuCAyINC40LvQuCDQsdC+0LvQtdC1INC/0L7Qt9C00L3RjtGOLCDQs9C00LUg0LjQt9C70L7QttC10L3RiyDRg9GB0LvQvtCy0LjRjyDRgNCw0YHQv9GA0L7RgdGC0YDQsNC90LXQvdC40Y8uINCd0JjQmtCQ0JrQmNClICIKKyN+ICLQs9Cw0YDQsNC90YLQuNC5LiIKKworI34gbXNnaWQgIkI8ZHBrZyAtQz4gfCBCPC0tYXVkaXQ+IgorI34gbXNnc3RyICJCPGRwa2cgLUM+IHwgQjwtLWF1ZGl0PiIKKworI34gbXNnaWQgIkI8ZHBrZyAtLWhlbHA+IgorI34gbXNnc3RyICJCPGRwa2cgLS1oZWxwPiIKKworI34gbXNnaWQgIkI8ZHBrZyAtRGggPnxCPCAtLWRlYnVnPWhlbHA+IgorI34gbXNnc3RyICJCPGRwa2cgLURoID58QjwgLS1kZWJ1Zz1oZWxwPiIKKworI34gbXNnaWQgIkI8ZHBrZyAtLWxpY2VuY2U+IHwgQjxkcGtnIC0tbGljZW5zZT4iCisjfiBtc2dzdHIgIkI8ZHBrZyAtLWxpY2VuY2U+IHwgQjxkcGtnIC0tbGljZW5zZT4iCisKKyN+IG1zZ2lkICJCPGRwa2cgLS12ZXJzaW9uPiIKKyN+IG1zZ3N0ciAiQjxkcGtnIC0tdmVyc2lvbj4iCisKKyN+IG1zZ2lkICJCPC0tcm9vdD0+STxkaXI+IHwgQjwtLWFkbWluZGlyPT5JPGRpcj4gfCBCPC0taW5zdGRpcj0+STxkaXI+IgorI34gbXNnc3RyICJCPC0tcm9vdD0+STxkaXI+IHwgQjwtLWFkbWluZGlyPT5JPGRpcj4gfCBCPC0taW5zdGRpcj0+STxkaXI+IgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICJDb3B5cmlnaHQgMTk5NSwxOTk2IEVyaWNrIEJyYW5kZXJob3JzdC4gIEI8ZHBrZy1uYW1lPiBpcyBmcmVlIHNvZnR3YXJlOyAiCisjfiAic2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSB2ZXJzaW9uIDIgb3IgbGF0ZXIgZm9yIGNvcHlpbmcgIgorI34gImNvbmRpdGlvbnMuIFRoZXJlIGlzIEI8bm8+IHdhcnJhbnR5LiIKKyN+IG1zZ3N0ciAiIgorI34gItCt0YLQviDRgdCy0L7QsdC+0LTQvdCw0Y8g0L/RgNC+0LPRgNCw0LzQvNCwOyDRgdC80L7RgtGA0LjRgtC1INCj0L3QuNCy0LXRgNGB0LDQu9GM0L3Rg9GOINCe0LHRidC10YHRgtCy0LXQvdC90YPRjiDQm9C40YbQtdC90LfQuNC4IEdOVSAiCisjfiAi0LLQtdGA0YHQuNC4IDIg0LjQu9C4INCx0L7Qu9C10LUg0L/QvtC30LTQvdGO0Y4sINCz0LTQtSDQuNC30LvQvtC20LXQvdGLINGD0YHQu9C+0LLQuNGPINGA0LDRgdC/0YDQvtGB0YLRgNCw0L3QtdC90LjRjy4g0J3QmNCa0JDQmtCY0KUgIgorI34gItCz0LDRgNCw0L3RgtC40LkuIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICJDb3B5cmlnaHQgMTk5NCwgSWFuIEphY2tzb24uICBCPGluc3RhbGwtaW5mbz4gaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSAiCisjfiAiR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgdmVyc2lvbiAyIG9yIGxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuICIKKyN+ICJUaGVyZSBpcyBJPG5vPiB3YXJyYW50eS4iCisjfiBtc2dzdHIgIiIKKyN+ICLQrdGC0L4g0YHQstC+0LHQvtC00L3QsNGPINC/0YDQvtCz0YDQsNC80LzQsDsg0YHQvNC+0YLRgNC40YLQtSDQo9C90LjQstC10YDRgdCw0LvRjNC90YPRjiDQntCx0YnQtdGB0YLQstC10L3QvdGD0Y4g0JvQuNGG0LXQvdC30LjQuCBHTlUgIgorI34gItCy0LXRgNGB0LjQuCAyINC40LvQuCDQsdC+0LvQtdC1INC/0L7Qt9C00L3RjtGOLCDQs9C00LUg0LjQt9C70L7QttC10L3RiyDRg9GB0LvQvtCy0LjRjyDRgNCw0YHQv9GA0L7RgdGC0YDQsNC90LXQvdC40Y8uINCd0JjQmtCQ0JrQmNClICIKKyN+ICLQs9Cw0YDQsNC90YLQuNC5LiIKKworIywgZnV6enkKKyN+IG1zZ2lkICIiCisjfiAiRGViaWFuIHVwZGF0ZS1hbHRlcm5hdGl2ZXMgaXMgY29weXJpZ2h0IDE5OTUgSWFuIEphY2tzb24uIEl0IGlzIGZyZWUgIgorI34gInNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbmNlIHZlcnNpb24gMiBvciBsYXRlciBmb3IgIgorI34gImNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuIgorI34gbXNnc3RyICIiCisjfiAi0K3RgtC+INGB0LLQvtCx0L7QtNC90LDRjyDQv9GA0L7Qs9GA0LDQvNC80LA7INGB0LzQvtGC0YDQuNGC0LUg0KPQvdC40LLQtdGA0YHQsNC70YzQvdGD0Y4g0J7QsdGJ0LXRgdGC0LLQtdC90L3Rg9GOINCb0LjRhtC10L3Qt9C40LggR05VICIKKyN+ICLQstC10YDRgdC40LggMiDQuNC70Lgg0LHQvtC70LXQtSDQv9C+0LfQtNC90Y7Rjiwg0LPQtNC1INC40LfQu9C+0LbQtdC90Ysg0YPRgdC70L7QstC40Y8g0YDQsNGB0L/RgNC+0YHRgtGA0LDQvdC10L3QuNGPLiDQndCY0JrQkNCa0JjQpSAiCisjfiAi0LPQsNGA0LDQvdGC0LjQuS4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiIgorI34gIlRoaXMgbWFudWFsIHBhZ2UgaXMgY29weXJpZ2h0IDE5OTcvOTggQ2hhcmxlcyBCcmlzY29lLVNtaXRoLiAgVGhpcyBpcyAiCisjfiAiZnJlZSBkb2N1bWVudGF0aW9uOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbmNlIHZlcnNpb24gMiBvciBsYXRlciAiCisjfiAiZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gV0FSUkFOVFkuIgorI34gbXNnc3RyICIiCisjfiAi0K3RgtC+INGB0LLQvtCx0L7QtNC90LDRjyDQv9GA0L7Qs9GA0LDQvNC80LA7INGB0LzQvtGC0YDQuNGC0LUg0KPQvdC40LLQtdGA0YHQsNC70YzQvdGD0Y4g0J7QsdGJ0LXRgdGC0LLQtdC90L3Rg9GOINCb0LjRhtC10L3Qt9C40LggR05VICIKKyN+ICLQstC10YDRgdC40LggMiDQuNC70Lgg0LHQvtC70LXQtSDQv9C+0LfQtNC90Y7Rjiwg0LPQtNC1INC40LfQu9C+0LbQtdC90Ysg0YPRgdC70L7QstC40Y8g0YDQsNGB0L/RgNC+0YHRgtGA0LDQvdC10L3QuNGPLiDQndCY0JrQkNCa0JjQpSAiCisjfiAi0LPQsNGA0LDQvdGC0LjQuS4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwNi0wNC0wOSIKKyN+IG1zZ3N0ciAiMjAwNi0wMi0yOCIKKworIywgZnV6enkKKyN+IG1zZ2lkICIyMDA3LTAzLTEzIgorI34gbXNnc3RyICIyMDA2LTAyLTI4IgorCisjfiBtc2dpZCAiSTxTdGFuZGFyZCBmb3IgdGhlIEZvcm1hdCBvZiBBUlBBIEludGVybmV0IFRleHQgTWVzc2FnZXM+IChSRkM4MjIpLCIKKyN+IG1zZ3N0ciAiSTxTdGFuZGFyZCBmb3IgdGhlIEZvcm1hdCBvZiBBUlBBIEludGVybmV0IFRleHQgTWVzc2FnZXM+IChSRkM4MjIpLCIKKworI34gbXNnaWQgIiIKKyN+ICJJPFJlcXVpcmVtZW50cyBmb3IgSW50ZXJuZXQgSG9zdHMgLS0gQXBwbGljYXRpb24gYW5kIFN1cHBvcnQ+IChSRkMxMTIzKSAiCisjfiAic2VjdGlvbiA1LjIuMTQsIgorI34gbXNnc3RyICIiCisjfiAiSTxSZXF1aXJlbWVudHMgZm9yIEludGVybmV0IEhvc3RzIC0tIEFwcGxpY2F0aW9uIGFuZCBTdXBwb3J0PiAoUkZDMTEyMykgIgorI34gInNlY3Rpb24gNS4yLjE0LCIKKworI34gbXNnaWQgIkI8ZGF0ZT4oMSkuIgorI34gbXNnc3RyICJCPGRhdGU+KDEpLiIKKworI34gbXNnaWQgIiIKKyN+ICJCPDgyMi1kYXRlPiBhbmQgdGhpcyBtYW5wYWdlIHdlcmUgd3JpdHRlbiBieSBJYW4gSmFja3Nvbi4gVGhleSBhcmUgaGVyZWJ5ICIKKyN+ICJwbGFjZWQgYnkgaGltIGludG8gdGhlIHB1YmxpYyBkb21haW4uIgorI34gbXNnc3RyICIiCisjfiAiQjw4MjItZGF0ZT4g0Lgg0Y3RgtGDINGB0YLRgNCw0L3QuNGG0YMg0YDRg9C60L7QstC+0LTRgdGC0LLQsCDQvdCw0L/QuNGB0LDQuyDQuCDQv9C10YDQtdC00LDQuyDQsiDQvtCx0YnQtdGB0YLQstC10L3QvdC+0LUgIgorI34gItC00L7RgdGC0L7Rj9C90LjQtSBJYW4gSmFja3Nvbi4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwNi0wNS0yMyIKKyN+IG1zZ3N0ciAiMjAwNi0wMi0yOCIKKworIywgZnV6enkKKyN+IG1zZ2lkICJCPC0taW5mbz4sIEI8LUk+IgorI34gbXNnc3RyICJCPC0tbmV3PiB8IEI8LS1vbGQ+IgorCisjLCBmdXp6eQorI34gbXNnaWQgIkI8LS1zaG93PiwgQjwtVz4iCisjfiBtc2dzdHIgIkI8LS1uZXc+IHwgQjwtLW9sZD4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjwtLWZpZWxkPiwgQjwtZj4iCisjfiBtc2dzdHIgIkI8LS1uZXc+IHwgQjwtLW9sZD4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjwtLWNvbnRyb2w+LCBCPC1lPiIKKyN+IG1zZ3N0ciAiSTxjb250cm9sPiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJCPC0taGVscD4sIEI8LWg+IgorI34gbXNnc3RyICJCPC0tbmV3PiB8IEI8LS1vbGQ+IgorCisjLCBmdXp6eQorI34gbXNnaWQgIlByaW50cyBCPGRwa2ctZGViPidzIHZlcnNpb24gbnVtYmVyLiIKKyN+IG1zZ3N0ciAi0J/QvtC60LDQt9Cw0YLRjCDQuNC90YTQvtGA0LzQsNGG0LjRjiDQviDQstC10YDRgdC40LggQjxkcGtnPi4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjwtLWxpY2VuY2U+IgorI34gbXNnc3RyICJCPC0tbm9jaGVjaz4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiT1RIRVIgT1BUSU9OUyIKKyN+IG1zZ3N0ciAi0J/QkNCg0JDQnNCV0KLQoNCrIgorCisjLCBmdXp6eQorI34gbXNnaWQgIkI8LWgsIC0taGVscD4iCisjfiBtc2dzdHIgIkI8ZHBrZyAtLWhlbHA+IgorCisjLCBmdXp6eQorI34gbXNnaWQgIkI8ZHBrZy1xdWVyeT4gQjwtbD58QjwtLWxpc3Q+IEk8cGFja2FnZS1uYW1lLXBhdHRlcm4+IC4uLiIKKyN+IG1zZ3N0ciAiQjxkcGtnIC0tZ2V0LXNlbGVjdGlvbnM+IFtJPNGI0LDQsdC70L7QvSDQuNC80LXQvdC4INC/0LDQutC10YLQsD4uLi5dIgorCisjLCBmdXp6eQorI34gbXNnaWQgIkI8ZHBrZy1xdWVyeT4gQjwtVz58QjwtLXNob3c+IEk8cGFja2FnZS1uYW1lLXBhdHRlcm4+IC4uLiIKKyN+IG1zZ3N0ciAiQjxkcGtnIC0tZ2V0LXNlbGVjdGlvbnM+IFtJPNGI0LDQsdC70L7QvSDQuNC80LXQvdC4INC/0LDQutC10YLQsD4uLi5dIgorCisjLCBmdXp6eQorI34gbXNnaWQgIkI8ZHBrZy1xdWVyeT4gQjwtcz58QjwtLXN0YXR1cz4gSTxwYWNrYWdlLW5hbWU+IC4uLiIKKyN+IG1zZ3N0ciAiQjxkcGtnIC1pPiB8IEI8LS1pbnN0YWxsPiBJPNC40LzRjyDRhNCw0LnQu9CwINC/0LDQutC10YLQsD4uLi4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjxkcGtnLXF1ZXJ5PiBCPC1MPnxCPC0tbGlzdGZpbGVzPiBJPHBhY2thZ2UtbmFtZT4gLi4uIgorI34gbXNnc3RyICJCPGRwa2cgLWk+IHwgQjwtLWluc3RhbGw+IEk80LjQvNGPINGE0LDQudC70LAg0L/QsNC60LXRgtCwPi4uLiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJCPGRwa2ctcXVlcnk+IEI8LXA+fEI8LS1wcmludC1hdmFpbD4gSTxwYWNrYWdlLW5hbWU+IC4uLiIKKyN+IG1zZ3N0ciAiQjxkcGtnIC1BPiB8IEI8LS1yZWNvcmQtYXZhaWw+IEk80LjQvNGPINGE0LDQudC70LAg0L/QsNC60LXRgtCwPiAuLi4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjxkcGtnLXF1ZXJ5PiBCPC0tbGljZW5jZT58QjwtLWxpY2Vuc2U+IgorI34gbXNnc3RyICJCPGRwa2cgLS1saWNlbmNlPiB8IEI8ZHBrZyAtLWxpY2Vuc2U+IgorCisjLCBmdXp6eQorI34gbXNnaWQgIkI8ZHBrZy1xdWVyeT4gQjwtLXZlcnNpb24+IgorI34gbXNnc3RyICJCPGRwa2cgLS12ZXJzaW9uPiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJEaXNwbGF5IGxpY2VuY2UgYW5kIGNvcHlyaWdodCBpbmZvcm1hdGlvbi4iCisjfiBtc2dzdHIgItCf0L7QutCw0LfQsNGC0Ywg0LjQvdGE0L7RgNC80LDRhtC40Y4g0L4g0LLQtdGA0YHQuNC4IEI8ZHBrZz4uIgorCisjLCBmdXp6eQorI34gbXNnaWQgIkRpc3BsYXkgdmVyc2lvbiBpbmZvcm1hdGlvbi4iCisjfiBtc2dzdHIgItCf0L7QutCw0LfQsNGC0Ywg0LjQvdGE0L7RgNC80LDRhtC40Y4g0L4g0LLQtdGA0YHQuNC4IEI8ZHBrZz4uIgorCisjLCBmdXp6eQorI34gbXNnaWQgIkNPTU1PTiBPUFRJT05TIgorI34gbXNnc3RyICLQn9CQ0KDQkNCc0JXQotCg0KsiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjwteD4iCisjfiBtc2dzdHIgIkI8LUI+IgorCisjLCBmdXp6eQorI34gbXNnaWQgIkI8LUlFPGx0PmZpbGVuYW1lRTxndD4+IgorI34gbXNnc3RyICJCPC0tbG9nPT5JPNC40LzRjyDRhNCw0LnQu9CwPiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJCPGRwa2ctZ2VuY29udHJvbD4gZG9lcyBub3QgdGFrZSBhbnkgbm9uLW9wdGlvbiBhcmd1bWVudHMuIgorI34gbXNnc3RyICJCPDgyMi1kYXRlPiDQvdC1INC40YHQv9C+0LvRjNC30YPQtdGCINCw0YDQs9GD0LzQtdC90YLQvtCyINC40LvQuCDQv9Cw0YDQsNC80LXRgtGA0L7Qsi4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjxkcGtnLWdlbmNoYW5nZXM+IGRvZXMgbm90IHRha2UgYW55IG5vbi1vcHRpb24gYXJndW1lbnRzLiIKKyN+IG1zZ3N0ciAiQjw4MjItZGF0ZT4g0L3QtSDQuNGB0L/QvtC70YzQt9GD0LXRgiDQsNGA0LPRg9C80LXQvdGC0L7QsiDQuNC70Lgg0L/QsNGA0LDQvNC10YLRgNC+0LIuIgorCisjLCBmdXp6eQorI34gbXNnaWQgIkI8ZHBrZy1idWlsZHBhY2thZ2U+IGRvZXMgbm90IHRha2UgYW55IG5vbi1vcHRpb24gYXJndW1lbnRzLiIKKyN+IG1zZ3N0ciAiQjw4MjItZGF0ZT4g0L3QtSDQuNGB0L/QvtC70YzQt9GD0LXRgiDQsNGA0LPRg9C80LXQvdGC0L7QsiDQuNC70Lgg0L/QsNGA0LDQvNC10YLRgNC+0LIuIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICJCPGRwa2ctcGFyc2VjaGFuZ2Vsb2c+IGRvZXMgbm90IHRha2UgYW55IG5vbi1jb21tb24gb3B0aW9ucyBvciBub24tb3B0aW9uICIKKyN+ICJhcmd1bWVudHMuIgorI34gbXNnc3RyICJCPDgyMi1kYXRlPiDQvdC1INC40YHQv9C+0LvRjNC30YPQtdGCINCw0YDQs9GD0LzQtdC90YLQvtCyINC40LvQuCDQv9Cw0YDQsNC80LXRgtGA0L7Qsi4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiIgorI34gIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSB2ZXJzaW9uIDIgb3IgIgorI34gImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIFdBUlJBTlRZLiBTZWUgQjwvdXNyL3NoYXJlL2RvYy8iCisjfiAiZHBrZy9jb3B5cmlnaHQ+IGFuZCBCPC91c3Ivc2hhcmUvY29tbW9uLWxpY2Vuc2VzL0dQTD4gZm9yIGRldGFpbHMuIgorI34gbXNnc3RyICIiCisjfiAi0K3RgtC+INGB0LLQvtCx0L7QtNC90LDRjyDQv9GA0L7Qs9GA0LDQvNC80LA7INGB0LzQvtGC0YDQuNGC0LUg0KPQvdC40LLQtdGA0YHQsNC70YzQvdGD0Y4g0J7QsdGJ0LXRgdGC0LLQtdC90L3Rg9GOINCb0LjRhtC10L3Qt9C40LggR05VICIKKyN+ICLQstC10YDRgdC40LggMiDQuNC70Lgg0LHQvtC70LXQtSDQv9C+0LfQtNC90Y7Rjiwg0LPQtNC1INC40LfQu9C+0LbQtdC90Ysg0YPRgdC70L7QstC40Y8g0YDQsNGB0L/RgNC+0YHRgtGA0LDQvdC10L3QuNGPLiDQndCY0JrQkNCa0JjQpSAiCisjfiAi0LPQsNGA0LDQvdGC0LjQuS4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjxkcGtnLXNwbGl0PiBCPC1sPnxCPC0tbGlzdHE+IgorI34gbXNnc3RyICJCPGRwa2cgLUM+IHwgQjwtLWF1ZGl0PiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJCPC0tam9pbj4sIEI8LWo+IgorI34gbXNnc3RyICJCPC0tbmV3PiB8IEI8LS1vbGQ+IgorCisjLCBmdXp6eQorI34gbXNnaWQgIkI8LS1ucHF1aWV0PiwgQjwtUT4iCisjfiBtc2dzdHIgIkI8LS1uZXc+IHwgQjwtLW9sZD4iCisKKyN+IG1zZ2lkICJCPHN0YXJ0LXN0b3AtZGFlbW9uPiBCPC1IPnxCPC0taGVscD4iCisjfiBtc2dzdHIgIkI8c3RhcnQtc3RvcC1kYWVtb24+IEI8LUg+fEI8LS1oZWxwPiIKKworI34gbXNnaWQgIkI8c3RhcnQtc3RvcC1kYWVtb24+IEI8LVY+fEI8LS12ZXJzaW9uPiIKKyN+IG1zZ3N0ciAiQjxzdGFydC1zdG9wLWRhZW1vbj4gQjwtVj58QjwtLXZlcnNpb24+IgorCisjfiBtc2dpZCAiQjwtSD58QjwtLWhlbHA+IgorI34gbXNnc3RyICJCPC1IPnxCPC0taGVscD4iCisKKyN+IG1zZ2lkICJQcmludCB2ZXJzaW9uIGluZm9ybWF0aW9uOyB0aGVuIGV4aXQuIgorI34gbXNnc3RyICLQktGL0LTQsNGC0Ywg0LjQvdGE0L7RgNC80LDRhtC40Y4g0L4g0LLQtdGA0YHQuNC4INC4INC30LDQstC10YDRiNC40YLRjCDRgNCw0LHQvtGC0YMuIgorCisjfiBtc2dpZCAiIgorI34gIlNldCBieSBCPGRwa2c+IHRvIHRoZSBmaWxlbmFtZSBvZiB0aGUgb2xkIGNvbmZpZ3VyYXRpb24gZmlsZSB3aGVuIHlvdSAiCisjfiAic3RhcnQgYSBzaGVsbCB0byBleGFtaW5lIGEgY2hhbmdlZCBjb25maWd1cmF0aW9uLiAgZmlsZS4iCisjfiBtc2dzdHIgIiIKKyN+ICLQo9GB0YLQsNC90LDQstC70LjQstCw0LXRgtGB0Y8gQjxkcGtnPiDRgNCw0LLQvdC+0Lkg0LjQvNC10L3QtdC8INGB0YLQsNGA0L7Qs9C+INC60L7QvdGE0LjQs9GD0YDQsNGG0LjQvtC90L3QvtCz0L4g0YTQsNC50LvQsCDQv9GA0LggIgorI34gItC30LDQv9GD0YHQutC1INC+0LHQvtC70L7Rh9C60Lgg0LTQu9GPINC+0L/RgNC10LTQtdC70LXQvdC40Y8g0LjQt9C80LXQvdC10L3QuNGPINC60L7QvdGE0LjQs9GD0YDQsNGG0LjQuC4gIGZpbGUuIgorCisjfiBtc2dpZCAiQjxEUEtHX05FV19DT05GRklMRT4iCisjfiBtc2dzdHIgIkI8RFBLR19ORVdfQ09ORkZJTEU+IgorCisjfiBtc2dpZCAiIgorI34gIlNldCBieSBCPGRwa2c+IHRvIHRoZSBmaWxlbmFtZSBvZiB0aGUgbmV3dmVyc2lvbiBvZiBhIGNvbmZpZ3VyYXRpb24gZmlsZSAiCisjfiAid2hlbiB5b3Ugc3RhcnQgYSBzaGVsbCB0byBleGFtaW5lIGEgY2hhbmdlZCBjb25maWd1cmF0aW9uLiAgZmlsZS4iCisjfiBtc2dzdHIgIiIKKyN+ICLQo9GB0YLQsNC90LDQstC70LjQstCw0LXRgtGB0Y8gQjxkcGtnPiDRgNCw0LLQvdC+0Lkg0LjQvNC10L3QtdC8INC90L7QstC+0LPQviDQutC+0L3RhNC40LPRg9GA0LDRhtC40L7QvdC90L7Qs9C+INGE0LDQudC70LAg0L/RgNC4ICIKKyN+ICLQt9Cw0L/Rg9GB0LrQtSDQvtCx0L7Qu9C+0YfQutC4INC00LvRjyDQvtC/0YDQtdC00LXQu9C10L3QuNGPINC40LfQvNC10L3QtdC90LjRjyDQutC+0L3RhNC40LPRg9GA0LDRhtC40LguICBmaWxlLiIKKworI34gbXNnaWQgIiIKKyN+ICJCPGF1dG8tc2VsZWN0PigqKTogU2VsZWN0IHBhY2thZ2VzIHRvIGluc3RhbGwgdGhlbSwgYW5kIGRlc2VsZWN0IHBhY2thZ2VzICIKKyN+ICJ0byByZW1vdmUgdGhlbS4iCisjfiBtc2dzdHIgIiIKKyN+ICJCPGF1dG8tc2VsZWN0PigqKTog0JLRi9Cx0YDQsNGC0Ywg0L/QsNC60LXRgtGLINC00LvRjyDRg9GB0YLQsNC90L7QstC60LgsINC4INC+0YLQvNC10L3QuNGC0Ywg0LLRi9C00LXQu9C10L3QuNC1INC00LvRjyAiCisjfiAi0YPQtNCw0LvQtdC90LjRjy4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiMjAwNy0wNy0xOCIKKyN+IG1zZ3N0ciAiMjAwNi0wMi0yOCIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL3BvL3N2LmFkZCBiL2Rwa2ctMS4xNi4xLjEvbWFuL3BvL3N2LmFkZApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44YjY0NDU1Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vcG8vc3YuYWRkCkBAIC0wLDAgKzEsMyBAQAorUE80QS1IRUFERVI6bW9kZT1hZnRlcjtwb3NpdGlvbj1eXC5USDtiZWdpbmJvdW5kYXJ5PUZha2VQbzRhQm91bmRhcnkKKy5TSCAiw5ZWRVJTw4RUVE5JTkciCitQZXRlciBLcmVmdGluZyBvY2ggRGFuaWVsIE55bGFuZGVyLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vcG8vc3YucG8gYi9kcGtnLTEuMTYuMS4xL21hbi9wby9zdi5wbwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jZTAxMmEzCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vcG8vc3YucG8KQEAgLTAsMCArMSwxOTU2NSBAQAorIyBNYW51YWwgcGFnZSBmb3IgZHBrZworIyBDb3B5cmlnaHQgMTk5OS0yMDExIFNvZnR3YXJlIGluIHRoZSBQdWJsaWMgSW50ZXJlc3QKKyMgUGV0ZXIgS3JlZnRpbmcgPHBldGVya0BkZWJpYW4ub3JnPiwgMTk5OS0yMDExLCAyMDExLgorIworbXNnaWQgIiIKK21zZ3N0ciAiIgorIlByb2plY3QtSWQtVmVyc2lvbjogZHBrZyBtYW4gcGFnZXNcbiIKKyJSZXBvcnQtTXNnaWQtQnVncy1UbzogXG4iCisiUE9ULUNyZWF0aW9uLURhdGU6IDIwMTEtMTAtMTQgMDc6MTErMDMwMFxuIgorIlBPLVJldmlzaW9uLURhdGU6IDIwMTEtMDktMTQgMDc6NDArMDEwMFxuIgorIkxhc3QtVHJhbnNsYXRvcjogUGV0ZXIgS3JlZnRpbmcgPHBldGVya0BkZWJpYW4ub3JnPlxuIgorIkxhbmd1YWdlLVRlYW06IFN3ZWRpc2ggPGRlYmlhbi1sMTBuLXN3ZWRpc2hAbGlzdHMuZGViaWFuLm9yZz5cbiIKKyJMYW5ndWFnZTogc3ZcbiIKKyJNSU1FLVZlcnNpb246IDEuMFxuIgorIkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD1VVEYtOFxuIgorIkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXRcbiIKKworIy4gdHlwZTogVEgKKyM6IGRlYi41OjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkZWIiCittc2dzdHIgImRlYiIKKworIy4gdHlwZTogVEgKKyM6IGRlYi41OjEgZGViLWNvbnRyb2wuNTozIGRlYi1zcmMtY29udHJvbC41OjMgZGViLXZlcnNpb24uNTo1IGRlYi1vbGQuNToxCisjOiBkZWItb3ZlcnJpZGUuNToxNSBkZWItc3ltYm9scy41OjIgZGViLXRyaWdnZXJzLjU6MSBkcGtnLjE6MQorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxIGRwa2ctYnVpbGRwYWNrYWdlLjE6MSBkcGtnLWRlYi4xOjEgZHBrZy1kaXZlcnQuODoxCisjOiBkcGtnLWdlbmNoYW5nZXMuMToxIGRwa2ctZ2VuY29udHJvbC4xOjEgZHBrZy1nZW5zeW1ib2xzLjE6MgorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxIGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6MSBkcGtnLW5hbWUuMTo2CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MSBkcGtnLXF1ZXJ5LjE6MSBkcGtnLXNjYW5wYWNrYWdlcy4xOjE1CisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6MSBkcGtnLXNobGliZGVwcy4xOjEgZHBrZy1zb3VyY2UuMToyIGRwa2ctdHJpZ2dlci4xOjEKKyM6IGRzZWxlY3QuMToxIHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo4CisjLCBuby13cmFwCittc2dpZCAiMjAxMS0wOC0xNCIKK21zZ3N0ciAiMjAxMS0wOC0xNCIKKworIy4gdHlwZTogVEgKKyM6IGRlYi41OjEgZGViLWNvbnRyb2wuNTozIGRlYi1zcmMtY29udHJvbC41OjMgZGViLXNwbGl0LjU6MSBkZWItdmVyc2lvbi41OjUKKyM6IGRlYi1vbGQuNToxIGRlYi1vdmVycmlkZS41OjE1IGRlYi1leHRyYS1vdmVycmlkZS41OjEgZGViLXNobGlicy41OjE2CisjOiBkZWItc3Vic3R2YXJzLjU6MiBkZWItc3ltYm9scy41OjIgZGViLXRyaWdnZXJzLjU6MSBkcGtnLjE6MQorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxIGRwa2cuY2ZnLjU6MSBkcGtnLWJ1aWxkZmxhZ3MuMToxCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEgZHBrZy1jaGVja2J1aWxkZGVwcy4xOjEgZHBrZy1kaXN0YWRkZmlsZS4xOjEKKyM6IGRwa2ctZGViLjE6MSBkcGtnLWRpdmVydC44OjEgZHBrZy1nZW5jaGFuZ2VzLjE6MSBkcGtnLWdlbmNvbnRyb2wuMToxCisjOiBkcGtnLWdlbnN5bWJvbHMuMToyIGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MSBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjEKKyM6IGRwa2ctbmFtZS4xOjYgZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjEgZHBrZy1xdWVyeS4xOjEgZHBrZy1zY2FucGFja2FnZXMuMToxNQorIzogZHBrZy1zY2Fuc291cmNlcy4xOjEgZHBrZy1zaGxpYmRlcHMuMToxIGRwa2ctc291cmNlLjE6MiBkcGtnLXNwbGl0LjE6MgorIzogZHBrZy10cmlnZ2VyLjE6MSBkcGtnLXZlbmRvci4xOjEgZHNlbGVjdC4xOjEgZHNlbGVjdC5jZmcuNToxCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjEgdXBkYXRlLWFsdGVybmF0aXZlcy44OjgKKyMsIG5vLXdyYXAKK21zZ2lkICJEZWJpYW4gUHJvamVjdCIKK21zZ3N0ciAiRGViaWFucHJvamVrdGV0IgorCisjLiB0eXBlOiBUSAorIzogZGViLjU6MSBkZWItY29udHJvbC41OjMgZGViLXNyYy1jb250cm9sLjU6MyBkZWItc3BsaXQuNToxIGRlYi12ZXJzaW9uLjU6NQorIzogZGViLW9sZC41OjEgZHNlbGVjdC4xOjEKKyMsIG5vLXdyYXAKK21zZ2lkICJEZWJpYW4iCittc2dzdHIgIkRlYmlhbiIKKworIy4gdHlwZTogU0gKKyM6IGRlYi41OjIgZGViLWNvbnRyb2wuNTo0IGRlYi1zcmMtY29udHJvbC41OjQgZGViLXNwbGl0LjU6MiBkZWItdmVyc2lvbi41OjYKKyM6IGRlYi1vbGQuNToyIGRlYi1vdmVycmlkZS41OjE2IGRlYi1leHRyYS1vdmVycmlkZS41OjIgZGViLXNobGlicy41OjE3CisjOiBkZWItc3Vic3R2YXJzLjU6MyBkZWItc3ltYm9scy41OjMgZGViLXRyaWdnZXJzLjU6MiBkcGtnLjE6MgorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyIGRwa2cuY2ZnLjU6MiBkcGtnLWJ1aWxkZmxhZ3MuMToyCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIgZHBrZy1jaGVja2J1aWxkZGVwcy4xOjIgZHBrZy1kaXN0YWRkZmlsZS4xOjIKKyM6IGRwa2ctZGViLjE6MiBkcGtnLWRpdmVydC44OjIgZHBrZy1nZW5jaGFuZ2VzLjE6MiBkcGtnLWdlbmNvbnRyb2wuMToyCisjOiBkcGtnLWdlbnN5bWJvbHMuMTozIGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjIKKyM6IGRwa2ctbmFtZS4xOjcgZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjIgZHBrZy1xdWVyeS4xOjIgZHBrZy1zY2FucGFja2FnZXMuMToxNgorIzogZHBrZy1zY2Fuc291cmNlcy4xOjIgZHBrZy1zaGxpYmRlcHMuMToyIGRwa2ctc291cmNlLjE6MyBkcGtnLXNwbGl0LjE6MworIzogZHBrZy1zdGF0b3ZlcnJpZGUuODoyIGRwa2ctdHJpZ2dlci4xOjIgZHBrZy12ZW5kb3IuMToyIGRzZWxlY3QuMToyCisjOiBkc2VsZWN0LmNmZy41OjIgc3RhcnQtc3RvcC1kYWVtb24uODoyIHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo5CisjLCBuby13cmFwCittc2dpZCAiTkFNRSIKK21zZ3N0ciAiTkFNTiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLjU6NAorbXNnaWQgImRlYiAtIERlYmlhbiBiaW5hcnkgcGFja2FnZSBmb3JtYXQiCittc2dzdHIgImRlYiAtIERlYmlhbnMgYmluw6RyYSBwYWtldGZvcm1hdCIKKworIy4gdHlwZTogU0gKKyM6IGRlYi41OjQgZGViLWNvbnRyb2wuNTo3IGRlYi1zcmMtY29udHJvbC41OjcgZGViLXNwbGl0LjU6NCBkZWItdmVyc2lvbi41OjkKKyM6IGRlYi1vbGQuNTo1IGRlYi1vdmVycmlkZS41OjE5IGRlYi1leHRyYS1vdmVycmlkZS41OjUgZGViLXN1YnN0dmFycy41OjYKKyM6IGRlYi1zeW1ib2xzLjU6NiBkZWItdHJpZ2dlcnMuNTo1IGRwa2cuMTo1IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NQorIzogZHBrZy1idWlsZGZsYWdzLjE6NSBkcGtnLWJ1aWxkcGFja2FnZS4xOjUgZHBrZy1jaGVja2J1aWxkZGVwcy4xOjUKKyM6IGRwa2ctZGlzdGFkZGZpbGUuMTo1IGRwa2ctZGViLjE6NSBkcGtnLWRpdmVydC44OjUgZHBrZy1nZW5jaGFuZ2VzLjE6NQorIzogZHBrZy1nZW5jb250cm9sLjE6NSBkcGtnLWdlbnN5bWJvbHMuMTo2IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6NQorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTo1IGRwa2ctbmFtZS4xOjEwIGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo1CisjOiBkcGtnLXF1ZXJ5LjE6NSBkcGtnLXNjYW5wYWNrYWdlcy4xOjE5IGRwa2ctc2NhbnNvdXJjZXMuMTo1CisjOiBkcGtnLXNobGliZGVwcy4xOjUgZHBrZy1zb3VyY2UuMTo2IGRwa2ctc3BsaXQuMTo2IGRwa2ctc3RhdG92ZXJyaWRlLjg6NQorIzogZHBrZy10cmlnZ2VyLjE6NSBkcGtnLXZlbmRvci4xOjUgZHNlbGVjdC4xOjUgc3RhcnQtc3RvcC1kYWVtb24uODo1CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTIKKyMsIG5vLXdyYXAKK21zZ2lkICJTWU5PUFNJUyIKK21zZ3N0ciAiU1lOT1BTIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWIuNTo2IGRlYi1zcGxpdC41OjYgZGViLW9sZC41OjcKK21zZ2lkICJJPGZpbGVuYW1lPkI8LmRlYj4iCittc2dzdHIgIkk8ZmlsbmFtbj5CPC5kZWI+IgorCisjLiB0eXBlOiBTSAorIzogZGViLjU6NiBkZWItY29udHJvbC41OjEwIGRlYi1zcmMtY29udHJvbC41OjEwIGRlYi1zcGxpdC41OjYKKyM6IGRlYi12ZXJzaW9uLjU6MTEgZGViLW9sZC41OjggZGViLW92ZXJyaWRlLjU6MjIgZGViLWV4dHJhLW92ZXJyaWRlLjU6OAorIzogZGViLXNobGlicy41OjIwIGRlYi1zdWJzdHZhcnMuNTo5IGRlYi1zeW1ib2xzLjU6OSBkZWItdHJpZ2dlcnMuNTo4CisjOiBkcGtnLjE6MTkgZHBrZy1hcmNoaXRlY3R1cmUuMToxMCBkcGtnLmNmZy41OjUgZHBrZy1idWlsZGZsYWdzLjE6OQorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo5IGRwa2ctY2hlY2tidWlsZGRlcHMuMToxMCBkcGtnLWRpc3RhZGRmaWxlLjE6OQorIzogZHBrZy1kZWIuMTo5IGRwa2ctZGl2ZXJ0Ljg6MTAgZHBrZy1nZW5jaGFuZ2VzLjE6MTAgZHBrZy1nZW5jb250cm9sLjE6OQorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTAgZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxNSBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjkKKyM6IGRwa2ctbmFtZS4xOjE2IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo5IGRwa2ctcXVlcnkuMTo5CisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjI3IGRwa2ctc2NhbnNvdXJjZXMuMToxMyBkcGtnLXNobGliZGVwcy4xOjkKKyM6IGRwa2ctc291cmNlLjE6MTAgZHBrZy1zcGxpdC4xOjEwIGRwa2ctc3RhdG92ZXJyaWRlLjg6OSBkcGtnLXRyaWdnZXIuMToxMgorIzogZHBrZy12ZW5kb3IuMTo5IGRzZWxlY3QuMTo5IGRzZWxlY3QuY2ZnLjU6NSBzdGFydC1zdG9wLWRhZW1vbi44OjkKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNgorIywgbm8td3JhcAorbXNnaWQgIkRFU0NSSVBUSU9OIgorbXNnc3RyICJCRVNLUklWTklORyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLjU6MTIKK21zZ2lkICIiCisiVGhlIEI8LmRlYj4gZm9ybWF0IGlzIHRoZSBEZWJpYW4gYmluYXJ5IHBhY2thZ2UgZmlsZSBmb3JtYXQuIEl0IGlzICIKKyJ1bmRlcnN0b29kIGJ5IGRwa2cgMC45My43NiBhbmQgbGF0ZXIsIGFuZCBpcyBnZW5lcmF0ZWQgYnkgZGVmYXVsdCBieSBhbGwgIgorInZlcnNpb25zIG9mIGRwa2cgc2luY2UgMS4yLjAgYW5kIGFsbCBpMzg2L0VMRiB2ZXJzaW9ucyBzaW5jZSAxLjEuMWVsZi4iCittc2dzdHIgIiIKKyJCPC5kZWI+LWZvcm1hdGV0IMOkciBEZWJpYW5zIGJpbsOkcmEgcGFrZXRmb3JtYXQuIERldCBmw7Zyc3TDpXMgYXYgZHBrZyAwLjkzLjc2ICIKKyJvY2ggc2VuYXJlLCBvY2ggZ2VuZXJlcmFzIHNvbSBmw7ZydmFsIGF2IGFsbGEgdmVyc2lvbmVyIGF2IGRwa2cgc2VkYW4gMS4yLjAsICIKKyJvY2ggYWxsYSBpMzg2L0VMRi12ZXJzaW9uZXIgc2VkYW4gMS4xLjFlbGYuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWIuNToxNgorbXNnaWQgIiIKKyJUaGUgZm9ybWF0IGRlc2NyaWJlZCBoZXJlIGlzIHVzZWQgc2luY2UgRGViaWFuIDAuOTM7IGRldGFpbHMgb2YgdGhlIG9sZCAiCisiZm9ybWF0IGFyZSBkZXNjcmliZWQgaW4gQjxkZWItb2xkPig1KS4iCittc2dzdHIgIiIKKyJGb3JtYXRldCBzb20gYmVza3JpdnMgaMOkciBhbnbDpG5kcyBzZWRhbiBEZWJpYW4gMC45MzsgZGV0YWxqZXIgb20gZGV0IGdhbWxhICIKKyJmb3JtYXRldCBmaW5ucyBpIEI8ZGViLW9sZD4oNSkuIgorCisjLiB0eXBlOiBTSAorIzogZGViLjU6MTYgZGViLXNwbGl0LjU6OSBkZWItb2xkLjU6MTgKKyMsIG5vLXdyYXAKK21zZ2lkICJGT1JNQVQiCittc2dzdHIgIkZPUk1BVCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLjU6MjIKK21zZ2lkICIiCisiVGhlIGZpbGUgaXMgYW4gQjxhcj4gYXJjaGl2ZSB3aXRoIGEgbWFnaWMgdmFsdWUgb2YgQjwhRTxsdD5hcmNoRTxndD4+LiAgVGhlICIKKyJmaWxlIG5hbWVzIG1pZ2h0IGNvbnRhaW4gYSB0cmFpbGluZyBzbGFzaC4iCittc2dzdHIgIiIKKyJGaWxlbiDDpHIgZXR0IEI8YXI+LWFya2l2IG1lZCBkZXQgbWFnaXNrYSBudW1yZXQgQjwhRTxsdD5hcmNoRTxndD4+LiAiCisiRmlsbmFtbmVuIGthbiBpbm5laMOlbGxhIGV0dCBhdnNsdXRhbmRlIHNuZWRzdHJlY2suIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWIuNToyOAorbXNnaWQgIiIKKyJUaGUgQjx0YXI+IGFyY2hpdmVzIGN1cnJlbnRseSBhbGxvd2VkIGFyZSwgdGhlIG9sZC1zdHlsZSAodjcpIGZvcm1hdCwgdGhlICIKKyJwcmUtUE9TSVggdXN0YXIgZm9ybWF0LCBhIHN1YnNldCBvZiB0aGUgR05VIGZvcm1hdCAob25seSB0aGUgbmV3IHN0eWxlIGxvbmcgIgorInBhdGhuYW1lcyBhbmQgbG9uZyBsaW5rbmFtZXMsIHN1cHBvcnRlZCBzaW5jZSBkcGtnIDEuNC4xLjE3KSwgYW5kIHRoZSBQT1NJWCAiCisidXN0YXIgZm9ybWF0IChsb25nIG5hbWVzIHN1cHBvcnRlZCBzaW5jZSBkcGtnIDEuMTUuMCkuICBVbnJlY29nbml6ZWQgdGFyICIKKyJ0eXBlZmxhZ3MgYXJlIGNvbnNpZGVyZWQgYW4gZXJyb3IuIgorbXNnc3RyICIiCisiRGUgQjx0YXI+LWFya2l2IHNvbSB0aWxsw6V0cyBmw7ZyIG7DpHJ2YXJhbmRlIMOkcjsgZGVuIGdhbWxhIHN0aWxlbnMgZm9ybWF0ICIKKyIodjcpLCBmw7ZyLVBPU0lYLXVzdGFyLWZvcm1hdGV0LCBlbiBkZWxtw6RuZ2QgYXYgR05VLWZvcm1hdGV0IChlbmRhc3QgZGUgbMOlbmdhICIKKyJzw7ZrdsOkZ3MtIG9jaCBsw6Rua25hbW5lbiBpIGRlbiBueWEgc3RpbGVuLCBzdMO2ZHMgc2VkYW4gZHBrZyAxLjQuMS4xNyksIG9jaCAiCisiUE9TSVgtdXN0YXItZm9ybWF0ZXQgKGzDpW5nYSBuYW1uIHN0w7ZkcyBzZWRhbiBkcGtnIDEuMTUuMCkuIE9rw6RuZGEgdGFyLSIKKyJ0eXBmbGFnZ29yIGFuc2VzIHV0Z8O2cmEgZmVsLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLjU6MzgKK21zZ2lkICIiCisiVGhlIGZpcnN0IG1lbWJlciBpcyBuYW1lZCBCPGRlYmlhbi1iaW5hcnk+IGFuZCBjb250YWlucyBhIHNlcmllcyBvZiBsaW5lcywgIgorInNlcGFyYXRlZCBieSBuZXdsaW5lcy4gQ3VycmVudGx5IG9ubHkgb25lIGxpbmUgaXMgcHJlc2VudCwgdGhlIGZvcm1hdCAiCisidmVyc2lvbiBudW1iZXIsIEI8Mi4wPiBhdCB0aGUgdGltZSB0aGlzIG1hbnVhbCBwYWdlIHdhcyB3cml0dGVuLiAgUHJvZ3JhbXMgIgorIndoaWNoIHJlYWQgbmV3LWZvcm1hdCBhcmNoaXZlcyBzaG91bGQgYmUgcHJlcGFyZWQgZm9yIHRoZSBtaW5vciBudW1iZXIgdG8gYmUgIgorImluY3JlYXNlZCBhbmQgbmV3IGxpbmVzIHRvIGJlIHByZXNlbnQsIGFuZCBzaG91bGQgaWdub3JlIHRoZXNlIGlmIHRoaXMgaXMgIgorInRoZSBjYXNlLiIKK21zZ3N0ciAiIgorIkRlbiBmw7Zyc3RhIHBvc3RlbiBpIGFya2l2ZXQgaGV0ZXIgQjxkZWJpYW4tYmluYXJ5PiBvY2ggaW5uZWjDpWxsZXIgZXR0IGFudGFsICIKKyJyYWRlciwgYXZkZWxhZGUgbWVkIG55cmFkc3RlY2tlbi4gRsO2ciBuw6RydmFyYW5kZSBmaW5ucyBlbmRhc3QgZW4gcmFkLCAiCisiZm9ybWF0ZXRzIHZlcnNpb25zbnVtbWVyLCBCPDIuMD4uIFByb2dyYW0gc29tIGzDpHNlciBhcmtpdiBpIGRldCBueWEgZm9ybWF0ZXQgIgorImLDtnIgdmFyYSBmw7ZyYmVyZWRkYSBww6UgYXR0IHVuZGVydmVyc2lvbnNudW1yZXQga2FuIGtvbW1hIGF0dCDDtmthcywgb2NoIGF0dCAiCisibnlhIHJhZGVyIGthbiBmw7ZyZWtvbW1hLCBvY2ggc2thbGwgaSBzw6UgZmFsbCBpZ25vcmVyYSBkZXNzYS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi41OjQzCittc2dpZCAiIgorIklmIHRoZSBtYWpvciBudW1iZXIgaGFzIGNoYW5nZWQsIGFuIGluY29tcGF0aWJsZSBjaGFuZ2UgaGFzIGJlZW4gbWFkZSBhbmQgIgorInRoZSBwcm9ncmFtIHNob3VsZCBzdG9wLiBJZiBpdCBoYXMgbm90LCB0aGVuIHRoZSBwcm9ncmFtIHNob3VsZCBiZSBhYmxlIHRvICIKKyJzYWZlbHkgY29udGludWUsIHVubGVzcyBpdCBlbmNvdW50ZXJzIGFuIHVuZXhwZWN0ZWQgbWVtYmVyIGluIHRoZSBhcmNoaXZlICIKKyIoZXhjZXB0IGF0IHRoZSBlbmQpLCBhcyBkZXNjcmliZWQgYmVsb3cuIgorbXNnc3RyICIiCisiT20gaHV2dWR2ZXJzaW9uc251bXJldCBoYXIgw6RuZHJhdHMgaGFyIGVuIGlua29tcGF0aWJlbCDDpG5kcmluZyBpbmbDtnJ0cywgb2NoICIKKyJwcm9ncmFtbWV0IHNrYWxsIGF2YnJ5dGFzLiBPbSBzw6UgaW50ZSBoYXIgZ2pvcnRzLCBza2FsbCBwcm9ncmFtbWV0IGt1bm5hICIKKyJmb3J0c8OkdHRhIHV0YW4gcHJvYmxlbSwgc8OldmlkYSBkZXQgaW50ZSBzdMO2dGVyIHDDpSBlbiBvdsOkbnRhZCBwb3N0IGkgYXJraXZldCAiCisiKGbDtnJ1dG9tIGkgc2x1dGV0KSwgZW5saWd0IHZhZCBiZXNrcml2cyBuZWRhbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi41OjUzCittc2dpZCAiIgorIlRoZSBzZWNvbmQgcmVxdWlyZWQgbWVtYmVyIGlzIG5hbWVkIEI8Y29udHJvbC50YXIuZ3o+LiAgSXQgaXMgYSBnemlwcGVkIHRhciAiCisiYXJjaGl2ZSBjb250YWluaW5nIHRoZSBwYWNrYWdlIGNvbnRyb2wgaW5mb3JtYXRpb24sIGFzIGEgc2VyaWVzIG9mIHBsYWluICIKKyJmaWxlcywgb2Ygd2hpY2ggdGhlIGZpbGUgQjxjb250cm9sPiBpcyBtYW5kYXRvcnkgYW5kIGNvbnRhaW5zIHRoZSBjb3JlICIKKyJjb250cm9sIGluZm9ybWF0aW9uLiBUaGUgY29udHJvbCB0YXJiYWxsIG1heSBvcHRpb25hbGx5IGNvbnRhaW4gYW4gZW50cnkgZm9yICIKKyJgQjwuPicsIHRoZSBjdXJyZW50IGRpcmVjdG9yeS4iCittc2dzdHIgIiIKKyJEZW4gYW5kcmEgbsO2ZHbDpG5kaWdhIHBvc3RlbiBoZXRlciBCPGNvbnRyb2wudGFyLmd6Pi4gRGV0IMOkciBldHQgZ3ppcC1wYWNrYXQgIgorInRhci1hcmtpdiBzb20gaW5uZWjDpWxsZXIgcGFrZXRldHMga29udHJvbGxpbmZvcm1hdGlvbiwgbGFncmFkZSBzb20gZXR0IGFudGFsICIKKyJ2YW5saWdhIGZpbGVyLCBhdiB2aWxrYSBmaWxlbiBCPGNvbnRyb2w+IGtyw6R2cyBvY2ggaW5uZWjDpWxsZXIgZ3J1bmRsw6RnZ2FuZGUgIgorImtvbnRyb2xsaW5mb3JtYXRpb24uIFRhcmJvbGxlbiBjb250cm9sIGthbiBldmVudHVlbGx0IGlubmVow6VsbGEgZW4gcG9zdCBmw7ZyICIKKyJcIkI8Lj5cIiwgZGVuIGFrdHVlbGxhIGthdGFsb2dlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi41OjYyCittc2dpZCAiIgorIlRoZSB0aGlyZCwgbGFzdCByZXF1aXJlZCBtZW1iZXIgaXMgbmFtZWQgQjxkYXRhLnRhcj4uICBJdCBjb250YWlucyB0aGUgIgorImZpbGVzeXN0ZW0gYXMgYSB0YXIgYXJjaGl2ZSwgZWl0aGVyIG5vdCBjb21wcmVzc2VkIChzdXBwb3J0ZWQgc2luY2UgZHBrZyAiCisiMS4xMC4yNCksIG9yIGNvbXByZXNzZWQgd2l0aCBnemlwICh3aXRoIEI8Lmd6PiBleHRlbnNpb24pLCB4eiAod2l0aCBCPC54ej4gIgorImV4dGVuc2lvbiwgc3VwcG9ydGVkIHNpbmNlIGRwa2cgMS4xNS42KSwgYnppcDIgKHdpdGggQjwuYnoyPiBleHRlbnNpb24sICIKKyJzdXBwb3J0ZWQgc2luY2UgZHBrZyAxLjEwLjI0KSBvciBsem1hICh3aXRoIEI8Lmx6bWE+IGV4dGVuc2lvbiwgc3VwcG9ydGVkICIKKyJzaW5jZSBkcGtnIDEuMTMuMjUpLiIKK21zZ3N0ciAiIgorIkRlbiB0cmVkamUgb2NoIHNpc3RhIG7DtmR2w6RuZGlnYSBwb3N0ZW4gaGV0ZXIgQjxkYXRhLnRhcj4uIERlbiBpbm5laMOlbGxlciAiCisiZmlsc3lzdGVtZXQgc29tIGV0dCB0YXItYXJraXYsIGFudGluZ2VuIG9rb21wcmltZXJhdCAoc3TDtmRzIHNlZGFuIGRwa2cgIgorIjEuMTAuMjQpLCBlbGxlciBrb21wcmltZXJhdCBtZWQgZ3ppcCAobWVkIGZpbHNsdXRldCBCPC5nej4pLCB4eiAobWVkICIKKyJmaWxzbHV0ZXQgQjwueHo+LCBzdMO2ZHMgc2VkYW4gZHBrZyAxLjE1LjYpLCBiemlwMiAobWVkIGZpbHNsdXRldCBCPC5iejI+LCAiCisic3TDtmRzIHNlZGFuIGRwa2cgMS4xMC4yNCkgZWxsZXIgbHptYSAobWVkIGZpbHNsdXRldCBCPC5sem1hPiwgc3TDtmRzIHNlZGFuICIKKyJkcGtnIDEuMTMuMjUpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLjU6NzMKK21zZ2lkICIiCisiVGhlc2UgbWVtYmVycyBtdXN0IG9jY3VyIGluIHRoaXMgZXhhY3Qgb3JkZXIuIEN1cnJlbnQgaW1wbGVtZW50YXRpb25zIHNob3VsZCAiCisiaWdub3JlIGFueSBhZGRpdGlvbmFsIG1lbWJlcnMgYWZ0ZXIgQjxkYXRhLnRhcj4uICBGdXJ0aGVyIG1lbWJlcnMgbWF5IGJlICIKKyJkZWZpbmVkIGluIHRoZSBmdXR1cmUsIGFuZCAoaWYgcG9zc2libGUpIHdpbGwgYmUgcGxhY2VkIGFmdGVyIHRoZXNlIHRocmVlLiAiCisiQW55IGFkZGl0aW9uYWwgbWVtYmVycyB0aGF0IG1heSBuZWVkIHRvIGJlIGluc2VydGVkIGJlZm9yZSBCPGRhdGEudGFyPiBhbmQgIgorIndoaWNoIHNob3VsZCBiZSBzYWZlbHkgaWdub3JlZCBieSBvbGRlciBwcm9ncmFtcywgd2lsbCBoYXZlIG5hbWVzIHN0YXJ0aW5nICIKKyJ3aXRoIGFuIHVuZGVyc2NvcmUsIGBCPF8+Jy4iCittc2dzdHIgIiIKKyJEZXNzYSBwb3N0ZXIgbcOlc3RlIGxpZ2dhIGkgZXhha3QgZGVubmEgb3JkbmluZy4gTnV2YXJhbmRlIGltcGxlbWVudGF0aW9uZXIgIgorImLDtnIgaWdub3JlcmEgZXZlbnR1ZWxsYSB5dHRlcmxpZ2FyZSBwb3N0ZXIgZWZ0ZXIgQjxkYXRhLnRhcj4uIFl0dGVybGlnYXJlICIKKyJwb3N0ZXIga2FuIGtvbW1hIGF0dCBkZWZpbmllcmFzIGkgZnJhbXRpZGVuLCBvY2gga29tbWVyIChvbSBtw7ZqbGlndCkgIgorInBsYWNlcmFzIGVmdGVyIGRlc3NhIHRyZS4gRXZlbnR1ZWxsYSB5dHRlcmxpZ2FyZSBwb3N0ZXIgc29tIGthbiBrb21tYSBhdHQgIgorImJlaMO2dmEgZmlubmFzIGbDtnJlIEI8ZGF0YS50YXI+IG9jaCBzb20ga2FuIGlnbm9yZXJhcyBhdiDDpGxkcmUgcHJvZ3JhbSB1dGFuICIKKyJwcm9ibGVtIGtvbW1lciBhdHQgaGEgbmFtbiBzb20gYsO2cmphciBtZWQgdW5kZXJzdHJlY2ssIFwiQjxfPlwiLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLjU6NzkKK21zZ2lkICIiCisiVGhvc2UgbmV3IG1lbWJlcnMgd2hpY2ggd29uJ3QgYmUgYWJsZSB0byBiZSBzYWZlbHkgaWdub3JlZCB3aWxsIGJlIGluc2VydGVkICIKKyJiZWZvcmUgQjxkYXRhLnRhcj4gd2l0aCBuYW1lcyBzdGFydGluZyB3aXRoIHNvbWV0aGluZyBvdGhlciB0aGFuICIKKyJ1bmRlcnNjb3Jlcywgb3Igd2lsbCAobW9yZSBsaWtlbHkpIGNhdXNlIHRoZSBtYWpvciB2ZXJzaW9uIG51bWJlciB0byBiZSAiCisiaW5jcmVhc2VkLiIKK21zZ3N0ciAiIgorIk55YSBwb3N0ZXIgc29tIGludGUga29tbWVyIGF0dCBrdW5uYSBpZ25vcmVyYXMgdXRhbiBwcm9ibGVtIGtvbW1lciBhdHQgIgorImzDpGdnYXMgaW4gZsO2cmUgQjxkYXRhLnRhcj4gbWVkIG5hbW4gc29tIGLDtnJqYXIgbWVkIG7DpWdvdCBhbm5hdCDDpG4gIgorInVuZGVyc3RyZWNrLCBlbGxlciAobWVyIHRyb2xpZ3QpIGfDtnJhIGF0dCBodXZ1ZHZlcnNpb25zbnVtcmV0IMO2a2FzLiIKKworIy4gdHlwZTogU0gKKyM6IGRlYi41Ojc5IGRlYi1jb250cm9sLjU6MjcxIGRlYi1zcmMtY29udHJvbC41OjMyNyBkZWItc3BsaXQuNTo0OQorIzogZGViLXZlcnNpb24uNToxMTYgZGViLW9sZC41OjUxIGRlYi1vdmVycmlkZS41OjYyIGRlYi1leHRyYS1vdmVycmlkZS41OjM3CisjOiBkZWItc2hsaWJzLjU6NjEgZGViLXN1YnN0dmFycy41OjE1NCBkZWItc3ltYm9scy41OjYxIGRlYi10cmlnZ2Vycy41OjY3CisjOiBkcGtnLjE6NzY4IGRwa2ctYXJjaGl0ZWN0dXJlLjE6Mjk5IGRwa2cuY2ZnLjU6MjMgZHBrZy1idWlsZHBhY2thZ2UuMToyNDkKKyM6IGRwa2ctZGViLjE6MjU5IGRwa2ctZGl2ZXJ0Ljg6MTMyIGRwa2ctZ2Vuc3ltYm9scy4xOjQ1MCBkcGtnLW5hbWUuMTo5NgorIzogZHBrZy1xdWVyeS4xOjIyMCBkcGtnLXNjYW5wYWNrYWdlcy4xOjExMCBkcGtnLXNjYW5zb3VyY2VzLjE6NzEKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MzI0IGRwa2ctc291cmNlLjE6NzI1IGRwa2ctc3BsaXQuMToyMTcKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6ODQgZHBrZy10cmlnZ2VyLjE6NjYgZHNlbGVjdC4xOjQ0NSBkc2VsZWN0LmNmZy41OjIzCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NTA4CisjLCBuby13cmFwCittc2dpZCAiU0VFIEFMU08iCittc2dzdHIgIlNFIMOEVkVOIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWIuNTo4MgorbXNnaWQgIkI8ZGViLW9sZD4oNSksIEI8ZHBrZy1kZWI+KDEpLCBCPGRlYi1jb250cm9sPig1KS4iCittc2dzdHIgIkI8ZGViLW9sZD4oNSksIEI8ZHBrZy1kZWI+KDEpLCBCPGRlYi1jb250cm9sPig1KS4iCisKKyMuIHR5cGU6IFRICisjOiBkZWItY29udHJvbC41OjMKKyMsIG5vLXdyYXAKK21zZ2lkICJkZWItY29udHJvbCIKK21zZ3N0ciAiZGViLWNvbnRyb2wiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6NgorbXNnaWQgImRlYi1jb250cm9sIC0gRGViaWFuIHBhY2thZ2VzJyBtYXN0ZXIgY29udHJvbCBmaWxlIGZvcm1hdCIKK21zZ3N0ciAiZGViLWNvbnRyb2wgLSBEZWJpYW5zIGZpbGZvcm1hdCBmw7ZyIHBha2V0c3R5cmZpbGVyIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjkgZGViLXNyYy1jb250cm9sLjU6OQorbXNnaWQgImNvbnRyb2wiCittc2dzdHIgImNvbnRyb2wiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MjQKK21zZ2lkICIiCisiRWFjaCBEZWJpYW4gcGFja2FnZSBjb250YWlucyB0aGUgbWFzdGVyIGBjb250cm9sJyBmaWxlLCB3aGljaCBjb250YWlucyBhICIKKyJudW1iZXIgb2YgZmllbGRzLCBvciBjb21tZW50cyB3aGVuIHRoZSBsaW5lIHN0YXJ0cyB3aXRoIEI8JyMnPi4gRWFjaCBmaWVsZCAiCisiYmVnaW5zIHdpdGggYSB0YWcsIHN1Y2ggYXMgQjxQYWNrYWdlPiBvciBCPFZlcnNpb24+IChjYXNlIGluc2Vuc2l0aXZlKSwgIgorImZvbGxvd2VkIGJ5IGEgY29sb24sIGFuZCB0aGUgYm9keSBvZiB0aGUgZmllbGQuICBGaWVsZHMgYXJlIGRlbGltaXRlZCBvbmx5ICIKKyJieSBmaWVsZCB0YWdzLiBJbiBvdGhlciB3b3JkcywgZmllbGQgdGV4dCBtYXkgYmUgbXVsdGlwbGUgbGluZXMgaW4gbGVuZ3RoLCAiCisiYnV0IHRoZSBpbnN0YWxsYXRpb24gdG9vbHMgd2lsbCBnZW5lcmFsbHkgam9pbiBsaW5lcyB3aGVuIHByb2Nlc3NpbmcgdGhlICIKKyJib2R5IG9mIHRoZSBmaWVsZCAoZXhjZXB0IGluIHRoZSBjYXNlIG9mIHRoZSBCPERlc2NyaXB0aW9uPiBmaWVsZCwgc2VlICIKKyJiZWxvdykuIgorbXNnc3RyICIiCisiVmFyamUgRGViaWFucGFrZXQgaW5uZWjDpWxsZXIgaHV2dWRzdHlyZmlsZW4gXCJjb250cm9sXCIsIHZpbGtlbiBpIHNpZyAiCisiaW5uZWjDpWxsZXIgZXR0IGFudGFsIGbDpGx0LCBlbGxlciBrb21tZW50YXJlciBkw6RyIHJhZGVybmEgaW5sZWRzIG1lZCBCPFwiIyIKKyJcIj4uIFZhcmplIGbDpGx0IGLDtnJqYXIgbWVkIGVuIGV0aWtldHQsIHPDpXNvbSBCPFBhY2thZ2U+IGVsbGVyIEI8VmVyc2lvbj4gIgorIihza2lmdGzDpGdlc29iZXJvZW5kZSksIGbDtmxqdCBhdiBldHQga29sb250ZWNrZW4gb2NoIGbDpGx0ZXRzIGtyb3BwLiBGw6RsdCAiCisiYXZkZWxhcyBlbmRhc3QgYXYgZsOkbHRldGlrZXR0ZXIuIE1lZCBhbmRyYSBvcmQga2FuIHRleHRlbiBpIGbDpGx0ZW4gc3DDpG5uYSAiCisiw7Z2ZXIgZmxlcmEgcmFkZXIsIG1lbiBpbnN0YWxsYXRpb25zdmVya3R5Z2VuIGtvbW1lciBvZnRhc3QgYXR0IHNsw6Ugc2FtbWFuICIKKyJyYWRlciBuw6RyIGtyb3BwZW4gdG9sa2FzIChmw7ZydXRvbSBpIGZhbGxldCBmw7ZyIEI8RGVzY3JpcHRpb24+LWbDpGx0ZXQsIHNlICIKKyJuZWRhbikuIgorCisjLiB0eXBlOiBTSAorIzogZGViLWNvbnRyb2wuNToyNQorIywgbm8td3JhcAorbXNnaWQgIlJFUVVJUkVEIEZJRUxEUyIKK21zZ3N0ciAiTsOWRFbDhE5ESUdBIEbDhExUIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNToyNgorIywgbm8td3JhcAorbXNnaWQgIkI8UGFja2FnZTo+STwgcGFja2FnZS1uYW1lPiIKK21zZ3N0ciAiQjxQYWNrYWdlOj5JPCBwYWtldG5hbW4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjMwCittc2dpZCAiIgorIlRoZSB2YWx1ZSBvZiB0aGlzIGZpZWxkIGRldGVybWluZXMgdGhlIHBhY2thZ2UgbmFtZSwgYW5kIGlzIHVzZWQgdG8gZ2VuZXJhdGUgIgorImZpbGUgbmFtZXMgYnkgbW9zdCBpbnN0YWxsYXRpb24gdG9vbHMuIgorbXNnc3RyICIiCisiVsOkcmRldCBww6UgZsOkbHRldCBiZXN0w6RtbWVyIHBha2V0ZXRzIG5hbW4sIG9jaCBhbnbDpG5kcyBhdiBkZSBmbGVzdGEgIgorImluc3RhbGxhdGlvbnN2ZXJrdHlnZW4gZsO2ciBhdHQgZ2VuZXJlcmEgZmlsbmFtbmVuLiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MzAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPFZlcnNpb246Pkk8IHZlcnNpb24tc3RyaW5nPiIKK21zZ3N0ciAiQjxWZXJzaW9uOj5JPCB2ZXJzaW9uc3N0csOkbmc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjM3Cittc2dpZCAiIgorIlR5cGljYWxseSwgdGhpcyBpcyB0aGUgb3JpZ2luYWwgcGFja2FnZSdzIHZlcnNpb24gbnVtYmVyIGluIHdoYXRldmVyIGZvcm0gIgorInRoZSBwcm9ncmFtJ3MgYXV0aG9yIHVzZXMuIEl0IG1heSBhbHNvIGluY2x1ZGUgYSBEZWJpYW4gcmV2aXNpb24gbnVtYmVyIChmb3IgIgorIm5vbi1uYXRpdmUgcGFja2FnZXMpLiBUaGUgZXhhY3QgZm9ybWF0IGFuZCBzb3J0aW5nIGFsZ29yaXRobSBhcmUgZGVzY3JpYmVkICIKKyJpbiBCPGRlYi12ZXJzaW9uPig1KS4iCittc2dzdHIgIiIKKyJWYW5saWd0dmlzIMOkciBkZXR0YSBkZXQgdXJzcHJ1bmdsaWdhIHBha2V0ZXRzIHZlcnNpb25zbnVtbWVyIHDDpSBkZW4gZm9ybSAiCisicHJvZ3JhbW1ldHMgZsO2cmZhdHRhcmUgYW52w6RuZGVyLiBEZW4ga2FuIMOkdmVuIGlubmVow6VsbGEgZXR0ICIKKyJEZWJpYW51cHBkYXRlcmluZ3NudW1tZXIgKGbDtnIgcGFrZXQgdmFycyBrw6RsbGEgw6RyIHV0YW5mw7ZyIERlYmlhbikuIEV4YWt0ICIKKyJmb3JtYXQgb2NoIHNvcnRlcmluZ3NhbGdvcml0bSBiZXNrcml2cyBpIEI8ZGViLXZlcnNpb24+KDUpLiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MzcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPE1haW50YWluZXI6Pkk8IGZ1bGxuYW1lLWVtYWlsPiIKK21zZ3N0ciAiQjxNYWludGFpbmVyOj5JPCBmdWxsdC1uYW1uIGUtcG9zdD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6NDIKK21zZ2lkICIiCisiU2hvdWxkIGJlIGluIHRoZSBmb3JtYXQgYEpvZSBCbG9nZ3MgRTxsdD5qYmxvZ2dzQGZvby5jb21FPGd0PicsIGFuZCBpcyAiCisidHlwaWNhbGx5IHRoZSBwZXJzb24gd2hvIGNyZWF0ZWQgdGhlIHBhY2thZ2UsIGFzIG9wcG9zZWQgdG8gdGhlIGF1dGhvciBvZiAiCisidGhlIHNvZnR3YXJlIHRoYXQgd2FzIHBhY2thZ2VkLiIKK21zZ3N0ciAiIgorIlNrYWxsIHZhcmEgcMOlIGZvcm1hdGV0IFwiSm9lIEJsb2dncyBFPGx0PmpibG9nZ3NAZm9vLmNvbUU8Z3Q+XCIgb2NoIMOkciAiCisibm9ybWFsdCBzZXR0IGRlbiBwZXJzb24gc29tIHNrYXBhdCBwYWtldGV0LCB0aWxsIHNraWxsbmFkIGZyw6VuIGbDtnJmYXR0YXJlbiAiCisiYXYgZGVuIHByb2dyYW12YXJhIHNvbSBwYWtldGVyYWRlcy4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjQyCisjLCBuby13cmFwCittc2dpZCAiQjxEZXNjcmlwdGlvbjo+STwgc2hvcnQtZGVzY3JpcHRpb24+IgorbXNnc3RyICJCPERlc2NyaXB0aW9uOj5JPCBrb3J0LWJlc2tyaXZuaW5nPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNTo0NQorbXNnaWQgIkI8ID5JPGxvbmctZGVzY3JpcHRpb24+IgorbXNnc3RyICJCPCA+STxsw6VuZy1iZXNrcml2bmluZz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6NTEKK21zZ2lkICIiCisiVGhlIGZvcm1hdCBmb3IgdGhlIHBhY2thZ2UgZGVzY3JpcHRpb24gaXMgYSBzaG9ydCBicmllZiBzdW1tYXJ5IG9uIHRoZSBmaXJzdCAiCisibGluZSAoYWZ0ZXIgdGhlIFwiRGVzY3JpcHRpb25cIiBmaWVsZCkuIFRoZSBmb2xsb3dpbmcgbGluZXMgc2hvdWxkIGJlIHVzZWQgIgorImFzIGEgbG9uZ2VyLCBtb3JlIGRldGFpbGVkIGRlc2NyaXB0aW9uLiBFYWNoIGxpbmUgb2YgdGhlIGxvbmcgZGVzY3JpcHRpb24gIgorIm11c3QgYmUgcHJlY2VkZWQgYnkgYSBzcGFjZSwgYW5kIGJsYW5rIGxpbmVzIGluIHRoZSBsb25nIGRlc2NyaXB0aW9uIG11c3QgIgorImNvbnRhaW4gYSBzaW5nbGUgJy4nIGZvbGxvd2luZyB0aGUgcHJlY2VkaW5nIHNwYWNlLiIKK21zZ3N0ciAiIgorIkZvcm1hdGV0IGbDtnIgcGFrZXRiZXNrcml2bmluZ2VuIMOkciBlbiBrb3J0ZmF0dGFkIHNhbW1hbmZhdHRuaW5nIHDDpSBkZW4gIgorImbDtnJzdGEgcmFkZW4gKGVmdGVyIFwiRGVzY3JpcHRpb25cIi1mw6RsdGV0KS4gRsO2bGphbmRlIHJhZGVyIGLDtnIgYW52w6RuZGFzIGbDtnIgIgorImVuIGzDpG5ncmUsIG1lciBkZXRhbGplcmFkIGJlc2tyaXZuaW5nLiBWYXJqZSByYWQgaSBkZW4gbMOkZ3JlIGJlc2tyaXZuaW5nZW4gIgorIm3DpXN0ZSBpbmxlZGFzIG1lZCBldHQgYmxhbmtzdGVnLCBvY2ggYmxhbmthIHJhZGVyIGkgZGVuIGzDpW5nYSBiZXNrcml2bmluZ2VuICIKKyJtw6VzdGUgaW5uZWjDpWxsYSBlbiBlbnNhbSBwdW5rdCAoXCIuXCIpIGVmdGVyIGRldCBpbmxlZGFuZGUgYmxhbmtzdGVnZXQuIgorCisjLiB0eXBlOiBTSAorIzogZGViLWNvbnRyb2wuNTo1MgorIywgbm8td3JhcAorbXNnaWQgIk9QVElPTkFMIEZJRUxEUyIKK21zZ3N0ciAiVkFMRlJJQSBGw4RMVCIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6NTMgZGViLXNyYy1jb250cm9sLjU6OTAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPFNlY3Rpb246Pkk8IHNlY3Rpb24+IgorbXNnc3RyICJCPFNlY3Rpb246Pkk8IHNla3Rpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjU4Cittc2dpZCAiIgorIlRoaXMgaXMgYSBnZW5lcmFsIGZpZWxkIHRoYXQgZ2l2ZXMgdGhlIHBhY2thZ2UgYSBjYXRlZ29yeSBiYXNlZCBvbiB0aGUgIgorInNvZnR3YXJlIHRoYXQgaXQgaW5zdGFsbHMuIFNvbWUgY29tbW9uIHNlY3Rpb25zIGFyZSBgdXRpbHMnLCBgbmV0JywgYG1haWwnLCAiCisiYHRleHQnLCBgeDExJyBldGMuIgorbXNnc3RyICIiCisiRGV0dGEgw6RyIGV0dCBnZW5lcmVsbHQgZsOkbHQgc29tIGdlciBwYWtldGV0IGVuIGthdGVnb3JpIGJhc2VyYXQgcMOlICIKKyJwcm9ncmFtdmFyYSBzb20gZGV0IGluc3RhbGxlcmFyLiBOw6VncmEgdmFubGlnYSBzZWt0aW9uZXIgw6RyIFwidXRpbHNcIiwgXCJuZXQiCisiXCIsIFwibWFpbFwiLCBcInRleHRcIiwgXCJ4MTFcIiBvc3YuIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNTo1OCBkZWItc3JjLWNvbnRyb2wuNTo5NgorIywgbm8td3JhcAorbXNnaWQgIkI8UHJpb3JpdHk6Pkk8IHByaW9yaXR5PiIKK21zZ3N0ciAiQjxQcmlvcml0eTo+STwgcHJpb3JpdGV0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNTo2MgorbXNnaWQgIiIKKyJTZXRzIHRoZSBpbXBvcnRhbmNlIG9mIHRoaXMgcGFja2FnZSBpbiByZWxhdGlvbiB0byB0aGUgc3lzdGVtIGFzIGEgd2hvbGUuICAiCisiQ29tbW9uIHByaW9yaXRpZXMgYXJlIGByZXF1aXJlZCcsIGBzdGFuZGFyZCcsIGBvcHRpb25hbCcsIGBleHRyYScgZXRjLiIKK21zZ3N0ciAiIgorIlN0w6RsbGVyIGluIGh1ciB2aWt0aWd0IHBha2V0ZXQgw6RyIGrDpG1mw7ZydCBtZWQgc3lzdGVtZXQgc29tIGVuaGV0LiAgVmFubGlnYSAiCisicHJpb3JpdGV0ZXIgw6RyIFwicmVxdWlyZWRcIiAobsO2ZHbDpG5kaWcpLCBcInN0YW5kYXJkXCIgKG5vcm1hbCksIFwib3B0aW9uYWwiCisiXCIgKHZhbGZyaXR0KSwgXCJleHRyYVwiIChleHRyYSkgb3N2LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNTo3MSBkZWItc3JjLWNvbnRyb2wuNToxMDkKK21zZ2lkICIiCisiSW4gRGViaWFuLCB0aGUgQjxTZWN0aW9uPiBhbmQgQjxQcmlvcml0eT4gZmllbGRzIGhhdmUgYSBkZWZpbmVkIHNldCBvZiAiCisiYWNjZXB0ZWQgdmFsdWVzIGJhc2VkIG9uIHRoZSBQb2xpY3kgTWFudWFsLiAgQSBsaXN0IG9mIHRoZXNlIHZhbHVlcyBjYW4gYmUgIgorIm9idGFpbmVkIGZyb20gdGhlIGxhdGVzdCB2ZXJzaW9uIG9mIHRoZSBCPGRlYmlhbi1wb2xpY3k+IHBhY2thZ2UuIgorbXNnc3RyICIiCisiSSBEZWJpYW4gaGFyIGbDpGx0ZW4gQjxTZWN0aW9uPiBvY2ggQjxQcmlvcml0eT4gZW4gZGVmaW5pZXJhZCB1cHBzw6R0dG5pbmcgIgorImFjY2VwdGVyYWRlIHbDpHJkZW4gYmFzZXJhZGUgcMOlIHBvbGljeW1hbnVhbGVuLiBFbiBmw7ZydGVja25pbmcgw7Z2ZXIgZGVzc2EgIgorInbDpHJkZW4gZmlubnMgaSBkZW4gc2VuYXN0ZSB2ZXJzaW9uZW4gYXYgcGFrZXRldCBCPGRlYmlhbi1wb2xpY3k+LiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6NzEgZGViLXNyYy1jb250cm9sLjU6MjE2CisjLCBuby13cmFwCittc2dpZCAiQjxFc3NlbnRpYWw6PiBCPHllcz58Qjxubz4iCittc2dzdHIgIkI8RXNzZW50aWFsOj4gQjx5ZXM+fEI8bm8+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41Ojc4Cittc2dpZCAiIgorIlRoaXMgZmllbGQgaXMgdXN1YWxseSBvbmx5IG5lZWRlZCB3aGVuIHRoZSBhbnN3ZXIgaXMgQjx5ZXM+LiBJdCBkZW5vdGVzIGEgIgorInBhY2thZ2UgdGhhdCBpcyByZXF1aXJlZCBmb3IgcHJvcGVyIG9wZXJhdGlvbiBvZiB0aGUgc3lzdGVtLiBEcGtnIG9yIGFueSAiCisib3RoZXIgaW5zdGFsbGF0aW9uIHRvb2wgd2lsbCBub3QgYWxsb3cgYW4gQjxFc3NlbnRpYWw+IHBhY2thZ2UgdG8gYmUgcmVtb3ZlZCAiCisiKGF0IGxlYXN0IG5vdCB3aXRob3V0IHVzaW5nIG9uZSBvZiB0aGUgZm9yY2Ugb3B0aW9ucykuIgorbXNnc3RyICIiCisiRsOkbHRldCBrcsOkdnMgbm9ybWFsdCBzZXR0IGVuZGFzdCBvbSBzdmFyZXQgw6RyIEI8eWVzPiAoamEpLCBvY2ggYmV0ZWNrbmFyIGF0dCAiCisicGFrZXRldCBrcsOkdnMgZsO2ciBlbiBrb3JyZWt0IGluc3RhbGxhdGlvbiBhdiBzeXN0ZW1ldC4gRHBrZyBvY2ggYW5kcmEgIgorImluc3RhbGxhdGlvbnN2ZXJrdHlnIHRpbGzDpXRlciBpbnRlIGF0dCBldHQgcGFrZXQgbcOkcmt0IEI8RXNzZW50aWFsPiB0YXMgYm9ydCAiCisiKMOldG1pbnN0b25lIGludGUgdXRhbiBhdHQgYW52w6RuZGEgZW4gYXYgZGUgdHZpbmdhbmRlIGZsYWdnb3JuYSkuIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNTo3OAorIywgbm8td3JhcAorbXNnaWQgIkI8QXJjaGl0ZWN0dXJlOj4gSTxhcmNoPnxCPGFsbD4iCittc2dzdHIgIkI8QXJjaGl0ZWN0dXJlOj4gSTxhcmtpdGVrdHVyPnxCPGFsbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6ODYKK21zZ2lkICIiCisiVGhlIGFyY2hpdGVjdHVyZSBzcGVjaWZpZXMgd2hpY2ggdHlwZSBvZiBoYXJkd2FyZSB0aGlzIHBhY2thZ2Ugd2FzIGNvbXBpbGVkICIKKyJmb3IuIENvbW1vbiBhcmNoaXRlY3R1cmVzIGFyZSBgaTM4NicsIGBtNjhrJywgYHNwYXJjJywgYGFscGhhJywgYHBvd2VycGMnICIKKyJldGMuIE5vdGUgdGhhdCB0aGUgQjxhbGw+IG9wdGlvbiBpcyBtZWFudCBmb3IgcGFja2FnZXMgdGhhdCBhcmUgYXJjaGl0ZWN0dXJlICIKKyJpbmRlcGVuZGVudC4gU29tZSBleGFtcGxlcyBvZiB0aGlzIGFyZSBzaGVsbCBhbmQgUGVybCBzY3JpcHRzLCBhbmQgIgorImRvY3VtZW50YXRpb24uIgorbXNnc3RyICIiCisiQXJraXRla3R1cmVuIGFuZ2VyIHZpbGtlbiBzb3J0cyBtYXNraW52YXJhIHBha2V0ZXQga29tcGlsZXJhZGVzIGbDtnIuIFZhbmxpZ2EgIgorImFya2l0ZWt0dXJlciDDpHIgXCJpMzg2XCIsIFwibTY4a1wiLCBcInNwYXJjXCIsIFwiYWxwaGFcIiwgXCJwb3dlcnBjXCIgb3N2LiAgIgorIk9ic2VydmVyYSBhdHQgdsOkcmRldCBCPGFsbD4gw6RyIGF2c2V0dCBmw7ZyIHBha2V0IHNvbSDDpHIgb2Jlcm9lbmRlIGF2ICIKKyJhcmtpdGVrdHVyLiBFeGVtcGVsIHDDpSBkZXR0YSDDpHIgc2thbC0gZWxsZXIgUGVybHNrcmlwdCBvY2ggZG9rdW1lbnRhdGlvbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41Ojg2IGRlYi1zcmMtY29udHJvbC41Ojg1CisjLCBuby13cmFwCittc2dpZCAiQjxPcmlnaW46Pkk8IG5hbWU+IgorbXNnc3RyICJCPE9yaWdpbjo+STwgbmFtbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6ODkKK21zZ2lkICJUaGUgbmFtZSBvZiB0aGUgZGlzdHJpYnV0aW9uIHRoaXMgcGFja2FnZSBpcyBvcmlnaW5hdGluZyBmcm9tLiIKK21zZ3N0ciAiTmFtbmV0IHDDpSBkZW4gZGlzdHJpYnV0aW9uIHBha2V0ZXQgaMOkcnN0YW1tYXIgZnLDpW4uIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNTo4OSBkZWItc3JjLWNvbnRyb2wuNTo2NgorIywgbm8td3JhcAorbXNnaWQgIkI8QnVnczo+STwgdXJsPiIKK21zZ3N0ciAiQjxCdWdzOj5JPCB1cmw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41Ojk0Cittc2dpZCAiIgorIlRoZSBJPHVybD4gb2YgdGhlIGJ1ZyB0cmFja2luZyBzeXN0ZW0gZm9yIHRoaXMgcGFja2FnZS4gVGhlIGN1cnJlbnQgdXNlZCAiCisiZm9ybWF0IGlzIEk8YnRzLXR5cGU+Qjw6Ly8+STxidHMtYWRkcmVzcz4sIGxpa2UgQjxkZWJidWdzOi8vYnVncy5kZWJpYW4ub3JnPi4iCittc2dzdHIgIiIKKyJJPFVSTD46ZW4gdGlsbCBmZWxyYXBwb3J0ZXJpbmdzc3lzdGVtZXQgZsO2ciBkZXR0YSBwYWtldC4gRGV0IG51dmFyYW5kZSAiCisiZm9ybWF0ZXQgw6RyIEk8c3lzdGVtdHlwPkI8Oi8vPkk8YWRyZXNzPiwgdGlsbCBleGVtcGVsIEI8ZGViYnVnczovL2J1Z3MuIgorImRlYmlhbi5vcmc+LiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6OTQgZGViLXNyYy1jb250cm9sLjU6NjIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPEhvbWVwYWdlOj5JPCB1cmw+IgorbXNnc3RyICJCPEhvbWVwYWdlOj5JPCB1cmw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41Ojk3Cittc2dpZCAiVGhlIHVwc3RyZWFtIHByb2plY3QgaG9tZSBwYWdlIEk8dXJsPi4iCittc2dzdHIgIlVSTCB0aWxsIHVwcHN0csO2bXNwcm9qZWt0ZXRzIGhlbXNpZGUtSTx1cmw+LiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6OTcgZGViLXNyYy1jb250cm9sLjU6MjIyCisjLCBuby13cmFwCittc2dpZCAiQjxUYWc6Pkk8IHRhZy1saXN0PiIKK21zZ3N0ciAiQjxUYWc6Pkk8IGxpc3RhLW1lZC1tw6Rya2VuPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToxMDEKK21zZ2lkICIiCisiTGlzdCBvZiB0YWdzIGRlc2NyaWJpbmcgdGhlIHF1YWxpdGllcyBvZiB0aGUgcGFja2FnZS4gVGhlIGRlc2NyaXB0aW9uIGFuZCAiCisibGlzdCBvZiBzdXBwb3J0ZWQgdGFncyBjYW4gYmUgZm91bmQgaW4gdGhlIEI8ZGVidGFncz4gcGFja2FnZS4iCittc2dzdHIgIiIKKyJMaXN0YSDDtnZlciBtw6Rya2VuIHNvbSBiZXNrcml2ZXIgcGFrZXRldHMgZWdlbnNrYXBlci4gRW4gYmVza3Jpdm5pbmdlbiBvY2ggIgorImbDtnJ0ZWNrbmluZyDDtnZlciBrw6RuZGEgbcOkcmtlbiBmaW5ucyBpIHBha2V0ZXQgQjxkZWJ0YWdzPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjEwMSBkZWItc3JjLWNvbnRyb2wuNToyMTkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPE11bHRpLUFyY2g6PiBCPHNhbWU+fEI8Zm9yZWlnbj58QjxhbGxvd2VkPiIKK21zZ3N0ciAiQjxNdWx0aS1BcmNoOj4gQjxzYW1lPnxCPGZvcmVpZ24+fEI8YWxsb3dlZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MTEzCittc2dpZCAiIgorIlRoaXMgZmllbGQgaXMgdXNlZCB0byBpbmRpY2F0ZSBob3cgdGhpcyBwYWNrYWdlIHNob3VsZCBiZWhhdmUgb24gYSBtdWx0aS0iCisiYXJjaCBpbnN0YWxsYXRpb25zLiBUaGUgdmFsdWUgQjxzYW1lPiBtZWFucyB0aGF0IHRoZSBwYWNrYWdlIGlzIGNvLSIKKyJpbnN0YWxsYWJsZSB3aXRoIGl0c2VsZiwgYnV0IGl0IG11c3Qgbm90IGJlIHVzZWQgdG8gc2F0aXNmeSB0aGUgZGVwZW5kZW5jeSAiCisib2YgYW55IHBhY2thZ2Ugb2YgYSBkaWZmZXJlbnQgYXJjaGl0ZWN0dXJlIGZyb20gaXRzZWxmLiBUaGUgdmFsdWUgQjxmb3JlaWduPiAiCisibWVhbnMgdGhhdCB0aGUgcGFja2FnZSBpcyBub3QgY28taW5zdGFsbGFibGUgd2l0aCBpdHNlbGYsIGJ1dCBzaG91bGQgYmUgIgorImFsbG93ZWQgdG8gc2F0aXNmeSB0aGUgZGVwZW5kZW5jeSBvZiBhIHBhY2thZ2Ugb2YgYSBkaWZmZXJlbnQgYXJjaCBmcm9tICIKKyJpdHNlbGYuIFRoZSB2YWx1ZSBCPGFsbG93ZWQ+IGFsbG93cyByZXZlcnNlLWRlcGVuZGVuY2llcyB0byBpbmRpY2F0ZSBpbiAiCisidGhlaXIgRGVwZW5kcyBmaWVsZCB0aGF0IHRoZXkgbmVlZCBhIHBhY2thZ2UgZnJvbSBhIGZvcmVpZ24gYXJjaGl0ZWN0dXJlLCAiCisiYnV0IGhhcyBubyBlZmZlY3Qgb3RoZXJ3aXNlLiBUaGlzIGZpZWxkIHNob3VsZCBub3QgYmUgcHJlc2VudCBpbiBwYWNrYWdlcyAiCisid2l0aCB0aGUgQjxBcmNoaXRlY3R1cmU6IGFsbD4gZmllbGQuIgorbXNnc3RyICIiCisiRGV0IGjDpHIgZsOkbHRldCBhbnbDpG5kcyBmw7ZyIGF0dCBhbmdlIGh1ciBwYWtldGV0IHNrYWxsIGZ1bmdlcmEgcMOlIGVuICIKKyJmbGVyYXJraXRla3R1cnNpbnN0YWxsYXRpb24uIFbDpHJkZXQgQjxzYW1lPiAoc2FtbWEpIGJldHlkZXIgYXR0IHBha2V0IGthbiAiCisic2FtaW5zdGFsbGVyYXMgbWVkIHNpZyBzasOkbHZ0LCBtZW4ga2FuIGludGUgYW52w6RuZGFzIGbDtnIgYXR0IHVwcGZ5bGxhICIKKyJiZXJvZW5kZW4gZsO2ciBwYWtldCBtZWQgZW4gYW5uYW4gYXJraXRla3R1ciDDpG4gc2lnIHNqw6RsdnQuIFbDpHJkZXQgQjxmb3JlaWduPiAiCisiKGZyw6RtbWFuZGUpIGJldHlkZXIgYXR0IHBha2V0ZXQgaW50ZSBrYW4gc2FtaW5zdGFsbGVyYXMgbWVkIHNpZyBzasOkbHZ0LCBtZW4gIgorImF0dCBkZXQga2FuIGFudsOkbmRhcyBmw7ZyIGF0dCB1cHBmeWxsYSBiZXJvZW5kZW4gZsO2ciBwYWtldCBtZWQgZW4gYW5uYW4gIgorImFya2l0ZWt0dXIgw6RuIHNpZyBzasOkbHZ0LiBWw6RyZGV0IEI8YWxsb3dlZD4gKHRpbGzDpXRldCkgdGlsbMOldGVyIGF0dCBvbXbDpG5kYSAiCisiYmVyb2VuZGVuIGthbiBhbmdlIGkgc2luYSBEZXBlbmRzLWbDpGx0IGF0dCBkZSBiZWjDtnZlciBldHQgcGFrZXQgZnLDpW4gZW4gIgorImZyw6RtbWFuZGUgYXJraXRla3R1ciwgbWVuIGhhciBpIMO2dnJpZ3QgaW5nZW4gZnVua3Rpb24uIEbDpGx0ZXQgYsO2ciBpbnRlICIKKyJmw7ZyZWtvbW1hIGkgcGFrZXQgbWVkIGbDpGx0ZXQgQjxBcmNoaXRlY3R1cmU6IGFsbD4uIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNToxMTMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPFNvdXJjZTo+STwgc291cmNlLW5hbWU+IgorbXNnc3RyICJCPFNvdXJjZTo+STwga8OkbGxrb2RzbmFtbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MTE3Cittc2dpZCAiIgorIlRoZSBuYW1lIG9mIHRoZSBzb3VyY2UgcGFja2FnZSB0aGF0IHRoaXMgYmluYXJ5IHBhY2thZ2UgY2FtZSBmcm9tLCBpZiAiCisiZGlmZmVyZW50IHRoYW4gdGhlIG5hbWUgb2YgdGhlIHBhY2thZ2UgaXRzZWxmLiIKK21zZ3N0ciAiIgorIk5hbW5ldCBww6UgZGV0IGvDpGxsa29kc3Bha2V0IHNvbSBiaW7DpHJwYWtldGV0IGtvbW1lciBmcsOlbiwgb20gZGV0IHNraWxqZXIgc2lnICIKKyJmcsOlbiBuYW1uZXQgcMOlIHNqw6RsdmEgcGFrZXRldC4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjExOCBkZWItc3JjLWNvbnRyb2wuNToyMDIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPFN1YmFyY2hpdGVjdHVyZTo+STwgdmFsdWU+IgorbXNnc3RyICJCPFN1YmFyY2hpdGVjdHVyZTo+STwgdsOkcmRlPiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MTIxIGRlYi1zcmMtY29udHJvbC41OjIwNQorIywgbm8td3JhcAorbXNnaWQgIkI8S2VybmVsLVZlcnNpb246Pkk8IHZhbHVlPiIKK21zZ3N0ciAiQjxLZXJuZWwtVmVyc2lvbjo+STwgdsOkcmRlPiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MTI0IGRlYi1zcmMtY29udHJvbC41OjIwOAorIywgbm8td3JhcAorbXNnaWQgIkI8SW5zdGFsbGVyLU1lbnUtSXRlbTo+STwgdmFsdWU+IgorbXNnc3RyICJCPEluc3RhbGxlci1NZW51LUl0ZW06Pkk8IHbDpHJkZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MTMxIGRlYi1zcmMtY29udHJvbC41OjIxNQorbXNnaWQgIiIKKyJUaGVzZSBmaWVsZHMgYXJlIHVzZWQgYnkgdGhlIGRlYmlhbi1pbnN0YWxsZXIgYW5kIGFyZSB1c3VhbGx5IG5vdCBuZWVkZWQuICAiCisiU2VlIC91c3Ivc2hhcmUvZG9jL2RlYmlhbi1pbnN0YWxsZXIvZGV2ZWwvbW9kdWxlcy50eHQgZnJvbSB0aGUgQjxkZWJpYW4tIgorImluc3RhbGxlcj4gcGFja2FnZSBmb3IgbW9yZSBkZXRhaWxzIGFib3V0IHRoZW0uIgorbXNnc3RyICIiCisiRGVzc2EgZsOkbHQgYW52w6RuZHMgYXYgZGViaWFuLWluc3RhbGxlciBvY2ggYmVow7Z2cyBub3JtYWx0IGludGUuIFNlIC91c3IvIgorInNoYXJlL2RvYy9kZWJpYW4taW5zdGFsbGVyL2RldmVsL21vZHVsZXMudHh0IGZyw6VuIHBha2V0ZXQgQjxkZWJpYW4tIgorImluc3RhbGxlcj4gZsO2ciBtZXIgaW5mb3JtYXRpb24gb20gZGVtLiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MTMyIGRlYi1zcmMtY29udHJvbC41OjIzMworIywgbm8td3JhcAorbXNnaWQgIkI8RGVwZW5kczo+STwgcGFja2FnZS1saXN0PiIKK21zZ3N0ciAiQjxEZXBlbmRzOj5JPCBwYWtldGxpc3RhPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToxNDMKK21zZ2lkICIiCisiTGlzdCBvZiBwYWNrYWdlcyB0aGF0IGFyZSByZXF1aXJlZCBmb3IgdGhpcyBwYWNrYWdlIHRvIHByb3ZpZGUgYSBub24tdHJpdmlhbCAiCisiYW1vdW50IG9mIGZ1bmN0aW9uYWxpdHkuIFRoZSBwYWNrYWdlIG1haW50ZW5hbmNlIHNvZnR3YXJlIHdpbGwgbm90IGFsbG93IGEgIgorInBhY2thZ2UgdG8gYmUgaW5zdGFsbGVkIGlmIHRoZSBwYWNrYWdlcyBsaXN0ZWQgaW4gaXRzIEI8RGVwZW5kcz4gZmllbGQgIgorImFyZW4ndCBpbnN0YWxsZWQgKGF0IGxlYXN0IG5vdCB3aXRob3V0IHVzaW5nIHRoZSBmb3JjZSBvcHRpb25zKS4gIEluIGFuICIKKyJpbnN0YWxsYXRpb24sIHRoZSBwb3N0aW5zdCBzY3JpcHRzIG9mIHBhY2thZ2VzIGxpc3RlZCBpbiBEZXBlbmRzOiBmaWVsZHMgYXJlICIKKyJydW4gYmVmb3JlIHRob3NlIG9mIHRoZSBwYWNrYWdlcyB3aGljaCBkZXBlbmQgb24gdGhlbS4gT24gdGhlIG9wcG9zaXRlLCBpbiBhICIKKyJyZW1vdmFsLCB0aGUgcHJlcm0gc2NyaXB0IG9mIGEgcGFja2FnZSBpcyBydW4gYmVmb3JlIHRob3NlIG9mIHRoZSBwYWNrYWdlcyAiCisibGlzdGVkIGluIGl0cyBEZXBlbmRzOiBmaWVsZC4iCittc2dzdHIgIiIKKyJMaXN0YSDDtnZlciBwYWtldCBzb20ga3LDpHZzIGbDtnIgYXR0IHBha2V0ZXQgc2thbGwga3VubmEgdGlsbGhhbmRhaMOlbGxhIGVuICIKKyJpY2tlLXRyaXZpYWwgbcOkbmdkIGZ1bmt0aW9uYWxpdGV0LiBQYWtldGhhbnRlcmluZ3Nwcm9ncmFtdmFyYW4ga29tbWVyIGludGUgIgorInRpbGzDpXRhIGF0dCBldHQgcGFrZXQgaW5zdGFsbGVyYXMgb20gcGFrZXRlbiBzb20gbGlzdGFzIGkgQjxEZXBlbmRzPi1mw6RsdGV0ICIKKyJpbnRlIMOkciBpbnN0YWxsZXJhZGUgKMOldG1pbnN0b25lIGludGUgdXRhbiBhdHQgYW52w6RuZGEgZW4gYXYgZGUgdHZpbmdhbmRlICIKKyJmbGFnZ29ybmEpLiBWaWQgZW4gaW5zdGFsbGF0aW9uIGvDtnJzIHBvc3RpbnN0LXNrcmlwdGVuIGkgcGFrZXRlbiBpIERlcGVuZHM6LSIKKyJmw6RsdGVuIGlubmFuIGRlIHBha2V0IHNvbSBiZXJvciBww6UgZGVtLiBVbmRlciBkZXQgb212w6RuZGEgZsO2cmjDpWxsYW5kZXQsIGVuICIKKyJib3J0dGFnbmluZywga8O2cnMgcHJlcm0tc2tyaXB0ZXQgaSBldHQgcGFrZXQgaW5uYW4gZGUgc29tIGZpbm5zIGkgZGVzcyAiCisiRGVwZW5kczotZsOkbHQuIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNToxNDMgZGViLXNyYy1jb250cm9sLjU6MjM2CisjLCBuby13cmFwCittc2dpZCAiQjxQcmUtRGVwZW5kczo+STwgcGFja2FnZS1saXN0PiIKK21zZ3N0ciAiQjxQcmUtRGVwZW5kczo+STwgcGFrZXRsaXN0YT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MTUwCittc2dpZCAiIgorIkxpc3Qgb2YgcGFja2FnZXMgdGhhdCBtdXN0IGJlIGluc3RhbGxlZCBCPGFuZD4gY29uZmlndXJlZCBiZWZvcmUgdGhpcyBvbmUgIgorImNhbiBiZSBpbnN0YWxsZWQuIFRoaXMgaXMgdXN1YWxseSB1c2VkIGluIHRoZSBjYXNlIHdoZXJlIHRoaXMgcGFja2FnZSAiCisicmVxdWlyZXMgYW5vdGhlciBwYWNrYWdlIGZvciBydW5uaW5nIGl0cyBwcmVpbnN0IHNjcmlwdC4iCittc2dzdHIgIiIKKyJMaXN0YSDDtnZlciBwYWtldCBzb20gbcOlc3RlIHZhcmEgaW5zdGFsbGVyYWRlIEI8b2NoPiBrb25maWd1cmVyYWRlIGlubmFuICIKKyJwYWtldGV0IGthbiBpbnN0YWxsZXJhcy4gRGV0dGEgYW52w6RuZHMgbm9ybWFsdCBpIGRlIGZhbGwgcGFrZXRldCBrcsOkdmVyIGF0dCAiCisiZXR0IGFubmF0IHBha2V0IMOkciBpbnN0YWxsZXJhdCBmw7ZyIHNpdHQgcHJlaW5zdC1za3JpcHQuIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNToxNTAgZGViLXNyYy1jb250cm9sLjU6MjM5CisjLCBuby13cmFwCittc2dpZCAiQjxSZWNvbW1lbmRzOj5JPCBwYWNrYWdlLWxpc3Q+IgorbXNnc3RyICJCPFJlY29tbWVuZHM6Pkk8IHBha2V0bGlzdGE+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjE1NworbXNnaWQgIiIKKyJMaXN0cyBwYWNrYWdlcyB0aGF0IHdvdWxkIGJlIGZvdW5kIHRvZ2V0aGVyIHdpdGggdGhpcyBvbmUgaW4gYWxsIGJ1dCB1bnVzdWFsICIKKyJpbnN0YWxsYXRpb25zLiBUaGUgcGFja2FnZSBtYWludGVuYW5jZSBzb2Z0d2FyZSB3aWxsIHdhcm4gdGhlIHVzZXIgaWYgdGhleSAiCisiaW5zdGFsbCBhIHBhY2thZ2Ugd2l0aG91dCB0aG9zZSBsaXN0ZWQgaW4gaXRzIEI8UmVjb21tZW5kcz4gZmllbGQuIgorbXNnc3RyICIiCisiTGlzdGEgw7Z2ZXIgcGFrZXQgc29tIGLDtnIgaW5zdGFsbGVyYXMgdGlsbHNhbW1hbnMgbWVkIHBha2V0ZXQgaSBkZSBhbGxyYSAiCisiZmxlc3RhIGZhbGwuICBQYWtldGhhbnRlcmluZ3Nwcm9ncmFtdmFyYW4ga29tbWVyIGF0dCB2YXJuYSBhbnbDpG5kYXJlbiBvbSBtYW4gIgorImluc3RhbGxlcmFyIGV0dCBwYWtldCB1dGFuIGRlIHNvbSBsaXN0YXMgaSBCPFJlY29tbWVuZHM+LWbDpGx0ZXQuIgorCisjLiB0eXBlOiBUUAorIzogZGViLWNvbnRyb2wuNToxNTcgZGViLXNyYy1jb250cm9sLjU6MjQyCisjLCBuby13cmFwCittc2dpZCAiQjxTdWdnZXN0czo+STwgcGFja2FnZS1saXN0PiIKK21zZ3N0ciAiQjxTdWdnZXN0czo+STwgcGFrZXRsaXN0YT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MTYyCittc2dpZCAiIgorIkxpc3RzIHBhY2thZ2VzIHRoYXQgYXJlIHJlbGF0ZWQgdG8gdGhpcyBvbmUgYW5kIGNhbiBwZXJoYXBzIGVuaGFuY2UgaXRzICIKKyJ1c2VmdWxuZXNzLCBidXQgd2l0aG91dCB3aGljaCBpbnN0YWxsaW5nIHRoaXMgcGFja2FnZSBpcyBwZXJmZWN0bHkgIgorInJlYXNvbmFibGUuIgorbXNnc3RyICIiCisiTGlzdGEgw7Z2ZXIgcGFrZXQgc29tIMOkciByZWxhdGVyYWRlIHRpbGwgcGFrZXRldCBvY2ggc29tIGthbnNrZSBrYW4gZ8O2cmEgZGV0ICIKKyJtZXIgYW52w6RuZGJhcnQsIG1lbiB1dGFuIHZpbGthIGRldCBmb3J0ZmFyYW5kZSDDpHIgcmltbGlndCBhdHQgaW5zdGFsbGVyYSAiCisicGFrZXRldC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MTc0Cittc2dpZCAiIgorIlRoZSBzeW50YXggb2YgQjxEZXBlbmRzPiwgQjxQcmUtRGVwZW5kcz4sIEI8UmVjb21tZW5kcz4gYW5kIEI8U3VnZ2VzdHM+ICIKKyJmaWVsZHMgaXMgYSBsaXN0IG9mIGdyb3VwcyBvZiBhbHRlcm5hdGl2ZSBwYWNrYWdlcy4gRWFjaCBncm91cCBpcyBhIGxpc3Qgb2YgIgorInBhY2thZ2VzIHNlcGFyYXRlZCBieSB2ZXJ0aWNhbCBiYXIgKG9yIGBwaXBlJykgc3ltYm9scywgYHwnLiBUaGUgZ3JvdXBzIGFyZSAiCisic2VwYXJhdGVkIGJ5IGNvbW1hcy4gQ29tbWFzIGFyZSB0byBiZSByZWFkIGFzIGBBTkQnLCBhbmQgcGlwZXMgYXMgYE9SJywgd2l0aCAiCisicGlwZXMgYmluZGluZyBtb3JlIHRpZ2h0bHkuIEVhY2ggcGFja2FnZSBuYW1lIGlzIG9wdGlvbmFsbHkgZm9sbG93ZWQgYnkgYSAiCisidmVyc2lvbiBudW1iZXIgc3BlY2lmaWNhdGlvbiBpbiBwYXJlbnRoZXNlcy4iCittc2dzdHIgIiIKKyJTeW50YXhlbiBmw7ZyIGbDpGx0ZW4gQjxEZXBlbmRzPiwgQjxQcmUtRGVwZW5kcz4sIEI8UmVjb21tZW5kcz4gb2NoICIKKyJCPFN1Z2dlc3RzPiDDpHIgZW4gbGlzdGEgbWVkIGdydXBwZXIgYXYgYWx0ZXJuYXRpdmEgcGFrZXQuIFZhcmplIGdydXBwICIKKyJpbm5laMOlbGxlciBlbiBsaXN0YSBtZWQgcGFrZXQgYXZkZWxhZGUgbWVkIGV0dCB2ZXJ0aWthbHN0cmVjayAocsO2cikgKFwifCIKKyJcIikuICBHcnVwcGVybmEgYXZkZWxhcyBtZWQga29tbWF0ZWNrZW4uIEtvbW1hIHV0bMOkc2VzIHNvbSBcIk9DSFwiLCBvY2ggIgorInZlcnRpa2Fsc3RyZWNrZW4gc29tIFwiRUxMRVJcIiwgZMOkciB2ZXJ0aWthbHN0cmVja2VuIGJpbmRlciBow6VyZGFyZS4gVmFyamUgIgorInBha2V0bmFtbiBrYW4gZXZlbnR1ZWxsdCBmw7ZsamFzIGF2IGVuIHZlcnNpb25zbnVtbWVyYW5naXZlbHNlIGlub20gIgorInBhcmVudGVzZXIuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjE4MAorbXNnaWQgIiIKKyJBIHZlcnNpb24gbnVtYmVyIG1heSBzdGFydCB3aXRoIGEgYEU8Z3Q+RTxndD4nLCBpbiB3aGljaCBjYXNlIGFueSBsYXRlciAiCisidmVyc2lvbiB3aWxsIG1hdGNoLCBhbmQgbWF5IHNwZWNpZnkgb3Igb21pdCB0aGUgRGViaWFuIHBhY2thZ2luZyByZXZpc2lvbiAiCisiKHNlcGFyYXRlZCBieSBhIGh5cGhlbikuIEFjY2VwdGVkIHZlcnNpb24gcmVsYXRpb25zaGlwcyBhcmUgXCJFPGd0PkU8Z3Q+XCIgIgorImZvciBncmVhdGVyIHRoYW4sIFwiRTxsdD5FPGx0PlwiIGZvciBsZXNzIHRoYW4sIFwiRTxndD49XCIgZm9yIGdyZWF0ZXIgdGhhbiAiCisib3IgZXF1YWwgdG8sIFwiRTxsdD49XCIgZm9yIGxlc3MgdGhhbiBvciBlcXVhbCB0bywgYW5kIFwiPVwiIGZvciBlcXVhbCB0by4iCittc2dzdHIgIiIKKyJFdHQgdmVyc2lvbnNudW1tZXIga2FuIGLDtnJqYSBtZWQgXCJFPGd0PkU8Z3Q+XCIsIHZpbGtldCBiZXR5ZGVyIGF0dCB2aWxrZW4gIgorInNvbSBoZWxzdCBzZW5hcmUgdmVyc2lvbiBtYXRjaGFyLCBkw6RyIGRldCDDpHIgdmFsZnJpdHQgYXR0IGFuZ2UgIgorIkRlYmlhbnVwcGRhdGVyaW5nZW4gKGF2ZGVsYWQgbWVkIGJpbmRlc3RyZWNrKS4gIFRpbGzDpXRuYSB2ZXJzaW9ucmVsYXRpb25lciAiCisiw6RyIFwiRTxndD5FPGd0PlwiIGbDtnIgc3TDtnJyZSDDpG4sIFwiRTxsdD5FPGx0PlwiIGbDtnIgbWluZHJlIMOkbiwgXCJFPGd0Pj1cIiAiCisiZsO2ciBzdMO2cnJlIMOkbiBlbGxlciBsaWthIG1lZFwiLCBcIkU8bHQ+PVwiIGbDtnIgbWluZHJlIMOkbiBlbGxlciBsaWthIG1lZCwgb2NoICIKKyJcIj1cIiBmw7ZyIGxpa2EgbWVkLiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MTgwIGRlYi1zcmMtY29udHJvbC41OjI0NQorIywgbm8td3JhcAorbXNnaWQgIkI8QnJlYWtzOj5JPCBwYWNrYWdlLWxpc3Q+IgorbXNnc3RyICJCPEJyZWFrczo+STwgcGFrZXRsaXN0YT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MTg4Cittc2dpZCAiIgorIkxpc3RzIHBhY2thZ2VzIHRoYXQgdGhpcyBvbmUgYnJlYWtzLCBmb3IgZXhhbXBsZSBieSBleHBvc2luZyBidWdzIHdoZW4gdGhlICIKKyJuYW1lZCBwYWNrYWdlcyByZWx5IG9uIHRoaXMgb25lLiBUaGUgcGFja2FnZSBtYWludGVuYW5jZSBzb2Z0d2FyZSB3aWxsIG5vdCAiCisiYWxsb3cgYnJva2VuIHBhY2thZ2VzIHRvIGJlIGNvbmZpZ3VyZWQ7IGdlbmVyYWxseSB0aGUgcmVzb2x1dGlvbiBpcyB0byAiCisidXBncmFkZSB0aGUgcGFja2FnZXMgbmFtZWQgaW4gYSBCPEJyZWFrcz4gZmllbGQuIgorbXNnc3RyICIiCisiTGlzdGFyIHBha2V0IHNvbSBmw7Zyc3TDtnJzIGF2IGRldHRhLCB0aWxsIGV4ZW1wZWwgZ2Vub20gYXR0IGx5ZnRhIGZyYW0gZmVsICIKKyJuw6RyIGRldCBuYW1uZ2l2bmEgcGFrZXRldCBiZXJvciBww6UgZGV0dGEuIFBha2V0aGFudGVyaW5nc3Byb2dyYW12YXJhbiAiCisidGlsbMOldGVyIGludGUgYXR0IGbDtnJzdMO2cmRhIHBha2V0IGtvbmZpZ3VyZXJhczsgcHJvYmxlbWV0IGzDtnNlcyB2YW5saWd0dmlzICIKKyJnZW5vbSBhdHQgdXBwZ3JhZGVyYSBwYWtldGVuIHNvbSBuYW1uZ2VzIGkgZXR0IEI8QnJlYWtzPi1mw6RsdC4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjE4OCBkZWItc3JjLWNvbnRyb2wuNToyNTQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPENvbmZsaWN0czo+STwgcGFja2FnZS1saXN0PiIKK21zZ3N0ciAiQjxDb25mbGljdHM6Pkk8IHY+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjE5NgorbXNnaWQgIiIKKyJMaXN0cyBwYWNrYWdlcyB0aGF0IGNvbmZsaWN0IHdpdGggdGhpcyBvbmUsIGZvciBleGFtcGxlIGJ5IGNvbnRhaW5pbmcgZmlsZXMgIgorIndpdGggdGhlIHNhbWUgbmFtZXMuIFRoZSBwYWNrYWdlIG1haW50ZW5hbmNlIHNvZnR3YXJlIHdpbGwgbm90IGFsbG93ICIKKyJjb25mbGljdGluZyBwYWNrYWdlcyB0byBiZSBpbnN0YWxsZWQgYXQgdGhlIHNhbWUgdGltZS4gVHdvIGNvbmZsaWN0aW5nICIKKyJwYWNrYWdlcyBzaG91bGQgZWFjaCBpbmNsdWRlIGEgQjxDb25mbGljdHM+IGxpbmUgbWVudGlvbmluZyB0aGUgb3RoZXIuIgorbXNnc3RyICIiCisiTGlzdGFyIHBha2V0IHNvbSDDpHIgaSBrb25mbGlrdCAoa3JvY2thcikgbWVkIGRldHRhLCB0aWxsIGV4ZW1wZWwgZ2Vub20gYXR0ICIKKyJpbm5laMOlbGxhIGZpbGVyIG1lZCBzYW1tYSBuYW1uLiBQYWtldGhhbnRlcmluZ3Nwcm9ncmFtdmFyYW4gdGlsbMOldGVyIGludGUgIgorInR2w6Ugc8OlZGFuYSBwYWtldCBhdHQgdmFyYSBpbnN0YWxsZXJhZGUgc2FtdGlkaWd0LiBUdsOlIHBha2V0IG1lZCBpbmLDtnJkZXMgIgorImtvbmZsaWt0IGLDtnIgaW5uZWjDpWxsYSBlbiBCPENvbmZsaWN0cz4tcmFkIG1lZCB2YXJhbmRyYXMgbmFtbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItY29udHJvbC41OjE5NiBkZWItc3JjLWNvbnRyb2wuNToyNTEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPFJlcGxhY2VzOj5JPCBwYWNrYWdlLWxpc3Q+IgorbXNnc3RyICJCPFJlcGxhY2VzOj5JPCBwYWtldGxpc3RhPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToyMDQKK21zZ2lkICIiCisiTGlzdCBvZiBwYWNrYWdlcyBmaWxlcyBmcm9tIHdoaWNoIHRoaXMgb25lIHJlcGxhY2VzLiBUaGlzIGlzIHVzZWQgZm9yICIKKyJhbGxvd2luZyB0aGlzIHBhY2thZ2UgdG8gb3ZlcndyaXRlIHRoZSBmaWxlcyBvZiBhbm90aGVyIHBhY2thZ2UgYW5kIGlzICIKKyJ1c3VhbGx5IHVzZWQgd2l0aCB0aGUgQjxDb25mbGljdHM+IGZpZWxkIHRvIGZvcmNlIHJlbW92YWwgb2YgdGhlIG90aGVyICIKKyJwYWNrYWdlLCBpZiB0aGlzIG9uZSBhbHNvIGhhcyB0aGUgc2FtZSBmaWxlcyBhcyB0aGUgY29uZmxpY3RlZCBwYWNrYWdlLiIKK21zZ3N0ciAiIgorIkxpc3RhIMO2dmVyIHBha2V0IGVyc8OkdHRzIGF2IGZpbGVyIGZyw6VuIGRldCBow6RyIHBha2V0ZXQuIERldHRhIGFudsOkbmRzIGbDtnIgIgorImF0dCBtw7ZqbGlnZ8O2cmEgcGFrZXQgYXR0IHNrcml2YSDDtnZlciBmaWxlciBmcsOlbiBhbmRyYSBwYWtldCwgb2NoIGFudsOkbmRzICIKKyJub3JtYWx0IHNldHQgdGlsbHNhbW1hbnMgbWVkIEI8Q29uZmxpY3RzPi1mw6RsdGV0IGbDtnIgYXR0IHR2aW5nYSBmcmFtICIKKyJib3J0dGFnbmluZyBhdiBkZXQgYW5kcmEgcGFrZXRldCBvbSDDpHZlbiBkZXQgaMOkciBoYXIgZGUgZmlsZXIgc29tIGZpbm5zIGkgIgorInBha2V0ZXQgZGV0IHN0w6VyIGkga29uZmxpa3QgbWVkLiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MjA0IGRlYi1zcmMtY29udHJvbC41OjI1NworIywgbm8td3JhcAorbXNnaWQgIkI8UHJvdmlkZXM6Pkk8IHBhY2thZ2UtbGlzdD4iCittc2dzdHIgIkI8UHJvdmlkZXM6Pkk8IHBha2V0bGlzdGE+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjIxNAorbXNnaWQgIiIKKyJUaGlzIGlzIGEgbGlzdCBvZiB2aXJ0dWFsIHBhY2thZ2VzIHRoYXQgdGhpcyBvbmUgcHJvdmlkZXMuIFVzdWFsbHkgdGhpcyBpcyAiCisidXNlZCBpbiB0aGUgY2FzZSBvZiBzZXZlcmFsIHBhY2thZ2VzIGFsbCBwcm92aWRpbmcgdGhlIHNhbWUgc2VydmljZS4gIEZvciAiCisiZXhhbXBsZSwgc2VuZG1haWwgYW5kIGV4aW0gY2FuIHNlcnZlIGFzIGEgbWFpbCBzZXJ2ZXIsIHNvIHRoZXkgcHJvdmlkZSBhICIKKyJjb21tb24gcGFja2FnZSAoYG1haWwtdHJhbnNwb3J0LWFnZW50Jykgb24gd2hpY2ggb3RoZXIgcGFja2FnZXMgY2FuIGRlcGVuZC4gIgorIlRoaXMgd2lsbCBhbGxvdyBzZW5kbWFpbCBvciBleGltIHRvIHNlcnZlIGFzIGEgdmFsaWQgb3B0aW9uIHRvIHNhdGlzZnkgdGhlICIKKyJkZXBlbmRlbmN5LiBUaGlzIHByZXZlbnRzIHRoZSBwYWNrYWdlcyB0aGF0IGRlcGVuZCBvbiBhIG1haWwgc2VydmVyIGZyb20gIgorImhhdmluZyB0byBrbm93IHRoZSBwYWNrYWdlIG5hbWVzIGZvciBhbGwgb2YgdGhlbSwgYW5kIHVzaW5nIGB8JyB0byBzZXBhcmF0ZSAiCisidGhlIGxpc3QuIgorbXNnc3RyICIiCisiRGV0dGEgw6RyIGVuIGxpc3RhIGF2IHZpcnR1ZWxsYSBwYWtldCBzb20gdGlsbGhhbmRhaMOlbGxzIGF2IGRldHRhLiBOb3JtYWx0ICIKKyJzZXR0IGFudsOkbmRzIGRldHRhIGkgZGUgZmFsbCBmbGVyYSBwYWtldCB0aWxsaGFuZGFow6VsbGVyIHNhbW1hIHRqw6Ruc3QuIFRpbGwgIgorImV4ZW1wZWwga2FuIGLDpWRlIHNlbmRtYWlsIG9jaCBleGltIGZ1bmdlcmEgc29tIGUtcG9zdHNlcnZlciwgc8OlIGRlICIKKyJ0aWxsaGFuZGFow6VsbGVyIGV0dCBnZW1lbnNhbXQgcGFrZXQgKFwibWFpbC10cmFuc3BvcnQtYWdlbnRcIikgcMOlIHZpbGtldCAiCisiYW5kcmEgcGFrZXQga2FuIGJlcm8sIHZpbGtldCBnw7ZyIGRldCBtw7ZqbGlndCBmw7ZyIHNlbmRtYWlsIGVsbGVyIGV4aW0gYXR0ICIKKyJmdW5nZXJhIHNvbSBldHQgYWx0ZXJuYXRpdiBzb20gdGlsbGZyZWRzc3TDpGxsZXIgYmVyb2VuZGV0LiBEZXR0YSBmw7ZyaGluZHJhciAiCisiYXR0IHBha2V0IHNvbSBiZXJvciBww6UgZW4gZS1wb3N0c2VydmVyIG3DpXN0ZSBrw6RubmEgdGlsbCBhbGxhIGRlcmFzIHBha2V0bmFtbiAiCisib2NoIGFudsOkbmRhIFwifFwiIGbDtnIgYXR0IGRlbGEgYXYgbGlzdGFuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToyMzMKK21zZ2lkICIiCisiVGhlIHN5bnRheCBvZiBCPEJyZWFrcz4sIEI8Q29uZmxpY3RzPiwgQjxSZXBsYWNlcz4gYW5kIEI8UHJvdmlkZXM+IGlzIGEgbGlzdCAiCisib2YgcGFja2FnZSBuYW1lcywgc2VwYXJhdGVkIGJ5IGNvbW1hcyAoYW5kIG9wdGlvbmFsIHdoaXRlc3BhY2UpLiAgSW4gdGhlICIKKyJCPEJyZWFrcz4gYW5kIEI8Q29uZmxpY3RzPiBmaWVsZHMsIHRoZSBjb21tYSBzaG91bGQgYmUgcmVhZCBhcyBgT1InLiBBbiAiCisib3B0aW9uYWwgdmVyc2lvbiBjYW4gYWxzbyBiZSBnaXZlbiB3aXRoIHRoZSBzYW1lIHN5bnRheCBhcyBhYm92ZSBmb3IgdGhlICIKKyJCPEJyZWFrcz4sIEI8Q29uZmxpY3RzPiBhbmQgQjxSZXBsYWNlcz4gZmllbGRzLiIKK21zZ3N0ciAiIgorIlN5bnRheGVuIGbDtnIgQjxCcmVha3M+LCBCPENvbmZsaWN0cz4sIEI8UmVwbGFjZXM+IG9jaCBCPFByb3ZpZGVzPiDDpHIgZW4gIgorImxpc3RhIMO2dmVyIHBha2V0bmFtbiBhdmRlbGFkZSBtZWQga29tbWFuIChvY2ggZXZlbnR1ZWxsYSBibGFua3RlY2tlbikuIEkgIgorImbDpGx0ZW4gQjxCcmVha3M+IG9jaCBCPENvbmZsaWN0cz4gbMOkc2VzIGtvbW1hdGVja25ldCBzb20gXCJFTExFUlwiLiBFdHQgIgorImV2ZW50dWVsbHQgdmVyc2lvbnNudW1tZXIga2FuIMOkdmVuIGFuZ2VzLCBtZWQgc2FtbWEgc3ludGF4IHNvbSBvdmFuIGbDtnIgIgorImbDpGx0ZW4gQjxCcmVha3M+LCBCPENvbmZsaWN0cz4gb2NoIEI8UmVwbGFjZXM+LiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1jb250cm9sLjU6MjM0IGRlYi1zcmMtY29udHJvbC41OjI2MAorIywgbm8td3JhcAorbXNnaWQgIkI8QnVpbHQtVXNpbmc6Pkk8IHBhY2thZ2UtbGlzdD4iCittc2dzdHIgIkI8QnVpbHQtVXNpbmc6Pkk8IHBha2V0bGlzdGE+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItY29udHJvbC41OjI0NAorbXNnaWQgIiIKKyJUaGlzIGZpZWxkIGxpc3RzIGV4dHJhIHNvdXJjZSBwYWNrYWdlcyB0aGF0IHdlcmUgdXNlZCBkdXJpbmcgdGhlIGJ1aWxkIG9mICIKKyJ0aGlzIGJpbmFyeSBwYWNrYWdlLiAgVGhpcyBpcyBhbiBpbmRpY2F0aW9uIHRvIHRoZSBhcmNoaXZlIG1haW50ZW5hbmNlICIKKyJzb2Z0d2FyZSB0aGF0IHRoZXNlIGV4dHJhIHNvdXJjZSBwYWNrYWdlcyBtdXN0IGJlIGtlcHQgd2hpbHN0IHRoaXMgYmluYXJ5ICIKKyJwYWNrYWdlIGlzIG1haW50YWluZWQuICBUaGlzIGZpZWxkIG11c3QgYmUgYSBsaXN0IG9mIHNvdXJjZSBwYWNrYWdlIG5hbWVzICIKKyJ3aXRoIHN0cmljdCAoPSkgIHZlcnNpb24gcmVsYXRpb25zaGlwcy4gIE5vdGUgdGhhdCB0aGUgYXJjaGl2ZSBtYWludGVuYW5jZSAiCisic29mdHdhcmUgaXMgbGlrZWx5IHRvIHJlZnVzZSB0byBhY2NlcHQgYW4gdXBsb2FkIHdoaWNoIGRlY2xhcmVzIGEgQjxCdWlsdC0iCisiVXNpbmc+IHJlbGF0aW9uc2hpcCB3aGljaCBjYW5ub3QgYmUgc2F0aXNmaWVkIHdpdGhpbiB0aGUgYXJjaGl2ZS4iCittc2dzdHIgIiIKKyJGw6RsdGV0IHZpc2FyIHl0dGVybGlnYXJlIGvDpGxsa29kc3Bha2V0IHNvbSBhbnbDpG5kZXMgbsOkciBiaW7DpHJwYWtldGV0ICIKKyJieWdnZGVzLiBEZXR0YSBhbmdlciBmw7ZyIGhhbnRlcmluZ3Nwcm9ncmFtdmFyYW4gZsO2ciBhcmtpdmV0IGF0dCBkZXNzYSAiCisieXR0ZXJsaWdhcmUga8OkbGxrb2RzcGFrZXQgbcOlc3RlIGJlaMOlbGxhcyBzw6UgbMOkbmdlIGJpbsOkcnBha2V0ZXQgZmlubnMgaSAiCisiYXJraXZldC4gRsOkbHRldCBtw6VzdGUgaW5uZWjDpWxsYSBlbiBsaXN0YSBtZWQga8OkbGxrb2RzcGFrZXQgbWVkIHN0cmlrdGEgKD0pICIKKyJ2ZXJzaW9uc2Jlcm9lbmRlbi4gT2JzZXJ2ZXJhIGF0dCBoYW50ZXJpbmdzcHJvZ3JhbXZhcmFuIGbDtnIgYXJraXZldCB0cm9saWdlbiAiCisia29tbWVyIGF0dCBhdnZpc2EgZW4gaW5zw6RuZG5pbmcgc29tIGRla2xhcmVyYXIgZW4gQjxCdWlsdC1Vc2luZz4tcmVsYXRpb24gIgorInNvbSBpbnRlIGthbiB1cHBmeWxsYXMgaW5vbSBhcmtpdmV0LiIKKworIy4gdHlwZTogU0gKKyM6IGRlYi1jb250cm9sLjU6MjQ1IGRlYi1zcmMtY29udHJvbC41OjI4OCBzdGFydC1zdG9wLWRhZW1vbi44OjMwMgorIywgbm8td3JhcAorbXNnaWQgIkVYQU1QTEUiCittc2dzdHIgIkVYRU1QRUwiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1jb250cm9sLjU6MjY4CisjLCBuby13cmFwCittc2dpZCAiIgorIiMgQ29tbWVudFxuIgorIlBhY2thZ2U6IGdyZXBcbiIKKyJFc3NlbnRpYWw6IHllc1xuIgorIlByaW9yaXR5OiByZXF1aXJlZFxuIgorIlNlY3Rpb246IGJhc2VcbiIKKyJNYWludGFpbmVyOiBXaWNoZXJ0IEFra2VybWFuIEU8bHQ+d2Fra2VybWFAZGViaWFuLm9yZ0U8Z3Q+XG4iCisiQXJjaGl0ZWN0dXJlOiBzcGFyY1xuIgorIlZlcnNpb246IDIuNC0xXG4iCisiUHJlLURlcGVuZHM6IGxpYmM2IChFPGd0Pj0gMi4wLjEwNSlcbiIKKyJQcm92aWRlczogcmdyZXBcbiIKKyJDb25mbGljdHM6IHJncmVwXG4iCisiRGVzY3JpcHRpb246IEdOVSBncmVwLCBlZ3JlcCBhbmQgZmdyZXAuXG4iCisiIFRoZSBHTlUgZmFtaWx5IG9mIGdyZXAgdXRpbGl0aWVzIG1heSBiZSB0aGUgXCJmYXN0ZXN0IGdyZXAgaW4gdGhlIHdlc3RcIi5cbiIKKyIgR05VIGdyZXAgaXMgYmFzZWQgb24gYSBmYXN0IGxhenktc3RhdGUgZGV0ZXJtaW5pc3RpYyBtYXRjaGVyIChhYm91dFxuIgorIiB0d2ljZSBhcyBmYXN0IGFzIHN0b2NrIFVuaXggZWdyZXApIGh5YnJpZGl6ZWQgd2l0aCBhIEJveWVyLU1vb3JlLUdvc3BlclxuIgorIiBzZWFyY2ggZm9yIGEgZml4ZWQgc3RyaW5nIHRoYXQgZWxpbWluYXRlcyBpbXBvc3NpYmxlIHRleHQgZnJvbSBiZWluZ1xuIgorIiBjb25zaWRlcmVkIGJ5IHRoZSBmdWxsIHJlZ2V4cCBtYXRjaGVyIHdpdGhvdXQgbmVjZXNzYXJpbHkgaGF2aW5nIHRvXG4iCisiIGxvb2sgYXQgZXZlcnkgY2hhcmFjdGVyLiBUaGUgcmVzdWx0IGlzIHR5cGljYWxseSBtYW55IHRpbWVzIGZhc3RlclxuIgorIiB0aGFuIFVuaXggZ3JlcCBvciBlZ3JlcC4gKFJlZ3VsYXIgZXhwcmVzc2lvbnMgY29udGFpbmluZyBiYWNrcmVmZXJlbmNpbmdcbiIKKyIgd2lsbCBydW4gbW9yZSBzbG93bHksIGhvd2V2ZXIpLlxuIgorbXNnc3RyICIiCisiIyBLb21tZW50YXJcbiIKKyJQYWNrYWdlOiBncmVwXG4iCisiRXNzZW50aWFsOiB5ZXNcbiIKKyJQcmlvcml0eTogcmVxdWlyZWRcbiIKKyJTZWN0aW9uOiBiYXNlXG4iCisiTWFpbnRhaW5lcjogV2ljaGVydCBBa2tlcm1hbiBFPGx0Pndha2tlcm1hQGRlYmlhbi5vcmdFPGd0PlxuIgorIkFyY2hpdGVjdHVyZTogc3BhcmNcbiIKKyJWZXJzaW9uOiAyLjQtMVxuIgorIlByZS1EZXBlbmRzOiBsaWJjNiAoRTxndD49IDIuMC4xMDUpXG4iCisiUHJvdmlkZXM6IHJncmVwXG4iCisiQ29uZmxpY3RzOiByZ3JlcFxuIgorIkRlc2NyaXB0aW9uOiBHTlUgZ3JlcCwgZWdyZXAgYW5kIGZncmVwLlxuIgorIiBUaGUgR05VIGZhbWlseSBvZiBncmVwIHV0aWxpdGllcyBtYXkgYmUgdGhlIFwiZmFzdGVzdCBncmVwIGluIHRoZSB3ZXN0XCIuXG4iCisiIEdOVSBncmVwIGlzIGJhc2VkIG9uIGEgZmFzdCBsYXp5LXN0YXRlIGRldGVybWluaXN0aWMgbWF0Y2hlciAoYWJvdXRcbiIKKyIgdHdpY2UgYXMgZmFzdCBhcyBzdG9jayBVbml4IGVncmVwKSBoeWJyaWRpemVkIHdpdGggYSBCb3llci1Nb29yZS1Hb3NwZXJcbiIKKyIgc2VhcmNoIGZvciBhIGZpeGVkIHN0cmluZyB0aGF0IGVsaW1pbmF0ZXMgaW1wb3NzaWJsZSB0ZXh0IGZyb20gYmVpbmdcbiIKKyIgY29uc2lkZXJlZCBieSB0aGUgZnVsbCByZWdleHAgbWF0Y2hlciB3aXRob3V0IG5lY2Vzc2FyaWx5IGhhdmluZyB0b1xuIgorIiBsb29rIGF0IGV2ZXJ5IGNoYXJhY3Rlci4gVGhlIHJlc3VsdCBpcyB0eXBpY2FsbHkgbWFueSB0aW1lcyBmYXN0ZXJcbiIKKyIgdGhhbiBVbml4IGdyZXAgb3IgZWdyZXAuIChSZWd1bGFyIGV4cHJlc3Npb25zIGNvbnRhaW5pbmcgYmFja3JlZmVyZW5jaW5nXG4iCisiIHdpbGwgcnVuIG1vcmUgc2xvd2x5LCBob3dldmVyLilcbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWNvbnRyb2wuNToyNzYKK21zZ2lkICIiCisiQjxkZWI+KDUpLCBCPGRlYi12ZXJzaW9uPig1KSwgQjxkZWJ0YWdzPigxKSwgQjxkcGtnPigxKSwgQjxkcGtnLWRlYj4oMSkuIgorbXNnc3RyICIiCisiQjxkZWI+KDUpLCBCPGRlYi12ZXJzaW9uPig1KSwgQjxkZWJ0YWdzPigxKSwgQjxkcGtnPigxKSwgQjxkcGtnLWRlYj4oMSkuIgorCisjLiB0eXBlOiBUSAorIzogZGViLXNyYy1jb250cm9sLjU6MworIywgbm8td3JhcAorbXNnaWQgImRlYi1zcmMtY29udHJvbCIKK21zZ3N0ciAiZGViLXNyYy1jb250cm9sIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNTo2Cittc2dpZCAiZGViLXNyYy1jb250cm9sIC0gRGViaWFuIHNvdXJjZSBwYWNrYWdlcycgbWFzdGVyIGNvbnRyb2wgZmlsZSBmb3JtYXQiCittc2dzdHIgImRlYi1zcmMtY29udHJvbCAtIERlYmlhbnMgZmlsZm9ybWF0IGbDtnIga8OkbGxrb2RzcGFrZXRzIGh1dnVkc3R5cmZpbCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MjgKK21zZ2lkICIiCisiRWFjaCBEZWJpYW4gc291cmNlIHBhY2thZ2UgY29udGFpbnMgdGhlIG1hc3RlciBcImNvbnRyb2xcIiBmaWxlLCB3aGljaCAiCisiY29udGFpbnMgYXQgbGVhc3QgMiBwYXJhZ3JhcGhzLCBzZXBhcmF0ZWQgYnkgYSBibGFuayBsaW5lLiBUaGUgZmlyc3QgIgorInBhcmFncmFwaCBsaXN0cyBhbGwgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHNvdXJjZSBwYWNrYWdlIGluIGdlbmVyYWwsIHdoaWxlICIKKyJlYWNoIGZvbGxvd2luZyBwYXJhZ3JhcGggZGVzY3JpYmVzIGV4YWN0bHkgb25lIGJpbmFyeSBwYWNrYWdlLiBFYWNoICIKKyJwYXJhZ3JhcGggY29uc2lzdHMgb2YgYXQgbGVhc3Qgb25lIGZpZWxkLiBBIGZpZWxkIHN0YXJ0cyB3aXRoIGEgZmllbGRuYW1lLCAiCisic3VjaCBhcyBCPFBhY2thZ2U+IG9yIEI8U2VjdGlvbj4gKGNhc2UgaW5zZW5zaXRpdmUpLCBmb2xsb3dlZCBieSBhIGNvbG9uLCAiCisidGhlIGJvZHkgb2YgdGhlIGZpZWxkIGFuZCBhIG5ld2xpbmUuICBNdWx0aS1saW5lIGZpZWxkcyBhcmUgYWxzbyBhbGxvd2VkLCAiCisiYnV0IGVhY2ggc3VwcGxlbWVudGFyeSBsaW5lLCB3aXRob3V0IGEgZmllbGRuYW1lLCBzaG91bGQgc3RhcnQgd2l0aCBhdCBsZWFzdCAiCisib25lIHNwYWNlLiBUaGUgY29udGVudCBvZiB0aGUgbXVsdGktbGluZSBmaWVsZHMgaXMgZ2VuZXJhbGx5IGpvaW5lZCB0byBhICIKKyJzaW5nbGUgbGluZSBieSB0aGUgdG9vbHMgKGV4Y2VwdCBpbiB0aGUgY2FzZSBvZiB0aGUgQjxEZXNjcmlwdGlvbj4gZmllbGQsICIKKyJzZWUgYmVsb3cpLiBUbyBpbnNlcnQgZW1wdHkgbGluZXMgaW50byBhIG11bHRpLWxpbmUgZmllbGQsIGluc2VydCBhIGRvdCAiCisiYWZ0ZXIgdGhlIHNwYWNlLiBMaW5lcyBzdGFydGluZyB3aXRoIGEgQjwnIyc+IGFyZSB0cmVhdGVkIGFzIGNvbW1lbnRzLiIKK21zZ3N0ciAiIgorIlZhcmplIERlYmlhbmvDpGxsa29kc3Bha2V0IGlubmVow6VsbGVyIGh1dnVkLVwiY29udHJvbFwiLWZpbGVuLCB2aWxrZW4gIgorImlubmVow6XDpWxsZXIgw6V0bWluc3RvbmUgdHbDpSBzdHlja2VuLCBhdmRlbGFkZSBtZWQgZW4gdG9tcmFkLiBEZXQgZsO2cnN0YSAiCisic3R5Y2tldCBpbm5laMOlbGxlciBhbGwgZ2VuZXJlbGwgaW5mb3JtYXRpb24gb20ga8OkbGxrb2RzcGFrZXRldCwgbWVkYW4gZGUgIgorImbDtmxqYW5kZSBzdHlja2VuYSBiZXNrcml2ZXIgZXhha3QgZXR0IGJpbsOkcnBha2V0LiBWYXJqZSBzdHlja2UgYmVzdMOlciBhdiAiCisiw6V0bWluc3RvbmUgZXR0IGbDpGx0LiBFdHQgZsOkbHQgaW5sZWRzIG1lZCBldHQgZsOkbHRuYW1uLCB0aWxsIGV4ZW1wZWwgIgorIkI8UGFja2FnZT4gZWxsZXIgQjxTZWN0aW9uPiAoc2tpZnRsw6RnZXNva8OkbnNsaWd0KSwgZsO2bGp0IGF2IGV0dCBrb2xvbiwgIgorImbDpGx0aW5uZWjDpWxsZXQgb2NoIGV0dCBueXJhZHN0ZWNrZW4uIEZsZXJyYWRpZ2EgZsOkbHQgw6RyIG9ja3PDpSB0aWxsw6V0bmEsIG1lbiAiCisidmFyamUgeXR0ZXJsaWdhcmUgcmFkIHNvbSBpbnRlIGlubmVow6VsbGVyIGV0dCBmw6RsdG5hbW4sIGLDtnIgc3RhcnRhIG1lZCBtaW5zdCAiCisiZXR0IGJsYW5rc3RlZy4gSW5uZWjDpWxsZXQgaSBmbGVycmFkc2bDpGx0IHNsw6VzIG5vcm1hbHQgc2FtbWFuIHRpbGwgZW4gZW5kYSAiCisicmFkIGF2IHZlcmt0eWdlbiAoZsO2cnV0b20gaSBmYWxsZXQgZsOkbHRldCBCPERlc2NyaXB0aW9uPiwgc2UgbmVkYW4pLiBGw7ZyIGF0dCAiCisic8OkdHRhIGluIHRvbW1hIHJhZGVyIGkgZXR0IGZsZXJyYWRzZsOkbHQsIHNrcml2ZXIgZHUgZW4gcHVua3QgZWZ0ZXIgIgorImJsYW5rc3RlZ2V0LiBSYWRlciBzb20gYsO2cmphciBtZWQgZXR0IEI8XCIjXCI+IHRvbGthcyBzb20ga29tbWVudGFyZXIuIgorCisjLiB0eXBlOiBTSAorIzogZGViLXNyYy1jb250cm9sLjU6MjkKKyMsIG5vLXdyYXAKK21zZ2lkICJTT1VSQ0UgRklFTERTIgorbXNnc3RyICJLw4RMTEtPRFNGw4RMVCIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zcmMtY29udHJvbC41OjMwCisjLCBuby13cmFwCittc2dpZCAiQjxTb3VyY2U6PiBJPHNvdXJjZS1wYWNrYWdlLW5hbWU+IChyZXF1aXJlZCkiCittc2dzdHIgIkI8U291cmNlOj4gSTxrw6RsbGtvZHNwYWtldG5hbW4+IChrcsOkdnMpIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNTozNworbXNnaWQgIiIKKyJUaGUgdmFsdWUgb2YgdGhpcyBmaWVsZCBpcyB0aGUgbmFtZSBvZiB0aGUgc291cmNlIHBhY2thZ2UsIGFuZCBzaG91bGQgbWF0Y2ggIgorInRoZSBuYW1lIG9mIHRoZSBzb3VyY2UgcGFja2FnZSBpbiB0aGUgZGViaWFuL2NoYW5nZWxvZyBmaWxlLiBBIHBhY2thZ2UgbmFtZSAiCisibXVzdCBjb25zaXN0IG9ubHkgb2YgbG93ZXIgY2FzZSBsZXR0ZXJzIChhLXopLCBkaWdpdHMgKDAtOSksIHBsdXMgKCspIGFuZCAiCisibWludXMgKC0pIHNpZ25zLCBhbmQgcGVyaW9kcyAoLikuIFBhY2thZ2UgbmFtZXMgbXVzdCBiZSBhdCBsZWFzdCB0d28gIgorImNoYXJhY3RlcnMgbG9uZyBhbmQgbXVzdCBzdGFydCB3aXRoIGFuIGFscGhhbnVtZXJpYyBjaGFyYWN0ZXIuIgorbXNnc3RyICIiCisiVsOkcmRldCBww6UgZGV0IGjDpHIgZsOkbHRldCDDpHIgbmFtbmV0IHDDpSBrw6RsbGtvZHNwYWtldGV0LCBvY2ggbcOlc3RlIG1vdHN2YXJhICIKKyJuYW1uZXQgcMOlIGvDpGxsa29kc3Bha2V0ZXQgaSBmaWxlbiBkZWJpYW4vY2hhbmdlbG9nLiBQYWtldG5hbW5ldCBtw6VzdGUgYmVzdMOlICIKKyJlbmRhc3QgYXYgc23DpSBib2tzdMOkdmVyIChhLXopLCBzaWZmcm9yICgwLTkpLCBwbHVzLSAoKykgb2NoIG1pbnVzdGVja2VuICgtKSAiCisib2NoIHB1bmt0ICguKS4gUGFrZXRuYW1uIG3DpXN0ZSB2YXJhIG1pbnN0IHR2w6UgdGVja2VuIGzDpW5nYSBvY2ggbcOlc3RlIGLDtnJqYSAiCisibWVkIGV0dCBhbGZhbnVtZXJpc2t0IHRlY2tlbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3JjLWNvbnRyb2wuNTozOAorIywgbm8td3JhcAorbXNnaWQgIkI8TWFpbnRhaW5lcjo+IEk8ZnVsbG5hbWUtZW1haWw+IChyZXF1aXJlZCkiCittc2dzdHIgIkI8TWFpbnRhaW5lcjo+IEk8ZnVsbHQtbmFtbi1lcG9zdD4gKGtyw6R2cykiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjQzCittc2dpZCAiIgorIlNob3VsZCBiZSBpbiB0aGUgZm9ybWF0IFwiSm9lIEJsb2dncyBFPGx0PmpibG9nZ3NAZm9vLmNvbUU8Z3Q+XCIsIGFuZCAiCisicmVmZXJlbmNlcyB0aGUgcGVyc29uIHdobyBjdXJyZW50bHkgbWFpbnRhaW5zIHRoZSBwYWNrYWdlLCBhcyBvcHBvc2VkIHRvIHRoZSAiCisiYXV0aG9yIG9mIHRoZSBzb2Z0d2FyZSBvciB0aGUgb3JpZ2luYWwgcGFja2FnZXIuIgorbXNnc3RyICIiCisiU2thbGwgdmFyYSBww6UgZm9ybWF0ZXQgXCJKb2UgQmxvZ2dzIEU8bHQ+amJsb2dnc0Bmb28uY29tRTxndD5cIiBvY2ggIgorInJlZmVyZXJhciB0aWxsIGRlbiBwZXJzb24gc29tIGbDtnIgbsOkcnZhcmFuZGUgdW5kZXJow6VsbGVyIHBha2V0ZXQsIHRpbGwgIgorInNraWxsbmFkIGZyw6VuIGbDtnJmYXR0YXJlbiBhdiBkZW4gcHJvZ3JhbXZhcmEgc29tIHBha2V0ZXJhdHMuIgorCisjLiB0eXBlOiBUUAorIzogZGViLXNyYy1jb250cm9sLjU6NDQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPFVwbG9hZGVyczo+STwgZnVsbG5hbWUtZW1haWw+IgorbXNnc3RyICJCPFVwbG9hZGVyczo+STwgZnVsbHQtbmFtbi1lcG9zdD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjQ5Cittc2dpZCAiIgorIkxpc3RzIGFsbCB0aGUgbmFtZXMgYW5kIGVtYWlsIGFkZHJlc3NlcyBvZiBjby1tYWludGFpbmVycyBvZiB0aGUgcGFja2FnZSwgaW4gIgorInRoZSBzYW1lIGZvcm1hdCBhcyB0aGUgTWFpbnRhaW5lciBmaWVsZC4gTXVsdGlwbGUgY28tbWFpbnRhaW5lcnMgc2hvdWxkIGJlICIKKyJzZXBhcmF0ZWQgYnkgYSBjb21tYS4iCittc2dzdHIgIiIKKyJSw6RrbmFyIHVwcCBuYW1uIG9jaCBlLXBvc3RhZHJlc3NlciB0aWxsIG1lZC11bmRlcmjDpWxsYXJlIGF2IHBha2V0ZXQsIGkgc2FtbWEgIgorImZvcm1hdCBzb20gZsOkbHRldCBNYWludGFpbmVycy4gRmxlcmEgbWVkLXVuZGVyaMOlbGxhcmUgYsO2ciBhdmRlbGFzIG1lZCAiCisia29tbWF0ZWNrZW4uIgorCisjLiB0eXBlOiBUUAorIzogZGViLXNyYy1jb250cm9sLjU6NTAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPFN0YW5kYXJkcy1WZXJzaW9uOj5JPCB2ZXJzaW9uLXN0cmluZz4iCittc2dzdHIgIkI8U3RhbmRhcmRzLVZlcnNpb246Pkk8IHZlcnNpb25zc3Ryw6RuZz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjU2Cittc2dpZCAiIgorIlRoaXMgZG9jdW1lbnRzIHRoZSBtb3N0IHJlY2VudCB2ZXJzaW9uIG9mIHRoZSBzdGFuZGFyZHMgKHdoaWNoIGNvbnNpc3RzIG9mICIKKyJ0aGUgRGViaWFuIFBvbGljeSBNYW51YWwgYW5kIHJlZmVyZW5jZWQgdGV4dHMgZnJvbSB0aGUgQjxkZWJpYW4tcG9saWN5PiAiCisicGFja2FnZSkgdGhpcyBwYWNrYWdlIGNvbXBsaWVzIHRvLiIKK21zZ3N0ciAiIgorIkRva3VtZW50ZXJhciBkZW4gc2VuYXN0ZSB2ZXJzaW9uZW4gYXYgc3RhbmRhcmRkb2t1bWVudGVuICh2aWxrYSBiZXN0w6VyIGF2ICIKKyJEZWJpYW5zIHBvbGljeWhhbmRib2sgb2NoIHJlZmVyZXJhZGUgdGV4dGVyIGkgcGFrZXRldCBCPGRlYmlhbi1wb2xpY3k+KSBzb20gIgorInBha2V0ZXQgdXBwZnlsbGVyLiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zcmMtY29udHJvbC41OjU3CisjLCBuby13cmFwCittc2dpZCAiQjxETS1VcGxvYWQtQWxsb3dlZDo+IEI8eWVzPnxCPG5vPiIKK21zZ3N0ciAiQjxETS1VcGxvYWQtQWxsb3dlZDo+IEI8eWVzPnxCPG5vPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6NjEKK21zZ2lkICIiCisiVGhpcyBmaWVsZCBpbmRpY2F0ZXMgd2hldGhlciB0aGUgcGFja2FnZSBjYW4gYmUgdXBsb2FkZWQgYnkgRGViaWFuICIKKyJNYWludGFpbmVycyBhcHBlYXJpbmcgaW4gdGhlIE1haW50YWluZXIgb3IgVXBsb2FkZXJzIGZpZWxkLiBUaGUgZGVmYXVsdCAiCisidmFsdWUgaXMgXCJub1wiLiIKK21zZ3N0ciAiIgorIkbDpGx0ZXQgYW5nZXIgb20gcGFrZXRldCBrYW4gc8OkbmRhcyBpbiBhdiBkZSBEZWJpYW51dHZlY2tsYXJlIHNvbSBzdMOlciAiCisiYmVza3Jpdm5hIGkgZsOkbHRlbiBNYWludGFpbmVyIG9jaCBVcGxvYWRlcnMuIFN0YW5kYXJkdsOkcmRldCDDpHIgXCJub1wiIChuZWopLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6NjUKK21zZ2lkICJUaGUgdXBzdHJlYW0gcHJvamVjdCBob21lIHBhZ2UgVVJMLiIKK21zZ3N0ciAiVVJMIHRpbGwgdXBwc3Ryw7Ztc3Byb2pla3RldHMgaGVtc2lkYS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjcxCittc2dpZCAiIgorIlRoZSBJPHVybD4gb2YgdGhlIGJ1ZyB0cmFja2luZyBzeXN0ZW0gZm9yIHRoaXMgcGFja2FnZS4gVGhlIGN1cnJlbnQgdXNlZCAiCisiZm9ybWF0IGlzIEk8YnRzLXR5cGU+Qjw6Ly8+STxidHMtYWRkcmVzcz4sIGxpa2UgQjxkZWJidWdzOi8vYnVncy5kZWJpYW4uIgorIm9yZz4uIFRoaXMgZmllbGQgaXMgdXN1YWxseSBub3QgbmVlZGVkLiIKK21zZ3N0ciAiIgorIkk8VXJsPjplbiB0aWxsIGZlbHJhcHBvcnRlcmluZ3NzeXN0ZW1ldCBmw7ZyIGRldHRhIHBha2V0LiBEZXQgbnV2YXJhbmRlICIKKyJmb3JtYXRldCDDpHIgSTxzeXN0ZW10eXA+Oi8vSTxhZGRyZXNzPiwgdGlsbCBleGVtcGVsIEI8ZGViYnVnczovL2J1Z3MuZGViaWFuLiIKKyJvcmc+LiBEZXQgaMOkciBmw6RsdGV0IMOkciBub3JtYWx0IHNldHQgaW50ZSBuw7ZkdsOkbmRpZ3QuIgorCisjLiB0eXBlOiBUUAorIzogZGViLXNyYy1jb250cm9sLjU6NzIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPFZjcy0qOj5JPCB1cmw+IgorbXNnc3RyICJCPFZjcy0qOj5JPCB1cmw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNTo3OQorbXNnaWQgIiIKKyJUaGUgSTx1cmw+IG9mIHRoZSBWZXJzaW9uIENvbnRyb2wgU3lzdGVtIHJlcG9zaXRvcnkgdXNlZCB0byBtYWludGFpbiB0aGlzICIKKyJwYWNrYWdlLiBDdXJyZW50bHkgc3VwcG9ydGVkIGFyZSBCPEFyY2g+LCBCPEJ6cj4gKEJhemFhciksIEI8Q3ZzPiwgQjxEYXJjcz4sICIKKyJCPEdpdD4sIEI8SGc+IChNZXJjdXJpYWwpLCBCPE10bj4gKE1vbm90b25lKSBhbmQgQjxTdm4+IChTdWJ2ZXJzaW9uKS4gIgorIlVzdWFsbHkgdGhpcyBmaWVsZCBwb2ludHMgdG8gdGhlIGxhdGVzdCB2ZXJzaW9uIG9mIHRoZSBwYWNrYWdlLCBzdWNoIGFzIHRoZSAiCisibWFpbiBicmFuY2ggb3IgdGhlIHRydW5rLiIKK21zZ3N0ciAiIgorIkk8VXJsPjplbiB0aWxsIHZlcnNpb25zaGFudGVyaW5nc2Fya2l2ZXQgc29tIGFudsOkbmRzIGbDtnIgYXR0IHVuZGVyaMOlbGxhIGRldCAiCisiaMOkciBwYWtldGV0LiBGw7ZyIG7DpHJ2YXJhbmRlIHN0w7ZkcyBCPEFyY2g+LCBCPEJ6cj4gKEJhemFhciksIEI8Q3ZzPiwgIgorIkI8RGFyY3M+LCBCPEdpdD4sIEI8SGc+IChNZXJjdXJpYWwpLCBCPE10bj4gKE1vbm90b25lKSBvY2ggQjxTdm4+ICIKKyIoU3VidmVyc2lvbikuIEbDpGx0ZXQgcGVrYXIgbm9ybWFsdCB0aWxsIGRlbiBzZW5hc3RlIHZlcnNpb25lbiBhdiBwYWtldGV0LCAiCisic8Olc29tIGh1dnVkZ3JlbmVuIChtYWluIGVsbGVyIHRydW5rKS4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3JjLWNvbnRyb2wuNTo4MAorIywgbm8td3JhcAorbXNnaWQgIkI8VmNzLUJyb3dzZXI6Pkk8IHVybD4iCittc2dzdHIgIkI8VmNzLUJyb3dzZXI6Pkk8IHVybD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41Ojg0Cittc2dpZCAiIgorIlRoZSBJPHVybD4gb2YgYSB3ZWJpbnRlcmZhY2UgdG8gYnJvd3NlIHRoZSBWZXJzaW9uIENvbnRyb2wgU3lzdGVtIHJlcG9zaXRvcnkuIgorbXNnc3RyICIiCisiSTxVcmw+OmVuIHRpbGwgZXR0IHdlYmJncsOkbnNzbml0dCBmw7ZyIGF0dCBibMOkZGRyYSBpICIKKyJ2ZXJzaW9uc2hhbnRlcmluZ3NhcmtpdmV0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6ODkKK21zZ2lkICIiCisiVGhlIG5hbWUgb2YgdGhlIGRpc3RyaWJ1dGlvbiB0aGlzIHBhY2thZ2UgaXMgb3JpZ2luYXRpbmcgZnJvbS4gVGhpcyBmaWVsZCBpcyAiCisidXN1YWxseSBub3QgbmVlZGVkLiIKK21zZ3N0ciAiIgorIk5hbW5ldCBww6UgZGVuIGRpc3RyaWJ1dGlvbiBwYWtldGV0IGjDpHJzdGFtbWFyIGZyw6VuLiBEZXQgaMOkciBmw6RsdGV0IMOkciAiCisibm9ybWFsdCBzZXR0IGludGUgbsO2ZHbDpG5kaWd0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6OTUKK21zZ2lkICIiCisiVGhpcyBpcyBhIGdlbmVyYWwgZmllbGQgdGhhdCBnaXZlcyB0aGUgcGFja2FnZSBhIGNhdGVnb3J5IGJhc2VkIG9uIHRoZSAiCisic29mdHdhcmUgdGhhdCBpdCBpbnN0YWxscy4gU29tZSBjb21tb24gc2VjdGlvbnMgYXJlIFwidXRpbHNcIiwgXCJuZXRcIiwgIgorIlwibWFpbFwiLCBcInRleHRcIiwgXCJ4MTFcIiwgZXRjLiIKK21zZ3N0ciAiIgorIkRldHRhIMOkciBldHQgZ2VuZXJlbGx0IGbDpGx0IHNvbSBnZXIgcGFrZXRldCBlbiBrYXRlZ29yaSBiYXNlcmF0IHDDpSAiCisicHJvZ3JhbXZhcmEgc29tIGRldCBpbnN0YWxsZXJhci4gTsOlZ3JhIHZhbmxpZ2Egc2VrdGlvbmVyIMOkciBcInV0aWxzXCIsIFwibmV0IgorIlwiLCBcIm1haWxcIiwgXCJ0ZXh0XCIsIFwieDExXCIgb3N2LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MTAwCittc2dpZCAiIgorIlNldHMgdGhlIGltcG9ydGFuY2Ugb2YgdGhpcyBwYWNrYWdlIGluIHJlbGF0aW9uIHRvIHRoZSBzeXN0ZW0gYXMgYSB3aG9sZS4gICIKKyJDb21tb24gcHJpb3JpdGllcyBhcmUgXCJyZXF1aXJlZFwiLCBcInN0YW5kYXJkXCIsIFwib3B0aW9uYWxcIiwgXCJleHRyYVwiLCAiCisiZXRjLiIKK21zZ3N0ciAiIgorIlN0w6RsbGVyIGluIGh1ciB2aWt0aWd0IHBha2V0ZXQgw6RyIGrDpG1mw7ZydCBtZWQgc3lzdGVtZXQgc29tIGVuaGV0LiAgVmFubGlnYSAiCisicHJpb3JpdGV0ZXIgw6RyIFwicmVxdWlyZWRcIiAobsO2ZHbDpG5kaWcpLCBcInN0YW5kYXJkXCIgKG5vcm1hbCksIFwib3B0aW9uYWwiCisiXCIgKHZhbGZyaXR0KSwgXCJleHRyYVwiIChleHRyYSkgb3N2LiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zcmMtY29udHJvbC41OjExMAorIywgbm8td3JhcAorbXNnaWQgIkI8QnVpbGQtRGVwZW5kczo+STwgcGFja2FnZS1saXN0PiIKK21zZ3N0ciAiQjxCdWlsZC1EZXBlbmRzOj5JPCBwYWtldGxpc3RhPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MTE0Cittc2dpZCAiIgorIkEgbGlzdCBvZiBwYWNrYWdlcyB0aGF0IG5lZWQgdG8gYmUgaW5zdGFsbGVkIGFuZCBjb25maWd1cmVkIHRvIGJlIGFibGUgdG8gIgorImJ1aWxkIHRoZSBzb3VyY2UgcGFja2FnZS4iCittc2dzdHIgIiIKKyJFbiBsaXN0YSDDtnZlciBwYWtldCBzb20gbcOlc3RlIGluc3RhbGxlcmFzIG9jaCBrb25maWd1cmVyYXMgZsO2ciBhdHQga3VubmEgIgorImJ5Z2dhIGvDpGxsa29kc3Bha2V0ZXQuIgorCisjLiB0eXBlOiBUUAorIzogZGViLXNyYy1jb250cm9sLjU6MTE1CisjLCBuby13cmFwCittc2dpZCAiQjxCdWlsZC1EZXBlbmRzLUluZGVwOj5JPCBwYWNrYWdlLWxpc3Q+IgorbXNnc3RyICJCPEJ1aWxkLURlcGVuZHMtSW5kZXA6Pkk8IHBha2V0bGlzdGE+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToxMjAKK21zZ2lkICIiCisiU2FtZSBhcyBCPEJ1aWxkLURlcGVuZHM+LCBidXQgdGhleSBhcmUgb25seSBuZWVkZWQgd2hlbiBidWlsZGluZyB0aGUgIgorImFyY2hpdGVjdHVyZSBpbmRlcGVuZGVudCBwYWNrYWdlcy4gVGhlIEI8QnVpbGQtRGVwZW5kcz4gYXJlIGFsc28gaW5zdGFsbGVkICIKKyJpbiB0aGlzIGNhc2UuIgorbXNnc3RyICIiCisiTW90c3ZhcmFyIEI8QnVpbGQtRGVwZW5kcz4sIG1lbiBkZSBiZWjDtnZzIGVuZGFzdCBmw7ZyIGF0dCBieWdnYSBkZSAiCisiYXJraXRla3R1cm9iZXJvZW5kZSBwYWtldGVuLiBCPEJ1aWxkLURlcGVuZHM+IGluc3RhbGxlcmFzIG9ja3PDpSBpIGRldHRhIGZhbGwuIgorCisjLiB0eXBlOiBUUAorIzogZGViLXNyYy1jb250cm9sLjU6MTIxCisjLCBuby13cmFwCittc2dpZCAiQjxCdWlsZC1Db25mbGljdHM6Pkk8IHBhY2thZ2UtbGlzdD4iCittc2dzdHIgIkI8QnVpbGQtQ29uZmxpY3RzOj5JPCBwYWtldGxpc3RhPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MTI1Cittc2dpZCAiIgorIkEgbGlzdCBvZiBwYWNrYWdlcyB0aGF0IHNob3VsZCBub3QgYmUgaW5zdGFsbGVkIHdoZW4gdGhlIHBhY2thZ2UgaXMgYnVpbGQsICIKKyJmb3IgZXhhbXBsZSBiZWNhdXNlIHRoZXkgaW50ZXJmZXJlIHdpdGggdGhlIHVzZWQgYnVpbGQgc3lzdGVtLiIKK21zZ3N0ciAiIgorIkVuIGxpc3RhIMO2dmVyIHBha2V0IHNvbSBpbnRlIGLDtnIgdmFyYSBpbnN0YWxsZXJhZGUgbsOkciBwYWtldGV0IGJ5Z2dzLCB0aWxsICIKKyJleGVtcGVsIHDDpSBncnVuZCBhdiBhdHQgZGUgc3TDtnIgYnlnZ3N5c3RlbWV0IHNvbSBhbnbDpG5kcy4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3JjLWNvbnRyb2wuNToxMjYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPEJ1aWxkLUNvbmZsaWN0cy1JbmRlcDo+STwgcGFja2FnZS1saXN0PiIKK21zZ3N0ciAiQjxCdWlsZC1Db25mbGljdHMtSW5kZXA6Pkk8IHBha2V0bGlzdGE+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToxMzAKK21zZ2lkICIiCisiU2FtZSBhcyBCPEJ1aWxkLUNvbmZsaWN0cz4sIGJ1dCBvbmx5IHdoZW4gYnVpbGRpbmcgdGhlIGFyY2hpdGVjdHVyZSAiCisiaW5kZXBlbmRlbnQgcGFja2FnZXMuIgorbXNnc3RyICIiCisiTW90c3ZhcmFyIEI8QnVpbGQtQ29uZmxpY3RzPiwgbWVuIGVuZGFzdCBuw6RyIGRlIGFya2l0ZWt0dXJvYmVyb2VuZGUgcGFrZXRlbiAiCisiYnlnZ3MuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToxNDEKK21zZ2lkICIiCisiVGhlIHN5bnRheCBvZiB0aGUgQjxCdWlsZC1EZXBlbmRzPiBhbmQgQjxCdWlsZC1EZXBlbmRzLUluZGVwPiBmaWVsZHMgaXMgYSAiCisibGlzdCBvZiBncm91cHMgb2YgYWx0ZXJuYXRpdmUgcGFja2FnZXMuIEVhY2ggZ3JvdXAgaXMgYSBsaXN0IG9mIHBhY2thZ2VzICIKKyJzZXBhcmF0ZWQgYnkgdmVydGljYWwgYmFyIChvciBcInBpcGVcIikgc3ltYm9scywgXCJ8XCIuIFRoZSBncm91cHMgYXJlICIKKyJzZXBhcmF0ZWQgYnkgY29tbWFzLiBDb21tYXMgYXJlIHRvIGJlIHJlYWQgYXMgXCJBTkRcIiwgYW5kIHBpcGVzIGFzIFwiT1JcIiwgIgorIndpdGggcGlwZXMgYmluZGluZyBtb3JlIHRpZ2h0bHkuIEVhY2ggcGFja2FnZSBuYW1lIGlzIG9wdGlvbmFsbHkgZm9sbG93ZWQgYnkgIgorImEgdmVyc2lvbiBudW1iZXIgc3BlY2lmaWNhdGlvbiBpbiBwYXJlbnRoZXNlcyBhbmQgYW4gYXJjaGl0ZWN0dXJlICIKKyJzcGVjaWZpY2F0aW9uIGluIHNxdWFyZSBicmFja2V0cy4iCittc2dzdHIgIiIKKyJTeW50YXhlbiBmw7ZyIGbDpGx0ZW4gQjxCdWlsZC1EZXBlbmRzPiBvY2ggQjxCdWlsZC1EZXBlbmRzLUluZGVwPi1mw6RsdGVuIMOkciBlbiAiCisibGlzdGEgbWVkIGdydXBwZXIgYXYgYWx0ZXJuYXRpdmEgcGFrZXQuIFZhcmplIGdydXBwIGlubmVow6VsbGVyIGVuIGxpc3RhIG1lZCAiCisicGFrZXQgYXZkZWxhZGUgbWVkIGV0dCB2ZXJ0aWthbHN0cmVjayAocsO2cikgKFwifFwiKS4gIEdydXBwZXJuYSBhdmRlbGFzIG1lZCAiCisia29tbWF0ZWNrZW4uIEtvbW1hIHV0bMOkc2VzIHNvbSBcIk9DSFwiLCBvY2ggdmVydGlrYWxzdHJlY2tlbiBzb20gXCJFTExFUlwiLCAiCisiZMOkciB2ZXJ0aWthbHN0cmVja2VuIGJpbmRlciBow6VyZGFyZS4gVmFyamUgcGFrZXRuYW1uIGthbiBldmVudHVlbGx0IGbDtmxqYXMgIgorImF2IGVuIHZlcnNpb25zbnVtbWVyYW5naXZlbHNlIGlub20gcGFyZW50ZXNlciBvY2ggZW4gYXJraXRla3R1cmFuZ2l2ZWxzZSBpICIKKyJoYWtwYXJlbnRlc2VyLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MTUwCittc2dpZCAiIgorIlRoZSBzeW50YXggb2YgdGhlIEI8QnVpbGQtQ29uZmxpY3RzPiBhbmQgQjxCdWlsZC1Db25mbGljdHMtSW5kZXA+IGZpZWxkcyBpcyAiCisiYSBsaXN0IG9mIGNvbW1hLXNlcGFyYXRlZCBwYWNrYWdlIG5hbWVzLCB3aGVyZSB0aGUgY29tbWEgaXMgcmVhZCBhcyBhbiBcIkFORCIKKyJcIi4gU3BlY2lmeWluZyBhbHRlcm5hdGl2ZSBwYWNrYWdlcyB1c2luZyBhIFwicGlwZVwiIGlzIG5vdCBzdXBwb3J0ZWQuICBFYWNoICIKKyJwYWNrYWdlIG5hbWUgaXMgb3B0aW9uYWxseSBmb2xsb3dlZCBieSBhIHZlcnNpb24gbnVtYmVyIHNwZWNpZmljYXRpb24gaW4gIgorInBhcmVudGhlc2VzIGFuZCBhbiBhcmNoaXRlY3R1cmUgc3BlY2lmaWNhdGlvbiBpbiBzcXVhcmUgYnJhY2tldHMuIgorbXNnc3RyICIiCisiU3ludGF4ZW4gZsO2ciBmw6RsdGVuIEI8QnVpbGQtQ29uZmxpY3RzPiBvY2ggQjxCdWlsZC1Db25mbGljdHMtSW5kZXA+LWbDpGx0ZW4gIgorIsOkciBlbiBrb21tYXNlcGFyZXJhZCBsaXN0YSBtZWQgcGFrZXRuYW1uLCBkw6RyIGtvbW1hIHV0bMOkc2VzIHNvbSBcIk9DSFwiLiBEZXQgIgorIsOkciBpbnRlIG3DtmpsaWd0IGF0dCBhbmdlIGFsdGVybmF0aXZhIHBha2V0IG1lZCBcInLDtnJcIi4gVmFyamUgcGFrZXRuYW1uIGthbiAiCisiZXZlbnR1ZWxsdCBmw7ZsamFzIGF2IGVuIHZlcnNpb25zbnVtbWVyYW5naXZlbHNlIGlub20gcGFyZW50ZXNlciBvY2ggZW4gIgorImFya2l0ZWt0dXJhbmdpdmVsc2UgaSBoYWtwYXJlbnRlc2VyLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MTU2Cittc2dpZCAiIgorIkEgdmVyc2lvbiBudW1iZXIgbWF5IHN0YXJ0IHdpdGggYSBcIkU8Z3Q+RTxndD5cIiwgaW4gd2hpY2ggY2FzZSBhbnkgbGF0ZXIgIgorInZlcnNpb24gd2lsbCBtYXRjaCwgYW5kIG1heSBzcGVjaWZ5IG9yIG9taXQgdGhlIERlYmlhbiBwYWNrYWdpbmcgcmV2aXNpb24gIgorIihzZXBhcmF0ZWQgYnkgYSBoeXBoZW4pLiBBY2NlcHRlZCB2ZXJzaW9uIHJlbGF0aW9uc2hpcHMgYXJlIFwiRTxndD5FPGd0PlwiICIKKyJmb3IgZ3JlYXRlciB0aGFuLCBcIkU8bHQ+RTxsdD5cIiBmb3IgbGVzcyB0aGFuLCBcIkU8Z3Q+PVwiIGZvciBncmVhdGVyIHRoYW4gIgorIm9yIGVxdWFsIHRvLCBcIkU8bHQ+PVwiIGZvciBsZXNzIHRoYW4gb3IgZXF1YWwgdG8sIGFuZCBcIj1cIiBmb3IgZXF1YWwgdG8uIgorbXNnc3RyICIiCisiRXR0IHZlcnNpb25zbnVtbWVyIGthbiBiw7ZyamEgbWVkIFwiRTxndD5FPGd0PlwiLCB2aWxrZXQgYmV0eWRlciBhdHQgdmlsa2VuICIKKyJzb20gaGVsc3Qgc2VuYXJlIHZlcnNpb24gbWF0Y2hhciwgZMOkciBkZXQgw6RyIHZhbGZyaXR0IGF0dCBhbmdlICIKKyJEZWJpYW51cHBkYXRlcmluZ2VuIChhdmRlbGFkIG1lZCBiaW5kZXN0cmVjaykuICBUaWxsw6V0bmEgdmVyc2lvbnJlbGF0aW9uZXIgIgorIsOkciBcIkU8Z3Q+RTxndD5cIiBmw7ZyIHN0w7ZycmUgw6RuLCBcIkU8bHQ+RTxsdD5cIiBmw7ZyIG1pbmRyZSDDpG4sIFwiRTxndD49XCIgIgorImbDtnIgc3TDtnJyZSDDpG4gZWxsZXIgbGlrYSBtZWRcIiwgXCJFPGx0Pj1cIiBmw7ZyIG1pbmRyZSDDpG4gZWxsZXIgbGlrYSBtZWQsIG9jaCAiCisiXCI9XCIgZsO2ciBsaWthIG1lZC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjE2MAorbXNnaWQgIiIKKyJBIGFyY2hpdGVjdHVyZSBzcGVjaWZpY2F0aW9uIGNvbnNpc3RzIG9mIG9uZSBvciBtb3JlIGFyY2hpdGVjdHVyZSBuYW1lcywgIgorInNlcGFyYXRlZCBieSB3aGl0ZXNwYWNlLiBFeGNsYW1hdGlvbiBtYXJrcyBtYXkgYmUgcHJlcGVuZGVkIHRvIGVhY2ggb2YgdGhlICIKKyJuYW1lcywgbWVhbmluZyBcIk5PVFwiLiIKK21zZ3N0ciAiIgorIkVuIGFya2l0ZWt0dXJhbmdpdmVsc2UgYmVzdMOlciBhdiBldHQgZWxsZXIgZmxlcmEgYXJraXRla3R1cm5hbW4sIGF2ZGVsYWRlICIKKyJtZWQgYmxhbmt0ZWNrZW4uIFZhcmplIG5hbW4ga2FuIGbDtnJlZ8OlcyBhdiBldHQgdXRyb3BzdGVja2VuLCB2aWxrZXQgYmV0eWRlciAiCisiXCJJQ0tFXCIuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToxNjUKK21zZ2lkICIiCisiTm90ZSB0aGF0IGRlcGVuZGVuY2llcyBvbiBwYWNrYWdlcyBpbiB0aGUgQjxidWlsZC1lc3NlbnRpYWw+IHNldCBjYW4gYmUgIgorIm9taXR0ZWQgYW5kIHRoYXQgZGVjbGFyaW5nIGJ1aWxkIGNvbmZsaWN0cyBhZ2FpbnN0IHRoZW0gaXMgaW1wb3NzaWJsZS4gQSAiCisibGlzdCBvZiB0aGVzZSBwYWNrYWdlcyBpcyBpbiB0aGUgYnVpbGQtZXNzZW50aWFsIHBhY2thZ2UuIgorbXNnc3RyICIiCisiT2JzZXJ2ZXJhIGF0dCBiZXJvZW5kZW4gcMOlIHBha2V0IGkgQjxidWlsZC1lc3NlbnRpYWw+LXVwcHPDpHR0bmluZ2VuIGthbiAiCisidXRlbMOkbW5hcyBvY2ggYXR0IGRldCDDpHIgb23DtmpsaWd0IGF0dCBkZWtsYXJlcmEgYnlnZ2tvbmZsaWt0ZXIgbW90IGRlbS4gRW4gIgorImxpc3RhIMO2dmVyIGRlc3NhIHBha2V0IGZpbm5zIGkgcGFrZXRldCBidWlsZC1lc3NlbnRpYWwuIgorCisjLiB0eXBlOiBTSAorIzogZGViLXNyYy1jb250cm9sLjU6MTY3CisjLCBuby13cmFwCittc2dpZCAiQklOQVJZIEZJRUxEUyIKK21zZ3N0ciAiQklOw4RSRsOETFQiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjE3NgorbXNnaWQgIiIKKyJOb3RlIHRoYXQgdGhlIEI8UHJpb3JpdHk+LCBCPFNlY3Rpb24+IGFuZCBCPEhvbWVwYWdlPiBmaWVsZHMgY2FuIGFsc28gYmUgaW4gIgorImEgYmluYXJ5IHBhcmFncmFwaCB0byBvdmVycmlkZSB0aGUgZ2xvYmFsIHZhbHVlIGZyb20gdGhlIHNvdXJjZSBwYWNrYWdlLiIKK21zZ3N0ciAiIgorIk9ic2VydmVyYSBhdHQgZsOkbHRlbiBCPFByaW9yaXR5PiwgQjxTZWN0aW9uPiBvY2ggQjxIb21lcGFnZT4gw6R2ZW4ga2FuICIKKyJhbnbDpG5kYXMgaSBkZSBzdHlja2VuIHNvbSBiZXNrcml2ZXIgYmluw6RycGFrZXQgZsO2ciBhdHQgw7Z2ZXJzdHlyYSBkZSBnbG9iYWxhICIKKyJ2w6RyZGVuYSBmw7ZyIGvDpGxsa29kc3Bha2V0ZXQuIgorCisjLiB0eXBlOiBUUAorIzogZGViLXNyYy1jb250cm9sLjU6MTc3CisjLCBuby13cmFwCittc2dpZCAiQjxQYWNrYWdlOj4gSTxiaW5hcnktcGFja2FnZS1uYW1lPiAocmVxdWlyZWQpIgorbXNnc3RyICJCPFBhY2thZ2U6PiBJPGJpbsOkcnBha2V0bmFtbj4gKGtyw6R2cykiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjE4MQorbXNnaWQgIiIKKyJUaGlzIGZpZWxkIGlzIHVzZWQgdG8gbmFtZSB0aGUgYmluYXJ5IHBhY2thZ2UgbmFtZS4gVGhlIHNhbWUgcmVzdHJpY3Rpb25zIGFzICIKKyJ0byBhIHNvdXJjZSBwYWNrYWdlIG5hbWUgYXBwbHkuIgorbXNnc3RyICIiCisiRGV0dGEgZsOkbHQgYW52w6RuZHMgZsO2ciBhdHQgbmFtbmdlIGRldCBiaW7DpHJhIHBha2V0ZXQuIFNhbW1hIGJlZ3LDpG5zbmluZ2FyICIKKyJnw6RsbGVyIHNvbSBmw7ZyIGvDpGxsa29kc3Bha2V0ZXRzIG5hbW4uIgorCisjLiB0eXBlOiBUUAorIzogZGViLXNyYy1jb250cm9sLjU6MTgyCisjLCBuby13cmFwCittc2dpZCAiQjxBcmNoaXRlY3R1cmU6PiBJPGFyY2g+fEI8YWxsPnxCPGFueT4gKHJlcXVpcmVkKSIKK21zZ3N0ciAiQjxBcmNoaXRlY3R1cmU6PiBJPGFyY2g+fEI8YWxsPnxCPGFueT4gKGtyw6R2cykiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjE5NQorbXNnaWQgIiIKKyJUaGUgYXJjaGl0ZWN0dXJlIHNwZWNpZmllcyBvbiB3aGljaCB0eXBlIG9mIGhhcmR3YXJlIHRoaXMgcGFja2FnZSBydW5zLiBGb3IgIgorInBhY2thZ2VzIHRoYXQgcnVuIG9uIGFsbCBhcmNoaXRlY3R1cmVzLCB1c2UgdGhlIEI8YW55PiB2YWx1ZS4gRm9yIHBhY2thZ2VzICIKKyJ0aGF0IGFyZSBhcmNoaXRlY3R1cmUgaW5kZXBlbmRlbnQsIHN1Y2ggYXMgc2hlbGwgYW5kIFBlcmwgc2NyaXB0cyBvciAiCisiZG9jdW1lbnRhdGlvbiwgdXNlIHRoZSBCPGFsbD4gdmFsdWUuIFRvIHJlc3RyaWN0IHRoZSBwYWNrYWdlcyB0byBhIGNlcnRhaW4gIgorInNldCBvZiBhcmNoaXRlY3R1cmVzLCBzcGVjaWZ5IHRoZSBhcmNoaXRlY3R1cmUgbmFtZXMsIHNlcGFyYXRlZCBieSBhIHNwYWNlLiAiCisiSXQncyBhbHNvIHBvc3NpYmxlIHRvIHB1dCBhcmNoaXRlY3R1cmUgd2lsZGNhcmRzIGluIHRoYXQgbGlzdCAoc2VlIEI8ZHBrZy0iCisiYXJjaGl0ZWN0dXJlPigxKSAgZm9yIG1vcmUgaW5mb3JtYXRpb24gYWJvdXQgdGhlbSkuIgorbXNnc3RyICIiCisiQXJraXRla3R1cmVuIGFuZ2VyIHDDpSB2aWxrZW4gdHlwIGF2IG1hc2tpbnZhcmEgcGFrZXRldCBrw7Zycy4gRsO2ciBwYWtldCBzb20gIgorImvDtnJzIHDDpSBhbGxhIGFya2l0ZWt0dXJlciBhbnbDpG5kcyB2w6RyZGV0IEI8YW55PiAobsOlZ29uKS4gRsO2ciBwYWtldCBzb20gw6RyICIKKyJhcmtpdGVrdHVyb2Jlcm9lbmRlLCBzb20gc2thbC0gb2NoIFBlcmxza3JpcHQgZWxsZXIgZG9rdW1lbnRhdGlvbiwgYW52w6RuZHMgIgorInbDpHJkZXQgQjxhbGw+IChhbGxhKS4gRsO2ciBhdHQgYmVncsOkbnNhIHBha2V0IHRpbGwgZW4gc3BlY2lmaWsgdXBwc8OkdHRuaW5nICIKKyJhcmtpdGVrdHVyZXIsIGFuZ2VyIGR1IG5hbW5lbiBww6UgYXJraXRla3R1cmVybmEgYXZkZWxhZGUgbWVkIGJsYW5rc3RlZy4gRGV0ICIKKyLDpHIgw6R2ZW4gbcO2amxpZ3QgYXR0IGFuZ2UgYXJraXRla3R1cmVyIG1lZCBqb2tlcnRlY2tlbiBpIGxpc3RhbiAoc2UgQjxkcGtnLSIKKyJhcmNoaXRlY3R1cmU+KDEpIGbDtnIgbWVyIGluZm9ybWF0aW9uIG9tIGRlc3NhKS4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3JjLWNvbnRyb2wuNToxOTYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPFBhY2thZ2UtVHlwZTo+IEI8ZGViPnxCPHVkZWI+IgorbXNnc3RyICJCPFBhY2thZ2UtVHlwZTo+IEI8ZGViPnxCPHVkZWI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToyMDEKK21zZ2lkICIiCisiVGhpcyBmaWVsZCBkZWZpbmVzIHRoZSB0eXBlIG9mIHRoZSBwYWNrYWdlLiBcInVkZWJcIiBpcyBmb3Igc2l6ZS1jb25zdHJhaW5lZCAiCisicGFja2FnZXMgdXNlZCBieSB0aGUgZGViaWFuIGluc3RhbGxlci4gXCJkZWJcIiBpcyB0aGUgZGVmYXVsdCB2YWx1ZSwgaXQncyAiCisiYXNzdW1lZCBpZiB0aGUgZmllbGQgaXMgYWJzZW50LiBNb3JlIHR5cGVzIG1pZ2h0IGJlIGFkZGVkIGluIHRoZSBmdXR1cmUuIgorbXNnc3RyICIiCisiRGV0dGEgZsOkbHQgYW5nZXIgcGFrZXRldHMgdHlwLiBcInVkZWJcIiBhbnbDpG5kcyBmw7ZyIHN0b3JsZWtzYmVncsOkbnNhZGUgcGFrZXQgIgorImkgZGViaWFuLWluc3RhbGxlci4gXCJkZWJcIiDDpHIgc3RhbmRhcmR2w6RyZGV0LCBvY2ggYW50YXMgb20gZsOkbHRldCBzYWtuYXMuICIKKyJGbGVyIHR5cGVyIGthbiBrb21tYSBhdHQgbMOkZ2dhcyB0aWxsIGkgZnJhbXRpZGVuLiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zcmMtY29udHJvbC41OjIyNQorIywgbm8td3JhcAorbXNnaWQgIkI8RGVzY3JpcHRpb246PiBJPHNob3J0LWRlc2NyaXB0aW9uPiAocmVxdWlyZWQpIgorbXNnc3RyICJCPERlc2NyaXB0aW9uOj4gSTxrb3J0LWJlc2tyaXZuaW5nPiAoa3LDpHZzKSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNyYy1jb250cm9sLjU6MjMyCittc2dpZCAiIgorIlRoZXNlIGZpZWxkcyBhcmUgZGVzY3JpYmVkIGluIHRoZSBCPGRlYi1jb250cm9sPig1KSAgbWFudWFsIHBhZ2UsIGFzIHRoZXkgIgorImFyZSBjb3BpZWQgbGl0ZXJhbGx5IHRvIHRoZSBjb250cm9sIGZpbGUgb2YgdGhlIGJpbmFyeSBwYWNrYWdlLiIKK21zZ3N0ciAiIgorIkRlc3NhIGbDpGx0IGJlc2tyaXZzIGkgbWFudWFsc2lkYW4gQjxkZWItY29udHJvbD4oNSksIGVmdGVyc29tIGRlIGtvcGllcmFzICIKKyJvcmRhZ3JhbnQgdGlsbCBiaW7DpHJwYWtldGV0cyBzdHlyZmlsLiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zcmMtY29udHJvbC41OjI0OAorIywgbm8td3JhcAorbXNnaWQgIkI8RW5oYW5jZXM6Pkk8IHBhY2thZ2UtbGlzdD4iCittc2dzdHIgIkI8RW5oYW5jZXM6Pkk8IHBha2V0bGlzdGE+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNToyNzAKK21zZ2lkICIiCisiVGhlc2UgZmllbGRzIGRlY2xhcmUgcmVsYXRpb25zaGlwcyBiZXR3ZWVuIHBhY2thZ2VzLiBUaGV5IGFyZSBkaXNjdXNzZWQgaW4gIgorInRoZSBCPGRlYi1jb250cm9sPig1KSAgbWFucGFnZSBhbmQgaW4gdGhlIEI8ZGViaWFuLXBvbGljeT4gcGFja2FnZS4iCittc2dzdHIgIiIKKyJEZXNzYSBmw6RsdCBhbmdlciByZWxhdGlvbmVyIG1lbGxhbiBwYWtldC4gRGUgZGlza3V0ZXJhcyBpIG1hbnVhbHNpZGFuIEI8ZGViLSIKKyJjb250cm9sPig1KSBvY2ggaSBwYWtldGV0IEI8ZGViaWFuLXBvbGljeT4uIgorCisjLiB0eXBlOiBTSAorIzogZGViLXNyYy1jb250cm9sLjU6MjcxCisjLCBuby13cmFwCittc2dpZCAiVVNFUi1ERUZJTkVEIEZJRUxEUyIKK21zZ3N0ciAiQU5Ww4ROREFSREVGSU5JRVJBREUgRsOETFQiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjI4NgorbXNnaWQgIiIKKyJJdCBpcyBhbGxvd2VkIHRvIGFkZCBhZGRpdGlvbmFsIHVzZXItZGVmaW5lZCBmaWVsZHMgdG8gdGhlIGNvbnRyb2wgZmlsZS4gVGhlICIKKyJ0b29scyB3aWxsIGlnbm9yZSB0aGVzZSBmaWVsZHMuIElmIHlvdSB3YW50IHRoZSBmaWVsZHMgdG8gYmUgY29waWVkIG92ZXIgdG8gIgorInRoZSBvdXRwdXQgZmlsZXMsIHN1Y2ggYXMgdGhlIGJpbmFyeSBwYWNrYWdlcywgeW91IG5lZWQgdG8gdXNlIGEgY3VzdG9tICIKKyJuYW1pbmcgc2NoZW1lOiB0aGUgZmllbGRzIHNob3VsZCBzdGFydCB3aXRoIGEgWCwgZm9sbG93ZWQgYnkgb25lIG9yIG1vcmUgb2YgIgorInRoZSBsZXR0ZXJzIEJDUyBhbmQgYSBoeXBlbi4gSWYgdGhlIGxldHRlciBCIGlzIHVzZWQsIHRoZSBmaWVsZCB3aWxsIGFwcGVhciAiCisiaW4gdGhlIGNvbnRyb2wgZmlsZSBpbiB0aGUgYmluYXJ5IHBhY2thZ2UsIHNlZSBCPGRlYi1jb250cm9sPig1KSwgZm9yIHRoZSAiCisibGV0dGVyIFMgaW4gdGhlIHNvdXJjZSBwYWNrYWdlIGNvbnRyb2wgZmlsZSBhcyBjb25zdHJ1Y3RlZCBieSBCPGRwa2ctc291cmNlPiIKKyIoMSkgIGFuZCBmb3IgdGhlIGxldHRlciBDIGluIHRoZSB1cGxvYWQgY29udHJvbCAoLmNoYW5nZXMpIGZpbGUuIE5vdGUgdGhhdCAiCisidGhlIFhbQkNTXS0gcHJlZml4ZXMgYXJlIHN0cmlwcGVkIHdoZW4gdGhlIGZpZWxkcyBhcmUgY29waWVkIG92ZXIgdG8gdGhlICIKKyJvdXRwdXQgZmlsZXMuIEEgZmllbGQgQjxYQy1BcHByb3ZlZC1CeT4gd2lsbCBhcHBlYXIgYXMgQjxBcHByb3ZlZC1CeT4gaW4gdGhlICIKKyJjaGFuZ2VzIGZpbGUgYW5kIHdpbGwgbm90IGFwcGVhciBpbiB0aGUgYmluYXJ5IG9yIHNvdXJjZSBwYWNrYWdlIGNvbnRyb2wgIgorImZpbGVzLiIKK21zZ3N0ciAiIgorIkRldCDDpHIgbcO2amxpZ3QgYXR0IGzDpGdnYSB0aWxsIHl0dGVybGlnYXJlIGFudsOkbmRhcmRlZmluaWVyYWRlIGbDpGx0IGkgIgorInN0eXJmaWxlbi4gVmVya3R5Z2VuIGlnbm9yZXJhciBkZXNzYSBmw6RsdC4gT20gZHUgdmlsbCBhdHQgZsOkbHRlbiBza2FsbCAiCisia29waWVyYXMgw7Z2ZXIgdGlsbCB1dGRhdGFmaWxlcm5hLCBzb20gdGlsbCBleGVtcGVsIGkgYmluw6RycGFrZXRlbiwgbcOlc3RlIGR1ICIKKyJhbnbDpG5kYSBlbiBza3LDpGRkYXJzeWRkIG5hbW5naXZuaW5nOiBmw6RsdGVuIG3DpXN0ZSBzdGFydGEgbWVkIFgsIGbDtmxqdCBhdiBldHQgIgorImVsbGVyIGZsZXJhIGF2IGJva3N0w6R2ZXJuYSBCQ1Mgb2NoIGV0dCBiaW5kZXN0cmVjay4gT20gYm9rc3RhdmVuIEIgYW52w6RuZHMgIgorImtvbW1lciBmw6RsdGV0IGF0dCBkeWthIHVwcCBpIHN0eXJmaWxlbiBpIGJpbsOkcnBha2V0ZXQsIHNlIEI8ZGViLWNvbnRyb2w+KDUpLCAiCisiZsO2ciBib2tzdGF2ZW4gUyBpIGvDpGxsa29kc3Bha2V0ZXRzIHN0eXJmaWwgc29tIGtvbnN0cnVlcmFzIGF2IEI8ZHBrZy1zb3VyY2U+IgorIigxKSBvY2ggZsO2ciBib2tzdGF2ZW4gQyBpIHN0eXJmaWxlbiBmw7ZyIGluc8OkbmRuaW5nICguY2hhbmdlcykuIE9ic2VydmVyYSBhdHQgIgorIlhbQkNTXS1wcmVmaXhlbiB0YXMgYm9ydCBuw6RyIGbDpGx0ZW4ga29waWVyYXMgw7Z2ZXIgdGlsbCB1dGRhdGFmaWxlcm5hLiBGw6RsdGV0ICIKKyJCPFhDLUFwcHJvdmVkLUJ5PiB2aXNhcyBzb20gQjxBcHByb3ZlZC1CeT4gaSBjaGFuZ2VzLWZpbGVuIG9jaCB2aXNhcyBpbnRlIGkgIgorInN0eXJmaWxlcm5hIGbDtnIgYmluw6RyLSBvY2gga8OkbGxrb2RzcGFrZXRlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjMwNAorIywgbm8td3JhcAorbXNnaWQgIiIKKyIjIENvbW1lbnRcbiIKKyJTb3VyY2U6IGRwa2dcbiIKKyJTZWN0aW9uOiBhZG1pblxuIgorIlByaW9yaXR5OiByZXF1aXJlZFxuIgorIk1haW50YWluZXI6IERwa2cgRGV2ZWxvcGVycyBFPGx0PmRlYmlhbi1kcGtnQGxpc3RzLmRlYmlhbi5vcmdFPGd0PlxuIgorIiMgdGhpcyBmaWVsZCBpcyBjb3BpZWQgdG8gdGhlIGJpbmFyeSBhbmQgc291cmNlIHBhY2thZ2VzXG4iCisiWEJTLVVwc3RyZWFtLVJlbGVhc2UtU3RhdHVzOiBzdGFibGVcbiIKKyJIb21lcGFnZTogaHR0cDovL3dpa2kuZGViaWFuLm9yZy9UZWFtcy9EcGtnXG4iCisiVmNzLUJyb3dzZXI6IGh0dHA6Ly9naXQuZGViaWFuLm9yZy8/cD1kcGtnL2Rwa2cuZ2l0XG4iCisiVmNzLUdpdDogZ2l0Oi8vZ2l0LmRlYmlhbi5vcmcvZ2l0L2Rwa2cvZHBrZy5naXRcbiIKKyJTdGFuZGFyZHMtVmVyc2lvbjogMy43LjNcbiIKKyJCdWlsZC1EZXBlbmRzOiBwa2ctY29uZmlnLCBkZWJoZWxwZXIgKEU8Z3Q+PSA0LjEuODEpLFxuIgorIiBsaWJzZWxpbnV4MS1kZXYgKEU8Z3Q+PSAxLjI4LTQpIFshbGludXgtYW55XVxuIgorbXNnc3RyICIiCisiIyBLb21tZW50YXJcbiIKKyJTb3VyY2U6IGRwa2dcbiIKKyJTZWN0aW9uOiBhZG1pblxuIgorIlByaW9yaXR5OiByZXF1aXJlZFxuIgorIk1haW50YWluZXI6IERwa2cgRGV2ZWxvcGVycyBFPGx0PmRlYmlhbi1kcGtnQGxpc3RzLmRlYmlhbi5vcmdFPGd0PlxuIgorIiMgZGV0IGjDpHIgZsOkbHRldCBrb3BpZXJhcyB0aWxsIGJpbsOkci0gb2NoIGvDpGxsa29kc3Bha2V0ZW5cbiIKKyJYQlMtVXBzdHJlYW0tUmVsZWFzZS1TdGF0dXM6IHN0YWJsZVxuIgorIkhvbWVwYWdlOiBodHRwOi8vd2lraS5kZWJpYW4ub3JnL1RlYW1zL0Rwa2dcbiIKKyJWY3MtQnJvd3NlcjogaHR0cDovL2dpdC5kZWJpYW4ub3JnLz9wPWRwa2cvZHBrZy5naXRcbiIKKyJWY3MtR2l0OiBnaXQ6Ly9naXQuZGViaWFuLm9yZy9naXQvZHBrZy9kcGtnLmdpdFxuIgorIlN0YW5kYXJkcy1WZXJzaW9uOiAzLjcuM1xuIgorIkJ1aWxkLURlcGVuZHM6IHBrZy1jb25maWcsIGRlYmhlbHBlciAoRTxndD49IDQuMS44MSksXG4iCisiIGxpYnNlbGludXgxLWRldiAoRTxndD49IDEuMjgtNCkgWyFsaW51eC1hbnldXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcmMtY29udHJvbC41OjMyMworIywgbm8td3JhcAorbXNnaWQgIiIKKyJQYWNrYWdlOiBkcGtnLWRldlxuIgorIlNlY3Rpb246IHV0aWxzXG4iCisiUHJpb3JpdHk6IG9wdGlvbmFsXG4iCisiQXJjaGl0ZWN0dXJlOiBhbGxcbiIKKyIjIHRoaXMgaXMgYSBjdXN0b20gZmllbGQgaW4gdGhlIGJpbmFyeSBwYWNrYWdlXG4iCisiWEItTWVudG9yaW5nLUNvbnRhY3Q6IFJhcGhhZWwgSGVydHpvZyBFPGx0PmhlcnR6b2dAZGViaWFuLm9yZ0U8Z3Q+XG4iCisiRGVwZW5kczogZHBrZyAoRTxndD49IDEuMTQuNiksIHBlcmw1LCBwZXJsLW1vZHVsZXMsIGNwaW8gKEU8Z3Q+PSAyLjQuMi0yKSxcbiIKKyIgYnppcDIsIGx6bWEsIHBhdGNoIChFPGd0Pj0gMi4yLTEpLCBtYWtlLCBiaW51dGlscywgbGlidGltZWRhdGUtcGVybFxuIgorIlJlY29tbWVuZHM6IGdjYyB8IGMtY29tcGlsZXIsIGJ1aWxkLWVzc2VudGlhbFxuIgorIlN1Z2dlc3RzOiBnbnVwZywgZGViaWFuLWtleXJpbmdcbiIKKyJDb25mbGljdHM6IGRwa2ctY3Jvc3MgKEU8bHQ+RTxsdD4gMi4wLjApLCBkZXZzY3JpcHRzIChFPGx0PkU8bHQ+IDIuMTAuMjYpXG4iCisiUmVwbGFjZXM6IG1hbnBhZ2VzLXBsIChFPGx0Pj0gMjAwNTExMTctMSlcbiIKKyJEZXNjcmlwdGlvbjogRGViaWFuIHBhY2thZ2UgZGV2ZWxvcG1lbnQgdG9vbHNcbiIKKyIgVGhpcyBwYWNrYWdlIHByb3ZpZGVzIHRoZSBkZXZlbG9wbWVudCB0b29scyAoaW5jbHVkaW5nIGRwa2ctc291cmNlKVxuIgorIiByZXF1aXJlZCB0byB1bnBhY2ssIGJ1aWxkIGFuZCB1cGxvYWQgRGViaWFuIHNvdXJjZSBwYWNrYWdlcy5cbiIKKyIgLlxuIgorIiBNb3N0IERlYmlhbiBzb3VyY2UgcGFja2FnZXMgd2lsbCByZXF1aXJlIGFkZGl0aW9uYWwgdG9vbHMgdG8gYnVpbGQ7XG4iCisiIGZvciBleGFtcGxlLCBtb3N0IHBhY2thZ2VzIG5lZWQgbWFrZSBhbmQgdGhlIEMgY29tcGlsZXIgZ2NjLlxuIgorbXNnc3RyICIiCisiUGFja2FnZTogZHBrZy1kZXZcbiIKKyJTZWN0aW9uOiB1dGlsc1xuIgorIlByaW9yaXR5OiBvcHRpb25hbFxuIgorIkFyY2hpdGVjdHVyZTogYWxsXG4iCisiIyBkZXQgaMOkciDDpHIgZXR0IHNrcsOkZGRhcnN5dHQgZsOkbHQgaSBiaW7DpHJwYWtldGV0XG4iCisiWEItTWVudG9yaW5nLUNvbnRhY3Q6IFJhcGhhZWwgSGVydHpvZyBFPGx0PmhlcnR6b2dAZGViaWFuLm9yZ0U8Z3Q+XG4iCisiRGVwZW5kczogZHBrZyAoRTxndD49IDEuMTQuNiksIHBlcmw1LCBwZXJsLW1vZHVsZXMsIGNwaW8gKEU8Z3Q+PSAyLjQuMi0yKSxcbiIKKyIgYnppcDIsIGx6bWEsIHBhdGNoIChFPGd0Pj0gMi4yLTEpLCBtYWtlLCBiaW51dGlscywgbGlidGltZWRhdGUtcGVybFxuIgorIlJlY29tbWVuZHM6IGdjYyB8IGMtY29tcGlsZXIsIGJ1aWxkLWVzc2VudGlhbFxuIgorIlN1Z2dlc3RzOiBnbnVwZywgZGViaWFuLWtleXJpbmdcbiIKKyJDb25mbGljdHM6IGRwa2ctY3Jvc3MgKEU8bHQ+RTxsdD4gMi4wLjApLCBkZXZzY3JpcHRzIChFPGx0PkU8bHQ+IDIuMTAuMjYpXG4iCisiUmVwbGFjZXM6IG1hbnBhZ2VzLXBsIChFPGx0Pj0gMjAwNTExMTctMSlcbiIKKyJEZXNjcmlwdGlvbjogRGViaWFuIHBhY2thZ2UgZGV2ZWxvcG1lbnQgdG9vbHNcbiIKKyIgVGhpcyBwYWNrYWdlIHByb3ZpZGVzIHRoZSBkZXZlbG9wbWVudCB0b29scyAoaW5jbHVkaW5nIGRwa2ctc291cmNlKVxuIgorIiByZXF1aXJlZCB0byB1bnBhY2ssIGJ1aWxkIGFuZCB1cGxvYWQgRGViaWFuIHNvdXJjZSBwYWNrYWdlcy5cbiIKKyIgLlxuIgorIiBNb3N0IERlYmlhbiBzb3VyY2UgcGFja2FnZXMgd2lsbCByZXF1aXJlIGFkZGl0aW9uYWwgdG9vbHMgdG8gYnVpbGQ7XG4iCisiIGZvciBleGFtcGxlLCBtb3N0IHBhY2thZ2VzIG5lZWQgbWFrZSBhbmQgdGhlIEMgY29tcGlsZXIgZ2NjLlxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3JjLWNvbnRyb2wuNTozMzAKK21zZ2lkICJCPGRlYi1jb250cm9sPig1KSwgQjxkZWItdmVyc2lvbj4oNSksIEI8ZHBrZy1zb3VyY2U+KDEpIgorbXNnc3RyICJCPGRlYi1jb250cm9sPig1KSwgQjxkZWItdmVyc2lvbj4oNSksIEI8ZHBrZy1zb3VyY2U+KDEpIgorCisjLiB0eXBlOiBUSAorIzogZGViLXNwbGl0LjU6MQorIywgbm8td3JhcAorbXNnaWQgImRlYi1zcGxpdCIKK21zZ3N0ciAiZGViLXNwbGl0IgorCisjLiB0eXBlOiBUSAorIzogZGViLXNwbGl0LjU6MSBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6MSBkcGtnLWRpc3RhZGRmaWxlLjE6MSBkcGtnLXNwbGl0LjE6MgorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODoxIGRwa2ctdmVuZG9yLjE6MSBzdGFydC1zdG9wLWRhZW1vbi44OjEKKyMsIG5vLXdyYXAKK21zZ2lkICIyMDExLTA3LTA0IgorbXNnc3RyICIyMDExLTA3LTA0IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3BsaXQuNTo0Cittc2dpZCAiZGViLXNwbGl0IC0gRGViaWFuIG11bHRpLXBhcnQgYmluYXJ5IHBhY2thZ2UgZm9ybWF0IgorbXNnc3RyICJkZWItc3BsaXQgLSBEZWJpYW5zIGZsZXJkZWxhZGUgYmluw6RyYSBwYWtldGZvcm1hdCIKKworIyB0eXBlOiBQbGFpbiB0ZXh0CisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3BsaXQuNTo5Cittc2dpZCAiIgorIlRoZSBtdWx0aS1wYXJ0IEI8LmRlYj4gZm9ybWF0IGlzIHVzZWQgdG8gc3BsaXQgYmlnIHBhY2thZ2VzIGludG8gc21hbGxlciAiCisicGllY2VzIHRvIGVhc2UgdHJhbnNwb3J0IGluIHNtYWxsIG1lZGlhLiIKK21zZ3N0ciAiIgorIkRldCBmbGVyZGVsYWRlIEI8LmRlYj4tZm9ybWF0ZXQgYW52w6RuZHMgZsO2ciBhdHQgZGVsYSBzdG9yYSBwYWtldCBpIG1pbmRyZSAiCisiZGVsYXIgZsO2ciBhdHQgZsO2cmVua2xhIHRyYW5zcG9ydCDDtnZlciBzbcOlIG1lZGllci4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcGxpdC41OjEyCittc2dpZCAiIgorIlRoZSBmaWxlIGlzIGFuIEI8YXI+IGFyY2hpdmUgd2l0aCBhIG1hZ2ljIHZhbHVlIG9mIEI8IUU8bHQ+YXJjaEU8Z3Q+Pi4gIFRoZSAiCisiZmlsZSBuYW1lcyBtaWdodCBjb250YWluIGEgdHJhaWxpbmcgc2xhc2ggKHNpbmNlIGRwa2cgMS4xNS42KS4iCittc2dzdHIgIiIKKyJGaWxlbiDDpHIgZXR0IEI8YXI+LWFya2l2IG1lZCBkZXQgbWFnaXNrYSBudW1yZXQgQjwhRTxsdD5hcmNoRTxndD4+LiAiCisiRmlsbmFtbmVuIGthbiBpbm5laMOlbGxhIGV0dCBhdnNsdXRhbmRlIHNuZWRzdHJlY2sgKHNlZGFuIGRwa2cgMS4xNS42KS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zcGxpdC41OjE1Cittc2dpZCAiIgorIlRoZSBmaXJzdCBtZW1iZXIgaXMgbmFtZWQgQjxkZWJpYW4tc3BsaXQ+IGFuZCBjb250YWlucyBhIHNlcmllcyBvZiBsaW5lcywgIgorInNlcGFyYXRlZCBieSBuZXdsaW5lcy4gQ3VycmVudGx5IGVpZ2h0IGxpbmVzIGFyZSBwcmVzZW50OiIKK21zZ3N0ciAiIgorIkRlbiBmw7Zyc3RhIHBvc3RlbiBoZXRlciBCPGRlYmlhbi1zcGxpdD4gb2NoIGlubmVow6VsbGVyIGVuIHNlcmllIGF2IHJhZGVyLCAiCisiYXZkZWxhZGUgbWVkIG55cmFkc3RlY2tlbi4gRsO2ciBuw6RydmFyYW5kZSBmaW5ucyDDpXR0YSByYWRlcjoiCisKKyMuIHR5cGU6IElQCisjOiBkZWItc3BsaXQuNToxNSBkZWItc3BsaXQuNToxOCBkZWItc3BsaXQuNToyMCBkZWItc3BsaXQuNToyMiBkZWItc3BsaXQuNToyNAorIzogZGViLXNwbGl0LjU6MjYgZGViLXNwbGl0LjU6MjggZGViLXNwbGl0LjU6MzEgZHBrZy1nZW5zeW1ib2xzLjE6MjAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjIyIGRwa2ctZ2Vuc3ltYm9scy4xOjI0IGRwa2ctZ2Vuc3ltYm9scy4xOjI2CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozMTEgZHBrZy1nZW5zeW1ib2xzLjE6MzE3IGRwa2ctZ2Vuc3ltYm9scy4xOjM1MQorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzU1IGRwa2ctZ2Vuc3ltYm9scy4xOjM1OAorIywgbm8td3JhcAorbXNnaWQgIlxcKGJ1IgorbXNnc3RyICJcXChidSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNwbGl0LjU6MTgKK21zZ2lkICIiCisiVGhlIGZvcm1hdCB2ZXJzaW9uIG51bWJlciwgQjwyLjE+IGF0IHRoZSB0aW1lIHRoaXMgbWFudWFsIHBhZ2Ugd2FzIHdyaXR0ZW4uIgorbXNnc3RyICJGb3JtYXRldHMgdmVyc2lvbnNudW1tZXIsIEI8Mi4xPiBkw6UgZGVubmEgbWFudWFsc2lkYSBza3JpdnMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3BsaXQuNToyMAorbXNnaWQgIlRoZSBwYWNrYWdlIG5hbWUuIgorbXNnc3RyICJQYWtldGV0cyBuYW1uLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNwbGl0LjU6MjIKK21zZ2lkICJUaGUgcGFja2FnZSB2ZXJzaW9uLiIKK21zZ3N0ciAiUGFrZXRldHMgdmVyc2lvbnNudW1tZXIuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3BsaXQuNToyNAorbXNnaWQgIlRoZSBtZDVzdW0gb2YgdGhlIHBhY2thZ2UuIgorbXNnc3RyICJtZDUta29udHJvbGxzdW1tYW4gZsO2ciBwYWtldGV0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNwbGl0LjU6MjYKK21zZ2lkICJUaGUgdG90YWwgc2l6ZSBvZiB0aGUgcGFja2FnZS4iCittc2dzdHIgIlRvdGFsIHN0b3JsZWsgcMOlIHBha2V0ZXQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3BsaXQuNToyOAorbXNnaWQgIlRoZSBtYXhpbXVtIHBhcnQgc2l6ZS4iCittc2dzdHIgIk1heGltYWwgc3RvcmxlayBww6UgZW4gZGVsLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNwbGl0LjU6MzEKK21zZ2lkICIiCisiVGhlIGN1cnJlbnQgcGFydCBudW1iZXIsIGZvbGxvd2VkIGJ5IGEgc2xhc2ggYW5kIHRoZSB0b3RhbCBhbW91bnQgb2YgcGFydHMgIgorIihhcyBpbiBcXChvcTEvMTBcXChjcSkuIgorbXNnc3RyICIiCisiTnVtbWVyIHDDpSBha3R1ZWxsIGRlbCwgZsO2bGp0IGF2IGV0dCBzbmVkc3RyZWNrIG9jaCB0b3RhbHQgYW50YWwgZGVsYXIgKHNvbSBpICIKKyJcXChvcTEvMTBcXChjcSkuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3BsaXQuNTozMworbXNnaWQgIlRoZSBwYWNrYWdlIGFyY2hpdGVjdHVyZSAoc2luY2UgZHBrZyAxLjE2LjEpLiIKK21zZ3N0ciAiUGFrZXRldHMgYXJraXRla3R1ciAoc2VkYW4gZHBrZyAxLjE2LjEpLiIKKworIyB0eXBlOiBQbGFpbiB0ZXh0CisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3BsaXQuNTozNgorbXNnaWQgIiIKKyJQcm9ncmFtcyB3aGljaCByZWFkIG11bHRpLXBhcnQgYXJjaGl2ZXMgc2hvdWxkIGJlIHByZXBhcmVkIGZvciBhZGRpdGlvbmFsICIKKyJsaW5lcyB0byBiZSBwcmVzZW50LCBhbmQgc2hvdWxkIGlnbm9yZSB0aGVzZSBpZiB0aGlzIGlzIHRoZSBjYXNlLiIKK21zZ3N0ciAiIgorIkZpbGVyIHNvbSBsw6RzZXIgZmxlcmRlbGFkZSBhcmtpdiBiw7ZyIHZhcmEgYmVyZWRkYSBww6UgYXR0IHl0dGVybGlnYXJlIHJhZGVyICIKKyLDpHIgbsOkcnZhcmFuZGUsIG9jaCBiw7ZyIGlnbm9yZXJhIGRlc3NhIG9tIHPDpSDDpHIgZmFsbGV0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNwbGl0LjU6NDEKK21zZ2lkICIiCisiSWYgdGhlIHZlcnNpb24gbnVtYmVyIGhhcyBjaGFuZ2VkLCBhbiBpbmNvbXBhdGlibGUgY2hhbmdlIGhhcyBiZWVuIG1hZGUgYW5kICIKKyJ0aGUgcHJvZ3JhbSBzaG91bGQgc3RvcC4gSWYgaXQgaGFzIG5vdCwgdGhlbiB0aGUgcHJvZ3JhbSBzaG91bGQgYmUgYWJsZSB0byAiCisic2FmZWx5IGNvbnRpbnVlLCB1bmxlc3MgaXQgZW5jb3VudGVycyBhbiB1bmV4cGVjdGVkIG1lbWJlciBpbiB0aGUgYXJjaGl2ZSAiCisiKGV4Y2VwdCBhdCB0aGUgZW5kKSwgYXMgZGVzY3JpYmVkIGJlbG93LiIKK21zZ3N0ciAiIgorIk9tIHZlcnNpb25zbnVtcmV0IGhhciDDpG5kcmF0cyBoYXIgZW4gaW5rb21wYXRpYmVsIMOkbmRyaW5nIGluZsO2cnRzLCBvY2ggIgorInByb2dyYW1tZXQgc2thbGwgYXZicnl0YXMuIE9tIHPDpSBpbnRlIGhhciBnam9ydHMsIHNrYWxsIHByb2dyYW1tZXQga3VubmEgIgorImZvcnRzw6R0dGEgdXRhbiBwcm9ibGVtLCBzw6V2aWRhIGRldCBpbnRlIHN0w7Z0ZXIgcMOlIGVuIG92w6RudGFkIHBvc3QgaSBhcmtpdmV0ICIKKyIoZsO2cnV0b20gaSBzbHV0ZXQpLCBlbmxpZ3QgdmFkIGJlc2tyaXZzIG5lZGFuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNwbGl0LjU6NDQKK21zZ2lkICIiCisiVGhlIHNlY29uZCwgbGFzdCByZXF1aXJlZCBtZW1iZXIgaXMgbmFtZWQgQjxkYXRhLj5JPE4+LCB3aGVyZSBJPE4+IGRlbm90ZXMgIgorInRoZSBwYXJ0IG51bWJlci4gSXQgY29udGFpbnMgdGhlIHJhdyBwYXJ0IGRhdGEuIgorbXNnc3RyICIiCisiRGVuIGFuZHJhIG9jaCBzaXN0YSBuw7ZkdsOkbmRpZ2EgcG9zdGVuIGhldGVyIEI8ZGF0YS4+STxOPiwgZMOkciBJPE4+IGFuZ2VyICIKKyJkZWxudW1yZXQuIERlbiBpbm5laMOlbGxlciByw6VkYXRhIGbDtnIgZGVsZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3BsaXQuNTo0OQorbXNnaWQgIiIKKyJUaGVzZSBtZW1iZXJzIG11c3Qgb2NjdXIgaW4gdGhpcyBleGFjdCBvcmRlci4gQ3VycmVudCBpbXBsZW1lbnRhdGlvbnMgc2hvdWxkICIKKyJpZ25vcmUgYW55IGFkZGl0aW9uYWwgbWVtYmVycyBhZnRlciBCPGRhdGEuPkk8Tj4uICBGdXJ0aGVyIG1lbWJlcnMgbWF5IGJlICIKKyJkZWZpbmVkIGluIHRoZSBmdXR1cmUsIGFuZCAoaWYgcG9zc2libGUpIHdpbGwgYmUgcGxhY2VkIGFmdGVyIHRoZXNlIHR3by4iCittc2dzdHIgIiIKKyJEZXNzYSBwb3N0ZXIgbcOlc3RlIGxpZ2dhIGkgZXhha3QgZGVubmEgb3JkbmluZy4gTnV2YXJhbmRlIGltcGxlbWVudGF0aW9uZXIgIgorImLDtnIgaWdub3JlcmEgZXZlbnR1ZWxsYSB5dHRlcmxpZ2FyZSBwb3N0ZXIgZWZ0ZXIgQjxkYXRhLj5JPE4+LiBZdHRlcmxpZ2FyZSAiCisicG9zdGVyIGthbiBrb21tYSBhdHQgZGVmaW5pZXJhcyBpIGZyYW10aWRlbiwgb2NoIGtvbW1lciAob20gbcO2amxpZ3QpICIKKyJwbGFjZXJhcyBlZnRlciBkZXNzYSB0dsOlLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNwbGl0LjU6NTEKK21zZ2lkICJCPGRlYj4oNSksIEI8ZHBrZy1zcGxpdD4oMSkuIgorbXNnc3RyICJCPGRlYj4oNSksIEI8ZHBrZy1zcGxpdD4oMSkuIgorCisjLiB0eXBlOiBUSAorIzogZGViLXZlcnNpb24uNTo1CisjLCBuby13cmFwCittc2dpZCAiZGViLXZlcnNpb24iCittc2dzdHIgImRlYi12ZXJzaW9uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjgKK21zZ2lkICJkZWItdmVyc2lvbiAtIERlYmlhbiBwYWNrYWdlIHZlcnNpb24gbnVtYmVyIGZvcm1hdCIKK21zZ3N0ciAiZGViLXZlcnNpb24gLSBGb3JtYXQgcMOlIHZlcnNpb25zbnVtbWVyIGbDtnIgRGViaWFucGFrZXQiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6MTEKK21zZ2lkICJbSTxlcG9jaD5CPDo+XUk8dXBzdHJlYW0tdmVyc2lvbj5bQjwtPkk8ZGViaWFuLXJldmlzaW9uPl0iCittc2dzdHIgIltJPGVwb2s+Qjw6Pl1JPHVwcHN0csO2bXN2ZXJzaW9uPltCPC0+STxkZWJpYW51cHBkYXRlcmluZz5dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjE0Cittc2dpZCAiIgorIlZlcnNpb24gbnVtYmVycyBhcyB1c2VkIGZvciBEZWJpYW4gYmluYXJ5IGFuZCBzb3VyY2UgcGFja2FnZXMgY29uc2lzdCBvZiAiCisidGhyZWUgY29tcG9uZW50cy4gVGhlc2UgYXJlOiIKK21zZ3N0ciAiIgorIlZlcnNpb25zbnVtbWVyIHNvbSBhbnbDpG5kcyBmw7ZyIERlYmlhbnMgYmluw6RyLSBvY2gga8OkbGxrb2RzcGFrZXQgYmVzdMOlciBhdiAiCisidHJlIGtvbXBvbmVudGVyLiBEZSDDpHI6IgorCisjLiB0eXBlOiBUUAorIzogZGViLXZlcnNpb24uNToxNAorIywgbm8td3JhcAorbXNnaWQgIkk8ZXBvY2g+IgorbXNnc3RyICJJPGVwb2s+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjIwCittc2dpZCAiIgorIlRoaXMgaXMgYSBzaW5nbGUgKGdlbmVyYWxseSBzbWFsbCkgdW5zaWduZWQgaW50ZWdlci4gIEl0IG1heSBiZSBvbWl0dGVkLCBpbiAiCisid2hpY2ggY2FzZSB6ZXJvIGlzIGFzc3VtZWQuICBJZiBpdCBpcyBvbWl0dGVkIHRoZW4gdGhlIEk8dXBzdHJlYW0tdmVyc2lvbj4gIgorIm1heSBub3QgY29udGFpbiBhbnkgY29sb25zLiIKK21zZ3N0ciAiIgorIkV0dCBlbnNhbXQgKHZhbmxpZ3R2aXMgbGl0ZXQpIGhlbHRhbHN2w6RyZGUgc3TDtnJyZSDDpG4gbm9sbC4gRGV0IGthbiAiCisidXRlc2x1dGFzLCBpIHPDpSBmYWxsIGFudGFzIGRldCB2YXJhIG5vbGwuIE9tIGRldCB1dGVzbHV0cyBrYW4gaW50ZSAiCisiSTx1cHBzdHLDtm1zdmVyc2lvbj4gaW5uZWjDpWxsYSBrb2xvbnRlY2tlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6MjQKK21zZ2lkICIiCisiSXQgaXMgcHJvdmlkZWQgdG8gYWxsb3cgbWlzdGFrZXMgaW4gdGhlIHZlcnNpb24gbnVtYmVycyBvZiBvbGRlciB2ZXJzaW9ucyBvZiAiCisiYSBwYWNrYWdlLCBhbmQgYWxzbyBhIHBhY2thZ2UncyBwcmV2aW91cyB2ZXJzaW9uIG51bWJlcmluZyBzY2hlbWVzLCB0byBiZSAiCisibGVmdCBiZWhpbmQuIgorbXNnc3RyICIiCisiRsOkbHRldCDDpHIgdGlsbCBmw7ZyIGF0dCByw6R0dGEgdGlsbCBmZWwgaSB2ZXJzaW9uc251bW1lciBpIHRpZGlnYXJlIHZlcnNpb25lciAiCisiYXYgcGFrZXRldCwgc2FtdCBhdHRyIGhhbnRlcmEgZsO2csOkbmRyaW5nYXIgaSBwYWtldGV0cyAiCisidmVyc2lvbnNudW1yZXJpbmdzc3lzdGVtLiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi12ZXJzaW9uLjU6MjQKKyMsIG5vLXdyYXAKK21zZ2lkICJJPHVwc3RyZWFtLXZlcnNpb24+IgorbXNnc3RyICJJPHVwcHN0csO2bXN2ZXJzaW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNTozNAorbXNnaWQgIiIKKyJUaGlzIGlzIHRoZSBtYWluIHBhcnQgb2YgdGhlIHZlcnNpb24gbnVtYmVyLiAgSXQgaXMgdXN1YWxseSB0aGUgdmVyc2lvbiAiCisibnVtYmVyIG9mIHRoZSBvcmlnaW5hbCAoXCJ1cHN0cmVhbVwiKSAgcGFja2FnZSBmcm9tIHdoaWNoIHRoZSBJPC5kZWI+IGZpbGUgIgorImhhcyBiZWVuIG1hZGUsIGlmIHRoaXMgaXMgYXBwbGljYWJsZS4gIFVzdWFsbHkgdGhpcyB3aWxsIGJlIGluIHRoZSBzYW1lICIKKyJmb3JtYXQgYXMgdGhhdCBzcGVjaWZpZWQgYnkgdGhlIHVwc3RyZWFtIGF1dGhvcihzKTsgaG93ZXZlciwgaXQgbWF5IG5lZWQgdG8gIgorImJlIHJlZm9ybWF0dGVkIHRvIGZpdCBpbnRvIHRoZSBwYWNrYWdlIG1hbmFnZW1lbnQgc3lzdGVtJ3MgZm9ybWF0IGFuZCAiCisiY29tcGFyaXNvbiBzY2hlbWUuIgorbXNnc3RyICIiCisiRGV0dGEgw6RyIGh1dnVkZGVsZW4gYXYgdmVyc2lvbnNudW1yZXQuIERldCDDpHIgdmFubGlndHZpcyB2ZXJzaW9uc251bXJldCBmw7ZyICIKKyJvcmlnaW5hbHBha2V0ZXQgKFwidXBwc3Ryw7Ztc3Bha2V0ZXRcIikgc29tIEk8LmRlYj4tZmlsZW4gc2thcGF0cyBmcsOlbiwgb20gIgorImV0dCBzw6VkYW50IGZpbm5zLiBOb3JtYWx0IGFuZ2VzIGRldCBww6Ugc2FtbWEgZm9ybSBzb20gYW52w6RuZHMgYXYgIgorInVwcHN0csO2bXNmw7ZyZmF0dGFyZW4vZsO2cmZhdHRhcm5hLCBtZW4gZGV0IGthbiBiZWjDtnZhIGZvcm1hdGVyYXMgb20gZsO2ciBhdHQgIgorInBhc3NhIG1lZCBwYWtldGhhbnRlcmFyZW5zIGZvcm1hdCBvY2ggasOkbWbDtnJlbHNlZnVua3Rpb24uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjM5Cittc2dpZCAiIgorIlRoZSBjb21wYXJpc29uIGJlaGF2aW9yIG9mIHRoZSBwYWNrYWdlIG1hbmFnZW1lbnQgc3lzdGVtIHdpdGggcmVzcGVjdCB0byB0aGUgIgorIkk8dXBzdHJlYW0tdmVyc2lvbj4gaXMgZGVzY3JpYmVkIGJlbG93LiBUaGUgSTx1cHN0cmVhbS12ZXJzaW9uPiBwb3J0aW9uIG9mICIKKyJ0aGUgdmVyc2lvbiBudW1iZXIgaXMgbWFuZGF0b3J5LiIKK21zZ3N0ciAiIgorIkh1ciBwYWtldGhhbnRlcmFyZW4gasOkbWbDtnIgdmVyc2lvbnNudW1tZXIgbsOkciBkZXQgZ8OkbGxlciBJPHVwcHN0csO2bXN2ZXJzaW9uPiAiCisiYmVza3JpdnMgbmVkYW4uIEbDpGx0ZXQgSTx1cHBzdHLDtm1zdmVyc2lvbj4gaSB2ZXJzaW9uc251bXJldCBrYW4gaW50ZSAiCisidXRlbMOkbW5hcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6NDgKK21zZ2lkICIiCisiVGhlIEk8dXBzdHJlYW0tdmVyc2lvbj4gbWF5IGNvbnRhaW4gb25seSBhbHBoYW51bWVyaWNzIChcIkEtWmEtejAtOVwiKSBhbmQgIgorInRoZSBjaGFyYWN0ZXJzIEI8Lj4gQjwrPiBCPC0+IEI8Oj4gQjx+PiAoZnVsbCBzdG9wLCBwbHVzLCBoeXBoZW4sIGNvbG9uLCAiCisidGlsZGUpIGFuZCBzaG91bGQgc3RhcnQgd2l0aCBhIGRpZ2l0LiAgSWYgdGhlcmUgaXMgbm8gSTxkZWJpYW4tcmV2aXNpb24+ICIKKyJ0aGVuIGh5cGhlbnMgYXJlIG5vdCBhbGxvd2VkOyBpZiB0aGVyZSBpcyBubyBJPGVwb2NoPiB0aGVuIGNvbG9ucyBhcmUgbm90ICIKKyJhbGxvd2VkLiIKK21zZ3N0ciAiIgorIkbDpGx0ZXQgSTx1cHBzdHLDtm1zdmVyc2lvbj4ga2FuIGVuZGFzdCBpbm5laMOlbGxhIGFsZmFudW1lcmlza2EgdGVja2VuIChcIkEtWmEtIgorInowLTlcIikgb2NoIHRlY2tuZW4gQjwuPiBCPCs+IEI8LT4gQjw6PiBCPH4+IChwdW5rdCwgcGx1cywgYmluZGVzdHJlY2ssICIKKyJrb2xvbiwgdGlsZGUpIG9jaCBiw7ZyIGlubGVkYXMgbWVkIGVuIHNpZmZyYS4gT20gZGV0IGludGUgZmlubnMgbsOlZ29uICIKKyJJPGRlYmlhbnVwcGRhdGVyaW5nPiB0aWxsw6V0cyBpbnRlIGJpbmRlc3RyZWNrIG9jaCBvbSBkZXQgaW50ZSBmaW5ucyBuw6Vnb24gIgorIkk8ZXBvaz4gdGlsbMOldHMgaW50ZSBrb2xvbnRlY2tlbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItdmVyc2lvbi41OjQ4CisjLCBuby13cmFwCittc2dpZCAiSTxkZWJpYW4tcmV2aXNpb24+IgorbXNnc3RyICJJPGRlYmlhbnVwcGRhdGVyaW5nPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNTo1NworbXNnaWQgIiIKKyJUaGlzIHBhcnQgb2YgdGhlIHZlcnNpb24gbnVtYmVyIHNwZWNpZmllcyB0aGUgdmVyc2lvbiBvZiB0aGUgRGViaWFuIHBhY2thZ2UgIgorImJhc2VkIG9uIHRoZSB1cHN0cmVhbSB2ZXJzaW9uLiAgSXQgbWF5IGNvbnRhaW4gb25seSBhbHBoYW51bWVyaWNzIGFuZCB0aGUgIgorImNoYXJhY3RlcnMgQjwrPiBCPC4+IEI8fj4gKHBsdXMsIGZ1bGwgc3RvcCwgdGlsZGUpIGFuZCBpcyBjb21wYXJlZCBpbiB0aGUgIgorInNhbWUgd2F5IGFzIHRoZSBJPHVwc3RyZWFtLXZlcnNpb24+IGlzLiIKK21zZ3N0ciAiIgorIkRlbm5hIGRlbCBhdiB2ZXJzaW9uc251bXJldCBhbmdlciB2ZXJzaW9uZW4gZsO2ciBEZWJpYW5wYWtldGV0IHNvbSBiYXNlcmF0cyAiCisicMOlIHVwcHN0csO2bXN2ZXJzaW9uZW4uIERlbiBrYW4gZW5kYXN0IGlubmVow6VsbGEgYWxmYW51bWVyaXNrYSB0ZWNrZW4gc2FtdCAiCisidGVja25lbiBCPCs+IEI8Lj4gQjx+PiAocGx1cywgcHVua3QsIHRpbGRlKSBvY2ggasOkbWbDtnJzIHDDpSBzYW1tYSBzw6R0dCBzb20gIgorIkk8dXBwc3Ryw7Ztc3ZlcnNpb24+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNTo2NAorbXNnaWQgIiIKKyJJdCBpcyBvcHRpb25hbDsgaWYgaXQgaXNuJ3QgcHJlc2VudCB0aGVuIHRoZSBJPHVwc3RyZWFtLXZlcnNpb24+IG1heSBub3QgIgorImNvbnRhaW4gYSBoeXBoZW4uICBUaGlzIGZvcm1hdCByZXByZXNlbnRzIHRoZSBjYXNlIHdoZXJlIGEgcGllY2Ugb2Ygc29mdHdhcmUgIgorIndhcyB3cml0dGVuIHNwZWNpZmljYWxseSB0byBiZSB0dXJuZWQgaW50byBhIERlYmlhbiBwYWNrYWdlLCBhbmQgc28gdGhlcmUgaXMgIgorIm9ubHkgb25lIFwiZGViaWFuaXNhdGlvblwiIG9mIGl0IGFuZCB0aGVyZWZvcmUgbm8gcmV2aXNpb24gaW5kaWNhdGlvbiBpcyAiCisicmVxdWlyZWQuIgorbXNnc3RyICIiCisiRsOkbHRldCDDpHIgdmFsZnJpdHQgLSBvbSBkZXQgaW50ZSBhbmdlcyBzw6Uga2FuIGludGUgSTx1cHBzdHLDtm1zdmVyc2lvbj4gIgorImlubmVow6VsbGEgbsOlZ290IGJpbmRlc3RyZWNrLiBJIHPDpSBmYWxsIGFuZ2VyIHZlcnNpb25zbnVtcmV0IGF0dCBlbiAiCisicHJvZ3JhbXZhcmEgc2tyaXZpdHMgc3BlY2lmaWt0IGbDtnIgYXR0IGfDtnJhcyB0aWxsIGV0dCBEZWJpYW5wYWtldCwgb2NoIGF0dCAiCisiZGV0IGTDpSBlbmRhc3QgZmlubnMgZW4gXCJkZWJpYW5pc2VyaW5nXCIgYXYgZGV0IG9jaCBhdHQgZMOkcmbDtnIgYmVow7Z2cyBpbmdlbiAiCisidXBwZGF0ZXJpbmdzaW5mb3JtYXRpb24gdmlkIHNpZGFuIGF2LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNTo2OAorbXNnaWQgIiIKKyJJdCBpcyBjb252ZW50aW9uYWwgdG8gcmVzdGFydCB0aGUgSTxkZWJpYW4tcmV2aXNpb24+IGF0ICcxJyBlYWNoIHRpbWUgdGltZSAiCisidGhlIEk8dXBzdHJlYW0tdmVyc2lvbj4gaXMgaW5jcmVhc2VkLiIKK21zZ3N0ciAiIgorIlZhbmxpZ3R2aXMgYsO2cmphciBJPGRlYmlhbnVwcGRhdGVyaW5nPiBvbSBww6UgXCIxXCIgdmFyamUgZ8OlbmcgIgorIkk8dXBwc3Ryw7Ztc3ZlcnNpb24+IMO2a2FzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNTo3NgorbXNnaWQgIiIKKyJEcGtnIHdpbGwgYnJlYWsgdGhlIHZlcnNpb24gbnVtYmVyIGFwYXJ0IGF0IHRoZSBsYXN0IGh5cGhlbiBpbiB0aGUgc3RyaW5nICIKKyIoaWYgdGhlcmUgaXMgb25lKSB0byBkZXRlcm1pbmUgdGhlIEk8dXBzdHJlYW0tdmVyc2lvbj4gYW5kIEk8ZGViaWFuLSIKKyJyZXZpc2lvbj4uIFRoZSBhYnNlbmNlIG9mIGEgSTxkZWJpYW4tcmV2aXNpb24+IGNvbXBhcmVzIGVhcmxpZXIgdGhhbiB0aGUgIgorInByZXNlbmNlIG9mIG9uZSAoYnV0IG5vdGUgdGhhdCB0aGUgSTxkZWJpYW4tcmV2aXNpb24+IGlzIHRoZSBsZWFzdCAiCisic2lnbmlmaWNhbnQgcGFydCBvZiB0aGUgdmVyc2lvbiBudW1iZXIpLiIKK21zZ3N0ciAiIgorIkRwa2cgZGVsYXIgdXBwIHZlcnNpb25zbnVtcmV0IHZpZCBkZXQgc2lzdGEgYmluZGVzdHJlY2tldCBpIHN0csOkbmdlbiAob20gIgorInPDpWRhbnQgZmlubnMpIGbDtnIgYXR0IGJlc3TDpG1tYSBJPHVwcHN0csO2bXN2ZXJzaW9uPiBvY2ggSTxkZWJpYW51cHBkYXRlcmluZz4uICIKKyJPbSBJPGRlYmlhbnVwcGRhdGVyaW5nPiBzYWtuYXMgcsOka25hcyBkZXQgc29tIHRpZGlnYXJlIMOkbiBvbSBmw6RsdGV0ICIKKyJleGlzdGVyYXIgKG1lbiBub3RlcmEgYXR0IEk8ZGViaWFudXBwZGF0ZXJpbmc+IMOkciBkZW4gbWluc3Qgc2lnbmlmaWthbnRhICIKKyJkZWxlbiBhdiB2ZXJzaW9uc251bXJldCkuIgorCisjLiB0eXBlOiBTUworIzogZGViLXZlcnNpb24uNTo3NgorIywgbm8td3JhcAorbXNnaWQgIlNvcnRpbmcgQWxnb3JpdGhtIgorbXNnc3RyICJTb3J0ZXJpbmdzYWxnb3JpdG0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6ODAKK21zZ2lkICIiCisiVGhlIEk8dXBzdHJlYW0tdmVyc2lvbj4gYW5kIEk8ZGViaWFuLXJldmlzaW9uPiBwYXJ0cyBhcmUgY29tcGFyZWQgYnkgdGhlICIKKyJwYWNrYWdlIG1hbmFnZW1lbnQgc3lzdGVtIHVzaW5nIHRoZSBzYW1lIGFsZ29yaXRobToiCittc2dzdHIgIiIKKyJQYWtldGhhbnRlcmluZ3NzeXN0ZW1ldCBhbnbDpG5kZXIgc2FtbWEgYWxnb3JpdG0gZsO2ciBhdHQgasOkbWbDtnJhICIKKyJJPHVwcHN0csO2bXN2ZXJzaW9uPi0gb2NoIEk8ZGViaWFudXBwZGF0ZXJpbmc+LWRlbGFybmE6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjgyCittc2dpZCAiVGhlIHN0cmluZ3MgYXJlIGNvbXBhcmVkIGZyb20gbGVmdCB0byByaWdodC4iCittc2dzdHIgIlN0csOkbmdhcm5hIGrDpG1mw7ZycyBmcsOlbiB2w6Ruc3RlciB0aWxsIGjDtmdlci4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6OTIKK21zZ2lkICIiCisiRmlyc3QgdGhlIGluaXRpYWwgcGFydCBvZiBlYWNoIHN0cmluZyBjb25zaXN0aW5nIGVudGlyZWx5IG9mIG5vbi1kaWdpdCAiCisiY2hhcmFjdGVycyBpcyBkZXRlcm1pbmVkLiAgVGhlc2UgdHdvIHBhcnRzIChvbmUgb2Ygd2hpY2ggbWF5IGJlIGVtcHR5KSBhcmUgIgorImNvbXBhcmVkIGxleGljYWxseS4gIElmIGEgZGlmZmVyZW5jZSBpcyBmb3VuZCBpdCBpcyByZXR1cm5lZC4gIFRoZSBsZXhpY2FsICIKKyJjb21wYXJpc29uIGlzIGEgY29tcGFyaXNvbiBvZiBBU0NJSSB2YWx1ZXMgbW9kaWZpZWQgc28gdGhhdCBhbGwgdGhlIGxldHRlcnMgIgorInNvcnQgZWFybGllciB0aGFuIGFsbCB0aGUgbm9uLWxldHRlcnMgYW5kIHNvIHRoYXQgYSB0aWxkZSBzb3J0cyBiZWZvcmUgIgorImFueXRoaW5nLCBldmVuIHRoZSBlbmQgb2YgYSBwYXJ0LiAgRm9yIGV4YW1wbGUsIHRoZSBmb2xsb3dpbmcgcGFydHMgYXJlIGluICIKKyJzb3J0ZWQgb3JkZXI6ICd+ficsICd+fmEnLCAnficsIHRoZSBlbXB0eSBwYXJ0LCAnYScuIgorbXNnc3RyICIiCisiRsO2cnN0IGJlc3TDpG1zIGRlIGlubGVkYW5kZSBkZWxhciBhdiB2YXJqZSBzdHLDpG5nIHNvbSBlbmJhcnQgYmVzdMOlciBhdiB0ZWNrZW4gIgorInNvbSBpbnRlIMOkciBzaWZmcm9yLiBEZXNzYSBiw6VkYSBkZWxhciAoYXYgdmlsa2EgZGVuIGVuYSBrYW4gdmFyYSB0b20pICIKKyJqw6RtZsO2cnMgbGV4aWthbHQuIE9tIGVuIHNraWxsbmFkIHVwcHTDpGNrcyByZXR1cm5lcmFzIGRlbi4gRGVuIGxleGlrYWxhICIKKyJqw6RtZsO2cmVsc2VuIGrDpG1mw7ZyIEFTQ0lJLXbDpHJkZW4sIG1vZGlmaWVyYWQgc8OlIGF0dCBhbGxhIGJva3N0w6R2ZXIgc29ydGVyYXMgIgorImbDtnJlIGFsbGEgaWNrZS1ib2tzdMOkdmVyIG9jaCBzw6UgYXR0IGV0dCB0aWxkZSBzb3J0ZXJhcyBmw7ZyZSBhbGx0LCDDpHZlbiBpICIKKyJzbHV0ZXQgYXYgZGVsc3Ryw6RuZ2VuLiBUaWxsIGV4ZW1wZWwgw6RyIGbDtmxqYW5kZSBkZWxzdHLDpG5nYXIgc29ydGVyYWRlOiBcIn5+IgorIlwiLCBcIn5+YVwiLCBcIn5cIiwgdG9tbWEgZGVsc3Ryw6RuZ2VuLCBcImFcIi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6MTAwCittc2dpZCAiIgorIlRoZW4gdGhlIGluaXRpYWwgcGFydCBvZiB0aGUgcmVtYWluZGVyIG9mIGVhY2ggc3RyaW5nIHdoaWNoIGNvbnNpc3RzICIKKyJlbnRpcmVseSBvZiBkaWdpdCBjaGFyYWN0ZXJzIGlzIGRldGVybWluZWQuICBUaGUgbnVtZXJpY2FsIHZhbHVlcyBvZiB0aGVzZSAiCisidHdvIHBhcnRzIGFyZSBjb21wYXJlZCwgYW5kIGFueSBkaWZmZXJlbmNlIGZvdW5kIGlzIHJldHVybmVkIGFzIHRoZSByZXN1bHQgIgorIm9mIHRoZSBjb21wYXJpc29uLiAgRm9yIHRoZXNlIHB1cnBvc2VzIGFuIGVtcHR5IHN0cmluZyAod2hpY2ggY2FuIG9ubHkgb2NjdXIgIgorImF0IHRoZSBlbmQgb2Ygb25lIG9yIGJvdGggdmVyc2lvbiBzdHJpbmdzIGJlaW5nIGNvbXBhcmVkKSBjb3VudHMgYXMgemVyby4iCittc2dzdHIgIiIKKyJEw6RyZWZ0ZXIgYmVzdMOkbXMgZGUgaW5sZWRhbmRlIGRlbGFyIGF2IHZhcmplIHN0csOkbmcgc29tIGVuYmFydCBiZXN0w6VyIGF2ICIKKyJzaWZmcm9yLiBEZSBudW1lcmlza2EgdsOkcmRlbmEgYXYgZGVzc2EgZGVsYXIgasOkbWbDtnJzIG9jaCBvbSBlbiBza2lsbG5hZCAiCisidXBwdMOkY2tzIGkgasOkbWbDtnJlbHNlbiByZXR1cm5lcmFzIGRlbiBzb20gcmVzdWx0YXQgYXYgasOkbWbDtnJlbHNlbi4gRsO2ciBkZXR0YSAiCisiw6RuZGFtw6VsIHLDpGtuYXMgZW4gdG9tIHN0csOkbmcgKHZpbGtldCBiYXJhIGthbiB1cHBzdMOlIGkgc2x1dGV0IGF2IGRlbiBlbmEgIgorImVsbGVyIGLDpWRhIHZlcnNpb25zc3Ryw6RuZ2FybmEgc29tIGrDpG1mw7Zycykgc29tIG5vbGwuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjEwNAorbXNnaWQgIiIKKyJUaGVzZSB0d28gc3RlcHMgKGNvbXBhcmluZyBhbmQgcmVtb3ZpbmcgaW5pdGlhbCBub24tZGlnaXQgc3RyaW5ncyBhbmQgIgorImluaXRpYWwgZGlnaXQgc3RyaW5ncykgYXJlIHJlcGVhdGVkIHVudGlsIGEgZGlmZmVyZW5jZSBpcyBmb3VuZCBvciBib3RoICIKKyJzdHJpbmdzIGFyZSBleGhhdXN0ZWQuIgorbXNnc3RyICIiCisiRGVzc2EgYsOlZGEgc3RlZyAoasOkbWbDtnJhIG9jaCB0YSBib3J0IGlubGVkYW5kZSBzdHLDpG5nYXIgbWVkIGlja2Utc2lmZnJvciBvY2ggIgorInNpZmZyb3IpIHVwcHJlcGFzIHRpbGwgZW4gasOkbWbDtnJlbHNlIHVwcHTDpGNrcyBlbGxlciBkZSBiw6VkYSBzdHLDpG5nYXJuYSB0YXIgIgorInNsdXQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjExMgorbXNnaWQgIiIKKyJOb3RlIHRoYXQgdGhlIHB1cnBvc2Ugb2YgZXBvY2hzIGlzIHRvIGFsbG93IHVzIHRvIGxlYXZlIGJlaGluZCBtaXN0YWtlcyBpbiAiCisidmVyc2lvbiBudW1iZXJpbmcsIGFuZCB0byBjb3BlIHdpdGggc2l0dWF0aW9ucyB3aGVyZSB0aGUgdmVyc2lvbiBudW1iZXJpbmcgIgorInNjaGVtZSBjaGFuZ2VzLiAgSXQgaXMgQjxub3Q+IGludGVuZGVkIHRvIGNvcGUgd2l0aCB2ZXJzaW9uIG51bWJlcnMgIgorImNvbnRhaW5pbmcgc3RyaW5ncyBvZiBsZXR0ZXJzIHdoaWNoIHRoZSBwYWNrYWdlIG1hbmFnZW1lbnQgc3lzdGVtIGNhbm5vdCAiCisiaW50ZXJwcmV0IChzdWNoIGFzICdBTFBIQScgb3IgJ3ByZS0nKSwgb3Igd2l0aCBzaWxseSBvcmRlcmluZ3MuIgorbXNnc3RyICIiCisiT2JzZXJ2ZXJhIGF0dCBlcG9rZsOkbHRldCDDpHIgdGlsbCBmw7ZyIGF0dCBrdW5uYSByw6R0dGEgdGlsbCB0aWRpZ2FyZSBtaXNzdGFnIGkgIgorInZlcnNpb25zbnVtcmVyaW5nZW4sIG9jaCBhdHQgaGFudGVyYSBzaXR1YXRpb25lciBkw6RyICIKKyJ2ZXJzaW9uc251bXJlcmluZ3NtZXRvZGVuIMOkbmRyYXMuIERldCDDpHIgQjxpbnRlPiB0w6Rua3QgYXR0IGhhbnRlcmEgIgorInZlcnNpb25zbnVtbWVyIHNvbSBpbm5laMOlbGxlciBzdHLDpG5nYXIgYXYgYm9rc3TDpHZlciBzb20gIgorInBha2V0aGFudGVyaW5nc3N5c3RlbWV0IGludGUga2FuIHRvbGthICh0aWxsIGV4ZW1wZWwgXCJBTFBIQVwiIGVsbGVyIFwiUHJlLSIKKyJcIiksIGVsbGVyIGR1bW1hIHNvcnRlcmluZ3NvcmRuaW5nYXIuIgorCisjLiB0eXBlOiBTSAorIzogZGViLXZlcnNpb24uNToxMTIgZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjEwOQorIywgbm8td3JhcAorbXNnaWQgIkNBVkVBVFMiCittc2dzdHIgIlZBUk5JTkdBUiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNToxMTYKK21zZ2lkICIiCisiVGhlIHRpbGRlIGNoYXJhY3RlciBhbmQgaXRzIHNwZWNpYWwgc29ydGluZyBwcm9wZXJ0aWVzIHdlcmUgaW50cm9kdWNlZCBpbiAiCisiZHBrZywgdmVyc2lvbiAxLjEwIGFuZCBzb21lIHBhcnRzIG9mIGRwa2ctZGV2IG9ubHkgZ2FpbmVkIHN1cHBvcnQgZm9yIGl0ICIKKyJsYXRlciBpbiB0aGUgMS4xMC54IHNlcmllcy4iCittc2dzdHIgIiIKKyJUaWxkZXRlY2tuZXRzIG9jaCBkZXNzIHNwZWNpZWxsYSBzb3J0ZXJpbmdzZWdlbnNrYXBlciBpbnRyb2R1Y2VyYWRlcyBpIGRwa2cgIgorInZlcnNpb24gMS4xMCBvY2ggdmlzc2EgZGVsYXIgYXYgZHBrZy1kZXYgZmljayBpbnRlIHN0w7ZkIGbDtnIgZGV0IGbDtnJyw6RuICIKKyJzZW5hcmUgaSAxLjEwLngtc2VyaWVuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXZlcnNpb24uNToxMjAKK21zZ2lkICJCPGRlYi1jb250cm9sPig1KSwgQjxkZWI+KDUpLCBCPGRwa2c+KDEpIgorbXNnc3RyICJCPGRlYi1jb250cm9sPig1KSwgQjxkZWI+KDUpLCBCPGRwa2c+KDEpIgorCisjLiB0eXBlOiBTSAorIzogZGViLXZlcnNpb24uNToxMjAgZHBrZy4xOjc4MyBkcGtnLWJ1aWxkcGFja2FnZS4xOjI1NyBkcGtnLWRpc3RhZGRmaWxlLjE6NDcKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjE0OCBkcGtnLWdlbmNvbnRyb2wuMToxNDIgZHBrZy1nZW5zeW1ib2xzLjE6NDYwCisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjEyOCBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTIzCisjOiBkcGtnLXNobGliZGVwcy4xOjMyOSBkcGtnLXNvdXJjZS4xOjczMCBkc2VsZWN0LjE6NDUxCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjMyMyB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDk0CisjLCBuby13cmFwCittc2dpZCAiQVVUSE9SUyIKK21zZ3N0ciAiRsOWUkZBVFRBUkUiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi12ZXJzaW9uLjU6MTIyCittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDE5OTYsMTk5NywxOTk4IElhbiBKYWNrc29uIGFuZCBDaHJpc3RpYW4gU2Nod2FyeiIKK21zZ3N0ciAiVXBwaG92c3LDpHR0c3NreWRkYXQgwqkgMTk5NiwxOTk3LDE5OTggSWFuIEphY2tzb24gb2NoIENocmlzdGlhbiBTY2h3YXJ6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjEyNCBkcGtnLWJ1aWxkcGFja2FnZS4xOjI2MworbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDA3IEZyYW5rIExpY2h0ZW5oZWxkIgorbXNnc3RyICJVcHBob3ZzcsOkdHRzc2t5ZGRhdCDCqSAyMDA3IEZyYW5rIExpY2h0ZW5oZWxkIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdmVyc2lvbi41OjEyNiBkZWItc3Vic3R2YXJzLjU6MTY3IGRwa2ctYnVpbGRmbGFncy4xOjI3MworIzogZHBrZy1idWlsZHBhY2thZ2UuMToyNjcgZHBrZy1jaGVja2J1aWxkZGVwcy4xOjQ0IGRwa2ctZGlzdGFkZGZpbGUuMTo1MworIzogZHBrZy1kZWIuMToyNjkgZHBrZy1kaXZlcnQuODoxMzkgZHBrZy1nZW5jaGFuZ2VzLjE6MTU0CisjOiBkcGtnLWdlbmNvbnRyb2wuMToxNTAgZHBrZy1nZW5zeW1ib2xzLjE6NDY0IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MTM5CisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjcxIGRwa2ctbmFtZS4xOjEwOCBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTMxCisjOiBkcGtnLXF1ZXJ5LjE6MjE5IGRwa2ctc2hsaWJkZXBzLjE6MzM5IGRwa2ctc291cmNlLjE6NzM4IGRwa2ctc3BsaXQuMToyMjcKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6OTEgZHBrZy12ZW5kb3IuMTo1MyB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NTAxCittc2dpZCAiIgorIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSB2ZXJzaW9uIDIgb3IgbGF0ZXIgIgorImZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIFdBUlJBTlRZLiIKK21zZ3N0ciAiIgorIkRldHRhIMOkciBmcmkgcHJvZ3JhbXZhcmE7IHNlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBlbGxlciAiCisic2VuYXJlIGbDtnIga29waWVyaW5nc3ZpbGxrb3IuIERldCBmaW5ucyBJTkdFTiBHQVJBTlRJLiIKKworIy4gdHlwZTogVEgKKyM6IGRlYi1vbGQuNToxCisjLCBuby13cmFwCittc2dpZCAiZGViLW9sZCIKK21zZ3N0ciAiZGViLW9sZCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW9sZC41OjQKK21zZ2lkICJkZWItb2xkIC0gb2xkIHN0eWxlIERlYmlhbiBiaW5hcnkgcGFja2FnZSBmb3JtYXQiCittc2dzdHIgImRlYi1vbGQgLSBEZWJpYW5zIGdhbWxhIGJpbsOkcnBha2V0Zm9ybWF0IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb2xkLjU6MTcKK21zZ2lkICIiCisiVGhlIEI8LmRlYj4gZm9ybWF0IGlzIHRoZSBEZWJpYW4gYmluYXJ5IHBhY2thZ2UgZmlsZSBmb3JtYXQuIFRoaXMgbWFudWFsICIKKyJwYWdlIGRlc2NyaWJlcyB0aGUgQjxvbGQ+IGZvcm1hdCwgdXNlZCBiZWZvcmUgRGViaWFuIDAuOTMuIFBsZWFzZSBzZWUgQjxkZWI+IgorIig1KSAgZm9yIGRldGFpbHMgb2YgdGhlIG5ldyBmb3JtYXQuIgorbXNnc3RyICIiCisiQjwuZGViPi1mb3JtYXRldCDDpHIgRGViaWFucyBiaW7DpHJhIHBha2V0Zm9ybWF0LiBEZW5uYSBtYW51YWxzaWRhIGJlc2tyaXZlciAiCisiZGV0IEI8Z2FtbGE+IGZvcm1hdGV0IHNvbSBhbnbDpG5kcyBmw7ZyZSBEZWJpYW4gMC45My4gU2UgQjxkZWI+KDUpIGbDtnIgIgorImRldGFsamVyYWQgaW5mb3JtYXRpb24gb20gZGV0IG55YSBmb3JtYXRldC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vbGQuNToyMQorbXNnaWQgIiIKKyJUaGUgZmlsZSBpcyB0d28gbGluZXMgb2YgZm9ybWF0IGluZm9ybWF0aW9uIGFzIEFTQ0lJIHRleHQsIGZvbGxvd2VkIGJ5IHR3byAiCisiY29uY2F0ZW5hdGVkIGd6aXBwZWQgdXN0YXIgZmlsZXMuIgorbXNnc3RyICIiCisiRmlsZW4gaW5uZWjDpWxsZXIgdHbDpSByYWRlciBhdiBmb3JtYXRpbmZvcm1hdGlvbiBzb20gQVNDSUktdGV4dCwgZsO2bGp0IGF2IHR2w6UgIgorInNhbW1hc2xhZ25hIGd6aXAtcGFja2FkZSB1c3Rhci1maWxlci4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vbGQuNToyNQorbXNnaWQgIiIKKyJUaGUgZmlyc3QgbGluZSBpcyB0aGUgZm9ybWF0IHZlcnNpb24gbnVtYmVyIHBhZGRlZCB0byA4IGRpZ2l0cywgYW5kIGlzICIKKyJCPDAuOTM5MDAwPiBmb3IgYWxsIG9sZC1mb3JtYXQgYXJjaGl2ZXMuIgorbXNnc3RyICIiCisiRGVuIGbDtnJzdGEgcmFkZW4gaSBmaWxlbiDDpHIgZm9ybWF0dmVyc2lvbnNudW1yZXQgdXRmeWxsdCB0aWxsIMOldHRhIHNpZmZyb3IsICIKKyJvY2ggw6RyIEI8MC45MzkwMDA+IGbDtnIgYWxsYSBhcmtpdiBpIGRldCBnYW1sYSBmb3JtYXRldC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vbGQuNToyOAorbXNnaWQgIiIKKyJUaGUgc2Vjb25kIGxpbmUgaXMgYSBkZWNpbWFsIHN0cmluZyAod2l0aG91dCBsZWFkaW5nIHplcm9lcykgZ2l2aW5nIHRoZSAiCisibGVuZ3RoIG9mIHRoZSBmaXJzdCBnemlwcGVkIHRhcmZpbGUuIgorbXNnc3RyICIiCisiTsOkc3RhIHJhZCDDpHIgZW4gZGVjaW1hbHN0csOkbmcgKHV0YW4gaW5sZWRhbmRlIG5vbGxvcikgc29tIGFuZ2VyIGzDpG5nZGVuIHDDpSAiCisiZGVuIGbDtnJzdGEgZ3ppcC1wYWNrYWRlIHRhci1maWxlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vbGQuNTozMAorbXNnaWQgIkVhY2ggb2YgdGhlc2UgbGluZXMgaXMgdGVybWluYXRlZCB3aXRoIGEgc2luZ2xlIG5ld2xpbmUgY2hhcmFjdGVyLiIKK21zZ3N0ciAiQsOlZGEgZGVzc2EgcmFkZXIgYXZzbHV0YXMgbWVkIGV0dCBlbnNhbXQgcmFkYnJ5dG5pbmdzdGVja2VuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW9sZC41OjM1Cittc2dpZCAiIgorIlRoZSBmaXJzdCB0YXJmaWxlIGNvbnRhaW5zIHRoZSBjb250cm9sIGluZm9ybWF0aW9uLCBhcyBhIHNlcmllcyBvZiBvcmRpbmFyeSAiCisiZmlsZXMuIFRoZSBmaWxlIEI8Y29udHJvbD4gbXVzdCBiZSBwcmVzZW50LCBhcyBpdCBjb250YWlucyB0aGUgY29yZSBjb250cm9sICIKKyJpbmZvcm1hdGlvbi4iCittc2dzdHIgIiIKKyJEZW4gZsO2cnN0YSB0YXItZmlsZW4gaW5uZWjDpWxsZXIga29udHJvbGxpbmZvcm1hdGlvbmVuLCBsYWdyYWRlIHNvbSBldHQgYW50YWwgIgorInZhbmxpZ2EgZmlsZXIuIEZpbGVuIEI8Y29udHJvbD4gbcOlc3RlIGZpbm5hcywgZWZ0ZXJzb20gZGVuIGlubmVow6VsbGVyICIKKyJncnVuZGzDpGdnYW5kZSBrb250cm9sbGluZm9ybWF0aW9uLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW9sZC41OjQ2Cittc2dpZCAiIgorIkluIHNvbWUgdmVyeSBvbGQgYXJjaGl2ZXMsIHRoZSBmaWxlcyBpbiB0aGUgY29udHJvbCB0YXJmaWxlIG1heSBvcHRpb25hbGx5ICIKKyJiZSBpbiBhIEI8REVCSUFOPiBzdWJkaXJlY3RvcnkuIEluIHRoYXQgY2FzZSwgdGhlIEI8REVCSUFOPiBzdWJkaXJlY3RvcnkgIgorIndpbGwgYmUgaW4gdGhlIGNvbnRyb2wgdGFyZmlsZSB0b28sIGFuZCB0aGUgY29udHJvbCB0YXJmaWxlIHdpbGwgaGF2ZSBvbmx5ICIKKyJmaWxlcyBpbiB0aGF0IGRpcmVjdG9yeS4gT3B0aW9uYWxseSB0aGUgY29udHJvbCB0YXJmaWxlIG1heSBjb250YWluIGFuIGVudHJ5ICIKKyJmb3IgYEI8Lj4nLCB0aGF0IGlzLCB0aGUgY3VycmVudCBkaXJlY3RvcnkuIgorbXNnc3RyICIiCisiSSB2aXNzYSB2w6RsZGlndCBnYW1sYSBhcmtpdiBrYW4gZmlsZXJuYSBpIGtvbnRyb2xsLXRhcmZpbGVuIGV2ZW50dWVsbHQgbGlnZ2EgIgorImkgZW4gdW5kZXJrYXRhbG9nIHZpZCBuYW1uIEI8REVCSUFOPi4gT20gc8OlIMOkciBmYWxsZXQga29tbWVyIHVuZGVya2F0YWxvZ2VuICIKKyJCPERFQklBTj4gw6R2ZW4gYXR0IGZpbm5hcyBpIGtvbnRyb2xsLXRhcmZpbGVuLCBvY2gga29udHJvbGwtdGFyZmlsZW4ga29tbWVyICIKKyJiYXJhIGlubmVow6VsbGEgZmlsZXIgaSBkZW4ga2F0YWxvZ2VuLiBFdmVudHVlbGx0IGthbiBrb250cm9sbC10YXJmaWxlbiAiCisiaW5uZWjDpWxsYSBlbiBwb3N0IGbDtnIgXCJCPC4+XCIsIGRldCB2aWxsIHPDpGdhIGFrdHVlbGwga2F0YWxvZy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vbGQuNTo1MAorbXNnaWQgIiIKKyJUaGUgc2Vjb25kIGd6aXBwZWQgdGFyZmlsZSBpcyB0aGUgZmlsZXN5c3RlbSBhcmNoaXZlLCBjb250YWluaW5nIHBhdGhuYW1lcyAiCisicmVsYXRpdmUgdG8gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoZSBzeXN0ZW0gdG8gYmUgaW5zdGFsbGVkIG9uLiBUaGUgIgorInBhdGhuYW1lcyBkbyBub3QgaGF2ZSBsZWFkaW5nIHNsYXNoZXMuIgorbXNnc3RyICIiCisiRGVuIGFuZHJhIGd6aXAtcGFja2FkZSB0YXItZmlsZW4gw6RyIGZpbHN5c3RlbXNhcmtpdmV0LCB2aWxrZW4gaW5uZWjDpWxsZXIgIgorInPDtmt2w6RnYXIgcmVsYXRpdnQgcm90a2F0YWxvZ2VuIGbDtnIgc3lzdGVtZXQgZGV0IHNrYWxsIGluc3RhbGxlcmFzIHDDpS4gIgorIlPDtmt2w6RnYXJuYSBpbm5laMOlbGxlciBpbnRlIGlubGVkYW5kZSBzbmVkc3RyZWNrLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW9sZC41OjU0Cittc2dpZCAiQjxkZWI+KDUpLCBCPGRwa2ctZGViPigxKSwgQjxkZWItY29udHJvbD4oNSkuIgorbXNnc3RyICJCPGRlYj4oNSksIEI8ZHBrZy1kZWI+KDEpLCBCPGRlYi1jb250cm9sPig1KS4iCisKKyMuIHR5cGU6IFRICisjOiBkZWItb3ZlcnJpZGUuNToxNQorIywgbm8td3JhcAorbXNnaWQgImRlYi1vdmVycmlkZSIKK21zZ3N0ciAiZGViLW92ZXJyaWRlIgorCisjLiB0eXBlOiBUSAorIzogZGViLW92ZXJyaWRlLjU6MTUgZGViLWV4dHJhLW92ZXJyaWRlLjU6MSBkZWItc2hsaWJzLjU6MTYgZGViLXN1YnN0dmFycy41OjIKKyM6IGRlYi1zeW1ib2xzLjU6MiBkZWItdHJpZ2dlcnMuNToxIGRwa2ctYXJjaGl0ZWN0dXJlLjE6MQorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxIGRwa2ctY2hlY2tidWlsZGRlcHMuMToxIGRwa2ctZGlzdGFkZGZpbGUuMToxCisjOiBkcGtnLWRpdmVydC44OjEgZHBrZy1nZW5jaGFuZ2VzLjE6MSBkcGtnLWdlbmNvbnRyb2wuMToxIGRwa2ctZ2Vuc3ltYm9scy4xOjIKKyM6IGRwa2ctbmFtZS4xOjYgZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjEgZHBrZy1zY2FucGFja2FnZXMuMToxNQorIzogZHBrZy1zY2Fuc291cmNlcy4xOjEgZHBrZy1zaGxpYmRlcHMuMToxIGRwa2ctc291cmNlLjE6MiBkcGtnLXNwbGl0LjE6MgorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODoxIHN0YXJ0LXN0b3AtZGFlbW9uLjg6MSB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6OAorIywgbm8td3JhcAorbXNnaWQgImRwa2cgdXRpbGl0aWVzIgorbXNnc3RyICJkcGtnLXZlcmt0eWdlbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW92ZXJyaWRlLjU6MTgKK21zZ2lkICJkZWItb3ZlcnJpZGUgLSBEZWJpYW4gYXJjaGl2ZSBvdmVycmlkZSBmaWxlIgorbXNnc3RyICJkZWItb3ZlcnJpZGUgLSBEZWJpYW5hcmtpdmV0cyDDtnZlcnN0eXJuaW5nc2ZpbCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW92ZXJyaWRlLjU6MjEgZGViLWV4dHJhLW92ZXJyaWRlLjU6NworbXNnaWQgIm92ZXJyaWRlIgorbXNnc3RyICJvdmVycmlkZSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW92ZXJyaWRlLjU6MjcKK21zZ2lkICIiCisiV2hpbGUgbW9zdCBpbmZvcm1hdGlvbiBhYm91dCBhIHBhY2thZ2UgY2FuIGJlIGZvdW5kIGluIHRoZSBjb250cm9sIGZpbGUsICIKKyJzb21lIGlzIG1hbmFnZWQgY2VudHJhbGx5IGJ5IHRoZSBkaXN0cmlidXRpb24gY3phcnMgcmF0aGVyIHRoYW4gYnkgdGhlICIKKyJtYWludGFpbmVyIGluIG9yZGVyIHRvIG9mZmVyIHNvbWUgZ2xvYmFsIGNvbnNpc3RlbmN5LiAgVGhpcyBpbmZvcm1hdGlvbiBpcyAiCisiZm91bmQgaW4gdGhlIG92ZXJyaWRlIGZpbGUuIgorbXNnc3RyICIiCisiw4R2ZW4gb20gaHV2dWRkZWxlbiBhdiBpbmZvcm1hdGlvbmVuIG9tIGV0dCBwYWtldCBmaW5ucyBpIGtvbnRyb2xsZmlsZW4gIgorImhhbnRlcmFzIGVuIGRlbCBjZW50cmFsdCBhdiBkaXN0cmlidXRpb25zdHNhcmVybmEsIHNuYXJhcmUgw6RuIGF2ICIKKyJwYWtldGFuc3ZhcmlnYSwgZsO2ciBhdHQga3VubmEgYmliZWjDpWxsYSBlbiBnbG9iYWwga29uc2lzdGVucy4gRGVubmEgIgorImluZm9ybWF0aW9uZW4gZmlubnMgaSBmaWxlbiBcIm92ZXJyaWRlXCIuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb3ZlcnJpZGUuNTozMQorbXNnaWQgIiIKKyJUaGUgb3ZlcnJpZGUgZmlsZSBoYXMgYSBzaW1wbGUgd2hpdGVzcGFjZS1kZWxpbWl0ZWQgZm9ybWF0LiBDb21tZW50cyBhcmUgIgorImFsbG93ZWQgKGRlbm90ZWQgd2l0aCBhIEI8Iz4pLiIKK21zZ3N0ciAiIgorIkZpbGVuIG92ZXJyaWRlIGhhciBldHQgZW5rZWx0IGJsYW5rc3RlZy1hdmRlbGF0IGZvcm1hdC4gS29tbWVudGFyZXIgw6RyICIKKyJ0aWxsw6V0bmEgKG1hcmtlcmFzIG1lZCBldHQgQjwjPikuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb3ZlcnJpZGUuNTozNworbXNnaWQgIkk8cGFja2FnZT4gSTxwcmlvcml0eT4gSTxzZWN0aW9uPiBbSTxtYWludGFpbmVyaW5mbz5dIgorbXNnc3RyICJJPHBha2V0PiBJPHByaW9yaXRldD4gSTxzZWt0aW9uPiBbSTxhbnN2YXJpZ2luZm8+XSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLW92ZXJyaWRlLjU6NDIKK21zZ2lkICIiCisiSTxwYWNrYWdlPiBpcyB0aGUgbmFtZSBvZiB0aGUgcGFja2FnZS4gRW50cmllcyBpbiB0aGUgb3ZlcnJpZGUgZmlsZSBmb3IgIgorInBhY2thZ2VzIG5vdCBmb3VuZCBpbiB0aGUgdHJlZSBvZiBiaW5hcnkgcGFja2FnZXMgYXJlIGlnbm9yZWQuIgorbXNnc3RyICIiCisiSTxwYWtldD4gw6RyIG5hbW5ldCBww6UgcGFrZXRldC4gUG9zdGVyIGkgZmlsZW4gb3ZlcnJpZGUgZsO2ciBwYWtldCBzb20gaW50ZSAiCisiZmlubnMgaSB0csOkZGV0IG1lZCBiaW7DpHJhIHBha2V0IGlnbm9yZXJhcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1vdmVycmlkZS41OjQ4Cittc2dpZCAiIgorIkk8cHJpb3JpdHk+IGFuZCBJPHNlY3Rpb24+IGNvcnJlc3BvbmQgdG8gdGhlIHJlc3BlY3RpdmUgY29udHJvbCBmaWVsZHMgIgorImF2YWlsYWJsZSBpbiB0aGUgLmRlYi4gVGhlIGFsbG93ZWQgdmFsdWVzIGFyZSBsaXN0ZWQgaW4gdGhlIERlYmlhbiBwb2xpY3kuIgorbXNnc3RyICIiCisiSTxwcmlvcml0ZXQ+IG9jaCBJPHNla3Rpb24+IG1vdHN2YXJhciByZXNwZWt0aXZlIHN0eXJmw6RsdCBpIC5kZWItZmlsZW4uICIKKyJUaWxsw6V0bmEgdsOkcmRlbiBiZXNrcml2cyBpIERlYmlhbnMgcG9saWN5ZG9rdW1lbnQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb3ZlcnJpZGUuNTo1NgorbXNnaWQgIiIKKyJJPG1haW50YWluZXJpbmZvPiwgaWYgcHJlc2VudCwgY2FuIGJlIGVpdGhlciB0aGUgbmFtZSBvZiBhIG1haW50YWluZXIgZm9yIGFuICIKKyJ1bmNvbmRpdGlvbmFsIG92ZXJyaWRlLCBvciBlbHNlIEk8b2xkbWFpbnRhaW5lcj4gQjw9RTxndD4+IEk8bmV3bWFpbnRhaW5lcj4gIgorInRvIHBlcmZvcm0gYSBzdWJzdGl0dXRpb24uIgorbXNnc3RyICIiCisiSTxhbnN2YXJpZ2luZm8+IGthbiwgb20gZGV0IGFuZ2VzLCBhbnRpbmdlbiB2YXJhIG5hbW5ldCBww6UgZW4gcGFrZXRhbnN2YXJpZyAiCisiZsO2ciBlbiBvdmlsbGtvcmxpZyDDtnZlcnN0eXJuaW5nLCBlbGxlciBJPGdhbW1hbC1hbnN2YXJpZz4gQjw9RTxndD4+IEk8bnktIgorImFuc3ZhcmlnPiBmw7ZyIGF0dCB1dGbDtnJhIGVuIHN1YnN0aXR1ZXJpbmcuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb3ZlcnJpZGUuNTo2MQorbXNnaWQgIiIKKyJUaGUgb3ZlcnJpZGUgZmlsZXMgdXNlZCB0byBtYWtlIHRoZSBvZmZpY2lhbCBQYWNrYWdlcyBsaXN0cyBtYXkgYmUgZm91bmQgaW4gIgorInRoZSBJPGluZGljZXM+IGRpcmVjdG9yeSBvbiBhbnkgRGViaWFuIG1pcnJvci4iCittc2dzdHIgIiIKKyJEZSBvdmVycmlkZS1maWxlciBzb20gYW52w6RuZHMgZsO2ciBhdHQgc2thcGEgZGVuIG9mZmljaWVsbGEgbGlzdGFuIMO2dmVyIHBha2V0ICIKKyIoXCJQYWNrYWdlc1wiKSBmaW5ucyBpIEk8aW5kaWNlcz4ta2F0YWxvZ2VuIHDDpSBhbGxhIERlYmlhbnNwZWdsYXIuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItb3ZlcnJpZGUuNTo2NgorbXNnaWQgIiIKKyJCPGRwa2ctc2NhbnBhY2thZ2VzPigxKSwgQjxkcGtnLXNjYW5zb3VyY2VzPigxKSwgQjxhcHQtZnRwYXJjaGl2ZT4oMSksIEI8LyIKKyJ1c3Ivc2hhcmUvZG9jL2RlYmlhbi1wb2xpY3kvcG9saWN5Lmh0bWwvaW5kZXguaHRtbD4uIgorbXNnc3RyICIiCisiQjxkcGtnLXNjYW5wYWNrYWdlcz4oMSksIEI8ZHBrZy1zY2Fuc291cmNlcz4oMSksIEI8YXB0LWZ0cGFyY2hpdmU+KDEpLCBCPC8iCisidXNyL3NoYXJlL2RvYy9kZWJpYW4tcG9saWN5L3BvbGljeS5odG1sL2luZGV4Lmh0bWw+LiIKKworIy4gdHlwZTogVEgKKyM6IGRlYi1leHRyYS1vdmVycmlkZS41OjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkZWItZXh0cmEtb3ZlcnJpZGUiCittc2dzdHIgImRlYi1leHRyYS1vdmVycmlkZSIKKworIy4gdHlwZTogVEgKKyM6IGRlYi1leHRyYS1vdmVycmlkZS41OjEKKyMsIG5vLXdyYXAKK21zZ2lkICIyMDA5LTA4LTE2IgorbXNnc3RyICIyMDA5LTA4LTE2IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItZXh0cmEtb3ZlcnJpZGUuNTo0Cittc2dpZCAiZGViLWV4dHJhLW92ZXJyaWRlIC0gRGViaWFuIGFyY2hpdmUgZXh0cmEgb3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiZGViLWV4dHJhLW92ZXJyaWRlIC0gRGViaWFuYXJraXZldHMgZXh0cmEgw7Z2ZXJzdHlybmluZ3NmaWwiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1leHRyYS1vdmVycmlkZS41OjEyCittc2dpZCAiIgorIldoaWxlIG1vc3QgaW5mb3JtYXRpb24gYWJvdXQgYSBiaW5hcnkvc291cmNlIHBhY2thZ2UgY2FuIGJlIGZvdW5kIGluIHRoZSAiCisiY29udHJvbC8uZHNjIGZpbGUsIGFsbCBvZiBpdCBjYW4gYmUgb3ZlcnJpZGRlbiB3aGVuIGl0J3MgZXhwb3J0ZWQgdG8gIgorIlBhY2thZ2VzL1NvdXJjZXMgZmlsZXMuIFRoZSBleHRyYSBvdmVycmlkZSBmaWxlIGNvbnRhaW5zIHRob3NlIG92ZXJyaWRlcy4iCittc2dzdHIgIiIKKyLDhHZlbiBvbSBkZXQgbWVzdGEgYXYgaW5mb3JtYXRpb25lbiBvbSBldHQgYmluw6RyLS9rw6RsbGtvZHNwYWtldCBmaW5ucyBpICIKKyJjb250cm9sLS8uZHNjLWZpbGVuIHPDpSBrYW4gYWxsdCDDtnZlcnN0eXJhcyBuw6RyIGRldCBleHBvcnRlcmFzIHRpbGwgUGFja2FnZXMtLyIKKyJTb3VyY2VzLWZpbGVyLiBEZW4gZXh0cmEgb3ZlcnJpZGUtZmlsZW4gaW5uZWjDpWxsZXIgZGVzc2Egw7Z2ZXJzdHlybmluZ2FyLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWV4dHJhLW92ZXJyaWRlLjU6MTYKK21zZ2lkICIiCisiVGhlIGV4dHJhIG92ZXJyaWRlIGZpbGUgaGFzIGEgc2ltcGxlIHdoaXRlc3BhY2UtZGVsaW1pdGVkIGZvcm1hdC4gQ29tbWVudHMgIgorImFyZSBhbGxvd2VkIChkZW5vdGVkIHdpdGggYSBCPCM+KS4iCittc2dzdHIgIiIKKyJEZW4gZXh0cmEgb3ZlcnJpZGUtZmlsZW4gaGFyIGV0dCBlbmtlbHQgYmxhbmtzdGVnLWF2ZGVsYXQgZm9ybWF0LiAiCisiS29tbWVudGFyZXIgw6RyIHRpbGzDpXRuYSAobWFya2VyYXMgbWVkIGV0dCBCPCM+KS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1leHRyYS1vdmVycmlkZS41OjIxCittc2dpZCAiSTxwYWNrYWdlPiBJPGZpZWxkLW5hbWU+IEk8dmFsdWU+IgorbXNnc3RyICJJPHBha2V0PiBJPGbDpGx0bmFtbj4gSTx2w6RyZGU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItZXh0cmEtb3ZlcnJpZGUuNToyNQorbXNnaWQgIkk8cGFja2FnZT4gaXMgdGhlIG5hbWUgb2YgdGhlIGJpbmFyeS9zb3VyY2UgcGFja2FnZS4iCittc2dzdHIgIkk8cGFrZXQ+IMOkciBuYW1uZXQgcMOlIGJpbsOkci0va8OkbGxrb2RzcGFrZXRldCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLWV4dHJhLW92ZXJyaWRlLjU6MzEKK21zZ2lkICIiCisiSTxmaWVsZC1uYW1lPiBpcyB0aGUgbmFtZSBvZiB0aGUgZmllbGQgdGhhdCBpcyBvdmVycmlkZGVuLiAgSTx2YWx1ZT4gaXMgdGhlICIKKyJ2YWx1ZSB0byBwdXQgaW4gdGhlIGZpZWxkLiBJdCBjYW4gY29udGFpbiBzcGFjZXMgYXMgdGhlIGxpbmUgaXMgc3BsaXQgaW4gbm8gIgorIm1vcmUgdGhhbiAzIGNvbHVtbnMgd2hlbiBpdCdzIHBhcnNlZC4iCittc2dzdHIgIiIKKyJJPGbDpGx0bmFtbj4gw6RyIG5hbW5ldCBww6UgZsOkbHRldCBzb20gc2thbGwgw7Z2ZXJzdHlyYXMuIEk8dsOkcmRlPiDDpHIgdsOkcmRldCBzb20gIgorInNrYWxsIGzDpGdnYXMgaW4gaSBmw6RsdGV0LiBEZXQga2FuIGlubmVow6VsbGEgYmxhbmtzdGVnIGTDpSByYWRlbiBkZWxhcyB1cHAgaSAiCisibWF4aW1hbHQgdHJlIGtvbHVtbmVyIHZpZCB0b2xrbmluZy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1leHRyYS1vdmVycmlkZS41OjM2Cittc2dpZCAiIgorIlRoZSBleHRyYSBvdmVycmlkZSBmaWxlcyB1c2VkIHRvIG1ha2UgdGhlIG9mZmljaWFsIFBhY2thZ2VzIGxpc3RzIG1heSBiZSAiCisiZm91bmQgaW4gdGhlIEk8aW5kaWNlcz4gZGlyZWN0b3J5IG9uIGFueSBEZWJpYW4gbWlycm9yLiIKK21zZ3N0ciAiIgorIkRlIGV4dHJhIG92ZXJyaWRlLWZpbGVyIHNvbSBhbnbDpG5kcyBmw7ZyIGF0dCBza2FwYSBkZW4gb2ZmaWNpZWxsYSBsaXN0YW4gw7Z2ZXIgIgorInBha2V0IChcIlBhY2thZ2VzXCIpIGZpbm5zIGkgSTxpbmRpY2VzPi1rYXRhbG9nZW4gcMOlIGFsbGEgRGViaWFuc3BlZ2xhci4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1leHRyYS1vdmVycmlkZS41OjQwCittc2dpZCAiQjxkcGtnLXNjYW5wYWNrYWdlcz4oMSksIEI8ZHBrZy1zY2Fuc291cmNlcz4oMSksIEI8YXB0LWZ0cGFyY2hpdmU+KDEpLiIKK21zZ3N0ciAiQjxkcGtnLXNjYW5wYWNrYWdlcz4oMSksIEI8ZHBrZy1zY2Fuc291cmNlcz4oMSksIEI8YXB0LWZ0cGFyY2hpdmU+KDEpLiIKKworIy4gdHlwZTogVEgKKyM6IGRlYi1zaGxpYnMuNToxNgorIywgbm8td3JhcAorbXNnaWQgImRlYi1zaGxpYnMiCittc2dzdHIgImRlYi1zaGxpYnMiCisKKyMuIHR5cGU6IFRICisjOiBkZWItc2hsaWJzLjU6MTYKKyMsIG5vLXdyYXAKK21zZ2lkICIyMDA4LTAyLTE3IgorbXNnc3RyICIyMDA4LTAyLTE3IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc2hsaWJzLjU6MTkKK21zZ2lkICJkZWItc2hsaWJzIC0gRGViaWFuIHNoYXJlZCBsaWJyYXJ5IGluZm9ybWF0aW9uIGZpbGUiCittc2dzdHIgImRlYi1zaGxpYnMgLSBEZWJpYW5zIGluZm9ybWF0aW9uc2ZpbCBmw7ZyIGRlbGFkZSBiaWJsaW90ZWsiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zaGxpYnMuNToyOQorbXNnaWQgIiIKKyJCPHNobGlicz4gZmlsZXMgbWFwIHNoYXJlZCBsaWJyYXJ5IG5hbWVzIGFuZCB2ZXJzaW9ucyAoSTxzb25hbWVzPikgIHRvICIKKyJkZXBlbmRlbmNpZXMgc3VpdGFibGUgZm9yIGEgcGFja2FnZSBjb250cm9sIGZpbGUuICBUaGVyZSBpcyBvbmUgZW50cnkgcGVyICIKKyJsaW5lLiBCbGFuayBsaW5lcyBhcmUgQjxub3Q+IGFsbG93ZWQuICBMaW5lcyBiZWdpbm5pbmcgd2l0aCBhbiBCPCM+ICIKKyJjaGFyYWN0ZXIgYXJlIGNvbnNpZGVyZWQgY29tbWVudGFyeSwgYW5kIGFyZSBpZ25vcmVkLiAgQWxsIG90aGVyIGxpbmVzIG11c3QgIgorImhhdmUgdGhlIGZvcm1hdCIKK21zZ3N0ciAiIgorIkI8c2hsaWJzPi1maWxlciBza2FwYXIgZW4ga29wcGxpbmcgbWVsbGFuIGJpYmxpb3Rla3NuYW1uIG9jaCB2ZXJzaW9uZXIgIgorIihJPHNvbmFtbj4pIHRpbGwgYmVyb2VuZGVuIHNvbSDDpHIgbMOkbXBsaWdhIGbDtnIgZW4gcGFrZXRzdHlyZmlsLiBEZW4gaGFyIGVuICIKKyJwb3N0IHBlciByYWQuIEJsYW5rYSByYWRlciDDpHIgQjxpbnRlPiB0aWxsw6V0bmEuIFJhZGVyIHNvbSBpbmxlZHMgbWVkIGV0dCAiCisiQjwjPi10ZWNrZW4gYW5zZXMgdmFyYSBrb21tZW50YXJlciwgb2NoIGlnbm9yZXJhcy4gQWxsYSBhbmRyYSByYWRlciBtw6VzdGUgIgorInZhcmEgcMOlIGZvcm1hdGV0IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc2hsaWJzLjU6MzQKK21zZ2lkICJbSTx0eXBlPkI8Oj5dIEk8bGlicmFyeT4gSTx2ZXJzaW9uPiBJPGRlcGVuZGVuY2llcz4iCittc2dzdHIgIltJPHR5cD5CPDo+XSBJPGJpYmxpb3Rlaz4gSTx2ZXJzaW9uPiBJPGJlcm9lbmRlbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zaGxpYnMuNTozOAorbXNnaWQgIiIKKyJUaGUgSTxsaWJyYXJ5PiBhbmQgSTx2ZXJzaW9uPiBmaWVsZHMgYXJlIHdoaXRlc3BhY2UtZGVsaW1pdGVkLCBidXQgdGhlICIKKyJJPGRlcGVuZGVuY2llcz4gZmllbGQgZXh0ZW5kcyB0byB0aGUgZW5kIG9mIHRoZSBsaW5lLiAgVGhlIEk8dHlwZT4gZmllbGQgaXMgIgorIm9wdGlvbmFsIGFuZCBub3JtYWxseSBub3QgbmVlZGVkLiIKK21zZ3N0ciAiIgorIkbDpGx0ZW4gSTxiaWJsaW90ZWs+IG9jaCBJPHZlcnNpb24+IGF2ZGVsYXMgbWVkIGJsYW5rdGVja2VuIG1lZGFuIGbDpGx0ZXQgIgorIkk8YmVyb2VuZGVuPiBzdHLDpGNrZXIgc2lnIHRpbGwgc2x1dGV0IGF2IHJhZGVuLiBGw6RsdGV0IEk8dHlwPiDDpHIgZnJpdmlsbGlndCAiCisib2NoIGJlaMO2dnMgdmFubGlndHZpcyBpbnRlLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNobGlicy41OjQwCittc2dpZCAiU2VlIHRoZSBEZWJpYW4gUG9saWN5IE1hbnVhbCBmb3IgZnVydGhlciBkZXRhaWxzLiIKK21zZ3N0ciAiU2UgRGViaWFucyBwb2xpY3ltYW51YWwgZsO2ciB5dHRlcmxpZ2FyZSBkZXRhbGplci4iCisKKyMuIHR5cGU6IFNICisjOiBkZWItc2hsaWJzLjU6NDEgZGViLXN5bWJvbHMuNTo0MyBkcGtnLjE6NzE0IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjYyCisjOiBkcGtnLWRpdmVydC44OjkxIGRwa2ctbmFtZS4xOjY1IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0NTkKKyMsIG5vLXdyYXAKK21zZ2lkICJFWEFNUExFUyIKK21zZ3N0ciAiRVhFTVBFTCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXNobGlicy41OjUwCittc2dpZCAiIgorIlRoZSBCPHNobGlicz4gZmlsZSBmb3IgYSB0eXBpY2FsIGxpYnJhcnkgcGFja2FnZSwgbmFtZWQgSTxsaWJjcnVuY2gxPiwgdGhhdCAiCisicHJvdmlkZXMgb25lIGxpYnJhcnkgd2hvc2Ugc29uYW1lIGlzIEk8bGliY3J1bmNoLnNvLjE+LCBtaWdodCByZWFkIgorbXNnc3RyICIiCisiQjxzaGxpYnM+LWZpbGVuIGbDtnIgZXR0IHR5cGlza3QgYmlibGlvdGVrc3Bha2V0LCBzb20gaGV0ZXIgSTxsaWJjcnVuY2gxPiBvY2ggIgorInNvbSBpbm5laMOlbGxlciBldHQgYmlibGlvdGVrIHZhcnMgc29uYW1uIMOkciBJPGxpYmNydW5jaC5zby4xPiwga2FuIHNlIHV0IHPDpSAiCisiaMOkcjoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zaGxpYnMuNTo1MgorbXNnaWQgImxpYmNydW5jaCAxIGxpYmNydW5jaDEgKEU8Z3Q+PSAxLjItMSkiCittc2dzdHIgImxpYmNydW5jaCAxIGxpYmNydW5jaDEgKEU8Z3Q+PSAxLjItMSkiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zaGxpYnMuNTo2MAorbXNnaWQgIiIKKyJUaGUgSTxkZXBlbmRlbmNpZXM+IG11c3QgbWVudGlvbiB0aGUgbW9zdCByZWNlbnQgdmVyc2lvbiBvZiB0aGUgcGFja2FnZSB0aGF0ICIKKyJhZGRlZCBuZXcgc3ltYm9scyB0byB0aGUgbGlicmFyeTogaW4gdGhlIGFib3ZlIGV4YW1wbGUsIG5ldyBzeW1ib2xzIHdlcmUgIgorImFkZGVkIHRvIHZlcnNpb24gMS4yIG9mIEk8bGliY3J1bmNoPi4gIFRoaXMgaXMgbm90IHRoZSBvbmx5IHJlYXNvbiB0aGUgIgorImRlcGVuZGVuY2llcyBtaWdodCBuZWVkIHRvIGJlIHRpZ2h0ZW5lZDsgYWdhaW4sIHNlZSB0aGUgRGViaWFuIFBvbGljeSBNYW51YWwgIgorImZvciBkZXRhaWxzLiIKK21zZ3N0ciAiIgorIkbDpGx0ZXQgSTxiZXJvZW5kZW4+IG3DpXN0ZSBhbmdlIGRlbiBzZW5hc3RlIHZlcnNpb25lbiBhdiBwYWtldGV0IHNvbSBsYWRlICIKKyJ0aWxsIG55YSBzeW1ib2xlciBpIGJpYmxpb3Rla2V0OiBpIGV4ZW1wbGV0IG92YW4gbGFkZXMgbnlhIHN5bWJvbGVyIHRpbGwgaSAiCisidmVyc2lvbiAxLjIgYXYgSTxsaWJjcnVuY2g+LiBEZXQgw6RyIGludGUgZGVuIGVuZGEgb3JzYWtlbiB0aWxsIGF0dCBiZXJvZW5kZW4gIgorImthbiBiZWjDtnZhIHNuw6R2YXMgaW47IMOldGVyaWdlbiwgc2UgRGViaWFucyBwb2xpY3ltYW51YWwgZsO2ciBkZXRhbGplci4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zaGxpYnMuNTo2MworbXNnaWQgIkI8ZHBrZy1zaGxpYmRlcHM+KDEpLCBCPGRlYi1zeW1ib2xzPig1KS4iCittc2dzdHIgIkI8ZHBrZy1zaGxpYmRlcHM+KDEpLCBCPGRlYi1zeW1ib2xzPig1KS4iCisKKyMuIHR5cGU6IFRICisjOiBkZWItc3Vic3R2YXJzLjU6MgorIywgbm8td3JhcAorbXNnaWQgImRlYi1zdWJzdHZhcnMiCittc2dzdHIgImRlYi1zdWJzdHZhcnMiCisKKyMuIHR5cGU6IFRICisjOiBkZWItc3Vic3R2YXJzLjU6MgorIywgbm8td3JhcAorbXNnaWQgIjIwMDktMDctMTUiCittc2dzdHIgIjIwMDktMDctMTUiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNTo1Cittc2dpZCAiZGViLXN1YnN0dmFycyAtIERlYmlhbiBzb3VyY2Ugc3Vic3RpdHV0aW9uIHZhcmlhYmxlcyIKK21zZ3N0ciAiZGViLXN1YnN0dmFycyAtIERlYmlhbnMga8OkbGxrb2RzLXN1YnN0aXR1ZXJpbmdzdmFyaWFibGVyIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6OAorbXNnaWQgInN1YnN0dmFycyIKK21zZ3N0ciAic3Vic3R2YXJzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MTkKK21zZ2lkICIiCisiQmVmb3JlIEI8ZHBrZy1zb3VyY2U+LCBCPGRwa2ctZ2VuY29udHJvbD4gYW5kIEI8ZHBrZy1nZW5jaGFuZ2VzPiB3cml0ZSB0aGVpciAiCisiY29udHJvbCBpbmZvcm1hdGlvbiAodG8gdGhlIHNvdXJjZSBjb250cm9sIGZpbGUgQjwuZHNjPiBmb3IgQjxkcGtnLXNvdXJjZT4gIgorImFuZCB0byBzdGFuZGFyZCBvdXRwdXQgZm9yIEI8ZHBrZy1nZW5jb250cm9sPiBhbmQgQjxkcGtnLWdlbmNoYW5nZXM+KSAgdGhleSAiCisicGVyZm9ybSBzb21lIHZhcmlhYmxlIHN1YnN0aXR1dGlvbnMgb24gdGhlIG91dHB1dCBmaWxlLiIKK21zZ3N0ciAiIgorIklubmFuIEI8ZHBrZy1zb3VyY2U+LCBCPGRwa2ctZ2VuY29udHJvbD4gb2NoIEI8ZHBrZy1nZW5jaGFuZ2VzPiBza3JpdmVyIHNpbiAiCisia29udHJvbGxpbmZvcm1hdGlvbiAodGlsbCBjb250cm9sLWZpbGVuIGkga8OkbGxrb2RzcGFrZXRldCBCPC5kc2M+IGbDtnIgQjxkcGtnLSIKKyJzb3VyY2U+IG9jaCB0aWxsIHN0YW5kYXJkIHV0IGbDtnIgQjxkcGtnLWdlbmNvbnRyb2w+IG9jaCBCPGRwa2ctZ2VuY2hhbmdlcz4pICIKKyJrb21tZXIgZGUgdXRmw7ZyYSB2aXNzIHZhcmlhYmVsc3Vic3RpdHVlcmluZyBww6UgdXRkYXRhZmlsZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MjYKK21zZ2lkICIiCisiQSB2YXJpYWJsZSBzdWJzdGl0dXRpb24gaGFzIHRoZSBmb3JtIEI8JHs+STx2YXJpYWJsZS1uYW1lPkI8fT4uICBWYXJpYWJsZSAiCisibmFtZXMgY29uc2lzdCBvZiBhbHBoYW51bWVyaWNzLCBoeXBoZW5zIGFuZCBjb2xvbnMgYW5kIHN0YXJ0IHdpdGggYW4gIgorImFscGhhbnVtZXJpYy4gVmFyaWFibGUgc3Vic3RpdHV0aW9ucyBhcmUgcGVyZm9ybWVkIHJlcGVhdGVkbHkgdW50aWwgbm9uZSBhcmUgIgorImxlZnQ7IHRoZSBmdWxsIHRleHQgb2YgdGhlIGZpZWxkIGFmdGVyIHRoZSBzdWJzdGl0dXRpb24gaXMgcmVzY2FubmVkIHRvIGxvb2sgIgorImZvciBtb3JlIHN1YnN0aXR1dGlvbnMuIgorbXNnc3RyICIiCisiRW4gdmFyaWFiZWxzdWJzdGl0dXRpb24gaGFyIGZvcm1lbiBCPCR7Pkk8dmFyaWFiZWxuYW1uPkI8fT4uIFZhcmlhYmVsbmFtbiAiCisiYmVzdMOlciBhdiBhbGZhbnVtZXJpc2thIHRlY2tlbiwgYmluZGVzdHJlY2sgb2NoIGtvbG9uIG9jaCBiw7ZyamFyIG1lZCBldHQgIgorImFsZmFudW1lcmlza3QgdGVja2VuLiBWYXJpYWJlbHN1YnN0aXR1ZXJpbmdhciB1dGbDtnJzIHVwcHJlcGFkZSBnw6VuZ2VyIHRpbGxzICIKKyJkZXQgaW50ZSBrdmFyc3TDpXIgbsOlZ3JhIC0gZGV0IHJlc3VsdGVyYW5kZSBpbm5laMOlbGxldCBpIGbDpGx0ZXQgbMOkc2VzIGF2IHDDpSAiCisibnl0dCBlZnRlciBzdWJzdGl0dWVyaW5nZW4gZsO2ciBhdHQgc2Ugb20gZGV0IGJlaMO2dnMgZmxlciBzdWJzdGl0dWVyaW5nYXIuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MzMKK21zZ2lkICIiCisiQWZ0ZXIgYWxsIHRoZSBzdWJzdGl0dXRpb25zIGhhdmUgYmVlbiBkb25lIGVhY2ggb2NjdXJyZW5jZSBvZiB0aGUgc3RyaW5nIEI8IgorIiR7fT4gKHdoaWNoIGlzIG5vdCBhIGxlZ2FsIHN1YnN0aXR1dGlvbikgaXMgcmVwbGFjZWQgd2l0aCBhIEI8JD4gc2lnbi4iCittc2dzdHIgIiIKKyJOw6RyIGFsbGEgc3Vic3RpdHVlcmluZ2FyIGhhciB1dGbDtnJ0cyBlcnPDpHR0cyB2YXJqZSBmw7ZyZWtvbXN0IGF2IHN0csOkbmdlbiBCPCIKKyIke30+IChzb20gaW50ZSDDpHIgZW4gZ2lsdGlnIHN1YnN0aXR1ZXJpbmcpIG1lZCBldHQgQjwkPi10ZWNrZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MzgKK21zZ2lkICIiCisiV2hpbGUgdmFyaWFibGUgc3Vic3RpdHV0aW9uIGlzIGRvbmUgb24gYWxsIGNvbnRyb2wgZmllbGRzLCBzb21lIG9mIHRob3NlICIKKyJmaWVsZHMgYXJlIHVzZWQgYW5kIG5lZWRlZCBkdXJpbmcgdGhlIGJ1aWxkIHdoZW4gdGhlIHN1YnN0aXR1dGlvbiBkaWQgbm90ICIKKyJ5ZXQgb2NjdXIuIFRoYXQncyB3aHkgeW91IGNhbid0IHVzZSB2YXJpYWJsZXMgaW4gdGhlIEI8UGFja2FnZT4sIEI8U291cmNlPiAiCisiYW5kIEI8QXJjaGl0ZWN0dXJlPiBmaWVsZHMuIgorbXNnc3RyICIiCisiTWVkYW4gdmFyaWFiZWxzdWJzdGl0dWVyaW5nIGfDtnJzIHDDpSBhbGxhIGbDpGx0IGkgc3R5cmZpbGVuIMOkciBkZXQgbsOlZ3JhIGF2ICIKKyJmw6RsdGVuIHNvbSBhbnbDpG5kcyBvY2ggYmVow7Z2cyB2aWQgYnlnZ25pbmcgaW5uYW4gc3Vic3RpdHVlcmluZ2VuIMOkbm51IGhhciAiCisidXRmw7ZydHMuIETDpHJmw7ZyIGfDpXIgZGV0IGludGUgYXR0IGFudsOkbmRhIHZhcmlhYmxlciBpIGbDpGx0ZW4gQjxQYWNrYWdlPiwgIgorIkI8U291cmNlPiBvY2ggQjxBcmNoaXRlY3R1cmU+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjQ1Cittc2dpZCAiIgorIlZhcmlhYmxlIHN1YnN0aXR1dGlvbiBoYXBwZW5zIG9uIHRoZSBjb250ZW50IG9mIHRoZSBmaWVsZHMgYWZ0ZXIgdGhleSBoYXZlICIKKyJiZWVuIHBhcnNlZCwgdGh1cyBpZiB5b3Ugd2FudCBhIHZhcmlhYmxlIHRvIGV4cGFuZCBvdmVyIG11bHRpcGxlIGxpbmVzIHlvdSAiCisiZG8gbm90IGhhdmUgdG8gaW5jbHVkZSBhIHNwYWNlIGFmdGVyIHRoZSBuZXdsaW5lLiBUaGlzIGlzIGRvbmUgaW1wbGljaXRseSAiCisid2hlbiB0aGUgZmllbGQgaXMgb3V0cHV0LiBGb3IgZXhhbXBsZSwgaWYgdGhlIHZhcmlhYmxlIEI8JHtEZXNjcmlwdGlvbn0+IGlzICIKKyJzZXQgdG8gXCJmb28gaXMgYmFyLiR7TmV3bGluZX1mb28gaXMgZ3JlYXQuXCIgYW5kIGlmIHlvdSBoYXZlIHRoZSBmb2xsb3dpbmcgIgorImZpZWxkOiIKK21zZ3N0ciAiIgorIlZhcmlhYmVsc3Vic3RpdHVlcmluZyBza2VyIMO2dmVyIGlubmVow6VsbGV0IGkgZsOkbHRlbiBlZnRlciBhdHQgZGUgaGFyICIKKyJ0b2xrYXRzLCB2aWxrZXQgaW5uZWLDpHIgYXR0IG9tIGR1IHZpbGwgYXR0IGVuIHZhcmlhYmVsIHNrYWxsIGV4cGFuZGVyYXMgw7Z2ZXIgIgorImZsZXJhIHJhZGVyIHPDpSBiZWjDtnZlciBkdSBpbnRlIGlua2x1ZGVyYSBldHQgYmxhbmtzdGVnIGVmdGVyIG55cmFkc3RlY2tuZXQuICIKKyJEZXR0YSBnw7ZycyBpbXBsaWNpdCBuw6RyIGbDpGx0ZXQgc2tyaXZzIHV0LiBUaWxsIGV4ZW1wZWwsIG9tIHZhcmlhYmxlbiBCPCIKKyIke0Rlc2NyaXB0aW9ufT4gc8OkdHRzIHRpbGwgXCJmb28gw6RyIGJhci4ke05ld2xpbmV9Zm9vIMOkciBicmEuXCIgb2NoIGR1IGhhciAiCisiZsO2bGphbmRlIGbDpGx0OiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjUwCisjLCBuby13cmFwCittc2dpZCAiIgorIiBEZXNjcmlwdGlvbjogZm9vIGFwcGxpY2F0aW9uXG4iCisiICAke0Rlc2NyaXB0aW9ufVxuIgorIiAgLlxuIgorIiAgTW9yZSB0ZXh0LlxuIgorbXNnc3RyICIiCisiIERlc2NyaXB0aW9uOiBwcm9ncmFtbWV0IGZvb1xuIgorIiAgJHtEZXNjcmlwdGlvbn1cbiIKKyIgIC5cbiIKKyIgIE1lciB0ZXh0LlxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6NTIKK21zZ2lkICJJdCB3aWxsIHJlc3VsdCBpbjoiCittc2dzdHIgIlPDpSBibGlyIHJlc3VsdGF0ZXQ6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6NTgKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiIERlc2NyaXB0aW9uOiBmb28gYXBwbGljYXRpb25cbiIKKyIgIGZvbyBpcyBiYXIuXG4iCisiICBmb28gaXMgZ3JlYXQuXG4iCisiICAuXG4iCisiICBNb3JlIHRleHQuXG4iCittc2dzdHIgIiIKKyIgRGVzY3JpcHRpb246IHByb2dyYW1tZXQgZm9vXG4iCisiICBmb28gw6RyIGJhci5cbiIKKyIgIGZvbyDDpHIgYnJhLlxuIgorIiAgLlxuIgorIiAgTWVyIHRleHQuXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNTo3MQorbXNnaWQgIiIKKyJWYXJpYWJsZXMgY2FuIGJlIHNldCB1c2luZyB0aGUgQjwtVj4gY29tbW9uIG9wdGlvbi4gVGhleSBjYW4gYmUgYWxzbyAiCisic3BlY2lmaWVkIGluIHRoZSBmaWxlIEI8ZGViaWFuL3N1YnN0dmFycz4gKG9yIHdoYXRldmVyIG90aGVyIGZpbGUgaXMgIgorInNwZWNpZmllZCB1c2luZyB0aGUgQjwtVD4gb3B0aW9uKS4gVGhpcyBmaWxlIGNvbnNpc3RzIG9mIGxpbmVzIG9mIHRoZSBmb3JtICIKKyJJPG5hbWU+Qjw9Pkk8dmFsdWU+LiAgVHJhaWxpbmcgd2hpdGVzcGFjZSBvbiBlYWNoIGxpbmUsIGJsYW5rIGxpbmVzLCBhbmQgIgorImxpbmVzIHN0YXJ0aW5nIHdpdGggYSBCPCM+IHN5bWJvbCAoY29tbWVudHMpIGFyZSBpZ25vcmVkLiIKK21zZ3N0ciAiIgorIlZhcmlhYmxlciBrYW4gc8OkdHRhcyBnZW5vbSBhdHQgYW52w6RuZGEga29tbWFuZG9yYWRzZmxhZ2dhbiBCPC1WPi4gRGUga2FuICIKKyLDpHZlbiBhbmdlcyBpIGZpbGVuIEI8ZGViaWFuL3N1YnN0dmFycz4gKGVsbGVyIHZpbGtlbiBzb20gaGVsc3QgYW5uYW4gZmlsIHNvbSAiCisiYW5nZXMgbWVkIGZsYWdnYW4gQjwtVD4pLiBGaWxlbiBiZXN0w6VyIGF2IHJhZGVyIHDDpSBmb3JtZW4gIgorIkk8bmFtbj5CPD0+STx2w6RyZGU+LiBBdnNsdXRhbmRlIGJsYW5rc3RlZyBww6UgZW4gcmFkLCBibGFua2EgcmFkZXIgb2NoIHJhZGVyICIKKyJzb20gYsO2cmphciBtZWQgZW4gQjwjPi1zeW1ib2wgKGtvbW1lbnRhcmVyKSBpZ25vcmVyYXMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6NzMKK21zZ2lkICJBZGRpdGlvbmFsbHksIHRoZSBmb2xsb3dpbmcgc3RhbmRhcmQgdmFyaWFibGVzIGFyZSBhdmFpbGFibGU6IgorbXNnc3RyICJJIHRpbGzDpGdnIMOkciBmw7ZsamFuZGUgc3RhbmRhcmR2YXJpYWJsZXIgdGlsbGfDpG5nbGlnYToiCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3Vic3R2YXJzLjU6NzMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPEFyY2g+IgorbXNnc3RyICJCPEFyY2g+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6NzcKK21zZ2lkICJUaGUgY3VycmVudCBidWlsZCBhcmNoaXRlY3R1cmUgKGZyb20gQjxkcGtnIC0tcHJpbnQtYXJjaGl0ZWN0dXJlPikuIgorbXNnc3RyICJEZW4gYWt0dWVsbGEgYnlnZ2Fya2l0ZWt0dXJlbiAoZnLDpW4gQjxkcGtnIC0tcHJpbnQtYXJjaGl0ZWN0dXJlPikuIgorCisjLiB0eXBlOiBUUAorIzogZGViLXN1YnN0dmFycy41Ojc3CisjLCBuby13cmFwCittc2dpZCAiQjxzb3VyY2U6VmVyc2lvbj4iCittc2dzdHIgIkI8c291cmNlOlZlcnNpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6ODAKK21zZ2lkICJUaGUgc291cmNlIHBhY2thZ2UgdmVyc2lvbi4iCittc2dzdHIgIlZlcnNpb24gZsO2ciBrw6RsbGtvZHNwYWtldGV0LiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zdWJzdHZhcnMuNTo4MAorIywgbm8td3JhcAorbXNnaWQgIkI8c291cmNlOlVwc3RyZWFtLVZlcnNpb24+IgorbXNnc3RyICJCPHNvdXJjZTpVcHN0cmVhbS1WZXJzaW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41Ojg0Cittc2dpZCAiIgorIlRoZSB1cHN0cmVhbSBzb3VyY2UgcGFja2FnZSB2ZXJzaW9uLCBpbmNsdWRpbmcgdGhlIERlYmlhbiB2ZXJzaW9uIGVwb2NoIGlmICIKKyJhbnkuIgorbXNnc3RyICIiCisiVmVyc2lvbiBww6UgdXBwc3Ryw7Ztc2vDpGxsa29kc3Bha2V0ZXQsIGlua2x1c2l2ZSBEZWJpYW52ZXJzaW9uZW5zIGVwb2ssIG9tICIKKyJzw6VkYW4gZmlubnMuIgorCisjLiB0eXBlOiBUUAorIzogZGViLXN1YnN0dmFycy41Ojg0CisjLCBuby13cmFwCittc2dpZCAiQjxiaW5hcnk6VmVyc2lvbj4iCittc2dzdHIgIkI8YmluYXJ5OlZlcnNpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6ODgKK21zZ2lkICIiCisiVGhlIGJpbmFyeSBwYWNrYWdlIHZlcnNpb24gKHdoaWNoIG1heSBkaWZmZXIgZnJvbSBzb3VyY2U6VmVyc2lvbiBpbiBhIGJpbk5NVSAiCisiZm9yIGV4YW1wbGUpLiIKK21zZ3N0ciAiIgorIkRlbiBiaW7DpHJhIHBha2V0dmVyc2lvbmVuIChzb20ga2FuIGF2dmlrYSBmcsOlbiBzb3VyY2U6VmVyc2lvbiwgdGlsbCBleGVtcGVsICIKKyJpIGVuIGJpbk5NVSkuIgorCisjLiB0eXBlOiBUUAorIzogZGViLXN1YnN0dmFycy41Ojg4CisjLCBuby13cmFwCittc2dpZCAiQjxTb3VyY2UtVmVyc2lvbj4iCittc2dzdHIgIkI8U291cmNlLVZlcnNpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6OTMKK21zZ2lkICIiCisiVGhlIHNvdXJjZSBwYWNrYWdlIHZlcnNpb24gKGZyb20gdGhlIGNoYW5nZWxvZyBmaWxlKS4gVGhpcyB2YXJpYWJsZSBpcyBub3cgIgorIkI8ZGVwcmVjYXRlZD4gYXMgaXRzIG1lYW5pbmcgaXMgZGlmZmVyZW50IGZyb20gaXRzIGZ1bmN0aW9uLCBwbGVhc2UgdXNlIHRoZSAiCisiQjxzb3VyY2U6VmVyc2lvbj4gb3IgQjxiaW5hcnk6VmVyc2lvbj4gYXMgYXBwcm9wcmlhdGUuIgorbXNnc3RyICIiCisiVmVyc2lvbmVuIHDDpSBrw6RsbGtvZHNwYWtldGV0IChmcsOlbiBjaGFuZ2Vsb2ctZmlsZW4pLiBWYXJpYWJlbG4gQjxhdnLDpWRzPiAiCisiZnLDpW4gZWZ0ZXJzb20gYmV0eWRlbHNlbiBza2lsamVyIHNpZyBmcsOlbiBmdW5rdGlvbmVuLCBhbnbDpG5kIGkgc3TDpGxsZXQgIgorIkI8c291cmNlOlZlcnNpb24+IGVsbGVyIEI8YmluYXJ5OlZlcnNpb24+IGFsbHQgZWZ0ZXJzb20gdmFkIHNvbSDDpHIgbMOkbXBsaWd0LiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zdWJzdHZhcnMuNTo5MworIywgbm8td3JhcAorbXNnaWQgIkI8SW5zdGFsbGVkLVNpemU+IgorbXNnc3RyICJCPEluc3RhbGxlZC1TaXplPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjEwMgorbXNnaWQgIiIKKyJUaGUgdG90YWwgc2l6ZSBvZiB0aGUgcGFja2FnZSdzIGluc3RhbGxlZCBmaWxlcy4gVGhpcyB2YWx1ZSBpcyBjb3BpZWQgaW50byAiCisidGhlIGNvcnJlc3BvbmRpbmcgY29udHJvbCBmaWxlIGZpZWxkOyBzZXR0aW5nIGl0IHdpbGwgbW9kaWZ5IHRoZSB2YWx1ZSBvZiAiCisidGhhdCBmaWVsZC4gSWYgdGhpcyB2YXJpYWJsZSBpc24ndCBzZXQgQjxkcGtnLWdlbmNvbnRyb2w+IHdpbGwgdXNlIEI8ZHUgLWsgIgorImRlYmlhbi90bXA+IHRvIGZpbmQgdGhlIGRlZmF1bHQgdmFsdWUuIgorbXNnc3RyICIiCisiRGVuIHRvdGFsYSBzdG9ybGVrZW4gcMOlIHBha2V0ZXRzIGluc3RhbGxlcmFkZSBmaWxlci4gVsOkcmRldCBrb3BpZXJhcyBpbiBpICIKKyJtb3RzdmFyYW5kZSBmw6RsdCBpIGtvbnRyb2xsZmlsZW4uIE9tIGR1IHN0w6RsbGVyIGluIGRldCBrb21tZXIgZGV0IGF0dCAiCisiZXJzw6R0dGEgdsOkcmRldCBww6UgZsOkbHRldC4gT20gdmFyaWFiZWxuIGludGUgw6RyIHNhdHQga29tbWVyIEI8ZHBrZy0iCisiZ2VuY29udHJvbD4gYXR0IGFudsOkbmRhIEI8ZHUgLWsgZGViaWFuL3RtcD4gZsO2ciBhdHQgaGl0dGEgZGV0IGbDtnJ2YWxkYSAiCisidsOkcmRldC4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3Vic3R2YXJzLjU6MTAyCisjLCBuby13cmFwCittc2dpZCAiQjxFeHRyYS1TaXplPiIKK21zZ3N0ciAiQjxFeHRyYS1TaXplPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjExMQorbXNnaWQgIiIKKyJBZGRpdGlvbmFsIGRpc2sgc3BhY2UgdXNlZCB3aGVuIHRoZSBwYWNrYWdlIGlzIGluc3RhbGxlZC4gSWYgdGhpcyB2YXJpYWJsZSAiCisiaXMgc2V0IGl0cyB2YWx1ZSBpcyBhZGRlZCB0byB0aGF0IG9mIHRoZSBCPEluc3RhbGxlZC1TaXplPiB2YXJpYWJsZSAod2hldGhlciAiCisic2V0IGV4cGxpY2l0bHkgb3IgdXNpbmcgdGhlIGRlZmF1bHQgdmFsdWUpIGJlZm9yZSBpdCBpcyBjb3BpZWQgaW50byB0aGUgIgorIkI8SW5zdGFsbGVkLVNpemU+IGNvbnRyb2wgZmlsZSBmaWVsZC4iCittc2dzdHIgIiIKKyJZdHRlcmxpZ2FyZSBkaXNrdXRyeW1tZSBzb20gYW52w6RuZHMgbsOkciBwYWtldGV0IGluc3RhbGxlcmFzLiBPbSB2w6RyZGV0IMOkciAiCisic2F0dCBrb21tZXIgZGVzcyB2w6RyZGUgYXR0IGzDpGdnYXMgdGlsbCBCPEluc3RhbGxlZC1TaXplPi12YXJpYWJlbG5zIHbDpHJkZSAiCisiKG9hdnNldHQgb20gZGVuIHNhdHRzIGV4cGxpY2l0IGVsbGVyIG9tIGRldCBmw7ZydmFsZGEgdsOkcmRldCBhbnbDpG5kcykgaW5uYW4gIgorImRldCBrb3BpZXJhcyB0aWxsIGtvbnRyb2xsZmlsZW5zIGbDpGx0IEI8SW5zdGFsbGVkLVNpemU+LiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zdWJzdHZhcnMuNToxMTEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPEY6Pkk8ZmllbGRuYW1lPiIKK21zZ3N0ciAiQjxGOj5JPGbDpGx0bmFtbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToxMTgKK21zZ2lkICIiCisiVGhlIHZhbHVlIG9mIHRoZSBvdXRwdXQgZmllbGQgSTxmaWVsZG5hbWU+ICh3aGljaCBtdXN0IGJlIGdpdmVuIGluIHRoZSAiCisiY2Fub25pY2FsIGNhcGl0YWxpc2F0aW9uKS4gU2V0dGluZyB0aGVzZSB2YXJpYWJsZXMgaGFzIG5vIGVmZmVjdCBvdGhlciB0aGFuICIKKyJvbiBwbGFjZXMgd2hlcmUgdGhleSBhcmUgZXhwYW5kZWQgZXhwbGljaXRseS4iCittc2dzdHIgIiIKKyJWw6RyZGV0IHDDpSB1dGRhdGFmw6RsdGV0IEk8ZsOkbHRuYW1uPiAoc29tIG3DpXN0ZSBhbmdlcyBtZWQgcsOkdHQgZm9ybSBhdiBzdG9yYSAiCisib2NoIHNtw6UgYm9rc3TDpHZlcikuIE9tIGR1IHPDpHR0ZXIgZGVzc2EgdmFyaWFibGVyIGjDpG5kZXIgaW5nZW50aW5nIGbDtnJ1dG9tICIKKyJkw6RyIGRlIGV4cGxpY2l0IGV4cGFuZGVyYXRzLiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zdWJzdHZhcnMuNToxMTgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPEZvcm1hdD4iCittc2dzdHIgIkI8Rm9ybWF0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjEyOAorbXNnaWQgIiIKKyJUaGUgQjwuY2hhbmdlcz4gZmlsZSBmb3JtYXQgdmVyc2lvbiBnZW5lcmF0ZWQgYnkgdGhpcyB2ZXJzaW9uIG9mIHRoZSBzb3VyY2UgIgorInBhY2thZ2luZyBzY3JpcHRzLiBJZiB5b3Ugc2V0IHRoaXMgdmFyaWFibGUgdGhlIGNvbnRlbnRzIG9mIHRoZSBCPEZvcm1hdD4gIgorImZpZWxkIGluIHRoZSBCPC5jaGFuZ2VzPiBmaWxlIHdpbGwgY2hhbmdlIHRvby4iCittc2dzdHIgIiIKKyJGb3JtYXRldCBww6UgZmlsZW4gQjwuY2hhbmdlcz4gc29tIHNrYXBhdHMgYXYgZGVubmEgdmVyc2lvbiBhdiAiCisia8OkbGxrb2RzcGFrZXRlcmluZ3Nza3JpcHRlbi4gT20gZHUgc8OkdHRlciBkZW5uYSB2YXJpYWJlbCBrb21tZXIgaW5uZWjDpWxsZXQgaSAiCisiQjxGb3JtYXQ+LWbDpGx0ZXQgaSBmaWxlbiBCPC5jaGFuZ2VzPiBvY2tzw6UgYXR0IMOkbmRyYXMuIgorCisjLiB0eXBlOiBUUAorIzogZGViLXN1YnN0dmFycy41OjEyOAorIywgbm8td3JhcAorbXNnaWQgIkI8TmV3bGluZT4sIEI8U3BhY2U+LCBCPFRhYj4iCittc2dzdHIgIkI8TmV3bGluZT4sIEI8U3BhY2U+LCBCPFRhYj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToxMzEKK21zZ2lkICJUaGVzZSB2YXJpYWJsZXMgZWFjaCBob2xkIHRoZSBjb3JyZXNwb25kaW5nIGNoYXJhY3Rlci4iCittc2dzdHIgIiIKKyJEZXNzYSB2YXJpYWJsZXIgaW5uZWjDpWxsZXIgbW90c3ZhcmFuZGUgdGVja2VuIChyYWRicnl0bmluZywgYmxhbmtzdGVnLCAiCisidGFiYnN0ZWcpLiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zdWJzdHZhcnMuNToxMzEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHNobGliczo+STxkZXBlbmRlbmN5ZmllbGQ+IgorbXNnc3RyICJCPHNobGliczo+STxiZXJvZW5kZWbDpGx0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjEzNQorbXNnaWQgIiIKKyJWYXJpYWJsZSBzZXR0aW5ncyB3aXRoIG5hbWVzIG9mIHRoaXMgZm9ybSBhcmUgZ2VuZXJhdGVkIGJ5IEI8ZHBrZy1zaGxpYmRlcHM+LiIKK21zZ3N0ciAiVmFyaWFiZWxpbnN0w6RsbG5pbmdhciBww6UgZGVuIGjDpHIgZm9ybWVuIHNrYXBhcyBhdiBCPGRwa2ctc2hsaWJkZXBzPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkZWItc3Vic3R2YXJzLjU6MTM1CisjLCBuby13cmFwCittc2dpZCAiQjxkcGtnOlVwc3RyZWFtLVZlcnNpb24+IgorbXNnc3RyICJCPGRwa2c6VXBzdHJlYW0tVmVyc2lvbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToxMzgKK21zZ2lkICJUaGUgdXBzdHJlYW0gdmVyc2lvbiBvZiBkcGtnLiIKK21zZ3N0ciAiVXBwc3Ryw7Ztc3ZlcnNpb25lbiBhdiBkcGtnLiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zdWJzdHZhcnMuNToxMzgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGRwa2c6VmVyc2lvbj4iCittc2dzdHIgIkI8ZHBrZzpWZXJzaW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjE0MQorbXNnaWQgIlRoZSBmdWxsIHZlcnNpb24gb2YgZHBrZy4iCittc2dzdHIgIkZ1bGxzdMOkbmRpZyB2ZXJzaW9uIGF2IGRwa2cuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MTQ0Cittc2dpZCAiIgorIklmIGEgdmFyaWFibGUgaXMgcmVmZXJyZWQgdG8gYnV0IG5vdCBkZWZpbmVkIGl0IGdlbmVyYXRlcyBhIHdhcm5pbmcgYW5kIGFuICIKKyJlbXB0eSB2YWx1ZSBpcyBhc3N1bWVkLiIKK21zZ3N0ciAiIgorIk9tIGVuIHZhcmlhYmVsIHJlZmVyZXJhcyB0aWxsIG1lbiBpbnRlIGRlZmluaWVyYXMga29tbWVyIGVuIHZhcm5pbmcgYXR0ICIKKyJnZW5lcmVyYXMgb2NoIGV0dCB0b210IHbDpHJkZSBhbnbDpG5kcy4iCisKKyMuIHR5cGU6IFNICisjOiBkZWItc3Vic3R2YXJzLjU6MTQ1IGRwa2cuMTo2MjcgZHBrZy1hcmNoaXRlY3R1cmUuMToyODQgZHBrZy5jZmcuNToxMgorIzogZHBrZy1idWlsZGZsYWdzLjE6MTIxIGRwa2ctZGlzdGFkZGZpbGUuMTozOSBkcGtnLWRpdmVydC44OjEyMgorIzogZHBrZy1nZW5jaGFuZ2VzLjE6MTM4IGRwa2ctZ2VuY29udHJvbC4xOjEyOCBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTE1CisjOiBkcGtnLXNwbGl0LjE6MjA2IGRwa2ctc3RhdG92ZXJyaWRlLjg6NzQgZHNlbGVjdC5jZmcuNToxMgorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM2MAorIywgbm8td3JhcAorbXNnaWQgIkZJTEVTIgorbXNnc3RyICJGSUxFUiIKKworIy4gdHlwZTogVFAKKyM6IGRlYi1zdWJzdHZhcnMuNToxNDYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGRlYmlhbi9zdWJzdHZhcnM+IgorbXNnc3RyICJCPGRlYmlhbi9zdWJzdHZhcnM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MTQ5Cittc2dpZCAiTGlzdCBvZiBzdWJzdGl0dXRpb24gdmFyaWFibGVzIGFuZCB2YWx1ZXMuIgorbXNnc3RyICJMaXN0YSDDtnZlciBzdWJzdGl0dWVyaW5nc3ZhcmlhYmxlciBvY2ggLXbDpHJkZW4uIgorCisjLiB0eXBlOiBTSAorIzogZGViLXN1YnN0dmFycy41OjE1MCBkcGtnLjE6NzgwIGRwa2ctYnVpbGRwYWNrYWdlLjE6MjQ0IGRwa2ctZGViLjE6MjM4CisjOiBkcGtnLW5hbWUuMTo4NiBkcGtnLXNvdXJjZS4xOjcyMiBkcGtnLXNwbGl0LjE6MTk5IGRzZWxlY3QuMTo0MjkKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0ODYKKyMsIG5vLXdyYXAKK21zZ2lkICJCVUdTIgorbXNnc3RyICJQUk9HUkFNRkVMIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MTUzIGRwa2ctc291cmNlLjE6NzI1Cittc2dpZCAiIgorIlRoZSBwb2ludCBhdCB3aGljaCBmaWVsZCBvdmVycmlkaW5nIG9jY3VycyBjb21wYXJlZCB0byBjZXJ0YWluIHN0YW5kYXJkICIKKyJvdXRwdXQgZmllbGQgc2V0dGluZ3MgaXMgcmF0aGVyIGNvbmZ1c2VkLiIKK21zZ3N0ciAiIgorIlRpZHB1bmt0ZW4gcMOlIGbDpGx0w7Z2ZXJzdHlybmluZyBpbnRyw6RmZmFyIGrDpG1mw7ZydCBtZWQgaW5zdMOkbGxuaW5nIGF2IHZpc3NhICIKKyJzdGFuZGFyZHV0ZGF0YWbDpGx0IMOkciBnYW5za2EgZsO2cnZpcnJhZC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zdWJzdHZhcnMuNToxNjAKK21zZ2lkICIiCisiQjxkcGtnPigxKSwgQjxkcGtnLWdlbmNoYW5nZXM+KDEpLCBCPGRwa2ctZ2VuY29udHJvbD4oMSksIEI8ZHBrZy1zaGxpYmRlcHM+IgorIigxKSwgQjxkcGtnLXNvdXJjZT4oMSkuIgorbXNnc3RyICIiCisiQjxkcGtnPigxKSwgQjxkcGtnLWdlbmNoYW5nZXM+KDEpLCBCPGRwa2ctZ2VuY29udHJvbD4oMSksIEI8ZHBrZy1zaGxpYmRlcHM+IgorIigxKSwgQjxkcGtnLXNvdXJjZT4oMSkuIgorCisjLiB0eXBlOiBTSAorIzogZGViLXN1YnN0dmFycy41OjE2MSBkcGtnLWFyY2hpdGVjdHVyZS4xOjMwMyBkcGtnLmNmZy41OjE5CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyNjYgZHBrZy1jaGVja2J1aWxkZGVwcy4xOjQwIGRwa2ctZGViLjE6MjY1CisjOiBkcGtnLWRpdmVydC44OjEzNSBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjY2IGRwa2ctbmFtZS4xOjEwNAorIzogZHBrZy1xdWVyeS4xOjIxNCBkcGtnLXNjYW5zb3VyY2VzLjE6NzYgZHBrZy1zcGxpdC4xOjIyMworIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo4NyBkcGtnLXZlbmRvci4xOjQ4IGRzZWxlY3QuY2ZnLjU6MTkKKyMsIG5vLXdyYXAKK21zZ2lkICJBVVRIT1IiCittc2dzdHIgIkbDllJGQVRUQVJFIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3Vic3R2YXJzLjU6MTYzIGRwa2ctYnVpbGRwYWNrYWdlLjE6MjU5IGRwa2ctZGlzdGFkZGZpbGUuMTo0OQorIzogZHBrZy1kZWIuMToyNjcgZHBrZy1nZW5jaGFuZ2VzLjE6MTUwIGRwa2ctZ2VuY29udHJvbC4xOjE0NAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjEyNSBkcGtnLXNobGliZGVwcy4xOjMzMSBkcGtnLXNvdXJjZS4xOjczMgorIzogZHBrZy1zcGxpdC4xOjIyNQorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAxOTk1LTE5OTYgSWFuIEphY2tzb24iCittc2dzdHIgIlVwcGhvdnNyw6R0dHNza3lkZGF0IMKpIDE5OTUtMTk5NiBJYW4gSmFja3NvbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN1YnN0dmFycy41OjE2NSBkcGtnLWJ1aWxkcGFja2FnZS4xOjI2MSBkcGtnLWRpc3RhZGRmaWxlLjE6NTEKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjE1MiBkcGtnLWdlbmNvbnRyb2wuMToxNDYgZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjEyNworIzogZHBrZy1zaGxpYmRlcHMuMTozMzMgZHBrZy1zb3VyY2UuMTo3MzQgZHBrZy1zdGF0b3ZlcnJpZGUuODo4OQorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDAwIFdpY2hlcnQgQWtrZXJtYW4iCittc2dzdHIgIlVwcGhvdnNyw6R0dHNza3lkZGF0IMKpIDIwMDAgV2ljaGVydCBBa2tlcm1hbiIKKworIy4gdHlwZTogVEgKKyM6IGRlYi1zeW1ib2xzLjU6MgorIywgbm8td3JhcAorbXNnaWQgImRlYi1zeW1ib2xzIgorbXNnc3RyICJkZWItc3ltYm9scyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNTo1Cittc2dpZCAiZGViLXN5bWJvbHMgLSBEZWJpYW4ncyBleHRlbmRlZCBzaGFyZWQgbGlicmFyeSBpbmZvcm1hdGlvbiBmaWxlIgorbXNnc3RyICJkZWItc3ltYm9scyAtIERlYmlhbnMgdXTDtmthZGUgaW5mb3JtYXRpb25zZmlsIGbDtnIgZGVsYWRlIGJpYmxpb3RlayIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNTo4Cittc2dpZCAic3ltYm9scyIKK21zZ3N0ciAic3ltYm9scyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNToxMgorbXNnaWQgIiIKKyJUaGUgZm9ybWF0IGZvciBhbiBleHRlbmRlZCBzaGFyZWQgbGlicmFyeSBkZXBlbmRlbmN5IGluZm9ybWF0aW9uIGVudHJ5IGluICIKKyJ0aGVzZSBmaWxlcyBpczoiCittc2dzdHIgIiIKKyJGb3JtYXRldCBmw7ZyIHBvc3Rlcm5hIG1lZCB1dMO2a2FkIGJlcm9lbmRlaW5mb3JtYXRpb24gZsO2ciBkZWxhZGUgYmlibGlvdGVrIGkgIgorImRlc3NhIGZpbGVyIMOkcjoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6MTQKK21zZ2lkICJJPGxpYnJhcnktc29uYW1lIG1haW4tZGVwZW5kZW5jeS10ZW1wbGF0ZT4iCittc2dzdHIgIkk8YmlibGlvdGVrcy1zb25hbW4gaHV2dWRiZXJvZW5kZW1hbGw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3ltYm9scy41OjE2Cittc2dpZCAiWyB8IEk8YWx0ZXJuYXRpdmUtZGVwZW5kZW5jeS10ZW1wbGF0ZT4gXSIKK21zZ3N0ciAiWyB8IEk8YWx0ZXJuYXRpdi1iZXJvZW5kZW1hbGw+IF0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6MTgKK21zZ2lkICJbIC4uLiBdIgorbXNnc3RyICJbIOKApiBdIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItc3ltYm9scy41OjIwCittc2dpZCAiWyAqIEk8ZmllbGQtbmFtZT46IEk8ZmllbGQtdmFsdWU+IF0iCittc2dzdHIgIlsgKiBJPGbDpGx0bmFtbj46IEk8ZsOkbHR2w6RyZGU+IF0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6MjMKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiWyAuLi4gXVxuIgorIiBJPHN5bWJvbD4gSTxtaW5pbWFsLXZlcnNpb24+WyBJPGlkLW9mLWRlcGVuZGVuY3ktdGVtcGxhdGU+IF1cbiIKK21zZ3N0ciAiIgorIlsg4oCmIF1cbiIKKyIgSTxzeW1ib2w+IEk8bWluc3RhLXZlcnNpb24+WyBJPGlkIGbDtnIgYmVyb2VuZGVtYWxsPiBdXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6MjkKK21zZ2lkICIiCisiVGhlIEk8bGlicmFyeS1zb25hbWU+IGlzIGV4YWN0bHkgdGhlIHZhbHVlIG9mIHRoZSBTT05BTUUgZmllbGQgYXMgZXhwb3J0ZWQgIgorImJ5IEI8b2JqZHVtcD4oMSkuIEEgSTxkZXBlbmRlbmN5LXRlbXBsYXRlPiBpcyBhIGRlcGVuZGVuY3kgd2hlcmUgSTwjTUlOVkVSIz4gIgorImlzIGR5bmFtaWNhbGx5IHJlcGxhY2VkIGVpdGhlciBieSBhIHZlcnNpb24gY2hlY2sgbGlrZSBcIihFPGd0Pj0gSTxtaW5pbWFsLSIKKyJ2ZXJzaW9uPilcIiBvciBieSBub3RoaW5nIChpZiBhbiB1bnZlcnNpb25lZCBkZXBlbmRlbmN5IGlzIGRlZW1lZCAiCisic3VmZmljaWVudCkuIgorbXNnc3RyICIiCisiSTxCaWJsaW90ZWtzLXNvbmFtbj4gw6RyIGRldCBleGFrdGEgdsOkcmRldCBmcsOlbiBTT05BTUUtZsOkbHRldCwgc29tIGRldCAiCisiZXhwb3J0ZXJhcyBmcsOlbiBCPG9iamR1bXA+KDEpLiBFbiBJPGJlcm9lbmRlbWFsbD4gw6RyIGV0dCBiZXJvZW5kZSBkw6RyICIKKyJJPCNNSU5WRVIjPiBkeW5hbWlza3QgZXJzw6R0dHMgYXYgZW4gdmVyc2lvbnNrb250cm9sbHJhZCBcIihFPGd0Pj0gSTxtaW5zdGEtIgorInZlcnNpb24+KVwiIGVsbGVyIGF2IGluZ2VudGluZyAob20gZXR0IGVqIHZlcnNpb25zc3R5cnQgYmVyb2VuZGUgYW5zZXMgIgorInRpbGxyw6Rja2xpZ3QpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNTozNgorbXNnaWQgIiIKKyJFYWNoIGV4cG9ydGVkIEk8c3ltYm9sPiAobGlzdGVkIGFzIEk8bmFtZT5ASTx2ZXJzaW9uPiwgd2l0aCBJPHZlcnNpb24+IGJlaW5nICIKKyJcIkJhc2VcIiBpZiB0aGUgbGlicmFyeSBpcyBub3QgdmVyc2lvbmVkKSBpcyBhc3NvY2lhdGVkIHRvIGEgSTxtaW5pbWFsLSIKKyJ2ZXJzaW9uPiBvZiBpdHMgZGVwZW5kZW5jeSB0ZW1wbGF0ZSAodGhlIG1haW4gZGVwZW5kZW5jeSB0ZW1wbGF0ZSBpcyB1c2VkIGlmICIKKyJJPGlkLW9mLWRlcGVuZGVuY3ktdGVtcGxhdGU+IGlzIG5vdCBwcmVzZW50KS4gVGhlIGZpcnN0IGFsdGVybmF0aXZlICIKKyJkZXBlbmRlbmN5IHRlbXBsYXRlIGlzIG51bWJlcmVkIDEsIHRoZSBzZWNvbmQgb25lIDIsIGV0Yy4iCittc2dzdHIgIiIKKyJWYXJqZSBleHBvcnRlcmFkIEk8c3ltYm9sPiAoYW5nZXMgc29tIEk8bmFtbj5ASTx2ZXJzaW9uPiwgZMOkciBJPHZlcnNpb24+IMOkciAiCisiXCJCYXNlXCIgb20gYmlibGlvdGVrZXQgaW50ZSDDpHIgdmVyc2lvbnNzdHlydCkgYXNzb2NpZXJhcyBtZWQgZW4gSTxtaW5zdGEtIgorInZlcnNpb24+IGkgc2luIGJlcm9lbmRlbWFsbCAoaHV2dWRiZXJvZW5kZW1hbGxlbiBhbnbDpG5kcyBvbSBJPGlkLWbDtnItIgorImJlcm9lbmRlbWFsbD4gaW50ZSBmaW5ucykuIERlbiBmw7Zyc3RhIGFsdGVybmF0aXZhIGJlcm9lbmRlbWFsbGVuIGbDpXIgbnVtbWVyICIKKyIxLCBkZW4gYW5kcmEgMiwgb3N2LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNTo0MworbXNnaWQgIiIKKyJFYWNoIGVudHJ5IGZvciBhIGxpYnJhcnkgY2FuIGFsc28gaGF2ZSBzb21lIGZpZWxkcyBvZiBtZXRhLWluZm9ybWF0aW9uLiAgIgorIlRob3NlIGZpZWxkcyBhcmUgc3RvcmVkIG9uIGxpbmVzIHN0YXJ0aW5nIHdpdGggYW4gYXN0ZXJpc2suIEN1cnJlbnRseSwgdGhlICIKKyJvbmx5IHZhbGlkIGZpZWxkIGlzIEk8QnVpbGQtRGVwZW5kcy1QYWNrYWdlPiwgaXQgaW5kaWNhdGVzIHRoZSBuYW1lIG9mIHRoZSAiCisiXCItZGV2XCIgcGFja2FnZSBhc3NvY2lhdGVkIHRvIHRoZSBsaWJyYXJ5IGFuZCBpcyB1c2VkIGJ5IEI8ZHBrZy1zaGxpYmRlcHM+ICIKKyJ0byBtYWtlIHN1cmUgdGhhdCB0aGUgZGVwZW5kZW5jeSBnZW5lcmF0ZWQgaXMgYXQgbGVhc3QgYXMgc3RyaWN0IGFzIHRoZSAiCisiY29ycmVzcG9uZGluZyBidWlsZCBkZXBlbmRlbmN5LiIKK21zZ3N0ciAiIgorIkFsbGEgcG9zdGVyIGkgZXR0IGJpYmxpb3RlayBrYW4gw6R2ZW4gaW5uZWjDpWxsYSBuw6VncmEgZsOkbHQgbWVkICIKKyJtZXRhaW5mb3JtYXRpb24uIERlc3NhIGbDpGx0IGxhZ3JhcyBww6UgcmFkZXIgc29tIGLDtnJqYXIgbWVkIGVuIGFzdGVyaXNrLiBGw7ZyICIKKyJuw6RydmFyYW5kZSDDpHIgZGV0IGVuZGEgZ2lsdGlnYSBmw6RsdGV0IEk8QnVpbGQtRGVwZW5kcy1QYWNrYWdlPiwgdmlsa2V0IGFuZ2VyICIKKyJuYW1uZXQgcMOlIGRldCBcIi1kZXZcIi1wYWtldCBzb20gaMO2ciB0aWxsIGJpYmxpb3Rla2V0LCBvY2ggYW52w6RuZHMgYXYgQjxkcGtnLSIKKyJzaGxpYmRlcHM+IGbDtnIgYXR0IHNlIHRpbGwgYXR0IGRldCBiZXJvZW5kZSBzb20gZ2VuZXJlcmFzIMOkciDDpXRtaW5zdG9uZSBsaWthICIKKyJzdHJpa3Qgc29tIG1vdHN2YXJhbmRlIGJ5Z2diZXJvZW5kZS4iCisKKyMuIHR5cGU6IFNTCisjOiBkZWItc3ltYm9scy41OjQ0CisjLCBuby13cmFwCittc2dpZCAiU2ltcGxlIHN5bWJvbHMgZmlsZSIKK21zZ3N0ciAiRW5rbGEgc3ltYm9sZmlsZXIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi1zeW1ib2xzLjU6NTAKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisibGliZnRwLnNvLjMgbGliZnRwMyAjTUlOVkVSI1xuIgorIiBEZWZhdWx0TmV0YnVmQEJhc2UgMy4xLTEtNlxuIgorIiBGdHBBY2Nlc3NAQmFzZSAzLjEtMS02XG4iCisiIFsuLi5dXG4iCittc2dzdHIgIiIKKyJsaWJmdHAuc28uMyBsaWJmdHAzICNNSU5WRVIjXG4iCisiIERlZmF1bHROZXRidWZAQmFzZSAzLjEtMS02XG4iCisiIEZ0cEFjY2Vzc0BCYXNlIDMuMS0xLTZcbiIKKyIgW+KApl1cbiIKKworIy4gdHlwZTogU1MKKyM6IGRlYi1zeW1ib2xzLjU6NTAKKyMsIG5vLXdyYXAKK21zZ2lkICJBZHZhbmNlZCBzeW1ib2xzIGZpbGUiCittc2dzdHIgIkF2YW5jZXJhZCBzeW1ib2xzLWZpbCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNTo1MworbXNnaWQgImxpYkdMLnNvLjEgbGliZ2wxIgorbXNnc3RyICJsaWJHTC5zby4xIGxpYmdsMSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNTo1NQorbXNnaWQgInwgbGliZ2wxLW1lc2EtZ2x4ICNNSU5WRVIjIgorbXNnc3RyICJ8IGxpYmdsMS1tZXNhLWdseCAjTUlOVkVSIyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNTo2MQorIywgbm8td3JhcAorbXNnaWQgIiIKKyIqIEJ1aWxkLURlcGVuZHMtUGFja2FnZTogbGliZ2wxLW1lc2EtZGV2XG4iCisiIHB1YmxpY0dsU3ltYm9sQEJhc2UgNi4zLTFcbiIKKyIgWy4uLl1cbiIKKyIgaW1wbGVtZW50YXRpb25TcGVjaWZpY1N5bWJvbEBCYXNlIDYuNS4yLTcgMVxuIgorIiBbLi4uXVxuIgorbXNnc3RyICIiCisiKiBCdWlsZC1EZXBlbmRzLVBhY2thZ2U6IGxpYmdsMS1tZXNhLWRldlxuIgorIiBwdWJsaWNHbFN5bWJvbEBCYXNlIDYuMy0xXG4iCisiIFvigKZdXG4iCisiIGltcGxlbWVudGF0aW9uU3BlY2lmaWNTeW1ib2xAQmFzZSA2LjUuMi03IDFcbiIKKyIgW+KApl1cbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNTo2MworbXNnaWQgIkI8aHR0cDovL3dpa2kuZGViaWFuLm9yZy9Qcm9qZWN0cy9JbXByb3ZlZERwa2dTaGxpYmRlcHM+IgorbXNnc3RyICJCPGh0dHA6Ly93aWtpLmRlYmlhbi5vcmcvUHJvamVjdHMvSW1wcm92ZWREcGtnU2hsaWJkZXBzPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXN5bWJvbHMuNTo2NQorbXNnaWQgIkI8ZHBrZy1zaGxpYmRlcHM+KDEpLCBCPGRwa2ctZ2Vuc3ltYm9scz4oMSkuIgorbXNnc3RyICJCPGRwa2ctc2hsaWJkZXBzPigxKSwgQjxkcGtnLWdlbnN5bWJvbHM+KDEpLiIKKworIy4gdHlwZTogVEgKKyM6IGRlYi10cmlnZ2Vycy41OjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkZWItdHJpZ2dlcnMiCittc2dzdHIgImRlYi10cmlnZ2VycyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXRyaWdnZXJzLjU6NAorbXNnaWQgImRlYi10cmlnZ2VycyAtIHBhY2thZ2UgdHJpZ2dlcnMiCittc2dzdHIgImRlYi10cmlnZ2VycyAtIHV0bMO2c2FyZSBmw7ZyIHBha2V0IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdHJpZ2dlcnMuNTo3Cittc2dpZCAidHJpZ2dlcnMiCittc2dzdHIgInV0bMO2c2FyZSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXRyaWdnZXJzLjU6MTIKK21zZ2lkICIiCisiQSBwYWNrYWdlIGRlY2xhcmVzIGl0cyByZWxhdGlvbnNoaXAgdG8gc29tZSB0cmlnZ2VyKHMpIGJ5IGluY2x1ZGluZyBhICIKKyJJPHRyaWdnZXJzPiBmaWxlIGluIGl0cyBjb250cm9sIGFyY2hpdmUgKGkuZS4gSTxERUJJQU4vdHJpZ2dlcnM+IGR1cmluZyAiCisicGFja2FnZSBjcmVhdGlvbikuIgorbXNnc3RyICIiCisiRXR0IHBha2V0IGFuZ2VyIGh1ciBkZXQgZsO2cmjDpWxsZXIgc2lnIHRpbGwgZW4gZWxsZXIgZmxlcmEgdXRsw7ZzYXJlIGdlbm9tIGF0dCAiCisidGEgbWVkIGVuIGZpbCBJPHRyaWdnZXJzPiBpIHNpdHQgc3R5cmFya2l2IChkdnMuIEk8REVCSUFOL3RyaWdnZXJzPiBuw6RyICIKKyJwYWtldGV0IHNrYXBhcykuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdHJpZ2dlcnMuNToxNgorbXNnaWQgIiIKKyJUaGlzIGZpbGUgY29udGFpbnMgZGlyZWN0aXZlcywgb25lIHBlciBsaW5lLiBMZWFkaW5nIGFuZCB0cmFpbGluZyB3aGl0ZXNwYWNlICIKKyJhbmQgZXZlcnl0aGluZyBhZnRlciB0aGUgZmlyc3QgQjwjPiBvbiBhbnkgbGluZSB3aWxsIGJlIHRyaW1tZWQsIGFuZCBlbXB0eSAiCisibGluZXMgd2lsbCBiZSBpZ25vcmVkLiIKK21zZ3N0ciAiIgorIkZpbGVuIGlubmVow6VsbGVyIGRpcmVrdGl2LCBldHQgcGVyIHJhZC4gSW5sZWRhbmRlIG9jaCBhdnNsdXRhbmRlIGJsYW5rdGVja2VuICIKKyJvY2ggYWxsdCBlZnRlciBkZXQgZsO2cnN0YSBCPCM+IHDDpSBlbiByYWQga29tbWVyIGF0dCBrbGlwcGFzIGJvcnQgb2NoIHRvbW1hICIKKyJyYWRlciBpZ25vcmVyYXMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdHJpZ2dlcnMuNToxOAorbXNnaWQgIlRoZSB0cmlnZ2VyIGNvbnRyb2wgZGlyZWN0aXZlcyBjdXJyZW50bHkgc3VwcG9ydGVkIGFyZToiCittc2dzdHIgIkRlIHN0eXJkaXJla3RpdiBzb20gZsO2ciBuw6RydmFyYW5kZSBzdMO2ZHMgZsO2ciB1dGzDtnNhcmUgw6RyOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXRyaWdnZXJzLjU6MjIKK21zZ2lkICJCPGludGVyZXN0PiBJPHRyaWdnZXItbmFtZT4iCittc2dzdHIgIkI8aW50ZXJlc3Q+IEk8dXRsw7ZzYXJuYW1uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXRyaWdnZXJzLjU6MjYKK21zZ2lkICJCPGludGVyZXN0LW5vYXdhaXQ+IEk8dHJpZ2dlci1uYW1lPiIKK21zZ3N0ciAiQjxpbnRlcmVzdC1ub2F3YWl0PiBJPHV0bMO2c2FybmFtbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi10cmlnZ2Vycy41OjMzCittc2dpZCAiIgorIlNwZWNpZmllcyB0aGF0IHRoZSBwYWNrYWdlIGlzIGludGVyZXN0ZWQgaW4gdGhlIG5hbWVkIHRyaWdnZXIuIEFsbCB0cmlnZ2VycyAiCisiaW4gd2hpY2ggYSBwYWNrYWdlIGlzIGludGVyZXN0ZWQgbXVzdCBiZSBsaXN0ZWQgdXNpbmcgdGhpcyBkaXJlY3RpdmUgaW4gdGhlICIKKyJ0cmlnZ2VycyBjb250cm9sIGZpbGUuIFRoZSBcIm5vYXdhaXRcIiB2YXJpYW50IGRvZXMgbm90IHB1dCB0aGUgdHJpZ2dlcmluZyAiCisicGFja2FnZXMgaW4gdHJpZ2dlcnMtYXdhaXRlZCBzdGF0ZS4gVGhpcyBzaG91bGQgYmUgdXNlZCB3aGVuIHRoZSAiCisiZnVuY3Rpb25hbGl0eSBwcm92aWRlZCBieSB0aGUgdHJpZ2dlciBpcyBub3QgY3J1Y2lhbC4iCittc2dzdHIgIiIKKyJBbmdlciBhdHQgcGFrZXRldCDDpHIgaW50cmVzc2VyYXQgYXYgZGVuIG5hbW5naXZuYSB1dGzDtnNhcmVuLiBBbGxhIHV0bMO2c2FyZSAiCisic29tIGV0dCBwYWtldCDDpHIgaW50cmVzc2VyYXQgYXYgbcOlc3RlIGxpc3RhcyBnZW5vbSBhdHQgYW52w6RuZGEgZGV0dGEgIgorImRpcmVrdGl2IGkgdXRsw7ZzYXItc3R5cmZpbGVuLiBWYXJpYW50ZW4gXCJub2F3YWl0XCIgc8OkdHRlciBpbnRlIGRldCAiCisidXRsw7ZzYW5kZSBwYWtldGV0IGkgYXZ2YWt0YW5kZSB0aWxsc3TDpW5kLiBEZXR0YSBiw7ZyIGFudsOkbmRhcyBuw6RyICIKKyJmdW5rdGlvbmFsaXRldGVuIHNvbSB0aWxsaGFuZGFow6VsbHMgYXYgdXRsw7ZzYXJlbiBpbnRlIMOkciBhdmfDtnJhbmRlLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXRyaWdnZXJzLjU6MzcKK21zZ2lkICJCPGFjdGl2YXRlPiBJPHRyaWdnZXItbmFtZT4iCittc2dzdHIgIkI8YWN0aXZhdGU+IEk8dXRsw7ZzYXJuYW1uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXRyaWdnZXJzLjU6NDEKK21zZ2lkICJCPGFjdGl2YXRlLW5vYXdhaXQ+IEk8dHJpZ2dlci1uYW1lPiIKK21zZ3N0ciAiQjxhY3RpdmF0ZS1ub2F3YWl0PiBJPHV0bMO2c2FybmFtbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi10cmlnZ2Vycy41OjUwCittc2dpZCAiIgorIkFycmFuZ2VzIHRoYXQgY2hhbmdlcyB0byB0aGlzIHBhY2thZ2UncyBzdGF0ZSB3aWxsIGFjdGl2YXRlIHRoZSBzcGVjaWZpZWQgIgorInRyaWdnZXIuIFRoZSB0cmlnZ2VyIHdpbGwgYmUgYWN0aXZhdGVkIGF0IHRoZSBzdGFydCBvZiB0aGUgZm9sbG93aW5nICIKKyJvcGVyYXRpb25zOiB1bnBhY2ssIGNvbmZpZ3VyZSwgcmVtb3ZlIChpbmNsdWRpbmcgZm9yIHRoZSBiZW5lZml0IG9mIGEgIgorImNvbmZsaWN0aW5nIHBhY2thZ2UpLCBwdXJnZSBhbmQgZGVjb25maWd1cmUuICBUaGUgXCJub2F3YWl0XCIgdmFyaWFudCBkb2VzICIKKyJub3QgcHV0IHRoZSB0cmlnZ2VyaW5nIHBhY2thZ2VzIGluIHRyaWdnZXJzLWF3YWl0ZWQgc3RhdGUuIFRoaXMgc2hvdWxkIGJlICIKKyJ1c2VkIHdoZW4gdGhlIGZ1bmN0aW9uYWxpdHkgcHJvdmlkZWQgYnkgdGhlIHRyaWdnZXIgaXMgbm90IGNydWNpYWwuIgorbXNnc3RyICIiCisiR8O2ciBzw6UgYXR0IMOkbmRyaW5nYXIgYXYgZGV0dGEgcGFrZXRzIHRpbGxzdMOlbmQgYWt0aXZlcmFyIGRlbiBhbmdpdm5hICIKKyJ1dGzDtnNhcmVuLiBVdGzDtnNhcmVuIGFrdGl2ZXJhcyBuw6RyIGVuIGF2IGbDtmxqYW5kZSBvcGVyYXRpb25lciBww6Viw7ZyamFzOiAiCisidXBwYWNrbmluZywga29uZmlndXJlcmluZywgYm9ydHRhZ25pbmcgKG9ja3PDpSBuw6RyIGRldCB0YXMgYm9ydCB0aWxsIGbDtnJkZWwgIgorImF2IGV0dCBwYWtldCBkZXQgc3TDpXIgaSBrb25mbGlrdCBtZWQpLCByZW5zbmluZyBvY2ggYXZrb25maWd1cmVyaW5nLiIKKyJWYXJpYW50ZW4gXCJub2F3YWl0XCIgc8OkdHRlciBpbnRlIGRlIHV0bMO2c2FuZGUgcGFrZXRlbiBpIGF2dmFrdGFuZGUgIgorInRpbGxzdMOlbmQuIERldHRhIGLDtnIgYW52w6RuZGFzIG7DpHIgZnVua3Rpb25hbGl0ZXRlbiBzb20gdGlsbGhhbmRhaMOlbGxzIGF2ICIKKyJ1dGzDtnNhcmVuIGludGUgw6RyIGF2Z8O2cmFuZGUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkZWItdHJpZ2dlcnMuNTo1OAorbXNnaWQgIiIKKyJJZiB0aGlzIHBhY2thZ2UgZGlzYXBwZWFycyBkdXJpbmcgdGhlIHVucGFja2luZyBvZiBhbm90aGVyIHBhY2thZ2UgdGhlICIKKyJ0cmlnZ2VyIHdpbGwgYmUgYWN0aXZhdGVkIHdoZW4gdGhlIGRpc2FwcGVhcmFuY2UgaXMgbm90ZWQgdG93YXJkcyB0aGUgZW5kIG9mICIKKyJ0aGUgdW5wYWNrLiBUcmlnZ2VyIHByb2Nlc3NpbmcsIGFuZCB0cmFuc2l0aW9uIGZyb20gdHJpZ2dlcnMtYXdhaXRlZCB0byAiCisiaW5zdGFsbGVkLCBkb2VzIG5vdCBjYXVzZSBhY3RpdmF0aW9ucy4gIEluIHRoZSBjYXNlIG9mIHVucGFjaywgdHJpZ2dlcnMgIgorIm1lbnRpb25lZCBpbiBib3RoIHRoZSBvbGQgYW5kIG5ldyB2ZXJzaW9ucyBvZiB0aGUgcGFja2FnZSB3aWxsIGJlIGFjdGl2YXRlZC4iCittc2dzdHIgIiIKKyJPbSBwYWtldGV0IGbDtnJzdmlubmVyIG7DpHIgZXR0IGFubmF0IHBha2V0IHBhY2thcyB1cHAga29tbWVyIHV0bMO2c2FyZW4gYXR0ICIKKyJha3RpdmVyYXMgbsOkciBmw7Zyc3Zpbm5hbmRldCB1cHB0w6Rja3MgbW90IHNsdXRldCBhdiB1cHBhY2tuaW5nZW4uIEhhbnRlcmluZyAiCisiYXYgdXRsw7ZzYXJlLCBvY2ggZW4gw7Z2ZXJnw6VuZyBmcsOlbiBcInbDpG50YXIgcMOlIHV0bMO2c2FyZVwiIHRpbGwgXCJpbnN0YWxsZXJhdCIKKyJcIiBvcnNha2FyIGludGUgYWt0aXZlcmluZ2FyLiBOw6RyIGRldCBnw6RsbGVyIHVwcGFja25pbmcga29tbWVyIGLDpWRlIHV0bMO2c2FyZSAiCisic29tIG9tbsOkbW5zIGkgZ2FtbGEgb2NoIG55YSB2ZXJzaW9uZXIgYXYgcGFrZXRldCBhdHQgYWt0aXZlcmFzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXRyaWdnZXJzLjU6NjEKK21zZ2lkICIiCisiVW5rbm93biBkaXJlY3RpdmVzIGFyZSBhbiBlcnJvciB3aGljaCB3aWxsIHByZXZlbnQgaW5zdGFsbGF0aW9uIG9mIHRoZSAiCisicGFja2FnZS4iCittc2dzdHIgIiIKKyJPa8OkbmRhIGRpcmVrdGl2IMOkciBldHQgZmVsIHNvbSBmw7ZyaGluZHJhciBwYWtldGV0IGZyw6VuIGF0dCBpbnN0YWxsZXJhcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRlYi10cmlnZ2Vycy41OjY2Cittc2dpZCAiIgorIlRoZSBcIi1ub2F3YWl0XCIgdmFyaWFudHMgYXJlIG9ubHkgc3VwcG9ydGVkIGJ5IGRwa2cgMS4xNi4xIG9yIG5ld2VyLCBhbmQgIgorIndpbGwgbGVhZCB0byBlcnJvcnMgaWYgdXNlZCB3aXRoIGFuIG9sZGVyIGRwa2cuIEl0IGlzIHRodXMgcmVjb21tZW5kZWQgdG8gIgorImFkZCBhIFwiUHJlLURlcGVuZHM6IGRwa2cgKEU8Z3Q+PSAxLjE2LjEpXCIgdG8gYW55IHBhY2thZ2UgdGhhdCB3aXNoIHRvIHVzZSAiCisidGhvc2UgZGlyZWN0aXZlcy4iCittc2dzdHIgIiIKKyJWYXJpYW50ZXJuYSBtZWQgXCItbm9hd2FpdFwiIHN0w7ZkcyBlbmRhc3QgYXYgZHBrZyAxLjE2LjEgb2NoIHNlbmFyZSwgb2NoICIKKyJrb21tZXIgbGVkYSB0aWxsIGZlbCBvbSBkZSBhbnbDpG5kcyBtZWQgw6RsZHJlIHZlcnNpb25lciBhdiBkcGtnLiBEZXQgIgorInJla29tbWVuZGVyYXMgZMOkcmbDtnIgYXR0IGR1IGzDpGdnZXIgdGlsbCBldHQgXCJQcmUtRGVwZW5kczogZHBrZyAoRTxndD49ICIKKyIxLjE2LjEpXCIgdGlsbCBldmVudHVlbGxhIHBha2V0IHNvbSB2aWxsIGFudsOkbmRhIGRlc3NhIGRpcmVrdGl2LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZGViLXRyaWdnZXJzLjU6NzAKK21zZ2lkICIiCisiQjxkcGtnLXRyaWdnZXI+KDEpLCBCPGRwa2c+KDEpLCBCPC91c3Ivc2hhcmUvZG9jL2Rwa2ctZGV2L3RyaWdnZXJzLnR4dC5nej4uIgorbXNnc3RyICIiCisiQjxkcGtnLXRyaWdnZXI+KDEpLCBCPGRwa2c+KDEpLCBCPC91c3Ivc2hhcmUvZG9jL2Rwa2ctZGV2L3RyaWdnZXJzLnR4dC5nej4uIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy4xOjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnIgorbXNnc3RyICJkcGtnIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy4xOjEgZHBrZy5jZmcuNToxIGRwa2ctYnVpbGRmbGFncy4xOjEgZHBrZy1kZWIuMToxCisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjEgZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMToxIGRwa2ctcXVlcnkuMToxCisjOiBkcGtnLXRyaWdnZXIuMToxIGRwa2ctdmVuZG9yLjE6MSBkc2VsZWN0LmNmZy41OjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnIHN1aXRlIgorbXNnc3RyICJEcGtnLXN2aXRlbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQKK21zZ2lkICJkcGtnIC0gcGFja2FnZSBtYW5hZ2VyIGZvciBEZWJpYW4iCittc2dzdHIgImRwa2cgLSBlbiBtZWxsYW5uaXbDpXBha2V0aGFudGVyYXJlIGbDtnIgRGViaWFuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6OAorbXNnaWQgIkI8ZHBrZz4gW0k8b3B0aW9uPi4uLl0gSTxhY3Rpb24+IgorbXNnc3RyICJCPGRwa2c+IFtJPGZsYWdnYT4uLi5dIEk8w6V0Z8OkcmQ+IgorCisjLiB0eXBlOiBTSAorIzogZHBrZy4xOjkKKyMsIG5vLXdyYXAKK21zZ2lkICJXQVJOSU5HIgorbXNnc3RyICJWQVJOSU5HIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTMKK21zZ2lkICIiCisiVGhpcyBtYW51YWwgaXMgaW50ZW5kZWQgZm9yIHVzZXJzIHdpc2hpbmcgdG8gdW5kZXJzdGFuZCBCPGRwa2c+J3MgY29tbWFuZCAiCisibGluZSBvcHRpb25zIGFuZCBwYWNrYWdlIHN0YXRlcyBpbiBtb3JlIGRldGFpbCB0aGFuIHRoYXQgcHJvdmlkZWQgYnkgQjxkcGtnICIKKyItLWhlbHA+LiIKK21zZ3N0ciAiIgorIk1hbnVhbGVuIMOkciBhdnNlZGQgZsO2ciBhbnbDpG5kYXJlIHNvbSB2aWxsIGbDpSBlbiBtZXIgZGV0YWxqZXJhZCBmw7Zyc3TDpWVsc2UgIgorImbDtnIgQjxkcGtnPnMga29tbWFuZG9yYWRzZmxhZ2dvciBvY2ggcGFrZXR0aWxsc3TDpW5kIMOkbiB2YWQgc29tIGJlcsOkdHRhcyBtZWQgIgorIkI8ZHBrZyAtLWhlbHA+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjE4Cittc2dpZCAiIgorIkl0IHNob3VsZCBJPG5vdD4gYmUgdXNlZCBieSBwYWNrYWdlIG1haW50YWluZXJzIHdpc2hpbmcgdG8gdW5kZXJzdGFuZCBob3cgIgorIkI8ZHBrZz4gd2lsbCBpbnN0YWxsIHRoZWlyIHBhY2thZ2VzLiBUaGUgZGVzY3JpcHRpb25zIG9mIHdoYXQgQjxkcGtnPiBkb2VzICIKKyJ3aGVuIGluc3RhbGxpbmcgYW5kIHJlbW92aW5nIHBhY2thZ2VzIGFyZSBwYXJ0aWN1bGFybHkgaW5hZGVxdWF0ZS4iCittc2dzdHIgIiIKKyJEZW4gYsO2ciBJPGludGU+IGFudsOkbmRhcyBhdiBwYWtldGFuc3ZhcmlnYSBzb20gdmlsbCBsw6RyYSBzaWcgaHVyIEI8ZHBrZz4gIgorImtvbW1lciBhdHQgaW5zdGFsbGVyYSBkZXJhcyBwYWtldC4gQmVza3Jpdm5pbmdlbiDDtnZlciB2YWQgQjxkcGtnPiBnw7ZyIG7DpHIgIgorInBha2V0IGluc3RhbGxlcmFzIG9jaCB0YXMgYm9ydCDDpHIgc3BlY2llbGx0IG90aWxscsOkY2tsaWdhLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjI2Cittc2dpZCAiIgorIkI8ZHBrZz4gaXMgYSB0b29sIHRvIGluc3RhbGwsIGJ1aWxkLCByZW1vdmUgYW5kIG1hbmFnZSBEZWJpYW4gcGFja2FnZXMuIFRoZSAiCisicHJpbWFyeSBhbmQgbW9yZSB1c2VyLWZyaWVuZGx5IGZyb250LWVuZCBmb3IgQjxkcGtnPiBpcyBCPGFwdGl0dWRlPigxKS4gIgorIkI8ZHBrZz4gaXRzZWxmIGlzIGNvbnRyb2xsZWQgZW50aXJlbHkgdmlhIGNvbW1hbmQgbGluZSBwYXJhbWV0ZXJzLCB3aGljaCAiCisiY29uc2lzdCBvZiBleGFjdGx5IG9uZSBhY3Rpb24gYW5kIHplcm8gb3IgbW9yZSBvcHRpb25zLiBUaGUgYWN0aW9uLXBhcmFtZXRlciAiCisidGVsbHMgQjxkcGtnPiB3aGF0IHRvIGRvIGFuZCBvcHRpb25zIGNvbnRyb2wgdGhlIGJlaGF2aW9yIG9mIHRoZSBhY3Rpb24gaW4gIgorInNvbWUgd2F5LiIKK21zZ3N0ciAiIgorIkI8ZHBrZz4gw6RyIGV0dCB2ZXJrdHlnIGbDtnIgYXR0IGluc3RhbGxlcmEsIGJ5Z2dhLCB0YSBib3J0IG9jaCBoYW50ZXJhICIKKyJEZWJpYW5wYWtldC4gRGV0IHByaW3DpHJhIG9jaCBtZXIgYW52w6RuZGFydsOkbmxpZ2Egc2thbGV0IHJ1bnQgQjxkcGtnPiDDpHIgIgorIkI8YXB0aXR1ZGU+KDEpLiBCPGRwa2c+IGtvbnRyb2xsZXJhcyBoZWx0IG9jaCBow6VsbGV0IHZpYSAiCisia29tbWFuZG9yYWRzcGFyYW1ldHJhciwgdmlsa2EgYmVzdMOlciBhdiBleGFrdCBlbiDDpXRnw6RyZCBvY2ggbm9sbCBlbGxlciBmbGVyICIKKyJmbGFnZ29yLiDDhXRnw6RyZHNwYXJhbWV0ZXJuIHRhbGFyIG9tIGbDtnIgZHBrZyB2YWQgc29tIHNrYWxsIGfDtnJhcywgb2NoICIKKyJmbGFnZ29ybmEgc3R5ciBww6Ugdmlsa2V0IHPDpHR0IMOldGfDpHJkZW4gc2thbGwgdXRmw7ZyYXMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzMKK21zZ2lkICIiCisiQjxkcGtnPiBjYW4gYWxzbyBiZSB1c2VkIGFzIGEgZnJvbnQtZW5kIHRvIEI8ZHBrZy1kZWI+KDEpIGFuZCBCPGRwa2ctcXVlcnk+IgorIigxKS4gVGhlIGxpc3Qgb2Ygc3VwcG9ydGVkIGFjdGlvbnMgY2FuIGJlIGZvdW5kIGxhdGVyIG9uIGluIHRoZSBCPEFDVElPTlM+ICIKKyJzZWN0aW9uLiBJZiBhbnkgc3VjaCBhY3Rpb24gaXMgZW5jb3VudGVyZWQgQjxkcGtnPiBqdXN0IHJ1bnMgQjxkcGtnLWRlYj4gb3IgIgorIkI8ZHBrZy1xdWVyeT4gd2l0aCB0aGUgcGFyYW1ldGVycyBnaXZlbiB0byBpdCwgYnV0IG5vIHNwZWNpZmljIG9wdGlvbnMgYXJlICIKKyJjdXJyZW50bHkgcGFzc2VkIHRvIHRoZW0sIHRvIHVzZSBhbnkgc3VjaCBvcHRpb24gdGhlIGJhY2stZW5kcyBuZWVkIHRvIGJlICIKKyJjYWxsZWQgZGlyZWN0bHkuIgorbXNnc3RyICIiCisiQjxkcGtnPiBrYW4gb2Nrc8OlIGFudsOkbmRhcyBzb20gZXR0IHNrYWwgcnVudCBCPGRwa2ctZGViPigxKSBvY2ggQjxkcGtnLXF1ZXJ5PiIKKyIoMSkuIEVuIGbDtnJ0ZWNrbmluZyDDtnZlciB0aWxsZ8OkbmdsaWdhIMOldGfDpHJkZXIgYmVza3JpdnMgbmVkYW4gaSBzdHlja2V0ICIKKyJCPMOFVEfDhFJERVI+LiBPbSBCPGRwa2c+IHVwcHTDpGNrZXIgZW4gc8OlZGFuIMOldGfDpHJkIGFucm9wYXMgYmFyYSBCPGRwa2ctZHBrZz4gIgorImVsbGVyIEI8ZHBrZy1xdWVyeT4gbWVkIGRlIGdpdm5hIGZsYWdnb3JuYSwgbWVuIGluZ2Egc3BlY2lmaWthIGZsYWdnb3Igc8OkbmRzICIKKyJkaXJla3QgdGlsbCBkZW0sIGbDtnIgYXR0IGFudsOkbmRhIHPDpWRhbmEgZmxhZ2dvciBtw6VzdGUgYmFrZ3J1bmRzcHJvZ3JhbW1lbiAiCisiYW5yb3BhcyBkaXJla3QuIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy4xOjM0CisjLCBuby13cmFwCittc2dpZCAiSU5GT1JNQVRJT04gQUJPVVQgUEFDS0FHRVMiCittc2dzdHIgIklORk9STUFUSU9OIE9NIFBBS0VUIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzkKK21zZ2lkICIiCisiQjxkcGtnPiBtYWludGFpbnMgc29tZSB1c2FibGUgaW5mb3JtYXRpb24gYWJvdXQgYXZhaWxhYmxlIHBhY2thZ2VzLiBUaGUgIgorImluZm9ybWF0aW9uIGlzIGRpdmlkZWQgaW4gdGhyZWUgY2xhc3NlczogQjxzdGF0ZXM+LCBCPHNlbGVjdGlvbiBzdGF0ZXM+IGFuZCAiCisiQjxmbGFncz4uIFRoZXNlIHZhbHVlcyBhcmUgaW50ZW5kZWQgdG8gYmUgY2hhbmdlZCBtYWlubHkgd2l0aCBCPGRzZWxlY3Q+LiIKK21zZ3N0ciAiIgorIkI8ZHBrZz4gdXBwcsOkdHRow6VsbGVyIHZpc3MgYW52w6RuZGJhciBpbmZvcm1hdGlvbiBvbSB0aWxsZ8OkbmdsaWdhIHBha2V0LiAiCisiSW5mb3JtYXRpb25lbiBkZWxhcyBpbiBpIHRyZSBrbGFzc2VyOiBCPHRpbGxzdMOlbmQ+LCBCPG1hcmtlcmluZ3N0aWxsc3TDpW5kPiAiCisib2NoIEI8ZmxhZ2dvcj4uIERlc3NhIHbDpHJkZW4gw6RyIGF2c2VkZGEgYXR0IGh1dnVkc2FrbGlnZW4gw6RuZHJhcyB2aWEgIgorIkI8ZHNlbGVjdD4uIgorCisjLiB0eXBlOiBTUworIzogZHBrZy4xOjM5CisjLCBuby13cmFwCittc2dpZCAiUEFDS0FHRSBTVEFURVMiCittc2dzdHIgIlBBS0VUVElMTFNUw4VORCIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo0MAorIywgbm8td3JhcAorbXNnaWQgIkI8bm90LWluc3RhbGxlZD4iCittc2dzdHIgIkI8ZWogaW5zdGFsbGVyYXQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDMKK21zZ2lkICJUaGUgcGFja2FnZSBpcyBub3QgaW5zdGFsbGVkIG9uIHlvdXIgc3lzdGVtLiIKK21zZ3N0ciAiUGFrZXRldCDDpHIgaW50ZSBpbnN0YWxsZXJhdCBww6UgZGl0dCBzeXN0ZW0uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjQzCisjLCBuby13cmFwCittc2dpZCAiQjxjb25maWctZmlsZXM+IgorbXNnc3RyICJCPGtvbmZpZ3VyYXRpb25zZmlsZXI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDYKK21zZ2lkICJPbmx5IHRoZSBjb25maWd1cmF0aW9uIGZpbGVzIG9mIHRoZSBwYWNrYWdlIGV4aXN0IG9uIHRoZSBzeXN0ZW0uIgorbXNnc3RyICJFbmRhc3Qga29uZmlndXJhdGlvbnNmaWxlcm5hIGbDtnIgcGFrZXRldCBmaW5ucyBww6Ugc3lzdGVtZXQuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjQ2CisjLCBuby13cmFwCittc2dpZCAiQjxoYWxmLWluc3RhbGxlZD4iCittc2dzdHIgIkI8aGFsdnQgaW5zdGFsbGVyYXQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTAKK21zZ2lkICIiCisiVGhlIGluc3RhbGxhdGlvbiBvZiB0aGUgcGFja2FnZSBoYXMgYmVlbiBzdGFydGVkLCBidXQgbm90IGNvbXBsZXRlZCBmb3Igc29tZSAiCisicmVhc29uLiIKK21zZ3N0ciAiIgorIkluc3RhbGxhdGlvbmVuIGF2IHBha2V0ZXQgaGFyIHDDpWLDtnJqYXRzLCBtZW4gYXYgbsOlZ29uIG9yc2FrIGludGUgc2x1dGbDtnJ0cy4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHVucGFja2VkPiIKK21zZ3N0ciAiQjx1cHBhY2thdD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1MworbXNnaWQgIlRoZSBwYWNrYWdlIGlzIHVucGFja2VkLCBidXQgbm90IGNvbmZpZ3VyZWQuIgorbXNnc3RyICJQYWtldGV0IMOkciB1cHBhY2thdCwgbWVuIGludGUga29uZmlndXJlcmF0LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo1MworIywgbm8td3JhcAorbXNnaWQgIkI8aGFsZi1jb25maWd1cmVkPiIKK21zZ3N0ciAiQjxoYWx2dCBrb25maWd1cmVyYXQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTcKK21zZ2lkICIiCisiVGhlIHBhY2thZ2UgaXMgdW5wYWNrZWQgYW5kIGNvbmZpZ3VyYXRpb24gaGFzIGJlZW4gc3RhcnRlZCwgYnV0IG5vdCB5ZXQgIgorImNvbXBsZXRlZCBmb3Igc29tZSByZWFzb24uIgorbXNnc3RyICIiCisiUGFrZXRldCDDpHIgdXBwYWNrYXQgb2NoIGtvbmZpZ3VyYXRpb25lbiBoYXIgcMOlYsO2cmphdHMsIG1lbiBhdiBuw6Vnb24gb3JzYWsgIgorImludGUgc2x1dGbDtnJ0cy4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHRyaWdnZXJzLWF3YWl0ZWQ+IgorbXNnc3RyICJCPHbDpG50YXIgcMOlIHV0bMO2c2FyZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2MAorbXNnaWQgIlRoZSBwYWNrYWdlIGF3YWl0cyB0cmlnZ2VyIHByb2Nlc3NpbmcgYnkgYW5vdGhlciBwYWNrYWdlLiIKK21zZ3N0ciAiUGFrZXRldCB2w6RudGFyIHDDpSBoYW50ZXJpbmcgYXYgdXRsw7ZzYXJlIGF2IGV0dCBhbm5hdCBwYWtldC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NjAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHRyaWdnZXJzLXBlbmRpbmc+IgorbXNnc3RyICJCPHV0bMO2c2FyZSB2w6RudGFyPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjYzCittc2dpZCAiVGhlIHBhY2thZ2UgaGFzIGJlZW4gdHJpZ2dlcmVkLiIKK21zZ3N0ciAiUGFrZXRldCBoYXIgdXRsw7ZzdHMuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjYzCisjLCBuby13cmFwCittc2dpZCAiQjxpbnN0YWxsZWQ+IgorbXNnc3RyICJCPGluc3RhbGxlcmF0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjY2Cittc2dpZCAiVGhlIHBhY2thZ2UgaXMgdW5wYWNrZWQgYW5kIGNvbmZpZ3VyZWQgT0suIgorbXNnc3RyICJQYWtldGV0IMOkciB1cHBhY2thdCBvY2gga29ycmVrdCBpbnN0w6RsbHQuIgorCisjLiB0eXBlOiBTUworIzogZHBrZy4xOjY2CisjLCBuby13cmFwCittc2dpZCAiUEFDS0FHRSBTRUxFQ1RJT04gU1RBVEVTIgorbXNnc3RyICJNQVJLRVJJTkdTVElMTFNUw4VORCBGw5ZSIFBBS0VUIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjY3CisjLCBuby13cmFwCittc2dpZCAiQjxpbnN0YWxsPiIKK21zZ3N0ciAiQjxpbnN0YWxsZXJhPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjcwCittc2dpZCAiVGhlIHBhY2thZ2UgaXMgc2VsZWN0ZWQgZm9yIGluc3RhbGxhdGlvbi4iCittc2dzdHIgIlBha2V0ZXQgw6RyIG1hcmtlcmF0IGbDtnIgaW5zdGFsbGF0aW9uLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo3MAorIywgbm8td3JhcAorbXNnaWQgIkI8aG9sZD4iCittc2dzdHIgIkI8aMOlbGw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzQKK21zZ2lkICIiCisiQSBwYWNrYWdlIG1hcmtlZCB0byBiZSBvbiBCPGhvbGQ+IGlzIG5vdCBoYW5kbGVkIGJ5IEI8ZHBrZz4sIHVubGVzcyBmb3JjZWQgIgorInRvIGRvIHRoYXQgd2l0aCBvcHRpb24gQjwtLWZvcmNlLWhvbGQ+LiIKK21zZ3N0ciAiIgorIkV0dCBwYWtldCBzb20gw6RyIG1hcmtlcmF0IG1lZCBCPGjDpWxsPiBoYW50ZXJhcyBpbnRlIGF2IEI8ZHBrZz4gc8OldmlkYSBpbnRlICIKKyJkZXQgZnJhbXR2aW5nYXMgbWVkIGZsYWdnYW4gQjwtLWZvcmNlLWhvbGQ+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo3NAorIywgbm8td3JhcAorbXNnaWQgIkI8ZGVpbnN0YWxsPiIKK21zZ3N0ciAiQjx0YSBib3J0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjc4Cittc2dpZCAiIgorIlRoZSBwYWNrYWdlIGlzIHNlbGVjdGVkIGZvciBkZWluc3RhbGxhdGlvbiAoaS5lLiB3ZSB3YW50IHRvIHJlbW92ZSBhbGwgIgorImZpbGVzLCBleGNlcHQgY29uZmlndXJhdGlvbiBmaWxlcykuIgorbXNnc3RyICIiCisiUGFrZXRldCDDpHIgbWFya2VyYXQgZsO2ciBhdmluc3RhbGxhdGlvbiAoZHZzLiB2aSB2aWxsIHRhIGJvcnQgYWxsYSBmaWxlciAiCisiZsO2cnV0b20ga29uZmlndXJhdGlvbnNmaWxlcm5hKS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NzgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHB1cmdlPiIKK21zZ3N0ciAiQjxyZW5zYT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo4MgorbXNnaWQgIiIKKyJUaGUgcGFja2FnZSBpcyBzZWxlY3RlZCB0byBiZSBwdXJnZWQgKGkuZS4gd2Ugd2FudCB0byByZW1vdmUgZXZlcnl0aGluZyBmcm9tICIKKyJzeXN0ZW0gZGlyZWN0b3JpZXMsIGV2ZW4gY29uZmlndXJhdGlvbiBmaWxlcykuIgorbXNnc3RyICIiCisiUGFrZXRldCDDpHIgbWFya2VyYXQgZsO2ciByZW5zbmluZyAoZHZzLiB2aSB2aWxsIHRhIGJvcnQgYWxsdGluZyBmcsOlbiAiCisic3lzdGVta2F0YWxvZ2VyLCDDpHZlbiBrb25maWd1cmF0aW9uc2ZpbGVyKS4iCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLjE6ODIKKyMsIG5vLXdyYXAKK21zZ2lkICJQQUNLQUdFIEZMQUdTIgorbXNnc3RyICJQQUtFVEZMQUdHT1IiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6ODMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHJlaW5zdC1yZXF1aXJlZD4iCittc2dzdHIgIkI8b21pbnN0YWxsYXRpb24ga3LDpHZzPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjg4Cittc2dpZCAiIgorIkEgcGFja2FnZSBtYXJrZWQgQjxyZWluc3QtcmVxdWlyZWQ+IGlzIGJyb2tlbiBhbmQgcmVxdWlyZXMgcmVpbnN0YWxsYXRpb24uICIKKyJUaGVzZSBwYWNrYWdlcyBjYW5ub3QgYmUgcmVtb3ZlZCwgdW5sZXNzIGZvcmNlZCB3aXRoIG9wdGlvbiBCPC0tZm9yY2UtcmVtb3ZlLSIKKyJyZWluc3RyZXE+LiIKK21zZ3N0ciAiIgorIkV0dCBwYWtldCBtYXJrZXJhdCBCPG9taW5zdGFsbGF0aW9uIGtyw6R2cz4gw6RyIHRyYXNpZ3Qgb2NoIGtyw6R2ZXIgIgorIm9taW5zdGFsbGF0aW9uLiBEZXNzYSBwYWtldCBrYW4gaW50ZSB0YXMgYm9ydCwgc8OldmlkYSBpbnRlIGRldCBmcmFtdHZpbmdhcyAiCisibWVkIGZsYWdnYW4gQjwtLWZvcmNlLXJlbW92ZS1yZWluc3RyZXE+LiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2cuMTo4OSBkc2VsZWN0LjE6MTIwCisjLCBuby13cmFwCittc2dpZCAiQUNUSU9OUyIKK21zZ3N0ciAiw4VUR8OEUkRFUiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo5MAorIywgbm8td3JhcAorbXNnaWQgIkI8LWk+LCBCPC0taW5zdGFsbD4gSTxwYWNrYWdlLWZpbGU+Li4uIgorbXNnc3RyICJCPC1pPiwgQjwtLWluc3RhbGw+IEk8cGFrZXRmaWw+Li4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6OTQKK21zZ2lkICIiCisiSW5zdGFsbCB0aGUgcGFja2FnZS4gSWYgQjwtLXJlY3Vyc2l2ZT4gb3IgQjwtUj4gb3B0aW9uIGlzIHNwZWNpZmllZCwgIgorIkk8cGFja2FnZS1maWxlPiBtdXN0IHJlZmVyIHRvIGEgZGlyZWN0b3J5IGluc3RlYWQuIgorbXNnc3RyICIiCisiSW5zdGFsbGVyYSBwYWtldGV0LiAgT20gZmxhZ2dhbiBCPC0tcmVjdXJzaXZlPiBlbGxlciBCPC1SPiBhbmdlcyBtw6VzdGUgIgorIkk8cGFrZXRmaWw+IGlzdMOkbGxldCB2YXJhIGVuIGthdGFsb2cuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6OTYKK21zZ2lkICJJbnN0YWxsYXRpb24gY29uc2lzdHMgb2YgdGhlIGZvbGxvd2luZyBzdGVwczoiCittc2dzdHIgIkluc3RhbGxhdGlvbmVuIGJlc3TDpXIgYXYgZsO2bGphbmRlIHN0ZWc6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6OTkKK21zZ2lkICJCPDEuPiBFeHRyYWN0IHRoZSBjb250cm9sIGZpbGVzIG9mIHRoZSBuZXcgcGFja2FnZS4iCittc2dzdHIgIkI8MS4+IEV4dHJhaGVyYSBzdHlyZmlsZXJuYSB1ciBwYWtldGV0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjEwMworbXNnaWQgIiIKKyJCPDIuPiBJZiBhbm90aGVyIHZlcnNpb24gb2YgdGhlIHNhbWUgcGFja2FnZSB3YXMgaW5zdGFsbGVkIGJlZm9yZSB0aGUgbmV3ICIKKyJpbnN0YWxsYXRpb24sIGV4ZWN1dGUgSTxwcmVybT4gc2NyaXB0IG9mIHRoZSBvbGQgcGFja2FnZS4iCittc2dzdHIgIiIKKyJCPDIuPiBPbSBlbiBhbm5hbiB2ZXJzaW9uIGF2IHNhbW1hIHBha2V0IHJlZGFuIGZhbm5zIGluc3RhbGxlcmF0IHZpZCAiCisibnlpbnN0YWxsYXRpb25lbiBleGVrdmVyYXMgSTxwcmVybT4tc2tyaXB0ZXQgZsO2ciBkZXQgZ2FtbGEgcGFrZXRldC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxMDYKK21zZ2lkICJCPDMuPiBSdW4gSTxwcmVpbnN0PiBzY3JpcHQsIGlmIHByb3ZpZGVkIGJ5IHRoZSBwYWNrYWdlLiIKK21zZ3N0ciAiQjwzLj4gS8O2ciBJPHByZWluc3Q+LXNrcmlwdGV0LCBvbSBldHQgc8OlZGFudCBtZWRmw7ZsamVyIHBha2V0ZXQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTEwCittc2dpZCAiIgorIkI8NC4+IFVucGFjayB0aGUgbmV3IGZpbGVzLCBhbmQgYXQgdGhlIHNhbWUgdGltZSBiYWNrIHVwIHRoZSBvbGQgZmlsZXMsIHNvICIKKyJ0aGF0IGlmIHNvbWV0aGluZyBnb2VzIHdyb25nLCB0aGV5IGNhbiBiZSByZXN0b3JlZC4iCittc2dzdHIgIiIKKyJCPDQuPiBQYWNrYSB1cHAgZGUgbnlhIGZpbGVybmEgb2NoIHPDpGtlcmhldHNrb3BpZXJhIHNhbXRpZGlndCBkZSBnYW1sYSAiCisiZmlsZXJuYSBzw6UgYXR0IGRlIGthbiDDpXRlcnN0w6RsbGFzIG9tIG7DpWdvbnRpbmcgZ8OlciBmZWwuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTE3Cittc2dpZCAiIgorIkI8NS4+IElmIGFub3RoZXIgdmVyc2lvbiBvZiB0aGUgc2FtZSBwYWNrYWdlIHdhcyBpbnN0YWxsZWQgYmVmb3JlIHRoZSBuZXcgIgorImluc3RhbGxhdGlvbiwgZXhlY3V0ZSB0aGUgSTxwb3N0cm0+IHNjcmlwdCBvZiB0aGUgb2xkIHBhY2thZ2UuIE5vdGUgdGhhdCAiCisidGhpcyBzY3JpcHQgaXMgZXhlY3V0ZWQgYWZ0ZXIgdGhlIEk8cHJlaW5zdD4gc2NyaXB0IG9mIHRoZSBuZXcgcGFja2FnZSwgIgorImJlY2F1c2UgbmV3IGZpbGVzIGFyZSB3cml0dGVuIGF0IHRoZSBzYW1lIHRpbWUgb2xkIGZpbGVzIGFyZSByZW1vdmVkLiIKK21zZ3N0ciAiIgorIkI8NS4+IE9tIGVuIGFubmFuIHZlcnNpb24gYXYgc2FtbWEgcGFrZXQgcmVkYW4gZmFubnMgaW5zdGFsbGVyYXQgdmlkICIKKyJueWluc3RhbGxhdGlvbmVuIGV4ZWt2ZXJhcyBJPHBvc3RybT4tc2tyaXB0ZXQgZsO2ciBkZXQgZ2FtbGEgcGFrZXRldC4gIgorIk9ic2VydmVyYSBhdHQgc2tyaXB0ZXQgZXhla3ZlcmFzIGVmdGVyIEk8cHJlaW5zdD4gZsO2ciBkZXQgbnlhIHBha2V0ZXQgIgorImVmdGVyc29tIGRlIG55YSBmaWxlcm5hIHNrcml2cyBzYW10aWRpZ3Qgc29tIGRlIGdhbWxhIHRhcyBib3J0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjEyMQorbXNnaWQgIiIKKyJCPDYuPiBDb25maWd1cmUgdGhlIHBhY2thZ2UuIFNlZSBCPC0tY29uZmlndXJlPiBmb3IgZGV0YWlsZWQgaW5mb3JtYXRpb24gIgorImFib3V0IGhvdyB0aGlzIGlzIGRvbmUuIgorbXNnc3RyICIiCisiQjw2Lj4gS29uZmlndXJlcmEgcGFrZXRldC4gU2UgQjwtLWNvbmZpZ3VyZT4gZsO2ciBkZXRhbGplcmFkIGluZm9ybWF0aW9uIG9tICIKKyJodXIgbWFuIGfDtnIgZGV0LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToxMjEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tdW5wYWNrID5JPHBhY2thZ2UtZmlsZT4uLi4iCittc2dzdHIgIkI8LS11bnBhY2sgPkk8cGFrZXRmaWw+IC4uLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjEyNgorbXNnaWQgIiIKKyJVbnBhY2sgdGhlIHBhY2thZ2UsIGJ1dCBkb24ndCBjb25maWd1cmUgaXQuIElmIEI8LS1yZWN1cnNpdmU+IG9yIEI8LVI+ICIKKyJvcHRpb24gaXMgc3BlY2lmaWVkLCBJPHBhY2thZ2UtZmlsZT4gbXVzdCByZWZlciB0byBhIGRpcmVjdG9yeSBpbnN0ZWFkLiIKK21zZ3N0ciAiIgorIlBhY2thIHVwcCBwYWtldGV0LCBtZW4ga29uZmlndXJlcmEgZGV0IGludGUuIE9tIGZsYWdnYW4gQjwtLXJlY3Vyc2l2ZT4gZWxsZXIgIgorIkI8LVI+IGFuZ2VzIG3DpXN0ZSBJPHBha2V0ZmlsPiBpc3TDpGxsZXQgdmFyYSBlbiBrYXRhbG9nLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToxMjYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tY29uZmlndXJlID5JPHBhY2thZ2U+Li4ufEI8LWE+fEI8LS1wZW5kaW5nPiIKK21zZ3N0ciAiQjwtLWNvbmZpZ3VyZSA+STxwYWtldD4uLi58QjwtYT58QjwtLXBlbmRpbmc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTMxCittc2dpZCAiIgorIkNvbmZpZ3VyZSBhIHBhY2thZ2Ugd2hpY2ggaGFzIGJlZW4gdW5wYWNrZWQgYnV0IG5vdCB5ZXQgY29uZmlndXJlZC4gIElmIEI8LSIKKyJhPiBvciBCPC0tcGVuZGluZz4gaXMgZ2l2ZW4gaW5zdGVhZCBvZiBJPHBhY2thZ2U+LCBhbGwgdW5wYWNrZWQgYnV0ICIKKyJ1bmNvbmZpZ3VyZWQgcGFja2FnZXMgYXJlIGNvbmZpZ3VyZWQuIgorbXNnc3RyICIiCisiS29uZmlndXJlcmEgZXR0IHBha2V0IHNvbSBoYXIgcGFja2F0cyB1cHAgbWVuIMOkbm51IGludGUga29uZmlndXJlcmF0cy4gT20gQjwtIgorImE+IGVsbGVyIEI8LS1wZW5kaW5nPiBhbmdlcyBpc3TDpGxsZXQgZsO2ciBJPHBha2V0PiBrb25maWd1cmVyYXMgYWxsYSBwYWtldCAiCisic29tIGhhciBwYWNrYXRzIHVwcCBtZW4gw6RubnUgaW50ZSBrb25maWd1cmVyYXRzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjEzNQorbXNnaWQgIiIKKyJUbyByZWNvbmZpZ3VyZSBhIHBhY2thZ2Ugd2hpY2ggaGFzIGFscmVhZHkgYmVlbiBjb25maWd1cmVkLCB0cnkgdGhlIEI8ZHBrZy0iCisicmVjb25maWd1cmU+KDgpICBjb21tYW5kIGluc3RlYWQuIgorbXNnc3RyICIiCisiRsO2ciBhdHQgb21rb25maWd1cmVyYSBldHQgcGFrZXQgc29tIHJlZGFuIGhhciBrb25maWd1cmVyYXRzIGthbiBkdSBpc3TDpGxsZXQgIgorImFudsOkbmRhIGtvbW1hbmRvdCBCPGRwa2ctcmVjb25maWd1cmUoOCk+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjEzNworbXNnaWQgIkNvbmZpZ3VyaW5nIGNvbnNpc3RzIG9mIHRoZSBmb2xsb3dpbmcgc3RlcHM6IgorbXNnc3RyICJLb25maWd1cmVyaW5nIGJlc3TDpXIgYXYgZsO2bGphbmRlIHN0ZWc6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTQyCittc2dpZCAiIgorIkI8MS4+IFVucGFjayB0aGUgY29uZmZpbGVzLCBhbmQgYXQgdGhlIHNhbWUgdGltZSBiYWNrIHVwIHRoZSBvbGQgY29uZmZpbGVzLCAiCisic28gdGhhdCB0aGV5IGNhbiBiZSByZXN0b3JlZCBpZiBzb21ldGhpbmcgZ29lcyB3cm9uZy4iCittc2dzdHIgIiIKKyJCPDEuPiBQYWNrYSB1cHAga29uZmlndXJhdGlvbnNmaWxlcm5hIG9jaCBzw6RrZXJoZXRza29waWVyYSBzYW10aWRpZ3QgZGUgIgorImdhbWxhIGtvbmZpZ3VyYXRpb25zZmlsZXJuYSBzw6UgYXR0IGRlIGthbiDDpXRlcnN0w6RsbGFzIG9tIG7DpWdvbnRpbmcgZ8OlciBmZWwuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTQ1Cittc2dpZCAiQjwyLj4gUnVuIEk8cG9zdGluc3Q+IHNjcmlwdCwgaWYgcHJvdmlkZWQgYnkgdGhlIHBhY2thZ2UuIgorbXNnc3RyICJCPDIuPiBLw7ZyIEk8cG9zdGluc3Q+LXNrcmlwdGV0LCBvbSBldHQgc8OlZGFudCBmaW5ucyBpIHBha2V0ZXQuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjE0NQorIywgbm8td3JhcAorbXNnaWQgIkI8LS10cmlnZ2Vycy1vbmx5PiBJPHBhY2thZ2U+Li4ufEI8LWE+fEI8LS1wZW5kaW5nPiIKK21zZ3N0ciAiQjwtLXRyaWdnZXJzLW9ubHk+IEk8cGFrZXQ+Li4ufEI8LWE+fEI8LS1wZW5kaW5nPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjE1MgorbXNnaWQgIiIKKyJQcm9jZXNzZXMgb25seSB0cmlnZ2Vycy4gQWxsIHBlbmRpbmcgdHJpZ2dlcnMgd2lsbCBiZSBwcm9jZXNzZWQuIElmIHBhY2thZ2UgIgorIm5hbWVzIGFyZSBzdXBwbGllZCBvbmx5IHRob3NlIHBhY2thZ2VzJyB0cmlnZ2VycyB3aWxsIGJlIHByb2Nlc3NlZCwgZXhhY3RseSAiCisib25jZSBlYWNoIHdoZXJlIG5lY2Vzc2FyeS4gVXNlIG9mIHRoaXMgb3B0aW9uIG1heSBsZWF2ZSBwYWNrYWdlcyBpbiB0aGUgIgorImltcHJvcGVyIEI8dHJpZ2dlcnMtYXdhaXRlZD4gYW5kIEI8dHJpZ2dlcnMtcGVuZGluZz4gc3RhdGVzLiBUaGlzIGNhbiBiZSAiCisiZml4ZWQgbGF0ZXIgYnkgcnVubmluZzogQjxkcGtnIC0tY29uZmlndXJlIC0tcGVuZGluZz4uIgorbXNnc3RyICIiCisiSGFudGVyYXIgYmFyYSB1dGzDtnNhcmUuIEFsbGEgYXZ2YWt0YW5kZSB1dGzDtnNhcmUga29tbWVyIGF0dCBoYW50ZXJhcy4gT20gIgorInBha2V0bmFtbiBhbmdlcyBrb21tZXIgZW5kYXN0IGRlc3NhIHBha2V0cyB1dGzDtnNhcmUgYXR0IGhhbnRlcmFzLCBwcmVjaXMgZW4gIgorImfDpW5nLCBvbSBuw7ZkdsOkbmRpZ3QuIE9tIGR1IGFudsOkbmRlciBkZW5uYSBmbGFnZ2Ega2FuIGRldCBow6RuZGEgYXR0IHBha2V0ICIKKyJoYW1uYXIgaSBmZWxha3RpZ2EgQjx2w6RudGFyIHDDpSB1dGzDtnNhcmU+LSBvY2ggQjx1dGzDtnNhcmUgdsOkbnRhcj4tdGlsbHN0w6VuZC4gIgorIkRldHRhIGthbiByw6R0dGFzIHNlbmFyZSBnZW5vbSBhdHQga8O2cmE6IEI8ZHBrZyAtLWNvbmZpZ3VyZSAtLXBlbmRpbmc+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToxNTIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1yPiwgQjwtLXJlbW92ZT4sIEI8LVA+LCBCPC0tcHVyZ2UgPkk8cGFja2FnZT4uLi58QjwtYT58QjwtLXBlbmRpbmc+IgorbXNnc3RyICJCPC1yPiwgQjwtLXJlbW92ZT4sIEI8LVA+LCBCPC0tcHVyZ2UgPkk8cGFrZXQ+Li4ufEI8LWE+fEI8LS1wZW5kaW5nPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjE2OQorbXNnaWQgIiIKKyJSZW1vdmUgYW4gaW5zdGFsbGVkIHBhY2thZ2UuIEI8LXI+IG9yIEI8LS1yZW1vdmU+IHJlbW92ZSBldmVyeXRoaW5nIGV4Y2VwdCAiCisiY29uZmZpbGVzLiBUaGlzIG1heSBhdm9pZCBoYXZpbmcgdG8gcmVjb25maWd1cmUgdGhlIHBhY2thZ2UgaWYgaXQgaXMgIgorInJlaW5zdGFsbGVkIGxhdGVyLiAoQ29uZmZpbGVzIGFyZSBjb25maWd1cmF0aW9uIGZpbGVzIHRoYXQgYXJlIGxpc3RlZCBpbiB0aGUgIgorIkk8REVCSUFOL2NvbmZmaWxlcz4gY29udHJvbCBmaWxlKS4gQjwtUD4gb3IgQjwtLXB1cmdlPiByZW1vdmVzIGV2ZXJ5dGhpbmcsICIKKyJpbmNsdWRpbmcgY29uZmZpbGVzLiBJZiBCPC1hPiBvciBCPC0tcGVuZGluZz4gaXMgZ2l2ZW4gaW5zdGVhZCBvZiBhIHBhY2thZ2UgIgorIm5hbWUsIHRoZW4gYWxsIHBhY2thZ2VzIHVucGFja2VkLCBidXQgbWFya2VkIHRvIGJlIHJlbW92ZWQgb3IgcHVyZ2VkIGluIGZpbGUgIgorIkk8L3Zhci9saWIvZHBrZy9zdGF0dXM+LCBhcmUgcmVtb3ZlZCBvciBwdXJnZWQsIHJlc3BlY3RpdmVseS4gTm90ZTogc29tZSAiCisiY29uZmlndXJhdGlvbiBmaWxlcyBtaWdodCBiZSB1bmtub3duIHRvIEI8ZHBrZz4gYmVjYXVzZSB0aGV5IGFyZSBjcmVhdGVkIGFuZCAiCisiaGFuZGxlZCBzZXBhcmF0ZWx5IHRocm91Z2ggdGhlIGNvbmZpZ3VyYXRpb24gc2NyaXB0cy4gSW4gdGhhdCBjYXNlLCBCPGRwa2c+ICIKKyJ3b24ndCByZW1vdmUgdGhlbSBieSBpdHNlbGYsIGJ1dCB0aGUgcGFja2FnZSdzIEk8cG9zdHJtPiBzY3JpcHQgKHdoaWNoIGlzICIKKyJjYWxsZWQgYnkgQjxkcGtnPiksIGhhcyB0byB0YWtlIGNhcmUgb2YgdGhlaXIgcmVtb3ZhbCBkdXJpbmcgcHVyZ2UuIE9mICIKKyJjb3Vyc2UsIHRoaXMgb25seSBhcHBsaWVzIHRvIGZpbGVzIGluIHN5c3RlbSBkaXJlY3Rvcmllcywgbm90IGNvbmZpZ3VyYXRpb24gIgorImZpbGVzIHdyaXR0ZW4gdG8gaW5kaXZpZHVhbCB1c2VycycgaG9tZSBkaXJlY3Rvcmllcy4iCittc2dzdHIgIiIKKyJUYSBib3J0IGV0dCBpbnN0YWxsZXJhdCBwYWtldC4gQjwtcj4gZWxsZXIgQjwtLXJlbW92ZT4gdGFyIGJvcnQgYWxsdGluZyAiCisiZsO2cnV0b20ga29uZmlndXJhdGlvbnNmaWxlciwgdmlsa2V0IGfDtnIgYXR0IGR1IGthbiB1bmR2aWthIGF0dCBrb25maWd1cmVyYSAiCisib20gcGFrZXRldCBvbSBkdSBzZW5hcmUgaW5zdGFsbGVyYXIgb20gZGV0LiAoS29uZmlndXJhdGlvbnNmaWxlciDDpHIgZGUgZmlsZXIgIgorInNvbSBsaXN0YXMgaSBzdHlyZmlsZW4gSTxkZWJpYW4vY29uZmZpbGVzPikuIEI8LVA+IGVsbGVyIEI8LS1wdXJnZT4gdGFyIGJvcnQgIgorImFsbHRpbmcsIGlua2x1c2l2ZSBrb25maWd1cmF0aW9uc2ZpbGVyLiBPbSBCPC1hPiBlbGxlciBCPC0tcGVuZGluZz4gYW5nZXMgIgorImlzdMOkbGxldCBmw7ZyIGV0dCBwYWtldG5hbW4ga29tbWVyIGFsbGEgaW5zdGFsbGVyYWRlIHVwcGFja2FkZSBwYWtldCBzb20gw6RyICIKKyJtYXJrZXJhZGUgYXR0IHRhcyBib3J0IGVsbGVyIHJlbnNhcyBpIGZpbGVuIEk8L3Zhci9saWIvZHBrZy9zdGF0dXM+IGF0dCB0YXMgIgorImJvcnQgcmVzcGVrdGl2ZSByZW5zYXMuIE9ic2VydmVyYTogZmV0IMOkciBtw7ZqbGlndCBhdHQgQjxkcGtnPiBpbnRlIGvDpG5uZXIgIgorInRpbGwgdmlzc2Ega29uZmlndXJhdGlvbnNmaWxlciBww6UgZ3J1bmQgYXYgYXR0IGRlIHNrYXBhcyBvY2ggaGFudGVyYXMgIgorInNlcGFyYXQgdmlhIGtvbmZpZ3VyYXRpb25zc2tyaXB0LiBJIHPDpSBmYWxsIGtvbW1lciBpbnRlIEI8ZHBrZz4gc2rDpGx2dCB0YSAiCisiYm9ydCBkZW0sIHV0YW4gcGFrZXRldHMgSTxwb3N0cm0+LXNrcmlwdCAoc29tIGFucm9wYXMgYXYgQjxkcGtnPikgbcOlc3RlIHRhICIKKyJoYW5kIG9tIGF0dCBkZSB0YXMgYm9ydCBuw6RyIHBha2V0ZXQgdGFzIGJvcnQgbWVkIEI8LS1wdXJnZT4uIERldHRhIGfDpGxsZXIgIgorIm5hdHVybGlndHZpcyBlbmRhc3QgZsO2ciBmaWxlciBpIHN5c3RlbWthdGFsb2dlcm5hLCBpbnRlIGtvbmZpZ3VyYXRpb25zZmlsZXIgIgorInNvbSBza3JpdnMgaSBlbnN0YWthIGFudsOkbmRhcmVzIGhlbWthdGFsb2dlci4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxNzEKK21zZ2lkICJSZW1vdmluZyBvZiBhIHBhY2thZ2UgY29uc2lzdHMgb2YgdGhlIGZvbGxvd2luZyBzdGVwczoiCittc2dzdHIgIkJvcnR0YWduaW5nIGF2IGV0dCBwYWtldCBiZXN0w6VyIGF2IGbDtmxqYW5kZSBzdGVnOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjE3NAorbXNnaWQgIkI8MS4+IFJ1biBJPHByZXJtPiBzY3JpcHQiCittc2dzdHIgIkI8MS4+IEvDtnIgSTxwcmVybT4tc2tyaXB0ZXQiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxNzcKK21zZ2lkICJCPDIuPiBSZW1vdmUgdGhlIGluc3RhbGxlZCBmaWxlcyIKK21zZ3N0ciAiQjwyLj4gVGEgYm9ydCBkZSBpbnN0YWxsZXJhZGUgZmlsZXJuYSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjE4MAorbXNnaWQgIkI8My4+IFJ1biBJPHBvc3RybT4gc2NyaXB0IgorbXNnc3RyICJCPDMuPiBLw7ZyIEk8cG9zdHJtPi1za3JpcHRldCIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToxODEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tdXBkYXRlLWF2YWlsPiwgQjwtLW1lcmdlLWF2YWlsPiBJPFBhY2thZ2VzLWZpbGU+IgorbXNnc3RyICJCPC0tdXBkYXRlLWF2YWlsPiwgQjwtLW1lcmdlLWF2YWlsPiBJPFBhY2thZ2VzLWZpbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToxOTAKK21zZ2lkICIiCisiVXBkYXRlIEI8ZHBrZz4ncyBhbmQgQjxkc2VsZWN0PidzIGlkZWEgb2Ygd2hpY2ggcGFja2FnZXMgYXJlIGF2YWlsYWJsZS4gV2l0aCAiCisiYWN0aW9uIEI8LS1tZXJnZS1hdmFpbD4sIG9sZCBpbmZvcm1hdGlvbiBpcyBjb21iaW5lZCB3aXRoIGluZm9ybWF0aW9uIGZyb20gIgorIkk8UGFja2FnZXMtZmlsZT4uIFdpdGggYWN0aW9uIEI8LS11cGRhdGUtYXZhaWw+LCBvbGQgaW5mb3JtYXRpb24gaXMgcmVwbGFjZWQgIgorIndpdGggdGhlIGluZm9ybWF0aW9uIGluIHRoZSBJPFBhY2thZ2VzLWZpbGU+LiBUaGUgSTxQYWNrYWdlcy1maWxlPiAiCisiZGlzdHJpYnV0ZWQgd2l0aCBEZWJpYW4gaXMgc2ltcGx5IG5hbWVkIEk8UGFja2FnZXM+LiBCPGRwa2c+IGtlZXBzIGl0cyAiCisicmVjb3JkIG9mIGF2YWlsYWJsZSBwYWNrYWdlcyBpbiBJPC92YXIvbGliL2Rwa2cvYXZhaWxhYmxlPi4iCittc2dzdHIgIiIKKyJVcHBkYXRlcmEgQjxkcGtnPnMgb2NoIEI8ZHNlbGVjdD5zIGxpc3RhIMO2dmVyIHZpbGthIHBha2V0IHNvbSBmaW5ucyAiCisidGlsbGfDpG5nbGlnYS4gTWVkIEI8LS1tZXJnZS1hdmFpbD4ga29tYmluZXJhcyBkZW4gZ2FtbGEgaW5mb3JtYXRpb25lbiBtZWQgIgorImluZm9ybWF0aW9uZW4gZnLDpW4gSTxQYWNrYWdlcy1maWxlbj4uIE1lZCBCPC0tdXBkYXRlLWF2YWlsPiBlcnPDpHR0cyBkZW4gIgorImdhbWxhIGluZm9ybWF0aW9uZW4gbWVkIGluZm9ybWF0aW9uZW4gZnLDpW4gSTxQYWNrYWdlcy1maWxlbj4uIEk8UGFja2FnZXMtIgorImZpbGVybmE+IHNvbSBtZWRmw7ZsamVyIERlYmlhbiBoZXRlciBoZWx0IGVua2VsdCBJPFBhY2thZ2VzPi4gQjxkcGtnPiAiCisiYmVow6VsbGVyIHNpbiBsaXN0YSDDtnZlciB0aWxsZ8OkbmdsaWdhIHBha2V0IGkgSTwvdmFyL2xpYi9kcGtnL2F2YWlsYWJsZT4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MTk1Cittc2dpZCAiIgorIkEgc2ltcGxlciBvbmUtc2hvdCBjb21tYW5kIHRvIHJldHJpZXZlIGFuZCB1cGRhdGUgdGhlIEk8YXZhaWxhYmxlPiBmaWxlIGlzICIKKyJCPGRzZWxlY3QgdXBkYXRlPi4gTm90ZSB0aGF0IHRoaXMgZmlsZSBpcyBtb3N0bHkgdXNlbGVzcyBpZiB5b3UgZG9uJ3QgdXNlICIKKyJCPGRzZWxlY3Q+IGJ1dCBhbiBBUFQtYmFzZWQgZnJvbnRlbmQ6IEFQVCBoYXMgaXRzIG93biBzeXN0ZW0gdG8ga2VlcCB0cmFjayAiCisib2YgYXZhaWxhYmxlIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorIkV0dCBsw6R0dGFyZSBlbmtlbGtvbW1hbmRvIGbDtnIgYXR0IGjDpG10YSBvY2ggdXBwZGF0ZXIgSTxhdmFpbGFibGU+LWZpbGVuIMOkciAiCisiQjxkc2VsZWN0IHVwZGF0ZT4uIE9ic2VydmVyYSBhdHQgZGVuIGjDpHIgZmlsZW4gaSBodXZ1ZHNhayDDpHIgb27DtmRpZyBvbSBkdSAiCisiYW52w6RuZGVyIGV0dCBBUFQtYmFzZXJhdCBza2FsIGlzdMOkbGxldCBmw7ZyIEI8ZHNlbGVjdD46IEFQVCBoYXIgZXR0IGVnZXQgIgorInN5c3RlbSBmw7ZyIGF0dCBow6VsbGEgcmVkYSBww6UgdGlsbGfDpG5nbGlnYSBwYWtldC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MTk1CisjLCBuby13cmFwCittc2dpZCAiQjwtQT4sIEI8LS1yZWNvcmQtYXZhaWw+IEk8cGFja2FnZS1maWxlPi4uLiIKK21zZ3N0ciAiQjwtQT4sIEI8LS1yZWNvcmQtYXZhaWw+IEk8cGFrZXRmaWw+IC4uLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjIwMQorbXNnaWQgIiIKKyJVcGRhdGUgQjxkcGtnPiBhbmQgQjxkc2VsZWN0PidzIGlkZWEgb2Ygd2hpY2ggcGFja2FnZXMgYXJlIGF2YWlsYWJsZSB3aXRoICIKKyJpbmZvcm1hdGlvbiBmcm9tIHRoZSBwYWNrYWdlIEk8cGFja2FnZS1maWxlPi4gSWYgQjwtLXJlY3Vyc2l2ZT4gb3IgQjwtUj4gIgorIm9wdGlvbiBpcyBzcGVjaWZpZWQsIEk8cGFja2FnZS1maWxlPiBtdXN0IHJlZmVyIHRvIGEgZGlyZWN0b3J5IGluc3RlYWQuIgorbXNnc3RyICIiCisiVXBwZGF0ZXJhIEI8ZHBrZz5zIG9jaCBCPGRzZWxlY3Q+cyBsaXN0YSDDtnZlciB2aWxrYSBwYWtldCBzb20gZmlubnMgIgorInRpbGxnw6RuZ2xpZ2EgbWVkIGluZm9ybWF0aW9uIGZyw6VuIHBha2V0ZXQgSTxwYWtldGZpbD4uIE9tIGZsYWdnYW4gQjwtLSIKKyJyZWN1cnNpdmU+IGVsbGVyIEI8LVI+IGFuZ2VzIG3DpXN0ZSBJPHBha2V0ZmlsPiBpc3TDpGxsZXQgdmFyYSBlbiBrYXRhbG9nLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToyMDEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tZm9yZ2V0LW9sZC11bmF2YWlsPiIKK21zZ3N0ciAiQjwtLWZvcmdldC1vbGQtdW5hdmFpbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyMDUKK21zZ2lkICIiCisiTm93IEI8b2Jzb2xldGU+IGFuZCBhIG5vLW9wIGFzIEI8ZHBrZz4gd2lsbCBhdXRvbWF0aWNhbGx5IGZvcmdldCB1bmluc3RhbGxlZCAiCisidW5hdmFpbGFibGUgcGFja2FnZXMuIgorbXNnc3RyICIiCisiRW4gbnVtZXJhIEI8ZsO2csOlbGRyYWQ+IGZsYWdnYSBzb20gaW50ZSB1dGbDtnIgbsOlZ29udGluZywgZMOlIEI8ZHBrZz4gIgorImF1dG9tYXRpc2t0IGdsw7ZtbWVyIGVqIGluc3RhbGxlcmFkZSBvY2ggZWogdGlsbGfDpG5nbGlnYSBwYWtldC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MjA1CisjLCBuby13cmFwCittc2dpZCAiQjwtLWNsZWFyLWF2YWlsPiIKK21zZ3N0ciAiQjwtLWNsZWFyLWF2YWlsPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjIwOAorbXNnaWQgIkVyYXNlIHRoZSBleGlzdGluZyBpbmZvcm1hdGlvbiBhYm91dCB3aGF0IHBhY2thZ2VzIGFyZSBhdmFpbGFibGUuIgorbXNnc3RyICJSYWRlcmEgZXhpc3RlcmFuZGUgaW5mb3JtYXRpb24gb20gdmlsa2EgcGFrZXQgc29tIMOkciB0aWxsZ8OkbmdsaWdhLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToyMDgKKyMsIG5vLXdyYXAKK21zZ2lkICIgQjwtQz4sIEI8LS1hdWRpdD4iCittc2dzdHIgIiBCPC1DPiwgQjwtLWF1ZGl0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjIxMworbXNnaWQgIiIKKyJTZWFyY2hlcyBmb3IgcGFja2FnZXMgdGhhdCBoYXZlIGJlZW4gaW5zdGFsbGVkIG9ubHkgcGFydGlhbGx5IG9uIHlvdXIgIgorInN5c3RlbS4gQjxkcGtnPiB3aWxsIHN1Z2dlc3Qgd2hhdCB0byBkbyB3aXRoIHRoZW0gdG8gZ2V0IHRoZW0gd29ya2luZy4iCittc2dzdHIgIiIKKyJTw7ZrZXIgZWZ0ZXIgcGFrZXQgc29tIGVuZGFzdCBpbnN0YWxsZXJhdHMgZGVsdmlzIHDDpSBkaXR0IHN5c3RlbS4gQjxkcGtnPiAiCisia29tbWVyIGF0dCBmw7ZyZXNsw6UgdmFkIHNvbSBiZWjDtnZlciBnw7ZyYXMgZsO2ciBhdHQgZsOlIGRlbSBhdHQgZnVuZ2VyYS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MjEzCisjLCBuby13cmFwCittc2dpZCAiQjwtLWdldC1zZWxlY3Rpb25zPiBbSTxwYWNrYWdlLW5hbWUtcGF0dGVybj4uLi5dIgorbXNnc3RyICJCPC0tZ2V0LXNlbGVjdGlvbnM+IFtJPHBha2V0bmFtbnNtw7Zuc3Rlcj4uLi5dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MjE4Cittc2dpZCAiIgorIkdldCBsaXN0IG9mIHBhY2thZ2Ugc2VsZWN0aW9ucywgYW5kIHdyaXRlIGl0IHRvIHN0ZG91dC4gV2l0aG91dCBhIHBhdHRlcm4sICIKKyJub24taW5zdGFsbGVkIHBhY2thZ2VzIChpLmUuIHRob3NlIHdoaWNoIGhhdmUgYmVlbiBwcmV2aW91c2x5IHB1cmdlZCkgIHdpbGwgIgorIm5vdCBiZSBzaG93bi4iCittc2dzdHIgIiIKKyJIw6RtdGEgZW4gbGlzdGEgw7Z2ZXIgcGFrZXR2YWwgb2NoIHNrcml2IGRlbiB0aWxsIHN0YW5kYXJkIHV0LiBQYWtldCBzb20gaW50ZSAiCisiw6RyIGluc3RhbGxlcmF0cyAoZHZzLiBkZSBzb20gdGlkaWdhcmUgaGVsdCBoYXIgdGFnaXRzIGJvcnQpIGtvbW1lciBpbnRlIGF0dCAiCisidmlzYXMgb20gaW50ZSBldHQgbcO2bnN0ZXIgYW5nZXMuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjIxOCB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6Mjk5CisjLCBuby13cmFwCittc2dpZCAiQjwtLXNldC1zZWxlY3Rpb25zPiIKK21zZ3N0ciAiQjwtLXNldC1zZWxlY3Rpb25zPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjIyNAorbXNnaWQgIiIKKyJTZXQgcGFja2FnZSBzZWxlY3Rpb25zIHVzaW5nIGZpbGUgcmVhZCBmcm9tIHN0ZGluLiBUaGlzIGZpbGUgc2hvdWxkIGJlIGluICIKKyJ0aGUgZm9ybWF0ICdJPHBhY2thZ2U+IEk8c3RhdGU+Jywgd2hlcmUgc3RhdGUgaXMgb25lIG9mIEI8aW5zdGFsbD4sIEI8aG9sZD4sICIKKyJCPGRlaW5zdGFsbD4gb3IgQjxwdXJnZT4uIEJsYW5rIGxpbmVzIGFuZCBjb21tZW50IGxpbmVzIGJlZ2lubmluZyB3aXRoICcjJyAiCisiYXJlIGFsc28gcGVybWl0dGVkLiIKK21zZ3N0ciAiIgorIlPDpHR0IHBha2V0dmFsc2xpc3RhbiBtZWQgZGVuIGZpbCBzb20gbMOkc2VzIGZyw6VuIHN0YW5kYXJkIGluLiBGaWxlbiBtw6VzdGUgIgorInZhcmEgcMOlIGZvcm1hdGV0IFwiSTxwYWtldD4gSTxzdGF0dXM+XCIsIGTDpHIgc3RhdHVzIMOkciBlbiBhdiBCPGluc3RhbGw+LCAiCisiQjxob2xkPiwgQjxkZWluc3RhbGw+IGVsbGVyIEI8cHVyZ2U+LiBUb21yYWRlciBvY2gga29tbWVudGFyc3JhZGVyIHNvbSAiCisiYsO2cmphciBtZWQgXCIjXCIgw6RyIG9ja3PDpSB0aWxsw6V0bmEuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjIyNAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1jbGVhci1zZWxlY3Rpb25zPiIKK21zZ3N0ciAiQjwtLWNsZWFyLXNlbGVjdGlvbnM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MjI5Cittc2dpZCAiIgorIlNldCB0aGUgcmVxdWVzdGVkIHN0YXRlIG9mIGV2ZXJ5IG5vbi1lc3NlbnRpYWwgcGFja2FnZSB0byBkZWluc3RhbGwuICBUaGlzICIKKyJpcyBpbnRlbmRlZCB0byBiZSB1c2VkIGltbWVkaWF0ZWx5IGJlZm9yZSAtLXNldC1zZWxlY3Rpb25zLCB0byBkZWluc3RhbGwgYW55ICIKKyJwYWNrYWdlcyBub3QgaW4gbGlzdCBnaXZlbiB0byAtLXNldC1zZWxlY3Rpb25zLiIKK21zZ3N0ciAiIgorIlPDpHR0IGRldCDDtm5za2FkZSB0aWxsc3TDpW5kZXRlIGbDtnIgdmFyamUgaWNrZS1ncnVuZGzDpGdnYW5kZSBwYWtldCB0aWxsICIKKyJhdmluc3RhbGxlcmEuIERldHRhIMOkciBhdnNldHQgYXR0IGFudsOkbmRhcyBkaXJla3QgZsO2cmUgLS1zZXQtc2VsZWN0aW9ucywgZsO2ciAiCisiYXR0IGF2aW5zdGFsbGVyYSBhbGxhIHBha2V0IHNvbSBpbnRlIGZpbm5zIG1lZCBpIGxpc3RhbiBzb20gYW5nZXMgYXYgLS1zZXQtIgorInNlbGVjdGlvbnMuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjIyOQorIywgbm8td3JhcAorbXNnaWQgIkI8LS15ZXQtdG8tdW5wYWNrPiIKK21zZ3N0ciAiQjwtLXlldC10by11bnBhY2s+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MjMzCittc2dpZCAiIgorIlNlYXJjaGVzIGZvciBwYWNrYWdlcyBzZWxlY3RlZCBmb3IgaW5zdGFsbGF0aW9uLCBidXQgd2hpY2ggZm9yIHNvbWUgcmVhc29uICIKKyJzdGlsbCBoYXZlbid0IGJlZW4gaW5zdGFsbGVkLiIKK21zZ3N0ciAiIgorIlPDtmtlciBlZnRlciBwYWtldCBzb20gbWFya2VyYXRzIGbDtnIgaW5zdGFsbGF0aW9uIG1lbiBzb20gYXYgbsOlZ29uIGFubGVkbmluZyAiCisiw6RubnUgaW50ZSBoYXIgaW5zdGFsbGVyYXRzLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToyMzQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tcHJpbnQtYXJjaGl0ZWN0dXJlPiIKK21zZ3N0ciAiQjwtLXByaW50LWFyY2hpdGVjdHVyZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyMzcKK21zZ2lkICIiCisiUHJpbnQgYXJjaGl0ZWN0dXJlIG9mIHBhY2thZ2VzIEI8ZHBrZz4gaW5zdGFsbHMgKGZvciBleGFtcGxlLCBcImkzODZcIikuIgorbXNnc3RyICIiCisiVmlzYSBhcmtpdGVrdHVyIGbDtnIgcGFrZXRlbiBCPGRwa2c+IGluc3RhbGxlcmFyICh0aWxsIGV4ZW1wZWwgXCJpMzg2XCIpLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToyMzcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tY29tcGFyZS12ZXJzaW9ucyA+STx2ZXIxIG9wIHZlcjI+IgorbXNnc3RyICJCPC0tY29tcGFyZS12ZXJzaW9ucyA+STx2ZXIxIG9wIHZlcjI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MjQ4Cittc2dpZCAiIgorIkNvbXBhcmUgdmVyc2lvbiBudW1iZXJzLCB3aGVyZSBJPG9wPiBpcyBhIGJpbmFyeSBvcGVyYXRvci4gQjxkcGtnPiByZXR1cm5zICIKKyJzdWNjZXNzICh6ZXJvIHJlc3VsdCkgaWYgdGhlIHNwZWNpZmllZCBjb25kaXRpb24gaXMgc2F0aXNmaWVkLCBhbmQgZmFpbHVyZSAiCisiKG5vbnplcm8gcmVzdWx0KSBvdGhlcndpc2UuIFRoZXJlIGFyZSB0d28gZ3JvdXBzIG9mIG9wZXJhdG9ycywgd2hpY2ggZGlmZmVyICIKKyJpbiBob3cgdGhleSB0cmVhdCBhbiBlbXB0eSBJPHZlcjE+IG9yIEk8dmVyMj4uIFRoZXNlIHRyZWF0IGFuIGVtcHR5IHZlcnNpb24gIgorImFzIGVhcmxpZXIgdGhhbiBhbnkgdmVyc2lvbjogQjxsdCBsZSBlcSBuZSBnZSBndD4uIFRoZXNlIHRyZWF0IGFuIGVtcHR5ICIKKyJ2ZXJzaW9uIGFzIGxhdGVyIHRoYW4gYW55IHZlcnNpb246IEI8bHQtbmwgbGUtbmwgZ2UtbmwgZ3Qtbmw+LiBUaGVzZSBhcmUgIgorInByb3ZpZGVkIG9ubHkgZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBjb250cm9sIGZpbGUgc3ludGF4OiBCPEU8bHQ+IEU8bHQ+RTxsdD4gIgorIkU8bHQ+PSA9IEU8Z3Q+PSBFPGd0PkU8Z3Q+IEU8Z3Q+Pi4iCittc2dzdHIgIiIKKyJKw6RtZsO2ciB2ZXJzaW9uc251bW1lciwgZMOkciBJPG9wPiDDpHIgZW4gYmluw6RyIG9wZXJhdG9yLiBCPGRwa2c+IHJldHVybmVyYXIgIgorImZyYW1nw6VuZyAobm9sbCkgb20gZGV0IGFuZ2l2bmEgdsOkcmRldCB1cHBmeWxscywgb2NoIG1pc3NseWNrYW5kZSAoaWNrZS1ub2xsKSAiCisiaSBhbm5hdCBmYWxsLiBEZXQgZmlubnMgdHbDpSBncnVwcGVyIG9wZXJhdG9yZXIsIHZpbGthIGVuZGFzdCBza2lsamVyIHNpZyBpICIKKyJodXIgZGUgaGFudGVyYXIgbsOkciBJPHZlcjE+IGVsbGVyIEk8dmVyMj4gw6RyIHRvbS4gRGVzc2EgaGFudGVyYXIgdG9tIHZlcnNpb24gIgorInNvbSBvbSBkZW4gw6RyIHRpZGlnYXJlIMOkbiBhbGxhIGFuZHJhIHZlcnNpb25lcjogQjxsdCBsZSBlcSBuZSBnZSBndD4uIERlc3NhICIKKyJoYW50ZXJhciB0b20gdmVyc2lvbiBzb20gb20gZGVuIMOkciBzZW5hcmUgw6RuIGFsbGEgYW5kcmEgdmVyc2lvbmVyOiBCPGx0LW5sICIKKyJsZS1ubCBnZS1ubCBndC1ubD4uIERlc3NhIHRpbGxoYW5kYWjDpWxscyBlbmRhc3QgZsO2ciBrb21wYXRpYmlsaXRldCBtZWQgIgorInN0eXJmaWxzc3ludGF4ZW46IEI8RTxsdD4gRTxsdD5FPGx0PiBFPGx0Pj0gPSBFPGd0Pj0gRTxndD5FPGd0PiBFPGd0Pj4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjI0OAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1jb21tYW5kLWZkID5JPG4+IgorbXNnc3RyICJCPC0tY29tbWFuZC1mZCA+STxuPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjI1MworbXNnaWQgIiIKKyJBY2NlcHQgYSBzZXJpZXMgb2YgY29tbWFuZHMgb24gaW5wdXQgZmlsZSBkZXNjcmlwdG9yIEk8bj4uIE5vdGU6IGFkZGl0aW9uYWwgIgorIm9wdGlvbnMgc2V0IG9uIHRoZSBjb21tYW5kIGxpbmUsIGFuZCB0aHJvdWdoIHRoaXMgZmlsZSBkZXNjcmlwdG9yLCBhcmUgbm90ICIKKyJyZXNldCBmb3Igc3Vic2VxdWVudCBjb21tYW5kcyBleGVjdXRlZCBkdXJpbmcgdGhlIHNhbWUgcnVuLiIKK21zZ3N0ciAiIgorIkzDpHNlciBlbiBmw7ZsamQgYXYga29tbWFuZG9uIGZyw6VuIGluZGF0YWZpbGhhbmR0YWcgSTxuPi4gT2JzZXJ2ZXJhOiAiCisieXR0ZXJsaWdhcmUgZmxhZ2dvciBzb20gc8OkdHRzIHDDpSBrb21tYW5kb3JhZGVuLCBvY2ggZ2Vub20gZmlsaGFuZHRhZ2V0LCAiCisiw6V0ZXJzdMOkbGxzIGludGUgZsO2ciBrb21tYW5kb24gc29tIGvDtnJzIGkgZW4gZsO2bGpkIHVuZGVyIHNhbW1hIGvDtnJuaW5nLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToyNTMgZHBrZy1hcmNoaXRlY3R1cmUuMTo2MCBkcGtnLWJ1aWxkZmxhZ3MuMTo4OSBkcGtnLWRpdmVydC44OjcxCisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjM4IGRwa2ctc2NhbnNvdXJjZXMuMTo2NiBkcGtnLXN0YXRvdmVycmlkZS44OjQ0CisjOiBkcGtnLXZlbmRvci4xOjI4IGRzZWxlY3QuMToxMTMgdXBkYXRlLWFsdGVybmF0aXZlcy44OjMxNgorIywgbm8td3JhcAorbXNnaWQgIkI8LS1oZWxwPiIKK21zZ3N0ciAiQjwtLWhlbHA+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MjU2Cittc2dpZCAiRGlzcGxheSBhIGJyaWVmIGhlbHAgbWVzc2FnZS4iCittc2dzdHIgIlZpc2FyIGVuIGtvcnRmYXR0YWQgaGrDpGxwdGV4dC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MjU2CisjLCBuby13cmFwCittc2dpZCAiQjwtLWZvcmNlLWhlbHA+IgorbXNnc3RyICJCPC0tZm9yY2UtaGVscD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyNTkKK21zZ2lkICJHaXZlIGhlbHAgYWJvdXQgdGhlIEI8LS1mb3JjZS0+STx0aGluZz4gb3B0aW9ucy4iCittc2dzdHIgIkdldCBoasOkbHAgb20gQjwtLWZvcmNlLT5JPG7DpW50aW5nPi1mbGFnZ29ybmEuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjI1OQorIywgbm8td3JhcAorbXNnaWQgIkI8LURoPiwgQjwtLWRlYnVnPWhlbHA+IgorbXNnc3RyICJCPC1EaD4sIEI8LS1kZWJ1Zz1oZWxwPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjI2MgorbXNnaWQgIkdpdmUgaGVscCBhYm91dCBkZWJ1Z2dpbmcgb3B0aW9ucy4iCittc2dzdHIgIkdlciBoasOkbHAgb20gZmVsc8O2a25pbmdzZmxhZ2dvcm5hLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMToyNjIgZHBrZy1hcmNoaXRlY3R1cmUuMTo2MyBkcGtnLWJ1aWxkZmxhZ3MuMTo5MgorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMjYgZHBrZy1jaGVja2J1aWxkZGVwcy4xOjM2IGRwa2ctZGlzdGFkZGZpbGUuMTozNQorIzogZHBrZy1kZWIuMToxNzUgZHBrZy1kaXZlcnQuODo3NCBkcGtnLWdlbmNoYW5nZXMuMToxMzQgZHBrZy1nZW5jb250cm9sLjE6MTI0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0NDYgZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTo0MSBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MzYKKyM6IGRwa2ctcXVlcnkuMToxMTMgZHBrZy1zY2FucGFja2FnZXMuMTo5OSBkcGtnLXNjYW5zb3VyY2VzLjE6NjgKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjE4IGRwa2ctc291cmNlLjE6OTkgZHBrZy1zcGxpdC4xOjEyOQorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo0NyBkcGtnLXRyaWdnZXIuMTozNCBkcGtnLXZlbmRvci4xOjMxIGRzZWxlY3QuMToxMTYKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMTkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tdmVyc2lvbj4iCittc2dzdHIgIkI8LS12ZXJzaW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjI2NQorbXNnaWQgIkRpc3BsYXkgQjxkcGtnPiB2ZXJzaW9uIGluZm9ybWF0aW9uLiIKK21zZ3N0ciAiVmlzYXIgQjxkcGtnPnMgdmVyc2lvbnNpbmZvcm1hdGlvbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MjY1CisjLCBuby13cmFwCittc2dpZCAiQjxkcGtnLWRlYiBhY3Rpb25zPiIKK21zZ3N0ciAiQjxkcGtnLWRlYi3DpXRnw6RyZGVyPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjI2OAorbXNnaWQgIlNlZSBCPGRwa2ctZGViPigxKSBmb3IgbW9yZSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgZm9sbG93aW5nIGFjdGlvbnMuIgorbXNnc3RyICJTZSBCPGRwa2ctZGViPigxKSBmw7ZyIHl0dGVybGlnYXJlIGluZm9ybWF0aW9uIG9tIGbDtmxqYW5kZSDDpXRnw6RyZGVyOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjI4OAorIywgbm8td3JhcAorbXNnaWQgIiIKKyJCPC1iPiwgQjwtLWJ1aWxkPiBJPGRpcmVjdG9yeT4gW0k8YXJjaGl2ZT58STxkaXJlY3Rvcnk+XVxuIgorIiAgICBCdWlsZCBhIGRlYiBwYWNrYWdlLlxuIgorIkI8LWM+LCBCPC0tY29udGVudHM+IEk8YXJjaGl2ZT5cbiIKKyIgICAgTGlzdCBjb250ZW50cyBvZiBhIGRlYiBwYWNrYWdlLlxuIgorIkI8LWU+LCBCPC0tY29udHJvbD4gSTxmaWxlbmFtZT4gW0k8ZGlyZWN0b3J5Pl1cbiIKKyIgICAgRXh0cmFjdCBjb250cm9sLWluZm9ybWF0aW9uIGZyb20gYSBwYWNrYWdlLlxuIgorIkI8LXg+LCBCPC0tZXh0cmFjdD4gSTxhcmNoaXZlIGRpcmVjdG9yeT5cbiIKKyIgICAgRXh0cmFjdCB0aGUgZmlsZXMgY29udGFpbmVkIGJ5IHBhY2thZ2UuXG4iCisiQjwtWD4sIEI8LS12ZXh0cmFjdD4gSTxhcmNoaXZlIGRpcmVjdG9yeT5cbiIKKyIgICAgRXh0cmFjdCBhbmQgZGlzcGxheSB0aGUgZmlsZW5hbWVzIGNvbnRhaW5lZCBieSBhXG4iCisiICAgIHBhY2thZ2UuXG4iCisiQjwtZj4sIEI8LS1maWVsZD4gIEk8YXJjaGl2ZT4gW0k8Y29udHJvbC1maWVsZD4uLi5dXG4iCisiICAgIERpc3BsYXkgY29udHJvbCBmaWVsZChzKSBvZiBhIHBhY2thZ2UuXG4iCisiQjwtLWZzeXMtdGFyZmlsZT4gSTxhcmNoaXZlPlxuIgorIiAgICBEaXNwbGF5IHRoZSBmaWxlc3lzdGVtIHRhci1maWxlIGNvbnRhaW5lZCBieSBhXG4iCisiICAgIERlYmlhbiBwYWNrYWdlLlxuIgorIkI8LUk+LCBCPC0taW5mbz4gSTxhcmNoaXZlPiBbSTxjb250cm9sLWZpbGU+Li4uXVxuIgorIiAgICBTaG93IGluZm9ybWF0aW9uIGFib3V0IGEgcGFja2FnZS5cbiIKK21zZ3N0ciAiIgorIkI8LWI+LCBCPC0tYnVpbGQ+IEk8a2F0YWxvZz4gW0k8YXJraXY+fEk8ZmlsbmFtbj5dXG4iCisiICAgIEJ5Z2cgZXR0IGRlYi1wYWtldC5cbiIKKyJCPC1jPiwgQjwtLWNvbnRlbnRzPiBJPGFya2l2PlxuIgorIiAgICBWaXNhciBpbm5laMOlbGxldCBpIGV0dCBkZWItcGFrZXQuXG4iCisiQjwtZT4sIEI8LS1jb250cm9sPiBJPGZpbG5hbW4+IFtJPGthdGFsb2c+XVxuIgorIiAgICBFeHRyYWhlcmFyIHN0eXJpbmZvcm1hdGlvbiBmcsOlbiBldHQgcGFrZXQuXG4iCisiQjwteD4sIEI8LS1leHRyYWN0PiBJPGFya2l2a2F0YWxvZz5cbiIKKyIgICAgRXh0cmFoZXJhciBmaWxlcm5hIGZyw6VuIGV0dCBwYWtldC5cbiIKKyJCPC1YPiwgQjwtLXZleHRyYWN0PiBJPGFya2l2a2F0YWxvZz5cbiIKKyIgICAgRXh0cmFoZXJhciBvY2ggdmlzYXIgZmlsbmFtbmVuIGkgZXR0IHBha2V0LlxuIgorIkI8LWY+LCBCPC0tZmllbGQ+ICBJPGFya2l2PiBbSTxjb250cm9sLWbDpGx0Pl0gLi4uXG4iCisiICAgIFZpc2FyIGbDpGx0IGZyw6VuIHBha2V0ZXRzIHN0eXJmaWwgKGNvbnRyb2wpLlxuIgorIkI8LS1mc3lzLXRhcmZpbGU+IEk8YXJraXY+XG4iCisiICAgIFZpc2FyIGZpbHN5c3RlbXMtdGFyZmlsZW4gaSBEZWJpYW5wYWtldGV0LlxuIgorIkI8LUk+IHwgQjwtLWluZm8+IEk8YXJraXY+IFtJPGNvbnRyb2wtZmlsPl1cbiIKKyIgICAgVmlzYSBpbmZvcm1hdGlvbiBvbSBldHQgcGFrZXQuXG4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MjkwCisjLCBuby13cmFwCittc2dpZCAiQjxkcGtnLXF1ZXJ5IGFjdGlvbnM+IgorbXNnc3RyICJCPGRwa2ctcXVlcnktw6V0Z8OkcmRlcj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMToyOTMKK21zZ2lkICJTZWUgQjxkcGtnLXF1ZXJ5PigxKSBmb3IgbW9yZSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgZm9sbG93aW5nIGFjdGlvbnMuIgorbXNnc3RyICJTZSBCPGRwa2ctcXVlcnk+KDEpIGbDtnIgeXR0ZXJsaWdhcmUgaW5mb3JtYXRpb24gb20gZsO2bGphbmRlIMOldGfDpHJkZXI6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzA4CisjLCBuby13cmFwCittc2dpZCAiIgorIkI8LWw+LCBCPC0tbGlzdD4gSTxwYWNrYWdlLW5hbWUtcGF0dGVybj4uLi5cbiIKKyIgICAgTGlzdCBwYWNrYWdlcyBtYXRjaGluZyBnaXZlbiBwYXR0ZXJuLlxuIgorIkI8LXM+LCBCPC0tc3RhdHVzPiBJPHBhY2thZ2UtbmFtZT4uLi5cbiIKKyIgICAgUmVwb3J0IHN0YXR1cyBvZiBzcGVjaWZpZWQgcGFja2FnZS5cbiIKKyJCPC1MPiwgQjwtLWxpc3RmaWxlcz4gSTxwYWNrYWdlLW5hbWU+Li4uXG4iCisiICAgIExpc3QgZmlsZXMgaW5zdGFsbGVkIHRvIHlvdXIgc3lzdGVtIGZyb20gSTxwYWNrYWdlLW5hbWU+LlxuIgorIkI8LVM+LCBCPC0tc2VhcmNoPiBJPGZpbGVuYW1lLXNlYXJjaC1wYXR0ZXJuPi4uLlxuIgorIiAgICBTZWFyY2ggZm9yIGEgZmlsZW5hbWUgZnJvbSBpbnN0YWxsZWQgcGFja2FnZXMuXG4iCisiQjwtcD4sIEI8LS1wcmludC1hdmFpbD4gSTxwYWNrYWdlLW5hbWU+Li4uXG4iCisiICAgIERpc3BsYXkgZGV0YWlscyBhYm91dCBJPHBhY2thZ2UtbmFtZT4sIGFzIGZvdW5kIGluXG4iCisiICAgIEk8L3Zhci9saWIvZHBrZy9hdmFpbGFibGU+LiBVc2VycyBvZiBBUFQtYmFzZWQgZnJvbnRlbmRzXG4iCisiICAgIHNob3VsZCB1c2UgQjxhcHQtY2FjaGUgc2hvdz4gSTxwYWNrYWdlLW5hbWU+IGluc3RlYWQuXG4iCittc2dzdHIgIiIKKyJCPC1sPiwgQjwtLWxpc3Q+IEk8cGFrZXRuYW1uc23Dtm5zdGVyPiAuLi5cbiIKKyIgICAgTGlzdGEgcGFrZXQgc29tIG1hdGNoYXIgZGV0IGdpdm5hIG3Dtm5zdHJldC5cbiIKKyJCPC1zPiwgQjwtLXN0YXR1cz4gSTxwYWtldG5hbW4+IC4uLlxuIgorIiAgICBSYXBwb3J0ZXJhIHN0YXR1cyBvbSBkZXQgYW5naXZuYSBwYWtldGV0LlxuIgorIkI8LUw+LCBCPC0tbGlzdGZpbGVzPiBJPHBha2V0bmFtbj4gLi4uXG4iCisiICAgIExpc3RhIGZpbGVyIHNvbSBpbnN0YWxsZXJhdHMgcMOlIGRpdHQgc3lzdGVtIGZyw6VuIEk8cGFrZXRuYW1uPi5cbiIKKyJCPC1TPiwgQjwtLXNlYXJjaD4gSTxmaWxuYW1uc3PDtmttw7Zuc3Rlcj4gLi4uXG4iCisiICAgIFPDtmsgZWZ0ZXIgZmlsbmFtbmV0IGJsYW5kIGRlIGluc3RhbGxlcmFkZSBwYWtldGVuLlxuIgorIkI8LXA+LCBCPC0tcHJpbnQtYXZhaWw+IEk8cGFrZXRuYW1uPlxuIgorIiAgICBWaXNhIGRldGFsamVyIG9tIEk8cGFrZXRuYW1uPiwgc29tIGkgSTwvdmFyL2xpYi9kcGtnL2F2YWlsYWJsZS8+LiAgICBEZSBzb20gYW52w6RuZGVyIEFQVC1iYXNlcmFkZSBza2FsIGLDtnIgaSBzdMOkbGxldCBhbnbDpG5kYSAgICBCPGFwdC1jYWNoZSBzaG93PiBJPHBha2V0bmFtbj4uXG4iCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLjE6MzEwIGRwa2ctYXJjaGl0ZWN0dXJlLjE6NjcgZHBrZy1idWlsZHBhY2thZ2UuMTo1MAorIzogZHBrZy1jaGVja2J1aWxkZGVwcy4xOjE4IGRwa2ctZGlzdGFkZGZpbGUuMToyNyBkcGtnLWRlYi4xOjE3OQorIzogZHBrZy1kaXZlcnQuODo0MiBkcGtnLWdlbmNoYW5nZXMuMToxNyBkcGtnLWdlbmNvbnRyb2wuMTozNworIzogZHBrZy1nZW5zeW1ib2xzLjE6MzY5IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6MjcgZHBrZy1uYW1lLjE6MzAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxNSBkcGtnLXF1ZXJ5LjE6MTE3IGRwa2ctc2NhbnBhY2thZ2VzLjE6NzEKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMTo0NCBkcGtnLXNobGliZGVwcy4xOjEwNiBkcGtnLXNwbGl0LjE6MTMzCisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjUxIGRwa2ctdHJpZ2dlci4xOjM4IGRwa2ctdmVuZG9yLjE6MzUgZHNlbGVjdC4xOjM2CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjEwMyB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzIzCisjLCBuby13cmFwCittc2dpZCAiT1BUSU9OUyIKK21zZ3N0ciAiRkxBR0dPUiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjMxNgorbXNnaWQgIiIKKyJBbGwgb3B0aW9ucyBjYW4gYmUgc3BlY2lmaWVkIGJvdGggb24gdGhlIGNvbW1hbmQgbGluZSBhbmQgaW4gdGhlIEI8ZHBrZz4gIgorImNvbmZpZ3VyYXRpb24gZmlsZSBJPC9ldGMvZHBrZy9kcGtnLmNmZz4gb3IgdGhlIGZpbGVzIG9uIHRoZSBjb25maWd1cmF0aW9uICIKKyJkaXJlY3RvcnkgSTwvZXRjL2Rwa2cvZHBrZy5jZmcuZC8+LiBFYWNoIGxpbmUgaW4gdGhlIGNvbmZpZ3VyYXRpb24gZmlsZSBpcyAiCisiZWl0aGVyIGFuIG9wdGlvbiAoZXhhY3RseSB0aGUgc2FtZSBhcyB0aGUgY29tbWFuZCBsaW5lIG9wdGlvbiBidXQgd2l0aG91dCAiCisibGVhZGluZyBkYXNoZXMpIG9yIGEgY29tbWVudCAoaWYgaXQgc3RhcnRzIHdpdGggYSBCPCM+KS4iCittc2dzdHIgIiIKKyJBbGxhIGZsYWdnb3JuYSBrYW4gZ2VzIGLDpWRlIHDDpSBrb21tYW5kb3JhZGVuIG9jaCBpIEI8ZHBrZz5zICIKKyJrb25maWd1cmF0aW9uc2ZpbCBJPC9ldGMvZHBrZy9kcGtnLmNmZz4gZWxsZXIgZmlsZXJuYSBpICIKKyJrb25maWd1cmF0aW9uc2thdGFsb2dlbiBJPC9ldGMvZHBrZy9kcGtnLmNmZy5kLz4uIEVuIHJhZCBpICIKKyJrb25maWd1cmF0aW9uc2ZpbGVuIMOkciBhbnRpbmdlbiBlbiBmbGFnZ2EgKHByZWNpcyBzYW1tYSBzb20gcMOlICIKKyJrb21tYW5kb3JhZGVuLCBtZW4gdXRhbiBpbmxlZGFuZGUgYmluZGVzdHJlY2spIGVsbGVyIGVuIGtvbW1lbnRhciAob20gZGVuICIKKyJiw7ZyamFyIG1lZCBldHQgQjwjPikuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjMxNworIywgbm8td3JhcAorbXNnaWQgIkI8LS1hYm9ydC1hZnRlcj0+STxudW1iZXI+IgorbXNnc3RyICJCPC0tYWJvcnQtYWZ0ZXI9Pkk8YW50YWw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzIwCittc2dpZCAiQ2hhbmdlIGFmdGVyIGhvdyBtYW55IGVycm9ycyBCPGRwa2c+IHdpbGwgYWJvcnQuIFRoZSBkZWZhdWx0IGlzIDUwLiIKK21zZ3N0ciAiU3TDpGxsZXIgaW4gZWZ0ZXIgaHVyIG3DpW5nYSBmZWwgQjxkcGtnPiBza2FsbCBhdmJyeXRhLiBGw7ZydmFsZXQgw6RyIDUwLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTozMjAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1CPiwgQjwtLWF1dG8tZGVjb25maWd1cmU+IgorbXNnc3RyICJCPC1CPiwgQjwtLWF1dG8tZGVjb25maWd1cmU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzI2Cittc2dpZCAiIgorIldoZW4gYSBwYWNrYWdlIGlzIHJlbW92ZWQsIHRoZXJlIGlzIGEgcG9zc2liaWxpdHkgdGhhdCBhbm90aGVyIGluc3RhbGxlZCAiCisicGFja2FnZSBkZXBlbmRlZCBvbiB0aGUgcmVtb3ZlZCBwYWNrYWdlLiBTcGVjaWZ5aW5nIHRoaXMgb3B0aW9uIHdpbGwgY2F1c2UgIgorImF1dG9tYXRpYyBkZWNvbmZpZ3VyYXRpb24gb2YgdGhlIHBhY2thZ2Ugd2hpY2ggZGVwZW5kZWQgb24gdGhlIHJlbW92ZWQgIgorInBhY2thZ2UuIgorbXNnc3RyICIiCisiTsOkciBldHQgcGFrZXQgdGFzIGJvcnQgw6RyIGRldCBtw7ZqbGlndCBhdHQgZXR0IGFubmF0IHBha2V0IGJlcm9yIHDDpSBkZXQgIgorImJvcnR0YWduYSBwYWtldGV0LiBPbSBkdSBhbmdlciBmbGFnZ2FuIGtvbW1lciBkZSBwYWtldCBzb20gYmVyb3IgcMOlIGRldCAiCisiYm9ydHRhZ25hIHBha2V0ZXQgYXV0b21hdGlza3QgYXR0IGF2a29uZmlndXJlcmFzLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTozMjYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1EPkk8b2N0YWw+QjwsIC0tZGVidWc9Pkk8b2N0YWw+IgorbXNnc3RyICJCPC1EPkk8b2t0YWx2w6RyZGU+QjwsIC0tZGVidWc9Pkk8b2t0YWx2w6RyZGU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzMyCittc2dpZCAiIgorIlN3aXRjaCBkZWJ1Z2dpbmcgb24uIEk8b2N0YWw+IGlzIGZvcm1lZCBieSBiaXR3aXNlLW9ycmluZyBkZXNpcmVkIHZhbHVlcyAiCisidG9nZXRoZXIgZnJvbSB0aGUgbGlzdCBiZWxvdyAobm90ZSB0aGF0IHRoZXNlIHZhbHVlcyBtYXkgY2hhbmdlIGluIGZ1dHVyZSAiCisicmVsZWFzZXMpLiBCPC1EaD4gb3IgQjwtLWRlYnVnPWhlbHA+IGRpc3BsYXkgdGhlc2UgZGVidWdnaW5nIHZhbHVlcy4iCittc2dzdHIgIiIKKyJBa3RpdmVyYXIgZmVsc8O2a25pbmcuIEk8b2t0YWx2w6RyZGU+dCBza2FwYXMgZ2Vub20gYXR0IHV0ZsO2cmEgYml0dmlzIGxvZ2lzayAiCisiXCJlbGxlclwiIGF2IGRlIMO2bnNrYWRlIHbDpHJkZW5hIGZyw6VuIGxpc3RhbiBuZWRhbiAob2JzZXJ2ZXJhIGF0dCBkZXNzYSAiCisidsOkcmRlbiBrYW4gw6RuZHJhcyBpIGZyYW10aWRhIHZlcnNpb25lcikuIEI8LURoPiBlbGxlciBCPC0tZGVidWc9aGVscD4gdmlzYXIgIgorImRlc3NhIGZlbHPDtmtuaW5nc3bDpHJkZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzQ3CisjLCBuby13cmFwCittc2dpZCAiIgorIiAgICBOdW1iZXIgICBEZXNjcmlwdGlvblxuIgorIiAgICAgICAgIDEgICBHZW5lcmFsbHkgaGVscGZ1bCBwcm9ncmVzcyBpbmZvcm1hdGlvblxuIgorIiAgICAgICAgIDIgICBJbnZvY2F0aW9uIGFuZCBzdGF0dXMgb2YgbWFpbnRhaW5lciBzY3JpcHRzXG4iCisiICAgICAgICAxMCAgIE91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZFxuIgorIiAgICAgICAxMDAgICBMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZFxuIgorIiAgICAgICAgMjAgICBPdXRwdXQgZm9yIGVhY2ggY29uZmlndXJhdGlvbiBmaWxlXG4iCisiICAgICAgIDIwMCAgIExvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZVxuIgorIiAgICAgICAgNDAgICBEZXBlbmRlbmNpZXMgYW5kIGNvbmZsaWN0c1xuIgorIiAgICAgICA0MDAgICBMb3RzIG9mIGRlcGVuZGVuY2llcy9jb25mbGljdHMgb3V0cHV0XG4iCisiICAgICAxMDAwMCAgIFRyaWdnZXIgYWN0aXZhdGlvbiBhbmQgcHJvY2Vzc2luZ1xuIgorIiAgICAgMjAwMDAgICBMb3RzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnNcbiIKKyIgICAgIDQwMDAwICAgU2lsbHkgYW1vdW50cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzXG4iCisiICAgICAgMTAwMCAgIExvdHMgb2YgZHJpdmVsIGFib3V0IGUuZy4gdGhlIGRwa2cvaW5mbyBkaXJcbiIKKyIgICAgICAyMDAwICAgSW5zYW5lIGFtb3VudHMgb2YgZHJpdmVsXG4iCittc2dzdHIgIiIKKyIgICAgVGFsICAgQmVza3Jpdm5pbmdcbiIKKyIgICAgICAxICAgQWxsbcOkbnQgaGrDpGxwc2FtIGbDtnJsb3Bwc2luZm9ybWF0aW9uXG4iCisiICAgICAgMiAgIEFucm9wIG9jaCBzdGF0dXMgZsO2ciB1dHZlY2tsYXJza3JpcHRcbiIKKyIgICAgIDEwICAgVXRkYXRhIGbDtnIgdmFyamUgZmlsIHNvbSBoYW50ZXJhc1xuIgorIiAgICAxMDAgICBNYXNzdmlzIG1lZCB1dGRhdGEgZsO2ciB2YXJqZSBmaWwgc29tIGhhbnRlcmFzXG4iCisiICAgICAyMCAgIFV0ZGF0YSBmw7ZyIHZhcmplIGtvbmZpZ3VyYXRpb25zZmlsXG4iCisiICAgIDIwMCAgIE1hc3N2aXMgbWVkIHV0ZGF0YSBmw7ZyIHZhcmplIGtvbmZpZ3VyYXRpb25zZmlsXG4iCisiICAgICA0MCAgIEJlcm9lbmRlbiBvY2gga29uZmxpa3RlclxuIgorIiAgICA0MDAgICBNYXNzdmlzIGF2IGJlcm9lbmRlLS9rb25mbGlrdHV0ZGF0YVxuIgorIiAgMTAwMDAgICBBa3RpdmVyaW5nIG9jaCBoYW50ZXJpbmcgYXYgdXRsw7ZzYXJlXG4iCisiICAyMDAwMCAgIE1hc3N2aXMgYXYgdXRkYXRhIG9tIHV0bMO2c2FyZVxuIgorIiAgNDAwMDAgICBEdW1tYSBtw6RuZ2RlciB1dGRhdGEgb20gdXRsw7ZzYXJlXG4iCisiICAgMTAwMCAgIE1hc3N2aXMgYXYgcGxhZGRlciBvbSBibC5hIGRwa2cvaW5mby1rYXRhbG9nZW5cbiIKKyIgICAyMDAwICAgS27DpHBwYSBtw6RuZ2RlciBwbGFkZGVyXG4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6MzQ3CisjLCBuby13cmFwCittc2dpZCAiQjwtLWZvcmNlLT5JPHRoaW5ncz4sIEI8LS1uby1mb3JjZS0+STx0aGluZ3M+LCBCPC0tcmVmdXNlLT5JPHRoaW5ncz4iCittc2dzdHIgIkI8LS1mb3JjZS0+STxzYWtlcj4gfCBCPC0tbm8tZm9yY2UtPkk8c2FrZXI+IHwgQjwtLXJlZnVzZS0+STxzYWtlcj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTozNTQKK21zZ2lkICIiCisiRm9yY2Ugb3IgcmVmdXNlIChCPG5vLWZvcmNlPiBhbmQgQjxyZWZ1c2U+IG1lYW4gdGhlIHNhbWUgdGhpbmcpICB0byBkbyBzb21lICIKKyJ0aGluZ3MuIEk8dGhpbmdzPiBpcyBhIGNvbW1hIHNlcGFyYXRlZCBsaXN0IG9mIHRoaW5ncyBzcGVjaWZpZWQgYmVsb3cuIEI8LS0iCisiZm9yY2UtaGVscD4gZGlzcGxheXMgYSBtZXNzYWdlIGRlc2NyaWJpbmcgdGhlbS4gIFRoaW5ncyBtYXJrZWQgd2l0aCAoKikgYXJlICIKKyJmb3JjZWQgYnkgZGVmYXVsdC4iCittc2dzdHIgIiIKKyJUdmluZ2EgZWxsZXIgdsOkZ3JhIChCPG5vLWZvcmNlPiBvY2ggQjxyZWZ1c2U+IGJldHlkZXIgZGV0c2FtbWEpIGF0dCBnw7ZyYSAiCisidmlzc2Egc2FrZXIuIEk8c2FrZXI+IMOkciBlbiBrb21tYWF2Z3LDpG5zYWQgbGlzdGEgbWVkIHNha2VyIHNvbSBhbmdlcyBuZWRhbi4gIgorIkI8LS1mb3JjZS1oZWxwPiB2aXNhciBlbiBsaXN0YSBtZWQgYmVza3Jpdm5pbmdhci4gU2FrZXIgc29tIG1hcmtlcmFzIG1lZCAoKikgIgorIsOkciB0dmluZ2FkZSBzb20gZsO2cnZhbC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTozNTgKK21zZ2lkICIiCisiSTxXYXJuaW5nOiBUaGVzZSBvcHRpb25zIGFyZSBtb3N0bHkgaW50ZW5kZWQgdG8gYmUgdXNlZCBieSBleHBlcnRzIG9ubHkuICIKKyJVc2luZyB0aGVtIHdpdGhvdXQgZnVsbHkgdW5kZXJzdGFuZGluZyB0aGVpciBlZmZlY3RzIG1heSBicmVhayB5b3VyIHdob2xlICIKKyJzeXN0ZW0uPiIKK21zZ3N0ciAiIgorIkk8VmFybmluZzogRGVzc2EgZmxhZ2dvciDDpHIgaHV2dWRzYWtsaWdlbiBhdnNlZGRhIGF0dCBlbmRhc3QgYW52w6RuZGFzIGF2ICIKKyJleHBlcnRlci4gT20gZHUgYW52w6RuZGVyIGRlbSB1dGFuIGF0dCBmdWxsdCB1dCBmw7Zyc3TDpSB2YWQgZGUgZ8OlciB1dCBww6Uga2FuICIKKyJkdSBmw7Zyc3TDtnJhIGRpbiBzeXN0ZW1pbnN0YWxsYXRpb24uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjM2MQorbXNnaWQgIkI8YWxsPjogVHVybnMgb24gKG9yIG9mZikgYWxsIGZvcmNlIG9wdGlvbnMuIgorbXNnc3RyICJCPGFsbD46IFNsw6VyIHDDpSAoZWxsZXIgYXYpIGFsbGEgdHZpbmdhbmRlIGZsYWdnb3IuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzY0Cittc2dpZCAiIgorIkI8ZG93bmdyYWRlPigqKTogSW5zdGFsbCBhIHBhY2thZ2UsIGV2ZW4gaWYgbmV3ZXIgdmVyc2lvbiBvZiBpdCBpcyBhbHJlYWR5ICIKKyJpbnN0YWxsZWQuIgorbXNnc3RyICIiCisiQjxkb3duZ3JhZGU+KCopOiBJbnN0YWxsZXJhIGV0dCBwYWtldCDDpHZlbiBvbSBlbiBueWFyZSB2ZXJzaW9uIHJlZGFuIMOkciAiCisiaW5zdGFsbGVyYWQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzcxCittc2dpZCAiIgorIkk8V2FybmluZzogQXQgcHJlc2VudCBkcGtnIGRvZXMgbm90IGRvIGFueSBkZXBlbmRlbmN5IGNoZWNraW5nIG9uIGRvd25ncmFkZXMgIgorImFuZCB0aGVyZWZvcmUgd2lsbCBub3Qgd2FybiB5b3UgaWYgdGhlIGRvd25ncmFkZSBicmVha3MgdGhlIGRlcGVuZGVuY3kgb2YgIgorInNvbWUgb3RoZXIgcGFja2FnZS4gVGhpcyBjYW4gaGF2ZSBzZXJpb3VzIHNpZGUgZWZmZWN0cywgZG93bmdyYWRpbmcgIgorImVzc2VudGlhbCBzeXN0ZW0gY29tcG9uZW50cyBjYW4gZXZlbiBtYWtlIHlvdXIgd2hvbGUgc3lzdGVtIHVudXNhYmxlLiBVc2UgIgorIndpdGggY2FyZS4+IgorbXNnc3RyICIiCisiSTxWYXJuaW5nOiBGw7ZyIG7DpHJ2YXJhbmRlIHVuZGVyc8O2a2VyIGludGUgZHBrZyBiZXJvZW5kZW4gdmlkIG5lZGdyYWRlcmluZyAiCisib2NoIGtvbW1lciBkw6RyZsO2ciBpbnRlIGF0dCB2YXJuYSBkaWcgb20gbmVkZ3JhZGVyaW5nZW4gYnJ5dGVyIGV0dCBiZXJvZW5kZSAiCisiZsO2ciBuw6Vnb3QgcGFrZXQuIERldHRhIGthbiBoYSBhbGx2YXJsaWdhIHNpZG9lZmZla3RlciwgZ2Vub20gYXR0IG5lZGdyYWRlcmEgIgorImdydW5kbMOkZ2dhbmRlIHN5c3RlbWtvbXBvbmVudGVyIGthbiBkdSByaXNrZXJhIGF0dCBnw7ZyYSBoZWxhIHN5c3RlbWV0ICIKKyJpbnN0YWJpbHQuIEFudsOkbmQgbWVkIHRpbGxmw7Zyc2lrdC4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6Mzc1Cittc2dpZCAiIgorIkI8Y29uZmlndXJlLWFueT46IENvbmZpZ3VyZSBhbHNvIGFueSB1bnBhY2tlZCBidXQgdW5jb25maWd1cmVkIHBhY2thZ2VzIG9uICIKKyJ3aGljaCB0aGUgY3VycmVudCBwYWNrYWdlIGRlcGVuZHMuIgorbXNnc3RyICIiCisiQjxjb25maWd1cmUtYW55PjogS29uZmlndXJlcmEgw6R2ZW4gYWxsYSB1cHBhY2thZGUgbWVuIGVqIGtvbmZpZ3VyZXJhZGUgcGFrZXQgIgorInDDpSB2aWxrYSBkZXQgYWt0dWVsbGEgcGFrZXRldCBiZXJvci4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTozNzgKK21zZ2lkICJCPGhvbGQ+OiBQcm9jZXNzIHBhY2thZ2VzIGV2ZW4gd2hlbiBtYXJrZWQgXCJob2xkXCIuIgorbXNnc3RyICJCPGhvbGQ+OiBIYW50ZXJhIMOkdmVuIFwiaMOlbGxcIi1tYXJrZXJhZGUgcGFrZXQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzgzCittc2dpZCAiIgorIkI8cmVtb3ZlLXJlaW5zdHJlcT46IFJlbW92ZSBhIHBhY2thZ2UsIGV2ZW4gaWYgaXQncyBicm9rZW4gYW5kIG1hcmtlZCB0byAiCisicmVxdWlyZSByZWluc3RhbGxhdGlvbi4gVGhpcyBtYXksIGZvciBleGFtcGxlLCBjYXVzZSBwYXJ0cyBvZiB0aGUgcGFja2FnZSB0byAiCisicmVtYWluIG9uIHRoZSBzeXN0ZW0sIHdoaWNoIHdpbGwgdGhlbiBiZSBmb3Jnb3R0ZW4gYnkgQjxkcGtnPi4iCittc2dzdHIgIiIKKyJCPHJlbW92ZS1yZWluc3RyZXE+OiBUYSBib3J0IGV0dCBwYWtldCDDpHZlbiBvbSBkZXQgw6RyIHRyYXNpZ3Qgb2NoIG1hcmtlcmF0ICIKKyJhdHQgdmFyYSBpIGJlaG92IGF2IG9taW5zdGFsbGF0aW9uLiBEZXR0YSBrYW4sIHRpbGwgZXhlbXBlbCwgZ8O2cmEgc8OlIGF0dCAiCisiZGVsYXIgYXYgcGFrZXRldCBibGlyIGt2YXIgcMOlIHN5c3RlbWV0LCBtZW4gZ2zDtm1zIGJvcnQgYXYgQjxkcGtnPi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTozODgKK21zZ2lkICIiCisiQjxyZW1vdmUtZXNzZW50aWFsPjogUmVtb3ZlLCBldmVuIGlmIHRoZSBwYWNrYWdlIGlzIGNvbnNpZGVyZWQgZXNzZW50aWFsLiAiCisiRXNzZW50aWFsIHBhY2thZ2VzIGNvbnRhaW4gbW9zdGx5IHZlcnkgYmFzaWMgVW5peCBjb21tYW5kcy4gUmVtb3ZpbmcgdGhlbSAiCisibWlnaHQgY2F1c2UgdGhlIHdob2xlIHN5c3RlbSB0byBzdG9wIHdvcmtpbmcsIHNvIHVzZSB3aXRoIGNhdXRpb24uIgorbXNnc3RyICIiCisiQjxyZW1vdmUtZXNzZW50aWFsPjogVGEgYm9ydCBwYWtldGV0IMOkdmVuIG9tIGRldCBhbnNlcyBzb20gdmlrdGlndCAiCisiKGVzc2VudGlhbCkuIFZpa3RpZ2EgcGFrZXQgw6RyIGh1dnVkc2FrbGlnZW4gZGUgbWVzdCBncnVuZGzDpGdnYW5kZSAiCisiVW5peGtvbW1hbmRvbmEuIE9tIGR1IHRhciBib3J0IGRlbSBrYW4gZGV0IGfDtnJhIHPDpSBhdHQgaGVsYSBzeXN0ZW1ldCBzbHV0YXIgIgorImZ1bmdlcmEsIHPDpSBhbnbDpG5kIG1lZCB0aWxsZsO2cnNpa3QuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6MzkxCittc2dpZCAiQjxkZXBlbmRzPjogVHVybiBhbGwgZGVwZW5kZW5jeSBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzLiIKK21zZ3N0ciAiQjxkZXBlbmRzPjogR8O2ciBhbGxhIGJlcm9lbmRlcHJvYmxlbSB0aWxsIHZhcm5pbmdhci4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTozOTQKK21zZ2lkICIiCisiQjxkZXBlbmRzLXZlcnNpb24+OiBEb24ndCBjYXJlIGFib3V0IHZlcnNpb25zIHdoZW4gY2hlY2tpbmcgZGVwZW5kZW5jaWVzLiIKK21zZ3N0ciAiIgorIkI8ZGVwZW5kcy12ZXJzaW9uPjogSWdub3JlcmEgdmVyc2lvbnNudW1tZXIgbsOkciBiZXJvZW5kZW4ga29udHJvbGxlcmFzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjM5NworbXNnaWQgIkI8YnJlYWtzPjogSW5zdGFsbCwgZXZlbiBpZiB0aGlzIHdvdWxkIGJyZWFrIGFub3RoZXIgcGFja2FnZS4iCittc2dzdHIgIkI8YnJlYWtzPjogSW5zdGFsbGVyYSwgw6R2ZW4gb20gZGV0IHNrdWxsZSBmw7Zyc3TDtnJhIGV0dCBhbm5hdCBwYWtldC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0MDEKK21zZ2lkICIiCisiQjxjb25mbGljdHM+OiBJbnN0YWxsLCBldmVuIGlmIGl0IGNvbmZsaWN0cyB3aXRoIGFub3RoZXIgcGFja2FnZS4gVGhpcyBpcyAiCisiZGFuZ2Vyb3VzLCBmb3IgaXQgd2lsbCB1c3VhbGx5IGNhdXNlIG92ZXJ3cml0aW5nIG9mIHNvbWUgZmlsZXMuIgorbXNnc3RyICIiCisiQjxjb25mbGljdHM+OiBJbnN0YWxsZXJhIMOkdmVuIG9tIHBha2V0IHNvbSDDpHIgaSBrb25mbGlrdCAoa3JvY2thcikgbWVkIGV0dCAiCisiYW5uYXQgcGFrZXQuIERldHRhIMOkciBmYXJsaWd0LCBlZnRlcnNvbSBkZXQgb2Z0YXN0IGxlZGVyIHRpbGwgYXR0IHZpc3NhICIKKyJmaWxlciBza3JpdnMgw7Z2ZXIuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDA2Cittc2dpZCAiIgorIkI8Y29uZm1pc3M+OiBBbHdheXMgaW5zdGFsbCBhIG1pc3NpbmcgY29uZmZpbGUuIFRoaXMgaXMgZGFuZ2Vyb3VzLCBzaW5jZSBpdCAiCisibWVhbnMgbm90IHByZXNlcnZpbmcgYSBjaGFuZ2UgKHJlbW92aW5nKSBtYWRlIHRvIHRoZSBmaWxlLiIKK21zZ3N0ciAiIgorIkI8Y29uZm1pc3M+OiBJbnN0YWxsZXJhIGFsbHRpZCBzYWtuYWRlIGtvbmZpZ3VyYXRpb25zZmlsZXIuIERldHRhIMOkciAiCisiZmFybGlndCwgZWZ0ZXJzb20gZGV0IGludGUgYmliZWjDpWxsZXIgw6RuZHJpbmdhciAocmFkZXJpbmdhcikgYXYgZmlsZXIuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDExCittc2dpZCAiIgorIkI8Y29uZm5ldz46IElmIGEgY29uZmZpbGUgaGFzIGJlZW4gbW9kaWZpZWQgYWx3YXlzIGluc3RhbGwgdGhlIG5ldyB2ZXJzaW9uICIKKyJ3aXRob3V0IHByb21wdGluZywgdW5sZXNzIHRoZSBCPC0tZm9yY2UtY29uZmRlZj4gaXMgYWxzbyBzcGVjaWZpZWQsIGluIHdoaWNoICIKKyJjYXNlIHRoZSBkZWZhdWx0IGFjdGlvbiBpcyBwcmVmZXJyZWQuIgorbXNnc3RyICIiCisiQjxjb25mbmV3PjogSW5zdGFsbGVyYSBhbGx0aWQgbnlhIHZlcnNpb25lciBhdiDDpG5kcmFkZSBrb25maWd1cmF0aW9uc2ZpbGVyICIKKyJ1dGFuIGF0dCBmcsOlZ2EsIHPDpXZpZGEgaW50ZSBCPC0tZm9yY2UtY29uZmRlZj4gb2Nrc8OlIGFuZ2VzLCBpIHZpbGtldCBmYWxsICIKKyJkZXQgZsO2cnZhbGRhIGFsdGVybmF0aXZldCBrb21tZXIgYXR0IHV0ZsO2cmFzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQxNgorbXNnaWQgIiIKKyJCPGNvbmZvbGQ+OiBJZiBhIGNvbmZmaWxlIGhhcyBiZWVuIG1vZGlmaWVkIGFsd2F5cyBrZWVwIHRoZSBvbGQgdmVyc2lvbiAiCisid2l0aG91dCBwcm9tcHRpbmcsIHVubGVzcyB0aGUgQjwtLWZvcmNlLWNvbmZkZWY+IGlzIGFsc28gc3BlY2lmaWVkLCBpbiB3aGljaCAiCisiY2FzZSB0aGUgZGVmYXVsdCBhY3Rpb24gaXMgcHJlZmVycmVkLiIKK21zZ3N0ciAiIgorIkI8Y29uZm9sZD46IEluc3RhbGxlcmEgYWxkcmlnIG55YSB2ZXJzaW9uZXIgYXYgw6RuZHJhZGUga29uZmlndXJhdGlvbnNmaWxlciAiCisidXRhbiBhdHQgZnLDpWdhLCBzw6V2aWRhIGludGUgQjwtLWZvcmNlLWNvbmZkZWY+IG9ja3PDpSBhbmdlcywgaSB2aWxrZXQgZmFsbCAiCisiZGV0IGbDtnJ2YWxkYSBhbHRlcm5hdGl2ZXQga29tbWVyIGF0dCB1dGbDtnJhcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0MjIKK21zZ2lkICIiCisiQjxjb25mZGVmPjogSWYgYSBjb25mZmlsZSBoYXMgYmVlbiBtb2RpZmllZCBhbHdheXMgY2hvb3NlIHRoZSBkZWZhdWx0ICIKKyJhY3Rpb24uIElmIHRoZXJlIGlzIG5vIGRlZmF1bHQgYWN0aW9uIGl0IHdpbGwgc3RvcCB0byBhc2sgdGhlIHVzZXIgdW5sZXNzICIKKyJCPC0tZm9yY2UtY29uZm5ldz4gb3IgQjwtLWZvcmNlLWNvbmZvbGQ+IGlzIGFsc28gYmVlbiBnaXZlbiwgaW4gd2hpY2ggY2FzZSAiCisiaXQgd2lsbCB1c2UgdGhhdCB0byBkZWNpZGUgdGhlIGZpbmFsIGFjdGlvbi4iCittc2dzdHIgIiIKKyJCPGNvbmZkZWY+OiBVdGbDtnIgYWxsdGlkIGbDtnJ2YWx0IGFsdGVybmF0aXZ0IGbDtnIgw6RuZHJhZGUgIgorImtvbmZpZ3VyYXRpb25zZmlsZXIuIE9tIGluZ2V0IGbDtnJ2YWwgaGFyIGFuZ2l2aXRzIGtvbW1lciBwcm9ncmFtbWV0IHN0YW5uYSAiCisib2NoIGZyw6VnYSBhbnbDpG5kYXJlbiBzw6V2aWRhIGludGUgQjwtLWZvcmNlLWNvbmZuZXc+IGVsbGVyIEI8LS1mb3JjZS1jb25mb2xkPiAiCisib2Nrc8OlIGFuZ2V0dHMsIGkgc8OlIGZhbGwgYW52w6RuZHMgZGVuIGbDtnIgYXR0IGJlc3TDpG1tYSB2YWQgc29tIHNrYWxsIHV0ZsO2cmFzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQyOQorbXNnaWQgIiIKKyJCPGNvbmZhc2s+OiBJZiBhIGNvbmZmaWxlIGhhcyBiZWVuIG1vZGlmaWVkIGFsd2F5cyBvZmZlciB0byByZXBsYWNlIGl0IHdpdGggIgorInRoZSB2ZXJzaW9uIGluIHRoZSBwYWNrYWdlLCBldmVuIGlmIHRoZSB2ZXJzaW9uIGluIHRoZSBwYWNrYWdlIGRpZCBub3QgIgorImNoYW5nZS4gSWYgYW55IG9mIEI8LS1mb3JjZS1jb25mbWlzcz4sIEI8LS1mb3JjZS1jb25mbmV3PiwgQjwtLWZvcmNlLSIKKyJjb25mb2xkPiwgb3IgQjwtLWZvcmNlLWNvbmZkZWY+IGlzIGFsc28gZ2l2ZW4sIGl0IHdpbGwgYmUgdXNlZCB0byBkZWNpZGUgdGhlICIKKyJmaW5hbCBhY3Rpb24uIgorbXNnc3RyICIiCisiQjxjb25mYXNrPjogRXJianVkIGFsbHRpZCBhdHQgZXJzw6R0dGEgZW4gbW9kaWZpZXJhZCBrb25maWd1cmF0aW9uc2ZpbCBtZWQgIgorInZlcnNpb25lbiBpIHBha2V0ZXQsIMOkdmVuIG9tIHZlcnNpb25lbiBpIHBha2V0ZXQgaW50ZSDDpG5kcmFkZXMuIE9tIG7DpWdvbiBhdiAiCisiQjwtLWZvcmNlLWNvbmZtaXNzPiwgQjwtLWZvcmNlLWNvbmZuZXc+LCBCPC0tZm9yY2UtY29uZm9sZD4gZWxsZXIgQjwtLWZvcmNlLSIKKyJjb25mZGVmPiBvY2tzw6UgYW5nZXR0cywgc8OlIGFudsOkbmRzIGRlbiBmw7ZyIGF0dCBiZXN0w6RtbWEgdmFkIHNvbSBza2FsbCAiCisidXRmw7ZyYXMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDMyCittc2dpZCAiQjxvdmVyd3JpdGU+OiBPdmVyd3JpdGUgb25lIHBhY2thZ2UncyBmaWxlIHdpdGggYW5vdGhlcidzIGZpbGUuIgorbXNnc3RyICJCPG92ZXJ3cml0ZT46IFNrcml2IMO2dmVyIGV0dCBwYWtldHMgZmlsZXIgbWVkIGV0dCBhbm5hdHMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDM1Cittc2dpZCAiQjxvdmVyd3JpdGUtZGlyPiBPdmVyd3JpdGUgb25lIHBhY2thZ2UncyBkaXJlY3Rvcnkgd2l0aCBhbm90aGVyJ3MgZmlsZS4iCittc2dzdHIgIkI8b3ZlcndyaXRlLWRpcj4gU2tyaXYgw7Z2ZXIgZXR0IHBha2V0cyBrYXRhbG9nZXIgbWVkIGV0dCBhbm5hdHMgZmlsZXIuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDM4Cittc2dpZCAiIgorIkI8b3ZlcndyaXRlLWRpdmVydGVkPjogT3ZlcndyaXRlIGEgZGl2ZXJ0ZWQgZmlsZSB3aXRoIGFuIHVuZGl2ZXJ0ZWQgdmVyc2lvbi4iCittc2dzdHIgIiIKKyJCPG92ZXJ3cml0ZS1kaXZlcnRlZD46IFNrcml2IMO2dmVyIGVuIG9tZGlyaWdlcmFkIGZpbCBtZWQgZW4gZWogb21kaXJpZ2VyYWQgIgorInZlcnNpb24uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDQ2Cittc2dpZCAiIgorIkI8dW5zYWZlLWlvPjogRG8gbm90IHBlcmZvcm0gc2FmZSBJL08gb3BlcmF0aW9ucyB3aGVuIHVucGFja2luZy4gQ3VycmVudGx5ICIKKyJ0aGlzIGltcGxpZXMgbm90IHBlcmZvcm1pbmcgZmlsZSBzeXN0ZW0gc3luY3MgYmVmb3JlIGZpbGUgcmVuYW1lcywgd2hpY2ggaXMgIgorImtub3duIHRvIGNhdXNlIHN1YnN0YW50aWFsIHBlcmZvcm1hbmNlIGRlZ3JhZGF0aW9uIG9uIHNvbWUgZmlsZSBzeXN0ZW1zLCAiCisidW5mb3J0dW5hdGVseSB0aGUgb25lcyB0aGF0IHJlcXVpcmUgdGhlIHNhZmUgSS9PIG9uIHRoZSBmaXJzdCBwbGFjZSBkdWUgdG8gIgorInRoZWlyIHVucmVsaWFibGUgYmVoYXZpb3VyIGNhdXNpbmcgemVyby1sZW5ndGggZmlsZXMgb24gYWJydXB0IHN5c3RlbSAiCisiY3Jhc2hlcy4iCittc2dzdHIgIiIKKyJCPHVuc2FmZS1pbz46IFV0ZsO2ciBpbnRlIHPDpGtyYSBJL08tb3BlcmF0aW9uZXIgdmlkIHVwcGFja25pbmcuIERldHRhIGlubmViw6RyICIKKyJmw7ZyIG7DpHJ2YXJhbmRlIGF0dCBmaWxzeXN0ZW1zc3lua3JvbmlzZXJpbmdhciBpbnRlIHV0ZsO2cnMgaW5uYW4gbmFtbiBww6UgIgorImZpbGVyIMOkbmRyYXMsIG7DpWdvdCBzb20gdmkgdmV0IGthbiBww6V2ZXJrYSBwcmVzdGFuZGEgYmV0eWRsaWd0IG5lZ2F0aXZ0IGbDtnIgIgorInZpc3NhIGZpbHN5c3RlbSwgdmlsa2V0IHR5dsOkcnIgw6RyIHNhbW1hIHN5c3RlbSBzb20gYmVow7Z2ZXIgc8Oka2VyIEkvTyBww6UgIgorImdydW5kIGF2IGF0dCBkZSBoYXIgZXR0IG90aWxsZsO2cmxpdGxpZ3QgYmV0ZWVuZGUgc29tIG9yc2FrYXIgdG9tbWEgZmlsZXIgdmlkICIKKyJ0dsOkcmEgc3lzdGVta3Jhc2NoZXIuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDUyCittc2dpZCAiIgorIkk8Tm90ZT46IEZvciBleHQ0LCB0aGUgbWFpbiBvZmZlbmRlciwgY29uc2lkZXIgdXNpbmcgaW5zdGVhZCB0aGUgbW91bnQgIgorIm9wdGlvbiBCPG5vZGVsYWxsb2M+LCB3aGljaCB3aWxsIGZpeCBib3RoIHRoZSBwZXJmb3JtYW5jZSBkZWdyYWRhdGlvbiBhbmQgIgorInRoZSBkYXRhIHNhZmV0eSBpc3N1ZXMsIHRoZSBsYXR0ZXIgYnkgbWFraW5nIHRoZSBmaWxlIHN5c3RlbSBub3QgcHJvZHVjZSAiCisiemVyby1sZW5ndGggZmlsZXMgb24gYWJydXB0IHN5c3RlbSBjcmFzaGVzIHdpdGggYW55IHNvZnR3YXJlIG5vdCBkb2luZyBzeW5jcyAiCisiYmVmb3JlIGF0b21pYyByZW5hbWVzLiIKK21zZ3N0ciAiIgorIkk8T2JzZXJ2ZXJhPjogRsO2ciBleHQ0LCBkZW4gdsOkcnN0YSBzeW5kYXJlbiwga2FuIGRldCB2YXJhIHbDpHJ0IGF0dCBpc3TDpGxsZXQgIgorImFudsOkbmRhIG1vbnRlcmluZ3NmbGFnZ2FuIEI8bm9kZWxhbGxvYz4sIHZpbGtlbiBiw6VkZSBrb3JyaWdlcmFyICIKKyJwcmVzdGFuZGFmw7ZybHVzdGVuIG9jaCBkYXRhc8Oka2VyaGV0c3Byb2JsZW1lbiwgZGV0IHNpc3Ruw6RtbmRhIGdlbm9tIGF0dCBpbnRlICIKKyJsw6V0YSBmaWxzeXN0ZW1ldCBza2FwYSB0b21tYSBmaWxlciB2aWQgdHbDpHJhIGtyYXNjaGVyIGbDtnIgcHJvZ3JhbXZhcmEgc29tICIKKyJpbnRlIHV0ZsO2ciBzeW5rcm9uaXNlcmluZyBmw7ZyZSBhdG9tw6RyYSBuYW1uYnl0ZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDU1Cittc2dpZCAiIgorIkk8V2FybmluZzogVXNpbmcgdGhpcyBvcHRpb24gbWlnaHQgaW1wcm92ZSBwZXJmb3JtYW5jZSBhdCB0aGUgY29zdCBvZiBsb3NpbmcgIgorImRhdGEsIHVzZSB3aXRoIGNhcmUuPiIKK21zZ3N0ciAiIgorIkk8VmFybmluZzogRGVuIGjDpHIgZmxhZ2dhbiBrYW4gZ2UgYsOkdHRyZSBwcmVzdGFuZGEgcMOlIGJla29zdG5hZCBhdiAiCisiZGF0YWbDtnJsdXN0ZXIsIGFudsOkbmQgbWVkIHRpbGxmw7Zyc2lrdC4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDU4Cittc2dpZCAiQjxhcmNoaXRlY3R1cmU+OiBQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyBvciBubyBhcmNoaXRlY3R1cmUuIgorbXNnc3RyICIiCisiQjxhcmNoaXRlY3R1cmU+OiBIYW50ZXJhIMOkdmVuIHBha2V0IG1lZCBmZWwgZWxsZXIgc2FrbmFkICIKKyJtYXNraW52YXJ1YXJraXRla3R1ci4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0NjEKK21zZ2lkICJCPGJhZC12ZXJzaW9uPjogUHJvY2VzcyBldmVuIHBhY2thZ2VzIHdpdGggd3JvbmcgdmVyc2lvbnMuIgorbXNnc3RyICJCPGJhZC12ZXJzaW9uPjogSGFudGVyYSDDpHZlbiBwYWtldCBtZWQgZmVsIHZlcnNpb25lci4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0NjQKK21zZ2lkICIiCisiQjxiYWQtcGF0aD46IEI8UEFUSD4gaXMgbWlzc2luZyBpbXBvcnRhbnQgcHJvZ3JhbXMsIHNvIHByb2JsZW1zIGFyZSBsaWtlbHkuIgorbXNnc3RyICIiCisiQjxiYWQtcGF0aD46IFPDtmt2w6RnZW4gaSBCPFBBVEg+IHNha25hciB2aWt0aWdhIHByb2dyYW0sIHPDpSBwcm9ibGVtIMOkciAiCisidHJvbGlnYS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo0NjcKK21zZ2lkICJCPG5vdC1yb290PjogVHJ5IHRvIChkZSlpbnN0YWxsIHRoaW5ncyBldmVuIHdoZW4gbm90IHJvb3QuIgorbXNnc3RyICJCPG5vdC1yb290PjogRsO2cnPDtmsgKGF2KWluc3RhbGxlcmEgc2FrZXIgw6R2ZW4gdXRhbiBhdHQgdmFyYSByb290LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQ3MAorbXNnaWQgIkI8YmFkLXZlcmlmeT46IEluc3RhbGwgYSBwYWNrYWdlIGV2ZW4gaWYgaXQgZmFpbHMgYXV0aGVudGljaXR5IGNoZWNrLiIKK21zZ3N0ciAiIgorIkI8YmFkLXZlcmlmeT46IEluc3RhbGxlcmEgZXR0IHBha2V0IMOkdmVuIG9tIGRldCBpbnRlIGfDpXIgYXR0IHZlcmlmaWVyYSBkZXNzICIKKyLDpGt0aGV0LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo0NzEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0taWdub3JlLWRlcGVuZHM+PUk8cGFja2FnZT4sLi4uIgorbXNnc3RyICJCPC0taWdub3JlLWRlcGVuZHM+PUk8cGFrZXQ+LC4uLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQ3NQorbXNnaWQgIiIKKyJJZ25vcmUgZGVwZW5kZW5jeS1jaGVja2luZyBmb3Igc3BlY2lmaWVkIHBhY2thZ2VzIChhY3R1YWxseSwgY2hlY2tpbmcgaXMgIgorInBlcmZvcm1lZCwgYnV0IG9ubHkgd2FybmluZ3MgYWJvdXQgY29uZmxpY3RzIGFyZSBnaXZlbiwgbm90aGluZyBlbHNlKS4iCittc2dzdHIgIiIKKyJJZ25vcmVyYSBiZXJvZW5kZWtvbnRyb2xsIGbDtnIgYW5naXZuYSBwYWtldCAoaSB2ZXJrbGlnaGV0ZW4gdXRmw7ZycyAiCisia29udHJvbGxlbiwgbWVuIGRldCBnZXMgZW5kYXN0IHZhcm5pbmdhciwgaW5nZW50aW5nIGFubmF0KS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NDc1CisjLCBuby13cmFwCittc2dpZCAiQjwtLW5vLWFjdD4sIEI8LS1kcnktcnVuPiwgQjwtLXNpbXVsYXRlPiIKK21zZ3N0ciAiQjwtLW5vLWFjdD4sIEI8LS1kcnktcnVuPiwgQjwtLXNpbXVsYXRlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQ4MAorbXNnaWQgIiIKKyJEbyBldmVyeXRoaW5nIHdoaWNoIGlzIHN1cHBvc2VkIHRvIGJlIGRvbmUsIGJ1dCBkb24ndCB3cml0ZSBhbnkgY2hhbmdlcy4gIgorIlRoaXMgaXMgdXNlZCB0byBzZWUgd2hhdCB3b3VsZCBoYXBwZW4gd2l0aCB0aGUgc3BlY2lmaWVkIGFjdGlvbiwgd2l0aG91dCAiCisiYWN0dWFsbHkgbW9kaWZ5aW5nIGFueXRoaW5nLiIKK21zZ3N0ciAiIgorIkfDtnIgYWxsdGluZyBzb20gZWZ0ZXJmcsOlZ2FzLCBtZW4gc2tyaXYgaW50ZSBuw6VncmEgw6RuZHJpbmdhci4gRGV0dGEgYW52w6RuZHMgIgorImbDtnIgYXR0IHNlIHZhZCBzb20gc2t1bGxlIGhhIGjDpG50IG1lZCDDpXRnw6RyZGVuIHV0YW4gYXR0IGZha3Rpc2t0IMOkbmRyYSBuw6Vnb3QuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDg1Cittc2dpZCAiIgorIkJlIHN1cmUgdG8gZ2l2ZSBCPC0tbm8tYWN0PiBiZWZvcmUgdGhlIGFjdGlvbi1wYXJhbWV0ZXIsIG9yIHlvdSBtaWdodCBlbmQgdXAgIgorIndpdGggdW5kZXNpcmFibGUgcmVzdWx0cy4gKGUuZy4gQjxkcGtnIC0tcHVyZ2UgZm9vIC0tbm8tYWN0PiB3aWxsIGZpcnN0ICIKKyJwdXJnZSBwYWNrYWdlIGZvbyBhbmQgdGhlbiB0cnkgdG8gcHVyZ2UgcGFja2FnZSAtLW5vLWFjdCwgZXZlbiB0aG91Z2ggeW91ICIKKyJwcm9iYWJseSBleHBlY3RlZCBpdCB0byBhY3R1YWxseSBkbyBub3RoaW5nKSIKK21zZ3N0ciAiIgorIlNlIHRpbGwgYXR0IGR1IGFuZ2VyIEI8LS1uby1hY3Q+IGbDtnJlIMOldGfDpHJkc2ZsYWdnYW4sIGFubmFycyBrYW4gZHUgZsOlICIKKyJvw7Zuc2thZGUgYml2ZXJrbmluZ2FyICh0LmV4IHPDpSBrb21tZXIgQjxkcGtnIC0tcHVyZ2UgZm9vIC0tbm8tYWN0PiBmw7Zyc3QgYXR0ICIKKyJyZW5zYSB1dCBwYWtldGV0IGZvbyBmw7ZyIGF0dCBzZWRhbiBmw7Zyc8O2a2EgcmVuc2EgdXQgcGFrZXRldCAtLW5vLWFjdCwgdHJvdHMgIgorImF0dCBkdSB0cm9saWdlbiBmw7ZydsOkbnRhZGUgZGlnIGF0dCBpbmdlbnRpbmcgc2t1bGxlIHV0ZsO2cmFzKSIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo0ODUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1SPiwgQjwtLXJlY3Vyc2l2ZT4iCittc2dzdHIgIkI8LVI+LCBCPC0tcmVjdXJzaXZlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjQ5MQorbXNnaWQgIiIKKyJSZWN1cnNpdmVseSBoYW5kbGUgYWxsIHJlZ3VsYXIgZmlsZXMgbWF0Y2hpbmcgcGF0dGVybiBCPCouZGViPiBmb3VuZCBhdCAiCisic3BlY2lmaWVkIGRpcmVjdG9yaWVzIGFuZCBhbGwgb2YgaXRzIHN1YmRpcmVjdG9yaWVzLiBUaGlzIGNhbiBiZSB1c2VkIHdpdGggIgorIkI8LWk+LCBCPC1BPiwgQjwtLWluc3RhbGw+LCBCPC0tdW5wYWNrPiBhbmQgQjwtLWF2YWlsPiBhY3Rpb25zLiIKK21zZ3N0ciAiIgorIkhhbnRlcmEgYWxsYSB2YW5saWdhIGZpbGVyIHNvbSBtYXRjaGFyIHPDtmttw7Zuc3RyZXQgQjwqLmRlYj4gcmVrdXJzaXZ0IGkgZGUgIgorImthdGFsb2dlciBzb20gYW5nZXMsIG1lZCBhbGxhIHNpbmEgdW5kZXJrYXRhbG9nZXIuIEZsYWdnYW4ga2FuIGFudsOkbmRhcyAiCisidGlsbHNhbW1hbnMgbWVkIEI8LWk+LCBCPC1BPiwgQjwtLWluc3RhbGw+LCBCPC0tdW5wYWNrPiBvY2ggQjwtLWF2YWlsPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NDkxCisjLCBuby13cmFwCittc2dpZCAiQjwtRz4iCittc2dzdHIgIkI8LUc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NDk1Cittc2dpZCAiIgorIkRvbid0IGluc3RhbGwgYSBwYWNrYWdlIGlmIGEgbmV3ZXIgdmVyc2lvbiBvZiB0aGUgc2FtZSBwYWNrYWdlIGlzIGFscmVhZHkgIgorImluc3RhbGxlZC4gVGhpcyBpcyBhbiBhbGlhcyBvZiBCPC0tcmVmdXNlLWRvd25ncmFkZT4uIgorbXNnc3RyICIiCisiSW5zdGFsbGVyYSBpbnRlIHBha2V0ZXQgb20gZW4gbnlhcmUgdmVyc2lvbiBhdiBzYW1tYSBwYWtldCByZWRhbiDDpHIgIgorImluc3RhbGxlcmF0LiBEZXR0YSDDpHIgZXR0IGFsaWFzIGbDtnIgQjwtLXJlZnVzZS1kb3duZ3JhZGU+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo0OTUgZHBrZy1idWlsZHBhY2thZ2UuMToyMTcgZHBrZy1jaGVja2J1aWxkZGVwcy4xOjE5CisjOiBkcGtnLXF1ZXJ5LjE6MTE4IGRwa2ctc2hsaWJkZXBzLjE6MjExIGRwa2ctdHJpZ2dlci4xOjM5CisjLCBuby13cmFwCittc2dpZCAiQjwtLWFkbWluZGlyPT5JPGRpcj4iCittc2dzdHIgIkI8LS1hZG1pbmRpcj0+STxrYXQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTAwCittc2dpZCAiIgorIkNoYW5nZSBkZWZhdWx0IGFkbWluaXN0cmF0aXZlIGRpcmVjdG9yeSwgd2hpY2ggY29udGFpbnMgbWFueSBmaWxlcyB0aGF0IGdpdmUgIgorImluZm9ybWF0aW9uIGFib3V0IHN0YXR1cyBvZiBpbnN0YWxsZWQgb3IgdW5pbnN0YWxsZWQgcGFja2FnZXMsIGV0Yy4gICIKKyIoRGVmYXVsdHMgdG8gSTwvdmFyL2xpYi9kcGtnPikiCittc2dzdHIgIiIKKyLDhG5kcmEgZsO2cnZhbGQgYWRtaW5pc3RyYXRpb25za2F0YWxvZywgdmlsa2VuIGlubmVow6VsbGVyIGZsZXJhIGZpbGVyIHNvbSAiCisiYmVza3JpdmVyIHN0YXR1cyBmw7ZyIGluc3RhbGxlcmFkZSBlbGxlciBhdmluc3RhbGxlcmFkZSBwYWtldCwgb3N2LiAiCisiKHN0YW5kYXJkdsOkcmRlIMOkciBJPC92YXIvbGliL2Rwa2c+KSIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo1MDAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0taW5zdGRpcj0+STxkaXI+IgorbXNnc3RyICJCPC0taW5zdGRpcj0+STxrYXRhbG9nPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjUwNworbXNnaWQgIiIKKyJDaGFuZ2UgZGVmYXVsdCBpbnN0YWxsYXRpb24gZGlyZWN0b3J5IHdoaWNoIHJlZmVycyB0byB0aGUgZGlyZWN0b3J5IHdoZXJlICIKKyJwYWNrYWdlcyBhcmUgdG8gYmUgaW5zdGFsbGVkLiBCPGluc3RkaXI+IGlzIGFsc28gdGhlIGRpcmVjdG9yeSBwYXNzZWQgdG8gIgorIkI8Y2hyb290PigyKSBiZWZvcmUgcnVubmluZyBwYWNrYWdlJ3MgaW5zdGFsbGF0aW9uIHNjcmlwdHMsIHdoaWNoIG1lYW5zIHRoYXQgIgorInRoZSBzY3JpcHRzIHNlZSBCPGluc3RkaXI+IGFzIGEgcm9vdCBkaXJlY3RvcnkuICAoRGVmYXVsdHMgdG8gSTwvPikiCittc2dzdHIgIiIKKyLDhG5kcmEgc3RhbmRhcmRpbnN0YWxsYXRpb25za2F0YWxvZywgdmlsa2V0IGFuZ2VyIGthdGFsb2dlbiBkw6RyIHBha2V0IHNrYWxsICIKKyJpbnN0YWxsZXJhcy4gQjxpbnN0ZGlyPiDDpHIgw6R2ZW4ga2F0YWxvZ2VuIHNvbSBza2lja2FzIHNvbSBhcmd1bWVudCB0aWxsICIKKyJCPGNocm9vdD4oMikgaW5uYW4gcGFrZXRldHMgaW5zdGFsbGF0aW9uc2ZpbGVyIGvDtnJzLCB2aWxrZXQgYmV0eWRlciBhdHQgIgorInNrcmlwdGVuIHNlciBCPGluc3RkaXI+IHNvbSByb3RrYXRhbG9nLiAoRsO2cnZhbCDDpHIgSTwvPikiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTA3CisjLCBuby13cmFwCittc2dpZCAiQjwtLXJvb3Q9Pkk8ZGlyPiIKK21zZ3N0ciAiQjwtLXJvb3Q9Pkk8a2F0YWxvZz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1MTEKK21zZ2lkICIiCisiQ2hhbmdpbmcgQjxyb290PiBjaGFuZ2VzIEI8aW5zdGRpcj4gdG8gSTxkaXI+IGFuZCBCPGFkbWluZGlyPiB0byBJPGRpcj5CPC8iCisidmFyL2xpYi9kcGtnPi4iCittc2dzdHIgIiIKKyJHZW5vbSBhdHQgw6RuZHJhIEI8cm90PiBzw6Ugw6RuZHJhcyBCPGluc3RhbGxhdGlvbnNrYXRhbG9nPiB0aWxsIEk8a2F0YWxvZz4gb2NoICIKKyJCPGFkbWluaXN0cmF0aW9uc2thdGFsb2c+IHRpbGwgSTxrYXRhbG9nPkI8L3Zhci9saWIvZHBrZz4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjUxMQorIywgbm8td3JhcAorbXNnaWQgIkI8LU8+LCBCPC0tc2VsZWN0ZWQtb25seT4iCittc2dzdHIgIkI8LU8+LCBCPC0tc2VsZWN0ZWQtb25seT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1MTcKK21zZ2lkICIiCisiT25seSBwcm9jZXNzIHRoZSBwYWNrYWdlcyB0aGF0IGFyZSBzZWxlY3RlZCBmb3IgaW5zdGFsbGF0aW9uLiBUaGUgYWN0dWFsICIKKyJtYXJraW5nIGlzIGRvbmUgd2l0aCBCPGRzZWxlY3Q+IG9yIGJ5IEI8ZHBrZz4sIHdoZW4gaXQgaGFuZGxlcyBwYWNrYWdlcy4gRm9yICIKKyJleGFtcGxlLCB3aGVuIGEgcGFja2FnZSBpcyByZW1vdmVkLCBpdCB3aWxsIGJlIG1hcmtlZCBzZWxlY3RlZCBmb3IgIgorImRlaW5zdGFsbGF0aW9uLiIKK21zZ3N0ciAiIgorIkhhbnRlcmEgZW5kYXN0IHBha2V0IHNvbSBtYXJrZXJhdHMgZsO2ciBpbnN0YWxsYXRpb24uIFNqw6RsdmEgbWFya2VyaW5nZW4gIgorInV0ZsO2cnMgbWVkIEI8ZHNlbGVjdD4gZWxsZXIgYXYgQjxkcGtnPiBuw6RyIHBha2V0ZW4gaGFudGVyYXMuIFRpbGwgZXhlbXBlbCAiCisia29tbWVyIHBha2V0IHNvbSB0YXMgYm9ydCBhdHQgbWFya2VyYXMgZsO2ciBpbnN0YWxsYXRpb24uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjUxNworIywgbm8td3JhcAorbXNnaWQgIkI8LUU+LCBCPC0tc2tpcC1zYW1lLXZlcnNpb24+IgorbXNnc3RyICJCPC1FPiwgQjwtLXNraXAtc2FtZS12ZXJzaW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjUyMQorbXNnaWQgIiIKKyJEb24ndCBpbnN0YWxsIHRoZSBwYWNrYWdlIGlmIHRoZSBzYW1lIHZlcnNpb24gb2YgdGhlIHBhY2thZ2UgaXMgYWxyZWFkeSAiCisiaW5zdGFsbGVkLiIKK21zZ3N0ciAiIgorIkluc3RhbGxlcmEgaW50ZSBwYWtldGV0IG9tIHNhbW1hIHZlcnNpb24gYXYgcGFrZXRldCByZWRhbiDDpHIgaW5zdGFsbGVyYXQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTIzCittc2dpZCAiQjwtLXByZS1pbnZva2U9Pkk8Y29tbWFuZD4iCittc2dzdHIgIkI8LS1wcmUtaW52b2tlPT5JPGtvbW1hbmRvPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjUyNQorbXNnaWQgIkI8LS1wb3N0LWludm9rZT0+STxjb21tYW5kPiIKK21zZ3N0ciAiQjwtLXBvc3QtaW52b2tlPT5JPGtvbW1hbmRvPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjUzNAorbXNnaWQgIiIKKyJTZXQgYW4gaW52b2tlIGhvb2sgSTxjb21tYW5kPiB0byBiZSBydW4gdmlhIGBgc2ggLWMnJyBiZWZvcmUgb3IgYWZ0ZXIgdGhlICIKKyJkcGtnIHJ1biBmb3IgdGhlIEk8dW5wYWNrPiwgSTxjb25maWd1cmU+LCBJPGluc3RhbGw+LCBJPHRyaWdnZXJzLW9ubHk+LCAiCisiSTxyZW1vdmU+IGFuZCBJPHB1cmdlPiBkcGtnIGFjdGlvbnMuIFRoaXMgb3B0aW9uIGNhbiBiZSBzcGVjaWZpZWQgbXVsdGlwbGUgIgorInRpbWVzLiBUaGUgb3JkZXIgdGhlIG9wdGlvbnMgYXJlIHNwZWNpZmllZCBpcyBwcmVzZXJ2ZWQsIHdpdGggdGhlIG9uZXMgZnJvbSAiCisidGhlIGNvbmZpZ3VyYXRpb24gZmlsZXMgdGFraW5nIHByZWNlZGVuY2UuICBUaGUgZW52aXJvbm1lbnQgdmFyaWFibGUgIgorIkI8RFBLR19IT09LX0FDVElPTj4gaXMgc2V0IGZvciB0aGUgaG9va3MgdG8gdGhlIGN1cnJlbnQgZHBrZyBhY3Rpb24uIE5vdGU6ICIKKyJmcm9udC1lbmRzIG1pZ2h0IGNhbGwgZHBrZyBzZXZlcmFsIHRpbWVzIHBlciBpbnZvY2F0aW9uLCB3aGljaCBtaWdodCBydW4gdGhlICIKKyJob29rcyBtb3JlIHRpbWVzIHRoYW4gZXhwZWN0ZWQuIgorbXNnc3RyICIiCisiU8OkdHRlciBlbiBhbnJvcHNoYWtlIEk8a29tbWFuZG8+IHNvbSBrw7ZycyB2aWEgXCJzaCAtY1wiIGbDtnJlIGVsbGVyIGVmdGVyICIKKyJkcGtnIGvDtnJzIGbDtnIgw6V0Z8OkcmRlcm5hIEk8dW5wYWNrPiwgSTxjb25maWd1cmU+LCBJPGluc3RhbD4sIEk8dHJpZ2dlcnMtIgorIm9ubHk+LCBJPHJlbW92ZT4gb2NoIEk8cHVyZ2U+LiBGbGFnZ2FuIGthbiBhbmdlcyBmbGVyYSBnw6VuZ2VyLiBPcmRuaW5nZW4gcMOlICIKKyJmbGFnZ29ybmEgc29tIGFuZ2VzIGJlaMOlbGxzIG9jaCBkZSBzb20gYW5nZXMgaSBrb25maWd1cmF0aW9uc2ZpbGVuIGhhciAiCisiZsO2cmV0csOkZGUuIE1pbGrDtnZhcmlhYmVsbiBCPERQS0dfSE9PS19BQ1RJT04+IHPDpHR0cyBmw7ZyIGhha2FyIGkgZGVuICIKKyJudXZhcmFuZGUgZHBrZy3DpXRnw6RyZGVuLiBPYnNlcnZlcmE6IFNrYWwga2FuIGFucm9wYSBkcGtnIGZsZXJhIGfDpW5nZXIgcGVyICIKKyJrw7ZybmluZywgdmlsa2V0IGthbiBnw7ZyYSBhdHQgaGFrYXJuYSBrw7ZycyBmbGVyIGfDpW5nZXIgw6RuIGbDtnJ2w6RudGF0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjUzNworbXNnaWQgIkI8LS1wYXRoLWV4Y2x1ZGU9Pkk8Z2xvYi1wYXR0ZXJuPiIKK21zZ3N0ciAiQjwtLXBhdGgtZXhjbHVkZT0+STxmaWxuYW1uc23Dtm5zdGVyPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjUzOQorbXNnaWQgIkI8LS1wYXRoLWluY2x1ZGU9Pkk8Z2xvYi1wYXR0ZXJuPiIKK21zZ3N0ciAiQjwtLWxpc3Q+STxmaWxuYW1uc23Dtm5zdGVyPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjU0MgorbXNnaWQgIiIKKyJTZXQgSTxnbG9iLXBhdHRlcm4+IGFzIGEgcGF0aCBmaWx0ZXIsIGVpdGhlciBieSBleGNsdWRpbmcgb3IgcmUtaW5jbHVkaW5nICIKKyJwcmV2aW91c2x5IGV4Y2x1ZGVkIHBhdGhzIG1hdGNoaW5nIHRoZSBzcGVjaWZpZWQgcGF0dGVybnMgZHVyaW5nIGluc3RhbGwuIgorbXNnc3RyICIiCisiU8OkdHQgSTxmaWxuYW1uc23Dtm5zdGVyPiBzb20gZXR0IHPDtmt2w6Rnc2ZpbHRlciwgYW50aW5nZW4gZ2Vub20gYXR0IGV4a2x1ZGVyYSAiCisiZWxsZXIgw6V0ZXIgaW5rbHVkZXJhIHRpZGlnYXJlIGV4a2x1ZGVyYWRlIHPDtmt2w6RnYXIgc29tIG1vdHN2YXJhciBkZXQgYW5naXZuYSAiCisibcO2bnN0cmV0IHVuZGVyIGluc3RhbGxhdGlvbmVuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjU0NQorbXNnaWQgIiIKKyJJPFdhcm5pbmc6IHRha2UgaW50byBhY2NvdW50IHRoYXQgZGVwZW5kaW5nIG9uIHRoZSBleGNsdWRlZCBwYXRocyB5b3UgbWlnaHQgIgorImNvbXBsZXRlbHkgYnJlYWsgeW91ciBzeXN0ZW0sIHVzZSB3aXRoIGNhdXRpb24uPiIKK21zZ3N0ciAiIgorIkk8VmFybmluZzogdMOkbmsgcMOlIGF0dCBkdSBrYW4gdG90YWx0IMO2ZGVsw6RnZ2EgZGl0dCBzeXN0ZW0sIGJlcm9lbmRlIHDDpSB2aWxrYSAiCisic8O2a3bDpGdhciBkdSBleGtsdWRlcmFyLCBzw6UgYW52w6RuZCBtZWQgdGlsbGbDtnJzaWt0Lj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1NTUKK21zZ2lkICIiCisiVGhlIGdsb2IgcGF0dGVybnMgdXNlIHRoZSBzYW1lIHdpbGRjYXJkcyB1c2VkIGluIHRoZSBzaGVsbCwgd2VyZSAnKicgbWF0Y2hlcyAiCisiYW55IHNlcXVlbmNlIG9mIGNoYXJhY3RlcnMsIGluY2x1ZGluZyB0aGUgZW1wdHkgc3RyaW5nIGFuZCBhbHNvICcvJy4gRm9yICIKKyJleGFtcGxlLCBJPCcvdXNyLyovUkVBRConPiBtYXRjaGVzIEk8Jy91c3Ivc2hhcmUvZG9jL3BhY2thZ2UvUkVBRE1FJz4uICBBcyAiCisidXN1YWwsICc/JyBtYXRjaGVzIGFueSBzaW5nbGUgY2hhcmFjdGVyIChhZ2FpbiwgaW5jbHVkaW5nICcvJykuIEFuZCAnWycgIgorInN0YXJ0cyBhIGNoYXJhY3RlciBjbGFzcywgd2hpY2ggY2FuIGNvbnRhaW4gYSBsaXN0IG9mIGNoYXJhY3RlcnMsIHJhbmdlcyBhbmQgIgorImNvbXBsZW1lbnRhdGlvbnMuIFNlZSBCPGdsb2I+KDcpIGZvciBkZXRhaWxlZCBpbmZvcm1hdGlvbiBhYm91dCBnbG9iYmluZy4gIgorIk5vdGU6IHRoZSBjdXJyZW50IGltcGxlbWVudGF0aW9uIG1pZ2h0IHJlLWluY2x1ZGUgbW9yZSBkaXJlY3RvcmllcyBhbmQgIgorInN5bWxpbmtzIHRoYW4gbmVlZGVkLCB0byBiZSBvbiB0aGUgc2FmZSBzaWRlIGFuZCBhdm9pZCBwb3NzaWJsZSB1bnBhY2sgIgorImZhaWx1cmVzLCBmdXR1cmUgd29yayBtaWdodCBmaXggdGhpcy4iCittc2dzdHIgIiIKKyJGaWxuYW1uc23Dtm5zdHJlbmEgYW52w6RuZGVyIHNhbW1hIHNvcnRzIGpva2VydGVja2VuIHNvbSBza2FsZXQsIGTDpHIgXCIqXCIgIgorIm1vdHN2YXJhciBlbiBzZWt2ZW5zIGF2IHZhbGZyaXR0IGFudGFsIHRlY2tlbiwgaW5rbHVzaXZlIGRlbiB0b21tYSBzdHLDpG5nZW4gIgorIm9jaCDDpHZlbiBcIi9cIi4gVGlsbCBleGVtcGVsIHDDpSBtb3RzdmFyYXIgSTxcIi91c3IvKi9SRUFEKlwiPiBJPFwiL3Vzci9zaGFyZS8iCisiZG9jL3Bha2V0L1JFQURNRVwiPi4gXCI/XCIgbW90c3ZhcmFyIHNvbSB2YW5saWd0IGV0dCBlbnNhbXQgdGVja2VuICjDpHZlbiBow6RyICIKKyJpbmfDpXIgXCIvXCIpLiBPY2ggXCJbXCIgaW5sZWRlciBlbiB0ZWNrZW5rbGFzcywgc29tIGthbiBpbm5laMOlbGxhIGVuIGxpc3RhICIKKyLDtnZlciB0ZWNrZW4sIGludGVydmFsbCBvY2gga29tcGxlbWVudC4gU2UgQjxnbG9iPig3KSBmw7ZyIGRldGFsamVyYWQgIgorImluZm9ybWF0aW9uIG9tIGZpbG5hbW5zbcO2bnN0ZXIuIE9ic2VydmVyYTogZGVuIG51dmFyYW5kZSBpbXBsZW1lbnRhdGlvbmVuICIKKyJrYW4gw6V0ZXJpbmtsdWRlcmEgZmxlciBrYXRhbG9nZXIgb2NoIHN5bWJvbGlza2EgbMOkbmthciDDpG4gbsO2ZHbDpG5kaWd0LCBmw7ZyICIKKyJhdHQgdmFyYSBww6UgZGVuIHPDpGtyYSBzaWRhbiBvY2ggdW5kdmlrYSBtw7ZqbGlnYSB1cHBhY2tuaW5nc2ZlbCwgZnJhbXRpZGEgIgorIsOkbmRyaW5nYXIga2FuIGtvbW1hIGF0dCByw6R0dGEgZGV0dGEuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTU4Cittc2dpZCAiIgorIlRoaXMgY2FuIGJlIHVzZWQgdG8gcmVtb3ZlIGFsbCBwYXRocyBleGNlcHQgc29tZSBwYXJ0aWN1bGFyIG9uZXM7IGEgdHlwaWNhbCAiCisiY2FzZSBpczoiCittc2dzdHIgIiIKKyJEZXR0YSBrYW4gYW52w6RuZGFzIGbDtnIgYXR0IHRhIGJvcnQgYWxsYSBzw7ZrdsOkZ2FyIGbDtnJ1dG9tIG7DpWdyYSBzcGVjaWZpa2E7ICIKKyJldHQgdHlwaXNrdCBhbnbDpG5kbmluZ3NvbXLDpWRlIMOkcjoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo1NjIKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiQjwtLXBhdGgtZXhjbHVkZT0vdXNyL3NoYXJlL2RvYy8qPlxuIgorIkI8LS1wYXRoLWluY2x1ZGU9L3Vzci9zaGFyZS9kb2MvKi9jb3B5cmlnaHQ+XG4iCittc2dzdHIgIiIKKyJCPC0tcGF0aC1leGNsdWRlPS91c3Ivc2hhcmUvZG9jLyo+XG4iCisiQjwtLXBhdGgtaW5jbHVkZT0vdXNyL3NoYXJlL2RvYy8qL2NvcHlyaWdodD5cbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjU2NQorbXNnaWQgInRvIHJlbW92ZSBhbGwgZG9jdW1lbnRhdGlvbiBmaWxlcyBleGNlcHQgdGhlIGNvcHlyaWdodCBmaWxlcy4iCittc2dzdHIgIiIKKyJmw7ZyIGF0dCB0YSBib3J0IGFsbGEgZG9rdW1lbnRhdGlvbnNmaWxlciBmw7ZydXRvbSB1cHBob3ZzcsOkdHRzaW5mb3JtYXRpb24uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTY5Cittc2dpZCAiIgorIlRoZXNlIHR3byBvcHRpb25zIGNhbiBiZSBzcGVjaWZpZWQgbXVsdGlwbGUgdGltZXMsIGFuZCBpbnRlcmxlYXZlZCB3aXRoIGVhY2ggIgorIm90aGVyLiBCb3RoIGFyZSBwcm9jZXNzZWQgaW4gdGhlIGdpdmVuIG9yZGVyLCB3aXRoIHRoZSBsYXN0IHJ1bGUgdGhhdCAiCisibWF0Y2hlcyBhIGZpbGUgbmFtZSBtYWtpbmcgdGhlIGRlY2lzaW9uLiIKK21zZ3N0ciAiIgorIkRlc3NhIHR2w6UgZmxhZ2dvciBrYW4gYW5nZXMgZmxlcmEgZ8Olbmdlciwgb2NoIGthbiBpbnRlcmZvbGllcmFzIG1lZCAiCisidmFyYW5kcmEuIERlIGhhbnRlcmFzIGLDpWRhIGkgZGVuIGdpdm5hIG9yZG5pbmdlbiBvY2ggZGV0IMOkciBkZW4gc2lzdGEgcmVnZWxuICIKKyJzb20gbW90c3ZhcmFyIGV0dCBmaWxuYW1uIHNvbSBmw6RsbGVyIGF2Z8O2cmFuZGV0LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo1NzAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tc3RhdHVzLWZkID5JPG4+IgorbXNnc3RyICJCPC0tc3RhdHVzLWZkID5JPG4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTc2Cittc2dpZCAiIgorIlNlbmQgbWFjaGluZS1yZWFkYWJsZSBwYWNrYWdlIHN0YXR1cyBhbmQgcHJvZ3Jlc3MgaW5mb3JtYXRpb24gdG8gZmlsZSAiCisiZGVzY3JpcHRvciBJPG4+LiBUaGlzIG9wdGlvbiBjYW4gYmUgc3BlY2lmaWVkIG11bHRpcGxlIHRpbWVzLiBUaGUgIgorImluZm9ybWF0aW9uIGlzIGdlbmVyYWxseSBvbmUgcmVjb3JkIHBlciBsaW5lLCBpbiBvbmUgb2YgdGhlIGZvbGxvd2luZyBmb3JtczoiCittc2dzdHIgIiIKKyJTw6RuZCBtYXNraW5sw6RzYmFyIHBha2V0c3RhdHVzIG9jaCBmw7ZybG9wcHNpbmZvcm1hdGlvbiB0aWxsIGZpbGhhbmR0YWcgSTxuPi4gIgorIkZsYWdnYW4ga2FuIGFuZ2VzIGZsZXJhIGfDpW5nZXIuIEluZm9ybWF0aW9uZW4gbGFncmFzIHZhbmxpZ3R2aXMgcmFkIGbDtnIgcmFkLCAiCisiaSBmw7ZsamFuZGUgZm9ybWF0OiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo1NzcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHN0YXR1czogPkk8cGFja2FnZT5CPDogPkk8c3RhdHVzPiIKK21zZ3N0ciAiQjxzdGF0dXM6ID5JPHBha2V0PkI8OiA+STxzdGF0dXM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTgwCittc2dpZCAiUGFja2FnZSBzdGF0dXMgY2hhbmdlZDsgSTxzdGF0dXM+IGlzIGFzIGluIHRoZSBzdGF0dXMgZmlsZS4iCittc2dzdHIgIlBha2V0c3RhdHVzIMOkbmRyYWQ7IEk8c3RhdHVzPiDDpHIgc29tIGkgc3RhdHVzZmlsZW4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjU4MAorIywgbm8td3JhcAorbXNnaWQgIkI8c3RhdHVzOiA+STxwYWNrYWdlPkI8IDogZXJyb3IgOiA+STxleHRlbmRlZC1lcnJvci1tZXNzYWdlPiIKK21zZ3N0ciAiQjxzdGF0dXM6ID5JPHBha2V0PkI8IDogZXJyb3IgOiA+STx1dMO2a2F0LWZlbG1lZGRlbGFuZGU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTg0Cittc2dpZCAiIgorIkFuIGVycm9yIG9jY3VycmVkLiBBbnkgcG9zc2libGUgbmV3bGluZXMgaW4gSTxleHRlbmRlZC1lcnJvci1tZXNzYWdlPiB3aWxsICIKKyJiZSBjb252ZXJ0ZWQgdG8gc3BhY2VzIGJlZm9yZSBvdXRwdXQuIgorbXNnc3RyICIiCisiRXR0IGZlbCB1cHBzdG9kLiBFdmVudHVlbGxhIG55cmFkc3RlY2tlbiBpIEk8dXTDtmthdC1mZWxtZWRkZWxhbmRlbj4ga29tbWVyICIKKyJlcnPDpHR0YXMgbWVkIGJsYW5rc3RlZyBpbm5hbiBkZSBza3JpdnMgdXQuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjU4NAorIywgbm8td3JhcAorbXNnaWQgIkI8c3RhdHVzOiA+STxmaWxlPkI8IDogY29uZmZpbGUtcHJvbXB0IDogJz5JPHJlYWwtb2xkPkI8JyAnPkk8cmVhbC1uZXc+QjwnID5JPHVzZXJlZGl0ZWQ+QjwgPkk8ZGlzdGVkaXRlZD4iCittc2dzdHIgIkI8c3RhdHVzOiA+STxmaWw+QjwgOiBjb25mZmlsZS1wcm9tcHQgOiAnPkk8cmlrdGlnLWdhbW1hbD5CPCcgJz5JPHJpa3RpZy1ueT5CPCcgPkk8YW52w6RuZGFycmVkaWdlcmFkPkI8ID5JPGRpc3RyZWRpZ2VyYWQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NTg3Cittc2dpZCAiVXNlciBpcyBiZWluZyBhc2tlZCBhIGNvbmZmaWxlIHF1ZXN0aW9uLiIKK21zZ3N0ciAiQW52w6RuZGFyZW4gZsOlciBlbiBmcsOlZ2Egb20ga29uZmlndXJhdGlvbnNmaWxlci4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTg3CisjLCBuby13cmFwCittc2dpZCAiQjxwcm9jZXNzaW5nOiA+STxzdGFnZT5CPDogPkk8cGFja2FnZT4iCittc2dzdHIgIkI8cHJvY2Vzc2luZzogPkk8c2tlZGU+Qjw6ID5JPHBha2V0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjU5MgorbXNnaWQgIiIKKyJTZW50IGp1c3QgYmVmb3JlIGEgcHJvY2Vzc2luZyBzdGFnZSBzdGFydHMuIEk8c3RhZ2U+IGlzIG9uZSBvZiBCPHVwZ3JhZGU+LCAiCisiQjxpbnN0YWxsPiAoYm90aCBzZW50IGJlZm9yZSB1bnBhY2tpbmcpLCBCPGNvbmZpZ3VyZT4sIEI8dHJpZ3Byb2M+LCAiCisiQjxkaXNhcHBlYXI+LCBCPHJlbW92ZT4sIEI8cHVyZ2U+LiIKK21zZ3N0ciAiIgorIlPDpG5kcyBwcmVjaXMgaW5uYW4gZXR0IGhhbnRlcmluZ3Nza2VkZSBww6Viw7ZyamFzLiBJPFNrZWRlPiDDpHIgbsOlZ290IGF2ICIKKyJCPHVwZ3JhZGU+LCBCPGluc3RhbGw+IChiw6VkYSBzw6RuZHMgaW5uYW4gcGFrZXRldCBwYWNrYXMgdXBwKSwgQjxjb25maWd1cmU+LCAiCisiQjx0cmlncHJvYz4sIEI8ZGlzYXBwZWFyPiwgQjxyZW1vdmU+LCBCPHB1cmdlPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NTkzCisjLCBuby13cmFwCittc2dpZCAiQjwtLXN0YXR1cy1sb2dnZXI+PUk8Y29tbWFuZD4iCittc2dzdHIgIkI8LS1zdGF0dXMtbG9nZ2VyPj1JPGtvbW1hbmRvPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjU5OAorbXNnaWQgIiIKKyJTZW5kIG1hY2hpbmUtcmVhZGFibGUgcGFja2FnZSBzdGF0dXMgYW5kIHByb2dyZXNzIGluZm9ybWF0aW9uIHRvIHRoZSBzaGVsbCAiCisiSTxjb21tYW5kPidzIHN0YW5kYXJkIGlucHV0LiBUaGlzIG9wdGlvbiBjYW4gYmUgc3BlY2lmaWVkIG11bHRpcGxlIHRpbWVzLiAiCisiVGhlIG91dHB1dCBmb3JtYXQgdXNlZCBpcyB0aGUgc2FtZSBhcyBpbiBCPC0tc3RhdHVzLWZkLj4iCittc2dzdHIgIiIKKyJTw6RuZCBtYXNraW5sw6RzYmFyIHBha2V0c3RhdHVzIG9jaCBmw7ZybG9wcHNpbmZvcm1hdGlvbiB0aWxsIHNrYWwtIgorIkk8a29tbWFuZG8+dHMgc3RhbmRhcmQgaW4uIEZsYWdnYW4ga2FuIGFuZ2VzIGZsZXJhIGfDpW5nZXIuIFV0ZGF0YWZvcm1hdGV0ICIKKyJzb20gYW52w6RuZHMgw6RyIGRldHNhbW1hIHNvbSBmw7ZyIEI8LS1zdGF0dXMtZmQ+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo1OTkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tbG9nPT5JPGZpbGVuYW1lPiIKK21zZ3N0ciAiQjwtLWxvZz0+STxmaWxuYW1uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjYxMQorbXNnaWQgIiIKKyJMb2cgc3RhdHVzIGNoYW5nZSB1cGRhdGVzIGFuZCBhY3Rpb25zIHRvIEk8ZmlsZW5hbWU+LCBpbnN0ZWFkIG9mIHRoZSBkZWZhdWx0ICIKKyJJPC92YXIvbG9nL2Rwa2cubG9nPi4gSWYgdGhpcyBvcHRpb24gaXMgZ2l2ZW4gbXVsdGlwbGUgdGltZXMsIHRoZSBsYXN0ICIKKyJmaWxlbmFtZSBpcyB1c2VkLiBMb2cgbWVzc2FnZXMgYXJlIG9mIHRoZSBmb3JtIGBZWVlZLU1NLUREIEhIOk1NOlNTIHN0YXR1cyAiCisiSTxzdGF0ZT4gSTxwa2c+IEk8aW5zdGFsbGVkLXZlcnNpb24+JyBmb3Igc3RhdHVzIGNoYW5nZSB1cGRhdGVzOyBgWVlZWS1NTS1ERCAiCisiSEg6TU06U1MgSTxhY3Rpb24+IEk8cGtnPiBJPGluc3RhbGxlZC12ZXJzaW9uPiBJPGF2YWlsYWJsZS12ZXJzaW9uPicgZm9yICIKKyJhY3Rpb25zIHdoZXJlIEk8YWN0aW9uPiBpcyBvbmUgb2YgQjxpbnN0YWxsPiwgQjx1cGdyYWRlPiwgQjxyZW1vdmU+LCAiCisiQjxwdXJnZT47IGFuZCBgWVlZWS1NTS1ERCBISDpNTTpTUyBjb25mZmlsZSBJPGZpbGVuYW1lPiBJPGRlY2lzaW9uPicgZm9yICIKKyJjb25mZmlsZSBjaGFuZ2VzIHdoZXJlIEk8ZGVjaXNpb24+IGlzIGVpdGhlciBCPGluc3RhbGw+IG9yIEI8a2VlcD4uIgorbXNnc3RyICIiCisiTG9nZ2Egc3RhdHVzw6RuZHJpbmdzbWVkZGVsYW5kZW4gb2NoIGtvbW1hbmRvbiB0aWxsIEk8ZmlsbmFtbj4sIGlzdMOkbGxldCBmw7ZyICIKKyJmw7ZydmFsZXQgSTwvdmFyL2xvZy9kcGtnLmxvZz4uIE9tIGZsYWdnYW4gZ2VzIGZsZXJhIGfDpW5nZXIgYW52w6RuZHMgZGV0IHNpc3RhICIKKyJmaWxuYW1uZXQuIExvZ2dtZWRkZWxhbmRlbiDDpHIgcMOlIGZvcm1lbiBcIsOFw4XDhcOFLU1NLUREIEhIOk1NOlNTIHN0YXR1cyAiCisiSTx0aWxsc3TDpW5kPiBJPHBha2V0PiBJPGluc3RhbGxlcmFkLXZlcnNpb24+XCIgZsO2ciBzdGF0dXPDpG5kcmluZ2FyOyBcIsOFw4XDhcOFLSIKKyJNTS1ERCBISDpNTTpTUyBJPMOldGfDpHJkPiBJPHBha2V0PiBJPGluc3RhbGxlcmFkLXZlcnNpb250PiBJPHRpbGxnw6RuZ2xpZy0iCisidmVyc2lvbj5cIiBmw7ZyIMOldGfDpHJkZXIgZMOkciBJPMOldGfDpHJkPiDDpHIgZXR0IGF2IEI8aW5zdGFsbD4sIEI8dXBncmFkZT4sICIKKyJCPHJlbW92ZT4sIEI8cHVyZ2U+OyBzYW10IFwiw4XDhcOFw4UtTU0tREQgSEg6TU06U1MgY29uZmZpbGUgSTxmaWxuYW1uPiBJPHZhbD5cIiAiCisiZsO2ciBrb25maWd1cmF0aW9uc2ZpbHPDpG5kcmluZ2FyIGTDpHIgSTx2YWw+IGFudGluZ2VuIMOkciBCPGluc3RhbGw+IGVsbGVyICIKKyJCPGtlZXA+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2MTEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tbm8tZGVic2lnPiIKK21zZ3N0ciAiQjwtLW5vLWRlYnNpZz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2MTQKK21zZ2lkICJEbyBub3QgdHJ5IHRvIHZlcmlmeSBwYWNrYWdlIHNpZ25hdHVyZXMuIgorbXNnc3RyICJGw7Zyc8O2ayBpbnRlIHZlcmlmaWVyYSBwYWtldHNpZ25hdHVyZXIuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjYxNAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1uby10cmlnZ2Vycz4iCittc2dzdHIgIkI8LS1uby10cmlnZ2Vycz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2MjMKK21zZ2lkICIiCisiRG8gbm90IHJ1biBhbnkgdHJpZ2dlcnMgaW4gdGhpcyBydW4gKGFjdGl2YXRpb25zIHdpbGwgc3RpbGwgYmUgcmVjb3JkZWQpLiAgIgorIklmIHVzZWQgd2l0aCBCPC0tY29uZmlndXJlPiBJPHBhY2thZ2U+IG9yIEI8LS10cmlnZ2Vycy1vbmx5PiBJPHBhY2thZ2U+IHRoZW4gIgorInRoZSBuYW1lZCBwYWNrYWdlIHBvc3RpbnN0IHdpbGwgc3RpbGwgYmUgcnVuIGV2ZW4gaWYgb25seSBhIHRyaWdnZXJzIHJ1biBpcyAiCisibmVlZGVkLiBVc2Ugb2YgdGhpcyBvcHRpb24gbWF5IGxlYXZlIHBhY2thZ2VzIGluIHRoZSBpbXByb3BlciBCPHRyaWdnZXJzLSIKKyJhd2FpdGVkPiBhbmQgQjx0cmlnZ2Vycy1wZW5kaW5nPiBzdGF0ZXMuIFRoaXMgY2FuIGJlIGZpeGVkIGxhdGVyIGJ5IHJ1bm5pbmc6ICIKKyJCPGRwa2cgLS1jb25maWd1cmUgLS1wZW5kaW5nPi4iCittc2dzdHIgIiIKKyJVdGbDtnIgaW50ZSB1dGzDtnNhcmUgaSBkZW5uYSBrw7ZybmluZyAoYWt0aXZlcmluZ2FyIGtvbW1lciBmb3J0ZmFyYW5kZSBhdHQgIgorImFudGVja25hcykuIE9tIGRldCBhbnbDpG5kcyB0aWxsc2FtbWFucyBtZWQgQjwtLWNvbmZpZ3VyZT4gSTxwYWtldD4gZWxsZXIgQjwtLSIKKyJ0cmlnZ2Vycy1vbmx5PiBJPHBha2V0PiBrb21tZXIgZGV0IG5hbW5naXZuYSBwYWtldGV0cyBwb3N0aW5zdCBmb3J0ZmFyYW5kZSAiCisiYXR0IGvDtnJhcyDDpHZlbiBvbSBkZXQgZW5kYSBzb20gYmVow7Z2ZGVzIHZhciBlbiBrw7ZybmluZyBhdiB1dGzDtnNhcmUuIE9tIGR1ICIKKyJhbnbDpG5kZXIgZGVubmEgZmxhZ2dhIGthbiBkZXQgaMOkbmRhIGF0dCBwYWtldCBoYW1uYXIgaSBmZWxha3RpZ2EgQjx2w6RudGFyIHDDpSAiCisidXRsw7ZzYXJlPi0gb2NoIEI8dXRsw7ZzYXJlIHbDpG50YXI+LXRpbGxzdMOlbmQuIERldHRhIGthbiByw6R0dGFzIHNlbmFyZSBnZW5vbSAiCisiYXR0IGvDtnJhOiBCPGRwa2cgLS1jb25maWd1cmUgLS1wZW5kaW5nPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NjIzCisjLCBuby13cmFwCittc2dpZCAiQjwtLXRyaWdnZXJzPiIKK21zZ3N0ciAiQjwtLXRyaWdnZXJzPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjYyNgorbXNnaWQgIkNhbmNlbHMgYSBwcmV2aW91cyBCPC0tbm8tdHJpZ2dlcnM+LiIKK21zZ3N0ciAiw5Z2ZXJzdHlyIGV0dCB0aWRpZ2FyZSBCPC0tbm8tdHJpZ2dlcnM+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjYyOCBkcGtnLmNmZy41OjE2CisjLCBuby13cmFwCittc2dpZCAiSTwvZXRjL2Rwa2cvZHBrZy5jZmc+IgorbXNnc3RyICJJPC9ldGMvZHBrZy9kcGtnLmNmZz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2MzEKK21zZ2lkICJDb25maWd1cmF0aW9uIGZpbGUgd2l0aCBkZWZhdWx0IG9wdGlvbnMuIgorbXNnc3RyICJLb25maWd1cmF0aW9uc2ZpbCBtZWQgZsO2cnZhbGRhIGluc3TDpGxsbmluZ2FyLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2MzEKKyMsIG5vLXdyYXAKK21zZ2lkICJJPC92YXIvbG9nL2Rwa2cubG9nPiIKK21zZ3N0ciAiSTwvdmFyL2xvZy9kcGtnLmxvZz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2MzUKK21zZ2lkICJEZWZhdWx0IGxvZyBmaWxlIChzZWUgSTwvZXRjL2Rwa2cvZHBrZy5jZmc+KDUpIGFuZCBvcHRpb24gQjwtLWxvZz4pLiIKK21zZ3N0ciAiRsO2cnZhbGQgbG9nZ2ZpbCAoc2UgSTwvZXRjL2Rwa2cvZHBrZy5jZmc+KDUpIG9jaCBmbGFnZ2FuIEI8LS1sb2c+KS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2MzgKK21zZ2lkICIiCisiVGhlIG90aGVyIGZpbGVzIGxpc3RlZCBiZWxvdyBhcmUgaW4gdGhlaXIgZGVmYXVsdCBkaXJlY3Rvcmllcywgc2VlIG9wdGlvbiAiCisiQjwtLWFkbWluZGlyPiB0byBzZWUgaG93IHRvIGNoYW5nZSBsb2NhdGlvbnMgb2YgdGhlc2UgZmlsZXMuIgorbXNnc3RyICIiCisiw5Z2cmlnYSBmaWxlciBzb20gbGlzdGFzIGjDpHIgZmlubnMgaSBzaW5hIGbDtnJ2YWxkYSBrYXRhbG9nZXIsIHNlIGZsYWdnYW4gQjwtLSIKKyJhZG1pbmRpcj4gZsO2ciBpbmZvcm1hdGlvbiBvbSBodXIgZHUgw6RuZHJhciBwbGFjZXJpbmdlbiBhdiBkZXNzYSBmaWxlci4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NjM4CisjLCBuby13cmFwCittc2dpZCAiSTwvdmFyL2xpYi9kcGtnL2F2YWlsYWJsZT4iCittc2dzdHIgIkk8L3Zhci9saWIvZHBrZy9hdmFpbGFibGU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NjQxCittc2dpZCAiTGlzdCBvZiBhdmFpbGFibGUgcGFja2FnZXMuIgorbXNnc3RyICJMaXN0YSDDtnZlciB0aWxsZ8OkbmdsaWdhIHBha2V0LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2NDEKKyMsIG5vLXdyYXAKK21zZ2lkICJJPC92YXIvbGliL2Rwa2cvc3RhdHVzPiIKK21zZ3N0ciAiSTwvdmFyL2xpYi9kcGtnL3N0YXR1cz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2NDcKK21zZ2lkICIiCisiU3RhdHVzZXMgb2YgYXZhaWxhYmxlIHBhY2thZ2VzLiBUaGlzIGZpbGUgY29udGFpbnMgaW5mb3JtYXRpb24gYWJvdXQgd2hldGhlciAiCisiYSBwYWNrYWdlIGlzIG1hcmtlZCBmb3IgcmVtb3Zpbmcgb3Igbm90LCB3aGV0aGVyIGl0IGlzIGluc3RhbGxlZCBvciBub3QsICIKKyJldGMuIFNlZSBzZWN0aW9uIEI8SU5GT1JNQVRJT04gQUJPVVQgUEFDS0FHRVM+IGZvciBtb3JlIGluZm8uIgorbXNnc3RyICIiCisiU3RhdHVzIGbDtnIgdGlsbGfDpG5nbGlnYSBwYWtldC4gRmlsZW4gaW5uZWjDpWxsZXIgaW5mb3JtYXRpb24gb20gaHVydXZpZGEgZXR0ICIKKyJwYWtldCDDpHIgbWFya2VyYXQgZsO2ciBib3J0dGFnbmluZyBlbGxlciBlaiwgb20gZGV0IMOkciBpbnN0YWxsZXJhdCBlbGxlciBlaiwgIgorIm9zdi4gU2Ugc2VrdGlvbmVuIEI8SU5GT1JNQVRJT04gT00gUEFLRVQ+IGbDtnIgeXR0ZXJsaWdhcmUgaW5mb3JtYXRpb24uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NjUwCittc2dpZCAiIgorIlRoZSBzdGF0dXMgZmlsZSBpcyBiYWNrZWQgdXAgZGFpbHkgaW4gSTwvdmFyL2JhY2t1cHM+LiBJdCBjYW4gYmUgdXNlZnVsIGlmICIKKyJpdCdzIGxvc3Qgb3IgY29ycnVwdGVkIGR1ZSB0byBmaWxlc3lzdGVtcyB0cm91Ymxlcy4iCittc2dzdHIgIiIKKyJTdGF0dXNmaWxlbiBzw6RrZXJoZXRza29waWVyYXMgZGFnbGlnZW4gaSBJPC92YXIvYmFja3Vwcz4uIERldCBrYW4gdmFyYSAiCisibnl0dGlndCBvbSBkZW4gZ8OlciBmw7ZybG9yYWQgZWxsZXIgc2tyaXZzIHPDtm5kZXIgcMOlIGdydW5kIGF2IHByb2JsZW0gbWVkICIKKyJmaWxzeXN0ZW1ldC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2NTMKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBmaWxlcyBhcmUgY29tcG9uZW50cyBvZiBhIGJpbmFyeSBwYWNrYWdlLiBTZWUgQjxkZWI+KDUpICBmb3IgIgorIm1vcmUgaW5mb3JtYXRpb24gYWJvdXQgdGhlbToiCittc2dzdHIgIiIKKyJGw7ZsamFuZGUgZmlsZXIgw6RyIGtvbXBvbmVudGVyIGkgZGV0IGJpbsOkcmEgcGFrZXRldC4gU2UgQjxkZWI+KDUpIGbDtnIgIgorInl0dGVybGlnYXJlIGluZm9ybWF0aW9uIG9tIGRlbToiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NjUzCisjLCBuby13cmFwCittc2dpZCAiSTxjb250cm9sPiIKK21zZ3N0ciAiSTxjb250cm9sPiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2NTUKKyMsIG5vLXdyYXAKK21zZ2lkICJJPGNvbmZmaWxlcz4iCittc2dzdHIgIkk8Y29uZmZpbGVzPiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2NTcKKyMsIG5vLXdyYXAKK21zZ2lkICJJPHByZWluc3Q+IgorbXNnc3RyICJJPHByZWluc3Q+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjY1OQorIywgbm8td3JhcAorbXNnaWQgIkk8cG9zdGluc3Q+IgorbXNnc3RyICJJPHBvc3RpbnN0PiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2NjEKKyMsIG5vLXdyYXAKK21zZ2lkICJJPHByZXJtPiIKK21zZ3N0ciAiSTxwcmVybT4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NjYzCisjLCBuby13cmFwCittc2dpZCAiSTxwb3N0cm0+IgorbXNnc3RyICJJPHBvc3RybT4iCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLjE6NjY2IGRwa2ctYnVpbGRmbGFncy4xOjEyOCBkcGtnLWJ1aWxkcGFja2FnZS4xOjIzMCBkcGtnLWRlYi4xOjIzMgorIzogZHBrZy1kaXZlcnQuODoxMTIgZHBrZy1xdWVyeS4xOjIwNCBkcGtnLXN0YXRvdmVycmlkZS44OjY4IGRwa2ctdHJpZ2dlci4xOjYwCisjOiBkcGtnLXZlbmRvci4xOjQyIGRzZWxlY3QuMTo0MjMgdXBkYXRlLWFsdGVybmF0aXZlcy44OjM1NAorIywgbm8td3JhcAorbXNnaWQgIkVOVklST05NRU5UIgorbXNnc3RyICJNSUxKw5ZWQVJJQUJMRVIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NjY3IGRzZWxlY3QuMTo0MjQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPEhPTUU+IgorbXNnc3RyICJCPEhPTUU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NjcxCittc2dpZCAiIgorIklmIHNldCwgQjxkcGtnPiB3aWxsIHVzZSBpdCBhcyB0aGUgZGlyZWN0b3J5IGZyb20gd2hpY2ggdG8gcmVhZCB0aGUgdXNlciAiCisic3BlY2lmaWMgY29uZmlndXJhdGlvbiBmaWxlLiIKK21zZ3N0ciAiIgorIk9tIHNhdHQgc8OlIGtvbW1lciBCPGRwa2c+IGF0dCBhbnbDpG5kYSBkZXQgc29tIGRlbiBrYXRhbG9nIGZyw6VuIHZpbGtlbiBkZXQgIgorInNrYWxsIGzDpHNhIGRlbiBhbnbDpG5kYXJzcGVjaWZpa2Ega29uZmlndXJhdGlvbnNmaWxlbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6NjcxIGRwa2ctZGViLjE6MjMzCisjLCBuby13cmFwCittc2dpZCAiQjxUTVBESVI+IgorbXNnc3RyICJCPFRNUERJUj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2NzUKK21zZ2lkICIiCisiSWYgc2V0LCBCPGRwa2c+IHdpbGwgdXNlIGl0IGFzIHRoZSBkaXJlY3RvcnkgaW4gd2hpY2ggdG8gY3JlYXRlIHRlbXBvcmFyeSAiCisiZmlsZXMgYW5kIGRpcmVjdG9yaWVzLiIKK21zZ3N0ciAiIgorIk9tIHNhdHQgc8OlIGtvbW1lciBCPGRwa2c+IGF0dCBhbnbDpG5kYSBkZXQgc29tIGRlbiBrYXRhbG9nIGTDpHIgZGV0IHNrYXBhciAiCisidGVtcG9yw6RyYSBmaWxlciBvY2gga2F0YWxvZ2VyLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2NzUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPFBBR0VSPiIKK21zZ3N0ciAiQjxQQUdFUj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2NzgKK21zZ2lkICJUaGUgcHJvZ3JhbSBCPGRwa2c+IHdpbGwgZXhlY3V0ZSB3aGVuIGRpc3BsYXlpbmcgdGhlIGNvbmZmaWxlcy4iCittc2dzdHIgIiIKKyJQcm9ncmFtbWV0IEI8ZHBrZz4ga29tbWVyIGF0dCBleGVrdmVyYXMgZsO2ciBhdHQgdmlzYSBrb25maWd1cmF0aW9uc2ZpbGVyLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2NzgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPFNIRUxMPiIKK21zZ3N0ciAiQjxTSEVMTD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2ODEKK21zZ2lkICJUaGUgcHJvZ3JhbSBCPGRwa2c+IHdpbGwgZXhlY3V0ZSB3aGVuIHN0YXJ0aW5nIGEgbmV3IHNoZWxsLiIKK21zZ3N0ciAiUHJvZ3JhbW1ldCBCPGRwa2c+IGtvbW1lciBhdHQgZXhla3ZlcmFzIG7DpHIgZXR0IG55dHQgc2thbCBzdGFydGFzLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2ODEgZHBrZy1xdWVyeS4xOjIwOQorIywgbm8td3JhcAorbXNnaWQgIkI8Q09MVU1OUz4iCittc2dzdHIgIkI8Q09MVU1OUz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2ODUKK21zZ2lkICIiCisiU2V0cyB0aGUgbnVtYmVyIG9mIGNvbHVtbnMgQjxkcGtnPiBzaG91bGQgdXNlIHdoZW4gZGlzcGxheWluZyBmb3JtYXR0ZWQgIgorInRleHQuIEN1cnJlbnRseSBvbmx5IHVzZWQgYnkgLWwuIgorbXNnc3RyICIiCisiU8OkdHRlciBhbnRhbGV0IGtvbHVtbmVyIEI8ZHBrZz4gc2thbGwgYW52w6RuZGEgbsOkciBmb3JtYXRlcmFkIHRleHQgdmlzYXMuICIKKyJBbnbDpG5kcyBmw7ZyIG7DpHJ2YXJhbmRlIGVuYmFydCBhdiAtbC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLjE6Njg1CisjLCBuby13cmFwCittc2dpZCAiQjxEUEtHX1NIRUxMX1JFQVNPTj4iCittc2dzdHIgIkI8RFBLR19TSEVMTF9SRUFTT04+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6Njg5Cittc2dpZCAiIgorIkRlZmluZWQgYnkgQjxkcGtnPiBvbiB0aGUgc2hlbGwgc3Bhd25lZCBvbiB0aGUgY29uZmZpbGUgcHJvbXB0IHRvIGV4YW1pbmUgIgorInRoZSBzaXR1YXRpb24uIEN1cnJlbnQgdmFsaWQgdmFsdWU6IEI8Y29uZmZpbGUtcHJvbXB0Pi4iCittc2dzdHIgIiIKKyJEZWZpbmllcmFzIGF2IEI8ZHBrZz4gaSBza2FsZXQgc29tIHN0YXJ0YXMgZsO2ciBhdHQgdW5kZXJzw7ZrYSBzaXR1YXRpb25lbiAiCisiZWZ0ZXIga29uZmlndXJhdGlvbnNmaWxzZnLDpWdhbi4gVGlsbMOldG5hIHbDpHJkZW4gw6RyIGbDtnIgbsOkcnZhcmFuZGU6ICIKKyJCPGNvbmZmaWxlLXByb21wdD4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjY4OQorIywgbm8td3JhcAorbXNnaWQgIkI8RFBLR19DT05GRklMRV9PTEQ+IgorbXNnc3RyICJCPERQS0dfQ09ORkZJTEVfT0xEPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjY5MworbXNnaWQgIiIKKyJEZWZpbmVkIGJ5IEI8ZHBrZz4gb24gdGhlIHNoZWxsIHNwYXduZWQgb24gdGhlIGNvbmZmaWxlIHByb21wdCB0byBleGFtaW5lICIKKyJ0aGUgc2l0dWF0aW9uLiBDb250YWlucyB0aGUgcGF0aCB0byB0aGUgb2xkIGNvbmZmaWxlLiIKK21zZ3N0ciAiIgorIkRlZmluaWVyYXMgYXYgQjxkcGtnPiBpIHNrYWxldCBzb20gc3RhcnRhcyBmw7ZyIGF0dCB1bmRlcnPDtmthIHNpdHVhdGlvbmVuICIKKyJlZnRlciBrb25maWd1cmF0aW9uc2ZpbHNmcsOlZ2FuLiBJbm5laMOlbGxlciBzw7ZrdsOkZ2VuIHRpbGwgZGVuIGdhbWxhICIKKyJrb25maWd1cmF0aW9uc2ZpbGVuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo2OTMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPERQS0dfQ09ORkZJTEVfTkVXPiIKK21zZ3N0ciAiQjxEUEtHX0NPTkZGSUxFX05FVz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo2OTcKK21zZ2lkICIiCisiRGVmaW5lZCBieSBCPGRwa2c+IG9uIHRoZSBzaGVsbCBzcGF3bmVkIG9uIHRoZSBjb25mZmlsZSBwcm9tcHQgdG8gZXhhbWluZSAiCisidGhlIHNpdHVhdGlvbi4gQ29udGFpbnMgdGhlIHBhdGggdG8gdGhlIG5ldyBjb25mZmlsZS4iCittc2dzdHIgIiIKKyJEZWZpbmllcmFzIGF2IEI8ZHBrZz4gaSBza2FsZXQgc29tIHN0YXJ0YXMgZsO2ciBhdHQgdW5kZXJzw7ZrYSBzaXR1YXRpb25lbiAiCisiZWZ0ZXIga29uZmlndXJhdGlvbnNmaWxzZnLDpWdhbi4gSW5uZWjDpWxsZXIgc8O2a3bDpGdlbiB0aWxsIGRlbiBueWEgIgorImtvbmZpZ3VyYXRpb25zZmlsZW4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjY5NworIywgbm8td3JhcAorbXNnaWQgIkI8RFBLR19SVU5OSU5HX1ZFUlNJT04+IgorbXNnc3RyICJCPERQS0dfUlVOTklOR19WRVJTSU9OPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjcwMQorbXNnaWQgIiIKKyJEZWZpbmVkIGJ5IEI8ZHBrZz4gb24gdGhlIG1haW50YWluZXIgc2NyaXB0IGVudmlyb25tZW50IHRvIHRoZSB2ZXJzaW9uIG9mICIKKyJ0aGUgY3VycmVudGx5IHJ1bm5pbmcgQjxkcGtnPiBpbnN0YW5jZS4iCittc2dzdHIgIiIKKyJEZWZpbmllcmFzIGF2IEI8ZHBrZz4gaSB1dHZlY2tsYXJza3JpcHRldHMgbWlsasO2IHRpbGwgdmVyc2lvbmVuIGF2IGRlbiAiCisiaW5zdGFucyBhdiBCPGRwa2c+IHNvbSBrw7ZycyBmw7ZyIHRpbGxmw6RsbGV0LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo3MDEgZHBrZy1kaXZlcnQuODoxMTcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPERQS0dfTUFJTlRTQ1JJUFRfUEFDS0FHRT4iCittc2dzdHIgIkI8RFBLR19NQUlOVFNDUklQVF9QQUNLQUdFPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjcwNQorbXNnaWQgIiIKKyJEZWZpbmVkIGJ5IEI8ZHBrZz4gb24gdGhlIG1haW50YWluZXIgc2NyaXB0IGVudmlyb25tZW50IHRvIHRoZSBwYWNrYWdlIG5hbWUgIgorImJlaW5nIGhhbmRsZWQuIgorbXNnc3RyICIiCisiRGVmaW5pZXJhcyBhdiBCPGRwa2c+IGkgdXR2ZWNrbGFyc2tyaXB0ZXRzIG1pbGrDtiB0aWxsIG5hbW5ldCBww6UgcGFrZXRldCBzb20gIgorImhhbnRlcmFzLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2cuMTo3MDUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPERQS0dfTUFJTlRTQ1JJUFRfQVJDSD4iCittc2dzdHIgIkI8RFBLR19NQUlOVFNDUklQVF9BUkNIPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjcwOQorbXNnaWQgIiIKKyJEZWZpbmVkIGJ5IEI8ZHBrZz4gb24gdGhlIG1haW50YWluZXIgc2NyaXB0IGVudmlyb25tZW50IHRvIHRoZSBhcmNoaXRlY3R1cmUgIgorInRoZSBwYWNrYWdlIGdvdCBidWlsdCBmb3IuIgorbXNnc3RyICIiCisiRGVmaW5pZXJhcyBhdiBCPGRwa2c+IGkgdXR2ZWNrbGFyc2tyaXB0ZXRzIG1pbGrDtiB0aWxsIGFya2l0ZWt0dXJlbiBwYWtldGV0ICIKKyJieWdnZGVzIGbDtnIuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy4xOjcwOQorIywgbm8td3JhcAorbXNnaWQgIkI8RFBLR19NQUlOVFNDUklQVF9OQU1FPiIKK21zZ3N0ciAiQjxEUEtHX01BSU5UU0NSSVBUX05BTUU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzEzCittc2dpZCAiIgorIkRlZmluZWQgYnkgQjxkcGtnPiBvbiB0aGUgbWFpbnRhaW5lciBzY3JpcHQgZW52aXJvbm1lbnQgdG8gdGhlIG5hbWUgb2YgdGhlICIKKyJzY3JpcHQgcnVubmluZyAocHJlaW5zdCwgcG9zdGluc3QsIHByZXJtLCBwb3N0cm0pLiIKK21zZ3N0ciAiIgorIkRlZmluaWVyYXMgYXYgQjxkcGtnPiBpIHV0dmVja2xhcnNrcmlwdGV0cyBtaWxqw7YgdGlsbCBuYW1uZXQgcMOlIGRldCBza3JpcHQgIgorInNvbSBrw7ZycyAocHJlaW5zdCwgcG9zdGluc3QsIHByZXJtLCBwb3N0cm0pLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjcxNgorbXNnaWQgIlRvIGxpc3QgcGFja2FnZXMgcmVsYXRlZCB0byB0aGUgZWRpdG9yIEI8dmk+KDEpOiIKK21zZ3N0ciAiIgorIkbDtnIgYXR0IGxpc3RhIHBha2V0IHJlbGF0ZXJhZGUgdGlsbCB0ZXh0cmVkaWdlcmluZ3Nwcm9ncmFtbWV0IEI8dmk+KDEpOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjcxOAorIywgbm8td3JhcAorbXNnaWQgIiAgICAgQjxkcGtnIC1sIFxcKGFxKnZpKlxcKGFxPlxuIgorbXNnc3RyICIgICAgIEI8ZHBrZyAtbCBcXChhcSp2aSpcXChhcT5cbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjcyMQorbXNnaWQgIlRvIHNlZSB0aGUgZW50cmllcyBpbiBJPC92YXIvbGliL2Rwa2cvYXZhaWxhYmxlPiBvZiB0d28gcGFja2FnZXM6IgorbXNnc3RyICJGw7ZyIGF0dCBzZSBwb3N0ZXJuYSBpIEk8L3Zhci9saWIvZHBrZy9hdmFpbGFibGU+IGbDtnIgdHbDpSBwYWtldDoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3MjMKKyMsIG5vLXdyYXAKK21zZ2lkICIgICAgIEI8ZHBrZyAtLXByaW50LWF2YWlsIGVsdmlzIHZpbSB8IGxlc3M+XG4iCittc2dzdHIgIiAgICAgQjxkcGtnIC0tcHJpbnQtYXZhaWwgZWx2aXMgdmltIHwgbGVzcz5cbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjcyNgorbXNnaWQgIlRvIHNlYXJjaCB0aGUgbGlzdGluZyBvZiBwYWNrYWdlcyB5b3Vyc2VsZjoiCittc2dzdHIgIkbDtnIgYXR0IHNqw6RsdiBzw7ZrYSBpIHBha2V0bGlzdGFuOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjcyOAorIywgbm8td3JhcAorbXNnaWQgIiAgICAgQjxsZXNzIC92YXIvbGliL2Rwa2cvYXZhaWxhYmxlPlxuIgorbXNnc3RyICIgICAgIEI8bGVzcyAvdmFyL2xpYi9kcGtnL2F2YWlsYWJsZT5cbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjczMQorbXNnaWQgIlRvIHJlbW92ZSBhbiBpbnN0YWxsZWQgZWx2aXMgcGFja2FnZToiCittc2dzdHIgIkbDtnIgYXR0IHRhIGJvcnQgZGV0IGluc3RhbGxlcmFkZSBwYWtldGV0IGVsdmlzOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjczMworIywgbm8td3JhcAorbXNnaWQgIiAgICAgQjxkcGtnIC1yIGVsdmlzPlxuIgorbXNnc3RyICIgICAgIEI8ZHBrZyAtciBlbHZpcz5cbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjczOAorbXNnaWQgIiIKKyJUbyBpbnN0YWxsIGEgcGFja2FnZSwgeW91IGZpcnN0IG5lZWQgdG8gZmluZCBpdCBpbiBhbiBhcmNoaXZlIG9yIENEUk9NLiBUaGUgIgorIlwiYXZhaWxhYmxlXCIgZmlsZSBzaG93cyB0aGF0IHRoZSB2aW0gcGFja2FnZSBpcyBpbiBzZWN0aW9uIFwiZWRpdG9yc1wiOiIKK21zZ3N0ciAiIgorIkbDtnIgYXR0IGluc3RhbGxlcmEgZXR0IHBha2V0IG3DpXN0ZSBkdSBmw7Zyc3QgbGV0YSBww6UgZGV0IGkgZXR0IGFya2l2IGVsbGVyIHDDpSAiCisiZW4gY2Qtcm9tLiBGaWxlbiBcImF2YWlsYWJsZVwiIHZpc2FyIGF0dCB2aW0tcGFrZXRldCBmaW5ucyBpIHNla3Rpb25lbiAiCisiXCJlZGl0b3JzXCI6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzQxCisjLCBuby13cmFwCittc2dpZCAiIgorIiAgICAgQjxjZCAvbWVkaWEvY2Ryb20vcG9vbC9tYWluL3YvdmltPlxuIgorIiAgICAgQjxkcGtnIC1pIHZpbV80LjUtMy5kZWI+XG4iCittc2dzdHIgIiIKKyIgICAgIEI8Y2QgL21lZGlhL2Nkcm9tL3Bvb2wvbWFpbi92L3ZpbT5cbiIKKyIgICAgIEI8ZHBrZyAtaSB2aW1fNC41LTMuZGViPlxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzQ0Cittc2dpZCAiVG8gbWFrZSBhIGxvY2FsIGNvcHkgb2YgdGhlIHBhY2thZ2Ugc2VsZWN0aW9uIHN0YXRlczoiCittc2dzdHIgIkbDtnIgYXR0IGfDtnJhIGVuIGxva2FsIGtvcGlhIGF2IHBha2V0bWFya2VyaW5nYXJuYToiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3NDYKKyMsIG5vLXdyYXAKK21zZ2lkICIgICAgIEI8ZHBrZyAtLWdldC1zZWxlY3Rpb25zIEU8Z3Q+bXlzZWxlY3Rpb25zPlxuIgorbXNnc3RyICIgICAgIEI8ZHBrZyAtLWdldC1zZWxlY3Rpb25zIEU8Z3Q+bWl0dHVydmFsPlxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzUwCittc2dpZCAiIgorIllvdSBtaWdodCB0cmFuc2ZlciB0aGlzIGZpbGUgdG8gYW5vdGhlciBjb21wdXRlciwgYW5kIGluc3RhbGwgaXQgdGhlcmUgd2l0aDoiCittc2dzdHIgIiIKKyJEdSBrYW4gw7Z2ZXJmw7ZyYSBmaWxlbiB0aWxsIGVuIGFubmFuIGRhdG9yIG9jaCBpbnN0YWxsZXJhIGRlbiBkw6RyIGdlbm9tIGF0dCAiCisic2tyaXZhOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjc1MworIywgbm8td3JhcAorbXNnaWQgIiIKKyIgICAgIEI8ZHBrZyAtLWNsZWFyLXNlbGVjdGlvbnM+XG4iCisiICAgICBCPGRwa2cgLS1zZXQtc2VsZWN0aW9ucyBFPGx0Pm15c2VsZWN0aW9ucz5cbiIKK21zZ3N0ciAiIgorIiAgICAgQjxkcGtnIC0tY2xlYXItc2VsZWN0aW9ucz5cbiIKKyIgICAgIEI8ZHBrZyAtLXNldC1zZWxlY3Rpb25zIEU8bHQ+bWl0dHVydmFsPlxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzU5Cittc2dpZCAiIgorIk5vdGUgdGhhdCB0aGlzIHdpbGwgbm90IGFjdHVhbGx5IGluc3RhbGwgb3IgcmVtb3ZlIGFueXRoaW5nLCBidXQganVzdCBzZXQgIgorInRoZSBzZWxlY3Rpb24gc3RhdGUgb24gdGhlIHJlcXVlc3RlZCBwYWNrYWdlcy4gWW91IHdpbGwgbmVlZCBzb21lIG90aGVyICIKKyJhcHBsaWNhdGlvbiB0byBhY3R1YWxseSBkb3dubG9hZCBhbmQgaW5zdGFsbCB0aGUgcmVxdWVzdGVkIHBhY2thZ2VzLiBGb3IgIgorImV4YW1wbGUsIHJ1biBCPGFwdC1nZXQgZHNlbGVjdC11cGdyYWRlPi4iCittc2dzdHIgIiIKKyJPYnNlcnZlcmEgYXR0IGRldHRhIGZha3Rpc2t0IGludGUga29tbWVyIGluc3RhbGxlcmEgZWxsZXIgdGEgYm9ydCBuw6Vnb250aW5nLCAiCisidXRhbiBiYXJhIHPDpHR0YSB2YWxzdGF0dXMgcMOlIGRlIGVmdGVyZnLDpWdhZGUgcGFrZXRlbi4gRHUgbcOlc3RlIGFudsOkbmRhIGV0dCAiCisiYW5uYXQgcHJvZ3JhbSBmw7ZyIGF0dCBmYWt0aXNrdCBow6RtdGEgb2NoIGluc3RhbGxlcmEgZGUgZWZ0ZXJmcsOlZ2FkZSBwYWtldGVuLiAiCisiVGlsbCBleGVtcGVsIGthbiBkdSBrw7ZyYSBCPGFwdC1nZXQgZHNlbGVjdC11cGdyYWRlPi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3NjIKK21zZ2lkICIiCisiT3JkaW5hcmlseSwgeW91IHdpbGwgZmluZCB0aGF0IEI8ZHNlbGVjdD4oMSkgcHJvdmlkZXMgYSBtb3JlIGNvbnZlbmllbnQgd2F5ICIKKyJ0byBtb2RpZnkgdGhlIHBhY2thZ2Ugc2VsZWN0aW9uIHN0YXRlcy4iCittc2dzdHIgIiIKKyJGw7ZyIG5vcm1hbHQgYnJ1ayBrb21tZXIgZHUgYXR0IHVwcHTDpGNrYSBhdHQgQjxkc2VsZWN0PigxKSB0aWxsaGFuZGFow6VsbGVyICIKKyJldHQgYmVrdsOkbWFyZSBzw6R0dCBhdHQgw6RuZHJhIHBha2V0bWFya2VyaW5nYXJuYS4iCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLjE6NzY0CisjLCBuby13cmFwCittc2dpZCAiQURESVRJT05BTCBGVU5DVElPTkFMSVRZIgorbXNnc3RyICJZVFRFUkxJR0FSRSBGVU5LVElPTkVSIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLjE6NzY3Cittc2dpZCAiIgorIkFkZGl0aW9uYWwgZnVuY3Rpb25hbGl0eSBjYW4gYmUgZ2FpbmVkIGJ5IGluc3RhbGxpbmcgYW55IG9mIHRoZSBmb2xsb3dpbmcgIgorInBhY2thZ2VzOiBCPGFwdD4sIEI8YXB0aXR1ZGU+IGFuZCBCPGRlYnN1bXM+LiIKK21zZ3N0ciAiIgorIll0dGVybGlnYXJlIGZ1bmt0aW9uZXIga2FuIGVyaMOlbGxhcyBnZW5vbSBhdHQgaW5zdGFsbGVyYSBuw6Vnb3QgYXYgZsO2bGphbmRlICIKKyJwYWtldDogQjxhcHQ+LCBCPGFwdGl0dWRlPiBvY2ggQjxkZWJzdW1zPi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3NzkKK21zZ2lkICIiCisiQjxhcHRpdHVkZT4oMSksIEI8YXB0PigxKSwgQjxkc2VsZWN0PigxKSwgQjxkcGtnLWRlYj4oMSksIEI8ZHBrZy1xdWVyeT4oMSksICIKKyJCPGRlYj4oNSksIEI8ZGViLWNvbnRyb2w+KDUpLCBCPGRwa2cuY2ZnPig1KSwgYW5kIEI8ZHBrZy1yZWNvbmZpZ3VyZT4oOCkuIgorbXNnc3RyICIiCisiQjxhcHRpdHVkZT4oMSksIEI8YXB0PigxKSwgQjxkc2VsZWN0PigxKSwgQjxkcGtnLWRlYj4oMSksIEI8ZHBrZy1xdWVyeT4oMSksICIKKyJCPGRlYj4oNSksIEI8ZGViLWNvbnRyb2w+KDUpLCBCPGRwa2cuY2ZnPig1KSBvY2ggQjxkcGtnLXJlY29uZmlndXJlPig4KS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuMTo3ODIKK21zZ2lkICJCPC0tbm8tYWN0PiB1c3VhbGx5IGdpdmVzIGxlc3MgaW5mb3JtYXRpb24gdGhhbiBtaWdodCBiZSBoZWxwZnVsLiIKK21zZ3N0ciAiQjwtLW5vLWFjdD4gZ2VyIG9mdGFzdCBtaW5kcmUgaW5mb3JtYXRpb24gw6RuIHZhZCBzb20gdm9yZSBoasOkbHBzYW10LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy4xOjc4NSBkcGtnLmNmZy41OjIyCittc2dpZCAiIgorIlNlZSBJPC91c3Ivc2hhcmUvZG9jL2Rwa2cvVEhBTktTPiBmb3IgdGhlIGxpc3Qgb2YgcGVvcGxlIHdobyBoYXZlICIKKyJjb250cmlidXRlZCB0byBCPGRwa2c+LiIKK21zZ3N0ciAiIgorIlNlIEI8L3Vzci9zaGFyZS9kb2MvZHBrZy9USEFOS1M+IGbDtnIgbGlzdGFuIMO2dmVyIHBlcnNvbmVyIHNvbSBoYXIgYmlkcmFnaXQgIgorInRpbGwgQjxkcGtnPi4iCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLWFyY2hpdGVjdHVyZSIKK21zZ3N0ciAiZHBrZy1hcmNoaXRlY3R1cmUiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NAorbXNnaWQgIiIKKyJkcGtnLWFyY2hpdGVjdHVyZSAtIHNldCBhbmQgZGV0ZXJtaW5lIHRoZSBhcmNoaXRlY3R1cmUgZm9yIHBhY2thZ2UgYnVpbGRpbmciCittc2dzdHIgImRwa2ctYXJjaGl0ZWN0dXJlIC0gc3TDpGxsIGluIG9jaCBiZXN0w6RtIGFya2l0ZWt0dXIgZsO2ciBwYWtldCBzb20gYnlnZ3MiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6OAorbXNnaWQgIkI8ZHBrZy1hcmNoaXRlY3R1cmU+IFtJPG9wdGlvbj4uLi5dIFtJPGNvbW1hbmQ+XSIKK21zZ3N0ciAiQjxkcGtnLWFyY2hpdGVjdHVyZT4gW0k8ZmxhZ2dhPi4uLl0gW0k8w6V0Z8OkcmQ+XSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMworbXNnaWQgIiIKKyJkcGtnLWFyY2hpdGVjdHVyZSBkb2VzIHByb3ZpZGUgYSBmYWNpbGl0eSB0byBkZXRlcm1pbmUgYW5kIHNldCB0aGUgYnVpbGQgYW5kICIKKyJob3N0IGFyY2hpdGVjdHVyZSBmb3IgcGFja2FnZSBidWlsZGluZy4iCittc2dzdHIgIiIKKyJkcGtnLWFyY2hpdGVjdHVyZSBpbm5laMOlbGxlciBlbiBmdW5rdGlvbiBmw7ZyIGF0dCBiZXN0w6RtbWEgb2NoIHN0w6RsbGEgaW4gIgorImJ5Z2ctIG9jaCB2w6RyZGFya2l0ZWt0dXJlcm5hIGbDtnIgYXR0IGJ5Z2dhIHBha2V0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxNgorbXNnaWQgIiIKKyJUaGUgYnVpbGQgYXJjaGl0ZWN0dXJlIGlzIGFsd2F5cyBkZXRlcm1pbmVkIGJ5IGFuIGV4dGVybmFsIGNhbGwgdG8gQjxkcGtnPiIKKyIoMSksIGFuZCBjYW4gbm90IGJlIHNldCBhdCB0aGUgY29tbWFuZCBsaW5lLiIKK21zZ3N0ciAiIgorIkJ5Z2dhcmtpdGVrdHVyZW4gYmVzdMOkbXMgYWxsdGlkIGF2IGV0dCBleHRlcm50IGFucm9wIHRpbGwgQjxkcGtnPigxKSBvY2gga2FuICIKKyJpbnRlIHN0w6RsbGFzIGluIHDDpSBrb21tYW5kb3JhZGVuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyNQorbXNnaWQgIiIKKyJZb3UgY2FuIHNwZWNpZnkgdGhlIGhvc3QgYXJjaGl0ZWN0dXJlIGJ5IHByb3ZpZGluZyBvbmUgb3IgYm90aCBvZiB0aGUgIgorIm9wdGlvbnMgQjwtYT4gYW5kIEI8LXQ+LiBUaGUgZGVmYXVsdCBpcyBkZXRlcm1pbmVkIGJ5IGFuIGV4dGVybmFsIGNhbGwgdG8gIgorIkI8Z2NjPigxKSwgb3IgdGhlIHNhbWUgYXMgdGhlIGJ1aWxkIGFyY2hpdGVjdHVyZSBpZiBcXHMtMUNDXFxzMCBvciBnY2MgYXJlICIKKyJib3RoIG5vdCBhdmFpbGFibGUuIE9uZSBvdXQgb2YgQjwtYT4gYW5kIEI8LXQ+IGlzIHN1ZmZpY2llbnQsIHRoZSB2YWx1ZSBvZiAiCisidGhlIG90aGVyIHdpbGwgYmUgc2V0IHRvIGEgdXNhYmxlIGRlZmF1bHQuIEluZGVlZCwgaXQgaXMgb2Z0ZW4gYmV0dGVyIHRvICIKKyJvbmx5IHNwZWNpZnkgb25lLCBiZWNhdXNlIEI8ZHBrZy1hcmNoaXRlY3R1cmU+IHdpbGwgd2FybiB5b3UgaWYgeW91ciBjaG9pY2UgIgorImRvZXMgbm90IG1hdGNoIHRoZSBkZWZhdWx0LiIKK21zZ3N0ciAiIgorIkR1IGthbiBhbmdlIHbDpHJkYXJraXRla3R1ciBnZW5vbSBhdHQgYW5nZSBlbiBhdiwgZWxsZXIgYsOlZGEsIGZsYWdnb3JuYSBCPC1hPiAiCisib2NoIEI8LXQ+LiBGw7ZydmFsZXQgYmVzdMOkbXMgYXYgZXR0IGV4dGVybnQgYW5yb3AgdGlsbCBCPGdjYz4oMSksIGVsbGVyIMOkciAiCisiZGV0c2FtbWEgc29tIGJ5Z2dhcmtpdGVrdHVyZW4gdmFya2VuIFxccy0xQ0NcXHMwIGVsbGVyIGdjYyDDpHIgdGlsbGfDpG5nbGlnYS4gIgorIkRldCByw6Rja2VyIGF0dCBhbmdlIGVuIGF2IEI8LWE+IG9jaCBCPC10PiwgdsOkcmRldCBww6UgZGVuIGFuZHJhIGtvbW1lciAiCisic3TDpGxsYXMgaW4gdGlsbCBldHQgZnVuZ2VyYW5kZSBmw7ZydmFsLiBEZXQgw6RyIGZha3Rpc2t0IG9mdGFzdCBiw6R0dHJlIGF0dCAiCisiYmFyYSBhbmdlIGRlbiBlbmEgZWZ0ZXJzb20gQjxkcGtnLWFyY2hpdGVjdHVyZT4ga29tbWVyIHZhcm5hIGRpZyBvbSBkaXR0IHZhbCAiCisiaW50ZSDDtnZlcmVuc3N0w6RtbWVyIG1lZCBmw7ZydmFsZXQuIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyNiBkcGtnLWJ1aWxkZmxhZ3MuMTo0NSBkcGtnLWRlYi4xOjI3IGRwa2ctZGl2ZXJ0Ljg6MjQKKyM6IGRwa2ctcXVlcnkuMToxMyBkcGtnLXNvdXJjZS4xOjE4IGRwa2ctc3BsaXQuMTozMSBkcGtnLXN0YXRvdmVycmlkZS44OjIzCisjOiBkcGtnLXRyaWdnZXIuMToyNCBkcGtnLXZlbmRvci4xOjE0IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MzQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyMDIKKyMsIG5vLXdyYXAKK21zZ2lkICJDT01NQU5EUyIKK21zZ3N0ciAiS09NTUFORE9OIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyNworIywgbm8td3JhcAorbXNnaWQgIkI8LWw+IgorbXNnc3RyICJCPC1sPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTozMQorbXNnaWQgIiIKKyJQcmludCB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGVzLCBvbmUgZWFjaCBsaW5lLCBpbiB0aGUgZm9ybWF0ICIKKyJJPFZBUklBQkxFPXZhbHVlPi4gVGhpcyBpcyB0aGUgZGVmYXVsdCBhY3Rpb24uIgorbXNnc3RyICIiCisiU2tyaXYgbWlsasO2dmFyaWFibGVyLCBlbiBwZXIgcmFkLCBww6UgZm9ybWF0ZXQgSTxWQVJJQUJFTD12w6RyZGU+LiBEZXR0YSDDpHIgIgorImbDtnJ2YWxkIMOldGfDpHJkLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MzEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1lPkk8ZGViaWFuLWFyY2hpdGVjdHVyZT4iCittc2dzdHIgIkI8LWU+STxkZWJpYW5hcmtpdGVrdHVyPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTozNworbXNnaWQgIiIKKyJDaGVjayBmb3IgZXF1YWxpdHkgb2YgYXJjaGl0ZWN0dXJlLiBCeSBkZWZhdWx0IEk8ZGViaWFuLWFyY2hpdGVjdHVyZT4gaXMgIgorImNvbXBhcmVkIGFnYWluc3QgdGhlIGN1cnJlbnQgRGViaWFuIGFyY2hpdGVjdHVyZSwgYmVpbmcgdGhlIGhvc3QuICBUaGlzICIKKyJhY3Rpb24gd2lsbCBub3QgZXhwYW5kIHRoZSBhcmNoaXRlY3R1cmUgd2lsZGNhcmRzLiBDb21tYW5kIGZpbmlzaGVzIHdpdGggYW4gIgorImV4aXQgc3RhdHVzIG9mIDAgaWYgbWF0Y2hlZCwgMSBpZiBub3QgbWF0Y2hlZC4iCittc2dzdHIgIiIKKyJLb250cm9sbGVyYSBhcmtpdGVrdHVyIGbDtnIgbGlraGV0LiBTb20gc3RhbmRhcmQgasOkbWbDtnJzIEk8ZGViaWFuYXJraXRla3R1cj4gIgorIm1vdCBkZW4gYWt0dWVsbGEgRGViaWFuYXJraXRla3R1cmVuLCBzb20gw6RyIHbDpHJkLiDDhXRnw6RyZGVuIGV4cGFuZGVyYXIgaW50ZSAiCisiam9rZXJ0ZWNrZW4gaSBhcmtpdGVrdHVyZXIuIEtvbW1hbmRldCBhdnNsdXRhciBtZWQgc3RhdHVzIDAgb20gZGV0IMOkciBlbiAiCisidHLDpGZmLCAxIG9tIGRldCBpbnRlIMOkciBlbiB0csOkZmYuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTozNworIywgbm8td3JhcAorbXNnaWQgIkI8LWk+STxhcmNoaXRlY3R1cmUtd2lsZGNhcmQ+IgorbXNnc3RyICJCPC1pPkk8YXJraXRla3R1cnPDtmttw7Zuc3Rlcj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NDMKK21zZ2lkICIiCisiQ2hlY2sgZm9yIGlkZW50aXR5IG9mIGFyY2hpdGVjdHVyZSBieSBleHBhbmRpbmcgSTxhcmNoaXRlY3R1cmUtd2lsZGNhcmQ+IGFzICIKKyJhbiBhcmNoaXRlY3R1cmUgd2lsZGNhcmQgYW5kIGNvbXBhcmluZyBhZ2FpbnN0IHRoZSBjdXJyZW50IERlYmlhbiAiCisiYXJjaGl0ZWN0dXJlLiBDb21tYW5kIGZpbmlzaGVzIHdpdGggYW4gZXhpdCBzdGF0dXMgb2YgMCBpZiBtYXRjaGVkLCAxIGlmIG5vdCAiCisibWF0Y2hlZC4iCittc2dzdHIgIiIKKyJLb250cm9sbGVyYSBpZGVudGl0ZXQgcMOlIGFya2l0ZWt0dXJlbiBnZW5vbSBhdHQgZXhwYW5kZXJhICIKKyJJPGFya2l0ZWt0dXJzw7ZrbcO2bnN0ZXI+IHNvbSBldHQgYXJraXRla3R1cnPDtmttw7Zuc3RlciBtZWQgam9rZXJ0ZWNrZW4sIG9jaCAiCisiasOkbWbDtnJhIG1lZCBkZW4gYWt0dWVsbGEgRGViaWFuYXJraXRla3R1cmVuLiBLb21tYW5kb3QgYXZzbHV0YXMgbWVkIHN0YXR1cyAwICIKKyJ2aWQgdHLDpGZmLCAxIG9tIGludGUgdHLDpGZmLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NDMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1xPkk8dmFyaWFibGUtbmFtZT4iCittc2dzdHIgIkI8LXE+STx2YXJpYWJlbG5hbW4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjQ2Cittc2dpZCAiUHJpbnQgdGhlIHZhbHVlIG9mIGEgc2luZ2xlIHZhcmlhYmxlLiIKK21zZ3N0ciAiU2tyaXYgdsOkcmRldCBww6UgZW4gZW5rZWwgdmFyaWFiZWwuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo0NgorIywgbm8td3JhcAorbXNnaWQgIkI8LXM+IgorbXNnc3RyICJCPC1zPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo1MAorbXNnaWQgIiIKKyJQcmludCBhbiBleHBvcnQgY29tbWFuZC4gVGhpcyBjYW4gYmUgdXNlZCB0byBzZXQgdGhlIGVudmlyb25tZW50IHZhcmlhYmxlcyAiCisidXNpbmcgZXZhbC4iCittc2dzdHIgIiIKKyJWaXNhciBldHQgZXhwb3J0a29tbWFuZG8uIERldHRhIGthbiBhbnbDpG5kYXMgZsO2ciBhdHQgc8OkdHRhIG1pbGrDtnZhcmlhYmxlciAiCisibWVkIGV2YWwuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo1MAorIywgbm8td3JhcAorbXNnaWQgIkI8LXU+IgorbXNnc3RyICJCPC11PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo1MworbXNnaWQgIlByaW50IGEgc2ltaWxhciBjb21tYW5kIHRvIEI8LXM+IGJ1dCB0byB1bnNldCBhbGwgdmFyaWFibGVzLiIKK21zZ3N0ciAiIgorIlZpc2FyIGV0dCBrb21tYW5kbyBsaWtuYW5kZSBCPC1zPiBzb20gZsO2ciBhdHQgbm9sbHN0w6RsbGEgYWxsYSB2YXJpYWJsZXIuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo1MworIywgbm8td3JhcAorbXNnaWQgIkI8LWM+STwgY29tbWFuZD4iCittc2dzdHIgIkI8LWM+STwga29tbWFuZG8+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjU3Cittc2dpZCAiIgorIkV4ZWN1dGUgYSBJPGNvbW1hbmQ+IGluIGFuIGVudmlyb25tZW50IHdoaWNoIGhhcyBhbGwgdmFyaWFibGVzIHNldCB0byB0aGUgIgorImRldGVybWluZWQgdmFsdWUuIgorbXNnc3RyICIiCisiRXhla3ZlcmEgZXR0IEk8a29tbWFuZG8+IGkgZW4gbWlsasO2IHNvbSBoYXIgYWxsYSB2YXJpYWJsZXIgc2F0dGEgdGlsbCBkZXQgIgorImJlc3TDpG1kYSB2w6RyZGV0LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NTcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1MPiIKK21zZ3N0ciAiQjwtTD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NjAKK21zZ2lkICJQcmludCBhIGxpc3Qgb2YgdmFsaWQgYXJjaGl0ZWN0dXJlIG5hbWVzLiIKK21zZ3N0ciAiVmlzYSBlbiBsaXN0YSDDtnZlciBnaWx0aWdhIGFya2l0ZWt0dXJuYW1uLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo2MyBkcGtnLWJ1aWxkZmxhZ3MuMTo5MiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIyNgorIzogZHBrZy1jaGVja2J1aWxkZGVwcy4xOjM2IGRwa2ctZGlzdGFkZGZpbGUuMTozNSBkcGtnLWRlYi4xOjE3NQorIzogZHBrZy1kaXZlcnQuODo3NCBkcGtnLWdlbmNoYW5nZXMuMToxMzQgZHBrZy1nZW5jb250cm9sLjE6MTI0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0NDYgZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTo0MSBkcGtnLW5hbWUuMTo2MQorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjM2IGRwa2ctcXVlcnkuMToxMTMgZHBrZy1zY2FucGFja2FnZXMuMTo5OQorIzogZHBrZy1zY2Fuc291cmNlcy4xOjY4IGRwa2ctc2hsaWJkZXBzLjE6MjE4IGRwa2ctc291cmNlLjE6OTkKKyM6IGRwa2ctc3BsaXQuMToxMjkgZHBrZy1zdGF0b3ZlcnJpZGUuODo0NyBkcGtnLXRyaWdnZXIuMTozNCBkcGtnLXZlbmRvci4xOjMxCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzE5Cittc2dpZCAiU2hvdyB0aGUgdXNhZ2UgbWVzc2FnZSBhbmQgZXhpdC4iCittc2dzdHIgIlZpc2FyIGhqw6RscHNrw6RybSBvY2ggYXZzbHV0YXIuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjY2IGRwa2ctYnVpbGRmbGFncy4xOjk1IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjI5CisjOiBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6MzkgZHBrZy1kaXN0YWRkZmlsZS4xOjM4IGRwa2ctZGViLjE6MTc4CisjOiBkcGtnLWRpdmVydC44Ojc3IGRwa2ctZ2VuY2hhbmdlcy4xOjEzNyBkcGtnLWdlbmNvbnRyb2wuMToxMjcKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQ0OSBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjQ0IGRwa2ctbmFtZS4xOjY0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MzkgZHBrZy1xdWVyeS4xOjExNiBkcGtnLXNjYW5wYWNrYWdlcy4xOjEwMgorIzogZHBrZy1zY2Fuc291cmNlcy4xOjcwIGRwa2ctc2hsaWJkZXBzLjE6MjIxIGRwa2ctc291cmNlLjE6MTAyCisjOiBkcGtnLXNwbGl0LjE6MTMyIGRwa2ctc3RhdG92ZXJyaWRlLjg6NTAgZHBrZy10cmlnZ2VyLjE6MzcgZHBrZy12ZW5kb3IuMTozNAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjMyMgorbXNnaWQgIlNob3cgdGhlIHZlcnNpb24gYW5kIGV4aXQuIgorbXNnc3RyICJWaXNhciB2ZXJzaW9uIG9jaCBhdnNsdXRhci4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjY4CisjLCBuby13cmFwCittc2dpZCAiQjwtYT5JPGRlYmlhbi1hcmNoaXRlY3R1cmU+IgorbXNnc3RyICJCPC1hPkk8ZGViaWFuYXJraXRla3R1cj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NzEKK21zZ2lkICJTZXQgdGhlIERlYmlhbiBhcmNoaXRlY3R1cmUuIgorbXNnc3RyICJWw6RsaiBEZWJpYW5hcmtpdGVrdHVyLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NzEgZHBrZy1idWlsZHBhY2thZ2UuMToxMTAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC10Pkk8Z251LXN5c3RlbS10eXBlPiIKK21zZ3N0ciAiQjwtdD5JPGdudS1zeXN0ZW10eXA+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjc0Cittc2dpZCAiU2V0IHRoZSBHTlUgc3lzdGVtIHR5cGUuIgorbXNnc3RyICJWw6RsaiBHTlUtc3lzdGVtdHlwLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6NzQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1mPiIKK21zZ3N0ciAiQjwtZj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6ODEKK21zZ2lkICIiCisiVmFsdWVzIHNldCBieSBleGlzdGluZyBlbnZpcm9ubWVudCB2YXJpYWJsZXMgd2l0aCB0aGUgc2FtZSBuYW1lIGFzIHVzZWQgYnkgIgorInRoZSBzY3JpcHRzIGFyZSBob25vcmVkIChpLmUuIHVzZWQgYnkgQjxkcGtnLWFyY2hpdGVjdHVyZT4pLCBleGNlcHQgaWYgdGhpcyAiCisiZm9yY2UgZmxhZyBpcyBwcmVzZW50LiBUaGlzIGFsbG93cyB0aGUgdXNlciB0byBvdmVycmlkZSBhIHZhbHVlIGV2ZW4gd2hlbiAiCisidGhlIGNhbGwgdG8gQjxkcGtnLWFyY2hpdGVjdHVyZT4gaXMgYnVyaWVkIGluIHNvbWUgb3RoZXIgc2NyaXB0IChmb3IgZXhhbXBsZSAiCisiQjxkcGtnLWJ1aWxkcGFja2FnZT4oMSkpLiIKK21zZ3N0ciAiIgorIlbDpHJkZW4gc29tIHPDpHR0cyBhdiBiZWZpbnRsaWdhIG1pbGrDtnZhcmlhYmxlciBtZWQgc2FtbWEgbmFtbiBzb20gZGUgc29tICIKKyJhbnbDpG5kcyBhdiBza3JpcHRldCBhbnbDpG5kcyAodC5leCBhdiBCPGRwa2ctYXJjaGl0ZWN0dXJlPiksIHPDpXZpZGEgaW50ZSAiCisiZGVubmEgdHZpbmdhbmRlIGZsYWdnYSBhbmdlcy4gRGV0IGfDtnIgZGV0IG3DtmpsaWd0IGbDtnIgYW52w6RuZGFyZW4gYXR0ICIKKyLDtnZlcnN0eXJhIGV0dCB2w6RyZGUgw6R2ZW4gb20gYW5yb3BldCB0aWxsIEI8ZHBrZy1hcmNoaXRlY3R1cmU+IMOkciBiZWdyYXZ0ICIKKyJkanVwdCBpbnV0aSBldHQgYW5uYXQgc2tyaXB0ICh0aWxsIGV4ZW1wZWwgQjxkcGtnLWJ1aWxkcGFja2FnZT4oMSkpLiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6ODIKKyMsIG5vLXdyYXAKK21zZ2lkICJURVJNUyIKK21zZ3N0ciAiVEVSTUlOT0xPR0kiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjgzCisjLCBuby13cmFwCittc2dpZCAiYnVpbGQgbWFjaGluZSIKK21zZ3N0ciAiYnlnZ21hc2tpbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo4NQorbXNnaWQgIlRoZSBtYWNoaW5lIHRoZSBwYWNrYWdlIGlzIGJ1aWx0IG9uLiIKK21zZ3N0ciAiTWFza2luZW4gcGFrZXRldCBieWdncyBww6UuIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo4NQorIywgbm8td3JhcAorbXNnaWQgImhvc3QgbWFjaGluZSIKK21zZ3N0ciAidsOkcmRtYXNraW4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6ODcKK21zZ2lkICJUaGUgbWFjaGluZSB0aGUgcGFja2FnZSBpcyBidWlsdCBmb3IuIgorbXNnc3RyICJNYXNraW5lbiBwYWtldGV0IGJ5Z2dzIGbDtnIuIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo4NworIywgbm8td3JhcAorbXNnaWQgIkRlYmlhbiBhcmNoaXRlY3R1cmUiCittc2dzdHIgIkRlYmlhbmFya2l0ZWt0dXIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6OTAKK21zZ2lkICIiCisiVGhlIERlYmlhbiBhcmNoaXRlY3R1cmUgc3RyaW5nLCB3aGljaCBzcGVjaWZpZXMgdGhlIGJpbmFyeSB0cmVlIGluIHRoZSAiCisiXFxzLTFGVFBcXHMwIGFyY2hpdmUuIEV4YW1wbGVzOiBpMzg2LCBzcGFyYywgaHVyZC1pMzg2LiIKK21zZ3N0ciAiIgorIkRlYmlhbmFya2l0ZWt0dXJzdHLDpG5nZW4sIHZpbGtlbiBhbmdlciBiaW7DpHJ0csOkZGV0IGkgXFwtczFGVFxcczAtYXJraXZldC4gIgorIkV4ZW1wZWw6IGkzODYsIHNwYXJjLCBodXJkLWkzODYuIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo5MAorIywgbm8td3JhcAorbXNnaWQgImFyY2hpdGVjdHVyZSB3aWxkY2FyZCIKK21zZ3N0ciAiYXJraXRla3R1cnPDtmttw7Zuc3RlciIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTo5NAorbXNnaWQgIiIKKyJBbiBhcmNoaXRlY3R1cmUgd2lsZGNhcmQgaXMgYSBzcGVjaWFsIGFyY2hpdGVjdHVyZSBzdHJpbmcgdGhhdCB3aWxsIG1hdGNoICIKKyJhbnkgcmVhbCBhcmNoaXRlY3R1cmUgYmVpbmcgcGFydCBvZiBpdC4gVGhlIGdlbmVyYWwgZm9ybSBpcyBFPGx0Pmtlcm5lbEU8Z3Q+LSIKKyJFPGx0PmNwdUU8Z3Q+LiAgRXhhbXBsZXM6IGxpbnV4LWFueSwgYW55LWkzODYsIGh1cmQtYW55LiIKK21zZ3N0ciAiIgorIkV0dCBhcmtpdGVrdHVyc8O2a23Dtm5zdGVyIMOkciBlbiBzcGVjaWVsbCBhcmtpdGVrdHVyc3Ryw6RuZyBzb20gbWF0Y2hhciBhbGxhICIKKyLDpGt0YSBhcmtpdGVrdHVyZXIgc29tIGZpbm5zIGkgZGVuLiBEZW4gZ2VuZWxsYSBmb3JtZW4gw6RyIEU8bHQ+a8Okcm5hRTxndD4tIgorIkU8bHQ+Y3B1RTxndD4uIEV4ZW1wZWw6IGxpbnV4LWFueSwgYW55LWkzODYsIGh1cmQtYW55LiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6OTQKKyMsIG5vLXdyYXAKK21zZ2lkICJcXHMtMUdOVVxcczAgc3lzdGVtIHR5cGUiCittc2dzdHIgIlxccy0xR05VXFxzMC1zeXN0ZW10eXAiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6OTgKK21zZ2lkICIiCisiQW4gYXJjaGl0ZWN0dXJlIHNwZWNpZmljYXRpb24gc3RyaW5nIGNvbnNpc3Rpbmcgb2YgdHdvIHBhcnRzIHNlcGFyYXRlZCBieSBhICIKKyJkYXNoOiBjcHUgYW5kIHN5c3RlbS4gRXhhbXBsZXM6IGkzODYtbGludXgtZ251LCBzcGFyYy1saW51eC1nbnUsIGkzODYtZ251LCAiCisieDg2XzY0LW5ldGJzZC4iCittc2dzdHIgIiIKKyJFbiBhcmtpdGVrdHVyc3BlY2lmaWNlcmluZ3NzdHLDpG5nIGJlc3TDpXIgYXYgdHbDpSBkZWxhciwgYXZkZWxhZGUgbWVkICIKKyJiaW5kZXN0cmVjazogcHJvY2Vzc29yIG9jaCBzeXN0ZW0uIEV4ZW1wZWw6IGkzODYtbGludXgtZ251LCBzcGFyYy1saW51eC1nbnUsICIKKyJpMzg2LWdudSwgeDg2XzY0LW5ldGJzZC4iCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjk5CisjLCBuby13cmFwCittc2dpZCAiVkFSSUFCTEVTIgorbXNnc3RyICJWQVJJQUJMRVIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTAxCittc2dpZCAiVGhlIGZvbGxvd2luZyB2YXJpYWJsZXMgYXJlIHNldCBieSBCPGRwa2ctYXJjaGl0ZWN0dXJlPjoiCittc2dzdHIgIkbDtmxqYW5kZSB2YXJpYWJsZXIgc8OkdHRzIGF2IEI8ZHBrZy1hcmNoaXRlY3R1cmU+OiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTAxCisjLCBuby13cmFwCittc2dpZCAiXFxzLTFERUJfQlVJTERfQVJDSFxcczAiCittc2dzdHIgIlxccy0xREVCX0JVSUxEX0FSQ0hcXHMwIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEwMworbXNnaWQgIlRoZSBEZWJpYW4gYXJjaGl0ZWN0dXJlIG9mIHRoZSBidWlsZCBtYWNoaW5lLiIKK21zZ3N0ciAiRGViaWFuYXJraXRla3R1cmVuIGbDtnIgYnlnZ21hc2tpbmVuLiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTAzCisjLCBuby13cmFwCittc2dpZCAiXFxzLTFERUJfQlVJTERfQVJDSF9PU1xcczAiCittc2dzdHIgIlxccy0xREVCX0JVSUxEX0FSQ0hfT1NcXHMwIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEwNQorbXNnaWQgIlRoZSBEZWJpYW4gc3lzdGVtIG5hbWUgb2YgdGhlIGJ1aWxkIG1hY2hpbmUuIgorbXNnc3RyICJEZWJpYW5zeXN0ZW1uYW1uZXQgZsO2ciBieWdnbWFza2luZW4uIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMDUKKyMsIG5vLXdyYXAKK21zZ2lkICJcXHMtMURFQl9CVUlMRF9BUkNIX0NQVVxcczAiCittc2dzdHIgIlxccy0xREVCX0JVSUxEX0FSQ0hfQ1BVXFxzMCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMDcKK21zZ2lkICJUaGUgRGViaWFuIGNwdSBuYW1lIG9mIHRoZSBidWlsZCBtYWNoaW5lLiIKK21zZ3N0ciAiRGViaWFuLXByb2Nlc3Nvcm5hbW5ldCBmw7ZyIGJ5Z2dtYXNraW5lbi4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEwNworIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0JVSUxEX0FSQ0hfQklUU1xcczAiCittc2dzdHIgIlxccy0xREVCX0JVSUxEX0FSQ0hfQklUU1xcczAiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTA5Cittc2dpZCAiVGhlIHBvaW50ZXIgc2l6ZSBvZiB0aGUgYnVpbGQgbWFjaGluZSAoaW4gYml0cykuIgorbXNnc3RyICJQZWthcnN0b3JsZWtlbiBmw7ZyIGJ5Z2dtYXNraW5lbiAoaSBiaXRhcikuIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMDkKKyMsIG5vLXdyYXAKK21zZ2lkICJcXHMtMURFQl9CVUlMRF9BUkNIX0VORElBTlxcczAiCittc2dzdHIgIlxccy0xREVCX0JVSUxEX0FSQ0hfRU5ESUFOXFxzMCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMTEKK21zZ2lkICJUaGUgZW5kaWFubmVzcyBvZiB0aGUgYnVpbGQgbWFjaGluZSAobGl0dGxlIC8gYmlnKS4iCittc2dzdHIgIkVuZGlhbiBmw7ZyIGJ5Z2dtYXNraW5lbiAobGl0dGxlIC8gYmlnKS4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjExMQorIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0JVSUxEX0dOVV9DUFVcXHMwIgorbXNnc3RyICJcXHMtMURFQl9CVUlMRF9HTlVfQ1BVXFxzMCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMTMKK21zZ2lkICJUaGUgXFxzLTFDUFVcXHMwIHBhcnQgb2YgXFxzLTFERUJfQlVJTERfR05VX1RZUEVcXHMwLiIKK21zZ3N0ciAiXFxzLTFDUFVcXHMwLWRlbGVuIGF2IFxccy0xREVCX0JVSUxEX0dOVV9UWVBFXFxzMC4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjExMworIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0JVSUxEX0dOVV9TWVNURU1cXHMwIgorbXNnc3RyICJcXHMtMURFQl9CVUlMRF9HTlVfU1lTVEVNXFxzMCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMTUKK21zZ2lkICJUaGUgU3lzdGVtIHBhcnQgb2YgXFxzLTFERUJfQlVJTERfR05VX1RZUEVcXHMwLiIKK21zZ3N0ciAiU3lzdGVtZGVsZW4gYXYgXFxzLTFERUJfQlVJTERfR05VX1RZUEVcXHMwLiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTE1CisjLCBuby13cmFwCittc2dpZCAiXFxzLTFERUJfQlVJTERfR05VX1RZUEVcXHMwIgorbXNnc3RyICJcXHMtMURFQl9CVUlMRF9HTlVfVFlQRVxcczAiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTE3Cittc2dpZCAiVGhlIFxccy0xR05VXFxzMCBzeXN0ZW0gdHlwZSBvZiB0aGUgYnVpbGQgbWFjaGluZS4iCittc2dzdHIgIlxccy0xR05VXFxzMC1zeXN0ZW10eXBlbiBmw7ZyIGJ5Z2dtYXNraW5lbi4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjExNworIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0JVSUxEX01VTFRJQVJDSFxcczAiCittc2dzdHIgIlxccy0xREVCX0JVSUxEX01VTFRJQVJDSFxcczAiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTIwCittc2dpZCAiIgorIlRoZSBjbGFyaWZpZWQgXFxzLTFHTlVcXHMwIHN5c3RlbSB0eXBlIG9mIHRoZSBidWlsZCBtYWNoaW5lLCB1c2VkIGZvciAiCisiZmlsZXN5c3RlbSBwYXRocy4iCittc2dzdHIgIiIKKyJEZW4gZsO2cnR5ZGxpZ2FkZSBcXHMtMUdOVVxcczAtc3lzdGVtdHlwZW4gZsO2ciBieWdnbWFza2luZW4sIGFudsOkbmRzIGbDtnIgIgorInPDtmt2w6RnYXIgaSBmaWxzeXN0ZW1ldC4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEyMAorIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0hPU1RfQVJDSFxcczAiCittc2dzdHIgIlxccy0xREVCX0hPU1RfQVJDSFxcczAiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTIyCittc2dpZCAiVGhlIERlYmlhbiBhcmNoaXRlY3R1cmUgb2YgdGhlIGhvc3QgbWFjaGluZS4iCittc2dzdHIgIkRlYmlhbmFya2l0ZWt0dXJlbiBmw7ZyIHbDpHJkbWFza2luZW4uIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMjIKKyMsIG5vLXdyYXAKK21zZ2lkICJcXHMtMURFQl9IT1NUX0FSQ0hfT1NcXHMwIgorbXNnc3RyICJcXHMtMURFQl9IT1NUX0FSQ0hfT1NcXHMwIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEyNAorbXNnaWQgIlRoZSBEZWJpYW4gc3lzdGVtIG5hbWUgb2YgdGhlIGhvc3QgbWFjaGluZS4iCittc2dzdHIgIkRlYmlhbnN5c3RlbW5hbW5ldCBmw7ZyIHbDpHJkbWFza2luZW4uIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMjQKKyMsIG5vLXdyYXAKK21zZ2lkICJcXHMtMURFQl9IT1NUX0FSQ0hfQ1BVXFxzMCIKK21zZ3N0ciAiXFxzLTFERUJfSE9TVF9BUkNIX0NQVVxcczAiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTI2Cittc2dpZCAiVGhlIERlYmlhbiBjcHUgbmFtZSBvZiB0aGUgaG9zdCBtYWNoaW5lLiIKK21zZ3N0ciAiRGViaWFuLXByb2Nlc3Nvcm5hbW5ldCBmw7ZyIHbDpHJkbWFza2luZW4uIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMjYKKyMsIG5vLXdyYXAKK21zZ2lkICJcXHMtMURFQl9IT1NUX0FSQ0hfQklUU1xcczAiCittc2dzdHIgIlxccy0xREVCX0hPU1RfQVJDSF9CSVRTXFxzMCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMjgKK21zZ2lkICJUaGUgcG9pbnRlciBzaXplIG9mIHRoZSBob3N0IG1hY2hpbmUgKGluIGJpdHMpLiIKK21zZ3N0ciAiUGVrYXJzdG9ybGVrZW4gZsO2ciB2w6RyZG1hc2tpbmVuIChpIGJpdGFyKS4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEyOAorIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0hPU1RfQVJDSF9FTkRJQU5cXHMwIgorbXNnc3RyICJcXHMtMURFQl9IT1NUX0FSQ0hfRU5ESUFOXFxzMCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMzAKK21zZ2lkICJUaGUgZW5kaWFubmVzcyBvZiB0aGUgaG9zdCBtYWNoaW5lIChsaXR0bGUgLyBiaWcpLiIKK21zZ3N0ciAiRW5kaWFuIGbDtnIgdsOkcmRtYXNraW5lbiAobGl0dGxlIC8gYmlnKS4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEzMAorIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0hPU1RfR05VX0NQVVxcczAiCittc2dzdHIgIlxccy0xREVCX0hPU1RfR05VX0NQVVxcczAiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTMyCittc2dpZCAiVGhlIFxccy0xQ1BVXFxzMCBwYXJ0IG9mIFxccy0xREVCX0hPU1RfR05VX1RZUEVcXHMwLiIKK21zZ3N0ciAiXFxzLTFDUFVcXHMwLWRlbGVuIGF2IFxccy0xREVCX0hPU1RfR05VX1RZUEVcXHMwLiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTMyCisjLCBuby13cmFwCittc2dpZCAiXFxzLTFERUJfSE9TVF9HTlVfU1lTVEVNXFxzMCIKK21zZ3N0ciAiXFxzLTFERUJfSE9TVF9HTlVfU1lTVEVNXFxzMCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMzQKK21zZ2lkICJUaGUgU3lzdGVtIHBhcnQgb2YgXFxzLTFERUJfSE9TVF9HTlVfVFlQRVxcczAuIgorbXNnc3RyICJTeXN0ZW1kZWxlbiBhdiBcXHMtMURFQl9IT1NUX0dOVV9UWVBFXFxzMC4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjEzNAorIywgbm8td3JhcAorbXNnaWQgIlxccy0xREVCX0hPU1RfR05VX1RZUEVcXHMwIgorbXNnc3RyICJcXHMtMURFQl9IT1NUX0dOVV9UWVBFXFxzMCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxMzYKK21zZ2lkICJUaGUgXFxzLTFHTlVcXHMwIHN5c3RlbSB0eXBlIG9mIHRoZSBob3N0IG1hY2hpbmUuIgorbXNnc3RyICJcXHMtMUdOVVxcczAtc3lzdGVtdHlwZW4gZsO2ciB2w6RyZG1hc2tpbmVuLiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTM2CisjLCBuby13cmFwCittc2dpZCAiXFxzLTFERUJfSE9TVF9NVUxUSUFSQ0hcXHMwIgorbXNnc3RyICJcXHMtMURFQl9IT1NUX01VTFRJQVJDSFxcczAiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTM5Cittc2dpZCAiIgorIlRoZSBjbGFyaWZpZWQgXFxzLTFHTlVcXHMwIHN5c3RlbSB0eXBlIG9mIHRoZSBob3N0IG1hY2hpbmUsIHVzZWQgZm9yICIKKyJmaWxlc3lzdGVtIHBhdGhzLiIKK21zZ3N0ciAiIgorIkRlbiBmw7ZydHlkbGlnYWRlIFxccy0xR05VXFxzMC1zeXN0ZW10eXBlbiBmw7ZyIHbDpHJkbWFza2luZW4sIGFudsOkbmRzIGbDtnIgIgorInPDtmt2w6RnYXIgaSBmaWxzeXN0ZW1ldC4iCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjE0MAorIywgbm8td3JhcAorbXNnaWQgIkRFQklBTi9SVUxFUyIKK21zZ3N0ciAiREVCSUFOL1JVTEVTIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjE0OAorbXNnaWQgIiIKKyJUaGUgZW52aXJvbm1lbnQgdmFyaWFibGVzIHNldCBieSBCPGRwa2ctYXJjaGl0ZWN0dXJlPiBhcmUgcGFzc2VkIHRvIEk8ZGViaWFuLyIKKyJydWxlcz4gYXMgbWFrZSB2YXJpYWJsZXMgKHNlZSBtYWtlIGRvY3VtZW50YXRpb24pLiBIb3dldmVyLCB5b3Ugc2hvdWxkIG5vdCAiCisicmVseSBvbiB0aGVtLCBhcyB0aGlzIGJyZWFrcyBtYW51YWwgaW52b2NhdGlvbiBvZiB0aGUgc2NyaXB0LiBJbnN0ZWFkLCB5b3UgIgorInNob3VsZCBhbHdheXMgaW5pdGlhbGl6ZSB0aGVtIHVzaW5nIEI8ZHBrZy1hcmNoaXRlY3R1cmU+IHdpdGggdGhlIC1xIG9wdGlvbi4gIgorIkhlcmUgYXJlIHNvbWUgZXhhbXBsZXMsIHdoaWNoIGFsc28gc2hvdyBob3cgeW91IGNhbiBpbXByb3ZlIHRoZSBjcm9zcyAiCisiY29tcGlsYXRpb24gc3VwcG9ydCBpbiB5b3VyIHBhY2thZ2U6IgorbXNnc3RyICIiCisiTWlsasO2dmFyaWFibGVybmEgc29tIHPDpHR0cyBhdiBCPGRwa2ctYXJjaGl0ZWN0dXJlPiBzw6RuZHMgdGlsbCBJPGRlYmlhbi8iCisicnVsZXM+IHNvbSBtYWtlLXZhcmlhYmxlciAoc2UgZG9rdW1lbnRhdGlvbmVuIGbDtnIgbWFrZSkuIER1IGLDtnIgZG9jayBpbnRlICIKKyJiZXJvIHDDpSBkZW0gZWZ0ZXJzb20gZGV0dGEgZsO2cmhpbmRyYXIgbWFudWVsbGEgYW5yb3AgdGlsbCBza3JpcHRldC4gRHUgYsO2ciAiCisiaXN0w6RsbGV0IGFsbHRpZCBpbml0aWVyYSBkZW0gbWVkIEI8ZHBrZy1hcmNoaXRlY3R1cmU+IG1lZCAtcS1mbGFnZ2FuLiBIw6RyIMOkciAiCisibsOlZ3JhIGV4ZW1wZWwsIHZpbGthIMOkdmVuIHZpc2FyIGh1ciBkdSBrYW4gZsO2cmLDpHR0cmEgc3TDtmRldCBmw7ZyICIKKyJrb3Jza29tcGlsZXJpbmcgaSBkaXR0IHBha2V0OiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxNTEgZHBrZy1hcmNoaXRlY3R1cmUuMToxNjgKK21zZ2lkICJJbnN0ZWFkIG9mOiIKK21zZ3N0ciAiSXN0w6RsbGV0IGbDtnI6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjE1NQorIywgbm8td3JhcAorbXNnaWQgIiIKKyJBUkNIPVxcYGRwa2cgLS1wcmludC1hcmNoaXRlY3R1cmVcXGBcbiIKKyJjb25maWd1cmUgJChcXHMtMUFSQ0hcXHMwKS1saW51eFxuIgorbXNnc3RyICIiCisiQVJDSD1cXGBkcGtnIC0tcHJpbnQtYXJjaGl0ZWN0dXJlXFxgXG4iCisiY29uZmlndXJlICQoXFxzLTFBUkNIXFxzMCktbGludXhcbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxNTgKK21zZ2lkICJwbGVhc2UgdXNlIHRoZSBmb2xsb3dpbmc6IgorbXNnc3RyICJhbnbDpG5kZXIgZHUgZsO2bGphbmRlOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToxNjIKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiXFwmXFxzLTFERUJfQlVJTERfR05VX1RZUEVcXHMwIDo9ICQoc2hlbGwgZHBrZy1hcmNoaXRlY3R1cmUgLXFERUJfQlVJTERfR05VX1RZUEUpXG4iCisiXFwmXFxzLTFERUJfSE9TVF9HTlVfVFlQRVxcczAgOj0gJChzaGVsbCBkcGtnLWFyY2hpdGVjdHVyZSAtcURFQl9IT1NUX0dOVV9UWVBFKVxuIgorbXNnc3RyICIiCisiXFwmXFxzLTFERUJfQlVJTERfR05VX1RZUEVcXHMwIDo9ICQoc2hlbGwgZHBrZy1hcmNoaXRlY3R1cmUgLXFERUJfQlVJTERfR05VX1RZUEUpXG4iCisiXFwmXFxzLTFERUJfSE9TVF9HTlVfVFlQRVxcczAgOj0gJChzaGVsbCBkcGtnLWFyY2hpdGVjdHVyZSAtcURFQl9IT1NUX0dOVV9UWVBFKVxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjE2NAorIywgbm8td3JhcAorbXNnaWQgImNvbmZpZ3VyZSAtLWJ1aWxkPSQoXFxzLTFERUJfQlVJTERfR05VX1RZUEVcXHMwKSAtLWhvc3Q9JChcXHMtMURFQl9IT1NUX0dOVV9UWVBFXFxzMClcbiIKK21zZ3N0ciAiY29uZmlndXJlIC0tYnVpbGQ9JChcXHMtMURFQl9CVUlMRF9HTlVfVFlQRVxcczApIC0taG9zdD0kKFxccy0xREVCX0hPU1RfR05VX1RZUEVcXHMwKVxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjE3NAorIywgbm8td3JhcAorbXNnaWQgIiIKKyJBUkNIPVxcYGRwa2cgLS1wcmludC1hcmNoaXRlY3R1cmVcXGBcbiIKKyJpZmVxICgkKFxccy0xQVJDSFxcczApLGFscGhhKVxuIgorIiAgLi4uXG4iCisiZW5kaWZcbiIKK21zZ3N0ciAiIgorIkFSQ0g9XFxgZHBrZyAtLXByaW50LWFyY2hpdGVjdHVyZVxcYFxuIgorImlmZXEgKCQoXFxzLTFBUkNIXFxzMCksYWxwaGEpXG4iCisiICAuLi5cbiIKKyJlbmRpZlxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjE3NworbXNnaWQgInBsZWFzZSB1c2U6IgorbXNnc3RyICJhbnbDpG5kZXIgZHU6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjE4MAorIywgbm8td3JhcAorbXNnaWQgIlxcJlxccy0xREVCX0hPU1RfQVJDSFxcczAgOj0gJChzaGVsbCBkcGtnLWFyY2hpdGVjdHVyZSAtcURFQl9IT1NUX0FSQ0gpXG4iCittc2dzdHIgIlxcJlxccy0xREVCX0hPU1RfQVJDSFxcczAgOj0gJChzaGVsbCBkcGtnLWFyY2hpdGVjdHVyZSAtcURFQl9IT1NUX0FSQ0gpXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTg0CisjLCBuby13cmFwCittc2dpZCAiIgorImlmZXEgKCQoXFxzLTFERUJfSE9TVF9BUkNIXFxzMCksYWxwaGEpXG4iCisiICAuLi5cbiIKKyJlbmRpZlxuIgorbXNnc3RyICIiCisiaWZlcSAoJChcXHMtMURFQl9IT1NUX0FSQ0hcXHMwKSxhbHBoYSlcbiIKKyIgIC4uLlxuIgorImVuZGlmXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTg4Cittc2dpZCAiIgorIm9yIGlmIHlvdSBvbmx5IG5lZWQgdG8gY2hlY2sgdGhlIENQVSBvciBPUyB0eXBlLCB1c2UgdGhlIERFQl9IT1NUX0FSQ0hfQ1BVICIKKyJvciBERUJfSE9TVF9BUkNIX09TIHZhcmlhYmxlcy4iCittc2dzdHIgIiIKKyJlbGxlciwgb20gZHUgYmFyYSB2aWxsIHRlc3RhIHDDpSBwcm9jZXNzb3ItIGVsbGVyIE9TLXR5cCwgYW52w6RuZCB2YXJpYWJsZXJuYSAiCisiREVCX0hPU1RfQVJDSF9DUFUgZWxsZXIgREVCX0hPU1RfQVJDSF9PUy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MTkzCittc2dpZCAiIgorIkluIGdlbmVyYWwsIGNhbGxpbmcgZHBrZyBpbiB0aGUgcnVsZXMgZmlsZSB0byBnZXQgYXJjaGl0ZWN0dXJlIGluZm9ybWF0aW9uICIKKyJpcyBkZXByZWNhdGVkICh1bmxlc3MgeW91IHdhbnQgdG8gcHJvdmlkZSBiYWNrd2FyZCBjb21wYXRpYmlsaXR5LCBzZWUgIgorImJlbG93KS4gIEVzcGVjaWFsbHkgdGhlIC0tcHJpbnQtYXJjaGl0ZWN0dXJlIG9wdGlvbiBpcyB1bnJlbGlhYmxlIHNpbmNlIHdlICIKKyJoYXZlIERlYmlhbiBhcmNoaXRlY3R1cmVzIHdoaWNoIGRvbid0IGVxdWFsIGEgcHJvY2Vzc29yIG5hbWUuIgorbXNnc3RyICIiCisiR2VuZXJlbGx0IHJla29tbWVuZGVyYXMgZGV0IGludGUgYXR0IGFucm9wYSBkcGtnIGkgcnVsZXMtZmlsZW4gZsO2ciBhdHQgaMOkbXRhICIKKyJpbmZvcm1hdGlvbiBvbSBhcmtpdGVrdHVyZW4gKHPDpXZpZGEgZHUgaW50ZSB2aWxsIHRpbGxoYW5kYWjDpWxsYSAiCisiYmFrw6V0a29tcGF0aWJpbGl0ZXQsIHNlIG5lZGFuKS4gU3BlY2llbGx0IGfDpXIgZGV0IGludGUgYXR0IGxpdGEgcMOlIGZsYWdnYW4gLS0iCisicHJpbnQtYXJjaGl0ZWN0dXJlIGVmdGVyc29tIHZpIGhhciBEZWJpYW5hcmtpdGVrdHVyZXIgc29tIGludGUgw6RyIGlkZW50aXNrdCAiCisibWVkIG5hbW5ldCBww6UgcHJvY2Vzc29ybi4iCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjE5NAorIywgbm8td3JhcAorbXNnaWQgIkJBQ0tXQVJEIENPTVBBVElCSUxJVFkiCittc2dzdHIgIkJBS8OFVEtPTVBBVElCSUxJVEVUIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjE5OAorbXNnaWQgIiIKKyJUaGUgREVCXypfQVJDSF9CSVRTIGFuZCBERUJfKl9BUkNIX0VORElBTiB2YXJpYWJsZXMgd2VyZSBpbnRyb2R1Y2VkIGluIGRwa2ctIgorImRldiAxLjE1LjQuIFVzaW5nIHRoZW0gaW4gSTxkZWJpYW4vcnVsZXM+IHRodXMgcmVxdWlyZXMgYSBidWlsZC1kZXBlbmRlbmN5ICIKKyJvbiBkcGtnLWRldiAoRTxndD49IDEuMTUuNCkuIgorbXNnc3RyICIiCisiVmFyaWFibGVybmEgREVCXypfQVJDSF9CSVRTIG9jaCBERUJfKl9BUkNIX0VORElBTiBpbnRyb2R1Y2VyYWRlcyBpIGRwa2ctZGV2ICIKKyIxLjE1LjQuIE9tIGRlIGFudsOkbmRzIGkgSTxkZWJpYW4vcnVsZXM+IG3DpXN0ZSBkw6RyZsO2ciBldHQgYnlnZ2Jlcm9lbmRlICIKKyJkZWtsYXJlcmFzIHDDpSBkcGtnLWRldiAoRTxndD49IDEuMTUuNCkuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjIwMworbXNnaWQgIiIKKyJUaGUgREVCX0hPU1RfQVJDSF9DUFUgYW5kIERFQl9IT1NUX0FSQ0hfT1MgdmFyaWFibGVzIHdlcmUgaW50cm9kdWNlZCBpbiBkcGtnLSIKKyJkZXYgMS4xMy4yLiBCZWZvcmUgdGhpcyBJPGRlYmlhbi9ydWxlcz4gZmlsZXMgdGVuZGVkIHRvIGNoZWNrIHRoZSB2YWx1ZXMgb2YgIgorInRoZSBERUJfSE9TVF9HTlVfQ1BVIG9yIERFQl9IT1NUX0dOVV9UWVBFIHZhcmlhYmxlcyB3aGljaCBoYXZlIGJlZW4gc3ViamVjdCAiCisidG8gY2hhbmdlLiIKK21zZ3N0ciAiIgorIlZhcmlhYmxlcm5hIERFQl9IT1NUX0FSQ0hfQ1BVIG9jaCBERUJfSE9TVF9BUkNIX09TIGludHJvZHVjZXJhcyBpIGRwa2ctZGV2ICIKKyIxLjEzLjIuIFRpZGlnYXJlIHPDpWcgSTxkZWJpYW4vcnVsZXM+LWZpbGVyIG9mdGFzdCBww6UgaW5uZWjDpWxsZXQgaSAiCisidmFyaWFibGVybmEgREVCX0hPU1RfR05VX0NQVSBvY2ggREVCX0hPU1RfR05VX1RZUEUsIHZpbGthIGhhciBrdW5uYXQgw6RuZHJhICIKKyJww6Ugc2lnLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyMDgKK21zZ2lkICIiCisiV2hlcmUgSTxkZWJpYW4vcnVsZXM+IGZpbGVzIGNoZWNrIHRoZXNlIHZhcmlhYmxlcyB0byBkZWNpZGUgaG93IG9yIHdoYXQgdG8gIgorImNvbXBpbGUsIHRoaXMgc2hvdWxkIGJlIHVwZGF0ZWQgdG8gdXNlIHRoZSBuZXcgdmFyaWFibGVzIGFuZCB2YWx1ZXMuICBZb3UgIgorIm1heSB3aXNoIHRvIHJldGFpbiBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eSB3aXRoIG9sZGVyIHZlcnNpb24gb2YgZHBrZy1kZXYgYnkgIgorInVzaW5nIHRoZSBmb2xsb3dpbmcgY29kZToiCittc2dzdHIgIiIKKyJPbSBJPGRlYmlhbi9ydWxlcz4gc2VyIHDDpSBkZXNzYSB2YXJpYWJsZXIgZsO2ciBhdHQgdsOkbGphIGh1ciBlbGxlciB2YWQgc29tICIKKyJza2FsbCBrb21waWxlcmFzIGLDtnIgZGV0dGEgdXBwZGF0ZXJhcyB0aWxsIGF0dCBhbnbDpG5kYSBkZSBueWEgdmFyaWFibGVybmEgIgorIm9jaCB2w6RyZGVuYS4gT20gZHUgdmlsbCBiaWJlaMOlbGxhIGJha8OldGtvbXBhdGliaWxpdGV0IG1lZCB0aWRpZ2FyZSB2ZXJzaW9uZXIgIgorImF2IGRwa2ctZGV2IGthbiBkdSBhbnbDpG5kYSBmw7ZsamFuZGUga29kOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyMTIKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiREVCX0hPU1RfQVJDSF9DUFUgOj0gJChzaGVsbCBkcGtnLWFyY2hpdGVjdHVyZSAtcURFQl9IT1NUX0FSQ0hfQ1BVIDJFPGd0Pi9kZXYvbnVsbClcbiIKKyJERUJfSE9TVF9BUkNIX09TIDo9ICQoc2hlbGwgZHBrZy1hcmNoaXRlY3R1cmUgLXFERUJfSE9TVF9BUkNIX09TIDJFPGd0Pi9kZXYvbnVsbClcbiIKK21zZ3N0ciAiIgorIkRFQl9IT1NUX0FSQ0hfQ1BVIDo9ICQoc2hlbGwgZHBrZy1hcmNoaXRlY3R1cmUgLXFERUJfSE9TVF9BUkNIX0NQVSAyRTxndD4vZGV2L251bGwpXG4iCisiREVCX0hPU1RfQVJDSF9PUyA6PSAkKHNoZWxsIGRwa2ctYXJjaGl0ZWN0dXJlIC1xREVCX0hPU1RfQVJDSF9PUyAyRTxndD4vZGV2L251bGwpXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjI2CisjLCBuby13cmFwCittc2dpZCAiIgorIiMgVGFrZSBhY2NvdW50IG9mIG9sZCBkcGtnLWFyY2hpdGVjdHVyZSBvdXRwdXQuXG4iCisiaWZlcSAoJChERUJfSE9TVF9BUkNIX0NQVSksKVxuIgorIiAgREVCX0hPU1RfQVJDSF9DUFUgOj0gJChzaGVsbCBkcGtnLWFyY2hpdGVjdHVyZSAtcURFQl9IT1NUX0dOVV9DUFUpXG4iCisiICBpZmVxICgkKERFQl9IT1NUX0FSQ0hfQ1BVKSx4ODZfNjQpXG4iCisiICAgIERFQl9IT1NUX0FSQ0hfQ1BVIDo9IGFtZDY0XG4iCisiICBlbmRpZlxuIgorImVuZGlmXG4iCisiaWZlcSAoJChERUJfSE9TVF9BUkNIX09TKSwpXG4iCisiICBERUJfSE9TVF9BUkNIX09TIDo9ICQoc3Vic3QgLWdudSwsJChzaGVsbCBkcGtnLWFyY2hpdGVjdHVyZSAtcURFQl9IT1NUX0dOVV9TWVNURU0pKVxuIgorIiAgaWZlcSAoJChERUJfSE9TVF9BUkNIX09TKSxnbnUpXG4iCisiICAgIERFQl9IT1NUX0FSQ0hfT1MgOj0gaHVyZFxuIgorIiAgZW5kaWZcbiIKKyJlbmRpZlxuIgorbXNnc3RyICIiCisiIyBUYSBnYW1tYWx0IHV0ZGF0YWZvcm1hdCBmcsOlbiBkcGtnLWFyY2hpdGVjdHVyZSBpIGJlYWt0bmluZy5cbiIKKyJpZmVxICgkKERFQl9IT1NUX0FSQ0hfQ1BVKSwpXG4iCisiICBERUJfSE9TVF9BUkNIX0NQVSA6PSAkKHNoZWxsIGRwa2ctYXJjaGl0ZWN0dXJlIC1xREVCX0hPU1RfR05VX0NQVSlcbiIKKyIgIGlmZXEgKCQoREVCX0hPU1RfQVJDSF9DUFUpLHg4Nl82NClcbiIKKyIgICAgREVCX0hPU1RfQVJDSF9DUFUgOj0gYW1kNjRcbiIKKyIgIGVuZGlmXG4iCisiZW5kaWZcbiIKKyJpZmVxICgkKERFQl9IT1NUX0FSQ0hfT1MpLClcbiIKKyIgIERFQl9IT1NUX0FSQ0hfT1MgOj0gJChzdWJzdCAtZ251LCwkKHNoZWxsIGRwa2ctYXJjaGl0ZWN0dXJlIC1xREVCX0hPU1RfR05VX1NZU1RFTSkpXG4iCisiICBpZmVxICgkKERFQl9IT1NUX0FSQ0hfT1MpLGdudSlcbiIKKyIgICAgREVCX0hPU1RfQVJDSF9PUyA6PSBodXJkXG4iCisiICBlbmRpZlxuIgorImVuZGlmXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjI5Cittc2dpZCAiQW5kIHNpbWlsYXJseSBmb3IgREVCX0JVSUxEX0FSQ0hfQ1BVIGFuZCBERUJfQlVJTERfQVJDSF9PUy4iCittc2dzdHIgIk9jaCBww6UgbW90c3ZhcmFuZGUgc8OkdHQgZsO2ciBERUJfQlVJTERfQVJDSF9DUFUgb2NoIERFQl9CVUlMRF9BUkNIX09TLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyMzIKK21zZ2lkICIiCisiSWYgeW91IHN0aWxsIHdpc2ggdG8gc3VwcG9ydCB2ZXJzaW9ucyBvZiBkcGtnLWRldiB0aGF0IGRpZCBub3QgaW5jbHVkZSAiCisiQjxkcGtnLWFyY2hpdGVjdHVyZT4sIHRoZSBmb2xsb3dpbmcgZG9lcyB0aGUgam9iOiIKK21zZ3N0ciAiIgorIk9tIGR1IGZvcnRmYXJhbmRlIHZpbGwgc3TDtmRhIHZlcnNpb25lciBhdiBkcGtnLWRldiBzb20gaW50ZSBpbm5laMO2bGwgQjxkcGtnLSIKKyJhcmNoaXRlY3R1cmU+IGZ1bmdlcmFyIGbDtmxqYW5kZToiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjQyCisjLCBuby13cmFwCittc2dpZCAiIgorIlxcJlxccy0xREVCX0JVSUxEX0FSQ0hcXHMwIDo9ICQoc2hlbGwgZHBrZyAtLXByaW50LWFyY2hpdGVjdHVyZSlcbiIKKyJcXCZcXHMtMURFQl9CVUlMRF9HTlVfQ1BVXFxzMCA6PSAkKHBhdHN1YnN0IGh1cmQtJSwlLCQoXFxzLTFERUJfQlVJTERfQVJDSFxcczApKVxuIgorImlmZXEgKCQoZmlsdGVyLW91dCBodXJkLSUsJChcXHMtMURFQl9CVUlMRF9BUkNIXFxzMCkpLClcbiIKKyIgIFxccy0xREVCX0JVSUxEX0dOVV9TWVNURU1cXHMwIDo9IGdudVxuIgorImVsc2VcbiIKKyIgIFxccy0xREVCX0JVSUxEX0dOVV9TWVNURU1cXHMwIDo9IGxpbnV4LWdudVxuIgorImVuZGlmXG4iCisiREVCX0JVSUxEX0dOVV9UWVBFPSQoXFxzLTFERUJfQlVJTERfR05VX0NQVVxcczApLSQoXFxzLTFERUJfQlVJTERfR05VX1NZU1RFTVxcczApXG4iCittc2dzdHIgIiIKKyJcXCZcXHMtMURFQl9CVUlMRF9BUkNIXFxzMCA6PSAkKHNoZWxsIGRwa2cgLS1wcmludC1hcmNoaXRlY3R1cmUpXG4iCisiXFwmXFxzLTFERUJfQlVJTERfR05VX0NQVVxcczAgOj0gJChwYXRzdWJzdCBodXJkLSUsJSwkKFxccy0xREVCX0JVSUxEX0FSQ0hcXHMwKSlcbiIKKyJpZmVxICgkKGZpbHRlci1vdXQgaHVyZC0lLCQoXFxzLTFERUJfQlVJTERfQVJDSFxcczApKSwpXG4iCisiICBcXHMtMURFQl9CVUlMRF9HTlVfU1lTVEVNXFxzMCA6PSBnbnVcbiIKKyJlbHNlXG4iCisiICBcXHMtMURFQl9CVUlMRF9HTlVfU1lTVEVNXFxzMCA6PSBsaW51eC1nbnVcbiIKKyJlbmRpZlxuIgorIkRFQl9CVUlMRF9HTlVfVFlQRT0kKFxccy0xREVCX0JVSUxEX0dOVV9DUFVcXHMwKS0kKFxccy0xREVCX0JVSUxEX0dOVV9TWVNURU1cXHMwKVxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI0NworIywgbm8td3JhcAorbXNnaWQgIiIKKyJcXCZcXHMtMURFQl9IT1NUX0FSQ0hcXHMwIDo9ICQoXFxzLTFERUJfQlVJTERfQVJDSFxcczApXG4iCisiXFwmXFxzLTFERUJfSE9TVF9HTlVfQ1BVXFxzMCA6PSAkKFxccy0xREVCX0JVSUxEX0dOVV9DUFVcXHMwKVxuIgorIlxcJlxccy0xREVCX0hPU1RfR05VX1NZU1RFTVxcczAgOj0gJChcXHMtMURFQl9CVUlMRF9HTlVfU1lTVEVNXFxzMClcbiIKKyJcXCZcXHMtMURFQl9IT1NUX0dOVV9UWVBFXFxzMCA6PSAkKFxccy0xREVCX0JVSUxEX0dOVV9UWVBFXFxzMClcbiIKK21zZ3N0ciAiIgorIlxcJlxccy0xREVCX0hPU1RfQVJDSFxcczAgOj0gJChcXHMtMURFQl9CVUlMRF9BUkNIXFxzMClcbiIKKyJcXCZcXHMtMURFQl9IT1NUX0dOVV9DUFVcXHMwIDo9ICQoXFxzLTFERUJfQlVJTERfR05VX0NQVVxcczApXG4iCisiXFwmXFxzLTFERUJfSE9TVF9HTlVfU1lTVEVNXFxzMCA6PSAkKFxccy0xREVCX0JVSUxEX0dOVV9TWVNURU1cXHMwKVxuIgorIlxcJlxccy0xREVCX0hPU1RfR05VX1RZUEVcXHMwIDo9ICQoXFxzLTFERUJfQlVJTERfR05VX1RZUEVcXHMwKVxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI1MQorbXNnaWQgIiIKKyJQdXQgYSBzdWJzZXQgb2YgdGhlc2UgbGluZXMgYXQgdGhlIHRvcCBvZiB5b3VyIGRlYmlhbi9ydWxlcyBmaWxlOyB0aGVzZSAiCisiZGVmYXVsdCB2YWx1ZXMgd2lsbCBiZSBvdmVyd3JpdHRlbiBpZiBkcGtnLWFyY2hpdGVjdHVyZSBpcyB1c2VkLiIKK21zZ3N0ciAiIgorIkzDpGdnIGluIGVuIGRlbG3DpG5nZCBhdiBkZXNzYSByYWRlciDDtnZlcnN0IGkgZGluIGRlYmlhbi9ydWxlcy1maWwuICIKKyJTdGFuZGFyZHZhcmlhYmxlcm5hIGtvbW1lciBza3JpdmFzIMO2dmVyIG9tIGRwa2ctYXJjaGl0ZWN0dXJlIGFudsOkbmRzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyNTgKK21zZ2lkICIiCisiWW91IGRvbid0IG5lZWQgdGhlIGZ1bGwgc2V0LiBDaG9vc2UgYSBjb25zaXN0ZW50IHNldCB3aGljaCBjb250YWlucyB0aGUgIgorInZhbHVlcyB5b3UgdXNlIGluIHRoZSBydWxlcyBmaWxlLiBGb3IgZXhhbXBsZSwgaWYgeW91IG9ubHkgbmVlZCB0aGUgaG9zdCAiCisiRGViaWFuIGFyY2hpdGVjdHVyZSwgYERFQl9IT1NUX0FSQ0g9XFxgZHBrZyAtLXByaW50LWFyY2hpdGVjdHVyZVxcYCcgaXMgIgorInN1ZmZpY2llbnQgKHRoaXMgaXMgaW5kZWVkIHRoZSBEZWJpYW4gYXJjaGl0ZWN0dXJlIG9mIHRoZSBidWlsZCBtYWNoaW5lLCBidXQgIgorInJlbWVtYmVyIHRoYXQgd2UgYXJlIG9ubHkgdHJ5aW5nIHRvIGJlIGJhY2t3YXJkIGNvbXBhdGlibGUgd2l0aCBuYXRpdmUgIgorImNvbXBpbGF0aW9uKS4iCittc2dzdHIgIiIKKyJEdSBiZWjDtnZlciBpbnRlIGFsbGEuIFbDpGxqIGVuIGtvbnNpc3RlbnQgZGVsbcOkbmdkIHNvbSBpbm5laMOlbGxlciBkZSB2w6RyZGVuICIKKyJkdSBhbnbDpG5kZXIgaSBydWxlcy1maWxlbi4gT20gZHUgdGlsbCBleGVtcGVsIGJhcmEgYmVow7Z2ZXIgdsOkcmQtIgorIkRlYmlhbmFya2l0ZWt0dXJlbiByw6Rja2VyIGRldCBtZWQgXCJERUJfSE9TVF9BUkNIPVxcYGRwa2cgLS1wcmludC0iCisiYXJjaGl0ZWN0dXJlXFxgXCIgKGphLCBkZXQgw6RyIERlYmlhbmFya2l0ZWt0dXJlbiBww6UgYnlnZ21hc2tpbmVuLCBtZW4ga29tICIKKyJpaMOlZyBhdHQgdmkgYmFyYSBmw7Zyc8O2a2VyIHZhcmEgYmFrw6V0a29tcGF0aWJlbCBtZWQga29tcGlsZXJpbmcgcMOlIHNhbW1hICIKKyJwbGF0dGZvcm0pLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyNjEKK21zZ2lkICIiCisiVGhlIEI8LWU+IGFuZCBCPC1pPiBvcHRpb25zIHdlcmUgb25seSBpbnRyb2R1Y2VkIGluIHJlbGF0aXZlbHkgcmVjZW50ICIKKyJ2ZXJzaW9ucyBvZiBCPGRwa2ctYXJjaGl0ZWN0dXJlPiAoc2luY2UgZHBrZyAxLjEzLjEzKS4iCittc2dzdHIgIiIKKyJGbGFnZ29ybmEgQjwtZT4gb2NoIEI8LWk+IGludHJvZHVjZXJhZGVzIGkgQjxkcGtnLWFyY2hpdGVjdHVyZT4gcmVsYXRpdnQgIgorIm55bGlnZW4gKHNlZGFuIGRwa2cgMS4xMy4xMykuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI2NQorbXNnaWQgIiIKKyJCPGRwa2ctYnVpbGRwYWNrYWdlPiBhY2NlcHRzIHRoZSBCPC1hPiBvcHRpb24gYW5kIHBhc3NlcyBpdCB0byBCPGRwa2ctIgorImFyY2hpdGVjdHVyZT4uIE90aGVyIGV4YW1wbGVzOiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1hcmNoaXRlY3R1cmU+IGdvZHRhciBmbGFnZ2FuIEI8LWE+IG9jaCBzw6RuZGVyIGRlbiB2aWRhcmUgdGlsbCBCPGRwa2ctIgorImFyY2hpdGVjdHVyZT4uIEFuZHJhIGV4ZW1wZWw6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI2NworbXNnaWQgIkNDPWkzODYtZ251LWdjYyBkcGtnLWFyY2hpdGVjdHVyZSAtYyBkZWJpYW4vcnVsZXMgYnVpbGQiCittc2dzdHIgIkNDPWkzODYtZ251LWdjYyBkcGtnLWFyY2hpdGVjdHVyZSAtYyBkZWJpYW4vcnVsZXMgYnVpbGQiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjY5Cittc2dpZCAiZXZhbCBcXGBkcGtnLWFyY2hpdGVjdHVyZSAtdVxcYCIKK21zZ3N0ciAiZXZhbCBcXGBkcGtnLWFyY2hpdGVjdHVyZSAtdVxcYCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyNzIKK21zZ2lkICIiCisiQ2hlY2sgaWYgYW4gYXJjaGl0ZWN0dXJlIGlzIGVxdWFsIHRvIHRoZSBjdXJyZW50IGFyY2hpdGVjdHVyZSBvciBhIGdpdmVuIG9uZToiCittc2dzdHIgIiIKKyJLb250cm9sbGVyYSBvbSBlbiBhcmtpdGVrdHVyIMOkciBzYW1tYSBzb20gZGVuIG51dmFyYW5kZSBlbGxlciBlbiBnaXZlbjoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6Mjc0Cittc2dpZCAiZHBrZy1hcmNoaXRlY3R1cmUgLWVsaW51eC1hbHBoYSIKK21zZ3N0ciAiZHBrZy1hcmNoaXRlY3R1cmUgLWVsaW51eC1hbHBoYSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyNzYKK21zZ2lkICJkcGtnLWFyY2hpdGVjdHVyZSAtYW1pcHMgLWVsaW51eC1taXBzIgorbXNnc3RyICJkcGtnLWFyY2hpdGVjdHVyZSAtYW1pcHMgLWVsaW51eC1taXBzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI3OQorbXNnaWQgIiIKKyJDaGVjayBpZiB0aGUgY3VycmVudCBhcmNoaXRlY3R1cmUgb3IgYW4gYXJjaGl0ZWN0dXJlIHByb3ZpZGVkIHdpdGggLWEgYXJlICIKKyJMaW51eCBzeXN0ZW1zOiIKK21zZ3N0ciAiIgorIlNlIG9tIGRlbiBha3R1ZWxsYSBhcmtpdGVrdHVyZW4gZWxsZXIgZW4gYXJraXRla3R1ciBzb20gYW5nZXMgbWVkIC1hIMOkciBldHQgIgorIkxpbnV4c3lzdGVtOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyODEKK21zZ2lkICJkcGtnLWFyY2hpdGVjdHVyZSAtaWxpbnV4LWFueSIKK21zZ3N0ciAiZHBrZy1hcmNoaXRlY3R1cmUgLWlsaW51eC1hbnkiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjgzCittc2dpZCAiZHBrZy1hcmNoaXRlY3R1cmUgLWFpMzg2IC1pbGludXgtYW55IgorbXNnc3RyICJkcGtnLWFyY2hpdGVjdHVyZSAtYWkzODYgLWlsaW51eC1hbnkiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6Mjg4Cittc2dpZCAiIgorIkFsbCB0aGVzZSBmaWxlcyBoYXZlIHRvIGJlIHByZXNlbnQgZm9yIEI8ZHBrZy1hcmNoaXRlY3R1cmU+IHRvIHdvcmsuIFRoZWlyICIKKyJsb2NhdGlvbiBjYW4gYmUgb3ZlcnJpZGRlbiBhdCBydW50aW1lIHdpdGggdGhlIGVudmlyb25tZW50IHZhcmlhYmxlICIKKyJCPERQS0dfREFUQURJUj4uIgorbXNnc3RyICIiCisiQWxsYSBkZXNzYSBmaWxlciBtw6VzdGUgZmlubmFzIGbDtnIgYXR0IEI8ZHBrZy1hcmNoaXRlY3R1cmU+IG3DpXN0ZSBmaW5uYXMuICIKKyJEZXJhcyBwbGFjZXJpbmcga2FuIMO2dmVyc3R5cmFzIHZpZCBrw7ZybmluZyBtZWQgbWlsasO2dmFyaWFiZWxuICIKKyJCPERQS0dfREFUQURJUj4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyODgKKyMsIG5vLXdyYXAKK21zZ2lkICJJPC91c3Ivc2hhcmUvZHBrZy9jcHV0YWJsZT4iCittc2dzdHIgIkk8L3Vzci9zaGFyZS9kcGtnL2NwdXRhYmxlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyOTEKK21zZ2lkICJUYWJsZSBvZiBrbm93biBDUFUgbmFtZXMgYW5kIG1hcHBpbmcgdG8gdGhlaXIgR05VIG5hbWUuIgorbXNnc3RyICJUYWJlbGwgw7Z2ZXIga8OkbmRhIHByb2Nlc3Nvcm5hbW4gb2NoIGRlcmFzIG1vdHN2YXJhbmRlIEdOVS1uYW1uLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6MjkxCisjLCBuby13cmFwCittc2dpZCAiSTwvdXNyL3NoYXJlL2Rwa2cvb3N0YWJsZT4iCittc2dzdHIgIkk8L3Vzci9zaGFyZS9kcGtnL29zdGFibGU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWFyY2hpdGVjdHVyZS4xOjI5NAorbXNnaWQgIlRhYmxlIG9mIGtub3duIG9wZXJhdGluZyBzeXN0ZW0gbmFtZXMgYW5kIG1hcHBpbmcgdG8gdGhlaXIgR05VIG5hbWUuIgorbXNnc3RyICJUYWJlbGwgw7Z2ZXIga8OkbmRhIG9wZXJhdGl2c3lzdGVtc25hbW4gb2NoIGRlcmFzIG1vdHN2YXJhbmRlIEdOVS1uYW1uLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYXJjaGl0ZWN0dXJlLjE6Mjk0CisjLCBuby13cmFwCittc2dpZCAiSTwvdXNyL3NoYXJlL2Rwa2cvdHJpcGxldHRhYmxlPiIKK21zZ3N0ciAiSTwvdXNyL3NoYXJlL2Rwa2cvdHJpcGxldHRhYmxlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMToyOTgKK21zZ2lkICIiCisiTWFwcGluZyBiZXR3ZWVuIERlYmlhbiBhcmNoaXRlY3R1cmUgdHJpcGxldHMgYW5kIERlYmlhbiBhcmNoaXRlY3R1cmUgbmFtZXMuIgorbXNnc3RyICIiCisiVGFiZWxsIMO2dmVyIERlYmlhbmFya2l0ZWt0dXJ0cmlwcGxhciBvY2ggZGVyYXMgbW90c3ZhcmFuZGUgIgorIkRlYmlhbmFya2l0ZWt0dXJuYW1uLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTozMDIKK21zZ2lkICJCPGRwa2ctYnVpbGRwYWNrYWdlPigxKSwgQjxkcGtnLWNyb3NzPigxKS4iCittc2dzdHIgIkI8ZHBrZy1idWlsZHBhY2thZ2U+KDEpLCBCPGRwa2ctY3Jvc3M+KDEpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1hcmNoaXRlY3R1cmUuMTozMDcKK21zZ2lkICIiCisiQjxkcGtnLWFyY2hpdGVjdHVyZT4gYW5kIHRoaXMgbWFuIHBhZ2Ugd2VyZSBpbml0aWFsbHkgd3JpdHRlbiBieSBNYXJjdXMgIgorIkJyaW5rbWFubiBFPGx0PmJyaW5rbWRAZGViaWFuLm9yZ0U8Z3Q+LiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1hcmNoaXRlY3R1cmU+IG9jaCBkZW5uYSBtYW51YWxzaWRhIHNrcmV2cyB1cnNwcnVuZ2xpZ2VuIGF2IE1hcmt1cyAiCisiQnJpbmttYW5uIEU8bHQ+YnJpbmttZEBkZWJpYW4ub3JnRTxndD4uIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy5jZmcuNToxCisjLCBuby13cmFwCittc2dpZCAiZHBrZy5jZmciCittc2dzdHIgImRwa2cuY2ZnIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy5jZmcuNToxCisjLCBuby13cmFwCittc2dpZCAiMjAwOS0wOS0wNSIKK21zZ3N0ciAiMjAwOS0wOS0wNSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy5jZmcuNTo0Cittc2dpZCAiZHBrZy5jZmcgLSBkcGtnIGNvbmZpZ3VyYXRpb24gZmlsZSIKK21zZ3N0ciAiZHBrZy5jZmcgLSBpbnN0w6RsbG5pbmdzZmlsIGbDtnIgZHBrZyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy5jZmcuNToxMQorbXNnaWQgIiIKKyJUaGlzIGZpbGUgY29udGFpbnMgZGVmYXVsdCBvcHRpb25zIGZvciBkcGtnLiBFYWNoIGxpbmUgY29udGFpbnMgYSBzaW5nbGUgIgorIm9wdGlvbiB3aGljaCBpcyBleGFjdGx5IHRoZSBzYW1lIGFzIGEgbm9ybWFsIGNvbW1hbmQgbGluZSBvcHRpb24gZm9yIGRwa2cgIgorImV4Y2VwdCBmb3IgdGhlIGxlYWRpbmcgZGFzaGVzIHdoaWNoIGFyZSBub3QgdXNlZCBoZXJlLiBRdW90ZXMgc3Vycm91bmRpbmcgIgorIm9wdGlvbiB2YWx1ZXMgYXJlIHN0cmlwcGVkLiBDb21tZW50cyBhcmUgYWxsb3dlZCBieSBzdGFydGluZyBhIGxpbmUgd2l0aCBhICIKKyJoYXNoIHNpZ24gKFwiQjwjPlwiKS4iCittc2dzdHIgIiIKKyJGaWxlbiBpbm5laMOlbGxlciBmw7ZydmFsZGEgaW5zdMOkbGxuaW5nYXIgZsO2ciBkcGtnLiBWYXJqZSByYWQgYmVzdMOlciBhdiBlbiAiCisiZW5zYW0gZmxhZ2dhIHNvbSDDpHIgZXhha3QgZGVuc2FtbWEgc29tIGVuIG5vcm1hbCBrb21tYW5kb3JhZHNmbGFnZ2EgZsO2ciAiCisiZHBrZywgZsO2cnV0b20gZGUgaW5sZWRhbmRlIGJpbmRlc3RyZWNrZW4gdmlsa2EgaW50ZSBhbnbDpG5kcyBow6RyLiBDaXRhdHRlY2tlbiAiCisicnVudCBmbGFnZ3bDpHJkZW4gdGFzIGJvcnQuIEtvbW1lbnRhcmVyIMOkciB0aWxsw6V0bmEgZ2Vub20gYXR0IGlubGVkYSBlbiByYWQgIgorIm1lZCBudW1tZXJ0ZWNrZW4gKFwiQjwjPlwiKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuY2ZnLjU6MTQKK21zZ2lkICJJPC9ldGMvZHBrZy9kcGtnLmNmZy5kL1swLTlhLXpBLVpfLV0qPiIKK21zZ3N0ciAiSTwvZXRjL2Rwa2cvZHBrZy5jZmcuZC9bMC05YS16QS1aXy1dKj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuY2ZnLjU6MTgKK21zZ2lkICJJPH4vLmRwa2cuY2ZnPiIKK21zZ3N0ciAiSTx+Ly5kcGtnLmNmZz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2cuY2ZnLjU6MjQgZHBrZy1kaXZlcnQuODoxMzQgZHBrZy1xdWVyeS4xOjIyMiBkcGtnLXN0YXRvdmVycmlkZS44Ojg2Cittc2dpZCAiQjxkcGtnPigxKS4iCittc2dzdHIgIkI8ZHBrZz4oMSkuIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1idWlsZGZsYWdzLjE6MQorIywgbm8td3JhcAorbXNnaWQgImRwa2ctYnVpbGRmbGFncyIKK21zZ3N0ciAiZHBrZy1idWlsZGZsYWdzIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1idWlsZGZsYWdzLjE6MQorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICIyMDExLTA5LTA5IgorbXNnaWQgIjIwMTEtMDktMTMiCittc2dzdHIgIjIwMTEtMDktMDkiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjQKK21zZ2lkICJkcGtnLWJ1aWxkZmxhZ3MgLSByZXR1cm5zIGJ1aWxkIGZsYWdzIHRvIHVzZSBkdXJpbmcgcGFja2FnZSBidWlsZCIKK21zZ3N0ciAiIgorImRwa2ctYnVpbGRmbGFncyAtIHJldHVybmVyYXIgYnlnZ2ZsYWdnb3IgYXR0IGFudsOkbmRhIGbDtnIgYXR0IGJ5Z2dhIHBha2V0IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo4Cittc2dpZCAiQjxkcGtnLWJ1aWxkZmxhZ3M+IFtJPG9wdGlvbj4uLi5dIFtJPGNvbW1hbmQ+XSIKK21zZ3N0ciAiQjxkcGtnLWJ1aWxkZmxhZ3M+IFtJPGZsYWdnYT4uLi5dIEk8a29tbWFuZG8+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMgorbXNnaWQgIiIKKyJCPGRwa2ctYnVpbGRmbGFncz4gaXMgYSB0b29sIHRvIHJldHJpZXZlIGNvbXBpbGF0aW9uIGZsYWdzIHRvIHVzZSBkdXJpbmcgIgorImJ1aWxkIG9mIERlYmlhbiBwYWNrYWdlcy4iCittc2dzdHIgIiIKKyJCPGRwa2ctYnVpbGRmbGFncz4gw6RyIGV0dCB2ZXJrdHlnIGbDtnIgYXR0IGjDpG10YSBrb21waWxlcmluZ3NmbGFnZ29yIGF0dCAiCisiYW52w6RuZGEgZsO2ciBhdHQgYnlnZ2EgRGViaWFucGFrZXQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNQorbXNnaWQgIiIKKyJUaGUgZGVmYXVsdCBmbGFncyBhcmUgZGVmaW5lZCBieSB0aGUgdmVuZG9yIGJ1dCB0aGV5IGNhbiBiZSBleHRlbmRlZC8iCisib3ZlcnJpZGVuIGluIHNldmVyYWwgd2F5czoiCittc2dzdHIgIiIKKyJEZSBmw7ZydmFsZGEgZmxhZ2dvcm5hIGFuZ2VzIGF2IGxldmVyYW50w7ZyZW4sIG1lbiBkZSBrYW4gdXTDtmthcy/DtnZlcnN0eXJhcyBww6UgIgorImZsZXJhIHPDpHR0OiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE1CisjLCBuby13cmFwCittc2dpZCAiMS4iCittc2dzdHIgIjEuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNworbXNnaWQgInN5c3RlbS13aWRlIHdpdGggQjwvZXRjL2Rwa2cvYnVpbGRmbGFncy5jb25mPjsiCittc2dzdHIgInDDpSBoZWxhIHN5c3RlbWV0IG1lZCBCPC9ldGMvZHBrZy9idWlsZGZsYWdzLmNvbmY+OyIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE3CisjLCBuby13cmFwCittc2dpZCAiMi4iCittc2dzdHIgIjIuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyMAorbXNnaWQgIiIKKyJmb3IgdGhlIGN1cnJlbnQgdXNlciB3aXRoIEI8JFhER19DT05GSUdfSE9NRS9kcGtnL2J1aWxkZmxhZ3MuY29uZj4gd2hlcmUgQjwiCisiJFhER19DT05GSUdfSE9NRT4gZGVmYXVsdHMgdG8gQjwkSE9NRS8uY29uZmlnPjsiCittc2dzdHIgIiIKKyJmw7ZyIGRlbiBudXZhcmFuZGUgYW52w6RuZGFyZW4gbWVkIEI8JFhER19DT05GSUdfSE9NRS9kcGtnL2J1aWxkZmxhZ3MuY29uZj4gIgorImTDpHIgQjwkWERHX0NPTkZJR19IT01FPiBoYXIgc3RhbmRhcmR2w6RyZGV0IEI8JEhPTUUvLmNvbmZpZz47IgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjAKKyMsIG5vLXdyYXAKK21zZ2lkICIzLiIKK21zZ3N0ciAiMy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjIzCittc2dpZCAiIgorInRlbXBvcmFyaWx5IGJ5IHRoZSB1c2VyIHdpdGggZW52aXJvbm1lbnQgdmFyaWFibGVzIChzZWUgc2VjdGlvbiAiCisiQjxFTlZJUk9OTUVOVD4pOyIKK21zZ3N0ciAidGVtcG9yw6RydCBhdiBhbnbDpG5kYXJlbiBtZWQgbWlsasO2dmFyaWFibGVyIChzZSBzdHlja2V0IEI8TUlMSsOWPikuIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjMKKyMsIG5vLXdyYXAKK21zZ2lkICI0LiIKK21zZ3N0ciAiNC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjI2Cittc2dpZCAiIgorImR5bmFtaWNhbGx5IGJ5IHRoZSBwYWNrYWdlIG1haW50YWluZXIgd2l0aCBlbnZpcm9ubWVudCB2YXJpYWJsZXMgc2V0IHZpYSAiCisiQjxkZWJpYW4vcnVsZXM+IChzZWUgc2VjdGlvbiBCPEVOVklST05NRU5UPikuIgorbXNnc3RyICIiCisiZHluYW1pc2t0IGF2IHBha2V0YW5zdmFyaWdhIG1lZCBtaWxqw7Z2YXJpYWJsZXIgc29tIHPDpHR0cyB2aWEgQjxkZWJpYW4vcnVsZXM+ICIKKyIoc2Ugc3R5Y2tldCBCPE1JTErDlj4pLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjgKK21zZ2lkICJUaGUgY29uZmlndXJhdGlvbiBmaWxlcyBjYW4gY29udGFpbiB0d28gdHlwZXMgb2YgZGlyZWN0aXZlczoiCittc2dzdHIgIktvbmZpZ3VyYXRpb25zZmlsZXJuYSBrYW4gaW5uZWjDpWxsYSB0dsOlIHNvcnRlcnMgZGlyZWt0aXY6IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPFNFVD5JPCBmbGFnIHZhbHVlPiIKK21zZ3N0ciAiQjxTRVQ+STwgZmxhZ2dhIHbDpHJkZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjMxCittc2dpZCAiT3ZlcnJpZGUgdGhlIGZsYWcgbmFtZWQgSTxmbGFnPiB0byBoYXZlIHRoZSB2YWx1ZSBJPHZhbHVlPi4iCittc2dzdHIgIsOWdmVyc3R5ciBmbGFnZ2FuIEk8ZmxhZ2dhPiB0aWxsIGF0dCBoYSB2w6RyZGV0IEk8dsOkcmRlPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTozMQorIywgbm8td3JhcAorbXNnaWQgIkI8U1RSSVA+STwgZmxhZyB2YWx1ZT4iCittc2dzdHIgIkI8U1RSSVA+STwgZmxhZ2dhIHbDpHJkZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjM0Cittc2dpZCAiIgorIlN0cmlwIGZyb20gdGhlIGZsYWcgbmFtZWQgSTxmbGFnPiBhbGwgdGhlIGJ1aWxkIGZsYWdzIGxpc3RlZCBpbiBJPHZhbHVlPi4iCittc2dzdHIgIiIKKyJUYSBib3J0IGFsbGEgZmxhZ2dvciBzb20gbGlzdGFzIGkgSTx2w6RyZGU+IGZyw6VuIGZsYWdnYW4gc29tIGFuZ2VzIGkgIgorIkk8ZmxhZ2dhPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTozNAorIywgbm8td3JhcAorbXNnaWQgIkI8QVBQRU5EPkk8IGZsYWcgdmFsdWU+IgorbXNnc3RyICJCPEFQUEVORD5JPCBmbGFnZ2EgdsOkcmRlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MzgKK21zZ2lkICIiCisiRXh0ZW5kIHRoZSBmbGFnIG5hbWVkIEk8ZmxhZz4gYnkgYXBwZW5kaW5nIHRoZSBvcHRpb25zIGdpdmVuIGluIEk8dmFsdWU+LiAgQSAiCisic3BhY2UgaXMgcHJlcGVuZGVkIHRvIHRoZSBhcHBlbmRlZCB2YWx1ZSBpZiB0aGUgZmxhZydzIGN1cnJlbnQgdmFsdWUgaXMgbm9uLSIKKyJlbXB0eS4iCittc2dzdHIgIiIKKyJVdMO2a2EgZmxhZ2dhbiBJPGZsYWdnYT4gZ2Vub20gYXR0IGzDpGdnYSB0aWxsIGFsdGVybmF0aXZlbiBzb20gYW5nZXMgaSAiCisiSTx2w6RyZGU+LiBFdHQgYmxhbmtzdGVnIGzDpGdncyB0aWxsIGbDtnJlIHbDpHJkZXQgb20gZmxhZ2dhbnMgbnV2YXJhbmRlIHbDpHJkZSAiCisiaW50ZSDDpHIgdG9tdC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTozOAorIywgbm8td3JhcAorbXNnaWQgIkI8UFJFUEVORD5JPCBmbGFnIHZhbHVlPiIKK21zZ3N0ciAiQjxQUkVQRU5EPkk8IGZsYWdnYSB2w6RyZGU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo0MgorbXNnaWQgIiIKKyJFeHRlbmQgdGhlIGZsYWcgbmFtZWQgSTxmbGFnPiBieSBwcmVwZW5kaW5nIHRoZSBvcHRpb25zIGdpdmVuIGluIEk8dmFsdWU+LiAgIgorIkEgc3BhY2UgaXMgYXBwZW5kZWQgdG8gdGhlIHByZXBlbmRlZCB2YWx1ZSBpZiB0aGUgZmxhZydzIGN1cnJlbnQgdmFsdWUgaXMgIgorIm5vbi1lbXB0eS4iCittc2dzdHIgIiIKKyJVdMO2a2EgZmxhZ2dhbiBJPGZsYWdnYT4gZ2Vub20gYXR0IGzDpGdnYSB0aWxsIGFsdGVybmF0aXZlbiBzb20gYW5nZXMgaSAiCisiSTx2w6RyZGU+IGbDtnJzdC4gRXR0IGJsYW5rc3RlZyBsw6RnZ3MgdGlsbCBlZnRlciB2w6RyZGV0IG9tIGZsYWdnYW5zIG51dmFyYW5kZSAiCisidsOkcmRlIGludGUgw6RyIHRvbXQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo0NQorbXNnaWQgIiIKKyJUaGUgY29uZmlndXJhdGlvbiBmaWxlcyBjYW4gY29udGFpbiBjb21tZW50cyBvbiBsaW5lcyBzdGFydGluZyB3aXRoIGEgaGFzaCAiCisiKCMpLiBFbXB0eSBsaW5lcyBhcmUgYWxzbyBpZ25vcmVkLiIKK21zZ3N0ciAiIgorIktvbmZpZ3VyYXRpb25zZmlsZXJuYSBrYW4gaW5uZWjDpWxsYSBrb21tZW50YXJlciBww6UgcmFkZXIgc29tIGLDtnJqYXIgbWVkIGV0dCAiCisibnVtbWVydGVja2VuICgjKS4gw4R2ZW4gdG9tbWEgcmFkZXIgaWdub3JlcmFzLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjQ2CisjLCBuby13cmFwCittc2dpZCAiQjwtLWR1bXA+IgorbXNnc3RyICJCPC0tZHVtcD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjUxCittc2dpZCAiIgorIlByaW50IHRvIHN0YW5kYXJkIG91dHB1dCBhbGwgY29tcGlsYXRpb24gZmxhZ3MgYW5kIHRoZWlyIHZhbHVlcy4gSXQgcHJpbnRzICIKKyJvbmUgZmxhZyBwZXIgbGluZSBzZXBhcmF0ZWQgZnJvbSBpdHMgdmFsdWUgYnkgYW4gZXF1YWwgc2lnbiAiCisiKFwiSTxmbGFnPj1JPHZhbHVlPlwiKS4gVGhpcyBpcyB0aGUgZGVmYXVsdCBhY3Rpb24uIgorbXNnc3RyICIiCisiU2tyaXYgYWxsYSBrb21waWxlcmluZ3NmbGFnZ29yIG9jaCBkZXJhcyB2w6RyZGUgcMOlIHN0YW5kYXJkIHV0LiBFbiBmbGFnZ2EgIgorInNrcml2cyBwZXIgcmFkLCBhdmRlbGFkZSBmcsOlbiBzaXR0IHbDpHJkZSBtZWQgZXR0IGxpa2FtZWR0ZWNrZW4gIgorIihcIkk8ZmxhZ2dhPj1JPHbDpHJkZT5cIikuIERldHRhIMOkciBzdGFuZGFyZMOldGfDpHJkZW4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6NTEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tbGlzdD4iCittc2dzdHIgIkI8LS1saXN0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6NTYKK21zZ2lkICIiCisiUHJpbnQgdGhlIGxpc3Qgb2YgZmxhZ3Mgc3VwcG9ydGVkIGJ5IHRoZSBjdXJyZW50IHZlbmRvciAob25lIHBlciBsaW5lKS4gU2VlICIKKyJ0aGUgQjxTVVBQT1JURUQgRkxBR1M+IHNlY3Rpb24gZm9yIG1vcmUgaW5mb3JtYXRpb24gYWJvdXQgdGhlbS4iCittc2dzdHIgIiIKKyJTa3JpdiB1dCBsaXN0YW4gw7Z2ZXIgZmxhZ2dvciBzb20gc3TDtmRzIGF2IGRlbiBha3R1ZWxsYSBsZXZlcmFudMO2cmVuIChlbiBwZXIgIgorInJhZCkuIFNlIHN0eWNrZXQgQjxGTEFHR09SIFNPTSBTVMOWRFM+IGbDtnIgbWVyIGluZm9ybWF0aW9uIG9tIGRlbS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo1NgorIywgbm8td3JhcAorbXNnaWQgIkI8LS1leHBvcnQ9Pkk8Zm9ybWF0PiIKK21zZ3N0ciAiQjwtLWV4cG9ydD0+STxmb3JtYXQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo2NgorbXNnaWQgIiIKKyJQcmludCB0byBzdGFuZGFyZCBvdXRwdXQgc2hlbGwgKGlmIEk8Zm9ybWF0PiBpcyBCPHNoPikgb3IgbWFrZSAoaWYgSTxmb3JtYXQ+ICIKKyJpcyBCPG1ha2U+KSBjb21tYW5kcyB0aGF0IGNhbiBiZSB1c2VkIHRvIGV4cG9ydCBhbGwgdGhlIGNvbXBpbGF0aW9uIGZsYWdzIGluICIKKyJ0aGUgZW52aXJvbm1lbnQuIElmIEk8Zm9ybWF0PiBpcyBCPGNvbmZpZ3VyZT4gdGhlbiB0aGUgb3V0cHV0IGNhbiBiZSB1c2VkIG9uICIKKyJhIEI8Li9jb25maWd1cmU+IGNvbW1hbmQtbGluZS4gSWYgdGhlIEk8Zm9ybWF0PiB2YWx1ZSBpcyBub3QgZ2l2ZW4sIEI8c2g+IGlzICIKKyJhc3N1bWVkLiBPbmx5IGNvbXBpbGF0aW9uIGZsYWdzIHN0YXJ0aW5nIHdpdGggYW4gdXBwZXIgY2FzZSBjaGFyYWN0ZXIgYXJlICIKKyJpbmNsdWRlZCwgb3RoZXJzIGFyZSBhc3N1bWVkIHRvIG5vdCBiZSBzdWl0YWJsZSBmb3IgdGhlIGVudmlyb25tZW50LiIKK21zZ3N0ciAiIgorIlNrcml2IHNrYWwtIChvbSBJPGZvcm1hdD4gw6RyIEI8c2g+KSBlbGxlciBtYWtlLWtvbW1hbmRvbiAob20gSTxmb3JtYXQ+IMOkciAiCisiQjxtYWtlPikgc29tIGthbiBhbnbDpG5kYXMgZsO2ciBhdHQgZXhwb3J0ZXJhIGFsbGEga29tcGlsZXJpbmdzZmxhZ2dvciBpICIKKyJtaWxqw7ZuIHRpbGwgc3RhbmRhcmQgdXQuIE9tIEk8Zm9ybWF0PiDDpHIgQjxjb25maWd1cmU+IGthbiB1dGRhdGEgYW52w6RuZGFzIHDDpSAiCisiZW4gQjwuL2NvbmZpZ3VyZT4ta29tbWFuZG9yYWQuIE9tIEk8Zm9ybWF0PiBpbnRlIGFuZ2VzIGFudGFzIEI8c2g+LiBFbmRhc3QgIgorImtvbXBpbGVyaW5nc2ZsYWdnb3Igc29tIGLDtnJqYXIgbWVkIGVuIHN0b3IgYm9rc3RhdiB0YXMgbWVkLCBhbmRyYSBhbnRhcyBhdHQgIgorImludGUgdmFyYSBsw6RtcGxpZ2EgZsO2ciBtaWxqw7ZuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjY2CisjLCBuby13cmFwCittc2dpZCAiQjwtLWdldD5JPCBmbGFnPiIKK21zZ3N0ciAiQjwtLWdldD5JPCBmbGFnZ2E+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo3MAorbXNnaWQgIiIKKyJQcmludCB0aGUgdmFsdWUgb2YgdGhlIGZsYWcgb24gc3RhbmRhcmQgb3V0cHV0LiBFeGl0cyB3aXRoIDAgaWYgdGhlIGZsYWcgaXMgIgorImtub3duIG90aGVyd2lzZSBleGl0cyB3aXRoIDEuIgorbXNnc3RyICIiCisiU2tyaXYgdXQgdsOkcmRldCBww6UgZmxhZ2dhbiBww6Ugc3RhbmRhcmQgdXQuIEF2c2x1dGFyIG1lZCAwIG9tIGZsYWdnYW4gw6RyICIKKyJrw6RuZCwgb20gaW50ZSBhdnNsdXRhciBkZW4gbWVkIDEuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6NzAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tb3JpZ2luPkk8IGZsYWc+IgorbXNnc3RyICJCPC0tb3JpZ2luPkk8IGZsYWdnYT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjc1Cittc2dpZCAiIgorIlByaW50IHRoZSBvcmlnaW4gb2YgdGhlIHZhbHVlIHRoYXQgaXMgcmV0dXJuZWQgYnkgQjwtLWdldD4uIEV4aXRzIHdpdGggMCBpZiAiCisidGhlIGZsYWcgaXMga25vd24gb3RoZXJ3aXNlIGV4aXRzIHdpdGggMS4gVGhlIG9yaWdpbiBjYW4gYmUgb25lIG9mIHRoZSAiCisiZm9sbG93aW5nIHZhbHVlczoiCittc2dzdHIgIiIKKyJBbmdlciB1cnNwcnVuZ2V0IHRpbGwgZmxhZ2dhbiBzb20gcmV0dXJuZXJhcyBhdiBCPC0tZ2V0Pi4gQXZzbHV0YXIgbWVkIDAgb20gIgorImZsYWdnYW4gw6RyIGvDpG5kLCBvbSBpbnRlIGF2c2x1dGFyIG1lZCAxLiBVcnNwcnVuZ2V0IGthbiB2YXJhIGV0dCBhdiBmw7ZsamFuZGUgIgorInbDpHJkZW46IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6NzYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHZlbmRvcj4iCittc2dzdHIgIkI8dmVuZG9yPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6NzkKK21zZ2lkICJ0aGUgb3JpZ2luYWwgZmxhZyBzZXQgYnkgdGhlIHZlbmRvciBpcyByZXR1cm5lZDsiCittc2dzdHIgIm9yaWdpbmFsZmxhZ2dhIHNhdHQgYXYgbGV2ZXJhbnTDtnJlbiByZXR1cm5lcmFzOyIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjc5CisjLCBuby13cmFwCittc2dpZCAiQjxzeXN0ZW0+IgorbXNnc3RyICJCPHN5c3RlbT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjgyCittc2dpZCAidGhlIGZsYWcgaXMgc2V0L21vZGlmaWVkIGJ5IGEgc3lzdGVtLXdpZGUgY29uZmlndXJhdGlvbjsiCittc2dzdHIgImZsYWdnYW4gw6RyIHNhdHQvbW9kaWZpZXJhZCBhdiBzeXN0ZW1rb25maWd1cmF0aW9uZW47IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6ODIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHVzZXI+IgorbXNnc3RyICJCPHVzZXI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo4NQorbXNnaWQgInRoZSBmbGFnIGlzIHNldC9tb2RpZmllZCBieSBhIHVzZXItc3BlY2lmaWMgY29uZmlndXJhdGlvbjsiCittc2dzdHIgImZsYWdnYW4gw6RyIHNhdHQvbW9kaWZpZXJhZCBhdiBhbnbDpG5kYXJrb25maWd1cmF0aW9uZW47IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6ODUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGVudj4iCittc2dzdHIgIkI8ZW52PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6ODgKK21zZ2lkICJ0aGUgZmxhZyBpcyBzZXQvbW9kaWZpZWQgYnkgYW4gZW52aXJvbm1lbnQtc3BlY2lmaWMgY29uZmlndXJhdGlvbi4iCittc2dzdHIgImZsYWdnYW4gw6RyIHNhdHQvbW9kaWZpZXJhZCBhdiBlbiBtaWxqw7ZzcGVjaWZpayBrb25maWd1cmF0aW9uLiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjk2CisjLCBuby13cmFwCittc2dpZCAiU1VQUE9SVEVEIEZMQUdTIgorbXNnc3RyICJGTEFHR09SIFNPTSBTVMOWRFMiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMTo5NworIywgbm8td3JhcAorbXNnaWQgIkI8Q0ZMQUdTPiIKK21zZ3N0ciAiQjxDRkxBR1M+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMDMKK21zZ2lkICIiCisiT3B0aW9ucyBmb3IgdGhlIEMgY29tcGlsZXIuIFRoZSBkZWZhdWx0IHZhbHVlIHNldCBieSB0aGUgdmVuZG9yIGluY2x1ZGVzIEk8LSIKKyJnPiBhbmQgdGhlIGRlZmF1bHQgb3B0aW1pemF0aW9uIGxldmVsIChJPC1PMj4gdXN1YWxseSwgb3IgSTwtTzA+IGlmIHRoZSAiCisiQjxERUJfQlVJTERfT1BUSU9OUz4gZW52aXJvbm1lbnQgdmFyaWFibGUgZGVmaW5lcyBJPG5vb3B0PikuIgorbXNnc3RyICIiCisiRmxhZ2dvciBmw7ZyIEMta29tcGlsYXRvcm4uIFN0YW5kYXJkdsOkcmRldCBzb20gc2F0dHMgYXYgbGV2ZXJhbnTDtnJlbiAiCisiaW5uZWjDpWxsZXIgSTwtZz4gb2NoIGRlbiBmw7ZydmFsZGEgb3B0aW1lcmluZ3NuaXbDpW4gKHZhbmxpZ3R2aXMgSTwtTzI+LCBlbGxlciAiCisiSTwtTzA+IG9tIG1pbGrDtnZhcmlhYmVsbiBCPERFQl9CVUlMRF9PUFRJT05TPiBkZWZpbmllcmFyIEk8bm9vcHQ+KS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMDMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPENQUEZMQUdTPiIKK21zZ3N0ciAiQjxDUFBGTEFHUz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEwNgorbXNnaWQgIk9wdGlvbnMgZm9yIHRoZSBDIHByZXByb2Nlc3Nvci4gRGVmYXVsdCB2YWx1ZTogZW1wdHkuIgorbXNnc3RyICJGbGFnZ29yIGbDtnIgQy1mw7ZycHJvY2Vzc2VyYXJlbi4gRsO2cnZhbHQgdsOkcmRlOiB0b210LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEwNgorIywgbm8td3JhcAorbXNnaWQgIkI8Q1hYRkxBR1M+IgorbXNnc3RyICJCPENYWEZMQUdTPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTA5Cittc2dpZCAiT3B0aW9ucyBmb3IgdGhlIEMrKyBjb21waWxlci4gU2FtZSBhcyBCPENGTEFHUz4uIgorbXNnc3RyICJGbGFnZ29yIGbDtnIgQysrLWtvbXBpbGF0b3JuLiBTYW1tYSBzb20gQjxDRkxBR1M+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEwOQorIywgbm8td3JhcAorbXNnaWQgIkI8RkZMQUdTPiIKK21zZ3N0ciAiQjxGRkxBR1M+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMTIKK21zZ2lkICJPcHRpb25zIGZvciB0aGUgRm9ydHJhbiBjb21waWxlci4gU2FtZSBhcyBCPENGTEFHUz4uIgorbXNnc3RyICJGbGFnZ29yIGbDtnIgRm9ydHJhbmtvbXBpbGF0b3JuLiBTYW1tYSBzb20gQjxDRkxBR1M+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjExMgorIywgbm8td3JhcAorbXNnaWQgIkI8TERGTEFHUz4iCittc2dzdHIgIkI8TERGTEFHUz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEyMAorbXNnaWQgIiIKKyJPcHRpb25zIHBhc3NlZCB0byB0aGUgY29tcGlsZXIgd2hlbiBsaW5raW5nIGV4ZWN1dGFibGVzIG9yIHNoYXJlZCBvYmplY3RzICIKKyIoaWYgdGhlIGxpbmtlciBpcyBjYWxsZWQgZGlyZWN0bHksIHRoZW4gQjwtV2w+IGFuZCBCPCw+IGhhdmUgdG8gYmUgc3RyaXBwZWQgIgorImZyb20gdGhlc2Ugb3B0aW9ucykuIERlZmF1bHQgdmFsdWU6IGVtcHR5LiIKK21zZ3N0ciAiIgorIkZsYWdnb3Igc29tIHPDpG5kcyB0aWxsIGtvbXBpbGF0b3JuIHZpZCBsw6Rua25pbmcgYXYgYmluw6RyZXIgZWxsZXIgZGVsYWRlICIKKyJvYmpla3QgKG9tIGzDpG5rYXJlbiBhbnJvcGFzIGRpcmVrdCBtw6VzdGUgQjwtV2w+IG9jaCBCPCw+IHRhcyBib3J0IGZyw6VuIGRlc3NhICIKKyJmbGFnZ29yKS4gU3RhbmRhcmR2w6RyZGU6IHRvbXQuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTIyCisjLCBuby13cmFwCittc2dpZCAiQjwvZXRjL2Rwa2cvYnVpbGRmbGFncy5jb25mPiIKK21zZ3N0ciAiQjwvZXRjL2Rwa2cvYnVpbGRmbGFncy5jb25mPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTI1Cittc2dpZCAiU3lzdGVtIHdpZGUgY29uZmlndXJhdGlvbiBmaWxlLiIKK21zZ3N0ciAiS29uZmlndXJhdGlvbnNmaWwgZsO2ciBoZWxhIHN5c3RlbWV0LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEyNQorIywgbm8td3JhcAorbXNnaWQgIkI8JFhER19DT05GSUdfSE9NRS9kcGtnL2J1aWxkZmxhZ3MuY29uZj4gb3IgQjwkSE9NRS8uY29uZmlnL2Rwa2cvYnVpbGRmbGFncy5jb25mPiIKK21zZ3N0ciAiQjwkWERHX0NPTkZJR19IT01FL2Rwa2cvYnVpbGRmbGFncy5jb25mPiBlbGxlciBCPCRIT01FLy5jb25maWcvZHBrZy9idWlsZGZsYWdzLmNvbmY+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMjgKK21zZ2lkICJVc2VyIGNvbmZpZ3VyYXRpb24gZmlsZS4iCittc2dzdHIgIkFudsOkbmRhcmVucyBrb25maWd1cmF0aW9uc2ZpbC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEzNQorbXNnaWQgIiIKKyJUaGVyZSBhcmUgMiBzZXRzIG9mIGVudmlyb25tZW50IHZhcmlhYmxlcyBkb2luZyB0aGUgc2FtZSBvcGVyYXRpb25zLCB0aGUgIgorImZpcnN0IG9uZSAoREVCX0k8ZmxhZz5fSTxvcD4pIHNob3VsZCBuZXZlciBiZSB1c2VkIHdpdGhpbiBCPGRlYmlhbi9ydWxlcz4uICIKKyJJdCdzIG1lYW50IGZvciBhbnkgdXNlciB0aGF0IHdhbnRzIHRvIHJlYnVpbGQgdGhlIHNvdXJjZSBwYWNrYWdlIHdpdGggIgorImRpZmZlcmVudCBidWlsZCBmbGFncy4gVGhlIHNlY29uZCBzZXQgKERFQl9JPGZsYWc+X01BSU5UX0k8b3A+KSBzaG91bGQgb25seSAiCisiYmUgdXNlZCBpbiBCPGRlYmlhbi9ydWxlcz4gYnkgcGFja2FnZSBtYWludGFpbmVycyB0byBjaGFuZ2UgdGhlIHJlc3VsdGluZyAiCisiYnVpbGQgZmxhZ3MuIgorbXNnc3RyICIiCisiRGV0IGZpbm5zIHR2w6UgdXBwc8OkdHRuaW5nYXIgbWlsasO2dmFyaWFibGVyIHNvbSB1dGbDtnIgc2FtbWEgb3BlcmF0aW9uZXIsIGRlbiAiCisiZsO2cnN0YSAoREVCX0k8ZmxhZ2dhPl9JPG9wPikgYsO2ciBhbGRyaWcgYW52w6RuZGFzIGludXRpIEI8ZGViaWFuL3J1bGVzPikuIERlbiAiCisiw6RyIHTDpG5rdCBmw7ZyIGFudsOkbmRhcmUgc29tIHZpbGwgYnlnZ2Egb20ga8OkbGxrb2RzcGFrZXRldCBtZWQgYW5kcmEgIgorImJ5Z2dmbGFnZ29yLiBEZW4gYW5kcmEgdXBwc8OkdHRuaW5nZW4gKERFQl9JPGZsYWdnYT5fTUFJTlRfSTxvcD4pIGLDtnIgZW5kYXN0ICIKKyJhbnbDpG5kYXMgaSBCPGRlYmlhbi9ydWxlcz4gYXYgcGFrZXRhbnN2YXJpZ2EgZsO2ciBhdHQgw6RuZHJhIGRlIHNsdXRnaWx0aWdhICIKKyJieWdnZmxhZ2dvcm5hLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjEzNQorIywgbm8td3JhcAorbXNnaWQgIkI8REVCXz5JPGZsYWc+QjxfU0VUPiIKK21zZ3N0ciAiQjxERUJfPkk8ZmxhZ2dhPkI8X1NFVD4iCisKKyMuIHR5cGU6IFRRCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxMzcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPERFQl8+STxmbGFnPkI8X01BSU5UX1NFVD4iCittc2dzdHIgIkI8REVCXz5JPGZsYWdnYT5CPF9NQUlOVF9TRVQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNDEKK21zZ2lkICIiCisiVGhpcyB2YXJpYWJsZSBjYW4gYmUgdXNlZCB0byBmb3JjZSB0aGUgdmFsdWUgcmV0dXJuZWQgZm9yIHRoZSBnaXZlbiBJPGZsYWc+LiIKK21zZ3N0ciAiIgorIkRlbm5hIHZhcmlhYmVsIGthbiBhbnbDpG5kYXMgZsO2ciBhdHQgdHZpbmdhIGZyYW0gdsOkcmRldCBzb20gcmV0dXJuZXJhcyBmw7ZyICIKKyJnaXZlbiBJPGZsYWdnYT4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTQxCisjLCBuby13cmFwCittc2dpZCAiQjxERUJfPkk8ZmxhZz5CPF9TVFJJUD4iCittc2dzdHIgIkI8REVCXz5JPGZsYWdnYT5CPF9TVFJJUD4iCisKKyMuIHR5cGU6IFRRCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNDMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPERFQl8+STxmbGFnPkI8X01BSU5UX1NUUklQPiIKK21zZ3N0ciAiQjxERUJfPkk8ZmxhZ2dhPkI8X01BSU5UX1NUUklQPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTQ4Cittc2dpZCAiIgorIlRoaXMgdmFyaWFibGUgY2FuIGJlIHVzZWQgdG8gcHJvdmlkZSBhIHNwYWNlIHNlcGFyYXRlZCBsaXN0IG9mIG9wdGlvbnMgdGhhdCAiCisid2lsbCBiZSBzdHJpcHBlZCBmcm9tIHRoZSBzZXQgb2YgZmxhZ3MgcmV0dXJuZWQgZm9yIHRoZSBnaXZlbiBJPGZsYWc+LiIKK21zZ3N0ciAiIgorIkRlbm5hIHZhcmlhYmVsIGthbiBhbnbDpG5kYXMgZsO2ciBhdHQgdGlsbGhhbmRhaMOlbGxhIGVuIGJsYW5rc3RlZ3NhdmRlbGFkICIKKyJsaXN0YSBtZWQgZmxhZ2dvciBzb20ga29tbWVyIGF0dCB0YXMgYm9ydCBmcsOlbiB1cHBzw6R0dG5pbmdlbiBmbGFnZ29yIHNvbSBnZXMgIgorImbDtnIgZ2l2ZW4gSTxmbGFnZ2E+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE0OAorIywgbm8td3JhcAorbXNnaWQgIkI8REVCXz5JPGZsYWc+QjxfQVBQRU5EPiIKK21zZ3N0ciAiQjxERUJfPkk8ZmxhZ2dhPkI8X0FQUEVORD4iCisKKyMuIHR5cGU6IFRRCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNTAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPERFQl8+STxmbGFnPkI8X01BSU5UX0FQUEVORD4iCittc2dzdHIgIkI8REVCXz5JPGZsYWdnYT5CPF9NQUlOVF9BUFBFTkQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNTQKK21zZ2lkICIiCisiVGhpcyB2YXJpYWJsZSBjYW4gYmUgdXNlZCB0byBhcHBlbmQgc3VwcGxlbWVudGFyeSBvcHRpb25zIHRvIHRoZSB2YWx1ZSAiCisicmV0dXJuZWQgZm9yIHRoZSBnaXZlbiBJPGZsYWc+LiIKK21zZ3N0ciAiIgorIkRlbm5hIHZhcmlhYmVsIGthbiBhbnbDpG5kYXMgZsO2ciBhdHQgbMOkZ2dhIHRpbGwgeXR0ZXJsaWdhcmUgZmxhZ2dvciB0aWxsICIKKyJ2w6RyZGV0IHNvbSByZXR1cm5lcmFzIGbDtnIgZ2l2ZW4gSTxmbGFnZ2E+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE1NAorIywgbm8td3JhcAorbXNnaWQgIkI8REVCXz5JPGZsYWc+QjxfUFJFUEVORD4iCittc2dzdHIgIkI8REVCXz5JPGZsYWdnYT5CPF9QUkVQRU5EPiIKKworIy4gdHlwZTogVFEKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE1NgorIywgbm8td3JhcAorbXNnaWQgIkI8REVCXz5JPGZsYWc+QjxfTUFJTlRfUFJFUEVORD4iCittc2dzdHIgIkI8REVCXz5JPGZsYWdnYT5CPF9NQUlOVF9QUkVQRU5EPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTYwCittc2dpZCAiIgorIlRoaXMgdmFyaWFibGUgY2FuIGJlIHVzZWQgdG8gcHJlcGVuZCBzdXBwbGVtZW50YXJ5IG9wdGlvbnMgdG8gdGhlIHZhbHVlICIKKyJyZXR1cm5lZCBmb3IgdGhlIGdpdmVuIEk8ZmxhZz4uIgorbXNnc3RyICIiCisiRGVubmEgdmFyaWFiZWwga2FuIGFudsOkbmRhcyBmw7ZyIGF0dCBsw6RnZ2EgdGlsbCB5dHRlcmxpZ2FyZSBmbGFnZ29yIGbDtnJzdCBpICIKKyJ2w6RyZGV0IHNvbSByZXR1cm5lcmFzIGbDtnIgZ2l2ZW4gSTxmbGFnZ2E+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE2MAorIywgbm8td3JhcAorbXNnaWQgIkI8REVCX0JVSUxEX01BSU5UX09QVElPTlM+IgorbXNnc3RyICJCPERFQl9CVUlMRF9NQUlOVF9PUFRJT05TPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTY1Cittc2dpZCAiIgorIlRoaXMgdmFyaWFibGUgY2FuIGJlIHVzZWQgdG8gZGlzYWJsZS9lbmFibGUgdmFyaW91cyBoYXJkZW5pbmcgYnVpbGQgZmxhZ3MgIgorInRocm91Z2ggdGhlIEI8aGFyZGVuaW5nPiBvcHRpb24uIFNlZSB0aGUgQjxIQVJERU5JTkc+IHNlY3Rpb24gZm9yIGRldGFpbHMuIgorbXNnc3RyICIiCisiRGVuIGjDpHIgdmFyaWFiZWxuIGthbiBhbnbDpG5kYXMgZsO2ciBhdHQgc2zDpSBhdi9ww6Ugb2xpa2EgaMOkcmRuaW5nc2J5Z2dmbGFnZ29yICIKKyJnZW5vbSBhbHRlcm5hdGl2ZXQgQjxoYXJkZW5pbmc+LiBTZSBhdnNuaXR0ZXQgQjxIw4RSRE5JTkc+IGbDtnIgbWVyICIKKyJpbmZvcm1hdGlvbi4iCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxNjYKKyMsIG5vLXdyYXAKK21zZ2lkICJIQVJERU5JTkciCittc2dzdHIgIkjDhFJETklORyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTcxCittc2dpZCAiIgorIlNldmVyYWwgY29tcGlsZS10aW1lIG9wdGlvbnMgKGRldGFpbGVkIGJlbG93KSBjYW4gYmUgdXNlZCB0byBoZWxwIGhhcmRlbiBhICIKKyJyZXN1bHRpbmcgYmluYXJ5IGFnYWluc3QgbWVtb3J5IGNvcnJ1cHRpb24gYXR0YWNrcywgb3IgcHJvdmlkZSBhZGRpdGlvbmFsICIKKyJ3YXJuaW5nIG1lc3NhZ2VzIGR1cmluZyBjb21waWxhdGlvbi4gRXhjZXB0IGFzIG5vdGVkIGJlbG93LCB0aGVzZSBhcmUgIgorImVuYWJsZWQgYnkgZGVmYXVsdCBmb3IgYXJjaGl0ZWN0dXJlcyB0aGF0IHN1cHBvcnQgdGhlbS4iCittc2dzdHIgIiIKKyJEdSBrYW4gYW52w6RuZGEgZmxlcmEga29tcGlsZXJpbmdzZmxhZ2dvciAoc2UgZGV0YWxqZXIgbmVkYW4pIGbDtnIgYXR0IGjDpHJkYSAiCisiZGVuIGbDpHJkaWdhIGJpbsOkcmVuIG1vdCBtaW5uZXNmw7ZyZMOkcnZuaW5nc2FuZ3JlcHAsIGVsbGVyIGbDtnIgYXR0IGdlICIKKyJ5dHRlcmxpZ2FyZSB2YXJuaW5nc21lZGRlbGFuZGVuIHVuZGVyIGtvbXBpbGVyaW5nZW4uIEbDtnJ1dG9tIGRldCBzb20gYW5nZXMgIgorIm5lZGFuIGFrdGl2ZXJhcyBkZXNzYSBzb20gc3RhbmRhcmQgZsO2ciBhcmtpdGVrdHVyZXIgc29tIHN0w7ZkZXIgZGVtLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTc3Cittc2dpZCAiIgorIkVhY2ggaGFyZGVuaW5nIGZlYXR1cmUgY2FuIGJlIGVuYWJsZWQgYW5kIGRpc2FibGVkIGluIHRoZSAiCisiQjxERUJfQlVJTERfTUFJTlRfT1BUSU9OUz4gZW52aXJvbm1lbnQgdmFyaWFibGUncyBCPGhhcmRlbmluZz4gdmFsdWUgd2l0aCAiCisidGhlIFwiK1wiIGFuZCBcIi1cIiBtb2RpZmllci4gRm9yIGV4YW1wbGUsIHRvIGVuYWJsZSB0aGUgXCJwaWVcIiBmZWF0dXJlIGFuZCAiCisiZGlzYWJsZSB0aGUgXCJmb3J0aWZ5XCIgZmVhdHVyZSB5b3UgY2FuIGRvIHRoaXMgaW4gQjxkZWJpYW4vcnVsZXM+OiIKK21zZ3N0ciAiIgorIlZhcmplIGjDpHJkbmluZ3NmdW5rdGlvbiBrYW4gYWt0aXZlcmFzIG9jaCBpbmFrdGl2ZXJhcyBpIG1pbGrDtnZhcmlhYmVsbiAiCisiQjxERUJfQlVJTERfTUFJTlRfT1BUSU9OUz4gdsOkcmRlIEI8aGFyZGVuaW5nPiBtZWQgbW9kaWZpZXJhcm5hIFwiK1wiIG9jaCBcIi0iCisiXCIuIER1IGthbiB0aWxsIGV4ZW1wZWwgYWt0aXZlcmEgb2NoIGZ1bmt0aW9uZW4gXCJwaWVcIiBvY2ggaW5ha3RpdmVyYSAiCisiZnVua3Rpb25lbiBcImZvcnRpZnlcIiBnZW5vbSBhdHQgYW5nZSBkZXR0YSBpIEI8ZGViaWFuL3J1bGVzPjoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE3OQorIywgZnV6enksIG5vLXdyYXAKKyN8IG1zZ2lkICIgIGV4cG9ydCBERUJfQlVJTERfTUFJTlRfT1BUSU9OUz1cImhhcmRlbmluZz0rcGllLC1mb3J0aWZ5XCJcbiIKK21zZ2lkICIgIGV4cG9ydCBERUJfQlVJTERfTUFJTlRfT1BUSU9OUz1oYXJkZW5pbmc9K3BpZSwtZm9ydGlmeVxuIgorbXNnc3RyICIgIGV4cG9ydCBERUJfQlVJTERfTUFJTlRfT1BUSU9OUz1cImhhcmRlbmluZz0rcGllLC1mb3J0aWZ5XCJcbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTgzCittc2dpZCAiIgorIlRoZSBzcGVjaWFsIGZlYXR1cmUgQjxhbGw+IGNhbiBiZSB1c2VkIHRvIGVuYWJsZSBvciBkaXNhYmxlIGFsbCBoYXJkZW5pbmcgIgorImZlYXR1cmVzIGF0IHRoZSBzYW1lIHRpbWUuIFRodXMgZGlzYWJsaW5nIGV2ZXJ5dGhpbmcgYW5kIGVuYWJsaW5nIG9ubHkgIgorIlwiZm9ybWF0XCIgYW5kIFwiZm9ydGlmeVwiIGNhbiBiZSBhY2hpZXZlZCB3aXRoOiIKK21zZ3N0ciAiIgorIkRlbiBzcGVjaWVsbGEgZnVua3Rpb25lbiBCPGFsbD4ga2FuIGFudsOkbmRhcyBmw7ZyIGF0dCBha3RpdmVyYSBlbGxlciAiCisiaW5ha3RpdmVyYSBhbGxhIGjDpHJkbmluZ3NmdW5rdGlvbmVyIHNhbXRpZGlndC4gRHUga2FuIHRpbGwgZXhlbXBlbCAiCisiaW5ha3RpdmVyYSBhbGx0IG9jaCBlbmRhc3QgYWt0aXZlcmEgXCJmb3JtYXRcIiBvY2ggXCJmb3J0aWZ5XCIgbWVkOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTg1CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIiAgZXhwb3J0IERFQl9CVUlMRF9NQUlOVF9PUFRJT05TPVwiaGFyZGVuaW5nPS1hbGwsK2Zvcm1hdCwrZm9ydGlmeVwiXG4iCittc2dpZCAiICBleHBvcnQgREVCX0JVSUxEX01BSU5UX09QVElPTlM9aGFyZGVuaW5nPS1hbGwsK2Zvcm1hdCwrZm9ydGlmeVxuIgorbXNnc3RyICIgIGV4cG9ydCBERUJfQlVJTERfTUFJTlRfT1BUSU9OUz1cImhhcmRlbmluZz0tYWxsLCtmb3JtYXQsK2ZvcnRpZnlcIlxuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZGZsYWdzLjE6MTg2CisjLCBuby13cmFwCittc2dpZCAiQjxmb3JtYXQ+IgorbXNnc3RyICJCPGZvcm1hdD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjE5OAorbXNnaWQgIiIKKyJUaGlzIHNldHRpbmcgKGVuYWJsZWQgYnkgZGVmYXVsdCkgYWRkcyBCPC1XZm9ybWF0IC1XZm9ybWF0LXNlY3VyaXR5IC0iCisiV2Vycm9yPWZvcm1hdC1zZWN1cml0eT4gdG8gQjxDRkxBR1M+IGFuZCBCPENYWEZMQUdTPi4gVGhpcyB3aWxsIHdhcm4gYWJvdXQgIgorImltcHJvcGVyIGZvcm1hdCBzdHJpbmcgdXNlcywgYW5kIHdpbGwgZmFpbCB3aGVuIGZvcm1hdCBmdW5jdGlvbnMgYXJlIHVzZWQgaW4gIgorImEgd2F5IHRoYXQgdGhhdCByZXByZXNlbnQgcG9zc2libGUgc2VjdXJpdHkgcHJvYmxlbXMuIEF0IHByZXNlbnQsIHRoaXMgd2FybnMgIgorImFib3V0IGNhbGxzIHRvIEI8cHJpbnRmPiBhbmQgQjxzY2FuZj4gZnVuY3Rpb25zIHdoZXJlIHRoZSBmb3JtYXQgc3RyaW5nIGlzICIKKyJub3QgYSBzdHJpbmcgbGl0ZXJhbCBhbmQgdGhlcmUgYXJlIG5vIGZvcm1hdCBhcmd1bWVudHMsIGFzIGluIEI8cHJpbnRmKGZvbyk7IgorIj4gaW5zdGVhZCBvZiBCPHByaW50ZihcIiVzXCIsIGZvbyk7PiBUaGlzIG1heSBiZSBhIHNlY3VyaXR5IGhvbGUgaWYgdGhlICIKKyJmb3JtYXQgc3RyaW5nIGNhbWUgZnJvbSB1bnRydXN0ZWQgaW5wdXQgYW5kIGNvbnRhaW5zIFwiJW5cIi4iCittc2dzdHIgIiIKKyJJbnN0w6RsbG5pbmdlbiAoYWt0aXZlcmFkIHNvbSBzdGFuZGFyZCkgbMOkZ2dlciB0aWxsIEI8LVdmb3JtYXQgLVdmb3JtYXQtIgorInNlY3VyaXR5IC1XZXJyb3I9Zm9ybWF0LXNlY3VyaXR5PiB0aWxsIEI8Q0ZMQUdTPiBvY2ggQjxDWFhGTEFHUz4uIERldHRhICIKKyJrb21tZXIgYXR0IHZhcm5hIG9tIG9sw6RtcGxpZyBhbnbDpG5kbmluZyBhdiBmb3JtYXRzdHLDpG5nYXIsIG9jaCBhdHQgIgorIm1pc3NseWNrYXMgbsOkciBmb3JtYXRmdW5rdGlvbmVybmEgYW52w6RuZHMgcMOlIGV0dCBzw6R0dCBzb20gcmVwcmVzZW50ZXJhciAiCisibcO2amxpZ2Egc8Oka2VyaGV0c3Byb2JsZW0uIEbDtnIgbsOkcnZhcmFuZGUgdmFybmFyIGRldHRhIG9tIGFucm9wIHRpbGwgIgorImZ1bmt0aW9uZXJuYSBCPHByaW50Zj4gb2NoIEI8c2NhbmY+IGTDpHIgZm9ybWF0c3Ryw6RuZ2VuIGludGUgw6RyIGVuIGZhc3QgIgorInN0csOkbmcgb2NoIG7DpHIgZGV0IGludGUgZmlubnMgbsOlZ3JhIGZvcm1hdGFyZ3VtZW50LCBzb20gaSBCPHByaW50Zihmb28pOz4gIgorImlzdMOkbGxldCBmw7ZyIEI8cHJpbnRmKFwiJXNcIiwgZm9vKTs+IERldHRhIGthbiB2YXJhIGV0dCBzw6RrZXJoZXRzaMOlbCBvbSAiCisiZm9ybWF0c3Ryw6RuZ2VuIGtvbW1lciBmcsOlbiBlbiBvYmV0cm9kZCBrw6RsbGEgb2NoIGlubmVow6VsbGVyIFwiJW5cIi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToxOTkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGZvcnRpZnk+IgorbXNnc3RyICJCPGZvcnRpZnk+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyMTAKK21zZ2lkICIiCisiVGhpcyBzZXR0aW5nIChlbmFibGVkIGJ5IGRlZmF1bHQpIGFkZHMgQjwtRF9GT1JUSUZZX1NPVVJDRT0yPiB0byBCPENGTEFHUz4gIgorImFuZCBCPENYWEZMQUdTPi4gRHVyaW5nIGNvZGUgZ2VuZXJhdGlvbiB0aGUgY29tcGlsZXIga25vd3MgYSBncmVhdCBkZWFsIG9mICIKKyJpbmZvcm1hdGlvbiBhYm91dCBidWZmZXIgc2l6ZXMgKHdoZXJlIHBvc3NpYmxlKSwgYW5kIGF0dGVtcHRzIHRvIHJlcGxhY2UgIgorImluc2VjdXJlIHVubGltaXRlZCBsZW5ndGggYnVmZmVyIGZ1bmN0aW9uIGNhbGxzIHdpdGggbGVuZ3RoLWxpbWl0ZWQgb25lcy4gIgorIlRoaXMgaXMgZXNwZWNpYWxseSB1c2VmdWwgZm9yIG9sZCwgY3J1ZnR5IGNvZGUuICBBZGRpdGlvbmFsbHksIGZvcm1hdCAiCisic3RyaW5ncyBpbiB3cml0YWJsZSBtZW1vcnkgdGhhdCBjb250YWluICclbicgYXJlIGJsb2NrZWQuIElmIGFuIGFwcGxpY2F0aW9uICIKKyJkZXBlbmRzIG9uIHN1Y2ggYSBmb3JtYXQgc3RyaW5nLCBpdCB3aWxsIG5lZWQgdG8gYmUgd29ya2VkIGFyb3VuZC4iCittc2dzdHIgIiIKKyJJbnN0w6RsbG5pbmdlbiAoYWt0aXZlcmFkIHNvbSBzdGFuZGFyZCkgbMOkZ2dlciB0aWxsICBCPC1EX0ZPUlRJRllfU09VUkNFPTI+ICIKKyJ0aWxsIEI8Q0ZMQUdTPi4gS29tcGlsYXRvcm4gaGFyIHVuZGVyIGtvZGdlbmVyZXJpbmdlbiBrw6RubmVkb20gb20gZW4gaGVsIGRlbCAiCisiaW5mb3JtYXRpb24gb20gYnVmZmVydHN0b3JsZWthciAoZMOkciB0aWxsw6RtcGxpZ3QpIG9jaCBmw7Zyc8O2a2VyIGVyc8OkdHRhICIKKyJvc8Oka3JhIGZ1bmt0aW9uc2Fucm9wIG1lZCBvYmVncsOkbnNhZGUgYnVmZmVydGzDpG5nZGVyIG1lZCBsw6RuZ2RiZWdyw6Ruc2FkZSAiCisiZGl0by4gRGV0IGjDpHIgw6RyIHNwZWNpZWxsdCBhbnbDpG5kYmFydCBmw7ZyIGdhbW1hbCwgc2tyw6RwaWcga29kLiBEZXNzdXRvbSAiCisiYmxvY2tlcmFzIGZvcm1hdHN0csOkbmdhciBpIHNrcml2YmFydCBtaW5uZSBzb20gaW5uZWjDpWxsZXIgXCIlblwiLiBPbSBldHQgIgorInByb2dyYW0gw6RyIGJlcm9lbmRlIGF2IGVuIHPDpWRhbiBmb3JtYXRzdHLDpG5nIG3DpXN0ZSBkZXQgZ8OlcyBydW50IGkga29kLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjEzCittc2dpZCAiIgorIk5vdGUgdGhhdCBmb3IgdGhpcyBvcHRpb24gdG8gaGF2ZSBhbnkgZWZmZWN0LCB0aGUgc291cmNlIG11c3QgYWxzbyBiZSAiCisiY29tcGlsZWQgd2l0aCBCPC1PMT4gb3IgaGlnaGVyLiIKK21zZ3N0ciAiIgorIk9ic2VydmVyYSBhdHQsIGbDtnIgYXR0IGRlbiBow6RyIGZsYWdnYW4gc2thbGwgaGEgbsOlZ29uIGVmZmVrdCwgbcOlc3RlICIKKyJrw6RsbGtvZGVuIG9ja3PDpSBrb21waWxlcmFzIG1lZCBCPC1PMT4gZWxsZXIgaMO2Z3JlLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjIxMworIywgbm8td3JhcAorbXNnaWQgIkI8c3RhY2twcm90ZWN0b3I+IgorbXNnc3RyICJCPHN0YWNrcHJvdGVjdG9yPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjIyCittc2dpZCAiIgorIlRoaXMgc2V0dGluZyAoZW5hYmxlZCBieSBkZWZhdWx0KSBhZGRzIEI8LWZzdGFjay1wcm90ZWN0b3IgLS1wYXJhbT1zc3AtIgorImJ1ZmZlci1zaXplPTQ+IHRvIEI8Q0ZMQUdTPiBhbmQgQjxDWFhGTEFHUz4uIFRoaXMgYWRkcyBzYWZldHkgY2hlY2tzIGFnYWluc3QgIgorInN0YWNrIG92ZXJ3cml0ZXMuIFRoaXMgcmVuZGVycyBtYW55IHBvdGVudGlhbCBjb2RlIGluamVjdGlvbiBhdHRhY2tzIGludG8gIgorImFib3J0aW5nIHNpdHVhdGlvbnMuIEluIHRoZSBiZXN0IGNhc2UgdGhpcyB0dXJucyBjb2RlIGluamVjdGlvbiAiCisidnVsbmVyYWJpbGl0aWVzIGludG8gZGVuaWFsIG9mIHNlcnZpY2Ugb3IgaW50byBub24taXNzdWVzIChkZXBlbmRpbmcgb24gdGhlICIKKyJhcHBsaWNhdGlvbikuIgorbXNnc3RyICIiCisiSW5zdMOkbGxuaW5nZW4gKGFrdGl2ZXJhZCBzb20gc3RhbmRhcmQpIGzDpGdnZXIgdGlsbCBCPC1mc3RhY2stcHJvdGVjdG9yIC0tIgorInBhcmFtPXNzcC1idWZmZXItc2l6ZT00PiB0aWxsIEI8Q0ZMQUdTPiBvY2ggQjxDWFhGTEFHUz4uIERldHRhIGzDpGdnZXIgdGlsbCAiCisic8Oka2VyaGV0c2tvbnRyb2xsZXIgbW90IHN0YWNrw7Z2ZXJza3Jpdm5pbmdhciwgdmlsa2V0IGfDtnIgYXR0IG3DpW5nYSBtw7ZqbGlnYSAiCisia29kaW5qaWNlcmluZ3NhbmdyZXBwIGlzdMOkbGxldCBhdmJyeXRlciBwcm9ncmFtbWV0LiBJIGRldCBiw6RzdGEgZmFsbGV0IGfDtnIgIgorImRldCBrb2RpbmppY2VyaW5nc2FuZ3JlcHAgdGlsbCDDtnZlcmJlbGFzdG5pZ25zYW5ncmVwcCBlbGxlciBpY2tlLXByb2JsZW0gIgorIihiZXJvZW5kZSBww6UgcHJvZ3JhbW1ldCkuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyMjYKK21zZ2lkICIiCisiVGhpcyBmZWF0dXJlIHJlcXVpcmVzIGxpbmtpbmcgYWdhaW5zdCBnbGliYyAob3IgYW5vdGhlciBwcm92aWRlciBvZiAiCisiQjxfX3N0YWNrX2Noa19mYWlsPiksIHNvIG5lZWRzIHRvIGJlIGRpc2FibGVkIHdoZW4gYnVpbGRpbmcgd2l0aCBCPC0iCisibm9zdGRsaWI+IG9yIEI8LWZmcmVlc3RhbmRpbmc+IG9yIHNpbWlsYXIuIgorbXNnc3RyICIiCisiRGVuIGjDpHIgZnVua3Rpb25lbiBrcsOkdmVyIGzDpG5rbmluZyBtb3QgZ2xpYmMgKGVsbGVyIGV0dCBhbm5hdCBiaWJsaW90ZWsgc29tICIKKyJ0aWxsaGFuZGFow6VsbGVyIEI8X19zdGFja19jaGtfZmFpbD4pLCBzw6UgZGV0IG3DpXN0ZSBpbmFrdGl2ZXJhcyBuw6RyIGR1IGJ5Z2dlciAiCisibWVkIEI8LW5vc3RkbGliPiBlbGxlciBCPC1mZnJlZXN0YW5kaW5nPiBlbGxlciBsaWtuYW5kZS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyMjcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHJlbHJvPiIKK21zZ3N0ciAiQjxyZWxybz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjIzNQorbXNnaWQgIiIKKyJUaGlzIHNldHRpbmcgKGVuYWJsZWQgYnkgZGVmYXVsdCkgYWRkcyBCPC1XbCwteixyZWxybz4gdG8gQjxMREZMQUdTPi4gICIKKyJEdXJpbmcgcHJvZ3JhbSBsb2FkLCBzZXZlcmFsIEVMRiBtZW1vcnkgc2VjdGlvbnMgbmVlZCB0byBiZSB3cml0dGVuIHRvIGJ5ICIKKyJ0aGUgbGlua2VyLiBUaGlzIGZsYWdzIHRoZSBsb2FkZXIgdG8gdHVybiB0aGVzZSBzZWN0aW9ucyByZWFkLW9ubHkgYmVmb3JlICIKKyJ0dXJuaW5nIG92ZXIgY29udHJvbCB0byB0aGUgcHJvZ3JhbS4gTW9zdCBub3RhYmx5IHRoaXMgcHJldmVudHMgR09UICIKKyJvdmVyd3JpdGUgYXR0YWNrcy4iCittc2dzdHIgIiIKKyJJbnN0w6RsbG5pbmdlbiAoYWt0aXZlcmFkIHNvbSBzdGFuZGFyZCkgbMOkZ2dlciB0aWxsIEI8LVdsLC16LHJlbHJvPiB0aWxsICIKKyJCPExERkxBR1M+LiBWaWQgaW5sw6RzbmluZyBhdiBwcm9ncmFtbWV0IG3DpXN0ZSBsw6Rua2FyZW4gc2tyaXZhIHRpbGwgZmxlcmEgRUxGLSIKKyJtaW5uZXNzZWt0aW9uZXIuIERlbiBow6RyIGluc3TDpGxsbmluZ2VuIGZsYWdnYXIgdGlsbCBpbmzDpHNhcmVuIGF0dCBkZXNzYSAiCisic2VrdGlvbmVyIHNrYWxsIGfDtnJhcyBza3JpdnNreWRkYWRlIGlubmFuIHByb2dyYW1tZXQgZsOlciBrb250cm9sbC4gRGV0dGEgIgorInNreWRkYXIgaHV2dWRzYWtsaW5nZW4gbW90IEdPVC3DtnZlcnNrcml2bmluZ3NhbmdyZXBwLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjIzNgorIywgbm8td3JhcAorbXNnaWQgIkI8YmluZG5vdz4iCittc2dzdHIgIkI8YmluZG5vdz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjI0MworIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiVGhpcyBzZXR0aW5nIChlbmFibGVkIGJ5IGRlZmF1bHQpIGFkZHMgQjwtV2wsLXosYmluZG5vdz4gdG8gQjxMREZMQUdTPi4gIgorI3wgIkR1cmluZyBwcm9ncmFtIGxvYWQsIGFsbCBkeW5hbWljIHN5bWJvbHMgYXJlIHJlc29sdmVkLCBhbGxvd2luZyBmb3IgdGhlICIKKyN8ICJlbnRpcmUgUExUIHRvIGJlIG1hcmtlZCByZWFkLW9ubHkgKGR1ZSB0byBCPHJlbHJvPiBhYm92ZSkuIgorbXNnaWQgIiIKKyJUaGlzIHNldHRpbmcgKGRpc2FibGVkIGJ5IGRlZmF1bHQpIGFkZHMgQjwtV2wsLXosbm93PiB0byBCPExERkxBR1M+LiBEdXJpbmcgIgorInByb2dyYW0gbG9hZCwgYWxsIGR5bmFtaWMgc3ltYm9scyBhcmUgcmVzb2x2ZWQsIGFsbG93aW5nIGZvciB0aGUgZW50aXJlIFBMVCAiCisidG8gYmUgbWFya2VkIHJlYWQtb25seSAoZHVlIHRvIEI8cmVscm8+IGFib3ZlKS4iCittc2dzdHIgIiIKKyJJbnN0w6RsbG5pbmdlbiAoYWt0aXZlcmFkIHNvbSBzdGFuZGFyZCkgbMOkZ2dlciB0aWxsIEI8LVdsLC16LGJpbmRub3c+IHRpbGwgIgorIkI8TERGTEFHUz4uIFZpZCBpbmzDpHNuaW5nIGF2IHByb2dyYW1tZXQgbMO2c2VzIGFsbGEgZHluYW1pc2thIHN5bWJvbGVyLCAiCisidmlsa2V0IGfDtnIgYXR0IGhlbGEgUExUIGthbiBtYXJrZXJhcyBzb20gc2tyaXZza3lkZGFkIChww6UgZ3J1bmQgYXYgQjxyZWxybz4gIgorIm92YW4pLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjI0NAorIywgbm8td3JhcAorbXNnaWQgIkI8cGllPiIKK21zZ3N0ciAiQjxwaWU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkZmxhZ3MuMToyNTYKK21zZ2lkICIiCisiVGhpcyBzZXR0aW5nIChkaXNhYmxlZCBieSBkZWZhdWx0KSBhZGRzIEI8LWZQSUU+IHRvIEI8Q0ZMQUdTPiBhbmQgIgorIkI8Q1hYRkxBR1M+LCBhbmQgQjwtZlBJRSAtcGllPiB0byBCPExERkxBR1M+LiBQb3NpdGlvbiBJbmRlcGVuZGVudCAiCisiRXhlY3V0YWJsZSBhcmUgbmVlZGVkIHRvIHRha2UgYWR2YW50YWdlIG9mIEFkZHJlc3MgU3BhY2UgTGF5b3V0ICIKKyJSYW5kb21pemF0aW9uLCBzdXBwb3J0ZWQgYnkgc29tZSBrZXJuZWwgdmVyc2lvbnMuIFdoaWxlIEFTTFIgY2FuIGFscmVhZHkgYmUgIgorImVuZm9yY2VkIGZvciBkYXRhIGFyZWFzIGluIHRoZSBzdGFjayBhbmQgaGVhcCAoYnJrIGFuZCBtbWFwKSwgdGhlIGNvZGUgYXJlYXMgIgorIm11c3QgYmUgY29tcGlsZWQgYXMgcG9zaXRpb24taW5kZXBlbmRlbnQuIFNoYXJlZCBsaWJyYXJpZXMgYWxyZWFkeSBkbyB0aGlzICgtIgorImZQSUMpLCBzbyB0aGV5IGdhaW4gQVNMUiBhdXRvbWF0aWNhbGx5LCBidXQgYmluYXJ5IC50ZXh0IHJlZ2lvbnMgbmVlZCB0byBiZSAiCisiYnVpbGQgUElFIHRvIGdhaW4gQVNMUi4gV2hlbiB0aGlzIGhhcHBlbnMsIFJPUCAoUmV0dXJuIE9yaWVudGVkIFByb2dyYW1taW5nKSAiCisiYXR0YWNrcyBhcmUgbXVjaCBoYXJkZXIgc2luY2UgdGhlcmUgYXJlIG5vIHN0YXRpYyBsb2NhdGlvbnMgdG8gYm91bmNlIG9mZiBvZiAiCisiZHVyaW5nIGEgbWVtb3J5IGNvcnJ1cHRpb24gYXR0YWNrLiIKK21zZ3N0ciAiIgorIkluc3TDpGxsbmluZ2VuIChpbmFrdGl2ZXJhZCBzb20gc3RhbmRhcmQpIGzDpGdnZXIgdGlsbCBCPC1mUElFPiB0aWxsIEI8Q0ZMQUdTPiAiCisib2NoIEI8Q1hYRkxBR1M+LCBzYW10IEI8LWZQSUUgLXBpZT4gdGlsbCBCPExERkxBR1M+LiBQb3NpdGlvbnNvYmVyb2VuZGUgIgorImV4ZWt2ZXJiYXJhIHByb2dyYW0gKFBJRSkgYmVow7Z2cyBmw7ZyIGF0dCBkcmEgZsO2cmRlbCBhdiBzbHVtcG3DpHNzaWcgIgorImFkcmVzc3J5bWQgKEFTTFIpLCB2aWxrZXQgc3TDtmRzIGF2IHZpc3NhIHZlcnNpb25lciBhdiBrw6RybmFuLiBNZWRhbiBBU0xSICIKKyJyZWRhbiBrYW4gYW52w6RuZGFzIGbDtnIgZGF0YXV0cnltbWVuIGkgc3RhY2tlbiBvY2ggaGVhcDplbiAoYnJrIG9jaCBtbWFwKSwgIgorIm3DpXN0ZSBrb2RvbXLDpWRlbiBmw7Zyc3Qga29tcGlsZXJhcyBzb20gcG9zaXRpb25zb2Jlcm9lbmRlLiBEZWxhZGUgYmlibGlvdGVrICIKKyJnw7ZyIHJlZGFuIGRldHRhICgtZlBJIEMpLCBzw6UgZGUgZHJhciBhdXRvbWF0aXNrdCBmw7ZyZGVsIGF2IEFTTFIgbWVkYW4gIgorImJpbsOkcmEgLnRleHQtcmVnaW9uZXIgbcOlc3RlIGJ5Z2dhcyBtZWQgUElFIGbDtnIgYXR0IHVwcG7DpSBBU0xSLiBOw6RyIGRldHRhICIKKyJza2VyIMOkciBST1AtYW5ncmVwcCAoUmV0dXJuIE9yaWVudGVkIFByb2dyYW1taW5nKSBteWNrZXQgc3bDpXJhcmUgZWZ0ZXJzb20gIgorImRldCBpbnRlIGZpbm5zIG7DpWdyYSBzdGF0aXNrYSBwbGF0c2VyIGF0dCBzdHVkc2EgZnLDpW4gaSBldHQgIgorIm1pbm5lc2bDtnJkw6Rydm5pbmdzYW5ncmVwcC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjI1OQorbXNnaWQgIiIKKyJUaGlzIGlzIG5vdCBjb21wYXRpYmxlIHdpdGggQjwtZlBJQz4gc28gY2FyZSBtdXN0IGJlIHRha2VuIHdoZW4gYnVpbGRpbmcgIgorInNoYXJlZCBvYmplY3RzLiIKK21zZ3N0ciAiIgorIkRldHRhIMOkciBpbnRlIGtvbXBhdGliZWx0IG1lZCBCPC1mUElDPiBzw6UgbWFuIG3DpXN0ZSB2YXJhIGbDtnJzaWt0aWcgbsOkciBtYW4gIgorImJ5Z2dlciBkZWxhZGUgb2JqZWt0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjY1Cittc2dpZCAiIgorIkFkZGl0aW9uYWxseSwgc2luY2UgUElFIGlzIGltcGxlbWVudGVkIHZpYSBhIGdlbmVyYWwgcmVnaXN0ZXIsIHNvbWUgIgorImFyY2hpdGVjdHVyZXMgKG1vc3Qgbm90YWJseSBpMzg2KSBjYW4gc2VlIHBlcmZvcm1hbmNlIGxvc3NlcyBvZiB1cCB0byAxNSUgaW4gIgorInZlcnkgdGV4dC1zZWdtZW50LWhlYXZ5IGFwcGxpY2F0aW9uIHdvcmtsb2FkczsgbW9zdCB3b3JrbG9hZHMgc2VlIGxlc3MgdGhhbiAiCisiMSUuIEFyY2hpdGVjdHVyZXMgd2l0aCBtb3JlIGdlbmVyYWwgcmVnaXN0ZXJzIChlLmcuIGFtZDY0KSAgZG8gbm90IHNlZSBhcyAiCisiaGlnaCBhIHdvcnN0LWNhc2UgcGVuYWx0eS4iCittc2dzdHIgIiIKKyJFZnRlcnNvbSBQSUUgaSB0aWxsw6RnZyBpbXBsZW1lbnRlcmFzIG1lZCBldHQgZ2VuZXJlbGx0IHJlZ2lzdGVyIGthbiB2aXNzYSAiCisiYXJraXRla3R1cmVyIChodXZ1ZHNha2xpZ2VuIGkzODYpIHNlIHByZXN0YW5kYWbDtnJsdXN0ZXIgdXBwIHRpbGwgMTUlIGkgIgorInbDpGxkaWd0IHRleHRzZWdtZW50LXR1bmdhIHByb2dyYW1zIGvDtnJuaW5nOyBkZSBmbGVzdGEga8O2cm5pbmdhciBzZXIgbWluZHJlICIKKyLDpG4gMSUuIEFya2l0ZWt0dXJlciBtZWQgbcOlbmdhIGdlbmVyZWxsYSByZWdpc3RlciAodC5leCBhbWQ2NCkgc2VyIGludGUgZW4gIgorImxpa2Egc3RvciB2w6Ryc3RhIGZhbGxzLWbDtnJsdXN0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZGZsYWdzLjE6MjY4Cittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMTAtMjAxMSBSYXBoYVxcWzplXWwgSGVydHpvZyIKK21zZ3N0ciAiVXBwaG92c3LDpHR0c3NreWRkYXQgwqkgMjAxMC0yMDExIFJhcGhhw6tsIEhlcnR6b2ciCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRmbGFncy4xOjI3MAorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDExIEtlZXMgQ29vayIKK21zZ3N0ciAiVXBwaG92c3LDpHR0c3NreWRkYXQgwqkgMjAxMSBLZWVzIENvb2siCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLWJ1aWxkcGFja2FnZSIKK21zZ3N0ciAiZHBrZy1idWlsZHBhY2thZ2UiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NAorbXNnaWQgImRwa2ctYnVpbGRwYWNrYWdlIC0gYnVpbGQgYmluYXJ5IG9yIHNvdXJjZSBwYWNrYWdlcyBmcm9tIHNvdXJjZXMiCittc2dzdHIgImRwa2ctYnVpbGRwYWNrYWdlIC0gYnlnZyBiaW7DpHItIGVsbGVyIGvDpGxsa29kc3Bha2V0IGZyw6VuIGvDpGxsa29kIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjgKK21zZ2lkICJCPGRwa2ctYnVpbGRwYWNrYWdlPiBbSTxvcHRpb24+Li4uXSIKK21zZ3N0ciAiQjxkcGtnLWJ1aWxkcGFja2FnZT4gW0k8ZmxhZ2dhPi4uLl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTMKK21zZ2lkICIiCisiQjxkcGtnLWJ1aWxkcGFja2FnZT4gaXMgYSBwcm9ncmFtIHRoYXQgYXV0b21hdGVzIHRoZSBwcm9jZXNzIG9mIGJ1aWxkaW5nIGEgIgorIkRlYmlhbiBwYWNrYWdlLiBJdCBjb25zaXN0cyBvZiB0aGUgZm9sbG93aW5nIHN0ZXBzOiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1idWlsZHByb2dyYW0+IMOkciBldHQgcHJvZ3JhbSBzb20gYXV0b21hdGlzZXJhciBwcm9jZXNzZW4gbWVkIGF0dCAiCisiYnlnZ2EgZXR0IERlYmlhbnBha2V0LiBEZXQgYmVzdMOlciBhdiBmw7ZsamFuZGUgc3RlZzoiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEzCisjLCBuby13cmFwCittc2dpZCAiQjwxLj4iCittc2dzdHIgIkI8MS4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE3Cittc2dpZCAiIgorIkl0IHByZXBhcmVzIHRoZSBidWlsZCBlbnZpcm9ubWVudCBieSBzZXR0aW5nIHZhcmlvdXMgZW52aXJvbm1lbnQgdmFyaWFibGVzICIKKyIoc2VlIEI8RU5WSVJPTk1FTlQ+KSBhbmQgY2FsbHMgQjxkcGtnLXNvdXJjZSAtLWJlZm9yZS1idWlsZD4gKHVubGVzcyBCPC1UPiAiCisib3IgQjwtLXRhcmdldD4gaGFzIGJlZW4gdXNlZCkuIgorbXNnc3RyICIiCisiQnlnZ21pbGrDtm4gZsO2cmJlcmVkcyBnZW5vbSBhdHQgZGl2ZXJzZSBtaWxqw7Z2YXJpYWJsZXIgc8OkdHRzIChzZSBCPE1JTErDlj4pICIKKyJvY2ggYW5yb3BhciBCPGRwa2ctc291cmNlIC0tYmVmb3JlLWJ1aWxkPiAoc8OldmlkYSBpbnRlIEI8X1Q+IGVsbGVyIEI8LS0iCisidGFyZ2V0PiBhbnbDpG5kcykuIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxNworIywgbm8td3JhcAorbXNnaWQgIkI8Mi4+IgorbXNnc3RyICJCPDIuPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMAorbXNnaWQgIiIKKyJJdCBjaGVja3MgdGhhdCB0aGUgYnVpbGQtZGVwZW5kZW5jaWVzIGFuZCBidWlsZC1jb25mbGljdHMgYXJlIHNhdGlzZmllZCAiCisiKHVubGVzcyBCPC1kPiBpcyBzcGVjaWZpZWQpLiIKK21zZ3N0ciAiIgorIkJ5Z2diZXJvZW5kZW4gb2NoIC1rb25mbGlrdGVyIGtvbnRyb2xsZXJhcyBhdHQgZGUgdXBwZnlsbHMgKHPDpXZpZGEgaW50ZSBCPC0iCisiZD4gYW5nZXMpLiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPDMuPiIKK21zZ3N0ciAiQjwzLj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjUKK21zZ2lkICIiCisiSWYgYSBzcGVjaWZpYyB0YXJnZXQgaGFzIGJlZW4gc2VsZWN0ZWQgd2l0aCB0aGUgQjwtVD4gb3IgQjwtLXRhcmdldD4gb3B0aW9uLCAiCisiaXQgY2FsbHMgdGhhdCB0YXJnZXQgYW5kIHN0b3BzIGhlcmUuIE90aGVyd2lzZSBpdCBjYWxscyBCPGZha2Vyb290IGRlYmlhbi8iCisicnVsZXMgY2xlYW4+IHRvIGNsZWFuIHRoZSBidWlsZC10cmVlICh1bmxlc3MgQjwtbmM+IGlzIHNwZWNpZmllZCkuIgorbXNnc3RyICIiCisiT20gZXR0IHNwZWNpZmlrdCBtw6VsIGhhciB2YWx0cyBtZWQgZmxhZ2dhbiBCPC1UPiBlbGxlciBCPC0tdGFyZ2V0PiBhbnJvcGFzICIKKyJkZXQgbcOlbGV0LCB2YXJww6UgcHJvZ3JhbW1ldCBhdnNsdXRhcy4gSSBhbm5hdCBmYWxsIGFucm9wYXMgQjxmYWtlcm9vdCBkZWJpYW4vIgorInJ1bGVzIGNsZWFuPiBmw7ZyIGF0dCBzdMOkZGEgYnlnZ3Ryw6RkZXQgKHPDpXZpZGEgaW50ZSBCPC1uYz4gYW5nZXMpLiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPDQuPiIKK21zZ3N0ciAiQjw0Lj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjkKK21zZ2lkICIiCisiSXQgY2FsbHMgQjxkcGtnLXNvdXJjZSAtYj4gdG8gZ2VuZXJhdGUgdGhlIHNvdXJjZSBwYWNrYWdlICh1bmxlc3MgYSBiaW5hcnktIgorIm9ubHkgYnVpbGQgaGFzIGJlZW4gcmVxdWVzdGVkIHdpdGggQjwtYj4sIEI8LUI+IG9yIEI8LUE+KS4iCittc2dzdHIgIiIKKyJCPGRwa2ctc291cmNlIC1iPiBhbnJvcGFzIGbDtnIgYXR0IHNrYXBhIGvDpGxsa29kc3Bha2V0ZXQgKHPDpXZpZGEgaW50ZSBldHQgIgorImJ5Z2dlIGF2IGVuYmFydCBiaW7DpHJlciBoYXIgdmFsdHMgbWVkIEI8LWI+LCBCPC1CPiBlbGxlciBCPC1BPikuIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyOQorIywgbm8td3JhcAorbXNnaWQgIkI8NS4+IgorbXNnc3RyICJCPDUuPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTozNgorbXNnaWQgIiIKKyJJdCBjYWxscyBCPGRlYmlhbi9ydWxlcz4gQjxidWlsZD4gZm9sbG93ZWQgYnkgQjxmYWtlcm9vdCBkZWJpYW4vcnVsZXM+ICIKKyJJPGJpbmFyeS10YXJnZXQ+ICh1bmxlc3MgYSBzb3VyY2Utb25seSBidWlsZCBoYXMgYmVlbiByZXF1ZXN0ZWQgd2l0aCBCPC1TPikuICIKKyJOb3RlIHRoYXQgSTxiaW5hcnktdGFyZ2V0PiBpcyBlaXRoZXIgQjxiaW5hcnk+IChkZWZhdWx0IGNhc2UsIG9yIGlmIEI8LWI+IGlzICIKKyJzcGVjaWZpZWQpICBvciBCPGJpbmFyeS1hcmNoPiAoaWYgQjwtQj4gaXMgc3BlY2lmaWVkKSBvciBCPGJpbmFyeS1pbmRlcD4gKGlmICIKKyJCPC1BPiBpcyBzcGVjaWZpZWQpLiIKK21zZ3N0ciAiIgorIkI8ZGViaWFuL3J1bGVzIGJ1aWxkPiBhbnJvcGFzLCBmw7ZsanQgYXYgQjxmYWtlcm9vdCBkZWJpYW4vcnVsZXM+IEk8Ymluw6RybcOlbD4gIgorIihzw6V2aWRhIGludGUgZXR0IGJ5Z2dlIGF2IGVuYmFydCBrw6RsbGtvZCBoYXIgdmFsdHMgbWVkIEI8LVM+KS4gT2JzZXJ2ZXJhIGF0dCAiCisiSTxiaW7DpHJtw6VsPiDDpHIgZXR0IGF2IEI8YmluYXJ5PiAoc3RhbmRhcmR2YWwsIGVsbGVyIG9tIEI8LWI+IGFuZ2VzKSwgIgorIkI8YmluYXJ5LWFyY2g+IChvbSBCPC1CPiBhbmdlcykgZWxsZXIgQjxiaW5hcnktaW5kZXA+IChvbSBCPC1BPiBhbmdlcykuIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTozNgorIywgbm8td3JhcAorbXNnaWQgIkI8Ni4+IgorbXNnc3RyICJCPDYuPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTozOQorbXNnaWQgIiIKKyJJdCBjYWxscyBCPGdwZz4gdG8gc2lnbiB0aGUgQjwuZHNjPiBmaWxlIChpZiBhbnksIHVubGVzcyBCPC11cz4gaXMgIgorInNwZWNpZmllZCkuIgorbXNnc3RyICIiCisiQjxncGc+IGFucm9wYXMgZsO2ciBhdHQgc2lnbmVyYSBCPC5kc2M+LWZpbGVuIChvbSBzw6VkYW4gZmlubnMsIHPDpXZpZGEgaW50ZSBCPC0iCisidXM+IGFuZ2VzKS4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjM5CisjLCBuby13cmFwCittc2dpZCAiQjw3Lj4iCittc2dzdHIgIkI8Ny4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjQzCittc2dpZCAiIgorIkl0IGNhbGxzIEI8ZHBrZy1nZW5jaGFuZ2VzPiB0byBnZW5lcmF0ZSBhIEI8LmNoYW5nZXM+IGZpbGUuICBNYW55IEI8ZHBrZy0iCisiYnVpbGRwYWNrYWdlPiBvcHRpb25zIGFyZSBmb3J3YXJkZWQgdG8gQjxkcGtnLWdlbmNoYW5nZXM+LiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1nZW5jaGFuZ2VzPiBhbnJvcGFzIGbDtnIgYXR0IHNrYXBhIGVuIEI8LmNoYW5nZXM+LWZpbC4gTcOlbmdhIGF2ICIKKyJmbGFnZ29ybmEgdGlsbCBCPGRwa2ctYnVpbGRwYWNrYWdlPiB2aWRhcmVzw6RuZHMgdGlsbCBCPGRwa2ctZ2VuY2hhbmdlcz4uIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo0MworIywgbm8td3JhcAorbXNnaWQgIkI8OC4+IgorbXNnc3RyICJCPDguPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo0NgorbXNnaWQgIiIKKyJJdCBjYWxscyBCPGdwZz4gdG8gc2lnbiB0aGUgQjwuY2hhbmdlcz4gZmlsZSAodW5sZXNzIEI8LXVjPiBpcyBzcGVjaWZpZWQpLiIKK21zZ3N0ciAiIgorIkI8Z3BnPiBhbnJvcGFzIGbDtnIgYXR0IHNpZ25lcmEgQjwuY2hhbmdlcz4tZmlsZW4gKHPDpXZpZGEgaW50ZSBCPC11Yz4gYW5nZXMpLiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NDYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPDkuPiIKK21zZ3N0ciAiQjw5Lj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NDkKK21zZ2lkICIiCisiSWYgQjwtdGM+IGlzIHNwZWNpZmllZCwgaXQgd2lsbCBjYWxsIEI8ZmFrZXJvb3QgZGViaWFuL3J1bGVzIGNsZWFuPiBhZ2Fpbi4gIgorIkZpbmFsbHkgaXQgY2FsbHMgQjxkcGtnLXNvdXJjZSAtLWFmdGVyLWJ1aWxkPi4iCittc2dzdHIgIiIKKyJPbSBCPC10Yz4gYW5nZXMgYW5yb3BhcyBCPGZha2Vyb290IGRlYmlhbi9ydWxlcyBjbGVhbj4geXR0ZXJsaWdhcmUgZW4gZ8OlbmcuICIKKyJUaWxsIHNsdXQgYW5yb3BhcyBCPGRwa2ctc291cmNlIC0tYWZ0ZXItYnVpbGQ+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NTEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1iPiIKK21zZ3N0ciAiQjwtYj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NTUKK21zZ2lkICIiCisiU3BlY2lmaWVzIGEgYmluYXJ5LW9ubHkgYnVpbGQsIG5vIHNvdXJjZSBmaWxlcyBhcmUgdG8gYmUgYnVpbHQgYW5kL29yICIKKyJkaXN0cmlidXRlZC4gUGFzc2VkIHRvIEI8ZHBrZy1nZW5jaGFuZ2VzPi4iCittc2dzdHIgIiIKKyJBbmdlciBhdHQgZW5iYXJ0IGJpbsOkcmEgcGFrZXQgc2thbGwgYnlnZ2FzLCBpbmdhIGvDpGxsa29kc2ZpbGVyIGJ5Z2dzIG9jaC8iCisiZWxsZXIgZGlzdHJpYnVlcmFzLiBTw6RuZHMgdmlkYXJlIHRpbGwgQjxkcGtnLWdlbmNoYW5nZXM+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NTUgZHBrZy1jaGVja2J1aWxkZGVwcy4xOjIzCisjLCBuby13cmFwCittc2dpZCAiQjwtQj4iCittc2dzdHIgIkI8LUI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjU5Cittc2dpZCAiIgorIlNwZWNpZmllcyBhIGJpbmFyeS1vbmx5IGJ1aWxkLCBsaW1pdGVkIHRvIGFyY2hpdGVjdHVyZSBkZXBlbmRlbnQgcGFja2FnZXMuICAiCisiUGFzc2VkIHRvIEI8ZHBrZy1nZW5jaGFuZ2VzPi4iCittc2dzdHIgIiIKKyJBbmdlciBhdHQgZW5iYXJ0IGJpbsOkcmEgcGFrZXQgc2thbGwgYnlnZ2FzLCBiZWdyw6Ruc2F0IHRpbGwgIgorImFya2l0ZWt0dXJiZXJvZW5kZSBwYWtldC4gU8OkbmRzIHZpZGFyZSB0aWxsIEI8ZHBrZy1nZW5jaGFuZ2VzPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjU5CisjLCBuby13cmFwCittc2dpZCAiQjwtQT4iCittc2dzdHIgIkI8LUE+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjYzCittc2dpZCAiIgorIlNwZWNpZmllcyBhIGJpbmFyeS1vbmx5IGJ1aWxkLCBsaW1pdGVkIHRvIGFyY2hpdGVjdHVyZSBpbmRlcGVuZGVudCBwYWNrYWdlcy4gIgorIlBhc3NlZCB0byBCPGRwa2ctZ2VuY2hhbmdlcz4uIgorbXNnc3RyICIiCisiQW5nZXIgYXR0IGVuYmFydCBiaW7DpHJhIHBha2V0IHNrYWxsIGJ5Z2dhcywgYmVncsOkbnNhdCB0aWxsICIKKyJhcmtpdGVrdHVyb2Jlcm9lbmRlIHBha2V0LiBTw6RuZHMgdmlkYXJlIHRpbGwgQjxkcGtnLWdlbmNoYW5nZXM+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NjMgZHBrZy1nZW5jaGFuZ2VzLjE6MjcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1TPiIKK21zZ3N0ciAiQjwtUz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NjcKK21zZ2lkICIiCisiU3BlY2lmaWVzIGEgc291cmNlLW9ubHkgYnVpbGQsIG5vIGJpbmFyeSBwYWNrYWdlcyBuZWVkIHRvIGJlIG1hZGUuICBQYXNzZWQgIgorInRvIEI8ZHBrZy1nZW5jaGFuZ2VzPi4iCittc2dzdHIgIiIKKyJBbmdlciBhdHQgZW5iYXJ0IGvDpGxsa29kc3Bha2V0IHNrYWxsIGJ5Z2dhcywgaW5nYSBiaW7DpHJwYWtldCBiZWjDtnZlciBieWdnYXMuICIKKyJTw6RuZHMgdmlkYXJlIHRpbGwgQjxkcGtnLWdlbmNoYW5nZXM+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NjcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1GPiIKK21zZ3N0ciAiQjwtRj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6NzEKK21zZ2lkICIiCisiU3BlY2lmaWVzIGEgbm9ybWFsIGZ1bGwgYnVpbGQsIGJpbmFyeSBhbmQgc291cmNlIHBhY2thZ2VzIHdpbGwgYmUgYnVpbHQuICAiCisiVGhpcyBpcyB0aGUgc2FtZSBhcyB0aGUgZGVmYXVsdCBjYXNlIHdoZW4gbm8gYnVpbGQgb3B0aW9uIGlzIHNwZWNpZmllZC4iCittc2dzdHIgIiIKKyJBbmdlciBhdHQgZXR0IG5vcm1hbHQga29tcGxldHQgYnlnZ2UsIGJpbsOkci0gb2NoIGvDpGxsa29kc3Bha2V0LCBza2FsbCAiCisiYnlnZ2FzLiBEZXR0YSDDpHIgZGV0c2FtbWEgc29tIHN0YW5kYXJkbMOkZ2V0IG9tIGluZ2EgYnlnZ2ZsYWdnb3IgYW5nZXMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjczCittc2dpZCAiQjwtLXRhcmdldD0+STx0YXJnZXQ+IgorbXNnc3RyICJCPC0tdGFyZ2V0PT5JPG3DpWw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjc1Cittc2dpZCAiQjwtLXRhcmdldCA+STx0YXJnZXQ+IgorbXNnc3RyICJCPC0tdGFyZ2V0ID5JPG3DpWw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjc3Cittc2dpZCAiQjwtVD5JPHRhcmdldD4iCittc2dzdHIgIkI8LVQ+STxtw6VsPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo4MworbXNnaWQgIiIKKyJDYWxscyBCPGRlYmlhbi9ydWxlcz4gSTx0YXJnZXQ+IGFmdGVyIGhhdmluZyBzZXR1cCB0aGUgYnVpbGQgZW52aXJvbm1lbnQgYW5kICIKKyJzdG9wcyB0aGUgcGFja2FnZSBidWlsZCBwcm9jZXNzIGhlcmUuIElmIEI8LS1hcy1yb290PiBpcyBhbHNvIGdpdmVuLCB0aGVuICIKKyJ0aGUgY29tbWFuZCBpcyBleGVjdXRlZCBhcyByb290IChzZWUgQjwtcj4pLiBOb3RlIHRoYXQgb2ZmaWNpYWwgdGFyZ2V0cyB0aGF0ICIKKyJhcmUgcmVxdWlyZWQgdG8gYmUgcnVuIGFzIHJvb3QgYnkgdGhlIERlYmlhbiBwb2xpY3kgZG8gbm90IG5lZWQgdGhpcyBvcHRpb24uIgorbXNnc3RyICIiCisiQW5yb3BhciBCPGRlYmlhbi9ydWxlcz4gSTxtw6VsPiBlZnRlciBhdHQgaGEga29uZmlndXJlcmF0IGJ5Z2dtaWxqw7ZuLCBvY2ggIgorImF2YnJ5dGVyIGJ5Z2dwcm9jZXNzZW4gZWZ0ZXLDpXQuIE9tIEI8LS1hcy1yb290PiBvY2tzw6UgYW5nZXMga8O2cnMga29tbWFuZG90ICIKKyJzb20gcm9vdCAoc2UgQjwtcj4pLiBPYnNlcnZlcmEgYXR0IG9mZmljaWVsbGEgbcOlbCBzb20gbcOlc3RlIGvDtnJhcyBzb20gcm9vdCAiCisiaW50ZSBiZWjDtnZlciBmbGFnZ2FuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6ODQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tYXMtcm9vdD4iCittc2dzdHIgIkI8LS1hcy1yb290PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo4OAorbXNnaWQgIiIKKyJPbmx5IG1lYW5pbmdmdWwgdG9nZXRoZXIgd2l0aCBCPC0tdGFyZ2V0Pi4gUmVxdWlyZXMgdGhhdCB0aGUgdGFyZ2V0IGJlIHJ1biAiCisid2l0aCByb290IHJpZ2h0cy4iCittc2dzdHIgIiIKKyJFbmRhc3QgbWVuaW5nc2Z1bGwgdGlsbHNhbW1hbnMgbWVkIEI8LS10YXJnZXQ+LiBLcsOkdmVyIGF0dCBtw6VsZXQga8O2cnMgbWVkICIKKyJyb290LWJlaMO2cmlnaGV0LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6OTAgZHBrZy1nZW5jaGFuZ2VzLjE6MzYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1zaT4iCittc2dzdHIgIkI8LXNpPiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6OTIgZHBrZy1nZW5jaGFuZ2VzLjE6NDIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1zYT4iCittc2dzdHIgIkI8LXNhPiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6OTQgZHBrZy1nZW5jaGFuZ2VzLjE6NDUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1zZD4iCittc2dzdHIgIkI8LXNkPiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6OTYgZHBrZy1nZW5jaGFuZ2VzLjE6NDkgZHBrZy1nZW5jb250cm9sLjE6MzgKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM3NworIywgbm8td3JhcAorbXNnaWQgIkI8LXY+STx2ZXJzaW9uPiIKK21zZ3N0ciAiQjwtdj5JPHZlcnNpb24+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMTo5OCBkcGtnLWdlbmNoYW5nZXMuMTo1NAorIywgbm8td3JhcAorbXNnaWQgIkI8LUM+STxjaGFuZ2VzZGVzY3JpcHRpb24+IgorbXNnc3RyICJCPC1DPkk8w6RuZHJpbmdzYmVza3Jpdm5pbmc+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxMDAgZHBrZy1nZW5jaGFuZ2VzLjE6NjAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1tPkk8bWFpbnRhaW5lcmFkZHJlc3M+IgorbXNnc3RyICJCPC1tPkk8cGFrZXRhbnN2YXJpZ2UtYWRyZXNzPiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTAyIGRwa2ctZ2VuY2hhbmdlcy4xOjY2CisjLCBuby13cmFwCittc2dpZCAiQjwtZT5JPG1haW50YWluZXJhZGRyZXNzPiIKK21zZ3N0ciAiQjwtZT5JPHBha2V0YW5zdmFyaWdlLWFkcmVzcz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTA0Cittc2dpZCAiUGFzc2VkIHVuY2hhbmdlZCB0byBCPGRwa2ctZ2VuY2hhbmdlcz4uIFNlZSBpdHMgbWFudWFsIHBhZ2UuIgorbXNnc3RyICIiCisiU8OkbmRzIHZpZGFyZSB1dGFuIMOkbmRyaW5nYXIgdGlsbCBCPGRwa2ctZ2VuY2hhbmdlcz4uIFNlIGRlc3MgbWFudWFsc2lkYS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEwNQorIywgbm8td3JhcAorbXNnaWQgIkI8LWE+STxhcmNoaXRlY3R1cmU+IgorbXNnc3RyICJCPC1hPkk8YXJraXRla3R1cj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTEwCittc2dpZCAiIgorIlNwZWNpZnkgdGhlIERlYmlhbiBhcmNoaXRlY3R1cmUgd2UgYnVpbGQgZm9yLiBUaGUgYXJjaGl0ZWN0dXJlIG9mIHRoZSAiCisibWFjaGluZSB3ZSBidWlsZCBvbiBpcyBkZXRlcm1pbmVkIGF1dG9tYXRpY2FsbHksIGFuZCBpcyBhbHNvIHRoZSBkZWZhdWx0IGZvciAiCisidGhlIGhvc3QgbWFjaGluZS4iCittc2dzdHIgIiIKKyJBbmdlIERlYmlhbmFya2l0ZWt0dXJlbiB2aSBieWdnZXIgZsO2ci4gQXJraXRla3R1cmVuIGbDtnIgbWFza2luZW4gdmkgYnlnZ2VyICIKKyJww6UgYmVzdMOkbXMgYXV0b21hdGlza3QsIG9jaCDDpHIgw6R2ZW4gc3RhbmRhcmQgZsO2ciB2w6RyZG1hc2tpbmVuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxMTUKK21zZ2lkICIiCisiU3BlY2lmeSB0aGUgR05VIHN5c3RlbSB0eXBlIHdlIGJ1aWxkIGZvci4gSXQgY2FuIGJlIHVzZWQgaW4gcGxhY2Ugb2YgLWEgb3IgIgorImFzIGEgY29tcGxlbWVudCB0byBvdmVycmlkZSB0aGUgZGVmYXVsdCBHTlUgc3lzdGVtIHR5cGUgb2YgdGhlIHRhcmdldCBEZWJpYW4gIgorImFyY2hpdGVjdHVyZS4iCittc2dzdHIgIiIKKyJBbmdlIEdOVS1zeXN0ZW10eXAgdmkgYnlnZ2VyIGbDtnIuIERlbiBrYW4gYW52w6RuZGFzIGkgc3TDpGxsZXQgZsO2ciAtYSBlbGxlciAiCisic29tIGV0dCBrb21wbGVtZW50IGbDtnIgYXR0IMO2dmVyc3R5cmEgc3RhbmRhcmQtR05VLXN5c3RlbXR5cGVuIGbDtnIgRGViaWFuLSIKKyJtw6VsYXJraXRla3R1cmVuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTE1CisjLCBuby13cmFwCittc2dpZCAiQjwtaj5JPGpvYnM+IgorbXNnc3RyICJCPC1qPkk8am9iYj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTI2Cittc2dpZCAiIgorIk51bWJlciBvZiBqb2JzIGFsbG93ZWQgdG8gYmUgcnVuIHNpbXVsdGFuZW91c2x5LCBlcXVpdmFsZW50IHRvIHRoZSBCPG1ha2U+IgorIigxKSAgb3B0aW9uIG9mIHRoZSBzYW1lIG5hbWUuIFdpbGwgYWRkIGl0c2VsZiB0byB0aGUgTUFLRUZMQUdTIGVudmlyb25tZW50ICIKKyJ2YXJpYWJsZSwgd2hpY2ggc2hvdWxkIGNhdXNlIGFsbCBzdWJzZXF1ZW50IG1ha2UgaW52b2NhdGlvbnMgdG8gaW5oZXJpdCB0aGUgIgorIm9wdGlvbi4gQWxzbyBhZGRzIEI8cGFyYWxsZWw9Pkk8am9icz4gdG8gdGhlIERFQl9CVUlMRF9PUFRJT05TIGVudmlyb25tZW50ICIKKyJ2YXJpYWJsZSB3aGljaCBhbGxvd3MgZGViaWFuL3J1bGVzIGZpbGVzIHRvIHVzZSB0aGlzIGluZm9ybWF0aW9uIGZvciB0aGVpciAiCisib3duIHB1cnBvc2VzLiAgVGhlIEI8cGFyYWxsZWw9Pkk8am9icz4gaW4gREVCX0JVSUxEX09QVElPTlMgZW52aXJvbm1lbnQgIgorInZhcmlhYmxlIHdpbGwgb3ZlcnJpZGUgdGhlIEI8LWo+IHZhbHVlIGlmIHRoaXMgb3B0aW9uIGlzIGdpdmVuLiIKK21zZ3N0ciAiIgorIkFudGFsZXQgam9iYiBzb20gdGlsbMOldHMgYXR0IGvDtnJhcyBzYW10aWRpZ3QsIG1vdHN2YXJhciBCPG1ha2U+KDEpLWZsYWdnYW4gIgorIm1lZCBzYW1tYSBuYW1uLiBMw6RnZ2VyIHRpbGwgc2lnIHNqw6RsdiBpIG1pbGrDtnZhcmlhYmVsbiBNQUtFRkxBR1MsIHZpbGtldCBmw6VyICIKKyJhbGxhIHDDpWbDtmxqYW5kZSBtYWtlLWFucm9wIGF0dCDDpHJ2YSBmbGFnZ2FuLiBMw6RnZ2VyIMOkdmVuIHRpbGwgZmxhZ2dhbiAiCisiQjxwYXJhbGxlbD0+STxqb2JiPiB0aWxsIG1pbGrDtnZhcmlhYmVsbiBERUJfQlVJTERfT1BUSU9OUywgdmlsa2V0IGfDtnIgZGV0ICIKKyJtw7ZqbGlndCBmw7ZyIGRlYmlhbi9ydWxlcy1maWxlciBhdHQgYW52w6RuZGEgaW5mb3JtYXRpb25lbiBmw7ZyIGVnbmEgw6RuZGFtw6VsLiAiCisiVsOkcmRldCBCPHBhcmFsbGVsPT5JPGpvYmI+IGkgbWlsasO2dmFyaWFiZWxuIERFQl9CVUlMRF9PUFRJT05TIGtvbW1lciBhdHQgIgorIsO2dmVyc3R5cmEgdsOkcmRldCBmw7ZyIEI8LWo+IG9tIGRlbiBmbGFnZ2FuIGdlcy4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEyNgorIywgbm8td3JhcAorbXNnaWQgIkI8LUQ+IgorbXNnc3RyICJCPC1EPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxMzAKK21zZ2lkICIiCisiQ2hlY2sgYnVpbGQgZGVwZW5kZW5jaWVzIGFuZCBjb25mbGljdHM7IGFib3J0IGlmIHVuc2F0aXNmaWVkLiBUaGlzIGlzIHRoZSAiCisiZGVmYXVsdCBiZWhhdmlvci4iCittc2dzdHIgIiIKKyJLb250cm9sbGVyYSAgYnlnZ2Jlcm9lbmRlbiBvY2ggLWtvbmZsaWt0ZXI7IGF2YnJ5dCBvbSBkZSBpbnRlIHVwcGZ5bGxzLiAiCisiRGV0dGEgw6RyIHN0YW5kYXJkYmV0ZWVuZGV0LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTMwIGRwa2ctZ2Vuc3ltYm9scy4xOjQzMgorIywgbm8td3JhcAorbXNnaWQgIkI8LWQ+IgorbXNnc3RyICJCPC1kPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxMzMKK21zZ2lkICJEbyBub3QgY2hlY2sgYnVpbGQgZGVwZW5kZW5jaWVzIGFuZCBjb25mbGljdHMuIgorbXNnc3RyICJLb250cm9sbGVyYSBpbnRlIGJ5Z2diZXJvZW5kZW4gZWxsZXIgLWtvbmZsaWt0ZXIuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxMzMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1uYz4iCittc2dzdHIgIkI8LW5jPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxMzcKK21zZ2lkICIiCisiRG8gbm90IGNsZWFuIHRoZSBzb3VyY2UgdHJlZSAoaW1wbGllcyBCPC1iPiBpZiBub3RoaW5nIGVsc2UgaGFzIGJlZW4gIgorInNlbGVjdGVkIGFtb25nIEI8LUI+LCBCPC1BPiBvciBCPC1TPikuIgorbXNnc3RyICIiCisiU3TDpGRhIGludGUgdXBwIGJ5Z2d0csOkZGV0IChpbXBsaWNlcmFyIEI8LWI+IG9tIGluZ2V0IGFubmF0IGhhciB2YWx0cyBibGFuZCAiCisiQjwtQj4sIEI8LUE+IGVsbGVyIEI8LVM+KS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjEzNworIywgbm8td3JhcAorbXNnaWQgIkI8LXRjPiIKK21zZ3N0ciAiQjwtdGM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE0MworbXNnaWQgIiIKKyJDbGVhbiB0aGUgc291cmNlIHRyZWUgKHVzaW5nIEk8Z2Fpbi1yb290LWNvbW1hbmQ+IEI8ZGViaWFuL3J1bGVzIGNsZWFuPikgICIKKyJhZnRlciB0aGUgcGFja2FnZSBoYXMgYmVlbiBidWlsdC4iCittc2dzdHIgIiIKKyJTdMOkZGEga8OkbGxrb2RzdHLDpGRldCAoYW52w6RuZGVyIEk8ZsOlLXJvb3Qta29tbWFuZG8+IEI8ZGViaWFuL3J1bGVzIGNsZWFuPikgIgorImVmdGVyIGF0dCBwYWtldGV0IGhhciBieWdndHMuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxNDMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1yPkk8Z2Fpbi1yb290LWNvbW1hbmQ+IgorbXNnc3RyICJCPC1yPkk8ZsOlLXJvb3Qta29tbWFuZG8+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE2NworbXNnaWQgIiIKKyJXaGVuIEI8ZHBrZy1idWlsZHBhY2thZ2U+IG5lZWRzIHRvIGV4ZWN1dGUgcGFydCBvZiB0aGUgYnVpbGQgcHJvY2VzcyBhcyAiCisicm9vdCwgaXQgcHJlZml4ZXMgdGhlIGNvbW1hbmQgaXQgZXhlY3V0ZXMgd2l0aCBJPGdhaW4tcm9vdC1jb21tYW5kPiBpZiBvbmUgIgorImhhcyBiZWVuIHNwZWNpZmllZC4gT3RoZXJ3aXNlLCBpZiBub25lIGhhcyBiZWVuIHNwZWNpZmllZCwgQjxmYWtlcm9vdD4gd2lsbCAiCisiYmUgdXNlZCBieSBkZWZhdWx0LCBpZiB0aGUgY29tbWFuZCBpcyBwcmVzZW50LiAgSTxnYWluLXJvb3QtY29tbWFuZD4gc2hvdWxkICIKKyJzdGFydCB3aXRoIHRoZSBuYW1lIG9mIGEgcHJvZ3JhbSBvbiB0aGUgQjxQQVRIPiBhbmQgd2lsbCBnZXQgYXMgYXJndW1lbnRzICIKKyJ0aGUgbmFtZSBvZiB0aGUgcmVhbCBjb21tYW5kIHRvIHJ1biBhbmQgdGhlIGFyZ3VtZW50cyBpdCBzaG91bGQgdGFrZS4gICIKKyJJPGdhaW4tcm9vdC1jb21tYW5kPiBjYW4gaW5jbHVkZSBwYXJhbWV0ZXJzICh0aGV5IG11c3QgYmUgc3BhY2Utc2VwYXJhdGVkKSAiCisiYnV0IG5vIHNoZWxsIG1ldGFjaGFyYWN0ZXJzLiAgSTxnYWluLXJvb3QtY29tbWFuZD4gbWlnaHQgdHlwaWNhbGx5IGJlICIKKyJCPGZha2Vyb290PiwgQjxzdWRvPiwgQjxzdXBlcj4gb3IgQjxyZWFsbHk+LiAgQjxzdT4gaXMgbm90IHN1aXRhYmxlLCBzaW5jZSAiCisiaXQgY2FuIG9ubHkgaW52b2tlIHRoZSB1c2VyJ3Mgc2hlbGwgd2l0aCBCPC1jPiBpbnN0ZWFkIG9mIHBhc3NpbmcgYXJndW1lbnRzICIKKyJpbmRpdmlkdWFsbHkgdG8gdGhlIGNvbW1hbmQgdG8gYmUgcnVuLiIKK21zZ3N0ciAiIgorIk7DpHIgQjxkcGtnLWJ1aWxkcGFja2FnZXM+IGJlaMO2dmVyIGV4ZWt2ZXJhIGRlbGFyIGF2IGJ5Z2dwcm9jZXNzZW4gc29tIHJvb3QgIgorInPDpHR0ZXIgZGVuIGtvbW1hbmRvdCBzb20gc2thbGwgZXhla3ZlcmFzIGVmdGVyIEk8ZsOlLXJvb3Qta29tbWFuZG8+IG9tIGV0dCAiCisic8OlZGFudCBoYXIgYW5naXZpdHMuIE9tIGludGUga29tbWVyIEI8ZmFrZXJvb3Q+IGF0dCBhbnbDpG5kYXMgc29tIHN0YW5kYXJkLCAiCisib20ga29tbWFuZG90IGV4aXN0ZXJhci4gSTxmw6Utcm9vdC1rb21tYW5kbz4gbcOlc3RlIGLDtnJqYSBtZWQgbmFtbmV0IHDDpSBkZXQgIgorImZha3Rpc2thIGtvbW1hbmRvdCBzb20gc2thbGwgYW5yb3BhcyBzYW10IGRlIHBhcmFtZXRyYXIgZGV0IHNrYWxsIGFucm9wYXMgIgorIm1lZC4gSTxmw6Utcm9vdC1rb21tYW5kbz4ga2FuIGlubmVow6VsbGEgcGFyYW1ldHJhciAoZGUgbcOlc3RlIHZhcmEgYXZkZWxhZGUgIgorIm1lZCBibGFua3N0ZWcpIG1lbiBpbmdhIHNrYWxtZXRhdGVja2VuLiBJPGbDpS1yb290LWtvbW1hbmRvPiBrYW4gdHlwaXNrdCB2YXJhICIKKyJCPGZha2Vyb290PiwgQjxzdWRvPiwgQjxzdXBlcj4gZWxsZXIgQjxyZWFsbHk+LiBCPHN1PiDDpHIgaW50ZSBsw6RtcGxpZ3QgIgorImVmdGVyc29tIGRldCBrcsOkdmVyIGZsYWdnYW4gQjwtYz4gZsO2ciBhdHQga8O2cmEgZXR0IGtvbW1hbmRvIG9jaCDDpHZlbiBkw6Uga2FuICIKKyJkZXQgYmFyYSBzdGFydGEgYW52w6RuZGFyZW5zIHNrYWwgbWVkIEI8LWM+IGlzdMOkbGxldCBmw7ZyIGF0dCBzw6RuZGEgZmxhZ2dvciAiCisiaW5kaXZpZHVlbGx0IHRpbGwga29tbWFuZG90IHNvbSBza2FsbCBzdGFydGFzLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTY3CisjLCBuby13cmFwCittc2dpZCAiQjwtUj5JPHJ1bGVzLWZpbGU+IgorbXNnc3RyICJCPC1SPkk8cmVnZWxmaWw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE3OAorbXNnaWQgIiIKKyJCdWlsZGluZyBhIERlYmlhbiBwYWNrYWdlIHVzdWFsbHkgaW52b2x2ZXMgaW52b2tpbmcgQjxkZWJpYW4vcnVsZXM+IGFzIGEgIgorImNvbW1hbmQgd2l0aCBzZXZlcmFsIHN0YW5kYXJkIHBhcmFtZXRlcnMuIFdpdGggdGhpcyBvcHRpb24gaXQncyBwb3NzaWJsZSB0byAiCisidXNlIGFub3RoZXIgcHJvZ3JhbSBpbnZvY2F0aW9uIHRvIGJ1aWxkIHRoZSBwYWNrYWdlIChpdCBjYW4gaW5jbHVkZSBzcGFjZSAiCisic2VwYXJhdGVkIHBhcmFtZXRlcnMpLiAgQWx0ZXJuYXRpdmVseSBpdCBjYW4gYmUgdXNlZCB0byBleGVjdXRlIHRoZSBzdGFuZGFyZCAiCisicnVsZXMgZmlsZSB3aXRoIGFub3RoZXIgbWFrZSBwcm9ncmFtIChmb3IgZXhhbXBsZSBieSB1c2luZyBCPC91c3IvbG9jYWwvYmluLyIKKyJtYWtlIC1mIGRlYmlhbi9ydWxlcz4gYXMgSTxydWxlcy1maWxlPikuIgorbXNnc3RyICIiCisiRsO2ciBhdHQgYnlnZ2EgZXR0IERlYmlhbnBha2V0IGvDtnJzIG5vcm1hbHQga29tbWFuZG90IEI8ZGViaWFuL3J1bGVzPiBtZWQgIgorImZsZXJhIG9saWthIHN0YW5kYXJkcGFyYW1ldHJhci4gRGVuIGjDpHIgZmxhZ2dhbiBnw7ZyIGRldCBtw7ZqbGlndCBhdHQgYW52w6RuZGEgIgorImV0dCBhbm5hdCBwcm9ncmFtYW5yb3AgZsO2ciBhdHQgYnlnZ2EgcGFrZXRldCAoZGV0IGthbiBpbm5laMOlbGxhICIKKyJibGFua3N0ZWdzYXZkZWxhZGUgcGFyYW1ldHJhcikuIERlbiBrYW4gw6R2ZW4gYW52w6RuZGFzIGbDtnIgYXR0IGV4ZWt2ZXJhICIKKyJzdGFuZGFyZHJlZ2VsZmlsZW4gbWVkIGV0dCBhbm5hdCBtYWtlLXByb2dyYW0gKHRpbGwgZXhlbXBlbCBnZW5vbSBhdHQgIgorImFudsOkbmRhIEI8L3Vzci9sb2NhbC9iaW4vbWFrZSAtZiBkZWJpYW4vcnVsZXM+IHNvbSBJPHJlZ2VsZmlsPikuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxNzgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1wPkk8c2lnbi1jb21tYW5kPiIKK21zZ3N0ciAiQjwtcD5JPHNpZ25lcmluZ3Nrb21tYW5kbz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTg4Cittc2dpZCAiIgorIldoZW4gQjxkcGtnLWJ1aWxkcGFja2FnZT4gbmVlZHMgdG8gZXhlY3V0ZSBHUEcgb3IgUEdQIHRvIHNpZ24gYSBzb3VyY2UgIgorImNvbnRyb2wgKEI8LmRzYz4pIGZpbGUgb3IgYSBCPC5jaGFuZ2VzPiBmaWxlIGl0IHdpbGwgcnVuIEk8c2lnbi1jb21tYW5kPiAiCisiKHNlYXJjaGluZyB0aGUgQjxQQVRIPiBpZiBuZWNlc3NhcnkpIGluc3RlYWQgb2YgQjxncGc+LiBJPHNpZ24tY29tbWFuZD4gd2lsbCAiCisiZ2V0IGFsbCB0aGUgYXJndW1lbnRzIHRoYXQgQjxwZ3A+IHdvdWxkIGhhdmUgZ290dGVuLiBJZiBJPHNpZ24tY29tbWFuZD4gIgorInRha2VzIGl0cyBhcmd1bWVudHMgaW4gR1BHIHJhdGhlciB0aGFuIFBHUCBzdHlsZSwgeW91IHNob3VsZCBnaXZlIHRoZSBCPC0iCisic2dwZz4gb3B0aW9uLiBJPHNpZ24tY29tbWFuZD4gc2hvdWxkIG5vdCBjb250YWluIHNwYWNlcyBvciBhbnkgb3RoZXIgc2hlbGwgIgorIm1ldGFjaGFyYWN0ZXJzLiIKK21zZ3N0ciAiIgorIk7DpHIgQjxkcGtnLWJ1aWxkcGFja2FnZT4gbcOlc3RlIGV4ZWt2ZXJhIEdQRyBlbGxlciBQR1AgZsO2ciBhdHQgc2lnbmVyYSBldHQgIgorImvDpGxsa29kc3N0eXJmaWwgKEI8LmRzYz4pIGVsbGVyIGVuIEI8LmNoYW5nZXM+LWZpbCBrw7ZyIGRldCAiCisiSTxzaWduZXJpbmdza29tbWFuZG8+IChkZXQgbGV0YXIgaSBCPFBBVEg+IG9tIHPDpSBiZWjDtnZzKSBpc3TDpGxsZXQgZsO2ciAiCisiQjxncGc+LiBJPHNpZ25lcmluZ3Nrb21tYW5kbz4gZsOlciBkZSBhcmd1bWVudCBCPGdwZz4gc2t1bGxlIGhhIGbDpXR0LiBPbSAiCisiSTxzaWduZXJpbmdza29tbWFuZG8+IHRhciBrb21tYW5kb24gZW5saWd0IEdQRy0gaXN0w6RsbGV0IGbDtnIgUEdQLXN0aWwgbcOlc3RlICIKKyJkdSBnZSBmbGFnZ2FuIEI8LXNncGc+LiBJPHNpZ25lcmluZ3Nrb21tYW5kbz4gZsOlciBpbnRlIGlubmVow6VsbGEgYmxhbmtzdGVnICIKKyJlbGxlciBhbmRyYSBza2FsbWV0YXRlY2tlbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE4OAorIywgbm8td3JhcAorbXNnaWQgIkI8LWs+STxrZXktaWQ+IgorbXNnc3RyICJCPC1rPkk8bnlja2VsLWlkPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToxOTEKK21zZ2lkICJTcGVjaWZ5IGEga2V5LUlEIHRvIHVzZSB3aGVuIHNpZ25pbmcgcGFja2FnZXMuIgorbXNnc3RyICJBbmdlIG55Y2tlbC1pZCBhdHQgYW52w6RuZGEgdmlkIHNpZ25lcmluZyBhdiBwYWtldC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE5MQorIywgbm8td3JhcAorbXNnaWQgIkI8LXVzPiIKK21zZ3N0ciAiQjwtdXM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE5NAorbXNnaWQgIkRvIG5vdCBzaWduIHRoZSBzb3VyY2UgcGFja2FnZS4iCittc2dzdHIgIlNpZ25lcmEgaW50ZSBrw6RsbGtvZHNwYWtldGV0LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTk0CisjLCBuby13cmFwCittc2dpZCAiQjwtdWM+IgorbXNnc3RyICJCPC11Yz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MTk3Cittc2dpZCAiRG8gbm90IHNpZ24gdGhlIEI8LmNoYW5nZXM+IGZpbGUuIgorbXNnc3RyICJTaWduZXJhIGludGUgQjwuY2hhbmdlcz4tZmlsZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjE5OQorbXNnaWQgIkI8LWk+W0k8cmVnZXhwPl0iCittc2dzdHIgIkI8LWk+W0k8cmVndWxqw6RydC11dHRyeWNrPl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjAxCittc2dpZCAiQjwtST5JPFtwYXR0ZXJuXT4iCittc2dzdHIgIkI8LUk+STxbbcO2bnN0ZXJdPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMDMKK21zZ2lkICJCPC1zPltCPG5zQWt1cktVUj5dIgorbXNnc3RyICJCPC1zPltCPG5zQWt1cktVUj5dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIwNQorbXNnaWQgIkI8LXo+LCBCPC1aPiIKK21zZ3N0ciAiQjwtej4sIEI8LVo+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIwOAorbXNnaWQgIlBhc3NlZCB1bmNoYW5nZWQgdG8gQjxkcGtnLXNvdXJjZT4uIFNlZSBpdHMgbWFudWFsIHBhZ2UuIgorbXNnc3RyICJTw6RuZHMgdmlkYXJlIHV0YW4gw6RuZHJpbmdhciB0aWxsIEI8ZHBrZy1zb3VyY2U+LiBTZSBkZXNzIG1hbnVhbHNpZGEuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMDkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tc291cmNlLW9wdGlvbj0+STxvcHQ+IgorbXNnc3RyICJCPC0tc291cmNlLW9wdGlvbj0+STx2YWw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIxMgorbXNnaWQgIlBhc3Mgb3B0aW9uIEk8b3B0PiB0byBCPGRwa2ctc291cmNlPi4iCittc2dzdHIgIlPDpG5kIGZsYWdnYW4gSTx2YWw+IHRpbGwgQjxkcGtnLXNvdXJjZT4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMTIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tY2hhbmdlcy1vcHRpb249Pkk8b3B0PiIKK21zZ3N0ciAiQjwtLWNoYW5nZXMtb3B0aW9uPT5JPHZhbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjE1Cittc2dpZCAiUGFzcyBvcHRpb24gSTxvcHQ+IHRvIEI8ZHBrZy1nZW5jaGFuZ2VzPi4iCittc2dzdHIgIlPDpG5kZXIgZmxhZ2dhbiBJPHZhbD4gdGlsbCBCPGRwa2ctZ2VuY2hhbmdlcz4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIxOQorbXNnaWQgIkI8LS1hZG1pbmRpciA+STxkaXI+IgorbXNnc3RyICJCPC0tYWRtaW5kaXI+IEk8a2F0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyMjIgZHBrZy1jaGVja2J1aWxkZGVwcy4xOjIzIGRwa2ctcXVlcnkuMToxMjIKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjE1IGRwa2ctdHJpZ2dlci4xOjQzCittc2dpZCAiIgorIkNoYW5nZSB0aGUgbG9jYXRpb24gb2YgdGhlIEI8ZHBrZz4gZGF0YWJhc2UuIFRoZSBkZWZhdWx0IGxvY2F0aW9uIGlzIEk8L3Zhci8iCisibGliL2Rwa2c+LiIKK21zZ3N0ciAiw4RuZHJhIHBsYXRzZW4gZsO2ciBCPGRwa2c+LWRhdGFiYXNlbi4gRsO2cnZhbCDDpHIgSTwvdmFyL2xpYi9kcGtnPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIyMyBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6MzMgZHBrZy1kaXN0YWRkZmlsZS4xOjMyCisjOiBkcGtnLWRlYi4xOjE3MiBkcGtnLWdlbmNoYW5nZXMuMToxMzEgZHBrZy1nZW5jb250cm9sLjE6MTIxCisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0NDMgZHBrZy1uYW1lLjE6NTggZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjMzCisjOiBkcGtnLXF1ZXJ5LjE6MTEwIGRwa2ctc2NhbnBhY2thZ2VzLjE6OTYgZHBrZy1zaGxpYmRlcHMuMToyMTUKKyM6IGRwa2ctc291cmNlLjE6OTYgZHBrZy1zcGxpdC4xOjEyNiBkcGtnLXRyaWdnZXIuMTozMQorIywgbm8td3JhcAorbXNnaWQgIkI8LWg+LCBCPC0taGVscD4iCittc2dzdHIgIkI8LWg+LCBCPC0taGVscD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjM0Cittc2dpZCAiIgorIkV2ZW4gaWYgQjxkcGtnLWJ1aWxkcGFja2FnZT4gZXhwb3J0cyBzb21lIHZhcmlhYmxlcywgQjxkZWJpYW4vcnVsZXM+IHNob3VsZCAiCisibm90IHJlbHkgb24gdGhlaXIgcHJlc2VuY2UgYW5kIHNob3VsZCBpbnN0ZWFkIHVzZSB0aGUgcmVzcGVjdGl2ZSBpbnRlcmZhY2UgIgorInRvIHJldHJpZXZlIHRoZSBuZWVkZWQgdmFsdWVzLiIKK21zZ3N0ciAiIgorIsOEdmVuIG9tIEI8ZHBrZy1idWlsZHBhY2thZ2U+IGV4cG9ydGVyYXIgbsOlZ3JhIHZhcmlhYmxlciBiw7ZyIGludGUgQjxkZWJpYW4vIgorInJ1bGVzPiB2YXJhIGJlcm9lbmRlIGF2IGRlcmFzIG7DpHJ2YXJvIG9jaCBiw7ZyIGlzdMOkbGxldCBhbnbDpG5kYSByZXNwZWt0aXZlICIKKyJncsOkbnNzbml0dCBmw7ZyIGF0dCBow6RtdGEgZGUgdsOkcmRlbiBzb20gYmVow7Z2cy4iCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIzNAorIywgbm8td3JhcAorbXNnaWQgIlZhcmlhYmxlcyBzZXQgYnkgZHBrZy1hcmNoaXRlY3R1cmUiCittc2dzdHIgIlZhcmlhYmxlciBzb20gc8OkdHRzIGF2IGRwa2ctYXJjaGl0ZWN0dXJlIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIzOAorbXNnaWQgIiIKKyJCPGRwa2ctYXJjaGl0ZWN0dXJlPiBpcyBjYWxsZWQgd2l0aCB0aGUgQjwtYT4gYW5kIEI8LXQ+IHBhcmFtZXRlcnMgIgorImZvcndhcmRlZC4gQW55IHZhcmlhYmxlIHRoYXQgaXMgb3V0cHV0IGJ5IGl0cyBCPC1zPiBvcHRpb24gaXMgaW50ZWdyYXRlZCBpbiAiCisidGhlIGJ1aWxkIGVudmlyb25tZW50LiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1hcmNoaXRlY3R1cmU+IGFucm9wYXMgbWVkIGZsYWdnb3JuYSBCPC1hPiBvY2ggQjwtdD4gdmlkYXJlc8OkbmRhLiAiCisiVmFyaWFibGVyIHNvbSBza3JpdnMgdXQgdmlhIGRlc3MgQjwtcz4tZmxhZ2dhIGludGVncmVyYXMgaSBieWdnbWlsasO2bi4iCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjIzOAorIywgbm8td3JhcAorbXNnaWQgIkNvbXBpbGVyIGZsYWdzIGFyZSBubyBsb25nZXIgZXhwb3J0ZWQiCittc2dzdHIgIktvbXBpbGVyaW5nc2ZsYWdnb3IgZXhwb3J0ZXJhcyBpbnRlIGzDpG5ncmUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWJ1aWxkcGFja2FnZS4xOjI0MworbXNnaWQgIiIKKyJCZXR3ZWVuIHZlcnNpb25zIDEuMTQuMTcgYW5kIDEuMTYuMSwgQjxkcGtnLWJ1aWxkcGFja2FnZT4gZXhwb3J0ZWQgY29tcGlsZXIgIgorImZsYWdzIChCPENGTEFHUz4sIEI8Q1hYRkxBR1M+LCBCPEZGTEFHUz4sIEI8Q1BQRkxBR1M+IGFuZCBCPExERkxBR1M+KSB3aXRoICIKKyJ2YWx1ZXMgYXMgcmV0dXJuZWQgYnkgQjxkcGtnLWJ1aWxkZmxhZ3M+LiBUaGlzIGlzIG5vIGxvbmdlciB0aGUgY2FzZS4iCittc2dzdHIgIiIKKyJNZWxsYW4gdmVyc2lvbiAxLjE0LjE3IG9jaCAxLjE2LjEgZXhwb3J0ZXJhZGUgQjxkcGtnLWJ1aWxkcGFja2FnZT4gIgorImtvbXBpbGF0b3JmbGFnZ29yIChCPENGTEFHUz4sIEI8Q1hYRkxBR1M+LCBCPENQUEZMQUdTPiBvY2ggQjxMREZMQUdTPikgbWVkICIKKyJ2w6RyZGVuIGVubGlndCBCPGRwa2ctYnVpbGRmbGFncz4uIERldHRhIGfDpGxsZXIgaW50ZSBsw6RuZ3JlLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyNDgKK21zZ2lkICIiCisiSXQgc2hvdWxkIGJlIHBvc3NpYmxlIHRvIHNwZWNpZnkgc3BhY2VzIGFuZCBzaGVsbCBtZXRhY2hhcmFjdGVycyBpbiBhbmQgIgorImluaXRpYWwgYXJndW1lbnRzIGZvciBJPGdhaW4tcm9vdC1jb21tYW5kPiBhbmQgSTxzaWduLWNvbW1hbmQ+LiIKK21zZ3N0ciAiIgorIkRldCBib3JkZSB2YXJhIG3DtmpsaWd0IGF0dCBhbmdlIGJsYW5rc3RlZyBvY2ggc2thbG1ldGF0ZWNrZW4gaSwgb2NoICIKKyJpbmxlZGFuZGUgYXJndW1lbnQgZsO2ciwgSTxmw6Utcm9vdC1rb21tYW5kbz4gb2NoIEk8c2lnbmVyaW5nc2tvbW1hbmRvPi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctYnVpbGRwYWNrYWdlLjE6MjU2Cittc2dpZCAiIgorIkI8ZHBrZy1zb3VyY2U+KDEpLCBCPGRwa2ctYXJjaGl0ZWN0dXJlPigxKSwgQjxkcGtnLWJ1aWxkZmxhZ3M+KDEpLCBCPGRwa2ctIgorImdlbmNoYW5nZXM+KDEpLCBCPGZha2Vyb290PigxKSwgQjxncGc+KDEpLiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1zb3VyY2U+KDEpLCBCPGRwa2ctYXJjaGl0ZWN0dXJlPigxKSwgQjxkcGtnLWJ1aWxkZmxhZ3M+KDEpLCBCPGRwa2ctIgorImdlbmNoYW5nZXM+KDEpLCBCPGZha2Vyb290PigxKSwgQjxncGc+KDEpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1idWlsZHBhY2thZ2UuMToyNjUKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAwOC0yMDEwIFJhcGhhXFxbOmVdbCBIZXJ0em9nIgorbXNnc3RyICJVcHBob3ZzcsOkdHRzc2t5ZGRhdCDCqSAyMDA4LTIwMTAgUmFwaGHDq2wgSGVydHpvZyIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctY2hlY2tidWlsZGRlcHMuMToxCisjLCBuby13cmFwCittc2dpZCAiZHBrZy1jaGVja2J1aWxkZGVwcyIKK21zZ3N0ciAiZHBrZy1jaGVja2J1aWxkZGVwcyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1jaGVja2J1aWxkZGVwcy4xOjQKK21zZ2lkICJkcGtnLWNoZWNrYnVpbGRkZXBzIC0gY2hlY2sgYnVpbGQgZGVwZW5kZW5jaWVzIGFuZCBjb25mbGljdHMiCittc2dzdHIgImRwa2ctY2hlY2tidWlsZGRlcHMgLSBrb250cm9sbGVyYSBieWdnYmVyb2VuZGVuIG9jaCAta29uZmxpa3RlciIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1jaGVja2J1aWxkZGVwcy4xOjkKK21zZ2lkICJCPGRwa2ctY2hlY2tidWlsZGRlcHM+IFtJPG9wdGlvbj4uLi5dIFtJPGNvbnRyb2wtZmlsZT5dIgorbXNnc3RyICJCPGRwa2ctY2hlY2tidWlsZGRlcHM+IFtJPGZsYWdnYT4uLi5dIFtJPGNvbnRyb2wtZmlsPl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctY2hlY2tidWlsZGRlcHMuMToxNAorbXNnaWQgIiIKKyJUaGlzIHByb2dyYW0gY2hlY2tzIHRoZSBpbnN0YWxsZWQgcGFja2FnZXMgaW4gdGhlIHN5c3RlbSBhZ2FpbnN0IHRoZSBidWlsZCAiCisiZGVwZW5kZW5jaWVzIGFuZCBidWlsZCBjb25mbGljdHMgbGlzdGVkIGluIHRoZSBjb250cm9sIGZpbGUuIElmIGFueSBhcmUgbm90ICIKKyJtZXQsIGl0IGRpc3BsYXlzIHRoZW0gYW5kIGV4aXRzIHdpdGggYSBub256ZXJvIHJldHVybiBjb2RlLiIKK21zZ3N0ciAiIgorIkRldHRhIHByb2dyYW0ga29udHJvbGxlcmFyIGluc3RhbGxlcmFkZSBwYWtldCBww6Ugc3lzdGVtZXQgbW90IGJ5Z2diZXJvZW5kZW4gIgorIm9jaCAta29uZmxpa3RlciBzb20gbGlzdGFzIGkgZmlsZW4gY29udHJvbC4gT20gZGUgaW50ZSB1cHBmeWxscywgdmlzYXMgZGUgIgorIm9jaCBwcm9ncmFtbWV0IGF2c2x1dGFzIG1lZCBlbiBmZWxzdGF0dXMgc29tIGludGUgw6RyIG5vbGwuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6MTcKK21zZ2lkICIiCisiQnkgZGVmYXVsdCwgQjxkZWJpYW4vY29udHJvbD4gaXMgcmVhZCwgYnV0IGFuIGFsdGVybmF0ZSBjb250cm9sIGZpbGVuYW1lIG1heSAiCisiYmUgc3BlY2lmaWVkIG9uIHRoZSBjb21tYW5kIGxpbmUuIgorbXNnc3RyICIiCisiU29tIHN0YW5kYXJkIGzDpHNlcyBCPGRlYmlhbi9jb250cm9sPiwgbWVuIGV0dCBhbHRlcm5hdGl2dCBzdHlyZmlsbmFtbiBrYW4gIgorImFuZ2VzIHDDpSBrb21tYW5kb3JhZGVuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1jaGVja2J1aWxkZGVwcy4xOjI3Cittc2dpZCAiIgorIklnbm9yZSBJPEJ1aWxkLURlcGVuZHMtSW5kZXA+IGxpbmVzLiBVc2Ugd2hlbiBubyBhcmNoLWluZGVwIHBhY2thZ2VzIHdpbGwgYmUgIgorImJ1aWx0LiIKK21zZ3N0ciAiIgorIklnbm9yZXJhIEk8QnVpbGQtRGVwZW5kcy1JbmRlcD4tcmFkZXIuIEFudsOkbmQgb20gaW5nYSBhcmtpdGVrdHVyb2Jlcm9lbmRlICIKKyJwYWtldCBza2FsbCBieWdnYXMuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1jaGVja2J1aWxkZGVwcy4xOjI3CisjLCBuby13cmFwCittc2dpZCAiQjwtZCA+STxidWlsZC1kZXBlbmRzLXN0cmluZz4iCittc2dzdHIgIkI8LWQ+IEk8YnlnZ2Jlcm9lbmRlc3Ryw6RuZz4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6MjkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1jID5JPGJ1aWxkLWNvbmZsaWN0cy1zdHJpbmc+IgorbXNnc3RyICJCPC1jPiBJPGJ5Z2drb25mbGlrdHN0csOkbmc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6MzMKK21zZ2lkICIiCisiVXNlIHRoZSBnaXZlbiBidWlsZCBkZXBlbmRlbmNpZXMvY29uZmxpY3RzIGluc3RlYWQgb2YgdGhvc2UgY29udGFpbmVkIGluIHRoZSAiCisiSTxkZWJpYW4vY29udHJvbD4gZmlsZS4iCittc2dzdHIgIiIKKyJBbnbDpG5kIGRlIGFuZ2l2bmEgYnlnZ2Jlcm9lbmRlbmEvLWtvbmZsaWt0ZXJuYSBpc3TDpGxsZXQgZsO2ciBkZSBzb20gc3TDpXIgaSAiCisiZmlsZW4gSTxkZWJpYW4vY29udHJvbD4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWNoZWNrYnVpbGRkZXBzLjE6NDIKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAwMSBKb2V5IEhlc3MiCittc2dzdHIgIlVwcGhvdnNyw6R0dHNza3lkZGF0IMKpIDIwMDEgSm9leSBIZXNzIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1kaXN0YWRkZmlsZS4xOjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLWRpc3RhZGRmaWxlIgorbXNnc3RyICJkcGtnLWRpc3RhZGRmaWxlIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpc3RhZGRmaWxlLjE6NAorbXNnaWQgImRwa2ctZGlzdGFkZGZpbGUgLSBhZGQgZW50cmllcyB0byBkZWJpYW4vZmlsZXMiCittc2dzdHIgImRwa2ctZGlzdGFkZGZpbGUgLSBsw6RnZyB0aWxsIHBvc3RlciBpIGRlYmlhbi9maWxlcyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXN0YWRkZmlsZS4xOjgKK21zZ2lkICJCPGRwa2ctZGlzdGFkZGZpbGU+IFtJPG9wdGlvbj4uLi5dSTwgZmlsZW5hbWUgc2VjdGlvbiBwcmlvcml0eT4iCittc2dzdHIgIkI8ZHBrZy1kaXN0YWRkZmlsZT4gW0k8ZmxhZ2dhPi4uLl1JPCBmaWxuYW1uIHNla3Rpb24gcHJpb3JpdGV0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXN0YWRkZmlsZS4xOjEzCittc2dpZCAiQjxkcGtnLWRpc3RhZGRmaWxlPiBhZGRzIGFuIGVudHJ5IGZvciBhIG5hbWVkIGZpbGUgdG8gQjxkZWJpYW4vZmlsZXM+LiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1kaXN0YWRkZmlsZT4gbMOkZ2dlciB0aWxsIGVuIHBvc3QgZsO2ciBlbiBuYW1uZ2l2ZW4gZmlsIGkgQjxkZWJpYW4vIgorImZpbGVzPi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGlzdGFkZGZpbGUuMToxOAorbXNnaWQgIiIKKyJJdCB0YWtlcyB0aHJlZSBub24tb3B0aW9uIGFyZ3VtZW50cywgdGhlIGZpbGVuYW1lIGFuZCB0aGUgc2VjdGlvbiBhbmQgIgorInByaW9yaXR5IGZvciB0aGUgQjwuY2hhbmdlcz4gZmlsZS4iCittc2dzdHIgIiIKKyJEZXQgdGFyIHRyZSBhcmd1bWVudCBzb20gaW50ZSDDpHIgZmxhZ2dvciAtIGZpbG5hbW4sIHNla3Rpb24gb2NoIHByaW9yaXRldCAiCisiZsO2ciBCPC5jaGFuZ2VzPi1maWxlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGlzdGFkZGZpbGUuMToyNgorbXNnaWQgIiIKKyJUaGUgZmlsZW5hbWUgc2hvdWxkIGJlIHNwZWNpZmllZCByZWxhdGl2ZSB0byB0aGUgZGlyZWN0b3J5IHdoZXJlIEI8ZHBrZy0iCisiZ2VuY2hhbmdlcz4gd2lsbCBleHBlY3QgdG8gZmluZCB0aGUgZmlsZXMsIHVzdWFsbHkgQjwuLj4sIHJhdGhlciB0aGFuIGJlaW5nICIKKyJhIHBhdGhuYW1lIHJlbGF0aXZlIHRvIHRoZSBjdXJyZW50IGRpcmVjdG9yeSB3aGVuIEI8ZHBrZy1kaXN0YWRkZmlsZT4gaXMgcnVuLiIKK21zZ3N0ciAiIgorIkZpbG5hbW5ldCBhbmdlcyByZWxhdGl2dCB0aWxsIGthdGFsb2dlbiBkw6RyIEI8ZHBrZy1nZW5jaGFuZ2VzPiBmw7ZydsOkbnRhcyAiCisiZmlubmEgZmlsZXJuYSwgbm9ybWFsdCBCPC4uPiwgc25hcmFyZSDDpG4gc29tIGVuIHPDtmt2w6RnIHJlbGF0aXYgdGlsbCBkZW4gIgorImFrdHVlbGxhIGthdGFsb2dlbiBuw6RyIEI8ZHBrZy1kaXN0YWRkZmlsZT4ga8O2cnMuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kaXN0YWRkZmlsZS4xOjI4IGRwa2ctZ2VuY2hhbmdlcy4xOjEwMyBkcGtnLWdlbmNvbnRyb2wuMTo2OQorIywgbm8td3JhcAorbXNnaWQgIkI8LWY+STxmaWxlc2xpc3RmaWxlPiIKK21zZ3N0ciAiQjwtZj5JPGZpbGxpc2ZpbGU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpc3RhZGRmaWxlLjE6MzIgZHBrZy1nZW5jb250cm9sLjE6NzMKK21zZ2lkICIiCisiUmVhZCBvciB3cml0ZSB0aGUgbGlzdCBvZiBmaWxlcyB0byBiZSB1cGxvYWRlZCBoZXJlLCByYXRoZXIgdGhhbiB1c2luZyAiCisiQjxkZWJpYW4vZmlsZXM+LiIKK21zZ3N0ciAiIgorIkzDpHMgZWxsZXIgc2tyaXYgbGlzdGFuIMO2dmVyIGZpbGVyIHNvbSBza2FsbCBzw6RuZGFzIGluIGjDpHIsIGlzdMOkbGxldCBmw7ZyIGF0dCAiCisiYW52w6RuZGEgQjxkZWJpYW4vZmlsZT4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kaXN0YWRkZmlsZS4xOjQwIGRwa2ctZ2VuY2hhbmdlcy4xOjEzOSBkcGtnLWdlbmNvbnRyb2wuMToxMzQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGRlYmlhbi9maWxlcz4iCittc2dzdHIgIkI8ZGViaWFuL2ZpbGVzPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXN0YWRkZmlsZS4xOjQ2Cittc2dpZCAiIgorIlRoZSBsaXN0IG9mIGdlbmVyYXRlZCBmaWxlcyB3aGljaCBhcmUgcGFydCBvZiB0aGUgdXBsb2FkIGJlaW5nIHByZXBhcmVkLiAgIgorIkI8ZHBrZy1kaXN0YWRkZmlsZT4gY2FuIGJlIHVzZWQgdG8gYWRkIGFkZGl0aW9uYWwgZmlsZXMuIgorbXNnc3RyICIiCisiTGlzdGFuIMO2dmVyIGdlbmVyZXJhZGUgZmlsZXIgc28gaW5nw6VyIGkgaW5zw6RuZG5pbmdlbiBzb20gZsO2cmJlcmVkcy4gQjxkcGtnLSIKKyJkaXN0YWRkZmlsZT4ga2FuIGFudsOkbmRhcyBmw7ZyIGF0dCBsw6RnZ2EgdGlsbCB5dHRlcmxpZ2FyZSBmaWxlci4iCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLWRlYi4xOjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLWRlYiIKK21zZ3N0ciAiZHBrZy1kZWIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6NAorbXNnaWQgImRwa2ctZGViIC0gRGViaWFuIHBhY2thZ2UgYXJjaGl2ZSAoLmRlYikgbWFuaXB1bGF0aW9uIHRvb2wiCittc2dzdHIgImRwa2ctZGViIC0gRGViaWFucyBtYW5pcHVsZXJpbmdzdmVya3R5ZyBmw7ZyIHBha2V0YXJraXYgKC5kZWIpIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjgKK21zZ2lkICJCPGRwa2ctZGViPiBbSTxvcHRpb24+Li4uXSBJPGNvbW1hbmQ+IgorbXNnc3RyICJCPGRwa2ctZGViPiBbSTxmbGFnZ2E+Li4uXSBJPMOldGfDpHJkPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxMgorbXNnaWQgIiIKKyJCPGRwa2ctZGViPiBwYWNrcywgdW5wYWNrcyBhbmQgcHJvdmlkZXMgaW5mb3JtYXRpb24gYWJvdXQgRGViaWFuIGFyY2hpdmVzLiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1kZWI+IHBhY2thciwgcGFja2FyIHVwcCBvY2ggdGlsbGhhbmRhaMOlbGxlciBpbmZvcm1hdGlvbiBvbSAiCisiRGViaWFuYXJraXYuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjE2Cittc2dpZCAiVXNlIEI8ZHBrZz4gdG8gaW5zdGFsbCBhbmQgcmVtb3ZlIHBhY2thZ2VzIGZyb20geW91ciBzeXN0ZW0uIgorbXNnc3RyICJBbnbDpG5kIEI8ZHBrZz4gZsO2ciBhdHQgaW5zdGFsbGVyYSBvY2ggdGEgYm9ydCBwYWtldCBmcsOlbiBkaXR0IHN5c3RlbS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MjYKK21zZ2lkICIiCisiWW91IGNhbiBhbHNvIGludm9rZSBCPGRwa2ctZGViPiBieSBjYWxsaW5nIEI8ZHBrZz4gd2l0aCB3aGF0ZXZlciBvcHRpb25zIHlvdSAiCisid2FudCB0byBwYXNzIHRvIEI8ZHBrZy1kZWI+LiBCPGRwa2c+IHdpbGwgc3BvdCB0aGF0IHlvdSB3YW50ZWQgQjxkcGtnLWRlYj4gIgorImFuZCBydW4gaXQgZm9yIHlvdS4iCittc2dzdHIgIiIKKyJEdSBrYW4gw6R2ZW4gc3RhcnRhIEI8ZHBrZy1kZWI+IGdlbm9tIGF0dCBhbnJvcGEgQjxkcGtnPiBtZWQgZGUgZmxhZ2dvciBkdSAiCisidmlsbCBzw6RuZGEgdGlsbCBCPGRwa2ctZGViPi4gQjxkcGtnPiBrb21tZXIgdXBwdMOkY2thIGF0dCBkdSB2aWxsZSDDpXQgQjxkcGtnLSIKKyJkZWI+IG9jaCBrw7ZyIGRldCDDpXQgZGlnLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MjgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1iPiwgQjwtLWJ1aWxkPiBJPGRpcmVjdG9yeT4gW0k8YXJjaGl2ZT58STxkaXJlY3Rvcnk+XSIKK21zZ3N0ciAiQjwtYj4sIEI8LS1idWlsZD4gSTxrYXRhbG9nPiBbSTxhcmtpdj58STxrYXRhbG9nPl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6NDAKK21zZ2lkICIiCisiQ3JlYXRlcyBhIGRlYmlhbiBhcmNoaXZlIGZyb20gdGhlIGZpbGVzeXN0ZW0gdHJlZSBzdG9yZWQgaW4gSTxkaXJlY3Rvcnk+LiAiCisiSTxkaXJlY3Rvcnk+IG11c3QgaGF2ZSBhIEI8REVCSUFOPiBzdWJkaXJlY3RvcnksIHdoaWNoIGNvbnRhaW5zIHRoZSBjb250cm9sICIKKyJpbmZvcm1hdGlvbiBmaWxlcyBzdWNoIGFzIHRoZSBjb250cm9sIGZpbGUgaXRzZWxmLiBUaGlzIGRpcmVjdG9yeSB3aWxsICIKKyJJPG5vdD4gYXBwZWFyIGluIHRoZSBiaW5hcnkgcGFja2FnZSdzIGZpbGVzeXN0ZW0gYXJjaGl2ZSwgYnV0IGluc3RlYWQgdGhlICIKKyJmaWxlcyBpbiBpdCB3aWxsIGJlIHB1dCBpbiB0aGUgYmluYXJ5IHBhY2thZ2UncyBjb250cm9sIGluZm9ybWF0aW9uIGFyZWEuIgorbXNnc3RyICIiCisiU2thcGFyIGV0dCBEZWJpYW5hcmtpdiBmcsOlbiBmaWxzeXN0ZW1zdHLDpGRldCBzb20gbGFncmFzIGkgSTxrYXRhbG9nPi4gIgorIkk8a2F0YWxvZz4gbcOlc3RlIGlubmVow6VsbGEgdW5kZXJrYXRhbG9nZW4gQjxERUJJQU4+LCB2aWxrZW4gaW5uZWjDpWxsZXIgIgorInN0eXJpbmZvcm1hdGlvbnNmaWxlciBzw6Vzb20gc2rDpGx2IHN0eXJmaWxlbiBjb250cm9sLiBLYXRhbG9nZW4ga29tbWVyICIKKyJJPGludGU+IGF0dCB2aXNhcyBpIGJpbsOkcnBha2V0ZXRzIGZpbHN5c3RlbXNhcmtpdiwgdXRhbiBpc3TDpGxsZXQga29tbWVyICIKKyJmaWxlcm5hIGzDpGdnYXMgaSBiaW7DpHJwYWtldGV0cyBzdHlyaW5mb3JtYXRpb25zb21yw6VkZS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6NTIKK21zZ2lkICIiCisiVW5sZXNzIHlvdSBzcGVjaWZ5IEI8LS1ub2NoZWNrPiwgQjxkcGtnLWRlYj4gd2lsbCByZWFkIEI8REVCSUFOL2NvbnRyb2w+IGFuZCAiCisicGFyc2UgaXQuIEl0IHdpbGwgY2hlY2sgaXQgZm9yIHN5bnRheCBlcnJvcnMgYW5kIG90aGVyIHByb2JsZW1zLCBhbmQgZGlzcGxheSAiCisidGhlIG5hbWUgb2YgdGhlIGJpbmFyeSBwYWNrYWdlIGJlaW5nIGJ1aWx0LiAgQjxkcGtnLWRlYj4gd2lsbCBhbHNvIGNoZWNrIHRoZSAiCisicGVybWlzc2lvbnMgb2YgdGhlIG1haW50YWluZXIgc2NyaXB0cyBhbmQgb3RoZXIgZmlsZXMgZm91bmQgaW4gdGhlIEI8REVCSUFOPiAiCisiY29udHJvbCBpbmZvcm1hdGlvbiBkaXJlY3RvcnkuIgorbXNnc3RyICIiCisiU8OldmlkYSBkdSBpbnRlIGFuZ2VyIEI8LS1ub2NoZWNrPiBrb21tZXIgZHBrZy1kZWIgYXR0IGzDpHNhIEI8REVCSUFOL2NvbnRyb2w+ICIKKyJvY2ggdG9sa2EgZGVuLiBEZW4ga29tbWVyIGxldGEgZWZ0ZXIgc3ludGF4ZmVsIG9jaCBhbmRyYSBwcm9ibGVtLCBvY2ggdmlzYSAiCisibmFtbmV0IHDDpSBkZXQgYmluw6RycGFrZXQgc29tIGJ5Z2dzLiBCPGRwa2ctZGViPiBrb21tZXIgw6R2ZW4gYXR0IGtvbnRyb2xsZXJhICIKKyJiZWjDtnJpZ2hldGVuIHDDpSBwYWtldHNrcmlwdGVuIG9jaCBhbmRyYSBmaWxlciBzb20gaGl0dGFzIGkgIgorInN0eXJpbmZvcm1hdGlvbnNrYXRhbG9nZW4gQjxERUJJQU4+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMTo1OQorbXNnaWQgIiIKKyJJZiBubyBJPGFyY2hpdmU+IGlzIHNwZWNpZmllZCB0aGVuIEI8ZHBrZy1kZWI+IHdpbGwgd3JpdGUgdGhlIHBhY2thZ2UgaW50byAiCisidGhlIGZpbGUgSTxkaXJlY3Rvcnk+QjwuZGViPi4iCittc2dzdHIgIiIKKyJPbSBpbmdldCBJPGFya2l2PiBhbmdlcyBrb21tZXIgQjxkcGtnLWRlYj4gc2tyaXZhIHBha2V0ZXQgdGlsbCBmaWxlbiAiCisiSTxrYXRhbG9nPkI8LmRlYj4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjYxCittc2dpZCAiSWYgdGhlIGFyY2hpdmUgdG8gYmUgY3JlYXRlZCBhbHJlYWR5IGV4aXN0cyBpdCB3aWxsIGJlIG92ZXJ3cml0dGVuLiIKK21zZ3N0ciAiT20gYXJraXZldCBzb20gc2thbGwgc2thcGFzIHJlZGFuIGZpbm5zIGtvbW1lciBkZXQgc2tyaXZhcyDDtnZlci4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6NzcKK21zZ2lkICIiCisiSWYgdGhlIHNlY29uZCBhcmd1bWVudCBpcyBhIGRpcmVjdG9yeSB0aGVuIEI8ZHBrZy1kZWI+IHdpbGwgd3JpdGUgdG8gdGhlICIKKyJmaWxlIEk8cGFja2FnZT5CPF8+STx2ZXJzaW9uPkI8Xz5JPGFyY2g+QjwuZGViPiwgb3IgIgorIkk8cGFja2FnZT5CPF8+STx2ZXJzaW9uPkI8LmRlYj4gaWYgbm8gQjxBcmNoaXRlY3R1cmU+IGZpZWxkIGlzIHByZXNlbnQgaW4gIgorInRoZSBwYWNrYWdlIGNvbnRyb2wgZmlsZS4gV2hlbiBhIHRhcmdldCBkaXJlY3RvcnkgaXMgc3BlY2lmaWVkLCByYXRoZXIgdGhhbiAiCisiYSBmaWxlLCB0aGUgQjwtLW5vY2hlY2s+IG9wdGlvbiBtYXkgbm90IGJlIHVzZWQgKHNpbmNlIEI8ZHBrZy1kZWI+IG5lZWRzIHRvICIKKyJyZWFkIGFuZCBwYXJzZSB0aGUgcGFja2FnZSBjb250cm9sIGZpbGUgdG8gZGV0ZXJtaW5lIHdoaWNoIGZpbGVuYW1lIHRvIHVzZSkuIgorbXNnc3RyICIiCisiT20gZGVuIGFuZHJhIGFyZ3VtZW50ZXQgw6RyIGVuIGthdGFsb2cga29tbWVyIEI8ZHBrZy1kZWI+IHNrcml2YSB0aWxsIGZpbGVuICIKKyJJPHBha2V0PkI8Xz5JPHZlcnNpb24+QjxfPkk8YXJraXRla3R1cj5CPC5kZWI+LCBlbGxlciAiCisiSTxwYWtldD5CPF8+STx2ZXJzaW9uPkI8LmRlYj4gb20gZGV0IGludGUgZmlubnMgbsOlZ290IEI8QXJjaGl0ZWN0dXJlPi1mw6RsdCBpICIKKyJzdHlyZmlsZW4gY29udHJvbC4gTsOkciBlbiBtw6Vsa2F0YWxvZyBhbmdlcywgaXN0w6RsbGV0IGbDtnIgZW4gZmlsLCBrYW4gaW50ZSAiCisiZmxhZ2dhbiBCPC0tbm9jaGVjaz4gYW52w6RuZGFzIChlZnRlcnNvbSBCPGRwa2ctZGViPiBtw6VzdGUgbMOkc2Egb2NoIHRvbGthICIKKyJwYWtldGV0cyBzdHlyZmlsIGNvbnRyb2wgZsO2ciBhdHQgdGEgcmVkYSBww6Ugdmlsa2V0IGZpbG5hbW4gc29tIHNrYWxsICIKKyJhbnbDpG5kYXMpLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6NzcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1JPiwgQjwtLWluZm8+IEk8YXJjaGl2ZT4gW0k8Y29udHJvbC1maWxlLW5hbWU+Li4uXSIKK21zZ3N0ciAiQjwtST4sIEI8LS1pbmZvPiBJPGFya2l2PiBbSTxjb250cm9sLWZpbG5hbW4+IC4uLl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6ODAKK21zZ2lkICJQcm92aWRlcyBpbmZvcm1hdGlvbiBhYm91dCBhIGJpbmFyeSBwYWNrYWdlIGFyY2hpdmUuIgorbXNnc3RyICJUaWxsaGFuZGFow6VsbGVyIGluZm9ybWF0aW9uIG9tIGV0dCBiaW7DpHJ0IHBha2V0YXJraXYuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjg1Cittc2dpZCAiIgorIklmIG5vIEk8Y29udHJvbC1maWxlLW5hbWU+cyBhcmUgc3BlY2lmaWVkIHRoZW4gaXQgd2lsbCBwcmludCBhIHN1bW1hcnkgb2YgIgorInRoZSBjb250ZW50cyBvZiB0aGUgcGFja2FnZSBhcyB3ZWxsIGFzIGl0cyBjb250cm9sIGZpbGUuIgorbXNnc3RyICIiCisiT20gaW5nYSBJPGNvbnRyb2wtZmlsbmFtbj4gYW5nZXMga29tbWVyIGRldCBhdHQgdmlzYSBlbiBzYW1tYW5mYXR0bmluZyBhdiAiCisiaW5uZWjDpWxsZXQgaSBwYWtldGV0IHRpbGxzYW1tYW5zIG1lZCBkZXNzIHN0eXJmaWwuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjkzCittc2dpZCAiIgorIklmIGFueSBJPGNvbnRyb2wtZmlsZS1uYW1lPnMgYXJlIHNwZWNpZmllZCB0aGVuIEI8ZHBrZy1kZWI+IHdpbGwgcHJpbnQgdGhlbSAiCisiaW4gdGhlIG9yZGVyIHRoZXkgd2VyZSBzcGVjaWZpZWQ7IGlmIGFueSBvZiB0aGUgY29tcG9uZW50cyB3ZXJlbid0IHByZXNlbnQgIgorIml0IHdpbGwgcHJpbnQgYW4gZXJyb3IgbWVzc2FnZSB0byBzdGRlcnIgYWJvdXQgZWFjaCBvbmUgYW5kIGV4aXQgd2l0aCBzdGF0dXMgIgorIjIuIgorbXNnc3RyICIiCisiT20gZXR0IGVsbGVyIGZsZXJhIEk8Y29udHJvbC1maWxuYW1uPiBhbmdlcyBrb21tZXIgQjxkcGtnLWRlYj4gYXR0IHNrcml2YSB1dCAiCisiZGVtIGkgZGVuIG9yZG5pbmcgZGUgYW5nZXMuIE9tIG7DpWdyYSBhdiBrb21wb25lbnRlcm5hIGludGUgZmFubnMga29tbWVyIGV0dCAiCisiZmVsbWVkZGVsYW5kZSBmw7ZyIHZhcnQgb2NoIGV0dCBza3JpdmFzIHV0IHDDpSBzdGFuZGFyZCBmZWwsIG9jaCBwcm9ncmFtbWV0ICIKKyJhdnNsdXRhciBtZWQgZmVsc3RhdHVzIDIuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMTo5MworIywgbm8td3JhcAorbXNnaWQgIkI8LVc+LCBCPC0tc2hvdz4gSTxhcmNoaXZlPiIKK21zZ3N0ciAiQjwtVz4sIEI8LS1zaG93PiBJPGFya2l2PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxMDAKK21zZ2lkICIiCisiUHJvdmlkZXMgaW5mb3JtYXRpb24gYWJvdXQgYSBiaW5hcnkgcGFja2FnZSBhcmNoaXZlIGluIHRoZSBmb3JtYXQgc3BlY2lmaWVkICIKKyJieSB0aGUgQjwtLXNob3dmb3JtYXQ+IGFyZ3VtZW50LiBUaGUgZGVmYXVsdCBmb3JtYXQgZGlzcGxheXMgdGhlIHBhY2thZ2UncyAiCisibmFtZSBhbmQgdmVyc2lvbiBvbiBvbmUgbGluZSwgc2VwYXJhdGVkIGJ5IGEgdGFidWxhdG9yLiIKK21zZ3N0ciAiIgorIkdlciBpbmZvcm1hdGlvbiBvbSBldHQgYmluw6RydCBwYWtldGFya2l2IGkgZGV0IGZvcm1hdCBzb20gYW5nZXMgbWVkIGZsYWdnYW4gIgorIkI8LS1zaG93Zm9ybWF0Pi4gRGV0IGbDtnJ2YWxkYSBmb3JtYXRldCB2aXNhciBwYWtldGV0cyBuYW1uIG9jaCB2ZXJzaW9uIHDDpSBlbiAiCisicmFkLCBhdmRlbGFkZSBtZWQgdGFidWxhdG9ydGVja2VuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MTAwCisjLCBuby13cmFwCittc2dpZCAiQjwtZj4sIEI8LS1maWVsZD4gSTxhcmNoaXZlPiBbSTxjb250cm9sLWZpZWxkLW5hbWU+Li4uXSIKK21zZ3N0ciAiQjwtZj4sIEI8LS1maWVsZD4gSTxhcmtpdj4gW0k8Y29udHJvbC1mw6RsdG5hbW4+IC4uLl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTAzCittc2dpZCAiRXh0cmFjdHMgY29udHJvbCBmaWxlIGluZm9ybWF0aW9uIGZyb20gYSBiaW5hcnkgcGFja2FnZSBhcmNoaXZlLiIKK21zZ3N0ciAiRXh0cmFoZXJhciBzdHlyZmlsc2luZm9ybWF0aW9uIGZyw6VuIGV0dCBiaW7DpHJ0IHBha2V0YXJraXYuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjEwNworbXNnaWQgIiIKKyJJZiBubyBCPGNvbnRyb2wtZmlsZS1maWVsZD5zIGFyZSBzcGVjaWZpZWQgdGhlbiBpdCB3aWxsIHByaW50IHRoZSB3aG9sZSAiCisiY29udHJvbCBmaWxlLiIKK21zZ3N0ciAiT20gZHUgaW50ZSBhbmdlciBuw6VncmEgQjxzdHlyZmlsZsOkbHQ+IHZpc2FzIGhlbGEgc3R5cmZpbGVuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxMTYKK21zZ2lkICIiCisiSWYgYW55IGFyZSBzcGVjaWZpZWQgdGhlbiBCPGRwa2ctZGViPiB3aWxsIHByaW50IHRoZWlyIGNvbnRlbnRzLCBpbiB0aGUgIgorIm9yZGVyIGluIHdoaWNoIHRoZXkgYXBwZWFyIGluIHRoZSBjb250cm9sIGZpbGUuIElmIG1vcmUgdGhhbiBvbmUgQjxjb250cm9sLSIKKyJmaWxlLWZpZWxkPiBpcyBzcGVjaWZpZWQgdGhlbiBCPGRwa2ctZGViPiB3aWxsIHByZWNlZGUgZWFjaCB3aXRoIGl0cyBmaWVsZCAiCisibmFtZSAoYW5kIGEgY29sb24gYW5kIHNwYWNlKS4iCittc2dzdHIgIiIKKyJPbSBuw6VncmEgYW5nZXMga29tbWVyIEI8ZHBrZy1kZWI+IGF0dCB2aXNhIGRlcmFzIGlubmVow6VsbCwgaSBkZW4gb3JkbmluZyBkZSAiCisiZsO2cmVrb21tZXIgaSBzdHlyZmlsZW4uIE9tIG1lciDDpG4gZXR0IEI8c3R5cmZpbHNmw6RsdD4gYW5nZXMga29tbWVyIEI8ZHBrZy0iCisiZGViPiB2aXNhIHZhcmplIG1lZCBldHQgaW5sZWRhbmRlIGbDpGx0bmFtbiAob2NoIGV0dCBrb2xvbiBvY2ggbWVsbGFucnVtKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTE4Cittc2dpZCAiTm8gZXJyb3JzIGFyZSByZXBvcnRlZCBmb3IgZmllbGRzIHJlcXVlc3RlZCBidXQgbm90IGZvdW5kLiIKK21zZ3N0ciAiIgorIkluZ2EgZmVsbWVkZGVsYW5kZSByYXBwb3J0ZXJhcyBmw7ZyIGbDpGx0IHNvbSBlZnRlcmZyw6VnYXMgbWVuIGludGUgaGl0dGFzLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MTE4CisjLCBuby13cmFwCittc2dpZCAiQjwtYz4sIEI8LS1jb250ZW50cz4gSTxhcmNoaXZlPiIKK21zZ3N0ciAiQjwtYz4sIEI8LS1jb250ZW50cz4gSTxhcmtpdj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTI0Cittc2dpZCAiIgorIkxpc3RzIHRoZSBjb250ZW50cyBvZiB0aGUgZmlsZXN5c3RlbSB0cmVlIGFyY2hpdmUgcG9ydGlvbiBvZiB0aGUgcGFja2FnZSAiCisiYXJjaGl2ZS4gSXQgaXMgY3VycmVudGx5IHByb2R1Y2VkIGluIHRoZSBmb3JtYXQgZ2VuZXJhdGVkIGJ5IEI8dGFyPidzICIKKyJ2ZXJib3NlIGxpc3RpbmcuIgorbXNnc3RyICIiCisiVmlzYXIgaW5uZWjDpWxsZXIgaSBmaWxzeXN0ZW1zdHLDpGRzYXJraXZzZGVsZW4gYXYgcGFrZXRhcmtpdmV0LiBEZXQgdmlzYXMgZsO2ciAiCisibsOkcnZhcmFuZGUgaSBkZXQgZm9ybWF0IHNvbSBnZW5lcmVyYXMgYXYgQjx0YXI+cyBwcmF0c2FtbWEgdmlzbmluZy4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRlYi4xOjEyNAorIywgbm8td3JhcAorbXNnaWQgIkI8LXg+LCBCPC0tZXh0cmFjdD4gSTxhcmNoaXZlIGRpcmVjdG9yeT4iCittc2dzdHIgIkI8LXg+fEI8LS1leHRyYWN0PiBJPGFya2l2a2F0YWxvZz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTI4Cittc2dpZCAiIgorIkV4dHJhY3RzIHRoZSBmaWxlc3lzdGVtIHRyZWUgZnJvbSBhIHBhY2thZ2UgYXJjaGl2ZSBpbnRvIHRoZSBzcGVjaWZpZWQgIgorImRpcmVjdG9yeS4iCittc2dzdHIgIiIKKyJFeHRyYWhlcmFyIGZpbHN5c3RlbXN0csOkZGV0IGZyw6VuIGV0dCBwYWtldGFya2l2IHRpbGwgZGVuIGFuZ2l2bmEga2F0YWxvZ2VuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxMzQKK21zZ2lkICIiCisiTm90ZSB0aGF0IGV4dHJhY3RpbmcgYSBwYWNrYWdlIHRvIHRoZSByb290IGRpcmVjdG9yeSB3aWxsIEk8bm90PiByZXN1bHQgaW4gYSAiCisiY29ycmVjdCBpbnN0YWxsYXRpb24hIFVzZSBCPGRwa2c+IHRvIGluc3RhbGwgcGFja2FnZXMuIgorbXNnc3RyICIiCisiT2JzZXJ2ZXJhIGF0dCBlbiBleHRyYWhlcmluZyBhdiBldHQgcGFrZXQgdGlsbCByb3RrYXRhbG9nZW4gSTxpbnRlPiAiCisicmVzdWx0ZXJhciBpIGVuIGtvcnJla3QgaW5zdGFsbGF0aW9uISBBbnbDpG5kIEI8ZHBrZz4gZsO2ciBhdHQgaW5zdGFsbGVyYSAiCisicGFrZXQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjEzOAorbXNnaWQgIiIKKyJJPGRpcmVjdG9yeT4gKGJ1dCBub3QgaXRzIHBhcmVudHMpIHdpbGwgYmUgY3JlYXRlZCBpZiBuZWNlc3NhcnksIGFuZCBpdHMgIgorInBlcm1pc3Npb25zIG1vZGlmaWVkIHRvIG1hdGNoIHRoZSBjb250ZW50cyBvZiB0aGUgcGFja2FnZS4iCittc2dzdHIgIiIKKyJJPGthdGFsb2c+IChtZW4gaW50ZSBkZXNzIGbDtnLDpGxkcmFyKSBrb21tZXIgc2thcGFzIG9tIG7DtmR2w6RuZGlndCwgb2NoIGRlc3MgIgorImJlaMO2cmlnaGV0IGtvbW1lciBhdHQgw6RuZHJhcyB0aWxsIGF0dCBtb3RzdmFyYSBpbm5laMOlbGxldCBpIHBha2V0ZXQuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToxMzgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1YPiwgQjwtLXZleHRyYWN0PiBJPGFyY2hpdmUgZGlyZWN0b3J5PiIKK21zZ3N0ciAiQjwtQz58QjwtLXZleHRyYWN0PiBJPGFya2l2a2F0YWxvZz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTQ1Cittc2dpZCAiIgorIklzIGxpa2UgQjwtLWV4dHJhY3Q+IChCPC14PikgIHdpdGggQjwtLXZlcmJvc2U+IChCPC12PikgIHdoaWNoIHByaW50cyBhICIKKyJsaXN0aW5nIG9mIHRoZSBmaWxlcyBleHRyYWN0ZWQgYXMgaXQgZ29lcy4iCittc2dzdHIgIiIKKyLDhHIgc29tIEI8LS1leHRyYWN0PiAoQjwteD4pIG1lZCBCPC0tdmVyYm9zZT4gKEI8LXY+KSBzb20gdmlzYXIgZW4gbGlzdGEgw7Z2ZXIgIgorImZpbGVyIHNvbSBleHRyYWhlcmFzIHVuZGVyIHRpZGVuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MTQ1CisjLCBuby13cmFwCittc2dpZCAiQjwtUj4sIEI8LS1yYXctZXh0cmFjdD4gSTxhcmNoaXZlIGRpcmVjdG9yeT4iCittc2dzdHIgIkI8LVI+LCBCPC0tcmF3LWV4dHJhY3Q+IEk8YXJraXZrYXRhbG9nPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxNTAKK21zZ2lkICIiCisiRXh0cmFjdHMgdGhlIGZpbGVzeXN0ZW0gdHJlZSBmcm9tIGEgcGFja2FnZSBhcmNoaXZlIGludG8gYSBzcGVjaWZpZWQgIgorImRpcmVjdG9yeSwgYW5kIHRoZSBjb250cm9sIGluZm9ybWF0aW9uIGZpbGVzIGludG8gYSBERUJJQU4gc3ViZGlyZWN0b3J5IG9mICIKKyJ0aGUgc3BlY2lmaWVkIGRpcmVjdG9yeS4iCittc2dzdHIgIiIKKyJFeHRyYWhlcmFyIGZpbHN5c3RlbXN0csOkZGV0IGZyw6VuIGV0dCBwYWtldGFya2l2IHRpbGwgZGVuIGFuZ2l2bmEga2F0YWxvZ2VuICIKKyJvY2gga29udHJvbGxpbmZvcm1hdGlvbnNmaWxlcm5hIHRpbGwgdW5kZXJrYXRhbG9nZW4gREVCSUFOIGkgZGVuIGFuZ2l2bmEgIgorImthdGFsb2dlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTUyIGRwa2ctZGViLjE6MTcyCittc2dpZCAiIgorIlRoZSB0YXJnZXQgZGlyZWN0b3J5IChidXQgbm90IGl0cyBwYXJlbnRzKSB3aWxsIGJlIGNyZWF0ZWQgaWYgbmVjZXNzYXJ5LiIKK21zZ3N0ciAiIgorIk3DpWxrYXRhbG9nZW4gKG1lbiBpbnRlIGRlc3MgZsO2csOkbGRyYXIpIGtvbW1lciBhdHQgc2thcGFzIG9tIG7DtmR2w6RuZGlndC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRlYi4xOjE1MgorIywgbm8td3JhcAorbXNnaWQgIkI8LS1mc3lzLXRhcmZpbGU+IEk8YXJjaGl2ZT4iCittc2dzdHIgIkI8LS1mc3lzLXRhcmZpbGU+IEk8YXJraXY+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjE2MQorbXNnaWQgIiIKKyJFeHRyYWN0cyB0aGUgZmlsZXN5c3RlbSB0cmVlIGRhdGEgZnJvbSBhIGJpbmFyeSBwYWNrYWdlIGFuZCBzZW5kcyBpdCB0byAiCisic3RhbmRhcmQgb3V0cHV0IGluIEI8dGFyPiBmb3JtYXQuIFRvZ2V0aGVyIHdpdGggQjx0YXI+KDEpICB0aGlzIGNhbiBiZSB1c2VkICIKKyJ0byBleHRyYWN0IGEgcGFydGljdWxhciBmaWxlIGZyb20gYSBwYWNrYWdlIGFyY2hpdmUuICBUaGUgaW5wdXQgYXJjaGl2ZSB3aWxsICIKKyJhbHdheXMgYmUgcHJvY2Vzc2VkIHNlcXVlbnRpYWxseS4iCittc2dzdHIgIiIKKyJFeHRyYWhlcmFyIGZpbHN5c3RlbXN0csOkZHNkYXRhIGZyw6VuIGV0dCBiaW7DpHJ0IHBha2V0IG9jaCBzw6RuZGVyIGRldCB0aWxsICIKKyJzdGFuZGFyZCB1dCBpIEI8dGFyPi1mb3JtYXQuIFRpbGxzYW1tYW5zIG1lZCBCPHRhcj4oMSkga2FuIGRldCBhbnbDpG5kYXMgZsO2ciAiCisiYXR0IGjDpG10YSB1dCBlbiBlbnNraWxkIGZpbCBmcsOlbiBldHQgcGFrZXRhcmtpdi4gSW5kYXRhYXJraXZlbiBiZWhhbmRsYXMgIgorImFsbHRpZCBpIGRlbiBvcmRuaW5nIGRlIGFuZ2VzLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MTYxCisjLCBuby13cmFwCittc2dpZCAiQjwtZT4sIEI8LS1jb250cm9sPiBJPGFyY2hpdmU+IFtJPGRpcmVjdG9yeT5dIgorbXNnc3RyICJCPC1lPiwgQjwtLWNvbnRyb2w+IEk8YXJraXY+IFtJPGthdGFsb2c+XSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToxNjUKK21zZ2lkICIiCisiRXh0cmFjdHMgdGhlIGNvbnRyb2wgaW5mb3JtYXRpb24gZmlsZXMgZnJvbSBhIHBhY2thZ2UgYXJjaGl2ZSBpbnRvIHRoZSAiCisic3BlY2lmaWVkIGRpcmVjdG9yeS4iCittc2dzdHIgIiIKKyJFeHRyYWhlcmFyIHN0eXJpbmZvcm1hdGlvbnNmaWxlcm5hIGZyw6VuIHBha2V0YXJraXZldCB0aWxsIGRlbiBhbmdpdm5hICIKKyJrYXRhbG9nZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjE2OQorbXNnaWQgIiIKKyJJZiBubyBkaXJlY3RvcnkgaXMgc3BlY2lmaWVkIHRoZW4gYSBzdWJkaXJlY3RvcnkgQjxERUJJQU4+IGluIHRoZSBjdXJyZW50ICIKKyJkaXJlY3RvcnkgaXMgdXNlZC4iCittc2dzdHIgIiIKKyJPbSBpbmdlbiBrYXRhbG9nIGFuZ2VzIGtvbW1lciBlbiB1bmRlcmthdGFsb2cgdmlkIG5hbW4gQjxERUJJQU4+IGkgZGVuICIKKyJha3R1ZWxsYSBrYXRhbG9nZW4gYXR0IGFudsOkbmRhcy4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRlYi4xOjE4MAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1zaG93Zm9ybWF0PT5JPGZvcm1hdD4iCittc2dzdHIgIkI8LS1zaG93Zm9ybWF0PT5JPGZvcm1hdD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MTg1IGRwa2ctcXVlcnkuMToxMjcKK21zZ2lkICIiCisiVGhpcyBvcHRpb24gaXMgdXNlZCB0byBzcGVjaWZ5IHRoZSBmb3JtYXQgb2YgdGhlIG91dHB1dCBCPC0tc2hvdz4gd2lsbCAiCisicHJvZHVjZS4gVGhlIGZvcm1hdCBpcyBhIHN0cmluZyB0aGF0IHdpbGwgYmUgb3V0cHV0IGZvciBlYWNoIHBhY2thZ2UgbGlzdGVkLiIKK21zZ3N0ciAiIgorIkZsYWdnYW4gYW52w6RuZHMgZsO2ciBhdHQgYW5nZSBmb3JtYXRldCBww6UgdXRkYXRhIHNvbSBza2FwYXMgYXYgQjwtLXNob3c+LiAiCisiRm9ybWF0ZXQgw6RyIGVuIHN0csOkbmcgc29tIG1hdGFzIHV0IGbDtnIgdmFyamUgcGFrZXQgaSBsaXN0YW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjE5NAorbXNnaWQgIiIKKyJUaGUgc3RyaW5nIG1heSByZWZlcmVuY2UgYW55IHN0YXR1cyBmaWVsZCB1c2luZyB0aGUgXCIke0k8ZmllbGQtbmFtZT59XCIgIgorImZvcm0sIGEgbGlzdCBvZiB0aGUgdmFsaWQgZmllbGRzIGNhbiBiZSBlYXNpbHkgcHJvZHVjZWQgdXNpbmcgQjwtST4gb24gdGhlICIKKyJzYW1lIHBhY2thZ2UuIEEgY29tcGxldGUgZXhwbGFuYXRpb24gb2YgdGhlIGZvcm1hdHRpbmcgb3B0aW9ucyAoaW5jbHVkaW5nICIKKyJlc2NhcGUgc2VxdWVuY2VzIGFuZCBmaWVsZCB0YWJiaW5nKSBjYW4gYmUgZm91bmQgaW4gdGhlIGV4cGxhbmF0aW9uIG9mIHRoZSAiCisiQjwtLXNob3dmb3JtYXQ+IG9wdGlvbiBpbiBCPGRwa2ctcXVlcnk+KDEpLiIKK21zZ3N0ciAiIgorIlN0csOkbmdlbiBrYW4gcmVmZXJlcmEgdGlsbCBzdGF0dXNmw6RsdCBww6UgZm9ybWVuIFwiJHtJPGZpZWxkLW5hbWU+fVwiLCBlbiAiCisiZsO2cnRlY2tuaW5nIMO2dmVyIGdpbHRpZ2EgZsOkbHQga2FuIGVua2VsdCBza2FwYXMgZ2Vub20gYXR0IGFudsOkbmRhIEI8LUk+IHDDpSAiCisic2FtbWEgcGFrZXQuIEVuIGZ1bGxzdMOkbmRpZyBmw7Zya2xhcmluZyBhdiBmb3JtYXRlcmluZ3NmbGFnZ29ybmEgKGlua2x1c2l2ZSAiCisiZXJzw6R0dG5pbmdzc2VrdmVuc2VyIG9jaCBmw6RsdHRhYnVsZXJpbmcpIGZpbm5zIGkgZsO2cmtsYXJpbmdlbiBmw7ZyIGZsYWdnYW4gIgorIkI8LS1zaG93Zm9ybWF0PiBpIEI8ZHBrZy1xdWVyeT4oMSkuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjE5NgorbXNnaWQgIlRoZSBkZWZhdWx0IGZvciB0aGlzIGZpZWxkIGlzIFwiJHtQYWNrYWdlfVxcZXQke1ZlcnNpb259XFxlblwiLiIKK21zZ3N0ciAiRsO2cnZhbGV0IGbDtnIgZsOkbHRldCDDpHIgXCIke1BhY2thZ2V9XFxldCR7VmVyc2lvbn1cXGVuXCIuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToxOTYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC16Pkk8Y29tcHJlc3MtbGV2ZWw+IgorbXNnc3RyICJCPC16Pkk8a29tcHJpbWVyaW5nc25pdsOlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToyMDAKK21zZ2lkICIiCisiU3BlY2lmeSB3aGljaCBjb21wcmVzc2lvbiBsZXZlbCB0byB1c2Ugb24gdGhlIGNvbXByZXNzb3IgYmFja2VuZCwgd2hlbiAiCisiYnVpbGRpbmcgYSBwYWNrYWdlIChkZWZhdWx0IGlzIDkgZm9yIGd6aXAgYW5kIGJ6aXAyLCA2IGZvciB4eiBhbmQgbHptYSkuIgorbXNnc3RyICIiCisiQW5nZSB2aWxrZW4ga29tcHJpbWVyaW5nc25pdsOlIHNvbSBza2FsbCBhbnbDpG5kYXMgaSBrb21wcmltZXJpbmdzZnVua3Rpb25lbiAiCisibsOkciBldHQgcGFrZXQgYnlnZ3MgKHN0YW5kYXJkIMOkciA5IGbDtnIgZ3ppcCBvY2ggYnppcDIsIDYgZsO2ciB4eiBvY2ggbHptYSkuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToyMDAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1aPkk8Y29tcHJlc3MtdHlwZT4iCittc2dzdHIgIkI8LVo+STxrb21wcmltZXJpbmdzdHlwPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToyMDUKK21zZ2lkICIiCisiU3BlY2lmeSB3aGljaCBjb21wcmVzc2lvbiB0eXBlIHRvIHVzZSB3aGVuIGJ1aWxkaW5nIGEgcGFja2FnZS4gQWxsb3dlZCAiCisidmFsdWVzIGFyZSBJPGd6aXA+LCBJPHh6PiwgSTxiemlwMj4sIEk8bHptYT4sIGFuZCBJPG5vbmU+IChkZWZhdWx0IGlzICIKKyJJPGd6aXA+KS4iCittc2dzdHIgIiIKKyJBbmdlIHZpbGtlbiBrb21wcmltZXJpbmdzdHlwIHNvbSBza2FsbCBhbnbDpG5kYXMgbsOkciBldHQgcGFrZXQgYnlnZ3MuICIKKyJUaWxsw6V0bmEgdsOkcmRlbiDDpHIgSTxnemlwPiwgSTx4ej4sIEk8YnppcDI+LCBJPGx6bWE+IG9jaCBJPG5vbmU+IChmw7ZydmFsIMOkciAiCisiSTxnemlwPikuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToyMDUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tbmV3PiIKK21zZ3N0ciAiQjwtLW5ldz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MjEwCittc2dpZCAiIgorIkVuc3VyZXMgdGhhdCBCPGRwa2ctZGViPiBidWlsZHMgYSBgbmV3JyBmb3JtYXQgYXJjaGl2ZS4gVGhpcyBpcyB0aGUgZGVmYXVsdC4iCittc2dzdHIgIiIKKyJGw7Zyc8Oka3JhciBhdHQgQjxkcGtnLWRlYj4gYnlnZ2VyIGV0dCBhcmtpdiBpIFwibnl0dFwiIGZvcm1hdC4gIERldHRhIMOkciAiCisiZsO2cnZhbC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRlYi4xOjIxMAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1vbGQ+IgorbXNnc3RyICJCPC0tb2xkPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToyMTgKK21zZ2lkICIiCisiRm9yY2VzIEI8ZHBrZy1kZWI+IHRvIGJ1aWxkIGFuIGBvbGQnIGZvcm1hdCBhcmNoaXZlLiBUaGlzIG9sZCBhcmNoaXZlIGZvcm1hdCAiCisiaXMgbGVzcyBlYXNpbHkgcGFyc2VkIGJ5IG5vbi1EZWJpYW4gdG9vbHMgYW5kIGlzIG5vdyBvYnNvbGV0ZTsgaXRzIG9ubHkgdXNlICIKKyJpcyB3aGVuIGJ1aWxkaW5nIHBhY2thZ2VzIHRvIGJlIHBhcnNlZCBieSB2ZXJzaW9ucyBvZiBkcGtnIG9sZGVyIHRoYW4gIgorIjAuOTMuNzYgKFNlcHRlbWJlciAxOTk1KSwgd2hpY2ggd2FzIHJlbGVhc2VkIGFzIGkzODYgYS5vdXQgb25seS4iCittc2dzdHIgIiIKKyJUdmluZ2FyIEI8ZHBrZy1kZWI+IGF0dCBieWdnYSBldHQgYXJraXYgaSBcImdhbW1hbHRcIiBmb3JtYXQuIERldCBnYW1sYSAiCisiYXJraXZmb3JtYXRldCDDpHIgbWVyIHN2w6VydG9sa2F0IGF2IGlja2UtRGViaWFudmVya3R5ZyBvY2ggw6RyIG51IHV0Z8OlbmdldDsgIgorImRlc3MgZW5kYSBhbnbDpG5kbmluZ3NvbXLDpWRlIMOkciBmw7ZyIGF0dCBieWdnYSBwYWtldCBzb20gc2thbGwgdG9sa2FzIGF2ICIKKyJ2ZXJzaW9uZXIgYXYgZHBrZyDDpGxkcmUgw6RuIDAuOTMuNzYgKHNlcHRlbWJlciAxOTk1KSwgdmlsa2EgZW5kYXN0IHNsw6RwcHRlcyAiCisic29tIGkzODYtYS5vdXQuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToyMTgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tbm9jaGVjaz4iCittc2dzdHIgIkI8LS1ub2NoZWNrPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToyMjQKK21zZ2lkICIiCisiSW5oaWJpdHMgQjxkcGtnLWRlYiAtLWJ1aWxkPidzIHVzdWFsIGNoZWNrcyBvbiB0aGUgcHJvcG9zZWQgY29udGVudHMgb2YgYW4gIgorImFyY2hpdmUuIFlvdSBjYW4gYnVpbGQgYW55IGFyY2hpdmUgeW91IHdhbnQsIG5vIG1hdHRlciBob3cgYnJva2VuLCB0aGlzIHdheS4iCittc2dzdHIgIiIKKyJGw7ZyaGluZHJhciBCPGRwa2ctZGViIC0tYnVpbGQgcz4gbm9ybWFsYSB0ZXN0ZXIgcMOlIGRldCBmw7ZyZXNsYWduYSBpbm5laMOlbGxldCAiCisiaSBhcmtpdmV0LiBEdSBrYW4gYnlnZ2Egdmlsa2V0IGFya2l2IGR1IMOkbiB2aWxsLCBvYXZzZXR0IGh1ciB0cmFzaWd0LCBww6UgZGV0ICIKKyJow6RyIHPDpHR0LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGViLjE6MjI0IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjU1CisjLCBuby13cmFwCittc2dpZCAiQjwtdj4sIEI8LS12ZXJib3NlPiIKK21zZ3N0ciAiQjwtdj4sIEI8LS12ZXJib3NlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToyMjgKK21zZ2lkICIiCisiRW5hYmxlcyB2ZXJib3NlIG91dHB1dC4gVGhpcyBjdXJyZW50bHkgb25seSBhZmZlY3RzIEI8LS1leHRyYWN0PiBtYWtpbmcgaXQgIgorImJlaGF2ZSBsaWtlIEI8LS12ZXh0cmFjdD4uIgorbXNnc3RyICIiCisiQWt0aXZlcmFyIHByYXRzYW0gdXRkYXRhLiBQw6V2ZXJrYXIgZsO2ciBuw6RydmFyYW5kZSBiYXJhIEI8LS1leHRyYWN0Piwgdmlsa2V0ICIKKyJmw6VyIGRldCBhdHQgYmV0ZSBzaWcgc29tIEI8LS12ZXh0cmFjdD4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kZWIuMToyMjgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1EPiwgQjwtLWRlYnVnPiIKK21zZ3N0ciAiQjwtRD4sIEI8LS1kZWJ1Zz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MjMxCittc2dpZCAiRW5hYmxlcyBkZWJ1Z2dpbmcgb3V0cHV0LiBUaGlzIGlzIG5vdCB2ZXJ5IGludGVyZXN0aW5nLiIKK21zZ3N0ciAiQWt0aXZlcmFyIGZlbHPDtmtuaW5nc3V0ZGF0YS4gRGVubmEgw6RyIGludGUgc3BlY2llbGx0IGludHJlc3NhbnQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjIzNworbXNnaWQgIiIKKyJJZiBzZXQsIEI8ZHBrZy1kZWI+IHdpbGwgdXNlIGl0IGFzIHRoZSBkaXJlY3RvcnkgaW4gd2hpY2ggdG8gY3JlYXRlICIKKyJ0ZW1wb3JhcnkgZmlsZXMgYW5kIGRpcmVjdG9yaWVzLiIKK21zZ3N0ciAiIgorIk9tIHNhdHQgc8OlIGtvbW1lciBCPGRwa2ctZGViPiBhdHQgYW52w6RuZGEgZGV0IHNvbSBrYXRhbG9nZW4gZMOkciB0ZW1wb3LDpHJhICIKKyJmaWxlciBvY2gga2F0YWxvZ2VyIHNrYXBhcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGViLjE6MjQzCittc2dpZCAiIgorIkI8ZHBrZy1kZWIgLUk+IEk8cGFja2FnZTE+QjwuZGViPiBJPHBhY2thZ2UyPkI8LmRlYj4gZG9lcyB0aGUgd3JvbmcgdGhpbmcuIgorbXNnc3RyICJCPGRwa2ctZGViIC1JPiBJPHBha2V0MT5CPC5kZWI+IEk8cGFrZXQyPkI8LmRlYj4gZ8O2ciBmZWwuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRlYi4xOjI1MQorbXNnaWQgIiIKKyJUaGVyZSBpcyBubyBhdXRoZW50aWNhdGlvbiBvbiBCPC5kZWI+IGZpbGVzOyBpbiBmYWN0LCB0aGVyZSBpc24ndCBldmVuIGEgIgorInN0cmFpZ2h0Zm9yd2FyZCBjaGVja3N1bS4gIChIaWdoZXIgbGV2ZWwgdG9vbHMgbGlrZSBBUFQgc3VwcG9ydCAiCisiYXV0aGVudGljYXRpbmcgQjwuZGViPiBwYWNrYWdlcyByZXRyaWV2ZWQgZnJvbSBhIGdpdmVuIHJlcG9zaXRvcnksIGFuZCBtb3N0ICIKKyJwYWNrYWdlcyBub3dhZGF5cyBwcm92aWRlIGFuIG1kNXN1bSBjb250cm9sIGZpbGUgZ2VuZXJhdGVkIGJ5IGRlYmlhbi9ydWxlcy4gIgorIlRob3VnaCB0aGlzIGlzIG5vdCBkaXJlY3RseSBzdXBwb3J0ZWQgYnkgdGhlIGxvd2VyIGxldmVsIHRvb2xzLikiCittc2dzdHIgIiIKKyJEZXQgZmlubnMgaW50ZSBuw6Vnb24gYXV0ZW50aXNlcmluZyBhdiBCPC5kZWI+LWZpbGVyLiBGYWt0aXNrdCBmaW5ucyBkZXQgaW50ZSAiCisiZW5zIG7DpWdvbiBlbmtlbCBrb250cm9sbHN1bW1hLiAoVmVya3R5ZyBzb20gYXJiZXRhciBww6UgZW4gaMO2Z3JlIG5pdsOlLCBzb20gIgorIkFQVCwgc3TDtmRlciBhdXRlbnRpc2VyaW5nIGF2IEI8LmRlYj4tcGFrZXQgc29tIGjDpG10YXMgZnLDpW4gZXR0IGdpdmV0IGFya2l2LCAiCisib2NoIGRlIGZsZXN0YSBwYWtldCBoYXIgbnUgZsO2ciB0aWRlbiBlbiBtZDVzdW0ta29udHJvbGxmaWwgc29tIHNrYXBhcyBhdiAiCisiZGViaWFuL3J1bGVzLiBGaWxlbiBzdMO2ZHMgZG9jayBpbnRlIGRpcmVrdCBhdiBsw6Vnbml2w6V2ZXJrdHlnZW4uKSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToyNTgKK21zZ2lkICIiCisiRG8gbm90IGF0dGVtcHQgdG8gdXNlIGp1c3QgQjxkcGtnLWRlYj4gdG8gaW5zdGFsbCBzb2Z0d2FyZSEgWW91IG11c3QgdXNlICIKKyJCPGRwa2c+IHByb3BlciB0byBlbnN1cmUgdGhhdCBhbGwgdGhlIGZpbGVzIGFyZSBjb3JyZWN0bHkgcGxhY2VkIGFuZCB0aGUgIgorInBhY2thZ2UncyBzY3JpcHRzIHJ1biBhbmQgaXRzIHN0YXR1cyBhbmQgY29udGVudHMgcmVjb3JkZWQuIgorbXNnc3RyICIiCisiRsO2cnPDtmsgaW50ZSBhbnbDpG5kYSBiYXJhIEI8ZHBrZy1kZWI+IGbDtnIgYXR0IGluc3RhbGxlcmEgcHJvZ3JhbXZhcmEhIER1ICIKKyJtw6VzdGUgYW52w6RuZGEgbm9ybWFsYSBCPGRwa2c+IGbDtnIgYXR0IHNlIHRpbGwgYXR0IGFsbGEgZmlsZXIgbMOkZ2dzIHDDpSAiCisia29ycmVrdCBwbGF0cyBvY2ggYXR0IHBha2V0ZXRzIHNrcmlwdCBrw7ZycyBvY2ggZGVzcyBzdGF0dXMgb2NoIGlubmVow6VsbCAiCisic3BhcmFzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kZWIuMToyNjQKK21zZ2lkICJCPGRlYj4oNSksIEI8ZGViLWNvbnRyb2w+KDUpLCBCPGRwa2c+KDEpLCBCPGRzZWxlY3Q+KDEpLiIKK21zZ3N0ciAiQjxkZWI+KDUpLCBCPGRlYi1jb250cm9sPig1KSwgQjxkcGtnPigxKSwgQjxkc2VsZWN0PigxKS4iCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLWRpdmVydC44OjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLWRpdmVydCIKK21zZ3N0ciAiZHBrZy1kaXZlcnQiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6NAorbXNnaWQgImRwa2ctZGl2ZXJ0IC0gb3ZlcnJpZGUgYSBwYWNrYWdlJ3MgdmVyc2lvbiBvZiBhIGZpbGUiCittc2dzdHIgImRwa2ctZGl2ZXJ0IC0gw7Z2ZXJzdHlyIGV0dCBwYWtldHMgdmVyc2lvbiBhdiBlbiBmaWwiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6OQorbXNnaWQgIkI8ZHBrZy1kaXZlcnQ+IFtJPG9wdGlvbj4uLi5dIEk8Y29tbWFuZD4iCittc2dzdHIgIkI8ZHBrZy1kaXZlcnQ+IFtJPGZsYWdnYT4uLi5dIEk8w6V0Z8OkcmQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjEzCittc2dpZCAiIgorIkI8ZHBrZy1kaXZlcnQ+IGlzIHRoZSB1dGlsaXR5IHVzZWQgdG8gc2V0IHVwIGFuZCB1cGRhdGUgdGhlIGxpc3Qgb2YgIgorImRpdmVyc2lvbnMuIgorbXNnc3RyICIiCisiQjxkcGtnLWRpdmVydD4gw6RyIHZlcmt0eWdldCBzb20gYW52w6RuZHMgZsO2ciBhdHQgc3TDpGxsYSBpbiBvY2ggdXBwZGF0ZXJhICIKKyJsaXN0YW4gw7Z2ZXIgb21kaXJpZ2VyaW5nYXIuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjIzCittc2dpZCAiIgorIkZpbGUgSTxkaXZlcnNpb25zPiBhcmUgYSB3YXkgb2YgZm9yY2luZyBCPGRwa2c+KDEpICBub3QgdG8gaW5zdGFsbCBhIGZpbGUgIgorImludG8gaXRzIGxvY2F0aW9uLCBidXQgdG8gYSBJPGRpdmVydGVkPiBsb2NhdGlvbi4gRGl2ZXJzaW9ucyBjYW4gYmUgdXNlZCAiCisidGhyb3VnaCB0aGUgRGViaWFuIHBhY2thZ2Ugc2NyaXB0cyB0byBtb3ZlIGEgZmlsZSBhd2F5IHdoZW4gaXQgY2F1c2VzIGEgIgorImNvbmZsaWN0LiBTeXN0ZW0gYWRtaW5pc3RyYXRvcnMgY2FuIGFsc28gdXNlIGl0IHRvIG92ZXJyaWRlIHNvbWUgcGFja2FnZSdzICIKKyJjb25maWd1cmF0aW9uIGZpbGUsIG9yIHdoZW5ldmVyIHNvbWUgZmlsZXMgKHdoaWNoIGFyZW4ndCBtYXJrZWQgYXMgIgorIidjb25mZmlsZXMnKSBuZWVkIHRvIGJlIHByZXNlcnZlZCBieSBkcGtnLCB3aGVuIGluc3RhbGxpbmcgYSBuZXdlciB2ZXJzaW9uICIKKyJvZiBhIHBhY2thZ2Ugd2hpY2ggY29udGFpbnMgdGhvc2UgZmlsZXMuIgorbXNnc3RyICIiCisiRmlsZW4gSTxkaXZlcnNpb25zPiDDpHIgZXR0IHPDpHR0IGF0dCB0dmluZ2EgQjxkcGtnPigxKSBhdHQgaW50ZSBpbnN0YWxsZXJhIGVuICIKKyJmaWwgcMOlIHNpbiBwbGF0cywgdXRhbiBww6UgZW4gSTxvbWRpcmlnZXJhZD4gcGxhdHMuIE9tZGlyaWdlcmluZ2FyIGthbiAiCisiYW52w6RuZGFzIGkgc2tyaXB0IGkgRGViaWFucGFrZXQgZsO2ciBhdHQgZmx5dHRhIGJvcnQgZW4gZmlsIG7DpHIgZGVuIG9yc2FrYXIgIgorImVuIGtvbmZsaWt0LiBTeXN0ZW1hZG1pbmlzdHJhdMO2cmVyIGthbiBvY2tzw6UgYW52w6RuZGEgZGV0IGbDtnIgYXR0IMO2dmVyc3R5cmEgIgorIm7DpWdyYSBwYWtldHMga29uZmlndXJhdGlvbnNmaWxlciwgZWxsZXIgbsOkciBuw6VncmEgZmlsZXIgKHNvbSBpbnRlIG1hcmtlcmF0cyAiCisic29tIGtvbmZpZ3VyYXRpb25zZmlsZXIpIG3DpXN0ZSBiaWJlaMOlbGxhcyBhdiBkcGtnIG7DpHIgZW4gbnlhcmUgdmVyc2lvbiBhdiAiCisiZXR0IHBha2V0IHNvbSBpbm5laMOlbGxlciBkZSBmaWxlcm5hIGluc3RhbGxlcmFzLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGl2ZXJ0Ljg6MjUKKyMsIG5vLXdyYXAKK21zZ2lkICJbQjwtLWFkZD5dIEk8ZmlsZT4iCittc2dzdHIgIltCPC0tYWRkPl0gSTxmaWw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjI4Cittc2dpZCAiQWRkIGEgZGl2ZXJzaW9uIGZvciBJPGZpbGU+LiIKK21zZ3N0ciAiTMOkZ2cgdGlsbCBlbiBvbWRpcmlnZXJpbmcgZsO2ciBJPGZpbD4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kaXZlcnQuODoyOCBkcGtnLXN0YXRvdmVycmlkZS44OjM1CisjLCBuby13cmFwCittc2dpZCAiQjwtLXJlbW92ZT5JPCBmaWxlPiIKK21zZ3N0ciAiQjwtLXJlbW92ZT5JPCBmaWw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjMxCittc2dpZCAiUmVtb3ZlIGEgZGl2ZXJzaW9uIGZvciBJPGZpbGU+LiIKK21zZ3N0ciAiVGEgYm9ydCBlbiBvbWRpcmlnZXJpbmcgZsO2ciBJPGZpbD4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kaXZlcnQuODozMQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1saXN0Pkk8IGdsb2ItcGF0dGVybj4iCittc2dzdHIgIkI8LS1saXN0Pkk8IGZpbG5hbW5zbcO2bnN0ZXI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjM0Cittc2dpZCAiTGlzdCBkaXZlcnNpb25zIG1hdGNoaW5nIEk8Z2xvYi1wYXR0ZXJuPi4iCittc2dzdHIgIlZpc2Egb21kaXJpZ2VyaW5nYXIgc29tIG1hdGNoYXIgSTxzw7ZrbcO2bnN0ZXI+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGl2ZXJ0Ljg6MzQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tbGlzdHBhY2thZ2U+STwgZmlsZT4iCittc2dzdHIgIkI8LS1saXN0cGFja2FnZT5JPCBmaWw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjM4Cittc2dpZCAiIgorIlByaW50IHRoZSBuYW1lIG9mIHRoZSBwYWNrYWdlIHRoYXQgZGl2ZXJ0cyBJPGZpbGU+LiAgUHJpbnRzIExPQ0FMIGlmIEk8ZmlsZT4gIgorImlzIGxvY2FsbHkgZGl2ZXJ0ZWQgYW5kIG5vdGhpbmcgaWYgSTxmaWxlPiBpcyBub3QgZGl2ZXJ0ZWQuIgorbXNnc3RyICIiCisiVmlzYSBuYW1uZXQgcMOlIHBha2V0ZXQgc29tIG9tZGlyaWdlcmFyIEk8ZmlsPi4gU3ZhcmFyIExPQ0FMIG9tIEk8ZmlsPiBoYXIgIgorIm9tZGlyaWdlcmF0cyBsb2thbHQgb2NoIGluZ2VudGluZyBvbSBJPGZpbD4gaW50ZSDDpHIgb21kaXJpZ2VyYWQuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kaXZlcnQuODozOAorIywgbm8td3JhcAorbXNnaWQgIkI8LS10cnVlbmFtZT5JPCBmaWxlPiIKK21zZ3N0ciAiQjwtLXRydWVuYW1lPkk8IGZpbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6NDEKK21zZ2lkICJQcmludCB0aGUgcmVhbCBuYW1lIGZvciBhIGRpdmVydGVkIGZpbGUuIgorbXNnc3RyICJWaXNhIGRldCByaWt0aWdhIG5hbW5ldCBww6UgZW4gb21kaXJpZ2VyYWQgZmlsLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGl2ZXJ0Ljg6NDMgZHBrZy1zdGF0b3ZlcnJpZGUuODo1MiBkc2VsZWN0LjE6NDQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMjgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tYWRtaW5kaXI+STwgZGlyZWN0b3J5PiIKK21zZ3N0ciAiQjwtLWFkbWluZGlyPkk8IGthdGFsb2c+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjQ2Cittc2dpZCAiIgorIlNldCB0aGUgZHBrZyBkYXRhIGRpcmVjdG9yeSB0byBJPGRpcmVjdG9yeT4gKGRlZmF1bHQ6IEk8L3Zhci9saWIvZHBrZz4pLiIKK21zZ3N0ciAiU3TDpGxsIGRwa2c6cyBkYXRha2F0YWxvZyB0aWxsIEk8a2F0YWxvZz4gKHN0YW5kYXJkOiBJPC92YXIvbGliL2Rwa2c+KS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRpdmVydC44OjQ2CisjLCBuby13cmFwCittc2dpZCAiQjwtLWRpdmVydD5JPCBkaXZlcnQtdG8+IgorbXNnc3RyICJCPC0tZGl2ZXJ0Pkk8IG9tZGlyaWdlcmEtdGlsbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6NTAKK21zZ2lkICIiCisiSTxkaXZlcnQtdG8+IGlzIHRoZSBsb2NhdGlvbiB3aGVyZSB0aGUgdmVyc2lvbnMgb2YgSTxmaWxlPiwgYXMgcHJvdmlkZWQgYnkgIgorIm90aGVyIHBhY2thZ2VzLCB3aWxsIGJlIGRpdmVydGVkLiIKK21zZ3N0ciAiIgorIkk8b21kaXJpZ2VyYS10aWxsPiDDpHIgcGxhdHNlbiBkw6RyIGRlIHZlcnNpb25lciBhdiBJPGZpbD4gc29tIHRpbGxoYW5kYWjDpWxscyAiCisiYXYgYW5kcmEgcGFrZXQga29tbWVyIG9tZGlyaWdlcmFzIHRpbGwuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kaXZlcnQuODo1MAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1sb2NhbD4iCittc2dzdHIgIkI8LS1sb2NhbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6NTYKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRoYXQgYWxsIHBhY2thZ2VzJyB2ZXJzaW9ucyBvZiB0aGlzIGZpbGUgYXJlIGRpdmVydGVkLiAgVGhpcyAiCisibWVhbnMsIHRoYXQgdGhlcmUgYXJlIG5vIGV4Y2VwdGlvbnMsIGFuZCB3aGF0ZXZlciBwYWNrYWdlIGlzIGluc3RhbGxlZCwgdGhlICIKKyJmaWxlIGlzIGRpdmVydGVkLiBUaGlzIGNhbiBiZSB1c2VkIGJ5IGFuIGFkbWluIHRvIGluc3RhbGwgYSBsb2NhbGx5IG1vZGlmaWVkICIKKyJ2ZXJzaW9uLiIKK21zZ3N0ciAiIgorIkFuZ2VyIGF0dCBhbGxhIHBha2V0cyB2ZXJzaW9uZXIgYXYgZGVubmEgZmlsIHNrYWxsIG9tZGlyaWdlcmFzLiBEZXQgaW5uZWLDpHIgIgorImF0dCBkZXQgaW50ZSBmaW5ucyBuw6VncmEgdW5kYW50YWcsIG9jaCBhdHQgb2F2c2V0dCB2aWxrZXQgcGFrZXQgc29tICIKKyJpbnN0YWxsZXJhcyBzw6Ugb21kaXJpZ2VyYXMgZmlsZW4uIERldHRhIGthbiBhbnbDpG5kYXMgYXYgZW4gYWRtaW5pc3RyYXTDtnIgZsO2ciAiCisiYXR0IGluc3RhbGxlcmEgZW4gbG9rYWx0IG1vZGlmaWVyYWQgdmVyc2lvbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRpdmVydC44OjU2CisjLCBuby13cmFwCittc2dpZCAiQjwtLXBhY2thZ2U+STwgcGFja2FnZT4iCittc2dzdHIgIkI8LS1wYWNrYWdlPkk8IHBha2V0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo2MQorbXNnaWQgIiIKKyJJPHBhY2thZ2U+IGlzIHRoZSBuYW1lIG9mIGEgcGFja2FnZSB3aG9zZSBjb3B5IG9mIEk8ZmlsZT4gd2lsbCBub3QgYmUgIgorImRpdmVydGVkLiBpLmUuIEk8ZmlsZT4gd2lsbCBiZSBkaXZlcnRlZCBmb3IgYWxsIHBhY2thZ2VzIGV4Y2VwdCBJPHBhY2thZ2U+LiIKK21zZ3N0ciAiIgorIkk8cGFrZXQ+IMOkciBuYW1uZXQgcMOlIGV0dCBwYWtldCB2YXJzIGtvcGlhIGF2IEk8ZmlsPiBpbnRlIGtvbW1lciBhdHQgIgorIm9tZGlyaWdlcmFzLCBkdnMuIEk8ZmlsPiBrb21tZXIgb21kaXJpZ2VyYXMgZsO2ciBhbGxhIHBha2V0IGbDtnJ1dG9tIEk8cGFrZXQ+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGl2ZXJ0Ljg6NjEgZHBrZy1zdGF0b3ZlcnJpZGUuODo2NCB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzUwCisjLCBuby13cmFwCittc2dpZCAiQjwtLXF1aWV0PiIKK21zZ3N0ciAiQjwtLXF1aWV0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo2NAorbXNnaWQgIlF1aWV0IG1vZGUsIGkuZS4gbm8gdmVyYm9zZSBvdXRwdXQuIgorbXNnc3RyICJUeXN0IGzDpGdlLCBkdnMuIGluZ2VuIHByYXRzYW0gdXRkYXRhLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGl2ZXJ0Ljg6NjQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tcmVuYW1lPiIKK21zZ3N0ciAiQjwtLXJlbmFtZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6NjgKK21zZ2lkICIiCisiQWN0dWFsbHkgbW92ZSB0aGUgZmlsZSBhc2lkZSAob3IgYmFjaykuIEI8ZHBrZy1kaXZlcnQ+IHdpbGwgYWJvcnQgb3BlcmF0aW9uICIKKyJpbiBjYXNlIHRoZSBkZXN0aW5hdGlvbiBmaWxlIGFscmVhZHkgZXhpc3RzLiIKK21zZ3N0ciAiIgorIkZseXR0YSBmYWt0aXNrdCBmaWxlbiDDpXQgc2lkYW4gKGVsbGVyIHRpbGxiYWthKS4gQjxkcGtnLWRpdmVydD4ga29tbWVyIGF0dCAiCisiYXZicnl0YSBrw7ZybmluZ2VuIG9tIGRlc3RpbmF0aW9uc2ZpbGVuIHJlZGFuIGV4aXN0ZXJhci4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWRpdmVydC44OjY4CisjLCBuby13cmFwCittc2dpZCAiQjwtLXRlc3Q+IgorbXNnc3RyICJCPC0tdGVzdD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6NzEKK21zZ2lkICJUZXN0IG1vZGUsIGkuZS4gZG9uJ3QgYWN0dWFsbHkgcGVyZm9ybSBhbnkgY2hhbmdlcywganVzdCBkZW1vbnN0cmF0ZS4iCittc2dzdHIgIiIKKyJUZXN0bMOkZ2UsIGR2cy4gdXRmw7ZyIGluZ2EgZmFrdGlza2Egw6RuZHJpbmdhciwgYmFyYSB2aXNhIHZhZCBzb20gc2t1bGxlIGjDpG5kYS4iCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLWRpdmVydC44Ojc4CisjLCBuby13cmFwCittc2dpZCAiTk9URVMiCittc2dzdHIgIkFOVEVDS05JTkdBUiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo4MgorbXNnaWQgIiIKKyJXaGVuIGFkZGluZywgZGVmYXVsdCBpcyBCPC0tbG9jYWw+IGFuZCBCPC0tZGl2ZXJ0PiBJPG9yaWdpbmFsPkI8LmRpc3RyaWI+LiAiCisiV2hlbiByZW1vdmluZywgQjwtLXBhY2thZ2U+IG9yIEI8LS1sb2NhbD4gYW5kIEI8LS1kaXZlcnQ+IG11c3QgbWF0Y2ggaWYgIgorInNwZWNpZmllZC4iCittc2dzdHIgIiIKKyJWaWQgdGlsbMOkZ2cgw6RyIHN0YW5kYXJkIEI8LS1sb2NhbD4gb2NoIEI8LS1kaXZlcnQ+IEk8b3JpZ2luYWw+QjwuZGlzdHJpYj4uICIKKyJWaWQgYm9ydHRhZ25pbmcgbcOlc3RlIEI8LS1wYWNrYWdlPiBlbGxlciBCPC0tbG9jYWw+IG9jaCBCPC0tZGl2ZXJ0PiBtYXRjaGEgIgorIm9tIGRlIGFuZ2VzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo4NAorbXNnaWQgIkRpcmVjdG9yaWVzIGNhbid0IGJlIGRpdmVydGVkIHdpdGggQjxkcGtnLWRpdmVydD4uIgorbXNnc3RyICJLYXRhbG9nZXIga2FuIGludGUgb21kaXJpZ2VyYXMgbWVkIEI8ZHBrZy1kaXZlcnQ+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo5MAorbXNnaWQgIiIKKyJDYXJlIHNob3VsZCBiZSB0YWtlbiB3aGVuIGRpdmVydGluZyBzaGFyZWQgbGlicmFyaWVzLCBCPGxkY29uZmlnPig4KSAgIgorImNyZWF0ZXMgYSBzeW1ib2xpYyBsaW5rIGJhc2VkIG9uIHRoZSBEVF9TT05BTUUgZmllbGQgZW1iZWRkZWQgaW4gdGhlICIKKyJsaWJyYXJ5LiAgQmVjYXVzZSBsZGNvbmZpZyBkb2Vzbid0IGhvbm91ciBkaXZlcnRzIChvbmx5IGRwa2cgZG9lcyksIHRoZSAiCisic3ltbGluayBtYXkgZW5kIHVwIHBvaW50aW5nIGF0IHRoZSBkaXZlcnRlZCBsaWJyYXJ5LCBpZiBhIGRpdmVydGVkIGxpYnJhcnkgIgorImhhcyB0aGUgc2FtZSBTT05BTUUgYXMgdGhlIHVuZGl2ZXJ0ZWQgb25lLiIKK21zZ3N0ciAiIgorIlNlIHVwcCBuw6RyIGR1IG9tZGlyaWdlcmFyIGRlbGFkZSBiaWJsaW90ZWsuIEI8bGRjb25maWc+KDgpIHNrYXBhciBlbiAiCisic3ltYm9saXNrIGzDpG5rIGJhc2VyYWQgcMOlIERUX1NPTkFNRS1mw6RsdGV0IHNvbSDDpHIgaW5ieWdndCBpIGJpYmxpb3Rla2V0LiAiCisiRWZ0ZXJzb20gbGRjb25maWcgaW50ZSBmw7ZsamVyIG9tZGlyaWdlcmluZ2FyIChiYXJhIGRwa2cgZ8O2ciBkZXQpIGthbiBkZW4gIgorInN5bWJvbGlza2EgbMOkbmtlbiBrb21tYSBhdHQgcGVrYSBww6UgZGV0IG9tZGlyaWdlcmFkZSBiaWJsaW90ZWtldCBvbSBldHQgIgorIm9tZGlyaWdlcmF0IGJpYmxpb3RlayBoYXIgc2FtbWEgU09OQU1OIHNvbSBkZXQgZWogb21kaXJpZ2VyYWRlLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODo5NQorbXNnaWQgIiIKKyJUbyBkaXZlcnQgYWxsIGNvcGllcyBvZiBhIEk8L3Vzci9iaW4vZXhhbXBsZT4gdG8gSTwvdXNyL2Jpbi9leGFtcGxlLmZvbz4sIGkuIgorImUuIGRpcmVjdHMgYWxsIHBhY2thZ2VzIHByb3ZpZGluZyBJPC91c3IvYmluL2V4YW1wbGU+IHRvIGluc3RhbGwgaXQgYXMgSTwvIgorInVzci9iaW4vZXhhbXBsZS5mb28+LCBwZXJmb3JtaW5nIHRoZSByZW5hbWUgaWYgcmVxdWlyZWQ6IgorbXNnc3RyICIiCisiRsO2ciBhdHQgb21kaXJpZ2VyYSBhbGxhIGV4ZW1wbGFyIGF2IGVuIEk8L3Vzci9iaW4vZXhlbXBlbD4gdGlsbCBJPC91c3IvYmluLyIKKyJleGVtcGVsLmZvbz4sIGR2cy4gb21kaXJpZ2VyYSBzYW10bGlnYSBwYWtldCBzb20gdGlsbGhhbmRhaMOlbGxlciBJPC91c3IvYmluLyIKKyJleGVtcGVsPiBzw6UgYXR0IGRlIGluc3RhbGxlcmFyIGRlbiBzb20gSTwvdXNyL2Jpbi9leGVtcGVsLmZvbz4sIG9jaCB1dGbDtnIgIgorIm5hbW5ieXRldCBvbSBkZXQgYmVow7Z2czoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6OTcKK21zZ2lkICJkcGtnLWRpdmVydCAtLWRpdmVydCAvdXNyL2Jpbi9leGFtcGxlLmZvbyAtLXJlbmFtZSAvdXNyL2Jpbi9leGFtcGxlIgorbXNnc3RyICJkcGtnLWRpdmVydCAtLWRpdmVydCAvdXNyL2Jpbi9leGVtcGVsLmZvbyAtLXJlbmFtZSAvdXNyL2Jpbi9leGVtcGVsIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44Ojk5IGRwa2ctZGl2ZXJ0Ljg6MTA5Cittc2dpZCAiVG8gcmVtb3ZlIHRoYXQgZGl2ZXJzaW9uOiIKK21zZ3N0ciAiRsO2ciBhdHQgdGEgYm9ydCBvbWRpcmlnZXJpbmdlbjoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6MTAxCittc2dpZCAiZHBrZy1kaXZlcnQgLS1yZW5hbWUgLS1yZW1vdmUgL3Vzci9iaW4vZXhhbXBsZSIKK21zZ3N0ciAiZHBrZy1kaXZlcnQgLS1yZW5hbWUgLS1yZW1vdmUgL3Vzci9iaW4vZXhlbXBlbCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODoxMDUKK21zZ2lkICIiCisiVG8gZGl2ZXJ0IGFueSBwYWNrYWdlIHRyeWluZyB0byBpbnN0YWxsIEk8L3Vzci9iaW4vZXhhbXBsZT4gdG8gSTwvdXNyL2Jpbi8iCisiZXhhbXBsZS5mb28+LCBleGNlcHQgeW91ciBvd24gSTx3aWJibGU+IHBhY2thZ2U6IgorbXNnc3RyICIiCisiRsO2ciBhdHQgb21kaXJpZ2VyYSBzYW10bGlnYSBwYWtldCBzb20gZsO2cnPDtmtlciBpbnN0YWxsZXJhIEk8L3Vzci9iaW4vIgorImV4ZW1wZWw+IHRpbGwgSTwvdXNyL2Jpbi9leGVtcGVsLmZvbz4sIGbDtnJ1dG9tIGkgZGV0IGVnbmEgcGFrZXRldCBJPHdpYmJsZT46IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjEwNworbXNnaWQgIiIKKyJkcGtnLWRpdmVydCAtLXBhY2thZ2Ugd2liYmxlIC0tZGl2ZXJ0IC91c3IvYmluL2V4YW1wbGUuZm9vIC0tcmVuYW1lIC91c3IvYmluLyIKKyJleGFtcGxlIgorbXNnc3RyICIiCisiZHBrZy1kaXZlcnQgLS1wYWNrYWdlIHdpYmJsZSAtLWRpdmVydCAvdXNyL2Jpbi9leGVtcGVsLmZvbyAtLXJlbmFtZSAvdXNyL2Jpbi8iCisiZXhlbXBlbCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODoxMTEKK21zZ2lkICJkcGtnLWRpdmVydCAtLXBhY2thZ2Ugd2liYmxlIC0tcmVuYW1lIC0tcmVtb3ZlIC91c3IvYmluL2V4YW1wbGUiCittc2dzdHIgImRwa2ctZGl2ZXJ0IC0tcGFja2FnZSB3aWJibGUgLS1yZW5hbWUgLS1yZW1vdmUgL3Vzci9iaW4vZXhlbXBlbCIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZGl2ZXJ0Ljg6MTEzIGRwa2ctcXVlcnkuMToyMDUgZHBrZy1zdGF0b3ZlcnJpZGUuODo2OSBkcGtnLXRyaWdnZXIuMTo2MQorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM1NQorIywgbm8td3JhcAorbXNnaWQgIkI8RFBLR19BRE1JTkRJUj4iCittc2dzdHIgIkI8RFBLR19BRE1JTkRJUj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZGl2ZXJ0Ljg6MTE3IGRwa2ctcXVlcnkuMToyMDkgZHBrZy1zdGF0b3ZlcnJpZGUuODo3MyBkcGtnLXRyaWdnZXIuMTo2NQorbXNnaWQgIiIKKyJJZiBzZXQgYW5kIHRoZSBCPC0tYWRtaW5kaXI+IG9wdGlvbiBoYXMgbm90IGJlZW4gc3BlY2lmaWVkLCBpdCB3aWxsIGJlIHVzZWQgIgorImFzIHRoZSBkcGtnIGRhdGEgZGlyZWN0b3J5LiIKK21zZ3N0ciAiIgorIk9tIHNhdHQsIG9jaCBmbGFnZ2FuIEI8LS1hZG1pbmRpcj4gaW50ZSBoYXIgYW5naXZpdHMsIGFudsOkbmRzIHbDpHJkZXQgc29tICIKKyJkYXRha2F0YWxvZyBmw7ZyIGRwa2cuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjEyMQorbXNnaWQgIiIKKyJJZiBzZXQgYW5kIHRoZSBCPC0tbG9jYWw+IGFuZCBCPC0tcGFja2FnZT4gb3B0aW9ucyBoYXZlIG5vdCBiZWVuIHNwZWNpZmllZCwgIgorIkI8ZHBrZy1kaXZlcnQ+IHdpbGwgdXNlIGl0IGFzIHRoZSBwYWNrYWdlIG5hbWUuIgorbXNnc3RyICIiCisiT20gc2F0dCwgb2NoIGZsYWdnb3JuYSBCPC0tbG9jYWw+IG9jaCBCPC0tcGFja2FnZT4gaW50ZSBoYXIgYW5naXZpdHMsIGtvbW1lciAiCisiQjxkcGtnLWRpdmVydD4gYW52w6RuZGEgZGV0IHNvbSBwYWtldG5hbW4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1kaXZlcnQuODoxMjMKKyMsIG5vLXdyYXAKK21zZ2lkICJJPC92YXIvbGliL2Rwa2cvZGl2ZXJzaW9ucz4iCittc2dzdHIgIkk8L3Zhci9saWIvZHBrZy9kaXZlcnNpb25zPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODoxMjgKK21zZ2lkICIiCisiRmlsZSB3aGljaCBjb250YWlucyB0aGUgY3VycmVudCBsaXN0IG9mIGRpdmVyc2lvbnMgb2YgdGhlIHN5c3RlbS4gSXQgaXMgIgorImxvY2F0ZWQgaW4gdGhlIGRwa2cgYWRtaW5pc3RyYXRpb24gZGlyZWN0b3J5LCBhbG9uZyB3aXRoIG90aGVyIGZpbGVzICIKKyJpbXBvcnRhbnQgdG8gZHBrZywgc3VjaCBhcyBJPHN0YXR1cz4gb3IgSTxhdmFpbGFibGU+LiIKK21zZ3N0ciAiIgorIkZpbGVuIHNvbSBpbm5laMOlbGxlciBkZW4gYWt0dWVsbGEgbGlzdGFuIG1lZCBzeXN0ZW1ldHMgb21kaXJpZ2VyaW5nYXIuIERlbiAiCisiw6RyIHBsYWNlcmFkIGkgZHBrZzpzIGFkbWluaXN0cmF0aXZhIGthdGFsb2csIHRpbGxzYW1tYW5zIG1lZCBhbmRyYSBmaWxlciBzb20gIgorIsOkciB2aWt0aWdhIGbDtnIgZHBrZywgdGlsbCBleGVtcGVsIEk8c3RhdHVzPiBvY2ggSTxhdmFpbGFibGU+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1kaXZlcnQuODoxMzEKK21zZ2lkICIiCisiTm90ZTogQjxkcGtnLWRpdmVydD4gcHJlc2VydmVzIHRoZSBvbGQgY29weSBvZiB0aGlzIGZpbGUsIHdpdGggZXh0ZW5zaW9uIEk8LSIKKyJvbGQ+LCBiZWZvcmUgcmVwbGFjaW5nIGl0IHdpdGggdGhlIG5ldyBvbmUuIgorbXNnc3RyICIiCisiT2JzZXJ2ZXJhOiBCPGRwa2ctZGl2ZXJ0PiBiZWjDpWxsZXIgZGVuIGdhbWxhIHZlcnNpb25lbiBhdiBmaWxlbiwgbWVkICIKKyJmaWx0aWxsw6RnZ2V0IEk8b2xkPiwgaW5uYW4gZGVuIGVyc8OkdHRlciBkZW4gbWVkIGRlbiBueWEuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWRpdmVydC44OjEzNyB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDk2Cittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDE5OTUgSWFuIEphY2tzb24iCittc2dzdHIgIlVwcGhvdnNyw6R0dHNza3lkZGF0IMKpIDE5OTUgSWFuIEphY2tzb24uIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6MQorIywgbm8td3JhcAorbXNnaWQgImRwa2ctZ2VuY2hhbmdlcyIKK21zZ3N0ciAiZHBrZy1nZW5jaGFuZ2VzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMTo0Cittc2dpZCAiZHBrZy1nZW5jaGFuZ2VzIC0gZ2VuZXJhdGUgRGViaWFuIC5jaGFuZ2VzIGZpbGVzIgorbXNnc3RyICJkcGtnLWdlbmNoYW5nZXMgLSBza2FwYSAuY2hhbmdlcy1maWxlciBmw7ZyIERlYmlhbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6OAorbXNnaWQgIkI8ZHBrZy1nZW5jaGFuZ2VzPiBbSTxvcHRpb24+Li4uXSIKK21zZ3N0ciAiQjxkcGtnLWdlbmNoYW5nZXM+IFtJPGZsYWdnYT4uLi5dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMToxNgorbXNnaWQgIiIKKyJCPGRwa2ctZ2VuY2hhbmdlcz4gcmVhZHMgaW5mb3JtYXRpb24gZnJvbSBhbiB1bnBhY2tlZCBhbmQgYnVpbHQgRGViaWFuICIKKyJzb3VyY2UgdHJlZSBhbmQgZnJvbSB0aGUgZmlsZXMgaXQgaGFzIGdlbmVyYXRlZCBhbmQgZ2VuZXJhdGVzIGEgRGViaWFuICIKKyJ1cGxvYWQgY29udHJvbCBmaWxlIChCPC5jaGFuZ2VzPiBmaWxlKS4iCittc2dzdHIgIiIKKyJCPGRwa2ctZ2VuY2hhbmdlcz4gbMOkc2VyIGluZm9ybWF0aW9uIGZyw6VuIGV0dCB1cHBhY2thdCBvY2ggYnlnZ3QgIgorIkRlYmlhbmvDpGxsa29kc3Ryw6RkIG9jaCBmcsOlbiBkZSBmaWxlciBkZXQgaGFyIGdlbmVyZXJhdCwgb2NoIGdlbmVyZXJhciBlbiAiCisic3R5cmZpbCBmw7ZyIGluc8OkbmRuaW5nIHRpbGwgRGViaWFuIChCPC5jaGFuZ2VzPi1maWwpLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjE4CisjLCBuby13cmFwCittc2dpZCAiQjwtYj4sIEI8LUI+LCBCPC1BPiIKK21zZ3N0ciAiQjwtYj4sIEI8LUI+LCBCPC1BPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6MjcKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRoYXQgYSBiaW5hcnktb25seSBidWlsZCBpcyB0YWtpbmcgcGxhY2UgKG5vIHNvdXJjZSBmaWxlcyBhcmUgdG8gIgorImJlIGluY2x1ZGVkKS4gVGhlcmUncyBubyBkaXN0aW5jdGlvbiBiZXR3ZWVuIEI8LWI+LCBCPC1CPiBhbmQgQjwtQT4sIHRoZSAiCisicHJvZHVjZWQgQjwuY2hhbmdlcz4gZmlsZSB3aWxsIGluY2x1ZGUgd2hhdGV2ZXIgZmlsZXMgd2VyZSBjcmVhdGVkIGJ5IHRoZSAiCisiQjxiaW5hcnktKj4gdGFyZ2V0KHMpIG9mIHRoZSBwYWNrYWdlIGJlaW5nIGJ1aWx0LiIKK21zZ3N0ciAiIgorIkRldHRhIMOkciBldHQgcmVudCBiaW7DpHJieWdnZSAoaW5nYSBrw6RsbGtvZHNmaWxlciBza2FsbCBpbmtsdWRlcmFzKS4gRGV0IMOkciAiCisiaW5nZW4gc2tpbGxuYWQgbWVsbGFuIEI8LWI+LCBCPC1CPiBvY2ggQjwtQT4sIGRlbiBCPC5jaGFuZ2VzPi1maWwgc29tIHNrYXBhcyAiCisiaW5uZWjDpWxsZXIgYWxsYSBmaWxlciBzb20gc2thcGF0cyBhdiBCPGJpbmFyeS0qPi1tw6VsZW4gaSBkZXQgYnlnZ2RhIHBha2V0ZXQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMTozMQorbXNnaWQgIiIKKyJTcGVjaWZpZXMgdGhhdCBvbmx5IHRoZSBzb3VyY2Ugc2hvdWxkIGJlIHVwbG9hZGVkIChubyBiaW5hcnkgcGFja2FnZXMgd2lsbCAiCisiYmUgaW5jbHVkZWQpLiIKK21zZ3N0ciAiQW5nZXIgYXR0IGVuZGFzdCBrw6RsbGtvZGVuIHNrYWxsIHPDpG5kYXMgaW4gKGluZ2EgYmluw6RycGFrZXQgdGFzIG1lZCkuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMTozNgorbXNnaWQgIiIKKyJUaGUgQjwtcz5JPHg+IG9wdGlvbnMgY29udHJvbCB3aGV0aGVyIHRoZSBvcmlnaW5hbCBzb3VyY2UgYXJjaGl2ZSBpcyAiCisiaW5jbHVkZWQgaW4gdGhlIHVwbG9hZCBpZiBhbnkgc291cmNlIGlzIGJlaW5nIGdlbmVyYXRlZCAoaS5lLiAgQjwtYj4gb3IgQjwtIgorIkI+IGhhdmVuJ3QgYmVlbiB1c2VkKS4iCittc2dzdHIgIiIKKyJGbGFnZ29ybmEgQjwtcz5JPHg+IHN0eXIgaHVydXZpZGEgZGV0IHVyc3BydW5nbGlnYSBrw6RsbGtvZHNhcmtpdmV0IHNrYWxsICIKKyJpbmtsdWRlcmFzIGkgaW5zw6RuZG5pbmdlbiBvbSBrw6RsbGtvZCBnZW5lcmVyYXMgKGR2cy4gQjwtYj4gZWxsZXIgQjwtQj4gaW50ZSAiCisiaGFyIGFudsOkbnRzKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjQyCittc2dpZCAiIgorIkJ5IGRlZmF1bHQsIG9yIGlmIHNwZWNpZmllZCwgdGhlIG9yaWdpbmFsIHNvdXJjZSB3aWxsIGJlIGluY2x1ZGVkIG9ubHkgaWYgIgorInRoZSB1cHN0cmVhbSB2ZXJzaW9uIG51bWJlciAodGhlIHZlcnNpb24gd2l0aG91dCBlcG9jaCBhbmQgd2l0aG91dCBEZWJpYW4gIgorInJldmlzaW9uKSBkaWZmZXJzIGZyb20gdGhlIHVwc3RyZWFtIHZlcnNpb24gbnVtYmVyIG9mIHRoZSBwcmV2aW91cyBjaGFuZ2Vsb2cgIgorImVudHJ5LiIKK21zZ3N0ciAiIgorIlNvbSBzdGFuZGFyZCwgZWxsZXIgb20gZGVuIGFuZ2VzLCBrb21tZXIgb3JpZ2luYWxrw6RsbGtvZGVuIGVuZGFzdCBhdHQgIgorImlua2x1ZGVyYXMgb20gdXBwc3Ryw7Ztc3ZlcnNpb25zbnVtcmV0ICh2ZXJzaW9uc251bXJldCB1dGFuIGVwb2sgb2NoIHV0YW4gIgorIkRlYmlhbnVwcGRhdGVyaW5nc251bW1lcikgc2tpbGplciBzaWcgZnLDpW4gdXBwc3Ryw7Ztc3ZlcnNpb25zbnVtcmV0IGkgIgorImbDtnJlZ8OlZW5kZSDDpG5kcmluZ3Nsb2dnc3Bvc3QuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMTo0NQorbXNnaWQgIkZvcmNlcyB0aGUgaW5jbHVzaW9uIG9mIHRoZSBvcmlnaW5hbCBzb3VyY2UuIgorbXNnc3RyICJCaWZvZ2FyIGFsbHRpZCBvcmlnaW5hbGvDpGxsa29kZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMTo0OAorbXNnaWQgIkZvcmNlcyB0aGUgZXhjbHVzaW9uIG9mIHRoZSBvcmlnaW5hbCBzb3VyY2UgYW5kIGluY2x1ZGVzIG9ubHkgdGhlIGRpZmYuIgorbXNnc3RyICJCaWZvZ2FyIGludGUgb3JpZ2luYWxrw6RsbGtvZGVuLCB1dGFuIGVuYmFydCBkaWZmZXJlbnNmaWxlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjU0Cittc2dpZCAiIgorIkNhdXNlcyBjaGFuZ2Vsb2cgaW5mb3JtYXRpb24gZnJvbSBhbGwgdmVyc2lvbnMgc3RyaWN0bHkgbGF0ZXIgdGhhbiAiCisiSTx2ZXJzaW9uPiB0byBiZSB1c2VkLiIKK21zZ3N0ciAiIgorIkFudsOkbmRlciBpbmZvcm1hdGlvbiBmcsOlbiDDpG5kcmluZ3Nsb2dnZW4gZsO2ciBhbGxhIHZlcnNpb25lciBzb20gw6RyIHN0cmlrdCAiCisic2VuYXJlIMOkbiBJPHZlcnNpb24+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6NjAKK21zZ2lkICIiCisiUmVhZCB0aGUgZGVzY3JpcHRpb24gb2YgdGhlIGNoYW5nZXMgZnJvbSB0aGUgZmlsZSBJPGNoYW5nZXNkZXNjcmlwdGlvbj4gIgorInJhdGhlciB0aGFuIHVzaW5nIHRoZSBpbmZvcm1hdGlvbiBmcm9tIHRoZSBzb3VyY2UgdHJlZSdzIGNoYW5nZWxvZyBmaWxlLiIKK21zZ3N0ciAiIgorIkzDpHMgYmVza3Jpdm5pbmdlbiBhdiDDpG5kcmluZ2FybmEgZnLDpW4gZmlsZW4gSTzDpG5kcmluZ3NiZXNrcml2bmluZz4gaXN0w6RsbGV0ICIKKyJmw7ZyIGF0dCBhbnbDpG5kYSBpbmZvcm1hdGlvbiBmcsOlbiBrw6RsbGtvZHN0csOkZGV0cyBjaGFuZ2Vsb2ctZmlsLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6NjYKK21zZ2lkICIiCisiVXNlIEk8bWFpbnRhaW5lcmFkZHJlc3M+IGFzIHRoZSBuYW1lIGFuZCBlbWFpbCBhZGRyZXNzIG9mIHRoZSBtYWludGFpbmVyIGZvciAiCisidGhpcyBwYWNrYWdlLCByYXRoZXIgdGhhbiB1c2luZyB0aGUgaW5mb3JtYXRpb24gZnJvbSB0aGUgc291cmNlIHRyZWUncyAiCisiY29udHJvbCBmaWxlLiIKK21zZ3N0ciAiIgorIkFudsOkbmQgSTxwYWtldGFuc3ZhcmlnZS1hZHJlc3M+IHNvbSBuYW1uIG9jaCBlLXBvc3RhZHJlc3MgdGlsbCBhbnN2YXJpZyBmw7ZyICIKKyJkZXR0YSBwYWtldCwgaXN0w6RsbGV0IGbDtnIgYXR0IGFudsOkbmRhIGluZm9ybWF0aW9uZW4gZnLDpW4ga8OkbGxrb2RzdHLDpGRldHMgIgorImNvbnRyb2wtZmlsLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6NzIKK21zZ2lkICIiCisiVXNlIEk8bWFpbnRhaW5lcmFkZHJlc3M+IGFzIHRoZSBuYW1lIGFuZCBlbWFpbCBhZGRyZXNzIG9mIHRoZSBtYWludGFpbmVyIGZvciAiCisidGhpcyB1cGxvYWQsIHJhdGhlciB0aGFuIHVzaW5nIHRoZSBpbmZvcm1hdGlvbiBmcm9tIHRoZSBzb3VyY2UgdHJlZSdzICIKKyJjaGFuZ2Vsb2cuIgorbXNnc3RyICIiCisiQW52w6RuZCBJPHBha2V0YW5zdmFyaWdlLWFkcmVzcz4gc29tIG5hbW4gb2NoIGUtcG9zdGFkcmVzcyB0aWxsIGFuc3ZhcmlnIGbDtnIgIgorImRlbm5hIGluc8OkbmRuaW5nLCBpc3TDpGxsZXQgZsO2ciBhdHQgYW52w6RuZGEgaW5mb3JtYXRpb25lbiBmcsOlbiAiCisia8OkbGxrb2RzdHLDpGRldHMgY2hhbmdlbG9nLWZpbC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbmNoYW5nZXMuMTo3MiBkcGtnLWdlbmNvbnRyb2wuMTo0MSBkcGtnLXNvdXJjZS4xOjEyNworIywgbm8td3JhcAorbXNnaWQgIkI8LVY+STxuYW1lPkI8PT5JPHZhbHVlPiIKK21zZ3N0ciAiQjwtVj5JPG5hbW4+Qjw9Pkk8dsOkcmRlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6NzYgZHBrZy1zb3VyY2UuMToxMzEKK21zZ2lkICIiCisiU2V0IGFuIG91dHB1dCBzdWJzdGl0dXRpb24gdmFyaWFibGUuICBTZWUgQjxkZWItc3Vic3R2YXJzPig1KSBmb3IgYSAiCisiZGlzY3Vzc2lvbiBvZiBvdXRwdXQgc3Vic3RpdHV0aW9uLiIKK21zZ3N0ciAiIgorIlN0w6RsbGVyIGluIGVuIHV0ZGF0YXN1YnN0aXR1ZXJpbmdzdmFyaWFiZWwuIFNlIEI8ZGViLXN1YnN0dmFycz4oNSkgZsO2ciBlbiAiCisiYmVza3Jpdm5pbmcgYXYgdXRkYXRhc3Vic3RpdHVlcmluZy4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbmNoYW5nZXMuMTo3NiBkcGtnLWdlbmNvbnRyb2wuMTo0NSBkcGtnLXNobGliZGVwcy4xOjE2OQorIzogZHBrZy1zb3VyY2UuMToxMzEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1UPkk8c3Vic3R2YXJzZmlsZT4iCittc2dzdHIgIkI8LVQ+STxzdWJzdHZhcnMtZmlsPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6ODYKK21zZ2lkICIiCisiUmVhZCBzdWJzdGl0dXRpb24gdmFyaWFibGVzIGluIEk8c3Vic3R2YXJzZmlsZT47IHRoZSBkZWZhdWx0IGlzIEI8ZGViaWFuLyIKKyJzdWJzdHZhcnM+LiAgTm8gdmFyaWFibGUgc3Vic3RpdHV0aW9uIGlzIGRvbmUgb24gYW55IG9mIHRoZSBmaWVsZHMgdGhhdCBhcmUgIgorIm91dHB1dCwgaG93ZXZlciB0aGUgc3BlY2lhbCB2YXJpYWJsZSBJPEZvcm1hdD4gd2lsbCBvdmVycmlkZSB0aGUgZmllbGQgb2YgIgorInRoZSBzYW1lIG5hbWUuIFRoaXMgb3B0aW9uIGNhbiBiZSB1c2VkIG11bHRpcGxlIHRpbWVzIHRvIHJlYWQgc3Vic3RpdHV0aW9uICIKKyJ2YXJpYWJsZXMgZnJvbSBtdWx0aXBsZSBmaWxlcy4iCittc2dzdHIgIiIKKyJMw6RzIHN1YnN0aXR1dGlvbnN2YXJpYWJsZXIgZnLDpW4gSTxzdWJzdHZhcnMtZmlsPjsgc3RhbmRhcmQgw6RyIEI8ZGViaWFuLyIKKyJzdWJzdHZhcnM+LiBJbmdlbiB2YXJpYWJlbHN1YnN0aXR1dGlvbiB1dGbDtnJzIHDDpSBuw6Vnb3QgYXYgZsOkbHRlbiBpIHV0ZGF0YSwgIgorIm1lbiBvbSBkZW4gc3BlY2llbGxhIHZhcmlhYmVsbiBJPEZvcm1hdD4gYW5nZXMga29tbWVyIGRlbiDDtnZlcnN0eXJhIGbDpGx0ZXQgIgorIm1lZCBzYW1tYSBuYW1uLiBGbGFnZ2FuIGthbiBhbnbDpG5kYXMgZmxlcmEgZ8OlbmdlciBmw7ZyIGF0dCBsw6RzYSAiCisic3Vic3RpdHV0aW9uc3ZhcmlhYmxlciBmcsOlbiBmbGVyYSBmaWxlci4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbmNoYW5nZXMuMTo4NyBkcGtnLWdlbmNvbnRyb2wuMTo1MyBkcGtnLXNvdXJjZS4xOjEzNworIywgbm8td3JhcAorbXNnaWQgIkI8LUQ+STxmaWVsZD5CPD0+STx2YWx1ZT4iCittc2dzdHIgIkI8LUQ+STxmw6RsdD5CPD0+STx2w6RyZGU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMTo5MCBkcGtnLWdlbmNvbnRyb2wuMTo1NiBkcGtnLXNvdXJjZS4xOjE0MAorbXNnaWQgIk92ZXJyaWRlIG9yIGFkZCBhbiBvdXRwdXQgY29udHJvbCBmaWxlIGZpZWxkLiIKK21zZ3N0ciAiRXJzw6R0dCBlbGxlciBsw6RnZyB0aWxsIGV0dCBmw6RsdCBpIGRlbiBnZW5lcmVyYWRlIGNvbnRyb2wtZmlsZW4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6OTAgZHBrZy1nZW5jb250cm9sLjE6NTYgZHBrZy1zb3VyY2UuMToxNDAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1VPkk8ZmllbGQ+IgorbXNnc3RyICJCPC1VPkk8ZsOkbHQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMTo5MyBkcGtnLWdlbmNvbnRyb2wuMTo1OSBkcGtnLXNvdXJjZS4xOjE0MworbXNnaWQgIlJlbW92ZSBhbiBvdXRwdXQgY29udHJvbCBmaWxlIGZpZWxkLiIKK21zZ3N0ciAiVGEgYm9ydCBldHQgZsOkbHQgdXIgZGVuIGdlbmVyZXJhZGUgY29udHJvbC1maWxlbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbmNoYW5nZXMuMTo5MyBkcGtnLWdlbmNvbnRyb2wuMTo1OSBkcGtnLXNvdXJjZS4xOjEwNAorIywgbm8td3JhcAorbXNnaWQgIkI8LWM+STxjb250cm9sZmlsZT4iCittc2dzdHIgIkI8LWM+STxjb250cm9sLWZpbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjk4IGRwa2ctZ2VuY29udHJvbC4xOjY0Cittc2dpZCAiIgorIlNwZWNpZmllcyB0aGUgbWFpbiBzb3VyY2UgY29udHJvbCBmaWxlIHRvIHJlYWQgaW5mb3JtYXRpb24gZnJvbS4gVGhlIGRlZmF1bHQgIgorImlzIEI8ZGViaWFuL2NvbnRyb2w+LiIKK21zZ3N0ciAiIgorIkFuZ2VyIGh1dnVka8OkbGxrb2Rza29udHJvbGxmaWxlbiBzb20gaW5mb3JtYXRpb24gc2thbGwgbMOkc2FzIGZyw6VuLiAiCisiU3RhbmRhcmR2w6RyZGV0IMOkciBCPGRlYmlhbi9jb250cm9sPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbmNoYW5nZXMuMTo5OCBkcGtnLWdlbmNvbnRyb2wuMTo2NCBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTYKKyM6IGRwa2ctc291cmNlLjE6MTExCisjLCBuby13cmFwCittc2dpZCAiQjwtbD5JPGNoYW5nZWxvZ2ZpbGU+IgorbXNnc3RyICJCPC1sPkk8w6RuZHJpbmdzbG9nZ2ZpbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjEwMyBkcGtnLWdlbmNvbnRyb2wuMTo2OSBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MjEKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRoZSBjaGFuZ2UgbG9nIGZpbGUgdG8gcmVhZCBpbmZvcm1hdGlvbiBmcm9tLiBUaGUgZGVmYXVsdCBpcyAiCisiQjxkZWJpYW4vY2hhbmdlbG9nPi4iCittc2dzdHIgIiIKKyJBbmdlciDDpG5kcmluZ3Nsb2dnZmlsZW4gc29tIGluZm9ybWF0aW9uIHNrYWxsIGzDpHNhcyBmcsOlbi4gU3RhbmRhcmR2w6RyZGV0IMOkciAiCisiQjxkZWJpYW4vY2hhbmdlbG9nPi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjEwNworbXNnaWQgIiIKKyJSZWFkIHRoZSBsaXN0IG9mIGZpbGVzIHRvIGJlIHVwbG9hZGVkIGhlcmUsIHJhdGhlciB0aGFuIHVzaW5nIEI8ZGViaWFuLyIKKyJmaWxlcz4uIgorbXNnc3RyICIiCisiTMOkc2VyIGxpc3RhbiDDtnZlciBmaWxlciBzb20gc2thbGwgc8OkbmRhcyBpbiBow6RyaWZyw6VuLCBpc3TDpGxsZXQgZsO2ciBhdHQgIgorImFudsOkbmRhIEI8ZGViaWFuL2ZpbGVzPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbmNoYW5nZXMuMToxMDcgZHBrZy1nZW5jb250cm9sLjE6NzMgZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjIxCisjOiBkcGtnLXNvdXJjZS4xOjExOAorIywgbm8td3JhcAorbXNnaWQgIkI8LUY+STxjaGFuZ2Vsb2dmb3JtYXQ+IgorbXNnc3RyICJCPC1GPkk8w6RuZHJpbmdzbG9nZ2Zvcm1hdD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjExMiBkcGtnLWdlbmNvbnRyb2wuMTo3OCBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MjYKKyM6IGRwa2ctc291cmNlLjE6MTIzCittc2dpZCAiIgorIlNwZWNpZmllcyB0aGUgZm9ybWF0IG9mIHRoZSBjaGFuZ2Vsb2cuIEJ5IGRlZmF1bHQgdGhlIGZvcm1hdCBpcyByZWFkIGZyb20gYSAiCisic3BlY2lhbCBsaW5lIG5lYXIgdGhlIGJvdHRvbSBvZiB0aGUgY2hhbmdlbG9nIG9yIGZhaWxpbmcgdGhhdCBkZWZhdWx0cyB0byAiCisidGhlIGRlYmlhbiBzdGFuZGFyZCBmb3JtYXQuIgorbXNnc3RyICIiCisiQW5nZXIgZm9ybWF0IHDDpSDDpG5kcmluZ3Nsb2dnZW4uIFNvbSBzdGFuZGFyZCBsw6RzZXMgZm9ybWF0ZXQgZnLDpW4gZW4gc3BlY2llbGwgIgorInJhZCBuw6RyYSBzbHV0ZXQgYXYgw6RuZHJpbmdzbG9nZ2VuLCBlbGxlciBzw6UgYW52w6RuZHMgRGViaWFucyBzdGFuZGFyZGZvcm1hdCAiCisib20gaW5nZW4gaW5mb3JtYXRpb24gaGl0dGFzLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjExMgorIywgbm8td3JhcAorbXNnaWQgIkI8LXU+STx1cGxvYWRmaWxlc2Rpcj4iCittc2dzdHIgIkI8LXU+STxpbnPDpG5kbmluZ3NrYXRhbG9nPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jaGFuZ2VzLjE6MTIzCittc2dpZCAiIgorIkxvb2sgZm9yIHRoZSBmaWxlcyB0byBiZSB1cGxvYWRlZCBpbiBJPHVwbG9hZGZpbGVzZGlyPiByYXRoZXIgdGhhbiBCPC4uPiAiCisiKEI8ZHBrZy1nZW5jaGFuZ2VzPiBuZWVkcyB0byBmaW5kIHRoZXNlIGZpbGVzIHNvIHRoYXQgaXQgY2FuIGluY2x1ZGUgdGhlaXIgIgorInNpemVzIGFuZCBjaGVja3N1bXMgaW4gdGhlIEI8LmNoYW5nZXM+IGZpbGUpLiIKK21zZ3N0ciAiIgorIlNlIGVmdGVyIGZpbGVyIHNvbSBza2FsbCBzw6RuZGFzIGluIGkgSTxpbnPDpG5kbmluZ3NrYXRhbG9nPiBpc3TDpGxsZXQgZsO2ciBCPC4uIgorIj4gKEI8ZHBrZy1nZW5jaGFuZ2VzPiBtw6VzdGUga3VubmEgc2UgZGVzc2EgZmlsZXIgc8OlIGF0dCBkZXQga2FuIGzDpGdnYSBpbiAiCisiZGVyYXMgc3Rvcmxla2FyIG9jaCBrb250cm9sbHN1bW1vciBpIEI8LmNoYW5nZXM+LWZpbGVuKS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbmNoYW5nZXMuMToxMjMgZHBrZy1nZW5zeW1ib2xzLjE6NDIxCisjLCBuby13cmFwCittc2dpZCAiQjwtcT4iCittc2dzdHIgIkI8LXE+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNoYW5nZXMuMToxMzEKK21zZ2lkICIiCisiVXN1YWxseSBCPGRwa2ctZ2VuY2hhbmdlcz4gd2lsbCBwcm9kdWNlIGluZm9ybWF0aXZlIG1lc3NhZ2VzIG9uIHN0YW5kYXJkICIKKyJlcnJvciwgZm9yIGV4YW1wbGUgYWJvdXQgaG93IG1hbnkgb2YgdGhlIHBhY2thZ2UncyBzb3VyY2UgZmlsZXMgYXJlIGJlaW5nICIKKyJ1cGxvYWRlZC4gIEI8LXE+IHN1cHByZXNzZXMgdGhlc2UgbWVzc2FnZXMuIgorbXNnc3RyICIiCisiQjxkcGtnLWdlbmNoYW5nZXM+IGtvbW1lciBub3JtYWx0IGF0dCBnZW5lcmVyYSBpbmZvcm1hdGl2YSBtZWRkZWxhbmRlbiBww6UgIgorInN0YW5kYXJkIGZlbCwgdGlsbCBleGVtcGVsIG9tIGh1ciBtw6VuZ2EgcGFrZXRzIGvDpGxsa29kc2ZpbGVyIHPDpG5kcyBpbi4gQjwtcT4gIgorInVuZGVydHJ5Y2tlciBkZXNzYSBtZWRkZWxhbmRlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY2hhbmdlcy4xOjE0NworbXNnaWQgIiIKKyJUaGUgbGlzdCBvZiBnZW5lcmF0ZWQgZmlsZXMgd2hpY2ggYXJlIHBhcnQgb2YgdGhlIHVwbG9hZCBiZWluZyBwcmVwYXJlZC4gICIKKyJCPGRwa2ctZ2VuY2hhbmdlcz4gcmVhZHMgdGhlIGRhdGEgaGVyZSB3aGVuIHByb2R1Y2luZyBhIEI8LmNoYW5nZXM+IGZpbGUuIgorbXNnc3RyICIiCisiTGlzdGFuIMO2dmVyIGdlbmVyZXJhZGUgZmlsZXIgc29tIMOkciBlbiBkZWwgYXYgZGVuIGluc8OkbmRuaW5nIHNvbSBmw7ZyYmVyZWRzLiAiCisiQjxkcGtnLWdlbmNoYW5nZXM+IGzDpHNlciBkYXRhIGjDpHIgbsOkciBCPC5jaGFuZ2VzPi1maWxlbiBza2FwYXMuIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1nZW5jb250cm9sLjE6MQorIywgbm8td3JhcAorbXNnaWQgImRwa2ctZ2VuY29udHJvbCIKK21zZ3N0ciAiZHBrZy1nZW5jb250cm9sIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMTo0Cittc2dpZCAiZHBrZy1nZW5jb250cm9sIC0gZ2VuZXJhdGUgRGViaWFuIGNvbnRyb2wgZmlsZXMiCittc2dzdHIgImRwa2ctZ2VuY29udHJvbCAtIHNrYXBhIERlYmlhbnMga29udHJvbGxmaWxlciIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jb250cm9sLjE6OAorbXNnaWQgIkI8ZHBrZy1nZW5jb250cm9sPiBbSTxvcHRpb24+Li4uXSIKK21zZ3N0ciAiQjxkcGtnLWdlbmNvbnRyb2w+IFtJPGZsYWdnYT4uLi5dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMToxNAorbXNnaWQgIiIKKyJCPGRwa2ctZ2VuY29udHJvbD4gcmVhZHMgaW5mb3JtYXRpb24gZnJvbSBhbiB1bnBhY2tlZCBEZWJpYW4gc291cmNlIHRyZWUgYW5kICIKKyJnZW5lcmF0ZXMgYSBiaW5hcnkgcGFja2FnZSBjb250cm9sIGZpbGUgKHdoaWNoIGRlZmF1bHRzIHRvIGRlYmlhbi90bXAvREVCSUFOLyIKKyJjb250cm9sKTsgZHVyaW5nIHRoaXMgcHJvY2VzcyBpdCB3aWxsIHNpbXBsaWZ5IHRoZSByZWxhdGlvbiBmaWVsZHMuIgorbXNnc3RyICIiCisiQjxkcGtnLWdlbmNvbnRyb2w+IGzDpHNlciBpbmZvcm1hdGlvbiBmcsOlbiBldHQgdXBwYWNrYXQgRGViaWFua8OkbGxrb2RzdHLDpGQgIgorIm9jaCBnZW5lcmVyYXIgZW4gYmluw6RycGFrZXRzc3R5cmZpbCAoc29tIHN0YW5kYXJkIGRlYmlhbi90bXAvREVCSUFOLyIKKyJjb250cm9sKS4gUmVsYXRpb25zZsOkbHRlbiBrb21tZXIgYXR0IGbDtnJlbmtsYXMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMToyNworbXNnaWQgIiIKKyJUaHVzIEk8UHJlLURlcGVuZHM+LCBJPERlcGVuZHM+LCBJPFJlY29tbWVuZHM+IGFuZCBJPFN1Z2dlc3RzPiBhcmUgIgorInNpbXBsaWZpZWQgaW4gdGhpcyBvcmRlciBieSByZW1vdmluZyBkZXBlbmRlbmNpZXMgd2hpY2ggYXJlIGtub3duIHRvIGJlIHRydWUgIgorImFjY29yZGluZyB0byB0aGUgc3Ryb25nZXIgZGVwZW5kZW5jaWVzIGFscmVhZHkgcGFyc2VkLiBJdCB3aWxsIGFsc28gcmVtb3ZlICIKKyJhbnkgc2VsZi1kZXBlbmRlbmN5IChpbiBmYWN0IGl0IHdpbGwgcmVtb3ZlIGFueSBkZXBlbmRlbmN5IHdoaWNoIGV2YWx1YXRlcyAiCisidG8gdHJ1ZSBnaXZlbiB0aGUgY3VycmVudCB2ZXJzaW9uIG9mIHRoZSBwYWNrYWdlIGFzIGluc3RhbGxlZCkuIExvZ2ljYWxseSBpdCAiCisia2VlcHMgdGhlIGludGVyc2VjdGlvbiBvZiBtdWx0aXBsZSBkZXBlbmRlbmNpZXMgb24gdGhlIHNhbWUgcGFja2FnZS4gVGhlICIKKyJvcmRlciBvZiBkZXBlbmRlbmNpZXMgaXMgcHJlc2VydmVkIGFzIGJlc3QgYXMgcG9zc2libGU6IGlmIGFueSBkZXBlbmRlbmN5ICIKKyJtdXN0IGJlIGRpc2NhcmRlZCBkdWUgdG8gYW5vdGhlciBkZXBlbmRlbmN5IGFwcGVhcmluZyBmdXJ0aGVyIGluIHRoZSBmaWVsZCwgIgorInRoZSBzdXBlcnNlZGluZyBkZXBlbmRlbmN5IHdpbGwgdGFrZSB0aGUgcGxhY2Ugb2YgdGhlIGRpc2NhcmRlZCBvbmUuIgorbXNnc3RyICIiCisiRsOkbHRlbiBJPFByZS1EZXBlbmRzPiwgSTxEZXBlbmRzPiwgSTxSZWNvbW1lbmRzPiBvY2ggSTxTdWdnZXN0cz4gZsO2cmVua2xhcyAiCisiZMOkcm1lZCwgaSBkZW4gZsO2bGpkZW4sIGdlbm9tIGF0dCB0YSBib3J0IGJlcm9lbmRlbiBzb20gcHJvZ3JhbW1ldCB2ZXQgIgorInRpbGxoYW5kYWjDpWxscyBhdiBzdGFya2FyZSBiZXJvZW5kZW4gc29tIHJlZGFuIHRvbGthdHMuIERldCBrb21tZXIgw6R2ZW4gdGEgIgorImJvcnQgZXZlbnR1ZWxsYSBlZ2VuYmVyb2VuZGVuIChwcm9ncmFtbWV0IHRhciBib3J0IGFsbGEgYmVyb2VuZGVuIHNvbSDDpHIgIgorInVwcGZ5bGxkYSBuw6RyIGRlbiBudXZhcmFuZGUgdmVyc2lvbmVuIGF2IHBha2V0ZXQgw6RyIGluc3RhbGxlcmF0KS4gTG9naXNrdCAiCisiYmVow6VsbHMgc25pdHRldCBhdiBtdWx0aXBsYSBiZXJvZW5kZW4gcMOlIHNhbW1hIHBha2V0LiBPcmRuaW5nc2bDtmxqZGVuIG1lbGxhbiAiCisiYmVyb2VuZGVuYSBiZWjDpWxscyBzw6UgbMOlbmd0IHNvbSBtw7ZqbGlndDogb20gZXR0IGJlcm9lbmRlIG3DpXN0ZSB0YXMgYm9ydCBww6UgIgorImdydW5kIGF2IGF0dCBldHQgYmVyb2VuZGUgw6V0ZXJrb21tZXIgc2VuYXJlIGkgZsOkbHRldCBrb21tZXIgZGV0IG55YSAiCisiYmVyb2VuZGV0IGF0dCB0YSBwbGF0c2VuIGZyw6VuIGRldCBzb20gZXJzYXR0ZXMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMTozMgorbXNnaWQgIiIKKyJUaGUgb3RoZXIgcmVsYXRpb24gZmllbGRzIChJPEVuaGFuY2VzPiwgSTxDb25mbGljdHM+LCBJPEJyZWFrcz4sIEk8UmVwbGFjZXM+ICIKKyJhbmQgSTxQcm92aWRlcz4pICBhcmUgYWxzbyBzaW1wbGlmaWVkIGluZGl2aWR1YWxseSBieSBjb21wdXRpbmcgdGhlIHVuaW9uIG9mICIKKyJ0aGUgdmFyaW91cyBkZXBlbmRlbmNpZXMgd2hlbiBhIHBhY2thZ2UgaXMgbGlzdGVkIG11bHRpcGxlIHRpbWVzIGluIHRoZSAiCisiZmllbGQuIgorbXNnc3RyICIiCisiw5Z2cmlnYSByZWxhdGlvbnNmw6RsdCAoSTxFbmhhbmNlcz4sIEk8Q29uZmxpY3RzPiwgSTxCcmVha3M+LCBJPFJlcGxhY2VzPiBvY2ggIgorIkk8UHJvdmlkZXM+KSBmw7ZyZW5rbGFzIMOkdmVuIGluZGl2aWR1ZWxsdCBnZW5vbSBhdHQgYmVyw6RrbmEgdW5pb25lbiBhdiBkZSAiCisib2xpa2EgYmVyb2VuZGVuYSBuw6RyIGV0dCBwYWtldCBmw7ZyZWtvbW1lciBmbGVyYSBnw6VuZ2VyIGkgc2FtbWEgZsOkbHQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMTozNgorbXNnaWQgIiIKKyJCPGRwa2ctZ2VuY29udHJvbD4gYWxzbyBhZGRzIGFuIGVudHJ5IGZvciB0aGUgYmluYXJ5IHBhY2thZ2UgdG8gQjxkZWJpYW4vIgorImZpbGVzPi4iCittc2dzdHIgIiIKKyJCPGRwa2ctZ2VuY29udHJvbD4gbMOkZ2dlciBkZXNzdXRvbSB0aWxsIGVuIHBvc3QgZsO2ciBiaW7DpHJwYWtldGV0IGkgQjxkZWJpYW4vIgorImZpbGVzPi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjQxCittc2dpZCAiU2V0cyB0aGUgdmVyc2lvbiBudW1iZXIgb2YgdGhlIGJpbmFyeSBwYWNrYWdlIHdoaWNoIHdpbGwgYmUgZ2VuZXJhdGVkLiIKK21zZ3N0ciAiU8OkdHRlciB2ZXJzaW9uc251bXJldCBww6UgYmluw6RycGFrZXRldCBzb20gc2thbGwgc2thcGFzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jb250cm9sLjE6NDUKK21zZ2lkICIiCisiU2V0IGFuIG91dHB1dCBzdWJzdGl0dXRpb24gdmFyaWFibGUuIFNlZSBCPGRlYi1zdWJzdHZhcnM+KDUpIGZvciBkaXNjdXNzaW9uICIKKyJvZiBvdXRwdXQgc3Vic3RpdHV0aW9uLiIKK21zZ3N0ciAiIgorIlN0w6RsbGVyIGluIGVuIHV0ZGF0YXN1YnN0aXR1ZXJpbmdzdmFyaWFiZWwuIFNlIEI8ZGViLXN1YnN0dmFycz4oNSkgZsO2ciBlbiAiCisiYmVza3Jpdm5pbmcgYXYgdXRkYXRhc3Vic3RpdHVlcmluZy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjUzCittc2dpZCAiIgorIlJlYWQgc3Vic3RpdHV0aW9uIHZhcmlhYmxlcyBpbiBJPHN1YnN0dmFyc2ZpbGU+OyB0aGUgZGVmYXVsdCBpcyBCPGRlYmlhbi8iCisic3Vic3R2YXJzPi4gIFRoaXMgb3B0aW9uIGNhbiBiZSB1c2VkIG11bHRpcGxlIHRpbWVzIHRvIHJlYWQgc3Vic3RpdHV0aW9uICIKKyJ2YXJpYWJsZXMgZnJvbSBtdWx0aXBsZSBmaWxlcy4iCittc2dzdHIgIiIKKyJMw6RzIHN1YnN0aXR1dGlvbnN2YXJpYWJsZXIgZnLDpW4gSTxzdWJzdHZhcnMtZmlsPjsgc3RhbmRhcmQgw6RyIEI8ZGViaWFuLyIKKyJzdWJzdHZhcnM+LiBJbmdlbiB2YXJpYWJlbHN1YnN0aXR1dGlvbiB1dGbDtnJzIHDDpSBuw6Vnb3QgYXYgZsOkbHRlbiBpIHV0ZGF0YSwgIgorIm1lbiBvbSBkZW4gc3BlY2llbGxhIHZhcmlhYmVsbiBJPEZvcm1hdD4gYW5nZXMga29tbWVyIGRlbiDDtnZlcnN0eXJhIGbDpGx0ZXQgIgorIm1lZCBzYW1tYSBuYW1uLiBGbGFnZ2FuIGthbiBhbnbDpG5kYXMgZmxlcmEgZ8OlbmdlciBmw7ZyIGF0dCBsw6RzYSAiCisic3Vic3RpdHV0aW9uc3ZhcmlhYmxlciBmcsOlbiBmbGVyYSBmaWxlci4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbmNvbnRyb2wuMTo3OCBkcGtnLWdlbnN5bWJvbHMuMTozNzMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1wPkk8cGFja2FnZT4iCittc2dzdHIgIkI8LXA+STxwYWtldD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjg1Cittc2dpZCAiIgorIkdlbmVyYXRlIGluZm9ybWF0aW9uIGZvciB0aGUgYmluYXJ5IHBhY2thZ2UgSTxwYWNrYWdlPi4gIElmIHRoZSBzb3VyY2UgIgorImNvbnRyb2wgZmlsZSBsaXN0cyBvbmx5IG9uZSBiaW5hcnkgcGFja2FnZSB0aGVuIHRoaXMgb3B0aW9uIG1heSBiZSBvbWl0dGVkOyAiCisib3RoZXJ3aXNlIGl0IGlzIGVzc2VudGlhbCB0byBzZWxlY3Qgd2hpY2ggYmluYXJ5IHBhY2thZ2UncyBpbmZvcm1hdGlvbiB0byAiCisiZ2VuZXJhdGUuIgorbXNnc3RyICIiCisiU2thcGEgaW5mb3JtYXRpb24gZsO2ciBkZXQgYmluw6RyYSBwYWtldGV0IEk8cGFrZXQ+LiBPbSBrw6RsbGtvZGVucyBjb250cm9sLWZpbCAiCisiYmFyYSBpbm5laMOlbGxlciBldHQgYmluw6RycGFrZXQgYmVow7Z2ZXIgaW50ZSBmbGFnZ2FuIGFuZ2VzLiBJIGFsbGEgYW5kcmEgZmFsbCAiCisiw6RyIGRldCBuw7ZkdsOkbmRpZ3QgYXR0IHbDpGxqYSB2aWxrZXQgYmluw6RycGFrZXRzIGluZm9ybWF0aW9uIHNvbSBza2FsbCBza2FwYXMuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5jb250cm9sLjE6ODUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1uPkk8ZmlsZW5hbWU+IgorbXNnc3RyICJCPC1uPkk8ZmlsbmFtbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjkwCittc2dpZCAiIgorIkFzc3VtZSB0aGUgZmlsZW5hbWUgb2YgdGhlIHBhY2thZ2Ugd2lsbCBiZSBJPGZpbGVuYW1lPiBpbnN0ZWFkIG9mIHRoZSBub3JtYWwgIgorInBhY2thZ2VfdmVyc2lvbl9hcmNoLmRlYiBmaWxlbmFtZS4iCittc2dzdHIgIiIKKyJBbnRhIGF0dCBmaWxuYW1uZXQgZsO2ciBwYWtldGV0IHNrYWxsYSB2YXJhIEk8ZmlsbmFtbj4gaXN0w6RsbGV0IGbDtnIgZGV0ICIKKyJub3JtYWxhIHBha2V0X3ZlcnNpb25fYXJrLmRlYi1maWxuYW1uZXQuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5jb250cm9sLjE6OTAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1pcz4sIEI8LWlwPiwgQjwtaXNwPiIKK21zZ3N0ciAiQjwtaXM+LCBCPC1pcD4sIEI8LWlzcD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjk5Cittc2dpZCAiIgorIlRoZXNlIG9wdGlvbnMgYXJlIGlnbm9yZWQgZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBvbGRlciB2ZXJzaW9ucyBvZiBkcGtnLWRldiAiCisiYnV0IGFyZSBub3cgZGVwcmVjYXRlZC4gUHJldmlvdXNseSB0aGV5IHdlcmUgdXNlZCB0byB0ZWxsIGRwa2ctZ2VuY29udHJvbCB0byAiCisiaW5jbHVkZSB0aGUgU2VjdGlvbiBhbmQgUHJpb3JpdHkgZmllbGRzIGluIHRoZSBjb250cm9sIGZpbGUuIFRoaXMgaXMgbm93IHRoZSAiCisiZGVmYXVsdCBiZWhhdmlvdXIuIElmIHlvdSB3YW50IHRvIGdldCB0aGUgb2xkIGJlaGF2aW91ciB5b3UgY2FuIHVzZSB0aGUgQjwtIgorIlU+IG9wdGlvbiB0byBkZWxldGUgdGhlIGZpZWxkcyBmcm9tIHRoZSBjb250cm9sIGZpbGUuIgorbXNnc3RyICIiCisiRGVzc2EgZmxhZ2dvciBpZ25vcmVyYXMgZsO2ciBrb21wYXRpYmlsaXRldCBtZWQgw6RsZHJlIHZlcnNpb25lciBhdiBkcGtnLWRldiAiCisibWVuIGF2csOlZHMgbnVtZXJhIGlmcsOlbi4gRGUgYW52w6RuZGVzIHRpZGlnYXJlIGbDtnIgYXR0IHRhbGEgb20gZsO2ciBkcGtnLSIKKyJnZW5jb250cm9sIGF0dCBpbmtsdWRlcmEgU2VjdGlvbi0gb2NoIFByaW9yaXR5LWbDpGx0ZW4gaSBjb250cm9sLWZpbGVuLiBEZXR0YSAiCisiw6RyIG51bWVyYSBzdGFuZGFyZGJldGVlbmRldC4gT20gZHUgdmlsbCDDpXRlcnNrYXBhIGRldCBnYW1sYSBiZXRlZW5kZXQga2FuIGR1ICIKKyJhbnbDpG5kYSBmbGFnZ2FuIEI8LVU+IGbDtnIgYXR0IHRhIGJvcnQgZsOkbHRlbiBmcsOlbiBjb250cm9sLWZpbGVuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjk5CisjLCBuby13cmFwCittc2dpZCAiQjwtUD5JPHBhY2thZ2VidWlsZGRpcj4iCittc2dzdHIgIkI8LVA+STxwYWtldGJ5Z2drYXRhbG9nPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jb250cm9sLjE6MTEyCittc2dpZCAiIgorIlRlbGxzIEI8ZHBrZy1zb3VyY2U+IHRoYXQgdGhlIHBhY2thZ2UgaXMgYmVpbmcgYnVpbHQgaW4gSTxwYWNrYWdlYnVpbGRkaXI+ICIKKyJpbnN0ZWFkIG9mIEI8ZGViaWFuL3RtcD4uICBUaGlzIHZhbHVlIGlzIHVzZWQgdG8gZmluZCB0aGUgZGVmYXVsdCB2YWx1ZSBvZiAiCisidGhlIEI8SW5zdGFsbGVkLVNpemU+IHN1YnN0aXR1dGlvbiB2YXJpYWJsZSBhbmQgY29udHJvbCBmaWxlIGZpZWxkICh1c2luZyAiCisiQjxkdT4pLCBhbmQgZm9yIHRoZSBkZWZhdWx0IGxvY2F0aW9uIG9mIHRoZSBvdXRwdXQgZmlsZS4iCittc2dzdHIgIiIKKyJUYWxhciBvbSBmw7ZyIEI8ZHBrZy1zb3VyY2U+IGF0dCBwYWtldGV0IGJ5Z2dzIGkgSTxwYWtldGJ5Z2drYXRhbG9nPiBpICIKKyJzdMOkbGxldCBmw7ZyIEI8ZGViaWFuL3RtcD4uIFbDpHJkZXQgYW52w6RuZHMgZsO2ciBhdHQgYmVzdMOkbW1hIHN0YW5kYXJkdsOkcmRldCAiCisiZsO2ciBzdWJzdGl0dWVyaW5nc3ZhcmlhYmVsbiBvY2ggY29udHJvbC1maWxzZsOkbHRldCBCPEluc3RhbGxlZC1TaXplPiAobWVkICIKKyJoasOkbHAgYXYgQjxkdT4pLCBzYW10IGbDtnIgYXR0IHbDpGxqYSBzdGFuZGFyZHBsYWNlcmluZyBhdiB1dGRhdGFmaWxlbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbmNvbnRyb2wuMToxMTIgZHBrZy1nZW5zeW1ib2xzLjE6MzkxIGRwa2ctc2hsaWJkZXBzLjE6MTUwCisjLCBuby13cmFwCittc2dpZCAiQjwtTz4iCittc2dzdHIgIkI8LU8+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMToxMjEKK21zZ2lkICIiCisiUHJpbnQgdGhlIGNvbnRyb2wgZmlsZSB0byBzdGFuZGFyZCBvdXRwdXQsIHJhdGhlciB0aGFuIHRvIEI8ZGViaWFuL3RtcC8iCisiREVCSUFOL2NvbnRyb2w+IChvciBJPHBhY2thZ2VidWlsZGRpcj5CPC9ERUJJQU4vY29udHJvbD4gaWYgQjwtUD4gd2FzIHVzZWQpLiIKK21zZ3N0ciAiIgorIlNrcml2IGNvbnRyb2wtZmlsZW4gcMOlIHN0YW5kYXJkIHV0LCBpIHN0w6RsbGV0IGbDtnIgdGlsbCBCPGRlYmlhbi90bXAvREVCSUFOLyIKKyJjb250cm9sPiAoZWxsZXIgSTxwYWtldGJ5Z2drYXRhbG9nPkI8L0RFQklBTi9jb250cm9sPiBvbSBCPC1QPiBhbnbDpG5kZXMpLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2VuY29udHJvbC4xOjEyOQorIywgbm8td3JhcAorbXNnaWQgIkI8ZGViaWFuL2NvbnRyb2w+IgorbXNnc3RyICJCPGRlYmlhbi9jb250cm9sPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jb250cm9sLjE6MTM0Cittc2dpZCAiIgorIlRoZSBtYWluIHNvdXJjZSBjb250cm9sIGluZm9ybWF0aW9uIGZpbGUsIGdpdmluZyB2ZXJzaW9uLWluZGVwZW5kZW50ICIKKyJpbmZvcm1hdGlvbiBhYm91dCB0aGUgc291cmNlIHBhY2thZ2UgYW5kIHRoZSBiaW5hcnkgcGFja2FnZXMgaXQgY2FuIHByb2R1Y2UuIgorbXNnc3RyICIiCisiSHV2dWRrw6RsbGtvZHNrb250cm9sbGluZm9ybWF0aW9uc2ZpbCwgdmlsa2VuIGlubmVow6VsbGVyIHZlcnNpb25zb2Jlcm9lbmRlICIKKyJpbmZvcm1hdGlvbiBvbSBrw6RsbGtvZHNwYWtldGV0IG9jaCBkZSBiaW7DpHJwYWtldCBzb20ga2FuIHNrYXBhcyBmcsOlbiBkZXQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbmNvbnRyb2wuMToxNDEKK21zZ2lkICIiCisiVGhlIGxpc3Qgb2YgZ2VuZXJhdGVkIGZpbGVzIHdoaWNoIGFyZSBwYXJ0IG9mIHRoZSB1cGxvYWQgYmVpbmcgcHJlcGFyZWQuICAiCisiQjxkcGtnLWdlbmNvbnRyb2w+IGFkZHMgdGhlIHByZXN1bWVkIGZpbGVuYW1lcyBvZiBiaW5hcnkgcGFja2FnZXMgd2hvc2UgIgorImNvbnRyb2wgZmlsZXMgaXQgZ2VuZXJhdGVzIGhlcmUuIgorbXNnc3RyICIiCisiTGlzdGFuIMO2dmVyIGdlbmVyZXJhZGUgZmlsZXIgc29tIGluZ8OlciBpIGluc8OkbmRuaW5nZW4gc29tIHNrYXBhcy4gQjxkcGtnLSIKKyJnZW5jb250cm9sPiBsw6RnZ2VyIHRpbGwgZGUgZsO2cnV0c2F0dGEgZmlsbmFtbmVuIHDDpSBiaW7DpHJwYWtldGVuIHZhcnMgY29udHJvbC0iCisiZmlsZXIgZGV0IGdlbmVyZXJhciBow6RyLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5jb250cm9sLjE6MTQ4IGRwa2ctc2hsaWJkZXBzLjE6MzM3Cittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMDctMjAwOCBSYXBoYVxcWzplXWwgSGVydHpvZyIKK21zZ3N0ciAiVXBwaG92c3LDpHR0c3NreWRkYXQgwqkgMjAwNy0yMDA4IFJhcGhhw6tsIEhlcnR6b2ciCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLWdlbnN5bWJvbHMuMToyCisjLCBuby13cmFwCittc2dpZCAiZHBrZy1nZW5zeW1ib2xzIgorbXNnc3RyICJkcGtnLWdlbnN5bWJvbHMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjUKK21zZ2lkICIiCisiZHBrZy1nZW5zeW1ib2xzIC0gZ2VuZXJhdGUgc3ltYm9scyBmaWxlcyAoc2hhcmVkIGxpYnJhcnkgZGVwZW5kZW5jeSAiCisiaW5mb3JtYXRpb24pIgorbXNnc3RyICIiCisiZHBrZy1nZW5zeW1ib2xzIC0gZ2VuZXJlcmEgc3ltYm9sZmlsZXIgKGluZm9ybWF0aW9uIG9tIGRlbGFkZSBiaWJsaW90ZWspIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo5Cittc2dpZCAiQjxkcGtnLWdlbnN5bWJvbHM+IFtJPG9wdGlvbj4uLi5dIgorbXNnc3RyICJCPGRwa2ctZ2Vuc3ltYm9scz4gW0k8ZmxhZ2dhPi4uLl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjE2Cittc2dpZCAiIgorIkI8ZHBrZy1nZW5zeW1ib2xzPiBzY2FucyBhIHRlbXBvcmFyeSBidWlsZCB0cmVlIChkZWJpYW4vdG1wIGJ5IGRlZmF1bHQpICIKKyJsb29raW5nIGZvciBsaWJyYXJpZXMgYW5kIGdlbmVyYXRlIGEgSTxzeW1ib2xzPiBmaWxlIGRlc2NyaWJpbmcgdGhlbS4gVGhpcyAiCisiZmlsZSwgaWYgbm9uLWVtcHR5LCBpcyB0aGVuIGluc3RhbGxlZCBpbiB0aGUgREVCSUFOIHN1YmRpcmVjdG9yeSBvZiB0aGUgIgorImJ1aWxkIHRyZWUgc28gdGhhdCBpdCBlbmRzIHVwIGluY2x1ZGVkIGluIHRoZSBjb250cm9sIGluZm9ybWF0aW9uIG9mIHRoZSAiCisicGFja2FnZS4iCittc2dzdHIgIiIKKyJCPGRwa2ctZ2Vuc3ltYm9scz4gc8O2a2VyIGdlbm9tIGVuIHRlbXBvcsOkcnQgYnlnZ3Ryw6RkIChzb20gc3RhbmRhcmQgZGViaWFuLyIKKyJ0bXApIGVmdGVyIGJpYmxpb3RlayBvY2ggc2thcGFyIGVuIEk8c3ltYm9scz4tZmlsIHNvbSBiZXNrcml2ZXIgZGVtLiBEZW5uYSAiCisiZmlsIGtvbW1lciBzZWRhbiwgc8OldmlkYSBkZW4gaW50ZSDDpHIgdG9tLCBhdHQgaW5zdGFsbGVyYXMgaSBERUJJQU4tIgorInVuZGVya2F0YWxvZ2VuIGkgYnlnZ3Ryw6RkZXQgc8OlIGF0dCBkZW4gaGFtbmFyIGkgc3R5cmluZm9ybWF0aW9uZW4gaSBwYWtldGV0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjAKK21zZ2lkICIiCisiV2hlbiBnZW5lcmF0aW5nIHRob3NlIGZpbGVzLCBpdCB1c2VzIGFzIGlucHV0IHNvbWUgc3ltYm9scyBmaWxlcyBwcm92aWRlZCBieSAiCisidGhlIG1haW50YWluZXIuIEl0IGxvb2tzIGZvciB0aGUgZm9sbG93aW5nIGZpbGVzIChhbmQgdXNlIHRoZSBmaXJzdCB0aGF0IGlzICIKKyJmb3VuZCk6IgorbXNnc3RyICIiCisiTsOkciBkZXNzYSBmaWxlciBza2FwYXMsIGFudsOkbmRzIGV0dCBwYXIgc3ltYm9sZmlsZXIgZnLDpW4gcGFrZXRhbnN2YXJpZ2Egc29tICIKKyJpbmRhdGEuIFByb2dyYW1tZXQgc8O2a2VyIGVmdGVyIGbDtmxqYW5kZSBmaWxlciAob2NoIGFudsOkbmRlciBkZW4gZsO2cnN0YSBkZXQgIgorImZpbm5lcik6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyMgorbXNnaWQgImRlYmlhbi9JPHBhY2thZ2U+LnN5bWJvbHMuSTxhcmNoPiIKK21zZ3N0ciAiZGViaWFuL0k8cGFrZXQ+LnN5bWJvbHMuSTxhcmtpdGVrdHVyPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjQKK21zZ2lkICJkZWJpYW4vc3ltYm9scy5JPGFyY2g+IgorbXNnc3RyICJkZWJpYW4vc3ltYm9scy5JPGFya2l0ZWt0dXI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyNgorbXNnaWQgImRlYmlhbi9JPHBhY2thZ2U+LnN5bWJvbHMiCittc2dzdHIgImRlYmlhbi9JPHBha2V0Pi5zeW1ib2xzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyOAorbXNnaWQgImRlYmlhbi9zeW1ib2xzIgorbXNnc3RyICJkZWJpYW4vc3ltYm9scyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzYKK21zZ2lkICIiCisiVGhlIG1haW4gaW50ZXJlc3Qgb2YgdGhvc2UgZmlsZXMgaXMgdG8gcHJvdmlkZSB0aGUgbWluaW1hbCB2ZXJzaW9uICIKKyJhc3NvY2lhdGVkIHRvIGVhY2ggc3ltYm9sIHByb3ZpZGVkIGJ5IHRoZSBsaWJyYXJpZXMuIFVzdWFsbHkgaXQgY29ycmVzcG9uZHMgIgorInRvIHRoZSBmaXJzdCB2ZXJzaW9uIG9mIHRoYXQgcGFja2FnZSB0aGF0IHByb3ZpZGVkIHRoZSBzeW1ib2wsIGJ1dCBpdCBjYW4gYmUgIgorIm1hbnVhbGx5IGluY3JlbWVudGVkIGJ5IHRoZSBtYWludGFpbmVyIGlmIHRoZSBBQkkgb2YgdGhlIHN5bWJvbCBpcyBleHRlbmRlZCAiCisid2l0aG91dCBicmVha2luZyBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eS4gSXQncyB0aGUgcmVzcG9uc2liaWxpdHkgb2YgdGhlICIKKyJtYWludGFpbmVyIHRvIGtlZXAgdGhvc2UgZmlsZXMgdXAtdG8tZGF0ZSBhbmQgYWNjdXJhdGUsIGJ1dCBCPGRwa2ctIgorImdlbnN5bWJvbHM+IGhlbHBzIGhpbS4iCittc2dzdHIgIiIKKyJEZXNzYSBmaWxlciDDpHIgaSBodXZ1ZHNhayBpbnRyZXNzYW50YSBmw7ZyIGF0dCBrdW5uYSB0aWxsaGFuZGFow6VsbGEgZGVuICIKKyJtaW5pbWFsYSB2ZXJzaW9uIGFzc29jaWVyYWQgbWVkIHZhcmplIHN5bWJvbCBpIGJpYmxpb3Rla2VuLiBEZXR0YSBtb3RzdmFyYXIgIgorIm5vcm1hbHQgZGVuIGbDtnJzdGEgdmVyc2lvbiBhdiBwYWtldGV0IHNvbSB0aWxsaGFuZGFow7ZsbCBzeW1ib2xlbiwgbWVuIGRldCAiCisia2FuIG1hbnVlbGx0IGlua3JlbWVudGVyYXMgYXYgZGUgYW5zdmFyaWdhIG9tIHN5bWJvbGVucyBBQkkgdXTDtmthcyBtZWQgIgorImJpYmVow6VsbGVuIGJha8OldGtvbXBhdGliaWxpdGV0LiBEZXQgw6RyIGRlbiBhbnN2YXJpZ2FzIGFuc3ZhciBhdHQgaMOlbGxhIGRlc3NhICIKKyJmaWxlciDDoGpvdXJmw7ZyZGEgb2NoIGtvcnJla3RhLCBtZW4gQjxkcGtnLWdlbnN5bWJvbHM+IGthbiBoasOkbHBhIHRpbGwuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0MgorbXNnaWQgIiIKKyJXaGVuIHRoZSBnZW5lcmF0ZWQgc3ltYm9scyBmaWxlcyBkaWZmZXIgZnJvbSB0aGUgbWFpbnRhaW5lciBzdXBwbGllZCBvbmUsICIKKyJCPGRwa2ctZ2Vuc3ltYm9scz4gd2lsbCBwcmludCBhIGRpZmYgYmV0d2VlbiB0aGUgdHdvIHZlcnNpb25zLiAgRnVydGhlcm1vcmUgIgorImlmIHRoZSBkaWZmZXJlbmNlIGlzIHRvbyBzaWduaWZpY2FudCwgaXQgd2lsbCBldmVuIGZhaWwgKHlvdSBjYW4gY3VzdG9taXplICIKKyJob3cgbXVjaCBkaWZmZXJlbmNlIHlvdSBjYW4gdG9sZXJhdGUsIHNlZSB0aGUgQjwtYz4gb3B0aW9uKS4iCittc2dzdHIgIiIKKyJOw6RyIGRlbiBnZW5lcmVyYWRlIHN5bWJvbGZpbGVuIHNraWxqZXIgc2lnIG1vdCBkZW4gdmVyc2lvbiBzb20gIgorInRpbGxoYW5kYWjDpWxsaXRzIGF2IGRlIHBha2V0YW5zdmFyaWdhIGtvbW1lciBCPGRwa2ctZ2Vuc3ltYm9scz4gYXR0IHNrcml2YSAiCisidXQgZW4gZGlmZmVyZW5zIG1lbGxhbiBkZSB0dsOlIHZlcnNpb25lcm5hLiBPbSDDpG5kcmluZ2FybmEgw6RyIGbDtnIgc3RvcmEgIgorImtvbW1lciBwcm9ncmFtbWV0IGRlc3N1dG9tIGF0dCBtaXNzbHlja2FzIChkdSBrYW4ganVzdGVyYSBodXIgc3RvcmEgIgorIsOkbmRyaW5nYXIgZHUga2FuIHRvbGVyZXJhLCBzZSBmbGFnZ2FuIEI8LWM+KS4iCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0MgorIywgbm8td3JhcAorbXNnaWQgIk1BSU5UQUlOSU5HIFNZTUJPTFMgRklMRVMiCittc2dzdHIgIlVOREVSSMOFTExBIFNZTUJPTEZJTEVSIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo1NQorbXNnaWQgIiIKKyJUaGUgc3ltYm9scyBmaWxlcyBhcmUgcmVhbGx5IHVzZWZ1bCBvbmx5IGlmIHRoZXkgcmVmbGVjdCB0aGUgZXZvbHV0aW9uIG9mICIKKyJ0aGUgcGFja2FnZSB0aHJvdWdoIHNldmVyYWwgcmVsZWFzZXMuIFRodXMgdGhlIG1haW50YWluZXIgaGFzIHRvIHVwZGF0ZSB0aGVtICIKKyJldmVyeSB0aW1lIHRoYXQgYSBuZXcgc3ltYm9sIGlzIGFkZGVkIHNvIHRoYXQgaXRzIGFzc29jaWF0ZWQgbWluaW1hbCB2ZXJzaW9uICIKKyJtYXRjaGVzIHJlYWxpdHkuIFRvIGRvIHRoaXMgcHJvcGVybHkgaGUgY2FuIHVzZSB0aGUgZGlmZnMgY29udGFpbmVkIGluIHRoZSAiCisiYnVpbGQgbG9ncy4gSW4gbW9zdCBjYXNlcywgdGhlIGRpZmYgYXBwbGllcyBkaXJlY3RseSB0byBoaXMgZGViaWFuLyIKKyJJPHBhY2thZ2U+LnN5bWJvbHMgZmlsZS4gVGhhdCBzYWlkLCBmdXJ0aGVyIHR3ZWFrcyBhcmUgdXN1YWxseSBuZWVkZWQ6IGl0J3MgIgorInJlY29tbWVuZGVkIGZvciBleGFtcGxlIHRvIGRyb3AgdGhlIERlYmlhbiByZXZpc2lvbiBmcm9tIHRoZSBtaW5pbWFsIHZlcnNpb24gIgorInNvIHRoYXQgYmFja3BvcnRzIHdpdGggYSBsb3dlciB2ZXJzaW9uIG51bWJlciBidXQgdGhlIHNhbWUgdXBzdHJlYW0gdmVyc2lvbiAiCisic3RpbGwgc2F0aXNmeSB0aGUgZ2VuZXJhdGVkIGRlcGVuZGVuY2llcy4gIElmIHRoZSBEZWJpYW4gcmV2aXNpb24gY2FuJ3QgYmUgIgorImRyb3BwZWQgYmVjYXVzZSB0aGUgc3ltYm9sIHJlYWxseSBnb3QgYWRkZWQgYnkgdGhlIERlYmlhbiBzcGVjaWZpYyBjaGFuZ2UsICIKKyJ0aGVuIG9uZSBzaG91bGQgc3VmZml4IHRoZSB2ZXJzaW9uIHdpdGggXCJ+XCIuIgorbXNnc3RyICIiCisiU3ltYm9sZmlsZXJuYSDDpHIgYmFyYSByaWt0aWd0IG55dHRpZ2Egb20gZGUgbW90c3ZhcmFyIGh1ciBwYWtldGV0IGhhciAiCisidXR2ZWNrbGF0cyDDtnZlciBmbGVyYSB2ZXJzaW9uZXIuIERlIHBha2V0YW5zdmFyaWdhIG3DpXN0ZSBkw6RyZsO2ciB1cHBkYXRlcmEgIgorImRlbSB2YXJqZSBnw6VuZyBlbiBueSBzeW1ib2wgbMOkZ2dzIHRpbGwgc8OlIGF0dCBkZXNzIGFzc29jaWVyYWRlIG1pbmltYWxhICIKKyJ2ZXJzaW9uIG1vdHN2YXJhciB2ZXJrbGlnaGV0ZW4uIEbDtnIgYXR0IGfDtnJhIGRldHRhIHDDpSBldHQgcmlrdGlndCBzw6R0dCBmaW5ucyAiCisiZGV0IGRpZmZlcmVuc2ZpbGVyIGkgYnlnZ2xvZ2dhcm5hLiBJIGRlIGZsZXN0YSBmYWxsIGthbiBkaWZmZXJlbnNmaWxlbiAiCisiYXBwbGljZXJhcyBkaXJla3QgcMOlIGZpbGVuIGRlYmlhbi9JPHBha2V0Pi4gTWVkIGRldCBpIMOldGFua2Ugc8OlIGJlaMO2dnMgZGV0ICIKKyJvZnRhc3QgeXR0ZXJsaWdhcmUganVzdGVyaW5nYXI6IGRldCByZWtvbW1lbmRlcmFzIGF0dCBza2lwcGEgIgorIkRlYmlhbnJldmlzaW9uZW4gZnLDpW4gZGV0IG1pbmltYWxhIHZlcnNpb25zbnVtbWVyIHPDpSBhdHQgZGVuICIKKyJiYWvDpXRhbnBhc3NuaW5nYXIgbWVkIGV0dCBsw6RncmUgdmVyc2lvbnNudW1tZXIsIG1lbiBmcsOlbiBzYW1tYSAiCisidXBwc3Ryw7Ztc3ZlcnNpb24sIGZvcnRmYXJhbmRlIHVwcGZ5bGxlciBkZSBnZW5lcmVyYWRlIGJlcm9lbmRlbmEuIE9tICIKKyJEZWJpYW5yZXZpc2lvbmVuIGludGUga2FuIHRhcyBib3J0IHDDpSBncnVuZCBhdiBhdHQgZW4gc3ltYm9sIGZha3Rpc2t0IGxhZGVzICIKKyJ0aWxsIGF2IGVuIERlYmlhbnNwZWNpZmlrIMOkbmRyaW5nIHPDpSBiw7ZyIGV0dCBcIn5cIiBsw6RnZ3MgdGlsbCBpIHNsdXRldCBhdiAiCisidmVyc2lvbmVuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NTkKK21zZ2lkICIiCisiQmVmb3JlIGFwcGx5aW5nIGFueSBwYXRjaCB0byB0aGUgc3ltYm9scyBmaWxlLCB0aGUgbWFpbnRhaW5lciBzaG91bGQgZG91YmxlLSIKKyJjaGVjayB0aGF0IGl0J3Mgc2FuZS4gUHVibGljIHN5bWJvbHMgYXJlIG5vdCBzdXBwb3NlZCB0byBkaXNhcHBlYXIsIHNvIHRoZSAiCisicGF0Y2ggc2hvdWxkIGlkZWFsbHkgb25seSBhZGQgbmV3IGxpbmVzLiIKK21zZ3N0ciAiIgorIklubmFuIG1hbiBhcHBsaWNlcmFyIGVuIHBhdGNoIHDDpSBzeW1ib2xmaWxlbiBiw7ZyIGRlIGFuc3ZhcmlnYSBkdWJiZWxjaGVja2EgIgorImF0dCBkZW4gw6RyIGtvcnJla3QuIFB1YmxpY2VyYWRlIHN5bWJvbGVyIGLDtnIgaW50ZSBmw7Zyc3Zpbm5hLCBzw6UgcGF0Y2hlbiBiw7ZyICIKKyJpZGVlbGx0IHNldHQgYmFyYSBsw6RnZ2EgdGlsbCBueWEgcmFkZXIuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo2NAorbXNnaWQgIiIKKyJOb3RlIHRoYXQgeW91IGNhbiBwdXQgY29tbWVudHMgaW4gc3ltYm9scyBmaWxlczogYW55IGxpbmUgd2l0aCAnIycgYXMgdGhlICIKKyJmaXJzdCBjaGFyYWN0ZXIgaXMgYSBjb21tZW50IGV4Y2VwdCBpZiBpdCBzdGFydHMgd2l0aCAnI2luY2x1ZGUnIChzZWUgIgorInNlY3Rpb24gQjxVc2luZyBpbmNsdWRlcz4pLiBMaW5lcyBzdGFydGluZyB3aXRoICcjTUlTU0lORzonIGFyZSBzcGVjaWFsICIKKyJjb21tZW50cyBkb2N1bWVudGluZyBzeW1ib2xzIHRoYXQgaGF2ZSBkaXNhcHBlYXJlZC4iCittc2dzdHIgIiIKKyJPYnNldmVyYSBhdHQgZHUga2FuIHNrcml2YSBrb21tZW50YXJlciBpIHN5bWJvbHMtZmlsZXI6IGFsbGEgcmFkZXIgbWVkIFwiI1wiICIKKyJzb20gZsO2cnN0YSB0ZWNrZW4gw6RyIGtvbW1lbnRhcmVyLCBzw6V2aWRhIGludGUgZGV0IGLDtnJqYXIgbWVkIFwiI2luY2x1ZGUiCisiXCIgKHNlIHN0eWNrZXQgQjxBbnbDpG5kYSBpbmtsdWRlcmluZ2FyPikuIFJhZGVyIHNvbSBiw7ZyamFyIG1lZCBcIiNNSVNTSU5HOlwiICIKKyLDpHIgc3BlY2llbGxhIGtvbW1lbnRhcmVyIHNvbSBkb2t1bWVudGVyYXIgc3ltYm9sZXIgc29tIGhhciBmw7Zyc3Z1bm5pdC4iCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLWdlbnN5bWJvbHMuMTo2NAorIywgbm8td3JhcAorbXNnaWQgIlVzaW5nICNQQUNLQUdFIyBzdWJzdGl0dXRpb24iCittc2dzdHIgIkFudsOkbmRhICNQQUNLQUdFIy1zdWJzdGl0dWVyaW5nIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo3MgorbXNnaWQgIiIKKyJJbiBzb21lIHJhcmUgY2FzZXMsIHRoZSBuYW1lIG9mIHRoZSBsaWJyYXJ5IHZhcmllcyBiZXR3ZWVuIGFyY2hpdGVjdHVyZXMuICAiCisiVG8gYXZvaWQgaGFyZGNvZGluZyB0aGUgbmFtZSBvZiB0aGUgcGFja2FnZSBpbiB0aGUgc3ltYm9scyBmaWxlLCB5b3UgY2FuIHVzZSAiCisidGhlIG1hcmtlciBJPCNQQUNLQUdFIz4uIEl0IHdpbGwgYmUgcmVwbGFjZWQgYnkgdGhlIHJlYWwgcGFja2FnZSBuYW1lIGR1cmluZyAiCisiaW5zdGFsbGF0aW9uIG9mIHRoZSBzeW1ib2xzIGZpbGVzLiBDb250cmFyeSB0byB0aGUgSTwjTUlOVkVSIz4gbWFya2VyLCAiCisiSTwjUEFDS0FHRSM+IHdpbGwgbmV2ZXIgYXBwZWFyIGluIGEgc3ltYm9scyBmaWxlIGluc2lkZSBhIGJpbmFyeSBwYWNrYWdlLiIKK21zZ3N0ciAiIgorIkkgbsOlZ3JhIHPDpGxsc3ludGEgZmFsbCBza2lsamVyIHNpZyBuYW1uZXQgcMOlIGJpYmxpb3Rla2V0IG1lbGxhbiAiCisiYXJraXRla3R1cmVyLiBGw7ZyIGF0dCB1bmR2aWthIGF0dCBow6VyZGtvZGEgbmFtbmV0IHDDpSBwYWtldGV0IGkgc3ltYm9sZmlsZW4gIgorImthbiBkdSBhbnbDpG5kYSBtYXJrw7ZyZW4gSTwjUEFDS0FHRSM+LiBEZW4gZXJzw6R0dHMgYXYgZGV0IGZha3Rpc2thICIKKyJwYWtldG5hbW5ldCBuw6RyIHN5bWJvbGZpbGVuIGluc3RhbGxlcmFzLiBUaWxsIHNraWxsbmFkIGZyw6VuIEk8I01JTlZFUiM+LSIKKyJtYXJrw7ZyZW4ga29tbWVyIEk8I1BBQ0tBR0UjPiBhbGRyaWcgYXR0IGR5a2EgdXBwIGkgZW4gc3ltYm9sZmlsIGkgZXR0ICIKKyJiaW7DpHJwYWtldC4iCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLWdlbnN5bWJvbHMuMTo3MgorIywgbm8td3JhcAorbXNnaWQgIlVzaW5nIHN5bWJvbCB0YWdzIgorbXNnc3RyICJBbnbDpG5kYSBzeW1ib2x0YWdnYXIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjc5Cittc2dpZCAiIgorIlN5bWJvbCB0YWdnaW5nIGlzIHVzZWZ1bCBmb3IgbWFya2luZyBzeW1ib2xzIHRoYXQgYXJlIHNwZWNpYWwgaW4gc29tZSB3YXkuICAiCisiQW55IHN5bWJvbCBjYW4gaGF2ZSBhbiBhcmJpdHJhcnkgbnVtYmVyIG9mIHRhZ3MgYXNzb2NpYXRlZCB3aXRoIGl0LiBXaGlsZSAiCisiYWxsIHRhZ3MgYXJlIHBhcnNlZCBhbmQgc3RvcmVkLCBvbmx5IGEgc29tZSBvZiB0aGVtIGFyZSB1bmRlcnN0b29kIGJ5IEI8ZHBrZy0iCisiZ2Vuc3ltYm9scz4gYW5kIHRyaWdnZXIgc3BlY2lhbCBoYW5kbGluZyBvZiB0aGUgc3ltYm9scy4gU2VlIHN1YnNlY3Rpb24gIgorIkI8U3RhbmRhcmQgc3ltYm9sIHRhZ3M+IGZvciByZWZlcmVuY2Ugb2YgdGhlc2UgdGFncy4iCittc2dzdHIgIiIKKyJTeW1ib2x0YWdnbmluZyDDpHIgbnl0dGlndCBmw7ZyIGF0dCBtYXJrZXJhIHN5bWJvbGVyIHNvbSDDpHIgc3BlY2llbGxhIHDDpSBuw6Vnb3QgIgorInPDpHR0LiBBbGxhIHN5bWJvbGVyIGthbiBoYSBldHQgZ29kdHlja2xpZ3QgYW50YWwgdGFnZ2FyIGFzc29jaWVyYWRlIG1lZCBzaWcuICIKKyJNZWRhbiBhbGxhIHRhZ2dhciB0b2xrYXMgb2NoIGxhZ3JhcyDDpHIgZGV0IGJhcmEgZXR0IHBhciBhdiBkZW0gc29tIGbDtnJzdMOlcyAiCisiYXYgQjxkcGtnLWdlbnN5bWJvbHM+IG9jaCBzb20gdXRsw7ZzZXIgc3BlY2lhbGhhbnRlcmluZyBhdiBzeW1ib2xlcm5hLiBTZSAiCisidW5kZXJzeW1ib2xlbiBCPFN0YW5kYXJkc3ltYm9sdGFnZ2FyPiBmw7ZyIG1lciBpbmZvcm1hdGlvbiBvbSBkZXNzYSB0YWdnYXIuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo5MQorbXNnaWQgIiIKKyJUYWcgc3BlY2lmaWNhdGlvbiBjb21lcyByaWdodCBiZWZvcmUgdGhlIHN5bWJvbCBuYW1lIChubyB3aGl0ZXNwYWNlIGlzICIKKyJhbGxvd2VkIGluIGJldHdlZW4pLiBJdCBhbHdheXMgc3RhcnRzIHdpdGggYW4gb3BlbmluZyBicmFja2V0IEI8KD4sIGVuZHMgIgorIndpdGggYSBjbG9zaW5nIGJyYWNrZXQgQjwpPiBhbmQgbXVzdCBjb250YWluIGF0IGxlYXN0IG9uZSB0YWcuIE11bHRpcGxlIHRhZ3MgIgorImFyZSBzZXBhcmF0ZWQgYnkgdGhlIEI8fD4gY2hhcmFjdGVyLiBFYWNoIHRhZyBjYW4gb3B0aW9uYWxseSBoYXZlIGEgdmFsdWUgIgorIndoaWNoIGlzIHNlcGFyYXRlZCBmb3JtIHRoZSB0YWcgbmFtZSBieSB0aGUgQjw9PiBjaGFyYWN0ZXIuIFRhZyBuYW1lcyBhbmQgIgorInZhbHVlcyBjYW4gYmUgYXJiaXRyYXJ5IHN0cmluZ3MgZXhjZXB0IHRoZXkgY2Fubm90IGNvbnRhaW4gYW55IG9mIHRoZSAiCisic3BlY2lhbCBCPCk+IEI8fD4gQjw9PiBjaGFyYWN0ZXJzLiBTeW1ib2wgbmFtZXMgZm9sbG93aW5nIGEgdGFnICIKKyJzcGVjaWZpY2F0aW9uIGNhbiBvcHRpb25hbGx5IGJlIHF1b3RlZCB3aXRoIGVpdGhlciBCPCc+IG9yIEI8XCI+IGNoYXJhY3RlcnMgIgorInRvIGFsbG93IHdoaXRlc3BhY2VzIGluIHRoZW0uIEhvd2V2ZXIsIGlmIHRoZXJlIGFyZSBubyB0YWdzIHNwZWNpZmllZCBmb3IgIgorInRoZSBzeW1ib2wsIHF1b3RlcyBhcmUgdHJlYXRlZCBhcyBwYXJ0IG9mIHRoZSBzeW1ib2wgbmFtZSB3aGljaCBjb250aW51ZXMgdXAgIgorInVudGlsIHRoZSBmaXJzdCBzcGFjZS4iCittc2dzdHIgIiIKKyJUYWdnYXJuYSBhbmdlcyBwcmVjaXMgZsO2cmUgc3ltYm9sbmFtbmV0IChpbmdhIGJsYW5rc3RlZyB0aWxsw6V0cyBtZWxsYW4pLiBEZW4gIgorImLDtnJqYXIgYWxsdGlkIG1lZCBlbiB2w6Ruc3RlcnBhcmVudGVzIEI8KD4sIHNsdXRhciBtZWQgZW4gaMO2Z2VycGFyZW50ZXMgQjwpPiwgIgorIm9jaCBtw6VzdGUgaW5uZWjDpWxsYSBtaW5zdCBlbiB0YWdnLiBZdHRlcmxpZ2FyZSB0YWdnYXIgYXZkZWxhcyBtZWQgdGVja25ldCBCPHwiCisiPi4gRW4gdGFnZyBrYW4gaGEgZXR0IHbDpHJkZSwgdmlsa2V0IHNlcGFyZXJhcyBmcsOlbiB0YWdnbmFtbmV0IG1lZCB0ZWNrbmV0ICIKKyJCPD0+LiBUYWdnbmFtbiBvY2ggdsOkcmRlbiBrYW4gdmFyYSBnb2R0eWNrbGlnYSBzdHLDpG5nYXIsIGbDtnJ1dG9tIGF0dCBkZSBpbnRlICIKKyJrYW4gaW5uZWjDpWxsYSBkZSBzcGVjaWVsbGEgdGVja25lbiBCPCk+IEI8fD4gQjw9Pi4gU3ltYm9sbmFtbiBzb20gZsO2bGplciBlbiAiCisidGFnZ2FuZ2l2ZWxzZSBrYW4sIG9tIHPDpSDDtm5za2FzLCBjaXRlcmFzIG1lZCBhbnRpbmdlbiBCPCc+IGVsbGVyIEI8XCI+IGbDtnIgIgorImF0dCB0aWxsw6V0YSBibGFua3N0ZWcuIE9tIGluZ2EgdGFnZ2FyIGFuZ2VzIGbDtnIgc3ltYm9sZW4gdG9sa2FzIGRvY2sgIgorImNpdGF0dGVja2VuIHNvbSBlbiBkZWwgYXYgc3ltYm9sbmFtbmV0LCB2aWxrZXQgZm9ydHPDpHR0ZXIgdGlsbCBkZXQgZsO2cnN0YSAiCisiYmxhbmtzdGVnZXQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo5NQorIywgbm8td3JhcAorbXNnaWQgIiIKKyIgKHRhZzE9aSBhbSBtYXJrZWR8dGFnIG5hbWUgd2l0aCBzcGFjZSlcInRhZ2dlZCBxdW90ZWQgc3ltYm9sXCJAQmFzZSAxLjBcbiIKKyIgKG9wdGlvbmFsKXRhZ2dlZF91bnF1b3RlZF9zeW1ib2xAQmFzZSAxLjAgMVxuIgorIiB1bnRhZ2dlZF9zeW1ib2xAQmFzZSAxLjBcbiIKK21zZ3N0ciAiIgorIiAodGFnMT1qYWcgw6RyIG1hcmtlcmFkfHRhZ2duYW1uIG1lZCBibGFua3N0ZWcpXCJ0YWdnYWQgY2l0ZXJhZCBzeW1ib2xcIkBCYXMgMS4wXG4iCisiIChvcHRpb25hbCl0YWdnYWRfb2NpdGVyYWRfc3ltYm9sQEJhcyAxLjAgMVxuIgorIiBvY2l0ZXJhZF9zeW1ib2xAQmFzIDEuMFxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToxMDEKK21zZ2lkICIiCisiVGhlIGZpcnN0IHN5bWJvbCBpbiB0aGUgZXhhbXBsZSBpcyBuYW1lZCBJPHRhZ2dlZCBxdW90ZWQgc3ltYm9sPiBhbmQgaGFzIHR3byAiCisidGFnczogSTx0YWcxPiB3aXRoIHZhbHVlIEk8aSBhbSBtYXJrZWQ+IGFuZCBJPHRhZyBuYW1lIHdpdGggc3BhY2U+IHRoYXQgaGFzICIKKyJubyB2YWx1ZS4gVGhlIHNlY29uZCBzeW1ib2wgbmFtZWQgSTx0YWdnZWRfdW5xdW90ZWRfc3ltYm9sPiBpcyBvbmx5IHRhZ2dlZCAiCisid2l0aCB0aGUgdGFnIG5hbWVkIEk8b3B0aW9uYWw+LiBUaGUgbGFzdCBzeW1ib2wgaXMgYW4gZXhhbXBsZSBvZiB0aGUgbm9ybWFsICIKKyJ1bnRhZ2dlZCBzeW1ib2wuIgorbXNnc3RyICIiCisiRGVuIGbDtnJzdGEgc3ltYm9sZW4gaSBleGVtcGxldCDDpHIgaGV0ZXIgSTx0YWdnYWQgY2l0ZXJhZCBzeW1ib2w+IG9jaCBoYXIgdHbDpSAiCisidGFnZ2FyOiBJPHRhZzE+IG1lZCB2w6RyZGV0IEk8amFnIMOkciBtYXJrZXJhZD4gb2NoIEk8dGFnZ25hbW4gbWVkIGJsYW5rc3RlZz4gIgorInNvbSBpbnRlIGhhciBuw6Vnb3QgdsOkcmRlLiBEZW4gYW5kcmEgc3ltYm9sZW4gaGV0ZXIgSTx0YWdnYWRfb2NpdGVyYWRfc3ltYm9sPiAiCisib2NoIMOkciBiYXJhIHRhZ2dhZCBtZWQgdGFnZ2VuIHNvbSBoZXRlciBJPG9wdGlvbmFsPi4gRGVuIHNpc3RhIHN5bWJvbGVuIMOkciAiCisiZXR0IGV4ZW1wZWwgcMOlIGVuIG5vcm1hbCwgb3RhZ2dhZCBzeW1ib2wuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToxMTMKK21zZ2lkICIiCisiU2luY2Ugc3ltYm9sIHRhZ3MgYXJlIGFuIGV4dGVuc2lvbiBvZiB0aGUgSTxkZWItc3ltYm9scyg1KT4gZm9ybWF0LCB0aGV5IGNhbiAiCisib25seSBiZSBwYXJ0IG9mIHRoZSBzeW1ib2xzIGZpbGVzIHVzZWQgaW4gc291cmNlIHBhY2thZ2VzICh0aG9zZSBmaWxlcyAiCisic2hvdWxkIHRoZW4gYmUgc2VlbiBhcyB0ZW1wbGF0ZXMgdXNlZCB0byBidWlsZCB0aGUgc3ltYm9scyBmaWxlcyB0aGF0IGFyZSAiCisiZW1iZWRkZWQgaW4gYmluYXJ5IHBhY2thZ2VzKS4gV2hlbiBCPGRwa2ctZ2Vuc3ltYm9scz4gaXMgY2FsbGVkIHdpdGhvdXQgdGhlICIKKyJJPC10PiBvcHRpb24sIGl0IHdpbGwgb3V0cHV0IHN5bWJvbHMgZmlsZXMgY29tcGF0aWJsZSB0byB0aGUgSTxkZWItc3ltYm9scyg1KSIKKyI+IGZvcm1hdDogaXQgZnVsbHkgcHJvY2Vzc2VzIHN5bWJvbHMgYWNjb3JkaW5nIHRvIHRoZSByZXF1aXJlbWVudHMgb2YgdGhlaXIgIgorInN0YW5kYXJkIHRhZ3MgYW5kIHN0cmlwcyBhbGwgdGFncyBmcm9tIHRoZSBvdXRwdXQuIE9uIHRoZSBjb250cmFyeSwgaW4gIgorInRlbXBsYXRlIG1vZGUgKEk8LXQ+KSBhbGwgc3ltYm9scyBhbmQgdGhlaXIgdGFncyAoYm90aCBzdGFuZGFyZCBhbmQgdW5rbm93biAiCisib25lcykgIGFyZSBrZXB0IGluIHRoZSBvdXRwdXQgYW5kIGFyZSB3cml0dGVuIGluIHRoZWlyIG9yaWdpbmFsIGZvcm0gYXMgdGhleSAiCisid2VyZSBsb2FkZWQuIgorbXNnc3RyICIiCisiRWZ0ZXJzb20gc3ltYm9sdGFnZ2FyIGVyIGVuIHV0w7ZrbmluZyBhdiBmb3JtYXRldCBpIEk8ZGViLXN5bWJvbHMoNSk+IGthbiBkZSAiCisiYmFyYSBhbnbDpG5kYXMgaSBzeW1ib2xmaWxlciBpIGvDpGxsa29kc3Bha2V0IChkZXNzYSBmaWxlciDDpHIgYXR0IGFuc2Ugc29tICIKKyJtYWxsYXIgc29tIGFudsOkbmRzIGbDtnIgYXR0IGJ5Z2dhIHN5bWJvbGZpbGVybmEgc29tIGZpbm5zIGkgYmluw6RycGFrZXRlbikuICIKKyJOw6RyIEI8ZHBrZy1nZW5zeW1ib2xzPiBhbnJvcGFzIHV0YW4gZmxhZ2dhbiBJPC10PiBrb21tZXIgZGV0IGF0dCBtYXRhIHV0ICIKKyJzeW1ib2xmaWxlciBrb21wYXRpYmxhIG1lZCBJPGRlYi1zeW1ib2xzKDUpPi1mb3JtYXRldDogZGV0IGhhbnRlcmFyIHN5bWJvbGVyICIKKyJoZWx0IGJlcm9lbmRlIHDDpSB2YWQgc29tIGJlc2tyaXZzIGF2IHN0YW5kYXJkdGFnZ2FybmEgb2NoIHRhciBib3J0IGFsbGEgIgorInRhZ2dhciBmcsOlbiB1dGRhdGEuIEkgbWFsbC1sw6RnZSAoSTwtdD4pIGtvbW1lciBkw6RyZW1vdCBhbGxhIHN5bWJvbGVyIG9jaCAiCisiZGVyYXMgdGFnZ2FyIChiw6VkZSBzdGFuZGFyZCBvY2ggb2vDpG5kYSkgYXR0IGJlaMOlbGxhcyBpIHV0ZGF0YSBvY2ggc2tyaXZhcyBpICIKKyJzaW4gb3JpZ2luYWxmb3JtIHPDpSBzb20gZGUgbMOkc3RlcyBpbi4iCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLWdlbnN5bWJvbHMuMToxMTMKKyMsIG5vLXdyYXAKK21zZ2lkICJTdGFuZGFyZCBzeW1ib2wgdGFncyIKK21zZ3N0ciAiU3RhbmRhcmRzeW1ib2x0YWdnYXIiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbnN5bWJvbHMuMToxMTQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPG9wdGlvbmFsPiIKK21zZ3N0ciAiQjxvcHRpb25hbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjEyNAorbXNnaWQgIiIKKyJBIHN5bWJvbCBtYXJrZWQgYXMgb3B0aW9uYWwgY2FuIGRpc2FwcGVhciBmcm9tIHRoZSBsaWJyYXJ5IGF0IGFueSB0aW1lIGFuZCAiCisidGhhdCB3aWxsIG5ldmVyIGNhdXNlIEI8ZHBrZy1nZW5zeW1ib2xzPiB0byBmYWlsLiBIb3dldmVyLCBkaXNhcHBlYXJlZCAiCisib3B0aW9uYWwgc3ltYm9scyB3aWxsIGNvbnRpbnVvdXNseSBhcHBlYXIgYXMgTUlTU0lORyBpbiB0aGUgZGlmZiBpbiBlYWNoIG5ldyAiCisicGFja2FnZSByZXZpc2lvbi4gIFRoaXMgYmVoYXZpb3VyIHNlcnZlcyBhcyBhIHJlbWluZGVyIGZvciB0aGUgbWFpbnRhaW5lciAiCisidGhhdCBzdWNoIGEgc3ltYm9sIG5lZWRzIHRvIGJlIHJlbW92ZWQgZnJvbSB0aGUgc3ltYm9sIGZpbGUgb3IgcmVhZGRlZCB0byAiCisidGhlIGxpYnJhcnkuIFdoZW4gdGhlIG9wdGlvbmFsIHN5bWJvbCwgd2hpY2ggd2FzIHByZXZpb3VzbHkgZGVjbGFyZWQgYXMgIgorIk1JU1NJTkcsIHN1ZGRlbmx5IHJlYXBwZWFycyBpbiB0aGUgbmV4dCByZXZpc2lvbiwgaXQgd2lsbCBiZSB1cGdyYWRlZCBiYWNrICIKKyJ0byB0aGUgXCJleGlzdGluZ1wiIHN0YXR1cyB3aXRoIGl0cyBtaW5pbXVtIHZlcnNpb24gdW5jaGFuZ2VkLiIKK21zZ3N0ciAiIgorIkVuIHN5bWJvbCBtYXJrZXJhZCBzb20gdmFsZnJpIChvcHRpb25hbCkga2FuIGbDtnJzdmlubmEgZnLDpW4gYmlibGlvdGVrdGV0IG7DpHIgIgorInNvbSBoZWxzdCBvY2gga29tbWVyIGFsZHJpZyBnw7ZyYSBzw6UgYXR0IEI8ZHBrZy1nZW5zeW1ib2xzPiBtaXNzbHlja2FzLiAiCisiRsO2cnN2dW5uYSBzeW1ib2xlciBrb21tZXIgZG9jayBmb3J0ZmFyYW5kZSB2aXNhcyBzb20gc2FrbmFkZSAoTUlTU0lORykgaSAiCisiZGlmZmVyZW5zZW4gZsO2ciB2YXJqZSBueSBwYWtldHZlcnNpb24uIERldHRhIGJldGVlbmRlIGZ1bmdlcmFyIHNvbSBlbiAiCisicMOlbWlubmVsc2UgZsO2ciBkZSBwYWtldGFuc3ZhcmlnYSBvbSBhdHQgc3ltYm9sZW4gbcOlc3RlIHRhcyBib3J0IGZyw6VuICIKKyJzeW1ib2xmaWxlbiBlbGxlciBsw6RnZ2FzIHRpbGxiYWthIHRpbGwgYmlibGlvdGVrZXQuIE7DpHIgZW4gdmFsZnJpIHN5bWJvbCBzb20gIgorInRpZGlnYXJlIG1hcmtlcmF0cyBzb20gc2FrbmFkIChNSVNTSU5HKSBwbMO2dHNsaWd0IGR5a2VyIHVwcCBpZ2VuIGkgZW4gc2VuYXJlICIKKyJ2ZXJzaW9uIGtvbW1lciBkZW4gYXR0IHVwcGdyYWRlcmFzIHRpbGxiYWthIHRpbGwgYmVmaW50bGlnc3RhdHVzIChcImV4aXN0aW5nIgorIlwiKSBtZWQgZGVuIG1pbnN0YSB0aWxsZ8OkbmdsaWdhIHZlcnNpb25lbiBvZsO2csOkbmRyYWQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToxMjkKK21zZ2lkICIiCisiVGhpcyB0YWcgaXMgdXNlZnVsIGZvciBzeW1ib2xzIHdoaWNoIGFyZSBwcml2YXRlIHdoZXJlIHRoZWlyIGRpc2FwcGVhcmFuY2UgIgorImRvIG5vdCBjYXVzZSBBQkkgYnJlYWthZ2UuIEZvciBleGFtcGxlLCBtb3N0IG9mIEMrKyB0ZW1wbGF0ZSBpbnN0YW50aWF0aW9ucyAiCisiZmFsbCBpbnRvIHRoaXMgY2F0ZWdvcnkuIExpa2UgYW55IG90aGVyIHRhZywgdGhpcyBvbmUgbWF5IGFsc28gaGF2ZSBhbiAiCisiYXJiaXRyYXJ5IHZhbHVlOiBpdCBjb3VsZCBiZSB1c2VkIHRvIGluZGljYXRlIHdoeSB0aGUgc3ltYm9sIGlzIGNvbnNpZGVyZWQgIgorIm9wdGlvbmFsLiIKK21zZ3N0ciAiIgorIlRhZ2dlbiDDpHIgYW52w6RuZGJhciBmw7ZyIHN5bWJvbGVyIHNvbSDDpHIgcHJpdmF0YSBvY2ggdmFycyBmw7Zyc3Zpbm5hbmRlIGludGUgIgorImfDtnIgYXR0IEFCSTpldCBnw6VyIHPDtm5kZXIuIERlIGZsZXN0YSBDKystbWFsbGluc3RhbnNpZXJpbmdhciBmYWxsZXIgdGlsbCAiCisiZXhlbXBlbCBpbiB1bmRlciBkZW5uYSBrYXRlZ29yaS4gU29tIGFuZHJhIHRhZ2dhciBrYW4gZGVuIGjDpHIgw6R2ZW4gaGEgZXR0ICIKKyJnb2R0eWNrbGlndCB2w6RyZGU6IGRldCBrYW4gYW52w6RuZGFzIGbDtnIgYXR0IGluZGlrZXJhIHZhcmbDtnIgc3ltYm9sZW4gw6RyIGF0dCAiCisiYW5zZSBzb20gdmFsZnJpLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjEyOQorIywgbm8td3JhcAorbXNnaWQgIkI8YXJjaD0+STxhcmNoaXRlY3R1cmUgbGlzdD4iCittc2dzdHIgIkI8YXJjaD0+STxhcmtpdGVrdHVybGlzdGE+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToxNDIKK21zZ2lkICIiCisiVGhpcyB0YWcgYWxsb3dzIG9uZSB0byByZXN0cmljdCB0aGUgc2V0IG9mIGFyY2hpdGVjdHVyZXMgd2hlcmUgdGhlIHN5bWJvbCBpcyAiCisic3VwcG9zZWQgdG8gZXhpc3QuIFdoZW4gdGhlIHN5bWJvbHMgbGlzdCBpcyB1cGRhdGVkIHdpdGggdGhlIHN5bWJvbHMgIgorImRpc2NvdmVyZWQgaW4gdGhlIGxpYnJhcnksIGFsbCBhcmNoLXNwZWNpZmljIHN5bWJvbHMgd2hpY2ggZG8gbm90IGNvbmNlcm4gIgorInRoZSBjdXJyZW50IGhvc3QgYXJjaGl0ZWN0dXJlIGFyZSB0cmVhdGVkIGFzIGlmIHRoZXkgZGlkIG5vdCBleGlzdC4gSWYgYW4gIgorImFyY2gtc3BlY2lmaWMgc3ltYm9sIG1hdGNoaW5nIHRoZSBjdXJyZW50IGhvc3QgYXJjaGl0ZWN0dXJlIGRvZXMgbm90IGV4aXN0ICIKKyJpbiB0aGUgbGlicmFyeSwgbm9ybWFsIHByb2NlZHVyZXMgZm9yIG1pc3Npbmcgc3ltYm9scyBhcHBseSBhbmQgaXQgbWF5IGNhdXNlICIKKyJCPGRwa2ctZ2Vuc3ltYm9scz4gdG8gZmFpbC4gT24gdGhlIG90aGVyIGhhbmQsIGlmIHRoZSBhcmNoLXNwZWNpZmljIHN5bWJvbCAiCisiaXMgZm91bmQgd2hlbiBpdCB3YXMgbm90IHN1cHBvc2VkIHRvIGV4aXN0IChiZWNhdXNlIHRoZSBjdXJyZW50IGhvc3QgIgorImFyY2hpdGVjdHVyZSBpcyBub3QgbGlzdGVkIGluIHRoZSB0YWcpLCBpdCBpcyBtYWRlIGFyY2ggbmV1dHJhbCAoaS5lLiB0aGUgIgorImFyY2ggdGFnIGlzIGRyb3BwZWQgYW5kIHRoZSBzeW1ib2wgd2lsbCBhcHBlYXIgaW4gdGhlIGRpZmYgZHVlIHRvIHRoaXMgIgorImNoYW5nZSksIGJ1dCBpdCBpcyBub3QgY29uc2lkZXJlZCBhcyBuZXcuIgorbXNnc3RyICIiCisiRGVubmEgdGFnIGfDtnIgZGV0IG3DtmpsaWd0IGF0dCBiZWdyw6Ruc2Egdmlsa2VuIHVwcHPDpHR0bmluZyBhcmtpdGVrdHVyZXIgIgorInN5bWJvbGVuIMOkciB0w6Rua3QgYXR0IGZpbm5hcyBmw7ZyLiBOw6RyIHN5bWJvbGxpc3RhbiB1cHBkYXRlcmFzIG1lZCBzeW1ib2xlciAiCisic29tIHVwcHTDpGNrcyBpIGJpYmxpb3Rla2V0IGJlaGFuZGxhcyBhbGxhIGFya2l0ZWt0dXJzcGVjaWZpa2Egc3ltYm9sZXIgc29tICIKKyJpbnRlIGfDpGxsZXIgZGVuIGFrdHVlbGxhIHbDpHJkYXJraXRla3R1cmVuIHNvbSBvbSBkZSBpbnRlIGZhbm5zLiBPbSBlbiAiCisiYXJraXRla3R1cnNwZWNpZmlrIHN5bWJvbCBzb20gbW90c3ZhcmFyIGRlbiBha3R1ZWxsYSB2w6RyZGFya2l0ZWt0dXJlbiBpbnRlICIKKyJleGlzdGVyYXIgaSBiaWJsaW90ZWtldCBnw6RsbGVyIGRlIHZhbmxpZ2EgcmVnbGVybmEgZsO2ciBzYWtuYWRlIHN5bWJvbGVyLCBvY2ggIgorImthbiBmw6UgQjxkcGtnLWdlbnN5bWJvbHM+IGF0dCBtaXNzbHlja2FzLiDDhSBhbmRyYSBzaWRhbiwgb20gZW4gIgorImFya2l0ZWt0dXJzcGVjaWZpayBzeW1ib2wgaGl0dGFzIGTDpHIgZGVuIGludGUgdmFyIG1lbmFkIGF0dCBmaW5uYXMgKGTDpSBkZW4gIgorImFrdHVlbGxhIHbDpHJkYXJraXRla3R1cmVuIGludGUgw6RyIGxpc3RhZCBpIHRhZ2dlbiksIGfDtnJzIGRlbiAiCisiYXJraXRla3R1cm5ldXRyYWwgKGR2cy4gXCJhcmNoXCItdGFnZ2VuIHRhcyBib3J0IG9jaCBzeW1ib2xlbiBrb21tZXIgZmlubmFzICIKKyJtZWQgaSBkaWZmZXJlbnNlbiBww6UgZ3J1bmQgYXYgZGVubmEgw6RuZHJpbmcpLCBtZW4gZGVuIGFuc2VzIGludGUgc29tIG55LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTQ4Cittc2dpZCAiIgorIldoZW4gb3BlcmF0aW5nIGluIHRoZSBkZWZhdWx0IG5vbi10ZW1wbGF0ZSBtb2RlLCBhbW9uZyBhcmNoLXNwZWNpZmljIHN5bWJvbHMgIgorIm9ubHkgdGhvc2UgdGhhdCBtYXRjaCB0aGUgY3VycmVudCBob3N0IGFyY2hpdGVjdHVyZSBhcmUgd3JpdHRlbiB0byB0aGUgIgorInN5bWJvbHMgZmlsZS4gT24gdGhlIGNvbnRyYXJ5LCBhbGwgYXJjaC1zcGVjaWZpYyBzeW1ib2xzIChpbmNsdWRpbmcgdGhvc2UgIgorImZyb20gZm9yZWlnbiBhcmNoZXMpIGFyZSBhbHdheXMgd3JpdHRlbiB0byB0aGUgc3ltYm9sIGZpbGUgd2hlbiBvcGVyYXRpbmcgaW4gIgorInRlbXBsYXRlIG1vZGUuIgorbXNnc3RyICIiCisiSSBkZXQgdmFubGlnYSBpY2tlLW1hbGwtbMOkZ2V0IHNrcml2cyBlbmRhc3QgZGUgYXJraXRla3R1cnNwZWNpZmlrYSBzeW1ib2xlciAiCisic29tIG1vdHN2YXJhciBkZW4gYWt0dWVsbGEgdsOkcmRhcmtpdGVrdHVyZW4gdGlsbCBzeW1ib2xmaWxlbi4gw4UgYW5kcmEgc2lkYW4gIgorInNrcml2cyBhbGxhIGFya2l0ZWt0dXJzcGVjaWZpa2Egc3ltYm9sZXIgKGlua2x1c2l2ZSBkZSBmcsOlbiBhbmRyYSAiCisiYXJraXRla3R1cmVyKSB0aWxsIHN5bWJvbGZpbGVuIGkgbWFsbC1sw6RnZXQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToxNTQKK21zZ2lkICIiCisiVGhlIGZvcm1hdCBvZiBJPGFyY2hpdGVjdHVyZSBsaXN0PiBpcyB0aGUgc2FtZSBhcyB0aGUgb25lIHVzZWQgaW4gdGhlICIKKyJJPEJ1aWxkLURlcGVuZHM+IGZpZWxkIG9mIEk8ZGViaWFuL2NvbnRyb2w+IChleGNlcHQgdGhlIGVuY2xvc2luZyBzcXVhcmUgIgorImJyYWNrZXRzIFtdKS4gRm9yIGV4YW1wbGUsIHRoZSBmaXJzdCBzeW1ib2wgZnJvbSB0aGUgbGlzdCBiZWxvdyB3aWxsIGJlICIKKyJjb25zaWRlcmVkIG9ubHkgb24gYWxwaGEsIGFtZDY0LCBrZnJlZWJzZC1hbWQ2NCBhbmQgaWE2NCBhcmNoaXRlY3R1cmVzIHdoaWxlICIKKyJ0aGUgc2Vjb25kIG9uZSBhbnl3aGVyZSBleGNlcHQgb24gYXJtZWwuIgorbXNnc3RyICIiCisiRm9ybWF0ZXQgcMOlIEk8YXJraXRla3R1cmxpc3RhPiDDpHIgZGV0c2FtbWEgc29tIGRldCBzb20gYW52w6RuZHMgaSBJPEJ1aWxkLSIKKyJEZXBlbmRzPi1mw6RsdGV0IGkgSTxkZWJpYW4vY29udHJvbD4gKGJvcnRzZXR0IGZyw6VuIGRlIG9tc2x1dGFuZGUgIgorImhha3BhcmVudGVzZXJuYSBbXSkuIERlbiBmw7Zyc3RhIHN5bWJvbGVuIGZyw6VuIGxpc3RhbiBuZWRhbiwgdGlsbCBleGVtcGVsLCAiCisia29tbWVyIGVuZGFzdCBhdHQgdGFzIG1lZCBww6UgYXJraXRla3R1cmVybmEgYWxwaGEsIGFtZDY0LCBrZnJlZWJzZC1hbWQ2NCBvY2ggIgorImlhNjQsIG1lZGFuIGRlbiBhbmRyYSB0YXMgbWVkIMO2dmVyYWxsdCBmw7ZydXRvbSBww6UgYXJtZWwuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToxNTcKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiIChhcmNoPWFscGhhIGFtZDY0IGtmcmVlYnNkLWFtZDY0IGlhNjQpYV82NGJpdF9zcGVjaWZpY19zeW1ib2xAQmFzZSAxLjBcbiIKKyIgKGFyY2g9IWFybWVsKXN5bWJvbF9hcm1lbF9kb2VzX25vdF9oYXZlQEJhc2UgMS4wXG4iCittc2dzdHIgIiIKKyIgKGFyY2g9YWxwaGEgYW1kNjQga2ZyZWVic2QtYW1kNjQgaWE2NCllbl82NGJpdC1zcGVjaWZpa19zeW1ib2xAQmFzZSAxLjBcbiIKKyIgKGFyY2g9IWFybWVsKXN5bWJvbF9hcm1lbF9pbnRlX2hhckBCYXNlIDEuMFxuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTU3CisjLCBuby13cmFwCittc2dpZCAiQjxpZ25vcmUtYmxhY2tsaXN0PiIKK21zZ3N0ciAiQjxpZ25vcmUtYmxhY2tsaXN0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTY1Cittc2dpZCAiIgorImRwa2ctZ2Vuc3ltYm9scyBoYXMgYW4gaW50ZXJuYWwgYmxhY2tsaXN0IG9mIHN5bWJvbHMgdGhhdCBzaG91bGQgbm90IGFwcGVhciAiCisiaW4gc3ltYm9scyBmaWxlcyBhcyB0aGV5IGFyZSB1c3VhbGx5IG9ubHkgc2lkZS1lZmZlY3RzIG9mIGltcGxlbWVudGF0aW9uICIKKyJkZXRhaWxzIG9mIHRoZSB0b29sY2hhaW4uIElmIGZvciBzb21lIHJlYXNvbiwgeW91IHJlYWxseSB3YW50IG9uZSBvZiB0aG9zZSAiCisic3ltYm9scyB0byBiZSBpbmNsdWRlZCBpbiB0aGUgc3ltYm9scyBmaWxlLCB5b3Ugc2hvdWxkIHRhZyB0aGUgc3ltYm9sIHdpdGggIgorIkI8aWdub3JlLWJsYWNrbGlzdD4uIEl0IGNhbiBiZSBuZWNlc3NhcnkgZm9yIHNvbWUgbG93IGxldmVsIHRvb2xjaGFpbiAiCisibGlicmFyaWVzIGxpa2UgbGliZ2NjLiIKK21zZ3N0ciAiIgorImRwa2ctZ2Vuc3ltYm9scyBoYXIgZW4gaW50ZXJuIHN2YXJ0bGlzdGEgw7Z2ZXIgc3ltYm9sZXIgc29tIGludGUgc2thbGwgIgorImbDtnJla29tbWEgaSBzeW1ib2xmaWxlciBlZnRlcnNvbSBkZSBvZnRhc3QgYmFyYSDDpHIgc2lkb2VmZmVrdGVyIGZyw6VuICIKKyJpbXBsZW1lbnRhdGlvbnNkZXRhbGplciBpIHZlcmt0eWdza2VkamFuLiBPbSBkdSwgYXYgbsOlZ29uIG9yc2FrLCB2ZXJrbGlnZW4gIgorInZpbGwgYXR0IGVuIGF2IGRlc3NhIHN5bWJvbGVyIHNrYWxsIHRhcyBtZWQgaSBzeW1ib2xmaWxlbiBtw6VzdGUgZHUgdGFnZ2EgIgorInN5bWJvbGVuIG1lZCBCPGlnbm9yZS1ibGFja2xpc3Q+LiBEZXQga2FuIHZhcmEgbsO2ZHbDpG5kaWd0IGbDtnIgbMOlZ25pdsOlLSIKKyJ2ZXJrdHlnc2tlZGplYmlibGlvdGVrIHNvbSBsaWJnY2MuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTY1IGRwa2ctZ2Vuc3ltYm9scy4xOjIwMgorIywgbm8td3JhcAorbXNnaWQgIkI8YysrPiIKK21zZ3N0ciAiQjxjKys+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToxNjkKK21zZ2lkICIiCisiRGVub3RlcyBJPGMrKz4gc3ltYm9sIHBhdHRlcm4uIFNlZSBCPFVzaW5nIHN5bWJvbCBwYXR0ZXJucz4gc3Vic2VjdGlvbiBiZWxvdy4iCittc2dzdHIgIiIKKyJCZXRlY2tuYXIgSTxjKys+LXN5bWJvbG3Dtm5zdGVyLiBTZSBzdHlja2V0IEI8QW52w6RuZGEgc3ltYm9sbcO2bnN0ZXI+IG5lZGFuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjE2OSBkcGtnLWdlbnN5bWJvbHMuMToyMzMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHN5bXZlcj4iCittc2dzdHIgIkI8c3ltdmVyPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MTczCittc2dpZCAiIgorIkRlbm90ZXMgSTxzeW12ZXI+IChzeW1ib2wgdmVyc2lvbikgc3ltYm9sIHBhdHRlcm4uIFNlZSBCPFVzaW5nIHN5bWJvbCAiCisicGF0dGVybnM+IHN1YnNlY3Rpb24gYmVsb3cuIgorbXNnc3RyICIiCisiQW5nZXIgSTxzeW12ZXI+IChzeW1ib2x2ZXJzaW9uKS1zeW1ib2xtw7Zuc3RyZXQuIFNlIHN0eWNrZXQgQjxBbnbDpG5kYSAiCisic3ltYm9sbcO2bnN0ZXI+IG5lZGFuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjE3MyBkcGtnLWdlbnN5bWJvbHMuMToyNTgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHJlZ2V4PiIKK21zZ3N0ciAiQjxyZWdleD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjE3NworbXNnaWQgIiIKKyJEZW5vdGVzIEk8cmVnZXg+IHN5bWJvbCBwYXR0ZXJuLiBTZWUgQjxVc2luZyBzeW1ib2wgcGF0dGVybnM+IHN1YnNlY3Rpb24gIgorImJlbG93LiIKK21zZ3N0ciAiIgorIkFuZ2VyIEk8cmVnZXg+LXN5bWJvbG3Dtm5zdHJldC4gU2Ugc3R5Y2tldCBJPEFudsOkbmRhIHN5bWJvbG3Dtm5zdGVyPiBuZWRhbi4iCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLWdlbnN5bWJvbHMuMToxNzcKKyMsIG5vLXdyYXAKK21zZ2lkICJVc2luZyBzeW1ib2wgcGF0dGVybnMiCittc2dzdHIgIkFudsOkbmRhIHN5bWJvbG3Dtm5zdGVyIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToxODUKK21zZ2lkICIiCisiVW5saWtlIGEgc3RhbmRhcmQgc3ltYm9sIHNwZWNpZmljYXRpb24sIGEgcGF0dGVybiBtYXkgY292ZXIgbXVsdGlwbGUgcmVhbCAiCisic3ltYm9scyBmcm9tIHRoZSBsaWJyYXJ5LiBCPGRwa2ctZ2Vuc3ltYm9scz4gd2lsbCBhdHRlbXB0IHRvIG1hdGNoIGVhY2ggIgorInBhdHRlcm4gYWdhaW5zdCBlYWNoIHJlYWwgc3ltYm9sIHRoYXQgZG9lcyBJPG5vdD4gaGF2ZSBhIHNwZWNpZmljIHN5bWJvbCAiCisiY291bnRlcnBhcnQgZGVmaW5lZCBpbiB0aGUgc3ltYm9sIGZpbGUuIFdoZW5ldmVyIHRoZSBmaXJzdCBtYXRjaGluZyBwYXR0ZXJuICIKKyJpcyBmb3VuZCwgYWxsIGl0cyB0YWdzIGFuZCBwcm9wZXJ0aWVzIHdpbGwgYmUgdXNlZCBhcyBhIGJhc2lzIHNwZWNpZmljYXRpb24gIgorIm9mIHRoZSBzeW1ib2wuIElmIG5vbmUgb2YgdGhlIHBhdHRlcm5zIG1hdGNoZXMsIHRoZSBzeW1ib2wgd2lsbCBiZSAiCisiY29uc2lkZXJlZCBhcyBuZXcuIgorbXNnc3RyICIiCisiVGlsbCBza2lsbG5hZCBmcsOlbiB2YW5saWdhIHN5bWJvbHNwZWNpZmlrYXRpb25lciBrYW4gZXR0IG3Dtm5zdGVyIHTDpGNrYSBmbGVyYSAiCisiZmFrdGlza2Egc3ltYm9sZXIgZnLDpW4gYmlibGlvdGVrZXQuIEI8ZHBrZy1nZW5zeW1ib2xzPiBrb21tZXIgZsO2cnPDtmthIG1hdGNoYSAiCisidmFyamUgbcO2bnN0ZXIgbW90IHZhcmplIGZha3Rpc2sgc3ltYm9sIHNvbSBJPGludGU+IGhhciBlbiBtb3RzdmFyYW5kZSAiCisic3BlY2lmaWsgc3ltYm9sIGRlZmluaWVyYWQgaSBzeW1ib2xmaWxlbi4gU8OlIGZvcnQgZGV0IGbDtnJzdGEgbcO2bnN0ZXIgc29tICIKKyJtb3RzdmFyYXIgc3ltYm9sZW4gaGl0dGFzIGtvbW1lciBhbGxhIGRlc3MgdGFnZ2FyIG9jaCBlZ2Vuc2thcGVyIGF0dCAiCisiYW52w6RuZGFzIHNvbSBlbiBiYXNzcGVjaWZpa2F0aW9uIGbDtnIgc3ltYm9sZW4uIE9tIGluZ2V0IG3Dtm5zdGVyIG1vdHN2YXJhciAiCisic3ltYm9sZW4ga29tbWVyIGRlbiBhdHQgdG9sa2FzIHNvbSBueS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjE5MworbXNnaWQgIiIKKyJBIHBhdHRlcm4gaXMgY29uc2lkZXJlZCBsb3N0IGlmIGl0IGRvZXMgbm90IG1hdGNoIGFueSBzeW1ib2wgaW4gdGhlIGxpYnJhcnkuICIKKyJCeSBkZWZhdWx0IHRoaXMgd2lsbCB0cmlnZ2VyIGEgQjxkcGtnLWdlbnN5bWJvbHM+IGZhaWx1cmUgdW5kZXIgSTwtYzE+IG9yICIKKyJoaWdoZXIgbGV2ZWwuIEhvd2V2ZXIsIGlmIHRoZSBmYWlsdXJlIGlzIHVuZGVzaXJlZCwgdGhlIHBhdHRlcm4gbWF5IGJlICIKKyJtYXJrZWQgd2l0aCB0aGUgSTxvcHRpb25hbD4gdGFnLiBUaGVuIGlmIHRoZSBwYXR0ZXJuIGRvZXMgbm90IG1hdGNoICIKKyJhbnl0aGluZywgaXQgd2lsbCBvbmx5IGFwcGVhciBpbiB0aGUgZGlmZiBhcyBNSVNTSU5HLiBNb3Jlb3ZlciwgbGlrZSBhbnkgIgorInN5bWJvbCwgdGhlIHBhdHRlcm4gbWF5IGJlIGxpbWl0ZWQgdG8gdGhlIHNwZWNpZmljIGFyY2hpdGVjdHVyZXMgd2l0aCB0aGUgIgorIkk8YXJjaD4gdGFnLiBQbGVhc2UgcmVmZXIgdG8gQjxTdGFuZGFyZCBzeW1ib2wgdGFncz4gc3Vic2VjdGlvbiBhYm92ZSBmb3IgIgorIm1vcmUgaW5mb3JtYXRpb24uIgorbXNnc3RyICIiCisiRXR0IG3Dtm5zdGVyIGFuc2VzIHNvbSB0YXBwYXQgb20gZGV0IGludGUgbW90c3ZhcmFyIG7DpWdyYSBzeW1ib2xlciBpICIKKyJiaWJsaW90ZWtldC4gU29tIHN0YW5kYXJkIGtvbW1lciBkZXR0YSBmw6UgQjxkcGtnLWdlbmNoYW5nZXM+IGF0dCBtaXNzbHlja2FzICIKKyJvbSBJPC1jMT4gZWxsZXIgaMO2Z3JlIGFuZ2VzLiBPbSBldHQgc8OlZGFudCBtaXNzbHlja2FuZGUgaW50ZSDDpHIgw7Zuc2t2w6RydCBrYW4gIgorIm3Dtm5zdHJldCBkb2NrIG3DpHJrYXMgbWVkIHRhZ2dlbiBJPG9wdGlvbmFsPi4gT20gbcO2bnN0cmV0IGTDpSBpbnRlIG1vdHN2YXJhciAiCisibsOlZ29udGluZyBrb21tZXIgZGV0IGJhcmEgZHlrYSB1cHAgaSBkaWZmZXJlbnNlbiBzb20gc2FrbmFzIChNSVNTSU5HKS4gIgorIk3Dtm5zdHJldCBrYW4gZGVzc3V0b20sIHByZWNpcyBzb20gYW5kcmEgc3ltYm9sZXIsIGJlZ3LDpG5zYXMgdGlsbCBzcGVjaWZpa2EgIgorImFya2l0ZWt0dXJlciBtZWQgaGrDpGxwIGF2IEk8YXJjaD4tdGFnZ2VuLiBTZSBzdHlja2V0IEI8U3RhbmRhcmRzeW1ib2x0YWdnYXI+ICIKKyJvdmFuIGbDtnIgbWVyIGluZm9ybWF0aW9uLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjAwCittc2dpZCAiIgorIlBhdHRlcm5zIGFyZSBhbiBleHRlbnNpb24gb2YgdGhlIEk8ZGViLXN5bWJvbHMoNSk+IGZvcm1hdCBoZW5jZSB0aGV5IGFyZSAiCisib25seSB2YWxpZCBpbiBzeW1ib2wgZmlsZSB0ZW1wbGF0ZXMuIFBhdHRlcm4gc3BlY2lmaWNhdGlvbiBzeW50YXggaXMgbm90IGFueSAiCisiZGlmZmVyZW50IGZyb20gdGhlIG9uZSBvZiBhIHNwZWNpZmljIHN5bWJvbC4gSG93ZXZlciwgc3ltYm9sIG5hbWUgcGFydCBvZiAiCisidGhlIHNwZWNpZmljYXRpb24gc2VydmVzIGFzIGFuIGV4cHJlc3Npb24gdG8gYmUgbWF0Y2hlZCBhZ2FpbnN0ICIKKyJJPG5hbWVAdmVyc2lvbj4gb2YgdGhlIHJlYWwgc3ltYm9sLiBJbiBvcmRlciB0byBkaXN0aW5ndWlzaCBhbW9uZyBkaWZmZXJlbnQgIgorInBhdHRlcm4gdHlwZXMsIGEgcGF0dGVybiB3aWxsIHR5cGljYWxseSBiZSB0YWdnZWQgd2l0aCBhIHNwZWNpYWwgdGFnLiIKK21zZ3N0ciAiIgorIk3Dtm5zdGVyIMOkciBlbiB1dMO2a25pbmcgYXYgSTxkZWItc3ltYm9scyg1KT4tZm9ybWF0ZXQgb2NoIMOkciBkw6RyZsO2ciBlbmRhc3QgIgorInRpbGzDpXRuYSBpIHN5bWJvbGZpbG1hbGxhci4gU3ludGF4IGbDtnIgYW5naXZlbHNlIGF2IG3Dtm5zdGVyIHNraWxqZXIgc2lnIGludGUgIgorImZyw6VuIGRlbiBmw7ZyIGVuIHNwZWNpZmlrIHN5bWJvbC4gU3ltYm9sbmFtbnNkZWxlbiBhdiBzcGVjaWZpa2F0aW9uZW4gIgorImZ1bmdlcmFyIGRvY2sgc29tIGV0dCB1dHRyeWNrIHNvbSBza2FsbCBqw6RtZsO2cmFzIG1vdCBJPG5hbW5AdmVyc2lvbj4gZsO2ciBkZW4gIgorImZha3Rpc2thIHN5bWJvbGVuLiBGw7ZyIGF0dCBza2lsamEgbWVsbGFuIG9saWthIHNvcnRlcnMgbcO2bnN0ZXIsIHRhZ2dhcyAiCisibcO2bnN0ZXIgbm9ybWFsdCBtZWQgZW4gc3BlY2llbGwgdGFnZy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjIwMgorbXNnaWQgIkF0IHRoZSBtb21lbnQsIEI8ZHBrZy1nZW5zeW1ib2xzPiBzdXBwb3J0cyB0aHJlZSBiYXNpYyBwYXR0ZXJuIHR5cGVzOiIKK21zZ3N0ciAiIgorIkbDtnIgbsOkcnZhcmFuZGUgc3TDtmRlciBCPGRwa2ctZ2Vuc3ltYm9scz4gdHJlIGdydW5kbMOkZ2dhbmRlIG3Dtm5zdGVydHlwZXI6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyMTQKK21zZ2lkICIiCisiVGhpcyBwYXR0ZXJuIGlzIGRlbm90ZWQgYnkgdGhlIEk8YysrPiB0YWcuIEl0IG1hdGNoZXMgb25seSBDKysgc3ltYm9scyBieSAiCisidGhlaXIgZGVtYW5nbGVkIHN5bWJvbCBuYW1lIChhcyBlbWl0dGVkIGJ5IEI8YysrZmlsdD4oMSkgdXRpbGl0eSkuIFRoaXMgIgorInBhdHRlcm4gaXMgdmVyeSBoYW5keSBmb3IgbWF0Y2hpbmcgc3ltYm9scyB3aGljaCBtYW5nbGVkIG5hbWVzIG1pZ2h0IHZhcnkgIgorImFjcm9zcyBkaWZmZXJlbnQgYXJjaGl0ZWN0dXJlcyB3aGlsZSB0aGVpciBkZW1hbmdsZWQgbmFtZXMgcmVtYWluIHRoZSBzYW1lLiAiCisiT25lIGdyb3VwIG9mIHN1Y2ggc3ltYm9scyBpcyBJPG5vbi12aXJ0dWFsIHRodW5rcz4gd2hpY2ggaGF2ZSBhcmNoaXRlY3R1cmUgIgorInNwZWNpZmljIG9mZnNldHMgZW1iZWRkZWQgaW4gdGhlaXIgbWFuZ2xlZCBuYW1lcy4gQSBjb21tb24gaW5zdGFuY2Ugb2YgdGhpcyAiCisiY2FzZSBpcyBhIHZpcnR1YWwgZGVzdHJ1Y3RvciB3aGljaCB1bmRlciBkaWFtb25kIGluaGVyaXRhbmNlIG5lZWRzIGEgbm9uLSIKKyJ2aXJ0dWFsIHRodW5rIHN5bWJvbC4gRm9yIGV4YW1wbGUsIGV2ZW4gaWYgX1pUaG44X04zTlNCNkNsYXNzREQxRXZAQmFzZSBvbiAiCisiMzJiaXQgYXJjaGl0ZWN0dXJlcyB3aWxsIHByb2JhYmx5IGJlIF9aVGhuMTZfTjNOU0I2Q2xhc3NERDFFdkBCYXNlIG9uIDY0Yml0ICIKKyJvbmVzLCBpdCBjYW4gYmUgbWF0Y2hlZCB3aXRoIGEgc2luZ2xlIEk8YysrPiBwYXR0ZXJuOiIKK21zZ3N0ciAiIgorIkRldHRhIG3Dtm5zdGVyIGFuZ2VzIG1lZCB0YWdnZW4gSTxjKys+LiBEZW4gbWF0Y2hhciBlbmJhcnQgQysrLXN5bWJvbGVyIG1lZCAiCisiZGVyYXMgYXZtYW5nbGFkZSBzeW1ib2xuYW1uIChzb20gZGV0IHNrcml2cyB1dCBhdiBCPGMrK2ZpbHQ+KDEpLXZlcmt0eWdldCkuICIKKyJEZXQgaMOkciBtw7Zuc3RyZXQgw6RyIHbDpGxkaWd0IG55dHRpZ3QgZsO2ciBhdHQgbWF0Y2hhIHN5bWJvbGVyIHZhcnMgbWFuZ2xhZGUgIgorIm5hbW4ga2FuIHNraWxqYSBzaWcgbWVsbGFuIG9saWthIGFya2l0ZWt0dXJlciwgbWVkYW4gZGVyYXMgYXZtYW5nbGFkZSBuYW1uICIKKyLDpHIgZGVzYW1tYS4gRW4gZ3J1cHAgZHlsaWthIHN5bWJvbGVyIMOkciBJPGlja2UtdmlydHVlbGxhIFwidGh1bmtzXCI+IHNvbSBoYXIgIgorImFya2l0ZWt0dXJzcGVjaWZpa2Egb2Zmc2V0dsOkcmRlbiBpbmJ5Z2dkYSBpIHNpbmEgbWFuZ2xhZGUgbmFtbi4gRW4gdmFubGlnICIKKyJpbnN0YW5zIGF2IGRldHRhIGZhbGwgw6RyIGVuIHZpcnR1ZWxsIGRlc3RydWt0w7ZyIHNvbSB1bmRlciBkaWFtYW50YXJ2IGJlaMO2dmVyICIKKyJlbiBpY2tlLXZpcnR1ZWxsIFwidGh1bmtcIi1zeW1ib2wuIMOEdmVuIG9tIHRpbGwgZXhlbXBlbCAiCisiWlRobjhfTjNOU0I2Q2xhc3NERDFFdkBCYXNlIHDDpSAzMi1iaXRhcnNhcmtpdGVrdHVyZXIgdHJvbGlndHZpcyDDpHIgIgorIl9aVGhuMTZfTjNOU0I2Q2xhc3NERDFFdkBCYXNlIHDDpTY0LWJpdGFyc2Fya2l0ZWt0dXJlciwgc8OlIGthbiBkZSBtYXRjaGFzIG1lZCAiCisiZXR0IGVuZGEgSTxjKys+LW3Dtm5zdGVyOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjIwCisjLCBuby13cmFwCittc2dpZCAiIgorImxpYmR1bW15LnNvLjEgbGliZHVtbXkxICNNSU5WRVIjXG4iCisiIFsuLi5dXG4iCisiIChjKyspXCJub24tdmlydHVhbCB0aHVuayB0byBOU0I6OkNsYXNzRDo6fkNsYXNzRCgpQEJhc2VcIiAxLjBcbiIKKyIgWy4uLl1cbiIKK21zZ3N0ciAiIgorImxpYmR1bW15LnNvLjEgbGliZHVtbXkxICNNSU5WRVIjXG4iCisiIFsuLi5dXG4iCisiIChjKyspXCJub24tdmlydHVhbCB0aHVuayB0byBOU0I6OkNsYXNzRDo6fkNsYXNzRCgpQEJhc2VcIiAxLjBcbiIKKyIgWy4uLl1cbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjIyCittc2dpZCAiIgorIlRoZSBkZW1hbmdsZWQgbmFtZSBhYm92ZSBjYW4gYmUgb2J0YWluZWQgYnkgZXhlY3V0aW5nIHRoZSBmb2xsb3dpbmcgY29tbWFuZDoiCittc2dzdHIgIiIKKyJEZXQgYXZtYW5nbGFkZSBuYW1uZXQgb3ZhbiBrYW4gaMOkbXRhcyBnZW5vbSBhdHQgdXRmw7ZyYSBmw7ZsamFuZGUga29tbWFuZG86IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyMjQKKyMsIG5vLXdyYXAKK21zZ2lkICIgJCBlY2hvICdfWlRobjhfTjNOU0I2Q2xhc3NERDFFdkBCYXNlJyB8IGMrK2ZpbHRcbiIKK21zZ3N0ciAiICQgZWNobyAnX1pUaG44X04zTlNCNkNsYXNzREQxRXZAQmFzZScgfCBjKytmaWx0XG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjIzMgorbXNnaWQgIiIKKyJQbGVhc2Ugbm90ZSB0aGF0IHdoaWxlIG1hbmdsZWQgbmFtZSBpcyB1bmlxdWUgaW4gdGhlIGxpYnJhcnkgYnkgZGVmaW5pdGlvbiwgIgorInRoaXMgaXMgbm90IG5lY2Vzc2FyaWx5IHRydWUgZm9yIGRlbWFuZ2xlZCBuYW1lcy4gQSBjb3VwbGUgb2YgZGlzdGluY3QgcmVhbCAiCisic3ltYm9scyBtYXkgaGF2ZSB0aGUgc2FtZSBkZW1hbmdsZWQgbmFtZS4gRm9yIGV4YW1wbGUsIHRoYXQncyB0aGUgY2FzZSB3aXRoICIKKyJub24tdmlydHVhbCB0aHVuayBzeW1ib2xzIGluIGNvbXBsZXggaW5oZXJpdGFuY2UgY29uZmlndXJhdGlvbnMgb3Igd2l0aCBtb3N0ICIKKyJjb25zdHJ1Y3RvcnMgYW5kIGRlc3RydWN0b3JzIChzaW5jZSBnKysgdHlwaWNhbGx5IGdlbmVyYXRlcyB0d28gcmVhbCBzeW1ib2xzICIKKyJmb3IgdGhlbSkuIEhvd2V2ZXIsIGFzIHRoZXNlIGNvbGxpc2lvbnMgaGFwcGVuIG9uIHRoZSBBQkkgbGV2ZWwsIHRoZXkgc2hvdWxkICIKKyJub3QgZGVncmFkZSBxdWFsaXR5IG9mIHRoZSBzeW1ib2wgZmlsZS4iCittc2dzdHIgIiIKKyJPYnNlcnZlcmEgYXR0IMOkdmVuIG9tIGRldCBtYW5nbGFkZSBuYW1uZXQgcGVyIGRlZmluaXRpb24gw6RyIHVuaWt0IGkgIgorImJpYmxpb3Rla2V0IGfDpGxsZXIgaW50ZSBkZXR0YSBmw7ZyIGF2bWFuZ2xhZGUgbmFtbi4gRmxlcmEgZGlzdGlua3RhIHZlcmtsaWdhICIKKyJzeW1ib2xlciBrYW4gaGEgc2FtbWEgYXZtYW5nbGFkZSBuYW1uLiBEZXQgZ8OkbGxlciB0aWxsIGV4ZW1wZWwgZsO2ciBpY2tlLSIKKyJ2aXJ0dWVsbGEgXCJ0aHVua1wiLXN5bWJvbGVyIGkga29uZmlndXJhdGlvbmVyIG1lZCBrb21wbGV4YSBhcnYgZWxsZXIgZsO2ciBkZSAiCisiZmxlc3RhIGtvbnN0cnVrdMO2cmVyIG9jaCBkZXN0cnVrdMO2cmVyIChlZnRlcnNvbSBnKysgbm9ybWFsdCBnZW5lcmVyYXIgdHbDpSAiCisic3ltYm9sZXIgZsO2ciBkZW0pLiBFZnRlcnNvbSBkZXNzYSBrb2xsaXNpb25lciBza2VyIHDDpSBBQkktbml2w6VuIGLDtnIgZGUgZG9jayAiCisiaW50ZSBzw6Rua2Ega3ZhbGl0ZXRlbiBww6Ugc3ltYm9sZmlsZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyMzkKK21zZ2lkICIiCisiVGhpcyBwYXR0ZXJuIGlzIGRlbm90ZWQgYnkgdGhlIEk8c3ltdmVyPiB0YWcuIFdlbGwgbWFpbnRhaW5lZCBsaWJyYXJpZXMgaGF2ZSAiCisidmVyc2lvbmVkIHN5bWJvbHMgd2hlcmUgZWFjaCB2ZXJzaW9uIGNvcnJlc3BvbmRzIHRvIHRoZSB1cHN0cmVhbSB2ZXJzaW9uICIKKyJ3aGVyZSB0aGUgc3ltYm9sIGdvdCBhZGRlZC4gSWYgdGhhdCdzIHRoZSBjYXNlLCB5b3UgY2FuIHVzZSBhIEk8c3ltdmVyPiAiCisicGF0dGVybiB0byBtYXRjaCBhbnkgc3ltYm9sIGFzc29jaWF0ZWQgdG8gdGhlIHNwZWNpZmljIHZlcnNpb24uIEZvciBleGFtcGxlOiIKK21zZ3N0ciAiIgorIkRldHRhIG3Dtm5zdGVyIGFuZ2VzIG1lZCB0YWdnZW4gSTxzeW12ZXI+LiBWw6RsdW5kZXJow6VsbG5hIGJpYmxpb3RlayBoYXIgIgorInZlcnNpb25zaGFudGVyYWRlIHN5bWJvbGVyIGTDpHIgdmFyamUgdmVyc2lvbiBtb3RzdmFyYXIgdXBwc3Ryw7Ztc3ZlcnNpb25lbiAiCisiZMOkciBzeW1ib2xlbiBsYWRlcyB0aWxsLiBPbSBkZXQgw6RyIGZhbGxldCBrYW4gZHUgYW52w6RuZGEgZXR0IEk8c3ltdmVyPi0iCisibcO2c3RlciBmw7ZyIGF0dCBtYXRjaGEgYWxsYSBzeW1ib2xlciBzb20gbWF0Y2hhciBkZW4gc3BlY2lmaWthIHZlcnNpb25lbi4gIgorIlRpbGwgZXhlbXBlbDoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjI0NgorIywgbm8td3JhcAorbXNnaWQgIiIKKyJsaWJjLnNvLjYgbGliYzYgI01JTlZFUiNcbiIKKyIgKHN5bXZlcilHTElCQ18yLjAgMi4wXG4iCisiIFsuLi5dXG4iCisiIChzeW12ZXIpR0xJQkNfMi43IDIuN1xuIgorIiBhY2Nlc3NAR0xJQkNfMi4wIDIuMlxuIgorbXNnc3RyICIiCisibGliYy5zby42IGxpYmM2ICNNSU5WRVIjXG4iCisiIChzeW12ZXIpR0xJQkNfMi4wIDIuMFxuIgorIiBbLi4uXVxuIgorIiAoc3ltdmVyKUdMSUJDXzIuNyAyLjdcbiIKKyIgYWNjZXNzQEdMSUJDXzIuMCAyLjJcbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjUyCittc2dpZCAiIgorIkFsbCBzeW1ib2xzIGFzc29jaWF0ZWQgd2l0aCB2ZXJzaW9ucyBHTElCQ18yLjAgYW5kIEdMSUJDXzIuNyB3aWxsIGxlYWQgdG8gIgorIm1pbmltYWwgdmVyc2lvbiBvZiAyLjAgYW5kIDIuNyByZXNwZWN0aXZlbHkgd2l0aCB0aGUgZXhjZXB0aW9uIG9mIHRoZSBzeW1ib2wgIgorImFjY2Vzc0BHTElCQ18yLjAuIFRoZSBsYXR0ZXIgd2lsbCBsZWFkIHRvIGEgbWluaW1hbCBkZXBlbmRlbmN5IG9uIGxpYmM2ICIKKyJ2ZXJzaW9uIDIuMiBkZXNwaXRlIGJlaW5nIGluIHRoZSBzY29wZSBvZiB0aGUgXCIoc3ltdmVyKUdMSUJDXzIuMFwiIHBhdHRlcm4gIgorImJlY2F1c2Ugc3BlY2lmaWMgc3ltYm9scyB0YWtlIHByZWNlZGVuY2Ugb3ZlciBwYXR0ZXJucy4iCittc2dzdHIgIiIKKyJBbGxhIHN5bWJvbGVyIGFzc29jaWVyYWRlIG1lZCB2ZXJzaW9uZXJuYSBHTElCQ18yLjAgb2NoIEdMSUJDXzIuNyBrb21tZXIgIgorImxlZGEgdGlsbCBkZW4gbWluaW1hbCB2ZXJzaW9uIDIuMCByZXNwZWt0aXZlIDIuNywgbWVkIHVuZGFudGFnIGF2IHN5bWJvbGVuICIKKyJhY2Nlc3NAR0xJQkNfMi4wLiBEZW4gc2lzdG7DpG1uZGEga29tbWVyIGxlZGEgdGlsbCBldHQgbWluc3RhIGJlcm9lbmRlIHDDpSAiCisibGliYzYgdmVyc2lvbiAyLjIgdHJvdHMgYXR0IGRlbiBtb3RzdmFyYXIgbcO2bnN0cmV0IFwiKHN5bXZlcilHTElCQ18yLjBcIi0iCisibcO2bnN0cmV0LCBlZnRlcnNvbSBzcGVjaWZpa2Egc3ltYm9sZXIgZ8OkbGxlciBmw7ZyZSBtw7Zuc3Rlci4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjI1NworbXNnaWQgIiIKKyJQbGVhc2Ugbm90ZSB0aGF0IHdoaWxlIG9sZCBzdHlsZSB3aWxkY2FyZCBwYXR0ZXJucyAoZGVub3RlZCBieSBcIipAdmVyc2lvblwiICIKKyJpbiB0aGUgc3ltYm9sIG5hbWUgZmllbGQpIGFyZSBzdGlsbCBzdXBwb3J0ZWQsIHRoZXkgaGF2ZSBiZWVuIGRlcHJlY2F0ZWQgYnkgIgorIm5ldyBzdHlsZSBzeW50YXggXCIoc3ltdmVyfG9wdGlvbmFsKXZlcnNpb25cIi4gRm9yIGV4YW1wbGUsIFwiKkBHTElCQ18yLjAgIgorIjIuMFwiIHNob3VsZCBiZSB3cml0dGVuIGFzIFwiKHN5bXZlcnxvcHRpb25hbClHTElCQ18yLjAgMi4wXCIgaWYgdGhlIHNhbWUgIgorImJlaGF2aW91ciBpcyBuZWVkZWQuIgorbXNnc3RyICIiCisiT2JzZXJ2ZXJhIGF0dCDDpHZlbiBvbSBkZW4gZ2FtbGEgc29ydGVucyBqb2tlcnRlY2tlbm3Dtm5zdGVyIChhbmdlcyBtZWQgIgorIlwiKkB2ZXJzaW9uXCIgaSBzeW1ib2xuYW1uZsOkbHRldCkgZm9ydGZhcmFuZGUgc3TDtmRzIHPDpSByZWtvbW1lbmRlcmFzIGRlIGludGUgIgorImzDpG5ncmUgaSBvY2ggbWVkIGRlbiBueWEgc29ydGVucyBzeW50YXggXCIoc3ltdmVyfG9wdGlvbmFsKXZlcnNpb25cIi4gVGlsbCAiCisiZXhlbXBlbCBiw7ZyIFwiKkBHTElCQ18yLjAgMi4wXCIgc2tyaXZhcyBzb20gXCIoc3ltdmVyfG9wdGlvbmFsKUdMSUJDXzIuMCAiCisiMi4wXCIgb20gc2FtbWEgYmV0ZWVuZGUgYmVow7Z2cy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjI2NQorbXNnaWQgIiIKKyJSZWd1bGFyIGV4cHJlc3Npb24gcGF0dGVybnMgYXJlIGRlbm90ZWQgYnkgdGhlIEk8cmVnZXg+IHRhZy4gVGhleSBtYXRjaCBieSAiCisidGhlIHBlcmwgcmVndWxhciBleHByZXNzaW9uIHNwZWNpZmllZCBpbiB0aGUgc3ltYm9sIG5hbWUgZmllbGQuIEEgcmVndWxhciAiCisiZXhwcmVzc2lvbiBpcyBtYXRjaGVkIGFzIGl0IGlzLCB0aGVyZWZvcmUgZG8gbm90IGZvcmdldCB0byBzdGFydCBpdCB3aXRoIHRoZSAiCisiSTxePiBjaGFyYWN0ZXIgb3IgaXQgbWF5IG1hdGNoIGFueSBwYXJ0IG9mIHRoZSByZWFsIHN5bWJvbCBJPG5hbWVAdmVyc2lvbj4gIgorInN0cmluZy4gRm9yIGV4YW1wbGU6IgorbXNnc3RyICIiCisiTcO2bnN0ZXIgbWVkIHJlZ3VsasOkcmEgdXR0cnljayBhbmdlcyBtZWQgdGFnZ2VuIEk8cmVnZXg+LiBEZSBtYXRjaGFyIG1lZCBkZXQgIgorInJlZ3VsasOkcmEgdXR0cnlja2V0IHDDpSBwZXJsLWZvcm0gc29tIGFuZ2VzIGkgc3ltYm9sbmFtbnNmw6RsdGV0LiBFdHQgIgorInJlZ3VsasOkcnQgdXR0cnljayBtYXRjaGFyIHNvbSBkZXQgc3TDpXIsIGdsw7ZtIGTDpHJmw7ZyIGludGUgYXR0IGlubGVkYSBkZXQgbWVkICIKKyJ0ZWNrbmV0IEk8Xj4sIGFubmFycyBrb21tZXIgZGV0IG1hdGNoYSBnb2R0eWNrbGlnIGRlbCBhdiBkZW4gdmVya2xpZ2EgIgorInN5bWJvbGVucyBJPG5hbW5AdmVyc2lvbj4tc3Ryw6RuZy4gVGlsbCBleGVtcGVsOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MjcwCisjLCBuby13cmFwCittc2dpZCAiIgorImxpYmR1bW15LnNvLjEgbGliZHVtbXkxICNNSU5WRVIjXG4iCisiIChyZWdleClcIl5teXN0YWNrXy4qQEJhc2UkXCIgMS4wXG4iCisiIChyZWdleHxvcHRpb25hbClcInByaXZhdGVcIiAxLjBcbiIKK21zZ3N0ciAiIgorImxpYmR1bW15LnNvLjEgbGliZHVtbXkxICNNSU5WRVIjXG4iCisiIChyZWdleClcIl5teXN0YWNrXy4qQEJhc2UkXCIgMS4wXG4iCisiIChyZWdleHxvcHRpb25hbClcInByaXZhdGVcIiAxLjBcbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6Mjc1Cittc2dpZCAiIgorIlN5bWJvbHMgbGlrZSBcIm15c3RhY2tfbmV3QEJhc2VcIiwgXCJteXN0YWNrX3B1c2hAQmFzZVwiLCBcIm15c3RhY2tfcG9wQEJhc2UiCisiXCIgZXRjLiAgd2lsbCBiZSBtYXRjaGVkIGJ5IHRoZSBmaXJzdCBwYXR0ZXJuIHdoaWxlIGUuZy4gIgorIlwibmdfbXlzdGFja19uZXdAQmFzZVwiIHdvbid0LiAgVGhlIHNlY29uZCBwYXR0ZXJuIHdpbGwgbWF0Y2ggYWxsIHN5bWJvbHMgIgorImhhdmluZyB0aGUgc3RyaW5nIFwicHJpdmF0ZVwiIGluIHRoZWlyIG5hbWVzIGFuZCBtYXRjaGVzIHdpbGwgaW5oZXJpdCAiCisiSTxvcHRpb25hbD4gdGFnIGZyb20gdGhlIHBhdHRlcm4uIgorbXNnc3RyICIiCisiU3ltYm9sZXIgc29tIFwibXlzdGFja19uZXdAQmFzZVwiLCBcIm15c3RhY2tfcHVzaEBCYXNlXCIsIFwibXlzdGFja19wb3BAQmFzZSIKKyJcIiBvc3YuIGtvbW1lciBhdHQgdHLDpGZmYXMgYXYgZGV0IGbDtnJzdGEgbcO2bnN0cmV0IG1lZGFuIHQuZXggIgorIlwibmdfbXlzdGFja19uZXdAQmFzZVwiIGludGUgZ8O2ciBkZXQuIERldCBhbmRyYSBtw7Zuc3RyZXQgbW90c3ZhcmFyIGFsbGEgIgorInN5bWJvbGVuIHNvbSBpbm5laMOlbGxlciBzdHLDpG5nZW4gXCJwcml2YXRlXCIgaSBzaW5hIG5hbW4gb2NoIHRyw6RmZmFyIGtvbW1lciAiCisiYXR0IMOkcnZhIEk8b3B0aW9uYWw+LXRhZ2dlbiBmcsOlbiBtw7Zuc3RyZXQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyODAKK21zZ2lkICIiCisiQmFzaWMgcGF0dGVybnMgbGlzdGVkIGFib3ZlIGNhbiBiZSBjb21iaW5lZCB3aGVyZSBpdCBtYWtlcyBzZW5zZS4gSW4gdGhhdCAiCisiY2FzZSwgdGhleSBhcmUgcHJvY2Vzc2VkIGluIHRoZSBvcmRlciBpbiB3aGljaCB0aGUgdGFncyBhcmUgc3BlY2lmaWVkLiBGb3IgIgorImV4YW1wbGUsIGJvdGgiCittc2dzdHIgIiIKKyJHcnVuZGzDpGdnYW5kZSBtw7Zuc3RlciBzb20gYW5nZXMgb3ZhbiBrYW4ga29tYmluZXJhcyBkw6RyIGRldCDDpHIgdmV0dGlndC4gSSBzw6UgIgorImZhbGwgYmVoYW5kbGFzIGRlIGkgZGVuIG9yZG5pbmcgdGFnZ2FybmEgYW5nZXMuIFRpbGwgZXhlbXBlbCBrb21tZXIgYsOlZGUiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjI4MworIywgbm8td3JhcAorbXNnaWQgIiIKKyIgKGMrK3xyZWdleClcIl5OU0E6OkNsYXNzQTo6UHJpdmF0ZTo6cHJpdm1ldGhvZFxcZWRcXGUoaW50XFxlKUBCYXNlXCIgMS4wXG4iCisiIChyZWdleHxjKyspTjNOU0E2Q2xhc3NBN1ByaXZhdGUxMXByaXZtZXRob2RcXGVkRWlAQmFzZSAxLjBcbiIKK21zZ3N0ciAiIgorIiAoYysrfHJlZ2V4KVwiXk5TQTo6Q2xhc3NBOjpQcml2YXRlOjpwcml2bWV0aG9kXFxlZFxcZShpbnRcXGUpQEJhc2VcIiAxLjBcbiIKKyIgKHJlZ2V4fGMrKylOM05TQTZDbGFzc0E3UHJpdmF0ZTExcHJpdm1ldGhvZFxcZWRFaUBCYXNlIDEuMFxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMToyOTMKK21zZ2lkICIiCisid2lsbCBtYXRjaCBzeW1ib2xzIFwiX1pOM05TQTZDbGFzc0E3UHJpdmF0ZTExcHJpdm1ldGhvZDFFaUBCYXNlXCIgYW5kICIKKyJcIl9aTjNOU0E2Q2xhc3NBN1ByaXZhdGUxMXByaXZtZXRob2QyRWlAQmFzZVwiLiBXaGVuIG1hdGNoaW5nIHRoZSBmaXJzdCAiCisicGF0dGVybiwgdGhlIHJhdyBzeW1ib2wgaXMgZmlyc3QgZGVtYW5nbGVkIGFzIEMrKyBzeW1ib2wsIHRoZW4gdGhlIGRlbWFuZ2xlZCAiCisibmFtZSBpcyBtYXRjaGVkIGFnYWluc3QgdGhlIHJlZ3VsYXIgZXhwcmVzc2lvbi4gT24gdGhlIG90aGVyIGhhbmQsIHdoZW4gIgorIm1hdGNoaW5nIHRoZSBzZWNvbmQgcGF0dGVybiwgcmVndWxhciBleHByZXNzaW9uIGlzIG1hdGNoZWQgYWdhaW5zdCB0aGUgcmF3ICIKKyJzeW1ib2wgbmFtZSwgdGhlbiB0aGUgc3ltYm9sIGlzIHRlc3RlZCBpZiBpdCBpcyBDKysgb25lIGJ5IGF0dGVtcHRpbmcgdG8gIgorImRlbWFuZ2xlIGl0LiBBIGZhaWx1cmUgb2YgYW55IGJhc2ljIHBhdHRlcm4gd2lsbCByZXN1bHQgaW4gdGhlIGZhaWx1cmUgb2YgIgorInRoZSB3aG9sZSBwYXR0ZXJuLiAgVGhlcmVmb3JlLCBmb3IgZXhhbXBsZSwgIgorIlwiX19OM05TQTZDbGFzc0E3UHJpdmF0ZTExcHJpdm1ldGhvZFxcZWRFaUBCYXNlXCIgd2lsbCBub3QgbWF0Y2ggZWl0aGVyIG9mICIKKyJ0aGUgcGF0dGVybnMgYmVjYXVzZSBpdCBpcyBub3QgYSB2YWxpZCBDKysgc3ltYm9sLiIKK21zZ3N0ciAiIgorImF0dCB0csOkZmZhIHN5bWJvbGVybmEgXCJfWk4zTlNBNkNsYXNzQTdQcml2YXRlMTFwcml2bWV0aG9kMUVpQEJhc2VcIiBvY2ggIgorIlwiX1pOM05TQTZDbGFzc0E3UHJpdmF0ZTExcHJpdm1ldGhvZDJFaUBCYXNlXCIuIE7DpHIgZGV0IGbDtnJzdGEgbcO2bnN0cmV0ICIKKyJqw6RtZsO2cnMgYXZtYW5nbGFzIGbDtnJzdCBzeW1ib2xlbiBzb20gZW4gQysrLXN5bWJvbCwgdmFyZWZ0ZXIgZGV0IGF2bWFuZ2xhZGUgIgorIm5hbW5ldCBqw6RtZsO2cnMgbWVkIGRldCByZWd1bGrDpHJhIHV0dHJ5Y2tldC4gTsOkciBkZXQgYW5kcmEgbcO2bnN0cmV0IGrDpG1mw7ZycywgIgorIsOlIGFuZHJhIHNpZGFuLCBqw6RtZsO2cnMgZGV0IHJlZ3VsasOkcmEgdXR0cnlja2V0IG1vdCBkZXQgcsOlYSBzeW1ib2xuYW1uZXQsICIKKyJ2YXJlZnRlciBzeW1ib2xlbiB0ZXN0YXMgZsO2ciBhdHQgc2Ugb20gZGV0IMOkciBhdiBDKystdHlwIGdlbm9tIGF0dCBmw7Zyc8O2a2EgIgorImF2bWFuZ2xhIGRldC4gT20gZXR0IGdydW5kbMOkZ2dhbmRlIG3Dtm5zdGVyIG1pc3NseWNrYXMga29tbWVyIGhlbGEgdXR0cnlja2V0ICIKKyJhdHQgbWlzc2x5Y2thcy4gRMOkcmbDtnIga29tbWVyLCB0aWxsIGV4ZW1wZWwgIgorIlwiX19OM05TQTZDbGFzc0E3UHJpdmF0ZTExcHJpdm1ldGhvZFxcZWRFaUBCYXNlXCIgaW50ZSBhdHQgdHLDpGZmYXMgYXYgbsOlZ290ICIKKyJhdiBtw7Zuc3RyZW5hIGVmdGVyc29tIGRldCBpbnRlIMOkciBlbiBnaWx0aWcgQysrLXN5bWJvbC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjI5OQorbXNnaWQgIiIKKyJJbiBnZW5lcmFsLCBhbGwgcGF0dGVybnMgYXJlIGRpdmlkZWQgaW50byB0d28gZ3JvdXBzOiBhbGlhc2VzIChiYXNpYyBJPGMrKz4gIgorImFuZCBJPHN5bXZlcj4pIGFuZCBnZW5lcmljIHBhdHRlcm5zIChJPHJlZ2V4PiwgYWxsIGNvbWJpbmF0aW9ucyBvZiBtdWx0aXBsZSAiCisiYmFzaWMgcGF0dGVybnMpLiBNYXRjaGluZyBvZiBiYXNpYyBhbGlhcy1iYXNlZCBwYXR0ZXJucyBpcyBmYXN0IChPKDEpKSAgIgorIndoaWxlIGdlbmVyaWMgcGF0dGVybnMgYXJlIE8oTikgKE4gLSBnZW5lcmljIHBhdHRlcm4gY291bnQpIGZvciBlYWNoICIKKyJzeW1ib2wuICBUaGVyZWZvcmUsIGl0IGlzIHJlY29tbWVuZGVkIG5vdCB0byBvdmVydXNlIGdlbmVyaWMgcGF0dGVybnMuIgorbXNnc3RyICIiCisiSSBhbGxtw6RuaGV0IGRlbGFzIGFsbGEgbcO2bnN0ZXIgaW4gaSB0dsOlIGdydXBwZXIuIGFsaWFzIChncnVuZGzDpGdnYW5kZSBJPGMrKz4gIgorIm9jaCBJPHN5bXZlcj4pIG9jaCBnZW5lcmVsbGEgbcO2bnN0ZXIgKEk8cmVnZXg+LCBzYW10bGlnYSBrb21iaW5hdGlvbmVyIGF2ICIKKyJtdWx0aXBsYSBncnVuZGzDpGdnYW5kZSBtw7Zuc3RlcikuIERldCBnw6VyIHNuYWJidCBhdHQgdHLDpGZmYSBncnVuZGzDpGdnYW5kZSAiCisiYWxpYXNiYXNlcmFkZSBtw7Zuc3RlciAoTygxKSkgbWVkYW4gZ2VuZXJlbGxhIG3Dtm5zdGVyIMOkciBPKE4pIChOIC0gYW50YWwgIgorImdlbmVyZWxsYSBtw7Zuc3RlcikgZsO2ciB2YXJqZSBzeW1ib2wuIERldCByZWtvbW1lbmRlcmFzIGTDpHJmw7ZyIGludGUgYXR0ICIKKyJhbnbDpG5kYSBmw7ZyIG3DpW5nYSBnZW5lcmVsbGEgbcO2bnN0ZXIuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozMDYKK21zZ2lkICIiCisiV2hlbiBtdWx0aXBsZSBwYXR0ZXJucyBtYXRjaCB0aGUgc2FtZSByZWFsIHN5bWJvbCwgYWxpYXNlcyAoZmlyc3QgSTxjKys+LCAiCisidGhlbiBJPHN5bXZlcj4pIGFyZSBwcmVmZXJyZWQgb3ZlciBnZW5lcmljIHBhdHRlcm5zLiBHZW5lcmljIHBhdHRlcm5zIGFyZSAiCisibWF0Y2hlZCBpbiB0aGUgb3JkZXIgdGhleSBhcmUgZm91bmQgaW4gdGhlIHN5bWJvbCBmaWxlIHRlbXBsYXRlIHVudGlsIHRoZSAiCisiZmlyc3Qgc3VjY2Vzcy4gIFBsZWFzZSBub3RlLCBob3dldmVyLCB0aGF0IG1hbnVhbCByZW9yZGVyaW5nIG9mIHRlbXBsYXRlICIKKyJmaWxlIGVudHJpZXMgaXMgbm90IHJlY29tbWVuZGVkIGJlY2F1c2UgQjxkcGtnLWdlbnN5bWJvbHM+IGdlbmVyYXRlcyBkaWZmcyAiCisiYmFzZWQgb24gdGhlIGFscGhhbnVtZXJpY2FsIG9yZGVyIG9mIHRoZWlyIG5hbWVzLiIKK21zZ3N0ciAiIgorIk7DpHIgZmxlcmEgbcO2bnN0ZXIgdHLDpGZmYXIgc2FtbWEgdmVya2xpZ2Egc3ltYm9sIGbDtnJlZHJhcyBhbGlhcyAoZsO2cnN0IEk8YysiCisiKz4sIHNlZGFuIEk8c3ltdmVyPikgZnJhbWbDtnIgZ2VuZXJlbGxhIG3Dtm5zdGVyLiBHZW5lcmVsbGEgbcO2bnN0ZXIgdHLDpGZmYXMgaSAiCisiZGVuIG9yZG5pbmcgZGUgdXBwdMOkY2t0ZXMgaSBzeW1ib2xmaWxtYWxsZW4gZnJhbSB0aWxsIGRlbiBmw7Zyc3RhIGx5Y2thZGUgIgorInRyw6RmZmVuLiBPYnNlcnZlcmEgZG9jayBhdHQgbWFudWVsbCBvbXNvcnRlcmluZyBhdiBwb3N0ZXIgaSBtYWxsZmlsZW4gaW50ZSAiCisicmVrb21tZW5kZXJhcyBkw6UgQjxkcGtnLWdlbnN5bWJvbHM+IGdlbmVyZXJhciBkaWZmZXJlbnNmaWxlciBiYXNlcmFkIHDDpSBkZW4gIgorImFsZmFudW1lcmlza2Egc29ydGVyaW5nc29yZG5pbmdlbiBhdiBkZXNzIG5hbW4uIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1nZW5zeW1ib2xzLjE6MzA2CisjLCBuby13cmFwCittc2dpZCAiVXNpbmcgaW5jbHVkZXMiCittc2dzdHIgIkFudsOkbmRhIGlua2x1ZGVyaW5nYXIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjMxMQorbXNnaWQgIiIKKyJXaGVuIHRoZSBzZXQgb2YgZXhwb3J0ZWQgc3ltYm9scyBkaWZmZXIgYmV0d2VlbiBhcmNoaXRlY3R1cmVzLCBpdCBtYXkgYmVjb21lICIKKyJpbmVmZmljaWVudCB0byB1c2UgYSBzaW5nbGUgc3ltYm9sIGZpbGUuIEluIHRob3NlIGNhc2VzLCBhbiBpbmNsdWRlICIKKyJkaXJlY3RpdmUgbWF5IHByb3ZlIHRvIGJlIHVzZWZ1bCBpbiBhIGNvdXBsZSBvZiB3YXlzOiIKK21zZ3N0ciAiIgorIk7DpHIgdXBwc8OkdHRuaW5nZW4gYXYgZXhwb3J0ZXJhZGUgc3ltYm9sZXIgc2tpbGplciBzaWcgbWVsbGFuIGFya2l0ZWt0dXJlciAiCisia2FuIGRldCB2YXJhIGluZWZmZWt0aXZ0IGF0dCBhbnbDpG5kYSBlbiBlbmRhIHN5bWJvbGZpbC4gSSBkZXNzYSBmYWxsIGthbiBldHQgIgorImlua2x1ZGVyaW5nc2RpcmVrdGl2IHZhcmEgbnl0dGlndCBww6UgZmxlcmEgc8OkdHQ6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozMTUKK21zZ2lkICIiCisiWW91IGNhbiBmYWN0b3JpemUgdGhlIGNvbW1vbiBwYXJ0IGluIHNvbWUgZXh0ZXJuYWwgZmlsZSBhbmQgaW5jbHVkZSB0aGF0ICIKKyJmaWxlIGluIHlvdXIgSTxwYWNrYWdlPi5zeW1ib2xzLkk8YXJjaD4gZmlsZSBieSB1c2luZyBhbiBpbmNsdWRlIGRpcmVjdGl2ZSAiCisibGlrZSB0aGlzOiIKK21zZ3N0ciAiIgorIkR1IGthbiBmYWt0b3Jpc2VyYSBkZSBnZW1lbnNhbW1hIGRlbGFybmEgaSBlbiBleHRlcm4gZmlsIG9jaCBpbmtsdWRlcmEgZGVuICIKKyJmaWxlbiBpIGRpbiBJPHBha2V0Pi5zeW1ib2xzLkk8YXJraXRla3R1cj4tZmlsIGdlbm9tIGF0dCBhbnbDpG5kYSBldHQgIgorImlua2x1ZGVyaW5nc2RpcmVrdGl2IHNvbSBkZXR0YToiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjMxNworbXNnaWQgIiNpbmNsdWRlIFwiSTxwYWNrYWdlcz4uc3ltYm9scy5jb21tb25cIiIKK21zZ3N0ciAiI2luY2x1ZGUgXCJJPHBha2V0Pi5zeW1ib2xzLmNvbW1vblwiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozMTkKK21zZ2lkICJUaGUgaW5jbHVkZSBkaXJlY3RpdmUgbWF5IGFsc28gYmUgdGFnZ2VkIGxpa2UgYW55IHN5bWJvbDoiCittc2dzdHIgIklua2x1ZGVyaW5nc2RpcmVrdGl2ZXQga2FuIMOkdmVuIHRhZ2dhcyBzb20gYWxsYSBhbmRyYSBzeW1ib2xlcjoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjMyMQorbXNnaWQgIih0YWd8Li58dGFnTikjaW5jbHVkZSBcImZpbGUtdG8taW5jbHVkZVwiIgorbXNnc3RyICIodGFnfC4ufHRhZ04pI2luY2x1ZGUgXCJmaWwtYXR0LWlua2x1ZGVyYVwiIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozMjYKK21zZ2lkICIiCisiQXMgYSByZXN1bHQsIGFsbCBzeW1ib2xzIGluY2x1ZGVkIGZyb20gSTxmaWxlLXRvLWluY2x1ZGU+IHdpbGwgYmUgY29uc2lkZXJlZCAiCisidG8gYmUgdGFnZ2VkIHdpdGggSTx0YWc+IC4uIEk8dGFnTj4gYnkgZGVmYXVsdC4gWW91IGNhbiB1c2UgdGhpcyBmZWF0dXJlIHRvICIKKyJjcmVhdGUgYSBjb21tb24gSTxwYWNrYWdlPi5zeW1ib2xzIGZpbGUgd2hpY2ggaW5jbHVkZXMgYXJjaGl0ZWN0dXJlIHNwZWNpZmljICIKKyJzeW1ib2wgZmlsZXM6IgorbXNnc3RyICIiCisiQWxsYSBzeW1ib2xlciBzb20gaW5rbHVkZXJhcyBmcsOlbiBJPGZpbC1hdHQtaW5rbHVkZXJhPiBrb21tZXIgYXR0IGFuc2VzIHNvbSAiCisic3RhbmRhcmQgdmFyYSB0YWdnYWRlIG1lZCBJPHRhZz4gLi4gSTx0YWdOPi4gRHUga2FuIGFudsOkbmRhIGRlbm5hIGZ1bmt0aW9uICIKKyJmw7ZyIGF0dCBza2FwYSBlbiBnZW1lbnNhbSBJPHBha2V0Pi5zeW1ib2xzLWZpbCBzb20gaW5rbHVkZXJhciAiCisiYXJraXRla3R1cnNwZWNpZmlrYSBmaWxlcjoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjMzMQorIywgbm8td3JhcAorbXNnaWQgIiIKKyIgIGNvbW1vbl9zeW1ib2wxQEJhc2UgMS4wXG4iCisiIChhcmNoPWFtZDY0IGlhNjQgYWxwaGEpI2luY2x1ZGUgXCJwYWNrYWdlLnN5bWJvbHMuNjRiaXRcIlxuIgorIiAoYXJjaD0hYW1kNjQgIWlhNjQgIWFscGhhKSNpbmNsdWRlIFwicGFja2FnZS5zeW1ib2xzLjMyYml0XCJcbiIKKyIgIGNvbW1vbl9zeW1ib2wyQEJhc2UgMS4wXG4iCittc2dzdHIgIiIKKyIgIGdlbWVuc2FtX3N5bWJvbDFAQmFzZSAxLjBcbiIKKyIgKGFyY2g9YW1kNjQgaWE2NCBhbHBoYSkjaW5jbHVkZSBcInBha2V0LnN5bWJvbHMuNjRiaXRcIlxuIgorIiAoYXJjaD0hYW1kNjQgIWlhNjQgIWFscGhhKSNpbmNsdWRlIFwicGFrZXQuc3ltYm9scy4zMmJpdFwiXG4iCisiICBnZW1lbnNhbV9zeW1ib2wyQEJhc2UgMS4wXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM0MAorbXNnaWQgIiIKKyJUaGUgc3ltYm9scyBmaWxlcyBhcmUgcmVhZCBsaW5lIGJ5IGxpbmUsIGFuZCBpbmNsdWRlIGRpcmVjdGl2ZXMgYXJlICIKKyJwcm9jZXNzZWQgYXMgc29vbiBhcyB0aGV5IGFyZSBlbmNvdW50ZXJlZC4gVGhpcyBtZWFucyB0aGF0IHRoZSBjb250ZW50IG9mICIKKyJ0aGUgaW5jbHVkZWQgZmlsZSBjYW4gb3ZlcnJpZGUgYW55IGNvbnRlbnQgdGhhdCBhcHBlYXJlZCBiZWZvcmUgdGhlIGluY2x1ZGUgIgorImRpcmVjdGl2ZSBhbmQgdGhhdCBhbnkgY29udGVudCBhZnRlciB0aGUgZGlyZWN0aXZlIGNhbiBvdmVycmlkZSBhbnl0aGluZyAiCisiY29udGFpbmVkIGluIHRoZSBpbmNsdWRlZCBmaWxlLiBBbnkgc3ltYm9sIChvciBldmVuIGFub3RoZXIgI2luY2x1ZGUgIgorImRpcmVjdGl2ZSkgaW4gdGhlIGluY2x1ZGVkIGZpbGUgY2FuIHNwZWNpZnkgYWRkaXRpb25hbCB0YWdzIG9yIG92ZXJyaWRlICIKKyJ2YWx1ZXMgb2YgdGhlIGluaGVyaXRlZCB0YWdzIGluIGl0cyB0YWcgc3BlY2lmaWNhdGlvbi4gSG93ZXZlciwgdGhlcmUgaXMgbm8gIgorIndheSBmb3IgdGhlIHN5bWJvbCB0byByZW1vdmUgYW55IG9mIHRoZSBpbmhlcml0ZWQgdGFncy4iCittc2dzdHIgIiIKKyJTeW1ib2xmaWxlcm5hIGzDpHNlcyByYWR2aXMsIG9jaCBpbmtsdWRlcmluZ3NkaXJla3RpdiB1dGbDtnJzIHPDpSBmb3J0IGRlICIKKyJ1cHB0w6Rja3MuIERldCBiZXR5ZGVyIGF0dCBpbm5laMOlbGxldCBpIGRlbiBpbmtsdWRlcmFkZSBmaWxlbiBrYW4gw7Z2ZXJzdHlyYSAiCisiYWxsdCBpbm5laMOlbGwgc29tIGbDtnJla29tIGbDtnJlIGlua2x1ZGVyaW5nc2RpcmVrdGl2ZXQgb2NoIGF0dCBpbm5laMOlbGwgZWZ0ZXIgIgorImRpcmVrdGl2ZXQga2FuIMO2dmVyc3R5cmEgYWxsdCBmcsOlbiBkZW4gaW5rbHVkZXJhZGUgZmlsZW4uIEFsbGEgc3ltYm9sZXIgIgorIijDpHZlbiBhbmRyYSAjaW5jbHVkZS1kaXJla3RpdikgaSBkZW4gaW5rbHVkZXJhZGUgZmlsZW4ga2FuIGFuZ2UgeXR0ZXJsaWdhcmUgIgorInRhZ2dhciBlbGxlciDDtnZlcnN0eXJhIHbDpHJkZW4gZsO2ciBkZSDDpHJ2ZGEgdGFnZ2FybmEgaSBzaW4gdGFnZ3NwZWNpZmlrYXRpb24uICIKKyJEZXQgZmlubnMgZG9jayBpbnRlIG7DpWdvdCBzw6R0dCBmw7ZyIGVuIHN5bWJvbCBhdHQgdGEgYm9ydCBuw6Vnb24gYXYgc2luYSDDpHJ2ZGEgIgorInRhZ2dhci4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM0NQorbXNnaWQgIiIKKyJBbiBpbmNsdWRlZCBmaWxlIGNhbiByZXBlYXQgdGhlIGhlYWRlciBsaW5lIGNvbnRhaW5pbmcgdGhlIFNPTkFNRSBvZiB0aGUgIgorImxpYnJhcnkuIEluIHRoYXQgY2FzZSwgaXQgb3ZlcnJpZGVzIGFueSBoZWFkZXIgbGluZSBwcmV2aW91c2x5IHJlYWQuICAiCisiSG93ZXZlciwgaW4gZ2VuZXJhbCBpdCdzIGJlc3QgdG8gYXZvaWQgZHVwbGljYXRpbmcgaGVhZGVyIGxpbmVzLiBPbmUgd2F5IHRvICIKKyJkbyBpdCBpcyB0aGUgZm9sbG93aW5nOiIKK21zZ3N0ciAiIgorIkVuIGlua2x1ZGVyYWQgZmlsIGthbiByZXBldGVyYSBodXZ1ZHJhZGVuIHNvbSBpbm5laMOlbGxlciBTT05BTU5ldCBmw7ZyICIKKyJiaWJsaW90ZWtldC4gSSBzw6UgZmFsbCDDtnZlcnN0eXIgZGVuIGVuIGV2ZW50dWVsbCBodXZ1ZHJhZCBzb20gbMOkc3RzIGluICIKKyJ0aWRpZ2FyZS4gRGV0IMOkciB2YW5saWd0dmlzIGRvY2sgYsOkc3QgYXR0IHVuZHZpa2EgYXR0IGR1cGxpY2VyYSBodXZ1ZHJhZGVyLiAiCisiRXR0IHPDpHR0IGF0dCBnw7ZyYSBkZXQgw6RyIHNvbSBmw7ZsamVyOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzQ4CisjLCBuby13cmFwCittc2dpZCAiIgorIiNpbmNsdWRlIFwibGlic29tZXRoaW5nMS5zeW1ib2xzLmNvbW1vblwiXG4iCisiIGFyY2hfc3BlY2lmaWNfc3ltYm9sQEJhc2UgMS4wXG4iCittc2dzdHIgIiIKKyIjaW5jbHVkZSBcImxpYm7DpWdvbnRpbmcxLnN5bWJvbHMuY29tbW9uXCJcbiIKKyIgYXJraXRla3R1cnNwZWNpZmlrX3N5bWJvbEBCYXNlIDEuMFxuIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1nZW5zeW1ib2xzLjE6MzQ4CisjLCBuby13cmFwCittc2dpZCAiR29vZCBsaWJyYXJ5IG1hbmFnZW1lbnQiCittc2dzdHIgIkdvZCBoYW50ZXJpbmcgYXYgYmlibGlvdGVrIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozNTEKK21zZ2lkICJBIHdlbGwtbWFpbnRhaW5lZCBsaWJyYXJ5IGhhcyB0aGUgZm9sbG93aW5nIGZlYXR1cmVzOiIKK21zZ3N0ciAiRXR0IHbDpGx1bmRlcmjDpWxsZXQgYmlibGlvdGVrIGhhciBmw7ZsamFuZGUgZnVua3Rpb25lcjoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM1NQorbXNnaWQgIiIKKyJpdHMgQVBJIGlzIHN0YWJsZSAocHVibGljIHN5bWJvbHMgYXJlIG5ldmVyIGRyb3BwZWQsIG9ubHkgbmV3IHB1YmxpYyBzeW1ib2xzICIKKyJhcmUgYWRkZWQpIGFuZCBjaGFuZ2VzIGluIGluY29tcGF0aWJsZSB3YXlzIG9ubHkgd2hlbiB0aGUgU09OQU1FIGNoYW5nZXM7IgorbXNnc3RyICIiCisiZGVzcyBBUEkgw6RyIHN0YWJpbHQgKHB1Ymxpa2Egc3ltYm9sZXIgdGFzIGFsZHJpZyBib3J0LCBlbmRhc3QgbnlhIHB1Ymxpa2EgIgorInN5bWJvbGVyIGzDpGdncyB0aWxsKSBvY2ggaW5rb21wYXRpYmxhIMOkbmRyaW5nYXIgZ8O2cnMgZW5kYXN0IG7DpHIgU09OQU1OZXQgIgorIsOkbmRyYXM7IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozNTgKK21zZ2lkICIiCisiaWRlYWxseSwgaXQgdXNlcyBzeW1ib2wgdmVyc2lvbmluZyB0byBhY2hpZXZlIEFCSSBzdGFiaWxpdHkgZGVzcGl0ZSBpbnRlcm5hbCAiCisiY2hhbmdlcyBhbmQgQVBJIGV4dGVuc2lvbjsiCittc2dzdHIgIiIKKyJpZGVlbGx0IGFudsOkbmRlciBkZXQgZW4gdmVyc2lvbmhhbnRlcmFkZSBzeW1ib2xlciBmw7ZyIGF0dCB1cHByw6R0dGjDpWxsYSBBQkktIgorInN0YWJpbGl0ZXQgdHJvdHMgaW50ZXJuYSDDpG5kcmluZ2FyIG9jaCBBUEktdXTDtmtuaW5nYXI7IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozNjEKK21zZ2lkICIiCisiaXQgZG9lc24ndCBleHBvcnQgcHJpdmF0ZSBzeW1ib2xzIChzdWNoIHN5bWJvbHMgY2FuIGJlIHRhZ2dlZCBvcHRpb25hbCBhcyAiCisid29ya2Fyb3VuZCkuIgorbXNnc3RyICIiCisiZGV0IGV4cG9ydGVyYXIgaW50ZSBwcml2YXRhIHN5bWJvbGVyIChzw6VkYW5hIHN5bWJvbGVyIGthbiB0YWdnYXMgbWVkICIKKyJcIm9wdGlvbmFsXCIgZsO2ciBhdHQgZ8OlIHJ1bnQgZGV0dGEpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzY5Cittc2dpZCAiIgorIldoaWxlIG1haW50YWluaW5nIHRoZSBzeW1ib2xzIGZpbGUsIGl0J3MgZWFzeSB0byBub3RpY2UgYXBwZWFyYW5jZSBhbmQgIgorImRpc2FwcGVhcmFuY2Ugb2Ygc3ltYm9scy4gQnV0IGl0J3MgbW9yZSBkaWZmaWN1bHQgdG8gY2F0Y2ggaW5jb21wYXRpYmxlIEFQSSAiCisiYW5kIEFCSSBjaGFuZ2UuIFRodXMgdGhlIG1haW50YWluZXIgc2hvdWxkIHJlYWQgdGhvcm91Z2hseSB0aGUgdXBzdHJlYW0gIgorImNoYW5nZWxvZyBsb29raW5nIGZvciBjYXNlcyB3aGVyZSB0aGUgcnVsZXMgb2YgZ29vZCBsaWJyYXJ5IG1hbmFnZW1lbnQgaGF2ZSAiCisiYmVlbiBicm9rZW4uIElmIHBvdGVudGlhbCBwcm9ibGVtcyBhcmUgZGlzY292ZXJlZCwgdGhlIHVwc3RyZWFtIGF1dGhvciAiCisic2hvdWxkIGJlIG5vdGlmaWVkIGFzIGFuIHVwc3RyZWFtIGZpeCBpcyBhbHdheXMgYmV0dGVyIHRoYW4gYSBEZWJpYW4gIgorInNwZWNpZmljIHdvcmstYXJvdW5kLiIKK21zZ3N0ciAiIgorIk7DpHIgbWFuIHVuZGVyaMOlbGxlciBzeW1ib2xmaWxlbiDDpHIgZGV0IGzDpHR0IGF0dCB1cHB0w6Rja2Egc3ltYm9sZXIgc29tIGR5a2VyICIKKyJ1cHAgb2NoIGbDtnJzdmlubmVyLiBEZXQgw6RyIHN2w6VyYXJlIGF0dCB1cHB0w6Rja2EgaW5rb21wYXRpYmxhIEFQSS0gb2NoIEFCSS0iCisiw6RuZHJpbmdhci4gRGVuIHBha2V0YW5zdmFyaWdlIGLDtnIgZMOkcmbDtnIgbm9nZ3JhbnQgbMOkc2EgaWdlbm9tICIKKyJ1cHBzdHLDtm1zw6RuZHJpbmdzbG9nZ2VuIGbDtnIgZmFsbCBkw6UgcmVnbGVybmEgZsO2ciBnb2QgaGFudGVyaW5nIGF2IGJpYmxpb3RlayAiCisiYnJ5dHMuIE9tIGV0dCBtw7ZqbGlndCBmZWwgdXBwdMOkY2tzIGLDtnIgdXBwc3Ryw7Ztc2bDtnJmYXR0YXJlbiBtZWRkZWxhcywgZMOlIGRldCAiCisiYWxsdGlkIMOkciBiw6R0dHJlIGF0dCBwcm9ibGVtZXQgcsOkdHRhcyB1cHBzdHLDtm1zIMOkbiBzcGVjaWZpa3QgaSBEZWJpYW4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5zeW1ib2xzLjE6MzcwCisjLCBuby13cmFwCittc2dpZCAiQjwtUD5JPHBhY2thZ2UtYnVpbGQtZGlyPiIKK21zZ3N0ciAiQjwtUD5JPHBha2V0YnlnZ2thdGFsb2c+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozNzMKK21zZ2lkICJTY2FuIEk8cGFja2FnZS1idWlsZC1kaXI+IGluc3RlYWQgb2YgZGViaWFuL3RtcC4iCittc2dzdHIgIlPDtmsgSTxwYWtldGJ5Z2drYXRhbG9nPiBpc3TDpGxsZXQgZsO2ciBkZWJpYW4vdG1wLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6Mzc3Cittc2dpZCAiIgorIkRlZmluZSB0aGUgcGFja2FnZSBuYW1lLiBSZXF1aXJlZCBpZiBtb3JlIHRoYW4gb25lIGJpbmFyeSBwYWNrYWdlIGlzIGxpc3RlZCAiCisiaW4gZGViaWFuL2NvbnRyb2wgKG9yIGlmIHRoZXJlJ3Mgbm8gZGViaWFuL2NvbnRyb2wgZmlsZSkuIgorbXNnc3RyICIiCisiRGVmaW5pZXJhIHBha2V0bmFtbmV0LiBLcsOkdnMgb20gbWVyIMOkbiBldHQgYmluw6RycGFrZXQgbGlzdGFzIGkgZGViaWFuLyIKKyJjb250cm9sIChlbGxlciBvbSBkZXQgaW50ZSBmaW5ucyBuw6Vnb24gZGViaWFuL2NvbnRyb2wtZmlsKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjM4MQorbXNnaWQgIiIKKyJEZWZpbmUgdGhlIHBhY2thZ2UgdmVyc2lvbi4gRGVmYXVsdHMgdG8gdGhlIHZlcnNpb24gZXh0cmFjdGVkIGZyb20gZGViaWFuLyIKKyJjaGFuZ2Vsb2cuIFJlcXVpcmVkIGlmIGNhbGxlZCBvdXRzaWRlIG9mIGEgc291cmNlIHBhY2thZ2UgdHJlZS4iCittc2dzdHIgIiIKKyJEZWZpbmllcmEgcGFrZXR2ZXJzaW9uLiBTdGFuZGFyZHbDpHJkZXQgw6RyIHZlcnNpb25lbiBzb20gaMOkbXRhcyBmcsOlbiBkZWJpYW4vIgorImNoYW5nZWxvZy4gS3LDpHZzIG9tIHByb2dyYW1tZXQgYW5yb3BhcyB1dGFuZsO2ciBldHQga8OkbGxrb2RzcGFrZXR0csOkZC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbnN5bWJvbHMuMTozODEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1lPkk8bGlicmFyeS1maWxlPiIKK21zZ3N0ciAiQjwtZT5JPGJpYmxpb3Rla3NmaWw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozODcKK21zZ2lkICIiCisiT25seSBhbmFseXplIGxpYnJhcmllcyBleHBsaWNpdGx5IGxpc3RlZCBpbnN0ZWFkIG9mIGZpbmRpbmcgYWxsIHB1YmxpYyAiCisibGlicmFyaWVzLiBZb3UgY2FuIHVzZSBhIHJlZ3VsYXIgZXhwcmVzc2lvbiBpbiBJPGxpYnJhcnktZmlsZT4gdG8gbWF0Y2ggIgorIm11bHRpcGxlIGxpYnJhcmllcyB3aXRoIGEgc2luZ2xlIGFyZ3VtZW50IChvdGhlcndpc2UgeW91IG5lZWQgbXVsdGlwbGUgQjwtIgorImU+KS4iCittc2dzdHIgIiIKKyJBbmFseXNlcmFyIGVuZGFzdCBiaWJsaW90ZWsgc29tIGxpc3RhdHMgZXhwbGljaXQgaXN0w6RsbGV0IGbDtnIgYXR0IGhpdHRhIGFsbGEgIgorInB1Ymxpa2EgYmlibGlvdGVrLiBEdSBrYW4gYW52w6RuZGEgZXR0IHJlZ3VsasOkcnQgdXR0cnljayBpIEk8YmlibGlvdGVrc2ZpbD4gIgorImbDtnIgYXR0IHRyw6RmZmEgbXVsdGlwbGEgYmlibGlvdGVrIG1lZCBldHQgZW5kYSBhcmd1bWVudCAoYW5uYXJzIGJlaMO2dmVyIGR1ICIKKyJmbGVyYSBCPC1lPikuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5zeW1ib2xzLjE6Mzg3CisjLCBuby13cmFwCittc2dpZCAiQjwtST5JPGZpbGVuYW1lPiIKK21zZ3N0ciAiQjwtST5JPGZpbG5hbW4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozOTEKK21zZ2lkICIiCisiVXNlIEk8ZmlsZW5hbWU+IGFzIHJlZmVyZW5jZSBmaWxlIHRvIGdlbmVyYXRlIHRoZSBzeW1ib2xzIGZpbGUgdGhhdCBpcyAiCisiaW50ZWdyYXRlZCBpbiB0aGUgcGFja2FnZSBpdHNlbGYuIgorbXNnc3RyICIiCisiQW52w6RuZCBJPGZpbG5hbW4+IHNvbSByZWZlcmVuc2ZpbCBmw7ZyIGF0dCBnZW5lcmVyYSBzeW1ib2xmaWxlbiBzb20gIgorImludGVncmVyYXMgaSBzasOkbHZhIHBha2V0ZXQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTozOTUKK21zZ2lkICIiCisiUHJpbnQgdGhlIGdlbmVyYXRlZCBzeW1ib2xzIGZpbGUgdG8gc3RhbmRhcmQgb3V0cHV0LCByYXRoZXIgdGhhbiBiZWluZyAiCisic3RvcmVkIGluIHRoZSBwYWNrYWdlIGJ1aWxkIHRyZWUuIgorbXNnc3RyICIiCisiU2tyaXYgZGVuIGdlbmVyZXJhZGUgc3ltYm9sZmlsZW4gcMOlIHN0YW5kYXJkIHV0LCBpIHN0w6RsbGV0IGbDtnIgYXR0IGxhZ3JhIGRlbiAiCisiaSBwYWtldGV0cyBieWdndHLDpGQuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5zeW1ib2xzLjE6Mzk1CisjLCBuby13cmFwCittc2dpZCAiQjwtTz5JPGZpbGVuYW1lPiIKK21zZ3N0ciAiQjwtTz5JPGZpbG5hbW4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0MDEKK21zZ2lkICIiCisiU3RvcmUgdGhlIGdlbmVyYXRlZCBzeW1ib2xzIGZpbGUgYXMgSTxmaWxlbmFtZT4uIElmIEk8ZmlsZW5hbWU+IGlzIHByZS0iCisiZXhpc3RpbmcsIGl0cyBjb250ZW50IGlzIHVzZWQgYXMgYmFzaXMgZm9yIHRoZSBnZW5lcmF0ZWQgc3ltYm9scyBmaWxlLiAgWW91ICIKKyJjYW4gdXNlIHRoaXMgZmVhdHVyZSB0byB1cGRhdGUgYSBzeW1ib2xzIGZpbGUgc28gdGhhdCBpdCBtYXRjaGVzIGEgbmV3ZXIgIgorInVwc3RyZWFtIHZlcnNpb24gb2YgeW91ciBsaWJyYXJ5LiIKK21zZ3N0ciAiIgorIkxhZ3JhIGRlbiBnZW5lcmVyYWRlIHN5bWJvbGZpbGVuIHNvbSBJPGZpbG5hbW4+LiBPbSBJPGZpbG5hbW4+IHJlZGFuICIKKyJleGlzdGVyYXIga29tbWVyIGRlc3MgaW5uZWjDpWxsIGF0dCBhbnbDpG5kYXMgc29tIGJhcyBmw7ZyIGRlbiBnZW5lcmVyYWRlICIKKyJzeW1ib2xmaWxlbi4gRHUga2FuIGFudsOkbmRhIGRlbiBow6RyIGZ1bmt0aW9uZW4gZsO2ciBhdHQgdXBwZGF0ZXJhIGVuICIKKyJzeW1ib2xmaWwgc8OlIGF0dCBkZW4gbW90c3ZhcmFyIGVuIG55YXJlIHVwcHN0csO2bXN2ZXJzaW9uIGF2IGRpdHQgYmlibGlvdGVrLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQwMQorIywgbm8td3JhcAorbXNnaWQgIkI8LXQ+IgorbXNnc3RyICJCPC10PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDEwCittc2dpZCAiIgorIldyaXRlIHRoZSBzeW1ib2wgZmlsZSBpbiB0ZW1wbGF0ZSBtb2RlIHJhdGhlciB0aGFuIHRoZSBmb3JtYXQgY29tcGF0aWJsZSAiCisid2l0aCBJPGRlYi1zeW1ib2xzKDUpPi4gVGhlIG1haW4gZGlmZmVyZW5jZSBpcyB0aGF0IGluIHRoZSB0ZW1wbGF0ZSBtb2RlICIKKyJzeW1ib2wgbmFtZXMgYW5kIHRhZ3MgYXJlIHdyaXR0ZW4gaW4gdGhlaXIgb3JpZ2luYWwgZm9ybSBjb250cmFyeSB0byB0aGUgIgorInBvc3QtcHJvY2Vzc2VkIHN5bWJvbCBuYW1lcyB3aXRoIHRhZ3Mgc3RyaXBwZWQgaW4gdGhlIGNvbXBhdGliaWxpdHkgbW9kZS4gICIKKyJNb3Jlb3Zlciwgc29tZSBzeW1ib2xzIG1pZ2h0IGJlIG9taXR0ZWQgd2hlbiB3cml0aW5nIGEgc3RhbmRhcmQgSTxkZWItc3ltYm9scyIKKyIoNSk+IGZpbGUgKGFjY29yZGluZyB0byB0aGUgdGFnIHByb2Nlc3NpbmcgcnVsZXMpIHdoaWxlIGFsbCBzeW1ib2xzIGFyZSAiCisiYWx3YXlzIHdyaXR0ZW4gdG8gdGhlIHN5bWJvbCBmaWxlIHRlbXBsYXRlLiIKK21zZ3N0ciAiIgorIlNrcml2IHN5bWJvbGZpbGVuIGkgbWFsbC1sw6RnZSBpc3TDpGxsZXQgZsO2ciBpIGZvcm1hdGV0IGtvbXBhdGliZWx0IG1lZCBJPGRlYi0iCisic3ltYm9scyg1KT4uIEh1dnVkc2tpbGxuYWRlbiDDpHIgYXR0IHN5bWJvbG5hbW4gb2NoIHRhZ2dhciBza3JpdnMgaSBzaW4gIgorIm9yaWdpbmFsZm9ybSBpIG1hbGwtbMOkZ2V0LCB0aWxsIHNraWxsbmFkIGZyw6VuIGRlIGVmdGVyYmVoYW5kbGFkZSAiCisic3ltYm9sbmFtbmVuIG1lZCBib3J0dGFnbmEgdGFnZ2FyIHNvbSBza3JpdnMgaSBkZXQga29tcGF0aWJsYSBsw6RnZXQuICIKKyJEZXNzdXRvbSBrYW4gdmlzc2Egc3ltYm9sZXIgdXRlc2x1dGFzIG7DpHIgZW4gdmFubGlnIEk8ZGViLXN5bWJvbHMoNSk+LWZpbCAiCisic2tyaXZzIChpIGVubGlnaGV0IG1lZCB0YWdnaGFudGVyaW5nc3JlZ2xlcm5hKSBtZWRhbiBhbGxhIHN5bWJvbGVyIGFsbHRpZCAiCisic2tyaXZzIHRpbGwgc3ltYm9sZmlsc21hbGxlbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0MTAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1jPkk8WzAtNF0+IgorbXNnc3RyICJCPC1jPkk8WzAtNF0+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0MTgKK21zZ2lkICIiCisiRGVmaW5lIHRoZSBjaGVja3MgdG8gZG8gd2hlbiBjb21wYXJpbmcgdGhlIGdlbmVyYXRlZCBzeW1ib2xzIGZpbGUgd2l0aCB0aGUgIgorInRlbXBsYXRlIGZpbGUgdXNlZCBhcyBzdGFydGluZyBwb2ludC4gQnkgZGVmYXVsdCB0aGUgbGV2ZWwgaXMgMS4gSW5jcmVhc2luZyAiCisibGV2ZWxzIGRvIG1vcmUgY2hlY2tzIGFuZCBpbmNsdWRlIGFsbCBjaGVja3Mgb2YgbG93ZXIgbGV2ZWxzLiBMZXZlbCAwIG5ldmVyICIKKyJmYWlscy4gTGV2ZWwgMSBmYWlscyBpZiBzb21lIHN5bWJvbHMgaGF2ZSBkaXNhcHBlYXJlZC4gTGV2ZWwgMiBmYWlscyBpZiBzb21lICIKKyJuZXcgc3ltYm9scyBoYXZlIGJlZW4gaW50cm9kdWNlZC4gTGV2ZWwgMyBmYWlscyBpZiBzb21lIGxpYnJhcmllcyBoYXZlICIKKyJkaXNhcHBlYXJlZC4gTGV2ZWwgNCBmYWlscyBpZiBzb21lIGxpYnJhcmllcyBoYXZlIGJlZW4gaW50cm9kdWNlZC4iCittc2dzdHIgIiIKKyJEZWZpbmllcmEgdmlsa2Ega29udHJvbGxlciBzb20gc2thbGwgdXRmw7ZyYXMgbsOkciBkZW4gZ2VuZXJlcmFkZSBzeW1ib2xmaWxlbiAiCisiasOkbWbDtnJzIG1lZCBkZW4gbWFsbGZpbCBzb20gYW52w6RuZHMgc29tIHN0YXJ0cHVua3QuIFNvbSBzdGFuZGFyZCDDpHIgbml2w6VuIDEuICIKKyJHZW5vbSBhdHQgw7ZrYSBuaXbDpW4gdXRmw7ZycyBmbGVyYSBrb250cm9sbGVyLCBpbmtsdXNpdmUgYWxsYSBrb250cm9sbGVyIHDDpSAiCisibMOkZ3JlIG5pdsOlLiBOaXbDpSAyIG1pc3NseWNrYXMgb20gbnlhIHN5bWJvbGVyIGhhciBpbnRyb2R1Y2VyYXRzLiBOaXbDpSAzICIKKyJtaXNzbHlja2FzIG9tIG7DpWdyYSBiaWJsaW90ZWsgaGFyIGbDtnJzdnVubml0LiBOaXbDpSA0IG1pc3NseWNrYXMgb20gbsOlZ3JhICIKKyJiaWJsaW90ZWsgaGFyIGludHJvZHVjZXJhdHMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0MjEKK21zZ2lkICIiCisiVGhpcyB2YWx1ZSBjYW4gYmUgb3ZlcnJpZGRlbiBieSB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGUgIgorIkRQS0dfR0VOU1lNQk9MU19DSEVDS19MRVZFTC4iCittc2dzdHIgIlbDpHJkZXQga2FuIMO2dmVyc3R5cmFzIG1lZCBtaWxqw7Z2YXJpYWJlbG4gRFBLR19HRU5TWU1CT0xTX0NIRUNLX0xFVkVMLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDI3Cittc2dpZCAiIgorIktlZXAgcXVpZXQgYW5kIG5ldmVyIGdlbmVyYXRlIGEgZGlmZiBiZXR3ZWVuIGdlbmVyYXRlZCBzeW1ib2xzIGZpbGUgYW5kIHRoZSAiCisidGVtcGxhdGUgZmlsZSB1c2VkIGFzIHN0YXJ0aW5nIHBvaW50IG9yIHNob3cgYW55IHdhcm5pbmdzIGFib3V0IG5ldy9sb3N0ICIKKyJsaWJyYXJpZXMgb3IgbmV3L2xvc3Qgc3ltYm9scy4gVGhpcyBvcHRpb24gb25seSBkaXNhYmxlcyBpbmZvcm1hdGlvbmFsICIKKyJvdXRwdXQgYnV0IG5vdCB0aGUgY2hlY2tzIHRoZW1zZWx2ZXMgKHNlZSBJPC1jPiBvcHRpb24pLiIKK21zZ3N0ciAiIgorIkjDpWxsIHR5c3Qgb2NoIGdlbmVyZXJhIGFsZHJpZyBlbiBkaWZmZXJlbnMgbWVsbGFuIGRlbiBnZW5lcmVyYWRlIHN5bWJvbGZpbGVuICIKKyJvY2ggbWFsbGZpbGVuIHNvbSBhbnbDpG5kZXMgc29tIHN0YXJ0cHVua3QgZWxsZXIgdmlzYSB2YXJuaW5nYXIgb20gbnlhLyIKKyJmw7ZybG9yYWRlIGJpYmxpb3RlayBlbGxlciBueWEvZsO2cmxvcmFkZSBzeW1ib2xlci4gRGVuIGjDpHIgZmxhZ2dhbiB0YXIgZW5kYXN0ICIKKyJib3J0IGluZm9ybWF0aW9uc3V0ZGF0YSwgaW50ZSBzasOkbHZhIGtvbnRyb2xsZXJhbiAoc2UgZmxhZ2dhbiBJPC1jPikuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDI3CisjLCBuby13cmFwCittc2dpZCAiQjwtYT5JPGFyY2g+IgorbXNnc3RyICJCPC1hPkk8YXJraXRla3R1cj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQzMgorbXNnaWQgIiIKKyJBc3N1bWUgSTxhcmNoPiBhcyBob3N0IGFyY2hpdGVjdHVyZSB3aGVuIHByb2Nlc3Npbmcgc3ltYm9sIGZpbGVzLiBVc2UgdGhpcyAiCisib3B0aW9uIHRvIGdlbmVyYXRlIGEgc3ltYm9sIGZpbGUgb3IgZGlmZiBmb3IgYW55IGFyY2hpdGVjdHVyZSBwcm92aWRlZCBpdHMgIgorImJpbmFyaWVzIGFyZSBhbHJlYWR5IGF2YWlsYWJsZS4iCittc2dzdHIgIiIKKyJBbnRhIEk8YXJraXRla3R1cj4gc29tIHbDpHJkYXJraXRla3R1ciB2aWQgaGFudGVyaW5nIGF2IHN5bWJvbGZpbGVyLiBBbnbDpG5kICIKKyJkZW4gaMOkciBmbGFnZ2FuIGbDtnIgYXR0IGdlbmVyZXJhIGVuIHN5bWJvbGZpbCBlbGxlciBkaWZmZXJlbnMgZsO2ciB2YWxmcmkgIgorImFya2l0ZWt0dXIgc8OlIGzDpG5nZSBkZXNzIGJpbsOkcmVyIMOkciB0aWxsZ8OkbmdsaWdhLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDM3Cittc2dpZCAiIgorIkVuYWJsZSBkZWJ1ZyBtb2RlLiBOdW1lcm91cyBtZXNzYWdlcyBhcmUgZGlzcGxheWVkIHRvIGV4cGxhaW4gd2hhdCBCPGRwa2ctIgorImdlbnN5bWJvbHM+IGRvZXMuIgorbXNnc3RyICIiCisiQWt0aXZlcmFyIGZlbHPDtmtuaW5nc2zDpGdlLiBGbGVyYSBtZWRkZWxhbmRlbiB2aXNhcyBmw7ZyIGF0dCBmw7Zya2xhcmEgdmFkICIKKyJCPGRwa2ctZ2Vuc3ltYm9scz4gZ8O2ci4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0MzcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1WPiIKK21zZ3N0ciAiQjwtVj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctZ2Vuc3ltYm9scy4xOjQ0MworbXNnaWQgIiIKKyJFbmFibGUgdmVyYm9zZSBtb2RlLiBUaGUgZ2VuZXJhdGVkIHN5bWJvbHMgZmlsZSBjb250YWlucyBkZXByZWNhdGVkIHN5bWJvbHMgIgorImFzIGNvbW1lbnRzLiBGdXJ0aGVybW9yZSBpbiB0ZW1wbGF0ZSBtb2RlLCBwYXR0ZXJuIHN5bWJvbHMgYXJlIGZvbGxvd2VkIGJ5ICIKKyJjb21tZW50cyBsaXN0aW5nIHJlYWwgc3ltYm9scyB0aGF0IGhhdmUgbWF0Y2hlZCB0aGUgcGF0dGVybi4iCittc2dzdHIgIiIKKyJBa3RpdmVyYSBwcmF0c2FtdCBsw6RnZS4gRGVuIGdlbmVyZXJhZGUgc3ltYm9sZmlsZW4gaW5uZWjDpWxsZXIgZWogbMOkbmdyZSAiCisicmVrb21tZW5kZXJhZGUgc3ltYm9sZXIgc29tIGtvbW1lbnRhcmVyLiBJIG1hbGwtbMOkZ2UgZsO2bGpzIGRlc3N1dG9tICIKKyJtw7Zuc3RlcnN5bWJvbGVyIGF2IGtvbW1lbnRhcmVyIHNvbSB2aXNhciB2aWxrYSB2ZXJrbGlnYSBzeW1ib2xlciBzb20gaGFyICIKKyJ0csOkZmZhdHMgYXYgbcO2bnN0cmV0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDUyCittc2dpZCAiQjxodHRwOi8vcGVvcGxlLnJlZGhhdC5jb20vZHJlcHBlci9zeW1ib2wtdmVyc2lvbmluZz4iCittc2dzdHIgIkI8aHR0cDovL3Blb3BsZS5yZWRoYXQuY29tL2RyZXBwZXIvc3ltYm9sLXZlcnNpb25pbmc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0NTQKK21zZ2lkICJCPGh0dHA6Ly9wZW9wbGUucmVkaGF0LmNvbS9kcmVwcGVyL2dvb2RwcmFjdGljZS5wZGY+IgorbXNnc3RyICJCPGh0dHA6Ly9wZW9wbGUucmVkaGF0LmNvbS9kcmVwcGVyL2dvb2RwcmFjdGljZS5wZGY+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLWdlbnN5bWJvbHMuMTo0NTYKK21zZ2lkICJCPGh0dHA6Ly9wZW9wbGUucmVkaGF0LmNvbS9kcmVwcGVyL2Rzb2hvd3RvLnBkZj4iCittc2dzdHIgIkI8aHR0cDovL3Blb3BsZS5yZWRoYXQuY29tL2RyZXBwZXIvZHNvaG93dG8ucGRmPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDU5Cittc2dpZCAiQjxkZWItc3ltYm9scz4oNSksIEI8ZHBrZy1zaGxpYmRlcHM+KDEpLiIKK21zZ3N0ciAiQjxkZWItc3ltYm9scz4oNSksIEI8ZHBrZy1zaGxpYmRlcHM+KDEpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1nZW5zeW1ib2xzLjE6NDYyCittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMDctMjAwOSBSYXBoYVxcWzplXWwgSGVydHpvZyIKK21zZ3N0ciAiVXBwaG92c3LDpHR0c3NreWRkYXQgwqkgMjAwNy0yMDA5IFJhcGhhw6tsIEhlcnR6b2ciCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLW1haW50c2NyaXB0LWhlbHBlciIKK21zZ3N0ciAiZHBrZy1tYWludHNjcmlwdC1oZWxwZXIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6NAorbXNnaWQgIiIKKyJkcGtnLW1haW50c2NyaXB0LWhlbHBlciAtIHdvcmtzIGFyb3VuZCBrbm93biBkcGtnIGxpbWl0YXRpb25zIGluIG1haW50YWluZXIgIgorInNjcmlwdHMiCittc2dzdHIgIiIKKyJkcGtnLW1haW50c2NyaXB0LWhlbHBlciAtIGfDpXIgcnVudCBrw6RuZGEgZHBrZy1iZWdyw6Ruc25pbmdhciBpIHBha2V0c2tyaXB0IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjgKK21zZ2lkICIiCisiQjxkcGtnLW1haW50c2NyaXB0LWhlbHBlcj4gSTxjb21tYW5kPiBbSTxwYXJhbWV0ZXI+Li4uXSBCPC0tPiBJPG1haW50LXNjcmlwdC0iCisicGFyYW1ldGVyPi4uLiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1tYWludHNjcmlwdC1oZWxwZXI+IEk8a29tbWFuZG8+IFtJPGZsYWdnYT4uLi5dIEI8LS0+IEk8bWFpbnQtc2NyaXB0LSIKKyJmbGFnZ2E+Li4uIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMTo5CisjLCBuby13cmFwCittc2dpZCAiQ09NTUFORFMgQU5EIFBBUkFNRVRFUlMiCittc2dzdHIgIktPTU1BTkRPTiBPQ0ggUEFSQU1FVFJBUiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxMgorbXNnaWQgIkI8cm1fY29uZmZpbGU+IEk8Y29uZmZpbGU+IFtJPGxhc3R2ZXJzaW9uPiBbSTxwYWNrYWdlPl1dIgorbXNnc3RyICJCPHJtX2NvbmZmaWxlPiBJPGtvbmZmaWw+IFtJPHNlbmFzdGV2ZXJzaW9uPiBbSTxwYWtldD5dXSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxNAorbXNnaWQgIiIKKyJCPG12X2NvbmZmaWxlPiBJPG9sZGNvbmZmaWxlPiBJPG5ld2NvbmZmaWxlPiBbSTxsYXN0dmVyc2lvbj4gW0k8cGFja2FnZT5dXSIKK21zZ3N0ciAiIgorIkI8bXZfY29uZmZpbGU+IEk8Z2FtbWFsa29uZmZpbD4gSTxueWtvbmZmaWw+IFtJPHNlbmFzdGV2ZXJpc29uPiBbSTxwYWtldD5dXSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToyMAorbXNnaWQgIiIKKyJUaGlzIHByb2dyYW0gaXMgZGVzaWduZWQgdG8gYmUgcnVuIHdpdGhpbiBtYWludGFpbmVyIHNjcmlwdHMgdG8gYWNoaWV2ZSBzb21lICIKKyJ0YXNrcyB0aGF0IGRwa2cgY2FuJ3QgKHlldCkgaGFuZGxlIG5hdGl2ZWx5IGVpdGhlciBiZWNhdXNlIG9mIGRlc2lnbiAiCisiZGVjaXNpb25zIG9yIGR1ZSB0byBjdXJyZW50IGxpbWl0YXRpb25zLiIKK21zZ3N0ciAiIgorIlByb2dyYW1tZXQgc2tyZXZzIGbDtnIgYXR0IGvDtnJhcyBpIHBha2V0c2tyaXB0IGbDtnIgYXR0IHV0ZsO2cmEgZW4gZGVsIMOldGfDpHJkZXIgIgorInNvbSBkcGtnICjDpG5udSkgaW50ZSBzasOkbHYga2FuIGhhbnRlcmEsIGFudGluZ2VuIHDDpSBncnVuZCBhdiBkZXNpZ252YWwgZWxsZXIgIgorInDDpSBncnVuZCBhdiBudXZhcmFuZGUgYmVncsOkbnNuaW5nYXIuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjI3Cittc2dpZCAiIgorIk1hbnkgb2YgdGhvc2UgdGFza3MgcmVxdWlyZSBjb29yZGluYXRlZCBhY3Rpb25zIGZyb20gc2V2ZXJhbCBtYWludGFpbmVyICIKKyJzY3JpcHRzIChCPHByZWluc3Q+LCBCPHBvc3RpbnN0PiwgQjxwcmVybT4sIEI8cG9zdHJtPikuIFRvIGF2b2lkIG1pc3Rha2VzICIKKyJ0aGUgc2FtZSBjYWxsIHNpbXBseSBuZWVkcyB0byBiZSBwdXQgaW4gYWxsIHNjcmlwdHMgYW5kIHRoZSBwcm9ncmFtIHdpbGwgIgorImF1dG9tYXRpY2FsbHkgYWRhcHQgaXRzIGJlaGF2aW91ciBiYXNlZCBvbiB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGUgIgorIkI8RFBLR19NQUlOVFNDUklQVF9OQU1FPiBhbmQgb24gdGhlIG1haW50YWluZXIgc2NyaXB0cyBhcmd1bWVudHMgdGhhdCB5b3UgIgorImhhdmUgdG8gZm9yd2FyZCBhZnRlciBhIGRvdWJsZSBkYXNoLiIKK21zZ3N0ciAiIgorIk3DpW5nYSBhdiBkZXNzYSDDpXRnw6RyZGVyIGtyw6R2ZXIgc2Ftb3JkbmFkZSDDpXRnw6RyZGVyIGZyw6VuIGZsZXJhIHBha2V0c2tyaXB0ICIKKyIoQjxwcmVpbnQ+LCBCPHBvc3RpbnN0PiwgQjxwcmVybT4sIEI8cG9zdHJtPikuIEbDtnIgYXR0IHVuZHZpa2EgbWlzc3RhZyAiCisicsOkY2tlciBkZXQgYXR0IGzDpGdnYSBpbiBldHQgb2NoIHNhbW1hIGFucm9wIGkgYWxsYSBza3JpcHQsIHZhcnDDpSBwcm9ncmFtbWV0ICIKKyJhbnBhc3NhciBzaXR0IGJldGVlbmRlIGJlcm9lbmRlIHDDpSBtaWxqw7Z2YXJpYWJlbG4gQjxEUEtHX01BSU5UU0NSSVBUX05BTUU+ICIKKyJvY2ggcMOlIHBha2V0c2tyaXB0ZXRzIHBhcmFtZXRyYXIsIHZpbGthIGR1IG3DpXN0ZSB2aWRhcmVzw6RuZGEgZWZ0ZXIgZHViYmxhICIKKyJiaW5kZXN0cmVjay4iCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjI4CisjLCBuby13cmFwCittc2dpZCAiQ09ORkZJTEUgUkVMQVRFRCBUQVNLUyIKK21zZ3N0ciAiS09ORkZJTC1SRUxBVEVSQURFIMOFVEfDhFJERVIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MzgKK21zZ2lkICIiCisiV2hlbiB1cGdyYWRpbmcgYSBwYWNrYWdlLCBkcGtnIHdpbGwgbm90IGF1dG9tYXRpY2FsbHkgcmVtb3ZlIGEgY29uZmZpbGUgKGEgIgorImNvbmZpZ3VyYXRpb24gZmlsZSBmb3Igd2hpY2ggZHBrZyBzaG91bGQgcHJlc2VydmUgdXNlciBjaGFuZ2VzKSBpZiBpdCBpcyBub3QgIgorInByZXNlbnQgaW4gdGhlIG5ld2VyIHZlcnNpb24uIFRoZXJlIGFyZSB0d28gcHJpbmNpcGFsIHJlYXNvbnMgZm9yIHRoaXM7IHRoZSAiCisiZmlyc3QgaXMgdGhhdCB0aGUgY29uZmZpbGUgY291bGQndmUgYmVlbiBkcm9wcGVkIGJ5IGFjY2lkZW50IGFuZCB0aGUgbmV4dCAiCisidmVyc2lvbiBjb3VsZCByZXN0b3JlIGl0LCB1c2VycyB3b3VsZG4ndCB3YW50IHRoZWlyIGNoYW5nZXMgdGhyb3duIGF3YXkuIFRoZSAiCisic2Vjb25kIGlzIHRvIGFsbG93IHBhY2thZ2VzIHRvIHRyYW5zaXRpb24gZmlsZXMgZnJvbSBhIGRwa2ctbWFpbnRhaW5lZCAiCisiY29uZmZpbGUgdG8gYSBmaWxlIG1haW50YWluZWQgYnkgdGhlIHBhY2thZ2UncyBtYWludGFpbmVyIHNjcmlwdHMsIHVzdWFsbHkgIgorIndpdGggYSB0b29sIGxpa2UgZGViY29uZiBvciB1Y2YuIgorbXNnc3RyICIiCisiTsOkciBldHQgcGFrZXQgdXBwZ3JhZGVycyBrb21tZXIgZHBrZyBpbnRlIGF0dCBhdXRvbWF0aXNrdCB0YSBib3J0IGVuIGtvbmZmaWwgIgorIihlbiBrb25maWd1cmF0aW9uc2ZpbCBmw7ZyIHZpbGtlbiBkcGtnIHNrYWxsIGJlaMOlbGxhIGFudsOkbmRhcmVucyDDpG5kcmluZ2FyKSAiCisib20gZGVuIGludGUgZmlubnMgaSBkZW4gbnlhIHZlcnNpb25lbi4gRGV0IGZpbm5zIHR2w6UgZ3J1bmRsw6RnZ2FuZGUgc2vDpGwgdGlsbCAiCisiZGV0dGE7IGRlbiBmw7Zyc3RhIMOkciBhdHQga29uZmZpbGVuIGthbiBoYSB0YXBwYXRzIGF2IG1pc3N0YWcgb2NoIG7DpHN0YSAiCisidmVyc2lvbiBrYW4ga29tbWEgYXR0IMOldGVyc3TDpGxsYSBkZW4sIHZhcnDDpSBhbnbDpG5kYXJlbiBpbnRlIHZpbGwgdGFwcGEgc2luYSAiCisiw6RuZHJpbmdhci4gRGVuIGFuZHJhIMOkciBhdHQgZsO2ciBhdHQgZ8O2cmEgZGV0IG3DtmpsaWd0IGbDtnIgcGFrZXQgYXR0IGfDpSDDtnZlciAiCisiZnLDpW4gZW4gZHBrZy1oYW50ZXJhZCBrb25mZmlsIHRpbGwgZW4gZmlsIHNvbSBoYW50ZXJhcyBhdiBwYWtldGV0cyBza3JpcHQsICIKKyJ2YW5saWd0dmlzIGdlbm9tIGV0dCB2ZXJrdHlnIHNvbSBkZWJjb25mIGVsbGVyIHVjZi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6NDMKK21zZ2lkICIiCisiVGhpcyBtZWFucyB0aGF0IGlmIGEgcGFja2FnZSBpcyBpbnRlbmRlZCB0byByZW5hbWUgb3IgcmVtb3ZlIGEgY29uZmZpbGUsIGl0ICIKKyJtdXN0IGV4cGxpY2l0bHkgZG8gc28gYW5kIEI8ZHBrZy1tYWludHNjcmlwdC1oZWxwZXI+IGNhbiBiZSB1c2VkIHRvICIKKyJpbXBsZW1lbnQgZ3JhY2VmdWwgZGVsZXRpb24gYW5kIG1vdmluZyBvZiBjb25mZmlsZXMgd2l0aGluIG1haW50YWluZXIgIgorInNjcmlwdHMuIgorbXNnc3RyICIiCisiRGV0IGlubmViw6RyIGF0dCwgb20gcGFrZXRldCBtZW5hciBhdHQgYnl0YSBuYW1uIGVsbGVyIHRhIGJvcnQgZW4gIgorImtvbmZpZ3VyYXRpb25zZmlsLCBzw6UgbcOlc3RlIGRldCBnw7ZyYSBzw6UgZXhwbGljaXQsIG9jaCBkw6Uga2FuIEI8ZHBrZy0iCisibWFpbnRzY3JpcHQtaGVscGVyPiBhbnbDpG5kYXMgZsO2ciBhdHQgaW1wbGVtZW50ZXJhIGVuIGVsZWdhbnQgYm9ydHRhZ25pbmcgb2NoICIKKyJmbHl0dG5pbmcgYXYga29uZmZpbGVyIGkgcGFrZXRzY3JpcHRlbi4iCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjQ0CisjLCBuby13cmFwCittc2dpZCAiUkVNT1ZJTkcgQSBDT05GRklMRSIKK21zZ3N0ciAiVEEgQk9SVCBFTiBLT05GRklMIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjUwCittc2dpZCAiIgorIklmIGEgY29uZmZpbGUgaXMgY29tcGxldGVseSByZW1vdmVkLCBpdCBzaG91bGQgYmUgcmVtb3ZlZCBmcm9tIGRpc2ssIHVubGVzcyAiCisidGhlIHVzZXIgaGFzIG1vZGlmaWVkIGl0LiBJZiB0aGVyZSBhcmUgbG9jYWwgbW9kaWZpY2F0aW9ucywgdGhleSBzaG91bGQgYmUgIgorInByZXNlcnZlZC4gSWYgdGhlIHBhY2thZ2UgdXBncmFkZXMgYWJvcnRzLCB0aGUgbmV3bHkgb2Jzb2xldGUgY29uZmZpbGUgIgorInNob3VsZCBub3QgZGlzYXBwZWFyLiIKK21zZ3N0ciAiIgorIk9tIGVuIGtvbmZmaWwgaGVsdCB0YXMgYm9ydCBiw7ZyIGRlbiB0YXMgYm9ydCBmcsOlbiBkaXNrLCBzw6V2aWRhIGludGUgIgorImFudsOkbmRhcmVuIGhhciBtb2RpZmllcmF0IGRlbi4gT20gZGV0IGZpbm5zIGxva2FsYSDDpG5kcmluZ2FyIGLDtnIgZGUgIgorImJpYmVow6VsbGFzLiBPbSBwYWtldHVwcGdyYWRlcmluZ2VuIGF2YnJ5dHMgYsO2ciBpbnRlIGtvbmZmaWxlbiBzb20ganVzdCBibGV2ICIKKyJmw7Zyw6VsZHJhcyBmw7Zyc3Zpbm5hLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMTo1MworbXNnaWQgIiIKKyJBbGwgb2YgdGhpcyBpcyBpbXBsZW1lbnRlZCBieSBwdXR0aW5nIHRoZSBmb2xsb3dpbmcgc2hlbGwgc25pcHBldCBpbiB0aGUgIgorIkI8cHJlaW5zdD4sIEI8cG9zdGluc3Q+IGFuZCBCPHBvc3RybT4gbWFpbnRhaW5lciBzY3JpcHRzOiIKK21zZ3N0ciAiIgorIkFsbHQgZGV0dGEgaW1wbGVtZW50ZXJhcyBnZW5vbSBhdHQgbMOkZ2dhIGluIGbDtmxqYW5kZSBza2Fsa29kIGkgcGFrZXRza3JpcHRlbiAiCisiQjxwcmVpbnN0PiwgQjxwb3N0aW5zdD4gb2NoIEI8cG9zdHJtPjoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6NTYKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiICAgIGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyIHJtX2NvbmZmaWxlIFxcZVxuIgorIiAgICAgICAgSTxjb25mZmlsZT4gSTxsYXN0dmVyc2lvbj4gSTxwYWNrYWdlPiAtLSBcIiRAXCJcbiIKK21zZ3N0ciAiIgorIiAgICBkcGtnLW1haW50c2NyaXB0LWhlbHBlciBybV9jb25mZmlsZSBcXGVcbiIKKyIgICAgICAgIEk8a29uZmZpbD4gSTxzZW5hc3RldmVyc2lvbj4gSTxwYWtldD4gLS0gXCIkQFwiXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6NjYKK21zZ2lkICIiCisiSTxjb25mZmlsZT4gaXMgdGhlIGZpbGVuYW1lIG9mIHRoZSBjb25mZmlsZSB0byByZW1vdmUuICBJPGxhc3R2ZXJzaW9uPiBpcyAiCisidGhlIGxhc3QgdmVyc2lvbiBvZiB0aGUgcGFja2FnZSB0aGF0IGNvbnRhaW5lZCB0aGUgY29uZmZpbGUgKG9yIHRoZSBsYXN0ICIKKyJ2ZXJzaW9uIG9mIHRoZSBwYWNrYWdlIHRoYXQgZGlkIG5vdCB0YWtlIGNhcmUgdG8gcmVtb3ZlIHRoZSBvYnNvbGV0ZSAiCisiY29uZmZpbGUgaWYgdGhpcyB3YXMgbm90IGltbWVkaWF0ZWx5IGltcGxlbWVudGVkKS4gIElmIEk8bGFzdHZlcnNpb24+IGlzICIKKyJlbXB0eSBvciBvbWl0dGVkLCB0aGVuIHRoZSBvcGVyYXRpb24gaXMgdHJpZWQgb24gZXZlcnkgdXBncmFkZS4gSTxwYWNrYWdlPiAiCisiaXMgdGhlIHBhY2thZ2UgbmFtZSwgaXQncyBvcHRpb25hbCBhcyBpdCB3aWxsIGRlZmF1bHQgdG8gIgorIiREUEtHX01BSU5UU0NSSVBUX1BBQ0tBR0UgKHRoaXMgdmFyaWFibGUgaXMgc2V0IGJ5IGRwa2cgdG8gdGhlIG5hbWUgb2YgdGhlICIKKyJwYWNrYWdlIGFjdGVkIHVwb24pLiBBbGwgdGhlIHBhcmFtZXRlcnMgb2YgdGhlIG1haW50YWluZXIgc2NyaXB0cyBoYXZlIHRvIGJlICIKKyJmb3J3YXJkZWQgdG8gdGhlIHByb2dyYW0gYWZ0ZXIgXCItLVwiLiIKK21zZ3N0ciAiIgorIkk8a29uZmZpbD4gw6RyIGZpbG5hbW5ldCBww6UgZGVuIGtvbmZmaWwgc29tIHNrYWxsIHRhcyBib3J0LiBJPHNlbmFzdGV2ZXJzaW9uPiAiCisiw6RyIGRlbiBzZW5hc3RlIHZlcnNpb25lbiBhdiBwYWtldGV0IHNvbSBpbm5laMO2bGwga29uZmZpbGVuIChlbGxlciBkZW4gIgorInNlbmFzdGUgdmVyc2lvbmVuIGF2IHBha2V0ZXQgc29tIGludGUgdG9nIGhhbmQgb20gYXR0IHRhIGJvcnQgZGVuIMO2dmVyYmxpdm5hICIKKyJrb25mZmlsZW4gb20gZGV0dGEgaW50ZSBvbWVkZWxiYXJ0IGltcGxlbWVudGVyYWRlcykuIE9tIEk8c2VuYXN0ZXZlcnNpb24+IMOkciAiCisidG9tdCBlbGxlciBpbnRlIGFuZ2l2aXRzIGbDtnJzw7ZrcyBvcGVyYXRpb25lbiB2YXJqZSBnw6VuZyBwYWtldGV0IHVwcGdyYWRlcmFzLiAiCisiSTxwYWtldD4gw6RyIHBha2V0bmFtbmV0LCBkZXQgw6RyIGZyaXZpbGxpZ3QgZWZ0ZXJzb20gZGV0IGZhbGxlciB0aWxsYmFrYSBww6UgIgorIiREUEtHX01BSU5TVENSSVBUX1BBQ0tBR0UgKHZhcmlhYmVsbiBzw6R0dHMgYXYgZHBrZyB0aWxsIG5hbW5ldCBww6UgZGV0IHBha2V0ICIKKyJzb20gYmVoYW5kbGFzKS4gQWxsYSBwYXJhbWVyYXIgdGlsbCBwYWtldHNrcmlwdGV0IG3DpXN0ZSB2aWRhcmVzw6RuZGFzIHRpbGwgIgorInByb2dyYW1tZXQgZWZ0ZXIgXCItLVwiLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMTo3NQorbXNnaWQgIiIKKyJDdXJyZW50IGltcGxlbWVudGF0aW9uOiBpbiB0aGUgQjxwcmVpbnN0PiwgaXQgY2hlY2tzIGlmIHRoZSBjb25mZmlsZSB3YXMgIgorIm1vZGlmaWVkIGFuZCByZW5hbWVzIGl0IGVpdGhlciB0byBJPGNvbmZmaWxlPkI8LmRwa2ctcmVtb3ZlPiAoaWYgbm90ICIKKyJtb2RpZmllZCkgb3IgdG8gSTxjb25mZmlsZT5CPC5kcGtnLWJhY2t1cD4gKGlmIG1vZGlmaWVkKS4gSW4gdGhlICIKKyJCPHBvc3RpbnN0PiwgdGhlIGxhdHRlciBmaWxlIGlzIHJlbmFtZWQgdG8gSTxjb25mZmlsZT5CPC5kcGtnLWJhaz4gYW5kIGtlcHQgIgorImZvciByZWZlcmVuY2UgYXMgaXQgY29udGFpbnMgdXNlciBtb2RpZmljYXRpb25zIGJ1dCB0aGUgZm9ybWVyIHdpbGwgYmUgIgorInJlbW92ZWQuIElmIHRoZSBwYWNrYWdlIHVwZ3JhZGUgYWJvcnRzLCB0aGUgQjxwb3N0cm0+IHJlaW5zdGFsbHMgdGhlICIKKyJvcmlnaW5hbCBjb25mZmlsZS4gRHVyaW5nIHB1cmdlLCB0aGUgQjxwb3N0cm0+IHdpbGwgYWxzbyBkZWxldGUgdGhlIEI8LmRwa2ctIgorImJhaz4gZmlsZSBrZXB0IHVwIHRvIG5vdy4iCittc2dzdHIgIiIKKyJBa3R1ZWxsIGltcGxlbWVudGF0aW9uOiBpIEI8cHJlaW5zdD4ga29udHJvbGxlcmFzIG9tIGtvbmZmaWxlbiDDpG5kcmFkZXMgb2NoICIKKyJpIHPDpSBmYWxsIGJ5dHMgbmFtbmV0IHDDpSBkZW4gdGlsbCBhbnRpbmdlbiBJPGtvbmZmaWw+QjwuZHBrZy1yZW1vdmU+IChvbSAiCisiaW50ZSBtb2RpZmllcmFkKSBlbGxlciB0aWxsIEk8a29uZmZpbD5CPC5kcGtnLWJhY2t1cD4gKG9tIG1vZGlmaWVyYWQpLiBJICIKKyJCPHBvc3RpbnN0PiBieXRzIG5hbW5ldCBww6UgZGVuIHNpc3Ruw6RtbmRhIGZpbGVuIHRpbGwgSTxrb25mZmlsPkI8LmRwa2ctYmFrPiAiCisib2NoIGJlaMOlbGxzIHNvbSByZWZlcmVucyBvbSBkZW4gaW5uZWjDpWxsZXIgw6RuZHJpbmdhciBhdiBhbnbDpG5kYXJlbiwgbWVkYW4gIgorImRlbiB0aWRpZ2FyZSBrb21tZXIgYXR0IHRhcyBib3J0LiBPbSBwYWtldHVwcGdyYWRlcmluZ2VuIGF2YnJ5dHMga29tbWVyICIKKyJCPHBvc3RybT4gYXR0IG9taW5zdGFsbGVyYSBkZW4gdXJzcHJ1bmdsaWdhIGtvbmZmaWxlbi4gVmlkIGJvcnR0YWduaW5nICIKKyJrb21tZXIgQjxwb3N0cm0+IMOkdmVuIGF0dCB0YSBib3J0IEI8LmRwa2ctYmFrPi1maWxlbiBzb20gYmVow6VsbGl0cyBmcmFtIHRpbGwgIgorImRlc3MuIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMTo3NgorIywgbm8td3JhcAorbXNnaWQgIlJFTkFNSU5HIEEgQ09ORkZJTEUiCittc2dzdHIgIkJZVEEgTkFNTiBQw4UgRU4gS09ORkZJTCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMTo4MworbXNnaWQgIiIKKyJJZiBhIGNvbmZmaWxlIGlzIG1vdmVkIGZyb20gb25lIGxvY2F0aW9uIHRvIGFub3RoZXIsIHlvdSBuZWVkIHRvIG1ha2Ugc3VyZSAiCisieW91IG1vdmUgYWNyb3NzIGFueSBjaGFuZ2VzIHRoZSB1c2VyIGhhcyBtYWRlLiBUaGlzIG1heSBzZWVtIGEgc2ltcGxlIGNoYW5nZSAiCisidG8gdGhlIEI8cHJlaW5zdD4gc2NyaXB0IGF0IGZpcnN0LCBob3dldmVyIHRoYXQgd2lsbCByZXN1bHQgaW4gdGhlIHVzZXIgIgorImJlaW5nIHByb21wdGVkIGJ5IGRwa2cgdG8gYXBwcm92ZSB0aGUgY29uZmZpbGUgZWRpdHMgZXZlbiB0aG91Z2ggdGhleSBhcmUgIgorIm5vdCByZXNwb25zaWJsZSBvZiB0aGVtLiIKK21zZ3N0ciAiIgorIk9tIGVuIGtvbmZmaWwgZmx5dHRhcyBmcsOlbiBlbiBwbGF0cyB0aWxsIGVuIGFubmFuIG3DpXN0ZSBkdSBzZSB0aWxsIGF0dCBkdSAiCisiZmx5dHRhciBtZWQgZXZlbnR1ZWxsYSDDpG5kcmluZ2FyIGdqb3JkYSBhdiBhbnbDpG5kYXJlbi4gRGV0dGEga2FuIGbDtnJzdCB2ZXJrYSAiCisidmFyYSBlbiBlbmtlbCDDpG5kcmluZyBhdiBCPHByZWluc3Q+LXNrcmlwdGV0LCBtZW4gZGV0IGtvbW1lciBsZWRhIHRpbGwgYXR0ICIKKyJhbnbDpG5kYXJlbiBvbWJlZHMgYXR0IGdvZGvDpG5uYSDDpG5kcmluZ2FyIGkga29uZmZpbGVuIGbDtnIgZHBrZywgw6R2ZW4gb20gZGVubmUgIgorImludGUgw6RyIGFuc3ZhcmlnIGbDtnIgZGVtLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMTo4NworbXNnaWQgIiIKKyJHcmFjZWZ1bCByZW5hbWluZyBjYW4gYmUgaW1wbGVtZW50ZWQgYnkgcHV0dGluZyB0aGUgZm9sbG93aW5nIHNoZWxsIHNuaXBwZXQgIgorImluIHRoZSBCPHByZWluc3Q+LCBCPHBvc3RpbnN0PiBhbmQgQjxwb3N0cm0+IG1haW50YWluZXIgc2NyaXB0czoiCittc2dzdHIgIiIKKyJFbiBlbGVnYW50IG5hbW7DpG5kcmluZyBrYW4gaW1wbGVtZW50ZXJhcyBnZW5vbSBhdHQgbMOkZ2dhIGluIGbDtmxqYW5kZSBza2Fsa29kICIKKyJpIHBha2V0c2tyaXB0ZW4gQjxwcmVpbnN0PiwgQjxwb3N0aW5zdD4gb2NoIEI8cG9zdHJtPjoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6OTAKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiICAgIGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyIG12X2NvbmZmaWxlIFxcZVxuIgorIiAgICAgICAgSTxvbGRjb25mZmlsZT4gSTxuZXdjb25mZmlsZT4gSTxsYXN0dmVyc2lvbj4gSTxwYWNrYWdlPiAtLSBcIiRAXCJcbiIKK21zZ3N0ciAiIgorIiAgICBkcGtnLW1haW50c2NyaXB0LWhlbHBlciBtdl9jb25mZmlsZSBcXGVcbiIKKyIgICAgICAgIEk8Z2FtbWFsa29uZmZpbD4gSTxueWtvbmZmaWw+IEk8c2VuYXN0ZXZlcnNpb24+IEk8cGFrZXQ+IC0tIFwiJEBcIlxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjEwMAorbXNnaWQgIiIKKyJJPG9sZGNvbmZmaWxlPiBhbmQgSTxuZXdjb25mZmlsZT4gYXJlIHRoZSBvbGQgYW5kIG5ldyBuYW1lIG9mIHRoZSBjb25mZmlsZSAiCisidG8gcmVuYW1lLiBJPGxhc3R2ZXJzaW9uPiBpcyB0aGUgbGFzdCB2ZXJzaW9uIG9mIHRoZSBwYWNrYWdlIHRoYXQgY29udGFpbmVkICIKKyJ0aGUgY29uZmZpbGUgd2l0aCB0aGUgb2xkIG5hbWUuIElmIEk8bGFzdHZlcnNpb24+IGlzIGVtcHR5IG9yIG9taXR0ZWQsIHRoZW4gIgorInRoZSBvcGVyYXRpb24gaXMgdHJpZWQgb24gZXZlcnkgdXBncmFkZSAobm90ZTogaXQncyBzYWZlciB0byBnaXZlIHRoZSAiCisidmVyc2lvbiBhbmQgaGF2ZSB0aGUgb3BlcmF0aW9uIHRyaWVkIG9ubHkgb25jZSkuIEk8cGFja2FnZT4gaXMgdGhlIHBhY2thZ2UgIgorIm5hbWUsIGl0J3Mgb3B0aW9uYWwgYXMgaXQgd2lsbCBkZWZhdWx0IHRvICREUEtHX01BSU5UU0NSSVBUX1BBQ0tBR0UgKHRoaXMgIgorInZhcmlhYmxlIGlzIHNldCBieSBkcGtnIHRvIHRoZSBuYW1lIG9mIHRoZSBwYWNrYWdlIGFjdGVkIHVwb24pLiBBbGwgdGhlICIKKyJwYXJhbWV0ZXJzIG9mIHRoZSBtYWludGFpbmVyIHNjcmlwdHMgaGF2ZSB0byBiZSBmb3J3YXJkZWQgdG8gdGhlIHByb2dyYW0gIgorImFmdGVyIFwiLS1cIi4iCittc2dzdHIgIiIKKyJJPGdhbW1hbGtvbmZmaWw+IG9jaCBJPG55a29uZmZpbD4gw6RyIGRldCBnYW1sYSBvY2ggbnlhIG5hbW5ldCBww6Uga29uZmZpbGVuICIKKyJ2YXJzIG5hbW4gc2thbGwgYnl0YXMuIEk8c2VuYXN0ZXZlcnNpb24+IMOkciBkZW4gc2VuYXN0ZSB2ZXJzaW9uZW4gYXYgcGFrZXRldCAiCisic29tIGlubmVow7ZsbCBrb25mZmlsZW4gbWVkIGRlc3MgZ2FtbGEgbmFtbi4gT20gSTxzZW5hc3RldmVyc2lvbj4gw6RyIHRvbSAiCisiZWxsZXIgaW50ZSBoYXIgYW5naXZpdHMga29tbWVyIG9wZXJhdGlvbmVuIGF0dCBmw7Zyc8O2a2FzIHZhcmplIGfDpW5nIHBha2V0ZXQgIgorInVwcGdyYWRlcmFzIChvYnNlcnZlcmE6IGRldCDDpHIgc8Oka3JhcmUgYXR0IGFuZ2UgdmVyc2lvbmVuIG9jaCBkw6RybWVkIGVuZGFzdCAiCisidXRmw7ZyYSBvcGVyYXRpb25lbiBlbiBnw6VuZykuIEk8cGFrZXQ+IMOkciBwYWtldG5hbW5ldCwgZGV0IMOkciBmcml2aWxsaWd0ICIKKyJlZnRlcnNvbSBkZXQgZmFsbGVyIHRpbGxiYWthIHDDpSAkRFBLR19NQUlOU1RDUklQVF9QQUNLQUdFICh2YXJpYWJlbG4gc8OkdHRzICIKKyJhdiBkcGtnIHRpbGwgbmFtbmV0IHDDpSBkZXQgcGFrZXQgc29tIGJlaGFuZGxhcykuIEFsbGEgcGFyYW1lcmFyIHRpbGwgIgorInBha2V0c2tyaXB0ZXQgbcOlc3RlIHZpZGFyZXPDpG5kYXMgdGlsbCBwcm9ncmFtbWV0IGVmdGVyIFwiLS1cIi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MTA4Cittc2dpZCAiIgorIkN1cnJlbnQgaW1wbGVtZW50YXRpb246IHRoZSBCPHByZWluc3Q+IGNoZWNrcyBpZiB0aGUgY29uZmZpbGUgaGFzIGJlZW4gIgorIm1vZGlmaWVkLCBpZiB5ZXMgaXQncyBsZWZ0IG9uIHBsYWNlIG90aGVyd2lzZSBpdCdzIHJlbmFtZWQgdG8gIgorIkk8b2xkY29uZmZpbGU+QjwuZHBrZy1yZW1vdmU+LiBPbiBjb25maWd1cmF0aW9uLCB0aGUgQjxwb3N0aW5zdD4gcmVtb3ZlcyAiCisiSTxvbGRjb25mZmlsZT5CPC5kcGtnLXJlbW92ZT4gYW5kIHJlbmFtZXMgSTxvbGRjb25mZmlsZT4gdG8gSTxuZXdjb25mZmlsZT4gIgorImlmIEk8b2xkY29uZmZpbGU+IGlzIHN0aWxsIGF2YWlsYWJsZS4gT24gYWJvcnQtdXBncmFkZS9hYm9ydC1pbnN0YWxsLCB0aGUgIgorIkI8cG9zdHJtPiByZW5hbWVzIEk8b2xkY29uZmZpbGU+QjwuZHBrZy1yZW1vdmU+IGJhY2sgdG8gSTxvbGRjb25mZmlsZT4gaWYgIgorInJlcXVpcmVkLiIKK21zZ3N0ciAiIgorIkFrdHVlbGwgaW1wbGVtZW50YXRpb246IEkgQjxwcmVpbnN0PiBrb250cm9sbGVyYXMgb20ga29uZmZpbGVuIGhhciDDpG5kcmF0cywgIgorIm9tIGphIGzDpG1uYXMgZGVuIGt2YXIgcMOlIHBsYXRzLCBhbm5hcnMgYnl0cyBuYW1uZXQgcMOlIGRlbiB0aWxsICIKKyJJPGdhbW1hbGtvbmZmaWw+QjwuZHBrZy1yZW1vdmU+LiBWaWQga29uZmlndXJlcmluZyB0YXIgQjxwb3N0aW5zdD4gYm9ydCAiCisiSTxnYW1tYWxrb25mZmlsPkI8LmRwa2ctcmVtb3ZlPiBvY2ggYnl0ZXIgbmFtbiBww6UgSTxnYW1tYWxrb25mZmlsPiB0aWxsICIKKyJJPG55a29uZmZpbD4gb20gSTxnYW1tYWxrb25mZmlsPiBmb3J0ZmFyYW5kZSBmaW5ucy4gVmlkIGF2YnJ1dGVuICIKKyJ1cHBncmFkZXJpbmcgZWxsZXIgaW5zdGFsbGF0aW9uIGJ5dGVyIEI8cG9zdHJtPiB0aWxsYmFrYSBuYW1uZXQgZnLDpW4gIgorIkk8Z2FtbWFsa29uZmZpbD5CPC5kcGtnLXJlbW92ZT4gdGlsbCBJPGdhbW1hbGtvbmZmaWw+IG9tIHPDpSBiZWjDtnZzLiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MTA5CisjLCBuby13cmFwCittc2dpZCAiSU5URUdSQVRJT04gSU4gUEFDS0FHRVMiCittc2dzdHIgIklOVEVHUkVSQSBJIFBBS0VUIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjExNgorbXNnaWQgIiIKKyJHaXZlbiB0aGF0IEI8ZHBrZy1tYWludHNjcmlwdC1oZWxwZXI+IGlzIHVzZWQgaW4gdGhlIEI8cHJlaW5zdD4sIHVzaW5nIGl0ICIKKyJ1bmNvbmRpdGlvbmFsbHkgcmVxdWlyZXMgYSBwcmUtZGVwZW5kZW5jeSB0byBlbnN1cmUgdGhhdCB0aGUgcmVxdWlyZWQgIgorInZlcnNpb24gb2YgZHBrZyBoYXMgYmVlbiB1bnBhY2tlZCBiZWZvcmUuIFRoZSByZXF1aXJlZCB2ZXJzaW9uIGRlcGVuZHMgb24gIgorInRoZSBjb21tYW5kIHVzZWQsIGZvciBCPHJtX2NvbmZmaWxlPiBhbmQgQjxtdl9jb25mZmlsZT4gaXQgaXMgMS4xNS43LjI6IgorbXNnc3RyICIiCisiR2l2ZXQgYXR0IEI8ZHBrZy1tYWludHNjcmlwdC1oZWxwZXI+IGFudsOkbmRzIGkgQjxwcmVpbnN0PiBzw6UgaW5uZWLDpHIgZGV0dGEgIgorInZpbGxrb3JzbMO2c3QgYXR0IGV0dCBmw7ZyaGFuZHNiZXJvZW5kZSAoXCJwcmUtZGVwZW5kZW5jeVwiKSBrcsOkdnMgZsO2ciBhdHQgIgorImbDtnJzw6RrcmEgYXR0IGRlbiBuw7ZkdsOkbmRpZ2EgdmVyc2lvbmVuIGF2IGRwa2cgcmVkYW4gaGFyIHBhY2thdHMgdXBwLiBEZW4gIgorInZlcnNpb24gc29tIGtyw6R2cyBiZXJvciBww6Ugdmlsa2V0IGtvbW1hbmRvIHNvbSBhbnbDpG5kcywgZsO2ciBCPHJtX2NvbmZmaWxlPiAiCisib2NoIEI8bXZfY29uZmZpbGU+IMOkciBkZXQgMS4xNS43LjI6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjExOAorIywgbm8td3JhcAorbXNnaWQgIiAgICBCPFByZS1EZXBlbmRzOj4gZHBrZyAoRTxndD49IDEuMTUuNy4yKVxuIgorbXNnc3RyICIgICAgQjxQcmUtRGVwZW5kczo+IGRwa2cgKEU8Z3Q+PSAxLjE1LjcuMilcbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxMjMKK21zZ2lkICIiCisiQnV0IGluIG1hbnkgY2FzZXMgdGhlIG9wZXJhdGlvbiBkb25lIGJ5IHRoZSBwcm9ncmFtIGlzIG5vdCBjcml0aWNhbCBmb3IgdGhlICIKKyJwYWNrYWdlLCBhbmQgaW5zdGVhZCBvZiB1c2luZyBhIHByZS1kZXBlbmRlbmN5IHdlIGNhbiBjYWxsIHRoZSBwcm9ncmFtIG9ubHkgIgorImlmIHdlIGtub3cgdGhhdCB0aGUgcmVxdWlyZWQgY29tbWFuZCBpcyBzdXBwb3J0ZWQgYnkgdGhlIGN1cnJlbnRseSBpbnN0YWxsZWQgIgorImRwa2c6IgorbXNnc3RyICIiCisiTWVuIGkgbcOlbmdhIGZhbGwgw6RyIG9wZXJhdGlvbmVuIHNvbSB1dGbDtnJzIGF2IHByb2dyYW1tZXQgaW50ZSBrcml0aXNrdCBmw7ZyICIKKyJwYWtldGV0LCBvY2ggaXN0w6RsbGV0IGbDtnIgYXR0IGFudsOkbmRhIGV0dCBmw7ZyaGFuZHNiZXJvZW5kZSBrYW4gdmkgYW5yb3BhICIKKyJwcm9ncmFtbWV0IGVuZGFzdCBvbSB2aSB2ZXQgYXR0IGRldCBuw7ZkdsOkbmRpZ2Ega29tbWFuZG90IHN0w7ZkcyBhdiBkZW4gbnUgIgorImluc3RhbGxlcmFkZSBkcGtnOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxMjcKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiICAgIGlmIGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyIHN1cHBvcnRzIEk8Y29tbWFuZD47IHRoZW5cbiIKKyIgICAgICAgIGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyIEk8Y29tbWFuZD4gLi4uXG4iCisiICAgIGZpXG4iCittc2dzdHIgIiIKKyIgICAgaWYgZHBrZy1tYWludHNjcmlwdC1oZWxwZXIgc3VwcG9ydHMgSTxrb21tYW5kbz47IHRoZW5cbiIKKyIgICAgICAgIGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyIEk8a29tbWFuZG8+IC4uLlxuIgorIiAgICBmaVxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1haW50c2NyaXB0LWhlbHBlci4xOjEzMAorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDEwIFJhcGhhXFxbOmVdbCBIZXJ0em9nIgorbXNnc3RyICJVcHBob3ZzcsOkdHRzc2t5ZGRhdCDCqSAyMDEwIFJhcGhhw6tsIEhlcnR6b2ciCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MTMyCittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMDggSm9leSBIZXNzIgorbXNnc3RyICJVcHBob3ZzcsOkdHRzc2t5ZGRhdCDCqSAyMDA4IEpvZXkgSGVzcyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMToxMzQKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAwNyBHdWlsbGVtIEpvdmVyIgorbXNnc3RyICJVcHBob3ZzcsOkdHRzc2t5ZGRhdCDCqSAyMDA3IEd1aWxsZW0gSm92ZXIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjE6MTM2Cittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMDUgU2NvdHQgSmFtZXMgUmVtbmFudCIKK21zZ3N0ciAiVXBwaG92c3LDpHR0c3NreWRkYXQgwqkgMjAwNSBTY290dCBKYW1lcyBSZW1uYW50IgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMToxCisjLCBuby13cmFwCittc2dpZCAiZHBrZy1tZXJnZWNoYW5nZWxvZ3MiCittc2dzdHIgImRwa2ctbWVyZ2VjaGFuZ2Vsb2dzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjQKK21zZ2lkICJkcGtnLW1lcmdlY2hhbmdlbG9ncyAtIDMtd2F5IG1lcmdlIG9mIGRlYmlhbi9jaGFuZ2Vsb2cgZmlsZXMiCittc2dzdHIgImRwa2ctbWVyZ2VjaGFuZ2Vsb2dzIC0gdHJldsOkZ3NzYW1tYW5zbGFnbmluZyBhdiBEZWJpYW7DpG5kcmluZ3Nsb2dnYXIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6OAorbXNnaWQgIiIKKyJCPGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzPiBbSTxvcHRpb24+Li4uXSBJPG9sZD4gSTxuZXctYT4gSTxuZXctYj4gW0k8b3V0Pl0iCittc2dzdHIgIiIKKyJCPGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzPiBbSTxmbGFnZ29yPi4uLl0gSTxnYW1tYWw+IEk8bnktYT4gSTxueS1iPiBbSTx1dD5dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjE1Cittc2dpZCAiIgorIlRoaXMgcHJvZ3JhbSB3aWxsIHVzZSB0aGUgMyBwcm92aWRlZCB2ZXJzaW9ucyBvZiB0aGUgRGViaWFuIGNoYW5nZWxvZyB0byAiCisiZ2VuZXJhdGUgYSBtZXJnZWQgY2hhbmdlbG9nIGZpbGUuIFRoZSByZXN1bHRpbmcgY2hhbmdlbG9nIGlzIHN0b3JlZCBpbiB0aGUgIgorImZpbGUgSTxvdXQ+IG9yIG91dHB1dCB0byB0aGUgc3RhbmRhcmQgb3V0cHV0IGlmIHRoYXQgcGFyYW1ldGVyIGlzIG5vdCBnaXZlbi4iCittc2dzdHIgIiIKKyJQcm9ncmFtbWV0IGtvbW1lciBhbnbDpG5kYSBkZSAzIGFuZ2l2bmEgdmVyc2lvbmVybmEgYXYgRGViaWFuw6RuZHJpbmdzbG9nZ2VuICIKKyJmw7ZyIGF0dCBza2FwYSBlbiBzYW1tYW5zbGFnZW4gw6RuZHJpbmdzbG9nZ2ZpbC4gRGVuIHNrYXBhZGUgw6RuZHJpbmdzbG9nZ2VuICIKKyJzcGFyYXMgaSBmaWxlbiBJPHV0PiBlbGxlciBza3JpdnMgdXQgcMOlIHN0YW5kYXJkIHV0IG9tIGRlbiBwYXJhbWV0ZXJuIGludGUgIgorImFuZ2VzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMToyNgorbXNnaWQgIiIKKyJFYWNoIGVudHJ5IGlzIGlkZW50aWZpZWQgYnkgaXRzIHZlcnNpb24gbnVtYmVyIGFuZCB0aGV5IGFyZSBhc3N1bWVkIHRvIGJlICIKKyJub3QgY29uZmxpY3RpbmcsIHRoZXkgYXJlIHNpbXBseSBtZXJnZWQgaW4gdGhlIHJpZ2h0IG9yZGVyIChieSBkZWNyZWFzaW5nICIKKyJ2ZXJzaW9uIG51bWJlcikuIFdoZW4gQjwtLW1lcmdlLXByZXJlbGVhc2VzPiBpcyB1c2VkLCB0aGUgcGFydCBvZiB0aGUgIgorInZlcnNpb24gbnVtYmVyIGFmdGVyIHRoZSBsYXN0IHRpbGRlIGlzIGRyb3BwZWQgc28gdGhhdCAxLjAtMX5leHAxIGFuZCAiCisiMS4wLTF+ZXhwNSBhcmUgY29uc2lkZXJlZCB0byBiZSB0aGUgc2FtZSBlbnRyeS4gV2hlbiB0aGUgc2FtZSB2ZXJzaW9uIGlzICIKKyJhdmFpbGFibGUgaW4gYm90aCBJPG5ldy1hPiBhbmQgSTxuZXctYj4sIGEgc3RhbmRhcmQgbGluZS1iYXNlZCAzLXdheSBtZXJnZSAiCisiaXMgYXR0ZW1wdGVkIChwcm92aWRlZCB0aGF0IHRoZSBtb2R1bGUgQWxnb3JpdGhtOjpNZXJnZSBpcyBhdmFpbGFibGUgXFxbZW1dICIKKyJpdCdzIHBhcnQgb2YgdGhlIHBhY2thZ2UgbGliYWxnb3JpdGhtLW1lcmdlLXBlcmwgXFxbZW1dIG90aGVyd2lzZSB5b3UgZ2V0IGEgIgorImdsb2JhbCBjb25mbGljdCBvbiB0aGUgY29udGVudCBvZiB0aGUgZW50cnkpLiIKK21zZ3N0ciAiIgorIkVuc2tpbGRhIHBvc3RlciBpZGVudGlmaWVyYXMgYXYgc2l0dCB2ZXJzaW9uc251bW1lciBvY2ggZGUgYW50YXMgaW50ZSBzdMOlIGkgIgorImtvbmZsaWt0IG1lZCB2YXJhbmRyYSwgZGUgc2zDpXMgaGVsdCBlbmtlbHQgaWhvcCBpIHLDpHR0IG9yZG5pbmcgKGVubGlndCAiCisibWluc2thZGUgdmVyc2lvbnNudW1tZXIpLiBOw6RyIEI8LS1tZXJnZS1wcmVyZWxlYXNlcz4gYW52w6RuZHMgaWdub3JlcmFzICIKKyJ2ZXJzaW9uc251bXJldCBlZnRlciBkZXQgc2lzdGEgdGlsZGUtdGVja25ldCwgc8OlIGF0dCAxLjAtMX5leHAxIG9jaCAiCisiMS4wLTF+ZXhwNSBhbmdlcyB2YXJhIHNhbW1hIHBvc3QuIE7DpHIgc2FtbWEgdmVyc2lvbnNudW1tZXIgw6RyIHRpbGxnw6RuZ2xpZyBpICIKKyJiw6VkZSBJPG55LWE+IG9jaCBJPG55LWI+IGfDtnJzIGV0dCBmw7Zyc8O2ayBww6UgZW4gdmFubGlnIHJhZGJhc2VyYWQgIgorInRyZXbDpGdzc2FtbWFuc2xhZ25pbmcgKGbDtnJ1dHNhdHQgYXR0IG1vZHVsZW4gQWxnb3JpdGhtOjpNZXJnZSDDpHIgdGlsbGfDpG5nbGlnICIKKyJcXFtlbV0gZGVuIGluZ8OlciBpIHBha2V0ZXQgbGliYWxnb3JpdGhtLW1lcmdlLXBlcmwgXFxbZW1dIG9tIGludGUgZsOlciBkdSBlbiAiCisiZ2xvYmFsIGtvbmZsaWt0IHDDpSBpbm5laMOlbGxldCBpIHBvc3RlbikuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMToyOAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1tZXJnZS1wcmVyZWxlYXNlcz4sIEI8LW0+IgorbXNnc3RyICJCPC0tbWVyZ2UtcHJlcmVsZWFzZXM+LCBCPC1tPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTozMworbXNnaWQgIiIKKyJEcm9wIHRoZSBwYXJ0IGFmdGVyIHRoZSBsYXN0IHRpbGRlIGluIHRoZSB2ZXJzaW9uIG51bWJlciB3aGVuIGRvaW5nIHZlcnNpb24gIgorImNvbXBhcmlzb24gdG8gaWRlbnRpZnkgaWYgdHdvIGVudHJpZXMgYXJlIHN1cHBvc2VkIHRvIGJlIHRoZSBzYW1lIG9yIG5vdC4iCittc2dzdHIgIiIKKyJJZ25vcmVyYSBkZWxlbiBlZnRlciBkZXQgc2lzdGEgdGlsZGUtdGVja25ldCBpIHZlcnNpb25zbnVtcmV0IHZpZCAiCisidmVyc2lvbnNqw6RtZsO2cmVsc2UgZsO2ciBhdHQgdGEgcmVkYSBww6Ugb20gdHbDpSBwb3N0ZXIgYW5zZXMgdmFyYSBkZW5zYW1tYSAiCisiZWxsZXIgaW50ZS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6MzgKK21zZ2lkICIiCisiVGhpcyBpcyB1c2VmdWwgd2hlbiB5b3Uga2VlcCB1c2luZyB0aGUgc2FtZSBjaGFuZ2Vsb2cgZW50cnkgYnV0IHlvdSBpbmNyZWFzZSAiCisiaXRzIHZlcnNpb24gbnVtYmVyIHJlZ3VsYXJseS4gRm9yIGluc3RhbmNlLCB5b3UgbWlnaHQgaGF2ZSAyLjMtMX5leHAxLCAiCisiMi4zLTF+ZXhwMiwgLi4uIHVudGlsIHRoZSBvZmZpY2lhbCByZWxlYXNlIDIuMy0xIGFuZCB0aGV5IGFyZSBhbGwgdGhlIHNhbWUgIgorImNoYW5nZWxvZyBlbnRyeSB0aGF0IGhhcyBldm9sdmVkIG92ZXIgdGltZS4iCittc2dzdHIgIiIKKyJEZXQga2FuIHZhcmEgYW52w6RuZGFyYmFydCBvbSBkdSBhbnbDpG5kZXIgc2FtbWEgw6RuZHJpbmdzbG9nZ3Bvc3QgbWVuIMO2a2FyICIKKyJ2ZXJzaW9uc251bXJldCBtZWQgasOkbW5hIG1lbGxhbnJ1bS4gVGlsbCBleGVtcGVsIGthbnNrZSBkdSBoYXIgMi4zLTF+ZXhwMSwgIgorIjIuMy0xfmV4cDIsIC4uLiBmcmFtIHRpbGwgZGVuIG9mZmljaWVsbGEgdXRnw6V2YW4gMi4zLTEgb2NoIGRlIGhhciBhbGxhIHNhbW1hICIKKyLDpG5kcmluZ3Nsb2dncG9zdCBzb20gaGFyIHbDpHh0IGZyYW0gw7Z2ZXIgdGlkLiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6NDUKKyMsIG5vLXdyYXAKK21zZ2lkICJMSU1JVEFUSU9OUyIKK21zZ3N0ciAiQkVHUsOETlNOSU5HQVIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6NTAKK21zZ2lkICIiCisiQW55dGhpbmcgdGhhdCBpcyBub3QgcGFyc2VkIGJ5IERwa2c6OkNoYW5nZWxvZyBpcyBsb3N0IGR1cmluZyB0aGUgbWVyZ2UuICAiCisiVGhpcyBtaWdodCBpbmNsdWRlIHN0dWZmIGxpa2UgdmltIG1vZGVsaW5lcywgY29tbWVudHMgd2hpY2ggd2VyZSBub3QgIgorInN1cHBvc2VkIHRvIGJlIHRoZXJlLCBldGMuIgorbXNnc3RyICIiCisiQWxsdCBzb20gaW50ZSB0b2xrYXMgYXYgRHBrZzo6Q2hhbmdlbG9nIGbDtnJzdmlubmVyIHVuZGVyIHNhbW1hbnNsYWduaW5nZW4uICIKKyJEZXQga2FuIGfDpGxsYSBzYWtlciBzb20gdmltLWzDpGdlc3JhZGVyLCBrb21tZW50YXJlciBzb20gaW50ZSBza3VsbGUgdmFyYSAiCisiZMOkciwgb3N2LiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6NTEKKyMsIG5vLXdyYXAKK21zZ2lkICJJTlRFR1JBVElPTiBXSVRIIEdJVCIKK21zZ3N0ciAiSU5URUdSQVRJT04gTUVEIEdJVCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTo1NgorbXNnaWQgIiIKKyJJZiB5b3Ugd2FudCB0byB1c2UgdGhpcyBwcm9ncmFtIHRvIG1lcmdlIERlYmlhbiBjaGFuZ2Vsb2cgZmlsZXMgaW4gYSBnaXQgIgorInJlcG9zaXRvcnksIHlvdSBoYXZlIGZpcnN0IHRvIHJlZ2lzdGVyIGEgbmV3IG1lcmdlIGRyaXZlciBpbiBCPC5naXQvY29uZmlnPiAiCisib3IgQjx+Ly5naXRjb25maWc+OiIKK21zZ3N0ciAiIgorIk9tIGR1IHZpbGwgYW52w6RuZGEgZGV0IGjDpHIgcHJvZ3JhbW1ldCBmw7ZyIGF0dCBzbMOlIGlob3AgRGViaWFuw6RuZHJpbmdzbG9nZ2FyICIKKyJpIGV0dCBHaXQtYXJraXYgbcOlc3RlIGR1IGbDtnJzdCByZWdpc3RyZXJhIGVuIG55IHNhbW1hbnNsYWduaW5nc2RyaXZydXRpbiAiCisiKG1lcmdlIGRyaXZlcikgaSBCPC5naXQvY29uZmlnPiBlbGxlciBCPH4vLmdpdGNvbmZpZz46IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW1lcmdlY2hhbmdlbG9ncy4xOjYwCisjLCBuby13cmFwCittc2dpZCAiIgorIiBbbWVyZ2UgXCJkcGtnLW1lcmdlY2hhbmdlbG9nc1wiXVxuIgorIiAgICAgbmFtZSA9IGRlYmlhbi9jaGFuZ2Vsb2cgbWVyZ2UgZHJpdmVyXG4iCisiICAgICBkcml2ZXIgPSBkcGtnLW1lcmdlY2hhbmdlbG9ncyAtbSAlTyAlQSAlQiAlQVxuIgorbXNnc3RyICIiCisiIFttZXJnZSBcImRwa2ctbWVyZ2VjaGFuZ2Vsb2dzXCJdXG4iCisiICAgICBuYW1lID0gZGViaWFuL2NoYW5nZWxvZy1zYW1tYW5zbGFnbmluZ3Nkcml2cnV0aW5cbiIKKyIgICAgIGRyaXZlciA9IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzIC1tICVPICVBICVCICVBXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6NjQKK21zZ2lkICIiCisiVGhlbiB5b3UgaGF2ZSB0byBzZXR1cCB0aGUgbWVyZ2UgYXR0cmlidXRlIGZvciB0aGUgZGViaWFuL2NoYW5nZWxvZyBmaWxlICIKKyJlaXRoZXIgaW4gQjwuZ2l0YXR0cmlidXRlcz4gaW4gdGhlIHJlcG9zaXRvcnkgaXRzZWxmLCBvciBpbiBCPC5naXQvaW5mby8iCisiYXR0cmlidXRlcz46IgorbXNnc3RyICIiCisiRMOkcmVmdGVyIG3DpXN0ZSBkdSBzdMOkbGxhIGluIG1lcmdlLWF0dHJpYnV0ZXQgcMOlIGRlYmlhbi9jaGFuZ2Vsb2ctZmlsZW4sICIKKyJhbnRpbmdlbiBpIEI8LmdpdGF0dHJpYnV0ZXM+IGkgc2rDpGx2IGFya2l2ZXQsIGVsbGVyIGkgQjwuZ2l0L2luZm8vIgorImF0dHJpYnV0ZXM+OiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1tZXJnZWNoYW5nZWxvZ3MuMTo2NgorIywgbm8td3JhcAorbXNnaWQgIiBkZWJpYW4vY2hhbmdlbG9nIG1lcmdlPWRwa2ctbWVyZ2VjaGFuZ2Vsb2dzXG4iCittc2dzdHIgIiBkZWJpYW4vY2hhbmdlbG9nIG1lcmdlPWRwa2ctbWVyZ2VjaGFuZ2Vsb2dzXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjE6NjgKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAwOS0yMDEwIFJhcGhhXFxbOmVdbCBIZXJ0em9nIgorbXNnc3RyICJVcHBob3ZzcsOkdHRzc2t5ZGRhdCDCqSAyMDA5LTIwMTAgUmFwaGHDq2wgSGVydHpvZyIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctbmFtZS4xOjYKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLW5hbWUiCittc2dzdHIgImRwa2ctbmFtZSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6OQorbXNnaWQgImRwa2ctbmFtZSAtIHJlbmFtZSBEZWJpYW4gcGFja2FnZXMgdG8gZnVsbCBwYWNrYWdlIG5hbWVzIgorbXNnc3RyICIiCisiZHBrZy1uYW1lIC0gYnl0IG5hbW5ldCBww6UgRGViaWFucGFrZXQgdGlsbCBkZXQgZnVsbHN0w6RuZGlnYSBwYWtldG5hbW5ldCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6MTUKK21zZ2lkICJCPGRwa2ctbmFtZT4gW0k8b3B0aW9uPi4uLl0gW0I8LS0+XSBJPGZpbGU+Li4uIgorbXNnc3RyICJCPGRwa2ctbmFtZT4gW0k8ZmxhZ2dhPi4uLl0gW0I8LS0+XSBJPGZpbD4uLi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbmFtZS4xOjI5Cittc2dpZCAiIgorIlRoaXMgbWFudWFsIHBhZ2UgZG9jdW1lbnRzIHRoZSBCPGRwa2ctbmFtZT4gcHJvZ3JhbSB3aGljaCBwcm92aWRlcyBhbiBlYXN5ICIKKyJ3YXkgdG8gcmVuYW1lIEI8RGViaWFuPiBwYWNrYWdlcyBpbnRvIHRoZWlyIGZ1bGwgcGFja2FnZSBuYW1lcy4gQSBmdWxsICIKKyJwYWNrYWdlIG5hbWUgY29uc2lzdHMgb2YgSTxwYWNrYWdlPkI8Xz5JPHZlcnNpb24+QjxfPkk8YXJjaGl0ZWN0dXJlPkI8LiIKKyI+STxwYWNrYWdlLXR5cGU+IGFzIHNwZWNpZmllZCBpbiB0aGUgY29udHJvbCBmaWxlIG9mIHRoZSBwYWNrYWdlLiBUaGUgIgorIkk8dmVyc2lvbj4gcGFydCBvZiB0aGUgZmlsZW5hbWUgY29uc2lzdHMgb2YgdGhlIHVwc3RyZWFtIHZlcnNpb24gaW5mb3JtYXRpb24gIgorIm9wdGlvbmFsbHkgZm9sbG93ZWQgYnkgYSBoeXBoZW4gYW5kIHRoZSByZXZpc2lvbiBpbmZvcm1hdGlvbi4gVGhlIEk8cGFja2FnZS0iCisidHlwZT4gcGFydCBjb21lcyBmcm9tIHRoYXQgZmllbGQgaWYgcHJlc2VudCBvciBmYWxsYmFja3MgdG8gQjxkZWI+LiIKK21zZ3N0ciAiIgorIk1hbnVhbHNpZGFuIGRva3VtZW50ZXJhciBwcm9ncmFtbWV0IEI8ZHBrZy1uYW1lPiwgdmlsa2V0IHRpbGxoYW5kYWjDpWxsZXIgZXR0ICIKKyJlbmtlbHQgc8OkdHQgYXR0IGJ5dGEgbmFtbiBww6UgQjxEZWJpYW4+cGFrZXQgdGlsbCBkZXJhcyBmdWxsc3TDpG5kaWdhICIKKyJwYWtldG5hbW4uIEV0dCBmdWxsc3TDpG5kaWd0IHBha2V0bmFtbiBiZXN0w6VyIGF2ICIKKyJJPHBha2V0PkI8Xz5JPHZlcnNpb24+QjxfPkk8YXJraXRla3R1cj5CPC4+STxwYWtldHR5cD4gb2NoIGFuZ2VzIGF2IGNvbnRyb2wtIgorImZpbGVuIGkgcGFrZXRldC4gSTxWZXJzaW9uPi1kZWxlbiBhdiBmaWxuYW1uZXQgYmVzdMOlciBhdiAiCisidXBwc3Ryw7Ztc3ZlcnNpb25zaW5mb3JtYXRpb24gb2NoIGthbiBldmVudHVlbGx0IGbDtmxqYXMgYXYgZXR0IGJpbmRlc3RyZWNrICIKKyJvY2ggcmV2aXNpb25zaW5mb3JtYXRpb25lbi4gSTxQYWtldHR5cD4tZGVsZW4ga29tbWVyIGZyw6VuIGbDpGx0ZXQgSTxwYWNrYWdlLSIKKyJ0eXBlPiBvbSBkZXQgZmlubnMsIGFubmFycyBCPGRlYj4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1uYW1lLjE6MzEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1hPiwgQjwtLW5vLWFyY2hpdGVjdHVyZT4iCittc2dzdHIgIkI8LWE+LCBCPC0tbm8tYXJjaGl0ZWN0dXJlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6MzQKK21zZ2lkICJUaGUgZGVzdGluYXRpb24gZmlsZW5hbWUgd2lsbCBub3QgaGF2ZSB0aGUgYXJjaGl0ZWN0dXJlIGluZm9ybWF0aW9uLiIKK21zZ3N0ciAiIgorIkRlc3RpbmF0aW9uc2ZpbG5hbW5ldCBrb21tZXIgaW50ZSBhdHQgaW5uZWjDpWxsYSBpbmZvcm1hdGlvbiBvbSBhcmtpdGVrdHVyLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctbmFtZS4xOjM0CisjLCBuby13cmFwCittc2dpZCAiQjwtaz4sIEI8LS1zeW1saW5rPiIKK21zZ3N0ciAiQjwtaz4sIEI8LS1zeW1saW5rPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6MzcKK21zZ2lkICJDcmVhdGUgYSBzeW1saW5rLCBpbnN0ZWFkIG9mIG1vdmluZy4iCittc2dzdHIgIlNrYXBhIGVuIHN5bWJvbGlzayBsw6RuayBpc3TDpGxsZXQgZsO2ciBhdHQgZmx5dHRhLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctbmFtZS4xOjM3CisjLCBuby13cmFwCittc2dpZCAiQjwtbz4sIEI8LS1vdmVyd3JpdGU+IgorbXNnc3RyICJCPC1vPiwgQjwtLW92ZXJ3cml0ZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbmFtZS4xOjQxCittc2dpZCAiIgorIkV4aXN0aW5nIGZpbGVzIHdpbGwgYmUgb3ZlcndyaXR0ZW4gaWYgdGhleSBoYXZlIHRoZSBzYW1lIG5hbWUgYXMgdGhlICIKKyJkZXN0aW5hdGlvbiBmaWxlbmFtZS4iCittc2dzdHIgIiIKKyJCZWZpbnRsaWdhIGZpbGVyIGtvbW1lciBhdHQgc2tyaXZhcyDDtnZlciBvbSBkZSBoYXIgc2FtbWEgbmFtbiBzb20gIgorImRlc3RpbmF0aW9uc2ZpbG5hbW5ldC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLW5hbWUuMTo0MQorIywgbm8td3JhcAorbXNnaWQgIkI8LXM+LCBCPC0tc3ViZGlyPiBbSTxkaXI+XSIKK21zZ3N0ciAiQjwtcz4sIEI8LS1zdWJkaXI+IFtJPGthdGFsb2c+XSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6NTMKK21zZ2lkICIiCisiRmlsZXMgd2lsbCBiZSBtb3ZlZCBpbnRvIGEgc3ViZGlyZWN0b3J5LiBJZiB0aGUgZGlyZWN0b3J5IGdpdmVuIGFzIGFyZ3VtZW50ICIKKyJleGlzdHMgdGhlIGZpbGVzIHdpbGwgYmUgbW92ZWQgaW50byB0aGF0IGRpcmVjdG9yeSBvdGhlcndpc2UgdGhlIG5hbWUgb2YgdGhlICIKKyJ0YXJnZXQgZGlyZWN0b3J5IGlzIGV4dHJhY3RlZCBmcm9tIHRoZSBzZWN0aW9uIGZpZWxkIGluIHRoZSBjb250cm9sIHBhcnQgb2YgIgorInRoZSBwYWNrYWdlLiBUaGUgdGFyZ2V0IGRpcmVjdG9yeSB3aWxsIGJlIGB1bnN0YWJsZS9iaW5hcnktSTxhcmNoaXRlY3R1cmU+LyIKKyJJPHNlY3Rpb24+Jy4gSWYgdGhlIHNlY3Rpb24gaXMgbm90IGZvdW5kIGluIHRoZSBjb250cm9sLCB0aGVuIGBuby1zZWN0aW9uJyAiCisiaXMgYXNzdW1lZCwgYW5kIGluIHRoaXMgY2FzZSwgYXMgd2VsbCBhcyBmb3Igc2VjdGlvbnMgYG5vbi1mcmVlJyBhbmQgIgorImBjb250cmliJyB0aGUgdGFyZ2V0IGRpcmVjdG9yeSBpcyBgSTxzZWN0aW9uPi9iaW5hcnktSTxhcmNoaXRlY3R1cmU+Jy4gVGhlICIKKyJzZWN0aW9uIGZpZWxkIGlzbid0IHJlcXVpcmVkIHNvIGEgbG90IG9mIHBhY2thZ2VzIHdpbGwgZmluZCB0aGVpciB3YXkgdG8gdGhlICIKKyJgbm8tc2VjdGlvbicgYXJlYS4gVXNlIHRoaXMgb3B0aW9uIHdpdGggY2FyZSwgaXQncyBtZXNzeS4iCittc2dzdHIgIiIKKyJGaWxlcm5hIGtvbW1lciBhdHQgZmx5dHRhcyB0aWxsIGVuIHVuZGVya2F0YWxvZy4gT20ga2F0YWxvZ2VuIGkgYXJndW1lbnRldCAiCisiZXhpc3RlcmFyIGtvbW1lciBmaWxlcm5hIGF0dCBmbHl0dGFzIGluIGkgZGVuIGthdGFsb2dlbiwgb20gaW50ZSBrb21tZXIgIgorIm5hbW5ldCBww6UgbcOlbGthdGFsb2dlbiBhdHQgaMOkbXRhcyBmcsOlbiBzZWt0aW9uc2bDpGx0ZXQgaSBzdHlyZGVsZW4gYXYgIgorInBha2V0ZXQuIE3DpWxrYXRhbG9nZW4ga29tbWVyIHZhcmEgXCJ1bnN0YWJsZS9iaW5hcnktSTxhcmtpdGVrdXI+STxzZWt0aW9uPiIKKyJcIi4gT20gc2VrdGlvbmVuIGludGUgaGl0dGFzIGkgc3R5cmZpbGVuIGFudGFzIFwibm8tc2VjdGlvblwiLCBvY2ggaSBzw6UgIgorImZhbGwsIHNhbXQgZsO2ciBzZWt0aW9uZXJuYSBcIm5vbi1mcmVlXCIgb2NoIFwiY29udHJpYlwiLCDDpHIgbcOlbGthdGFsb2dlbiAiCisiXCJJPHNla3Rpb24+L2JpbmFyeS1JPGFya2l0ZWt0dXI+XCIuIFNla3Rpb25zZsOkbHRldCDDpHIgaW50ZSBuw7ZkdsOkbmRpZ3QsIHPDpSAiCisiZmxlcmEgcGFrZXQgaGFtbmFyIGkga2F0YWxvZ2VuIFwibm8tc2VjdGlvblwiLiBBbnbDpG5kIGRlbiBow6RyIGZsYWdnYW4gbWVkICIKKyJ0aWxsZsO2cnNpa3QsIGRlbiBrYW4gdmFyYSByw7ZyaWcuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1uYW1lLjE6NTMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1jPiwgQjwtLWNyZWF0ZS1kaXI+IgorbXNnc3RyICJCPC1jPiwgQjwtLWNyZWF0ZS1kaXI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW5hbWUuMTo1OAorbXNnaWQgIiIKKyJUaGlzIG9wdGlvbiBjYW4gdXNlZCB0b2dldGhlciB3aXRoIHRoZSAtcyBvcHRpb24uIElmIGEgdGFyZ2V0IGRpcmVjdG9yeSAiCisiaXNuJ3QgZm91bmQgaXQgd2lsbCBiZSBjcmVhdGVkIGF1dG9tYXRpY2FsbHkuICBCPFVzZSB0aGlzIG9wdGlvbiB3aXRoIGNhcmUuPiIKK21zZ3N0ciAiIgorIkZsYWdnYW4ga2FuIGFudsOkbmRhcyB0aWxsc2FtbWFucyBtZWQgLXMtZmxhZ2dhbi4gT20gZW4gbcOlbGthdGFsb2cgaW50ZSAiCisiZXhpc3RlcmFyIGtvbW1lciBkZW4gYXR0IHNrYXBhcyBhdXRvbWF0aXNrdC4gQjxBbnbDpG5kIGRlbm5hIGZsYWdnYSAiCisiZsO2cnNpa3RpZ3QuPiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctbmFtZS4xOjYxCisjLCBuby13cmFwCittc2dpZCAiQjwtdj4sIEI8LS12ZXJzaW9uPiIKK21zZ3N0ciAiQjwtdj4sIEI8LS12ZXJzaW9uPiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctbmFtZS4xOjY2CisjLCBuby13cmFwCittc2dpZCAiQjxkcGtnLW5hbWUgYmFyLWZvby5kZWI+IgorbXNnc3RyICJCPGRwa2ctbmFtZSBiYXItZm9vLmRlYj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbmFtZS4xOjcxCittc2dpZCAiIgorIlRoZSBmaWxlIGBiYXItZm9vLmRlYicgd2lsbCBiZSByZW5hbWVkIHRvIGJhci1mb29fMS4wLTJfaTM4Ni5kZWIgb3IgIgorInNvbWV0aGluZyBzaW1pbGFyIChkZXBlbmRpbmcgb24gd2hhdGV2ZXIgaW5mb3JtYXRpb24gaXMgaW4gdGhlIGNvbnRyb2wgcGFydCAiCisib2YgYGJhci1mb28uZGViJykuIgorbXNnc3RyICIiCisiRmlsZW4gXCJiYXItZm9vLmRlYlwiIGtvbW1lciBhdHQgZsOlIGRldCBueWEgbmFtbmV0IGJhci1mb29fMS4wLTJfaTM4Ni5kZWIgIgorImVsbGVyIG7DpWdvdCBsaWtuYW5kZSAoYmVyb2VuZGUgcMOlIHZpbGtlbiBpbmZvcm1hdGlvbiBzb20gaGl0dGFzIGkgc3R5cmRlbGVuICIKKyJhdiBcImJhci1mb28uZGViXCIpLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctbmFtZS4xOjcxCisjLCBuby13cmFwCittc2dpZCAiQjxmaW5kIC9yb290L2RlYmlhbi8gLW5hbWUgXFwoYXEqLmRlYlxcKGFxIHwgeGFyZ3MgLW4gMSBkcGtnLW5hbWUgLWE+IgorbXNnc3RyICJCPGZpbmQgL3Jvb3QvZGViaWFuLyAtbmFtZSBcXChhcSouZGViXFwoYXEgfCB4YXJncyAtbiAxIGRwa2ctbmFtZSAtYT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbmFtZS4xOjc2Cittc2dpZCAiIgorIkFsbCBmaWxlcyB3aXRoIHRoZSBleHRlbnNpb24gYGRlYicgaW4gdGhlIGRpcmVjdG9yeSAvcm9vdC9kZWJpYW4gYW5kIGl0cyAiCisic3ViZGlyZWN0b3J5J3Mgd2lsbCBiZSByZW5hbWVkIGJ5IGRwa2ctbmFtZSBpZiByZXF1aXJlZCBpbnRvIG5hbWVzIHdpdGggbm8gIgorImFyY2hpdGVjdHVyZSBpbmZvcm1hdGlvbi4iCittc2dzdHIgIiIKKyJBbGxhIGZpbGVyIG1lZCDDpG5kZWxzZW4gXCJkZWJcIiBpIGthdGFsb2dlbiAvcm9vdC9kZWJpYW4gb2NoIGRlc3MgIgorInVuZGVya2F0YWxvZ2VyIGtvbW1lciBhdHQgZsOlIHNpbmEgbmFtbiBlcnNhdHRhIG1lZCBkcGtnLW5hbWUsIG9tIHPDpSBiZWjDtnZzLCAiCisidGlsbCBuYW1uIHV0YW4gYXJraXRla3R1cmluZm9ybWF0aW9uLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctbmFtZS4xOjc2CisjLCBuby13cmFwCittc2dpZCAiQjxmaW5kIC1uYW1lIFxcKGFxKi5kZWJcXChhcSB8IHhhcmdzIC1uIDEgZHBrZy1uYW1lIC1hIC1vIC1zIC1jPiIKK21zZ3N0ciAiQjxmaW5kIC1uYW1lIFxcKGFxKi5kZWJcXChhcSB8IHhhcmdzIC1uIDEgZHBrZy1uYW1lIC1hIC1vIC1zIC1jPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1uYW1lLjE6ODIKK21zZ2lkICIiCisiQjxEb24ndCBkbyB0aGlzLj4gWW91ciBhcmNoaXZlIHdpbGwgYmUgbWVzc2VkIHVwIGNvbXBsZXRlbHkgYmVjYXVzZSBhIGxvdCBvZiAiCisicGFja2FnZXMgZG9uJ3QgY29tZSB3aXRoIHNlY3Rpb24gaW5mb3JtYXRpb24uICBCPERvbid0IGRvIHRoaXMuPiIKK21zZ3N0ciAiIgorIkI8R8O2ciBpbnRlIHPDpSBow6RyLj4gRGl0dCBhcmtpdiBrb21tZXIgYXR0IHLDtnJhcyB0aWxsIGhlbHQgb2NoIGjDpWxsZXQgIgorImVmdGVyc29tIG3DpW5nYSBwYWtldCBpbnRlIGhhciBuw6Vnb24gc2VrdGlvbnNpbmZvcm1hdGlvbi4gQjxHw7ZyIGludGUgc8OlIGjDpHIuPiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctbmFtZS4xOjgyCisjLCBuby13cmFwCittc2dpZCAiQjxkcGtnIC0tYnVpbGQgZGViaWFuLXRtcCAmJiBkcGtnLW5hbWUgLW8gLXMgLi4gZGViaWFuLXRtcC5kZWI+IgorbXNnc3RyICJCPGRwa2cgLS1idWlsZCBkZWJpYW4tdG1wICYmIGRwa2ctbmFtZSAtbyAtcyAuLiBkZWJpYW4tdG1wLmRlYj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbmFtZS4xOjg1Cittc2dpZCAiVGhpcyBjYW4gYmUgdXNlZCB3aGVuIGJ1aWxkaW5nIG5ldyBwYWNrYWdlcy4iCittc2dzdHIgIkthbiBhbnbDpG5kYXMgbsOkciBueWEgcGFrZXQgYnlnZ3MuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW5hbWUuMTo5NQorbXNnaWQgIiIKKyJTb21lIHBhY2thZ2VzIGRvbid0IGZvbGxvdyB0aGUgbmFtZSBzdHJ1Y3R1cmUgIgorIkk8cGFja2FnZT5CPF8+STx2ZXJzaW9uPkI8Xz5JPGFyY2hpdGVjdHVyZT5CPC5kZWI+LiAgUGFja2FnZXMgcmVuYW1lZCBieSAiCisiZHBrZy1uYW1lIHdpbGwgZm9sbG93IHRoaXMgc3RydWN0dXJlLiBHZW5lcmFsbHkgdGhpcyB3aWxsIGhhdmUgbm8gaW1wYWN0IG9uICIKKyJob3cgcGFja2FnZXMgYXJlIGluc3RhbGxlZCBieSBCPGRzZWxlY3Q+KDEpL0I8ZHBrZz4oMSksIGJ1dCBvdGhlciAiCisiaW5zdGFsbGF0aW9uIHRvb2xzIG1pZ2h0IGRlcGVuZCBvbiB0aGlzIG5hbWluZyBzdHJ1Y3R1cmUuIgorbXNnc3RyICIiCisiVmlzc2EgcGFrZXQgZsO2bGplciBpbnRlIG5hbW5zdHJ1a3R1cmVuICIKKyJJPHBha2V0PkI8Xz5JPHZlcnNpb24+QjxfPkk8YXJraXRla3R1cj5CPC5kZWI+LiBQYWtldCB2YXJzIG5hbW4gw6RuZHJhdHMgbWVkICIKKyJkcGtnLW5hbWUga29tbWVyIGbDtmxqYSBkZW5uYSBzdHJ1a3R1ci4gTm9ybWFsdCBww6V2ZXJrYXIgZGV0dGEgaW50ZSBodXIgIgorIkI8ZHNlbGVjdD4oMSkvQjxkcGtnPigxKSBpbnN0YWxsZXJhciBwYWtldCwgbWVuIHZpc3NhIGFuZHJhICIKKyJpbnN0YWxsYXRpb25zdmVya3R5ZyBrYW4gdmFyYSBiZXJvZW5kZSBhdiBkZW5uYSBuYW1uZ2l2bmluZ3NzdHJ1a3R1ci4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctbmFtZS4xOjEwMworbXNnaWQgIiIKKyJCPGRlYj4oNSksIEI8ZGViLWNvbnRyb2w+KDUpLCBCPGRwa2c+KDEpLCBCPGRwa2ctZGViPigxKSwgQjxmaW5kPigxKSwgIgorIkI8eGFyZ3M+KDEpLiIKK21zZ3N0ciAiIgorIkI8ZGViPig1KSwgQjxkZWItY29udHJvbD4oNSksIEI8ZHBrZz4oMSksIEI8ZHBrZy1kZWI+KDEpLCBCPGZpbmQ+KDEpLCAiCisiQjx4YXJncz4oMSkuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLW5hbWUuMToxMDYKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMTk5NSwxOTk2IEVyaWNrIEJyYW5kZXJob3JzdCIKK21zZ3N0ciAiVXBwaG92c3LDpHR0c3NreWRkYXQgwqkgMTk5NSwgMTk5NiBFcmljayBCcmFuZGVyaG9yc3QiCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MQorIywgbm8td3JhcAorbXNnaWQgImRwa2ctcGFyc2VjaGFuZ2Vsb2ciCittc2dzdHIgImRwa2ctcGFyc2VjaGFuZ2Vsb2ciCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo0Cittc2dpZCAiZHBrZy1wYXJzZWNoYW5nZWxvZyAtIHBhcnNlIERlYmlhbiBjaGFuZ2Vsb2cgZmlsZXMiCittc2dzdHIgImRwa2ctcGFyc2VjaGFuZ2Vsb2cgLSB0b2xrYSBEZWJpYW5zIMOkbmRyaW5nc2xvZ2dhciIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjgKK21zZ2lkICJCPGRwa2ctcGFyc2VjaGFuZ2Vsb2c+IFtJPG9wdGlvbj4uLi5dIgorbXNnc3RyICJCPGRwa2ctcGFyc2VjaGFuZ2Vsb2c+IFtJPGZsYWdnYT4uLi5dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTQKK21zZ2lkICIiCisiQjxkcGtnLXBhcnNlY2hhbmdlbG9nPiByZWFkcyBhbmQgcGFyc2VzIHRoZSBjaGFuZ2Vsb2cgb2YgYW4gdW5wYWNrZWQgRGViaWFuICIKKyJzb3VyY2UgdHJlZSBhbmQgb3V0cHV0cyB0aGUgaW5mb3JtYXRpb24gaW4gaXQgdG8gc3RhbmRhcmQgb3V0cHV0IGluIGEgIgorIm1hY2hpbmUtcmVhZGFibGUgZm9ybS4iCittc2dzdHIgIiIKKyJCPGRwa2ctcGFyc2VjaGFuZ2Vsb2c+IGzDpHNlciBvY2ggdG9sa2FyIMOkbmRyaW5nc2xvZ2dlbiBpIGV0dCB1cHBhY2thdCAiCisiRGViaWFua8OkbGxrb2RzdHLDpGQgb2NoIHZpc2FyIGluZm9ybWF0aW9uZW4gaSBkZW4gcMOlIHN0YW5kYXJkIHV0IGkgZW4gIgorIm1hc2tpbmzDpHNiYXIgZm9ybS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MjYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1MPkk8bGliZGlyPiIKK21zZ3N0ciAiQjwtTD5JPGJpYmxpb3Rla3NrYXRhbG9nPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjMzCittc2dpZCAiIgorIlNwZWNpZnkgYW4gYWRkaXRpb25hbCBkaXJlY3RvcnkgdG8gc2VhcmNoIGZvciBwYXJzZXIgc2NyaXB0cy4gIFRoaXMgIgorImRpcmVjdG9yeSBpcyBzZWFyY2hlZCBiZWZvcmUgdGhlIGRlZmF1bHQgZGlyZWN0b3JpZXMgd2hpY2ggYXJlIGN1cnJlbnRseSBCPC8iCisidXNyL2xvY2FsL2xpYi9kcGtnL3BhcnNlY2hhbmdlbG9nPiBhbmQgQjwvdXNyL2xpYi9kcGtnL3BhcnNlY2hhbmdlbG9nPi4iCittc2dzdHIgIiIKKyJBbmdlIGVuIHl0dGVybGlnYXJlIGthdGFsb2cgYXR0IHPDtmthIGkgZWZ0ZXIgcGFyc2Vyc2tyaXB0LiBLYXRhbG9nZW4gc8O2a3MgIgorImdlbm9tIGlubmFuIHN0YW5kYXJka2F0YWxvZ2VybmEsIHZpbGthIGbDtnIgbsOkcnZhcmFuZGUgw6RyIEI8L3Vzci9sb2NhbC9saWIvIgorImRwa2cvcGFyc2VjaGFuZ2Vsb2c+IG9jaCBCPC91c3IvbGliL2Rwa2cvcGFyc2VjaGFuZ2Vsb2c+LiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTozOQorIywgbm8td3JhcAorbXNnaWQgIlBhcnNlciBPcHRpb25zIgorbXNnc3RyICJQYXJzZXJmbGFnZ29yIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6NDQKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBvcHRpb25zIGNhbiBiZSB1c2VkIHRvIGluZmx1ZW5jZSB0aGUgb3V0cHV0IG9mIHRoZSBjaGFuZ2Vsb2cgIgorInBhcnNlciwgZS5nLiB0aGUgcmFuZ2Ugb2YgZW50cmllcyBvciB0aGUgZm9ybWF0IG9mIHRoZSBvdXRwdXQuIFRoZXkgbmVlZCB0byAiCisiYmUgc3VwcG9ydGVkIGJ5IHRoZSBwYXJzZXIgc2NyaXB0IGluIHF1ZXN0aW9uLiBTZWUgYWxzbyBCPENBVkVBVFM+LiIKK21zZ3N0ciAiIgorIkbDtmxqYW5kZSBmbGFnZ29yIGthbiBhbnbDpG5kYXMgZsO2ciBhdHQgc3R5cmEgdXRkYXRhIGZyw6VuIMOkbmRyaW5nc2xvZ2dwYXJzZXJuLCAiCisidC5leC4gb21mw6VuZ2V0IGF2IHBvc3RlciBlbGxlciBmb3JtYXRldCBww6UgdXRkYXRhLiBEZSBtw6VzdGUgc3TDtmRhcyBhdiAiCisicGFyc2Vyc2tyaXB0ZXQgaSBmcsOlZ2EuIFNlIMOkdmVuIEI8VkFSTklOR0FSPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6NDQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tZm9ybWF0Pkk8IG91dHB1dGZvcm1hdD4iCittc2dzdHIgIkI8LS1mb3JtYXQ+IEk8dXRkYXRhZm9ybWF0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjUzCittc2dpZCAiIgorIlNldCB0aGUgb3V0cHV0IGZvcm1hdC4gQ3VycmVudGx5IHN1cHBvcnRlZCB2YWx1ZXMgYXJlIEk8ZHBrZz4gYW5kICIKKyJJPHJmYzgyMj4uICBJPGRwa2c+IGlzIHRoZSBjbGFzc2ljIG91dHB1dCBmb3JtYXQgKGZyb20gYmVmb3JlIHRoaXMgb3B0aW9uICIKKyJleGlzdGVkKSBhbmQgdGhlIGRlZmF1bHQuIEl0IGNvbnNpc3RzIG9mIG9uZSBwYXJhZ3JhcGggaW4gRGViaWFuIGNvbnRyb2wgIgorImZvcm1hdCAoc2VlIEI8ZGViLWNvbnRyb2w+KDUpKS4gSWYgbW9yZSB0aGFuIG9uZSBlbnRyeSBpcyByZXF1ZXN0ZWQsIHRoZW4gIgorIm1vc3QgZmllbGRzIGFyZSB0YWtlbiBmcm9tIHRoZSBsYXRlc3QgZW50cnksIGV4Y2VwdCBvdGhlcndpc2Ugc3RhdGVkOiIKK21zZ3N0ciAiIgorIlbDpGxqIHV0ZGF0YWZvcm1hdC4gU3TDtmRkYSBmb3JtYXQgw6RyIGbDtnIgbsOkcnZhcmFuZGUgSTxkcGtnPiBvY2ggSTxyZmM4MjI+LiAiCisiSTxkcGtnPiDDpHIgZGV0IGtsYXNzaXNrYSB1dGRhdGFmb3JtYXRldCAoZnLDpW4gaW5uYW4gZGVubmEgZmxhZ2dhIHZhciAiCisidGlsbGfDpG5nbGlnKSBvY2ggZsO2cnZhbGV0LiBEZXQgYmVzdMOlciBhdiBldHQgc3R5Y2tlIGkgRGViaWFucyBjb250cm9sLWZvcm1hdCAiCisiKHNlIEI8ZGViLWNvbnRyb2w+KDUpKS4gT20gbWVyIMOkbiBlbiBwb3N0IMO2bnNrYXMgdGFzIGRlIGZsZXN0YSBmw6RsdCBmcsOlbiBkZW4gIgorInNlbmFzdGUgcG9zdGVuLCBmw7ZydXRvbSBvbSBhbm5hdCBhbmdlczoiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6NTQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPFNvdXJjZTo+STwgcGtnLW5hbWU+IgorbXNnc3RyICJCPFNvdXJjZTo+IEk8cGFrZXRuYW1uPiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo1NgorIywgbm8td3JhcAorbXNnaWQgIkI8VmVyc2lvbjo+STwgdmVyc2lvbj4iCittc2dzdHIgIkI8VmVyc2lvbjo+IEk8dmVyc2lvbnM+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjU4CisjLCBuby13cmFwCittc2dpZCAiQjxEaXN0cmlidXRpb246Pkk8IHRhcmdldC1kaXN0cmlidXRpb24+IgorbXNnc3RyICJCPERpc3RyaWJ1dGlvbjo+IEk8bcOlbHV0Z8OldmE+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjYwCisjLCBuby13cmFwCittc2dpZCAiQjxVcmdlbmN5Oj5JPCB1cmdlbmN5PiIKK21zZ3N0ciAiQjxVcmdlbmN5Oj4gSTxicsOlZHNrYT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo2MworbXNnaWQgIlRoZSBoaWdoZXN0IHVyZ2VuY3kgb2YgYWxsIGluY2x1ZGVkIGVudHJpZXMgaXMgdXNlZC4iCittc2dzdHIgIkjDtmdzdGEgYnLDpWRza2FuIGF2IGFsbGEgZGUgaW5rbHVkZXJhZGUgcG9zdGVybmEgYW52w6RuZHMuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjYzCisjLCBuby13cmFwCittc2dpZCAiQjxNYWludGFpbmVyOj5JPCBhdXRob3I+IgorbXNnc3RyICJCPE1haW50YWluZXI6PiBJPGbDtnJmYXR0YXJlPiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo2NQorIywgbm8td3JhcAorbXNnaWQgIkI8RGF0ZTo+STwgZGF0ZT4iCittc2dzdHIgIkI8RGF0ZTo+IEk8ZGF0dW0+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjY3CisjLCBuby13cmFwCittc2dpZCAiQjxDbG9zZXM6Pkk8IGJ1Zy1udW1iZXI+IgorbXNnc3RyICJCPENsb3Nlczo+IEk8bnVtbWVyLXDDpS1mZWxyYXBwb3J0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjcwCittc2dpZCAiVGhlIENsb3NlcyBmaWVsZHMgb2YgYWxsIGluY2x1ZGVkIGVudHJpZXMgYXJlIG1lcmdlZC4iCittc2dzdHIgIkNsb3Nlcy1mw6RsdGV0IGkgYWxsYSBpbmtsdWRlcmFkZSBwb3N0ZXIgc2zDpXMgc2FtbWFuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo3MAorIywgbm8td3JhcAorbXNnaWQgIkI8Q2hhbmdlczo+STwgY2hhbmdlbG9nLWVudHJpZXM+IgorbXNnc3RyICJCPENoYW5nZXM6PiBJPHBvc3RlcmZyw6VuLcOkbmRyaW5nc2xvZ2dlbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo3NworbXNnaWQgIiIKKyJUaGUgdGV4dCBvZiBhbGwgY2hhbmdlbG9nIGVudHJpZXMgaXMgY29uY2F0ZW5hdGVkLiBUbyBtYWtlIHRoaXMgZmllbGQgYSAiCisidmFsaWQgRGViaWFuIGNvbnRyb2wgZm9ybWF0IG11bHRpbGluZSBmaWVsZCBlbXB0eSBsaW5lcyBhcmUgcmVwbGFjZWQgd2l0aCBhICIKKyJzaW5nbGUgZnVsbCBzdG9wIGFuZCBhbGwgbGluZXMgaXMgaW50ZW5kZWQgYnkgb25lIHNwYWNlIGNoYXJhY3Rlci4gVGhlIGV4YWN0ICIKKyJjb250ZW50IGRlcGVuZHMgb24gdGhlIGNoYW5nZWxvZyBmb3JtYXQuIgorbXNnc3RyICIiCisiVGV4dGVuIGkgYWxsYSDDpG5kcmluZ3Nsb2dncG9zdGVyIHNsw6VzIHNhbW1hbi4gRsO2ciBhdHQgZ8O2cmEgZsOkbHRldCB0aWxsICIKKyJnaWx0aWd0IGZsZXJyYWRzZsOkbHQgaSBEZWJpYW4tY29udHJvbC1mb3JtYXQgZXJzw6R0dHMgdG9tbWEgcmFkZXIgbWVkIGVuICIKKyJlbnNhbSBwdW5rdCBvY2ggYWxsYSByYWRlciBmw6VyIGV0dCB0ZWNrZW5zIGluZHJhZy4gRXhha3QgaW5uZWjDpWxsIGJlcm9yIHDDpSAiCisiZm9ybWF0ZXQgcMOlIMOkbmRyaW5nc2xvZ2dlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo4MAorbXNnaWQgIlRoZXJlIG1pZ2h0IGJlIGFkZGl0aW9uYWwgdXNlci1kZWZpbmVkIGZpZWxkcyBwcmVzZW50LiIKK21zZ3N0ciAiWXR0ZXJsaWdhcmUgYW52w6RuZGFyZGVmaW5pZXJhZGUgZsOkbHQga2FuIGZpbm5hcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo4NAorbXNnaWQgIiIKKyJUaGUgQjxyZmM4MjI+IGZvcm1hdCB1c2VzIHRoZSBzYW1lIGZpZWxkcyBidXQgb3V0cHV0cyBhIHNlcGFyYXRlIHBhcmFncmFwaCAiCisiZm9yIGVhY2ggY2hhbmdlbG9nIGVudHJ5IHNvIHRoYXQgYWxsIG1ldGFkYXRhIGZvciBlYWNoIGVudHJ5IGlzIHByZXNlcnZlZC4iCittc2dzdHIgIiIKKyJCPHJmYzgyMj4tZm9ybWF0ZXQgYW52w6RuZGVyIHNhbW1hIGbDpGx0LCBtZW4gZ2VyIGV0dCBzZXBhcmF0IHN0eWNrZSBmw7ZyIHZhcmplICIKKyLDpG5kcmluZ3Nsb2dnc3Bvc3Qgc8OlIGF0dCBhbGwgbWV0YWRhdGEgZsO2ciB2YXJqZSBwb3N0IGJlaMOlbGxzLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo4NAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1zaW5jZT4gSTx2ZXJzaW9uPiwgQjwtcz5JPHZlcnNpb24+LEI8IC12Pkk8dmVyc2lvbj4iCittc2dzdHIgIkI8LS1zaW5jZT4gSTx2ZXJzaW9uPiwgQjwtcz5JPHZlcnNpb24+LEI8IC12Pkk8dmVyc2lvbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo4NworbXNnaWQgImluY2x1ZGUgYWxsIGNoYW5nZXMgbGF0ZXIgdGhhbiBJPHZlcnNpb24+LiIKK21zZ3N0ciAidGEgbWVkIGFsbGEgcG9zdGVyIGVmdGVyIEk8dmVyc2lvbj4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjg3CisjLCBuby13cmFwCittc2dpZCAiQjwtLXVudGlsPiBJPHZlcnNpb24+LCBCPC11Pkk8dmVyc2lvbj4iCittc2dzdHIgIkI8LS11bnRpbD4gSTx2ZXJzaW9uPiwgQjwtdT5JPHZlcnNpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6OTAKK21zZ2lkICJpbmNsdWRlIGFsbCBjaGFuZ2VzIGVhcmxpZXIgdGhhbiBJPHZlcnNpb24+LiIKK21zZ3N0ciAidGEgbWVkIGFsbGEgw6RuZHJpbmdhciBmw7ZyZSBJPHZlcnNpb24+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo5MAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1mcm9tPiBJPHZlcnNpb24+LCBCPC1mPkk8dmVyc2lvbj4iCittc2dzdHIgIkI8LS1mcm9tPiBJPHZlcnNpb24+LCBCPC1mPkk8dmVyc2lvbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMTo5MworbXNnaWQgImluY2x1ZGUgYWxsIGNoYW5nZXMgZXF1YWwgb3IgbGF0ZXIgdGhhbiBJPHZlcnNpb24+LiIKK21zZ3N0ciAidGEgbWVkIGFsbGEgw6RuZHJpbmdhciBmcsOlbiBvY2ggbWVkIEk8dmVyc2lvbj4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjkzCisjLCBuby13cmFwCittc2dpZCAiQjwtLXRvPiBJPHZlcnNpb24+LCBCPC10Pkk8dmVyc2lvbj4iCittc2dzdHIgIkI8LS10bz4gSTx2ZXJzaW9uPiwgQjwtdD5JPHZlcnNpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6OTYKK21zZ2lkICJpbmNsdWRlIGFsbCBjaGFuZ2VzIHVwIHRvIG9yIGVxdWFsIHRoYW4gSTx2ZXJzaW9uPi4iCittc2dzdHIgInRhIG1lZCBhbGxhIMOkbmRyaW5nYXIgdGlsbCBvY2ggbWVkIEk8dmVyc2lvbj4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjk2CisjLCBuby13cmFwCittc2dpZCAiQjwtLWNvdW50PiBJPG51bWJlcj4sIEI8LWM+STxudW1iZXI+LCBCPC1uPkk8bnVtYmVyPiIKK21zZ3N0ciAiQjwtLWNvdW50PiBJPGFudGFsPiwgQjwtYz5JPGFudGFsPiwgQjwtbj5JPGFudGFsPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjEwMAorbXNnaWQgIiIKKyJpbmNsdWRlIEk8bnVtYmVyPiBlbnRyaWVzIGZyb20gdGhlIHRvcCAob3IgdGhlIHRhaWwgaWYgSTxudW1iZXI+IGlzIGxvd2VyICIKKyJ0aGFuIDApLiIKK21zZ3N0ciAiIgorInRhIG1lZCBJPGFudGFsPiDDpG5kcmluZ2FyIGZyw6VuIGLDtnJqYW4gKGVsbGVyIHNsdXRldCBvbSBJPGFudGFsPiDDpHIgbMOkZ3JlIMOkbiAiCisiMCkuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjEwMAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1vZmZzZXQ+IEk8bnVtYmVyPiwgQjwtbz5JPG51bWJlcj4iCittc2dzdHIgIkI8LS1vZmZzZXQ+IEk8YW50YWw+LCBCPC1vPkk8YW50YWw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTA0Cittc2dpZCAiIgorImNoYW5nZSB0aGUgc3RhcnRpbmcgcG9pbnQgZm9yIC0tY291bnQsIGNvdW50ZWQgZnJvbSB0aGUgdG9wIChvciB0aGUgdGFpbCBpZiAiCisiSTxudW1iZXI+IGlzIGxvd2VyIHRoYW4gMCkuIgorbXNnc3RyICIiCisiw6RuZHJhIHN0YXJ0cHVua3QgZsO2ciAtLWNvdW50LCByw6RrbmF0IGZyw6VuIGLDtnJqYW4gKGVsbGVyIHNsdXRldCBvbSBJPGFudGFsPiAiCisiw6RyIGzDpGdyZSDDpG4gMCkuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjEwNCB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjY4CisjLCBuby13cmFwCittc2dpZCAiQjwtLWFsbD4iCittc2dzdHIgIkI8LS1hbGw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXBhcnNlY2hhbmdlbG9nLjE6MTA4Cittc2dpZCAiIgorImluY2x1ZGUgYWxsIGNoYW5nZXMuIE5vdGU6IG90aGVyIG9wdGlvbnMgaGF2ZSBubyBlZmZlY3Qgd2hlbiB0aGlzIGlzIGluIHVzZS4iCittc2dzdHIgIiIKKyJ0YSBtZWQgYWxsYSDDpG5kcmluZ2FyLiBPYnNlcnZlcmE6IMO2dnJpZ2EgZmxhZ2dvciBoYXIgaW5nZW4gZWZmZWt0IG7DpHIgZGVubmEgIgorImFudsOkbmRzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjExNAorbXNnaWQgIiIKKyJBbGwgQjxQYXJzZXIgT3B0aW9ucz4gZXhjZXB0IGZvciAtdiBhcmUgb25seSBzdXBwb3J0ZWQgaW4gQjxkcGtnPiwgdmVyc2lvbiAiCisiMS4xNC4xNiBhbmQgbGF0ZXIuIFRoaXJkIHBhcnR5IHBhcnNlcnMgZm9yIGNoYW5nZWxvZyBmb3JtYXRzIG90aGVyIHRoYW4gIgorIkk8ZGViaWFuPiBtaWdodCBub3Qgc3VwcG9ydCBhbGwgb3B0aW9ucy4iCittc2dzdHIgIiIKKyJEZSBvbGlrYSBCPHBhcnNlcmZsYWdnb3JuYT4sIGJvcnRzZXR0IC12LCBzdMO2ZHMgZW5iYXJ0IGkgQjxkcGtnPiB2ZXJzaW9uICIKKyIxLjE0LjE2IG9jaCBzZW5hcmUuIFRyZWRqZXBhcnRzcGFyc3JhciBmw7ZyIGFuZHJhIMOkbmRyaW5nc2xvZ2dmb3JtYXQgw6RuICIKKyJJPGRlYmlhbj4ga2Fuc2tlIGludGUgc3TDtmRlciBhbGxhIGZsYWdnb3IuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjExNgorIywgbm8td3JhcAorbXNnaWQgIkI8ZGViaWFuL2NoYW5nZWxvZz4iCittc2dzdHIgIkI8ZGViaWFuL2NoYW5nZWxvZz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcGFyc2VjaGFuZ2Vsb2cuMToxMjIKK21zZ2lkICIiCisiVGhlIGNoYW5nZWxvZyBmaWxlLCB1c2VkIHRvIG9idGFpbiB2ZXJzaW9uLWRlcGVuZGVudCBpbmZvcm1hdGlvbiBhYm91dCB0aGUgIgorInNvdXJjZSBwYWNrYWdlLCBzdWNoIGFzIHRoZSB1cmdlbmN5IGFuZCBkaXN0cmlidXRpb24gb2YgYW4gdXBsb2FkLCB0aGUgIgorImNoYW5nZXMgbWFkZSBzaW5jZSBhIHBhcnRpY3VsYXIgcmVsZWFzZSwgYW5kIHRoZSBzb3VyY2UgdmVyc2lvbiBudW1iZXIgIgorIml0c2VsZi4iCittc2dzdHIgIiIKKyLDhG5kcmluZ3Nsb2dnc2ZpbGVuLCBhbnbDpG5kcyBmw7ZyIGF0dCBow6RtdGEgdmVyc2lvbnNiZXJvZW5kZSBpbmZvcm1hdGlvbiBvbSAiCisia8OkbGxrb2RzcGFrZXRldCwgdGlsbCBleGVtcGVsIGJyw6Vkc2thIG9jaCB1dGfDpXZhIGbDtnIgZW4gaW5zw6RuZG5pbmcsICIKKyLDpG5kcmluZ2FybmEgc29tIHV0ZsO2cnRzIHNlZGFuIGVuIHNwZWNpZmlrIHZlcnNpb24gb2NoIHNqw6RsdmEgdmVyc2lvbnNudW1yZXQgIgorInDDpSBrw6RsbGtvZGVuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1wYXJzZWNoYW5nZWxvZy4xOjEyOQorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDA3LCAyMDA4IEZyYW5rIExpY2h0ZW5oZWxkIgorbXNnc3RyICJVcHBob3ZzcsOkdHRzc2t5ZGRhdCDCqSAyMDA3LCAyMDA4IEZyYW5rIExpY2h0ZW5oZWxkIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1xdWVyeS4xOjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLXF1ZXJ5IgorbXNnc3RyICJkcGtnLXF1ZXJ5IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6NAorbXNnaWQgImRwa2ctcXVlcnkgLSBhIHRvb2wgdG8gcXVlcnkgdGhlIGRwa2cgZGF0YWJhc2UiCittc2dzdHIgImRwa2ctcXVlcnkgLSBldHQgdmVya3R5ZyBmw7ZyIGF0dCBmcsOlZ2EgZHBrZy1kYXRhYmFzZW4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMTo4Cittc2dpZCAiQjxkcGtnLXF1ZXJ5PiBbSTxvcHRpb24+Li4uXSBJPGNvbW1hbmQ+IgorbXNnc3RyICJCPGRwa2ctcXVlcnk+IFtJPGZsYWdnb3I+Li4uXSBJPMOldGfDpHJkPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjEyCittc2dpZCAiIgorIkI8ZHBrZy1xdWVyeT4gaXMgYSB0b29sIHRvIHNob3cgaW5mb3JtYXRpb24gYWJvdXQgcGFja2FnZXMgbGlzdGVkIGluIHRoZSAiCisiQjxkcGtnPiBkYXRhYmFzZS4iCittc2dzdHIgIiIKKyJCPGRwa2ctcXVlcnk+IMOkciBldHQgdmVya3R5ZyBmw7ZyIGF0dCB2aXNhIGluZm9ybWF0aW9uIG9tIHBha2V0IGkgQjxkcGtnPi0iCisiZGF0YWJhc2VuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcXVlcnkuMToxNAorIywgbm8td3JhcAorbXNnaWQgIkI8LWw+LCBCPC0tbGlzdD4gW0k8cGFja2FnZS1uYW1lLXBhdHRlcm4+Li4uXSIKK21zZ3N0ciAiQjwtbD4sIEI8LS1saXN0PiBbSTxwYWtldG5hbW5zbcO2bnN0ZXI+IC4uLl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMToyNAorbXNnaWQgIiIKKyJMaXN0IHBhY2thZ2VzIG1hdGNoaW5nIGdpdmVuIHBhdHRlcm4uIElmIG5vIEk8cGFja2FnZS1uYW1lLXBhdHRlcm4+IGlzICIKKyJnaXZlbiwgbGlzdCBhbGwgcGFja2FnZXMgaW4gSTwvdmFyL2xpYi9kcGtnL3N0YXR1cz4sIGV4Y2x1ZGluZyB0aGUgb25lcyAiCisibWFya2VkIGFzIG5vdC1pbnN0YWxsZWQgKGkuZS4gdGhvc2Ugd2hpY2ggaGF2ZSBiZWVuIHByZXZpb3VzbHkgcHVyZ2VkKS4gIgorIk5vcm1hbCBzaGVsbCB3aWxkY2hhcnMgYXJlIGFsbG93ZWQgaW4gSTxwYWNrYWdlLW5hbWUtcGF0dGVybj4uIFBsZWFzZSBub3RlICIKKyJ5b3Ugd2lsbCBwcm9iYWJseSBoYXZlIHRvIHF1b3RlIEk8cGFja2FnZS1uYW1lLXBhdHRlcm4+IHRvIHByZXZlbnQgdGhlIHNoZWxsICIKKyJmcm9tIHBlcmZvcm1pbmcgZmlsZW5hbWUgZXhwYW5zaW9uLiBGb3IgZXhhbXBsZSB0aGlzIHdpbGwgbGlzdCBhbGwgcGFja2FnZSAiCisibmFtZXMgc3RhcnRpbmcgd2l0aCBgYGxpYmM2Jyc6IgorbXNnc3RyICIiCisiTGlzdGEgcGFrZXQgc29tIG1hdGNoYXIgZGV0IGdpdm5hIG3Dtm5zdHJldC4gT20gaW5nZXQgSTxwYWtldG5hbW5zbcO2bnN0ZXI+ICIKKyJhbmdlcyBsaXN0YXMgYWxsYSBwYWtldCBpIEk8L3Zhci9saWIvZHBrZy9zdGF0dXM+LCBmw7ZydXRvbSBkZSBwYWtldCBzb20gIgorIm1hcmtlcmF0cyBzb20gZWogaW5zdGFsbGVyYWRlIChkdnMuIGRlIHNvbSB0aWRpZ2FyZSBoYXIgaGVsdCB0YWdpdHMgYm9ydCkuICIKKyJTa2FsZXRzIG5vcm1hbGEgam9rZXJ0ZWNrZW4gdGlsbMOldHMgaSBJPHBha2V0bmFtbnNtw7Zuc3Rlcj4uIE9ic2VydmVyYSBhdHQgZHUgIgorInNhbm5vbGlrdCBtw6VzdGUgc2tyaXZhIEk8cGFrZXRuYW1uc23Dtm5zdGVyPiBpbm9tIGNpdGF0aW9uc3RlY2tlbiBmw7ZyIGF0dCAiCisiZsO2cmhpbmRyYSBhdHQgc2thbGV0IGV4cGFuZGVyYXIgZmlsbmFtbmV0LiBUaWxsIGV4ZW1wZWwga29tbWVyIGbDtmxqYW5kZSAiCisibGlzdGEgYWxsYSBwYWtldCB2YXJzIG5hbW4gYsO2cmphciBww6UgXCJsaWJjNlwiOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjI3CisjLCBuby13cmFwCittc2dpZCAiICBCPGRwa2ctcXVlcnkgLWwgXFwoYXFsaWJjNipcXChhcT5cbiIKK21zZ3N0ciAiICBCPGRwa2ctcXVlcnkgLWwgXFwoYXFsaWJjNipcXChhcT5cbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjMxCittc2dpZCAiIgorIlRoZSBmaXJzdCB0aHJlZSBjb2x1bW5zIG9mIHRoZSBvdXRwdXQgc2hvdyB0aGUgZGVzaXJlZCBhY3Rpb24sIHRoZSBwYWNrYWdlICIKKyJzdGF0dXMsIGFuZCBlcnJvcnMsIGluIHRoYXQgb3JkZXIuIgorbXNnc3RyICIiCisiRGUgZsO2cnN0YSB0cmUga29sdW1uZXJuYSBpIHV0ZGF0YSB2aXNhciDDtm5za2FkIMOldGfDpHJkLCBwYWtldHN0YXR1cyBvY2ggZmVsLCAiCisiaSBkZW4gb3JkbmluZ2VuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjMzCittc2dpZCAiRGVzaXJlZCBhY3Rpb246IgorbXNnc3RyICLDlm5za2FkIMOldGfDpHJkIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6MzkKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiICB1ID0gVW5rbm93blxuIgorIiAgaSA9IEluc3RhbGxcbiIKKyIgIGggPSBIb2xkXG4iCisiICByID0gUmVtb3ZlXG4iCisiICBwID0gUHVyZ2VcbiIKK21zZ3N0ciAiIgorIiAgdSA9IE9rw6RuZFxuIgorIiAgaSA9IEluc3RhbGxlcmFcbiIKKyIgIGggPSBIw6VsbFxuIgorIiAgciA9IFRhIGJvcnRcbiIKKyIgIHAgPSBSZW5zYVxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6NDIKK21zZ2lkICJQYWNrYWdlIHN0YXR1czoiCittc2dzdHIgIlBha2V0c3RhdHVzOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjUxCisjLCBuby13cmFwCittc2dpZCAiIgorIiAgbiA9IE5vdC1pbnN0YWxsZWRcbiIKKyIgIGMgPSBDb25maWctZmlsZXNcbiIKKyIgIEggPSBIYWxmLWluc3RhbGxlZFxuIgorIiAgVSA9IFVucGFja2VkXG4iCisiICBGID0gSGFsZi1jb25maWd1cmVkXG4iCisiICBXID0gVHJpZ2dlcnMtYXdhaXRpbmdcbiIKKyIgIHQgPSBUcmlnZ2Vycy1wZW5kaW5nXG4iCisiICBpID0gSW5zdGFsbGVkXG4iCittc2dzdHIgIiIKKyIgIG4gPSBFaiBpbnN0YWxsZXJhdFxuIgorIiAgYyA9IEtvbmZpZ3VyYXRpb25zZmlsZXJcbiIKKyIgIEggPSBIYWx2aW5zdGFsbGVyYXRcbiIKKyIgIFUgPSBVcHBhY2thdFxuIgorIiAgRiA9IEhhbHZrb25maWd1cmVyYXRcbiIKKyIgIFcgPSBVdGzDtnNhcmUgdsOkbnRhZFxuIgorIiAgdCA9IFV0bMO2c2FyZSBmw7ZyZXN0w6VlbmRlXG4iCisiICBpID0gSW5zdGFsbGVyYWRcbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjU0Cittc2dpZCAiRXJyb3IgZmxhZ3M6IgorbXNnc3RyICJGZWxmbGFnZ29yOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjU3CisjLCBuby13cmFwCittc2dpZCAiIgorIiAgRTxsdD5lbXB0eUU8Z3Q+ID0gKG5vbmUpXG4iCisiICBSID0gUmVpbnN0LXJlcXVpcmVkXG4iCittc2dzdHIgIiIKKyIgIEU8bHQ+dG9tRTxndD4gPSAoaW5nZW4pXG4iCisiICBSID0gT21pbnN0YWxsYXRpb24ga3LDpHZzXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMTo2MgorbXNnaWQgIiIKKyJBbiB1cHBlcmNhc2Ugc3RhdHVzIG9yIGVycm9yIGxldHRlciBpbmRpY2F0ZXMgdGhlIHBhY2thZ2UgaXMgbGlrZWx5IHRvIGNhdXNlICIKKyJzZXZlcmUgcHJvYmxlbXMuIFBsZWFzZSByZWZlciB0byBCPGRwa2c+KDEpIGZvciBpbmZvcm1hdGlvbiBhYm91dCB0aGUgYWJvdmUgIgorInN0YXRlcyBhbmQgZmxhZ3MuIgorbXNnc3RyICIiCisiRW4gdmVyc2FsIHN0YXR1cy0gZWxsZXIgZmVsYm9rc3RhdiBhbmdlciBhdHQgcGFrZXRldCB0cm9saWdlbiBrb21tZXIgb3JzYWthICIKKyJhbGx2YXJsaWdhIHByb2JsZW0uIFNlIEI8ZHBrZz4oMSkgZsO2ciBpbmZvcm1hdGlvbiBvbSBzdGF0dXMgb2NoIGZsYWdnb3Igb3Zhbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMTo2NworbXNnaWQgIiIKKyJUaGUgb3V0cHV0IGZvcm1hdCBvZiB0aGlzIG9wdGlvbiBpcyBub3QgY29uZmlndXJhYmxlLCBidXQgdmFyaWVzICIKKyJhdXRvbWF0aWNhbGx5IHRvIGZpdCB0aGUgdGVybWluYWwgd2lkdGguIEl0IGlzIGludGVuZGVkIGZvciBodW1hbiByZWFkZXJzLCAiCisiYW5kIGlzIG5vdCBlYXNpbHkgbWFjaGluZS1yZWFkYWJsZS4gU2VlIEI8LVc+IChCPC0tc2hvdz4pICBhbmQgQjwtLSIKKyJzaG93Zm9ybWF0PiBmb3IgYSB3YXkgdG8gY29uZmlndXJlIHRoZSBvdXRwdXQgZm9ybWF0LiIKK21zZ3N0ciAiIgorIlV0ZGF0YWZvcm1hdGV0IGbDtnIgZGVuIGjDpHIgZmxhZ2dhbiBrYW4gaW50ZSBqdXN0ZXJhcywgbWVuIHZhcmllcmFzICIKKyJhdXRvbWF0aXNrdCBmw7ZyIGF0dCBwYXNzYSB0ZXJtaW5hbGJyZWRkZW4uIERldCDDpHIgYXZzZXR0IGbDtnIgbcOkbnNrbGlnYSAiCisibMOkc2FyZSwgb2NoIMOkciBpbnRlIGVua2VsdCBtYXNraW5sw6RzYmFydC4gU2UgQjwtVz4gKEI8LS1zaG93Pikgb2NoIEI8LS0iCisic2hvd2Zvcm1hdD4gZsO2ciBodXIgZHUga29uZmlndXJlcmFyIHV0ZGF0YWZvcm1hdGV0LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcXVlcnkuMTo2NworIywgbm8td3JhcAorbXNnaWQgIkI8LVc+LCBCPC0tc2hvdz4gW0k8cGFja2FnZS1uYW1lLXBhdHRlcm4+Li4uXSIKK21zZ3N0ciAiQjwtVz4sIEI8LS1zaG93PiBbSTxwYWtldG5hbW5zbcO2bnN0ZXI+IC4uLl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMTo3NAorbXNnaWQgIiIKKyJKdXN0IGxpa2UgdGhlIEI8LS1saXN0PiBvcHRpb24gdGhpcyB3aWxsIGxpc3QgYWxsIHBhY2thZ2VzIG1hdGNoaW5nIHRoZSAiCisiZ2l2ZW4gcGF0dGVybi4gSG93ZXZlciB0aGUgb3V0cHV0IGNhbiBiZSBjdXN0b21pemVkIHVzaW5nIHRoZSBCPC0tIgorInNob3dmb3JtYXQ+IG9wdGlvbi4gIFRoZSBkZWZhdWx0IG91dHB1dCBmb3JtYXQgZ2l2ZXMgb25lIGxpbmUgcGVyIG1hdGNoaW5nICIKKyJwYWNrYWdlLCBlYWNoIGxpbmUgaGF2aW5nIHRoZSBuYW1lIGFuZCBpbnN0YWxsZWQgdmVyc2lvbiBvZiB0aGUgcGFja2FnZSwgIgorInNlcGFyYXRlZCBieSBhIHRhYi4iCittc2dzdHIgIiIKKyJQcmVjaXMgc29tIGZsYWdnYW4gQjwtLWxpc3Q+IGtvbW1lciBhdHQgcGFrZXQgc29tIG1hdGNoYXIgZGV0IGdpdm5hIG3Dtm5zdHJldCAiCisiYXR0IHZpc2FzLiBVdGRhdGF0IGthbiBkb2NrIHNrcsOkZGRhcnN5cyBtZWQgZmxhZ2dhbiBCPC0tc2hvd2Zvcm1hdD4uICIKKyJTdGFuZGFyZHV0ZGF0YWZvcm1hdGV0IMOkciBlbiByYWQgcGVyIHBha2V0IHNvbSB0csOkZmZhcywgZMOkciB2YXJqZSByYWQgIgorImlubmVow6VsbGVyIG5hbW4gb2NoIGluc3RhbGxlcmFkIHZlcnNpb24gYXYgcGFrZXRldCwgYXZkZWxhdCBtZWQgZXR0ICIKKyJ0YWJ1bGF0b3J0ZWNrZW4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1xdWVyeS4xOjc0CisjLCBuby13cmFwCittc2dpZCAiQjwtcz4sIEI8LS1zdGF0dXM+IEk8cGFja2FnZS1uYW1lPi4uLiIKK21zZ3N0ciAiQjwtcz4sIEI8LS1zdGF0dXM+IEk8cGFrZXRuYW1uPiAuLi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMTo3OQorbXNnaWQgIiIKKyJSZXBvcnQgc3RhdHVzIG9mIHNwZWNpZmllZCBwYWNrYWdlLiBUaGlzIGp1c3QgZGlzcGxheXMgdGhlIGVudHJ5IGluIHRoZSAiCisiaW5zdGFsbGVkIHBhY2thZ2Ugc3RhdHVzIGRhdGFiYXNlLiBXaGVuIG11bHRpcGxlIEk8cGFja2FnZS1uYW1lPiBhcmUgbGlzdGVkLCAiCisidGhlIHJlcXVlc3RlZCBzdGF0dXMgZW50cmllcyBhcmUgc2VwYXJhdGVkIGJ5IGFuIGVtcHR5IGxpbmUuIgorbXNnc3RyICIiCisiUmFwcG9ydGVyYSBzdGF0dXMgb20gZGV0IGFuZ2l2bmEgcGFrZXRldC4gIERldHRhIGFsdGVybmF0aXYgdmlzYXIgaGVsdCAiCisiZW5rZWx0IHBvc3RlbiBpIHN0YXR1c2RhdGFiYXNlbiBmw7ZyIGluc3RhbGxlcmFkZSBwYWtldC4gT20gZmxlcmEgIgorIkk8cGFrZXRuYW1uPiBhbmdlcyBhdmRlbGFzIGRlIGVmdGVyZnLDpWdhZGUgc3RhdHVzcG9zdGVybmEgbWVkIGVuIHRvbXJhZC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXF1ZXJ5LjE6NzkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1MPiwgQjwtLWxpc3RmaWxlcz4gSTxwYWNrYWdlLW5hbWU+Li4uIgorbXNnc3RyICJCPC1MPiwgQjwtLWxpc3RmaWxlcz4gSTxwYWtldG5hbW4+IC4uLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjg1Cittc2dpZCAiIgorIkxpc3QgZmlsZXMgaW5zdGFsbGVkIHRvIHlvdXIgc3lzdGVtIGZyb20gSTxwYWNrYWdlLW5hbWU+LiBXaGVuIG11bHRpcGxlICIKKyJJPHBhY2thZ2UtbmFtZT4gYXJlIGxpc3RlZCwgdGhlIHJlcXVlc3RlZCBsaXN0cyBvZiBmaWxlcyBhcmUgc2VwYXJhdGVkIGJ5IGFuICIKKyJlbXB0eSBsaW5lLiBIb3dldmVyLCBub3RlIHRoYXQgZmlsZXMgY3JlYXRlZCBieSBwYWNrYWdlLXNwZWNpZmljICIKKyJpbnN0YWxsYXRpb24tc2NyaXB0cyBhcmUgbm90IGxpc3RlZC4iCittc2dzdHIgIiIKKyJMaXN0YXIgZmlsZXIgc29tIGluc3RhbGxlcmF0cyBww6UgZGl0dCBzeXN0ZW0gZnLDpW4gSTxwYWtldG5hbW4+LiBPbSBmbGVyYSAiCisiSTxwYWtldG5hbW4+IGFuZ2VzIGF2ZGVsYXMgZGVuIGVmdGVyZnLDpWdhZGUgZmlsbGlzdGFuIG1lZCBlbiB0b21yYWQuICIKKyJPYnNlcnZlcmEgYXR0IGZpbGVyIHNvbSBza2FwYXRzIGF2IHBha2V0c3BlY2lmaWthIGluc3RhbGxhdGlvbnNza3JpcHQgaW50ZSAiCisidmlzYXMiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXF1ZXJ5LjE6ODUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1jPiwgQjwtLWNvbnRyb2wtcGF0aD4gSTxwYWNrYWdlLW5hbWU+IFtJPGNvbnRyb2wtZmlsZT5dIgorbXNnc3RyICJCPC1jPiwgQjwtLWNvbnRyb2wtcGF0aD4gSTxwYWtldG5hbW4+IFtJPGNvbnRyb2wtZmlsbmFtbj5dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6OTMKK21zZ2lkICIiCisiTGlzdCBwYXRocyBmb3IgY29udHJvbCBmaWxlcyBpbnN0YWxsZWQgdG8geW91ciBzeXN0ZW0gZnJvbSBJPHBhY2thZ2UtbmFtZT4uICAiCisiSWYgSTxjb250cm9sLWZpbGU+IGlzIHNwZWNpZmllZCB0aGVuIG9ubHkgbGlzdCB0aGUgcGF0aCBmb3IgdGhhdCBjb250cm9sICIKKyJmaWxlIGlmIGl0IGlzIHByZXNlbnQuIEI8V2FybmluZz46IHRoaXMgY29tbWFuZCBpcyBzZW1pLXB1YmxpYywgaXQgc2hvdWxkIGJlICIKKyJ1c2VkIG9ubHkgYXMgYSBsYXN0IHJlc29ydCBzb2x1dGlvbiwgYW5kIGlmIG5vIG90aGVyIGludGVyZmFjZSBpcyBhdmFpbGFibGUuICIKKyJJdCBtaWdodCBnZXQgZGVwcmVjYXRlZCBsYXRlciBvbiBpZiBiZXR0ZXIgaW50ZXJmYWNlcyBvciB0aGUgY3VycmVudCAiCisiYXJjaGl0ZWN0dXJhbCBkZWZpY2llbmNpZXMgaGF2ZSBiZWVuIHNvbHZlZC4iCittc2dzdHIgIiIKKyJWaXNhciBzw7ZrdsOkZ2FybmEgdGlsbCBjb250cm9sLWZpbGVybmEgc29tIGluc3RhbGxlcmF0cyBww6UgZGl0dCBzeXN0ZW0gZsO2ciAiCisiSTxwYWtldG5hbW4+LiBPbSBJPGNvbnRyb2wtZmlsPiBhbmdlcyB2aXNhcyBlbmRhc3Qgc8O2a3bDpGdlbiBmw7ZyIGRlbiBjb250cm9sLSIKKyJmaWxlbiwgb20gZGVuIGZpbm5zLiBCPFZhcm5pbmc+OiBrb21tYW5kb3Qgw6RyIGhhbHbDtnBwZXQsIGRldCBiw7ZyIGFudsOkbmRhcyAiCisiZW5kYXN0IHNvbSBlbiBzaXN0YSBkZXNwZXJhdCDDpXRnw6RyZCBvbSBkZXQgaW50ZSBmaW5ucyBuw6Vnb3QgYW5uYXQgIgorImdyw6Ruc3NuaXR0LiBEZXQga2FuIGF2csOlZGFzIGZyw6VuIHNlbmFyZSBvbSBiw6R0dHJlIGdyw6Ruc3NuaXR0IGVsbGVyIGRlICIKKyJudXZhcmFuZGUgYXJraXRla3Rvbmlza2EgYmVncsOkbnNuaW5nYXJuYSBoYXIgbMO2c3RzLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcXVlcnkuMTo5MworIywgbm8td3JhcAorbXNnaWQgIkI8LVM+LCBCPC0tc2VhcmNoPiBJPGZpbGVuYW1lLXNlYXJjaC1wYXR0ZXJuPi4uLiIKK21zZ3N0ciAiQjwtUz4sIEI8LS1zZWFyY2g+IEk8ZmlsbmFtbnNzw7ZrbcO2bnN0ZXI+IC4uLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjk5Cittc2dpZCAiIgorIlNlYXJjaCBmb3IgcGFja2FnZXMgdGhhdCBvd24gZmlsZXMgY29ycmVzcG9uZGluZyB0byB0aGUgZ2l2ZW4gcGF0dGVybi4gICIKKyJTdGFuZGFyZCBzaGVsbCB3aWxkY2hhcnMgY2FuIGJlIHVzZWQgaW4gdGhlIHBhdHRlcm4uICBUaGlzIGNvbW1hbmQgd2lsbCBub3QgIgorImxpc3QgZXh0cmEgZmlsZXMgY3JlYXRlZCBieSBtYWludGFpbmVyIHNjcmlwdHMsIG5vciB3aWxsIGl0IGxpc3QgIgorImFsdGVybmF0aXZlcy4iCittc2dzdHIgIiIKKyJTw7ZrIGVmdGVyIHBha2V0IHNvbSDDpGdlciBmaWxlciBzb20gbW90c3ZhcmFyIGRldCBhbmdpdm5hIG3Dtm5zdHJldC4gQWxsYSAiCisic2thbGV0cyB2YW5saWdhIGpva2VydGVja2VuIGthbiBhbnbDpG5kYXMgaSBtw7Zuc3RyZXQuIEtvbW1hbmRvdCBrb21tZXIgaW50ZSAiCisiYXR0IHZpc2EgZXh0cmFmaWxlciBzb20gc2thcGFzIGF2IHBha2V0c2tyaXB0LCBlaiBoZWxsZXIga29tbWVyIGRldCBhdHQgdmlzYSAiCisiYWx0ZXJuYXRpdi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXF1ZXJ5LjE6OTkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1wPiwgQjwtLXByaW50LWF2YWlsPiBJPHBhY2thZ2UtbmFtZT4uLi4iCittc2dzdHIgIkI8LXA+LCBCPC0tcHJpbnQtYXZhaWw+IEk8cGFrZXRuYW1uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjEwNQorbXNnaWQgIiIKKyJEaXNwbGF5IGRldGFpbHMgYWJvdXQgSTxwYWNrYWdlLW5hbWU+LCBhcyBmb3VuZCBpbiBJPC92YXIvbGliL2Rwa2cvIgorImF2YWlsYWJsZT4uIFdoZW4gbXVsdGlwbGUgSTxwYWNrYWdlLW5hbWU+IGFyZSBsaXN0ZWQsIHRoZSByZXF1ZXN0ZWQgIgorIkk8YXZhaWxhYmxlPiBlbnRyaWVzIGFyZSBzZXBhcmF0ZWQgYnkgYW4gZW1wdHkgbGluZS4iCittc2dzdHIgIiIKKyJWaXNhciBpbmZvcm1hdGlvbiBvbSBJPHBha2V0bmFtbj4sIGVubGlndCB2YWQgc29tIGZpbm5zIGkgSTwvdmFyL2xpYi9kcGtnLyIKKyJhdmFpbGFibGU+LiBPbSBmbGVyYSBJPHBha2V0bmFtbj4gYW5nZXMgYXZkZWxhcyBkZSBlZnRlcmZyw6VnYWRlIHBvc3Rlcm5hIHVyICIKKyJJPGF2YWlsYWJsZT4tZmlsZW4gbWVkIGVuIHRvbXJhZC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMToxMTAKK21zZ2lkICIiCisiVXNlcnMgb2YgQVBULWJhc2VkIGZyb250ZW5kcyBzaG91bGQgdXNlIEI8YXB0LWNhY2hlIHNob3c+IEk8cGFja2FnZS1uYW1lPiAiCisiaW5zdGVhZCBhcyB0aGUgSTxhdmFpbGFibGU+IGZpbGUgaXMgb25seSBrZXB0IHVwLXRvLWRhdGUgd2hlbiB1c2luZyAiCisiQjxkc2VsZWN0Pi4iCittc2dzdHIgIiIKKyJBbnbDpG5kZXIgZHUgZXR0IEFQVC1iYXNlcmF0IHNrYWwgYsO2ciBkdSBpc3TDpGxsZXQgYW52w6RuZGEgQjxhcHQtY2FjaGUgc2hvdz4gIgorIkk8cGFrZXRuYW1uPiwgZMOlIEk8YXZhaWxhYmxlPi1maWxlbiBlbmRhc3Qgw6Bqb3VyZsO2cnMgb20gQjxkc2VsZWN0PiBhbnbDpG5kcy4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXF1ZXJ5LjE6MTIyCisjLCBuby13cmFwCittc2dpZCAiQjwtZj4sIEI8LS1zaG93Zm9ybWF0PT5JPGZvcm1hdD4iCittc2dzdHIgIkI8LWY+LCBCPC0tc2hvd2Zvcm1hdD0+STxmb3JtYXQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6MTI5Cittc2dpZCAiSW4gdGhlIGZvcm1hdCBzdHJpbmcsIFxcKGxxQjxcXGU+XFwocnEgaW50cm9kdWNlcyBlc2NhcGVzOiIKK21zZ3N0ciAiSSBmb3JtYXRzdHLDpG5nZW4gaW5sZWRzIGbDtmxqYW5kZSBzdHlyc2VrdmVuc2VyIG1lZCBcXChscUI8XFxlPlxcKHJxOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjEzNAorIywgbm8td3JhcAorbXNnaWQgIiIKKyIgICAgQjxcXGVuPiAgbmV3bGluZVxuIgorIiAgICBCPFxcZXI+ICBjYXJyaWFnZSByZXR1cm5cbiIKKyIgICAgQjxcXGV0PiAgdGFiXG4iCittc2dzdHIgIiIKKyIgICAgQjxcXGVuPiAgcmFkbWF0bmluZ1xuIgorIiAgICBCPFxcZXI+ICB2YWducmV0dXJcbiIKKyIgICAgQjxcXGV0PiAgdGFidWxhdG9yXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMToxMzkKK21zZ2lkICIiCisiXFwobHFCPFxcZT5cXChycSBiZWZvcmUgYW55IG90aGVyIGNoYXJhY3RlciBzdXBwcmVzc2VzIGFueSBzcGVjaWFsIG1lYW5pbmcgIgorIm9mIHRoZSBmb2xsb3dpbmcgY2hhcmFjdGVyLCB3aGljaCBpcyB1c2VmdWwgZm9yIFxcKGxxQjxcXGU+XFwocnEgYW5kIFxcKGxxQjwiCisiJD5cXChycS4iCittc2dzdHIgIiIKKyJcXChscUI8XFxlPlxcKHJxIGbDtnJlIGV0dCBhbm5hdCB0ZWNrZW4gdW5kZXJ0cnlja2VuIGVuIHNwZWNpZWxsIGJldHlkZWxzZSAiCisiZsO2ciBkZXQgZWZ0ZXJmw7ZsamFuZGUgdGVja25ldCwgdmlsa2V0IMOkciBrYW4gYW52w6RuZGFzIGbDtnIgXFwobHFCPFxcZT5cXChycSAiCisib2NoIFxcKGxxQjwkPlxcKHJxLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjE0NworbXNnaWQgIiIKKyJQYWNrYWdlIGluZm9ybWF0aW9uIGNhbiBiZSBpbmNsdWRlZCBieSBpbnNlcnRpbmcgdmFyaWFibGUgcmVmZXJlbmNlcyB0byAiCisicGFja2FnZSBmaWVsZHMgdXNpbmcgdGhlIHN5bnRheCBcXChscUI8JHs+STxmaWVsZD5bQjw7Pkk8d2lkdGg+XUI8fT5cXChycS4gIgorIkZpZWxkcyBhcmUgcHJpbnRlZCByaWdodC1hbGlnbmVkIHVubGVzcyB0aGUgd2lkdGggaXMgbmVnYXRpdmUgaW4gd2hpY2ggY2FzZSAiCisibGVmdCBhbGlnbm1lbnQgd2lsbCBiZSB1c2VkLiBUaGUgZm9sbG93aW5nIEk8ZmllbGQ+cyBhcmUgcmVjb2duaXNlZCBidXQgdGhleSAiCisiYXJlIG5vdCBuZWNlc3NhcmlseSBhdmFpbGFibGUgaW4gdGhlIHN0YXR1cyBmaWxlIChvbmx5IGludGVybmFsIGZpZWxkcyBvciAiCisiZmllbGRzIHN0b3JlZCBpbiB0aGUgYmluYXJ5IHBhY2thZ2UgZW5kIHVwIGluIGl0KToiCittc2dzdHIgIiIKKyJQYWtldGluZm9ybWF0aW9uIGthbiBsw6RnZ2FzIGluIGdlbm9tIGF0dCBzw6R0dGEgaW4gdmFyaWFiZWxyZWZlcmVuc2VyIHRpbGwgIgorInBha2V0ZsOkbHQsIHDDpSBzeW50YXhlbiBcXChscUI8JHs+STxmaWVsZD5bQjw7Pkk8d2lkdGg+XUI8fT5cXChycS4gRsOkbHQgIgorInNrcml2cyBow7ZnZXJqdXN0ZXJhZGUgc8OldmlkYSBpbnRlIGJyZWRkZW4gw6RyIG5lZ2F0aXYgaSB2aWxrZXQgZmFsbCAiCisidsOkbnN0ZXJqdXN0ZXJpbmcga29tbWVyIGF0dCBhbnbDpG5kYXMuIEbDtmxqYW5kZSBJPGbDpGx0PiBzdMO2ZHMsIG1lbiBkZSDDpHIgaW50ZSAiCisibsO2ZHbDpG5kaWd0dmlzIHRpbGxnw6RuZ2xpZ2EgaSBzdGF0dXNmaWxlbiAoZW5kYXN0IGludGVybmEgZsOkbHQgb2NoIGbDpGx0IHNvbSAiCisiZmlubnMgaSBiaW7DpHJwYWtldGV0IGhhbW5hciBkw6RyKToiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMToxODIKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiICAgIEI8QXJjaGl0ZWN0dXJlPlxuIgorIiAgICBCPEJ1Z3M+XG4iCisiICAgIEI8Q29uZmZpbGVzPiAoaW50ZXJuYWwpXG4iCisiICAgIEI8Q29uZmlnLVZlcnNpb24+IChpbnRlcm5hbClcbiIKKyIgICAgQjxDb25mbGljdHM+XG4iCisiICAgIEI8QnJlYWtzPlxuIgorIiAgICBCPERlcGVuZHM+XG4iCisiICAgIEI8RGVzY3JpcHRpb24+XG4iCisiICAgIEI8RW5oYW5jZXM+XG4iCisiICAgIEI8RXNzZW50aWFsPlxuIgorIiAgICBCPEZpbGVuYW1lPiAoaW50ZXJuYWwsIGZyb250LWVuZCByZWxhdGVkKVxuIgorIiAgICBCPEhvbWVwYWdlPlxuIgorIiAgICBCPEluc3RhbGxlZC1TaXplPlxuIgorIiAgICBCPE1ENXN1bT4gKGludGVybmFsLCBmcm9udC1lbmQgcmVsYXRlZClcbiIKKyIgICAgQjxNU0RPUy1GaWxlbmFtZT4gKGludGVybmFsLCBmcm9udC1lbmQgcmVsYXRlZClcbiIKKyIgICAgQjxNYWludGFpbmVyPlxuIgorIiAgICBCPE9yaWdpbj5cbiIKKyIgICAgQjxQYWNrYWdlPlxuIgorIiAgICBCPFByZS1EZXBlbmRzPlxuIgorIiAgICBCPFByaW9yaXR5PlxuIgorIiAgICBCPFByb3ZpZGVzPlxuIgorIiAgICBCPFJlY29tbWVuZHM+XG4iCisiICAgIEI8UmVwbGFjZXM+XG4iCisiICAgIEI8UmV2aXNpb24+IChvYnNvbGV0ZSlcbiIKKyIgICAgQjxTZWN0aW9uPlxuIgorIiAgICBCPFNpemU+IChpbnRlcm5hbCwgZnJvbnQtZW5kIHJlbGF0ZWQpXG4iCisiICAgIEI8U291cmNlPlxuIgorIiAgICBCPFN0YXR1cz4gKGludGVybmFsKVxuIgorIiAgICBCPFN1Z2dlc3RzPlxuIgorIiAgICBCPFRhZz4gKHVzdWFsbHkgbm90IGluIHRoZSAuZGViIGJ1dCBpbiB0aGUgcmVwb3NpdG9yeSBQYWNrYWdlcyBmaWxlcylcbiIKKyIgICAgQjxUcmlnZ2Vycy1Bd2FpdGVkPiAoaW50ZXJuYWwpXG4iCisiICAgIEI8VHJpZ2dlcnMtUGVuZGluZz4gKGludGVybmFsKVxuIgorIiAgICBCPFZlcnNpb24+XG4iCittc2dzdHIgIiIKKyIgICAgQjxBcmNoaXRlY3R1cmU+XG4iCisiICAgIEI8QnVncz5cbiIKKyIgICAgQjxDb25mZmlsZXM+IChpbnRlcm50KVxuIgorIiAgICBCPENvbmZpZy1WZXJzaW9uPiAoaW50ZXJudClcbiIKKyIgICAgQjxDb25mbGljdHM+XG4iCisiICAgIEI8QnJlYWtzPlxuIgorIiAgICBCPERlcGVuZHM+XG4iCisiICAgIEI8RGVzY3JpcHRpb24+XG4iCisiICAgIEI8RW5oYW5jZXM+XG4iCisiICAgIEI8RXNzZW50aWFsPlxuIgorIiAgICBCPEZpbGVuYW1lPiAoaW50ZXJudCwgc2thbHJlbGF0ZXJhdClcbiIKKyIgICAgQjxIb21lcGFnZT5cbiIKKyIgICAgQjxJbnN0YWxsZWQtU2l6ZT5cbiIKKyIgICAgQjxNRDVzdW0+IChpbnRlcm50LCBza2FscmVsYXRlcmF0KVxuIgorIiAgICBCPE1TRE9TLUZpbGVuYW1lPiAoaW50ZXJudCwgc2thbHJlbGF0ZXJhdClcbiIKKyIgICAgQjxNYWludGFpbmVyPlxuIgorIiAgICBCPE9yaWdpbj5cbiIKKyIgICAgQjxQYWNrYWdlPlxuIgorIiAgICBCPFByZS1EZXBlbmRzPlxuIgorIiAgICBCPFByaW9yaXR5PlxuIgorIiAgICBCPFByb3ZpZGVzPlxuIgorIiAgICBCPFJlY29tbWVuZHM+XG4iCisiICAgIEI8UmVwbGFjZXM+XG4iCisiICAgIEI8UmV2aXNpb24+IChmw7Zyw6VsZHJhdClcbiIKKyIgICAgQjxTZWN0aW9uPlxuIgorIiAgICBCPFNpemU+ICAoaW50ZXJudCwgc2thbHJlbGF0ZXJhdClcbiIKKyIgICAgQjxTb3VyY2U+XG4iCisiICAgIEI8U3RhdHVzPiAoaW50ZXJudClcbiIKKyIgICAgQjxTdWdnZXN0cz5cbiIKKyIgICAgQjxUYWc+IChub3JtYWx0IGludGUgaSAuZGViLCB1dGFuIGkgYXJraXZldHMgUGFja2FnZXMtZmlsZXIpXG4iCisiICAgIEI8VHJpZ2dlcnMtQXdhaXRlZD4gKGludGVybnQpICAgIEI8VHJpZ2dlcnMtUGVuZGluZz4gKGludGVybnQpICAgIEI8VmVyc2lvbj5cbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjE5MAorbXNnaWQgIiIKKyJUaGUgZGVmYXVsdCBmb3JtYXQgc3RyaW5nIGlzIFxcKGxxQjwke1BhY2thZ2V9XFxldCR7VmVyc2lvbn1cXGVuPlxcKHJxLiAgIgorIkFjdHVhbGx5LCBhbGwgb3RoZXIgZmllbGRzIGZvdW5kIGluIHRoZSBzdGF0dXMgZmlsZSAoaS5lLiB1c2VyIGRlZmluZWQgIgorImZpZWxkcykgY2FuIGJlIHJlcXVlc3RlZCwgdG9vLiBUaGV5IHdpbGwgYmUgcHJpbnRlZCBhcy1pcywgdGhvdWdoLCBubyAiCisiY29udmVyc2lvbiBub3IgZXJyb3IgY2hlY2tpbmcgaXMgZG9uZSBvbiB0aGVtLiAgVG8gZ2V0IHRoZSBuYW1lIG9mIHRoZSBkcGtnICIKKyJtYWludGFpbmVyIGFuZCB0aGUgaW5zdGFsbGVkIHZlcnNpb24sIHlvdSBjb3VsZCBydW46IgorbXNnc3RyICIiCisiU3RhbmRhcmRmb3JtYXRldCDDpHIgXFwobHFCPCR7UGFja2FnZX1cXGV0JHtWZXJzaW9ufVxcZW4+XFwocnEuIEFsbGEgYW5kcmEgIgorImbDpGx0IHNvbSBmaW5ucyBpIHN0YXR1c2ZpbGVuICjDpHZlbiBhbnbDpG5kYXJkZWZpbmllcmFkZSBmw6RsdCkga2FuIG9ja3PDpSAiCisiaMOkbXRhcy4gRGUgdmlzYXMgZG9jayBzb20gZGUgw6RyLCBpbmdlbiBrb252ZXJ0ZXJpbmcgZWxsZXIgZmVsa29ycmlnZXJpbmcgIgorImfDtnJzIHDDpSBkZW0uIEbDtnIgYXR0IGjDpG10YSBuYW1uZXQgcMOlIHBha2V0YW5zdmFyaWcgb2NoIGluc3RhbGxlcmFkIHZlcnNpb24gIgorImF2IGRwa2cgb2NoIGthbiBkdSBrw7ZyYToiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMToxOTMKKyMsIG5vLXdyYXAKK21zZ2lkICIgIEI8ZHBrZy1xdWVyeSAtVyAtZj1cXChhcSR7UGFja2FnZX0gJHtWZXJzaW9ufVxcZXQke01haW50YWluZXJ9XFxlblxcKGFxIGRwa2c+XG4iCittc2dzdHIgIiAgQjxkcGtnLXF1ZXJ5IC1XIC1mPVxcKGFxJHtQYWNrYWdlfSAke1ZlcnNpb259XFxldCR7TWFpbnRhaW5lcn1cXGVuXFwoYXEgZHBrZz5cbiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctcXVlcnkuMToxOTUgZHBrZy1zcGxpdC4xOjE3OSBzdGFydC1zdG9wLWRhZW1vbi44OjI1OQorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM3NAorIywgbm8td3JhcAorbXNnaWQgIkVYSVQgU1RBVFVTIgorbXNnc3RyICJSRVRVUlbDhFJERSIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcXVlcnkuMToxOTYgZHBrZy1zcGxpdC4xOjE4MCBzdGFydC1zdG9wLWRhZW1vbi44OjI2MAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyODkgdXBkYXRlLWFsdGVybmF0aXZlcy44OjM3NQorIywgbm8td3JhcAorbXNnaWQgIkI8MD4iCittc2dzdHIgIkI8MD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctcXVlcnkuMToxOTkKK21zZ2lkICJUaGUgcmVxdWVzdGVkIHF1ZXJ5IHdhcyBzdWNjZXNzZnVsbHkgcGVyZm9ybWVkLiIKK21zZ3N0ciAiRGVuIMO2bnNrYWRlIGZyw6VnYW4gdXRmw7ZyZGVzIHV0YW4gZmVsLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctcXVlcnkuMToxOTkgZHBrZy1zcGxpdC4xOjE4NiBzdGFydC1zdG9wLWRhZW1vbi44OjI3MAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyOTIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPDE+IgorbXNnc3RyICJCPDE+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6MjAzCittc2dpZCAiIgorIlByb2JsZW1zIHdlcmUgZW5jb3VudGVyZWQgd2hpbGUgcGFyc2luZyB0aGUgY29tbWFuZCBsaW5lIG9yIHBlcmZvcm1pbmcgdGhlICIKKyJxdWVyeSwgaW5jbHVkaW5nIG5vIGZpbGUgb3IgcGFja2FnZSBiZWluZyBmb3VuZCAoZXhjZXB0IGZvciAtLWNvbnRyb2wtcGF0aCkuIgorbXNnc3RyICIiCisiUHJvYmxlbSB1cHBzdG9kIHZpZCB0b2xrbmluZyBhdiBrb21tYW5kb3JhZGVuIGVsbGVyIG7DpHIgZnLDpWdhbiBza3VsbGUgIgorInV0ZsO2cmFzLCB0aWxsIGV4ZW1wZWwgYXR0IGluZ2VuIGZpbCBlbGxlciBwYWtldCBoaXR0YWRlcyAoZsO2cnV0b20gZsO2ciAtLSIKKyJjb250cm9sLXBhdGgpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1xdWVyeS4xOjIxMworbXNnaWQgIiIKKyJUaGlzIHNldHRpbmcgaW5mbHVlbmNlcyB0aGUgb3V0cHV0IG9mIHRoZSBCPC0tbGlzdD4gb3B0aW9uIGJ5IGNoYW5naW5nIHRoZSAiCisid2lkdGggb2YgaXRzIG91dHB1dC4iCittc2dzdHIgIiIKKyJJbnN0w6RsbG5pbmdlbiBww6V2ZXJrYXIgdXRkYXRhIGZyw6VuIGtvbW1hbmRvdCBCPC0tbGlzdD4gZ2Vub20gYXR0IMOkbmRyYSAiCisiYnJlZGRlbiBww6UgZGVzcyB1dGRhdGEuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXF1ZXJ5LjE6MjE2Cittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMDEgV2ljaGVydCBBa2tlcm1hbiIKK21zZ3N0ciAiVXBwaG92c3LDpHR0c3NreWRkYXQgwqkgMjAwMSBXaWNoZXJ0IEFra2VybWFuIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1zY2FucGFja2FnZXMuMToxNQorIywgbm8td3JhcAorbXNnaWQgImRwa2ctc2NhbnBhY2thZ2VzIgorbXNnc3RyICJkcGtnLXNjYW5wYWNrYWdlcyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2FucGFja2FnZXMuMToxOAorbXNnaWQgImRwa2ctc2NhbnBhY2thZ2VzIC0gY3JlYXRlIFBhY2thZ2VzIGluZGV4IGZpbGVzIgorbXNnc3RyICJkcGtnLXNjYW5wYWNrYWdlcyAtIHNrYXBhciBpbmRleGZpbGVybmEgUGFja2FnZXMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6MjYKK21zZ2lkICIiCisiQjxkcGtnLXNjYW5wYWNrYWdlcz4gW0k8b3B0aW9uPi4uLl0gSTxiaW5hcnktZGlyPiBbSTxvdmVycmlkZS1maWxlPiBbSTxwYXRoLSIKKyJwcmVmaXg+XV0gQjxFPGd0Pj4gSTxQYWNrYWdlcz4iCittc2dzdHIgIiIKKyJCPGRwa2ctc2NhbnBhY2thZ2VzPiBbSTxmbGFnZ2E+Li4uXSBJPGJpbsOkcmthdGFsb2c+IFtJPMO2dmVyc3R5cm5pbmdzZmlsPiAiCisiW0k8c8O2a3bDpGdzcHJlZml4Pl1dIEI8RTxndD4+IEk8UGFja2FnZXM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjM5Cittc2dpZCAiIgorIkI8ZHBrZy1zY2FucGFja2FnZXM+IHNvcnRzIHRocm91Z2ggYSB0cmVlIG9mIERlYmlhbiBiaW5hcnkgcGFja2FnZXMgYW5kICIKKyJjcmVhdGVzIGEgUGFja2FnZXMgZmlsZSwgdXNlZCBieSBCPGFwdD4oOCksIEI8ZHNlbGVjdD4oMSksIGV0YywgdG8gdGVsbCB0aGUgIgorInVzZXIgd2hhdCBwYWNrYWdlcyBhcmUgYXZhaWxhYmxlIGZvciBpbnN0YWxsYXRpb24uIFRoZXNlIFBhY2thZ2VzIGZpbGVzIGFyZSAiCisidGhlIHNhbWUgYXMgdGhvc2UgZm91bmQgb24gRGViaWFuIGFyY2hpdmUgc2l0ZXMgYW5kIENELVJPTXMuIFlvdSBtaWdodCB1c2UgIgorIkI8ZHBrZy1zY2FucGFja2FnZXM+IHlvdXJzZWxmIGlmIG1ha2luZyBhIGRpcmVjdG9yeSBvZiBsb2NhbCBwYWNrYWdlcyB0byAiCisiaW5zdGFsbCBvbiBhIGNsdXN0ZXIgb2YgbWFjaGluZXMuIgorbXNnc3RyICIiCisiQjxkcGtnLXNjYW5wYWNrYWdlcz4gZ8OlciBnZW5vbSBldHQgdHLDpGQgYXYgRGViaWFuYmluw6RycGFrZXQgb2NoIHNrYXBhciBlbiAiCisiUGFja2FnZXMtZmlsLCBzb20gQjxhcHQ+KDgpLCBCPGRzZWxlY3Q+KDgpIG9zdi4gYW52w6RuZGVyIGbDtnIgYXR0IGJlcsOkdHRhIGbDtnIgIgorImFudsOkbmRhcmVuIHZpbGthIHBha2V0IHNvbSBrYW4gaW5zdGFsbGVyYXMuIERlc3NhIFBhY2thZ2VzLWZpbGVyIMOkciBkZXNhbW1hICIKKyJzb20gZGUgc29tIGZpbm5zIHDDpSBEZWJpYW5hcmtpdnNwZWdsYXIgb2NoIGNkLXJvbTphci4gRHUga2FuIGFudsOkbmRhIEI8ZHBrZy0iCisic2NhbnBhY2thZ2VzPiBzasOkbHYgZsO2ciBhdHQgc2thcGEgZW4ga2F0YWxvZyBtZWQgbG9rYWxhIHBha2V0IGF0dCBpbnN0YWxsZXJhICIKKyJww6UgZW4ga2xhc2UgbWFza2luZXIuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjUxCittc2dpZCAiIgorIkI8Tm90ZTo+IElmIHlvdSB3YW50IHRvIGFjY2VzcyB0aGUgZ2VuZXJhdGVkIFBhY2thZ2VzIGZpbGUgd2l0aCBCPGFwdD4geW91ICIKKyJ3aWxsIHByb2JhYmx5IG5lZWQgdG8gY29tcHJlc3MgdGhlIGZpbGUgd2l0aCBCPGJ6aXAyPigxKSAgKGdlbmVyYXRpbmcgYSAiCisiUGFja2FnZXMuYnoyIGZpbGUpIG9yIEI8Z3ppcD4oMSkgIChnZW5lcmF0aW5nIGEgUGFja2FnZXMuZ3ogZmlsZSkuIGFwdCAiCisiaWdub3JlcyB1bmNvbXByZXNzZWQgUGFja2FnZXMgZmlsZXMgZXhjZXB0IG9uIGxvY2FsIGFjY2VzcyAoaS5lLiAgQjxmaWxlOi8vPiAiCisic291cmNlcykuIgorbXNnc3RyICIiCisiQjxPYnNlcnZlcmE6PiBPbSBkdSB2aWxsIGzDpHNhIGRlbiBza2FwYWRlIFBhY2thZ2VzLWZpbGVuIG1lZCBCPGFwdD4gbcOlc3RlIGR1ICIKKyJhbnRhZ2xpZ2VuIGtvbXByaW1lcmEgZmlsZW4gbWVkIEI8YnppcDI+KDEpICh2aWxrZXQgc2thcGFyIGZpbGVuIFBhY2thZ2VzLiIKKyJiejIpIGVsbGVyIEI8Z3ppcD4oMSkgKHZpbGtldCBza2FwYXIgZmlsZW4gUGFja2FnZXMuZ3opLiBhcHQgaWdub3JlcmFyICIKKyJva29tcHJpbWVyYWRlIFBhY2thZ2VzLWZpbGVyLCBmw7ZydXRvbSB2aWQgbG9rYWwgw6V0a29tc3QgKGR2cy4gQjxmaWxlOi8vPi0iCisia8OkbGxvcikuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjU4Cittc2dpZCAiIgorIkk8YmluYXJ5ZGlyPiBpcyB0aGUgbmFtZSBvZiB0aGUgdHJlZSBvZiB0aGUgYmluYXJ5IHBhY2thZ2VzIHRvIHByb2Nlc3MgKGZvciAiCisiZXhhbXBsZSwgQjxjb250cmliL2JpbmFyeS1pMzg2PikuICBJdCBpcyBiZXN0IHRvIG1ha2UgdGhpcyByZWxhdGl2ZSB0byB0aGUgIgorInJvb3Qgb2YgdGhlIERlYmlhbiBhcmNoaXZlLCBiZWNhdXNlIGV2ZXJ5IEZpbGVuYW1lIGZpZWxkIGluIHRoZSBuZXcgUGFja2FnZXMgIgorImZpbGUgd2lsbCBzdGFydCB3aXRoIHRoaXMgc3RyaW5nLiIKK21zZ3N0ciAiIgorIkk8Ymluw6Rya2F0YWxvZz4gw6RyIG5hbW5ldCBww6UgdHLDpGRldCBtZWQgYmluw6RycGFrZXRlbiBzb20gc2thbGwgaGFudGVyYXMgIgorIih0aWxsIGV4ZW1wZWwgQjxjb250cmliL2JpbmFyeS1pMzg2PikuIERldCDDpHIgYsOkc3QgYXR0IHNrYXBhIGRlbiByZWxhdGl2dCAiCisidGlsbCByb3RlbiBww6UgRGViaWFuYXJraXZldCBlZnRlcnNvbSBhbGwgZmlsbmFtbnNmw6RsdCBpIGRlbiBza2FwYWRlIFBhY2thZ2VzLSIKKyJmaWxlbiBrb21tZXIgaW5sZWRhcyBtZWQgc3Ryw6RuZ2VuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2FucGFja2FnZXMuMTo2MworbXNnaWQgIiIKKyJJPG92ZXJyaWRlZmlsZT4gaXMgdGhlIG5hbWUgb2YgYSBmaWxlIHRvIHJlYWQgd2hpY2ggY29udGFpbnMgaW5mb3JtYXRpb24gIgorImFib3V0IGhvdyB0aGUgcGFja2FnZSBmaXRzIGludG8gdGhlIGRpc3RyaWJ1dGlvbiAoaXQgY2FuIGJlIGEgY29tcHJlc3NlZCAiCisiZmlsZSk7IHNlZSBCPGRlYi1vdmVycmlkZT4oNSkuIgorbXNnc3RyICIiCisiSTzDtnZlcnN0eXJuaW5nc2ZpbD4gw6RyIG5hbW5ldCBww6UgZW4gZmlsIHNvbSBza2FsbCBsw6RzYXMgaW4gb2NoIHNvbSAiCisiaW5uZWjDpWxsZXIgaW5mb3JtYXRpb24gb20gaHVyIHBha2V0ZXQgcGFzc2FyIGluIGkgZGlzdHJpYnV0aW9uZW4gKGthbiB2YXJhICIKKyJlbiBrb21wcmltZXJhZCBmaWwpOyBzZSBCPGRlYi1vdmVycmlkZT4oNSkuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjY2Cittc2dpZCAiIgorIkk8cGF0aHByZWZpeD4gaXMgYW4gb3B0aW9uYWwgc3RyaW5nIHRvIGJlIHByZXBlbmRlZCB0byB0aGUgRmlsZW5hbWUgZmllbGRzLiIKK21zZ3N0ciAiIgorIkk8c8O2a3bDpGdzcHJlZml4PiDDpHIgZW4gZnJpdmlsbGlnIHN0csOkbmcgc29tIGzDpGdncyB0aWxsIGkgYsO2cmphbiBpICIKKyJmaWxuYW1uc2bDpGx0ZXQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjcwCittc2dpZCAiIgorIklmIG1vcmUgdGhhbiBvbmUgdmVyc2lvbiBvZiBhIHBhY2thZ2UgaXMgZm91bmQgb25seSB0aGUgbmV3ZXN0IG9uZSBpcyAiCisiaW5jbHVkZWQgaW4gdGhlIG91dHB1dC4gSWYgdGhleSBoYXZlIHRoZSBzYW1lIHZlcnNpb24gYW5kIG9ubHkgZGlmZmVyIGluICIKKyJhcmNoaXRlY3R1cmUgb25seSB0aGUgZmlyc3Qgb25lIGZvdW5kIGlzIHVzZWQuIgorbXNnc3RyICIiCisiT20gbWVyIMOkbiBlbiB2ZXJzaW9uIGF2IGV0dCBwYWtldCB1cHB0w6Rja3Mga29tbWVyIGVuZGFzdCBkZW4gc2VuYXN0ZSBhdHQgdGFzICIKKyJtZWQgaSB1dGRhdGEuIE9tIGRlIGhhciBzYW1tYSB2ZXJzaW9uIG9jaCBiYXJhIHNraWxqZXIgaSBhcmtpdGVrdHVyIGtvbW1lciAiCisiYmFyYSBkZW4gZsO2cnN0YSBzb20gaGl0dGFzIGF0dCBhbnbDpG5kYXMuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zY2FucGFja2FnZXMuMTo3MgorIywgbm8td3JhcAorbXNnaWQgIkI8LXQ+LCBCPC0tdHlwZT4gSTx0eXBlPiIKK21zZ3N0ciAiQjwtdD4sIEI8LS10ZXN0PiBJPHR5cD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6NzUKK21zZ2lkICJTY2FuIGZvciAqLkk8dHlwZT4gcGFja2FnZXMsIGluc3RlYWQgb2YgKi5kZWIuIgorbXNnc3RyICJTw7ZrIGVmdGVyICouSTx0eXA+LXBha2V0LCBpIHN0w6RsbGV0IGbDtnIgKi5kZWIuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zY2FucGFja2FnZXMuMTo3NQorIywgbm8td3JhcAorbXNnaWQgIkI8LXU+LCBCPC0tdWRlYj4iCittc2dzdHIgIkI8LXU+LCBCPC0tdWRlYj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6NzgKK21zZ2lkICJCPE9ic29sZXRlPiBhbGlhcyBmb3IgQjwtdHVkZWI+LiIKK21zZ3N0ciAiQjxGw7Zyw6VsZHJhdD4gYWxpYXMgdGlsbCBCPC10dWRlYj4uIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1zY2FucGFja2FnZXMuMTo3OCBkcGtnLXNjYW5zb3VyY2VzLjE6NDkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1lPiwgQjwtLWV4dHJhLW92ZXJyaWRlPiBJPGZpbGU+IgorbXNnc3RyICJCPC1lPiwgQjwtLWV4dHJhLW92ZXJyaWRlPiBJPGZpbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6ODQgZHBrZy1zY2Fuc291cmNlcy4xOjU0Cittc2dpZCAiIgorIlNjYW4gSTxmaWxlPiB0byBmaW5kIHN1cHBsZW1lbnRhcnkgb3ZlcnJpZGVzICh0aGUgZmlsZSBjYW4gYmUgY29tcHJlc3NlZCkuICIKKyJTZWUgQjxkZWItZXh0cmEtb3ZlcnJpZGU+KDUpICBmb3IgbW9yZSBpbmZvcm1hdGlvbiBvbiBpdHMgZm9ybWF0LiIKK21zZ3N0ciAiIgorIkzDpHMgSTxmaWw+IGbDtnIgYXR0IGhpdHRhIHl0dGVybGlnYXJlIMO2dmVyc3R5cm5pbmdhciAoZmlsZW4ga2FuIHZhcmEgIgorImtvbXByaW1lcmFkKS4gU2UgQjxkZWItZXh0cmEtb3ZlcnJpZGU+KDUpIGbDtnIgbWVyIGluZm9ybWF0aW9uIG9tIGRlc3MgZm9ybWF0LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6ODQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1hPiwgQjwtLWFyY2g+IEk8YXJjaD4iCittc2dzdHIgIkI8LWE+LCBCPC0tYXJjaD4gSTxhcmtpdGVrdHVyPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2FucGFja2FnZXMuMTo4OAorbXNnaWQgIiIKKyJVc2UgYSBwYXR0ZXJuIGNvbnNpc3Rpbmcgb2YgSTwqX2FsbC5kZWI+IGFuZCBJPCpfYXJjaC5kZWI+IGluc3RlYWQgb2YgIgorInNjYW5uaW5nIGZvciBhbGwgZGVicy4iCittc2dzdHIgIiIKKyJBbnbDpG5kIGV0dCBtw7Zuc3RlciBzb20gYmVzdMOlciBhdiBJPCpfYWxsLmRlYj4gb2NoIEk8Kl9hcmtpdGVrdHVyLmRlYj4gIgorImlzdMOkbGxldCBmw7ZyIGF0dCBzw7ZrYSBlZnRlciBhbGxhIGRlYi1hcmtpdi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjg4CisjLCBuby13cmFwCittc2dpZCAiQjwtbT4sIEI8LS1tdWx0aXZlcnNpb24+IgorbXNnc3RyICJCPC1tPiwgQjwtLW11bHRpdmVyc2lvbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6OTEKK21zZ2lkICJJbmNsdWRlIGFsbCBmb3VuZCBwYWNrYWdlcyBpbiB0aGUgb3V0cHV0LiIKK21zZ3N0ciAiVGEgbWVkIGFsbGEgcGFrZXQgc29tIGhpdHRhcyBpIHV0ZGF0YS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNjYW5wYWNrYWdlcy4xOjkxCisjLCBuby13cmFwCittc2dpZCAiQjwtTT4sIEI8LS1tZWRpdW0+IEk8aWQtc3RyaW5nPiIKK21zZ3N0ciAiQjwtTT4sIEI8LS1tZWRpdW0+IEk8aWRzdHLDpG5nPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2FucGFja2FnZXMuMTo5NgorbXNnaWQgIiIKKyJBZGQgYW4gWC1NZWRpdW0gZmllbGQgY29udGFpbmluZyB0aGUgdmFsdWUgSTxpZC1zdHJpbmc+LiBUaGlzIGZpZWxkIGlzICIKKyJyZXF1aXJlZCBpZiB5b3Ugd2FudCB0byBnZW5lcmF0ZSBCPFBhY2thZ2VzLmNkPiBmaWxlcyBmb3IgdXNlIGJ5IHRoZSBtdWx0aWNkICIKKyJhY2Nlc3MgbWV0aG9kIG9mIGRzZWxlY3QuIgorbXNnc3RyICIiCisiTMOkZ2cgdGlsbCBldHQgWC1NZWRpdW0tZsOkbHQgc29tIGlubmVow6VsbGVyIHbDpHJkZXQgSTxpZHN0csOkbmc+LiBGw6RsdGV0IMOkciAiCisibsO2ZHbDpG5kaWd0IG9tIGR1IHZpbGwgZ2VuZXJlcmEgQjxQYWNrYWdlcy5jZD4tZmlsZXIgc29tIGthbiBhbnbDpG5kYXMgbWVkICIKKyJkc2VsZWN0OnMgbXVsdGljZC3DpXRrb21zdG1ldG9kLiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctc2NhbnBhY2thZ2VzLjE6MTAzIHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0NDgKKyMsIG5vLXdyYXAKK21zZ2lkICJESUFHTk9TVElDUyIKK21zZ3N0ciAiRElBR05PU1RJSyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2FucGFja2FnZXMuMToxMDkKK21zZ2lkICIiCisiQjxkcGtnLXNjYW5wYWNrYWdlcz4gb3V0cHV0cyB0aGUgdXN1YWwgc2VsZi1leHBsYW5hdG9yeSBlcnJvcnMuIEl0IGFsc28gIgorIndhcm5zIGFib3V0IHBhY2thZ2VzIHRoYXQgYXJlIGluIHRoZSB3cm9uZyBzdWJkaXJlY3RvcnksIGFyZSBkdXBsaWNhdGVkLCAiCisiaGF2ZSBhIEZpbGVuYW1lIGZpZWxkIGluIHRoZWlyIGNvbnRyb2wgZmlsZSwgYXJlIG1pc3NpbmcgZnJvbSB0aGUgb3ZlcnJpZGUgIgorImZpbGUsIG9yIGhhdmUgbWFpbnRhaW5lciBzdWJzdGl0dXRpb25zIHdoaWNoIGRvIG5vdCB0YWtlIGVmZmVjdC4iCittc2dzdHIgIiIKKyJCPGRwa2ctc2NhbnBhY2thZ2VzPiBza3JpdmVyIHV0IGRlIHZhbmxpZ2Egc2rDpGx2ZsO2cmtsYXJhbmRlIGZlbGVuLiBEZXQgIgorInZhcm5hciDDpHZlbiBvbSBwYWtldCBsaWdnZXIgaSBmZWwga2F0YWxvZyBoYXIgZHViYmxldHRlciwgaGFyIGV0dCBGaWxlbmFtZS0iCisiZsOkbHQgaSBzaW4gY29udHJvbC1maWwsIHNha25hcyBmcsOlbiDDtnZlcnN0eXJuaW5nc2ZpbGVuLCBlbGxlciBoYXIgIgorInN1YnN0aXR1ZXJpbmdhciB1dGFuIGVmZmVrdCBza3Jpdm5hIGF2IHBha2V0YW5zdmFyaWdhLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2FucGFja2FnZXMuMToxMTUKK21zZ2lkICIiCisiQjxkcGtnPigxKSwgQjxkc2VsZWN0PigxKSwgQjxkZWItb3ZlcnJpZGU+KDUpLCBCPGRlYi1leHRyYS1vdmVycmlkZT4oNSksICIKKyJCPGRwa2ctc2NhbnNvdXJjZXM+KDEpLiIKK21zZ3N0ciAiIgorIkI8ZHBrZz4oMSksIEI8ZHNlbGVjdD4oMSksIEI8ZGViLW92ZXJyaWRlPig1KSwgQjxkZWItZXh0cmEtb3ZlcnJpZGU+KDUpLCAiCisiQjxkcGtnLXNjYW5zb3VyY2VzPigxKS4iCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6MQorIywgbm8td3JhcAorbXNnaWQgImRwa2ctc2NhbnNvdXJjZXMiCittc2dzdHIgImRwa2ctc2NhbnNvdXJjZXMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMTo0Cittc2dpZCAiZHBrZy1zY2Fuc291cmNlcyAtIGNyZWF0ZSBTb3VyY2VzIGluZGV4IGZpbGVzIgorbXNnc3RyICJkcGtnLXNjYW5zb3VyY2VzIC0gc2thcGFyIGluZGV4ZmlsZXJuYSBTb3VyY2VzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6MTIKK21zZ2lkICIiCisiQjxkcGtnLXNjYW5zb3VyY2VzPiBbSTxvcHRpb24+Li4uXSBJPGJpbmFyeS1kaXI+IFtJPG92ZXJyaWRlLWZpbGU+IFtJPHBhdGgtIgorInByZWZpeD5dXSBCPEU8Z3Q+PiBJPFNvdXJjZXM+IgorbXNnc3RyICIiCisiQjxkcGtnLXNjYW5zb3VyY2VzPiBbSTxmbGFnZ2E+Li4uXSBJPGJpbsOkcmthdGFsb2c+IFtJPMO2dmVyc3R5cm5pbmdzZmlsPiAiCisiW0k8c8O2a3bDpGdzcHJlZml4Pl1dIEI8RTxndD4+IEk8U291cmNlcz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMToxNworbXNnaWQgIiIKKyJCPGRwa2ctc2NhbnNvdXJjZXM+IHNjYW5zIHRoZSBnaXZlbiBJPGJpbmFyeS1kaXI+IGZvciBJPC5kc2M+IGZpbGVzLiAgVGhlc2UgIgorImFyZSB1c2VkIHRvIGNyZWF0ZSBhIERlYmlhbiBzb3VyY2UgaW5kZXgsIHdoaWNoIGlzIG91dHB1dCB0byBzdGRvdXQuIgorbXNnc3RyICIiCisiQjxkcGtnLXNjYW5zb3VyY2VzPiBzw7ZrZXIgZ2Vub20gZGVuIGdpdm5hIEk8Ymluw6Rya2F0YWxvZ2VuPiBlZnRlciBJPC5kc2M+LSIKKyJmaWxlci4gRGUgYW52w6RuZHMgZsO2ciBhdHQgc2thcGEgZXR0IERlYmlhbmvDpGxsa29kc2luZGV4LCB2aWxrZXQgc2tyaXZzIHDDpSAiCisic3RhbmRhcmQgdXQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6MjgKK21zZ2lkICIiCisiVGhlIEk8b3ZlcnJpZGUtZmlsZT4sIGlmIGdpdmVuLCBpcyB1c2VkIHRvIHNldCBwcmlvcml0aWVzIGluIHRoZSByZXN1bHRpbmcgIgorImluZGV4IHJlY29yZHMgYW5kIHRvIG92ZXJyaWRlIHRoZSBtYWludGFpbmVyIGZpZWxkIGdpdmVuIGluIHRoZSBJPC5kc2M+ICIKKyJmaWxlcy4gVGhlIGZpbGUgY2FuIGJlIGNvbXByZXNzZWQuIFNlZSBCPGRlYi1vdmVycmlkZT4oNSkgIGZvciB0aGUgZm9ybWF0IG9mICIKKyJ0aGlzIGZpbGUuIFxccy0xTkI6XFxzMCBTaW5jZSB0aGUgb3ZlcnJpZGUgZmlsZSBpcyBpbmRleGVkIGJ5IGJpbmFyeSwgbm90ICIKKyJzb3VyY2UsIHBhY2thZ2VzLCB0aGVyZSdzIGEgYml0IG9mIGEgcHJvYmxlbSBoZXJlLiBUaGUgY3VycmVudCAiCisiaW1wbGVtZW50YXRpb24gdXNlcyB0aGUgaGlnaGVzdCBwcmlvcml0eSBvZiBhbGwgdGhlIGJpbmFyeSBwYWNrYWdlcyBwcm9kdWNlZCAiCisiYnkgYSBJPC5kc2M+IGZpbGUgZm9yIHRoZSBwcmlvcml0eSBvZiB0aGUgc291cmNlIHBhY2thZ2UsIGFuZCB0aGUgb3ZlcnJpZGUgIgorImVudHJ5IGZvciB0aGUgZmlyc3QgYmluYXJ5IHBhY2thZ2UgbGlzdGVkIGluIHRoZSBJPC5kc2M+IGZpbGUgdG8gbW9kaWZ5ICIKKyJtYWludGFpbmVyIGluZm9ybWF0aW9uLiBUaGlzIG1pZ2h0IGNoYW5nZS4iCittc2dzdHIgIiIKKyJJPMOWdmVyc3R5cm5pbmdzZmlsPmVuLCBvbSBkZW4gYW5nZXMsIGFudsOkbmRzIGbDtnIgYXR0IHN0w6RsbGEgaW4gcHJpb3JpdGV0ZXIgaSAiCisiZGUgc2thcGFkZSBpbmRleHBvc3Rlcm5hLCBzYW10IGbDtnIgYXR0IGVyc8OkdHRhIGbDpGx0IGRlIHBha2V0YW5zdmFyaWdhIGdlciBpICIKKyJJPC5kc2M+LWZpbGVybmEuIEZpbGVuIGthbiB2YXJhIGtvbXByaW1lcmFkLiBTZSBCPGRlYi1vdmVycmlkZT4oNSkgZsO2ciBlbiAiCisiYmVza3Jpdm5pbmcgYXYgZm9ybWF0ZXQgZsO2ciBkZW5uYSBmaWwuIFxccy0xT2JzIVxcczAgRWZ0ZXJzb20gIgorIsO2dmVyc3R5cm5pbmdzZmlsZW4gaW5kZXhlcmFyIHBlciBiaW7DpHJwYWtldCwgaW50ZSBrw6RsbGtvZHNwYWtldCwgdXBwc3TDpXIgZGV0ICIKKyJldHQgcHJvYmxlbSBow6RyLiBOdXZhcmFuZGUgaW1wbGVtZW50YXRpb24gYW52w6RuZGVyIGRlbiBow7Znc3RhIHByaW9yaXRldGVuIGF2ICIKKyJzYW10bGlnYSBiaW7DpHJwYWtldCBzb20gc2thcGFzIGF2IGVuIEk8LmRzYz4tZmlsIHNvbSBwcmlvcml0ZXQgZsO2ciAiCisia8OkbGxrb2RzcGFrZXRldCwgb2NoIMO2dmVyc3R5cm5pbmdzcG9zdGVuIGbDtnIgZGV0IGbDtnJzdGEgYmluw6RycGFrZXQgc29tICIKKyJsaXN0YXMgaSBJPC5kc2M+LWZpbGVuIGbDtnIgYXR0IGVyc8OkdHRhIGluZm9ybWF0aW9uIGZyw6VuIHBha2V0YW5zdmFyaWdhLiAiCisiRGV0dGEga2FuIGtvbW1hIGF0dCDDpG5kcmFzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2Fuc291cmNlcy4xOjMyCittc2dpZCAiIgorIlRoZSBJPHBhdGgtcHJlZml4PiwgaWYgZ2l2ZW4sIGlzIHByZXBlbmRlZCB0byB0aGUgZGlyZWN0b3J5IGZpZWxkIGluIHRoZSAiCisiZ2VuZXJhdGVkIHNvdXJjZSBpbmRleC4gWW91IGdlbmVyYWxseSB1c2UgdGhpcyB0byBtYWtlIHRoZSBkaXJlY3RvcnkgZmllbGRzICIKKyJjb250YWluIHRoZSBwYXRoIGZyb20gdGhlIHRvcCBvZiB0aGUgRGViaWFuIGFyY2hpdmUgaGllcmFyY2h5LiIKK21zZ3N0ciAiIgorIkk8c8O2a3bDpGdzcHJlZml4PiBsw6RnZ3MsIG9tIGRlbiBhbmdlcywgdGlsbCBpIGLDtnJqYW4gYXYga2F0YWxvZ2bDpGx0ZXQgaSBkZXQgIgorInNrYXBhZGUga8OkbGxrb2RzaW5kZXhldC4gRHUgYW52w6RuZGVyIGRldCBub3JtYWx0IHRpbGwgYXR0IGfDtnJhIHPDpSBhdHQgIgorImthdGFsb2dmw6RsdGVuIGlubmVow6VsbGVyIHPDtmt2w6RnZW4gZnLDpW4gdG9wcGVuIGF2IERlYmlhbmFya2l2aGllcmFya2luLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zY2Fuc291cmNlcy4xOjQzCittc2dpZCAiIgorIkI8Tm90ZTo+IElmIHlvdSB3YW50IHRvIGFjY2VzcyB0aGUgZ2VuZXJhdGVkIFNvdXJjZXMgZmlsZSB3aXRoIEI8YXB0Pig4KSAgIgorInlvdSB3aWxsIHByb2JhYmx5IG5lZWQgdG8gY29tcHJlc3MgdGhlIGZpbGUgd2l0aCBCPGd6aXA+KDEpICAoZ2VuZXJhdGluZyBhICIKKyJTb3VyY2VzLmd6IGZpbGUpLiBhcHQgaWdub3JlcyB1bmNvbXByZXNzZWQgU291cmNlcyBmaWxlcyBleGNlcHQgb24gbG9jYWwgIgorImFjY2VzcyAoaS5lLiAgQjxmaWxlOi8vPiBzb3VyY2VzKS4iCittc2dzdHIgIiIKKyJCPE9ic2VydmVyYTo+IE9tIGR1IHZpbGwgbMOkc2EgZGVuIHNrYXBhZGUgU291cmNlcy1maWxlbiBtZWQgQjxhcHQ+KDgpIG3DpXN0ZSAiCisiZHUgYW50YWdsaWdlbiBrb21wcmltZXJhIGZpbGVuIG1lZCBCPGd6aXA+KDEpICh2aWxrZXQgc2thcGFyIGZpbGVuIFNvdXJjZXMuIgorImd6KS4gYXB0IGlnbm9yZXJhciBva29tcHJpbWVyYWRlIFNvdXJjZXMtZmlsZXIsIGbDtnJ1dG9tIHZpZCBsb2thbCDDpXRrb21zdCAiCisiKGR2cy4gQjxmaWxlOi8vPi1rw6RsbG9yKS4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6NDUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1uPiwgQjwtLW5vLXNvcnQ+IgorbXNnc3RyICJCPC1uPiwgQjwtLW5vLXNvcnQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6NDgKK21zZ2lkICIiCisiRG9uJ3Qgc29ydCB0aGUgaW5kZXggcmVjb3Jkcy4gTm9ybWFsbHkgdGhleSBhcmUgc29ydGVkIGJ5IHNvdXJjZSBwYWNrYWdlICIKKyJuYW1lLiIKK21zZ3N0ciAiIgorIlNvcnRlcmEgaW50ZSBpbmRleHBvc3Rlcm5hLiBEZSBzb3J0ZXJhcyBub3JtYWx0IGVmdGVyIG5hbW4gcMOlICIKKyJrw6RsbGtvZHNwYWtldGV0LiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMTo1NAorIywgbm8td3JhcAorbXNnaWQgIkI8LXM+LCBCPC0tc291cmNlLW92ZXJyaWRlPiBJPGZpbGU+IgorbXNnc3RyICJCPC1zPiwgQjwtLXNvdXJjZS1vdmVycmlkZT4gSTxmaWw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6NTgKK21zZ2lkICIiCisiVXNlIEk8ZmlsZT4gYXMgdGhlIHNvdXJjZSBvdmVycmlkZSBmaWxlICh0aGUgZmlsZSBjYW4gYmUgY29tcHJlc3NlZCkuICBUaGUgIgorImRlZmF1bHQgaXMgdGhlIG5hbWUgb2YgdGhlIG92ZXJyaWRlIGZpbGUgeW91IHNwZWNpZmllZCB3aXRoIEk8LnNyYz4gYXBwZW5kZWQuIgorbXNnc3RyICIiCisiQW52w6RuZCBJPGZpbD4gc29tIMO2dmVyc3R5cm5pbmdzZmlsIGbDtnIga8OkbGxrb2RlbiAoZmlsZW4ga2FuIHZhcmEgIgorImtvbXByaW1lcmFkKS4gU3RhbmRhcmRuYW1uZXQgw6RyIG5hbW5ldCBww6UgZGVuIMO2dmVyc3R5cm5pbmdzZmlsIGR1IGFuZ2F2LCBtZWQgIgorInRpbGzDpGdnZXQgSTwuc3JjPi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMTo2NAorbXNnaWQgIiIKKyJUaGUgc291cmNlIG92ZXJyaWRlIGZpbGUgaXMgaW4gYSBkaWZmZXJlbnQgZm9ybWF0IGZyb20gdGhlIGJpbmFyeSBvdmVycmlkZSAiCisiZmlsZS4gSXQgY29udGFpbnMgb25seSB0d28gd2hpdGVzcGFjZSBzZXBhcmF0ZWQgZmllbGRzLCB0aGUgZmlyc3QgaXMgdGhlICIKKyJzb3VyY2UgcGFja2FnZSBuYW1lIGFuZCB0aGUgc2Vjb25kIGlzIHRoZSBzZWN0aW9uLiBCbGFuayBsaW5lcyBhbmQgY29tbWVudCAiCisibGluZXMgYXJlIGlnbm9yZWQgaW4gdGhlIG5vcm1hbCBtYW5uZXIuIElmIGEgcGFja2FnZSBhcHBlYXJzIGluIGJvdGggZmlsZXMgIgorInRoZSBzb3VyY2Ugb3ZlcnJpZGUgdGFrZXMgcHJlY2VkZW5jZSBmb3Igc2V0dGluZyB0aGUgc2VjdGlvbi4iCittc2dzdHIgIiIKKyJLw6RsbGtvZHPDtnZlcnN0eXJuaW5nc2ZpbGVuIGhhciBldHQgYW5uYXQgZm9ybWF0IMOkbiBiaW7DpHLDtnZlcnN0eXJuaW5nc2ZpbGVuLiAiCisiRGVuIGlubmVow6VsbGVyIGVuZGFzdCB0dsOlIGbDpGx0IGF2ZGVsYWRlIG1lZCBibGFua3RlY2tlbiwgZMOkciBkZXQgZsO2cnN0YSDDpHIgIgorIm5hbW5ldCBww6Uga8OkbGxrb2RzcGFrZXRldCBvY2ggZGV0IGFuZHJhIMOkciBzZWt0aW9uZW4uIFRvbW1hIHJhZGVyIG9jaCAiCisia29tbWVudGFyZXIgaWdub3JlcmFzIHDDpSB2YW5saWd0IHPDpHR0LiBPbSBldHQgcGFrZXQgc3BlY2lmaWNlcmFzIGkgYsOlZGEgIgorImZpbGVybmEga29tbWVyIGvDpGxsa29kc8O2dmVyc3R5cm5pbmdzZmlsZW4gZsO2cnN0IGbDtnIgYXR0IHbDpGxqYSBzZWt0aW9uLiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMTo2NAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1kZWJ1Zz4iCittc2dzdHIgIkI8LS1kZWJ1Zz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2NhbnNvdXJjZXMuMTo2NgorbXNnaWQgIlR1cm4gZGVidWdnaW5nIG9uLiIKK21zZ3N0ciAiU2zDpSBww6UgZmVsc8O2a25pbmcuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6NzUKK21zZ2lkICJCPGRlYi1vdmVycmlkZT4oNSksIEI8ZGViLWV4dHJhLW92ZXJyaWRlPig1KSwgQjxkcGtnLXNjYW5wYWNrYWdlcz4oMSkuIgorbXNnc3RyICJCPGRlYi1vdmVycmlkZT4oNSksIEI8ZGViLWV4dHJhLW92ZXJyaWRlPig1KSwgQjxkcGtnLXNjYW5wYWNrYWdlcz4oMSkuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNjYW5zb3VyY2VzLjE6NzcKK21zZ2lkICJSb2RlcmljayBTY2hlcnRsZXIgRTxsdD5yb2Rlcmlja0Bhcmdvbi5vcmdFPGd0PiIKK21zZ3N0ciAiUm9kZXJpY2sgU2NoZXJ0bGVyIEU8bHQ+cm9kZXJpY2tAYXJnb24ub3JnRTxndD4iCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLXNobGliZGVwcy4xOjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLXNobGliZGVwcyIKK21zZ3N0ciAiZHBrZy1zaGxpYmRlcHMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6NAorbXNnaWQgImRwa2ctc2hsaWJkZXBzIC0gZ2VuZXJhdGUgc2hhcmVkIGxpYnJhcnkgc3Vic3R2YXIgZGVwZW5kZW5jaWVzIgorbXNnc3RyICJkcGtnLXNobGliZGVwcyAtIHNrYXBhciBzdWJzdHZhci1iZXJvZW5kZW4gZsO2ciBkZWxhZGUgYmlibGlvdGVrIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjgKK21zZ2lkICJCPGRwa2ctc2hsaWJkZXBzPiBbSTxvcHRpb24+Li4uXSBbQjwtZT5dSTxleGVjdXRhYmxlPiBbSTxvcHRpb24+Li4uXSIKK21zZ3N0ciAiQjxkcGtnLXNobGliZGVwcz4gW0k8ZmxhZ2dhPi4uLl0gW0I8LWU+XUk8cHJvZ3JhbWZpbD4gW0k8ZmxhZ2dhPi4uLl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjIKK21zZ2lkICIiCisiQjxkcGtnLXNobGliZGVwcz4gY2FsY3VsYXRlcyBzaGFyZWQgbGlicmFyeSBkZXBlbmRlbmNpZXMgZm9yIGV4ZWN1dGFibGVzICIKKyJuYW1lZCBpbiBpdHMgYXJndW1lbnRzLiBUaGUgZGVwZW5kZW5jaWVzIGFyZSBhZGRlZCB0byB0aGUgc3Vic3RpdHV0aW9uICIKKyJ2YXJpYWJsZXMgZmlsZSBCPGRlYmlhbi9zdWJzdHZhcnM+IGFzIHZhcmlhYmxlIG5hbWVzIEI8c2hsaWJzOiIKKyI+STxkZXBlbmRlbmN5ZmllbGQ+IHdoZXJlIEk8ZGVwZW5kZW5jeWZpZWxkPiBpcyBhIGRlcGVuZGVuY3kgZmllbGQgbmFtZS4gQW55ICIKKyJvdGhlciB2YXJpYWJsZXMgc3RhcnRpbmcgd2l0aCBCPHNobGliczo+IGFyZSByZW1vdmVkIGZyb20gdGhlIGZpbGUuIgorbXNnc3RyICIiCisiQjxkcGtnLXNobGliZGVwcz4gYmVyw6RrbmFyIGJlcm9lbmRlbiBtZWxsYW4gZXhla3ZlcmJhcmEgZmlsZXIgc29tIGFuZ2VzIHNvbSAiCisiYXJndW1lbnQgb2NoIGRlbGFkZSBiaWJsaW90ZWsuIEJlcm9lbmRlbmEgbMOkZ2dzIHRpbGwgaSAiCisic3Vic3RpdHVlcmluZ3N2YXJpYWJlbGZpbGVuIEI8ZGViaWFuL3N1YnN0dmFycz4gc29tIHZhcmlhYmxlciBtZWQgbmFtbmVuICIKKyJCPHNobGliczo+STxiZXJvZW5kZWbDpGx0PiBkw6RyIEk8YmVyb2VuZGVlZsOkbHQ+IMOkciBldHQgYmVyb2VuZGVmw6RsdHNuYW1uLiAiCisiQWxsYSBhbmRyYSB2YXJpYWJsZXIgc29tIGLDtnJqYXIgcMOlIEk8c2hsaWJzOj4gdGFzIGJvcnQgdXIgZmlsZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjQ1Cittc2dpZCAiIgorIkI8ZHBrZy1zaGxpYmRlcHM+IGhhcyB0d28gcG9zc2libGUgc291cmNlcyBvZiBpbmZvcm1hdGlvbiB0byBnZW5lcmF0ZSAiCisiZGVwZW5kZW5jeSBpbmZvcm1hdGlvbi4gRWl0aGVyIEk8c3ltYm9scz4gZmlsZXMgb3IgSTxzaGxpYnM+IGZpbGVzLiBGb3IgZWFjaCAiCisiYmluYXJ5IHRoYXQgQjxkcGtnLXNobGliZGVwcz4gYW5hbHl6ZXMsIGl0IGZpbmRzIG91dCB0aGUgbGlzdCBvZiBsaWJyYXJpZXMgIgorInRoYXQgaXQncyBsaW5rZWQgd2l0aC4gIFRoZW4sIGZvciBlYWNoIGxpYnJhcnksIGl0IGxvb2tzIHVwIGVpdGhlciB0aGUgIgorIkk8c3ltYm9scz4gZmlsZSwgb3IgdGhlIEk8c2hsaWJzPiBmaWxlIChpZiB0aGUgZm9ybWVyIGRvZXNuJ3QgZXhpc3Qgb3IgaWYgIgorImRlYmlhbi9zaGxpYnMubG9jYWwgY29udGFpbnMgdGhlIHJlbGV2YW50IGRlcGVuZGVuY3kpLiBCb3RoIGZpbGVzIGFyZSAiCisic3VwcG9zZWQgdG8gYmUgcHJvdmlkZWQgYnkgdGhlIGxpYnJhcnkgcGFja2FnZSBhbmQgc2hvdWxkIHRodXMgYmUgYXZhaWxhYmxlICIKKyJhcyAvdmFyL2xpYi9kcGtnL2luZm8vSTxwYWNrYWdlPi5JPHN5bWJvbHM+IG9yIC92YXIvbGliL2Rwa2cvaW5mby9JPHBhY2thZ2U+LiIKKyJJPHNobGlicz4uIFRoZSBwYWNrYWdlIG5hbWUgaXMgaWRlbnRpZmllZCBpbiB0d28gc3RlcHM6IGZpbmQgdGhlIGxpYnJhcnkgIgorImZpbGUgb24gdGhlIHN5c3RlbSAobG9va2luZyBpbiB0aGUgc2FtZSBkaXJlY3RvcmllcyB0aGF0IEI8bGQuc28+IHdvdWxkICIKKyJ1c2UpLCB0aGVuIHVzZSBCPGRwa2cgLVMgPkk8bGlicmFyeS1maWxlPiB0byBsb29rdXAgdGhlIHBhY2thZ2UgcHJvdmlkaW5nICIKKyJ0aGUgbGlicmFyeS4iCittc2dzdHIgIiIKKyJCPGRwa2ctc2hsaWJkZXBzPiBrYW4gZ2VuZXJlcmEgYmVyb2VuZGVpbmZvcm1hdGlvbiBmcsOlbiB0dsOlICIKKyJpbmZvcm1hdGlvbnNrw6RsbG9yLCBhbnRpbmdlbiBmaWxlbiBJPHN5bWJvbHM+IGVsbGVyIGZpbGVuIEk8c2hsaWJzPi4gRsO2ciAiCisidmFyamUgYmluw6RyZmlsIHNvbSBhbmFseXNlcmFzIGF2IEI8ZHBrZy1zaGxpYmRlcHM+IHRhcyBlbiBsaXN0YSBmcmFtIMO2dmVyICIKKyJ2aWxrYSBiaWJsaW90ZWsgZGUgw6RyIGzDpG5rYWRlIG1vdC4gUHJvZ3JhbW1ldCBzbMOlciBzZWRhbiB1cHAgdmFyamUgYmlibGlvdGVrICIKKyJpIGZpbGVuIEk8c3ltYm9scz4sIGVsbGVyIGkgZmlsZW4gSTxzaGxpYnM+IChvbSBkZW4gZsO2cnN0bsOkbW5kYSBpbnRlICIKKyJleGlzdGVyYXIgZWxsZXIgb20gZGViaWFuL3NobGlicy5sb2NhbCBpbm5laMOlbGxlciBldHQgcmVsZXZhbnQgYmVyb2VuZGUpLiApLiAiCisiRGUgYsOlZGEgZmlsZXJuYSBza2FsbCB0aWxsaGFuZGFow6VsbGFzIGF2IGJpYmxpb3Rla3NwYWtldGV0IG9jaCBib3JkZSBkw6RyZsO2ciAiCisidmFyYSB0aWxsZ8OkbmdsaWdhIHNvbSAvdmFyL2xpYi9kcGtnL2luZm8vSTxwYWtldD4uSTxzeW1ib2xzPiBlbGxlciAvdmFyL2xpYi8iCisiZHBrZy9pbmZvL0k8cGFrZXQ+Lkk8c2hsaWJzPi4gUGFrZXRuYW1uZXQgaWRlbnRpZmllcmFzIGkgdHbDpSBzdGVnOiAiCisiYmlibGlvdGVrc2ZpbGVuIGxva2FsaXNlcmFzIHDDpSBzeXN0ZW1ldCAoZ2Vub20gYXR0IHNsw6UgdXBwIGkgZGUga2F0YWxvZ2VyICIKKyJCPGxkLnNvPiBza3VsbGUgYW52w6RudCksIG9jaCBkw6RyZWZ0ZXIgYW52w6RuZHMgQjxkcGtnIC1TPiBJPGJpYmxpb3Rla3NmaWw+ICIKKyJmw7ZyIGF0dCBzbMOlIHVwcCB2aWxrZXQgcGFrZXQgYmlibGlvdGVrZXQga29tbWVyIGZyw6VuLiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc2hsaWJkZXBzLjE6NDUKKyMsIG5vLXdyYXAKK21zZ2lkICJTeW1ib2xzIGZpbGVzIgorbXNnc3RyICJTeW1ib2xmaWxlciIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTo1MAorbXNnaWQgIiIKKyJTeW1ib2xzIGZpbGVzIGNvbnRhaW4gZmluZXItZ3JhaW5lZCBkZXBlbmRlbmN5IGluZm9ybWF0aW9uIGJ5IHByb3ZpZGluZyB0aGUgIgorIm1pbmltdW0gZGVwZW5kZW5jeSBmb3IgZWFjaCBzeW1ib2wgdGhhdCB0aGUgbGlicmFyeSBleHBvcnRzLiBUaGUgc2NyaXB0ICIKKyJ0cmllcyB0byBmaW5kIGEgc3ltYm9scyBmaWxlIGFzc29jaWF0ZWQgdG8gYSBsaWJyYXJ5IHBhY2thZ2UgaW4gdGhlICIKKyJmb2xsb3dpbmcgcGxhY2VzIChmaXJzdCBtYXRjaCBpcyB1c2VkKToiCittc2dzdHIgIiIKKyJTeW1ib2xmaWxlciBpbm5laMOlbGxlciBtZXIgZmlua29ybmlnIGJlcm9lbmRlaW5mb3JtYXRpb24gZ2Vub20gYXR0IGFuZ2UgZGV0ICIKKyJtaW5zdGEgYmVyb2VuZGV0IGbDtnIgdmFyamUgc3ltYm9sIHNvbSBleHBvcnRlcmFzIGF2IGJpYmxpb3Rla2V0LiBTa3JpcHRldCAiCisiZsO2cnPDtmtlciBoaXR0YSBkZSBzeW1ib2xlciBzb20gw6RyIGFzc29jaWVyYWRlIG1lZCBldHQgYmlibGlvdGVrIHDDpSBmw7ZsamFuZGUgIgorInBsYXRzZXIgKGRlbiBmw7Zyc3RhIHRyw6RmZmVuIGFudsOkbmRzKToiCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLXNobGliZGVwcy4xOjUwCisjLCBuby13cmFwCittc2dpZCAiZGViaWFuLyovREVCSUFOL3N5bWJvbHMiCittc2dzdHIgImRlYmlhbi8qL0RFQklBTi9zeW1ib2xzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjU4Cittc2dpZCAiIgorIlNoYXJlZCBsaWJyYXJ5IGluZm9ybWF0aW9uIGdlbmVyYXRlZCBieSB0aGUgY3VycmVudCBidWlsZCBwcm9jZXNzIHRoYXQgYWxzbyAiCisiaW52b2tlZCBCPGRwa2ctc2hsaWJkZXBzPi4gIFRoZXkgYXJlIGdlbmVyYXRlZCBieSBCPGRwa2ctZ2Vuc3ltYm9scz4oMSkuICAiCisiVGhleSBhcmUgb25seSB1c2VkIGlmIHRoZSBsaWJyYXJ5IGlzIGZvdW5kIGluIGEgcGFja2FnZSdzIGJ1aWxkIHRyZWUuIFRoZSAiCisic3ltYm9scyBmaWxlIGluIHRoYXQgYnVpbGQgdHJlZSB0YWtlcyBwcmVjZWRlbmNlIG92ZXIgc3ltYm9scyBmaWxlcyBmcm9tICIKKyJvdGhlciBiaW5hcnkgcGFja2FnZXMuIgorbXNnc3RyICIiCisiSW5mb3JtYXRpb24gb20gZGVsYWRlIGJpYmxpb3RlayBzb20gc2thcGF0cyBhdiBkZW4gYWt0dWVsbGEgYnlnZ3Byb2NlZHVyZW4gIgorInNvbSBvY2tzw6UgYW5yb3BhZGUgQjxkcGtnLXNobGliZGVwcz4uIERlIGdlbmVyZXJhcyBhdiBCPGRwa2ctZ2Vuc3ltYm9scz4oMSkuICIKKyJEZSBhbnbDpG5kcyBlbmRhc3Qgb20gYmlibGlvdGVrZXQgZmlubnMgaSBwYWtldGV0cyBieWdncsOkZC4gRmlsZW4gc3ltYm9scyBpICIKKyJkZXQgYnlnZ3Ryw6RkZXQgZ8OlciBmw7ZyZSBzeW1ib2xzLWZpbGVyIGZyw6VuIGFuZHJhIGJpbsOkcnBha2V0LiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6NTgKKyMsIG5vLXdyYXAKK21zZ2lkICIvZXRjL2Rwa2cvc3ltYm9scy9JPHBhY2thZ2U+LnN5bWJvbHMuSTxhcmNoPiIKK21zZ3N0ciAiL2V0Yy9kcGtnL3N5bWJvbHMvSTxwYWNrYWdlPi5zeW1ib2xzLkk8YXJraXRla3R1cj4iCisKKyMuIHR5cGU6IElQCisjOiBkcGtnLXNobGliZGVwcy4xOjU5CisjLCBuby13cmFwCittc2dpZCAiL2V0Yy9kcGtnL3N5bWJvbHMvSTxwYWNrYWdlPi5zeW1ib2xzIgorbXNnc3RyICIvZXRjL2Rwa2cvc3ltYm9scy9JPHBha2V0Pi5zeW1ib2xzIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjYzCittc2dpZCAiIgorIlBlci1zeXN0ZW0gb3ZlcnJpZGluZyBzaGFyZWQgbGlicmFyeSBkZXBlbmRlbmN5IGluZm9ybWF0aW9uLiAgSTxhcmNoPiBpcyB0aGUgIgorImFyY2hpdGVjdHVyZSBvZiB0aGUgY3VycmVudCBzeXN0ZW0gKG9idGFpbmVkIGJ5IEI8ZHBrZy1hcmNoaXRlY3R1cmUgLSIKKyJxREVCX0hPU1RfQVJDSD4pLiIKK21zZ3N0ciAiIgorIsOWdmVyc3R5cm5pbmdzZmlsIGbDtnIgYmVyb2VuZGVpbmZvcm1hdGlvbiBmw7ZyIGRlbGFkZSBiaWJsaW90ZWssIHBlciBzeXN0ZW0uICIKKyJJPGFya2l0ZWt0dXI+IMOkciBkZXQgYWt0dWVsbGEgc3lzdGVtZXRzIGFya2l0ZWt0dXIgKGjDpG10YXMgZnLDpW4gQjxkcGtnLSIKKyJhcmNoaXRlY3R1cmUgLXFERUJfSE9TVF9BUkNIPikuIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1zaGxpYmRlcHMuMTo2MworIywgbm8td3JhcAorbXNnaWQgIk91dHB1dCBmcm9tIFxcKGxxQjxkcGtnLXF1ZXJ5IC0tY29udHJvbC1wYXRoPiBJPHBhY2thZ2U+IHN5bWJvbHNcXChycSIKK21zZ3N0ciAiVXRkYXRhIGZyw6VuIFxcKHJxQjxkcGtnLXF1ZXJ5IC0tY29udHJvbC1wYXRoPiBJPHBhY2thZ2U+IHN5bWJvbHNcXChycSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTo2NiBkcGtnLXNobGliZGVwcy4xOjEwMAorbXNnaWQgIiIKKyJQYWNrYWdlLXByb3ZpZGVkIHNoYXJlZCBsaWJyYXJ5IGRlcGVuZGVuY3kgaW5mb3JtYXRpb24uICBVbmxlc3Mgb3ZlcnJpZGRlbiAiCisiYnkgLS1hZG1pbmRpciwgdGhvc2UgZmlsZXMgYXJlIGxvY2F0ZWQgaW4gL3Zhci9saWIvZHBrZy4iCittc2dzdHIgIiIKKyJQYWtldGxva2FsIMO2dmVyc3R5cmFuZGUgYmVyb2VuZGVpbmZvcm1hdGlvbiBmw7ZyIGRlbGFkZSBiaWJsaW90ZWsuIEZpbGVybmEgIgorImJlZmlubmVyIHNpZyBpIC92YXIvbGliL2Rwa2cgb20gaW50ZSDDtnZlcnN0eXJ0IG1lZCAtLWFkbWluZGlyLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMTo3MworbXNnaWQgIiIKKyJXaGlsZSBzY2FubmluZyB0aGUgc3ltYm9scyB1c2VkIGJ5IGFsbCBiaW5hcmllcywgQjxkcGtnLXNobGliZGVwcz4gcmVtZW1iZXJzICIKKyJ0aGUgKGJpZ2dlc3QpIG1pbmltYWwgdmVyc2lvbiBuZWVkZWQgZm9yIGVhY2ggbGlicmFyeS4gQXQgdGhlIGVuZCBvZiB0aGUgIgorInByb2Nlc3MsIGl0IGlzIGFibGUgdG8gd3JpdGUgb3V0IHRoZSBtaW5pbWFsIGRlcGVuZGVuY3kgZm9yIGV2ZXJ5IGxpYnJhcnkgIgorInVzZWQgKHByb3ZpZGVkIHRoYXQgdGhlIGluZm9ybWF0aW9uIG9mIHRoZSBJPHN5bWJvbHM+IGZpbGVzIGFyZSBhY2N1cmF0ZSkuIgorbXNnc3RyICIiCisiQjxkcGtnLXNobGlicz4ga29tbWVyIGlow6VnIGRlbiAoc3TDtnJzdGEpIG1pbmltYWxhIHZlcnNpb24gc29tIGJlaMO2dnMgYXYgIgorInZhcmplIGJpYmxpb3RlayBuw6RyIGRlbiBzw7ZrZXIgZ2Vub20gZGUgc3ltYm9sZXIgc29tIGFudsOkbmRzIGF2IGFsbGEgIgorImJpbsOkcmZpbGVybmEuIE7DpHIgcHJvY2VkdXJlbiDDpHIgYXZzbHV0YWQga2FuIGRlbiB2aXNhIGRldCBtaW5zdGEgYmVyb2VuZGUgIgorInNvbSBiZWjDtnZzIGF2IGFsbGEgYmlibGlvdGVrIHNvbSBhbnbDpG5kcyAoc8OlIHRpbGx2aWRhIGluZm9ybWF0aW9uZW4gaSAiCisiSTxzeW1ib2xzPi1maWxlcm5hIMOkciBrb3JyZWt0KS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6ODAKK21zZ2lkICIiCisiQXMgYSBzYWZlLWd1YXJkIG1lYXN1cmUsIGEgc3ltYm9scyBmaWxlIGNhbiBwcm92aWRlIGEgSTxCdWlsZC1EZXBlbmRzLSIKKyJQYWNrYWdlPiBtZXRhLWluZm9ybWF0aW9uIGZpZWxkIGFuZCBCPGRwa2ctc2hsaWJkZXBzPiB3aWxsIGV4dHJhY3QgdGhlICIKKyJtaW5pbWFsIHZlcnNpb24gcmVxdWlyZWQgYnkgdGhlIGNvcnJlc3BvbmRpbmcgcGFja2FnZSBpbiB0aGUgQnVpbGQtRGVwZW5kcyAiCisiZmllbGQgYW5kIHVzZSB0aGlzIHZlcnNpb24gaWYgaXQncyBoaWdoZXIgdGhhbiB0aGUgbWluaW1hbCB2ZXJzaW9uIGNvbXB1dGVkICIKKyJieSBzY2FubmluZyBzeW1ib2xzLiIKK21zZ3N0ciAiIgorIlNvbSBlbiBzw6RrZXJoZXRzw6V0Z8OkcmQga2FuIGVuIHN5bWJvbHMtZmlsIGlubmVow6VsbGEgbWV0YWluZm9ybWF0aW9uc2bDpGx0ZXQgIgorIkk8QnVpbGQtRGVwZW5kcy1QYWNrYWdlPiwgdmFycMOlIEI8ZHBrZy1zaGxpYmRlcHM+IGjDpG10YXIgdmlsa2VuIG1pbnN0YSAiCisidmVyc2lvbiBzb20gYmVow7Z2cyBmw7ZyIHBha2V0ZXQgdXIgQnVpbGQtRGVwZW5kcy1mw6RsdGV0IG9jaCBhbnbDpG5kZXIgZGVubmEgIgorInZlcnNpb24gb20gZGVuIMOkciBow7ZncmUgw6RuIGRlbiBtaW5zdGEgdmVyc2lvbiBzb20gYmVyw6RrbmF0cyBnZW5vbSBhdHQgc8O2a2EgIgorImdlbm9tIHN5bWJvbGVybmEuIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zaGxpYmRlcHMuMTo4MAorIywgbm8td3JhcAorbXNnaWQgIlNobGlicyBmaWxlcyIKK21zZ3N0ciAiU2hsaWJzLWZpbGVyIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjg0Cittc2dpZCAiIgorIlNobGlicyBmaWxlcyBhc3NvY2lhdGUgZGlyZWN0bHkgYSBsaWJyYXJ5IHRvIGEgZGVwZW5kZW5jeSAod2l0aG91dCBsb29raW5nICIKKyJhdCB0aGUgc3ltYm9scykuIEl0J3MgdGh1cyBvZnRlbiBzdHJvbmdlciB0aGFuIHJlYWxseSBuZWVkZWQgYnV0IHZlcnkgc2FmZSAiCisiYW5kIGVhc3kgdG8gaGFuZGxlLiIKK21zZ3N0ciAiIgorIlNobGlicy1maWxlciBhc3NvY2llcmFyIGV0dCBiaWJsaW90ZWsgZGlyZWt0IHRpbGwgZXR0IGJlcm9lbmRlICh1dGFuIGF0dCBzZSAiCisicMOlIHN5bWJvbGVybmEpLiBEZXQgw6RyIGTDpHJmw7ZyIG9mdGFyZSBzdGFya2FyZSDDpG4gdmFkIHNvbSBlZ2VudGxpZ2VuIGJlaMO2dnMsICIKKyJtZW4gbXlja2V0IHPDpGtlcnQgb2NoIGVua2VsdCBhdHQgaGFudGVyYS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6ODcKK21zZ2lkICIiCisiVGhlIGRlcGVuZGVuY2llcyBmb3IgYSBsaWJyYXJ5IGFyZSBsb29rZWQgdXAgaW4gc2V2ZXJhbCBwbGFjZXMuIFRoZSBmaXJzdCAiCisiZmlsZSBwcm92aWRpbmcgaW5mb3JtYXRpb24gZm9yIHRoZSBsaWJyYXJ5IG9mIGludGVyZXN0IGlzIHVzZWQ6IgorbXNnc3RyICIiCisiQmVyb2VuZGVuIGbDtnIgZXR0IGJpYmxpb3RlayBzbMOlcyB1cHAgcMOlIGZsZXJhIHBsYXRzZXIuIERlbiBmw7Zyc3RhIGZpbGVuIHNvbSAiCisiaW5uZWjDpWxsZXIgaW5mb3JtYXRpb24gb20gZGV0IGludHJlc3NhbnRhIGJpYmxpb3Rla2V0IGFudsOkbmRzOiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6ODcKKyMsIG5vLXdyYXAKK21zZ2lkICJkZWJpYW4vc2hsaWJzLmxvY2FsIgorbXNnc3RyICJkZWJpYW4vc2hsaWJzLmxvY2FsIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjg5Cittc2dpZCAiUGFja2FnZS1sb2NhbCBvdmVycmlkaW5nIHNoYXJlZCBsaWJyYXJ5IGRlcGVuZGVuY3kgaW5mb3JtYXRpb24uIgorbXNnc3RyICJQYWtldGxva2FsIMO2dmVyc3R5cmFuZGUgYmVyb2VuZGVpbmZvcm1hdGlvbiBmw7ZyIGRlbGFkZSBiaWJsaW90ZWsuIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1zaGxpYmRlcHMuMTo4OQorIywgbm8td3JhcAorbXNnaWQgIi9ldGMvZHBrZy9zaGxpYnMub3ZlcnJpZGUiCittc2dzdHIgIi9ldGMvZHBrZy9zaGxpYnMub3ZlcnJpZGUiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6OTEKK21zZ2lkICJQZXItc3lzdGVtIG92ZXJyaWRpbmcgc2hhcmVkIGxpYnJhcnkgZGVwZW5kZW5jeSBpbmZvcm1hdGlvbi4iCittc2dzdHIgIlN5c3RlbXNwZWNpZmlrIMO2dmVyc3R5cmFuZGUgYmVyb2VuZGVpbmZvcm1hdGlvbiBmw7ZyIGRlbGFkZSBiaWJsaW90ZWsuIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1zaGxpYmRlcHMuMTo5MQorIywgbm8td3JhcAorbXNnaWQgImRlYmlhbi8qL0RFQklBTi9zaGxpYnMiCittc2dzdHIgImRlYmlhbi8qL0RFQklBTi9zaGxpYnMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6OTcKK21zZ2lkICIiCisiU2hhcmVkIGxpYnJhcnkgaW5mb3JtYXRpb24gZ2VuZXJhdGVkIGJ5IHRoZSBjdXJyZW50IGJ1aWxkIHByb2Nlc3MgdGhhdCBhbHNvICIKKyJpbnZva2VkIEI8ZHBrZy1zaGxpYmRlcHM+LiAgVGhleSBhcmUgb25seSB1c2VkIGlmIHRoZSBsaWJyYXJ5IGlzIGZvdW5kIGluIGEgIgorInBhY2thZ2UncyBidWlsZCB0cmVlLiBUaGUgc2hsaWJzIGZpbGUgaW4gdGhhdCBidWlsZCB0cmVlIHRha2VzIHByZWNlZGVuY2UgIgorIm92ZXIgc2hsaWJzIGZpbGVzIGZyb20gb3RoZXIgYmluYXJ5IHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorIkluZm9ybWF0aW9uIG9tIGRlbGFkZSBiaWJsaW90ZWsgc29tIHNrYXBhdHMgYXYgZGVuIGFrdHVlbGxhIGJ5Z2dwcm9jZWR1cmVuICIKKyJzb20gb2Nrc8OlIGFucm9wYWRlIEI8ZHBrZy1zaGxpYmRlcHM+LiBEZSBnZW5lcmVyYXMgYXYgQjxkcGtnLWdlbnN5bWJvbHM+KDEpLiAiCisiRGUgYW52w6RuZHMgYmFyYSBvbSBiaWJsaW90ZWtldCBmaW5ucyBpIHBha2V0ZXRzIGJ5Z2d0csOkZC4gRmlsZW4gc2hsaWJzIGkgIgorImJ5Z2d0csOkZGV0IGfDpXIgZsO2cmUgc2hsaWJzLWZpbGVyIGZyw6VuIGFuZHJhIHBha2V0LiIKKworIy4gdHlwZTogSVAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6OTcKKyMsIG5vLXdyYXAKK21zZ2lkICJPdXRwdXQgZnJvbSBcXChscUI8ZHBrZy1xdWVyeSAtLWNvbnRyb2wtcGF0aD4gSTxwYWNrYWdlPiBzaGxpYnNcXChycSIKK21zZ3N0ciAiVXRkYXRhIGZyw6VuIFxcKHJxQjxkcGtnLXF1ZXJ5IC0tY29udHJvbC1wYXRoPiBJPHBhY2thZ2U+IHNobGlic1xcKHJxIgorCisjLiB0eXBlOiBJUAorIzogZHBrZy1zaGxpYmRlcHMuMToxMDAKKyMsIG5vLXdyYXAKK21zZ2lkICIvZXRjL2Rwa2cvc2hsaWJzLmRlZmF1bHQiCittc2dzdHIgIi9ldGMvZHBrZy9zaGxpYnMuZGVmYXVsdCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToxMDIKK21zZ2lkICJQZXItc3lzdGVtIGRlZmF1bHQgc2hhcmVkIGxpYnJhcnkgZGVwZW5kZW5jeSBpbmZvcm1hdGlvbi4iCittc2dzdHIgIlN5c3RlbXNwZWNpZmlrIHN0YW5kYXJkYmVyb2VuZGVpbmZvcm1hdGlvbiBmw7ZyIGRlbGFkZSBiaWJsaW90ZWsuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjEwNgorbXNnaWQgIiIKKyJUaGUgZXh0cmFjdGVkIGRlcGVuZGVuY2llcyBhcmUgdGhlbiBkaXJlY3RseSB1c2VkIChleGNlcHQgaWYgdGhleSBhcmUgIgorImZpbHRlcmVkIG91dCBiZWNhdXNlIHRoZXkgaGF2ZSBiZWVuIGlkZW50aWZpZWQgYXMgZHVwbGljYXRlLCBvciBhcyB3ZWFrZXIgIgorInRoYW4gYW5vdGhlciBkZXBlbmRlbmN5KS4iCittc2dzdHIgIiIKKyJEZSB1dMO2a2FkZSBiZXJvZW5kZW5hIGFudsOkbmRzIHNlZGFuIGRpcmVrdCAoZsO2cnV0b20gb20gZGUgZmlsdHJlcmF0cyBib3J0ICIKKyJmw7ZyIGF0dCBkZSBpZGVudGlmaWVyYXRzIHNvbSBkdWJibGV0dGVyLCBlbGxlciBzdmFnYXJlIMOkbiBldHQgYW5uYXQgIgorImJlcm9lbmRlKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTExCittc2dpZCAiIgorIkI8ZHBrZy1zaGxpYmRlcHM+IGludGVycHJldHMgbm9uLW9wdGlvbiBhcmd1bWVudHMgYXMgZXhlY3V0YWJsZSBuYW1lcywganVzdCAiCisiYXMgaWYgdGhleSdkIGJlZW4gc3VwcGxpZWQgYXMgQjwtZT5JPGV4ZWN1dGFibGU+LiIKK21zZ3N0ciAiIgorIkI8ZHBrZy1zaGxpYmRlcHM+IHRvbGthciBhcmd1bWVudCBzb20gaW50ZSDDpHIgZmxhZ2dvciBzb20gbmFtbiBww6Uga8O2cmJhcmEgIgorImZpbGVyLCBwcmVjaXMgc29tIG9tIGRlIGFuZ2l2aXRzIHNvbSBCPC1lPkk8cHJvZ3JhbWZpbD4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zaGxpYmRlcHMuMToxMTEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1lPkk8ZXhlY3V0YWJsZT4iCittc2dzdHIgIkI8LWU+STxwcm9ncmFtZmlsPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToxMTUKK21zZ2lkICIiCisiSW5jbHVkZSBkZXBlbmRlbmNpZXMgYXBwcm9wcmlhdGUgZm9yIHRoZSBzaGFyZWQgbGlicmFyaWVzIHJlcXVpcmVkIGJ5ICIKKyJJPGV4ZWN1dGFibGU+LiIKK21zZ3N0ciAiIgorIlRhIG1lZCBiZXJvZW5kZW4gc29tIMOkciBwYXNzYXIgZsO2ciBkZWxhZGUgYmlibGlvdGVrIHNvbSBrcsOkdnMgZsO2ciAiCisiSTxwcm9ncmFtZmlsPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNobGliZGVwcy4xOjExNQorIywgbm8td3JhcAorbXNnaWQgIkI8LWQ+STxkZXBlbmRlbmN5ZmllbGQ+IgorbXNnc3RyICJCPC1kPkk8YmVyb2VuZGVmw6RsdD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTIxCittc2dpZCAiIgorIkFkZCBkZXBlbmRlbmNpZXMgdG8gYmUgYWRkZWQgdG8gdGhlIGNvbnRyb2wgZmlsZSBkZXBlbmRlbmN5IGZpZWxkICIKKyJJPGRlcGVuZGVuY3lmaWVsZD4uICAoVGhlIGRlcGVuZGVuY2llcyBmb3IgdGhpcyBmaWVsZCBhcmUgcGxhY2VkIGluIHRoZSAiCisidmFyaWFibGUgQjxzaGxpYnM6Pkk8ZGVwZW5kZW5jeWZpZWxkPi4pIgorbXNnc3RyICIiCisiTMOkZ2cgdGlsbCBiZXJvZW5kZW4gc29tIHNrYWxsIGzDpGdnYXMgdGlsbCB0aWxsIGNvbnRyb2wtZmlsZW5zIGJlcm9lbmRlZsOkbHQgIgorIkk8YmVyb2VuZGVmw6RsdD4uIChCZXJvZW5kZW4gZsO2ciBkZXR0YSBmw6RsdCBsw6RnZ3MgaW4gaSB2YXJpYWJlbG4gQjxzaGxpYnM6IgorIj5JPGJlcm9lbmRlZsOkbHQ+LikiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTMxCittc2dpZCAiIgorIlRoZSBCPC1kPkk8ZGVwZW5kZW5jeWZpZWxkPiBvcHRpb24gdGFrZXMgZWZmZWN0IGZvciBhbGwgZXhlY3V0YWJsZXMgYWZ0ZXIgIgorInRoZSBvcHRpb24sIHVudGlsIHRoZSBuZXh0IEI8LWQ+STxkZXBlbmRlbmN5ZmllbGQ+LiAgVGhlIGRlZmF1bHQgIgorIkk8ZGVwZW5kZW5jeWZpZWxkPiBpcyBCPERlcGVuZHM+LiIKK21zZ3N0ciAiIgorIkZsYWdnYW4gQjwtZD5JPGJlcm9lbmRlZsOkbHQ+IGfDpGxsZXIgZsO2ciBzYW10bGlnYSBiaW7DpHJlciBlZnRlciBmbGFnZ2FuLCBmcmFtICIKKyJ0aWxsIG7DpHN0YSBCPC1kPkk8YmVyb2VuZGVmw6RsdD4uIFN0YW5kYXJkdsOkcmRldCBmw7ZyIEk8YmVyb2VuZGVmw6RsdD4gw6RyICIKKyJCPERlcGVuZHM+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToxMzkKK21zZ2lkICIiCisiSWYgdGhlIHNhbWUgZGVwZW5kZW5jeSBlbnRyeSAob3Igc2V0IG9mIGFsdGVybmF0aXZlcykgYXBwZWFycyBpbiBtb3JlIHRoYW4gIgorIm9uZSBvZiB0aGUgcmVjb2duaXNlZCBkZXBlbmRlbmN5IGZpZWxkIG5hbWVzIEI8UHJlLURlcGVuZHM+LCBCPERlcGVuZHM+LCAiCisiQjxSZWNvbW1lbmRzPiwgQjxFbmhhbmNlcz4gb3IgQjxTdWdnZXN0cz4gdGhlbiBCPGRwa2ctc2hsaWJkZXBzPiB3aWxsICIKKyJhdXRvbWF0aWNhbGx5IHJlbW92ZSB0aGUgZGVwZW5kZW5jeSBmcm9tIGFsbCBmaWVsZHMgZXhjZXB0IHRoZSBvbmUgIgorInJlcHJlc2VudGluZyB0aGUgbW9zdCBpbXBvcnRhbnQgZGVwZW5kZW5jaWVzLiIKK21zZ3N0ciAiIgorIk9tIHNhbW1hIGthdGFsb2dwb3N0IChlbGxlciBlbiB1cHBzw6R0dG5pbmcgYWx0ZXJuYXRpdikgZsO2cmVrb21tZXIgaSBtZXIgw6RuICIKKyJldHQgYXYgZGUga8OkbmRhIGJlcm9lbmRlZsOkbHRuYW1uZW4gQjxQcmUtRGVwZW5kcz4sIEI8RGVwZW5kcz4sICIKKyJCPFJlY29tbWVuZHM+LCBCPEVuaGFuY2VzPiBlbGxlciBCPFN1Z2dlc3RzPiBzw6Uga29tbWVyIEI8ZHBrZy1zaGxpYmRlcHM+IGF0dCAiCisiYXV0b21hdGlza3QgdGEgYm9ydCBiZXJvZW5kZXQgZnLDpW4gc2FtdGxpZ2EgZsOkbHQgZsO2cnV0b20gZGV0IHNvbSBhbmdlciBkZSAiCisidmlrdGlnYXN0ZSBiZXJvZW5kZW5hLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTM5CisjLCBuby13cmFwCittc2dpZCAiQjwtcD5JPHZhcm5hbWVwcmVmaXg+IgorbXNnc3RyICJCPC1wPkk8dmFyaWFiZWxuYW1uc3ByZWZpeD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTUwCittc2dpZCAiIgorIlN0YXJ0IHN1YnN0aXR1dGlvbiB2YXJpYWJsZXMgd2l0aCBJPHZhcm5hbWVwcmVmaXg+Qjw6PiBpbnN0ZWFkIG9mIEI8c2hsaWJzOiIKKyI+LiAgTGlrZXdpc2UsIGFueSBleGlzdGluZyBzdWJzdGl0dXRpb24gdmFyaWFibGVzIHN0YXJ0aW5nIHdpdGggIgorIkk8dmFybmFtZXByZWZpeD5CPDo+IChyYXRoZXIgdGhhbiBCPHNobGliczo+KSAgYXJlIHJlbW92ZWQgZnJvbSB0aGUgdGhlICIKKyJzdWJzdGl0dXRpb24gdmFyaWFibGVzIGZpbGUuIgorbXNnc3RyICIiCisiSW5sZWQgc3Vic3RpdHVlcmluZ3N2YXJpYWJsZXIgbWVkIEk8dmFyaWFiZWxuYW1uc3ByZWZpeD5CPDo+IGkgc3TDpGxsZXQgZsO2ciAiCisiQjxzaGxpYnM6Pi4gUMOlIHNhbW1hIHPDpHR0IGtvbW1lciBiZWZpbnRsaWdhIHN1YnN0aXR1ZXJpbmdzdmFyaWFibGVyIHNvbSAiCisiaW5sZWRzIG1lZCBJPHZhcmlhYmVsbmFtbnNwcmVmaXg+Qjw6PiAoaSBzdMOkbGxldCBmw7ZyIEI8c2hsaWJzOj4pIGF0dCB0YXMgIgorImJvcnQgZnLDpW4gc3Vic3RpdHVlcmluZ3N2YXJpYWJlbGZpbGVuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToxNTYKK21zZ2lkICIiCisiUHJpbnQgc3Vic3RpdHV0aW9uIHZhcmlhYmxlIHNldHRpbmdzIHRvIHN0YW5kYXJkIG91dHB1dCwgcmF0aGVyIHRoYW4gYmVpbmcgIgorImFkZGVkIHRvIHRoZSBzdWJzdGl0dXRpb24gdmFyaWFibGVzIGZpbGUgKEI8ZGViaWFuL3N1YnN0dmFycz4gYnkgZGVmYXVsdCkuIgorbXNnc3RyICIiCisiU2tyaXYgc3Vic3RpdHVlcmluZ3N2YXJpYWJlbGluc3TDpGxsbmluZ2FyIHDDpSBzdGFuZGFyZCB1dCwgaSBzdMOkbGxldCBmw7ZyIGF0dCAiCisiZsO2cnPDtmthIGzDpGdnYSB0aWxsIGRlbSBpIHN1YnN0aXR1ZXJpbmdzdmFyaWFiZWxmaWxlbiAoc29tIHN0YW5kYXJkIEI8ZGViaWFuLyIKKyJzdWJzdHZhcnM+KS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNobGliZGVwcy4xOjE1NgorIywgbm8td3JhcAorbXNnaWQgIkI8LXQ+STx0eXBlPiIKK21zZ3N0ciAiQjwtdD5JPHR5cD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTYzCittc2dpZCAiIgorIlByZWZlciBzaGFyZWQgbGlicmFyeSBkZXBlbmRlbmN5IGluZm9ybWF0aW9uIHRhZ2dlZCBmb3IgdGhlIGdpdmVuIHBhY2thZ2UgIgorInR5cGUuIElmIG5vIHRhZ2dlZCBpbmZvcm1hdGlvbiBpcyBhdmFpbGFibGUsIGZhbGxzIGJhY2sgdG8gdW50YWdnZWQgIgorImluZm9ybWF0aW9uLiBUaGUgZGVmYXVsdCBwYWNrYWdlIHR5cGUgaXMgXCJkZWJcIi4gU2hhcmVkIGxpYnJhcnkgZGVwZW5kZW5jeSAiCisiaW5mb3JtYXRpb24gaXMgdGFnZ2VkIGZvciBhIGdpdmVuIHR5cGUgYnkgcHJlZml4aW5nIGl0IHdpdGggdGhlIG5hbWUgb2YgdGhlICIKKyJ0eXBlLCBhIGNvbG9uLCBhbmQgd2hpdGVzcGFjZS4iCittc2dzdHIgIiIKKyJGw7ZyZWRyYSBpbmZvcm1hdGlvbiBvbSBkZWxhZGUgYmlibGlvdGVrIHNvbSBtw6Rya3RzIGbDtnIgZGVuIGdpdm5hIHBha2V0dHlwZW4uICIKKyJPbSBkZXQgaW50ZSBmaW5ucyBuw6Vnb24gbcOkcmt0IGluZm9ybWF0aW9uIGFudsOkbmRzIG9tw6Rya3QuIFN0YW5kYXJkcGFrZXR0eXBlbiAiCisiw6RyIFwiZGViXCIuIEJlcm9lbmRlaW5mb3JtYXRpb24gZsO2ciBkZWxhZGUgYmlibGlvdGVrIG3DpHJrcyBmw7ZyIGVuIGdpdmVuIHR5cCAiCisiZ2Vub20gYXR0IGlubGVkYSBkZXQgbWVkIG5hbW5ldCBww6UgdHlwZW4sIGV0dCBrb2xvbiwgc2FtdCBibGFua3RlY2tlbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNobGliZGVwcy4xOjE2MworIywgbm8td3JhcAorbXNnaWQgIkI8LUw+STxsb2NhbHNobGlic2ZpbGU+IgorbXNnc3RyICJCPC1MPkk8bG9rYWwtc2hsaWJzLWZpbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTY5Cittc2dpZCAiIgorIlJlYWQgb3ZlcnJpZGluZyBzaGFyZWQgbGlicmFyeSBkZXBlbmRlbmN5IGluZm9ybWF0aW9uIGZyb20gIgorIkk8bG9jYWxzaGxpYnNmaWxlPiBpbnN0ZWFkIG9mIEI8ZGViaWFuL3NobGlicy5sb2NhbD4uIgorbXNnc3RyICIiCisiTMOkcyDDtnZlcnN0eXJhbmRlIGJlcm9lbmRlaW5mb3JtYXRpb24gb20gZGVsYWRlIGJpYmxpb3RlayBmcsOlbiBJPGxva2FsLXNobGlicy0iCisiZmlsPiBpIHN0w6RsbGV0IGbDtnIgQjxkZWJpYW4vc2hsaWJzLmxvY2FsPi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTc1Cittc2dpZCAiIgorIldyaXRlIHN1YnN0aXR1dGlvbiB2YXJpYWJsZXMgaW4gSTxzdWJzdHZhcnNmaWxlPjsgdGhlIGRlZmF1bHQgaXMgQjxkZWJpYW4vIgorInN1YnN0dmFycz4uIgorbXNnc3RyICIiCisiU2tyaXYgc3Vic3RpdHVlcmluZ3N2YXJpYWJsZXIgaSBJPHN1YnN0dmFycy1maWw+OyBzdGFuZGFyZCDDpHIgQjxkZWJpYW4vIgorInN1YnN0dmFycz4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zaGxpYmRlcHMuMToxNzUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC12PiIKK21zZ3N0ciAiQjwtVj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTgwCittc2dpZCAiIgorIkVuYWJsZSB2ZXJib3NlIG1vZGUuIE51bWVyb3VzIG1lc3NhZ2VzIGFyZSBkaXNwbGF5ZWQgdG8gZXhwbGFpbiB3aGF0IEI8ZHBrZy0iCisic2hsaWJkZXBzPiBkb2VzLiIKK21zZ3N0ciAiIgorIkFrdGl2ZXJhciBwcmF0c2FtdCBsw6RnZS4gRmxlcmEgbWVkZGVsYW5kZW4gdmlzYXMgZsO2ciBhdHQgZsO2cmtsYXJhIHZhZCBCPGRwa2ctIgorInNobGlicz4gaMOlbGxlciBww6UgbWVkLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTgwCisjLCBuby13cmFwCittc2dpZCAiQjwteD5JPHBhY2thZ2U+IgorbXNnc3RyICJCPC14Pkk8cGFrZXQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjE4NworbXNnaWQgIiIKKyJFeGNsdWRlIHRoZSBwYWNrYWdlIGZyb20gdGhlIGdlbmVyYXRlZCBkZXBlbmRlbmNpZXMuIFRoaXMgaXMgdXNlZnVsIHRvIGF2b2lkICIKKyJzZWxmLWRlcGVuZGVuY2llcyBmb3IgcGFja2FnZXMgd2hpY2ggcHJvdmlkZSBFTEYgYmluYXJpZXMgKGV4ZWN1dGFibGVzIG9yICIKKyJsaWJyYXJ5IHBsdWdpbnMpIHVzaW5nIGEgbGlicmFyeSBjb250YWluZWQgaW4gdGhlIHNhbWUgcGFja2FnZS4gVGhpcyBvcHRpb24gIgorImNhbiBiZSB1c2VkIG11bHRpcGxlIHRpbWVzIHRvIGV4Y2x1ZGUgc2V2ZXJhbCBwYWNrYWdlcy4iCittc2dzdHIgIiIKKyJVdGVzbHV0IHBha2V0ZXQgZnLDpW4gZGUgZ2VuZXJlcmFkZSBiZXJvZW5kZW5hLiBGbGFnZ2FuIMOkciBhbnbDpG5kYmFyIGbDtnIgYXR0ICIKKyJ1bmR2aWthIHNqw6RsdmJlcm9lbmRlbiBmw7ZyIHBha2V0IHNvbSBpbm5laMOlbGxlciBFTEYtYmluw6RyZXIgKGV4ZWt2ZXJiYXJhICIKKyJlbGxlciBiaWJsaW90ZWtzaW5zdGlja3Nwcm9ncmFtKSBzb20gYW52w6RuZGVyIGV0dCBiaWJsaW90ZWsgc29tIGxpZ2dlciBpICIKKyJzYW1tYSBwYWtldC4gRmxhZ2dhbiBrYW4gYW52w6RuZGFzIGZsZXJhIGfDpW5nZXIgZsO2ciBhdHQgdXRlc2x1dGEgZmxlcmEgcGFrZXQuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zaGxpYmRlcHMuMToxODcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1TPkk8cGtnYnVpbGRkaXI+IgorbXNnc3RyICJCPC1TPkk8cGFrZXRieWdna2F0YWxvZz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MTk0Cittc2dpZCAiIgorIkxvb2sgaW50byBJPHBrZ2J1aWxkZGlyPiBmaXJzdCB3aGVuIHRyeWluZyB0byBmaW5kIGEgbGlicmFyeS4gVGhpcyBpcyB1c2VmdWwgIgorIndoZW4gdGhlIHNvdXJjZSBwYWNrYWdlIGJ1aWxkcyBtdWx0aXBsZSBmbGF2b3JzIG9mIHRoZSBzYW1lIGxpYnJhcnkgYW5kIHlvdSAiCisid2FudCB0byBlbnN1cmUgdGhhdCB5b3UgZ2V0IHRoZSBkZXBlbmRlbmN5IGZyb20gYSBnaXZlbiBiaW5hcnkgcGFja2FnZS4gWW91ICIKKyJjYW4gdXNlIHRoaXMgb3B0aW9uIG11bHRpcGxlIHRpbWVzOiBkaXJlY3RvcmllcyB3aWxsIGJlIHRyaWVkIGluIHRoZSBzYW1lICIKKyJvcmRlciBiZWZvcmUgZGlyZWN0b3JpZXMgb2Ygb3RoZXIgYmluYXJ5IHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorIlNlIGbDtnJzdCBpIEk8cGFrZXRieWdna2F0YWxvZz4gdmlkIGbDtnJzw7ZrIGF0dCBoaXR0YSBldHQgYmlibGlvdGVrLiAiCisiQW52w6RuZGJhcnQgbsOkciBrw6RsbGtvZHNwYWtldGV0IGJ5Z2dlciBmbGVyYSB2YXJpYW50ZXIgYXYgc2FtbWEgYmlibGlvdGVrIG9jaCAiCisiZHUgdmlsbCBzZSB0aWxsIGF0dCBkdSBmw6VyIGJlcm9lbmRldCBmcsOlbiBldHQgZ2l2ZXQgYmluw6RycGFrZXQuIEZsYWdnYW4ga2FuICIKKyJpbnRlIGFudsOkbmRhcyBmbGVyYSBnw6VuZ2VyOiBrYXRhbG9nZXIgc8O2a3MgZWZ0ZXIgaSBzYW1tYSBvcmRuaW5nIGbDtnJlICIKKyJrYXRhbG9nZXIgZnLDpW4gYW5kcmEgYmluw6RycGFrZXQuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zaGxpYmRlcHMuMToxOTQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0taWdub3JlLW1pc3NpbmctaW5mbz4iCittc2dzdHIgIkI8LS1pZ25vcmUtbWlzc2luZy1pbmZvPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToyMDAKK21zZ2lkICIiCisiRG8gbm90IGZhaWwgaWYgZGVwZW5kZW5jeSBpbmZvcm1hdGlvbiBjYW4ndCBiZSBmb3VuZCBmb3IgYSBzaGFyZWQgbGlicmFyeS4gICIKKyJVc2FnZSBvZiB0aGlzIG9wdGlvbiBpcyBkaXNjb3VyYWdlZCwgYWxsIGxpYnJhcmllcyBzaG91bGQgcHJvdmlkZSBkZXBlbmRlbmN5ICIKKyJpbmZvcm1hdGlvbiAoZWl0aGVyIHdpdGggc2hsaWJzIGZpbGVzLCBvciB3aXRoIHN5bWJvbHMgZmlsZXMpICBldmVuIGlmIHRoZXkgIgorImFyZSBub3QgeWV0IHVzZWQgYnkgb3RoZXIgcGFja2FnZXMuIgorbXNnc3RyICIiCisiTWlzc2x5Y2thcyBpbnRlIG9tIGRldCBpbnRlIHVwcHTDpGNrcyBuw6Vnb24gYmVyb2VuZGVpbmZvcm1hdGlvbiBmw7ZyIGV0dCBkZWxhdCAiCisiYmlibGlvdGVrLiBBbGxhIGJpYmxpb3RlayBiw7ZyIHRpbGxoYW5kYWjDpWxsYSBiZXJvZW5kZWluZm9ybWF0aW9uIChhbnRpbmdlbiAiCisibWVkIHNobGlicy1maWxlciBlbGxlciBtZWQgc3ltYm9scy1maWxlciksIMOkdmVuIG9tIGRlIMOkbm51IGludGUgYW52w6RuZHMgYXYgIgorImFuZHJhIHBha2V0LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjAwCisjLCBuby13cmFwCittc2dpZCAiQjwtLXdhcm5pbmdzPT5JPHZhbHVlPiIKK21zZ3N0ciAiQjwtLXdhcm5pbmdzPT5JPHbDpHJkZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjExCittc2dpZCAiIgorIkk8dmFsdWU+IGlzIGEgYml0IGZpZWxkIGRlZmluaW5nIHRoZSBzZXQgb2Ygd2FybmluZ3MgdGhhdCBjYW4gYmUgZW1pdHRlZCBieSAiCisiQjxkcGtnLXNobGliZGVwcz4uICBCaXQgMCAodmFsdWU9MSkgZW5hYmxlcyB0aGUgd2FybmluZyBcInN5bWJvbCBJPHN5bT4gdXNlZCAiCisiYnkgSTxiaW5hcnk+IGZvdW5kIGluIG5vbmUgb2YgdGhlIGxpYnJhcmllc1wiLCBiaXQgMSAodmFsdWU9MikgZW5hYmxlcyB0aGUgIgorIndhcm5pbmcgXCJkZXBlbmRlbmN5IG9uIEk8bGlicmFyeT4gY291bGQgYmUgYXZvaWRlZFwiIGFuZCBiaXQgMiAodmFsdWU9NCkgICIKKyJlbmFibGVzIHRoZSB3YXJuaW5nIFwiSTxiaW5hcnk+IHNob3VsZG4ndCBiZSBsaW5rZWQgd2l0aCBJPGxpYnJhcnk+XCIuICBUaGUgIgorImRlZmF1bHQgSTx2YWx1ZT4gaXMgMzogdGhlIGZpcnN0IHR3byB3YXJuaW5ncyBhcmUgYWN0aXZlIGJ5IGRlZmF1bHQsIHRoZSAiCisibGFzdCBvbmUgaXMgbm90LiBTZXQgSTx2YWx1ZT4gdG8gNyBpZiB5b3Ugd2FudCBhbGwgd2FybmluZ3MgdG8gYmUgYWN0aXZlLiIKK21zZ3N0ciAiIgorIkk8VsOkcmRlPiDDpHIgZXR0IGJpdGbDpGx0IHNvbSBhbmdlciBkZSB2YXJuaW5nYXIgc29tIGthbiBnZXMgYXYgQjxkcGtnLSIKKyJzaGxpYmRlcHM+LiBCaXQgMCAodsOkcmRlPTEpIGFrdGl2ZXJhciB2YXJuaW5nZW4gXCJzeW1ib2xlbiBJPHN5bT4sIHNvbSAiCisiYW52w6RuZHMgYXYgSTxiaW7DpHI+LCBoaXR0YWRlcyBpbnRlIGkgbsOlZ290IGF2IGJpYmxpb3Rla2VuXCIsIGJpdCAxICh2w6RyZGU9MikgIgorImFrdGl2ZXJhciB2YXJuaW5nZW4gXCJiZXJvZW5kZXQgcMOlIEk8YmlibGlvdGVrdD4ga3VuZGUgdW5kdmlrYXNcIiBvY2ggYml0IDIgIgorIih2w6RyZGU9NCkgYWt0aXZlcmFyIHZhcm5pbmdlbiBcIkk8Ymluw6RyPiBib3JkZSBpbnRlIHZhcmEgbMOkbmthdCBtb3QgIgorIkk8YmlibGlvdGVrPlwiLiBTdGFuZGFyZCBmw7ZyIEk8dsOkcmRlPiDDpHIgMzogZGUgZsO2cnN0YSB0dsOlIHZhcm5pbmdhcm5hIMOkciAiCisiYWt0aXZhIHNvbSBzdGFuZGFyZCwgbWVuIGludGUgZGVuIHNpc3RhLiBTw6R0dCBJPHbDpHJkZT4gdGlsbCA3IG9tIGR1IHZpbGwgYXR0ICIKKyJhbGxhIHZhcm5pbmdhciBza2FsbCB2YXJhIGFrdGl2YS4iCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLXNobGliZGVwcy4xOjIyMgorIywgbm8td3JhcAorbXNnaWQgIldBUk5JTkdTIgorbXNnc3RyICJWQVJOSU5HQVIiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjMwCittc2dpZCAiIgorIlNpbmNlIEI8ZHBrZy1zaGxpYmRlcHM+IGFuYWx5emVzIHRoZSBzZXQgb2Ygc3ltYm9scyB1c2VkIGJ5IGVhY2ggYmluYXJ5IG9mICIKKyJ0aGUgZ2VuZXJhdGVkIHBhY2thZ2UsIGl0IGlzIGFibGUgdG8gZW1pdCB3YXJuaW5ncyBpbiBzZXZlcmFsIGNhc2VzLiBUaGV5ICIKKyJpbmZvcm0geW91IG9mIHRoaW5ncyB0aGF0IGNhbiBiZSBpbXByb3ZlZCBpbiB0aGUgcGFja2FnZS4gSW4gbW9zdCBjYXNlcywgIgorInRob3NlIGltcHJvdmVtZW50cyBjb25jZXJuIHRoZSB1cHN0cmVhbSBzb3VyY2VzIGRpcmVjdGx5LiBCeSBvcmRlciBvZiAiCisiZGVjcmVhc2luZyBpbXBvcnRhbmNlLCBoZXJlIGFyZSB0aGUgdmFyaW91cyB3YXJuaW5ncyB0aGF0IHlvdSBjYW4gZW5jb3VudGVyOiIKK21zZ3N0ciAiIgorIkVmdGVyc29tIEI8ZHBrZy1zaGxpYmRlcHM+IGFuYWx5c2VyYXIgbcOkbmdkZW4gc3ltYm9sZXIgc29tIGFudsOkbmRzIGF2IHZhcmplICIKKyJiaW7DpHJmaWwgaSBkZXQgZ2VuZXJlcmFkZSBwYWtldGV0LCBrYW4gZGV0IGkgZmxlcmEgZmFsbCBza3JpdmEgdXQgIgorInZhcm5pbmdzbWVkZGVsYW5kZW4uIERlIHZpc2FyIHDDpSBzYWtlciBzb20ga2FuIGbDtnJiw6R0dHJhcyBpIHBha2V0ZXQuIEkgZGUgIgorImZsZXN0YSBmYWxsIGfDpGxsZXIgZsO2cmLDpHR0cmluZ2FybmEgZGlyZWt0IHVwcHN0csO2bXNrw6RsbGtvZGVuLiBIw6RyIMOkciBkZSAiCisidmFybmluZ2FyIGR1IGthbiBzdMO2dGEgcMOlLCBpIGZhbGxhbmRlIGFsbHZhcmxpZ2hldHNncmFkOiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjMwCisjLCBuby13cmFwCittc2dpZCAiQjxzeW1ib2w+STwgc3ltPkI8IHVzZWQgYnkgPkk8YmluYXJ5PkI8IGZvdW5kIGluIG5vbmUgb2YgdGhlIGxpYnJhcmllcy4+IgorbXNnc3RyICJCPHN5bWJvbGVuPiBJPHN5bT5CPCwgc29tIGFudsOkbmRzIGF2PiBJPGJpbsOkcj5CPCwgaGl0dGFkZXMgaW50ZSBpIG7DpWdvdCBhdiBiaWJsaW90ZWtlbi4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjIzNgorbXNnaWQgIiIKKyJUaGUgaW5kaWNhdGVkIHN5bWJvbCBoYXMgbm90IGJlZW4gZm91bmQgaW4gdGhlIGxpYnJhcmllcyBsaW5rZWQgd2l0aCB0aGUgIgorImJpbmFyeS4gVGhlIEk8YmluYXJ5PiBpcyBtb3N0IGxpa2VseSBhIGxpYnJhcnkgYW5kIGl0IG5lZWRzIHRvIGJlIGxpbmtlZCAiCisid2l0aCBhbiBhZGRpdGlvbmFsIGxpYnJhcnkgZHVyaW5nIHRoZSBidWlsZCBwcm9jZXNzIChvcHRpb24gQjwtbD5JPGxpYnJhcnk+ICIKKyJvZiB0aGUgbGlua2VyKS4iCittc2dzdHIgIiIKKyJEZW4gb21uw6RtbmRhIHN5bWJvbGVuIGhpdHRhZGVzIGludGUgaSBiaWJsaW90ZWtlbiBzb20gbMOkbmthcyBtb3QgYmluw6RyZW4uICIKKyJJPEJpbsOkcj4gw6RyIGFudGFnbGlnZW4gZXR0IGJpYmxpb3RlayBvY2ggbcOlc3RlIGzDpG5rYXMgbW90IGV0dCBhbm5hdCAiCisiYmlibGlvdGVrIHVuZGVyIGJ5Z2dwcm9jZWR1cmVuIChsw6Rua2FyZmxhZ2dhbiBCPC1sPkk8YmlibGlvdGVrPikuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zaGxpYmRlcHMuMToyMzYKKyMsIG5vLXdyYXAKK21zZ2lkICJJPGJpbmFyeT5CPCBjb250YWlucyBhbiB1bnJlc29sdmFibGUgcmVmZXJlbmNlIHRvIHN5bWJvbCA+STxzeW0+Qjw6IGl0J3MgcHJvYmFibHkgYSBwbHVnaW4+IgorbXNnc3RyICJJPGJpbsOkcj4gQjxpbm5laMOlbGxlciBlbiByZWZlcmVucyB0aWxsIHN5bWJvbGVuPiBJPHN5bT4gQjxzb20gaW50ZSBrYW4ga29wcGxhczsgZGV0IMOkciB0cm9saWdlbiBldHQgaW5zdGlja3Nwcm9ncmFtPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToyNDkKK21zZ2lkICIiCisiVGhlIGluZGljYXRlZCBzeW1ib2wgaGFzIG5vdCBiZWVuIGZvdW5kIGluIHRoZSBsaWJyYXJpZXMgbGlua2VkIHdpdGggdGhlICIKKyJiaW5hcnkuIFRoZSBJPGJpbmFyeT4gaXMgbW9zdCBsaWtlbHkgYSBwbHVnaW4gYW5kIHRoZSBzeW1ib2wgaXMgcHJvYmFibHkgIgorInByb3ZpZGVkIGJ5IHRoZSBwcm9ncmFtIHRoYXQgbG9hZHMgdGhpcyBwbHVnaW4uIEluIHRoZW9yeSBhIHBsdWdpbiBkb2Vzbid0ICIKKyJoYXZlIGFueSBTT05BTUUgYnV0IHRoaXMgYmluYXJ5IGRvZXMgaGF2ZSBvbmUgYW5kIGFzIHN1Y2ggaXQgY291bGQgbm90IGJlICIKKyJjbGVhcmx5IGlkZW50aWZpZWQgYXMgc3VjaC4gSG93ZXZlciB0aGUgZmFjdCB0aGF0IHRoZSBiaW5hcnkgaXMgc3RvcmVkIGluIGEgIgorIm5vbi1wdWJsaWMgZGlyZWN0b3J5IGlzIGEgc3Ryb25nIGluZGljYXRpb24gdGhhdCdzIGl0J3Mgbm90IGEgbm9ybWFsIHNoYXJlZCAiCisibGlicmFyeS4gSWYgdGhlIGJpbmFyeSBpcyByZWFsbHkgYSBwbHVnaW4sIHRoZW4gZGlzcmVnYXJkIHRoaXMgd2FybmluZy4gQnV0ICIKKyJ0aGVyZSdzIGFsd2F5cyB0aGUgcG9zc2liaWxpdHkgdGhhdCBpdCdzIGEgcmVhbCBsaWJyYXJ5IGFuZCB0aGF0IHByb2dyYW1zICIKKyJsaW5raW5nIHRvIGl0IGFyZSB1c2luZyBhbiBSUEFUSCBzbyB0aGF0IHRoZSBkeW5hbWljIGxvYWRlciBmaW5kcyBpdC4gSW4gIgorInRoYXQgY2FzZSwgdGhlIGxpYnJhcnkgaXMgYnJva2VuIGFuZCBuZWVkcyB0byBiZSBmaXhlZC4iCittc2dzdHIgIiIKKyJEZW4gYW5naXZuYSBzeW1ib2xlbiBoaXR0YWRlcyBpbnRlIGkgYmlibGlvdGVrZW4gc29tIGzDpG5rYXRzIG1vdCBiaW7DpHJlbi4gIgorIkk8Qmluw6RyPiDDpHIgYW50YWdsaWdlbiBldHQgaW5zdGlja3Nwcm9ncmFtIG9jaCBzeW1ib2xlbiB0aWxsaGFuZGFow6VsbHMgYXYgIgorInByb2dyYW1tZXQgc29tIGzDpHNlciBpbiBkZXQuIEkgdGVvcmluIGhhciBpbnRlIGluc3RpY2tzcHJvZ3JhbSBuw6Vnb3QgU09OQU1OLCAiCisibWVuIGRlbiBow6RyIGJpbsOkcmVuIGhhciBldHQgb2NoIGTDpHJtZWQga3VuZGUgZGV0IGludGUgdHlkbGlndCBpZGVudGlmaWVyYXMgIgorInNvbSBpbnN0aWNrc3Byb2dyYW0uIERldCBmYWt0dW0gYXR0IGJpbsOkcmVuIGJlZmlubmVyIHNpZyBpIGVuIGlja2Utb2ZmZW50bGlnICIKKyJrYXRhbG9nIMOkciBkb2NrIGVuIHN0YXJrIGluZGlrYXRpb24gcMOlIGF0dCBkZXQgaW50ZSDDpHIgZXR0IHZhbmxpZ3QgZGVsYXQgIgorImJpYmxpb3Rlay4gT20gYmluw6RyZW4gZmFrdGlza3Qgw6RyIGV0dCBpbnN0aWNrc3Byb2dyYW0ga2FuIGR1IGlnbm9yZXJhICIKKyJ2YXJuaW5nZW4uIERldCDDpHIgZG9jayBhbGx0aWQgbcO2amxpZ3QgYXR0IGRldCDDpHIgZXR0IHJpa3RpZ3QgYmlibGlvdGVrIG9jaCAiCisiYXR0IHByb2dyYW0gc29tIGzDpG5rZXIgZGV0IGFudsOkbmRlciBlbiBSUEFUSCBzw6UgYXR0IGRlbiBkeW5hbWlza2EgbMOkbmthcmVuICIKKyJoaXR0YXIgZGV0LiBPbSBzw6Ugw6RyIGZhbGxldCDDpHIgYmlibGlvdGVrZXQgdHJhc2lndCBvY2ggYmVow7Z2ZXIgZml4YXMuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zaGxpYmRlcHMuMToyNDkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGRlcGVuZGVuY3kgb24gPkk8bGlicmFyeT5CPCBjb3VsZCBiZSBhdm9pZGVkIGlmID5JPGJpbmFyaWVzPkI8IHdlcmUgbm90IHVzZWxlc3NseSBsaW5rZWQgYWdhaW5zdCBpdCAodGhleSB1c2Ugbm9uZSBvZiBpdHMgc3ltYm9scykuPiIKK21zZ3N0ciAiQjxCZXJvZW5kZXQgcMOlPiBJPGJpYmxpb3Rlaz4gQjxrdW5kZSB1bmR2aWthcyBvbSBpbnRlPiBJPGJpbsOkcmVyPiBCPG1lbmluZ3Nsw7ZzdCBsw6Rua2FkZXMgbW90IGRldCAoZGUgYW52w6RuZGVyIGluZ2EgYXYgZGVzcyBzeW1ib2xlcikuPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zaGxpYmRlcHMuMToyNTUKK21zZ2lkICIiCisiTm9uZSBvZiB0aGUgSTxiaW5hcmllcz4gdGhhdCBhcmUgbGlua2VkIHdpdGggSTxsaWJyYXJ5PiB1c2UgYW55IG9mIHRoZSAiCisic3ltYm9scyBwcm92aWRlZCBieSB0aGUgbGlicmFyeS4gQnkgZml4aW5nIGFsbCB0aGUgYmluYXJpZXMsIHlvdSB3b3VsZCBhdm9pZCAiCisidGhlIGRlcGVuZGVuY3kgYXNzb2NpYXRlZCB0byB0aGlzIGxpYnJhcnkgKHVubGVzcyB0aGUgc2FtZSBkZXBlbmRlbmN5IGlzICIKKyJhbHNvIGdlbmVyYXRlZCBieSBhbm90aGVyIGxpYnJhcnkgdGhhdCBpcyByZWFsbHkgdXNlZCkuIgorbXNnc3RyICIiCisiSW5nZW4gYXYgSTxiaW7DpHJlcj5uYSBzb20gbMOkbmthcyBtb3QgSTxiaWJsaW90ZWs+IGFudsOkbmRlciBuw6Vnb24gYXYgIgorInN5bWJvbGVybmEgc29tIHRpbGxoYW5kYWjDpWxscyBhdiBiaWJsaW90ZWtldC4gR2Vub20gYXR0IHLDpHR0YSBhbGxhIGJpbsOkcmVyICIKKyJrYW4gZHUgdW5kdmlrYSBiZXJvZW5kZXQgc29tIGfDpGxsZXIgZGV0dGEgYmlibGlvdGVrIChzw6V2aWRhIGludGUgc2FtbWEgIgorImJlcm9lbmRlIMOkdmVuIGdlbmVyZXJhcyBhdiBldHQgYW5uYXQgYmlibGlvdGVrIHNvbSBmYWt0aXNrdCBhbnbDpG5kcykuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zaGxpYmRlcHMuMToyNTUKKyMsIG5vLXdyYXAKK21zZ2lkICJJPGJpbmFyeT5CPCBzaG91bGRuJ3QgYmUgbGlua2VkIHdpdGggPkk8bGlicmFyeT5CPCAoaXQgdXNlcyBub25lIG9mIGl0cyBzeW1ib2xzKS4+IgorbXNnc3RyICJJPGJpbsOkcj4gQjxib3JkZSBpbnRlIHZhcmEgbMOkbmthdCBtb3Q+IEk8YmlibGlvdGVrPiBCPChpbmdhIGF2IHN5bWJvbGVybmEgYW52w6RuZHMpLj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjYyCittc2dpZCAiIgorIlRoZSBJPGJpbmFyeT4gaXMgbGlua2VkIHRvIGEgbGlicmFyeSB0aGF0IGl0IGRvZXNuJ3QgbmVlZC4gSXQncyBub3QgYSAiCisicHJvYmxlbSBidXQgc29tZSBzbWFsbCBwZXJmb3JtYW5jZSBpbXByb3ZlbWVudHMgaW4gYmluYXJ5IGxvYWQgdGltZSBjYW4gYmUgIgorIm9idGFpbmVkIGJ5IG5vdCBsaW5raW5nIHRoaXMgbGlicmFyeSB0byB0aGlzIGJpbmFyeS4gVGhpcyB3YXJuaW5nIGNoZWNrcyB0aGUgIgorInNhbWUgaW5mb3JtYXRpb24gdGhhbiB0aGUgcHJldmlvdXMgb25lIGJ1dCBkb2VzIGl0IGZvciBlYWNoIGJpbmFyeSBpbnN0ZWFkICIKKyJvZiBkb2luZyB0aGUgY2hlY2sgZ2xvYmFsbHkgb24gYWxsIGJpbmFyaWVzIGFuYWx5emVkLiIKK21zZ3N0ciAiIgorIkk8Qmluw6RyPiBsw6Rua2FyIG1vdCBldHQgYmlibGlvdGVrIGRlbiBpbnRlIGJlaMO2dmVyLiBEZXQgw6RyIGludGUgZXR0IHByb2JsZW0sICIKKyJNZW4gZ2Vub20gYXR0IGludGUgbMOkbmthIGJpYmxpb3Rla2V0IG1vdCBiaW7DpHJlbiBrYW4gbWFuIHVwcG7DpSBlbiBtaW5kcmUgIgorInByZXN0YW5kYWbDtnJiw6R0dHJpbmcuIFZhcm5pbmdlbiBrb250cm9sbGVyYXIgc2FtbWEgaW5mb3JtYXRpb24gc29tIGRlbiAiCisiZsO2cmVnw6VlbmRlLCBtZW4gZ8O2ciBkZXQgZsO2ciB2YXJqZSBiaW7DpHIgaXN0w6RsbGV0IGbDtnIgYXR0IHV0ZsO2cmEga29udHJvbGxlbiAiCisiZ2xvYmFsdCBww6UgYWxsYSBhbmFseXNlcmFkZSBiaW7DpHJlci4iCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLXNobGliZGVwcy4xOjI2MgorIywgbm8td3JhcAorbXNnaWQgIkVSUk9SUyIKK21zZ3N0ciAiRkVMTUVEREVMQU5ERU4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjY5Cittc2dpZCAiIgorIkI8ZHBrZy1zaGxpYmRlcHM+IHdpbGwgZmFpbCBpZiBpdCBjYW4ndCBmaW5kIGEgcHVibGljIGxpYnJhcnkgdXNlZCBieSBhICIKKyJiaW5hcnkgb3IgaWYgdGhpcyBsaWJyYXJ5IGhhcyBubyBhc3NvY2lhdGVkIGRlcGVuZGVuY3kgaW5mb3JtYXRpb24gKGVpdGhlciAiCisic2hsaWJzIGZpbGUgb3Igc3ltYm9scyBmaWxlKS4gQSBwdWJsaWMgbGlicmFyeSBoYXMgYSBTT05BTUUgYW5kIGlzIHZlcnNpb25lZCAiCisiKGxpYnNvbWV0aGluZy5zby5JPFg+KS4gQSBwcml2YXRlIGxpYnJhcnkgKGxpa2UgYSBwbHVnaW4pIHNob3VsZCBub3QgaGF2ZSBhICIKKyJTT05BTUUgYW5kIGRvZXNuJ3QgbmVlZCB0byBiZSB2ZXJzaW9uZWQuIgorbXNnc3RyICIiCisiQjxkcGtnLXNobGliZGVwcz4ga29tbWVyIGF0dCBtaXNzbHlja2FzIG9tIGRldCBpbnRlIGhpdHRhciBldHQgw7ZwcGV0ICIKKyJiaWJsaW90ZWsgc29tIGVuIGF2IGJpbsOkcmVybmEgYW52w6RuZGVyLCBlbGxlciBvbSBiaWJsaW90ZWtldCBzYWtuYXIgIgorImFzc29jaWVyYWQgYmVyb2VuZGVpbmZvcm1hdGlvbiAoYW50aW5nZW4gZW4gc2hsaWJzLWZpbCBlbGxlciBlbiBzeW1ib2xzLSIKKyJmaWwpLiBFdHQgw7ZwcGV0IGJpYmxpb3RlayBoYXIgZXR0IFNPTkFNTiBvY2ggw6RyIHZlcnNpb25zaGFudGVyYWQgIgorIihsaWJ2YWRzb21oZWxzdC5zby5JPFg+KS4gRXR0IHByaXZhdCBiaWJsaW90ZWsgKHRpbGwgZXhlbXBlbCBldHQgIgorImluc3RpY2tzcHJvZ3JhbSkgYsO2ciBpbnRlIGhhIG7DpWdvdCBTT05BTU4gb2NoIGJlaMO2dmVyIGludGUgdmFyYSAiCisidmVyc2lvbnNoYW50ZXJhdC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNobGliZGVwcy4xOjI2OQorIywgbm8td3JhcAorbXNnaWQgIkI8Y291bGRuJ3QgZmluZCBsaWJyYXJ5ID5JPGxpYnJhcnktc29uYW1lPkI8IG5lZWRlZCBieSA+STxiaW5hcnk+QjwgKGl0cyBSUEFUSCBpcyAnPkk8cnBhdGg+QjwnKT4iCittc2dzdHIgIkI8aGl0dGFkZSBpbnRlIGJpYmxpb3Rla2V0PiBJPGJpYmxpb3Rlay1zb25hbW4+IEI8c29tIGJlaMO2dnMgZsO2cj4gSTxiaW7DpHI+IEI8KGRlc3MgUlBBVEggw6RyIFwiPkk8cnBhdGg+QjxcIik+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjI4NQorbXNnaWQgIiIKKyJUaGUgSTxiaW5hcnk+IHVzZXMgYSBsaWJyYXJ5IGNhbGxlZCBJPGxpYnJhcnktc29uYW1lPiBidXQgQjxkcGtnLXNobGliZGVwcz4gIgorImhhcyBiZWVuIHVuYWJsZSB0byBmaW5kIHRoZSBsaWJyYXJ5LiAgQjxkcGtnLXNobGliZGVwcz4gY3JlYXRlcyBhIGxpc3Qgb2YgIgorImRpcmVjdG9yaWVzIHRvIGNoZWNrIGFzIGZvbGxvd2luZzogZGlyZWN0b3JpZXMgbGlzdGVkIGluIHRoZSBSUEFUSCBvZiB0aGUgIgorImJpbmFyeSwgZGlyZWN0b3JpZXMgbGlzdGVkIGluIC9ldGMvbGQuc28uY29uZiwgZGlyZWN0b3JpZXMgbGlzdGVkIGluIHRoZSAiCisiTERfTElCUkFSWV9QQVRIIGVudmlyb25tZW50IHZhcmlhYmxlLCBhbmQgc3RhbmRhcmQgcHVibGljIGRpcmVjdG9yaWVzICgvIgorImxpYiwgL3Vzci9saWIsIC9saWIzMiwgL3Vzci9saWIzMiwgL2xpYjY0LCAvdXNyL2xpYjY0KS4gVGhlbiBpdCBjaGVja3MgdGhvc2UgIgorImRpcmVjdG9yaWVzIGluIHRoZSBwYWNrYWdlJ3MgYnVpbGQgdHJlZSBvZiB0aGUgYmluYXJ5IGJlaW5nIGFuYWx5emVkLCBpbiB0aGUgIgorInBhY2thZ2VzJyBidWlsZCB0cmVlcyBpbmRpY2F0ZWQgd2l0aCB0aGUgLVMgY29tbWFuZC1saW5lIG9wdGlvbiwgaW4gb3RoZXIgIgorInBhY2thZ2VzJyBidWlsZCB0cmVlcyB0aGF0IGNvbnRhaW5zIGEgREVCSUFOL3NobGlicyBvciBERUJJQU4vc3ltYm9scyBmaWxlICIKKyJhbmQgZmluYWxseSBpbiB0aGUgcm9vdCBkaXJlY3RvcnkuICBJZiB0aGUgbGlicmFyeSBpcyBub3QgZm91bmQgaW4gYW55IG9mICIKKyJ0aG9zZSBkaXJlY3RvcmllcywgdGhlbiB5b3UgZ2V0IHRoaXMgZXJyb3IuIgorbXNnc3RyICIiCisiSTxCaW7DpHI+IGFudsOkbmRlciBldHQgYmlibGlvdGVrIHNvbSBoZXRlciBJPGJpYmxpb3Rlay1zb25hbW4+LCBtZW4gQjxkcGtnLSIKKyJzaGxpYmRlcHM+IGt1bmRlIGludGUgaGl0dGEgYmlibGlvdGVrZXQuIEI8ZHBrZy1zaGxpYmRlcHM+IHNrYXBhciBlbiBsaXN0YSAiCisiw7Z2ZXIga2F0YWxvZ2VyIGRldCBzZXIgaSBww6UgZsO2bGphbmRlIHPDpHR0OiBrYXRhbG9nZXJuYSBzb20gYmVza3JpdnMgaSBSUEFUSCAiCisiaSBiaW7DpHJlbiwga2F0YWxvZ2VyIHNvbSBiZXNrcml2cyBpIC9ldGMvbGQuc28uY29uZiwga2F0YWxvZ2VyIGkgIgorIm1pbGrDtnZhcmlhYmVsbiBMRF9MSUJSQVJZX1BBVEgsIG9jaCB2YW5saWdhIMO2cHBuYSBrYXRhbG9nZXIgKC9saWIsIC91c3IvIgorImxpYiwgL2xpYjMyLCAvdXNyL2xpYjMyLCAvbGliNjQsIC91c3IvbGliNjQpLiBEw6RyZWZ0ZXIgc2VyIGRldCBpIG1vdHN2YXJhbmRlICIKKyJrYXRhbG9nZXIgaSBieWdndHLDpGRldCBmw7ZyIHBha2V0ZXQgc29tIGlubmVow6VsbGVyIGJpbsOkcmVuIHNvbSBhbmFseXNlcmFzLCBpICIKKyJwYWtldGJ5Z2d0csOkZGV0IHNvbSBhbmdlcyBtZWQga29tbWFuZG9yYWRzZmxhZ2dhbiAtUywgaSBhbmRyYSBwYWtldHMgIgorImJ5Z2d0csOkZCBzb20gaW5uZWjDpWxsZXIgZW4gREVCSUFOL3NobGlicy1maWwgb2NoIHNsdXRsaWdlbiBpIHJvdGthdGFsb2dlbi4gIgorIk9tIGJpYmxpb3Rla2V0IGludGUgaGl0dGFzIGkgbsOlZ29uIGF2IGRlc3NhIGthdGFsb2dlciBmw6VyIGR1IGRldCBow6RyICIKKyJmZWxtZWRkZWxhbmRldC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjkxCittc2dpZCAiIgorIklmIHRoZSBsaWJyYXJ5IG5vdCBmb3VuZCBpcyBpbiBhIHByaXZhdGUgZGlyZWN0b3J5IG9mIHRoZSBzYW1lIHBhY2thZ2UsIHRoZW4gIgorInlvdSB3YW50IHRvIGFkZCB0aGUgZGlyZWN0b3J5IHRvIExEX0xJQlJBUllfUEFUSC4gSWYgaXQncyBpbiBhbm90aGVyIGJpbmFyeSAiCisicGFja2FnZSBiZWluZyBidWlsdCwgeW91IHdhbnQgdG8gbWFrZSBzdXJlIHRoYXQgdGhlIHNobGlicy9zeW1ib2xzIGZpbGUgb2YgIgorInRoaXMgcGFja2FnZSBpcyBhbHJlYWR5IGNyZWF0ZWQgYW5kIHRoYXQgTERfTElCUkFSWV9QQVRIIGNvbnRhaW5zIHRoZSAiCisiYXBwcm9wcmlhdGUgZGlyZWN0b3J5IGlmIGl0IGFsc28gaXMgaW4gYSBwcml2YXRlIGRpcmVjdG9yeS4iCittc2dzdHIgIiIKKyJPbSBiaWJsaW90ZWtldCBzb20gaW50ZSBoaXR0YWRlcyBsaWdnZXIgaSBlbiBwcml2YXQga2F0YWxvZyBpIHNhbW1hIHBha2V0ICIKKyJiw7ZyIGR1IGzDpGdnYSB0aWxsIGthdGFsb2dlbiBpIExEX0xJQlJBUllfUEFUSC4gT20gZGV0IGZpbm5zIGkgZXR0IGFubmF0ICIKKyJiaW7DpHJwYWtldCBzb20gYnlnZ3MgYsO2ciBkdSBzZSB0aWxsIGF0dCBzaGxpYnMtIGVsbGVyIHN5bWJvbHMtZmlsZW4gZsO2ciAiCisicGFrZXRldCByZWRhbiBoYXIgc2thcGF0cyBvY2ggYXR0IExEX0xJQlJBUllfUEFUSCBpbm5laMOlbGxlciBrb3JyZWt0IGthdGFsb2cgIgorInNvbSBkZXQgb2Nrc8OlIGxpZ2dlciBpIGVuIHByaXZhdCBrYXRhbG9nLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MjkxCisjLCBuby13cmFwCittc2dpZCAiQjxubyBkZXBlbmRlbmN5IGluZm9ybWF0aW9uIGZvdW5kIGZvciA+STxsaWJyYXJ5LWZpbGU+QjwgKHVzZWQgYnkgPkk8YmluYXJ5PkI8KS4+IgorbXNnc3RyICJCPGhpdHRhZGUgaW5nZW4gYmVyb2VuZGVpbmZvcm1hdGlvbiBmw7ZyPiBJPGJpYmxpb3Rla3NmaWw+IEI8KGFudsOkbmQgYXY+IEk8Ymluw6RyPkI8KS4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjMwNAorbXNnaWQgIiIKKyJUaGUgbGlicmFyeSBuZWVkZWQgYnkgSTxiaW5hcnk+IGhhcyBiZWVuIGZvdW5kIGJ5IEI8ZHBrZy1zaGxpYmRlcHM+IGluICIKKyJJPGxpYnJhcnktZmlsZT4gYnV0IEI8ZHBrZy1zaGxpYmRlcHM+IGhhcyBiZWVuIHVuYWJsZSB0byBmaW5kIGFueSBkZXBlbmRlbmN5ICIKKyJpbmZvcm1hdGlvbiBmb3IgdGhhdCBsaWJyYXJ5LiBUbyBmaW5kIG91dCB0aGUgZGVwZW5kZW5jeSwgaXQgaGFzIHRyaWVkIHRvICIKKyJtYXAgdGhlIGxpYnJhcnkgdG8gYSBEZWJpYW4gcGFja2FnZSB3aXRoIHRoZSBoZWxwIG9mIEI8ZHBrZyAtUyA+STxsaWJyYXJ5LSIKKyJmaWxlPi4gIFRoZW4gaXQgY2hlY2tlZCB0aGUgY29ycmVzcG9uZGluZyBzaGxpYnMgYW5kIHN5bWJvbHMgZmlsZXMgaW4gL3Zhci8iCisibGliL2Rwa2cvaW5mby8sIGFuZCBpbiB0aGUgdmFyaW91cyBwYWNrYWdlJ3MgYnVpbGQgdHJlZXMgKGRlYmlhbi8qL0RFQklBTi8pLiIKK21zZ3N0ciAiIgorIkJpYmxpb3Rla2V0IHNvbSBiZWjDtnZzIGF2IEk8Ymluw6RyPiBoaXR0YWRlcyBpIEk8YmlibGlvdGVrc2ZpbD4gYXYgQjxkcGtnLSIKKyJzaGxpYmRlcHM+LCBtZW4gQjxkcGtnLXNobGliZGVwcz4ga3VuZGUgaW50ZSBoaXR0YSBuw6Vnb24gYmVyb2VuZGVpbmZvcm1hdGlvbiAiCisiZsO2ciBiaWJsaW90ZWtldC4gRsO2ciBhdHQgaGl0dGEgYmVyb2VuZGV0IGhhciBkZXQgZsO2cnPDtmt0IGtvcHBsYSBiaWJsaW90ZWtldCAiCisibW90IGV0dCBEZWJpYW5wYWtldCBtZWQgaGrDpGxwIGF2IEI8ZHBrZyAtUz4gSTxiaWJsaW90ZWtzZmlsPi4gRMOkcmVmdGVyIHPDpWcgIgorImRldCBpIG1vdHN2YXJhbmRlIHNobGlicy0gb2NoIHN5bWJvbHMtZmlsZXIgaSAvdmFyL2xpYi9kcGtnL2luZm8vLCBzYW10IGkgZGUgIgorIm9saWthIHBha2V0ZW5zIGJ5Z2d0csOkZCAoZGViaWFuLyovREVCSUFOLykuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjMxOAorbXNnaWQgIiIKKyJUaGlzIGZhaWx1cmUgY2FuIGJlIGNhdXNlZCBieSBhIGJhZCBvciBtaXNzaW5nIHNobGlicyBvciBzeW1ib2xzIGZpbGUgaW4gdGhlICIKKyJwYWNrYWdlIG9mIHRoZSBsaWJyYXJ5LiBJdCBtaWdodCBhbHNvIGhhcHBlbiBpZiB0aGUgbGlicmFyeSBpcyBidWlsdCB3aXRoaW4gIgorInRoZSBzYW1lIHNvdXJjZSBwYWNrYWdlIGFuZCBpZiB0aGUgc2hsaWJzIGZpbGVzIGhhcyBub3QgeWV0IGJlZW4gY3JlYXRlZCAoaW4gIgorIndoaWNoIGNhc2UgeW91IG11c3QgZml4IGRlYmlhbi9ydWxlcyB0byBjcmVhdGUgdGhlIHNobGlicyBiZWZvcmUgY2FsbGluZyAiCisiQjxkcGtnLXNobGliZGVwcz4pLiBCYWQgUlBBVEggY2FuIGFsc28gbGVhZCB0byB0aGUgbGlicmFyeSBiZWluZyBmb3VuZCB1bmRlciAiCisiYSBub24tY2Fub25pY2FsIG5hbWUgKGV4YW1wbGU6IC91c3IvbGliL29wZW5vZmZpY2Uub3JnLy4uL2xpYi9saWJzc2wuIgorInNvLjAuOS44IGluc3RlYWQgb2YgL3Vzci9saWIvbGlic3NsLnNvLjAuOS44KSB0aGF0J3Mgbm90IGFzc29jaWF0ZWQgdG8gYW55ICIKKyJwYWNrYWdlLCBCPGRwa2ctc2hsaWJkZXBzPiB0cmllcyB0byB3b3JrIGFyb3VuZCB0aGlzIGJ5IHRyeWluZyB0byBmYWxsYmFjayAiCisib24gYSBjYW5vbmljYWwgbmFtZSAodXNpbmcgQjxyZWFscGF0aD4oMykpICBidXQgaXQgbWlnaHQgbm90IGFsd2F5cyB3b3JrLiAiCisiSXQncyBhbHdheXMgYmVzdCB0byBjbGVhbiB1cCB0aGUgUlBBVEggb2YgdGhlIGJpbmFyeSB0byBhdm9pZCBwcm9ibGVtcy4iCittc2dzdHIgIiIKKyJEZXQgaMOkciBmZWxldCBrYW4gb3JzYWthcyBhdiBmZWxha3RpZ2EgZWxsZXIgc2FrbmFkZSBzaGxpYnMtIGVsbGVyIHN5bWJvbHMtIgorImZpbGVyIGkgYmlibGlvdGVrZXRzIHBha2V0LiBEZXQga2FuIMOkdmVuIGludHLDpGZmYSBvbSBiaWJsaW90ZWtldCBieWdndHMgaSAiCisic2FtbWEga8OkbGxrb2RzcGFrZXQgb2NoIG9tIHNobGlicy1maWxlbiDDpG5udSBpbnRlIGhhciBza2FwYXRzIChkw6UgbcOlc3RlIGR1ICIKKyJmaXhhIGRlYmlhbi9ydWxlcyBzw6UgYXR0IGRldCBza2FwYXIgc2hsaWJzLWZpbGVuIGlubmFuIGRldCBhbnJvcGFyIEI8ZHBrZy0iCisic2hsaWJkZXBzPikuIEZlbGFrdGlnIFJQQVRIIGthbiBvY2tzw6UgbGVkYSB0aWxsIGF0dCBiaWJsaW90ZWtldCBoaXR0YXMgdW5kZXIgIgorImV0dCBpY2tlLWthbm9uaXNrdCBuYW1uICh0aWxsIGV4ZW1wZWw6IC91c3IvbGliL29wZW5vZmZpY2Uub3JnLy4uL2xpYi9saWJzc2wuIgorInNvLjkuOCBpc3TDpGxsZXQgZsO2ciAvdXNyL2xpYi9saWJzc2wuc28uMC45LjgpIHNvbSBpbnRlIGFzc29jaWVyYXMgdGlsbCBuw6Vnb3QgIgorInBha2V0LCBCPGRwa2ctc2hsaWJkZXBzPiBmw7Zyc8O2a2VyIGfDpSBydW50IGRldHRhIGdlbm9tIGF0dCBmYWxsYSB0aWxsYmFrYSBww6UgIgorImV0dCBrYW5vbmlza3QgbmFtbiAobWVkIEI8cmVhbHBhdGg+KDMpKSwgbWVuIGRldCBmdW5nZXJhciBrYW5za2UgaW50ZSAiCisiYWxsdGlkLiBEZXQgw6RyIGFsbHRpZCBiw6RzdCBhdHQgc3TDpGRhIHVwcCBSUEFUSCBpIGJpbsOkcmVuIGbDtnIgYXR0IHVuZHZpa2EgIgorInByb2JsZW0uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjMyNAorbXNnaWQgIiIKKyJDYWxsaW5nIEI8ZHBrZy1zaGxpYmRlcHM+IGluIHZlcmJvc2UgbW9kZSAoLXYpIHdpbGwgcHJvdmlkZSBtdWNoIG1vcmUgIgorImluZm9ybWF0aW9uIGFib3V0IHdoZXJlIGl0IHRyaWVkIHRvIGZpbmQgdGhlIGRlcGVuZGVuY3kgaW5mb3JtYXRpb24uIFRoaXMgIgorIm1pZ2h0IGJlIHVzZWZ1bCBpZiB5b3UgZG9uJ3QgdW5kZXJzdGFuZCB3aHkgaXQncyBnaXZpbmcgeW91IHRoaXMgZXJyb3IuIgorbXNnc3RyICIiCisiT20gZHUgYW5yb3BhciBCPGRwa2ctc2hsaWJkZXBzPiBpIHByYXRzYW10IGzDpGdlICgtdikga29tbWVyIGRldCBnZSBteWNrZXQgIgorIm1lciBpbmZvcm1hdGlvbiBvbSB2YXIgZGV0IGbDtnJzw7ZrdGUgaGl0dGEgYmVyb2VuZGVpbmZvcm1hdGlvbmVuLiBEZXQga2FuICIKKyJ2YXJhIGFudsOkbmRiYXJ0IG9tIGR1IGludGUgZsO2cnN0w6VyIHZhcmbDtnIgZHUgZsOlciBmZWxtZWRkZWxhbmRldC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc2hsaWJkZXBzLjE6MzI4Cittc2dpZCAiQjxkZWItc2hsaWJzPig1KSwgQjxkZWItc3ltYm9scz4oNSksIEI8ZHBrZy1nZW5zeW1ib2xzPigxKS4iCittc2dzdHIgIkI8ZGViLXNobGlicz4oNSksIEI8ZGViLXN5bWJvbHM+KDUpLCBCPGRwa2ctZ2Vuc3ltYm9scz4oMSkuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNobGliZGVwcy4xOjMzNQorbXNnaWQgIkNvcHlyaWdodCBcXChjbyAyMDA2IEZyYW5rIExpY2h0ZW5oZWxkIgorbXNnc3RyICJVcHBob3ZzcsOkdHRzc2t5ZGRhdCDCqSAyMDA2IEZyYW5rIExpY2h0ZW5oZWxkIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1zb3VyY2UuMToyCisjLCBuby13cmFwCittc2dpZCAiZHBrZy1zb3VyY2UiCittc2dzdHIgImRwa2ctc291cmNlIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjUKK21zZ2lkICJkcGtnLXNvdXJjZSAtIERlYmlhbiBzb3VyY2UgcGFja2FnZSAoLmRzYykgbWFuaXB1bGF0aW9uIHRvb2wiCittc2dzdHIgImRwa2ctc291cmNlIC0gVmVya3R5ZyBmw7ZyIGF0dCBtYW5pcHVsZXJhIERlYmlhbmvDpGxsa29kc3Bha2V0ICguZHNjKSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo5Cittc2dpZCAiQjxkcGtnLXNvdXJjZT4gW0k8b3B0aW9uPi4uLl0gSTxjb21tYW5kPiIKK21zZ3N0ciAiQjxkcGtnLXNvdXJjZT4gW0k8ZmxhZ2dhPi4uLl0gSTzDpXRnw6RyZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MTMKK21zZ2lkICJCPGRwa2ctc291cmNlPiBwYWNrcyBhbmQgdW5wYWNrcyBEZWJpYW4gc291cmNlIGFyY2hpdmVzLiIKK21zZ3N0ciAiQjxkcGtnLXNvdXJjZT4gcGFja2FyIG9jaCBwYWNrYXIgdXBwIERlYmlhbmvDpGxsa29kc2Fya2l2LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToxNworbXNnaWQgIiIKKyJOb25lIG9mIHRoZXNlIGNvbW1hbmRzIGFsbG93IG11bHRpcGxlIG9wdGlvbnMgdG8gYmUgY29tYmluZWQgaW50byBvbmUsIGFuZCAiCisidGhleSBkbyBub3QgYWxsb3cgdGhlIHZhbHVlIGZvciBhbiBvcHRpb24gdG8gYmUgc3BlY2lmaWVkIGluIGEgc2VwYXJhdGUgIgorImFyZ3VtZW50LiIKK21zZ3N0ciAiIgorIkluZ2EgYXYgZGVzc2Ega29tbWFuZG9uIHRpbGzDpXRlciBhdHQgZmxlcmEgZmxhZ2dvciBrb21iaW5lcmFzIHRpbGwgZXR0LCBvY2ggIgorImRlIHRpbGzDpXRlciBpbnRlIGF0dCB2w6RyZGV0IHDDpSBlbiBmbGFnZ2EgYW5nZXMgc29tIGV0dCBzZXBhcmF0IGFyZ3VtZW50LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6MTkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC14ID5JPGZpbGVuYW1lPkI8LmRzYyA+W0k8b3V0cHV0LWRpcmVjdG9yeT5dIgorbXNnc3RyICJCPC14ID5JPGZpbG5hbW4+QjwuZHNjID5bSTx1dGRhdGFrYXRhbG9nPl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MjkKK21zZ2lkICIiCisiRXh0cmFjdCBhIHNvdXJjZSBwYWNrYWdlLiBPbmUgbm9uLW9wdGlvbiBhcmd1bWVudCBtdXN0IGJlIHN1cHBsaWVkLCB0aGUgbmFtZSAiCisib2YgdGhlIERlYmlhbiBzb3VyY2UgY29udHJvbCBmaWxlIChCPC5kc2M+KS4gIEFuIG9wdGlvbmFsIHNlY29uZCBub24tb3B0aW9uICIKKyJhcmd1bWVudCBtYXkgYmUgc3VwcGxpZWQgdG8gc3BlY2lmeSB0aGUgZGlyZWN0b3J5IHRvIGV4dHJhY3QgdGhlIHNvdXJjZSAiCisicGFja2FnZSB0bywgdGhpcyBtdXN0IG5vdCBleGlzdC4gSWYgbm8gb3V0cHV0IGRpcmVjdG9yeSBpcyBzcGVjaWZpZWQsIHRoZSAiCisic291cmNlIHBhY2thZ2UgaXMgZXh0cmFjdGVkIGludG8gYSBkaXJlY3RvcnkgbmFtZWQgSTxzb3VyY2U+LUk8dmVyc2lvbj4gIgorInVuZGVyIHRoZSBjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5LiIKK21zZ3N0ciAiIgorIkV4dHJhaGVyYSBldHQga8OkbGxrb2RzcGFrZXQuIEV0dCBhcmd1bWVudCBzb20gaW50ZSDDpHIgZW4gZmxhZ2dhIG3DpXN0ZSBhbmdlcywgIgorIm5hbW5ldCBww6UgZGViaWFua8OkbGxrb2Rzc3R5cmZpbGVuIChCPC5kc2M+KS4gRXR0IHZhbGZyaXR0IGFuZHJhIGFyZ3VtZW50IHNvbSAiCisiaW50ZSDDpHIgZW4gZmxhZ2dhIGthbiBhbmdlcyBmw7ZyIGF0dCBiZXN0w6RtbWEgdmlsa2VuIGthdGFsb2cga8OkbGxrb2RlbiBza2FsbCAiCisicGFja2FzIHVwcCBpLCBkZXQgZsOlciBpbnRlIGV4aXN0ZXJhLiBPbSBkdSBpbnRlIGFuZ2VyIG7DpWdvbiB1dGRhdGFrYXRhbG9nICIKKyJleHRyYWhlcmFzIGvDpGxsa29kc3Bha2V0ZXQgdGlsbCBlbiBrYXRhbG9nIHNvbSBoZXRlciBJPGvDpGxsa29kPi1JPHZlcnNpb24+IGkgIgorImRlbiBha3R1ZWxsYSBhcmJldHNrYXRhbG9nZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjM1Cittc2dpZCAiIgorIkI8ZHBrZy1zb3VyY2U+IHdpbGwgcmVhZCB0aGUgbmFtZXMgb2YgdGhlIG90aGVyIGZpbGUocykgbWFraW5nIHVwIHRoZSBzb3VyY2UgIgorInBhY2thZ2UgZnJvbSB0aGUgY29udHJvbCBmaWxlOyB0aGV5IGFyZSBhc3N1bWVkIHRvIGJlIGluIHRoZSBzYW1lIGRpcmVjdG9yeSAiCisiYXMgdGhlIEI8LmRzYz4uIgorbXNnc3RyICIiCisiQjxkcGtnLXNvdXJjZT4gbMOkc2VyIG5hbW5lbiBww6UgZGUgw7Z2cmlnYSBmaWxlciBzb20gaW5nw6VyIGkga8OkbGxrb2RzcGFrZXRldCAiCisiZnLDpW4gc3R5cmZpbGVuOyBkZSBhbnRhcyB2YXJhIGkgc2FtbWEga2F0YWxvZyBzb20gQjwuZHNjPi1maWxlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NDMKK21zZ2lkICIiCisiVGhlIGZpbGVzIGluIHRoZSBleHRyYWN0ZWQgcGFja2FnZSB3aWxsIGhhdmUgdGhlaXIgcGVybWlzc2lvbnMgYW5kICIKKyJvd25lcnNoaXBzIHNldCB0byB0aG9zZSB3aGljaCB3b3VsZCBoYXZlIGJlZW4gZXhwZWN0ZWQgaWYgdGhlIGZpbGVzIGFuZCAiCisiZGlyZWN0b3JpZXMgaGFkIHNpbXBseSBiZWVuIGNyZWF0ZWQgLSBkaXJlY3RvcmllcyBhbmQgZXhlY3V0YWJsZSBmaWxlcyB3aWxsICIKKyJiZSAwNzc3IGFuZCBwbGFpbiBmaWxlcyB3aWxsIGJlIDA2NjYsIGJvdGggbW9kaWZpZWQgYnkgdGhlIGV4dHJhY3RvcnMnICIKKyJ1bWFzazsgaWYgdGhlIHBhcmVudCBkaXJlY3RvcnkgaXMgc2V0Z2lkIHRoZW4gdGhlIGV4dHJhY3RlZCBkaXJlY3RvcmllcyB3aWxsICIKKyJiZSB0b28sIGFuZCBhbGwgdGhlIGZpbGVzIGFuZCBkaXJlY3RvcmllcyB3aWxsIGluaGVyaXQgaXRzIGdyb3VwIG93bmVyc2hpcC4iCittc2dzdHIgIiIKKyJGaWxlcm5hIGkgZGV0IGV4dHJhaGVyYWRlIHBha2V0ZXQga29tbWVyIGF0dCBoYSBiZWjDtnJpZ2hldCBvY2ggw6RnYXJlIHNhdHRhICIKKyJ0aWxsIGRldCBzb20ga3VuZGUgZsO2cnbDpG50YXMgb20gZmlsZXJuYSBvY2gga2F0YWxvZ2VybmEgYmFyYSBoYWRlIHNrYXBhdHMgLSAiCisia2F0YWxvZ2VyIG9jaCBrw7ZyYmFyYSBmaWxlciBrb21tZXIgaGEgMDc3NyBvY2ggZW5rbGEgZmlsZXIgMDY2NiwgYsOlZGEgIgorIm1vZGlmaWVyYWRlIGF2IHVwcGFja2FyZW5zIHVtYXNrOyBvbSBmw7Zyw6RsZHJha2F0YWxvZ2VuIMOkciBzZXRnaWQga29tbWVyIGRlICIKKyJleHRyYWhlcmFkZSBrYXRhbG9nZXJuYSBvY2tzw6UgYXR0IHZhcmEgZGV0LCBvY2ggc2FtdGxpZ2EgZmlsZXIgb2NoIGthdGFsb2dlciAiCisia29tbWVyIMOkcnZhIGRlc3MgZ3J1cHDDpGdhcnNrYXAuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjQ4Cittc2dpZCAiIgorIklmIHRoZSBzb3VyY2UgcGFja2FnZSB1c2VzIGEgbm9uLXN0YW5kYXJkIGZvcm1hdCAoY3VycmVudGx5IHRoaXMgbWVhbnMgYWxsICIKKyJmb3JtYXRzIGV4Y2VwdCBcIjEuMFwiKSwgaXRzIG5hbWUgd2lsbCBiZSBzdG9yZWQgaW4gQjxkZWJpYW4vc291cmNlL2Zvcm1hdD4gIgorInNvIHRoYXQgdGhlIGZvbGxvd2luZyBidWlsZHMgb2YgdGhlIHNvdXJjZSBwYWNrYWdlIHVzZSB0aGUgc2FtZSBmb3JtYXQgYnkgIgorImRlZmF1bHQuIgorbXNnc3RyICIiCisiT20ga8OkbGxrb2RlbiBhbnbDpG5kZXIgZXR0IGFubmF0IGZvcm1hdCDDpG4gc3RhbmRhcmRmb3JtYXRldCAoZ8OkbGxlciBmw7ZyICIKKyJuw6RydmFyYW5kZSBhbGxhIGZvcm1hdCBmw7ZydXRvbSBcIjEuMFwiKSwga29tbWVyIGRlc3MgbmFtbiBhdHQgbGFncmFzIHNvbSAiCisiQjxkZWJpYW4vc291cmNlL2Zvcm1hdD4gc8OlIGF0dCBkZXQgYW52w6RuZHMgc29tIHN0YW5kYXJkIG7DpHIga8OkbGxrb2RzcGFrZXRldCAiCisiYnlnZ3MgcMOlIG55dHQuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTo0OQorIywgbm8td3JhcAorbXNnaWQgIkI8LWI+IEk8ZGlyZWN0b3J5PiBbSTxmb3JtYXQtc3BlY2lmaWMtcGFyYW1ldGVycz5dIgorbXNnc3RyICJCPC1iPiBJPGthdGFsb2c+IFtJPGZvcm1hdHNwZWNpZmlrYS1mbGFnZ29yPl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTYKK21zZ2lkICIiCisiQnVpbGQgYSBzb3VyY2UgcGFja2FnZS4gVGhlIGZpcnN0IG5vbi1vcHRpb24gYXJndW1lbnQgaXMgdGFrZW4gYXMgdGhlIG5hbWUgIgorIm9mIHRoZSBkaXJlY3RvcnkgY29udGFpbmluZyB0aGUgZGViaWFuaXplZCBzb3VyY2UgdHJlZSAoaS5lLiB3aXRoIGEgZGViaWFuICIKKyJzdWItZGlyZWN0b3J5IGFuZCBtYXliZSBjaGFuZ2VzIHRvIHRoZSBvcmlnaW5hbCBmaWxlcykuICBEZXBlbmRpbmcgb24gdGhlICIKKyJzb3VyY2UgcGFja2FnZSBmb3JtYXQgdXNlZCB0byBidWlsZCB0aGUgcGFja2FnZSwgYWRkaXRpb25hbCBwYXJhbWV0ZXJzIG1pZ2h0ICIKKyJiZSBhY2NlcHRlZC4iCittc2dzdHIgIiIKKyJCeWdnIGV0dCBrw6RsbGtvZHBha2V0LiBEZXQgZsO2cnN0YSBhcmd1bWVudGV0IHNvbSBpbnRlIMOkciBlbiBmbGFnZ2EgdGFzIHNvbSAiCisibmFtbiBww6Uga2F0YWxvZ2VuIHNvbSBpbm5laMOlbGxlciBkZXQgZGViaWFuaXNlcmFkZSBrw6RsbGtvZHN0csOkZGV0IChkdnMuIG1lZCAiCisidW5kZXJrYXRhbG9nZW4gXCJkZWJpYW5cIiBvY2gga2Fuc2tlIMOkbmRyaW5nYXIgcMOlIG9yaWdpbmFsZmlsZXJuYSkuIEJlcm9lbmRlICIKKyJww6Ugdmlsa2V0IGvDpGxsa29kc3Bha2V0Zm9ybWF0IHNvbSBhbnbDpG5kcyBmw7ZyIGF0dCBieWdnYSBmb3JtYXRldCBrYW4gIgorInl0dGVybGlnYXJlIHBhcmFtZXRyYXIga2Fuc2tlIGdvZHRhcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NjUKK21zZ2lkICIiCisiQjxkcGtnLXNvdXJjZT4gd2lsbCBidWlsZCB0aGUgc291cmNlIHBhY2thZ2Ugd2l0aCB0aGUgZmlyc3QgZm9ybWF0IGZvdW5kIGluICIKKyJ0aGlzIG9yZGVyZWQgbGlzdDogdGhlIGZvcm1hdCBpbmRpY2F0ZWQgd2l0aCB0aGUgSTwtLWZvcm1hdD4gY29tbWFuZCBsaW5lICIKKyJvcHRpb24sIHRoZSBmb3JtYXQgaW5kaWNhdGVkIGluIEI8ZGViaWFuL3NvdXJjZS9mb3JtYXQ+LCBcIjEuMFwiLiBUaGUgIgorImZhbGxiYWNrIHRvIFwiMS4wXCIgaXMgZGVwcmVjYXRlZCBhbmQgd2lsbCBiZSByZW1vdmVkIGF0IHNvbWUgcG9pbnQgaW4gdGhlICIKKyJmdXR1cmUsIHlvdSBzaG91bGQgYWx3YXlzIGRvY3VtZW50IHRoZSBkZXNpcmVkIHNvdXJjZSBmb3JtYXQgaW4gQjxkZWJpYW4vIgorInNvdXJjZS9mb3JtYXQ+LiBTZWUgc2VjdGlvbiBCPFNPVVJDRSBQQUNLQUdFIEZPUk1BVFM+IGZvciBhbiBleHRlbnNpdmUgIgorImRlc2NyaXB0aW9uIG9mIHRoZSB2YXJpb3VzIHNvdXJjZSBwYWNrYWdlIGZvcm1hdHMuIgorbXNnc3RyICIiCisiQjxkcGtnLXNvdXJjZT4ga29tbWVyIGJ5Z2dhIGvDpGxsa29kc3Bha2V0ZXQgbWVkIGRldCBmw7Zyc3RhIGZvcm1hdCBzb20gIgorImZ1bmdlcmFyIGZyw6VuIGRlbm5hIGxpc3RhIGkgZGVubmEgb3JkbmluZzogZm9ybWF0ZXQgc29tIGFuZ2VzIG1lZCAiCisia29tbWFuZG9yYWRzZmxhZ2dhbiBJPC0tZm9ybWF0PiwgZm9ybWF0ZXQgc29tIGFuZ2VzIGkgSTxkZWJpYW4vc291cmNlLyIKKyJmb3JtYXQ+LCBcIjEuMFwiLiBTdGFuZGFyZHbDpHJkZXQgXCIxLjBcIiByZWtvbW1lbmRlcmFzIGVqIG9jaCBrb21tZXIgYXR0IHRhcyAiCisiYm9ydCBlbiBnw6VuZyBpIGZyYW10aWRlbiwgZHUgYsO2ciBhbGx0aWQgZG9rdW1lbnRlcmEgZGV0IMO2bnNrYWRlICIKKyJrw6RsbGtvZHNmb3JtYXRldCBpIEI8ZGViaWFuL3NvdXJjZS9mb3JtYXQ+LiBTZSBhdnNuaXR0ZXQgQjxGT1JNQVQgUMOFICIKKyJLw4RMTEtPRFNQQUtFVD4gZsO2ciBlbiB1dGbDtnJsaWcgYmVza3Jpdm5pbmcgYXYgZGUgb2xpa2Ega8OkbGxrb2RzcGFrZXRmb3JtYXRlbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjY2CisjLCBuby13cmFwCittc2dpZCAiQjwtLXByaW50LWZvcm1hdD4gSTxkaXJlY3Rvcnk+IgorbXNnc3RyICJCPC0tcHJpbnQtZm9ybWF0PiBJPGthdGFsb2c+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjcxCittc2dpZCAiIgorIlByaW50IHRoZSBzb3VyY2UgZm9ybWF0IHRoYXQgd291bGQgYmUgdXNlZCB0byBidWlsZCB0aGUgc291cmNlIHBhY2thZ2UgaWYgIgorIkI8ZHBrZy1zb3VyY2UgLWIgPkk8ZGlyZWN0b3J5PiB3YXMgY2FsbGVkIChpbiB0aGUgc2FtZSBjb25kaXRpb25zIGFuZCB3aXRoICIKKyJ0aGUgc2FtZSBwYXJhbWV0ZXJzKS4iCittc2dzdHIgIiIKKyJWaXNhIGZvcm1hdGV0IHNvbSBza3VsbGUgYW52w6RuZGFzIGbDtnIgYXR0IGJ5Z2dhIGvDpGxsa29kc3Bha2V0ZXQgb20gQjxkcGtnLSIKKyJzb3VyY2UgLWI+IEk8a2F0YWxvZz4gc2t1bGxlIGvDtnJhcyAodW5kZXIgc2FtbWEgZsO2cmjDpWxsYW5kZW4gb2NoIG1lZCBzYW1tYSAiCisicGFyYW1ldHJhcikuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTo3MgorIywgbm8td3JhcAorbXNnaWQgIkI8LS1iZWZvcmUtYnVpbGQ+IEk8ZGlyZWN0b3J5PiIKK21zZ3N0ciAiQjwtLWJlZm9yZS1idWlsZD4gSTxrYXRhbG9nPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo4MQorbXNnaWQgIiIKKyJSdW4gdGhlIGNvcnJlc3BvbmRpbmcgaG9vayBvZiB0aGUgc291cmNlIHBhY2thZ2UgZm9ybWF0LiBUaGlzIGhvb2sgaXMgY2FsbGVkICIKKyJiZWZvcmUgYW55IGJ1aWxkIG9mIHRoZSBwYWNrYWdlIChCPGRwa2ctYnVpbGRwYWNrYWdlPiBjYWxscyBpdCB2ZXJ5IGVhcmx5ICIKKyJldmVuIGJlZm9yZSBCPGRlYmlhbi9ydWxlcyBjbGVhbj4pLiBUaGlzIGNvbW1hbmQgaXMgaWRlbXBvdGVudCBhbmQgY2FuIGJlICIKKyJjYWxsZWQgbXVsdGlwbGUgdGltZXMuIE5vdCBhbGwgc291cmNlIGZvcm1hdHMgaW1wbGVtZW50IHNvbWV0aGluZyBpbiB0aGlzICIKKyJob29rLCBhbmQgdGhvc2UgdGhhdCBkbyB1c3VhbGx5IHByZXBhcmUgdGhlIHNvdXJjZSB0cmVlIGZvciB0aGUgYnVpbGQgZm9yICIKKyJleGFtcGxlIGJ5IGVuc3VyaW5nIHRoYXQgdGhlIERlYmlhbiBwYXRjaGVzIGFyZSBhcHBsaWVkLiIKK21zZ3N0ciAiIgorIkvDtnIgbW90c3ZhcmFuZGUga3JvayBmw7ZyIGvDpGxsa29kc3Bha2V0Zm9ybWF0ZXQuIEtyb2tlbiBhbnJvcGFzIGlubmFuIG7DpWdvdCAiCisiZnLDpW4gcGFrZXRldCBieWdncyAoQjxkcGtnLWJ1aWxkcGFrY2FnZT4gYW5yb3BhciBkZXQgdsOkbGRpZ3QgdGlkaWd0LCB0aWxsICIKKyJvY2ggbWVkIGbDtnJlIEI8ZGViaWFuL3J1bGVzIGNsZWFuPikuIEtvbW1hbmRvdCDDpHIgaWRlbXBvdGVudCBvY2gga2FuIGFucm9wYXMgIgorImZsZXJhIGfDpW5nZXIuIERldCDDpHIgaW50ZSBhbGxhIGvDpGxsa29kc2Zvcm1hdCBzb20gaW1wbGVtZW50ZXJhciBuw6Vnb3QgaSBkZW4gIgorImjDpHIga3Jva2VuLCBvY2ggZGUgc29tIGfDtnIgZGV0IGbDtnJiZXJlZGVyIG9mdGFzdCBrw6RsbGtvZHN0csOkZGV0IGbDtnIgYXR0ICIKKyJieWdnYXMsIHRpbGwgZXhlbXBlbCBnZW5vbSBhdHQgc2UgdGlsbCBhdHQgRGViaWFucGF0Y2hhciBoYXIgYXBwbGljZXJhdHMuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTo4MgorIywgbm8td3JhcAorbXNnaWQgIkI8LS1hZnRlci1idWlsZD4gSTxkaXJlY3Rvcnk+IgorbXNnc3RyICJCPC0tYWZ0ZXItYnVpbGQ+IEk8a2F0YWxvZz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6ODkKK21zZ2lkICIiCisiUnVuIHRoZSBjb3JyZXNwb25kaW5nIGhvb2sgb2YgdGhlIHNvdXJjZSBwYWNrYWdlIGZvcm1hdC4gVGhpcyBob29rIGlzIGNhbGxlZCAiCisiYWZ0ZXIgYW55IGJ1aWxkIG9mIHRoZSBwYWNrYWdlIChCPGRwa2ctYnVpbGRwYWNrYWdlPiBjYWxscyBpdCBsYXN0KS4gVGhpcyAiCisiY29tbWFuZCBpcyBpZGVtcG90ZW50IGFuZCBjYW4gYmUgY2FsbGVkIG11bHRpcGxlIHRpbWVzLiBOb3QgYWxsIHNvdXJjZSAiCisiZm9ybWF0cyBpbXBsZW1lbnQgc29tZXRoaW5nIGluIHRoaXMgaG9vaywgYW5kIHRob3NlIHRoYXQgZG8gdXN1YWxseSB1c2UgaXQgIgorInRvIHVuZG8gd2hhdCBCPC0tYmVmb3JlLWJ1aWxkPiBoYXMgZG9uZS4iCittc2dzdHIgIiIKKyJLw7ZyIG1vdHN2YXJhbmRlIGtyb2sgZsO2ciBrw6RsbGtvZHNwYWtldGZvcm1hdGV0LiBLcm9rZW4gYW5yb3BhcyBlZnRlciBhdHQgIgorImFsbHQgZnLDpW4gcGFrZXRldCBieWdndHMgKEI8ZHBrZy1idWlsZHBha2NhZ2U+IGFucm9wYXIgZGV0IHNpc3QpLiBLb21tYW5kb3QgIgorIsOkciBpZGVtcG90ZW50IG9jaCBrYW4gYW5yb3BhcyBmbGVyYSBnw6VuZ2VyLiBEZXQgw6RyIGludGUgYWxsYSBrw6RsbGtvZHNmb3JtYXQgIgorInNvbSBpbXBsZW1lbnRlcmFyIG7DpWdvdCBpIGRlbiBow6RyIGtyb2tlbiwgb2NoIGRlIHNvbSBnw7ZyIGRldCBhbnbDpG5kZXIgZGVuICIKKyJub3JtYWx0IGbDtnIgYXR0IMOldGVyc3TDpGxsYSBkZXQgc29tIEI8LS1iZWZvcmUtYnVpbGQ+IGhhciBnam9ydC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjkwCisjLCBuby13cmFwCittc2dpZCAiQjwtLWNvbW1pdD4gW0k8ZGlyZWN0b3J5Pl0gLi4uIgorbXNnc3RyICJCPC0tY29tbWl0PiBbSTxrYXRhbG9nPl0gLi4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjk1Cittc2dpZCAiIgorIlJlY29yZCBjaGFuZ2VzIGluIHRoZSBzb3VyY2UgdHJlZSB1bnBhY2tlZCBpbiBJPGRpcmVjdG9yeT4uIFRoaXMgY29tbWFuZCBjYW4gIgorInRha2Ugc3VwcGxlbWVudGFyeSBwYXJhbWV0ZXJzIGRlcGVuZGluZyBvbiB0aGUgc291cmNlIGZvcm1hdC4gIEl0IHdpbGwgZXJyb3IgIgorIm91dCBmb3IgZm9ybWF0cyB3aGVyZSB0aGlzIG9wZXJhdGlvbiBkb2Vzbid0IG1lYW4gYW55dGhpbmcuIgorbXNnc3RyICIiCisiU3BhcmEgw6RuZHJpbmdhciBpIGvDpGxsa29kc3Ryw6RkZXQgc29tIGhhciBwYWNrYXRzIHVwcCBpIEk8a2F0YWxvZz4uIEtvbW1hbmRvdCAiCisia2FuIHRhIHl0dGVybGlnYXJlIHBhcmFtZXRyYXIgYmVyb2VuZGUgcMOlIGvDpGxsa29kc2Zvcm1hdGV0LiBFdHQgZmVsIGtvbW1lciAiCisicmFwcG9ydGVyYXMgZsO2ciBmb3JtYXQgZMOkciBvcGVyYXRpb25lbiBpbnRlIGhhciBuw6Vnb24gYmV0eWRlbHNlLiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctc291cmNlLjE6MTAzCisjLCBuby13cmFwCittc2dpZCAiR0VORVJJQyBCVUlMRCBPUFRJT05TIgorbXNnc3RyICJBTExNw4ROTkEgQllHR0ZMQUdHT1IiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MTExCittc2dpZCAiIgorIlNwZWNpZmllcyB0aGUgbWFpbiBzb3VyY2UgY29udHJvbCBmaWxlIHRvIHJlYWQgaW5mb3JtYXRpb24gZnJvbS4gVGhlIGRlZmF1bHQgIgorImlzIEI8ZGViaWFuL2NvbnRyb2w+LiAgSWYgZ2l2ZW4gd2l0aCByZWxhdGl2ZSBwYXRobmFtZSB0aGlzIGlzIGludGVycHJldGVkICIKKyJzdGFydGluZyBhdCB0aGUgc291cmNlIHRyZWUncyB0b3AgbGV2ZWwgZGlyZWN0b3J5LiIKK21zZ3N0ciAiIgorIkFuZ2VyIGh1dnVka8OkbGxrb2Rzc3R5cmZpbCBzb20gaW5mb3JtYXRpb24gc2thbGwgbMOkc2FzIGZyw6VuLiBTdGFuZGFyZHbDpHJkZSAiCisiw6RyIEI8ZGViaWFuL2NvbnRyb2w+LiBPbSBldHQgcmVsYXRpdnQgc8O2a3bDpGdzbmFtbiBhbmdlcyB0b2xrYXMgZGV0IGZyw6VuICIKKyJrw6RsbGtvZHN0csOkZGV0cyB0b3Bwbml2w6VrYXRhbG9nLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToxMTgKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRoZSBjaGFuZ2UgbG9nIGZpbGUgdG8gcmVhZCBpbmZvcm1hdGlvbiBmcm9tLiBUaGUgZGVmYXVsdCBpcyAiCisiQjxkZWJpYW4vY2hhbmdlbG9nPi4gIElmIGdpdmVuIHdpdGggcmVsYXRpdmUgcGF0aG5hbWUgdGhpcyBpcyBpbnRlcnByZXRlZCAiCisic3RhcnRpbmcgYXQgdGhlIHNvdXJjZSB0cmVlJ3MgdG9wIGxldmVsIGRpcmVjdG9yeS4iCittc2dzdHIgIiIKKyJBbmdlciDDpG5kcmluZ3Nsb2dnc2ZpbCBzb20gaW5mb3JtYXRpb24gc2thbGwgbMOkc2FzIGZyw6VuLiBTdGFuZGFyZHbDpHJkZSDDpHIgIgorIkI8ZGViaWFuL2NoYW5nZWxvZz4uIE9tIGV0dCByZWxhdGl2dCBzw7ZrdsOkZ3NuYW1uIGFuZ2VzIHRvbGthcyBkZXQgZnLDpW4gIgorImvDpGxsa29kc3Ryw6RkZXRzIHRvcHBuaXbDpWthdGFsb2cuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMToxMjMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tZm9ybWF0PT5JPHZhbHVlPiIKK21zZ3N0ciAiQjwtLWZvcm1hdD0+STx2w6RyZGU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjEyNworbXNnaWQgIiIKKyJVc2UgdGhlIGdpdmVuIGZvcm1hdCBmb3IgYnVpbGRpbmcgdGhlIHNvdXJjZSBwYWNrYWdlLiBJdCBkb2VzIG92ZXJyaWRlIGFueSAiCisiZm9ybWF0IGdpdmVuIGluIEI8ZGViaWFuL3NvdXJjZS9mb3JtYXQ+LiIKK21zZ3N0ciAiIgorIkFudsOkbmQgZGV0IGdpdm5hIGZvcm1hdGV0IGbDtnIgYXR0IGJ5Z2dhIGvDpGxsa29kc3Bha2V0ZXQuIERldCDDtnZlcnN0eXIgaW50ZSAiCisiZXR0IGV2ZW50dWVsbHQgZm9ybWF0IHNvbSBhbmdlcyBpIEI8ZGViaWFuL3NvdXJjZS9mb3JtYXQ+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToxMzcKK21zZ2lkICIiCisiUmVhZCBzdWJzdGl0dXRpb24gdmFyaWFibGVzIGluIEk8c3Vic3R2YXJzZmlsZT47IHRoZSBkZWZhdWx0IGlzIHRvIG5vdCByZWFkICIKKyJhbnkgZmlsZS4gVGhpcyBvcHRpb24gY2FuIGJlIHVzZWQgbXVsdGlwbGUgdGltZXMgdG8gcmVhZCBzdWJzdGl0dXRpb24gIgorInZhcmlhYmxlcyBmcm9tIG11bHRpcGxlIGZpbGVzLiIKK21zZ3N0ciAiIgorIkzDpHMgc3Vic3RpdHVlcmluZ3N2YXJpYWJsZXIgZnLDpW4gSTxzdWJzdHZhcmZpbD47IHN0YW5kYXJkdsOkcmRlIMOkciBhdHQgaW50ZSAiCisibMOkc2EgbsOlZ29uIGZpbC5GbGFnZ2FuIGthbiBhbnbDpG5kYXMgZmxlcmEgZ8OlbmdlciBmw7ZyIGF0dCBsw6RzYSAiCisic3Vic3RpdHVlcmluZ3N2YXJpYWJsZXIgZnLDpW4gZmxlcmEgZmlsZXIuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMToxNDMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1aPkk8Y29tcHJlc3Npb24+LCBCPC0tY29tcHJlc3Npb24+PUk8Y29tcHJlc3Npb24+IgorbXNnc3RyICJCPC1aPkk8a29tcHJpbWVyaW5nPiwgQjwtLWNvbXByZXNzaW9uPj1JPGtvbXByaW1lcmluZz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MTUxCittc2dpZCAiIgorIlNwZWNpZnkgdGhlIGNvbXByZXNzaW9uIHRvIHVzZSBmb3IgY3JlYXRlZCBmaWxlcyAodGFyYmFsbHMgYW5kIGRpZmZzKS4gIE5vdGUgIgorInRoYXQgdGhpcyBvcHRpb24gd2lsbCBub3QgY2F1c2UgZXhpc3RpbmcgdGFyYmFsbHMgdG8gYmUgcmVjb21wcmVzc2VkLCBpdCAiCisib25seSBhZmZlY3RzIG5ldyBmaWxlcy4gU3VwcG9ydGVkIHZhbHVlcyBhcmU6IEk8Z3ppcD4sIEk8YnppcDI+LCBJPGx6bWE+IGFuZCAiCisiSTx4ej4uICBJPGd6aXA+IGlzIHRoZSBkZWZhdWx0LiBJPHh6PiBpcyBvbmx5IHN1cHBvcnRlZCBzaW5jZSBkcGtnLWRldiAiCisiMS4xNS41LiIKK21zZ3N0ciAiIgorIkFuZ2VyIHZpbGtlbiBrb21wcmltZXJpbmcgc29tIHNrYWxsIGFudsOkbmRhcyBmw7ZyIGRlIHNrYXBhZGUgZmlsZXJuYSAodGFyLSIKKyJib2xsYXIgb2NoIGRpZmZhcikuIE9ic2VydmVyYSBhdHQgZmxhZ2dhbiBpbnRlIGfDtnIgYXR0IGJlZmludGxpZ2EgdGFyLWJvbGxhciAiCisicGFja2FzIG9tLCB1dGFuIGVuYmFydCBww6V2ZXJrYXIgbnlhIGZpbGVyLiBWw6RyZGVuIHNvbSBzdMO2ZHMgw6RyOiBJPGd6aXA+LCAiCisiSTxiemlwMj4sIEk8bHptYT4gc2FtdCBJPHh6Pi4gSTxnemlwPiDDpHIgZsO2cnZhbGV0LiBTdMO2ZCBmw7ZyIEk8eHo+IGZpbm5zIGJhcmEgIgorImZyw6VuIG9jaCBtZWQgZHBrZy1kZXYgMS4xNS41LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6MTUxCisjLCBuby13cmFwCittc2dpZCAiQjwtej5JPGxldmVsPiwgQjwtLWNvbXByZXNzaW9uLWxldmVsPj1JPGxldmVsPiIKK21zZ3N0ciAiQjwtej5JPG5pdsOlPiwgQjwtLWNvbXByZXNzaW9uLWxldmVsPj1JPG5pdsOlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToxNTcKK21zZ2lkICIiCisiQ29tcHJlc3Npb24gbGV2ZWwgdG8gdXNlLiBBcyB3aXRoIEI8LVo+IGl0IG9ubHkgYWZmZWN0cyBuZXdseSBjcmVhdGVkIGZpbGVzLiAiCisiU3VwcG9ydGVkIHZhbHVlcyBhcmU6IEk8MT4gdG8gSTw5PiwgSTxiZXN0PiwgYW5kIEk8ZmFzdD4uICBUaGUgZGVmYXVsdCBpcyAiCisiSTw5PiBmb3IgZ3ppcCBhbmQgYnppcDIsIEk8Nj4gZm9yIHh6IGFuZCBsem1hLiIKK21zZ3N0ciAiIgorIktvbXByaW1lcmluZ3NuaXbDpSBhdHQgYW52w6RuZGEuIFNvbSBtZWQgQjwtWj4gcMOldmVya2FzIGJhcmEgZmlsZXIgc29tICIKKyJueXNrYXBhcy4gVsOkcmRlbiBzb20gc3TDtmRzIMOkcjogSTwxPiB0aWxsIEk8OT4sIEk8YmVzdD4gKGLDpHN0KSBvY2ggSTxmYXN0PiAiCisiKHNuYWJiKS4gSTw5PiDDpHIgZsO2cnZhbCBmw7ZyIGd6aXAgb2NoIGJ6aXAyLCBJPDY+IGbDtnIgeHogb2NoIGx6bWEuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMToxNTcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1pPltJPHJlZ2V4cD5dLCBCPC0tZGlmZi1pZ25vcmU+Wz1JPHJlZ2V4cD5dIgorbXNnc3RyICJCPC1pPltJPHJlZy51dHRyPl0sIEI8LS1kaWZmLWlnbm9yZT5bPUk8cmVnLnV0dHI+XSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToxNjkKK21zZ2lkICIiCisiWW91IG1heSBzcGVjaWZ5IGEgcGVybCByZWd1bGFyIGV4cHJlc3Npb24gdG8gbWF0Y2ggZmlsZXMgeW91IHdhbnQgZmlsdGVyZWQgIgorIm91dCBvZiB0aGUgbGlzdCBvZiBmaWxlcyBmb3IgdGhlIGRpZmYuIChUaGlzIGxpc3QgaXMgZ2VuZXJhdGVkIGJ5IGEgZmluZCAiCisiY29tbWFuZC4pIChJZiB0aGUgc291cmNlIHBhY2thZ2UgaXMgYmVpbmcgYnVpbHQgYXMgYSB2ZXJzaW9uIDMgc291cmNlICIKKyJwYWNrYWdlIHVzaW5nIGEgVkNTLCB0aGlzIGNhbiBiZSB1c2VkIHRvIGlnbm9yZSB1bmNvbW1pdGVkIGNoYW5nZXMgb24gIgorInNwZWNpZmljIGZpbGVzLiBVc2luZyAtaS4qIHdpbGwgaWdub3JlIGFsbCBvZiB0aGVtLikgIEI8LWk+IGJ5IGl0c2VsZiAiCisiZW5hYmxlcyB0aGUgb3B0aW9uLCB3aXRoIGEgZGVmYXVsdCByZWdleHAgdGhhdCB3aWxsIGZpbHRlciBvdXQgY29udHJvbCBmaWxlcyAiCisiYW5kIGRpcmVjdG9yaWVzIG9mIHRoZSBtb3N0IGNvbW1vbiByZXZpc2lvbiBjb250cm9sIHN5c3RlbXMsIGJhY2t1cCBhbmQgc3dhcCAiCisiZmlsZXMgYW5kIExpYnRvb2wgYnVpbGQgb3V0cHV0IGRpcmVjdG9yaWVzLiBUaGVyZSBjYW4gb25seSBiZSBvbmUgYWN0aXZlICIKKyJyZWdleHAsIG9mIG11bHRpcGxlIEI8LWk+IG9wdGlvbnMgb25seSB0aGUgbGFzdCBvbmUgd2lsbCB0YWtlIGVmZmVjdC4iCittc2dzdHIgIiIKKyJEdSBrYW4gYW5nZSBldHQgcmVndWxqw6RydCB1dHRyeWNrIGkgcGVybGZvcm1hdCBmw7ZyIGF0dCBtYXRjaGEgZmlsZXIgc29tIGR1ICIKKyJ2aWxsIHNrYWxsIGZpbHRyZXJhcyB1dCB1ciBsaXN0YW4gw7Z2ZXIgZmlsZXIgZsO2ciBkaWZmZW4uIChMaXN0YW4gc2thcGFzIGF2ICIKKyJldHQgZmluZC1rb21tYW5kby4pIChPbSBrw6RsbGtvZHNwYWtldGV0IGJ5Z2dzIHNvbSBldHQgdmVyc2lvbiAzLXBha2V0IG1lZCAiCisiZXR0IFZDUyBrYW4gZGV0dGEgYW52w6RuZGFzIGbDtnIgYXR0IGlnbm9yZXJhIMOkbmRyaW5nYXIgc29tIGludGUgaGFyIGNoZWNrYXRzICIKKyJpbiBww6UgZGUgYW5naXZuYSBmaWxlcm5hLiAtaS4qIGtvbW1lciBhdHQgaWdub3JlcmEgc2FtdGxpZ2EuKSBCPC1pPiBlbnNhbXQgIgorImFrdGl2ZXJhciBmdW5rdGlvbmVuLCBtZWQgZXR0IHN0YW5kYXJkdsOkcmRlIHNvbSBmaWx0cmVyYXIgdXQgc3R5cmZpbGVyIG9jaCAiCisia2F0YWxvZ2VyIGZyw6VuIGRlIGZsZXN0YSB2YW5saWdhIHZlcnNpb25zaGFudGVyaW5nc3N5c3RlbSwgc8Oka2VyaGV0c2tvcGlvciwgIgorInbDpHhsaW5nc2ZpbGVyIG9jaCBMaWJ0b29sLWJ5Z2d1dGRhdGFrYXRhbG9nZXIuIEVuZGFzdCBldHQgcmVndWxqw6RydCBrYW4gdmFyYSAiCisiYWt0aXZ0LCBvbSBkdSBhbmdlciBmbGVyYSBCPC1pPi1mbGFnZ29yIMOkciBkZXQgZGVuIHNpc3RhIHDDpSBrb21tYW5kb3JhZGVuICIKKyJzb20gZ8OkbGxlci4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MTc5Cittc2dpZCAiIgorIlRoaXMgaXMgdmVyeSBoZWxwZnVsIGluIGN1dHRpbmcgb3V0IGV4dHJhbmVvdXMgZmlsZXMgdGhhdCBnZXQgaW5jbHVkZWQgaW4gIgorInRoZSBkaWZmLCBlLmcuIGlmIHlvdSBtYWludGFpbiB5b3VyIHNvdXJjZSBpbiBhIHJldmlzaW9uIGNvbnRyb2wgc3lzdGVtIGFuZCAiCisid2FudCB0byB1c2UgYSBjaGVja291dCB0byBidWlsZCBhIHNvdXJjZSBwYWNrYWdlIHdpdGhvdXQgaW5jbHVkaW5nIHRoZSAiCisiYWRkaXRpb25hbCBmaWxlcyBhbmQgZGlyZWN0b3JpZXMgdGhhdCBpdCB3aWxsIHVzdWFsbHkgY29udGFpbiAoZS5nLiBDVlMvLCAuIgorImN2c2lnbm9yZSwgLnN2bi8pLiBUaGUgZGVmYXVsdCByZWdleHAgaXMgYWxyZWFkeSB2ZXJ5IGV4aGF1c3RpdmUsIGJ1dCBpZiB5b3UgIgorIm5lZWQgdG8gcmVwbGFjZSBpdCwgcGxlYXNlIG5vdGUgdGhhdCBieSBkZWZhdWx0IGl0IGNhbiBtYXRjaCBhbnkgcGFydCBvZiBhICIKKyJwYXRoLCBzbyBpZiB5b3Ugd2FudCB0byBtYXRjaCB0aGUgYmVnaW4gb2YgYSBmaWxlbmFtZSBvciBvbmx5IGZ1bGwgIgorImZpbGVuYW1lcywgeW91IHdpbGwgbmVlZCB0byBwcm92aWRlIHRoZSBuZWNlc3NhcnkgYW5jaG9ycyAoZS5nLiAnKF58LyknLCAiCisiJygkfC8pJykgeW91cnNlbGYuIgorbXNnc3RyICIiCisiRmxhZ2dhbiDDpHIgbXlja2V0IGFudsOkbmRiYXIgZsO2ciBhdHQgdXRlc2x1dGEgZXh0cmFmaWxlciBzb20ga29tbWVyIG1lZCBpICIKKyJkaWZmZW4sIHQuZXggb20gZHUgdW5kZXJow6VsbGVyIGRpbiBrw6RsbGtvZCBpIGV0dCB2ZXJzaW9uc2hhbnRlcmluZ3NzeXN0ZW0gIgorIm9jaCB2aWxsIGFudsOkbmRhIGVuIHV0Y2hlY2tuaW5nIGbDtnIgYXR0IGJ5Z2dhIGV0dCBrw6RsbGtvZHNwYWtldCB1dGFuIGF0dCB0YSAiCisibWVkIGRlIHl0dGVybGlnYXJlIGZpbGVyIG9jaCBkZXQgbm9ybWFsdCBpbm5laMOlbGxlciAodC5leCBDVlMvLCAuY3ZzaWdub3JlLCAuIgorInN2bi8pLiBEZXQgZsO2cnZhbGRhIHJlZ3VsasOkcmEgdXR0cnlja2V0IHTDpGNrZXIgcmVkYW4gaW4gbcOlbmdhIGF2IGRlc3NhLCBtZW4gIgorIm9tIGR1IMOkbmRyYXIgZGV0LCBrb20gaWjDpWcgYXR0IGRldCBzb20gc3RhbmRhcmQga2FuIHRyw6RmZmEgYWxsYSBkZWxhciBhdiAiCisiZmlsbmFtbmV0LiBTw6UsIG9tIGR1IHRyw6RmZmEgYmFyYSBiw7ZyamFuIGF2IGV0dCBmaWxuYW1uIGVsbGVyIGhlbGEgZmlsbmFtbiAiCisibcOlc3RlIGR1IHNqw6RsdiBsw6RnZ2EgdGlsbCBkZSBmw7ZyYW5rcmluZ2FyIHNvbSDDpHIgbsO2ZHbDpG5kaWdhICh0LmV4ICcoXnwvKScsICIKKyInKCR8LyknKS4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjE3OQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1leHRlbmQtZGlmZi1pZ25vcmU+PUk8cmVnZXhwPiIKK21zZ3N0ciAiQjwtLWV4dGVuZC1kaWZmLWlnbm9yZT49STxyZWcudXR0cj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MTg2Cittc2dpZCAiIgorIlRoZSBwZXJsIHJlZ3VsYXIgZXhwcmVzc2lvbiBzcGVjaWZpZWQgd2lsbCBleHRlbmQgdGhlIGRlZmF1bHQgdmFsdWUgb2YgQjwtLSIKKyJkaWZmLWlnbm9yZT4gYW5kIGl0cyBjdXJyZW50IHZhbHVlIChpZiBzZXQpLiBJdCBkb2VzIHRoaXMgYnkgY29uY2F0ZW5hdGluZyAiCisiXCJCPHw+STxyZWdleHA+XCIgdG8gdGhlIGV4aXN0aW5nIHZhbHVlLiAgVGhpcyBvcHRpb24gaXMgY29udmVuaWVudCB0byB1c2UgIgorImluIEI8ZGViaWFuL3NvdXJjZS9vcHRpb25zPiB0byBleGNsdWRlIHNvbWUgYXV0by1nZW5lcmF0ZWQgZmlsZXMgZnJvbSB0aGUgIgorImF1dG9tYXRpYyBwYXRjaCBnZW5lcmF0aW9uLiIKK21zZ3N0ciAiIgorIkRldCByZWd1bGrDpHJhIHV0dHJ5Y2tldCBpIHBlcmxmb3JtYXQgc29tIGFuZ2F2cyB1dMO2a2FyIHN0YW5kYXJkdsOkcmRldCBmw7ZyICIKKyJCPC0tZGlmZi1pZ25vcmU+IG9jaCBkZXNzIG51dmFyYW5kZSB2w6RyZGUgKG9tIHNhdHQpLiBEZXQgZ8O2ciBzw6UgZ2Vub20gYXR0ICIKKyJsw6RnZ2EgdGlsbCBcIkI8fD5JPHJlZy51dHRyeT5cIiBlZnRlciBzdGFuZGFyZHV0dHJ5Y2tldC4gRmxhZ2dhbiDDpHIgbnl0dGlnICIKKyJmw7ZyIEI8ZGViaWFuL3NvdXJjZS9vcHRpb25zPiBmw7ZyIGF0dCBleGtsdWRlcmEgZW4gZGVsIGF1dG9tYXRpc2t0IGdlbmVyZXJhZGUgIgorImZpbGVyIGZyw6VuIHNrYXBhbmRldCBhdiBhdXRvbWF0aXNrYSBwYXRjaGFyLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6MTg2CisjLCBuby13cmFwCittc2dpZCAiQjwtST5bSTxmaWxlLXBhdHRlcm4+XSwgQjwtLXRhci1pZ25vcmU+Wz1JPGZpbGUtcGF0dGVybj5dIgorbXNnc3RyICJCPC1JPltJPGZpbG3Dtm5zdGVyPl0sIEI8LS10YXItaWdub3JlPls9STxmaWxtw7Zuc3Rlcj5dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjE5NQorbXNnaWQgIiIKKyJJZiB0aGlzIG9wdGlvbiBpcyBzcGVjaWZpZWQsIHRoZSBwYXR0ZXJuIHdpbGwgYmUgcGFzc2VkIHRvIEI8dGFyPigxKSdzIC0tIgorImV4Y2x1ZGUgb3B0aW9uIHdoZW4gaXQgaXMgY2FsbGVkIHRvIGdlbmVyYXRlIGEgLm9yaWcudGFyIG9yIC50YXIgZmlsZS4gRm9yICIKKyJleGFtcGxlLCAtSUNWUyB3aWxsIG1ha2UgdGFyIHNraXAgb3ZlciBDVlMgZGlyZWN0b3JpZXMgd2hlbiBnZW5lcmF0aW5nIGEgLiIKKyJ0YXIuZ3ogZmlsZS4gVGhlIG9wdGlvbiBtYXkgYmUgcmVwZWF0ZWQgbXVsdGlwbGUgdGltZXMgdG8gbGlzdCBtdWx0aXBsZSAiCisicGF0dGVybnMgdG8gZXhjbHVkZS4iCittc2dzdHIgIiIKKyJPbSBmbGFnZ2FuIGFuZ2VzIGtvbW1lciBmaWxuYW1uZXQgYXR0IHPDpG5kYXMgdmlkYXJlIHRpbGwgQjx0YXI+KDEpOnMgLS0iCisiZXhjbHVkZS1mbGFnZ2EgbsOkciBkZXQgYW5yb3BhcyBmw7ZyIGF0dCBza2FwYSBlbiAub3JpZy50YXIuZ3ogZWxsZXIgLnRhci5nei0iCisiZmlsLiBUaWxsIGV4ZW1wZWwga29tbWVyIC1JQ1ZTIGF0dCBob3BwYSDDtnZlciBDVlMta2F0YWxvZ2VyIG7DpHIgdGFyLmd6LWZpbGVuICIKKyJza2FwYXMuIEZsYWdnYW4ga2FuIHVwcHJlcGFzIGZsZXJhIGfDpW5nZXIgZsO2ciBhdHQgbGlzdGEgZmxlcmEgZmlsbmFtbiBzb20gIgorInNrYWxsIHV0ZXNsdXRhcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MjAwCittc2dpZCAiIgorIkI8LUk+IGJ5IGl0c2VsZiBhZGRzIGRlZmF1bHQgLS1leGNsdWRlIG9wdGlvbnMgdGhhdCB3aWxsIGZpbHRlciBvdXQgY29udHJvbCAiCisiZmlsZXMgYW5kIGRpcmVjdG9yaWVzIG9mIHRoZSBtb3N0IGNvbW1vbiByZXZpc2lvbiBjb250cm9sIHN5c3RlbXMsIGJhY2t1cCAiCisiYW5kIHN3YXAgZmlsZXMgYW5kIExpYnRvb2wgYnVpbGQgb3V0cHV0IGRpcmVjdG9yaWVzLiIKK21zZ3N0ciAiIgorIkI8LWk+IGVuc2FtdCBha3RpdmVyYXIgZnVua3Rpb25lbiwgbWVkIGV0dCBzdGFuZGFyZHbDpHJkZSBzb20gZmlsdHJlcmFyIHV0ICIKKyJzdHlyZmlsZXIgb2NoIGthdGFsb2dlciBmcsOlbiBkZSBmbGVzdGEgdmFubGlnYSB2ZXJzaW9uc2hhbnRlcmluZ3NzeXN0ZW0sICIKKyJzw6RrZXJoZXRza29waW9yLCB2w6R4bGluZ3NmaWxlciBvY2ggTGlidG9vbC1ieWdndXRkYXRha2F0YWxvZ2VyLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToyMTIKK21zZ2lkICIiCisiQjxOb3RlOj4gV2hpbGUgdGhleSBoYXZlIHNpbWlsYXIgcHVycG9zZXMsIEI8LWk+IGFuZCBCPC1JPiBoYXZlIHZlcnkgIgorImRpZmZlcmVudCBzeW50YXggYW5kIHNlbWFudGljcy4gQjwtaT4gY2FuIG9ubHkgYmUgc3BlY2lmaWVkIG9uY2UgYW5kIHRha2VzIGEgIgorInBlcmwgY29tcGF0aWJsZSByZWd1bGFyIGV4cHJlc3Npb24gd2hpY2ggaXMgbWF0Y2hlZCBhZ2FpbnN0IHRoZSBmdWxsICIKKyJyZWxhdGl2ZSBwYXRoIG9mIGVhY2ggZmlsZS4gQjwtST4gY2FuIHNwZWNpZmllZCBtdWx0aXBsZSB0aW1lcyBhbmQgdGFrZXMgYSAiCisiZmlsZW5hbWUgcGF0dGVybiB3aXRoIHNoZWxsIHdpbGRjYXJkcy4gIFRoZSBwYXR0ZXJuIGlzIGFwcGxpZWQgdG8gdGhlIGZ1bGwgIgorInJlbGF0aXZlIHBhdGggYnV0IGFsc28gdG8gZWFjaCBwYXJ0IG9mIHRoZSBwYXRoIGluZGl2aWR1YWxseS4gVGhlIGV4YWN0ICIKKyJzZW1hbnRpYyBvZiB0YXIncyAtLWV4Y2x1ZGUgb3B0aW9uIGlzIHNvbWV3aGF0IGNvbXBsaWNhdGVkLCBzZWUgaHR0cDovL3d3dy4iCisiZ251Lm9yZy9zb2Z0d2FyZS90YXIvbWFudWFsL3Rhci5odG1sI3dpbGRjYXJkcyBmb3IgYSBmdWxsIGRvY3VtZW50YXRpb24uIgorbXNnc3RyICIiCisiQjxPYnNlcnZlcmE6PiDDhHZlbiBvbSBkZSBhbnbDpG5kcyB0aWxsIGxpa25hbmRlIMOkbmRhbcOlbCwgc8OlIGhhciBCPC1pPiBvY2ggQjwtIgorIkk+IHbDpGxkaWd0IG9saWthIHN5bnRheCBvY2ggc2VtYW50aWsuIEI8LWk+IGthbiBlbmRhc3QgYW5nZXMgZW4gZ8Olbmcgb2NoIHRhciAiCisiZXR0IHBlcmwta29tcGF0aWJlbHQgcmVndWxqw6RydCB1dHRyeWNrLCB2aWxrZXQgbWF0Y2hhcyBtb3QgZGVuIGtvbXBsZXR0YSAiCisicmVsYXRpdmEgc8O2a3bDpGdlbiBmw7ZyIHZhcmplIGZpbC4gQjwtST4ga2FuIGFuZ2VzIGZsZXJhIGfDpW5nZXIgb2NoIHRhciBldHQgIgorImZpbG5hbW5zc8O2a23DpG5zdGVyIG1lZCBza2Fsam9rZXJ0ZWNrZW4uIE3Dtm5zdHJldCBtYXRjaGFzIG1vdCBkZW4ga29tcGxldHRhICIKKyJyZWxhdGl2YSBzw7ZrdsOkZ2VuLCBtZW4gw6R2ZW4gaW5kaXZpZHVlbGx0IG1vdCB2YXJqZSBrb21wb25lbnQgaSBzw7ZrdsOkZ2VuLiBEZW4gIgorImV4YWt0YSBzZW1hbnRpa2VuIGbDtnIgdGFyOnMgLS1leGNsdWRlLWZsYWdnYSDDpHIgbsOlZ290IGtvbXBsaWNlcmFkLCBzZSBodHRwOi8vIgorInd3dy5nbnUub3JnL3NvZnR3YXJlL3Rhci9tYW51YWwvdGFyLmh0bWwjd2lsZGNhcmRzIGbDtnIgZnVsbHN0w6RuZGlnICIKKyJkb2t1bWVudGF0aW9uLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToyMTUKK21zZ2lkICIiCisiVGhlIGRlZmF1bHQgcmVnZXhwIGFuZCBwYXR0ZXJucyBmb3IgYm90aCBvcHRpb25zIGNhbiBiZSBzZWVuIGluIHRoZSBvdXRwdXQgIgorIm9mIHRoZSBCPC0taGVscD4gY29tbWFuZC4iCittc2dzdHIgIiIKKyJGw7ZydmFsdCByZWd1bGrDpHJ0IHV0dHJ5Y2sgb2NoIHPDtmttw7Zuc3RlciBmw7ZyIGRlIGLDpGdnZSBmbGFnZ29ybmEga2FuIHNlcyBpICIKKyJ1dGRhdGEgZsO2ciBCPC0taGVscD4ta29tbWFuZG90LiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctc291cmNlLjE6MjE1CisjLCBuby13cmFwCittc2dpZCAiR0VORVJJQyBFWFRSQUNUIE9QVElPTlMiCittc2dzdHIgIkFMTE3DhE5OQSBVUFBBQ0tOSU5HU0ZMQUdHT1IiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjIxNgorIywgbm8td3JhcAorbXNnaWQgIkI8LS1uby1jb3B5PiIKK21zZ3N0ciAiQjwtLW5vLWNvcHk+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjIxOQorbXNnaWQgIkRvIG5vdCBjb3B5IG9yaWdpbmFsIHRhcmJhbGxzIG5lYXIgdGhlIGV4dHJhY3RlZCBzb3VyY2UgcGFja2FnZS4iCittc2dzdHIgIiIKKyJLb3BpZXJhIGludGUgb3JpZ2luYWwtdGFyYm9sbGFyIGkgbsOkcmhldGVuIGF2IGRldCB1cHBhY2thZGUga8OkbGxrb2RzcGFrZXRldC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjIxOQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1uby1jaGVjaz4iCittc2dzdHIgIkI8LS1uby1jaGVjaz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MjIyCittc2dpZCAiRG8gbm90IGNoZWNrIHNpZ25hdHVyZXMgYW5kIGNoZWNrc3VtcyBiZWZvcmUgdW5wYWNraW5nLiIKK21zZ3N0ciAiS29udHJvbGxlcmEgaW50ZSBzaWduYXR1cmVyIG9jaCBrb250cm9sbHN1bW1vciBmw7ZyZSB1cHBhY2tuaW5nLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6MjIyCisjLCBuby13cmFwCittc2dpZCAiQjwtLXJlcXVpcmUtdmFsaWQtc2lnbmF0dXJlPiIKK21zZ3N0ciAiQjwtLXJlcXVpcmUtdmFsaWQtc2lnbmF0dXJlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToyMzAKK21zZ2lkICIiCisiUmVmdXNlIHRvIHVucGFjayB0aGUgc291cmNlIHBhY2thZ2UgaWYgaXQgZG9lc24ndCBjb250YWluIGFuIE9wZW5QR1AgIgorInNpZ25hdHVyZSB0aGF0IGNhbiBiZSB2ZXJpZmllZCBlaXRoZXIgd2l0aCB0aGUgdXNlcidzIEk8dHJ1c3RlZGtleXMuZ3BnPiAiCisia2V5cmluZywgb25lIG9mIHRoZSB2ZW5kb3Itc3BlY2lmaWMga2V5cmluZ3MsIG9yIG9uZSBvZiB0aGUgb2ZmaWNpYWwgRGViaWFuICIKKyJrZXlyaW5ncyAoSTwvdXNyL3NoYXJlL2tleXJpbmdzL2RlYmlhbi1rZXlyaW5nLmdwZz4gYW5kIEk8L3Vzci9zaGFyZS8iCisia2V5cmluZ3MvZGViaWFuLW1haW50YWluZXJzLmdwZz4pLiIKK21zZ3N0ciAiIgorIlbDpGdyYSBwYWNrYSB1cHAga8OkbGxrb2RzcGFrZXRldCBvbSBkZXQgaW50ZSBpbm5laMOlbGxlciBlbiBPcGVuUEdQLXNpZ25hdHVyICIKKyJzb20ga2FuIHZlcmlmaWVyYXMgYW50aW5nZW4gbWVkIGFudsOkbmRhcmVucyBJPHRydXN0ZWRrZXlzLmdwZz4tbnlja2VscmluZywgIgorImVuIGF2IGRlIHPDpGxqYXJzcGVjaWZrYSBueWNrZWxyaW5nYXJuYSwgZWxsZXIgZW4gYXYgZGUgb2ZmaWNpZWxsYSAiCisiRGViaWFubnlja2VscmluZ2FybmEgKEk8L3Vzci9zaGFyZS9rZXlyaW5ncy9kZWJpYW4ta2V5cmluZy5ncGc+IG9jaCBJPC91c3IvIgorInNoYXJlL2tleXJpbmdzL2RlYmlhbi1tYWludGFpbmVycy5ncGc+KS4iCisKKyMuIHR5cGU6IFNICisjOiBkcGtnLXNvdXJjZS4xOjIzMQorIywgbm8td3JhcAorbXNnaWQgIlNPVVJDRSBQQUNLQUdFIEZPUk1BVFMiCittc2dzdHIgIkZPUk1BVCBQw4UgS8OETExLT0RTUEFLRVQiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MjM2Cittc2dpZCAiIgorIklmIHlvdSBkb24ndCBrbm93IHdoYXQgc291cmNlIGZvcm1hdCB0byB1c2UsIHlvdSBzaG91bGQgcHJvYmFibHkgcGljayBlaXRoZXIgIgorIlwiMy4wIChxdWlsdClcIiBvciBcIjMuMCAobmF0aXZlKVwiLiBTZWUgaHR0cDovL3dpa2kuZGViaWFuLm9yZy9Qcm9qZWN0cy8iCisiRGViU3JjMy4wIGZvciBpbmZvcm1hdGlvbiBvbiB0aGUgZGVwbG95bWVudCBvZiB0aG9zZSBmb3JtYXRzIHdpdGhpbiBEZWJpYW4uIgorbXNnc3RyICIiCisiT20gZHUgaW50ZSB2ZXQgdmlsa2V0IGvDpGxsa29kc3Bha2V0Zm9ybWF0IGR1IHNrYWxsIGFudsOkbmRhLCBiw7ZyIGR1ICIKKyJhbnRhZ2xpZ2VuIHbDpGxqYSBhbnRpbmdlbiBcIjMuMCAocXVpbHQpXCIgZWxsZXIgXCIzLjAgKG5hdGl2ZSlcIi4gU2UgaHR0cDovLyIKKyJ3aWtpLmRlYmlhbi5vcmcvUHJvamVjdHMvRGViU3JjMy4wIGbDtnIgaW5mb3JtYXRpb24gb20gaHVyIGRlc3NhIGZvcm1hdCBzw6R0dHMgIgorImkgcHJvZHVrdGlvbiBpIERlYmlhbi4iCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjIzNworIywgbm8td3JhcAorbXNnaWQgIkZvcm1hdDogMS4wIgorbXNnc3RyICJGb3JtYXQ6IDEuMCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToyNDEKK21zZ2lkICIiCisiQSBzb3VyY2UgcGFja2FnZSBpbiB0aGlzIGZvcm1hdCBjb25zaXN0cyBlaXRoZXIgb2YgYSBCPC5vcmlnLnRhci5nej4gIgorImFzc29jaWF0ZWQgdG8gYSBCPC5kaWZmLmd6PiBvciBhIHNpbmdsZSBCPC50YXIuZ3o+IChpbiB0aGF0IGNhc2UgdGhlIHBhY2thZ2UgIgorImlzIHNhaWQgdG8gYmUgSTxuYXRpdmU+KS4iCittc2dzdHIgIiIKKyJFdHQga8OkbGxrb2RzcGFrZXQgaSBkZXR0YSBmb3JtYXQgYmVzdMOlciBhbnRpbmdlbiBhdiBlbiBCPC5vcmlnLnRhci5nej4sICIKKyJmw7ZyYnVuZGVuIG1lZCBlbiBCPC5kaWZmLmd6PiwgZWxsZXIgZW4gZW5zYW0gQjwudGFyLmd6PiAoaSBzw6UgZmFsbCBhbnNlcyAiCisicGFrZXRldCB2YXJhIEk8ZWdldD4sIFwiSTxuYXRpdmU+XCIpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToyNDMgZHBrZy1zb3VyY2UuMTo0MTEgZHBrZy1zb3VyY2UuMTo1ODYgZHBrZy1zb3VyY2UuMTo2MjUKK21zZ2lkICJCPEV4dHJhY3Rpbmc+IgorbXNnc3RyICJCPFVwcGFja25pbmc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjI1MworbXNnaWQgIiIKKyJFeHRyYWN0aW5nIGEgbmF0aXZlIHBhY2thZ2UgaXMgYSBzaW1wbGUgZXh0cmFjdGlvbiBvZiB0aGUgc2luZ2xlIHRhcmJhbGwgaW4gIgorInRoZSB0YXJnZXQgZGlyZWN0b3J5LiBFeHRyYWN0aW5nIGEgbm9uLW5hdGl2ZSBwYWNrYWdlIGlzIGRvbmUgYnkgZmlyc3QgIgorInVucGFja2luZyB0aGUgQjwub3JpZy50YXIuZ3o+IGFuZCB0aGVuIGFwcGx5aW5nIHRoZSBwYXRjaCBjb250YWluZWQgaW4gdGhlICIKKyJCPC5kaWZmLmd6PiBmaWxlLiBUaGUgdGltZXN0YW1wIG9mIGFsbCBwYXRjaGVkIGZpbGVzIGlzIHJlc2V0IHRvIHRoZSAiCisiZXh0cmFjdGlvbiB0aW1lIG9mIHRoZSBzb3VyY2UgcGFja2FnZSAodGhpcyBhdm9pZHMgdGltZXN0YW1wIHNrZXdzIGxlYWRpbmcgIgorInRvIHByb2JsZW1zIHdoZW4gYXV0b2dlbmVyYXRlZCBmaWxlcyBhcmUgcGF0Y2hlZCkuIFRoZSBkaWZmIGNhbiBjcmVhdGUgbmV3ICIKKyJmaWxlcyAodGhlIHdob2xlIGRlYmlhbiBkaXJlY3RvcnkgaXMgY3JlYXRlZCB0aGF0IHdheSkgYnV0IGNhbid0IHJlbW92ZSAiCisiZmlsZXMgKGVtcHR5IGZpbGVzIHdpbGwgYmUgbGVmdCBvdmVyKS4iCittc2dzdHIgIiIKKyJBdHQgcGFja2EgdXBwIGV0dCBEZWJpYW5lZ2V0IHBha2V0IGlubmViw6RyIGF0dCBwYWNrYSB1cHAgZGVuIGVuc2FtbWEgIgorInRhcmJvbGxlbiBpIG3DpWxrYXRhbG9nZW4uIEF0dCBwYWNrYSB1cHAgZXR0IGlja2UtZWdldCBwYWtldCBpbm5lYsOkciBhdHQgIgorImbDtnJzdCBwYWNrYSB1cHAgSTwub3JpZy50YXIuZ3o+LWZpbGVuIG9jaCBzZWRhbiBnZW5vbSBhdHQgdGlsbMOkbXBhIHBhdGNoZW4gIgorInNvbSBmaW5ucyBpIEI8LmRpZmYuZ3o+LWZpbGVuLiBUaWRzc3TDpG1wbGFybmEgZsO2ciBhbGxhIGZpbGVyIG5vbGxzdMOkbGxzIHRpbGwgIgorImRlbiB0aWRwdW5rdCBkw6Uga8OkbGxrb2RzcGFrZXRldCBleHRyYWhlcmFkZXMgKHZpbGtldCB1bmR2aWtlciAiCisidGlkc3N0w6RtcGVsZsO2cnNranV0bmluZ2FyIHNvbSBrdW5kZSBsZWRhIHRpbGwgcHJvYmxlbSBuw6RyIGF1dG9nZW5lcmVyYWRlICIKKyJmaWxlciBwYXRjaGFzKS4gRGlmZmVuIGthbiBza2FwYSBueWEgZmlsZXIgKGhlbGEgZGViaWFuLWthdGFsb2dlbiBza2FwYXMgcMOlICIKKyJkZXQgc8OkdHRldCksIG1lbiBrYW4gaW50ZSB0YSBib3J0IGZpbGVyICh0b21tYSBmaWxlciBrb21tZXIgbMOkbW5hcyBrdmFyKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MjU1IGRwa2ctc291cmNlLjE6NDM5IGRwa2ctc291cmNlLjE6NTk3IGRwa2ctc291cmNlLjE6NjMwCittc2dpZCAiQjxCdWlsZGluZz4iCittc2dzdHIgIkI8QnlnZ2E+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjI2MQorbXNnaWQgIiIKKyJCdWlsZGluZyBhIG5hdGl2ZSBwYWNrYWdlIGlzIGp1c3QgY3JlYXRpbmcgYSBzaW5nbGUgdGFyYmFsbCB3aXRoIHRoZSBzb3VyY2UgIgorImRpcmVjdG9yeS4gQnVpbGRpbmcgYSBub24tbmF0aXZlIHBhY2thZ2UgaW52b2x2ZXMgZXh0cmFjdGluZyB0aGUgb3JpZ2luYWwgIgorInRhcmJhbGwgaW4gYSBzZXBhcmF0ZSBcIi5vcmlnXCIgZGlyZWN0b3J5IGFuZCByZWdlbmVyYXRpbmcgdGhlIEI8LmRpZmYuZ3o+ICIKKyJieSBjb21wYXJpbmcgdGhlIHNvdXJjZSBwYWNrYWdlIEk8ZGlyZWN0b3J5PiB3aXRoIHRoZSAub3JpZyBkaXJlY3RvcnkuIgorbXNnc3RyICIiCisiQXR0IGJ5Z2dhIGV0dCBEZWJpYW5lZ2V0IHBha2V0IGlubmViw6RyIGJhcmEgYXR0IHNrYXBhIGVuIGVuc2FtIHRhcmJvbGwgbWVkICIKKyJrw6RsbGtvZHNrYXRhbG9nZW4uIEF0dCBieWdnYSBldHQgaWNrZS1lZ2V0IHBha2V0IGlubmVmYXR0YXIgYXR0IGV4dHJhaGVyYSAiCisib3JpZ2luYWwtdGFyYm9sbGVuIGkgZW4gc2VwYXJhdCBcIi5vcmlnXCIta2F0YWxvZyBvY2ggc2thcGEgQjwuZGlmZi5nej4tIgorImZpbGVuIHDDpSBueXR0IGdlbm9tIGF0dCBqw6RtZsO2cmEga8OkbGxrb2RzcGFrZXRldHMgSTxrYXRhbG9nPiBtZWQgLm9yaWctIgorImthdGFsb2dlbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjI2MgorIywgbm8td3JhcAorbXNnaWQgIkI8QnVpbGQgb3B0aW9ucyAod2l0aCAtYik6PiIKK21zZ3N0ciAiQjxCeWdnZmxhZ2dvciAobWVkIC1iKTo+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjI3NQorbXNnaWQgIiIKKyJJZiBhIHNlY29uZCBub24tb3B0aW9uIGFyZ3VtZW50IGlzIHN1cHBsaWVkIGl0IHNob3VsZCBiZSB0aGUgbmFtZSBvZiB0aGUgIgorIm9yaWdpbmFsIHNvdXJjZSBkaXJlY3Rvcnkgb3IgdGFyZmlsZSBvciB0aGUgZW1wdHkgc3RyaW5nIGlmIHRoZSBwYWNrYWdlIGlzIGEgIgorIkRlYmlhbi1zcGVjaWZpYyBvbmUgYW5kIHNvIGhhcyBubyBEZWJpYW5pc2F0aW9uIGRpZmZzLiBJZiBubyBzZWNvbmQgYXJndW1lbnQgIgorImlzIHN1cHBsaWVkIHRoZW4gQjxkcGtnLXNvdXJjZT4gd2lsbCBsb29rIGZvciB0aGUgb3JpZ2luYWwgc291cmNlIHRhcmZpbGUgIgorIkk8cGFja2FnZT5CPF8+STx1cHN0cmVhbS12ZXJzaW9uPkI8Lm9yaWcudGFyLmd6PiBvciB0aGUgb3JpZ2luYWwgc291cmNlICIKKyJkaXJlY3RvcnkgSTxkaXJlY3Rvcnk+Qjwub3JpZz4gZGVwZW5kaW5nIG9uIHRoZSBCPC1zWD4gYXJndW1lbnRzLiIKK21zZ3N0ciAiIgorIk9tIGV0dCBhbmRyYSBhcmd1bWVudCBzb20gaW50ZSDDpHIgZW4gZmxhZ2dhIGFuZ2VzIHNrYWxsIGRldCB2YXJhIG5hbW5ldCBww6UgIgorIm9yaWdpbmFsa8OkbGxrb2Rza2F0YWxvZ2VuIGVsbGVyIC10YXJmaWxlbiBlbGxlciBkZW4gdG9tbWEgc3Ryw6RuZ2VuIG9tICIKKyJwYWtldGV0IMOkciBEZWJpYW5zcGVjaWZpa3Qgb2NoIGTDpHJmw7ZyIGludGUgaGFyIG7DpWdyYSBEZWJpYW5pc2VyaW5ncy1kaWZmYXIuICIKKyJPbSBpbmdldCBhbmRyYSBhcmd1bWVudCBhbmdlcyBrb21tZXIgQjxkcGtnLXNvdXJjZT4gYXR0IGxldGEgZWZ0ZXIgIgorIm9yaWdpbmFsa8OkbGxrb2RzdGFyZmlsZW4gSTxwYWtldD5CPF8+STx1cHBzdHLDtm1zdmVyc2lvbj5CPC5vcmlnLnRhci5nej4gIgorImVsbGVyIG9yaWdpbmFsa8OkbGxrb2Rza2F0YWxvZ2VuIEk8cGFrZXQ+Qjwub3JpZz4gYmVyb2VuZGUgcMOlIEI8LXNYPi0iCisiZmxhZ2dvcm5hLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMToyODEKK21zZ2lkICIiCisiQjwtc2E+LCBCPC1zcD4sIEI8LXNrPiwgQjwtc3U+IGFuZCBCPC1zcj4gd2lsbCBub3Qgb3ZlcndyaXRlIGV4aXN0aW5nICIKKyJ0YXJmaWxlcyBvciBkaXJlY3Rvcmllcy4gSWYgdGhpcyBpcyBkZXNpcmVkIHRoZW4gQjwtc0E+LCBCPC1zUD4sIEI8LXNLPiwgQjwtIgorInNVPiBhbmQgQjwtc1I+IHNob3VsZCBiZSB1c2VkIGluc3RlYWQuIgorbXNnc3RyICIiCisiQjwtc2E+LCBCPC1zcD4sIEI8LXNrPiwgQjwtc3U+IG9jaCBCPC1zcj4gc2tyaXZlciBpbnRlIMO2dmVyIGJlZmludGxpZ2EgdGFyLSIKKyJmaWxlciBvY2gga2F0YWxvZ2VyLiBPbSBkZXQgw7Zuc2thcyBiw7ZyICBCPC1zQT4sIEI8LXNQPiwgQjwtc0s+LCBCPC1zVT4gb2NoICIKKyJCPC1zUj4gYW5nZXMgaSBzdMOkbGxldC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjI4MQorIywgbm8td3JhcAorbXNnaWQgIkI8LXNrPiIKK21zZ3N0ciAiQjwtc2s+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjI5MAorbXNnaWQgIiIKKyJTcGVjaWZpZXMgdG8gZXhwZWN0IHRoZSBvcmlnaW5hbCBzb3VyY2UgYXMgYSB0YXJmaWxlLCBieSBkZWZhdWx0ICIKKyJJPHBhY2thZ2U+QjxfPkk8dXBzdHJlYW0tdmVyc2lvbj5CPC5vcmlnLnRhci4+STxleHRlbnNpb24+LiAgSXQgd2lsbCBsZWF2ZSAiCisidGhpcyBvcmlnaW5hbCBzb3VyY2UgaW4gcGxhY2UgYXMgYSB0YXJmaWxlLCBvciBjb3B5IGl0IHRvIHRoZSBjdXJyZW50ICIKKyJkaXJlY3RvcnkgaWYgaXQgaXNuJ3QgYWxyZWFkeSB0aGVyZS4gVGhlIHRhcmJhbGwgd2lsbCBiZSB1bnBhY2tlZCBpbnRvICIKKyJJPGRpcmVjdG9yeT5CPC5vcmlnPiBmb3IgdGhlIGdlbmVyYXRpb24gb2YgdGhlIGRpZmYuIgorbXNnc3RyICIiCisiQW5nZXIgYXR0IGRlbiB1cnNwcnVuZ2xpZ2Ega8OkbGxrb2RlbiDDpHIgZW4gdGFyLWZpbCwgc29tIHN0YW5kYXJkICIKKyJJPHBha2V0PkI8Xz5JPHVwcHN0csO2bXN2ZXJzaW9uPkI8Lm9yaWcudGFyLj5JPGZpbMOkbmRlbHNlPi4gRGVuIGtvbW1lciBsw6V0YSAiCisib3JpZ2luYWxrw6RsbGtvZHNmaWxlbiBsaWdnYSBrdmFyIHNvbSBlbiB0YXJmaWwsIGVsbGVyIGtvcGllcmEgZGVuIHRpbGwgZGVuICIKKyJha3R1ZWxsYSBrYXRhbG9nZW4gb20gZGVuIGludGUgcmVkYW4gw6RyIGTDpHIuIFRhcmJvbGxlbiBrb21tZXIgYXR0IHBhY2thcyB1cHAgIgorImkgSTxrYXRhbG9nPkI8Lm9yaWc+IGbDtnIgYXR0IGdlbmVyZXJhIGRpZmZlbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjI5MCBkcGtnLXNvdXJjZS4xOjM1OQorIywgbm8td3JhcAorbXNnaWQgIkI8LXNwPiIKK21zZ3N0ciAiQjwtc3A+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjI5NQorbXNnaWQgIkxpa2UgQjwtc2s+IGJ1dCB3aWxsIHJlbW92ZSB0aGUgZGlyZWN0b3J5IGFnYWluIGFmdGVyd2FyZHMuIgorbXNnc3RyICJTb20gQjwtc2s+LCBtZW4gdGFyIGJvcnQga2F0YWxvZ2VuIGlnZW4gZWZ0ZXLDpXQuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMToyOTUgZHBrZy1zb3VyY2UuMTozNjUKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1zdT4iCittc2dzdHIgIkI8LXN1PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTozMDMKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRoYXQgdGhlIG9yaWdpbmFsIHNvdXJjZSBpcyBleHBlY3RlZCBhcyBhIGRpcmVjdG9yeSwgYnkgZGVmYXVsdCAiCisiSTxwYWNrYWdlPkI8LT5JPHVwc3RyZWFtLXZlcnNpb24+Qjwub3JpZz4gYW5kIEI8ZHBrZy1zb3VyY2U+IHdpbGwgY3JlYXRlIGEgIgorIm5ldyBvcmlnaW5hbCBzb3VyY2UgYXJjaGl2ZSBmcm9tIGl0LiIKK21zZ3N0ciAiIgorIkFuZ2VyIGF0dCBvcmlnaW5hbGvDpGxsa29kZW4gw6RyIGVuIGthdGFsb2csIHNvbSBzdGFuZGFyZCBJPHBha2V0PkI8LSIKKyI+STx1cHBzdHLDtm1zdmVyc2lvbj5CPC5vcmlnPiBvY2ggYXR0IEI8ZHBrZy1zb3VyY2U+IHNrYWxsIHNrYXBhIGV0dCBueXR0ICIKKyJvcmlnaW5hbGvDpGxsa29kc2Fya2l2IGZyw6VuIGRlbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjMwMworIywgbm8td3JhcAorbXNnaWQgIkI8LXNyPiIKK21zZ3N0ciAiQjwtc3I+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjMwOAorbXNnaWQgIkxpa2UgQjwtc3U+IGJ1dCB3aWxsIHJlbW92ZSB0aGF0IGRpcmVjdG9yeSBhZnRlciBpdCBoYXMgYmVlbiB1c2VkLiIKK21zZ3N0ciAiU29tIEI8LXN1PiwgbWVuIHRhciBib3J0IGthdGFsb2dlbiBuw6RyIGRlbiBoYXIgYW52w6RudHMuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTozMDgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1zcz4iCittc2dzdHIgIkI8LXNzPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTozMTYKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRoYXQgdGhlIG9yaWdpbmFsIHNvdXJjZSBpcyBhdmFpbGFibGUgYm90aCBhcyBhIGRpcmVjdG9yeSBhbmQgYXMgYSAiCisidGFyZmlsZS4gZHBrZy1zb3VyY2Ugd2lsbCB1c2UgdGhlIGRpcmVjdG9yeSB0byBjcmVhdGUgdGhlIGRpZmYsIGJ1dCB0aGUgIgorInRhcmZpbGUgdG8gY3JlYXRlIHRoZSBCPC5kc2M+LiAgVGhpcyBvcHRpb24gbXVzdCBiZSB1c2VkIHdpdGggY2FyZSAtIGlmIHRoZSAiCisiZGlyZWN0b3J5IGFuZCB0YXJmaWxlIGRvIG5vdCBtYXRjaCBhIGJhZCBzb3VyY2UgYXJjaGl2ZSB3aWxsIGJlIGdlbmVyYXRlZC4iCittc2dzdHIgIiIKKyJBbmdlciBhdHQgb3JpZ2luYWxrw6RsbGtvZGVuIGZpbm5zIGLDpWRlIHNvbSBlbiBrYXRhbG9nIG9jaCBlbiB0YXItZmlsLiAiCisiS2F0YWxvZ2VuIGtvbW1lciBhdHQgYW52w6RuZGFzIGF2IGRwa2ctc291cmNlIGbDtnIgYXR0IHNrYXBhIGRpZmZlbiwgbWVuICIKKyJ0YXJmaWxlbiBmw7ZyIGF0dCBza2FwYSBCPC5kc2M+LWZpbGVuLiBGbGFnZ2FuIG3DpXN0ZSBhbnbDpG5kYXMgbWVkIHRpbGxmw7Zyc2lrdCAiCisiLSBvbSBrYXRhbG9nZW4gb2NoIHRhcmZpbGVuIGludGUgc3TDpG1tZXIgw7Z2ZXJlbnMga29tbWVyIGV0dCB0cmFzaWd0ICIKKyJrw6RsbGtvZHNhcmtpdiBhdHQgc2thcGFzLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6MzE2IGRwa2ctc291cmNlLjE6MzY4CisjLCBuby13cmFwCittc2dpZCAiQjwtc24+IgorbXNnc3RyICJCPC1zbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MzIyCittc2dpZCAiIgorIlNwZWNpZmllcyB0byBub3QgbG9vayBmb3IgYW55IG9yaWdpbmFsIHNvdXJjZSwgYW5kIHRvIG5vdCBnZW5lcmF0ZSBhIGRpZmYuICAiCisiVGhlIHNlY29uZCBhcmd1bWVudCwgaWYgc3VwcGxpZWQsIG11c3QgYmUgdGhlIGVtcHR5IHN0cmluZy4gVGhpcyBpcyB1c2VkIGZvciAiCisiRGViaWFuLXNwZWNpZmljIHBhY2thZ2VzIHdoaWNoIGRvIG5vdCBoYXZlIGEgc2VwYXJhdGUgdXBzdHJlYW0gc291cmNlIGFuZCAiCisidGhlcmVmb3JlIGhhdmUgbm8gZGViaWFuaXNhdGlvbiBkaWZmcy4iCittc2dzdHIgIiIKKyJBbmdlciBhdHQgZHBrZy1zb3VyY2UgaW50ZSBza2FsbCBsZXRhIGVmdGVyIG7DpWdvdCBrw6RsbGtvZHNhcmtpdiBvY2ggYXR0ICIKKyJpbmdlbiBkaWZmIHNrYWxsIHNrYXBhcy4gRGV0IGFuZHJhIGFyZ3VtZW50ZXQsIG9tIGRldCBhbmdlcywgbcOlc3RlIHZhcmEgZGVuICIKKyJ0b21tYSBzdHLDpG5nZW4uIEZsYWdnYW4gYW52w6RuZHMgZsO2ciBEZWJpYW5zcGVjaWZpa2EgcGFrZXQgc29tIGludGUgaGFyIGVuICIKKyJzZXBhcmF0IHVwcHN0csO2bXNrw6RsbGtvZCBvY2ggZMOkcmbDtnIgaW50ZSBoYXIgbsOlZ29uIGRlYmlhbmlzZXJpbmdzZGlmZi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjMyMgorIywgbm8td3JhcAorbXNnaWQgIkI8LXNhPiBvciBCPC1zQT4iCittc2dzdHIgIkI8LXNhPiBlbGxlciBCPC1zQT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MzQ4Cittc2dpZCAiIgorIlNwZWNpZmllcyB0byBsb29rIGZvciB0aGUgb3JpZ2luYWwgc291cmNlIGFyY2hpdmUgYXMgYSB0YXJmaWxlIG9yIGFzIGEgIgorImRpcmVjdG9yeSAtIHRoZSBzZWNvbmQgYXJndW1lbnQsIGlmIGFueSwgbWF5IGJlIGVpdGhlciwgb3IgdGhlIGVtcHR5IHN0cmluZyAiCisiKHRoaXMgaXMgZXF1aXZhbGVudCB0byB1c2luZyBCPC1zbj4pLiAgSWYgYSB0YXJmaWxlIGlzIGZvdW5kIGl0IHdpbGwgdW5wYWNrICIKKyJpdCB0byBjcmVhdGUgdGhlIGRpZmYgYW5kIHJlbW92ZSBpdCBhZnRlcndhcmRzICh0aGlzIGlzIGVxdWl2YWxlbnQgdG8gQjwtIgorInNwPik7IGlmIGEgZGlyZWN0b3J5IGlzIGZvdW5kIGl0IHdpbGwgcGFjayBpdCB0byBjcmVhdGUgdGhlIG9yaWdpbmFsIHNvdXJjZSAiCisiYW5kIHJlbW92ZSBpdCBhZnRlcndhcmRzICh0aGlzIGlzIGVxdWl2YWxlbnQgdG8gQjwtc3I+KTsgaWYgbmVpdGhlciBpcyBmb3VuZCAiCisiaXQgd2lsbCBhc3N1bWUgdGhhdCB0aGUgcGFja2FnZSBoYXMgbm8gZGViaWFuaXNhdGlvbiBkaWZmcywgb25seSBhICIKKyJzdHJhaWdodGZvcndhcmQgc291cmNlIGFyY2hpdmUgKHRoaXMgaXMgZXF1aXZhbGVudCB0byBCPC1zbj4pLiAgSWYgYm90aCBhcmUgIgorImZvdW5kIHRoZW4gQjxkcGtnLXNvdXJjZT4gd2lsbCBpZ25vcmUgdGhlIGRpcmVjdG9yeSwgb3ZlcndyaXRpbmcgaXQsIGlmIEI8LSIKKyJzQT4gd2FzIHNwZWNpZmllZCAodGhpcyBpcyBlcXVpdmFsZW50IHRvIEI8LXNQPikgIG9yIHJhaXNlIGFuIGVycm9yIGlmIEI8LSIKKyJzYT4gd2FzIHNwZWNpZmllZC4gIEI8LXNBPiBpcyB0aGUgZGVmYXVsdC4iCittc2dzdHIgIiIKKyJBbmdlciBhdHQgb3JpZ2luYWxrw6RsbGtvZGVuIGZpbm5zIHNvbSBlbiBrYXRhbG9nIGVsbGVyIGVuIHRhcmZpbCAtIGRldCBhbmRyYSAiCisiYXJndW1lbnRldCwgb20gZGV0IGFuZ2VzLCBrYW4gdmFyYSBkZXQgZW5hIGVsbGVyIGRldCBhbmRyYSwgZWxsZXIgZGVuIHRvbW1hICIKKyJzdHLDpG5nZW4gKG1vdHN2YXJhciBhdHQgYW52w6RuZGEgQjwtc24+KS4gT20gZW4gdGFyZmlsIGhpdHRhcyBrb21tZXIgIgorInByb2dyYW1tZXQgYXR0IHBhY2thIHVwcCBkZW4gZsO2ciBhdHQgc2thcGEgZW4gZGlmZiBvY2ggdGEgYm9ydCBkZW4gZWZ0ZXLDpXQgIgorIihtb3RzdmFyYXIgQjwtc3A+KS4gT20gZW4ga2F0YWxvZyBoaXR0YXMga29tbWVyIGRlbiBhdHQgcGFja2FzIGbDtnIgYXR0IHNrYXBhICIKKyJvcmlnaW5hbGvDpGxsa29kZW4gb2NoIHRhIGJvcnQgZGVuIGVmdGVyw6V0IChtb3RzdmFyYXIgQjwtc24+KS4gT20gYsOlZGEgaGl0dGFzICIKKyJrb21tZXIgQjxkcGtnLXNvdXJjZT4gYXR0IGlnbm9yZXJhIGthdGFsb2dlbiwgb2NoIHNrcml2YSDDtnZlciBkZW4gb20gQjwtc0E+ICIKKyJhbmdhdnMgKGRldHRhIG1vdHN2YXJhciBCPC1zUD4pIGVsbGVyIGdlIGV0dCBmZWxtZWRkZWxhbmRlIG9tIEI8LXNhPiBhbmdhdnMuICIKKyJCPC1zQT4gw6RyIHN0YW5kYXJkLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6MzQ4IGRwa2ctc291cmNlLjE6NTQxCisjLCBuby13cmFwCittc2dpZCAiQjwtLWFib3J0LW9uLXVwc3RyZWFtLWNoYW5nZXM+IgorbXNnc3RyICJCPC0tYWJvcnQtb24tdXBzdHJlYW0tY2hhbmdlcz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MzU0Cittc2dpZCAiIgorIlRoZSBwcm9jZXNzIGZhaWxzIGlmIHRoZSBnZW5lcmF0ZWQgZGlmZiBjb250YWlucyBjaGFuZ2VzIHRvIGZpbGVzIG91dHNpZGUgb2YgIgorInRoZSBkZWJpYW4gc3ViLWRpcmVjdG9yeS4gVGhpcyBvcHRpb24gaXMgbm90IGFsbG93ZWQgaW4gQjxkZWJpYW4vc291cmNlLyIKKyJvcHRpb25zPiBidXQgY2FuIGJlIHVzZWQgaW4gQjxkZWJpYW4vc291cmNlL2xvY2FsLW9wdGlvbnM+LiIKK21zZ3N0ciAiIgorIlByb2Nlc3NlbiBtaXNzbHlja2FzIG9tIGRlbiBnZW5lcmVyYWRlIGRpZmZlbiBpbm5laMOlbGxlciDDpG5kcmluZ2FyIGF2IGZpbGVyICIKKyJ1dGFuZsO2ciB1bmRlcmthdGFsb2dlbiBkZWJpYW4uIERlbiBow6RyIGZsYWdnYW4gdGlsbMOldHMgaW50ZSBpIEI8ZGViaWFuLyIKKyJzb3VyY2Uvb3B0aW9ucz4sIG1lbiBrYW4gYW52w6RuZGFzIGkgQjxkZWJpYW4vc291cmNlL2xvY2FsLW9wdGlvbnM+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6MzU1CisjLCBuby13cmFwCittc2dpZCAiQjxFeHRyYWN0IG9wdGlvbnMgKHdpdGggLXgpOj4iCittc2dzdHIgIkI8RXh0cmFoZXJpbmdzZmxhZ2dvciAobWVkIC14KTo+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjM1OQorbXNnaWQgIkluIGFsbCBjYXNlcyBhbnkgZXhpc3Rpbmcgb3JpZ2luYWwgc291cmNlIHRyZWUgd2lsbCBiZSByZW1vdmVkLiIKK21zZ3N0ciAiT2F2c2V0dCBrb21tZXIgZXR0IGJlZmludGxpZ3Qga8OkbGxrb2RzdHLDpGQgYXR0IHRhcyBib3J0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTozNjUKK21zZ2lkICIiCisiVXNlZCB3aGVuIGV4dHJhY3RpbmcgdGhlbiB0aGUgb3JpZ2luYWwgc291cmNlIChpZiBhbnkpIHdpbGwgYmUgbGVmdCBhcyBhICIKKyJ0YXJmaWxlLiBJZiBpdCBpcyBub3QgYWxyZWFkeSBsb2NhdGVkIGluIHRoZSBjdXJyZW50IGRpcmVjdG9yeSBvciBpZiBhbiAiCisiZXhpc3RpbmcgYnV0IGRpZmZlcmVudCBmaWxlIGlzIHRoZXJlIGl0IHdpbGwgYmUgY29waWVkIHRoZXJlLiAgKEI8VGhpcyBpcyAiCisidGhlIGRlZmF1bHQ+KS4iCittc2dzdHIgIiIKKyJBbnbDpG5kcyBuw6RyIG9yaWdpbmFsa8OkbGxrb2RlbiBzb20gZXh0cmFoZXJhcyAob20gc8OlZGFuIGZpbm5zKSBza2FsbCBsw6RtbmFzICIKKyJrdmFyIHNvbSBlbiB0YXJmaWwuIE9tIGRlbiBpbnRlIHJlZGFuIGZpbm5zIGkgZGVuIGFrdHVlbGxhIGthdGFsb2dlbiwgZWxsZXIgIgorIm9tIGVuIGJlZmludGxpZyBtZW4gYW5uYW4gZmlsIGZpbm5zIGTDpHIsIGtvbW1lciBkZW4gYXR0IGtvcGllcmFzIGRpdC4gIgorIihCPERldHRhIMOkciBzdGFuZGFyZC4+KSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTozNjgKK21zZ2lkICJVbnBhY2tzIHRoZSBvcmlnaW5hbCBzb3VyY2UgdHJlZS4iCittc2dzdHIgIlBhY2thciB1cHAgb3JpZ2luYWxrw6RsbGtvZHN0csOkZGV0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTozNzMKK21zZ2lkICIiCisiRW5zdXJlcyB0aGF0IHRoZSBvcmlnaW5hbCBzb3VyY2UgaXMgbmVpdGhlciBjb3BpZWQgdG8gdGhlIGN1cnJlbnQgZGlyZWN0b3J5ICIKKyJub3IgdW5wYWNrZWQuIEFueSBvcmlnaW5hbCBzb3VyY2UgdHJlZSB0aGF0IHdhcyBpbiB0aGUgY3VycmVudCBkaXJlY3RvcnkgaXMgIgorInN0aWxsIHJlbW92ZWQuIgorbXNnc3RyICIiCisiRsO2cnPDpGtyYXIgYXR0IG9yaWdpbmFsa8OkbGxrb2RlbiB2YXJrZW4ga29waWVyYXMgdGlsbCBlbiBha3R1ZWxsYSBrYXRhbG9nZW4gIgorImVsbGVyIHBhY2thcyB1cHAuIEV2ZW50dWVsbGEgb3JpZ2luYWxrw6RsbGtvZHN0csOkZCBzb20gZmlubnMgaSBkZW4gYWt0dWVsbGEgIgorImthdGFsb2dlbiB0YXMgZm9ydGZhcmFuZGUgYm9ydC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6Mzc4Cittc2dpZCAiIgorIkFsbCB0aGUgQjwtcz5JPFg+IG9wdGlvbnMgYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZS4gSWYgeW91IHNwZWNpZnkgbW9yZSB0aGFuICIKKyJvbmUgb25seSB0aGUgbGFzdCBvbmUgd2lsbCBiZSB1c2VkLiIKK21zZ3N0ciAiIgorIkFsbGEgQjwtcz5JPFg+LWZsYWdnb3Igw6RyIMO2bXNlc2lkaWd0IHV0ZXNsdXRhbmRlLiBPbSBkdSBhbmdlciBtZXIgw6RuIGVuICIKKyJrb21tZXIgZW5kYXN0IGRlbiBzaXN0YSBhdHQgYW52w6RuZGFzLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6Mzc4IGRwa2ctc291cmNlLjE6NTU1CisjLCBuby13cmFwCittc2dpZCAiQjwtLXNraXAtZGViaWFuaXphdGlvbj4iCittc2dzdHIgIkI8LS1za2lwLWRlYmlhbml6YXRpb24+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjM4MQorbXNnaWQgIlNraXBzIGFwcGxpY2F0aW9uIG9mIHRoZSBkZWJpYW4gZGlmZiBvbiB0b3Agb2YgdGhlIHVwc3RyZWFtIHNvdXJjZXMuIgorbXNnc3RyICJIb3BwYXMgw7Z2ZXIgYXR0IHRpbGzDpG1wYSBkZWJpYW4tZGlmZmVuIG92YW5ww6UgdXBwc3Ryw7Ztc2vDpGxsa29kZW4uIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTozODIKKyMsIG5vLXdyYXAKK21zZ2lkICJGb3JtYXQ6IDIuMCIKK21zZ3N0ciAiRm9ybWF0OiAyLjAiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6Mzg2Cittc2dpZCAiIgorIkFsc28ga25vd24gYXMgd2lnJnBlbi4gVGhpcyBmb3JtYXQgaXMgbm90IHJlY29tbWVuZGVkIGZvciB3aWRlLXNwcmVhZCB1c2FnZSwgIgorInRoZSBmb3JtYXQgXCIzLjAgKHF1aWx0KVwiIHJlcGxhY2VzIGl0LiBXaWcmcGVuIHdhcyB0aGUgZmlyc3Qgc3BlY2lmaWNhdGlvbiAiCisib2YgYSBuZXctZ2VuZXJhdGlvbiBzb3VyY2UgcGFja2FnZSBmb3JtYXQuIgorbXNnc3RyICIiCisiw4R2ZW4ga8OkbnQgc29tIHdpZyZwZW4uIERldHRhIGZvcm1hdCByZWtvbW1lbmRlcmFzIGludGUgZsO2ciBhbGxtw6RuICIKKyJhbnbDpG5kbmluZywgZm9ybWF0ZXQgXCIzLjAgKHF1aWx0KVwiIGVyc8OkdHRlciBkZXQuIFdpZyZwZW4gdmFyIGRlbiBmw7Zyc3RhICIKKyJzcGVjaWZpa2F0aW9uZW4gYXYgZW4gbnkgZ2VuZXJhdGlvbiBhdiBrw6RsbGtvZHNwYWtldGZvcm1hdC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6MzkxCittc2dpZCAiIgorIlRoZSBiZWhhdmlvdXIgb2YgdGhpcyBmb3JtYXQgaXMgdGhlIHNhbWUgYXMgdGhlIFwiMy4wIChxdWlsdClcIiBmb3JtYXQgIgorImV4Y2VwdCB0aGF0IGl0IGRvZXNuJ3QgdXNlIGFuIGV4cGxpY2l0IGxpc3Qgb2YgcGF0Y2hlcy4gQWxsIGZpbGVzIGluICIKKyJCPGRlYmlhbi9wYXRjaGVzLz4gbWF0Y2hpbmcgdGhlIHBlcmwgcmVndWxhciBleHByZXNzaW9uIEI8W1xcZXctXSs+IG11c3QgYmUgIgorInZhbGlkIHBhdGNoZXM6IHRoZXkgYXJlIGFwcGxpZWQgYXQgZXh0cmFjdGlvbiB0aW1lLiIKK21zZ3N0ciAiIgorIkJldGVlbmRldCBmw7ZyIGRldHRhIGZvcm1hdCDDpHIgZGV0c2FtbWEgc29tIGbDtnIgXCIzLjAgKHF1aWx0KVwiLWZvcm1hdGV0LCAiCisiZsO2cnV0b20gYXR0IGRldCBpbnRlIGFudsOkbmRlciBlbiBleHBsaWNpdCBmw7ZydGVja25pbmcgcGF0Y2hhci4gQWxsYSBmaWxlciBpICIKKyJCPGRlYmlhbi9wYXRjaGVzLz4gc29tIG1vdHN2YXJhciBkZXQgUGVybC1yZWd1bGrDpHJhIHV0dHJ5Y2tldCBCPFtcXGV3LV0rPiAiCisibcOlc3RlIHZhcmEgZ2lsdGlnYSBwYXRjaGFyOiBkZSBhcHBsaWNlcmFzIG7DpHIgcGFrZXRldCBwYWNrYXMgdXBwLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTozOTQKK21zZ2lkICIiCisiV2hlbiBidWlsZGluZyBhIG5ldyBzb3VyY2UgcGFja2FnZSwgYW55IGNoYW5nZSB0byB0aGUgdXBzdHJlYW0gc291cmNlIGlzICIKKyJzdG9yZWQgaW4gYSBwYXRjaCBuYW1lZCBCPHp6X2RlYmlhbi1kaWZmLWF1dG8+LiIKK21zZ3N0ciAiIgorIk7DpHIgZHUgYnlnZ2VyIGV0dCBueXR0IGvDpGxsa29kc3Bha2V0IGtvbW1lciBldmVudHVlbGxhIMOkbmRyaW5nYXIgcMOlICIKKyJ1cHBzdHLDtm1za8OkbGxrb2RlbiBhdHQgbGFncmFzIGkgZW4gcGF0Y2ggc29tIGthbGxhcyBCPHp6X2RlYmlhbi1kaWZmLWF1dG8+LiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6Mzk1CisjLCBuby13cmFwCittc2dpZCAiRm9ybWF0OiAzLjAgKG5hdGl2ZSkiCittc2dzdHIgIkZvcm1hdDogMy4wIChlZ2V0KSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo0MDEKK21zZ2lkICIiCisiVGhpcyBmb3JtYXQgaXMgYW4gZXh0ZW5zaW9uIG9mIHRoZSBuYXRpdmUgcGFja2FnZSBmb3JtYXQgYXMgZGVmaW5lZCBpbiB0aGUgIgorIjEuMCBmb3JtYXQuIEl0IHN1cHBvcnRzIGFsbCBjb21wcmVzc2lvbiBtZXRob2RzIGFuZCB3aWxsIGlnbm9yZSBieSBkZWZhdWx0ICIKKyJhbnkgVkNTIHNwZWNpZmljIGZpbGVzIGFuZCBkaXJlY3RvcmllcyBhcyB3ZWxsIGFzIG1hbnkgdGVtcG9yYXJ5IGZpbGVzIChzZWUgIgorImRlZmF1bHQgdmFsdWUgYXNzb2NpYXRlZCB0byBCPC1JPiBvcHRpb24gaW4gdGhlIEI8LS1oZWxwPiBvdXRwdXQpLiIKK21zZ3N0ciAiIgorIkRldHRhIGZvcm1hdCDDpHIgZW4gdXTDtmtuaW5nIGF2IGRldCBlZ25hIHBha2V0Zm9ybWF0ZXQgc29tIGFuZ2VzIGF2IDEuMC0iCisiZm9ybWF0ZXQuIERldCBzdMO2ZGVyIGFsbGEga29tcHJpbWVyaW5nc21ldG9kZXIgb2NoIGtvbW1lciBhdHQgc29tIHN0YW5kYXJkICIKKyJpZ25vcmVyYSBhbGxhIFZDUy1zcGVjaWZpa2EgZmlsZXIgb2NoIGthdGFsb2dlciwgc2FtdCBtw6VuZ2EgdGVtcG9yw6RyZmlsZXIgIgorIihzZSBzdGFuZGFyZHbDpHJkZXQgc29tIMOkciBrbnV0ZXQgdGlsbCBmbGFnZ2FuIEI8LWk+IGkgdGV4dGVuIGbDtnIgQjwtLWhlbHA+KS4iCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjQwMgorIywgbm8td3JhcAorbXNnaWQgIkZvcm1hdDogMy4wIChxdWlsdCkiCittc2dzdHIgIkZvcm1hdDogMy4wIChxdWlsdCkiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NDA5Cittc2dpZCAiIgorIkEgc291cmNlIHBhY2thZ2UgaW4gdGhpcyBmb3JtYXQgY29udGFpbnMgYXQgbGVhc3QgYW4gb3JpZ2luYWwgdGFyYmFsbCAoQjwuIgorIm9yaWcudGFyLj5JPGV4dD4gd2hlcmUgSTxleHQ+IGNhbiBiZSBCPGd6PiwgQjxiejI+LCBCPGx6bWE+IGFuZCBCPHh6PikgYW5kIGEgIgorImRlYmlhbiB0YXJiYWxsIChCPC5kZWJpYW4udGFyLj5JPGV4dD4pLiBJdCBjYW4gYWxzbyBjb250YWluIGFkZGl0aW9uYWwgIgorIm9yaWdpbmFsIHRhcmJhbGxzIChCPC5vcmlnLT5JPGNvbXBvbmVudD5CPC50YXIuPkk8ZXh0PikuICBJPGNvbXBvbmVudD4gY2FuICIKKyJvbmx5IGNvbnRhaW4gYWxwaGFudW1lcmljIGNoYXJhY3RlcnMgYW5kIGRhc2hlcyAoXCItXCIpLiIKK21zZ3N0ciAiIgorIkV0dCBrw6RsbGtvZHNwYWtldCBpIGRldHRhIGZvcm1hdCBpbm5laMOlbGxlciDDpXRtaW5zdG9uZSBlbiBvcmlnaW5hbC10YXJib2xsICIKKyIoQjwub3JpZy50YXIuPkk8ZXh0PiwgZMOkciBJPGV4dD4ga2FuIHZhcmEgQjxnej4sIEI8YnoyPiwgQjxsem1hPiBlbGxlciAiCisiQjx4ej4pIG9jaCBlbiBEZWJpYW50YXJib2xsIChCPC5kZWJpYW4udGFyLj5JPGV4dD4pLiBEZW4ga2FuIMOkdmVuIGlubmVow6VsbGEgIgorInl0dGVybGlnYXJlIG9yaWdpbmFsLXRhcmJvbGxhciAoQjwub3JpZy0+STxrb21wb25lbnQ+QjwudGFyLj5JPGV4dD4pLiAiCisiSTxrb21wb25lbnQ+IGthbiBlbmRhc3QgaW5uZWjDpWxsYSBhbGZhbnVtZXJpc2thIHRlY2tlbiBvY2ggYmluZGVzdHJlY2sgKFwiLSIKKyJcIikuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjQyMAorbXNnaWQgIiIKKyJUaGUgbWFpbiBvcmlnaW5hbCB0YXJiYWxsIGlzIGV4dHJhY3RlZCBmaXJzdCwgdGhlbiBhbGwgYWRkaXRpb25hbCBvcmlnaW5hbCAiCisidGFyYmFsbHMgYXJlIGV4dHJhY3RlZCBpbiBzdWJkaXJlY3RvcmllcyBuYW1lZCBhZnRlciB0aGUgSTxjb21wb25lbnQ+IHBhcnQgIgorIm9mIHRoZWlyIGZpbGVuYW1lIChhbnkgcHJlLWV4aXN0aW5nIGRpcmVjdG9yeSBpcyByZXBsYWNlZCkuIFRoZSBkZWJpYW4gIgorInRhcmJhbGwgaXMgZXh0cmFjdGVkIG9uIHRvcCBvZiB0aGUgc291cmNlIGRpcmVjdG9yeSBhZnRlciBwcmlvciByZW1vdmFsIG9mICIKKyJhbnkgcHJlLWV4aXN0aW5nIEI8ZGViaWFuPiBkaXJlY3RvcnkuIE5vdGUgdGhhdCB0aGUgZGViaWFuIHRhcmJhbGwgbXVzdCAiCisiY29udGFpbiBhIEI8ZGViaWFuPiBzdWItZGlyZWN0b3J5IGJ1dCBpdCBjYW4gYWxzbyBjb250YWluIGJpbmFyeSBmaWxlcyAiCisib3V0c2lkZSBvZiB0aGF0IGRpcmVjdG9yeSAoc2VlIEI8LS1pbmNsdWRlLWJpbmFyaWVzPiBvcHRpb24pLiIKK21zZ3N0ciAiIgorIkh1dnVkLW9yaWdpbmFsdGFyYm9sbGVuIHBhY2thcyB1cHAgZsO2cnN0LCBkw6RyZWZ0ZXIgcGFja2FzIGFsbGEgeXR0ZXJsaWdhcmUgIgorIm9yaWdpbmFsdGFyYm9sbGFyIHVwcCBpIHVuZGVya2F0YWxvZ2VyIG1lZCBuYW1uIGVmdGVyIEk8a29tcG9uZW50Pi1kZWxlbiBpICIKKyJzaXR0IGZpbG5hbW4gKGV2ZW50dWVsbGEgcmVkYW4gYmVmaW50bGlnYSBrYXRhbG9nZXIgZXJzw6R0dHMpLiBEZWJpYW4tIgorInRhcmJvbGxlbiBwYWNrYXMgc2VkYW4gdXBwIG92YW5ww6Uga8OkbGxrb2Rza2F0YWxvZ2VuIGVmdGVyIGF0dCBlbiByZWRhbiAiCisiYmVmaW50bGlnIEI8ZGViaWFuPi1rYXRhbG9nIGhhciB0YWdpdHMgYm9ydCBmw7Zyc3QuIE9ic2VydmVyYSBhdHQgZGViaWFuLSIKKyJ0YXJib2xsZW4gbcOlc3RlIGJlc3TDpSBhdiBlbiBCPGRlYmlhbj4tdW5kZXJrYXRhbG9nLCBtZW4gYXR0IGRlbiDDpHZlbiBrYW4gIgorImlubmVow6VsbGEgYmluw6RyZmlsZXIgdXRhbmbDtnIgZGVuIGthdGFsb2dlbiAoc2UgZmxhZ2dhbiBCPC0taW5jbHVkZS0iCisiYmluYXJpZXM+KS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NDMyCittc2dpZCAiIgorIkFsbCBwYXRjaGVzIGxpc3RlZCBpbiBCPGRlYmlhbi9wYXRjaGVzL2RlYmlhbi5zZXJpZXM+IG9yIEI8ZGViaWFuL3BhdGNoZXMvIgorInNlcmllcz4gYXJlIHRoZW4gYXBwbGllZC4gIElmIHRoZSBmb3JtZXIgZmlsZSBpcyB1c2VkIGFuZCB0aGUgbGF0dGVyIG9uZSAiCisiZG9lc24ndCBleGlzdCAob3IgaXMgYSBzeW1saW5rKSwgdGhlbiB0aGUgbGF0dGVyIGlzIHJlcGxhY2VkIHdpdGggYSBzeW1saW5rICIKKyJ0byB0aGUgZm9ybWVyLiBUaGlzIGlzIG1lYW50IHRvIHNpbXBsaWZ5IHVzYWdlIG9mIHF1aWx0IHRvIG1hbmFnZSB0aGUgc2V0IG9mICIKKyJwYXRjaGVzLiBOb3RlIGhvd2V2ZXIgdGhhdCB3aGlsZSBCPGRwa2ctc291cmNlPiBwYXJzZXMgY29ycmVjdGx5IHNlcmllcyAiCisiZmlsZXMgd2l0aCBleHBsaWNpdCBvcHRpb25zIHVzZWQgZm9yIHBhdGNoIGFwcGxpY2F0aW9uIChzdG9yZWQgb24gZWFjaCBsaW5lICIKKyJhZnRlciB0aGUgcGF0Y2ggZmlsZW5hbWUgYW5kIG9uZSBvciBtb3JlIHNwYWNlcyksIGl0IGRvZXMgaWdub3JlIHRob3NlICIKKyJvcHRpb25zIGFuZCBhbHdheXMgZXhwZWN0IHBhdGNoZXMgdGhhdCBjYW4gYmUgYXBwbGllZCB3aXRoIHRoZSBCPC1wMT4gb3B0aW9uICIKKyJvZiBCPHBhdGNoPi4gSXQgd2lsbCB0aHVzIGVtaXQgYSB3YXJuaW5nIHdoZW4gaXQgZW5jb3VudGVycyBzdWNoIG9wdGlvbnMsICIKKyJhbmQgdGhlIGJ1aWxkIGlzIGxpa2VseSB0byBmYWlsLiIKK21zZ3N0ciAiIgorIkFsbGEgcGF0Y2hhciBsaXN0YWRlIGkgQjxkZWJpYW4vcGF0Y2hlcy9kZWJpYW4uc2VyaWVzPiBlbGxlciBCPGRlYmlhbi8iCisicGF0Y2hlcy9zZXJpZXM+IHRpbGzDpG1wYXMgc2VkYW4uIE9tIGRlbiBmw7Zyc3Ruw6RtbmRhIGZpbGVuIGFudsOkbmRzIG9jaCBkZW4gIgorInNpc3Ruw6RtbmRhIGludGUgZXhpc3RlcmFyIChlbGxlciDDpHIgZW4gc3ltYm9saXNrIGzDpG5rKSwga29tbWVyIGRlbiBzZW5hcmUgIgorImF0dCBlcnPDpHR0YXMgYXYgZW4gc3ltYm9saXNrIGzDpG5rIHRpbGwgZGVuIGbDtnJzdGEuIFRhbmtlbiDDpHIgYXR0IGfDtnJhIGRldCAiCisiZW5rbGFyZSBhdHQgYW52w6RuZGEgcXVpbHQgdGlsbCBhdHQgaGFudGVyYSBwYXRjaHVwcHPDpHR0bmluZ2VuLiBPYnNlcnZlcmEgIgorImF0dCwgw6R2ZW4gb20gQjxkcGtnLXNvdXJjZT4ga29ycmVrdCB0b2xrYXIgc2VyaWVzLWZpbGVyIHNvbSBhbnbDpG5kZXIgIgorImV4cGxpY2l0YSBmbGFnZ29yIHRpbGwgcGF0Y2gtcHJvZ3JhbW1ldCAobGFncmFkZSBww6Uga29tbWFuZG9yYWRlbiBlZnRlciAiCisicGF0Y2gtZmlsbmFtbmV0IG9jaCBldHQgZWxsZXIgZmxlcmEgYmxhbmtzdGVnKSwgc8OlIGlnbm9yZXJhcyBkZXNzYSBmbGFnZ29yICIKKyJvY2ggZGV0IGbDtnJ2w6RudGFyIHNpZyBhdHQgcGF0Y2hhciBrYW4gdGlsbMOkbXBhcyBtZWQgZmxhZ2dhbiBCPC1wMT4gdGlsbCAiCisiQjxwYXRjaD4uIERldCBrb21tZXIgZMOkcmbDtnIgdmlzYSBlbiB2YXJuaW5nIHPDpWRhbmEgZmxhZ2dvciB1cHB0w6Rja3MsIG9jaCAiCisiYnlnZ2V0IGtvbW1lciB0cm9saWdlbiBhdHQgbWlzc2x5Y2thcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NDM0Cittc2dpZCAiIgorIlNpbWlsYXJseSB0byBxdWlsdCdzIGRlZmF1bHQgYmVoYXZpb3VyLCB0aGUgcGF0Y2hlcyBjYW4gcmVtb3ZlIGZpbGVzIHRvby4iCittc2dzdHIgIiIKKyJQYXRjaGFyIGthbiDDpHZlbiB0YSBib3J0IGZpbGVyLCBww6UgdW5nZsOkciBzYW1tYSBzw6R0dCBzb20gcXVpbHQgbm9ybWFsdCAiCisiZnVuZ2VyYXIuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjQzNworbXNnaWQgIiIKKyJUaGUgZmlsZSBCPC5wYy9hcHBsaWVkLXBhdGNoZXM+IGlzIGNyZWF0ZWQgaWYgc29tZSBwYXRjaGVzIGhhdmUgYmVlbiBhcHBsaWVkICIKKyJkdXJpbmcgdGhlIGV4dHJhY3Rpb24uIgorbXNnc3RyICIiCisiRmlsZW4gQjwucGMvYXBwbGllZC1wYXRjaGVycz4gc2thcGFzIG9tIHBhdGNoYXIgdGlsbMOkbXBhZGVzIHZpZCB1cHBhY2tuaW5nZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjQ1MQorbXNnaWQgIiIKKyJBbGwgb3JpZ2luYWwgdGFyYmFsbHMgZm91bmQgaW4gdGhlIGN1cnJlbnQgZGlyZWN0b3J5IGFyZSBleHRyYWN0ZWQgaW4gYSAiCisidGVtcG9yYXJ5IGRpcmVjdG9yeSBieSBmb2xsb3dpbmcgdGhlIHNhbWUgbG9naWMgYXMgZm9yIHRoZSB1bnBhY2ssIHRoZSAiCisiZGViaWFuIGRpcmVjdG9yeSBpcyBjb3BpZWQgb3ZlciBpbiB0aGUgdGVtcG9yYXJ5IGRpcmVjdG9yeSwgYW5kIGFsbCBwYXRjaGVzICIKKyJleGNlcHQgdGhlIGF1dG9tYXRpYyBwYXRjaCAoQjxkZWJpYW4tY2hhbmdlcy0+STx2ZXJzaW9uPiBvciBCPGRlYmlhbi0iCisiY2hhbmdlcz4sIGRlcGVuZGluZyBvbiBCPC0tc2luZ2xlLWRlYmlhbi1wYXRjaD4pIGFyZSBhcHBsaWVkLiBUaGUgdGVtcG9yYXJ5ICIKKyJkaXJlY3RvcnkgaXMgY29tcGFyZWQgdG8gdGhlIHNvdXJjZSBwYWNrYWdlIGRpcmVjdG9yeS4gV2hlbiB0aGUgZGlmZiBpcyBub24tIgorImVtcHR5LCB0aGUgYnVpbGQgZmFpbHMgdW5sZXNzIEI8LS1zaW5nbGUtZGViaWFuLXBhdGNoPiBvciBCPC0tYXV0by1jb21taXQ+ICIKKyJoYXMgYmVlbiB1c2VkLCBpbiB3aGljaCBjYXNlIHRoZSBkaWZmIGlzIHN0b3JlZCBpbiB0aGUgYXV0b21hdGljIHBhdGNoLiAgSWYgIgorInRoZSBhdXRvbWF0aWMgcGF0Y2ggaXMgY3JlYXRlZC9kZWxldGVkLCBpdCdzIGFkZGVkL3JlbW92ZWQgZnJvbSB0aGUgc2VyaWVzICIKKyJmaWxlIGFuZCBmcm9tIHRoZSBxdWlsdCBtZXRhZGF0YS4iCittc2dzdHIgIiIKKyJBbGxhIG9yaWdpbmFsLXRhcmJvbGxhciBzb20gZmlubnMgaSBkZW4gYWt0dWVsbGEga2F0YWxvZ2VuIHBhY2thcyB1cHAgaSBlbiAiCisidGVtcG9yw6RyIGthdGFsb2cgbWVkIHNhbW1hIGxvZ2lrIHNvbSBpIHVwcGFja25pbmdlbiwgZGViaWFuLWthdGFsb2dlbiAiCisia29waWVyYXMgw7Z2ZXIgaSBkZW4gdGVtcG9yw6RyYSBrYXRhbG9nZW4gb2NoIGFsbGEgcGF0Y2hhciwgZsO2cnV0b20gZGVuICIKKyJhdXRvbWF0aXNrYSBwYXRjaGVuIChCPGRlYmlhbi1jaGFuZ2VzPkk8dmVyc2lvbj4gZWxsZXIgQjxkZWJpYW4tY2hhbmdlcz4sICIKKyJiZXJvZW5kZSBww6UgQjwtLXNpbmdsZS1kZWJpYW4tcGF0Y2g+KSB0aWxsw6RtcGFzLiBUZW1wb3LDpHJrYXRhbG9nZW4gasOkbWbDtnJzICIKKyJkw6RyZWZ0ZXIgbW90IGvDpGxsa29kc2thdGFsb2dlbi4gT20gZGlmZmVuIGludGUgw6RyIHRvbSBtaXNzbHlja2FzIGJ5Z2dldCwgIgorInPDpXZpZGEgaW50ZSBCPC0tc2luZ2xlLWRlYmlhbi1wYXRjaD4gZWxsZXIgQjwtLWF1dG8tY29tbWl0PiBhbnbDpG50cywgaSAiCisidmlsa2V0IGZhbGwgZGlmZmVuIGxhZ3JhcyBpIGRlbiBhdXRvbWF0aXNrYSBwYXRjaGVuLiBPbSBkZW4gYXV0b21hdGlza2EgIgorInBhdGNoZW4gc2thcGFzL3RhcyBib3J0LCBsw6RnZ3MgZGVuIHRpbGwvdGFzIGJvcnQgZnLDpW4gc2VyaWVzLWZpbGVuIG9jaCBmcsOlbiAiCisicXVpbHQtbWV0YWRhdGEuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjQ1OQorbXNnaWQgIiIKKyJBbnkgY2hhbmdlIG9uIGEgYmluYXJ5IGZpbGUgaXMgbm90IHJlcHJlc2VudGFibGUgaW4gYSBkaWZmIGFuZCB3aWxsIHRodXMgIgorImxlYWQgdG8gYSBmYWlsdXJlIHVubGVzcyB0aGUgbWFpbnRhaW5lciBkZWxpYmVyYXRlbHkgZGVjaWRlZCB0byBpbmNsdWRlIHRoYXQgIgorIm1vZGlmaWVkIGJpbmFyeSBmaWxlIGluIHRoZSBkZWJpYW4gdGFyYmFsbCAoYnkgbGlzdGluZyBpdCBpbiBCPGRlYmlhbi9zb3VyY2UvIgorImluY2x1ZGUtYmluYXJpZXM+KS4gVGhlIGJ1aWxkIHdpbGwgYWxzbyBmYWlsIGlmIGl0IGZpbmRzIGJpbmFyeSBmaWxlcyBpbiB0aGUgIgorImRlYmlhbiBzdWItZGlyZWN0b3J5IHVubGVzcyB0aGV5IGhhdmUgYmVlbiB3aGl0ZWxpc3RlZCB0aHJvdWdoIEI8ZGViaWFuLyIKKyJzb3VyY2UvaW5jbHVkZS1iaW5hcmllcz4uIgorbXNnc3RyICIiCisiRXZlbnR1ZWxsYSDDpG5kcmluZ2FyIHDDpSBiaW7DpHJmaWxlciBrYW4gaW50ZSByZXByZXNlbnRlcmFzIGkgZW4gZGlmZiBvY2ggIgorImtvbW1lciBkw6RybWVkIGF0dCBsZWRhIHRpbGwgZXR0IGZlbG1lZGRlbGFuZGUsIHPDpXZpZGEgaW50ZSBwYWtldGFuc3ZhcmlnYSAiCisibWVkdmV0ZXQgdsOkbGplciBhdHQgaW5rbHVkZXJhIGRlbiBtb2RpZmllcmFkZSBiaW7DpHJmaWxlbiBpIGRlYmlhbi10YXJib2xsZW4gIgorIihnZW5vbSBhdHQgbGlzdGEgZGVuIGkgQjxkZWJpYW4vc291cmNlL2luY2x1ZGUtYmluYXJpZXM+KS4gQnlnZ25pbmdlbiBrb21tZXIgIgorIsOkdmVuIGF0dCBtaXNzbHlja2FzIG9tIGJpbsOkcmZpbGVyIHVwcHTDpGNrcyBpIGRlYmlhbi11bmRlcmthdGFsb2dlbiwgc8OldmlkYSAiCisiZGUgaW50ZSBoYXIgdml0bGlzdGF0cyBpIEI8ZGViaWFuL3NvdXJjZS9pbmNsdWRlLWJpbmFyaWVzPi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NDYyCittc2dpZCAiIgorIlRoZSB1cGRhdGVkIGRlYmlhbiBkaXJlY3RvcnkgYW5kIHRoZSBsaXN0IG9mIG1vZGlmaWVkIGJpbmFyaWVzIGlzIHRoZW4gdXNlZCAiCisidG8gZ2VuZXJhdGUgdGhlIGRlYmlhbiB0YXJiYWxsLiIKK21zZ3N0ciAiIgorIkRlbiB1cHBkYXRlcmFkZSBkZWJpYW5rYXRhbG9nZW4sIG9jaCBsaXN0YW4gw7Z2ZXIgbW9kaWZpZXJhZGUgYmluw6RyZXIsICIKKyJhbnbDpG5kcyBzZWRhbiBmw7ZyIGF0dCBza2FwYSBkZWJpYW4tdGFyYm9sbGVuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo0NjgKK21zZ2lkICIiCisiVGhlIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGRpZmYgZG9lc24ndCBpbmNsdWRlIGNoYW5nZXMgb24gVkNTIHNwZWNpZmljICIKKyJmaWxlcyBhcyB3ZWxsIGFzIG1hbnkgdGVtcG9yYXJ5IGZpbGVzIChzZWUgZGVmYXVsdCB2YWx1ZSBhc3NvY2lhdGVkIHRvIEI8LWk+ICIKKyJvcHRpb24gaW4gdGhlIEI8LS1oZWxwPiBvdXRwdXQpLiBJbiBwYXJ0aWN1bGFyLCB0aGUgQjwucGM+IGRpcmVjdG9yeSB1c2VkIGJ5ICIKKyJxdWlsdCBpcyBpZ25vcmVkIGR1cmluZyBnZW5lcmF0aW9uIG9mIHRoZSBhdXRvbWF0aWMgcGF0Y2guIgorbXNnc3RyICIiCisiRGVuIGF1dG9tYXRpc2t0IGdlbmVyZXJhZGUgZGlmZi1maWxlbiBpbm5laMOlbGxlciBpbnRlIMOkbmRyaW5nYXIgZsO2ciBWQ1MtIgorInNwZWNpZmlrYSBmaWxlciBlbGxlciBmw7ZyIG3DpW5nYSB0ZW1wb3LDpHJhIGZpbGVyIChzZSBzdGFuZGFyZHbDpHJkZXQgc29tIMOkciAiCisia251dGV0IHRpbGwgZmxhZ2dhbiBCPC1pPiBpIHRleHRlbiBmw7ZyIEI8LS1oZWxwPikuIERldHRhIGfDpGxsZXIgc3BlY2llbGx0ICIKKyJrYXRhbG9nZW4gQjwucGM+IHNvbSBhbnbDpG5kcyBhdiBxdWlsdCwga2F0YWxvZ2VuIGtvbW1lciBhdHQgaWdub3JlcmFzIG7DpHIgIgorImRlbiBhdXRvbWF0aXNrYSBwYXRjaGVuIHNrYXBhcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NDc3Cittc2dpZCAiIgorIk5vdGU6IEI8ZHBrZy1zb3VyY2U+IEI8LS1iZWZvcmUtYnVpbGQ+IChhbmQgQjwtYj4pIHdpbGwgZW5zdXJlIHRoYXQgYWxsICIKKyJwYXRjaGVzIGxpc3RlZCBpbiB0aGUgc2VyaWVzIGZpbGUgYXJlIGFwcGxpZWQgc28gdGhhdCBhIHBhY2thZ2UgYnVpbGQgYWx3YXlzICIKKyJoYXMgYWxsIHBhdGNoZXMgYXBwbGllZC4gSXQgZG9lcyB0aGlzIGJ5IGZpbmRpbmcgdW5hcHBsaWVkIHBhdGNoZXMgKHRoZXkgYXJlICIKKyJsaXN0ZWQgaW4gdGhlIEI8c2VyaWVzPiBmaWxlIGJ1dCBub3QgaW4gQjwucGMvYXBwbGllZC1wYXRjaGVzPiksIGFuZCBpZiB0aGUgIgorImZpcnN0IHBhdGNoIGluIHRoYXQgc2V0IGNhbiBiZSBhcHBsaWVkIHdpdGhvdXQgZXJyb3JzLCBpdCB3aWxsIGFwcGx5IHRoZW0gIgorImFsbC4gVGhlIG9wdGlvbiBCPC0tbm8tcHJlcGFyYXRpb24+IGNhbiBiZSB1c2VkIHRvIGRpc2FibGUgdGhpcyBiZWhhdmlvci4iCittc2dzdHIgIiIKKyJPYnNlcnZlcmE6IEI8ZHBrZy1zb3VyY2U+IEI8LS1iZWZvcmUtYnVpbGQ+IChvY2ggQjwtYj4pIHNlciB0aWxsIGF0dCBhbGxhICAiCisicGF0Y2hhciBzb20gYW5nZXMgaSBzZXJpZWZpbGVuIHRpbGzDpG1wYXMgc8OlIGF0dCBwYWtldGJ5Z2dldCBhbGx0aWQgaGFyIGFsbGEgIgorInBhdGNoYXIgdGlsbMOkbXBhZGUuIERldHRhIGfDtnJzIGdlbm9tIGF0dCBoaXR0YSBhbGxhIGlja2UtdGlsbMOkbXBhZGUgcGF0Y2hhciAiCisiKHNvbSBhbmdlcyBpIGZpbGVuIEI8c2VyaWVzPiBtZW4gaW50ZSBpIEI8LnBjL2FwcGxpZWQtcGF0Y2hlcz4pLCBvY2ggb20gZGVuICIKKyJmw7Zyc3RhIHBhdGNoZW4gaSBsaXN0YW4ga2FuIHRpbGzDpG1wYXMgdXRhbiBmZWwga29tbWVyIHNhbXRsaWdhIGF0dCAiCisidGlsbMOkbXBhcy4gRmxhZ2dhbiBCPC0tbm8tcHJlcGFyYXRpb24+IGthbiBhbnbDpG5kYXMgZsO2ciBhdHQgc2zDpSBhdiBkZXR0YSAiCisiYmV0ZWVuZGUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjQ4MAorbXNnaWQgIkI8UmVjb3JkaW5nIGNoYW5nZXM+IgorbXNnc3RyICJCPExhZ3JhIMOkbmRyaW5nYXI+IgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTo0ODAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tY29tbWl0PiBbSTxkaXJlY3Rvcnk+XSBbSTxwYXRjaC1uYW1lPl0gW0k8cGF0Y2gtZmlsZT5dIgorbXNnc3RyICJCPC0tY29tbWl0PiBbSTxrYXRhbG9nPl0gW0k8cGF0Y2huYW1uPl0gW0k8cGF0Y2gtZmlsPl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NDkwCittc2dpZCAiIgorIkdlbmVyYXRlcyBhIHBhdGNoIGNvcnJlc3BvbmRpbmcgdG8gdGhlIGxvY2FsIGNoYW5nZXMgdGhhdCBhcmUgbm90IG1hbmFnZWQgYnkgIgorInRoZSBxdWlsdCBwYXRjaCBzeXN0ZW0gYW5kIGludGVncmF0ZXMgaXQgaW4gdGhlIHBhdGNoIHN5c3RlbSB1bmRlciB0aGUgbmFtZSAiCisiSTxwYXRjaC1uYW1lPi4gSWYgdGhlIG5hbWUgaXMgbWlzc2luZywgaXQgd2lsbCBiZSBhc2tlZCBpbnRlcmFjdGl2ZWx5LiBJZiAiCisiSTxwYXRjaC1maWxlPiBpcyBnaXZlbiwgaXQgaXMgdXNlZCBhcyB0aGUgcGF0Y2ggY29ycmVzcG9uZGluZyB0byB0aGUgbG9jYWwgIgorImNoYW5nZXMgdG8gaW50ZWdyYXRlLiBUaGlzIGlzIG1haW5seSB1c2VmdWwgYWZ0ZXIgYSBidWlsZCBmYWlsdXJlIHRoYXQgcHJlLSIKKyJnZW5lcmF0ZWQgdGhpcyBmaWxlLiBPbmNlIGludGVncmF0ZWQsIGFuIGVkaXRvciBpcyBsYXVuY2hlZCBzbyB0aGF0IHlvdSBjYW4gIgorImVkaXQgdGhlIG1ldGEtaW5mb3JtYXRpb24gaW4gdGhlIHBhdGNoIGhlYWRlci4iCittc2dzdHIgIiIKKyJTa2FwYXIgZW4gcGF0Y2ggc29tIG1vdHN2YXJhciBkZSBsb2thbGEgw6RuZHJpbmdhciBzb20gaW50ZSBoYW50ZXJhcyBhdiBxdWlsdC0iCisicGF0Y2gtc3lzdGVtZXQgb2NoIGludGVncmVyYXIgZGVtIGkgcGF0Y2gtc3lzdGVtZXQgdW5kZXIgbmFtbmV0ICIKKyJJPHBhdGNobmFtbj4uIE9tIG5hbW5ldCBzYWtuYXMga29tbWVyIHByb2dyYW1tZXQgYmUgb20gZXR0IGludGVyYWt0aXZ0LiBPbSAiCisiSTxwYXRjaC1maWw+IGFuZ2VzIGFudsOkbmRzIGRlbiBzb20gcGF0Y2ggc29tIG1vdHN2YXJhciBkZSBsb2thbGEgw6RuZHJpbmdhciAiCisic29tIHNrYWxsIGludGVncmVyYXMuIERldHRhIMOkciBvZnRhc3QgYW52w6RuZGJhcnQgZWZ0ZXIgZXR0IG1pc3NseWNrYXQgYnlnZ2UgIgorInNvbSBza2FwYXQgZmlsZW4gcMOlIGbDtnJoYW5kLiBOw6RyIHBhdGNoZW4gw6RyIGludGVncmVyYWQgc3RhcnRhcyBldHQgIgorInJlZGlnZXJpbmdzcHJvZ3JhbSBzw6UgYXR0IGR1IGthbiBhbmdlIG1ldGFpbmZvcm1hdGlvbmVuIGkgcGF0Y2hodXZ1ZGV0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo0OTMgZHBrZy1zb3VyY2UuMTo1NjcgZHBrZy1zb3VyY2UuMTo2MDYKK21zZ2lkICJCPEJ1aWxkIG9wdGlvbnM+IgorbXNnc3RyICJCPEJ5Z2dmbGFnZ29yPiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NDkzCisjLCBuby13cmFwCittc2dpZCAiQjwtLWFsbG93LXZlcnNpb24tb2YtcXVpbHQtZGI9Pkk8dmVyc2lvbj4iCittc2dzdHIgIkI8LS1hbGxvdy12ZXJzaW9uLW9mLXF1aWx0LWRiPT5JPHZlcnNpb24+IgorCisjIHR5cGU6IFBsYWluIHRleHQKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTAxCittc2dpZCAiIgorIkFsbG93IEI8ZHBrZy1zb3VyY2U+IHRvIGJ1aWxkIHRoZSBzb3VyY2UgcGFja2FnZSBpZiB0aGUgdmVyc2lvbiBvZiB0aGUgcXVpbHQgIgorIm1ldGFkYXRhIGlzIHRoZSBvbmUgc3BlY2lmaWVkLCBldmVuIGlmIEI8ZHBrZy1zb3VyY2U+IGRvZXNuJ3Qga25vdyBhYm91dCBpdC4gIgorIkVmZmVjdGl2ZWx5IHRoaXMgc2F5cyB0aGF0IHRoZSBnaXZlbiB2ZXJzaW9uIG9mIHRoZSBxdWlsdCBtZXRhZGF0YSBpcyAiCisiY29tcGF0aWJsZSB3aXRoIHRoZSB2ZXJzaW9uIDIgdGhhdCBCPGRwa2ctc291cmNlPiBjdXJyZW50bHkgc3VwcG9ydHMuIFRoZSAiCisidmVyc2lvbiBvZiB0aGUgcXVpbHQgbWV0YWRhdGEgaXMgc3RvcmVkIGluIEI8LnBjLy52ZXJzaW9uPi4iCittc2dzdHIgIiIKKyJUaWxsw6V0IEI8ZHBrZy1zb3VyY2U+IGF0dCBieWdnYSBrw6RsbGtvZHNwYWtldGV0IG9tIHZlcnNpb25lbiBhdiBxdWlsdC0iCisibWV0YWRhdGEgw6RyIGRlbiBzb20gYW5nYXZzLCDDpHZlbiBvbSBCPGRwa2ctc291cmNlPiBpbnRlIGvDpG5uZXIgdGlsbCBkZW4uIERldCAiCisiYmV0eWRlciBhdHQgZGVuIGdpdm5hIHZlcnNpb25lbiBhdiBxdWlsdC1tZXRhZGF0YSDDpHIga29tcGF0aWJlbCBtZWQgdmVyc2lvbiAiCisiMiBzb20gQjxkcGtnLXNvdXJjZT4gZsO2ciBuw6RydmFyYW5kZSBzdMO2ZGVyLiBWZXJzaW9uZW4gYXYgcXVpbHQtbWV0YWRhdGEgIgorImxhZ3JhcyBpIEI8LnBjLy52ZXJzaW9uPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjUwMQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1pbmNsdWRlLXJlbW92YWw+IgorbXNnc3RyICJCPC0taW5jbHVkZS1yZW1vdmFsPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1MDUKK21zZ2lkICIiCisiRG8gbm90IGlnbm9yZSByZW1vdmVkIGZpbGVzIGFuZCBpbmNsdWRlIHRoZW0gaW4gdGhlIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkICIKKyJwYXRjaC4iCittc2dzdHIgIiIKKyJJZ25vcmVyYSBpbnRlIGJvcnR0YWduYSBmaWxlciBvY2ggdGEgbWVkIGRlbSBpIGRlbiBhdXRvbWF0aXNrdCBnZW5lcmVyYWRlICIKKyJwYXRjaGVuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NTA1CisjLCBuby13cmFwCittc2dpZCAiQjwtLWluY2x1ZGUtdGltZXN0YW1wPiIKK21zZ3N0ciAiQjwtLWluY2x1ZGUtdGltZXN0YW1wPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1MDgKK21zZ2lkICJJbmNsdWRlIHRpbWVzdGFtcCBpbiB0aGUgYXV0b21hdGljYWxseSBnZW5lcmF0ZWQgcGF0Y2guIgorbXNnc3RyICJUYSBtZWQgdGlkc3N0w6RtcGVsIGkgZGVuIGF1dG9tYXRpc2t0IGdlbmVyZXJhZGUgcGF0Y2hlbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjUwOAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1pbmNsdWRlLWJpbmFyaWVzPiIKK21zZ3N0ciAiQjwtLWluY2x1ZGUtYmluYXJpZXM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjUxMworbXNnaWQgIiIKKyJBZGQgYWxsIG1vZGlmaWVkIGJpbmFyaWVzIGluIHRoZSBkZWJpYW4gdGFyYmFsbC4gQWxzbyBhZGQgdGhlbSB0byBCPGRlYmlhbi8iCisic291cmNlL2luY2x1ZGUtYmluYXJpZXM+OiB0aGV5IHdpbGwgYmUgYWRkZWQgYnkgZGVmYXVsdCBpbiBzdWJzZXF1ZW50IGJ1aWxkcyAiCisiYW5kIHRoaXMgb3B0aW9uIGlzIHRodXMgbm8gbW9yZSBuZWVkZWQuIgorbXNnc3RyICIiCisiTMOkZ2cgdGlsbCBhbGxhIG1vZGlmaWVyYWRlIGJpbsOkcmVyIGkgZGViaWFuLXRhcmJvbGxlbi4gTMOkZ2cgw6R2ZW4gdGlsbCBkZW0gaSAiCisiQjxkZWJpYW4vc291cmNlL2luY2x1ZGUtYmluYXJpZXM+OiBkZSBrb21tZXIgYXR0IGzDpGdnYXMgdGlsbCBzb20gc3RhbmRhcmQgaSAiCisiZsO2bGphbmRlIGJ5Z2dlbiBvY2ggZHUgYmVow7Z2ZXIgaW50ZSBsw6RuZ3JlIGFuZ2UgZGVuIGjDpHIgZmxhZ2dhbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjUxMworIywgbm8td3JhcAorbXNnaWQgIkI8LS1uby1wcmVwYXJhdGlvbj4iCittc2dzdHIgIkI8LS1uby1wcmVwYXJhdGlvbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTE3Cittc2dpZCAiIgorIkRvIG5vdCB0cnkgdG8gcHJlcGFyZSB0aGUgYnVpbGQgdHJlZSBieSBhcHBseWluZyBwYXRjaGVzIHdoaWNoIGFyZSAiCisiYXBwYXJlbnRseSB1bmFwcGxpZWQuIgorbXNnc3RyICIiCisiRsO2cnPDtmsgaW50ZSBhdHQgZsO2cmJlcmVkYSBieWdndHLDpGRldCBnZW5vbSBhdHQgdGlsbMOkbXBhIHBhdGNoYXIgc29tIGludGUgIgorInZlcmthciBoYSB0aWxsw6RtcGFzIGbDtnIgbsOkcnZhcmFuZGUuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTo1MTcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tc2luZ2xlLWRlYmlhbi1wYXRjaD4iCittc2dzdHIgIkI8LS1zaW5nbGUtZGViaWFuLXBhdGNoPiIKKworIyB0eXBlOiBQbGFpbiB0ZXh0CisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjUyOAorbXNnaWQgIiIKKyJVc2UgQjxkZWJpYW4vcGF0Y2hlcy9kZWJpYW4tY2hhbmdlcz4gaW5zdGVhZCBvZiBCPGRlYmlhbi9wYXRjaGVzL2RlYmlhbi0iCisiY2hhbmdlcy0+STx2ZXJzaW9uPiBmb3IgdGhlIG5hbWUgb2YgdGhlIGF1dG9tYXRpYyBwYXRjaCBnZW5lcmF0ZWQgZHVyaW5nICIKKyJidWlsZC4gVGhpcyBvcHRpb24gaXMgcGFydGljdWxhcmx5IHVzZWZ1bCB3aGVuIHRoZSBwYWNrYWdlIGlzIG1haW50YWluZWQgaW4gIgorImEgVkNTIGFuZCBhIHBhdGNoIHNldCBjYW4ndCByZWxpYWJseSBiZSBnZW5lcmF0ZWQuIEluc3RlYWQgdGhlIGN1cnJlbnQgZGlmZiAiCisid2l0aCB1cHN0cmVhbSBzaG91bGQgYmUgc3RvcmVkIGluIGEgc2luZ2xlIHBhdGNoLiBUaGUgb3B0aW9uIHdvdWxkIGJlIHB1dCBpbiAiCisiQjxkZWJpYW4vc291cmNlL2xvY2FsLW9wdGlvbnM+IGFuZCB3b3VsZCBiZSBhY2NvbXBhbmllZCBieSBhIEI8ZGViaWFuL3NvdXJjZS8iCisibG9jYWwtcGF0Y2gtaGVhZGVyPiBmaWxlIGV4cGxhaW5pbmcgaG93IHRoZSBEZWJpYW4gY2hhbmdlcyBjYW4gYmUgYmVzdCAiCisicmV2aWV3ZWQsIGZvciBleGFtcGxlIGluIHRoZSBWQ1MgdGhhdCBpcyB1c2VkLiIKK21zZ3N0ciAiIgorIkFudsOkbmQgQjxkZWJpYW4vcGF0Y2hlcy9kZWJpYW4tY2hhbmdlcz4gaXN0w6RsbGV0IGbDtnIgQjxkZWJpYW4vcGF0Y2hlcy9kZWJpYW4tIgorImNoYW5nZXMtPkk8dmVyc2lvbj4gc29tIG5hbW4gcMOlIGRlbiBhdXRvbWF0aXNrYSBwYXRjaCBzb20gZ2VuZXJlcmFzIHZpZCAiCisiYnlnZ2V0LiBEZW5uYSBmbGFnZ2Egw6RyIHNwZWNpZWxsdCBueXR0aWcgbsOkciBwYWtldGV0IGhhbnRlcmFzIGkgZXR0ICIKKyJ2ZXJzaW9uc2hhbnRlcmluZ3NzeXN0ZW0gb2NoIGVuIHBhdGNoIGludGUga2FuIHNrYXBhcyBww6UgZXR0IHDDpWxpdGxpZ3Qgc8OkdHQuICIKKyJEZW4gYWt0dWVsbGEgZGlmZmVuIG1vdCB1cHBzdHLDtm1zIGxhZ3JhcyBpc3TDpGxsZXQgaSBlbiBlbnNhbSBwYXRjaC4gRmxhZ2dhbiAiCisiYsO2ciBhbmdlcyBpIEI8ZGViaWFuL3NvdXJjZS9sb2NhbC1vcHRpb25zPiBvY2ggZsO2bGpzIGF2IGZpbGVuIEI8ZGViaWFuLyIKKyJzb3VyY2UvbG9jYWwtcGF0Y2gtaGVhZGVyPiBzb20gYmVza3JpY2VyIGh1ciBEZWJpYW7DpG5kcmluZ2FybmEgYsOkc3Qga2FuIHNlcywgIgorInRpbGwgZXhlbXBlbCBpIGRldCB2ZXJzaW9uc2hhbnRlcmluZ3NzeXN0ZW0gc29tIGFudsOkbmRzLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NTI4CisjLCBuby13cmFwCittc2dpZCAiQjwtLWNyZWF0ZS1lbXB0eS1vcmlnPiIKK21zZ3N0ciAiQjwtLWNyZWF0ZS1lbXB0eS1vcmlnPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1MzQKK21zZ2lkICIiCisiQXV0b21hdGljYWxseSBjcmVhdGUgdGhlIG1haW4gb3JpZ2luYWwgdGFyYmFsbCBhcyBlbXB0eSBpZiBpdCdzIG1pc3NpbmcgYW5kICIKKyJpZiB0aGVyZSBhcmUgc3VwcGxlbWVudGFyeSBvcmlnaW5hbCB0YXJiYWxscy4gVGhpcyBvcHRpb24gaXMgbWVhbnQgdG8gYmUgIgorInVzZWQgd2hlbiB0aGUgc291cmNlIHBhY2thZ2UgaXMganVzdCBhIGJ1bmRsZSBvZiBtdWx0aXBsZSB1cHN0cmVhbSBzb2Z0d2FyZSAiCisiYW5kIHdoZXJlIHRoZXJlJ3Mgbm8gXCJtYWluXCIgc29mdHdhcmUuIgorbXNnc3RyICIiCisiU2thcGEgaHV2dWQtb3JpZ2luYWx0YXJib2xsZW4gc29tIHRvbSBhdXRvbWF0aXNrdCBvbSBkZW4gc2FrbmFzIG9jaCBvbSBkZXQgIgorImZpbm5zIHN1cHBsZW1lbnQtb3JpZ2luYWx0YXJib2xsYXIuIEZsYWdnYW4gw6RyIHTDpG5rdCBhdHQgYW52w6RuZGFzIG7DpHIgIgorImvDpGxsa29kc3Bha2V0ZXQgYmFyYSDDpHIgZW4gc2FtbGluZyBhdiBmbGVyYSB1cHBzdHLDtm1zcHJvZ3JhbSBvY2ggZMOkciBkZXQgIgorImludGUgZmlubnMgbsOlZ290IFwiaHV2dWRcIi1wcm9ncmFtLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NTM0CisjLCBuby13cmFwCittc2dpZCAiQjwtLXVuYXBwbHktcGF0Y2hlcz4iCittc2dzdHIgIkI8LS11bmFwcGx5LXBhdGNoZXM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjU0MQorbXNnaWQgIiIKKyJVbmFwcGx5IHRoZSBwYXRjaGVzIGluIHRoZSBCPC0tYWZ0ZXItYnVpbGQ+IGhvb2suIFlvdSB1c3VhbGx5IGRvbid0IG5lZWQgIgorInRoaXMgb3B0aW9uIGFzIGRwa2ctc291cmNlIHdpbGwgYXV0b21hdGljYWxseSB1bmFwcGx5IHRoZSBwYXRjaGVzIGlmIGl0IGRpZCAiCisiYXBwbHkgdGhlbSBkdXJpbmcgQjwtLWJlZm9yZS1idWlsZD4uIFRoaXMgb3B0aW9uIGlzIG9ubHkgYWxsb3dlZCBpbiBCPGRlYmlhbi8iCisic291cmNlL2xvY2FsLW9wdGlvbnM+IHNvIHRoYXQgYWxsIGdlbmVyYXRlZCBzb3VyY2UgcGFja2FnZXMgaGF2ZSB0aGUgc2FtZSAiCisiYmVoYXZpb3IgYnkgZGVmYXVsdC4iCittc2dzdHIgIiIKKyJUYSBib3J0IHBhdGNoYXIgaSBrcm9rZW4gQjwtLWFmdGVyLWJ1aWxkPi4gRHUgYmVow7Z2ZXIgb2Z0YXN0IGludGUgYW5nZSAiCisiZmxhZ2dhbiBlZnRlcnNvbSBkcGtnLXNvdXJjZSBhdXRvbWF0aXNrdCB0YXIgYm9ydCBwYXRjaGFyIG9tIGRlIHRpbGzDpG1wYWRlcyAiCisiaSBCPC0tYmVmb3JlLWJ1aWxkPi4gRmxhZ2dhbiB0aWxsw6V0cyBlbmRhc3QgaSBCPGRlYmlhbi9zb3VyY2UvbG9jYWwtb3B0aW9ucz4gIgorInPDpSBhdHQgYWxsYSBnZW5lcmVyYWRlIGvDpGxsa29kc3Bha2V0IHNvbSBzdGFuZGFyZCBoYXIgc2FtbWEgYmV0ZWVuZGUuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjU0OAorbXNnaWQgIiIKKyJUaGUgcHJvY2VzcyBmYWlscyBpZiBhbiBhdXRvbWF0aWMgcGF0Y2ggaGFzIGJlZW4gZ2VuZXJhdGVkLiBUaGlzIG9wdGlvbiBjYW4gIgorImJlIHVzZWQgdG8gZW5zdXJlIHRoYXQgYWxsIGNoYW5nZXMgd2VyZSBwcm9wZXJseSByZWNvcmRlZCBpbiBzZXBhcmF0ZSBxdWlsdCAiCisicGF0Y2hlcyBwcmlvciB0byB0aGUgc291cmNlIHBhY2thZ2UgYnVpbGQuIFRoaXMgb3B0aW9uIGlzIG5vdCBhbGxvd2VkIGluICIKKyJCPGRlYmlhbi9zb3VyY2Uvb3B0aW9ucz4gYnV0IGNhbiBiZSB1c2VkIGluIEI8ZGViaWFuL3NvdXJjZS9sb2NhbC1vcHRpb25zPi4iCittc2dzdHIgIiIKKyJQcm9jZXNzZW4gbWlzc2x5Y2thcyBvbSBlbiBhdXRvbWF0aXNrIHBhdGNoIGhhciBnZW5lcmVyYXRzLiBGbGFnZ2FuIGthbiAiCisiYW52w6RuZGFzIGbDtnIgYXR0IHNlIHRpbGwgYXR0IGFsbGEgw6RuZHJpbmdhciBoYXIgbGFncmF0cyB1bmRhbiBrb3JyZWt0IGkgIgorInNlcGFyYXRhIHF1aWx0LXBhdGNoYXIgaW5uYW4ga8OkbGxrb2RzcGFrZXRldCBieWdndHMuIEZsYWdnYW4gdGlsbMOldHMgaW50ZSBpICIKKyJCPGRlYmlhbi9zb3VyY2Uvb3B0aW9ucz4sIG1lbiBrYW4gYW52w6RuZGFzIGkgQjxkZWJpYW4vc291cmNlL2xvY2FsLW9wdGlvbnM+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NTQ4CisjLCBuby13cmFwCittc2dpZCAiQjwtLWF1dG8tY29tbWl0PiIKK21zZ3N0ciAiQjwtLWF1dG8tY29tbWl0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1NTIKK21zZ2lkICIiCisiVGhlIHByb2Nlc3MgZG9lc24ndCBmYWlsIGlmIGFuIGF1dG9tYXRpYyBwYXRjaCBoYXMgYmVlbiBnZW5lcmF0ZWQsIGluc3RlYWQgIgorIml0J3MgaW1tZWRpYXRlbHkgcmVjb3JkZWQgaW4gdGhlIHF1aWx0IHNlcmllcy4iCittc2dzdHIgIiIKKyJQcm9jZXNzZW4gbWlzc2x5Y2thcyBpbnRlIG9tIGVuIGF1dG9tYXRpc2sgcGF0Y2ggaGFyIHNrYXBhdHMsIGRlbiBsw6RnZ3MgIgorImlzdMOkbGxldCBkaXJla3QgaW4gaSBxdWlsdC1zZXJpZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjU1NQorbXNnaWQgIkI8RXh0cmFjdCBvcHRpb25zPiIKK21zZ3N0ciAiQjxFeHRyYWhlcmluZ3NmbGFnZ29yPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1NTgKK21zZ2lkICJTa2lwcyBleHRyYWN0aW9uIG9mIHRoZSBkZWJpYW4gdGFyYmFsbCBvbiB0b3Agb2YgdGhlIHVwc3RyZWFtIHNvdXJjZXMuIgorbXNnc3RyICJIb3BwYXMgw7Z2ZXIgYXR0IHBhY2thIHVwcCBkZWJpYW4tdGFyYm9sbGVuIG92YW5ww6UgdXBwc3Ryw7Ztc2vDpGxsa29kZW4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zb3VyY2UuMTo1NTgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tc2tpcC1wYXRjaGVzPiIKK21zZ3N0ciAiQjwtLXNraXAtcGF0Y2hlcz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTYxCittc2dpZCAiRG8gbm90IGFwcGx5IHBhdGNoZXMgYXQgdGhlIGVuZCBvZiB0aGUgZXh0cmFjdGlvbi4iCittc2dzdHIgIkFwcGxpY2VyYSBpbnRlIHBhdGNoYXIgaSBzbHV0ZXQgYXYgdXBwYWNrbmluZ2VuLiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6NTYyCisjLCBuby13cmFwCittc2dpZCAiRm9ybWF0OiAzLjAgKGN1c3RvbSkiCittc2dzdHIgIkZvcm1hdDogMy4wIChza3LDpGRkYXJzeXR0KSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1NjUKK21zZ2lkICIiCisiVGhpcyBmb3JtYXQgaXMgc3BlY2lhbC4gSXQgZG9lc24ndCByZXByZXNlbnQgYSByZWFsIHNvdXJjZSBwYWNrYWdlIGZvcm1hdCAiCisiYnV0IGNhbiBiZSB1c2VkIHRvIGNyZWF0ZSBzb3VyY2UgcGFja2FnZXMgd2l0aCBhcmJpdHJhcnkgZmlsZXMuIgorbXNnc3RyICIiCisiRGV0dGEgZm9ybWF0ZXQgw6RyIHNwZWNpZWxsdC4gRGV0IGFuZ2VyIGludGUgZXR0IHJpa3RpZ3Qga8OkbGxrb2RzcGFrZXRmb3JtYXQsICIKKyJ1dGFuIGthbiBhbnbDpG5kYXMgZsO2ciBhdHQgc2thcGEga8OkbGxrb2RzcGFrZXQgbWVkIGdvZHR5Y2tsaWdhIGZpbGVyLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1NzEKK21zZ2lkICIiCisiQWxsIG5vbi1vcHRpb24gYXJndW1lbnRzIGFyZSB0YWtlbiBhcyBmaWxlcyB0byBpbnRlZ3JhdGUgaW4gdGhlIGdlbmVyYXRlZCAiCisic291cmNlIHBhY2thZ2UuIFRoZXkgbXVzdCBleGlzdCBhbmQgYXJlIHByZWZlcmFibHkgaW4gdGhlIGN1cnJlbnQgZGlyZWN0b3J5LiAiCisiQXQgbGVhc3Qgb25lIGZpbGUgbXVzdCBiZSBnaXZlbi4iCittc2dzdHIgIiIKKyJBbGxhIGFyZ3VtZW50IHNvbSBpbnRlIMOkciBmbGFnZ29yIHRhcyBzb20gZmlsZXIgc29tIHNrYWxsIGludGVncmVyYXMgaSBkZXQgIgorInNrYXBhZGUga8OkbGxrb2RzcGFrZXRldC4gRGUgbcOlc3RlIGZpbm5hcywgb2NoIGhlbHN0IGkgYWt0dWVsbCBrYXRhbG9nLiAiCisiw4V0bWluc3RvbmUgZW4gZmlsIG3DpXN0ZSBhbmdlcy4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjU3MQorIywgbm8td3JhcAorbXNnaWQgIkI8LS10YXJnZXQtZm9ybWF0PT5JPHZhbHVlPiIKK21zZ3N0ciAiQjwtLXRhcmdldC1mb3JtYXQ9Pkk8dsOkcmRlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo1NzYKK21zZ2lkICIiCisiQjxSZXF1aXJlZD4uIERlZmluZXMgdGhlIHJlYWwgZm9ybWF0IG9mIHRoZSBnZW5lcmF0ZWQgc291cmNlIHBhY2thZ2UuICBUaGUgIgorImdlbmVyYXRlZCAuZHNjIGZpbGUgd2lsbCBjb250YWluIHRoaXMgdmFsdWUgaW4gaXRzIEk8Rm9ybWF0PiBmaWVsZCBhbmQgbm90ICIKKyJcIjMuMCAoY3VzdG9tKVwiLiIKK21zZ3N0ciAiIgorIkI8S3LDpHZzPi4gQW5nZXIgZGV0IHJpa3RpZ2EgZm9ybWF0ZXQgcMOlIGRldCBnZW5lcmVyYWRlIGvDpGxsa29kc3Bha2V0ZXQuIERlbiAiCisic2thcGFkZSAuZHNjLWZpbGVuIGtvbW1lciBpbm5laMOlbGxhIGRldHRhIHbDpHJkZSBpIHNpdHQgSTxGb3JtYXQ+LWbDpGx0IG9jaCAiCisiaW50ZSBcIjMuMCAoY3VzdG9tKVwiLiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6NTc3CisjLCBuby13cmFwCittc2dpZCAiRm9ybWF0OiAzLjAgKGdpdCkiCittc2dzdHIgIkZvcm1hdDogMy4wIChnaXQpIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjU3OQorbXNnaWQgIlRoaXMgZm9ybWF0IGlzIGV4cGVyaW1lbnRhbC4iCittc2dzdHIgIkZvcm1hdGV0IMOkciBleHBlcmltZW50ZWxsdC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTg0Cittc2dpZCAiIgorIkEgc291cmNlIHBhY2thZ2UgaW4gdGhpcyBmb3JtYXQgY29uc2lzdHMgb2YgYSBzaW5nbGUgYnVuZGxlIG9mIGEgZ2l0ICIKKyJyZXBvc2l0b3J5IEI8LmdpdD4gdG8gaG9sZCB0aGUgc291cmNlIG9mIGEgcGFja2FnZS4gIFRoZXJlIG1heSBhbHNvIGJlIGEgQjwuIgorImdpdHNoYWxsb3c+IGZpbGUgbGlzdGluZyByZXZpc2lvbnMgZm9yIGEgc2hhbGxvdyBnaXQgY2xvbmUuIgorbXNnc3RyICIiCisiRXR0IGvDpGxsa29kc3Bha2V0IGkgZGV0dGEgZm9ybWF0IGJlc3TDpXIgYXYgZW4gZW5zYW0gXCJidW5kbGVcIiBmcsOlbiBldHQgZ2l0LSIKKyJhcmtpdiBCPC5naXQ+LCB2aWxrZXQgaW5uZWjDpWxsZXIgcGFrZXRldHMga8OkbGxrb2QuIEZpbGVuIEI8LmdpdHNoYWxsb3c+LCBzb20gIgorImlubmVow6VsbGVyIHJldmlzaW9uZXIgZsO2ciBncnVuZGEgZ2l0LWtsb25lciwga2FuIMOkdmVuIGbDtnJla29tbWEuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjU5MAorbXNnaWQgIiIKKyJUaGUgYnVuZGxlIGlzIGNsb25lZCBhcyBhIGdpdCByZXBvc2l0b3J5IHRvIHRoZSB0YXJnZXQgZGlyZWN0b3J5LiAgSWYgdGhlcmUgIgorImlzIGEgZ2l0c2hhbGxvdyBmaWxlLCBpdCBpcyBpbnN0YWxsZWQgYXMgYC5naXQvc2hhbGxvd2AgaW5zaWRlIHRoZSBjbG9uZWQgIgorImdpdCByZXBvc2l0b3J5LiIKK21zZ3N0ciAiIgorIlwiQnVuZGxlXCI6biBrbG9uYXMgc29tIGV0dCBnaXQtYXJraXYgdGlsbCBtw6Vsa2F0YWxvZ2VuLiBPbSBmaWxlbiBnaXRzaGFsbG93ICIKKyJmaW5ucyBpbnN0YWxsZXJhcyBkZW4gc29tIFwiLmdpdC9zaGFsbG93XCIgaSBkZXQga2xvbmFkZSBnaXQtYXJraXZldC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NTk1Cittc2dpZCAiIgorIk5vdGUgdGhhdCBieSBkZWZhdWx0IHRoZSBuZXcgcmVwb3NpdG9yeSB3aWxsIGhhdmUgdGhlIHNhbWUgYnJhbmNoIGNoZWNrZWQgIgorIm91dCB0aGF0IHdhcyBjaGVja2VkIG91dCBpbiB0aGUgb3JpZ2luYWwgc291cmNlLiAoVHlwaWNhbGx5IFwibWFzdGVyXCIsIGJ1dCAiCisiaXQgY291bGQgYmUgYW55dGhpbmcuKSBBbnkgb3RoZXIgYnJhbmNoZXMgd2lsbCBiZSBhdmFpbGFibGUgdW5kZXIgYHJlbW90ZXMvIgorIm9yaWdpbi9gLiIKK21zZ3N0ciAiIgorIk9ic2VydmVyYSBhdHQgZGV0IG55YSBhcmtpdmV0IHNvbSBzdGFuZGFyZCBrb21tZXIgYXR0IGhhIHNhbW1hIGdyZW4gIgorInV0Y2hlY2thZCBzb20gZGVuIHNvbSB2YXIgdXRjaGVja2FkIGkgZGV0IHVyc3BydW5nbGlnYSBrw6RsbGtvZHN0csOkZGV0LiAiCisiKFR5cGlza3QgXCJtYXN0ZXJcIiwgbWVuIGthbiB2YXJhIHZhZCBzb20gaGVsc3QuKSBFdmVudHVlbGxhIGFuZHJhIGdyZW5hciAiCisia29tbWVyIG9ja3PDpSBhdHQgdmFyYSB0aWxsZ8OkbmdsaWdhLCB1bmRlciBcInJlbW90ZXMvb3JpZ2luL1wiLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2MDAgZHBrZy1zb3VyY2UuMTo2MzMKK21zZ2lkICIiCisiQmVmb3JlIGdvaW5nIGFueSBmdXJ0aGVyLCBzb21lIGNoZWNrcyBhcmUgZG9uZSB0byBlbnN1cmUgdGhhdCB3ZSBkb24ndCBoYXZlICIKKyJhbnkgbm9uLWlnbm9yZWQgdW5jb21taXR0ZWQgY2hhbmdlcy4iCittc2dzdHIgIiIKKyJJbm5hbiB1cHBhY2tuaW5nZW4gZm9ydHPDpHR0ZXIga29tbWVyIGVuIGRlbCB0ZXN0ZXIgYXR0IHV0ZsO2cmFzIGbDtnIgYXR0IHNlICIKKyJ0aWxsIGF0dCB2aSBpbnRlIGhhciBuw6VncmEgZWogaWdub3JlcmFkZSBlaiBpbmNoZWNrYWRlIMOkbmRyaW5nYXIuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjYwNAorbXNnaWQgIiIKKyJCPGdpdC1idW5kbGU+KDEpIGlzIHVzZWQgdG8gZ2VuZXJhdGUgYSBidW5kbGUgb2YgdGhlIGdpdCByZXBvc2l0b3J5LiAgQnkgIgorImRlZmF1bHQsIGFsbCBicmFuY2hlcyBhbmQgdGFncyBpbiB0aGUgcmVwb3NpdG9yeSBhcmUgaW5jbHVkZWQgaW4gdGhlIGJ1bmRsZS4iCittc2dzdHIgIiIKKyJCPGdpdC1idW5kbGU+KDEpIGFudsOkbmRzIGbDtnIgYXR0IGdlbmVyZXJhIGVuIFwiYnVuZGxlXCIgZnLDpW4gZ2l0LWFya2l2ZXQuICIKKyJTb20gc3RhbmRhcmQgdGFzIGFsbGEgZ3JlbmFyIG9jaCB0YWdnYXIgaSBhcmtpdmV0IG1lZCBpIFwiYnVuZGxlXCI6bi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNvdXJjZS4xOjYwNgorIywgbm8td3JhcAorbXNnaWQgIkI8LS1naXQtcmVmPT5JPHJlZj4iCittc2dzdHIgIkI8LS1naXQtcmVmPT5JPHJlZj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NjE2Cittc2dpZCAiIgorIkFsbG93cyBzcGVjaWZ5aW5nIGEgZ2l0IHJlZiB0byBpbmNsdWRlIGluIHRoZSBnaXQgYnVuZGxlLiBVc2UgZGlzYWJsZXMgdGhlICIKKyJkZWZhdWx0IGJlaGF2aW9yIG9mIGluY2x1ZGluZyBhbGwgYnJhbmNoZXMgYW5kIHRhZ3MuIE1heSBiZSBzcGVjaWZpZWQgIgorIm11bHRpcGxlIHRpbWVzLiBUaGUgSTxyZWY+IGNhbiBiZSB0aGUgbmFtZSBvZiBhIGJyYW5jaCBvciB0YWcgdG8gaW5jbHVkZS4gSXQgIgorIm1heSBhbHNvIGJlIGFueSBwYXJhbWV0ZXIgdGhhdCBjYW4gYmUgcGFzc2VkIHRvIEI8Z2l0LXJldi1saXN0PigxKS4gRm9yICIKKyJleGFtcGxlLCB0byBpbmNsdWRlIG9ubHkgdGhlIG1hc3RlciBicmFuY2gsIHVzZSAtLWdpdC1yZWY9bWFzdGVyLiBUbyBpbmNsdWRlICIKKyJhbGwgdGFncyBhbmQgYnJhbmNoZXMsIGV4Y2VwdCBmb3IgdGhlIHByaXZhdGUgYnJhbmNoLCB1c2UgLS1naXQtcmVmPS0tYWxsIC0tIgorImdpdC1yZWY9XnByaXZhdGUiCittc2dzdHIgIiIKKyJHw7ZyIGRldCBtw7ZqbGlndCBhdHQgYW5nZSBlbiBnaXQtcmVmZXJlbnMgc29tIHNrYWxsIHRhcyBtZWQgaSBcImJ1bmRsZVwiOm4uICIKKyJPbSBkZW4gYW5nZXMgw7Z2ZXJzdHlyIGRlbiBzdGFuZGFyZGJldGVlbmRldCBzb20gw6RyIGF0dCB0YSBtZWQgYWxsYSBncmVuYXIgIgorIm9jaCB0YWdnYXIuIEthbiBhbmdlcyBmbGVyYSBnw6VuZ2VyLiBJPHJlZj4ga2FuIHZhcmEgbmFtbmV0IHDDpSBlbiBncmVuIGVsbGVyICIKKyJ0YWdnIHNvbSBza2FsbCB0YXMgbWVkLiBEZW4ga2FuIMOkdmVuIHZhcmEgdmlsa2VuIHNvbSBoZWxzdCBhbm5hbiBwYXJhbWV0ZXIgIgorInNvbSBrYW4gc8OkbmRhcyBtZWQgdGlsbCBCPGdpdC1yZXYtbGlzdD4oMSkuIEbDtnIgYXR0LCB0aWxsIGV4ZW1wZWwsIGVuZGFzdCB0YSAiCisibWVkIGdyZW5lbiBcIm1hc3RlclwiLCBhbmfDpG5kIC0tZ2l0LXJlZj1tYXN0ZXIuIEbDtnIgYXR0IHRhIG1lZCBhbGxhIHRhZ2dhciAiCisib2NoIGdyZW5hciwgZsO2cnV0b20gZ3JlbmVuIHByaXZhdGUsIGFudsOkbmQgLS1naXQtcmVmPS0tYWxsIC0tZ2l0LXJlZj1ecHJpdmF0ZSIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc291cmNlLjE6NjE2CisjLCBuby13cmFwCittc2dpZCAiQjwtLWdpdC1kZXB0aD0+STxudW1iZXI+IgorbXNnc3RyICJCPC0tZ2l0LWRlcHRoPT5JPGFudGFsPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2MjAKK21zZ2lkICIiCisiQ3JlYXRlcyBhIHNoYWxsb3cgY2xvbmUgd2l0aCBhIGhpc3RvcnkgdHJ1bmNhdGVkIHRvIHRoZSBzcGVjaWZpZWQgbnVtYmVyIG9mICIKKyJyZXZpc2lvbnMuIgorbXNnc3RyICIiCisiU2thcGFyIGVuIGdydW5kIGtsb24gbWVkIGVuIGhpc3RvcmlrIHNvbSDDpHIgYXZodWdnZW4gdmlkIGRldCBhbmdpdm5hIGFudGFsZXQgIgorInJldmlzaW9uZXIuIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo2MjAKKyMsIG5vLXdyYXAKK21zZ2lkICJGb3JtYXQ6IDMuMCAoYnpyKSIKK21zZ3N0ciAiRm9ybWF0OiAzLjAgKGJ6cikiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NjIzCittc2dpZCAiIgorIlRoaXMgZm9ybWF0IGlzIGV4cGVyaW1lbnRhbC4gSXQgZ2VuZXJhdGVzIGEgc2luZ2xlIHRhcmJhbGwgY29udGFpbmluZyB0aGUgIgorImJ6ciByZXBvc2l0b3J5LiIKK21zZ3N0ciAiIgorIkRldHRhIGZvcm1hdCDDpHIgZXhwZXJpbWVudGVsbHQuIERldCBnZW5lcmVyYXIgZW4gZW5zYW0gdGFyYm9sbCBzb20gIgorImlubmVow6VsbGVyIGJ6ci1hcmtpdmV0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2MjgKK21zZ2lkICIiCisiVGhlIHRhcmJhbGwgaXMgdW5wYWNrZWQgYW5kIHRoZW4gYnpyIGlzIHVzZWQgdG8gY2hlY2tvdXQgdGhlIGN1cnJlbnQgYnJhbmNoLiIKK21zZ3N0ciAiIgorIlRhcmJvbGxlbiBwYWNrYXMgdXBwIG9jaCBienIgYW52w6RuZHMgc2VkYW4gZsO2ciBhdHQgaMOkbXRhIHV0IGRlbiBha3R1ZWxsYSAiCisiZ3JlbmVuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2MzcKK21zZ2lkICIiCisiVGhlbiB0aGUgVkNTIHNwZWNpZmljIHBhcnQgb2YgdGhlIHNvdXJjZSBkaXJlY3RvcnkgaXMgY29waWVkIG92ZXIgdG8gYSAiCisidGVtcG9yYXJ5IGRpcmVjdG9yeS4gQmVmb3JlIHRoaXMgdGVtcG9yYXJ5IGRpcmVjdG9yeSBpcyBwYWNrZWQgaW4gYSB0YXJiYWxsLCAiCisidmFyaW91cyBjbGVhbnVwIGFyZSBkb25lIHRvIHNhdmUgc3BhY2UuIgorbXNnc3RyICIiCisiRGUgVkNTLXNwZWNpZmlrYSBkZWxhcm5hIGF2IGvDpGxsa29kc2thdGFsb2dlbiBrb21tZXIgZMOkcmVmdGVyIGF0dCBrb3BpZXJhcyAiCisiw7Z2ZXIgdGlsbCBlbiB0ZW1wb3LDpHIga2F0YWxvZy4gSW5uYW4gZGVuIHRlbXBvcsOkcmEga2F0YWxvZ2VuIHBhY2thcyBpIGVuICIKKyJ0YXJib2xsIHV0ZsO2cnMgdmlzcyBzdMOkZG5pbmcgZsO2ciBhdHQgc3BhcmEgcGxhdHMuIgorCisjLiB0eXBlOiBTSAorIzogZHBrZy1zb3VyY2UuMTo2MzcKKyMsIG5vLXdyYXAKK21zZ2lkICJXQVJOSU5HUyBBTkQgRVJST1JTIgorbXNnc3RyICJWQVJOSU5HQVIgT0NIIEZFTE1FRERFTEFOREVOIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo2MzgKKyMsIG5vLXdyYXAKK21zZ2lkICJubyBzb3VyY2UgZm9ybWF0IHNwZWNpZmllZCBpbiBkZWJpYW4vc291cmNlL2Zvcm1hdCIKK21zZ3N0ciAia8OkbGxrb2RzZm9ybWF0IGVqIGFuZ2l2ZXQgaSBkZWJpYW4vc291cmNlL2Zvcm1hdCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2NDQKK21zZ2lkICIiCisiVGhlIGZpbGUgQjxkZWJpYW4vc291cmNlL2Zvcm1hdD4gc2hvdWxkIGFsd2F5cyBleGlzdCBhbmQgaW5kaWNhdGUgdGhlICIKKyJkZXNpcmVkIHNvdXJjZSBmb3JtYXQuIEZvciBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eSwgZm9ybWF0IFwiMS4wXCIgaXMgIgorImFzc3VtZWQgd2hlbiB0aGUgZmlsZSBkb2Vzbid0IGV4aXN0IGJ1dCB5b3Ugc2hvdWxkIG5vdCByZWx5IG9uIHRoaXM6IGF0IHNvbWUgIgorInBvaW50IGluIHRoZSBmdXR1cmUgZHBrZy1zb3VyY2Ugd2lsbCBiZSBtb2RpZmllZCB0byBmYWlsIHdoZW4gdGhhdCBmaWxlICIKKyJkb2Vzbid0IGV4aXN0LiIKK21zZ3N0ciAiIgorIkZpbGVuIEI8ZGViaWFuL3NvdXJjZS9mb3JtYXQ+IGLDtnIgYWxsdGlkIGZpbm5hcyBvY2ggYW5nZSBkZXQgw7Zuc2thZGUgIgorImvDpGxsa29kc2Zvcm1hdGV0LiBGw7ZyIGJha8OldGtvbXBhdGliaWxpdGV0IGFudGFyIGZvcm1hdGV0IFwiMS4wXCIgb20gZmlsZW4gIgorImludGUgZmlubnMsIG1lbiBkdSBiw7ZyIGludGUgZsO2cmxpdGEgZGlnIHDDpSBkZXR0YTogdmlkIG7DpWdvbiBwdW5rdCBpICIKKyJmcmFtdGlkZW4ga29tbWVyIGRwa2ctc291cmNlIGF0dCBqdXN0ZXJhcyBzw6UgYXR0IGRldCBtaXNzbHlja2FzIG9tIGZpbGVuICIKKyJpbnRlIGZpbm5zLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2NTAKK21zZ2lkICIiCisiVGhlIHJhdGlvbmFsZSBpcyB0aGF0IGZvcm1hdCBcIjEuMFwiIGlzIG5vIGxvbmdlciB0aGUgcmVjb21tZW5kZWQgZm9ybWF0LCAiCisieW91IHNob3VsZCB1c3VhbGx5IHBpY2sgb25lIG9mIHRoZSBuZXdlciBmb3JtYXRzIChcIjMuMCAocXVpbHQpXCIsIFwiMy4wICIKKyIobmF0aXZlKVwiKSBidXQgQjxkcGtnLXNvdXJjZT4gd2lsbCBub3QgZG8gdGhpcyBhdXRvbWF0aWNhbGx5IGZvciB5b3UuICBJZiAiCisieW91IHdhbnQgdG8gY29udGludWUgdXNpbmcgdGhlIG9sZCBmb3JtYXQsIHlvdSBzaG91bGQgYmUgZXhwbGljaXQgYWJvdXQgaXQgIgorImFuZCBwdXQgXCIxLjBcIiBpbiBCPGRlYmlhbi9zb3VyY2UvZm9ybWF0Pi4iCittc2dzdHIgIiIKKyJSZXNvbmVtYW5nZXQgYmFrb20gZGV0dGEgw6RyIGF0dCBmb3JtYXRldCBcIjEuMFwiIGludGUgbMOkbmdyZSDDpHIgZGV0ICIKKyJyZWtvbW1lbmRlcmFkZSBmb3JtYXRldCwgZHUgYsO2ciBub3JtYWx0IHbDpGxqYSBldHQgYXYgZGUgbnlhcmUgZm9ybWF0ZW4gIgorIihcIjMuMCAocXVpbHQpXCIsIFwiMy4wIChuYXRpdmUpXCIpLCBtZW4gQjxkcGtnLXNvdXJjZT4gZ8O2ciBpbnRlIGRldHRhICIKKyJhdXRvbWF0aXNrdCDDpXQgZGlnLiBPbSBkdSB2aWxsIGZvcnRzw6R0dGEgYW52w6RuZGEgZGV0IGdhbWxhIGZvcm1hdGV0IGLDtnIgZHUgIgorImFuZ2UgZGV0IGV4cGxpY2l0IGdlbm9tIGF0dCBza3JpdmEgXCIxLjBcIiBpIEI8ZGViaWFuL3NvdXJjZS9mb3JtYXQ+LiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6NjUwCisjLCBuby13cmFwCittc2dpZCAidGhlIGRpZmYgbW9kaWZpZXMgdGhlIGZvbGxvd2luZyB1cHN0cmVhbSBmaWxlcyIKK21zZ3N0ciAiZGlmZmVuIG1vZGlmaWVyYXIgZsO2bGphbmRlIHVwcHN0csO2bXNmaWxlciIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2NTcKK21zZ2lkICIiCisiV2hlbiB1c2luZyBzb3VyY2UgZm9ybWF0IFwiMS4wXCIgaXQgaXMgdXN1YWxseSBhIGJhZCBpZGVhIHRvIG1vZGlmeSB1cHN0cmVhbSAiCisiZmlsZXMgZGlyZWN0bHkgYXMgdGhlIGNoYW5nZXMgZW5kIHVwIGhpZGRlbiBhbmQgbW9zdGx5IHVuZG9jdW1lbnRlZCBpbiB0aGUgLiIKKyJkaWZmLmd6IGZpbGUuIEluc3RlYWQgeW91IHNob3VsZCBzdG9yZSB5b3VyIGNoYW5nZXMgYXMgcGF0Y2hlcyBpbiB0aGUgZGViaWFuICIKKyJkaXJlY3RvcnkgYW5kIGFwcGx5IHRoZW0gYXQgYnVpbGQtdGltZS4gVG8gYXZvaWQgdGhpcyBjb21wbGV4aXR5IHlvdSBjYW4gIgorImFsc28gdXNlIHRoZSBmb3JtYXQgXCIzLjAgKHF1aWx0KVwiIHRoYXQgb2ZmZXJzIHRoaXMgbmF0aXZlbHkuIgorbXNnc3RyICIiCisiTsOkciBkdSBhbnbDpG5kZXIga8OkbGxrb2RzZm9ybWF0ZXQgXCIxLjBcIiDDpHIgZGV0IG9mdGFzdCBpbnRlIG7DpWdvbiBicmEgaWTDqSAiCisiYXR0IG1vZGlmaWVyYSB1cHBzdHLDtm1zZmlsZXIgZGlyZWt0IGVmdGVyc29tIMOkbmRyaW5nYXJuYSBkw7ZsanMgb2NoIGkgIgorImh1dnVkc2FrIMOkciBvZG9rdW1lbnRlcmFkZSBpIGRpZmYuZ3otZmlsZW4uIER1IGLDtnIgaXN0w6RsbGV0IHNwYXJhIGRpbmEgIgorIsOkbmRyaW5nYXIgc29tIHBhdGNoYXIgaSBkZWJpYW4ta2F0YWxvZ2VuIG9jaCBhcHBsaWNlcmEgZGVtIG7DpHIgcGFrZXRldCBza2FsbCAiCisiYnlnZ2FzLiBGw7ZyIGF0dCB1bmR2aWthIGRlbiBow6RyIGtvbXBsZXhpdGV0ZW4ga2FuIGR1IMOkdmVuIGFudsOkbmRhIGZvcm1hdGV0ICIKKyJcIjMuMCAocXVpbHQpXCIgc29tIGzDpXRlciBkaWcgZ8O2cmEgZGV0IGjDpHIgYXV0b21hdGlza3QuIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo2NTcKKyMsIG5vLXdyYXAKK21zZ2lkICJjYW5ub3QgcmVwcmVzZW50IGNoYW5nZSB0byBJPGZpbGU+IgorbXNnc3RyICJrYW4gaW50ZSByZXByZXNlbnRlcmEgw6RuZHJpbmdlbiBmw7ZyIEk8ZmlsPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2NjMKK21zZ2lkICIiCisiQ2hhbmdlcyB0byB1cHN0cmVhbSBzb3VyY2VzIGFyZSB1c3VhbGx5IHN0b3JlZCB3aXRoIHBhdGNoIGZpbGVzLCBidXQgbm90IGFsbCAiCisiY2hhbmdlcyBjYW4gYmUgcmVwcmVzZW50ZWQgd2l0aCBwYXRjaGVzOiB0aGV5IGNhbiBvbmx5IGFsdGVyIHRoZSBjb250ZW50IG9mICIKKyJwbGFpbiB0ZXh0IGZpbGVzLiBJZiB5b3UgdHJ5IHJlcGxhY2luZyBhIGZpbGUgd2l0aCBzb21ldGhpbmcgb2YgYSBkaWZmZXJlbnQgIgorInR5cGUgKGZvciBleGFtcGxlIHJlcGxhY2luZyBhIHBsYWluIGZpbGUgd2l0aCBhIHN5bWxpbmsgb3IgYSBkaXJlY3RvcnkpLCB5b3UgIgorIndpbGwgZ2V0IHRoaXMgZXJyb3IgbWVzc2FnZS4iCittc2dzdHIgIiIKKyLDhG5kcmluZ2FyIHDDpSB1cHBzdHLDtm1zZmlsZXIgc3BhcmFzIG5vcm1hbHQgc29tIHBhdGNoZmlsZXIsIG1lbiBpbnRlIGFsbGEgIgorIsOkbmRyaW5nYXIga2FuIHJlcHJlc2VudGVyYXMgbWVkIHBhdGNoYXI6IGRlIGthbiBlbmRhc3Qgw6RuZHJhIGlubmVow6VsbGV0IGkgIgorInZhbmxpZ2EgdGV4dGZpbGVyLiBPbSBkdSBmw7Zyc8O2a2VyIGVyc8OkdHRhIGVuIGZpbCBtZWQgbsOlZ290IHNvbSBoYXIgZW4gYW5uYW4gIgorInR5cCAodGlsbCBleGVtcGVsIGVyc8OkdHRhIGVuIHZhbmxpZyBmaWwgbWVkIGVuIHN5bWJvbGlzayBsw6RuayBlbGxlciBlbiAiCisia2F0YWxvZykgZsOlciBkdSBkZXQgaMOkciBmZWxtZWRkZWxhbmRldC4iCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjY2MworIywgbm8td3JhcAorbXNnaWQgIm5ld2x5IGNyZWF0ZWQgZW1wdHkgZmlsZSBJPGZpbGU+IHdpbGwgbm90IGJlIHJlcHJlc2VudGVkIGluIGRpZmYiCittc2dzdHIgImRlbiB0b21tYSBmaWxlbiBJPGZpbD4gc29tIGp1c3Qgc2thcGF0cyBrb21tZXIgaW50ZSByZXByZXNlbnRlcmFzIGkgZGlmZmVuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjY2NgorbXNnaWQgIiIKKyJFbXB0eSBmaWxlcyBjYW4ndCBiZSBjcmVhdGVkIHdpdGggcGF0Y2ggZmlsZXMuIFRodXMgdGhpcyBjaGFuZ2UgaXMgbm90ICIKKyJyZWNvcmRlZCBpbiB0aGUgc291cmNlIHBhY2thZ2UgYW5kIHlvdSBhcmUgd2FybmVkIGFib3V0IGl0LiIKK21zZ3N0ciAiIgorIlRvbW1hIGZpbGVyIGthbiBpbnRlIHNrYXBhcyBtZWQgcGF0Y2hmaWxlci4gw4RuZHJpbmdlbiBrb21tZXIgZMOkcm1lZCBpbnRlIGF0dCAiCisic3BhcmFzIGkga8OkbGxrb2RzcGFrZXRldCBvY2ggZHUgZsOlciBlbiB2YXJuaW5nIG9tIGRldC4iCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjY2NgorIywgbm8td3JhcAorbXNnaWQgImV4ZWN1dGFibGUgbW9kZSBJPHBlcm1zPiBvZiBJPGZpbGU+IHdpbGwgbm90IGJlIHJlcHJlc2VudGVkIGluIGRpZmYiCittc2dzdHIgImV4ZWt2ZXJpbmdzbMOkZ2UgSTxsw6RnZT4gcMOlIEk8ZmlsPiBrb21tZXIgaW50ZSByZXByZXNlbnRlcmFzIGkgZGlmZmVuIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo2NjcKKyMsIG5vLXdyYXAKK21zZ2lkICJzcGVjaWFsIG1vZGUgSTxwZXJtcz4gb2YgSTxmaWxlPiB3aWxsIG5vdCBiZSByZXByZXNlbnRlZCBpbiBkaWZmIgorbXNnc3RyICJzcGVjaWFsbMOkZ2V0IEk8bMOkZ2U+IHDDpSBJPGZpbD4ga29tbWVyIGludGUgcmVwcmVzZW50ZXJhcyBpIGRpZmZlbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2NzEKK21zZ2lkICIiCisiUGF0Y2ggZmlsZXMgZG8gbm90IHJlY29yZCBwZXJtaXNzaW9ucyBvZiBmaWxlcyBhbmQgdGh1cyBtb2RpZmllZCBwZXJtaXNzaW9ucyAiCisiYXJlIG5vdCBzdG9yZWQgaW4gdGhlIHNvdXJjZSBwYWNrYWdlLiBUaGlzIHdhcm5pbmcgcmVtaW5kcyB5b3Ugb2YgdGhhdCBmYWN0LiIKK21zZ3N0ciAiIgorIlBhdGNoZmlsZXIgYmVza3JpdmVyIGludGUgbMOkZ2V0IHDDpSBmaWxlciBvY2ggw6RuZHJhZGUgbMOkZ2VuIHNwYXJhcyBpbnRlIGkgIgorImvDpGxsa29kc3Bha2V0ZXQuIERlbiBow6RyIHZhcm5pbmdlbiBww6VtaW5uZXIgZGlnIG9tIGRldHRhLiIKKworIy4gdHlwZTogU0gKKyM6IGRwa2ctc291cmNlLjE6NjcxCisjLCBuby13cmFwCittc2dpZCAiRklMRSBGT1JNQVRTIgorbXNnc3RyICJGSUxGT1JNQVQiCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjY3MgorIywgbm8td3JhcAorbXNnaWQgImRlYmlhbi9zb3VyY2UvZm9ybWF0IgorbXNnc3RyICJkZWJpYW4vc291cmNlL2Zvcm1hdCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2NzYKK21zZ2lkICIiCisiVGhpcyBmaWxlIGNvbnRhaW5zIG9uIGEgc2luZ2xlIGxpbmUgdGhlIGZvcm1hdCB0aGF0IHNob3VsZCBiZSB1c2VkIHRvIGJ1aWxkICIKKyJ0aGUgc291cmNlIHBhY2thZ2UgKHBvc3NpYmxlIGZvcm1hdHMgYXJlIGRlc2NyaWJlZCBhYm92ZSkuIE5vIGxlYWRpbmcgb3IgIgorInRyYWlsaW5nIHNwYWNlcyBhcmUgYWxsb3dlZC4iCittc2dzdHIgIiIKKyJGaWxlbiBpbm5laMOlbGxlciBww6UgZW4gZW5zYW0gcmFkIGRldCBmb3JtYXQgc29tIHNrYWxsIGFudsOkbmRhcyBmw7ZyIGF0dCBieWdnYSAiCisia8OkbGxrb2RzcGFrZXRldCAobcO2amxpZ2EgZm9ybWF0IGJlc2tyaXZzIG92YW4pLiBWYXJrZW4gbGVkYW5kZSBlbGxlciAiCisiYXZzbHV0YW5kZSBibGFua3N0ZWcgdGlsbMOldHMuIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo2NzYKKyMsIG5vLXdyYXAKK21zZ2lkICJkZWJpYW4vc291cmNlL2luY2x1ZGUtYmluYXJpZXMiCittc2dzdHIgImRlYmlhbi9zb3VyY2UvaW5jbHVkZS1iaW5hcmllcyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo2ODAKK21zZ2lkICIiCisiVGhpcyBmaWxlIGNvbnRhaW5zIGEgbGlzdCBvZiBiaW5hcnkgZmlsZXMgKG9uZSBwZXIgbGluZSkgdGhhdCBzaG91bGQgYmUgIgorImluY2x1ZGVkIGluIHRoZSBkZWJpYW4gdGFyYmFsbC4gTGVhZGluZyBhbmQgdHJhaWxpbmcgc3BhY2VzIGFyZSBzdHJpcHBlZC4gICIKKyJMaW5lcyBzdGFydGluZyB3aXRoIFwiI1wiIGFyZSBjb21tZW50cyBhbmQgYXJlIHNraXBwZWQuIEVtcHR5IGxpbmVzIGFyZSAiCisiaWdub3JlZC4iCittc2dzdHIgIiIKKyJGaWxlbiBpbm5laMOlbGxlciBlbiBmw7ZydGVja25pbmcgw7Z2ZXIgYmluw6RyZmlsZXIgKGVuIHBlciByYWQpIHNvbSBza2FsbCB0YXMgIgorIm1lZCBpIGRlYmlhbi10YXJib2xsZW4uIElubGVkYW5kZSBvY2ggYXZzbHV0YW5kZSBibGFua3N0ZWcgdGFzIGJvcnQuIFJhZGVyICIKKyJzb20gYsO2cmphciBtZWQgXCIjXCIgw6RyIGtvbW1lbnRhcmVyIG9jaCBob3BwYXMgw7Z2ZXIuIFRvbW1hIHJhZGVyIGlnbm9yZXJhcy4iCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjY4MAorIywgbm8td3JhcAorbXNnaWQgImRlYmlhbi9zb3VyY2Uvb3B0aW9ucyIKK21zZ3N0ciAiZGViaWFuL3NvdXJjZS9vcHRpb25zIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjY4NgorbXNnaWQgIiIKKyJUaGlzIGZpbGUgY29udGFpbnMgYSBsaXN0IG9mIGxvbmcgb3B0aW9ucyB0aGF0IHNob3VsZCBiZSBhdXRvbWF0aWNhbGx5ICIKKyJwcmVwZW5kZWQgdG8gdGhlIHNldCBvZiBjb21tYW5kIGxpbmUgb3B0aW9ucyBvZiBhIEI8ZHBrZy1zb3VyY2UgLWI+IG9yICIKKyJCPGRwa2ctc291cmNlIC0tcHJpbnQtZm9ybWF0PiBjYWxsLiBPcHRpb25zIGxpa2UgQjwtLWNvbXByZXNzaW9uPiBhbmQgQjwtLSIKKyJjb21wcmVzc2lvbi1sZXZlbD4gYXJlIHdlbGwgc3VpdGVkIGZvciB0aGlzIGZpbGUuIgorbXNnc3RyICIiCisiRmlsZW4gaW5uZWjDpWxsZXIgZW4gbGlzdGEgw7Z2ZXIgbMOlbmdhIGZsYWdnb3Igc29tIGF1dG9tYXRpc2t0IHPDpHR0cyBpbiBmw7ZyZSAiCisia29tbWFuZG9yYWRzZmxhZ2dvcm5hIHNvbSBhbmdlcyBpIGV0dCBhbnJvcCB0aWwgQjxkcGtnLXNvdXJjZSAtYj4gZWxsZXIgIgorIkI8ZHBrZy1zb3VyY2UgLS1wcmludC1mb3JtYXQ+LiBGbGFnZ29yIHNvbSBCPC0tY29tcHJlc3Npb24+IG9jaCBCPC0tIgorImNvbXByZXNzaW9uLWxldmVsPiDDpHIgcGFzc2FuZGUgYXR0IGzDpGdnYSBpbiBpIGRlbiAgaMOkciBmaWxlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NjkyCittc2dpZCAiIgorIkVhY2ggb3B0aW9uIHNob3VsZCBiZSBwdXQgb24gYSBzZXBhcmF0ZSBsaW5lLiBFbXB0eSBsaW5lcyBhbmQgbGluZXMgc3RhcnRpbmcgIgorIndpdGggXCIjXCIgYXJlIGlnbm9yZWQuIFRoZSBsZWFkaW5nIFwiLS1cIiBzaG91bGQgYmUgc3RyaXBwZWQgYW5kIHNob3J0ICIKKyJvcHRpb25zIGFyZSBub3QgYWxsb3dlZC4gT3B0aW9uYWwgc3BhY2VzIGFyZSBhbGxvd2VkIGFyb3VuZCB0aGUgXCI9XCIgc3ltYm9sICIKKyJhbmQgb3B0aW9uYWwgcXVvdGVzIGFyZSBhbGxvd2VkIGFyb3VuZCB0aGUgdmFsdWUuICBIZXJlJ3MgYW4gZXhhbXBsZSBvZiBzdWNoICIKKyJhIGZpbGU6IgorbXNnc3RyICIiCisiQW5nZSB2YXJqZSBmbGFnZ2EgcMOlIGVuIGVnZW4gcmFkLiBUb21tYSByYWRlciBvY2ggcmFkZXIgc29tIGLDtnJqYXIgbWVkIFwiI1wiICIKKyJpZ25vcmVyYXMuIElubGVkYW5kZSBcIi0tXCIgc2thbGwgdGFzIGJvcnQgb2NoIGtvcnRhIGZsYWdnb3Igw6RyIGludGUgIgorInRpbGzDpXRuYS4gQmxhbmtzdGVnIHRpbGzDpXRzIHJ1bnQgXCI9XCItdGVja25ldCBvY2ggY2l0YXR0ZWNrZW4gdGlsbMOldHMgcnVudCAiCisidsOkcmRldC4gSMOkciDDpHIgZXR0IGV4ZW1wZWwgcMOlIGVuIHPDpWRhbiBmaWw6IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNvdXJjZS4xOjcwMAorIywgbm8td3JhcAorbXNnaWQgIiIKKyIgICMgbGV0IGRwa2ctc291cmNlIGNyZWF0ZSBhIGRlYmlhbi50YXIuYnoyIHdpdGggbWF4aW1hbCBjb21wcmVzc2lvblxuIgorIiAgY29tcHJlc3Npb24gPSBcImJ6aXAyXCJcbiIKKyIgIGNvbXByZXNzaW9uLWxldmVsID0gOVxuIgorIiAgIyB1c2UgZGViaWFuL3BhdGNoZXMvZGViaWFuLWNoYW5nZXMgYXMgYXV0b21hdGljIHBhdGNoXG4iCisiICBzaW5nbGUtZGViaWFuLXBhdGNoXG4iCisiICAjIGlnbm9yZSBjaGFuZ2VzIG9uIGNvbmZpZy57c3ViLGd1ZXNzfVxuIgorIiAgZXh0ZW5kLWRpZmYtaWdub3JlID0gXCIoXnwvKShjb25maWcuc3VifGNvbmZpZy5ndWVzcykkXCJcbiIKK21zZ3N0ciAiIgorIiAgIyBsw6V0IGRwa2ctc291cmNlIHNrYXBhIGVuIGRlYmlhbi50YXIuYnoyIG1lZCBtYXhpbWFsIGtvbXByaW1lcmluZ1xuIgorIiAgY29tcHJlc3Npb24gPSBcImJ6aXAyXCJcbiIKKyIgIGNvbXByZXNzaW9uLWxldmVsID0gOVxuIgorIiAgIyBhbnbDpG5kIGRlYmlhbi9wYXRjaGVzL2RlYmlhbi1jaGFuZ2VzIHNvbSBlbiBhdXRvbWF0aXNrIHBhdGNoXG4iCisiICBzaW5nbGUtZGViaWFuLXBhdGNoXG4iCisiICAjIGlnbm9yZXJhIMOkbmRyaW5nYXIgaSBjb25maWcue3N1YixndWVzc31cbiIKKyIgIGV4dGVuZC1kaWZmLWlnbm9yZSA9IFwiKF58LykoY29uZmlnLnN1Ynxjb25maWcuZ3Vlc3MpJFwiXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NzAzCittc2dpZCAiIgorIk5vdGU6IEI8Zm9ybWF0PiBvcHRpb25zIGFyZSBub3QgYWNjZXB0ZWQgaW4gdGhpcyBmaWxlLCB5b3Ugc2hvdWxkIHVzZSAiCisiQjxkZWJpYW4vc291cmNlL2Zvcm1hdD4gaW5zdGVhZC4iCittc2dzdHIgIiIKKyJPYnNlcnZlcmE6IEI8Zm9ybWF0Pi1mbGFnZ29yIHRpbGzDpXRzIGludGUgaSBkZW4gaMOkciBmaWxlbiwgZHUgYsO2ciBhbnbDpG5kYSAiCisiZmlsZW4gQjxkZWJpYW4vc291cmNlL2Zvcm1hdD4gaXN0w6RsbGV0LiIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6NzAzCisjLCBuby13cmFwCittc2dpZCAiZGViaWFuL3NvdXJjZS9sb2NhbC1vcHRpb25zIgorbXNnc3RyICJkZWJpYW4vc291cmNlL2xvY2FsLW9wdGlvbnMiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NzA4Cittc2dpZCAiIgorIkV4YWN0bHkgbGlrZSBCPGRlYmlhbi9zb3VyY2Uvb3B0aW9ucz4gZXhjZXB0IHRoYXQgdGhlIGZpbGUgaXMgbm90IGluY2x1ZGVkICIKKyJpbiB0aGUgZ2VuZXJhdGVkIHNvdXJjZSBwYWNrYWdlLiBJdCBjYW4gYmUgdXNlZnVsIHRvIHN0b3JlIGEgcHJlZmVyZW5jZSB0aWVkICIKKyJ0byB0aGUgbWFpbnRhaW5lciBvciB0byB0aGUgVkNTIHJlcG9zaXRvcnkgd2hlcmUgdGhlIHNvdXJjZSBwYWNrYWdlIGlzICIKKyJtYWludGFpbmVkLiIKK21zZ3N0ciAiIgorIlByZWNpcyBzb20gQjxkZWJpYW4vc291cmNlL29wdGlvbnM+IGbDtnJ1dG9tIGF0dCBmaWxlbiBpbnRlIGlua2x1ZGVyYXMgaSBkZXQgIgorImdlbmVyZXJhZGUga8OkbGxrb2RzcGFrZXRldC4gRGV0IGthbiB2YXJhIGFudsOkbmRiYXJ0IGbDtnIgYXR0IHNwYXJhIGV0dCB2YWwgIgorInNvbSBnw6RsbGVyIGbDtnIgcGFrZXRhbnN2YXJpZ2EgZWxsZXIgVkNTLXN5c3RlbWV0IGvDpGxsa29kc3Bha2V0ZXQgaGFudGVyYXMgaS4iCisKKyMuIHR5cGU6IFNTCisjOiBkcGtnLXNvdXJjZS4xOjcwOAorIywgbm8td3JhcAorbXNnaWQgImRlYmlhbi9zb3VyY2UvbG9jYWwtcGF0Y2gtaGVhZGVyIgorbXNnc3RyICJkZWJpYW4vc291cmNlL2xvY2FsLXBhdGNoLWhlYWRlciIKKworIy4gdHlwZTogU1MKKyM6IGRwa2ctc291cmNlLjE6NzA5CisjLCBuby13cmFwCittc2dpZCAiZGViaWFuL3NvdXJjZS9wYXRjaC1oZWFkZXIiCittc2dzdHIgImRlYmlhbi9zb3VyY2UvcGF0Y2gtaGVhZGVyIgorCisjIHR5cGU6IFBsYWluIHRleHQKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc291cmNlLjE6NzEzCittc2dpZCAiIgorIkZyZWUgZm9ybSB0ZXh0IHRoYXQgaXMgcHV0IG9uIHRvcCBvZiB0aGUgYXV0b21hdGljIHBhdGNoIGdlbmVyYXRlZCBpbiAiCisiZm9ybWF0cyBcIjIuMFwiIG9yIFwiMy4wIChxdWlsdClcIi4gQjxsb2NhbC1wYXRjaC1oZWFkZXI+IGlzIG5vdCBpbmNsdWRlZCBpbiAiCisidGhlIGdlbmVyYXRlZCBzb3VyY2UgcGFja2FnZSB3aGlsZSBCPHBhdGNoLWhlYWRlcj4gaXMuIgorbXNnc3RyICIiCisiRnJpZm9ybXN0ZXh0IHNvbSBsw6RnZ3MgaW4gcMOlIHRvcHBlbiBhdiBkZW4gYXV0b21hdGlza3QgZ2VuZXJlcmFkZSBwYXRjaGVuIGkgIgorImZvcm1hdGVuIFwiMi4wXCIgZWxsZXIgXCIzLjAgKHF1aWx0KVwiLiBCPGxvY2FsLXBhdGNoLWhlYWRlcj4gdGFzIGludGUgbWVkIGkgIgorImRldCBnZW5lcmVyYWRlIGvDpGxsa29kc3Bha2V0ZXQgbWVkYW4gQjxwYXRjaC1oZWFkZXI+IHRhcyBtZWQuIgorCisjLiB0eXBlOiBTUworIzogZHBrZy1zb3VyY2UuMTo3MTMKKyMsIG5vLXdyYXAKK21zZ2lkICJkZWJpYW4vcGF0Y2hlcy9zZXJpZXMiCittc2dzdHIgImRlYmlhbi9wYXRjaGVzL3NlcmllcyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo3MjIKK21zZ2lkICIiCisiVGhpcyBmaWxlIGxpc3RzIGFsbCBwYXRjaGVzIHRoYXQgaGF2ZSB0byBiZSBhcHBsaWVkIChpbiB0aGUgZ2l2ZW4gb3JkZXIpICBvbiAiCisidG9wIG9mIHRoZSB1cHN0cmVhbSBzb3VyY2UgcGFja2FnZS4gTGVhZGluZyBhbmQgdHJhaWxpbmcgc3BhY2VzIGFyZSAiCisic3RyaXBwZWQuIExpbmVzIHN0YXJ0aW5nIHdpdGggXCIjXCIgYXJlIGNvbW1lbnRzIGFuZCBhcmUgc2tpcHBlZC4gRW1wdHkgIgorImxpbmVzIGFyZSBpZ25vcmVkLiBSZW1haW5pbmcgbGluZXMgc3RhcnQgd2l0aCBhIHBhdGNoIGZpbGVuYW1lIChyZWxhdGl2ZSB0byAiCisidGhlIEI8ZGViaWFuL3BhdGNoZXMvPiBkaXJlY3RvcnkpIHVwIHRvIHRoZSBmaXJzdCBzcGFjZSBjaGFyYWN0ZXIgb3IgdGhlIGVuZCAiCisib2YgbGluZS4gT3B0aW9uYWwgcXVpbHQgb3B0aW9ucyBjYW4gZm9sbG93IHVwIHRvIHRoZSBlbmQgb2YgbGluZSBvciB0aGUgIgorImZpcnN0IFwiI1wiIHByZWNlZGVkIGJ5IG9uZSBvciBtb3JlIHNwYWNlcyAod2hpY2ggbWFya3MgdGhlIHN0YXJ0IG9mIGEgIgorImNvbW1lbnQgdXAgdG8gdGhlIGVuZCBvZiBsaW5lKS4iCittc2dzdHIgIiIKKyJMaXN0YXIgYWxsYSBwYXRjaGFyIHNvbSBtw6VzdGUgdGlsbMOkbXBhcyAoaSBkZW4gZ2l2bmEgb3JkbmluZ2VuKSBvdmFucMOlICIKKyJ1cHBzdHLDtm1za8OkbGxrb2RzcGFrZXRldC4gSW5sZWRhbmRlIG9jaCBhdnNsdXRhbmRlIGJsYW5rc3RlZyB0YXMgYm9ydC4gUmFkZXIgIgorInNvbSBiw7ZyamFyIG1lZCBcIiNcIiDDpHIga29tbWVudGFyZXIgb2NoIGlnbm9yZXJhcy4gVG9tbWEgcmFkZXIgaWdub3JlcmFzLiBEZSAiCisicmFkZXIgc29tIMOkciBrdmFyIGlubGVkcyBtZWQgZmlsbmFtbmV0IHDDpSBlbiBwYXRjaGZpbCAocmVsYXRpdnQgdGlsbCAiCisiQjxkZWJpYW4vcGF0Y2hlcy8+LWthdGFsb2dlbikgdXBwIHRpbGwgZGV0IGbDtnJzdGEgYmxhbmtzdGVnc3RlY2tuZXQgZWxsZXIgIgorInNsdXRldCBww6UgcmFkZW4uIFZhbGZyaWEgZmxhZ2dvciB0aWxsIHF1aWx0IGthbiBmw7ZsamEgZnJhbSB0aWxsIHNsdXRldCBhdiAiCisicmFkZW4gZWxsZXIgZGV0IGbDtnJzdGEgXCIjXCIgc29tIGbDtmxqZXIgcMOlIGV0dCBlbGxlciBmbGVyYSBibGFua3N0ZWcgKHZpbGtldCAiCisiYW5nZXIgYsO2cmphbiBww6UgZW4ga29tbWVudGFyIGZyYW0gdGlsbCBzbHV0ZXQgYXYgcmFkZW4pLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo3MjkKK21zZ2lkICJCPGRwa2ctZGViPigxKSwgQjxkcGtnPigxKSwgQjxkc2VsZWN0PigxKS4iCittc2dzdHIgIkI8ZHBrZy1kZWI+KDEpLCBCPGRwa2c+KDEpLCBCPGRzZWxlY3Q+KDEpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zb3VyY2UuMTo3MzYKK21zZ2lkICJDb3B5cmlnaHQgXFwoY28gMjAwOC0yMDExIFJhcGhhXFxbOmVdbCBIZXJ0em9nIgorbXNnc3RyICJVcHBob3ZzcsOkdHRzc2t5ZGRhdCDCqSAyMDA4LTIwMTEgUmFwaGHDq2wgSGVydHpvZyIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctc3BsaXQuMToyCisjLCBuby13cmFwCittc2dpZCAiZHBrZy1zcGxpdCIKK21zZ3N0ciAiZHBrZy1zcGxpdCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjUKK21zZ2lkICJkcGtnLXNwbGl0IC0gRGViaWFuIHBhY2thZ2UgYXJjaGl2ZSBzcGxpdC9qb2luIHRvb2wiCittc2dzdHIgImRwa2ctc3BsaXQgLSBWZXJrdHlnIGbDtnIgYXR0IGRlbGEvc2zDpSBpaG9wIERlYmlhbnBha2V0IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6OQorbXNnaWQgIkI8ZHBrZy1zcGxpdD4gW0k8b3B0aW9uPi4uLl0gSTxjb21tYW5kPiIKK21zZ3N0ciAiQjxkcGtnLXNwbGl0PiBbSTxmbGFnZ29yPi4uLl0gSTzDpXRnw6RyZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxNQorbXNnaWQgIiIKKyJCPGRwa2ctc3BsaXQ+IHNwbGl0cyBEZWJpYW4gYmluYXJ5IHBhY2thZ2UgZmlsZXMgaW50byBzbWFsbGVyIHBhcnRzIGFuZCAiCisicmVhc3NlbWJsZXMgdGhlbSBhZ2FpbiwgdG8gc3VwcG9ydCB0aGUgc3RvcmFnZSBvZiBsYXJnZSBwYWNrYWdlIGZpbGVzIG9uICIKKyJzbWFsbCBtZWRpYSBzdWNoIGFzIGZsb3BweSBkaXNrcy4iCittc2dzdHIgIiIKKyJCPGRwa2ctc3BsaXQ+IGRlbGFyIHVwcCBiaW7DpHJhIERlYmlhbnBha2V0ZmlsZXIgaSBtaW5kcmUgZGVsYXIgb2NoIHNsw6VyICIKKyJzYW1tYW4gZGVtIGlnZW4sIGbDtnIgYXR0IGfDtnJhIGRldCBtw7ZqbGlndCBhdHQgbGFncmEgc3RvcmEgcGFrZXRmaWxlciBww6Ugc23DpSAiCisibWVkaWEsIHRpbGwgZXhlbXBlbCBkaXNrZXR0ZXIuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTkKK21zZ2lkICIiCisiSXQgY2FuIGJlIG9wZXJhdGVkIG1hbnVhbGx5IHVzaW5nIHRoZSBCPC0tc3BsaXQ+LCBCPC0tam9pbj4gYW5kIEI8LS1pbmZvPiAiCisib3B0aW9ucy4iCittc2dzdHIgIiIKKyJQcm9ncmFtbWV0IGthbiBrw7ZyYXMgbWFudWVsbHQgbWVkIGZsYWdnb3JuYSBCPC0tc3BsaXQ+LCBCPC0tam9pbj4gb2NoIEI8LS0iCisiaW5mbz4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MjcKK21zZ2lkICIiCisiSXQgYWxzbyBoYXMgYW4gYXV0b21hdGljIG1vZGUsIGludm9rZWQgdXNpbmcgdGhlIEI8LS1hdXRvPiBvcHRpb24sIHdoZXJlIGl0ICIKKyJtYWludGFpbnMgYSBxdWV1ZSBvZiBwYXJ0cyBzZWVuIGJ1dCBub3QgeWV0IHJlYXNzZW1ibGVkIGFuZCByZWFzc2VtYmxlcyBhICIKKyJwYWNrYWdlIGZpbGUgd2hlbiBpdCBoYXMgc2VlbiBhbGwgb2YgaXRzIHBhcnRzLiBUaGUgQjwtLWxpc3RxPiBhbmQgQjwtLSIKKyJkaXNjYXJkPiBvcHRpb25zIGFsbG93IHRoZSBtYW5hZ2VtZW50IG9mIHRoZSBxdWV1ZS4iCittc2dzdHIgIiIKKyJEZXQgaGFyIMOkdmVuIGV0dCBhdXRvbWF0aXNrdCBsw6RnZSwgdmlsa2V0IGFrdGl2ZXJhcyBtZWQgZmxhZ2dhbiBCPC0tYXV0bz4uIEkgIgorImRldCBsw6RnZXQgaGFudGVyYXIgZGV0IGVuIGvDtiBhdiBkZWxhciBzb20gc2V0dHMgbWVuIMOkbm51IGludGUgw6V0ZXJzdMOkbGx0cywgIgorIm9jaCDDpXRlcnN0w6RsbGVyIGVuIHBha2V0ZmlsIG7DpHIgZGVuIHNldHQgYWxsYSBkZXNzIGRlbGFyLiBGbGFnZ29ybmEgQjwtLSIKKyJsaXN0cT4gYW5kIEI8LS1kaXNjYXJkPiBnw7ZyIGRldCBtw7ZqbGlndCBhdHQgaGFudGVyYSBrw7ZuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjMwCittc2dpZCAiIgorIkFsbCBzcGxpdHRpbmcsIGpvaW5pbmcgYW5kIHF1ZXVlaW5nIG9wZXJhdGlvbnMgcHJvZHVjZSBpbmZvcm1hdGl2ZSBtZXNzYWdlcyAiCisib24gc3RhbmRhcmQgb3V0cHV0OyB0aGVzZSBtYXkgc2FmZWx5IGJlIGlnbm9yZWQuIgorbXNnc3RyICIiCisiQWxsYSBmdW5rdGlvbmVyIGbDtnIgdXBwZGVsbmluZywgc2FtbWFuc2xhZ25pbmcgb2NoIGvDtmFuZGUgdmlzYXIgaW5mb3JtYXRpdmEgIgorIm1lZGRlbGFuZGVuIHDDpSBzdGFuZGFyZCB1dDsgZGVzc2Ega2FuIGlnbm9yZXJhcy4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNwbGl0LjE6MzIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1zPiwgQjwtLXNwbGl0PiBJPGNvbXBsZXRlLWFyY2hpdmU+IFtJPHByZWZpeD5dIgorbXNnc3RyICJCPC1zPiwgQjwtLXNwbGl0PiBJPGhlbHQtYXJraXY+IFtJPHByZWZpeD5dIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MzUKK21zZ2lkICJTcGxpdHMgYSBzaW5nbGUgRGViaWFuIGJpbmFyeSBwYWNrYWdlIGludG8gc2V2ZXJhbCBwYXJ0cy4iCittc2dzdHIgIkRlbGFyIGV0dCBlbnNhbXQgYmluw6RydCBEZWJpYW5wYWtldCBpIGZsZXJhIGRlbGFyLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjQzCittc2dpZCAiIgorIlRoZSBwYXJ0cyBhcmUgbmFtZWQgSTxwcmVmaXg+QjwuPkk8Tj5CPG9mPkk8TT5CPC5kZWI+IHdoZXJlIEk8Tj4gaXMgdGhlIHBhcnQgIgorIm51bWJlciwgc3RhcnRpbmcgYXQgMSwgYW5kIEk8TT4gaXMgdGhlIHRvdGFsIG51bWJlciBvZiBwYXJ0cyAoYm90aCBpbiAiCisiZGVjaW1hbCkuIgorbXNnc3RyICIiCisiRGVsYXJuYSBuYW1uZ2VzIHNvbSBJPHByZWZpeD5CPC4+STxOPkI8b2Y+STxNPkI8LmRlYj4gZMOkciBJPE4+IMOkciBudW1yZXQgcMOlICIKKyJkZWxlbiwgcsOka25hdCBmcsOlbiAxLCBvY2ggSTxNPiDDpHIgZGV0IHRvdGFsYSBhbnRhbGV0IGRlbGFyIChiw6VkYSBhbmdpdm5hICIKKyJkZWNpbWFsdCkuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6NTEKK21zZ2lkICIiCisiSWYgbm8gSTxwcmVmaXg+IGlzIHN1cHBsaWVkIHRoZW4gdGhlIEk8Y29tcGxldGUtYXJjaGl2ZT4gZmlsZW5hbWUgaXMgdGFrZW4sICIKKyJpbmNsdWRpbmcgZGlyZWN0b3J5LCB3aXRoIGFueSB0cmFpbGluZyBCPC5kZWI+IHJlbW92ZWQuIgorbXNnc3RyICIiCisiT20gaW5nZXQgSTxwcmVmaXg+IGdlcyB0YXMgZmlsbmFtbmV0IGbDtnIgSTxoZWx0LWFya2l2PiwgaW5rbHVzaXZlICIKKyJrYXRhbG9nbmFtbiwgbWVkIGRlbiBhdnNsdXRhbmRlIEI8LmRlYj4gYm9ydHRhZ2VuLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc3BsaXQuMTo1MQorIywgbm8td3JhcAorbXNnaWQgIkI8LWo+LCBCPC0tam9pbj4gSTxwYXJ0Pi4uLiIKK21zZ3N0ciAiQjwtaj4sIEI8LS1qb2luPiBJPGRlbD4uLi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMTo1NQorbXNnaWQgIiIKKyJKb2lucyB0aGUgcGFydHMgb2YgYSBwYWNrYWdlIGZpbGUgdG9nZXRoZXIsIHJlYXNzZW1ibGluZyB0aGUgb3JpZ2luYWwgZmlsZSAiCisiYXMgaXQgd2FzIGJlZm9yZSBpdCB3YXMgc3BsaXQuIgorbXNnc3RyICIiCisiU2zDpXIgc2FtbWFuIGRlIG9saWthIHBha2V0ZGVsYXJuYSwgb2NoIMOldGVyc2thcGFyIGRlbiB1cnNwcnVuZ2xpZ2EgZmlsZW4gc29tICIKKyJkZW4gc8OlZyB1dCBpbm5hbiBkZW4gZGVsYWRlcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMTo1OQorbXNnaWQgIiIKKyJUaGUgcGFydCBmaWxlcyBnaXZlbiBhcyBhcmd1bWVudHMgbXVzdCBiZSBhbGwgdGhlIHBhcnRzIG9mIGV4YWN0bHkgdGhlIHNhbWUgIgorIm9yaWdpbmFsIGJpbmFyeSBmaWxlLiBFYWNoIHBhcnQgbXVzdCBvY2N1ciBleGFjdGx5IG9uY2UgaW4gdGhlIGFyZ3VtZW50ICIKKyJsaXN0LCB0aG91Z2ggdGhlIHBhcnRzIHRvIG5vdCBuZWVkIHRvIGJlIGxpc3RlZCBpbiBvcmRlci4iCittc2dzdHIgIiIKKyJEZWxmaWxlcm5hIHNvbSBnZXMgc29tIGFyZ3VtZW50IG3DpXN0ZSBhbGxhIHZhcmEgZGVsYXIgYXYgZXhha3Qgc2FtbWEgIgorInVyc3BydW5nbGlnYSBiaW7DpHJmaWwuIFZhcmplIG3DpXN0ZSBmaW5uYXMgZXhha3QgZW4gZ8OlbmcgaSBhcmd1bWVudGxpc3RhbiwgIgorIm1lbiBkZSBiZWjDtnZlciBpbnRlIGxpc3RhcyBpIG9yZG5pbmcuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6NjQKK21zZ2lkICIiCisiVGhlIHBhcnRzIG11c3Qgb2YgY291cnNlIGFsbCBoYXZlIGJlZW4gZ2VuZXJhdGVkIHdpdGggdGhlIHNhbWUgcGFydCBzaXplICIKKyJzcGVjaWZpZWQgYXQgc3BsaXQgdGltZSwgd2hpY2ggbWVhbnMgdGhhdCB0aGV5IG11c3QgdXN1YWxseSBoYXZlIGJlZW4gIgorImdlbmVyYXRlZCBieSB0aGUgc2FtZSBpbnZvY2F0aW9uIG9mIEI8ZHBrZy1zcGxpdCAtLXNwbGl0Pi4iCittc2dzdHIgIiIKKyJEZWxhcm5hIG3DpXN0ZSBuYXR1cmxpZ3R2aXMgYWxsYSBoYSBnZW5lcmVyYXRzIG1lZCBzYW1tYSBkZWxzdG9ybGVrIG7DpHIgIgorInVwcGRlbG5pbmdlbiBza2VkZGUsIHZpbGtldCBiZXR5ZGVyIGF0dCBkZSB2YW5saWd0dmlzIG3DpXN0ZSBoYSBnZW5lcmVyYXRzICIKKyJ2aWQgc2FtbWEga8O2cm5pbmcgYXYgQjxkcGtnLXNwbGl0IC0tc3BsaXQ+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjY2Cittc2dpZCAiVGhlIHBhcnRzJyBmaWxlbmFtZXMgYXJlIG5vdCBzaWduaWZpY2FudCBmb3IgdGhlIHJlYXNzZW1ibHkgcHJvY2Vzcy4iCittc2dzdHIgIkRlbGFybmFzIGZpbG5hbW4gw6RyIGludGUgc2lnbmlmaWthbnRhIGbDtnIgc2FtbWFuc2xhZ25pbmdzcHJvY2VkdXJlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMTo2OQorbXNnaWQgIiIKKyJCeSBkZWZhdWx0IHRoZSBvdXRwdXQgZmlsZSBpcyBjYWxsZWQgSTxwYWNrYWdlPkI8Xz5JPHZlcnNpb24+QjxfPkk8YXJjaD5CPC4iCisiZGViPi4iCittc2dzdHIgIiIKKyJGw7ZydmFsdCBuYW1uIHDDpSB1dGRhdGFmaWxlbiDDpHIgSTxwYWtldD5CPF8+STx2ZXJzaW9uPkI8Xz5JPGFyaz5CPC5kZWI+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc3BsaXQuMTo3MAorIywgbm8td3JhcAorbXNnaWQgIkI8LUk+LCBCPC0taW5mbz4gSTxwYXJ0Pi4uLiIKK21zZ3N0ciAiQjwtST4sIEI8LS1pbmZvPiBJPGRlbD4uLi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMTo3NQorbXNnaWQgIiIKKyJQcmludHMgaW5mb3JtYXRpb24sIGluIGEgaHVtYW4tcmVhZGFibGUgZm9ybWF0LCBhYm91dCB0aGUgcGFydCBmaWxlKHMpICAiCisic3BlY2lmaWVkLiBBcmd1bWVudHMgd2hpY2ggYXJlIG5vdCBiaW5hcnkgcGFja2FnZSBwYXJ0cyBwcm9kdWNlIGEgbWVzc2FnZSAiCisic2F5aW5nIHNvIGluc3RlYWQgKGJ1dCBzdGlsbCBvbiBzdGFuZGFyZCBvdXRwdXQpLiIKK21zZ3N0ciAiIgorIlNrcml2ZXIgdXQgaW5mb3JtYXRpb24sIGkgbcOkbm5pc2tvbMOkc2JhciBmb3JtLCBvbSBkZWxmaWxlcm5hIHNvbSBhbmdlcy4gIgorIkFyZ3VtZW50IHNvbSBpbnRlIMOkciBkZWxhciBhdiBiaW7DpHJwYWtldCByZXN1bHRlcmFyIGkgZXR0IG1lZGRlbGFuZGUgc29tICIKKyJ0YWxhciBvbSBkZXR0YSAobWVuIGZvcnRmYXJhbmRlIHDDpSBzdGFuZGFyZCB1dCkuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zcGxpdC4xOjc1CisjLCBuby13cmFwCittc2dpZCAiQjwtYT4sIEI8LS1hdXRvIC1vPiBJPGNvbXBsZXRlLW91dHB1dCBwYXJ0PiIKK21zZ3N0ciAiQjwtYT4sIEI8LS1hdXRvIC1vPkk8IGZ1bGxzdMOkbmRpZy11dGRhdGEgZGVsPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjc4Cittc2dpZCAiQXV0b21hdGljYWxseSBxdWV1ZSBwYXJ0cyBhbmQgcmVhc3NlbWJsZSBhIHBhY2thZ2UgaWYgcG9zc2libGUuIgorbXNnc3RyICJLw7ZhIGF1dG9tYXRpc2t0IGRlbGFybmEgb2NoIMOldGVyc2thcGEgcGFrZXRldCBvbSBtw7ZqbGlndC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMTo4MworbXNnaWQgIiIKKyJUaGUgSTxwYXJ0PiBzcGVjaWZpZWQgaXMgZXhhbWluZWQsIGFuZCBjb21wYXJlZCB3aXRoIG90aGVyIHBhcnRzIG9mIHRoZSBzYW1lICIKKyJwYWNrYWdlIChpZiBhbnkpIGluIHRoZSBxdWV1ZSBvZiBwYWNrYWdlcyBmaWxlIHBhcnRzLiIKK21zZ3N0ciAiIgorIkRlbiBJPGRlbD4gc29tIGFuZ2VzIHVuZGVyc8O2a3Mgb2NoIGrDpG1mw7ZycyBtZWQgYW5kcmEgZGVsYXIgYXYgc2FtbWEgcGFrZXQgIgorIihvbSBzw6VkYW5hIGV4aXN0ZXJhcikgaSBrw7ZuIGF2IGRlbGFyIGF2IHBha2V0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjkwCittc2dpZCAiIgorIklmIGFsbCBwYXJ0cyBvZiB0aGUgcGFja2FnZSBmaWxlIG9mIHdoaWNoIEk8cGFydD4gaXMgYSBwYXJ0IGFyZSBhdmFpbGFibGUgIgorInRoZW4gdGhlIHBhY2thZ2UgaXMgcmVhc3NlbWJsZWQgYW5kIHdyaXR0ZW4gdG8gSTxjb21wbGV0ZS1vdXRwdXQ+ICh3aGljaCAiCisic2hvdWxkIG5vdCB1c3VhbGx5IGFscmVhZHkgZXhpc3QsIHRob3VnaCB0aGlzIGlzIG5vdCBhbiBlcnJvcikuIgorbXNnc3RyICIiCisiT20gYWxsYSBkZWxhciBhdiBldHQgcGFrZXQgYXYgdmlsa2V0IEk8ZGVsPiDDpHIgZW4gZGVsIGF2IMOkciB0aWxsZ8OkbmdsaWdhICIKKyJrb21tZXIgcGFrZXRldCBhdHQgw6V0ZXJza2FwYXMgb2NoIHNrcml2YXMgdGlsbCBJPGZ1bGxzdMOkbmRpZy11dGRhdGE+ICh2aWxrZW4gIgorInZhbmxpZ3R2aXMgaW50ZSByZWRhbiBiw7ZyIGV4aXN0ZXJhLCDDpHZlbiBvbSBkZXQgaW50ZSB2b3JlIGV0dCBmZWwgb20gZGV0ICIKKyJnam9yZGUgZGV0KS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMTo5NgorbXNnaWQgIiIKKyJJZiBub3QgdGhlbiB0aGUgSTxwYXJ0PiBpcyBjb3BpZWQgaW50byB0aGUgcXVldWUgYW5kIEk8Y29tcGxldGUtb3V0cHV0PiBpcyAiCisibm90IGNyZWF0ZWQuIgorbXNnc3RyICIiCisiT20gaW50ZSBrb21tZXIgSTxkZWw+IGF0dCBrb3BpZXJhcyB0aWxsIGvDtm4gb2NoIEk8ZnVsbHN0w6RuZGlnLXV0ZGF0YT4gc2thcGFzICIKKyJpbnRlLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjEwMworbXNnaWQgIiIKKyJJZiBJPHBhcnQ+IGlzIG5vdCBhIHNwbGl0IGJpbmFyeSBwYWNrYWdlIHBhcnQgdGhlbiBCPGRwa2ctc3BsaXQ+IHdpbGwgZXhpdCAiCisid2l0aCBzdGF0dXMgQjwxPjsgaWYgc29tZSBvdGhlciB0cm91YmxlIG9jY3VycyB0aGVuIGl0IHdpbGwgZXhpdCB3aXRoIHN0YXR1cyAiCisiQjwyPi4iCittc2dzdHIgIiIKKyJPbSBJPGRlbD4gaW50ZSDDpHIgZW4gZGVsIGF2IGV0dCBkZWxhdCBiaW7DpHJwYWtldCBrb21tZXIgQjxkcGtnLXNwbGl0PiBhdHQgIgorImF2c2x1dGEgbWVkIHJldHVydsOkcmRlIEI8MT47IG9tIG7DpWdvdCBhbm5hdCBmZWwgdXBwc3TDpXIgYXZzbHV0YXIgZGV0IG1lZCAiCisicmV0dXJ2w6RyZGUgQjwyPi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxMTAKK21zZ2lkICIiCisiVGhlIEI8LS1vdXRwdXQ+IG9yIEI8LW8+IG9wdGlvbiBtdXN0IGJlIHN1cHBsaWVkIHdoZW4gdXNpbmcgQjwtLWF1dG8+LiAgKElmICIKKyJ0aGlzIHdlcmUgbm90IG1hbmRhdG9yeSB0aGUgY2FsbGluZyBwcm9ncmFtIHdvdWxkIG5vdCBrbm93IHdoYXQgb3V0cHV0IGZpbGUgIgorInRvIGV4cGVjdC4pIgorbXNnc3RyICIiCisiRmxhZ2dhbiBCPC0tb3V0cHV0PiBlbGxlciBCPC1vPiBtw6VzdGUgZ2VzIGTDpSBCPC0tYXV0bz5hbnbDpG5kcy4gIChPbSBkZXR0YSAiCisiaW50ZSB2b3JlIGV0dCBrcmF2IHNrdWxsZSBkZXQgYW5yb3BhbmRlIHByb2dyYW1tZXQgaW50ZSB2ZXRhIHZpbGtlbiAiCisidXRkYXRhZmlsIHNvbSBmw7ZydsOkbnRhZGVzLikiCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNwbGl0LjE6MTEwCisjLCBuby13cmFwCittc2dpZCAiQjwtbD4sIEI8LS1saXN0cT4iCittc2dzdHIgIkI8LWw+LCBCPC0tbGlzdHE+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTEzCittc2dpZCAiTGlzdHMgdGhlIGNvbnRlbnRzIG9mIHRoZSBxdWV1ZSBvZiBwYWNrYWdlcyB0byBiZSByZWFzc2VtYmxlZC4iCittc2dzdHIgIkxpc3RhciBpbm5laMOlbGxldCBpIGvDtm4gw7Z2ZXIgcGFrZXQgYXR0IMOldGVyc3TDpGxsYS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxMTcKK21zZ2lkICIiCisiRm9yIGVhY2ggcGFja2FnZSBmaWxlIG9mIHdoaWNoIHBhcnRzIGFyZSBpbiB0aGUgcXVldWUgdGhlIG91dHB1dCBnaXZlcyB0aGUgIgorIm5hbWUgb2YgdGhlIHBhY2thZ2UsIHRoZSBwYXJ0cyBpbiB0aGUgcXVldWUsIGFuZCB0aGUgdG90YWwgbnVtYmVyIG9mIGJ5dGVzICIKKyJzdG9yZWQgaW4gdGhlIHF1ZXVlLiIKK21zZ3N0ciAiIgorIkbDtnIgdmFyamUgcGFrZXRmaWwgZsO2ciB2aWxrZW4gZGVsYXIgZmlubnMgaSBrw7ZuIHZpc2FzIGkgdXRkYXRhIG5hbW5ldCBww6UgIgorInBha2V0ZXQsIGFudGFsIGRlbGFyIGkga8O2biwgb2NoIGRldCB0b3RhbGEgYW50YWxldCBieXRlIHNvbSDDpHIgbGFncmFkZSBpIGvDtm4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zcGxpdC4xOjExNworIywgbm8td3JhcAorbXNnaWQgIkI8LWQ+LCBCPC0tZGlzY2FyZD4gW0k8cGFja2FnZT4uLi5dIgorbXNnc3RyICJCPC1kPiwgQjwtLWRpc2NhcmQ+IFtJPHBha2V0Pi4uLl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxMjEKK21zZ2lkICIiCisiVGhpcyBkaXNjYXJkcyBwYXJ0cyBmcm9tIHRoZSBxdWV1ZSBvZiB0aG9zZSB3YWl0aW5nIGZvciB0aGUgcmVtYWluaW5nIHBhcnRzICIKKyJvZiB0aGVpciBwYWNrYWdlcy4iCittc2dzdHIgIiIKKyJLYXN0YXIgYm9ydCBkZWxhciBmcsOlbiBrw7ZuIMO2dmVyIGRlIHNvbSB2w6RudGFyIHDDpSDDpXRlcnN0w6VlbmRlIGRlbGFyIGF2IHBha2V0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjEyNgorbXNnaWQgIiIKKyJJZiBubyBJPHBhY2thZ2U+IGlzIHNwZWNpZmllZCB0aGVuIHRoZSBxdWV1ZSBpcyBjbGVhcmVkIGNvbXBsZXRlbHk7IGlmIGFueSAiCisiYXJlIHNwZWNpZmllZCB0aGVuIG9ubHkgcGFydHMgb2YgdGhlIHJlbGV2YW50IHBhY2thZ2UocykgYXJlIGRlbGV0ZWQuIgorbXNnc3RyICIiCisiT20gaW5nZXQgSTxwYWtldD4gYW5nZXMgdMO2bXMga8O2biBoZWx0OyBvbSBwYWtldCBhbmdlcyBrYXN0YXMgYmFyYSBkZWxhciBmw7ZyICIKKyJkZSh0KSBwYWtldCBzb20gYW5nZXMuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zcGxpdC4xOjEzNAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1kZXBvdGRpcj5JPCBkaXJlY3Rvcnk+IgorbXNnc3RyICJCPC0tZGVwb3RkaXI+STwga2F0YWxvZz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxMzkKK21zZ2lkICIiCisiU3BlY2lmaWVzIGFuIGFsdGVybmF0aXZlIGRpcmVjdG9yeSBmb3IgdGhlIHF1ZXVlIG9mIHBhcnRzIGF3YWl0aW5nIGF1dG9tYXRpYyAiCisicmVhc3NlbWJseS4gVGhlIGRlZmF1bHQgaXMgQjwvdmFyL2xpYi9kcGtnPi4iCittc2dzdHIgIiIKKyJBbmdlciBlbiBhbHRlcm5hdGl2IGthdGFsb2cgZsO2ciBrw7ZuIGF2IGRlbGFyIHNvbSB2w6RudGFyIHDDpSBhdXRvbWF0aXNrICIKKyJzYW1tYW5zbGFnbmluZy4gRsO2cnZhbGV0IMOkciBCPC92YXIvbGliL2Rwa2c+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc3BsaXQuMToxMzkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1TPiwgQjwtLXBhcnRzaXplPiBJPGtpYmlieXRlcz4iCittc2dzdHIgIkI8LVM+LCBCPC0tcGFydHNpemU+IEk8a2liaWJ5dGU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTQzCittc2dpZCAiIgorIlNwZWNpZmllcyB0aGUgbWF4aW11bSBwYXJ0IHNpemUgd2hlbiBzcGxpdHRpbmcsIGluIGtpYmlieXRlcyAoMTAyNCBieXRlcykuICIKKyJUaGUgZGVmYXVsdCBpcyA0NTAgS2lCLiIKK21zZ3N0ciAiIgorIkFuZ2VyIG1heGltYWwgc3RvcmxlayB2aWQgZGVsbmluZywgaSBraWJpYnl0ZSAoMTAyNCBieXRlKS4gRsO2cnZhbCDDpHIgNDUwIEtpQi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNwbGl0LjE6MTQzCisjLCBuby13cmFwCittc2dpZCAiQjwtbz4sIEI8LS1vdXRwdXQ+IEk8Y29tcGxldGUtb3V0cHV0PiIKK21zZ3N0ciAiQjwtbz4sIEI8LS1vdXRwdXQ+IEk8ZnVsbHN0w6RuZGlnLXV0ZGF0YT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxNDYKK21zZ2lkICJTcGVjaWZpZXMgdGhlIG91dHB1dCBmaWxlIG5hbWUgZm9yIGEgcmVhc3NlbWJseS4iCittc2dzdHIgIkFuZ2VyIGZpbG5hbW5ldCBmw7ZyIHV0ZGF0YSB2aWQgc2FtbWFuc2xhZ25pbmcuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTUxCittc2dpZCAiIgorIlRoaXMgb3ZlcnJpZGVzIHRoZSBkZWZhdWx0IGZvciBhIG1hbnVhbCByZWFzc2VtYmx5IChCPC0tam9pbj4pICBhbmQgaXMgIgorIm1hbmRhdG9yeSBmb3IgYW4gYXV0b21hdGljIHF1ZXVlLW9yLXJlYXNzZW1ibGUgKEI8LS1hdXRvPikuIgorbXNnc3RyICIiCisiQW52w6RuZHMgaXN0w6RsbGV0IGbDtnIgZsO2cnZhbGV0IHZpZCBtYW51ZWxsIHNhbW1hbnNsYWduaW5nIChCPC0tam9pbj4pIG9jaCAiCisia3LDpHZzIGbDtnIgYXV0b21hdGlzayBrw7ZhLWVsbGVyLXNhbW1hbnNsw6UgKEI8LS1hdXRvPikuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zcGxpdC4xOjE1MQorIywgbm8td3JhcAorbXNnaWQgIkI8LVE+LCBCPC0tbnBxdWlldD4iCittc2dzdHIgIkI8LVE+LCBCPC0tbnBxdWlldD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxNjIKK21zZ2lkICIiCisiV2hlbiBkb2luZyBhdXRvbWF0aWMgcXVldWUtb3ItcmVhc3NlbWJseSBCPGRwa2ctc3BsaXQ+IHVzdWFsbHkgcHJpbnRzIGEgIgorIm1lc3NhZ2UgaWYgaXQgaXMgZ2l2ZW4gYSBJPHBhcnQ+IHRoYXQgaXMgbm90IGEgYmluYXJ5IHBhY2thZ2UgcGFydC4gVGhpcyAiCisib3B0aW9uIHN1cHByZXNzZXMgdGhpcyBtZXNzYWdlLCB0byBhbGxvdyBwcm9ncmFtcyBzdWNoIGFzIEI8ZHBrZz4gdG8gY29wZSAiCisid2l0aCBib3RoIHNwbGl0IGFuZCB1bnNwbGl0IHBhY2thZ2VzIHdpdGhvdXQgcHJvZHVjaW5nIHNwdXJpb3VzIG1lc3NhZ2VzLiIKK21zZ3N0ciAiIgorIlZpZCBhdXRvbWF0aXNrIGvDtmEtZWxsZXItc2FtbWFuc2zDpSBza3JpdmVyIEI8ZHBrZy1zcGxpdD4gbm9ybWFsdCBldHQgIgorIm1lZGRlbGFuZGUgb20gZGVuIG1hdGFzIG1lZCBlbiBJPGRlbD4gc29tIGludGUgw6RyIGVuIGJpbsOkciBwYWtldGRlbC4gRGVubmEgIgorImZsYWdnYSB1bmRlcnRyeWNrZXIgbWVkZGVsYW5kZXQsIHZpbGtldCBnw7ZyIGRldCBtw7ZqbGlndCBmw7ZyIHByb2dyYW0gc8Olc29tICIKKyJCPGRwa2c+IGF0dCBoYW50ZXJhIGLDpWRlIGRlbGFkZSBvY2ggb2RlbGFkZSBwYWtldCB1dGFuIGF0dCBwcm9kdWNlcmEgIgorImZlbGFrdGlnYSBtZWRkZWxhbmRlbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNwbGl0LjE6MTYyCisjLCBuby13cmFwCittc2dpZCAiQjwtLW1zZG9zPiIKK21zZ3N0ciAiQjwtLW1zZG9zPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjE2NworbXNnaWQgIiIKKyJGb3JjZXMgdGhlIG91dHB1dCBmaWxlbmFtZXMgZ2VuZXJhdGVkIGJ5IEI8LS1zcGxpdD4gdG8gYmUgbXNkb3MtY29tcGF0aWJsZS4iCittc2dzdHIgIlR2aW5nYXIgdXRkYXRhZmlsbmFtbiBza2FwYWRlIGF2IEI8LS1zcGxpdD4gYXR0IHZhcmEgbXNkb3Mta29tcGF0aWJsYS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxNzMKK21zZ2lkICIiCisiVGhpcyBtYW5nbGVzIHRoZSBwcmVmaXggLSBlaXRoZXIgdGhlIGRlZmF1bHQgZGVyaXZlZCBmcm9tIHRoZSBpbnB1dCBmaWxlbmFtZSAiCisib3IgdGhlIG9uZSBzdXBwbGllZCBhcyBhbiBhcmd1bWVudDogYWxwaGFudW1lcmljcyBhcmUgbG93ZXJjYXNlZCwgcGx1cyBzaWducyAiCisiYXJlIHJlcGxhY2VkIGJ5IEI8eD4ncyBhbmQgYWxsIG90aGVyIGNoYXJhY3RlcnMgYXJlIGRpc2NhcmRlZC4iCittc2dzdHIgIiIKKyJNaXNzaGFuZGxhciBwcmVmaXhldCAtIGFudGluZ2VuIGbDtnJ2YWxldCB0YWdldCBmcsOlbiBpbmRhdGFmaWxuYW1uZXQsIGVsbGVyICIKKyJkZXQgc29tIGFuZ2V0dHMgc29tIGFyZ3VtZW50OiBhbGZhbnVtZXJpc2thIHRlY2tlbiBnw7ZycyB0aWxsIGdlbWVuZXIsICIKKyJwbHVzdGVja2VuIGVyc8OkdHRzIG1lZCBCPHg+IG9jaCBhbGxhIGFuZHJhIHRlY2tlbiBrYXN0YXMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTc4Cittc2dpZCAiIgorIlRoZSByZXN1bHQgaXMgdGhlbiB0cnVuY2F0ZWQgYXMgbXVjaCBhcyBpcyBuZWNlc3NhcnksIGFuZCBmaWxlbmFtZXMgb2YgdGhlICIKKyJmb3JtIEk8cHJlZml4Tj5CPG9mPkk8TT5CPC5kZWI+IGFyZSBnZW5lcmF0ZWQuIgorbXNnc3RyICIiCisiUmVzdWx0YXRldCB0cnVua2VyYXMgc8OlIGzDpW5ndCBzb20gbcO2amxpZ3QsIG9jaCBmaWxuYW1uIHDDpSBmb3JtZW4gIgorIkk8cHJlZml4Tj5CPG9mPkk8TT5CPC5kZWI+IGdlbmVyZXJhcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToxODYKK21zZ2lkICIiCisiVGhlIHJlcXVlc3RlZCBzcGxpdCwgbWVyZ2UsIG9yIG90aGVyIGNvbW1hbmQgc3VjY2VlZGVkLiAgQjwtLWluZm8+IGNvbW1hbmRzICIKKyJjb3VudCBhcyBzdWNjZXNzZnVsIGV2ZW4gaWYgdGhlIGZpbGVzIGFyZSBub3QgYmluYXJ5IHBhY2thZ2UgcGFydHMuIgorbXNnc3RyICIiCisiRGVuIGVmdGVyZnLDpWdhZGUgZGVsbmluZ2VuLCBzYW1tYW5zbGFnbmluZ2VuIGVsbGVyIGFubmFuIMOldGfDpHJkIGx5Y2thZGVzLiAiCisiQjwtLWluZm8+LWtvbW1hbmRvbiBseWNrYXMgw6R2ZW4gb20gaW5kYXRhZmlsZW4gaW50ZSDDpHIgZW4gZGVsIGF2IGV0dCAiCisiYmluw6RycGFrZXQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTkzCittc2dpZCAiIgorIk9ubHkgb2NjdXJzIHdpdGggQjwtLWF1dG8+IGFuZCBpbmRpY2F0ZXMgdGhhdCB0aGUgSTxwYXJ0PiBmaWxlIHdhcyBub3QgYSAiCisiYmluYXJ5IHBhY2thZ2UgcGFydC4iCittc2dzdHIgIiIKKyJVcHBrb21tZXIgZW5kYXN0IG1lZCBCPC0tYXV0bz4gb2NoIGFuZ2VyIGF0dCBJPGRlbD5maWxlbiBpbnRlIHZhciBlbiBkZWwgYXYgIgorImV0dCBiaW7DpHJwYWtldC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNwbGl0LjE6MTkzIHN0YXJ0LXN0b3AtZGFlbW9uLjg6Mjc1IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozNzgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPDI+IgorbXNnc3RyICJCPDI+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXNwbGl0LjE6MTk4Cittc2dpZCAiIgorIlNvbWUga2luZCBvZiB0cm91YmxlIGhhcHBlbmVkLCBzdWNoIGFzIGEgc3lzdGVtIGNhbGwgZmFpbHVyZSwgYSBmaWxlIHRoYXQgIgorImxvb2tlZCBsaWtlIGEgcGFja2FnZSBwYXJ0IGZpbGUgYnV0IHdhcyBjb3JydXB0ZWQsIGEgdXNhZ2UgZXJyb3Igb3Igc29tZSAiCisib3RoZXIgcHJvYmxlbS4iCittc2dzdHIgIiIKKyJOw6Vnb3QgaGFyIGfDpXR0IGZlbCwgdGlsbCBleGVtcGVsIGV0dCBzeXN0ZW1hbnJvcCwgYXR0IGVuIGZpbCBzw6VnIHV0IHNvbSBlbiAiCisicGFrZXRkZWwgbWVuIHZhciB0cmFzaWcsIGV0dCBhbnbDpG5kbmluZ3NmZWwsIGVsbGVyIG7DpWdvdCBhbm5hdCBwcm9ibGVtLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjIwMgorbXNnaWQgIiIKKyJGdWxsIGRldGFpbHMgb2YgdGhlIHBhY2thZ2VzIGluIHRoZSBxdWV1ZSBhcmUgaW1wb3NzaWJsZSB0byBnZXQgd2l0aG91dCAiCisiZGlnZ2luZyBpbnRvIHRoZSBxdWV1ZSBkaXJlY3RvcnkgeW91cnNlbGYuIgorbXNnc3RyICIiCisiS29tcGxldHRhIGRldGFsamVyIGbDtnIgcGFrZXQgaSBrw7ZuIGthbiBpbnRlIGbDpXMgdXRhbiBhdHQgc2rDpGx2IGdyw6R2YSBpIGvDti0iCisia2F0YWxvZ2VuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjIwNQorbXNnaWQgIiIKKyJUaGVyZSBpcyBubyBlYXN5IHdheSB0byB0ZXN0IHdoZXRoZXIgYSBmaWxlIHRoYXQgbWF5IGJlIGEgYmluYXJ5IHBhY2thZ2UgIgorInBhcnQgaXMgb25lLiIKK21zZ3N0ciAiIgorIkRldCBmaW5ucyBpbmdldCBsw6R0dCBzw6R0dGEgYXR0IHRlc3RhIG9tIGVuIGZpbCBzb20ga2FuIHZhcmEgZW4gZGVsIGF2IGV0dCAiCisiYmluw6RycGFrZXQgZmFrdGlza3Qgw6RyIGRldC4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXNwbGl0LjE6MjA3CisjLCBuby13cmFwCittc2dpZCAiSTwvdmFyL2xpYi9kcGtnL3BhcnRzPiIKK21zZ3N0ciAiQjwvdmFyL2xpYi9kcGtnL3BhcnRzPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjIxMQorbXNnaWQgIiIKKyJUaGUgZGVmYXVsdCBxdWV1ZSBkaXJlY3RvcnkgZm9yIHBhcnQgZmlsZXMgYXdhaXRpbmcgYXV0b21hdGljIHJlYXNzZW1ibHkuIgorbXNnc3RyICIiCisiRsO2cnZhbGQga8O2LWthdGFsb2cgZsO2ciBkZWxmaWxlciBzb20gdsOkbnRhciBww6UgYXV0b21hdGlzayBzYW1tYW5zbGFnbmluZy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3BsaXQuMToyMTYKK21zZ2lkICIiCisiVGhlIGZpbGVuYW1lcyB1c2VkIGluIHRoaXMgZGlyZWN0b3J5IGFyZSBpbiBhIGZvcm1hdCBpbnRlcm5hbCB0byBCPGRwa2ctIgorInNwbGl0PiBhbmQgYXJlIHVubGlrZWx5IHRvIGJlIHVzZWZ1bCB0byBvdGhlciBwcm9ncmFtcywgYW5kIGluIGFueSBjYXNlIHRoZSAiCisiZmlsZW5hbWUgZm9ybWF0IHNob3VsZCBub3QgYmUgcmVsaWVkIHVwb24uIgorbXNnc3RyICIiCisiRmlsbmFtbmVuIHNvbSBhbnbDpG5kcyBpIGthdGFsb2dlbiDDpHIgaSBldHQgaW50ZXJudCBmb3JtYXQgZsO2ciBCPGRwa2ctc3BsaXQ+ICIKKyJvY2ggw6RyIGtuYXBwYXN0IGFudsOkbmRiYXJhIGbDtnIgYW5kcmEgcHJvZ3JhbSwgb2NoIGh1ciBzb20gaGVsc3Qga2FuIGludGUgIgorImZvcm1hdGV0IHDDpSBmaWxuYW1uZW4gbGl0YXMgcMOlLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zcGxpdC4xOjIyMgorbXNnaWQgIkI8ZGViPig1KSwgQjxkZWItY29udHJvbD4oNSksIEI8ZHBrZy1kZWI+KDEpLCBCPGRwa2c+KDEpLiIKK21zZ3N0ciAiQjxkZWI+KDUpLCBCPGRlYi1jb250cm9sPig1KSwgQjxkcGtnLWRlYj4oMSksIEI8ZHBrZz4oMSkuIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODoxCisjLCBuby13cmFwCittc2dpZCAiZHBrZy1zdGF0b3ZlcnJpZGUiCittc2dzdHIgImRwa2ctc3RhdG92ZXJyaWRlIgorCisjLiB0eXBlOiBUSAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODoxCisjLCBuby13cmFwCittc2dpZCAiRGViaWFuIHByb2plY3QiCittc2dzdHIgIkRlYmlhbnByb2pla3RldCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo0Cittc2dpZCAiZHBrZy1zdGF0b3ZlcnJpZGUgLSBvdmVycmlkZSBvd25lcnNoaXAgYW5kIG1vZGUgb2YgZmlsZXMiCittc2dzdHIgImRwa2ctc3RhdG92ZXJyaWRlIC0gw7Z2ZXJzdHlyIMOkZ2Fyc2thcCBvY2ggbMOkZ2UgZsO2ciBmaWxlciIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo4Cittc2dpZCAiQjxkcGtnLXN0YXRvdmVycmlkZT4gW0k8b3B0aW9uPi4uLl0gSTxjb21tYW5kPiIKK21zZ3N0ciAiQjxkcGtnLXN0YXRvdmVycmlkZT4gW0k8ZmxhZ2dhPi4uLl0gSTzDpXRnw6RyZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6MTgKK21zZ2lkICIiCisiYEI8c3RhdCBvdmVycmlkZXM+JyBhcmUgYSB3YXkgdG8gdGVsbCBCPGRwa2c+KDEpICB0byB1c2UgYSBkaWZmZXJlbnQgb3duZXIgIgorIm9yIG1vZGUgZm9yIGEgZmlsZSB3aGVuIGEgcGFja2FnZSBpcyBpbnN0YWxsZWQuIChub3RlOiBJIHVzZSB0aGUgd29yZCBgZmlsZScgIgorImhlcmUsIGJ1dCBpbiByZWFsaXR5IHRoaXMgY2FuIGJlIGFueSBmaWxlc3lzdGVtIG9iamVjdCB0aGF0IGRwa2cgaGFuZGxlcywgIgorImluY2x1ZGluZyBkaXJlY3RvcmllcywgZGV2aWNlcywgZXRjLikuIFRoaXMgY2FuIGJlIHVzZWQgdG8gZm9yY2UgcHJvZ3JhbXMgIgorInRoYXQgYXJlIG5vcm1hbGx5IHNldHVpZCB0byBiZSBpbnN0YWxsIHdpdGhvdXQgYSBzZXR1aWQgZmxhZywgb3Igb25seSAiCisiZXhlY3V0YWJsZSBieSBhIGNlcnRhaW4gZ3JvdXAuIgorbXNnc3RyICIiCisiXCJCPHN0YXQtw7Z2ZXJzdHlybmluZ2FyPlwiIMOkciBldHQgc8OkdHQgYXR0IHRhbGEgb20gZsO2ciBCPGRwa2c+KDEpIGF0dCBlbiAiCisiYW5uYW4gw6RnYXJlIGVsbGVyIGV0dCBhbm5hdCBsw6RnZSBza2FsbCBhbnbDpG5kYXMgZsO2ciBlbiBmaWwgw6RyIGV0dCBwYWtldCAiCisiaW5zdGFsbGVyYXMuIChPYnNlcnZlcmEgYXR0IG9yZGV0IFwiZmlsXCIgYW52w6RuZHMgaMOkciwgbWVuIGF0dCBkZXQga2FuIHZhcmEgIgorImFsbGEgc29ydGVycyBmaWxzeXN0ZW1zb2JqZWt0IHNvbSBoYW50ZXJhcyBhdiBkcGtnLCB0aWxsIGV4ZW1wZWwga2F0YWxvZ2VyLCAiCisiZW5oZXRlciBvc3YuKS4gRGV0dGEga2FuIGFudsOkbmRhcyBmw7ZyIGF0dCB0dmluZ2EgcHJvZ3JhbSBzb20gbm9ybWFsdCDDpHIgIgorInNldHVpZCBhdHQgaW5zdGFsbGVyYXMgc29tIGVuIHNldHVpZC1mbGFnZ2EsIGVsbGVyIGJhcmEgZXhla3ZlcmJhciBhdiBlbiAiCisic3BlY2lmaWsgZ3J1cHAuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjIyCittc2dpZCAiIgorIkI8ZHBrZy1zdGF0b3ZlcnJpZGU+IGlzIGEgdXRpbGl0eSB0byBtYW5hZ2UgdGhlIGxpc3Qgb2Ygc3RhdCBvdmVycmlkZXMuIEl0ICIKKyJoYXMgdGhyZWUgYmFzaWMgZnVuY3Rpb25zOiBhZGRpbmcsIHJlbW92aW5nIGFuZCBsaXN0aW5nIG92ZXJyaWRlcy4iCittc2dzdHIgIiIKKyJCPGRwa2ctc3RhdG92ZXJyaWRlPiDDpHIgZXR0IHZlcmt0eWcgZsO2ciBhdHQgaGFudGVyYSBsaXN0YW4gw7Z2ZXIgc3RhdC0iCisiw7Z2ZXJzdHlybmluZ2FyLiBEZXQgaGFyIHRyZSBncnVuZGzDpGdnYW5kZSBmdW5rdGlvbmVyOiBsw6RnZ2EgdGlsbCwgdGEgYm9ydCAiCisib2NoIHZpc2Egw7Z2ZXJzdHlybmluZ2FyLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6MjQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tYWRkPkk8IHVzZXIgZ3JvdXAgbW9kZSBmaWxlPiIKK21zZ3N0ciAiQjwtLWFkZD5JPCBhbnbDpG5kYXJlIGdydXBwIGzDpGdlIGZpbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6MzIKK21zZ2lkICIiCisiQWRkIGFuIG92ZXJyaWRlIGZvciBJPGZpbGU+LiBJPGZpbGU+IGRvZXMgbm90IG5lZWQgdG8gZXhpc3Qgd2hlbiB0aGlzICIKKyJjb21tYW5kIGlzIHVzZWQ7IHRoZSBvdmVycmlkZSB3aWxsIGJlIHN0b3JlZCBhbmQgdXNlZCBsYXRlci4gIFVzZXJzIGFuZCAiCisiZ3JvdXBzIGNhbiBiZSBzcGVjaWZpZWQgYnkgdGhlaXIgbmFtZSAoZm9yIGV4YW1wbGUgQjxyb290PiBvciBCPG5vYm9keT4pLCBvciAiCisiYnkgdGhlaXIgbnVtYmVyIGJ5IHByZXBlbmRpbmcgdGhlIG51bWJlciB3aXRoIGEgYEI8Iz4nIChmb3IgZXhhbXBsZSBCPCMwPiBvciAiCisiQjwjNjU1MzQ+KS4gVGhlIEk8bW9kZT4gbmVlZHMgdG8gYmUgc3BlY2lmaWVkIGluIG9jdGFsLiIKK21zZ3N0ciAiIgorIkzDpGdnIHRpbGwgZW4gw7Z2ZXJzdHlybmluZyBmw7ZyIEk8ZmlsPi4gSTxGaWw+IGJlaMO2dmVyIGludGUgZXhpc3RlcmEgbsOkciAiCisia29tbWFuZG90IGvDtnJzOyDDtnZlcnN0eXJuaW5nZW4ga29tbWVyIGxhZ3JhcyBvY2ggYW52w6RuZGFzIHNlbmFyZS4gQW52w6RuZGFyZSAiCisib2NoIGdydXBwZXIga2FuIGFuZ2VzIG1lZCBuYW1uICh0aWxsIGV4ZW1wZWwgQjxyb290PiBlbGxlciBCPG5vYm9keT4pLCBlbGxlciAiCisibWVkIGRlcmFzIG51bW1lciBtZWQgZXR0IFwiQjwjPlwiICh0aWxsIGV4ZW1wZWwgQjwjMD4gZWxsZXIgQjwjNjU1MzQ+KS4gIgorIkk8TMOkZ2U+IG3DpXN0ZSBhbmdlcyBva3RhbHQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjM1Cittc2dpZCAiIgorIklmIC0tdXBkYXRlIGlzIHNwZWNpZmllZCBhbmQgSTxmaWxlPiBleGlzdHMsIGl0IGlzIGltbWVkaWF0ZWx5IHNldCB0byB0aGUgIgorIm5ldyBvd25lciBhbmQgbW9kZS4iCittc2dzdHIgIiIKKyJPbSAtLXVwZGF0ZSBhbmdlcyBvY2ggSTxmaWw+IGV4aXN0ZXJhciBrb21tZXIgZGVuIG9tZWRlbGJhcnQgYXR0IHPDpHR0YXMgdGlsbCAiCisiZGVuIG55YSBhbnbDpG5kYXJlbiBvY2ggbMOkZ2V0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODozOQorbXNnaWQgIiIKKyJSZW1vdmUgYW4gb3ZlcnJpZGUgZm9yIEk8ZmlsZT4sIHRoZSBzdGF0dXMgb2YgSTxmaWxlPiBpcyBsZWZ0IHVuY2hhbmdlZCBieSAiCisidGhpcyBjb21tYW5kLiIKK21zZ3N0ciAiIgorIlRhIGJvcnQgZW4gw7Z2ZXJzdHlybmluZyBmw7ZyIEk8ZmlsPiwgc3RhdHVzIGbDtnIgSTxmaWw+IMOkbmRyYXMgaW50ZSBhdiBkZXR0YSAiCisia29tbWFuZG8uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODozOQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1saXN0PiBbSTxnbG9iLXBhdHRlcm4+XSIKK21zZ3N0ciAiQjwtLWxpc3Q+IFtJPGZpbG5hbW5zc8O2a23Dtm5zdGVyPl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6NDQKK21zZ2lkICIiCisiTGlzdCBhbGwgb3ZlcnJpZGVzLiBJZiBhIGdsb2IgcGF0dGVybiBpcyBzcGVjaWZpZWQgcmVzdHJpY3QgdGhlIG91dHB1dCB0byAiCisib3ZlcnJpZGVzIHdoaWNoIG1hdGNoIHRoZSBnbG9iLiBJZiB0aGVyZSBhcmUgbm8gb3ZlcnJpZGVzIG9yIG5vbmUgbWF0Y2ggdGhlICIKKyJnbG9iIEI8ZHBrZy1zdGF0b3ZlcnJpZGU+IHdpbGwgZXhpdCB3aXRoIGFuIGV4aXRjb2RlIG9mIDEuIgorbXNnc3RyICIiCisiVmlzYSBhbGxhIMO2dmVyc3R5cm5pbmdhci4gT20gZXR0IHPDtmttw7Zuc3RlciBhbmdlcyBrb21tZXIgdXRkYXRhIGF0dCAiCisiYmVncsOkbnNhcyB0aWxsIMO2dmVyc3R5cm5pbmdhciBzb20gbW90c3ZhcmFyIG3Dtm5zdHJldC4gT20gZGV0IGludGUgZmlubnMgIgorIm7DpWdyYSDDtnZlcnN0eXJuaW5nYXIsIGVsbGVyIGluZ2EgbW90c3ZhcmFyIG3Dtm5zdHJldCwga29tbWVyIEI8ZHBrZy0iCisic3RhdG92ZXJyaWRlPiBhdnNsdXRhcyBtZWQgc3RhdHVza29kIDEuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjU2Cittc2dpZCAiIgorIkNoYW5nZSB0aGUgSTxkaXJlY3Rvcnk+IG9mIHRoZSBkcGtnIGRhdGFiYXNlIHdoZXJlIHRoZSBzdGF0b3ZlcnJpZGUgZmlsZSBpcyAiCisiYWxzbyBzdG9yZWQuIERlZmF1bHRzIHRvIEk8L3Zhci9saWIvZHBrZz4uIgorbXNnc3RyICIiCisiw4RuZHJhIEk8a2F0YWxvZz4gZsO2ciBkcGtnLWRhdGFiYXNlbiBkw6RyIHN0YXRvdmVycmlkZS1maWxlbiBvY2tzw6UgbGFncmFzLiAiCisiRsO2cnZhbCDDpHIgSTwvdmFyL2xpYi9kcGtnPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjU2IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMzYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tZm9yY2U+IgorbXNnc3RyICJCPC0tZm9yY2U+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjYwCittc2dpZCAiIgorIkZvcmNlIGFuIGFjdGlvbiwgZXZlbiBpZiBhIHNhbml0eSBjaGVjayB3b3VsZCBvdGhlcndpc2UgcHJvaGliaXQgaXQuICBUaGlzICIKKyJpcyBuZWNlc3NhcnkgdG8gb3ZlcnJpZGUgYW4gZXhpc3Rpbmcgb3ZlcnJpZGUuIgorbXNnc3RyICIiCisiVHZpbmdhIGV0dCBrb21tYW5kbywgw6R2ZW4gb20gZW4gc8Oka2VyaGV0c2tvbnRyb2xsIGFubmFycyBza3VsbGUgZsO2cmhpbmRyYSAiCisiZGV0LiBEZXR0YSBiZWjDtnZzIGbDtnIgYXR0IMO2dmVyc3R5cmEgZW4gYmVmaW50bGlnIMO2dmVyc3R5cm5pbmcuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo2MAorIywgbm8td3JhcAorbXNnaWQgIkI8LS11cGRhdGU+IgorbXNnc3RyICJCPC0tdXBkYXRlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy1zdGF0b3ZlcnJpZGUuODo2NAorbXNnaWQgIiIKKyJJbW1lZGlhdGVseSB0cnkgdG8gY2hhbmdlIHRoZSBmaWxlIHRvIHRoZSBuZXcgb3duZXIgYW5kIG1vZGUgaWYgaXQgZXhpc3RzLiIKK21zZ3N0ciAiIgorIkbDtnJzw7ZrIGF0dCBvbWVkZWxiYXJ0IMOkbmRyYSBmaWxlbsK3b23Ct2RlbsK3ZmlubnMgdGlsbCBkZW4gbnlhIMOkZ2FyZW4gb2NoIGzDpGdldC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6NjcKK21zZ2lkICJCZSBsZXNzIHZlcmJvc2UgYWJvdXQgd2hhdCB3ZSBkby4iCittc2dzdHIgIlZhciBtaW5kcmUgcHJhdHNvbSBvbSB2YWQgc29tIGfDtnJzLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6NzUKKyMsIG5vLXdyYXAKK21zZ2lkICJJPC92YXIvbGliL2Rwa2cvc3RhdG92ZXJyaWRlPiIKK21zZ3N0ciAiSTwvdmFyL2xpYi9kcGtnL3N0YXRvdmVycmlkZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctc3RhdG92ZXJyaWRlLjg6ODAKK21zZ2lkICIiCisiRmlsZSB3aGljaCBjb250YWlucyB0aGUgY3VycmVudCBsaXN0IG9mIHN0YXQgb3ZlcnJpZGVzIG9mIHRoZSBzeXN0ZW0uIEl0IGlzICIKKyJsb2NhdGVkIGluIHRoZSBkcGtnIGFkbWluaXN0cmF0aW9uIGRpcmVjdG9yeSwgYWxvbmcgd2l0aCBvdGhlciBmaWxlcyAiCisiaW1wb3J0YW50IHRvIGRwa2csIHN1Y2ggYXMgYHN0YXR1cycgb3IgYGF2YWlsYWJsZScuIgorbXNnc3RyICIiCisiRmlsIHNvbSBpbm5laMOlbGxlciBkZW4gYWt0dWVsbGEgbGlzdGFuIMO2dmVyIHN0YXTDtnZlcnN0eXJuaW5nYXIgcMOlIHN5c3RlbWV0LiAiCisiRGVuIGZpbm5zIGkgZHBrZzpzIGFkbWluaXN0cmF0aW9uc2thdGFsb2csIHRpbGxzYW1tYW5zIG1lZCBhbmRyYSBmaWxlciBzb20gIgorIsOkciB2aWt0aWdhIGbDtnIgZHBrZywgc29tIFwic3RhdHVzXCIgb2NoIFwiYXZhaWxhYmxlXCIuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXN0YXRvdmVycmlkZS44OjgzCittc2dpZCAiIgorIk5vdGU6IEI8ZHBrZy1zdGF0b3ZlcnJpZGU+IHByZXNlcnZlcyB0aGUgb2xkIGNvcHkgb2YgdGhpcyBmaWxlLCB3aXRoICIKKyJleHRlbnNpb24gXCItb2xkXCIsIGJlZm9yZSByZXBsYWNpbmcgaXQgd2l0aCB0aGUgbmV3IG9uZS4iCittc2dzdHIgIiIKKyJPYnNlcnZlcmE6IEI8ZHBrZy1zdGF0b3ZlcnJpZGU+IGJldmFyYXIgZGVuIGdhbWxhIHVwcGxhZ2FuIGF2IGZpbGVuLCBtZWQgIgorInRpbGzDpGdnZXQgXCItb2xkXCIgaW5uYW4gZGVuIGVyc8OkdHRzIG1lZCBkZW4gbnlhLiIKKworIy4gdHlwZTogVEgKKyM6IGRwa2ctdHJpZ2dlci4xOjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLXRyaWdnZXIiCittc2dzdHIgImRwa2ctdHJpZ2dlciIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy10cmlnZ2VyLjE6NAorbXNnaWQgImRwa2ctdHJpZ2dlciAtIGEgcGFja2FnZSB0cmlnZ2VyIHV0aWxpdHkiCittc2dzdHIgImRwa2ctdHJpZ2dlciAtIGV0dCB2ZXJrdHlnIGbDtnIgcGFrZXR1dGzDtnNhcmUiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctdHJpZ2dlci4xOjgKK21zZ2lkICJCPGRwa2ctdHJpZ2dlcj4gW0k8b3B0aW9uPi4uLl0gSTx0cmlnZ2VyLW5hbWU+IgorbXNnc3RyICJCPGRwa2ctdHJpZ2dlcj4gW0k8ZmxhZ2dvcj4uLi5dIEk8dXRsw7ZzYXJuYW1uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy10cmlnZ2VyLjE6MTEKK21zZ2lkICJCPGRwa2ctdHJpZ2dlcj4gW0k8b3B0aW9uPi4uLl0gSTxjb21tYW5kPiIKK21zZ3N0ciAiQjxkcGtnLXRyaWdnZXI+IFtJPGZsYWdnb3I+Li4uXSBJPGtvbW1hbmRvPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy10cmlnZ2VyLjE6MTUKK21zZ2lkICIiCisiQjxkcGtnLXRyaWdnZXI+IGlzIGEgdG9vbCB0byBleHBsaWNpdGx5IGFjdGl2YXRlIHRyaWdnZXJzIGFuZCBjaGVjayBmb3IgaXRzICIKKyJzdXBwb3J0IG9uIHRoZSBydW5uaW5nIEI8ZHBrZz4uIgorbXNnc3RyICIiCisiQjxkcGtnLXRyaWdnZXI+IMOkciBldHQgdmVya3R5ZyBmw7ZyIGF0dCBleHBsaWNpdCBha3RpdmVyYSB1dGzDtnNhcmUgb2NoIGbDtnIgIgorImF0dCB0ZXN0YSBvbSBkZSBzdMO2ZHMgYXYgZGVuIGvDtnJhbmRlIEI8ZHBrZz4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXRyaWdnZXIuMToyMQorbXNnaWQgIiIKKyJUaGlzIGNhbiBiZSB1c2VkIGJ5IG1haW50YWluZXIgc2NyaXB0cyBpbiBjb21wbGV4IGFuZCBjb25kaXRpb25hbCBzaXR1YXRpb25zICIKKyJ3aGVyZSB0aGUgZmlsZSB0cmlnZ2Vycywgb3IgdGhlIGRlY2xhcmF0aXZlIEI8YWN0aXZhdGU+IHRyaWdnZXJzIGNvbnRyb2wgIgorImZpbGUgZGlyZWN0aXZlLCBhcmUgaW5zdWZmaWNpZW50bHkgcmljaC4gSXQgY2FuIGFsc28gYmUgdXNlZCBmb3IgdGVzdGluZyBhbmQgIgorImJ5IHN5c3RlbSBhZG1pbmlzdHJhdG9ycyAoYnV0IG5vdGUgdGhhdCB0aGUgdHJpZ2dlcnMgd29uJ3QgYWN0dWFsbHkgYmUgcnVuICIKKyJieSBCPGRwa2ctdHJpZ2dlcj4pLiIKK21zZ3N0ciAiIgorIkRldCBrYW4gYW52w6RuZGFzIGF2IHV0dmVja2xhcnNrcmlwdCBpIGtvbXBsZXhhIG9jaCB2aWxsa29ybGlnYSBzaXR1YXRpb25lciAiCisiZMOkciBmaWx1dGzDtnNhcmUsIGVsbGVyIGRldCBkZWtsYXJhdGl2YSBCPGFjdGl2YXRlPi1kaXJla3RpdmV0IGkgIgorInV0bMO2c2Fyc3R5cmZpbGVuIGludGUga2FuIHV0dHJ5Y2thIGRldCBzb20gYmVow7Z2cy4gRGV0IGthbiDDpHZlbiBhbnbDpG5kYXMgZsO2ciAiCisidGVzdCBvY2ggYXYgc3lzdGVtYWRtaW5pc3RyYXTDtnJlciAobWVuIG9ic2VydmVyYSBhdHQgdXRsw7ZzYXJuYSBpbnRlIGtvbW1lciAiCisiYXR0IGZha3Rpc2t0IGvDtnJhcyBhdiBCPGRwa2ctdHJpZ2dlcj4pLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy10cmlnZ2VyLjE6MjMKK21zZ2lkICJVbnJlY29nbmlzZWQgdHJpZ2dlciBuYW1lIHN5bnRheGVzIGFyZSBhbiBlcnJvciBmb3IgQjxkcGtnLXRyaWdnZXI+LiIKK21zZ3N0ciAiT2vDpG5kYSB1dGzDtnNhcm5hbW5zeW50YXhlciDDpHIgZXR0IGZlbCBmw7ZyIEI8ZHBrZy10cmlnZ2VyPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXRyaWdnZXIuMToyNQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1jaGVjay1zdXBwb3J0ZWQ+IgorbXNnc3RyICJCPC0tY2hlY2stc3VwcG9ydGVkPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy10cmlnZ2VyLjE6MzEKK21zZ2lkICIiCisiQ2hlY2sgaWYgdGhlIHJ1bm5pbmcgQjxkcGtnPiBzdXBwb3J0cyB0cmlnZ2VycyAodXN1YWxseSBjYWxsZWQgZnJvbSBhICIKKyJwb3N0aW5zdCkuIFdpbGwgZXhpdCBCPDA+IGlmIGEgdHJpZ2dlcnMtY2FwYWJsZSBCPGRwa2c+IGhhcyBydW4sIG9yIEI8MT4gIgorIndpdGggYW4gZXJyb3IgbWVzc2FnZSB0byBzdGRlcnIgaWYgbm90LiBOb3JtYWxseSwgaG93ZXZlciwgaXQgaXMgYmV0dGVyIGp1c3QgIgorInRvIGFjdGl2YXRlIHRoZSBkZXNpcmVkIHRyaWdnZXIgd2l0aCBCPGRwa2ctdHJpZ2dlcj4uIgorbXNnc3RyICIiCisiU2Ugb20gZGVuIEI8ZHBrZz4gc29tIGvDtnJzIHN0w7ZkZXIgdXRsw7ZzYXJlIChhbnJvcGFzIHZhbmxpZ3R2aXMgZnLDpW4gZXR0ICIKKyJwb3N0aW5zdC1za3JpcHQpLiBBdnNsdXRhciBtZWQgQjwwPiBvbSBlbiBCPGRwa2c+IG1lZCB1dGzDtnNhcnN0w7ZkIGhhciBrw7ZydCwgIgorImVsbGVyIEI8MT4gbWVkIGV0dCBmZWxtZWRkZWxhbmRlIHDDpSBzdGFuZGFyZCBmZWwgb20gaW50ZS4gRGV0IMOkciBkb2NrICIKKyJub3JtYWx0IHNldHQgYsOkdHRyZSBhdHQgYmFyYSBha3RpdmVyYSBkZW4gw7Zuc2thZGUgdXRsw7ZzYXJlbiBtZWQgQjxkcGtnLSIKKyJ0cmlnZ2VyPi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXRyaWdnZXIuMTo0MworIywgbm8td3JhcAorbXNnaWQgIkI8LS1ieS1wYWNrYWdlPT5JPHBhY2thZ2U+IgorbXNnc3RyICJCPC0tYnktcGFja2FnZT0+STxwYWtldD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctdHJpZ2dlci4xOjQ5Cittc2dpZCAiIgorIk92ZXJyaWRlIHRyaWdnZXIgYXdhaXRlciAobm9ybWFsbHkgc2V0IGJ5IEI8ZHBrZz4gdGhyb3VnaCB0aGUgIgorIkI8RFBLR19NQUlOVFNDUklQVF9QQUNLQUdFPiBlbnZpcm9ubWVudCB2YXJpYWJsZSBvZiB0aGUgbWFpbnRhaW5lciBzY3JpcHRzLCAiCisibmFtaW5nIHRoZSBwYWNrYWdlIHRvIHdoaWNoIHRoZSBzY3JpcHQgYmVsb25ncywgYW5kIHRoaXMgd2lsbCBiZSB1c2VkIGJ5ICIKKyJkZWZhdWx0KS4iCittc2dzdHIgIiIKKyLDlnZlcnN0eXIgZGVuIHNvbSB2w6RudGFyIHDDpSBlbiB1dGzDtnNhcmUgKHPDpHR0cyB2YW5saWdlbiBhdiBCPGRwa2c+IGdlbm9tICIKKyJtaWxqw7Z2YXJpYWJlbG4gQjxEUEtHX01BSU5UU0NSSVBUX1BBQ0tBR0U+IGkgdXR2ZWNrbGFyc2tyaXB0LCBmw7ZyIGF0dCBuYW1uZ2UgIgorImRldCBwYWtldCBzb20gc2tyaXB0ZXQgdGlsbGjDtnIsIG9jaCBkZXR0YSBhbnbDpG5kcyBzb20gc3RhbmRhcmQpLiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctdHJpZ2dlci4xOjQ5CisjLCBuby13cmFwCittc2dpZCAiQjwtLW5vLWF3YWl0PiIKK21zZ3N0ciAiQjwtLW5vLWF3YWl0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy10cmlnZ2VyLjE6NTYKK21zZ2lkICIiCisiVGhpcyBvcHRpb24gYXJyYW5nZXMgdGhhdCB0aGUgY2FsbGluZyBwYWNrYWdlIFQgKGlmIGFueSkgbmVlZCBub3QgYXdhaXQgdGhlICIKKyJwcm9jZXNzaW5nIG9mIHRoaXMgdHJpZ2dlcjsgdGhlIGludGVyZXN0ZWQgcGFja2FnZShzKSBJLCB3aWxsIG5vdCBiZSBhZGRlZCAiCisidG8gVCdzIHRyaWdnZXIgcHJvY2Vzc2luZyBhd2FpdGVkIGxpc3QgYW5kIFQncyBzdGF0dXMgaXMgdW5jaGFuZ2VkLiAgVCBtYXkgIgorImJlIGNvbnNpZGVyZWQgaW5zdGFsbGVkIGV2ZW4gdGhvdWdoIEkgbWF5IG5vdCB5ZXQgaGF2ZSBwcm9jZXNzZWQgdGhlIHRyaWdnZXIuIgorbXNnc3RyICIiCisiRGVubmEgZmxhZ2dhIGfDtnIgc8OlIGF0dCBkZXQgYW5yb3BhZGUgcGFrZXRldCBUIChvbSBkZXQgZmlubnMpIGludGUgYmVow7Z2ZXIgIgorInbDpG50YSBww6UgaGFudGVyaW5nIGF2IHV0bMO2c2FyZW47IGRldC9kZSBpbnRyZXNzZXJhZGUgcGFrZXRldC9wYWtldGVuIEkgIgorImtvbW1lciBpbnRlIGzDpGdnYXMgdGlsbCBUOnMgdsOkbnRlbGlzdGEgZsO2ciBoYW50ZXJpbmcgYXYgdXRsw7ZzYXJlIG9jaCBUOnMgIgorInN0YXR1cyDDpG5kcmFzIGludGUuIFQga2FuIGFuc2VzIHZhcmEgaW5zdGFsbGVyYXQgw6R2ZW4gb20gSSBrYW5za2Ugw6RubnUgaW50ZSAiCisiaGFyIGhhbnRlcmF0IHV0bMO2c2FyZW4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy10cmlnZ2VyLjE6NTYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tbm8tYWN0PiIKK21zZ3N0ciAiQjwtLW5vLWFjdD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctdHJpZ2dlci4xOjU5Cittc2dpZCAiSnVzdCB0ZXN0LCBkbyBub3QgYWN0dWFsbHkgY2hhbmdlIGFueXRoaW5nLiIKK21zZ3N0ciAiQmFyYSB0ZXN0YSwgw6RuZHJhIGludGUgcMOlIG7DpWdvbnRpbmcuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXRyaWdnZXIuMTo2OQorbXNnaWQgIiIKKyJCPGRwa2c+KDEpLCBCPGRlYi10cmlnZ2Vycz4oNSksIEI8L3Vzci9zaGFyZS9kb2MvZHBrZy1kZXYvdHJpZ2dlcnMudHh0Lmd6Pi4iCittc2dzdHIgIiIKKyJCPGRwa2c+KDEpLCBCPGRlYi10cmlnZ2Vycz4oNSksIEI8L3Vzci9zaGFyZS9kb2MvZHBrZy1kZXYvdHJpZ2dlcnMudHh0Lmd6Pi4iCisKKyMuIHR5cGU6IFRICisjOiBkcGtnLXZlbmRvci4xOjEKKyMsIG5vLXdyYXAKK21zZ2lkICJkcGtnLXZlbmRvciIKK21zZ3N0ciAiZHBrZy12ZW5kb3IiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctdmVuZG9yLjE6NAorbXNnaWQgImRwa2ctdmVuZG9yIC0gcXVlcmllcyBpbmZvcm1hdGlvbiBhYm91dCBkaXN0cmlidXRpb24gdmVuZG9ycyIKK21zZ3N0ciAiZHBrZy12ZW5kb3IgLSBmcsOlZ2FyIGVmdGVyIGluZm9ybWF0aW9uIG9tIGRpc3RyaWJ1dGlvbnPDpXRlcmbDtnJzw6RsamFyZSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy12ZW5kb3IuMTo4Cittc2dpZCAiQjxkcGtnLXZlbmRvcj4gW0k8b3B0aW9uPi4uLl0gSTxjb21tYW5kPiIKK21zZ3N0ciAiQjxkcGtnLXZlbmRvcj4gW0k8ZmxhZ2dvcj4uLi5dIEk8w6V0Z8OkcmQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXZlbmRvci4xOjEzCittc2dpZCAiIgorIkI8ZHBrZy12ZW5kb3I+IGlzIGEgdG9vbCB0byBxdWVyeSBpbmZvcm1hdGlvbiBhYm91dCB2ZW5kb3JzIGxpc3RlZCBpbiBCPC9ldGMvIgorImRwa2cvb3JpZ2lucz4uIEI8L2V0Yy9kcGtnL29yaWdpbnMvZGVmYXVsdD4gY29udGFpbnMgaW5mb3JtYXRpb24gYWJvdXQgdGhlICIKKyJjdXJyZW50IHZlbmRvci4iCittc2dzdHIgIiIKKyJCPGRwa2ctdmVuZG9yPiDDpHIgZXR0IHZlcmt0eWcgZsO2ciBhdHQgZnLDpWdhIGVmdGVyIMOldGVyZsO2cnPDpGxqYXJlIHNvbSBmaW5ucyBpICIKKyJJPC9ldGMvZHBrZy9vcmlnaW5zPi4gQjwvZXRjL2Rwa2cvb3JpZ2lucy9kZWZhdWx0PiBpbm5laMOlbGxlciBpbmZvcm1hdGlvbiBvbSAiCisiZGVuIGFrdHVlbGxhIMOldGVyZsO2cnPDpGxqYXJlbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkcGtnLXZlbmRvci4xOjE1CisjLCBuby13cmFwCittc2dpZCAiQjwtLWlzPkk8IHZlbmRvcj4iCittc2dzdHIgIkI8LS1pcz5JPCDDpXRlcmbDtnJzw6RsamFyZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctdmVuZG9yLjE6MTkKK21zZ2lkICIiCisiRXhpdHMgd2l0aCBCPDA+IGlmIHRoZSBjdXJyZW50IHZlbmRvciBpcyBJPHZlbmRvcj4uIE90aGVyd2lzZSBleGl0cyB3aXRoIG5vbi0iCisiemVyby4iCittc2dzdHIgIiIKKyJBdnNsdXRhciBtZWQgQjwwPiBvbSBkZW4gYWt0dWVsbGEgw6V0ZXJmw7Zyc8OkbGphcmVuIMOkciBJPMOldGVyZsO2cnPDpGxqYXJlPi4gSSAiCisiYW5uYXQgZmFsbCBhdnNsdXRhcyBwcm9ncmFtbWV0IG1lZCBpY2tlLW5vbGwuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy12ZW5kb3IuMToxOQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1kZXJpdmVzLWZyb20+STwgdmVuZG9yPiIKK21zZ3N0ciAiQjwtLWRlcml2ZXMtZnJvbT5JPCDDpXRlcmbDtnJzw6RsamFyZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctdmVuZG9yLjE6MjQKK21zZ2lkICIiCisiRXhpdHMgd2l0aCBCPDA+IGlmIHRoZSBjdXJyZW50IHZlbmRvciBkaXN0cmlidXRpb24gaXMgYSBkZXJpdmF0aXZlIG9mICIKKyJJPHZlbmRvcj4sIG90aGVyd2lzZSBleGl0cyB3aXRoIG5vbi16ZXJvLiBJdCB1c2VzIHRoZSBcIlBhcmVudFwiIGZpZWxkIHRvICIKKyJicm93c2UgYWxsIGFuY2VzdG9ycyBvZiB0aGUgY3VycmVudCB2ZW5kb3IuIgorbXNnc3RyICIiCisiQXZzbHV0YXIgbWVkIEI8MD4gb20gZGVuIGFrdHVlbGxhIMOldGVyZsO2cnPDpGxqYXJkaXN0cmlidXRpb25lbiDDpHIgaMOkcmxlZGQgIgorImZyw6VuIEk8w6V0ZXJmw7Zyc8OkbGphcmU+LiBJIGFubmF0IGZhbGwgYXZzbHV0YXMgcHJvZ3JhbW1ldCBtZWQgaWNrZS1ub2xsLiAiCisiQW52w6RuZGVyIGbDpGx0ZXQgXCJQYXJlbnRcIiBmw7ZyIGF0dCBibMOkZGRyYSBnZW5vbSBhbGxhIGbDtnLDpGxkcmFyIHRpbGwgZGVuICIKKyJha3R1ZWxsYSDDpXRlcmbDtnJzw6RsamFyZW4uIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy12ZW5kb3IuMToyNAorIywgbm8td3JhcAorbXNnaWQgIkI8LS1xdWVyeT5JPCBmaWVsZD4iCittc2dzdHIgIkI8LS1xdWVyeT4gSTxmw6RsdD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctdmVuZG9yLjE6MjgKK21zZ2lkICIiCisiUHJpbnQgb24gc3RhbmRhcmQgb3V0cHV0IHRoZSB2YWx1ZSBvZiB0aGUgdmVuZG9yLXNwZWNpZmljIEk8ZmllbGQ+IGZvciB0aGUgIgorImN1cnJlbnQgdmVuZG9yLiIKK21zZ3N0ciAiIgorIlNrcml2ZXIgdsOkcmRldCBmw7ZyIGRldCDDpXRlcmbDtnJzw6RsamFyc3BlY2lmaWthIGbDpGx0ZXQgSTxmw6RsdD4gZsO2ciBkZW4gIgorImFrdHVlbGxhIMOldGVyZsO2cnPDpGxqYXJlbiBww6Ugc3RhbmRhcmQgdXQuIgorCisjLiB0eXBlOiBUUAorIzogZHBrZy12ZW5kb3IuMTozNgorIywgbm8td3JhcAorbXNnaWQgIkI8LS12ZW5kb3I+STwgdmVuZG9yPiIKK21zZ3N0ciAiQjwtLXZlbmRvcj5JPCDDpXRlcmbDtnJzw6RsamFyZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRwa2ctdmVuZG9yLjE6NDEKK21zZ2lkICIiCisiQXNzdW1lcyB0aGUgY3VycmVudCB2ZW5kb3IgaXMgSTx2ZW5kb3I+IGluc3RlYWQgb2YgZGlzY292ZXJpbmcgaXQgd2l0aCB0aGUgIgorIkI8REVCX1ZFTkRPUj4gZW52aXJvbm1lbnQgdmFyaWFibGUgb3IgQjwvZXRjL2Rwa2cvb3JpZ2lucy9kZWZhdWx0Pi4iCittc2dzdHIgIiIKKyJBbnRhIGF0dCBkZW4gYWt0dWVsbGEgw6V0ZXJmw7Zyc8OkbGphcmVuIMOkciBJPMOldGVyZsO2cnPDpGxqYXJlPiBpc3TDpGxsZXQgZsO2ciBhdHQgIgorInVwcHTDpGNrYSBkZXQgdmlhIG1pbGrDtnZhcmlhYmVsbiBCPERFQl9WRU5ET1I+IGVsbGVyIEI8L2V0Yy9kcGtnL29yaWdpbnMvIgorImRlZmF1bHQ+LiIKKworIy4gdHlwZTogVFAKKyM6IGRwa2ctdmVuZG9yLjE6NDMKKyMsIG5vLXdyYXAKK21zZ2lkICJCPERFQl9WRU5ET1I+IgorbXNnc3RyICJCPERFQl9WRU5ET1I+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkcGtnLXZlbmRvci4xOjQ3Cittc2dpZCAiIgorIlRoaXMgc2V0dGluZyBkZWZpbmVzIHRoZSBjdXJyZW50IHZlbmRvci4gSWYgbm90IHNldCwgaXQgd2lsbCBkaXNjb3ZlciB0aGUgIgorImN1cnJlbnQgdmVuZG9yIGJ5IHJlYWRpbmcgQjwvZXRjL2Rwa2cvb3JpZ2lucy9kZWZhdWx0Pi4iCittc2dzdHIgIiIKKyJJbnN0w6RsbG5pbmdlbiBhbmdlciBkZW4gYWt0dWVsbGEgw6V0ZXJmw7Zyc8OkbGphcmVuLiBPbSBkZW4gaW50ZSDDpHIgc2F0dCBrb21tZXIgIgorIsOldGVyZsO2cnPDpGxqYXJlbiBhdHQgaWRlbnRpZmllcmFzIGdlbm9tIGF0dCBsw6RzYSBCPC9ldGMvZHBrZy9vcmlnaW5zL2RlZmF1bHQ+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHBrZy12ZW5kb3IuMTo1MCB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDk4Cittc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDIwMDkgUmFwaGFcXFs6ZV1sIEhlcnR6b2ciCittc2dzdHIgIlVwcGhvdnNyw6R0dHNza3lkZGF0IMKpIDIwMDkgUmFwaGHDq2wgSGVydHpvZyIKKworIy4gdHlwZTogVEgKKyM6IGRzZWxlY3QuMToxCisjLCBuby13cmFwCittc2dpZCAiZHNlbGVjdCIKK21zZ3N0ciAiZHNlbGVjdCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjQKK21zZ2lkICJkc2VsZWN0IC0gRGViaWFuIHBhY2thZ2UgbWFuYWdlbWVudCBmcm9udGVuZCIKK21zZ3N0ciAiZHNlbGVjdCAtIERlYmlhbnMgcGFrZXRoYW50ZXJpbmdzc2thbCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjgKK21zZ2lkICJCPGRzZWxlY3Q+IFtJPG9wdGlvbj4uLi5dIFtJPGFjdGlvbj5dIgorbXNnc3RyICJCPGRzZWxlY3Q+IFtJPGZsYWdnYT4uLi5dIFtJPMOldGfDpHJkPl0iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxNworIywgbm8td3JhcAorbXNnaWQgIiIKKyJCPGRzZWxlY3Q+XG4iCisiaXMgb25lIG9mIHRoZSBwcmltYXJ5IHVzZXIgaW50ZXJmYWNlcyBmb3IgbWFuYWdpbmcgcGFja2FnZXMgb24gYSBEZWJpYW5cbiIKKyJzeXN0ZW0uIEF0IHRoZSBCPGRzZWxlY3Q+IG1haW4gbWVudSwgdGhlIHN5c3RlbSBhZG1pbmlzdHJhdG9yIGNhbjpcbiIKKyIgLSBVcGRhdGUgdGhlIGxpc3Qgb2YgYXZhaWxhYmxlIHBhY2thZ2UgdmVyc2lvbnMsXG4iCisiIC0gVmlldyB0aGUgc3RhdHVzIG9mIGluc3RhbGxlZCBhbmQgYXZhaWxhYmxlIHBhY2thZ2VzLFxuIgorIiAtIEFsdGVyIHBhY2thZ2Ugc2VsZWN0aW9ucyBhbmQgbWFuYWdlIGRlcGVuZGVuY2llcyxcbiIKKyIgLSBJbnN0YWxsIG5ldyBwYWNrYWdlcyBvciB1cGdyYWRlIHRvIG5ld2VyIHZlcnNpb25zLlxuIgorbXNnc3RyICIiCisiQjxkc2VsZWN0PlxuIgorIsOkciBldHQgYXYgZGV0IHByaW3DpHJhIGFudsOkbmRhcmdyw6Ruc3NuaXR0ZW4gZsO2ciBhdHQgaGFudGVyYSBwYWtldCBww6UgZXR0XG4iCisiRGViaWFuc3lzdGVtLiBJIEI8ZHNlbGVjdD5zIGh1dnVkbWVueSBrYW4gc3lzdGVtYWRtaW5pc3RyYXTDtnJlbjpcbiIKKyIgLSBVcHBkYXRlcmEgbGlzdGFuIMO2dmVyIHRpbGxnw6RuZ2xpZ2EgcGFrZXR2ZXJzaW9uZXIsXG4iCisiIC0gVmlzYSBzdGF0dXMgZsO2ciBpbnN0YWxsZXJhZGUgb2NoIHRpbGxnw6RuZ2xpZ2EgcGFrZXQsXG4iCisiIC0gw4RuZHJhIHBha2V0dmFsIG9jaCBoYW50ZXJhIGJlcm9lbmRlbixcbiIKKyIgLSBJbnN0YWxsZXJhIG55YSBwYWtldCBlbGxlciB1cHBncmFkZXJhIHRpbGwgbnlhcmUgdmVyc2lvbmVyLlxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MjkKK21zZ2lkICIiCisiQjxkc2VsZWN0PiBvcGVyYXRlcyBhcyBhIGZyb250LWVuZCB0byBCPGRwa2c+KDEpLCB0aGUgbG93LWxldmVsIGRlYmlhbiAiCisicGFja2FnZSBoYW5kbGluZyB0b29sLiBJdCBmZWF0dXJlcyBhIGZ1bGwtc2NyZWVuIHBhY2thZ2Ugc2VsZWN0aW9ucyBtYW5hZ2VyICIKKyJ3aXRoIHBhY2thZ2UgZGVwZW5kcyBhbmQgY29uZmxpY3RzIHJlc29sdmVyLiBXaGVuIHJ1biB3aXRoIGFkbWluaXN0cmF0b3IgIgorInByaXZpbGVnZXMsIHBhY2thZ2VzIGNhbiBiZSBpbnN0YWxsZWQsIHVwZ3JhZGVkIGFuZCByZW1vdmVkLiBWYXJpb3VzIGFjY2VzcyAiCisibWV0aG9kcyBjYW4gYmUgY29uZmlndXJlZCB0byByZXRyaWV2ZSBhdmFpbGFibGUgcGFja2FnZSB2ZXJzaW9uIGluZm9ybWF0aW9uICIKKyJhbmQgaW5zdGFsbGFibGUgcGFja2FnZXMgZnJvbSBwYWNrYWdlIHJlcG9zaXRvcmllcy4gIERlcGVuZGluZyBvbiB0aGUgdXNlZCAiCisiYWNjZXNzIG1ldGhvZCwgdGhlc2UgcmVwb3NpdG9yaWVzIGNhbiBiZSBwdWJsaWMgYXJjaGl2ZSBzZXJ2ZXJzIG9uIHRoZSAiCisiaW50ZXJuZXQsIGxvY2FsIGFyY2hpdmUgc2VydmVycyBvciBjZHJvbXMuICBUaGUgcmVjb21tZW5kZWQgYWNjZXNzIG1ldGhvZCBpcyAiCisiSTxhcHQ+LCB3aGljaCBpcyBwcm92aWRlZCBieSB0aGUgcGFja2FnZSBCPGFwdD4uIgorbXNnc3RyICIiCisiQjxkc2VsZWN0PiBhcmJldGFyIHNvbSBldHQgc2thbCBydW50IEI8ZHBrZz4oMSksIERlYmlhbnMgIgorImzDpWduaXbDpXBha2V0aGFudGVyaW5nc3Zlcmt0eWcuIERldCBoYXIgZW4gZnVsbHNrw6RybXNwYWtldHZhbHNoYW50ZXJhcmUgc29tICIKKyJoYW50ZXJhciBiZXJvZW5kZW4gb2NoIGtvbmZsaWt0ZXIgbWVsbGFuIHBha2V0LiBOw6RyIGRldCBrw7ZycyBtZWQgIgorImFkbWluaXN0cmF0w7Zyc2JlaMO2cmlnaGV0IGthbiBwYWtldCBpbnN0YWxsZXJhcywgdXBwZ3JhZGVyYXMgb2NoIHRhcyBib3J0LiAiCisiT2xpa2Egw6V0a29tc3RtZXRvZGVyIGthbiBrb25maWd1cmVyYXMgZsO2ciBhdHQgaMOkbXRhIHRpbGxnw6RuZ2xpZyBpbmZvcm1hdGlvbiAiCisib20gcGFrZXR2ZXJzaW9uZXIgb2NoIGluc3RhbGxlcmJhcmEgcGFrZXQgZnLDpW4gcGFrZXRzYW1saW5nYXIuIEJlcm9lbmRlIHDDpSAiCisiw6V0a29tc3RtZXRvZGVuIGthbiBkZXNzYSBzYW1saW5nYXIgdmFyYSDDtnBwbmEgYXJraXZzZXJ2cmFyIHDDpSBJbnRlcm5ldCwgIgorImxva2FsYSBhcmtpdnNlcnZyYXIgZWxsZXIgZmlubmFzIHDDpSBjZC1yb20uIERlbiByZWtvbW1lbmRlcmFkZSAiCisiw6V0a29tc3RtZXRvZGVuIMOkciBJPGFwdD4sIHZpbGtlbiB0aWxsaGFuZGFow6VsbHMgYXYgcGFrZXRldCBCPGFwdD4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MzUKK21zZ2lkICIiCisiTm9ybWFsbHkgQjxkc2VsZWN0PiBpcyBpbnZva2VkIHdpdGhvdXQgcGFyYW1ldGVycy4gQW4gaW50ZXJhY3RpdmUgbWVudSBpcyAiCisicHJlc2VudGVkLCBvZmZlcmluZyB0aGUgdXNlciBhIGxpc3Qgb2YgYWN0aW9ucy4gSWYgYW4gYWN0aW9uIGlzIGdpdmVuIGFzICIKKyJhcmd1bWVudCwgdGhlbiB0aGF0IGFjdGlvbiBpcyBzdGFydGVkIGltbWVkaWF0ZWx5LiBTZXZlcmFsIGNvbW1hbmQgbGluZSAiCisicGFyYW1ldGVycyBhcmUgc3RpbGwgYXZhaWxhYmxlIHRvIG1vZGlmeSB0aGUgcnVubmluZyBiZWhhdmlvdXIgb2YgQjxkc2VsZWN0PiAiCisib3Igc2hvdyBhZGRpdGlvbmFsIGluZm9ybWF0aW9uIGFib3V0IHRoZSBwcm9ncmFtLiIKK21zZ3N0ciAiIgorIlZhbmxpZ3R2aXMgYW5yb3BhcyBCPGRzZWxlY3Q+IHV0YW4gcGFyYW1ldHJhci4gRW4gaW50ZXJha3RpdiBtZW55IHZpc2FzIGTDpSwgIgorInZpbGtlbiBnZXIgYW52w6RuZGFyZW4gZXR0IGFudGFsIGhhbmRsaW5nc23DtmpsaWdoZXRlci4gT20gZW4gaGFuZGxpbmcgZ2VzIHNvbSAiCisia29tbWFuZG9yYWRzZmxhZ2dhIHN0YXJ0YXMgZGVubmEgbWVkIGVuIGfDpW5nLiBGbGVyYSBrb21tYW5kb3JhZHNmbGFnZ29yICIKKyJmaW5ucyDDpG5kw6UgYXR0IHRpbGxnw6UgZsO2ciBhdHQgZsO2csOkbmRyYSBodXIgQjxkc2VsZWN0PiBhcmJldGFyIGVsbGVyIGbDtnIgYXR0ICIKKyJ2aXNhIHl0dGVybGlnYXJlIGluZm9ybWF0aW9uIG9tIHByb2dyYW1tZXQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NDMKK21zZ2lkICIiCisiQWxsIG9wdGlvbnMgY2FuIGJlIHNwZWNpZmllZCBib3RoIG9uIHRoZSBjb21tYW5kIGxpbmUgYW5kIGluIHRoZSBCPGRzZWxlY3Q+ICIKKyJjb25maWd1cmF0aW9uIGZpbGUgSTwvZXRjL2Rwa2cvZHNlbGVjdC5jZmc+IG9yIHRoZSBmaWxlcyBvbiB0aGUgIgorImNvbmZpZ3VyYXRpb24gZGlyZWN0b3J5IEk8L2V0Yy9kcGtnL2RzZWxlY3QuY2ZnLmQvPi4gRWFjaCBsaW5lIGluIHRoZSAiCisiY29uZmlndXJhdGlvbiBmaWxlIGlzIGVpdGhlciBhbiBvcHRpb24gKGV4YWN0bHkgdGhlIHNhbWUgYXMgdGhlIGNvbW1hbmQgbGluZSAiCisib3B0aW9uIGJ1dCB3aXRob3V0IGxlYWRpbmcgZGFzaGVzKSBvciBhIGNvbW1lbnQgKGlmIGl0IHN0YXJ0cyB3aXRoIGEgQjwjPikuIgorbXNnc3RyICIiCisiQWxsYSBmbGFnZ29ybmEga2FuIGdlcyBiw6VkZSBww6Uga29tbWFuZG9yYWRlbiBvY2ggaSBCPGRzZWxlY3Q+cyAiCisia29uZmlndXJhdGlvbnNmaWwgSTwvZXRjL2Rwa2cvZHNlbGVjdC5jZmc+IGVsbGVyIGZpbGVybmEgaSAiCisia29uZmlndXJhdGlvbnNrYXRhbG9nZW4gSTwvZXRjL2Rwa2cvZHBrZy5jZmcuZC8+LiBFbiByYWQgaSAiCisia29uZmlndXJhdGlvbnNmaWxlbiDDpHIgYW50aW5nZW4gZW4gZmxhZ2dhIChwcmVjaXMgc2FtbWEgc29tIHDDpSAiCisia29tbWFuZG9yYWRlbiwgbWVuIHV0YW4gaW5sZWRhbmRlIGJpbmRlc3RyZWNrKSBlbGxlciBlbiBrb21tZW50YXIgKG9tIGRlbiAiCisiYsO2cmphciBtZWQgZXR0IEI8Iz4pLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjQ5Cittc2dpZCAiIgorIkNoYW5nZXMgdGhlIGRpcmVjdG9yeSB3aGVyZSB0aGUgZHBrZyBgSTxzdGF0dXM+JywgYEk8YXZhaWxhYmxlPicgYW5kIHNpbWlsYXIgIgorImZpbGVzIGFyZSBsb2NhdGVkLiBUaGlzIGRlZmF1bHRzIHRvIEk8L3Zhci9saWIvZHBrZz4gYW5kIG5vcm1hbGx5IHRoZXJlICIKKyJzaG91bGRuJ3QgYmUgYW55IG5lZWQgdG8gY2hhbmdlIGl0LiIKK21zZ3N0ciAiIgorIsOEbmRyYXIgbmFtbmV0IHDDpSBrYXRhbG9nZW4gZMOkciBkcGtnIGxldGFyIGVmdGVyIGZpbGVybmEgXCJzdGF0dXNcIiwgIgorIlwiYXZhaWxhYmxlXCIgbS5mbC4gRsO2cnZhbCDDpHIgSTwvdmFyL2xpYi9kcGtnPiBvY2ggZHUgYsO2ciBub3JtYWx0IHNldHQgaW50ZSAiCisiYmVow7Z2YSDDpG5kcmEgZGV0LiIKKworIy4gdHlwZTogVFAKKyM6IGRzZWxlY3QuMTo0OQorIywgbm8td3JhcAorbXNnaWQgIkI8LS1kZWJ1Zz5JPCBmaWxlID58STwgPkI8LUQ+STxmaWxlPiIKK21zZ3N0ciAiQjwtLWRlYnVnPkk8IGZpbCA+fEk8ID5CPC1EPkk8ZmlsPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjUyCittc2dpZCAiVHVybiBvbiBkZWJ1Z2dpbmcuIERlYnVnZ2luZyBpbmZvcm1hdGlvbiBpcyBzZW50IHRvIEk8ZmlsZT4uIgorbXNnc3RyICJTbMOlIHDDpSBmZWxzw7ZrbmluZ3Nsw6RnZS4gRmVsc8O2a25pbmdzaW5mb3JtYXRpb24gbGFncmFzIGkgSTxmaWw+LiIKKworIy4gdHlwZTogVFAKKyM6IGRzZWxlY3QuMTo1MgorIywgbm8td3JhcAorbXNnaWQgIkI8LS1leHBlcnQ+IgorbXNnc3RyICJCPC0tZXhwZXJ0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjU2Cittc2dpZCAiIgorIlR1cm5zIG9uIGV4cGVydCBtb2RlLCBpLmUuIGRvZXNuJ3QgZGlzcGxheSBwb3NzaWJseSBhbm5veWluZyBoZWxwIG1lc3NhZ2VzLiIKK21zZ3N0ciAiIgorIlNsw6VyIHDDpSBleHBlcnRsw6RnZSwgZHZzLiB2aXNhciBpbnRlIGhqw6RscG1lZGRlbGFuZGVuIHNvbSBrYW5za2Uga2FuIHZhcmEgIgorImlycml0ZXJhbmRlLiIKKworIy4gdHlwZTogVFAKKyM6IGRzZWxlY3QuMTo1NgorIywgbm8td3JhcAorbXNnaWQgIkI8LS1jb2xvdXI+fEI8LS1jb2xvcj4gSTxzY3JlZW5wYXJ0Oj5bSTxmb3JlZ3JvdW5kPl0sW0k8YmFja2dyb3VuZD5dW0k8OmF0dHI+W0k8K2F0dHIrLi4+XV0iCittc2dzdHIgIkI8LS1jb2xvdXI+fEI8LS1jb2xvcj4gSTxza8Okcm1kZWw+OltJPGbDtnJncnVuZD5dLFtJPGJha2dydW5kPl1bSTw6YXR0cj5bSTwrYXR0cisuLj5dXSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjYzCittc2dpZCAiIgorIkNvbmZpZ3VyZXMgc2NyZWVuIGNvbG9ycy4gVGhpcyB3b3JrcyBvbmx5IGlmIHlvdXIgZGlzcGxheSBzdXBwb3J0cyBjb2xvcnMuICAiCisiVGhpcyBvcHRpb24gbWF5IGJlIHVzZWQgbXVsdGlwbGUgdGltZXMgKGFuZCBpcyBiZXN0IHVzZWQgaW4gSTxkc2VsZWN0LmNmZz4pLiAiCisiRWFjaCB1c2UgY2hhbmdlcyB0aGUgY29sb3IgKGFuZCBvcHRpb25hbGx5LCBvdGhlciBhdHRyaWJ1dGVzKSBvZiBvbmUgcGFydCBvZiAiCisidGhlIHNjcmVlbi4gIFRoZSBwYXJ0cyBvZiB0aGUgc2NyZWVuIChmcm9tIHRvcCB0byBib3R0b20pIGFyZToiCittc2dzdHIgIiIKKyJTdMOkbGxlciBpbiBza8Okcm1mw6RyZ2VyLiBEZXR0YSBmdW5nZXJhciBiYXJhIG9tIGRpbiBza8Okcm0ga2FuIHZpc2EgZsOkcmdlci4gIgorIkZsYWdnYW4ga2FuIGFudsOkbmRhcyBmbGVyYSBnw6VuZ2VyIChvY2ggZnVuZ2VyYXIgYsOkc3QgaSBJPGRzZWxlY3QuY2ZnPikuICIKKyJWYXJqZSBhbnbDpG5kbmluZyDDpG5kcmFyIGbDpHJnZW4gKG9jaCBrYW5za2UgYW5kcmEgYXR0cmlidXQpIGbDtnIgZW4gZGVsIGF2ICIKKyJza8Okcm1lbi4gU2vDpHJtZGVsYXJuYSDDpHIsIHVwcGlmcsOlbiBvY2ggbmVyOiIKKworIy4gdHlwZTogVFAKKyM6IGRzZWxlY3QuMTo2NAorIywgbm8td3JhcAorbXNnaWQgIkI8dGl0bGU+IgorbXNnc3RyICJCPHRpdGxlPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjY3Cittc2dpZCAiVGhlIHNjcmVlbiB0aXRsZS4iCittc2dzdHIgIlNrw6RybXRpdGVsbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkc2VsZWN0LjE6NjcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGxpc3RoZWFkPiIKK21zZ3N0ciAiQjxsaXN0aGVhZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo3MAorbXNnaWQgIlRoZSBoZWFkZXIgbGluZSBhYm92ZSB0aGUgbGlzdCBvZiBwYWNrYWdlcy4iCittc2dzdHIgIkh1dnVkcmFkZW4gb3ZhbmbDtnIgcGFrZXRsaXN0YW4uIgorCisjLiB0eXBlOiBUUAorIzogZHNlbGVjdC4xOjcwCisjLCBuby13cmFwCittc2dpZCAiQjxsaXN0PiIKK21zZ3N0ciAiQjxsaXN0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjczCittc2dpZCAiVGhlIHNjcm9sbGluZyBsaXN0IG9mIHBhY2thZ2VzIChhbmQgYWxzbyBzb21lIGhlbHAgdGV4dCkuIgorbXNnc3RyICJEZW4gcnVsbGFuZGUgcGFrZXRsaXN0YW4gKG9jaCDDpHZlbiB2aXNzIGhqw6RscHRleHQpLiIKKworIy4gdHlwZTogVFAKKyM6IGRzZWxlY3QuMTo3MworIywgbm8td3JhcAorbXNnaWQgIkI8bGlzdHNlbD4iCittc2dzdHIgIkI8bGlzdHNlbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo3NgorbXNnaWQgIlRoZSBzZWxlY3RlZCBpdGVtIGluIHRoZSBsaXN0LiIKK21zZ3N0ciAiRGVuIHZhbGRhIHBvc3RlbiBpIGxpc3Rhbi4iCisKKyMuIHR5cGU6IFRQCisjOiBkc2VsZWN0LjE6NzYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHBrZ3N0YXRlPiIKK21zZ3N0ciAiQjxwa2dzdGF0ZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo4MAorbXNnaWQgIiIKKyJJbiB0aGUgbGlzdCBvZiBwYWNrYWdlcywgdGhlIHRleHQgaW5kaWNhdGluZyB0aGUgY3VycmVudCBzdGF0ZSBvZiBlYWNoICIKKyJwYWNrYWdlLiIKK21zZ3N0ciAiIgorIkkgbGlzdGFuIMO2dmVyIHBha2V0IMOkciBkZXQgaMOkciB0ZXh0ZW4gc29tIGFuZ2VyIGFrdHVlbGx0IHRpbGxzdMOlbmQgZsO2ciB2YXJqZSAiCisicGFrZXQuIgorCisjLiB0eXBlOiBUUAorIzogZHNlbGVjdC4xOjgwCisjLCBuby13cmFwCittc2dpZCAiQjxwa2dzdGF0ZXNlbD4iCittc2dzdHIgIkI8cGtnc3RhdGVzZWw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6ODQKK21zZ2lkICIiCisiSW4gdGhlIGxpc3Qgb2YgcGFja2FnZXMsIHRoZSB0ZXh0IGluZGljYXRpbmcgdGhlIGN1cnJlbnQgc3RhdGUgb2YgdGhlICIKKyJjdXJyZW50bHkgc2VsZWN0ZWQgcGFja2FnZS4iCittc2dzdHIgIiIKKyJJIGxpc3RhbiDDtnZlciBwYWtldCDDpHIgZGV0IGjDpHIgdGV4dGVuIHNvbSBhbmdlciBha3R1ZWxsdCB0aWxsc3TDpW5kIGbDtnIgZGV0ICIKKyJudSBtYXJrZXJhZGUgcGFrZXRldC4iCisKKyMuIHR5cGU6IFRQCisjOiBkc2VsZWN0LjE6ODQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGluZm9oZWFkPiIKK21zZ3N0ciAiQjxpbmZvaGVhZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo4NworbXNnaWQgIiIKKyJUaGUgaGVhZGVyIGxpbmUgdGhhdCBkaXNwbGF5cyB0aGUgc3RhdGUgb2YgdGhlIGN1cnJlbnRseSBzZWxlY3RlZCBwYWNrYWdlLiIKK21zZ3N0ciAiIgorIkh1dnVkcmFkZW4gc29tIHZpc2FyIGluZm9ybWF0aW9uIG9tIHRpbGxzdMOlbmRldCBmw7ZyIGRldCBudSBtYXJrZXJhZGUgcGFrZXRldC4iCisKKyMuIHR5cGU6IFRQCisjOiBkc2VsZWN0LjE6ODcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGluZm9kZXNjPiIKK21zZ3N0ciAiQjxpbmZvZGVzYz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo5MAorbXNnaWQgIlRoZSBwYWNrYWdlJ3Mgc2hvcnQgZGVzY3JpcHRpb24uIgorbXNnc3RyICJQYWtldGV0cyBrb3J0YSBiZXNrcml2bmluZy4iCisKKyMuIHR5cGU6IFRQCisjOiBkc2VsZWN0LjE6OTAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPGluZm8+IgorbXNnc3RyICJCPGluZm8+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6OTMKK21zZ2lkICJVc2VkIHRvIGRpc3BsYXkgcGFja2FnZSBpbmZvIHN1Y2ggYXMgdGhlIHBhY2thZ2UncyBkZXNjcmlwdGlvbi4iCittc2dzdHIgIkFudsOkbmRzIGbDtnIgYXR0IHZpc2EgcGFrZXRpbmZvcm1hdGlvbiwgc8Olc29tIHBha2V0ZXRzIGJlc2tyaXZuaW5nLiIKKworIy4gdHlwZTogVFAKKyM6IGRzZWxlY3QuMTo5MworIywgbm8td3JhcAorbXNnaWQgIkI8aW5mb2Zvb3Q+IgorbXNnc3RyICJCPGluZm9mb290PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjk2Cittc2dpZCAiVGhlIGxhc3QgbGluZSBvZiB0aGUgc2NyZWVuIHdoZW4gc2VsZWN0aW5nIHBhY2thZ2VzLiIKK21zZ3N0ciAiRGVuIHNpc3RhIHJhZGVuIHDDpSBza8Okcm1lbiBuw6RyIHBha2V0IHbDpGxqcy4iCisKKyMuIHR5cGU6IFRQCisjOiBkc2VsZWN0LjE6OTYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPHF1ZXJ5PiIKK21zZ3N0ciAiQjxxdWVyeT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo5OQorbXNnaWQgIlVzZWQgdG8gZGlzcGxheSBxdWVyeSBsaW5lcyIKK21zZ3N0ciAiQW52w6RuZHMgZsO2ciBhdHQgdmlzYSBmcsOlZ29yLiIKKworIy4gdHlwZTogVFAKKyM6IGRzZWxlY3QuMTo5OQorIywgbm8td3JhcAorbXNnaWQgIkI8aGVscHNjcmVlbj4iCittc2dzdHIgIkI8aGVscHNjcmVlbj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxMDIKK21zZ2lkICJDb2xvciBvZiBoZWxwIHNjcmVlbnMuIgorbXNnc3RyICJGw6RyZyBww6UgaGrDpGxwc2vDpHJtYXIuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTA3Cittc2dpZCAiIgorIkFmdGVyIHRoZSBwYXJ0IG9mIHRoZSBzY3JlZW4gY29tZXMgYSBjb2xvbiBhbmQgdGhlIGNvbG9yIHNwZWNpZmljYXRpb24uIFlvdSAiCisiY2FuIHNwZWNpZnkgZWl0aGVyIHRoZSBmb3JlZ3JvdW5kIGNvbG9yLCB0aGUgYmFja2dyb3VuZCBjb2xvciwgb3IgYm90aCwgIgorIm92ZXJyaWRpbmcgdGhlIGNvbXBpbGVkLWluIGNvbG9ycy4gVXNlIHN0YW5kYXJkIGN1cnNlcyBjb2xvciBuYW1lcy4iCittc2dzdHIgIiIKKyJFZnRlciBza8Okcm1kZWxlbiBmw7ZsamVyIGV0dCBrb2xvbiBvY2ggZsOkcmdhbmdpdmVsc2VuLiBEdSBrYW4gYW5nZSBhbnRpbmdlbiAiCisiZsO2cmdydW5kc2bDpHJnZW4sIGJha2dydW5kc2bDpHJnZW4gZWxsZXIgYsOlZGEgdHbDpSwgdmlsa2Ega29tbWVyIGF0dCBlcnPDpHR0YSBkZSAiCisiaW5rb21waWxlcmFkZSBmw6RyZ2VybmEuIEFudsOkbmQgZGUgbm9ybWFsYSBjdXJzZXMtbmFtbmVuIGbDtnIgZsOkcmdlcm5hLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjExMworbXNnaWQgIiIKKyJPcHRpb25hbGx5LCBhZnRlciB0aGUgY29sb3Igc3BlY2lmaWNhdGlvbiBpcyBhbm90aGVyIGNvbG9uLCBhbmQgYW4gYXR0cmlidXRlICIKKyJzcGVjaWZpY2F0aW9uLiBUaGlzIGlzIGEgbGlzdCBvZiBvbmUgb3IgbW9yZSBhdHRyaWJ1dGVzLCBzZXBhcmF0ZWQgYnkgcGx1cyAiCisiKFwiK1wiKSBjaGFyYWN0ZXJzLiBBdmFpbGFibGUgYXR0cmlidXRlcyBpbmNsdWRlIChub3QgYWxsIG9mIHRoZXNlIHdpbGwgd29yayAiCisib24gYWxsIHRlcm1pbmFscyk6IG5vcm1hbCwgc3RhbmRvdXQsIHVuZGVybGluZSwgcmV2ZXJzZSwgYmxpbmssIGJyaWdodCwgZGltLCAiCisiYm9sZCIKK21zZ3N0ciAiIgorIkR1IGthbiDDpHZlbiBhbmdlIHl0dGVybGlnYXJlIGV0dCBrb2xvbiBlZnRlciBmw6RyZ2FuZ2l2ZWxzZW4gb2NoIGTDpHIgZ2UgIgorImF0dHJpYnV0LiBEZXR0YSDDpHIgZW4gbGlzdGEgbWVkIGV0dCBlbGxlciBmbGVyYSBhdHRyaWJ1dCwgYXZkZWxhZGUgbWVkICIKKyJwbHVzdGVja2VuIChcIitcIikuIFRpbGxnw6RuZ2xpZ2EgYXR0cmlidXQgw6RyIChhbGxhIGZ1bmdlcmFyIGludGUgcMOlIGFsbGEgIgorInRlcm1pbmFsZXIpOiBub3JtYWwsIHN0YW5kb3V0ICh1dGjDpHZkKSwgdW5kZXJsaW5lICh1bmRlcnN0cnVrZW4pLCByZXZlcnNlICIKKyIob212w6RuZCksIGJsaW5rLCBicmlnaHQgKGxqdXMpLCBkaW0gKG3DtnJrKSwgYm9sZCAoZmV0KSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjExNgorbXNnaWQgIlByaW50IGEgYnJpZWYgaGVscCB0ZXh0IGFuZCBleGl0IHN1Y2Nlc3NmdWxseS4iCittc2dzdHIgIlZpc2FyIGVuIGtvcnQgaGrDpGxwdGV4dCBvY2ggZ2VyIGx5Y2thdCBhdnNsdXQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTE5Cittc2dpZCAiUHJpbnQgdmVyc2lvbiBpbmZvcm1hdGlvbiBhbmQgZXhpdCBzdWNjZXNzZnVsbHkuIgorbXNnc3RyICJWaXNhciB2ZXJzaW9uc2luZm9ybWF0aW9uIG9jaCBnZXIgbHlja2F0IGF2c2x1dC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxMjYKK21zZ2lkICIiCisiV2hlbiBCPGRzZWxlY3Q+IGlzIHN0YXJ0ZWQgaXQgY2FuIHBlcmZvcm0gdGhlIGZvbGxvd2luZyBhY3Rpb25zLCBlaXRoZXIgIgorImRpcmVjdGx5IGlmIGl0IHdhcyBzcGVjaWZpZWQgb24gdGhlIGNvbW1hbmQgbGluZSBvciBieSBwcm9tcHRpbmcgdGhlIHVzZXIgIgorIndpdGggYSBtZW51IG9mIGF2YWlsYWJsZSBhY3Rpb25zIGlmIHJ1bm5pbmcgaW50ZXJhY3RpdmVseToiCittc2dzdHIgIiIKKyJOw6RyIEI8ZHNlbGVjdD4gc3RhcnRhcyBrYW4gZGV0IHV0ZsO2cmEgZsO2bGphbmRlIMOldGfDpHJkZXIsIGFudGluZ2VuIGRpcmVrdCBvbSAiCisiZGUgYW5nZXMgcMOlIGtvbW1hbmRvcmFkZW4gZWxsZXIgZ2Vub20gYXR0IGZyw6VnYSBhbnbDpG5kYXJlbiBtZWQgZW4gbWVueSBvbSAiCisiZGV0IGvDtnJzIGludGVyYWt0aXZ0OiIKKworIy4gdHlwZTogU1MKKyM6IGRzZWxlY3QuMToxMjYKKyMsIG5vLXdyYXAKK21zZ2lkICJhY2Nlc3MiCittc2dzdHIgIkFjY2VzcyAow4V0a29tc3QpIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTI4Cittc2dpZCAiQ2hvb3NlIGFuZCBjb25maWd1cmUgYW4gYWNjZXNzIG1ldGhvZCB0byBhY2Nlc3MgcGFja2FnZSByZXBvc2l0b3JpZXMuIgorbXNnc3RyICIiCisiVsOkbGplciBvY2gga29uZmlndXJlcmFyIGVuIFwiw6V0a29tc3RtZXRvZFwiIGbDtnIgYXR0IGtvbW1hIMOldCBwYWtldHNhbWxpbmdlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxMzQKK21zZ2lkICIiCisiQnkgZGVmYXVsdCwgQjxkc2VsZWN0PiBwcm92aWRlcyBzZXZlcmFsIG1ldGhvZHMgc3VjaCBhcyBJPGNkcm9tPiwgIgorIkk8bXVsdGlfY2Q+LCBJPG5mcz4sIEk8bXVsdGlfbmZzPiwgSTxoYXJkZGlzaz4sIEk8bW91bnRlZD4sIEk8bXVsdGlfbW91bnQ+LCAiCisiSTxmbG9wcHk+IG9yIEk8ZnRwPiwgYnV0IG90aGVyIHBhY2thZ2VzIG1heSBwcm92aWRlIGFkZGl0aW9uYWwgbWV0aG9kcywgZWcuICIKKyJ0aGUgSTxhcHQ+IGFjY2VzcyBtZXRob2QgcHJvdmlkZWQgYnkgdGhlIEI8YXB0PiBwYWNrYWdlLiIKK21zZ3N0ciAiIgorIlNvbSBzdGFuZGFyZCBnZXIgQjxkc2VsZWN0PiBmbGVyYSBvbGlrYSBtZXRvZGVyLCBzw6Vzb20gSTxjZHJvbT4sICIKKyJJPG11bHRpX2NkPiwgSTxuZnM+LCBJPG11bHRpX25mcz4sIEk8aGFyZGRpc2s+LCBJPG1vdW50ZWQ+LCBJPG11bHRpX21vdW50PiwgIgorIkk8ZmxvcHB5PiBvY2ggSTxmdHA+LCBtZW4gYW5kcmEgcGFrZXQgZHUgaW5zdGFsbGVyYXIga2FuIHRpbGxoYW5kYWjDpWxsYSAiCisieXR0ZXJsaWdhcmUgbWV0b2RlciwgdC5leCBnZXMgw6V0a29tc3RtZXRvZGVuIEk8YXB0PiBhdiBwYWtldGV0IEI8YXB0Pi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxMzYKK21zZ2lkICJUaGUgdXNlIG9mIHRoZSBJPGFwdD4gYWNjZXNzIG1ldGhvZCBpcyBzdHJvbmdseSByZWNvbW1lbmRlZC4iCittc2dzdHIgIsOFdGtvbXN0bWV0b2RlbiBJPGFwdD4gcmVrb21tZW5kZXJhcyBzdGFya3QuIgorCisjLiB0eXBlOiBTUworIzogZHNlbGVjdC4xOjEzNworIywgbm8td3JhcAorbXNnaWQgInVwZGF0ZSIKK21zZ3N0ciAiVXBkYXRlIChVcHBkYXRlcmEpIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTM5Cittc2dpZCAiUmVmcmVzaCB0aGUgYXZhaWxhYmxlIHBhY2thZ2VzIGRhdGFiYXNlLiIKK21zZ3N0ciAiVXBwZGF0ZXJhIGRhdGFiYXNlbiBtZWQgdGlsbGfDpG5nbGlnYSBwYWtldC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxNDYKK21zZ2lkICIiCisiUmV0cmlldmVzIGEgbGlzdCBvZiBhdmFpbGFibGUgcGFja2FnZSB2ZXJzaW9ucyBmcm9tIHRoZSBwYWNrYWdlIHJlcG9zaXRvcnksICIKKyJjb25maWd1cmVkIGZvciB0aGUgY3VycmVudCBhY2Nlc3MgbWV0aG9kLCBhbmQgdXBkYXRlIHRoZSBkcGtnIGRhdGFiYXNlLiBUaGUgIgorInBhY2thZ2UgbGlzdHMgYXJlIGNvbW1vbmx5IHByb3ZpZGVkIGJ5IHRoZSByZXBvc2l0b3J5IGFzIGZpbGVzIG5hbWVkICIKKyJJPFBhY2thZ2VzPiBvciBJPFBhY2thZ2VzLmd6Pi4gIFRoZXNlIGZpbGVzIGNhbiBiZSBnZW5lcmF0ZWQgYnkgcmVwb3NpdG9yeSAiCisibWFpbnRhaW5lcnMsIHVzaW5nIHRoZSBwcm9ncmFtIEI8ZHBrZy1zY2FucGFja2FnZXM+KDEpLiIKK21zZ3N0ciAiIgorIkjDpG10YXIgZW4gbGlzdGEgw7Z2ZXIgdGlsbGfDpG5nbGlnYSBwYWtldCBmcsOlbiBwYWtldHNhbWxpbmdlbiBzb20gIgorImtvbmZpZ3VyZXJhdHMgZsO2ciBkZW4gYWt0dWVsbGEgw6V0a29tc3RtZXRvZGVuLCBvY2ggdXBwZGF0ZXJhciBkcGtnOnMgIgorImRhdGFiYXMuIFBha2V0bGlzdG9yIGZpbm5zIG5vcm1hbHQgcMOlIHBha2V0c2FtbGluZ2FybmEgaSBmaWxlciB2aWQgbmFtbiAiCisiQjxQYWNrYWdlcz4gZWxsZXIgQjxQYWNrYWdlcy5nej4uIERlc3NhIGZpbGVyIGthbiBnZW5lcmVyYXMgYXYgZGUgc29tICIKKyJ1bmRlcmjDpWxsZXIgc2FtbGluZ2FybmEgZ2Vub20gYXR0IGFudsOkbmRhIHByb2dyYW1tZXQgQjxkcGtnLXNjYW5wYWNrYWdlcygxKT4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTQ5Cittc2dpZCAiIgorIkRldGFpbHMgb2YgdGhlIHVwZGF0ZSBhY3Rpb24gZGVwZW5kIG9uIHRoZSBhY2Nlc3MgbWV0aG9kJ3MgaW1wbGVtZW50YXRpb24uICAiCisiTm9ybWFsbHkgdGhlIHByb2Nlc3MgaXMgc3RyYWlnaHRmb3J3YXJkIGFuZCByZXF1aXJlcyBubyB1c2VyIGludGVyYWN0aW9uLiIKK21zZ3N0ciAiIgorIlZpbGthIGRldGFsamVyIHNvbSBnZXMgb20gdXBwZGF0ZXJpbmdlbiBiZXJvciBww6UgaHVyIMOldGtvbXN0bWV0b2RlbiDDpHIgIgorImltcGxlbWVudGVyYWQuIE5vcm1hbHQgw6RyIHByb2Nlc3NlbiBzasOkbHZmw7Zya2xhcmFuZGUgb2NoIGJlaMO2dmVyIGluZ2VuICIKKyJpbnRlcmFrdGlvbiBtZWQgYW52w6RuZGFyZW4uIgorCisjLiB0eXBlOiBTUworIzogZHNlbGVjdC4xOjE1MAorIywgbm8td3JhcAorbXNnaWQgInNlbGVjdCIKK21zZ3N0ciAiU2VsZWN0IChWw6RsaikiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxNTIKK21zZ2lkICJWaWV3IG9yIG1hbmFnZSBwYWNrYWdlIHNlbGVjdGlvbnMgYW5kIGRlcGVuZGVuY2llcy4iCittc2dzdHIgIlZpc2FyIGVsbGVyIHbDpGxqZXIgcGFrZXR2YWwgb2NoIGJlcm9lbmRlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxNTgKK21zZ2lkICIiCisiVGhpcyBpcyB0aGUgbWFpbiBmdW5jdGlvbiBvZiBCPGRzZWxlY3Q+LiBJbiB0aGUgc2VsZWN0IHNjcmVlbiwgdGhlIHVzZXIgY2FuICIKKyJyZXZpZXcgYSBsaXN0IG9mIGFsbCBhdmFpbGFibGUgYW5kIGluc3RhbGxlZCBwYWNrYWdlcy4gV2hlbiBydW4gd2l0aCAiCisiYWRtaW5pc3RyYXRvciBwcml2aWxlZ2VzLCBpdCBpcyBhbHNvIHBvc3NpYmxlIHRvIGludGVyYWN0aXZlbHkgY2hhbmdlICIKKyJwYWNrYWdlcyBzZWxlY3Rpb24gc3RhdGUuIEI8ZHNlbGVjdD4gdHJhY2tzIHRoZSBpbXBsaWNhdGlvbnMgb2YgdGhlc2UgIgorImNoYW5nZXMgdG8gb3RoZXIgZGVwZW5kaW5nIG9yIGNvbmZsaWN0aW5nIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorIkRldHRhIMOkciBCPGRzZWxlY3Q+cyBodXZ1ZGZ1bmt0aW9uLiAgUMOlIHZhbHNrw6RybWVuIGthbiBhbnbDpG5kYXJlbiB0aXR0YSBww6UgIgorImVuIGxpc3RhIMO2dmVyIHNhbXRsaWdhIHRpbGxnw6RuZ2xpZ2Egb2NoIGluc3RhbGxlcmFkZSBwYWtldC4gTsOkciBkZXQga8O2cnMgbWVkICIKKyJhZG1pbmlzdHJhdMO2cnNiZWjDtnJpZ2hldCDDpHIgZGV0IMOkdmVuIG3DtmpsaWd0IGF0dCBpbnRlcmFrdGl2dCDDpG5kcmEgcGFrZXRldHMgIgorInZhbHN0YXR1cy4gQjxkc2VsZWN0PiBzcMOlcmFyIHZpbGtlbiBpbnZlcmtuaW5nIGRlc3NhIMOkbmRyaW5nYXIgZsOlciBww6UgIgorImJlcm9lbmRlIGVsbGVyIG1vdHN0cmlkaWdhIHBha2V0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjE2NQorbXNnaWQgIiIKKyJXaGVuIGEgY29uZmxpY3Qgb3IgZmFpbGVkIGRlcGVuZHMgaXMgZGV0ZWN0ZWQsIGEgZGVwZW5kZW5jeSByZXNvbHV0aW9uICIKKyJzdWJzY3JlZW4gaXMgcHJvbXB0ZWQgdG8gdGhlIHVzZXIuIEluIHRoaXMgc2NyZWVuLCBhIGxpc3Qgb2YgY29uZmxpY3Rpbmcgb3IgIgorImRlcGVuZGluZyBwYWNrYWdlcyBpcyBzaG93biwgYW5kIGZvciBlYWNoIHBhY2thZ2UgbGlzdGVkLCB0aGUgcmVhc29uIGZvciBpdHMgIgorImxpc3RpbmcgaXMgc2hvd24uIFRoZSB1c2VyIG1heSBhcHBseSB0aGUgc3VnZ2VzdGlvbnMgcHJvcG9zZWQgYnkgQjxkc2VsZWN0PiwgIgorIm92ZXJyaWRlIHRoZW0sIG9yIGJhY2sgb3V0IGFsbCB0aGUgY2hhbmdlcywgaW5jbHVkaW5nIHRoZSBvbmVzIHRoYXQgY3JlYXRlZCAiCisidGhlIHVucmVzb2x2ZWQgZGVwZW5kcyBvciBjb25mbGljdHMuIgorbXNnc3RyICIiCisiTsOkciBlbiBrb25mbGlrdCBlbGxlciBldHQgbWlzc2x5Y2thdCBiZXJvZW5kZSB1cHB0w6Rja3MgdmlzYXMgZW4gZGVsc2vDpHJtIG1lZCAiCisibcO2amxpZ2hldCBhdHQgbMO2c2EgYmVyb2VuZGV0LiBQw6UgZGVubmEgc2vDpHJtIHZpc2FzIGVuIGxpc3RhIMO2dmVyIG1vdHN0cmlkaWdhICIKKyJlbGxlciBiZXJvZW5kZSBwYWtldCwgb2NoIGbDtnIgdmFyamUgcGFrZXQgc29tIGxpc3RhcyB2aXNhcyBkZXNzIG9yc2FrLiAiCisiQW52w6RuZGFyZW4ga2FuIGFwcGxpY2VyYSBkZSBhdiBCPGRzZWxlY3Q+IHJla29tbWVuZGVyYWRlIMOkbmRyaW5nYXJuYSwgc2rDpGx2ICIKKyLDpG5kcmEgZGVtLCBlbGxlciBiYWNrYSBhbGxhIMOkbmRyaW5nYXIsIGlua2x1c2l2ZSBkZSBzb20gZ2pvcmRlIGF0dCBkZSBlaiAiCisiaGFudGVyYWRlIGJlcm9lbmRlbmEgZWxsZXIga29uZmxpa3Rlcm5hIHVwcHN0b2QgdGlsbCBhdHQgYsO2cmphIG1lZC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxNjgKK21zZ2lkICIiCisiVGhlIHVzZSBvZiB0aGUgaW50ZXJhY3RpdmUgcGFja2FnZSBzZWxlY3Rpb25zIG1hbmFnZW1lbnQgc2NyZWVuIGlzIGV4cGxhaW5lZCAiCisiaW4gbW9yZSBkZXRhaWwgYmVsb3cuIgorbXNnc3RyICIiCisiQW52w6RuZG5pbmdlbiBhdiBkZW4gaW50ZXJha3RpdmEgcGFrZXR2YWxzaGFudGVyYXJza8Okcm1lbiBiZXNrcml2cyBpICIKKyJ5dHRlcmxpZ2FyZSBkZXRhbGogbmVkYW4uIgorCisjLiB0eXBlOiBTUworIzogZHNlbGVjdC4xOjE2OQorIywgbm8td3JhcAorbXNnaWQgImluc3RhbGwiCittc2dzdHIgIkluc3RhbGwgKEluc3RhbGxlcmEpIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTcxCittc2dpZCAiSW5zdGFsbHMgc2VsZWN0ZWQgcGFja2FnZXMuIgorbXNnc3RyICJJbnN0YWxsZXJhciB2YWxkYSBwYWtldC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxNzcKK21zZ2lkICIiCisiVGhlIGNvbmZpZ3VyZWQgYWNjZXNzIG1ldGhvZCB3aWxsIGZldGNoIGluc3RhbGxhYmxlIG9yIHVwZ3JhZGFibGUgcGFja2FnZXMgIgorImZyb20gdGhlIHJlbGV2YW50IHJlcG9zaXRvcmllcyBhbmQgaW5zdGFsbCB0aGVzZSB1c2luZyBCPGRwa2c+LiAgRGVwZW5kaW5nICIKKyJvbiB0aGUgaW1wbGVtZW50YXRpb24gb2YgdGhlIGFjY2VzcyBtZXRob2QsIGFsbCBwYWNrYWdlcyBjYW4gYmUgcHJlZmV0Y2hlZCAiCisiYmVmb3JlIGluc3RhbGxhdGlvbiwgb3IgZmV0Y2hlZCB3aGVuIG5lZWRlZC4gIFNvbWUgYWNjZXNzIG1ldGhvZHMgbWF5IGFsc28gIgorInJlbW92ZSBwYWNrYWdlcyB0aGF0IHdlcmUgbWFya2VkIGZvciByZW1vdmFsLiIKK21zZ3N0ciAiIgorIkRlbiB2YWxkYSDDpXRrb21zdG1ldG9kZW4gaMOkbXRhciBpbnN0YWxsZXJiYXJhIGVsbGVyIHVwcGdyYWRlcmJhcmEgcGFrZXQgZnLDpW4gIgorInJlbGV2YW50YSBwYWtldHNhbWxpbmdhciBvY2ggaW5zdGFsbGVyYXIgZGVtIG1lZCBCPGRwa2c+LiBCZXJvZW5kZSBww6UgaHVyICIKKyLDpXRrb21zdG1ldG9kZW4gaW1wbGVtZW50ZXJhdHMgaMOkbXRhcyBhbnRpbmdlbiBhbGxhIHBha2V0IGlubmFuICIKKyJpbnN0YWxsYXRpb25lbiwgZWxsZXIgc8OlIGjDpG10YXMgZGUgbsOkciBzw6Ugw6RyIG7DtmR2w6RuZGlndC4gTsOlZ3JhICIKKyLDpXRrb21zdG1ldG9kZXIga29tbWVyIMOkdmVuIHRhIGJvcnQgcGFrZXQgc29tIG1hcmtlcmFkZXMgZsO2ciBib3J0dGFnbmluZy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToxODUKK21zZ2lkICIiCisiSWYgYW4gZXJyb3Igb2NjdXJyZWQgZHVyaW5nIGluc3RhbGwsIGl0IGlzIHVzdWFsbHkgYWR2aXNhYmxlIHRvIHJ1biBpbnN0YWxsICIKKyJhZ2Fpbi4gSW4gbW9zdCBjYXNlcywgdGhlIHByb2JsZW1zIHdpbGwgZGlzYXBwZWFyIG9yIGJlIHNvbHZlZC4gIElmIHByb2JsZW1zICIKKyJwZXJzaXN0IG9yIHRoZSBpbnN0YWxsYXRpb24gcGVyZm9ybWVkIHdhcyBpbmNvcnJlY3QsIHBsZWFzZSBpbnZlc3RpZ2F0ZSBpbnRvICIKKyJ0aGUgY2F1c2VzIGFuZCBjaXJjdW1zdGFuY2VzLCBhbmQgZmlsZSBhIGJ1ZyBpbiB0aGUgRGViaWFuIGJ1ZyB0cmFja2luZyAiCisic3lzdGVtLiBJbnN0cnVjdGlvbnMgb24gaG93IHRvIGRvIHRoaXMgY2FuIGJlIGZvdW5kIGF0IGh0dHA6Ly9idWdzLmRlYmlhbi4iCisib3JnLyBvciBieSByZWFkaW5nIHRoZSBkb2N1bWVudGF0aW9uIGZvciBCPGJ1Zz4oMSkgb3IgQjxyZXBvcnRidWc+KDEpLCBpZiAiCisidGhlc2UgYXJlIGluc3RhbGxlZC4iCittc2dzdHIgIiIKKyJPbSBldHQgZmVsIHVwcHN0b2QgdW5kZXIgaW5zdGFsbGF0aW9uZW4gw6RyIHJla29tbWVuZGVyYXMgZGV0IHZhbmxpZ2VuIGF0dCAiCisia8O2cmEgaW5zdGFsbGF0aW9uZW4gcMOlIG55dHQuIEkgZGUgZmxlc3RhIGZhbGwga29tbWVyIHByb2JsZW1ldCBmw7Zyc3Zpbm5hICIKKyJlbGxlciBsw7ZzYXMuIE9tIHByb2JsZW1ldCBrdmFyc3TDpXIgZWxsZXIgZGVuIGluc3RhbGxhdGlvbiBzb20gZ2Vub21mw7ZyZGVzICIKKyJ2YXIgZmVsYWt0aWcsIGJlciB2aSBkaWcgdW5kZXJzw7ZrYSBvcnNha2VuIG9jaCBvbXN0w6RuZGlnaGV0ZXJuYSBvY2ggIgorInJhcHBvcnRlcmEgZXR0IGZlbCBpIERlYmlhbnMgZmVscmFwcG9ydGVyaW5nc3N5c3RlbS4gSW5zdHJ1a3Rpb25lciBvbSBodXIgZHUgIgorImfDtnIgZGV0IGZpbm5zIHDDpSBodHRwOi8vYnVncy5kZWJpYW4ub3JnLyBlbGxlciBnZW5vbSBhdHQgbMOkc2EgIgorImRva3VtZW50YXRpb25lbiBmw7ZyIEI8YnVnPigxKSBlbGxlciBCPHJlcG9ydGJ1Zz4oMSksIG9tIGRlc3NhIMOkciAiCisiaW5zdGFsbGVyYWRlLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjE5MgorbXNnaWQgIiIKKyJEZXRhaWxzIG9mIHRoZSBpbnN0YWxsIGFjdGlvbiBkZXBlbmQgb24gdGhlIGFjY2VzcyBtZXRob2QncyBpbXBsZW1lbnRhdGlvbi4gICIKKyJUaGUgdXNlcidzIGF0dGVudGlvbiBhbmQgaW5wdXQgbWF5IGJlIHJlcXVpcmVkIGR1cmluZyBpbnN0YWxsYXRpb24sICIKKyJjb25maWd1cmF0aW9uIG9yIHJlbW92YWwgb2YgcGFja2FnZXMuIFRoaXMgZGVwZW5kcyBvbiB0aGUgbWFpbnRhaW5lciBzY3JpcHRzICIKKyJpbiB0aGUgcGFja2FnZS4gU29tZSBwYWNrYWdlcyBtYWtlIHVzZSBvZiB0aGUgQjxkZWJjb25mPigxKSAgbGlicmFyeSwgIgorImFsbG93aW5nIGZvciBtb3JlIGZsZXhpYmxlIG9yIGV2ZW4gYXV0b21hdGVkIGluc3RhbGxhdGlvbiBzZXR1cHMuIgorbXNnc3RyICIiCisiRGV0YWxqZXJuYSBmw7ZyIGh1ciBpbnN0YWxsYXRpb25lbiBnZW5vbWbDtnJzIGJlcm9yIHDDpSBodXIgw6V0a29tc3RtZXRvZGVuIMOkciAiCisiaW1wbGVtZW50ZXJhZC4gVXBwbcOkcmtzYW1oZXQgb2NoIGluZGF0YSBmcsOlbiBhbnbDpG5kYXJlbiBrYW4gYmVow7Z2YXMgdW5kZXIgIgorImluc3RhbGxhdGlvbiwga29uZmlndXJhdGlvbiBlbGxlciBib3J0dGFnbmluZyBhdiBwYWtldCwgYmVyb2VuZGUgcMOlIGh1ciAiCisidXR2ZWNrbGFyc2tyaXB0ZW4gaSBwYWtldGVuIHNlciB1dC4gVmlzc2EgcGFrZXQgYW52w6RuZGVyIEI8ZGViY29uZj4oMSktIgorImJpYmxpb3Rla2V0LCB2aWxrZXQgbcO2amxpZ2fDtnIgbWVyIGZsZXhpYmVsLCBlbGxlciB0aWxsIG9jaCBtZWQgIgorImF1dG9tYXRpc2VyYWQsIGluc3RhbGxhdGlvbiBvY2ggaW5zdMOkbGxuaW5nLiIKKworIy4gdHlwZTogU1MKKyM6IGRzZWxlY3QuMToxOTMKKyMsIG5vLXdyYXAKK21zZ2lkICJjb25maWciCittc2dzdHIgIkNvbmZpZyAoS29uZmlndXJlcmEpIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MTk1Cittc2dpZCAiQ29uZmlndXJlcyBhbnkgcHJldmlvdXNseSBpbnN0YWxsZWQsIGJ1dCBub3QgZnVsbHkgY29uZmlndXJlZCBwYWNrYWdlcy4iCittc2dzdHIgIiIKKyJLb25maWd1cmVyYSBwYWtldCBzb20gdGlkaWdhcmUgaW5zdGFsbGVyYXRzLCBtZW4gZWogdGlsbCBmdWxsbyBrb25maWd1cmVyYXRzLiIKKworIy4gdHlwZTogU1MKKyM6IGRzZWxlY3QuMToxOTYKKyMsIG5vLXdyYXAKK21zZ2lkICJyZW1vdmUiCittc2dzdHIgIlJlbW92ZSAoUmFkZXJhKSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjE5OAorbXNnaWQgIlJlbW92ZXMgb3IgcHVyZ2VzIGluc3RhbGxlZCBwYWNrYWdlcywgdGhhdCBhcmUgbWFya2VkIGZvciByZW1vdmFsLiIKK21zZ3N0ciAiIgorIlRhciBib3J0IGVsbGVyIHJhZGVyYXIgaGVsdCBpbnN0YWxsZXJhZGUgcGFrZXQgc29tIG1hcmtlcmF0cyBmw7ZyIGJvcnR0YWduaW5nLiIKKworIy4gdHlwZTogU1MKKyM6IGRzZWxlY3QuMToxOTkKKyMsIG5vLXdyYXAKK21zZ2lkICJxdWl0IgorbXNnc3RyICJRdWl0IChBdnNsdXRhKSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjIwMQorbXNnaWQgIlF1aXQgQjxkc2VsZWN0PiIKK21zZ3N0ciAiQXZzbHV0YXIgQjxkc2VsZWN0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjIwMworbXNnaWQgIkV4aXRzIHRoZSBwcm9ncmFtIHdpdGggemVybyAoc3VjY2Vzc2Z1bCkgZXJyb3Jjb2RlLiIKK21zZ3N0ciAiQXZzbHV0YXIgZHNlbGVjdCBtZWQgZmVsa29kIG5vbGwgKGx5Y2thdCkuIgorCisjLiB0eXBlOiBTSAorIzogZHNlbGVjdC4xOjIwNQorIywgbm8td3JhcAorbXNnaWQgIlBhY2thZ2Ugc2VsZWN0aW9ucyBtYW5hZ2VtZW50IgorbXNnc3RyICJQYWtldHZhbHNoYW50ZXJpbmciCisKKyMuIHR5cGU6IFNTCisjOiBkc2VsZWN0LjE6MjA3CisjLCBuby13cmFwCittc2dpZCAiSW50cm9kdWN0aW9uIgorbXNnc3RyICJJbnRyb2R1a3Rpb24iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToyMjMKK21zZ2lkICIiCisiQjxkc2VsZWN0PiBkaXJlY3RseSBleHBvc2VzIHRoZSBhZG1pbmlzdHJhdG9yIHRvIHNvbWUgb2YgdGhlIGNvbXBsZXhpdGllcyAiCisiaW52b2x2ZWQgd2l0aCBtYW5hZ2luZyBsYXJnZSBzZXRzIG9mIHBhY2thZ2VzIHdpdGggbWFueSBpbnRlcmRlcGVuZGVuY2llcy4gIgorIkZvciBhIHVzZXIgd2hvIGlzIHVuZmFtaWxpYXIgd2l0aCB0aGUgY29uY2VwdHMgYW5kIHRoZSB3YXlzIG9mIHRoZSBkZWJpYW4gIgorInBhY2thZ2UgbWFuYWdlbWVudCBzeXN0ZW0sIGl0IGNhbiBiZSBxdWl0ZSBvdmVyd2hlbG1pbmcuIEFsdGhvdWdoIEI8ZHNlbGVjdD4gIgorImlzIGFpbWVkIGF0IGVhc2luZyBwYWNrYWdlIG1hbmFnZW1lbnQgYW5kIGFkbWluaXN0cmF0aW9uLCBpdCBpcyBvbmx5ICIKKyJpbnN0cnVtZW50YWwgaW4gZG9pbmcgc28gYW5kIGNhbiBub3QgYmUgYXNzdW1lZCB0byBiZSBhIHN1ZmZpY2llbnQgIgorInN1YnN0aXR1dGUgZm9yIGFkbWluaXN0cmF0b3Igc2tpbGwgYW5kIHVuZGVyc3RhbmRpbmcuIFRoZSB1c2VyIGlzIHJlcXVpcmVkICIKKyJ0byBiZSBmYW1pbGlhciB3aXRoIHRoZSBjb25jZXB0cyB1bmRlcmx5aW5nIHRoZSBEZWJpYW4gcGFja2FnaW5nIHN5c3RlbS4gIEluICIKKyJjYXNlIG9mIGRvdWJ0LCBjb25zdWx0IHRoZSBCPGRwa2c+KDEpIG1hbnBhZ2UgYW5kIHRoZSBEZWJpYW4gUG9saWN5IG1hbnVhbCwgIgorImNvbnRhaW5lZCBpbiB0aGUgQjxkZWJpYW4tcG9saWN5PiBwYWNrYWdlLiIKK21zZ3N0ciAiIgorIkI8ZHNlbGVjdD4gdXRzw6R0dGVyIGRpcmVrdCBhZG1pbmlzdHJhdMO2cmVuIGbDtnIgZGVsYXIgYXYgZGVuIGtvbXBsZXhpdGV0IGRldCAiCisiaW5uZWLDpHIgYXR0IGhhbnRlcmEgc3RvcmEgbcOkbmdkZXIgcGFrZXQgbWVkIG3DpW5nYSBpbmLDtnJkZXMgYmVyb2VuZGVuLiBGw7ZyIGVuICIKKyJhbnbDpG5kYXJlIHNvbSBpbnRlIMOkciBuw6RyYSBmw7ZydHJvZ2VuIG1lZCBrb25jZXB0ZW4gb2NoIGh1ciBEZWJpYW5zICIKKyJwYWtldGhhbnRlcmluZ3NzeXN0ZW0gZnVuZ2VyYXIga2FuIGRldCB0ZSBzaWcgcsOkdHQgc8OlIMO2dmVydsOkbGRpZ2FuZGUuIFRyb3RzICIKKyJhdHQgQjxkc2VsZWN0PnMgbcOlbHPDpHR0bmluZyDDpHIgYXR0IGbDtnJlbmtsYSBhZG1pbmlzdHJhdGlvbiBvY2ggaGFudGVyaW5nIGF2ICIKKyJwYWtldCDDpHIgZGV0IGJhcmEgZW4gZGVsIGF2IGhlbGhldGVuLCBvY2gga2FuIGludGUgYW50YXMgdmFyYSBldHQgIgorInRpbGxyw6Rja2xpZ3Qgc3Vic3RpdHV0IGbDtnIgYWRtaW5pc3RyYXTDtnJzZsOkcmRpZ2hldCBvY2ggLWbDtnJzdMOlZWxzZS4gIgorIkFudsOkbmRhcmVuIMOkciB0dnVuZ2VuIGF0dCBoYSBrdW5za2FwIG9tIGRldCB1bmRlcmxpZ2dhbmRlIHBha2V0c3lzdGVtZXQgaSAiCisiRGViaWFuLiBPbSB0dml2ZWwgZsO2cmVsaWdnZXIsIGtvbnN1bHRlcmEgbWFudWFsc2lkYW4gQjxkcGtnPigxKSBvY2ggRGViaWFucyAiCisicG9saWN5bWFudWFsLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjIyOQorbXNnaWQgIiIKKyJVbmxlc3MgQjxkc2VsZWN0PiBpcyBydW4gaW4gZXhwZXJ0IG9yIGltbWVkaWF0ZSBtb2RlLCBhIGhlbHAgc2NyZWVuIGlzIGZpcnN0ICIKKyJkaXNwbGF5ZWQgd2hlbiBjaG9vc2luZyB0aGlzIGFjdGlvbiBmcm9tIHRoZSBtZW51LiBUaGUgdXNlciBpcyBJPHN0cm9uZ2x5PiAiCisiYWR2aXNlZCB0byBzdHVkeSBhbGwgb2YgdGhlIGluZm9ybWF0aW9uIHByZXNlbnRlZCBpbiB0aGUgb25saW5lIGhlbHAgIgorInNjcmVlbnMsIHdoZW4gb25lIHBvcHMgdXAuICBUaGUgb25saW5lIGhlbHAgc2NyZWVucyBjYW4gYXQgYW55IHRpbWUgYmUgIgorImludm9rZWQgd2l0aCB0aGUgQjwnPyc+IGtleS4iCittc2dzdHIgIiIKKyJTw6UgbMOkbmdlIGludGUgQjxkc2VsZWN0PiBrw7ZycyBpIGV4cGVydC0gZWxsZXIgZGlyZWt0bMOkZ2UgdmlzYXMgZW4gaGrDpGxwc2vDpHJtICIKKyJmw7Zyc3QgbsOkciB2YWwgZ8O2cnMgaSBtZW55bi4gIEFudsOkbmRhcmVuIHJla29tbWVuZGVyYXMgSTzDpSBkZXQgYmVzdMOkbWRhc3RlPiAiCisiYXR0IHN0dWRlcmEgYWxsIGluZm9ybWF0aW9uIHNvbSBmaW5ucyBpIGRpcmVrdGhqw6RscHNrw6RybWFybmEgbsOkciBkZSBkeWtlciAiCisidXBwLiBEaXJla3RoasOkbHBza8Okcm1hcm5hIGthbiBuw6RyIHNvbSBoZWxzdCBuw6VzIHZpYSB0YW5nZW50ZW4gQjxcIj9cIj4uIgorCisjLiB0eXBlOiBTUworIzogZHNlbGVjdC4xOjIzMAorIywgbm8td3JhcAorbXNnaWQgIlNjcmVlbiBsYXlvdXQiCittc2dzdHIgIlNrw6RybXV0c2VlbmRlIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MjM4Cittc2dpZCAiIgorIlRoZSBzZWxlY3Qgc2NyZWVuIGlzIGJ5IGRlZmF1bHQgc3BsaXQgaW4gYSB0b3AgYW5kIGEgYm90dG9tIGhhbGYuICBUaGUgdG9wICIKKyJoYWxmIHNob3dzIGEgbGlzdCBvZiBwYWNrYWdlcy4gQSBjdXJzb3IgYmFyIGNhbiBzZWxlY3QgYW4gaW5kaXZpZHVhbCAiCisicGFja2FnZSwgb3IgYSBncm91cCBvZiBwYWNrYWdlcywgaWYgYXBwbGljYWJsZSwgYnkgc2VsZWN0aW5nIHRoZSBncm91cCAiCisiaGVhZGVyLiBUaGUgYm90dG9tIGhhbGYgb2YgdGhlIHNjcmVlbiBzaG93cyBzb21lIGRldGFpbHMgYWJvdXQgdGhlIHBhY2thZ2UgIgorImN1cnJlbnRseSBzZWxlY3RlZCBpbiB0aGUgdG9wIGhhbGYgb2YgdGhlIHNjcmVlbi4gIFRoZSB0eXBlIG9mIGRldGFpbCB0aGF0ICIKKyJpcyBkaXNwbGF5ZWQgY2FuIGJlIHZhcmllZC4iCittc2dzdHIgIiIKKyJWYWxza8Okcm1lbiDDpHIgbm9ybWFsdCBkZWxhdCBpIGVuIMO2dnJlIG9jaCBlbiBuZWRyZSBoYWx2YS4gRGVuIMO2dnJlIGhhbHZhbiAiCisidmlzYXIgZW4gbGlzdGEgw7Z2ZXIgcGFrZXQ7IGVuIG1hcmtlcmluZ3NyYWQga2FuIHbDpGxqYSBwYWtldCBpbmRpdmlkdWVsbHQgIgorImVsbGVyIGkgZ3J1cHAgKG7DpHIgdGlsbMOkbXBsaWd0KSBnZW5vbSBhdHQgdsOkbGphIGVuIGdydXBwcnVicmlrLiBEZW4gbmVkcmUgIgorImhhbHZhbiBhdiBza8Okcm1lbiB2aXNhciBkZXRhbGplciBvbSBkZXQgcGFrZXQgc29tIGp1c3QgbnUgdmlzYXMgaSBkZW4gw7Z2cmUgIgorImhhbHZhbi4gVmlsa2VuIHNvcnRzIGRldGFsamVyIHNvbSB2aXNhcyBrYW4gdmFyaWVyYXMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MjQxCittc2dpZCAiIgorIlByZXNzaW5nIHRoZSBCPCdJJz4ga2V5IHRvZ2dsZXMgYSBmdWxsLXNjcmVlbiBkaXNwbGF5IG9mIHRoZSBwYWNrYWdlcyBsaXN0LCAiCisiYW4gZW5sYXJnZWQgdmlldyBvZiB0aGUgcGFja2FnZSBkZXRhaWxzLCBvciB0aGUgZXF1YWxseSBzcGxpdCBzY3JlZW4uIgorbXNnc3RyICIiCisiR2Vub20gYXR0IHRyeWNrYSBCPFwiSVwiPiB2w6R4bGFzIHZ5biBtZWxsYW4gZW4gZnVsbHNrw6RybXN2aXNuaW5nIGF2ICIKKyJwYWtldGxpc3RhbiwgZW4gZsO2cnN0b3JhZCB2eSBmw7ZyIHBha2V0ZGV0YWxqZXIsIGVsbGVyIGVuIHNrw6RybSBtZWQgdHbDpSBsaWthICIKKyJzdG9yYSBkZWxhci4iCisKKyMuIHR5cGU6IFNTCisjOiBkc2VsZWN0LjE6MjQyCisjLCBuby13cmFwCittc2dpZCAiUGFja2FnZSBkZXRhaWxzIHZpZXciCittc2dzdHIgIlBha2V0ZGV0YWxqdnkiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToyNTEKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiVGhlIHBhY2thZ2UgZGV0YWlscyB2aWV3IGJ5IGRlZmF1bHQgc2hvd3MgdGhlIGV4dGVuZGVkIHBhY2thZ2UgZGVzY3JpcHRpb25cbiIKKyJmb3IgdGhlIHBhY2thZ2UgdGhhdCBpcyBjdXJyZW50bHkgc2VsZWN0ZWQgaW4gdGhlIHBhY2thZ2VzIHN0YXR1cyBsaXN0LlxuIgorIlRoZSB0eXBlIG9mIGRldGFpbCBjYW4gYmUgdG9nZ2xlZCBieSBwcmVzc2luZyB0aGUgQjwnaSc+IGtleS4gVGhpc1xuIgorImFsdGVybmF0ZXMgYmV0d2VlbjpcbiIKKyIgLSB0aGUgZXh0ZW5kZWQgZGVzY3JpcHRpb25cbiIKKyIgLSB0aGUgY29udHJvbCBpbmZvcm1hdGlvbiBmb3IgdGhlIGluc3RhbGxlZCB2ZXJzaW9uXG4iCisiIC0gdGhlIGNvbnRyb2wgaW5mb3JtYXRpb24gZm9yIHRoZSBhdmFpbGFibGUgdmVyc2lvblxuIgorbXNnc3RyICIiCisiUGFrZXRkZXRhbGp2eW4gdmlzYXIgbm9ybWFsdCBkZW4gdXTDtmthZGUgcGFrZXRiZXNrcml2bmluZ2VuIGbDtnIgZGV0IHBha2V0XG4iCisic29tIGp1c3QgbnUgw6RyIG1hcmtlcmF0IGkgcGFrZXR2YWxsaXN0YW4uXG4iCisiVmlsa2VuIHNvcnRzIGRldGFsamVyIHNvbSB2aXNhcyBrYW4gdsOkeGxhcyBnZW5vbSBhdHQgdHJ5Y2thIHDDpSBCPFwiaVwiPixcbiIKKyJ2aWxrZW4gdsOkeGxhciBtZWxsYW46XG4iCisiIC0gZGVuIHV0w7ZrYWRlIGJlc2tyaXZuaW5nZW5cbiIKKyIgLSBrb250cm9sbGluZm9ybWF0aW9uZW4gZsO2ciBkZW4gaW5zdGFsbGVyYWRlIHZlcnNpb25lblxuIgorIiAtIGtvbnRyb2xsaW5mb3JtYXRpb25lbiBmw7ZyIGRlbiB0aWxsZ8OkbmdsaWdhIHZlcnNpb25lblxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MjU1Cittc2dpZCAiIgorIkluIGEgZGVwZW5kZW5jeSByZXNvbHV0aW9uIHNjcmVlbiwgdGhlcmUgaXMgYWxzbyB0aGUgcG9zc2liaWxpdHkgb2Ygdmlld2luZyAiCisidGhlIHNwZWNpZmljIHVucmVzb2x2ZWQgZGVwZW5kcyBvciBjb25mbGljdHMgcmVsYXRlZCB0byB0aGUgcGFja2FnZSBhbmQgIgorImNhdXNpbmcgaXQgdG8gYmUgbGlzdGVkLiIKK21zZ3N0ciAiIgorIkkgZW4gYmVyb2VuZGVsw7ZzbmluZ3Nza8Okcm0gw6RyIGRldCDDpHZlbiBtw7ZqbGlndCBhdHQgdmlzYSBzcGVjaWZpa2EgIgorIm90aWxsZnJlZHNzdMOkbGxkYSBiZXJvZW5kZW4gZWxsZXIga29uZmxpa3RlciBmw7ZyIHBha2V0ZXQuIgorCisjLiB0eXBlOiBTUworIzogZHNlbGVjdC4xOjI1NgorIywgbm8td3JhcAorbXNnaWQgIlBhY2thZ2VzIHN0YXR1cyBsaXN0IgorbXNnc3RyICJQYWtldHN0YXR1c2xpc3RhIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MjYxCittc2dpZCAiIgorIlRoZSBtYWluIHNlbGVjdCBzY3JlZW4gZGlzcGxheXMgYSBsaXN0IG9mIGFsbCBwYWNrYWdlcyBrbm93biB0byB0aGUgZGViaWFuICIKKyJwYWNrYWdlIG1hbmFnZW1lbnQgc3lzdGVtLiBUaGlzIGluY2x1ZGVzIHBhY2thZ2VzIGluc3RhbGxlZCBvbiB0aGUgc3lzdGVtICIKKyJhbmQgcGFja2FnZXMga25vd24gZnJvbSB0aGUgYXZhaWxhYmxlIHBhY2thZ2VzIGRhdGFiYXNlLiIKK21zZ3N0ciAiIgorIkh1dnVkdmFsc2vDpHJtZW4gdmlzYXIgZW4gbGlzdGEgw7Z2ZXIgc2FtdGxpZ2EgcGFrZXQgc29tIMOkciBrw6RuZGEgZsO2ciBEZWJpYW5zICIKKyJwYWtldGhhbnRlcmluZ3NzeXN0ZW0sIHZpbGtldCBpbmJlZ3JpcGVyIHBha2V0IGluc3RhbGxlcmFkZSBww6Ugc3lzdGVtZXQgb2NoICIKKyJwYWtldCBrw6RuZGEgZnLDpW4gZGF0YWJhc2VuIMO2dmVyIHRpbGxnw6RuZ2xpZ2EgcGFrZXQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MjY5Cittc2dpZCAiIgorIkZvciBldmVyeSBwYWNrYWdlLCB0aGUgbGlzdCBzaG93cyB0aGUgcGFja2FnZSdzIHN0YXR1cywgcHJpb3JpdHksIHNlY3Rpb24sICIKKyJpbnN0YWxsZWQgYW5kIGF2YWlsYWJsZSB2ZXJzaW9ucywgdGhlIHBhY2thZ2UgbmFtZSBhbmQgaXRzIHNob3J0ICIKKyJkZXNjcmlwdGlvbiwgYWxsIGluIG9uZSBsaW5lLiBCeSBwcmVzc2luZyB0aGUgQjwnVic+IGtleSwgdGhlIGRpc3BsYXkgb2YgdGhlICIKKyJpbnN0YWxsZWQgYW5kIGF2YWlsYWJsZSB2ZXJzaW9uIGNhbiBiZSB0b2dnbGVkIGJldHdlZW4gb24gYW4gb2ZmLiBCeSAiCisicHJlc3NpbmcgdGhlIEI8J3YnPiBrZXksIHRoZSBwYWNrYWdlIHN0YXR1cyBkaXNwbGF5IGlzIHRvZ2dsZWQgYmV0d2VlbiAiCisidmVyYm9zZSBhbmQgc2hvcnRoYW5kLiAgU2hvcnRoYW5kIGRpc3BsYXkgaXMgdGhlIGRlZmF1bHQuIgorbXNnc3RyICIiCisiRsO2ciB2YXJqZSBwYWtldCB2aXNhciBsaXN0YW4gcGFrZXRldHMgc3RhdHVzLCBwcmlvcml0ZXQsIGF2ZGVsbmluZywgIgorImluc3RhbGxlcmFkZSBvY2ggdGlsbGfDpG5nbGlnYSB2ZXJzaW9uZXIsIHBha2V0ZXRzIG5hbW4gb2NoIGRlc3Mga29ydGEgIgorImJlc2tyaXZuaW5nLCBhbGx0IHDDpSBlbiByYWQuIEdlbm9tIGF0dCB0cnlja2EgcMOlIHRhbmdlbnRlbiBCPFwiVlwiPiBzbMOlcyAiCisidmlzbmluZ2VuIGF2IGRlbiBpbnN0YWxsZXJhZGUgb2NoIGRlbiBha3RpdmEgdmVyc2lvbmVuIHDDpSBvY2ggYXYuIEdlbm9tIGF0dCAiCisidHJ5Y2thIHDDpSB0YW5nZW50ZW4gQjxcInZcIj4gdsOkeGxhcyBwYWtldHN0YXR1c3Zpc25pbmdlbiBtZWxsYW4gb3JkcmlrIG9jaCAiCisiZsO2cmtvcnRhZCwgbWVkIGRlbiBmw7Zya29ydGFkZSB2aXNuaW5nZW4gc29tIGbDtnJ2YWwuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6Mjc1Cittc2dpZCAiIgorIlRoZSBzaG9ydGhhbmQgc3RhdHVzIGluZGljYXRpb24gY29uc2lzdHMgb2YgZm91ciBwYXJ0czogYW4gZXJyb3IgZmxhZywgd2hpY2ggIgorInNob3VsZCBub3JtYWxseSBiZSBjbGVhciwgdGhlIGN1cnJlbnQgc3RhdHVzLCB0aGUgbGFzdCBzZWxlY3Rpb24gc3RhdGUgYW5kICIKKyJ0aGUgY3VycmVudCBzZWxlY3Rpb24gc3RhdGUuICBUaGUgZmlyc3QgdHdvIHJlbGF0ZSB0byB0aGUgYWN0dWFsIHN0YXRlIG9mICIKKyJ0aGUgcGFja2FnZSwgdGhlIHNlY29uZCBwYWlyIGFyZSBhYm91dCB0aGUgc2VsZWN0aW9ucyBzZXQgYnkgdGhlIHVzZXIuIgorbXNnc3RyICIiCisiRGVuIGbDtnJrb3J0YWRlIHN0YXR1c2luZGlrZXJpbmdlbiBiZXN0w6VyIGF2IGZ5cmEgZGVsYXI6IGVuIGZlbGZsYWdnYSwgdmlsa2VuICIKKyJub3JtYWx0IHNrYWxsIHZhcmEgYmxhbmssIGFrdHVlbGwgc3RhdHVzLCBzZW5hc3QgdmFsZCBzdGF0dXMgb2NoIG51IHZhbGQgIgorInN0YXR1cy4gRGUgZsO2cnN0YSB0dsOlIGFuZ2VyIHBha2V0ZXRzIGZha3Rpc2thIHN0YXR1cywgZGV0IGFuZHJhIHBhcmV0ICIKKyJiZXNrcml2ZXIgdmFsZXQgc29tIGdqb3J0cyBhdiBhbnbDpG5kYXJlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMToyOTMKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiVGhlc2UgYXJlIHRoZSBtZWFuaW5ncyBvZiB0aGUgc2hvcnRoYW5kIHBhY2thZ2Ugc3RhdHVzIGluZGljYXRvciBjb2RlczpcbiIKKyIgRXJyb3IgZmxhZzpcbiIKKyIgIEk8ZW1wdHk+ICAgbm8gZXJyb3JcbiIKKyIgIEI8Uj4gICAgICAgc2VyaW91cyBlcnJvciwgbmVlZHMgcmVpbnN0YWxsYXRpb247XG4iCisiIEluc3RhbGxlZCBzdGF0ZTpcbiIKKyIgIEk8ZW1wdHk+ICAgbm90IGluc3RhbGxlZDtcbiIKKyIgIEI8Kj4gICAgICAgZnVsbHkgaW5zdGFsbGVkIGFuZCBjb25maWd1cmVkO1xuIgorIiAgQjwtPiAgICAgICBub3QgaW5zdGFsbGVkIGJ1dCBzb21lIGNvbmZpZyBmaWxlcyBtYXkgcmVtYWluO1xuIgorIiAgQjxVPiAgICAgICB1bnBhY2tlZCBidXQgbm90IHlldCBjb25maWd1cmVkO1xuIgorIiAgQjxDPiAgICAgICBoYWxmLWNvbmZpZ3VyZWQgKGFuIGVycm9yIGhhcHBlbmVkKTtcbiIKKyIgIEI8ST4gICAgICAgaGFsZi1pbnN0YWxsZWQgKGFuIGVycm9yIGhhcHBlbmVkKS5cbiIKKyIgQ3VycmVudCBhbmQgcmVxdWVzdGVkIHNlbGVjdGlvbnM6XG4iCisiICBCPCo+ICAgICAgIG1hcmtlZCBmb3IgaW5zdGFsbGF0aW9uIG9yIHVwZ3JhZGU7XG4iCisiICBCPC0+ICAgICAgIG1hcmtlZCBmb3IgcmVtb3ZhbCwgY29uZmlndXJhdGlvbiBmaWxlcyByZW1haW47XG4iCisiICBCPD0+ICAgICAgIG9uIGhvbGQ6IHBhY2thZ2Ugd2lsbCBub3QgYmUgcHJvY2Vzc2VkIGF0IGFsbDtcbiIKKyIgIEI8Xz4gICAgICAgbWFya2VkIGZvciBwdXJnZSwgYWxzbyByZW1vdmUgY29uZmlndXJhdGlvbjtcbiIKKyIgIEI8bj4gICAgICAgcGFja2FnZSBpcyBuZXcgYW5kIGhhcyB5ZXQgdG8gYmUgbWFya2VkLlxuIgorbXNnc3RyICIiCisiRGV0dGEgw6RyIHZhZCBkZSBvbGlrYSBwYWtldHN0YXR1c2luZGlrYXRvcmVybmEgaSBkZXQgZsO2cmtvcnRhZGUgbMOkZ2V0XG4iCisiYmV0eWRlcjpcbiIKKyIgRmVsZmxhZ2dhOlxuIgorIiAgSTx0b20+ICAgICBpbmdldCBmZWxcbiIKKyIgIEI8Uj4gICAgICAgYWxsdmFybGlndCBmZWwsIGtyw6R2ZXIgb21pbnN0YWxsYXRpb25cbiIKKyIgSW5zdGFsbGVyYWQgc3RhdHVzOlxuIgorIiAgSTx0b20+ICAgICBlaiBpbnN0YWxsZXJhdFxuIgorIiAgQjwqPiAgICAgICBoZWx0IGluc3RhbGxlcmF0IG9jaCBrb25maWd1cmVyYXRcbiIKKyIgIEI8LT4gICAgICAgZWogaW5zdGFsbGVyYXQsIG1lbiBrb25maWd1cmF0aW9uc2ZpbGVyIGthbiBrdmFyc3TDpVxuIgorIiAgQjxVPiAgICAgICB1cHBhY2thdCBtZW4gw6RubnUgZWoga29uZmlndXJlcmF0XG4iCisiICBCPEM+ICAgICAgIGhhbHZrb25maWd1cmVyYXQgKGV0dCBmZWwgdXBwc3RvZClcbiIKKyIgIEI8ST4gICAgICAgaGFsdmluc3RhbGxlcmF0IChldHQgZmVsIHVwcHN0b2QpXG4iCisiIEFrdHVlbGxhIG9jaCBiZWfDpHJkYSB2YWw6XG4iCisiICBCPCo+ICAgICAgIG1hcmtlcmF0IGbDtnIgaW5zdGFsbGF0aW9uIGVsbGVyIHVwcGdyYWRlcmluZ1xuIgorIiAgQjwtPiAgICAgICBtYXJrZXJhdCBmw7ZyIGJvcnR0YWduaW5nLCBrb25maWd1cmF0aW9uc2ZpbGVyIGzDpG1uYXMga3ZhclxuIgorIiAgQjw9PiAgICAgICBow6VsbDogcGFrZXRldCBrb21tZXIgaW50ZSBhdHQgcsO2cmFzIGFsbHNcbiIKKyIgIEI8Xz4gICAgICAgbWFya2VyYXQgZsO2ciBib3J0dGFnbmluZywgdGFyIMOkdmVuIGJvcnQga29uZmlndXJhdGlvblxuIgorIiAgQjxuPiAgICAgICBwYWtldGV0IMOkciBueXR0IG9jaCBoYXIgw6RubnUgaW50ZSBtYXJrZXJhdHNcbiIKKworIy4gdHlwZTogU1MKKyM6IGRzZWxlY3QuMToyOTQKKyMsIG5vLXdyYXAKK21zZ2lkICJDdXJzb3IgYW5kIHNjcmVlbiBtb3ZlbWVudCIKK21zZ3N0ciAiTWFya8O2ci0gb2NoIHNrw6RybXLDtnJlbHNlciIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjI5OQorbXNnaWQgIiIKKyJUaGUgcGFja2FnZSBzZWxlY3Rpb24gbGlzdCBhbmQgdGhlIGRlcGVuZGVuY3kgY29uZmxpY3QgcmVzb2x1dGlvbiBzY3JlZW5zICIKKyJjYW4gYmUgbmF2aWdhdGVkIHVzaW5nIG1vdGlvbiBjb21tYW5kcyBtYXBwZWQgdG8gdGhlIGZvbGxvd2luZyBrZXlzOiIKK21zZ3N0ciAiIgorIlBha2V0dmFsbGlzdGFuIG9jaCBiZXJvZW5kZWtvbmZsaWt0c2zDtnNuaW5nbnNrw6RybWFybmEga2FuIG5hdmlnZXJhcyBnZW5vbSAiCisiYXR0IGFudsOkbmRhIHLDtnJlbHNla29tbWFuZG9uIGtvcHBsYWRlIHRpbGwgZsO2bGphbmRlIHRhbmdlbnRlcjoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTozMTYKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiICBCPHAsIFVwLCBrPiAgICAgICAgICAgbW92ZSBjdXJzb3IgYmFyIHVwXG4iCisiICBCPG4sIERvd24sIGo+ICAgICAgICAgbW92ZSBjdXJzb3IgYmFyIGRvd25cbiIKKyIgIEI8UCwgUGd1cCwgQmFja3NwYWNlPiBzY3JvbGwgbGlzdCAxIHBhZ2UgdXBcbiIKKyIgIEI8TiwgUGdkbiwgU3BhY2U+ICAgICBzY3JvbGwgbGlzdCAxIHBhZ2UgZG93blxuIgorIiAgQjxecD4gICAgICAgICAgICAgICAgIHNjcm9sbCBsaXN0IDEgbGluZSB1cFxuIgorIiAgQjxebj4gICAgICAgICAgICAgICAgIHNjcm9sbCBsaXN0IDEgbGluZSBkb3duXG4iCisiICBCPHQsIEhvbWU+ICAgICAgICAgICAganVtcCB0byB0b3Agb2YgbGlzdFxuIgorIiAgQjxlLCBFbmQ+ICAgICAgICAgICAgIGp1bXAgdG8gZW5kIG9mIGxpc3RcbiIKKyIgIEI8dT4gICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyAxIHBhZ2UgdXBcbiIKKyIgIEI8ZD4gICAgICAgICAgICAgICAgICBzY3JvbGwgaW5mbyAxIHBhZ2UgZG93blxuIgorIiAgQjxedT4gICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIDEgbGluZSB1cFxuIgorIiAgQjxeZD4gICAgICAgICAgICAgICAgIHNjcm9sbCBpbmZvIDEgbGluZSBkb3duXG4iCisiICBCPEIsIExlZnQtYXJyb3c+ICAgICAgcGFuIGRpc3BsYXkgMS8zIHNjcmVlbiBsZWZ0XG4iCisiICBCPEYsIFJpZ2h0LWFycm93PiAgICAgcGFuIGRpc3BsYXkgMS8zIHNjcmVlbiByaWdodFxuIgorIiAgQjxeYj4gICAgICAgICAgICAgICAgIHBhbiBkaXNwbGF5IDEgY2hhcmFjdGVyIGxlZnRcbiIKKyIgIEI8XmY+ICAgICAgICAgICAgICAgICBwYW4gZGlzcGxheSAxIGNoYXJhY3RlciByaWdodFxuIgorbXNnc3RyICIiCisiICBCPHAsIFVwcCwgaz4gICAgICAgICAgIGZseXR0YSBtYXJrZXJpbmdzcmFkIHVwcFxuIgorIiAgQjxuLCBOZWQsIGo+ICAgICAgICAgICBmbHl0dGEgbWFya2VyaW5nc3JhZCBuZWRcbiIKKyIgIEI8UCwgUGd1cCwgQmFrc3RlZz4gICAgcnVsbGEgbGlzdGEgMSBzaWRhIHVwcFxuIgorIiAgQjxOLCBQZ2RuLCBNZWxsYW5zbGFnPiBydWxsYSBsaXN0YSAxIHNpZGEgbmVkXG4iCisiICBCPF5wPiAgICAgICAgICAgICAgICAgIHJ1bGxhIGxpc3RhIDEgcmFkIHVwcFxuIgorIiAgQjxebj4gICAgICAgICAgICAgICAgICBydWxsYSBsaXN0YSAxIHJhZCBuZWRcbiIKKyIgIEI8dCwgSG9tZT4gICAgICAgICAgICAgaG9wcGEgdGlsbCBsaXN0YW5zIGLDtnJqYW5cbiIKKyIgIEI8ZSwgRW5kPiAgICAgICAgICAgICAgaG9wcGEgdGlsbCBsaXN0YW5zIHNsdXRcbiIKKyIgIEI8dT4gICAgICAgICAgICAgICAgICAgcnVsbGEgaW5mbyAxIHNpZGEgdXBwXG4iCisiICBCPGQ+ICAgICAgICAgICAgICAgICAgIHJ1bGxhIGluZm8gMSBzaWRhIG5lZFxuIgorIiAgQjxedT4gICAgICAgICAgICAgICAgICBydWxsYSBpbmZvIDEgcmFkIHVwcFxuIgorIiAgQjxeZD4gICAgICAgICAgICAgICAgICBydWxsYSBpbmZvIDEgcmFkIG5lZFxuIgorIiAgQjxCLCBWw6Ruc3RlcnBpbD4gICAgICAgcGFub3JlcmEgdnkgMS8zIHNrw6RybSB2w6Ruc3RlclxuIgorIiAgQjxGLCBIw7ZnZXJwaWw+ICAgICAgICAgcGFub3JlcmEgdnkgMS8zIHNrw6RybSBow7ZnZXJcbiIKKyIgIEI8XmI+ICAgICAgICAgICAgICAgICAgcGFub3JlcmEgdnkgMSB0ZWNrZW4gdsOkbnN0ZXJcbiIKKyIgIEI8XmY+ICAgICAgICAgICAgICAgICAgcGFub3JlcmEgdnkgMSB0ZWNrZW4gaMO2Z2VyXG4iCisKKyMuIHR5cGU6IFNTCisjOiBkc2VsZWN0LjE6MzE3CisjLCBuby13cmFwCittc2dpZCAiU2VhcmNoaW5nIGFuZCBzb3J0aW5nIgorbXNnc3RyICJTw7ZrbmluZyBvY2ggc29ydGVyaW5nIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6MzMxCittc2dpZCAiIgorIlRoZSBsaXN0IG9mIHBhY2thZ2VzIGNhbiBiZSBzZWFyY2hlZCBieSBwYWNrYWdlIG5hbWUuIFRoaXMgaXMgZG9uZSBieSAiCisicHJlc3NpbmcgQjwnLyc+LCBhbmQgdHlwaW5nIGEgc2ltcGxlIHNlYXJjaCBzdHJpbmcuIFRoZSBzdHJpbmcgaXMgIgorImludGVycHJldGVkIGFzIGEgQjxyZWdleD4oNykgIHJlZ3VsYXIgZXhwcmVzc2lvbi4gIElmIHlvdSBhZGQgQjwnL2QnPiB0byB0aGUgIgorInNlYXJjaCBleHByZXNzaW9uLCBkc2VsZWN0IHdpbGwgYWxzbyBzZWFyY2ggaW4gZGVzY3JpcHRpb25zLiBJZiB5b3UgYWRkIEI8Jy8iCisiaSc+IHRoZSBzZWFyY2ggd2lsbCBiZSBjYXNlIGluc2Vuc2l0aXZlLiAgWW91IG1heSBjb21iaW5lIHRoZXNlIHR3byBzdWZmaXhlcyAiCisibGlrZSB0aGlzOiBCPCcvaWQnPi4gIFJlcGVhdGVkIHNlYXJjaGluZyBpcyBhY2NvbXBsaXNoZWQgYnkgcmVwZWF0ZWRseSAiCisicHJlc3NpbmcgdGhlIEI8J24nPiBvciBCPCdcXGUnPiBrZXlzLCB1bnRpbCB0aGUgd2FudGVkIHBhY2thZ2UgaXMgZm91bmQuICBJZiAiCisidGhlIHNlYXJjaCByZWFjaGVzIHRoZSBib3R0b20gb2YgdGhlIGxpc3QsIGl0IHdyYXBzIHRvIHRoZSB0b3AgYW5kIGNvbnRpbnVlcyAiCisic2VhcmNoaW5nIGZyb20gdGhlcmUuIgorbXNnc3RyICIiCisiRGV0IGfDpXIgYXR0IHPDtmthIGkgcGFrZXRsaXN0YW4gZWZ0ZXIgcGFrZXRuYW1uLiBEZXR0YSBnw7ZycyBnZW5vbSBhdHQgdHJ5Y2thICIKKyJCPFwiL1wiPiBvY2ggYW5nZSBlbiBlbmtlbCBzw7Zrc3Ryw6RuZy4gU3Ryw6RuZ2VuIHRvbGthcyBzb20gZXR0IHJlZ3VsasOkcnQgIgorInV0dHJ5Y2sgZW5saWd0IEI8cmVnZXg+KDcpLiBPbSBkdSBsw6RnZ2VyIHRpbGwgQjxcIi9kXCI+IHRpbGwgc8O2a3V0dHJ5Y2tldCAiCisia29tbWVyIGRzZWxlY3Qgw6R2ZW4gc8O2a2EgYmVza3Jpdm5pbmdhci4gT20gZHUgbMOkZ2dlciB0aWxsIEI8XCIvaVwiPiBrb21tZXIgIgorInPDtmtuaW5nZW4gYXR0IGlnbm9yZXJhIHNraWxsbmFkZXIgbWVsbGFuIGdlbWVuZXIgb2NoIHZlcnNhbGVyLiBEdSBrYW4gIgorImtvbWJpbmVyYSBkZXNzYSBiw6VkYSBzdWZmaXggc8OlIGjDpHI6IEI8XCIvaWRcIj4uIFPDtmtuaW5nZW4ga2FuIHVwcHJlcGFzIGdlbm9tICIKKyJhdHQgdHJ5Y2thIHDDpSBCPFwiblwiPiBlbGxlciBCPFwiXFxlXCI+IHRpbGxzIGRldCDDtm5za2FkZSBwYWtldGV0IGhpdHRhcy4gT20gIgorInPDtmtuaW5nZW4gbsOlciBzbHV0ZXQgcMOlIGxpc3RhbiBob3BwYXIgZGVuIHRpbGwgYsO2cmphbiBvY2ggZm9ydHPDpHR0ZXIgIgorInPDtmtuaW5nZW4gZMOkcmlmcsOlbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTozMzgKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiVGhlIGxpc3Qgc29ydCBvcmRlciBjYW4gYmUgdmFyaWVkIGJ5IHByZXNzaW5nXG4iCisidGhlIEI8J28nPiBhbmQgQjwnTyc+IGtleXMgcmVwZWF0ZWRseS5cbiIKKyJUaGUgZm9sbG93aW5nIG5pbmUgc29ydCBvcmRlcmluZ3MgY2FuIGJlIHNlbGVjdGVkOlxuIgorIiBhbHBoYWJldCAgICAgICAgICBhdmFpbGFibGUgICAgICAgICAgIHN0YXR1c1xuIgorIiBwcmlvcml0eStzZWN0aW9uICBhdmFpbGFibGUrcHJpb3JpdHkgIHN0YXR1cytwcmlvcml0eVxuIgorIiBzZWN0aW9uK3ByaW9yaXR5ICBhdmFpbGFibGUrc2VjdGlvbiAgIHN0YXR1cytzZWN0aW9uXG4iCittc2dzdHIgIiIKKyJMaXN0YW5zIHNvcnRlcmluZ3NvcmRuaW5nIGthbiDDpG5kcmFzIGdlbm9tIGF0dCB0cnlja2EgcMOlIHRhbmdlbnRlcm5hXG4iCisiQjxcIm9cIj4gb2NoIEI8XCJPXCI+IHVwcHJlcGFkZSBnw6VuZ2VyLlxuIgorIkbDtmxqYW5kZSBuaW8gc29ydGVyaW5nc29yZG5pbmdhciBrYW4gdsOkbGphczpcbiIKKyIgYWxmYWJldGlzayAgICAgICAgIHRpbGxnw6RuZ2xpZyAgICAgICAgICAgIHN0YXR1c1xuIgorIiBwcmlvcml0ZXQrc2VrdGlvbiAgdGlsbGfDpG5nbGlnK3ByaW9yaXRldCAgc3RhdHVzK3ByaW9yaXRldFxuIgorIiBzZWt0aW9uK3ByaW9yaXRldCAgdGlsbGfDpG5nbGlnK3Nla3Rpb24gICAgc3RhdHVzK3Nla3Rpb25cbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjM0MQorbXNnaWQgIiIKKyJXaGVyZSBub3QgbGlzdGVkIGFib3ZlIGV4cGxpY2l0bHksIGFscGhhYmV0aWMgb3JkZXIgaXMgdXNlZCBhcyB0aGUgZmluYWwgIgorInN1Ym9yZGVyaW5nIHNvcnQga2V5LiIKK21zZ3N0ciAiIgorIk7DpHIgZGV0IGludGUgYW5nZXMgZXhwbGljaXQgb3ZhbiBhbnbDpG5kcyBhbGZhYmV0aXNrIG9yZG5pbmcgc29tIGRlbiBzbHV0bGlnYSAiCisic29ydGVyaW5nc255Y2tlbG4uIgorCisjLiB0eXBlOiBTUworIzogZHNlbGVjdC4xOjM0MgorIywgbm8td3JhcAorbXNnaWQgIkFsdGVyaW5nIHNlbGVjdGlvbnMiCittc2dzdHIgIsOEbmRyYSB2YWwiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTozNTEKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiVGhlIHJlcXVlc3RlZCBzZWxlY3Rpb24gc3RhdGUgb2YgaW5kaXZpZHVhbCBwYWNrYWdlcyBtYXkgYmVcbiIKKyJhbHRlcmVkIHdpdGggdGhlIGZvbGxvd2luZyBjb21tYW5kczpcbiIKKyIgIEI8KywgSW5zZXJ0PiAgICBpbnN0YWxsIG9yIHVwZ3JhZGVcbiIKKyIgIEI8PSwgSD4gICAgICAgICBob2xkIGluIHByZXNlbnQgc3RhdGUgYW5kIHZlcnNpb25cbiIKKyIgIEI8OiwgRz4gICAgICAgICB1bmhvbGQ6IHVwZ3JhZGUgb3IgbGVhdmUgdW5pbnN0YWxsZWRcbiIKKyIgIEI8LSwgRGVsZXRlPiAgICByZW1vdmUsIGJ1dCBsZWF2ZSBjb25maWd1cmF0aW9uXG4iCisiICBCPF8+ICAgICAgICAgICAgcmVtb3ZlICYgcHVyZ2UgY29uZmlndXJhdGlvblxuIgorbXNnc3RyICIiCisiRGVuIGJlZ8OkcmRhIHZhbHN0YXR1c2VuIGbDtnIgdmFyamUgaW5kaXZpZHVlbGx0IHBha2V0IGthbiDDpG5kcmFzIG1lZCBmw7ZsamFuZGVcbiIKKyJrb21tYW5kb246XG4iCisiICBCPCssIEluc2VydD4gICAgaW5zdGFsbGVyYSBlbGxlciB1cHBncmFkZXJhXG4iCisiICBCPD0sIEg+ICAgICAgICAgaMOlbGwgaSBha3R1ZWxsdCB0aWxsc3TDpW5kIG9jaCB2ZXJzaW9uXG4iCisiICBCPDosIEc+ICAgICAgICAgYXZicnl0IGjDpWxsOiB1cHBncmFkZXJhIGVsbGVyIGzDpG1uYSBvaW5zdGFsbGVyYWRcbiIKKyIgIEI8LSwgRGVsZXRlPiAgICB0YSBib3J0LCBtZW4gbMOkbW5hIGt2YXIga29uZmlndXJhdGlvblxuIgorIiAgQjxfPiAgICAgICAgICAgIHRhIGJvcnQgb2NoIHJhZGVyYSBrb25maWd1cmF0aW9uXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTozNTUKK21zZ2lkICIiCisiV2hlbiB0aGUgY2hhbmdlIHJlcXVlc3QgcmVzdWx0cyBpbiBvbmUgb3IgbW9yZSB1bnNhdGlzZmllZCBkZXBlbmRzIG9yICIKKyJjb25mbGljdHMsIEI8ZHNlbGVjdD4gcHJvbXB0cyB0aGUgdXNlciB3aXRoIGEgZGVwZW5kZW5jeSByZXNvbHV0aW9uIHNjcmVlbi4gIgorIlRoaXMgd2lsbCBiZSBmdXJ0aGVyIGV4cGxhaW5lZCBiZWxvdy4iCittc2dzdHIgIiIKKyJOw6RyIMOkbmRyaW5nYXIgc29tIGbDpXIgZW4gZWxsZXIgZmxlcmEgb3RpbGxmcmVkc3N0w6RsbGRhIGJlcm9lbmRlbiBlbGxlciAiCisia29uZmxpa3RlciB0aWxsIGbDtmxqZCBnw7ZycywgZnLDpWdhciBCPGRzZWxlY3Q+IGFudsOkbmRhcmVuIG1lZCBlbiAiCisiYmVyb2VuZGVsw7ZzbmluZ3Nza8Okcm0sIHZpbGtlbiBiZXNrcml2cyB5dHRlcmxpZ2FyZSBuZWRhbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTozNjAKK21zZ2lkICIiCisiSXQgaXMgYWxzbyBwb3NzaWJsZSB0byBhcHBseSB0aGVzZSBjb21tYW5kcyB0byBncm91cHMgb2YgcGFja2FnZSBzZWxlY3Rpb25zLCAiCisiYnkgcG9pbnRpbmcgdGhlIGN1cnNvciBiYXIgb250byBhIGdyb3VwIGhlYWRlci4gVGhlIGV4YWN0IGdyb3VwaW5nIG9mICIKKyJwYWNrYWdlcyBpcyBkZXBlbmRlbnQgb24gdGhlIGN1cnJlbnQgbGlzdCBvcmRlcmluZyBzZXR0aW5ncy4iCittc2dzdHIgIiIKKyJEZXQgw6RyIMOkdmVuIG3DtmpsaWd0IGF0dCBhcHBsaWNlcmEgZGVzc2Ega29tbWFuZG9uIHDDpSBncnVwcGVyIGF2IHBha2V0dmFsLCAiCisiZ2Vub20gYXR0IHBla2EgbWFya2VyaW5nc3JhZGVuIHDDpSBlbiBncnVwcHJ1YnJpay4gRXhha3QgaHVyIHBha2V0ZW4gIgorImdydXBwZXJhcyBiZXJvciBww6Ugdmlsa2VuIGxpc3RvcmRuaW5nIHNvbSBmw7ZyIHRpbGxmw6RsbGV0IGFudsOkbmRzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjM2NgorbXNnaWQgIiIKKyJQcm9wZXIgY2FyZSBzaG91bGQgYmUgdGFrZW4gd2hlbiBhbHRlcmluZyBsYXJnZSBncm91cHMgb2Ygc2VsZWN0aW9ucywgIgorImJlY2F1c2UgdGhpcyBjYW4gaW5zdGFudGFuZW91c2x5IGNyZWF0ZSBsYXJnZSBudW1iZXJzIG9mIHVucmVzb2x2ZWQgZGVwZW5kcyAiCisib3IgY29uZmxpY3RzLCBhbGwgb2Ygd2hpY2ggd2lsbCBiZSBsaXN0ZWQgaW4gb25lIGRlcGVuZGVuY3kgcmVzb2x1dGlvbiAiCisic2NyZWVuLCBtYWtpbmcgdGhlbSB2ZXJ5IGhhcmQgdG8gaGFuZGxlLiBJbiBwcmFjdGljZSwgb25seSBob2xkIGFuZCB1bmhvbGQgIgorIm9wZXJhdGlvbnMgYXJlIHVzZWZ1bCB3aGVuIGFwcGxpZWQgdG8gZ3JvdXBzLiIKK21zZ3N0ciAiIgorIk7DtmR2w6RuZGlnYSBmw7Zyc2lrdGlnaGV0c8OldGfDpHJkZXIgYsO2ciB0YXMgbsOkciDDpG5kcmluZ2FyIGfDtnJzIHDDpSBzdG9yYSAiCisiZ3J1cHBtYXJrZXJpbmdhciwgZWZ0ZXJzb20gZGV0IG1lZCBlbiBnw6VuZyBrYW4gZ2Ugc3RvcmEgbcOkbmdkZXIgIgorIm90aWxsZnJlZHNzdMOkbGxkYSBiZXJvZW5kZW4gZWxsZXIga29uZmxpa3Rlciwgdmlsa2EgYWxsYSBrb21tZXIgYXR0IHZpc2FzIHDDpSAiCisiZW4gYmVyb2VuZGVsw7ZzbmluZ3Nza8Okcm0sIHZpbGtldCBnw7ZyIGRlbSBteWNrZXQgc3bDpXJhIGF0dCBoYW50ZXJhLiBJICIKKyJwcmFrdGlrZW4gw6RyIGJhcmEgaMOlbGwta29tbWFuZG90IG9jaCBkZXNzIG1vdHNhdHMgYW52w6RuZGJhcmEgcMOlIGdydXBwZXIuIgorCisjLiB0eXBlOiBTUworIzogZHNlbGVjdC4xOjM2NworIywgbm8td3JhcAorbXNnaWQgIlJlc29sdmluZyBkZXBlbmRzIGFuZCBjb25mbGljdHMiCittc2dzdHIgIkzDtnNhIGJlcm9lbmRlbiBvY2gga29uZmxpa3RlciIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjM3MgorbXNnaWQgIiIKKyJXaGVuIHRoZSBjaGFuZ2UgcmVxdWVzdCByZXN1bHRzIGluIG9uZSBvciBtb3JlIHVuc2F0aXNmaWVkIGRlcGVuZHMgb3IgIgorImNvbmZsaWN0cywgQjxkc2VsZWN0PiBwcm9tcHRzIHRoZSB1c2VyIHdpdGggYSBkZXBlbmRlbmN5IHJlc29sdXRpb24gc2NyZWVuLiAiCisiRmlyc3QgaG93ZXZlciwgYW4gaW5mb3JtYXRpdmUgaGVscCBzY3JlZW4gaXMgZGlzcGxheWVkLiIKK21zZ3N0ciAiIgorIk7DpHIgw6RuZHJpbmdhciBzb20gZsOlciBlbiBlbGxlciBmbGVyYSBvdGlsbGZyZWRzc3TDpGxsZGEgYmVyb2VuZGVuIGVsbGVyICIKKyJrb25mbGlrdGVyIHRpbGwgZsO2bGpkIGfDtnJzLCBmcsOlZ2FyIEI8ZHNlbGVjdD4gYW52w6RuZGFyZW4gbWVkIGVuICIKKyJiZXJvZW5kZWzDtnNuaW5nc3Nrw6RybS4gRsO2cnN0IHZpc2FzIGRvY2sgZW4gaW5mb3JtYXRpdiBoasOkbHBza8Okcm0uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6Mzc5Cittc2dpZCAiIgorIlRoZSB0b3AgaGFsZiBvZiB0aGlzIHNjcmVlbiBsaXN0cyBhbGwgdGhlIHBhY2thZ2VzIHRoYXQgd2lsbCBoYXZlIHVucmVzb2x2ZWQgIgorImRlcGVuZHMgb3IgY29uZmxpY3RzLCBhcyBhIHJlc3VsdCBvZiB0aGUgcmVxdWVzdGVkIGNoYW5nZSwgYW5kIGFsbCB0aGUgIgorInBhY2thZ2VzIHdob3NlIGluc3RhbGxhdGlvbiBjYW4gcmVzb2x2ZSBhbnkgb2YgdGhlc2UgZGVwZW5kcyBvciB3aG9zZSAiCisicmVtb3ZhbCBjYW4gcmVzb2x2ZSBhbnkgb2YgdGhlIGNvbmZsaWN0cy4gIFRoZSBib3R0b20gaGFsZiBkZWZhdWx0cyB0byBzaG93ICIKKyJ0aGUgZGVwZW5kcyBvciBjb25mbGljdHMgdGhhdCBjYXVzZSB0aGUgY3VycmVudGx5IHNlbGVjdGVkIHBhY2thZ2UgdG8gYmUgIgorImxpc3RlZC4iCittc2dzdHIgIiIKKyLDlnZyZSBoYWx2YW4gYXYgc2vDpHJtZW4gbGlzdGFyIGFsbGEgcGFrZXQgc29tIGhhciBvdGlsbGZyZWRzc3TDpGxsZGEgYmVyb2VuZGVuICIKKyJlbGxlciBrb25mbGlrdGVyIHNvbSBldHQgcmVzdWx0YXQgYXYgw6RuZHJpbmdlbiBzb20gZWZ0ZXJmcsOlZ2FzLCBzYW10IGFsbGEgIgorInBha2V0IHZhcnMgaW5zdGFsbGF0aW9uIGthbiBsw7ZzYSBuw6Vnb3QgYXYgZGVzc2EgYmVyb2VuZGVuLCBlbGxlciB2YXJzICIKKyJib3J0dGFnbmluZyBrYW4gbMO2c2EgbsOlZ29uIGF2IGtvbmZsaWt0ZXJuYS4gRGVuIG5lZHJlIGhhbHZhbiB2aXNhciBzb20gIgorImbDtnJ2YWwgZGUgYmVyb2VuZGVuIGVsbGVyIGtvbmZsaWt0ZXIgc29tIGxlZGVyIHRpbGwgYXR0IGRldCBtYXJrZXJhZGUgIgorInBha2V0ZXQgbGlzdGFzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjM4NQorbXNnaWQgIiIKKyJXaGVuIHRoZSBzdWJsaXN0IG9mIHBhY2thZ2VzIGlzIGRpc3BsYXllZCBpbml0aWFsbHksIEI8ZHNlbGVjdD4gbWF5IGhhdmUgIgorImFscmVhZHkgc2V0IHRoZSByZXF1ZXN0ZWQgc2VsZWN0aW9uIHN0YXR1cyBvZiBzb21lIG9mIHRoZSBsaXN0ZWQgcGFja2FnZXMsICIKKyJpbiBvcmRlciB0byByZXNvbHZlIHRoZSBkZXBlbmRzIG9yIGNvbmZsaWN0cyB0aGF0IGNhdXNlZCB0aGUgZGVwZW5kZW5jeSAiCisicmVzb2x1dGlvbiBzY3JlZW4gdG8gYmUgZGlzcGxheWVkLiBVc3VhbGx5LCBpdCBpcyBiZXN0IHRvIGZvbGxvdyB1cCB0aGUgIgorInN1Z2dlc3Rpb25zIG1hZGUgYnkgQjxkc2VsZWN0Pi4iCittc2dzdHIgIiIKKyJSZWRhbiBkw6UgcGFrZXR1bmRlcmxpc3RhbiBmcsOlbiBiw7ZyamFuIHZpc2FzIGthbiBCPGRzZWxlY3Q+IGhhIHNhdHQgIgorImVmdGVyZnLDpWdhZCB2YWxzdGF0dXMgZsO2ciBuw6VncmEgYXYgZGUgbGlzdGFkZSBwYWtldGVuLCBmw7ZyIGF0dCBsw7ZzYSBkZSAiCisiYmVyb2VuZGVuIGVsbGVyIGtvbmZsaWt0ZXIgc29tIGZpY2sgYmVyb2VuZGVsw7ZzbmluZ3Nza8Okcm1lbiBhdHQgdmlzYXMuIERldCAiCisiw6RyIG9mdGFzdCBiw6RzdCBhdHQgZsO2bGphIHVwcCBkZSBmw7Zyc2xhZyBCPGRzZWxlY3Q+IGdlci4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTozOTMKK21zZ2lkICIiCisiVGhlIGxpc3RlZCBwYWNrYWdlcycgc2VsZWN0aW9uIHN0YXRlIG1heSBiZSByZXZlcnRlZCB0byB0aGUgb3JpZ2luYWwgIgorInNldHRpbmdzLCBhcyB0aGV5IHdlcmUgYmVmb3JlIHRoZSB1bnJlc29sdmVkIGRlcGVuZHMgb3IgY29uZmxpY3RzIHdlcmUgIgorImNyZWF0ZWQsIGJ5IHByZXNzaW5nIHRoZSBCPCdSJz4ga2V5LiBCeSBwcmVzc2luZyB0aGUgQjwnRCc+IGtleSwgdGhlICIKKyJhdXRvbWF0aWMgc3VnZ2VzdGlvbnMgYXJlIHJlc2V0LCBidXQgdGhlIGNoYW5nZSB0aGF0IGNhdXNlZCB0aGUgZGVwZW5kZW5jeSAiCisicmVzb2x1dGlvbiBzY3JlZW4gdG8gYmUgcHJvbXB0ZWQgaXMga2VwdCBhcyByZXF1ZXN0ZWQuICBGaW5hbGx5LCBieSBwcmVzc2luZyAiCisiQjwnVSc+LCB0aGUgc2VsZWN0aW9ucyBhcmUgYWdhaW4gc2V0IHRvIHRoZSBhdXRvbWF0aWMgc3VnZ2VzdGlvbiB2YWx1ZXMuIgorbXNnc3RyICIiCisiRGUgbGlzdGFkZSBwYWtldGVucyB2YWxzdGF0dXMga2FuIMOldGVyc3TDpGxsYXMgdGlsbCB1cnNwcnVuZ3NpbnN0w6RsbG5pbmdhcm5hLCAiCisic8Olc29tIGRlIHZhciBpbm5hbiBkZSBvdGlsbGZyZWRzc3TDpGxsZGEgYmVyb2VuZGVuYSBlbGxlciBrb25mbGlrdGVybmEgIgorInNrYXBhZGVzLCBnZW5vbSBhdHQgdHJ5Y2thIHDDpSB0YW5nZW50ZW4gQjxcIlJcIj4uIEdlbm9tIGF0dCB0cnlja2EgcMOlIEI8XCJEIgorIlwiPiDDpXRlcnN0w6RsbHMgZGUgZsO2cmVzbGFnbmEgbMO2c25pbmdhcm5hLCBtZW4gw6RuZHJpbmdlbiBzb20gZmljayBza8Okcm1lbiBhdHQgIgorInZpc2FzIGJlaMOlbGxzIGkgZGVuIHN0YXR1cyBkZSB2YWxkZXMuIFNsdXRsaWdlbiwgZ2Vub20gYXR0IHRyeWNrYSBCPFwiVVwiPiAiCisiw6V0ZXJzdMOkbGxzIHZhbGVuIMOldGVyaWdlbiB0aWxsIGRlIGF1dG9tYXRpc2t0IGbDtnJlc2xhZ25hIHbDpHJkZW5hLiIKKworIy4gdHlwZTogU1MKKyM6IGRzZWxlY3QuMTozOTQKKyMsIG5vLXdyYXAKK21zZ2lkICJFc3RhYmxpc2hpbmcgdGhlIHJlcXVlc3RlZCBzZWxlY3Rpb25zIgorbXNnc3RyICJCZWtyw6RmdGEgZGUgZWZ0ZXJmcsOlZ2FkZSB2YWxlbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjQwMQorbXNnaWQgIiIKKyJCeSBwcmVzc2luZyBCPGVudGVyPiwgdGhlIGN1cnJlbnRseSBkaXNwbGF5ZWQgc2V0IG9mIHNlbGVjdGlvbnMgaXMgYWNjZXB0ZWQuICIKKyJJZiBCPGRzZWxlY3Q+IGRldGVjdHMgbm8gdW5yZXNvbHZlZCBkZXBlbmRzIGFzIGEgcmVzdWx0IG9mIHRoZSByZXF1ZXN0ZWQgIgorInNlbGVjdGlvbnMsIHRoZSBuZXcgc2VsZWN0aW9ucyB3aWxsIGJlIHNldC4gIEhvd2V2ZXIsIGlmIHRoZXJlIGFyZSBhbnkgIgorInVucmVzb2x2ZWQgZGVwZW5kcywgQjxkc2VsZWN0PiB3aWxsIGFnYWluIHByb21wdCB0aGUgdXNlciB3aXRoIGEgZGVwZW5kZW5jeSAiCisicmVzb2x1dGlvbiBzY3JlZW4uIgorbXNnc3RyICIiCisiR2Vub20gYXR0IHRyeWNrYSBCPEVudGVyPiBnb2R0YXMgZGVuIHZpZCB0aWxsZsOkbGxldCBpbnN0w6RsbGRhIHVwcHPDpHR0bmluZ2VuICIKKyJ2YWwuIE9tIEI8ZHNlbGVjdD4gaW50ZSB1cHB0w6Rja2VyIG7DpWdyYSBvdGlsbGZyZWRzc3TDpGxsZGEgYmVyb2VuZGVuIHNvbSAiCisiZsO2bGpkIGF2IGRlIGVmdGVyZnLDpWdhZGUgdmFsZW4ga29tbWVyIGRlIG55YSB2YWxlbiBhdHQgbGFncmFzLiBPbSBkZXQgIgorImTDpHJlbW90IGZpbm5zIG7DpWdyYSBvdGlsbGZyZWRzc3TDpGxsZGEgYmVyb2VuZGVuIGtvbW1lciBCPGRzZWxlY3Q+IMOldGVyaWdlbiAiCisiZ8OlIHRpbGwgYmVyb2VuZGVsw7ZzbmluZ3Nza8Okcm1lbi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0MDcKK21zZ2lkICIiCisiVG8gYWx0ZXIgYSBzZXQgb2Ygc2VsZWN0aW9ucyB0aGF0IGNyZWF0ZXMgdW5yZXNvbHZlZCBkZXBlbmRzIG9yIGNvbmZsaWN0cyAiCisiYW5kIGZvcmNpbmcgQjxkc2VsZWN0PiB0byBhY2NlcHQgaXQsIHByZXNzIHRoZSBCPCdRJz4ga2V5LiBUaGlzIHNldHMgdGhlICIKKyJzZWxlY3Rpb25zIGFzIHNwZWNpZmllZCBieSB0aGUgdXNlciwgdW5jb25kaXRpb25hbGx5LiBHZW5lcmFsbHksIGRvbid0IGRvICIKKyJ0aGlzIHVubGVzcyB5b3UndmUgcmVhZCB0aGUgZmluZSBwcmludC4iCittc2dzdHIgIiIKKyJGw7ZyIGF0dCDDpG5kcmEgZW4gdXBwc8OkdHRuaW5nIHZhbCBzb20gc2thcGFyIG90aWxsZnJlZHNzdMOkbGxkYSBiZXJvZW5kZW4gIgorImVsbGVyIGtvbmZsaWt0ZXIsIG9jaCB0dmluZ2EgQjxkc2VsZWN0PiBhdHQgZ29kdGEgZGVtIHRyeWNrZXIgZHUgcMOlIEI8XCJRXCI+LSIKKyJ0YW5nZW50ZW4uIERldHRhIHN0w6RsbGVyIG92aWxsa29ybGlnZW4gaW4gZGUgdmFsIGFudsOkbmRhcmVuIGdqb3J0LCB2aWxrZXQgIgorInZhbmxpZ3R2aXMgaW50ZSBiw7ZyIGfDtnJhcyBvbSBtYW4gaW50ZSBoYXIgbMOkc3QgZGV0IGZpbnN0aWx0YS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0MTQKK21zZ2lkICIiCisiVGhlIG9wcG9zaXRlIGVmZmVjdCwgdG8gYmFjayBvdXQgYW55IHNlbGVjdGlvbnMgY2hhbmdlIHJlcXVlc3RzIGFuZCBnbyBiYWNrICIKKyJ0byB0aGUgcHJldmlvdXMgbGlzdCBvZiBzZWxlY3Rpb25zLCBpcyBhdHRhaW5lZCBieSBwcmVzc2luZyB0aGUgQjwnWCc+IG9yICIKKyJCPGVzY2FwZT4ga2V5cy4gQnkgcmVwZWF0ZWRseSBwcmVzc2luZyB0aGVzZSBrZXlzLCBhbnkgcG9zc2libHkgZGV0cmltZW50YWwgIgorImNoYW5nZXMgdG8gdGhlIHJlcXVlc3RlZCBwYWNrYWdlIHNlbGVjdGlvbnMgY2FuIGJlIGJhY2tlZCBvdXQgY29tcGxldGVseSB0byAiCisidGhlIGxhc3QgZXN0YWJsaXNoZWQgc2V0dGluZ3MuIgorbXNnc3RyICIiCisiTW90c2F0dCBlZmZla3QsIGF0dCBiYWNrYSB1dCBmcsOlbiB2YWzDpG5kcmluZ2FyIG9jaCDDpXRlcmfDpSB0aWxsIGbDtnJlZ8OlZW5kZSAiCisidmFsbGlzdGEsIGthbiBmw6VzIGdlbm9tIGF0dCB0cnlja2EgcMOlIHRhbmdlbnRlcm5hIEI8XCJYXCI+IGVsbGVyIEI8RXNjYXBlPi4gIgorIkdlbm9tIGF0dCB1cHByZXBhZGUgZ8OlbmdlciB0cnlja2EgZGVzc2EgdGFuZ2VudGVyLCBrYW4gZXZlbnR1ZWxsYSBza2FkbGlnYSAiCisicGFrZXR2YWwgYmFja2FzIHV0IGhlbHQgb2NoIGjDpWxsZXQgZsO2ciBhdHQgw6V0ZXJnw6UgdGlsbCBzZW5hc3QgZXRhYmxlcmFkZSAiCisiaW5zdMOkbGxuaW5nYXIuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NDIxCittc2dpZCAiIgorIklmIHlvdSBtaXN0YWtlbmx5IGVzdGFibGlzaCBzb21lIHNldHRpbmdzIGFuZCB3aXNoIHRvIHJldmVydCBhbGwgdGhlICIKKyJzZWxlY3Rpb25zIHRvIHdoYXQgaXMgY3VycmVudGx5IGluc3RhbGxlZCBvbiB0aGUgc3lzdGVtLCBwcmVzcyB0aGUgQjwnQyc+ICIKKyJrZXkuICBUaGlzIGlzIHNvbWV3aGF0IHNpbWlsYXIgdG8gdXNpbmcgdGhlIHVuaG9sZCBjb21tYW5kIG9uIGFsbCBwYWNrYWdlcywgIgorImJ1dCBwcm92aWRlcyBhIG1vcmUgb2J2aW91cyBwYW5pYyBidXR0b24gaW4gY2FzZXMgd2hlcmUgdGhlIHVzZXIgcHJlc3NlZCAiCisiQjxlbnRlcj4gYnkgYWNjaWRlbnQuIgorbXNnc3RyICIiCisiT20gZHUgYXYgbWlzc3RhZyB2w6RsamVyIG7DpWdyYSBpbnN0w6RsbG5pbmdhciBvY2ggdmlsbCDDpXRlcnN0w6RsbGEgYWxsYSB2YWwgIgorInRpbGwgZGV0IHNvbSBmw7ZyIG7DpHJ2YXJhbmRlIMOkciBpbnN0YWxsZXJhdCBww6Ugc3lzdGVtZXQgdHJ5Y2tlciBkdSBww6Uga25hcHBlbiAiCisiQjxcIkNcIj4uIERldCBtb3RzdmFyYXIgcMOlIGV0dCB1bmdlZsOkciBhdHQgYW52w6RuZGEga29tbWFuZG90IFwiYXZicnl0IGjDpWxsXCIgIgorInDDpSBhbGxhIHBha2V0LCBtZW4gZGV0IGdlciBlbiB0eWRsaWdhcmUgcGFuaWtrbmFwcCBvbSBhbnbDpG5kYXJlbiBhdiBtaXNzdGFnICIKKyJ0cnlja3RlIHDDpSBCPEVudGVyPi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0MjgKK21zZ2lkICIiCisiSWYgc2V0LCBCPGRzZWxlY3Q+IHdpbGwgdXNlIGl0IGFzIHRoZSBkaXJlY3RvcnkgZnJvbSB3aGljaCB0byByZWFkIHRoZSB1c2VyICIKKyJzcGVjaWZpYyBjb25maWd1cmF0aW9uIGZpbGUuIgorbXNnc3RyICIiCisiT20gc2F0dCBrb21tZXIgQjxkc2VsZWN0PiBhdHQgYW52w6RuZGEgZGV0IHNvbSBrYXRhbG9nZW4gZnLDpW4gdmlsa2V0IGRlbiAiCisiYW52w6RuZGFyc3BlY2lmaWthIGtvbmZpZ3VyYXRpb25zZmlsZW4gc2thbGwgbMOkc2FzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjQzNAorbXNnaWQgIiIKKyJUaGUgQjxkc2VsZWN0PiBwYWNrYWdlIHNlbGVjdGlvbiBpbnRlcmZhY2UgaXMgY29uZnVzaW5nIHRvIHNvbWUgbmV3IHVzZXJzLiAgIgorIlJlcG9ydGVkbHksIGl0IGV2ZW4gbWFrZXMgc2Vhc29uZWQga2VybmVsIGRldmVsb3BlcnMgY3J5LiIKK21zZ3N0ciAiIgorIlBha2V0dmFsc2dyw6Ruc3NuaXR0ZXQgaSBCPGRzZWxlY3Q+IMOkciBmw7ZydmlycmFuZGUgZsO2ciBlbiBkZWwgbnlhIGFudsOkbmRhcmUuICIKKyJEZXQgaGFyIHJhcHBvcnRlcmF0cyBhdHQgZGV0IHRpbGwgb2NoIG1lZCBrYW4gZsOlIGVyZmFybmEgdXR2ZWNrbGFyZSBhdiAiCisia8Okcm5hbiBhdHQgZ3LDpXRhLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjQzNgorbXNnaWQgIlRoZSBkb2N1bWVudGF0aW9uIGlzIGxhY2tpbmcuIgorbXNnc3RyICJEb2t1bWVudGF0aW9uZW4gaGFyIGJyaXN0ZXIuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBkc2VsZWN0LjE6NDM4Cittc2dpZCAiVGhlcmUgaXMgbm8gaGVscCBvcHRpb24gaW4gdGhlIG1haW4gbWVudS4iCittc2dzdHIgIkRldCBmaW5ucyBpbmdldCBoasOkbHBhbHRlcm5hdGl2IGkgaHV2dWRtZW55bi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0NDAKK21zZ2lkICJUaGUgdmlzaWJsZSBsaXN0IG9mIGF2YWlsYWJsZSBwYWNrYWdlcyBjYW5ub3QgYmUgcmVkdWNlZC4iCittc2dzdHIgIkRlbiBzeW5saWdhIGxpc3RhbiBtZWQgdGlsbGfDpG5nbGlnYSBwYWtldCBrYW4gaW50ZSBmw7ZybWluc2thcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0NDQKK21zZ2lkICIiCisiVGhlIGJ1aWx0IGluIGFjY2VzcyBtZXRob2RzIGNhbiBubyBsb25nZXIgc3RhbmQgdXAgdG8gY3VycmVudCBxdWFsaXR5ICIKKyJzdGFuZGFyZHMuIFVzZSB0aGUgYWNjZXNzIG1ldGhvZCBwcm92aWRlZCBieSBhcHQsIGl0IGlzIG5vdCBvbmx5IG5vdCBicm9rZW4sICIKKyJpdCBpcyBhbHNvIG11Y2ggbW9yZSBmbGV4aWJsZSB0aGFuIHRoZSBidWlsdCBpbiBhY2Nlc3MgbWV0aG9kcy4iCittc2dzdHIgIiIKKyJEZSBpbmJ5Z2dkYSDDpXRrb21zdG1ldG9kZXJuYSBrYW4gaW50ZSBsw6RuZ3JlIG7DpSBudXZhcmFuZGUga3ZhbGl0ZXRzc3RhbmRhcmQuICIKKyJBbnbDpG5kIMOldGtvbXN0bWV0b2RlbiBzb20gZ2VzIGF2IGFwdCwgZGVuIMOkciBpbnRlIGJhcmEgaW50ZSB0cmFzaWcsIHV0YW4gIgorIsOkdmVuIG15Y2tldCBmbGV4aWJsYXJlIMOkbiBkZSBpbmJ5Z2dkYSDDpXRrb21zdG1ldG9kZXJuYS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuMTo0NTAKK21zZ2lkICJCPGRwa2c+KDEpLCBCPGFwdC1nZXQ+KDgpLCBCPHNvdXJjZXMubGlzdD4oNSksIEI8ZGViPig1KS4iCittc2dzdHIgIkI8ZHBrZz4oMSksIEI8YXB0LWdldD4oOCksIEI8c291cmNlcy5saXN0Pig1KSwgQjxkZWI+KDUpLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjQ1NQorbXNnaWQgIiIKKyJCPGRzZWxlY3Q+IHdhcyB3cml0dGVuIGJ5IElhbiBKYWNrc29uIChpamFja3NvbkBnbnUuYWkubWl0LmVkdSkuIEZ1bGwgbGlzdCAiCisib2YgY29udHJpYnV0b3JzIG1heSBiZSBmb3VuZCBpbiAnZHNlbGVjdCAtLXZlcnNpb24nLiIKK21zZ3N0ciAiIgorIkI8ZHNlbGVjdD4gc2tyZXZzIGF2IElhbiBKYWNrc29uIChpamFja3NvbkBnbnUuYWkubWl0LmVkdSkuIEVuIGtvbXBsZXR0ICIKKyJsaXN0YSDDtnZlciBiaWRyYWdzbMOkbW5hcmUgZsOlciBkdSBtZWQgXCJkc2VsZWN0IC0tdmVyc2lvblwiLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC4xOjQ1OAorbXNnaWQgIiIKKyJUaGlzIG1hbnVhbCBwYWdlIHdhcyB3cml0dGVuIGJ5IEp1aG8gVnVvcmkgRTxsdD5qYXZ1b3JpQGNjLmhlbHNpbmtpLmZpRTxndD4sICIKKyJKb3NpcCBSb2RpbiBhbmQgSm9vc3Qga29vaWouIgorbXNnc3RyICIiCisiTWFudWFsc2lkYW4gc2tyZXZzIGF2IEp1aG8gVnVvcmkgRTxsdD5qYXZ1b3JpQGNjLmhlbHNpbmtpLmZpRTxndD4sIEpvc2lwICIKKyJSb2RpbiBvY2ggSm9vc3QgS29vaWouIgorCisjLiB0eXBlOiBUSAorIzogZHNlbGVjdC5jZmcuNToxCisjLCBuby13cmFwCittc2dpZCAiZHNlbGVjdC5jZmciCittc2dzdHIgImRzZWxlY3QuY2ZnIgorCisjLiB0eXBlOiBUSAorIzogZHNlbGVjdC5jZmcuNToxCisjLCBuby13cmFwCittc2dpZCAiMjAxMS0wNy0wMyIKK21zZ3N0ciAiMjAxMS0wNy0wMyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC5jZmcuNTo0Cittc2dpZCAiZHNlbGVjdC5jZmcgLSBkc2VsZWN0IGNvbmZpZ3VyYXRpb24gZmlsZSIKK21zZ3N0ciAiZHNlbGVjdC5jZmcgLSBpbnN0w6RsbG5pbmdzZmlsIGbDtnIgZHNlbGVjdCIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC5jZmcuNToxMQorbXNnaWQgIiIKKyJUaGlzIGZpbGUgY29udGFpbnMgZGVmYXVsdCBvcHRpb25zIGZvciBkc2VsZWN0LiBFYWNoIGxpbmUgY29udGFpbnMgYSBzaW5nbGUgIgorIm9wdGlvbiB3aGljaCBpcyBleGFjdGx5IHRoZSBzYW1lIGFzIGEgbm9ybWFsIGNvbW1hbmQgbGluZSBvcHRpb24gZm9yIGRzZWxlY3QgIgorImV4Y2VwdCBmb3IgdGhlIGxlYWRpbmcgZGFzaGVzIHdoaWNoIGFyZSBub3QgdXNlZCBoZXJlLiBRdW90ZXMgc3Vycm91bmRpbmcgIgorIm9wdGlvbiB2YWx1ZXMgYXJlIHN0cmlwcGVkLiBDb21tZW50cyBhcmUgYWxsb3dlZCBieSBzdGFydGluZyBhIGxpbmUgd2l0aCBhICIKKyJoYXNoIHNpZ24gKFwiQjwjPlwiKS4iCittc2dzdHIgIiIKKyJGaWxlbiBpbm5laMOlbGxlciBmw7ZydmFsZGEgaW5zdMOkbGxuaW5nYXIgZsO2ciBkc2VsZWN0LiBWYXJqZSByYWQgYmVzdMOlciBhdiBlbiAiCisiZW5zYW0gZmxhZ2dhIHNvbSDDpHIgZXhha3QgZGVuc2FtbWEgc29tIGVuIG5vcm1hbCBrb21tYW5kb3JhZHNmbGFnZ2EgZsO2ciAiCisiZHNlbGVjdCwgZsO2cnV0b20gZGUgaW5sZWRhbmRlIGJpbmRlc3RyZWNrZW4gdmlsa2EgaW50ZSBhbnbDpG5kcyBow6RyLiAiCisiQ2l0YXR0ZWNrZW4gcnVudCBmbGFnZ3bDpHJkZW4gdGFzIGJvcnQuIEtvbW1lbnRhcmVyIMOkciB0aWxsw6V0bmEgZ2Vub20gYXR0ICIKKyJpbmxlZGEgZW4gcmFkIG1lZCBudW1tZXJ0ZWNrZW4gKFwiQjwjPlwiKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuY2ZnLjU6MTQKK21zZ2lkICJJPC9ldGMvZHBrZy9kc2VsZWN0LmNmZy5kL1swLTlhLXpBLVpfLV0qPiIKK21zZ3N0ciAiSTwvZXRjL2Rwa2cvZHNlbGVjdC5jZmcuZC9bMC05YS16QS1aXy1dKj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IGRzZWxlY3QuY2ZnLjU6MTYKK21zZ2lkICJJPC9ldGMvZHBrZy9kc2VsZWN0LmNmZz4iCittc2dzdHIgIkk8L2V0Yy9kcGtnL2RzZWxlY3QuY2ZnPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC5jZmcuNToxOAorbXNnaWQgIkk8fi8uZHNlbGVjdC5jZmc+IgorbXNnc3RyICJJPH4vLmRzZWxlY3QuY2ZnPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC5jZmcuNToyMgorbXNnaWQgIiIKKyJTZWUgSTwvdXNyL3NoYXJlL2RvYy9kcGtnL1RIQU5LUz4gZm9yIHRoZSBsaXN0IG9mIHBlb3BsZSB3aG8gaGF2ZSAiCisiY29udHJpYnV0ZWQgdG8gQjxkc2VsZWN0Pi4iCittc2dzdHIgIiIKKyJTZSBCPC91c3Ivc2hhcmUvZG9jL2Rwa2cvVEhBTktTPiBmw7ZyIGxpc3RhbiDDtnZlciBwZXJzb25lciBzb20gaGFyIGJpZHJhZ2l0ICIKKyJ0aWxsIEI8ZHNlbGVjdD4gLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogZHNlbGVjdC5jZmcuNToyNAorbXNnaWQgIkI8ZHNlbGVjdD4oMSkuIgorbXNnc3RyICJCPGRzZWxlY3Q+KDEpLiIKKworIy4gdHlwZTogVEgKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MQorIywgbm8td3JhcAorbXNnaWQgInN0YXJ0LXN0b3AtZGFlbW9uIgorbXNnc3RyICJzdGFydC1zdG9wLWRhZW1vbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo0Cittc2dpZCAic3RhcnQtc3RvcC1kYWVtb24gLSBzdGFydCBhbmQgc3RvcCBzeXN0ZW0gZGFlbW9uIHByb2dyYW1zIgorbXNnc3RyICJzdGFydC1zdG9wLWRhZW1vbiAtIHN0YXJ0YXIgb2NoIHN0b3BwYXIgYmFrZ3J1bmRzcHJvY2Vzc2VyIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjgKK21zZ2lkICJCPHN0YXJ0LXN0b3AtZGFlbW9uPiBbSTxvcHRpb24+Li4uXSBJPGNvbW1hbmQ+IgorbXNnc3RyICJCPHN0YXJ0LXN0b3AtZGFlbW9uPiBbSTxmbGFnZ2E+Li4uXSBJPMOldGfDpHJkPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxNAorbXNnaWQgIiIKKyJCPHN0YXJ0LXN0b3AtZGFlbW9uPiBpcyB1c2VkIHRvIGNvbnRyb2wgdGhlIGNyZWF0aW9uIGFuZCB0ZXJtaW5hdGlvbiBvZiAiCisic3lzdGVtLWxldmVsIHByb2Nlc3Nlcy4gIFVzaW5nIG9uZSBvZiB0aGUgbWF0Y2hpbmcgb3B0aW9ucywgQjxzdGFydC1zdG9wLSIKKyJkYWVtb24+IGNhbiBiZSBjb25maWd1cmVkIHRvIGZpbmQgZXhpc3RpbmcgaW5zdGFuY2VzIG9mIGEgcnVubmluZyBwcm9jZXNzLiIKK21zZ3N0ciAiIgorIkI8c3RhcnQtc3RvcC1kYWVtb24+IGFudsOkbmRzIGbDtnIgYXR0IGtvbnRyb2xsZXJhIGh1ciBwcm9jZXNzZXIgcMOlIHN5c3RlbW5pdsOlICIKKyJza2FwYXMgb2NoIGF2c2x1dGFzLiBNZWQgaGrDpGxwIGF2IGVuIGF2IHPDtmtmbGFnZ29ybmEga2FuIEI8c3RhcnQtc3RvcC0iCisiZGFlbW9uPiBzdMOkbGxhcyBpbiBhdHQgaGl0dGEgYmVmaW50bGlnYSBpbnN0YW5zZXIgYXYgZW4ga8O2cmFuZGUgcHJvY2Vzcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MzMKK21zZ2lkICIiCisiTm90ZTogdW5sZXNzIEI8LS1waWRmaWxlPiBpcyBzcGVjaWZpZWQsIEI8c3RhcnQtc3RvcC1kYWVtb24+IGJlaGF2ZXMgc2ltaWxhciAiCisidG8gQjxraWxsYWxsPigxKS4gIEI8c3RhcnQtc3RvcC1kYWVtb24+IHdpbGwgc2NhbiB0aGUgcHJvY2VzcyB0YWJsZSBsb29raW5nICIKKyJmb3IgYW55IHByb2Nlc3NlcyB3aGljaCBtYXRjaCB0aGUgcHJvY2VzcyBuYW1lLCB1aWQsIGFuZC9vciBnaWQgKGlmICIKKyJzcGVjaWZpZWQpLiBBbnkgbWF0Y2hpbmcgcHJvY2VzcyB3aWxsIHByZXZlbnQgQjwtLXN0YXJ0PiBmcm9tIHN0YXJ0aW5nIHRoZSAiCisiZGFlbW9uLiBBbGwgbWF0Y2hpbmcgcHJvY2Vzc2VzIHdpbGwgYmUgc2VudCB0aGUgVEVSTSBzaWduYWwgKG9yIHRoZSBvbmUgIgorInNwZWNpZmllZCB2aWEgQjwtLXNpZ25hbD4gb3IgQjwtLXJldHJ5PikgaWYgQjwtLXN0b3A+IGlzIHNwZWNpZmllZC4gRm9yICIKKyJkYWVtb25zIHdoaWNoIGhhdmUgbG9uZy1saXZlZCBjaGlsZHJlbiB3aGljaCBuZWVkIHRvIGxpdmUgdGhyb3VnaCBhIEI8LS0iCisic3RvcD4sIHlvdSBtdXN0IHNwZWNpZnkgYSBwaWRmaWxlLiIKK21zZ3N0ciAiIgorIk9ic2VydmVyYSBhdHQgb20gaW50ZSBCPC0tcGlkZmlsZT4gYW5nZXMga29tbWVyIEI8c3RhcnQtc3RvcC1kYWVtb24+IGF0dCAiCisiam9iYmEgcMOlIGV0dCBzw6R0dCBzb20gbGlrbmFyIEI8a2lsbGFsbCgxKS4+IEI8c3RhcnQtc3RvcC1kYWVtb24+IGtvbW1lciBhdHQgIgorInPDtmthIGkgcHJvY2Vzc3RhYmVsbGVuIGVmdGVyIHByb2Nlc3NlciBtZWQgbW90c3ZhcmFuZGUgbmFtbiBww6UgcHJvY2Vzc2VuLCAiCisiYW52w6RuZGFyLWlkIG9jaC9lbGxlciBncnVwcC1pZCAob20gc8OlZGFudCBhbmdlcykuIEFsbGEgcHJvY2Vzc2VyIHNvbSBzdMOkbW1lciAiCisiw7Z2ZXJlbnMga29tbWVyIHRpbGxzw6RuZGFzIHNpZ25hbGVuIFRFUk0gKGVsbGVyIGRlbiBzb20gYW5nZXMgbWVkIEI8LS1zaWduYWw+ICIKKyJlbGxlciBCPC0tcmV0cnk+KSBvbSBCPC0tc3RvcD4gYW5nZXMuIEbDtnIgcHJvY2Vzc2VyIHNvbSBoYXIgbMOlbmdsaXZhZGUgYmFybiAiCisic29tIG3DpXN0ZSDDtnZlcmxldmEgZW4gQjwtLXN0b3A+LCBtw6VzdGUgZHUgYW5nZSBlbiBwaWRmaWwuIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODozNQorIywgbm8td3JhcAorbXNnaWQgIkI8LVM+LCBCPC0tc3RhcnQ+IFtCPC0tPl0gSTxhcmd1bWVudHM+IgorbXNnc3RyICJCPC1TPiwgQjwtLXN0YXJ0PiBbQjwtLT5dIEk8YXJndW1lbnQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjUyCittc2dpZCAiIgorIkNoZWNrIGZvciB0aGUgZXhpc3RlbmNlIG9mIGEgc3BlY2lmaWVkIHByb2Nlc3MuICBJZiBzdWNoIGEgcHJvY2VzcyBleGlzdHMsICIKKyJCPHN0YXJ0LXN0b3AtZGFlbW9uPiBkb2VzIG5vdGhpbmcsIGFuZCBleGl0cyB3aXRoIGVycm9yIHN0YXR1cyAxICgwIGlmIEI8LS0iCisib2tub2RvPiBpcyBzcGVjaWZpZWQpLiAgSWYgc3VjaCBhIHByb2Nlc3MgZG9lcyBub3QgZXhpc3QsIGl0IHN0YXJ0cyBhbiAiCisiaW5zdGFuY2UsIHVzaW5nIGVpdGhlciB0aGUgZXhlY3V0YWJsZSBzcGVjaWZpZWQgYnkgQjwtLWV4ZWM+IG9yLCBpZiAiCisic3BlY2lmaWVkLCBieSBCPC0tc3RhcnRhcz4uICBBbnkgYXJndW1lbnRzIGdpdmVuIGFmdGVyIEI8LS0+IG9uIHRoZSBjb21tYW5kICIKKyJsaW5lIGFyZSBwYXNzZWQgdW5tb2RpZmllZCB0byB0aGUgcHJvZ3JhbSBiZWluZyBzdGFydGVkLiIKK21zZ3N0ciAiIgorIlNlIG9tIGVuIGFuZ2l2ZW4gcHJvY2VzcyBleGlzdGVyYXIsIG9jaCBvbSBzw6Ugw6RyIGZhbGxldCBnw7ZyIEI8c3RhcnQtc3RvcC0iCisiZGFlbW9uPiBpbmdlbnRpbmcgb2NoIGF2c2x1dGFyIG1lZCBzdGF0dXMgMSAoMCBvbSBCPC0tb2tub2RvPiBhbmdlcykuIE9tIGVuICIKKyJzw6VkYW4gcHJvY2VzcyBpbnRlIGV4aXN0ZXJhciBzdGFydGFzIGVuIGluc3RhbnMsIGFudGluZ2VuIG1lZCBwcm9ncmFtZmlsZW4gIgorInNvbSBhbmdlcyBtZWQgQjwtLWV4ZWM+IGVsbGVyLCBvbSBkZW4gYW5nZXMsIG1lZCBCPC0tc3RhcnRhcz4uIEV2ZW50dWVsbGEgIgorImFyZ3VtZW50IHNvbSBnZXMgZWZ0ZXIgQjwtLT4gcMOlIGtvbW1hbmRvcmFkZW4gc2tpY2thcyB1dGFuIMOkbmRyaW5nIHRpbGwgIgorInByb2dyYW1tZXQgc29tIHN0YXJ0YXMuIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo1MgorIywgbm8td3JhcAorbXNnaWQgIkI8LUs+LCBCPC0tc3RvcD4iCittc2dzdHIgIkI8LUs+LCBCPC0tc3RvcD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6NzAKK21zZ2lkICIiCisiQ2hlY2tzIGZvciB0aGUgZXhpc3RlbmNlIG9mIGEgc3BlY2lmaWVkIHByb2Nlc3MuICBJZiBzdWNoIGEgcHJvY2VzcyBleGlzdHMsICIKKyJCPHN0YXJ0LXN0b3AtZGFlbW9uPiBzZW5kcyBpdCB0aGUgc2lnbmFsIHNwZWNpZmllZCBieSBCPC0tc2lnbmFsPiwgYW5kIGV4aXRzICIKKyJ3aXRoIGVycm9yIHN0YXR1cyAwLiAgSWYgc3VjaCBhIHByb2Nlc3MgZG9lcyBub3QgZXhpc3QsIEI8c3RhcnQtc3RvcC1kYWVtb24+ICIKKyJleGl0cyB3aXRoIGVycm9yIHN0YXR1cyAxICgwIGlmIEI8LS1va25vZG8+IGlzIHNwZWNpZmllZCkuIElmIEI8LS1yZXRyeT4gaXMgIgorInNwZWNpZmllZCwgdGhlbiBCPHN0YXJ0LXN0b3AtZGFlbW9uPiB3aWxsIGNoZWNrIHRoYXQgdGhlIHByb2Nlc3MoZXMpIGhhdmUgIgorInRlcm1pbmF0ZWQuIgorbXNnc3RyICIiCisiVGVzdGEgb20gZGVuIGFuZ2l2bmEgcHJvY2Vzc2VuIGV4aXN0ZXJhci4gT20gc8OlIMOkciBmYWxsZXQgc8OkbmRlciBCPHN0YXJ0LSIKKyJzdG9wLWRhZW1vbj4gZGVuIHNpZ25hbCBzb20gYW5nZXMgYXYgQjwtLXNpZ25hbD4gdGlsbCBwcm9jZXNzZW4sIG9jaCAiCisiYXZzbHV0YXIgbWVkIHN0YXR1cyAwLiBPbSBwcm9jZXNzZW4gaW50ZSBmaW5ucyBhdnNsdXRhciBCPHN0YXJ0LXN0b3AtZGFlbW9uPiAiCisibWVkIHN0YXR1cyAxICgwIG9tIEI8LS1va25vZG8+IGFuZ2VzKS4gT20gQjwtLXJldHJ5PiBhbmdlcyBrb21tZXIgQjxzdGFydC0iCisic3RvcC1kYWVtb24+IGtvbnRyb2xsZXJhIGF0dCBwcm9jZXNzZW4gaGFyIGF2c2x1dGF0cy4iCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjcwCisjLCBuby13cmFwCittc2dpZCAiQjwtVD4sIEI8LS1zdGF0dXM+IgorbXNnc3RyICJCPC1UPiwgQjwtLXN0YXR1cz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6NzQKK21zZ2lkICIiCisiQ2hlY2sgZm9yIHRoZSBleGlzdGVuY2Ugb2YgYSBzcGVjaWZpZWQgcHJvY2VzcywgYW5kIHJldHVybnMgYW4gZXhpdCBzdGF0dXMgIgorImNvZGUsIGFjY29yZGluZyB0byB0aGUgTFNCIEluaXQgU2NyaXB0IEFjdGlvbnMuIgorbXNnc3RyICIiCisiU2Ugb20gZGVuIGFuZ2l2bmEgcHJvY2Vzc2VuIGV4aXN0ZXJhciwgb2NoIHJldHVybmVyYXIgZW4gc3RhdHVza29kIGkgIgorImVubGlnaGV0IG1lZCBMQlMgSW5pdCBTY3JpcHQgQWN0aW9ucy4iCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44Ojc0CisjLCBuby13cmFwCittc2dpZCAiQjwtSD4sIEI8LS1oZWxwPiIKK21zZ3N0ciAiQjwtSD4sIEI8LS1oZWxwPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo3NworbXNnaWQgIlNob3cgdXNhZ2UgaW5mb3JtYXRpb24gYW5kIGV4aXQuIgorbXNnc3RyICJWaXNhIGhqw6RscHNrw6RybSBvY2ggYXZzbHV0YS4iCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44Ojc3CisjLCBuby13cmFwCittc2dpZCAiQjwtVj4sIEI8LS12ZXJzaW9uPiIKK21zZ3N0ciAiQjwtVj4sIEI8LS12ZXJzaW9uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo4MAorbXNnaWQgIlNob3cgdGhlIHByb2dyYW0gdmVyc2lvbiBhbmQgZXhpdC4iCittc2dzdHIgIlZpc2EgcHJvZ3JhbXZlcnNpb24gb2NoIGF2c2x1dGEuIgorCisjLiB0eXBlOiBTSAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo4MQorIywgbm8td3JhcAorbXNnaWQgIk1BVENISU5HIE9QVElPTlMiCittc2dzdHIgIkZMQUdHT1IgRsOWUiBTw5ZLTklORyIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6ODIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1wPiwgQjwtLXBpZGZpbGU+IEk8cGlkLWZpbGU+IgorbXNnc3RyICJCPC1wPiwgQjwtLXBpZGZpbGU+IEk8cGlkZmlsPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo4NgorbXNnaWQgIkNoZWNrIHdoZXRoZXIgYSBwcm9jZXNzIGhhcyBjcmVhdGVkIHRoZSBmaWxlIEk8cGlkLWZpbGU+LiIKK21zZ3N0ciAiU8O2ayBlZnRlciBwcm9jZXNzZXIgdmFycyBwcm9jZXNzLWlkIGFuZ2VzIGkgSTxwaWRmaWw+LiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6ODYKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC14PiwgQjwtLWV4ZWM+IEk8ZXhlY3V0YWJsZT4iCittc2dzdHIgIkI8LXg+LCBCPC0tZXhlYz4gSTxwcm9ncmFtZmlsPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo5MAorbXNnaWQgIiIKKyJDaGVjayBmb3IgcHJvY2Vzc2VzIHRoYXQgYXJlIGluc3RhbmNlcyBvZiB0aGlzIGV4ZWN1dGFibGUgKGFjY29yZGluZyB0byBCPC8iCisicHJvYy8+STxwaWQ+QjwvZXhlPikuIgorbXNnc3RyICIiCisiU8O2ayBlZnRlciBwcm9jZXNzZXIgc29tIMOkciBpbnN0YW5zZXIgYXYgcHJvZ3JhbWZpbGVuIChlbmxpZ3QgQjwvcHJvYy8iCisiPkk8cGlkPkI8L2V4ZT4pLiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6OTAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1uPiwgQjwtLW5hbWU+IEk8cHJvY2Vzcy1uYW1lPiIKK21zZ3N0ciAiQjwtbj4sIEI8LS1uYW1lPiBJPHByb2Nlc3NuYW1uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODo5NgorbXNnaWQgIiIKKyJDaGVjayBmb3IgcHJvY2Vzc2VzIHdpdGggdGhlIG5hbWUgSTxwcm9jZXNzLW5hbWU+IChhY2NvcmRpbmcgdG8gQjwvcHJvYy8iCisiPkk8cGlkPkI8L3N0YXQ+KS4iCittc2dzdHIgIiIKKyJTw7ZrIGVmdGVyIHByb2Nlc3NlciBtZWQgbmFtbmV0IEk8cHJvY2Vzc25hbW4+IChlbmxpZ3QgQjwvcHJvYy8+STxwaWQ+QjwvIgorInN0YXQ+KS4iCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44Ojk2CisjLCBuby13cmFwCittc2dpZCAiQjwtdT4sIEI8LS11c2VyPiBJPHVzZXJuYW1lPnxJPHVpZD4iCittc2dzdHIgIkI8LXU+LCBCPC0tdXNlcj4gSTxhbnbDpG5kYXJuYW1uPnxJPGFudsOkbmRhci1pZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTAyCittc2dpZCAiIgorIkNoZWNrIGZvciBwcm9jZXNzZXMgb3duZWQgYnkgdGhlIHVzZXIgc3BlY2lmaWVkIGJ5IEk8dXNlcm5hbWU+IG9yIEk8dWlkPi4iCittc2dzdHIgIiIKKyJTw7ZrIGVmdGVyIHByb2Nlc3NlciBzb20gw6RncyBhdiBkZW4gYW52w6RuZGFyZSBzb20gYW5nZXMgbWVkIEk8YW52w6RuZGFybmFtbj4gIgorImVsbGVyIEk8YW52w6RuZGFyLWlkPi4iCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjEwNAorIywgbm8td3JhcAorbXNnaWQgIkI8LWc+LCBCPC0tZ3JvdXA+IEk8Z3JvdXA+fEk8Z2lkPiIKK21zZ3N0ciAiQjwtZz4sIEI8LS1ncm91cD4gSTxncnVwcD58STxncnVwcC1pZD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTA3Cittc2dpZCAiQ2hhbmdlIHRvIEk8Z3JvdXA+IG9yIEk8Z2lkPiB3aGVuIHN0YXJ0aW5nIHRoZSBwcm9jZXNzLiIKK21zZ3N0ciAiQnl0IHRpbGwgSTxncnVwcD4gZWxsZXIgSTxncnVwcC1pZD4gbsOkciBwcm9jZXNzZW4gc3RhcnRhcy4iCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjEwNworIywgbm8td3JhcAorbXNnaWQgIkI8LXM+LCBCPC0tc2lnbmFsPiBJPHNpZ25hbD4iCittc2dzdHIgIkI8LXM+LCBCPC0tc2lnbmFsPiBJPHNpZ25hbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTEyCittc2dpZCAiIgorIldpdGggQjwtLXN0b3A+LCBzcGVjaWZpZXMgdGhlIHNpZ25hbCB0byBzZW5kIHRvIHByb2Nlc3NlcyBiZWluZyBzdG9wcGVkICIKKyIoZGVmYXVsdCBURVJNKS4iCittc2dzdHIgIiIKKyJUaWxsc2FtbWFucyBtZWQgQjwtLXN0b3A+IGFuZ2VyIGRldHRhIGRlbiBzaWduYWwgc29tIHNrYWxsIHPDpG5kYXMgdGlsbCAiCisicHJvY2Vzc2VuIHNvbSBzdG9wcGFzIChmw7ZydmFsIMOkciBURVJNKS4iCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjExMgorIywgbm8td3JhcAorbXNnaWQgIkI8LVI+LCBCPC0tcmV0cnk+IEk8dGltZW91dD58STxzY2hlZHVsZT4iCittc2dzdHIgIkI8LVI+LCBCPC0tcmV0cnk+IEk8dGlkc2dyw6Rucz58STxzY2hlbWE+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjEyMgorbXNnaWQgIiIKKyJXaXRoIEI8LS1zdG9wPiwgc3BlY2lmaWVzIHRoYXQgQjxzdGFydC1zdG9wLWRhZW1vbj4gaXMgdG8gY2hlY2sgd2hldGhlciB0aGUgIgorInByb2Nlc3MoZXMpICBkbyBmaW5pc2guIEl0IHdpbGwgY2hlY2sgcmVwZWF0ZWRseSB3aGV0aGVyIGFueSBtYXRjaGluZyAiCisicHJvY2Vzc2VzIGFyZSBydW5uaW5nLCB1bnRpbCBub25lIGFyZS4gSWYgdGhlIHByb2Nlc3NlcyBkbyBub3QgZXhpdCBpdCB3aWxsICIKKyJ0aGVuIHRha2UgZnVydGhlciBhY3Rpb24gYXMgZGV0ZXJtaW5lZCBieSB0aGUgc2NoZWR1bGUuIgorbXNnc3RyICIiCisiVGlsbHNhbW1hbnMgbWVkIEI8LS1zdG9wPiBhbmdlciBkZXR0YSBhdHQgQjxzdGFydC1zdG9wLWRhZW1vbj4gc2thbGwgIgorImtvbnRyb2xsZXJhIGF0dCBwcm9jZXNzZW4gYXZzbHV0YXMuIERlbiB0ZXN0YXIgZmxlcmEgZ8OlbmdlciBlZnRlciBtYXRjaGFuZGUgIgorInByb2Nlc3NlciBzb20ga8O2cnMsIHRpbGxzIGluZ2VuIGzDpG5ncmUgZmlubnMga3Zhci4gT20gcHJvY2Vzc2VybmEgaW50ZSAiCisiYXZzbHV0YXIga29tbWVyIHByb2dyYW1tZXQgdXRmw7ZyYSB5dHRlcmxpZ2FyZSBrb21tYW5kb24gZW5saWd0IHNjaGVtYXQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjEzMworbXNnaWQgIiIKKyJJZiBJPHRpbWVvdXQ+IGlzIHNwZWNpZmllZCBpbnN0ZWFkIG9mIEk8c2NoZWR1bGU+LCB0aGVuIHRoZSBzY2hlZHVsZSAiCisiSTxzaWduYWw+QjwvPkk8dGltZW91dD5CPC9LSUxMLz5JPHRpbWVvdXQ+IGlzIHVzZWQsIHdoZXJlIEk8c2lnbmFsPiBpcyB0aGUgIgorInNpZ25hbCBzcGVjaWZpZWQgd2l0aCBCPC0tc2lnbmFsPi4iCittc2dzdHIgIiIKKyJPbSBJPHRpZHNncsOkbnM+IGFuZ2VzIGlzdMOkbGxldCBmw7ZyIEk8c2NoZW1hPiBrb21tZXIgc2NoZW1hdCBJPHNpZ25hbD5CPC8iCisiPkk8dGltZW91dD5CPC9LSUxMLz5JPHRpbWVvdXQ+IGF0dCBhbnbDpG5kYXMsIGTDpHIgSTxzaWduYWw+IMOkciBkZW4gc2lnbmFsIHNvbSAiCisiYW5nZXMgbWVkIEI8LS1zaWduYWw+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxNDkKK21zZ2lkICIiCisiSTxzY2hlZHVsZT4gaXMgYSBsaXN0IG9mIGF0IGxlYXN0IHR3byBpdGVtcyBzZXBhcmF0ZWQgYnkgc2xhc2hlcyAoQjwvPik7ICIKKyJlYWNoIGl0ZW0gbWF5IGJlIEI8LT5JPHNpZ25hbC1udW1iZXI+IG9yIFtCPC0+XUk8c2lnbmFsLW5hbWU+LCB3aGljaCBtZWFucyAiCisidG8gc2VuZCB0aGF0IHNpZ25hbCwgb3IgSTx0aW1lb3V0Piwgd2hpY2ggbWVhbnMgdG8gd2FpdCB0aGF0IG1hbnkgc2Vjb25kcyAiCisiZm9yIHByb2Nlc3NlcyB0byBleGl0LCBvciBCPGZvcmV2ZXI+LCB3aGljaCBtZWFucyB0byByZXBlYXQgdGhlIHJlc3Qgb2YgdGhlICIKKyJzY2hlZHVsZSBmb3JldmVyIGlmIG5lY2Vzc2FyeS4iCittc2dzdHIgIiIKKyJJPHNjaGVtYT4gw6RyIGRlbiBsaXN0YSBtZWQgw6V0bWluc3RvbmUgdHbDpSBwb3N0ZXIgYXZkZWxhZGUgbWVkIHNuZWRzdHJlY2sgKEI8LyIKKyI+KTsgdmFyamUgcG9zdCDDpHIgYW50aW5nZW4gQjwtPkk8c2lnbmFsbnVtbWVyPiBlbGxlciBbQjwtPl1JPHNpZ25hbG5hbW4+LCAiCisidmlsa2V0IGJldHlkZXIgYXR0IHNpZ25hbGVuIHNrYWxsIHPDpG5kYXMsIGVsbGVyIEk8dGltZW91dD4sIHZpbGtldCBhbmdlciBkZXQgIgorImFudGFsIHNla3VuZGVyIHByb2dyYW1tZXQgc2thbGwgdsOkbnRhIHDDpSBhdHQgcHJvY2Vzc2VuIGF2c2x1dGFyLCBlbGxlciAiCisiQjxmb3JldmVyPiwgdmlsa2V0IGJldHlkZXIgYXR0IHJlc3RlbiBhdiBzY2hlbWF0IHNrYWxsIHJlcGV0ZXJhIGbDtnIgZXZpZ3Qgb20gIgorInPDpSBiZWjDtnZzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxNTkKK21zZ2lkICIiCisiSWYgdGhlIGVuZCBvZiB0aGUgc2NoZWR1bGUgaXMgcmVhY2hlZCBhbmQgQjxmb3JldmVyPiBpcyBub3Qgc3BlY2lmaWVkLCB0aGVuICIKKyJCPHN0YXJ0LXN0b3AtZGFlbW9uPiBleGl0cyB3aXRoIGVycm9yIHN0YXR1cyAyLiAgSWYgYSBzY2hlZHVsZSBpcyBzcGVjaWZpZWQsICIKKyJ0aGVuIGFueSBzaWduYWwgc3BlY2lmaWVkIHdpdGggQjwtLXNpZ25hbD4gaXMgaWdub3JlZC4iCittc2dzdHIgIiIKKyJPbSBzbHV0ZXQgcMOlIHNjaGVtYXQgbsOlcyBvY2ggQjxmb3JldmVyPiBpbnRlIGFuZ2VzIGtvbW1lciBCPHN0YXJ0LXN0b3AtIgorImRhZW1vbj4gYXZzbHV0YXMgbWVkIGZlbGtvZCAyLiBPbSBldHQgc2NoZW1hIGFuZ2VzIGtvbW1lciBldmVudHVlbGwgc2lnbmFsICIKKyJhbmdpdmVuIG1lZCBCPC0tc2lnbmFsPiBhdHQgaWdub3JlcmFzLiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTU5CisjLCBuby13cmFwCittc2dpZCAiQjwtYT4sIEI8LS1zdGFydGFzPiBJPHBhdGhuYW1lPiIKK21zZ3N0ciAiQjwtYT4sIEI8LS1zdGFydGFzPiBJPHPDtmt2w6RnPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxNjcKK21zZ2lkICIiCisiV2l0aCBCPC0tc3RhcnQ+LCBzdGFydCB0aGUgcHJvY2VzcyBzcGVjaWZpZWQgYnkgSTxwYXRobmFtZT4uICBJZiBub3QgIgorInNwZWNpZmllZCwgZGVmYXVsdHMgdG8gdGhlIGFyZ3VtZW50IGdpdmVuIHRvIEI8LS1leGVjPi4iCittc2dzdHIgIiIKKyJUaWxsc2FtbWFucyBtZWQgQjwtLXN0YXJ0PiBhbmdlciBkZXR0YSBhdHQgcHJvY2Vzc2VuIHNvbSBhbmdlcyBtZWQgSTxzw7ZrdsOkZz4gIgorInNrYWxsIHN0YXJ0YXMuIE9tIGRlbiBpbnRlIGFuZ2VzIGFudsOkbmRzIGFyZ3VtZW50ZXQgc29tIGdhdnMgdGlsbCBCPC0tZXhlYz4uIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxNjcKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC10PiwgQjwtLXRlc3Q+IgorbXNnc3RyICJCPC10PiwgQjwtLXRlc3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjE3MQorbXNnaWQgIiIKKyJQcmludCBhY3Rpb25zIHRoYXQgd291bGQgYmUgdGFrZW4gYW5kIHNldCBhcHByb3ByaWF0ZSByZXR1cm4gdmFsdWUsIGJ1dCB0YWtlICIKKyJubyBhY3Rpb24uIgorbXNnc3RyICIiCisiU2tyaXZlciB1dCB2YWQgc29tIHNrdWxsZSBoYSB1dGbDtnJ0cyBvY2ggc8OkdHRlciByZXR1cnbDpHJkZXQsIG1lbiB1dGbDtnIgIgorImluZ2VudGluZy4iCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjE3MQorIywgbm8td3JhcAorbXNnaWQgIkI8LW8+LCBCPC0tb2tub2RvPiIKK21zZ3N0ciAiQjwtbz4sIEI8LS1va25vZG8+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjE3NAorbXNnaWQgIlJldHVybiBleGl0IHN0YXR1cyAwIGluc3RlYWQgb2YgMSBpZiBubyBhY3Rpb25zIGFyZSAod291bGQgYmUpIHRha2VuLiIKK21zZ3N0ciAiIgorIlJldHVybmVyYXIgZmVsc3RhdHVzIDAgaSBzdMOkbGxldCBmw7ZyIDEgb20gaW5nZW4gw6V0Z8OkcmQgdXRmw7Zycy9za3VsbGUgdXRmw7ZydHMuIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoxNzQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1xPiwgQjwtLXF1aWV0PiIKK21zZ3N0ciAiQjwtcT4sIEI8LS1xdWlldD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTc3Cittc2dpZCAiRG8gbm90IHByaW50IGluZm9ybWF0aW9uYWwgbWVzc2FnZXM7IG9ubHkgZGlzcGxheSBlcnJvciBtZXNzYWdlcy4iCittc2dzdHIgIlNrcml2IGludGUgaW5mb3JtYXRpb25zbWVkZGVsYW5kZW47IHZpc2EgZW5kYXN0IGZlbG1lZGRlbGFuZGVuLiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MTc3CisjLCBmdXp6eSwgbm8td3JhcAorI3wgbXNnaWQgIkI8LWM+LCBCPC0tY2h1aWQ+IEk8dXNlcm5hbWU+fEk8dWlkPiIKK21zZ2lkICJCPC1jPiwgQjwtLWNodWlkPiBJPHVzZXJuYW1lPnxJPHVpZD5bQjw6Pkk8Z3JvdXA+fEk8Z2lkPl0iCittc2dzdHIgIkI8LWM+LCBCPC0tY2h1aWQ+IEk8YW52w6RuZGFybmFtbj58STxhbnbDpG5kYXItaWQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjE5NQorbXNnaWQgIiIKKyJDaGFuZ2UgdG8gdGhpcyB1c2VybmFtZS91aWQgYmVmb3JlIHN0YXJ0aW5nIHRoZSBwcm9jZXNzLiBZb3UgY2FuIGFsc28gIgorInNwZWNpZnkgYSBncm91cCBieSBhcHBlbmRpbmcgYSBCPDo+LCB0aGVuIHRoZSBncm91cCBvciBnaWQgaW4gdGhlIHNhbWUgd2F5ICIKKyJhcyB5b3Ugd291bGQgZm9yIHRoZSBgY2hvd24nIGNvbW1hbmQgKEk8dXNlcj5CPDo+STxncm91cD4pLiAgSWYgYSB1c2VyIGlzICIKKyJzcGVjaWZpZWQgd2l0aG91dCBhIGdyb3VwLCB0aGUgcHJpbWFyeSBHSUQgZm9yIHRoYXQgdXNlciBpcyB1c2VkLiAgV2hlbiAiCisidXNpbmcgdGhpcyBvcHRpb24geW91IG11c3QgcmVhbGl6ZSB0aGF0IHRoZSBwcmltYXJ5IGFuZCBzdXBwbGVtZW50YWwgZ3JvdXBzICIKKyJhcmUgc2V0IGFzIHdlbGwsIGV2ZW4gaWYgdGhlIEI8LS1ncm91cD4gb3B0aW9uIGlzIG5vdCBzcGVjaWZpZWQuIFRoZSBCPC0tIgorImdyb3VwPiBvcHRpb24gaXMgb25seSBmb3IgZ3JvdXBzIHRoYXQgdGhlIHVzZXIgaXNuJ3Qgbm9ybWFsbHkgYSBtZW1iZXIgb2YgIgorIihsaWtlIGFkZGluZyBwZXIgcHJvY2VzcyBncm91cCBtZW1iZXJzaGlwIGZvciBnZW5lcmljIHVzZXJzIGxpa2UgQjxub2JvZHk+KS4iCittc2dzdHIgIiIKKyJCeXQgdGlsbCBhbnbDpG5kYXJuYW1uZXQvYW52w6RuZGFyLWlkOnQgaW5uYW4gcHJvY2Vzc2VuIHN0YXJ0YXMuIER1IGthbiDDpHZlbiAiCisiYW5nZSBlbiBncnVwcCBnZW5vbSBhdHQgbMOkZ2dhIHRpbGwgZXR0IGtvbG9udGVja2VuLCBCPDo+LCBmw7ZsanQgYXYgIgorImdydXBwbmFtbmV0IGVsbGVyIGdydXBwLWlkIHDDpSBzYW1tYSBzw6R0dCBzb20gZHUgc2t1bGwgZ2pvcnQgdGlsbCBcImNob3duXCItIgorImtvbW1hbmRvdCAoSTxhbnbDpG5kYXJlPkI8Oj5JPGdydXBwPikuIE9tIGR1IGFuZ2VyIGVuIGFudsOkbmRhcmUgdXRhbiBhdHQgYW5nZSAiCisiZW4gZ3J1cHAga29tbWVyIGFudsOkbmRhcmVucyBwcmltw6RyYSBncnVwcC1pZCBhdHQgYW52w6RuZGFzLiBOw6RyIGR1IGFudsOkbmRlciAiCisiYWx0ZXJuYXRpdmV0IG3DpXN0ZSBkdSBoYSBpIMOldGFua2UgYXR0IMOkdmVuIGLDpWRlIHByaW3DpHItIG9jaCB0aWxsw6RnZ3NncnVwcCAiCisic8OkdHRzLCDDpHZlbiBvbSBCPC0tZ3JvdXA+LWZsYWdnYW4gaW50ZSBhbmdlcy4gQjwtLWdyb3VwPi1mbGFnZ2FuIMOkciBiYXJhICIKKyJ0aWxsIGbDtnIgZ3J1cHBlciBzb20gYW52w6RuZGFyZW4gbm9ybWFsdCBpbnRlIMOkciBlbiBtZWRsZW0gaSAodC5leCBmw7ZyIGF0dCAiCisibMOkZ2dhIHRpbGwgZ3J1cHBtZWRsZW1za2FwIGbDtnIgZW5za2lsZGEgcHJvY2Vzc2VyIGbDtnIgc3RhbmRhcmRhbnbDpG5kYXJlICIKKyJzw6Vzb20gQjxub2JvZHk+KS4iCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjE5NQorIywgbm8td3JhcAorbXNnaWQgIkI8LXI+LCBCPC0tY2hyb290PiBJPHJvb3Q+IgorbXNnc3RyICJCPC1yPiwgQjwtLWNocm9vdD4gSTxyb3Q+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjIwMQorbXNnaWQgIiIKKyJDaGRpciBhbmQgY2hyb290IHRvIEk8cm9vdD4gYmVmb3JlIHN0YXJ0aW5nIHRoZSBwcm9jZXNzLiBQbGVhc2Ugbm90ZSB0aGF0ICIKKyJ0aGUgcGlkZmlsZSBpcyBhbHNvIHdyaXR0ZW4gYWZ0ZXIgdGhlIGNocm9vdC4iCittc2dzdHIgIiIKKyJCeXQga2F0YWxvZyBvY2ggcm90IHRpbGwgQjxyb3Q+IGlubmFuIHByb2Nlc3NlbiBzdGFydGFzLiBPYnNlcnZlcmEgYXR0IMOkdmVuICIKKyJwaWRmaWxlbiBza3JpdnMgZWZ0ZXIgY2hyb290IGhhciB1dGbDtnJ0cy4iCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjIwMQorIywgbm8td3JhcAorbXNnaWQgIkI8LWQ+LCBCPC0tY2hkaXI+IEk8cGF0aD4iCittc2dzdHIgIkI8LWQ+LCBCPC0tY2hkaXI+IEk8c8O2a3bDpGc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjIwOQorbXNnaWQgIiIKKyJDaGRpciB0byBJPHBhdGg+IGJlZm9yZSBzdGFydGluZyB0aGUgcHJvY2Vzcy4gVGhpcyBpcyBkb25lIGFmdGVyIHRoZSBjaHJvb3QgIgorImlmIHRoZSBCPC1yPnxCPC0tY2hyb290PiBvcHRpb24gaXMgc2V0LiBXaGVuIG5vdCBzcGVjaWZpZWQsIHN0YXJ0LXN0b3AtIgorImRhZW1vbiB3aWxsIGNoZGlyIHRvIHRoZSByb290IGRpcmVjdG9yeSBiZWZvcmUgc3RhcnRpbmcgdGhlIHByb2Nlc3MuIgorbXNnc3RyICIiCisiQnl0IGthdGFsb2cgdGlsbCBJPHPDtmt2w6RnPiBpbm5hbiBwcm9jZXNzZW4gc3RhcnRhcy4gRGV0dGEgZ8O2cnMgZWZ0ZXIgYnl0ZSBhdiAiCisicm90IG9tIEI8LXI+fEI8LS1jaHJvb3Q+LWZsYWdnYW4gYW5nZXMuIE9tIGZsYWdnYW4gaW50ZSBhbmdlcyBrb21tZXIgc3RhcnQtIgorInN0b3AtZGFlbW9uIGJ5dGEgdGlsbCByb3RrYXRhbG9nZW4gaW5uYW4gcHJvY2Vzc2VuIHN0YXJ0YXMuIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyMDkKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1iPiwgQjwtLWJhY2tncm91bmQ+IgorbXNnc3RyICJCPC1iPiwgQjwtLWJhY2tncm91bmQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjIyMQorbXNnaWQgIiIKKyJUeXBpY2FsbHkgdXNlZCB3aXRoIHByb2dyYW1zIHRoYXQgZG9uJ3QgZGV0YWNoIG9uIHRoZWlyIG93bi4gVGhpcyBvcHRpb24gIgorIndpbGwgZm9yY2UgQjxzdGFydC1zdG9wLWRhZW1vbj4gdG8gZm9yayBiZWZvcmUgc3RhcnRpbmcgdGhlIHByb2Nlc3MsIGFuZCAiCisiZm9yY2UgaXQgaW50byB0aGUgYmFja2dyb3VuZC4gIEI8V0FSTklORzogc3RhcnQtc3RvcC1kYWVtb24+IGNhbm5vdCBjaGVjayAiCisidGhlIGV4aXQgc3RhdHVzIGlmIHRoZSBwcm9jZXNzIGZhaWxzIHRvIGV4ZWN1dGUgZm9yIEI8YW55PiByZWFzb24uIFRoaXMgaXMgYSAiCisibGFzdCByZXNvcnQsIGFuZCBpcyBvbmx5IG1lYW50IGZvciBwcm9ncmFtcyB0aGF0IGVpdGhlciBtYWtlIG5vIHNlbnNlICIKKyJmb3JraW5nIG9uIHRoZWlyIG93biwgb3Igd2hlcmUgaXQncyBub3QgZmVhc2libGUgdG8gYWRkIHRoZSBjb2RlIGZvciB0aGVtIHRvICIKKyJkbyB0aGlzIHRoZW1zZWx2ZXMuIgorbXNnc3RyICIiCisiQW52w6RuZHMgdHlwaXNrdCBtZWQgcHJvZ3JhbSBzb20gaW50ZSBrb3BwbGFyIGxvc3Mgc2lnIGF2IHNpZyBzasOkbHZhLiBGbGFnZ2EgIgorInR2aW5nYXIgQjxzdGFydC1zdG9wLWRhZW1vbj4gYXR0IGbDtnJncmVuYSBzaWcgKGZvcmspIGlubmFuIHByb2Nlc3NlbiAiCisic3RhcnRhciwgb2NoIHR2aW5nYSBkZW4gZ3JlbmVuIGF0dCBrw7ZyYSBpIGJha2dydW5kZW4uIEI8VkFSTklORzogc3RhcnQtc3RvcC0iCisiZGFlbW9uPiBrYW4gaW50ZSBrb250cm9sbGVyYSBmZWxzdGF0dXMgZsO2ciBwcm9jZXNzZXIgc29tIGF2IEI8bsOlZ29uIHNvbSAiCisiaGVsc3Q+IGFubGVkbmluZyBtaXNzbHlja2FzIG1lZCBhdHQgZXhla3ZlcmEuIERldHRhIMOkciBlbiBzaXN0YSB1dHbDpGcsIG9jaCAiCisiw6RyIGVuZGFzdCBhdnNldHQgZsO2ciBwcm9ncmFtIHNvbSBkZXQgYW50aW5nZW4gaW50ZSDDpHIgbsOlZ29uIG1lbmluZyBhdHQgIgorImbDtnJncmVuYSBww6UgZWdlbiBoYW5kLCBlbGxlciBkw6RyIGRldCBpbnRlIMOkciBtw7ZqbGlndCBhdHQgbMOkZ2dhIHRpbGwga29kIGbDtnIgIgorImRldCBww6UgZWdlbiBoYW5kLiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjIxCisjLCBuby13cmFwCittc2dpZCAiQjwtTj4sIEI8LS1uaWNlbGV2ZWw+IEk8aW50PiIKK21zZ3N0ciAiQjwtTj4sIEI8LS1uaWNlbGV2ZWw+IEk8aGVsdGFsPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyMjQKK21zZ2lkICJUaGlzIGFsdGVycyB0aGUgcHJpb3JpdHkgb2YgdGhlIHByb2Nlc3MgYmVmb3JlIHN0YXJ0aW5nIGl0LiIKK21zZ3N0ciAiw4RuZHJhciBwcmlvcml0ZXRlbiBww6UgcHJvY2Vzc2VuIGlubmFuIGRlbiBzdGFydGFzLiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjI0CisjLCBuby13cmFwCittc2dpZCAiQjwtUD4sIEI8LS1wcm9jc2NoZWQ+IEk8cG9saWN5PkI8Oj5JPHByaW9yaXR5PiIKK21zZ3N0ciAiQjwtUD4sIEI8LS1wcm9jc2NoZWQ+IEk8cG9saWN5PkI8Oj5JPHByaW9yaXRldD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjMwCittc2dpZCAiIgorIlRoaXMgYWx0ZXJzIHRoZSBwcm9jZXNzIHNjaGVkdWxlciBwb2xpY3kgYW5kIHByaW9yaXR5IG9mIHRoZSBwcm9jZXNzIGJlZm9yZSAiCisic3RhcnRpbmcgaXQuIFRoZSBwcmlvcml0eSBjYW4gYmUgb3B0aW9uYWxseSBzcGVjaWZpZWQgYnkgYXBwZW5kaW5nIGEgQjw6PiAiCisiZm9sbG93ZWQgYnkgdGhlIHZhbHVlLiBUaGUgZGVmYXVsdCBJPHByaW9yaXR5PiBpcyAwLiBUaGUgY3VycmVudGx5IHN1cHBvcnRlZCAiCisicG9saWN5IHZhbHVlcyBhcmUgQjxvdGhlcj4sIEI8Zmlmbz4gYW5kIEI8cnI+LiIKK21zZ3N0ciAiIgorIsOEbmRyYXIgcHJvY2Vzc3NjaGVtYWzDpGdnYXJlbnMgcG9saWN5IG9jaCBwcmlvcml0ZXQgZsO2ciBwcm9jZXNzZW4gaW5uYW4gZGVuICIKKyJzdGFydGFzLiBQcmlvcml0ZXRlbiDDpHIgdmFsZnJpIG9jaCBhbmdlcyBnZW5vbSBhdHQgbMOkZ2dhIHRpbGwgZXR0IEI8Oj4gZsO2bGp0ICIKKyJhdiB2w6RyZGV0LiBTdGFuZGFyZHbDpHJkZXQgZsO2ciBJPHByaW9yaXRldD4gw6RyIDAuIEbDtnIgbsOkcnZhcmFuZGUgc3TDtmRzICIKKyJ2w6RyZGVuYSBCPG90aGVyPiwgQjxmaWZvPiBvY2ggQjxycj4gZsO2ciBJPHBvbGljeT4uIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyMzAKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC1JPiwgQjwtLWlvc2NoZWQ+IEk8Y2xhc3M+Qjw6Pkk8cHJpb3JpdHk+IgorbXNnc3RyICJCPC1JPiwgQjwtLWlvc2NoZWQ+IEk8a2xhc3M+Qjw6Pkk8cHJpb3JpdGV0PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyMzcKK21zZ2lkICIiCisiVGhpcyBhbHRlcnMgdGhlIElPIHNjaGVkdWxlciBjbGFzcyBhbmQgcHJpb3JpdHkgb2YgdGhlIHByb2Nlc3MgYmVmb3JlICIKKyJzdGFydGluZyBpdC4gVGhlIHByaW9yaXR5IGNhbiBiZSBvcHRpb25hbGx5IHNwZWNpZmllZCBieSBhcHBlbmRpbmcgYSBCPDo+ICIKKyJmb2xsb3dlZCBieSB0aGUgdmFsdWUuIFRoZSBkZWZhdWx0IEk8cHJpb3JpdHk+IGlzIDQsIHVubGVzcyBJPGNsYXNzPiBpcyAiCisiQjxpZGxlPiwgdGhlbiBJPHByaW9yaXR5PiB3aWxsIGFsd2F5cyBiZSA3LiBUaGUgY3VycmVudGx5IHN1cHBvcnRlZCB2YWx1ZXMgIgorImZvciBJPGNsYXNzPiBhcmUgQjxpZGxlPiwgQjxiZXN0LWVmZm9ydD4gYW5kIEI8cmVhbC10aW1lPi4iCittc2dzdHIgIiIKKyLDhG5kcmFyIEkvTy1zY2hlbWFsw6RnZ2FyZW5zIGtsYXNzIG9jaCAtcHJpb3JpdGV0IGbDtnIgcHJvY2Vzc2VuIGlubmFuIGRlbiAiCisic3RhcnRhcy4gUHJpb3JpdGV0ZW4gw6RyIHZhbGZyaSBvY2ggYW5nZXMgZ2Vub20gYXR0IGzDpGdnYSB0aWxsIGV0dCBCPDo+IGbDtmxqdCAiCisiYXYgdsOkcmRldC4gU3RhbmRhcmR2w6RyZGV0IGbDtnIgSTxwcmlvcml0ZXQ+IMOkciA0LCBzw6V2aWRhIGludGUgSTxrbGFzcz4gw6RyICIKKyJCPGlkbGU+LCBkw6Ugw6RyIEk8cHJpb3JpdGV0PiBhbGx0aWQgNy4gRsO2ciBuw6RydmFyYW5kZSBzdMO2ZHMgdsOkcmRlbmEgQjxpZGxlPiwgIgorIkI8YmVzdC1lZmZvcnQ+IG9jaCBCPHJlYWwtdGltZT4gZsO2ciBJPGtsYXNzPi4iCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjIzNworIywgbm8td3JhcAorbXNnaWQgIkI8LWs+LCBCPC0tdW1hc2s+IEk8bWFzaz4iCittc2dzdHIgIkI8LWs+LCBCPC0tdW1hc2s+IEk8bWFza3bDpHJkZT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjQwCittc2dpZCAiVGhpcyBzZXRzIHRoZSB1bWFzayBvZiB0aGUgcHJvY2VzcyBiZWZvcmUgc3RhcnRpbmcgaXQuIgorbXNnc3RyICJTdMOkbGxlciBpbiB1bWFza3bDpHJkZXQgcMOlIHByb2Nlc3NlbiBpbm5hbiBkZW4gc3RhcnRhcy4iCisKKyMuIHR5cGU6IFRQCisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjI0MAorIywgbm8td3JhcAorbXNnaWQgIkI8LW0+LCBCPC0tbWFrZS1waWRmaWxlPiIKK21zZ3N0ciAiQjwtbT4sIEI8LS1tYWtlLXBpZGZpbGU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjI1NQorbXNnaWQgIiIKKyJVc2VkIHdoZW4gc3RhcnRpbmcgYSBwcm9ncmFtIHRoYXQgZG9lcyBub3QgY3JlYXRlIGl0cyBvd24gcGlkIGZpbGUuIFRoaXMgIgorIm9wdGlvbiB3aWxsIG1ha2UgQjxzdGFydC1zdG9wLWRhZW1vbj4gY3JlYXRlIHRoZSBmaWxlIHJlZmVyZW5jZWQgd2l0aCBCPC0tIgorInBpZGZpbGU+IGFuZCBwbGFjZSB0aGUgcGlkIGludG8gaXQganVzdCBiZWZvcmUgZXhlY3V0aW5nIHRoZSBwcm9jZXNzLiBOb3RlLCAiCisidGhlIGZpbGUgd2lsbCBub3QgYmUgcmVtb3ZlZCB3aGVuIHN0b3BwaW5nIHRoZSBwcm9ncmFtLiAgQjxOT1RFOj4gVGhpcyAiCisiZmVhdHVyZSBtYXkgbm90IHdvcmsgaW4gYWxsIGNhc2VzLiBNb3N0IG5vdGFibHkgd2hlbiB0aGUgcHJvZ3JhbSBiZWluZyAiCisiZXhlY3V0ZWQgZm9ya3MgZnJvbSBpdHMgbWFpbiBwcm9jZXNzLiBCZWNhdXNlIG9mIHRoaXMsIGl0IGlzIHVzdWFsbHkgb25seSAiCisidXNlZnVsIHdoZW4gY29tYmluZWQgd2l0aCB0aGUgQjwtLWJhY2tncm91bmQ+IG9wdGlvbi4iCittc2dzdHIgIiIKKyJBbnbDpG5kcyBuw6RyIGV0dCBwcm9ncmFtIHNvbSBpbnRlIHNrYXBhciBzaW4gZWdlbiBwaWRmaWwgc3RhcnRhcy4gRmxhZ2dhbiAiCisia29tbWVyIGF0dCBmw6UgQjxzdGFydC1zdG9wLWRhZW1vbj4gYXR0IHNrYXBhIGZpbGVuIHNvbSBhbmdlcyBtZWQgQjwtLSIKKyJwaWRmaWxlPiBvY2ggbMOkZ2dhIHByb2Nlc3MtaWQgaSBkZW4gcHJlY2lzIGlubmFuIHByb2Nlc3NlbiBzdGFydGFzLiAiCisiT2JzZXJ2ZXJhIGF0dCBkZW4gaW50ZSBrb21tZXIgYXR0IHRhcyBib3J0IG7DpHIgcHJvZ3JhbW1ldCBzdG9wcGFzLiAiCisiQjxPQlNFUlZFUkE6PiBGdW5rdGlvbmVuIGthbnNrZSBpbnRlIGFsbHRpZCBmdW5nZXJhci4gRnJhbWbDtnJhbGx0IGludGUgbsOkciAiCisicHJvZ3JhbW1ldCBzb20gc3RhcnRhcyBmw7ZyZ3JlbmFyIHNpZyAoZm9yaykgZnLDpW4gc2luIGh1dnVkcHJvY2Vzcy4gRMOkcmbDtnIgw6RyICIKKyJmbGFnZ2FuIG9mdGFzdCBiYXJhIGFudsOkbmRiYXIgaSBzYW1iYW5kIG1lZCBmbGFnZ2FuIEI8LS1iYWNrZ3JvdW5kPi4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjU4Cittc2dpZCAiUHJpbnQgdmVyYm9zZSBpbmZvcm1hdGlvbmFsIG1lc3NhZ2VzLiIKK21zZ3N0ciAiU2tyaXYgdXQgcHJhdHNhbW1hIGluZm9ybWF0aW9uc21lZGRlbGFuZGVuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyNzAKK21zZ2lkICIiCisiVGhlIHJlcXVlc3RlZCBhY3Rpb24gd2FzIHBlcmZvcm1lZC4gSWYgQjwtLW9rbm9kbz4gd2FzIHNwZWNpZmllZCwgaXQncyBhbHNvICIKKyJwb3NzaWJsZSB0aGF0IG5vdGhpbmcgaGFkIHRvIGJlIGRvbmUuICBUaGlzIGNhbiBoYXBwZW4gd2hlbiBCPC0tc3RhcnQ+IHdhcyAiCisic3BlY2lmaWVkIGFuZCBhIG1hdGNoaW5nIHByb2Nlc3Mgd2FzIGFscmVhZHkgcnVubmluZywgb3Igd2hlbiBCPC0tc3RvcD4gd2FzICIKKyJzcGVjaWZpZWQgYW5kIHRoZXJlIHdlcmUgbm8gbWF0Y2hpbmcgcHJvY2Vzc2VzLiIKK21zZ3N0ciAiIgorIkVmdGVyZnLDpWdhZCDDpXRnw6RyZCB1dGbDtnJkZXMuIE9tIEI8LS1va25vZG8+IGFuZ2F2cyDDpHIgZGV0IMOkdmVuIG3DtmpsaWd0IGF0dCAiCisiaW5nZW50aW5nIGJlaMO2dmRlIHV0ZsO2cmFzLiBEZXQga2FuIGjDpG5kYSBuw6RyIEI8LS1zdGFydD4gYW5nYXZzIG9jaCBlbiAiCisibW90c3ZhcmFuZGUgcHJvY2VzcyByZWRhbiBrw7ZyZGUsIGVsbGVyIG7DpHIgQjwtLXN0b3A+IGFuZ2F2cyBvY2ggZGV0IGludGUgIgorImZhbm5zIG7DpWdvbiBtb3RzdmFyYW5kZSBwcm9jZXNzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyNzUKK21zZ2lkICJJZiBCPC0tb2tub2RvPiB3YXMgbm90IHNwZWNpZmllZCBhbmQgbm90aGluZyB3YXMgZG9uZS4iCittc2dzdHIgIk9tIEI8LS1va25vZG8+IGludGUgYW5nYXZzIG9jaCBpbmdlbnRpbmcgZ2pvcmRlcy4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjgzCittc2dpZCAiIgorIklmIEI8LS1zdG9wPiBhbmQgQjwtLXJldHJ5PiB3ZXJlIHNwZWNpZmllZCwgYnV0IHRoZSBlbmQgb2YgdGhlIHNjaGVkdWxlIHdhcyAiCisicmVhY2hlZCBhbmQgdGhlIHByb2Nlc3NlcyB3ZXJlIHN0aWxsIHJ1bm5pbmcuIgorbXNnc3RyICIiCisiT20gQjwtLXN0b3A+IG9jaCBCPC0tcmV0cnk+IGFuZ2F2cywgbWVuIHNsdXRldCBww6UgdGlkdGFiZWxsZW4gbsOlZGRlcyBvY2ggIgorInByb2Nlc3NlbiBmb3J0ZmFyYW5kZSBrw7ZyZGVzLiIKKworIy4gdHlwZTogVFAKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6MjgzIHN0YXJ0LXN0b3AtZGFlbW9uLjg6Mjk1CisjLCBuby13cmFwCittc2dpZCAiQjwzPiIKK21zZ3N0ciAiQjwzPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyODYKK21zZ2lkICJBbnkgb3RoZXIgZXJyb3IuIgorbXNnc3RyICJBbGxhIGFuZHJhIGZlbC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHN0YXJ0LXN0b3AtZGFlbW9uLjg6Mjg5Cittc2dpZCAiIgorIldoZW4gdXNpbmcgdGhlIEI8LS1zdGF0dXM+IGNvbW1hbmQsIHRoZSBmb2xsb3dpbmcgc3RhdHVzIGNvZGVzIGFyZSByZXR1cm5lZDoiCittc2dzdHIgIk1lZCBCPC0tc3RhdHVzPi3DpXRnw6RyZGVuIHJldHVybmVyYXMgZsO2bGphbmRlIHN0YXR1c2tvZGVyOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyOTIKK21zZ2lkICJQcm9ncmFtIGlzIHJ1bm5pbmcuIgorbXNnc3RyICJQcm9ncmFtbWV0IGvDtnIuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjI5NQorbXNnaWQgIlByb2dyYW0gaXMgbm90IHJ1bm5pbmcgYW5kIHRoZSBwaWQgZmlsZSBleGlzdHMuIgorbXNnc3RyICJQcm9ncmFtbWV0IGvDtnIgaW50ZSBvY2ggcGlkLWZpbGVuIGZpbm5zLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyOTgKK21zZ2lkICJQcm9ncmFtIGlzIG5vdCBydW5uaW5nLiIKK21zZ3N0ciAiUHJvZ3JhbW1ldCBrw7ZyIGludGUuIgorCisjLiB0eXBlOiBUUAorIzogc3RhcnQtc3RvcC1kYWVtb24uODoyOTgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPDQ+IgorbXNnc3RyICJCPDQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjMwMQorbXNnaWQgIlVuYWJsZSB0byBkZXRlcm1pbmUgcHJvZ3JhbSBzdGF0dXMuIgorbXNnc3RyICJLYW4gaW50ZSB0YSByZWRhIHDDpSBwcm9ncmFtbWV0cyBzdGF0dXMuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjMwNQorbXNnaWQgIiIKKyJTdGFydCB0aGUgQjxmb29kPiBkYWVtb24sIHVubGVzcyBvbmUgaXMgYWxyZWFkeSBydW5uaW5nIChhIHByb2Nlc3MgbmFtZWQgIgorImZvb2QsIHJ1bm5pbmcgYXMgdXNlciBmb29kLCB3aXRoIHBpZCBpbiBmb29kLnBpZCk6IgorbXNnc3RyICIiCisiU3RhcnRhIHNlcnZlcnByb2Nlc3NlbiBCPGZvb2Q+LCBzw6V2aWRhIGludGUgZW4gcmVkYW4ga8O2ciAoZW4gcHJvY2VzcyBtZWQgIgorIm5hbW5ldCBmb29kLCBzb20ga8O2cnMgc29tIGFudsOkbmRhcmVuIGZvb2QsIG1lZCBwcm9jZXNzLWlkIGkgZm9vZC5waWQpOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODozMDgKKyMsIG5vLXdyYXAKK21zZ2lkICJzdGFydC1zdG9wLWRhZW1vbiAtLXN0YXJ0IC0tb2tub2RvIC0tdXNlciBmb29kIC0tbmFtZSBmb29kIC0tcGlkZmlsZSAvdmFyL3J1bi9mb29kLnBpZCAtLXN0YXJ0YXMgL3Vzci9zYmluL2Zvb2QgLS1jaHVpZCBmb29kIC0tIC0tZGFlbW9uXG4iCittc2dzdHIgInN0YXJ0LXN0b3AtZGFlbW9uIC0tc3RhcnQgLS1va25vZG8gLS11c2VyIGZvb2QgLS1uYW1lIGZvb2QgLS1waWRmaWxlIC92YXIvcnVuL2Zvb2QucGlkIC0tc3RhcnRhcyAvdXNyL3NiaW4vZm9vZCAtLWNodWlkIGZvb2QgLS0gLS1kYWVtb25cbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODozMTEKK21zZ2lkICJTZW5kIEI8U0lHVEVSTT4gdG8gQjxmb29kPiBhbmQgd2FpdCB1cCB0byA1IHNlY29uZHMgZm9yIGl0IHRvIHN0b3A6IgorbXNnc3RyICIiCisiU8OkbmQgQjxTSUdURVJNPiB0aWxsIEI8Zm9vZD4gb2NoIHbDpG50YSB1cHAgdGlsbCBmZW0gc2VrdW5kZXIgcMOlIGF0dCBkZW4gIgorInNrYWxsIGF2c2x1dGFzOiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODozMTQKKyMsIG5vLXdyYXAKK21zZ2lkICJzdGFydC1zdG9wLWRhZW1vbiAtLXN0b3AgLS1va25vZG8gLS11c2VyIGZvb2QgLS1uYW1lIGZvb2QgLS1waWRmaWxlIC92YXIvcnVuL2Zvb2QucGlkIC0tcmV0cnkgNVxuIgorbXNnc3RyICJzdGFydC1zdG9wLWRhZW1vbiAtLXN0b3AgLS1va25vZG8gLS11c2VyIGZvb2QgLS1uYW1lIGZvb2QgLS1waWRmaWxlIC92YXIvcnVuL2Zvb2QucGlkIC0tcmV0cnkgNVxuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjMxNworbXNnaWQgIkRlbW9uc3RyYXRpb24gb2YgYSBjdXN0b20gc2NoZWR1bGUgZm9yIHN0b3BwaW5nIEI8Zm9vZD46IgorbXNnc3RyICJEZW1vbnN0cmF0aW9uIGF2IGV0dCBza3LDpGRkYXJzeXR0IHNjaGVtYSBmw7ZyIGF0dCBhdnNsdXRhIEI8Zm9vZD46IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiBzdGFydC1zdG9wLWRhZW1vbi44OjMyMAorIywgbm8td3JhcAorbXNnaWQgInN0YXJ0LXN0b3AtZGFlbW9uIC0tc3RvcCAtLW9rbm9kbyAtLXVzZXIgZm9vZCAtLW5hbWUgZm9vZCAtLXBpZGZpbGUgL3Zhci9ydW4vZm9vZC5waWQgLS1yZXRyeT1URVJNLzMwL0tJTEwvNVxuIgorbXNnc3RyICJzdGFydC1zdG9wLWRhZW1vbiAtLXN0b3AgLS1va25vZG8gLS11c2VyIGZvb2QgLS1uYW1lIGZvb2QgLS1waWRmaWxlIC92YXIvcnVuL2Zvb2QucGlkIC0tcmV0cnk9VEVSTS8zMC9LSUxMLzVcbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODozMjYKK21zZ2lkICIiCisiTWFyZWsgTWljaGFsa2lld2ljeiBFPGx0Pm1hcmVrbUBpMTdsaW51eGIuaXN0cy5wd3Iud3JvYy5wbEU8Z3Q+IGJhc2VkIG9uIGEgIgorInByZXZpb3VzIHZlcnNpb24gYnkgSWFuIEphY2tzb24gRTxsdD5pYW5AY2hpYXJrLmdyZWVuZW5kLm9yZy51a0U8Z3Q+LiIKK21zZ3N0ciAiIgorIk1hcmVrIE1pY2hhbGtpZXdpY3ogRTxsdD5tYXJla21AaTE3bGludXhiLmlzdHMucHdyLndyb2MucGxFPGd0PiwgYmFzZXJhdCBww6UgIgorImVuIHRpZGlnYXJlIHZlcnNpb24gYXYgSWFuIEphY2tzb24gRTxsdD5pYW5AY2hpYXJrLmdyZWVuZW5kLm9yZy51a0U8Z3Q+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogc3RhcnQtc3RvcC1kYWVtb24uODozMjgKK21zZ2lkICIiCisiTWFudWFsIHBhZ2UgYnkgS2xlZSBEaWVuZXMgRTxsdD5rbGVlQG1pdC5lZHVFPGd0PiwgcGFydGlhbGx5IHJlZm9ybWF0dGVkIGJ5ICIKKyJJYW4gSmFja3Nvbi4iCittc2dzdHIgIiIKKyJNYW51YWxzaWRhIGF2IEtsZWUgRGllbmVzIEU8bHQ+a2xlZUBtaXQuZWR1RTxndD4sIGRlbHZpcyBvbWZvcm1hdGVyYWQgYXYgSWFuICIKKyJKYWNrc29uLCDDtnZlcnNhdHQgYXYgUGV0ZXIgS3JlZnRpbmcgRTxsdD5wZXRlcmtAZGViaWFuLm9yZ0U8Z3Q+LiIKKworIy4gdHlwZTogVEgKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo4CisjLCBuby13cmFwCittc2dpZCAidXBkYXRlLWFsdGVybmF0aXZlcyIKK21zZ3N0ciAidXBkYXRlLWFsdGVybmF0aXZlcyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjExCittc2dpZCAiIgorInVwZGF0ZS1hbHRlcm5hdGl2ZXMgLSBtYWludGFpbiBzeW1ib2xpYyBsaW5rcyBkZXRlcm1pbmluZyBkZWZhdWx0IGNvbW1hbmRzIgorbXNnc3RyICIiCisidXBkYXRlLWFsdGVybmF0aXZlcyAtIHVuZGVyaMOlbGxlciBzeW1ib2xpc2thIGzDpG5rYXIgZsO2ciBhdHQgYmVzdMOkbW1hICIKKyJzdGFuZGFyZGtvbW1hbmRvbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE1Cittc2dpZCAiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBbSTxvcHRpb24+Li4uXSBJPGNvbW1hbmQ+IgorbXNnc3RyICJCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IFtJPGZsYWdnYT4uLi5dIEk8w6V0Z8OkcmQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjAKK21zZ2lkICIiCisiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBjcmVhdGVzLCByZW1vdmVzLCBtYWludGFpbnMgYW5kIGRpc3BsYXlzIGluZm9ybWF0aW9uICIKKyJhYm91dCB0aGUgc3ltYm9saWMgbGlua3MgY29tcHJpc2luZyB0aGUgRGViaWFuIGFsdGVybmF0aXZlcyBzeXN0ZW0uIgorbXNnc3RyICIiCisiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBza2FwYXIsIHRhciBib3J0LCB1bmRlcmjDpWxsZXIgb2NoIHZpc2FyIGluZm9ybWF0aW9uICIKKyJvbSBkZSBzeW1ib2xpc2thIGzDpG5rYXIgc29tIGluZ8OlciBpIERlYmlhbnMgYWx0ZXJuYXRpdnN5c3RlbS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyOAorbXNnaWQgIiIKKyJJdCBpcyBwb3NzaWJsZSBmb3Igc2V2ZXJhbCBwcm9ncmFtcyBmdWxmaWxsaW5nIHRoZSBzYW1lIG9yIHNpbWlsYXIgZnVuY3Rpb25zICIKKyJ0byBiZSBpbnN0YWxsZWQgb24gYSBzaW5nbGUgc3lzdGVtIGF0IHRoZSBzYW1lIHRpbWUuICBGb3IgZXhhbXBsZSwgbWFueSAiCisic3lzdGVtcyBoYXZlIHNldmVyYWwgdGV4dCBlZGl0b3JzIGluc3RhbGxlZCBhdCBvbmNlLiAgVGhpcyBnaXZlcyBjaG9pY2UgdG8gIgorInRoZSB1c2VycyBvZiBhIHN5c3RlbSwgYWxsb3dpbmcgZWFjaCB0byB1c2UgYSBkaWZmZXJlbnQgZWRpdG9yLCBpZiBkZXNpcmVkLCAiCisiYnV0IG1ha2VzIGl0IGRpZmZpY3VsdCBmb3IgYSBwcm9ncmFtIHRvIG1ha2UgYSBnb29kIGNob2ljZSBmb3IgYW4gZWRpdG9yIHRvICIKKyJpbnZva2UgaWYgdGhlIHVzZXIgaGFzIG5vdCBzcGVjaWZpZWQgYSBwYXJ0aWN1bGFyIHByZWZlcmVuY2UuIgorbXNnc3RyICIiCisiRGV0IMOkciBtw7ZqbGlndCBmw7ZyIGZsZXJhIGtvbW1hbmRvbiBzb20gdGlsbGhhbmRhaMOlbGxlciBpZGVudGlzayBlbGxlciAiCisibGlrbmFuZGUgZnVua3Rpb25hbGl0ZXQgYXR0IHZhcmEgaW5zdGFsbGVyYWRlIHDDpSBldHQgc3lzdGVtIHNhbXRpZGlndC4gVGlsbCAiCisiZXhlbXBlbCBoYXIgbcOlbmdhIHN5c3RlbSBmbGVyYSB0ZXh0cmVkaWdlcmluZ3Nwcm9ncmFtIGluc3RhbGxlcmFkZSAiCisic2FtdGlkaWd0LCB2aWxrZXQgZ2VyIGFudsOkbmRhcm5hIHDDpSBzeXN0ZW1ldCB2YWxtw7ZqbGlnaGV0ZXIsIHZhciBvY2ggZW4ga2FuICIKKyJhbnbDpG5kYSBvbGlrYSB0ZXh0cmVkaWdlcmluZ3Nwcm9ncmFtIG9tIGRlIHPDpSDDtm5za2FyLCBtZW4gZGV0IGfDtnIgZGV0IHN2w6VydCAiCisiZsO2ciBldHQgcHJvZ3JhbSBhdHQgZ8O2cmEgZXR0IGJyYSB2YWwgYXYgdGV4dHJlZGlnZXJhcmUgYXR0IGFucm9wYSBvbSBlbiAiCisiYW52w6RuZGFyZSBpbnRlIGhhciBnam9ydCBldHQgc3BlY2lmaWt0IHZhbC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo1MAorbXNnaWQgIiIKKyJEZWJpYW4ncyBhbHRlcm5hdGl2ZXMgc3lzdGVtIGFpbXMgdG8gc29sdmUgdGhpcyBwcm9ibGVtLiAgQSBnZW5lcmljIG5hbWUgaW4gIgorInRoZSBmaWxlc3lzdGVtIGlzIHNoYXJlZCBieSBhbGwgZmlsZXMgcHJvdmlkaW5nIGludGVyY2hhbmdlYWJsZSAiCisiZnVuY3Rpb25hbGl0eS4gIFRoZSBhbHRlcm5hdGl2ZXMgc3lzdGVtIGFuZCB0aGUgc3lzdGVtIGFkbWluaXN0cmF0b3IgIgorInRvZ2V0aGVyIGRldGVybWluZSB3aGljaCBhY3R1YWwgZmlsZSBpcyByZWZlcmVuY2VkIGJ5IHRoaXMgZ2VuZXJpYyBuYW1lLiAgIgorIkZvciBleGFtcGxlLCBpZiB0aGUgdGV4dCBlZGl0b3JzIEI8ZWQ+KDEpICBhbmQgQjxudmk+KDEpICBhcmUgYm90aCBpbnN0YWxsZWQgIgorIm9uIHRoZSBzeXN0ZW0sIHRoZSBhbHRlcm5hdGl2ZXMgc3lzdGVtIHdpbGwgY2F1c2UgdGhlIGdlbmVyaWMgbmFtZSBJPC91c3IvIgorImJpbi9lZGl0b3I+IHRvIHJlZmVyIHRvIEk8L3Vzci9iaW4vbnZpPiBieSBkZWZhdWx0LiBUaGUgc3lzdGVtIGFkbWluaXN0cmF0b3IgIgorImNhbiBvdmVycmlkZSB0aGlzIGFuZCBjYXVzZSBpdCB0byByZWZlciB0byBJPC91c3IvYmluL2VkPiBpbnN0ZWFkLCBhbmQgdGhlICIKKyJhbHRlcm5hdGl2ZXMgc3lzdGVtIHdpbGwgbm90IGFsdGVyIHRoaXMgc2V0dGluZyB1bnRpbCBleHBsaWNpdGx5IHJlcXVlc3RlZCAiCisidG8gZG8gc28uIgorbXNnc3RyICIiCisiRGViaWFucyBhbHRlcm5hdGl2c3lzdGVtIGbDtnJzw7ZrZXIgbMO2c2EgZGV0dGEgcHJvYmxlbS4gRXR0IGdlbmVyaXNrdCBuYW1uIGkgIgorImZpbHN5c3RlbWV0IGRlbGFzIGF2IGFsbGEgZmlsZXIgc29tIHRpbGxoYW5kYWjDpWxsZXIgdXRieXRiYXIgZnVua3Rpb25hbGl0ZXQuICIKKyJBbHRlcm5hdGl2c3lzdGVtZXQgb2NoIHN5c3RlbWFkbWluaXN0cmF0w7ZyZW4gYW5nZXIgdGlsbHNhbW1hbnMgdmlsa2VuICIKKyJzcGVjaWZpayBmaWwgc29tIHNrYWxsIHJlZmVyZXJhcyBhdiBzaXR0IGdlbmVyaXNrYSBuYW1uLiBUaWxsIGV4ZW1wZWwga2FuICIKKyJhbHRlcm5hdGl2c3lzdGVtZXQgbMOldGEgZGV0IGdlbmVyaXNrYSBuYW1uZXQgSTwvdXNyL2Jpbi9lZGl0b3I+IGF0dCBwZWthIG1vdCAiCisiSTwvdXNyL2Jpbi9udmk+IHNvbSBzdGFuZGFyZCBvbSBiw6VkZSB0ZXh0cmVkaWdlcmluZ3Nwcm9ncmFtbWV0IEI8ZWQ+KDEpIG9jaCAiCisiQjxudmk+KDEpIGLDpWRhIMOkciBpbnN0YWxsZXJhZGUgcMOlIHN5c3RlbWV0LiBTeXN0ZW1hZG1pbmlzdHJhdMO2cmVuIGthbiAiCisiw7Z2ZXJzdHlyYSBkZXR0YSBvY2ggbMOldGEgZGV0IHBla2EgcMOlIEk8L3Vzci9iaW4vZWQ+IGlzdMOkbGxldCwgb2NoICIKKyJhbHRlcm5hdGl2c3lzdGVtZXQga29tbWVyIGludGUgw6RuZHJhIGRlbm5hIGluc3TDpGxsbmluZyBmw7ZycsOkbiBkZXQgb21iZWRzIGF0dCAiCisiZ8O2cmEgZGV0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjYwCittc2dpZCAiIgorIlRoZSBnZW5lcmljIG5hbWUgaXMgbm90IGEgZGlyZWN0IHN5bWJvbGljIGxpbmsgdG8gdGhlIHNlbGVjdGVkIGFsdGVybmF0aXZlLiAgIgorIkluc3RlYWQsIGl0IGlzIGEgc3ltYm9saWMgbGluayB0byBhIG5hbWUgaW4gdGhlIEk8YWx0ZXJuYXRpdmVzPiAiCisiSTxkaXJlY3Rvcnk+LCB3aGljaCBpbiB0dXJuIGlzIGEgc3ltYm9saWMgbGluayB0byB0aGUgYWN0dWFsIGZpbGUgIgorInJlZmVyZW5jZWQuICBUaGlzIGlzIGRvbmUgc28gdGhhdCB0aGUgc3lzdGVtIGFkbWluaXN0cmF0b3IncyBjaGFuZ2VzIGNhbiBiZSAiCisiY29uZmluZWQgd2l0aGluIHRoZSBJPC9ldGM+IGRpcmVjdG9yeTogdGhlIEZIUyAocS52LikgZ2l2ZXMgcmVhc29ucyB3aHkgdGhpcyAiCisiaXMgYSBHb29kIFRoaW5nLiIKK21zZ3N0ciAiIgorIkRldCBnZW5lcmlza2EgbmFtbmV0IMOkciBpbnRlIGVuIGRpcmVrdCBzeW1ib2xpc2sgbMOkbmsgdGlsbCBkZXQgdmFsZGEgIgorImFsdGVybmF0aXZldC4gSXN0w6RsbGV0IMOkciBkZXQgZW4gc3ltYm9saXNrIGzDpG5rIHRpbGwgZXR0IG5hbW4gaSBrYXRhbG9nZW4gIgorIkk8YWx0ZXJuYXRpdmVzPiwgdmlsa2V0IGkgc2luIHR1ciDDpHIgZW4gc3ltYm9saXNrIGzDpG5rIHRpbGwgZGVuIGZha3Rpc2thIGZpbCAiCisiZGV0IHBla2FyIG1vdC4gRGV0dGEgZ8O2cnMgc8OlIGF0dCBzeXN0ZW1hZG1pbmlzdHJhdMO2cmVucyDDpG5kcmluZ2FyIGthbiAiCisiYmVncsOkbnNhcyB0aWxsIGthdGFsb2dlbiBJPC9ldGM+OiBGSFMgKHNlIGRldHRhKSBnZXIgb3JzYWtlciB0aWxsIHZhcmbDtnIgIgorImRldHRhIMOkciBCcmEuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NzIKK21zZ2lkICIiCisiV2hlbiBlYWNoIHBhY2thZ2UgcHJvdmlkaW5nIGEgZmlsZSB3aXRoIGEgcGFydGljdWxhciBmdW5jdGlvbmFsaXR5IGlzICIKKyJpbnN0YWxsZWQsIGNoYW5nZWQgb3IgcmVtb3ZlZCwgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBpcyBjYWxsZWQgdG8gdXBkYXRlICIKKyJpbmZvcm1hdGlvbiBhYm91dCB0aGF0IGZpbGUgaW4gdGhlIGFsdGVybmF0aXZlcyBzeXN0ZW0uICBCPHVwZGF0ZS0iCisiYWx0ZXJuYXRpdmVzPiBpcyB1c3VhbGx5IGNhbGxlZCBmcm9tIHRoZSBCPHBvc3RpbnN0PiAoY29uZmlndXJlKSBvciBCPHByZXJtPiAiCisiKGluc3RhbGwpIHNjcmlwdHMgaW4gRGViaWFuIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorIk7DpHIgZXR0IHBha2V0IHNvbSB0aWxsaGFuZGFow6VsbGVyIGVuIGZpbCBtZWQgZW4gc3BlY2lmaWsgZnVua3Rpb25hbGl0ZXQgIgorImluc3RhbGxlcmFzLCDDpG5kcmFzIGVsbGVyIHRhcyBib3J0LCBhbnJvcGFzIEI8dXBkYXRlLWFsdGVybmF0aXZlcz4gZsO2ciBhdHQgIgorInVwcGRhdGVyYSBpbmZvcm1hdGlvbiBvbSBmaWxlbiBpIGFsdGVybmF0aXZzeXN0ZW1ldC4gQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiAiCisiYW5yb3BhcyBub3JtYWx0IGZyw6VuIEI8cG9zdGluc3Q+LSAoY29uZmlndXJlKSBlbGxlciBCPHByZXJtPi1za3JpcHRlbiAiCisiKGluc3RhbGwpIGkgRGViaWFucGFrZXQuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6OTEKK21zZ2lkICIiCisiSXQgaXMgb2Z0ZW4gdXNlZnVsIGZvciBhIG51bWJlciBvZiBhbHRlcm5hdGl2ZXMgdG8gYmUgc3luY2hyb25pc2VkLCBzbyB0aGF0ICIKKyJ0aGV5IGFyZSBjaGFuZ2VkIGFzIGEgZ3JvdXA7IGZvciBleGFtcGxlLCB3aGVuIHNldmVyYWwgdmVyc2lvbnMgb2YgdGhlIEI8dmk+IgorIigxKSAgZWRpdG9yIGFyZSBpbnN0YWxsZWQsIHRoZSBtYW4gcGFnZSByZWZlcmVuY2VkIGJ5IEk8L3Vzci9zaGFyZS9tYW4vbWFuMS8iCisidmkuMT4gc2hvdWxkIGNvcnJlc3BvbmQgdG8gdGhlIGV4ZWN1dGFibGUgcmVmZXJlbmNlZCBieSBJPC91c3IvYmluL3ZpPi4gICIKKyJCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IGhhbmRsZXMgdGhpcyBieSBtZWFucyBvZiBJPG1hc3Rlcj4gYW5kIEk8c2xhdmU+ICIKKyJsaW5rczsgd2hlbiB0aGUgbWFzdGVyIGlzIGNoYW5nZWQsIGFueSBhc3NvY2lhdGVkIHNsYXZlcyBhcmUgY2hhbmdlZCB0b28uICBBICIKKyJtYXN0ZXIgbGluayBhbmQgaXRzIGFzc29jaWF0ZWQgc2xhdmVzIG1ha2UgdXAgYSBJPGxpbms+IEk8Z3JvdXA+LiIKK21zZ3N0ciAiIgorIkRldCDDpHIgb2Z0YSBsw6RtcGxpZ3QgZsO2ciBldHQgYW50YWwgYWx0ZXJuYXRpdiBhdHQgdmFyYSBzeW5rcm9uaXNlcmFkZSwgc8OlICIKKyJhdHQgZGUgw6RuZHJhcyBpIGdydXBwLiBUaWxsIGV4ZW1wZWwsIG9tIGRldCDDpHIgZmxlcmEgdmVyc2lvbmVyIGF2ICIKKyJ0ZXh0cmVkaWdlcmFyZW4gQjx2aT4oMSkgaW5zdGFsbGVyYWRlIGLDtnIgbWFudWFsc2lkYW4gc29tIHJlZmVyZXJhcyB0aWxsIGF2ICIKKyJJPC91c3Ivc2hhcmUvbWFuL21hbjEvdmkuMT4gbW90c3ZhcmEgZGVuIGJpbsOkciBzb20gcmVmZXJlcmFzIHRpbGwgYXYgSTwvdXNyLyIKKyJiaW4vdmk+LiBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IGhhbnRlcmFyIGRldHRhIGdlbm9tIEk8aHV2dWQ+LSBvY2ggSTxzbGF2Pi0iCisibMOkbmthci4gTsOkciBodXZ1ZGzDpG5rZW4gdXBwZGF0ZXJhcyDDpG5kcmFzIMOkdmVuIGFuc2x1dG5hIHNsYXZsw6Rua2FyLiBFbiAiCisiaHV2dWRsw6RuayBvY2ggZGVzcyBhbnNsdXRuYSBzbGF2YXIgdXRnw7ZyIGVuIEk8bMOkbmtncnVwcD4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTAwCittc2dpZCAiIgorIkVhY2ggbGluayBncm91cCBpcywgYXQgYW55IGdpdmVuIHRpbWUsIGluIG9uZSBvZiB0d28gbW9kZXM6IGF1dG9tYXRpYyBvciAiCisibWFudWFsLiAgV2hlbiBhIGdyb3VwIGlzIGluIGF1dG9tYXRpYyBtb2RlLCB0aGUgYWx0ZXJuYXRpdmVzIHN5c3RlbSB3aWxsICIKKyJhdXRvbWF0aWNhbGx5IGRlY2lkZSwgYXMgcGFja2FnZXMgYXJlIGluc3RhbGxlZCBhbmQgcmVtb3ZlZCwgd2hldGhlciBhbmQgaG93ICIKKyJ0byB1cGRhdGUgdGhlIGxpbmtzLiAgSW4gbWFudWFsIG1vZGUsIHRoZSBhbHRlcm5hdGl2ZXMgc3lzdGVtIHdpbGwgcmV0YWluICIKKyJ0aGUgY2hvaWNlIG9mIHRoZSBhZG1pbmlzdHJhdG9yIGFuZCBhdm9pZCBjaGFuZ2luZyB0aGUgbGlua3MgKGV4Y2VwdCB3aGVuICIKKyJzb21ldGhpbmcgaXMgYnJva2VuKS4iCittc2dzdHIgIiIKKyJFbiBsw6Rua2dydXBwIGthbiB2aWQgdmFyamUgZ2l2ZW4gdGlkcHVua3QgdmFyYSBpIGV0dCBhdiB0dsOlIGzDpGdlbjogIgorImF1dG9tYXRpc2sgZWxsZXIgbWFudWVsbC4gTsOkciBlbiBncnVwcCDDpHIgaSBhdXRvbWF0aXNrdCBsw6RnZSBrb21tZXIgIgorImFsdGVybmF0aXZzeXN0ZW1ldCBhdXRvbWF0aXNrdCBhdHQgYmVzdMOkbW1hIG7DpHIgb2NoIGh1ciBsw6Rua2FyIHNrYWxsICIKKyJ1cHBkYXRlcmFzIGTDpSBwYWtldCBpbnN0YWxsZXJhcyBlbGxlciB0YXMgYm9ydC4gSSBtYW51ZWxsdCBsw6RnZSBrb21tZXIgIgorImFsdGVybmF0aXZzeXN0ZW1ldCBhdHQgYmVow6VsbGEgYWRtaW5pc3RyYXTDtnJlbnMgdmFsIG9jaCB1bmR2aWthIGF0dCDDpG5kcmEgIgorImzDpG5rYXJuYSAoZsO2cnV0b20gb20gbsOlZ290IMOkciB0cmFzaWd0KS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxMDkKK21zZ2lkICIiCisiTGluayBncm91cHMgYXJlIGluIGF1dG9tYXRpYyBtb2RlIHdoZW4gdGhleSBhcmUgZmlyc3QgaW50cm9kdWNlZCB0byB0aGUgIgorInN5c3RlbS4gIElmIHRoZSBzeXN0ZW0gYWRtaW5pc3RyYXRvciBtYWtlcyBjaGFuZ2VzIHRvIHRoZSBzeXN0ZW0ncyBhdXRvbWF0aWMgIgorInNldHRpbmdzLCB0aGlzIHdpbGwgYmUgbm90aWNlZCB0aGUgbmV4dCB0aW1lIEI8dXBkYXRlLWFsdGVybmF0aXZlcz4gaXMgcnVuICIKKyJvbiB0aGUgY2hhbmdlZCBsaW5rJ3MgZ3JvdXAsIGFuZCB0aGUgZ3JvdXAgd2lsbCBhdXRvbWF0aWNhbGx5IGJlIHN3aXRjaGVkIHRvICIKKyJtYW51YWwgbW9kZS4iCittc2dzdHIgIiIKKyJMw6Rua2dydXBwZXIgw6RyIGkgYXV0b21hdGlza3QgbMOkZ2UgbsOkciBkZSBmw7Zyc3QgaW50cm9kdWNlcmFzIHDDpSBzeXN0ZW1ldC4gT20gIgorInN5c3RlbWFkbWluaXN0cmF0w7ZyZW4gZ8O2ciDDpG5kcmluZ2FyIHRpbGwgc3lzdGVtZXRzIGF1dG9tYXRpc2thIGluc3TDpGxsbmluZ2FyICIKKyJrb21tZXIgZGV0dGEgYXR0IG5vdGVyYXMgbsOkc3RhIGfDpW5nIEI8dXBkYXRlLWFsdGVybmF0aXZlcz4ga8O2cnMgcMOlIGRlbiAiCisiw6RuZHJhZGUgbMOkbmtlbnMgZ3J1cHAgb2NoIGdydXBwZW4ga29tbWVyIGF1dG9tYXRpc2t0IGF0dCB2w6R4bGFzIHRpbGwgIgorIm1hbnVlbGx0IGzDpGdlLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjExNgorbXNnaWQgIiIKKyJFYWNoIGFsdGVybmF0aXZlIGhhcyBhIEk8cHJpb3JpdHk+IGFzc29jaWF0ZWQgd2l0aCBpdC4gIFdoZW4gYSBsaW5rIGdyb3VwIGlzICIKKyJpbiBhdXRvbWF0aWMgbW9kZSwgdGhlIGFsdGVybmF0aXZlcyBwb2ludGVkIHRvIGJ5IG1lbWJlcnMgb2YgdGhlIGdyb3VwIHdpbGwgIgorImJlIHRob3NlIHdoaWNoIGhhdmUgdGhlIGhpZ2hlc3QgcHJpb3JpdHkuIgorbXNnc3RyICIiCisiVmFyamUgYWx0ZXJuYXRpdiBoYXIgZW4gSTxwcmlvcml0ZXQ+IGtvcHBsYWQgdGlsbCBzaWcuIE7DpHIgZW4gbMOkbmtncnVwcCDDpHIgaSAiCisiYXV0b21hdGlza3QgbMOkZ2Uga29tbWVyIGRldCBhbHRlcm5hdGl2IHNvbSBtZWRsZW1tYXIgaSBncnVwcGVuIHBla2FyIG1vdCAiCisidmFyYSBkZW4gbWVkIGRlbiBow7Znc3RhIHByaW9yaXRldGVuLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjEzMworbXNnaWQgIiIKKyJXaGVuIHVzaW5nIHRoZSBCPC0tY29uZmlnPiBvcHRpb24sIEI8dXBkYXRlLWFsdGVybmF0aXZlcz4gd2lsbCBsaXN0IGFsbCBvZiAiCisidGhlIGNob2ljZXMgZm9yIHRoZSBsaW5rIGdyb3VwIG9mIHdoaWNoIGdpdmVuIEk8bmFtZT4gaXMgdGhlIG1hc3RlciAiCisiYWx0ZXJuYXRpdmUgbmFtZS4gVGhlIGN1cnJlbnQgY2hvaWNlIGlzIG1hcmtlZCB3aXRoIGEgJyonLiAgWW91IHdpbGwgdGhlbiBiZSAiCisicHJvbXB0ZWQgZm9yIHlvdXIgY2hvaWNlIHJlZ2FyZGluZyB0aGlzIGxpbmsgZ3JvdXAuICBEZXBlbmRpbmcgb24gdGhlIGNob2ljZSAiCisibWFkZSwgdGhlIGxpbmsgZ3JvdXAgbWlnaHQgbm8gbG9uZ2VyIGJlIGluIEk8YXV0bz4gbW9kZS4gWW91IHdpbGwgbmVlZCB0byAiCisidXNlIHRoZSBCPC0tYXV0bz4gb3B0aW9uIGluIG9yZGVyIHRvIHJldHVybiB0byB0aGUgYXV0b21hdGljIG1vZGUgKG9yIHlvdSAiCisiY2FuIHJlcnVuIEI8LS1jb25maWc+IGFuZCBzZWxlY3QgdGhlIGVudHJ5IG1hcmtlZCBhcyBhdXRvbWF0aWMpLiIKK21zZ3N0ciAiIgorIk7DpHIgZmxhZ2dhbiBJPC0tY29uZmlnPiBhbnbDpG5kcyBrb21tZXIgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBhdHQgdmlzYSBhbGxhICIKKyJ2YWwgZsO2ciBsw6Rua2dydXBwZW4gZMOkciBJPG5hbW4+IMOkciBodXZ1ZGFsdGVybmF0aXZuYW1uZXQuIERldCBha3R1ZWxsYSB2YWxldCAiCisiw6RyIG1hcmtlcmF0IG1lZCBlbiBcIipcIi4gRHUga29tbWVyIGTDpHJlZnRlciBhdHQgZsOlIHbDpGxqYSB2YWQgc29tIHNrYWxsICIKKyJnw7ZyYXMgbWVkIGzDpG5rZ3J1cHBlbi4gQmVyb2VuZGUgcMOlIHZhZCBkdSB2w6RsamVyIGtvbW1lciBsw6RuZ3J1cHBlbiBpbnRlICIKKyJsw6RuZ3JlIGF0dCB2YXJhIGkgSTxhdXRvPi1sw6RnZS4gRHUgbcOlc3RlIGFudsOkbmRhIGZsYWdnYW4gQjwtLWF1dG8+IGbDtnIgYXR0ICIKKyLDpXRlcmfDpSB0aWxsIGF1dG9tYXRpc2t0IGzDpGdlIChlbGxlciBrw7ZyYSBCPC0tY29uZmlnPiBww6Ugbnl0dCBvY2ggdsOkbGphICIKKyJhbHRlcm5hdGl2ZXQgc29tIG3DpHJrdHMgc29tIGF1dG9tYXRpc2t0KS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxMzcKK21zZ2lkICIiCisiSWYgeW91IHdhbnQgdG8gY29uZmlndXJlIG5vbi1pbnRlcmFjdGl2ZWx5IHlvdSBjYW4gdXNlIHRoZSBCPC0tc2V0PiBvcHRpb24gIgorImluc3RlYWQgKHNlZSBiZWxvdykuIgorbXNnc3RyICIiCisiT20gZHUgdmlsbCBrb25maWd1cmVyYSBpY2tlLWludGVyYWt0aXZ0IGthbiBkdSBhbnbDpG5kYSBmbGFnZ2FuIEI8LS1zZXQ+IGkgIgorInN0w6RsbGV0IChzZSBuZWRhbikuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTQ4Cittc2dpZCAiIgorIkRpZmZlcmVudCBwYWNrYWdlcyBwcm92aWRpbmcgdGhlIHNhbWUgZmlsZSBuZWVkIHRvIGRvIHNvIEI8Y29vcGVyYXRpdmVseT4uICAiCisiSW4gb3RoZXIgd29yZHMsIHRoZSB1c2FnZSBvZiBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IGlzIEI8bWFuZGF0b3J5PiBmb3IgYWxsICIKKyJpbnZvbHZlZCBwYWNrYWdlcyBpbiBzdWNoIGNhc2UuIEl0IGlzIG5vdCBwb3NzaWJsZSB0byBvdmVycmlkZSBzb21lIGZpbGUgaW4gIgorImEgcGFja2FnZSB0aGF0IGRvZXMgbm90IGVtcGxveSB0aGUgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBtZWNoYW5pc20uIgorbXNnc3RyICIiCisiT2xpa2EgcGFrZXQgc29tIHRpbGxoYW5kYWjDpWxsZXIgc2FtbWEgZmlsIG3DpXN0ZSBnw7ZyYSBzw6UgaSBCPHNhbWbDtnJzdMOlbmQ+LiAiCisiRGV0IGJldHlkZXIgYXR0IGRldCDDpHIgZXR0IEI8a3Jhdj4gYXR0IGFsbGEgaW52b2x2ZXJhZGUgcGFrZXQgYW52w6RuZGVyIHNpZyAiCisiYXYgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPi4gRGV0IMOkciBpbnRlIG3DtmpsaWd0IGF0dCDDtnZlcnN0eXJhIGVuIGZpbCBldHQgIgorInBha2V0IHNvbSBpbnRlIGFudsOkbmRlciBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+LW1la2FuaXNtZW4uIgorCisjLiB0eXBlOiBTSAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE0OQorIywgbm8td3JhcAorbXNnaWQgIlRFUk1JTk9MT0dZIgorbXNnc3RyICJURVJNSU5PTE9HSSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE1NAorbXNnaWQgIiIKKyJTaW5jZSB0aGUgYWN0aXZpdGllcyBvZiBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IGFyZSBxdWl0ZSBpbnZvbHZlZCwgc29tZSAiCisic3BlY2lmaWMgdGVybXMgd2lsbCBoZWxwIHRvIGV4cGxhaW4gaXRzIG9wZXJhdGlvbi4iCittc2dzdHIgIiIKKyJFZnRlciBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXM+IGFrdGl2aXRldGVyIMOkciBnYW5za2Ega29tcGxleGEgYmxpciBkZXQgZW5rbGFyZSAiCisiYXR0IGbDtnJzdMOlIGh1ciBkZXQgZnVuZ2VyYXIgZ2Vub20gYXR0IHZpIGbDtnJrbGFyYXIgbsOlZ3JhIHNwZWNpZmlrYSB0ZXJtZXIuIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE1NAorIywgbm8td3JhcAorbXNnaWQgImdlbmVyaWMgbmFtZSAob3IgYWx0ZXJuYXRpdmUgbGluaykiCittc2dzdHIgImdlbmVyaXNrdCBuYW1uIChlbGxlciBhbHRlcm5hdGl2bMOkbmspLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE2MAorbXNnaWQgIiIKKyJBIG5hbWUsIGxpa2UgSTwvdXNyL2Jpbi9lZGl0b3I+LCB3aGljaCByZWZlcnMsIHZpYSB0aGUgYWx0ZXJuYXRpdmVzIHN5c3RlbSwgIgorInRvIG9uZSBvZiBhIG51bWJlciBvZiBmaWxlcyBvZiBzaW1pbGFyIGZ1bmN0aW9uLiIKK21zZ3N0ciAiIgorIkV0dCBuYW1uLCB0aWxsIGV4ZW1wZWwgSTwvdXNyL2Jpbi9lZGl0b3I+LCBzb20gdmlhIGFsdGVybmF0aXZzeXN0ZW1ldCBwZWthciAiCisicMOlIGVuIGF2IGZsZXJhIGZpbGVyIG1lZCBsaWtuYW5kZSBmdW5rdGlvbmFsaXRldC4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTYwCisjLCBuby13cmFwCittc2dpZCAiYWx0ZXJuYXRpdmUgbmFtZSIKK21zZ3N0ciAiYWx0ZXJuYXRpdm5hbW4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNjMKK21zZ2lkICJUaGUgbmFtZSBvZiBhIHN5bWJvbGljIGxpbmsgaW4gdGhlIGFsdGVybmF0aXZlcyBkaXJlY3RvcnkuIgorbXNnc3RyICJOYW1uZXQgcMOlIGVuIHN5bWJvbGlzayBsw6RuayBpIGFsdGVybmF0aXZrYXRhbG9nZW4uIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE2MworIywgbm8td3JhcAorbXNnaWQgImFsdGVybmF0aXZlIChvciBhbHRlcm5hdGl2ZSBwYXRoKSIKK21zZ3N0ciAiYWx0ZXJuYXRpdiAoZWxsZXIgYWx0ZXJuYXRpdnPDtmt2w6RnKSIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE2NworbXNnaWQgIiIKKyJUaGUgbmFtZSBvZiBhIHNwZWNpZmljIGZpbGUgaW4gdGhlIGZpbGVzeXN0ZW0sIHdoaWNoIG1heSBiZSBtYWRlIGFjY2Vzc2libGUgIgorInZpYSBhIGdlbmVyaWMgbmFtZSB1c2luZyB0aGUgYWx0ZXJuYXRpdmVzIHN5c3RlbS4iCittc2dzdHIgIiIKKyJOYW1uZXQgcMOlIGVuIHNwZWNpZmlrIGZpbCBpIGZpbHN5c3RlbWV0LCBzb20ga2FuIHZhcmEgdGlsbGfDpG5nbGlnIHZpYSBldHQgIgorImdlbmVyaXNrdCBuYW1uIG1lZCBoasOkbHAgYXYgYWx0ZXJuYXRpdnN5c3RlbWV0LiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxNjcKKyMsIG5vLXdyYXAKK21zZ2lkICJhbHRlcm5hdGl2ZXMgZGlyZWN0b3J5IgorbXNnc3RyICJhbHRlcm5hdGl2a2F0YWxvZyIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE3MgorbXNnaWQgIkEgZGlyZWN0b3J5LCBieSBkZWZhdWx0IEk8L2V0Yy9hbHRlcm5hdGl2ZXM+LCBjb250YWluaW5nIHRoZSBzeW1saW5rcy4iCittc2dzdHIgIiIKKyJFbiBrYXRhbG9nLCBzb20gc3RhbmRhcmQgSTwvZXRjL2FsdGVybmF0aXZlcz4sIHNvbSBpbm5laMOlbGxlciBkZSBzeW1ib2xpc2thICIKKyJsw6Rua2FybmEuIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE3MgorIywgbm8td3JhcAorbXNnaWQgImFkbWluaXN0cmF0aXZlIGRpcmVjdG9yeSIKK21zZ3N0ciAiYWRtaW5pc3RyYXRpdiBrYXRhbG9nIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTc5Cittc2dpZCAiIgorIkEgZGlyZWN0b3J5LCBieSBkZWZhdWx0IEk8L3Zhci9saWIvZHBrZy9hbHRlcm5hdGl2ZXM+LCBjb250YWluaW5nIEI8dXBkYXRlLSIKKyJhbHRlcm5hdGl2ZXM+JyBzdGF0ZSBpbmZvcm1hdGlvbi4iCittc2dzdHIgIiIKKyJFbiBrYXRhbG9nLCBzb20gc3RhbmRhcmQgSTwvdmFyL2xpYi9kcGtnL2FsdGVybmF0aXZlcz4sIHNvbSBpbm5laMOlbGxlciAiCisidGlsbHN0w6VuZHNpbmZvcm1hdGlvbiBmw7ZyIEI8dXBkYXRlLWFsdGVybmF0aXZlcz4uIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE3OQorIywgbm8td3JhcAorbXNnaWQgImxpbmsgZ3JvdXAiCittc2dzdHIgImzDpG5rZ3J1cHAiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxODIKK21zZ2lkICJBIHNldCBvZiByZWxhdGVkIHN5bWxpbmtzLCBpbnRlbmRlZCB0byBiZSB1cGRhdGVkIGFzIGEgZ3JvdXAuIgorbXNnc3RyICIiCisiRW4gdXBwc8OkdHRuaW5nIHJlbGF0ZXJhZGUgc3ltYm9saXNrYSBsw6Rua2FyLCBhdnNlZGRhIGF0dCB1cHBkYXRlcmFzIHNvbSBlbiAiCisiZ3J1cHAuIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE4MgorIywgbm8td3JhcAorbXNnaWQgIm1hc3RlciBsaW5rIgorbXNnc3RyICJodXZ1ZGzDpG5rIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTg2Cittc2dpZCAiIgorIlRoZSBhbHRlcm5hdGl2ZSBsaW5rIGluIGEgbGluayBncm91cCB3aGljaCBkZXRlcm1pbmVzIGhvdyB0aGUgb3RoZXIgbGlua3MgaW4gIgorInRoZSBncm91cCBhcmUgY29uZmlndXJlZC4iCittc2dzdHIgIiIKKyJBbHRlcm5hdGl2bMOkbmtlbiBpIGVuIGzDpG5rZ3J1cHAgc29tIGJlc3TDpG1tZXIgaHVyIGRlIGFuZHJhIGzDpG5rYXJuYSBpICIKKyJncnVwcGVuIHN0w6RsbHMgaW4uIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE4NgorIywgbm8td3JhcAorbXNnaWQgInNsYXZlIGxpbmsiCittc2dzdHIgInNsYXZsw6RuayIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjE5MAorbXNnaWQgIiIKKyJBbiBhbHRlcm5hdGl2ZSBsaW5rIGluIGEgbGluayBncm91cCB3aGljaCBpcyBjb250cm9sbGVkIGJ5IHRoZSBzZXR0aW5nIG9mICIKKyJ0aGUgbWFzdGVyIGxpbmsuIgorbXNnc3RyICIiCisiRW4gYWx0ZXJuYXRpdmzDpG5rIGkgZW4gbMOkbmtncnVwcCBzb20gc3R5cnMgYXYgaHVyIGh1dnVkbMOkbmtlbiBzdMOkbGxzIGluLiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxOTAKKyMsIG5vLXdyYXAKK21zZ2lkICJhdXRvbWF0aWMgbW9kZSIKK21zZ3N0ciAiYXV0b21hdGlza3QgbMOkZ2UiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoxOTYKK21zZ2lkICIiCisiV2hlbiBhIGxpbmsgZ3JvdXAgaXMgaW4gYXV0b21hdGljIG1vZGUsIHRoZSBhbHRlcm5hdGl2ZXMgc3lzdGVtIGVuc3VyZXMgdGhhdCAiCisidGhlIGxpbmtzIGluIHRoZSBncm91cCBwb2ludCB0byB0aGUgaGlnaGVzdCBwcmlvcml0eSBhbHRlcm5hdGl2ZSBhcHByb3ByaWF0ZSAiCisiZm9yIHRoZSBncm91cC4iCittc2dzdHIgIiIKKyJOw6RyIGVuIGzDpG5rZ3J1cHAgw6RyIGkgYXV0b21hdGlza3QgbMOkZ2UgZsO2cnPDpGtyYXIgYWx0ZXJuYXRpdnN5c3RlbWV0IGF0dCAiCisibMOkbmthcm5hIGkgZ3J1cHBlbiBwZWthciBww6UgZGV0IGjDtmdzdHByaW9yaXRlcmFkZSBhbHRlcm5hdGl2ZXQgc29tIMOkciAiCisibMOkbXBsaWd0IGbDtnIgZ3J1cHBlbi4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MTk2CisjLCBuby13cmFwCittc2dpZCAibWFudWFsIG1vZGUiCittc2dzdHIgIm1hbnVlbGx0IGzDpGdlIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjAxCittc2dpZCAiIgorIldoZW4gYSBsaW5rIGdyb3VwIGlzIGluIG1hbnVhbCBtb2RlLCB0aGUgYWx0ZXJuYXRpdmVzIHN5c3RlbSB3aWxsIG5vdCBtYWtlICIKKyJhbnkgY2hhbmdlcyB0byB0aGUgc3lzdGVtIGFkbWluaXN0cmF0b3IncyBzZXR0aW5ncy4iCittc2dzdHIgIiIKKyJOw6RyIGVuIGdydXBwIMOkciBpIG1hbnVlbGx0IGzDpGdlIGtvbW1lciBpbnRlIGFsdGVybmF0aXZzeXN0ZW1ldCBhdHQgdXRmw7ZyYSAiCisibsOlZ3JhIMOkbmRyaW5nYXIgdGlsbCBzeXN0ZW1hZG1pbmlzdHJhdMO2cmVucyBpbnN0w6RsbG5pbmdhci4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjAzCisjLCBuby13cmFwCittc2dpZCAiQjwtLWluc3RhbGw+IEk8bGluayBuYW1lIHBhdGggcHJpb3JpdHk+IFtCPC0tc2xhdmU+IEk8bGluayBuYW1lIHBhdGg+XS4uLiIKK21zZ3N0ciAiQjwtLWluc3RhbGw+IEk8bMOkbmsgbmFtbiBzw7ZrdsOkZyBwcmlvcml0ZXQ+IFtCPC0tc2xhdmU+IEk8bMOkbmsgbmFtbiBzw7ZrdsOkZz5dLi4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjIyCittc2dpZCAiIgorIkFkZCBhIGdyb3VwIG9mIGFsdGVybmF0aXZlcyB0byB0aGUgc3lzdGVtLiAgSTxsaW5rPiBpcyB0aGUgZ2VuZXJpYyBuYW1lIGZvciAiCisidGhlIG1hc3RlciBsaW5rLCBJPG5hbWU+IGlzIHRoZSBuYW1lIG9mIGl0cyBzeW1saW5rIGluIHRoZSBhbHRlcm5hdGl2ZXMgIgorImRpcmVjdG9yeSwgYW5kIEk8cGF0aD4gaXMgdGhlIGFsdGVybmF0aXZlIGJlaW5nIGludHJvZHVjZWQgZm9yIHRoZSBtYXN0ZXIgIgorImxpbmsuICBUaGUgYXJndW1lbnRzIGFmdGVyIEI8LS1zbGF2ZT4gYXJlIHRoZSBnZW5lcmljIG5hbWUsIHN5bWxpbmsgbmFtZSBpbiAiCisidGhlIGFsdGVybmF0aXZlcyBkaXJlY3RvcnkgYW5kIHRoZSBhbHRlcm5hdGl2ZSBwYXRoIGZvciBhIHNsYXZlIGxpbmsuICBaZXJvICIKKyJvciBtb3JlIEI8LS1zbGF2ZT4gb3B0aW9ucywgZWFjaCBmb2xsb3dlZCBieSB0aHJlZSBhcmd1bWVudHMsIG1heSBiZSAiCisic3BlY2lmaWVkLiBOb3RlIHRoYXQgdGhlIG1hc3RlciBhbHRlcm5hdGl2ZSBtdXN0IGV4aXN0IG9yIHRoZSBjYWxsIHdpbGwgIgorImZhaWwuIEhvd2V2ZXIgaWYgYSBzbGF2ZSBhbHRlcm5hdGl2ZSBkb2Vzbid0IGV4aXN0LCB0aGUgY29ycmVzcG9uZGluZyBzbGF2ZSAiCisiYWx0ZXJuYXRpdmUgbGluayB3aWxsIHNpbXBseSBub3QgYmUgaW5zdGFsbGVkIChhIHdhcm5pbmcgd2lsbCBzdGlsbCBiZSAiCisiZGlzcGxheWVkKS4gSWYgc29tZSByZWFsIGZpbGUgaXMgaW5zdGFsbGVkIHdoZXJlIGFuIGFsdGVybmF0aXZlIGxpbmsgaGFzIHRvICIKKyJiZSBpbnN0YWxsZWQsIGl0IGlzIGtlcHQgdW5sZXNzIEI8LS1mb3JjZT4gaXMgdXNlZC4iCittc2dzdHIgIiIKKyJMw6RnZyB0aWxsIGVuIGdydXBwIG1lZCBhbHRlcm5hdGl2IHRpbGwgc3lzdGVtZXQuIEk8bMOkbms+IMOkciBkZXQgZ2VuZXJpc2thICIKKyJuYW1uZXQgZsO2ciBodXZ1ZGzDpG5rZW4sIEk8bmFtbj4gw6RyIG5hbW5ldCBww6UgZGVzcyBzeW1ib2xpc2thIGzDpG5rIGkgIgorImFsdGVybmF0aXZrYXRhbG9nZW4gb2NoIEk8c8O2a3bDpGc+IMOkciBhbHRlcm5hdGl2ZXQgc29tIGludHJvZHVjZXJhcyBmw7ZyICIKKyJodXZ1ZGzDpG5rZW4uIEFyZ3VtZW50ZW4gZWZ0ZXIgQjwtLXNsYXZlPiDDpHIgZGV0IGdlbmVyaXNrYSBuYW1uZXQsIG5hbW5ldCBww6UgIgorImRlbiBzeW1ib2xpc2thIGzDpG5rZW4gaSBhbHRlcm5hdGl2a2F0YWxvZ2VuIG9jaCBhbHRlcm5hdGl2ZXQgZsO2ciBzbGF2bMOkbmtlbi4gIgorIk5vbGwgZWxsZXIgZmxlcmEgQjwtLXNsYXZlPi1mbGFnZ29yIGthbiBhbmdlcywgZMOkciBhbGxhIGbDtmxqcyBhdiB0cmUgIgorImFyZ3VtZW50LiBPYnNlcnZlcmEgYXR0IG9tIGV0dCBzbGF2YWx0ZXJuYXRpdiBpbnRlIGZpbm5zIGtvbW1lciBtb3RzdmFyYW5kZSAiCisic2xhdmzDpG5rIGhlbHQgZW5rZWx0IGludGUgYXR0IGluc3RhbGxlcmFzIChlbiB2YXJuaW5nIGtvbW1lciBmb3J0ZmFyYW5kZSBhdHQgIgorInZpc2FzKS4gT20gZW4gdmVya2xpZyBmaWwgw6RyIGluc3RhbGxlcmFkIGTDpHIgZW4gYWx0ZXJuYXRpdmzDpG5rIG3DpXN0ZSAiCisiaW5zdGFsbGVyYXMgYmVow6VsbHMgZGVuIHPDpXZpZGEgaW50ZSBCPC0tZm9yY2U+IGFudsOkbmRzLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjIzMworbXNnaWQgIiIKKyJJZiB0aGUgYWx0ZXJuYXRpdmUgbmFtZSBzcGVjaWZpZWQgZXhpc3RzIGFscmVhZHkgaW4gdGhlIGFsdGVybmF0aXZlcyAiCisic3lzdGVtJ3MgcmVjb3JkcywgdGhlIGluZm9ybWF0aW9uIHN1cHBsaWVkIHdpbGwgYmUgYWRkZWQgYXMgYSBuZXcgc2V0IG9mICIKKyJhbHRlcm5hdGl2ZXMgZm9yIHRoZSBncm91cC4gIE90aGVyd2lzZSwgYSBuZXcgZ3JvdXAsIHNldCB0byBhdXRvbWF0aWMgbW9kZSwgIgorIndpbGwgYmUgYWRkZWQgd2l0aCB0aGlzIGluZm9ybWF0aW9uLiAgSWYgdGhlIGdyb3VwIGlzIGluIGF1dG9tYXRpYyBtb2RlLCBhbmQgIgorInRoZSBuZXdseSBhZGRlZCBhbHRlcm5hdGl2ZXMnIHByaW9yaXR5IGlzIGhpZ2hlciB0aGFuIGFueSBvdGhlciBpbnN0YWxsZWQgIgorImFsdGVybmF0aXZlcyBmb3IgdGhpcyBncm91cCwgdGhlIHN5bWxpbmtzIHdpbGwgYmUgdXBkYXRlZCB0byBwb2ludCB0byB0aGUgIgorIm5ld2x5IGFkZGVkIGFsdGVybmF0aXZlcy4iCittc2dzdHIgIiIKKyJPbSBkZXQgYW5naXZuYSBhbHRlcm5hdGl2bmFtbmV0IHJlZGFuIGZpbm5zIGkgYWx0ZXJuYXRpdnN5c3RlbWV0cyBkYXRhYmFzICIKKyJrb21tZXIgaW5mb3JtYXRpb25lbiBzb20gYW5nZXMgYXR0IGzDpGdnYXMgaW4gc29tIGVuIG55IHVwcHPDpHR0bmluZyBhdiAiCisiYWx0ZXJuYXRpdiBmw7ZyIGdydXBwZW4uIE9tIGludGUga29tbWVyIGVuIG55IGdydXBwLCBpbnN0w6RsbGQgcMOlIGF1dG9tYXRpc2t0ICIKKyJsw6RnZSwgYXR0IGzDpGdnYXMgdGlsbCBtZWQgZ2l2ZW4gaW5mb3JtYXRpb24uIE9tIGdydXBwZW4gw6RyIGkgYXV0b21hdGlza3QgIgorImzDpGdlIG9jaCBkZXQgYWx0ZXJuYXRpdiBzb20gbMOkZ2dzIGluIGhhciBow7ZncmUgcHJpb3JpdGV0IMOkbiBhbGxhIGFuZHJhICIKKyJpbnN0YWxsZXJhZGUgYWx0ZXJuYXRpdiBmw7ZyIGdydXBwZW4ga29tbWVyIGRlIHN5bWJvbGlza2EgbMOkbmthcm5hIGF0dCAiCisidXBwZGF0ZXJhcyBzw6UgYXR0IGRlIHBla2FyIHDDpSBkZSBueWxpZ2VuIHRpbGxhZ2RhIGFsdGVybmF0aXZlbi4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjMzCisjLCBuby13cmFwCittc2dpZCAiQjwtLXNldD4gSTxuYW1lIHBhdGg+IgorbXNnc3RyICJCPC0tc2V0PiBJPG5hbW4gc8O2a3bDpGc+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjQyCittc2dpZCAiIgorIlNldCB0aGUgcHJvZ3JhbSBJPHBhdGg+IGFzIGFsdGVybmF0aXZlIGZvciBJPG5hbWUuPiBUaGlzIGlzIGVxdWl2YWxlbnQgdG8gIgorIkI8LS1jb25maWc+IGJ1dCBpcyBub24taW50ZXJhY3RpdmUgYW5kIHRodXMgc2NyaXB0YWJsZS4iCittc2dzdHIgIiIKKyJTw6R0dCBwcm9ncmFtbWV0IEk8c8O2a3bDpGc+IHNvbSBldHQgYWx0ZXJuYXRpdiB0aWxsIEk8bmFtbj4uIERldHRhIG1vdHN2YXJhciAiCisiQjwtLWNvbmZpZz4gbWVuIMOkciBpY2tlLWludGVyYWt0aXZ0IG9jaCBrYW4gZMOkcm1lZCBhbnbDpG5kYXMgaSBldHQgc2tyaXB0LiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyNDIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tcmVtb3ZlPiBJPG5hbWUgcGF0aD4iCittc2dzdHIgIkI8LS1yZW1vdmU+IEk8bmFtbiBzw7ZrdsOkZz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyNjMKK21zZ2lkICIiCisiUmVtb3ZlIGFuIGFsdGVybmF0aXZlIGFuZCBhbGwgb2YgaXRzIGFzc29jaWF0ZWQgc2xhdmUgbGlua3MuICBJPG5hbWU+IGlzIGEgIgorIm5hbWUgaW4gdGhlIGFsdGVybmF0aXZlcyBkaXJlY3RvcnksIGFuZCBJPHBhdGg+IGlzIGFuIGFic29sdXRlIGZpbGVuYW1lIHRvICIKKyJ3aGljaCBJPG5hbWU+IGNvdWxkIGJlIGxpbmtlZC4gSWYgSTxuYW1lPiBpcyBpbmRlZWQgbGlua2VkIHRvIEk8cGF0aD4sICIKKyJJPG5hbWU+IHdpbGwgYmUgdXBkYXRlZCB0byBwb2ludCB0byBhbm90aGVyIGFwcHJvcHJpYXRlIGFsdGVybmF0aXZlIChhbmQgdGhlICIKKyJncm91cCBpcyBwdXQgYmFjayBpbiBhdXRvbWF0aWMgbW9kZSksIG9yIHJlbW92ZWQgaWYgdGhlcmUgaXMgbm8gc3VjaCAiCisiYWx0ZXJuYXRpdmUgbGVmdC4gIEFzc29jaWF0ZWQgc2xhdmUgbGlua3Mgd2lsbCBiZSB1cGRhdGVkIG9yIHJlbW92ZWQsICIKKyJjb3JyZXNwb25kaW5nbHkuICBJZiB0aGUgbGluayBpcyBub3QgY3VycmVudGx5IHBvaW50aW5nIHRvIEk8cGF0aD4sIG5vIGxpbmtzICIKKyJhcmUgY2hhbmdlZDsgb25seSB0aGUgaW5mb3JtYXRpb24gYWJvdXQgdGhlIGFsdGVybmF0aXZlIGlzIHJlbW92ZWQuIgorbXNnc3RyICIiCisiVGEgYm9ydCBldHQgYWx0ZXJuYXRpdiBvY2ggYWxsYSBkZXNzIGFua251dG5hIHNsYXZsw6Rua2FyLiBJPG5hbW4+IMOkciBldHQgIgorIm5hbW4gaSBhbHRlcm5hdGl2a2F0YWxvZ2VuIG9jaCBJPHPDtmt2w6RnPiDDpHIgZXR0IGFic29sdXQgZmlsbmFtbiB0aWxsIHZpbGtldCAiCisiSTxuYW1uPiBrdW5kZSBsw6Rua2FzLiBPbSBJPG5hbW4+IGZha3Rpc2t0IMOkciBsw6Rua2F0IHRpbGwgSTxzw7ZrdsOkZz4ga29tbWVyICIKKyJJPG5hbW4+IGF0dCB1cHBkYXRlcmFzIHRpbGwgYXR0IHBla2EgcMOlIGV0dCBhbm5hdCBsw6RtcGxpZ3QgYWx0ZXJuYXRpdiAob2NoICIKKyJncnVwcGVuIHN0w6RsbHMgdGlsbGJha2EgdGlsbCBhdXRvbWF0aXNrdCBsw6RnZSksIGVsbGVyIGF0dCB0YXMgYm9ydCBvbSBkZXQgIgorImludGUgZmlubnMgbsOlZ290IGFsdGVybmF0aXYga3Zhci4gQW5rbnV0bmEgc2xhdmzDpG5rYXIga29tbWVyIHVwcGRhdGVyYXMgIgorImVsbGVyIHRhcyBib3J0IHDDpSBtb3RzdmFyYW5kZSB2aXMuIE9tIGzDpG5rZW4gaW50ZSBmw7ZyIHRpbGxmw6RsbGV0IHBla2FyIHDDpSAiCisiSTxzw7ZrdsOkZz4ga29tbWVyIGluZ2EgbMOkbmthciBhdHQgdXBwZGF0ZXJhcywgZW5kYXN0IGluZm9ybWF0aW9uZW4gb20gIgorImFsdGVybmF0aXZldCB0YXMgYm9ydC4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjYzCisjLCBuby13cmFwCittc2dpZCAiQjwtLXJlbW92ZS1hbGw+IEk8bmFtZT4iCittc2dzdHIgIkI8LS1yZW1vdmUtYWxsPiBJPG5hbW4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjY4Cittc2dpZCAiIgorIlJlbW92ZSBhbGwgYWx0ZXJuYXRpdmVzIGFuZCBhbGwgb2YgdGhlaXIgYXNzb2NpYXRlZCBzbGF2ZSBsaW5rcy4gIEk8bmFtZT4gaXMgIgorImEgbmFtZSBpbiB0aGUgYWx0ZXJuYXRpdmVzIGRpcmVjdG9yeS4iCittc2dzdHIgIiIKKyJUYXIgYm9ydCBhbGxhIGFsdGVybmF0aXYgb2NoIGFsbGEgZGVyYXMgYW5zbHV0bmEgc2xhdmzDpG5rYXIuIEk8bmFtbj4gw6RyIGV0dCAiCisibmFtbiBpIGFsdGVybmF0aXZrYXRhbG9nZW4uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6Mjc1Cittc2dpZCAiIgorIkNhbGwgQjwtLWNvbmZpZz4gb24gYWxsIGFsdGVybmF0aXZlcy4gSXQgY2FuIGJlIHVzZWZ1bGx5IGNvbWJpbmVkIHdpdGggQjwtLSIKKyJza2lwLWF1dG8+IHRvIHJldmlldyBhbmQgY29uZmlndXJlIGFsbCBhbHRlcm5hdGl2ZXMgd2hpY2ggYXJlIG5vdCBjb25maWd1cmVkICIKKyJpbiBhdXRvbWF0aWMgbW9kZS4gQnJva2VuIGFsdGVybmF0aXZlcyBhcmUgYWxzbyBkaXNwbGF5ZWQuICBUaHVzIGEgc2ltcGxlICIKKyJ3YXkgdG8gZml4IGFsbCBicm9rZW4gYWx0ZXJuYXRpdmVzIGlzIHRvIGNhbGwgQjx5ZXMgXFxbYXFdXFxbYXFdIHwgdXBkYXRlLSIKKyJhbHRlcm5hdGl2ZXMgLS1mb3JjZSAtLWFsbD4uIgorbXNnc3RyICIiCisiQW5yb3BhciBCPC0tY29uZmlnPiBww6UgYWxsYSBhbHRlcm5hdGl2LiBLYW4gbWVkIGZyYW1nw6VuZyBrb21iaW5lcmFzIG1lZCBCPC0tIgorInNraXAtYXV0bz4gZsO2ciBhdHQgZ8OlIGlnZW5vbSBvY2gga29uZmlndXJlcmEgYWxsYSBhbHRlcm5hdGl2IHNvbSBpbnRlIMOkciAiCisic3TDpGxsZGEgaSBhdXRvbWF0aXNrdCBsw6RnZS4gVHJhc2lnYSBhbHRlcm5hdGl2IHZpc2FzIG9ja3PDpS4gRXR0IGVua2VsdCBzw6R0dCAiCisiYXR0IGZpeGEgYWxsYSB0cmFzaWdhIGFsdGVybmF0aXYgw6RyIGTDpHJtZWQgYXR0IGFucm9wYSBCPHllcyBcXFthcV1cXFthcV0gfCAiCisidXBkYXRlLWFsdGVybmF0aXZlcyAtLWZvcmNlIC0tYWxsPi4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6Mjc1CisjLCBuby13cmFwCittc2dpZCAiQjwtLWF1dG8+IEk8bmFtZT4iCittc2dzdHIgIkI8LS1hdXRvPiBJPG5hbW4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjgyCittc2dpZCAiIgorIlN3aXRjaCB0aGUgbGluayBncm91cCBiZWhpbmQgdGhlIGFsdGVybmF0aXZlIGZvciBJPG5hbWU+IHRvIGF1dG9tYXRpYyBtb2RlLiAgIgorIkluIHRoZSBwcm9jZXNzLCB0aGUgbWFzdGVyIHN5bWxpbmsgYW5kIGl0cyBzbGF2ZXMgYXJlIHVwZGF0ZWQgdG8gcG9pbnQgdG8gIgorInRoZSBoaWdoZXN0IHByaW9yaXR5IGluc3RhbGxlZCBhbHRlcm5hdGl2ZXMuIgorbXNnc3RyICIiCisiU3TDpGxsIGluIGzDpG5rZ3J1cHBlbiBiYWtvbSBhbHRlcm5hdGl2ZXQgZsO2ciBJPG5hbW4+IHRpbGwgYXV0b21hdGlza3QgbMOkZ2UuICIKKyJEZXR0YSBmw6VyIHRpbGwgZsO2bGpkIGF0dCBkZW4gaHV2dWRzYWtsaWdhIHN5bWJvbGlza2EgbMOkbmtlbiBvY2ggZGVzcyBzbGF2YXIgIgorInVwcGRhdGVyYXMgdGlsbCBhdHQgcGVrYSBww6UgZGV0IGjDtmdzdCBwcmlvcml0ZXJhZGUgaW5zdGFsbGVyYWRlIGFsdGVybmF0aXZldC4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjgyCisjLCBuby13cmFwCittc2dpZCAiQjwtLWRpc3BsYXk+IEk8bmFtZT4iCittc2dzdHIgIkI8LS1kaXNwbGF5PiBJPG5hbW4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MjkxCittc2dpZCAiIgorIkRpc3BsYXkgaW5mb3JtYXRpb24gYWJvdXQgdGhlIGxpbmsgZ3JvdXAuICBJbmZvcm1hdGlvbiBkaXNwbGF5ZWQgaW5jbHVkZXMgIgorInRoZSBncm91cCdzIG1vZGUgKGF1dG8gb3IgbWFudWFsKSwgd2hpY2ggYWx0ZXJuYXRpdmUgdGhlIG1hc3RlciBsaW5rICIKKyJjdXJyZW50bHkgcG9pbnRzIHRvLCB3aGF0IG90aGVyIGFsdGVybmF0aXZlcyBhcmUgYXZhaWxhYmxlIChhbmQgdGhlaXIgIgorImNvcnJlc3BvbmRpbmcgc2xhdmUgYWx0ZXJuYXRpdmVzKSwgYW5kIHRoZSBoaWdoZXN0IHByaW9yaXR5IGFsdGVybmF0aXZlICIKKyJjdXJyZW50bHkgaW5zdGFsbGVkLiIKK21zZ3N0ciAiIgorIlZpc2EgaW5mb3JtYXRpb24gb20gbMOkbmtncnVwcGVuLiBJbmZvcm1hdGlvbiBzb20gdmlzYXMgw6RyIGdydXBwZW5zIGzDpGdlICIKKyIoYXV0b21hdGlza3QgZWxsZXIgbWFudWVsbHQpLCB2aWxrZXQgYWx0ZXJuYXRpdiBkZW4gaHV2dWRzYWtsaWdhIGzDpG5rZW4ganVzdCAiCisibnUgcGVrYXIgcMOlLCB2aWxrYSBhbmRyYSBhbHRlcm5hdGl2IHNvbSDDpHIgdGlsbGfDpG5nbGlnYSAob2NoIGRlcmFzICIKKyJtb3RzdmFyYW5kZSBzbGF2YWx0ZXJuYXRpdiksIHNhbXQgZGV0IGjDtmdzdCBwcmlvcml0ZXJhZGUgYWx0ZXJuYXRpdiBzb20gZsO2ciAiCisibsOkcnZhcmFuZGUgw6RyIGluc3RhbGxlcmF0LiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODoyOTEKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tZ2V0LXNlbGVjdGlvbnM+IgorbXNnc3RyICJCPC0tZ2V0LXNlbGVjdGlvbnM+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6Mjk5Cittc2dpZCAiIgorIkxpc3QgYWxsIG1hc3RlciBhbHRlcm5hdGl2ZSBuYW1lcyAodGhvc2UgY29udHJvbGxpbmcgYSBsaW5rIGdyb3VwKSAgYW5kICIKKyJ0aGVpciBzdGF0dXMuIEVhY2ggbGluZSBjb250YWlucyB1cCB0byAzIGZpZWxkcyAoc2VwYXJhdGVkIGJ5IG9uZSBvciBtb3JlICIKKyJzcGFjZXMpLiBUaGUgZmlyc3QgZmllbGQgaXMgdGhlIGFsdGVybmF0aXZlIG5hbWUsIHRoZSBzZWNvbmQgb25lIGlzIHRoZSAiCisic3RhdHVzIChlaXRoZXIgXCJhdXRvXCIgb3IgXCJtYW51YWxcIiksIGFuZCB0aGUgbGFzdCBvbmUgY29udGFpbnMgdGhlICIKKyJjdXJyZW50IGNob2ljZSBpbiB0aGUgYWx0ZXJuYXRpdmUgKGJld2FyZTogaXQncyBhIGZpbGVuYW1lIGFuZCB0aHVzIG1pZ2h0ICIKKyJjb250YWluIHNwYWNlcykuIgorbXNnc3RyICIiCisiVmlzYSBhbGxhIGh1dnVkYWx0ZXJuYXRpdm5hbW4gKGRlIHNvbSBzdHlyIGVuIGzDpG5rZ3J1cHApIG9jaCBkZXJhcyBzdGF0dXMuICIKKyJWYXJqZSByYWQgaW5uZWjDpWxsZXIgdXBwIHRpbGwgdHJlIGbDpGx0IChhdmRlbGFkZSBtZWQgZXR0IGVsbGVyIGZsZXJhICIKKyJibGFua3N0ZWcpLiBEZXQgZsO2cnN0YSBmw6RsdGV0IMOkciBhbHRlcm5hdGl2bmFtbmV0LCBkZXQgYW5kcmEgw6RyIHN0YXR1cyAiCisiKGFudGluZ2VuIFwiYXV0b1wiIGVsbGVyIFwibWFudWVsbFwiKSwgb2NoIGRldCBzaXN0YSBpbm5laMOlbGxlciBkZXQgIgorIm51dmFyYW5kZSB2YWxldCBmw7ZyIGFsdGVybmF0aXZldCAob2JzZXJ2ZXJhOiBkZXR0YSDDpHIgZXR0IGZpbG5hbW4gb2NoIGthbiAiCisiZMOkcm1lZCBpbm5laMOlbGxhIGJsYW5rc3RlZykuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzA0Cittc2dpZCAiIgorIlJlYWQgY29uZmlndXJhdGlvbiBvZiBhbHRlcm5hdGl2ZXMgb24gc3RhbmRhcmQgaW5wdXQgaW4gdGhlIGZvcm1hdCBnZW5lcmF0ZWQgIgorImJ5IEI8dXBkYXRlLWFsdGVybmF0aXZlcyAtLWdldC1zZWxlY3Rpb25zPiBhbmQgcmVjb25maWd1cmUgdGhlbSBhY2NvcmRpbmdseS4iCittc2dzdHIgIiIKKyJMw6RzIGVuIGFsdGVybmF0aXZrb25maWd1cmF0aW9uIGZyw6VuIHN0YW5kYXJkIGluIHDDpSBmb3JtYXRldCBzb20gc2thcGFzIGF2ICIKKyJCPHVwZGF0ZS1hbHRlcm5hdGl2ZXMgLS1nZXQtc2VsZWN0aW9ucz4gb2NoIGtvbmZpZ3VyZXJhIG9tIGRlbSBww6UgIgorIm1vdHN2YXJhbmRlIHPDpHR0LiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMDQKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tcXVlcnk+IEk8bmFtZT4iCittc2dzdHIgIkI8LS1xdWVyeT4gSTxuYW1uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjMwOQorbXNnaWQgIiIKKyJEaXNwbGF5IGluZm9ybWF0aW9uIGFib3V0IHRoZSBsaW5rIGdyb3VwIGxpa2UgLS1kaXNwbGF5IGRvZXMsIGJ1dCBpbiBhICIKKyJtYWNoaW5lIHBhcnNlYWJsZSB3YXkgKHNlZSBzZWN0aW9uIEI8UVVFUlkgRk9STUFUPiBiZWxvdykuIgorbXNnc3RyICIiCisiVmlzYSBpbmZvcm1hdGlvbiBvbSBsw6Rua2dydXBwZW4gcMOlIHNhbW1hIHPDpHR0IHNvbSAtLWRpc3BsYXksIG1lbiBpIGV0dCAiCisibWFza2ludG9sa2JhcnQgc8OkdHQgKHNlIHN0eWNrZXQgQjxGUsOFR0VGT1JNQVQ+IG5lZGFuKS4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzA5CisjLCBuby13cmFwCittc2dpZCAiQjwtLWxpc3Q+IEk8bmFtZT4iCittc2dzdHIgIkI8LS1saXN0PiBJPG5hbW4+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzEyCittc2dpZCAiRGlzcGxheSBhbGwgdGFyZ2V0cyBvZiB0aGUgbGluayBncm91cC4iCittc2dzdHIgIlZpc2FyIGFsbGEgbcOlbCBmw7ZyIGzDpG5rZ3J1cHBlbi4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzEyCisjLCBuby13cmFwCittc2dpZCAiQjwtLWNvbmZpZz4gSTxuYW1lPiIKK21zZ3N0ciAiQjwtLWNvbmZpZz4gSTxuYW1uPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjMxNgorbXNnaWQgIiIKKyJTaG93IGF2YWlsYWJsZSBhbHRlcm5hdGl2ZXMgZm9yIGEgbGluayBncm91cCBhbmQgYWxsb3cgdGhlIHVzZXIgdG8gIgorImludGVyYWN0aXZlbHkgc2VsZWN0IHdoaWNoIG9uZSB0byB1c2UuIFRoZSBsaW5rIGdyb3VwIGlzIHVwZGF0ZWQuIgorbXNnc3RyICIiCisiVmlzYSB0aWxsZ8OkbmdsaWdhIGFsdGVybmF0aXYgZsO2ciBlbiBsw6Rua2dydXBwIG9jaCBsw6V0IGFudsOkbmRhcmVuIGF0dCAiCisiaW50ZXJha3RpdnQgdsOkbGphIHZpbGtlbiBzb20gc2thbGwgYW52w6RuZGFzLiBMw6Rua2dydXBwZW4gdXBwZGF0ZXJhcy4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzI0CisjLCBuby13cmFwCittc2dpZCAiQjwtLWFsdGRpcj5JPCBkaXJlY3Rvcnk+IgorbXNnc3RyICJCPC0tYWx0ZGlyPkk8IGthdGFsb2c+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzI4Cittc2dpZCAiIgorIlNwZWNpZmllcyB0aGUgYWx0ZXJuYXRpdmVzIGRpcmVjdG9yeSwgd2hlbiB0aGlzIGlzIHRvIGJlIGRpZmZlcmVudCBmcm9tIHRoZSAiCisiZGVmYXVsdC4iCittc2dzdHIgIkFuZ2VyIGFsdGVybmF0aXZrYXRhbG9nZW4gb20gZGV0dGEgaW50ZSBza2FsbCB2YXJhIHN0YW5kYXJkdsOkcmRldC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMzIKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRoZSBhZG1pbmlzdHJhdGl2ZSBkaXJlY3RvcnksIHdoZW4gdGhpcyBpcyB0byBiZSBkaWZmZXJlbnQgZnJvbSAiCisidGhlIGRlZmF1bHQuIgorbXNnc3RyICIiCisiQW5nZXIgZGVuIGFkbWluaXN0cmF0aXZhIGthdGFsb2dlbiBvbSBkZXR0YSBpbnRlIHNrYWxsIHZhcmEgc3RhbmRhcmR2w6RyZGV0LiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMzIKKyMsIG5vLXdyYXAKK21zZ2lkICJCPC0tbG9nPkk8IGZpbGU+IgorbXNnc3RyICJCPC0tbG9nPiBJPGZpbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozMzYKK21zZ2lkICIiCisiU3BlY2lmaWVzIHRoZSBsb2cgZmlsZSwgd2hlbiB0aGlzIGlzIHRvIGJlIGRpZmZlcmVudCBmcm9tIHRoZSBkZWZhdWx0ICgvdmFyLyIKKyJsb2cvYWx0ZXJuYXRpdmVzLmxvZykuIgorbXNnc3RyICIiCisiQW5nZXIgbG9nZ2ZpbGVuLCBvbSBkZXQgc2thbGwgdmFyYSBlbiBhbm5hbiDDpG4gc3RhbmRhcmQgKC92YXIvbG9nLyIKKyJhbHRlcm5hdGl2ZXMubG9nKS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozNDAKK21zZ2lkICIiCisiTGV0IEI8dXBkYXRlLWFsdGVybmF0aXZlcz4gcmVwbGFjZSBvciBkcm9wIGFueSByZWFsIGZpbGUgdGhhdCBpcyBpbnN0YWxsZWQgIgorIndoZXJlIGFuIGFsdGVybmF0aXZlIGxpbmsgaGFzIHRvIGJlIGluc3RhbGxlZCBvciByZW1vdmVkLiIKK21zZ3N0ciAiIgorIkzDpXQgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBlcnPDpHR0YSBlbGxlciB0YSBib3J0IGVuIHZlcmtsaWcgZmlsIHNvbSAiCisiaW5zdGFsbGVyYXRzIGTDpHIgZW4gYWx0ZXJuYXRpdmzDpG5rIG3DpXN0ZSBpbnN0YWxsZXJhcyBlbGxlciB0YXMgYm9ydC4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzQwCisjLCBuby13cmFwCittc2dpZCAiQjwtLXNraXAtYXV0bz4iCittc2dzdHIgIkI8LS1za2lwLWF1dG8+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzQ1Cittc2dpZCAiIgorIlNraXAgY29uZmlndXJhdGlvbiBwcm9tcHQgZm9yIGFsdGVybmF0aXZlcyB3aGljaCBhcmUgcHJvcGVybHkgY29uZmlndXJlZCBpbiAiCisiYXV0b21hdGljIG1vZGUuIFRoaXMgb3B0aW9uIGlzIG9ubHkgcmVsZXZhbnQgd2l0aCBCPC0tY29uZmlnPiBvciBCPC0tYWxsPi4iCittc2dzdHIgIiIKKyJIb3BwYSDDtnZlciBrb25maWd1cmVyaW5nc2Zyw6Vnb3IgZsO2ciBhbHRlcm5hdGl2IHNvbSDDpHIga29ycmVrdCBrb25maWd1cmVyYWRlICIKKyJpIGF1dG9tYXRpc2t0IGzDpGdlLiBEZW5uYSBmbGFnZ2Egw6RyIGVuZGFzdCByZWxldmFudCBmw7ZyIEI8LS1jb25maWc+IG9jaCBCPC0tIgorImFsbD4uIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM0NQorIywgbm8td3JhcAorbXNnaWQgIkI8LS12ZXJib3NlPiIKK21zZ3N0ciAiQjwtLXZlcmJvc2U+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzUwCittc2dpZCAiR2VuZXJhdGUgbW9yZSBjb21tZW50cyBhYm91dCB3aGF0IEI8dXBkYXRlLWFsdGVybmF0aXZlcz4gaXMgZG9pbmcuIgorbXNnc3RyICJWaXNhIGZsZXIga29tbWVudGFyZXIgb20gdmFkIEI8dXBkYXRlLWFsdGVybmF0aXZlcz4gZ8O2ci4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozNTMKK21zZ2lkICJEb24ndCBnZW5lcmF0ZSBhbnkgY29tbWVudHMgdW5sZXNzIGVycm9ycyBvY2N1ci4iCittc2dzdHIgIlNrcml2IGludGUgbsOlZ3JhIGtvbW1lbnRhcmVyIHPDpXZpZGEgZGV0IGludGUgdXBwc3TDpXIgZXR0IGZlbC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozNTkKK21zZ2lkICIiCisiSWYgc2V0IGFuZCB0aGUgQjwtLWFkbWluZGlyPiBvcHRpb24gaGFzIG5vdCBiZWVuIHNwZWNpZmllZCwgaXQgd2lsbCBiZSB1c2VkICIKKyJhcyB0aGUgYmFzZSBhZG1pbmlzdHJhdGl2ZSBkaXJlY3RvcnkuIgorbXNnc3RyICIiCisiT20gc2F0dCBvY2ggZmxhZ2dhbiBCPC0tYWRtaW5kaXI+IGludGUgaGFyIGFuZ2l2aXRzIGFudsOkbmRzIGRldCBzb20gYmFzLSIKKyJhZG1pbmlzdHJhdGl2IGthdGFsb2cuIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM2MQorIywgbm8td3JhcAorbXNnaWQgIkk8L2V0Yy9hbHRlcm5hdGl2ZXMvPiIKK21zZ3N0ciAiSTwvZXRjL2FsdGVybmF0aXZlcy8+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzY3Cittc2dpZCAiIgorIlRoZSBkZWZhdWx0IGFsdGVybmF0aXZlcyBkaXJlY3RvcnkuICBDYW4gYmUgb3ZlcnJpZGRlbiBieSB0aGUgQjwtLWFsdGRpcj4gIgorIm9wdGlvbi4iCittc2dzdHIgIiIKKyJEZW4gZsO2cnZhbGRhIGFsdGVybmF0aXZrYXRhbG9nZW4uIEthbiDDtnZlcnN0eXJhcyBtZWQgZmxhZ2dhbiBCPC0tYWx0ZGlyPi4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6MzY3CisjLCBuby13cmFwCittc2dpZCAiSTwvdmFyL2xpYi9kcGtnL2FsdGVybmF0aXZlcy8+IgorbXNnc3RyICJJPC92YXIvbGliL2Rwa2cvYWx0ZXJuYXRpdmVzLz4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozNzMKK21zZ2lkICIiCisiVGhlIGRlZmF1bHQgYWRtaW5pc3RyYXRpb24gZGlyZWN0b3J5LiAgQ2FuIGJlIG92ZXJyaWRkZW4gYnkgdGhlIEI8LS0iCisiYWRtaW5kaXI+IG9wdGlvbi4iCittc2dzdHIgIiIKKyJEZW4gZsO2cnZhbGRhIGFkbWluaXN0cmF0aXZhIGthdGFsb2dlbi4gS2FuIMO2dmVyc3R5cmFzIG1lZCBmbGFnZ2FuIEI8LS0iCisiYWRtaW5kaXI+LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM3OAorbXNnaWQgIlRoZSByZXF1ZXN0ZWQgYWN0aW9uIHdhcyBzdWNjZXNzZnVsbHkgcGVyZm9ybWVkLiIKK21zZ3N0ciAiRGVuIMO2bnNrYWRlIGZ1bmt0aW9uZW4gdXRmw7ZyZGVzIHV0YW4gZmVsLiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM4MgorbXNnaWQgIiIKKyJQcm9ibGVtcyB3ZXJlIGVuY291bnRlcmVkIHdoaWxzdCBwYXJzaW5nIHRoZSBjb21tYW5kIGxpbmUgb3IgcGVyZm9ybWluZyB0aGUgIgorImFjdGlvbi4iCittc2dzdHIgIiIKKyJQcm9ibGVtIHVwcHN0b2QgdmlkIHRvbGtuaW5nIGF2IGtvbW1hbmRvcmFkZW4gZWxsZXIgbsOkciBmdW5rdGlvbmVuIHNrdWxsZSAiCisidXRmw7ZyYXMuIgorCisjLiB0eXBlOiBTSAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM4MworIywgbm8td3JhcAorbXNnaWQgIlFVRVJZIEZPUk1BVCIKK21zZ3N0ciAiRlLDhUdFRk9STUFUIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6Mzg4Cittc2dpZCAiIgorIlRoZSBCPHVwZGF0ZS1hbHRlcm5hdGl2ZXMgLS1xdWVyeT4gZm9ybWF0IGlzIHVzaW5nIGFuIFJGQzgyMi1saWtlIGZsYXQgIgorImZvcm1hdC4gSXQncyBtYWRlIG9mIEk8bj4gKyAxIGJsb2NrcyB3aGVyZSBJPG4+IGlzIHRoZSBudW1iZXIgb2YgIgorImFsdGVybmF0aXZlcyBhdmFpbGFibGUgaW4gdGhlIHF1ZXJpZWQgbGluayBncm91cC4gVGhlIGZpcnN0IGJsb2NrIGNvbnRhaW5zICIKKyJ0aGUgZm9sbG93aW5nIGZpZWxkczoiCittc2dzdHIgIiIKKyJGb3JtYXRldCBmw7ZyIEI8dXBkYXRlLWFsdGVybmF0aXZlcyAtLXF1ZXJ5PiBhbnbDpG5kZXIgZXR0IFJGQzgyMi1saWtuYW5kZSAiCisicGxhdHQgZm9ybWF0LiBEZXQgYmVzdMOlciBhdiBJPG4+ICsgMSBibG9jayBkw6RyIEk8bj4gw6RyIGFudGFsZXQgdGlsbGfDpG5nbGlnYSAiCisiYWx0ZXJuYXRpdiBpIGRlbiBlZnRlcmZyw6VnYWRlIGzDpG5rZ3J1cHBlbi4gRGV0IGbDtnJzdGEgYmxvY2tldCBpbm5laMOlbGxlciAiCisiZsO2bGphbmRlIGbDpGx0OiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozODgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPExpbms6Pkk8IGxpbms+IgorbXNnc3RyICJCPExpbms6Pkk8IGzDpG5rPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM5MQorbXNnaWQgIlRoZSBnZW5lcmljIG5hbWUgb2YgdGhlIGFsdGVybmF0aXZlLiIKK21zZ3N0ciAiR2VuZXJpc2t0IG5hbW4gZsO2ciBhbHRlcm5hdGl2ZXQuIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM5MQorIywgbm8td3JhcAorbXNnaWQgIkI8U3RhdHVzOj5JPCBzdGF0dXM+IgorbXNnc3RyICJCPFN0YXR1czo+STwgc3RhdHVzPiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM5NAorbXNnaWQgIlRoZSBzdGF0dXMgb2YgdGhlIGFsdGVybmF0aXZlIChCPGF1dG8+IG9yIEI8bWFudWFsPikuIgorbXNnc3RyICJTdGF0dXMgZsO2ciBhbHRlcm5hdGl2ZXQgKEI8YXV0bz4gZWxsZXIgQjxtYW51YWw+KS4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6Mzk0CisjLCBuby13cmFwCittc2dpZCAiQjxCZXN0Oj5JPCBiZXN0LWNob2ljZT4iCittc2dzdHIgIkI8QmVzdDo+STwgYsOkc3RhLXZhbD4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODozOTgKK21zZ2lkICIiCisiVGhlIHBhdGggb2YgdGhlIGJlc3QgYWx0ZXJuYXRpdmUgZm9yIHRoaXMgbGluayBncm91cC4gTm90IHByZXNlbnQgaWYgdGhlcmUgIgorImlzIG5vIGFsdGVybmF0aXZlcyBhdmFpbGFibGUuIgorbXNnc3RyICIiCisiU8O2a3bDpGdlbiB0aWxsIGRldCBiw6RzdGEgYWx0ZXJuYXRpdmV0IGkgbMOkbmtncnVwcGVuLiBUYXMgaW50ZSBtZWQgb20gaW5nZXQgIgorImFsdGVybmF0aXYgw6RyIHRpbGxnw6RuZ2xpZ3QuIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjM5OAorIywgbm8td3JhcAorbXNnaWQgIkI8VmFsdWU6Pkk8IGN1cnJlbnRseS1zZWxlY3RlZC1hbHRlcm5hdGl2ZT4iCittc2dzdHIgIkI8VmFsdWU6Pkk8IGbDtnItbsOkcnZhcmFuZGUtdmFsdC1hbHRlcm5hdGl2PiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQwMgorbXNnaWQgIiIKKyJUaGUgcGF0aCBvZiB0aGUgY3VycmVudGx5IHNlbGVjdGVkIGFsdGVybmF0aXZlLiBJdCBjYW4gYWxzbyB0YWtlIHRoZSBtYWdpYyAiCisidmFsdWUgQjxub25lPi4gSXQgaXMgdXNlZCBpZiB0aGUgbGluayBkb2Vzbid0IGV4aXN0LiIKK21zZ3N0ciAiIgorIlPDtmt2w6RnZW4gdGlsbCBkZXQgZsO2ciBuw6RydmFyYW5kZSB2YWxkYSBhbHRlcm5hdGl2ZXQuIEthbiDDpHZlbiB0YSBkZXQgbWFnaXNrYSAiCisidsOkcmRldCBCPG5vbmU+IChpbmdldCkuIERldCBhbnbDpG5kcyBvbSBkZXQgaW50ZSBmaW5ucyBuw6Vnb24gbMOkbmsuIgorCisjLiB0eXBlOiBUUAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQwMworIywgbm8td3JhcAorbXNnaWQgIlRoZSBvdGhlciBibG9ja3MgZGVzY3JpYmUgdGhlIGF2YWlsYWJsZSBhbHRlcm5hdGl2ZXMgaW4gdGhlIHF1ZXJpZWQgbGluayBncm91cDoiCittc2dzdHIgIsOWdnJpZ2EgYmxvY2sgYmVza3JpdmVyIHRpbGxnw6RuZ2xpZ2EgYWx0ZXJuYXRpdiBpIGRlbiBlZnRlcmZyw6VnYWRlIGzDpG5rZ3J1cHBlbjoiCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDA1CisjLCBuby13cmFwCittc2dpZCAiQjxBbHRlcm5hdGl2ZTo+STwgcGF0aC1vZi10aGlzLWFsdGVybmF0aXZlPiIKK21zZ3N0ciAiQjxBbHRlcm5hdGl2ZTo+STwgc8O2a3bDpGctdGlsbC1hbHRlcm5hdGl2ZXQ+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDA4Cittc2dpZCAiUGF0aCB0byB0aGlzIGJsb2NrJ3MgYWx0ZXJuYXRpdmUuIgorbXNnc3RyICJTw7ZrdsOkZyB0aWxsIGFsdGVybmF0aXZldCBzb20gYmVza3JpdnMgaSBibG9ja2V0LiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0MDgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPFByaW9yaXR5Oj5JPCBwcmlvcml0eS12YWx1ZT4iCittc2dzdHIgIkI8UHJpb3JpdHk6Pkk8IHByaW9yaXRldHN2w6RyZGU+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDExCittc2dpZCAiVmFsdWUgb2YgdGhlIHByaW9yaXR5IG9mIHRoaXMgYWx0ZXJuYXRpdmUuIgorbXNnc3RyICJWw6RyZGV0IGbDtnIgcHJpb3JpdGV0ZW4gcMOlIGFsdGVybmF0aXZldC4iCisKKyMuIHR5cGU6IFRQCisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDExCisjLCBuby13cmFwCittc2dpZCAiQjxTbGF2ZXM6Pkk8IGxpc3Qtb2Ytc2xhdmVzPiIKK21zZ3N0ciAiQjxTbGF2ZXM6Pkk8IGxpc3RhLcO2dmVyLXNsYXZhcj4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0MTcKK21zZ2lkICIiCisiV2hlbiB0aGlzIGhlYWRlciBpcyBwcmVzZW50LCB0aGUgQjxuZXh0PiBsaW5lcyBob2xkIGFsbCBzbGF2ZSBhbHRlcm5hdGl2ZXMgIgorImFzc29jaWF0ZWQgdG8gdGhlIG1hc3RlciBsaW5rIG9mIHRoZSBhbHRlcm5hdGl2ZS4gVGhlcmUgaXMgb25lIHNsYXZlIHBlciAiCisibGluZS4gRWFjaCBsaW5lIGNvbnRhaW5zIG9uZSBzcGFjZSwgdGhlIGdlbmVyaWMgbmFtZSBvZiB0aGUgc2xhdmUgIgorImFsdGVybmF0aXZlLCBhbm90aGVyIHNwYWNlLCBhbmQgdGhlIHBhdGggdG8gdGhlIHNsYXZlIGFsdGVybmF0aXZlLiIKK21zZ3N0ciAiIgorIk7DpHIgZGVubmEgcnVicmlrIMOkciB0aWxsZ8OkbmdsaWcgaW5uZWjDpWxsZXIgQjxuZXh0Pi1yYWRlcm5hIGFsbGEgIgorInNsYXZhbHRlcm5hdGl2IHNvbSBrb3BwbGFzIHRpbGwgaHV2dWRsw6Rua2VuIGbDtnIgYWx0ZXJuYXRpdmV0LiBWYXJqZSByYWQgIgorImJlc2tyaXZlciBlbiBzbGFnLiBWYXJqZSByYWQgaW5uZWjDpWxsZXIgZXR0IGJsYW5rc3RlZywgZGV0IGdlbmVyaXNrYSBuYW1uZXQgIgorInDDpSBzbGF2YWx0ZXJuYXRpdmV0LCB5dHRlcmxpZ2FyZSBldHQgYmxhbmtzdGVnLCBvY2ggc8O2a3bDpGdlbiB0aWxsICIKKyJzbGF2YWx0ZXJuYXRpdmV0LiIKKworIy4gdHlwZTogVFAKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0MTgKKyMsIG5vLXdyYXAKK21zZ2lkICJCPEV4YW1wbGU+IgorbXNnc3RyICJCPEV4ZW1wZWw+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDI2CisjLCBuby13cmFwCittc2dpZCAiIgorIiQgdXBkYXRlLWFsdGVybmF0aXZlcyAtLXF1ZXJ5IGVkaXRvclxuIgorIkxpbms6IGVkaXRvclxuIgorIlN0YXR1czogYXV0b1xuIgorIkJlc3Q6IC91c3IvYmluL3ZpbS5ndGtcbiIKKyJWYWx1ZTogL3Vzci9iaW4vdmltLmd0a1xuIgorbXNnc3RyICIiCisiJCB1cGRhdGUtYWx0ZXJuYXRpdmVzIC0tcXVlcnkgZWRpdG9yXG4iCisiTGluazogZWRpdG9yXG4iCisiU3RhdHVzOiBhdXRvXG4iCisiQmVzdDogL3Vzci9iaW4vdmltLmd0a1xuIgorIlZhbHVlOiAvdXNyL2Jpbi92aW0uZ3RrXG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0MzEKKyMsIG5vLXdyYXAKK21zZ2lkICIiCisiQWx0ZXJuYXRpdmU6IC9iaW4vZWRcbiIKKyJQcmlvcml0eTogLTEwMFxuIgorIlNsYXZlczpcbiIKKyIgZWRpdG9yLjEuZ3ogL3Vzci9zaGFyZS9tYW4vbWFuMS9lZC4xLmd6XG4iCittc2dzdHIgIiIKKyJBbHRlcm5hdGl2ZTogL2Jpbi9lZFxuIgorIlByaW9yaXR5OiAtMTAwXG4iCisiU2xhdmVzOlxuIgorIiBlZGl0b3IuMS5neiAvdXNyL3NoYXJlL21hbi9tYW4xL2VkLjEuZ3pcbiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjQ0NgorIywgbm8td3JhcAorbXNnaWQgIiIKKyJBbHRlcm5hdGl2ZTogL3Vzci9iaW4vdmltLmd0a1xuIgorIlByaW9yaXR5OiA1MFxuIgorIlNsYXZlczpcbiIKKyIgZWRpdG9yLjEuZ3ogL3Vzci9zaGFyZS9tYW4vbWFuMS92aW0uMS5nelxuIgorIiBlZGl0b3IucnUuMS5neiAvdXNyL3NoYXJlL21hbi9ydS9tYW4xL3ZpbS4xLmd6XG4iCisiIGVkaXRvci5wbC5JU084ODU5LTIuMS5neiAvdXNyL3NoYXJlL21hbi9wbC5JU084ODU5LTIvbWFuMS92aW0uMS5nelxuIgorIiBlZGl0b3IuaXQuSVNPODg1OS0xLjEuZ3ogL3Vzci9zaGFyZS9tYW4vaXQuSVNPODg1OS0xL21hbjEvdmltLjEuZ3pcbiIKKyIgZWRpdG9yLnBsLlVURi04LjEuZ3ogL3Vzci9zaGFyZS9tYW4vcGwuVVRGLTgvbWFuMS92aW0uMS5nelxuIgorIiBlZGl0b3IuaXQuMS5neiAvdXNyL3NoYXJlL21hbi9pdC9tYW4xL3ZpbS4xLmd6XG4iCisiIGVkaXRvci5mci5VVEYtOC4xLmd6IC91c3Ivc2hhcmUvbWFuL2ZyLlVURi04L21hbjEvdmltLjEuZ3pcbiIKKyIgZWRpdG9yLmZyLjEuZ3ogL3Vzci9zaGFyZS9tYW4vZnIvbWFuMS92aW0uMS5nelxuIgorIiBlZGl0b3IuaXQuVVRGLTguMS5neiAvdXNyL3NoYXJlL21hbi9pdC5VVEYtOC9tYW4xL3ZpbS4xLmd6XG4iCisiIGVkaXRvci5wbC4xLmd6IC91c3Ivc2hhcmUvbWFuL3BsL21hbjEvdmltLjEuZ3pcbiIKKyIgZWRpdG9yLmZyLklTTzg4NTktMS4xLmd6IC91c3Ivc2hhcmUvbWFuL2ZyLklTTzg4NTktMS9tYW4xL3ZpbS4xLmd6XG4iCittc2dzdHIgIiIKKyJBbHRlcm5hdGl2ZTogL3Vzci9iaW4vdmltLmd0a1xuIgorIlByaW9yaXR5OiA1MFxuIgorIlNsYXZlczpcbiIKKyIgZWRpdG9yLjEuZ3ogL3Vzci9zaGFyZS9tYW4vbWFuMS92aW0uMS5nelxuIgorIiBlZGl0b3IucnUuMS5neiAvdXNyL3NoYXJlL21hbi9ydS9tYW4xL3ZpbS4xLmd6XG4iCisiIGVkaXRvci5wbC5JU084ODU5LTIuMS5neiAvdXNyL3NoYXJlL21hbi9wbC5JU084ODU5LTIvbWFuMS92aW0uMS5nelxuIgorIiBlZGl0b3IuaXQuSVNPODg1OS0xLjEuZ3ogL3Vzci9zaGFyZS9tYW4vaXQuSVNPODg1OS0xL21hbjEvdmltLjEuZ3pcbiIKKyIgZWRpdG9yLnBsLlVURi04LjEuZ3ogL3Vzci9zaGFyZS9tYW4vcGwuVVRGLTgvbWFuMS92aW0uMS5nelxuIgorIiBlZGl0b3IuaXQuMS5neiAvdXNyL3NoYXJlL21hbi9pdC9tYW4xL3ZpbS4xLmd6XG4iCisiIGVkaXRvci5mci5VVEYtOC4xLmd6IC91c3Ivc2hhcmUvbWFuL2ZyLlVURi04L21hbjEvdmltLjEuZ3pcbiIKKyIgZWRpdG9yLmZyLjEuZ3ogL3Vzci9zaGFyZS9tYW4vZnIvbWFuMS92aW0uMS5nelxuIgorIiBlZGl0b3IuaXQuVVRGLTguMS5neiAvdXNyL3NoYXJlL21hbi9pdC5VVEYtOC9tYW4xL3ZpbS4xLmd6XG4iCisiIGVkaXRvci5wbC4xLmd6IC91c3Ivc2hhcmUvbWFuL3BsL21hbjEvdmltLjEuZ3pcbiIKKyIgZWRpdG9yLmZyLklTTzg4NTktMS4xLmd6IC91c3Ivc2hhcmUvbWFuL2ZyLklTTzg4NTktMS9tYW4xL3ZpbS4xLmd6XG4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0NTgKK21zZ2lkICIiCisiV2l0aCBCPC0tdmVyYm9zZT4gQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBjaGF0dGVycyBpbmNlc3NhbnRseSBhYm91dCBpdHMgIgorImFjdGl2aXRpZXMgb24gaXRzIHN0YW5kYXJkIG91dHB1dCBjaGFubmVsLiAgSWYgcHJvYmxlbXMgb2NjdXIsIEI8dXBkYXRlLSIKKyJhbHRlcm5hdGl2ZXM+IG91dHB1dHMgZXJyb3IgbWVzc2FnZXMgb24gaXRzIHN0YW5kYXJkIGVycm9yIGNoYW5uZWwgYW5kICIKKyJyZXR1cm5zIGFuIGV4aXQgc3RhdHVzIG9mIDIuICBUaGVzZSBkaWFnbm9zdGljcyBzaG91bGQgYmUgc2VsZi1leHBsYW5hdG9yeTsgIgorImlmIHlvdSBkbyBub3QgZmluZCB0aGVtIHNvLCBwbGVhc2UgcmVwb3J0IHRoaXMgYXMgYSBidWcuIgorbXNnc3RyICIiCisiTWVkIEI8LS12ZXJib3NlPiBrb21tZXIgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiBhdHQgYmVza3JpdmEgaSBkZXQgb8OkbmRsaWdhICIKKyJ2YWQgZGV0IGfDtnIgcMOlIHNpbiBzdGFuZGFyZCB1dC1rYW5hbC4gT20gZXR0IGZlbCB1cHBzdMOlciBza3JpdmVyIEI8dXBkYXRlLSIKKyJhbHRlcm5hdGl2ZXM+IHV0IGZlbG1lZGRlbGFuZGVuIHDDpSBzaW4gc3RhbmRhcmQgZmVsLWthbmFsIG9jaCBhdnNsdXRhciBtZWQgIgorImZlbGtvZGVuIDIuIERpYWdub3N0aWtpbmZvcm1hdGlvbmVuIGLDtnIgdmFyYSBzasOkbHZmw7Zya2xhcmFuZGUsIHPDpG5kIGluIGVuICIKKyJmZWxyYXBwb3J0IG9tIGR1IGludGUgdHlja2VyIGF0dCBkZW4gw6RyIGRldC4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0NjQKK21zZ2lkICIiCisiVGhlcmUgYXJlIHNldmVyYWwgcGFja2FnZXMgd2hpY2ggcHJvdmlkZSBhIHRleHQgZWRpdG9yIGNvbXBhdGlibGUgd2l0aCAiCisiQjx2aT4sIGZvciBleGFtcGxlIEI8bnZpPiBhbmQgQjx2aW0+LiBXaGljaCBvbmUgaXMgdXNlZCBpcyBjb250cm9sbGVkIGJ5IHRoZSAiCisibGluayBncm91cCBCPHZpPiwgd2hpY2ggaW5jbHVkZXMgbGlua3MgZm9yIHRoZSBwcm9ncmFtIGl0c2VsZiBhbmQgdGhlICIKKyJhc3NvY2lhdGVkIG1hbnBhZ2UuIgorbXNnc3RyICIiCisiRGV0IMOkciBmbGVyYSBwYWtldCBzb20gdGlsbGhhbmRhaMOlbGxlciBlbiB0ZXh0cmVkaWdlcmFyZSBrb21wYXRpYmVsIG1lZCAiCisiQjx2aT4sIHRpbGwgZXhlbXBlbCBCPG52aT4gb2NoIEI8dmltPi4gVmlsa2VuIGJlc3TDpG1zIHZpYSBsw6Rua2dydXBwZW4gQjx2aT4sICIKKyJ2aWxrZW4gaW5uZWjDpWxsZXIgbMOkbmthciBiw6VkZSBmw7ZyIHNqw6RsdmEgcHJvZ3JhbW1ldCBvY2ggZGVzc2EgYW5rbnV0bmEgIgorIm1hbnVhbHNpZGEuIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDY3Cittc2dpZCAiIgorIlRvIGRpc3BsYXkgdGhlIGF2YWlsYWJsZSBwYWNrYWdlcyB3aGljaCBwcm92aWRlIEI8dmk+IGFuZCB0aGUgY3VycmVudCAiCisic2V0dGluZyBmb3IgaXQsIHVzZSB0aGUgQjwtLWRpc3BsYXk+IGFjdGlvbjoiCittc2dzdHIgIiIKKyJGw7ZyIGF0dCB2aXNhIHZpbGthIHRpbGxnw6RuZ2xpZ2EgcGFrZXQgc29tIHRpbGxoYW5kYWjDpWxsZXIgQjx2aT4sIHNhbXQgZGVzcyAiCisiYWt0dWVsbGEgaW5zdMOkbGxuaW5nLCBhbnbDpG5kIGtvbW1hbmRvdCBCPC0tZGlzcGxheT46IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDcwCittc2dpZCAiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzIC0tZGlzcGxheSB2aT4iCittc2dzdHIgIkI8dXBkYXRlLWFsdGVybmF0aXZlcyAtLWRpc3BsYXkgdmk+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDc0Cittc2dpZCAiIgorIlRvIGNob29zZSBhIHBhcnRpY3VsYXIgQjx2aT4gaW1wbGVtZW50YXRpb24sIHVzZSB0aGlzIGNvbW1hbmQgYXMgcm9vdCBhbmQgIgorInRoZW4gc2VsZWN0IGEgbnVtYmVyIGZyb20gdGhlIGxpc3Q6IgorbXNnc3RyICIiCisiRsO2ciBhdHQgdsOkbGphIGVuIHNwZWNpZmlrIGltcGxlbWVudGF0aW9uIGF2IEI8dmk+LCB1dGbDtnIgZGV0dGEga29tbWFuZG8gc29tICIKKyJyb290IG9jaCB2w6RsaiBzZWRhbiBldHQgdGFsIGZyw6VuIGxpc3RhbjoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0NzcKK21zZ2lkICJCPHVwZGF0ZS1hbHRlcm5hdGl2ZXMgLS1jb25maWcgdmk+IgorbXNnc3RyICJCPHVwZGF0ZS1hbHRlcm5hdGl2ZXMgLS1jb25maWcgdmk+IgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDgxCittc2dpZCAiIgorIlRvIGdvIGJhY2sgdG8gaGF2aW5nIHRoZSBCPHZpPiBpbXBsZW1lbnRhdGlvbiBjaG9zZW4gYXV0b21hdGljYWxseSwgZG8gdGhpcyAiCisiYXMgcm9vdDoiCittc2dzdHIgIiIKKyJGw7ZyIGF0dCDDpXRlcmfDpSB0aWxsIGF0dCBCPHZpPi1pbXBsZW1lbnRhdGlvbmVuIHbDpGxqcyBhdXRvbWF0aXNrdCwgdXRmw7ZyICIKKyJkZXR0YSBzb20gcm9vdDoiCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0ODQKK21zZ2lkICJCPHVwZGF0ZS1hbHRlcm5hdGl2ZXMgLS1hdXRvIHZpPiIKK21zZ3N0ciAiQjx1cGRhdGUtYWx0ZXJuYXRpdmVzIC0tYXV0byB2aT4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo0ODgKK21zZ2lkICIiCisiSWYgeW91IGZpbmQgYSBidWcsIHBsZWFzZSByZXBvcnQgaXQgdXNpbmcgdGhlIERlYmlhbiBidWctdHJhY2tpbmcgc3lzdGVtLiIKK21zZ3N0ciAiIgorIk9tIGR1IGhpdHRhciBldHQgZmVsIGJlciB2aSBkaWcgcmFwcG9ydGVyYSBkZXQgdmlhIERlYmlhbnMgIgorImZlbHJhcHBvcnRlcmluZ3NzeXN0ZW0uIgorCisjLiB0eXBlOiBQbGFpbiB0ZXh0CisjOiB1cGRhdGUtYWx0ZXJuYXRpdmVzLjg6NDkzCittc2dpZCAiIgorIklmIHlvdSBmaW5kIGFueSBkaXNjcmVwYW5jeSBiZXR3ZWVuIHRoZSBvcGVyYXRpb24gb2YgQjx1cGRhdGUtYWx0ZXJuYXRpdmVzPiAiCisiYW5kIHRoaXMgbWFudWFsIHBhZ2UsIGl0IGlzIGEgYnVnLCBlaXRoZXIgaW4gdGhlIGltcGxlbWVudGF0aW9uIG9yIHRoZSAiCisiZG9jdW1lbnRhdGlvbjsgcGxlYXNlIHJlcG9ydCBpdC4iCittc2dzdHIgIiIKKyJPbSBkdSBoaXR0YXIgbsOlZ3JhIGRpc2tyZXBhbnNlciBtZWxsYW4gdmFkIEI8dXBkYXRlLWFsdGVybmF0aXZlcz4gZ8O2ciBvY2ggIgorInZhZCBzb20gc3TDpXIgaSBtYW51YWxzaWRhbiBzw6Ugw6RyIGRldHRhIGV0dCBmZWwsIGFudGluZ2VuIGkgaW1wbGVtZW50YXRpb25lbiAiCisiZWxsZXIgaSBkb2t1bWVudGF0aW9uZW47IHJhcHBvcnRlcmEgZGV0LiIKKworIy4gdHlwZTogUGxhaW4gdGV4dAorIzogdXBkYXRlLWFsdGVybmF0aXZlcy44OjUwNAorbXNnaWQgIiIKKyJUaGlzIG1hbnVhbCBwYWdlIGlzIGNvcHlyaWdodCAxOTk3LDE5OTggQ2hhcmxlcyBCcmlzY29lLVNtaXRoIGFuZCBvdGhlcnMuIgorbXNnc3RyICIiCisiTWFudWFsc2lkYW4gw6RyIHVwcGhvdnNyw6R0dHNza3lkZGFkIMKpIDE5OTcsMTk5OCBDaGFybGVzIEJyaXNjb2UtU21pdGggbWVkICIKKyJmbGVyYS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo1MDcKK21zZ2lkICIiCisiVGhpcyBpcyBmcmVlIGRvY3VtZW50YXRpb247IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgdmVyc2lvbiAyIG9yICIKKyJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyBXQVJSQU5UWS4iCittc2dzdHIgIiIKKyJEZXR0YSDDpHIgZnJpIHByb2dyYW12YXJhOyBzZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgZWxsZXIgIgorInNlbmFyZSBmw7ZyIGtvcGllcmluZ3N2aWxsa29yLiBEZXQgZmlubnMgSU5HRU4gR0FSQU5USS4iCisKKyMuIHR5cGU6IFBsYWluIHRleHQKKyM6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuODo1MTAKK21zZ2lkICJCPGxuPigxKSwgRkhTLCB0aGUgRmlsZXN5c3RlbSBIaWVyYXJjaHkgU3RhbmRhcmQuIgorbXNnc3RyICJCPGxuPigxKSwgRkhTLCBGaWxlc3lzdGVtIEhpZXJhcmNoeSBTdGFuZGFyZC4iCisKKyN+IG1zZ2lkICIyMDA5LTAyLTI3IgorI34gbXNnc3RyICIyMDA5LTAyLTI3IgorCisjfiBtc2dpZCAiMjAxMS0wNC0yOSIKKyN+IG1zZ3N0ciAiMjAxMS0wNC0yOSIKKworI34gbXNnaWQgIjIwMDYtMDItMjgiCisjfiBtc2dzdHIgIjIwMDYtMDItMjgiCisKKyN+IG1zZ2lkICIyMDA3LTAzLTA3IgorI34gbXNnc3RyICIyMDA3LTAzLTA3IgorCisjfiBtc2dpZCAiMjAwNy0wNy0xNiIKKyN+IG1zZ3N0ciAiMjAwNy0wNy0xNiIKKworI34gbXNnaWQgIjIwMDktMDMtMTUiCisjfiBtc2dzdHIgIjIwMDktMDMtMTUiCisKKyN+IG1zZ2lkICIyMDExLTA0LTI3IgorI34gbXNnc3RyICIyMDExLTA0LTI3IgorCisjfiBtc2dpZCAiMjAxMS0wNy0wNyIKKyN+IG1zZ3N0ciAiMjAxMS0wNy0wNyIKKworI34gbXNnaWQgIjIwMTAtMDQtMTgiCisjfiBtc2dzdHIgIjIwMTAtMDQtMTgiCisKKyN+IG1zZ2lkICIyMDExLTA3LTEyIgorI34gbXNnc3RyICIyMDExLTA3LTEyIgorCisjLCBmdXp6eQorI358IG1zZ2lkICJVc2VyIGNvbmZpZ3VyYXRpb24gZmlsZS4iCisjfiBtc2dpZCAiUGFja2FnZSBtYWludGFpbmVyIGNvbmZpZ3VyYXRpb24gZmlsZS4iCisjfiBtc2dzdHIgIkFudsOkbmRhcmVucyBrb25maWd1cmF0aW9uc2ZpbC4iCisKKyN+IG1zZ2lkICIyMDEwLTA3LTI5IgorI34gbXNnc3RyICIyMDEwLTA3LTI5IgorCisjfiBtc2dpZCAiQjxQYWNrYWdlOj4gRTxsdD5wYWNrYWdlIG5hbWVFPGd0PiIKKyN+IG1zZ3N0ciAiQjxQYWNrYWdlOj4gRTxsdD5wYWtldG5hbW5FPGd0PiIKKworIywgZnV6enkKKyN+fCBtc2dpZCAiMjAwNy0xMS0yMiIKKyN+IG1zZ2lkICIyMDEwLTExLTIyIgorI34gbXNnc3RyICIyMDA3LTExLTIyIgorCisjLCBmdXp6eQorI358IG1zZ2lkICJCPFNvdXJjZTo+IEU8bHQ+c291cmNlIG5hbWVFPGd0PiIKKyN+IG1zZ2lkICJCPE11bHRpLUFyY2g6PiBFPGx0PnNhbWV8Zm9yZWlnbnxhbGxvd2VkRTxndD4gIgorI34gbXNnc3RyICJCPFNvdXJjZTo+IEU8bHQ+a8OkbGxrb2RzbmFtbkU8Z3Q+IgorCisjfiBtc2dpZCAiMjAxMC0wMS0yOCIKKyN+IG1zZ3N0ciAiMjAxMC0wMS0yOCIKKworI34gbXNnaWQgIiIKKyN+ICJUaGUgZmlyc3QgbWVtYmVyIGlzIG5hbWVkIEI8ZGViaWFuLXNwbGl0PiBhbmQgY29udGFpbnMgYSBzZXJpZXMgb2YgbGluZXMsICIKKyN+ICJzZXBhcmF0ZWQgYnkgbmV3bGluZXMuIEN1cnJlbnRseSBzZXZlbiBsaW5lcyBhcmUgcHJlc2VudC4gIFRoZSBmaXJzdCBpcyAiCisjfiAidGhlIGZvcm1hdCB2ZXJzaW9uIG51bWJlciwgQjwyLjE+IGF0IHRoZSB0aW1lIHRoaXMgbWFudWFsIHBhZ2Ugd2FzICIKKyN+ICJ3cml0dGVuLiBUaGUgc2Vjb25kIGlzIHRoZSBwYWNrYWdlIG5hbWUuIFRoZSB0aGlyZCBpcyB0aGUgcGFja2FnZSAiCisjfiAidmVyc2lvbi4gVGhlIGZvdXJ0aCBpcyB0aGUgbWQ1c3VtIG9mIHRoZSBwYWNrYWdlLiAgVGhlIGZpZnRoIGlzIHRoZSB0b3RhbCAiCisjfiAic2l6ZSBvZiB0aGUgcGFja2FnZS4gVGhlIHNpeHRoIGlzIHRoZSBtYXhpbXVtIHBhcnQgc2l6ZS4gVGhlIHNldmVudGggaXMgIgorI34gInRoZSBjdXJyZW50IHBhcnQgbnVtYmVyLCBmb2xsb3dlZCBieSBhIHNsYXNoIGFuZCB0aGUgdG90YWwgYW1vdW50IG9mICIKKyN+ICJwYXJ0cyAoYXMgaW4gXFwob3ExLzEwXFwoY3EpLiIKKyN+IG1zZ3N0ciAiIgorI34gIkRlbiBmw7Zyc3RhIHBvc3RlbiBpIGFya2l2ZXQgaGV0ZXIgQjxkZWJpYW4tc3BsaXQ+IG9jaCBpbm5laMOlbGxlciBldHQgIgorI34gImFudGFsIHJhZGVyLCBhdmRlbGFkZSBtZWQgbnlyYWRzdGVja2VuLiBGw7ZyIG7DpHJ2YXJhbmRlIGZpbm5zIGRldCBzanUgIgorI34gInJhZGVyLiBEZW4gZsO2cnN0YSByYWRlbiDDpHIgZm9ybWF0ZXRzIHZlcnNpb25zbnVtbWVyLCBCPDIuMT4gZMOlICIKKyN+ICJtYW51YWxzaWRhbiBza3JldnMuIERlbiBhbmRyYSByYWRlbiDDpHIgcGFrZXRuYW1uZXQuIERlbiB0cmVkamUgw6RyICIKKyN+ICJwYWtldHZlcnNpb25lbi4gRGVuIGZqw6RyZGUgw6RyIG1kNXN1bW1hbiBmw7ZyIHBha2V0ZXQuIERlbiBmZW10ZSDDpHIgIgorI34gInBha2V0ZXRzIHRvdGFsYSBzdG9ybGVrLiBEZW4gc2rDpHR0ZSDDpHIgbWF4aW1hbCBzdG9ybGVrIHDDpSBkZWxhcm5hLiBEZW4gIgorI34gInNqdW5kZSDDpHIgbnVtcmV0IHDDpSBkZW4gYWt0dWVsbGEgZGVsZW4sIGbDtmxqZCBhdiBldHQgc25lZHN0cmVjayBvY2ggZGV0ICIKKyN+ICJ0b3RhbGEgYW50YWxldCBkZWxhciAoc29tIGkgXFwob3ExLzEwXFwoY3EpLiIKKworI34gbXNnaWQgIjIwMDgtMDgtMTgiCisjfiBtc2dzdHIgIjIwMDgtMDgtMTgiCisKKyN+IG1zZ2lkICIiCisjfiAiQjxkcGtnPiBjYW4gYWxzbyBiZSB1c2VkIGFzIGEgZnJvbnQtZW5kIHRvIEI8ZHBrZy1kZWI+KDEpLiAgVGhlIGZvbGxvd2luZyAiCisjfiAiYXJlIEI8ZHBrZy1kZWI+IGFjdGlvbnMsIGFuZCBpZiB0aGV5IGFyZSBlbmNvdW50ZXJlZCwgQjxkcGtnPiBqdXN0IHJ1bnMgIgorI34gIkI8ZHBrZy1kZWI+IHdpdGggdGhlIHBhcmFtZXRlcnMgZ2l2ZW4gdG8gaXQ6IgorI34gbXNnc3RyICIiCisjfiAiQjxkcGtnPiBrYW4gw6R2ZW4gYW52w6RuZGFzIHNvbSBldHQgc2thbCBydW50IEI8ZHBrZy1kZWI+KDEpLiBGw7ZsamFuZGUgw6RyICIKKyN+ICLDpXRnw6RyZGVyIGbDtnIgQjxkcGtnLWRlYj4sIG9jaCBvbSBkZSB1cHB0w6Rja3Mga8O2ciBCPGRwa2c+IGhlbHQgZW5rZWx0ICIKKyN+ICJCPGRwa2ctZGViPiBtZWQgZGUgcGFyYW1ldHJhciBzb20gYW5naXZpdHM6IgorCisjfiBtc2dpZCAiIgorI34gIiAgICBCPC1iPiwgQjwtLWJ1aWxkPixcbiIKKyN+ICIgICAgQjwtYz4sIEI8LS1jb250ZW50cz4sXG4iCisjfiAiICAgIEI8LUk+LCBCPC0taW5mbz4sXG4iCisjfiAiICAgIEI8LWY+LCBCPC0tZmllbGQ+LFxuIgorI34gIiAgICBCPC1lPiwgQjwtLWNvbnRyb2w+LFxuIgorI34gIiAgICBCPC14PiwgQjwtLWV4dHJhY3Q+LFxuIgorI34gIiAgICBCPC1YPiwgQjwtLXZleHRyYWN0PiwgYW5kXG4iCisjfiAiICAgIEI8LS1mc3lzLXRhcmZpbGU+LlxuIgorI34gbXNnc3RyICIiCisjfiAiICAgIEI8LWI+LCBCPC0tYnVpbGQ+LFxuIgorI34gIiAgICBCPC1jPiwgQjwtLWNvbnRlbnRzPixcbiIKKyN+ICIgICAgQjwtST4sIEI8LS1pbmZvPixcbiIKKyN+ICIgICAgQjwtZj4sIEI8LS1maWVsZD4sXG4iCisjfiAiICAgIEI8LWU+LCBCPC0tY29udHJvbD4sXG4iCisjfiAiICAgIEI8LXg+LCBCPC0tZXh0cmFjdD4sXG4iCisjfiAiICAgIEI8LVg+LCBCPC0tdmV4dHJhY3Q+LCBvY2hcbiIKKyN+ICIgICAgQjwtLWZzeXMtdGFyZmlsZT4uXG4iCisKKyN+IG1zZ2lkICJQbGVhc2UgcmVmZXIgdG8gQjxkcGtnLWRlYj4oMSkgZm9yIGluZm9ybWF0aW9uIGFib3V0IHRoZXNlIGFjdGlvbnMuIgorI34gbXNnc3RyICJTZSBCPGRwa2ctZGViPigxKSBmw7ZyIGluZm9ybWF0aW9uIG9tIGRlc3NhIMOldGfDpHJkZXIuIgorCisjfiBtc2dpZCAiQjwtLW5ldz4sIEI8LS1vbGQ+IgorI34gbXNnc3RyICJCPC0tbmV3PiwgQjwtLW9sZD4iCisKKyN+IG1zZ2lkICIiCisjfiAiU2VsZWN0IG5ldyBvciBvbGQgYmluYXJ5IHBhY2thZ2UgZm9ybWF0LiBUaGlzIGlzIGEgQjxkcGtnLWRlYj4oMSkgIG9wdGlvbi4iCisjfiBtc2dzdHIgIiIKKyN+ICJWw6RsaiBkZXQgbnlhIGVsbGVyIGdhbWxhIGJpbsOkcnBha2V0Zm9ybWF0ZXQuIERldHRhIMOkciBlbiBmbGFnZ2EgdGlsbCAiCisjfiAiQjxkcGtnLWRlYj4oMSkuIgorCisjfiBtc2dpZCAiIgorI34gIkRvbid0IHJlYWQgb3IgY2hlY2sgY29udGVudHMgb2YgY29udHJvbCBmaWxlIHdoaWxlIGJ1aWxkaW5nIGEgcGFja2FnZS4gICIKKyN+ICJUaGlzIGlzIGEgQjxkcGtnLWRlYj4oMSkgb3B0aW9uLiIKKyN+IG1zZ3N0ciAiIgorI34gIlZhcmtlbiBsw6RzIGVsbGVyIGtvbnRyb2xsZXJhIGlubmVow6VsbGV0IGkgY29udHJvbC1maWxlbiBuw6RyIHBha2V0IHNrYXBhcy4gIgorI34gIkRldHRhIMOkciBlbiBmbGFnZ2EgdGlsbCBCPGRwa2ctZGViPigxKS4iCisKKyN+IG1zZ2lkICIyMDA5LTA4LTE1IgorI34gbXNnc3RyICIyMDA5LTA4LTE1IgorCisjfiBtc2dpZCAiQ29tcGlsZXIgZmxhZ3MiCisjfiBtc2dzdHIgIktvbXBpbGVyaW5nc2ZsYWdnb3IiCisKKyN+IG1zZ2lkICIiCisjfiAiVGhlIEI8Q0ZMQUdTPiwgQjxDWFhGTEFHUz4sIEI8RkZMQUdTPiwgQjxDUFBGTEFHUz4gYW5kIEI8TERGTEFHUz4gIgorI34gImVudmlyb25tZW50IHZhcmlhYmxlcyBhcmUgc2V0IHRvIHRoZSB2YWx1ZXMgdGhhdCBCPGRwa2ctYnVpbGRmbGFncz4gIgorI34gInJldHVybmVkLiBTZWUgaXRzIG1hbnVhbCBwYWdlIGZvciBtb3JlIGluZm9ybWF0aW9uLiIKKyN+IG1zZ3N0ciAiIgorI34gIk1pbGrDtnZhcmlhYmxlcm5hIEI8Q0ZMQUdTPiwgQjxDWFhGTEFHUz4sIEI8RkZMQUdTPiwgQjxDUFBGTEFHUz4gb2NoICIKKyN+ICJCPExERkxBR1M+IHPDpHR0cyB0aWxsIGRlIHbDpHJkZW4gc29tIEI8ZHBrZy1idWlsZGZsYWdzPiByZXR1cm5lcmFyLiBTZSAiCisjfiAiZGVzcyBtYW51YWxzaWRhIGbDtnIgeXR0ZXJsaWdhcmUgaW5mb3JtYXRpb24uIgorCisjfiBtc2dpZCAiMjAwOS0xMS0yMSIKKyN+IG1zZ3N0ciAiMjAwOS0xMS0yMSIKKworI34gbXNnaWQgIjIwMTAtMDMtMDciCisjfiBtc2dzdHIgIjIwMTAtMDMtMDciCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgIjIwMTAtMTAtMTAiCisjfiBtc2dpZCAiMjAxMC0xMC0xMiIKKyN+IG1zZ3N0ciAiMjAxMC0xMC0xMCIKKworI34gbXNnaWQgIjIwMDktMDgtMDciCisjfiBtc2dzdHIgIjIwMDktMDgtMDciCisKKyN+IG1zZ2lkICIyMDEwLTA0LTE2IgorI34gbXNnc3RyICIyMDEwLTA0LTE2IgorCisjfiBtc2dpZCAiMjAwOS0wNS0xOSIKKyN+IG1zZ3N0ciAiMjAwOS0wNS0xOSIKKworI34gbXNnaWQgIjAiCisjfiBtc2dzdHIgIjAiCisKKyN+IG1zZ2lkICIxIgorI34gbXNnc3RyICIxIgorCisjfiBtc2dpZCAiMjAwOS0xMC0wMSIKKyN+IG1zZ3N0ciAiMjAwOS0xMC0wMSIKKworI34gbXNnaWQgIjIwMDktMDYtMjYiCisjfiBtc2dzdHIgIjIwMDktMDYtMjYiCisKKyN+IG1zZ2lkICIiCisjfiAiQjxkcGtnLXNwbGl0PiB1c2VzIHNvbWUgcmF0aGVyIG91dC1vZi1kYXRlIGNvbnZlbnRpb25zIGZvciB0aGUgdGhlICIKKyN+ICJmaWxlbmFtZXMgb2YgRGViaWFuIHBhY2thZ2VzLiIKKyN+IG1zZ3N0ciAiIgorI34gIkI8ZHBrZy1zcGxpdD4gYW52w6RuZGVyIG7DpWdyYSBnYW5za2EgZ2FtbGEga29udmVudGlvbmVyIGbDtnIgZmlsbmFtbiBww6UgIgorI34gIkRlYmlhbnBha2V0LiIKKworI34gbXNnaWQgIiIKKyN+ICJUaGUgYXJjaGl0ZWN0dXJlIGlzIG5vdCByZXByZXNlbnRlZCBpbiB0aGUgcGFydCBmaWxlcycgaGVhZGVyLCBvbmx5IGluICIKKyN+ICJ0aGUgY29udHJvbCBpbmZvcm1hdGlvbiBvZiB0aGUgY29udGFpbmVkIGJpbmFyeSBwYWNrYWdlIGZpbGUsIGFuZCBpdCBpcyAiCisjfiAibm90IHByZXNlbnQgaW4gdGhlIGZpbGVuYW1lcyBnZW5lcmF0ZWQuIgorI34gbXNnc3RyICIiCisjfiAiQXJraXRla3R1cmVuIGFuZ2VzIGludGUgaSBkZWxmaWxlcm5hcyBmaWxodXZ1ZCwgYmFyYSBpICIKKyN+ICJrb250cm9sbGluZm9ybWF0aW9uZW4gaSBwYWtldGZpbGVuIHNvbSBkZWxhcm5hIGlubmVow6VsbGVyLCBvY2ggZGVuICIKKyN+ICJmw7ZyZWtvbW1lciBpbnRlIGkgZGUgZmlsbmFtbiBzb20gZ2VuZXJlcmFzLiIKKworI34gbXNnaWQgIjIwMDktMDUtMTAiCisjfiBtc2dzdHIgIjIwMDktMDUtMTAiCisKKyN+IG1zZ2lkICIiCisjfiAiQjxkc2VsZWN0PiBbQjwtLWFkbWluZGlyPiBJPEU8bHQ+ZGlyZWN0b3J5RTxndD4+XSBbQjwtLWhlbHA+XSBbQjwtLSIKKyN+ICJ2ZXJzaW9uPl0gW0I8LS1leHBlcnQ+XSBbQjwtLWRlYnVnPnxCPC1EPkk8RTxsdD5maWxlRTxndD4+XSAiCisjfiAiW0k8RTxsdD5hY3Rpb25FPGd0Pj5dIFtCPC0tY29sb3VyPnxCPC0tY29sb3I+IEk8c2NyZWVucGFydDo+IgorI34gIltJPGZvcmVncm91bmQ+XSxbSTxiYWNrZ3JvdW5kPl1bSTw6YXR0cj5bSTwrYXR0cisuLj5dXV0iCisjfiBtc2dzdHIgIiIKKyN+ICJCPGRzZWxlY3Q+IFtCPC0tYWRtaW5kaXI+IEk8RTxsdD5rYXRhbG9nRTxndD4+XSBbQjwtLWhlbHA+XSBbQjwtLSIKKyN+ICJ2ZXJzaW9uPl0gW0I8LS1leHBlcnQ+XSBbQjwtLWRlYnVnPnxCPC1EPkk8RTxsdD5maWxFPGd0Pj5dICIKKyN+ICJbSTxFPGx0PmhhbmRsaW5nRTxndD4+XSBbQjwtLWNvbG91cj58QjwtLWNvbG9yPiBJPHNrw6RybWRlbD46W0k8ZsO2cmdydW5kPl0sIgorI34gIltJPGJha2dydW5kPl1bSTw6YXR0cj5bSTwrYXR0cisuLj5dXV0iCisKKyN+IG1zZ2lkICJCPC0tYWRtaW5kaXI+STwgRTxsdD5kaXJlY3RvcnlFPGd0Pj4iCisjfiBtc2dzdHIgIkI8LS1hZG1pbmRpcj5JPCBFPGx0PmthdGFsb2dFPGd0Pj4iCisKKyN+IG1zZ2lkICJVU0FHRSIKKyN+IG1zZ3N0ciAiQU5Ww4RORE5JTkciCisKKyN+IG1zZ2lkICIiCisjfiAiQjxzdGFydC1zdG9wLWRhZW1vbj4gcmV0dXJucyAwIGlmIHRoZSByZXF1ZXN0ZWQgYWN0aW9uIHdhcyBwZXJmb3JtZWQsIG9yICIKKyN+ICJpZiBCPC0tb2tub2RvPiBpcyBzcGVjaWZpZWQgYW5kIGVpdGhlciBCPC0tc3RhcnQ+IHdhcyBzcGVjaWZpZWQgYW5kIGEgIgorI34gIm1hdGNoaW5nIHByb2Nlc3Mgd2FzIGFscmVhZHkgcnVubmluZywgb3IgQjwtLXN0b3A+IHdhcyBzcGVjaWZpZWQgYW5kICIKKyN+ICJ0aGVyZSB3ZXJlIG5vIG1hdGNoaW5nIHByb2Nlc3Nlcy4gSWYgQjwtLW9rbm9kbz4gd2FzIG5vdCBzcGVjaWZpZWQgYW5kICIKKyN+ICJub3RoaW5nIHdhcyBkb25lLCAxIGlzIHJldHVybmVkLiBJZiBCPC0tc3RvcD4gYW5kIEI8LS1yZXRyeT4gd2VyZSAiCisjfiAic3BlY2lmaWVkLCBidXQgdGhlIGVuZCBvZiB0aGUgc2NoZWR1bGUgd2FzIHJlYWNoZWQgYW5kIHRoZSBwcm9jZXNzZXMgd2VyZSAiCisjfiAic3RpbGwgcnVubmluZywgdGhlIGVycm9yIHZhbHVlIGlzIDIuIEZvciBhbGwgb3RoZXIgZXJyb3JzLCB0aGUgc3RhdHVzIGlzICIKKyN+ICIzLiIKKyN+IG1zZ3N0ciAiIgorI34gIkI8c3RhcnQtc3RvcC1kZWFtb24+IHJldHVybmVyYXIgMCBvbSBrb21tYW5kb3Qgc29tIMO2bnNrYWRlcyB1dGbDtnJkZXMsICIKKyN+ICJlbGxlciBvbSBCPC0tb2tub2RvPiBhbmdhdnMgb2NoIGFudGluZ2VuIG9tIEI8LS1zdGFydD4gYW5nYXZzIG9jaCAiCisjfiAibW90c3ZhcmFuZGUgcHJvY2VzcyByZWRhbiBrw7ZyZGVzLCBlbGxlciBvbSBCPC0tc3RvcD4gYW5nYXZzIG9jaCBpbmdlbiAiCisjfiAibW90c3ZhcmFuZGUgcHJvY2VzcyBoaXR0YWRlcy4gT20gQjwtLW9rbm9kbz4gaW50ZSBhbmdhdnMgb2NoIGluZ2VudGluZyAiCisjfiAidXRmw7ZyZGVzIGtvbW1lciAxIGF0dCByZXR1cm5lcmFzLiBPbSBCPC0tc3RvcD4gb2NoIEI8LS1yZXRyeT4gYW5nYXZzIG1lbiAiCisjfiAic2x1dGV0IHDDpSBzY2hlbWF0IG7DpWRkZXMgb2NoIHByb2Nlc3NlciBmb3J0ZmFyYW5kZSBrw7ZyZGVzIMOkciBmZWxrb2RlbiAyLiAiCisjfiAiRsO2ciBhbGxhIGFuZHJhIGZlbCDDpHIgc3RhdHVzZW4gMy4iCisKKyN+IG1zZ2lkICIyIgorI34gbXNnc3RyICIyIgorCisjfiBtc2dpZCAiIgorI34gIkFuIGVycm9yIG9jY3VycmVkLiBVbmZvcnR1bmF0ZWx5IGF0IHRoZSB0aW1lIG9mIHdyaXRpbmcgSTxleHRlbmRlZC1lcnJvci0iCisjfiAibWVzc2FnZT4gY2FuIGNvbnRhaW4gbmV3bGluZXMsIGFsdGhvdWdoIGluIGxvY2FsZXMgd2hlcmUgdGhlIHRyYW5zbGF0b3JzICIKKyN+ICJoYXZlIG5vdCBtYWRlIG1pc3Rha2VzIGV2ZXJ5IG5ld2xpbmUgaXMgZm9sbG93ZWQgYnkgYXQgbGVhc3Qgb25lIHNwYWNlLiIKKyN+IG1zZ3N0ciAiIgorI34gIkV0dCBmZWwgdXBwc3RvZC4gVHl2w6RyciBrYW4gSTx1dMO2a2F0LWZlbG1lZGRlbGFuZGU+IGbDtnIgbsOkcnZhcmFuZGUgIgorI34gImlubmVow6VsbGEgbnlyYWRzdGVja2VuLCDDpHZlbiBvbSBpIGxva2FsZXIgZMOkciDDtnZlcnPDpHR0YXJuYSBpbnRlIGhhciBnam9ydCAiCisjfiAibsOlZ3JhIGZlbCBrb21tZXIgdmFyamUgbnlyYWRzdGVja2VuIGF0dCBlZnRlcmbDtmxqYXMgYXYgw6V0bWluc3RvbmUgZXR0ICIKKyN+ICJueXJhZHN0ZWNrZW4uIgorCisjfiBtc2dpZCAiMjAwOS0wMy0wOCIKKyN+IG1zZ3N0ciAiMjAwOS0wMy0wOCIKKworI34gbXNnaWQgIkk8YWRtaW5kaXI+L2luZm8vSTxwYWNrYWdlPi5zeW1ib2xzIgorI34gbXNnc3RyICJJPGFkbWlua2F0Pi9pbmZvL0k8cGFrZXQ+LnN5bWJvbHMiCisKKyN+IG1zZ2lkICJJPGFkbWluZGlyPi9pbmZvL0k8cGFja2FnZT4uc2hsaWJzIgorI34gbXNnc3RyICJJPGFkbWlua2F0Pi9pbmZvL0k8cGFrZXQ+LnNobGlicyIKKworI34gbXNnaWQgIjIwMDktMTEtMTEiCisjfiBtc2dzdHIgIjIwMDktMTEtMTEiCisKKyN+IG1zZ2lkICIyMDA5LTAyLTI2IgorI34gbXNnc3RyICIyMDA5LTAyLTI2IgorCisjfiBtc2dpZCAiMjAwOS0wNC0xMyIKKyN+IG1zZ3N0ciAiMjAwOS0wNC0xMyIKKworI34gbXNnaWQgIiIKKyN+ICJUaGlzIGZvcm1hdCBpcyBleHBlcmltZW50YWwuIEl0IHVzZXMgYSBidW5kbGUgb2YgYSBnaXQgcmVwb3NpdG9yeSB0byBob2xkICIKKyN+ICJ0aGUgc291cmNlIG9mIGEgcGFja2FnZS4iCisjfiBtc2dzdHIgIiIKKyN+ICJEZXQgaMOkciBmb3JtYXRldCDDpHIgZXhwZXJpbWVudGVsbHQuIERldCBhbnbDpG5kZXIgZW4gXCJidW5kbGVcIiBmcsOlbiBldHQgIgorI34gImdpdC1hcmtpdiBmw7ZyIHBha2V0ZXRzIGvDpGxsa29kLiIKKworI34gbXNnaWQgIlRoZSBidW5kbGUgaXMgY2xvbmVkIHRvIGEgbmV3IGdpdCByZXBvc2l0b3J5LiIKKyN+IG1zZ3N0ciAiXCJCdW5kbGVcIjpuIGtsb25hcyB0aWxsIGV0dCBueXR0IGdpdC1hcmtpdi4iCisKKyN+IG1zZ2lkICIyMDA3LTEwLTA4IgorI34gbXNnc3RyICIyMDA3LTEwLTA4IgorCisjfiBtc2dpZCAiIgorI34gIkRlZmluZWQgYnkgQjxkcGtnPiBvbiB0aGUgbWFpbnRhaW5lciBzY3JpcHQgZW52aXJvbm1lbnQgdG8gdGhlIHByaXZhdGUgIgorI34gImxpYnJhcnkgZGlyZWN0b3J5IG9mIHRoZSBjdXJyZW50bHkgcnVubmluZyBCPGRwa2c+IGluc3RhbmNlLiIKKyN+IG1zZ3N0ciAiIgorI34gIkRlZmluaWVyYXMgYXYgQjxkcGtnPiBpIHV0dmVja2xhcnNrcmlwdGV0cyBtaWxqw7YgdGlsbCBkZW4gcHJpdmF0YSAiCisjfiAiYmlibGlvdGVrc2thdGFsb2dlbiBmw7ZyIGRlbiBpbnN0YW5zIGF2IEI8ZHBrZz4gc29tIGvDtnJzIGbDtnIgdGlsbGbDpGxsZXQuIgorCisjfiBtc2dpZCAiMjAxMC0wNC0xMSIKKyN+IG1zZ3N0ciAiMjAxMC0wNC0xMSIKKworI34gbXNnaWQgIkZvcm1hdDogMy4wIChnaXQpIGFuZCAzLjAgKGJ6cikiCisjfiBtc2dzdHIgIkZvcm1hdDogMy4wIChnaXQpIG9jaCAzLjAgKGJ6cikiCisKKyN+IG1zZ2lkICIiCisjfiAiSTxwcmlvcml0eT4gYW5kIEk8c2VjdGlvbj4gcGxhY2UgdGhlIHBhY2thZ2Ugd2l0aGluIHRoZSByZWxlYXNlIHRyZWU7ICIKKyN+ICJ0aGVzZSBvdWdodCBub3QgdG8gYmUgZm91bmQgaW4gdGhlIGNvbnRyb2wgZmlsZS4gSWYgdGhlIHBhY2thZ2UgaXMgZm91bmQgIgorI34gImluIGEgc3ViZGlyZWN0b3J5IG9mIEk8YmluYXJ5ZGlyPiwgdGhhdCB3aWxsIGJlIGNoZWNrZWQgYWdhaW5zdCAiCisjfiAiSTxzZWN0aW9uPi4iCisjfiBtc2dzdHIgIiIKKyN+ICJJPHByaW9yaXRldD4gb2NoIEk8c2VrdGlvbj4gcGxhY2VyYXIgcGFrZXRldCBpIHV0Z2l2bmluZ3N0csOkZGV0LCBkZXNzYSAiCisjfiAiYsO2ciBpbnRlIGbDtnJla29tbWEgaSBrb250cm9sbGZpbGVuLiBPbSBwYWtldGV0IGZpbm5zIGkgZW4gdW5kZXJrYXRhbG9nIGF2ICIKKyN+ICJJPGJpbsOkcmthdGFsb2c+IGtvbW1lciBkZW4gYXR0IGtvbnRyb2xsZXJhcyBtb3QgSTxzZWt0aW9uPi4iCisKKyN+IG1zZ2lkICJmb3IgdGhlIGN1cnJlbnQgdXNlciB3aXRoIEI8fi8uY29uZmlnL2Rwa2ctYnVpbGRmbGFncy5jb25mPjsiCisjfiBtc2dzdHIgImbDtnIgZGVuIGFrdHVlbGxhIGFudsOkbmRhcmVuIG1lZCBCPH4vLmNvbmZpZy9kcGtnLWJ1aWxkZmxhZ3MuY29uZj47IgorCisjfiBtc2dpZCAiQjx+Ly5jb25maWcvZHBrZy1idWlsZGZsYWdzLmNvbmY+IgorI34gbXNnc3RyICJCPH4vLmNvbmZpZy9kcGtnLWJ1aWxkZmxhZ3MuY29uZj4iCisKKyN+IG1zZ2lkICIiCisjfiAiSWYgdGhlIGhvc3QgYXJjaGl0ZWN0dXJlIGRpZmZlcnMgZnJvbSB0aGUgYnVpbGQgYXJjaGl0ZWN0dXJlIChhcyBpcyB0aGUgIgorI34gImNhc2UgZm9yIGEgY3Jvc3MtY29tcGlsYXRpb24pLCBhbmQgaWYgdGhlIGVudmlyb25tZW50IHZhcmlhYmxlICIKKyN+ICJCPFBLR19DT05GSUdfTElCRElSPiBpcyBub3Qgc2V0LCB0aGVuIGl0IGlzIHNldCB0byBhIHZhbHVlIHN1aXRhYmxlIGZvciAiCisjfiAiY3Jvc3MtY29tcGlsYXRpb24gKFwiL3Vzci9JPGdudS1zeXN0ZW0tdHlwZT4vbGliL3BrZ2NvbmZpZy86L3Vzci9zaGFyZS8iCisjfiAicGtnY29uZmlnXCIpLiIKKyN+IG1zZ3N0ciAiIgorI34gIk9tIHbDpHJkYXJraXRla3R1cmVuIHNraWxqZXIgc2lnIGZyw6VuIGJ5Z2dhcmtpdGVrdHVyZW4gKHRpbGwgZXhlbXBlbCB2aWQgIgorI34gImtvcnNrb21waWxlcmluZyksIG9jaCBvbSBtaWxqw7Z2YXJpYWJlbG4gQjxQS0dfQ09ORklHX0xJQkRJUj4gaW50ZSDDpHIgIgorI34gInNhdHQsIHPDpSBrb21tZXIgZGVuIGF0dCBzw6R0dGFzIHRpbGwgZXR0IHbDpHJkZSBsw6RtcGxpZ3QgZsO2ciAiCisjfiAia29yc2tvbXBpbGVyaW5nIChcIi91c3IvSTxnbnUtc3lzdGVtdHlwPi9saWIvcGtnY29uZmlnLzovdXNyL3NoYXJlLyIKKyN+ICJwa2djb25maWdcIikuIgorCisjfiBtc2dpZCAiIgorI34gIlNvbWUgZW52aXJvbm1lbnQgdmFyaWFibGVzIGRlZmluaW5nIGNvbXBpbGVyIGFuZCBsaW5rZXIgb3B0aW9ucyBhcmUgc2V0ICIKKyN+ICJ0byBkZWZhdWx0IHZhbHVlcyB1bmxlc3MgYWxyZWFkeSBwcmVzZW50IGluIHRoZSBlbnZpcm9ubWVudC4gTm90ZSB0aGF0ICIKKyN+ICJ0aGlzIG1lY2hhbmlzbSB3YXMgb25seSBpbnRyb2R1Y2VkIGluIHZlcnNpb24gMS4xNC4xNyBvZiBkcGtnLWRldiBhbmQgbm90ICIKKyN+ICJhbGwgSTxydWxlcz4gZmlsZXMgYW5kIGJ1aWxkIHRvb2xzIHdpbGwgaG9ub3VyIHRoZXNlIHZhcmlhYmxlcywgeWV0LiIKKyN+IG1zZ3N0ciAiIgorI34gIkV0dCBwYXIgbWlsasO2dmFyaWFibGVyIHNvbSBhbmdlciBrb21waWxhdG9yLSBvY2ggbMOkbmthcmZsYWdnb3Igw6V0ZXJzdMOkbGxzICIKKyN+ICJ0aWxsIHNpbmEgc3RhbmRhcmR2w6RyZGVuIHPDpXZpZGEgZGUgaW50ZSByZWRhbiBoYXIgc2F0dHMgaSBtaWxqw7ZuLiAiCisjfiAiT2JzZXJ2ZXJhIGF0dCBkZW5uYSBtZWthbmlzbSBpbnRyb2R1Y2VyYWRlcyBmw7Zyc3QgaSBkcGtnLWRldiB2ZXJzaW9uICIKKyN+ICIxLjE0LjE3IG9jaCBhdHQgaW50ZSBhbGxhIEk8cnVsZXM+LWZpbGVyIG9jaCBieWdndmVya3R5ZyDDpG5udSBnb2R0YXIgIgorI34gImRlc3NhIHZhcmlhYmxlci4iCisKKyN+IG1zZ2lkICIiCisjfiAiT3B0aW1pemF0aW9uIG9wdGlvbnMgd2hpY2ggYXJlIHBhc3NlZCB0byB0aGUgRGViaWFuIGJ1aWxkIHN5c3RlbSBhbmQgY2FuLyIKKyN+ICJzaG91bGQgYmUgb3ZlcnJpZGRlbiBieSB0aGUgcGFja2FnZSBidWlsZCBpZiBuZWVkZWQgKGRlZmF1bHQgdmFsdWU6IEI8LWcgLSIKKyN+ICJPMj4sIG9yIEI8LWdcXCAtTzA+IGlmIEI8bm9vcHQ+IGlzIHNwZWNpZmllZCBpbiBERUJfQlVJTERfT1BUSU9OUykuICIKKyN+ICJPdmVycmlkaW5nIG9wdGlvbnMgY2FuIGJlIHVzZWQgdG8gZXhwbGljaXRseSBzZXQgYSBoaWdoZXIgb3B0aW1pemF0aW9uICIKKyN+ICJsZXZlbCwgb3Igd29yayBhcm91bmQgY29tcGlsZXIgYnVncywgd2hpY2ggb25seSBjYW4gYmUgc2VlbiB3aXRoIHNvbWUgIgorI34gIm9wdGltaXphdGlvbiBsZXZlbHMgKHRoZSBsYXN0IG9wdCBsZXZlbCBcIndpbnNcIikuIgorI34gbXNnc3RyICIiCisjfiAiT3B0aW1lcmluZ3NmbGFnZ29yIHNvbSBzw6RuZHMgdGlsbCBEZWJpYW5zIGJ5Z2dzeXN0ZW0gb2NoIGthbi9iw7ZyICIKKyN+ICLDtnZlcnN0eXJhcyBhdiBwYWtldGV0IHNvbSBieWdncyBvbSBzw6UgYmVow7Z2cyAoc3RhbmRhcmR2w6RyZGU6IEI8LWcgLU8yPiwgIgorI34gImVsbGVyIEI8LWcgLU8wPiBvbSBCPG5vb3B0PiBhbmdlcyBpIERFQl9CVUlMRF9PUFRJT05TKS4gw5Z2ZXJzdHlyZGEgIgorI34gImZsYWdnb3Iga2FuIGFudsOkbmRhcyBmw7ZyIGF0dCBleHBsaWNpdCB2w6RsamEgZW4gaMO2Z3JlIG9wdGltZXJpbmdzbml2w6UsICIKKyN+ICJlbGxlciBmw7ZyIGF0dCBmw7ZyYmlnw6Uga29tcGlsYXRvcmZlbCBzb20gYmFyYSBzZXMgbWVkIHZpc3NhICIKKyN+ICJvcHRpbWVyaW5nc25pdsOlZXIgKGRlbiBzaXN0IHNhdHRhIG9wdGltZXJpbmdzbml2w6VuIFwidmlubmVyXCIpLiIKKworI34gbXNnaWQgIkI8Q0ZMQUdTX0FQUEVORD4iCisjfiBtc2dzdHIgIkI8Q0ZMQUdTX0FQUEVORD4iCisKKyN+IG1zZ2lkICIiCisjfiAiT3B0aW1pemF0aW9uIG9wdGlvbnMgYXBwZW5kZWQgdG8gdGhlIGNvbXBpbGVyIGZsYWdzLCB3aGljaCBtdXN0IG5vdCBiZSAiCisjfiAib3ZlcndyaXR0ZW4gYnkgdGhlIHBhY2thZ2UgKG1vc3RseSB1c2VkIHRvIGZvciB0ZXN0IGJ1aWxkcykuIERlZmF1bHQgIgorI34gInZhbHVlOiBlbXB0eS4iCisjfiBtc2dzdHIgIiIKKyN+ICJPcHRpbWVyaW5nc2ZsYWdnb3Igc29tIGzDpGdncyB0aWxsIGtvbXBpbGF0b3JmbGFnZ29ybmEsIHZpbGthIGludGUgZsOlciAiCisjfiAic2tyaXZhcyDDtnZlciBhdiBwYWtldGV0IChhbnbDpG5kcyBodXZ1ZHNha2xpZ2VuIGbDtnIgdGVzdGJ5Z2dlbikuICIKKyN+ICJTdGFuZGFyZHbDpHJkZTogdG9tdC4iCisKKyN+IG1zZ2lkICJTYW1lIGFzIEI8Q0ZMQUdTPiBmb3IgQysrIHNvdXJjZXMuIgorI34gbXNnc3RyICJTYW1tYSBzb20gQjxDRkxBR1M+IGbDtnIgQysrLWvDpGxsa29kLiIKKworI34gbXNnaWQgIkI8Q1hYRkxBR1NfQVBQRU5EPiIKKyN+IG1zZ3N0ciAiQjxDWFhGTEFHU19BUFBFTkQ+IgorCisjfiBtc2dpZCAiU2FtZSBhcyBCPENGTEFHU19BUFBFTkQ+IGZvciBDKysgc291cmNlcy4iCisjfiBtc2dzdHIgIlNhbW1hIHNvbSBCPENGTEFHU19BUFBFTkQ+IGbDtnIgQysrLWvDpGxsa29kLiIKKworI34gbXNnaWQgIlNhbWUgYXMgQjxDRkxBR1M+IGZvciBGb3J0cmFuIHNvdXJjZXMuIgorI34gbXNnc3RyICJTYW1tYSBzb20gQjxDRkxBR1M+IGbDtnIgRm9ydHJhbmvDpGxsa29kLiIKKworI34gbXNnaWQgIkI8RkZMQUdTX0FQUEVORD4iCisjfiBtc2dzdHIgIkI8RkZMQUdTX0FQUEVORD4iCisKKyN+IG1zZ2lkICJTYW1lIGFzIEI8Q0ZMQUdTX0FQUEVORD4gZm9yIEZvcnRyYW4gc291cmNlcy4iCisjfiBtc2dzdHIgIlNhbW1hIHNvbSBCPENGTEFHU19BUFBFTkQ+IGbDtnIgRm9ydHJhbmvDpGxsa29kLiIKKworI34gbXNnaWQgIiIKKyN+ICJQcmVwcm9jZXNzb3IgZmxhZ3Mgd2hpY2ggYXJlIHBhc3NlZCB0byB0aGUgRGViaWFuIGJ1aWxkIHN5c3RlbSBhbmQgY2FuLyIKKyN+ICJzaG91bGQgYmUgb3ZlcnJpZGRlbiBieSB0aGUgcGFja2FnZSBidWlsZCBpZiBuZWVkZWQgKGRlZmF1bHQ6IGVtcHR5KS4gIgorI34gIlRoaXMgbWFjcm8gaXMgc2VsZG9tIHVzZWQgKG1vc3QgYnVpbGQgc3lzdGVtcyBqdXN0IHVzZSBCPENGTEFHUz4gaW5zdGVhZCAiCisjfiAib2YgQjxDUFBGTEFHUz4pLiIKKyN+IG1zZ3N0ciAiIgorI34gIkbDtnJwcm9jZXNzb3JmbGFnZ29yIHNvbSBzw6RuZHMgdGlsbCBEZWJpYW5zIGJ5Z2dzeXN0ZW0gb2NoIGthbi9iw7ZyICIKKyN+ICLDtnZlcnN0eXJhcyBhdiBwYWtldGV0IHNvbSBieWdncyBvbSBzw6UgYmVow7Z2cyAoc3RhbmRhcmR2w6RyZGU6IHRvbXQpLiBEZXR0YSAiCisjfiAibWFrcm8gYW52w6RuZHMgc8OkbGxhbiAoZGUgZmxlc3RhIGJ5Z2dzeXN0ZW0gYW52w6RuZGVyIGhlbHQgZW5rZWx0IEI8Q0ZMQUdTPiAiCisjfiAiaXN0w6RsbGV0IGbDtnIgQjxDUFBGTEFHUz4pLiIKKworI34gbXNnaWQgIkI8Q1BQRkxBR1NfQVBQRU5EPiIKKyN+IG1zZ3N0ciAiQjxDUFBGTEFHU19BUFBFTkQ+IgorCisjfiBtc2dpZCAiIgorI34gIlByZXByb2Nlc3NvciBmbGFncyBhcHBlbmRlZCB0byB0aGUgcHJlcHJvY2Vzc29yIGZsYWdzLCB3aGljaCBtdXN0IG5vdCBiZSAiCisjfiAib3ZlcndyaXR0ZW4gYnkgdGhlIHBhY2thZ2UgKG1vc3RseSB1c2VkIHRvIGZvciB0ZXN0IGJ1aWxkcykuIERlZmF1bHQgIgorI34gInZhbHVlOiBlbXB0eS4iCisjfiBtc2dzdHIgIiIKKyN+ICJGw7ZycHJvY2Vzc29yZmxhZ2dvciBzb20gbMOkZ2dzIHRpbGwgZsO2cnByb2Nlc3NvcmZsYWdnb3JuYSwgdmlsa2EgaW50ZSBmw6VyICIKKyN+ICJza3JpdmFzIMO2dmVyIGF2IHBha2V0ZXQgKGFudsOkbmRzIGh1dnVkc2FrbGlnZW4gZsO2ciB0ZXN0YnlnZ2VuKS4gIgorI34gIlN0YW5kYXJkdsOkcmRlOiB0b210LiIKKworI34gbXNnaWQgIkI8TERGTEFHU19BUFBFTkQ+IgorI34gbXNnc3RyICJCPExERkxBR1NfQVBQRU5EPiIKKworI34gbXNnaWQgIiIKKyN+ICJPcHRpbWl6YXRpb24gb3B0aW9ucyBhcHBlbmRlZCB0byB0aGUgY29tcGlsZXIgZmxhZ3Mgd2hlbiBsaW5raW5nIGNvZGUsICIKKyN+ICJ3aGljaCBtdXN0IG5vdCBiZSBvdmVyd3JpdHRlbiBieSB0aGUgcGFja2FnZSAobW9zdGx5IHVzZWQgdG8gZm9yIHRlc3QgIgorI34gImJ1aWxkcykuIERlZmF1bHQgdmFsdWU6IGVtcHR5LiIKKyN+IG1zZ3N0ciAiIgorI34gIkZsYWdnb3Igc29tIGzDpGdncyB0aWxsIGtvbXBpbGF0b3JmbGFnZ29ybmEgdmlkIGzDpG5rbmluZyBhdiBrb2QsIHZpbGthICIKKyN+ICJpbnRlIGbDpXIgc2tyaXZhcyDDtnZlciBhdiBwYWtldGV0IChhbnbDpG5kcyBodXZ1ZHNha2xpZ2VuIGbDtnIgdGVzdGJ5Z2dlbikuICIKKyN+ICJTdGFuZGFyZHbDpHJkZTogdG9tdC4iCisKKyN+IG1zZ2lkICJpbmNsdWRlIGFsbCBjaGFuZ2VzLiIKKyN+IG1zZ3N0ciAidGEgbWVkIGFsbGEgw6RuZHJpbmdhci4iCisKKyN+IG1zZ2lkICIyMDA5LTExLTEyIgorI34gbXNnc3RyICIyMDA5LTExLTEyIgorCisjfiBtc2dpZCAiQjwtLWxpY2VuY2U+LCBCPC0tbGljZW5zZT4iCisjfiBtc2dzdHIgIkI8LS1saWNlbmNlPiwgQjwtLWxpY2Vuc2U+IgorCisjfiBtc2dpZCAiRGlzcGxheSBCPGRwa2c+IGxpY2VuY2UuIgorI34gbXNnc3RyICJWaXNhciBCPGRwa2c+cyBsaWNlbnN2aWxsa29yLiIKKworI34gbXNnaWQgIkVOVklST05NRU5UIFZBUklBQkxFUyIKKyN+IG1zZ3N0ciAiTUlMSsOWVkFSSUFCTEVSIgorCisjfiBtc2dpZCAiQjxEUEtHX05PX1RTVFA+IgorI34gbXNnc3RyICJCPERQS0dfTk9fVFNUUD4iCisKKyN+IG1zZ2lkICIiCisjfiAiRGVmaW5lIHRoaXMgdG8gc29tZXRoaW5nIGlmIHlvdSBwcmVmZXIgQjxkcGtnPiBzdGFydGluZyBhIG5ldyBzaGVsbCAiCisjfiAicmF0aGVyIHRoYW4gc3VzcGVuZGluZyBpdHNlbGYsIHdoaWxlIGRvaW5nIGEgc2hlbGwgZXNjYXBlLiIKKyN+IG1zZ3N0ciAiIgorI34gIkRlZmluaWVyYSBkZXR0YSB0aWxsIG7DpWdvbnRpbmcgb20gZHUgdmlsbCBhdHQgQjxkcGtnPiBza2FsbCBzdGFydGEgZXR0ICIKKyN+ICJueXR0IHNrYWwgaXN0w6RsbGV0IGbDtnIgYXR0IGzDpGdnYSBzaWcgaSBiYWtncnVuZGVuIG7DpHIgZXR0IHNrYWwgc3RhcnRhcy4iCisKKyN+IG1zZ2lkICIyMDA5LTA2LTEzIgorI34gbXNnc3RyICIyMDA5LTA2LTEzIgorCisjfiBtc2dpZCAiMjAwOS0wMS0wNyIKKyN+IG1zZ3N0ciAiMjAwOS0wMS0wNyIKKworI34gbXNnaWQgIkI8LS1saWNlbnNlPiwgQjwtLWxpY2VuY2U+IgorI34gbXNnc3RyICJCPC0tbGljZW5zZT4sIEI8LS1saWNlbmNlPiIKKworI34gbXNnaWQgIlNob3cgdGhlIGNvcHlyaWdodCBsaWNlbnNpbmcgdGVybXMgYW5kIGV4aXQuIgorI34gbXNnc3RyICJWaXNhIHVwcGhvdnNyw6R0dHNsaWNlbnN2aWxsa29yIG9jaCBhdnNsdXRhLiIKKworI34gbXNnaWQgIiIKKyN+ICJSZWFkIHN1YnN0aXR1dGlvbiB2YXJpYWJsZXMgaW4gSTxzdWJzdHZhcnNmaWxlPjsgdGhlIGRlZmF1bHQgaXMgQjxkZWJpYW4vIgorI34gInN1YnN0dmFycz4uIgorI34gbXNnc3RyICIiCisjfiAiTMOkc2VyIHN1YnN0aXR1ZXJpbmdzdmFyaWFibGVyIGkgSTxzdWJzdHZhcmZpbD47IHN0YW5kYXJkdsOkcmRldCDDpHIgIgorI34gIkI8ZGViaWFuL3N1YnN0dmFycz4uIgorCisjfiBtc2dpZCAiQjwtbD4sIEI8LS1saWNlbnNlPiIKKyN+IG1zZ3N0ciAiQjwtbD4sIEI8LS1saWNlbnNlPiIKKworI34gbXNnaWQgIjIwMDktMDktMDYiCisjfiBtc2dzdHIgIjIwMDktMDktMDYiCisKKyN+IG1zZ2lkICJCPC1JPltJPGZpbGUtcGF0dGVybj5dIgorI34gbXNnc3RyICJCPC1JPltJPGZpbG5hbW5zbcO2bnN0ZXI+XSIKKworI34gbXNnaWQgIjIwMDktMDgtMjAiCisjfiBtc2dzdHIgIjIwMDktMDgtMjAiCisKKyN+IG1zZ2lkICJCPC0tbGljZW5jZT58QjwtLWxpY2Vuc2U+IgorI34gbXNnc3RyICJCPC0tbGljZW5jZT58QjwtLWxpY2Vuc2U+IgorCisjfiBtc2dpZCAiIgorI34gIkRpc3BsYXlzIHRoZSBCPGRzZWxlY3Q+IGNvcHlyaWdodCBhbmQgbGljZW5zZSBpbmZvcm1hdGlvbiBhbmQgZXhpdHMgIgorI34gInN1Y2Nlc3NmdWxseS4iCisjfiBtc2dzdHIgIiIKKyN+ICJWaXNhciB1cHBob3ZzcsOkdHRzbGlnIG9jaCBsaWNlbnNpbmZvcm1hdGlvbiBvbSBCPGRzZWxlY3Q+LCBvY2ggZ2VyIGx5Y2thdCAiCisjfiAiYXZzbHV0LiIKKworI34gbXNnaWQgIkI8LWg+IgorI34gbXNnc3RyICJCPC1oPiIKKworI34gbXNnaWQgIkI8LS13aXRob3V0LXF1aWx0PiIKKyN+IG1zZ3N0ciAiQjwtLXdpdGhvdXQtcXVpbHQ+IgorCisjfiBtc2dpZCAiIgorI34gIkRvbid0IHVzZSBxdWlsdCB0byBhcHBseSBwYXRjaGVzIGJ1dCBkcGtnLXNvdXJjZSdzIG93biBjb2RlLiBJdCB3b24ndCBiZSAiCisjfiAicG9zc2libGUgdG8gdXNlIHF1aWx0IGRpcmVjdGx5IG9uIHRoZSB1bnBhY2tlZCBkaXJlY3RvcnkgYnV0IGl0IHdpbGwgYmUgIgorI34gImZyZWUgb2YgcXVpbHQncyB0ZW1wb3JhcnkgZmlsZXMgYXMgd2VsbC4iCisjfiBtc2dzdHIgIiIKKyN+ICJBbnbDpG5kIGludGUgcXVpbHQgZsO2ciBhdHQgdGlsbMOkbXBhIHBhdGNoYXIsIHV0YW4gZHBrZy1zb3VyY2U6cyBlZ2VuIGtvZC4gIgorI34gIkRldCBrb21tZXIgaW50ZSB2YXJhIG3DtmpsaWd0IGF0dCBhbnbDpG5kYSBxdWlsdCBkaXJla3QgcMOlIGRlbiB1cHBhY2thZGUgIgorI34gImthdGFsb2dlbiwgbWVuIGRlbiBrb21tZXIgaSB0aWxsw6RnZyBhdHQgc2xpcHBhIHF1aWx0cyB0ZW1wb3LDpHJhIGZpbGVyLiIKKworI34gbXNnaWQgIjIwMDgtMDQtMDkiCisjfiBtc2dzdHIgIjIwMDgtMDQtMDkiCisKKyN+IG1zZ2lkICIyMDA3LTAzLTA2IgorI34gbXNnc3RyICIyMDA3LTAzLTA2IgorCisjfiBtc2dpZCAiMjAwNy0wNi0xMiIKKyN+IG1zZ3N0ciAiMjAwNy0wNi0xMiIKKworI34gbXNnaWQgIkI8LVo+STxjb21wcmVzc2lvbj4iCisjfiBtc2dzdHIgIkI8LVo+STxrb21wcmltZXJpbmdzdHlwPiIKKworI34gbXNnaWQgIkI8LXo+STxsZXZlbD4iCisjfiBtc2dzdHIgIkI8LXo+STxrb21wcmltZXJpbmdzbml2w6U+IgorCisjfiBtc2dpZCAiMjAwOS0wMS0wNCIKKyN+IG1zZ3N0ciAiMjAwOS0wMS0wNCIKKworI34gbXNnaWQgIjIwMDktMDItMTgiCisjfiBtc2dzdHIgIjIwMDktMDItMTgiCisKKyN+IG1zZ2lkICJGb3JnZXQgYWJvdXQgdW5pbnN0YWxsZWQgdW5hdmFpbGFibGUgcGFja2FnZXMuIgorI34gbXNnc3RyICJHbMO2bSBib3J0IGVqIGluc3RhbGxlcmFkZSBlaiBsw6RuZ2UgdGlsbGfDpG5nbGlnYSBwYWtldC4iCisKKyN+IG1zZ2lkICJpbnN0YWxsLWluZm8iCisjfiBtc2dzdHIgImluc3RhbGwtaW5mbyIKKworI34gbXNnaWQgImluc3RhbGwtaW5mbyAtIGNyZWF0ZSBvciB1cGRhdGUgZW50cnkgaW4gSW5mbyBkaXIgZmlsZSIKKyN+IG1zZ3N0ciAiaW5zdGFsbC1pbmZvIC0gc2thcGEgZWxsZXIgdXBwZGF0ZXJhIHBvc3QgaSBlbiBpbmZvLWthdGFsb2dmaWwiCisKKyN+IG1zZ2lkICIiCisjfiAiQjxpbnN0YWxsLWluZm8+IFtCPC0tdmVyc2lvbj5dIFtCPC0taGVscD5dIFtCPC0tZGVidWc+XSBbQjwtLSIKKyN+ICJtYXh3aWR0aD0+STxubm4+XSBbQjwtLXNlY3Rpb24gPkk8cmVnZXhwPkI8ID5JPHRpdGxlPl0gW0I8LS0iCisjfiAiaW5mb2Rpcj0+STx4eHg+XSBbQjwtLWFsaWduPT5JPG5ubj5dIFtCPC0tcXVpZXQ+XSBbQjwtLW1lbnVlbnRyeT0+STx4eHg+XSAiCisjfiAiW0I8LS1kZXNjcmlwdGlvbj0+STx4eHg+XSBbQjwtLXJlbW92ZT58QjwtLXJlbW92ZS1leGFjdGx5Pl0gW0I8LS0+XSAiCisjfiAiSTxmaWxlbmFtZT4iCisjfiBtc2dzdHIgIiIKKyN+ICJCPGluc3RhbGwtaW5mbz4gW0I8LS12ZXJzaW9uPl0gW0I8LS1oZWxwPl0gW0I8LS1kZWJ1Zz5dIFtCPC0tIgorI34gIm1heHdpZHRoPT5JPG5ubj5dIFtCPC0tc2VjdGlvbiA+STxyZWd1bGrDpHJ0LXV0dHJ5Y2s+QjwgPkk8dGl0ZWw+XSBbQjwtLSIKKyN+ICJpbmZvZGlyPT5JPHh4eD5dIFtCPC0tYWxpZ249Pkk8bm5uPl0gW0I8LS1xdWlldD5dIFtCPC0tbWVudWVudHJ5PT5JPHh4eD5dICIKKyN+ICJbQjwtLWRlc2NyaXB0aW9uPT5JPHh4eD5dIFtCPC0tcmVtb3ZlPnxCPC0tcmVtb3ZlLWV4YWN0bHk+XSBbQjwtLT5dICIKKyN+ICJJPGZpbG5hbW4+IgorCisjfiBtc2dpZCAiIgorI34gIkI8aW5zdGFsbC1pbmZvPiBjcmVhdGVzLCB1cGRhdGVzIG9yIHJlbW92ZXMgZW50cmllcyBpbiB0aGUgSW5mbyBCPGRpcj4gIgorI34gImZpbGUuIFdoZW4gdXBkYXRpbmcgb3IgY3JlYXRpbmcgZW50cmllcywgaWYgbm8gZGVzY3JpcHRpb24gaXMgc3BlY2lmaWVkICIKKyN+ICJvbiB0aGUgY29tbWFuZCBsaW5lIG9yIGluIHRoZSBJbmZvIGZpbGUsIGl0IGF0dGVtcHRzIHRvIGd1ZXNzIGEgIgorI34gImRlc2NyaXB0aW9uIGZyb20gdGhlIGNvbnRlbnRzIG9mIHRoZSBmaWxlLiIKKyN+IG1zZ3N0ciAiIgorI34gIkI8aW5zdGFsbC1pbmZvPiBza2FwYXIsIHVwcGRhdGVyYXIgZWxsZXIgdGFyIGJvcnQgcG9zdGVyIEluZm9zIEI8ZGlyPi0iCisjfiAiZmlsLiBOw6RyIHBvc3RlciB1cHBkYXRlcmFzIGVsbGVyIHNrYXBhcyBmw7Zyc8O2a2VyIGRlbiBnaXNzYSBlbiBiZXNrcml2bmluZyAiCisjfiAiZnLDpW4gaW5uZWjDpWxsZXQgaSBmaWxlbiBvbSBpbmdlbiBiZXNrcml2bmluZyBhbmdlcyBww6Uga29tbWFuZG9yYWRlbiBlbGxlciAiCisjfiAiaSBJbmZvLWZpbGVuLiIKKworI34gbXNnaWQgIiIKKyN+ICJTZWUgdGhlIGRlc2NyaXB0aW9uIG9mIHRoZSBCPC0tc2VjdGlvbj4gb3B0aW9uIGZvciBkZXRhaWxzIG9mIHdoZXJlIHRoZSAiCisjfiAiZW50cnkgd2lsbCBiZSBwbGFjZWQgYW5kIGEgZGVzY3JpcHRpb24gb2YgdGhlIGV4cGVjdGVkIGZvcm1hdCBvZiB0aGUgIgorI34gIkI8ZGlyPiBmaWxlLiIKKyN+IG1zZ3N0ciAiIgorI34gIlNlIGJlc2tyaXZuaW5nZW4gZsO2ciBmbGFnZ2FuIEI8LS1zZWN0aW9uPiBmw7ZyIGRldGFsamVyIG9tIHZhciBwb3N0ZW4gIgorI34gInNrYXBhcyBvY2ggZW4gYmVza3Jpdm5pbmcgYXYgZGV0IGZvcm1hdCBzb20gZsO2cnbDpG50YXMgcMOlIEI8ZGlyPi1maWxlbi4iCisKKyN+IG1zZ2lkICJCPFstLV0gPkk8ZmlsZW5hbWU+IgorI34gbXNnc3RyICJCPFstLV0gPkk8ZmlsbmFtbj4iCisKKyN+IG1zZ2lkICIiCisjfiAiR2l2ZXMgdGhlIGZpbGVuYW1lIG9mIHRoZSBJbmZvIGZpbGUgd2hvc2UgbWVudSBlbnRyeSBpcyB0byBiZSBjcmVhdGVkLCAiCisjfiAidXBkYXRlZCBvciByZW1vdmVkLiBJZiBCPC0tcmVtb3ZlLWV4YWN0bHk+IGlzIHNwZWNpZmllZCwgdGhlbiBJPGZpbGVuYW1lPiAiCisjfiAic2hvdWxkIGJlIHRoZSBleGFjdCBlbnRyeSBuYW1lIHRvIGJlIHJlbW92ZWQgKGUuZy4gXCJlbWFjcy0yMC9lbWFjc1wiIG9yICIKKyN+ICJcImdjY1wiKSwgb3RoZXJ3aXNlIHRoZSBiYXNlbmFtZSBvZiB0aGlzIGZpbGVuYW1lIGlzIHVzZWQgYXMgdGhlIHJlZmVyZW50ICIKKyN+ICJvZiB0aGUgbWVudSBlbnRyeSB3aGljaCBpcyBjcmVhdGVkLCB1bmxlc3MgdGhlcmUncyBhbiBvdmVycmlkaW5nIFNUQVJULSIKKyN+ICJJTkZPLURJUiBlbnRyeSBpbnNpZGUgdGhlIGdpdmVuIGZpbGUuIFRoaXMgZmlsZSBtdXN0IHRoZXJlZm9yZSBleGlzdCAob3IgIgorI34gImJlIGFib3V0IHRvIGJlIGluc3RhbGxlZCwgb3IgaGF2ZSBwcmV2aW91c2x5IGV4aXN0ZWQgd2hlbiByZW1vdmluZyBhbiAiCisjfiAiZW50cnkpIGluIHRoZSBzYW1lIGRpcmVjdG9yeSBhcyB0aGUgQjxkaXI+IGZpbGUgKHNlZSB0aGUgQjwtLWluZm9kaXI+ICIKKyN+ICJvcHRpb24pLiIKKyN+IG1zZ3N0ciAiIgorI34gIkFuZ2VyIGZpbG5hbW5ldCBww6UgZGVuIEluZm9maWwgdmFycyBtZW55cG9zdCBza2FsbCBza2FwYXMsIHVwcGRhdGVyYXMgIgorI34gImVsbGVyIHRhcyBib3J0LiBPbSBCPC0tcmVtb3ZlLWV4YWN0bHk+IGFuZ2VzIG3DpXN0ZSBJPGZpbG5hbW4+IHZhcmEgZGV0ICIKKyN+ICJleGFrdGEgbmFtbmV0IHDDpSBkZW4gcG9zdCBzb20gc2thbGwgdGFzIGJvcnQgKHQuZXggXCJlbWFjcy0yMC9lbWFjc1wiICIKKyN+ICJlbGxlciBcImdjY1wiKSwgYW5uYXJzIGFudsOkbmRzIGJhc25hbW5ldCBmw7ZyIGZpbG5hbW5ldCB0aWxsIGF0dCByZWZlcmVyYSAiCisjfiAidGlsbCBtZW55cG9zdGVuIHNvbSBza2FwYXMsIHPDpXZpZGEgaW50ZSBkZXQgZmlubnMgZXR0IMO2dmVyc3R5cmFuZGUgU1RBUlQtIgorI34gIklORk8tRElSLXBvc3QgaSBkZW4gZ2l2bmEgZmlsZW4uIEZpbGVuIG3DpXN0ZSBkw6RyZsO2ciBmaW5uYXMgKGVsbGVyIHZhcmEgcMOlICIKKyN+ICJ2w6RnIGF0dCBpbnN0YWxsZXJhcywgZWxsZXIgaGEgZXhpc3RlcmF0IHRpZGlnYXJlLCBvbSBlbiBwb3N0IHRhcyBib3J0KSBpICIKKyN+ICJzYW1tYSBrYXRhbG9nIHNvbSBCPGRpcj4tZmlsZW4gKHNlIGZsYWdnYW4gQjwtLWluZm9kaXI+KS4iCisKKyN+IG1zZ2lkICIiCisjfiAiSWYgSTxmaWxlbmFtZT4gZW5kcyBpbiBCPC5nej4sIGl0IGlzIHRha2VuIHRvIHJlZmVyIHRvIGEgZmlsZSBjb21wcmVzc2VkICIKKyN+ICJ3aXRoIEI8Z3ppcD47IGlmIGl0IGRvZXNuJ3QgZXhpc3QsIGJ1dCBhIGNvcnJlc3BvbmRpbmcgSTxmaWxlbmFtZT5CPC5nej4gIgorI34gImRvZXMsIHRoZSBsYXR0ZXIgaXMgdXNlZCBpbnN0ZWFkLiIKKyN+IG1zZ3N0ciAiIgorI34gIk9tIEk8ZmlsbmFtbj4gc2x1dGFyIHDDpSBCPC5nej4sIGFuc2VzIGRlbiByZWZlcmVyYSB0aWxsIGVuIGZpbCBzb20gIgorI34gImtvbXByaW1lcmF0cyBtZWQgQjxnemlwPi4gT20gZGVuIGludGUgZmlubnMsIG1lbiBkZXQgZmlubnMgZW4gbW90c3ZhcmFuZGUgIgorI34gIkk8ZmlsbmFtbj5CPC5nej4gYW52w6RuZHMgZGVuIHNlbmFyZSBpIHN0w6RsbGV0LiIKKworI34gbXNnaWQgIiIKKyN+ICJXaGVuIGFkZGluZyBvciB1cGRhdGluZyBlbnRyaWVzLCB0aGUgZmlsZSBtdXN0IGV4aXN0IGF0IHRoZSBwYXRoICIKKyN+ICJzcGVjaWZpZWQgKHBvc3NpYmx5IHdpdGggYW4gYWRkaXRpb25hbCBCPC5nej4gZXh0ZW5zaW9uKS4iCisjfiBtc2dzdHIgIiIKKyN+ICJOw6RyIHBvc3RlciBsw6RnZ3MgdGlsbCBlbGxlciB1cHBkYXRlcmFzIG3DpXN0ZSBmaWxlbiBleGlzdGVyYSBww6UgZGVuIHPDtmt2w6RnICIKKyN+ICJzb20gYW5nYXZzIChldmVudHVlbGx0IG1lZCBlbiB5dHRlcmxpZ2FyZSBCPC5nej4tZmlsw6RuZGVsc2UpLiIKKworI34gbXNnaWQgIkI8LS1yZW1vdmU+IgorI34gbXNnc3RyICJCPC0tcmVtb3ZlPiIKKworI34gbXNnaWQgIiIKKyN+ICJTcGVjaWZpZXMgdGhhdCB0aGUgZW50cnkgZm9yIHRoZSBmaWxlIEk8ZmlsZW5hbWU+IGlzIHRvIGJlIHJlbW92ZWQ7IGJ5ICIKKyN+ICJkZWZhdWx0IGVudHJpZXMgYXJlIGNyZWF0ZWQgb3IgdXBkYXRlZC4iCisjfiBtc2dzdHIgIiIKKyN+ICJBbmdlciBhdHQgcG9zdGVuIGbDtnIgZmlsZW4gSTxmaWxuYW1uPiBza2FsbCB0YXMgYm9ydC4gU3RhbmRhcmQgw6RyIGF0dCAiCisjfiAicG9zdGVyIGzDpGdncyB0aWxsIGVsbGVyIHVwcGRhdGVyYXMuIgorCisjfiBtc2dpZCAiIgorI34gIklmIHRoZSByZW1vdmFsIHJlc3VsdHMgaW4gYSBzZWN0aW9uIGJlY29taW5nIGVtcHR5LCB0aGUgc2VjdGlvbiBoZWFkaW5nICIKKyN+ICIoYW5kIHRoZSBzcGFyZSBibGFuayBsaW5lKSB3aWxsIGJlIHJlbW92ZWQgYXMgd2VsbCwgdW5sZXNzIHRoaXMgaXMgdGhlICIKKyN+ICJsYXN0IHNlY3Rpb24gaW4gdGhlIGZpbGUgb3IgQjwtLWtlZXAtb2xkPiBpcyBzcGVjaWZpZWQuIFNlZSB0aGUgQjwtLSIKKyN+ICJzZWN0aW9uPiBvcHRpb24gZm9yIGRldGFpbHMgYWJvdXQgdGhlIGV4cGVjdGVkIGZvcm1hdCBvZiB0aGUgQjxkaXI+IGZpbGUuIgorI34gbXNnc3RyICIiCisjfiAiT20gYm9ydHRhZ25pbmdlbiBsZWRlciB0aWxsIGF0dCBlbiBzZWt0aW9uIGJsaXIgdG9tIGtvbW1lciDDpHZlbiBydWJyaWtlbiAiCisjfiAiZsO2ciBzZWt0aW9uZW4gKG9jaCBkZW4gZXh0cmEgYmxhbmthIHJhZGVuKSBhdHQgYXMgYm9ydCwgc8OldmlkYSBpbnRlIGRldHRhICIKKyN+ICLDpHIgZGVuIHNpc3RhIHNla3Rpb25lbiBpIGZpbGVuIGVsbGVyIEI8LS1rZWVwLW9sZD4gYW5nZXMuIFNlIGZsYWdnYW4gQjwtLSIKKyN+ICJzZWN0aW9uPiBmw7ZyIGRldGFsamVyIG9tIGRldCBmw7ZydsOkbnRhZGUgZm9ybWF0ZXQgcMOlIEI8ZGlyPi1maWxlbi4iCisKKyN+IG1zZ2lkICIiCisjfiAiSWYgdGhlcmUgYXJlIHNldmVyYWwgc3VpdGFibGUgZW50cmllcyBpbiB0aGUgQjxkaXI+IGZpbGUsIG9ubHkgdGhvc2UgaW4gIgorI34gInRoZSBmaXJzdCBtYXRjaGluZyBjb250aWd1b3VzIGdyb3VwIHdpbGwgYmUgcmVtb3ZlZCBhbmQgdGhlIG90aGVycyAiCisjfiAic2lsZW50bHkgaWdub3JlZC4iCisjfiBtc2dzdHIgIiIKKyN+ICJPbSBkZXQgw6RyIGZsZXJhIHBvc3RlciBpIEI8ZGlyPi1maWxlbiBzb20gcGFzc2FyLCBrb21tZXIgYmFyYSBkZSBpIGRlbiAiCisjfiAiZsO2cnN0YSB0csOkZmZhbmRlIGludGlsbGlnZ2FuZGUgZ3J1cHBlbiBhdHQgdGFzIGJvcnQgb2NoIGRlIGFuZHJhIHR5c3QgYXR0ICIKKyN+ICJpZ25vcmVyYXMuIgorCisjfiBtc2dpZCAiIgorI34gIkl0IGlzIG5vdCBhbiBlcnJvciBmb3Igbm8gc3VpdGFibGUgZW50cnkgdG8gYmUgZm91bmQsIHRob3VnaCBCPGluc3RhbGwtIgorI34gImluZm8+IHdpbGwgaXNzdWUgYSB3YXJuaW5nIHVubGVzcyB0aGUgQjwtLXF1aWV0PiBvcHRpb24gd2FzIHNwZWNpZmllZC4iCisjfiBtc2dzdHIgIiIKKyN+ICJEZXQgw6RyIGludGUgZXR0IGZlbCBvbSBkZXQgaW50ZSBmaW5ucyBuw6Vnb24gbW90c3ZhcmFuZGUgcG9zdCwgw6R2ZW4gb20gIgorI34gIkI8aW5zdGFsbC1pbmZvPiBrb21tZXIgdmFybmEgb20gaW50ZSBmbGFnZ2FuIEI8LS1xdWlldD4gYW5nYXZzLiIKKworI34gbXNnaWQgIiIKKyN+ICJXaGVuIEI8LS1yZW1vdmU+IGlzIHNwZWNpZmllZCB0aGUgQjwtLW1heHdpZHRoPiwgQjwtLWFsaWduPiBhbmQgQjwtLSIKKyN+ICJjYWxpZ24+IGZvcm1hdHRpbmcgb3B0aW9ucyBhcmUgc2lsZW50bHkgaWdub3JlZC4iCisjfiBtc2dzdHIgIiIKKyN+ICJOw6RyIEI8LS1yZW1vdmU+IGFuZ2VzIGtvbW1lciBmb3JtYXRlcmluZ3NmbGFnZ29ybmEgQjwtLW1heHdpZHRoPiwgQjwtLSIKKyN+ICJhbGlnbj4gb2NoIEI8LS1jYWxpZ24+IGF0dCB0eXN0IGlnbm9yZXJhcy4iCisKKyN+IG1zZ2lkICJCPC0tcmVtb3ZlLWV4YWN0bHk+IgorI34gbXNnc3RyICJCPC0tcmVtb3ZlLWV4YWN0bHk+IgorCisjfiBtc2dpZCAiIgorI34gIlRoaXMgb3B0aW9uIGlzIGVzc2VudGlhbGx5IHRoZSBzYW1lIGFzIEI8LS1yZW1vdmU+IGV4Y2VwdCB0aGF0ICIKKyN+ICJJPGZpbGVuYW1lPiBpcyB0YWtlbiBhcyB0aGUgZXhhY3QgZW50cnkgdG8gYmUgcmVtb3ZlZCwgcmF0aGVyIHRoYW4gYXMgdGhlICIKKyN+ICJuYW1lIG9mIGFuIGV4aXN0aW5nIGZpbGUuIFRoaXMgY2FuIGJlIGltcG9ydGFudCB3aGVuIHRyeWluZyB0byByZW1vdmUgIgorI34gImVudHJpZXMgdGhhdCByZWZlciB0byBpbmZvIGZpbGVzIGluIHN1YmRpcmVjdG9yaWVzIChlLmcuIFwiZW1hY3MtMjAvZW1hY3MiCisjfiAiXCIpIGJlY2F1c2UgQjwtLXJlbW92ZT4gd2lsbCBvcGVyYXRlIG9uIHRoZSBiYXNlbmFtZSBvZiB0aGUgZ2l2ZW4gIgorI34gIkk8ZmlsZW5hbWU+IHJhdGhlciB0aGFuIHRoZSBleGFjdCBuYW1lIGdpdmVuLiAoaS5lLiAgQjwtLXJlbW92ZT4gIgorI34gIlwiZW1hY3MtMjAvZW1hY3NcIiB3b3VsZCBjYXVzZSBCPGluc3RhbGwtaW5mbz4gdG8gbG9vayBmb3IgXCJlbWFjc1wiLCBub3QgIgorI34gIlwiZW1hY3MtMjAvZW1hY3NcIikuIgorI34gbXNnc3RyICIiCisjfiAiRGVuIGjDpHIgZmxhZ2dhbiDDpHIgaSBzdG9ydCBzZXR0IHNhbW1hIHNvbSBCPC0tcmVtb3ZlPiwgZsO2cnV0b20gYXR0ICIKKyN+ICJJPGZpbG5hbW4+IHRhcyBzb20gZGVuIGV4YWt0YSBwb3N0ZW4gc29tIHNrYWxsIHRhcyBib3J0LCBzbmFyYXJlIMOkbiAiCisjfiAibmFtbmV0IHDDpSBlbiBiZWZpbnRsaWcgZmlsLiBEZXQga2FuIHZhcmEgdmlrdGlndCBuw6RyIG1hbiBmw7Zyc8O2a2VyIHRhIGJvcnQgIgorI34gInBvc3RlciBzb20gbW90c3ZhcmFyIGluZm8tZmlsZXIgaSB1bmRlcmthdGFsb2dlciAodC5leCBcImVtYWNzLTIwL2VtYWNzIgorI34gIlwiKSBlZnRlcnNvbSBCPC0tcmVtb3ZlPiBrb21tZXIgYW52w6RuZGEgYmFzbmFtbmV0IHDDpSBkZXQgZ2l2bmEgIgorI34gIkk8ZmlsbmFtbmV0PiBpIHN0w6RsbGV0IGbDtnIgZGV0IGV4YWt0YSBuYW1uIHNvbSBnZXMgKGR2cy4gQjwtLXJlbW92ZT4gIgorI34gIlwiZW1hY3MtMjAvZW1hY3NcIiBnw7ZyIGF0dCBCPGluc3RhbGwtaW5mbz4gbGV0YXIgZWZ0ZXIgXCJlbWFjc1wiLCBpbnRlICIKKyN+ICJcImVtYWNzLTIwL2VtYWNzXCIpLiIKKworI34gbXNnaWQgIkI8LS1zZWN0aW9uID5JPHJlZ2V4cCB0aXRsZT4iCisjfiBtc2dzdHIgIkI8LS1zZWN0aW9uID5JPHJlZ3VsasOkcnQtdXR0cnljayB0aXRlbD4iCisKKyN+IG1zZ2lkICIiCisjfiAiU3BlY2lmaWVzIHRoYXQgaWYgYSBuZXcgZW50cnkgaXMgdG8gYmUgbWFkZSwgaXQgc2hvdWxkIGJlIHBsYWNlZCBpbiBhICIKKyN+ICJzZWN0aW9uIG9mIHRoZSBCPGRpcj4gZmlsZSB3aG9zZSB0aXRsZSBtYXRjaGVzIEk8cmVnZXhwPi4gIElmIG5vIHN1Y2ggIgorI34gInNlY3Rpb24gZXhpc3RzLCBvbmUgd2lsbCBiZSBjcmVhdGVkIGFzIHRoZSBzZWNvbmQgdG8gbGFzdCBzZWN0aW9uIGluIHRoZSAiCisjfiAiZmlsZSAoc2VlIGJlbG93KSB3aXRoIHRpdGxlIEk8dGl0bGU+LiAgQSBzZWN0aW9uIGlzIGEgcGFydCBvZiB0aGUgQjxkaXI+ICIKKyN+ICJtZW51IGRlbGltaXRlZCBieSBibGFuayBsaW5lczsgdGhlIGZpcnN0IGxpbmUgaXMgYXNzdW1lZCB0byBiZSB0aGUgdGl0bGUuIgorI34gbXNnc3RyICIiCisjfiAiQW5nZXIgYXR0IG9tIGVuIG55IHBvc3Qgc2thbGwgc2thcGFzLCBzw6Ugc2thbGwgZGVuIHBsYWNlcmFzIGkgZW4gc2VrdGlvbiAiCisjfiAiaSBCPGRpcj4tZmlsZW4gdmFycyB0aXRlbCBtb3RzdmFyYXIgSTxyZWd1bGrDpHJ0LXV0dHJ5Y2s+LiBPbSBkZXQgaW50ZSAiCisjfiAiZmlubnMgbsOlZ29uIHPDpWRhbiBzZWt0aW9uIGtvbW1lciBlbiBza2FwYXMgc29tIGRlbiBuw6RzdGEgc2lzdGEgc2VrdGlvbmVuICIKKyN+ICJpIGZpbGVuIChzZSBuZWRhbikgbWVkIHRpdGVsbiBJPHRpdGVsPi4gRW4gc2VrdGlvbiDDpHIgZW4gZGVsIGF2IEI8ZGlyPi0iCisjfiAiZmlsZW4gYXZkZWxhZCBhdiB0b21tYSByYWRlci4gRGVuIGbDtnJzdGEgcmFkZW4gYW50YXMgdmFyYSB0aXRlbG4uIgorCisjfiBtc2dpZCAiIgorI34gIklmIGEgbmV3IGVudHJ5IGlzIHRvIGJlIGNyZWF0ZWQsIEI8aW5zdGFsbC1pbmZvPiB3aWxsIGF0dGVtcHQgdG8gaW5zZXJ0ICIKKyN+ICJpdCB3aXRoaW4gdGhlIHNlY3Rpb24gaW4gYWxwaGFiZXRpYyBvcmRlci4gSWYgdGhlIGVudHJpZXMgaW4gdGhlIHNlY3Rpb24gIgorI34gImFyZW4ndCBhbHJlYWR5IHNvcnRlZCwgdGhlIG5ldyBsb2NhdGlvbiB3aXRoaW4gdGhlIHNlY3Rpb24gd2lsbCBiZSAiCisjfiAidW5wcmVkaWN0YWJsZS4gVGhlIG9yZGVyIG9mIGV4aXN0aW5nIGVudHJpZXMgd2lsbCBub3QgYmUgY2hhbmdlZC4iCisjfiBtc2dzdHIgIiIKKyN+ICJPbSBlbiBueSBwb3N0IHNrYWxsIHNrYXBhcyBrb21tZXIgQjxpbnN0YWxsLWluZm8+IGF0dCBmw7Zyc8O2a2EgYXR0IGzDpGdnYSAiCisjfiAiaW4gZGVuIGkgc2VrdGlvbmVuIGkgYm9rc3RhdnNvcmRuaW5nLiBPbSBwb3N0ZXJuYSBpIHNla3Rpb25lbiBpbnRlIHJlZGFuICIKKyN+ICLDpHIgaSBib2tzdGF2c29yZG5pbmcgZ8OlciBkZXQgaW50ZSBhdHQgZsO2cnV0c2UgdmFyIGRlbiBrb21tZXIgYXR0IGhhbW5hLiAiCisjfiAiT3JkbmluZ2VuIHDDpSBiZWZpbnRsaWdhIHBvc3RlciBrb21tZXIgaW50ZSBhdHQgw6RuZHJhcy4iCisKKyN+IG1zZ2lkICIiCisjfiAiSWYgdGhlIEI8LS1zZWN0aW9uPiBvcHRpb24gaXMgbm90IHNwZWNpZmllZCwgQjxpbnN0YWxsLWluZm8+IHdpbGwgbG9vayAiCisjfiAiZm9yIGEgdGl0bGUgaW4gdGhlIEluZm8gZmlsZSBpdHNlbGYgYnkgbG9va2luZyBmb3IgYW4gZW50cnkgb2YgdGhlIGZvcm0iCisjfiBtc2dzdHIgIiIKKyN+ICJPbSBmbGFnZ2FuIEI8LS1zZWN0aW9uPiBpbnRlIGFuZ2VzIGtvbW1lciBCPGluc3RhbGwtaW5mbz4gYXR0IGxldGEgZWZ0ZXIgIgorI34gImVuIHRpdGVsIGkgc2rDpGx2YSBJbmZvLWZpbGVuIGdlbm9tIGF0dCBsZXRhIGVmdGVyIGVuIHBvc3QgcMOlIGZvcm1lbiIKKworI34gbXNnaWQgIkI8SU5GTy1ESVItU0VDVElPTj5JPCB0aXRsZT4iCisjfiBtc2dzdHIgIkI8SU5GTy1ESVItU0VDVElPTj5JPCB0aXRlbD4iCisKKyN+IG1zZ2lkICIiCisjfiAiSWYgbm8gc2VjdGlvbiB0aXRsZSBpcyBmb3VuZCwgdGhlIGRlZmF1bHQgaXMgdG8gYXBwZW5kIG5ldyBlbnRyaWVzIHRvIHRoZSAiCisjfiAiZW5kIG9mIHRoZSBmaWxlLiBUaGUgbGFzdCBzZWN0aW9uIChldmVuIGlmIGl0IG9ubHkgY29uc2lzdHMgb2YgdGhlIHRpdGxlICIKKyN+ICJsaW5lKSBzaG91bGQgYWx3YXlzIGV4aXN0IHRvIGVuc3VyZSB0aGF0IG5ldyBzZWN0aW9ucyBhcmUgY3JlYXRlZCBpbiB0aGUgIgorI34gInJpZ2h0IHBsYWNlLiBUaGUgZmluYWwgc2VjdGlvbiBzaG91bGQgYmUgdGl0bGVkIHRvIHJlZmxlY3QgdGhlIGZhY3QgdGhhdCAiCisjfiAiSW5mbyBmaWxlcyB3aXRoIG5vIGJldHRlciBzcGVjaWZpZWQgbG9jYXRpb24gYXJlIGFwcGVuZGVkIHRvIGl0LiIKKyN+IG1zZ3N0ciAiIgorI34gIk9tIGluZ2VuIHRpdGVsIGhpdHRhcyDDpHIgZGVuIGbDtnJ2YWxkYSBmdW5rdGlvbmVuIGF0dCBsw6RnZ2EgdGlsbCBueWEgIgorI34gInBvc3RlciBpIHNsdXRldCBhdiBmaWxlbi4gRGVuIHNpc3RhIHNla3Rpb25lbiAow6R2ZW4gb20gZGVuIGJhcmEgYmVzdMOlciBhdiAiCisjfiAidGl0ZWxyYWRlbikgc2thbGwgYWxsdGlkIGZpbm5hcyBmw7ZyIGF0dCBzZSB0aWxsIGF0dCBueWEgc2VrdGlvbmVyIHNrYXBhcyAiCisjfiAicMOlIHLDpHR0IHBsYXRzLiBEZW4gc2lzdGEgc2VrdGlvbmVuIGtvbW1lciBhdHQgZsOlIGVuIHRpdGVsIHNvbSBiZXNrcml2ZXIgIgorI34gImRldCBmYWt0dW0gYXR0IEluZm8tZmlsZXIgc29tIGludGUgaGFyIG7DpWdvbiBiw6R0dHJlIHBsYWNlcmluZyBhbmdpdmVuICIKKyN+ICJsw6RnZ3MgaW4gZMOkci4iCisKKyN+IG1zZ2lkICIiCisjfiAiSWYgdGhlcmUgaXMgYWxyZWFkeSBhbiBlbnRyeSBmb3IgdGhlIEluZm8gZmlsZSBiZWluZyBpbnN0YWxsZWQsIGl0IGlzICIKKyN+ICJyZXBsYWNlZCBpbiBzaXR1IHdpdGggdGhlIG5ldyBlbnRyeS4iCisjfiBtc2dzdHIgIiIKKyN+ICJPbSBkZXQgcmVkYW4gZmlubnMgZW4gcG9zdCBmw7ZyIEluZm8tZmlsZW4gc29tIGluc3RhbGxlcmFzIGtvbW1lciBkZW4gbnlhICIKKyN+ICJwb3N0ZW4gYXR0IGVyc8OkdHRhIGRlbiBww6Ugc2FtbWEgcGxhdHMuIgorCisjfiBtc2dpZCAiIgorI34gIklmIGEgc2VjdGlvbiBpcyBzcGVjaWZpZWQgd2hlbiByZW1vdmluZyBhbiBlbnRyeSwgdGhlIHNlY3Rpb24gaXMgaWdub3JlZCAiCisjfiAiYW5kIGEgd2FybmluZyBpcyBpc3N1ZWQuIgorI34gbXNnc3RyICIiCisjfiAiT20gZW4gc2VrdGlvbiBhbmdlcyBuw6RyIGR1IHRhciBib3J0IGVuIHBvc3Qga29tbWVyIHNla3Rpb25lbiBhdHQgIgorI34gImlnbm9yZXJhcyBvY2ggZW4gdmFybmluZyBhdHQgZ2VzLiIKKworI34gbXNnaWQgIiIKKyN+ICJJZiBhIHNlY3Rpb24gaXMgcmVxdWVzdGVkIHdoZW4gYWRkaW5nIGFuIGVudHJ5LCBidXQgdGhlIGZpbGUgY29udGFpbnMgbm8gIgorI34gInNlY3Rpb24gaGVhZGluZ3MgYXQgYWxsLCB0aGVuIEI8aW5zdGFsbC1pbmZvPiB3aWxsIGNyZWF0ZSBib3RoIHRoZSAiCisjfiAicmVxdWVzdGVkIHNlY3Rpb24gYW5kIGEgTWlzY2VsbGFuZW91cyBzZWN0aW9uIGF0IHRoZSBlbmQgb2YgdGhlIGZpbGUuIgorI34gbXNnc3RyICIiCisjfiAiT20gZW4gc2VrdGlvbiBhbmdlcyBuw6RyIGR1IGzDpGdnZXIgdGlsbCBlbiBwb3N0LCBtZW4gZmlsZW4gaW50ZSBpbm5laMOlbGxlciAiCisjfiAibsOlZ3JhIHNla3Rpb25zcnVicmlrZXIgw7Z2ZXIgaHV2dWQgdGFnZXQsIHPDpSBrb21tZXIgQjxpbnN0YWxsLWluZm8+IGF0dCAiCisjfiAic2thcGEgYsOlZGUgZGVuIMO2bnNrYWRlIHNla3Rpb25lbiBvY2ggZW4gYmxhbmRhdC1zZWt0aW9uIGkgc2x1dGV0IGF2IGZpbGVuLiIKKworI34gbXNnaWQgIkI8LS1pbmZvZGlyPT5JPGluZm9kaXI+IgorI34gbXNnc3RyICJCPC0taW5mb2Rpcj0+STxpbmZva2F0YWxvZz4iCisKKyN+IG1zZ2lkICIiCisjfiAiU3BlY2lmaWVzIHRoYXQgdGhlIEI8ZGlyPiBmaWxlIGlzLCBhbmQgdGhlIGluc3RhbGxlZCBjb3B5IG9mIHRoZSBuZXcgSW5mbyAiCisjfiAiZmlsZSB3YXMsIGlzIG9yIHdpbGwgYmUgbG9jYXRlZCBpbiBJPGluZm9kaXI+LiAgVGhlIGRlZmF1bHQgaXMgQjwvdXNyLyIKKyN+ICJzaGFyZS9pbmZvLz4uIgorI34gbXNnc3RyICIiCisjfiAiQW5nZXIgYXR0IEI8ZGlyPi1maWxlbiDDpHIsIG9jaCBhdHQgZGVuIGluc3RhbGxlcmFkZSBrb3BpYW4gYXYgZGVuIG55YSAiCisjfiAiSW5mby1maWxlbiB2YXIsIMOkciBlbGxlciBrb21tZXIgYXR0IHBsYWNlcmFzIGkgSTxpbmZvZGlyPi4gU3RhbmRhcmQgw6RyIEI8LyIKKyN+ICJ1c3Ivc2hhcmUvaW5mby8+LiIKKworI34gbXNnaWQgIkI8LS1hbGlnbj0+STxubm4+QjwgW2RlcHJlY2F0ZWRdPiIKKyN+IG1zZ3N0ciAiQjwtLWFsaWduPT5JPG5ubj5CPCBbZ2FtbWFsdF0+IgorCisjfiBtc2dpZCAiIgorI34gIlNwZWNpZmllcyB0aGF0IHRoZSBmaXJzdCBsaW5lIG9mIHRoZSBkZXNjcmlwdGlvbiBzaG91bGQgYmUgaW5kZW50ZWQgYXQgIgorI34gImxlYXN0IEk8bm5uPiBjaGFyYWN0ZXJzOyBleHRyYSBzcGFjZXMgd2lsbCBiZSBhZGRlZCBhcyByZXF1aXJlZC4gSWYgIgorI34gIm5lY2Vzc2FyeSBiZWNhdXNlIG9mIHRoZSBsZW5ndGggb2YgdGhlIEI8ZGlyPiBtZW51IGVudHJ5IGRldGFpbHMsIGl0IG1heSAiCisjfiAiYmUgb2Zmc2V0IG1vcmUuIFRoZSBkZWZhdWx0IGlzIDI3LiIKKyN+IG1zZ3N0ciAiIgorI34gIkFuZ2VyIGF0dCBkZW4gZsO2cnN0YSByYWRlbiBpIGJlc2tyaXZuaW5nZW4gc2thbGwgZsOlIGV0dCBpbmRyYWcgcMOlIEk8bm5uPiAiCisjfiAidGVja2VuLiBOeWEgYmxhbmtzdGVnIGzDpGdncyB0aWxsIG9tIHPDpSBiZWjDtnZzLiBPbSBkZXQgYmVow7Z2cyBww6UgZ3J1bmQgYXYgIgorI34gImzDpG5nZGVuIHDDpSBkZXRhbGplciBpIEI8ZGlyPi1tZW55cG9zdGVuIGthbiBkZW4gZsOlIGV0dCBzdMO2cnJlIGluZHJhZy4gIgorI34gIlN0YW5kYXJkdsOkcmRlIMOkciAyNy4iCisKKyN+IG1zZ2lkICJCPC0tY2FsaWduPT5JPG5ubj5CPCBbZGVwcmVjYXRlZF0+IgorI34gbXNnc3RyICJCPC0tY2FsaWduPT5JPG5ubj5CPCBbZ2FtbWFsdF0+IgorCisjfiBtc2dpZCAiIgorI34gIlNwZWNpZmllcyB0aGF0IHRoZSBzZWNvbmQgYW5kIHN1YnNlcXVlbnQgbGluZXMgb2YgdGhlIGRlc2NyaXB0aW9uIHNob3VsZCAiCisjfiAiYmUgaW5kZW50ZWQgYXQgbGVhc3QgSTxubm4+IGNoYXJhY3RlcnMuIFRoZSBkZWZhdWx0IGlzIDI5LiIKKyN+IG1zZ3N0ciAiIgorI34gIkFuZ2VyIGF0dCBkZW4gYW5kcmEgb2NoIGbDtmxqYW5kZSByYWRlciBpIGJlc2tyaXZuaW5nZW4gc2thbGwgZsOlIGV0dCAiCisjfiAiaW5kcmFnIHDDpSDDpXRtaW5zdG9uZSBJPG5ubj4gdGVja2VuLiBTdGFuZGFyZHbDpHJkZSDDpHIgMjkuIgorCisjfiBtc2dpZCAiQjwtLW1heHdpZHRoPT5JPG5ubj5CPCBbZGVwcmVjYXRlZF0+IgorI34gbXNnc3RyICJCPC0tbWF4d2lkdGg9Pkk8bm5uPkI8IFtnYW1tYWx0XT4iCisKKyN+IG1zZ2lkICIiCisjfiAiU3BlY2lmaWVzIHRoYXQgdGhlIG1heGltdW0gd2lkdGggZm9yIHRoZSBJbmZvIGZpbGUgaXMgSTxubm4+LiAgVGhpcyBpcyAiCisjfiAidXNlZCB3aGVuIHdvcmQtd3JhcHBpbmcgdGhlIGRlc2NyaXB0aXZlIHRleHQuICBUaGUgZGVmYXVsdCBpcyA3OS4iCisjfiBtc2dzdHIgIiIKKyN+ICJBbmdlciBhdHQgbWF4YnJlZGQgZsO2ciBJbmZvLWZpbGVuIMOkciBJPG5ubj4uIEFudsOkbmRzIGbDtnIgYXR0IG9yZGJyeXRhICIKKyN+ICJiZXNrcml2bmluZ2VuLiBTdGFuZGFyZHbDpHJkZSDDpHIgNzkuIgorCisjfiBtc2dpZCAiIgorI34gIlByZXZlbnRzIHRoZSB1c3VhbCBkaXNwbGF5IG9mIHRoZSBuZXcgbWVudSBlbnRyeSBqdXN0IGJlZm9yZSBpdCBpcyAiCisjfiAiaW5zZXJ0ZWQgYW5kIG9mIHRoZSBtZXNzYWdlcyBhbm5vdW5jaW5nIHRoZSByZXBsYWNlbWVudCBhbmQgcmVtb3ZhbCBvZiAiCisjfiAiZXhpc3RpbmcgZW50cmllcyBhbmQgdGhlIGNyZWF0aW9uIGFuZCBkZWxldGlvbiBvZiBzZWN0aW9ucy4iCisjfiBtc2dzdHIgIiIKKyN+ICJGw7ZyaGluZHJhciBkZW4gdmFubGlnYSB2aXNuaW5nZW4gYXYgZGVuIG55YSBtZW55cG9zdGVuIHByZWNpcyBpbm5hbiBkZW4gIgorI34gInPDpHR0cyBpbiBvY2ggYXYgbWVkZGVsYW5kZW4gc29tIGJlc2tyaXZlciBlcnPDpHR0bmluZyBlbGxlciBib3J0dGFnbmluZyBhdiAiCisjfiAiYmVmaW50bGlnYSBwb3N0ZXIgb2NoIHNrYXBhbmRlIG9jaCBib3J0dGFnbmluZyBhdiBzZWt0aW9uZXIuIgorCisjfiBtc2dpZCAiQ2F1c2VzIEI8aW5zdGFsbC1pbmZvPiB0byBkaXNwbGF5IGl0cyB1c2FnZSBpbmZvcm1hdGlvbiBhbmQgZXhpdC4iCisjfiBtc2dzdHIgIkbDpXIgQjxpbnN0YWxsLWluZm8+IGF0dCB2aXNhIHNpbiBoasOkbHBza8Okcm0gb2NoIGF2c2x1dGEuIgorCisjfiBtc2dpZCAiIgorI34gIkNhdXNlcyBCPGluc3RhbGwtaW5mbz4gdG8gZGlzcGxheSBpdHMgdmVyc2lvbiBhbmQgY29weXJpZ2h0IGluZm9ybWF0aW9uICIKKyN+ICJhbmQgZXhpdC4iCisjfiBtc2dzdHIgIiIKKyN+ICJHw7ZyIHPDpSBhdHQgQjxpbnN0YWxsLWluZm8+IHZpc2FyIGluZm9ybWF0aW9uIG9tIHZlcnNpb24gb2NoIHVwcGhvdnNyw6R0dCAiCisjfiAib2NoIGF2c2x1dGFyIHNlZGFuLiIKKworI34gbXNnaWQgIiIKKyN+ICJTcGVjaWZpZXMgdGhhdCB0aGUgZGVzY3JpcHRpb24gdG8gdXNlIGFmdGVyIHRoZSBtZW51IGVudHJ5IGluIG5ldyBvciAiCisjfiAidXBkYXRlZCBlbnRyaWVzIGJlIEk8eHh4Pi4gIFRoZSBkZWZhdWx0IGlzIHRvIHVzZSB0aGUgdGhlIHZhbHVlIHNwZWNpZmllZCAiCisjfiAiaW4gdGhlIEluZm8gZmlsZSBpdHNlbGY7IHRoaXMgaXMgZm91bmQgYnkgc2VhcmNoaW5nIGZvciBhIHNlY3Rpb24gb2YgdGhlICIKKyN+ICJmb3JtIgorI34gbXNnc3RyICIiCisjfiAiQW5nZXIgYXR0IGRlbiBiZXNrcml2bmluZyBzb20gc2thbGwgYW52w6RuZGFzIGVmdGVyIG1lbnlwb3N0ZW4gaSBkZSBueWEgIgorI34gImVsbGVyIHVwcGRhdGVyYWRlIHBvc3Rlcm5hIHNrYWxsIHZhcmEgSTx4eHg+LiBTb20gc3RhbmRhcmQgw6RyIGRlbiB2w6RyZGV0ICIKKyN+ICJzb20gYW5nZXMgaSBzasOkbHZhIEluZm8tZmlsZW4uIERlbiBoaXR0YXMgZ2Vub20gYXR0IGxldGEgZWZ0ZXIgZW4gcG9zdCBww6UgIgorI34gImZvcm1lbiIKKworI34gbXNnaWQgIkI8U1RBUlQtSU5GTy1ESVItRU5UUlk+IgorI34gbXNnc3RyICJCPFNUQVJULUlORk8tRElSLUVOVFJZPiIKKworI34gbXNnaWQgIkI8KiBBdXRvLVBHUDogKGF1dG8tcGdwKS4gUEdQIHVuZGVyIEdOVSBFbWFjcy4+IgorI34gbXNnc3RyICJCPCogQXV0by1QR1A6IChhdXRvLXBncCkuIFBHUCB1bmRlciBHTlUgRW1hY3MuPiIKKworI34gbXNnaWQgIkI8RU5ELUlORk8tRElSLUVOVFJZPiIKKyN+IG1zZ3N0ciAiQjxFTkQtSU5GTy1ESVItRU5UUlk+IgorCisjfiBtc2dpZCAiIgorI34gIklmIHRoZSBlbnRyeSBmb3VuZCBpbiB0aGUgSW5mbyBmaWxlIGl0c2VsZiBleHRlbmRzIGFjcm9zcyBzZXZlcmFsIGxpbmVzLCAiCisjfiAiZWFjaCBnaXZpbmcgYSBtZW51IGVudHJ5LCB0aGUgdGV4dCBmb3VuZCBpbiB0aGUgZmlsZSBpcyB1c2VkIHZlcmJhdGltLiBJbiAiCisjfiAidGhpcyBjYXNlLCB0aGUgYWxwaGFiZXRpYyBvcmRlcmluZyBzY2hlbWUgaXMgdHVybmVkIG9mZiwgYW5kIHRoZSBlbnRyaWVzICIKKyN+ICJhcmUgaW5zZXJ0ZWQgYXQgdGhlIHRvcCBvZiBzZWN0aW9uIGluIHF1ZXN0aW9uLiBJbiB0aGlzIGNhc2UsIHRoZSBCPC0tIgorI34gIm1lbnVlbnRyeT4sIEI8LS1tYXh3aWR0aD4sIEI8LS1hbGlnbj4sIEI8LS1jYWxpZ24+IGFuZCBCPC0tbWVudWVudHJ5PiAiCisjfiAib3B0aW9ucyBhcmUgaWdub3JlZC4iCisjfiBtc2dzdHIgIiIKKyN+ICJPbSBwb3N0ZW4gc29tIGZpbm5zIGkgc2rDpGx2YSBJbmZvLWZpbGVuIHNww6RubmVyIMO2dmVyIGZsZXJhIHJhZGVyLCBkw6RyICIKKyN+ICJ2YXJqZSByYWQgYW5nZXIgZW4gbWVueXBvc3QsIGtvbW1lciB0ZXh0ZW4gaSBmaWxlbiBhdHQgYW52w6RuZGFzICIKKyN+ICJvcmRhZ3JhbnQuIEkgZGV0dGEgZmFsbCBzdMOkbmdzIGJva3N0YXZzc29ydGVyaW5nZW4gYXYsIG9jaCBwb3N0ZXJuYSBsw6RnZ3MgIgorI34gImluIMO2dmVyc3QgaSBkZW4gw7Zuc2thZGUgc2VrdGlvbmVuLiBJIGRldHRhIGZhbGwgaWdub3JlcmFzIGZsYWdnb3JuYSBCPC0tIgorI34gIm1lbnVlbnRyeT4sIEI8LS1tYXh3aWR0aD4sIEI8LS1hbGlnbj4sIEI8LS1jYWxpZ24+IG9jaCBCPC0tbWVudWVudHJ5PiAiCisKKyN+IG1zZ2lkICIiCisjfiAiSWYgdGhlcmUgaXMgbm8gQjxkaXI+IGVudHJ5IGluIHRoZSBmaWxlLCB0aGUgcHJvZ3JhbSB3aWxsIHRyeSB0byBmaW5kIGEgIgorI34gInBhcmFncmFwaCBlYXJseSBpbiB0aGUgZmlsZSBzdGFydGluZyBCPHRoaXMgZmlsZSBkb2N1bWVudHM+LiAgSXQgd2lsbCAiCisjfiAiY2FwaXRhbGlzZSB0aGUgZmlyc3QgY2hhcmFjdGVyIG9mIHRoZSByZW1haW5kZXIsIGFuZCB1c2UgdGhhdC4iCisjfiBtc2dzdHIgIiIKKyN+ICJPbSBkZXQgaW50ZSBmaW5ucyBuw6Vnb24gQjxkaXI+LXBvc3QgaSBmaWxlbiBrb21tZXIgcHJvZ3JhbW1ldCBhdHQgZsO2cnPDtmthICIKKyN+ICJoaXR0YSBldHQgc3R5Y2tlIHRpZGlndCBpIGZpbGVuIHNvbSBiw7ZyamFyIG1lZCBCPHRoaXMgZmlsZSBkb2N1bWVudHM+LiAiCisjfiAiRGVuIGtvbW1lciBhdHQgZ8O2cmEgZGVuIGbDtnJzdGEgYm9rc3RhdmVuIGkgcmVzdGVuIGF2IHRleHRlbiBzdG9yIG9jaCAiCisjfiAiYW52w6RuZGEgZGV0LiIKKworI34gbXNnaWQgIkl0IGlzIGFuIGVycm9yIGZvciBub25lIG9mIHRoZXNlIG1ldGhvZHMgdG8geWllbGQgYSBkZXNjcmlwdGlvbi4iCisjfiBtc2dzdHIgIiIKKyN+ICJEZXQgaW5uZWLDpHIgZXR0IGZlbCBvbSBpbmdlbiBhdiBkZXNzYSBtZXRvZGVyIGhpdHRhciBlbiBiZXNrcml2bmluZy4iCisKKyN+IG1zZ2lkICIiCisjfiAiSWYgYSBkZXNjcmlwdGlvbiBhcmd1bWVudCBpcyBnaXZlbiB3aGVuIEI8LS1yZW1vdmU+IGlzIHNwZWNpZmllZCwgaXQgaXMgIgorI34gImlnbm9yZWQgYW5kIGEgd2FybmluZyBpcyBpc3N1ZWQuIgorI34gbXNnc3RyICIiCisjfiAiT20gZXR0IGJlc2tyaXZuaW5nc2FyZ3VtZW50IGdlcyBuw6RyIEI8LS1yZW1vdmU+IGFuZ2VzIGtvbW1lciBkZXQgYXR0ICIKKyN+ICJpZ25vcmVyYXMgb2NoIGVuIHZhcm5pbmcgdmlzYXMuIgorCisjfiBtc2dpZCAiQjwtLW1lbnVlbnRyeT0+STx4eHg+IgorI34gbXNnc3RyICJCPC0tbWVudWVudHJ5PT5JPHh4eD4iCisKKyN+IG1zZ2lkICIiCisjfiAiU3BlY2lmaWVzIHRoYXQgdGhlIGVudHJ5IGluIHRoZSBtZW51IHNob3VsZCBiZSBJPHh4eD4uICBUaGUgZGVmYXVsdCBpcyB0byAiCisjfiAidXNlIHRoZSB0aGUgdmFsdWUgc3BlY2lmaWVkIGluIHRoZSBJbmZvIGZpbGUgaXRzZWxmLiAgSWYgdGhpcyBpcyBub3QgIgorI34gInByZXNlbnQsIHRoZSBiYXNlbmFtZSBvZiB0aGUgSW5mbyBmaWxlIGlzIHVzZWQgKGFueSBCPC5pbmZvID5pcyBkZWxldGVkLCAiCisjfiAiYW5kIHRoZSBlbnRyeSBpcyBtYWRlIG1peGVkIGNhc2UpLiAgU2VlIGFib3ZlIGZvciBkZXRhaWxzIG9mIHRoZSBmb3JtYXQgIgorI34gImV4cGVjdGVkIGZvciB0aGUgbWVudSBlbnRyeSBpbiB0aGUgSW5mbyBmaWxlLiIKKyN+IG1zZ3N0ciAiIgorI34gIkFuZ2VyIGF0dCBwb3N0ZW4gaSBtZW55biBza2FsbCB2YXJhIEk8eHh4Pi4gU3RhbmRhcmQgw6RyIGF0dCBhbnbDpG5kYSAiCisjfiAidsOkcmRldCBzb20gZmlubnMgaSBzasOkbHZhIEluZm8tZmlsZW4uIE9tIGRldCBpbnRlIGZpbm5zIG7DpWdvbiBhbnbDpG5kcyAiCisjfiAiYmFzbmFtbmV0IHDDpSBJbmZvLWZpbGVuIChldmVudHVlbGx0IEI8LmluZm8+IHRhcyBib3J0IG9jaCBwb3N0ZW4gZ8O2cnMgb20gIgorI34gInRpbGwgYmxhbmRhdCBza2lmdGzDpGdlKS4gU2Ugb3ZhbiBmw7ZyIGRldGFsamVyIG9tIHZpbGtldCBmb3JtYXQgc29tICIKKyN+ICJmw7ZydsOkbnRhcyBww6UgbWVueXBvc3RlbiBpIEluZm8tZmlsZW4uIgorCisjfiBtc2dpZCAiIgorI34gIldoZW4gcmVtb3ZpbmcgZW50cmllcywgdGhlIHZhbHVlIG9mIHRoZSBCPC0tbWVudWVudHJ5PiBvcHRpb24gbXVzdCBtYXRjaCAiCisjfiAidGhlIGFjdHVhbCBtZW51IGVudHJ5IGZpZWxkIGluIHRoZSBtZW51IGl0ZW0gdG8gYmUgcmVtb3ZlZCAoY2FzZSBub3QgIgorI34gInNpZ25pZmljYW50KS4gSWYgQjwtLW1lbnVlbnRyeT4gaXMgb21pdHRlZCwgbm8gY2hlY2sgb24gdGhlIG1lbnUgZW50cnkgaXMgIgorI34gImRvbmUuIgorI34gbXNnc3RyICIiCisjfiAiTsOkciBwb3N0ZXIgdGFzIGJvcnQgbcOlc3RlIHbDpHJkZXQgcMOlIGZsYWdnYW4gQjwtLW1lbnVlbnRyeT4gc3TDpG1tYSDDtnZlcmVucyAiCisjfiAibWVkIGRlbiBmYWt0aXNrYSBtZW55cG9zdGVuIHNvbSBza2FsbCB0YXMgYm9ydCAoc2tpZnRsw6RnZSDDpHIgaW50ZSAiCisjfiAicmVsZXZhbnQpLiBPbSBCPC0tbWVudWVudHJ5PiB1dGVzbHV0cyBrb250cm9sbGVyYXMgaW50ZSBtZW55cG9zdGVuLiIKKworI34gbXNnaWQgIkI8LS1rZWVwLW9sZD4iCisjfiBtc2dzdHIgIkI8LS1rZWVwLW9sZD4iCisKKyN+IG1zZ2lkICIiCisjfiAiSW5oaWJpdHMgdGhlIHJlcGxhY2VtZW50IG9mIGV4aXN0aW5nIGVudHJpZXMgYW5kIHRoZSByZW1vdmFsIG9mIGVtcHR5ICIKKyN+ICJzZWN0aW9ucy4iCisjfiBtc2dzdHIgIiIKKyN+ICJGw7ZyaGluZHJhciBhdHQgYmVmaW50bGlnYSBwb3N0ZXIgZXJzw6R0dHMgb2NoIGF0dCB0b21tYSBzZWt0aW9uZXIgdGFzIGJvcnQuIgorCisjfiBtc2dpZCAiIgorI34gIklmIHRoZSBmaWxlIGJlaW5nIGluc3RhbGxlZCBhbHJlYWR5IGhhcyBhbiBlbnRyeSBpbiB0aGUgSW5mbyBCPGRpcj4gZmlsZSwgIgorI34gInRoZSBvbGQgZW50cnkgd2lsbCBiZSBsZWZ0IGFsb25lIGluc3RlYWQgb2YgYmVpbmcgcmVwbGFjZWQ7IHRoZSBkZWZhdWx0ICIKKyN+ICJpcyB0byBvdmVyd3JpdGUgYW55IG9sZCBlbnRyeSBmb3VuZCB3aXRoIHRoZSBuZXdseSBnZW5lcmF0ZWQgb25lLiIKKyN+IG1zZ3N0ciAiIgorI34gIk9tIGZpbGVuIHNvbSBpbnN0YWxsZXJhcyByZWRhbiBoYXIgZW4gcG9zdCBpIEluZm8tQjxkaXI+LWZpbGVuIGtvbW1lciBkZW4gIgorI34gImdhbWxhIHBvc3RlbiBhdHQgbMOkbW5hcyBrdmFyIGlzdMOkbGxldCBmw7ZyIGF0dCBlcnPDpHR0YXMuIFN0YW5kYXJkIMOkciBhdHQgIgorI34gInNrcml2YSDDtnZlciBlbiBnYW1tYWwgcG9zdCBtZWQgZGVuIG55YSBzb20gc2thcGFzLiIKKworI34gbXNnaWQgIiIKKyN+ICJJZiBCPC0tcmVtb3ZlPiBpcyBzcGVjaWZpZWQsIEI8LS1rZWVwLW9sZD4gd2lsbCBwcmV2ZW50IHRoZSByZW1vdmFsIG9mICIKKyN+ICJ0aGUgc2VjdGlvbiBoZWFkaW5nIHdoaWNoIHdvdWxkIG90aGVyd2lzZSBoYXBwZW4gaWYgdGhlIHNlY3Rpb24gaXMgbWFkZSAiCisjfiAiZW1wdHkgYnkgdGhlIHJlbW92YWwuIgorI34gbXNnc3RyICIiCisjfiAiT20gQjwtLXJlbW92ZT4gYW5nZXMga29tbWVyIEI8LS1rZWVwLW9sZD4gYXR0IGbDtnJoaW5kcmEgYXR0ICIKKyN+ICJzZWt0aW9uc3J1YnJpa2VuIHRhcyBib3J0LCB2aWxrZXQgYW5uYXJzIHNrdWxsZSBoYSBow6RudCBvbSBzZWt0aW9uZW4gYmxpciAiCisjfiAidG9tIHDDpSBncnVuZCBhdiBib3J0dGFnbmluZ2VuLiIKKworI34gbXNnaWQgIiIKKyN+ICJFbmFibGVzIHRlc3QgbW9kZSwgd2hpY2ggaW5oaWJpdHMgdGhlIHVwZGF0ZSBvZiB0aGUgSW5mbyBCPGRpcj4gZmlsZS4iCisjfiBtc2dzdHIgIiIKKyN+ICJBa3RpdmVyYXIgdGVzdGzDpGdlLCB2aWxrZXQgZsO2cmhpbmRyYXIgYXR0IEluZm8tQjxkaXI+LWZpbGVuIHVwcGRhdGVyYXMuIgorCisjfiBtc2dpZCAiIgorI34gIkVuYWJsZXMgZGVidWdnaW5nIG1vZGUsIGluIHdoaWNoIHRoZSByZXN1bHRzIG9mIHNvbWUgaW50ZXJuYWwgcHJvY2Vzc2luZyAiCisjfiAic3RlcHMgYXJlIHNob3duLiIKKyN+IG1zZ3N0ciAiIgorI34gIkFrdGl2ZXJhciBmZWxzw7ZrbmluZ3Nsw6RnZSwgdmlsa2V0IGfDtnIgYXR0IHJlc3VsdGF0ZXQgYXYgdmlzc2EgaW50ZXJuYSAiCisjfiAiYmVoYW5kbGluZ3NzdGVnIHZpc2FzLiIKKworI34gbXNnaWQgIkI8ZW1hY3M+KDEpLCBCPGluZm8+KDEpLCBCPGd6aXAoMSkuPiIKKyN+IG1zZ3N0ciAiQjxlbWFjcz4oMSksIEI8aW5mbz4oMSksIEI8Z3ppcCgxKS4+IgorCisjfiBtc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDE5OTQgSWFuIEphY2tzb24iCisjfiBtc2dzdHIgIlVwcGhvdnNyw6R0dHNza3lkZGF0IMKpIDE5OTQgSWFuIEphY2tzb24iCisKKyN+IG1zZ2lkICI4MjItZGF0ZSIKKyN+IG1zZ3N0ciAiODIyLWRhdGUiCisKKyN+IG1zZ2lkICIyMDA3LTAxLTI0IgorI34gbXNnc3RyICIyMDA3LTAxLTI0IgorCisjfiBtc2dpZCAiODIyLWRhdGUgLSBQcmludCBkYXRlIGFuZCB0aW1lIGluIFJGQzI4MjIgZm9ybWF0IgorI34gbXNnc3RyICI4MjItZGF0ZSAtIFNrcml2IGRhdHVtIG9jaCB0aWQgaSBSRkMyODIyLWZvcm1hdCIKKworI34gbXNnaWQgIkI8ODIyLWRhdGU+IgorI34gbXNnc3RyICJCPDgyMi1kYXRlPiIKKworI34gbXNnaWQgIiIKKyN+ICJCPDgyMi1kYXRlPiBkaXNwbGF5cyB0aGUgY3VycmVudCBkYXRlIGFuZCB0aW1lIGluIHRoZSBmb3JtYXQgZGVzY3JpYmVkIGluICIKKyN+ICJSRkMyODIyLiAgSXQgZG9lcyBzbyBieSBzaW1wbHkgY2FsbGluZyBCPGRhdGU+KDEpICB3aXRoIHRoZSBCPC1SPiBvcHRpb24uIgorI34gbXNnc3RyICIiCisjfiAiQjw4MjItZGF0ZT4gdmlzYXIgYWt0dWVsbHQgZGF0dW0gb2NoIHRpZCBpIGRldCBmb3JtYXQgc29tIGJlc2tyaXZzIGF2ICIKKyN+ICJSRkMyODIyLiBEZXQgZ8O2ciBkZW4gaGVsdCBlbmtlbHQgZ2Vub20gYXR0IGFucm9wYSBCPGRhdGU+KDEpIG1lZCBmbGFnZ2FuICIKKyN+ICJCPC1SPi4iCisKKyN+IG1zZ2lkICIiCisjfiAiQjxVc2luZyA4MjItZGF0ZSBpcyBkZXByZWNhdGVkIHNpbmNlPiBCPGRhdGU+KDEpICBwcm92aWRlcyB0aGUgc2FtZSAiCisjfiAiZnVuY3Rpb25hbGl0eSB3aGVuIGNhbGxlZCB3aXRoIHRoZSBCPC1SPi4iCisjfiBtc2dzdHIgIiIKKyN+ICJCPERldCByZWtvbW1lbmRlcmFzIGludGUgYXR0IGFudsOkbmRhIDgyMi1kYXRlIGVmdGVyc29tPiBCPGRhdGU+KDEpICIKKyN+ICJ0aWxsaGFuZGFow6VsbGVyIHNhbW1hIGZ1bmt0aW9uYWxpdGV0IG9tIGRldCBhbnJvcGFzIG1lZCBCPC1SPi4iCisKKyN+IG1zZ2lkICJCPDgyMi1kYXRlPiBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudHMgb3Igb3B0aW9ucy4iCisjfiBtc2dzdHIgIkI8ODIyLWRhdGU+IHRhciBpbmdhIGFyZ3VtZW50IGVsbGVyIGZsYWdnb3IuIgorCisjfiBtc2dpZCAiVGhpcyBmYWNpbGl0eSByZWFsbHkgb3VnaHQgdG8gYmUgcGFydCBvZiBCPGRhdGU+KDEpLiIKKyN+IG1zZ3N0ciAiRnVua3Rpb25lbiBib3JkZSBpbmfDpSBpIEI8ZGF0ZT4oMSkuIgorCisjfiBtc2dpZCAiSTxJbnRlcm5ldCBNZXNzYWdlIEZvcm1hdD4gKFJGQzI4MjIpLCBCPGRhdGU+KDEpLiIKKyN+IG1zZ3N0ciAiSTxJbnRlcm5ldCBNZXNzYWdlIEZvcm1hdD4gKFJGQzI4MjIpLCBCPGRhdGU+KDEpLiIKKworI34gbXNnaWQgIiIKKyN+ICJCPDgyMi1kYXRlPiBpcyBhIHJlYWxseSBzaW1wbGUgd3JhcHBlciBhcm91bmQgQjxkYXRlPigxKS4gIEJ5IGl0cyAiCisjfiAic2ltcGxpY2l0eSwgdGhlIGNvZGUgaXMgcHJvYmFibHkgbm90IGNvcHlyaWdodGFibGUgYW5kIHNob3VsZCBiZSAiCisjfiAiY29uc2lkZXJlZCB0byBiZSBpbiB0aGUgcHVibGljIGRvbWFpbi4gVGhpcyBtYW4gcGFnZSB3YXMgd3JpdHRlbiBieSBGcmFuayAiCisjfiAiTGljaHRlbmhlbGQgYmFzZWQgb24gYW4gZWFybGllciB2ZXJzaW9uIGJ5IElhbiBKYWNrc29uIGFuZCB3YXMgYWxzbyBwdXQgIgorI34gImluIHRoZSBwdWJsaWMgZG9tYWluLiIKKyN+IG1zZ3N0ciAiIgorI34gIkI8ODIyLWRhdGU+IMOkciBlZ2VudGxpZ2VuIGV0dCBlbmtlbHQgc2thbCBydW50IEI8ZGF0ZT4oMSkuIFDDpSBncnVuZCBhdiAiCisjfiAiZGVzcyBlbmtlbGhldCDDpHIga29kZW4gYW50YWdsaWdlbiBpbnRlIG3DtmpsaWcgYXR0IHVwcGhvdnNyw6R0dHNza3lkZGEgb2NoICIKKyN+ICJiw7ZyIGFuc2VzIHNvbSBhbGxtw6RuZ29kcy4gTWFudWFsc2lkYW4gc2tyZXZzIGF2IEZyYW5rIExpY2h0ZW5oZWxkIGJhc2VyYWQgIgorI34gInDDpSBlbiB0aWRpZ2FyZSB2ZXJzaW9uIGF2IElhbiBKYWNrc29uIG9jaCBoYXIgw6R2ZW4gZGVuIHNsw6RwcHRzIHNvbSAiCisjfiAiYWxsbcOkbmdvZHMuIgorCisjfiBtc2dpZCAiRG8gbm90IGNsZWFuIHRoZSBzb3VyY2UgdHJlZSAoaW1wbGllcyBCPC1iPikuIgorI34gbXNnc3RyICJTdMOkZGEgaW50ZSBrw6RsbGtvZHN0csOkZGV0IChpbXBsaWNlcmFyIEI8LWI+KS4iCisKKyN+IG1zZ2lkICJWZW5kb3IgaWRlbnRpZmljYXRpb24iCisjfiBtc2dzdHIgIklkZW50aWZpZXJpbmcgYXYga8OkbGxhIgorCisjfiBtc2dpZCAiIgorI34gIlRoZSB2YXJpYWJsZSBCPERFQl9WRU5ET1I+IHdpbGwgYmUgc2V0IHRvIHRoZSBuYW1lIG9mIHRoZSBjdXJyZW50IHZlbmRvciAiCisjfiAiaWYgSTwvZXRjL2Rwa2cvb3JpZ2lucy9kZWZhdWx0PiBleGlzdHMgYW5kIGNhbiBiZSB1c2VkIHRvIGxvb2sgdXAgdGhlICIKKyN+ICJ2ZW5kb3IgbmFtZS4gSWYgdGhlIHZhcmlhYmxlIGFscmVhZHkgZXhpc3RzLCBhbmQgY29udGFpbnMgdGhlIG5hbWUgb2YgYW4gIgorI34gImV4aXN0aW5nIHZlbmRvciBpbiBJPC9ldGMvZHBrZy9vcmlnaW5zPiwgaXQgd2lsbCBiZSBrZXB0OyBvdGhlcndpc2UgdGhlICIKKyN+ICJ2YXJpYWJsZSBpcyB1bnNldC4iCisjfiBtc2dzdHIgIiIKKyN+ICJWYXJpYWJlbG4gQjxERUJfVkVORE9SPiBrb21tZXIgYXR0IHPDpHR0YXMgdGlsbCBuYW1uZXQgcMOlIGRlbiBha3R1ZWxsYSAiCisjfiAia8OkbGxhbiBvbSBJPC9ldGMvZHBrZy9vcmlnaW5zL2RlZmF1bHQ+IGZpbm5zIG9jaCBrYW4gYW52w6RuZGFzIGbDtnIgYXR0IHNsw6UgIgorI34gInVwcCBuYW1uZXQgcMOlIGvDpGxsYW4uIE9tIHZhcmlhYmVsbiByZWRhbiBmaW5ucywgb2NoIGlubmVow6VsbGVyIG5hbW5ldCBww6UgIgorI34gImVuIGvDpGxsYSBzb20gZmlubnMgaSBJPC9ldGMvZHBrZy9vcmlnaW5zPiBiZWjDpWxscyBkZW47IGkgYWxsYSBhbmRyYSBmYWxsICIKKyN+ICJrb21tZXIgdmFyaWFiZWxucyB2w6RyZGUgYXR0IG5vbGxzdMOkbGxhcy4iCisKKyN+IG1zZ2lkICIiCisjfiAiQjxEZXByZWNhdGVkPi4gU2V0IGFuIG91dHB1dCBzdWJzdGl0dXRpb24gdmFyaWFibGUuICBTZWUgQjxkZWItc3Vic3R2YXJzPiIKKyN+ICIoNSkgZm9yIGEgZGlzY3Vzc2lvbiBvZiBvdXRwdXQgc3Vic3RpdHV0aW9uLiIKKyN+IG1zZ3N0ciAiIgorI34gIkI8UmVrb21tZW5kZXJhcyBlaj4uIFN0w6RsbGVyIGluIGVuIHV0ZGF0YXN1YnN0aXR1ZXJpbmdzdmFyaWFiZWwuIFNlIEI8ZGViLSIKKyN+ICJzdWJzdHZhcnM+KDUpIGbDtnIgZW4gYmVza3Jpdm5pbmcgYXYgdXRkYXRhc3Vic3RpdHVlcmluZy4iCisKKyN+IG1zZ2lkICJjbGVhbnVwLWluZm8iCisjfiBtc2dzdHIgImNsZWFudXAtaW5mbyIKKworI34gbXNnaWQgIiIKKyN+ICJjbGVhbnVwLWluZm8gLSBjbGVhbiB1cCB0aGUgbWVzcyB0aGF0IGJvZ3VzIGluc3RhbGwtaW5mbyBtYXkgaGF2ZSBkb25lIgorI34gbXNnc3RyICIiCisjfiAiY2xlYW51cC1pbmZvIC0gc3TDpGRhIHVwcCBvcmVkYW4gc29tIGVuIGZlbGFrdGlnIGluc3RhbGwtaW5mbyBrYW4gaGEgc2thcGF0IgorCisjfiBtc2dpZCAiQjxjbGVhbnVwLWluZm8+IFtJPG9wdGlvbnM+XSBbQjwtLT5dIFtJPGRpcm5hbWU+XSIKKyN+IG1zZ3N0ciAiQjxjbGVhbnVwLWluZm8+IFtJPGZsYWdnb3I+XSBbQjwtLT5dIFtJPGthdGFsb2c+XSIKKworI34gbXNnaWQgIiIKKyN+ICJCPGNsZWFudXAtaW5mbz4gaXMgYSBQZXJsIHNjcmlwdCB0aGF0IHRyaWVzIHRvIGNsZWFuIHVwIHRoZSBtZXNzIHRoYXQgIgorI34gImJvZ3VzIEI8aW5zdGFsbC1pbmZvPig4KSAgbWF5IGhhdmUgZG9uZS4gIEl0IGdhdGhlcnMgYWxsIHNlY3Rpb25zIHdpdGggIgorI34gInRoZSBzYW1lIGhlYWRpbmcgaW50byBhIHNpbmdsZSBvbmUuICBJdCB0cmllcyB0byBiZSBzbWFydCBhYm91dCBjYXNlcyBhbmQgIgorI34gInRyYWlsaW5nIGNvbG9uL3NwYWNlcy4iCisjfiBtc2dzdHIgIiIKKyN+ICJCPGNsZWFudXAtaW5mbz4gw6RyIGV0dCBQZXJsc2tyaXB0IHNvbSBmw7Zyc8O2a2VyIHN0w6RkYSB1cHAgZGVuIG9yZWRhIGVuICIKKyN+ICJmZWxha3RpZyBCPGluc3RhbGwtaW5mbz4oOCkga2FuIGhhIHNrYXBhdC4gRGVuIHNhbWxhciBhbGxhIHNla3Rpb25lciBtZWQgIgorI34gInNhbW1hIHJ1YnJpayB0aWxsIGVuIG9jaCBzYW1tYS4gRGVuIGbDtnJzw7ZrZXIgdmFyYSBzbWFydCB2YWQgZ8OkbGxlciBzdG9yYSAiCisjfiAib2NoIHNtw6UgYm9rc3TDpHZlciBvY2ggYXZzbHV0YW5kZSBrb2xvbnRlY2tlbi9ibGFua3N0ZWcuIgorCisjfiBtc2dpZCAiIgorI34gIk90aGVyIGNsZWFuLXVwcyBpbmNsdWRlIHJlbW92aW5nIG9mIGVtcHR5IHNlY3Rpb25zLCBhbmQgc3F1ZWV6aW5nIHRoZSAiCisjfiAiYmxhbmsgbGluZXMgKGluIGVudHJpZXMgcGFydCBvbmx5KS4iCisjfiBtc2dzdHIgIiIKKyN+ICJBbm5hdCBzb20gc3TDpGRhcyB1cHAgw6RyIGF0dCB0b21tYSBzZWt0aW9uZXIgdGFzIGJvcnQgb2NoIGF0dCBibGFua2EgcmFkZXIgIgorI34gIihlbmRhc3QgaSBwb3N0ZXJuYSkgdHJ5Y2tzIGlob3AuIgorCisjfiBtc2dpZCAiIgorI34gIk9yZGVyIG9mIHNlY3Rpb25zIGlzIHByZXNlcnZlZCAodGhlIGZpcnN0IGVuY291bnRlcmVkIHNlY3Rpb24gY291bnRzKS4gICIKKyN+ICJPcmRlciBvZiBlbnRyaWVzIHdpdGhpbiBhIHNlY3Rpb24gaXMgcHJlc2VydmVkLiIKKyN+IG1zZ3N0ciAiIgorI34gIk9yZG5pbmdlbiBtZWxsYW4gc2VrdGlvbmVybmEgYmV2YXJhcyAoZGVuIGbDtnJzdCB1cHB0w6Rja3RhIHNla3Rpb25lbiAiCisjfiAiZ8OkbGxlcikuIE9yZG5pbmdlbiBtZWxsYW4gcG9zdGVybmEgaSBlbiBzZWt0aW9uIGJldmFyYXMuIgorCisjfiBtc2dpZCAiIgorI34gIlBsZWFzZSBiZSBCPGV4dHJlbWVseSBjYXJlZnVsPiB3aGVuIHVzaW5nIHRoaXMgdXRpbGl0eSAtIGl0IG1pZ2h0IG5vdCBiZSAiCisjfiAiMTAwJSBzYWZlLiBjbGVhbnVwLWluZm8gdHJpZXMgdG8gYmUgY2FyZWZ1bCB3aXRoIHlvdXIgaW5mbyBkaXIgZmlsZSwgYnV0ICIKKyN+ICJvbmx5IHVudGlsIGl0IHdyaXRlcyBpdC4gWW91IHNob3VsZCBiYWNrIHRoZSBmaWxlIHVwIHByaW9yIHRvIHVzaW5nIHRoaXMgIgorI34gInNjcmlwdC4iCisjfiBtc2dzdHIgIiIKKyN+ICJWYXIgQjxleHRyZW10IGbDtnJzaWt0aWd0PiBuw6RyIGR1IGFudsOkbmRlciBkZXQgaMOkciB2ZXJrdHlnZXQgLSBkZXQga2Fuc2tlICIKKyN+ICJpbnRlIMOkciAxMDAgJSBzw6RrZXJ0LiBjbGVhbnVwLWluZm8gZsO2cnPDtmtlciB2YXJhIGbDtnJzaWt0aWd0IG1lZCBkaW4gaW5mby0iCisjfiAia2F0YWxvZ2ZpbCwgbWVuIGJhcmEgZnJhbSB0aWxscyBhdHQgZGV0IHNrcml2ZXIgdGlsbCBkZW4uIER1IGLDtnIgIgorI34gInPDpGtlcmhldHNrb3BpZXJhIGZpbGVuIGlubmFuIGR1IGFudsOkbmRlciBza3JpcHRldC4iCisKKyN+IG1zZ2lkICJCPC0tdW5zYWZlPiIKKyN+IG1zZ3N0ciAiQjwtLXVuc2FmZT4iCisKKyN+IG1zZ2lkICJTZXQgc29tZSBhZGRpdGlvbmFsIHBvc3NpYmx5IHVzZWZ1bCBvcHRpb25zLiIKKyN+IG1zZ3N0ciAiU3TDpGxsZXIgaW4geXR0ZXJsaWdhcmUgbsOlZ3JhIGFudGFnbGlnZW4gYW52w6RuZGJhcmEgZmxhZ2dvci4iCisKKyN+IG1zZ2lkICIiCisjfiAiQjxXYXJuaW5nOiB0aGUgYC0tdW5zYWZlJyBvcHRpb24gbWF5IGdhcmJsZSBhbiBvdGhlcndpc2UgY29ycmVjdCBmaWxlIT4iCisjfiBtc2dzdHIgIiIKKyN+ICJCPFZhcm5pbmc6IGZsYWdnYXIgXCItLXVuc2FmZVwiIGthbiBza3JpdmEgc8O2bmRlciBlbiBhbm5hcnMga29ycmVrdCBmaWwhPiIKKworI34gbXNnaWQgIkk8L3Vzci9pbmZvL2Rpcj4gb3IgSTxFPGx0PmRpcm5hbWVFPGd0Pi9kaXI+IgorI34gbXNnc3RyICJJPC91c3IvaW5mby9kaXI+IGVsbGVyIEk8RTxsdD5rYXRhbG9nRTxndD4vZGlyPiIKKworI34gbXNnaWQgIiIKKyN+ICJUaGUgaW5mbyBkaXJlY3RvcnkgZmlsZS4gVGhlIGxvY2sgZmlsZSBpcyBuYW1lZCB0aGUgc2FtZSwgd2l0aCBcIi5sb2NrXCIgIgorI34gInN1ZmZpeC4iCisjfiBtc2dzdHIgIkluZm8ta2F0YWxvZ2ZpbGVuLiBMw6VzZmlsZW4gaGV0ZXIgZGV0c2FtbWEsIG1lZCDDpG5kZWxzZW4gXCIubG9ja1wiLiIKKworI34gbXNnaWQgIlByb2JhYmx5IG1hbnkuIgorI34gbXNnc3RyICJBbnRhZ2xpZ2VuIGZsZXJhLiIKKworI34gbXNnaWQgIkI8aW5zdGFsbC1pbmZvPig4KSwgQjxpbmZvPigxKS4iCisjfiBtc2dzdHIgIkI8aW5zdGFsbC1pbmZvPig4KSwgQjxpbmZvPigxKS4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQ29weXJpZ2h0IFxcKGNvIDE5OTYgS2ltLU1pbmggS2FwbGFuIgorI34gbXNnc3RyICJVcHBob3ZzcsOkdHRzc2t5ZGRhdCDCqSAxOTk2IEtpbS1NaW5oIEthcGxhbiIKKworI34gbXNnaWQgIjIwMDgtMDEtMzAiCisjfiBtc2dzdHIgIjIwMDgtMDEtMzAiCisKKyN+IG1zZ2lkICJnZW5lcmljIG5hbWUiCisjfiBtc2dzdHIgImdlbmVyaXNrdCBuYW1uIgorCisjfiBtc2dpZCAic3ltbGluayIKKyN+IG1zZ3N0ciAic3ltYm9saXNrIGzDpG5rIgorCisjfiBtc2dpZCAiIgorI34gIldpdGhvdXQgYW55IGZ1cnRoZXIgcXVhbGlmaWNhdGlvbiwgdGhpcyBtZWFucyBhIHN5bWJvbGljIGxpbmsgaW4gdGhlICIKKyN+ICJhbHRlcm5hdGl2ZXMgZGlyZWN0b3J5OiBvbmUgd2hpY2ggdGhlIHN5c3RlbSBhZG1pbmlzdHJhdG9yIGlzIGV4cGVjdGVkIHRvICIKKyN+ICJhZGp1c3QuIgorI34gbXNnc3RyICIiCisjfiAiVXRhbiB5dHRlcmxpZ2FyZSBiZXNrcml2bmluZyBtZW5hcyBlbiBzeW1ib2xpc2sgbMOkbmsgaSAiCisjfiAiYWx0ZXJuYXRpdmthdGFsb2dlbjogZW4gc29tIHN5c3RlbWFkbWluaXN0cmF0w7ZyZW4gZsO2cnbDpG50YXMganVzdGVyYS4iCisKKyN+IG1zZ2lkICJDYWxsIEI8LS1jb25maWc+IG9uIGFsbCBhbHRlcm5hdGl2ZXMuIgorI34gbXNnc3RyICJBbnJvcGEgQjwtLWNvbmZpZz4gcMOlIGFsbGEgYWx0ZXJuYXRpdi4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiQjxFcnJvcjo+IEU8bHQ+ZXJyb3IgZGV0YWlsc0U8Z3Q+IgorI34gbXNnc3RyICJCPFByaW9yaXR5Oj4gRTxsdD5wcmlvcml0ZXRFPGd0PiIKKworI34gbXNnaWQgIjIwMDctMTAtMDYiCisjfiBtc2dzdHIgIjIwMDctMTAtMDYiCisKKyN+IG1zZ2lkICIyMDA4LTAzLTE0IgorI34gbXNnc3RyICIyMDA4LTAzLTE0IgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICJUaGUgQjwtcz5JPHg+IG9wdGlvbnMgY29udHJvbCB3aGV0aGVyIHRoZSBvcmlnaW5hbCBzb3VyY2UgYXJjaGl2ZSBpcyAiCisjfiAiaW5jbHVkZWQgaW4gdGhlIHVwbG9hZCBpZiBhbnkgc291cmNlIGlzIGJlaW5nIGdlbmVyYXRlZCAoaS5lLiAgQjwtYj4sIEI8LSIKKyN+ICJCPiBvciBCPC1BPiBoYXZlbid0IGJlZW4gdXNlZCkuIgorI34gbXNnc3RyICIiCisjfiAiRmxhZ2dvcm5hIEI8LXM+STx4PiBzdHlyIGh1cnV2aWRhIGRldCB1cnNwcnVuZ2xpZ2Ega8OkbGxrb2RzYXJraXZldCBza2FsbCAiCisjfiAiaW5rbHVkZXJhcyBpIGluc8OkbmRuaW5nZW4gb20ga8OkbGxrb2QgZ2VuZXJlcmFzIChkdnMuIEI8LWI+IGVsbGVyIEI8LUI+ICIKKyN+ICJpbnRlIGhhciBhbnbDpG50cykuIgorCisjfiBtc2dpZCAiIgorI34gIkJ5IGRlZmF1bHQsIG9yIGlmIHNwZWNpZmllZCwgdGhlIG9yaWdpbmFsIHNvdXJjZSB3aWxsIGJlIGluY2x1ZGVkIGlmIHRoZSAiCisjfiAidmVyc2lvbiBudW1iZXIgZW5kcyBpbiBCPC0wPiBvciBCPC0xPiwgaS5lLiBpZiB0aGUgRGViaWFuIHJldmlzaW9uIHBhcnQgIgorI34gIm9mIHRoZSB2ZXJzaW9uIG51bWJlciBpcyBCPDA+IG9yIEI8MT4uIgorI34gbXNnc3RyICIiCisjfiAiU29tIHN0YW5kYXJkLCBlbGxlciBvbSBkZW4gYW5nZXMsIGtvbW1lciBvcmlnaW5hbGvDpGxsa29kZW4gYXR0IGlua2x1ZGVyYXMgIgorI34gIm9tIHZlcnNpb25zbnVtcmV0IGF2c2x1dGFzIG1lZCBCPC0wPiBlbGxlciBCPC0xPiwgZHZzLiBvbSAiCisjfiAiRGViaWFudmVyc2lvbnNkZWxlbiBhdiB2ZXJzaW9uc251bXJldCDDpHIgQjwwPiBlbGxlciBCPDE+LiIKKworI34gbXNnaWQgIiIKKyN+ICJVc2UgY2hhbmdlbG9nIGluZm9ybWF0aW9uIGZyb20gYWxsIHZlcnNpb25zIHN0cmljdGx5IGxhdGVyIHRoYW4gIgorI34gIkk8dmVyc2lvbj4uIgorI34gbXNnc3RyICIiCisjfiAiQW52w6RuZCDDpG5kcmluZ3Nsb2dnc2luZm9ybWF0aW9uIGbDtnIgYWxsYSB2ZXJzaW9uZXIgc29tIMOkciBzdHJpa3Qgc2VuYXJlICIKKyN+ICLDpG4gSTx2ZXJzaW9uPi4iCisKKyN+IG1zZ2lkICJCPC1FPiIKKyN+IG1zZ3N0ciAiQjwtRT4iCisKKyN+IG1zZ2lkICIiCisjfiAiVHVybiBjZXJ0YWluIHdhcm5pbmdzIGludG8gZXJyb3JzLiBPbmx5IEI8ZHBrZy1zb3VyY2U+IHVzZXMgdGhpcywgYnV0ICIKKyN+ICJCPGRwa2ctYnVpbGRwYWNrYWdlPiByZWNvZ25pemVzIGl0LCBhbmQgcGFzc2VzIGl0IHRocnUgdG8gQjxkcGtnLXNvdXJjZT4uIgorI34gbXNnc3RyICIiCisjfiAiR8O2ciB2aXNzYSB2YXJuaW5nYXIgdGlsbCBmZWwuIEFudsOkbmRzIGVuZGFzdCBhdiBCPGRwa2ctc291cmNlPiwgbWVuICIKKyN+ICJCPGRwa2ctYnVpbGRwYWNrYWdlPiBrw6RubmVyIGlnZW4gZGV0IG9jaCBzw6RuZGVyIGRldCB2aWRhcmUgdGlsbCBCPGRwa2ctIgorI34gInNvdXJjZT4uIgorCisjfiBtc2dpZCAiQjwtVz4iCisjfiBtc2dzdHIgIkI8LVc+IgorCisjfiBtc2dpZCAiIgorI34gIk5lZ2F0ZXMgYSBwcmV2aW91c2x5IHNldCBCPC1FPi4gIE9ubHkgQjxkcGtnLXNvdXJjZT4gdXNlcyB0aGlzLCBidXQgIgorI34gIkI8ZHBrZy1idWlsZHBhY2thZ2U+IHJlY29nbml6ZXMgaXQsIGFuZCBwYXNzZXMgaXQgdGhydSB0byBCPGRwa2ctc291cmNlPi4iCisjfiBtc2dzdHIgIiIKKyN+ICJTbMOlciBhdiB0aWRpZ2FyZSBzYXR0IEI8LUU+LiBBbnbDpG5kcyBlbmRhc3QgYXYgQjxkcGtnLXNvdXJjZT4sIG1lbiBCPGRwa2ctIgorI34gImJ1aWxkcGFja2FnZT4ga8Okbm5lciBpZ2VuIGRldCBvY2ggc8OkbmRlciBkZXQgdmlkYXJlIHRpbGwgQjxkcGtnLXNvdXJjZT4uIgorCisjfiBtc2dpZCAiMjAwNy0wOS0wOCIKKyN+IG1zZ3N0ciAiMjAwNy0wOS0wOCIKKworI34gbXNnaWQgIiIKKyN+ICJUaGVyZSBpcyBubyBhdXRoZW50aWNhdGlvbiBvbiBCPC5kZWI+IGZpbGVzOyBpbiBmYWN0LCB0aGVyZSBpc24ndCBldmVuIGEgIgorI34gInN0cmFpZ2h0Zm9yd2FyZCBjaGVja3N1bS4iCisjfiBtc2dzdHIgIiIKKyN+ICJEZXQgZmlubnMgaW5nZW4gYXV0ZW50aXNlcmluZyBpIEI8LmRlYj4tZmlsZXI7IGRldCBmaW5ucyBmYWt0aXNrdCBpbnRlICIKKyN+ICJlbnMgZW4gdmFubGlnIGtvbnRyb2xsc3VtbWEuIgorCisjfiBtc2dpZCAiMjAwOC0wMy0wMiIKKyN+IG1zZ3N0ciAiMjAwOC0wMy0wMiIKKworI34gbXNnaWQgIjIwMDgtMDEtMTMiCisjfiBtc2dzdHIgIjIwMDgtMDEtMTMiCisKKyN+IG1zZ2lkICIyMDA4LTAzLTI1IgorI34gbXNnc3RyICIyMDA4LTAzLTI1IgorCisjfiBtc2dpZCAiMjAwOC0wMy0xNiIKKyN+IG1zZ3N0ciAiMjAwOC0wMy0xNiIKKworI34gbXNnaWQgIjIwMDgtMDQtMDgiCisjfiBtc2dzdHIgIjIwMDgtMDQtMDgiCisKKyN+IG1zZ2lkICIiCisjfiAiQSBzaW1wbGVyIG9uZS1zaG90IGNvbW1hbmQgdG8gcmV0cmlldmUgYW5kIHVwZGF0ZSB0aGUgSTxhdmFpbGFibGU+IGZpbGUgIgorI34gImlzIEI8ZHNlbGVjdCB1cGRhdGU+LiIKKyN+IG1zZ3N0ciAiIgorI34gIkV0dCBlbmtsYXJlIGtvbW1hbmRvIGbDtnIgYXR0IGjDpG10YSBvY2ggdXBwZGF0ZXJhIEk8YXZhaWxhYmxlPi1maWxlbiBww6UgZW4gIgorI34gImfDpW5nIMOkciBCPGRzZWxlY3QgdXBkYXRlPi4iCisKKyN+IG1zZ2lkICIiCisjfiAiRGlzcGxheSBkZXRhaWxzIGFib3V0IEk8cGFja2FnZS1uYW1lPiwgYXMgZm91bmQgaW4gSTwvdmFyL2xpYi9kcGtnLyIKKyN+ICJhdmFpbGFibGU+LiIKKyN+IG1zZ3N0ciAiVmlzYXIgZGV0YWxqZXIgb20gSTxwYWtldG5hbW4+IGZyw6VuIEk8L3Zhci9saWIvZHBrZy9hdmFpbGFibGU+LiIKKworI34gbXNnaWQgIiIKKyN+ICJBbGwgcGF0Y2hlcyBpbiBCPGRlYmlhbi9wYXRjaGVzPiBtYXRjaGluZyB0aGUgcGVybCByZWd1bGFyIGV4cHJlc3Npb24gQjwiCisjfiAiW1xcZXctXSs+IGFyZSB0aGVuIGFwcGxpZWQgaW4gYWxwaGFiZXRpY2FsIG9yZGVyLiBUaGUgdGltZXN0YW1wIG9mICIKKyN+ICJwYXRjaGVkIGZpbGVzIGFyZSByZXNldCB0byB0aGUgZXh0cmFjdGlvbiB0aW1lLiBUaGUgcGF0Y2hlcyBjYW4gcmVtb3ZlICIKKyN+ICJmaWxlcy4iCisjfiBtc2dzdHIgIiIKKyN+ICJBbGxhIHBhdGNoYXIgaSBCPGRlYmlhbi9wYXRjaGVzPiBzb20gbW90c3ZhcmFyIGRldCByZWd1bGrDpHJhIHV0dHJ5Y2tldCAoaSAiCisjfiAicGVybC1mb3JtYXQpIEI8W1xcZXctXSs+IHRpbGzDpG1wYXMgaSBib2tzdGF2c29yZG5pbmcuIFRpZHNzdMOkbXBlbG4gcMOlICIKKyN+ICJwYXRjaGFkZSBmaWxlciDDpXRlcnN0w6RsbHMgdGlsbCB1cHBhY2tuaW5nc3RpZHB1bmt0LiBQYXRjaGFybmEga2FuIHRhIGJvcnQgIgorI34gImZpbGVyLiIKKworI34gbXNnaWQgIiIKKyN+ICJOb3RlOiBpdCdzIHZlcnkgaW1wb3J0YW50IHRvIGdlbmVyYXRlIHRoZSBzb3VyY2UgcGFja2FnZSB3aXRoIGFsbCBwYXRjaGVzICIKKyN+ICJhcHBsaWVkLCBvdGhlcndpc2UgdGhlIGdlbmVyYXRpb24gb2YgdGhlIGF1dG9tYXRpYyBwYXRjaCB3aWxsIGxlYWQgdG8gYSAiCisjfiAicGF0Y2ggdGhhdCByZXZlcnRzIHRoZSBwYXRjaGVzIHdoaWNoIHdlcmUgbm90IGFwcGxpZWQuIgorI34gbXNnc3RyICIiCisjfiAiT2JzZXJ2ZXJhOiBkZXQgw6RyIHZpa3RpZ3QgYXR0IGvDpGxsa29kc3Bha2V0ZXQgZ2VuZXJlcmFzIG1lZCBhbGxhIHBhdGNoYXIgIgorI34gInRpbGzDpG1wYWRlLCBvbSBpbnRlIGthbiBnZW5lcmVyaW5nZW4gYXYgZGVuIGF1dG9tYXRpc2thIHBhdGNoZW4gbGVkYSB0aWxsICIKKyN+ICJlbiBwYXRjaCBzb20gw6V0ZXJzdMOkbGxlciBkZSBwYXRjaGFyIHNvbSBpbnRlIHRpbGzDpG1wYXRzLiIKKworI34gbXNnaWQgIiIKKyN+ICJUaGlzIGlzIGEgdmFyaWFudCBvZiB0aGUgMi4wIGZvcm1hdC4gVGhlIGRpZmZlcmVuY2VzIGNvbmNlcm4gdGhlICIKKyN+ICJtYW5hZ2VtZW50IG9mIHRoZSBwYXRjaGVzLiBUaGlzIGZvcm1hdCB1c2VzIGFuIGV4cGxpY2l0IGxpc3Qgb2YgcGF0Y2hlcyAiCisjfiAiY29udGFpbmVkIGluIEI8ZGViaWFuL3BhdGNoZXMvZGViaWFuLnNlcmllcz4gb3IgQjxkZWJpYW4vcGF0Y2hlcy9zZXJpZXM+LiIKKyN+IG1zZ3N0ciAiIgorI34gIkRldHRhIMOkciBlbiB2YXJpYXRpb24gYXYgMi4wLWZvcm1hdGV0LiBTa2lsbG5hZGVuIMOkciBoYW50ZXJpbmdlbiBhdiAiCisjfiAicGF0Y2hhci4gRGV0dGEgZm9ybWF0IGFudsOkbmRlciBlbiBleHBsaWNpdCBsaXN0YSDDtnZlciBwYXRjaGFyIHNvbSBmaW5ucyBpICIKKyN+ICJCPGRlYmlhbi9wYXRjaGVzL2RlYmlhbi5zZXJpZXM+IGVsbGVyIEI8ZGViaWFuL3BhdGNoZXMvc2VyaWVzPi4iCisKKyN+IG1zZ2lkICJVbnBhY2tpbmcgb2YgdGFyYmFsbHMgaXMgZG9uZSBleGFjdGx5IGxpa2UgaW4gdGhlIDIuMCBmb3JtYXQuIgorI34gbXNnc3RyICJUYXJib2xsYXJuYSBwYWNrYXMgdXBwIHDDpSBleGFrdCBzYW1tYSBzw6R0dCBzb20gaSAyLjAtZm9ybWF0ZXQuIgorCisjfiBtc2dpZCAiIgorI34gIkl0IGJlaGF2ZXMgbGlrZSB0aGUgMi4wIGZvcm1hdCBleGNlcHQgdGhhdCB0aGUgbmFtZSBvZiB0aGUgYXV0b21hdGljYWxseSAiCisjfiAiZ2VuZXJhdGVkIHBhdGNoIGlzIEI8ZGViaWFuLWNoYW5nZXMtPkk8dmVyc2lvbj5CPC5kaWZmPiBhbmQgdGhlIEI8c2VyaWVzPiAiCisjfiAiZmlsZSBpcyBvYnZpb3VzbHkgdXBkYXRlZCB0byBhZGQvcmVtb3ZlIHRoZSBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlZCBwYXRjaCAiCisjfiAiYXMgbmVlZGVkLiIKKyN+IG1zZ3N0ciAiIgorI34gIkRlbiBmdW5nZXJhciBzb20gMi4wLWZvcm1hdGV0LCBmw7ZydXRvbSBhdHQgbmFtbmV0IHDDpSBkZW4gYXV0b21hdGlza3QgIgorI34gImdlbmVyZXJhZGUgcGF0Y2hlbiDDpHIgQjxkZWJpYW4tY2hhbmdlcy0+STx2ZXJzaW9uPkI8LmRpZmY+IG9jaCBmaWxlbiAiCisjfiAiQjxzZXJpZXM+IHVwcGVuYmFybGlnZW4gdXBwZGF0ZXJhcyBmw7ZyIGF0dCBsw6RnZ2EgdGlsbC90YSBib3J0IGRlbiAiCisjfiAiYXV0b21hdGlza3QgZ2VuZXJlcmFkZSBwYXRjaGVuLCBvbSBzw6UgYmVow7Z2cy4iCisKKyN+IG1zZ2lkICIiCisjfiAiVGhlIEI8LnBjPiBkaXJlY3RvcnkgdXNlZCBieSBxdWlsdCBpcyBpZ25vcmVkIGR1cmluZyBnZW5lcmF0aW9uIG9mIHRoZSAiCisjfiAiYXV0b21hdGljIHBhdGNoLiIKKyN+IG1zZ3N0ciAiIgorI34gIkthdGFsb2dlbiBCPC5wYz4sIHNvbSBhbnbDpG5kcyBhdiBxdWlsdCwgaWdub3JlcmFzIG7DpHIgZGVuIGF1dG9tYXRpc2thICIKKyN+ICJwYXRjaGVuIGdlbmVyZXJhcy4iCisKKyN+IG1zZ2lkICJJdCBzdXBwb3J0cyBhbGwgdGhlIG9wdGlvbnMgb2YgdGhlIDIuMCBmb3JtYXQuIgorI34gbXNnc3RyICJEZXQgc3TDtmRlciBhbGxhIGZsYWdnb3IgZsO2ciAyLjAtZm9ybWF0ZXQuIgorCisjfiBtc2dpZCAiMjAwNy0wNy0xOCIKKyN+IG1zZ3N0ciAiMjAwNy0wNy0xOCIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL3N0YXJ0LXN0b3AtZGFlbW9uLjggYi9kcGtnLTEuMTYuMS4xL21hbi9zdGFydC1zdG9wLWRhZW1vbi44Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjM2YmI1YWMKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9zdGFydC1zdG9wLWRhZW1vbi44CkBAIC0wLDAgKzEsMzI4IEBACisuVEggc3RhcnRcLXN0b3BcLWRhZW1vbiA4ICIyMDExLTA3LTA0IiAiRGViaWFuIFByb2plY3QiICJkcGtnIHV0aWxpdGllcyIKKy5TSCBOQU1FCitzdGFydFwtc3RvcFwtZGFlbW9uIFwtIHN0YXJ0IGFuZCBzdG9wIHN5c3RlbSBkYWVtb24gcHJvZ3JhbXMKKy4KKy5TSCBTWU5PUFNJUworLkIgc3RhcnRcLXN0b3BcLWRhZW1vbgorLlJJIFsgb3B0aW9uICIuLi5dICIgY29tbWFuZAorLgorLlNIIERFU0NSSVBUSU9OCisuQiBzdGFydFwtc3RvcFwtZGFlbW9uCitpcyB1c2VkIHRvIGNvbnRyb2wgdGhlIGNyZWF0aW9uIGFuZCB0ZXJtaW5hdGlvbiBvZiBzeXN0ZW0tbGV2ZWwgcHJvY2Vzc2VzLgorVXNpbmcgb25lIG9mIHRoZSBtYXRjaGluZyBvcHRpb25zLCBcZkJzdGFydFwtc3RvcFwtZGFlbW9uXGZQCitjYW4gYmUgY29uZmlndXJlZCB0byBmaW5kIGV4aXN0aW5nIGluc3RhbmNlcyBvZiBhIHJ1bm5pbmcgcHJvY2Vzcy4KKy5QUAorTm90ZTogdW5sZXNzCisuQiBcLVwtcGlkZmlsZQoraXMgc3BlY2lmaWVkLAorLkIgc3RhcnRcLXN0b3BcLWRhZW1vbgorYmVoYXZlcyBzaW1pbGFyIHRvCisuQlIga2lsbGFsbCAoMSkuCisuQiBzdGFydFwtc3RvcFwtZGFlbW9uCit3aWxsIHNjYW4gdGhlIHByb2Nlc3MgdGFibGUgbG9va2luZyBmb3IgYW55IHByb2Nlc3NlcyB3aGljaAorbWF0Y2ggdGhlIHByb2Nlc3MgbmFtZSwgdWlkLCBhbmQvb3IgZ2lkIChpZiBzcGVjaWZpZWQpLiBBbnkKK21hdGNoaW5nIHByb2Nlc3Mgd2lsbCBwcmV2ZW50CisuQlIgXC1cLXN0YXJ0Citmcm9tIHN0YXJ0aW5nIHRoZSBkYWVtb24uIEFsbCBtYXRjaGluZyBwcm9jZXNzZXMgd2lsbCBiZSBzZW50IHRoZSBURVJNCitzaWduYWwgKG9yIHRoZSBvbmUgc3BlY2lmaWVkIHZpYSBcZkJcLVwtc2lnbmFsXGZQIG9yIFxmQlwtXC1yZXRyeVxmUCkgaWYKKy5CUiBcLVwtc3RvcAoraXMgc3BlY2lmaWVkLiBGb3IgZGFlbW9ucyB3aGljaCBoYXZlIGxvbmctbGl2ZWQgY2hpbGRyZW4KK3doaWNoIG5lZWQgdG8gbGl2ZSB0aHJvdWdoIGEKKy5CUiBcLVwtc3RvcCAsCit5b3UgbXVzdCBzcGVjaWZ5IGEgcGlkZmlsZS4KKy4KKy5TSCBDT01NQU5EUworLlRQCisuQlIgXC1TICIsICIgXC1cLXN0YXJ0ICIgWyIgXC1cLSAiXSBcZklhcmd1bWVudHNcZlAiCitDaGVjayBmb3IgdGhlIGV4aXN0ZW5jZSBvZiBhIHNwZWNpZmllZCBwcm9jZXNzLgorSWYgc3VjaCBhIHByb2Nlc3MgZXhpc3RzLAorLkIgc3RhcnRcLXN0b3BcLWRhZW1vbgorZG9lcyBub3RoaW5nLCBhbmQgZXhpdHMgd2l0aCBlcnJvciBzdGF0dXMgMSAoMCBpZgorLkJSIFwtXC1va25vZG8KK2lzIHNwZWNpZmllZCkuCitJZiBzdWNoIGEgcHJvY2VzcyBkb2VzIG5vdCBleGlzdCwgaXQgc3RhcnRzIGFuCitpbnN0YW5jZSwgdXNpbmcgZWl0aGVyIHRoZSBleGVjdXRhYmxlIHNwZWNpZmllZCBieQorLkIgXC1cLWV4ZWMKK29yLCBpZiBzcGVjaWZpZWQsIGJ5CisuQlIgXC1cLXN0YXJ0YXMgLgorQW55IGFyZ3VtZW50cyBnaXZlbiBhZnRlcgorLkJSIFwtXC0KK29uIHRoZSBjb21tYW5kIGxpbmUgYXJlIHBhc3NlZCB1bm1vZGlmaWVkIHRvIHRoZSBwcm9ncmFtIGJlaW5nCitzdGFydGVkLgorLlRQCisuQlIgXC1LICIsICIgXC1cLXN0b3AKK0NoZWNrcyBmb3IgdGhlIGV4aXN0ZW5jZSBvZiBhIHNwZWNpZmllZCBwcm9jZXNzLgorSWYgc3VjaCBhIHByb2Nlc3MgZXhpc3RzLAorLkIgc3RhcnRcLXN0b3BcLWRhZW1vbgorc2VuZHMgaXQgdGhlIHNpZ25hbCBzcGVjaWZpZWQgYnkKKy5CUiBcLVwtc2lnbmFsICwKK2FuZCBleGl0cyB3aXRoIGVycm9yIHN0YXR1cyAwLgorSWYgc3VjaCBhIHByb2Nlc3MgZG9lcyBub3QgZXhpc3QsCisuQiBzdGFydFwtc3RvcFwtZGFlbW9uCitleGl0cyB3aXRoIGVycm9yIHN0YXR1cyAxCisoMCBpZgorLkJSIFwtXC1va25vZG8KK2lzIHNwZWNpZmllZCkuIElmCisuQiBcLVwtcmV0cnkKK2lzIHNwZWNpZmllZCwgdGhlbgorLkIgc3RhcnRcLXN0b3BcLWRhZW1vbgord2lsbCBjaGVjayB0aGF0IHRoZSBwcm9jZXNzKGVzKSBoYXZlIHRlcm1pbmF0ZWQuCisuVFAKKy5CUiBcLVQgIiwgIiBcLVwtc3RhdHVzCitDaGVjayBmb3IgdGhlIGV4aXN0ZW5jZSBvZiBhIHNwZWNpZmllZCBwcm9jZXNzLCBhbmQgcmV0dXJucyBhbiBleGl0IHN0YXR1cworY29kZSwgYWNjb3JkaW5nIHRvIHRoZSBMU0IgSW5pdCBTY3JpcHQgQWN0aW9ucy4KKy5UUAorLkJSIFwtSCAiLCAiIFwtXC1oZWxwCitTaG93IHVzYWdlIGluZm9ybWF0aW9uIGFuZCBleGl0LgorLlRQCisuQlIgXC1WICIsICIgXC1cLXZlcnNpb24KK1Nob3cgdGhlIHByb2dyYW0gdmVyc2lvbiBhbmQgZXhpdC4KKy4KKy5TSCBNQVRDSElORyBPUFRJT05TCisuVFAKKy5CUiBcLXAgIiwgIiBcLVwtcGlkZmlsZSAiIFxmSXBpZC1maWxlXGZQIgorQ2hlY2sgd2hldGhlciBhIHByb2Nlc3MgaGFzIGNyZWF0ZWQgdGhlIGZpbGUKKy5JUiBwaWQtZmlsZSAuCisuVFAKKy5CUiBcLXggIiwgIiBcLVwtZXhlYyAiIFxmSWV4ZWN1dGFibGVcZlAiCitDaGVjayBmb3IgcHJvY2Vzc2VzIHRoYXQgYXJlIGluc3RhbmNlcyBvZiB0aGlzIGV4ZWN1dGFibGUgKGFjY29yZGluZyB0bworXGZCL3Byb2MvXGZJcGlkXGZQL2V4ZVxmUikuCisuVFAKKy5CUiBcLW4gIiwgIiBcLVwtbmFtZSAiIFxmSXByb2Nlc3MtbmFtZVxmUCIKK0NoZWNrIGZvciBwcm9jZXNzZXMgd2l0aCB0aGUgbmFtZQorLkkgcHJvY2Vzcy1uYW1lCisoYWNjb3JkaW5nIHRvCisuQlIgL3Byb2MvXGZJcGlkXGZCL3N0YXRcZlAgKS4KKy5UUAorLkJSIFwtdSAiLCAiIFwtXC11c2VyICIgXGZJdXNlcm5hbWVcZlB8XGZJdWlkXGZQCitDaGVjayBmb3IgcHJvY2Vzc2VzIG93bmVkIGJ5IHRoZSB1c2VyIHNwZWNpZmllZCBieQorLkkgdXNlcm5hbWUKK29yCisuSVIgdWlkIC4KKy4KKy5TSCBPUFRJT05TCisuVFAKKy5CUiBcLWcgIiwgIiBcLVwtZ3JvdXAgIiBcZklncm91cFxmUHxcZklnaWRcZlAiCitDaGFuZ2UgdG8gXGZJZ3JvdXBcZlAgb3IgXGZJZ2lkXGZQIHdoZW4gc3RhcnRpbmcgdGhlIHByb2Nlc3MuCisuVFAKKy5CUiBcLXMgIiwgIiBcLVwtc2lnbmFsICIgXGZJc2lnbmFsXGZQIgorV2l0aAorLkJSIFwtXC1zdG9wICwKK3NwZWNpZmllcyB0aGUgc2lnbmFsIHRvIHNlbmQgdG8gcHJvY2Vzc2VzIGJlaW5nIHN0b3BwZWQgKGRlZmF1bHQgVEVSTSkuCisuVFAKKy5CUiBcLVIgIiwgIiBcLVwtcmV0cnkgIiBcZkl0aW1lb3V0XGZQfFxmSXNjaGVkdWxlXGZQIgorV2l0aAorLkJSIFwtXC1zdG9wICwKK3NwZWNpZmllcyB0aGF0CisuQiBzdGFydFwtc3RvcFwtZGFlbW9uCitpcyB0byBjaGVjayB3aGV0aGVyIHRoZSBwcm9jZXNzKGVzKQorZG8gZmluaXNoLiBJdCB3aWxsIGNoZWNrIHJlcGVhdGVkbHkgd2hldGhlciBhbnkgbWF0Y2hpbmcgcHJvY2Vzc2VzCithcmUgcnVubmluZywgdW50aWwgbm9uZSBhcmUuIElmIHRoZSBwcm9jZXNzZXMgZG8gbm90IGV4aXQgaXQgd2lsbAordGhlbiB0YWtlIGZ1cnRoZXIgYWN0aW9uIGFzIGRldGVybWluZWQgYnkgdGhlIHNjaGVkdWxlLgorCitJZgorLkkgdGltZW91dAoraXMgc3BlY2lmaWVkIGluc3RlYWQgb2YKKy5JUiBzY2hlZHVsZSAsCit0aGVuIHRoZSBzY2hlZHVsZQorLklCIHNpZ25hbCAvIHRpbWVvdXQgL0tJTEwvIHRpbWVvdXQKK2lzIHVzZWQsIHdoZXJlCisuSSBzaWduYWwKK2lzIHRoZSBzaWduYWwgc3BlY2lmaWVkIHdpdGgKKy5CUiBcLVwtc2lnbmFsIC4KKworLkkgc2NoZWR1bGUKK2lzIGEgbGlzdCBvZiBhdCBsZWFzdCB0d28gaXRlbXMgc2VwYXJhdGVkIGJ5IHNsYXNoZXMKKy5SQiAoIC8gKTsKK2VhY2ggaXRlbSBtYXkgYmUKKy5CSSBcLSBzaWduYWwtbnVtYmVyCitvciBbXGZCXC1cZlBdXGZJc2lnbmFsLW5hbWVcZlAsCit3aGljaCBtZWFucyB0byBzZW5kIHRoYXQgc2lnbmFsLAorb3IKKy5JUiB0aW1lb3V0ICwKK3doaWNoIG1lYW5zIHRvIHdhaXQgdGhhdCBtYW55IHNlY29uZHMgZm9yIHByb2Nlc3NlcyB0bworZXhpdCwKK29yCisuQlIgZm9yZXZlciAsCit3aGljaCBtZWFucyB0byByZXBlYXQgdGhlIHJlc3Qgb2YgdGhlIHNjaGVkdWxlIGZvcmV2ZXIgaWYKK25lY2Vzc2FyeS4KKworSWYgdGhlIGVuZCBvZiB0aGUgc2NoZWR1bGUgaXMgcmVhY2hlZCBhbmQKKy5CUiBmb3JldmVyCitpcyBub3Qgc3BlY2lmaWVkLCB0aGVuCisuQiBzdGFydFwtc3RvcFwtZGFlbW9uCitleGl0cyB3aXRoIGVycm9yIHN0YXR1cyAyLgorSWYgYSBzY2hlZHVsZSBpcyBzcGVjaWZpZWQsIHRoZW4gYW55IHNpZ25hbCBzcGVjaWZpZWQKK3dpdGgKKy5CIFwtXC1zaWduYWwKK2lzIGlnbm9yZWQuCisuVFAKKy5CUiBcLWEgIiwgIiBcLVwtc3RhcnRhcyAiIFxmSXBhdGhuYW1lXGZQIgorV2l0aAorLkJSIFwtXC1zdGFydCAsCitzdGFydCB0aGUgcHJvY2VzcyBzcGVjaWZpZWQgYnkKKy5JUiBwYXRobmFtZSAuCitJZiBub3Qgc3BlY2lmaWVkLCBkZWZhdWx0cyB0byB0aGUgYXJndW1lbnQgZ2l2ZW4gdG8KKy5CUiBcLVwtZXhlYyAuCisuVFAKKy5CUiBcLXQgIiwgIiBcLVwtdGVzdAorUHJpbnQgYWN0aW9ucyB0aGF0IHdvdWxkIGJlIHRha2VuIGFuZCBzZXQgYXBwcm9wcmlhdGUgcmV0dXJuIHZhbHVlLAorYnV0IHRha2Ugbm8gYWN0aW9uLgorLlRQCisuQlIgXC1vICIsICIgXC1cLW9rbm9kbworUmV0dXJuIGV4aXQgc3RhdHVzIDAgaW5zdGVhZCBvZiAxIGlmIG5vIGFjdGlvbnMgYXJlICh3b3VsZCBiZSkgdGFrZW4uCisuVFAKKy5CUiBcLXEgIiwgIiBcLVwtcXVpZXQKK0RvIG5vdCBwcmludCBpbmZvcm1hdGlvbmFsIG1lc3NhZ2VzOyBvbmx5IGRpc3BsYXkgZXJyb3IgbWVzc2FnZXMuCisuVFAKKy5CUiBcLWMgIiwgIiBcLVwtY2h1aWQgIiBcZkl1c2VybmFtZVxmUnxcZkl1aWRcZlBbXGZCOlxmUFxmSWdyb3VwXGZSfFxmSWdpZFxmUF0iCitDaGFuZ2UgdG8gdGhpcyB1c2VybmFtZS91aWQgYmVmb3JlIHN0YXJ0aW5nIHRoZSBwcm9jZXNzLiBZb3UgY2FuIGFsc28KK3NwZWNpZnkgYSBncm91cCBieSBhcHBlbmRpbmcgYQorLkJSIDogLAordGhlbiB0aGUgZ3JvdXAgb3IgZ2lkIGluIHRoZSBzYW1lIHdheQorYXMgeW91IHdvdWxkIGZvciB0aGUgYGNob3duJyBjb21tYW5kIChcZkl1c2VyXGZQXGZCOlxmUFxmSWdyb3VwXGZQKS4KK0lmIGEgdXNlciBpcyBzcGVjaWZpZWQgd2l0aG91dCBhIGdyb3VwLCB0aGUgcHJpbWFyeSBHSUQgZm9yIHRoYXQgdXNlciBpcyB1c2VkLgorV2hlbiB1c2luZyB0aGlzIG9wdGlvbgoreW91IG11c3QgcmVhbGl6ZSB0aGF0IHRoZSBwcmltYXJ5IGFuZCBzdXBwbGVtZW50YWwgZ3JvdXBzIGFyZSBzZXQgYXMgd2VsbCwKK2V2ZW4gaWYgdGhlCisuQiBcLVwtZ3JvdXAKK29wdGlvbiBpcyBub3Qgc3BlY2lmaWVkLiBUaGUKKy5CIFwtXC1ncm91cAorb3B0aW9uIGlzIG9ubHkgZm9yCitncm91cHMgdGhhdCB0aGUgdXNlciBpc24ndCBub3JtYWxseSBhIG1lbWJlciBvZiAobGlrZSBhZGRpbmcgcGVyIHByb2Nlc3MKK2dyb3VwIG1lbWJlcnNoaXAgZm9yIGdlbmVyaWMgdXNlcnMgbGlrZQorLkJSIG5vYm9keSApLgorLlRQCisuQlIgXC1yICIsICIgXC1cLWNocm9vdCAiIFxmSXJvb3RcZlAiCitDaGRpciBhbmQgY2hyb290IHRvCisuSSByb290CitiZWZvcmUgc3RhcnRpbmcgdGhlIHByb2Nlc3MuIFBsZWFzZSBub3RlIHRoYXQgdGhlIHBpZGZpbGUgaXMgYWxzbyB3cml0dGVuCithZnRlciB0aGUgY2hyb290LgorLlRQCisuQlIgXC1kICIsICIgXC1cLWNoZGlyICIgXGZJcGF0aFxmUCIKK0NoZGlyIHRvCisuSSBwYXRoCitiZWZvcmUgc3RhcnRpbmcgdGhlIHByb2Nlc3MuIFRoaXMgaXMgZG9uZSBhZnRlciB0aGUgY2hyb290IGlmIHRoZQorXGZCXC1yXGZQfFxmQlwtXC1jaHJvb3RcZlAgb3B0aW9uIGlzIHNldC4gV2hlbiBub3Qgc3BlY2lmaWVkLAorc3RhcnRcLXN0b3BcLWRhZW1vbiB3aWxsIGNoZGlyIHRvIHRoZSByb290IGRpcmVjdG9yeSBiZWZvcmUgc3RhcnRpbmcKK3RoZSBwcm9jZXNzLgorLlRQCisuQlIgXC1iICIsICIgXC1cLWJhY2tncm91bmQKK1R5cGljYWxseSB1c2VkIHdpdGggcHJvZ3JhbXMgdGhhdCBkb24ndCBkZXRhY2ggb24gdGhlaXIgb3duLiBUaGlzIG9wdGlvbgord2lsbCBmb3JjZQorLkIgc3RhcnRcLXN0b3BcLWRhZW1vbgordG8gZm9yayBiZWZvcmUgc3RhcnRpbmcgdGhlIHByb2Nlc3MsIGFuZCBmb3JjZSBpdCBpbnRvIHRoZSBiYWNrZ3JvdW5kLgorLkIgV0FSTklORzogc3RhcnRcLXN0b3BcLWRhZW1vbgorY2Fubm90IGNoZWNrIHRoZSBleGl0IHN0YXR1cyBpZiB0aGUgcHJvY2VzcyBmYWlscyB0byBleGVjdXRlIGZvcgorLkIgYW55CityZWFzb24uIFRoaXMgaXMgYSBsYXN0IHJlc29ydCwgYW5kIGlzIG9ubHkgbWVhbnQgZm9yIHByb2dyYW1zIHRoYXQgZWl0aGVyCittYWtlIG5vIHNlbnNlIGZvcmtpbmcgb24gdGhlaXIgb3duLCBvciB3aGVyZSBpdCdzIG5vdCBmZWFzaWJsZSB0byBhZGQgdGhlCitjb2RlIGZvciB0aGVtIHRvIGRvIHRoaXMgdGhlbXNlbHZlcy4KKy5UUAorLkJSIFwtTiAiLCAiIFwtXC1uaWNlbGV2ZWwgIiBcZklpbnRcZlAiCitUaGlzIGFsdGVycyB0aGUgcHJpb3JpdHkgb2YgdGhlIHByb2Nlc3MgYmVmb3JlIHN0YXJ0aW5nIGl0LgorLlRQCisuQlIgXC1QICIsICIgXC1cLXByb2NzY2hlZCAiIFxmSXBvbGljeVxmUFxmQjpcZlBcZklwcmlvcml0eVxmUCIKK1RoaXMgYWx0ZXJzIHRoZSBwcm9jZXNzIHNjaGVkdWxlciBwb2xpY3kgYW5kIHByaW9yaXR5IG9mIHRoZSBwcm9jZXNzIGJlZm9yZQorc3RhcnRpbmcgaXQuIFRoZSBwcmlvcml0eSBjYW4gYmUgb3B0aW9uYWxseSBzcGVjaWZpZWQgYnkgYXBwZW5kaW5nIGEgXGZCOlxmUAorZm9sbG93ZWQgYnkgdGhlIHZhbHVlLiBUaGUgZGVmYXVsdCBcZklwcmlvcml0eVxmUCBpcyAwLiBUaGUgY3VycmVudGx5CitzdXBwb3J0ZWQgcG9saWN5IHZhbHVlcyBhcmUgXGZCb3RoZXJcZlAsIFxmQmZpZm9cZlAgYW5kIFxmQnJyXGZQLgorLlRQCisuQlIgXC1JICIsICIgXC1cLWlvc2NoZWQgIiBcZkljbGFzc1xmUFxmQjpcZlBcZklwcmlvcml0eVxmUCIKK1RoaXMgYWx0ZXJzIHRoZSBJTyBzY2hlZHVsZXIgY2xhc3MgYW5kIHByaW9yaXR5IG9mIHRoZSBwcm9jZXNzIGJlZm9yZSBzdGFydGluZworaXQuIFRoZSBwcmlvcml0eSBjYW4gYmUgb3B0aW9uYWxseSBzcGVjaWZpZWQgYnkgYXBwZW5kaW5nIGEgXGZCOlxmUCBmb2xsb3dlZAorYnkgdGhlIHZhbHVlLiBUaGUgZGVmYXVsdCBcZklwcmlvcml0eVxmUCBpcyA0LCB1bmxlc3MgXGZJY2xhc3NcZlAgaXMgXGZCaWRsZVxmUCwKK3RoZW4gXGZJcHJpb3JpdHlcZlAgd2lsbCBhbHdheXMgYmUgNy4gVGhlIGN1cnJlbnRseSBzdXBwb3J0ZWQgdmFsdWVzIGZvcgorXGZJY2xhc3NcZlAgYXJlIFxmQmlkbGVcZlAsIFxmQmJlc3QtZWZmb3J0XGZQIGFuZCBcZkJyZWFsLXRpbWVcZlAuCisuVFAKKy5CUiBcLWsgIiwgIiBcLVwtdW1hc2sgIiBcZkltYXNrXGZQIgorVGhpcyBzZXRzIHRoZSB1bWFzayBvZiB0aGUgcHJvY2VzcyBiZWZvcmUgc3RhcnRpbmcgaXQuCisuVFAKKy5CUiBcLW0gIiwgIiBcLVwtbWFrZVwtcGlkZmlsZQorVXNlZCB3aGVuIHN0YXJ0aW5nIGEgcHJvZ3JhbSB0aGF0IGRvZXMgbm90IGNyZWF0ZSBpdHMgb3duIHBpZCBmaWxlLiBUaGlzCitvcHRpb24gd2lsbCBtYWtlCisuQiBzdGFydFwtc3RvcFwtZGFlbW9uCitjcmVhdGUgdGhlIGZpbGUgcmVmZXJlbmNlZCB3aXRoCisuQiBcLVwtcGlkZmlsZQorYW5kIHBsYWNlIHRoZSBwaWQgaW50byBpdCBqdXN0IGJlZm9yZSBleGVjdXRpbmcgdGhlIHByb2Nlc3MuIE5vdGUsIHRoZQorZmlsZSB3aWxsIG5vdCBiZSByZW1vdmVkIHdoZW4gc3RvcHBpbmcgdGhlIHByb2dyYW0uCisuQiBOT1RFOgorVGhpcyBmZWF0dXJlIG1heSBub3Qgd29yayBpbiBhbGwgY2FzZXMuIE1vc3Qgbm90YWJseSB3aGVuIHRoZSBwcm9ncmFtCitiZWluZyBleGVjdXRlZCBmb3JrcyBmcm9tIGl0cyBtYWluIHByb2Nlc3MuIEJlY2F1c2Ugb2YgdGhpcywgaXQgaXMgdXN1YWxseQorb25seSB1c2VmdWwgd2hlbiBjb21iaW5lZCB3aXRoIHRoZQorLkIgXC1cLWJhY2tncm91bmQKK29wdGlvbi4KKy5UUAorLkJSIFwtdiAiLCAiIFwtXC12ZXJib3NlCitQcmludCB2ZXJib3NlIGluZm9ybWF0aW9uYWwgbWVzc2FnZXMuCisuCisuU0ggRVhJVCBTVEFUVVMKKy5UUAorLkIgMAorVGhlIHJlcXVlc3RlZCBhY3Rpb24gd2FzIHBlcmZvcm1lZC4gSWYKKy5CIFwtXC1va25vZG8KK3dhcyBzcGVjaWZpZWQsIGl0J3MgYWxzbyBwb3NzaWJsZSB0aGF0IG5vdGhpbmcgaGFkIHRvIGJlIGRvbmUuCitUaGlzIGNhbiBoYXBwZW4gd2hlbgorLkIgXC1cLXN0YXJ0Cit3YXMgc3BlY2lmaWVkIGFuZCBhIG1hdGNoaW5nIHByb2Nlc3Mgd2FzIGFscmVhZHkgcnVubmluZywgb3Igd2hlbgorLkIgXC1cLXN0b3AKK3dhcyBzcGVjaWZpZWQgYW5kIHRoZXJlIHdlcmUgbm8gbWF0Y2hpbmcgcHJvY2Vzc2VzLgorLlRQCisuQiAxCitJZgorLkIgXC1cLW9rbm9kbword2FzIG5vdCBzcGVjaWZpZWQgYW5kIG5vdGhpbmcgd2FzIGRvbmUuCisuVFAKKy5CIDIKK0lmCisuQiBcLVwtc3RvcAorYW5kCisuQiBcLVwtcmV0cnkKK3dlcmUgc3BlY2lmaWVkLCBidXQgdGhlIGVuZCBvZiB0aGUgc2NoZWR1bGUgd2FzIHJlYWNoZWQgYW5kIHRoZSBwcm9jZXNzZXMgd2VyZQorc3RpbGwgcnVubmluZy4KKy5UUAorLkIgMworQW55IG90aGVyIGVycm9yLgorLlBQCitXaGVuIHVzaW5nIHRoZSBcZkJcLVwtc3RhdHVzXGZQIGNvbW1hbmQsIHRoZSBmb2xsb3dpbmcgc3RhdHVzIGNvZGVzIGFyZQorcmV0dXJuZWQ6CisuVFAKKy5CIDAKK1Byb2dyYW0gaXMgcnVubmluZy4KKy5UUAorLkIgMQorUHJvZ3JhbSBpcyBub3QgcnVubmluZyBhbmQgdGhlIHBpZCBmaWxlIGV4aXN0cy4KKy5UUAorLkIgMworUHJvZ3JhbSBpcyBub3QgcnVubmluZy4KKy5UUAorLkIgNAorVW5hYmxlIHRvIGRldGVybWluZSBwcm9ncmFtIHN0YXR1cy4KKy4KKy5TSCBFWEFNUExFCitTdGFydCB0aGUgXGZCZm9vZFxmUCBkYWVtb24sIHVubGVzcyBvbmUgaXMgYWxyZWFkeSBydW5uaW5nIChhIHByb2Nlc3MgbmFtZWQKK2Zvb2QsIHJ1bm5pbmcgYXMgdXNlciBmb29kLCB3aXRoIHBpZCBpbiBmb29kLnBpZCk6CisuSVAKKy5uZgorc3RhcnRcLXN0b3BcLWRhZW1vbiBcLVwtc3RhcnQgXC1cLW9rbm9kbyBcLVwtdXNlciBmb29kIFwtXC1uYW1lIGZvb2QgXC1cLXBpZGZpbGUgL3Zhci9ydW4vZm9vZC5waWQgXC1cLXN0YXJ0YXMgL3Vzci9zYmluL2Zvb2QgXC1cLWNodWlkIGZvb2QgXC1cLSBcLVwtZGFlbW9uCisuZmkKKy5QUAorU2VuZCBcZkJTSUdURVJNXGZQIHRvIFxmQmZvb2RcZlAgYW5kIHdhaXQgdXAgdG8gNSBzZWNvbmRzIGZvciBpdCB0byBzdG9wOgorLklQCisubmYKK3N0YXJ0XC1zdG9wXC1kYWVtb24gXC1cLXN0b3AgXC1cLW9rbm9kbyBcLVwtdXNlciBmb29kIFwtXC1uYW1lIGZvb2QgXC1cLXBpZGZpbGUgL3Zhci9ydW4vZm9vZC5waWQgXC1cLXJldHJ5IDUKKy5maQorLlBQCitEZW1vbnN0cmF0aW9uIG9mIGEgY3VzdG9tIHNjaGVkdWxlIGZvciBzdG9wcGluZyBcZkJmb29kXGZQOgorLklQCisubmYKK3N0YXJ0XC1zdG9wXC1kYWVtb24gXC1cLXN0b3AgXC1cLW9rbm9kbyBcLVwtdXNlciBmb29kIFwtXC1uYW1lIGZvb2QgXC1cLXBpZGZpbGUgL3Zhci9ydW4vZm9vZC5waWQgXC1cLXJldHJ5PVRFUk0vMzAvS0lMTC81CisuZmkKKy5QUAorLgorLlNIIEFVVEhPUlMKK01hcmVrIE1pY2hhbGtpZXdpY3ogPG1hcmVrbUBpMTdsaW51eGIuaXN0cy5wd3Iud3JvYy5wbD4gYmFzZWQgb24KK2EgcHJldmlvdXMgdmVyc2lvbiBieSBJYW4gSmFja3NvbiA8aWFuQGNoaWFyay5ncmVlbmVuZC5vcmcudWs+LgorCitNYW51YWwgcGFnZSBieSBLbGVlIERpZW5lcyA8a2xlZUBtaXQuZWR1PiwgcGFydGlhbGx5IHJlZm9ybWF0dGVkCitieSBJYW4gSmFja3Nvbi4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL3N2L2RlYi1jb250cm9sLjUgYi9kcGtnLTEuMTYuMS4xL21hbi9zdi9kZWItY29udHJvbC41Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmI0ZjQzYjcKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9zdi9kZWItY29udHJvbC41CkBAIC0wLDAgKzEsMjM4IEBACisuXCIgQXV0aG9yOiBSYXVsIE1pbGxlcgorLlwiIEluY2x1ZGVzIHRleHQgZnJvbSB0aGUgZGViaWFuIEd1aWRlbGluZXMgYnkgSWFuIEphY2tzb24sIElhbiBNdXJkb2NrCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkZWJcLWNvbnRyb2wgNSAyMDExXC0wOFwtMTQgRGViaWFucHJvamVrdGV0IERlYmlhbgorLlNIIE5BTU4KK2RlYlwtY29udHJvbCBcLSBEZWJpYW5zIGZpbGZvcm1hdCBm9nIgcGFrZXRzdHlyZmlsZXIKKy4KKy5TSCBTWU5PUFMKK2NvbnRyb2wKKy4KKy5TSCBCRVNLUklWTklORworVmFyamUgRGViaWFucGFrZXQgaW5uZWjlbGxlciBodXZ1ZHN0eXJmaWxlbiAiY29udHJvbCIsIHZpbGtlbiBpIHNpZworaW5uZWjlbGxlciBldHQgYW50YWwgZuRsdCwgZWxsZXIga29tbWVudGFyZXIgZORyIHJhZGVybmEgaW5sZWRzIG1lZAorXGZCIiMiXGZQLiBWYXJqZSBm5Gx0IGL2cmphciBtZWQgZW4gZXRpa2V0dCwgc+Vzb20gXGZCUGFja2FnZVxmUCBlbGxlciBcZkJWZXJzaW9uXGZQCisoc2tpZnRs5Gdlc29iZXJvZW5kZSksIGb2bGp0IGF2IGV0dCBrb2xvbnRlY2tlbiBvY2ggZuRsdGV0cyBrcm9wcC4gRuRsdAorYXZkZWxhcyBlbmRhc3QgYXYgZuRsdGV0aWtldHRlci4gTWVkIGFuZHJhIG9yZCBrYW4gdGV4dGVuIGkgZuRsdGVuIHNw5G5uYQor9nZlciBmbGVyYSByYWRlciwgbWVuIGluc3RhbGxhdGlvbnN2ZXJrdHlnZW4ga29tbWVyIG9mdGFzdCBhdHQgc2zlIHNhbW1hbgorcmFkZXIgbuRyIGtyb3BwZW4gdG9sa2FzIChm9nJ1dG9tIGkgZmFsbGV0IGb2ciBcZkJEZXNjcmlwdGlvblxmUFwtZuRsdGV0LCBzZQorbmVkYW4pLgorLgorLlNIICJO1kRWxE5ESUdBIEbETFQiCisuVFAgCitcZkJQYWNrYWdlOlxmUFxmSSBwYWtldG5hbW5cZlAKK1bkcmRldCBw5SBm5Gx0ZXQgYmVzdORtbWVyIHBha2V0ZXRzIG5hbW4sIG9jaCBhbnbkbmRzIGF2IGRlIGZsZXN0YQoraW5zdGFsbGF0aW9uc3Zlcmt0eWdlbiBm9nIgYXR0IGdlbmVyZXJhIGZpbG5hbW5lbi4KKy5UUCAKK1xmQlZlcnNpb246XGZQXGZJIHZlcnNpb25zc3Ry5G5nXGZQCitWYW5saWd0dmlzIORyIGRldHRhIGRldCB1cnNwcnVuZ2xpZ2EgcGFrZXRldHMgdmVyc2lvbnNudW1tZXIgcOUgZGVuIGZvcm0KK3Byb2dyYW1tZXRzIGb2cmZhdHRhcmUgYW525G5kZXIuIERlbiBrYW4g5HZlbiBpbm5laOVsbGEgZXR0CitEZWJpYW51cHBkYXRlcmluZ3NudW1tZXIgKGb2ciBwYWtldCB2YXJzIGvkbGxhIORyIHV0YW5m9nIgRGViaWFuKS4gRXhha3QKK2Zvcm1hdCBvY2ggc29ydGVyaW5nc2FsZ29yaXRtIGJlc2tyaXZzIGkgXGZCZGViXC12ZXJzaW9uXGZQKDUpLgorLlRQIAorXGZCTWFpbnRhaW5lcjpcZlBcZkkgZnVsbHRcLW5hbW4gZVwtcG9zdFxmUAorU2thbGwgdmFyYSBw5SBmb3JtYXRldCAiSm9lIEJsb2dncyA8amJsb2dnc0Bmb28uY29tPiIgb2NoIORyIG5vcm1hbHQKK3NldHQgZGVuIHBlcnNvbiBzb20gc2thcGF0IHBha2V0ZXQsIHRpbGwgc2tpbGxuYWQgZnLlbiBm9nJmYXR0YXJlbiBhdiBkZW4KK3Byb2dyYW12YXJhIHNvbSBwYWtldGVyYWRlcy4KKy5UUCAKK1xmQkRlc2NyaXB0aW9uOlxmUFxmSSBrb3J0XC1iZXNrcml2bmluZ1xmUAorXGZCIFxmUFxmSWzlbmdcLWJlc2tyaXZuaW5nXGZQCisuYnIKK0Zvcm1hdGV0IGb2ciBwYWtldGJlc2tyaXZuaW5nZW4g5HIgZW4ga29ydGZhdHRhZCBzYW1tYW5mYXR0bmluZyBw5SBkZW4KK2b2cnN0YSByYWRlbiAoZWZ0ZXIgIkRlc2NyaXB0aW9uIlwtZuRsdGV0KS4gRvZsamFuZGUgcmFkZXIgYvZyIGFuduRuZGFzIGb2cgorZW4gbORuZ3JlLCBtZXIgZGV0YWxqZXJhZCBiZXNrcml2bmluZy4gVmFyamUgcmFkIGkgZGVuIGzkZ3JlIGJlc2tyaXZuaW5nZW4KK23lc3RlIGlubGVkYXMgbWVkIGV0dCBibGFua3N0ZWcsIG9jaCBibGFua2EgcmFkZXIgaSBkZW4gbOVuZ2EgYmVza3Jpdm5pbmdlbgorbeVzdGUgaW5uZWjlbGxhIGVuIGVuc2FtIHB1bmt0ICgiLiIpIGVmdGVyIGRldCBpbmxlZGFuZGUgYmxhbmtzdGVnZXQuCisuCisuU0ggIlZBTEZSSUEgRsRMVCIKKy5UUCAKK1xmQlNlY3Rpb246XGZQXGZJIHNla3Rpb25cZlAKK0RldHRhIORyIGV0dCBnZW5lcmVsbHQgZuRsdCBzb20gZ2VyIHBha2V0ZXQgZW4ga2F0ZWdvcmkgYmFzZXJhdCBw5QorcHJvZ3JhbXZhcmEgc29tIGRldCBpbnN0YWxsZXJhci4gTuVncmEgdmFubGlnYSBzZWt0aW9uZXIg5HIgInV0aWxzIiwgIm5ldCIsCisibWFpbCIsICJ0ZXh0IiwgIngxMSIgb3N2LgorLlRQIAorXGZCUHJpb3JpdHk6XGZQXGZJIHByaW9yaXRldFxmUAorU3TkbGxlciBpbiBodXIgdmlrdGlndCBwYWtldGV0IORyIGrkbWb2cnQgbWVkIHN5c3RlbWV0IHNvbSBlbmhldC4gIFZhbmxpZ2EKK3ByaW9yaXRldGVyIORyICJyZXF1aXJlZCIgKG72ZHbkbmRpZyksICJzdGFuZGFyZCIgKG5vcm1hbCksICJvcHRpb25hbCIKKyh2YWxmcml0dCksICJleHRyYSIgKGV4dHJhKSBvc3YuCisuTFAKK0kgRGViaWFuIGhhciBm5Gx0ZW4gXGZCU2VjdGlvblxmUCBvY2ggXGZCUHJpb3JpdHlcZlAgZW4gZGVmaW5pZXJhZCB1cHBz5HR0bmluZworYWNjZXB0ZXJhZGUgduRyZGVuIGJhc2VyYWRlIHDlIHBvbGljeW1hbnVhbGVuLiBFbiBm9nJ0ZWNrbmluZyD2dmVyIGRlc3NhCit25HJkZW4gZmlubnMgaSBkZW4gc2VuYXN0ZSB2ZXJzaW9uZW4gYXYgcGFrZXRldCBcZkJkZWJpYW5cLXBvbGljeVxmUC4KKy5UUCAKK1xmQkVzc2VudGlhbDpcZlAgXGZCeWVzXGZQfFxmQm5vXGZQCitG5Gx0ZXQga3LkdnMgbm9ybWFsdCBzZXR0IGVuZGFzdCBvbSBzdmFyZXQg5HIgXGZCeWVzXGZQIChqYSksIG9jaCBiZXRlY2tuYXIgYXR0CitwYWtldGV0IGty5HZzIGb2ciBlbiBrb3JyZWt0IGluc3RhbGxhdGlvbiBhdiBzeXN0ZW1ldC4gRHBrZyBvY2ggYW5kcmEKK2luc3RhbGxhdGlvbnN2ZXJrdHlnIHRpbGzldGVyIGludGUgYXR0IGV0dCBwYWtldCBt5HJrdCBcZkJFc3NlbnRpYWxcZlAgdGFzIGJvcnQKKyjldG1pbnN0b25lIGludGUgdXRhbiBhdHQgYW525G5kYSBlbiBhdiBkZSB0dmluZ2FuZGUgZmxhZ2dvcm5hKS4KKy5UUCAKK1xmQkFyY2hpdGVjdHVyZTpcZlAgXGZJYXJraXRla3R1clxmUHxcZkJhbGxcZlAKK0Fya2l0ZWt0dXJlbiBhbmdlciB2aWxrZW4gc29ydHMgbWFza2ludmFyYSBwYWtldGV0IGtvbXBpbGVyYWRlcyBm9nIuIFZhbmxpZ2EKK2Fya2l0ZWt0dXJlciDkciAiaTM4NiIsICJtNjhrIiwgInNwYXJjIiwgImFscGhhIiwgInBvd2VycGMiIG9zdi4gIE9ic2VydmVyYQorYXR0IHbkcmRldCBcZkJhbGxcZlAg5HIgYXZzZXR0IGb2ciBwYWtldCBzb20g5HIgb2Jlcm9lbmRlIGF2CithcmtpdGVrdHVyLiBFeGVtcGVsIHDlIGRldHRhIORyIHNrYWxcLSBlbGxlciBQZXJsc2tyaXB0IG9jaCBkb2t1bWVudGF0aW9uLgorLlRQIAorXGZCT3JpZ2luOlxmUFxmSSBuYW1uXGZQCitOYW1uZXQgcOUgZGVuIGRpc3RyaWJ1dGlvbiBwYWtldGV0IGjkcnN0YW1tYXIgZnLlbi4KKy5UUCAKK1xmQkJ1Z3M6XGZQXGZJIHVybFxmUAorXGZJVVJMXGZQOmVuIHRpbGwgZmVscmFwcG9ydGVyaW5nc3N5c3RlbWV0IGb2ciBkZXR0YSBwYWtldC4gRGV0IG51dmFyYW5kZQorZm9ybWF0ZXQg5HIgXGZJc3lzdGVtdHlwXGZQXGZCOi8vXGZQXGZJYWRyZXNzXGZQLCB0aWxsIGV4ZW1wZWwKK1xmQmRlYmJ1Z3M6Ly9idWdzLmRlYmlhbi5vcmdcZlAuCisuVFAgCitcZkJIb21lcGFnZTpcZlBcZkkgdXJsXGZQCitVUkwgdGlsbCB1cHBzdHL2bXNwcm9qZWt0ZXRzIGhlbXNpZGVcLVxmSXVybFxmUC4KKy5UUCAKK1xmQlRhZzpcZlBcZkkgbGlzdGFcLW1lZFwtbeRya2VuXGZQCitMaXN0YSD2dmVyIG3kcmtlbiBzb20gYmVza3JpdmVyIHBha2V0ZXRzIGVnZW5za2FwZXIuIEVuIGJlc2tyaXZuaW5nZW4gb2NoCitm9nJ0ZWNrbmluZyD2dmVyIGvkbmRhIG3kcmtlbiBmaW5ucyBpIHBha2V0ZXQgXGZCZGVidGFnc1xmUC4KKy5UUCAKK1xmQk11bHRpXC1BcmNoOlxmUCBcZkJzYW1lXGZQfFxmQmZvcmVpZ25cZlB8XGZCYWxsb3dlZFxmUAorRGV0IGjkciBm5Gx0ZXQgYW525G5kcyBm9nIgYXR0IGFuZ2UgaHVyIHBha2V0ZXQgc2thbGwgZnVuZ2VyYSBw5SBlbgorZmxlcmFya2l0ZWt0dXJzaW5zdGFsbGF0aW9uLiBW5HJkZXQgXGZCc2FtZVxmUCAoc2FtbWEpIGJldHlkZXIgYXR0IHBha2V0IGthbgorc2FtaW5zdGFsbGVyYXMgbWVkIHNpZyBzauRsdnQsIG1lbiBrYW4gaW50ZSBhbnbkbmRhcyBm9nIgYXR0IHVwcGZ5bGxhCitiZXJvZW5kZW4gZvZyIHBha2V0IG1lZCBlbiBhbm5hbiBhcmtpdGVrdHVyIORuIHNpZyBzauRsdnQuIFbkcmRldCBcZkJmb3JlaWduXGZQCisoZnLkbW1hbmRlKSBiZXR5ZGVyIGF0dCBwYWtldGV0IGludGUga2FuIHNhbWluc3RhbGxlcmFzIG1lZCBzaWcgc2rkbHZ0LCBtZW4KK2F0dCBkZXQga2FuIGFuduRuZGFzIGb2ciBhdHQgdXBwZnlsbGEgYmVyb2VuZGVuIGb2ciBwYWtldCBtZWQgZW4gYW5uYW4KK2Fya2l0ZWt0dXIg5G4gc2lnIHNq5Gx2dC4gVuRyZGV0IFxmQmFsbG93ZWRcZlAgKHRpbGzldGV0KSB0aWxs5XRlciBhdHQgb2125G5kYQorYmVyb2VuZGVuIGthbiBhbmdlIGkgc2luYSBEZXBlbmRzXC1m5Gx0IGF0dCBkZSBiZWj2dmVyIGV0dCBwYWtldCBmcuVuIGVuCitmcuRtbWFuZGUgYXJraXRla3R1ciwgbWVuIGhhciBpIPZ2cmlndCBpbmdlbiBmdW5rdGlvbi4gRuRsdGV0IGL2ciBpbnRlCitm9nJla29tbWEgaSBwYWtldCBtZWQgZuRsdGV0IFxmQkFyY2hpdGVjdHVyZTogYWxsXGZQLgorLlRQIAorXGZCU291cmNlOlxmUFxmSSBr5Gxsa29kc25hbW5cZlAKK05hbW5ldCBw5SBkZXQga+RsbGtvZHNwYWtldCBzb20gYmlu5HJwYWtldGV0IGtvbW1lciBmcuVuLCBvbSBkZXQgc2tpbGplciBzaWcKK2Zy5W4gbmFtbmV0IHDlIHNq5Gx2YSBwYWtldGV0LgorCisuVFAgCisuUEQgMAorXGZCU3ViYXJjaGl0ZWN0dXJlOlxmUFxmSSB25HJkZVxmUAorLlRQIAorLlBEIDAKK1xmQktlcm5lbFwtVmVyc2lvbjpcZlBcZkkgduRyZGVcZlAKKy5UUCAKKy5QRAorXGZCSW5zdGFsbGVyXC1NZW51XC1JdGVtOlxmUFxmSSB25HJkZVxmUAorRGVzc2EgZuRsdCBhbnbkbmRzIGF2IGRlYmlhblwtaW5zdGFsbGVyIG9jaCBiZWj2dnMgbm9ybWFsdCBpbnRlLiBTZQorL3Vzci9zaGFyZS9kb2MvZGViaWFuXC1pbnN0YWxsZXIvZGV2ZWwvbW9kdWxlcy50eHQgZnLlbiBwYWtldGV0CitcZkJkZWJpYW5cLWluc3RhbGxlclxmUCBm9nIgbWVyIGluZm9ybWF0aW9uIG9tIGRlbS4KKworLlRQIAorXGZCRGVwZW5kczpcZlBcZkkgcGFrZXRsaXN0YVxmUAorTGlzdGEg9nZlciBwYWtldCBzb20ga3LkdnMgZvZyIGF0dCBwYWtldGV0IHNrYWxsIGt1bm5hIHRpbGxoYW5kYWjlbGxhIGVuCitpY2tlXC10cml2aWFsIG3kbmdkIGZ1bmt0aW9uYWxpdGV0LiBQYWtldGhhbnRlcmluZ3Nwcm9ncmFtdmFyYW4ga29tbWVyIGludGUKK3RpbGzldGEgYXR0IGV0dCBwYWtldCBpbnN0YWxsZXJhcyBvbSBwYWtldGVuIHNvbSBsaXN0YXMgaSBcZkJEZXBlbmRzXGZQXC1m5Gx0ZXQKK2ludGUg5HIgaW5zdGFsbGVyYWRlICjldG1pbnN0b25lIGludGUgdXRhbiBhdHQgYW525G5kYSBlbiBhdiBkZSB0dmluZ2FuZGUKK2ZsYWdnb3JuYSkuIFZpZCBlbiBpbnN0YWxsYXRpb24ga/ZycyBwb3N0aW5zdFwtc2tyaXB0ZW4gaSBwYWtldGVuIGkKK0RlcGVuZHM6XC1m5Gx0ZW4gaW5uYW4gZGUgcGFrZXQgc29tIGJlcm9yIHDlIGRlbS4gVW5kZXIgZGV0IG9tduRuZGEKK2b2cmjlbGxhbmRldCwgZW4gYm9ydHRhZ25pbmcsIGv2cnMgcHJlcm1cLXNrcmlwdGV0IGkgZXR0IHBha2V0IGlubmFuIGRlIHNvbQorZmlubnMgaSBkZXNzIERlcGVuZHM6XC1m5Gx0LgorLlRQIAorXGZCUHJlXC1EZXBlbmRzOlxmUFxmSSBwYWtldGxpc3RhXGZQCitMaXN0YSD2dmVyIHBha2V0IHNvbSBt5XN0ZSB2YXJhIGluc3RhbGxlcmFkZSBcZkJvY2hcZlAga29uZmlndXJlcmFkZSBpbm5hbgorcGFrZXRldCBrYW4gaW5zdGFsbGVyYXMuIERldHRhIGFuduRuZHMgbm9ybWFsdCBpIGRlIGZhbGwgcGFrZXRldCBrcuR2ZXIgYXR0CitldHQgYW5uYXQgcGFrZXQg5HIgaW5zdGFsbGVyYXQgZvZyIHNpdHQgcHJlaW5zdFwtc2tyaXB0LgorLlRQIAorXGZCUmVjb21tZW5kczpcZlBcZkkgcGFrZXRsaXN0YVxmUAorTGlzdGEg9nZlciBwYWtldCBzb20gYvZyIGluc3RhbGxlcmFzIHRpbGxzYW1tYW5zIG1lZCBwYWtldGV0IGkgZGUgYWxscmEKK2ZsZXN0YSBmYWxsLiAgUGFrZXRoYW50ZXJpbmdzcHJvZ3JhbXZhcmFuIGtvbW1lciBhdHQgdmFybmEgYW525G5kYXJlbiBvbSBtYW4KK2luc3RhbGxlcmFyIGV0dCBwYWtldCB1dGFuIGRlIHNvbSBsaXN0YXMgaSBcZkJSZWNvbW1lbmRzXGZQXC1m5Gx0ZXQuCisuVFAgCitcZkJTdWdnZXN0czpcZlBcZkkgcGFrZXRsaXN0YVxmUAorTGlzdGEg9nZlciBwYWtldCBzb20g5HIgcmVsYXRlcmFkZSB0aWxsIHBha2V0ZXQgb2NoIHNvbSBrYW5za2Uga2FuIGf2cmEgZGV0CittZXIgYW525G5kYmFydCwgbWVuIHV0YW4gdmlsa2EgZGV0IGZvcnRmYXJhbmRlIORyIHJpbWxpZ3QgYXR0IGluc3RhbGxlcmEKK3Bha2V0ZXQuCisuTFAKK1N5bnRheGVuIGb2ciBm5Gx0ZW4gXGZCRGVwZW5kc1xmUCwgXGZCUHJlXC1EZXBlbmRzXGZQLCBcZkJSZWNvbW1lbmRzXGZQIG9jaAorXGZCU3VnZ2VzdHNcZlAg5HIgZW4gbGlzdGEgbWVkIGdydXBwZXIgYXYgYWx0ZXJuYXRpdmEgcGFrZXQuIFZhcmplIGdydXBwCitpbm5laOVsbGVyIGVuIGxpc3RhIG1lZCBwYWtldCBhdmRlbGFkZSBtZWQgZXR0IHZlcnRpa2Fsc3RyZWNrIChy9nIpICgifCIpLgorR3J1cHBlcm5hIGF2ZGVsYXMgbWVkIGtvbW1hdGVja2VuLiBLb21tYSB1dGzkc2VzIHNvbSAiT0NIIiwgb2NoCit2ZXJ0aWthbHN0cmVja2VuIHNvbSAiRUxMRVIiLCBk5HIgdmVydGlrYWxzdHJlY2tlbiBiaW5kZXIgaOVyZGFyZS4gVmFyamUKK3Bha2V0bmFtbiBrYW4gZXZlbnR1ZWxsdCBm9mxqYXMgYXYgZW4gdmVyc2lvbnNudW1tZXJhbmdpdmVsc2UgaW5vbQorcGFyZW50ZXNlci4KKy5MUAorRXR0IHZlcnNpb25zbnVtbWVyIGthbiBi9nJqYSBtZWQgIj4+Iiwgdmlsa2V0IGJldHlkZXIgYXR0IHZpbGtlbiBzb20KK2hlbHN0IHNlbmFyZSB2ZXJzaW9uIG1hdGNoYXIsIGTkciBkZXQg5HIgdmFsZnJpdHQgYXR0IGFuZ2UKK0RlYmlhbnVwcGRhdGVyaW5nZW4gKGF2ZGVsYWQgbWVkIGJpbmRlc3RyZWNrKS4gIFRpbGzldG5hIHZlcnNpb25yZWxhdGlvbmVyCivkciAiPj4iIGb2ciBzdPZycmUg5G4sICI8PCIgZvZyIG1pbmRyZSDkbiwgIj49IiBm9nIKK3N09nJyZSDkbiBlbGxlciBsaWthIG1lZCIsICI8PSIgZvZyIG1pbmRyZSDkbiBlbGxlciBsaWthIG1lZCwgb2NoICI9IgorZvZyIGxpa2EgbWVkLgorLlRQIAorXGZCQnJlYWtzOlxmUFxmSSBwYWtldGxpc3RhXGZQCitMaXN0YXIgcGFrZXQgc29tIGb2cnN09nJzIGF2IGRldHRhLCB0aWxsIGV4ZW1wZWwgZ2Vub20gYXR0IGx5ZnRhIGZyYW0gZmVsCitu5HIgZGV0IG5hbW5naXZuYSBwYWtldGV0IGJlcm9yIHDlIGRldHRhLiBQYWtldGhhbnRlcmluZ3Nwcm9ncmFtdmFyYW4KK3RpbGzldGVyIGludGUgYXR0IGb2cnN09nJkYSBwYWtldCBrb25maWd1cmVyYXM7IHByb2JsZW1ldCBs9nNlcyB2YW5saWd0dmlzCitnZW5vbSBhdHQgdXBwZ3JhZGVyYSBwYWtldGVuIHNvbSBuYW1uZ2VzIGkgZXR0IFxmQkJyZWFrc1xmUFwtZuRsdC4KKy5UUCAKK1xmQkNvbmZsaWN0czpcZlBcZkkgdlxmUAorTGlzdGFyIHBha2V0IHNvbSDkciBpIGtvbmZsaWt0IChrcm9ja2FyKSBtZWQgZGV0dGEsIHRpbGwgZXhlbXBlbCBnZW5vbSBhdHQKK2lubmVo5WxsYSBmaWxlciBtZWQgc2FtbWEgbmFtbi4gUGFrZXRoYW50ZXJpbmdzcHJvZ3JhbXZhcmFuIHRpbGzldGVyIGludGUKK3R25SBz5WRhbmEgcGFrZXQgYXR0IHZhcmEgaW5zdGFsbGVyYWRlIHNhbXRpZGlndC4gVHblIHBha2V0IG1lZCBpbmL2cmRlcwora29uZmxpa3QgYvZyIGlubmVo5WxsYSBlbiBcZkJDb25mbGljdHNcZlBcLXJhZCBtZWQgdmFyYW5kcmFzIG5hbW4uCisuVFAgCitcZkJSZXBsYWNlczpcZlBcZkkgcGFrZXRsaXN0YVxmUAorTGlzdGEg9nZlciBwYWtldCBlcnPkdHRzIGF2IGZpbGVyIGZy5W4gZGV0IGjkciBwYWtldGV0LiBEZXR0YSBhbnbkbmRzIGb2cgorYXR0IG32amxpZ2f2cmEgcGFrZXQgYXR0IHNrcml2YSD2dmVyIGZpbGVyIGZy5W4gYW5kcmEgcGFrZXQsIG9jaCBhbnbkbmRzCitub3JtYWx0IHNldHQgdGlsbHNhbW1hbnMgbWVkIFxmQkNvbmZsaWN0c1xmUFwtZuRsdGV0IGb2ciBhdHQgdHZpbmdhIGZyYW0KK2JvcnR0YWduaW5nIGF2IGRldCBhbmRyYSBwYWtldGV0IG9tIOR2ZW4gZGV0IGjkciBoYXIgZGUgZmlsZXIgc29tIGZpbm5zIGkKK3Bha2V0ZXQgZGV0IHN05XIgaSBrb25mbGlrdCBtZWQuCisuVFAgCitcZkJQcm92aWRlczpcZlBcZkkgcGFrZXRsaXN0YVxmUAorRGV0dGEg5HIgZW4gbGlzdGEgYXYgdmlydHVlbGxhIHBha2V0IHNvbSB0aWxsaGFuZGFo5WxscyBhdiBkZXR0YS4gTm9ybWFsdAorc2V0dCBhbnbkbmRzIGRldHRhIGkgZGUgZmFsbCBmbGVyYSBwYWtldCB0aWxsaGFuZGFo5WxsZXIgc2FtbWEgdGrkbnN0LiBUaWxsCitleGVtcGVsIGthbiBi5WRlIHNlbmRtYWlsIG9jaCBleGltIGZ1bmdlcmEgc29tIGVcLXBvc3RzZXJ2ZXIsIHPlIGRlCit0aWxsaGFuZGFo5WxsZXIgZXR0IGdlbWVuc2FtdCBwYWtldCAoIm1haWxcLXRyYW5zcG9ydFwtYWdlbnQiKSBw5SB2aWxrZXQgYW5kcmEKK3Bha2V0IGthbiBiZXJvLCB2aWxrZXQgZ/ZyIGRldCBt9mpsaWd0IGb2ciBzZW5kbWFpbCBlbGxlciBleGltIGF0dCBmdW5nZXJhCitzb20gZXR0IGFsdGVybmF0aXYgc29tIHRpbGxmcmVkc3N05GxsZXIgYmVyb2VuZGV0LiBEZXR0YSBm9nJoaW5kcmFyIGF0dAorcGFrZXQgc29tIGJlcm9yIHDlIGVuIGVcLXBvc3RzZXJ2ZXIgbeVzdGUga+RubmEgdGlsbCBhbGxhIGRlcmFzIHBha2V0bmFtbiBvY2gKK2FuduRuZGEgInwiIGb2ciBhdHQgZGVsYSBhdiBsaXN0YW4uCisuTFAKK1N5bnRheGVuIGb2ciBcZkJCcmVha3NcZlAsIFxmQkNvbmZsaWN0c1xmUCwgXGZCUmVwbGFjZXNcZlAgb2NoIFxmQlByb3ZpZGVzXGZQIORyIGVuCitsaXN0YSD2dmVyIHBha2V0bmFtbiBhdmRlbGFkZSBtZWQga29tbWFuIChvY2ggZXZlbnR1ZWxsYSBibGFua3RlY2tlbikuIEkKK2bkbHRlbiBcZkJCcmVha3NcZlAgb2NoIFxmQkNvbmZsaWN0c1xmUCBs5HNlcyBrb21tYXRlY2tuZXQgc29tICJFTExFUiIuIEV0dAorZXZlbnR1ZWxsdCB2ZXJzaW9uc251bW1lciBrYW4g5HZlbiBhbmdlcywgbWVkIHNhbW1hIHN5bnRheCBzb20gb3ZhbiBm9nIKK2bkbHRlbiBcZkJCcmVha3NcZlAsIFxmQkNvbmZsaWN0c1xmUCBvY2ggXGZCUmVwbGFjZXNcZlAuCisuCisuVFAgCitcZkJCdWlsdFwtVXNpbmc6XGZQXGZJIHBha2V0bGlzdGFcZlAKK0bkbHRldCB2aXNhciB5dHRlcmxpZ2FyZSBr5Gxsa29kc3Bha2V0IHNvbSBhbnbkbmRlcyBu5HIgYmlu5HJwYWtldGV0CitieWdnZGVzLiBEZXR0YSBhbmdlciBm9nIgaGFudGVyaW5nc3Byb2dyYW12YXJhbiBm9nIgYXJraXZldCBhdHQgZGVzc2EKK3l0dGVybGlnYXJlIGvkbGxrb2RzcGFrZXQgbeVzdGUgYmVo5WxsYXMgc+UgbORuZ2UgYmlu5HJwYWtldGV0IGZpbm5zIGkKK2Fya2l2ZXQuIEbkbHRldCBt5XN0ZSBpbm5laOVsbGEgZW4gbGlzdGEgbWVkIGvkbGxrb2RzcGFrZXQgbWVkIHN0cmlrdGEgKD0pCit2ZXJzaW9uc2Jlcm9lbmRlbi4gT2JzZXJ2ZXJhIGF0dCBoYW50ZXJpbmdzcHJvZ3JhbXZhcmFuIGb2ciBhcmtpdmV0IHRyb2xpZ2VuCitrb21tZXIgYXR0IGF2dmlzYSBlbiBpbnPkbmRuaW5nIHNvbSBkZWtsYXJlcmFyIGVuIFxmQkJ1aWx0XC1Vc2luZ1xmUFwtcmVsYXRpb24KK3NvbSBpbnRlIGthbiB1cHBmeWxsYXMgaW5vbSBhcmtpdmV0LgorLgorLlNIIEVYRU1QRUwKKy5cIiAuUlMKKy5uZgorIyBLb21tZW50YXIKK1BhY2thZ2U6IGdyZXAKK0Vzc2VudGlhbDogeWVzCitQcmlvcml0eTogcmVxdWlyZWQKK1NlY3Rpb246IGJhc2UKK01haW50YWluZXI6IFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CitBcmNoaXRlY3R1cmU6IHNwYXJjCitWZXJzaW9uOiAyLjRcLTEKK1ByZVwtRGVwZW5kczogbGliYzYgKD49IDIuMC4xMDUpCitQcm92aWRlczogcmdyZXAKK0NvbmZsaWN0czogcmdyZXAKK0Rlc2NyaXB0aW9uOiBHTlUgZ3JlcCwgZWdyZXAgYW5kIGZncmVwLgorIFRoZSBHTlUgZmFtaWx5IG9mIGdyZXAgdXRpbGl0aWVzIG1heSBiZSB0aGUgImZhc3Rlc3QgZ3JlcCBpbiB0aGUgd2VzdCIuCisgR05VIGdyZXAgaXMgYmFzZWQgb24gYSBmYXN0IGxhenlcLXN0YXRlIGRldGVybWluaXN0aWMgbWF0Y2hlciAoYWJvdXQKKyB0d2ljZSBhcyBmYXN0IGFzIHN0b2NrIFVuaXggZWdyZXApIGh5YnJpZGl6ZWQgd2l0aCBhIEJveWVyXC1Nb29yZVwtR29zcGVyCisgc2VhcmNoIGZvciBhIGZpeGVkIHN0cmluZyB0aGF0IGVsaW1pbmF0ZXMgaW1wb3NzaWJsZSB0ZXh0IGZyb20gYmVpbmcKKyBjb25zaWRlcmVkIGJ5IHRoZSBmdWxsIHJlZ2V4cCBtYXRjaGVyIHdpdGhvdXQgbmVjZXNzYXJpbHkgaGF2aW5nIHRvCisgbG9vayBhdCBldmVyeSBjaGFyYWN0ZXIuIFRoZSByZXN1bHQgaXMgdHlwaWNhbGx5IG1hbnkgdGltZXMgZmFzdGVyCisgdGhhbiBVbml4IGdyZXAgb3IgZWdyZXAuIChSZWd1bGFyIGV4cHJlc3Npb25zIGNvbnRhaW5pbmcgYmFja3JlZmVyZW5jaW5nCisgd2lsbCBydW4gbW9yZSBzbG93bHksIGhvd2V2ZXIuKQorLmZpCisuXCIgLlJFCisuCisuU0ggIlNFIMRWRU4iCitcZkJkZWJcZlAoNSksIFxmQmRlYlwtdmVyc2lvblxmUCg1KSwgXGZCZGVidGFnc1xmUCgxKSwgXGZCZHBrZ1xmUCgxKSwgXGZCZHBrZ1wtZGViXGZQKDEpLgorLlNIICLWVkVSU8RUVE5JTkciCitQZXRlciBLcmVmdGluZyBvY2ggRGFuaWVsIE55bGFuZGVyLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vc3YvZGViLWV4dHJhLW92ZXJyaWRlLjUgYi9kcGtnLTEuMTYuMS4xL21hbi9zdi9kZWItZXh0cmEtb3ZlcnJpZGUuNQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jNDQ4ZWU1Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vc3YvZGViLWV4dHJhLW92ZXJyaWRlLjUKQEAgLTAsMCArMSwzOCBAQAorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlwiCisuXCIgVGhpcyBmaWxlIHdhcyBnZW5lcmF0ZWQgd2l0aCBwbzRhLiBUcmFuc2xhdGUgdGhlIHNvdXJjZSBmaWxlLgorLlwiCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuVEggZGViXC1leHRyYVwtb3ZlcnJpZGUgNSAyMDA5XC0wOFwtMTYgRGViaWFucHJvamVrdGV0IGRwa2dcLXZlcmt0eWdlbgorLlNIIE5BTU4KK2RlYlwtZXh0cmFcLW92ZXJyaWRlIFwtIERlYmlhbmFya2l2ZXRzIGV4dHJhIPZ2ZXJzdHlybmluZ3NmaWwKKy4KKy5TSCBTWU5PUFMKK292ZXJyaWRlCisuCisuU0ggQkVTS1JJVk5JTkcKK8R2ZW4gb20gZGV0IG1lc3RhIGF2IGluZm9ybWF0aW9uZW4gb20gZXR0IGJpbuRyXC0va+RsbGtvZHNwYWtldCBmaW5ucyBpCitjb250cm9sXC0vLmRzY1wtZmlsZW4gc+Uga2FuIGFsbHQg9nZlcnN0eXJhcyBu5HIgZGV0IGV4cG9ydGVyYXMgdGlsbAorUGFja2FnZXNcLS9Tb3VyY2VzXC1maWxlci4gRGVuIGV4dHJhIG92ZXJyaWRlXC1maWxlbiBpbm5laOVsbGVyIGRlc3NhCiv2dmVyc3R5cm5pbmdhci4KKy5QUAorRGVuIGV4dHJhIG92ZXJyaWRlXC1maWxlbiBoYXIgZXR0IGVua2VsdCBibGFua3N0ZWdcLWF2ZGVsYXQKK2Zvcm1hdC4gS29tbWVudGFyZXIg5HIgdGlsbOV0bmEgKG1hcmtlcmFzIG1lZCBldHQgXGZCI1xmUCkuCisuUFAKKy5pbiArNQorXGZJcGFrZXRcZlAgXGZJZuRsdG5hbW5cZlAgXGZJduRyZGVcZlAKKy5pbiAtNQorLlBQCitcZklwYWtldFxmUCDkciBuYW1uZXQgcOUgYmlu5HJcLS9r5Gxsa29kc3Bha2V0ZXQKKy5QUAorXGZJZuRsdG5hbW5cZlAg5HIgbmFtbmV0IHDlIGbkbHRldCBzb20gc2thbGwg9nZlcnN0eXJhcy4gXGZJduRyZGVcZlAg5HIgduRyZGV0IHNvbQorc2thbGwgbORnZ2FzIGluIGkgZuRsdGV0LiBEZXQga2FuIGlubmVo5WxsYSBibGFua3N0ZWcgZOUgcmFkZW4gZGVsYXMgdXBwIGkKK21heGltYWx0IHRyZSBrb2x1bW5lciB2aWQgdG9sa25pbmcuCisuUFAKK0RlIGV4dHJhIG92ZXJyaWRlXC1maWxlciBzb20gYW525G5kcyBm9nIgYXR0IHNrYXBhIGRlbiBvZmZpY2llbGxhIGxpc3RhbiD2dmVyCitwYWtldCAoIlBhY2thZ2VzIikgZmlubnMgaSBcZklpbmRpY2VzXGZQXC1rYXRhbG9nZW4gcOUgYWxsYSBEZWJpYW5zcGVnbGFyLgorLgorLlNIICJTRSDEVkVOIgorXGZCZHBrZ1wtc2NhbnBhY2thZ2VzXGZQKDEpLCBcZkJkcGtnXC1zY2Fuc291cmNlc1xmUCgxKSwgXGZCYXB0XC1mdHBhcmNoaXZlXGZQKDEpLgorLlNIICLWVkVSU8RUVE5JTkciCitQZXRlciBLcmVmdGluZyBvY2ggRGFuaWVsIE55bGFuZGVyLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vc3YvZGViLW9sZC41IGIvZHBrZy0xLjE2LjEuMS9tYW4vc3YvZGViLW9sZC41Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmU1ODdkNjcKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9zdi9kZWItb2xkLjUKQEAgLTAsMCArMSw0NyBAQAorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlwiCisuXCIgVGhpcyBmaWxlIHdhcyBnZW5lcmF0ZWQgd2l0aCBwbzRhLiBUcmFuc2xhdGUgdGhlIHNvdXJjZSBmaWxlLgorLlwiCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuVEggZGViXC1vbGQgNSAyMDExXC0wOFwtMTQgRGViaWFucHJvamVrdGV0IERlYmlhbgorLlNIIE5BTU4KK2RlYlwtb2xkIFwtIERlYmlhbnMgZ2FtbGEgYmlu5HJwYWtldGZvcm1hdAorLgorLlNIIFNZTk9QUworXGZJZmlsbmFtblxmUFxmQi5kZWJcZlAKKy4KKy5TSCBCRVNLUklWTklORworXCZcZkIuZGViXGZQXC1mb3JtYXRldCDkciBEZWJpYW5zIGJpbuRyYSBwYWtldGZvcm1hdC4gRGVubmEgbWFudWFsc2lkYSBiZXNrcml2ZXIKK2RldCBcZkJnYW1sYVxmUCBmb3JtYXRldCBzb20gYW525G5kcyBm9nJlIERlYmlhbiAwLjkzLiBTZSBcZkJkZWJcZlAoNSkgZvZyCitkZXRhbGplcmFkIGluZm9ybWF0aW9uIG9tIGRldCBueWEgZm9ybWF0ZXQuCisuCisuU0ggRk9STUFUCitGaWxlbiBpbm5laOVsbGVyIHR25SByYWRlciBhdiBmb3JtYXRpbmZvcm1hdGlvbiBzb20gQVNDSUlcLXRleHQsIGb2bGp0IGF2IHR25Qorc2FtbWFzbGFnbmEgZ3ppcFwtcGFja2FkZSB1c3RhclwtZmlsZXIuCisuUFAKK0RlbiBm9nJzdGEgcmFkZW4gaSBmaWxlbiDkciBmb3JtYXR2ZXJzaW9uc251bXJldCB1dGZ5bGx0IHRpbGwg5XR0YSBzaWZmcm9yLAorb2NoIORyIFxmQjAuOTM5MDAwXGZQIGb2ciBhbGxhIGFya2l2IGkgZGV0IGdhbWxhIGZvcm1hdGV0LgorLlBQCitO5HN0YSByYWQg5HIgZW4gZGVjaW1hbHN0cuRuZyAodXRhbiBpbmxlZGFuZGUgbm9sbG9yKSBzb20gYW5nZXIgbORuZ2RlbiBw5QorZGVuIGb2cnN0YSBnemlwXC1wYWNrYWRlIHRhclwtZmlsZW4uCisuUFAKK0LlZGEgZGVzc2EgcmFkZXIgYXZzbHV0YXMgbWVkIGV0dCBlbnNhbXQgcmFkYnJ5dG5pbmdzdGVja2VuLgorLlBQCitEZW4gZvZyc3RhIHRhclwtZmlsZW4gaW5uZWjlbGxlciBrb250cm9sbGluZm9ybWF0aW9uZW4sIGxhZ3JhZGUgc29tIGV0dCBhbnRhbAordmFubGlnYSBmaWxlci4gRmlsZW4gXGZCY29udHJvbFxmUCBt5XN0ZSBmaW5uYXMsIGVmdGVyc29tIGRlbiBpbm5laOVsbGVyCitncnVuZGzkZ2dhbmRlIGtvbnRyb2xsaW5mb3JtYXRpb24uCisuUFAKK0kgdmlzc2EgduRsZGlndCBnYW1sYSBhcmtpdiBrYW4gZmlsZXJuYSBpIGtvbnRyb2xsXC10YXJmaWxlbiBldmVudHVlbGx0IGxpZ2dhCitpIGVuIHVuZGVya2F0YWxvZyB2aWQgbmFtbiBcZkJERUJJQU5cZlAuIE9tIHPlIORyIGZhbGxldCBrb21tZXIgdW5kZXJrYXRhbG9nZW4KK1xmQkRFQklBTlxmUCDkdmVuIGF0dCBmaW5uYXMgaSBrb250cm9sbFwtdGFyZmlsZW4sIG9jaCBrb250cm9sbFwtdGFyZmlsZW4ga29tbWVyCitiYXJhIGlubmVo5WxsYSBmaWxlciBpIGRlbiBrYXRhbG9nZW4uIEV2ZW50dWVsbHQga2FuIGtvbnRyb2xsXC10YXJmaWxlbgoraW5uZWjlbGxhIGVuIHBvc3QgZvZyICJcZkIuXGZQIiwgZGV0IHZpbGwgc+RnYSBha3R1ZWxsIGthdGFsb2cuCisuUFAKK0RlbiBhbmRyYSBnemlwXC1wYWNrYWRlIHRhclwtZmlsZW4g5HIgZmlsc3lzdGVtc2Fya2l2ZXQsIHZpbGtlbiBpbm5laOVsbGVyCitz9mt25GdhciByZWxhdGl2dCByb3RrYXRhbG9nZW4gZvZyIHN5c3RlbWV0IGRldCBza2FsbCBpbnN0YWxsZXJhcworcOUuIFP2a3bkZ2FybmEgaW5uZWjlbGxlciBpbnRlIGlubGVkYW5kZSBzbmVkc3RyZWNrLgorLgorLlNIICJTRSDEVkVOIgorXGZCZGViXGZQKDUpLCBcZkJkcGtnXC1kZWJcZlAoMSksIFxmQmRlYlwtY29udHJvbFxmUCg1KS4KKy5TSCAi1lZFUlPEVFROSU5HIgorUGV0ZXIgS3JlZnRpbmcgb2NoIERhbmllbCBOeWxhbmRlci4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL3N2L2RlYi1vdmVycmlkZS41IGIvZHBrZy0xLjE2LjEuMS9tYW4vc3YvZGViLW92ZXJyaWRlLjUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzk2ZjhlZgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL3N2L2RlYi1vdmVycmlkZS41CkBAIC0wLDAgKzEsNTYgQEAKKy5cIiBUaGlzIG1hbnBhZ2UgaXMgY29weXJpZ2h0IChDKSAxOTk2IE1pY2hhZWwgU2hpZWxkcyA8c2hpZWxkc0Bjcm9zc2xpbmsubmV0Pi4KKy5cIiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBtYXkgcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKy5cIiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorLlwiIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisuXCIgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKy5cIgorLlwiIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKy5cIiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorLlwiIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKy5cIiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorLlwiCisuXCIgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKy5cIiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlRIIGRlYlwtb3ZlcnJpZGUgNSAyMDExXC0wOFwtMTQgRGViaWFucHJvamVrdGV0IGRwa2dcLXZlcmt0eWdlbgorLlNIIE5BTU4KK2RlYlwtb3ZlcnJpZGUgXC0gRGViaWFuYXJraXZldHMg9nZlcnN0eXJuaW5nc2ZpbAorLgorLlNIIFNZTk9QUworb3ZlcnJpZGUKKy4KKy5TSCBCRVNLUklWTklORworxHZlbiBvbSBodXZ1ZGRlbGVuIGF2IGluZm9ybWF0aW9uZW4gb20gZXR0IHBha2V0IGZpbm5zIGkga29udHJvbGxmaWxlbgoraGFudGVyYXMgZW4gZGVsIGNlbnRyYWx0IGF2IGRpc3RyaWJ1dGlvbnN0c2FyZXJuYSwgc25hcmFyZSDkbiBhdgorcGFrZXRhbnN2YXJpZ2EsIGb2ciBhdHQga3VubmEgYmliZWjlbGxhIGVuIGdsb2JhbCBrb25zaXN0ZW5zLiBEZW5uYQoraW5mb3JtYXRpb25lbiBmaW5ucyBpIGZpbGVuICJvdmVycmlkZSIuCisuUFAKK0ZpbGVuIG92ZXJyaWRlIGhhciBldHQgZW5rZWx0IGJsYW5rc3RlZ1wtYXZkZWxhdCBmb3JtYXQuIEtvbW1lbnRhcmVyIORyCit0aWxs5XRuYSAobWFya2VyYXMgbWVkIGV0dCBcZkIjXGZQKS4KKy5QUAorLmluICs1CitcZklwYWtldFxmUCBcZklwcmlvcml0ZXRcZlAgXGZJc2VrdGlvblxmUCBbXGZJYW5zdmFyaWdpbmZvXGZQXQorLmluIC01CisuUFAKK1xmSXBha2V0XGZQIORyIG5hbW5ldCBw5SBwYWtldGV0LiBQb3N0ZXIgaSBmaWxlbiBvdmVycmlkZSBm9nIgcGFrZXQgc29tIGludGUKK2Zpbm5zIGkgdHLkZGV0IG1lZCBiaW7kcmEgcGFrZXQgaWdub3JlcmFzLgorLlBQCitcZklwcmlvcml0ZXRcZlAgb2NoIFxmSXNla3Rpb25cZlAgbW90c3ZhcmFyIHJlc3Bla3RpdmUgc3R5cmbkbHQgaQorXCYuZGViXC1maWxlbi4gVGlsbOV0bmEgduRyZGVuIGJlc2tyaXZzIGkgRGViaWFucyBwb2xpY3lkb2t1bWVudC4KKy5QUAorXGZJYW5zdmFyaWdpbmZvXGZQIGthbiwgb20gZGV0IGFuZ2VzLCBhbnRpbmdlbiB2YXJhIG5hbW5ldCBw5SBlbiBwYWtldGFuc3ZhcmlnCitm9nIgZW4gb3ZpbGxrb3JsaWcg9nZlcnN0eXJuaW5nLCBlbGxlciBcZklnYW1tYWxcLWFuc3ZhcmlnXGZQIFxmQj0+XGZQCitcZklueVwtYW5zdmFyaWdcZlAgZvZyIGF0dCB1dGb2cmEgZW4gc3Vic3RpdHVlcmluZy4KKy5QUAorRGUgb3ZlcnJpZGVcLWZpbGVyIHNvbSBhbnbkbmRzIGb2ciBhdHQgc2thcGEgZGVuIG9mZmljaWVsbGEgbGlzdGFuIPZ2ZXIgcGFrZXQKKygiUGFja2FnZXMiKSBmaW5ucyBpIFxmSWluZGljZXNcZlBcLWthdGFsb2dlbiBw5SBhbGxhIERlYmlhbnNwZWdsYXIuCisuCisuU0ggIlNFIMRWRU4iCitcZkJkcGtnXC1zY2FucGFja2FnZXNcZlAoMSksIFxmQmRwa2dcLXNjYW5zb3VyY2VzXGZQKDEpLCBcZkJhcHRcLWZ0cGFyY2hpdmVcZlAoMSksCitcZkIvdXNyL3NoYXJlL2RvYy9kZWJpYW5cLXBvbGljeS9wb2xpY3kuaHRtbC9pbmRleC5odG1sXGZQLgorLlNIICLWVkVSU8RUVE5JTkciCitQZXRlciBLcmVmdGluZyBvY2ggRGFuaWVsIE55bGFuZGVyLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vc3YvZGViLXNobGlicy41IGIvZHBrZy0xLjE2LjEuMS9tYW4vc3YvZGViLXNobGlicy41Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjMzNWY3NTgKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9zdi9kZWItc2hsaWJzLjUKQEAgLTAsMCArMSw1NiBAQAorLlwiIENvcHlyaWdodCDCqSAxOTk2IE1pY2hhZWwgU2hpZWxkcyA8c2hpZWxkc0Bjcm9zc2xpbmsubmV0PgorLlwiIENvcHlyaWdodCDCqSAyMDA4IFphY2sgV2VpbmJlcmcgPHphY2t3QHBhbml4LmNvbT4KKy5cIiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBtYXkgcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKy5cIiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorLlwiIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisuXCIgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKy5cIgorLlwiIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKy5cIiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorLlwiIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKy5cIiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorLlwiCisuXCIgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKy5cIiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlRIIGRlYlwtc2hsaWJzIDUgMjAwOFwtMDJcLTE3IERlYmlhbnByb2pla3RldCBkcGtnXC12ZXJrdHlnZW4KKy5TSCBOQU1OCitkZWJcLXNobGlicyBcLSBEZWJpYW5zIGluZm9ybWF0aW9uc2ZpbCBm9nIgZGVsYWRlIGJpYmxpb3RlaworLgorLlNIIEJFU0tSSVZOSU5HCisuUFAKK1xmQnNobGlic1xmUFwtZmlsZXIgc2thcGFyIGVuIGtvcHBsaW5nIG1lbGxhbiBiaWJsaW90ZWtzbmFtbiBvY2ggdmVyc2lvbmVyCisoXGZJc29uYW1uXGZQKSB0aWxsIGJlcm9lbmRlbiBzb20g5HIgbORtcGxpZ2EgZvZyIGVuIHBha2V0c3R5cmZpbC4gRGVuIGhhciBlbgorcG9zdCBwZXIgcmFkLiBCbGFua2EgcmFkZXIg5HIgXGZCaW50ZVxmUCB0aWxs5XRuYS4gUmFkZXIgc29tIGlubGVkcyBtZWQgZXR0CitcZkIjXGZQXC10ZWNrZW4gYW5zZXMgdmFyYSBrb21tZW50YXJlciwgb2NoIGlnbm9yZXJhcy4gQWxsYSBhbmRyYSByYWRlciBt5XN0ZQordmFyYSBw5SBmb3JtYXRldAorLklQCitbXGZJdHlwXGZQXGZCOlxmUF0gXGZJYmlibGlvdGVrXGZQIFxmSXZlcnNpb25cZlAgXGZJYmVyb2VuZGVuXGZQCisuUFAKK0bkbHRlbiBcZkliaWJsaW90ZWtcZlAgb2NoIFxmSXZlcnNpb25cZlAgYXZkZWxhcyBtZWQgYmxhbmt0ZWNrZW4gbWVkYW4gZuRsdGV0CitcZkliZXJvZW5kZW5cZlAgc3Ry5GNrZXIgc2lnIHRpbGwgc2x1dGV0IGF2IHJhZGVuLiBG5Gx0ZXQgXGZJdHlwXGZQIORyIGZyaXZpbGxpZ3QKK29jaCBiZWj2dnMgdmFubGlndHZpcyBpbnRlLgorLlBQCitTZSBEZWJpYW5zIHBvbGljeW1hbnVhbCBm9nIgeXR0ZXJsaWdhcmUgZGV0YWxqZXIuCisuCisuU0ggRVhFTVBFTAorLlBQCitcZkJzaGxpYnNcZlBcLWZpbGVuIGb2ciBldHQgdHlwaXNrdCBiaWJsaW90ZWtzcGFrZXQsIHNvbSBoZXRlciBcZklsaWJjcnVuY2gxXGZQIG9jaAorc29tIGlubmVo5WxsZXIgZXR0IGJpYmxpb3RlayB2YXJzIHNvbmFtbiDkciBcZklsaWJjcnVuY2guc28uMVxmUCwga2FuIHNlIHV0IHPlCito5HI6CisuSVAKK2xpYmNydW5jaCAxIGxpYmNydW5jaDEgKD49IDEuMlwtMSkKKy5QUAorRuRsdGV0IFxmSWJlcm9lbmRlblxmUCBt5XN0ZSBhbmdlIGRlbiBzZW5hc3RlIHZlcnNpb25lbiBhdiBwYWtldGV0IHNvbSBsYWRlCit0aWxsIG55YSBzeW1ib2xlciBpIGJpYmxpb3Rla2V0OiBpIGV4ZW1wbGV0IG92YW4gbGFkZXMgbnlhIHN5bWJvbGVyIHRpbGwgaQordmVyc2lvbiAxLjIgYXYgXGZJbGliY3J1bmNoXGZQLiBEZXQg5HIgaW50ZSBkZW4gZW5kYSBvcnNha2VuIHRpbGwgYXR0IGJlcm9lbmRlbgora2FuIGJlaPZ2YSBzbuR2YXMgaW47IOV0ZXJpZ2VuLCBzZSBEZWJpYW5zIHBvbGljeW1hbnVhbCBm9nIgZGV0YWxqZXIuCisuCisuU0ggIlNFIMRWRU4iCitcZkJkcGtnXC1zaGxpYmRlcHNcZlAoMSksIFxmQmRlYlwtc3ltYm9sc1xmUCg1KS4KKy5TSCAi1lZFUlPEVFROSU5HIgorUGV0ZXIgS3JlZnRpbmcgb2NoIERhbmllbCBOeWxhbmRlci4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL3N2L2RlYi1zcGxpdC41IGIvZHBrZy0xLjE2LjEuMS9tYW4vc3YvZGViLXNwbGl0LjUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZGVmODNkYgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL3N2L2RlYi1zcGxpdC41CkBAIC0wLDAgKzEsNTcgQEAKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlRIIGRlYlwtc3BsaXQgNSAyMDExXC0wN1wtMDQgRGViaWFucHJvamVrdGV0IERlYmlhbgorLlNIIE5BTU4KK2RlYlwtc3BsaXQgXC0gRGViaWFucyBmbGVyZGVsYWRlIGJpbuRyYSBwYWtldGZvcm1hdAorLlNIIFNZTk9QUworXGZJZmlsbmFtblxmUFxmQi5kZWJcZlAKKy5TSCBCRVNLUklWTklORworRGV0IGZsZXJkZWxhZGUgXGZCLmRlYlxmUFwtZm9ybWF0ZXQgYW525G5kcyBm9nIgYXR0IGRlbGEgc3RvcmEgcGFrZXQgaSBtaW5kcmUKK2RlbGFyIGb2ciBhdHQgZvZyZW5rbGEgdHJhbnNwb3J0IPZ2ZXIgc23lIG1lZGllci4KKy5TSCBGT1JNQVQKK0ZpbGVuIORyIGV0dCBcZkJhclxmUFwtYXJraXYgbWVkIGRldCBtYWdpc2thIG51bXJldAorXGZCITxhcmNoPlxmUC4gRmlsbmFtbmVuIGthbiBpbm5laOVsbGEgZXR0IGF2c2x1dGFuZGUgc25lZHN0cmVjayAoc2VkYW4KK2Rwa2cgMS4xNS42KS4KKy5QUAorRGVuIGb2cnN0YSBwb3N0ZW4gaGV0ZXIgXGZCZGViaWFuXC1zcGxpdFxmUCBvY2ggaW5uZWjlbGxlciBlbiBzZXJpZSBhdiByYWRlciwKK2F2ZGVsYWRlIG1lZCBueXJhZHN0ZWNrZW4uIEb2ciBu5HJ2YXJhbmRlIGZpbm5zIOV0dGEgcmFkZXI6CisuSVAgXChidSA0CitGb3JtYXRldHMgdmVyc2lvbnNudW1tZXIsIFxmQjIuMVxmUCBk5SBkZW5uYSBtYW51YWxzaWRhIHNrcml2cy4KKy5JUCBcKGJ1CitQYWtldGV0cyBuYW1uLgorLklQIFwoYnUKK1Bha2V0ZXRzIHZlcnNpb25zbnVtbWVyLgorLklQIFwoYnUKK21kNVwta29udHJvbGxzdW1tYW4gZvZyIHBha2V0ZXQuCisuSVAgXChidQorVG90YWwgc3RvcmxlayBw5SBwYWtldGV0LgorLklQIFwoYnUKK01heGltYWwgc3RvcmxlayBw5SBlbiBkZWwuCisuSVAgXChidQorTnVtbWVyIHDlIGFrdHVlbGwgZGVsLCBm9mxqdCBhdiBldHQgc25lZHN0cmVjayBvY2ggdG90YWx0IGFudGFsIGRlbGFyIChzb20gaQorXChvcTEvMTBcKGNxKS4KKy5JUCBcKGJ1CitQYWtldGV0cyBhcmtpdGVrdHVyIChzZWRhbiBkcGtnIDEuMTYuMSkuCisuUFAKK0ZpbGVyIHNvbSBs5HNlciBmbGVyZGVsYWRlIGFya2l2IGL2ciB2YXJhIGJlcmVkZGEgcOUgYXR0IHl0dGVybGlnYXJlIHJhZGVyCivkciBu5HJ2YXJhbmRlLCBvY2ggYvZyIGlnbm9yZXJhIGRlc3NhIG9tIHPlIORyIGZhbGxldC4KKy5QUAorT20gdmVyc2lvbnNudW1yZXQgaGFyIORuZHJhdHMgaGFyIGVuIGlua29tcGF0aWJlbCDkbmRyaW5nIGluZvZydHMsIG9jaAorcHJvZ3JhbW1ldCBza2FsbCBhdmJyeXRhcy4gT20gc+UgaW50ZSBoYXIgZ2pvcnRzLCBza2FsbCBwcm9ncmFtbWV0IGt1bm5hCitmb3J0c+R0dGEgdXRhbiBwcm9ibGVtLCBz5XZpZGEgZGV0IGludGUgc3T2dGVyIHDlIGVuIG925G50YWQgcG9zdCBpIGFya2l2ZXQKKyhm9nJ1dG9tIGkgc2x1dGV0KSwgZW5saWd0IHZhZCBiZXNrcml2cyBuZWRhbi4KKy5QUAorRGVuIGFuZHJhIG9jaCBzaXN0YSBu9mR25G5kaWdhIHBvc3RlbiBoZXRlciBcZkJkYXRhLlxmUFxmSU5cZlAsIGTkciBcZklOXGZQIGFuZ2VyCitkZWxudW1yZXQuIERlbiBpbm5laOVsbGVyIHLlZGF0YSBm9nIgZGVsZW4uCisuUFAKK0Rlc3NhIHBvc3RlciBt5XN0ZSBsaWdnYSBpIGV4YWt0IGRlbm5hIG9yZG5pbmcuIE51dmFyYW5kZSBpbXBsZW1lbnRhdGlvbmVyCiti9nIgaWdub3JlcmEgZXZlbnR1ZWxsYSB5dHRlcmxpZ2FyZSBwb3N0ZXIgZWZ0ZXIgXGZCZGF0YS5cZlBcZklOXGZQLiBZdHRlcmxpZ2FyZQorcG9zdGVyIGthbiBrb21tYSBhdHQgZGVmaW5pZXJhcyBpIGZyYW10aWRlbiwgb2NoIGtvbW1lciAob20gbfZqbGlndCkKK3BsYWNlcmFzIGVmdGVyIGRlc3NhIHR25S4KKy5TSCAiU0UgxFZFTiIKK1xmQmRlYlxmUCg1KSwgXGZCZHBrZ1wtc3BsaXRcZlAoMSkuCisuU0ggItZWRVJTxFRUTklORyIKK1BldGVyIEtyZWZ0aW5nIG9jaCBEYW5pZWwgTnlsYW5kZXIuCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9zdi9kZWItc3JjLWNvbnRyb2wuNSBiL2Rwa2ctMS4xNi4xLjEvbWFuL3N2L2RlYi1zcmMtY29udHJvbC41Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjg3OTk5ODQKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9zdi9kZWItc3JjLWNvbnRyb2wuNQpAQCAtMCwwICsxLDMwMyBAQAorLlwiIEF1dGhvcjogT3hhbiB2YW4gTGVldXdlbgorLlwiIEluY2x1ZGVzIHRleHQgZnJvbSB0aGUgZGViLWNvbnRyb2wgbWFudWFsIHBhZ2UgYnkgUmF1bCBNaWxsZXIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlRIIGRlYlwtc3JjXC1jb250cm9sIDUgMjAxMVwtMDhcLTE0IERlYmlhbnByb2pla3RldCBEZWJpYW4KKy5TSCBOQU1OCitkZWJcLXNyY1wtY29udHJvbCBcLSBEZWJpYW5zIGZpbGZvcm1hdCBm9nIga+RsbGtvZHNwYWtldHMgaHV2dWRzdHlyZmlsCisuCisuU0ggU1lOT1BTCitjb250cm9sCisuCisuU0ggQkVTS1JJVk5JTkcKK1ZhcmplIERlYmlhbmvkbGxrb2RzcGFrZXQgaW5uZWjlbGxlciBodXZ1ZFwtImNvbnRyb2wiXC1maWxlbiwgdmlsa2VuCitpbm5laOXlbGxlciDldG1pbnN0b25lIHR25SBzdHlja2VuLCBhdmRlbGFkZSBtZWQgZW4gdG9tcmFkLiBEZXQgZvZyc3RhCitzdHlja2V0IGlubmVo5WxsZXIgYWxsIGdlbmVyZWxsIGluZm9ybWF0aW9uIG9tIGvkbGxrb2RzcGFrZXRldCwgbWVkYW4gZGUKK2b2bGphbmRlIHN0eWNrZW5hIGJlc2tyaXZlciBleGFrdCBldHQgYmlu5HJwYWtldC4gVmFyamUgc3R5Y2tlIGJlc3TlciBhdgor5XRtaW5zdG9uZSBldHQgZuRsdC4gRXR0IGbkbHQgaW5sZWRzIG1lZCBldHQgZuRsdG5hbW4sIHRpbGwgZXhlbXBlbAorXGZCUGFja2FnZVxmUCBlbGxlciBcZkJTZWN0aW9uXGZQIChza2lmdGzkZ2Vzb2vkbnNsaWd0KSwgZvZsanQgYXYgZXR0IGtvbG9uLAorZuRsdGlubmVo5WxsZXQgb2NoIGV0dCBueXJhZHN0ZWNrZW4uIEZsZXJyYWRpZ2EgZuRsdCDkciBvY2tz5SB0aWxs5XRuYSwgbWVuCit2YXJqZSB5dHRlcmxpZ2FyZSByYWQgc29tIGludGUgaW5uZWjlbGxlciBldHQgZuRsdG5hbW4sIGL2ciBzdGFydGEgbWVkIG1pbnN0CitldHQgYmxhbmtzdGVnLiBJbm5laOVsbGV0IGkgZmxlcnJhZHNm5Gx0IHNs5XMgbm9ybWFsdCBzYW1tYW4gdGlsbCBlbiBlbmRhCityYWQgYXYgdmVya3R5Z2VuIChm9nJ1dG9tIGkgZmFsbGV0IGbkbHRldCBcZkJEZXNjcmlwdGlvblxmUCwgc2UgbmVkYW4pLiBG9nIgYXR0Citz5HR0YSBpbiB0b21tYSByYWRlciBpIGV0dCBmbGVycmFkc2bkbHQsIHNrcml2ZXIgZHUgZW4gcHVua3QgZWZ0ZXIKK2JsYW5rc3RlZ2V0LiBSYWRlciBzb20gYvZyamFyIG1lZCBldHQgXGZCIiMiXGZQIHRvbGthcyBzb20ga29tbWVudGFyZXIuCisuCisuU0ggS8RMTEtPRFNGxExUCisuVFAgCitcZkJTb3VyY2U6XGZQIFxmSWvkbGxrb2RzcGFrZXRuYW1uXGZQIChrcuR2cykKK1bkcmRldCBw5SBkZXQgaORyIGbkbHRldCDkciBuYW1uZXQgcOUga+RsbGtvZHNwYWtldGV0LCBvY2ggbeVzdGUgbW90c3ZhcmEKK25hbW5ldCBw5SBr5Gxsa29kc3Bha2V0ZXQgaSBmaWxlbiBkZWJpYW4vY2hhbmdlbG9nLiBQYWtldG5hbW5ldCBt5XN0ZSBiZXN05QorZW5kYXN0IGF2IHNt5SBib2tzdOR2ZXIgKGFcLXopLCBzaWZmcm9yICgwXC05KSwgcGx1c1wtICgrKSBvY2ggbWludXN0ZWNrZW4gKFwtKQorb2NoIHB1bmt0ICguKS4gUGFrZXRuYW1uIG3lc3RlIHZhcmEgbWluc3QgdHblIHRlY2tlbiBs5W5nYSBvY2ggbeVzdGUgYvZyamEKK21lZCBldHQgYWxmYW51bWVyaXNrdCB0ZWNrZW4uCisKKy5UUCAKK1xmQk1haW50YWluZXI6XGZQIFxmSWZ1bGx0XC1uYW1uXC1lcG9zdFxmUCAoa3LkdnMpCitTa2FsbCB2YXJhIHDlIGZvcm1hdGV0ICJKb2UgQmxvZ2dzIDxqYmxvZ2dzQGZvby5jb20+IiBvY2ggcmVmZXJlcmFyCit0aWxsIGRlbiBwZXJzb24gc29tIGb2ciBu5HJ2YXJhbmRlIHVuZGVyaOVsbGVyIHBha2V0ZXQsIHRpbGwgc2tpbGxuYWQgZnLlbgorZvZyZmF0dGFyZW4gYXYgZGVuIHByb2dyYW12YXJhIHNvbSBwYWtldGVyYXRzLgorCisuVFAgCitcZkJVcGxvYWRlcnM6XGZQXGZJIGZ1bGx0XC1uYW1uXC1lcG9zdFxmUAorUuRrbmFyIHVwcCBuYW1uIG9jaCBlXC1wb3N0YWRyZXNzZXIgdGlsbCBtZWRcLXVuZGVyaOVsbGFyZSBhdiBwYWtldGV0LCBpIHNhbW1hCitmb3JtYXQgc29tIGbkbHRldCBNYWludGFpbmVycy4gRmxlcmEgbWVkXC11bmRlcmjlbGxhcmUgYvZyIGF2ZGVsYXMgbWVkCitrb21tYXRlY2tlbi4KKworLlRQIAorXGZCU3RhbmRhcmRzXC1WZXJzaW9uOlxmUFxmSSB2ZXJzaW9uc3N0cuRuZ1xmUAorRG9rdW1lbnRlcmFyIGRlbiBzZW5hc3RlIHZlcnNpb25lbiBhdiBzdGFuZGFyZGRva3VtZW50ZW4gKHZpbGthIGJlc3TlciBhdgorRGViaWFucyBwb2xpY3loYW5kYm9rIG9jaCByZWZlcmVyYWRlIHRleHRlciBpIHBha2V0ZXQgXGZCZGViaWFuXC1wb2xpY3lcZlApIHNvbQorcGFrZXRldCB1cHBmeWxsZXIuCisKKy5UUCAKK1xmQkRNXC1VcGxvYWRcLUFsbG93ZWQ6XGZQIFxmQnllc1xmUHxcZkJub1xmUAorRuRsdGV0IGFuZ2VyIG9tIHBha2V0ZXQga2FuIHPkbmRhcyBpbiBhdiBkZSBEZWJpYW51dHZlY2tsYXJlIHNvbSBzdOVyCitiZXNrcml2bmEgaSBm5Gx0ZW4gTWFpbnRhaW5lciBvY2ggVXBsb2FkZXJzLiBTdGFuZGFyZHbkcmRldCDkciAibm8iIChuZWopLgorCisuVFAgCitcZkJIb21lcGFnZTpcZlBcZkkgdXJsXGZQCitVUkwgdGlsbCB1cHBzdHL2bXNwcm9qZWt0ZXRzIGhlbXNpZGEuCisKKy5UUCAKK1xmQkJ1Z3M6XGZQXGZJIHVybFxmUAorXGZJVXJsXGZQOmVuIHRpbGwgZmVscmFwcG9ydGVyaW5nc3N5c3RlbWV0IGb2ciBkZXR0YSBwYWtldC4gRGV0IG51dmFyYW5kZQorZm9ybWF0ZXQg5HIgXGZJc3lzdGVtdHlwXGZQOi8vXGZJYWRkcmVzc1xmUCwgdGlsbCBleGVtcGVsCitcZkJkZWJidWdzOi8vYnVncy5kZWJpYW4ub3JnXGZQLiBEZXQgaORyIGbkbHRldCDkciBub3JtYWx0IHNldHQgaW50ZQorbvZkduRuZGlndC4KKworLlRQIAorXGZCVmNzXC0qOlxmUFxmSSB1cmxcZlAKK1xmSVVybFxmUDplbiB0aWxsIHZlcnNpb25zaGFudGVyaW5nc2Fya2l2ZXQgc29tIGFuduRuZHMgZvZyIGF0dCB1bmRlcmjlbGxhIGRldAoraORyIHBha2V0ZXQuIEb2ciBu5HJ2YXJhbmRlIHN09mRzIFxmQkFyY2hcZlAsIFxmQkJ6clxmUCAoQmF6YWFyKSwgXGZCQ3ZzXGZQLAorXGZCRGFyY3NcZlAsIFxmQkdpdFxmUCwgXGZCSGdcZlAgKE1lcmN1cmlhbCksIFxmQk10blxmUCAoTW9ub3RvbmUpIG9jaCBcZkJTdm5cZlAKKyhTdWJ2ZXJzaW9uKS4gRuRsdGV0IHBla2FyIG5vcm1hbHQgdGlsbCBkZW4gc2VuYXN0ZSB2ZXJzaW9uZW4gYXYgcGFrZXRldCwKK3Plc29tIGh1dnVkZ3JlbmVuIChtYWluIGVsbGVyIHRydW5rKS4KKworLlRQIAorXGZCVmNzXC1Ccm93c2VyOlxmUFxmSSB1cmxcZlAKK1xmSVVybFxmUDplbiB0aWxsIGV0dCB3ZWJiZ3LkbnNzbml0dCBm9nIgYXR0IGJs5GRkcmEgaQordmVyc2lvbnNoYW50ZXJpbmdzYXJraXZldC4KKworLlRQIAorXGZCT3JpZ2luOlxmUFxmSSBuYW1uXGZQCitOYW1uZXQgcOUgZGVuIGRpc3RyaWJ1dGlvbiBwYWtldGV0IGjkcnN0YW1tYXIgZnLlbi4gRGV0IGjkciBm5Gx0ZXQg5HIKK25vcm1hbHQgc2V0dCBpbnRlIG72ZHbkbmRpZ3QuCisKKy5UUCAKK1xmQlNlY3Rpb246XGZQXGZJIHNla3Rpb25cZlAKK0RldHRhIORyIGV0dCBnZW5lcmVsbHQgZuRsdCBzb20gZ2VyIHBha2V0ZXQgZW4ga2F0ZWdvcmkgYmFzZXJhdCBw5QorcHJvZ3JhbXZhcmEgc29tIGRldCBpbnN0YWxsZXJhci4gTuVncmEgdmFubGlnYSBzZWt0aW9uZXIg5HIgInV0aWxzIiwgIm5ldCIsCisibWFpbCIsICJ0ZXh0IiwgIngxMSIgb3N2LgorCisuVFAgCitcZkJQcmlvcml0eTpcZlBcZkkgcHJpb3JpdGV0XGZQCitTdORsbGVyIGluIGh1ciB2aWt0aWd0IHBha2V0ZXQg5HIgauRtZvZydCBtZWQgc3lzdGVtZXQgc29tIGVuaGV0LiAgVmFubGlnYQorcHJpb3JpdGV0ZXIg5HIgInJlcXVpcmVkIiAobvZkduRuZGlnKSwgInN0YW5kYXJkIiAobm9ybWFsKSwgIm9wdGlvbmFsIgorKHZhbGZyaXR0KSwgImV4dHJhIiAoZXh0cmEpIG9zdi4KKworSSBEZWJpYW4gaGFyIGbkbHRlbiBcZkJTZWN0aW9uXGZQIG9jaCBcZkJQcmlvcml0eVxmUCBlbiBkZWZpbmllcmFkIHVwcHPkdHRuaW5nCithY2NlcHRlcmFkZSB25HJkZW4gYmFzZXJhZGUgcOUgcG9saWN5bWFudWFsZW4uIEVuIGb2cnRlY2tuaW5nIPZ2ZXIgZGVzc2EKK3bkcmRlbiBmaW5ucyBpIGRlbiBzZW5hc3RlIHZlcnNpb25lbiBhdiBwYWtldGV0IFxmQmRlYmlhblwtcG9saWN5XGZQLgorCisuVFAgCitcZkJCdWlsZFwtRGVwZW5kczpcZlBcZkkgcGFrZXRsaXN0YVxmUAorRW4gbGlzdGEg9nZlciBwYWtldCBzb20gbeVzdGUgaW5zdGFsbGVyYXMgb2NoIGtvbmZpZ3VyZXJhcyBm9nIgYXR0IGt1bm5hCitieWdnYSBr5Gxsa29kc3Bha2V0ZXQuCisKKy5UUCAKK1xmQkJ1aWxkXC1EZXBlbmRzXC1JbmRlcDpcZlBcZkkgcGFrZXRsaXN0YVxmUAorTW90c3ZhcmFyIFxmQkJ1aWxkXC1EZXBlbmRzXGZQLCBtZW4gZGUgYmVo9nZzIGVuZGFzdCBm9nIgYXR0IGJ5Z2dhIGRlCithcmtpdGVrdHVyb2Jlcm9lbmRlIHBha2V0ZW4uIFxmQkJ1aWxkXC1EZXBlbmRzXGZQIGluc3RhbGxlcmFzIG9ja3PlIGkgZGV0dGEKK2ZhbGwuCisKKy5UUCAKK1xmQkJ1aWxkXC1Db25mbGljdHM6XGZQXGZJIHBha2V0bGlzdGFcZlAKK0VuIGxpc3RhIPZ2ZXIgcGFrZXQgc29tIGludGUgYvZyIHZhcmEgaW5zdGFsbGVyYWRlIG7kciBwYWtldGV0IGJ5Z2dzLCB0aWxsCitleGVtcGVsIHDlIGdydW5kIGF2IGF0dCBkZSBzdPZyIGJ5Z2dzeXN0ZW1ldCBzb20gYW525G5kcy4KKworLlRQIAorXGZCQnVpbGRcLUNvbmZsaWN0c1wtSW5kZXA6XGZQXGZJIHBha2V0bGlzdGFcZlAKK01vdHN2YXJhciBcZkJCdWlsZFwtQ29uZmxpY3RzXGZQLCBtZW4gZW5kYXN0IG7kciBkZSBhcmtpdGVrdHVyb2Jlcm9lbmRlIHBha2V0ZW4KK2J5Z2dzLgorCitTeW50YXhlbiBm9nIgZuRsdGVuIFxmQkJ1aWxkXC1EZXBlbmRzXGZQIG9jaCBcZkJCdWlsZFwtRGVwZW5kc1wtSW5kZXBcZlBcLWbkbHRlbiDkciBlbgorbGlzdGEgbWVkIGdydXBwZXIgYXYgYWx0ZXJuYXRpdmEgcGFrZXQuIFZhcmplIGdydXBwIGlubmVo5WxsZXIgZW4gbGlzdGEgbWVkCitwYWtldCBhdmRlbGFkZSBtZWQgZXR0IHZlcnRpa2Fsc3RyZWNrIChy9nIpICgifCIpLiAgR3J1cHBlcm5hIGF2ZGVsYXMgbWVkCitrb21tYXRlY2tlbi4gS29tbWEgdXRs5HNlcyBzb20gIk9DSCIsIG9jaCB2ZXJ0aWthbHN0cmVja2VuIHNvbSAiRUxMRVIiLCBk5HIKK3ZlcnRpa2Fsc3RyZWNrZW4gYmluZGVyIGjlcmRhcmUuIFZhcmplIHBha2V0bmFtbiBrYW4gZXZlbnR1ZWxsdCBm9mxqYXMgYXYgZW4KK3ZlcnNpb25zbnVtbWVyYW5naXZlbHNlIGlub20gcGFyZW50ZXNlciBvY2ggZW4gYXJraXRla3R1cmFuZ2l2ZWxzZSBpCitoYWtwYXJlbnRlc2VyLgorCitTeW50YXhlbiBm9nIgZuRsdGVuIFxmQkJ1aWxkXC1Db25mbGljdHNcZlAgb2NoIFxmQkJ1aWxkXC1Db25mbGljdHNcLUluZGVwXGZQXC1m5Gx0ZW4KK+RyIGVuIGtvbW1hc2VwYXJlcmFkIGxpc3RhIG1lZCBwYWtldG5hbW4sIGTkciBrb21tYSB1dGzkc2VzIHNvbSAiT0NIIi4gRGV0CivkciBpbnRlIG32amxpZ3QgYXR0IGFuZ2UgYWx0ZXJuYXRpdmEgcGFrZXQgbWVkICJy9nIiLiBWYXJqZSBwYWtldG5hbW4ga2FuCitldmVudHVlbGx0IGb2bGphcyBhdiBlbiB2ZXJzaW9uc251bW1lcmFuZ2l2ZWxzZSBpbm9tIHBhcmVudGVzZXIgb2NoIGVuCithcmtpdGVrdHVyYW5naXZlbHNlIGkgaGFrcGFyZW50ZXNlci4KKworRXR0IHZlcnNpb25zbnVtbWVyIGthbiBi9nJqYSBtZWQgIj4+Iiwgdmlsa2V0IGJldHlkZXIgYXR0IHZpbGtlbiBzb20KK2hlbHN0IHNlbmFyZSB2ZXJzaW9uIG1hdGNoYXIsIGTkciBkZXQg5HIgdmFsZnJpdHQgYXR0IGFuZ2UKK0RlYmlhbnVwcGRhdGVyaW5nZW4gKGF2ZGVsYWQgbWVkIGJpbmRlc3RyZWNrKS4gIFRpbGzldG5hIHZlcnNpb25yZWxhdGlvbmVyCivkciAiPj4iIGb2ciBzdPZycmUg5G4sICI8PCIgZvZyIG1pbmRyZSDkbiwgIj49IiBm9nIKK3N09nJyZSDkbiBlbGxlciBsaWthIG1lZCIsICI8PSIgZvZyIG1pbmRyZSDkbiBlbGxlciBsaWthIG1lZCwgb2NoICI9IgorZvZyIGxpa2EgbWVkLgorCitFbiBhcmtpdGVrdHVyYW5naXZlbHNlIGJlc3TlciBhdiBldHQgZWxsZXIgZmxlcmEgYXJraXRla3R1cm5hbW4sIGF2ZGVsYWRlCittZWQgYmxhbmt0ZWNrZW4uIFZhcmplIG5hbW4ga2FuIGb2cmVn5XMgYXYgZXR0IHV0cm9wc3RlY2tlbiwgdmlsa2V0IGJldHlkZXIKKyJJQ0tFIi4KKworT2JzZXJ2ZXJhIGF0dCBiZXJvZW5kZW4gcOUgcGFrZXQgaSBcZkJidWlsZFwtZXNzZW50aWFsXGZQXC11cHBz5HR0bmluZ2VuIGthbgordXRlbORtbmFzIG9jaCBhdHQgZGV0IORyIG9t9mpsaWd0IGF0dCBkZWtsYXJlcmEgYnlnZ2tvbmZsaWt0ZXIgbW90IGRlbS4gRW4KK2xpc3RhIPZ2ZXIgZGVzc2EgcGFrZXQgZmlubnMgaSBwYWtldGV0IGJ1aWxkXC1lc3NlbnRpYWwuCisKKworLlNIIEJJTsRSRsRMVAorCisuTFAKK09ic2VydmVyYSBhdHQgZuRsdGVuIFxmQlByaW9yaXR5XGZQLCBcZkJTZWN0aW9uXGZQIG9jaCBcZkJIb21lcGFnZVxmUCDkdmVuIGthbgorYW525G5kYXMgaSBkZSBzdHlja2VuIHNvbSBiZXNrcml2ZXIgYmlu5HJwYWtldCBm9nIgYXR0IPZ2ZXJzdHlyYSBkZSBnbG9iYWxhCit25HJkZW5hIGb2ciBr5Gxsa29kc3Bha2V0ZXQuCisKKy5UUCAKK1xmQlBhY2thZ2U6XGZQIFxmSWJpbuRycGFrZXRuYW1uXGZQIChrcuR2cykKK0RldHRhIGbkbHQgYW525G5kcyBm9nIgYXR0IG5hbW5nZSBkZXQgYmlu5HJhIHBha2V0ZXQuIFNhbW1hIGJlZ3LkbnNuaW5nYXIKK2fkbGxlciBzb20gZvZyIGvkbGxrb2RzcGFrZXRldHMgbmFtbi4KKworLlRQIAorXGZCQXJjaGl0ZWN0dXJlOlxmUCBcZklhcmNoXGZQfFxmQmFsbFxmUHxcZkJhbnlcZlAgKGty5HZzKQorQXJraXRla3R1cmVuIGFuZ2VyIHDlIHZpbGtlbiB0eXAgYXYgbWFza2ludmFyYSBwYWtldGV0IGv2cnMuIEb2ciBwYWtldCBzb20KK2v2cnMgcOUgYWxsYSBhcmtpdGVrdHVyZXIgYW525G5kcyB25HJkZXQgXGZCYW55XGZQIChu5WdvbikuIEb2ciBwYWtldCBzb20g5HIKK2Fya2l0ZWt0dXJvYmVyb2VuZGUsIHNvbSBza2FsXC0gb2NoIFBlcmxza3JpcHQgZWxsZXIgZG9rdW1lbnRhdGlvbiwgYW525G5kcworduRyZGV0IFxmQmFsbFxmUCAoYWxsYSkuIEb2ciBhdHQgYmVncuRuc2EgcGFrZXQgdGlsbCBlbiBzcGVjaWZpayB1cHBz5HR0bmluZworYXJraXRla3R1cmVyLCBhbmdlciBkdSBuYW1uZW4gcOUgYXJraXRla3R1cmVybmEgYXZkZWxhZGUgbWVkIGJsYW5rc3RlZy4gRGV0CivkciDkdmVuIG32amxpZ3QgYXR0IGFuZ2UgYXJraXRla3R1cmVyIG1lZCBqb2tlcnRlY2tlbiBpIGxpc3RhbiAoc2UKK1xmQmRwa2dcLWFyY2hpdGVjdHVyZVxmUCgxKSBm9nIgbWVyIGluZm9ybWF0aW9uIG9tIGRlc3NhKS4KKworLlRQIAorXGZCUGFja2FnZVwtVHlwZTpcZlAgXGZCZGViXGZQfFxmQnVkZWJcZlAKK0RldHRhIGbkbHQgYW5nZXIgcGFrZXRldHMgdHlwLiAidWRlYiIgYW525G5kcyBm9nIgc3Rvcmxla3NiZWdy5G5zYWRlIHBha2V0IGkKK2RlYmlhblwtaW5zdGFsbGVyLiAiZGViIiDkciBzdGFuZGFyZHbkcmRldCwgb2NoIGFudGFzIG9tIGbkbHRldCBzYWtuYXMuIEZsZXIKK3R5cGVyIGthbiBrb21tYSBhdHQgbORnZ2FzIHRpbGwgaSBmcmFtdGlkZW4uCisKKy5UUCAKKy5QRCAwCitcZkJTdWJhcmNoaXRlY3R1cmU6XGZQXGZJIHbkcmRlXGZQCisuVFAgCisuUEQgMAorXGZCS2VybmVsXC1WZXJzaW9uOlxmUFxmSSB25HJkZVxmUAorLlRQIAorLlBEIDAKK1xmQkluc3RhbGxlclwtTWVudVwtSXRlbTpcZlBcZkkgduRyZGVcZlAKK0Rlc3NhIGbkbHQgYW525G5kcyBhdiBkZWJpYW5cLWluc3RhbGxlciBvY2ggYmVo9nZzIG5vcm1hbHQgaW50ZS4gU2UKKy91c3Ivc2hhcmUvZG9jL2RlYmlhblwtaW5zdGFsbGVyL2RldmVsL21vZHVsZXMudHh0IGZy5W4gcGFrZXRldAorXGZCZGViaWFuXC1pbnN0YWxsZXJcZlAgZvZyIG1lciBpbmZvcm1hdGlvbiBvbSBkZW0uCisKKy5UUCAKKy5QRCAwCitcZkJFc3NlbnRpYWw6XGZQIFxmQnllc1xmUHxcZkJub1xmUAorLlRQIAorLlBEIDAKK1xmQk11bHRpXC1BcmNoOlxmUCBcZkJzYW1lXGZQfFxmQmZvcmVpZ25cZlB8XGZCYWxsb3dlZFxmUAorLlRQIAorLlBEIDAKK1xmQlRhZzpcZlBcZkkgbGlzdGFcLW1lZFwtbeRya2VuXGZQCisuVFAgCisuUEQgMAorXGZCRGVzY3JpcHRpb246XGZQIFxmSWtvcnRcLWJlc2tyaXZuaW5nXGZQIChrcuR2cykKK0Rlc3NhIGbkbHQgYmVza3JpdnMgaSBtYW51YWxzaWRhbiBcZkJkZWJcLWNvbnRyb2xcZlAoNSksIGVmdGVyc29tIGRlIGtvcGllcmFzCitvcmRhZ3JhbnQgdGlsbCBiaW7kcnBha2V0ZXRzIHN0eXJmaWwuCisKKy5UUCAKKy5QRCAwCitcZkJEZXBlbmRzOlxmUFxmSSBwYWtldGxpc3RhXGZQCisuVFAgCisuUEQgMAorXGZCUHJlXC1EZXBlbmRzOlxmUFxmSSBwYWtldGxpc3RhXGZQCisuVFAgCisuUEQgMAorXGZCUmVjb21tZW5kczpcZlBcZkkgcGFrZXRsaXN0YVxmUAorLlRQIAorLlBEIDAKK1xmQlN1Z2dlc3RzOlxmUFxmSSBwYWtldGxpc3RhXGZQCisuVFAgCisuUEQgMAorXGZCQnJlYWtzOlxmUFxmSSBwYWtldGxpc3RhXGZQCisuVFAgCisuUEQgMAorXGZCRW5oYW5jZXM6XGZQXGZJIHBha2V0bGlzdGFcZlAKKy5UUCAKKy5QRCAwCitcZkJSZXBsYWNlczpcZlBcZkkgcGFrZXRsaXN0YVxmUAorLlRQIAorLlBEIDAKK1xmQkNvbmZsaWN0czpcZlBcZkkgdlxmUAorLlRQIAorLlBEIDAKK1xmQlByb3ZpZGVzOlxmUFxmSSBwYWtldGxpc3RhXGZQCisuVFAgCisuUEQgMAorXGZCQnVpbHRcLVVzaW5nOlxmUFxmSSBwYWtldGxpc3RhXGZQCisuYnIKK0Rlc3NhIGbkbHQgYW5nZXIgcmVsYXRpb25lciBtZWxsYW4gcGFrZXQuIERlIGRpc2t1dGVyYXMgaSBtYW51YWxzaWRhbgorXGZCZGViXC1jb250cm9sXGZQKDUpIG9jaCBpIHBha2V0ZXQgXGZCZGViaWFuXC1wb2xpY3lcZlAuCisKKy5TSCAiQU5WxE5EQVJERUZJTklFUkFERSBGxExUIgorRGV0IORyIG32amxpZ3QgYXR0IGzkZ2dhIHRpbGwgeXR0ZXJsaWdhcmUgYW525G5kYXJkZWZpbmllcmFkZSBm5Gx0IGkKK3N0eXJmaWxlbi4gVmVya3R5Z2VuIGlnbm9yZXJhciBkZXNzYSBm5Gx0LiBPbSBkdSB2aWxsIGF0dCBm5Gx0ZW4gc2thbGwKK2tvcGllcmFzIPZ2ZXIgdGlsbCB1dGRhdGFmaWxlcm5hLCBzb20gdGlsbCBleGVtcGVsIGkgYmlu5HJwYWtldGVuLCBt5XN0ZSBkdQorYW525G5kYSBlbiBza3LkZGRhcnN5ZGQgbmFtbmdpdm5pbmc6IGbkbHRlbiBt5XN0ZSBzdGFydGEgbWVkIFgsIGb2bGp0IGF2IGV0dAorZWxsZXIgZmxlcmEgYXYgYm9rc3TkdmVybmEgQkNTIG9jaCBldHQgYmluZGVzdHJlY2suIE9tIGJva3N0YXZlbiBCIGFuduRuZHMKK2tvbW1lciBm5Gx0ZXQgYXR0IGR5a2EgdXBwIGkgc3R5cmZpbGVuIGkgYmlu5HJwYWtldGV0LCBzZSBcZkJkZWJcLWNvbnRyb2xcZlAoNSksCitm9nIgYm9rc3RhdmVuIFMgaSBr5Gxsa29kc3Bha2V0ZXRzIHN0eXJmaWwgc29tIGtvbnN0cnVlcmFzIGF2CitcZkJkcGtnXC1zb3VyY2VcZlAoMSkgb2NoIGb2ciBib2tzdGF2ZW4gQyBpIHN0eXJmaWxlbiBm9nIgaW5z5G5kbmluZworKC5jaGFuZ2VzKS4gT2JzZXJ2ZXJhIGF0dCBYW0JDU11cLXByZWZpeGVuIHRhcyBib3J0IG7kciBm5Gx0ZW4ga29waWVyYXMg9nZlcgordGlsbCB1dGRhdGFmaWxlcm5hLiBG5Gx0ZXQgXGZCWENcLUFwcHJvdmVkXC1CeVxmUCB2aXNhcyBzb20gXGZCQXBwcm92ZWRcLUJ5XGZQIGkKK2NoYW5nZXNcLWZpbGVuIG9jaCB2aXNhcyBpbnRlIGkgc3R5cmZpbGVybmEgZvZyIGJpbuRyXC0gb2NoIGvkbGxrb2RzcGFrZXRlbi4KKworCisuU0ggRVhFTVBFTAorLlwiIC5SUworLm5mCisjIEtvbW1lbnRhcgorU291cmNlOiBkcGtnCitTZWN0aW9uOiBhZG1pbgorUHJpb3JpdHk6IHJlcXVpcmVkCitNYWludGFpbmVyOiBEcGtnIERldmVsb3BlcnMgPGRlYmlhblwtZHBrZ0BsaXN0cy5kZWJpYW4ub3JnPgorIyBkZXQgaORyIGbkbHRldCBrb3BpZXJhcyB0aWxsIGJpbuRyXC0gb2NoIGvkbGxrb2RzcGFrZXRlbgorWEJTXC1VcHN0cmVhbVwtUmVsZWFzZVwtU3RhdHVzOiBzdGFibGUKK0hvbWVwYWdlOiBodHRwOi8vd2lraS5kZWJpYW4ub3JnL1RlYW1zL0Rwa2cKK1Zjc1wtQnJvd3NlcjogaHR0cDovL2dpdC5kZWJpYW4ub3JnLz9wPWRwa2cvZHBrZy5naXQKK1Zjc1wtR2l0OiBnaXQ6Ly9naXQuZGViaWFuLm9yZy9naXQvZHBrZy9kcGtnLmdpdAorU3RhbmRhcmRzXC1WZXJzaW9uOiAzLjcuMworQnVpbGRcLURlcGVuZHM6IHBrZ1wtY29uZmlnLCBkZWJoZWxwZXIgKD49IDQuMS44MSksCisgbGlic2VsaW51eDFcLWRldiAoPj0gMS4yOFwtNCkgWyFsaW51eFwtYW55XQorCitQYWNrYWdlOiBkcGtnXC1kZXYKK1NlY3Rpb246IHV0aWxzCitQcmlvcml0eTogb3B0aW9uYWwKK0FyY2hpdGVjdHVyZTogYWxsCisjIGRldCBo5HIg5HIgZXR0IHNrcuRkZGFyc3l0dCBm5Gx0IGkgYmlu5HJwYWtldGV0CitYQlwtTWVudG9yaW5nXC1Db250YWN0OiBSYXBoYWVsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KK0RlcGVuZHM6IGRwa2cgKD49IDEuMTQuNiksIHBlcmw1LCBwZXJsXC1tb2R1bGVzLCBjcGlvICg+PSAyLjQuMlwtMiksCisgYnppcDIsIGx6bWEsIHBhdGNoICg+PSAyLjJcLTEpLCBtYWtlLCBiaW51dGlscywgbGlidGltZWRhdGVcLXBlcmwKK1JlY29tbWVuZHM6IGdjYyB8IGNcLWNvbXBpbGVyLCBidWlsZFwtZXNzZW50aWFsCitTdWdnZXN0czogZ251cGcsIGRlYmlhblwta2V5cmluZworQ29uZmxpY3RzOiBkcGtnXC1jcm9zcyAoPDwgMi4wLjApLCBkZXZzY3JpcHRzICg8PCAyLjEwLjI2KQorUmVwbGFjZXM6IG1hbnBhZ2VzXC1wbCAoPD0gMjAwNTExMTdcLTEpCitEZXNjcmlwdGlvbjogRGViaWFuIHBhY2thZ2UgZGV2ZWxvcG1lbnQgdG9vbHMKKyBUaGlzIHBhY2thZ2UgcHJvdmlkZXMgdGhlIGRldmVsb3BtZW50IHRvb2xzIChpbmNsdWRpbmcgZHBrZ1wtc291cmNlKQorIHJlcXVpcmVkIHRvIHVucGFjaywgYnVpbGQgYW5kIHVwbG9hZCBEZWJpYW4gc291cmNlIHBhY2thZ2VzLgorIC4KKyBNb3N0IERlYmlhbiBzb3VyY2UgcGFja2FnZXMgd2lsbCByZXF1aXJlIGFkZGl0aW9uYWwgdG9vbHMgdG8gYnVpbGQ7CisgZm9yIGV4YW1wbGUsIG1vc3QgcGFja2FnZXMgbmVlZCBtYWtlIGFuZCB0aGUgQyBjb21waWxlciBnY2MuCisuZmkKKworCisuXCIgLlJFCisuU0ggIlNFIMRWRU4iCitcZkJkZWJcLWNvbnRyb2xcZlAoNSksIFxmQmRlYlwtdmVyc2lvblxmUCg1KSwgXGZCZHBrZ1wtc291cmNlXGZQKDEpCisuU0ggItZWRVJTxFRUTklORyIKK1BldGVyIEtyZWZ0aW5nIG9jaCBEYW5pZWwgTnlsYW5kZXIuCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9zdi9kZWItc3Vic3R2YXJzLjUgYi9kcGtnLTEuMTYuMS4xL21hbi9zdi9kZWItc3Vic3R2YXJzLjUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOWI3NTU0MgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL3N2L2RlYi1zdWJzdHZhcnMuNQpAQCAtMCwwICsxLDE0MiBAQAorLlwiIEF1dGhvcnM6IElhbiBKYWNrc29uCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkZWJcLXN1YnN0dmFycyA1IDIwMDlcLTA3XC0xNSBEZWJpYW5wcm9qZWt0ZXQgZHBrZ1wtdmVya3R5Z2VuCisuU0ggTkFNTgorZGViXC1zdWJzdHZhcnMgXC0gRGViaWFucyBr5Gxsa29kc1wtc3Vic3RpdHVlcmluZ3N2YXJpYWJsZXIKKy4KKy5TSCBTWU5PUFMKK3N1YnN0dmFycworLgorLlNIIEJFU0tSSVZOSU5HCitJbm5hbiBcZkJkcGtnXC1zb3VyY2VcZlAsIFxmQmRwa2dcLWdlbmNvbnRyb2xcZlAgb2NoIFxmQmRwa2dcLWdlbmNoYW5nZXNcZlAgc2tyaXZlciBzaW4KK2tvbnRyb2xsaW5mb3JtYXRpb24gKHRpbGwgY29udHJvbFwtZmlsZW4gaSBr5Gxsa29kc3Bha2V0ZXQgXGZCLmRzY1xmUCBm9nIKK1xmQmRwa2dcLXNvdXJjZVxmUCBvY2ggdGlsbCBzdGFuZGFyZCB1dCBm9nIgXGZCZHBrZ1wtZ2VuY29udHJvbFxmUCBvY2gKK1xmQmRwa2dcLWdlbmNoYW5nZXNcZlApIGtvbW1lciBkZSB1dGb2cmEgdmlzcyB2YXJpYWJlbHN1YnN0aXR1ZXJpbmcgcOUKK3V0ZGF0YWZpbGVuLgorCitFbiB2YXJpYWJlbHN1YnN0aXR1dGlvbiBoYXIgZm9ybWVuIFxmQiR7XGZQXGZJdmFyaWFiZWxuYW1uXGZQXGZCfVxmUC4gVmFyaWFiZWxuYW1uCitiZXN05XIgYXYgYWxmYW51bWVyaXNrYSB0ZWNrZW4sIGJpbmRlc3RyZWNrIG9jaCBrb2xvbiBvY2ggYvZyamFyIG1lZCBldHQKK2FsZmFudW1lcmlza3QgdGVja2VuLiBWYXJpYWJlbHN1YnN0aXR1ZXJpbmdhciB1dGb2cnMgdXBwcmVwYWRlIGflbmdlciB0aWxscworZGV0IGludGUga3ZhcnN05XIgbuVncmEgXC0gZGV0IHJlc3VsdGVyYW5kZSBpbm5laOVsbGV0IGkgZuRsdGV0IGzkc2VzIGF2IHDlCitueXR0IGVmdGVyIHN1YnN0aXR1ZXJpbmdlbiBm9nIgYXR0IHNlIG9tIGRldCBiZWj2dnMgZmxlciBzdWJzdGl0dWVyaW5nYXIuCisKK07kciBhbGxhIHN1YnN0aXR1ZXJpbmdhciBoYXIgdXRm9nJ0cyBlcnPkdHRzIHZhcmplIGb2cmVrb21zdCBhdiBzdHLkbmdlbgorXGZCJHt9XGZQIChzb20gaW50ZSDkciBlbiBnaWx0aWcgc3Vic3RpdHVlcmluZykgbWVkIGV0dCBcZkIkXGZQXC10ZWNrZW4uCisKK01lZGFuIHZhcmlhYmVsc3Vic3RpdHVlcmluZyBn9nJzIHDlIGFsbGEgZuRsdCBpIHN0eXJmaWxlbiDkciBkZXQgbuVncmEgYXYKK2bkbHRlbiBzb20gYW525G5kcyBvY2ggYmVo9nZzIHZpZCBieWdnbmluZyBpbm5hbiBzdWJzdGl0dWVyaW5nZW4g5G5udSBoYXIKK3V0ZvZydHMuIETkcmb2ciBn5XIgZGV0IGludGUgYXR0IGFuduRuZGEgdmFyaWFibGVyIGkgZuRsdGVuIFxmQlBhY2thZ2VcZlAsCitcZkJTb3VyY2VcZlAgb2NoIFxmQkFyY2hpdGVjdHVyZVxmUC4KKworVmFyaWFiZWxzdWJzdGl0dWVyaW5nIHNrZXIg9nZlciBpbm5laOVsbGV0IGkgZuRsdGVuIGVmdGVyIGF0dCBkZSBoYXIKK3RvbGthdHMsIHZpbGtldCBpbm5lYuRyIGF0dCBvbSBkdSB2aWxsIGF0dCBlbiB2YXJpYWJlbCBza2FsbCBleHBhbmRlcmFzIPZ2ZXIKK2ZsZXJhIHJhZGVyIHPlIGJlaPZ2ZXIgZHUgaW50ZSBpbmtsdWRlcmEgZXR0IGJsYW5rc3RlZyBlZnRlcgorbnlyYWRzdGVja25ldC4gRGV0dGEgZ/ZycyBpbXBsaWNpdCBu5HIgZuRsdGV0IHNrcml2cyB1dC4gVGlsbCBleGVtcGVsLCBvbQordmFyaWFibGVuIFxmQiR7RGVzY3JpcHRpb259XGZQIHPkdHRzIHRpbGwgImZvbyDkciBiYXIuJHtOZXdsaW5lfWZvbyDkciBicmEuIgorb2NoIGR1IGhhciBm9mxqYW5kZSBm5Gx0OgorCisgRGVzY3JpcHRpb246IHByb2dyYW1tZXQgZm9vCisgICR7RGVzY3JpcHRpb259CisgIC4KKyAgTWVyIHRleHQuCisKK1PlIGJsaXIgcmVzdWx0YXRldDoKKworIERlc2NyaXB0aW9uOiBwcm9ncmFtbWV0IGZvbworICBmb28g5HIgYmFyLgorICBmb28g5HIgYnJhLgorICAuCisgIE1lciB0ZXh0LgorCitWYXJpYWJsZXIga2FuIHPkdHRhcyBnZW5vbSBhdHQgYW525G5kYSBrb21tYW5kb3JhZHNmbGFnZ2FuIFxmQlwtVlxmUC4gRGUga2FuCivkdmVuIGFuZ2VzIGkgZmlsZW4gXGZCZGViaWFuL3N1YnN0dmFyc1xmUCAoZWxsZXIgdmlsa2VuIHNvbSBoZWxzdCBhbm5hbiBmaWwgc29tCithbmdlcyBtZWQgZmxhZ2dhbiBcZkJcLVRcZlApLiBGaWxlbiBiZXN05XIgYXYgcmFkZXIgcOUgZm9ybWVuCitcZkluYW1uXGZQXGZCPVxmUFxmSXbkcmRlXGZQLiBBdnNsdXRhbmRlIGJsYW5rc3RlZyBw5SBlbiByYWQsIGJsYW5rYSByYWRlciBvY2ggcmFkZXIKK3NvbSBi9nJqYXIgbWVkIGVuIFxmQiNcZlBcLXN5bWJvbCAoa29tbWVudGFyZXIpIGlnbm9yZXJhcy4KKworSSB0aWxs5GdnIORyIGb2bGphbmRlIHN0YW5kYXJkdmFyaWFibGVyIHRpbGxn5G5nbGlnYToKKy5UUCAKK1xmQkFyY2hcZlAKK0RlbiBha3R1ZWxsYSBieWdnYXJraXRla3R1cmVuIChmcuVuIFxmQmRwa2cgXC1cLXByaW50XC1hcmNoaXRlY3R1cmVcZlApLgorLlRQIAorXGZCc291cmNlOlZlcnNpb25cZlAKK1ZlcnNpb24gZvZyIGvkbGxrb2RzcGFrZXRldC4KKy5UUCAKK1xmQnNvdXJjZTpVcHN0cmVhbVwtVmVyc2lvblxmUAorVmVyc2lvbiBw5SB1cHBzdHL2bXNr5Gxsa29kc3Bha2V0ZXQsIGlua2x1c2l2ZSBEZWJpYW52ZXJzaW9uZW5zIGVwb2ssIG9tCitz5WRhbiBmaW5ucy4KKy5UUCAKK1xmQmJpbmFyeTpWZXJzaW9uXGZQCitEZW4gYmlu5HJhIHBha2V0dmVyc2lvbmVuIChzb20ga2FuIGF2dmlrYSBmcuVuIHNvdXJjZTpWZXJzaW9uLCB0aWxsIGV4ZW1wZWwKK2kgZW4gYmluTk1VKS4KKy5UUCAKK1xmQlNvdXJjZVwtVmVyc2lvblxmUAorVmVyc2lvbmVuIHDlIGvkbGxrb2RzcGFrZXRldCAoZnLlbiBjaGFuZ2Vsb2dcLWZpbGVuKS4gVmFyaWFiZWxuIFxmQmF2cuVkc1xmUAorZnLlbiBlZnRlcnNvbSBiZXR5ZGVsc2VuIHNraWxqZXIgc2lnIGZy5W4gZnVua3Rpb25lbiwgYW525G5kIGkgc3TkbGxldAorXGZCc291cmNlOlZlcnNpb25cZlAgZWxsZXIgXGZCYmluYXJ5OlZlcnNpb25cZlAgYWxsdCBlZnRlcnNvbSB2YWQgc29tIORyIGzkbXBsaWd0LgorLlRQIAorXGZCSW5zdGFsbGVkXC1TaXplXGZQCitEZW4gdG90YWxhIHN0b3JsZWtlbiBw5SBwYWtldGV0cyBpbnN0YWxsZXJhZGUgZmlsZXIuIFbkcmRldCBrb3BpZXJhcyBpbiBpCittb3RzdmFyYW5kZSBm5Gx0IGkga29udHJvbGxmaWxlbi4gT20gZHUgc3TkbGxlciBpbiBkZXQga29tbWVyIGRldCBhdHQKK2Vyc+R0dGEgduRyZGV0IHDlIGbkbHRldC4gT20gdmFyaWFiZWxuIGludGUg5HIgc2F0dCBrb21tZXIKK1xmQmRwa2dcLWdlbmNvbnRyb2xcZlAgYXR0IGFuduRuZGEgXGZCZHUgXC1rIGRlYmlhbi90bXBcZlAgZvZyIGF0dCBoaXR0YSBkZXQKK2b2cnZhbGRhIHbkcmRldC4KKy5UUCAKK1xmQkV4dHJhXC1TaXplXGZQCitZdHRlcmxpZ2FyZSBkaXNrdXRyeW1tZSBzb20gYW525G5kcyBu5HIgcGFrZXRldCBpbnN0YWxsZXJhcy4gT20gduRyZGV0IORyCitzYXR0IGtvbW1lciBkZXNzIHbkcmRlIGF0dCBs5GdnYXMgdGlsbCBcZkJJbnN0YWxsZWRcLVNpemVcZlBcLXZhcmlhYmVsbnMgduRyZGUKKyhvYXZzZXR0IG9tIGRlbiBzYXR0cyBleHBsaWNpdCBlbGxlciBvbSBkZXQgZvZydmFsZGEgduRyZGV0IGFuduRuZHMpIGlubmFuCitkZXQga29waWVyYXMgdGlsbCBrb250cm9sbGZpbGVucyBm5Gx0IFxmQkluc3RhbGxlZFwtU2l6ZVxmUC4KKy5UUCAKK1xmQkY6XGZQXGZJZuRsdG5hbW5cZlAKK1bkcmRldCBw5SB1dGRhdGFm5Gx0ZXQgXGZJZuRsdG5hbW5cZlAgKHNvbSBt5XN0ZSBhbmdlcyBtZWQgcuR0dCBmb3JtIGF2IHN0b3JhCitvY2ggc23lIGJva3N05HZlcikuIE9tIGR1IHPkdHRlciBkZXNzYSB2YXJpYWJsZXIgaORuZGVyIGluZ2VudGluZyBm9nJ1dG9tCitk5HIgZGUgZXhwbGljaXQgZXhwYW5kZXJhdHMuCisuVFAgCitcZkJGb3JtYXRcZlAKK0Zvcm1hdGV0IHDlIGZpbGVuIFxmQi5jaGFuZ2VzXGZQIHNvbSBza2FwYXRzIGF2IGRlbm5hIHZlcnNpb24gYXYKK2vkbGxrb2RzcGFrZXRlcmluZ3Nza3JpcHRlbi4gT20gZHUgc+R0dGVyIGRlbm5hIHZhcmlhYmVsIGtvbW1lciBpbm5laOVsbGV0IGkKK1xmQkZvcm1hdFxmUFwtZuRsdGV0IGkgZmlsZW4gXGZCLmNoYW5nZXNcZlAgb2Nrc+UgYXR0IORuZHJhcy4KKy5UUCAKK1xmQk5ld2xpbmVcZlAsIFxmQlNwYWNlXGZQLCBcZkJUYWJcZlAKK0Rlc3NhIHZhcmlhYmxlciBpbm5laOVsbGVyIG1vdHN2YXJhbmRlIHRlY2tlbiAocmFkYnJ5dG5pbmcsIGJsYW5rc3RlZywKK3RhYmJzdGVnKS4KKy5UUCAKK1xmQnNobGliczpcZlBcZkliZXJvZW5kZWbkbHRcZlAKK1ZhcmlhYmVsaW5zdORsbG5pbmdhciBw5SBkZW4gaORyIGZvcm1lbiBza2FwYXMgYXYgXGZCZHBrZ1wtc2hsaWJkZXBzXGZQLgorLlRQIAorXGZCZHBrZzpVcHN0cmVhbVwtVmVyc2lvblxmUAorVXBwc3Ry9m1zdmVyc2lvbmVuIGF2IGRwa2cuCisuVFAgCitcZkJkcGtnOlZlcnNpb25cZlAKK0Z1bGxzdORuZGlnIHZlcnNpb24gYXYgZHBrZy4KKy5MUAorT20gZW4gdmFyaWFiZWwgcmVmZXJlcmFzIHRpbGwgbWVuIGludGUgZGVmaW5pZXJhcyBrb21tZXIgZW4gdmFybmluZyBhdHQKK2dlbmVyZXJhcyBvY2ggZXR0IHRvbXQgduRyZGUgYW525G5kcy4KKy4KKy5TSCBGSUxFUgorLlRQIAorXGZCZGViaWFuL3N1YnN0dmFyc1xmUAorTGlzdGEg9nZlciBzdWJzdGl0dWVyaW5nc3ZhcmlhYmxlciBvY2ggXC125HJkZW4uCisuCisuU0ggUFJPR1JBTUZFTAorVGlkcHVua3RlbiBw5SBm5Gx09nZlcnN0eXJuaW5nIGludHLkZmZhciBq5G1m9nJ0IG1lZCBpbnN05GxsbmluZyBhdiB2aXNzYQorc3RhbmRhcmR1dGRhdGFm5Gx0IORyIGdhbnNrYSBm9nJ2aXJyYWQuCisKKy5TSCAiU0UgxFZFTiIKK1xmQmRwa2dcZlAoMSksIFxmQmRwa2dcLWdlbmNoYW5nZXNcZlAoMSksIFxmQmRwa2dcLWdlbmNvbnRyb2xcZlAoMSksCitcZkJkcGtnXC1zaGxpYmRlcHNcZlAoMSksIFxmQmRwa2dcLXNvdXJjZVxmUCgxKS4KKy4KKy5TSCBG1lJGQVRUQVJFCitVcHBob3ZzcuR0dHNza3lkZGF0IKkgMTk5NVwtMTk5NiBJYW4gSmFja3NvbgorLmJyCitVcHBob3ZzcuR0dHNza3lkZGF0IKkgMjAwMCBXaWNoZXJ0IEFra2VybWFuCisuc3AKK0RldHRhIORyIGZyaSBwcm9ncmFtdmFyYTsgc2UgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAyIGVsbGVyCitzZW5hcmUgZvZyIGtvcGllcmluZ3N2aWxsa29yLiBEZXQgZmlubnMgSU5HRU4gR0FSQU5USS4KKy5TSCAi1lZFUlPEVFROSU5HIgorUGV0ZXIgS3JlZnRpbmcgb2NoIERhbmllbCBOeWxhbmRlci4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL3N2L2RlYi1zeW1ib2xzLjUgYi9kcGtnLTEuMTYuMS4xL21hbi9zdi9kZWItc3ltYm9scy41Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQyMzlkYjYKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9zdi9kZWItc3ltYm9scy41CkBAIC0wLDAgKzEsNzAgQEAKKy5cIiBBdXRob3I6IFJhcGhhw6tsIEhlcnR6b2cKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlRIIGRlYlwtc3ltYm9scyA1IDIwMTFcLTA4XC0xNCBEZWJpYW5wcm9qZWt0ZXQgZHBrZ1wtdmVya3R5Z2VuCisuU0ggTkFNTgorZGViXC1zeW1ib2xzIFwtIERlYmlhbnMgdXT2a2FkZSBpbmZvcm1hdGlvbnNmaWwgZvZyIGRlbGFkZSBiaWJsaW90ZWsKKy4KKy5TSCBTWU5PUFMKK3N5bWJvbHMKKy4KKy5TSCBCRVNLUklWTklORworRm9ybWF0ZXQgZvZyIHBvc3Rlcm5hIG1lZCB1dPZrYWQgYmVyb2VuZGVpbmZvcm1hdGlvbiBm9nIgZGVsYWRlIGJpYmxpb3RlayBpCitkZXNzYSBmaWxlciDkcjoKKy5QUAorXGZJYmlibGlvdGVrc1wtc29uYW1uIGh1dnVkYmVyb2VuZGVtYWxsXGZQCisuYnIKK1sgfCBcZklhbHRlcm5hdGl2XC1iZXJvZW5kZW1hbGxcZlAgXQorLmJyCitbID8gXQorLmJyCitbICogXGZJZuRsdG5hbW5cZlA6IFxmSWbkbHR25HJkZVxmUCBdCisuYnIKK1sgPyBdCisgXGZJc3ltYm9sXGZQIFxmSW1pbnN0YVwtdmVyc2lvblxmUFsgXGZJaWQgZvZyIGJlcm9lbmRlbWFsbFxmUCBdCisuUAorXGZJQmlibGlvdGVrc1wtc29uYW1uXGZQIORyIGRldCBleGFrdGEgduRyZGV0IGZy5W4gU09OQU1FXC1m5Gx0ZXQsIHNvbSBkZXQKK2V4cG9ydGVyYXMgZnLlbiBcZkJvYmpkdW1wXGZQKDEpLiBFbiBcZkliZXJvZW5kZW1hbGxcZlAg5HIgZXR0IGJlcm9lbmRlIGTkcgorXGZJI01JTlZFUiNcZlAgZHluYW1pc2t0IGVyc+R0dHMgYXYgZW4gdmVyc2lvbnNrb250cm9sbHJhZCAiKD49CitcZkltaW5zdGFcLXZlcnNpb25cZlApIiBlbGxlciBhdiBpbmdlbnRpbmcgKG9tIGV0dCBlaiB2ZXJzaW9uc3N0eXJ0IGJlcm9lbmRlCithbnNlcyB0aWxscuRja2xpZ3QpLgorLlAKK1ZhcmplIGV4cG9ydGVyYWQgXGZJc3ltYm9sXGZQIChhbmdlcyBzb20gXGZJbmFtblxmUEBcZkl2ZXJzaW9uXGZQLCBk5HIgXGZJdmVyc2lvblxmUCDkcgorIkJhc2UiIG9tIGJpYmxpb3Rla2V0IGludGUg5HIgdmVyc2lvbnNzdHlydCkgYXNzb2NpZXJhcyBtZWQgZW4KK1xmSW1pbnN0YVwtdmVyc2lvblxmUCBpIHNpbiBiZXJvZW5kZW1hbGwgKGh1dnVkYmVyb2VuZGVtYWxsZW4gYW525G5kcyBvbQorXGZJaWRcLWb2clwtYmVyb2VuZGVtYWxsXGZQIGludGUgZmlubnMpLiBEZW4gZvZyc3RhIGFsdGVybmF0aXZhIGJlcm9lbmRlbWFsbGVuCitm5XIgbnVtbWVyIDEsIGRlbiBhbmRyYSAyLCBvc3YuCisuUAorQWxsYSBwb3N0ZXIgaSBldHQgYmlibGlvdGVrIGthbiDkdmVuIGlubmVo5WxsYSBu5WdyYSBm5Gx0IG1lZAorbWV0YWluZm9ybWF0aW9uLiBEZXNzYSBm5Gx0IGxhZ3JhcyBw5SByYWRlciBzb20gYvZyamFyIG1lZCBlbiBhc3Rlcmlzay4gRvZyCitu5HJ2YXJhbmRlIORyIGRldCBlbmRhIGdpbHRpZ2EgZuRsdGV0IFxmSUJ1aWxkXC1EZXBlbmRzXC1QYWNrYWdlXGZQLCB2aWxrZXQgYW5nZXIKK25hbW5ldCBw5SBkZXQgIlwtZGV2IlwtcGFrZXQgc29tIGj2ciB0aWxsIGJpYmxpb3Rla2V0LCBvY2ggYW525G5kcyBhdgorXGZCZHBrZ1wtc2hsaWJkZXBzXGZQIGb2ciBhdHQgc2UgdGlsbCBhdHQgZGV0IGJlcm9lbmRlIHNvbSBnZW5lcmVyYXMg5HIKK+V0bWluc3RvbmUgbGlrYSBzdHJpa3Qgc29tIG1vdHN2YXJhbmRlIGJ5Z2diZXJvZW5kZS4KKy5TSCBFWEVNUEVMCisuU1MgIkVua2xhIHN5bWJvbGZpbGVyIgorLlBQCitsaWJmdHAuc28uMyBsaWJmdHAzICNNSU5WRVIjCisgRGVmYXVsdE5ldGJ1ZkBCYXNlIDMuMVwtMVwtNgorIEZ0cEFjY2Vzc0BCYXNlIDMuMVwtMVwtNgorIFs/XQorLlNTICJBdmFuY2VyYWQgc3ltYm9sc1wtZmlsIgorLlBQCitsaWJHTC5zby4xIGxpYmdsMQorLmJyCit8IGxpYmdsMVwtbWVzYVwtZ2x4ICNNSU5WRVIjCisuYnIKKyogQnVpbGRcLURlcGVuZHNcLVBhY2thZ2U6IGxpYmdsMVwtbWVzYVwtZGV2CisgcHVibGljR2xTeW1ib2xAQmFzZSA2LjNcLTEKKyBbP10KKyBpbXBsZW1lbnRhdGlvblNwZWNpZmljU3ltYm9sQEJhc2UgNi41LjJcLTcgMQorIFs/XQorLlNIICJTRSDEVkVOIgorXGZCaHR0cDovL3dpa2kuZGViaWFuLm9yZy9Qcm9qZWN0cy9JbXByb3ZlZERwa2dTaGxpYmRlcHNcZlAKKy5icgorXGZCZHBrZ1wtc2hsaWJkZXBzXGZQKDEpLCBcZkJkcGtnXC1nZW5zeW1ib2xzXGZQKDEpLgorLlNIICLWVkVSU8RUVE5JTkciCitQZXRlciBLcmVmdGluZyBvY2ggRGFuaWVsIE55bGFuZGVyLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vc3YvZGViLXRyaWdnZXJzLjUgYi9kcGtnLTEuMTYuMS4xL21hbi9zdi9kZWItdHJpZ2dlcnMuNQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43MGM1ZTc4Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vc3YvZGViLXRyaWdnZXJzLjUKQEAgLTAsMCArMSw2OSBAQAorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlwiCisuXCIgVGhpcyBmaWxlIHdhcyBnZW5lcmF0ZWQgd2l0aCBwbzRhLiBUcmFuc2xhdGUgdGhlIHNvdXJjZSBmaWxlLgorLlwiCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuVEggZGViXC10cmlnZ2VycyA1IDIwMTFcLTA4XC0xNCBEZWJpYW5wcm9qZWt0ZXQgZHBrZ1wtdmVya3R5Z2VuCisuU0ggTkFNTgorZGViXC10cmlnZ2VycyBcLSB1dGz2c2FyZSBm9nIgcGFrZXQKKy4KKy5TSCBTWU5PUFMKK3V0bPZzYXJlCisuCisuU0ggQkVTS1JJVk5JTkcKK0V0dCBwYWtldCBhbmdlciBodXIgZGV0IGb2cmjlbGxlciBzaWcgdGlsbCBlbiBlbGxlciBmbGVyYSB1dGz2c2FyZSBnZW5vbSBhdHQKK3RhIG1lZCBlbiBmaWwgXGZJdHJpZ2dlcnNcZlAgaSBzaXR0IHN0eXJhcmtpdiAoZHZzLiBcZklERUJJQU4vdHJpZ2dlcnNcZlAgbuRyCitwYWtldGV0IHNrYXBhcykuCisuUFAKK0ZpbGVuIGlubmVo5WxsZXIgZGlyZWt0aXYsIGV0dCBwZXIgcmFkLiBJbmxlZGFuZGUgb2NoIGF2c2x1dGFuZGUgYmxhbmt0ZWNrZW4KK29jaCBhbGx0IGVmdGVyIGRldCBm9nJzdGEgXGZCI1xmUCBw5SBlbiByYWQga29tbWVyIGF0dCBrbGlwcGFzIGJvcnQgb2NoIHRvbW1hCityYWRlciBpZ25vcmVyYXMuCisuUFAKK0RlIHN0eXJkaXJla3RpdiBzb20gZvZyIG7kcnZhcmFuZGUgc3T2ZHMgZvZyIHV0bPZzYXJlIORyOgorLlBQCisuaW4gKzUKK1xmQmludGVyZXN0XGZQIFxmSXV0bPZzYXJuYW1uXGZQCisuUFAKKy5pbiArNQorXGZCaW50ZXJlc3RcLW5vYXdhaXRcZlAgXGZJdXRs9nNhcm5hbW5cZlAKKy5QUAorLmluICs1CitBbmdlciBhdHQgcGFrZXRldCDkciBpbnRyZXNzZXJhdCBhdiBkZW4gbmFtbmdpdm5hIHV0bPZzYXJlbi4gQWxsYSB1dGz2c2FyZQorc29tIGV0dCBwYWtldCDkciBpbnRyZXNzZXJhdCBhdiBt5XN0ZSBsaXN0YXMgZ2Vub20gYXR0IGFuduRuZGEgZGV0dGEKK2RpcmVrdGl2IGkgdXRs9nNhclwtc3R5cmZpbGVuLiBWYXJpYW50ZW4gIm5vYXdhaXQiIHPkdHRlciBpbnRlIGRldCB1dGz2c2FuZGUKK3Bha2V0ZXQgaSBhdnZha3RhbmRlIHRpbGxzdOVuZC4gRGV0dGEgYvZyIGFuduRuZGFzIG7kciBmdW5rdGlvbmFsaXRldGVuIHNvbQordGlsbGhhbmRhaOVsbHMgYXYgdXRs9nNhcmVuIGludGUg5HIgYXZn9nJhbmRlLgorLlBQCisuaW4gKzUKK1xmQmFjdGl2YXRlXGZQIFxmSXV0bPZzYXJuYW1uXGZQCisuUFAKKy5pbiArNQorXGZCYWN0aXZhdGVcLW5vYXdhaXRcZlAgXGZJdXRs9nNhcm5hbW5cZlAKKy5QUAorLmluICs1CitH9nIgc+UgYXR0IORuZHJpbmdhciBhdiBkZXR0YSBwYWtldHMgdGlsbHN05W5kIGFrdGl2ZXJhciBkZW4gYW5naXZuYQordXRs9nNhcmVuLiBVdGz2c2FyZW4gYWt0aXZlcmFzIG7kciBlbiBhdiBm9mxqYW5kZSBvcGVyYXRpb25lciBw5WL2cmphczoKK3VwcGFja25pbmcsIGtvbmZpZ3VyZXJpbmcsIGJvcnR0YWduaW5nIChvY2tz5SBu5HIgZGV0IHRhcyBib3J0IHRpbGwgZvZyZGVsCithdiBldHQgcGFrZXQgZGV0IHN05XIgaSBrb25mbGlrdCBtZWQpLCByZW5zbmluZyBvY2gKK2F2a29uZmlndXJlcmluZy5WYXJpYW50ZW4gIm5vYXdhaXQiIHPkdHRlciBpbnRlIGRlIHV0bPZzYW5kZSBwYWtldGVuIGkKK2F2dmFrdGFuZGUgdGlsbHN05W5kLiBEZXR0YSBi9nIgYW525G5kYXMgbuRyIGZ1bmt0aW9uYWxpdGV0ZW4gc29tCit0aWxsaGFuZGFo5WxscyBhdiB1dGz2c2FyZW4gaW50ZSDkciBhdmf2cmFuZGUuCisuUFAKKy5pbiArNQorT20gcGFrZXRldCBm9nJzdmlubmVyIG7kciBldHQgYW5uYXQgcGFrZXQgcGFja2FzIHVwcCBrb21tZXIgdXRs9nNhcmVuIGF0dAorYWt0aXZlcmFzIG7kciBm9nJzdmlubmFuZGV0IHVwcHTkY2tzIG1vdCBzbHV0ZXQgYXYgdXBwYWNrbmluZ2VuLiBIYW50ZXJpbmcKK2F2IHV0bPZzYXJlLCBvY2ggZW4g9nZlcmflbmcgZnLlbiAiduRudGFyIHDlIHV0bPZzYXJlIiB0aWxsICJpbnN0YWxsZXJhdCIKK29yc2FrYXIgaW50ZSBha3RpdmVyaW5nYXIuIE7kciBkZXQgZ+RsbGVyIHVwcGFja25pbmcga29tbWVyIGLlZGUgdXRs9nNhcmUKK3NvbSBvbW7kbW5zIGkgZ2FtbGEgb2NoIG55YSB2ZXJzaW9uZXIgYXYgcGFrZXRldCBhdHQgYWt0aXZlcmFzLgorLlBQCitPa+RuZGEgZGlyZWt0aXYg5HIgZXR0IGZlbCBzb20gZvZyaGluZHJhciBwYWtldGV0IGZy5W4gYXR0IGluc3RhbGxlcmFzLgorLlBQCitWYXJpYW50ZXJuYSBtZWQgIlwtbm9hd2FpdCIgc3T2ZHMgZW5kYXN0IGF2IGRwa2cgMS4xNi4xIG9jaCBzZW5hcmUsIG9jaAora29tbWVyIGxlZGEgdGlsbCBmZWwgb20gZGUgYW525G5kcyBtZWQg5GxkcmUgdmVyc2lvbmVyIGF2IGRwa2cuIERldAorcmVrb21tZW5kZXJhcyBk5HJm9nIgYXR0IGR1IGzkZ2dlciB0aWxsIGV0dCAiUHJlXC1EZXBlbmRzOiBkcGtnICg+PQorMS4xNi4xKSIgdGlsbCBldmVudHVlbGxhIHBha2V0IHNvbSB2aWxsIGFuduRuZGEgZGVzc2EgZGlyZWt0aXYuCisuCisuU0ggIlNFIMRWRU4iCitcZkJkcGtnXC10cmlnZ2VyXGZQKDEpLCBcZkJkcGtnXGZQKDEpLCBcZkIvdXNyL3NoYXJlL2RvYy9kcGtnXC1kZXYvdHJpZ2dlcnMudHh0Lmd6XGZQLgorLlNIICLWVkVSU8RUVE5JTkciCitQZXRlciBLcmVmdGluZyBvY2ggRGFuaWVsIE55bGFuZGVyLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vc3YvZGViLXZlcnNpb24uNSBiL2Rwa2ctMS4xNi4xLjEvbWFuL3N2L2RlYi12ZXJzaW9uLjUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTliOTUzMQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL3N2L2RlYi12ZXJzaW9uLjUKQEAgLTAsMCArMSwxMTAgQEAKKy5cIiBJbmNsdWRlcyB0ZXh0IGZyb20gdGhlIERlYmlhbiBQb2xpY3kgcHJvYmFibHkgYnkgSWFuIEphY2tzb24gYW5kIG90aGVycworLlwiIFRoZSBjb3B5cmlnaHQgZ2l2ZW4gYmVsb3cgaXMgdGhhdCBvZiB0aGUgd2hvbGUgcG9saWN5LCBidXQgcHJvYmFibHkKKy5cIiBpbmNvbXBsZXRlLgorLlwiIENvbnZlcnNpb24gdG8gcm9mZiBieSBGcmFuayBMaWNodGVuaGVsZAorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlwiCisuXCIgVGhpcyBmaWxlIHdhcyBnZW5lcmF0ZWQgd2l0aCBwbzRhLiBUcmFuc2xhdGUgdGhlIHNvdXJjZSBmaWxlLgorLlwiCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuVEggZGViXC12ZXJzaW9uIDUgMjAxMVwtMDhcLTE0IERlYmlhbnByb2pla3RldCBEZWJpYW4KKy5TSCBOQU1OCitkZWJcLXZlcnNpb24gXC0gRm9ybWF0IHDlIHZlcnNpb25zbnVtbWVyIGb2ciBEZWJpYW5wYWtldAorLgorLlNIIFNZTk9QUworW1xmSWVwb2tcZlBcZkI6XGZQXVxmSXVwcHN0cvZtc3ZlcnNpb25cZlBbXGZCXC1cZlBcZklkZWJpYW51cHBkYXRlcmluZ1xmUF0KKy5TSCBCRVNLUklWTklORworVmVyc2lvbnNudW1tZXIgc29tIGFuduRuZHMgZvZyIERlYmlhbnMgYmlu5HJcLSBvY2gga+RsbGtvZHNwYWtldCBiZXN05XIgYXYKK3RyZSBrb21wb25lbnRlci4gRGUg5HI6CisuVFAgCitcZkllcG9rXGZQCitFdHQgZW5zYW10ICh2YW5saWd0dmlzIGxpdGV0KSBoZWx0YWxzduRyZGUgc3T2cnJlIORuIG5vbGwuIERldCBrYW4KK3V0ZXNsdXRhcywgaSBz5SBmYWxsIGFudGFzIGRldCB2YXJhIG5vbGwuIE9tIGRldCB1dGVzbHV0cyBrYW4gaW50ZQorXGZJdXBwc3Ry9m1zdmVyc2lvblxmUCBpbm5laOVsbGEga29sb250ZWNrZW4uCisuSVAKK0bkbHRldCDkciB0aWxsIGb2ciBhdHQgcuR0dGEgdGlsbCBmZWwgaSB2ZXJzaW9uc251bW1lciBpIHRpZGlnYXJlIHZlcnNpb25lcgorYXYgcGFrZXRldCwgc2FtdCBhdHRyIGhhbnRlcmEgZvZy5G5kcmluZ2FyIGkgcGFrZXRldHMKK3ZlcnNpb25zbnVtcmVyaW5nc3N5c3RlbS4KKy5UUCAKK1xmSXVwcHN0cvZtc3ZlcnNpb25cZlAKK0RldHRhIORyIGh1dnVkZGVsZW4gYXYgdmVyc2lvbnNudW1yZXQuIERldCDkciB2YW5saWd0dmlzIHZlcnNpb25zbnVtcmV0IGb2cgorb3JpZ2luYWxwYWtldGV0ICgidXBwc3Ry9m1zcGFrZXRldCIpIHNvbSBcZkkuZGViXGZQXC1maWxlbiBza2FwYXRzIGZy5W4sIG9tIGV0dAorc+VkYW50IGZpbm5zLiBOb3JtYWx0IGFuZ2VzIGRldCBw5SBzYW1tYSBmb3JtIHNvbSBhbnbkbmRzIGF2Cit1cHBzdHL2bXNm9nJmYXR0YXJlbi9m9nJmYXR0YXJuYSwgbWVuIGRldCBrYW4gYmVo9nZhIGZvcm1hdGVyYXMgb20gZvZyIGF0dAorcGFzc2EgbWVkIHBha2V0aGFudGVyYXJlbnMgZm9ybWF0IG9jaCBq5G1m9nJlbHNlZnVua3Rpb24uCisuSVAKK0h1ciBwYWtldGhhbnRlcmFyZW4gauRtZvZyIHZlcnNpb25zbnVtbWVyIG7kciBkZXQgZ+RsbGVyIFxmSXVwcHN0cvZtc3ZlcnNpb25cZlAKK2Jlc2tyaXZzIG5lZGFuLiBG5Gx0ZXQgXGZJdXBwc3Ry9m1zdmVyc2lvblxmUCBpIHZlcnNpb25zbnVtcmV0IGthbiBpbnRlCit1dGVs5G1uYXMuCisuSVAKK0bkbHRldCBcZkl1cHBzdHL2bXN2ZXJzaW9uXGZQIGthbiBlbmRhc3QgaW5uZWjlbGxhIGFsZmFudW1lcmlza2EgdGVja2VuCisoIkFcLVphXC16MFwtOSIpIG9jaCB0ZWNrbmVuIFxmQi5cZlAgXGZCK1xmUCBcZkJcLVxmUCBcZkI6XGZQIFxmQn5cZlAgKHB1bmt0LCBwbHVzLAorYmluZGVzdHJlY2ssIGtvbG9uLCB0aWxkZSkgb2NoIGL2ciBpbmxlZGFzIG1lZCBlbiBzaWZmcmEuIE9tIGRldCBpbnRlIGZpbm5zCitu5WdvbiBcZklkZWJpYW51cHBkYXRlcmluZ1xmUCB0aWxs5XRzIGludGUgYmluZGVzdHJlY2sgb2NoIG9tIGRldCBpbnRlIGZpbm5zCitu5WdvbiBcZkllcG9rXGZQIHRpbGzldHMgaW50ZSBrb2xvbnRlY2tlbi4KKy5UUCAKK1xmSWRlYmlhbnVwcGRhdGVyaW5nXGZQCitEZW5uYSBkZWwgYXYgdmVyc2lvbnNudW1yZXQgYW5nZXIgdmVyc2lvbmVuIGb2ciBEZWJpYW5wYWtldGV0IHNvbSBiYXNlcmF0cworcOUgdXBwc3Ry9m1zdmVyc2lvbmVuLiBEZW4ga2FuIGVuZGFzdCBpbm5laOVsbGEgYWxmYW51bWVyaXNrYSB0ZWNrZW4gc2FtdAordGVja25lbiBcZkIrXGZQIFxmQi5cZlAgXGZCflxmUCAocGx1cywgcHVua3QsIHRpbGRlKSBvY2ggauRtZvZycyBw5SBzYW1tYSBz5HR0IHNvbQorXGZJdXBwc3Ry9m1zdmVyc2lvblxmUC4KKy5JUAorRuRsdGV0IORyIHZhbGZyaXR0IFwtIG9tIGRldCBpbnRlIGFuZ2VzIHPlIGthbiBpbnRlIFxmSXVwcHN0cvZtc3ZlcnNpb25cZlAKK2lubmVo5WxsYSBu5WdvdCBiaW5kZXN0cmVjay4gSSBz5SBmYWxsIGFuZ2VyIHZlcnNpb25zbnVtcmV0IGF0dCBlbgorcHJvZ3JhbXZhcmEgc2tyaXZpdHMgc3BlY2lmaWt0IGb2ciBhdHQgZ/ZyYXMgdGlsbCBldHQgRGViaWFucGFrZXQsIG9jaCBhdHQKK2RldCBk5SBlbmRhc3QgZmlubnMgZW4gImRlYmlhbmlzZXJpbmciIGF2IGRldCBvY2ggYXR0IGTkcmb2ciBiZWj2dnMgaW5nZW4KK3VwcGRhdGVyaW5nc2luZm9ybWF0aW9uIHZpZCBzaWRhbiBhdi4KKy5JUAorVmFubGlndHZpcyBi9nJqYXIgXGZJZGViaWFudXBwZGF0ZXJpbmdcZlAgb20gcOUgIjEiIHZhcmplIGflbmcKK1xmSXVwcHN0cvZtc3ZlcnNpb25cZlAg9mthcy4KKy5JUAorRHBrZyBkZWxhciB1cHAgdmVyc2lvbnNudW1yZXQgdmlkIGRldCBzaXN0YSBiaW5kZXN0cmVja2V0IGkgc3Ry5G5nZW4gKG9tCitz5WRhbnQgZmlubnMpIGb2ciBhdHQgYmVzdORtbWEgXGZJdXBwc3Ry9m1zdmVyc2lvblxmUCBvY2gKK1xmSWRlYmlhbnVwcGRhdGVyaW5nXGZQLiBPbSBcZklkZWJpYW51cHBkYXRlcmluZ1xmUCBzYWtuYXMgcuRrbmFzIGRldCBzb20gdGlkaWdhcmUKK+RuIG9tIGbkbHRldCBleGlzdGVyYXIgKG1lbiBub3RlcmEgYXR0IFxmSWRlYmlhbnVwcGRhdGVyaW5nXGZQIORyIGRlbiBtaW5zdAorc2lnbmlmaWthbnRhIGRlbGVuIGF2IHZlcnNpb25zbnVtcmV0KS4KKy5TUyBTb3J0ZXJpbmdzYWxnb3JpdG0KK1Bha2V0aGFudGVyaW5nc3N5c3RlbWV0IGFuduRuZGVyIHNhbW1hIGFsZ29yaXRtIGb2ciBhdHQgauRtZvZyYQorXGZJdXBwc3Ry9m1zdmVyc2lvblxmUFwtIG9jaCBcZklkZWJpYW51cHBkYXRlcmluZ1xmUFwtZGVsYXJuYToKKy5QUAorU3Ry5G5nYXJuYSBq5G1m9nJzIGZy5W4gduRuc3RlciB0aWxsIGj2Z2VyLgorLlBQCitG9nJzdCBiZXN05G1zIGRlIGlubGVkYW5kZSBkZWxhciBhdiB2YXJqZSBzdHLkbmcgc29tIGVuYmFydCBiZXN05XIgYXYgdGVja2VuCitzb20gaW50ZSDkciBzaWZmcm9yLiBEZXNzYSBi5WRhIGRlbGFyIChhdiB2aWxrYSBkZW4gZW5hIGthbiB2YXJhIHRvbSkKK2rkbWb2cnMgbGV4aWthbHQuIE9tIGVuIHNraWxsbmFkIHVwcHTkY2tzIHJldHVybmVyYXMgZGVuLiBEZW4gbGV4aWthbGEKK2rkbWb2cmVsc2VuIGrkbWb2ciBBU0NJSVwtduRyZGVuLCBtb2RpZmllcmFkIHPlIGF0dCBhbGxhIGJva3N05HZlciBzb3J0ZXJhcworZvZyZSBhbGxhIGlja2VcLWJva3N05HZlciBvY2ggc+UgYXR0IGV0dCB0aWxkZSBzb3J0ZXJhcyBm9nJlIGFsbHQsIOR2ZW4gaQorc2x1dGV0IGF2IGRlbHN0cuRuZ2VuLiBUaWxsIGV4ZW1wZWwg5HIgZvZsamFuZGUgZGVsc3Ry5G5nYXIgc29ydGVyYWRlOiAifn4iLAorIn5+YSIsICJ+IiwgdG9tbWEgZGVsc3Ry5G5nZW4sICJhIi4KKy5QUAorRORyZWZ0ZXIgYmVzdORtcyBkZSBpbmxlZGFuZGUgZGVsYXIgYXYgdmFyamUgc3Ry5G5nIHNvbSBlbmJhcnQgYmVzdOVyIGF2CitzaWZmcm9yLiBEZSBudW1lcmlza2EgduRyZGVuYSBhdiBkZXNzYSBkZWxhciBq5G1m9nJzIG9jaCBvbSBlbiBza2lsbG5hZAordXBwdORja3MgaSBq5G1m9nJlbHNlbiByZXR1cm5lcmFzIGRlbiBzb20gcmVzdWx0YXQgYXYgauRtZvZyZWxzZW4uIEb2ciBkZXR0YQor5G5kYW3lbCBy5GtuYXMgZW4gdG9tIHN0cuRuZyAodmlsa2V0IGJhcmEga2FuIHVwcHN05SBpIHNsdXRldCBhdiBkZW4gZW5hCitlbGxlciBi5WRhIHZlcnNpb25zc3Ry5G5nYXJuYSBzb20gauRtZvZycykgc29tIG5vbGwuCisuUFAKK0Rlc3NhIGLlZGEgc3RlZyAoauRtZvZyYSBvY2ggdGEgYm9ydCBpbmxlZGFuZGUgc3Ry5G5nYXIgbWVkIGlja2VcLXNpZmZyb3Igb2NoCitzaWZmcm9yKSB1cHByZXBhcyB0aWxsIGVuIGrkbWb2cmVsc2UgdXBwdORja3MgZWxsZXIgZGUgYuVkYSBzdHLkbmdhcm5hIHRhcgorc2x1dC4KKy5QUAorT2JzZXJ2ZXJhIGF0dCBlcG9rZuRsdGV0IORyIHRpbGwgZvZyIGF0dCBrdW5uYSBy5HR0YSB0aWxsIHRpZGlnYXJlIG1pc3N0YWcgaQordmVyc2lvbnNudW1yZXJpbmdlbiwgb2NoIGF0dCBoYW50ZXJhIHNpdHVhdGlvbmVyIGTkcgordmVyc2lvbnNudW1yZXJpbmdzbWV0b2RlbiDkbmRyYXMuIERldCDkciBcZkJpbnRlXGZQIHTkbmt0IGF0dCBoYW50ZXJhCit2ZXJzaW9uc251bW1lciBzb20gaW5uZWjlbGxlciBzdHLkbmdhciBhdiBib2tzdOR2ZXIgc29tCitwYWtldGhhbnRlcmluZ3NzeXN0ZW1ldCBpbnRlIGthbiB0b2xrYSAodGlsbCBleGVtcGVsICJBTFBIQSIgZWxsZXIgIlByZVwtIiksCitlbGxlciBkdW1tYSBzb3J0ZXJpbmdzb3JkbmluZ2FyLgorLlNIIFZBUk5JTkdBUgorVGlsZGV0ZWNrbmV0cyBvY2ggZGVzcyBzcGVjaWVsbGEgc29ydGVyaW5nc2VnZW5za2FwZXIgaW50cm9kdWNlcmFkZXMgaSBkcGtnCit2ZXJzaW9uIDEuMTAgb2NoIHZpc3NhIGRlbGFyIGF2IGRwa2dcLWRldiBmaWNrIGludGUgc3T2ZCBm9nIgZGV0IGb2cnLkbgorc2VuYXJlIGkgMS4xMC54XC1zZXJpZW4uCisuU0ggIlNFIMRWRU4iCitcZkJkZWJcLWNvbnRyb2xcZlAoNSksIFxmQmRlYlxmUCg1KSwgXGZCZHBrZ1xmUCgxKQorLlNIIEbWUkZBVFRBUkUKK1VwcGhvdnNy5HR0c3NreWRkYXQgqSAxOTk2LDE5OTcsMTk5OCBJYW4gSmFja3NvbiBvY2ggQ2hyaXN0aWFuIFNjaHdhcnoKKy5icgorVXBwaG92c3LkdHRzc2t5ZGRhdCCpIDIwMDcgRnJhbmsgTGljaHRlbmhlbGQKKy5zcAorRGV0dGEg5HIgZnJpIHByb2dyYW12YXJhOyBzZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgZWxsZXIKK3NlbmFyZSBm9nIga29waWVyaW5nc3ZpbGxrb3IuIERldCBmaW5ucyBJTkdFTiBHQVJBTlRJLgorLlNIICLWVkVSU8RUVE5JTkciCitQZXRlciBLcmVmdGluZyBvY2ggRGFuaWVsIE55bGFuZGVyLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vc3YvZGViLjUgYi9kcGtnLTEuMTYuMS4xL21hbi9zdi9kZWIuNQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wZjdiN2FkCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vc3YvZGViLjUKQEAgLTAsMCArMSw2NSBAQAorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlwiCisuXCIgVGhpcyBmaWxlIHdhcyBnZW5lcmF0ZWQgd2l0aCBwbzRhLiBUcmFuc2xhdGUgdGhlIHNvdXJjZSBmaWxlLgorLlwiCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuVEggZGViIDUgMjAxMVwtMDhcLTE0IERlYmlhbnByb2pla3RldCBEZWJpYW4KKy5TSCBOQU1OCitkZWIgXC0gRGViaWFucyBiaW7kcmEgcGFrZXRmb3JtYXQKKy5TSCBTWU5PUFMKK1xmSWZpbG5hbW5cZlBcZkIuZGViXGZQCisuU0ggQkVTS1JJVk5JTkcKK1wmXGZCLmRlYlxmUFwtZm9ybWF0ZXQg5HIgRGViaWFucyBiaW7kcmEgcGFrZXRmb3JtYXQuIERldCBm9nJzdOVzIGF2IGRwa2cgMC45My43Ngorb2NoIHNlbmFyZSwgb2NoIGdlbmVyZXJhcyBzb20gZvZydmFsIGF2IGFsbGEgdmVyc2lvbmVyIGF2IGRwa2cgc2VkYW4gMS4yLjAsCitvY2ggYWxsYSBpMzg2L0VMRlwtdmVyc2lvbmVyIHNlZGFuIDEuMS4xZWxmLgorLlBQCitGb3JtYXRldCBzb20gYmVza3JpdnMgaORyIGFuduRuZHMgc2VkYW4gRGViaWFuIDAuOTM7IGRldGFsamVyIG9tIGRldCBnYW1sYQorZm9ybWF0ZXQgZmlubnMgaSBcZkJkZWJcLW9sZFxmUCg1KS4KKy5TSCBGT1JNQVQKK0ZpbGVuIORyIGV0dCBcZkJhclxmUFwtYXJraXYgbWVkIGRldCBtYWdpc2thIG51bXJldAorXGZCITxhcmNoPlxmUC4gRmlsbmFtbmVuIGthbiBpbm5laOVsbGEgZXR0IGF2c2x1dGFuZGUgc25lZHN0cmVjay4KKy5QUAorRGUgXGZCdGFyXGZQXC1hcmtpdiBzb20gdGlsbOV0cyBm9nIgbuRydmFyYW5kZSDkcjsgZGVuIGdhbWxhIHN0aWxlbnMgZm9ybWF0CisodjcpLCBm9nJcLVBPU0lYXC11c3RhclwtZm9ybWF0ZXQsIGVuIGRlbG3kbmdkIGF2IEdOVVwtZm9ybWF0ZXQgKGVuZGFzdCBkZSBs5W5nYQorc/ZrduRnc1wtIG9jaCBs5G5rbmFtbmVuIGkgZGVuIG55YSBzdGlsZW4sIHN09mRzIHNlZGFuIGRwa2cgMS40LjEuMTcpLCBvY2gKK1BPU0lYXC11c3RhclwtZm9ybWF0ZXQgKGzlbmdhIG5hbW4gc3T2ZHMgc2VkYW4gZHBrZyAxLjE1LjApLiBPa+RuZGEKK3RhclwtdHlwZmxhZ2dvciBhbnNlcyB1dGf2cmEgZmVsLgorLlBQCitEZW4gZvZyc3RhIHBvc3RlbiBpIGFya2l2ZXQgaGV0ZXIgXGZCZGViaWFuXC1iaW5hcnlcZlAgb2NoIGlubmVo5WxsZXIgZXR0IGFudGFsCityYWRlciwgYXZkZWxhZGUgbWVkIG55cmFkc3RlY2tlbi4gRvZyIG7kcnZhcmFuZGUgZmlubnMgZW5kYXN0IGVuIHJhZCwKK2Zvcm1hdGV0cyB2ZXJzaW9uc251bW1lciwgXGZCMi4wXGZQLiBQcm9ncmFtIHNvbSBs5HNlciBhcmtpdiBpIGRldCBueWEgZm9ybWF0ZXQKK2L2ciB2YXJhIGb2cmJlcmVkZGEgcOUgYXR0IHVuZGVydmVyc2lvbnNudW1yZXQga2FuIGtvbW1hIGF0dCD2a2FzLCBvY2ggYXR0CitueWEgcmFkZXIga2FuIGb2cmVrb21tYSwgb2NoIHNrYWxsIGkgc+UgZmFsbCBpZ25vcmVyYSBkZXNzYS4KKy5QUAorT20gaHV2dWR2ZXJzaW9uc251bXJldCBoYXIg5G5kcmF0cyBoYXIgZW4gaW5rb21wYXRpYmVsIORuZHJpbmcgaW5m9nJ0cywgb2NoCitwcm9ncmFtbWV0IHNrYWxsIGF2YnJ5dGFzLiBPbSBz5SBpbnRlIGhhciBnam9ydHMsIHNrYWxsIHByb2dyYW1tZXQga3VubmEKK2ZvcnRz5HR0YSB1dGFuIHByb2JsZW0sIHPldmlkYSBkZXQgaW50ZSBzdPZ0ZXIgcOUgZW4gb3bkbnRhZCBwb3N0IGkgYXJraXZldAorKGb2cnV0b20gaSBzbHV0ZXQpLCBlbmxpZ3QgdmFkIGJlc2tyaXZzIG5lZGFuLgorLlBQCitEZW4gYW5kcmEgbvZkduRuZGlnYSBwb3N0ZW4gaGV0ZXIgXGZCY29udHJvbC50YXIuZ3pcZlAuIERldCDkciBldHQgZ3ppcFwtcGFja2F0Cit0YXJcLWFya2l2IHNvbSBpbm5laOVsbGVyIHBha2V0ZXRzIGtvbnRyb2xsaW5mb3JtYXRpb24sIGxhZ3JhZGUgc29tIGV0dCBhbnRhbAordmFubGlnYSBmaWxlciwgYXYgdmlsa2EgZmlsZW4gXGZCY29udHJvbFxmUCBrcuR2cyBvY2ggaW5uZWjlbGxlciBncnVuZGzkZ2dhbmRlCitrb250cm9sbGluZm9ybWF0aW9uLiBUYXJib2xsZW4gY29udHJvbCBrYW4gZXZlbnR1ZWxsdCBpbm5laOVsbGEgZW4gcG9zdCBm9nIKKyJcZkIuXGZQIiwgZGVuIGFrdHVlbGxhIGthdGFsb2dlbi4KKy5QUAorRGVuIHRyZWRqZSBvY2ggc2lzdGEgbvZkduRuZGlnYSBwb3N0ZW4gaGV0ZXIgXGZCZGF0YS50YXJcZlAuIERlbiBpbm5laOVsbGVyCitmaWxzeXN0ZW1ldCBzb20gZXR0IHRhclwtYXJraXYsIGFudGluZ2VuIG9rb21wcmltZXJhdCAoc3T2ZHMgc2VkYW4gZHBrZworMS4xMC4yNCksIGVsbGVyIGtvbXByaW1lcmF0IG1lZCBnemlwIChtZWQgZmlsc2x1dGV0IFxmQi5nelxmUCksIHh6IChtZWQKK2ZpbHNsdXRldCBcZkIueHpcZlAsIHN09mRzIHNlZGFuIGRwa2cgMS4xNS42KSwgYnppcDIgKG1lZCBmaWxzbHV0ZXQgXGZCLmJ6MlxmUCwKK3N09mRzIHNlZGFuIGRwa2cgMS4xMC4yNCkgZWxsZXIgbHptYSAobWVkIGZpbHNsdXRldCBcZkIubHptYVxmUCwgc3T2ZHMgc2VkYW4KK2Rwa2cgMS4xMy4yNSkuCisuUFAKK0Rlc3NhIHBvc3RlciBt5XN0ZSBsaWdnYSBpIGV4YWt0IGRlbm5hIG9yZG5pbmcuIE51dmFyYW5kZSBpbXBsZW1lbnRhdGlvbmVyCiti9nIgaWdub3JlcmEgZXZlbnR1ZWxsYSB5dHRlcmxpZ2FyZSBwb3N0ZXIgZWZ0ZXIgXGZCZGF0YS50YXJcZlAuIFl0dGVybGlnYXJlCitwb3N0ZXIga2FuIGtvbW1hIGF0dCBkZWZpbmllcmFzIGkgZnJhbXRpZGVuLCBvY2gga29tbWVyIChvbSBt9mpsaWd0KQorcGxhY2VyYXMgZWZ0ZXIgZGVzc2EgdHJlLiBFdmVudHVlbGxhIHl0dGVybGlnYXJlIHBvc3RlciBzb20ga2FuIGtvbW1hIGF0dAorYmVo9nZhIGZpbm5hcyBm9nJlIFxmQmRhdGEudGFyXGZQIG9jaCBzb20ga2FuIGlnbm9yZXJhcyBhdiDkbGRyZSBwcm9ncmFtIHV0YW4KK3Byb2JsZW0ga29tbWVyIGF0dCBoYSBuYW1uIHNvbSBi9nJqYXIgbWVkIHVuZGVyc3RyZWNrLCAiXGZCX1xmUCIuCisuUFAKK055YSBwb3N0ZXIgc29tIGludGUga29tbWVyIGF0dCBrdW5uYSBpZ25vcmVyYXMgdXRhbiBwcm9ibGVtIGtvbW1lciBhdHQKK2zkZ2dhcyBpbiBm9nJlIFxmQmRhdGEudGFyXGZQIG1lZCBuYW1uIHNvbSBi9nJqYXIgbWVkIG7lZ290IGFubmF0IORuCit1bmRlcnN0cmVjaywgZWxsZXIgKG1lciB0cm9saWd0KSBn9nJhIGF0dCBodXZ1ZHZlcnNpb25zbnVtcmV0IPZrYXMuCisuU0ggIlNFIMRWRU4iCitcZkJkZWJcLW9sZFxmUCg1KSwgXGZCZHBrZ1wtZGViXGZQKDEpLCBcZkJkZWJcLWNvbnRyb2xcZlAoNSkuCisuU0ggItZWRVJTxFRUTklORyIKK1BldGVyIEtyZWZ0aW5nIG9jaCBEYW5pZWwgTnlsYW5kZXIuCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9zdi9kcGtnLWFyY2hpdGVjdHVyZS4xIGIvZHBrZy0xLjE2LjEuMS9tYW4vc3YvZHBrZy1hcmNoaXRlY3R1cmUuMQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iNjIwOTU5Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vc3YvZHBrZy1hcmNoaXRlY3R1cmUuMQpAQCAtMCwwICsxLDMxMCBAQAorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlwiCisuXCIgVGhpcyBmaWxlIHdhcyBnZW5lcmF0ZWQgd2l0aCBwbzRhLiBUcmFuc2xhdGUgdGhlIHNvdXJjZSBmaWxlLgorLlwiCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuVEggZHBrZ1wtYXJjaGl0ZWN0dXJlIDEgMjAxMVwtMDhcLTE0IERlYmlhbnByb2pla3RldCBkcGtnXC12ZXJrdHlnZW4KKy5TSCBOQU1OCitkcGtnXC1hcmNoaXRlY3R1cmUgXC0gc3TkbGwgaW4gb2NoIGJlc3TkbSBhcmtpdGVrdHVyIGb2ciBwYWtldCBzb20gYnlnZ3MKKy4KKy5TSCBTWU5PUFMKK1xmQmRwa2dcLWFyY2hpdGVjdHVyZVxmUCBbXGZJZmxhZ2dhXGZQLi4uXSBbXGZJ5XRn5HJkXGZQXQorLlBQCisuCisuU0ggQkVTS1JJVk5JTkcKK2Rwa2dcLWFyY2hpdGVjdHVyZSBpbm5laOVsbGVyIGVuIGZ1bmt0aW9uIGb2ciBhdHQgYmVzdORtbWEgb2NoIHN05GxsYSBpbgorYnlnZ1wtIG9jaCB25HJkYXJraXRla3R1cmVybmEgZvZyIGF0dCBieWdnYSBwYWtldC4KKy5QUAorQnlnZ2Fya2l0ZWt0dXJlbiBiZXN05G1zIGFsbHRpZCBhdiBldHQgZXh0ZXJudCBhbnJvcCB0aWxsIFxmQmRwa2dcZlAoMSkgb2NoIGthbgoraW50ZSBzdORsbGFzIGluIHDlIGtvbW1hbmRvcmFkZW4uCisuUFAKK0R1IGthbiBhbmdlIHbkcmRhcmtpdGVrdHVyIGdlbm9tIGF0dCBhbmdlIGVuIGF2LCBlbGxlciBi5WRhLCBmbGFnZ29ybmEgXGZCXC1hXGZQCitvY2ggXGZCXC10XGZQLiBG9nJ2YWxldCBiZXN05G1zIGF2IGV0dCBleHRlcm50IGFucm9wIHRpbGwgXGZCZ2NjXGZQKDEpLCBlbGxlciDkcgorZGV0c2FtbWEgc29tIGJ5Z2dhcmtpdGVrdHVyZW4gdmFya2VuIFxzLTFDQ1xzMCBlbGxlciBnY2Mg5HIKK3RpbGxn5G5nbGlnYS4gRGV0IHLkY2tlciBhdHQgYW5nZSBlbiBhdiBcZkJcLWFcZlAgb2NoIFxmQlwtdFxmUCwgduRyZGV0IHDlIGRlbiBhbmRyYQora29tbWVyIHN05GxsYXMgaW4gdGlsbCBldHQgZnVuZ2VyYW5kZSBm9nJ2YWwuIERldCDkciBmYWt0aXNrdCBvZnRhc3QgYuR0dHJlCithdHQgYmFyYSBhbmdlIGRlbiBlbmEgZWZ0ZXJzb20gXGZCZHBrZ1wtYXJjaGl0ZWN0dXJlXGZQIGtvbW1lciB2YXJuYSBkaWcgb20gZGl0dAordmFsIGludGUg9nZlcmVuc3N05G1tZXIgbWVkIGb2cnZhbGV0LgorLgorLlNIIEtPTU1BTkRPTgorLlRQIAorXGZCXC1sXGZQCitTa3JpdiBtaWxq9nZhcmlhYmxlciwgZW4gcGVyIHJhZCwgcOUgZm9ybWF0ZXQgXGZJVkFSSUFCRUw9duRyZGVcZlAuIERldHRhIORyCitm9nJ2YWxkIOV0Z+RyZC4KKy5UUCAKK1xmQlwtZVxmUFxmSWRlYmlhbmFya2l0ZWt0dXJcZlAKK0tvbnRyb2xsZXJhIGFya2l0ZWt0dXIgZvZyIGxpa2hldC4gU29tIHN0YW5kYXJkIGrkbWb2cnMgXGZJZGViaWFuYXJraXRla3R1clxmUAorbW90IGRlbiBha3R1ZWxsYSBEZWJpYW5hcmtpdGVrdHVyZW4sIHNvbSDkciB25HJkLiDFdGfkcmRlbiBleHBhbmRlcmFyIGludGUKK2pva2VydGVja2VuIGkgYXJraXRla3R1cmVyLiBLb21tYW5kZXQgYXZzbHV0YXIgbWVkIHN0YXR1cyAwIG9tIGRldCDkciBlbgordHLkZmYsIDEgb20gZGV0IGludGUg5HIgZW4gdHLkZmYuCisuVFAgCitcZkJcLWlcZlBcZklhcmtpdGVrdHVyc/ZrbfZuc3RlclxmUAorS29udHJvbGxlcmEgaWRlbnRpdGV0IHDlIGFya2l0ZWt0dXJlbiBnZW5vbSBhdHQgZXhwYW5kZXJhCitcZklhcmtpdGVrdHVyc/ZrbfZuc3RlclxmUCBzb20gZXR0IGFya2l0ZWt0dXJz9mtt9m5zdGVyIG1lZCBqb2tlcnRlY2tlbiwgb2NoCitq5G1m9nJhIG1lZCBkZW4gYWt0dWVsbGEgRGViaWFuYXJraXRla3R1cmVuLiBLb21tYW5kb3QgYXZzbHV0YXMgbWVkIHN0YXR1cyAwCit2aWQgdHLkZmYsIDEgb20gaW50ZSB0cuRmZi4KKy5UUCAKK1xmQlwtcVxmUFxmSXZhcmlhYmVsbmFtblxmUAorU2tyaXYgduRyZGV0IHDlIGVuIGVua2VsIHZhcmlhYmVsLgorLlRQIAorXGZCXC1zXGZQCitWaXNhciBldHQgZXhwb3J0a29tbWFuZG8uIERldHRhIGthbiBhbnbkbmRhcyBm9nIgYXR0IHPkdHRhIG1pbGr2dmFyaWFibGVyCittZWQgZXZhbC4KKy5UUCAKK1xmQlwtdVxmUAorVmlzYXIgZXR0IGtvbW1hbmRvIGxpa25hbmRlIFxmQlwtc1xmUCBzb20gZvZyIGF0dCBub2xsc3TkbGxhIGFsbGEgdmFyaWFibGVyLgorLlRQIAorXGZCXC1jXGZQXGZJIGtvbW1hbmRvXGZQCitFeGVrdmVyYSBldHQgXGZJa29tbWFuZG9cZlAgaSBlbiBtaWxq9iBzb20gaGFyIGFsbGEgdmFyaWFibGVyIHNhdHRhIHRpbGwgZGV0CitiZXN05G1kYSB25HJkZXQuCisuVFAgCitcZkJcLUxcZlAKK1Zpc2EgZW4gbGlzdGEg9nZlciBnaWx0aWdhIGFya2l0ZWt0dXJuYW1uLgorLlRQIAorXGZCXC1cLWhlbHBcZlAKK1Zpc2FyIGhq5Gxwc2vkcm0gb2NoIGF2c2x1dGFyLgorLlRQIAorXGZCXC1cLXZlcnNpb25cZlAKK1Zpc2FyIHZlcnNpb24gb2NoIGF2c2x1dGFyLgorLgorLlNIIEZMQUdHT1IKKy5UUCAKK1xmQlwtYVxmUFxmSWRlYmlhbmFya2l0ZWt0dXJcZlAKK1bkbGogRGViaWFuYXJraXRla3R1ci4KKy5UUCAKK1xmQlwtdFxmUFxmSWdudVwtc3lzdGVtdHlwXGZQCitW5GxqIEdOVVwtc3lzdGVtdHlwLgorLlRQIAorXGZCXC1mXGZQCitW5HJkZW4gc29tIHPkdHRzIGF2IGJlZmludGxpZ2EgbWlsavZ2YXJpYWJsZXIgbWVkIHNhbW1hIG5hbW4gc29tIGRlIHNvbQorYW525G5kcyBhdiBza3JpcHRldCBhbnbkbmRzICh0LmV4IGF2IFxmQmRwa2dcLWFyY2hpdGVjdHVyZVxmUCksIHPldmlkYSBpbnRlCitkZW5uYSB0dmluZ2FuZGUgZmxhZ2dhIGFuZ2VzLiBEZXQgZ/ZyIGRldCBt9mpsaWd0IGb2ciBhbnbkbmRhcmVuIGF0dAor9nZlcnN0eXJhIGV0dCB25HJkZSDkdmVuIG9tIGFucm9wZXQgdGlsbCBcZkJkcGtnXC1hcmNoaXRlY3R1cmVcZlAg5HIgYmVncmF2dAorZGp1cHQgaW51dGkgZXR0IGFubmF0IHNrcmlwdCAodGlsbCBleGVtcGVsIFxmQmRwa2dcLWJ1aWxkcGFja2FnZVxmUCgxKSkuCisuCisuU0ggVEVSTUlOT0xPR0kKKy5JUCBieWdnbWFza2luIDQKK01hc2tpbmVuIHBha2V0ZXQgYnlnZ3MgcOUuCisuSVAgduRyZG1hc2tpbiA0CitNYXNraW5lbiBwYWtldGV0IGJ5Z2dzIGb2ci4KKy5JUCBEZWJpYW5hcmtpdGVrdHVyIDQKK0RlYmlhbmFya2l0ZWt0dXJzdHLkbmdlbiwgdmlsa2VuIGFuZ2VyIGJpbuRydHLkZGV0IGkKK1wtczFGVFxzMFwtYXJraXZldC4gRXhlbXBlbDogaTM4Niwgc3BhcmMsIGh1cmRcLWkzODYuCisuSVAgYXJraXRla3R1cnP2a232bnN0ZXIgNAorRXR0IGFya2l0ZWt0dXJz9mtt9m5zdGVyIORyIGVuIHNwZWNpZWxsIGFya2l0ZWt0dXJzdHLkbmcgc29tIG1hdGNoYXIgYWxsYQor5Gt0YSBhcmtpdGVrdHVyZXIgc29tIGZpbm5zIGkgZGVuLiBEZW4gZ2VuZWxsYSBmb3JtZW4g5HIKKzxr5HJuYT5cLTxjcHU+LiBFeGVtcGVsOiBsaW51eFwtYW55LCBhbnlcLWkzODYsIGh1cmRcLWFueS4KKy5JUCBccy0xR05VXHMwXC1zeXN0ZW10eXAgNAorRW4gYXJraXRla3R1cnNwZWNpZmljZXJpbmdzc3Ry5G5nIGJlc3TlciBhdiB0duUgZGVsYXIsIGF2ZGVsYWRlIG1lZAorYmluZGVzdHJlY2s6IHByb2Nlc3NvciBvY2ggc3lzdGVtLiBFeGVtcGVsOiBpMzg2XC1saW51eFwtZ251LCBzcGFyY1wtbGludXhcLWdudSwKK2kzODZcLWdudSwgeDg2XzY0XC1uZXRic2QuCisuCisuU0ggVkFSSUFCTEVSCitG9mxqYW5kZSB2YXJpYWJsZXIgc+R0dHMgYXYgXGZCZHBrZ1wtYXJjaGl0ZWN0dXJlXGZQOgorLklQIFxzLTFERUJfQlVJTERfQVJDSFxzMCA0CitEZWJpYW5hcmtpdGVrdHVyZW4gZvZyIGJ5Z2dtYXNraW5lbi4KKy5JUCBccy0xREVCX0JVSUxEX0FSQ0hfT1NcczAgNAorRGViaWFuc3lzdGVtbmFtbmV0IGb2ciBieWdnbWFza2luZW4uCisuSVAgXHMtMURFQl9CVUlMRF9BUkNIX0NQVVxzMCA0CitEZWJpYW5cLXByb2Nlc3Nvcm5hbW5ldCBm9nIgYnlnZ21hc2tpbmVuLgorLklQIFxzLTFERUJfQlVJTERfQVJDSF9CSVRTXHMwIDQKK1Bla2Fyc3Rvcmxla2VuIGb2ciBieWdnbWFza2luZW4gKGkgYml0YXIpLgorLklQIFxzLTFERUJfQlVJTERfQVJDSF9FTkRJQU5cczAgNAorRW5kaWFuIGb2ciBieWdnbWFza2luZW4gKGxpdHRsZSAvIGJpZykuCisuSVAgXHMtMURFQl9CVUlMRF9HTlVfQ1BVXHMwIDQKK1xzLTFDUFVcczBcLWRlbGVuIGF2IFxzLTFERUJfQlVJTERfR05VX1RZUEVcczAuCisuSVAgXHMtMURFQl9CVUlMRF9HTlVfU1lTVEVNXHMwIDQKK1N5c3RlbWRlbGVuIGF2IFxzLTFERUJfQlVJTERfR05VX1RZUEVcczAuCisuSVAgXHMtMURFQl9CVUlMRF9HTlVfVFlQRVxzMCA0Citccy0xR05VXHMwXC1zeXN0ZW10eXBlbiBm9nIgYnlnZ21hc2tpbmVuLgorLklQIFxzLTFERUJfQlVJTERfTVVMVElBUkNIXHMwIDQKK0RlbiBm9nJ0eWRsaWdhZGUgXHMtMUdOVVxzMFwtc3lzdGVtdHlwZW4gZvZyIGJ5Z2dtYXNraW5lbiwgYW525G5kcyBm9nIKK3P2a3bkZ2FyIGkgZmlsc3lzdGVtZXQuCisuSVAgXHMtMURFQl9IT1NUX0FSQ0hcczAgNAorRGViaWFuYXJraXRla3R1cmVuIGb2ciB25HJkbWFza2luZW4uCisuSVAgXHMtMURFQl9IT1NUX0FSQ0hfT1NcczAgNAorRGViaWFuc3lzdGVtbmFtbmV0IGb2ciB25HJkbWFza2luZW4uCisuSVAgXHMtMURFQl9IT1NUX0FSQ0hfQ1BVXHMwIDQKK0RlYmlhblwtcHJvY2Vzc29ybmFtbmV0IGb2ciB25HJkbWFza2luZW4uCisuSVAgXHMtMURFQl9IT1NUX0FSQ0hfQklUU1xzMCA0CitQZWthcnN0b3JsZWtlbiBm9nIgduRyZG1hc2tpbmVuIChpIGJpdGFyKS4KKy5JUCBccy0xREVCX0hPU1RfQVJDSF9FTkRJQU5cczAgNAorRW5kaWFuIGb2ciB25HJkbWFza2luZW4gKGxpdHRsZSAvIGJpZykuCisuSVAgXHMtMURFQl9IT1NUX0dOVV9DUFVcczAgNAorXHMtMUNQVVxzMFwtZGVsZW4gYXYgXHMtMURFQl9IT1NUX0dOVV9UWVBFXHMwLgorLklQIFxzLTFERUJfSE9TVF9HTlVfU1lTVEVNXHMwIDQKK1N5c3RlbWRlbGVuIGF2IFxzLTFERUJfSE9TVF9HTlVfVFlQRVxzMC4KKy5JUCBccy0xREVCX0hPU1RfR05VX1RZUEVcczAgNAorXHMtMUdOVVxzMFwtc3lzdGVtdHlwZW4gZvZyIHbkcmRtYXNraW5lbi4KKy5JUCBccy0xREVCX0hPU1RfTVVMVElBUkNIXHMwIDQKK0RlbiBm9nJ0eWRsaWdhZGUgXHMtMUdOVVxzMFwtc3lzdGVtdHlwZW4gZvZyIHbkcmRtYXNraW5lbiwgYW525G5kcyBm9nIKK3P2a3bkZ2FyIGkgZmlsc3lzdGVtZXQuCisuCisuU0ggREVCSUFOL1JVTEVTCitNaWxq9nZhcmlhYmxlcm5hIHNvbSBz5HR0cyBhdiBcZkJkcGtnXC1hcmNoaXRlY3R1cmVcZlAgc+RuZHMgdGlsbAorXGZJZGViaWFuL3J1bGVzXGZQIHNvbSBtYWtlXC12YXJpYWJsZXIgKHNlIGRva3VtZW50YXRpb25lbiBm9nIgbWFrZSkuIER1IGL2cgorZG9jayBpbnRlIGJlcm8gcOUgZGVtIGVmdGVyc29tIGRldHRhIGb2cmhpbmRyYXIgbWFudWVsbGEgYW5yb3AgdGlsbAorc2tyaXB0ZXQuIER1IGL2ciBpc3TkbGxldCBhbGx0aWQgaW5pdGllcmEgZGVtIG1lZCBcZkJkcGtnXC1hcmNoaXRlY3R1cmVcZlAgbWVkCitcLXFcLWZsYWdnYW4uIEjkciDkciBu5WdyYSBleGVtcGVsLCB2aWxrYSDkdmVuIHZpc2FyIGh1ciBkdSBrYW4gZvZyYuR0dHJhCitzdPZkZXQgZvZyIGtvcnNrb21waWxlcmluZyBpIGRpdHQgcGFrZXQ6CisuUFAKKworSXN05GxsZXQgZvZyOgorLklQCisubmYKK0FSQ0g9XGBkcGtnIFwtXC1wcmludFwtYXJjaGl0ZWN0dXJlXGAKK2NvbmZpZ3VyZSAkKFxzLTFBUkNIXHMwKVwtbGludXgKKy5maQorLlBQCithbnbkbmRlciBkdSBm9mxqYW5kZToKKy5JUAorLm5mCitcJlxzLTFERUJfQlVJTERfR05VX1RZUEVcczAgOj0gJChzaGVsbCBkcGtnXC1hcmNoaXRlY3R1cmUgXC1xREVCX0JVSUxEX0dOVV9UWVBFKQorXCZccy0xREVCX0hPU1RfR05VX1RZUEVcczAgOj0gJChzaGVsbCBkcGtnXC1hcmNoaXRlY3R1cmUgXC1xREVCX0hPU1RfR05VX1RZUEUpCisKK2NvbmZpZ3VyZSBcLVwtYnVpbGQ9JChccy0xREVCX0JVSUxEX0dOVV9UWVBFXHMwKSBcLVwtaG9zdD0kKFxzLTFERUJfSE9TVF9HTlVfVFlQRVxzMCkKKy5maQorLlBQCisKK0lzdORsbGV0IGb2cjoKKy5JUAorLm5mCitBUkNIPVxgZHBrZyBcLVwtcHJpbnRcLWFyY2hpdGVjdHVyZVxgCitpZmVxICgkKFxzLTFBUkNIXHMwKSxhbHBoYSkKKyAgLi4uCitlbmRpZgorLmZpCisuUFAKK2FuduRuZGVyIGR1OgorLklQCisubmYKK1wmXHMtMURFQl9IT1NUX0FSQ0hcczAgOj0gJChzaGVsbCBkcGtnXC1hcmNoaXRlY3R1cmUgXC1xREVCX0hPU1RfQVJDSCkKKworaWZlcSAoJChccy0xREVCX0hPU1RfQVJDSFxzMCksYWxwaGEpCisgIC4uLgorZW5kaWYKKy5maQorLlBQCitlbGxlciwgb20gZHUgYmFyYSB2aWxsIHRlc3RhIHDlIHByb2Nlc3NvclwtIGVsbGVyIE9TXC10eXAsIGFuduRuZCB2YXJpYWJsZXJuYQorREVCX0hPU1RfQVJDSF9DUFUgZWxsZXIgREVCX0hPU1RfQVJDSF9PUy4KKy5QUAorR2VuZXJlbGx0IHJla29tbWVuZGVyYXMgZGV0IGludGUgYXR0IGFucm9wYSBkcGtnIGkgcnVsZXNcLWZpbGVuIGb2ciBhdHQgaORtdGEKK2luZm9ybWF0aW9uIG9tIGFya2l0ZWt0dXJlbiAoc+V2aWRhIGR1IGludGUgdmlsbCB0aWxsaGFuZGFo5WxsYQorYmFr5XRrb21wYXRpYmlsaXRldCwgc2UgbmVkYW4pLiBTcGVjaWVsbHQgZ+VyIGRldCBpbnRlIGF0dCBsaXRhIHDlIGZsYWdnYW4KK1wtXC1wcmludFwtYXJjaGl0ZWN0dXJlIGVmdGVyc29tIHZpIGhhciBEZWJpYW5hcmtpdGVrdHVyZXIgc29tIGludGUg5HIKK2lkZW50aXNrdCBtZWQgbmFtbmV0IHDlIHByb2Nlc3Nvcm4uCisuCisuU0ggQkFLxVRLT01QQVRJQklMSVRFVAorVmFyaWFibGVybmEgREVCXypfQVJDSF9CSVRTIG9jaCBERUJfKl9BUkNIX0VORElBTiBpbnRyb2R1Y2VyYWRlcyBpIGRwa2dcLWRldgorMS4xNS40LiBPbSBkZSBhbnbkbmRzIGkgXGZJZGViaWFuL3J1bGVzXGZQIG3lc3RlIGTkcmb2ciBldHQgYnlnZ2Jlcm9lbmRlCitkZWtsYXJlcmFzIHDlIGRwa2dcLWRldiAoPj0gMS4xNS40KS4KKy5QUAorVmFyaWFibGVybmEgREVCX0hPU1RfQVJDSF9DUFUgb2NoIERFQl9IT1NUX0FSQ0hfT1MgaW50cm9kdWNlcmFzIGkgZHBrZ1wtZGV2CisxLjEzLjIuIFRpZGlnYXJlIHPlZyBcZklkZWJpYW4vcnVsZXNcZlBcLWZpbGVyIG9mdGFzdCBw5SBpbm5laOVsbGV0IGkKK3ZhcmlhYmxlcm5hIERFQl9IT1NUX0dOVV9DUFUgb2NoIERFQl9IT1NUX0dOVV9UWVBFLCB2aWxrYSBoYXIga3VubmF0IORuZHJhCitw5SBzaWcuCisuUFAKK09tIFxmSWRlYmlhbi9ydWxlc1xmUCBzZXIgcOUgZGVzc2EgdmFyaWFibGVyIGb2ciBhdHQgduRsamEgaHVyIGVsbGVyIHZhZCBzb20KK3NrYWxsIGtvbXBpbGVyYXMgYvZyIGRldHRhIHVwcGRhdGVyYXMgdGlsbCBhdHQgYW525G5kYSBkZSBueWEgdmFyaWFibGVybmEKK29jaCB25HJkZW5hLiBPbSBkdSB2aWxsIGJpYmVo5WxsYSBiYWvldGtvbXBhdGliaWxpdGV0IG1lZCB0aWRpZ2FyZSB2ZXJzaW9uZXIKK2F2IGRwa2dcLWRldiBrYW4gZHUgYW525G5kYSBm9mxqYW5kZSBrb2Q6CisuSVAKKy5uZgorREVCX0hPU1RfQVJDSF9DUFUgOj0gJChzaGVsbCBkcGtnXC1hcmNoaXRlY3R1cmUgXC1xREVCX0hPU1RfQVJDSF9DUFUgMj4vZGV2L251bGwpCitERUJfSE9TVF9BUkNIX09TIDo9ICQoc2hlbGwgZHBrZ1wtYXJjaGl0ZWN0dXJlIFwtcURFQl9IT1NUX0FSQ0hfT1MgMj4vZGV2L251bGwpCisKKyMgVGEgZ2FtbWFsdCB1dGRhdGFmb3JtYXQgZnLlbiBkcGtnXC1hcmNoaXRlY3R1cmUgaSBiZWFrdG5pbmcuCitpZmVxICgkKERFQl9IT1NUX0FSQ0hfQ1BVKSwpCisgIERFQl9IT1NUX0FSQ0hfQ1BVIDo9ICQoc2hlbGwgZHBrZ1wtYXJjaGl0ZWN0dXJlIFwtcURFQl9IT1NUX0dOVV9DUFUpCisgIGlmZXEgKCQoREVCX0hPU1RfQVJDSF9DUFUpLHg4Nl82NCkKKyAgICBERUJfSE9TVF9BUkNIX0NQVSA6PSBhbWQ2NAorICBlbmRpZgorZW5kaWYKK2lmZXEgKCQoREVCX0hPU1RfQVJDSF9PUyksKQorICBERUJfSE9TVF9BUkNIX09TIDo9ICQoc3Vic3QgXC1nbnUsLCQoc2hlbGwgZHBrZ1wtYXJjaGl0ZWN0dXJlIFwtcURFQl9IT1NUX0dOVV9TWVNURU0pKQorICBpZmVxICgkKERFQl9IT1NUX0FSQ0hfT1MpLGdudSkKKyAgICBERUJfSE9TVF9BUkNIX09TIDo9IGh1cmQKKyAgZW5kaWYKK2VuZGlmCisuZmkKKy5QUAorT2NoIHDlIG1vdHN2YXJhbmRlIHPkdHQgZvZyIERFQl9CVUlMRF9BUkNIX0NQVSBvY2ggREVCX0JVSUxEX0FSQ0hfT1MuCisuUFAKK09tIGR1IGZvcnRmYXJhbmRlIHZpbGwgc3T2ZGEgdmVyc2lvbmVyIGF2IGRwa2dcLWRldiBzb20gaW50ZSBpbm5laPZsbAorXGZCZHBrZ1wtYXJjaGl0ZWN0dXJlXGZQIGZ1bmdlcmFyIGb2bGphbmRlOgorLklQCisubmYKK1wmXHMtMURFQl9CVUlMRF9BUkNIXHMwIDo9ICQoc2hlbGwgZHBrZyBcLVwtcHJpbnRcLWFyY2hpdGVjdHVyZSkKK1wmXHMtMURFQl9CVUlMRF9HTlVfQ1BVXHMwIDo9ICQocGF0c3Vic3QgaHVyZFwtJSwlLCQoXHMtMURFQl9CVUlMRF9BUkNIXHMwKSkKK2lmZXEgKCQoZmlsdGVyXC1vdXQgaHVyZFwtJSwkKFxzLTFERUJfQlVJTERfQVJDSFxzMCkpLCkKKyAgXHMtMURFQl9CVUlMRF9HTlVfU1lTVEVNXHMwIDo9IGdudQorZWxzZQorICBccy0xREVCX0JVSUxEX0dOVV9TWVNURU1cczAgOj0gbGludXhcLWdudQorZW5kaWYKK0RFQl9CVUlMRF9HTlVfVFlQRT0kKFxzLTFERUJfQlVJTERfR05VX0NQVVxzMClcLSQoXHMtMURFQl9CVUlMRF9HTlVfU1lTVEVNXHMwKQorCitcJlxzLTFERUJfSE9TVF9BUkNIXHMwIDo9ICQoXHMtMURFQl9CVUlMRF9BUkNIXHMwKQorXCZccy0xREVCX0hPU1RfR05VX0NQVVxzMCA6PSAkKFxzLTFERUJfQlVJTERfR05VX0NQVVxzMCkKK1wmXHMtMURFQl9IT1NUX0dOVV9TWVNURU1cczAgOj0gJChccy0xREVCX0JVSUxEX0dOVV9TWVNURU1cczApCitcJlxzLTFERUJfSE9TVF9HTlVfVFlQRVxzMCA6PSAkKFxzLTFERUJfQlVJTERfR05VX1RZUEVcczApCisuZmkKKy5QUAorTORnZyBpbiBlbiBkZWxt5G5nZCBhdiBkZXNzYSByYWRlciD2dmVyc3QgaSBkaW4KK2RlYmlhbi9ydWxlc1wtZmlsLiBTdGFuZGFyZHZhcmlhYmxlcm5hIGtvbW1lciBza3JpdmFzIPZ2ZXIgb20KK2Rwa2dcLWFyY2hpdGVjdHVyZSBhbnbkbmRzLgorLlBQCitEdSBiZWj2dmVyIGludGUgYWxsYS4gVuRsaiBlbiBrb25zaXN0ZW50IGRlbG3kbmdkIHNvbSBpbm5laOVsbGVyIGRlIHbkcmRlbgorZHUgYW525G5kZXIgaSBydWxlc1wtZmlsZW4uIE9tIGR1IHRpbGwgZXhlbXBlbCBiYXJhIGJlaPZ2ZXIKK3bkcmRcLURlYmlhbmFya2l0ZWt0dXJlbiBy5GNrZXIgZGV0IG1lZCAiREVCX0hPU1RfQVJDSD1cYGRwa2cKK1wtXC1wcmludFwtYXJjaGl0ZWN0dXJlXGAiIChqYSwgZGV0IORyIERlYmlhbmFya2l0ZWt0dXJlbiBw5SBieWdnbWFza2luZW4sIG1lbgora29tIGlo5WcgYXR0IHZpIGJhcmEgZvZyc/ZrZXIgdmFyYSBiYWvldGtvbXBhdGliZWwgbWVkIGtvbXBpbGVyaW5nIHDlIHNhbW1hCitwbGF0dGZvcm0pLgorLlBQCitGbGFnZ29ybmEgXGZCXC1lXGZQIG9jaCBcZkJcLWlcZlAgaW50cm9kdWNlcmFkZXMgaSBcZkJkcGtnXC1hcmNoaXRlY3R1cmVcZlAgcmVsYXRpdnQKK255bGlnZW4gKHNlZGFuIGRwa2cgMS4xMy4xMykuCisuCisuU0ggRVhFTVBFTAorXGZCZHBrZ1wtYXJjaGl0ZWN0dXJlXGZQIGdvZHRhciBmbGFnZ2FuIFxmQlwtYVxmUCBvY2ggc+RuZGVyIGRlbiB2aWRhcmUgdGlsbAorXGZCZHBrZ1wtYXJjaGl0ZWN0dXJlXGZQLiBBbmRyYSBleGVtcGVsOgorLklQCitDQz1pMzg2XC1nbnVcLWdjYyBkcGtnXC1hcmNoaXRlY3R1cmUgXC1jIGRlYmlhbi9ydWxlcyBidWlsZAorLklQCitldmFsIFxgZHBrZ1wtYXJjaGl0ZWN0dXJlIFwtdVxgCisuUFAKK0tvbnRyb2xsZXJhIG9tIGVuIGFya2l0ZWt0dXIg5HIgc2FtbWEgc29tIGRlbiBudXZhcmFuZGUgZWxsZXIgZW4gZ2l2ZW46CisuSVAKK2Rwa2dcLWFyY2hpdGVjdHVyZSBcLWVsaW51eFwtYWxwaGEKKy5JUAorZHBrZ1wtYXJjaGl0ZWN0dXJlIFwtYW1pcHMgXC1lbGludXhcLW1pcHMKKy5QUAorU2Ugb20gZGVuIGFrdHVlbGxhIGFya2l0ZWt0dXJlbiBlbGxlciBlbiBhcmtpdGVrdHVyIHNvbSBhbmdlcyBtZWQgXC1hIORyIGV0dAorTGludXhzeXN0ZW06CisuSVAKK2Rwa2dcLWFyY2hpdGVjdHVyZSBcLWlsaW51eFwtYW55CisuSVAKK2Rwa2dcLWFyY2hpdGVjdHVyZSBcLWFpMzg2IFwtaWxpbnV4XC1hbnkKKy4KKy5TSCBGSUxFUgorQWxsYSBkZXNzYSBmaWxlciBt5XN0ZSBmaW5uYXMgZvZyIGF0dCBcZkJkcGtnXC1hcmNoaXRlY3R1cmVcZlAgbeVzdGUKK2Zpbm5hcy4gRGVyYXMgcGxhY2VyaW5nIGthbiD2dmVyc3R5cmFzIHZpZCBr9nJuaW5nIG1lZCBtaWxq9nZhcmlhYmVsbgorXGZCRFBLR19EQVRBRElSXGZQLgorLlRQIAorXGZJL3Vzci9zaGFyZS9kcGtnL2NwdXRhYmxlXGZQCitUYWJlbGwg9nZlciBr5G5kYSBwcm9jZXNzb3JuYW1uIG9jaCBkZXJhcyBtb3RzdmFyYW5kZSBHTlVcLW5hbW4uCisuVFAgCitcZkkvdXNyL3NoYXJlL2Rwa2cvb3N0YWJsZVxmUAorVGFiZWxsIPZ2ZXIga+RuZGEgb3BlcmF0aXZzeXN0ZW1zbmFtbiBvY2ggZGVyYXMgbW90c3ZhcmFuZGUgR05VXC1uYW1uLgorLlRQIAorXGZJL3Vzci9zaGFyZS9kcGtnL3RyaXBsZXR0YWJsZVxmUAorVGFiZWxsIPZ2ZXIgRGViaWFuYXJraXRla3R1cnRyaXBwbGFyIG9jaCBkZXJhcyBtb3RzdmFyYW5kZQorRGViaWFuYXJraXRla3R1cm5hbW4uCisuCisuU0ggIlNFIMRWRU4iCitcZkJkcGtnXC1idWlsZHBhY2thZ2VcZlAoMSksIFxmQmRwa2dcLWNyb3NzXGZQKDEpLgorLgorLlNIIEbWUkZBVFRBUkUKK1xmQmRwa2dcLWFyY2hpdGVjdHVyZVxmUCBvY2ggZGVubmEgbWFudWFsc2lkYSBza3JldnMgdXJzcHJ1bmdsaWdlbiBhdiBNYXJrdXMKK0JyaW5rbWFubiA8YnJpbmttZEBkZWJpYW4ub3JnPi4KKworLlNIICLWVkVSU8RUVE5JTkciCitQZXRlciBLcmVmdGluZyBvY2ggRGFuaWVsIE55bGFuZGVyLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vc3YvZHBrZy1idWlsZGZsYWdzLjEgYi9kcGtnLTEuMTYuMS4xL21hbi9zdi9kcGtnLWJ1aWxkZmxhZ3MuMQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40M2FhZTZjCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vc3YvZHBrZy1idWlsZGZsYWdzLjEKQEAgLTAsMCArMSwyNjggQEAKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlRIIGRwa2dcLWJ1aWxkZmxhZ3MgMSAyMDExXC0wOVwtMTMgRGViaWFucHJvamVrdGV0IERwa2dcLXN2aXRlbgorLlNIIE5BTU4KK2Rwa2dcLWJ1aWxkZmxhZ3MgXC0gcmV0dXJuZXJhciBieWdnZmxhZ2dvciBhdHQgYW525G5kYSBm9nIgYXR0IGJ5Z2dhIHBha2V0CisuCisuU0ggU1lOT1BTCitcZkJkcGtnXC1idWlsZGZsYWdzXGZQIFtcZklmbGFnZ2FcZlAuLi5dIFxmSWtvbW1hbmRvXGZQCisuCisuU0ggQkVTS1JJVk5JTkcKK1xmQmRwa2dcLWJ1aWxkZmxhZ3NcZlAg5HIgZXR0IHZlcmt0eWcgZvZyIGF0dCBo5G10YSBrb21waWxlcmluZ3NmbGFnZ29yIGF0dAorYW525G5kYSBm9nIgYXR0IGJ5Z2dhIERlYmlhbnBha2V0LgorLgorRGUgZvZydmFsZGEgZmxhZ2dvcm5hIGFuZ2VzIGF2IGxldmVyYW509nJlbiwgbWVuIGRlIGthbiB1dPZrYXMv9nZlcnN0eXJhcyBw5QorZmxlcmEgc+R0dDoKKy5JUCAxLgorcOUgaGVsYSBzeXN0ZW1ldCBtZWQgXGZCL2V0Yy9kcGtnL2J1aWxkZmxhZ3MuY29uZlxmUDsKKy5JUCAyLgorZvZyIGRlbiBudXZhcmFuZGUgYW525G5kYXJlbiBtZWQgXGZCJFhER19DT05GSUdfSE9NRS9kcGtnL2J1aWxkZmxhZ3MuY29uZlxmUAorZORyIFxmQiRYREdfQ09ORklHX0hPTUVcZlAgaGFyIHN0YW5kYXJkduRyZGV0IFxmQiRIT01FLy5jb25maWdcZlA7CisuSVAgMy4KK3RlbXBvcuRydCBhdiBhbnbkbmRhcmVuIG1lZCBtaWxq9nZhcmlhYmxlciAoc2Ugc3R5Y2tldCBcZkJNSUxK1lxmUCkuCisuSVAgNC4KK2R5bmFtaXNrdCBhdiBwYWtldGFuc3ZhcmlnYSBtZWQgbWlsavZ2YXJpYWJsZXIgc29tIHPkdHRzIHZpYSBcZkJkZWJpYW4vcnVsZXNcZlAKKyhzZSBzdHlja2V0IFxmQk1JTErWXGZQKS4KKy5QCitLb25maWd1cmF0aW9uc2ZpbGVybmEga2FuIGlubmVo5WxsYSB0duUgc29ydGVycyBkaXJla3RpdjoKKy5UUCAKK1xmQlNFVFxmUFxmSSBmbGFnZ2EgduRyZGVcZlAKK9Z2ZXJzdHlyIGZsYWdnYW4gXGZJZmxhZ2dhXGZQIHRpbGwgYXR0IGhhIHbkcmRldCBcZkl25HJkZVxmUC4KKy5UUCAKK1xmQlNUUklQXGZQXGZJIGZsYWdnYSB25HJkZVxmUAorVGEgYm9ydCBhbGxhIGZsYWdnb3Igc29tIGxpc3RhcyBpIFxmSXbkcmRlXGZQIGZy5W4gZmxhZ2dhbiBzb20gYW5nZXMgaQorXGZJZmxhZ2dhXGZQLgorLlRQIAorXGZCQVBQRU5EXGZQXGZJIGZsYWdnYSB25HJkZVxmUAorVXT2a2EgZmxhZ2dhbiBcZklmbGFnZ2FcZlAgZ2Vub20gYXR0IGzkZ2dhIHRpbGwgYWx0ZXJuYXRpdmVuIHNvbSBhbmdlcyBpCitcZkl25HJkZVxmUC4gRXR0IGJsYW5rc3RlZyBs5GdncyB0aWxsIGb2cmUgduRyZGV0IG9tIGZsYWdnYW5zIG51dmFyYW5kZSB25HJkZQoraW50ZSDkciB0b210LgorLlRQIAorXGZCUFJFUEVORFxmUFxmSSBmbGFnZ2EgduRyZGVcZlAKK1V09mthIGZsYWdnYW4gXGZJZmxhZ2dhXGZQIGdlbm9tIGF0dCBs5GdnYSB0aWxsIGFsdGVybmF0aXZlbiBzb20gYW5nZXMgaQorXGZJduRyZGVcZlAgZvZyc3QuIEV0dCBibGFua3N0ZWcgbORnZ3MgdGlsbCBlZnRlciB25HJkZXQgb20gZmxhZ2dhbnMgbnV2YXJhbmRlCit25HJkZSBpbnRlIORyIHRvbXQuCisuUAorS29uZmlndXJhdGlvbnNmaWxlcm5hIGthbiBpbm5laOVsbGEga29tbWVudGFyZXIgcOUgcmFkZXIgc29tIGL2cmphciBtZWQgZXR0CitudW1tZXJ0ZWNrZW4gKCMpLiDEdmVuIHRvbW1hIHJhZGVyIGlnbm9yZXJhcy4KKy5TSCBLT01NQU5ET04KKy5UUCAKK1xmQlwtXC1kdW1wXGZQCitTa3JpdiBhbGxhIGtvbXBpbGVyaW5nc2ZsYWdnb3Igb2NoIGRlcmFzIHbkcmRlIHDlIHN0YW5kYXJkIHV0LiBFbiBmbGFnZ2EKK3Nrcml2cyBwZXIgcmFkLCBhdmRlbGFkZSBmcuVuIHNpdHQgduRyZGUgbWVkIGV0dCBsaWthbWVkdGVja2VuCisoIlxmSWZsYWdnYVxmUD1cZkl25HJkZVxmUCIpLiBEZXR0YSDkciBzdGFuZGFyZOV0Z+RyZGVuLgorLlRQIAorXGZCXC1cLWxpc3RcZlAKK1Nrcml2IHV0IGxpc3RhbiD2dmVyIGZsYWdnb3Igc29tIHN09mRzIGF2IGRlbiBha3R1ZWxsYSBsZXZlcmFudPZyZW4gKGVuIHBlcgorcmFkKS4gU2Ugc3R5Y2tldCBcZkJGTEFHR09SIFNPTSBTVNZEU1xmUCBm9nIgbWVyIGluZm9ybWF0aW9uIG9tIGRlbS4KKy5UUCAKK1xmQlwtXC1leHBvcnQ9XGZQXGZJZm9ybWF0XGZQCitTa3JpdiBza2FsXC0gKG9tIFxmSWZvcm1hdFxmUCDkciBcZkJzaFxmUCkgZWxsZXIgbWFrZVwta29tbWFuZG9uIChvbSBcZklmb3JtYXRcZlAg5HIKK1xmQm1ha2VcZlApIHNvbSBrYW4gYW525G5kYXMgZvZyIGF0dCBleHBvcnRlcmEgYWxsYSBrb21waWxlcmluZ3NmbGFnZ29yIGkKK21pbGr2biB0aWxsIHN0YW5kYXJkIHV0LiBPbSBcZklmb3JtYXRcZlAg5HIgXGZCY29uZmlndXJlXGZQIGthbiB1dGRhdGEgYW525G5kYXMgcOUKK2VuIFxmQi4vY29uZmlndXJlXGZQXC1rb21tYW5kb3JhZC4gT20gXGZJZm9ybWF0XGZQIGludGUgYW5nZXMgYW50YXMgXGZCc2hcZlAuIEVuZGFzdAora29tcGlsZXJpbmdzZmxhZ2dvciBzb20gYvZyamFyIG1lZCBlbiBzdG9yIGJva3N0YXYgdGFzIG1lZCwgYW5kcmEgYW50YXMgYXR0CitpbnRlIHZhcmEgbORtcGxpZ2EgZvZyIG1pbGr2bi4KKy5UUCAKK1xmQlwtXC1nZXRcZlBcZkkgZmxhZ2dhXGZQCitTa3JpdiB1dCB25HJkZXQgcOUgZmxhZ2dhbiBw5SBzdGFuZGFyZCB1dC4gQXZzbHV0YXIgbWVkIDAgb20gZmxhZ2dhbiDkcgora+RuZCwgb20gaW50ZSBhdnNsdXRhciBkZW4gbWVkIDEuCisuVFAgCitcZkJcLVwtb3JpZ2luXGZQXGZJIGZsYWdnYVxmUAorQW5nZXIgdXJzcHJ1bmdldCB0aWxsIGZsYWdnYW4gc29tIHJldHVybmVyYXMgYXYgXGZCXC1cLWdldFxmUC4gQXZzbHV0YXIgbWVkIDAgb20KK2ZsYWdnYW4g5HIga+RuZCwgb20gaW50ZSBhdnNsdXRhciBtZWQgMS4gVXJzcHJ1bmdldCBrYW4gdmFyYSBldHQgYXYgZvZsamFuZGUKK3bkcmRlbjoKKy5SUworLlRQIAorXGZCdmVuZG9yXGZQCitvcmlnaW5hbGZsYWdnYSBzYXR0IGF2IGxldmVyYW509nJlbiByZXR1cm5lcmFzOworLlRQIAorXGZCc3lzdGVtXGZQCitmbGFnZ2FuIORyIHNhdHQvbW9kaWZpZXJhZCBhdiBzeXN0ZW1rb25maWd1cmF0aW9uZW47CisuVFAgCitcZkJ1c2VyXGZQCitmbGFnZ2FuIORyIHNhdHQvbW9kaWZpZXJhZCBhdiBhbnbkbmRhcmtvbmZpZ3VyYXRpb25lbjsKKy5UUCAKK1xmQmVudlxmUAorZmxhZ2dhbiDkciBzYXR0L21vZGlmaWVyYWQgYXYgZW4gbWlsavZzcGVjaWZpayBrb25maWd1cmF0aW9uLgorLlJFCisuVFAgCitcZkJcLVwtaGVscFxmUAorVmlzYXIgaGrkbHBza+RybSBvY2ggYXZzbHV0YXIuCisuVFAgCitcZkJcLVwtdmVyc2lvblxmUAorVmlzYXIgdmVyc2lvbiBvY2ggYXZzbHV0YXIuCisuCisuU0ggIkZMQUdHT1IgU09NIFNU1kRTIgorLlRQIAorXGZCQ0ZMQUdTXGZQCitGbGFnZ29yIGb2ciBDXC1rb21waWxhdG9ybi4gU3RhbmRhcmR25HJkZXQgc29tIHNhdHRzIGF2IGxldmVyYW509nJlbgoraW5uZWjlbGxlciBcZklcLWdcZlAgb2NoIGRlbiBm9nJ2YWxkYSBvcHRpbWVyaW5nc25pduVuICh2YW5saWd0dmlzIFxmSVwtTzJcZlAsIGVsbGVyCitcZklcLU8wXGZQIG9tIG1pbGr2dmFyaWFiZWxuIFxmQkRFQl9CVUlMRF9PUFRJT05TXGZQIGRlZmluaWVyYXIgXGZJbm9vcHRcZlApLgorLlRQIAorXGZCQ1BQRkxBR1NcZlAKK0ZsYWdnb3IgZvZyIENcLWb2cnByb2Nlc3NlcmFyZW4uIEb2cnZhbHQgduRyZGU6IHRvbXQuCisuVFAgCitcZkJDWFhGTEFHU1xmUAorRmxhZ2dvciBm9nIgQysrXC1rb21waWxhdG9ybi4gU2FtbWEgc29tIFxmQkNGTEFHU1xmUC4KKy5UUCAKK1xmQkZGTEFHU1xmUAorRmxhZ2dvciBm9nIgRm9ydHJhbmtvbXBpbGF0b3JuLiBTYW1tYSBzb20gXGZCQ0ZMQUdTXGZQLgorLlRQIAorXGZCTERGTEFHU1xmUAorRmxhZ2dvciBzb20gc+RuZHMgdGlsbCBrb21waWxhdG9ybiB2aWQgbORua25pbmcgYXYgYmlu5HJlciBlbGxlciBkZWxhZGUKK29iamVrdCAob20gbORua2FyZW4gYW5yb3BhcyBkaXJla3QgbeVzdGUgXGZCXC1XbFxmUCBvY2ggXGZCLFxmUCB0YXMgYm9ydCBmcuVuIGRlc3NhCitmbGFnZ29yKS4gU3RhbmRhcmR25HJkZTogdG9tdC4KKy4KKy5TSCBGSUxFUgorLlRQIAorXGZCL2V0Yy9kcGtnL2J1aWxkZmxhZ3MuY29uZlxmUAorS29uZmlndXJhdGlvbnNmaWwgZvZyIGhlbGEgc3lzdGVtZXQuCisuVFAgCitcZkIkWERHX0NPTkZJR19IT01FL2Rwa2cvYnVpbGRmbGFncy5jb25mXGZQIGVsbGVyIFxmQiRIT01FLy5jb25maWcvZHBrZy9idWlsZGZsYWdzLmNvbmZcZlAKK0FuduRuZGFyZW5zIGtvbmZpZ3VyYXRpb25zZmlsLgorLlNIIE1JTErWVkFSSUFCTEVSCitEZXQgZmlubnMgdHblIHVwcHPkdHRuaW5nYXIgbWlsavZ2YXJpYWJsZXIgc29tIHV0ZvZyIHNhbW1hIG9wZXJhdGlvbmVyLCBkZW4KK2b2cnN0YSAoREVCX1xmSWZsYWdnYVxmUF9cZklvcFxmUCkgYvZyIGFsZHJpZyBhbnbkbmRhcyBpbnV0aSBcZkJkZWJpYW4vcnVsZXNcZlApLiBEZW4KK+RyIHTkbmt0IGb2ciBhbnbkbmRhcmUgc29tIHZpbGwgYnlnZ2Egb20ga+RsbGtvZHNwYWtldGV0IG1lZCBhbmRyYQorYnlnZ2ZsYWdnb3IuIERlbiBhbmRyYSB1cHBz5HR0bmluZ2VuIChERUJfXGZJZmxhZ2dhXGZQX01BSU5UX1xmSW9wXGZQKSBi9nIgZW5kYXN0CithbnbkbmRhcyBpIFxmQmRlYmlhbi9ydWxlc1xmUCBhdiBwYWtldGFuc3ZhcmlnYSBm9nIgYXR0IORuZHJhIGRlIHNsdXRnaWx0aWdhCitieWdnZmxhZ2dvcm5hLgorLlRQIAorXGZCREVCX1xmUFxmSWZsYWdnYVxmUFxmQl9TRVRcZlAKKy5UUQorXGZCREVCX1xmUFxmSWZsYWdnYVxmUFxmQl9NQUlOVF9TRVRcZlAKK0Rlbm5hIHZhcmlhYmVsIGthbiBhbnbkbmRhcyBm9nIgYXR0IHR2aW5nYSBmcmFtIHbkcmRldCBzb20gcmV0dXJuZXJhcyBm9nIKK2dpdmVuIFxmSWZsYWdnYVxmUC4KKy5UUCAKK1xmQkRFQl9cZlBcZklmbGFnZ2FcZlBcZkJfU1RSSVBcZlAKKy5UUQorXGZCREVCX1xmUFxmSWZsYWdnYVxmUFxmQl9NQUlOVF9TVFJJUFxmUAorRGVubmEgdmFyaWFiZWwga2FuIGFuduRuZGFzIGb2ciBhdHQgdGlsbGhhbmRhaOVsbGEgZW4gYmxhbmtzdGVnc2F2ZGVsYWQKK2xpc3RhIG1lZCBmbGFnZ29yIHNvbSBrb21tZXIgYXR0IHRhcyBib3J0IGZy5W4gdXBwc+R0dG5pbmdlbiBmbGFnZ29yIHNvbSBnZXMKK2b2ciBnaXZlbiBcZklmbGFnZ2FcZlAuCisuVFAgCitcZkJERUJfXGZQXGZJZmxhZ2dhXGZQXGZCX0FQUEVORFxmUAorLlRRCitcZkJERUJfXGZQXGZJZmxhZ2dhXGZQXGZCX01BSU5UX0FQUEVORFxmUAorRGVubmEgdmFyaWFiZWwga2FuIGFuduRuZGFzIGb2ciBhdHQgbORnZ2EgdGlsbCB5dHRlcmxpZ2FyZSBmbGFnZ29yIHRpbGwKK3bkcmRldCBzb20gcmV0dXJuZXJhcyBm9nIgZ2l2ZW4gXGZJZmxhZ2dhXGZQLgorLlRQIAorXGZCREVCX1xmUFxmSWZsYWdnYVxmUFxmQl9QUkVQRU5EXGZQCisuVFEKK1xmQkRFQl9cZlBcZklmbGFnZ2FcZlBcZkJfTUFJTlRfUFJFUEVORFxmUAorRGVubmEgdmFyaWFiZWwga2FuIGFuduRuZGFzIGb2ciBhdHQgbORnZ2EgdGlsbCB5dHRlcmxpZ2FyZSBmbGFnZ29yIGb2cnN0IGkKK3bkcmRldCBzb20gcmV0dXJuZXJhcyBm9nIgZ2l2ZW4gXGZJZmxhZ2dhXGZQLgorLlRQIAorXGZCREVCX0JVSUxEX01BSU5UX09QVElPTlNcZlAKK0RlbiBo5HIgdmFyaWFiZWxuIGthbiBhbnbkbmRhcyBm9nIgYXR0IHNs5SBhdi9w5SBvbGlrYSBo5HJkbmluZ3NieWdnZmxhZ2dvcgorZ2Vub20gYWx0ZXJuYXRpdmV0IFxmQmhhcmRlbmluZ1xmUC4gU2UgYXZzbml0dGV0IFxmQkjEUkROSU5HXGZQIGb2ciBtZXIKK2luZm9ybWF0aW9uLgorLgorLlNIIEjEUkROSU5HCitEdSBrYW4gYW525G5kYSBmbGVyYSBrb21waWxlcmluZ3NmbGFnZ29yIChzZSBkZXRhbGplciBuZWRhbikgZvZyIGF0dCBo5HJkYQorZGVuIGbkcmRpZ2EgYmlu5HJlbiBtb3QgbWlubmVzZvZyZORydm5pbmdzYW5ncmVwcCwgZWxsZXIgZvZyIGF0dCBnZQoreXR0ZXJsaWdhcmUgdmFybmluZ3NtZWRkZWxhbmRlbiB1bmRlciBrb21waWxlcmluZ2VuLiBG9nJ1dG9tIGRldCBzb20gYW5nZXMKK25lZGFuIGFrdGl2ZXJhcyBkZXNzYSBzb20gc3RhbmRhcmQgZvZyIGFya2l0ZWt0dXJlciBzb20gc3T2ZGVyIGRlbS4KKy5QCitWYXJqZSBo5HJkbmluZ3NmdW5rdGlvbiBrYW4gYWt0aXZlcmFzIG9jaCBpbmFrdGl2ZXJhcyBpIG1pbGr2dmFyaWFiZWxuCitcZkJERUJfQlVJTERfTUFJTlRfT1BUSU9OU1xmUCB25HJkZSBcZkJoYXJkZW5pbmdcZlAgbWVkIG1vZGlmaWVyYXJuYSAiKyIgb2NoCisiXC0iLiBEdSBrYW4gdGlsbCBleGVtcGVsIGFrdGl2ZXJhIG9jaCBmdW5rdGlvbmVuICJwaWUiIG9jaCBpbmFrdGl2ZXJhCitmdW5rdGlvbmVuICJmb3J0aWZ5IiBnZW5vbSBhdHQgYW5nZSBkZXR0YSBpIFxmQmRlYmlhbi9ydWxlc1xmUDoKKy5QCisgIGV4cG9ydCBERUJfQlVJTERfTUFJTlRfT1BUSU9OUz1oYXJkZW5pbmc9K3BpZSxcLWZvcnRpZnkKKy5QCitEZW4gc3BlY2llbGxhIGZ1bmt0aW9uZW4gXGZCYWxsXGZQIGthbiBhbnbkbmRhcyBm9nIgYXR0IGFrdGl2ZXJhIGVsbGVyCitpbmFrdGl2ZXJhIGFsbGEgaORyZG5pbmdzZnVua3Rpb25lciBzYW10aWRpZ3QuIER1IGthbiB0aWxsIGV4ZW1wZWwKK2luYWt0aXZlcmEgYWxsdCBvY2ggZW5kYXN0IGFrdGl2ZXJhICJmb3JtYXQiIG9jaCAiZm9ydGlmeSIgbWVkOgorLlAKKyAgZXhwb3J0IERFQl9CVUlMRF9NQUlOVF9PUFRJT05TPWhhcmRlbmluZz1cLWFsbCwrZm9ybWF0LCtmb3J0aWZ5CisuCisuVFAgCitcZkJmb3JtYXRcZlAKK0luc3TkbGxuaW5nZW4gKGFrdGl2ZXJhZCBzb20gc3RhbmRhcmQpIGzkZ2dlciB0aWxsIFxmQlwtV2Zvcm1hdAorXC1XZm9ybWF0XC1zZWN1cml0eSBcLVdlcnJvcj1mb3JtYXRcLXNlY3VyaXR5XGZQIHRpbGwgXGZCQ0ZMQUdTXGZQIG9jaAorXGZCQ1hYRkxBR1NcZlAuIERldHRhIGtvbW1lciBhdHQgdmFybmEgb20gb2zkbXBsaWcgYW525G5kbmluZyBhdgorZm9ybWF0c3Ry5G5nYXIsIG9jaCBhdHQgbWlzc2x5Y2thcyBu5HIgZm9ybWF0ZnVua3Rpb25lcm5hIGFuduRuZHMgcOUgZXR0Citz5HR0IHNvbSByZXByZXNlbnRlcmFyIG32amxpZ2Egc+RrZXJoZXRzcHJvYmxlbS4gRvZyIG7kcnZhcmFuZGUgdmFybmFyIGRldHRhCitvbSBhbnJvcCB0aWxsIGZ1bmt0aW9uZXJuYSBcZkJwcmludGZcZlAgb2NoIFxmQnNjYW5mXGZQIGTkciBmb3JtYXRzdHLkbmdlbiBpbnRlIORyCitlbiBmYXN0IHN0cuRuZyBvY2ggbuRyIGRldCBpbnRlIGZpbm5zIG7lZ3JhIGZvcm1hdGFyZ3VtZW50LCBzb20gaQorXGZCcHJpbnRmKGZvbyk7XGZQIGlzdORsbGV0IGb2ciBcZkJwcmludGYoIiVzIiwgZm9vKTtcZlAgRGV0dGEga2FuIHZhcmEgZXR0Citz5GtlcmhldHNo5Wwgb20gZm9ybWF0c3Ry5G5nZW4ga29tbWVyIGZy5W4gZW4gb2JldHJvZGQga+RsbGEgb2NoIGlubmVo5WxsZXIKKyIlbiIuCisuCisuVFAgCitcZkJmb3J0aWZ5XGZQCitJbnN05GxsbmluZ2VuIChha3RpdmVyYWQgc29tIHN0YW5kYXJkKSBs5GdnZXIgdGlsbCAgXGZCXC1EX0ZPUlRJRllfU09VUkNFPTJcZlAKK3RpbGwgXGZCQ0ZMQUdTXGZQLiBLb21waWxhdG9ybiBoYXIgdW5kZXIga29kZ2VuZXJlcmluZ2VuIGvkbm5lZG9tIG9tIGVuIGhlbCBkZWwKK2luZm9ybWF0aW9uIG9tIGJ1ZmZlcnRzdG9ybGVrYXIgKGTkciB0aWxs5G1wbGlndCkgb2NoIGb2cnP2a2VyIGVyc+R0dGEKK29z5GtyYSBmdW5rdGlvbnNhbnJvcCBtZWQgb2JlZ3LkbnNhZGUgYnVmZmVydGzkbmdkZXIgbWVkIGzkbmdkYmVncuRuc2FkZQorZGl0by4gRGV0IGjkciDkciBzcGVjaWVsbHQgYW525G5kYmFydCBm9nIgZ2FtbWFsLCBza3LkcGlnIGtvZC4gRGVzc3V0b20KK2Jsb2NrZXJhcyBmb3JtYXRzdHLkbmdhciBpIHNrcml2YmFydCBtaW5uZSBzb20gaW5uZWjlbGxlciAiJW4iLiBPbSBldHQKK3Byb2dyYW0g5HIgYmVyb2VuZGUgYXYgZW4gc+VkYW4gZm9ybWF0c3Ry5G5nIG3lc3RlIGRldCBn5XMgcnVudCBpIGtvZC4KKworT2JzZXJ2ZXJhIGF0dCwgZvZyIGF0dCBkZW4gaORyIGZsYWdnYW4gc2thbGwgaGEgbuVnb24gZWZmZWt0LCBt5XN0ZQora+RsbGtvZGVuIG9ja3PlIGtvbXBpbGVyYXMgbWVkIFxmQlwtTzFcZlAgZWxsZXIgaPZncmUuCisuVFAgCitcZkJzdGFja3Byb3RlY3RvclxmUAorSW5zdORsbG5pbmdlbiAoYWt0aXZlcmFkIHNvbSBzdGFuZGFyZCkgbORnZ2VyIHRpbGwgXGZCXC1mc3RhY2tcLXByb3RlY3RvcgorXC1cLXBhcmFtPXNzcFwtYnVmZmVyXC1zaXplPTRcZlAgdGlsbCBcZkJDRkxBR1NcZlAgb2NoIFxmQkNYWEZMQUdTXGZQLiBEZXR0YSBs5GdnZXIgdGlsbAorc+RrZXJoZXRza29udHJvbGxlciBtb3Qgc3RhY2v2dmVyc2tyaXZuaW5nYXIsIHZpbGtldCBn9nIgYXR0IG3lbmdhIG32amxpZ2EKK2tvZGluamljZXJpbmdzYW5ncmVwcCBpc3TkbGxldCBhdmJyeXRlciBwcm9ncmFtbWV0LiBJIGRldCBi5HN0YSBmYWxsZXQgZ/ZyCitkZXQga29kaW5qaWNlcmluZ3NhbmdyZXBwIHRpbGwg9nZlcmJlbGFzdG5pZ25zYW5ncmVwcCBlbGxlciBpY2tlXC1wcm9ibGVtCisoYmVyb2VuZGUgcOUgcHJvZ3JhbW1ldCkuCisKK0RlbiBo5HIgZnVua3Rpb25lbiBrcuR2ZXIgbORua25pbmcgbW90IGdsaWJjIChlbGxlciBldHQgYW5uYXQgYmlibGlvdGVrIHNvbQordGlsbGhhbmRhaOVsbGVyIFxmQl9fc3RhY2tfY2hrX2ZhaWxcZlApLCBz5SBkZXQgbeVzdGUgaW5ha3RpdmVyYXMgbuRyIGR1IGJ5Z2dlcgorbWVkIFxmQlwtbm9zdGRsaWJcZlAgZWxsZXIgXGZCXC1mZnJlZXN0YW5kaW5nXGZQIGVsbGVyIGxpa25hbmRlLgorLgorLlRQIAorXGZCcmVscm9cZlAKK0luc3TkbGxuaW5nZW4gKGFrdGl2ZXJhZCBzb20gc3RhbmRhcmQpIGzkZ2dlciB0aWxsIFxmQlwtV2wsXC16LHJlbHJvXGZQIHRpbGwKK1xmQkxERkxBR1NcZlAuIFZpZCBpbmzkc25pbmcgYXYgcHJvZ3JhbW1ldCBt5XN0ZSBs5G5rYXJlbiBza3JpdmEgdGlsbCBmbGVyYQorRUxGXC1taW5uZXNzZWt0aW9uZXIuIERlbiBo5HIgaW5zdORsbG5pbmdlbiBmbGFnZ2FyIHRpbGwgaW5s5HNhcmVuIGF0dCBkZXNzYQorc2VrdGlvbmVyIHNrYWxsIGf2cmFzIHNrcml2c2t5ZGRhZGUgaW5uYW4gcHJvZ3JhbW1ldCBm5XIga29udHJvbGwuIERldHRhCitza3lkZGFyIGh1dnVkc2FrbGluZ2VuIG1vdCBHT1RcLfZ2ZXJza3Jpdm5pbmdzYW5ncmVwcC4KKy4KKy5UUCAKK1xmQmJpbmRub3dcZlAKK1RoaXMgc2V0dGluZyAoZGlzYWJsZWQgYnkgZGVmYXVsdCkgYWRkcyBcZkJcLVdsLFwteixub3dcZlAgdG8gXGZCTERGTEFHU1xmUC4gRHVyaW5nCitwcm9ncmFtIGxvYWQsIGFsbCBkeW5hbWljIHN5bWJvbHMgYXJlIHJlc29sdmVkLCBhbGxvd2luZyBmb3IgdGhlIGVudGlyZSBQTFQKK3RvIGJlIG1hcmtlZCByZWFkXC1vbmx5IChkdWUgdG8gXGZCcmVscm9cZlAgYWJvdmUpLgorLgorLlRQIAorXGZCcGllXGZQCitJbnN05GxsbmluZ2VuIChpbmFrdGl2ZXJhZCBzb20gc3RhbmRhcmQpIGzkZ2dlciB0aWxsIFxmQlwtZlBJRVxmUCB0aWxsIFxmQkNGTEFHU1xmUAorb2NoIFxmQkNYWEZMQUdTXGZQLCBzYW10IFxmQlwtZlBJRSBcLXBpZVxmUCB0aWxsIFxmQkxERkxBR1NcZlAuIFBvc2l0aW9uc29iZXJvZW5kZQorZXhla3ZlcmJhcmEgcHJvZ3JhbSAoUElFKSBiZWj2dnMgZvZyIGF0dCBkcmEgZvZyZGVsIGF2IHNsdW1wbeRzc2lnCithZHJlc3NyeW1kIChBU0xSKSwgdmlsa2V0IHN09mRzIGF2IHZpc3NhIHZlcnNpb25lciBhdiBr5HJuYW4uIE1lZGFuIEFTTFIKK3JlZGFuIGthbiBhbnbkbmRhcyBm9nIgZGF0YXV0cnltbWVuIGkgc3RhY2tlbiBvY2ggaGVhcDplbiAoYnJrIG9jaCBtbWFwKSwKK23lc3RlIGtvZG9tcuVkZW4gZvZyc3Qga29tcGlsZXJhcyBzb20gcG9zaXRpb25zb2Jlcm9lbmRlLiBEZWxhZGUgYmlibGlvdGVrCitn9nIgcmVkYW4gZGV0dGEgKFwtZlBJIEMpLCBz5SBkZSBkcmFyIGF1dG9tYXRpc2t0IGb2cmRlbCBhdiBBU0xSIG1lZGFuIGJpbuRyYQorXCYudGV4dFwtcmVnaW9uZXIgbeVzdGUgYnlnZ2FzIG1lZCBQSUUgZvZyIGF0dCB1cHBu5SBBU0xSLiBO5HIgZGV0dGEgc2tlciDkcgorUk9QXC1hbmdyZXBwIChSZXR1cm4gT3JpZW50ZWQgUHJvZ3JhbW1pbmcpIG15Y2tldCBzduVyYXJlIGVmdGVyc29tIGRldCBpbnRlCitmaW5ucyBu5WdyYSBzdGF0aXNrYSBwbGF0c2VyIGF0dCBzdHVkc2EgZnLlbiBpIGV0dAorbWlubmVzZvZyZORydm5pbmdzYW5ncmVwcC4KKworRGV0dGEg5HIgaW50ZSBrb21wYXRpYmVsdCBtZWQgXGZCXC1mUElDXGZQIHPlIG1hbiBt5XN0ZSB2YXJhIGb2cnNpa3RpZyBu5HIgbWFuCitieWdnZXIgZGVsYWRlIG9iamVrdC4KKworRWZ0ZXJzb20gUElFIGkgdGlsbORnZyBpbXBsZW1lbnRlcmFzIG1lZCBldHQgZ2VuZXJlbGx0IHJlZ2lzdGVyIGthbiB2aXNzYQorYXJraXRla3R1cmVyIChodXZ1ZHNha2xpZ2VuIGkzODYpIHNlIHByZXN0YW5kYWb2cmx1c3RlciB1cHAgdGlsbCAxNSUgaQorduRsZGlndCB0ZXh0c2VnbWVudFwtdHVuZ2EgcHJvZ3JhbXMga/ZybmluZzsgZGUgZmxlc3RhIGv2cm5pbmdhciBzZXIgbWluZHJlCivkbiAxJS4gQXJraXRla3R1cmVyIG1lZCBt5W5nYSBnZW5lcmVsbGEgcmVnaXN0ZXIgKHQuZXggYW1kNjQpIHNlciBpbnRlIGVuCitsaWthIHN0b3IgduRyc3RhIGZhbGxzXC1m9nJsdXN0LgorLgorLlNIIEbWUkZBVFRBUkUKK1VwcGhvdnNy5HR0c3NreWRkYXQgqSAyMDEwXC0yMDExIFJhcGhh62wgSGVydHpvZworLnNwCitVcHBob3ZzcuR0dHNza3lkZGF0IKkgMjAxMSBLZWVzIENvb2sKKy5zcAorRGV0dGEg5HIgZnJpIHByb2dyYW12YXJhOyBzZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgZWxsZXIKK3NlbmFyZSBm9nIga29waWVyaW5nc3ZpbGxrb3IuIERldCBmaW5ucyBJTkdFTiBHQVJBTlRJLgorCisuU0ggItZWRVJTxFRUTklORyIKK1BldGVyIEtyZWZ0aW5nIG9jaCBEYW5pZWwgTnlsYW5kZXIuCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9zdi9kcGtnLWJ1aWxkcGFja2FnZS4xIGIvZHBrZy0xLjE2LjEuMS9tYW4vc3YvZHBrZy1idWlsZHBhY2thZ2UuMQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jNDM1ZDZlCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vc3YvZHBrZy1idWlsZHBhY2thZ2UuMQpAQCAtMCwwICsxLDIzOCBAQAorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlwiCisuXCIgVGhpcyBmaWxlIHdhcyBnZW5lcmF0ZWQgd2l0aCBwbzRhLiBUcmFuc2xhdGUgdGhlIHNvdXJjZSBmaWxlLgorLlwiCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuVEggZHBrZ1wtYnVpbGRwYWNrYWdlIDEgMjAxMVwtMDhcLTE0IERlYmlhbnByb2pla3RldCBkcGtnXC12ZXJrdHlnZW4KKy5TSCBOQU1OCitkcGtnXC1idWlsZHBhY2thZ2UgXC0gYnlnZyBiaW7kclwtIGVsbGVyIGvkbGxrb2RzcGFrZXQgZnLlbiBr5Gxsa29kCisuCisuU0ggU1lOT1BTCitcZkJkcGtnXC1idWlsZHBhY2thZ2VcZlAgW1xmSWZsYWdnYVxmUC4uLl0KKy4KKy5TSCBCRVNLUklWTklORworXGZCZHBrZ1wtYnVpbGRwcm9ncmFtXGZQIORyIGV0dCBwcm9ncmFtIHNvbSBhdXRvbWF0aXNlcmFyIHByb2Nlc3NlbiBtZWQgYXR0CitieWdnYSBldHQgRGViaWFucGFrZXQuIERldCBiZXN05XIgYXYgZvZsamFuZGUgc3RlZzoKKy5JUCBcZkIxLlxmUCAzCitCeWdnbWlsavZuIGb2cmJlcmVkcyBnZW5vbSBhdHQgZGl2ZXJzZSBtaWxq9nZhcmlhYmxlciBz5HR0cyAoc2UgXGZCTUlMStZcZlApCitvY2ggYW5yb3BhciBcZkJkcGtnXC1zb3VyY2UgXC1cLWJlZm9yZVwtYnVpbGRcZlAgKHPldmlkYSBpbnRlIFxmQl9UXGZQIGVsbGVyCitcZkJcLVwtdGFyZ2V0XGZQIGFuduRuZHMpLgorLklQIFxmQjIuXGZQIDMKK0J5Z2diZXJvZW5kZW4gb2NoIFwta29uZmxpa3RlciBrb250cm9sbGVyYXMgYXR0IGRlIHVwcGZ5bGxzIChz5XZpZGEgaW50ZQorXGZCXC1kXGZQIGFuZ2VzKS4KKy5JUCBcZkIzLlxmUCAzCitPbSBldHQgc3BlY2lmaWt0IG3lbCBoYXIgdmFsdHMgbWVkIGZsYWdnYW4gXGZCXC1UXGZQIGVsbGVyIFxmQlwtXC10YXJnZXRcZlAgYW5yb3BhcworZGV0IG3lbGV0LCB2YXJw5SBwcm9ncmFtbWV0IGF2c2x1dGFzLiBJIGFubmF0IGZhbGwgYW5yb3BhcyBcZkJmYWtlcm9vdAorZGViaWFuL3J1bGVzIGNsZWFuXGZQIGb2ciBhdHQgc3TkZGEgYnlnZ3Ry5GRldCAoc+V2aWRhIGludGUgXGZCXC1uY1xmUCBhbmdlcykuCisuSVAgXGZCNC5cZlAgMworXGZCZHBrZ1wtc291cmNlIFwtYlxmUCBhbnJvcGFzIGb2ciBhdHQgc2thcGEga+RsbGtvZHNwYWtldGV0IChz5XZpZGEgaW50ZSBldHQKK2J5Z2dlIGF2IGVuYmFydCBiaW7kcmVyIGhhciB2YWx0cyBtZWQgXGZCXC1iXGZQLCBcZkJcLUJcZlAgZWxsZXIgXGZCXC1BXGZQKS4KKy5JUCBcZkI1LlxmUCAzCitcZkJkZWJpYW4vcnVsZXMgYnVpbGRcZlAgYW5yb3BhcywgZvZsanQgYXYgXGZCZmFrZXJvb3QgZGViaWFuL3J1bGVzXGZQIFxmSWJpbuRybeVsXGZQCisoc+V2aWRhIGludGUgZXR0IGJ5Z2dlIGF2IGVuYmFydCBr5Gxsa29kIGhhciB2YWx0cyBtZWQgXGZCXC1TXGZQKS4gT2JzZXJ2ZXJhIGF0dAorXGZJYmlu5HJt5WxcZlAg5HIgZXR0IGF2IFxmQmJpbmFyeVxmUCAoc3RhbmRhcmR2YWwsIGVsbGVyIG9tIFxmQlwtYlxmUCBhbmdlcyksCitcZkJiaW5hcnlcLWFyY2hcZlAgKG9tIFxmQlwtQlxmUCBhbmdlcykgZWxsZXIgXGZCYmluYXJ5XC1pbmRlcFxmUCAob20gXGZCXC1BXGZQIGFuZ2VzKS4KKy5JUCBcZkI2LlxmUCAzCitcZkJncGdcZlAgYW5yb3BhcyBm9nIgYXR0IHNpZ25lcmEgXGZCLmRzY1xmUFwtZmlsZW4gKG9tIHPlZGFuIGZpbm5zLCBz5XZpZGEgaW50ZQorXGZCXC11c1xmUCBhbmdlcykuCisuSVAgXGZCNy5cZlAgMworXGZCZHBrZ1wtZ2VuY2hhbmdlc1xmUCBhbnJvcGFzIGb2ciBhdHQgc2thcGEgZW4gXGZCLmNoYW5nZXNcZlBcLWZpbC4gTeVuZ2EgYXYKK2ZsYWdnb3JuYSB0aWxsIFxmQmRwa2dcLWJ1aWxkcGFja2FnZVxmUCB2aWRhcmVz5G5kcyB0aWxsIFxmQmRwa2dcLWdlbmNoYW5nZXNcZlAuCisuSVAgXGZCOC5cZlAgMworXGZCZ3BnXGZQIGFucm9wYXMgZvZyIGF0dCBzaWduZXJhIFxmQi5jaGFuZ2VzXGZQXC1maWxlbiAoc+V2aWRhIGludGUgXGZCXC11Y1xmUCBhbmdlcykuCisuSVAgXGZCOS5cZlAgMworT20gXGZCXC10Y1xmUCBhbmdlcyBhbnJvcGFzIFxmQmZha2Vyb290IGRlYmlhbi9ydWxlcyBjbGVhblxmUCB5dHRlcmxpZ2FyZSBlbgorZ+VuZy4gVGlsbCBzbHV0IGFucm9wYXMgXGZCZHBrZ1wtc291cmNlIFwtXC1hZnRlclwtYnVpbGRcZlAuCisuCisuU0ggRkxBR0dPUgorLlRQIAorXGZCXC1iXGZQCitBbmdlciBhdHQgZW5iYXJ0IGJpbuRyYSBwYWtldCBza2FsbCBieWdnYXMsIGluZ2Ega+RsbGtvZHNmaWxlciBieWdncworb2NoL2VsbGVyIGRpc3RyaWJ1ZXJhcy4gU+RuZHMgdmlkYXJlIHRpbGwgXGZCZHBrZ1wtZ2VuY2hhbmdlc1xmUC4KKy5UUCAKK1xmQlwtQlxmUAorQW5nZXIgYXR0IGVuYmFydCBiaW7kcmEgcGFrZXQgc2thbGwgYnlnZ2FzLCBiZWdy5G5zYXQgdGlsbAorYXJraXRla3R1cmJlcm9lbmRlIHBha2V0LiBT5G5kcyB2aWRhcmUgdGlsbCBcZkJkcGtnXC1nZW5jaGFuZ2VzXGZQLgorLlRQIAorXGZCXC1BXGZQCitBbmdlciBhdHQgZW5iYXJ0IGJpbuRyYSBwYWtldCBza2FsbCBieWdnYXMsIGJlZ3LkbnNhdCB0aWxsCithcmtpdGVrdHVyb2Jlcm9lbmRlIHBha2V0LiBT5G5kcyB2aWRhcmUgdGlsbCBcZkJkcGtnXC1nZW5jaGFuZ2VzXGZQLgorLlRQIAorXGZCXC1TXGZQCitBbmdlciBhdHQgZW5iYXJ0IGvkbGxrb2RzcGFrZXQgc2thbGwgYnlnZ2FzLCBpbmdhIGJpbuRycGFrZXQgYmVo9nZlcgorYnlnZ2FzLiBT5G5kcyB2aWRhcmUgdGlsbCBcZkJkcGtnXC1nZW5jaGFuZ2VzXGZQLgorLlRQIAorXGZCXC1GXGZQCitBbmdlciBhdHQgZXR0IG5vcm1hbHQga29tcGxldHQgYnlnZ2UsIGJpbuRyXC0gb2NoIGvkbGxrb2RzcGFrZXQsIHNrYWxsCitieWdnYXMuIERldHRhIORyIGRldHNhbW1hIHNvbSBzdGFuZGFyZGzkZ2V0IG9tIGluZ2EgYnlnZ2ZsYWdnb3IgYW5nZXMuCisuUAorXGZCXC1cLXRhcmdldD1cZlBcZklt5WxcZlAKKy5icgorXGZCXC1cLXRhcmdldCBcZlBcZklt5WxcZlAKKy5icgorXGZCXC1UXGZQXGZJbeVsXGZQCisuUlMKK0Fucm9wYXIgXGZCZGViaWFuL3J1bGVzXGZQIFxmSW3lbFxmUCBlZnRlciBhdHQgaGEga29uZmlndXJlcmF0IGJ5Z2dtaWxq9m4sIG9jaAorYXZicnl0ZXIgYnlnZ3Byb2Nlc3NlbiBlZnRlcuV0LiBPbSBcZkJcLVwtYXNcLXJvb3RcZlAgb2Nrc+UgYW5nZXMga/ZycyBrb21tYW5kb3QKK3NvbSByb290IChzZSBcZkJcLXJcZlApLiBPYnNlcnZlcmEgYXR0IG9mZmljaWVsbGEgbeVsIHNvbSBt5XN0ZSBr9nJhcyBzb20gcm9vdAoraW50ZSBiZWj2dmVyIGZsYWdnYW4uCisuUkUKKy5UUCAKK1xmQlwtXC1hc1wtcm9vdFxmUAorRW5kYXN0IG1lbmluZ3NmdWxsIHRpbGxzYW1tYW5zIG1lZCBcZkJcLVwtdGFyZ2V0XGZQLiBLcuR2ZXIgYXR0IG3lbGV0IGv2cnMgbWVkCityb290XC1iZWj2cmlnaGV0LgorLlAKK1xmQlwtc2lcZlAKKy5icgorXGZCXC1zYVxmUAorLmJyCitcZkJcLXNkXGZQCisuYnIKK1xmQlwtdlxmUFxmSXZlcnNpb25cZlAKKy5icgorXGZCXC1DXGZQXGZJ5G5kcmluZ3NiZXNrcml2bmluZ1xmUAorLmJyCitcZkJcLW1cZlBcZklwYWtldGFuc3ZhcmlnZVwtYWRyZXNzXGZQCisuYnIKK1xmQlwtZVxmUFxmSXBha2V0YW5zdmFyaWdlXC1hZHJlc3NcZlAKKy5SUworU+RuZHMgdmlkYXJlIHV0YW4g5G5kcmluZ2FyIHRpbGwgXGZCZHBrZ1wtZ2VuY2hhbmdlc1xmUC4gU2UgZGVzcyBtYW51YWxzaWRhLgorLlJFCisuVFAgCitcZkJcLWFcZlBcZklhcmtpdGVrdHVyXGZQCitBbmdlIERlYmlhbmFya2l0ZWt0dXJlbiB2aSBieWdnZXIgZvZyLiBBcmtpdGVrdHVyZW4gZvZyIG1hc2tpbmVuIHZpIGJ5Z2dlcgorcOUgYmVzdORtcyBhdXRvbWF0aXNrdCwgb2NoIORyIOR2ZW4gc3RhbmRhcmQgZvZyIHbkcmRtYXNraW5lbi4KKy5UUCAKK1xmQlwtdFxmUFxmSWdudVwtc3lzdGVtdHlwXGZQCitBbmdlIEdOVVwtc3lzdGVtdHlwIHZpIGJ5Z2dlciBm9nIuIERlbiBrYW4gYW525G5kYXMgaSBzdORsbGV0IGb2ciBcLWEgZWxsZXIKK3NvbSBldHQga29tcGxlbWVudCBm9nIgYXR0IPZ2ZXJzdHlyYSBzdGFuZGFyZFwtR05VXC1zeXN0ZW10eXBlbiBm9nIKK0RlYmlhblwtbeVsYXJraXRla3R1cmVuLgorLlRQIAorXGZCXC1qXGZQXGZJam9iYlxmUAorQW50YWxldCBqb2JiIHNvbSB0aWxs5XRzIGF0dCBr9nJhcyBzYW10aWRpZ3QsIG1vdHN2YXJhciBcZkJtYWtlXGZQKDEpXC1mbGFnZ2FuCittZWQgc2FtbWEgbmFtbi4gTORnZ2VyIHRpbGwgc2lnIHNq5Gx2IGkgbWlsavZ2YXJpYWJlbG4gTUFLRUZMQUdTLCB2aWxrZXQgZuVyCithbGxhIHDlZvZsamFuZGUgbWFrZVwtYW5yb3AgYXR0IORydmEgZmxhZ2dhbi4gTORnZ2VyIOR2ZW4gdGlsbCBmbGFnZ2FuCitcZkJwYXJhbGxlbD1cZlBcZklqb2JiXGZQIHRpbGwgbWlsavZ2YXJpYWJlbG4gREVCX0JVSUxEX09QVElPTlMsIHZpbGtldCBn9nIgZGV0Citt9mpsaWd0IGb2ciBkZWJpYW4vcnVsZXNcLWZpbGVyIGF0dCBhbnbkbmRhIGluZm9ybWF0aW9uZW4gZvZyIGVnbmEKK+RuZGFt5WwuIFbkcmRldCBcZkJwYXJhbGxlbD1cZlBcZklqb2JiXGZQIGkgbWlsavZ2YXJpYWJlbG4gREVCX0JVSUxEX09QVElPTlMKK2tvbW1lciBhdHQg9nZlcnN0eXJhIHbkcmRldCBm9nIgXGZCXC1qXGZQIG9tIGRlbiBmbGFnZ2FuIGdlcy4KKy5UUCAKK1xmQlwtRFxmUAorS29udHJvbGxlcmEgIGJ5Z2diZXJvZW5kZW4gb2NoIFwta29uZmxpa3RlcjsgYXZicnl0IG9tIGRlIGludGUKK3VwcGZ5bGxzLiBEZXR0YSDkciBzdGFuZGFyZGJldGVlbmRldC4KKy5UUCAKK1xmQlwtZFxmUAorS29udHJvbGxlcmEgaW50ZSBieWdnYmVyb2VuZGVuIGVsbGVyIFwta29uZmxpa3Rlci4KKy5UUCAKK1xmQlwtbmNcZlAKK1N05GRhIGludGUgdXBwIGJ5Z2d0cuRkZXQgKGltcGxpY2VyYXIgXGZCXC1iXGZQIG9tIGluZ2V0IGFubmF0IGhhciB2YWx0cyBibGFuZAorXGZCXC1CXGZQLCBcZkJcLUFcZlAgZWxsZXIgXGZCXC1TXGZQKS4KKy5UUCAKK1xmQlwtdGNcZlAKK1N05GRhIGvkbGxrb2RzdHLkZGV0IChhbnbkbmRlciBcZklm5Vwtcm9vdFwta29tbWFuZG9cZlAgXGZCZGViaWFuL3J1bGVzIGNsZWFuXGZQKQorZWZ0ZXIgYXR0IHBha2V0ZXQgaGFyIGJ5Z2d0cy4KKy5UUCAKK1xmQlwtclxmUFxmSWblXC1yb290XC1rb21tYW5kb1xmUAorTuRyIFxmQmRwa2dcLWJ1aWxkcGFja2FnZXNcZlAgYmVo9nZlciBleGVrdmVyYSBkZWxhciBhdiBieWdncHJvY2Vzc2VuIHNvbSByb290Citz5HR0ZXIgZGVuIGtvbW1hbmRvdCBzb20gc2thbGwgZXhla3ZlcmFzIGVmdGVyIFxmSWblXC1yb290XC1rb21tYW5kb1xmUCBvbSBldHQKK3PlZGFudCBoYXIgYW5naXZpdHMuIE9tIGludGUga29tbWVyIFxmQmZha2Vyb290XGZQIGF0dCBhbnbkbmRhcyBzb20gc3RhbmRhcmQsCitvbSBrb21tYW5kb3QgZXhpc3RlcmFyLiBcZklm5Vwtcm9vdFwta29tbWFuZG9cZlAgbeVzdGUgYvZyamEgbWVkIG5hbW5ldCBw5SBkZXQKK2Zha3Rpc2thIGtvbW1hbmRvdCBzb20gc2thbGwgYW5yb3BhcyBzYW10IGRlIHBhcmFtZXRyYXIgZGV0IHNrYWxsIGFucm9wYXMKK21lZC4gXGZJZuVcLXJvb3RcLWtvbW1hbmRvXGZQIGthbiBpbm5laOVsbGEgcGFyYW1ldHJhciAoZGUgbeVzdGUgdmFyYSBhdmRlbGFkZQorbWVkIGJsYW5rc3RlZykgbWVuIGluZ2Egc2thbG1ldGF0ZWNrZW4uIFxmSWblXC1yb290XC1rb21tYW5kb1xmUCBrYW4gdHlwaXNrdCB2YXJhCitcZkJmYWtlcm9vdFxmUCwgXGZCc3Vkb1xmUCwgXGZCc3VwZXJcZlAgZWxsZXIgXGZCcmVhbGx5XGZQLiBcZkJzdVxmUCDkciBpbnRlIGzkbXBsaWd0CitlZnRlcnNvbSBkZXQga3LkdmVyIGZsYWdnYW4gXGZCXC1jXGZQIGb2ciBhdHQga/ZyYSBldHQga29tbWFuZG8gb2NoIOR2ZW4gZOUga2FuCitkZXQgYmFyYSBzdGFydGEgYW525G5kYXJlbnMgc2thbCBtZWQgXGZCXC1jXGZQIGlzdORsbGV0IGb2ciBhdHQgc+RuZGEgZmxhZ2dvcgoraW5kaXZpZHVlbGx0IHRpbGwga29tbWFuZG90IHNvbSBza2FsbCBzdGFydGFzLgorLlRQIAorXGZCXC1SXGZQXGZJcmVnZWxmaWxcZlAKK0b2ciBhdHQgYnlnZ2EgZXR0IERlYmlhbnBha2V0IGv2cnMgbm9ybWFsdCBrb21tYW5kb3QgXGZCZGViaWFuL3J1bGVzXGZQIG1lZAorZmxlcmEgb2xpa2Egc3RhbmRhcmRwYXJhbWV0cmFyLiBEZW4gaORyIGZsYWdnYW4gZ/ZyIGRldCBt9mpsaWd0IGF0dCBhbnbkbmRhCitldHQgYW5uYXQgcHJvZ3JhbWFucm9wIGb2ciBhdHQgYnlnZ2EgcGFrZXRldCAoZGV0IGthbiBpbm5laOVsbGEKK2JsYW5rc3RlZ3NhdmRlbGFkZSBwYXJhbWV0cmFyKS4gRGVuIGthbiDkdmVuIGFuduRuZGFzIGb2ciBhdHQgZXhla3ZlcmEKK3N0YW5kYXJkcmVnZWxmaWxlbiBtZWQgZXR0IGFubmF0IG1ha2VcLXByb2dyYW0gKHRpbGwgZXhlbXBlbCBnZW5vbSBhdHQKK2FuduRuZGEgXGZCL3Vzci9sb2NhbC9iaW4vbWFrZSBcLWYgZGViaWFuL3J1bGVzXGZQIHNvbSBcZklyZWdlbGZpbFxmUCkuCisuVFAgCitcZkJcLXBcZlBcZklzaWduZXJpbmdza29tbWFuZG9cZlAKK07kciBcZkJkcGtnXC1idWlsZHBhY2thZ2VcZlAgbeVzdGUgZXhla3ZlcmEgR1BHIGVsbGVyIFBHUCBm9nIgYXR0IHNpZ25lcmEgZXR0Citr5Gxsa29kc3N0eXJmaWwgKFxmQi5kc2NcZlApIGVsbGVyIGVuIFxmQi5jaGFuZ2VzXGZQXC1maWwga/ZyIGRldAorXGZJc2lnbmVyaW5nc2tvbW1hbmRvXGZQIChkZXQgbGV0YXIgaSBcZkJQQVRIXGZQIG9tIHPlIGJlaPZ2cykgaXN05GxsZXQgZvZyCitcZkJncGdcZlAuIFxmSXNpZ25lcmluZ3Nrb21tYW5kb1xmUCBm5XIgZGUgYXJndW1lbnQgXGZCZ3BnXGZQIHNrdWxsZSBoYSBm5XR0LiBPbQorXGZJc2lnbmVyaW5nc2tvbW1hbmRvXGZQIHRhciBrb21tYW5kb24gZW5saWd0IEdQR1wtIGlzdORsbGV0IGb2ciBQR1BcLXN0aWwgbeVzdGUKK2R1IGdlIGZsYWdnYW4gXGZCXC1zZ3BnXGZQLiBcZklzaWduZXJpbmdza29tbWFuZG9cZlAgZuVyIGludGUgaW5uZWjlbGxhIGJsYW5rc3RlZworZWxsZXIgYW5kcmEgc2thbG1ldGF0ZWNrZW4uCisuVFAgCitcZkJcLWtcZlBcZklueWNrZWxcLWlkXGZQCitBbmdlIG55Y2tlbFwtaWQgYXR0IGFuduRuZGEgdmlkIHNpZ25lcmluZyBhdiBwYWtldC4KKy5UUCAKK1xmQlwtdXNcZlAKK1NpZ25lcmEgaW50ZSBr5Gxsa29kc3Bha2V0ZXQuCisuVFAgCitcZkJcLXVjXGZQCitTaWduZXJhIGludGUgXGZCLmNoYW5nZXNcZlBcLWZpbGVuLgorLlAKK1xmQlwtaVxmUFtcZklyZWd1bGrkcnRcLXV0dHJ5Y2tcZlBdCisuYnIKK1xmQlwtSVxmUFxmSVtt9m5zdGVyXVxmUAorLmJyCitcZkJcLXNcZlBbXGZCbnNBa3VyS1VSXGZQXQorLmJyCitcZkJcLXpcZlAsIFxmQlwtWlxmUAorLmJyCisuUlMKK1PkbmRzIHZpZGFyZSB1dGFuIORuZHJpbmdhciB0aWxsIFxmQmRwa2dcLXNvdXJjZVxmUC4gU2UgZGVzcyBtYW51YWxzaWRhLgorLlJFCisuVFAgCitcZkJcLVwtc291cmNlXC1vcHRpb249XGZQXGZJdmFsXGZQCitT5G5kIGZsYWdnYW4gXGZJdmFsXGZQIHRpbGwgXGZCZHBrZ1wtc291cmNlXGZQLgorLlRQIAorXGZCXC1cLWNoYW5nZXNcLW9wdGlvbj1cZlBcZkl2YWxcZlAKK1PkbmRlciBmbGFnZ2FuIFxmSXZhbFxmUCB0aWxsIFxmQmRwa2dcLWdlbmNoYW5nZXNcZlAuCisuUAorXGZCXC1cLWFkbWluZGlyPVxmUFxmSWthdFxmUAorLmJyCitcZkJcLVwtYWRtaW5kaXJcZlAgXGZJa2F0XGZQCisuUlMKK8RuZHJhIHBsYXRzZW4gZvZyIFxmQmRwa2dcZlBcLWRhdGFiYXNlbi4gRvZydmFsIORyIFxmSS92YXIvbGliL2Rwa2dcZlAuCisuUkUKKy5UUCAKK1xmQlwtaFxmUCwgXGZCXC1cLWhlbHBcZlAKK1Zpc2FyIGhq5Gxwc2vkcm0gb2NoIGF2c2x1dGFyLgorLlRQIAorXGZCXC1cLXZlcnNpb25cZlAKK1Zpc2FyIHZlcnNpb24gb2NoIGF2c2x1dGFyLgorLgorLlNIIE1JTErWVkFSSUFCTEVSCivEdmVuIG9tIFxmQmRwa2dcLWJ1aWxkcGFja2FnZVxmUCBleHBvcnRlcmFyIG7lZ3JhIHZhcmlhYmxlciBi9nIgaW50ZQorXGZCZGViaWFuL3J1bGVzXGZQIHZhcmEgYmVyb2VuZGUgYXYgZGVyYXMgbuRydmFybyBvY2ggYvZyIGlzdORsbGV0IGFuduRuZGEKK3Jlc3Bla3RpdmUgZ3LkbnNzbml0dCBm9nIgYXR0IGjkbXRhIGRlIHbkcmRlbiBzb20gYmVo9nZzLgorLlNTICJWYXJpYWJsZXIgc29tIHPkdHRzIGF2IGRwa2dcLWFyY2hpdGVjdHVyZSIKK1xmQmRwa2dcLWFyY2hpdGVjdHVyZVxmUCBhbnJvcGFzIG1lZCBmbGFnZ29ybmEgXGZCXC1hXGZQIG9jaCBcZkJcLXRcZlAKK3ZpZGFyZXPkbmRhLiBWYXJpYWJsZXIgc29tIHNrcml2cyB1dCB2aWEgZGVzcyBcZkJcLXNcZlBcLWZsYWdnYSBpbnRlZ3JlcmFzIGkKK2J5Z2dtaWxq9m4uCisuU1MgIktvbXBpbGVyaW5nc2ZsYWdnb3IgZXhwb3J0ZXJhcyBpbnRlIGzkbmdyZS4iCitNZWxsYW4gdmVyc2lvbiAxLjE0LjE3IG9jaCAxLjE2LjEgZXhwb3J0ZXJhZGUgXGZCZHBrZ1wtYnVpbGRwYWNrYWdlXGZQCitrb21waWxhdG9yZmxhZ2dvciAoXGZCQ0ZMQUdTXGZQLCBcZkJDWFhGTEFHU1xmUCwgXGZCQ1BQRkxBR1NcZlAgb2NoIFxmQkxERkxBR1NcZlApIG1lZAorduRyZGVuIGVubGlndCBcZkJkcGtnXC1idWlsZGZsYWdzXGZQLiBEZXR0YSBn5GxsZXIgaW50ZSBs5G5ncmUuCisuCisuU0ggUFJPR1JBTUZFTAorRGV0IGJvcmRlIHZhcmEgbfZqbGlndCBhdHQgYW5nZSBibGFua3N0ZWcgb2NoIHNrYWxtZXRhdGVja2VuIGksIG9jaAoraW5sZWRhbmRlIGFyZ3VtZW50IGb2ciwgXGZJZuVcLXJvb3RcLWtvbW1hbmRvXGZQIG9jaCBcZklzaWduZXJpbmdza29tbWFuZG9cZlAuCisuCisuU0ggIlNFIMRWRU4iCitcZkJkcGtnXC1zb3VyY2VcZlAoMSksIFxmQmRwa2dcLWFyY2hpdGVjdHVyZVxmUCgxKSwgXGZCZHBrZ1wtYnVpbGRmbGFnc1xmUCgxKSwKK1xmQmRwa2dcLWdlbmNoYW5nZXNcZlAoMSksIFxmQmZha2Vyb290XGZQKDEpLCBcZkJncGdcZlAoMSkuCisuCisuU0ggRtZSRkFUVEFSRQorVXBwaG92c3LkdHRzc2t5ZGRhdCCpIDE5OTVcLTE5OTYgSWFuIEphY2tzb24KKy5icgorVXBwaG92c3LkdHRzc2t5ZGRhdCCpIDIwMDAgV2ljaGVydCBBa2tlcm1hbgorLmJyCitVcHBob3ZzcuR0dHNza3lkZGF0IKkgMjAwNyBGcmFuayBMaWNodGVuaGVsZAorLmJyCitVcHBob3ZzcuR0dHNza3lkZGF0IKkgMjAwOFwtMjAxMCBSYXBoYetsIEhlcnR6b2cKKy5zcAorRGV0dGEg5HIgZnJpIHByb2dyYW12YXJhOyBzZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgZWxsZXIKK3NlbmFyZSBm9nIga29waWVyaW5nc3ZpbGxrb3IuIERldCBmaW5ucyBJTkdFTiBHQVJBTlRJLgorLlNIICLWVkVSU8RUVE5JTkciCitQZXRlciBLcmVmdGluZyBvY2ggRGFuaWVsIE55bGFuZGVyLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vc3YvZHBrZy1jaGVja2J1aWxkZGVwcy4xIGIvZHBrZy0xLjE2LjEuMS9tYW4vc3YvZHBrZy1jaGVja2J1aWxkZGVwcy4xCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjMyZDRiYmYKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9zdi9kcGtnLWNoZWNrYnVpbGRkZXBzLjEKQEAgLTAsMCArMSw0OCBAQAorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlwiCisuXCIgVGhpcyBmaWxlIHdhcyBnZW5lcmF0ZWQgd2l0aCBwbzRhLiBUcmFuc2xhdGUgdGhlIHNvdXJjZSBmaWxlLgorLlwiCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuVEggZHBrZ1wtY2hlY2tidWlsZGRlcHMgMSAyMDExXC0wN1wtMDQgRGViaWFucHJvamVrdGV0IGRwa2dcLXZlcmt0eWdlbgorLlNIIE5BTU4KK2Rwa2dcLWNoZWNrYnVpbGRkZXBzIFwtIGtvbnRyb2xsZXJhIGJ5Z2diZXJvZW5kZW4gb2NoIFwta29uZmxpa3RlcgorLgorLlNIIFNZTk9QUworXGZCZHBrZ1wtY2hlY2tidWlsZGRlcHNcZlAgW1xmSWZsYWdnYVxmUC4uLl0gW1xmSWNvbnRyb2xcLWZpbFxmUF0KKy4KKy5TSCBCRVNLUklWTklORworRGV0dGEgcHJvZ3JhbSBrb250cm9sbGVyYXIgaW5zdGFsbGVyYWRlIHBha2V0IHDlIHN5c3RlbWV0IG1vdCBieWdnYmVyb2VuZGVuCitvY2ggXC1rb25mbGlrdGVyIHNvbSBsaXN0YXMgaSBmaWxlbiBjb250cm9sLiBPbSBkZSBpbnRlIHVwcGZ5bGxzLCB2aXNhcyBkZQorb2NoIHByb2dyYW1tZXQgYXZzbHV0YXMgbWVkIGVuIGZlbHN0YXR1cyBzb20gaW50ZSDkciBub2xsLgorLlAKK1NvbSBzdGFuZGFyZCBs5HNlcyBcZkJkZWJpYW4vY29udHJvbFxmUCwgbWVuIGV0dCBhbHRlcm5hdGl2dCBzdHlyZmlsbmFtbiBrYW4KK2FuZ2VzIHDlIGtvbW1hbmRvcmFkZW4uCisuCisuU0ggRkxBR0dPUgorLlRQIAorXGZCXC1cLWFkbWluZGlyPVxmUFxmSWthdFxmUAorxG5kcmEgcGxhdHNlbiBm9nIgXGZCZHBrZ1xmUFwtZGF0YWJhc2VuLiBG9nJ2YWwg5HIgXGZJL3Zhci9saWIvZHBrZ1xmUC4KKy5UUCAKK1xmQlwtQlxmUAorSWdub3JlcmEgXGZJQnVpbGRcLURlcGVuZHNcLUluZGVwXGZQXC1yYWRlci4gQW525G5kIG9tIGluZ2EgYXJraXRla3R1cm9iZXJvZW5kZQorcGFrZXQgc2thbGwgYnlnZ2FzLgorLlRQIAorXGZCXC1kXGZQIFxmSWJ5Z2diZXJvZW5kZXN0cuRuZ1xmUAorLlRQIAorXGZCXC1jXGZQIFxmSWJ5Z2drb25mbGlrdHN0cuRuZ1xmUAorQW525G5kIGRlIGFuZ2l2bmEgYnlnZ2Jlcm9lbmRlbmEvXC1rb25mbGlrdGVybmEgaXN05GxsZXQgZvZyIGRlIHNvbSBzdOVyIGkKK2ZpbGVuIFxmSWRlYmlhbi9jb250cm9sXGZQLgorLlRQIAorXGZCXC1oXGZQLCBcZkJcLVwtaGVscFxmUAorVmlzYXIgaGrkbHBza+RybSBvY2ggYXZzbHV0YXIuCisuVFAgCitcZkJcLVwtdmVyc2lvblxmUAorVmlzYXIgdmVyc2lvbiBvY2ggYXZzbHV0YXIuCisuCisuU0ggRtZSRkFUVEFSRQorVXBwaG92c3LkdHRzc2t5ZGRhdCCpIDIwMDEgSm9leSBIZXNzCisuc3AKK0RldHRhIORyIGZyaSBwcm9ncmFtdmFyYTsgc2UgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAyIGVsbGVyCitzZW5hcmUgZvZyIGtvcGllcmluZ3N2aWxsa29yLiBEZXQgZmlubnMgSU5HRU4gR0FSQU5USS4KKy5TSCAi1lZFUlPEVFROSU5HIgorUGV0ZXIgS3JlZnRpbmcgb2NoIERhbmllbCBOeWxhbmRlci4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL3N2L2Rwa2ctZGViLjEgYi9kcGtnLTEuMTYuMS4xL21hbi9zdi9kcGtnLWRlYi4xCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjNhZjI1ZmEKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9zdi9kcGtnLWRlYi4xCkBAIC0wLDAgKzEsMjAwIEBACisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkcGtnXC1kZWIgMSAyMDExXC0wOFwtMTQgRGViaWFucHJvamVrdGV0IERwa2dcLXN2aXRlbgorLlNIIE5BTU4KK2Rwa2dcLWRlYiBcLSBEZWJpYW5zIG1hbmlwdWxlcmluZ3N2ZXJrdHlnIGb2ciBwYWtldGFya2l2ICguZGViKQorLgorLlNIIFNZTk9QUworXGZCZHBrZ1wtZGViXGZQIFtcZklmbGFnZ2FcZlAuLi5dIFxmSeV0Z+RyZFxmUAorLgorLlNIIEJFU0tSSVZOSU5HCitcZkJkcGtnXC1kZWJcZlAgcGFja2FyLCBwYWNrYXIgdXBwIG9jaCB0aWxsaGFuZGFo5WxsZXIgaW5mb3JtYXRpb24gb20KK0RlYmlhbmFya2l2LgorLlBQCitBbnbkbmQgXGZCZHBrZ1xmUCBm9nIgYXR0IGluc3RhbGxlcmEgb2NoIHRhIGJvcnQgcGFrZXQgZnLlbiBkaXR0IHN5c3RlbS4KKy5QUAorRHUga2FuIOR2ZW4gc3RhcnRhIFxmQmRwa2dcLWRlYlxmUCBnZW5vbSBhdHQgYW5yb3BhIFxmQmRwa2dcZlAgbWVkIGRlIGZsYWdnb3IgZHUKK3ZpbGwgc+RuZGEgdGlsbCBcZkJkcGtnXC1kZWJcZlAuIFxmQmRwa2dcZlAga29tbWVyIHVwcHTkY2thIGF0dCBkdSB2aWxsZSDldAorXGZCZHBrZ1wtZGViXGZQIG9jaCBr9nIgZGV0IOV0IGRpZy4KKy4KKy5TSCBLT01NQU5ET04KKy5UUCAKK1xmQlwtYlxmUCwgXGZCXC1cLWJ1aWxkXGZQIFxmSWthdGFsb2dcZlAgW1xmSWFya2l2XGZQfFxmSWthdGFsb2dcZlBdCitTa2FwYXIgZXR0IERlYmlhbmFya2l2IGZy5W4gZmlsc3lzdGVtc3Ry5GRldCBzb20gbGFncmFzIGkKK1xmSWthdGFsb2dcZlAuIFxmSWthdGFsb2dcZlAgbeVzdGUgaW5uZWjlbGxhIHVuZGVya2F0YWxvZ2VuIFxmQkRFQklBTlxmUCwgdmlsa2VuCitpbm5laOVsbGVyIHN0eXJpbmZvcm1hdGlvbnNmaWxlciBz5XNvbSBzauRsdiBzdHlyZmlsZW4gY29udHJvbC4gS2F0YWxvZ2VuCitrb21tZXIgXGZJaW50ZVxmUCBhdHQgdmlzYXMgaSBiaW7kcnBha2V0ZXRzIGZpbHN5c3RlbXNhcmtpdiwgdXRhbiBpc3TkbGxldAora29tbWVyIGZpbGVybmEgbORnZ2FzIGkgYmlu5HJwYWtldGV0cyBzdHlyaW5mb3JtYXRpb25zb21y5WRlLgorCitT5XZpZGEgZHUgaW50ZSBhbmdlciBcZkJcLVwtbm9jaGVja1xmUCBrb21tZXIgZHBrZ1wtZGViIGF0dCBs5HNhIFxmQkRFQklBTi9jb250cm9sXGZQCitvY2ggdG9sa2EgZGVuLiBEZW4ga29tbWVyIGxldGEgZWZ0ZXIgc3ludGF4ZmVsIG9jaCBhbmRyYSBwcm9ibGVtLCBvY2ggdmlzYQorbmFtbmV0IHDlIGRldCBiaW7kcnBha2V0IHNvbSBieWdncy4gXGZCZHBrZ1wtZGViXGZQIGtvbW1lciDkdmVuIGF0dCBrb250cm9sbGVyYQorYmVo9nJpZ2hldGVuIHDlIHBha2V0c2tyaXB0ZW4gb2NoIGFuZHJhIGZpbGVyIHNvbSBoaXR0YXMgaQorc3R5cmluZm9ybWF0aW9uc2thdGFsb2dlbiBcZkJERUJJQU5cZlAuCisKK09tIGluZ2V0IFxmSWFya2l2XGZQIGFuZ2VzIGtvbW1lciBcZkJkcGtnXC1kZWJcZlAgc2tyaXZhIHBha2V0ZXQgdGlsbCBmaWxlbgorXGZJa2F0YWxvZ1xmUFxmQi5kZWJcZlAuCisKK09tIGFya2l2ZXQgc29tIHNrYWxsIHNrYXBhcyByZWRhbiBmaW5ucyBrb21tZXIgZGV0IHNrcml2YXMg9nZlci4KKworT20gZGVuIGFuZHJhIGFyZ3VtZW50ZXQg5HIgZW4ga2F0YWxvZyBrb21tZXIgXGZCZHBrZ1wtZGViXGZQIHNrcml2YSB0aWxsIGZpbGVuCitcZklwYWtldFxmUFxmQl9cZlBcZkl2ZXJzaW9uXGZQXGZCX1xmUFxmSWFya2l0ZWt0dXJcZlBcZkIuZGViXGZQLCBlbGxlcgorXGZJcGFrZXRcZlBcZkJfXGZQXGZJdmVyc2lvblxmUFxmQi5kZWJcZlAgb20gZGV0IGludGUgZmlubnMgbuVnb3QgXGZCQXJjaGl0ZWN0dXJlXGZQXC1m5Gx0IGkKK3N0eXJmaWxlbiBjb250cm9sLiBO5HIgZW4gbeVsa2F0YWxvZyBhbmdlcywgaXN05GxsZXQgZvZyIGVuIGZpbCwga2FuIGludGUKK2ZsYWdnYW4gXGZCXC1cLW5vY2hlY2tcZlAgYW525G5kYXMgKGVmdGVyc29tIFxmQmRwa2dcLWRlYlxmUCBt5XN0ZSBs5HNhIG9jaCB0b2xrYQorcGFrZXRldHMgc3R5cmZpbCBjb250cm9sIGb2ciBhdHQgdGEgcmVkYSBw5SB2aWxrZXQgZmlsbmFtbiBzb20gc2thbGwKK2FuduRuZGFzKS4KKy5UUCAKK1xmQlwtSVxmUCwgXGZCXC1cLWluZm9cZlAgXGZJYXJraXZcZlAgW1xmSWNvbnRyb2xcLWZpbG5hbW5cZlAgLi4uXQorVGlsbGhhbmRhaOVsbGVyIGluZm9ybWF0aW9uIG9tIGV0dCBiaW7kcnQgcGFrZXRhcmtpdi4KKworT20gaW5nYSBcZkljb250cm9sXC1maWxuYW1uXGZQIGFuZ2VzIGtvbW1lciBkZXQgYXR0IHZpc2EgZW4gc2FtbWFuZmF0dG5pbmcgYXYKK2lubmVo5WxsZXQgaSBwYWtldGV0IHRpbGxzYW1tYW5zIG1lZCBkZXNzIHN0eXJmaWwuCisKK09tIGV0dCBlbGxlciBmbGVyYSBcZkljb250cm9sXC1maWxuYW1uXGZQIGFuZ2VzIGtvbW1lciBcZkJkcGtnXC1kZWJcZlAgYXR0IHNrcml2YSB1dAorZGVtIGkgZGVuIG9yZG5pbmcgZGUgYW5nZXMuIE9tIG7lZ3JhIGF2IGtvbXBvbmVudGVybmEgaW50ZSBmYW5ucyBrb21tZXIgZXR0CitmZWxtZWRkZWxhbmRlIGb2ciB2YXJ0IG9jaCBldHQgc2tyaXZhcyB1dCBw5SBzdGFuZGFyZCBmZWwsIG9jaCBwcm9ncmFtbWV0CithdnNsdXRhciBtZWQgZmVsc3RhdHVzIDIuCisuVFAgCitcZkJcLVdcZlAsIFxmQlwtXC1zaG93XGZQIFxmSWFya2l2XGZQCitHZXIgaW5mb3JtYXRpb24gb20gZXR0IGJpbuRydCBwYWtldGFya2l2IGkgZGV0IGZvcm1hdCBzb20gYW5nZXMgbWVkIGZsYWdnYW4KK1xmQlwtXC1zaG93Zm9ybWF0XGZQLiBEZXQgZvZydmFsZGEgZm9ybWF0ZXQgdmlzYXIgcGFrZXRldHMgbmFtbiBvY2ggdmVyc2lvbiBw5SBlbgorcmFkLCBhdmRlbGFkZSBtZWQgdGFidWxhdG9ydGVja2VuLgorLlRQIAorXGZCXC1mXGZQLCBcZkJcLVwtZmllbGRcZlAgXGZJYXJraXZcZlAgW1xmSWNvbnRyb2xcLWbkbHRuYW1uXGZQIC4uLl0KK0V4dHJhaGVyYXIgc3R5cmZpbHNpbmZvcm1hdGlvbiBmcuVuIGV0dCBiaW7kcnQgcGFrZXRhcmtpdi4KKworT20gZHUgaW50ZSBhbmdlciBu5WdyYSBcZkJzdHlyZmlsZuRsdFxmUCB2aXNhcyBoZWxhIHN0eXJmaWxlbi4KKworT20gbuVncmEgYW5nZXMga29tbWVyIFxmQmRwa2dcLWRlYlxmUCBhdHQgdmlzYSBkZXJhcyBpbm5laOVsbCwgaSBkZW4gb3JkbmluZyBkZQorZvZyZWtvbW1lciBpIHN0eXJmaWxlbi4gT20gbWVyIORuIGV0dCBcZkJzdHlyZmlsc2bkbHRcZlAgYW5nZXMga29tbWVyCitcZkJkcGtnXC1kZWJcZlAgdmlzYSB2YXJqZSBtZWQgZXR0IGlubGVkYW5kZSBm5Gx0bmFtbiAob2NoIGV0dCBrb2xvbiBvY2gKK21lbGxhbnJ1bSkuCisKK0luZ2EgZmVsbWVkZGVsYW5kZSByYXBwb3J0ZXJhcyBm9nIgZuRsdCBzb20gZWZ0ZXJmcuVnYXMgbWVuIGludGUgaGl0dGFzLgorLlRQIAorXGZCXC1jXGZQLCBcZkJcLVwtY29udGVudHNcZlAgXGZJYXJraXZcZlAKK1Zpc2FyIGlubmVo5WxsZXIgaSBmaWxzeXN0ZW1zdHLkZHNhcmtpdnNkZWxlbiBhdiBwYWtldGFya2l2ZXQuIERldCB2aXNhcyBm9nIKK27kcnZhcmFuZGUgaSBkZXQgZm9ybWF0IHNvbSBnZW5lcmVyYXMgYXYgXGZCdGFyXGZQcyBwcmF0c2FtbWEgdmlzbmluZy4KKy5UUCAKK1xmQlwteFxmUHxcZkJcLVwtZXh0cmFjdFxmUCBcZklhcmtpdmthdGFsb2dcZlAKK0V4dHJhaGVyYXIgZmlsc3lzdGVtc3Ry5GRldCBmcuVuIGV0dCBwYWtldGFya2l2IHRpbGwgZGVuIGFuZ2l2bmEga2F0YWxvZ2VuLgorCitPYnNlcnZlcmEgYXR0IGVuIGV4dHJhaGVyaW5nIGF2IGV0dCBwYWtldCB0aWxsIHJvdGthdGFsb2dlbiBcZklpbnRlXGZQCityZXN1bHRlcmFyIGkgZW4ga29ycmVrdCBpbnN0YWxsYXRpb24hIEFuduRuZCBcZkJkcGtnXGZQIGb2ciBhdHQgaW5zdGFsbGVyYQorcGFrZXQuCisKK1xmSWthdGFsb2dcZlAgKG1lbiBpbnRlIGRlc3MgZvZy5GxkcmFyKSBrb21tZXIgc2thcGFzIG9tIG72ZHbkbmRpZ3QsIG9jaCBkZXNzCitiZWj2cmlnaGV0IGtvbW1lciBhdHQg5G5kcmFzIHRpbGwgYXR0IG1vdHN2YXJhIGlubmVo5WxsZXQgaSBwYWtldGV0LgorLlRQIAorXGZCXC1DXGZQfFxmQlwtXC12ZXh0cmFjdFxmUCBcZklhcmtpdmthdGFsb2dcZlAKK8RyIHNvbSBcZkJcLVwtZXh0cmFjdFxmUCAoXGZCXC14XGZQKSBtZWQgXGZCXC1cLXZlcmJvc2VcZlAgKFxmQlwtdlxmUCkgc29tIHZpc2FyIGVuIGxpc3RhIPZ2ZXIKK2ZpbGVyIHNvbSBleHRyYWhlcmFzIHVuZGVyIHRpZGVuLgorLlRQIAorXGZCXC1SXGZQLCBcZkJcLVwtcmF3XC1leHRyYWN0XGZQIFxmSWFya2l2a2F0YWxvZ1xmUAorRXh0cmFoZXJhciBmaWxzeXN0ZW1zdHLkZGV0IGZy5W4gZXR0IHBha2V0YXJraXYgdGlsbCBkZW4gYW5naXZuYSBrYXRhbG9nZW4KK29jaCBrb250cm9sbGluZm9ybWF0aW9uc2ZpbGVybmEgdGlsbCB1bmRlcmthdGFsb2dlbiBERUJJQU4gaSBkZW4gYW5naXZuYQora2F0YWxvZ2VuLgorCitN5WxrYXRhbG9nZW4gKG1lbiBpbnRlIGRlc3MgZvZy5GxkcmFyKSBrb21tZXIgYXR0IHNrYXBhcyBvbSBu9mR25G5kaWd0LgorLlRQIAorXGZCXC1cLWZzeXNcLXRhcmZpbGVcZlAgXGZJYXJraXZcZlAKK0V4dHJhaGVyYXIgZmlsc3lzdGVtc3Ry5GRzZGF0YSBmcuVuIGV0dCBiaW7kcnQgcGFrZXQgb2NoIHPkbmRlciBkZXQgdGlsbAorc3RhbmRhcmQgdXQgaSBcZkJ0YXJcZlBcLWZvcm1hdC4gVGlsbHNhbW1hbnMgbWVkIFxmQnRhclxmUCgxKSBrYW4gZGV0IGFuduRuZGFzIGb2cgorYXR0IGjkbXRhIHV0IGVuIGVuc2tpbGQgZmlsIGZy5W4gZXR0IHBha2V0YXJraXYuIEluZGF0YWFya2l2ZW4gYmVoYW5kbGFzCithbGx0aWQgaSBkZW4gb3JkbmluZyBkZSBhbmdlcy4KKy5UUCAKK1xmQlwtZVxmUCwgXGZCXC1cLWNvbnRyb2xcZlAgXGZJYXJraXZcZlAgW1xmSWthdGFsb2dcZlBdCitFeHRyYWhlcmFyIHN0eXJpbmZvcm1hdGlvbnNmaWxlcm5hIGZy5W4gcGFrZXRhcmtpdmV0IHRpbGwgZGVuIGFuZ2l2bmEKK2thdGFsb2dlbi4KKworT20gaW5nZW4ga2F0YWxvZyBhbmdlcyBrb21tZXIgZW4gdW5kZXJrYXRhbG9nIHZpZCBuYW1uIFxmQkRFQklBTlxmUCBpIGRlbgorYWt0dWVsbGEga2F0YWxvZ2VuIGF0dCBhbnbkbmRhcy4KKworTeVsa2F0YWxvZ2VuIChtZW4gaW50ZSBkZXNzIGb2cuRsZHJhcikga29tbWVyIGF0dCBza2FwYXMgb20gbvZkduRuZGlndC4KKy5UUCAKK1xmQlwtaFxmUCwgXGZCXC1cLWhlbHBcZlAKK1Zpc2FyIGhq5Gxwc2vkcm0gb2NoIGF2c2x1dGFyLgorLlRQIAorXGZCXC1cLXZlcnNpb25cZlAKK1Zpc2FyIHZlcnNpb24gb2NoIGF2c2x1dGFyLgorLgorLlNIIEZMQUdHT1IKKy5UUCAKK1xmQlwtXC1zaG93Zm9ybWF0PVxmUFxmSWZvcm1hdFxmUAorRmxhZ2dhbiBhbnbkbmRzIGb2ciBhdHQgYW5nZSBmb3JtYXRldCBw5SB1dGRhdGEgc29tIHNrYXBhcyBhdgorXGZCXC1cLXNob3dcZlAuIEZvcm1hdGV0IORyIGVuIHN0cuRuZyBzb20gbWF0YXMgdXQgZvZyIHZhcmplIHBha2V0IGkgbGlzdGFuLgorCitTdHLkbmdlbiBrYW4gcmVmZXJlcmEgdGlsbCBzdGF0dXNm5Gx0IHDlIGZvcm1lbiAiJHtcZklmaWVsZFwtbmFtZVxmUH0iLCBlbgorZvZydGVja25pbmcg9nZlciBnaWx0aWdhIGbkbHQga2FuIGVua2VsdCBza2FwYXMgZ2Vub20gYXR0IGFuduRuZGEgXGZCXC1JXGZQIHDlCitzYW1tYSBwYWtldC4gRW4gZnVsbHN05G5kaWcgZvZya2xhcmluZyBhdiBmb3JtYXRlcmluZ3NmbGFnZ29ybmEgKGlua2x1c2l2ZQorZXJz5HR0bmluZ3NzZWt2ZW5zZXIgb2NoIGbkbHR0YWJ1bGVyaW5nKSBmaW5ucyBpIGb2cmtsYXJpbmdlbiBm9nIgZmxhZ2dhbgorXGZCXC1cLXNob3dmb3JtYXRcZlAgaSBcZkJkcGtnXC1xdWVyeVxmUCgxKS4KKworRvZydmFsZXQgZvZyIGbkbHRldCDkciAiJHtQYWNrYWdlfVxldCR7VmVyc2lvbn1cZW4iLgorLlRQIAorXGZCXC16XGZQXGZJa29tcHJpbWVyaW5nc25pduVcZlAKK0FuZ2Ugdmlsa2VuIGtvbXByaW1lcmluZ3NuaXblIHNvbSBza2FsbCBhbnbkbmRhcyBpIGtvbXByaW1lcmluZ3NmdW5rdGlvbmVuCitu5HIgZXR0IHBha2V0IGJ5Z2dzIChzdGFuZGFyZCDkciA5IGb2ciBnemlwIG9jaCBiemlwMiwgNiBm9nIgeHogb2NoIGx6bWEpLgorLlRQIAorXGZCXC1aXGZQXGZJa29tcHJpbWVyaW5nc3R5cFxmUAorQW5nZSB2aWxrZW4ga29tcHJpbWVyaW5nc3R5cCBzb20gc2thbGwgYW525G5kYXMgbuRyIGV0dCBwYWtldAorYnlnZ3MuIFRpbGzldG5hIHbkcmRlbiDkciBcZklnemlwXGZQLCBcZkl4elxmUCwgXGZJYnppcDJcZlAsIFxmSWx6bWFcZlAgb2NoIFxmSW5vbmVcZlAKKyhm9nJ2YWwg5HIgXGZJZ3ppcFxmUCkuCisuVFAgCitcZkJcLVwtbmV3XGZQCitG9nJz5GtyYXIgYXR0IFxmQmRwa2dcLWRlYlxmUCBieWdnZXIgZXR0IGFya2l2IGkgIm55dHQiIGZvcm1hdC4gIERldHRhIORyCitm9nJ2YWwuCisuVFAgCitcZkJcLVwtb2xkXGZQCitUdmluZ2FyIFxmQmRwa2dcLWRlYlxmUCBhdHQgYnlnZ2EgZXR0IGFya2l2IGkgImdhbW1hbHQiIGZvcm1hdC4gRGV0IGdhbWxhCithcmtpdmZvcm1hdGV0IORyIG1lciBzduVydG9sa2F0IGF2IGlja2VcLURlYmlhbnZlcmt0eWcgb2NoIORyIG51IHV0Z+VuZ2V0OworZGVzcyBlbmRhIGFuduRuZG5pbmdzb21y5WRlIORyIGb2ciBhdHQgYnlnZ2EgcGFrZXQgc29tIHNrYWxsIHRvbGthcyBhdgordmVyc2lvbmVyIGF2IGRwa2cg5GxkcmUg5G4gMC45My43NiAoc2VwdGVtYmVyIDE5OTUpLCB2aWxrYSBlbmRhc3Qgc2zkcHB0ZXMKK3NvbSBpMzg2XC1hLm91dC4KKy5UUCAKK1xmQlwtXC1ub2NoZWNrXGZQCitG9nJoaW5kcmFyIFxmQmRwa2dcLWRlYiBcLVwtYnVpbGQgc1xmUCBub3JtYWxhIHRlc3RlciBw5SBkZXQgZvZyZXNsYWduYSBpbm5laOVsbGV0CitpIGFya2l2ZXQuIER1IGthbiBieWdnYSB2aWxrZXQgYXJraXYgZHUg5G4gdmlsbCwgb2F2c2V0dCBodXIgdHJhc2lndCwgcOUgZGV0Cito5HIgc+R0dC4KKy5UUCAKK1xmQlwtdlxmUCwgXGZCXC1cLXZlcmJvc2VcZlAKK0FrdGl2ZXJhciBwcmF0c2FtIHV0ZGF0YS4gUOV2ZXJrYXIgZvZyIG7kcnZhcmFuZGUgYmFyYSBcZkJcLVwtZXh0cmFjdFxmUCwgdmlsa2V0Citm5XIgZGV0IGF0dCBiZXRlIHNpZyBzb20gXGZCXC1cLXZleHRyYWN0XGZQLgorLlRQIAorXGZCXC1EXGZQLCBcZkJcLVwtZGVidWdcZlAKK0FrdGl2ZXJhciBmZWxz9mtuaW5nc3V0ZGF0YS4gRGVubmEg5HIgaW50ZSBzcGVjaWVsbHQgaW50cmVzc2FudC4KKy4KKy5TSCBNSUxK1lZBUklBQkxFUgorLlRQIAorXGZCVE1QRElSXGZQCitPbSBzYXR0IHPlIGtvbW1lciBcZkJkcGtnXC1kZWJcZlAgYXR0IGFuduRuZGEgZGV0IHNvbSBrYXRhbG9nZW4gZORyIHRlbXBvcuRyYQorZmlsZXIgb2NoIGthdGFsb2dlciBza2FwYXMuCisuCisuU0ggUFJPR1JBTUZFTAorXGZCZHBrZ1wtZGViIFwtSVxmUCBcZklwYWtldDFcZlBcZkIuZGViXGZQIFxmSXBha2V0MlxmUFxmQi5kZWJcZlAgZ/ZyIGZlbC4KKworRGV0IGZpbm5zIGludGUgbuVnb24gYXV0ZW50aXNlcmluZyBhdiBcZkIuZGViXGZQXC1maWxlci4gRmFrdGlza3QgZmlubnMgZGV0IGludGUKK2VucyBu5WdvbiBlbmtlbCBrb250cm9sbHN1bW1hLiAoVmVya3R5ZyBzb20gYXJiZXRhciBw5SBlbiBo9mdyZSBuaXblLCBzb20KK0FQVCwgc3T2ZGVyIGF1dGVudGlzZXJpbmcgYXYgXGZCLmRlYlxmUFwtcGFrZXQgc29tIGjkbXRhcyBmcuVuIGV0dCBnaXZldCBhcmtpdiwKK29jaCBkZSBmbGVzdGEgcGFrZXQgaGFyIG51IGb2ciB0aWRlbiBlbiBtZDVzdW1cLWtvbnRyb2xsZmlsIHNvbSBza2FwYXMgYXYKK2RlYmlhbi9ydWxlcy4gRmlsZW4gc3T2ZHMgZG9jayBpbnRlIGRpcmVrdCBhdiBs5WduaXbldmVya3R5Z2VuLikKKworRvZyc/ZrIGludGUgYW525G5kYSBiYXJhIFxmQmRwa2dcLWRlYlxmUCBm9nIgYXR0IGluc3RhbGxlcmEgcHJvZ3JhbXZhcmEhIER1Citt5XN0ZSBhbnbkbmRhIG5vcm1hbGEgXGZCZHBrZ1xmUCBm9nIgYXR0IHNlIHRpbGwgYXR0IGFsbGEgZmlsZXIgbORnZ3MgcOUKK2tvcnJla3QgcGxhdHMgb2NoIGF0dCBwYWtldGV0cyBza3JpcHQga/ZycyBvY2ggZGVzcyBzdGF0dXMgb2NoIGlubmVo5WxsCitzcGFyYXMuCisuCisuU0ggIlNFIMRWRU4iCitcZkJkZWJcZlAoNSksIFxmQmRlYlwtY29udHJvbFxmUCg1KSwgXGZCZHBrZ1xmUCgxKSwgXGZCZHNlbGVjdFxmUCgxKS4KKy4KKy5TSCBG1lJGQVRUQVJFCitVcHBob3ZzcuR0dHNza3lkZGF0IKkgMTk5NVwtMTk5NiBJYW4gSmFja3NvbgorLnNwCitEZXR0YSDkciBmcmkgcHJvZ3JhbXZhcmE7IHNlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBlbGxlcgorc2VuYXJlIGb2ciBrb3BpZXJpbmdzdmlsbGtvci4gRGV0IGZpbm5zIElOR0VOIEdBUkFOVEkuCisuU0ggItZWRVJTxFRUTklORyIKK1BldGVyIEtyZWZ0aW5nIG9jaCBEYW5pZWwgTnlsYW5kZXIuCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9zdi9kcGtnLWRpc3RhZGRmaWxlLjEgYi9kcGtnLTEuMTYuMS4xL21hbi9zdi9kcGtnLWRpc3RhZGRmaWxlLjEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNmRjMjA2MgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL3N2L2Rwa2ctZGlzdGFkZGZpbGUuMQpAQCAtMCwwICsxLDUxIEBACisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkcGtnXC1kaXN0YWRkZmlsZSAxIDIwMTFcLTA3XC0wNCBEZWJpYW5wcm9qZWt0ZXQgZHBrZ1wtdmVya3R5Z2VuCisuU0ggTkFNTgorZHBrZ1wtZGlzdGFkZGZpbGUgXC0gbORnZyB0aWxsIHBvc3RlciBpIGRlYmlhbi9maWxlcworLgorLlNIIFNZTk9QUworXGZCZHBrZ1wtZGlzdGFkZGZpbGVcZlAgW1xmSWZsYWdnYVxmUC4uLl1cZkkgZmlsbmFtbiBzZWt0aW9uIHByaW9yaXRldFxmUAorLgorLlNIIEJFU0tSSVZOSU5HCitcZkJkcGtnXC1kaXN0YWRkZmlsZVxmUCBs5GdnZXIgdGlsbCBlbiBwb3N0IGb2ciBlbiBuYW1uZ2l2ZW4gZmlsIGkKK1xmQmRlYmlhbi9maWxlc1xmUC4KKworRGV0IHRhciB0cmUgYXJndW1lbnQgc29tIGludGUg5HIgZmxhZ2dvciBcLSBmaWxuYW1uLCBzZWt0aW9uIG9jaCBwcmlvcml0ZXQKK2b2ciBcZkIuY2hhbmdlc1xmUFwtZmlsZW4uCisKK0ZpbG5hbW5ldCBhbmdlcyByZWxhdGl2dCB0aWxsIGthdGFsb2dlbiBk5HIgXGZCZHBrZ1wtZ2VuY2hhbmdlc1xmUCBm9nJ25G50YXMKK2Zpbm5hIGZpbGVybmEsIG5vcm1hbHQgXGZCLi5cZlAsIHNuYXJhcmUg5G4gc29tIGVuIHP2a3bkZyByZWxhdGl2IHRpbGwgZGVuCitha3R1ZWxsYSBrYXRhbG9nZW4gbuRyIFxmQmRwa2dcLWRpc3RhZGRmaWxlXGZQIGv2cnMuCisuCisuU0ggRkxBR0dPUgorLlRQIAorXGZCXC1mXGZQXGZJZmlsbGlzZmlsZVxmUAorTORzIGVsbGVyIHNrcml2IGxpc3RhbiD2dmVyIGZpbGVyIHNvbSBza2FsbCBz5G5kYXMgaW4gaORyLCBpc3TkbGxldCBm9nIgYXR0CithbnbkbmRhIFxmQmRlYmlhbi9maWxlXGZQLgorLlRQIAorXGZCXC1oXGZQLCBcZkJcLVwtaGVscFxmUAorVmlzYXIgaGrkbHBza+RybSBvY2ggYXZzbHV0YXIuCisuVFAgCitcZkJcLVwtdmVyc2lvblxmUAorVmlzYXIgdmVyc2lvbiBvY2ggYXZzbHV0YXIuCisuCisuU0ggRklMRVIKKy5UUCAKK1xmQmRlYmlhbi9maWxlc1xmUAorTGlzdGFuIPZ2ZXIgZ2VuZXJlcmFkZSBmaWxlciBzbyBpbmflciBpIGluc+RuZG5pbmdlbiBzb20KK2b2cmJlcmVkcy4gXGZCZHBrZ1wtZGlzdGFkZGZpbGVcZlAga2FuIGFuduRuZGFzIGb2ciBhdHQgbORnZ2EgdGlsbCB5dHRlcmxpZ2FyZQorZmlsZXIuCisuCisuU0ggRtZSRkFUVEFSRQorVXBwaG92c3LkdHRzc2t5ZGRhdCCpIDE5OTVcLTE5OTYgSWFuIEphY2tzb24KKy5icgorVXBwaG92c3LkdHRzc2t5ZGRhdCCpIDIwMDAgV2ljaGVydCBBa2tlcm1hbgorLnNwCitEZXR0YSDkciBmcmkgcHJvZ3JhbXZhcmE7IHNlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBlbGxlcgorc2VuYXJlIGb2ciBrb3BpZXJpbmdzdmlsbGtvci4gRGV0IGZpbm5zIElOR0VOIEdBUkFOVEkuCisuU0ggItZWRVJTxFRUTklORyIKK1BldGVyIEtyZWZ0aW5nIG9jaCBEYW5pZWwgTnlsYW5kZXIuCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9zdi9kcGtnLWRpdmVydC44IGIvZHBrZy0xLjE2LjEuMS9tYW4vc3YvZHBrZy1kaXZlcnQuOApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iODc5ZWI0Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vc3YvZHBrZy1kaXZlcnQuOApAQCAtMCwwICsxLDE0NiBAQAorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlwiCisuXCIgVGhpcyBmaWxlIHdhcyBnZW5lcmF0ZWQgd2l0aCBwbzRhLiBUcmFuc2xhdGUgdGhlIHNvdXJjZSBmaWxlLgorLlwiCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuVEggZHBrZ1wtZGl2ZXJ0IDggMjAxMVwtMDhcLTE0IERlYmlhbnByb2pla3RldCBkcGtnXC12ZXJrdHlnZW4KKy5TSCBOQU1OCitkcGtnXC1kaXZlcnQgXC0g9nZlcnN0eXIgZXR0IHBha2V0cyB2ZXJzaW9uIGF2IGVuIGZpbAorLgorLlNIIFNZTk9QUworXGZCZHBrZ1wtZGl2ZXJ0XGZQIFtcZklmbGFnZ2FcZlAuLi5dIFxmSeV0Z+RyZFxmUAorLgorLlNIIEJFU0tSSVZOSU5HCitcZkJkcGtnXC1kaXZlcnRcZlAg5HIgdmVya3R5Z2V0IHNvbSBhbnbkbmRzIGb2ciBhdHQgc3TkbGxhIGluIG9jaCB1cHBkYXRlcmEKK2xpc3RhbiD2dmVyIG9tZGlyaWdlcmluZ2FyLgorLlBQCitGaWxlbiBcZklkaXZlcnNpb25zXGZQIORyIGV0dCBz5HR0IGF0dCB0dmluZ2EgXGZCZHBrZ1xmUCgxKSBhdHQgaW50ZSBpbnN0YWxsZXJhIGVuCitmaWwgcOUgc2luIHBsYXRzLCB1dGFuIHDlIGVuIFxmSW9tZGlyaWdlcmFkXGZQIHBsYXRzLiBPbWRpcmlnZXJpbmdhciBrYW4KK2FuduRuZGFzIGkgc2tyaXB0IGkgRGViaWFucGFrZXQgZvZyIGF0dCBmbHl0dGEgYm9ydCBlbiBmaWwgbuRyIGRlbiBvcnNha2FyCitlbiBrb25mbGlrdC4gU3lzdGVtYWRtaW5pc3RyYXT2cmVyIGthbiBvY2tz5SBhbnbkbmRhIGRldCBm9nIgYXR0IPZ2ZXJzdHlyYQorbuVncmEgcGFrZXRzIGtvbmZpZ3VyYXRpb25zZmlsZXIsIGVsbGVyIG7kciBu5WdyYSBmaWxlciAoc29tIGludGUgbWFya2VyYXRzCitzb20ga29uZmlndXJhdGlvbnNmaWxlcikgbeVzdGUgYmliZWjlbGxhcyBhdiBkcGtnIG7kciBlbiBueWFyZSB2ZXJzaW9uIGF2CitldHQgcGFrZXQgc29tIGlubmVo5WxsZXIgZGUgZmlsZXJuYSBpbnN0YWxsZXJhcy4KKy5zcAorLlNIIEtPTU1BTkRPTgorLlRQIAorW1xmQlwtXC1hZGRcZlBdIFxmSWZpbFxmUAorTORnZyB0aWxsIGVuIG9tZGlyaWdlcmluZyBm9nIgXGZJZmlsXGZQLgorLlRQIAorXGZCXC1cLXJlbW92ZVxmUFxmSSBmaWxcZlAKK1RhIGJvcnQgZW4gb21kaXJpZ2VyaW5nIGb2ciBcZklmaWxcZlAuCisuVFAgCitcZkJcLVwtbGlzdFxmUFxmSSBmaWxuYW1uc232bnN0ZXJcZlAKK1Zpc2Egb21kaXJpZ2VyaW5nYXIgc29tIG1hdGNoYXIgXGZJc/ZrbfZuc3RlclxmUC4KKy5UUCAKK1xmQlwtXC1saXN0cGFja2FnZVxmUFxmSSBmaWxcZlAKK1Zpc2EgbmFtbmV0IHDlIHBha2V0ZXQgc29tIG9tZGlyaWdlcmFyIFxmSWZpbFxmUC4gU3ZhcmFyIExPQ0FMIG9tIFxmSWZpbFxmUCBoYXIKK29tZGlyaWdlcmF0cyBsb2thbHQgb2NoIGluZ2VudGluZyBvbSBcZklmaWxcZlAgaW50ZSDkciBvbWRpcmlnZXJhZC4KKy5UUCAKK1xmQlwtXC10cnVlbmFtZVxmUFxmSSBmaWxcZlAKK1Zpc2EgZGV0IHJpa3RpZ2EgbmFtbmV0IHDlIGVuIG9tZGlyaWdlcmFkIGZpbC4KKy4KKy5TSCBGTEFHR09SCisuVFAgCitcZkJcLVwtYWRtaW5kaXJcZlBcZkkga2F0YWxvZ1xmUAorU3TkbGwgZHBrZzpzIGRhdGFrYXRhbG9nIHRpbGwgXGZJa2F0YWxvZ1xmUCAoc3RhbmRhcmQ6IFxmSS92YXIvbGliL2Rwa2dcZlApLgorLlRQIAorXGZCXC1cLWRpdmVydFxmUFxmSSBvbWRpcmlnZXJhXC10aWxsXGZQCitcZklvbWRpcmlnZXJhXC10aWxsXGZQIORyIHBsYXRzZW4gZORyIGRlIHZlcnNpb25lciBhdiBcZklmaWxcZlAgc29tIHRpbGxoYW5kYWjlbGxzCithdiBhbmRyYSBwYWtldCBrb21tZXIgb21kaXJpZ2VyYXMgdGlsbC4KKy5UUCAKK1xmQlwtXC1sb2NhbFxmUAorQW5nZXIgYXR0IGFsbGEgcGFrZXRzIHZlcnNpb25lciBhdiBkZW5uYSBmaWwgc2thbGwgb21kaXJpZ2VyYXMuIERldCBpbm5lYuRyCithdHQgZGV0IGludGUgZmlubnMgbuVncmEgdW5kYW50YWcsIG9jaCBhdHQgb2F2c2V0dCB2aWxrZXQgcGFrZXQgc29tCitpbnN0YWxsZXJhcyBz5SBvbWRpcmlnZXJhcyBmaWxlbi4gRGV0dGEga2FuIGFuduRuZGFzIGF2IGVuIGFkbWluaXN0cmF09nIgZvZyCithdHQgaW5zdGFsbGVyYSBlbiBsb2thbHQgbW9kaWZpZXJhZCB2ZXJzaW9uLgorLlRQIAorXGZCXC1cLXBhY2thZ2VcZlBcZkkgcGFrZXRcZlAKK1xmSXBha2V0XGZQIORyIG5hbW5ldCBw5SBldHQgcGFrZXQgdmFycyBrb3BpYSBhdiBcZklmaWxcZlAgaW50ZSBrb21tZXIgYXR0CitvbWRpcmlnZXJhcywgZHZzLiBcZklmaWxcZlAga29tbWVyIG9tZGlyaWdlcmFzIGb2ciBhbGxhIHBha2V0IGb2cnV0b20gXGZJcGFrZXRcZlAuCisuVFAgCitcZkJcLVwtcXVpZXRcZlAKK1R5c3QgbORnZSwgZHZzLiBpbmdlbiBwcmF0c2FtIHV0ZGF0YS4KKy5UUCAKK1xmQlwtXC1yZW5hbWVcZlAKK0ZseXR0YSBmYWt0aXNrdCBmaWxlbiDldCBzaWRhbiAoZWxsZXIgdGlsbGJha2EpLiBcZkJkcGtnXC1kaXZlcnRcZlAga29tbWVyIGF0dAorYXZicnl0YSBr9nJuaW5nZW4gb20gZGVzdGluYXRpb25zZmlsZW4gcmVkYW4gZXhpc3RlcmFyLgorLlRQIAorXGZCXC1cLXRlc3RcZlAKK1Rlc3Rs5GdlLCBkdnMuIHV0ZvZyIGluZ2EgZmFrdGlza2Eg5G5kcmluZ2FyLCBiYXJhIHZpc2EgdmFkIHNvbSBza3VsbGUKK2jkbmRhLgorLlRQIAorXGZCXC1cLWhlbHBcZlAKK1Zpc2FyIGhq5Gxwc2vkcm0gb2NoIGF2c2x1dGFyLgorLlRQIAorXGZCXC1cLXZlcnNpb25cZlAKK1Zpc2FyIHZlcnNpb24gb2NoIGF2c2x1dGFyLgorLgorLlNIIEFOVEVDS05JTkdBUgorVmlkIHRpbGzkZ2cg5HIgc3RhbmRhcmQgXGZCXC1cLWxvY2FsXGZQIG9jaCBcZkJcLVwtZGl2ZXJ0XGZQCitcZklvcmlnaW5hbFxmUFxmQi5kaXN0cmliXGZQLiBWaWQgYm9ydHRhZ25pbmcgbeVzdGUgXGZCXC1cLXBhY2thZ2VcZlAgZWxsZXIgXGZCXC1cLWxvY2FsXGZQCitvY2ggXGZCXC1cLWRpdmVydFxmUCBtYXRjaGEgb20gZGUgYW5nZXMuCisKK0thdGFsb2dlciBrYW4gaW50ZSBvbWRpcmlnZXJhcyBtZWQgXGZCZHBrZ1wtZGl2ZXJ0XGZQLgorCitTZSB1cHAgbuRyIGR1IG9tZGlyaWdlcmFyIGRlbGFkZSBiaWJsaW90ZWsuIFxmQmxkY29uZmlnXGZQKDgpIHNrYXBhciBlbgorc3ltYm9saXNrIGzkbmsgYmFzZXJhZCBw5SBEVF9TT05BTUVcLWbkbHRldCBzb20g5HIgaW5ieWdndCBpCitiaWJsaW90ZWtldC4gRWZ0ZXJzb20gbGRjb25maWcgaW50ZSBm9mxqZXIgb21kaXJpZ2VyaW5nYXIgKGJhcmEgZHBrZyBn9nIKK2RldCkga2FuIGRlbiBzeW1ib2xpc2thIGzkbmtlbiBrb21tYSBhdHQgcGVrYSBw5SBkZXQgb21kaXJpZ2VyYWRlCitiaWJsaW90ZWtldCBvbSBldHQgb21kaXJpZ2VyYXQgYmlibGlvdGVrIGhhciBzYW1tYSBTT05BTU4gc29tIGRldCBlagorb21kaXJpZ2VyYWRlLgorLgorLlNIIEVYRU1QRUwKK0b2ciBhdHQgb21kaXJpZ2VyYSBhbGxhIGV4ZW1wbGFyIGF2IGVuIFxmSS91c3IvYmluL2V4ZW1wZWxcZlAgdGlsbAorXGZJL3Vzci9iaW4vZXhlbXBlbC5mb29cZlAsIGR2cy4gb21kaXJpZ2VyYSBzYW10bGlnYSBwYWtldCBzb20gdGlsbGhhbmRhaOVsbGVyCitcZkkvdXNyL2Jpbi9leGVtcGVsXGZQIHPlIGF0dCBkZSBpbnN0YWxsZXJhciBkZW4gc29tIFxmSS91c3IvYmluL2V4ZW1wZWwuZm9vXGZQLAorb2NoIHV0ZvZyIG5hbW5ieXRldCBvbSBkZXQgYmVo9nZzOgorLkhQCitkcGtnXC1kaXZlcnQgXC1cLWRpdmVydCAvdXNyL2Jpbi9leGVtcGVsLmZvbyBcLVwtcmVuYW1lIC91c3IvYmluL2V4ZW1wZWwKKy5QUAorRvZyIGF0dCB0YSBib3J0IG9tZGlyaWdlcmluZ2VuOgorLkhQCitkcGtnXC1kaXZlcnQgXC1cLXJlbmFtZSBcLVwtcmVtb3ZlIC91c3IvYmluL2V4ZW1wZWwKKworLlBQCitG9nIgYXR0IG9tZGlyaWdlcmEgc2FtdGxpZ2EgcGFrZXQgc29tIGb2cnP2a2VyIGluc3RhbGxlcmEKK1xmSS91c3IvYmluL2V4ZW1wZWxcZlAgdGlsbCBcZkkvdXNyL2Jpbi9leGVtcGVsLmZvb1xmUCwgZvZydXRvbSBpIGRldCBlZ25hIHBha2V0ZXQKK1xmSXdpYmJsZVxmUDoKKy5IUAorZHBrZ1wtZGl2ZXJ0IFwtXC1wYWNrYWdlIHdpYmJsZSBcLVwtZGl2ZXJ0IC91c3IvYmluL2V4ZW1wZWwuZm9vIFwtXC1yZW5hbWUKKy91c3IvYmluL2V4ZW1wZWwKKy5QUAorRvZyIGF0dCB0YSBib3J0IG9tZGlyaWdlcmluZ2VuOgorLkhQCitkcGtnXC1kaXZlcnQgXC1cLXBhY2thZ2Ugd2liYmxlIFwtXC1yZW5hbWUgXC1cLXJlbW92ZSAvdXNyL2Jpbi9leGVtcGVsCisuCisuU0ggTUlMStZWQVJJQUJMRVIKKy5UUCAKK1xmQkRQS0dfQURNSU5ESVJcZlAKK09tIHNhdHQsIG9jaCBmbGFnZ2FuIFxmQlwtXC1hZG1pbmRpclxmUCBpbnRlIGhhciBhbmdpdml0cywgYW525G5kcyB25HJkZXQgc29tCitkYXRha2F0YWxvZyBm9nIgZHBrZy4KKy5UUCAKK1xmQkRQS0dfTUFJTlRTQ1JJUFRfUEFDS0FHRVxmUAorT20gc2F0dCwgb2NoIGZsYWdnb3JuYSBcZkJcLVwtbG9jYWxcZlAgb2NoIFxmQlwtXC1wYWNrYWdlXGZQIGludGUgaGFyIGFuZ2l2aXRzLCBrb21tZXIKK1xmQmRwa2dcLWRpdmVydFxmUCBhbnbkbmRhIGRldCBzb20gcGFrZXRuYW1uLgorLgorLlNIIEZJTEVSCisuVFAgCitcZkkvdmFyL2xpYi9kcGtnL2RpdmVyc2lvbnNcZlAKK0ZpbGVuIHNvbSBpbm5laOVsbGVyIGRlbiBha3R1ZWxsYSBsaXN0YW4gbWVkIHN5c3RlbWV0cyBvbWRpcmlnZXJpbmdhci4gRGVuCivkciBwbGFjZXJhZCBpIGRwa2c6cyBhZG1pbmlzdHJhdGl2YSBrYXRhbG9nLCB0aWxsc2FtbWFucyBtZWQgYW5kcmEgZmlsZXIgc29tCivkciB2aWt0aWdhIGb2ciBkcGtnLCB0aWxsIGV4ZW1wZWwgXGZJc3RhdHVzXGZQIG9jaCBcZklhdmFpbGFibGVcZlAuCisuYnIKK09ic2VydmVyYTogXGZCZHBrZ1wtZGl2ZXJ0XGZQIGJlaOVsbGVyIGRlbiBnYW1sYSB2ZXJzaW9uZW4gYXYgZmlsZW4sIG1lZAorZmlsdGlsbORnZ2V0IFxmSW9sZFxmUCwgaW5uYW4gZGVuIGVyc+R0dGVyIGRlbiBtZWQgZGVuIG55YS4KKy4KKy5TSCAiU0UgxFZFTiIKK1xmQmRwa2dcZlAoMSkuCisuCisuU0ggRtZSRkFUVEFSRQorVXBwaG92c3LkdHRzc2t5ZGRhdCCpIDE5OTUgSWFuIEphY2tzb24uCisuc3AKK0RldHRhIORyIGZyaSBwcm9ncmFtdmFyYTsgc2UgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAyIGVsbGVyCitzZW5hcmUgZvZyIGtvcGllcmluZ3N2aWxsa29yLiBEZXQgZmlubnMgSU5HRU4gR0FSQU5USS4KKy5TSCAi1lZFUlPEVFROSU5HIgorUGV0ZXIgS3JlZnRpbmcgb2NoIERhbmllbCBOeWxhbmRlci4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL3N2L2Rwa2ctZ2VuY2hhbmdlcy4xIGIvZHBrZy0xLjE2LjEuMS9tYW4vc3YvZHBrZy1nZW5jaGFuZ2VzLjEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNmI1ZTk0YQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL3N2L2Rwa2ctZ2VuY2hhbmdlcy4xCkBAIC0wLDAgKzEsMTI5IEBACisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkcGtnXC1nZW5jaGFuZ2VzIDEgMjAxMVwtMDhcLTE0IERlYmlhbnByb2pla3RldCBkcGtnXC12ZXJrdHlnZW4KKy5TSCBOQU1OCitkcGtnXC1nZW5jaGFuZ2VzIFwtIHNrYXBhIC5jaGFuZ2VzXC1maWxlciBm9nIgRGViaWFuCisuCisuU0ggU1lOT1BTCitcZkJkcGtnXC1nZW5jaGFuZ2VzXGZQIFtcZklmbGFnZ2FcZlAuLi5dCisuYnIKKy4KKy5TSCBCRVNLUklWTklORworXGZCZHBrZ1wtZ2VuY2hhbmdlc1xmUCBs5HNlciBpbmZvcm1hdGlvbiBmcuVuIGV0dCB1cHBhY2thdCBvY2ggYnlnZ3QKK0RlYmlhbmvkbGxrb2RzdHLkZCBvY2ggZnLlbiBkZSBmaWxlciBkZXQgaGFyIGdlbmVyZXJhdCwgb2NoIGdlbmVyZXJhciBlbgorc3R5cmZpbCBm9nIgaW5z5G5kbmluZyB0aWxsIERlYmlhbiAoXGZCLmNoYW5nZXNcZlBcLWZpbCkuCisuCisuU0ggRkxBR0dPUgorLlRQIAorXGZCXC1iXGZQLCBcZkJcLUJcZlAsIFxmQlwtQVxmUAorRGV0dGEg5HIgZXR0IHJlbnQgYmlu5HJieWdnZSAoaW5nYSBr5Gxsa29kc2ZpbGVyIHNrYWxsIGlua2x1ZGVyYXMpLiBEZXQg5HIKK2luZ2VuIHNraWxsbmFkIG1lbGxhbiBcZkJcLWJcZlAsIFxmQlwtQlxmUCBvY2ggXGZCXC1BXGZQLCBkZW4gXGZCLmNoYW5nZXNcZlBcLWZpbCBzb20gc2thcGFzCitpbm5laOVsbGVyIGFsbGEgZmlsZXIgc29tIHNrYXBhdHMgYXYgXGZCYmluYXJ5XC0qXGZQXC1t5WxlbiBpIGRldCBieWdnZGEgcGFrZXRldC4KKy5UUCAKK1xmQlwtU1xmUAorQW5nZXIgYXR0IGVuZGFzdCBr5Gxsa29kZW4gc2thbGwgc+RuZGFzIGluIChpbmdhIGJpbuRycGFrZXQgdGFzIG1lZCkuCisuUFAKK0ZsYWdnb3JuYSBcZkJcLXNcZlBcZkl4XGZQIHN0eXIgaHVydXZpZGEgZGV0IHVyc3BydW5nbGlnYSBr5Gxsa29kc2Fya2l2ZXQgc2thbGwKK2lua2x1ZGVyYXMgaSBpbnPkbmRuaW5nZW4gb20ga+RsbGtvZCBnZW5lcmVyYXMgKGR2cy4gXGZCXC1iXGZQIGVsbGVyIFxmQlwtQlxmUCBpbnRlCitoYXIgYW525G50cykuCisuVFAgCitcZkJcLXNpXGZQCitTb20gc3RhbmRhcmQsIGVsbGVyIG9tIGRlbiBhbmdlcywga29tbWVyIG9yaWdpbmFsa+RsbGtvZGVuIGVuZGFzdCBhdHQKK2lua2x1ZGVyYXMgb20gdXBwc3Ry9m1zdmVyc2lvbnNudW1yZXQgKHZlcnNpb25zbnVtcmV0IHV0YW4gZXBvayBvY2ggdXRhbgorRGViaWFudXBwZGF0ZXJpbmdzbnVtbWVyKSBza2lsamVyIHNpZyBmcuVuIHVwcHN0cvZtc3ZlcnNpb25zbnVtcmV0IGkKK2b2cmVn5WVuZGUg5G5kcmluZ3Nsb2dnc3Bvc3QuCisuVFAgCitcZkJcLXNhXGZQCitCaWZvZ2FyIGFsbHRpZCBvcmlnaW5hbGvkbGxrb2Rlbi4KKy5UUCAKK1xmQlwtc2RcZlAKK0JpZm9nYXIgaW50ZSBvcmlnaW5hbGvkbGxrb2RlbiwgdXRhbiBlbmJhcnQgZGlmZmVyZW5zZmlsZW4uCisuZmkKKy5UUCAKK1xmQlwtdlxmUFxmSXZlcnNpb25cZlAKK0FuduRuZGVyIGluZm9ybWF0aW9uIGZy5W4g5G5kcmluZ3Nsb2dnZW4gZvZyIGFsbGEgdmVyc2lvbmVyIHNvbSDkciBzdHJpa3QKK3NlbmFyZSDkbiBcZkl2ZXJzaW9uXGZQLgorLlRQIAorXGZCXC1DXGZQXGZJ5G5kcmluZ3NiZXNrcml2bmluZ1xmUAorTORzIGJlc2tyaXZuaW5nZW4gYXYg5G5kcmluZ2FybmEgZnLlbiBmaWxlbiBcZknkbmRyaW5nc2Jlc2tyaXZuaW5nXGZQIGlzdORsbGV0Citm9nIgYXR0IGFuduRuZGEgaW5mb3JtYXRpb24gZnLlbiBr5Gxsa29kc3Ry5GRldHMgY2hhbmdlbG9nXC1maWwuCisuVFAgCitcZkJcLW1cZlBcZklwYWtldGFuc3ZhcmlnZVwtYWRyZXNzXGZQCitBbnbkbmQgXGZJcGFrZXRhbnN2YXJpZ2VcLWFkcmVzc1xmUCBzb20gbmFtbiBvY2ggZVwtcG9zdGFkcmVzcyB0aWxsIGFuc3ZhcmlnIGb2cgorZGV0dGEgcGFrZXQsIGlzdORsbGV0IGb2ciBhdHQgYW525G5kYSBpbmZvcm1hdGlvbmVuIGZy5W4ga+RsbGtvZHN0cuRkZXRzCitjb250cm9sXC1maWwuCisuVFAgCitcZkJcLWVcZlBcZklwYWtldGFuc3ZhcmlnZVwtYWRyZXNzXGZQCitBbnbkbmQgXGZJcGFrZXRhbnN2YXJpZ2VcLWFkcmVzc1xmUCBzb20gbmFtbiBvY2ggZVwtcG9zdGFkcmVzcyB0aWxsIGFuc3ZhcmlnIGb2cgorZGVubmEgaW5z5G5kbmluZywgaXN05GxsZXQgZvZyIGF0dCBhbnbkbmRhIGluZm9ybWF0aW9uZW4gZnLlbgora+RsbGtvZHN0cuRkZXRzIGNoYW5nZWxvZ1wtZmlsLgorLlRQIAorXGZCXC1WXGZQXGZJbmFtblxmUFxmQj1cZlBcZkl25HJkZVxmUAorU3TkbGxlciBpbiBlbiB1dGRhdGFzdWJzdGl0dWVyaW5nc3ZhcmlhYmVsLiBTZSBcZkJkZWJcLXN1YnN0dmFyc1xmUCg1KSBm9nIgZW4KK2Jlc2tyaXZuaW5nIGF2IHV0ZGF0YXN1YnN0aXR1ZXJpbmcuCisuVFAgCitcZkJcLVRcZlBcZklzdWJzdHZhcnNcLWZpbFxmUAorTORzIHN1YnN0aXR1dGlvbnN2YXJpYWJsZXIgZnLlbiBcZklzdWJzdHZhcnNcLWZpbFxmUDsgc3RhbmRhcmQg5HIKK1xmQmRlYmlhbi9zdWJzdHZhcnNcZlAuIEluZ2VuIHZhcmlhYmVsc3Vic3RpdHV0aW9uIHV0ZvZycyBw5SBu5WdvdCBhdiBm5Gx0ZW4gaQordXRkYXRhLCBtZW4gb20gZGVuIHNwZWNpZWxsYSB2YXJpYWJlbG4gXGZJRm9ybWF0XGZQIGFuZ2VzIGtvbW1lciBkZW4g9nZlcnN0eXJhCitm5Gx0ZXQgbWVkIHNhbW1hIG5hbW4uIEZsYWdnYW4ga2FuIGFuduRuZGFzIGZsZXJhIGflbmdlciBm9nIgYXR0IGzkc2EKK3N1YnN0aXR1dGlvbnN2YXJpYWJsZXIgZnLlbiBmbGVyYSBmaWxlci4KKworLlRQIAorXGZCXC1EXGZQXGZJZuRsdFxmUFxmQj1cZlBcZkl25HJkZVxmUAorRXJz5HR0IGVsbGVyIGzkZ2cgdGlsbCBldHQgZuRsdCBpIGRlbiBnZW5lcmVyYWRlIGNvbnRyb2xcLWZpbGVuLgorLlRQIAorXGZCXC1VXGZQXGZJZuRsdFxmUAorVGEgYm9ydCBldHQgZuRsdCB1ciBkZW4gZ2VuZXJlcmFkZSBjb250cm9sXC1maWxlbi4KKy5UUCAKK1xmQlwtY1xmUFxmSWNvbnRyb2xcLWZpbFxmUAorQW5nZXIgaHV2dWRr5Gxsa29kc2tvbnRyb2xsZmlsZW4gc29tIGluZm9ybWF0aW9uIHNrYWxsIGzkc2FzCitmcuVuLiBTdGFuZGFyZHbkcmRldCDkciBcZkJkZWJpYW4vY29udHJvbFxmUC4KKy5UUCAKK1xmQlwtbFxmUFxmSeRuZHJpbmdzbG9nZ2ZpbFxmUAorQW5nZXIg5G5kcmluZ3Nsb2dnZmlsZW4gc29tIGluZm9ybWF0aW9uIHNrYWxsIGzkc2FzIGZy5W4uIFN0YW5kYXJkduRyZGV0IORyCitcZkJkZWJpYW4vY2hhbmdlbG9nXGZQLgorLlRQIAorXGZCXC1mXGZQXGZJZmlsbGlzZmlsZVxmUAorTORzZXIgbGlzdGFuIPZ2ZXIgZmlsZXIgc29tIHNrYWxsIHPkbmRhcyBpbiBo5HJpZnLlbiwgaXN05GxsZXQgZvZyIGF0dAorYW525G5kYSBcZkJkZWJpYW4vZmlsZXNcZlAuCisuVFAgCitcZkJcLUZcZlBcZknkbmRyaW5nc2xvZ2dmb3JtYXRcZlAKK0FuZ2VyIGZvcm1hdCBw5SDkbmRyaW5nc2xvZ2dlbi4gU29tIHN0YW5kYXJkIGzkc2VzIGZvcm1hdGV0IGZy5W4gZW4gc3BlY2llbGwKK3JhZCBu5HJhIHNsdXRldCBhdiDkbmRyaW5nc2xvZ2dlbiwgZWxsZXIgc+UgYW525G5kcyBEZWJpYW5zIHN0YW5kYXJkZm9ybWF0CitvbSBpbmdlbiBpbmZvcm1hdGlvbiBoaXR0YXMuCisuVFAgCitcZkJcLXVcZlBcZklpbnPkbmRuaW5nc2thdGFsb2dcZlAKK1NlIGVmdGVyIGZpbGVyIHNvbSBza2FsbCBz5G5kYXMgaW4gaSBcZklpbnPkbmRuaW5nc2thdGFsb2dcZlAgaXN05GxsZXQgZvZyCitcJlxmQi4uXGZQIChcZkJkcGtnXC1nZW5jaGFuZ2VzXGZQIG3lc3RlIGt1bm5hIHNlIGRlc3NhIGZpbGVyIHPlIGF0dCBkZXQga2FuIGzkZ2dhIGluCitkZXJhcyBzdG9ybGVrYXIgb2NoIGtvbnRyb2xsc3VtbW9yIGkgXGZCLmNoYW5nZXNcZlBcLWZpbGVuKS4KKy5UUCAKK1xmQlwtcVxmUAorXGZCZHBrZ1wtZ2VuY2hhbmdlc1xmUCBrb21tZXIgbm9ybWFsdCBhdHQgZ2VuZXJlcmEgaW5mb3JtYXRpdmEgbWVkZGVsYW5kZW4gcOUKK3N0YW5kYXJkIGZlbCwgdGlsbCBleGVtcGVsIG9tIGh1ciBt5W5nYSBwYWtldHMga+RsbGtvZHNmaWxlciBz5G5kcyBpbi4gXGZCXC1xXGZQCit1bmRlcnRyeWNrZXIgZGVzc2EgbWVkZGVsYW5kZW4uCisuVFAgCitcZkJcLWhcZlAsIFxmQlwtXC1oZWxwXGZQCitWaXNhciBoauRscHNr5HJtIG9jaCBhdnNsdXRhci4KKy5UUCAKK1xmQlwtXC12ZXJzaW9uXGZQCitWaXNhciB2ZXJzaW9uIG9jaCBhdnNsdXRhci4KKy4KKy5TSCBGSUxFUgorLlRQIAorXGZCZGViaWFuL2ZpbGVzXGZQCitMaXN0YW4g9nZlciBnZW5lcmVyYWRlIGZpbGVyIHNvbSDkciBlbiBkZWwgYXYgZGVuIGluc+RuZG5pbmcgc29tCitm9nJiZXJlZHMuIFxmQmRwa2dcLWdlbmNoYW5nZXNcZlAgbORzZXIgZGF0YSBo5HIgbuRyIFxmQi5jaGFuZ2VzXGZQXC1maWxlbiBza2FwYXMuCisuCisuU0ggRtZSRkFUVEFSRQorVXBwaG92c3LkdHRzc2t5ZGRhdCCpIDE5OTVcLTE5OTYgSWFuIEphY2tzb24KKy5icgorVXBwaG92c3LkdHRzc2t5ZGRhdCCpIDIwMDAgV2ljaGVydCBBa2tlcm1hbgorLnNwCitEZXR0YSDkciBmcmkgcHJvZ3JhbXZhcmE7IHNlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBlbGxlcgorc2VuYXJlIGb2ciBrb3BpZXJpbmdzdmlsbGtvci4gRGV0IGZpbm5zIElOR0VOIEdBUkFOVEkuCisuU0ggItZWRVJTxFRUTklORyIKK1BldGVyIEtyZWZ0aW5nIG9jaCBEYW5pZWwgTnlsYW5kZXIuCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9zdi9kcGtnLWdlbmNvbnRyb2wuMSBiL2Rwa2ctMS4xNi4xLjEvbWFuL3N2L2Rwa2ctZ2VuY29udHJvbC4xCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjBkOWI0MDAKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9zdi9kcGtnLWdlbmNvbnRyb2wuMQpAQCAtMCwwICsxLDEyOSBAQAorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlwiCisuXCIgVGhpcyBmaWxlIHdhcyBnZW5lcmF0ZWQgd2l0aCBwbzRhLiBUcmFuc2xhdGUgdGhlIHNvdXJjZSBmaWxlLgorLlwiCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuVEggZHBrZ1wtZ2VuY29udHJvbCAxIDIwMTFcLTA4XC0xNCBEZWJpYW5wcm9qZWt0ZXQgZHBrZ1wtdmVya3R5Z2VuCisuU0ggTkFNTgorZHBrZ1wtZ2VuY29udHJvbCBcLSBza2FwYSBEZWJpYW5zIGtvbnRyb2xsZmlsZXIKKy4KKy5TSCBTWU5PUFMKK1xmQmRwa2dcLWdlbmNvbnRyb2xcZlAgW1xmSWZsYWdnYVxmUC4uLl0KKy4KKy5TSCBCRVNLUklWTklORworXGZCZHBrZ1wtZ2VuY29udHJvbFxmUCBs5HNlciBpbmZvcm1hdGlvbiBmcuVuIGV0dCB1cHBhY2thdCBEZWJpYW5r5Gxsa29kc3Ry5GQKK29jaCBnZW5lcmVyYXIgZW4gYmlu5HJwYWtldHNzdHlyZmlsIChzb20gc3RhbmRhcmQKK2RlYmlhbi90bXAvREVCSUFOL2NvbnRyb2wpLiBSZWxhdGlvbnNm5Gx0ZW4ga29tbWVyIGF0dCBm9nJlbmtsYXMuCisuc3AKK0bkbHRlbiBcZklQcmVcLURlcGVuZHNcZlAsIFxmSURlcGVuZHNcZlAsIFxmSVJlY29tbWVuZHNcZlAgb2NoIFxmSVN1Z2dlc3RzXGZQIGb2cmVua2xhcworZORybWVkLCBpIGRlbiBm9mxqZGVuLCBnZW5vbSBhdHQgdGEgYm9ydCBiZXJvZW5kZW4gc29tIHByb2dyYW1tZXQgdmV0Cit0aWxsaGFuZGFo5WxscyBhdiBzdGFya2FyZSBiZXJvZW5kZW4gc29tIHJlZGFuIHRvbGthdHMuIERldCBrb21tZXIg5HZlbiB0YQorYm9ydCBldmVudHVlbGxhIGVnZW5iZXJvZW5kZW4gKHByb2dyYW1tZXQgdGFyIGJvcnQgYWxsYSBiZXJvZW5kZW4gc29tIORyCit1cHBmeWxsZGEgbuRyIGRlbiBudXZhcmFuZGUgdmVyc2lvbmVuIGF2IHBha2V0ZXQg5HIgaW5zdGFsbGVyYXQpLiBMb2dpc2t0CitiZWjlbGxzIHNuaXR0ZXQgYXYgbXVsdGlwbGEgYmVyb2VuZGVuIHDlIHNhbW1hIHBha2V0LiBPcmRuaW5nc2b2bGpkZW4gbWVsbGFuCitiZXJvZW5kZW5hIGJlaOVsbHMgc+UgbOVuZ3Qgc29tIG32amxpZ3Q6IG9tIGV0dCBiZXJvZW5kZSBt5XN0ZSB0YXMgYm9ydCBw5QorZ3J1bmQgYXYgYXR0IGV0dCBiZXJvZW5kZSDldGVya29tbWVyIHNlbmFyZSBpIGbkbHRldCBrb21tZXIgZGV0IG55YQorYmVyb2VuZGV0IGF0dCB0YSBwbGF0c2VuIGZy5W4gZGV0IHNvbSBlcnNhdHRlcy4KKy5zcAor1nZyaWdhIHJlbGF0aW9uc2bkbHQgKFxmSUVuaGFuY2VzXGZQLCBcZklDb25mbGljdHNcZlAsIFxmSUJyZWFrc1xmUCwgXGZJUmVwbGFjZXNcZlAgb2NoCitcZklQcm92aWRlc1xmUCkgZvZyZW5rbGFzIOR2ZW4gaW5kaXZpZHVlbGx0IGdlbm9tIGF0dCBiZXLka25hIHVuaW9uZW4gYXYgZGUKK29saWthIGJlcm9lbmRlbmEgbuRyIGV0dCBwYWtldCBm9nJla29tbWVyIGZsZXJhIGflbmdlciBpIHNhbW1hIGbkbHQuCisuc3AKK1xmQmRwa2dcLWdlbmNvbnRyb2xcZlAgbORnZ2VyIGRlc3N1dG9tIHRpbGwgZW4gcG9zdCBm9nIgYmlu5HJwYWtldGV0IGkKK1xmQmRlYmlhbi9maWxlc1xmUC4KKy4KKy5TSCBGTEFHR09SCisuVFAgCitcZkJcLXZcZlBcZkl2ZXJzaW9uXGZQCitT5HR0ZXIgdmVyc2lvbnNudW1yZXQgcOUgYmlu5HJwYWtldGV0IHNvbSBza2FsbCBza2FwYXMuCisuVFAgCitcZkJcLVZcZlBcZkluYW1uXGZQXGZCPVxmUFxmSXbkcmRlXGZQCitTdORsbGVyIGluIGVuIHV0ZGF0YXN1YnN0aXR1ZXJpbmdzdmFyaWFiZWwuIFNlIFxmQmRlYlwtc3Vic3R2YXJzXGZQKDUpIGb2ciBlbgorYmVza3Jpdm5pbmcgYXYgdXRkYXRhc3Vic3RpdHVlcmluZy4KKy5UUCAKK1xmQlwtVFxmUFxmSXN1YnN0dmFyc1wtZmlsXGZQCitM5HMgc3Vic3RpdHV0aW9uc3ZhcmlhYmxlciBmcuVuIFxmSXN1YnN0dmFyc1wtZmlsXGZQOyBzdGFuZGFyZCDkcgorXGZCZGViaWFuL3N1YnN0dmFyc1xmUC4gSW5nZW4gdmFyaWFiZWxzdWJzdGl0dXRpb24gdXRm9nJzIHDlIG7lZ290IGF2IGbkbHRlbiBpCit1dGRhdGEsIG1lbiBvbSBkZW4gc3BlY2llbGxhIHZhcmlhYmVsbiBcZklGb3JtYXRcZlAgYW5nZXMga29tbWVyIGRlbiD2dmVyc3R5cmEKK2bkbHRldCBtZWQgc2FtbWEgbmFtbi4gRmxhZ2dhbiBrYW4gYW525G5kYXMgZmxlcmEgZ+VuZ2VyIGb2ciBhdHQgbORzYQorc3Vic3RpdHV0aW9uc3ZhcmlhYmxlciBmcuVuIGZsZXJhIGZpbGVyLgorLlRQIAorXGZCXC1EXGZQXGZJZuRsdFxmUFxmQj1cZlBcZkl25HJkZVxmUAorRXJz5HR0IGVsbGVyIGzkZ2cgdGlsbCBldHQgZuRsdCBpIGRlbiBnZW5lcmVyYWRlIGNvbnRyb2xcLWZpbGVuLgorLlRQIAorXGZCXC1VXGZQXGZJZuRsdFxmUAorVGEgYm9ydCBldHQgZuRsdCB1ciBkZW4gZ2VuZXJlcmFkZSBjb250cm9sXC1maWxlbi4KKy5UUCAKK1xmQlwtY1xmUFxmSWNvbnRyb2xcLWZpbFxmUAorQW5nZXIgaHV2dWRr5Gxsa29kc2tvbnRyb2xsZmlsZW4gc29tIGluZm9ybWF0aW9uIHNrYWxsIGzkc2FzCitmcuVuLiBTdGFuZGFyZHbkcmRldCDkciBcZkJkZWJpYW4vY29udHJvbFxmUC4KKy5UUCAKK1xmQlwtbFxmUFxmSeRuZHJpbmdzbG9nZ2ZpbFxmUAorQW5nZXIg5G5kcmluZ3Nsb2dnZmlsZW4gc29tIGluZm9ybWF0aW9uIHNrYWxsIGzkc2FzIGZy5W4uIFN0YW5kYXJkduRyZGV0IORyCitcZkJkZWJpYW4vY2hhbmdlbG9nXGZQLgorLlRQIAorXGZCXC1mXGZQXGZJZmlsbGlzZmlsZVxmUAorTORzIGVsbGVyIHNrcml2IGxpc3RhbiD2dmVyIGZpbGVyIHNvbSBza2FsbCBz5G5kYXMgaW4gaORyLCBpc3TkbGxldCBm9nIgYXR0CithbnbkbmRhIFxmQmRlYmlhbi9maWxlXGZQLgorLlRQIAorXGZCXC1GXGZQXGZJ5G5kcmluZ3Nsb2dnZm9ybWF0XGZQCitBbmdlciBmb3JtYXQgcOUg5G5kcmluZ3Nsb2dnZW4uIFNvbSBzdGFuZGFyZCBs5HNlcyBmb3JtYXRldCBmcuVuIGVuIHNwZWNpZWxsCityYWQgbuRyYSBzbHV0ZXQgYXYg5G5kcmluZ3Nsb2dnZW4sIGVsbGVyIHPlIGFuduRuZHMgRGViaWFucyBzdGFuZGFyZGZvcm1hdAorb20gaW5nZW4gaW5mb3JtYXRpb24gaGl0dGFzLgorLlRQIAorXGZCXC1wXGZQXGZJcGFrZXRcZlAKK1NrYXBhIGluZm9ybWF0aW9uIGb2ciBkZXQgYmlu5HJhIHBha2V0ZXQgXGZJcGFrZXRcZlAuIE9tIGvkbGxrb2RlbnMgY29udHJvbFwtZmlsCitiYXJhIGlubmVo5WxsZXIgZXR0IGJpbuRycGFrZXQgYmVo9nZlciBpbnRlIGZsYWdnYW4gYW5nZXMuIEkgYWxsYSBhbmRyYSBmYWxsCivkciBkZXQgbvZkduRuZGlndCBhdHQgduRsamEgdmlsa2V0IGJpbuRycGFrZXRzIGluZm9ybWF0aW9uIHNvbSBza2FsbCBza2FwYXMuCisuVFAgCitcZkJcLW5cZlBcZklmaWxuYW1uXGZQCitBbnRhIGF0dCBmaWxuYW1uZXQgZvZyIHBha2V0ZXQgc2thbGxhIHZhcmEgXGZJZmlsbmFtblxmUCBpc3TkbGxldCBm9nIgZGV0Citub3JtYWxhIHBha2V0X3ZlcnNpb25fYXJrLmRlYlwtZmlsbmFtbmV0LgorLlRQIAorXGZCXC1pc1xmUCwgXGZCXC1pcFxmUCwgXGZCXC1pc3BcZlAKK0Rlc3NhIGZsYWdnb3IgaWdub3JlcmFzIGb2ciBrb21wYXRpYmlsaXRldCBtZWQg5GxkcmUgdmVyc2lvbmVyIGF2IGRwa2dcLWRldgorbWVuIGF2cuVkcyBudW1lcmEgaWZy5W4uIERlIGFuduRuZGVzIHRpZGlnYXJlIGb2ciBhdHQgdGFsYSBvbSBm9nIKK2Rwa2dcLWdlbmNvbnRyb2wgYXR0IGlua2x1ZGVyYSBTZWN0aW9uXC0gb2NoIFByaW9yaXR5XC1m5Gx0ZW4gaQorY29udHJvbFwtZmlsZW4uIERldHRhIORyIG51bWVyYSBzdGFuZGFyZGJldGVlbmRldC4gT20gZHUgdmlsbCDldGVyc2thcGEgZGV0CitnYW1sYSBiZXRlZW5kZXQga2FuIGR1IGFuduRuZGEgZmxhZ2dhbiBcZkJcLVVcZlAgZvZyIGF0dCB0YSBib3J0IGbkbHRlbiBmcuVuCitjb250cm9sXC1maWxlbi4KKy5UUCAKK1xmQlwtUFxmUFxmSXBha2V0YnlnZ2thdGFsb2dcZlAKK1RhbGFyIG9tIGb2ciBcZkJkcGtnXC1zb3VyY2VcZlAgYXR0IHBha2V0ZXQgYnlnZ3MgaSBcZklwYWtldGJ5Z2drYXRhbG9nXGZQIGkKK3N05GxsZXQgZvZyIFxmQmRlYmlhbi90bXBcZlAuIFbkcmRldCBhbnbkbmRzIGb2ciBhdHQgYmVzdORtbWEgc3RhbmRhcmR25HJkZXQKK2b2ciBzdWJzdGl0dWVyaW5nc3ZhcmlhYmVsbiBvY2ggY29udHJvbFwtZmlsc2bkbHRldCBcZkJJbnN0YWxsZWRcLVNpemVcZlAgKG1lZAoraGrkbHAgYXYgXGZCZHVcZlApLCBzYW10IGb2ciBhdHQgduRsamEgc3RhbmRhcmRwbGFjZXJpbmcgYXYgdXRkYXRhZmlsZW4uCisuVFAgCitcZkJcLU9cZlAKK1Nrcml2IGNvbnRyb2xcLWZpbGVuIHDlIHN0YW5kYXJkIHV0LCBpIHN05GxsZXQgZvZyIHRpbGwKK1xmQmRlYmlhbi90bXAvREVCSUFOL2NvbnRyb2xcZlAgKGVsbGVyIFxmSXBha2V0YnlnZ2thdGFsb2dcZlBcZkIvREVCSUFOL2NvbnRyb2xcZlAgb20KK1xmQlwtUFxmUCBhbnbkbmRlcykuCisuVFAgCitcZkJcLWhcZlAsIFxmQlwtXC1oZWxwXGZQCitWaXNhciBoauRscHNr5HJtIG9jaCBhdnNsdXRhci4KKy5UUCAKK1xmQlwtXC12ZXJzaW9uXGZQCitWaXNhciB2ZXJzaW9uIG9jaCBhdnNsdXRhci4KKy4KKy5TSCBGSUxFUgorLlRQIAorXGZCZGViaWFuL2NvbnRyb2xcZlAKK0h1dnVka+RsbGtvZHNrb250cm9sbGluZm9ybWF0aW9uc2ZpbCwgdmlsa2VuIGlubmVo5WxsZXIgdmVyc2lvbnNvYmVyb2VuZGUKK2luZm9ybWF0aW9uIG9tIGvkbGxrb2RzcGFrZXRldCBvY2ggZGUgYmlu5HJwYWtldCBzb20ga2FuIHNrYXBhcyBmcuVuIGRldC4KKy5UUCAKK1xmQmRlYmlhbi9maWxlc1xmUAorTGlzdGFuIPZ2ZXIgZ2VuZXJlcmFkZSBmaWxlciBzb20gaW5n5XIgaSBpbnPkbmRuaW5nZW4gc29tCitza2FwYXMuIFxmQmRwa2dcLWdlbmNvbnRyb2xcZlAgbORnZ2VyIHRpbGwgZGUgZvZydXRzYXR0YSBmaWxuYW1uZW4gcOUKK2JpbuRycGFrZXRlbiB2YXJzIGNvbnRyb2xcLWZpbGVyIGRldCBnZW5lcmVyYXIgaORyLgorLgorLlNIIEbWUkZBVFRBUkUKK1VwcGhvdnNy5HR0c3NreWRkYXQgqSAxOTk1XC0xOTk2IElhbiBKYWNrc29uCisuYnIKK1VwcGhvdnNy5HR0c3NreWRkYXQgqSAyMDAwIFdpY2hlcnQgQWtrZXJtYW4KKy5icgorVXBwaG92c3LkdHRzc2t5ZGRhdCCpIDIwMDdcLTIwMDggUmFwaGHrbCBIZXJ0em9nCisuc3AKK0RldHRhIORyIGZyaSBwcm9ncmFtdmFyYTsgc2UgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAyIGVsbGVyCitzZW5hcmUgZvZyIGtvcGllcmluZ3N2aWxsa29yLiBEZXQgZmlubnMgSU5HRU4gR0FSQU5USS4KKy5TSCAi1lZFUlPEVFROSU5HIgorUGV0ZXIgS3JlZnRpbmcgb2NoIERhbmllbCBOeWxhbmRlci4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL3N2L2Rwa2ctZ2Vuc3ltYm9scy4xIGIvZHBrZy0xLjE2LjEuMS9tYW4vc3YvZHBrZy1nZW5zeW1ib2xzLjEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZGM0ODI4NAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL3N2L2Rwa2ctZ2Vuc3ltYm9scy4xCkBAIC0wLDAgKzEsNDcxIEBACisuXCIgQXV0aG9yOiBSYXBoYcOrbCBIZXJ0em9nCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkcGtnXC1nZW5zeW1ib2xzIDEgMjAxMVwtMDhcLTE0IERlYmlhbnByb2pla3RldCBkcGtnXC12ZXJrdHlnZW4KKy5TSCBOQU1OCitkcGtnXC1nZW5zeW1ib2xzIFwtIGdlbmVyZXJhIHN5bWJvbGZpbGVyIChpbmZvcm1hdGlvbiBvbSBkZWxhZGUgYmlibGlvdGVrKQorLgorLlNIIFNZTk9QUworXGZCZHBrZ1wtZ2Vuc3ltYm9sc1xmUCBbXGZJZmxhZ2dhXGZQLi4uXQorLgorLlNIIEJFU0tSSVZOSU5HCitcZkJkcGtnXC1nZW5zeW1ib2xzXGZQIHP2a2VyIGdlbm9tIGVuIHRlbXBvcuRydCBieWdndHLkZCAoc29tIHN0YW5kYXJkCitkZWJpYW4vdG1wKSBlZnRlciBiaWJsaW90ZWsgb2NoIHNrYXBhciBlbiBcZklzeW1ib2xzXGZQXC1maWwgc29tIGJlc2tyaXZlcgorZGVtLiBEZW5uYSBmaWwga29tbWVyIHNlZGFuLCBz5XZpZGEgZGVuIGludGUg5HIgdG9tLCBhdHQgaW5zdGFsbGVyYXMgaQorREVCSUFOXC11bmRlcmthdGFsb2dlbiBpIGJ5Z2d0cuRkZXQgc+UgYXR0IGRlbiBoYW1uYXIgaSBzdHlyaW5mb3JtYXRpb25lbiBpCitwYWtldGV0LgorLlAKK07kciBkZXNzYSBmaWxlciBza2FwYXMsIGFuduRuZHMgZXR0IHBhciBzeW1ib2xmaWxlciBmcuVuIHBha2V0YW5zdmFyaWdhIHNvbQoraW5kYXRhLiBQcm9ncmFtbWV0IHP2a2VyIGVmdGVyIGb2bGphbmRlIGZpbGVyIChvY2ggYW525G5kZXIgZGVuIGb2cnN0YSBkZXQKK2Zpbm5lcik6CisuSVAgXChidSA0CitkZWJpYW4vXGZJcGFrZXRcZlAuc3ltYm9scy5cZklhcmtpdGVrdHVyXGZQCisuSVAgXChidSA0CitkZWJpYW4vc3ltYm9scy5cZklhcmtpdGVrdHVyXGZQCisuSVAgXChidSA0CitkZWJpYW4vXGZJcGFrZXRcZlAuc3ltYm9scworLklQIFwoYnUgNAorZGViaWFuL3N5bWJvbHMKKy5QCitEZXNzYSBmaWxlciDkciBpIGh1dnVkc2FrIGludHJlc3NhbnRhIGb2ciBhdHQga3VubmEgdGlsbGhhbmRhaOVsbGEgZGVuCittaW5pbWFsYSB2ZXJzaW9uIGFzc29jaWVyYWQgbWVkIHZhcmplIHN5bWJvbCBpIGJpYmxpb3Rla2VuLiBEZXR0YSBtb3RzdmFyYXIKK25vcm1hbHQgZGVuIGb2cnN0YSB2ZXJzaW9uIGF2IHBha2V0ZXQgc29tIHRpbGxoYW5kYWj2bGwgc3ltYm9sZW4sIG1lbiBkZXQKK2thbiBtYW51ZWxsdCBpbmtyZW1lbnRlcmFzIGF2IGRlIGFuc3ZhcmlnYSBvbSBzeW1ib2xlbnMgQUJJIHV09mthcyBtZWQKK2JpYmVo5WxsZW4gYmFr5XRrb21wYXRpYmlsaXRldC4gRGV0IORyIGRlbiBhbnN2YXJpZ2FzIGFuc3ZhciBhdHQgaOVsbGEgZGVzc2EKK2ZpbGVyIOBqb3VyZvZyZGEgb2NoIGtvcnJla3RhLCBtZW4gXGZCZHBrZ1wtZ2Vuc3ltYm9sc1xmUCBrYW4gaGrkbHBhIHRpbGwuCisuUAorTuRyIGRlbiBnZW5lcmVyYWRlIHN5bWJvbGZpbGVuIHNraWxqZXIgc2lnIG1vdCBkZW4gdmVyc2lvbiBzb20KK3RpbGxoYW5kYWjlbGxpdHMgYXYgZGUgcGFrZXRhbnN2YXJpZ2Ega29tbWVyIFxmQmRwa2dcLWdlbnN5bWJvbHNcZlAgYXR0IHNrcml2YQordXQgZW4gZGlmZmVyZW5zIG1lbGxhbiBkZSB0duUgdmVyc2lvbmVybmEuIE9tIORuZHJpbmdhcm5hIORyIGb2ciBzdG9yYQora29tbWVyIHByb2dyYW1tZXQgZGVzc3V0b20gYXR0IG1pc3NseWNrYXMgKGR1IGthbiBqdXN0ZXJhIGh1ciBzdG9yYQor5G5kcmluZ2FyIGR1IGthbiB0b2xlcmVyYSwgc2UgZmxhZ2dhbiBcZkJcLWNcZlApLgorLlNIICJVTkRFUkjFTExBIFNZTUJPTEZJTEVSIgorU3ltYm9sZmlsZXJuYSDkciBiYXJhIHJpa3RpZ3Qgbnl0dGlnYSBvbSBkZSBtb3RzdmFyYXIgaHVyIHBha2V0ZXQgaGFyCit1dHZlY2tsYXRzIPZ2ZXIgZmxlcmEgdmVyc2lvbmVyLiBEZSBwYWtldGFuc3ZhcmlnYSBt5XN0ZSBk5HJm9nIgdXBwZGF0ZXJhCitkZW0gdmFyamUgZ+VuZyBlbiBueSBzeW1ib2wgbORnZ3MgdGlsbCBz5SBhdHQgZGVzcyBhc3NvY2llcmFkZSBtaW5pbWFsYQordmVyc2lvbiBtb3RzdmFyYXIgdmVya2xpZ2hldGVuLiBG9nIgYXR0IGf2cmEgZGV0dGEgcOUgZXR0IHJpa3RpZ3Qgc+R0dCBmaW5ucworZGV0IGRpZmZlcmVuc2ZpbGVyIGkgYnlnZ2xvZ2dhcm5hLiBJIGRlIGZsZXN0YSBmYWxsIGthbiBkaWZmZXJlbnNmaWxlbgorYXBwbGljZXJhcyBkaXJla3QgcOUgZmlsZW4gZGViaWFuL1xmSXBha2V0XGZQLiBNZWQgZGV0IGkg5XRhbmtlIHPlIGJlaPZ2cyBkZXQKK29mdGFzdCB5dHRlcmxpZ2FyZSBqdXN0ZXJpbmdhcjogZGV0IHJla29tbWVuZGVyYXMgYXR0IHNraXBwYQorRGViaWFucmV2aXNpb25lbiBmcuVuIGRldCBtaW5pbWFsYSB2ZXJzaW9uc251bW1lciBz5SBhdHQgZGVuCitiYWvldGFucGFzc25pbmdhciBtZWQgZXR0IGzkZ3JlIHZlcnNpb25zbnVtbWVyLCBtZW4gZnLlbiBzYW1tYQordXBwc3Ry9m1zdmVyc2lvbiwgZm9ydGZhcmFuZGUgdXBwZnlsbGVyIGRlIGdlbmVyZXJhZGUgYmVyb2VuZGVuYS4gT20KK0RlYmlhbnJldmlzaW9uZW4gaW50ZSBrYW4gdGFzIGJvcnQgcOUgZ3J1bmQgYXYgYXR0IGVuIHN5bWJvbCBmYWt0aXNrdCBsYWRlcwordGlsbCBhdiBlbiBEZWJpYW5zcGVjaWZpayDkbmRyaW5nIHPlIGL2ciBldHQgIn4iIGzkZ2dzIHRpbGwgaSBzbHV0ZXQgYXYKK3ZlcnNpb25lbi4KKy5QCitJbm5hbiBtYW4gYXBwbGljZXJhciBlbiBwYXRjaCBw5SBzeW1ib2xmaWxlbiBi9nIgZGUgYW5zdmFyaWdhIGR1YmJlbGNoZWNrYQorYXR0IGRlbiDkciBrb3JyZWt0LiBQdWJsaWNlcmFkZSBzeW1ib2xlciBi9nIgaW50ZSBm9nJzdmlubmEsIHPlIHBhdGNoZW4gYvZyCitpZGVlbGx0IHNldHQgYmFyYSBs5GdnYSB0aWxsIG55YSByYWRlci4KKy5QCitPYnNldmVyYSBhdHQgZHUga2FuIHNrcml2YSBrb21tZW50YXJlciBpIHN5bWJvbHNcLWZpbGVyOiBhbGxhIHJhZGVyIG1lZCAiIyIKK3NvbSBm9nJzdGEgdGVja2VuIORyIGtvbW1lbnRhcmVyLCBz5XZpZGEgaW50ZSBkZXQgYvZyamFyIG1lZCAiI2luY2x1ZGUiIChzZQorc3R5Y2tldCBcZkJBbnbkbmRhIGlua2x1ZGVyaW5nYXJcZlApLiBSYWRlciBzb20gYvZyamFyIG1lZCAiI01JU1NJTkc6IiDkcgorc3BlY2llbGxhIGtvbW1lbnRhcmVyIHNvbSBkb2t1bWVudGVyYXIgc3ltYm9sZXIgc29tIGhhciBm9nJzdnVubml0LgorLlNTICJBbnbkbmRhICNQQUNLQUdFI1wtc3Vic3RpdHVlcmluZyIKKy5QCitJIG7lZ3JhIHPkbGxzeW50YSBmYWxsIHNraWxqZXIgc2lnIG5hbW5ldCBw5SBiaWJsaW90ZWtldCBtZWxsYW4KK2Fya2l0ZWt0dXJlci4gRvZyIGF0dCB1bmR2aWthIGF0dCBo5XJka29kYSBuYW1uZXQgcOUgcGFrZXRldCBpIHN5bWJvbGZpbGVuCitrYW4gZHUgYW525G5kYSBtYXJr9nJlbiBcZkkjUEFDS0FHRSNcZlAuIERlbiBlcnPkdHRzIGF2IGRldCBmYWt0aXNrYQorcGFrZXRuYW1uZXQgbuRyIHN5bWJvbGZpbGVuIGluc3RhbGxlcmFzLiBUaWxsIHNraWxsbmFkIGZy5W4KK1xmSSNNSU5WRVIjXGZQXC1tYXJr9nJlbiBrb21tZXIgXGZJI1BBQ0tBR0UjXGZQIGFsZHJpZyBhdHQgZHlrYSB1cHAgaSBlbiBzeW1ib2xmaWwKK2kgZXR0IGJpbuRycGFrZXQuCisuU1MgIkFuduRuZGEgc3ltYm9sdGFnZ2FyIgorLlAKK1N5bWJvbHRhZ2duaW5nIORyIG55dHRpZ3QgZvZyIGF0dCBtYXJrZXJhIHN5bWJvbGVyIHNvbSDkciBzcGVjaWVsbGEgcOUgbuVnb3QKK3PkdHQuIEFsbGEgc3ltYm9sZXIga2FuIGhhIGV0dCBnb2R0eWNrbGlndCBhbnRhbCB0YWdnYXIgYXNzb2NpZXJhZGUgbWVkCitzaWcuIE1lZGFuIGFsbGEgdGFnZ2FyIHRvbGthcyBvY2ggbGFncmFzIORyIGRldCBiYXJhIGV0dCBwYXIgYXYgZGVtIHNvbQorZvZyc3TlcyBhdiBcZkJkcGtnXC1nZW5zeW1ib2xzXGZQIG9jaCBzb20gdXRs9nNlciBzcGVjaWFsaGFudGVyaW5nIGF2CitzeW1ib2xlcm5hLiBTZSB1bmRlcnN5bWJvbGVuIFxmQlN0YW5kYXJkc3ltYm9sdGFnZ2FyXGZQIGb2ciBtZXIgaW5mb3JtYXRpb24gb20KK2Rlc3NhIHRhZ2dhci4KKy5QCitUYWdnYXJuYSBhbmdlcyBwcmVjaXMgZvZyZSBzeW1ib2xuYW1uZXQgKGluZ2EgYmxhbmtzdGVnIHRpbGzldHMgbWVsbGFuKS4gRGVuCiti9nJqYXIgYWxsdGlkIG1lZCBlbiB25G5zdGVycGFyZW50ZXMgXGZCKFxmUCwgc2x1dGFyIG1lZCBlbiBo9mdlcnBhcmVudGVzIFxmQilcZlAsCitvY2ggbeVzdGUgaW5uZWjlbGxhIG1pbnN0IGVuIHRhZ2cuIFl0dGVybGlnYXJlIHRhZ2dhciBhdmRlbGFzIG1lZCB0ZWNrbmV0CitcZkJ8XGZQLiBFbiB0YWdnIGthbiBoYSBldHQgduRyZGUsIHZpbGtldCBzZXBhcmVyYXMgZnLlbiB0YWdnbmFtbmV0IG1lZCB0ZWNrbmV0CitcZkI9XGZQLiBUYWdnbmFtbiBvY2ggduRyZGVuIGthbiB2YXJhIGdvZHR5Y2tsaWdhIHN0cuRuZ2FyLCBm9nJ1dG9tIGF0dCBkZSBpbnRlCitrYW4gaW5uZWjlbGxhIGRlIHNwZWNpZWxsYSB0ZWNrbmVuIFxmQilcZlAgXGZCfFxmUCBcZkI9XGZQLiBTeW1ib2xuYW1uIHNvbSBm9mxqZXIgZW4KK3RhZ2dhbmdpdmVsc2Uga2FuLCBvbSBz5SD2bnNrYXMsIGNpdGVyYXMgbWVkIGFudGluZ2VuIFxmQidcZlAgZWxsZXIgXGZCIlxmUCBm9nIKK2F0dCB0aWxs5XRhIGJsYW5rc3RlZy4gT20gaW5nYSB0YWdnYXIgYW5nZXMgZvZyIHN5bWJvbGVuIHRvbGthcyBkb2NrCitjaXRhdHRlY2tlbiBzb20gZW4gZGVsIGF2IHN5bWJvbG5hbW5ldCwgdmlsa2V0IGZvcnRz5HR0ZXIgdGlsbCBkZXQgZvZyc3RhCitibGFua3N0ZWdldC4KKy5QCisgKHRhZzE9amFnIORyIG1hcmtlcmFkfHRhZ2duYW1uIG1lZCBibGFua3N0ZWcpInRhZ2dhZCBjaXRlcmFkIHN5bWJvbCJAQmFzIDEuMAorIChvcHRpb25hbCl0YWdnYWRfb2NpdGVyYWRfc3ltYm9sQEJhcyAxLjAgMQorIG9jaXRlcmFkX3N5bWJvbEBCYXMgMS4wCisuUAorRGVuIGb2cnN0YSBzeW1ib2xlbiBpIGV4ZW1wbGV0IORyIGhldGVyIFxmSXRhZ2dhZCBjaXRlcmFkIHN5bWJvbFxmUCBvY2ggaGFyIHR25QordGFnZ2FyOiBcZkl0YWcxXGZQIG1lZCB25HJkZXQgXGZJamFnIORyIG1hcmtlcmFkXGZQIG9jaCBcZkl0YWdnbmFtbiBtZWQgYmxhbmtzdGVnXGZQCitzb20gaW50ZSBoYXIgbuVnb3QgduRyZGUuIERlbiBhbmRyYSBzeW1ib2xlbiBoZXRlciBcZkl0YWdnYWRfb2NpdGVyYWRfc3ltYm9sXGZQCitvY2gg5HIgYmFyYSB0YWdnYWQgbWVkIHRhZ2dlbiBzb20gaGV0ZXIgXGZJb3B0aW9uYWxcZlAuIERlbiBzaXN0YSBzeW1ib2xlbiDkcgorZXR0IGV4ZW1wZWwgcOUgZW4gbm9ybWFsLCBvdGFnZ2FkIHN5bWJvbC4KKy5QCitFZnRlcnNvbSBzeW1ib2x0YWdnYXIgZXIgZW4gdXT2a25pbmcgYXYgZm9ybWF0ZXQgaSBcZklkZWJcLXN5bWJvbHMoNSlcZlAga2FuIGRlCitiYXJhIGFuduRuZGFzIGkgc3ltYm9sZmlsZXIgaSBr5Gxsa29kc3Bha2V0IChkZXNzYSBmaWxlciDkciBhdHQgYW5zZSBzb20KK21hbGxhciBzb20gYW525G5kcyBm9nIgYXR0IGJ5Z2dhIHN5bWJvbGZpbGVybmEgc29tIGZpbm5zIGkKK2JpbuRycGFrZXRlbikuIE7kciBcZkJkcGtnXC1nZW5zeW1ib2xzXGZQIGFucm9wYXMgdXRhbiBmbGFnZ2FuIFxmSVwtdFxmUCBrb21tZXIgZGV0CithdHQgbWF0YSB1dCBzeW1ib2xmaWxlciBrb21wYXRpYmxhIG1lZCBcZklkZWJcLXN5bWJvbHMoNSlcZlBcLWZvcm1hdGV0OiBkZXQKK2hhbnRlcmFyIHN5bWJvbGVyIGhlbHQgYmVyb2VuZGUgcOUgdmFkIHNvbSBiZXNrcml2cyBhdiBzdGFuZGFyZHRhZ2dhcm5hIG9jaAordGFyIGJvcnQgYWxsYSB0YWdnYXIgZnLlbiB1dGRhdGEuIEkgbWFsbFwtbORnZSAoXGZJXC10XGZQKSBrb21tZXIgZORyZW1vdCBhbGxhCitzeW1ib2xlciBvY2ggZGVyYXMgdGFnZ2FyIChi5WRlIHN0YW5kYXJkIG9jaCBva+RuZGEpIGF0dCBiZWjlbGxhcyBpIHV0ZGF0YQorb2NoIHNrcml2YXMgaSBzaW4gb3JpZ2luYWxmb3JtIHPlIHNvbSBkZSBs5HN0ZXMgaW4uCisuU1MgU3RhbmRhcmRzeW1ib2x0YWdnYXIKKy5UUCAKK1xmQm9wdGlvbmFsXGZQCitFbiBzeW1ib2wgbWFya2VyYWQgc29tIHZhbGZyaSAob3B0aW9uYWwpIGthbiBm9nJzdmlubmEgZnLlbiBiaWJsaW90ZWt0ZXQgbuRyCitzb20gaGVsc3Qgb2NoIGtvbW1lciBhbGRyaWcgZ/ZyYSBz5SBhdHQgXGZCZHBrZ1wtZ2Vuc3ltYm9sc1xmUAorbWlzc2x5Y2thcy4gRvZyc3Z1bm5hIHN5bWJvbGVyIGtvbW1lciBkb2NrIGZvcnRmYXJhbmRlIHZpc2FzIHNvbSBzYWtuYWRlCisoTUlTU0lORykgaSBkaWZmZXJlbnNlbiBm9nIgdmFyamUgbnkgcGFrZXR2ZXJzaW9uLiBEZXR0YSBiZXRlZW5kZSBmdW5nZXJhcgorc29tIGVuIHDlbWlubmVsc2UgZvZyIGRlIHBha2V0YW5zdmFyaWdhIG9tIGF0dCBzeW1ib2xlbiBt5XN0ZSB0YXMgYm9ydCBmcuVuCitzeW1ib2xmaWxlbiBlbGxlciBs5GdnYXMgdGlsbGJha2EgdGlsbCBiaWJsaW90ZWtldC4gTuRyIGVuIHZhbGZyaSBzeW1ib2wgc29tCit0aWRpZ2FyZSBtYXJrZXJhdHMgc29tIHNha25hZCAoTUlTU0lORykgcGz2dHNsaWd0IGR5a2VyIHVwcCBpZ2VuIGkgZW4gc2VuYXJlCit2ZXJzaW9uIGtvbW1lciBkZW4gYXR0IHVwcGdyYWRlcmFzIHRpbGxiYWthIHRpbGwgYmVmaW50bGlnc3RhdHVzCisoImV4aXN0aW5nIikgbWVkIGRlbiBtaW5zdGEgdGlsbGfkbmdsaWdhIHZlcnNpb25lbiBvZvZy5G5kcmFkLgorCitUYWdnZW4g5HIgYW525G5kYmFyIGb2ciBzeW1ib2xlciBzb20g5HIgcHJpdmF0YSBvY2ggdmFycyBm9nJzdmlubmFuZGUgaW50ZQorZ/ZyIGF0dCBBQkk6ZXQgZ+VyIHP2bmRlci4gRGUgZmxlc3RhIEMrK1wtbWFsbGluc3RhbnNpZXJpbmdhciBmYWxsZXIgdGlsbAorZXhlbXBlbCBpbiB1bmRlciBkZW5uYSBrYXRlZ29yaS4gU29tIGFuZHJhIHRhZ2dhciBrYW4gZGVuIGjkciDkdmVuIGhhIGV0dAorZ29kdHlja2xpZ3QgduRyZGU6IGRldCBrYW4gYW525G5kYXMgZvZyIGF0dCBpbmRpa2VyYSB2YXJm9nIgc3ltYm9sZW4g5HIgYXR0CithbnNlIHNvbSB2YWxmcmkuCisuVFAgCitcZkJhcmNoPVxmUFxmSWFya2l0ZWt0dXJsaXN0YVxmUAorRGVubmEgdGFnIGf2ciBkZXQgbfZqbGlndCBhdHQgYmVncuRuc2Egdmlsa2VuIHVwcHPkdHRuaW5nIGFya2l0ZWt0dXJlcgorc3ltYm9sZW4g5HIgdORua3QgYXR0IGZpbm5hcyBm9nIuIE7kciBzeW1ib2xsaXN0YW4gdXBwZGF0ZXJhcyBtZWQgc3ltYm9sZXIKK3NvbSB1cHB05GNrcyBpIGJpYmxpb3Rla2V0IGJlaGFuZGxhcyBhbGxhIGFya2l0ZWt0dXJzcGVjaWZpa2Egc3ltYm9sZXIgc29tCitpbnRlIGfkbGxlciBkZW4gYWt0dWVsbGEgduRyZGFya2l0ZWt0dXJlbiBzb20gb20gZGUgaW50ZSBmYW5ucy4gT20gZW4KK2Fya2l0ZWt0dXJzcGVjaWZpayBzeW1ib2wgc29tIG1vdHN2YXJhciBkZW4gYWt0dWVsbGEgduRyZGFya2l0ZWt0dXJlbiBpbnRlCitleGlzdGVyYXIgaSBiaWJsaW90ZWtldCBn5GxsZXIgZGUgdmFubGlnYSByZWdsZXJuYSBm9nIgc2FrbmFkZSBzeW1ib2xlciwgb2NoCitrYW4gZuUgXGZCZHBrZ1wtZ2Vuc3ltYm9sc1xmUCBhdHQgbWlzc2x5Y2thcy4gxSBhbmRyYSBzaWRhbiwgb20gZW4KK2Fya2l0ZWt0dXJzcGVjaWZpayBzeW1ib2wgaGl0dGFzIGTkciBkZW4gaW50ZSB2YXIgbWVuYWQgYXR0IGZpbm5hcyAoZOUgZGVuCitha3R1ZWxsYSB25HJkYXJraXRla3R1cmVuIGludGUg5HIgbGlzdGFkIGkgdGFnZ2VuKSwgZ/ZycyBkZW4KK2Fya2l0ZWt0dXJuZXV0cmFsIChkdnMuICJhcmNoIlwtdGFnZ2VuIHRhcyBib3J0IG9jaCBzeW1ib2xlbiBrb21tZXIgZmlubmFzCittZWQgaSBkaWZmZXJlbnNlbiBw5SBncnVuZCBhdiBkZW5uYSDkbmRyaW5nKSwgbWVuIGRlbiBhbnNlcyBpbnRlIHNvbSBueS4KKworSSBkZXQgdmFubGlnYSBpY2tlXC1tYWxsXC1s5GdldCBza3JpdnMgZW5kYXN0IGRlIGFya2l0ZWt0dXJzcGVjaWZpa2Egc3ltYm9sZXIKK3NvbSBtb3RzdmFyYXIgZGVuIGFrdHVlbGxhIHbkcmRhcmtpdGVrdHVyZW4gdGlsbCBzeW1ib2xmaWxlbi4gxSBhbmRyYSBzaWRhbgorc2tyaXZzIGFsbGEgYXJraXRla3R1cnNwZWNpZmlrYSBzeW1ib2xlciAoaW5rbHVzaXZlIGRlIGZy5W4gYW5kcmEKK2Fya2l0ZWt0dXJlcikgdGlsbCBzeW1ib2xmaWxlbiBpIG1hbGxcLWzkZ2V0LgorCitGb3JtYXRldCBw5SBcZklhcmtpdGVrdHVybGlzdGFcZlAg5HIgZGV0c2FtbWEgc29tIGRldCBzb20gYW525G5kcyBpCitcZklCdWlsZFwtRGVwZW5kc1xmUFwtZuRsdGV0IGkgXGZJZGViaWFuL2NvbnRyb2xcZlAgKGJvcnRzZXR0IGZy5W4gZGUgb21zbHV0YW5kZQoraGFrcGFyZW50ZXNlcm5hIFtdKS4gRGVuIGb2cnN0YSBzeW1ib2xlbiBmcuVuIGxpc3RhbiBuZWRhbiwgdGlsbCBleGVtcGVsLAora29tbWVyIGVuZGFzdCBhdHQgdGFzIG1lZCBw5SBhcmtpdGVrdHVyZXJuYSBhbHBoYSwgYW1kNjQsIGtmcmVlYnNkXC1hbWQ2NCBvY2gKK2lhNjQsIG1lZGFuIGRlbiBhbmRyYSB0YXMgbWVkIPZ2ZXJhbGx0IGb2cnV0b20gcOUgYXJtZWwuCisKKyAoYXJjaD1hbHBoYSBhbWQ2NCBrZnJlZWJzZFwtYW1kNjQgaWE2NCllbl82NGJpdFwtc3BlY2lmaWtfc3ltYm9sQEJhc2UgMS4wCisgKGFyY2g9IWFybWVsKXN5bWJvbF9hcm1lbF9pbnRlX2hhckBCYXNlIDEuMAorLlRQIAorXGZCaWdub3JlXC1ibGFja2xpc3RcZlAKK2Rwa2dcLWdlbnN5bWJvbHMgaGFyIGVuIGludGVybiBzdmFydGxpc3RhIPZ2ZXIgc3ltYm9sZXIgc29tIGludGUgc2thbGwKK2b2cmVrb21tYSBpIHN5bWJvbGZpbGVyIGVmdGVyc29tIGRlIG9mdGFzdCBiYXJhIORyIHNpZG9lZmZla3RlciBmcuVuCitpbXBsZW1lbnRhdGlvbnNkZXRhbGplciBpIHZlcmt0eWdza2VkamFuLiBPbSBkdSwgYXYgbuVnb24gb3JzYWssIHZlcmtsaWdlbgordmlsbCBhdHQgZW4gYXYgZGVzc2Egc3ltYm9sZXIgc2thbGwgdGFzIG1lZCBpIHN5bWJvbGZpbGVuIG3lc3RlIGR1IHRhZ2dhCitzeW1ib2xlbiBtZWQgXGZCaWdub3JlXC1ibGFja2xpc3RcZlAuIERldCBrYW4gdmFyYSBu9mR25G5kaWd0IGb2cgorbOVnbml25VwtdmVya3R5Z3NrZWRqZWJpYmxpb3RlayBzb20gbGliZ2NjLgorLlRQIAorXGZCYysrXGZQCitCZXRlY2tuYXIgXGZJYysrXGZQXC1zeW1ib2xt9m5zdGVyLiBTZSBzdHlja2V0IFxmQkFuduRuZGEgc3ltYm9sbfZuc3RlclxmUCBuZWRhbi4KKy5UUCAKK1xmQnN5bXZlclxmUAorQW5nZXIgXGZJc3ltdmVyXGZQIChzeW1ib2x2ZXJzaW9uKVwtc3ltYm9sbfZuc3RyZXQuIFNlIHN0eWNrZXQgXGZCQW525G5kYQorc3ltYm9sbfZuc3RlclxmUCBuZWRhbi4KKy5UUCAKK1xmQnJlZ2V4XGZQCitBbmdlciBcZklyZWdleFxmUFwtc3ltYm9sbfZuc3RyZXQuIFNlIHN0eWNrZXQgXGZJQW525G5kYSBzeW1ib2xt9m5zdGVyXGZQIG5lZGFuLgorLlNTICJBbnbkbmRhIHN5bWJvbG32bnN0ZXIiCisuUAorVGlsbCBza2lsbG5hZCBmcuVuIHZhbmxpZ2Egc3ltYm9sc3BlY2lmaWthdGlvbmVyIGthbiBldHQgbfZuc3RlciB05GNrYSBmbGVyYQorZmFrdGlza2Egc3ltYm9sZXIgZnLlbiBiaWJsaW90ZWtldC4gXGZCZHBrZ1wtZ2Vuc3ltYm9sc1xmUCBrb21tZXIgZvZyc/ZrYSBtYXRjaGEKK3ZhcmplIG32bnN0ZXIgbW90IHZhcmplIGZha3Rpc2sgc3ltYm9sIHNvbSBcZklpbnRlXGZQIGhhciBlbiBtb3RzdmFyYW5kZQorc3BlY2lmaWsgc3ltYm9sIGRlZmluaWVyYWQgaSBzeW1ib2xmaWxlbi4gU+UgZm9ydCBkZXQgZvZyc3RhIG32bnN0ZXIgc29tCittb3RzdmFyYXIgc3ltYm9sZW4gaGl0dGFzIGtvbW1lciBhbGxhIGRlc3MgdGFnZ2FyIG9jaCBlZ2Vuc2thcGVyIGF0dAorYW525G5kYXMgc29tIGVuIGJhc3NwZWNpZmlrYXRpb24gZvZyIHN5bWJvbGVuLiBPbSBpbmdldCBt9m5zdGVyIG1vdHN2YXJhcgorc3ltYm9sZW4ga29tbWVyIGRlbiBhdHQgdG9sa2FzIHNvbSBueS4KKworRXR0IG32bnN0ZXIgYW5zZXMgc29tIHRhcHBhdCBvbSBkZXQgaW50ZSBtb3RzdmFyYXIgbuVncmEgc3ltYm9sZXIgaQorYmlibGlvdGVrZXQuIFNvbSBzdGFuZGFyZCBrb21tZXIgZGV0dGEgZuUgXGZCZHBrZ1wtZ2VuY2hhbmdlc1xmUCBhdHQgbWlzc2x5Y2thcworb20gXGZJXC1jMVxmUCBlbGxlciBo9mdyZSBhbmdlcy4gT20gZXR0IHPlZGFudCBtaXNzbHlja2FuZGUgaW50ZSDkciD2bnNrduRydCBrYW4KK232bnN0cmV0IGRvY2sgbeRya2FzIG1lZCB0YWdnZW4gXGZJb3B0aW9uYWxcZlAuIE9tIG32bnN0cmV0IGTlIGludGUgbW90c3ZhcmFyCitu5WdvbnRpbmcga29tbWVyIGRldCBiYXJhIGR5a2EgdXBwIGkgZGlmZmVyZW5zZW4gc29tIHNha25hcworKE1JU1NJTkcpLiBN9m5zdHJldCBrYW4gZGVzc3V0b20sIHByZWNpcyBzb20gYW5kcmEgc3ltYm9sZXIsIGJlZ3LkbnNhcyB0aWxsCitzcGVjaWZpa2EgYXJraXRla3R1cmVyIG1lZCBoauRscCBhdiBcZklhcmNoXGZQXC10YWdnZW4uIFNlIHN0eWNrZXQKK1xmQlN0YW5kYXJkc3ltYm9sdGFnZ2FyXGZQIG92YW4gZvZyIG1lciBpbmZvcm1hdGlvbi4KKworTfZuc3RlciDkciBlbiB1dPZrbmluZyBhdiBcZklkZWJcLXN5bWJvbHMoNSlcZlBcLWZvcm1hdGV0IG9jaCDkciBk5HJm9nIgZW5kYXN0Cit0aWxs5XRuYSBpIHN5bWJvbGZpbG1hbGxhci4gU3ludGF4IGb2ciBhbmdpdmVsc2UgYXYgbfZuc3RlciBza2lsamVyIHNpZyBpbnRlCitmcuVuIGRlbiBm9nIgZW4gc3BlY2lmaWsgc3ltYm9sLiBTeW1ib2xuYW1uc2RlbGVuIGF2IHNwZWNpZmlrYXRpb25lbgorZnVuZ2VyYXIgZG9jayBzb20gZXR0IHV0dHJ5Y2sgc29tIHNrYWxsIGrkbWb2cmFzIG1vdCBcZkluYW1uQHZlcnNpb25cZlAgZvZyIGRlbgorZmFrdGlza2Egc3ltYm9sZW4uIEb2ciBhdHQgc2tpbGphIG1lbGxhbiBvbGlrYSBzb3J0ZXJzIG32bnN0ZXIsIHRhZ2dhcworbfZuc3RlciBub3JtYWx0IG1lZCBlbiBzcGVjaWVsbCB0YWdnLgorCitG9nIgbuRydmFyYW5kZSBzdPZkZXIgXGZCZHBrZ1wtZ2Vuc3ltYm9sc1xmUCB0cmUgZ3J1bmRs5GdnYW5kZSBt9m5zdGVydHlwZXI6CisuVFAgIDMKK1xmQmMrK1xmUAorRGV0dGEgbfZuc3RlciBhbmdlcyBtZWQgdGFnZ2VuIFxmSWMrK1xmUC4gRGVuIG1hdGNoYXIgZW5iYXJ0IEMrK1wtc3ltYm9sZXIgbWVkCitkZXJhcyBhdm1hbmdsYWRlIHN5bWJvbG5hbW4gKHNvbSBkZXQgc2tyaXZzIHV0IGF2CitcZkJjKytmaWx0XGZQKDEpXC12ZXJrdHlnZXQpLiBEZXQgaORyIG32bnN0cmV0IORyIHbkbGRpZ3Qgbnl0dGlndCBm9nIgYXR0IG1hdGNoYQorc3ltYm9sZXIgdmFycyBtYW5nbGFkZSBuYW1uIGthbiBza2lsamEgc2lnIG1lbGxhbiBvbGlrYSBhcmtpdGVrdHVyZXIsIG1lZGFuCitkZXJhcyBhdm1hbmdsYWRlIG5hbW4g5HIgZGVzYW1tYS4gRW4gZ3J1cHAgZHlsaWthIHN5bWJvbGVyIORyCitcZklpY2tlXC12aXJ0dWVsbGEgInRodW5rcyJcZlAgc29tIGhhciBhcmtpdGVrdHVyc3BlY2lmaWthIG9mZnNldHbkcmRlbiBpbmJ5Z2dkYQoraSBzaW5hIG1hbmdsYWRlIG5hbW4uIEVuIHZhbmxpZyBpbnN0YW5zIGF2IGRldHRhIGZhbGwg5HIgZW4gdmlydHVlbGwKK2Rlc3RydWt09nIgc29tIHVuZGVyIGRpYW1hbnRhcnYgYmVo9nZlciBlbiBpY2tlXC12aXJ0dWVsbAorInRodW5rIlwtc3ltYm9sLiDEdmVuIG9tIHRpbGwgZXhlbXBlbCBaVGhuOF9OM05TQjZDbGFzc0REMUV2QEJhc2UgcOUKKzMyXC1iaXRhcnNhcmtpdGVrdHVyZXIgdHJvbGlndHZpcyDkciBfWlRobjE2X04zTlNCNkNsYXNzREQxRXZAQmFzZQorcOU2NFwtYml0YXJzYXJraXRla3R1cmVyLCBz5SBrYW4gZGUgbWF0Y2hhcyBtZWQgZXR0IGVuZGEgXGZJYysrXGZQXC1t9m5zdGVyOgorLlJTCisuUFAKK2xpYmR1bW15LnNvLjEgbGliZHVtbXkxICNNSU5WRVIjCisgWy4uLl0KKyAoYysrKSJub25cLXZpcnR1YWwgdGh1bmsgdG8gTlNCOjpDbGFzc0Q6On5DbGFzc0QoKUBCYXNlIiAxLjAKKyBbLi4uXQorLlAKK0RldCBhdm1hbmdsYWRlIG5hbW5ldCBvdmFuIGthbiBo5G10YXMgZ2Vub20gYXR0IHV0ZvZyYSBm9mxqYW5kZSBrb21tYW5kbzoKKy5QUAorICQgZWNobyAnX1pUaG44X04zTlNCNkNsYXNzREQxRXZAQmFzZScgfCBjKytmaWx0CisuUAorT2JzZXJ2ZXJhIGF0dCDkdmVuIG9tIGRldCBtYW5nbGFkZSBuYW1uZXQgcGVyIGRlZmluaXRpb24g5HIgdW5pa3QgaQorYmlibGlvdGVrZXQgZ+RsbGVyIGludGUgZGV0dGEgZvZyIGF2bWFuZ2xhZGUgbmFtbi4gRmxlcmEgZGlzdGlua3RhIHZlcmtsaWdhCitzeW1ib2xlciBrYW4gaGEgc2FtbWEgYXZtYW5nbGFkZSBuYW1uLiBEZXQgZ+RsbGVyIHRpbGwgZXhlbXBlbCBm9nIKK2lja2VcLXZpcnR1ZWxsYSAidGh1bmsiXC1zeW1ib2xlciBpIGtvbmZpZ3VyYXRpb25lciBtZWQga29tcGxleGEgYXJ2IGVsbGVyIGb2cgorZGUgZmxlc3RhIGtvbnN0cnVrdPZyZXIgb2NoIGRlc3RydWt09nJlciAoZWZ0ZXJzb20gZysrIG5vcm1hbHQgZ2VuZXJlcmFyIHR25Qorc3ltYm9sZXIgZvZyIGRlbSkuIEVmdGVyc29tIGRlc3NhIGtvbGxpc2lvbmVyIHNrZXIgcOUgQUJJXC1uaXblbiBi9nIgZGUgZG9jaworaW50ZSBz5G5rYSBrdmFsaXRldGVuIHDlIHN5bWJvbGZpbGVuLgorLlJFCisuVFAgCitcZkJzeW12ZXJcZlAKK0RldHRhIG32bnN0ZXIgYW5nZXMgbWVkIHRhZ2dlbiBcZklzeW12ZXJcZlAuIFbkbHVuZGVyaOVsbG5hIGJpYmxpb3RlayBoYXIKK3ZlcnNpb25zaGFudGVyYWRlIHN5bWJvbGVyIGTkciB2YXJqZSB2ZXJzaW9uIG1vdHN2YXJhciB1cHBzdHL2bXN2ZXJzaW9uZW4KK2TkciBzeW1ib2xlbiBsYWRlcyB0aWxsLiBPbSBkZXQg5HIgZmFsbGV0IGthbiBkdSBhbnbkbmRhIGV0dAorXGZJc3ltdmVyXGZQXC1t9nN0ZXIgZvZyIGF0dCBtYXRjaGEgYWxsYSBzeW1ib2xlciBzb20gbWF0Y2hhciBkZW4gc3BlY2lmaWthCit2ZXJzaW9uZW4uIFRpbGwgZXhlbXBlbDoKKy5SUworLlBQCitsaWJjLnNvLjYgbGliYzYgI01JTlZFUiMKKyAoc3ltdmVyKUdMSUJDXzIuMCAyLjAKKyBbLi4uXQorIChzeW12ZXIpR0xJQkNfMi43IDIuNworIGFjY2Vzc0BHTElCQ18yLjAgMi4yCisuUFAKK0FsbGEgc3ltYm9sZXIgYXNzb2NpZXJhZGUgbWVkIHZlcnNpb25lcm5hIEdMSUJDXzIuMCBvY2ggR0xJQkNfMi43IGtvbW1lcgorbGVkYSB0aWxsIGRlbiBtaW5pbWFsIHZlcnNpb24gMi4wIHJlc3Bla3RpdmUgMi43LCBtZWQgdW5kYW50YWcgYXYgc3ltYm9sZW4KK2FjY2Vzc0BHTElCQ18yLjAuIERlbiBzaXN0buRtbmRhIGtvbW1lciBsZWRhIHRpbGwgZXR0IG1pbnN0YSBiZXJvZW5kZSBw5QorbGliYzYgdmVyc2lvbiAyLjIgdHJvdHMgYXR0IGRlbiBtb3RzdmFyYXIgbfZuc3RyZXQKKyIoc3ltdmVyKUdMSUJDXzIuMCJcLW32bnN0cmV0LCBlZnRlcnNvbSBzcGVjaWZpa2Egc3ltYm9sZXIgZ+RsbGVyIGb2cmUKK232bnN0ZXIuCisuUAorT2JzZXJ2ZXJhIGF0dCDkdmVuIG9tIGRlbiBnYW1sYSBzb3J0ZW5zIGpva2VydGVja2VubfZuc3RlciAoYW5nZXMgbWVkCisiKkB2ZXJzaW9uIiBpIHN5bWJvbG5hbW5m5Gx0ZXQpIGZvcnRmYXJhbmRlIHN09mRzIHPlIHJla29tbWVuZGVyYXMgZGUgaW50ZQorbORuZ3JlIGkgb2NoIG1lZCBkZW4gbnlhIHNvcnRlbnMgc3ludGF4ICIoc3ltdmVyfG9wdGlvbmFsKXZlcnNpb24iLiBUaWxsCitleGVtcGVsIGL2ciAiKkBHTElCQ18yLjAgMi4wIiBza3JpdmFzIHNvbSAiKHN5bXZlcnxvcHRpb25hbClHTElCQ18yLjAgMi4wIgorb20gc2FtbWEgYmV0ZWVuZGUgYmVo9nZzLgorLlJFCisuVFAgCitcZkJyZWdleFxmUAorTfZuc3RlciBtZWQgcmVndWxq5HJhIHV0dHJ5Y2sgYW5nZXMgbWVkIHRhZ2dlbiBcZklyZWdleFxmUC4gRGUgbWF0Y2hhciBtZWQgZGV0CityZWd1bGrkcmEgdXR0cnlja2V0IHDlIHBlcmxcLWZvcm0gc29tIGFuZ2VzIGkgc3ltYm9sbmFtbnNm5Gx0ZXQuIEV0dAorcmVndWxq5HJ0IHV0dHJ5Y2sgbWF0Y2hhciBzb20gZGV0IHN05XIsIGds9m0gZORyZvZyIGludGUgYXR0IGlubGVkYSBkZXQgbWVkCit0ZWNrbmV0IFxmSV5cZlAsIGFubmFycyBrb21tZXIgZGV0IG1hdGNoYSBnb2R0eWNrbGlnIGRlbCBhdiBkZW4gdmVya2xpZ2EKK3N5bWJvbGVucyBcZkluYW1uQHZlcnNpb25cZlBcLXN0cuRuZy4gVGlsbCBleGVtcGVsOgorLlJTCisuUFAKK2xpYmR1bW15LnNvLjEgbGliZHVtbXkxICNNSU5WRVIjCisgKHJlZ2V4KSJebXlzdGFja18uKkBCYXNlJCIgMS4wCisgKHJlZ2V4fG9wdGlvbmFsKSJwcml2YXRlIiAxLjAKKy5QCitTeW1ib2xlciBzb20gIm15c3RhY2tfbmV3QEJhc2UiLCAibXlzdGFja19wdXNoQEJhc2UiLCAibXlzdGFja19wb3BAQmFzZSIKK29zdi4ga29tbWVyIGF0dCB0cuRmZmFzIGF2IGRldCBm9nJzdGEgbfZuc3RyZXQgbWVkYW4gdC5leAorIm5nX215c3RhY2tfbmV3QEJhc2UiIGludGUgZ/ZyIGRldC4gRGV0IGFuZHJhIG32bnN0cmV0IG1vdHN2YXJhciBhbGxhCitzeW1ib2xlbiBzb20gaW5uZWjlbGxlciBzdHLkbmdlbiAicHJpdmF0ZSIgaSBzaW5hIG5hbW4gb2NoIHRy5GZmYXIga29tbWVyCithdHQg5HJ2YSBcZklvcHRpb25hbFxmUFwtdGFnZ2VuIGZy5W4gbfZuc3RyZXQuCisuUkUKKy5QCitHcnVuZGzkZ2dhbmRlIG32bnN0ZXIgc29tIGFuZ2VzIG92YW4ga2FuIGtvbWJpbmVyYXMgZORyIGRldCDkciB2ZXR0aWd0LiBJIHPlCitmYWxsIGJlaGFuZGxhcyBkZSBpIGRlbiBvcmRuaW5nIHRhZ2dhcm5hIGFuZ2VzLiBUaWxsIGV4ZW1wZWwga29tbWVyIGLlZGUKKy5QUAorIChjKyt8cmVnZXgpIl5OU0E6OkNsYXNzQTo6UHJpdmF0ZTo6cHJpdm1ldGhvZFxlZFxlKGludFxlKUBCYXNlIiAxLjAKKyAocmVnZXh8YysrKU4zTlNBNkNsYXNzQTdQcml2YXRlMTFwcml2bWV0aG9kXGVkRWlAQmFzZSAxLjAKKy5QCithdHQgdHLkZmZhIHN5bWJvbGVybmEgIl9aTjNOU0E2Q2xhc3NBN1ByaXZhdGUxMXByaXZtZXRob2QxRWlAQmFzZSIgb2NoCisiX1pOM05TQTZDbGFzc0E3UHJpdmF0ZTExcHJpdm1ldGhvZDJFaUBCYXNlIi4gTuRyIGRldCBm9nJzdGEgbfZuc3RyZXQKK2rkbWb2cnMgYXZtYW5nbGFzIGb2cnN0IHN5bWJvbGVuIHNvbSBlbiBDKytcLXN5bWJvbCwgdmFyZWZ0ZXIgZGV0IGF2bWFuZ2xhZGUKK25hbW5ldCBq5G1m9nJzIG1lZCBkZXQgcmVndWxq5HJhIHV0dHJ5Y2tldC4gTuRyIGRldCBhbmRyYSBt9m5zdHJldCBq5G1m9nJzLAor5SBhbmRyYSBzaWRhbiwgauRtZvZycyBkZXQgcmVndWxq5HJhIHV0dHJ5Y2tldCBtb3QgZGV0IHLlYSBzeW1ib2xuYW1uZXQsCit2YXJlZnRlciBzeW1ib2xlbiB0ZXN0YXMgZvZyIGF0dCBzZSBvbSBkZXQg5HIgYXYgQysrXC10eXAgZ2Vub20gYXR0IGb2cnP2a2EKK2F2bWFuZ2xhIGRldC4gT20gZXR0IGdydW5kbORnZ2FuZGUgbfZuc3RlciBtaXNzbHlja2FzIGtvbW1lciBoZWxhIHV0dHJ5Y2tldAorYXR0IG1pc3NseWNrYXMuIETkcmb2ciBrb21tZXIsIHRpbGwgZXhlbXBlbAorIl9fTjNOU0E2Q2xhc3NBN1ByaXZhdGUxMXByaXZtZXRob2RcZWRFaUBCYXNlIiBpbnRlIGF0dCB0cuRmZmFzIGF2IG7lZ290IGF2Citt9m5zdHJlbmEgZWZ0ZXJzb20gZGV0IGludGUg5HIgZW4gZ2lsdGlnIEMrK1wtc3ltYm9sLgorLlAKK0kgYWxsbeRuaGV0IGRlbGFzIGFsbGEgbfZuc3RlciBpbiBpIHR25SBncnVwcGVyLiBhbGlhcyAoZ3J1bmRs5GdnYW5kZSBcZkljKytcZlAKK29jaCBcZklzeW12ZXJcZlApIG9jaCBnZW5lcmVsbGEgbfZuc3RlciAoXGZJcmVnZXhcZlAsIHNhbXRsaWdhIGtvbWJpbmF0aW9uZXIgYXYKK211bHRpcGxhIGdydW5kbORnZ2FuZGUgbfZuc3RlcikuIERldCBn5XIgc25hYmJ0IGF0dCB0cuRmZmEgZ3J1bmRs5GdnYW5kZQorYWxpYXNiYXNlcmFkZSBt9m5zdGVyIChPKDEpKSBtZWRhbiBnZW5lcmVsbGEgbfZuc3RlciDkciBPKE4pIChOIFwtIGFudGFsCitnZW5lcmVsbGEgbfZuc3RlcikgZvZyIHZhcmplIHN5bWJvbC4gRGV0IHJla29tbWVuZGVyYXMgZORyZvZyIGludGUgYXR0CithbnbkbmRhIGb2ciBt5W5nYSBnZW5lcmVsbGEgbfZuc3Rlci4KKy5QCitO5HIgZmxlcmEgbfZuc3RlciB0cuRmZmFyIHNhbW1hIHZlcmtsaWdhIHN5bWJvbCBm9nJlZHJhcyBhbGlhcyAoZvZyc3QKK1xmSWMrK1xmUCwgc2VkYW4gXGZJc3ltdmVyXGZQKSBmcmFtZvZyIGdlbmVyZWxsYSBt9m5zdGVyLiBHZW5lcmVsbGEgbfZuc3RlcgordHLkZmZhcyBpIGRlbiBvcmRuaW5nIGRlIHVwcHTkY2t0ZXMgaSBzeW1ib2xmaWxtYWxsZW4gZnJhbSB0aWxsIGRlbiBm9nJzdGEKK2x5Y2thZGUgdHLkZmZlbi4gT2JzZXJ2ZXJhIGRvY2sgYXR0IG1hbnVlbGwgb21zb3J0ZXJpbmcgYXYgcG9zdGVyIGkKK21hbGxmaWxlbiBpbnRlIHJla29tbWVuZGVyYXMgZOUgXGZCZHBrZ1wtZ2Vuc3ltYm9sc1xmUCBnZW5lcmVyYXIgZGlmZmVyZW5zZmlsZXIKK2Jhc2VyYWQgcOUgZGVuIGFsZmFudW1lcmlza2Egc29ydGVyaW5nc29yZG5pbmdlbiBhdiBkZXNzIG5hbW4uCisuU1MgIkFuduRuZGEgaW5rbHVkZXJpbmdhciIKKy5QCitO5HIgdXBwc+R0dG5pbmdlbiBhdiBleHBvcnRlcmFkZSBzeW1ib2xlciBza2lsamVyIHNpZyBtZWxsYW4gYXJraXRla3R1cmVyCitrYW4gZGV0IHZhcmEgaW5lZmZla3RpdnQgYXR0IGFuduRuZGEgZW4gZW5kYSBzeW1ib2xmaWwuIEkgZGVzc2EgZmFsbCBrYW4gZXR0CitpbmtsdWRlcmluZ3NkaXJla3RpdiB2YXJhIG55dHRpZ3QgcOUgZmxlcmEgc+R0dDoKKy5JUCBcKGJ1IDQKK0R1IGthbiBmYWt0b3Jpc2VyYSBkZSBnZW1lbnNhbW1hIGRlbGFybmEgaSBlbiBleHRlcm4gZmlsIG9jaCBpbmtsdWRlcmEgZGVuCitmaWxlbiBpIGRpbiBcZklwYWtldFxmUC5zeW1ib2xzLlxmSWFya2l0ZWt0dXJcZlBcLWZpbCBnZW5vbSBhdHQgYW525G5kYSBldHQKK2lua2x1ZGVyaW5nc2RpcmVrdGl2IHNvbSBkZXR0YToKKworI2luY2x1ZGUgIlxmSXBha2V0XGZQLnN5bWJvbHMuY29tbW9uIgorLklQIFwoYnUKK0lua2x1ZGVyaW5nc2RpcmVrdGl2ZXQga2FuIOR2ZW4gdGFnZ2FzIHNvbSBhbGxhIGFuZHJhIHN5bWJvbGVyOgorCisodGFnfC4ufHRhZ04pI2luY2x1ZGUgImZpbFwtYXR0XC1pbmtsdWRlcmEiCisKK0FsbGEgc3ltYm9sZXIgc29tIGlua2x1ZGVyYXMgZnLlbiBcZklmaWxcLWF0dFwtaW5rbHVkZXJhXGZQIGtvbW1lciBhdHQgYW5zZXMgc29tCitzdGFuZGFyZCB2YXJhIHRhZ2dhZGUgbWVkIFxmSXRhZ1xmUCAuLiBcZkl0YWdOXGZQLiBEdSBrYW4gYW525G5kYSBkZW5uYSBmdW5rdGlvbgorZvZyIGF0dCBza2FwYSBlbiBnZW1lbnNhbSBcZklwYWtldFxmUC5zeW1ib2xzXC1maWwgc29tIGlua2x1ZGVyYXIKK2Fya2l0ZWt0dXJzcGVjaWZpa2EgZmlsZXI6CisKKyAgZ2VtZW5zYW1fc3ltYm9sMUBCYXNlIDEuMAorIChhcmNoPWFtZDY0IGlhNjQgYWxwaGEpI2luY2x1ZGUgInBha2V0LnN5bWJvbHMuNjRiaXQiCisgKGFyY2g9IWFtZDY0ICFpYTY0ICFhbHBoYSkjaW5jbHVkZSAicGFrZXQuc3ltYm9scy4zMmJpdCIKKyAgZ2VtZW5zYW1fc3ltYm9sMkBCYXNlIDEuMAorLlAKK1N5bWJvbGZpbGVybmEgbORzZXMgcmFkdmlzLCBvY2ggaW5rbHVkZXJpbmdzZGlyZWt0aXYgdXRm9nJzIHPlIGZvcnQgZGUKK3VwcHTkY2tzLiBEZXQgYmV0eWRlciBhdHQgaW5uZWjlbGxldCBpIGRlbiBpbmtsdWRlcmFkZSBmaWxlbiBrYW4g9nZlcnN0eXJhCithbGx0IGlubmVo5WxsIHNvbSBm9nJla29tIGb2cmUgaW5rbHVkZXJpbmdzZGlyZWt0aXZldCBvY2ggYXR0IGlubmVo5WxsIGVmdGVyCitkaXJla3RpdmV0IGthbiD2dmVyc3R5cmEgYWxsdCBmcuVuIGRlbiBpbmtsdWRlcmFkZSBmaWxlbi4gQWxsYSBzeW1ib2xlcgorKOR2ZW4gYW5kcmEgI2luY2x1ZGVcLWRpcmVrdGl2KSBpIGRlbiBpbmtsdWRlcmFkZSBmaWxlbiBrYW4gYW5nZSB5dHRlcmxpZ2FyZQordGFnZ2FyIGVsbGVyIPZ2ZXJzdHlyYSB25HJkZW4gZvZyIGRlIORydmRhIHRhZ2dhcm5hIGkgc2luCit0YWdnc3BlY2lmaWthdGlvbi4gRGV0IGZpbm5zIGRvY2sgaW50ZSBu5WdvdCBz5HR0IGb2ciBlbiBzeW1ib2wgYXR0IHRhIGJvcnQKK27lZ29uIGF2IHNpbmEg5HJ2ZGEgdGFnZ2FyLgorLlAKK0VuIGlua2x1ZGVyYWQgZmlsIGthbiByZXBldGVyYSBodXZ1ZHJhZGVuIHNvbSBpbm5laOVsbGVyIFNPTkFNTmV0IGb2cgorYmlibGlvdGVrZXQuIEkgc+UgZmFsbCD2dmVyc3R5ciBkZW4gZW4gZXZlbnR1ZWxsIGh1dnVkcmFkIHNvbSBs5HN0cyBpbgordGlkaWdhcmUuIERldCDkciB2YW5saWd0dmlzIGRvY2sgYuRzdCBhdHQgdW5kdmlrYSBhdHQgZHVwbGljZXJhCitodXZ1ZHJhZGVyLiBFdHQgc+R0dCBhdHQgZ/ZyYSBkZXQg5HIgc29tIGb2bGplcjoKKy5QUAorI2luY2x1ZGUgImxpYm7lZ29udGluZzEuc3ltYm9scy5jb21tb24iCisgYXJraXRla3R1cnNwZWNpZmlrX3N5bWJvbEBCYXNlIDEuMAorLlNTICJHb2QgaGFudGVyaW5nIGF2IGJpYmxpb3RlayIKKy5QCitFdHQgduRsdW5kZXJo5WxsZXQgYmlibGlvdGVrIGhhciBm9mxqYW5kZSBmdW5rdGlvbmVyOgorLklQIFwoYnUgNAorZGVzcyBBUEkg5HIgc3RhYmlsdCAocHVibGlrYSBzeW1ib2xlciB0YXMgYWxkcmlnIGJvcnQsIGVuZGFzdCBueWEgcHVibGlrYQorc3ltYm9sZXIgbORnZ3MgdGlsbCkgb2NoIGlua29tcGF0aWJsYSDkbmRyaW5nYXIgZ/ZycyBlbmRhc3QgbuRyIFNPTkFNTmV0CivkbmRyYXM7CisuSVAgXChidSA0CitpZGVlbGx0IGFuduRuZGVyIGRldCBlbiB2ZXJzaW9uaGFudGVyYWRlIHN5bWJvbGVyIGb2ciBhdHQgdXBwcuR0dGjlbGxhCitBQklcLXN0YWJpbGl0ZXQgdHJvdHMgaW50ZXJuYSDkbmRyaW5nYXIgb2NoIEFQSVwtdXT2a25pbmdhcjsKKy5JUCBcKGJ1IDQKK2RldCBleHBvcnRlcmFyIGludGUgcHJpdmF0YSBzeW1ib2xlciAoc+VkYW5hIHN5bWJvbGVyIGthbiB0YWdnYXMgbWVkCisib3B0aW9uYWwiIGb2ciBhdHQgZ+UgcnVudCBkZXR0YSkuCisuUAorTuRyIG1hbiB1bmRlcmjlbGxlciBzeW1ib2xmaWxlbiDkciBkZXQgbOR0dCBhdHQgdXBwdORja2Egc3ltYm9sZXIgc29tIGR5a2VyCit1cHAgb2NoIGb2cnN2aW5uZXIuIERldCDkciBzduVyYXJlIGF0dCB1cHB05GNrYSBpbmtvbXBhdGlibGEgQVBJXC0gb2NoCitBQklcLeRuZHJpbmdhci4gRGVuIHBha2V0YW5zdmFyaWdlIGL2ciBk5HJm9nIgbm9nZ3JhbnQgbORzYSBpZ2Vub20KK3VwcHN0cvZtc+RuZHJpbmdzbG9nZ2VuIGb2ciBmYWxsIGTlIHJlZ2xlcm5hIGb2ciBnb2QgaGFudGVyaW5nIGF2IGJpYmxpb3RlaworYnJ5dHMuIE9tIGV0dCBt9mpsaWd0IGZlbCB1cHB05GNrcyBi9nIgdXBwc3Ry9m1zZvZyZmF0dGFyZW4gbWVkZGVsYXMsIGTlIGRldAorYWxsdGlkIORyIGLkdHRyZSBhdHQgcHJvYmxlbWV0IHLkdHRhcyB1cHBzdHL2bXMg5G4gc3BlY2lmaWt0IGkgRGViaWFuLgorLlNIIEZMQUdHT1IKKy5UUCAKK1xmQlwtUFxmUFxmSXBha2V0YnlnZ2thdGFsb2dcZlAKK1P2ayBcZklwYWtldGJ5Z2drYXRhbG9nXGZQIGlzdORsbGV0IGb2ciBkZWJpYW4vdG1wLgorLlRQIAorXGZCXC1wXGZQXGZJcGFrZXRcZlAKK0RlZmluaWVyYSBwYWtldG5hbW5ldC4gS3LkdnMgb20gbWVyIORuIGV0dCBiaW7kcnBha2V0IGxpc3RhcyBpCitkZWJpYW4vY29udHJvbCAoZWxsZXIgb20gZGV0IGludGUgZmlubnMgbuVnb24gZGViaWFuL2NvbnRyb2xcLWZpbCkuCisuVFAgCitcZkJcLXZcZlBcZkl2ZXJzaW9uXGZQCitEZWZpbmllcmEgcGFrZXR2ZXJzaW9uLiBTdGFuZGFyZHbkcmRldCDkciB2ZXJzaW9uZW4gc29tIGjkbXRhcyBmcuVuCitkZWJpYW4vY2hhbmdlbG9nLiBLcuR2cyBvbSBwcm9ncmFtbWV0IGFucm9wYXMgdXRhbmb2ciBldHQga+RsbGtvZHNwYWtldHRy5GQuCisuVFAgCitcZkJcLWVcZlBcZkliaWJsaW90ZWtzZmlsXGZQCitBbmFseXNlcmFyIGVuZGFzdCBiaWJsaW90ZWsgc29tIGxpc3RhdHMgZXhwbGljaXQgaXN05GxsZXQgZvZyIGF0dCBoaXR0YSBhbGxhCitwdWJsaWthIGJpYmxpb3Rlay4gRHUga2FuIGFuduRuZGEgZXR0IHJlZ3VsauRydCB1dHRyeWNrIGkgXGZJYmlibGlvdGVrc2ZpbFxmUAorZvZyIGF0dCB0cuRmZmEgbXVsdGlwbGEgYmlibGlvdGVrIG1lZCBldHQgZW5kYSBhcmd1bWVudCAoYW5uYXJzIGJlaPZ2ZXIgZHUKK2ZsZXJhIFxmQlwtZVxmUCkuCisuVFAgCitcZkJcLUlcZlBcZklmaWxuYW1uXGZQCitBbnbkbmQgXGZJZmlsbmFtblxmUCBzb20gcmVmZXJlbnNmaWwgZvZyIGF0dCBnZW5lcmVyYSBzeW1ib2xmaWxlbiBzb20KK2ludGVncmVyYXMgaSBzauRsdmEgcGFrZXRldC4KKy5UUCAKK1xmQlwtT1xmUAorU2tyaXYgZGVuIGdlbmVyZXJhZGUgc3ltYm9sZmlsZW4gcOUgc3RhbmRhcmQgdXQsIGkgc3TkbGxldCBm9nIgYXR0IGxhZ3JhIGRlbgoraSBwYWtldGV0cyBieWdndHLkZC4KKy5UUCAgCitcZkJcLU9cZlBcZklmaWxuYW1uXGZQCitMYWdyYSBkZW4gZ2VuZXJlcmFkZSBzeW1ib2xmaWxlbiBzb20gXGZJZmlsbmFtblxmUC4gT20gXGZJZmlsbmFtblxmUCByZWRhbgorZXhpc3RlcmFyIGtvbW1lciBkZXNzIGlubmVo5WxsIGF0dCBhbnbkbmRhcyBzb20gYmFzIGb2ciBkZW4gZ2VuZXJlcmFkZQorc3ltYm9sZmlsZW4uIER1IGthbiBhbnbkbmRhIGRlbiBo5HIgZnVua3Rpb25lbiBm9nIgYXR0IHVwcGRhdGVyYSBlbgorc3ltYm9sZmlsIHPlIGF0dCBkZW4gbW90c3ZhcmFyIGVuIG55YXJlIHVwcHN0cvZtc3ZlcnNpb24gYXYgZGl0dCBiaWJsaW90ZWsuCisuVFAgCitcZkJcLXRcZlAKK1Nrcml2IHN5bWJvbGZpbGVuIGkgbWFsbFwtbORnZSBpc3TkbGxldCBm9nIgaSBmb3JtYXRldCBrb21wYXRpYmVsdCBtZWQKK1xmSWRlYlwtc3ltYm9scyg1KVxmUC4gSHV2dWRza2lsbG5hZGVuIORyIGF0dCBzeW1ib2xuYW1uIG9jaCB0YWdnYXIgc2tyaXZzIGkgc2luCitvcmlnaW5hbGZvcm0gaSBtYWxsXC1s5GdldCwgdGlsbCBza2lsbG5hZCBmcuVuIGRlIGVmdGVyYmVoYW5kbGFkZQorc3ltYm9sbmFtbmVuIG1lZCBib3J0dGFnbmEgdGFnZ2FyIHNvbSBza3JpdnMgaSBkZXQga29tcGF0aWJsYQorbORnZXQuIERlc3N1dG9tIGthbiB2aXNzYSBzeW1ib2xlciB1dGVzbHV0YXMgbuRyIGVuIHZhbmxpZworXGZJZGViXC1zeW1ib2xzKDUpXGZQXC1maWwgc2tyaXZzIChpIGVubGlnaGV0IG1lZCB0YWdnaGFudGVyaW5nc3JlZ2xlcm5hKSBtZWRhbgorYWxsYSBzeW1ib2xlciBhbGx0aWQgc2tyaXZzIHRpbGwgc3ltYm9sZmlsc21hbGxlbi4KKy5UUCAKK1xmQlwtY1xmUFxmSVswXC00XVxmUAorRGVmaW5pZXJhIHZpbGthIGtvbnRyb2xsZXIgc29tIHNrYWxsIHV0ZvZyYXMgbuRyIGRlbiBnZW5lcmVyYWRlIHN5bWJvbGZpbGVuCitq5G1m9nJzIG1lZCBkZW4gbWFsbGZpbCBzb20gYW525G5kcyBzb20gc3RhcnRwdW5rdC4gU29tIHN0YW5kYXJkIORyIG5pduVuCisxLiBHZW5vbSBhdHQg9mthIG5pduVuIHV0ZvZycyBmbGVyYSBrb250cm9sbGVyLCBpbmtsdXNpdmUgYWxsYSBrb250cm9sbGVyIHDlCits5GdyZSBuaXblLiBOaXblIDIgbWlzc2x5Y2thcyBvbSBueWEgc3ltYm9sZXIgaGFyIGludHJvZHVjZXJhdHMuIE5pduUgMworbWlzc2x5Y2thcyBvbSBu5WdyYSBiaWJsaW90ZWsgaGFyIGb2cnN2dW5uaXQuIE5pduUgNCBtaXNzbHlja2FzIG9tIG7lZ3JhCitiaWJsaW90ZWsgaGFyIGludHJvZHVjZXJhdHMuCisKK1bkcmRldCBrYW4g9nZlcnN0eXJhcyBtZWQgbWlsavZ2YXJpYWJlbG4gRFBLR19HRU5TWU1CT0xTX0NIRUNLX0xFVkVMLgorLlRQIAorXGZCXC1xXGZQCitI5WxsIHR5c3Qgb2NoIGdlbmVyZXJhIGFsZHJpZyBlbiBkaWZmZXJlbnMgbWVsbGFuIGRlbiBnZW5lcmVyYWRlIHN5bWJvbGZpbGVuCitvY2ggbWFsbGZpbGVuIHNvbSBhbnbkbmRlcyBzb20gc3RhcnRwdW5rdCBlbGxlciB2aXNhIHZhcm5pbmdhciBvbQorbnlhL2b2cmxvcmFkZSBiaWJsaW90ZWsgZWxsZXIgbnlhL2b2cmxvcmFkZSBzeW1ib2xlci4gRGVuIGjkciBmbGFnZ2FuIHRhcgorZW5kYXN0IGJvcnQgaW5mb3JtYXRpb25zdXRkYXRhLCBpbnRlIHNq5Gx2YSBrb250cm9sbGVyYW4gKHNlIGZsYWdnYW4gXGZJXC1jXGZQKS4KKy5UUCAKK1xmQlwtYVxmUFxmSWFya2l0ZWt0dXJcZlAKK0FudGEgXGZJYXJraXRla3R1clxmUCBzb20gduRyZGFya2l0ZWt0dXIgdmlkIGhhbnRlcmluZyBhdiBzeW1ib2xmaWxlci4gQW525G5kCitkZW4gaORyIGZsYWdnYW4gZvZyIGF0dCBnZW5lcmVyYSBlbiBzeW1ib2xmaWwgZWxsZXIgZGlmZmVyZW5zIGb2ciB2YWxmcmkKK2Fya2l0ZWt0dXIgc+UgbORuZ2UgZGVzcyBiaW7kcmVyIORyIHRpbGxn5G5nbGlnYS4KKy5UUCAKK1xmQlwtZFxmUAorQWt0aXZlcmFyIGZlbHP2a25pbmdzbORnZS4gRmxlcmEgbWVkZGVsYW5kZW4gdmlzYXMgZvZyIGF0dCBm9nJrbGFyYSB2YWQKK1xmQmRwa2dcLWdlbnN5bWJvbHNcZlAgZ/ZyLgorLlRQIAorXGZCXC1WXGZQCitBa3RpdmVyYSBwcmF0c2FtdCBs5GdlLiBEZW4gZ2VuZXJlcmFkZSBzeW1ib2xmaWxlbiBpbm5laOVsbGVyIGVqIGzkbmdyZQorcmVrb21tZW5kZXJhZGUgc3ltYm9sZXIgc29tIGtvbW1lbnRhcmVyLiBJIG1hbGxcLWzkZ2UgZvZsanMgZGVzc3V0b20KK232bnN0ZXJzeW1ib2xlciBhdiBrb21tZW50YXJlciBzb20gdmlzYXIgdmlsa2EgdmVya2xpZ2Egc3ltYm9sZXIgc29tIGhhcgordHLkZmZhdHMgYXYgbfZuc3RyZXQuCisuVFAgCitcZkJcLWhcZlAsIFxmQlwtXC1oZWxwXGZQCitWaXNhciBoauRscHNr5HJtIG9jaCBhdnNsdXRhci4KKy5UUCAKK1xmQlwtXC12ZXJzaW9uXGZQCitWaXNhciB2ZXJzaW9uIG9jaCBhdnNsdXRhci4KKy4KKy5TSCAiU0UgxFZFTiIKK1xmQmh0dHA6Ly9wZW9wbGUucmVkaGF0LmNvbS9kcmVwcGVyL3N5bWJvbFwtdmVyc2lvbmluZ1xmUAorLmJyCitcZkJodHRwOi8vcGVvcGxlLnJlZGhhdC5jb20vZHJlcHBlci9nb29kcHJhY3RpY2UucGRmXGZQCisuYnIKK1xmQmh0dHA6Ly9wZW9wbGUucmVkaGF0LmNvbS9kcmVwcGVyL2Rzb2hvd3RvLnBkZlxmUAorLmJyCitcZkJkZWJcLXN5bWJvbHNcZlAoNSksIFxmQmRwa2dcLXNobGliZGVwc1xmUCgxKS4KKy4KKy5TSCBG1lJGQVRUQVJFCitVcHBob3ZzcuR0dHNza3lkZGF0IKkgMjAwN1wtMjAwOSBSYXBoYetsIEhlcnR6b2cKKy5zcAorRGV0dGEg5HIgZnJpIHByb2dyYW12YXJhOyBzZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgZWxsZXIKK3NlbmFyZSBm9nIga29waWVyaW5nc3ZpbGxrb3IuIERldCBmaW5ucyBJTkdFTiBHQVJBTlRJLgorLlNIICLWVkVSU8RUVE5JTkciCitQZXRlciBLcmVmdGluZyBvY2ggRGFuaWVsIE55bGFuZGVyLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vc3YvZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuMSBiL2Rwa2ctMS4xNi4xLjEvbWFuL3N2L2Rwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjUzMDEyNgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL3N2L2Rwa2ctbWFpbnRzY3JpcHQtaGVscGVyLjEKQEAgLTAsMCArMSwxNDYgQEAKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlRIIGRwa2dcLW1haW50c2NyaXB0XC1oZWxwZXIgMSAyMDExXC0wOFwtMTQgRGViaWFucHJvamVrdGV0IERwa2dcLXN2aXRlbgorLlNIIE5BTU4KK2Rwa2dcLW1haW50c2NyaXB0XC1oZWxwZXIgXC0gZ+VyIHJ1bnQga+RuZGEgZHBrZ1wtYmVncuRuc25pbmdhciBpIHBha2V0c2tyaXB0CisuCisuU0ggU1lOT1BTCitcZkJkcGtnXC1tYWludHNjcmlwdFwtaGVscGVyXGZQIFxmSWtvbW1hbmRvXGZQIFtcZklmbGFnZ2FcZlAuLi5dIFxmQlwtXC1cZlAKK1xmSW1haW50XC1zY3JpcHRcLWZsYWdnYVxmUC4uLgorLgorLlNIICJLT01NQU5ET04gT0NIIFBBUkFNRVRSQVIiCisuUAorXGZCcm1fY29uZmZpbGVcZlAgXGZJa29uZmZpbFxmUCBbXGZJc2VuYXN0ZXZlcnNpb25cZlAgW1xmSXBha2V0XGZQXV0KKy5QCitcZkJtdl9jb25mZmlsZVxmUCBcZklnYW1tYWxrb25mZmlsXGZQIFxmSW55a29uZmZpbFxmUCBbXGZJc2VuYXN0ZXZlcmlzb25cZlAgW1xmSXBha2V0XGZQXV0KKy4KKy5TSCBCRVNLUklWTklORworLlAKK1Byb2dyYW1tZXQgc2tyZXZzIGb2ciBhdHQga/ZyYXMgaSBwYWtldHNrcmlwdCBm9nIgYXR0IHV0ZvZyYSBlbiBkZWwg5XRn5HJkZXIKK3NvbSBkcGtnICjkbm51KSBpbnRlIHNq5Gx2IGthbiBoYW50ZXJhLCBhbnRpbmdlbiBw5SBncnVuZCBhdiBkZXNpZ252YWwgZWxsZXIKK3DlIGdydW5kIGF2IG51dmFyYW5kZSBiZWdy5G5zbmluZ2FyLgorLlAKK03lbmdhIGF2IGRlc3NhIOV0Z+RyZGVyIGty5HZlciBzYW1vcmRuYWRlIOV0Z+RyZGVyIGZy5W4gZmxlcmEgcGFrZXRza3JpcHQKKyhcZkJwcmVpbnRcZlAsIFxmQnBvc3RpbnN0XGZQLCBcZkJwcmVybVxmUCwgXGZCcG9zdHJtXGZQKS4gRvZyIGF0dCB1bmR2aWthIG1pc3N0YWcKK3LkY2tlciBkZXQgYXR0IGzkZ2dhIGluIGV0dCBvY2ggc2FtbWEgYW5yb3AgaSBhbGxhIHNrcmlwdCwgdmFycOUgcHJvZ3JhbW1ldAorYW5wYXNzYXIgc2l0dCBiZXRlZW5kZSBiZXJvZW5kZSBw5SBtaWxq9nZhcmlhYmVsbiBcZkJEUEtHX01BSU5UU0NSSVBUX05BTUVcZlAKK29jaCBw5SBwYWtldHNrcmlwdGV0cyBwYXJhbWV0cmFyLCB2aWxrYSBkdSBt5XN0ZSB2aWRhcmVz5G5kYSBlZnRlciBkdWJibGEKK2JpbmRlc3RyZWNrLgorLgorLlNIICJLT05GRklMXC1SRUxBVEVSQURFIMVUR8RSREVSIgorLlAKK07kciBldHQgcGFrZXQgdXBwZ3JhZGVycyBrb21tZXIgZHBrZyBpbnRlIGF0dCBhdXRvbWF0aXNrdCB0YSBib3J0IGVuIGtvbmZmaWwKKyhlbiBrb25maWd1cmF0aW9uc2ZpbCBm9nIgdmlsa2VuIGRwa2cgc2thbGwgYmVo5WxsYSBhbnbkbmRhcmVucyDkbmRyaW5nYXIpCitvbSBkZW4gaW50ZSBmaW5ucyBpIGRlbiBueWEgdmVyc2lvbmVuLiBEZXQgZmlubnMgdHblIGdydW5kbORnZ2FuZGUgc2vkbCB0aWxsCitkZXR0YTsgZGVuIGb2cnN0YSDkciBhdHQga29uZmZpbGVuIGthbiBoYSB0YXBwYXRzIGF2IG1pc3N0YWcgb2NoIG7kc3RhCit2ZXJzaW9uIGthbiBrb21tYSBhdHQg5XRlcnN05GxsYSBkZW4sIHZhcnDlIGFuduRuZGFyZW4gaW50ZSB2aWxsIHRhcHBhIHNpbmEKK+RuZHJpbmdhci4gRGVuIGFuZHJhIORyIGF0dCBm9nIgYXR0IGf2cmEgZGV0IG32amxpZ3QgZvZyIHBha2V0IGF0dCBn5SD2dmVyCitmcuVuIGVuIGRwa2dcLWhhbnRlcmFkIGtvbmZmaWwgdGlsbCBlbiBmaWwgc29tIGhhbnRlcmFzIGF2IHBha2V0ZXRzIHNrcmlwdCwKK3ZhbmxpZ3R2aXMgZ2Vub20gZXR0IHZlcmt0eWcgc29tIGRlYmNvbmYgZWxsZXIgdWNmLgorLlAKK0RldCBpbm5lYuRyIGF0dCwgb20gcGFrZXRldCBtZW5hciBhdHQgYnl0YSBuYW1uIGVsbGVyIHRhIGJvcnQgZW4KK2tvbmZpZ3VyYXRpb25zZmlsLCBz5SBt5XN0ZSBkZXQgZ/ZyYSBz5SBleHBsaWNpdCwgb2NoIGTlIGthbgorXGZCZHBrZ1wtbWFpbnRzY3JpcHRcLWhlbHBlclxmUCBhbnbkbmRhcyBm9nIgYXR0IGltcGxlbWVudGVyYSBlbiBlbGVnYW50Citib3J0dGFnbmluZyBvY2ggZmx5dHRuaW5nIGF2IGtvbmZmaWxlciBpIHBha2V0c2NyaXB0ZW4uCisuCisuU1MgIlRBIEJPUlQgRU4gS09ORkZJTCIKKy5QCitPbSBlbiBrb25mZmlsIGhlbHQgdGFzIGJvcnQgYvZyIGRlbiB0YXMgYm9ydCBmcuVuIGRpc2ssIHPldmlkYSBpbnRlCithbnbkbmRhcmVuIGhhciBtb2RpZmllcmF0IGRlbi4gT20gZGV0IGZpbm5zIGxva2FsYSDkbmRyaW5nYXIgYvZyIGRlCitiaWJlaOVsbGFzLiBPbSBwYWtldHVwcGdyYWRlcmluZ2VuIGF2YnJ5dHMgYvZyIGludGUga29uZmZpbGVuIHNvbSBqdXN0IGJsZXYKK2b2cuVsZHJhcyBm9nJzdmlubmEuCisuUAorQWxsdCBkZXR0YSBpbXBsZW1lbnRlcmFzIGdlbm9tIGF0dCBs5GdnYSBpbiBm9mxqYW5kZSBza2Fsa29kIGkgcGFrZXRza3JpcHRlbgorXGZCcHJlaW5zdFxmUCwgXGZCcG9zdGluc3RcZlAgb2NoIFxmQnBvc3RybVxmUDoKKy5QCisgICAgZHBrZ1wtbWFpbnRzY3JpcHRcLWhlbHBlciBybV9jb25mZmlsZSBcZQorICAgICAgICBcZklrb25mZmlsXGZQIFxmSXNlbmFzdGV2ZXJzaW9uXGZQIFxmSXBha2V0XGZQIFwtXC0gIiRAIgorLlAKK1xmSWtvbmZmaWxcZlAg5HIgZmlsbmFtbmV0IHDlIGRlbiBrb25mZmlsIHNvbSBza2FsbCB0YXMgYm9ydC4gXGZJc2VuYXN0ZXZlcnNpb25cZlAKK+RyIGRlbiBzZW5hc3RlIHZlcnNpb25lbiBhdiBwYWtldGV0IHNvbSBpbm5laPZsbCBrb25mZmlsZW4gKGVsbGVyIGRlbgorc2VuYXN0ZSB2ZXJzaW9uZW4gYXYgcGFrZXRldCBzb20gaW50ZSB0b2cgaGFuZCBvbSBhdHQgdGEgYm9ydCBkZW4g9nZlcmJsaXZuYQora29uZmZpbGVuIG9tIGRldHRhIGludGUgb21lZGVsYmFydCBpbXBsZW1lbnRlcmFkZXMpLiBPbSBcZklzZW5hc3RldmVyc2lvblxmUCDkcgordG9tdCBlbGxlciBpbnRlIGFuZ2l2aXRzIGb2cnP2a3Mgb3BlcmF0aW9uZW4gdmFyamUgZ+VuZyBwYWtldGV0Cit1cHBncmFkZXJhcy4gXGZJcGFrZXRcZlAg5HIgcGFrZXRuYW1uZXQsIGRldCDkciBmcml2aWxsaWd0IGVmdGVyc29tIGRldCBmYWxsZXIKK3RpbGxiYWthIHDlICREUEtHX01BSU5TVENSSVBUX1BBQ0tBR0UgKHZhcmlhYmVsbiBz5HR0cyBhdiBkcGtnIHRpbGwgbmFtbmV0Citw5SBkZXQgcGFrZXQgc29tIGJlaGFuZGxhcykuIEFsbGEgcGFyYW1lcmFyIHRpbGwgcGFrZXRza3JpcHRldCBt5XN0ZQordmlkYXJlc+RuZGFzIHRpbGwgcHJvZ3JhbW1ldCBlZnRlciAiXC1cLSIuCisuUAorQWt0dWVsbCBpbXBsZW1lbnRhdGlvbjogaSBcZkJwcmVpbnN0XGZQIGtvbnRyb2xsZXJhcyBvbSBrb25mZmlsZW4g5G5kcmFkZXMgb2NoCitpIHPlIGZhbGwgYnl0cyBuYW1uZXQgcOUgZGVuIHRpbGwgYW50aW5nZW4gXGZJa29uZmZpbFxmUFxmQi5kcGtnXC1yZW1vdmVcZlAgKG9tCitpbnRlIG1vZGlmaWVyYWQpIGVsbGVyIHRpbGwgXGZJa29uZmZpbFxmUFxmQi5kcGtnXC1iYWNrdXBcZlAgKG9tIG1vZGlmaWVyYWQpLiBJCitcZkJwb3N0aW5zdFxmUCBieXRzIG5hbW5ldCBw5SBkZW4gc2lzdG7kbW5kYSBmaWxlbiB0aWxsIFxmSWtvbmZmaWxcZlBcZkIuZHBrZ1wtYmFrXGZQCitvY2ggYmVo5WxscyBzb20gcmVmZXJlbnMgb20gZGVuIGlubmVo5WxsZXIg5G5kcmluZ2FyIGF2IGFuduRuZGFyZW4sIG1lZGFuCitkZW4gdGlkaWdhcmUga29tbWVyIGF0dCB0YXMgYm9ydC4gT20gcGFrZXR1cHBncmFkZXJpbmdlbiBhdmJyeXRzIGtvbW1lcgorXGZCcG9zdHJtXGZQIGF0dCBvbWluc3RhbGxlcmEgZGVuIHVyc3BydW5nbGlnYSBrb25mZmlsZW4uIFZpZCBib3J0dGFnbmluZwora29tbWVyIFxmQnBvc3RybVxmUCDkdmVuIGF0dCB0YSBib3J0IFxmQi5kcGtnXC1iYWtcZlBcLWZpbGVuIHNvbSBiZWjlbGxpdHMgZnJhbSB0aWxsCitkZXNzLgorLgorLlNTICJCWVRBIE5BTU4gUMUgRU4gS09ORkZJTCIKKy5QCitPbSBlbiBrb25mZmlsIGZseXR0YXMgZnLlbiBlbiBwbGF0cyB0aWxsIGVuIGFubmFuIG3lc3RlIGR1IHNlIHRpbGwgYXR0IGR1CitmbHl0dGFyIG1lZCBldmVudHVlbGxhIORuZHJpbmdhciBnam9yZGEgYXYgYW525G5kYXJlbi4gRGV0dGEga2FuIGb2cnN0IHZlcmthCit2YXJhIGVuIGVua2VsIORuZHJpbmcgYXYgXGZCcHJlaW5zdFxmUFwtc2tyaXB0ZXQsIG1lbiBkZXQga29tbWVyIGxlZGEgdGlsbCBhdHQKK2FuduRuZGFyZW4gb21iZWRzIGF0dCBnb2Rr5G5uYSDkbmRyaW5nYXIgaSBrb25mZmlsZW4gZvZyIGRwa2csIOR2ZW4gb20gZGVubmUKK2ludGUg5HIgYW5zdmFyaWcgZvZyIGRlbS4KKy5QCitFbiBlbGVnYW50IG5hbW7kbmRyaW5nIGthbiBpbXBsZW1lbnRlcmFzIGdlbm9tIGF0dCBs5GdnYSBpbiBm9mxqYW5kZSBza2Fsa29kCitpIHBha2V0c2tyaXB0ZW4gXGZCcHJlaW5zdFxmUCwgXGZCcG9zdGluc3RcZlAgb2NoIFxmQnBvc3RybVxmUDoKKy5QCisgICAgZHBrZ1wtbWFpbnRzY3JpcHRcLWhlbHBlciBtdl9jb25mZmlsZSBcZQorICAgICAgICBcZklnYW1tYWxrb25mZmlsXGZQIFxmSW55a29uZmZpbFxmUCBcZklzZW5hc3RldmVyc2lvblxmUCBcZklwYWtldFxmUCBcLVwtICIkQCIKKy5QCitcZklnYW1tYWxrb25mZmlsXGZQIG9jaCBcZklueWtvbmZmaWxcZlAg5HIgZGV0IGdhbWxhIG9jaCBueWEgbmFtbmV0IHDlIGtvbmZmaWxlbgordmFycyBuYW1uIHNrYWxsIGJ5dGFzLiBcZklzZW5hc3RldmVyc2lvblxmUCDkciBkZW4gc2VuYXN0ZSB2ZXJzaW9uZW4gYXYgcGFrZXRldAorc29tIGlubmVo9mxsIGtvbmZmaWxlbiBtZWQgZGVzcyBnYW1sYSBuYW1uLiBPbSBcZklzZW5hc3RldmVyc2lvblxmUCDkciB0b20KK2VsbGVyIGludGUgaGFyIGFuZ2l2aXRzIGtvbW1lciBvcGVyYXRpb25lbiBhdHQgZvZyc/ZrYXMgdmFyamUgZ+VuZyBwYWtldGV0Cit1cHBncmFkZXJhcyAob2JzZXJ2ZXJhOiBkZXQg5HIgc+RrcmFyZSBhdHQgYW5nZSB2ZXJzaW9uZW4gb2NoIGTkcm1lZCBlbmRhc3QKK3V0ZvZyYSBvcGVyYXRpb25lbiBlbiBn5W5nKS4gXGZJcGFrZXRcZlAg5HIgcGFrZXRuYW1uZXQsIGRldCDkciBmcml2aWxsaWd0CitlZnRlcnNvbSBkZXQgZmFsbGVyIHRpbGxiYWthIHDlICREUEtHX01BSU5TVENSSVBUX1BBQ0tBR0UgKHZhcmlhYmVsbiBz5HR0cworYXYgZHBrZyB0aWxsIG5hbW5ldCBw5SBkZXQgcGFrZXQgc29tIGJlaGFuZGxhcykuIEFsbGEgcGFyYW1lcmFyIHRpbGwKK3Bha2V0c2tyaXB0ZXQgbeVzdGUgdmlkYXJlc+RuZGFzIHRpbGwgcHJvZ3JhbW1ldCBlZnRlciAiXC1cLSIuCisuUAorQWt0dWVsbCBpbXBsZW1lbnRhdGlvbjogSSBcZkJwcmVpbnN0XGZQIGtvbnRyb2xsZXJhcyBvbSBrb25mZmlsZW4gaGFyIORuZHJhdHMsCitvbSBqYSBs5G1uYXMgZGVuIGt2YXIgcOUgcGxhdHMsIGFubmFycyBieXRzIG5hbW5ldCBw5SBkZW4gdGlsbAorXGZJZ2FtbWFsa29uZmZpbFxmUFxmQi5kcGtnXC1yZW1vdmVcZlAuIFZpZCBrb25maWd1cmVyaW5nIHRhciBcZkJwb3N0aW5zdFxmUCBib3J0CitcZklnYW1tYWxrb25mZmlsXGZQXGZCLmRwa2dcLXJlbW92ZVxmUCBvY2ggYnl0ZXIgbmFtbiBw5SBcZklnYW1tYWxrb25mZmlsXGZQIHRpbGwKK1xmSW55a29uZmZpbFxmUCBvbSBcZklnYW1tYWxrb25mZmlsXGZQIGZvcnRmYXJhbmRlIGZpbm5zLiBWaWQgYXZicnV0ZW4KK3VwcGdyYWRlcmluZyBlbGxlciBpbnN0YWxsYXRpb24gYnl0ZXIgXGZCcG9zdHJtXGZQIHRpbGxiYWthIG5hbW5ldCBmcuVuCitcZklnYW1tYWxrb25mZmlsXGZQXGZCLmRwa2dcLXJlbW92ZVxmUCB0aWxsIFxmSWdhbW1hbGtvbmZmaWxcZlAgb20gc+UgYmVo9nZzLgorLgorLlNIICJJTlRFR1JFUkEgSSBQQUtFVCIKKy5QCitHaXZldCBhdHQgXGZCZHBrZ1wtbWFpbnRzY3JpcHRcLWhlbHBlclxmUCBhbnbkbmRzIGkgXGZCcHJlaW5zdFxmUCBz5SBpbm5lYuRyIGRldHRhCit2aWxsa29yc2z2c3QgYXR0IGV0dCBm9nJoYW5kc2Jlcm9lbmRlICgicHJlXC1kZXBlbmRlbmN5Iikga3LkdnMgZvZyIGF0dAorZvZyc+RrcmEgYXR0IGRlbiBu9mR25G5kaWdhIHZlcnNpb25lbiBhdiBkcGtnIHJlZGFuIGhhciBwYWNrYXRzIHVwcC4gRGVuCit2ZXJzaW9uIHNvbSBrcuR2cyBiZXJvciBw5SB2aWxrZXQga29tbWFuZG8gc29tIGFuduRuZHMsIGb2ciBcZkJybV9jb25mZmlsZVxmUAorb2NoIFxmQm12X2NvbmZmaWxlXGZQIORyIGRldCAxLjE1LjcuMjoKKy5QCisgICAgXGZCUHJlXC1EZXBlbmRzOlxmUCBkcGtnICg+PSAxLjE1LjcuMikKKy5QCitNZW4gaSBt5W5nYSBmYWxsIORyIG9wZXJhdGlvbmVuIHNvbSB1dGb2cnMgYXYgcHJvZ3JhbW1ldCBpbnRlIGtyaXRpc2t0IGb2cgorcGFrZXRldCwgb2NoIGlzdORsbGV0IGb2ciBhdHQgYW525G5kYSBldHQgZvZyaGFuZHNiZXJvZW5kZSBrYW4gdmkgYW5yb3BhCitwcm9ncmFtbWV0IGVuZGFzdCBvbSB2aSB2ZXQgYXR0IGRldCBu9mR25G5kaWdhIGtvbW1hbmRvdCBzdPZkcyBhdiBkZW4gbnUKK2luc3RhbGxlcmFkZSBkcGtnOgorLlAKKyAgICBpZiBkcGtnXC1tYWludHNjcmlwdFwtaGVscGVyIHN1cHBvcnRzIFxmSWtvbW1hbmRvXGZQOyB0aGVuCisgICAgICAgIGRwa2dcLW1haW50c2NyaXB0XC1oZWxwZXIgXGZJa29tbWFuZG9cZlAgLi4uCisgICAgZmkKKy4KKy5TSCBG1lJGQVRUQVJFCitVcHBob3ZzcuR0dHNza3lkZGF0IKkgMjAxMCBSYXBoYetsIEhlcnR6b2cKKy5icgorVXBwaG92c3LkdHRzc2t5ZGRhdCCpIDIwMDggSm9leSBIZXNzCisuYnIKK1VwcGhvdnNy5HR0c3NreWRkYXQgqSAyMDA3IEd1aWxsZW0gSm92ZXIKKy5icgorVXBwaG92c3LkdHRzc2t5ZGRhdCCpIDIwMDUgU2NvdHQgSmFtZXMgUmVtbmFudAorLnNwCitEZXR0YSDkciBmcmkgcHJvZ3JhbXZhcmE7IHNlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBlbGxlcgorc2VuYXJlIGb2ciBrb3BpZXJpbmdzdmlsbGtvci4gRGV0IGZpbm5zIElOR0VOIEdBUkFOVEkuCisKKy5TSCAi1lZFUlPEVFROSU5HIgorUGV0ZXIgS3JlZnRpbmcgb2NoIERhbmllbCBOeWxhbmRlci4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL3N2L2Rwa2ctbWVyZ2VjaGFuZ2Vsb2dzLjEgYi9kcGtnLTEuMTYuMS4xL21hbi9zdi9kcGtnLW1lcmdlY2hhbmdlbG9ncy4xCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjUyZjFlNmIKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9zdi9kcGtnLW1lcmdlY2hhbmdlbG9ncy4xCkBAIC0wLDAgKzEsNzYgQEAKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlRIIGRwa2dcLW1lcmdlY2hhbmdlbG9ncyAxIDIwMTFcLTA4XC0xNCBEZWJpYW5wcm9qZWt0ZXQgRHBrZ1wtc3ZpdGVuCisuU0ggTkFNTgorZHBrZ1wtbWVyZ2VjaGFuZ2Vsb2dzIFwtIHRyZXbkZ3NzYW1tYW5zbGFnbmluZyBhdiBEZWJpYW7kbmRyaW5nc2xvZ2dhcgorLgorLlNIIFNZTk9QUworXGZCZHBrZ1wtbWVyZ2VjaGFuZ2Vsb2dzXGZQIFtcZklmbGFnZ29yXGZQLi4uXSBcZklnYW1tYWxcZlAgXGZJbnlcLWFcZlAgXGZJbnlcLWJcZlAgW1xmSXV0XGZQXQorLgorLlNIIEJFU0tSSVZOSU5HCisuUAorUHJvZ3JhbW1ldCBrb21tZXIgYW525G5kYSBkZSAzIGFuZ2l2bmEgdmVyc2lvbmVybmEgYXYgRGViaWFu5G5kcmluZ3Nsb2dnZW4KK2b2ciBhdHQgc2thcGEgZW4gc2FtbWFuc2xhZ2VuIORuZHJpbmdzbG9nZ2ZpbC4gRGVuIHNrYXBhZGUg5G5kcmluZ3Nsb2dnZW4KK3NwYXJhcyBpIGZpbGVuIFxmSXV0XGZQIGVsbGVyIHNrcml2cyB1dCBw5SBzdGFuZGFyZCB1dCBvbSBkZW4gcGFyYW1ldGVybiBpbnRlCithbmdlcy4KKy5QCitFbnNraWxkYSBwb3N0ZXIgaWRlbnRpZmllcmFzIGF2IHNpdHQgdmVyc2lvbnNudW1tZXIgb2NoIGRlIGFudGFzIGludGUgc3TlIGkKK2tvbmZsaWt0IG1lZCB2YXJhbmRyYSwgZGUgc2zlcyBoZWx0IGVua2VsdCBpaG9wIGkgcuR0dCBvcmRuaW5nIChlbmxpZ3QKK21pbnNrYWRlIHZlcnNpb25zbnVtbWVyKS4gTuRyIFxmQlwtXC1tZXJnZVwtcHJlcmVsZWFzZXNcZlAgYW525G5kcyBpZ25vcmVyYXMKK3ZlcnNpb25zbnVtcmV0IGVmdGVyIGRldCBzaXN0YSB0aWxkZVwtdGVja25ldCwgc+UgYXR0IDEuMFwtMX5leHAxIG9jaAorMS4wXC0xfmV4cDUgYW5nZXMgdmFyYSBzYW1tYSBwb3N0LiBO5HIgc2FtbWEgdmVyc2lvbnNudW1tZXIg5HIgdGlsbGfkbmdsaWcgaQorYuVkZSBcZklueVwtYVxmUCBvY2ggXGZJbnlcLWJcZlAgZ/ZycyBldHQgZvZyc/ZrIHDlIGVuIHZhbmxpZyByYWRiYXNlcmFkCit0cmV25Gdzc2FtbWFuc2xhZ25pbmcgKGb2cnV0c2F0dCBhdHQgbW9kdWxlbiBBbGdvcml0aG06Ok1lcmdlIORyIHRpbGxn5G5nbGlnCitcW2VtXSBkZW4gaW5n5XIgaSBwYWtldGV0IGxpYmFsZ29yaXRobVwtbWVyZ2VcLXBlcmwgXFtlbV0gb20gaW50ZSBm5XIgZHUgZW4KK2dsb2JhbCBrb25mbGlrdCBw5SBpbm5laOVsbGV0IGkgcG9zdGVuKS4KKy4KKy5TSCBGTEFHR09SCisuVFAgCitcZkJcLVwtbWVyZ2VcLXByZXJlbGVhc2VzXGZQLCBcZkJcLW1cZlAKK0lnbm9yZXJhIGRlbGVuIGVmdGVyIGRldCBzaXN0YSB0aWxkZVwtdGVja25ldCBpIHZlcnNpb25zbnVtcmV0IHZpZAordmVyc2lvbnNq5G1m9nJlbHNlIGb2ciBhdHQgdGEgcmVkYSBw5SBvbSB0duUgcG9zdGVyIGFuc2VzIHZhcmEgZGVuc2FtbWEKK2VsbGVyIGludGUuCisuc3AKK0RldCBrYW4gdmFyYSBhbnbkbmRhcmJhcnQgb20gZHUgYW525G5kZXIgc2FtbWEg5G5kcmluZ3Nsb2dncG9zdCBtZW4g9mthcgordmVyc2lvbnNudW1yZXQgbWVkIGrkbW5hIG1lbGxhbnJ1bS4gVGlsbCBleGVtcGVsIGthbnNrZSBkdSBoYXIgMi4zXC0xfmV4cDEsCisyLjNcLTF+ZXhwMiwgLi4uIGZyYW0gdGlsbCBkZW4gb2ZmaWNpZWxsYSB1dGfldmFuIDIuM1wtMSBvY2ggZGUgaGFyIGFsbGEgc2FtbWEKK+RuZHJpbmdzbG9nZ3Bvc3Qgc29tIGhhciB25Hh0IGZyYW0g9nZlciB0aWQuCisuVFAgCitcZkJcLVwtaGVscFxmUAorVmlzYXIgaGrkbHBza+RybSBvY2ggYXZzbHV0YXIuCisuVFAgCitcZkJcLVwtdmVyc2lvblxmUAorVmlzYXIgdmVyc2lvbiBvY2ggYXZzbHV0YXIuCisuCisuU0ggQkVHUsROU05JTkdBUgorLlAKK0FsbHQgc29tIGludGUgdG9sa2FzIGF2IERwa2c6OkNoYW5nZWxvZyBm9nJzdmlubmVyIHVuZGVyCitzYW1tYW5zbGFnbmluZ2VuLiBEZXQga2FuIGfkbGxhIHNha2VyIHNvbSB2aW1cLWzkZ2VzcmFkZXIsIGtvbW1lbnRhcmVyIHNvbQoraW50ZSBza3VsbGUgdmFyYSBk5HIsIG9zdi4KKy4KKy5TSCAiSU5URUdSQVRJT04gTUVEIEdJVCIKKy5QCitPbSBkdSB2aWxsIGFuduRuZGEgZGV0IGjkciBwcm9ncmFtbWV0IGb2ciBhdHQgc2zlIGlob3AgRGViaWFu5G5kcmluZ3Nsb2dnYXIKK2kgZXR0IEdpdFwtYXJraXYgbeVzdGUgZHUgZvZyc3QgcmVnaXN0cmVyYSBlbiBueSBzYW1tYW5zbGFnbmluZ3Nkcml2cnV0aW4KKyhtZXJnZSBkcml2ZXIpIGkgXGZCLmdpdC9jb25maWdcZlAgZWxsZXIgXGZCfi8uZ2l0Y29uZmlnXGZQOgorLlAKKyBbbWVyZ2UgImRwa2dcLW1lcmdlY2hhbmdlbG9ncyJdCisgICAgIG5hbWUgPSBkZWJpYW4vY2hhbmdlbG9nXC1zYW1tYW5zbGFnbmluZ3Nkcml2cnV0aW4KKyAgICAgZHJpdmVyID0gZHBrZ1wtbWVyZ2VjaGFuZ2Vsb2dzIFwtbSAlTyAlQSAlQiAlQQorLlAKK0TkcmVmdGVyIG3lc3RlIGR1IHN05GxsYSBpbiBtZXJnZVwtYXR0cmlidXRldCBw5SBkZWJpYW4vY2hhbmdlbG9nXC1maWxlbiwKK2FudGluZ2VuIGkgXGZCLmdpdGF0dHJpYnV0ZXNcZlAgaSBzauRsdiBhcmtpdmV0LCBlbGxlciBpCitcJlxmQi5naXQvaW5mby9hdHRyaWJ1dGVzXGZQOgorLlAKKyBkZWJpYW4vY2hhbmdlbG9nIG1lcmdlPWRwa2dcLW1lcmdlY2hhbmdlbG9ncworLlNIIEbWUkZBVFRBUkUKK1VwcGhvdnNy5HR0c3NreWRkYXQgqSAyMDA5XC0yMDEwIFJhcGhh62wgSGVydHpvZworLnNwCitEZXR0YSDkciBmcmkgcHJvZ3JhbXZhcmE7IHNlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBlbGxlcgorc2VuYXJlIGb2ciBrb3BpZXJpbmdzdmlsbGtvci4gRGV0IGZpbm5zIElOR0VOIEdBUkFOVEkuCisKKy5TSCAi1lZFUlPEVFROSU5HIgorUGV0ZXIgS3JlZnRpbmcgb2NoIERhbmllbCBOeWxhbmRlci4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL3N2L2Rwa2ctbmFtZS4xIGIvZHBrZy0xLjE2LjEuMS9tYW4vc3YvZHBrZy1uYW1lLjEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjBhMGRmZgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL3N2L2Rwa2ctbmFtZS4xCkBAIC0wLDAgKzEsMTAwIEBACisuXCIgVGhpcyBpcyBhbiAtKi0gbnJvZmYgLSotIHNvdXJjZSBmaWxlLgorLlwiIGRwa2ctbmFtZSBhbmQgdGhpcyBtYW5wYWdlIGFyZSBDb3B5cmlnaHQgwqkgMTk5NSwxOTk2IGJ5IEVyaWNrIEJyYW5kZXJob3JzdC4KKy5cIgorLlwiIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSB2ZXJzaW9uIDIKKy5cIiBvciBsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiAgVGhlcmUgaXMgTk8gd2FycmFudHkuCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkcGtnXC1uYW1lIDEgMjAxMVwtMDhcLTE0IERlYmlhbnByb2pla3RldCBkcGtnXC12ZXJrdHlnZW4KKy5TSCBOQU1OCitkcGtnXC1uYW1lIFwtIGJ5dCBuYW1uZXQgcOUgRGViaWFucGFrZXQgdGlsbCBkZXQgZnVsbHN05G5kaWdhIHBha2V0bmFtbmV0CisuCisuU0ggU1lOT1BTCitcZkJkcGtnXC1uYW1lXGZQIFtcZklmbGFnZ2FcZlAuLi5dIFtcZkJcLVwtXGZQXSBcZklmaWxcZlAuLi4KKy4KKy5TSCBCRVNLUklWTklORworLlBQCitNYW51YWxzaWRhbiBkb2t1bWVudGVyYXIgcHJvZ3JhbW1ldCBcZkJkcGtnXC1uYW1lXGZQLCB2aWxrZXQgdGlsbGhhbmRhaOVsbGVyIGV0dAorZW5rZWx0IHPkdHQgYXR0IGJ5dGEgbmFtbiBw5SBcZkJEZWJpYW5cZlBwYWtldCB0aWxsIGRlcmFzIGZ1bGxzdORuZGlnYQorcGFrZXRuYW1uLiBFdHQgZnVsbHN05G5kaWd0IHBha2V0bmFtbiBiZXN05XIgYXYKK1xmSXBha2V0XGZQXGZCX1xmUFxmSXZlcnNpb25cZlBcZkJfXGZQXGZJYXJraXRla3R1clxmUFxmQi5cZlBcZklwYWtldHR5cFxmUCBvY2ggYW5nZXMgYXYKK2NvbnRyb2xcLWZpbGVuIGkgcGFrZXRldC4gXGZJVmVyc2lvblxmUFwtZGVsZW4gYXYgZmlsbmFtbmV0IGJlc3TlciBhdgordXBwc3Ry9m1zdmVyc2lvbnNpbmZvcm1hdGlvbiBvY2gga2FuIGV2ZW50dWVsbHQgZvZsamFzIGF2IGV0dCBiaW5kZXN0cmVjaworb2NoIHJldmlzaW9uc2luZm9ybWF0aW9uZW4uIFxmSVBha2V0dHlwXGZQXC1kZWxlbiBrb21tZXIgZnLlbiBm5Gx0ZXQKK1xmSXBhY2thZ2VcLXR5cGVcZlAgb20gZGV0IGZpbm5zLCBhbm5hcnMgXGZCZGViXGZQLgorLgorLlNIIEZMQUdHT1IKKy5UUCAKK1xmQlwtYVxmUCwgXGZCXC1cLW5vXC1hcmNoaXRlY3R1cmVcZlAKK0Rlc3RpbmF0aW9uc2ZpbG5hbW5ldCBrb21tZXIgaW50ZSBhdHQgaW5uZWjlbGxhIGluZm9ybWF0aW9uIG9tIGFya2l0ZWt0dXIuCisuVFAgCitcZkJcLWtcZlAsIFxmQlwtXC1zeW1saW5rXGZQCitTa2FwYSBlbiBzeW1ib2xpc2sgbORuayBpc3TkbGxldCBm9nIgYXR0IGZseXR0YS4KKy5UUCAKK1xmQlwtb1xmUCwgXGZCXC1cLW92ZXJ3cml0ZVxmUAorQmVmaW50bGlnYSBmaWxlciBrb21tZXIgYXR0IHNrcml2YXMg9nZlciBvbSBkZSBoYXIgc2FtbWEgbmFtbiBzb20KK2Rlc3RpbmF0aW9uc2ZpbG5hbW5ldC4KKy5UUCAKK1xmQlwtc1xmUCwgXGZCXC1cLXN1YmRpclxmUCBbXGZJa2F0YWxvZ1xmUF0KK0ZpbGVybmEga29tbWVyIGF0dCBmbHl0dGFzIHRpbGwgZW4gdW5kZXJrYXRhbG9nLiBPbSBrYXRhbG9nZW4gaSBhcmd1bWVudGV0CitleGlzdGVyYXIga29tbWVyIGZpbGVybmEgYXR0IGZseXR0YXMgaW4gaSBkZW4ga2F0YWxvZ2VuLCBvbSBpbnRlIGtvbW1lcgorbmFtbmV0IHDlIG3lbGthdGFsb2dlbiBhdHQgaORtdGFzIGZy5W4gc2VrdGlvbnNm5Gx0ZXQgaSBzdHlyZGVsZW4gYXYKK3Bha2V0ZXQuIE3lbGthdGFsb2dlbiBrb21tZXIgdmFyYQorInVuc3RhYmxlL2JpbmFyeVwtXGZJYXJraXRla3VyXGZQXGZJc2VrdGlvblxmUCIuIE9tIHNla3Rpb25lbiBpbnRlIGhpdHRhcyBpCitzdHlyZmlsZW4gYW50YXMgIm5vXC1zZWN0aW9uIiwgb2NoIGkgc+UgZmFsbCwgc2FtdCBm9nIgc2VrdGlvbmVybmEgIm5vblwtZnJlZSIKK29jaCAiY29udHJpYiIsIORyIG3lbGthdGFsb2dlbgorIlxmSXNla3Rpb25cZlAvYmluYXJ5XC1cZklhcmtpdGVrdHVyXGZQIi4gU2VrdGlvbnNm5Gx0ZXQg5HIgaW50ZSBu9mR25G5kaWd0LCBz5QorZmxlcmEgcGFrZXQgaGFtbmFyIGkga2F0YWxvZ2VuICJub1wtc2VjdGlvbiIuIEFuduRuZCBkZW4gaORyIGZsYWdnYW4gbWVkCit0aWxsZvZyc2lrdCwgZGVuIGthbiB2YXJhIHL2cmlnLgorLlRQIAorXGZCXC1jXGZQLCBcZkJcLVwtY3JlYXRlXC1kaXJcZlAKK0ZsYWdnYW4ga2FuIGFuduRuZGFzIHRpbGxzYW1tYW5zIG1lZCBcLXNcLWZsYWdnYW4uIE9tIGVuIG3lbGthdGFsb2cgaW50ZQorZXhpc3RlcmFyIGtvbW1lciBkZW4gYXR0IHNrYXBhcyBhdXRvbWF0aXNrdC4gXGZCQW525G5kIGRlbm5hIGZsYWdnYQorZvZyc2lrdGlndC5cZlAKKy5UUCAKK1xmQlwtaFxmUCwgXGZCXC1cLWhlbHBcZlAKK1Zpc2FyIGhq5Gxwc2vkcm0gb2NoIGF2c2x1dGFyLgorLlRQIAorXGZCXC12XGZQLCBcZkJcLVwtdmVyc2lvblxmUAorVmlzYXIgdmVyc2lvbiBvY2ggYXZzbHV0YXIuCisuCisuU0ggRVhFTVBFTAorLlRQIAorXGZCZHBrZ1wtbmFtZSBiYXJcLWZvby5kZWJcZlAKK0ZpbGVuICJiYXJcLWZvby5kZWIiIGtvbW1lciBhdHQgZuUgZGV0IG55YSBuYW1uZXQgYmFyXC1mb29fMS4wXC0yX2kzODYuZGViCitlbGxlciBu5WdvdCBsaWtuYW5kZSAoYmVyb2VuZGUgcOUgdmlsa2VuIGluZm9ybWF0aW9uIHNvbSBoaXR0YXMgaSBzdHlyZGVsZW4KK2F2ICJiYXJcLWZvby5kZWIiKS4KKy5UUCAKK1xmQmZpbmQgL3Jvb3QvZGViaWFuLyBcLW5hbWUgXChhcSouZGViXChhcSB8IHhhcmdzIFwtbiAxIGRwa2dcLW5hbWUgXC1hXGZQCitBbGxhIGZpbGVyIG1lZCDkbmRlbHNlbiAiZGViIiBpIGthdGFsb2dlbiAvcm9vdC9kZWJpYW4gb2NoIGRlc3MKK3VuZGVya2F0YWxvZ2VyIGtvbW1lciBhdHQgZuUgc2luYSBuYW1uIGVyc2F0dGEgbWVkIGRwa2dcLW5hbWUsIG9tIHPlIGJlaPZ2cywKK3RpbGwgbmFtbiB1dGFuIGFya2l0ZWt0dXJpbmZvcm1hdGlvbi4KKy5UUCAKK1xmQmZpbmQgXC1uYW1lIFwoYXEqLmRlYlwoYXEgfCB4YXJncyBcLW4gMSBkcGtnXC1uYW1lIFwtYSBcLW8gXC1zIFwtY1xmUAorXGZCR/ZyIGludGUgc+UgaORyLlxmUCBEaXR0IGFya2l2IGtvbW1lciBhdHQgcvZyYXMgdGlsbCBoZWx0IG9jaCBo5WxsZXQKK2VmdGVyc29tIG3lbmdhIHBha2V0IGludGUgaGFyIG7lZ29uIHNla3Rpb25zaW5mb3JtYXRpb24uIFxmQkf2ciBpbnRlIHPlIGjkci5cZlAKKy5UUCAKK1xmQmRwa2cgXC1cLWJ1aWxkIGRlYmlhblwtdG1wICYmIGRwa2dcLW5hbWUgXC1vIFwtcyAuLiBkZWJpYW5cLXRtcC5kZWJcZlAKK0thbiBhbnbkbmRhcyBu5HIgbnlhIHBha2V0IGJ5Z2dzLgorLgorLlNIIFBST0dSQU1GRUwKK1Zpc3NhIHBha2V0IGb2bGplciBpbnRlIG5hbW5zdHJ1a3R1cmVuCitcZklwYWtldFxmUFxmQl9cZlBcZkl2ZXJzaW9uXGZQXGZCX1xmUFxmSWFya2l0ZWt0dXJcZlBcZkIuZGViXGZQLiBQYWtldCB2YXJzIG5hbW4g5G5kcmF0cyBtZWQKK2Rwa2dcLW5hbWUga29tbWVyIGb2bGphIGRlbm5hIHN0cnVrdHVyLiBOb3JtYWx0IHDldmVya2FyIGRldHRhIGludGUgaHVyCitcZkJkc2VsZWN0XGZQKDEpL1xmQmRwa2dcZlAoMSkgaW5zdGFsbGVyYXIgcGFrZXQsIG1lbiB2aXNzYSBhbmRyYQoraW5zdGFsbGF0aW9uc3Zlcmt0eWcga2FuIHZhcmEgYmVyb2VuZGUgYXYgZGVubmEgbmFtbmdpdm5pbmdzc3RydWt0dXIuCisuCisuU0ggIlNFIMRWRU4iCitcZkJkZWJcZlAoNSksIFxmQmRlYlwtY29udHJvbFxmUCg1KSwgXGZCZHBrZ1xmUCgxKSwgXGZCZHBrZ1wtZGViXGZQKDEpLCBcZkJmaW5kXGZQKDEpLAorXGZCeGFyZ3NcZlAoMSkuCisuCisuU0ggRtZSRkFUVEFSRQorVXBwaG92c3LkdHRzc2t5ZGRhdCCpIDE5OTUsIDE5OTYgRXJpY2sgQnJhbmRlcmhvcnN0Cisuc3AKK0RldHRhIORyIGZyaSBwcm9ncmFtdmFyYTsgc2UgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAyIGVsbGVyCitzZW5hcmUgZvZyIGtvcGllcmluZ3N2aWxsa29yLiBEZXQgZmlubnMgSU5HRU4gR0FSQU5USS4KKy5TSCAi1lZFUlPEVFROSU5HIgorUGV0ZXIgS3JlZnRpbmcgb2NoIERhbmllbCBOeWxhbmRlci4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL3N2L2Rwa2ctcGFyc2VjaGFuZ2Vsb2cuMSBiL2Rwa2ctMS4xNi4xLjEvbWFuL3N2L2Rwa2ctcGFyc2VjaGFuZ2Vsb2cuMQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iMzA3NzcxCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vc3YvZHBrZy1wYXJzZWNoYW5nZWxvZy4xCkBAIC0wLDAgKzEsMTI3IEBACisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkcGtnXC1wYXJzZWNoYW5nZWxvZyAxIDIwMTFcLTA4XC0xNCBEZWJpYW5wcm9qZWt0ZXQgZHBrZ1wtdmVya3R5Z2VuCisuU0ggTkFNTgorZHBrZ1wtcGFyc2VjaGFuZ2Vsb2cgXC0gdG9sa2EgRGViaWFucyDkbmRyaW5nc2xvZ2dhcgorLgorLlNIIFNZTk9QUworXGZCZHBrZ1wtcGFyc2VjaGFuZ2Vsb2dcZlAgW1xmSWZsYWdnYVxmUC4uLl0KKy4KKy5TSCBCRVNLUklWTklORworXGZCZHBrZ1wtcGFyc2VjaGFuZ2Vsb2dcZlAgbORzZXIgb2NoIHRvbGthciDkbmRyaW5nc2xvZ2dlbiBpIGV0dCB1cHBhY2thdAorRGViaWFua+RsbGtvZHN0cuRkIG9jaCB2aXNhciBpbmZvcm1hdGlvbmVuIGkgZGVuIHDlIHN0YW5kYXJkIHV0IGkgZW4KK21hc2tpbmzkc2JhciBmb3JtLgorLgorLlNIIEZMQUdHT1IKKy5UUCAKK1xmQlwtbFxmUFxmSeRuZHJpbmdzbG9nZ2ZpbFxmUAorQW5nZXIg5G5kcmluZ3Nsb2dnZmlsZW4gc29tIGluZm9ybWF0aW9uIHNrYWxsIGzkc2FzIGZy5W4uIFN0YW5kYXJkduRyZGV0IORyCitcZkJkZWJpYW4vY2hhbmdlbG9nXGZQLgorLlRQIAorXGZCXC1GXGZQXGZJ5G5kcmluZ3Nsb2dnZm9ybWF0XGZQCitBbmdlciBmb3JtYXQgcOUg5G5kcmluZ3Nsb2dnZW4uIFNvbSBzdGFuZGFyZCBs5HNlcyBmb3JtYXRldCBmcuVuIGVuIHNwZWNpZWxsCityYWQgbuRyYSBzbHV0ZXQgYXYg5G5kcmluZ3Nsb2dnZW4sIGVsbGVyIHPlIGFuduRuZHMgRGViaWFucyBzdGFuZGFyZGZvcm1hdAorb20gaW5nZW4gaW5mb3JtYXRpb24gaGl0dGFzLgorLlRQIAorXGZCXC1MXGZQXGZJYmlibGlvdGVrc2thdGFsb2dcZlAKK0FuZ2UgZW4geXR0ZXJsaWdhcmUga2F0YWxvZyBhdHQgc/ZrYSBpIGVmdGVyIHBhcnNlcnNrcmlwdC4gS2F0YWxvZ2VuIHP2a3MKK2dlbm9tIGlubmFuIHN0YW5kYXJka2F0YWxvZ2VybmEsIHZpbGthIGb2ciBu5HJ2YXJhbmRlIORyCitcZkIvdXNyL2xvY2FsL2xpYi9kcGtnL3BhcnNlY2hhbmdlbG9nXGZQIG9jaCBcZkIvdXNyL2xpYi9kcGtnL3BhcnNlY2hhbmdlbG9nXGZQLgorLlRQIAorXGZCXC1oXGZQLCBcZkJcLVwtaGVscFxmUAorVmlzYXIgaGrkbHBza+RybSBvY2ggYXZzbHV0YXIuCisuVFAgCitcZkJcLVwtdmVyc2lvblxmUAorVmlzYXIgdmVyc2lvbiBvY2ggYXZzbHV0YXIuCisuU1MgUGFyc2VyZmxhZ2dvcgorRvZsamFuZGUgZmxhZ2dvciBrYW4gYW525G5kYXMgZvZyIGF0dCBzdHlyYSB1dGRhdGEgZnLlbiDkbmRyaW5nc2xvZ2dwYXJzZXJuLAordC5leC4gb21m5W5nZXQgYXYgcG9zdGVyIGVsbGVyIGZvcm1hdGV0IHDlIHV0ZGF0YS4gRGUgbeVzdGUgc3T2ZGFzIGF2CitwYXJzZXJza3JpcHRldCBpIGZy5WdhLiBTZSDkdmVuIFxmQlZBUk5JTkdBUlxmUC4KKy5UUCAKK1xmQlwtXC1mb3JtYXRcZlAgXGZJdXRkYXRhZm9ybWF0XGZQCitW5GxqIHV0ZGF0YWZvcm1hdC4gU3T2ZGRhIGZvcm1hdCDkciBm9nIgbuRydmFyYW5kZSBcZklkcGtnXGZQIG9jaAorXGZJcmZjODIyXGZQLiBcZklkcGtnXGZQIORyIGRldCBrbGFzc2lza2EgdXRkYXRhZm9ybWF0ZXQgKGZy5W4gaW5uYW4gZGVubmEgZmxhZ2dhCit2YXIgdGlsbGfkbmdsaWcpIG9jaCBm9nJ2YWxldC4gRGV0IGJlc3TlciBhdiBldHQgc3R5Y2tlIGkgRGViaWFucworY29udHJvbFwtZm9ybWF0IChzZSBcZkJkZWJcLWNvbnRyb2xcZlAoNSkpLiBPbSBtZXIg5G4gZW4gcG9zdCD2bnNrYXMgdGFzIGRlCitmbGVzdGEgZuRsdCBmcuVuIGRlbiBzZW5hc3RlIHBvc3RlbiwgZvZydXRvbSBvbSBhbm5hdCBhbmdlczoKKy5SUworLlRQIAorXGZCU291cmNlOlxmUCBcZklwYWtldG5hbW5cZlAKKy5UUCAKK1xmQlZlcnNpb246XGZQIFxmSXZlcnNpb25zXGZQCisuVFAgCitcZkJEaXN0cmlidXRpb246XGZQIFxmSW3lbHV0Z+V2YVxmUAorLlRQIAorXGZCVXJnZW5jeTpcZlAgXGZJYnLlZHNrYVxmUAorSPZnc3RhIGJy5WRza2FuIGF2IGFsbGEgZGUgaW5rbHVkZXJhZGUgcG9zdGVybmEgYW525G5kcy4KKy5UUCAKK1xmQk1haW50YWluZXI6XGZQIFxmSWb2cmZhdHRhcmVcZlAKKy5UUCAKK1xmQkRhdGU6XGZQIFxmSWRhdHVtXGZQCisuVFAgCitcZkJDbG9zZXM6XGZQIFxmSW51bW1lclwtcOVcLWZlbHJhcHBvcnRcZlAKK0Nsb3Nlc1wtZuRsdGV0IGkgYWxsYSBpbmtsdWRlcmFkZSBwb3N0ZXIgc2zlcyBzYW1tYW4uCisuVFAgCitcZkJDaGFuZ2VzOlxmUCBcZklwb3N0ZXJmcuVuXC3kbmRyaW5nc2xvZ2dlblxmUAorVGV4dGVuIGkgYWxsYSDkbmRyaW5nc2xvZ2dwb3N0ZXIgc2zlcyBzYW1tYW4uIEb2ciBhdHQgZ/ZyYSBm5Gx0ZXQgdGlsbAorZ2lsdGlndCBmbGVycmFkc2bkbHQgaSBEZWJpYW5cLWNvbnRyb2xcLWZvcm1hdCBlcnPkdHRzIHRvbW1hIHJhZGVyIG1lZCBlbgorZW5zYW0gcHVua3Qgb2NoIGFsbGEgcmFkZXIgZuVyIGV0dCB0ZWNrZW5zIGluZHJhZy4gRXhha3QgaW5uZWjlbGwgYmVyb3IgcOUKK2Zvcm1hdGV0IHDlIORuZHJpbmdzbG9nZ2VuLgorLlJFCisuSVAKK1l0dGVybGlnYXJlIGFuduRuZGFyZGVmaW5pZXJhZGUgZuRsdCBrYW4gZmlubmFzLgorLklQCitcZkJyZmM4MjJcZlBcLWZvcm1hdGV0IGFuduRuZGVyIHNhbW1hIGbkbHQsIG1lbiBnZXIgZXR0IHNlcGFyYXQgc3R5Y2tlIGb2ciB2YXJqZQor5G5kcmluZ3Nsb2dnc3Bvc3Qgc+UgYXR0IGFsbCBtZXRhZGF0YSBm9nIgdmFyamUgcG9zdCBiZWjlbGxzLgorLlRQIAorXGZCXC1cLXNpbmNlXGZQIFxmSXZlcnNpb25cZlAsIFxmQlwtc1xmUFxmSXZlcnNpb25cZlAsXGZCIFwtdlxmUFxmSXZlcnNpb25cZlAKK3RhIG1lZCBhbGxhIHBvc3RlciBlZnRlciBcZkl2ZXJzaW9uXGZQLgorLlRQIAorXGZCXC1cLXVudGlsXGZQIFxmSXZlcnNpb25cZlAsIFxmQlwtdVxmUFxmSXZlcnNpb25cZlAKK3RhIG1lZCBhbGxhIORuZHJpbmdhciBm9nJlIFxmSXZlcnNpb25cZlAuCisuVFAgCitcZkJcLVwtZnJvbVxmUCBcZkl2ZXJzaW9uXGZQLCBcZkJcLWZcZlBcZkl2ZXJzaW9uXGZQCit0YSBtZWQgYWxsYSDkbmRyaW5nYXIgZnLlbiBvY2ggbWVkIFxmSXZlcnNpb25cZlAuCisuVFAgCitcZkJcLVwtdG9cZlAgXGZJdmVyc2lvblxmUCwgXGZCXC10XGZQXGZJdmVyc2lvblxmUAordGEgbWVkIGFsbGEg5G5kcmluZ2FyIHRpbGwgb2NoIG1lZCBcZkl2ZXJzaW9uXGZQLgorLlRQIAorXGZCXC1cLWNvdW50XGZQIFxmSWFudGFsXGZQLCBcZkJcLWNcZlBcZklhbnRhbFxmUCwgXGZCXC1uXGZQXGZJYW50YWxcZlAKK3RhIG1lZCBcZklhbnRhbFxmUCDkbmRyaW5nYXIgZnLlbiBi9nJqYW4gKGVsbGVyIHNsdXRldCBvbSBcZklhbnRhbFxmUCDkciBs5GdyZSDkbgorMCkuCisuVFAgCitcZkJcLVwtb2Zmc2V0XGZQIFxmSWFudGFsXGZQLCBcZkJcLW9cZlBcZklhbnRhbFxmUAor5G5kcmEgc3RhcnRwdW5rdCBm9nIgXC1cLWNvdW50LCBy5GtuYXQgZnLlbiBi9nJqYW4gKGVsbGVyIHNsdXRldCBvbSBcZklhbnRhbFxmUAor5HIgbORncmUg5G4gMCkuCisuVFAgCitcZkJcLVwtYWxsXGZQCit0YSBtZWQgYWxsYSDkbmRyaW5nYXIuIE9ic2VydmVyYTog9nZyaWdhIGZsYWdnb3IgaGFyIGluZ2VuIGVmZmVrdCBu5HIgZGVubmEKK2FuduRuZHMuCisuCisuU0ggVkFSTklOR0FSCitEZSBvbGlrYSBcZkJwYXJzZXJmbGFnZ29ybmFcZlAsIGJvcnRzZXR0IFwtdiwgc3T2ZHMgZW5iYXJ0IGkgXGZCZHBrZ1xmUCB2ZXJzaW9uCisxLjE0LjE2IG9jaCBzZW5hcmUuIFRyZWRqZXBhcnRzcGFyc3JhciBm9nIgYW5kcmEg5G5kcmluZ3Nsb2dnZm9ybWF0IORuCitcZklkZWJpYW5cZlAga2Fuc2tlIGludGUgc3T2ZGVyIGFsbGEgZmxhZ2dvci4KKy4KKy5TSCBGSUxFUgorLlRQIAorXGZCZGViaWFuL2NoYW5nZWxvZ1xmUAorxG5kcmluZ3Nsb2dnc2ZpbGVuLCBhbnbkbmRzIGb2ciBhdHQgaORtdGEgdmVyc2lvbnNiZXJvZW5kZSBpbmZvcm1hdGlvbiBvbQora+RsbGtvZHNwYWtldGV0LCB0aWxsIGV4ZW1wZWwgYnLlZHNrYSBvY2ggdXRn5XZhIGb2ciBlbiBpbnPkbmRuaW5nLAor5G5kcmluZ2FybmEgc29tIHV0ZvZydHMgc2VkYW4gZW4gc3BlY2lmaWsgdmVyc2lvbiBvY2ggc2rkbHZhIHZlcnNpb25zbnVtcmV0Citw5SBr5Gxsa29kZW4uCisuCisuU0ggRtZSRkFUVEFSRQorVXBwaG92c3LkdHRzc2t5ZGRhdCCpIDE5OTVcLTE5OTYgSWFuIEphY2tzb24KKy5icgorVXBwaG92c3LkdHRzc2t5ZGRhdCCpIDIwMDAgV2ljaGVydCBBa2tlcm1hbgorLmJyCitVcHBob3ZzcuR0dHNza3lkZGF0IKkgMjAwNywgMjAwOCBGcmFuayBMaWNodGVuaGVsZAorLnNwCitEZXR0YSDkciBmcmkgcHJvZ3JhbXZhcmE7IHNlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBlbGxlcgorc2VuYXJlIGb2ciBrb3BpZXJpbmdzdmlsbGtvci4gRGV0IGZpbm5zIElOR0VOIEdBUkFOVEkuCisuU0ggItZWRVJTxFRUTklORyIKK1BldGVyIEtyZWZ0aW5nIG9jaCBEYW5pZWwgTnlsYW5kZXIuCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9zdi9kcGtnLXF1ZXJ5LjEgYi9kcGtnLTEuMTYuMS4xL21hbi9zdi9kcGtnLXF1ZXJ5LjEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTVlOGUxZAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL3N2L2Rwa2ctcXVlcnkuMQpAQCAtMCwwICsxLDIxOSBAQAorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlwiCisuXCIgVGhpcyBmaWxlIHdhcyBnZW5lcmF0ZWQgd2l0aCBwbzRhLiBUcmFuc2xhdGUgdGhlIHNvdXJjZSBmaWxlLgorLlwiCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuVEggZHBrZ1wtcXVlcnkgMSAyMDExXC0wOFwtMTQgRGViaWFucHJvamVrdGV0IERwa2dcLXN2aXRlbgorLlNIIE5BTU4KK2Rwa2dcLXF1ZXJ5IFwtIGV0dCB2ZXJrdHlnIGb2ciBhdHQgZnLlZ2EgZHBrZ1wtZGF0YWJhc2VuCisuCisuU0ggU1lOT1BTCitcZkJkcGtnXC1xdWVyeVxmUCBbXGZJZmxhZ2dvclxmUC4uLl0gXGZJ5XRn5HJkXGZQCisuCisuU0ggQkVTS1JJVk5JTkcKK1xmQmRwa2dcLXF1ZXJ5XGZQIORyIGV0dCB2ZXJrdHlnIGb2ciBhdHQgdmlzYSBpbmZvcm1hdGlvbiBvbSBwYWtldCBpCitcZkJkcGtnXGZQXC1kYXRhYmFzZW4uCisuCisuU0ggS09NTUFORE9OCisuVFAgCitcZkJcLWxcZlAsIFxmQlwtXC1saXN0XGZQIFtcZklwYWtldG5hbW5zbfZuc3RlclxmUCAuLi5dCitMaXN0YSBwYWtldCBzb20gbWF0Y2hhciBkZXQgZ2l2bmEgbfZuc3RyZXQuIE9tIGluZ2V0IFxmSXBha2V0bmFtbnNt9m5zdGVyXGZQCithbmdlcyBsaXN0YXMgYWxsYSBwYWtldCBpIFxmSS92YXIvbGliL2Rwa2cvc3RhdHVzXGZQLCBm9nJ1dG9tIGRlIHBha2V0IHNvbQorbWFya2VyYXRzIHNvbSBlaiBpbnN0YWxsZXJhZGUgKGR2cy4gZGUgc29tIHRpZGlnYXJlIGhhciBoZWx0IHRhZ2l0cworYm9ydCkuIFNrYWxldHMgbm9ybWFsYSBqb2tlcnRlY2tlbiB0aWxs5XRzIGkgXGZJcGFrZXRuYW1uc232bnN0ZXJcZlAuIE9ic2VydmVyYQorYXR0IGR1IHNhbm5vbGlrdCBt5XN0ZSBza3JpdmEgXGZJcGFrZXRuYW1uc232bnN0ZXJcZlAgaW5vbSBjaXRhdGlvbnN0ZWNrZW4gZvZyCithdHQgZvZyaGluZHJhIGF0dCBza2FsZXQgZXhwYW5kZXJhciBmaWxuYW1uZXQuIFRpbGwgZXhlbXBlbCBrb21tZXIgZvZsamFuZGUKK2xpc3RhIGFsbGEgcGFrZXQgdmFycyBuYW1uIGL2cmphciBw5SAibGliYzYiOgorCisubmYKKyAgXGZCZHBrZ1wtcXVlcnkgXC1sIFwoYXFsaWJjNipcKGFxXGZQCisuZmkKKworRGUgZvZyc3RhIHRyZSBrb2x1bW5lcm5hIGkgdXRkYXRhIHZpc2FyIPZuc2thZCDldGfkcmQsIHBha2V0c3RhdHVzIG9jaCBmZWwsCitpIGRlbiBvcmRuaW5nZW4uCisKK9Zuc2thZCDldGfkcmQKKy5uZgorICB1ID0gT2vkbmQKKyAgaSA9IEluc3RhbGxlcmEKKyAgaCA9IEjlbGwKKyAgciA9IFRhIGJvcnQKKyAgcCA9IFJlbnNhCisuZmkKKworUGFrZXRzdGF0dXM6CisubmYKKyAgbiA9IEVqIGluc3RhbGxlcmF0CisgIGMgPSBLb25maWd1cmF0aW9uc2ZpbGVyCisgIEggPSBIYWx2aW5zdGFsbGVyYXQKKyAgVSA9IFVwcGFja2F0CisgIEYgPSBIYWx2a29uZmlndXJlcmF0CisgIFcgPSBVdGz2c2FyZSB25G50YWQKKyAgdCA9IFV0bPZzYXJlIGb2cmVzdOVlbmRlCisgIGkgPSBJbnN0YWxsZXJhZAorLmZpCisKK0ZlbGZsYWdnb3I6CisubmYKKyAgPHRvbT4gPSAoaW5nZW4pCisgIFIgPSBPbWluc3RhbGxhdGlvbiBrcuR2cworLmZpCisKK0VuIHZlcnNhbCBzdGF0dXNcLSBlbGxlciBmZWxib2tzdGF2IGFuZ2VyIGF0dCBwYWtldGV0IHRyb2xpZ2VuIGtvbW1lciBvcnNha2EKK2FsbHZhcmxpZ2EgcHJvYmxlbS4gU2UgXGZCZHBrZ1xmUCgxKSBm9nIgaW5mb3JtYXRpb24gb20gc3RhdHVzIG9jaCBmbGFnZ29yCitvdmFuLgorCitVdGRhdGFmb3JtYXRldCBm9nIgZGVuIGjkciBmbGFnZ2FuIGthbiBpbnRlIGp1c3RlcmFzLCBtZW4gdmFyaWVyYXMKK2F1dG9tYXRpc2t0IGb2ciBhdHQgcGFzc2EgdGVybWluYWxicmVkZGVuLiBEZXQg5HIgYXZzZXR0IGb2ciBt5G5za2xpZ2EKK2zkc2FyZSwgb2NoIORyIGludGUgZW5rZWx0IG1hc2tpbmzkc2JhcnQuIFNlIFxmQlwtV1xmUCAoXGZCXC1cLXNob3dcZlApIG9jaAorXGZCXC1cLXNob3dmb3JtYXRcZlAgZvZyIGh1ciBkdSBrb25maWd1cmVyYXIgdXRkYXRhZm9ybWF0ZXQuCisuVFAgCitcZkJcLVdcZlAsIFxmQlwtXC1zaG93XGZQIFtcZklwYWtldG5hbW5zbfZuc3RlclxmUCAuLi5dCitQcmVjaXMgc29tIGZsYWdnYW4gXGZCXC1cLWxpc3RcZlAga29tbWVyIGF0dCBwYWtldCBzb20gbWF0Y2hhciBkZXQgZ2l2bmEgbfZuc3RyZXQKK2F0dCB2aXNhcy4gVXRkYXRhdCBrYW4gZG9jayBza3LkZGRhcnN5cyBtZWQgZmxhZ2dhbgorXGZCXC1cLXNob3dmb3JtYXRcZlAuIFN0YW5kYXJkdXRkYXRhZm9ybWF0ZXQg5HIgZW4gcmFkIHBlciBwYWtldCBzb20gdHLkZmZhcywgZORyCit2YXJqZSByYWQgaW5uZWjlbGxlciBuYW1uIG9jaCBpbnN0YWxsZXJhZCB2ZXJzaW9uIGF2IHBha2V0ZXQsIGF2ZGVsYXQgbWVkCitldHQgdGFidWxhdG9ydGVja2VuLgorLlRQIAorXGZCXC1zXGZQLCBcZkJcLVwtc3RhdHVzXGZQIFxmSXBha2V0bmFtblxmUCAuLi4KK1JhcHBvcnRlcmEgc3RhdHVzIG9tIGRldCBhbmdpdm5hIHBha2V0ZXQuICBEZXR0YSBhbHRlcm5hdGl2IHZpc2FyIGhlbHQKK2Vua2VsdCBwb3N0ZW4gaSBzdGF0dXNkYXRhYmFzZW4gZvZyIGluc3RhbGxlcmFkZSBwYWtldC4gT20gZmxlcmEKK1xmSXBha2V0bmFtblxmUCBhbmdlcyBhdmRlbGFzIGRlIGVmdGVyZnLlZ2FkZSBzdGF0dXNwb3N0ZXJuYSBtZWQgZW4gdG9tcmFkLgorLlRQIAorXGZCXC1MXGZQLCBcZkJcLVwtbGlzdGZpbGVzXGZQIFxmSXBha2V0bmFtblxmUCAuLi4KK0xpc3RhciBmaWxlciBzb20gaW5zdGFsbGVyYXRzIHDlIGRpdHQgc3lzdGVtIGZy5W4gXGZJcGFrZXRuYW1uXGZQLiBPbSBmbGVyYQorXGZJcGFrZXRuYW1uXGZQIGFuZ2VzIGF2ZGVsYXMgZGVuIGVmdGVyZnLlZ2FkZSBmaWxsaXN0YW4gbWVkIGVuCit0b21yYWQuIE9ic2VydmVyYSBhdHQgZmlsZXIgc29tIHNrYXBhdHMgYXYgcGFrZXRzcGVjaWZpa2EKK2luc3RhbGxhdGlvbnNza3JpcHQgaW50ZSB2aXNhcworLlRQIAorXGZCXC1jXGZQLCBcZkJcLVwtY29udHJvbFwtcGF0aFxmUCBcZklwYWtldG5hbW5cZlAgW1xmSWNvbnRyb2xcLWZpbG5hbW5cZlBdCitWaXNhciBz9mt25Gdhcm5hIHRpbGwgY29udHJvbFwtZmlsZXJuYSBzb20gaW5zdGFsbGVyYXRzIHDlIGRpdHQgc3lzdGVtIGb2cgorXGZJcGFrZXRuYW1uXGZQLiBPbSBcZkljb250cm9sXC1maWxcZlAgYW5nZXMgdmlzYXMgZW5kYXN0IHP2a3bkZ2VuIGb2ciBkZW4KK2NvbnRyb2xcLWZpbGVuLCBvbSBkZW4gZmlubnMuIFxmQlZhcm5pbmdcZlA6IGtvbW1hbmRvdCDkciBoYWx29nBwZXQsIGRldCBi9nIKK2FuduRuZGFzIGVuZGFzdCBzb20gZW4gc2lzdGEgZGVzcGVyYXQg5XRn5HJkIG9tIGRldCBpbnRlIGZpbm5zIG7lZ290IGFubmF0CitncuRuc3NuaXR0LiBEZXQga2FuIGF2cuVkYXMgZnLlbiBzZW5hcmUgb20gYuR0dHJlIGdy5G5zc25pdHQgZWxsZXIgZGUKK251dmFyYW5kZSBhcmtpdGVrdG9uaXNrYSBiZWdy5G5zbmluZ2FybmEgaGFyIGz2c3RzLgorLlRQIAorXGZCXC1TXGZQLCBcZkJcLVwtc2VhcmNoXGZQIFxmSWZpbG5hbW5zc/ZrbfZuc3RlclxmUCAuLi4KK1P2ayBlZnRlciBwYWtldCBzb20g5GdlciBmaWxlciBzb20gbW90c3ZhcmFyIGRldCBhbmdpdm5hIG32bnN0cmV0LiBBbGxhCitza2FsZXRzIHZhbmxpZ2Egam9rZXJ0ZWNrZW4ga2FuIGFuduRuZGFzIGkgbfZuc3RyZXQuIEtvbW1hbmRvdCBrb21tZXIgaW50ZQorYXR0IHZpc2EgZXh0cmFmaWxlciBzb20gc2thcGFzIGF2IHBha2V0c2tyaXB0LCBlaiBoZWxsZXIga29tbWVyIGRldCBhdHQgdmlzYQorYWx0ZXJuYXRpdi4KKy5UUCAKK1xmQlwtcFxmUCwgXGZCXC1cLXByaW50XC1hdmFpbFxmUCBcZklwYWtldG5hbW5cZlAKK1Zpc2FyIGluZm9ybWF0aW9uIG9tIFxmSXBha2V0bmFtblxmUCwgZW5saWd0IHZhZCBzb20gZmlubnMgaQorXGZJL3Zhci9saWIvZHBrZy9hdmFpbGFibGVcZlAuIE9tIGZsZXJhIFxmSXBha2V0bmFtblxmUCBhbmdlcyBhdmRlbGFzIGRlCitlZnRlcmZy5WdhZGUgcG9zdGVybmEgdXIgXGZJYXZhaWxhYmxlXGZQXC1maWxlbiBtZWQgZW4gdG9tcmFkLgorCitBbnbkbmRlciBkdSBldHQgQVBUXC1iYXNlcmF0IHNrYWwgYvZyIGR1IGlzdORsbGV0IGFuduRuZGEgXGZCYXB0XC1jYWNoZSBzaG93XGZQCitcZklwYWtldG5hbW5cZlAsIGTlIFxmSWF2YWlsYWJsZVxmUFwtZmlsZW4gZW5kYXN0IOBqb3VyZvZycyBvbSBcZkJkc2VsZWN0XGZQIGFuduRuZHMuCisuVFAgCitcZkJcLWhcZlAsIFxmQlwtXC1oZWxwXGZQCitWaXNhciBoauRscHNr5HJtIG9jaCBhdnNsdXRhci4KKy5UUCAKK1xmQlwtXC12ZXJzaW9uXGZQCitWaXNhciB2ZXJzaW9uIG9jaCBhdnNsdXRhci4KKy4KKy5TSCBGTEFHR09SCisuVFAgCitcZkJcLVwtYWRtaW5kaXI9XGZQXGZJa2F0XGZQCivEbmRyYSBwbGF0c2VuIGb2ciBcZkJkcGtnXGZQXC1kYXRhYmFzZW4uIEb2cnZhbCDkciBcZkkvdmFyL2xpYi9kcGtnXGZQLgorLlRQIAorXGZCXC1mXGZQLCBcZkJcLVwtc2hvd2Zvcm1hdD1cZlBcZklmb3JtYXRcZlAKK0ZsYWdnYW4gYW525G5kcyBm9nIgYXR0IGFuZ2UgZm9ybWF0ZXQgcOUgdXRkYXRhIHNvbSBza2FwYXMgYXYKK1xmQlwtXC1zaG93XGZQLiBGb3JtYXRldCDkciBlbiBzdHLkbmcgc29tIG1hdGFzIHV0IGb2ciB2YXJqZSBwYWtldCBpIGxpc3Rhbi4KKworSSBmb3JtYXRzdHLkbmdlbiBpbmxlZHMgZvZsamFuZGUgc3R5cnNla3ZlbnNlciBtZWQgXChscVxmQlxlXGZQXChycToKKworLm5mCisgICAgXGZCXGVuXGZQICByYWRtYXRuaW5nCisgICAgXGZCXGVyXGZQICB2YWducmV0dXIKKyAgICBcZkJcZXRcZlAgIHRhYnVsYXRvcgorLmZpCisKK1wobHFcZkJcZVxmUFwocnEgZvZyZSBldHQgYW5uYXQgdGVja2VuIHVuZGVydHJ5Y2tlbiBlbiBzcGVjaWVsbCBiZXR5ZGVsc2UgZvZyCitkZXQgZWZ0ZXJm9mxqYW5kZSB0ZWNrbmV0LCB2aWxrZXQg5HIga2FuIGFuduRuZGFzIGb2ciBcKGxxXGZCXGVcZlBcKHJxIG9jaAorXChscVxmQiRcZlBcKHJxLgorCitQYWtldGluZm9ybWF0aW9uIGthbiBs5GdnYXMgaW4gZ2Vub20gYXR0IHPkdHRhIGluIHZhcmlhYmVscmVmZXJlbnNlciB0aWxsCitwYWtldGbkbHQsIHDlIHN5bnRheGVuIFwobHFcZkIke1xmUFxmSWZpZWxkXGZQW1xmQjtcZlBcZkl3aWR0aFxmUF1cZkJ9XGZQXChycS4gRuRsdCBza3JpdnMKK2j2Z2VyanVzdGVyYWRlIHPldmlkYSBpbnRlIGJyZWRkZW4g5HIgbmVnYXRpdiBpIHZpbGtldCBmYWxsIHbkbnN0ZXJqdXN0ZXJpbmcKK2tvbW1lciBhdHQgYW525G5kYXMuIEb2bGphbmRlIFxmSWbkbHRcZlAgc3T2ZHMsIG1lbiBkZSDkciBpbnRlIG72ZHbkbmRpZ3R2aXMKK3RpbGxn5G5nbGlnYSBpIHN0YXR1c2ZpbGVuIChlbmRhc3QgaW50ZXJuYSBm5Gx0IG9jaCBm5Gx0IHNvbSBmaW5ucyBpCitiaW7kcnBha2V0ZXQgaGFtbmFyIGTkcik6CisKKy5uZgorICAgIFxmQkFyY2hpdGVjdHVyZVxmUAorICAgIFxmQkJ1Z3NcZlAKKyAgICBcZkJDb25mZmlsZXNcZlAgKGludGVybnQpCisgICAgXGZCQ29uZmlnXC1WZXJzaW9uXGZQIChpbnRlcm50KQorICAgIFxmQkNvbmZsaWN0c1xmUAorICAgIFxmQkJyZWFrc1xmUAorICAgIFxmQkRlcGVuZHNcZlAKKyAgICBcZkJEZXNjcmlwdGlvblxmUAorICAgIFxmQkVuaGFuY2VzXGZQCisgICAgXGZCRXNzZW50aWFsXGZQCisgICAgXGZCRmlsZW5hbWVcZlAgKGludGVybnQsIHNrYWxyZWxhdGVyYXQpCisgICAgXGZCSG9tZXBhZ2VcZlAKKyAgICBcZkJJbnN0YWxsZWRcLVNpemVcZlAKKyAgICBcZkJNRDVzdW1cZlAgKGludGVybnQsIHNrYWxyZWxhdGVyYXQpCisgICAgXGZCTVNET1NcLUZpbGVuYW1lXGZQIChpbnRlcm50LCBza2FscmVsYXRlcmF0KQorICAgIFxmQk1haW50YWluZXJcZlAKKyAgICBcZkJPcmlnaW5cZlAKKyAgICBcZkJQYWNrYWdlXGZQCisgICAgXGZCUHJlXC1EZXBlbmRzXGZQCisgICAgXGZCUHJpb3JpdHlcZlAKKyAgICBcZkJQcm92aWRlc1xmUAorICAgIFxmQlJlY29tbWVuZHNcZlAKKyAgICBcZkJSZXBsYWNlc1xmUAorICAgIFxmQlJldmlzaW9uXGZQIChm9nLlbGRyYXQpCisgICAgXGZCU2VjdGlvblxmUAorICAgIFxmQlNpemVcZlAgIChpbnRlcm50LCBza2FscmVsYXRlcmF0KQorICAgIFxmQlNvdXJjZVxmUAorICAgIFxmQlN0YXR1c1xmUCAoaW50ZXJudCkKKyAgICBcZkJTdWdnZXN0c1xmUAorICAgIFxmQlRhZ1xmUCAobm9ybWFsdCBpbnRlIGkgLmRlYiwgdXRhbiBpIGFya2l2ZXRzIFBhY2thZ2VzXC1maWxlcikKKyAgICBcZkJUcmlnZ2Vyc1wtQXdhaXRlZFxmUCAoaW50ZXJudCkgICAgXGZCVHJpZ2dlcnNcLVBlbmRpbmdcZlAgKGludGVybnQpICAgIFxmQlZlcnNpb25cZlAKKy5maQorCitTdGFuZGFyZGZvcm1hdGV0IORyIFwobHFcZkIke1BhY2thZ2V9XGV0JHtWZXJzaW9ufVxlblxmUFwocnEuIEFsbGEgYW5kcmEgZuRsdAorc29tIGZpbm5zIGkgc3RhdHVzZmlsZW4gKOR2ZW4gYW525G5kYXJkZWZpbmllcmFkZSBm5Gx0KSBrYW4gb2Nrc+UgaORtdGFzLiBEZQordmlzYXMgZG9jayBzb20gZGUg5HIsIGluZ2VuIGtvbnZlcnRlcmluZyBlbGxlciBmZWxrb3JyaWdlcmluZyBn9nJzIHDlCitkZW0uIEb2ciBhdHQgaORtdGEgbmFtbmV0IHDlIHBha2V0YW5zdmFyaWcgb2NoIGluc3RhbGxlcmFkIHZlcnNpb24gYXYgZHBrZworb2NoIGthbiBkdSBr9nJhOgorCisubmYKKyAgXGZCZHBrZ1wtcXVlcnkgXC1XIFwtZj1cKGFxJHtQYWNrYWdlfSAke1ZlcnNpb259XGV0JHtNYWludGFpbmVyfVxlblwoYXEgZHBrZ1xmUAorLmZpCisuCisuU0ggUkVUVVJWxFJERQorLlRQIAorXGZCMFxmUAorRGVuIPZuc2thZGUgZnLlZ2FuIHV0ZvZyZGVzIHV0YW4gZmVsLgorLlRQIAorXGZCMVxmUAorUHJvYmxlbSB1cHBzdG9kIHZpZCB0b2xrbmluZyBhdiBrb21tYW5kb3JhZGVuIGVsbGVyIG7kciBmcuVnYW4gc2t1bGxlCit1dGb2cmFzLCB0aWxsIGV4ZW1wZWwgYXR0IGluZ2VuIGZpbCBlbGxlciBwYWtldCBoaXR0YWRlcyAoZvZydXRvbSBm9nIKK1wtXC1jb250cm9sXC1wYXRoKS4KKy4KKy5TSCBNSUxK1lZBUklBQkxFUgorLlRQIAorXGZCRFBLR19BRE1JTkRJUlxmUAorT20gc2F0dCwgb2NoIGZsYWdnYW4gXGZCXC1cLWFkbWluZGlyXGZQIGludGUgaGFyIGFuZ2l2aXRzLCBhbnbkbmRzIHbkcmRldCBzb20KK2RhdGFrYXRhbG9nIGb2ciBkcGtnLgorLlRQIAorXGZCQ09MVU1OU1xmUAorSW5zdORsbG5pbmdlbiBw5XZlcmthciB1dGRhdGEgZnLlbiBrb21tYW5kb3QgXGZCXC1cLWxpc3RcZlAgZ2Vub20gYXR0IORuZHJhCiticmVkZGVuIHDlIGRlc3MgdXRkYXRhLgorLgorLlNIIEbWUkZBVFRBUkUKK1VwcGhvdnNy5HR0c3NreWRkYXQgqSAyMDAxIFdpY2hlcnQgQWtrZXJtYW4KKy5zcAorRGV0dGEg5HIgZnJpIHByb2dyYW12YXJhOyBzZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgZWxsZXIKK3NlbmFyZSBm9nIga29waWVyaW5nc3ZpbGxrb3IuIERldCBmaW5ucyBJTkdFTiBHQVJBTlRJLgorLgorLlNIICJTRSDEVkVOIgorXGZCZHBrZ1xmUCgxKS4KKworLlNIICLWVkVSU8RUVE5JTkciCitQZXRlciBLcmVmdGluZyBvY2ggRGFuaWVsIE55bGFuZGVyLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vc3YvZHBrZy1zY2FucGFja2FnZXMuMSBiL2Rwa2ctMS4xNi4xLjEvbWFuL3N2L2Rwa2ctc2NhbnBhY2thZ2VzLjEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYWE3YTdkNAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL3N2L2Rwa2ctc2NhbnBhY2thZ2VzLjEKQEAgLTAsMCArMSw5OCBAQAorLlwiIENvcHlyaWdodCDCqSAxOTk2IE1pY2hhZWwgU2hpZWxkcyA8c2hpZWxkc0Bjcm9zc2xpbmsubmV0PgorLlwiIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IG1heSByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorLlwiIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisuXCIgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKy5cIiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorLlwiCisuXCIgVGhpcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorLlwiIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisuXCIgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorLlwiIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisuXCIKKy5cIiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorLlwiIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlwiCisuXCIgVGhpcyBmaWxlIHdhcyBnZW5lcmF0ZWQgd2l0aCBwbzRhLiBUcmFuc2xhdGUgdGhlIHNvdXJjZSBmaWxlLgorLlwiCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuVEggZHBrZ1wtc2NhbnBhY2thZ2VzIDEgMjAxMVwtMDhcLTE0IERlYmlhbnByb2pla3RldCBkcGtnXC12ZXJrdHlnZW4KKy5TSCBOQU1OCitkcGtnXC1zY2FucGFja2FnZXMgXC0gc2thcGFyIGluZGV4ZmlsZXJuYSBQYWNrYWdlcworLgorLlNIIFNZTk9QUworXGZCZHBrZ1wtc2NhbnBhY2thZ2VzXGZQIFtcZklmbGFnZ2FcZlAuLi5dIFxmSWJpbuRya2F0YWxvZ1xmUCBbXGZJ9nZlcnN0eXJuaW5nc2ZpbFxmUAorW1xmSXP2a3bkZ3NwcmVmaXhcZlBdXSBcZkI+XGZQIFxmSVBhY2thZ2VzXGZQCisuCisuU0ggQkVTS1JJVk5JTkcKK1xmQmRwa2dcLXNjYW5wYWNrYWdlc1xmUCBn5XIgZ2Vub20gZXR0IHRy5GQgYXYgRGViaWFuYmlu5HJwYWtldCBvY2ggc2thcGFyIGVuCitQYWNrYWdlc1wtZmlsLCBzb20gXGZCYXB0XGZQKDgpLCBcZkJkc2VsZWN0XGZQKDgpIG9zdi4gYW525G5kZXIgZvZyIGF0dCBiZXLkdHRhIGb2cgorYW525G5kYXJlbiB2aWxrYSBwYWtldCBzb20ga2FuIGluc3RhbGxlcmFzLiBEZXNzYSBQYWNrYWdlc1wtZmlsZXIg5HIgZGVzYW1tYQorc29tIGRlIHNvbSBmaW5ucyBw5SBEZWJpYW5hcmtpdnNwZWdsYXIgb2NoIGNkXC1yb206YXIuIER1IGthbiBhbnbkbmRhCitcZkJkcGtnXC1zY2FucGFja2FnZXNcZlAgc2rkbHYgZvZyIGF0dCBza2FwYSBlbiBrYXRhbG9nIG1lZCBsb2thbGEgcGFrZXQgYXR0CitpbnN0YWxsZXJhIHDlIGVuIGtsYXNlIG1hc2tpbmVyLgorLlBQCitcZkJPYnNlcnZlcmE6XGZQIE9tIGR1IHZpbGwgbORzYSBkZW4gc2thcGFkZSBQYWNrYWdlc1wtZmlsZW4gbWVkIFxmQmFwdFxmUCBt5XN0ZSBkdQorYW50YWdsaWdlbiBrb21wcmltZXJhIGZpbGVuIG1lZCBcZkJiemlwMlxmUCgxKSAodmlsa2V0IHNrYXBhciBmaWxlbgorUGFja2FnZXMuYnoyKSBlbGxlciBcZkJnemlwXGZQKDEpICh2aWxrZXQgc2thcGFyIGZpbGVuIFBhY2thZ2VzLmd6KS4gYXB0CitpZ25vcmVyYXIgb2tvbXByaW1lcmFkZSBQYWNrYWdlc1wtZmlsZXIsIGb2cnV0b20gdmlkIGxva2FsIOV0a29tc3QKKyhkdnMuIFxmQmZpbGU6Ly9cZlBcLWvkbGxvcikuCisuUFAKK1xmSWJpbuRya2F0YWxvZ1xmUCDkciBuYW1uZXQgcOUgdHLkZGV0IG1lZCBiaW7kcnBha2V0ZW4gc29tIHNrYWxsIGhhbnRlcmFzCisodGlsbCBleGVtcGVsIFxmQmNvbnRyaWIvYmluYXJ5XC1pMzg2XGZQKS4gRGV0IORyIGLkc3QgYXR0IHNrYXBhIGRlbiByZWxhdGl2dAordGlsbCByb3RlbiBw5SBEZWJpYW5hcmtpdmV0IGVmdGVyc29tIGFsbCBmaWxuYW1uc2bkbHQgaSBkZW4gc2thcGFkZQorUGFja2FnZXNcLWZpbGVuIGtvbW1lciBpbmxlZGFzIG1lZCBzdHLkbmdlbi4KKy5QUAorXGZJ9nZlcnN0eXJuaW5nc2ZpbFxmUCDkciBuYW1uZXQgcOUgZW4gZmlsIHNvbSBza2FsbCBs5HNhcyBpbiBvY2ggc29tCitpbm5laOVsbGVyIGluZm9ybWF0aW9uIG9tIGh1ciBwYWtldGV0IHBhc3NhciBpbiBpIGRpc3RyaWJ1dGlvbmVuIChrYW4gdmFyYQorZW4ga29tcHJpbWVyYWQgZmlsKTsgc2UgXGZCZGViXC1vdmVycmlkZVxmUCg1KS4KKy5QUAorXGZJc/ZrduRnc3ByZWZpeFxmUCDkciBlbiBmcml2aWxsaWcgc3Ry5G5nIHNvbSBs5GdncyB0aWxsIGkgYvZyamFuIGkKK2ZpbG5hbW5zZuRsdGV0LgorLlBQCitPbSBtZXIg5G4gZW4gdmVyc2lvbiBhdiBldHQgcGFrZXQgdXBwdORja3Mga29tbWVyIGVuZGFzdCBkZW4gc2VuYXN0ZSBhdHQgdGFzCittZWQgaSB1dGRhdGEuIE9tIGRlIGhhciBzYW1tYSB2ZXJzaW9uIG9jaCBiYXJhIHNraWxqZXIgaSBhcmtpdGVrdHVyIGtvbW1lcgorYmFyYSBkZW4gZvZyc3RhIHNvbSBoaXR0YXMgYXR0IGFuduRuZGFzLgorLgorLlNIIEZMQUdHT1IKKy5UUCAKK1xmQlwtdFxmUCwgXGZCXC1cLXRlc3RcZlAgXGZJdHlwXGZQCitT9msgZWZ0ZXIgKi5cZkl0eXBcZlBcLXBha2V0LCBpIHN05GxsZXQgZvZyICouZGViLgorLlRQIAorXGZCXC11XGZQLCBcZkJcLVwtdWRlYlxmUAorXGZCRvZy5WxkcmF0XGZQIGFsaWFzIHRpbGwgXGZCXC10dWRlYlxmUC4KKy5UUCAKK1xmQlwtZVxmUCwgXGZCXC1cLWV4dHJhXC1vdmVycmlkZVxmUCBcZklmaWxcZlAKK0zkcyBcZklmaWxcZlAgZvZyIGF0dCBoaXR0YSB5dHRlcmxpZ2FyZSD2dmVyc3R5cm5pbmdhciAoZmlsZW4ga2FuIHZhcmEKK2tvbXByaW1lcmFkKS4gU2UgXGZCZGViXC1leHRyYVwtb3ZlcnJpZGVcZlAoNSkgZvZyIG1lciBpbmZvcm1hdGlvbiBvbSBkZXNzCitmb3JtYXQuCisuVFAgCitcZkJcLWFcZlAsIFxmQlwtXC1hcmNoXGZQIFxmSWFya2l0ZWt0dXJcZlAKK0FuduRuZCBldHQgbfZuc3RlciBzb20gYmVzdOVyIGF2IFxmSSpfYWxsLmRlYlxmUCBvY2ggXGZJKl9hcmtpdGVrdHVyLmRlYlxmUAoraXN05GxsZXQgZvZyIGF0dCBz9mthIGVmdGVyIGFsbGEgZGViXC1hcmtpdi4KKy5UUCAKK1xmQlwtbVxmUCwgXGZCXC1cLW11bHRpdmVyc2lvblxmUAorVGEgbWVkIGFsbGEgcGFrZXQgc29tIGhpdHRhcyBpIHV0ZGF0YS4KKy5UUCAKK1xmQlwtTVxmUCwgXGZCXC1cLW1lZGl1bVxmUCBcZklpZHN0cuRuZ1xmUAorTORnZyB0aWxsIGV0dCBYXC1NZWRpdW1cLWbkbHQgc29tIGlubmVo5WxsZXIgduRyZGV0IFxmSWlkc3Ry5G5nXGZQLiBG5Gx0ZXQg5HIKK272ZHbkbmRpZ3Qgb20gZHUgdmlsbCBnZW5lcmVyYSBcZkJQYWNrYWdlcy5jZFxmUFwtZmlsZXIgc29tIGthbiBhbnbkbmRhcyBtZWQKK2RzZWxlY3Q6cyBtdWx0aWNkXC3ldGtvbXN0bWV0b2QuCisuVFAgCitcZkJcLWhcZlAsIFxmQlwtXC1oZWxwXGZQCitWaXNhciBoauRscHNr5HJtIG9jaCBhdnNsdXRhci4KKy5UUCAKK1xmQlwtXC12ZXJzaW9uXGZQCitWaXNhciB2ZXJzaW9uIG9jaCBhdnNsdXRhci4KKy4KKy5TSCBESUFHTk9TVElLCitcZkJkcGtnXC1zY2FucGFja2FnZXNcZlAgc2tyaXZlciB1dCBkZSB2YW5saWdhIHNq5Gx2ZvZya2xhcmFuZGUgZmVsZW4uIERldAordmFybmFyIOR2ZW4gb20gcGFrZXQgbGlnZ2VyIGkgZmVsIGthdGFsb2cgaGFyIGR1YmJsZXR0ZXIsIGhhciBldHQKK0ZpbGVuYW1lXC1m5Gx0IGkgc2luIGNvbnRyb2xcLWZpbCwgc2FrbmFzIGZy5W4g9nZlcnN0eXJuaW5nc2ZpbGVuLCBlbGxlciBoYXIKK3N1YnN0aXR1ZXJpbmdhciB1dGFuIGVmZmVrdCBza3Jpdm5hIGF2IHBha2V0YW5zdmFyaWdhLgorLgorLlNIICJTRSDEVkVOIgorXGZCZHBrZ1xmUCgxKSwgXGZCZHNlbGVjdFxmUCgxKSwgXGZCZGViXC1vdmVycmlkZVxmUCg1KSwgXGZCZGViXC1leHRyYVwtb3ZlcnJpZGVcZlAoNSksCitcZkJkcGtnXC1zY2Fuc291cmNlc1xmUCgxKS4KKy5TSCAi1lZFUlPEVFROSU5HIgorUGV0ZXIgS3JlZnRpbmcgb2NoIERhbmllbCBOeWxhbmRlci4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL3N2L2Rwa2ctc2NhbnNvdXJjZXMuMSBiL2Rwa2ctMS4xNi4xLjEvbWFuL3N2L2Rwa2ctc2NhbnNvdXJjZXMuMQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xM2NmZTgyCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vc3YvZHBrZy1zY2Fuc291cmNlcy4xCkBAIC0wLDAgKzEsNzMgQEAKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlRIIGRwa2dcLXNjYW5zb3VyY2VzIDEgMjAxMVwtMDhcLTE0IERlYmlhbnByb2pla3RldCBkcGtnXC12ZXJrdHlnZW4KKy5TSCBOQU1OCitkcGtnXC1zY2Fuc291cmNlcyBcLSBza2FwYXIgaW5kZXhmaWxlcm5hIFNvdXJjZXMKKy4KKy5TSCBTWU5PUFMKK1xmQmRwa2dcLXNjYW5zb3VyY2VzXGZQIFtcZklmbGFnZ2FcZlAuLi5dIFxmSWJpbuRya2F0YWxvZ1xmUCBbXGZJ9nZlcnN0eXJuaW5nc2ZpbFxmUAorW1xmSXP2a3bkZ3NwcmVmaXhcZlBdXSBcZkI+XGZQIFxmSVNvdXJjZXNcZlAKKy4KKy5TSCBCRVNLUklWTklORworXGZCZHBrZ1wtc2NhbnNvdXJjZXNcZlAgc/ZrZXIgZ2Vub20gZGVuIGdpdm5hIFxmSWJpbuRya2F0YWxvZ2VuXGZQIGVmdGVyCitcJlxmSS5kc2NcZlBcLWZpbGVyLiBEZSBhbnbkbmRzIGb2ciBhdHQgc2thcGEgZXR0IERlYmlhbmvkbGxrb2RzaW5kZXgsIHZpbGtldAorc2tyaXZzIHDlIHN0YW5kYXJkIHV0LgorLlBQCitcZknWdmVyc3R5cm5pbmdzZmlsXGZQZW4sIG9tIGRlbiBhbmdlcywgYW525G5kcyBm9nIgYXR0IHN05GxsYSBpbiBwcmlvcml0ZXRlciBpCitkZSBza2FwYWRlIGluZGV4cG9zdGVybmEsIHNhbXQgZvZyIGF0dCBlcnPkdHRhIGbkbHQgZGUgcGFrZXRhbnN2YXJpZ2EgZ2VyIGkKK1wmXGZJLmRzY1xmUFwtZmlsZXJuYS4gRmlsZW4ga2FuIHZhcmEga29tcHJpbWVyYWQuIFNlIFxmQmRlYlwtb3ZlcnJpZGVcZlAoNSkgZvZyIGVuCitiZXNrcml2bmluZyBhdiBmb3JtYXRldCBm9nIgZGVubmEgZmlsLiBccy0xT2JzIVxzMCBFZnRlcnNvbQor9nZlcnN0eXJuaW5nc2ZpbGVuIGluZGV4ZXJhciBwZXIgYmlu5HJwYWtldCwgaW50ZSBr5Gxsa29kc3Bha2V0LCB1cHBzdOVyIGRldAorZXR0IHByb2JsZW0gaORyLiBOdXZhcmFuZGUgaW1wbGVtZW50YXRpb24gYW525G5kZXIgZGVuIGj2Z3N0YSBwcmlvcml0ZXRlbiBhdgorc2FtdGxpZ2EgYmlu5HJwYWtldCBzb20gc2thcGFzIGF2IGVuIFxmSS5kc2NcZlBcLWZpbCBzb20gcHJpb3JpdGV0IGb2cgora+RsbGtvZHNwYWtldGV0LCBvY2gg9nZlcnN0eXJuaW5nc3Bvc3RlbiBm9nIgZGV0IGb2cnN0YSBiaW7kcnBha2V0IHNvbQorbGlzdGFzIGkgXGZJLmRzY1xmUFwtZmlsZW4gZvZyIGF0dCBlcnPkdHRhIGluZm9ybWF0aW9uIGZy5W4KK3Bha2V0YW5zdmFyaWdhLiBEZXR0YSBrYW4ga29tbWEgYXR0IORuZHJhcy4KKy5QUAorXGZJc/ZrduRnc3ByZWZpeFxmUCBs5Gdncywgb20gZGVuIGFuZ2VzLCB0aWxsIGkgYvZyamFuIGF2IGthdGFsb2dm5Gx0ZXQgaSBkZXQKK3NrYXBhZGUga+RsbGtvZHNpbmRleGV0LiBEdSBhbnbkbmRlciBkZXQgbm9ybWFsdCB0aWxsIGF0dCBn9nJhIHPlIGF0dAora2F0YWxvZ2bkbHRlbiBpbm5laOVsbGVyIHP2a3bkZ2VuIGZy5W4gdG9wcGVuIGF2IERlYmlhbmFya2l2aGllcmFya2luLgorLgorLlBQCitcZkJPYnNlcnZlcmE6XGZQIE9tIGR1IHZpbGwgbORzYSBkZW4gc2thcGFkZSBTb3VyY2VzXC1maWxlbiBtZWQgXGZCYXB0XGZQKDgpIG3lc3RlCitkdSBhbnRhZ2xpZ2VuIGtvbXByaW1lcmEgZmlsZW4gbWVkIFxmQmd6aXBcZlAoMSkgKHZpbGtldCBza2FwYXIgZmlsZW4KK1NvdXJjZXMuZ3opLiBhcHQgaWdub3JlcmFyIG9rb21wcmltZXJhZGUgU291cmNlc1wtZmlsZXIsIGb2cnV0b20gdmlkIGxva2FsCivldGtvbXN0IChkdnMuIFxmQmZpbGU6Ly9cZlBcLWvkbGxvcikuCisuCisuU0ggRkxBR0dPUgorLklQICJcZkJcLW5cZlAsIFxmQlwtXC1ub1wtc29ydFxmUCIgNAorU29ydGVyYSBpbnRlIGluZGV4cG9zdGVybmEuIERlIHNvcnRlcmFzIG5vcm1hbHQgZWZ0ZXIgbmFtbiBw5Qora+RsbGtvZHNwYWtldGV0LgorLlRQIAorLklQICJcZkJcLWVcZlAsIFxmQlwtXC1leHRyYVwtb3ZlcnJpZGVcZlAgXGZJZmlsXGZQIiA0CitM5HMgXGZJZmlsXGZQIGb2ciBhdHQgaGl0dGEgeXR0ZXJsaWdhcmUg9nZlcnN0eXJuaW5nYXIgKGZpbGVuIGthbiB2YXJhCitrb21wcmltZXJhZCkuIFNlIFxmQmRlYlwtZXh0cmFcLW92ZXJyaWRlXGZQKDUpIGb2ciBtZXIgaW5mb3JtYXRpb24gb20gZGVzcworZm9ybWF0LgorLklQICJcZkJcLXNcZlAsIFxmQlwtXC1zb3VyY2VcLW92ZXJyaWRlXGZQIFxmSWZpbFxmUCIgNAorQW525G5kIFxmSWZpbFxmUCBzb20g9nZlcnN0eXJuaW5nc2ZpbCBm9nIga+RsbGtvZGVuIChmaWxlbiBrYW4gdmFyYQora29tcHJpbWVyYWQpLiBTdGFuZGFyZG5hbW5ldCDkciBuYW1uZXQgcOUgZGVuIPZ2ZXJzdHlybmluZ3NmaWwgZHUgYW5nYXYsIG1lZAordGlsbORnZ2V0IFxmSS5zcmNcZlAuCisuc3AKK0vkbGxrb2Rz9nZlcnN0eXJuaW5nc2ZpbGVuIGhhciBldHQgYW5uYXQgZm9ybWF0IORuCitiaW7kcvZ2ZXJzdHlybmluZ3NmaWxlbi4gRGVuIGlubmVo5WxsZXIgZW5kYXN0IHR25SBm5Gx0IGF2ZGVsYWRlIG1lZAorYmxhbmt0ZWNrZW4sIGTkciBkZXQgZvZyc3RhIORyIG5hbW5ldCBw5SBr5Gxsa29kc3Bha2V0ZXQgb2NoIGRldCBhbmRyYSDkcgorc2VrdGlvbmVuLiBUb21tYSByYWRlciBvY2gga29tbWVudGFyZXIgaWdub3JlcmFzIHDlIHZhbmxpZ3Qgc+R0dC4gT20gZXR0CitwYWtldCBzcGVjaWZpY2VyYXMgaSBi5WRhIGZpbGVybmEga29tbWVyIGvkbGxrb2Rz9nZlcnN0eXJuaW5nc2ZpbGVuIGb2cnN0Citm9nIgYXR0IHbkbGphIHNla3Rpb24uCisuSVAgXGZCXC1cLWRlYnVnXGZQIDQKK1Ns5SBw5SBmZWxz9mtuaW5nLgorLklQIFxmQlwtXC1oZWxwXGZQIDQKK1Zpc2FyIGhq5Gxwc2vkcm0gb2NoIGF2c2x1dGFyLgorLklQIFxmQlwtXC12ZXJzaW9uXGZQIDQKK1Zpc2FyIHZlcnNpb24gb2NoIGF2c2x1dGFyLgorLgorLlNIICJTRSDEVkVOIgorXGZCZGViXC1vdmVycmlkZVxmUCg1KSwgXGZCZGViXC1leHRyYVwtb3ZlcnJpZGVcZlAoNSksIFxmQmRwa2dcLXNjYW5wYWNrYWdlc1xmUCgxKS4KKy4KKy5TSCBG1lJGQVRUQVJFCitSb2RlcmljayBTY2hlcnRsZXIgPHJvZGVyaWNrQGFyZ29uLm9yZz4KKy5TSCAi1lZFUlPEVFROSU5HIgorUGV0ZXIgS3JlZnRpbmcgb2NoIERhbmllbCBOeWxhbmRlci4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL3N2L2Rwa2ctc2hsaWJkZXBzLjEgYi9kcGtnLTEuMTYuMS4xL21hbi9zdi9kcGtnLXNobGliZGVwcy4xCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjY3MDc4NDgKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9zdi9kcGtnLXNobGliZGVwcy4xCkBAIC0wLDAgKzEsMjg0IEBACisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkcGtnXC1zaGxpYmRlcHMgMSAyMDExXC0wOFwtMTQgRGViaWFucHJvamVrdGV0IGRwa2dcLXZlcmt0eWdlbgorLlNIIE5BTU4KK2Rwa2dcLXNobGliZGVwcyBcLSBza2FwYXIgc3Vic3R2YXJcLWJlcm9lbmRlbiBm9nIgZGVsYWRlIGJpYmxpb3RlaworLgorLlNIIFNZTk9QUworXGZCZHBrZ1wtc2hsaWJkZXBzXGZQIFtcZklmbGFnZ2FcZlAuLi5dIFtcZkJcLWVcZlBdXGZJcHJvZ3JhbWZpbFxmUCBbXGZJZmxhZ2dhXGZQLi4uXQorLgorLlNIIEJFU0tSSVZOSU5HCitcZkJkcGtnXC1zaGxpYmRlcHNcZlAgYmVy5GtuYXIgYmVyb2VuZGVuIG1lbGxhbiBleGVrdmVyYmFyYSBmaWxlciBzb20gYW5nZXMgc29tCithcmd1bWVudCBvY2ggZGVsYWRlIGJpYmxpb3Rlay4gQmVyb2VuZGVuYSBs5GdncyB0aWxsIGkKK3N1YnN0aXR1ZXJpbmdzdmFyaWFiZWxmaWxlbiBcZkJkZWJpYW4vc3Vic3R2YXJzXGZQIHNvbSB2YXJpYWJsZXIgbWVkIG5hbW5lbgorXGZCc2hsaWJzOlxmUFxmSWJlcm9lbmRlZuRsdFxmUCBk5HIgXGZJYmVyb2VuZGVlZuRsdFxmUCDkciBldHQKK2Jlcm9lbmRlZuRsdHNuYW1uLiBBbGxhIGFuZHJhIHZhcmlhYmxlciBzb20gYvZyamFyIHDlIFxmSXNobGliczpcZlAgdGFzIGJvcnQgdXIKK2ZpbGVuLgorLlAKK1xmQmRwa2dcLXNobGliZGVwc1xmUCBrYW4gZ2VuZXJlcmEgYmVyb2VuZGVpbmZvcm1hdGlvbiBmcuVuIHR25QoraW5mb3JtYXRpb25za+RsbG9yLCBhbnRpbmdlbiBmaWxlbiBcZklzeW1ib2xzXGZQIGVsbGVyIGZpbGVuIFxmSXNobGlic1xmUC4gRvZyCit2YXJqZSBiaW7kcmZpbCBzb20gYW5hbHlzZXJhcyBhdiBcZkJkcGtnXC1zaGxpYmRlcHNcZlAgdGFzIGVuIGxpc3RhIGZyYW0g9nZlcgordmlsa2EgYmlibGlvdGVrIGRlIORyIGzkbmthZGUgbW90LiBQcm9ncmFtbWV0IHNs5XIgc2VkYW4gdXBwIHZhcmplIGJpYmxpb3RlaworaSBmaWxlbiBcZklzeW1ib2xzXGZQLCBlbGxlciBpIGZpbGVuIFxmSXNobGlic1xmUCAob20gZGVuIGb2cnN0buRtbmRhIGludGUKK2V4aXN0ZXJhciBlbGxlciBvbSBkZWJpYW4vc2hsaWJzLmxvY2FsIGlubmVo5WxsZXIgZXR0IHJlbGV2YW50CitiZXJvZW5kZSkuICkuIERlIGLlZGEgZmlsZXJuYSBza2FsbCB0aWxsaGFuZGFo5WxsYXMgYXYgYmlibGlvdGVrc3Bha2V0ZXQgb2NoCitib3JkZSBk5HJm9nIgdmFyYSB0aWxsZ+RuZ2xpZ2Egc29tIC92YXIvbGliL2Rwa2cvaW5mby9cZklwYWtldFxmUC5cZklzeW1ib2xzXGZQCitlbGxlciAvdmFyL2xpYi9kcGtnL2luZm8vXGZJcGFrZXRcZlAuXGZJc2hsaWJzXGZQLiBQYWtldG5hbW5ldCBpZGVudGlmaWVyYXMgaSB0duUKK3N0ZWc6IGJpYmxpb3Rla3NmaWxlbiBsb2thbGlzZXJhcyBw5SBzeXN0ZW1ldCAoZ2Vub20gYXR0IHNs5SB1cHAgaSBkZQora2F0YWxvZ2VyIFxmQmxkLnNvXGZQIHNrdWxsZSBhbnbkbnQpLCBvY2ggZORyZWZ0ZXIgYW525G5kcyBcZkJkcGtnIFwtU1xmUAorXGZJYmlibGlvdGVrc2ZpbFxmUCBm9nIgYXR0IHNs5SB1cHAgdmlsa2V0IHBha2V0IGJpYmxpb3Rla2V0IGtvbW1lciBmcuVuLgorLlNTIFN5bWJvbGZpbGVyCitTeW1ib2xmaWxlciBpbm5laOVsbGVyIG1lciBmaW5rb3JuaWcgYmVyb2VuZGVpbmZvcm1hdGlvbiBnZW5vbSBhdHQgYW5nZSBkZXQKK21pbnN0YSBiZXJvZW5kZXQgZvZyIHZhcmplIHN5bWJvbCBzb20gZXhwb3J0ZXJhcyBhdiBiaWJsaW90ZWtldC4gU2tyaXB0ZXQKK2b2cnP2a2VyIGhpdHRhIGRlIHN5bWJvbGVyIHNvbSDkciBhc3NvY2llcmFkZSBtZWQgZXR0IGJpYmxpb3RlayBw5SBm9mxqYW5kZQorcGxhdHNlciAoZGVuIGb2cnN0YSB0cuRmZmVuIGFuduRuZHMpOgorLklQIGRlYmlhbi8qL0RFQklBTi9zeW1ib2xzCitJbmZvcm1hdGlvbiBvbSBkZWxhZGUgYmlibGlvdGVrIHNvbSBza2FwYXRzIGF2IGRlbiBha3R1ZWxsYSBieWdncHJvY2VkdXJlbgorc29tIG9ja3PlIGFucm9wYWRlIFxmQmRwa2dcLXNobGliZGVwc1xmUC4gRGUgZ2VuZXJlcmFzIGF2CitcZkJkcGtnXC1nZW5zeW1ib2xzXGZQKDEpLiBEZSBhbnbkbmRzIGVuZGFzdCBvbSBiaWJsaW90ZWtldCBmaW5ucyBpIHBha2V0ZXRzCitieWdncuRkLiBGaWxlbiBzeW1ib2xzIGkgZGV0IGJ5Z2d0cuRkZXQgZ+VyIGb2cmUgc3ltYm9sc1wtZmlsZXIgZnLlbiBhbmRyYQorYmlu5HJwYWtldC4KKy5JUCAvZXRjL2Rwa2cvc3ltYm9scy9cZklwYWNrYWdlXGZQLnN5bWJvbHMuXGZJYXJraXRla3R1clxmUAorLklQIC9ldGMvZHBrZy9zeW1ib2xzL1xmSXBha2V0XGZQLnN5bWJvbHMKK9Z2ZXJzdHlybmluZ3NmaWwgZvZyIGJlcm9lbmRlaW5mb3JtYXRpb24gZvZyIGRlbGFkZSBiaWJsaW90ZWssIHBlcgorc3lzdGVtLiBcZklhcmtpdGVrdHVyXGZQIORyIGRldCBha3R1ZWxsYSBzeXN0ZW1ldHMgYXJraXRla3R1ciAoaORtdGFzIGZy5W4KK1xmQmRwa2dcLWFyY2hpdGVjdHVyZSBcLXFERUJfSE9TVF9BUkNIXGZQKS4KKy5JUCAiVXRkYXRhIGZy5W4gXChycVxmQmRwa2dcLXF1ZXJ5IFwtXC1jb250cm9sXC1wYXRoXGZQIFxmSXBhY2thZ2VcZlAgc3ltYm9sc1wocnEiCitQYWtldGxva2FsIPZ2ZXJzdHlyYW5kZSBiZXJvZW5kZWluZm9ybWF0aW9uIGb2ciBkZWxhZGUgYmlibGlvdGVrLiBGaWxlcm5hCitiZWZpbm5lciBzaWcgaSAvdmFyL2xpYi9kcGtnIG9tIGludGUg9nZlcnN0eXJ0IG1lZCBcLVwtYWRtaW5kaXIuCisuUAorXGZCZHBrZ1wtc2hsaWJzXGZQIGtvbW1lciBpaOVnIGRlbiAoc3T2cnN0YSkgbWluaW1hbGEgdmVyc2lvbiBzb20gYmVo9nZzIGF2Cit2YXJqZSBiaWJsaW90ZWsgbuRyIGRlbiBz9mtlciBnZW5vbSBkZSBzeW1ib2xlciBzb20gYW525G5kcyBhdiBhbGxhCitiaW7kcmZpbGVybmEuIE7kciBwcm9jZWR1cmVuIORyIGF2c2x1dGFkIGthbiBkZW4gdmlzYSBkZXQgbWluc3RhIGJlcm9lbmRlCitzb20gYmVo9nZzIGF2IGFsbGEgYmlibGlvdGVrIHNvbSBhbnbkbmRzIChz5SB0aWxsdmlkYSBpbmZvcm1hdGlvbmVuIGkKK1xmSXN5bWJvbHNcZlBcLWZpbGVybmEg5HIga29ycmVrdCkuCisuUAorU29tIGVuIHPka2VyaGV0c+V0Z+RyZCBrYW4gZW4gc3ltYm9sc1wtZmlsIGlubmVo5WxsYSBtZXRhaW5mb3JtYXRpb25zZuRsdGV0CitcZklCdWlsZFwtRGVwZW5kc1wtUGFja2FnZVxmUCwgdmFycOUgXGZCZHBrZ1wtc2hsaWJkZXBzXGZQIGjkbXRhciB2aWxrZW4gbWluc3RhCit2ZXJzaW9uIHNvbSBiZWj2dnMgZvZyIHBha2V0ZXQgdXIgQnVpbGRcLURlcGVuZHNcLWbkbHRldCBvY2ggYW525G5kZXIgZGVubmEKK3ZlcnNpb24gb20gZGVuIORyIGj2Z3JlIORuIGRlbiBtaW5zdGEgdmVyc2lvbiBzb20gYmVy5GtuYXRzIGdlbm9tIGF0dCBz9mthCitnZW5vbSBzeW1ib2xlcm5hLgorLlNTIFNobGlic1wtZmlsZXIKK1NobGlic1wtZmlsZXIgYXNzb2NpZXJhciBldHQgYmlibGlvdGVrIGRpcmVrdCB0aWxsIGV0dCBiZXJvZW5kZSAodXRhbiBhdHQgc2UKK3DlIHN5bWJvbGVybmEpLiBEZXQg5HIgZORyZvZyIG9mdGFyZSBzdGFya2FyZSDkbiB2YWQgc29tIGVnZW50bGlnZW4gYmVo9nZzLAorbWVuIG15Y2tldCBz5GtlcnQgb2NoIGVua2VsdCBhdHQgaGFudGVyYS4KKy5QCitCZXJvZW5kZW4gZvZyIGV0dCBiaWJsaW90ZWsgc2zlcyB1cHAgcOUgZmxlcmEgcGxhdHNlci4gRGVuIGb2cnN0YSBmaWxlbiBzb20KK2lubmVo5WxsZXIgaW5mb3JtYXRpb24gb20gZGV0IGludHJlc3NhbnRhIGJpYmxpb3Rla2V0IGFuduRuZHM6CisuSVAgZGViaWFuL3NobGlicy5sb2NhbAorUGFrZXRsb2thbCD2dmVyc3R5cmFuZGUgYmVyb2VuZGVpbmZvcm1hdGlvbiBm9nIgZGVsYWRlIGJpYmxpb3Rlay4KKy5JUCAvZXRjL2Rwa2cvc2hsaWJzLm92ZXJyaWRlCitTeXN0ZW1zcGVjaWZpayD2dmVyc3R5cmFuZGUgYmVyb2VuZGVpbmZvcm1hdGlvbiBm9nIgZGVsYWRlIGJpYmxpb3Rlay4KKy5JUCBkZWJpYW4vKi9ERUJJQU4vc2hsaWJzCitJbmZvcm1hdGlvbiBvbSBkZWxhZGUgYmlibGlvdGVrIHNvbSBza2FwYXRzIGF2IGRlbiBha3R1ZWxsYSBieWdncHJvY2VkdXJlbgorc29tIG9ja3PlIGFucm9wYWRlIFxmQmRwa2dcLXNobGliZGVwc1xmUC4gRGUgZ2VuZXJlcmFzIGF2CitcZkJkcGtnXC1nZW5zeW1ib2xzXGZQKDEpLiBEZSBhbnbkbmRzIGJhcmEgb20gYmlibGlvdGVrZXQgZmlubnMgaSBwYWtldGV0cworYnlnZ3Ry5GQuIEZpbGVuIHNobGlicyBpIGJ5Z2d0cuRkZXQgZ+VyIGb2cmUgc2hsaWJzXC1maWxlciBmcuVuIGFuZHJhIHBha2V0LgorLklQICJVdGRhdGEgZnLlbiBcKHJxXGZCZHBrZ1wtcXVlcnkgXC1cLWNvbnRyb2xcLXBhdGhcZlAgXGZJcGFja2FnZVxmUCBzaGxpYnNcKHJxIgorUGFrZXRsb2thbCD2dmVyc3R5cmFuZGUgYmVyb2VuZGVpbmZvcm1hdGlvbiBm9nIgZGVsYWRlIGJpYmxpb3Rlay4gRmlsZXJuYQorYmVmaW5uZXIgc2lnIGkgL3Zhci9saWIvZHBrZyBvbSBpbnRlIPZ2ZXJzdHlydCBtZWQgXC1cLWFkbWluZGlyLgorLklQIC9ldGMvZHBrZy9zaGxpYnMuZGVmYXVsdAorU3lzdGVtc3BlY2lmaWsgc3RhbmRhcmRiZXJvZW5kZWluZm9ybWF0aW9uIGb2ciBkZWxhZGUgYmlibGlvdGVrLgorLlAKK0RlIHV09mthZGUgYmVyb2VuZGVuYSBhbnbkbmRzIHNlZGFuIGRpcmVrdCAoZvZydXRvbSBvbSBkZSBmaWx0cmVyYXRzIGJvcnQKK2b2ciBhdHQgZGUgaWRlbnRpZmllcmF0cyBzb20gZHViYmxldHRlciwgZWxsZXIgc3ZhZ2FyZSDkbiBldHQgYW5uYXQKK2Jlcm9lbmRlKS4KKy5TSCBGTEFHR09SCitcZkJkcGtnXC1zaGxpYmRlcHNcZlAgdG9sa2FyIGFyZ3VtZW50IHNvbSBpbnRlIORyIGZsYWdnb3Igc29tIG5hbW4gcOUga/ZyYmFyYQorZmlsZXIsIHByZWNpcyBzb20gb20gZGUgYW5naXZpdHMgc29tIFxmQlwtZVxmUFxmSXByb2dyYW1maWxcZlAuCisuVFAgCitcZkJcLWVcZlBcZklwcm9ncmFtZmlsXGZQCitUYSBtZWQgYmVyb2VuZGVuIHNvbSDkciBwYXNzYXIgZvZyIGRlbGFkZSBiaWJsaW90ZWsgc29tIGty5HZzIGb2cgorXGZJcHJvZ3JhbWZpbFxmUC4KKy5UUCAKK1xmQlwtZFxmUFxmSWJlcm9lbmRlZuRsdFxmUAorTORnZyB0aWxsIGJlcm9lbmRlbiBzb20gc2thbGwgbORnZ2FzIHRpbGwgdGlsbCBjb250cm9sXC1maWxlbnMgYmVyb2VuZGVm5Gx0CitcZkliZXJvZW5kZWbkbHRcZlAuIChCZXJvZW5kZW4gZvZyIGRldHRhIGbkbHQgbORnZ3MgaW4gaSB2YXJpYWJlbG4KK1xmQnNobGliczpcZlBcZkliZXJvZW5kZWbkbHRcZlAuKQorCitGbGFnZ2FuIFxmQlwtZFxmUFxmSWJlcm9lbmRlZuRsdFxmUCBn5GxsZXIgZvZyIHNhbXRsaWdhIGJpbuRyZXIgZWZ0ZXIgZmxhZ2dhbiwgZnJhbQordGlsbCBu5HN0YSBcZkJcLWRcZlBcZkliZXJvZW5kZWbkbHRcZlAuIFN0YW5kYXJkduRyZGV0IGb2ciBcZkliZXJvZW5kZWbkbHRcZlAg5HIKK1xmQkRlcGVuZHNcZlAuCisKK09tIHNhbW1hIGthdGFsb2dwb3N0IChlbGxlciBlbiB1cHBz5HR0bmluZyBhbHRlcm5hdGl2KSBm9nJla29tbWVyIGkgbWVyIORuCitldHQgYXYgZGUga+RuZGEgYmVyb2VuZGVm5Gx0bmFtbmVuIFxmQlByZVwtRGVwZW5kc1xmUCwgXGZCRGVwZW5kc1xmUCwKK1xmQlJlY29tbWVuZHNcZlAsIFxmQkVuaGFuY2VzXGZQIGVsbGVyIFxmQlN1Z2dlc3RzXGZQIHPlIGtvbW1lciBcZkJkcGtnXC1zaGxpYmRlcHNcZlAgYXR0CithdXRvbWF0aXNrdCB0YSBib3J0IGJlcm9lbmRldCBmcuVuIHNhbXRsaWdhIGbkbHQgZvZydXRvbSBkZXQgc29tIGFuZ2VyIGRlCit2aWt0aWdhc3RlIGJlcm9lbmRlbmEuCisuVFAgCitcZkJcLXBcZlBcZkl2YXJpYWJlbG5hbW5zcHJlZml4XGZQCitJbmxlZCBzdWJzdGl0dWVyaW5nc3ZhcmlhYmxlciBtZWQgXGZJdmFyaWFiZWxuYW1uc3ByZWZpeFxmUFxmQjpcZlAgaSBzdORsbGV0IGb2cgorXGZCc2hsaWJzOlxmUC4gUOUgc2FtbWEgc+R0dCBrb21tZXIgYmVmaW50bGlnYSBzdWJzdGl0dWVyaW5nc3ZhcmlhYmxlciBzb20KK2lubGVkcyBtZWQgXGZJdmFyaWFiZWxuYW1uc3ByZWZpeFxmUFxmQjpcZlAgKGkgc3TkbGxldCBm9nIgXGZCc2hsaWJzOlxmUCkgYXR0IHRhcworYm9ydCBmcuVuIHN1YnN0aXR1ZXJpbmdzdmFyaWFiZWxmaWxlbi4KKy5UUCAKK1xmQlwtT1xmUAorU2tyaXYgc3Vic3RpdHVlcmluZ3N2YXJpYWJlbGluc3TkbGxuaW5nYXIgcOUgc3RhbmRhcmQgdXQsIGkgc3TkbGxldCBm9nIgYXR0Citm9nJz9mthIGzkZ2dhIHRpbGwgZGVtIGkgc3Vic3RpdHVlcmluZ3N2YXJpYWJlbGZpbGVuIChzb20gc3RhbmRhcmQKK1xmQmRlYmlhbi9zdWJzdHZhcnNcZlApLgorLlRQIAorXGZCXC10XGZQXGZJdHlwXGZQCitG9nJlZHJhIGluZm9ybWF0aW9uIG9tIGRlbGFkZSBiaWJsaW90ZWsgc29tIG3kcmt0cyBm9nIgZGVuIGdpdm5hCitwYWtldHR5cGVuLiBPbSBkZXQgaW50ZSBmaW5ucyBu5WdvbiBt5HJrdCBpbmZvcm1hdGlvbiBhbnbkbmRzCitvbeRya3QuIFN0YW5kYXJkcGFrZXR0eXBlbiDkciAiZGViIi4gQmVyb2VuZGVpbmZvcm1hdGlvbiBm9nIgZGVsYWRlCitiaWJsaW90ZWsgbeRya3MgZvZyIGVuIGdpdmVuIHR5cCBnZW5vbSBhdHQgaW5sZWRhIGRldCBtZWQgbmFtbmV0IHDlIHR5cGVuLAorZXR0IGtvbG9uLCBzYW10IGJsYW5rdGVja2VuLgorLlRQIAorXGZCXC1MXGZQXGZJbG9rYWxcLXNobGlic1wtZmlsXGZQCitM5HMg9nZlcnN0eXJhbmRlIGJlcm9lbmRlaW5mb3JtYXRpb24gb20gZGVsYWRlIGJpYmxpb3RlayBmcuVuCitcZklsb2thbFwtc2hsaWJzXC1maWxcZlAgaSBzdORsbGV0IGb2ciBcZkJkZWJpYW4vc2hsaWJzLmxvY2FsXGZQLgorLlRQIAorXGZCXC1UXGZQXGZJc3Vic3R2YXJzXC1maWxcZlAKK1Nrcml2IHN1YnN0aXR1ZXJpbmdzdmFyaWFibGVyIGkgXGZJc3Vic3R2YXJzXC1maWxcZlA7IHN0YW5kYXJkIORyCitcZkJkZWJpYW4vc3Vic3R2YXJzXGZQLgorLlRQIAorXGZCXC1WXGZQCitBa3RpdmVyYXIgcHJhdHNhbXQgbORnZS4gRmxlcmEgbWVkZGVsYW5kZW4gdmlzYXMgZvZyIGF0dCBm9nJrbGFyYSB2YWQKK1xmQmRwa2dcLXNobGlic1xmUCBo5WxsZXIgcOUgbWVkLgorLlRQIAorXGZCXC14XGZQXGZJcGFrZXRcZlAKK1V0ZXNsdXQgcGFrZXRldCBmcuVuIGRlIGdlbmVyZXJhZGUgYmVyb2VuZGVuYS4gRmxhZ2dhbiDkciBhbnbkbmRiYXIgZvZyIGF0dAordW5kdmlrYSBzauRsdmJlcm9lbmRlbiBm9nIgcGFrZXQgc29tIGlubmVo5WxsZXIgRUxGXC1iaW7kcmVyIChleGVrdmVyYmFyYQorZWxsZXIgYmlibGlvdGVrc2luc3RpY2tzcHJvZ3JhbSkgc29tIGFuduRuZGVyIGV0dCBiaWJsaW90ZWsgc29tIGxpZ2dlciBpCitzYW1tYSBwYWtldC4gRmxhZ2dhbiBrYW4gYW525G5kYXMgZmxlcmEgZ+VuZ2VyIGb2ciBhdHQgdXRlc2x1dGEgZmxlcmEgcGFrZXQuCisuVFAgCitcZkJcLVNcZlBcZklwYWtldGJ5Z2drYXRhbG9nXGZQCitTZSBm9nJzdCBpIFxmSXBha2V0YnlnZ2thdGFsb2dcZlAgdmlkIGb2cnP2ayBhdHQgaGl0dGEgZXR0CitiaWJsaW90ZWsuIEFuduRuZGJhcnQgbuRyIGvkbGxrb2RzcGFrZXRldCBieWdnZXIgZmxlcmEgdmFyaWFudGVyIGF2IHNhbW1hCitiaWJsaW90ZWsgb2NoIGR1IHZpbGwgc2UgdGlsbCBhdHQgZHUgZuVyIGJlcm9lbmRldCBmcuVuIGV0dCBnaXZldAorYmlu5HJwYWtldC4gRmxhZ2dhbiBrYW4gaW50ZSBhbnbkbmRhcyBmbGVyYSBn5W5nZXI6IGthdGFsb2dlciBz9mtzIGVmdGVyIGkKK3NhbW1hIG9yZG5pbmcgZvZyZSBrYXRhbG9nZXIgZnLlbiBhbmRyYSBiaW7kcnBha2V0LgorLlRQIAorXGZCXC1cLWlnbm9yZVwtbWlzc2luZ1wtaW5mb1xmUAorTWlzc2x5Y2thcyBpbnRlIG9tIGRldCBpbnRlIHVwcHTkY2tzIG7lZ29uIGJlcm9lbmRlaW5mb3JtYXRpb24gZvZyIGV0dCBkZWxhdAorYmlibGlvdGVrLiBBbGxhIGJpYmxpb3RlayBi9nIgdGlsbGhhbmRhaOVsbGEgYmVyb2VuZGVpbmZvcm1hdGlvbiAoYW50aW5nZW4KK21lZCBzaGxpYnNcLWZpbGVyIGVsbGVyIG1lZCBzeW1ib2xzXC1maWxlciksIOR2ZW4gb20gZGUg5G5udSBpbnRlIGFuduRuZHMgYXYKK2FuZHJhIHBha2V0LgorLlRQIAorXGZCXC1cLXdhcm5pbmdzPVxmUFxmSXbkcmRlXGZQCitcZklW5HJkZVxmUCDkciBldHQgYml0ZuRsdCBzb20gYW5nZXIgZGUgdmFybmluZ2FyIHNvbSBrYW4gZ2VzIGF2CitcZkJkcGtnXC1zaGxpYmRlcHNcZlAuIEJpdCAwICh25HJkZT0xKSBha3RpdmVyYXIgdmFybmluZ2VuICJzeW1ib2xlbiBcZklzeW1cZlAsIHNvbQorYW525G5kcyBhdiBcZkliaW7kclxmUCwgaGl0dGFkZXMgaW50ZSBpIG7lZ290IGF2IGJpYmxpb3Rla2VuIiwgYml0IDEgKHbkcmRlPTIpCitha3RpdmVyYXIgdmFybmluZ2VuICJiZXJvZW5kZXQgcOUgXGZJYmlibGlvdGVrdFxmUCBrdW5kZSB1bmR2aWthcyIgb2NoIGJpdCAyCisoduRyZGU9NCkgYWt0aXZlcmFyIHZhcm5pbmdlbiAiXGZJYmlu5HJcZlAgYm9yZGUgaW50ZSB2YXJhIGzkbmthdCBtb3QKK1xmSWJpYmxpb3Rla1xmUCIuIFN0YW5kYXJkIGb2ciBcZkl25HJkZVxmUCDkciAzOiBkZSBm9nJzdGEgdHblIHZhcm5pbmdhcm5hIORyCitha3RpdmEgc29tIHN0YW5kYXJkLCBtZW4gaW50ZSBkZW4gc2lzdGEuIFPkdHQgXGZJduRyZGVcZlAgdGlsbCA3IG9tIGR1IHZpbGwgYXR0CithbGxhIHZhcm5pbmdhciBza2FsbCB2YXJhIGFrdGl2YS4KKy5UUCAKK1xmQlwtXC1hZG1pbmRpcj1cZlBcZklrYXRcZlAKK8RuZHJhIHBsYXRzZW4gZvZyIFxmQmRwa2dcZlBcLWRhdGFiYXNlbi4gRvZydmFsIORyIFxmSS92YXIvbGliL2Rwa2dcZlAuCisuVFAgCitcZkJcLWhcZlAsIFxmQlwtXC1oZWxwXGZQCitWaXNhciBoauRscHNr5HJtIG9jaCBhdnNsdXRhci4KKy5UUCAKK1xmQlwtXC12ZXJzaW9uXGZQCitWaXNhciB2ZXJzaW9uIG9jaCBhdnNsdXRhci4KKy4KKy5TSCBWQVJOSU5HQVIKK0VmdGVyc29tIFxmQmRwa2dcLXNobGliZGVwc1xmUCBhbmFseXNlcmFyIG3kbmdkZW4gc3ltYm9sZXIgc29tIGFuduRuZHMgYXYgdmFyamUKK2JpbuRyZmlsIGkgZGV0IGdlbmVyZXJhZGUgcGFrZXRldCwga2FuIGRldCBpIGZsZXJhIGZhbGwgc2tyaXZhIHV0Cit2YXJuaW5nc21lZGRlbGFuZGVuLiBEZSB2aXNhciBw5SBzYWtlciBzb20ga2FuIGb2cmLkdHRyYXMgaSBwYWtldGV0LiBJIGRlCitmbGVzdGEgZmFsbCBn5GxsZXIgZvZyYuR0dHJpbmdhcm5hIGRpcmVrdCB1cHBzdHL2bXNr5Gxsa29kZW4uIEjkciDkciBkZQordmFybmluZ2FyIGR1IGthbiBzdPZ0YSBw5SwgaSBmYWxsYW5kZSBhbGx2YXJsaWdoZXRzZ3JhZDoKKy5UUCAKK1xmQnN5bWJvbGVuXGZQIFxmSXN5bVxmUFxmQiwgc29tIGFuduRuZHMgYXZcZlAgXGZJYmlu5HJcZlBcZkIsIGhpdHRhZGVzIGludGUgaSBu5WdvdCBhdiBiaWJsaW90ZWtlbi5cZlAKK0RlbiBvbW7kbW5kYSBzeW1ib2xlbiBoaXR0YWRlcyBpbnRlIGkgYmlibGlvdGVrZW4gc29tIGzkbmthcyBtb3QKK2JpbuRyZW4uIFxmSUJpbuRyXGZQIORyIGFudGFnbGlnZW4gZXR0IGJpYmxpb3RlayBvY2ggbeVzdGUgbORua2FzIG1vdCBldHQgYW5uYXQKK2JpYmxpb3RlayB1bmRlciBieWdncHJvY2VkdXJlbiAobORua2FyZmxhZ2dhbiBcZkJcLWxcZlBcZkliaWJsaW90ZWtcZlApLgorLlRQIAorXGZJYmlu5HJcZlAgXGZCaW5uZWjlbGxlciBlbiByZWZlcmVucyB0aWxsIHN5bWJvbGVuXGZQIFxmSXN5bVxmUCBcZkJzb20gaW50ZSBrYW4ga29wcGxhczsgZGV0IORyIHRyb2xpZ2VuIGV0dCBpbnN0aWNrc3Byb2dyYW1cZlAKK0RlbiBhbmdpdm5hIHN5bWJvbGVuIGhpdHRhZGVzIGludGUgaSBiaWJsaW90ZWtlbiBzb20gbORua2F0cyBtb3QKK2JpbuRyZW4uIFxmSUJpbuRyXGZQIORyIGFudGFnbGlnZW4gZXR0IGluc3RpY2tzcHJvZ3JhbSBvY2ggc3ltYm9sZW4KK3RpbGxoYW5kYWjlbGxzIGF2IHByb2dyYW1tZXQgc29tIGzkc2VyIGluIGRldC4gSSB0ZW9yaW4gaGFyIGludGUKK2luc3RpY2tzcHJvZ3JhbSBu5WdvdCBTT05BTU4sIG1lbiBkZW4gaORyIGJpbuRyZW4gaGFyIGV0dCBvY2ggZORybWVkIGt1bmRlCitkZXQgaW50ZSB0eWRsaWd0IGlkZW50aWZpZXJhcyBzb20gaW5zdGlja3Nwcm9ncmFtLiBEZXQgZmFrdHVtIGF0dCBiaW7kcmVuCitiZWZpbm5lciBzaWcgaSBlbiBpY2tlXC1vZmZlbnRsaWcga2F0YWxvZyDkciBkb2NrIGVuIHN0YXJrIGluZGlrYXRpb24gcOUgYXR0CitkZXQgaW50ZSDkciBldHQgdmFubGlndCBkZWxhdCBiaWJsaW90ZWsuIE9tIGJpbuRyZW4gZmFrdGlza3Qg5HIgZXR0CitpbnN0aWNrc3Byb2dyYW0ga2FuIGR1IGlnbm9yZXJhIHZhcm5pbmdlbi4gRGV0IORyIGRvY2sgYWxsdGlkIG32amxpZ3QgYXR0CitkZXQg5HIgZXR0IHJpa3RpZ3QgYmlibGlvdGVrIG9jaCBhdHQgcHJvZ3JhbSBzb20gbORua2VyIGRldCBhbnbkbmRlciBlbgorUlBBVEggc+UgYXR0IGRlbiBkeW5hbWlza2EgbORua2FyZW4gaGl0dGFyIGRldC4gT20gc+Ug5HIgZmFsbGV0IORyCitiaWJsaW90ZWtldCB0cmFzaWd0IG9jaCBiZWj2dmVyIGZpeGFzLgorLlRQIAorXGZCQmVyb2VuZGV0IHDlXGZQIFxmSWJpYmxpb3Rla1xmUCBcZkJrdW5kZSB1bmR2aWthcyBvbSBpbnRlXGZQIFxmSWJpbuRyZXJcZlAgXGZCbWVuaW5nc2z2c3QgbORua2FkZXMgbW90IGRldCAoZGUgYW525G5kZXIgaW5nYSBhdiBkZXNzIHN5bWJvbGVyKS5cZlAKK0luZ2VuIGF2IFxmSWJpbuRyZXJcZlBuYSBzb20gbORua2FzIG1vdCBcZkliaWJsaW90ZWtcZlAgYW525G5kZXIgbuVnb24gYXYKK3N5bWJvbGVybmEgc29tIHRpbGxoYW5kYWjlbGxzIGF2IGJpYmxpb3Rla2V0LiBHZW5vbSBhdHQgcuR0dGEgYWxsYSBiaW7kcmVyCitrYW4gZHUgdW5kdmlrYSBiZXJvZW5kZXQgc29tIGfkbGxlciBkZXR0YSBiaWJsaW90ZWsgKHPldmlkYSBpbnRlIHNhbW1hCitiZXJvZW5kZSDkdmVuIGdlbmVyZXJhcyBhdiBldHQgYW5uYXQgYmlibGlvdGVrIHNvbSBmYWt0aXNrdCBhbnbkbmRzKS4KKy5UUCAKK1xmSWJpbuRyXGZQIFxmQmJvcmRlIGludGUgdmFyYSBs5G5rYXQgbW90XGZQIFxmSWJpYmxpb3Rla1xmUCBcZkIoaW5nYSBhdiBzeW1ib2xlcm5hIGFuduRuZHMpLlxmUAorXGZJQmlu5HJcZlAgbORua2FyIG1vdCBldHQgYmlibGlvdGVrIGRlbiBpbnRlIGJlaPZ2ZXIuIERldCDkciBpbnRlIGV0dCBwcm9ibGVtLAorTWVuIGdlbm9tIGF0dCBpbnRlIGzkbmthIGJpYmxpb3Rla2V0IG1vdCBiaW7kcmVuIGthbiBtYW4gdXBwbuUgZW4gbWluZHJlCitwcmVzdGFuZGFm9nJi5HR0cmluZy4gVmFybmluZ2VuIGtvbnRyb2xsZXJhciBzYW1tYSBpbmZvcm1hdGlvbiBzb20gZGVuCitm9nJlZ+VlbmRlLCBtZW4gZ/ZyIGRldCBm9nIgdmFyamUgYmlu5HIgaXN05GxsZXQgZvZyIGF0dCB1dGb2cmEga29udHJvbGxlbgorZ2xvYmFsdCBw5SBhbGxhIGFuYWx5c2VyYWRlIGJpbuRyZXIuCisuU0ggRkVMTUVEREVMQU5ERU4KK1xmQmRwa2dcLXNobGliZGVwc1xmUCBrb21tZXIgYXR0IG1pc3NseWNrYXMgb20gZGV0IGludGUgaGl0dGFyIGV0dCD2cHBldAorYmlibGlvdGVrIHNvbSBlbiBhdiBiaW7kcmVybmEgYW525G5kZXIsIGVsbGVyIG9tIGJpYmxpb3Rla2V0IHNha25hcgorYXNzb2NpZXJhZCBiZXJvZW5kZWluZm9ybWF0aW9uIChhbnRpbmdlbiBlbiBzaGxpYnNcLWZpbCBlbGxlciBlbgorc3ltYm9sc1wtZmlsKS4gRXR0IPZwcGV0IGJpYmxpb3RlayBoYXIgZXR0IFNPTkFNTiBvY2gg5HIgdmVyc2lvbnNoYW50ZXJhZAorKGxpYnZhZHNvbWhlbHN0LnNvLlxmSVhcZlApLiBFdHQgcHJpdmF0IGJpYmxpb3RlayAodGlsbCBleGVtcGVsIGV0dAoraW5zdGlja3Nwcm9ncmFtKSBi9nIgaW50ZSBoYSBu5WdvdCBTT05BTU4gb2NoIGJlaPZ2ZXIgaW50ZSB2YXJhCit2ZXJzaW9uc2hhbnRlcmF0LgorLlRQIAorXGZCaGl0dGFkZSBpbnRlIGJpYmxpb3Rla2V0XGZQIFxmSWJpYmxpb3Rla1wtc29uYW1uXGZQIFxmQnNvbSBiZWj2dnMgZvZyXGZQIFxmSWJpbuRyXGZQIFxmQihkZXNzIFJQQVRIIORyICJcZlBcZklycGF0aFxmUFxmQiIpXGZQCitcZklCaW7kclxmUCBhbnbkbmRlciBldHQgYmlibGlvdGVrIHNvbSBoZXRlciBcZkliaWJsaW90ZWtcLXNvbmFtblxmUCwgbWVuCitcZkJkcGtnXC1zaGxpYmRlcHNcZlAga3VuZGUgaW50ZSBoaXR0YSBiaWJsaW90ZWtldC4gXGZCZHBrZ1wtc2hsaWJkZXBzXGZQIHNrYXBhciBlbgorbGlzdGEg9nZlciBrYXRhbG9nZXIgZGV0IHNlciBpIHDlIGb2bGphbmRlIHPkdHQ6IGthdGFsb2dlcm5hIHNvbSBiZXNrcml2cyBpCitSUEFUSCBpIGJpbuRyZW4sIGthdGFsb2dlciBzb20gYmVza3JpdnMgaSAvZXRjL2xkLnNvLmNvbmYsIGthdGFsb2dlciBpCittaWxq9nZhcmlhYmVsbiBMRF9MSUJSQVJZX1BBVEgsIG9jaCB2YW5saWdhIPZwcG5hIGthdGFsb2dlciAoL2xpYiwgL3Vzci9saWIsCisvbGliMzIsIC91c3IvbGliMzIsIC9saWI2NCwgL3Vzci9saWI2NCkuIETkcmVmdGVyIHNlciBkZXQgaSBtb3RzdmFyYW5kZQora2F0YWxvZ2VyIGkgYnlnZ3Ry5GRldCBm9nIgcGFrZXRldCBzb20gaW5uZWjlbGxlciBiaW7kcmVuIHNvbSBhbmFseXNlcmFzLCBpCitwYWtldGJ5Z2d0cuRkZXQgc29tIGFuZ2VzIG1lZCBrb21tYW5kb3JhZHNmbGFnZ2FuIFwtUywgaSBhbmRyYSBwYWtldHMKK2J5Z2d0cuRkIHNvbSBpbm5laOVsbGVyIGVuIERFQklBTi9zaGxpYnNcLWZpbCBvY2ggc2x1dGxpZ2VuIGkKK3JvdGthdGFsb2dlbi4gT20gYmlibGlvdGVrZXQgaW50ZSBoaXR0YXMgaSBu5WdvbiBhdiBkZXNzYSBrYXRhbG9nZXIgZuVyIGR1CitkZXQgaORyIGZlbG1lZGRlbGFuZGV0LgorCitPbSBiaWJsaW90ZWtldCBzb20gaW50ZSBoaXR0YWRlcyBsaWdnZXIgaSBlbiBwcml2YXQga2F0YWxvZyBpIHNhbW1hIHBha2V0Citi9nIgZHUgbORnZ2EgdGlsbCBrYXRhbG9nZW4gaSBMRF9MSUJSQVJZX1BBVEguIE9tIGRldCBmaW5ucyBpIGV0dCBhbm5hdAorYmlu5HJwYWtldCBzb20gYnlnZ3MgYvZyIGR1IHNlIHRpbGwgYXR0IHNobGlic1wtIGVsbGVyIHN5bWJvbHNcLWZpbGVuIGb2cgorcGFrZXRldCByZWRhbiBoYXIgc2thcGF0cyBvY2ggYXR0IExEX0xJQlJBUllfUEFUSCBpbm5laOVsbGVyIGtvcnJla3Qga2F0YWxvZworc29tIGRldCBvY2tz5SBsaWdnZXIgaSBlbiBwcml2YXQga2F0YWxvZy4KKy5UUCAKK1xmQmhpdHRhZGUgaW5nZW4gYmVyb2VuZGVpbmZvcm1hdGlvbiBm9nJcZlAgXGZJYmlibGlvdGVrc2ZpbFxmUCBcZkIoYW525G5kIGF2XGZQIFxmSWJpbuRyXGZQXGZCKS5cZlAKK0JpYmxpb3Rla2V0IHNvbSBiZWj2dnMgYXYgXGZJYmlu5HJcZlAgaGl0dGFkZXMgaSBcZkliaWJsaW90ZWtzZmlsXGZQIGF2CitcZkJkcGtnXC1zaGxpYmRlcHNcZlAsIG1lbiBcZkJkcGtnXC1zaGxpYmRlcHNcZlAga3VuZGUgaW50ZSBoaXR0YSBu5WdvbgorYmVyb2VuZGVpbmZvcm1hdGlvbiBm9nIgYmlibGlvdGVrZXQuIEb2ciBhdHQgaGl0dGEgYmVyb2VuZGV0IGhhciBkZXQgZvZyc/ZrdAora29wcGxhIGJpYmxpb3Rla2V0IG1vdCBldHQgRGViaWFucGFrZXQgbWVkIGhq5GxwIGF2IFxmQmRwa2cgXC1TXGZQCitcZkliaWJsaW90ZWtzZmlsXGZQLiBE5HJlZnRlciBz5WcgZGV0IGkgbW90c3ZhcmFuZGUgc2hsaWJzXC0gb2NoIHN5bWJvbHNcLWZpbGVyIGkKKy92YXIvbGliL2Rwa2cvaW5mby8sIHNhbXQgaSBkZSBvbGlrYSBwYWtldGVucyBieWdndHLkZCAoZGViaWFuLyovREVCSUFOLykuCisKK0RldCBo5HIgZmVsZXQga2FuIG9yc2FrYXMgYXYgZmVsYWt0aWdhIGVsbGVyIHNha25hZGUgc2hsaWJzXC0gZWxsZXIKK3N5bWJvbHNcLWZpbGVyIGkgYmlibGlvdGVrZXRzIHBha2V0LiBEZXQga2FuIOR2ZW4gaW50cuRmZmEgb20gYmlibGlvdGVrZXQKK2J5Z2d0cyBpIHNhbW1hIGvkbGxrb2RzcGFrZXQgb2NoIG9tIHNobGlic1wtZmlsZW4g5G5udSBpbnRlIGhhciBza2FwYXRzIChk5QorbeVzdGUgZHUgZml4YSBkZWJpYW4vcnVsZXMgc+UgYXR0IGRldCBza2FwYXIgc2hsaWJzXC1maWxlbiBpbm5hbiBkZXQgYW5yb3BhcgorXGZCZHBrZ1wtc2hsaWJkZXBzXGZQKS4gRmVsYWt0aWcgUlBBVEgga2FuIG9ja3PlIGxlZGEgdGlsbCBhdHQgYmlibGlvdGVrZXQKK2hpdHRhcyB1bmRlciBldHQgaWNrZVwta2Fub25pc2t0IG5hbW4gKHRpbGwgZXhlbXBlbDoKKy91c3IvbGliL29wZW5vZmZpY2Uub3JnLy4uL2xpYi9saWJzc2wuc28uOS44IGlzdORsbGV0IGb2cgorL3Vzci9saWIvbGlic3NsLnNvLjAuOS44KSBzb20gaW50ZSBhc3NvY2llcmFzIHRpbGwgbuVnb3QgcGFrZXQsCitcZkJkcGtnXC1zaGxpYmRlcHNcZlAgZvZyc/ZrZXIgZ+UgcnVudCBkZXR0YSBnZW5vbSBhdHQgZmFsbGEgdGlsbGJha2EgcOUgZXR0CitrYW5vbmlza3QgbmFtbiAobWVkIFxmQnJlYWxwYXRoXGZQKDMpKSwgbWVuIGRldCBmdW5nZXJhciBrYW5za2UgaW50ZQorYWxsdGlkLiBEZXQg5HIgYWxsdGlkIGLkc3QgYXR0IHN05GRhIHVwcCBSUEFUSCBpIGJpbuRyZW4gZvZyIGF0dCB1bmR2aWthCitwcm9ibGVtLgorCitPbSBkdSBhbnJvcGFyIFxmQmRwa2dcLXNobGliZGVwc1xmUCBpIHByYXRzYW10IGzkZ2UgKFwtdikga29tbWVyIGRldCBnZSBteWNrZXQKK21lciBpbmZvcm1hdGlvbiBvbSB2YXIgZGV0IGb2cnP2a3RlIGhpdHRhIGJlcm9lbmRlaW5mb3JtYXRpb25lbi4gRGV0IGthbgordmFyYSBhbnbkbmRiYXJ0IG9tIGR1IGludGUgZvZyc3TlciB2YXJm9nIgZHUgZuVyIGZlbG1lZGRlbGFuZGV0LgorLlNIICJTRSDEVkVOIgorXGZCZGViXC1zaGxpYnNcZlAoNSksIFxmQmRlYlwtc3ltYm9sc1xmUCg1KSwgXGZCZHBrZ1wtZ2Vuc3ltYm9sc1xmUCgxKS4KKy4KKy5TSCBG1lJGQVRUQVJFCitVcHBob3ZzcuR0dHNza3lkZGF0IKkgMTk5NVwtMTk5NiBJYW4gSmFja3NvbgorLmJyCitVcHBob3ZzcuR0dHNza3lkZGF0IKkgMjAwMCBXaWNoZXJ0IEFra2VybWFuCisuYnIKK1VwcGhvdnNy5HR0c3NreWRkYXQgqSAyMDA2IEZyYW5rIExpY2h0ZW5oZWxkCisuYnIKK1VwcGhvdnNy5HR0c3NreWRkYXQgqSAyMDA3XC0yMDA4IFJhcGhh62wgSGVydHpvZworLnNwCitEZXR0YSDkciBmcmkgcHJvZ3JhbXZhcmE7IHNlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBlbGxlcgorc2VuYXJlIGb2ciBrb3BpZXJpbmdzdmlsbGtvci4gRGV0IGZpbm5zIElOR0VOIEdBUkFOVEkuCisuU0ggItZWRVJTxFRUTklORyIKK1BldGVyIEtyZWZ0aW5nIG9jaCBEYW5pZWwgTnlsYW5kZXIuCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9zdi9kcGtnLXNvdXJjZS4xIGIvZHBrZy0xLjE2LjEuMS9tYW4vc3YvZHBrZy1zb3VyY2UuMQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yOWNkOWI4Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vc3YvZHBrZy1zb3VyY2UuMQpAQCAtMCwwICsxLDY2OSBAQAorLlwiIEF1dGhvcnM6IElhbiBKYWNrc29uLCBSYXBoYcOrbCBIZXJ0em9nCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkcGtnXC1zb3VyY2UgMSAyMDExXC0wOFwtMTQgRGViaWFucHJvamVrdGV0IGRwa2dcLXZlcmt0eWdlbgorLlNIIE5BTU4KK2Rwa2dcLXNvdXJjZSBcLSBWZXJrdHlnIGb2ciBhdHQgbWFuaXB1bGVyYSBEZWJpYW5r5Gxsa29kc3Bha2V0ICguZHNjKQorLgorLlNIIFNZTk9QUworXGZCZHBrZ1wtc291cmNlXGZQIFtcZklmbGFnZ2FcZlAuLi5dIFxmSeV0Z+RyZFxmUAorLgorLlNIIEJFU0tSSVZOSU5HCitcZkJkcGtnXC1zb3VyY2VcZlAgcGFja2FyIG9jaCBwYWNrYXIgdXBwIERlYmlhbmvkbGxrb2RzYXJraXYuCisKK0luZ2EgYXYgZGVzc2Ega29tbWFuZG9uIHRpbGzldGVyIGF0dCBmbGVyYSBmbGFnZ29yIGtvbWJpbmVyYXMgdGlsbCBldHQsIG9jaAorZGUgdGlsbOV0ZXIgaW50ZSBhdHQgduRyZGV0IHDlIGVuIGZsYWdnYSBhbmdlcyBzb20gZXR0IHNlcGFyYXQgYXJndW1lbnQuCisuCisuU0ggS09NTUFORE9OCisuVFAgCitcZkJcLXggXGZQXGZJZmlsbmFtblxmUFxmQi5kc2MgXGZQW1xmSXV0ZGF0YWthdGFsb2dcZlBdCitFeHRyYWhlcmEgZXR0IGvkbGxrb2RzcGFrZXQuIEV0dCBhcmd1bWVudCBzb20gaW50ZSDkciBlbiBmbGFnZ2EgbeVzdGUgYW5nZXMsCituYW1uZXQgcOUgZGViaWFua+RsbGtvZHNzdHlyZmlsZW4gKFxmQi5kc2NcZlApLiBFdHQgdmFsZnJpdHQgYW5kcmEgYXJndW1lbnQgc29tCitpbnRlIORyIGVuIGZsYWdnYSBrYW4gYW5nZXMgZvZyIGF0dCBiZXN05G1tYSB2aWxrZW4ga2F0YWxvZyBr5Gxsa29kZW4gc2thbGwKK3BhY2thcyB1cHAgaSwgZGV0IGblciBpbnRlIGV4aXN0ZXJhLiBPbSBkdSBpbnRlIGFuZ2VyIG7lZ29uIHV0ZGF0YWthdGFsb2cKK2V4dHJhaGVyYXMga+RsbGtvZHNwYWtldGV0IHRpbGwgZW4ga2F0YWxvZyBzb20gaGV0ZXIgXGZJa+RsbGtvZFxmUFwtXGZJdmVyc2lvblxmUCBpCitkZW4gYWt0dWVsbGEgYXJiZXRza2F0YWxvZ2VuLgorCitcZkJkcGtnXC1zb3VyY2VcZlAgbORzZXIgbmFtbmVuIHDlIGRlIPZ2cmlnYSBmaWxlciBzb20gaW5n5XIgaSBr5Gxsa29kc3Bha2V0ZXQKK2Zy5W4gc3R5cmZpbGVuOyBkZSBhbnRhcyB2YXJhIGkgc2FtbWEga2F0YWxvZyBzb20gXGZCLmRzY1xmUFwtZmlsZW4uCisKK0ZpbGVybmEgaSBkZXQgZXh0cmFoZXJhZGUgcGFrZXRldCBrb21tZXIgYXR0IGhhIGJlaPZyaWdoZXQgb2NoIORnYXJlIHNhdHRhCit0aWxsIGRldCBzb20ga3VuZGUgZvZyduRudGFzIG9tIGZpbGVybmEgb2NoIGthdGFsb2dlcm5hIGJhcmEgaGFkZSBza2FwYXRzIFwtCitrYXRhbG9nZXIgb2NoIGv2cmJhcmEgZmlsZXIga29tbWVyIGhhIDA3Nzcgb2NoIGVua2xhIGZpbGVyIDA2NjYsIGLlZGEKK21vZGlmaWVyYWRlIGF2IHVwcGFja2FyZW5zIHVtYXNrOyBvbSBm9nLkbGRyYWthdGFsb2dlbiDkciBzZXRnaWQga29tbWVyIGRlCitleHRyYWhlcmFkZSBrYXRhbG9nZXJuYSBvY2tz5SBhdHQgdmFyYSBkZXQsIG9jaCBzYW10bGlnYSBmaWxlciBvY2gga2F0YWxvZ2VyCitrb21tZXIg5HJ2YSBkZXNzIGdydXBw5GdhcnNrYXAuCisKK09tIGvkbGxrb2RlbiBhbnbkbmRlciBldHQgYW5uYXQgZm9ybWF0IORuIHN0YW5kYXJkZm9ybWF0ZXQgKGfkbGxlciBm9nIKK27kcnZhcmFuZGUgYWxsYSBmb3JtYXQgZvZydXRvbSAiMS4wIiksIGtvbW1lciBkZXNzIG5hbW4gYXR0IGxhZ3JhcyBzb20KK1xmQmRlYmlhbi9zb3VyY2UvZm9ybWF0XGZQIHPlIGF0dCBkZXQgYW525G5kcyBzb20gc3RhbmRhcmQgbuRyIGvkbGxrb2RzcGFrZXRldAorYnlnZ3MgcOUgbnl0dC4KKworLlRQIAorXGZCXC1iXGZQIFxmSWthdGFsb2dcZlAgW1xmSWZvcm1hdHNwZWNpZmlrYVwtZmxhZ2dvclxmUF0KK0J5Z2cgZXR0IGvkbGxrb2RwYWtldC4gRGV0IGb2cnN0YSBhcmd1bWVudGV0IHNvbSBpbnRlIORyIGVuIGZsYWdnYSB0YXMgc29tCituYW1uIHDlIGthdGFsb2dlbiBzb20gaW5uZWjlbGxlciBkZXQgZGViaWFuaXNlcmFkZSBr5Gxsa29kc3Ry5GRldCAoZHZzLiBtZWQKK3VuZGVya2F0YWxvZ2VuICJkZWJpYW4iIG9jaCBrYW5za2Ug5G5kcmluZ2FyIHDlIG9yaWdpbmFsZmlsZXJuYSkuIEJlcm9lbmRlCitw5SB2aWxrZXQga+RsbGtvZHNwYWtldGZvcm1hdCBzb20gYW525G5kcyBm9nIgYXR0IGJ5Z2dhIGZvcm1hdGV0IGthbgoreXR0ZXJsaWdhcmUgcGFyYW1ldHJhciBrYW5za2UgZ29kdGFzLgorCitcZkJkcGtnXC1zb3VyY2VcZlAga29tbWVyIGJ5Z2dhIGvkbGxrb2RzcGFrZXRldCBtZWQgZGV0IGb2cnN0YSBmb3JtYXQgc29tCitmdW5nZXJhciBmcuVuIGRlbm5hIGxpc3RhIGkgZGVubmEgb3JkbmluZzogZm9ybWF0ZXQgc29tIGFuZ2VzIG1lZAora29tbWFuZG9yYWRzZmxhZ2dhbiBcZklcLVwtZm9ybWF0XGZQLCBmb3JtYXRldCBzb20gYW5nZXMgaQorXGZJZGViaWFuL3NvdXJjZS9mb3JtYXRcZlAsICIxLjAiLiBTdGFuZGFyZHbkcmRldCAiMS4wIiByZWtvbW1lbmRlcmFzIGVqIG9jaAora29tbWVyIGF0dCB0YXMgYm9ydCBlbiBn5W5nIGkgZnJhbXRpZGVuLCBkdSBi9nIgYWxsdGlkIGRva3VtZW50ZXJhIGRldAor9m5za2FkZSBr5Gxsa29kc2Zvcm1hdGV0IGkgXGZCZGViaWFuL3NvdXJjZS9mb3JtYXRcZlAuIFNlIGF2c25pdHRldCBcZkJGT1JNQVQgUMUKK0vETExLT0RTUEFLRVRcZlAgZvZyIGVuIHV0ZvZybGlnIGJlc2tyaXZuaW5nIGF2IGRlIG9saWthCitr5Gxsa29kc3Bha2V0Zm9ybWF0ZW4uCisKKy5UUCAKK1xmQlwtXC1wcmludFwtZm9ybWF0XGZQIFxmSWthdGFsb2dcZlAKK1Zpc2EgZm9ybWF0ZXQgc29tIHNrdWxsZSBhbnbkbmRhcyBm9nIgYXR0IGJ5Z2dhIGvkbGxrb2RzcGFrZXRldCBvbQorXGZCZHBrZ1wtc291cmNlIFwtYlxmUCBcZklrYXRhbG9nXGZQIHNrdWxsZSBr9nJhcyAodW5kZXIgc2FtbWEgZvZyaOVsbGFuZGVuIG9jaCBtZWQKK3NhbW1hIHBhcmFtZXRyYXIpLgorCisuVFAgCitcZkJcLVwtYmVmb3JlXC1idWlsZFxmUCBcZklrYXRhbG9nXGZQCitL9nIgbW90c3ZhcmFuZGUga3JvayBm9nIga+RsbGtvZHNwYWtldGZvcm1hdGV0LiBLcm9rZW4gYW5yb3BhcyBpbm5hbiBu5WdvdAorZnLlbiBwYWtldGV0IGJ5Z2dzIChcZkJkcGtnXC1idWlsZHBha2NhZ2VcZlAgYW5yb3BhciBkZXQgduRsZGlndCB0aWRpZ3QsIHRpbGwKK29jaCBtZWQgZvZyZSBcZkJkZWJpYW4vcnVsZXMgY2xlYW5cZlApLiBLb21tYW5kb3Qg5HIgaWRlbXBvdGVudCBvY2gga2FuIGFucm9wYXMKK2ZsZXJhIGflbmdlci4gRGV0IORyIGludGUgYWxsYSBr5Gxsa29kc2Zvcm1hdCBzb20gaW1wbGVtZW50ZXJhciBu5WdvdCBpIGRlbgoraORyIGtyb2tlbiwgb2NoIGRlIHNvbSBn9nIgZGV0IGb2cmJlcmVkZXIgb2Z0YXN0IGvkbGxrb2RzdHLkZGV0IGb2ciBhdHQKK2J5Z2dhcywgdGlsbCBleGVtcGVsIGdlbm9tIGF0dCBzZSB0aWxsIGF0dCBEZWJpYW5wYXRjaGFyIGhhciBhcHBsaWNlcmF0cy4KKworLlRQIAorXGZCXC1cLWFmdGVyXC1idWlsZFxmUCBcZklrYXRhbG9nXGZQCitL9nIgbW90c3ZhcmFuZGUga3JvayBm9nIga+RsbGtvZHNwYWtldGZvcm1hdGV0LiBLcm9rZW4gYW5yb3BhcyBlZnRlciBhdHQKK2FsbHQgZnLlbiBwYWtldGV0IGJ5Z2d0cyAoXGZCZHBrZ1wtYnVpbGRwYWtjYWdlXGZQIGFucm9wYXIgZGV0IHNpc3QpLiBLb21tYW5kb3QKK+RyIGlkZW1wb3RlbnQgb2NoIGthbiBhbnJvcGFzIGZsZXJhIGflbmdlci4gRGV0IORyIGludGUgYWxsYSBr5Gxsa29kc2Zvcm1hdAorc29tIGltcGxlbWVudGVyYXIgbuVnb3QgaSBkZW4gaORyIGtyb2tlbiwgb2NoIGRlIHNvbSBn9nIgZGV0IGFuduRuZGVyIGRlbgorbm9ybWFsdCBm9nIgYXR0IOV0ZXJzdORsbGEgZGV0IHNvbSBcZkJcLVwtYmVmb3JlXC1idWlsZFxmUCBoYXIgZ2pvcnQuCisKKy5UUCAKK1xmQlwtXC1jb21taXRcZlAgW1xmSWthdGFsb2dcZlBdIC4uLgorU3BhcmEg5G5kcmluZ2FyIGkga+RsbGtvZHN0cuRkZXQgc29tIGhhciBwYWNrYXRzIHVwcCBpIFxmSWthdGFsb2dcZlAuIEtvbW1hbmRvdAora2FuIHRhIHl0dGVybGlnYXJlIHBhcmFtZXRyYXIgYmVyb2VuZGUgcOUga+RsbGtvZHNmb3JtYXRldC4gRXR0IGZlbCBrb21tZXIKK3JhcHBvcnRlcmFzIGb2ciBmb3JtYXQgZORyIG9wZXJhdGlvbmVuIGludGUgaGFyIG7lZ29uIGJldHlkZWxzZS4KKworLlRQIAorXGZCXC1oXGZQLCBcZkJcLVwtaGVscFxmUAorVmlzYXIgaGrkbHBza+RybSBvY2ggYXZzbHV0YXIuCisuVFAgCitcZkJcLVwtdmVyc2lvblxmUAorVmlzYXIgdmVyc2lvbiBvY2ggYXZzbHV0YXIuCisuCisuU0ggIkFMTE3ETk5BIEJZR0dGTEFHR09SIgorLlRQIAorXGZCXC1jXGZQXGZJY29udHJvbFwtZmlsXGZQCitBbmdlciBodXZ1ZGvkbGxrb2Rzc3R5cmZpbCBzb20gaW5mb3JtYXRpb24gc2thbGwgbORzYXMgZnLlbi4gU3RhbmRhcmR25HJkZQor5HIgXGZCZGViaWFuL2NvbnRyb2xcZlAuIE9tIGV0dCByZWxhdGl2dCBz9mt25GdzbmFtbiBhbmdlcyB0b2xrYXMgZGV0IGZy5W4KK2vkbGxrb2RzdHLkZGV0cyB0b3Bwbml25WthdGFsb2cuCisuVFAgCitcZkJcLWxcZlBcZknkbmRyaW5nc2xvZ2dmaWxcZlAKK0FuZ2VyIORuZHJpbmdzbG9nZ3NmaWwgc29tIGluZm9ybWF0aW9uIHNrYWxsIGzkc2FzIGZy5W4uIFN0YW5kYXJkduRyZGUg5HIKK1xmQmRlYmlhbi9jaGFuZ2Vsb2dcZlAuIE9tIGV0dCByZWxhdGl2dCBz9mt25GdzbmFtbiBhbmdlcyB0b2xrYXMgZGV0IGZy5W4KK2vkbGxrb2RzdHLkZGV0cyB0b3Bwbml25WthdGFsb2cuCisuVFAgCitcZkJcLUZcZlBcZknkbmRyaW5nc2xvZ2dmb3JtYXRcZlAKK0FuZ2VyIGZvcm1hdCBw5SDkbmRyaW5nc2xvZ2dlbi4gU29tIHN0YW5kYXJkIGzkc2VzIGZvcm1hdGV0IGZy5W4gZW4gc3BlY2llbGwKK3JhZCBu5HJhIHNsdXRldCBhdiDkbmRyaW5nc2xvZ2dlbiwgZWxsZXIgc+UgYW525G5kcyBEZWJpYW5zIHN0YW5kYXJkZm9ybWF0CitvbSBpbmdlbiBpbmZvcm1hdGlvbiBoaXR0YXMuCisuVFAgCitcZkJcLVwtZm9ybWF0PVxmUFxmSXbkcmRlXGZQCitBbnbkbmQgZGV0IGdpdm5hIGZvcm1hdGV0IGb2ciBhdHQgYnlnZ2Ega+RsbGtvZHNwYWtldGV0LiBEZXQg9nZlcnN0eXIgaW50ZQorZXR0IGV2ZW50dWVsbHQgZm9ybWF0IHNvbSBhbmdlcyBpIFxmQmRlYmlhbi9zb3VyY2UvZm9ybWF0XGZQLgorLlRQIAorXGZCXC1WXGZQXGZJbmFtblxmUFxmQj1cZlBcZkl25HJkZVxmUAorU3TkbGxlciBpbiBlbiB1dGRhdGFzdWJzdGl0dWVyaW5nc3ZhcmlhYmVsLiBTZSBcZkJkZWJcLXN1YnN0dmFyc1xmUCg1KSBm9nIgZW4KK2Jlc2tyaXZuaW5nIGF2IHV0ZGF0YXN1YnN0aXR1ZXJpbmcuCisuVFAgCitcZkJcLVRcZlBcZklzdWJzdHZhcnNcLWZpbFxmUAorTORzIHN1YnN0aXR1ZXJpbmdzdmFyaWFibGVyIGZy5W4gXGZJc3Vic3R2YXJmaWxcZlA7IHN0YW5kYXJkduRyZGUg5HIgYXR0IGludGUKK2zkc2EgbuVnb24gZmlsLkZsYWdnYW4ga2FuIGFuduRuZGFzIGZsZXJhIGflbmdlciBm9nIgYXR0IGzkc2EKK3N1YnN0aXR1ZXJpbmdzdmFyaWFibGVyIGZy5W4gZmxlcmEgZmlsZXIuCisuVFAgCitcZkJcLURcZlBcZklm5Gx0XGZQXGZCPVxmUFxmSXbkcmRlXGZQCitFcnPkdHQgZWxsZXIgbORnZyB0aWxsIGV0dCBm5Gx0IGkgZGVuIGdlbmVyZXJhZGUgY29udHJvbFwtZmlsZW4uCisuVFAgCitcZkJcLVVcZlBcZklm5Gx0XGZQCitUYSBib3J0IGV0dCBm5Gx0IHVyIGRlbiBnZW5lcmVyYWRlIGNvbnRyb2xcLWZpbGVuLgorLlRQIAorXGZCXC1aXGZQXGZJa29tcHJpbWVyaW5nXGZQLCBcZkJcLVwtY29tcHJlc3Npb25cZlA9XGZJa29tcHJpbWVyaW5nXGZQCitBbmdlciB2aWxrZW4ga29tcHJpbWVyaW5nIHNvbSBza2FsbCBhbnbkbmRhcyBm9nIgZGUgc2thcGFkZSBmaWxlcm5hCisodGFyXC1ib2xsYXIgb2NoIGRpZmZhcikuIE9ic2VydmVyYSBhdHQgZmxhZ2dhbiBpbnRlIGf2ciBhdHQgYmVmaW50bGlnYQordGFyXC1ib2xsYXIgcGFja2FzIG9tLCB1dGFuIGVuYmFydCBw5XZlcmthciBueWEgZmlsZXIuIFbkcmRlbiBzb20gc3T2ZHMg5HI6CitcZklnemlwXGZQLCBcZkliemlwMlxmUCwgXGZJbHptYVxmUCBzYW10IFxmSXh6XGZQLiBcZklnemlwXGZQIORyIGb2cnZhbGV0LiBTdPZkIGb2ciBcZkl4elxmUAorZmlubnMgYmFyYSBmcuVuIG9jaCBtZWQgZHBrZ1wtZGV2IDEuMTUuNS4KKy5UUCAKK1xmQlwtelxmUFxmSW5pduVcZlAsIFxmQlwtXC1jb21wcmVzc2lvblwtbGV2ZWxcZlA9XGZJbml25VxmUAorS29tcHJpbWVyaW5nc25pduUgYXR0IGFuduRuZGEuIFNvbSBtZWQgXGZCXC1aXGZQIHDldmVya2FzIGJhcmEgZmlsZXIgc29tCitueXNrYXBhcy4gVuRyZGVuIHNvbSBzdPZkcyDkcjogXGZJMVxmUCB0aWxsIFxmSTlcZlAsIFxmSWJlc3RcZlAgKGLkc3QpIG9jaCBcZklmYXN0XGZQCisoc25hYmIpLiBcZkk5XGZQIORyIGb2cnZhbCBm9nIgZ3ppcCBvY2ggYnppcDIsIFxmSTZcZlAgZvZyIHh6IG9jaCBsem1hLgorLlRQIAorXGZCXC1pXGZQW1xmSXJlZy51dHRyXGZQXSwgXGZCXC1cLWRpZmZcLWlnbm9yZVxmUFs9XGZJcmVnLnV0dHJcZlBdCitEdSBrYW4gYW5nZSBldHQgcmVndWxq5HJ0IHV0dHJ5Y2sgaSBwZXJsZm9ybWF0IGb2ciBhdHQgbWF0Y2hhIGZpbGVyIHNvbSBkdQordmlsbCBza2FsbCBmaWx0cmVyYXMgdXQgdXIgbGlzdGFuIPZ2ZXIgZmlsZXIgZvZyIGRpZmZlbi4gKExpc3RhbiBza2FwYXMgYXYKK2V0dCBmaW5kXC1rb21tYW5kby4pIChPbSBr5Gxsa29kc3Bha2V0ZXQgYnlnZ3Mgc29tIGV0dCB2ZXJzaW9uIDNcLXBha2V0IG1lZAorZXR0IFZDUyBrYW4gZGV0dGEgYW525G5kYXMgZvZyIGF0dCBpZ25vcmVyYSDkbmRyaW5nYXIgc29tIGludGUgaGFyIGNoZWNrYXRzCitpbiBw5SBkZSBhbmdpdm5hIGZpbGVybmEuIFwtaS4qIGtvbW1lciBhdHQgaWdub3JlcmEgc2FtdGxpZ2EuKSBcZkJcLWlcZlAgZW5zYW10Citha3RpdmVyYXIgZnVua3Rpb25lbiwgbWVkIGV0dCBzdGFuZGFyZHbkcmRlIHNvbSBmaWx0cmVyYXIgdXQgc3R5cmZpbGVyIG9jaAora2F0YWxvZ2VyIGZy5W4gZGUgZmxlc3RhIHZhbmxpZ2EgdmVyc2lvbnNoYW50ZXJpbmdzc3lzdGVtLCBz5GtlcmhldHNrb3Bpb3IsCit25HhsaW5nc2ZpbGVyIG9jaCBMaWJ0b29sXC1ieWdndXRkYXRha2F0YWxvZ2VyLiBFbmRhc3QgZXR0IHJlZ3VsauRydCBrYW4gdmFyYQorYWt0aXZ0LCBvbSBkdSBhbmdlciBmbGVyYSBcZkJcLWlcZlBcLWZsYWdnb3Ig5HIgZGV0IGRlbiBzaXN0YSBw5SBrb21tYW5kb3JhZGVuCitzb20gZ+RsbGVyLgorCitGbGFnZ2FuIORyIG15Y2tldCBhbnbkbmRiYXIgZvZyIGF0dCB1dGVzbHV0YSBleHRyYWZpbGVyIHNvbSBrb21tZXIgbWVkIGkKK2RpZmZlbiwgdC5leCBvbSBkdSB1bmRlcmjlbGxlciBkaW4ga+RsbGtvZCBpIGV0dCB2ZXJzaW9uc2hhbnRlcmluZ3NzeXN0ZW0KK29jaCB2aWxsIGFuduRuZGEgZW4gdXRjaGVja25pbmcgZvZyIGF0dCBieWdnYSBldHQga+RsbGtvZHNwYWtldCB1dGFuIGF0dCB0YQorbWVkIGRlIHl0dGVybGlnYXJlIGZpbGVyIG9jaCBkZXQgbm9ybWFsdCBpbm5laOVsbGVyICh0LmV4IENWUy8sIC5jdnNpZ25vcmUsCitcJi5zdm4vKS4gRGV0IGb2cnZhbGRhIHJlZ3VsauRyYSB1dHRyeWNrZXQgdORja2VyIHJlZGFuIGluIG3lbmdhIGF2IGRlc3NhLCBtZW4KK29tIGR1IORuZHJhciBkZXQsIGtvbSBpaOVnIGF0dCBkZXQgc29tIHN0YW5kYXJkIGthbiB0cuRmZmEgYWxsYSBkZWxhciBhdgorZmlsbmFtbmV0LiBT5Swgb20gZHUgdHLkZmZhIGJhcmEgYvZyamFuIGF2IGV0dCBmaWxuYW1uIGVsbGVyIGhlbGEgZmlsbmFtbgorbeVzdGUgZHUgc2rkbHYgbORnZ2EgdGlsbCBkZSBm9nJhbmtyaW5nYXIgc29tIORyIG72ZHbkbmRpZ2EgKHQuZXggJyhefC8pJywKK1wmJygkfC8pJykuCisuVFAgCitcZkJcLVwtZXh0ZW5kXC1kaWZmXC1pZ25vcmVcZlA9XGZJcmVnLnV0dHJcZlAKK0RldCByZWd1bGrkcmEgdXR0cnlja2V0IGkgcGVybGZvcm1hdCBzb20gYW5nYXZzIHV09mthciBzdGFuZGFyZHbkcmRldCBm9nIKK1xmQlwtXC1kaWZmXC1pZ25vcmVcZlAgb2NoIGRlc3MgbnV2YXJhbmRlIHbkcmRlIChvbSBzYXR0KS4gRGV0IGf2ciBz5SBnZW5vbSBhdHQKK2zkZ2dhIHRpbGwgIlxmQnxcZlBcZklyZWcudXR0cnlcZlAiIGVmdGVyIHN0YW5kYXJkdXR0cnlja2V0LiBGbGFnZ2FuIORyIG55dHRpZyBm9nIKK1xmQmRlYmlhbi9zb3VyY2Uvb3B0aW9uc1xmUCBm9nIgYXR0IGV4a2x1ZGVyYSBlbiBkZWwgYXV0b21hdGlza3QgZ2VuZXJlcmFkZQorZmlsZXIgZnLlbiBza2FwYW5kZXQgYXYgYXV0b21hdGlza2EgcGF0Y2hhci4KKy5UUCAKK1xmQlwtSVxmUFtcZklmaWxt9m5zdGVyXGZQXSwgXGZCXC1cLXRhclwtaWdub3JlXGZQWz1cZklmaWxt9m5zdGVyXGZQXQorT20gZmxhZ2dhbiBhbmdlcyBrb21tZXIgZmlsbmFtbmV0IGF0dCBz5G5kYXMgdmlkYXJlIHRpbGwgXGZCdGFyXGZQKDEpOnMKK1wtXC1leGNsdWRlXC1mbGFnZ2EgbuRyIGRldCBhbnJvcGFzIGb2ciBhdHQgc2thcGEgZW4gLm9yaWcudGFyLmd6IGVsbGVyCitcJi50YXIuZ3pcLWZpbC4gVGlsbCBleGVtcGVsIGtvbW1lciBcLUlDVlMgYXR0IGhvcHBhIPZ2ZXIgQ1ZTXC1rYXRhbG9nZXIgbuRyCit0YXIuZ3pcLWZpbGVuIHNrYXBhcy4gRmxhZ2dhbiBrYW4gdXBwcmVwYXMgZmxlcmEgZ+VuZ2VyIGb2ciBhdHQgbGlzdGEgZmxlcmEKK2ZpbG5hbW4gc29tIHNrYWxsIHV0ZXNsdXRhcy4KKworXGZCXC1pXGZQIGVuc2FtdCBha3RpdmVyYXIgZnVua3Rpb25lbiwgbWVkIGV0dCBzdGFuZGFyZHbkcmRlIHNvbSBmaWx0cmVyYXIgdXQKK3N0eXJmaWxlciBvY2gga2F0YWxvZ2VyIGZy5W4gZGUgZmxlc3RhIHZhbmxpZ2EgdmVyc2lvbnNoYW50ZXJpbmdzc3lzdGVtLAorc+RrZXJoZXRza29waW9yLCB25HhsaW5nc2ZpbGVyIG9jaCBMaWJ0b29sXC1ieWdndXRkYXRha2F0YWxvZ2VyLgorLlBQCitcZkJPYnNlcnZlcmE6XGZQIMR2ZW4gb20gZGUgYW525G5kcyB0aWxsIGxpa25hbmRlIORuZGFt5WwsIHPlIGhhciBcZkJcLWlcZlAgb2NoCitcZkJcLUlcZlAgduRsZGlndCBvbGlrYSBzeW50YXggb2NoIHNlbWFudGlrLiBcZkJcLWlcZlAga2FuIGVuZGFzdCBhbmdlcyBlbiBn5W5nIG9jaAordGFyIGV0dCBwZXJsXC1rb21wYXRpYmVsdCByZWd1bGrkcnQgdXR0cnljaywgdmlsa2V0IG1hdGNoYXMgbW90IGRlbiBrb21wbGV0dGEKK3JlbGF0aXZhIHP2a3bkZ2VuIGb2ciB2YXJqZSBmaWwuIFxmQlwtSVxmUCBrYW4gYW5nZXMgZmxlcmEgZ+VuZ2VyIG9jaCB0YXIgZXR0CitmaWxuYW1uc3P2a23kbnN0ZXIgbWVkIHNrYWxqb2tlcnRlY2tlbi4gTfZuc3RyZXQgbWF0Y2hhcyBtb3QgZGVuIGtvbXBsZXR0YQorcmVsYXRpdmEgc/ZrduRnZW4sIG1lbiDkdmVuIGluZGl2aWR1ZWxsdCBtb3QgdmFyamUga29tcG9uZW50IGkgc/ZrduRnZW4uIERlbgorZXhha3RhIHNlbWFudGlrZW4gZvZyIHRhcjpzIFwtXC1leGNsdWRlXC1mbGFnZ2Eg5HIgbuVnb3Qga29tcGxpY2VyYWQsIHNlCitodHRwOi8vd3d3LmdudS5vcmcvc29mdHdhcmUvdGFyL21hbnVhbC90YXIuaHRtbCN3aWxkY2FyZHMgZvZyIGZ1bGxzdORuZGlnCitkb2t1bWVudGF0aW9uLgorCitG9nJ2YWx0IHJlZ3VsauRydCB1dHRyeWNrIG9jaCBz9mtt9m5zdGVyIGb2ciBkZSBi5GdnZSBmbGFnZ29ybmEga2FuIHNlcyBpCit1dGRhdGEgZvZyIFxmQlwtXC1oZWxwXGZQXC1rb21tYW5kb3QuCisuU0ggIkFMTE3ETk5BIFVQUEFDS05JTkdTRkxBR0dPUiIKKy5UUCAKK1xmQlwtXC1ub1wtY29weVxmUAorS29waWVyYSBpbnRlIG9yaWdpbmFsXC10YXJib2xsYXIgaSBu5HJoZXRlbiBhdiBkZXQgdXBwYWNrYWRlIGvkbGxrb2RzcGFrZXRldC4KKy5UUCAKK1xmQlwtXC1ub1wtY2hlY2tcZlAKK0tvbnRyb2xsZXJhIGludGUgc2lnbmF0dXJlciBvY2gga29udHJvbGxzdW1tb3IgZvZyZSB1cHBhY2tuaW5nLgorLlRQIAorXGZCXC1cLXJlcXVpcmVcLXZhbGlkXC1zaWduYXR1cmVcZlAKK1bkZ3JhIHBhY2thIHVwcCBr5Gxsa29kc3Bha2V0ZXQgb20gZGV0IGludGUgaW5uZWjlbGxlciBlbiBPcGVuUEdQXC1zaWduYXR1cgorc29tIGthbiB2ZXJpZmllcmFzIGFudGluZ2VuIG1lZCBhbnbkbmRhcmVucyBcZkl0cnVzdGVka2V5cy5ncGdcZlBcLW55Y2tlbHJpbmcsCitlbiBhdiBkZSBz5GxqYXJzcGVjaWZrYSBueWNrZWxyaW5nYXJuYSwgZWxsZXIgZW4gYXYgZGUgb2ZmaWNpZWxsYQorRGViaWFubnlja2VscmluZ2FybmEgKFxmSS91c3Ivc2hhcmUva2V5cmluZ3MvZGViaWFuXC1rZXlyaW5nLmdwZ1xmUCBvY2gKK1xmSS91c3Ivc2hhcmUva2V5cmluZ3MvZGViaWFuXC1tYWludGFpbmVycy5ncGdcZlApLgorCisuU0ggIkZPUk1BVCBQxSBLxExMS09EU1BBS0VUIgorT20gZHUgaW50ZSB2ZXQgdmlsa2V0IGvkbGxrb2RzcGFrZXRmb3JtYXQgZHUgc2thbGwgYW525G5kYSwgYvZyIGR1CithbnRhZ2xpZ2VuIHbkbGphIGFudGluZ2VuICIzLjAgKHF1aWx0KSIgZWxsZXIgIjMuMCAobmF0aXZlKSIuIFNlCitodHRwOi8vd2lraS5kZWJpYW4ub3JnL1Byb2plY3RzL0RlYlNyYzMuMCBm9nIgaW5mb3JtYXRpb24gb20gaHVyIGRlc3NhCitmb3JtYXQgc+R0dHMgaSBwcm9kdWt0aW9uIGkgRGViaWFuLgorCisuU1MgIkZvcm1hdDogMS4wIgorRXR0IGvkbGxrb2RzcGFrZXQgaSBkZXR0YSBmb3JtYXQgYmVzdOVyIGFudGluZ2VuIGF2IGVuIFxmQi5vcmlnLnRhci5nelxmUCwKK2b2cmJ1bmRlbiBtZWQgZW4gXGZCLmRpZmYuZ3pcZlAsIGVsbGVyIGVuIGVuc2FtIFxmQi50YXIuZ3pcZlAgKGkgc+UgZmFsbCBhbnNlcworcGFrZXRldCB2YXJhIFxmSWVnZXRcZlAsICJcZkluYXRpdmVcZlAiKS4KKworXGZCVXBwYWNrbmluZ1xmUAorCitBdHQgcGFja2EgdXBwIGV0dCBEZWJpYW5lZ2V0IHBha2V0IGlubmVi5HIgYXR0IHBhY2thIHVwcCBkZW4gZW5zYW1tYQordGFyYm9sbGVuIGkgbeVsa2F0YWxvZ2VuLiBBdHQgcGFja2EgdXBwIGV0dCBpY2tlXC1lZ2V0IHBha2V0IGlubmVi5HIgYXR0Citm9nJzdCBwYWNrYSB1cHAgXGZJLm9yaWcudGFyLmd6XGZQXC1maWxlbiBvY2ggc2VkYW4gZ2Vub20gYXR0IHRpbGzkbXBhIHBhdGNoZW4KK3NvbSBmaW5ucyBpIFxmQi5kaWZmLmd6XGZQXC1maWxlbi4gVGlkc3N05G1wbGFybmEgZvZyIGFsbGEgZmlsZXIgbm9sbHN05GxscyB0aWxsCitkZW4gdGlkcHVua3QgZOUga+RsbGtvZHNwYWtldGV0IGV4dHJhaGVyYWRlcyAodmlsa2V0IHVuZHZpa2VyCit0aWRzc3TkbXBlbGb2cnNranV0bmluZ2FyIHNvbSBrdW5kZSBsZWRhIHRpbGwgcHJvYmxlbSBu5HIgYXV0b2dlbmVyZXJhZGUKK2ZpbGVyIHBhdGNoYXMpLiBEaWZmZW4ga2FuIHNrYXBhIG55YSBmaWxlciAoaGVsYSBkZWJpYW5cLWthdGFsb2dlbiBza2FwYXMgcOUKK2RldCBz5HR0ZXQpLCBtZW4ga2FuIGludGUgdGEgYm9ydCBmaWxlciAodG9tbWEgZmlsZXIga29tbWVyIGzkbW5hcyBrdmFyKS4KKworXGZCQnlnZ2FcZlAKKworQXR0IGJ5Z2dhIGV0dCBEZWJpYW5lZ2V0IHBha2V0IGlubmVi5HIgYmFyYSBhdHQgc2thcGEgZW4gZW5zYW0gdGFyYm9sbCBtZWQKK2vkbGxrb2Rza2F0YWxvZ2VuLiBBdHQgYnlnZ2EgZXR0IGlja2VcLWVnZXQgcGFrZXQgaW5uZWZhdHRhciBhdHQgZXh0cmFoZXJhCitvcmlnaW5hbFwtdGFyYm9sbGVuIGkgZW4gc2VwYXJhdCAiLm9yaWciXC1rYXRhbG9nIG9jaCBza2FwYSBcZkIuZGlmZi5nelxmUFwtZmlsZW4KK3DlIG55dHQgZ2Vub20gYXR0IGrkbWb2cmEga+RsbGtvZHNwYWtldGV0cyBcZklrYXRhbG9nXGZQIG1lZCAub3JpZ1wta2F0YWxvZ2VuLgorCisuVFAgCitcZkJCeWdnZmxhZ2dvciAobWVkIFwtYik6XGZQCisuUFAKK09tIGV0dCBhbmRyYSBhcmd1bWVudCBzb20gaW50ZSDkciBlbiBmbGFnZ2EgYW5nZXMgc2thbGwgZGV0IHZhcmEgbmFtbmV0IHDlCitvcmlnaW5hbGvkbGxrb2Rza2F0YWxvZ2VuIGVsbGVyIFwtdGFyZmlsZW4gZWxsZXIgZGVuIHRvbW1hIHN0cuRuZ2VuIG9tCitwYWtldGV0IORyIERlYmlhbnNwZWNpZmlrdCBvY2ggZORyZvZyIGludGUgaGFyIG7lZ3JhCitEZWJpYW5pc2VyaW5nc1wtZGlmZmFyLiBPbSBpbmdldCBhbmRyYSBhcmd1bWVudCBhbmdlcyBrb21tZXIgXGZCZHBrZ1wtc291cmNlXGZQCithdHQgbGV0YSBlZnRlciBvcmlnaW5hbGvkbGxrb2RzdGFyZmlsZW4KK1xmSXBha2V0XGZQXGZCX1xmUFxmSXVwcHN0cvZtc3ZlcnNpb25cZlBcZkIub3JpZy50YXIuZ3pcZlAgZWxsZXIKK29yaWdpbmFsa+RsbGtvZHNrYXRhbG9nZW4gXGZJcGFrZXRcZlBcZkIub3JpZ1xmUCBiZXJvZW5kZSBw5SBcZkJcLXNYXGZQXC1mbGFnZ29ybmEuCisKK1xmQlwtc2FcZlAsIFxmQlwtc3BcZlAsIFxmQlwtc2tcZlAsIFxmQlwtc3VcZlAgb2NoIFxmQlwtc3JcZlAgc2tyaXZlciBpbnRlIPZ2ZXIgYmVmaW50bGlnYQordGFyXC1maWxlciBvY2gga2F0YWxvZ2VyLiBPbSBkZXQg9m5za2FzIGL2ciAgXGZCXC1zQVxmUCwgXGZCXC1zUFxmUCwgXGZCXC1zS1xmUCwgXGZCXC1zVVxmUAorb2NoIFxmQlwtc1JcZlAgYW5nZXMgaSBzdORsbGV0LgorLlRQIAorXGZCXC1za1xmUAorQW5nZXIgYXR0IGRlbiB1cnNwcnVuZ2xpZ2Ega+RsbGtvZGVuIORyIGVuIHRhclwtZmlsLCBzb20gc3RhbmRhcmQKK1xmSXBha2V0XGZQXGZCX1xmUFxmSXVwcHN0cvZtc3ZlcnNpb25cZlBcZkIub3JpZy50YXIuXGZQXGZJZmls5G5kZWxzZVxmUC4gRGVuIGtvbW1lciBs5XRhCitvcmlnaW5hbGvkbGxrb2RzZmlsZW4gbGlnZ2Ega3ZhciBzb20gZW4gdGFyZmlsLCBlbGxlciBrb3BpZXJhIGRlbiB0aWxsIGRlbgorYWt0dWVsbGEga2F0YWxvZ2VuIG9tIGRlbiBpbnRlIHJlZGFuIORyIGTkci4gVGFyYm9sbGVuIGtvbW1lciBhdHQgcGFja2FzIHVwcAoraSBcZklrYXRhbG9nXGZQXGZCLm9yaWdcZlAgZvZyIGF0dCBnZW5lcmVyYSBkaWZmZW4uCisuVFAgCitcZkJcLXNwXGZQCitTb20gXGZCXC1za1xmUCwgbWVuIHRhciBib3J0IGthdGFsb2dlbiBpZ2VuIGVmdGVy5XQuCisuVFAgCitcZkJcLXN1XGZQCitBbmdlciBhdHQgb3JpZ2luYWxr5Gxsa29kZW4g5HIgZW4ga2F0YWxvZywgc29tIHN0YW5kYXJkCitcZklwYWtldFxmUFxmQlwtXGZQXGZJdXBwc3Ry9m1zdmVyc2lvblxmUFxmQi5vcmlnXGZQIG9jaCBhdHQgXGZCZHBrZ1wtc291cmNlXGZQIHNrYWxsIHNrYXBhCitldHQgbnl0dCBvcmlnaW5hbGvkbGxrb2RzYXJraXYgZnLlbiBkZW4uCisuVFAgCitcZkJcLXNyXGZQCitTb20gXGZCXC1zdVxmUCwgbWVuIHRhciBib3J0IGthdGFsb2dlbiBu5HIgZGVuIGhhciBhbnbkbnRzLgorLlRQIAorXGZCXC1zc1xmUAorQW5nZXIgYXR0IG9yaWdpbmFsa+RsbGtvZGVuIGZpbm5zIGLlZGUgc29tIGVuIGthdGFsb2cgb2NoIGVuCit0YXJcLWZpbC4gS2F0YWxvZ2VuIGtvbW1lciBhdHQgYW525G5kYXMgYXYgZHBrZ1wtc291cmNlIGb2ciBhdHQgc2thcGEgZGlmZmVuLAorbWVuIHRhcmZpbGVuIGb2ciBhdHQgc2thcGEgXGZCLmRzY1xmUFwtZmlsZW4uIEZsYWdnYW4gbeVzdGUgYW525G5kYXMgbWVkCit0aWxsZvZyc2lrdCBcLSBvbSBrYXRhbG9nZW4gb2NoIHRhcmZpbGVuIGludGUgc3TkbW1lciD2dmVyZW5zIGtvbW1lciBldHQKK3RyYXNpZ3Qga+RsbGtvZHNhcmtpdiBhdHQgc2thcGFzLgorLlRQIAorXGZCXC1zblxmUAorQW5nZXIgYXR0IGRwa2dcLXNvdXJjZSBpbnRlIHNrYWxsIGxldGEgZWZ0ZXIgbuVnb3Qga+RsbGtvZHNhcmtpdiBvY2ggYXR0CitpbmdlbiBkaWZmIHNrYWxsIHNrYXBhcy4gRGV0IGFuZHJhIGFyZ3VtZW50ZXQsIG9tIGRldCBhbmdlcywgbeVzdGUgdmFyYSBkZW4KK3RvbW1hIHN0cuRuZ2VuLiBGbGFnZ2FuIGFuduRuZHMgZvZyIERlYmlhbnNwZWNpZmlrYSBwYWtldCBzb20gaW50ZSBoYXIgZW4KK3NlcGFyYXQgdXBwc3Ry9m1za+RsbGtvZCBvY2ggZORyZvZyIGludGUgaGFyIG7lZ29uIGRlYmlhbmlzZXJpbmdzZGlmZi4KKy5UUCAKK1xmQlwtc2FcZlAgZWxsZXIgXGZCXC1zQVxmUAorQW5nZXIgYXR0IG9yaWdpbmFsa+RsbGtvZGVuIGZpbm5zIHNvbSBlbiBrYXRhbG9nIGVsbGVyIGVuIHRhcmZpbCBcLSBkZXQgYW5kcmEKK2FyZ3VtZW50ZXQsIG9tIGRldCBhbmdlcywga2FuIHZhcmEgZGV0IGVuYSBlbGxlciBkZXQgYW5kcmEsIGVsbGVyIGRlbiB0b21tYQorc3Ry5G5nZW4gKG1vdHN2YXJhciBhdHQgYW525G5kYSBcZkJcLXNuXGZQKS4gT20gZW4gdGFyZmlsIGhpdHRhcyBrb21tZXIKK3Byb2dyYW1tZXQgYXR0IHBhY2thIHVwcCBkZW4gZvZyIGF0dCBza2FwYSBlbiBkaWZmIG9jaCB0YSBib3J0IGRlbiBlZnRlcuV0CisobW90c3ZhcmFyIFxmQlwtc3BcZlApLiBPbSBlbiBrYXRhbG9nIGhpdHRhcyBrb21tZXIgZGVuIGF0dCBwYWNrYXMgZvZyIGF0dCBza2FwYQorb3JpZ2luYWxr5Gxsa29kZW4gb2NoIHRhIGJvcnQgZGVuIGVmdGVy5XQgKG1vdHN2YXJhciBcZkJcLXNuXGZQKS4gT20gYuVkYSBoaXR0YXMKK2tvbW1lciBcZkJkcGtnXC1zb3VyY2VcZlAgYXR0IGlnbm9yZXJhIGthdGFsb2dlbiwgb2NoIHNrcml2YSD2dmVyIGRlbiBvbSBcZkJcLXNBXGZQCithbmdhdnMgKGRldHRhIG1vdHN2YXJhciBcZkJcLXNQXGZQKSBlbGxlciBnZSBldHQgZmVsbWVkZGVsYW5kZSBvbSBcZkJcLXNhXGZQCithbmdhdnMuIFxmQlwtc0FcZlAg5HIgc3RhbmRhcmQuCisuVFAgCitcZkJcLVwtYWJvcnRcLW9uXC11cHN0cmVhbVwtY2hhbmdlc1xmUAorUHJvY2Vzc2VuIG1pc3NseWNrYXMgb20gZGVuIGdlbmVyZXJhZGUgZGlmZmVuIGlubmVo5WxsZXIg5G5kcmluZ2FyIGF2IGZpbGVyCit1dGFuZvZyIHVuZGVya2F0YWxvZ2VuIGRlYmlhbi4gRGVuIGjkciBmbGFnZ2FuIHRpbGzldHMgaW50ZSBpCitcZkJkZWJpYW4vc291cmNlL29wdGlvbnNcZlAsIG1lbiBrYW4gYW525G5kYXMgaSBcZkJkZWJpYW4vc291cmNlL2xvY2FsXC1vcHRpb25zXGZQLgorCisuVFAgCitcZkJFeHRyYWhlcmluZ3NmbGFnZ29yIChtZWQgXC14KTpcZlAKKy5QUAorT2F2c2V0dCBrb21tZXIgZXR0IGJlZmludGxpZ3Qga+RsbGtvZHN0cuRkIGF0dCB0YXMgYm9ydC4KKy5UUCAKK1xmQlwtc3BcZlAKK0FuduRuZHMgbuRyIG9yaWdpbmFsa+RsbGtvZGVuIHNvbSBleHRyYWhlcmFzIChvbSBz5WRhbiBmaW5ucykgc2thbGwgbORtbmFzCitrdmFyIHNvbSBlbiB0YXJmaWwuIE9tIGRlbiBpbnRlIHJlZGFuIGZpbm5zIGkgZGVuIGFrdHVlbGxhIGthdGFsb2dlbiwgZWxsZXIKK29tIGVuIGJlZmludGxpZyBtZW4gYW5uYW4gZmlsIGZpbm5zIGTkciwga29tbWVyIGRlbiBhdHQga29waWVyYXMKK2RpdC4gKFxmQkRldHRhIORyIHN0YW5kYXJkLlxmUCkKKy5UUCAKK1xmQlwtc3VcZlAKK1BhY2thciB1cHAgb3JpZ2luYWxr5Gxsa29kc3Ry5GRldC4KKy5UUCAKK1xmQlwtc25cZlAKK0b2cnPka3JhciBhdHQgb3JpZ2luYWxr5Gxsa29kZW4gdmFya2VuIGtvcGllcmFzIHRpbGwgZW4gYWt0dWVsbGEga2F0YWxvZ2VuCitlbGxlciBwYWNrYXMgdXBwLiBFdmVudHVlbGxhIG9yaWdpbmFsa+RsbGtvZHN0cuRkIHNvbSBmaW5ucyBpIGRlbiBha3R1ZWxsYQora2F0YWxvZ2VuIHRhcyBmb3J0ZmFyYW5kZSBib3J0LgorLlBQCitBbGxhIFxmQlwtc1xmUFxmSVhcZlBcLWZsYWdnb3Ig5HIg9m1zZXNpZGlndCB1dGVzbHV0YW5kZS4gT20gZHUgYW5nZXIgbWVyIORuIGVuCitrb21tZXIgZW5kYXN0IGRlbiBzaXN0YSBhdHQgYW525G5kYXMuCisuVFAgCitcZkJcLVwtc2tpcFwtZGViaWFuaXphdGlvblxmUAorSG9wcGFzIPZ2ZXIgYXR0IHRpbGzkbXBhIGRlYmlhblwtZGlmZmVuIG92YW5w5SB1cHBzdHL2bXNr5Gxsa29kZW4uCisuCisuU1MgIkZvcm1hdDogMi4wIgorxHZlbiBr5G50IHNvbSB3aWcmcGVuLiBEZXR0YSBmb3JtYXQgcmVrb21tZW5kZXJhcyBpbnRlIGb2ciBhbGxt5G4KK2FuduRuZG5pbmcsIGZvcm1hdGV0ICIzLjAgKHF1aWx0KSIgZXJz5HR0ZXIgZGV0LiBXaWcmcGVuIHZhciBkZW4gZvZyc3RhCitzcGVjaWZpa2F0aW9uZW4gYXYgZW4gbnkgZ2VuZXJhdGlvbiBhdiBr5Gxsa29kc3Bha2V0Zm9ybWF0LgorCitCZXRlZW5kZXQgZvZyIGRldHRhIGZvcm1hdCDkciBkZXRzYW1tYSBzb20gZvZyICIzLjAgKHF1aWx0KSJcLWZvcm1hdGV0LAorZvZydXRvbSBhdHQgZGV0IGludGUgYW525G5kZXIgZW4gZXhwbGljaXQgZvZydGVja25pbmcgcGF0Y2hhci4gQWxsYSBmaWxlciBpCitcZkJkZWJpYW4vcGF0Y2hlcy9cZlAgc29tIG1vdHN2YXJhciBkZXQgUGVybFwtcmVndWxq5HJhIHV0dHJ5Y2tldCBcZkJbXGV3XC1dK1xmUAorbeVzdGUgdmFyYSBnaWx0aWdhIHBhdGNoYXI6IGRlIGFwcGxpY2VyYXMgbuRyIHBha2V0ZXQgcGFja2FzIHVwcC4KKworTuRyIGR1IGJ5Z2dlciBldHQgbnl0dCBr5Gxsa29kc3Bha2V0IGtvbW1lciBldmVudHVlbGxhIORuZHJpbmdhciBw5QordXBwc3Ry9m1za+RsbGtvZGVuIGF0dCBsYWdyYXMgaSBlbiBwYXRjaCBzb20ga2FsbGFzIFxmQnp6X2RlYmlhblwtZGlmZlwtYXV0b1xmUC4KKy4KKy5TUyAiRm9ybWF0OiAzLjAgKGVnZXQpIgorRGV0dGEgZm9ybWF0IORyIGVuIHV09mtuaW5nIGF2IGRldCBlZ25hIHBha2V0Zm9ybWF0ZXQgc29tIGFuZ2VzIGF2CisxLjBcLWZvcm1hdGV0LiBEZXQgc3T2ZGVyIGFsbGEga29tcHJpbWVyaW5nc21ldG9kZXIgb2NoIGtvbW1lciBhdHQgc29tCitzdGFuZGFyZCBpZ25vcmVyYSBhbGxhIFZDU1wtc3BlY2lmaWthIGZpbGVyIG9jaCBrYXRhbG9nZXIsIHNhbXQgbeVuZ2EKK3RlbXBvcuRyZmlsZXIgKHNlIHN0YW5kYXJkduRyZGV0IHNvbSDkciBrbnV0ZXQgdGlsbCBmbGFnZ2FuIFxmQlwtaVxmUCBpIHRleHRlbgorZvZyIFxmQlwtXC1oZWxwXGZQKS4KKy4KKy5TUyAiRm9ybWF0OiAzLjAgKHF1aWx0KSIKK0V0dCBr5Gxsa29kc3Bha2V0IGkgZGV0dGEgZm9ybWF0IGlubmVo5WxsZXIg5XRtaW5zdG9uZSBlbiBvcmlnaW5hbFwtdGFyYm9sbAorKFxmQi5vcmlnLnRhci5cZlBcZklleHRcZlAsIGTkciBcZklleHRcZlAga2FuIHZhcmEgXGZCZ3pcZlAsIFxmQmJ6MlxmUCwgXGZCbHptYVxmUCBlbGxlcgorXGZCeHpcZlApIG9jaCBlbiBEZWJpYW50YXJib2xsIChcZkIuZGViaWFuLnRhci5cZlBcZklleHRcZlApLiBEZW4ga2FuIOR2ZW4gaW5uZWjlbGxhCit5dHRlcmxpZ2FyZSBvcmlnaW5hbFwtdGFyYm9sbGFyCisoXGZCLm9yaWdcLVxmUFxmSWtvbXBvbmVudFxmUFxmQi50YXIuXGZQXGZJZXh0XGZQKS4gXGZJa29tcG9uZW50XGZQIGthbiBlbmRhc3QgaW5uZWjlbGxhCithbGZhbnVtZXJpc2thIHRlY2tlbiBvY2ggYmluZGVzdHJlY2sgKCJcLSIpLgorLlBQCitcZkJVcHBhY2tuaW5nXGZQCisuUFAKK0h1dnVkXC1vcmlnaW5hbHRhcmJvbGxlbiBwYWNrYXMgdXBwIGb2cnN0LCBk5HJlZnRlciBwYWNrYXMgYWxsYSB5dHRlcmxpZ2FyZQorb3JpZ2luYWx0YXJib2xsYXIgdXBwIGkgdW5kZXJrYXRhbG9nZXIgbWVkIG5hbW4gZWZ0ZXIgXGZJa29tcG9uZW50XGZQXC1kZWxlbiBpCitzaXR0IGZpbG5hbW4gKGV2ZW50dWVsbGEgcmVkYW4gYmVmaW50bGlnYSBrYXRhbG9nZXIKK2Vyc+R0dHMpLiBEZWJpYW5cLXRhcmJvbGxlbiBwYWNrYXMgc2VkYW4gdXBwIG92YW5w5SBr5Gxsa29kc2thdGFsb2dlbiBlZnRlcgorYXR0IGVuIHJlZGFuIGJlZmludGxpZyBcZkJkZWJpYW5cZlBcLWthdGFsb2cgaGFyIHRhZ2l0cyBib3J0IGb2cnN0LiBPYnNlcnZlcmEKK2F0dCBkZWJpYW5cLXRhcmJvbGxlbiBt5XN0ZSBiZXN05SBhdiBlbiBcZkJkZWJpYW5cZlBcLXVuZGVya2F0YWxvZywgbWVuIGF0dCBkZW4KK+R2ZW4ga2FuIGlubmVo5WxsYSBiaW7kcmZpbGVyIHV0YW5m9nIgZGVuIGthdGFsb2dlbiAoc2UgZmxhZ2dhbgorXGZCXC1cLWluY2x1ZGVcLWJpbmFyaWVzXGZQKS4KKy5QUAorQWxsYSBwYXRjaGFyIGxpc3RhZGUgaSBcZkJkZWJpYW4vcGF0Y2hlcy9kZWJpYW4uc2VyaWVzXGZQIGVsbGVyCitcZkJkZWJpYW4vcGF0Y2hlcy9zZXJpZXNcZlAgdGlsbORtcGFzIHNlZGFuLiBPbSBkZW4gZvZyc3Ru5G1uZGEgZmlsZW4gYW525G5kcworb2NoIGRlbiBzaXN0buRtbmRhIGludGUgZXhpc3RlcmFyIChlbGxlciDkciBlbiBzeW1ib2xpc2sgbORuayksIGtvbW1lciBkZW4KK3NlbmFyZSBhdHQgZXJz5HR0YXMgYXYgZW4gc3ltYm9saXNrIGzkbmsgdGlsbCBkZW4gZvZyc3RhLiBUYW5rZW4g5HIgYXR0IGf2cmEKK2RldCBlbmtsYXJlIGF0dCBhbnbkbmRhIHF1aWx0IHRpbGwgYXR0IGhhbnRlcmEgcGF0Y2h1cHBz5HR0bmluZ2VuLiBPYnNlcnZlcmEKK2F0dCwg5HZlbiBvbSBcZkJkcGtnXC1zb3VyY2VcZlAga29ycmVrdCB0b2xrYXIgc2VyaWVzXC1maWxlciBzb20gYW525G5kZXIKK2V4cGxpY2l0YSBmbGFnZ29yIHRpbGwgcGF0Y2hcLXByb2dyYW1tZXQgKGxhZ3JhZGUgcOUga29tbWFuZG9yYWRlbiBlZnRlcgorcGF0Y2hcLWZpbG5hbW5ldCBvY2ggZXR0IGVsbGVyIGZsZXJhIGJsYW5rc3RlZyksIHPlIGlnbm9yZXJhcyBkZXNzYSBmbGFnZ29yCitvY2ggZGV0IGb2cnbkbnRhciBzaWcgYXR0IHBhdGNoYXIga2FuIHRpbGzkbXBhcyBtZWQgZmxhZ2dhbiBcZkJcLXAxXGZQIHRpbGwKK1xmQnBhdGNoXGZQLiBEZXQga29tbWVyIGTkcmb2ciB2aXNhIGVuIHZhcm5pbmcgc+VkYW5hIGZsYWdnb3IgdXBwdORja3MsIG9jaAorYnlnZ2V0IGtvbW1lciB0cm9saWdlbiBhdHQgbWlzc2x5Y2thcy4KKy5QUAorUGF0Y2hhciBrYW4g5HZlbiB0YSBib3J0IGZpbGVyLCBw5SB1bmdm5HIgc2FtbWEgc+R0dCBzb20gcXVpbHQgbm9ybWFsdAorZnVuZ2VyYXIuCisuUFAKK0ZpbGVuIFxmQi5wYy9hcHBsaWVkXC1wYXRjaGVyc1xmUCBza2FwYXMgb20gcGF0Y2hhciB0aWxs5G1wYWRlcyB2aWQKK3VwcGFja25pbmdlbi4KKy5QUAorXGZCQnlnZ2FcZlAKKy5QUAorQWxsYSBvcmlnaW5hbFwtdGFyYm9sbGFyIHNvbSBmaW5ucyBpIGRlbiBha3R1ZWxsYSBrYXRhbG9nZW4gcGFja2FzIHVwcCBpIGVuCit0ZW1wb3LkciBrYXRhbG9nIG1lZCBzYW1tYSBsb2dpayBzb20gaSB1cHBhY2tuaW5nZW4sIGRlYmlhblwta2F0YWxvZ2VuCitrb3BpZXJhcyD2dmVyIGkgZGVuIHRlbXBvcuRyYSBrYXRhbG9nZW4gb2NoIGFsbGEgcGF0Y2hhciwgZvZydXRvbSBkZW4KK2F1dG9tYXRpc2thIHBhdGNoZW4gKFxmQmRlYmlhblwtY2hhbmdlc1xmUFxmSXZlcnNpb25cZlAgZWxsZXIgXGZCZGViaWFuXC1jaGFuZ2VzXGZQLAorYmVyb2VuZGUgcOUgXGZCXC1cLXNpbmdsZVwtZGViaWFuXC1wYXRjaFxmUCkgdGlsbORtcGFzLiBUZW1wb3LkcmthdGFsb2dlbiBq5G1m9nJzCitk5HJlZnRlciBtb3Qga+RsbGtvZHNrYXRhbG9nZW4uIE9tIGRpZmZlbiBpbnRlIORyIHRvbSBtaXNzbHlja2FzIGJ5Z2dldCwKK3PldmlkYSBpbnRlIFxmQlwtXC1zaW5nbGVcLWRlYmlhblwtcGF0Y2hcZlAgZWxsZXIgXGZCXC1cLWF1dG9cLWNvbW1pdFxmUCBhbnbkbnRzLCBpCit2aWxrZXQgZmFsbCBkaWZmZW4gbGFncmFzIGkgZGVuIGF1dG9tYXRpc2thIHBhdGNoZW4uIE9tIGRlbiBhdXRvbWF0aXNrYQorcGF0Y2hlbiBza2FwYXMvdGFzIGJvcnQsIGzkZ2dzIGRlbiB0aWxsL3RhcyBib3J0IGZy5W4gc2VyaWVzXC1maWxlbiBvY2ggZnLlbgorcXVpbHRcLW1ldGFkYXRhLgorCitFdmVudHVlbGxhIORuZHJpbmdhciBw5SBiaW7kcmZpbGVyIGthbiBpbnRlIHJlcHJlc2VudGVyYXMgaSBlbiBkaWZmIG9jaAora29tbWVyIGTkcm1lZCBhdHQgbGVkYSB0aWxsIGV0dCBmZWxtZWRkZWxhbmRlLCBz5XZpZGEgaW50ZSBwYWtldGFuc3ZhcmlnYQorbWVkdmV0ZXQgduRsamVyIGF0dCBpbmtsdWRlcmEgZGVuIG1vZGlmaWVyYWRlIGJpbuRyZmlsZW4gaSBkZWJpYW5cLXRhcmJvbGxlbgorKGdlbm9tIGF0dCBsaXN0YSBkZW4gaSBcZkJkZWJpYW4vc291cmNlL2luY2x1ZGVcLWJpbmFyaWVzXGZQKS4gQnlnZ25pbmdlbiBrb21tZXIKK+R2ZW4gYXR0IG1pc3NseWNrYXMgb20gYmlu5HJmaWxlciB1cHB05GNrcyBpIGRlYmlhblwtdW5kZXJrYXRhbG9nZW4sIHPldmlkYQorZGUgaW50ZSBoYXIgdml0bGlzdGF0cyBpIFxmQmRlYmlhbi9zb3VyY2UvaW5jbHVkZVwtYmluYXJpZXNcZlAuCisKK0RlbiB1cHBkYXRlcmFkZSBkZWJpYW5rYXRhbG9nZW4sIG9jaCBsaXN0YW4g9nZlciBtb2RpZmllcmFkZSBiaW7kcmVyLAorYW525G5kcyBzZWRhbiBm9nIgYXR0IHNrYXBhIGRlYmlhblwtdGFyYm9sbGVuLgorCitEZW4gYXV0b21hdGlza3QgZ2VuZXJlcmFkZSBkaWZmXC1maWxlbiBpbm5laOVsbGVyIGludGUg5G5kcmluZ2FyIGb2cgorVkNTXC1zcGVjaWZpa2EgZmlsZXIgZWxsZXIgZvZyIG3lbmdhIHRlbXBvcuRyYSBmaWxlciAoc2Ugc3RhbmRhcmR25HJkZXQgc29tCivkciBrbnV0ZXQgdGlsbCBmbGFnZ2FuIFxmQlwtaVxmUCBpIHRleHRlbiBm9nIgXGZCXC1cLWhlbHBcZlApLiBEZXR0YSBn5GxsZXIgc3BlY2llbGx0CitrYXRhbG9nZW4gXGZCLnBjXGZQIHNvbSBhbnbkbmRzIGF2IHF1aWx0LCBrYXRhbG9nZW4ga29tbWVyIGF0dCBpZ25vcmVyYXMgbuRyCitkZW4gYXV0b21hdGlza2EgcGF0Y2hlbiBza2FwYXMuCisKK09ic2VydmVyYTogXGZCZHBrZ1wtc291cmNlXGZQIFxmQlwtXC1iZWZvcmVcLWJ1aWxkXGZQIChvY2ggXGZCXC1iXGZQKSBzZXIgdGlsbCBhdHQgYWxsYQorcGF0Y2hhciBzb20gYW5nZXMgaSBzZXJpZWZpbGVuIHRpbGzkbXBhcyBz5SBhdHQgcGFrZXRieWdnZXQgYWxsdGlkIGhhciBhbGxhCitwYXRjaGFyIHRpbGzkbXBhZGUuIERldHRhIGf2cnMgZ2Vub20gYXR0IGhpdHRhIGFsbGEgaWNrZVwtdGlsbORtcGFkZSBwYXRjaGFyCisoc29tIGFuZ2VzIGkgZmlsZW4gXGZCc2VyaWVzXGZQIG1lbiBpbnRlIGkgXGZCLnBjL2FwcGxpZWRcLXBhdGNoZXNcZlApLCBvY2ggb20gZGVuCitm9nJzdGEgcGF0Y2hlbiBpIGxpc3RhbiBrYW4gdGlsbORtcGFzIHV0YW4gZmVsIGtvbW1lciBzYW10bGlnYSBhdHQKK3RpbGzkbXBhcy4gRmxhZ2dhbiBcZkJcLVwtbm9cLXByZXBhcmF0aW9uXGZQIGthbiBhbnbkbmRhcyBm9nIgYXR0IHNs5SBhdiBkZXR0YQorYmV0ZWVuZGUuCisKKy5QUAorXGZCTGFncmEg5G5kcmluZ2FyXGZQCisuVFAgCitcZkJcLVwtY29tbWl0XGZQIFtcZklrYXRhbG9nXGZQXSBbXGZJcGF0Y2huYW1uXGZQXSBbXGZJcGF0Y2hcLWZpbFxmUF0KK1NrYXBhciBlbiBwYXRjaCBzb20gbW90c3ZhcmFyIGRlIGxva2FsYSDkbmRyaW5nYXIgc29tIGludGUgaGFudGVyYXMgYXYKK3F1aWx0XC1wYXRjaFwtc3lzdGVtZXQgb2NoIGludGVncmVyYXIgZGVtIGkgcGF0Y2hcLXN5c3RlbWV0IHVuZGVyIG5hbW5ldAorXGZJcGF0Y2huYW1uXGZQLiBPbSBuYW1uZXQgc2FrbmFzIGtvbW1lciBwcm9ncmFtbWV0IGJlIG9tIGV0dCBpbnRlcmFrdGl2dC4gT20KK1xmSXBhdGNoXC1maWxcZlAgYW5nZXMgYW525G5kcyBkZW4gc29tIHBhdGNoIHNvbSBtb3RzdmFyYXIgZGUgbG9rYWxhIORuZHJpbmdhcgorc29tIHNrYWxsIGludGVncmVyYXMuIERldHRhIORyIG9mdGFzdCBhbnbkbmRiYXJ0IGVmdGVyIGV0dCBtaXNzbHlja2F0IGJ5Z2dlCitzb20gc2thcGF0IGZpbGVuIHDlIGb2cmhhbmQuIE7kciBwYXRjaGVuIORyIGludGVncmVyYWQgc3RhcnRhcyBldHQKK3JlZGlnZXJpbmdzcHJvZ3JhbSBz5SBhdHQgZHUga2FuIGFuZ2UgbWV0YWluZm9ybWF0aW9uZW4gaSBwYXRjaGh1dnVkZXQuCisKKy5QUAorXGZCQnlnZ2ZsYWdnb3JcZlAKKy5UUCAKK1xmQlwtXC1hbGxvd1wtdmVyc2lvblwtb2ZcLXF1aWx0XC1kYj1cZlBcZkl2ZXJzaW9uXGZQCitUaWxs5XQgXGZCZHBrZ1wtc291cmNlXGZQIGF0dCBieWdnYSBr5Gxsa29kc3Bha2V0ZXQgb20gdmVyc2lvbmVuIGF2CitxdWlsdFwtbWV0YWRhdGEg5HIgZGVuIHNvbSBhbmdhdnMsIOR2ZW4gb20gXGZCZHBrZ1wtc291cmNlXGZQIGludGUga+RubmVyIHRpbGwKK2Rlbi4gRGV0IGJldHlkZXIgYXR0IGRlbiBnaXZuYSB2ZXJzaW9uZW4gYXYgcXVpbHRcLW1ldGFkYXRhIORyIGtvbXBhdGliZWwgbWVkCit2ZXJzaW9uIDIgc29tIFxmQmRwa2dcLXNvdXJjZVxmUCBm9nIgbuRydmFyYW5kZSBzdPZkZXIuIFZlcnNpb25lbiBhdgorcXVpbHRcLW1ldGFkYXRhIGxhZ3JhcyBpIFxmQi5wYy8udmVyc2lvblxmUC4KKy5UUCAKK1xmQlwtXC1pbmNsdWRlXC1yZW1vdmFsXGZQCitJZ25vcmVyYSBpbnRlIGJvcnR0YWduYSBmaWxlciBvY2ggdGEgbWVkIGRlbSBpIGRlbiBhdXRvbWF0aXNrdCBnZW5lcmVyYWRlCitwYXRjaGVuLgorLlRQIAorXGZCXC1cLWluY2x1ZGVcLXRpbWVzdGFtcFxmUAorVGEgbWVkIHRpZHNzdORtcGVsIGkgZGVuIGF1dG9tYXRpc2t0IGdlbmVyZXJhZGUgcGF0Y2hlbi4KKy5UUCAKK1xmQlwtXC1pbmNsdWRlXC1iaW5hcmllc1xmUAorTORnZyB0aWxsIGFsbGEgbW9kaWZpZXJhZGUgYmlu5HJlciBpIGRlYmlhblwtdGFyYm9sbGVuLiBM5GdnIOR2ZW4gdGlsbCBkZW0gaQorXGZCZGViaWFuL3NvdXJjZS9pbmNsdWRlXC1iaW5hcmllc1xmUDogZGUga29tbWVyIGF0dCBs5GdnYXMgdGlsbCBzb20gc3RhbmRhcmQgaQorZvZsamFuZGUgYnlnZ2VuIG9jaCBkdSBiZWj2dmVyIGludGUgbORuZ3JlIGFuZ2UgZGVuIGjkciBmbGFnZ2FuLgorLlRQIAorXGZCXC1cLW5vXC1wcmVwYXJhdGlvblxmUAorRvZyc/ZrIGludGUgYXR0IGb2cmJlcmVkYSBieWdndHLkZGV0IGdlbm9tIGF0dCB0aWxs5G1wYSBwYXRjaGFyIHNvbSBpbnRlCit2ZXJrYXIgaGEgdGlsbORtcGFzIGb2ciBu5HJ2YXJhbmRlLgorLlRQIAorXGZCXC1cLXNpbmdsZVwtZGViaWFuXC1wYXRjaFxmUAorQW525G5kIFxmQmRlYmlhbi9wYXRjaGVzL2RlYmlhblwtY2hhbmdlc1xmUCBpc3TkbGxldCBm9nIKK1xmQmRlYmlhbi9wYXRjaGVzL2RlYmlhblwtY2hhbmdlc1wtXGZQXGZJdmVyc2lvblxmUCBzb20gbmFtbiBw5SBkZW4gYXV0b21hdGlza2EKK3BhdGNoIHNvbSBnZW5lcmVyYXMgdmlkIGJ5Z2dldC4gRGVubmEgZmxhZ2dhIORyIHNwZWNpZWxsdCBueXR0aWcgbuRyIHBha2V0ZXQKK2hhbnRlcmFzIGkgZXR0IHZlcnNpb25zaGFudGVyaW5nc3N5c3RlbSBvY2ggZW4gcGF0Y2ggaW50ZSBrYW4gc2thcGFzIHDlIGV0dAorcOVsaXRsaWd0IHPkdHQuIERlbiBha3R1ZWxsYSBkaWZmZW4gbW90IHVwcHN0cvZtcyBsYWdyYXMgaXN05GxsZXQgaSBlbiBlbnNhbQorcGF0Y2guIEZsYWdnYW4gYvZyIGFuZ2VzIGkgXGZCZGViaWFuL3NvdXJjZS9sb2NhbFwtb3B0aW9uc1xmUCBvY2ggZvZsanMgYXYgZmlsZW4KK1xmQmRlYmlhbi9zb3VyY2UvbG9jYWxcLXBhdGNoXC1oZWFkZXJcZlAgc29tIGJlc2tyaWNlciBodXIgRGViaWFu5G5kcmluZ2FybmEgYuRzdAora2FuIHNlcywgdGlsbCBleGVtcGVsIGkgZGV0IHZlcnNpb25zaGFudGVyaW5nc3N5c3RlbSBzb20gYW525G5kcy4KKy5UUCAKK1xmQlwtXC1jcmVhdGVcLWVtcHR5XC1vcmlnXGZQCitTa2FwYSBodXZ1ZFwtb3JpZ2luYWx0YXJib2xsZW4gc29tIHRvbSBhdXRvbWF0aXNrdCBvbSBkZW4gc2FrbmFzIG9jaCBvbSBkZXQKK2Zpbm5zIHN1cHBsZW1lbnRcLW9yaWdpbmFsdGFyYm9sbGFyLiBGbGFnZ2FuIORyIHTkbmt0IGF0dCBhbnbkbmRhcyBu5HIKK2vkbGxrb2RzcGFrZXRldCBiYXJhIORyIGVuIHNhbWxpbmcgYXYgZmxlcmEgdXBwc3Ry9m1zcHJvZ3JhbSBvY2ggZORyIGRldAoraW50ZSBmaW5ucyBu5WdvdCAiaHV2dWQiXC1wcm9ncmFtLgorLlRQIAorXGZCXC1cLXVuYXBwbHlcLXBhdGNoZXNcZlAKK1RhIGJvcnQgcGF0Y2hhciBpIGtyb2tlbiBcZkJcLVwtYWZ0ZXJcLWJ1aWxkXGZQLiBEdSBiZWj2dmVyIG9mdGFzdCBpbnRlIGFuZ2UKK2ZsYWdnYW4gZWZ0ZXJzb20gZHBrZ1wtc291cmNlIGF1dG9tYXRpc2t0IHRhciBib3J0IHBhdGNoYXIgb20gZGUgdGlsbORtcGFkZXMKK2kgXGZCXC1cLWJlZm9yZVwtYnVpbGRcZlAuIEZsYWdnYW4gdGlsbOV0cyBlbmRhc3QgaSBcZkJkZWJpYW4vc291cmNlL2xvY2FsXC1vcHRpb25zXGZQCitz5SBhdHQgYWxsYSBnZW5lcmVyYWRlIGvkbGxrb2RzcGFrZXQgc29tIHN0YW5kYXJkIGhhciBzYW1tYSBiZXRlZW5kZS4KKy5UUCAKK1xmQlwtXC1hYm9ydFwtb25cLXVwc3RyZWFtXC1jaGFuZ2VzXGZQCitQcm9jZXNzZW4gbWlzc2x5Y2thcyBvbSBlbiBhdXRvbWF0aXNrIHBhdGNoIGhhciBnZW5lcmVyYXRzLiBGbGFnZ2FuIGthbgorYW525G5kYXMgZvZyIGF0dCBzZSB0aWxsIGF0dCBhbGxhIORuZHJpbmdhciBoYXIgbGFncmF0cyB1bmRhbiBrb3JyZWt0IGkKK3NlcGFyYXRhIHF1aWx0XC1wYXRjaGFyIGlubmFuIGvkbGxrb2RzcGFrZXRldCBieWdndHMuIEZsYWdnYW4gdGlsbOV0cyBpbnRlIGkKK1xmQmRlYmlhbi9zb3VyY2Uvb3B0aW9uc1xmUCwgbWVuIGthbiBhbnbkbmRhcyBpIFxmQmRlYmlhbi9zb3VyY2UvbG9jYWxcLW9wdGlvbnNcZlAuCisuVFAgCitcZkJcLVwtYXV0b1wtY29tbWl0XGZQCitQcm9jZXNzZW4gbWlzc2x5Y2thcyBpbnRlIG9tIGVuIGF1dG9tYXRpc2sgcGF0Y2ggaGFyIHNrYXBhdHMsIGRlbiBs5GdncworaXN05GxsZXQgZGlyZWt0IGluIGkgcXVpbHRcLXNlcmllbi4KKworLlBQCitcZkJFeHRyYWhlcmluZ3NmbGFnZ29yXGZQCisuVFAgCitcZkJcLVwtc2tpcFwtZGViaWFuaXphdGlvblxmUAorSG9wcGFzIPZ2ZXIgYXR0IHBhY2thIHVwcCBkZWJpYW5cLXRhcmJvbGxlbiBvdmFucOUgdXBwc3Ry9m1za+RsbGtvZGVuLgorLlRQIAorXGZCXC1cLXNraXBcLXBhdGNoZXNcZlAKK0FwcGxpY2VyYSBpbnRlIHBhdGNoYXIgaSBzbHV0ZXQgYXYgdXBwYWNrbmluZ2VuLgorLgorLlNTICJGb3JtYXQ6IDMuMCAoc2ty5GRkYXJzeXR0KSIKK0RldHRhIGZvcm1hdGV0IORyIHNwZWNpZWxsdC4gRGV0IGFuZ2VyIGludGUgZXR0IHJpa3RpZ3Qga+RsbGtvZHNwYWtldGZvcm1hdCwKK3V0YW4ga2FuIGFuduRuZGFzIGb2ciBhdHQgc2thcGEga+RsbGtvZHNwYWtldCBtZWQgZ29kdHlja2xpZ2EgZmlsZXIuCisuUFAKK1xmQkJ5Z2dmbGFnZ29yXGZQCisuUFAKK0FsbGEgYXJndW1lbnQgc29tIGludGUg5HIgZmxhZ2dvciB0YXMgc29tIGZpbGVyIHNvbSBza2FsbCBpbnRlZ3JlcmFzIGkgZGV0Citza2FwYWRlIGvkbGxrb2RzcGFrZXRldC4gRGUgbeVzdGUgZmlubmFzLCBvY2ggaGVsc3QgaSBha3R1ZWxsCitrYXRhbG9nLiDFdG1pbnN0b25lIGVuIGZpbCBt5XN0ZSBhbmdlcy4KKy5UUCAKK1xmQlwtXC10YXJnZXRcLWZvcm1hdD1cZlBcZkl25HJkZVxmUAorXGZCS3LkdnNcZlAuIEFuZ2VyIGRldCByaWt0aWdhIGZvcm1hdGV0IHDlIGRldCBnZW5lcmVyYWRlIGvkbGxrb2RzcGFrZXRldC4gRGVuCitza2FwYWRlIC5kc2NcLWZpbGVuIGtvbW1lciBpbm5laOVsbGEgZGV0dGEgduRyZGUgaSBzaXR0IFxmSUZvcm1hdFxmUFwtZuRsdCBvY2gKK2ludGUgIjMuMCAoY3VzdG9tKSIuCisuCisuU1MgIkZvcm1hdDogMy4wIChnaXQpIgorRm9ybWF0ZXQg5HIgZXhwZXJpbWVudGVsbHQuCisuUFAKK0V0dCBr5Gxsa29kc3Bha2V0IGkgZGV0dGEgZm9ybWF0IGJlc3TlciBhdiBlbiBlbnNhbSAiYnVuZGxlIiBmcuVuIGV0dAorZ2l0XC1hcmtpdiBcZkIuZ2l0XGZQLCB2aWxrZXQgaW5uZWjlbGxlciBwYWtldGV0cyBr5Gxsa29kLiBGaWxlbiBcZkIuZ2l0c2hhbGxvd1xmUCwKK3NvbSBpbm5laOVsbGVyIHJldmlzaW9uZXIgZvZyIGdydW5kYSBnaXRcLWtsb25lciwga2FuIOR2ZW4gZvZyZWtvbW1hLgorLlBQCitcZkJVcHBhY2tuaW5nXGZQCisuUFAKKyJCdW5kbGUiOm4ga2xvbmFzIHNvbSBldHQgZ2l0XC1hcmtpdiB0aWxsIG3lbGthdGFsb2dlbi4gT20gZmlsZW4gZ2l0c2hhbGxvdworZmlubnMgaW5zdGFsbGVyYXMgZGVuIHNvbSAiLmdpdC9zaGFsbG93IiBpIGRldCBrbG9uYWRlIGdpdFwtYXJraXZldC4KKy5QUAorT2JzZXJ2ZXJhIGF0dCBkZXQgbnlhIGFya2l2ZXQgc29tIHN0YW5kYXJkIGtvbW1lciBhdHQgaGEgc2FtbWEgZ3JlbgordXRjaGVja2FkIHNvbSBkZW4gc29tIHZhciB1dGNoZWNrYWQgaSBkZXQgdXJzcHJ1bmdsaWdhCitr5Gxsa29kc3Ry5GRldC4gKFR5cGlza3QgIm1hc3RlciIsIG1lbiBrYW4gdmFyYSB2YWQgc29tIGhlbHN0LikgRXZlbnR1ZWxsYQorYW5kcmEgZ3JlbmFyIGtvbW1lciBvY2tz5SBhdHQgdmFyYSB0aWxsZ+RuZ2xpZ2EsIHVuZGVyICJyZW1vdGVzL29yaWdpbi8iLgorLlBQCitcZkJCeWdnYVxmUAorLlBQCitJbm5hbiB1cHBhY2tuaW5nZW4gZm9ydHPkdHRlciBrb21tZXIgZW4gZGVsIHRlc3RlciBhdHQgdXRm9nJhcyBm9nIgYXR0IHNlCit0aWxsIGF0dCB2aSBpbnRlIGhhciBu5WdyYSBlaiBpZ25vcmVyYWRlIGVqIGluY2hlY2thZGUg5G5kcmluZ2FyLgorLlBQCitcZkJnaXRcLWJ1bmRsZVxmUCgxKSBhbnbkbmRzIGb2ciBhdHQgZ2VuZXJlcmEgZW4gImJ1bmRsZSIgZnLlbiBnaXRcLWFya2l2ZXQuIFNvbQorc3RhbmRhcmQgdGFzIGFsbGEgZ3JlbmFyIG9jaCB0YWdnYXIgaSBhcmtpdmV0IG1lZCBpICJidW5kbGUiOm4uCisuUFAKK1xmQkJ5Z2dmbGFnZ29yXGZQCisuVFAgCitcZkJcLVwtZ2l0XC1yZWY9XGZQXGZJcmVmXGZQCitH9nIgZGV0IG32amxpZ3QgYXR0IGFuZ2UgZW4gZ2l0XC1yZWZlcmVucyBzb20gc2thbGwgdGFzIG1lZCBpICJidW5kbGUiOm4uIE9tCitkZW4gYW5nZXMg9nZlcnN0eXIgZGVuIHN0YW5kYXJkYmV0ZWVuZGV0IHNvbSDkciBhdHQgdGEgbWVkIGFsbGEgZ3JlbmFyIG9jaAordGFnZ2FyLiBLYW4gYW5nZXMgZmxlcmEgZ+VuZ2VyLiBcZklyZWZcZlAga2FuIHZhcmEgbmFtbmV0IHDlIGVuIGdyZW4gZWxsZXIgdGFnZworc29tIHNrYWxsIHRhcyBtZWQuIERlbiBrYW4g5HZlbiB2YXJhIHZpbGtlbiBzb20gaGVsc3QgYW5uYW4gcGFyYW1ldGVyIHNvbQora2FuIHPkbmRhcyBtZWQgdGlsbCBcZkJnaXRcLXJldlwtbGlzdFxmUCgxKS4gRvZyIGF0dCwgdGlsbCBleGVtcGVsLCBlbmRhc3QgdGEgbWVkCitncmVuZW4gIm1hc3RlciIsIGFuZ+RuZCBcLVwtZ2l0XC1yZWY9bWFzdGVyLiBG9nIgYXR0IHRhIG1lZCBhbGxhIHRhZ2dhciBvY2gKK2dyZW5hciwgZvZydXRvbSBncmVuZW4gcHJpdmF0ZSwgYW525G5kIFwtXC1naXRcLXJlZj1cLVwtYWxsIFwtXC1naXRcLXJlZj1ecHJpdmF0ZQorLlRQIAorXGZCXC1cLWdpdFwtZGVwdGg9XGZQXGZJYW50YWxcZlAKK1NrYXBhciBlbiBncnVuZCBrbG9uIG1lZCBlbiBoaXN0b3JpayBzb20g5HIgYXZodWdnZW4gdmlkIGRldCBhbmdpdm5hIGFudGFsZXQKK3JldmlzaW9uZXIuCisuU1MgIkZvcm1hdDogMy4wIChienIpIgorRGV0dGEgZm9ybWF0IORyIGV4cGVyaW1lbnRlbGx0LiBEZXQgZ2VuZXJlcmFyIGVuIGVuc2FtIHRhcmJvbGwgc29tCitpbm5laOVsbGVyIGJ6clwtYXJraXZldC4KKy5QUAorXGZCVXBwYWNrbmluZ1xmUAorLlBQCitUYXJib2xsZW4gcGFja2FzIHVwcCBvY2ggYnpyIGFuduRuZHMgc2VkYW4gZvZyIGF0dCBo5G10YSB1dCBkZW4gYWt0dWVsbGEKK2dyZW5lbi4KKy5QUAorXGZCQnlnZ2FcZlAKKy5QUAorSW5uYW4gdXBwYWNrbmluZ2VuIGZvcnRz5HR0ZXIga29tbWVyIGVuIGRlbCB0ZXN0ZXIgYXR0IHV0ZvZyYXMgZvZyIGF0dCBzZQordGlsbCBhdHQgdmkgaW50ZSBoYXIgbuVncmEgZWogaWdub3JlcmFkZSBlaiBpbmNoZWNrYWRlIORuZHJpbmdhci4KKy5QUAorRGUgVkNTXC1zcGVjaWZpa2EgZGVsYXJuYSBhdiBr5Gxsa29kc2thdGFsb2dlbiBrb21tZXIgZORyZWZ0ZXIgYXR0IGtvcGllcmFzCiv2dmVyIHRpbGwgZW4gdGVtcG9y5HIga2F0YWxvZy4gSW5uYW4gZGVuIHRlbXBvcuRyYSBrYXRhbG9nZW4gcGFja2FzIGkgZW4KK3RhcmJvbGwgdXRm9nJzIHZpc3Mgc3TkZG5pbmcgZvZyIGF0dCBzcGFyYSBwbGF0cy4KKy5TSCAiVkFSTklOR0FSIE9DSCBGRUxNRURERUxBTkRFTiIKKy5TUyAia+RsbGtvZHNmb3JtYXQgZWogYW5naXZldCBpIGRlYmlhbi9zb3VyY2UvZm9ybWF0IgorRmlsZW4gXGZCZGViaWFuL3NvdXJjZS9mb3JtYXRcZlAgYvZyIGFsbHRpZCBmaW5uYXMgb2NoIGFuZ2UgZGV0IPZuc2thZGUKK2vkbGxrb2RzZm9ybWF0ZXQuIEb2ciBiYWvldGtvbXBhdGliaWxpdGV0IGFudGFyIGZvcm1hdGV0ICIxLjAiIG9tIGZpbGVuIGludGUKK2Zpbm5zLCBtZW4gZHUgYvZyIGludGUgZvZybGl0YSBkaWcgcOUgZGV0dGE6IHZpZCBu5WdvbiBwdW5rdCBpIGZyYW10aWRlbgora29tbWVyIGRwa2dcLXNvdXJjZSBhdHQganVzdGVyYXMgc+UgYXR0IGRldCBtaXNzbHlja2FzIG9tIGZpbGVuIGludGUgZmlubnMuCisKK1Jlc29uZW1hbmdldCBiYWtvbSBkZXR0YSDkciBhdHQgZm9ybWF0ZXQgIjEuMCIgaW50ZSBs5G5ncmUg5HIgZGV0CityZWtvbW1lbmRlcmFkZSBmb3JtYXRldCwgZHUgYvZyIG5vcm1hbHQgduRsamEgZXR0IGF2IGRlIG55YXJlIGZvcm1hdGVuICgiMy4wCisocXVpbHQpIiwgIjMuMCAobmF0aXZlKSIpLCBtZW4gXGZCZHBrZ1wtc291cmNlXGZQIGf2ciBpbnRlIGRldHRhIGF1dG9tYXRpc2t0IOV0CitkaWcuIE9tIGR1IHZpbGwgZm9ydHPkdHRhIGFuduRuZGEgZGV0IGdhbWxhIGZvcm1hdGV0IGL2ciBkdSBhbmdlIGRldAorZXhwbGljaXQgZ2Vub20gYXR0IHNrcml2YSAiMS4wIiBpIFxmQmRlYmlhbi9zb3VyY2UvZm9ybWF0XGZQLgorLlNTICJkaWZmZW4gbW9kaWZpZXJhciBm9mxqYW5kZSB1cHBzdHL2bXNmaWxlciIKK07kciBkdSBhbnbkbmRlciBr5Gxsa29kc2Zvcm1hdGV0ICIxLjAiIORyIGRldCBvZnRhc3QgaW50ZSBu5WdvbiBicmEgaWTpIGF0dAorbW9kaWZpZXJhIHVwcHN0cvZtc2ZpbGVyIGRpcmVrdCBlZnRlcnNvbSDkbmRyaW5nYXJuYSBk9mxqcyBvY2ggaSBodXZ1ZHNhayDkcgorb2Rva3VtZW50ZXJhZGUgaSBkaWZmLmd6XC1maWxlbi4gRHUgYvZyIGlzdORsbGV0IHNwYXJhIGRpbmEg5G5kcmluZ2FyIHNvbQorcGF0Y2hhciBpIGRlYmlhblwta2F0YWxvZ2VuIG9jaCBhcHBsaWNlcmEgZGVtIG7kciBwYWtldGV0IHNrYWxsIGJ5Z2dhcy4gRvZyCithdHQgdW5kdmlrYSBkZW4gaORyIGtvbXBsZXhpdGV0ZW4ga2FuIGR1IOR2ZW4gYW525G5kYSBmb3JtYXRldCAiMy4wIChxdWlsdCkiCitzb20gbOV0ZXIgZGlnIGf2cmEgZGV0IGjkciBhdXRvbWF0aXNrdC4KKy5TUyAia2FuIGludGUgcmVwcmVzZW50ZXJhIORuZHJpbmdlbiBm9nIgXGZJZmlsXGZQIgorxG5kcmluZ2FyIHDlIHVwcHN0cvZtc2ZpbGVyIHNwYXJhcyBub3JtYWx0IHNvbSBwYXRjaGZpbGVyLCBtZW4gaW50ZSBhbGxhCivkbmRyaW5nYXIga2FuIHJlcHJlc2VudGVyYXMgbWVkIHBhdGNoYXI6IGRlIGthbiBlbmRhc3Qg5G5kcmEgaW5uZWjlbGxldCBpCit2YW5saWdhIHRleHRmaWxlci4gT20gZHUgZvZyc/ZrZXIgZXJz5HR0YSBlbiBmaWwgbWVkIG7lZ290IHNvbSBoYXIgZW4gYW5uYW4KK3R5cCAodGlsbCBleGVtcGVsIGVyc+R0dGEgZW4gdmFubGlnIGZpbCBtZWQgZW4gc3ltYm9saXNrIGzkbmsgZWxsZXIgZW4KK2thdGFsb2cpIGblciBkdSBkZXQgaORyIGZlbG1lZGRlbGFuZGV0LgorLlNTICJkZW4gdG9tbWEgZmlsZW4gXGZJZmlsXGZQIHNvbSBqdXN0IHNrYXBhdHMga29tbWVyIGludGUgcmVwcmVzZW50ZXJhcyBpIGRpZmZlbiIKK1RvbW1hIGZpbGVyIGthbiBpbnRlIHNrYXBhcyBtZWQgcGF0Y2hmaWxlci4gxG5kcmluZ2VuIGtvbW1lciBk5HJtZWQgaW50ZSBhdHQKK3NwYXJhcyBpIGvkbGxrb2RzcGFrZXRldCBvY2ggZHUgZuVyIGVuIHZhcm5pbmcgb20gZGV0LgorLlNTICJleGVrdmVyaW5nc2zkZ2UgXGZJbORnZVxmUCBw5SBcZklmaWxcZlAga29tbWVyIGludGUgcmVwcmVzZW50ZXJhcyBpIGRpZmZlbiIKKy5TUyAic3BlY2lhbGzkZ2V0IFxmSWzkZ2VcZlAgcOUgXGZJZmlsXGZQIGtvbW1lciBpbnRlIHJlcHJlc2VudGVyYXMgaSBkaWZmZW4iCitQYXRjaGZpbGVyIGJlc2tyaXZlciBpbnRlIGzkZ2V0IHDlIGZpbGVyIG9jaCDkbmRyYWRlIGzkZ2VuIHNwYXJhcyBpbnRlIGkKK2vkbGxrb2RzcGFrZXRldC4gRGVuIGjkciB2YXJuaW5nZW4gcOVtaW5uZXIgZGlnIG9tIGRldHRhLgorLlNIIEZJTEZPUk1BVAorLlNTIGRlYmlhbi9zb3VyY2UvZm9ybWF0CitGaWxlbiBpbm5laOVsbGVyIHDlIGVuIGVuc2FtIHJhZCBkZXQgZm9ybWF0IHNvbSBza2FsbCBhbnbkbmRhcyBm9nIgYXR0IGJ5Z2dhCitr5Gxsa29kc3Bha2V0ZXQgKG32amxpZ2EgZm9ybWF0IGJlc2tyaXZzIG92YW4pLiBWYXJrZW4gbGVkYW5kZSBlbGxlcgorYXZzbHV0YW5kZSBibGFua3N0ZWcgdGlsbOV0cy4KKy5TUyBkZWJpYW4vc291cmNlL2luY2x1ZGVcLWJpbmFyaWVzCitGaWxlbiBpbm5laOVsbGVyIGVuIGb2cnRlY2tuaW5nIPZ2ZXIgYmlu5HJmaWxlciAoZW4gcGVyIHJhZCkgc29tIHNrYWxsIHRhcworbWVkIGkgZGViaWFuXC10YXJib2xsZW4uIElubGVkYW5kZSBvY2ggYXZzbHV0YW5kZSBibGFua3N0ZWcgdGFzIGJvcnQuIFJhZGVyCitzb20gYvZyamFyIG1lZCAiIyIg5HIga29tbWVudGFyZXIgb2NoIGhvcHBhcyD2dmVyLiBUb21tYSByYWRlciBpZ25vcmVyYXMuCisuU1MgZGViaWFuL3NvdXJjZS9vcHRpb25zCitGaWxlbiBpbm5laOVsbGVyIGVuIGxpc3RhIPZ2ZXIgbOVuZ2EgZmxhZ2dvciBzb20gYXV0b21hdGlza3Qgc+R0dHMgaW4gZvZyZQora29tbWFuZG9yYWRzZmxhZ2dvcm5hIHNvbSBhbmdlcyBpIGV0dCBhbnJvcCB0aWwgXGZCZHBrZ1wtc291cmNlIFwtYlxmUCBlbGxlcgorXGZCZHBrZ1wtc291cmNlIFwtXC1wcmludFwtZm9ybWF0XGZQLiBGbGFnZ29yIHNvbSBcZkJcLVwtY29tcHJlc3Npb25cZlAgb2NoCitcZkJcLVwtY29tcHJlc3Npb25cLWxldmVsXGZQIORyIHBhc3NhbmRlIGF0dCBs5GdnYSBpbiBpIGRlbiAgaORyIGZpbGVuLgorLlAKK0FuZ2UgdmFyamUgZmxhZ2dhIHDlIGVuIGVnZW4gcmFkLiBUb21tYSByYWRlciBvY2ggcmFkZXIgc29tIGL2cmphciBtZWQgIiMiCitpZ25vcmVyYXMuIElubGVkYW5kZSAiXC1cLSIgc2thbGwgdGFzIGJvcnQgb2NoIGtvcnRhIGZsYWdnb3Ig5HIgaW50ZQordGlsbOV0bmEuIEJsYW5rc3RlZyB0aWxs5XRzIHJ1bnQgIj0iXC10ZWNrbmV0IG9jaCBjaXRhdHRlY2tlbiB0aWxs5XRzIHJ1bnQKK3bkcmRldC4gSORyIORyIGV0dCBleGVtcGVsIHDlIGVuIHPlZGFuIGZpbDoKKy5QCisgICMgbOV0IGRwa2dcLXNvdXJjZSBza2FwYSBlbiBkZWJpYW4udGFyLmJ6MiBtZWQgbWF4aW1hbCBrb21wcmltZXJpbmcKKyAgY29tcHJlc3Npb24gPSAiYnppcDIiCisgIGNvbXByZXNzaW9uXC1sZXZlbCA9IDkKKyAgIyBhbnbkbmQgZGViaWFuL3BhdGNoZXMvZGViaWFuXC1jaGFuZ2VzIHNvbSBlbiBhdXRvbWF0aXNrIHBhdGNoCisgIHNpbmdsZVwtZGViaWFuXC1wYXRjaAorICAjIGlnbm9yZXJhIORuZHJpbmdhciBpIGNvbmZpZy57c3ViLGd1ZXNzfQorICBleHRlbmRcLWRpZmZcLWlnbm9yZSA9ICIoXnwvKShjb25maWcuc3VifGNvbmZpZy5ndWVzcykkIgorLlAKK09ic2VydmVyYTogXGZCZm9ybWF0XGZQXC1mbGFnZ29yIHRpbGzldHMgaW50ZSBpIGRlbiBo5HIgZmlsZW4sIGR1IGL2ciBhbnbkbmRhCitmaWxlbiBcZkJkZWJpYW4vc291cmNlL2Zvcm1hdFxmUCBpc3TkbGxldC4KKy5TUyBkZWJpYW4vc291cmNlL2xvY2FsXC1vcHRpb25zCitQcmVjaXMgc29tIFxmQmRlYmlhbi9zb3VyY2Uvb3B0aW9uc1xmUCBm9nJ1dG9tIGF0dCBmaWxlbiBpbnRlIGlua2x1ZGVyYXMgaSBkZXQKK2dlbmVyZXJhZGUga+RsbGtvZHNwYWtldGV0LiBEZXQga2FuIHZhcmEgYW525G5kYmFydCBm9nIgYXR0IHNwYXJhIGV0dCB2YWwKK3NvbSBn5GxsZXIgZvZyIHBha2V0YW5zdmFyaWdhIGVsbGVyIFZDU1wtc3lzdGVtZXQga+RsbGtvZHNwYWtldGV0IGhhbnRlcmFzIGkuCisuU1MgZGViaWFuL3NvdXJjZS9sb2NhbFwtcGF0Y2hcLWhlYWRlcgorLlNTIGRlYmlhbi9zb3VyY2UvcGF0Y2hcLWhlYWRlcgorRnJpZm9ybXN0ZXh0IHNvbSBs5GdncyBpbiBw5SB0b3BwZW4gYXYgZGVuIGF1dG9tYXRpc2t0IGdlbmVyZXJhZGUgcGF0Y2hlbiBpCitmb3JtYXRlbiAiMi4wIiBlbGxlciAiMy4wIChxdWlsdCkiLiBcZkJsb2NhbFwtcGF0Y2hcLWhlYWRlclxmUCB0YXMgaW50ZSBtZWQgaSBkZXQKK2dlbmVyZXJhZGUga+RsbGtvZHNwYWtldGV0IG1lZGFuIFxmQnBhdGNoXC1oZWFkZXJcZlAgdGFzIG1lZC4KKy5TUyBkZWJpYW4vcGF0Y2hlcy9zZXJpZXMKK0xpc3RhciBhbGxhIHBhdGNoYXIgc29tIG3lc3RlIHRpbGzkbXBhcyAoaSBkZW4gZ2l2bmEgb3JkbmluZ2VuKSBvdmFucOUKK3VwcHN0cvZtc2vkbGxrb2RzcGFrZXRldC4gSW5sZWRhbmRlIG9jaCBhdnNsdXRhbmRlIGJsYW5rc3RlZyB0YXMgYm9ydC4gUmFkZXIKK3NvbSBi9nJqYXIgbWVkICIjIiDkciBrb21tZW50YXJlciBvY2ggaWdub3JlcmFzLiBUb21tYSByYWRlciBpZ25vcmVyYXMuIERlCityYWRlciBzb20g5HIga3ZhciBpbmxlZHMgbWVkIGZpbG5hbW5ldCBw5SBlbiBwYXRjaGZpbCAocmVsYXRpdnQgdGlsbAorXGZCZGViaWFuL3BhdGNoZXMvXGZQXC1rYXRhbG9nZW4pIHVwcCB0aWxsIGRldCBm9nJzdGEgYmxhbmtzdGVnc3RlY2tuZXQgZWxsZXIKK3NsdXRldCBw5SByYWRlbi4gVmFsZnJpYSBmbGFnZ29yIHRpbGwgcXVpbHQga2FuIGb2bGphIGZyYW0gdGlsbCBzbHV0ZXQgYXYKK3JhZGVuIGVsbGVyIGRldCBm9nJzdGEgIiMiIHNvbSBm9mxqZXIgcOUgZXR0IGVsbGVyIGZsZXJhIGJsYW5rc3RlZyAodmlsa2V0CithbmdlciBi9nJqYW4gcOUgZW4ga29tbWVudGFyIGZyYW0gdGlsbCBzbHV0ZXQgYXYgcmFkZW4pLgorLlNIIFBST0dSQU1GRUwKK1RpZHB1bmt0ZW4gcOUgZuRsdPZ2ZXJzdHlybmluZyBpbnRy5GZmYXIgauRtZvZydCBtZWQgaW5zdORsbG5pbmcgYXYgdmlzc2EKK3N0YW5kYXJkdXRkYXRhZuRsdCDkciBnYW5za2EgZvZydmlycmFkLgorLlNIICJTRSDEVkVOIgorXGZCZHBrZ1wtZGViXGZQKDEpLCBcZkJkcGtnXGZQKDEpLCBcZkJkc2VsZWN0XGZQKDEpLgorLgorLlNIIEbWUkZBVFRBUkUKK1VwcGhvdnNy5HR0c3NreWRkYXQgqSAxOTk1XC0xOTk2IElhbiBKYWNrc29uCisuYnIKK1VwcGhvdnNy5HR0c3NreWRkYXQgqSAyMDAwIFdpY2hlcnQgQWtrZXJtYW4KKy5icgorVXBwaG92c3LkdHRzc2t5ZGRhdCCpIDIwMDhcLTIwMTEgUmFwaGHrbCBIZXJ0em9nCisuc3AKK0RldHRhIORyIGZyaSBwcm9ncmFtdmFyYTsgc2UgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAyIGVsbGVyCitzZW5hcmUgZvZyIGtvcGllcmluZ3N2aWxsa29yLiBEZXQgZmlubnMgSU5HRU4gR0FSQU5USS4KKy5TSCAi1lZFUlPEVFROSU5HIgorUGV0ZXIgS3JlZnRpbmcgb2NoIERhbmllbCBOeWxhbmRlci4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL3N2L2Rwa2ctc3BsaXQuMSBiL2Rwa2ctMS4xNi4xLjEvbWFuL3N2L2Rwa2ctc3BsaXQuMQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lMDdiYTMyCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vc3YvZHBrZy1zcGxpdC4xCkBAIC0wLDAgKzEsMTc4IEBACisuXCIgQXV0aG9yczogSWFuIEphY2tzb24KKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlRIIGRwa2dcLXNwbGl0IDEgMjAxMVwtMDdcLTA0IERlYmlhbnByb2pla3RldCBkcGtnXC12ZXJrdHlnZW4KKy5TSCBOQU1OCitkcGtnXC1zcGxpdCBcLSBWZXJrdHlnIGb2ciBhdHQgZGVsYS9zbOUgaWhvcCBEZWJpYW5wYWtldAorLgorLlNIIFNZTk9QUworXGZCZHBrZ1wtc3BsaXRcZlAgW1xmSWZsYWdnb3JcZlAuLi5dIFxmSeV0Z+RyZFxmUAorLgorLlNIIEJFU0tSSVZOSU5HCitcZkJkcGtnXC1zcGxpdFxmUCBkZWxhciB1cHAgYmlu5HJhIERlYmlhbnBha2V0ZmlsZXIgaSBtaW5kcmUgZGVsYXIgb2NoIHNs5XIKK3NhbW1hbiBkZW0gaWdlbiwgZvZyIGF0dCBn9nJhIGRldCBt9mpsaWd0IGF0dCBsYWdyYSBzdG9yYSBwYWtldGZpbGVyIHDlIHNt5QorbWVkaWEsIHRpbGwgZXhlbXBlbCBkaXNrZXR0ZXIuCisKK1Byb2dyYW1tZXQga2FuIGv2cmFzIG1hbnVlbGx0IG1lZCBmbGFnZ29ybmEgXGZCXC1cLXNwbGl0XGZQLCBcZkJcLVwtam9pblxmUCBvY2gKK1xmQlwtXC1pbmZvXGZQLgorCitEZXQgaGFyIOR2ZW4gZXR0IGF1dG9tYXRpc2t0IGzkZ2UsIHZpbGtldCBha3RpdmVyYXMgbWVkIGZsYWdnYW4gXGZCXC1cLWF1dG9cZlAuIEkKK2RldCBs5GdldCBoYW50ZXJhciBkZXQgZW4ga/YgYXYgZGVsYXIgc29tIHNldHRzIG1lbiDkbm51IGludGUg5XRlcnN05GxsdHMsCitvY2gg5XRlcnN05GxsZXIgZW4gcGFrZXRmaWwgbuRyIGRlbiBzZXR0IGFsbGEgZGVzcyBkZWxhci4gRmxhZ2dvcm5hCitcZkJcLVwtbGlzdHFcZlAgYW5kIFxmQlwtXC1kaXNjYXJkXGZQIGf2ciBkZXQgbfZqbGlndCBhdHQgaGFudGVyYSBr9m4uCisKK0FsbGEgZnVua3Rpb25lciBm9nIgdXBwZGVsbmluZywgc2FtbWFuc2xhZ25pbmcgb2NoIGv2YW5kZSB2aXNhciBpbmZvcm1hdGl2YQorbWVkZGVsYW5kZW4gcOUgc3RhbmRhcmQgdXQ7IGRlc3NhIGthbiBpZ25vcmVyYXMuCisuCisuU0ggS09NTUFORE9OCisuVFAgCitcZkJcLXNcZlAsIFxmQlwtXC1zcGxpdFxmUCBcZkloZWx0XC1hcmtpdlxmUCBbXGZJcHJlZml4XGZQXQorRGVsYXIgZXR0IGVuc2FtdCBiaW7kcnQgRGViaWFucGFrZXQgaSBmbGVyYSBkZWxhci4KKworRGVsYXJuYSBuYW1uZ2VzIHNvbSBcZklwcmVmaXhcZlBcZkIuXGZQXGZJTlxmUFxmQm9mXGZQXGZJTVxmUFxmQi5kZWJcZlAgZORyIFxmSU5cZlAg5HIgbnVtcmV0IHDlCitkZWxlbiwgcuRrbmF0IGZy5W4gMSwgb2NoIFxmSU1cZlAg5HIgZGV0IHRvdGFsYSBhbnRhbGV0IGRlbGFyIChi5WRhIGFuZ2l2bmEKK2RlY2ltYWx0KS4KKworT20gaW5nZXQgXGZJcHJlZml4XGZQIGdlcyB0YXMgZmlsbmFtbmV0IGb2ciBcZkloZWx0XC1hcmtpdlxmUCwgaW5rbHVzaXZlCitrYXRhbG9nbmFtbiwgbWVkIGRlbiBhdnNsdXRhbmRlIFxmQi5kZWJcZlAgYm9ydHRhZ2VuLgorLlRQIAorXGZCXC1qXGZQLCBcZkJcLVwtam9pblxmUCBcZklkZWxcZlAuLi4KK1Ns5XIgc2FtbWFuIGRlIG9saWthIHBha2V0ZGVsYXJuYSwgb2NoIOV0ZXJza2FwYXIgZGVuIHVyc3BydW5nbGlnYSBmaWxlbiBzb20KK2RlbiBz5WcgdXQgaW5uYW4gZGVuIGRlbGFkZXMuCisKK0RlbGZpbGVybmEgc29tIGdlcyBzb20gYXJndW1lbnQgbeVzdGUgYWxsYSB2YXJhIGRlbGFyIGF2IGV4YWt0IHNhbW1hCit1cnNwcnVuZ2xpZ2EgYmlu5HJmaWwuIFZhcmplIG3lc3RlIGZpbm5hcyBleGFrdCBlbiBn5W5nIGkgYXJndW1lbnRsaXN0YW4sCittZW4gZGUgYmVo9nZlciBpbnRlIGxpc3RhcyBpIG9yZG5pbmcuCisKK0RlbGFybmEgbeVzdGUgbmF0dXJsaWd0dmlzIGFsbGEgaGEgZ2VuZXJlcmF0cyBtZWQgc2FtbWEgZGVsc3RvcmxlayBu5HIKK3VwcGRlbG5pbmdlbiBza2VkZGUsIHZpbGtldCBiZXR5ZGVyIGF0dCBkZSB2YW5saWd0dmlzIG3lc3RlIGhhIGdlbmVyZXJhdHMKK3ZpZCBzYW1tYSBr9nJuaW5nIGF2IFxmQmRwa2dcLXNwbGl0IFwtXC1zcGxpdFxmUC4KKworRGVsYXJuYXMgZmlsbmFtbiDkciBpbnRlIHNpZ25pZmlrYW50YSBm9nIgc2FtbWFuc2xhZ25pbmdzcHJvY2VkdXJlbi4KKworRvZydmFsdCBuYW1uIHDlIHV0ZGF0YWZpbGVuIORyIFxmSXBha2V0XGZQXGZCX1xmUFxmSXZlcnNpb25cZlBcZkJfXGZQXGZJYXJrXGZQXGZCLmRlYlxmUC4KKworLlRQIAorXGZCXC1JXGZQLCBcZkJcLVwtaW5mb1xmUCBcZklkZWxcZlAuLi4KK1Nrcml2ZXIgdXQgaW5mb3JtYXRpb24sIGkgbeRubmlza29s5HNiYXIgZm9ybSwgb20gZGVsZmlsZXJuYSBzb20KK2FuZ2VzLiBBcmd1bWVudCBzb20gaW50ZSDkciBkZWxhciBhdiBiaW7kcnBha2V0IHJlc3VsdGVyYXIgaSBldHQgbWVkZGVsYW5kZQorc29tIHRhbGFyIG9tIGRldHRhIChtZW4gZm9ydGZhcmFuZGUgcOUgc3RhbmRhcmQgdXQpLgorLlRQIAorXGZCXC1hXGZQLCBcZkJcLVwtYXV0byBcLW9cZlBcZkkgZnVsbHN05G5kaWdcLXV0ZGF0YSBkZWxcZlAKK0v2YSBhdXRvbWF0aXNrdCBkZWxhcm5hIG9jaCDldGVyc2thcGEgcGFrZXRldCBvbSBt9mpsaWd0LgorCitEZW4gXGZJZGVsXGZQIHNvbSBhbmdlcyB1bmRlcnP2a3Mgb2NoIGrkbWb2cnMgbWVkIGFuZHJhIGRlbGFyIGF2IHNhbW1hIHBha2V0Cisob20gc+VkYW5hIGV4aXN0ZXJhcikgaSBr9m4gYXYgZGVsYXIgYXYgcGFrZXQuCisKK09tIGFsbGEgZGVsYXIgYXYgZXR0IHBha2V0IGF2IHZpbGtldCBcZklkZWxcZlAg5HIgZW4gZGVsIGF2IORyIHRpbGxn5G5nbGlnYQora29tbWVyIHBha2V0ZXQgYXR0IOV0ZXJza2FwYXMgb2NoIHNrcml2YXMgdGlsbCBcZklmdWxsc3TkbmRpZ1wtdXRkYXRhXGZQICh2aWxrZW4KK3ZhbmxpZ3R2aXMgaW50ZSByZWRhbiBi9nIgZXhpc3RlcmEsIOR2ZW4gb20gZGV0IGludGUgdm9yZSBldHQgZmVsIG9tIGRldAorZ2pvcmRlIGRldCkuCisKK09tIGludGUga29tbWVyIFxmSWRlbFxmUCBhdHQga29waWVyYXMgdGlsbCBr9m4gb2NoIFxmSWZ1bGxzdORuZGlnXC11dGRhdGFcZlAgc2thcGFzCitpbnRlLgorCitPbSBcZklkZWxcZlAgaW50ZSDkciBlbiBkZWwgYXYgZXR0IGRlbGF0IGJpbuRycGFrZXQga29tbWVyIFxmQmRwa2dcLXNwbGl0XGZQIGF0dAorYXZzbHV0YSBtZWQgcmV0dXJ25HJkZSBcZkIxXGZQOyBvbSBu5WdvdCBhbm5hdCBmZWwgdXBwc3TlciBhdnNsdXRhciBkZXQgbWVkCityZXR1cnbkcmRlIFxmQjJcZlAuCisKK0ZsYWdnYW4gXGZCXC1cLW91dHB1dFxmUCBlbGxlciBcZkJcLW9cZlAgbeVzdGUgZ2VzIGTlIFxmQlwtXC1hdXRvXGZQYW525G5kcy4gIChPbSBkZXR0YQoraW50ZSB2b3JlIGV0dCBrcmF2IHNrdWxsZSBkZXQgYW5yb3BhbmRlIHByb2dyYW1tZXQgaW50ZSB2ZXRhIHZpbGtlbgordXRkYXRhZmlsIHNvbSBm9nJ25G50YWRlcy4pCisuVFAgCitcZkJcLWxcZlAsIFxmQlwtXC1saXN0cVxmUAorTGlzdGFyIGlubmVo5WxsZXQgaSBr9m4g9nZlciBwYWtldCBhdHQg5XRlcnN05GxsYS4KKworRvZyIHZhcmplIHBha2V0ZmlsIGb2ciB2aWxrZW4gZGVsYXIgZmlubnMgaSBr9m4gdmlzYXMgaSB1dGRhdGEgbmFtbmV0IHDlCitwYWtldGV0LCBhbnRhbCBkZWxhciBpIGv2biwgb2NoIGRldCB0b3RhbGEgYW50YWxldCBieXRlIHNvbSDkciBsYWdyYWRlIGkKK2v2bi4KKy5UUCAKK1xmQlwtZFxmUCwgXGZCXC1cLWRpc2NhcmRcZlAgW1xmSXBha2V0XGZQLi4uXQorS2FzdGFyIGJvcnQgZGVsYXIgZnLlbiBr9m4g9nZlciBkZSBzb20gduRudGFyIHDlIOV0ZXJzdOVlbmRlIGRlbGFyIGF2IHBha2V0LgorCitPbSBpbmdldCBcZklwYWtldFxmUCBhbmdlcyB09m1zIGv2biBoZWx0OyBvbSBwYWtldCBhbmdlcyBrYXN0YXMgYmFyYSBkZWxhciBm9nIKK2RlKHQpIHBha2V0IHNvbSBhbmdlcy4KKy5UUCAKK1xmQlwtaFxmUCwgXGZCXC1cLWhlbHBcZlAKK1Zpc2FyIGhq5Gxwc2vkcm0gb2NoIGF2c2x1dGFyLgorLlRQIAorXGZCXC1cLXZlcnNpb25cZlAKK1Zpc2FyIHZlcnNpb24gb2NoIGF2c2x1dGFyLgorLgorLlNIIEZMQUdHT1IKKy5UUCAKK1xmQlwtXC1kZXBvdGRpclxmUFxmSSBrYXRhbG9nXGZQCitBbmdlciBlbiBhbHRlcm5hdGl2IGthdGFsb2cgZvZyIGv2biBhdiBkZWxhciBzb20gduRudGFyIHDlIGF1dG9tYXRpc2sKK3NhbW1hbnNsYWduaW5nLiBG9nJ2YWxldCDkciBcZkIvdmFyL2xpYi9kcGtnXGZQLgorLlRQIAorXGZCXC1TXGZQLCBcZkJcLVwtcGFydHNpemVcZlAgXGZJa2liaWJ5dGVcZlAKK0FuZ2VyIG1heGltYWwgc3RvcmxlayB2aWQgZGVsbmluZywgaSBraWJpYnl0ZSAoMTAyNCBieXRlKS4gRvZydmFsIORyIDQ1MAorS2lCLgorLlRQIAorXGZCXC1vXGZQLCBcZkJcLVwtb3V0cHV0XGZQIFxmSWZ1bGxzdORuZGlnXC11dGRhdGFcZlAKK0FuZ2VyIGZpbG5hbW5ldCBm9nIgdXRkYXRhIHZpZCBzYW1tYW5zbGFnbmluZy4KKworQW525G5kcyBpc3TkbGxldCBm9nIgZvZydmFsZXQgdmlkIG1hbnVlbGwgc2FtbWFuc2xhZ25pbmcgKFxmQlwtXC1qb2luXGZQKSBvY2gKK2ty5HZzIGb2ciBhdXRvbWF0aXNrIGv2YVwtZWxsZXJcLXNhbW1hbnNs5SAoXGZCXC1cLWF1dG9cZlApLgorLlRQIAorXGZCXC1RXGZQLCBcZkJcLVwtbnBxdWlldFxmUAorVmlkIGF1dG9tYXRpc2sga/ZhXC1lbGxlclwtc2FtbWFuc2zlIHNrcml2ZXIgXGZCZHBrZ1wtc3BsaXRcZlAgbm9ybWFsdCBldHQKK21lZGRlbGFuZGUgb20gZGVuIG1hdGFzIG1lZCBlbiBcZklkZWxcZlAgc29tIGludGUg5HIgZW4gYmlu5HIgcGFrZXRkZWwuIERlbm5hCitmbGFnZ2EgdW5kZXJ0cnlja2VyIG1lZGRlbGFuZGV0LCB2aWxrZXQgZ/ZyIGRldCBt9mpsaWd0IGb2ciBwcm9ncmFtIHPlc29tCitcZkJkcGtnXGZQIGF0dCBoYW50ZXJhIGLlZGUgZGVsYWRlIG9jaCBvZGVsYWRlIHBha2V0IHV0YW4gYXR0IHByb2R1Y2VyYQorZmVsYWt0aWdhIG1lZGRlbGFuZGVuLgorLlRQIAorXGZCXC1cLW1zZG9zXGZQCitUdmluZ2FyIHV0ZGF0YWZpbG5hbW4gc2thcGFkZSBhdiBcZkJcLVwtc3BsaXRcZlAgYXR0IHZhcmEgbXNkb3NcLWtvbXBhdGlibGEuCisKK01pc3NoYW5kbGFyIHByZWZpeGV0IFwtIGFudGluZ2VuIGb2cnZhbGV0IHRhZ2V0IGZy5W4gaW5kYXRhZmlsbmFtbmV0LCBlbGxlcgorZGV0IHNvbSBhbmdldHRzIHNvbSBhcmd1bWVudDogYWxmYW51bWVyaXNrYSB0ZWNrZW4gZ/ZycyB0aWxsIGdlbWVuZXIsCitwbHVzdGVja2VuIGVyc+R0dHMgbWVkIFxmQnhcZlAgb2NoIGFsbGEgYW5kcmEgdGVja2VuIGthc3Rhcy4KKworUmVzdWx0YXRldCB0cnVua2VyYXMgc+UgbOVuZ3Qgc29tIG32amxpZ3QsIG9jaCBmaWxuYW1uIHDlIGZvcm1lbgorXGZJcHJlZml4TlxmUFxmQm9mXGZQXGZJTVxmUFxmQi5kZWJcZlAgZ2VuZXJlcmFzLgorLgorLlNIIFJFVFVSVsRSREUKKy5UUCAKK1xmQjBcZlAKK0RlbiBlZnRlcmZy5WdhZGUgZGVsbmluZ2VuLCBzYW1tYW5zbGFnbmluZ2VuIGVsbGVyIGFubmFuIOV0Z+RyZAorbHlja2FkZXMuIFxmQlwtXC1pbmZvXGZQXC1rb21tYW5kb24gbHlja2FzIOR2ZW4gb20gaW5kYXRhZmlsZW4gaW50ZSDkciBlbiBkZWwgYXYKK2V0dCBiaW7kcnBha2V0LgorLlRQIAorXGZCMVxmUAorVXBwa29tbWVyIGVuZGFzdCBtZWQgXGZCXC1cLWF1dG9cZlAgb2NoIGFuZ2VyIGF0dCBcZklkZWxcZlBmaWxlbiBpbnRlIHZhciBlbiBkZWwgYXYKK2V0dCBiaW7kcnBha2V0LgorLlRQIAorXGZCMlxmUAorTuVnb3QgaGFyIGfldHQgZmVsLCB0aWxsIGV4ZW1wZWwgZXR0IHN5c3RlbWFucm9wLCBhdHQgZW4gZmlsIHPlZyB1dCBzb20gZW4KK3Bha2V0ZGVsIG1lbiB2YXIgdHJhc2lnLCBldHQgYW525G5kbmluZ3NmZWwsIGVsbGVyIG7lZ290IGFubmF0IHByb2JsZW0uCisuCisuU0ggUFJPR1JBTUZFTAorS29tcGxldHRhIGRldGFsamVyIGb2ciBwYWtldCBpIGv2biBrYW4gaW50ZSBm5XMgdXRhbiBhdHQgc2rkbHYgZ3LkdmEgaQora/ZcLWthdGFsb2dlbi4KKworRGV0IGZpbm5zIGluZ2V0IGzkdHQgc+R0dGEgYXR0IHRlc3RhIG9tIGVuIGZpbCBzb20ga2FuIHZhcmEgZW4gZGVsIGF2IGV0dAorYmlu5HJwYWtldCBmYWt0aXNrdCDkciBkZXQuCisuCisuU0ggRklMRVIKKy5UUCAKK1xmQi92YXIvbGliL2Rwa2cvcGFydHNcZlAKK0b2cnZhbGQga/ZcLWthdGFsb2cgZvZyIGRlbGZpbGVyIHNvbSB25G50YXIgcOUgYXV0b21hdGlzayBzYW1tYW5zbGFnbmluZy4KKworRmlsbmFtbmVuIHNvbSBhbnbkbmRzIGkga2F0YWxvZ2VuIORyIGkgZXR0IGludGVybnQgZm9ybWF0IGb2ciBcZkJkcGtnXC1zcGxpdFxmUAorb2NoIORyIGtuYXBwYXN0IGFuduRuZGJhcmEgZvZyIGFuZHJhIHByb2dyYW0sIG9jaCBodXIgc29tIGhlbHN0IGthbiBpbnRlCitmb3JtYXRldCBw5SBmaWxuYW1uZW4gbGl0YXMgcOUuCisuCisuU0ggIlNFIMRWRU4iCitcZkJkZWJcZlAoNSksIFxmQmRlYlwtY29udHJvbFxmUCg1KSwgXGZCZHBrZ1wtZGViXGZQKDEpLCBcZkJkcGtnXGZQKDEpLgorLgorLlNIIEbWUkZBVFRBUkUKK1VwcGhvdnNy5HR0c3NreWRkYXQgqSAxOTk1XC0xOTk2IElhbiBKYWNrc29uCisuc3AKK0RldHRhIORyIGZyaSBwcm9ncmFtdmFyYTsgc2UgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAyIGVsbGVyCitzZW5hcmUgZvZyIGtvcGllcmluZ3N2aWxsa29yLiBEZXQgZmlubnMgSU5HRU4gR0FSQU5USS4KKy5TSCAi1lZFUlPEVFROSU5HIgorUGV0ZXIgS3JlZnRpbmcgb2NoIERhbmllbCBOeWxhbmRlci4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL3N2L2Rwa2ctc3RhdG92ZXJyaWRlLjggYi9kcGtnLTEuMTYuMS4xL21hbi9zdi9kcGtnLXN0YXRvdmVycmlkZS44Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmNkZDU4ZWQKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9zdi9kcGtnLXN0YXRvdmVycmlkZS44CkBAIC0wLDAgKzEsOTYgQEAKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlRIIGRwa2dcLXN0YXRvdmVycmlkZSA4IDIwMTFcLTA3XC0wNCBEZWJpYW5wcm9qZWt0ZXQgZHBrZ1wtdmVya3R5Z2VuCisuU0ggTkFNTgorZHBrZ1wtc3RhdG92ZXJyaWRlIFwtIPZ2ZXJzdHlyIORnYXJza2FwIG9jaCBs5GdlIGb2ciBmaWxlcgorLgorLlNIIFNZTk9QUworXGZCZHBrZ1wtc3RhdG92ZXJyaWRlXGZQIFtcZklmbGFnZ2FcZlAuLi5dIFxmSeV0Z+RyZFxmUAorLgorLlNIIEJFU0tSSVZOSU5HCisiXGZCc3RhdFwt9nZlcnN0eXJuaW5nYXJcZlAiIORyIGV0dCBz5HR0IGF0dCB0YWxhIG9tIGb2ciBcZkJkcGtnXGZQKDEpIGF0dCBlbiBhbm5hbgor5GdhcmUgZWxsZXIgZXR0IGFubmF0IGzkZ2Ugc2thbGwgYW525G5kYXMgZvZyIGVuIGZpbCDkciBldHQgcGFrZXQKK2luc3RhbGxlcmFzLiAoT2JzZXJ2ZXJhIGF0dCBvcmRldCAiZmlsIiBhbnbkbmRzIGjkciwgbWVuIGF0dCBkZXQga2FuIHZhcmEKK2FsbGEgc29ydGVycyBmaWxzeXN0ZW1zb2JqZWt0IHNvbSBoYW50ZXJhcyBhdiBkcGtnLCB0aWxsIGV4ZW1wZWwga2F0YWxvZ2VyLAorZW5oZXRlciBvc3YuKS4gRGV0dGEga2FuIGFuduRuZGFzIGb2ciBhdHQgdHZpbmdhIHByb2dyYW0gc29tIG5vcm1hbHQg5HIKK3NldHVpZCBhdHQgaW5zdGFsbGVyYXMgc29tIGVuIHNldHVpZFwtZmxhZ2dhLCBlbGxlciBiYXJhIGV4ZWt2ZXJiYXIgYXYgZW4KK3NwZWNpZmlrIGdydXBwLgorLlAKK1xmQmRwa2dcLXN0YXRvdmVycmlkZVxmUCDkciBldHQgdmVya3R5ZyBm9nIgYXR0IGhhbnRlcmEgbGlzdGFuIPZ2ZXIKK3N0YXRcLfZ2ZXJzdHlybmluZ2FyLiBEZXQgaGFyIHRyZSBncnVuZGzkZ2dhbmRlIGZ1bmt0aW9uZXI6IGzkZ2dhIHRpbGwsIHRhCitib3J0IG9jaCB2aXNhIPZ2ZXJzdHlybmluZ2FyLgorLgorLlNIIEtPTU1BTkRPTgorLlRQIAorXGZCXC1cLWFkZFxmUFxmSSBhbnbkbmRhcmUgZ3J1cHAgbORnZSBmaWxcZlAKK0zkZ2cgdGlsbCBlbiD2dmVyc3R5cm5pbmcgZvZyIFxmSWZpbFxmUC4gXGZJRmlsXGZQIGJlaPZ2ZXIgaW50ZSBleGlzdGVyYSBu5HIKK2tvbW1hbmRvdCBr9nJzOyD2dmVyc3R5cm5pbmdlbiBrb21tZXIgbGFncmFzIG9jaCBhbnbkbmRhcyBzZW5hcmUuIEFuduRuZGFyZQorb2NoIGdydXBwZXIga2FuIGFuZ2VzIG1lZCBuYW1uICh0aWxsIGV4ZW1wZWwgXGZCcm9vdFxmUCBlbGxlciBcZkJub2JvZHlcZlApLCBlbGxlcgorbWVkIGRlcmFzIG51bW1lciBtZWQgZXR0ICJcZkIjXGZQIiAodGlsbCBleGVtcGVsIFxmQiMwXGZQIGVsbGVyCitcZkIjNjU1MzRcZlApLiBcZklM5GdlXGZQIG3lc3RlIGFuZ2VzIG9rdGFsdC4KKworT20gXC1cLXVwZGF0ZSBhbmdlcyBvY2ggXGZJZmlsXGZQIGV4aXN0ZXJhciBrb21tZXIgZGVuIG9tZWRlbGJhcnQgYXR0IHPkdHRhcyB0aWxsCitkZW4gbnlhIGFuduRuZGFyZW4gb2NoIGzkZ2V0LgorLlRQIAorXGZCXC1cLXJlbW92ZVxmUFxmSSBmaWxcZlAKK1RhIGJvcnQgZW4g9nZlcnN0eXJuaW5nIGb2ciBcZklmaWxcZlAsIHN0YXR1cyBm9nIgXGZJZmlsXGZQIORuZHJhcyBpbnRlIGF2IGRldHRhCitrb21tYW5kby4KKy5UUCAKK1xmQlwtXC1saXN0XGZQIFtcZklmaWxuYW1uc3P2a232bnN0ZXJcZlBdCitWaXNhIGFsbGEg9nZlcnN0eXJuaW5nYXIuIE9tIGV0dCBz9mtt9m5zdGVyIGFuZ2VzIGtvbW1lciB1dGRhdGEgYXR0CitiZWdy5G5zYXMgdGlsbCD2dmVyc3R5cm5pbmdhciBzb20gbW90c3ZhcmFyIG32bnN0cmV0LiBPbSBkZXQgaW50ZSBmaW5ucworbuVncmEg9nZlcnN0eXJuaW5nYXIsIGVsbGVyIGluZ2EgbW90c3ZhcmFyIG32bnN0cmV0LCBrb21tZXIKK1xmQmRwa2dcLXN0YXRvdmVycmlkZVxmUCBhdnNsdXRhcyBtZWQgc3RhdHVza29kIDEuCisuVFAgCitcZkJcLVwtaGVscFxmUAorVmlzYXIgaGrkbHBza+RybSBvY2ggYXZzbHV0YXIuCisuVFAgCitcZkJcLVwtdmVyc2lvblxmUAorVmlzYXIgdmVyc2lvbiBvY2ggYXZzbHV0YXIuCisuCisuU0ggRkxBR0dPUgorLlRQIAorXGZCXC1cLWFkbWluZGlyXGZQXGZJIGthdGFsb2dcZlAKK8RuZHJhIFxmSWthdGFsb2dcZlAgZvZyIGRwa2dcLWRhdGFiYXNlbiBk5HIgc3RhdG92ZXJyaWRlXC1maWxlbiBvY2tz5QorbGFncmFzLiBG9nJ2YWwg5HIgXGZJL3Zhci9saWIvZHBrZ1xmUC4KKy5UUCAKK1xmQlwtXC1mb3JjZVxmUAorVHZpbmdhIGV0dCBrb21tYW5kbywg5HZlbiBvbSBlbiBz5GtlcmhldHNrb250cm9sbCBhbm5hcnMgc2t1bGxlIGb2cmhpbmRyYQorZGV0LiBEZXR0YSBiZWj2dnMgZvZyIGF0dCD2dmVyc3R5cmEgZW4gYmVmaW50bGlnIPZ2ZXJzdHlybmluZy4KKy5UUCAKK1xmQlwtXC11cGRhdGVcZlAKK0b2cnP2ayBhdHQgb21lZGVsYmFydCDkbmRyYSBmaWxlbrdvbbdkZW63ZmlubnMgdGlsbCBkZW4gbnlhIORnYXJlbiBvY2gKK2zkZ2V0LgorLlRQIAorXGZCXC1cLXF1aWV0XGZQCitWYXIgbWluZHJlIHByYXRzb20gb20gdmFkIHNvbSBn9nJzLgorLgorLlNIIE1JTErWVkFSSUFCTEVSCisuVFAgCitcZkJEUEtHX0FETUlORElSXGZQCitPbSBzYXR0LCBvY2ggZmxhZ2dhbiBcZkJcLVwtYWRtaW5kaXJcZlAgaW50ZSBoYXIgYW5naXZpdHMsIGFuduRuZHMgduRyZGV0IHNvbQorZGF0YWthdGFsb2cgZvZyIGRwa2cuCisuCisuU0ggRklMRVIKKy5UUCAKK1xmSS92YXIvbGliL2Rwa2cvc3RhdG92ZXJyaWRlXGZQCitGaWwgc29tIGlubmVo5WxsZXIgZGVuIGFrdHVlbGxhIGxpc3RhbiD2dmVyIHN0YXT2dmVyc3R5cm5pbmdhciBw5Qorc3lzdGVtZXQuIERlbiBmaW5ucyBpIGRwa2c6cyBhZG1pbmlzdHJhdGlvbnNrYXRhbG9nLCB0aWxsc2FtbWFucyBtZWQgYW5kcmEKK2ZpbGVyIHNvbSDkciB2aWt0aWdhIGb2ciBkcGtnLCBzb20gInN0YXR1cyIgb2NoICJhdmFpbGFibGUiLgorLmJyCitPYnNlcnZlcmE6IFxmQmRwa2dcLXN0YXRvdmVycmlkZVxmUCBiZXZhcmFyIGRlbiBnYW1sYSB1cHBsYWdhbiBhdiBmaWxlbiwgbWVkCit0aWxs5GdnZXQgIlwtb2xkIiBpbm5hbiBkZW4gZXJz5HR0cyBtZWQgZGVuIG55YS4KKy4KKy5TSCAiU0UgxFZFTiIKK1xmQmRwa2dcZlAoMSkuCisuCisuU0ggRtZSRkFUVEFSRQorVXBwaG92c3LkdHRzc2t5ZGRhdCCpIDIwMDAgV2ljaGVydCBBa2tlcm1hbgorLnNwCitEZXR0YSDkciBmcmkgcHJvZ3JhbXZhcmE7IHNlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBlbGxlcgorc2VuYXJlIGb2ciBrb3BpZXJpbmdzdmlsbGtvci4gRGV0IGZpbm5zIElOR0VOIEdBUkFOVEkuCisuU0ggItZWRVJTxFRUTklORyIKK1BldGVyIEtyZWZ0aW5nIG9jaCBEYW5pZWwgTnlsYW5kZXIuCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9zdi9kcGtnLXRyaWdnZXIuMSBiL2Rwa2ctMS4xNi4xLjEvbWFuL3N2L2Rwa2ctdHJpZ2dlci4xCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjk4N2MzZWQKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9zdi9kcGtnLXRyaWdnZXIuMQpAQCAtMCwwICsxLDcxIEBACisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkcGtnXC10cmlnZ2VyIDEgMjAxMVwtMDhcLTE0IERlYmlhbnByb2pla3RldCBEcGtnXC1zdml0ZW4KKy5TSCBOQU1OCitkcGtnXC10cmlnZ2VyIFwtIGV0dCB2ZXJrdHlnIGb2ciBwYWtldHV0bPZzYXJlCisuCisuU0ggU1lOT1BTCitcZkJkcGtnXC10cmlnZ2VyXGZQIFtcZklmbGFnZ29yXGZQLi4uXSBcZkl1dGz2c2FybmFtblxmUAorLmJyCitcZkJkcGtnXC10cmlnZ2VyXGZQIFtcZklmbGFnZ29yXGZQLi4uXSBcZklrb21tYW5kb1xmUAorLgorLlNIIEJFU0tSSVZOSU5HCitcZkJkcGtnXC10cmlnZ2VyXGZQIORyIGV0dCB2ZXJrdHlnIGb2ciBhdHQgZXhwbGljaXQgYWt0aXZlcmEgdXRs9nNhcmUgb2NoIGb2cgorYXR0IHRlc3RhIG9tIGRlIHN09mRzIGF2IGRlbiBr9nJhbmRlIFxmQmRwa2dcZlAuCisuUFAKK0RldCBrYW4gYW525G5kYXMgYXYgdXR2ZWNrbGFyc2tyaXB0IGkga29tcGxleGEgb2NoIHZpbGxrb3JsaWdhIHNpdHVhdGlvbmVyCitk5HIgZmlsdXRs9nNhcmUsIGVsbGVyIGRldCBkZWtsYXJhdGl2YSBcZkJhY3RpdmF0ZVxmUFwtZGlyZWt0aXZldCBpCit1dGz2c2Fyc3R5cmZpbGVuIGludGUga2FuIHV0dHJ5Y2thIGRldCBzb20gYmVo9nZzLiBEZXQga2FuIOR2ZW4gYW525G5kYXMgZvZyCit0ZXN0IG9jaCBhdiBzeXN0ZW1hZG1pbmlzdHJhdPZyZXIgKG1lbiBvYnNlcnZlcmEgYXR0IHV0bPZzYXJuYSBpbnRlIGtvbW1lcgorYXR0IGZha3Rpc2t0IGv2cmFzIGF2IFxmQmRwa2dcLXRyaWdnZXJcZlApLgorLlBQCitPa+RuZGEgdXRs9nNhcm5hbW5zeW50YXhlciDkciBldHQgZmVsIGb2ciBcZkJkcGtnXC10cmlnZ2VyXGZQLgorLgorLlNIIEtPTU1BTkRPTgorLlRQIAorXGZCXC1cLWNoZWNrXC1zdXBwb3J0ZWRcZlAKK1NlIG9tIGRlbiBcZkJkcGtnXGZQIHNvbSBr9nJzIHN09mRlciB1dGz2c2FyZSAoYW5yb3BhcyB2YW5saWd0dmlzIGZy5W4gZXR0Citwb3N0aW5zdFwtc2tyaXB0KS4gQXZzbHV0YXIgbWVkIFxmQjBcZlAgb20gZW4gXGZCZHBrZ1xmUCBtZWQgdXRs9nNhcnN09mQgaGFyIGv2cnQsCitlbGxlciBcZkIxXGZQIG1lZCBldHQgZmVsbWVkZGVsYW5kZSBw5SBzdGFuZGFyZCBmZWwgb20gaW50ZS4gRGV0IORyIGRvY2sKK25vcm1hbHQgc2V0dCBi5HR0cmUgYXR0IGJhcmEgYWt0aXZlcmEgZGVuIPZuc2thZGUgdXRs9nNhcmVuIG1lZAorXGZCZHBrZ1wtdHJpZ2dlclxmUC4KKy5UUCAKK1xmQlwtaFxmUCwgXGZCXC1cLWhlbHBcZlAKK1Zpc2FyIGhq5Gxwc2vkcm0gb2NoIGF2c2x1dGFyLgorLlRQIAorXGZCXC1cLXZlcnNpb25cZlAKK1Zpc2FyIHZlcnNpb24gb2NoIGF2c2x1dGFyLgorLgorLlNIIEZMQUdHT1IKKy5UUCAKK1xmQlwtXC1hZG1pbmRpcj1cZlBcZklrYXRcZlAKK8RuZHJhIHBsYXRzZW4gZvZyIFxmQmRwa2dcZlBcLWRhdGFiYXNlbi4gRvZydmFsIORyIFxmSS92YXIvbGliL2Rwa2dcZlAuCisuVFAgCitcZkJcLVwtYnlcLXBhY2thZ2U9XGZQXGZJcGFrZXRcZlAKK9Z2ZXJzdHlyIGRlbiBzb20gduRudGFyIHDlIGVuIHV0bPZzYXJlIChz5HR0cyB2YW5saWdlbiBhdiBcZkJkcGtnXGZQIGdlbm9tCittaWxq9nZhcmlhYmVsbiBcZkJEUEtHX01BSU5UU0NSSVBUX1BBQ0tBR0VcZlAgaSB1dHZlY2tsYXJza3JpcHQsIGb2ciBhdHQgbmFtbmdlCitkZXQgcGFrZXQgc29tIHNrcmlwdGV0IHRpbGxo9nIsIG9jaCBkZXR0YSBhbnbkbmRzIHNvbSBzdGFuZGFyZCkuCisuVFAgCitcZkJcLVwtbm9cLWF3YWl0XGZQCitEZW5uYSBmbGFnZ2EgZ/ZyIHPlIGF0dCBkZXQgYW5yb3BhZGUgcGFrZXRldCBUIChvbSBkZXQgZmlubnMpIGludGUgYmVo9nZlcgorduRudGEgcOUgaGFudGVyaW5nIGF2IHV0bPZzYXJlbjsgZGV0L2RlIGludHJlc3NlcmFkZSBwYWtldGV0L3Bha2V0ZW4gSQora29tbWVyIGludGUgbORnZ2FzIHRpbGwgVDpzIHbkbnRlbGlzdGEgZvZyIGhhbnRlcmluZyBhdiB1dGz2c2FyZSBvY2ggVDpzCitzdGF0dXMg5G5kcmFzIGludGUuIFQga2FuIGFuc2VzIHZhcmEgaW5zdGFsbGVyYXQg5HZlbiBvbSBJIGthbnNrZSDkbm51IGludGUKK2hhciBoYW50ZXJhdCB1dGz2c2FyZW4uCisuVFAgCitcZkJcLVwtbm9cLWFjdFxmUAorQmFyYSB0ZXN0YSwg5G5kcmEgaW50ZSBw5SBu5WdvbnRpbmcuCisuCisuU0ggTUlMStZWQVJJQUJMRVIKKy5UUCAKK1xmQkRQS0dfQURNSU5ESVJcZlAKK09tIHNhdHQsIG9jaCBmbGFnZ2FuIFxmQlwtXC1hZG1pbmRpclxmUCBpbnRlIGhhciBhbmdpdml0cywgYW525G5kcyB25HJkZXQgc29tCitkYXRha2F0YWxvZyBm9nIgZHBrZy4KKy4KKy5TSCAiU0UgxFZFTiIKK1xmQmRwa2dcZlAoMSksIFxmQmRlYlwtdHJpZ2dlcnNcZlAoNSksIFxmQi91c3Ivc2hhcmUvZG9jL2Rwa2dcLWRldi90cmlnZ2Vycy50eHQuZ3pcZlAuCisuU0ggItZWRVJTxFRUTklORyIKK1BldGVyIEtyZWZ0aW5nIG9jaCBEYW5pZWwgTnlsYW5kZXIuCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9zdi9kcGtnLXZlbmRvci4xIGIvZHBrZy0xLjE2LjEuMS9tYW4vc3YvZHBrZy12ZW5kb3IuMQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yMWRkMWVkCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vc3YvZHBrZy12ZW5kb3IuMQpAQCAtMCwwICsxLDYxIEBACisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkcGtnXC12ZW5kb3IgMSAyMDExXC0wN1wtMDQgRGViaWFucHJvamVrdGV0IERwa2dcLXN2aXRlbgorLlNIIE5BTU4KK2Rwa2dcLXZlbmRvciBcLSBmcuVnYXIgZWZ0ZXIgaW5mb3JtYXRpb24gb20gZGlzdHJpYnV0aW9uc+V0ZXJm9nJz5GxqYXJlCisuCisuU0ggU1lOT1BTCitcZkJkcGtnXC12ZW5kb3JcZlAgW1xmSWZsYWdnb3JcZlAuLi5dIFxmSeV0Z+RyZFxmUAorLgorLlNIIEJFU0tSSVZOSU5HCitcZkJkcGtnXC12ZW5kb3JcZlAg5HIgZXR0IHZlcmt0eWcgZvZyIGF0dCBmcuVnYSBlZnRlciDldGVyZvZyc+RsamFyZSBzb20gZmlubnMgaQorXGZJL2V0Yy9kcGtnL29yaWdpbnNcZlAuIFxmQi9ldGMvZHBrZy9vcmlnaW5zL2RlZmF1bHRcZlAgaW5uZWjlbGxlciBpbmZvcm1hdGlvbiBvbQorZGVuIGFrdHVlbGxhIOV0ZXJm9nJz5GxqYXJlbi4KKy4KKy5TSCBLT01NQU5ET04KKy5UUCAKK1xmQlwtXC1pc1xmUFxmSSDldGVyZvZyc+RsamFyZVxmUAorQXZzbHV0YXIgbWVkIFxmQjBcZlAgb20gZGVuIGFrdHVlbGxhIOV0ZXJm9nJz5GxqYXJlbiDkciBcZknldGVyZvZyc+RsamFyZVxmUC4gSQorYW5uYXQgZmFsbCBhdnNsdXRhcyBwcm9ncmFtbWV0IG1lZCBpY2tlXC1ub2xsLgorLlRQIAorXGZCXC1cLWRlcml2ZXNcLWZyb21cZlBcZkkg5XRlcmb2cnPkbGphcmVcZlAKK0F2c2x1dGFyIG1lZCBcZkIwXGZQIG9tIGRlbiBha3R1ZWxsYSDldGVyZvZyc+RsamFyZGlzdHJpYnV0aW9uZW4g5HIgaORybGVkZAorZnLlbiBcZknldGVyZvZyc+RsamFyZVxmUC4gSSBhbm5hdCBmYWxsIGF2c2x1dGFzIHByb2dyYW1tZXQgbWVkCitpY2tlXC1ub2xsLiBBbnbkbmRlciBm5Gx0ZXQgIlBhcmVudCIgZvZyIGF0dCBibORkZHJhIGdlbm9tIGFsbGEgZvZy5GxkcmFyCit0aWxsIGRlbiBha3R1ZWxsYSDldGVyZvZyc+RsamFyZW4uCisuVFAgCitcZkJcLVwtcXVlcnlcZlAgXGZJZuRsdFxmUAorU2tyaXZlciB25HJkZXQgZvZyIGRldCDldGVyZvZyc+RsamFyc3BlY2lmaWthIGbkbHRldCBcZklm5Gx0XGZQIGb2ciBkZW4KK2FrdHVlbGxhIOV0ZXJm9nJz5GxqYXJlbiBw5SBzdGFuZGFyZCB1dC4KKy5UUCAKK1xmQlwtXC1oZWxwXGZQCitWaXNhciBoauRscHNr5HJtIG9jaCBhdnNsdXRhci4KKy5UUCAKK1xmQlwtXC12ZXJzaW9uXGZQCitWaXNhciB2ZXJzaW9uIG9jaCBhdnNsdXRhci4KKy4KKy5TSCBGTEFHR09SCisuVFAgCitcZkJcLVwtdmVuZG9yXGZQXGZJIOV0ZXJm9nJz5GxqYXJlXGZQCitBbnRhIGF0dCBkZW4gYWt0dWVsbGEg5XRlcmb2cnPkbGphcmVuIORyIFxmSeV0ZXJm9nJz5GxqYXJlXGZQIGlzdORsbGV0IGb2ciBhdHQKK3VwcHTkY2thIGRldCB2aWEgbWlsavZ2YXJpYWJlbG4gXGZCREVCX1ZFTkRPUlxmUCBlbGxlcgorXGZCL2V0Yy9kcGtnL29yaWdpbnMvZGVmYXVsdFxmUC4KKy4KKy5TSCBNSUxK1lZBUklBQkxFUgorLlRQIAorXGZCREVCX1ZFTkRPUlxmUAorSW5zdORsbG5pbmdlbiBhbmdlciBkZW4gYWt0dWVsbGEg5XRlcmb2cnPkbGphcmVuLiBPbSBkZW4gaW50ZSDkciBzYXR0IGtvbW1lcgor5XRlcmb2cnPkbGphcmVuIGF0dCBpZGVudGlmaWVyYXMgZ2Vub20gYXR0IGzkc2EKK1xmQi9ldGMvZHBrZy9vcmlnaW5zL2RlZmF1bHRcZlAuCisuCisuU0ggRtZSRkFUVEFSRQorVXBwaG92c3LkdHRzc2t5ZGRhdCCpIDIwMDkgUmFwaGHrbCBIZXJ0em9nCisuc3AKK0RldHRhIORyIGZyaSBwcm9ncmFtdmFyYTsgc2UgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAyIGVsbGVyCitzZW5hcmUgZvZyIGtvcGllcmluZ3N2aWxsa29yLiBEZXQgZmlubnMgSU5HRU4gR0FSQU5USS4KKworLlNIICLWVkVSU8RUVE5JTkciCitQZXRlciBLcmVmdGluZyBvY2ggRGFuaWVsIE55bGFuZGVyLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vc3YvZHBrZy4xIGIvZHBrZy0xLjE2LjEuMS9tYW4vc3YvZHBrZy4xCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjFjYThlZDIKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9zdi9kcGtnLjEKQEAgLTAsMCArMSw3NDkgQEAKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlRIIGRwa2cgMSAyMDExXC0wOFwtMTQgRGViaWFucHJvamVrdGV0IERwa2dcLXN2aXRlbgorLlNIIE5BTU4KK2Rwa2cgXC0gZW4gbWVsbGFubml25XBha2V0aGFudGVyYXJlIGb2ciBEZWJpYW4KKy4KKy5TSCBTWU5PUFMKK1xmQmRwa2dcZlAgW1xmSWZsYWdnYVxmUC4uLl0gXGZJ5XRn5HJkXGZQCisuCisuU0ggVkFSTklORworTWFudWFsZW4g5HIgYXZzZWRkIGb2ciBhbnbkbmRhcmUgc29tIHZpbGwgZuUgZW4gbWVyIGRldGFsamVyYWQgZvZyc3TlZWxzZQorZvZyIFxmQmRwa2dcZlBzIGtvbW1hbmRvcmFkc2ZsYWdnb3Igb2NoIHBha2V0dGlsbHN05W5kIORuIHZhZCBzb20gYmVy5HR0YXMgbWVkCitcZkJkcGtnIFwtXC1oZWxwXGZQLgorCitEZW4gYvZyIFxmSWludGVcZlAgYW525G5kYXMgYXYgcGFrZXRhbnN2YXJpZ2Egc29tIHZpbGwgbORyYSBzaWcgaHVyIFxmQmRwa2dcZlAKK2tvbW1lciBhdHQgaW5zdGFsbGVyYSBkZXJhcyBwYWtldC4gQmVza3Jpdm5pbmdlbiD2dmVyIHZhZCBcZkJkcGtnXGZQIGf2ciBu5HIKK3Bha2V0IGluc3RhbGxlcmFzIG9jaCB0YXMgYm9ydCDkciBzcGVjaWVsbHQgb3RpbGxy5GNrbGlnYS4KKy4KKy5TSCBCRVNLUklWTklORworXGZCZHBrZ1xmUCDkciBldHQgdmVya3R5ZyBm9nIgYXR0IGluc3RhbGxlcmEsIGJ5Z2dhLCB0YSBib3J0IG9jaCBoYW50ZXJhCitEZWJpYW5wYWtldC4gRGV0IHByaW3kcmEgb2NoIG1lciBhbnbkbmRhcnbkbmxpZ2Egc2thbGV0IHJ1bnQgXGZCZHBrZ1xmUCDkcgorXGZCYXB0aXR1ZGVcZlAoMSkuIFxmQmRwa2dcZlAga29udHJvbGxlcmFzIGhlbHQgb2NoIGjlbGxldCB2aWEKK2tvbW1hbmRvcmFkc3BhcmFtZXRyYXIsIHZpbGthIGJlc3TlciBhdiBleGFrdCBlbiDldGfkcmQgb2NoIG5vbGwgZWxsZXIgZmxlcgorZmxhZ2dvci4gxXRn5HJkc3BhcmFtZXRlcm4gdGFsYXIgb20gZvZyIGRwa2cgdmFkIHNvbSBza2FsbCBn9nJhcywgb2NoCitmbGFnZ29ybmEgc3R5ciBw5SB2aWxrZXQgc+R0dCDldGfkcmRlbiBza2FsbCB1dGb2cmFzLgorCitcZkJkcGtnXGZQIGthbiBvY2tz5SBhbnbkbmRhcyBzb20gZXR0IHNrYWwgcnVudCBcZkJkcGtnXC1kZWJcZlAoMSkgb2NoCitcZkJkcGtnXC1xdWVyeVxmUCgxKS4gRW4gZvZydGVja25pbmcg9nZlciB0aWxsZ+RuZ2xpZ2Eg5XRn5HJkZXIgYmVza3JpdnMgbmVkYW4gaQorc3R5Y2tldCBcZkLFVEfEUkRFUlxmUC4gT20gXGZCZHBrZ1xmUCB1cHB05GNrZXIgZW4gc+VkYW4g5XRn5HJkIGFucm9wYXMgYmFyYQorXGZCZHBrZ1wtZHBrZ1xmUCBlbGxlciBcZkJkcGtnXC1xdWVyeVxmUCBtZWQgZGUgZ2l2bmEgZmxhZ2dvcm5hLCBtZW4gaW5nYSBzcGVjaWZpa2EKK2ZsYWdnb3Igc+RuZHMgZGlyZWt0IHRpbGwgZGVtLCBm9nIgYXR0IGFuduRuZGEgc+VkYW5hIGZsYWdnb3IgbeVzdGUKK2Jha2dydW5kc3Byb2dyYW1tZW4gYW5yb3BhcyBkaXJla3QuCisuCisuU0ggIklORk9STUFUSU9OIE9NIFBBS0VUIgorXGZCZHBrZ1xmUCB1cHBy5HR0aOVsbGVyIHZpc3MgYW525G5kYmFyIGluZm9ybWF0aW9uIG9tIHRpbGxn5G5nbGlnYQorcGFrZXQuIEluZm9ybWF0aW9uZW4gZGVsYXMgaW4gaSB0cmUga2xhc3NlcjogXGZCdGlsbHN05W5kXGZQLAorXGZCbWFya2VyaW5nc3RpbGxzdOVuZFxmUCBvY2ggXGZCZmxhZ2dvclxmUC4gRGVzc2EgduRyZGVuIORyIGF2c2VkZGEgYXR0CitodXZ1ZHNha2xpZ2VuIORuZHJhcyB2aWEgXGZCZHNlbGVjdFxmUC4KKy5TUyBQQUtFVFRJTExTVMVORAorLlRQIAorXGZCZWogaW5zdGFsbGVyYXRcZlAKK1Bha2V0ZXQg5HIgaW50ZSBpbnN0YWxsZXJhdCBw5SBkaXR0IHN5c3RlbS4KKy5UUCAKK1xmQmtvbmZpZ3VyYXRpb25zZmlsZXJcZlAKK0VuZGFzdCBrb25maWd1cmF0aW9uc2ZpbGVybmEgZvZyIHBha2V0ZXQgZmlubnMgcOUgc3lzdGVtZXQuCisuVFAgCitcZkJoYWx2dCBpbnN0YWxsZXJhdFxmUAorSW5zdGFsbGF0aW9uZW4gYXYgcGFrZXRldCBoYXIgcOVi9nJqYXRzLCBtZW4gYXYgbuVnb24gb3JzYWsgaW50ZSBzbHV0ZvZydHMuCisuVFAgCitcZkJ1cHBhY2thdFxmUAorUGFrZXRldCDkciB1cHBhY2thdCwgbWVuIGludGUga29uZmlndXJlcmF0LgorLlRQIAorXGZCaGFsdnQga29uZmlndXJlcmF0XGZQCitQYWtldGV0IORyIHVwcGFja2F0IG9jaCBrb25maWd1cmF0aW9uZW4gaGFyIHDlYvZyamF0cywgbWVuIGF2IG7lZ29uIG9yc2FrCitpbnRlIHNsdXRm9nJ0cy4KKy5UUCAKK1xmQnbkbnRhciBw5SB1dGz2c2FyZVxmUAorUGFrZXRldCB25G50YXIgcOUgaGFudGVyaW5nIGF2IHV0bPZzYXJlIGF2IGV0dCBhbm5hdCBwYWtldC4KKy5UUCAKK1xmQnV0bPZzYXJlIHbkbnRhclxmUAorUGFrZXRldCBoYXIgdXRs9nN0cy4KKy5UUCAKK1xmQmluc3RhbGxlcmF0XGZQCitQYWtldGV0IORyIHVwcGFja2F0IG9jaCBrb3JyZWt0IGluc3TkbGx0LgorLlNTICJNQVJLRVJJTkdTVElMTFNUxU5EIEbWUiBQQUtFVCIKKy5UUCAKK1xmQmluc3RhbGxlcmFcZlAKK1Bha2V0ZXQg5HIgbWFya2VyYXQgZvZyIGluc3RhbGxhdGlvbi4KKy5UUCAKK1xmQmjlbGxcZlAKK0V0dCBwYWtldCBzb20g5HIgbWFya2VyYXQgbWVkIFxmQmjlbGxcZlAgaGFudGVyYXMgaW50ZSBhdiBcZkJkcGtnXGZQIHPldmlkYSBpbnRlCitkZXQgZnJhbXR2aW5nYXMgbWVkIGZsYWdnYW4gXGZCXC1cLWZvcmNlXC1ob2xkXGZQLgorLlRQIAorXGZCdGEgYm9ydFxmUAorUGFrZXRldCDkciBtYXJrZXJhdCBm9nIgYXZpbnN0YWxsYXRpb24gKGR2cy4gdmkgdmlsbCB0YSBib3J0IGFsbGEgZmlsZXIKK2b2cnV0b20ga29uZmlndXJhdGlvbnNmaWxlcm5hKS4KKy5UUCAKK1xmQnJlbnNhXGZQCitQYWtldGV0IORyIG1hcmtlcmF0IGb2ciByZW5zbmluZyAoZHZzLiB2aSB2aWxsIHRhIGJvcnQgYWxsdGluZyBmcuVuCitzeXN0ZW1rYXRhbG9nZXIsIOR2ZW4ga29uZmlndXJhdGlvbnNmaWxlcikuCisuU1MgUEFLRVRGTEFHR09SCisuVFAgCitcZkJvbWluc3RhbGxhdGlvbiBrcuR2c1xmUAorRXR0IHBha2V0IG1hcmtlcmF0IFxmQm9taW5zdGFsbGF0aW9uIGty5HZzXGZQIORyIHRyYXNpZ3Qgb2NoIGty5HZlcgorb21pbnN0YWxsYXRpb24uIERlc3NhIHBha2V0IGthbiBpbnRlIHRhcyBib3J0LCBz5XZpZGEgaW50ZSBkZXQgZnJhbXR2aW5nYXMKK21lZCBmbGFnZ2FuIFxmQlwtXC1mb3JjZVwtcmVtb3ZlXC1yZWluc3RyZXFcZlAuCisuCisuU0ggxVRHxFJERVIKKy5UUCAKK1xmQlwtaVxmUCwgXGZCXC1cLWluc3RhbGxcZlAgXGZJcGFrZXRmaWxcZlAuLi4KK0luc3RhbGxlcmEgcGFrZXRldC4gIE9tIGZsYWdnYW4gXGZCXC1cLXJlY3Vyc2l2ZVxmUCBlbGxlciBcZkJcLVJcZlAgYW5nZXMgbeVzdGUKK1xmSXBha2V0ZmlsXGZQIGlzdORsbGV0IHZhcmEgZW4ga2F0YWxvZy4KKworSW5zdGFsbGF0aW9uZW4gYmVzdOVyIGF2IGb2bGphbmRlIHN0ZWc6CisuYnIKKworXGZCMS5cZlAgRXh0cmFoZXJhIHN0eXJmaWxlcm5hIHVyIHBha2V0ZXQuCisuYnIKKworXGZCMi5cZlAgT20gZW4gYW5uYW4gdmVyc2lvbiBhdiBzYW1tYSBwYWtldCByZWRhbiBmYW5ucyBpbnN0YWxsZXJhdCB2aWQKK255aW5zdGFsbGF0aW9uZW4gZXhla3ZlcmFzIFxmSXByZXJtXGZQXC1za3JpcHRldCBm9nIgZGV0IGdhbWxhIHBha2V0ZXQuCisuYnIKKworXGZCMy5cZlAgS/ZyIFxmSXByZWluc3RcZlBcLXNrcmlwdGV0LCBvbSBldHQgc+VkYW50IG1lZGb2bGplciBwYWtldGV0LgorLmJyCisKK1xmQjQuXGZQIFBhY2thIHVwcCBkZSBueWEgZmlsZXJuYSBvY2ggc+RrZXJoZXRza29waWVyYSBzYW10aWRpZ3QgZGUgZ2FtbGEKK2ZpbGVybmEgc+UgYXR0IGRlIGthbiDldGVyc3TkbGxhcyBvbSBu5WdvbnRpbmcgZ+VyIGZlbC4KKy5icgorCitcZkI1LlxmUCBPbSBlbiBhbm5hbiB2ZXJzaW9uIGF2IHNhbW1hIHBha2V0IHJlZGFuIGZhbm5zIGluc3RhbGxlcmF0IHZpZAorbnlpbnN0YWxsYXRpb25lbiBleGVrdmVyYXMgXGZJcG9zdHJtXGZQXC1za3JpcHRldCBm9nIgZGV0IGdhbWxhCitwYWtldGV0LiBPYnNlcnZlcmEgYXR0IHNrcmlwdGV0IGV4ZWt2ZXJhcyBlZnRlciBcZklwcmVpbnN0XGZQIGb2ciBkZXQgbnlhCitwYWtldGV0IGVmdGVyc29tIGRlIG55YSBmaWxlcm5hIHNrcml2cyBzYW10aWRpZ3Qgc29tIGRlIGdhbWxhIHRhcyBib3J0LgorLmJyCisKK1xmQjYuXGZQIEtvbmZpZ3VyZXJhIHBha2V0ZXQuIFNlIFxmQlwtXC1jb25maWd1cmVcZlAgZvZyIGRldGFsamVyYWQgaW5mb3JtYXRpb24gb20KK2h1ciBtYW4gZ/ZyIGRldC4KKy5UUCAKK1xmQlwtXC11bnBhY2sgXGZQXGZJcGFrZXRmaWxcZlAgLi4uCitQYWNrYSB1cHAgcGFrZXRldCwgbWVuIGtvbmZpZ3VyZXJhIGRldCBpbnRlLiBPbSBmbGFnZ2FuIFxmQlwtXC1yZWN1cnNpdmVcZlAgZWxsZXIKK1xmQlwtUlxmUCBhbmdlcyBt5XN0ZSBcZklwYWtldGZpbFxmUCBpc3TkbGxldCB2YXJhIGVuIGthdGFsb2cuCisuVFAgCitcZkJcLVwtY29uZmlndXJlIFxmUFxmSXBha2V0XGZQLi4ufFxmQlwtYVxmUHxcZkJcLVwtcGVuZGluZ1xmUAorS29uZmlndXJlcmEgZXR0IHBha2V0IHNvbSBoYXIgcGFja2F0cyB1cHAgbWVuIORubnUgaW50ZSBrb25maWd1cmVyYXRzLiBPbQorXGZCXC1hXGZQIGVsbGVyIFxmQlwtXC1wZW5kaW5nXGZQIGFuZ2VzIGlzdORsbGV0IGb2ciBcZklwYWtldFxmUCBrb25maWd1cmVyYXMgYWxsYSBwYWtldAorc29tIGhhciBwYWNrYXRzIHVwcCBtZW4g5G5udSBpbnRlIGtvbmZpZ3VyZXJhdHMuCisKK0b2ciBhdHQgb21rb25maWd1cmVyYSBldHQgcGFrZXQgc29tIHJlZGFuIGhhciBrb25maWd1cmVyYXRzIGthbiBkdSBpc3TkbGxldAorYW525G5kYSBrb21tYW5kb3QgXGZCZHBrZ1wtcmVjb25maWd1cmUoOClcZlAuCisKK0tvbmZpZ3VyZXJpbmcgYmVzdOVyIGF2IGb2bGphbmRlIHN0ZWc6CisuYnIKKworXGZCMS5cZlAgUGFja2EgdXBwIGtvbmZpZ3VyYXRpb25zZmlsZXJuYSBvY2ggc+RrZXJoZXRza29waWVyYSBzYW10aWRpZ3QgZGUKK2dhbWxhIGtvbmZpZ3VyYXRpb25zZmlsZXJuYSBz5SBhdHQgZGUga2FuIOV0ZXJzdORsbGFzIG9tIG7lZ29udGluZyBn5XIgZmVsLgorLmJyCisKK1xmQjIuXGZQIEv2ciBcZklwb3N0aW5zdFxmUFwtc2tyaXB0ZXQsIG9tIGV0dCBz5WRhbnQgZmlubnMgaSBwYWtldGV0LgorLlRQIAorXGZCXC1cLXRyaWdnZXJzXC1vbmx5XGZQIFxmSXBha2V0XGZQLi4ufFxmQlwtYVxmUHxcZkJcLVwtcGVuZGluZ1xmUAorSGFudGVyYXIgYmFyYSB1dGz2c2FyZS4gQWxsYSBhdnZha3RhbmRlIHV0bPZzYXJlIGtvbW1lciBhdHQgaGFudGVyYXMuIE9tCitwYWtldG5hbW4gYW5nZXMga29tbWVyIGVuZGFzdCBkZXNzYSBwYWtldHMgdXRs9nNhcmUgYXR0IGhhbnRlcmFzLCBwcmVjaXMgZW4KK2flbmcsIG9tIG72ZHbkbmRpZ3QuIE9tIGR1IGFuduRuZGVyIGRlbm5hIGZsYWdnYSBrYW4gZGV0IGjkbmRhIGF0dCBwYWtldAoraGFtbmFyIGkgZmVsYWt0aWdhIFxmQnbkbnRhciBw5SB1dGz2c2FyZVxmUFwtIG9jaCBcZkJ1dGz2c2FyZQorduRudGFyXGZQXC10aWxsc3TlbmQuIERldHRhIGthbiBy5HR0YXMgc2VuYXJlIGdlbm9tIGF0dCBr9nJhOiBcZkJkcGtnCitcLVwtY29uZmlndXJlIFwtXC1wZW5kaW5nXGZQLgorLlRQIAorXGZCXC1yXGZQLCBcZkJcLVwtcmVtb3ZlXGZQLCBcZkJcLVBcZlAsIFxmQlwtXC1wdXJnZSBcZlBcZklwYWtldFxmUC4uLnxcZkJcLWFcZlB8XGZCXC1cLXBlbmRpbmdcZlAKK1RhIGJvcnQgZXR0IGluc3RhbGxlcmF0IHBha2V0LiBcZkJcLXJcZlAgZWxsZXIgXGZCXC1cLXJlbW92ZVxmUCB0YXIgYm9ydCBhbGx0aW5nCitm9nJ1dG9tIGtvbmZpZ3VyYXRpb25zZmlsZXIsIHZpbGtldCBn9nIgYXR0IGR1IGthbiB1bmR2aWthIGF0dCBrb25maWd1cmVyYQorb20gcGFrZXRldCBvbSBkdSBzZW5hcmUgaW5zdGFsbGVyYXIgb20gZGV0LiAoS29uZmlndXJhdGlvbnNmaWxlciDkciBkZSBmaWxlcgorc29tIGxpc3RhcyBpIHN0eXJmaWxlbiBcZklkZWJpYW4vY29uZmZpbGVzXGZQKS4gXGZCXC1QXGZQIGVsbGVyIFxmQlwtXC1wdXJnZVxmUCB0YXIgYm9ydAorYWxsdGluZywgaW5rbHVzaXZlIGtvbmZpZ3VyYXRpb25zZmlsZXIuIE9tIFxmQlwtYVxmUCBlbGxlciBcZkJcLVwtcGVuZGluZ1xmUCBhbmdlcworaXN05GxsZXQgZvZyIGV0dCBwYWtldG5hbW4ga29tbWVyIGFsbGEgaW5zdGFsbGVyYWRlIHVwcGFja2FkZSBwYWtldCBzb20g5HIKK21hcmtlcmFkZSBhdHQgdGFzIGJvcnQgZWxsZXIgcmVuc2FzIGkgZmlsZW4gXGZJL3Zhci9saWIvZHBrZy9zdGF0dXNcZlAgYXR0IHRhcworYm9ydCByZXNwZWt0aXZlIHJlbnNhcy4gT2JzZXJ2ZXJhOiBmZXQg5HIgbfZqbGlndCBhdHQgXGZCZHBrZ1xmUCBpbnRlIGvkbm5lcgordGlsbCB2aXNzYSBrb25maWd1cmF0aW9uc2ZpbGVyIHDlIGdydW5kIGF2IGF0dCBkZSBza2FwYXMgb2NoIGhhbnRlcmFzCitzZXBhcmF0IHZpYSBrb25maWd1cmF0aW9uc3NrcmlwdC4gSSBz5SBmYWxsIGtvbW1lciBpbnRlIFxmQmRwa2dcZlAgc2rkbHZ0IHRhCitib3J0IGRlbSwgdXRhbiBwYWtldGV0cyBcZklwb3N0cm1cZlBcLXNrcmlwdCAoc29tIGFucm9wYXMgYXYgXGZCZHBrZ1xmUCkgbeVzdGUgdGEKK2hhbmQgb20gYXR0IGRlIHRhcyBib3J0IG7kciBwYWtldGV0IHRhcyBib3J0IG1lZCBcZkJcLVwtcHVyZ2VcZlAuIERldHRhIGfkbGxlcgorbmF0dXJsaWd0dmlzIGVuZGFzdCBm9nIgZmlsZXIgaSBzeXN0ZW1rYXRhbG9nZXJuYSwgaW50ZSBrb25maWd1cmF0aW9uc2ZpbGVyCitzb20gc2tyaXZzIGkgZW5zdGFrYSBhbnbkbmRhcmVzIGhlbWthdGFsb2dlci4KKworQm9ydHRhZ25pbmcgYXYgZXR0IHBha2V0IGJlc3TlciBhdiBm9mxqYW5kZSBzdGVnOgorLmJyCisKK1xmQjEuXGZQIEv2ciBcZklwcmVybVxmUFwtc2tyaXB0ZXQKKy5icgorCitcZkIyLlxmUCBUYSBib3J0IGRlIGluc3RhbGxlcmFkZSBmaWxlcm5hCisuYnIKKworXGZCMy5cZlAgS/ZyIFxmSXBvc3RybVxmUFwtc2tyaXB0ZXQKKy5icgorLlRQIAorXGZCXC1cLXVwZGF0ZVwtYXZhaWxcZlAsIFxmQlwtXC1tZXJnZVwtYXZhaWxcZlAgXGZJUGFja2FnZXNcLWZpbFxmUAorVXBwZGF0ZXJhIFxmQmRwa2dcZlBzIG9jaCBcZkJkc2VsZWN0XGZQcyBsaXN0YSD2dmVyIHZpbGthIHBha2V0IHNvbSBmaW5ucwordGlsbGfkbmdsaWdhLiBNZWQgXGZCXC1cLW1lcmdlXC1hdmFpbFxmUCBrb21iaW5lcmFzIGRlbiBnYW1sYSBpbmZvcm1hdGlvbmVuIG1lZAoraW5mb3JtYXRpb25lbiBmcuVuIFxmSVBhY2thZ2VzXC1maWxlblxmUC4gTWVkIFxmQlwtXC11cGRhdGVcLWF2YWlsXGZQIGVyc+R0dHMgZGVuCitnYW1sYSBpbmZvcm1hdGlvbmVuIG1lZCBpbmZvcm1hdGlvbmVuIGZy5W4KK1xmSVBhY2thZ2VzXC1maWxlblxmUC4gXGZJUGFja2FnZXNcLWZpbGVybmFcZlAgc29tIG1lZGb2bGplciBEZWJpYW4gaGV0ZXIgaGVsdAorZW5rZWx0IFxmSVBhY2thZ2VzXGZQLiBcZkJkcGtnXGZQIGJlaOVsbGVyIHNpbiBsaXN0YSD2dmVyIHRpbGxn5G5nbGlnYSBwYWtldCBpCitcZkkvdmFyL2xpYi9kcGtnL2F2YWlsYWJsZVxmUC4KKworRXR0IGzkdHRhcmUgZW5rZWxrb21tYW5kbyBm9nIgYXR0IGjkbXRhIG9jaCB1cHBkYXRlciBcZklhdmFpbGFibGVcZlBcLWZpbGVuIORyCitcZkJkc2VsZWN0IHVwZGF0ZVxmUC4gT2JzZXJ2ZXJhIGF0dCBkZW4gaORyIGZpbGVuIGkgaHV2dWRzYWsg5HIgb272ZGlnIG9tIGR1CithbnbkbmRlciBldHQgQVBUXC1iYXNlcmF0IHNrYWwgaXN05GxsZXQgZvZyIFxmQmRzZWxlY3RcZlA6IEFQVCBoYXIgZXR0IGVnZXQKK3N5c3RlbSBm9nIgYXR0IGjlbGxhIHJlZGEgcOUgdGlsbGfkbmdsaWdhIHBha2V0LgorLlRQIAorXGZCXC1BXGZQLCBcZkJcLVwtcmVjb3JkXC1hdmFpbFxmUCBcZklwYWtldGZpbFxmUCAuLi4KK1VwcGRhdGVyYSBcZkJkcGtnXGZQcyBvY2ggXGZCZHNlbGVjdFxmUHMgbGlzdGEg9nZlciB2aWxrYSBwYWtldCBzb20gZmlubnMKK3RpbGxn5G5nbGlnYSBtZWQgaW5mb3JtYXRpb24gZnLlbiBwYWtldGV0IFxmSXBha2V0ZmlsXGZQLiBPbSBmbGFnZ2FuCitcZkJcLVwtcmVjdXJzaXZlXGZQIGVsbGVyIFxmQlwtUlxmUCBhbmdlcyBt5XN0ZSBcZklwYWtldGZpbFxmUCBpc3TkbGxldCB2YXJhIGVuIGthdGFsb2cuCisuVFAgCitcZkJcLVwtZm9yZ2V0XC1vbGRcLXVuYXZhaWxcZlAKK0VuIG51bWVyYSBcZkJm9nLlbGRyYWRcZlAgZmxhZ2dhIHNvbSBpbnRlIHV0ZvZyIG7lZ29udGluZywgZOUgXGZCZHBrZ1xmUAorYXV0b21hdGlza3QgZ2z2bW1lciBlaiBpbnN0YWxsZXJhZGUgb2NoIGVqIHRpbGxn5G5nbGlnYSBwYWtldC4KKy5UUCAKK1xmQlwtXC1jbGVhclwtYXZhaWxcZlAKK1JhZGVyYSBleGlzdGVyYW5kZSBpbmZvcm1hdGlvbiBvbSB2aWxrYSBwYWtldCBzb20g5HIgdGlsbGfkbmdsaWdhLgorLlRQIAorIFxmQlwtQ1xmUCwgXGZCXC1cLWF1ZGl0XGZQCitT9mtlciBlZnRlciBwYWtldCBzb20gZW5kYXN0IGluc3RhbGxlcmF0cyBkZWx2aXMgcOUgZGl0dCBzeXN0ZW0uIFxmQmRwa2dcZlAKK2tvbW1lciBhdHQgZvZyZXNs5SB2YWQgc29tIGJlaPZ2ZXIgZ/ZyYXMgZvZyIGF0dCBm5SBkZW0gYXR0IGZ1bmdlcmEuCisuVFAgCitcZkJcLVwtZ2V0XC1zZWxlY3Rpb25zXGZQIFtcZklwYWtldG5hbW5zbfZuc3RlclxmUC4uLl0KK0jkbXRhIGVuIGxpc3RhIPZ2ZXIgcGFrZXR2YWwgb2NoIHNrcml2IGRlbiB0aWxsIHN0YW5kYXJkIHV0LiBQYWtldCBzb20gaW50ZQor5HIgaW5zdGFsbGVyYXRzIChkdnMuIGRlIHNvbSB0aWRpZ2FyZSBoZWx0IGhhciB0YWdpdHMgYm9ydCkga29tbWVyIGludGUgYXR0Cit2aXNhcyBvbSBpbnRlIGV0dCBt9m5zdGVyIGFuZ2VzLgorLlRQIAorXGZCXC1cLXNldFwtc2VsZWN0aW9uc1xmUAorU+R0dCBwYWtldHZhbHNsaXN0YW4gbWVkIGRlbiBmaWwgc29tIGzkc2VzIGZy5W4gc3RhbmRhcmQgaW4uIEZpbGVuIG3lc3RlCit2YXJhIHDlIGZvcm1hdGV0ICJcZklwYWtldFxmUCBcZklzdGF0dXNcZlAiLCBk5HIgc3RhdHVzIORyIGVuIGF2IFxmQmluc3RhbGxcZlAsCitcZkJob2xkXGZQLCBcZkJkZWluc3RhbGxcZlAgZWxsZXIgXGZCcHVyZ2VcZlAuIFRvbXJhZGVyIG9jaCBrb21tZW50YXJzcmFkZXIgc29tCiti9nJqYXIgbWVkICIjIiDkciBvY2tz5SB0aWxs5XRuYS4KKy5UUCAKK1xmQlwtXC1jbGVhclwtc2VsZWN0aW9uc1xmUAorU+R0dCBkZXQg9m5za2FkZSB0aWxsc3TlbmRldGUgZvZyIHZhcmplIGlja2VcLWdydW5kbORnZ2FuZGUgcGFrZXQgdGlsbAorYXZpbnN0YWxsZXJhLiBEZXR0YSDkciBhdnNldHQgYXR0IGFuduRuZGFzIGRpcmVrdCBm9nJlIFwtXC1zZXRcLXNlbGVjdGlvbnMsIGb2cgorYXR0IGF2aW5zdGFsbGVyYSBhbGxhIHBha2V0IHNvbSBpbnRlIGZpbm5zIG1lZCBpIGxpc3RhbiBzb20gYW5nZXMgYXYKK1wtXC1zZXRcLXNlbGVjdGlvbnMuCisuVFAgCitcZkJcLVwteWV0XC10b1wtdW5wYWNrXGZQCitT9mtlciBlZnRlciBwYWtldCBzb20gbWFya2VyYXRzIGb2ciBpbnN0YWxsYXRpb24gbWVuIHNvbSBhdiBu5WdvbiBhbmxlZG5pbmcKK+RubnUgaW50ZSBoYXIgaW5zdGFsbGVyYXRzLgorLlRQIAorLlRQIAorXGZCXC1cLXByaW50XC1hcmNoaXRlY3R1cmVcZlAKK1Zpc2EgYXJraXRla3R1ciBm9nIgcGFrZXRlbiBcZkJkcGtnXGZQIGluc3RhbGxlcmFyICh0aWxsIGV4ZW1wZWwgImkzODYiKS4KKy5UUCAKK1xmQlwtXC1jb21wYXJlXC12ZXJzaW9ucyBcZlBcZkl2ZXIxIG9wIHZlcjJcZlAKK0rkbWb2ciB2ZXJzaW9uc251bW1lciwgZORyIFxmSW9wXGZQIORyIGVuIGJpbuRyIG9wZXJhdG9yLiBcZkJkcGtnXGZQIHJldHVybmVyYXIKK2ZyYW1n5W5nIChub2xsKSBvbSBkZXQgYW5naXZuYSB25HJkZXQgdXBwZnlsbHMsIG9jaCBtaXNzbHlja2FuZGUgKGlja2VcLW5vbGwpCitpIGFubmF0IGZhbGwuIERldCBmaW5ucyB0duUgZ3J1cHBlciBvcGVyYXRvcmVyLCB2aWxrYSBlbmRhc3Qgc2tpbGplciBzaWcgaQoraHVyIGRlIGhhbnRlcmFyIG7kciBcZkl2ZXIxXGZQIGVsbGVyIFxmSXZlcjJcZlAg5HIgdG9tLiBEZXNzYSBoYW50ZXJhciB0b20gdmVyc2lvbgorc29tIG9tIGRlbiDkciB0aWRpZ2FyZSDkbiBhbGxhIGFuZHJhIHZlcnNpb25lcjogXGZCbHQgbGUgZXEgbmUgZ2UgZ3RcZlAuIERlc3NhCitoYW50ZXJhciB0b20gdmVyc2lvbiBzb20gb20gZGVuIORyIHNlbmFyZSDkbiBhbGxhIGFuZHJhIHZlcnNpb25lcjogXGZCbHRcLW5sCitsZVwtbmwgZ2VcLW5sIGd0XC1ubFxmUC4gRGVzc2EgdGlsbGhhbmRhaOVsbHMgZW5kYXN0IGb2ciBrb21wYXRpYmlsaXRldCBtZWQKK3N0eXJmaWxzc3ludGF4ZW46IFxmQjwgPDwgPD0gPSA+PSA+PiA+XGZQLgorLlRQIAorXGZCXC1cLWNvbW1hbmRcLWZkIFxmUFxmSW5cZlAKK0zkc2VyIGVuIGb2bGpkIGF2IGtvbW1hbmRvbiBmcuVuIGluZGF0YWZpbGhhbmR0YWcgXGZJblxmUC4gT2JzZXJ2ZXJhOgoreXR0ZXJsaWdhcmUgZmxhZ2dvciBzb20gc+R0dHMgcOUga29tbWFuZG9yYWRlbiwgb2NoIGdlbm9tIGZpbGhhbmR0YWdldCwKK+V0ZXJzdORsbHMgaW50ZSBm9nIga29tbWFuZG9uIHNvbSBr9nJzIGkgZW4gZvZsamQgdW5kZXIgc2FtbWEga/ZybmluZy4KKy5UUCAKK1xmQlwtXC1oZWxwXGZQCitWaXNhciBlbiBrb3J0ZmF0dGFkIGhq5GxwdGV4dC4KKy5UUCAKK1xmQlwtXC1mb3JjZVwtaGVscFxmUAorR2V0IGhq5GxwIG9tIFxmQlwtXC1mb3JjZVwtXGZQXGZJbuVudGluZ1xmUFwtZmxhZ2dvcm5hLgorLlRQIAorXGZCXC1EaFxmUCwgXGZCXC1cLWRlYnVnPWhlbHBcZlAKK0dlciBoauRscCBvbSBmZWxz9mtuaW5nc2ZsYWdnb3JuYS4KKy5UUCAKK1xmQlwtXC12ZXJzaW9uXGZQCitWaXNhciBcZkJkcGtnXGZQcyB2ZXJzaW9uc2luZm9ybWF0aW9uLgorLlRQIAorXGZCZHBrZ1wtZGViXC3ldGfkcmRlclxmUAorU2UgXGZCZHBrZ1wtZGViXGZQKDEpIGb2ciB5dHRlcmxpZ2FyZSBpbmZvcm1hdGlvbiBvbSBm9mxqYW5kZSDldGfkcmRlcjoKKworLm5mCitcZkJcLWJcZlAsIFxmQlwtXC1idWlsZFxmUCBcZklrYXRhbG9nXGZQIFtcZklhcmtpdlxmUHxcZklmaWxuYW1uXGZQXQorICAgIEJ5Z2cgZXR0IGRlYlwtcGFrZXQuCitcZkJcLWNcZlAsIFxmQlwtXC1jb250ZW50c1xmUCBcZklhcmtpdlxmUAorICAgIFZpc2FyIGlubmVo5WxsZXQgaSBldHQgZGViXC1wYWtldC4KK1xmQlwtZVxmUCwgXGZCXC1cLWNvbnRyb2xcZlAgXGZJZmlsbmFtblxmUCBbXGZJa2F0YWxvZ1xmUF0KKyAgICBFeHRyYWhlcmFyIHN0eXJpbmZvcm1hdGlvbiBmcuVuIGV0dCBwYWtldC4KK1xmQlwteFxmUCwgXGZCXC1cLWV4dHJhY3RcZlAgXGZJYXJraXZrYXRhbG9nXGZQCisgICAgRXh0cmFoZXJhciBmaWxlcm5hIGZy5W4gZXR0IHBha2V0LgorXGZCXC1YXGZQLCBcZkJcLVwtdmV4dHJhY3RcZlAgXGZJYXJraXZrYXRhbG9nXGZQCisgICAgRXh0cmFoZXJhciBvY2ggdmlzYXIgZmlsbmFtbmVuIGkgZXR0IHBha2V0LgorXGZCXC1mXGZQLCBcZkJcLVwtZmllbGRcZlAgIFxmSWFya2l2XGZQIFtcZkljb250cm9sXC1m5Gx0XGZQXSAuLi4KKyAgICBWaXNhciBm5Gx0IGZy5W4gcGFrZXRldHMgc3R5cmZpbCAoY29udHJvbCkuCitcZkJcLVwtZnN5c1wtdGFyZmlsZVxmUCBcZklhcmtpdlxmUAorICAgIFZpc2FyIGZpbHN5c3RlbXNcLXRhcmZpbGVuIGkgRGViaWFucGFrZXRldC4KK1xmQlwtSVxmUCB8IFxmQlwtXC1pbmZvXGZQIFxmSWFya2l2XGZQIFtcZkljb250cm9sXC1maWxcZlBdCisgICAgVmlzYSBpbmZvcm1hdGlvbiBvbSBldHQgcGFrZXQuCisuZmkKKworLlRQIAorXGZCZHBrZ1wtcXVlcnlcLeV0Z+RyZGVyXGZQCitTZSBcZkJkcGtnXC1xdWVyeVxmUCgxKSBm9nIgeXR0ZXJsaWdhcmUgaW5mb3JtYXRpb24gb20gZvZsamFuZGUg5XRn5HJkZXI6CisKKy5uZgorCitcZkJcLWxcZlAsIFxmQlwtXC1saXN0XGZQIFxmSXBha2V0bmFtbnNt9m5zdGVyXGZQIC4uLgorICAgIExpc3RhIHBha2V0IHNvbSBtYXRjaGFyIGRldCBnaXZuYSBt9m5zdHJldC4KK1xmQlwtc1xmUCwgXGZCXC1cLXN0YXR1c1xmUCBcZklwYWtldG5hbW5cZlAgLi4uCisgICAgUmFwcG9ydGVyYSBzdGF0dXMgb20gZGV0IGFuZ2l2bmEgcGFrZXRldC4KK1xmQlwtTFxmUCwgXGZCXC1cLWxpc3RmaWxlc1xmUCBcZklwYWtldG5hbW5cZlAgLi4uCisgICAgTGlzdGEgZmlsZXIgc29tIGluc3RhbGxlcmF0cyBw5SBkaXR0IHN5c3RlbSBmcuVuIFxmSXBha2V0bmFtblxmUC4KK1xmQlwtU1xmUCwgXGZCXC1cLXNlYXJjaFxmUCBcZklmaWxuYW1uc3P2a232bnN0ZXJcZlAgLi4uCisgICAgU/ZrIGVmdGVyIGZpbG5hbW5ldCBibGFuZCBkZSBpbnN0YWxsZXJhZGUgcGFrZXRlbi4KK1xmQlwtcFxmUCwgXGZCXC1cLXByaW50XC1hdmFpbFxmUCBcZklwYWtldG5hbW5cZlAKKyAgICBWaXNhIGRldGFsamVyIG9tIFxmSXBha2V0bmFtblxmUCwgc29tIGkgXGZJL3Zhci9saWIvZHBrZy9hdmFpbGFibGUvXGZQLiAgICBEZSBzb20gYW525G5kZXIgQVBUXC1iYXNlcmFkZSBza2FsIGL2ciBpIHN05GxsZXQgYW525G5kYSAgICBcZkJhcHRcLWNhY2hlIHNob3dcZlAgXGZJcGFrZXRuYW1uXGZQLgorLmZpCisuCisuU0ggRkxBR0dPUgorQWxsYSBmbGFnZ29ybmEga2FuIGdlcyBi5WRlIHDlIGtvbW1hbmRvcmFkZW4gb2NoIGkgXGZCZHBrZ1xmUHMKK2tvbmZpZ3VyYXRpb25zZmlsIFxmSS9ldGMvZHBrZy9kcGtnLmNmZ1xmUCBlbGxlciBmaWxlcm5hIGkKK2tvbmZpZ3VyYXRpb25za2F0YWxvZ2VuIFxmSS9ldGMvZHBrZy9kcGtnLmNmZy5kL1xmUC4gRW4gcmFkIGkKK2tvbmZpZ3VyYXRpb25zZmlsZW4g5HIgYW50aW5nZW4gZW4gZmxhZ2dhIChwcmVjaXMgc2FtbWEgc29tIHDlCitrb21tYW5kb3JhZGVuLCBtZW4gdXRhbiBpbmxlZGFuZGUgYmluZGVzdHJlY2spIGVsbGVyIGVuIGtvbW1lbnRhciAob20gZGVuCiti9nJqYXIgbWVkIGV0dCBcZkIjXGZQKS4KKy5icgorLlRQIAorXGZCXC1cLWFib3J0XC1hZnRlcj1cZlBcZklhbnRhbFxmUAorU3TkbGxlciBpbiBlZnRlciBodXIgbeVuZ2EgZmVsIFxmQmRwa2dcZlAgc2thbGwgYXZicnl0YS4gRvZydmFsZXQg5HIgNTAuCisuVFAgCitcZkJcLUJcZlAsIFxmQlwtXC1hdXRvXC1kZWNvbmZpZ3VyZVxmUAorTuRyIGV0dCBwYWtldCB0YXMgYm9ydCDkciBkZXQgbfZqbGlndCBhdHQgZXR0IGFubmF0IHBha2V0IGJlcm9yIHDlIGRldAorYm9ydHRhZ25hIHBha2V0ZXQuIE9tIGR1IGFuZ2VyIGZsYWdnYW4ga29tbWVyIGRlIHBha2V0IHNvbSBiZXJvciBw5SBkZXQKK2JvcnR0YWduYSBwYWtldGV0IGF1dG9tYXRpc2t0IGF0dCBhdmtvbmZpZ3VyZXJhcy4KKy5UUCAKK1xmQlwtRFxmUFxmSW9rdGFsduRyZGVcZlBcZkIsIFwtXC1kZWJ1Zz1cZlBcZklva3RhbHbkcmRlXGZQCitBa3RpdmVyYXIgZmVsc/ZrbmluZy4gXGZJb2t0YWx25HJkZVxmUHQgc2thcGFzIGdlbm9tIGF0dCB1dGb2cmEgYml0dmlzIGxvZ2lzaworImVsbGVyIiBhdiBkZSD2bnNrYWRlIHbkcmRlbmEgZnLlbiBsaXN0YW4gbmVkYW4gKG9ic2VydmVyYSBhdHQgZGVzc2EgduRyZGVuCitrYW4g5G5kcmFzIGkgZnJhbXRpZGEgdmVyc2lvbmVyKS4gXGZCXC1EaFxmUCBlbGxlciBcZkJcLVwtZGVidWc9aGVscFxmUCB2aXNhciBkZXNzYQorZmVsc/ZrbmluZ3N25HJkZW4uCisKKyAgICBUYWwgICBCZXNrcml2bmluZworICAgICAgMSAgIEFsbG3kbnQgaGrkbHBzYW0gZvZybG9wcHNpbmZvcm1hdGlvbgorICAgICAgMiAgIEFucm9wIG9jaCBzdGF0dXMgZvZyIHV0dmVja2xhcnNrcmlwdAorICAgICAxMCAgIFV0ZGF0YSBm9nIgdmFyamUgZmlsIHNvbSBoYW50ZXJhcworICAgIDEwMCAgIE1hc3N2aXMgbWVkIHV0ZGF0YSBm9nIgdmFyamUgZmlsIHNvbSBoYW50ZXJhcworICAgICAyMCAgIFV0ZGF0YSBm9nIgdmFyamUga29uZmlndXJhdGlvbnNmaWwKKyAgICAyMDAgICBNYXNzdmlzIG1lZCB1dGRhdGEgZvZyIHZhcmplIGtvbmZpZ3VyYXRpb25zZmlsCisgICAgIDQwICAgQmVyb2VuZGVuIG9jaCBrb25mbGlrdGVyCisgICAgNDAwICAgTWFzc3ZpcyBhdiBiZXJvZW5kZVwtL2tvbmZsaWt0dXRkYXRhCisgIDEwMDAwICAgQWt0aXZlcmluZyBvY2ggaGFudGVyaW5nIGF2IHV0bPZzYXJlCisgIDIwMDAwICAgTWFzc3ZpcyBhdiB1dGRhdGEgb20gdXRs9nNhcmUKKyAgNDAwMDAgICBEdW1tYSBt5G5nZGVyIHV0ZGF0YSBvbSB1dGz2c2FyZQorICAgMTAwMCAgIE1hc3N2aXMgYXYgcGxhZGRlciBvbSBibC5hIGRwa2cvaW5mb1wta2F0YWxvZ2VuCisgICAyMDAwICAgS27kcHBhIG3kbmdkZXIgcGxhZGRlcgorLlRQIAorXGZCXC1cLWZvcmNlXC1cZlBcZklzYWtlclxmUCB8IFxmQlwtXC1ub1wtZm9yY2VcLVxmUFxmSXNha2VyXGZQIHwgXGZCXC1cLXJlZnVzZVwtXGZQXGZJc2FrZXJcZlAKKworVHZpbmdhIGVsbGVyIHbkZ3JhIChcZkJub1wtZm9yY2VcZlAgb2NoIFxmQnJlZnVzZVxmUCBiZXR5ZGVyIGRldHNhbW1hKSBhdHQgZ/ZyYQordmlzc2Egc2FrZXIuIFxmSXNha2VyXGZQIORyIGVuIGtvbW1hYXZncuRuc2FkIGxpc3RhIG1lZCBzYWtlciBzb20gYW5nZXMKK25lZGFuLiBcZkJcLVwtZm9yY2VcLWhlbHBcZlAgdmlzYXIgZW4gbGlzdGEgbWVkIGJlc2tyaXZuaW5nYXIuIFNha2VyIHNvbSBtYXJrZXJhcworbWVkICgqKSDkciB0dmluZ2FkZSBzb20gZvZydmFsLgorCitcZklWYXJuaW5nOiBEZXNzYSBmbGFnZ29yIORyIGh1dnVkc2FrbGlnZW4gYXZzZWRkYSBhdHQgZW5kYXN0IGFuduRuZGFzIGF2CitleHBlcnRlci4gT20gZHUgYW525G5kZXIgZGVtIHV0YW4gYXR0IGZ1bGx0IHV0IGb2cnN05SB2YWQgZGUgZ+VyIHV0IHDlIGthbgorZHUgZvZyc3T2cmEgZGluIHN5c3RlbWluc3RhbGxhdGlvbi5cZlAKKworXGZCYWxsXGZQOiBTbOVyIHDlIChlbGxlciBhdikgYWxsYSB0dmluZ2FuZGUgZmxhZ2dvci4KKworXGZCZG93bmdyYWRlXGZQKCopOiBJbnN0YWxsZXJhIGV0dCBwYWtldCDkdmVuIG9tIGVuIG55YXJlIHZlcnNpb24gcmVkYW4g5HIKK2luc3RhbGxlcmFkLgorCitcZklWYXJuaW5nOiBG9nIgbuRydmFyYW5kZSB1bmRlcnP2a2VyIGludGUgZHBrZyBiZXJvZW5kZW4gdmlkIG5lZGdyYWRlcmluZworb2NoIGtvbW1lciBk5HJm9nIgaW50ZSBhdHQgdmFybmEgZGlnIG9tIG5lZGdyYWRlcmluZ2VuIGJyeXRlciBldHQgYmVyb2VuZGUKK2b2ciBu5WdvdCBwYWtldC4gRGV0dGEga2FuIGhhIGFsbHZhcmxpZ2Egc2lkb2VmZmVrdGVyLCBnZW5vbSBhdHQgbmVkZ3JhZGVyYQorZ3J1bmRs5GdnYW5kZSBzeXN0ZW1rb21wb25lbnRlciBrYW4gZHUgcmlza2VyYSBhdHQgZ/ZyYSBoZWxhIHN5c3RlbWV0CitpbnN0YWJpbHQuIEFuduRuZCBtZWQgdGlsbGb2cnNpa3QuXGZQCisKK1xmQmNvbmZpZ3VyZVwtYW55XGZQOiBLb25maWd1cmVyYSDkdmVuIGFsbGEgdXBwYWNrYWRlIG1lbiBlaiBrb25maWd1cmVyYWRlIHBha2V0Citw5SB2aWxrYSBkZXQgYWt0dWVsbGEgcGFrZXRldCBiZXJvci4KKworXGZCaG9sZFxmUDogSGFudGVyYSDkdmVuICJo5WxsIlwtbWFya2VyYWRlIHBha2V0LgorCitcZkJyZW1vdmVcLXJlaW5zdHJlcVxmUDogVGEgYm9ydCBldHQgcGFrZXQg5HZlbiBvbSBkZXQg5HIgdHJhc2lndCBvY2ggbWFya2VyYXQKK2F0dCB2YXJhIGkgYmVob3YgYXYgb21pbnN0YWxsYXRpb24uIERldHRhIGthbiwgdGlsbCBleGVtcGVsLCBn9nJhIHPlIGF0dAorZGVsYXIgYXYgcGFrZXRldCBibGlyIGt2YXIgcOUgc3lzdGVtZXQsIG1lbiBnbPZtcyBib3J0IGF2IFxmQmRwa2dcZlAuCisKK1xmQnJlbW92ZVwtZXNzZW50aWFsXGZQOiBUYSBib3J0IHBha2V0ZXQg5HZlbiBvbSBkZXQgYW5zZXMgc29tIHZpa3RpZ3QKKyhlc3NlbnRpYWwpLiBWaWt0aWdhIHBha2V0IORyIGh1dnVkc2FrbGlnZW4gZGUgbWVzdCBncnVuZGzkZ2dhbmRlCitVbml4a29tbWFuZG9uYS4gT20gZHUgdGFyIGJvcnQgZGVtIGthbiBkZXQgZ/ZyYSBz5SBhdHQgaGVsYSBzeXN0ZW1ldCBzbHV0YXIKK2Z1bmdlcmEsIHPlIGFuduRuZCBtZWQgdGlsbGb2cnNpa3QuCisKK1xmQmRlcGVuZHNcZlA6IEf2ciBhbGxhIGJlcm9lbmRlcHJvYmxlbSB0aWxsIHZhcm5pbmdhci4KKworXGZCZGVwZW5kc1wtdmVyc2lvblxmUDogSWdub3JlcmEgdmVyc2lvbnNudW1tZXIgbuRyIGJlcm9lbmRlbiBrb250cm9sbGVyYXMuCisKK1xmQmJyZWFrc1xmUDogSW5zdGFsbGVyYSwg5HZlbiBvbSBkZXQgc2t1bGxlIGb2cnN09nJhIGV0dCBhbm5hdCBwYWtldC4KKworXGZCY29uZmxpY3RzXGZQOiBJbnN0YWxsZXJhIOR2ZW4gb20gcGFrZXQgc29tIORyIGkga29uZmxpa3QgKGtyb2NrYXIpIG1lZCBldHQKK2FubmF0IHBha2V0LiBEZXR0YSDkciBmYXJsaWd0LCBlZnRlcnNvbSBkZXQgb2Z0YXN0IGxlZGVyIHRpbGwgYXR0IHZpc3NhCitmaWxlciBza3JpdnMg9nZlci4KKworXGZCY29uZm1pc3NcZlA6IEluc3RhbGxlcmEgYWxsdGlkIHNha25hZGUga29uZmlndXJhdGlvbnNmaWxlci4gRGV0dGEg5HIKK2ZhcmxpZ3QsIGVmdGVyc29tIGRldCBpbnRlIGJpYmVo5WxsZXIg5G5kcmluZ2FyIChyYWRlcmluZ2FyKSBhdiBmaWxlci4KKworXGZCY29uZm5ld1xmUDogSW5zdGFsbGVyYSBhbGx0aWQgbnlhIHZlcnNpb25lciBhdiDkbmRyYWRlIGtvbmZpZ3VyYXRpb25zZmlsZXIKK3V0YW4gYXR0IGZy5WdhLCBz5XZpZGEgaW50ZSBcZkJcLVwtZm9yY2VcLWNvbmZkZWZcZlAgb2Nrc+UgYW5nZXMsIGkgdmlsa2V0IGZhbGwKK2RldCBm9nJ2YWxkYSBhbHRlcm5hdGl2ZXQga29tbWVyIGF0dCB1dGb2cmFzLgorCitcZkJjb25mb2xkXGZQOiBJbnN0YWxsZXJhIGFsZHJpZyBueWEgdmVyc2lvbmVyIGF2IORuZHJhZGUga29uZmlndXJhdGlvbnNmaWxlcgordXRhbiBhdHQgZnLlZ2EsIHPldmlkYSBpbnRlIFxmQlwtXC1mb3JjZVwtY29uZmRlZlxmUCBvY2tz5SBhbmdlcywgaSB2aWxrZXQgZmFsbAorZGV0IGb2cnZhbGRhIGFsdGVybmF0aXZldCBrb21tZXIgYXR0IHV0ZvZyYXMuCisKK1xmQmNvbmZkZWZcZlA6IFV0ZvZyIGFsbHRpZCBm9nJ2YWx0IGFsdGVybmF0aXZ0IGb2ciDkbmRyYWRlCitrb25maWd1cmF0aW9uc2ZpbGVyLiBPbSBpbmdldCBm9nJ2YWwgaGFyIGFuZ2l2aXRzIGtvbW1lciBwcm9ncmFtbWV0IHN0YW5uYQorb2NoIGZy5WdhIGFuduRuZGFyZW4gc+V2aWRhIGludGUgXGZCXC1cLWZvcmNlXC1jb25mbmV3XGZQIGVsbGVyIFxmQlwtXC1mb3JjZVwtY29uZm9sZFxmUAorb2Nrc+UgYW5nZXR0cywgaSBz5SBmYWxsIGFuduRuZHMgZGVuIGb2ciBhdHQgYmVzdORtbWEgdmFkIHNvbSBza2FsbCB1dGb2cmFzLgorCitcZkJjb25mYXNrXGZQOiBFcmJqdWQgYWxsdGlkIGF0dCBlcnPkdHRhIGVuIG1vZGlmaWVyYWQga29uZmlndXJhdGlvbnNmaWwgbWVkCit2ZXJzaW9uZW4gaSBwYWtldGV0LCDkdmVuIG9tIHZlcnNpb25lbiBpIHBha2V0ZXQgaW50ZSDkbmRyYWRlcy4gT20gbuVnb24gYXYKK1xmQlwtXC1mb3JjZVwtY29uZm1pc3NcZlAsIFxmQlwtXC1mb3JjZVwtY29uZm5ld1xmUCwgXGZCXC1cLWZvcmNlXC1jb25mb2xkXGZQIGVsbGVyCitcZkJcLVwtZm9yY2VcLWNvbmZkZWZcZlAgb2Nrc+UgYW5nZXR0cywgc+UgYW525G5kcyBkZW4gZvZyIGF0dCBiZXN05G1tYSB2YWQgc29tCitza2FsbCB1dGb2cmFzLgorCitcZkJvdmVyd3JpdGVcZlA6IFNrcml2IPZ2ZXIgZXR0IHBha2V0cyBmaWxlciBtZWQgZXR0IGFubmF0cy4KKworXGZCb3ZlcndyaXRlXC1kaXJcZlAgU2tyaXYg9nZlciBldHQgcGFrZXRzIGthdGFsb2dlciBtZWQgZXR0IGFubmF0cyBmaWxlci4KKworXGZCb3ZlcndyaXRlXC1kaXZlcnRlZFxmUDogU2tyaXYg9nZlciBlbiBvbWRpcmlnZXJhZCBmaWwgbWVkIGVuIGVqIG9tZGlyaWdlcmFkCit2ZXJzaW9uLgorCitcZkJ1bnNhZmVcLWlvXGZQOiBVdGb2ciBpbnRlIHPka3JhIEkvT1wtb3BlcmF0aW9uZXIgdmlkIHVwcGFja25pbmcuIERldHRhIGlubmVi5HIKK2b2ciBu5HJ2YXJhbmRlIGF0dCBmaWxzeXN0ZW1zc3lua3JvbmlzZXJpbmdhciBpbnRlIHV0ZvZycyBpbm5hbiBuYW1uIHDlCitmaWxlciDkbmRyYXMsIG7lZ290IHNvbSB2aSB2ZXQga2FuIHDldmVya2EgcHJlc3RhbmRhIGJldHlkbGlndCBuZWdhdGl2dCBm9nIKK3Zpc3NhIGZpbHN5c3RlbSwgdmlsa2V0IHR5duRyciDkciBzYW1tYSBzeXN0ZW0gc29tIGJlaPZ2ZXIgc+RrZXIgSS9PIHDlCitncnVuZCBhdiBhdHQgZGUgaGFyIGV0dCBvdGlsbGb2cmxpdGxpZ3QgYmV0ZWVuZGUgc29tIG9yc2FrYXIgdG9tbWEgZmlsZXIgdmlkCit0duRyYSBzeXN0ZW1rcmFzY2hlci4KKworXGZJT2JzZXJ2ZXJhXGZQOiBG9nIgZXh0NCwgZGVuIHbkcnN0YSBzeW5kYXJlbiwga2FuIGRldCB2YXJhIHbkcnQgYXR0IGlzdORsbGV0CithbnbkbmRhIG1vbnRlcmluZ3NmbGFnZ2FuIFxmQm5vZGVsYWxsb2NcZlAsIHZpbGtlbiBi5WRlIGtvcnJpZ2VyYXIKK3ByZXN0YW5kYWb2cmx1c3RlbiBvY2ggZGF0YXPka2VyaGV0c3Byb2JsZW1lbiwgZGV0IHNpc3Ru5G1uZGEgZ2Vub20gYXR0IGludGUKK2zldGEgZmlsc3lzdGVtZXQgc2thcGEgdG9tbWEgZmlsZXIgdmlkIHR25HJhIGtyYXNjaGVyIGb2ciBwcm9ncmFtdmFyYSBzb20KK2ludGUgdXRm9nIgc3lua3JvbmlzZXJpbmcgZvZyZSBhdG9t5HJhIG5hbW5ieXRlbi4KKworXGZJVmFybmluZzogRGVuIGjkciBmbGFnZ2FuIGthbiBnZSBi5HR0cmUgcHJlc3RhbmRhIHDlIGJla29zdG5hZCBhdgorZGF0YWb2cmx1c3RlciwgYW525G5kIG1lZCB0aWxsZvZyc2lrdC5cZlAKKworXGZCYXJjaGl0ZWN0dXJlXGZQOiBIYW50ZXJhIOR2ZW4gcGFrZXQgbWVkIGZlbCBlbGxlciBzYWtuYWQKK21hc2tpbnZhcnVhcmtpdGVrdHVyLgorCitcZkJiYWRcLXZlcnNpb25cZlA6IEhhbnRlcmEg5HZlbiBwYWtldCBtZWQgZmVsIHZlcnNpb25lci4KKworXGZCYmFkXC1wYXRoXGZQOiBT9mt25GdlbiBpIFxmQlBBVEhcZlAgc2FrbmFyIHZpa3RpZ2EgcHJvZ3JhbSwgc+UgcHJvYmxlbSDkcgordHJvbGlnYS4KKworXGZCbm90XC1yb290XGZQOiBG9nJz9msgKGF2KWluc3RhbGxlcmEgc2FrZXIg5HZlbiB1dGFuIGF0dCB2YXJhIHJvb3QuCisKK1xmQmJhZFwtdmVyaWZ5XGZQOiBJbnN0YWxsZXJhIGV0dCBwYWtldCDkdmVuIG9tIGRldCBpbnRlIGflciBhdHQgdmVyaWZpZXJhIGRlc3MKK+RrdGhldC4KKworLlRQIAorXGZCXC1cLWlnbm9yZVwtZGVwZW5kc1xmUD1cZklwYWtldFxmUCwuLi4KK0lnbm9yZXJhIGJlcm9lbmRla29udHJvbGwgZvZyIGFuZ2l2bmEgcGFrZXQgKGkgdmVya2xpZ2hldGVuIHV0ZvZycwora29udHJvbGxlbiwgbWVuIGRldCBnZXMgZW5kYXN0IHZhcm5pbmdhciwgaW5nZW50aW5nIGFubmF0KS4KKy5UUCAKK1xmQlwtXC1ub1wtYWN0XGZQLCBcZkJcLVwtZHJ5XC1ydW5cZlAsIFxmQlwtXC1zaW11bGF0ZVxmUAorR/ZyIGFsbHRpbmcgc29tIGVmdGVyZnLlZ2FzLCBtZW4gc2tyaXYgaW50ZSBu5WdyYSDkbmRyaW5nYXIuIERldHRhIGFuduRuZHMKK2b2ciBhdHQgc2UgdmFkIHNvbSBza3VsbGUgaGEgaORudCBtZWQg5XRn5HJkZW4gdXRhbiBhdHQgZmFrdGlza3Qg5G5kcmEKK27lZ290LgorCitTZSB0aWxsIGF0dCBkdSBhbmdlciBcZkJcLVwtbm9cLWFjdFxmUCBm9nJlIOV0Z+RyZHNmbGFnZ2FuLCBhbm5hcnMga2FuIGR1IGblCitv9m5za2FkZSBiaXZlcmtuaW5nYXIgKHQuZXggc+Uga29tbWVyIFxmQmRwa2cgXC1cLXB1cmdlIGZvbyBcLVwtbm9cLWFjdFxmUCBm9nJzdCBhdHQKK3JlbnNhIHV0IHBha2V0ZXQgZm9vIGb2ciBhdHQgc2VkYW4gZvZyc/ZrYSByZW5zYSB1dCBwYWtldGV0IFwtXC1ub1wtYWN0LCB0cm90cworYXR0IGR1IHRyb2xpZ2VuIGb2cnbkbnRhZGUgZGlnIGF0dCBpbmdlbnRpbmcgc2t1bGxlIHV0ZvZyYXMpCisuVFAgCitcZkJcLVJcZlAsIFxmQlwtXC1yZWN1cnNpdmVcZlAKK0hhbnRlcmEgYWxsYSB2YW5saWdhIGZpbGVyIHNvbSBtYXRjaGFyIHP2a232bnN0cmV0IFxmQiouZGViXGZQIHJla3Vyc2l2dCBpIGRlCitrYXRhbG9nZXIgc29tIGFuZ2VzLCBtZWQgYWxsYSBzaW5hIHVuZGVya2F0YWxvZ2VyLiBGbGFnZ2FuIGthbiBhbnbkbmRhcwordGlsbHNhbW1hbnMgbWVkIFxmQlwtaVxmUCwgXGZCXC1BXGZQLCBcZkJcLVwtaW5zdGFsbFxmUCwgXGZCXC1cLXVucGFja1xmUCBvY2ggXGZCXC1cLWF2YWlsXGZQLgorLlRQIAorXGZCXC1HXGZQCitJbnN0YWxsZXJhIGludGUgcGFrZXRldCBvbSBlbiBueWFyZSB2ZXJzaW9uIGF2IHNhbW1hIHBha2V0IHJlZGFuIORyCitpbnN0YWxsZXJhdC4gRGV0dGEg5HIgZXR0IGFsaWFzIGb2ciBcZkJcLVwtcmVmdXNlXC1kb3duZ3JhZGVcZlAuCisuVFAgCitcZkJcLVwtYWRtaW5kaXI9XGZQXGZJa2F0XGZQCivEbmRyYSBm9nJ2YWxkIGFkbWluaXN0cmF0aW9uc2thdGFsb2csIHZpbGtlbiBpbm5laOVsbGVyIGZsZXJhIGZpbGVyIHNvbQorYmVza3JpdmVyIHN0YXR1cyBm9nIgaW5zdGFsbGVyYWRlIGVsbGVyIGF2aW5zdGFsbGVyYWRlIHBha2V0LAorb3N2LiAoc3RhbmRhcmR25HJkZSDkciBcZkkvdmFyL2xpYi9kcGtnXGZQKQorLlRQIAorXGZCXC1cLWluc3RkaXI9XGZQXGZJa2F0YWxvZ1xmUAorxG5kcmEgc3RhbmRhcmRpbnN0YWxsYXRpb25za2F0YWxvZywgdmlsa2V0IGFuZ2VyIGthdGFsb2dlbiBk5HIgcGFrZXQgc2thbGwKK2luc3RhbGxlcmFzLiBcZkJpbnN0ZGlyXGZQIORyIOR2ZW4ga2F0YWxvZ2VuIHNvbSBza2lja2FzIHNvbSBhcmd1bWVudCB0aWxsCitcZkJjaHJvb3RcZlAoMikgaW5uYW4gcGFrZXRldHMgaW5zdGFsbGF0aW9uc2ZpbGVyIGv2cnMsIHZpbGtldCBiZXR5ZGVyIGF0dAorc2tyaXB0ZW4gc2VyIFxmQmluc3RkaXJcZlAgc29tIHJvdGthdGFsb2cuIChG9nJ2YWwg5HIgXGZJL1xmUCkKKy5UUCAKK1xmQlwtXC1yb290PVxmUFxmSWthdGFsb2dcZlAKK0dlbm9tIGF0dCDkbmRyYSBcZkJyb3RcZlAgc+Ug5G5kcmFzIFxmQmluc3RhbGxhdGlvbnNrYXRhbG9nXGZQIHRpbGwgXGZJa2F0YWxvZ1xmUCBvY2gKK1xmQmFkbWluaXN0cmF0aW9uc2thdGFsb2dcZlAgdGlsbCBcZklrYXRhbG9nXGZQXGZCL3Zhci9saWIvZHBrZ1xmUC4KKy5UUCAKK1xmQlwtT1xmUCwgXGZCXC1cLXNlbGVjdGVkXC1vbmx5XGZQCitIYW50ZXJhIGVuZGFzdCBwYWtldCBzb20gbWFya2VyYXRzIGb2ciBpbnN0YWxsYXRpb24uIFNq5Gx2YSBtYXJrZXJpbmdlbgordXRm9nJzIG1lZCBcZkJkc2VsZWN0XGZQIGVsbGVyIGF2IFxmQmRwa2dcZlAgbuRyIHBha2V0ZW4gaGFudGVyYXMuIFRpbGwgZXhlbXBlbAora29tbWVyIHBha2V0IHNvbSB0YXMgYm9ydCBhdHQgbWFya2VyYXMgZvZyIGluc3RhbGxhdGlvbi4KKy5UUCAKK1xmQlwtRVxmUCwgXGZCXC1cLXNraXBcLXNhbWVcLXZlcnNpb25cZlAKK0luc3RhbGxlcmEgaW50ZSBwYWtldGV0IG9tIHNhbW1hIHZlcnNpb24gYXYgcGFrZXRldCByZWRhbiDkciBpbnN0YWxsZXJhdC4KKy5QCitcZkJcLVwtcHJlXC1pbnZva2U9XGZQXGZJa29tbWFuZG9cZlAKKy5icgorXGZCXC1cLXBvc3RcLWludm9rZT1cZlBcZklrb21tYW5kb1xmUAorLlJTCitT5HR0ZXIgZW4gYW5yb3BzaGFrZSBcZklrb21tYW5kb1xmUCBzb20ga/ZycyB2aWEgInNoIFwtYyIgZvZyZSBlbGxlciBlZnRlciBkcGtnCitr9nJzIGb2ciDldGfkcmRlcm5hIFxmSXVucGFja1xmUCwgXGZJY29uZmlndXJlXGZQLCBcZklpbnN0YWxcZlAsIFxmSXRyaWdnZXJzXC1vbmx5XGZQLAorXGZJcmVtb3ZlXGZQIG9jaCBcZklwdXJnZVxmUC4gRmxhZ2dhbiBrYW4gYW5nZXMgZmxlcmEgZ+VuZ2VyLiBPcmRuaW5nZW4gcOUKK2ZsYWdnb3JuYSBzb20gYW5nZXMgYmVo5WxscyBvY2ggZGUgc29tIGFuZ2VzIGkga29uZmlndXJhdGlvbnNmaWxlbiBoYXIKK2b2cmV0cuRkZS4gTWlsavZ2YXJpYWJlbG4gXGZCRFBLR19IT09LX0FDVElPTlxmUCBz5HR0cyBm9nIgaGFrYXIgaSBkZW4KK251dmFyYW5kZSBkcGtnXC3ldGfkcmRlbi4gT2JzZXJ2ZXJhOiBTa2FsIGthbiBhbnJvcGEgZHBrZyBmbGVyYSBn5W5nZXIgcGVyCitr9nJuaW5nLCB2aWxrZXQga2FuIGf2cmEgYXR0IGhha2FybmEga/ZycyBmbGVyIGflbmdlciDkbiBm9nJ25G50YXQuCisuUkUKKy5QCitcZkJcLVwtcGF0aFwtZXhjbHVkZT1cZlBcZklmaWxuYW1uc232bnN0ZXJcZlAKKy5icgorXGZCXC1cLWxpc3RcZlBcZklmaWxuYW1uc232bnN0ZXJcZlAKKy5SUworU+R0dCBcZklmaWxuYW1uc232bnN0ZXJcZlAgc29tIGV0dCBz9mt25GdzZmlsdGVyLCBhbnRpbmdlbiBnZW5vbSBhdHQgZXhrbHVkZXJhCitlbGxlciDldGVyIGlua2x1ZGVyYSB0aWRpZ2FyZSBleGtsdWRlcmFkZSBz9mt25GdhciBzb20gbW90c3ZhcmFyIGRldCBhbmdpdm5hCitt9m5zdHJldCB1bmRlciBpbnN0YWxsYXRpb25lbi4KKworXGZJVmFybmluZzogdORuayBw5SBhdHQgZHUga2FuIHRvdGFsdCD2ZGVs5GdnYSBkaXR0IHN5c3RlbSwgYmVyb2VuZGUgcOUgdmlsa2EKK3P2a3bkZ2FyIGR1IGV4a2x1ZGVyYXIsIHPlIGFuduRuZCBtZWQgdGlsbGb2cnNpa3QuXGZQCisKK0ZpbG5hbW5zbfZuc3RyZW5hIGFuduRuZGVyIHNhbW1hIHNvcnRzIGpva2VydGVja2VuIHNvbSBza2FsZXQsIGTkciAiKiIKK21vdHN2YXJhciBlbiBzZWt2ZW5zIGF2IHZhbGZyaXR0IGFudGFsIHRlY2tlbiwgaW5rbHVzaXZlIGRlbiB0b21tYSBzdHLkbmdlbgorb2NoIOR2ZW4gIi8iLiBUaWxsIGV4ZW1wZWwgcOUgbW90c3ZhcmFyIFxmSSIvdXNyLyovUkVBRCoiXGZQCitcZkkiL3Vzci9zaGFyZS9kb2MvcGFrZXQvUkVBRE1FIlxmUC4gIj8iIG1vdHN2YXJhciBzb20gdmFubGlndCBldHQgZW5zYW10Cit0ZWNrZW4gKOR2ZW4gaORyIGluZ+VyICIvIikuIE9jaCAiWyIgaW5sZWRlciBlbiB0ZWNrZW5rbGFzcywgc29tIGthbgoraW5uZWjlbGxhIGVuIGxpc3RhIPZ2ZXIgdGVja2VuLCBpbnRlcnZhbGwgb2NoIGtvbXBsZW1lbnQuIFNlIFxmQmdsb2JcZlAoNykgZvZyCitkZXRhbGplcmFkIGluZm9ybWF0aW9uIG9tIGZpbG5hbW5zbfZuc3Rlci4gT2JzZXJ2ZXJhOiBkZW4gbnV2YXJhbmRlCitpbXBsZW1lbnRhdGlvbmVuIGthbiDldGVyaW5rbHVkZXJhIGZsZXIga2F0YWxvZ2VyIG9jaCBzeW1ib2xpc2thIGzkbmthciDkbgorbvZkduRuZGlndCwgZvZyIGF0dCB2YXJhIHDlIGRlbiBz5GtyYSBzaWRhbiBvY2ggdW5kdmlrYSBt9mpsaWdhCit1cHBhY2tuaW5nc2ZlbCwgZnJhbXRpZGEg5G5kcmluZ2FyIGthbiBrb21tYSBhdHQgcuR0dGEgZGV0dGEuCisKK0RldHRhIGthbiBhbnbkbmRhcyBm9nIgYXR0IHRhIGJvcnQgYWxsYSBz9mt25GdhciBm9nJ1dG9tIG7lZ3JhIHNwZWNpZmlrYTsKK2V0dCB0eXBpc2t0IGFuduRuZG5pbmdzb21y5WRlIORyOgorCisubmYKK1xmQlwtXC1wYXRoXC1leGNsdWRlPS91c3Ivc2hhcmUvZG9jLypcZlAKK1xmQlwtXC1wYXRoXC1pbmNsdWRlPS91c3Ivc2hhcmUvZG9jLyovY29weXJpZ2h0XGZQCisuZmkKKworZvZyIGF0dCB0YSBib3J0IGFsbGEgZG9rdW1lbnRhdGlvbnNmaWxlciBm9nJ1dG9tIHVwcGhvdnNy5HR0c2luZm9ybWF0aW9uLgorCitEZXNzYSB0duUgZmxhZ2dvciBrYW4gYW5nZXMgZmxlcmEgZ+VuZ2VyLCBvY2gga2FuIGludGVyZm9saWVyYXMgbWVkCit2YXJhbmRyYS4gRGUgaGFudGVyYXMgYuVkYSBpIGRlbiBnaXZuYSBvcmRuaW5nZW4gb2NoIGRldCDkciBkZW4gc2lzdGEgcmVnZWxuCitzb20gbW90c3ZhcmFyIGV0dCBmaWxuYW1uIHNvbSBm5GxsZXIgYXZn9nJhbmRldC4KKy5SRQorLlRQIAorXGZCXC1cLXN0YXR1c1wtZmQgXGZQXGZJblxmUAorU+RuZCBtYXNraW5s5HNiYXIgcGFrZXRzdGF0dXMgb2NoIGb2cmxvcHBzaW5mb3JtYXRpb24gdGlsbCBmaWxoYW5kdGFnCitcZkluXGZQLiBGbGFnZ2FuIGthbiBhbmdlcyBmbGVyYSBn5W5nZXIuIEluZm9ybWF0aW9uZW4gbGFncmFzIHZhbmxpZ3R2aXMgcmFkCitm9nIgcmFkLCBpIGb2bGphbmRlIGZvcm1hdDoKKy5SUworLlRQIAorXGZCc3RhdHVzOiBcZlBcZklwYWtldFxmUFxmQjogXGZQXGZJc3RhdHVzXGZQCitQYWtldHN0YXR1cyDkbmRyYWQ7IFxmSXN0YXR1c1xmUCDkciBzb20gaSBzdGF0dXNmaWxlbi4KKy5UUCAKK1xmQnN0YXR1czogXGZQXGZJcGFrZXRcZlBcZkIgOiBlcnJvciA6IFxmUFxmSXV09mthdFwtZmVsbWVkZGVsYW5kZVxmUAorRXR0IGZlbCB1cHBzdG9kLiBFdmVudHVlbGxhIG55cmFkc3RlY2tlbiBpIFxmSXV09mthdFwtZmVsbWVkZGVsYW5kZW5cZlAga29tbWVyCitlcnPkdHRhcyBtZWQgYmxhbmtzdGVnIGlubmFuIGRlIHNrcml2cyB1dC4KKy5UUCAKK1xmQnN0YXR1czogXGZQXGZJZmlsXGZQXGZCIDogY29uZmZpbGVcLXByb21wdCA6ICdcZlBcZklyaWt0aWdcLWdhbW1hbFxmUFxmQicgJ1xmUFxmSXJpa3RpZ1wtbnlcZlBcZkInIFxmUFxmSWFuduRuZGFycmVkaWdlcmFkXGZQXGZCIFxmUFxmSWRpc3RyZWRpZ2VyYWRcZlAKK0FuduRuZGFyZW4gZuVyIGVuIGZy5WdhIG9tIGtvbmZpZ3VyYXRpb25zZmlsZXIuCisuVFAgCitcZkJwcm9jZXNzaW5nOiBcZlBcZklza2VkZVxmUFxmQjogXGZQXGZJcGFrZXRcZlAKK1PkbmRzIHByZWNpcyBpbm5hbiBldHQgaGFudGVyaW5nc3NrZWRlIHDlYvZyamFzLiBcZklTa2VkZVxmUCDkciBu5WdvdCBhdgorXGZCdXBncmFkZVxmUCwgXGZCaW5zdGFsbFxmUCAoYuVkYSBz5G5kcyBpbm5hbiBwYWtldGV0IHBhY2thcyB1cHApLCBcZkJjb25maWd1cmVcZlAsCitcZkJ0cmlncHJvY1xmUCwgXGZCZGlzYXBwZWFyXGZQLCBcZkJyZW1vdmVcZlAsIFxmQnB1cmdlXGZQLgorLlJFCisuVFAgCitcZkJcLVwtc3RhdHVzXC1sb2dnZXJcZlA9XGZJa29tbWFuZG9cZlAKK1PkbmQgbWFza2lubORzYmFyIHBha2V0c3RhdHVzIG9jaCBm9nJsb3Bwc2luZm9ybWF0aW9uIHRpbGwKK3NrYWxcLVxmSWtvbW1hbmRvXGZQdHMgc3RhbmRhcmQgaW4uIEZsYWdnYW4ga2FuIGFuZ2VzIGZsZXJhCitn5W5nZXIuIFV0ZGF0YWZvcm1hdGV0IHNvbSBhbnbkbmRzIORyIGRldHNhbW1hIHNvbSBm9nIgXGZCXC1cLXN0YXR1c1wtZmRcZlAuCisuUkUKKy5UUCAKK1xmQlwtXC1sb2c9XGZQXGZJZmlsbmFtblxmUAorTG9nZ2Egc3RhdHVz5G5kcmluZ3NtZWRkZWxhbmRlbiBvY2gga29tbWFuZG9uIHRpbGwgXGZJZmlsbmFtblxmUCwgaXN05GxsZXQgZvZyCitm9nJ2YWxldCBcZkkvdmFyL2xvZy9kcGtnLmxvZ1xmUC4gT20gZmxhZ2dhbiBnZXMgZmxlcmEgZ+VuZ2VyIGFuduRuZHMgZGV0IHNpc3RhCitmaWxuYW1uZXQuIExvZ2dtZWRkZWxhbmRlbiDkciBw5SBmb3JtZW4gIsXFxcVcLU1NXC1ERCBISDpNTTpTUyBzdGF0dXMKK1xmSXRpbGxzdOVuZFxmUCBcZklwYWtldFxmUCBcZklpbnN0YWxsZXJhZFwtdmVyc2lvblxmUCIgZvZyIHN0YXR1c+RuZHJpbmdhcjsKKyLFxcXFXC1NTVwtREQgSEg6TU06U1MgXGZJ5XRn5HJkXGZQIFxmSXBha2V0XGZQIFxmSWluc3RhbGxlcmFkXC12ZXJzaW9udFxmUAorXGZJdGlsbGfkbmdsaWdcLXZlcnNpb25cZlAiIGb2ciDldGfkcmRlciBk5HIgXGZJ5XRn5HJkXGZQIORyIGV0dCBhdiBcZkJpbnN0YWxsXGZQLAorXGZCdXBncmFkZVxmUCwgXGZCcmVtb3ZlXGZQLCBcZkJwdXJnZVxmUDsgc2FtdCAixcXFxVwtTU1cLUREIEhIOk1NOlNTIGNvbmZmaWxlCitcZklmaWxuYW1uXGZQIFxmSXZhbFxmUCIgZvZyIGtvbmZpZ3VyYXRpb25zZmlsc+RuZHJpbmdhciBk5HIgXGZJdmFsXGZQIGFudGluZ2VuIORyCitcZkJpbnN0YWxsXGZQIGVsbGVyIFxmQmtlZXBcZlAuCisuVFAgCitcZkJcLVwtbm9cLWRlYnNpZ1xmUAorRvZyc/ZrIGludGUgdmVyaWZpZXJhIHBha2V0c2lnbmF0dXJlci4KKy5UUCAKK1xmQlwtXC1ub1wtdHJpZ2dlcnNcZlAKK1V0ZvZyIGludGUgdXRs9nNhcmUgaSBkZW5uYSBr9nJuaW5nIChha3RpdmVyaW5nYXIga29tbWVyIGZvcnRmYXJhbmRlIGF0dAorYW50ZWNrbmFzKS4gT20gZGV0IGFuduRuZHMgdGlsbHNhbW1hbnMgbWVkIFxmQlwtXC1jb25maWd1cmVcZlAgXGZJcGFrZXRcZlAgZWxsZXIKK1xmQlwtXC10cmlnZ2Vyc1wtb25seVxmUCBcZklwYWtldFxmUCBrb21tZXIgZGV0IG5hbW5naXZuYSBwYWtldGV0cyBwb3N0aW5zdAorZm9ydGZhcmFuZGUgYXR0IGv2cmFzIOR2ZW4gb20gZGV0IGVuZGEgc29tIGJlaPZ2ZGVzIHZhciBlbiBr9nJuaW5nIGF2Cit1dGz2c2FyZS4gT20gZHUgYW525G5kZXIgZGVubmEgZmxhZ2dhIGthbiBkZXQgaORuZGEgYXR0IHBha2V0IGhhbW5hciBpCitmZWxha3RpZ2EgXGZCduRudGFyIHDlIHV0bPZzYXJlXGZQXC0gb2NoIFxmQnV0bPZzYXJlIHbkbnRhclxmUFwtdGlsbHN05W5kLiBEZXR0YSBrYW4KK3LkdHRhcyBzZW5hcmUgZ2Vub20gYXR0IGv2cmE6IFxmQmRwa2cgXC1cLWNvbmZpZ3VyZSBcLVwtcGVuZGluZ1xmUC4KKy5UUCAKK1xmQlwtXC10cmlnZ2Vyc1xmUAor1nZlcnN0eXIgZXR0IHRpZGlnYXJlIFxmQlwtXC1ub1wtdHJpZ2dlcnNcZlAuCisuCisuU0ggRklMRVIKKy5UUCAKK1xmSS9ldGMvZHBrZy9kcGtnLmNmZ1xmUAorS29uZmlndXJhdGlvbnNmaWwgbWVkIGb2cnZhbGRhIGluc3TkbGxuaW5nYXIuCisuVFAgCitcZkkvdmFyL2xvZy9kcGtnLmxvZ1xmUAorRvZydmFsZCBsb2dnZmlsIChzZSBcZkkvZXRjL2Rwa2cvZHBrZy5jZmdcZlAoNSkgb2NoIGZsYWdnYW4gXGZCXC1cLWxvZ1xmUCkuCisuUAor1nZyaWdhIGZpbGVyIHNvbSBsaXN0YXMgaORyIGZpbm5zIGkgc2luYSBm9nJ2YWxkYSBrYXRhbG9nZXIsIHNlIGZsYWdnYW4KK1xmQlwtXC1hZG1pbmRpclxmUCBm9nIgaW5mb3JtYXRpb24gb20gaHVyIGR1IORuZHJhciBwbGFjZXJpbmdlbiBhdiBkZXNzYSBmaWxlci4KKy5UUCAKK1xmSS92YXIvbGliL2Rwa2cvYXZhaWxhYmxlXGZQCitMaXN0YSD2dmVyIHRpbGxn5G5nbGlnYSBwYWtldC4KKy5UUCAKK1xmSS92YXIvbGliL2Rwa2cvc3RhdHVzXGZQCitTdGF0dXMgZvZyIHRpbGxn5G5nbGlnYSBwYWtldC4gRmlsZW4gaW5uZWjlbGxlciBpbmZvcm1hdGlvbiBvbSBodXJ1dmlkYSBldHQKK3Bha2V0IORyIG1hcmtlcmF0IGb2ciBib3J0dGFnbmluZyBlbGxlciBlaiwgb20gZGV0IORyIGluc3RhbGxlcmF0IGVsbGVyIGVqLAorb3N2LiBTZSBzZWt0aW9uZW4gXGZCSU5GT1JNQVRJT04gT00gUEFLRVRcZlAgZvZyIHl0dGVybGlnYXJlIGluZm9ybWF0aW9uLgorCitTdGF0dXNmaWxlbiBz5GtlcmhldHNrb3BpZXJhcyBkYWdsaWdlbiBpIFxmSS92YXIvYmFja3Vwc1xmUC4gRGV0IGthbiB2YXJhCitueXR0aWd0IG9tIGRlbiBn5XIgZvZybG9yYWQgZWxsZXIgc2tyaXZzIHP2bmRlciBw5SBncnVuZCBhdiBwcm9ibGVtIG1lZAorZmlsc3lzdGVtZXQuCisuUAorRvZsamFuZGUgZmlsZXIg5HIga29tcG9uZW50ZXIgaSBkZXQgYmlu5HJhIHBha2V0ZXQuIFNlIFxmQmRlYlxmUCg1KSBm9nIKK3l0dGVybGlnYXJlIGluZm9ybWF0aW9uIG9tIGRlbToKKy5UUCAKK1xmSWNvbnRyb2xcZlAKKy5UUCAKK1xmSWNvbmZmaWxlc1xmUAorLlRQIAorXGZJcHJlaW5zdFxmUAorLlRQIAorXGZJcG9zdGluc3RcZlAKKy5UUCAKK1xmSXByZXJtXGZQCisuVFAgCitcZklwb3N0cm1cZlAKKy4KKy5TSCBNSUxK1lZBUklBQkxFUgorLlRQIAorXGZCSE9NRVxmUAorT20gc2F0dCBz5SBrb21tZXIgXGZCZHBrZ1xmUCBhdHQgYW525G5kYSBkZXQgc29tIGRlbiBrYXRhbG9nIGZy5W4gdmlsa2VuIGRldAorc2thbGwgbORzYSBkZW4gYW525G5kYXJzcGVjaWZpa2Ega29uZmlndXJhdGlvbnNmaWxlbi4KKy5UUCAKK1xmQlRNUERJUlxmUAorT20gc2F0dCBz5SBrb21tZXIgXGZCZHBrZ1xmUCBhdHQgYW525G5kYSBkZXQgc29tIGRlbiBrYXRhbG9nIGTkciBkZXQgc2thcGFyCit0ZW1wb3LkcmEgZmlsZXIgb2NoIGthdGFsb2dlci4KKy5UUCAKK1xmQlBBR0VSXGZQCitQcm9ncmFtbWV0IFxmQmRwa2dcZlAga29tbWVyIGF0dCBleGVrdmVyYXMgZvZyIGF0dCB2aXNhIGtvbmZpZ3VyYXRpb25zZmlsZXIuCisuVFAgCitcZkJTSEVMTFxmUAorUHJvZ3JhbW1ldCBcZkJkcGtnXGZQIGtvbW1lciBhdHQgZXhla3ZlcmFzIG7kciBldHQgbnl0dCBza2FsIHN0YXJ0YXMuCisuVFAgCitcZkJDT0xVTU5TXGZQCitT5HR0ZXIgYW50YWxldCBrb2x1bW5lciBcZkJkcGtnXGZQIHNrYWxsIGFuduRuZGEgbuRyIGZvcm1hdGVyYWQgdGV4dAordmlzYXMuIEFuduRuZHMgZvZyIG7kcnZhcmFuZGUgZW5iYXJ0IGF2IFwtbC4KKy5UUCAKK1xmQkRQS0dfU0hFTExfUkVBU09OXGZQCitEZWZpbmllcmFzIGF2IFxmQmRwa2dcZlAgaSBza2FsZXQgc29tIHN0YXJ0YXMgZvZyIGF0dCB1bmRlcnP2a2Egc2l0dWF0aW9uZW4KK2VmdGVyIGtvbmZpZ3VyYXRpb25zZmlsc2Zy5Wdhbi4gVGlsbOV0bmEgduRyZGVuIORyIGb2ciBu5HJ2YXJhbmRlOgorXGZCY29uZmZpbGVcLXByb21wdFxmUC4KKy5UUCAKK1xmQkRQS0dfQ09ORkZJTEVfT0xEXGZQCitEZWZpbmllcmFzIGF2IFxmQmRwa2dcZlAgaSBza2FsZXQgc29tIHN0YXJ0YXMgZvZyIGF0dCB1bmRlcnP2a2Egc2l0dWF0aW9uZW4KK2VmdGVyIGtvbmZpZ3VyYXRpb25zZmlsc2Zy5Wdhbi4gSW5uZWjlbGxlciBz9mt25GdlbiB0aWxsIGRlbiBnYW1sYQora29uZmlndXJhdGlvbnNmaWxlbi4KKy5UUCAKK1xmQkRQS0dfQ09ORkZJTEVfTkVXXGZQCitEZWZpbmllcmFzIGF2IFxmQmRwa2dcZlAgaSBza2FsZXQgc29tIHN0YXJ0YXMgZvZyIGF0dCB1bmRlcnP2a2Egc2l0dWF0aW9uZW4KK2VmdGVyIGtvbmZpZ3VyYXRpb25zZmlsc2Zy5Wdhbi4gSW5uZWjlbGxlciBz9mt25GdlbiB0aWxsIGRlbiBueWEKK2tvbmZpZ3VyYXRpb25zZmlsZW4uCisuVFAgCitcZkJEUEtHX1JVTk5JTkdfVkVSU0lPTlxmUAorRGVmaW5pZXJhcyBhdiBcZkJkcGtnXGZQIGkgdXR2ZWNrbGFyc2tyaXB0ZXRzIG1pbGr2IHRpbGwgdmVyc2lvbmVuIGF2IGRlbgoraW5zdGFucyBhdiBcZkJkcGtnXGZQIHNvbSBr9nJzIGb2ciB0aWxsZuRsbGV0LgorLlRQIAorXGZCRFBLR19NQUlOVFNDUklQVF9QQUNLQUdFXGZQCitEZWZpbmllcmFzIGF2IFxmQmRwa2dcZlAgaSB1dHZlY2tsYXJza3JpcHRldHMgbWlsavYgdGlsbCBuYW1uZXQgcOUgcGFrZXRldCBzb20KK2hhbnRlcmFzLgorLlRQIAorXGZCRFBLR19NQUlOVFNDUklQVF9BUkNIXGZQCitEZWZpbmllcmFzIGF2IFxmQmRwa2dcZlAgaSB1dHZlY2tsYXJza3JpcHRldHMgbWlsavYgdGlsbCBhcmtpdGVrdHVyZW4gcGFrZXRldAorYnlnZ2RlcyBm9nIuCisuVFAgCitcZkJEUEtHX01BSU5UU0NSSVBUX05BTUVcZlAKK0RlZmluaWVyYXMgYXYgXGZCZHBrZ1xmUCBpIHV0dmVja2xhcnNrcmlwdGV0cyBtaWxq9iB0aWxsIG5hbW5ldCBw5SBkZXQgc2tyaXB0Citzb20ga/ZycyAocHJlaW5zdCwgcG9zdGluc3QsIHByZXJtLCBwb3N0cm0pLgorLgorLlNIIEVYRU1QRUwKK0b2ciBhdHQgbGlzdGEgcGFrZXQgcmVsYXRlcmFkZSB0aWxsIHRleHRyZWRpZ2VyaW5nc3Byb2dyYW1tZXQgXGZCdmlcZlAoMSk6CisuYnIKKyAgICAgXGZCZHBrZyBcLWwgXChhcSp2aSpcKGFxXGZQCisuYnIKKworRvZyIGF0dCBzZSBwb3N0ZXJuYSBpIFxmSS92YXIvbGliL2Rwa2cvYXZhaWxhYmxlXGZQIGb2ciB0duUgcGFrZXQ6CisuYnIKKyAgICAgXGZCZHBrZyBcLVwtcHJpbnRcLWF2YWlsIGVsdmlzIHZpbSB8IGxlc3NcZlAKKy5icgorCitG9nIgYXR0IHNq5Gx2IHP2a2EgaSBwYWtldGxpc3RhbjoKKy5icgorICAgICBcZkJsZXNzIC92YXIvbGliL2Rwa2cvYXZhaWxhYmxlXGZQCisuYnIKKworRvZyIGF0dCB0YSBib3J0IGRldCBpbnN0YWxsZXJhZGUgcGFrZXRldCBlbHZpczoKKy5icgorICAgICBcZkJkcGtnIFwtciBlbHZpc1xmUAorLmJyCisKK0b2ciBhdHQgaW5zdGFsbGVyYSBldHQgcGFrZXQgbeVzdGUgZHUgZvZyc3QgbGV0YSBw5SBkZXQgaSBldHQgYXJraXYgZWxsZXIgcOUKK2VuIGNkXC1yb20uIEZpbGVuICJhdmFpbGFibGUiIHZpc2FyIGF0dCB2aW1cLXBha2V0ZXQgZmlubnMgaSBzZWt0aW9uZW4KKyJlZGl0b3JzIjoKKy5icgorICAgICBcZkJjZCAvbWVkaWEvY2Ryb20vcG9vbC9tYWluL3YvdmltXGZQCisgICAgIFxmQmRwa2cgXC1pIHZpbV80LjVcLTMuZGViXGZQCisuYnIKKworRvZyIGF0dCBn9nJhIGVuIGxva2FsIGtvcGlhIGF2IHBha2V0bWFya2VyaW5nYXJuYToKKy5icgorICAgICBcZkJkcGtnIFwtXC1nZXRcLXNlbGVjdGlvbnMgPm1pdHR1cnZhbFxmUAorLmJyCisKK0R1IGthbiD2dmVyZvZyYSBmaWxlbiB0aWxsIGVuIGFubmFuIGRhdG9yIG9jaCBpbnN0YWxsZXJhIGRlbiBk5HIgZ2Vub20gYXR0Citza3JpdmE6CisuYnIKKyAgICAgXGZCZHBrZyBcLVwtY2xlYXJcLXNlbGVjdGlvbnNcZlAKKyAgICAgXGZCZHBrZyBcLVwtc2V0XC1zZWxlY3Rpb25zIDxtaXR0dXJ2YWxcZlAKKy5icgorCitPYnNlcnZlcmEgYXR0IGRldHRhIGZha3Rpc2t0IGludGUga29tbWVyIGluc3RhbGxlcmEgZWxsZXIgdGEgYm9ydCBu5WdvbnRpbmcsCit1dGFuIGJhcmEgc+R0dGEgdmFsc3RhdHVzIHDlIGRlIGVmdGVyZnLlZ2FkZSBwYWtldGVuLiBEdSBt5XN0ZSBhbnbkbmRhIGV0dAorYW5uYXQgcHJvZ3JhbSBm9nIgYXR0IGZha3Rpc2t0IGjkbXRhIG9jaCBpbnN0YWxsZXJhIGRlIGVmdGVyZnLlZ2FkZQorcGFrZXRlbi4gVGlsbCBleGVtcGVsIGthbiBkdSBr9nJhIFxmQmFwdFwtZ2V0IGRzZWxlY3RcLXVwZ3JhZGVcZlAuCisKK0b2ciBub3JtYWx0IGJydWsga29tbWVyIGR1IGF0dCB1cHB05GNrYSBhdHQgXGZCZHNlbGVjdFxmUCgxKSB0aWxsaGFuZGFo5WxsZXIKK2V0dCBiZWt25G1hcmUgc+R0dCBhdHQg5G5kcmEgcGFrZXRtYXJrZXJpbmdhcm5hLgorLmJyCisuCisuU0ggIllUVEVSTElHQVJFIEZVTktUSU9ORVIiCitZdHRlcmxpZ2FyZSBmdW5rdGlvbmVyIGthbiBlcmjlbGxhcyBnZW5vbSBhdHQgaW5zdGFsbGVyYSBu5WdvdCBhdiBm9mxqYW5kZQorcGFrZXQ6IFxmQmFwdFxmUCwgXGZCYXB0aXR1ZGVcZlAgb2NoIFxmQmRlYnN1bXNcZlAuCisuCisuU0ggIlNFIMRWRU4iCitcZkJhcHRpdHVkZVxmUCgxKSwgXGZCYXB0XGZQKDEpLCBcZkJkc2VsZWN0XGZQKDEpLCBcZkJkcGtnXC1kZWJcZlAoMSksIFxmQmRwa2dcLXF1ZXJ5XGZQKDEpLAorXGZCZGViXGZQKDUpLCBcZkJkZWJcLWNvbnRyb2xcZlAoNSksIFxmQmRwa2cuY2ZnXGZQKDUpIG9jaCBcZkJkcGtnXC1yZWNvbmZpZ3VyZVxmUCg4KS4KKy4KKy5TSCBQUk9HUkFNRkVMCitcZkJcLVwtbm9cLWFjdFxmUCBnZXIgb2Z0YXN0IG1pbmRyZSBpbmZvcm1hdGlvbiDkbiB2YWQgc29tIHZvcmUgaGrkbHBzYW10LgorLgorLlNIIEbWUkZBVFRBUkUKK1NlIFxmQi91c3Ivc2hhcmUvZG9jL2Rwa2cvVEhBTktTXGZQIGb2ciBsaXN0YW4g9nZlciBwZXJzb25lciBzb20gaGFyIGJpZHJhZ2l0Cit0aWxsIFxmQmRwa2dcZlAuCisuU0ggItZWRVJTxFRUTklORyIKK1BldGVyIEtyZWZ0aW5nIG9jaCBEYW5pZWwgTnlsYW5kZXIuCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9zdi9kcGtnLmNmZy41IGIvZHBrZy0xLjE2LjEuMS9tYW4vc3YvZHBrZy5jZmcuNQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42NjZmNzZmCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vc3YvZHBrZy5jZmcuNQpAQCAtMCwwICsxLDMxIEBACisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCBkcGtnLmNmZyA1IDIwMDlcLTA5XC0wNSBEZWJpYW5wcm9qZWt0ZXQgRHBrZ1wtc3ZpdGVuCisuU0ggTkFNTgorZHBrZy5jZmcgXC0gaW5zdORsbG5pbmdzZmlsIGb2ciBkcGtnCisuCisuU0ggQkVTS1JJVk5JTkcKK0ZpbGVuIGlubmVo5WxsZXIgZvZydmFsZGEgaW5zdORsbG5pbmdhciBm9nIgZHBrZy4gVmFyamUgcmFkIGJlc3TlciBhdiBlbgorZW5zYW0gZmxhZ2dhIHNvbSDkciBleGFrdCBkZW5zYW1tYSBzb20gZW4gbm9ybWFsIGtvbW1hbmRvcmFkc2ZsYWdnYSBm9nIKK2Rwa2csIGb2cnV0b20gZGUgaW5sZWRhbmRlIGJpbmRlc3RyZWNrZW4gdmlsa2EgaW50ZSBhbnbkbmRzIGjkci4gQ2l0YXR0ZWNrZW4KK3J1bnQgZmxhZ2d25HJkZW4gdGFzIGJvcnQuIEtvbW1lbnRhcmVyIORyIHRpbGzldG5hIGdlbm9tIGF0dCBpbmxlZGEgZW4gcmFkCittZWQgbnVtbWVydGVja2VuICgiXGZCI1xmUCIpLgorLgorLlNIIEZJTEVSCitcZkkvZXRjL2Rwa2cvZHBrZy5jZmcuZC9bMFwtOWFcLXpBXC1aX1wtXSpcZlAKKy5icgorXGZJL2V0Yy9kcGtnL2Rwa2cuY2ZnXGZQCisuYnIKK1xmSX4vLmRwa2cuY2ZnXGZQCisuCisuU0ggRtZSRkFUVEFSRQorU2UgXGZCL3Vzci9zaGFyZS9kb2MvZHBrZy9USEFOS1NcZlAgZvZyIGxpc3RhbiD2dmVyIHBlcnNvbmVyIHNvbSBoYXIgYmlkcmFnaXQKK3RpbGwgXGZCZHBrZ1xmUC4KKy4KKy5TSCAiU0UgxFZFTiIKK1xmQmRwa2dcZlAoMSkuCisuU0ggItZWRVJTxFRUTklORyIKK1BldGVyIEtyZWZ0aW5nIG9jaCBEYW5pZWwgTnlsYW5kZXIuCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9zdi9kc2VsZWN0LjEgYi9kcGtnLTEuMTYuMS4xL21hbi9zdi9kc2VsZWN0LjEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZWNlOTc4NwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL3N2L2RzZWxlY3QuMQpAQCAtMCwwICsxLDQ0MiBAQAorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlwiCisuXCIgVGhpcyBmaWxlIHdhcyBnZW5lcmF0ZWQgd2l0aCBwbzRhLiBUcmFuc2xhdGUgdGhlIHNvdXJjZSBmaWxlLgorLlwiCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuVEggZHNlbGVjdCAxIDIwMTFcLTA4XC0xNCBEZWJpYW5wcm9qZWt0ZXQgRGViaWFuCisuU0ggTkFNTgorZHNlbGVjdCBcLSBEZWJpYW5zIHBha2V0aGFudGVyaW5nc3NrYWwKKy4KKy5TSCBTWU5PUFMKK1xmQmRzZWxlY3RcZlAgW1xmSWZsYWdnYVxmUC4uLl0gW1xmSeV0Z+RyZFxmUF0KKy4KKy5TSCBCRVNLUklWTklORworXGZCZHNlbGVjdFxmUAor5HIgZXR0IGF2IGRldCBwcmlt5HJhIGFuduRuZGFyZ3LkbnNzbml0dGVuIGb2ciBhdHQgaGFudGVyYSBwYWtldCBw5SBldHQKK0RlYmlhbnN5c3RlbS4gSSBcZkJkc2VsZWN0XGZQcyBodXZ1ZG1lbnkga2FuIHN5c3RlbWFkbWluaXN0cmF09nJlbjoKKyBcLSBVcHBkYXRlcmEgbGlzdGFuIPZ2ZXIgdGlsbGfkbmdsaWdhIHBha2V0dmVyc2lvbmVyLAorIFwtIFZpc2Egc3RhdHVzIGb2ciBpbnN0YWxsZXJhZGUgb2NoIHRpbGxn5G5nbGlnYSBwYWtldCwKKyBcLSDEbmRyYSBwYWtldHZhbCBvY2ggaGFudGVyYSBiZXJvZW5kZW4sCisgXC0gSW5zdGFsbGVyYSBueWEgcGFrZXQgZWxsZXIgdXBwZ3JhZGVyYSB0aWxsIG55YXJlIHZlcnNpb25lci4KKy5QUAorXGZCZHNlbGVjdFxmUCBhcmJldGFyIHNvbSBldHQgc2thbCBydW50IFxmQmRwa2dcZlAoMSksIERlYmlhbnMKK2zlZ25pduVwYWtldGhhbnRlcmluZ3N2ZXJrdHlnLiBEZXQgaGFyIGVuIGZ1bGxza+RybXNwYWtldHZhbHNoYW50ZXJhcmUgc29tCitoYW50ZXJhciBiZXJvZW5kZW4gb2NoIGtvbmZsaWt0ZXIgbWVsbGFuIHBha2V0LiBO5HIgZGV0IGv2cnMgbWVkCithZG1pbmlzdHJhdPZyc2JlaPZyaWdoZXQga2FuIHBha2V0IGluc3RhbGxlcmFzLCB1cHBncmFkZXJhcyBvY2ggdGFzCitib3J0LiBPbGlrYSDldGtvbXN0bWV0b2RlciBrYW4ga29uZmlndXJlcmFzIGb2ciBhdHQgaORtdGEgdGlsbGfkbmdsaWcKK2luZm9ybWF0aW9uIG9tIHBha2V0dmVyc2lvbmVyIG9jaCBpbnN0YWxsZXJiYXJhIHBha2V0IGZy5W4KK3Bha2V0c2FtbGluZ2FyLiBCZXJvZW5kZSBw5SDldGtvbXN0bWV0b2RlbiBrYW4gZGVzc2Egc2FtbGluZ2FyIHZhcmEg9nBwbmEKK2Fya2l2c2VydnJhciBw5SBJbnRlcm5ldCwgbG9rYWxhIGFya2l2c2VydnJhciBlbGxlciBmaW5uYXMgcOUgY2RcLXJvbS4gRGVuCityZWtvbW1lbmRlcmFkZSDldGtvbXN0bWV0b2RlbiDkciBcZklhcHRcZlAsIHZpbGtlbiB0aWxsaGFuZGFo5WxscyBhdiBwYWtldGV0CitcZkJhcHRcZlAuCisuUFAKK1ZhbmxpZ3R2aXMgYW5yb3BhcyBcZkJkc2VsZWN0XGZQIHV0YW4gcGFyYW1ldHJhci4gRW4gaW50ZXJha3RpdiBtZW55IHZpc2FzIGTlLAordmlsa2VuIGdlciBhbnbkbmRhcmVuIGV0dCBhbnRhbCBoYW5kbGluZ3Nt9mpsaWdoZXRlci4gT20gZW4gaGFuZGxpbmcgZ2VzIHNvbQora29tbWFuZG9yYWRzZmxhZ2dhIHN0YXJ0YXMgZGVubmEgbWVkIGVuIGflbmcuIEZsZXJhIGtvbW1hbmRvcmFkc2ZsYWdnb3IKK2Zpbm5zIORuZOUgYXR0IHRpbGxn5SBm9nIgYXR0IGb2cuRuZHJhIGh1ciBcZkJkc2VsZWN0XGZQIGFyYmV0YXIgZWxsZXIgZvZyIGF0dAordmlzYSB5dHRlcmxpZ2FyZSBpbmZvcm1hdGlvbiBvbSBwcm9ncmFtbWV0LgorLgorLlNIIEZMQUdHT1IKK0FsbGEgZmxhZ2dvcm5hIGthbiBnZXMgYuVkZSBw5SBrb21tYW5kb3JhZGVuIG9jaCBpIFxmQmRzZWxlY3RcZlBzCitrb25maWd1cmF0aW9uc2ZpbCBcZkkvZXRjL2Rwa2cvZHNlbGVjdC5jZmdcZlAgZWxsZXIgZmlsZXJuYSBpCitrb25maWd1cmF0aW9uc2thdGFsb2dlbiBcZkkvZXRjL2Rwa2cvZHBrZy5jZmcuZC9cZlAuIEVuIHJhZCBpCitrb25maWd1cmF0aW9uc2ZpbGVuIORyIGFudGluZ2VuIGVuIGZsYWdnYSAocHJlY2lzIHNhbW1hIHNvbSBw5Qora29tbWFuZG9yYWRlbiwgbWVuIHV0YW4gaW5sZWRhbmRlIGJpbmRlc3RyZWNrKSBlbGxlciBlbiBrb21tZW50YXIgKG9tIGRlbgorYvZyamFyIG1lZCBldHQgXGZCI1xmUCkuCisuYnIKKy5UUCAKK1xmQlwtXC1hZG1pbmRpclxmUFxmSSBrYXRhbG9nXGZQCivEbmRyYXIgbmFtbmV0IHDlIGthdGFsb2dlbiBk5HIgZHBrZyBsZXRhciBlZnRlciBmaWxlcm5hICJzdGF0dXMiLAorImF2YWlsYWJsZSIgbS5mbC4gRvZydmFsIORyIFxmSS92YXIvbGliL2Rwa2dcZlAgb2NoIGR1IGL2ciBub3JtYWx0IHNldHQgaW50ZQorYmVo9nZhIORuZHJhIGRldC4KKy5UUCAKK1xmQlwtXC1kZWJ1Z1xmUFxmSSBmaWwgXGZQfFxmSSBcZlBcZkJcLURcZlBcZklmaWxcZlAKK1Ns5SBw5SBmZWxz9mtuaW5nc2zkZ2UuIEZlbHP2a25pbmdzaW5mb3JtYXRpb24gbGFncmFzIGkgXGZJZmlsXGZQLgorLlRQIAorXGZCXC1cLWV4cGVydFxmUAorU2zlciBw5SBleHBlcnRs5GdlLCBkdnMuIHZpc2FyIGludGUgaGrkbHBtZWRkZWxhbmRlbiBzb20ga2Fuc2tlIGthbiB2YXJhCitpcnJpdGVyYW5kZS4KKy5UUCAKK1xmQlwtXC1jb2xvdXJcZlB8XGZCXC1cLWNvbG9yXGZQIFxmSXNr5HJtZGVsXGZQOltcZklm9nJncnVuZFxmUF0sW1xmSWJha2dydW5kXGZQXVtcZkk6YXR0clxmUFtcZkkrYXR0cisuLlxmUF1dCitTdORsbGVyIGluIHNr5HJtZuRyZ2VyLiBEZXR0YSBmdW5nZXJhciBiYXJhIG9tIGRpbiBza+RybSBrYW4gdmlzYQorZuRyZ2VyLiBGbGFnZ2FuIGthbiBhbnbkbmRhcyBmbGVyYSBn5W5nZXIgKG9jaCBmdW5nZXJhciBi5HN0IGkKK1xmSWRzZWxlY3QuY2ZnXGZQKS4gVmFyamUgYW525G5kbmluZyDkbmRyYXIgZuRyZ2VuIChvY2gga2Fuc2tlIGFuZHJhIGF0dHJpYnV0KQorZvZyIGVuIGRlbCBhdiBza+RybWVuLiBTa+RybWRlbGFybmEg5HIsIHVwcGlmcuVuIG9jaCBuZXI6CisuUlMKKy5UUCAKK1xmQnRpdGxlXGZQCitTa+RybXRpdGVsbi4KKy5UUCAKK1xmQmxpc3RoZWFkXGZQCitIdXZ1ZHJhZGVuIG92YW5m9nIgcGFrZXRsaXN0YW4uCisuVFAgCitcZkJsaXN0XGZQCitEZW4gcnVsbGFuZGUgcGFrZXRsaXN0YW4gKG9jaCDkdmVuIHZpc3MgaGrkbHB0ZXh0KS4KKy5UUCAKK1xmQmxpc3RzZWxcZlAKK0RlbiB2YWxkYSBwb3N0ZW4gaSBsaXN0YW4uCisuVFAgCitcZkJwa2dzdGF0ZVxmUAorSSBsaXN0YW4g9nZlciBwYWtldCDkciBkZXQgaORyIHRleHRlbiBzb20gYW5nZXIgYWt0dWVsbHQgdGlsbHN05W5kIGb2ciB2YXJqZQorcGFrZXQuCisuVFAgCitcZkJwa2dzdGF0ZXNlbFxmUAorSSBsaXN0YW4g9nZlciBwYWtldCDkciBkZXQgaORyIHRleHRlbiBzb20gYW5nZXIgYWt0dWVsbHQgdGlsbHN05W5kIGb2ciBkZXQKK251IG1hcmtlcmFkZSBwYWtldGV0LgorLlRQIAorXGZCaW5mb2hlYWRcZlAKK0h1dnVkcmFkZW4gc29tIHZpc2FyIGluZm9ybWF0aW9uIG9tIHRpbGxzdOVuZGV0IGb2ciBkZXQgbnUgbWFya2VyYWRlCitwYWtldGV0LgorLlRQIAorXGZCaW5mb2Rlc2NcZlAKK1Bha2V0ZXRzIGtvcnRhIGJlc2tyaXZuaW5nLgorLlRQIAorXGZCaW5mb1xmUAorQW525G5kcyBm9nIgYXR0IHZpc2EgcGFrZXRpbmZvcm1hdGlvbiwgc+Vzb20gcGFrZXRldHMgYmVza3Jpdm5pbmcuCisuVFAgCitcZkJpbmZvZm9vdFxmUAorRGVuIHNpc3RhIHJhZGVuIHDlIHNr5HJtZW4gbuRyIHBha2V0IHbkbGpzLgorLlRQIAorXGZCcXVlcnlcZlAKK0FuduRuZHMgZvZyIGF0dCB2aXNhIGZy5Wdvci4KKy5UUCAKK1xmQmhlbHBzY3JlZW5cZlAKK0bkcmcgcOUgaGrkbHBza+RybWFyLgorLlJFCisuUAorRWZ0ZXIgc2vkcm1kZWxlbiBm9mxqZXIgZXR0IGtvbG9uIG9jaCBm5HJnYW5naXZlbHNlbi4gRHUga2FuIGFuZ2UgYW50aW5nZW4KK2b2cmdydW5kc2bkcmdlbiwgYmFrZ3J1bmRzZuRyZ2VuIGVsbGVyIGLlZGEgdHblLCB2aWxrYSBrb21tZXIgYXR0IGVyc+R0dGEgZGUKK2lua29tcGlsZXJhZGUgZuRyZ2VybmEuIEFuduRuZCBkZSBub3JtYWxhIGN1cnNlc1wtbmFtbmVuIGb2ciBm5HJnZXJuYS4KKy5QCitEdSBrYW4g5HZlbiBhbmdlIHl0dGVybGlnYXJlIGV0dCBrb2xvbiBlZnRlciBm5HJnYW5naXZlbHNlbiBvY2ggZORyIGdlCithdHRyaWJ1dC4gRGV0dGEg5HIgZW4gbGlzdGEgbWVkIGV0dCBlbGxlciBmbGVyYSBhdHRyaWJ1dCwgYXZkZWxhZGUgbWVkCitwbHVzdGVja2VuICgiKyIpLiBUaWxsZ+RuZ2xpZ2EgYXR0cmlidXQg5HIgKGFsbGEgZnVuZ2VyYXIgaW50ZSBw5SBhbGxhCit0ZXJtaW5hbGVyKTogbm9ybWFsLCBzdGFuZG91dCAodXRo5HZkKSwgdW5kZXJsaW5lICh1bmRlcnN0cnVrZW4pLCByZXZlcnNlCisob2125G5kKSwgYmxpbmssIGJyaWdodCAobGp1cyksIGRpbSAobfZyayksIGJvbGQgKGZldCkKKy5UUCAKK1xmQlwtXC1oZWxwXGZQCitWaXNhciBlbiBrb3J0IGhq5GxwdGV4dCBvY2ggZ2VyIGx5Y2thdCBhdnNsdXQuCisuVFAgCitcZkJcLVwtdmVyc2lvblxmUAorVmlzYXIgdmVyc2lvbnNpbmZvcm1hdGlvbiBvY2ggZ2VyIGx5Y2thdCBhdnNsdXQuCisuCisuU0ggxVRHxFJERVIKK07kciBcZkJkc2VsZWN0XGZQIHN0YXJ0YXMga2FuIGRldCB1dGb2cmEgZvZsamFuZGUg5XRn5HJkZXIsIGFudGluZ2VuIGRpcmVrdCBvbQorZGUgYW5nZXMgcOUga29tbWFuZG9yYWRlbiBlbGxlciBnZW5vbSBhdHQgZnLlZ2EgYW525G5kYXJlbiBtZWQgZW4gbWVueSBvbQorZGV0IGv2cnMgaW50ZXJha3RpdnQ6CisuU1MgIkFjY2VzcyAoxXRrb21zdCkiCitW5GxqZXIgb2NoIGtvbmZpZ3VyZXJhciBlbiAi5XRrb21zdG1ldG9kIiBm9nIgYXR0IGtvbW1hIOV0IHBha2V0c2FtbGluZ2VuLgorLnNwCitTb20gc3RhbmRhcmQgZ2VyIFxmQmRzZWxlY3RcZlAgZmxlcmEgb2xpa2EgbWV0b2Rlciwgc+Vzb20gXGZJY2Ryb21cZlAsCitcZkltdWx0aV9jZFxmUCwgXGZJbmZzXGZQLCBcZkltdWx0aV9uZnNcZlAsIFxmSWhhcmRkaXNrXGZQLCBcZkltb3VudGVkXGZQLCBcZkltdWx0aV9tb3VudFxmUCwKK1xmSWZsb3BweVxmUCBvY2ggXGZJZnRwXGZQLCBtZW4gYW5kcmEgcGFrZXQgZHUgaW5zdGFsbGVyYXIga2FuIHRpbGxoYW5kYWjlbGxhCit5dHRlcmxpZ2FyZSBtZXRvZGVyLCB0LmV4IGdlcyDldGtvbXN0bWV0b2RlbiBcZklhcHRcZlAgYXYgcGFrZXRldCBcZkJhcHRcZlAuCisuc3AKK8V0a29tc3RtZXRvZGVuIFxmSWFwdFxmUCByZWtvbW1lbmRlcmFzIHN0YXJrdC4KKy5zcAorLlNTICJVcGRhdGUgKFVwcGRhdGVyYSkiCitVcHBkYXRlcmEgZGF0YWJhc2VuIG1lZCB0aWxsZ+RuZ2xpZ2EgcGFrZXQuCisuc3AKK0jkbXRhciBlbiBsaXN0YSD2dmVyIHRpbGxn5G5nbGlnYSBwYWtldCBmcuVuIHBha2V0c2FtbGluZ2VuIHNvbQora29uZmlndXJlcmF0cyBm9nIgZGVuIGFrdHVlbGxhIOV0a29tc3RtZXRvZGVuLCBvY2ggdXBwZGF0ZXJhciBkcGtnOnMKK2RhdGFiYXMuIFBha2V0bGlzdG9yIGZpbm5zIG5vcm1hbHQgcOUgcGFrZXRzYW1saW5nYXJuYSBpIGZpbGVyIHZpZCBuYW1uCitcZkJQYWNrYWdlc1xmUCBlbGxlciBcZkJQYWNrYWdlcy5nelxmUC4gRGVzc2EgZmlsZXIga2FuIGdlbmVyZXJhcyBhdiBkZSBzb20KK3VuZGVyaOVsbGVyIHNhbWxpbmdhcm5hIGdlbm9tIGF0dCBhbnbkbmRhIHByb2dyYW1tZXQKK1xmQmRwa2dcLXNjYW5wYWNrYWdlcygxKVxmUC4KKy5zcAorVmlsa2EgZGV0YWxqZXIgc29tIGdlcyBvbSB1cHBkYXRlcmluZ2VuIGJlcm9yIHDlIGh1ciDldGtvbXN0bWV0b2RlbiDkcgoraW1wbGVtZW50ZXJhZC4gTm9ybWFsdCDkciBwcm9jZXNzZW4gc2rkbHZm9nJrbGFyYW5kZSBvY2ggYmVo9nZlciBpbmdlbgoraW50ZXJha3Rpb24gbWVkIGFuduRuZGFyZW4uCisuc3AKKy5TUyAiU2VsZWN0IChW5GxqKSIKK1Zpc2FyIGVsbGVyIHbkbGplciBwYWtldHZhbCBvY2ggYmVyb2VuZGVuLgorLnNwCitEZXR0YSDkciBcZkJkc2VsZWN0XGZQcyBodXZ1ZGZ1bmt0aW9uLiAgUOUgdmFsc2vkcm1lbiBrYW4gYW525G5kYXJlbiB0aXR0YSBw5QorZW4gbGlzdGEg9nZlciBzYW10bGlnYSB0aWxsZ+RuZ2xpZ2Egb2NoIGluc3RhbGxlcmFkZSBwYWtldC4gTuRyIGRldCBr9nJzIG1lZAorYWRtaW5pc3RyYXT2cnNiZWj2cmlnaGV0IORyIGRldCDkdmVuIG32amxpZ3QgYXR0IGludGVyYWt0aXZ0IORuZHJhIHBha2V0ZXRzCit2YWxzdGF0dXMuIFxmQmRzZWxlY3RcZlAgc3DlcmFyIHZpbGtlbiBpbnZlcmtuaW5nIGRlc3NhIORuZHJpbmdhciBm5XIgcOUKK2Jlcm9lbmRlIGVsbGVyIG1vdHN0cmlkaWdhIHBha2V0LgorLnNwCitO5HIgZW4ga29uZmxpa3QgZWxsZXIgZXR0IG1pc3NseWNrYXQgYmVyb2VuZGUgdXBwdORja3MgdmlzYXMgZW4gZGVsc2vkcm0gbWVkCitt9mpsaWdoZXQgYXR0IGz2c2EgYmVyb2VuZGV0LiBQ5SBkZW5uYSBza+RybSB2aXNhcyBlbiBsaXN0YSD2dmVyIG1vdHN0cmlkaWdhCitlbGxlciBiZXJvZW5kZSBwYWtldCwgb2NoIGb2ciB2YXJqZSBwYWtldCBzb20gbGlzdGFzIHZpc2FzIGRlc3MKK29yc2FrLiBBbnbkbmRhcmVuIGthbiBhcHBsaWNlcmEgZGUgYXYgXGZCZHNlbGVjdFxmUCByZWtvbW1lbmRlcmFkZSDkbmRyaW5nYXJuYSwKK3Nq5Gx2IORuZHJhIGRlbSwgZWxsZXIgYmFja2EgYWxsYSDkbmRyaW5nYXIsIGlua2x1c2l2ZSBkZSBzb20gZ2pvcmRlIGF0dCBkZQorZWogaGFudGVyYWRlIGJlcm9lbmRlbmEgZWxsZXIga29uZmxpa3Rlcm5hIHVwcHN0b2QgdGlsbCBhdHQgYvZyamEgbWVkLgorLnNwCitBbnbkbmRuaW5nZW4gYXYgZGVuIGludGVyYWt0aXZhIHBha2V0dmFsc2hhbnRlcmFyc2vkcm1lbiBiZXNrcml2cyBpCit5dHRlcmxpZ2FyZSBkZXRhbGogbmVkYW4uCisuc3AKKy5TUyAiSW5zdGFsbCAoSW5zdGFsbGVyYSkiCitJbnN0YWxsZXJhciB2YWxkYSBwYWtldC4KKy5zcAorRGVuIHZhbGRhIOV0a29tc3RtZXRvZGVuIGjkbXRhciBpbnN0YWxsZXJiYXJhIGVsbGVyIHVwcGdyYWRlcmJhcmEgcGFrZXQgZnLlbgorcmVsZXZhbnRhIHBha2V0c2FtbGluZ2FyIG9jaCBpbnN0YWxsZXJhciBkZW0gbWVkIFxmQmRwa2dcZlAuIEJlcm9lbmRlIHDlIGh1cgor5XRrb21zdG1ldG9kZW4gaW1wbGVtZW50ZXJhdHMgaORtdGFzIGFudGluZ2VuIGFsbGEgcGFrZXQgaW5uYW4KK2luc3RhbGxhdGlvbmVuLCBlbGxlciBz5SBo5G10YXMgZGUgbuRyIHPlIORyIG72ZHbkbmRpZ3QuIE7lZ3JhCivldGtvbXN0bWV0b2RlciBrb21tZXIg5HZlbiB0YSBib3J0IHBha2V0IHNvbSBtYXJrZXJhZGVzIGb2ciBib3J0dGFnbmluZy4KKy5zcAorT20gZXR0IGZlbCB1cHBzdG9kIHVuZGVyIGluc3RhbGxhdGlvbmVuIORyIHJla29tbWVuZGVyYXMgZGV0IHZhbmxpZ2VuIGF0dAora/ZyYSBpbnN0YWxsYXRpb25lbiBw5SBueXR0LiBJIGRlIGZsZXN0YSBmYWxsIGtvbW1lciBwcm9ibGVtZXQgZvZyc3Zpbm5hCitlbGxlciBs9nNhcy4gT20gcHJvYmxlbWV0IGt2YXJzdOVyIGVsbGVyIGRlbiBpbnN0YWxsYXRpb24gc29tIGdlbm9tZvZyZGVzCit2YXIgZmVsYWt0aWcsIGJlciB2aSBkaWcgdW5kZXJz9mthIG9yc2FrZW4gb2NoIG9tc3TkbmRpZ2hldGVybmEgb2NoCityYXBwb3J0ZXJhIGV0dCBmZWwgaSBEZWJpYW5zIGZlbHJhcHBvcnRlcmluZ3NzeXN0ZW0uIEluc3RydWt0aW9uZXIgb20gaHVyIGR1Citn9nIgZGV0IGZpbm5zIHDlIGh0dHA6Ly9idWdzLmRlYmlhbi5vcmcvIGVsbGVyIGdlbm9tIGF0dCBs5HNhCitkb2t1bWVudGF0aW9uZW4gZvZyIFxmQmJ1Z1xmUCgxKSBlbGxlciBcZkJyZXBvcnRidWdcZlAoMSksIG9tIGRlc3NhIORyCitpbnN0YWxsZXJhZGUuCisuc3AKK0RldGFsamVybmEgZvZyIGh1ciBpbnN0YWxsYXRpb25lbiBnZW5vbWb2cnMgYmVyb3IgcOUgaHVyIOV0a29tc3RtZXRvZGVuIORyCitpbXBsZW1lbnRlcmFkLiBVcHBt5HJrc2FtaGV0IG9jaCBpbmRhdGEgZnLlbiBhbnbkbmRhcmVuIGthbiBiZWj2dmFzIHVuZGVyCitpbnN0YWxsYXRpb24sIGtvbmZpZ3VyYXRpb24gZWxsZXIgYm9ydHRhZ25pbmcgYXYgcGFrZXQsIGJlcm9lbmRlIHDlIGh1cgordXR2ZWNrbGFyc2tyaXB0ZW4gaSBwYWtldGVuIHNlciB1dC4gVmlzc2EgcGFrZXQgYW525G5kZXIKK1xmQmRlYmNvbmZcZlAoMSlcLWJpYmxpb3Rla2V0LCB2aWxrZXQgbfZqbGlnZ/ZyIG1lciBmbGV4aWJlbCwgZWxsZXIgdGlsbCBvY2ggbWVkCithdXRvbWF0aXNlcmFkLCBpbnN0YWxsYXRpb24gb2NoIGluc3TkbGxuaW5nLgorLnNwCisuU1MgIkNvbmZpZyAoS29uZmlndXJlcmEpIgorS29uZmlndXJlcmEgcGFrZXQgc29tIHRpZGlnYXJlIGluc3RhbGxlcmF0cywgbWVuIGVqIHRpbGwgZnVsbG8KK2tvbmZpZ3VyZXJhdHMuCisuc3AKKy5TUyAiUmVtb3ZlIChSYWRlcmEpIgorVGFyIGJvcnQgZWxsZXIgcmFkZXJhciBoZWx0IGluc3RhbGxlcmFkZSBwYWtldCBzb20gbWFya2VyYXRzIGb2cgorYm9ydHRhZ25pbmcuCisuc3AKKy5TUyAiUXVpdCAoQXZzbHV0YSkiCitBdnNsdXRhciBcZkJkc2VsZWN0XGZQCisuc3AKK0F2c2x1dGFyIGRzZWxlY3QgbWVkIGZlbGtvZCBub2xsIChseWNrYXQpLgorLnNwCisuCisuU0ggUGFrZXR2YWxzaGFudGVyaW5nCisuc3AKKy5TUyBJbnRyb2R1a3Rpb24KKy5zcAorXGZCZHNlbGVjdFxmUCB1dHPkdHRlciBkaXJla3QgYWRtaW5pc3RyYXT2cmVuIGb2ciBkZWxhciBhdiBkZW4ga29tcGxleGl0ZXQgZGV0Citpbm5lYuRyIGF0dCBoYW50ZXJhIHN0b3JhIG3kbmdkZXIgcGFrZXQgbWVkIG3lbmdhIGluYvZyZGVzIGJlcm9lbmRlbi4gRvZyIGVuCithbnbkbmRhcmUgc29tIGludGUg5HIgbuRyYSBm9nJ0cm9nZW4gbWVkIGtvbmNlcHRlbiBvY2ggaHVyIERlYmlhbnMKK3Bha2V0aGFudGVyaW5nc3N5c3RlbSBmdW5nZXJhciBrYW4gZGV0IHRlIHNpZyBy5HR0IHPlIPZ2ZXJ25GxkaWdhbmRlLiBUcm90cworYXR0IFxmQmRzZWxlY3RcZlBzIG3lbHPkdHRuaW5nIORyIGF0dCBm9nJlbmtsYSBhZG1pbmlzdHJhdGlvbiBvY2ggaGFudGVyaW5nIGF2CitwYWtldCDkciBkZXQgYmFyYSBlbiBkZWwgYXYgaGVsaGV0ZW4sIG9jaCBrYW4gaW50ZSBhbnRhcyB2YXJhIGV0dAordGlsbHLkY2tsaWd0IHN1YnN0aXR1dCBm9nIgYWRtaW5pc3RyYXT2cnNm5HJkaWdoZXQgb2NoCitcLWb2cnN05WVsc2UuIEFuduRuZGFyZW4g5HIgdHZ1bmdlbiBhdHQgaGEga3Vuc2thcCBvbSBkZXQgdW5kZXJsaWdnYW5kZQorcGFrZXRzeXN0ZW1ldCBpIERlYmlhbi4gT20gdHZpdmVsIGb2cmVsaWdnZXIsIGtvbnN1bHRlcmEgbWFudWFsc2lkYW4KK1xmQmRwa2dcZlAoMSkgb2NoIERlYmlhbnMgcG9saWN5bWFudWFsLgorLnNwCitT5SBs5G5nZSBpbnRlIFxmQmRzZWxlY3RcZlAga/ZycyBpIGV4cGVydFwtIGVsbGVyIGRpcmVrdGzkZ2UgdmlzYXMgZW4gaGrkbHBza+RybQorZvZyc3QgbuRyIHZhbCBn9nJzIGkgbWVueW4uICBBbnbkbmRhcmVuIHJla29tbWVuZGVyYXMgXGZJ5SBkZXQgYmVzdORtZGFzdGVcZlAKK2F0dCBzdHVkZXJhIGFsbCBpbmZvcm1hdGlvbiBzb20gZmlubnMgaSBkaXJla3RoauRscHNr5HJtYXJuYSBu5HIgZGUgZHlrZXIKK3VwcC4gRGlyZWt0aGrkbHBza+RybWFybmEga2FuIG7kciBzb20gaGVsc3QgbuVzIHZpYSB0YW5nZW50ZW4gXGZCIj8iXGZQLgorLnNwCisuU1MgU2vkcm11dHNlZW5kZQorLnNwCitWYWxza+RybWVuIORyIG5vcm1hbHQgZGVsYXQgaSBlbiD2dnJlIG9jaCBlbiBuZWRyZSBoYWx2YS4gRGVuIPZ2cmUgaGFsdmFuCit2aXNhciBlbiBsaXN0YSD2dmVyIHBha2V0OyBlbiBtYXJrZXJpbmdzcmFkIGthbiB25GxqYSBwYWtldCBpbmRpdmlkdWVsbHQKK2VsbGVyIGkgZ3J1cHAgKG7kciB0aWxs5G1wbGlndCkgZ2Vub20gYXR0IHbkbGphIGVuIGdydXBwcnVicmlrLiBEZW4gbmVkcmUKK2hhbHZhbiBhdiBza+RybWVuIHZpc2FyIGRldGFsamVyIG9tIGRldCBwYWtldCBzb20ganVzdCBudSB2aXNhcyBpIGRlbiD2dnJlCitoYWx2YW4uIFZpbGtlbiBzb3J0cyBkZXRhbGplciBzb20gdmlzYXMga2FuIHZhcmllcmFzLgorLnNwCitHZW5vbSBhdHQgdHJ5Y2thIFxmQiJJIlxmUCB25HhsYXMgdnluIG1lbGxhbiBlbiBmdWxsc2vkcm1zdmlzbmluZyBhdgorcGFrZXRsaXN0YW4sIGVuIGb2cnN0b3JhZCB2eSBm9nIgcGFrZXRkZXRhbGplciwgZWxsZXIgZW4gc2vkcm0gbWVkIHR25SBsaWthCitzdG9yYSBkZWxhci4KKy5zcAorLlNTIFBha2V0ZGV0YWxqdnkKKy5zcAorUGFrZXRkZXRhbGp2eW4gdmlzYXIgbm9ybWFsdCBkZW4gdXT2a2FkZSBwYWtldGJlc2tyaXZuaW5nZW4gZvZyIGRldCBwYWtldAorc29tIGp1c3QgbnUg5HIgbWFya2VyYXQgaSBwYWtldHZhbGxpc3Rhbi4KK1ZpbGtlbiBzb3J0cyBkZXRhbGplciBzb20gdmlzYXMga2FuIHbkeGxhcyBnZW5vbSBhdHQgdHJ5Y2thIHDlIFxmQiJpIlxmUCwKK3ZpbGtlbiB25HhsYXIgbWVsbGFuOgorIFwtIGRlbiB1dPZrYWRlIGJlc2tyaXZuaW5nZW4KKyBcLSBrb250cm9sbGluZm9ybWF0aW9uZW4gZvZyIGRlbiBpbnN0YWxsZXJhZGUgdmVyc2lvbmVuCisgXC0ga29udHJvbGxpbmZvcm1hdGlvbmVuIGb2ciBkZW4gdGlsbGfkbmdsaWdhIHZlcnNpb25lbgorLnNwCitJIGVuIGJlcm9lbmRlbPZzbmluZ3Nza+RybSDkciBkZXQg5HZlbiBt9mpsaWd0IGF0dCB2aXNhIHNwZWNpZmlrYQorb3RpbGxmcmVkc3N05GxsZGEgYmVyb2VuZGVuIGVsbGVyIGtvbmZsaWt0ZXIgZvZyIHBha2V0ZXQuCisuc3AKKy5TUyBQYWtldHN0YXR1c2xpc3RhCisuc3AKK0h1dnVkdmFsc2vkcm1lbiB2aXNhciBlbiBsaXN0YSD2dmVyIHNhbXRsaWdhIHBha2V0IHNvbSDkciBr5G5kYSBm9nIgRGViaWFucworcGFrZXRoYW50ZXJpbmdzc3lzdGVtLCB2aWxrZXQgaW5iZWdyaXBlciBwYWtldCBpbnN0YWxsZXJhZGUgcOUgc3lzdGVtZXQgb2NoCitwYWtldCBr5G5kYSBmcuVuIGRhdGFiYXNlbiD2dmVyIHRpbGxn5G5nbGlnYSBwYWtldC4KKy5zcAorRvZyIHZhcmplIHBha2V0IHZpc2FyIGxpc3RhbiBwYWtldGV0cyBzdGF0dXMsIHByaW9yaXRldCwgYXZkZWxuaW5nLAoraW5zdGFsbGVyYWRlIG9jaCB0aWxsZ+RuZ2xpZ2EgdmVyc2lvbmVyLCBwYWtldGV0cyBuYW1uIG9jaCBkZXNzIGtvcnRhCitiZXNrcml2bmluZywgYWxsdCBw5SBlbiByYWQuIEdlbm9tIGF0dCB0cnlja2EgcOUgdGFuZ2VudGVuIFxmQiJWIlxmUCBzbOVzCit2aXNuaW5nZW4gYXYgZGVuIGluc3RhbGxlcmFkZSBvY2ggZGVuIGFrdGl2YSB2ZXJzaW9uZW4gcOUgb2NoIGF2LiBHZW5vbSBhdHQKK3RyeWNrYSBw5SB0YW5nZW50ZW4gXGZCInYiXGZQIHbkeGxhcyBwYWtldHN0YXR1c3Zpc25pbmdlbiBtZWxsYW4gb3JkcmlrIG9jaAorZvZya29ydGFkLCBtZWQgZGVuIGb2cmtvcnRhZGUgdmlzbmluZ2VuIHNvbSBm9nJ2YWwuCisuc3AKK0RlbiBm9nJrb3J0YWRlIHN0YXR1c2luZGlrZXJpbmdlbiBiZXN05XIgYXYgZnlyYSBkZWxhcjogZW4gZmVsZmxhZ2dhLCB2aWxrZW4KK25vcm1hbHQgc2thbGwgdmFyYSBibGFuaywgYWt0dWVsbCBzdGF0dXMsIHNlbmFzdCB2YWxkIHN0YXR1cyBvY2ggbnUgdmFsZAorc3RhdHVzLiBEZSBm9nJzdGEgdHblIGFuZ2VyIHBha2V0ZXRzIGZha3Rpc2thIHN0YXR1cywgZGV0IGFuZHJhIHBhcmV0CitiZXNrcml2ZXIgdmFsZXQgc29tIGdqb3J0cyBhdiBhbnbkbmRhcmVuLgorLnNwCitEZXR0YSDkciB2YWQgZGUgb2xpa2EgcGFrZXRzdGF0dXNpbmRpa2F0b3Jlcm5hIGkgZGV0IGb2cmtvcnRhZGUgbORnZXQKK2JldHlkZXI6CisgRmVsZmxhZ2dhOgorICBcZkl0b21cZlAgICAgIGluZ2V0IGZlbAorICBcZkJSXGZQICAgICAgIGFsbHZhcmxpZ3QgZmVsLCBrcuR2ZXIgb21pbnN0YWxsYXRpb24KKyBJbnN0YWxsZXJhZCBzdGF0dXM6CisgIFxmSXRvbVxmUCAgICAgZWogaW5zdGFsbGVyYXQKKyAgXGZCKlxmUCAgICAgICBoZWx0IGluc3RhbGxlcmF0IG9jaCBrb25maWd1cmVyYXQKKyAgXGZCXC1cZlAgICAgICAgZWogaW5zdGFsbGVyYXQsIG1lbiBrb25maWd1cmF0aW9uc2ZpbGVyIGthbiBrdmFyc3TlCisgIFxmQlVcZlAgICAgICAgdXBwYWNrYXQgbWVuIORubnUgZWoga29uZmlndXJlcmF0CisgIFxmQkNcZlAgICAgICAgaGFsdmtvbmZpZ3VyZXJhdCAoZXR0IGZlbCB1cHBzdG9kKQorICBcZkJJXGZQICAgICAgIGhhbHZpbnN0YWxsZXJhdCAoZXR0IGZlbCB1cHBzdG9kKQorIEFrdHVlbGxhIG9jaCBiZWfkcmRhIHZhbDoKKyAgXGZCKlxmUCAgICAgICBtYXJrZXJhdCBm9nIgaW5zdGFsbGF0aW9uIGVsbGVyIHVwcGdyYWRlcmluZworICBcZkJcLVxmUCAgICAgICBtYXJrZXJhdCBm9nIgYm9ydHRhZ25pbmcsIGtvbmZpZ3VyYXRpb25zZmlsZXIgbORtbmFzIGt2YXIKKyAgXGZCPVxmUCAgICAgICBo5WxsOiBwYWtldGV0IGtvbW1lciBpbnRlIGF0dCBy9nJhcyBhbGxzCisgIFxmQl9cZlAgICAgICAgbWFya2VyYXQgZvZyIGJvcnR0YWduaW5nLCB0YXIg5HZlbiBib3J0IGtvbmZpZ3VyYXRpb24KKyAgXGZCblxmUCAgICAgICBwYWtldGV0IORyIG55dHQgb2NoIGhhciDkbm51IGludGUgbWFya2VyYXRzCisuc3AKKy5TUyAiTWFya/ZyXC0gb2NoIHNr5HJtcvZyZWxzZXIiCisuc3AKK1Bha2V0dmFsbGlzdGFuIG9jaCBiZXJvZW5kZWtvbmZsaWt0c2z2c25pbmduc2vkcm1hcm5hIGthbiBuYXZpZ2VyYXMgZ2Vub20KK2F0dCBhbnbkbmRhIHL2cmVsc2Vrb21tYW5kb24ga29wcGxhZGUgdGlsbCBm9mxqYW5kZSB0YW5nZW50ZXI6CisuYnIKKyAgXGZCcCwgVXBwLCBrXGZQICAgICAgICAgICBmbHl0dGEgbWFya2VyaW5nc3JhZCB1cHAKKyAgXGZCbiwgTmVkLCBqXGZQICAgICAgICAgICBmbHl0dGEgbWFya2VyaW5nc3JhZCBuZWQKKyAgXGZCUCwgUGd1cCwgQmFrc3RlZ1xmUCAgICBydWxsYSBsaXN0YSAxIHNpZGEgdXBwCisgIFxmQk4sIFBnZG4sIE1lbGxhbnNsYWdcZlAgcnVsbGEgbGlzdGEgMSBzaWRhIG5lZAorICBcZkJecFxmUCAgICAgICAgICAgICAgICAgIHJ1bGxhIGxpc3RhIDEgcmFkIHVwcAorICBcZkJeblxmUCAgICAgICAgICAgICAgICAgIHJ1bGxhIGxpc3RhIDEgcmFkIG5lZAorICBcZkJ0LCBIb21lXGZQICAgICAgICAgICAgIGhvcHBhIHRpbGwgbGlzdGFucyBi9nJqYW4KKyAgXGZCZSwgRW5kXGZQICAgICAgICAgICAgICBob3BwYSB0aWxsIGxpc3RhbnMgc2x1dAorICBcZkJ1XGZQICAgICAgICAgICAgICAgICAgIHJ1bGxhIGluZm8gMSBzaWRhIHVwcAorICBcZkJkXGZQICAgICAgICAgICAgICAgICAgIHJ1bGxhIGluZm8gMSBzaWRhIG5lZAorICBcZkJedVxmUCAgICAgICAgICAgICAgICAgIHJ1bGxhIGluZm8gMSByYWQgdXBwCisgIFxmQl5kXGZQICAgICAgICAgICAgICAgICAgcnVsbGEgaW5mbyAxIHJhZCBuZWQKKyAgXGZCQiwgVuRuc3RlcnBpbFxmUCAgICAgICBwYW5vcmVyYSB2eSAxLzMgc2vkcm0gduRuc3RlcgorICBcZkJGLCBI9mdlcnBpbFxmUCAgICAgICAgIHBhbm9yZXJhIHZ5IDEvMyBza+RybSBo9mdlcgorICBcZkJeYlxmUCAgICAgICAgICAgICAgICAgIHBhbm9yZXJhIHZ5IDEgdGVja2VuIHbkbnN0ZXIKKyAgXGZCXmZcZlAgICAgICAgICAgICAgICAgICBwYW5vcmVyYSB2eSAxIHRlY2tlbiBo9mdlcgorLnNwCisuU1MgIlP2a25pbmcgb2NoIHNvcnRlcmluZyIKKy5zcAorRGV0IGflciBhdHQgc/ZrYSBpIHBha2V0bGlzdGFuIGVmdGVyIHBha2V0bmFtbi4gRGV0dGEgZ/ZycyBnZW5vbSBhdHQgdHJ5Y2thCitcZkIiLyJcZlAgb2NoIGFuZ2UgZW4gZW5rZWwgc/Zrc3Ry5G5nLiBTdHLkbmdlbiB0b2xrYXMgc29tIGV0dCByZWd1bGrkcnQKK3V0dHJ5Y2sgZW5saWd0IFxmQnJlZ2V4XGZQKDcpLiBPbSBkdSBs5GdnZXIgdGlsbCBcZkIiL2QiXGZQIHRpbGwgc/ZrdXR0cnlja2V0Citrb21tZXIgZHNlbGVjdCDkdmVuIHP2a2EgYmVza3Jpdm5pbmdhci4gT20gZHUgbORnZ2VyIHRpbGwgXGZCIi9pIlxmUCBrb21tZXIKK3P2a25pbmdlbiBhdHQgaWdub3JlcmEgc2tpbGxuYWRlciBtZWxsYW4gZ2VtZW5lciBvY2ggdmVyc2FsZXIuIER1IGthbgora29tYmluZXJhIGRlc3NhIGLlZGEgc3VmZml4IHPlIGjkcjogXGZCIi9pZCJcZlAuIFP2a25pbmdlbiBrYW4gdXBwcmVwYXMgZ2Vub20KK2F0dCB0cnlja2EgcOUgXGZCIm4iXGZQIGVsbGVyIFxmQiJcZSJcZlAgdGlsbHMgZGV0IPZuc2thZGUgcGFrZXRldCBoaXR0YXMuIE9tCitz9mtuaW5nZW4gbuVyIHNsdXRldCBw5SBsaXN0YW4gaG9wcGFyIGRlbiB0aWxsIGL2cmphbiBvY2ggZm9ydHPkdHRlcgorc/ZrbmluZ2VuIGTkcmlmcuVuLgorLnNwCitMaXN0YW5zIHNvcnRlcmluZ3NvcmRuaW5nIGthbiDkbmRyYXMgZ2Vub20gYXR0IHRyeWNrYSBw5SB0YW5nZW50ZXJuYQorXGZCIm8iXGZQIG9jaCBcZkIiTyJcZlAgdXBwcmVwYWRlIGflbmdlci4KK0b2bGphbmRlIG5pbyBzb3J0ZXJpbmdzb3JkbmluZ2FyIGthbiB25GxqYXM6CisgYWxmYWJldGlzayAgICAgICAgIHRpbGxn5G5nbGlnICAgICAgICAgICAgc3RhdHVzCisgcHJpb3JpdGV0K3Nla3Rpb24gIHRpbGxn5G5nbGlnK3ByaW9yaXRldCAgc3RhdHVzK3ByaW9yaXRldAorIHNla3Rpb24rcHJpb3JpdGV0ICB0aWxsZ+RuZ2xpZytzZWt0aW9uICAgIHN0YXR1cytzZWt0aW9uCisuYnIKK07kciBkZXQgaW50ZSBhbmdlcyBleHBsaWNpdCBvdmFuIGFuduRuZHMgYWxmYWJldGlzayBvcmRuaW5nIHNvbSBkZW4gc2x1dGxpZ2EKK3NvcnRlcmluZ3NueWNrZWxuLgorLnNwCisuU1MgIsRuZHJhIHZhbCIKKy5zcAorRGVuIGJlZ+RyZGEgdmFsc3RhdHVzZW4gZvZyIHZhcmplIGluZGl2aWR1ZWxsdCBwYWtldCBrYW4g5G5kcmFzIG1lZCBm9mxqYW5kZQora29tbWFuZG9uOgorICBcZkIrLCBJbnNlcnRcZlAgICAgaW5zdGFsbGVyYSBlbGxlciB1cHBncmFkZXJhCisgIFxmQj0sIEhcZlAgICAgICAgICBo5WxsIGkgYWt0dWVsbHQgdGlsbHN05W5kIG9jaCB2ZXJzaW9uCisgIFxmQjosIEdcZlAgICAgICAgICBhdmJyeXQgaOVsbDogdXBwZ3JhZGVyYSBlbGxlciBs5G1uYSBvaW5zdGFsbGVyYWQKKyAgXGZCXC0sIERlbGV0ZVxmUCAgICB0YSBib3J0LCBtZW4gbORtbmEga3ZhciBrb25maWd1cmF0aW9uCisgIFxmQl9cZlAgICAgICAgICAgICB0YSBib3J0IG9jaCByYWRlcmEga29uZmlndXJhdGlvbgorLnNwCitO5HIg5G5kcmluZ2FyIHNvbSBm5XIgZW4gZWxsZXIgZmxlcmEgb3RpbGxmcmVkc3N05GxsZGEgYmVyb2VuZGVuIGVsbGVyCitrb25mbGlrdGVyIHRpbGwgZvZsamQgZ/ZycywgZnLlZ2FyIFxmQmRzZWxlY3RcZlAgYW525G5kYXJlbiBtZWQgZW4KK2Jlcm9lbmRlbPZzbmluZ3Nza+RybSwgdmlsa2VuIGJlc2tyaXZzIHl0dGVybGlnYXJlIG5lZGFuLgorLnNwCitEZXQg5HIg5HZlbiBt9mpsaWd0IGF0dCBhcHBsaWNlcmEgZGVzc2Ega29tbWFuZG9uIHDlIGdydXBwZXIgYXYgcGFrZXR2YWwsCitnZW5vbSBhdHQgcGVrYSBtYXJrZXJpbmdzcmFkZW4gcOUgZW4gZ3J1cHBydWJyaWsuIEV4YWt0IGh1ciBwYWtldGVuCitncnVwcGVyYXMgYmVyb3IgcOUgdmlsa2VuIGxpc3RvcmRuaW5nIHNvbSBm9nIgdGlsbGbkbGxldCBhbnbkbmRzLgorLnNwCitO9mR25G5kaWdhIGb2cnNpa3RpZ2hldHPldGfkcmRlciBi9nIgdGFzIG7kciDkbmRyaW5nYXIgZ/ZycyBw5SBzdG9yYQorZ3J1cHBtYXJrZXJpbmdhciwgZWZ0ZXJzb20gZGV0IG1lZCBlbiBn5W5nIGthbiBnZSBzdG9yYSBt5G5nZGVyCitvdGlsbGZyZWRzc3TkbGxkYSBiZXJvZW5kZW4gZWxsZXIga29uZmxpa3Rlciwgdmlsa2EgYWxsYSBrb21tZXIgYXR0IHZpc2FzIHDlCitlbiBiZXJvZW5kZWz2c25pbmdzc2vkcm0sIHZpbGtldCBn9nIgZGVtIG15Y2tldCBzduVyYSBhdHQgaGFudGVyYS4gSQorcHJha3Rpa2VuIORyIGJhcmEgaOVsbFwta29tbWFuZG90IG9jaCBkZXNzIG1vdHNhdHMgYW525G5kYmFyYSBw5SBncnVwcGVyLgorLnNwCisuU1MgIkz2c2EgYmVyb2VuZGVuIG9jaCBrb25mbGlrdGVyIgorLnNwCitO5HIg5G5kcmluZ2FyIHNvbSBm5XIgZW4gZWxsZXIgZmxlcmEgb3RpbGxmcmVkc3N05GxsZGEgYmVyb2VuZGVuIGVsbGVyCitrb25mbGlrdGVyIHRpbGwgZvZsamQgZ/ZycywgZnLlZ2FyIFxmQmRzZWxlY3RcZlAgYW525G5kYXJlbiBtZWQgZW4KK2Jlcm9lbmRlbPZzbmluZ3Nza+RybS4gRvZyc3QgdmlzYXMgZG9jayBlbiBpbmZvcm1hdGl2IGhq5Gxwc2vkcm0uCisuc3AKK9Z2cmUgaGFsdmFuIGF2IHNr5HJtZW4gbGlzdGFyIGFsbGEgcGFrZXQgc29tIGhhciBvdGlsbGZyZWRzc3TkbGxkYSBiZXJvZW5kZW4KK2VsbGVyIGtvbmZsaWt0ZXIgc29tIGV0dCByZXN1bHRhdCBhdiDkbmRyaW5nZW4gc29tIGVmdGVyZnLlZ2FzLCBzYW10IGFsbGEKK3Bha2V0IHZhcnMgaW5zdGFsbGF0aW9uIGthbiBs9nNhIG7lZ290IGF2IGRlc3NhIGJlcm9lbmRlbiwgZWxsZXIgdmFycworYm9ydHRhZ25pbmcga2FuIGz2c2EgbuVnb24gYXYga29uZmxpa3Rlcm5hLiBEZW4gbmVkcmUgaGFsdmFuIHZpc2FyIHNvbQorZvZydmFsIGRlIGJlcm9lbmRlbiBlbGxlciBrb25mbGlrdGVyIHNvbSBsZWRlciB0aWxsIGF0dCBkZXQgbWFya2VyYWRlCitwYWtldGV0IGxpc3Rhcy4KKy5zcAorUmVkYW4gZOUgcGFrZXR1bmRlcmxpc3RhbiBmcuVuIGL2cmphbiB2aXNhcyBrYW4gXGZCZHNlbGVjdFxmUCBoYSBzYXR0CitlZnRlcmZy5WdhZCB2YWxzdGF0dXMgZvZyIG7lZ3JhIGF2IGRlIGxpc3RhZGUgcGFrZXRlbiwgZvZyIGF0dCBs9nNhIGRlCitiZXJvZW5kZW4gZWxsZXIga29uZmxpa3RlciBzb20gZmljayBiZXJvZW5kZWz2c25pbmdzc2vkcm1lbiBhdHQgdmlzYXMuIERldAor5HIgb2Z0YXN0IGLkc3QgYXR0IGb2bGphIHVwcCBkZSBm9nJzbGFnIFxmQmRzZWxlY3RcZlAgZ2VyLgorLnNwCitEZSBsaXN0YWRlIHBha2V0ZW5zIHZhbHN0YXR1cyBrYW4g5XRlcnN05GxsYXMgdGlsbCB1cnNwcnVuZ3NpbnN05GxsbmluZ2FybmEsCitz5XNvbSBkZSB2YXIgaW5uYW4gZGUgb3RpbGxmcmVkc3N05GxsZGEgYmVyb2VuZGVuYSBlbGxlciBrb25mbGlrdGVybmEKK3NrYXBhZGVzLCBnZW5vbSBhdHQgdHJ5Y2thIHDlIHRhbmdlbnRlbiBcZkIiUiJcZlAuIEdlbm9tIGF0dCB0cnlja2EgcOUgXGZCIkQiXGZQCivldGVyc3TkbGxzIGRlIGb2cmVzbGFnbmEgbPZzbmluZ2FybmEsIG1lbiDkbmRyaW5nZW4gc29tIGZpY2sgc2vkcm1lbiBhdHQKK3Zpc2FzIGJlaOVsbHMgaSBkZW4gc3RhdHVzIGRlIHZhbGRlcy4gU2x1dGxpZ2VuLCBnZW5vbSBhdHQgdHJ5Y2thIFxmQiJVIlxmUAor5XRlcnN05GxscyB2YWxlbiDldGVyaWdlbiB0aWxsIGRlIGF1dG9tYXRpc2t0IGb2cmVzbGFnbmEgduRyZGVuYS4KKy5zcAorLlNTICJCZWty5GZ0YSBkZSBlZnRlcmZy5WdhZGUgdmFsZW4iCisuc3AKK0dlbm9tIGF0dCB0cnlja2EgXGZCRW50ZXJcZlAgZ29kdGFzIGRlbiB2aWQgdGlsbGbkbGxldCBpbnN05GxsZGEgdXBwc+R0dG5pbmdlbgordmFsLiBPbSBcZkJkc2VsZWN0XGZQIGludGUgdXBwdORja2VyIG7lZ3JhIG90aWxsZnJlZHNzdORsbGRhIGJlcm9lbmRlbiBzb20KK2b2bGpkIGF2IGRlIGVmdGVyZnLlZ2FkZSB2YWxlbiBrb21tZXIgZGUgbnlhIHZhbGVuIGF0dCBsYWdyYXMuIE9tIGRldAorZORyZW1vdCBmaW5ucyBu5WdyYSBvdGlsbGZyZWRzc3TkbGxkYSBiZXJvZW5kZW4ga29tbWVyIFxmQmRzZWxlY3RcZlAg5XRlcmlnZW4KK2flIHRpbGwgYmVyb2VuZGVs9nNuaW5nc3Nr5HJtZW4uCisuc3AKK0b2ciBhdHQg5G5kcmEgZW4gdXBwc+R0dG5pbmcgdmFsIHNvbSBza2FwYXIgb3RpbGxmcmVkc3N05GxsZGEgYmVyb2VuZGVuCitlbGxlciBrb25mbGlrdGVyLCBvY2ggdHZpbmdhIFxmQmRzZWxlY3RcZlAgYXR0IGdvZHRhIGRlbSB0cnlja2VyIGR1IHDlCitcZkIiUSJcZlBcLXRhbmdlbnRlbi4gRGV0dGEgc3TkbGxlciBvdmlsbGtvcmxpZ2VuIGluIGRlIHZhbCBhbnbkbmRhcmVuIGdqb3J0LAordmlsa2V0IHZhbmxpZ3R2aXMgaW50ZSBi9nIgZ/ZyYXMgb20gbWFuIGludGUgaGFyIGzkc3QgZGV0IGZpbnN0aWx0YS4KKy5zcAorTW90c2F0dCBlZmZla3QsIGF0dCBiYWNrYSB1dCBmcuVuIHZhbORuZHJpbmdhciBvY2gg5XRlcmflIHRpbGwgZvZyZWflZW5kZQordmFsbGlzdGEsIGthbiBm5XMgZ2Vub20gYXR0IHRyeWNrYSBw5SB0YW5nZW50ZXJuYSBcZkIiWCJcZlAgZWxsZXIKK1xmQkVzY2FwZVxmUC4gR2Vub20gYXR0IHVwcHJlcGFkZSBn5W5nZXIgdHJ5Y2thIGRlc3NhIHRhbmdlbnRlciwga2FuIGV2ZW50dWVsbGEKK3NrYWRsaWdhIHBha2V0dmFsIGJhY2thcyB1dCBoZWx0IG9jaCBo5WxsZXQgZvZyIGF0dCDldGVyZ+UgdGlsbCBzZW5hc3QKK2V0YWJsZXJhZGUgaW5zdORsbG5pbmdhci4KKy5zcAorT20gZHUgYXYgbWlzc3RhZyB25GxqZXIgbuVncmEgaW5zdORsbG5pbmdhciBvY2ggdmlsbCDldGVyc3TkbGxhIGFsbGEgdmFsCit0aWxsIGRldCBzb20gZvZyIG7kcnZhcmFuZGUg5HIgaW5zdGFsbGVyYXQgcOUgc3lzdGVtZXQgdHJ5Y2tlciBkdSBw5SBrbmFwcGVuCitcZkIiQyJcZlAuIERldCBtb3RzdmFyYXIgcOUgZXR0IHVuZ2Vm5HIgYXR0IGFuduRuZGEga29tbWFuZG90ICJhdmJyeXQgaOVsbCIgcOUKK2FsbGEgcGFrZXQsIG1lbiBkZXQgZ2VyIGVuIHR5ZGxpZ2FyZSBwYW5pa2tuYXBwIG9tIGFuduRuZGFyZW4gYXYgbWlzc3RhZwordHJ5Y2t0ZSBw5SBcZkJFbnRlclxmUC4KKy5zcAorLgorLlNIIE1JTErWVkFSSUFCTEVSCisuVFAgCitcZkJIT01FXGZQCitPbSBzYXR0IGtvbW1lciBcZkJkc2VsZWN0XGZQIGF0dCBhbnbkbmRhIGRldCBzb20ga2F0YWxvZ2VuIGZy5W4gdmlsa2V0IGRlbgorYW525G5kYXJzcGVjaWZpa2Ega29uZmlndXJhdGlvbnNmaWxlbiBza2FsbCBs5HNhcy4KKy4KKy5TSCBQUk9HUkFNRkVMCitQYWtldHZhbHNncuRuc3NuaXR0ZXQgaSBcZkJkc2VsZWN0XGZQIORyIGb2cnZpcnJhbmRlIGb2ciBlbiBkZWwgbnlhCithbnbkbmRhcmUuIERldCBoYXIgcmFwcG9ydGVyYXRzIGF0dCBkZXQgdGlsbCBvY2ggbWVkIGthbiBm5SBlcmZhcm5hCit1dHZlY2tsYXJlIGF2IGvkcm5hbiBhdHQgZ3LldGEuCisuc3AKK0Rva3VtZW50YXRpb25lbiBoYXIgYnJpc3Rlci4KKy5zcAorRGV0IGZpbm5zIGluZ2V0IGhq5GxwYWx0ZXJuYXRpdiBpIGh1dnVkbWVueW4uCisuc3AKK0RlbiBzeW5saWdhIGxpc3RhbiBtZWQgdGlsbGfkbmdsaWdhIHBha2V0IGthbiBpbnRlIGb2cm1pbnNrYXMuCisuc3AKK0RlIGluYnlnZ2RhIOV0a29tc3RtZXRvZGVybmEga2FuIGludGUgbORuZ3JlIG7lIG51dmFyYW5kZQora3ZhbGl0ZXRzc3RhbmRhcmQuIEFuduRuZCDldGtvbXN0bWV0b2RlbiBzb20gZ2VzIGF2IGFwdCwgZGVuIORyIGludGUgYmFyYQoraW50ZSB0cmFzaWcsIHV0YW4g5HZlbiBteWNrZXQgZmxleGlibGFyZSDkbiBkZSBpbmJ5Z2dkYSDldGtvbXN0bWV0b2Rlcm5hLgorLgorLlNIICJTRSDEVkVOIgorXGZCZHBrZ1xmUCgxKSwgXGZCYXB0XC1nZXRcZlAoOCksIFxmQnNvdXJjZXMubGlzdFxmUCg1KSwgXGZCZGViXGZQKDUpLgorLgorLlNIIEbWUkZBVFRBUkUKK1xmQmRzZWxlY3RcZlAgc2tyZXZzIGF2IElhbiBKYWNrc29uIChpamFja3NvbkBnbnUuYWkubWl0LmVkdSkuIEVuIGtvbXBsZXR0CitsaXN0YSD2dmVyIGJpZHJhZ3Ns5G1uYXJlIGblciBkdSBtZWQgImRzZWxlY3QgXC1cLXZlcnNpb24iLgorLmJyCitNYW51YWxzaWRhbiBza3JldnMgYXYgSnVobyBWdW9yaSA8amF2dW9yaUBjYy5oZWxzaW5raS5maT4sIEpvc2lwCitSb2RpbiBvY2ggSm9vc3QgS29vaWouCisKKy5TSCAi1lZFUlPEVFROSU5HIgorUGV0ZXIgS3JlZnRpbmcgb2NoIERhbmllbCBOeWxhbmRlci4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvbWFuL3N2L2RzZWxlY3QuY2ZnLjUgYi9kcGtnLTEuMTYuMS4xL21hbi9zdi9kc2VsZWN0LmNmZy41Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjgwNmU3Y2QKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9zdi9kc2VsZWN0LmNmZy41CkBAIC0wLDAgKzEsMzEgQEAKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5cIgorLlwiIFRoaXMgZmlsZSB3YXMgZ2VuZXJhdGVkIHdpdGggcG80YS4gVHJhbnNsYXRlIHRoZSBzb3VyY2UgZmlsZS4KKy5cIgorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlRIIGRzZWxlY3QuY2ZnIDUgMjAxMVwtMDdcLTAzIERlYmlhbnByb2pla3RldCBEcGtnXC1zdml0ZW4KKy5TSCBOQU1OCitkc2VsZWN0LmNmZyBcLSBpbnN05GxsbmluZ3NmaWwgZvZyIGRzZWxlY3QKKy4KKy5TSCBCRVNLUklWTklORworRmlsZW4gaW5uZWjlbGxlciBm9nJ2YWxkYSBpbnN05GxsbmluZ2FyIGb2ciBkc2VsZWN0LiBWYXJqZSByYWQgYmVzdOVyIGF2IGVuCitlbnNhbSBmbGFnZ2Egc29tIORyIGV4YWt0IGRlbnNhbW1hIHNvbSBlbiBub3JtYWwga29tbWFuZG9yYWRzZmxhZ2dhIGb2cgorZHNlbGVjdCwgZvZydXRvbSBkZSBpbmxlZGFuZGUgYmluZGVzdHJlY2tlbiB2aWxrYSBpbnRlIGFuduRuZHMKK2jkci4gQ2l0YXR0ZWNrZW4gcnVudCBmbGFnZ3bkcmRlbiB0YXMgYm9ydC4gS29tbWVudGFyZXIg5HIgdGlsbOV0bmEgZ2Vub20KK2F0dCBpbmxlZGEgZW4gcmFkIG1lZCBudW1tZXJ0ZWNrZW4gKCJcZkIjXGZQIikuCisuCisuU0ggRklMRVIKK1xmSS9ldGMvZHBrZy9kc2VsZWN0LmNmZy5kL1swXC05YVwtekFcLVpfXC1dKlxmUAorLmJyCitcZkkvZXRjL2Rwa2cvZHNlbGVjdC5jZmdcZlAKKy5icgorXGZJfi8uZHNlbGVjdC5jZmdcZlAKKy4KKy5TSCBG1lJGQVRUQVJFCitTZSBcZkIvdXNyL3NoYXJlL2RvYy9kcGtnL1RIQU5LU1xmUCBm9nIgbGlzdGFuIPZ2ZXIgcGVyc29uZXIgc29tIGhhciBiaWRyYWdpdAordGlsbCBcZkJkc2VsZWN0XGZQIC4KKy4KKy5TSCAiU0UgxFZFTiIKK1xmQmRzZWxlY3RcZlAoMSkuCisuU0ggItZWRVJTxFRUTklORyIKK1BldGVyIEtyZWZ0aW5nIG9jaCBEYW5pZWwgTnlsYW5kZXIuCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi9zdi9zdGFydC1zdG9wLWRhZW1vbi44IGIvZHBrZy0xLjE2LjEuMS9tYW4vc3Yvc3RhcnQtc3RvcC1kYWVtb24uOApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42ZDZmNTA0Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9tYW4vc3Yvc3RhcnQtc3RvcC1kYWVtb24uOApAQCAtMCwwICsxLDI0MCBAQAorLlwiKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorLlwiCisuXCIgVGhpcyBmaWxlIHdhcyBnZW5lcmF0ZWQgd2l0aCBwbzRhLiBUcmFuc2xhdGUgdGhlIHNvdXJjZSBmaWxlLgorLlwiCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuVEggc3RhcnRcLXN0b3BcLWRhZW1vbiA4IDIwMTFcLTA3XC0wNCBEZWJpYW5wcm9qZWt0ZXQgZHBrZ1wtdmVya3R5Z2VuCisuU0ggTkFNTgorc3RhcnRcLXN0b3BcLWRhZW1vbiBcLSBzdGFydGFyIG9jaCBzdG9wcGFyIGJha2dydW5kc3Byb2Nlc3NlcgorLgorLlNIIFNZTk9QUworXGZCc3RhcnRcLXN0b3BcLWRhZW1vblxmUCBbXGZJZmxhZ2dhXGZQLi4uXSBcZknldGfkcmRcZlAKKy4KKy5TSCBCRVNLUklWTklORworXGZCc3RhcnRcLXN0b3BcLWRhZW1vblxmUCBhbnbkbmRzIGb2ciBhdHQga29udHJvbGxlcmEgaHVyIHByb2Nlc3NlciBw5SBzeXN0ZW1uaXblCitza2FwYXMgb2NoIGF2c2x1dGFzLiBNZWQgaGrkbHAgYXYgZW4gYXYgc/ZrZmxhZ2dvcm5hIGthbgorXGZCc3RhcnRcLXN0b3BcLWRhZW1vblxmUCBzdORsbGFzIGluIGF0dCBoaXR0YSBiZWZpbnRsaWdhIGluc3RhbnNlciBhdiBlbiBr9nJhbmRlCitwcm9jZXNzLgorLlBQCitPYnNlcnZlcmEgYXR0IG9tIGludGUgXGZCXC1cLXBpZGZpbGVcZlAgYW5nZXMga29tbWVyIFxmQnN0YXJ0XC1zdG9wXC1kYWVtb25cZlAgYXR0Citqb2JiYSBw5SBldHQgc+R0dCBzb20gbGlrbmFyIFxmQmtpbGxhbGwoMSkuXGZQIFxmQnN0YXJ0XC1zdG9wXC1kYWVtb25cZlAga29tbWVyIGF0dAorc/ZrYSBpIHByb2Nlc3N0YWJlbGxlbiBlZnRlciBwcm9jZXNzZXIgbWVkIG1vdHN2YXJhbmRlIG5hbW4gcOUgcHJvY2Vzc2VuLAorYW525G5kYXJcLWlkIG9jaC9lbGxlciBncnVwcFwtaWQgKG9tIHPlZGFudCBhbmdlcykuIEFsbGEgcHJvY2Vzc2VyIHNvbSBzdORtbWVyCiv2dmVyZW5zIGtvbW1lciB0aWxsc+RuZGFzIHNpZ25hbGVuIFRFUk0gKGVsbGVyIGRlbiBzb20gYW5nZXMgbWVkIFxmQlwtXC1zaWduYWxcZlAKK2VsbGVyIFxmQlwtXC1yZXRyeVxmUCkgb20gXGZCXC1cLXN0b3BcZlAgYW5nZXMuIEb2ciBwcm9jZXNzZXIgc29tIGhhciBs5W5nbGl2YWRlIGJhcm4KK3NvbSBt5XN0ZSD2dmVybGV2YSBlbiBcZkJcLVwtc3RvcFxmUCwgbeVzdGUgZHUgYW5nZSBlbiBwaWRmaWwuCisuCisuU0ggS09NTUFORE9OCisuVFAgCitcZkJcLVNcZlAsIFxmQlwtXC1zdGFydFxmUCBbXGZCXC1cLVxmUF0gXGZJYXJndW1lbnRcZlAKK1NlIG9tIGVuIGFuZ2l2ZW4gcHJvY2VzcyBleGlzdGVyYXIsIG9jaCBvbSBz5SDkciBmYWxsZXQgZ/ZyCitcZkJzdGFydFwtc3RvcFwtZGFlbW9uXGZQIGluZ2VudGluZyBvY2ggYXZzbHV0YXIgbWVkIHN0YXR1cyAxICgwIG9tIFxmQlwtXC1va25vZG9cZlAKK2FuZ2VzKS4gT20gZW4gc+VkYW4gcHJvY2VzcyBpbnRlIGV4aXN0ZXJhciBzdGFydGFzIGVuIGluc3RhbnMsIGFudGluZ2VuIG1lZAorcHJvZ3JhbWZpbGVuIHNvbSBhbmdlcyBtZWQgXGZCXC1cLWV4ZWNcZlAgZWxsZXIsIG9tIGRlbiBhbmdlcywgbWVkCitcZkJcLVwtc3RhcnRhc1xmUC4gRXZlbnR1ZWxsYSBhcmd1bWVudCBzb20gZ2VzIGVmdGVyIFxmQlwtXC1cZlAgcOUga29tbWFuZG9yYWRlbgorc2tpY2thcyB1dGFuIORuZHJpbmcgdGlsbCBwcm9ncmFtbWV0IHNvbSBzdGFydGFzLgorLlRQIAorXGZCXC1LXGZQLCBcZkJcLVwtc3RvcFxmUAorVGVzdGEgb20gZGVuIGFuZ2l2bmEgcHJvY2Vzc2VuIGV4aXN0ZXJhci4gT20gc+Ug5HIgZmFsbGV0IHPkbmRlcgorXGZCc3RhcnRcLXN0b3BcLWRhZW1vblxmUCBkZW4gc2lnbmFsIHNvbSBhbmdlcyBhdiBcZkJcLVwtc2lnbmFsXGZQIHRpbGwgcHJvY2Vzc2VuLCBvY2gKK2F2c2x1dGFyIG1lZCBzdGF0dXMgMC4gT20gcHJvY2Vzc2VuIGludGUgZmlubnMgYXZzbHV0YXIgXGZCc3RhcnRcLXN0b3BcLWRhZW1vblxmUAorbWVkIHN0YXR1cyAxICgwIG9tIFxmQlwtXC1va25vZG9cZlAgYW5nZXMpLiBPbSBcZkJcLVwtcmV0cnlcZlAgYW5nZXMga29tbWVyCitcZkJzdGFydFwtc3RvcFwtZGFlbW9uXGZQIGtvbnRyb2xsZXJhIGF0dCBwcm9jZXNzZW4gaGFyIGF2c2x1dGF0cy4KKy5UUCAKK1xmQlwtVFxmUCwgXGZCXC1cLXN0YXR1c1xmUAorU2Ugb20gZGVuIGFuZ2l2bmEgcHJvY2Vzc2VuIGV4aXN0ZXJhciwgb2NoIHJldHVybmVyYXIgZW4gc3RhdHVza29kIGkKK2VubGlnaGV0IG1lZCBMQlMgSW5pdCBTY3JpcHQgQWN0aW9ucy4KKy5UUCAKK1xmQlwtSFxmUCwgXGZCXC1cLWhlbHBcZlAKK1Zpc2EgaGrkbHBza+RybSBvY2ggYXZzbHV0YS4KKy5UUCAKK1xmQlwtVlxmUCwgXGZCXC1cLXZlcnNpb25cZlAKK1Zpc2EgcHJvZ3JhbXZlcnNpb24gb2NoIGF2c2x1dGEuCisuCisuU0ggIkZMQUdHT1IgRtZSIFPWS05JTkciCisuVFAgCitcZkJcLXBcZlAsIFxmQlwtXC1waWRmaWxlXGZQIFxmSXBpZGZpbFxmUAorU/ZrIGVmdGVyIHByb2Nlc3NlciB2YXJzIHByb2Nlc3NcLWlkIGFuZ2VzIGkgXGZJcGlkZmlsXGZQLgorLlRQIAorXGZCXC14XGZQLCBcZkJcLVwtZXhlY1xmUCBcZklwcm9ncmFtZmlsXGZQCitT9msgZWZ0ZXIgcHJvY2Vzc2VyIHNvbSDkciBpbnN0YW5zZXIgYXYgcHJvZ3JhbWZpbGVuIChlbmxpZ3QKK1xmQi9wcm9jL1xmUFxmSXBpZFxmUFxmQi9leGVcZlApLgorLlRQIAorXGZCXC1uXGZQLCBcZkJcLVwtbmFtZVxmUCBcZklwcm9jZXNzbmFtblxmUAorU/ZrIGVmdGVyIHByb2Nlc3NlciBtZWQgbmFtbmV0IFxmSXByb2Nlc3NuYW1uXGZQIChlbmxpZ3QKK1xmQi9wcm9jL1xmUFxmSXBpZFxmUFxmQi9zdGF0XGZQKS4KKy5UUCAKK1xmQlwtdVxmUCwgXGZCXC1cLXVzZXJcZlAgXGZJYW525G5kYXJuYW1uXGZQfFxmSWFuduRuZGFyXC1pZFxmUAorU/ZrIGVmdGVyIHByb2Nlc3NlciBzb20g5GdzIGF2IGRlbiBhbnbkbmRhcmUgc29tIGFuZ2VzIG1lZCBcZklhbnbkbmRhcm5hbW5cZlAKK2VsbGVyIFxmSWFuduRuZGFyXC1pZFxmUC4KKy4KKy5TSCBGTEFHR09SCisuVFAgCitcZkJcLWdcZlAsIFxmQlwtXC1ncm91cFxmUCBcZklncnVwcFxmUHxcZklncnVwcFwtaWRcZlAKK0J5dCB0aWxsIFxmSWdydXBwXGZQIGVsbGVyIFxmSWdydXBwXC1pZFxmUCBu5HIgcHJvY2Vzc2VuIHN0YXJ0YXMuCisuVFAgCitcZkJcLXNcZlAsIFxmQlwtXC1zaWduYWxcZlAgXGZJc2lnbmFsXGZQCitUaWxsc2FtbWFucyBtZWQgXGZCXC1cLXN0b3BcZlAgYW5nZXIgZGV0dGEgZGVuIHNpZ25hbCBzb20gc2thbGwgc+RuZGFzIHRpbGwKK3Byb2Nlc3NlbiBzb20gc3RvcHBhcyAoZvZydmFsIORyIFRFUk0pLgorLlRQIAorXGZCXC1SXGZQLCBcZkJcLVwtcmV0cnlcZlAgXGZJdGlkc2dy5G5zXGZQfFxmSXNjaGVtYVxmUAorVGlsbHNhbW1hbnMgbWVkIFxmQlwtXC1zdG9wXGZQIGFuZ2VyIGRldHRhIGF0dCBcZkJzdGFydFwtc3RvcFwtZGFlbW9uXGZQIHNrYWxsCitrb250cm9sbGVyYSBhdHQgcHJvY2Vzc2VuIGF2c2x1dGFzLiBEZW4gdGVzdGFyIGZsZXJhIGflbmdlciBlZnRlciBtYXRjaGFuZGUKK3Byb2Nlc3NlciBzb20ga/ZycywgdGlsbHMgaW5nZW4gbORuZ3JlIGZpbm5zIGt2YXIuIE9tIHByb2Nlc3Nlcm5hIGludGUKK2F2c2x1dGFyIGtvbW1lciBwcm9ncmFtbWV0IHV0ZvZyYSB5dHRlcmxpZ2FyZSBrb21tYW5kb24gZW5saWd0IHNjaGVtYXQuCisKK09tIFxmSXRpZHNncuRuc1xmUCBhbmdlcyBpc3TkbGxldCBm9nIgXGZJc2NoZW1hXGZQIGtvbW1lciBzY2hlbWF0CitcZklzaWduYWxcZlBcZkIvXGZQXGZJdGltZW91dFxmUFxmQi9LSUxML1xmUFxmSXRpbWVvdXRcZlAgYXR0IGFuduRuZGFzLCBk5HIgXGZJc2lnbmFsXGZQIORyCitkZW4gc2lnbmFsIHNvbSBhbmdlcyBtZWQgXGZCXC1cLXNpZ25hbFxmUC4KKworXGZJc2NoZW1hXGZQIORyIGRlbiBsaXN0YSBtZWQg5XRtaW5zdG9uZSB0duUgcG9zdGVyIGF2ZGVsYWRlIG1lZCBzbmVkc3RyZWNrCisoXGZCL1xmUCk7IHZhcmplIHBvc3Qg5HIgYW50aW5nZW4gXGZCXC1cZlBcZklzaWduYWxudW1tZXJcZlAgZWxsZXIKK1tcZkJcLVxmUF1cZklzaWduYWxuYW1uXGZQLCB2aWxrZXQgYmV0eWRlciBhdHQgc2lnbmFsZW4gc2thbGwgc+RuZGFzLCBlbGxlcgorXGZJdGltZW91dFxmUCwgdmlsa2V0IGFuZ2VyIGRldCBhbnRhbCBzZWt1bmRlciBwcm9ncmFtbWV0IHNrYWxsIHbkbnRhIHDlIGF0dAorcHJvY2Vzc2VuIGF2c2x1dGFyLCBlbGxlciBcZkJmb3JldmVyXGZQLCB2aWxrZXQgYmV0eWRlciBhdHQgcmVzdGVuIGF2IHNjaGVtYXQKK3NrYWxsIHJlcGV0ZXJhIGb2ciBldmlndCBvbSBz5SBiZWj2dnMuCisKK09tIHNsdXRldCBw5SBzY2hlbWF0IG7lcyBvY2ggXGZCZm9yZXZlclxmUCBpbnRlIGFuZ2VzIGtvbW1lcgorXGZCc3RhcnRcLXN0b3BcLWRhZW1vblxmUCBhdnNsdXRhcyBtZWQgZmVsa29kIDIuIE9tIGV0dCBzY2hlbWEgYW5nZXMga29tbWVyCitldmVudHVlbGwgc2lnbmFsIGFuZ2l2ZW4gbWVkIFxmQlwtXC1zaWduYWxcZlAgYXR0IGlnbm9yZXJhcy4KKy5UUCAKK1xmQlwtYVxmUCwgXGZCXC1cLXN0YXJ0YXNcZlAgXGZJc/ZrduRnXGZQCitUaWxsc2FtbWFucyBtZWQgXGZCXC1cLXN0YXJ0XGZQIGFuZ2VyIGRldHRhIGF0dCBwcm9jZXNzZW4gc29tIGFuZ2VzIG1lZCBcZklz9mt25GdcZlAKK3NrYWxsIHN0YXJ0YXMuIE9tIGRlbiBpbnRlIGFuZ2VzIGFuduRuZHMgYXJndW1lbnRldCBzb20gZ2F2cyB0aWxsIFxmQlwtXC1leGVjXGZQLgorLlRQIAorXGZCXC10XGZQLCBcZkJcLVwtdGVzdFxmUAorU2tyaXZlciB1dCB2YWQgc29tIHNrdWxsZSBoYSB1dGb2cnRzIG9jaCBz5HR0ZXIgcmV0dXJ25HJkZXQsIG1lbiB1dGb2cgoraW5nZW50aW5nLgorLlRQIAorXGZCXC1vXGZQLCBcZkJcLVwtb2tub2RvXGZQCitSZXR1cm5lcmFyIGZlbHN0YXR1cyAwIGkgc3TkbGxldCBm9nIgMSBvbSBpbmdlbiDldGfkcmQgdXRm9nJzL3NrdWxsZQordXRm9nJ0cy4KKy5UUCAKK1xmQlwtcVxmUCwgXGZCXC1cLXF1aWV0XGZQCitTa3JpdiBpbnRlIGluZm9ybWF0aW9uc21lZGRlbGFuZGVuOyB2aXNhIGVuZGFzdCBmZWxtZWRkZWxhbmRlbi4KKy5UUCAKK1xmQlwtY1xmUCwgXGZCXC1cLWNodWlkXGZQIFxmSXVzZXJuYW1lXGZQfFxmSXVpZFxmUFtcZkI6XGZQXGZJZ3JvdXBcZlB8XGZJZ2lkXGZQXQorQnl0IHRpbGwgYW525G5kYXJuYW1uZXQvYW525G5kYXJcLWlkOnQgaW5uYW4gcHJvY2Vzc2VuIHN0YXJ0YXMuIER1IGthbiDkdmVuCithbmdlIGVuIGdydXBwIGdlbm9tIGF0dCBs5GdnYSB0aWxsIGV0dCBrb2xvbnRlY2tlbiwgXGZCOlxmUCwgZvZsanQgYXYKK2dydXBwbmFtbmV0IGVsbGVyIGdydXBwXC1pZCBw5SBzYW1tYSBz5HR0IHNvbSBkdSBza3VsbCBnam9ydCB0aWxsCisiY2hvd24iXC1rb21tYW5kb3QgKFxmSWFuduRuZGFyZVxmUFxmQjpcZlBcZklncnVwcFxmUCkuIE9tIGR1IGFuZ2VyIGVuIGFuduRuZGFyZSB1dGFuCithdHQgYW5nZSBlbiBncnVwcCBrb21tZXIgYW525G5kYXJlbnMgcHJpbeRyYSBncnVwcFwtaWQgYXR0IGFuduRuZGFzLiBO5HIgZHUKK2FuduRuZGVyIGFsdGVybmF0aXZldCBt5XN0ZSBkdSBoYSBpIOV0YW5rZSBhdHQg5HZlbiBi5WRlIHByaW3kclwtIG9jaAordGlsbORnZ3NncnVwcCBz5HR0cywg5HZlbiBvbSBcZkJcLVwtZ3JvdXBcZlBcLWZsYWdnYW4gaW50ZQorYW5nZXMuIFxmQlwtXC1ncm91cFxmUFwtZmxhZ2dhbiDkciBiYXJhIHRpbGwgZvZyIGdydXBwZXIgc29tIGFuduRuZGFyZW4gbm9ybWFsdAoraW50ZSDkciBlbiBtZWRsZW0gaSAodC5leCBm9nIgYXR0IGzkZ2dhIHRpbGwgZ3J1cHBtZWRsZW1za2FwIGb2ciBlbnNraWxkYQorcHJvY2Vzc2VyIGb2ciBzdGFuZGFyZGFuduRuZGFyZSBz5XNvbSBcZkJub2JvZHlcZlApLgorLlRQIAorXGZCXC1yXGZQLCBcZkJcLVwtY2hyb290XGZQIFxmSXJvdFxmUAorQnl0IGthdGFsb2cgb2NoIHJvdCB0aWxsIFxmQnJvdFxmUCBpbm5hbiBwcm9jZXNzZW4gc3RhcnRhcy4gT2JzZXJ2ZXJhIGF0dCDkdmVuCitwaWRmaWxlbiBza3JpdnMgZWZ0ZXIgY2hyb290IGhhciB1dGb2cnRzLgorLlRQIAorXGZCXC1kXGZQLCBcZkJcLVwtY2hkaXJcZlAgXGZJc/ZrduRnXGZQCitCeXQga2F0YWxvZyB0aWxsIFxmSXP2a3bkZ1xmUCBpbm5hbiBwcm9jZXNzZW4gc3RhcnRhcy4gRGV0dGEgZ/ZycyBlZnRlciBieXRlIGF2Cityb3Qgb20gXGZCXC1yXGZQfFxmQlwtXC1jaHJvb3RcZlBcLWZsYWdnYW4gYW5nZXMuIE9tIGZsYWdnYW4gaW50ZSBhbmdlcyBrb21tZXIKK3N0YXJ0XC1zdG9wXC1kYWVtb24gYnl0YSB0aWxsIHJvdGthdGFsb2dlbiBpbm5hbiBwcm9jZXNzZW4gc3RhcnRhcy4KKy5UUCAKK1xmQlwtYlxmUCwgXGZCXC1cLWJhY2tncm91bmRcZlAKK0FuduRuZHMgdHlwaXNrdCBtZWQgcHJvZ3JhbSBzb20gaW50ZSBrb3BwbGFyIGxvc3Mgc2lnIGF2IHNpZyBzauRsdmEuIEZsYWdnYQordHZpbmdhciBcZkJzdGFydFwtc3RvcFwtZGFlbW9uXGZQIGF0dCBm9nJncmVuYSBzaWcgKGZvcmspIGlubmFuIHByb2Nlc3Nlbgorc3RhcnRhciwgb2NoIHR2aW5nYSBkZW4gZ3JlbmVuIGF0dCBr9nJhIGkgYmFrZ3J1bmRlbi4gXGZCVkFSTklORzoKK3N0YXJ0XC1zdG9wXC1kYWVtb25cZlAga2FuIGludGUga29udHJvbGxlcmEgZmVsc3RhdHVzIGb2ciBwcm9jZXNzZXIgc29tIGF2CitcZkJu5WdvbiBzb20gaGVsc3RcZlAgYW5sZWRuaW5nIG1pc3NseWNrYXMgbWVkIGF0dCBleGVrdmVyYS4gRGV0dGEg5HIgZW4gc2lzdGEKK3V0duRnLCBvY2gg5HIgZW5kYXN0IGF2c2V0dCBm9nIgcHJvZ3JhbSBzb20gZGV0IGFudGluZ2VuIGludGUg5HIgbuVnb24KK21lbmluZyBhdHQgZvZyZ3JlbmEgcOUgZWdlbiBoYW5kLCBlbGxlciBk5HIgZGV0IGludGUg5HIgbfZqbGlndCBhdHQgbORnZ2EKK3RpbGwga29kIGb2ciBkZXQgcOUgZWdlbiBoYW5kLgorLlRQIAorXGZCXC1OXGZQLCBcZkJcLVwtbmljZWxldmVsXGZQIFxmSWhlbHRhbFxmUAorxG5kcmFyIHByaW9yaXRldGVuIHDlIHByb2Nlc3NlbiBpbm5hbiBkZW4gc3RhcnRhcy4KKy5UUCAKK1xmQlwtUFxmUCwgXGZCXC1cLXByb2NzY2hlZFxmUCBcZklwb2xpY3lcZlBcZkI6XGZQXGZJcHJpb3JpdGV0XGZQCivEbmRyYXIgcHJvY2Vzc3NjaGVtYWzkZ2dhcmVucyBwb2xpY3kgb2NoIHByaW9yaXRldCBm9nIgcHJvY2Vzc2VuIGlubmFuIGRlbgorc3RhcnRhcy4gUHJpb3JpdGV0ZW4g5HIgdmFsZnJpIG9jaCBhbmdlcyBnZW5vbSBhdHQgbORnZ2EgdGlsbCBldHQgXGZCOlxmUCBm9mxqdAorYXYgduRyZGV0LiBTdGFuZGFyZHbkcmRldCBm9nIgXGZJcHJpb3JpdGV0XGZQIORyIDAuIEb2ciBu5HJ2YXJhbmRlIHN09mRzCit25HJkZW5hIFxmQm90aGVyXGZQLCBcZkJmaWZvXGZQIG9jaCBcZkJyclxmUCBm9nIgXGZJcG9saWN5XGZQLgorLlRQIAorXGZCXC1JXGZQLCBcZkJcLVwtaW9zY2hlZFxmUCBcZklrbGFzc1xmUFxmQjpcZlBcZklwcmlvcml0ZXRcZlAKK8RuZHJhciBJL09cLXNjaGVtYWzkZ2dhcmVucyBrbGFzcyBvY2ggXC1wcmlvcml0ZXQgZvZyIHByb2Nlc3NlbiBpbm5hbiBkZW4KK3N0YXJ0YXMuIFByaW9yaXRldGVuIORyIHZhbGZyaSBvY2ggYW5nZXMgZ2Vub20gYXR0IGzkZ2dhIHRpbGwgZXR0IFxmQjpcZlAgZvZsanQKK2F2IHbkcmRldC4gU3RhbmRhcmR25HJkZXQgZvZyIFxmSXByaW9yaXRldFxmUCDkciA0LCBz5XZpZGEgaW50ZSBcZklrbGFzc1xmUCDkcgorXGZCaWRsZVxmUCwgZOUg5HIgXGZJcHJpb3JpdGV0XGZQIGFsbHRpZCA3LiBG9nIgbuRydmFyYW5kZSBzdPZkcyB25HJkZW5hIFxmQmlkbGVcZlAsCitcZkJiZXN0XC1lZmZvcnRcZlAgb2NoIFxmQnJlYWxcLXRpbWVcZlAgZvZyIFxmSWtsYXNzXGZQLgorLlRQIAorXGZCXC1rXGZQLCBcZkJcLVwtdW1hc2tcZlAgXGZJbWFza3bkcmRlXGZQCitTdORsbGVyIGluIHVtYXNrduRyZGV0IHDlIHByb2Nlc3NlbiBpbm5hbiBkZW4gc3RhcnRhcy4KKy5UUCAKK1xmQlwtbVxmUCwgXGZCXC1cLW1ha2VcLXBpZGZpbGVcZlAKK0FuduRuZHMgbuRyIGV0dCBwcm9ncmFtIHNvbSBpbnRlIHNrYXBhciBzaW4gZWdlbiBwaWRmaWwgc3RhcnRhcy4gRmxhZ2dhbgora29tbWVyIGF0dCBm5SBcZkJzdGFydFwtc3RvcFwtZGFlbW9uXGZQIGF0dCBza2FwYSBmaWxlbiBzb20gYW5nZXMgbWVkCitcZkJcLVwtcGlkZmlsZVxmUCBvY2ggbORnZ2EgcHJvY2Vzc1wtaWQgaSBkZW4gcHJlY2lzIGlubmFuIHByb2Nlc3Nlbgorc3RhcnRhcy4gT2JzZXJ2ZXJhIGF0dCBkZW4gaW50ZSBrb21tZXIgYXR0IHRhcyBib3J0IG7kciBwcm9ncmFtbWV0CitzdG9wcGFzLiBcZkJPQlNFUlZFUkE6XGZQIEZ1bmt0aW9uZW4ga2Fuc2tlIGludGUgYWxsdGlkIGZ1bmdlcmFyLiBGcmFtZvZyYWxsdAoraW50ZSBu5HIgcHJvZ3JhbW1ldCBzb20gc3RhcnRhcyBm9nJncmVuYXIgc2lnIChmb3JrKSBmcuVuIHNpbgoraHV2dWRwcm9jZXNzLiBE5HJm9nIg5HIgZmxhZ2dhbiBvZnRhc3QgYmFyYSBhbnbkbmRiYXIgaSBzYW1iYW5kIG1lZCBmbGFnZ2FuCitcZkJcLVwtYmFja2dyb3VuZFxmUC4KKy5UUCAKK1xmQlwtdlxmUCwgXGZCXC1cLXZlcmJvc2VcZlAKK1Nrcml2IHV0IHByYXRzYW1tYSBpbmZvcm1hdGlvbnNtZWRkZWxhbmRlbi4KKy4KKy5TSCBSRVRVUlbEUkRFCisuVFAgCitcZkIwXGZQCitFZnRlcmZy5WdhZCDldGfkcmQgdXRm9nJkZXMuIE9tIFxmQlwtXC1va25vZG9cZlAgYW5nYXZzIORyIGRldCDkdmVuIG32amxpZ3QgYXR0CitpbmdlbnRpbmcgYmVo9nZkZSB1dGb2cmFzLiBEZXQga2FuIGjkbmRhIG7kciBcZkJcLVwtc3RhcnRcZlAgYW5nYXZzIG9jaCBlbgorbW90c3ZhcmFuZGUgcHJvY2VzcyByZWRhbiBr9nJkZSwgZWxsZXIgbuRyIFxmQlwtXC1zdG9wXGZQIGFuZ2F2cyBvY2ggZGV0IGludGUKK2Zhbm5zIG7lZ29uIG1vdHN2YXJhbmRlIHByb2Nlc3MuCisuVFAgCitcZkIxXGZQCitPbSBcZkJcLVwtb2tub2RvXGZQIGludGUgYW5nYXZzIG9jaCBpbmdlbnRpbmcgZ2pvcmRlcy4KKy5UUCAKK1xmQjJcZlAKK09tIFxmQlwtXC1zdG9wXGZQIG9jaCBcZkJcLVwtcmV0cnlcZlAgYW5nYXZzLCBtZW4gc2x1dGV0IHDlIHRpZHRhYmVsbGVuIG7lZGRlcyBvY2gKK3Byb2Nlc3NlbiBmb3J0ZmFyYW5kZSBr9nJkZXMuCisuVFAgCitcZkIzXGZQCitBbGxhIGFuZHJhIGZlbC4KKy5QUAorTWVkIFxmQlwtXC1zdGF0dXNcZlBcLeV0Z+RyZGVuIHJldHVybmVyYXMgZvZsamFuZGUgc3RhdHVza29kZXI6CisuVFAgCitcZkIwXGZQCitQcm9ncmFtbWV0IGv2ci4KKy5UUCAKK1xmQjFcZlAKK1Byb2dyYW1tZXQga/ZyIGludGUgb2NoIHBpZFwtZmlsZW4gZmlubnMuCisuVFAgCitcZkIzXGZQCitQcm9ncmFtbWV0IGv2ciBpbnRlLgorLlRQIAorXGZCNFxmUAorS2FuIGludGUgdGEgcmVkYSBw5SBwcm9ncmFtbWV0cyBzdGF0dXMuCisuCisuU0ggRVhFTVBFTAorU3RhcnRhIHNlcnZlcnByb2Nlc3NlbiBcZkJmb29kXGZQLCBz5XZpZGEgaW50ZSBlbiByZWRhbiBr9nIgKGVuIHByb2Nlc3MgbWVkCituYW1uZXQgZm9vZCwgc29tIGv2cnMgc29tIGFuduRuZGFyZW4gZm9vZCwgbWVkIHByb2Nlc3NcLWlkIGkgZm9vZC5waWQpOgorLklQCisubmYKK3N0YXJ0XC1zdG9wXC1kYWVtb24gXC1cLXN0YXJ0IFwtXC1va25vZG8gXC1cLXVzZXIgZm9vZCBcLVwtbmFtZSBmb29kIFwtXC1waWRmaWxlIC92YXIvcnVuL2Zvb2QucGlkIFwtXC1zdGFydGFzIC91c3Ivc2Jpbi9mb29kIFwtXC1jaHVpZCBmb29kIFwtXC0gXC1cLWRhZW1vbgorLmZpCisuUFAKK1PkbmQgXGZCU0lHVEVSTVxmUCB0aWxsIFxmQmZvb2RcZlAgb2NoIHbkbnRhIHVwcCB0aWxsIGZlbSBzZWt1bmRlciBw5SBhdHQgZGVuCitza2FsbCBhdnNsdXRhczoKKy5JUAorLm5mCitzdGFydFwtc3RvcFwtZGFlbW9uIFwtXC1zdG9wIFwtXC1va25vZG8gXC1cLXVzZXIgZm9vZCBcLVwtbmFtZSBmb29kIFwtXC1waWRmaWxlIC92YXIvcnVuL2Zvb2QucGlkIFwtXC1yZXRyeSA1CisuZmkKKy5QUAorRGVtb25zdHJhdGlvbiBhdiBldHQgc2ty5GRkYXJzeXR0IHNjaGVtYSBm9nIgYXR0IGF2c2x1dGEgXGZCZm9vZFxmUDoKKy5JUAorLm5mCitzdGFydFwtc3RvcFwtZGFlbW9uIFwtXC1zdG9wIFwtXC1va25vZG8gXC1cLXVzZXIgZm9vZCBcLVwtbmFtZSBmb29kIFwtXC1waWRmaWxlIC92YXIvcnVuL2Zvb2QucGlkIFwtXC1yZXRyeT1URVJNLzMwL0tJTEwvNQorLmZpCisuUFAKKy4KKy5TSCBG1lJGQVRUQVJFCitNYXJlayBNaWNoYWxraWV3aWN6IDxtYXJla21AaTE3bGludXhiLmlzdHMucHdyLndyb2MucGw+LCBiYXNlcmF0IHDlCitlbiB0aWRpZ2FyZSB2ZXJzaW9uIGF2IElhbiBKYWNrc29uIDxpYW5AY2hpYXJrLmdyZWVuZW5kLm9yZy51az4uCisKK01hbnVhbHNpZGEgYXYgS2xlZSBEaWVuZXMgPGtsZWVAbWl0LmVkdT4sIGRlbHZpcyBvbWZvcm1hdGVyYWQgYXYgSWFuCitKYWNrc29uLCD2dmVyc2F0dCBhdiBQZXRlciBLcmVmdGluZyA8cGV0ZXJrQGRlYmlhbi5vcmc+LgorLlNIICLWVkVSU8RUVE5JTkciCitQZXRlciBLcmVmdGluZyBvY2ggRGFuaWVsIE55bGFuZGVyLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9tYW4vc3YvdXBkYXRlLWFsdGVybmF0aXZlcy44IGIvZHBrZy0xLjE2LjEuMS9tYW4vc3YvdXBkYXRlLWFsdGVybmF0aXZlcy44Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjU2Mjc2ZjIKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL21hbi9zdi91cGRhdGUtYWx0ZXJuYXRpdmVzLjgKQEAgLTAsMCArMSw0MDkgQEAKKy5cIiB1cGRhdGVcLWFsdGVybmF0aXZlcy44CisuXCIgVGhpcyBtYW4gcGFnZSBpcyBjb3B5cmlnaHQgMTk5NyBDaGFybGVzIEJyaXNjb2UtU21pdGgKKy5cIiBUaGlzIGlzIGZyZWUgZG9jdW1lbnRhdGlvbjsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorLlwiIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkCisuXCIgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKy5cIiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLiAgVGhlcmUgaXMgTk8gV0FSUkFOVFkuICBZb3UgY2FuCisuXCIgZmluZCB0aGUgR05VIEdQTCBpbiAvdXNyL3NoYXJlL2NvbW1vbi1saWNlbnNlcy9HUEwgb24gYW55IERlYmlhbiBzeXN0ZW0uCisuXCIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisuXCIKKy5cIiBUaGlzIGZpbGUgd2FzIGdlbmVyYXRlZCB3aXRoIHBvNGEuIFRyYW5zbGF0ZSB0aGUgc291cmNlIGZpbGUuCisuXCIKKy5cIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKy5USCB1cGRhdGVcLWFsdGVybmF0aXZlcyA4IDIwMTFcLTA4XC0xNCBEZWJpYW5wcm9qZWt0ZXQgZHBrZ1wtdmVya3R5Z2VuCisuU0ggTkFNTgordXBkYXRlXC1hbHRlcm5hdGl2ZXMgXC0gdW5kZXJo5WxsZXIgc3ltYm9saXNrYSBs5G5rYXIgZvZyIGF0dCBiZXN05G1tYQorc3RhbmRhcmRrb21tYW5kb24KKy4KKy5TSCBTWU5PUFMKK1xmQnVwZGF0ZVwtYWx0ZXJuYXRpdmVzXGZQIFtcZklmbGFnZ2FcZlAuLi5dIFxmSeV0Z+RyZFxmUAorLgorLlNIIEJFU0tSSVZOSU5HCitcZkJ1cGRhdGVcLWFsdGVybmF0aXZlc1xmUCBza2FwYXIsIHRhciBib3J0LCB1bmRlcmjlbGxlciBvY2ggdmlzYXIgaW5mb3JtYXRpb24KK29tIGRlIHN5bWJvbGlza2EgbORua2FyIHNvbSBpbmflciBpIERlYmlhbnMgYWx0ZXJuYXRpdnN5c3RlbS4KKy5QUAorRGV0IORyIG32amxpZ3QgZvZyIGZsZXJhIGtvbW1hbmRvbiBzb20gdGlsbGhhbmRhaOVsbGVyIGlkZW50aXNrIGVsbGVyCitsaWtuYW5kZSBmdW5rdGlvbmFsaXRldCBhdHQgdmFyYSBpbnN0YWxsZXJhZGUgcOUgZXR0IHN5c3RlbSBzYW10aWRpZ3QuIFRpbGwKK2V4ZW1wZWwgaGFyIG3lbmdhIHN5c3RlbSBmbGVyYSB0ZXh0cmVkaWdlcmluZ3Nwcm9ncmFtIGluc3RhbGxlcmFkZQorc2FtdGlkaWd0LCB2aWxrZXQgZ2VyIGFuduRuZGFybmEgcOUgc3lzdGVtZXQgdmFsbfZqbGlnaGV0ZXIsIHZhciBvY2ggZW4ga2FuCithbnbkbmRhIG9saWthIHRleHRyZWRpZ2VyaW5nc3Byb2dyYW0gb20gZGUgc+Ug9m5za2FyLCBtZW4gZGV0IGf2ciBkZXQgc3blcnQKK2b2ciBldHQgcHJvZ3JhbSBhdHQgZ/ZyYSBldHQgYnJhIHZhbCBhdiB0ZXh0cmVkaWdlcmFyZSBhdHQgYW5yb3BhIG9tIGVuCithbnbkbmRhcmUgaW50ZSBoYXIgZ2pvcnQgZXR0IHNwZWNpZmlrdCB2YWwuCisuUFAKK0RlYmlhbnMgYWx0ZXJuYXRpdnN5c3RlbSBm9nJz9mtlciBs9nNhIGRldHRhIHByb2JsZW0uIEV0dCBnZW5lcmlza3QgbmFtbiBpCitmaWxzeXN0ZW1ldCBkZWxhcyBhdiBhbGxhIGZpbGVyIHNvbSB0aWxsaGFuZGFo5WxsZXIgdXRieXRiYXIKK2Z1bmt0aW9uYWxpdGV0LiBBbHRlcm5hdGl2c3lzdGVtZXQgb2NoIHN5c3RlbWFkbWluaXN0cmF09nJlbiBhbmdlcgordGlsbHNhbW1hbnMgdmlsa2VuIHNwZWNpZmlrIGZpbCBzb20gc2thbGwgcmVmZXJlcmFzIGF2IHNpdHQgZ2VuZXJpc2thCituYW1uLiBUaWxsIGV4ZW1wZWwga2FuIGFsdGVybmF0aXZzeXN0ZW1ldCBs5XRhIGRldCBnZW5lcmlza2EgbmFtbmV0CitcZkkvdXNyL2Jpbi9lZGl0b3JcZlAgYXR0IHBla2EgbW90IFxmSS91c3IvYmluL252aVxmUCBzb20gc3RhbmRhcmQgb20gYuVkZQordGV4dHJlZGlnZXJpbmdzcHJvZ3JhbW1ldCBcZkJlZFxmUCgxKSBvY2ggXGZCbnZpXGZQKDEpIGLlZGEg5HIgaW5zdGFsbGVyYWRlIHDlCitzeXN0ZW1ldC4gU3lzdGVtYWRtaW5pc3RyYXT2cmVuIGthbiD2dmVyc3R5cmEgZGV0dGEgb2NoIGzldGEgZGV0IHBla2EgcOUKK1xmSS91c3IvYmluL2VkXGZQIGlzdORsbGV0LCBvY2ggYWx0ZXJuYXRpdnN5c3RlbWV0IGtvbW1lciBpbnRlIORuZHJhIGRlbm5hCitpbnN05GxsbmluZyBm9nJy5G4gZGV0IG9tYmVkcyBhdHQgZ/ZyYSBkZXQuCisuUFAKK0RldCBnZW5lcmlza2EgbmFtbmV0IORyIGludGUgZW4gZGlyZWt0IHN5bWJvbGlzayBs5G5rIHRpbGwgZGV0IHZhbGRhCithbHRlcm5hdGl2ZXQuIElzdORsbGV0IORyIGRldCBlbiBzeW1ib2xpc2sgbORuayB0aWxsIGV0dCBuYW1uIGkga2F0YWxvZ2VuCitcZklhbHRlcm5hdGl2ZXNcZlAsIHZpbGtldCBpIHNpbiB0dXIg5HIgZW4gc3ltYm9saXNrIGzkbmsgdGlsbCBkZW4gZmFrdGlza2EgZmlsCitkZXQgcGVrYXIgbW90LiBEZXR0YSBn9nJzIHPlIGF0dCBzeXN0ZW1hZG1pbmlzdHJhdPZyZW5zIORuZHJpbmdhciBrYW4KK2JlZ3LkbnNhcyB0aWxsIGthdGFsb2dlbiBcZkkvZXRjXGZQOiBGSFMgKHNlIGRldHRhKSBnZXIgb3JzYWtlciB0aWxsIHZhcmb2cgorZGV0dGEg5HIgQnJhLgorLlBQCitO5HIgZXR0IHBha2V0IHNvbSB0aWxsaGFuZGFo5WxsZXIgZW4gZmlsIG1lZCBlbiBzcGVjaWZpayBmdW5rdGlvbmFsaXRldAoraW5zdGFsbGVyYXMsIORuZHJhcyBlbGxlciB0YXMgYm9ydCwgYW5yb3BhcyBcZkJ1cGRhdGVcLWFsdGVybmF0aXZlc1xmUCBm9nIgYXR0Cit1cHBkYXRlcmEgaW5mb3JtYXRpb24gb20gZmlsZW4gaSBhbHRlcm5hdGl2c3lzdGVtZXQuIFxmQnVwZGF0ZVwtYWx0ZXJuYXRpdmVzXGZQCithbnJvcGFzIG5vcm1hbHQgZnLlbiBcZkJwb3N0aW5zdFxmUFwtIChjb25maWd1cmUpIGVsbGVyIFxmQnByZXJtXGZQXC1za3JpcHRlbgorKGluc3RhbGwpIGkgRGViaWFucGFrZXQuCisuUFAKK0RldCDkciBvZnRhIGzkbXBsaWd0IGb2ciBldHQgYW50YWwgYWx0ZXJuYXRpdiBhdHQgdmFyYSBzeW5rcm9uaXNlcmFkZSwgc+UKK2F0dCBkZSDkbmRyYXMgaSBncnVwcC4gVGlsbCBleGVtcGVsLCBvbSBkZXQg5HIgZmxlcmEgdmVyc2lvbmVyIGF2Cit0ZXh0cmVkaWdlcmFyZW4gXGZCdmlcZlAoMSkgaW5zdGFsbGVyYWRlIGL2ciBtYW51YWxzaWRhbiBzb20gcmVmZXJlcmFzIHRpbGwgYXYKK1xmSS91c3Ivc2hhcmUvbWFuL21hbjEvdmkuMVxmUCBtb3RzdmFyYSBkZW4gYmlu5HIgc29tIHJlZmVyZXJhcyB0aWxsIGF2CitcZkkvdXNyL2Jpbi92aVxmUC4gXGZCdXBkYXRlXC1hbHRlcm5hdGl2ZXNcZlAgaGFudGVyYXIgZGV0dGEgZ2Vub20gXGZJaHV2dWRcZlBcLSBvY2gKK1xmSXNsYXZcZlBcLWzkbmthci4gTuRyIGh1dnVkbORua2VuIHVwcGRhdGVyYXMg5G5kcmFzIOR2ZW4gYW5zbHV0bmEKK3NsYXZs5G5rYXIuIEVuIGh1dnVkbORuayBvY2ggZGVzcyBhbnNsdXRuYSBzbGF2YXIgdXRn9nIgZW4gXGZJbORua2dydXBwXGZQLgorLlBQCitFbiBs5G5rZ3J1cHAga2FuIHZpZCB2YXJqZSBnaXZlbiB0aWRwdW5rdCB2YXJhIGkgZXR0IGF2IHR25SBs5GdlbjoKK2F1dG9tYXRpc2sgZWxsZXIgbWFudWVsbC4gTuRyIGVuIGdydXBwIORyIGkgYXV0b21hdGlza3QgbORnZSBrb21tZXIKK2FsdGVybmF0aXZzeXN0ZW1ldCBhdXRvbWF0aXNrdCBhdHQgYmVzdORtbWEgbuRyIG9jaCBodXIgbORua2FyIHNrYWxsCit1cHBkYXRlcmFzIGTlIHBha2V0IGluc3RhbGxlcmFzIGVsbGVyIHRhcyBib3J0LiBJIG1hbnVlbGx0IGzkZ2Uga29tbWVyCithbHRlcm5hdGl2c3lzdGVtZXQgYXR0IGJlaOVsbGEgYWRtaW5pc3RyYXT2cmVucyB2YWwgb2NoIHVuZHZpa2EgYXR0IORuZHJhCits5G5rYXJuYSAoZvZydXRvbSBvbSBu5WdvdCDkciB0cmFzaWd0KS4KKy5QUAorTORua2dydXBwZXIg5HIgaSBhdXRvbWF0aXNrdCBs5GdlIG7kciBkZSBm9nJzdCBpbnRyb2R1Y2VyYXMgcOUgc3lzdGVtZXQuIE9tCitzeXN0ZW1hZG1pbmlzdHJhdPZyZW4gZ/ZyIORuZHJpbmdhciB0aWxsIHN5c3RlbWV0cyBhdXRvbWF0aXNrYSBpbnN05GxsbmluZ2FyCitrb21tZXIgZGV0dGEgYXR0IG5vdGVyYXMgbuRzdGEgZ+VuZyBcZkJ1cGRhdGVcLWFsdGVybmF0aXZlc1xmUCBr9nJzIHDlIGRlbgor5G5kcmFkZSBs5G5rZW5zIGdydXBwIG9jaCBncnVwcGVuIGtvbW1lciBhdXRvbWF0aXNrdCBhdHQgduR4bGFzIHRpbGwKK21hbnVlbGx0IGzkZ2UuCisuUFAKK1ZhcmplIGFsdGVybmF0aXYgaGFyIGVuIFxmSXByaW9yaXRldFxmUCBrb3BwbGFkIHRpbGwgc2lnLiBO5HIgZW4gbORua2dydXBwIORyIGkKK2F1dG9tYXRpc2t0IGzkZ2Uga29tbWVyIGRldCBhbHRlcm5hdGl2IHNvbSBtZWRsZW1tYXIgaSBncnVwcGVuIHBla2FyIG1vdAordmFyYSBkZW4gbWVkIGRlbiBo9mdzdGEgcHJpb3JpdGV0ZW4uCisuUFAKK07kciBmbGFnZ2FuIFxmSVwtXC1jb25maWdcZlAgYW525G5kcyBrb21tZXIgXGZCdXBkYXRlXC1hbHRlcm5hdGl2ZXNcZlAgYXR0IHZpc2EgYWxsYQordmFsIGb2ciBs5G5rZ3J1cHBlbiBk5HIgXGZJbmFtblxmUCDkciBodXZ1ZGFsdGVybmF0aXZuYW1uZXQuIERldCBha3R1ZWxsYSB2YWxldAor5HIgbWFya2VyYXQgbWVkIGVuICIqIi4gRHUga29tbWVyIGTkcmVmdGVyIGF0dCBm5SB25GxqYSB2YWQgc29tIHNrYWxsIGf2cmFzCittZWQgbORua2dydXBwZW4uIEJlcm9lbmRlIHDlIHZhZCBkdSB25GxqZXIga29tbWVyIGzkbmdydXBwZW4gaW50ZSBs5G5ncmUgYXR0Cit2YXJhIGkgXGZJYXV0b1xmUFwtbORnZS4gRHUgbeVzdGUgYW525G5kYSBmbGFnZ2FuIFxmQlwtXC1hdXRvXGZQIGb2ciBhdHQg5XRlcmflIHRpbGwKK2F1dG9tYXRpc2t0IGzkZ2UgKGVsbGVyIGv2cmEgXGZCXC1cLWNvbmZpZ1xmUCBw5SBueXR0IG9jaCB25GxqYSBhbHRlcm5hdGl2ZXQgc29tCitt5HJrdHMgc29tIGF1dG9tYXRpc2t0KS4KKy5QUAorT20gZHUgdmlsbCBrb25maWd1cmVyYSBpY2tlXC1pbnRlcmFrdGl2dCBrYW4gZHUgYW525G5kYSBmbGFnZ2FuIFxmQlwtXC1zZXRcZlAgaQorc3TkbGxldCAoc2UgbmVkYW4pLgorLlBQCitPbGlrYSBwYWtldCBzb20gdGlsbGhhbmRhaOVsbGVyIHNhbW1hIGZpbCBt5XN0ZSBn9nJhIHPlIGkKK1xmQnNhbWb2cnN05W5kXGZQLiBEZXQgYmV0eWRlciBhdHQgZGV0IORyIGV0dCBcZkJrcmF2XGZQIGF0dCBhbGxhIGludm9sdmVyYWRlCitwYWtldCBhbnbkbmRlciBzaWcgYXYgXGZCdXBkYXRlXC1hbHRlcm5hdGl2ZXNcZlAuIERldCDkciBpbnRlIG32amxpZ3QgYXR0Civ2dmVyc3R5cmEgZW4gZmlsIGV0dCBwYWtldCBzb20gaW50ZSBhbnbkbmRlcgorXGZCdXBkYXRlXC1hbHRlcm5hdGl2ZXNcZlBcLW1la2FuaXNtZW4uCisuCisuU0ggVEVSTUlOT0xPR0kKK0VmdGVyIFxmQnVwZGF0ZVwtYWx0ZXJuYXRpdmVzXGZQIGFrdGl2aXRldGVyIORyIGdhbnNrYSBrb21wbGV4YSBibGlyIGRldCBlbmtsYXJlCithdHQgZvZyc3TlIGh1ciBkZXQgZnVuZ2VyYXIgZ2Vub20gYXR0IHZpIGb2cmtsYXJhciBu5WdyYSBzcGVjaWZpa2EgdGVybWVyLgorLlRQIAorZ2VuZXJpc2t0IG5hbW4gKGVsbGVyIGFsdGVybmF0aXZs5G5rKS4KK0V0dCBuYW1uLCB0aWxsIGV4ZW1wZWwgXGZJL3Vzci9iaW4vZWRpdG9yXGZQLCBzb20gdmlhIGFsdGVybmF0aXZzeXN0ZW1ldCBwZWthcgorcOUgZW4gYXYgZmxlcmEgZmlsZXIgbWVkIGxpa25hbmRlIGZ1bmt0aW9uYWxpdGV0LgorLlRQIAorYWx0ZXJuYXRpdm5hbW4KK05hbW5ldCBw5SBlbiBzeW1ib2xpc2sgbORuayBpIGFsdGVybmF0aXZrYXRhbG9nZW4uCisuVFAgCithbHRlcm5hdGl2IChlbGxlciBhbHRlcm5hdGl2c/ZrduRnKQorTmFtbmV0IHDlIGVuIHNwZWNpZmlrIGZpbCBpIGZpbHN5c3RlbWV0LCBzb20ga2FuIHZhcmEgdGlsbGfkbmdsaWcgdmlhIGV0dAorZ2VuZXJpc2t0IG5hbW4gbWVkIGhq5GxwIGF2IGFsdGVybmF0aXZzeXN0ZW1ldC4KKy5UUCAKK2FsdGVybmF0aXZrYXRhbG9nCitFbiBrYXRhbG9nLCBzb20gc3RhbmRhcmQgXGZJL2V0Yy9hbHRlcm5hdGl2ZXNcZlAsIHNvbSBpbm5laOVsbGVyIGRlIHN5bWJvbGlza2EKK2zkbmthcm5hLgorLlRQIAorYWRtaW5pc3RyYXRpdiBrYXRhbG9nCitFbiBrYXRhbG9nLCBzb20gc3RhbmRhcmQgXGZJL3Zhci9saWIvZHBrZy9hbHRlcm5hdGl2ZXNcZlAsIHNvbSBpbm5laOVsbGVyCit0aWxsc3TlbmRzaW5mb3JtYXRpb24gZvZyIFxmQnVwZGF0ZVwtYWx0ZXJuYXRpdmVzXGZQLgorLlRQIAorbORua2dydXBwCitFbiB1cHBz5HR0bmluZyByZWxhdGVyYWRlIHN5bWJvbGlza2EgbORua2FyLCBhdnNlZGRhIGF0dCB1cHBkYXRlcmFzIHNvbSBlbgorZ3J1cHAuCisuVFAgCitodXZ1ZGzkbmsKK0FsdGVybmF0aXZs5G5rZW4gaSBlbiBs5G5rZ3J1cHAgc29tIGJlc3TkbW1lciBodXIgZGUgYW5kcmEgbORua2FybmEgaQorZ3J1cHBlbiBzdORsbHMgaW4uCisuVFAgCitzbGF2bORuaworRW4gYWx0ZXJuYXRpdmzkbmsgaSBlbiBs5G5rZ3J1cHAgc29tIHN0eXJzIGF2IGh1ciBodXZ1ZGzkbmtlbiBzdORsbHMgaW4uCisuVFAgCithdXRvbWF0aXNrdCBs5GdlCitO5HIgZW4gbORua2dydXBwIORyIGkgYXV0b21hdGlza3QgbORnZSBm9nJz5GtyYXIgYWx0ZXJuYXRpdnN5c3RlbWV0IGF0dAorbORua2FybmEgaSBncnVwcGVuIHBla2FyIHDlIGRldCBo9mdzdHByaW9yaXRlcmFkZSBhbHRlcm5hdGl2ZXQgc29tIORyCits5G1wbGlndCBm9nIgZ3J1cHBlbi4KKy5UUCAKK21hbnVlbGx0IGzkZ2UKK07kciBlbiBncnVwcCDkciBpIG1hbnVlbGx0IGzkZ2Uga29tbWVyIGludGUgYWx0ZXJuYXRpdnN5c3RlbWV0IGF0dCB1dGb2cmEKK27lZ3JhIORuZHJpbmdhciB0aWxsIHN5c3RlbWFkbWluaXN0cmF09nJlbnMgaW5zdORsbG5pbmdhci4KKy4KKy5TSCBLT01NQU5ET04KKy5UUCAKK1xmQlwtXC1pbnN0YWxsXGZQIFxmSWzkbmsgbmFtbiBz9mt25GcgcHJpb3JpdGV0XGZQIFtcZkJcLVwtc2xhdmVcZlAgXGZJbORuayBuYW1uIHP2a3bkZ1xmUF0uLi4KK0zkZ2cgdGlsbCBlbiBncnVwcCBtZWQgYWx0ZXJuYXRpdiB0aWxsIHN5c3RlbWV0LiBcZkls5G5rXGZQIORyIGRldCBnZW5lcmlza2EKK25hbW5ldCBm9nIgaHV2dWRs5G5rZW4sIFxmSW5hbW5cZlAg5HIgbmFtbmV0IHDlIGRlc3Mgc3ltYm9saXNrYSBs5G5rIGkKK2FsdGVybmF0aXZrYXRhbG9nZW4gb2NoIFxmSXP2a3bkZ1xmUCDkciBhbHRlcm5hdGl2ZXQgc29tIGludHJvZHVjZXJhcyBm9nIKK2h1dnVkbORua2VuLiBBcmd1bWVudGVuIGVmdGVyIFxmQlwtXC1zbGF2ZVxmUCDkciBkZXQgZ2VuZXJpc2thIG5hbW5ldCwgbmFtbmV0IHDlCitkZW4gc3ltYm9saXNrYSBs5G5rZW4gaSBhbHRlcm5hdGl2a2F0YWxvZ2VuIG9jaCBhbHRlcm5hdGl2ZXQgZvZyCitzbGF2bORua2VuLiBOb2xsIGVsbGVyIGZsZXJhIFxmQlwtXC1zbGF2ZVxmUFwtZmxhZ2dvciBrYW4gYW5nZXMsIGTkciBhbGxhIGb2bGpzIGF2Cit0cmUgYXJndW1lbnQuIE9ic2VydmVyYSBhdHQgb20gZXR0IHNsYXZhbHRlcm5hdGl2IGludGUgZmlubnMga29tbWVyCittb3RzdmFyYW5kZSBzbGF2bORuayBoZWx0IGVua2VsdCBpbnRlIGF0dCBpbnN0YWxsZXJhcyAoZW4gdmFybmluZyBrb21tZXIKK2ZvcnRmYXJhbmRlIGF0dCB2aXNhcykuIE9tIGVuIHZlcmtsaWcgZmlsIORyIGluc3RhbGxlcmFkIGTkciBlbgorYWx0ZXJuYXRpdmzkbmsgbeVzdGUgaW5zdGFsbGVyYXMgYmVo5WxscyBkZW4gc+V2aWRhIGludGUgXGZCXC1cLWZvcmNlXGZQIGFuduRuZHMuCisuSVAKK09tIGRldCBhbmdpdm5hIGFsdGVybmF0aXZuYW1uZXQgcmVkYW4gZmlubnMgaSBhbHRlcm5hdGl2c3lzdGVtZXRzIGRhdGFiYXMKK2tvbW1lciBpbmZvcm1hdGlvbmVuIHNvbSBhbmdlcyBhdHQgbORnZ2FzIGluIHNvbSBlbiBueSB1cHBz5HR0bmluZyBhdgorYWx0ZXJuYXRpdiBm9nIgZ3J1cHBlbi4gT20gaW50ZSBrb21tZXIgZW4gbnkgZ3J1cHAsIGluc3TkbGxkIHDlIGF1dG9tYXRpc2t0Cits5GdlLCBhdHQgbORnZ2FzIHRpbGwgbWVkIGdpdmVuIGluZm9ybWF0aW9uLiBPbSBncnVwcGVuIORyIGkgYXV0b21hdGlza3QKK2zkZ2Ugb2NoIGRldCBhbHRlcm5hdGl2IHNvbSBs5GdncyBpbiBoYXIgaPZncmUgcHJpb3JpdGV0IORuIGFsbGEgYW5kcmEKK2luc3RhbGxlcmFkZSBhbHRlcm5hdGl2IGb2ciBncnVwcGVuIGtvbW1lciBkZSBzeW1ib2xpc2thIGzkbmthcm5hIGF0dAordXBwZGF0ZXJhcyBz5SBhdHQgZGUgcGVrYXIgcOUgZGUgbnlsaWdlbiB0aWxsYWdkYSBhbHRlcm5hdGl2ZW4uCisuVFAgCitcZkJcLVwtc2V0XGZQIFxmSW5hbW4gc/ZrduRnXGZQCitT5HR0IHByb2dyYW1tZXQgXGZJc/ZrduRnXGZQIHNvbSBldHQgYWx0ZXJuYXRpdiB0aWxsIFxmSW5hbW5cZlAuIERldHRhIG1vdHN2YXJhcgorXGZCXC1cLWNvbmZpZ1xmUCBtZW4g5HIgaWNrZVwtaW50ZXJha3RpdnQgb2NoIGthbiBk5HJtZWQgYW525G5kYXMgaSBldHQgc2tyaXB0LgorLlRQIAorXGZCXC1cLXJlbW92ZVxmUCBcZkluYW1uIHP2a3bkZ1xmUAorVGEgYm9ydCBldHQgYWx0ZXJuYXRpdiBvY2ggYWxsYSBkZXNzIGFua251dG5hIHNsYXZs5G5rYXIuIFxmSW5hbW5cZlAg5HIgZXR0CituYW1uIGkgYWx0ZXJuYXRpdmthdGFsb2dlbiBvY2ggXGZJc/ZrduRnXGZQIORyIGV0dCBhYnNvbHV0IGZpbG5hbW4gdGlsbCB2aWxrZXQKK1xmSW5hbW5cZlAga3VuZGUgbORua2FzLiBPbSBcZkluYW1uXGZQIGZha3Rpc2t0IORyIGzkbmthdCB0aWxsIFxmSXP2a3bkZ1xmUCBrb21tZXIKK1xmSW5hbW5cZlAgYXR0IHVwcGRhdGVyYXMgdGlsbCBhdHQgcGVrYSBw5SBldHQgYW5uYXQgbORtcGxpZ3QgYWx0ZXJuYXRpdiAob2NoCitncnVwcGVuIHN05GxscyB0aWxsYmFrYSB0aWxsIGF1dG9tYXRpc2t0IGzkZ2UpLCBlbGxlciBhdHQgdGFzIGJvcnQgb20gZGV0CitpbnRlIGZpbm5zIG7lZ290IGFsdGVybmF0aXYga3Zhci4gQW5rbnV0bmEgc2xhdmzkbmthciBrb21tZXIgdXBwZGF0ZXJhcworZWxsZXIgdGFzIGJvcnQgcOUgbW90c3ZhcmFuZGUgdmlzLiBPbSBs5G5rZW4gaW50ZSBm9nIgdGlsbGbkbGxldCBwZWthciBw5QorXGZJc/ZrduRnXGZQIGtvbW1lciBpbmdhIGzkbmthciBhdHQgdXBwZGF0ZXJhcywgZW5kYXN0IGluZm9ybWF0aW9uZW4gb20KK2FsdGVybmF0aXZldCB0YXMgYm9ydC4KKy5UUCAKK1xmQlwtXC1yZW1vdmVcLWFsbFxmUCBcZkluYW1uXGZQCitUYXIgYm9ydCBhbGxhIGFsdGVybmF0aXYgb2NoIGFsbGEgZGVyYXMgYW5zbHV0bmEgc2xhdmzkbmthci4gXGZJbmFtblxmUCDkciBldHQKK25hbW4gaSBhbHRlcm5hdGl2a2F0YWxvZ2VuLgorLlRQIAorXGZCXC1cLWFsbFxmUAorQW5yb3BhciBcZkJcLVwtY29uZmlnXGZQIHDlIGFsbGEgYWx0ZXJuYXRpdi4gS2FuIG1lZCBmcmFtZ+VuZyBrb21iaW5lcmFzIG1lZAorXGZCXC1cLXNraXBcLWF1dG9cZlAgZvZyIGF0dCBn5SBpZ2Vub20gb2NoIGtvbmZpZ3VyZXJhIGFsbGEgYWx0ZXJuYXRpdiBzb20gaW50ZSDkcgorc3TkbGxkYSBpIGF1dG9tYXRpc2t0IGzkZ2UuIFRyYXNpZ2EgYWx0ZXJuYXRpdiB2aXNhcyBvY2tz5S4gRXR0IGVua2VsdCBz5HR0CithdHQgZml4YSBhbGxhIHRyYXNpZ2EgYWx0ZXJuYXRpdiDkciBk5HJtZWQgYXR0IGFucm9wYSBcZkJ5ZXMgXFthcV1cW2FxXSB8Cit1cGRhdGVcLWFsdGVybmF0aXZlcyBcLVwtZm9yY2UgXC1cLWFsbFxmUC4KKy5UUCAKK1xmQlwtXC1hdXRvXGZQIFxmSW5hbW5cZlAKK1N05GxsIGluIGzkbmtncnVwcGVuIGJha29tIGFsdGVybmF0aXZldCBm9nIgXGZJbmFtblxmUCB0aWxsIGF1dG9tYXRpc2t0Cits5GdlLiBEZXR0YSBm5XIgdGlsbCBm9mxqZCBhdHQgZGVuIGh1dnVkc2FrbGlnYSBzeW1ib2xpc2thIGzkbmtlbiBvY2ggZGVzcworc2xhdmFyIHVwcGRhdGVyYXMgdGlsbCBhdHQgcGVrYSBw5SBkZXQgaPZnc3QgcHJpb3JpdGVyYWRlIGluc3RhbGxlcmFkZQorYWx0ZXJuYXRpdmV0LgorLlRQIAorXGZCXC1cLWRpc3BsYXlcZlAgXGZJbmFtblxmUAorVmlzYSBpbmZvcm1hdGlvbiBvbSBs5G5rZ3J1cHBlbi4gSW5mb3JtYXRpb24gc29tIHZpc2FzIORyIGdydXBwZW5zIGzkZ2UKKyhhdXRvbWF0aXNrdCBlbGxlciBtYW51ZWxsdCksIHZpbGtldCBhbHRlcm5hdGl2IGRlbiBodXZ1ZHNha2xpZ2EgbORua2VuIGp1c3QKK251IHBla2FyIHDlLCB2aWxrYSBhbmRyYSBhbHRlcm5hdGl2IHNvbSDkciB0aWxsZ+RuZ2xpZ2EgKG9jaCBkZXJhcworbW90c3ZhcmFuZGUgc2xhdmFsdGVybmF0aXYpLCBzYW10IGRldCBo9mdzdCBwcmlvcml0ZXJhZGUgYWx0ZXJuYXRpdiBzb20gZvZyCitu5HJ2YXJhbmRlIORyIGluc3RhbGxlcmF0LgorLlRQIAorXGZCXC1cLWdldFwtc2VsZWN0aW9uc1xmUAorVmlzYSBhbGxhIGh1dnVkYWx0ZXJuYXRpdm5hbW4gKGRlIHNvbSBzdHlyIGVuIGzkbmtncnVwcCkgb2NoIGRlcmFzCitzdGF0dXMuIFZhcmplIHJhZCBpbm5laOVsbGVyIHVwcCB0aWxsIHRyZSBm5Gx0IChhdmRlbGFkZSBtZWQgZXR0IGVsbGVyIGZsZXJhCitibGFua3N0ZWcpLiBEZXQgZvZyc3RhIGbkbHRldCDkciBhbHRlcm5hdGl2bmFtbmV0LCBkZXQgYW5kcmEg5HIgc3RhdHVzCisoYW50aW5nZW4gImF1dG8iIGVsbGVyICJtYW51ZWxsIiksIG9jaCBkZXQgc2lzdGEgaW5uZWjlbGxlciBkZXQgbnV2YXJhbmRlCit2YWxldCBm9nIgYWx0ZXJuYXRpdmV0IChvYnNlcnZlcmE6IGRldHRhIORyIGV0dCBmaWxuYW1uIG9jaCBrYW4gZORybWVkCitpbm5laOVsbGEgYmxhbmtzdGVnKS4KKy5UUCAKK1xmQlwtXC1zZXRcLXNlbGVjdGlvbnNcZlAKK0zkcyBlbiBhbHRlcm5hdGl2a29uZmlndXJhdGlvbiBmcuVuIHN0YW5kYXJkIGluIHDlIGZvcm1hdGV0IHNvbSBza2FwYXMgYXYKK1xmQnVwZGF0ZVwtYWx0ZXJuYXRpdmVzIFwtXC1nZXRcLXNlbGVjdGlvbnNcZlAgb2NoIGtvbmZpZ3VyZXJhIG9tIGRlbSBw5QorbW90c3ZhcmFuZGUgc+R0dC4KKy5UUCAKK1xmQlwtXC1xdWVyeVxmUCBcZkluYW1uXGZQCitWaXNhIGluZm9ybWF0aW9uIG9tIGzkbmtncnVwcGVuIHDlIHNhbW1hIHPkdHQgc29tIFwtXC1kaXNwbGF5LCBtZW4gaSBldHQKK21hc2tpbnRvbGtiYXJ0IHPkdHQgKHNlIHN0eWNrZXQgXGZCRlLFR0VGT1JNQVRcZlAgbmVkYW4pLgorLlRQIAorXGZCXC1cLWxpc3RcZlAgXGZJbmFtblxmUAorVmlzYXIgYWxsYSBt5WwgZvZyIGzkbmtncnVwcGVuLgorLlRQIAorXGZCXC1cLWNvbmZpZ1xmUCBcZkluYW1uXGZQCitWaXNhIHRpbGxn5G5nbGlnYSBhbHRlcm5hdGl2IGb2ciBlbiBs5G5rZ3J1cHAgb2NoIGzldCBhbnbkbmRhcmVuIGF0dAoraW50ZXJha3RpdnQgduRsamEgdmlsa2VuIHNvbSBza2FsbCBhbnbkbmRhcy4gTORua2dydXBwZW4gdXBwZGF0ZXJhcy4KKy5UUCAKK1xmQlwtXC1oZWxwXGZQCitWaXNhciBoauRscHNr5HJtIG9jaCBhdnNsdXRhci4KKy5UUCAKK1xmQlwtXC12ZXJzaW9uXGZQCitWaXNhciB2ZXJzaW9uIG9jaCBhdnNsdXRhci4KKy4KKy5TSCBGTEFHR09SCisuVFAgCitcZkJcLVwtYWx0ZGlyXGZQXGZJIGthdGFsb2dcZlAKK0FuZ2VyIGFsdGVybmF0aXZrYXRhbG9nZW4gb20gZGV0dGEgaW50ZSBza2FsbCB2YXJhIHN0YW5kYXJkduRyZGV0LgorLlRQIAorXGZCXC1cLWFkbWluZGlyXGZQXGZJIGthdGFsb2dcZlAKK0FuZ2VyIGRlbiBhZG1pbmlzdHJhdGl2YSBrYXRhbG9nZW4gb20gZGV0dGEgaW50ZSBza2FsbCB2YXJhIHN0YW5kYXJkduRyZGV0LgorLlRQIAorXGZCXC1cLWxvZ1xmUCBcZklmaWxcZlAKK0FuZ2VyIGxvZ2dmaWxlbiwgb20gZGV0IHNrYWxsIHZhcmEgZW4gYW5uYW4g5G4gc3RhbmRhcmQKKygvdmFyL2xvZy9hbHRlcm5hdGl2ZXMubG9nKS4KKy5UUCAKK1xmQlwtXC1mb3JjZVxmUAorTOV0IFxmQnVwZGF0ZVwtYWx0ZXJuYXRpdmVzXGZQIGVyc+R0dGEgZWxsZXIgdGEgYm9ydCBlbiB2ZXJrbGlnIGZpbCBzb20KK2luc3RhbGxlcmF0cyBk5HIgZW4gYWx0ZXJuYXRpdmzkbmsgbeVzdGUgaW5zdGFsbGVyYXMgZWxsZXIgdGFzIGJvcnQuCisuVFAgCitcZkJcLVwtc2tpcFwtYXV0b1xmUAorSG9wcGEg9nZlciBrb25maWd1cmVyaW5nc2Zy5WdvciBm9nIgYWx0ZXJuYXRpdiBzb20g5HIga29ycmVrdCBrb25maWd1cmVyYWRlCitpIGF1dG9tYXRpc2t0IGzkZ2UuIERlbm5hIGZsYWdnYSDkciBlbmRhc3QgcmVsZXZhbnQgZvZyIFxmQlwtXC1jb25maWdcZlAgb2NoCitcZkJcLVwtYWxsXGZQLgorLlRQIAorXGZCXC1cLXZlcmJvc2VcZlAKK1Zpc2EgZmxlciBrb21tZW50YXJlciBvbSB2YWQgXGZCdXBkYXRlXC1hbHRlcm5hdGl2ZXNcZlAgZ/ZyLgorLlRQIAorXGZCXC1cLXF1aWV0XGZQCitTa3JpdiBpbnRlIG7lZ3JhIGtvbW1lbnRhcmVyIHPldmlkYSBkZXQgaW50ZSB1cHBzdOVyIGV0dCBmZWwuCisuCisuU0ggTUlMStZWQVJJQUJMRVIKKy5UUCAKK1xmQkRQS0dfQURNSU5ESVJcZlAKK09tIHNhdHQgb2NoIGZsYWdnYW4gXGZCXC1cLWFkbWluZGlyXGZQIGludGUgaGFyIGFuZ2l2aXRzIGFuduRuZHMgZGV0IHNvbQorYmFzXC1hZG1pbmlzdHJhdGl2IGthdGFsb2cuCisuCisuU0ggRklMRVIKKy5UUCAKK1xmSS9ldGMvYWx0ZXJuYXRpdmVzL1xmUAorRGVuIGb2cnZhbGRhIGFsdGVybmF0aXZrYXRhbG9nZW4uIEthbiD2dmVyc3R5cmFzIG1lZCBmbGFnZ2FuIFxmQlwtXC1hbHRkaXJcZlAuCisuVFAgCitcZkkvdmFyL2xpYi9kcGtnL2FsdGVybmF0aXZlcy9cZlAKK0RlbiBm9nJ2YWxkYSBhZG1pbmlzdHJhdGl2YSBrYXRhbG9nZW4uIEthbiD2dmVyc3R5cmFzIG1lZCBmbGFnZ2FuCitcZkJcLVwtYWRtaW5kaXJcZlAuCisuCisuU0ggUkVUVVJWxFJERQorLlRQIAorXGZCMFxmUAorRGVuIPZuc2thZGUgZnVua3Rpb25lbiB1dGb2cmRlcyB1dGFuIGZlbC4KKy5UUCAKK1xmQjJcZlAKK1Byb2JsZW0gdXBwc3RvZCB2aWQgdG9sa25pbmcgYXYga29tbWFuZG9yYWRlbiBlbGxlciBu5HIgZnVua3Rpb25lbiBza3VsbGUKK3V0ZvZyYXMuCisuCisuU0ggRlLFR0VGT1JNQVQKK0Zvcm1hdGV0IGb2ciBcZkJ1cGRhdGVcLWFsdGVybmF0aXZlcyBcLVwtcXVlcnlcZlAgYW525G5kZXIgZXR0IFJGQzgyMlwtbGlrbmFuZGUKK3BsYXR0IGZvcm1hdC4gRGV0IGJlc3TlciBhdiBcZkluXGZQICsgMSBibG9jayBk5HIgXGZJblxmUCDkciBhbnRhbGV0IHRpbGxn5G5nbGlnYQorYWx0ZXJuYXRpdiBpIGRlbiBlZnRlcmZy5WdhZGUgbORua2dydXBwZW4uIERldCBm9nJzdGEgYmxvY2tldCBpbm5laOVsbGVyCitm9mxqYW5kZSBm5Gx0OgorLlRQIAorXGZCTGluazpcZlBcZkkgbORua1xmUAorR2VuZXJpc2t0IG5hbW4gZvZyIGFsdGVybmF0aXZldC4KKy5UUCAKK1xmQlN0YXR1czpcZlBcZkkgc3RhdHVzXGZQCitTdGF0dXMgZvZyIGFsdGVybmF0aXZldCAoXGZCYXV0b1xmUCBlbGxlciBcZkJtYW51YWxcZlApLgorLlRQIAorXGZCQmVzdDpcZlBcZkkgYuRzdGFcLXZhbFxmUAorU/ZrduRnZW4gdGlsbCBkZXQgYuRzdGEgYWx0ZXJuYXRpdmV0IGkgbORua2dydXBwZW4uIFRhcyBpbnRlIG1lZCBvbSBpbmdldAorYWx0ZXJuYXRpdiDkciB0aWxsZ+RuZ2xpZ3QuCisuVFAgCitcZkJWYWx1ZTpcZlBcZkkgZvZyXC1u5HJ2YXJhbmRlXC12YWx0XC1hbHRlcm5hdGl2XGZQCitT9mt25GdlbiB0aWxsIGRldCBm9nIgbuRydmFyYW5kZSB2YWxkYSBhbHRlcm5hdGl2ZXQuIEthbiDkdmVuIHRhIGRldCBtYWdpc2thCit25HJkZXQgXGZCbm9uZVxmUCAoaW5nZXQpLiBEZXQgYW525G5kcyBvbSBkZXQgaW50ZSBmaW5ucyBu5WdvbiBs5G5rLgorLlRQIAorLlRQIAor1nZyaWdhIGJsb2NrIGJlc2tyaXZlciB0aWxsZ+RuZ2xpZ2EgYWx0ZXJuYXRpdiBpIGRlbiBlZnRlcmZy5WdhZGUgbORua2dydXBwZW46CisuVFAgCitcZkJBbHRlcm5hdGl2ZTpcZlBcZkkgc/ZrduRnXC10aWxsXC1hbHRlcm5hdGl2ZXRcZlAKK1P2a3bkZyB0aWxsIGFsdGVybmF0aXZldCBzb20gYmVza3JpdnMgaSBibG9ja2V0LgorLlRQIAorXGZCUHJpb3JpdHk6XGZQXGZJIHByaW9yaXRldHN25HJkZVxmUAorVuRyZGV0IGb2ciBwcmlvcml0ZXRlbiBw5SBhbHRlcm5hdGl2ZXQuCisuVFAgCitcZkJTbGF2ZXM6XGZQXGZJIGxpc3RhXC32dmVyXC1zbGF2YXJcZlAKK07kciBkZW5uYSBydWJyaWsg5HIgdGlsbGfkbmdsaWcgaW5uZWjlbGxlciBcZkJuZXh0XGZQXC1yYWRlcm5hIGFsbGEKK3NsYXZhbHRlcm5hdGl2IHNvbSBrb3BwbGFzIHRpbGwgaHV2dWRs5G5rZW4gZvZyIGFsdGVybmF0aXZldC4gVmFyamUgcmFkCitiZXNrcml2ZXIgZW4gc2xhZy4gVmFyamUgcmFkIGlubmVo5WxsZXIgZXR0IGJsYW5rc3RlZywgZGV0IGdlbmVyaXNrYSBuYW1uZXQKK3DlIHNsYXZhbHRlcm5hdGl2ZXQsIHl0dGVybGlnYXJlIGV0dCBibGFua3N0ZWcsIG9jaCBz9mt25GdlbiB0aWxsCitzbGF2YWx0ZXJuYXRpdmV0LgorLgorLlRQIAorXGZCRXhlbXBlbFxmUAorLm5mCiskIHVwZGF0ZVwtYWx0ZXJuYXRpdmVzIFwtXC1xdWVyeSBlZGl0b3IKK0xpbms6IGVkaXRvcgorU3RhdHVzOiBhdXRvCitCZXN0OiAvdXNyL2Jpbi92aW0uZ3RrCitWYWx1ZTogL3Vzci9iaW4vdmltLmd0aworCitBbHRlcm5hdGl2ZTogL2Jpbi9lZAorUHJpb3JpdHk6IFwtMTAwCitTbGF2ZXM6CisgZWRpdG9yLjEuZ3ogL3Vzci9zaGFyZS9tYW4vbWFuMS9lZC4xLmd6CisKK0FsdGVybmF0aXZlOiAvdXNyL2Jpbi92aW0uZ3RrCitQcmlvcml0eTogNTAKK1NsYXZlczoKKyBlZGl0b3IuMS5neiAvdXNyL3NoYXJlL21hbi9tYW4xL3ZpbS4xLmd6CisgZWRpdG9yLnJ1LjEuZ3ogL3Vzci9zaGFyZS9tYW4vcnUvbWFuMS92aW0uMS5negorIGVkaXRvci5wbC5JU084ODU5XC0yLjEuZ3ogL3Vzci9zaGFyZS9tYW4vcGwuSVNPODg1OVwtMi9tYW4xL3ZpbS4xLmd6CisgZWRpdG9yLml0LklTTzg4NTlcLTEuMS5neiAvdXNyL3NoYXJlL21hbi9pdC5JU084ODU5XC0xL21hbjEvdmltLjEuZ3oKKyBlZGl0b3IucGwuVVRGXC04LjEuZ3ogL3Vzci9zaGFyZS9tYW4vcGwuVVRGXC04L21hbjEvdmltLjEuZ3oKKyBlZGl0b3IuaXQuMS5neiAvdXNyL3NoYXJlL21hbi9pdC9tYW4xL3ZpbS4xLmd6CisgZWRpdG9yLmZyLlVURlwtOC4xLmd6IC91c3Ivc2hhcmUvbWFuL2ZyLlVURlwtOC9tYW4xL3ZpbS4xLmd6CisgZWRpdG9yLmZyLjEuZ3ogL3Vzci9zaGFyZS9tYW4vZnIvbWFuMS92aW0uMS5negorIGVkaXRvci5pdC5VVEZcLTguMS5neiAvdXNyL3NoYXJlL21hbi9pdC5VVEZcLTgvbWFuMS92aW0uMS5negorIGVkaXRvci5wbC4xLmd6IC91c3Ivc2hhcmUvbWFuL3BsL21hbjEvdmltLjEuZ3oKKyBlZGl0b3IuZnIuSVNPODg1OVwtMS4xLmd6IC91c3Ivc2hhcmUvbWFuL2ZyLklTTzg4NTlcLTEvbWFuMS92aW0uMS5negorLmZpCisuCisuU0ggRElBR05PU1RJSworTWVkIFxmQlwtXC12ZXJib3NlXGZQIGtvbW1lciBcZkJ1cGRhdGVcLWFsdGVybmF0aXZlc1xmUCBhdHQgYmVza3JpdmEgaSBkZXQgb+RuZGxpZ2EKK3ZhZCBkZXQgZ/ZyIHDlIHNpbiBzdGFuZGFyZCB1dFwta2FuYWwuIE9tIGV0dCBmZWwgdXBwc3TlciBza3JpdmVyCitcZkJ1cGRhdGVcLWFsdGVybmF0aXZlc1xmUCB1dCBmZWxtZWRkZWxhbmRlbiBw5SBzaW4gc3RhbmRhcmQgZmVsXC1rYW5hbCBvY2gKK2F2c2x1dGFyIG1lZCBmZWxrb2RlbiAyLiBEaWFnbm9zdGlraW5mb3JtYXRpb25lbiBi9nIgdmFyYSBzauRsdmb2cmtsYXJhbmRlLAorc+RuZCBpbiBlbiBmZWxyYXBwb3J0IG9tIGR1IGludGUgdHlja2VyIGF0dCBkZW4g5HIgZGV0LgorLgorLlNIIEVYRU1QRUwKK0RldCDkciBmbGVyYSBwYWtldCBzb20gdGlsbGhhbmRhaOVsbGVyIGVuIHRleHRyZWRpZ2VyYXJlIGtvbXBhdGliZWwgbWVkCitcZkJ2aVxmUCwgdGlsbCBleGVtcGVsIFxmQm52aVxmUCBvY2ggXGZCdmltXGZQLiBWaWxrZW4gYmVzdORtcyB2aWEgbORua2dydXBwZW4gXGZCdmlcZlAsCit2aWxrZW4gaW5uZWjlbGxlciBs5G5rYXIgYuVkZSBm9nIgc2rkbHZhIHByb2dyYW1tZXQgb2NoIGRlc3NhIGFua251dG5hCittYW51YWxzaWRhLgorLlBQCitG9nIgYXR0IHZpc2Egdmlsa2EgdGlsbGfkbmdsaWdhIHBha2V0IHNvbSB0aWxsaGFuZGFo5WxsZXIgXGZCdmlcZlAsIHNhbXQgZGVzcworYWt0dWVsbGEgaW5zdORsbG5pbmcsIGFuduRuZCBrb21tYW5kb3QgXGZCXC1cLWRpc3BsYXlcZlA6CisuUlMKKy5QUAorXGZCdXBkYXRlXC1hbHRlcm5hdGl2ZXMgXC1cLWRpc3BsYXkgdmlcZlAKKy5SRQorLlBQCitG9nIgYXR0IHbkbGphIGVuIHNwZWNpZmlrIGltcGxlbWVudGF0aW9uIGF2IFxmQnZpXGZQLCB1dGb2ciBkZXR0YSBrb21tYW5kbyBzb20KK3Jvb3Qgb2NoIHbkbGogc2VkYW4gZXR0IHRhbCBmcuVuIGxpc3RhbjoKKy5SUworLlBQCitcZkJ1cGRhdGVcLWFsdGVybmF0aXZlcyBcLVwtY29uZmlnIHZpXGZQCisuUkUKKy5QUAorRvZyIGF0dCDldGVyZ+UgdGlsbCBhdHQgXGZCdmlcZlBcLWltcGxlbWVudGF0aW9uZW4gduRsanMgYXV0b21hdGlza3QsIHV0ZvZyCitkZXR0YSBzb20gcm9vdDoKKy5SUworLlBQCitcZkJ1cGRhdGVcLWFsdGVybmF0aXZlcyBcLVwtYXV0byB2aVxmUAorLlJFCisuCisuU0ggUFJPR1JBTUZFTAorT20gZHUgaGl0dGFyIGV0dCBmZWwgYmVyIHZpIGRpZyByYXBwb3J0ZXJhIGRldCB2aWEgRGViaWFucworZmVscmFwcG9ydGVyaW5nc3N5c3RlbS4KKy5QUAorT20gZHUgaGl0dGFyIG7lZ3JhIGRpc2tyZXBhbnNlciBtZWxsYW4gdmFkIFxmQnVwZGF0ZVwtYWx0ZXJuYXRpdmVzXGZQIGf2ciBvY2gKK3ZhZCBzb20gc3TlciBpIG1hbnVhbHNpZGFuIHPlIORyIGRldHRhIGV0dCBmZWwsIGFudGluZ2VuIGkgaW1wbGVtZW50YXRpb25lbgorZWxsZXIgaSBkb2t1bWVudGF0aW9uZW47IHJhcHBvcnRlcmEgZGV0LgorLgorLlNIIEbWUkZBVFRBUkUKK1VwcGhvdnNy5HR0c3NreWRkYXQgqSAxOTk1IElhbiBKYWNrc29uLgorLmJyCitVcHBob3ZzcuR0dHNza3lkZGF0IKkgMjAwOSBSYXBoYetsIEhlcnR6b2cKKy5zcAorRGV0dGEg5HIgZnJpIHByb2dyYW12YXJhOyBzZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgZWxsZXIKK3NlbmFyZSBm9nIga29waWVyaW5nc3ZpbGxrb3IuIERldCBmaW5ucyBJTkdFTiBHQVJBTlRJLgorLlBQCitNYW51YWxzaWRhbiDkciB1cHBob3ZzcuR0dHNza3lkZGFkIKkgMTk5NywxOTk4IENoYXJsZXMgQnJpc2NvZVwtU21pdGggbWVkCitmbGVyYS4KKy5zcAorRGV0dGEg5HIgZnJpIHByb2dyYW12YXJhOyBzZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgZWxsZXIKK3NlbmFyZSBm9nIga29waWVyaW5nc3ZpbGxrb3IuIERldCBmaW5ucyBJTkdFTiBHQVJBTlRJLgorLgorLlNIICJTRSDEVkVOIgorXGZCbG5cZlAoMSksIEZIUywgRmlsZXN5c3RlbSBIaWVyYXJjaHkgU3RhbmRhcmQuCisuU0ggItZWRVJTxFRUTklORyIKK1BldGVyIEtyZWZ0aW5nIG9jaCBEYW5pZWwgTnlsYW5kZXIuCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL21hbi91cGRhdGUtYWx0ZXJuYXRpdmVzLjggYi9kcGtnLTEuMTYuMS4xL21hbi91cGRhdGUtYWx0ZXJuYXRpdmVzLjgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNTI3M2I4ZQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvbWFuL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuOApAQCAtMCwwICsxLDUxMCBAQAorLlwiIHVwZGF0ZVwtYWx0ZXJuYXRpdmVzLjgKKy5cIiBUaGlzIG1hbiBwYWdlIGlzIGNvcHlyaWdodCAxOTk3IENoYXJsZXMgQnJpc2NvZS1TbWl0aAorLlwiIFRoaXMgaXMgZnJlZSBkb2N1bWVudGF0aW9uOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisuXCIgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQKKy5cIiBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorLlwiIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uICBUaGVyZSBpcyBOTyBXQVJSQU5UWS4gIFlvdSBjYW4KKy5cIiBmaW5kIHRoZSBHTlUgR1BMIGluIC91c3Ivc2hhcmUvY29tbW9uLWxpY2Vuc2VzL0dQTCBvbiBhbnkgRGViaWFuIHN5c3RlbS4KKy5USCB1cGRhdGVcLWFsdGVybmF0aXZlcyA4ICIyMDExLTA4LTE0IiAiRGViaWFuIFByb2plY3QiICJkcGtnIHV0aWxpdGllcyIKKy5TSCBOQU1FCit1cGRhdGVcLWFsdGVybmF0aXZlcyBcLSBtYWludGFpbiBzeW1ib2xpYyBsaW5rcyBkZXRlcm1pbmluZyBkZWZhdWx0IGNvbW1hbmRzCisuCisuU0ggU1lOT1BTSVMKKy5CIHVwZGF0ZVwtYWx0ZXJuYXRpdmVzCisuUkkgWyBvcHRpb24gIi4uLl0gIiBjb21tYW5kCisuCisuU0ggREVTQ1JJUFRJT04KKy5CIHVwZGF0ZVwtYWx0ZXJuYXRpdmVzCitjcmVhdGVzLCByZW1vdmVzLCBtYWludGFpbnMgYW5kIGRpc3BsYXlzIGluZm9ybWF0aW9uIGFib3V0IHRoZSBzeW1ib2xpYworbGlua3MgY29tcHJpc2luZyB0aGUgRGViaWFuIGFsdGVybmF0aXZlcyBzeXN0ZW0uCisuUFAKK0l0IGlzIHBvc3NpYmxlIGZvciBzZXZlcmFsIHByb2dyYW1zIGZ1bGZpbGxpbmcgdGhlIHNhbWUgb3Igc2ltaWxhcgorZnVuY3Rpb25zIHRvIGJlIGluc3RhbGxlZCBvbiBhIHNpbmdsZSBzeXN0ZW0gYXQgdGhlIHNhbWUgdGltZS4KK0ZvciBleGFtcGxlLCBtYW55IHN5c3RlbXMgaGF2ZSBzZXZlcmFsIHRleHQgZWRpdG9ycyBpbnN0YWxsZWQgYXQgb25jZS4KK1RoaXMgZ2l2ZXMgY2hvaWNlIHRvIHRoZSB1c2VycyBvZiBhIHN5c3RlbSwgYWxsb3dpbmcgZWFjaCB0byB1c2UgYQorZGlmZmVyZW50IGVkaXRvciwgaWYgZGVzaXJlZCwgYnV0IG1ha2VzIGl0IGRpZmZpY3VsdCBmb3IgYSBwcm9ncmFtCit0byBtYWtlIGEgZ29vZCBjaG9pY2UgZm9yIGFuIGVkaXRvciB0byBpbnZva2UgaWYgdGhlCit1c2VyIGhhcyBub3Qgc3BlY2lmaWVkIGEgcGFydGljdWxhciBwcmVmZXJlbmNlLgorLlBQCitEZWJpYW4ncyBhbHRlcm5hdGl2ZXMgc3lzdGVtIGFpbXMgdG8gc29sdmUgdGhpcyBwcm9ibGVtLgorQSBnZW5lcmljIG5hbWUgaW4gdGhlIGZpbGVzeXN0ZW0gaXMKK3NoYXJlZCBieSBhbGwgZmlsZXMgcHJvdmlkaW5nIGludGVyY2hhbmdlYWJsZSBmdW5jdGlvbmFsaXR5LgorVGhlIGFsdGVybmF0aXZlcyBzeXN0ZW0gYW5kIHRoZSBzeXN0ZW0gYWRtaW5pc3RyYXRvcgordG9nZXRoZXIgZGV0ZXJtaW5lIHdoaWNoIGFjdHVhbCBmaWxlIGlzIHJlZmVyZW5jZWQgYnkgdGhpcyBnZW5lcmljIG5hbWUuCitGb3IgZXhhbXBsZSwgaWYgdGhlIHRleHQgZWRpdG9ycworLkJSIGVkICgxKQorYW5kCisuQlIgbnZpICgxKQorYXJlIGJvdGggaW5zdGFsbGVkIG9uIHRoZSBzeXN0ZW0sIHRoZSBhbHRlcm5hdGl2ZXMgc3lzdGVtIHdpbGwgY2F1c2UKK3RoZSBnZW5lcmljIG5hbWUKKy5JIC91c3IvYmluL2VkaXRvcgordG8gcmVmZXIgdG8KKy5JIC91c3IvYmluL252aQorYnkgZGVmYXVsdC4gVGhlIHN5c3RlbSBhZG1pbmlzdHJhdG9yIGNhbiBvdmVycmlkZSB0aGlzIGFuZCBjYXVzZQoraXQKK3RvIHJlZmVyIHRvCisuSSAvdXNyL2Jpbi9lZAoraW5zdGVhZCwKK2FuZCB0aGUgYWx0ZXJuYXRpdmVzIHN5c3RlbSB3aWxsIG5vdCBhbHRlciB0aGlzIHNldHRpbmcgdW50aWwgZXhwbGljaXRseQorcmVxdWVzdGVkIHRvIGRvIHNvLgorLlBQCitUaGUgZ2VuZXJpYyBuYW1lIGlzIG5vdCBhIGRpcmVjdCBzeW1ib2xpYyBsaW5rIHRvIHRoZSBzZWxlY3RlZCBhbHRlcm5hdGl2ZS4KK0luc3RlYWQsIGl0IGlzIGEgc3ltYm9saWMgbGluayB0byBhIG5hbWUgaW4gdGhlCisuSSBhbHRlcm5hdGl2ZXMKKy5JUiBkaXJlY3RvcnkgLAord2hpY2ggaW4gdHVybiBpcyBhIHN5bWJvbGljIGxpbmsgdG8gdGhlIGFjdHVhbCBmaWxlIHJlZmVyZW5jZWQuCitUaGlzIGlzIGRvbmUgc28gdGhhdCB0aGUgc3lzdGVtIGFkbWluaXN0cmF0b3IncyBjaGFuZ2VzIGNhbiBiZSBjb25maW5lZAord2l0aGluIHRoZQorLkkgL2V0YworZGlyZWN0b3J5OiB0aGUgRkhTIChxLnYuKSBnaXZlcyByZWFzb25zIHdoeSB0aGlzIGlzIGEgR29vZCBUaGluZy4KKy5QUAorV2hlbiBlYWNoIHBhY2thZ2UKK3Byb3ZpZGluZyBhIGZpbGUgd2l0aCBhIHBhcnRpY3VsYXIgZnVuY3Rpb25hbGl0eSBpcworaW5zdGFsbGVkLCBjaGFuZ2VkIG9yIHJlbW92ZWQsCisuQiB1cGRhdGVcLWFsdGVybmF0aXZlcworaXMgY2FsbGVkIHRvIHVwZGF0ZSBpbmZvcm1hdGlvbiBhYm91dCB0aGF0IGZpbGUgaW4gdGhlIGFsdGVybmF0aXZlcyBzeXN0ZW0uCisuQiB1cGRhdGVcLWFsdGVybmF0aXZlcworaXMgdXN1YWxseSBjYWxsZWQgZnJvbSB0aGUKKy5CIHBvc3RpbnN0CisoY29uZmlndXJlKSBvcgorLkIgcHJlcm0KKyhpbnN0YWxsKSBzY3JpcHRzIGluIERlYmlhbiBwYWNrYWdlcy4KKy5QUAorSXQgaXMgb2Z0ZW4gdXNlZnVsIGZvciBhIG51bWJlciBvZiBhbHRlcm5hdGl2ZXMgdG8gYmUgc3luY2hyb25pc2VkLAorc28gdGhhdCB0aGV5IGFyZSBjaGFuZ2VkIGFzIGEgZ3JvdXA7IGZvciBleGFtcGxlLCB3aGVuIHNldmVyYWwgdmVyc2lvbnMKK29mIHRoZQorLkJSIHZpICgxKQorZWRpdG9yIGFyZSBpbnN0YWxsZWQsIHRoZSBtYW4gcGFnZSByZWZlcmVuY2VkIGJ5CisuSSAvdXNyL3NoYXJlL21hbi9tYW4xL3ZpLjEKK3Nob3VsZCBjb3JyZXNwb25kIHRvIHRoZSBleGVjdXRhYmxlIHJlZmVyZW5jZWQgYnkKKy5JUiAvdXNyL2Jpbi92aSAuCisuQiB1cGRhdGVcLWFsdGVybmF0aXZlcworaGFuZGxlcyB0aGlzIGJ5IG1lYW5zIG9mCisuSSBtYXN0ZXIKK2FuZAorLkkgc2xhdmUKK2xpbmtzOyB3aGVuIHRoZSBtYXN0ZXIgaXMgY2hhbmdlZCwgYW55IGFzc29jaWF0ZWQgc2xhdmVzIGFyZSBjaGFuZ2VkCit0b28uCitBIG1hc3RlciBsaW5rIGFuZCBpdHMgYXNzb2NpYXRlZCBzbGF2ZXMgbWFrZSB1cCBhCisuSSBsaW5rCisuSVIgZ3JvdXAgLgorLlBQCitFYWNoIGxpbmsgZ3JvdXAgaXMsIGF0IGFueSBnaXZlbiB0aW1lLAoraW4gb25lIG9mIHR3byBtb2RlczogYXV0b21hdGljIG9yIG1hbnVhbC4KK1doZW4gYSBncm91cCBpcyBpbiBhdXRvbWF0aWMgbW9kZSwgdGhlIGFsdGVybmF0aXZlcyBzeXN0ZW0gd2lsbAorYXV0b21hdGljYWxseSBkZWNpZGUsIGFzIHBhY2thZ2VzIGFyZSBpbnN0YWxsZWQgYW5kIHJlbW92ZWQsCit3aGV0aGVyIGFuZCBob3cgdG8gdXBkYXRlIHRoZSBsaW5rcy4KK0luIG1hbnVhbCBtb2RlLCB0aGUgYWx0ZXJuYXRpdmVzIHN5c3RlbSB3aWxsIHJldGFpbiB0aGUgY2hvaWNlIG9mCit0aGUgYWRtaW5pc3RyYXRvciBhbmQgYXZvaWQgY2hhbmdpbmcgdGhlIGxpbmtzIChleGNlcHQgd2hlbiBzb21ldGhpbmcgaXMKK2Jyb2tlbikuCisuUFAKK0xpbmsgZ3JvdXBzIGFyZSBpbiBhdXRvbWF0aWMgbW9kZSB3aGVuIHRoZXkgYXJlIGZpcnN0IGludHJvZHVjZWQgdG8KK3RoZSBzeXN0ZW0uCitJZiB0aGUgc3lzdGVtIGFkbWluaXN0cmF0b3IgbWFrZXMgY2hhbmdlcyB0byB0aGUgc3lzdGVtJ3MKK2F1dG9tYXRpYyBzZXR0aW5ncywKK3RoaXMgd2lsbCBiZSBub3RpY2VkIHRoZSBuZXh0IHRpbWUKKy5CIHVwZGF0ZVwtYWx0ZXJuYXRpdmVzCitpcyBydW4gb24gdGhlIGNoYW5nZWQgbGluaydzIGdyb3VwLAorYW5kIHRoZSBncm91cCB3aWxsIGF1dG9tYXRpY2FsbHkgYmUgc3dpdGNoZWQgdG8gbWFudWFsIG1vZGUuCisuUFAKK0VhY2ggYWx0ZXJuYXRpdmUgaGFzIGEKKy5JIHByaW9yaXR5Cithc3NvY2lhdGVkIHdpdGggaXQuCitXaGVuIGEgbGluayBncm91cCBpcyBpbiBhdXRvbWF0aWMgbW9kZSwKK3RoZSBhbHRlcm5hdGl2ZXMgcG9pbnRlZCB0byBieSBtZW1iZXJzIG9mIHRoZSBncm91cAord2lsbCBiZSB0aG9zZSB3aGljaCBoYXZlIHRoZSBoaWdoZXN0IHByaW9yaXR5LgorLlBQCitXaGVuIHVzaW5nIHRoZQorLkIgXC1cLWNvbmZpZworb3B0aW9uLAorLkIgdXBkYXRlXC1hbHRlcm5hdGl2ZXMKK3dpbGwgbGlzdCBhbGwgb2YgdGhlIGNob2ljZXMgZm9yIHRoZSBsaW5rIGdyb3VwCitvZiB3aGljaCBnaXZlbgorLkkgbmFtZQoraXMgdGhlIG1hc3RlciBhbHRlcm5hdGl2ZSBuYW1lLiBUaGUgY3VycmVudCBjaG9pY2UgaXMgbWFya2VkIHdpdGggYSAnKicuCitZb3Ugd2lsbCB0aGVuIGJlIHByb21wdGVkIGZvciB5b3VyIGNob2ljZSByZWdhcmRpbmcgdGhpcyBsaW5rIGdyb3VwLgorRGVwZW5kaW5nIG9uIHRoZSBjaG9pY2UgbWFkZSwgdGhlIGxpbmsgZ3JvdXAgbWlnaHQgbm8gbG9uZ2VyIGJlIGluCisuSSBhdXRvCittb2RlLiBZb3Ugd2lsbCBuZWVkIHRvIHVzZSB0aGUKKy5CIFwtXC1hdXRvCitvcHRpb24gaW4gb3JkZXIgdG8gcmV0dXJuIHRvIHRoZSBhdXRvbWF0aWMgbW9kZSAob3IgeW91IGNhbiByZXJ1bgorLkIgXC1cLWNvbmZpZworYW5kIHNlbGVjdCB0aGUgZW50cnkgbWFya2VkIGFzIGF1dG9tYXRpYykuCisuUFAKK0lmIHlvdSB3YW50IHRvIGNvbmZpZ3VyZSBub24taW50ZXJhY3RpdmVseSB5b3UgY2FuIHVzZSB0aGUKKy5CIFwtXC1zZXQKK29wdGlvbiBpbnN0ZWFkIChzZWUgYmVsb3cpLgorLlBQCitEaWZmZXJlbnQgcGFja2FnZXMgcHJvdmlkaW5nIHRoZSBzYW1lIGZpbGUgbmVlZCB0byBkbyBzbworLkJSIGNvb3BlcmF0aXZlbHkgLgorSW4gb3RoZXIgd29yZHMsIHRoZSB1c2FnZSBvZgorLkIgdXBkYXRlXC1hbHRlcm5hdGl2ZXMKK2lzCisuQiBtYW5kYXRvcnkKK2ZvciBhbGwgaW52b2x2ZWQgcGFja2FnZXMgaW4gc3VjaCBjYXNlLiBJdCBpcyBub3QgcG9zc2libGUgdG8KK292ZXJyaWRlIHNvbWUgZmlsZSBpbiBhIHBhY2thZ2UgdGhhdCBkb2VzIG5vdCBlbXBsb3kgdGhlCisuQiB1cGRhdGVcLWFsdGVybmF0aXZlcworbWVjaGFuaXNtLgorLgorLlNIIFRFUk1JTk9MT0dZCitTaW5jZSB0aGUgYWN0aXZpdGllcyBvZgorLkIgdXBkYXRlXC1hbHRlcm5hdGl2ZXMKK2FyZSBxdWl0ZSBpbnZvbHZlZCwgc29tZSBzcGVjaWZpYyB0ZXJtcyB3aWxsIGhlbHAgdG8gZXhwbGFpbiBpdHMKK29wZXJhdGlvbi4KKy5UUAorZ2VuZXJpYyBuYW1lIChvciBhbHRlcm5hdGl2ZSBsaW5rKQorQSBuYW1lLCBsaWtlCisuSVIgL3Vzci9iaW4vZWRpdG9yICwKK3doaWNoIHJlZmVycywgdmlhIHRoZSBhbHRlcm5hdGl2ZXMgc3lzdGVtLCB0byBvbmUgb2YgYSBudW1iZXIgb2YKK2ZpbGVzIG9mIHNpbWlsYXIgZnVuY3Rpb24uCisuVFAKK2FsdGVybmF0aXZlIG5hbWUKK1RoZSBuYW1lIG9mIGEgc3ltYm9saWMgbGluayBpbiB0aGUgYWx0ZXJuYXRpdmVzIGRpcmVjdG9yeS4KKy5UUAorYWx0ZXJuYXRpdmUgKG9yIGFsdGVybmF0aXZlIHBhdGgpCitUaGUgbmFtZSBvZiBhIHNwZWNpZmljIGZpbGUgaW4gdGhlIGZpbGVzeXN0ZW0sIHdoaWNoIG1heSBiZSBtYWRlCithY2Nlc3NpYmxlIHZpYSBhIGdlbmVyaWMgbmFtZSB1c2luZyB0aGUgYWx0ZXJuYXRpdmVzIHN5c3RlbS4KKy5UUAorYWx0ZXJuYXRpdmVzIGRpcmVjdG9yeQorQSBkaXJlY3RvcnksIGJ5IGRlZmF1bHQKKy5JUiAvZXRjL2FsdGVybmF0aXZlcyAsCitjb250YWluaW5nIHRoZSBzeW1saW5rcy4KKy5UUAorYWRtaW5pc3RyYXRpdmUgZGlyZWN0b3J5CitBIGRpcmVjdG9yeSwgYnkgZGVmYXVsdAorLklSIC92YXIvbGliL2Rwa2cvYWx0ZXJuYXRpdmVzICwKK2NvbnRhaW5pbmcKKy5CUiB1cGRhdGVcLWFsdGVybmF0aXZlcyAnCitzdGF0ZSBpbmZvcm1hdGlvbi4KKy5UUAorbGluayBncm91cAorQSBzZXQgb2YgcmVsYXRlZCBzeW1saW5rcywgaW50ZW5kZWQgdG8gYmUgdXBkYXRlZCBhcyBhIGdyb3VwLgorLlRQCittYXN0ZXIgbGluaworVGhlIGFsdGVybmF0aXZlIGxpbmsgaW4gYSBsaW5rIGdyb3VwIHdoaWNoIGRldGVybWluZXMgaG93IHRoZSBvdGhlciBsaW5rcyBpbiB0aGUKK2dyb3VwIGFyZSBjb25maWd1cmVkLgorLlRQCitzbGF2ZSBsaW5rCitBbiBhbHRlcm5hdGl2ZSBsaW5rIGluIGEgbGluayBncm91cCB3aGljaCBpcyBjb250cm9sbGVkIGJ5IHRoZSBzZXR0aW5nIG9mCit0aGUgbWFzdGVyIGxpbmsuCisuVFAKK2F1dG9tYXRpYyBtb2RlCitXaGVuIGEgbGluayBncm91cCBpcyBpbiBhdXRvbWF0aWMgbW9kZSwKK3RoZSBhbHRlcm5hdGl2ZXMgc3lzdGVtIGVuc3VyZXMgdGhhdCB0aGUgbGlua3MgaW4gdGhlIGdyb3VwCitwb2ludCB0byB0aGUgaGlnaGVzdCBwcmlvcml0eSBhbHRlcm5hdGl2ZQorYXBwcm9wcmlhdGUgZm9yIHRoZSBncm91cC4KKy5UUAorbWFudWFsIG1vZGUKK1doZW4gYSBsaW5rIGdyb3VwIGlzIGluIG1hbnVhbCBtb2RlLAordGhlIGFsdGVybmF0aXZlcyBzeXN0ZW0gd2lsbCBub3QgbWFrZSBhbnkgY2hhbmdlcwordG8gdGhlIHN5c3RlbSBhZG1pbmlzdHJhdG9yJ3Mgc2V0dGluZ3MuCisuCisuU0ggQ09NTUFORFMKKy5UUAorXGZCXC1cLWluc3RhbGxcZlIgXGZJbGluayBuYW1lIHBhdGggcHJpb3JpdHlcZlIgW1xmQlwtXC1zbGF2ZVxmUiBcZklsaW5rIG5hbWUgcGF0aFxmUl0uLi4KK0FkZCBhIGdyb3VwIG9mIGFsdGVybmF0aXZlcyB0byB0aGUgc3lzdGVtLgorLkkgbGluaworaXMgdGhlIGdlbmVyaWMgbmFtZSBmb3IgdGhlIG1hc3RlciBsaW5rLAorLkkgbmFtZQoraXMgdGhlIG5hbWUgb2YgaXRzIHN5bWxpbmsgaW4gdGhlIGFsdGVybmF0aXZlcyBkaXJlY3RvcnksIGFuZAorLkkgcGF0aAoraXMgdGhlIGFsdGVybmF0aXZlIGJlaW5nIGludHJvZHVjZWQgZm9yIHRoZSBtYXN0ZXIgbGluay4KK1RoZSBhcmd1bWVudHMgYWZ0ZXIgXGZCXC1cLXNsYXZlXGZSIGFyZSB0aGUgZ2VuZXJpYyBuYW1lLCBzeW1saW5rIG5hbWUgaW4gdGhlCithbHRlcm5hdGl2ZXMgZGlyZWN0b3J5IGFuZCB0aGUgYWx0ZXJuYXRpdmUgcGF0aCBmb3IgYSBzbGF2ZSBsaW5rLgorWmVybyBvciBtb3JlCisuQiBcLVwtc2xhdmUKK29wdGlvbnMsIGVhY2ggZm9sbG93ZWQgYnkgdGhyZWUgYXJndW1lbnRzLAorbWF5IGJlIHNwZWNpZmllZC4gTm90ZSB0aGF0IHRoZSBtYXN0ZXIgYWx0ZXJuYXRpdmUgbXVzdCBleGlzdCBvciB0aGUgY2FsbAord2lsbCBmYWlsLiBIb3dldmVyIGlmIGEgc2xhdmUgYWx0ZXJuYXRpdmUgZG9lc24ndCBleGlzdCwgdGhlIGNvcnJlc3BvbmRpbmcKK3NsYXZlIGFsdGVybmF0aXZlIGxpbmsgd2lsbCBzaW1wbHkgbm90IGJlIGluc3RhbGxlZCAoYSB3YXJuaW5nIHdpbGwgc3RpbGwKK2JlIGRpc3BsYXllZCkuIElmIHNvbWUgcmVhbCBmaWxlIGlzIGluc3RhbGxlZCB3aGVyZSBhbiBhbHRlcm5hdGl2ZSBsaW5rCitoYXMgdG8gYmUgaW5zdGFsbGVkLCBpdCBpcyBrZXB0IHVubGVzcyBcZkJcLVwtZm9yY2VcZlIgaXMgdXNlZC4KKy5JUAorSWYgdGhlIGFsdGVybmF0aXZlIG5hbWUgc3BlY2lmaWVkIGV4aXN0cyBhbHJlYWR5CitpbiB0aGUgYWx0ZXJuYXRpdmVzIHN5c3RlbSdzIHJlY29yZHMsCit0aGUgaW5mb3JtYXRpb24gc3VwcGxpZWQgd2lsbCBiZSBhZGRlZCBhcyBhIG5ldworc2V0IG9mIGFsdGVybmF0aXZlcyBmb3IgdGhlIGdyb3VwLgorT3RoZXJ3aXNlLCBhIG5ldyBncm91cCwgc2V0IHRvIGF1dG9tYXRpYyBtb2RlLAord2lsbCBiZSBhZGRlZCB3aXRoIHRoaXMgaW5mb3JtYXRpb24uCitJZiB0aGUgZ3JvdXAgaXMgaW4gYXV0b21hdGljIG1vZGUsCithbmQgdGhlIG5ld2x5IGFkZGVkIGFsdGVybmF0aXZlcycgcHJpb3JpdHkgaXMgaGlnaGVyIHRoYW4KK2FueSBvdGhlciBpbnN0YWxsZWQgYWx0ZXJuYXRpdmVzIGZvciB0aGlzIGdyb3VwLAordGhlIHN5bWxpbmtzIHdpbGwgYmUgdXBkYXRlZCB0byBwb2ludCB0byB0aGUgbmV3bHkgYWRkZWQgYWx0ZXJuYXRpdmVzLgorLlRQCitcZkJcLVwtc2V0XGZSIFxmSW5hbWUgcGF0aFxmUgorU2V0IHRoZSBwcm9ncmFtCisuSSBwYXRoCithcyBhbHRlcm5hdGl2ZSBmb3IKKy5JIG5hbWUuCitUaGlzIGlzIGVxdWl2YWxlbnQgdG8KKy5CIFwtXC1jb25maWcKK2J1dCBpcyBub24taW50ZXJhY3RpdmUgYW5kIHRodXMgc2NyaXB0YWJsZS4KKy5UUAorXGZCXC1cLXJlbW92ZVxmUiBcZkluYW1lIHBhdGhcZlIKK1JlbW92ZSBhbiBhbHRlcm5hdGl2ZSBhbmQgYWxsIG9mIGl0cyBhc3NvY2lhdGVkIHNsYXZlIGxpbmtzLgorLkkgbmFtZQoraXMgYSBuYW1lIGluIHRoZSBhbHRlcm5hdGl2ZXMgZGlyZWN0b3J5LCBhbmQKKy5JIHBhdGgKK2lzIGFuIGFic29sdXRlIGZpbGVuYW1lIHRvIHdoaWNoCisuSSBuYW1lCitjb3VsZCBiZSBsaW5rZWQuIElmCisuSSBuYW1lCitpcyBpbmRlZWQgbGlua2VkIHRvCisuSVIgcGF0aCAsCisuSSBuYW1lCit3aWxsIGJlIHVwZGF0ZWQgdG8gcG9pbnQgdG8gYW5vdGhlciBhcHByb3ByaWF0ZSBhbHRlcm5hdGl2ZQorKGFuZCB0aGUgZ3JvdXAgaXMgcHV0IGJhY2sgaW4gYXV0b21hdGljIG1vZGUpLCBvcgorcmVtb3ZlZCBpZiB0aGVyZSBpcyBubyBzdWNoIGFsdGVybmF0aXZlIGxlZnQuCitBc3NvY2lhdGVkIHNsYXZlIGxpbmtzIHdpbGwgYmUgdXBkYXRlZCBvciByZW1vdmVkLCBjb3JyZXNwb25kaW5nbHkuCitJZiB0aGUgbGluayBpcyBub3QgY3VycmVudGx5IHBvaW50aW5nIHRvCisuSVIgcGF0aCAsCitubyBsaW5rcyBhcmUgY2hhbmdlZDsKK29ubHkgdGhlIGluZm9ybWF0aW9uIGFib3V0IHRoZSBhbHRlcm5hdGl2ZSBpcyByZW1vdmVkLgorLlRQCitcZkJcLVwtcmVtb3ZlXC1hbGxcZlIgXGZJbmFtZVxmUgorUmVtb3ZlIGFsbCBhbHRlcm5hdGl2ZXMgYW5kIGFsbCBvZiB0aGVpciBhc3NvY2lhdGVkIHNsYXZlIGxpbmtzLgorLkkgbmFtZQoraXMgYSBuYW1lIGluIHRoZSBhbHRlcm5hdGl2ZXMgZGlyZWN0b3J5LgorLlRQCisuQiBcLVwtYWxsCitDYWxsIFxmQlwtXC1jb25maWdcZlAgb24gYWxsIGFsdGVybmF0aXZlcy4gSXQgY2FuIGJlIHVzZWZ1bGx5IGNvbWJpbmVkIHdpdGgKK1xmQlwtXC1za2lwXC1hdXRvXGZQIHRvIHJldmlldyBhbmQgY29uZmlndXJlIGFsbCBhbHRlcm5hdGl2ZXMgd2hpY2ggYXJlCitub3QgY29uZmlndXJlZCBpbiBhdXRvbWF0aWMgbW9kZS4gQnJva2VuIGFsdGVybmF0aXZlcyBhcmUgYWxzbyBkaXNwbGF5ZWQuCitUaHVzIGEgc2ltcGxlIHdheSB0byBmaXggYWxsIGJyb2tlbiBhbHRlcm5hdGl2ZXMgaXMgdG8gY2FsbAorXGZCeWVzIFxbYXFdXFthcV0gfCB1cGRhdGVcLWFsdGVybmF0aXZlcyBcLVwtZm9yY2UgXC1cLWFsbFxmUi4KKy5UUAorXGZCXC1cLWF1dG9cZlIgXGZJbmFtZVxmUgorU3dpdGNoIHRoZSBsaW5rIGdyb3VwIGJlaGluZCB0aGUgYWx0ZXJuYXRpdmUgZm9yCisuSSBuYW1lCit0byBhdXRvbWF0aWMgbW9kZS4KK0luIHRoZSBwcm9jZXNzLCB0aGUgbWFzdGVyIHN5bWxpbmsgYW5kIGl0cyBzbGF2ZXMgYXJlIHVwZGF0ZWQKK3RvIHBvaW50IHRvIHRoZSBoaWdoZXN0IHByaW9yaXR5IGluc3RhbGxlZCBhbHRlcm5hdGl2ZXMuCisuVFAKK1xmQlwtXC1kaXNwbGF5XGZSIFxmSW5hbWVcZlIKK0Rpc3BsYXkgaW5mb3JtYXRpb24gYWJvdXQgdGhlIGxpbmsgZ3JvdXAuCitJbmZvcm1hdGlvbiBkaXNwbGF5ZWQgaW5jbHVkZXMgdGhlIGdyb3VwJ3MgbW9kZQorKGF1dG8gb3IgbWFudWFsKSwKK3doaWNoIGFsdGVybmF0aXZlIHRoZSBtYXN0ZXIgbGluayBjdXJyZW50bHkgcG9pbnRzIHRvLAord2hhdCBvdGhlciBhbHRlcm5hdGl2ZXMgYXJlIGF2YWlsYWJsZQorKGFuZCB0aGVpciBjb3JyZXNwb25kaW5nIHNsYXZlIGFsdGVybmF0aXZlcyksCithbmQgdGhlIGhpZ2hlc3QgcHJpb3JpdHkgYWx0ZXJuYXRpdmUgY3VycmVudGx5IGluc3RhbGxlZC4KKy5UUAorXGZCXC1cLWdldFwtc2VsZWN0aW9uc1xmUgorTGlzdCBhbGwgbWFzdGVyIGFsdGVybmF0aXZlIG5hbWVzICh0aG9zZSBjb250cm9sbGluZyBhIGxpbmsgZ3JvdXApCithbmQgdGhlaXIgc3RhdHVzLiBFYWNoIGxpbmUgY29udGFpbnMgdXAgdG8gMyBmaWVsZHMgKHNlcGFyYXRlZCBieQorb25lIG9yIG1vcmUgc3BhY2VzKS4gVGhlIGZpcnN0IGZpZWxkIGlzIHRoZSBhbHRlcm5hdGl2ZSBuYW1lLCB0aGUgc2Vjb25kCitvbmUgaXMgdGhlIHN0YXR1cyAoZWl0aGVyICJhdXRvIiBvciAibWFudWFsIiksIGFuZCB0aGUgbGFzdCBvbmUgY29udGFpbnMKK3RoZSBjdXJyZW50IGNob2ljZSBpbiB0aGUgYWx0ZXJuYXRpdmUgKGJld2FyZTogaXQncyBhIGZpbGVuYW1lIGFuZCB0aHVzCittaWdodCBjb250YWluIHNwYWNlcykuCisuVFAKK1xmQlwtXC1zZXRcLXNlbGVjdGlvbnNcZlIKK1JlYWQgY29uZmlndXJhdGlvbiBvZiBhbHRlcm5hdGl2ZXMgb24gc3RhbmRhcmQgaW5wdXQgaW4gdGhlIGZvcm1hdAorZ2VuZXJhdGVkIGJ5IFxmQnVwZGF0ZVwtYWx0ZXJuYXRpdmVzIFwtXC1nZXRcLXNlbGVjdGlvbnNcZlIgYW5kIHJlY29uZmlndXJlCit0aGVtIGFjY29yZGluZ2x5LgorLlRQCitcZkJcLVwtcXVlcnlcZlIgXGZJbmFtZVxmUgorRGlzcGxheSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgbGluayBncm91cAorbGlrZSBcLVwtZGlzcGxheSBkb2VzLCBidXQgaW4gYSBtYWNoaW5lIHBhcnNlYWJsZSB3YXkKKyhzZWUgc2VjdGlvbiBcZkJRVUVSWSBGT1JNQVRcZlIgYmVsb3cpLgorLlRQCitcZkJcLVwtbGlzdFxmUiBcZkluYW1lXGZSCitEaXNwbGF5IGFsbCB0YXJnZXRzIG9mIHRoZSBsaW5rIGdyb3VwLgorLlRQCitcZkJcLVwtY29uZmlnXGZSIFxmSW5hbWVcZlIKK1Nob3cgYXZhaWxhYmxlIGFsdGVybmF0aXZlcyBmb3IgYSBsaW5rIGdyb3VwIGFuZCBhbGxvdyB0aGUgdXNlciB0bworaW50ZXJhY3RpdmVseSBzZWxlY3Qgd2hpY2ggb25lIHRvIHVzZS4gVGhlIGxpbmsgZ3JvdXAgaXMgdXBkYXRlZC4KKy5UUAorLkIgXC1cLWhlbHAKK1Nob3cgdGhlIHVzYWdlIG1lc3NhZ2UgYW5kIGV4aXQuCisuVFAKKy5CIFwtXC12ZXJzaW9uCitTaG93IHRoZSB2ZXJzaW9uIGFuZCBleGl0LgorLgorLlNIIE9QVElPTlMKKy5UUAorLkJJIFwtXC1hbHRkaXIgIiBkaXJlY3RvcnkiCitTcGVjaWZpZXMgdGhlIGFsdGVybmF0aXZlcyBkaXJlY3RvcnksIHdoZW4gdGhpcyBpcyB0byBiZQorZGlmZmVyZW50IGZyb20gdGhlIGRlZmF1bHQuCisuVFAKKy5CSSBcLVwtYWRtaW5kaXIgIiBkaXJlY3RvcnkiCitTcGVjaWZpZXMgdGhlIGFkbWluaXN0cmF0aXZlIGRpcmVjdG9yeSwgd2hlbiB0aGlzIGlzIHRvIGJlCitkaWZmZXJlbnQgZnJvbSB0aGUgZGVmYXVsdC4KKy5UUAorLkJJIFwtXC1sb2cgIiBmaWxlIgorU3BlY2lmaWVzIHRoZSBsb2cgZmlsZSwgd2hlbiB0aGlzIGlzIHRvIGJlIGRpZmZlcmVudCBmcm9tIHRoZSBkZWZhdWx0CisoL3Zhci9sb2cvYWx0ZXJuYXRpdmVzLmxvZykuCisuVFAKKy5CSSBcLVwtZm9yY2UKK0xldCBcZkJ1cGRhdGVcLWFsdGVybmF0aXZlc1xmUiByZXBsYWNlIG9yIGRyb3AgYW55IHJlYWwgZmlsZSB0aGF0IGlzIGluc3RhbGxlZAord2hlcmUgYW4gYWx0ZXJuYXRpdmUgbGluayBoYXMgdG8gYmUgaW5zdGFsbGVkIG9yIHJlbW92ZWQuCisuVFAKKy5CSSBcLVwtc2tpcFwtYXV0bworU2tpcCBjb25maWd1cmF0aW9uIHByb21wdCBmb3IgYWx0ZXJuYXRpdmVzIHdoaWNoIGFyZSBwcm9wZXJseSBjb25maWd1cmVkCitpbiBhdXRvbWF0aWMgbW9kZS4gVGhpcyBvcHRpb24gaXMgb25seSByZWxldmFudCB3aXRoIFxmQlwtXC1jb25maWdcZlIgb3IKK1xmQlwtXC1hbGxcZlIuCisuVFAKKy5CIFwtXC12ZXJib3NlCitHZW5lcmF0ZSBtb3JlIGNvbW1lbnRzIGFib3V0IHdoYXQKKy5CIHVwZGF0ZVwtYWx0ZXJuYXRpdmVzCitpcyBkb2luZy4KKy5UUAorLkIgXC1cLXF1aWV0CitEb24ndCBnZW5lcmF0ZSBhbnkgY29tbWVudHMgdW5sZXNzIGVycm9ycyBvY2N1ci4KKy4KKy5TSCBFTlZJUk9OTUVOVAorLlRQCisuQiBEUEtHX0FETUlORElSCitJZiBzZXQgYW5kIHRoZSBcZkJcLVwtYWRtaW5kaXJcZlAgb3B0aW9uIGhhcyBub3QgYmVlbiBzcGVjaWZpZWQsIGl0IHdpbGwKK2JlIHVzZWQgYXMgdGhlIGJhc2UgYWRtaW5pc3RyYXRpdmUgZGlyZWN0b3J5LgorLgorLlNIIEZJTEVTCisuVFAKKy5JIC9ldGMvYWx0ZXJuYXRpdmVzLworVGhlIGRlZmF1bHQgYWx0ZXJuYXRpdmVzIGRpcmVjdG9yeS4KK0NhbiBiZSBvdmVycmlkZGVuIGJ5IHRoZQorLkIgXC1cLWFsdGRpcgorb3B0aW9uLgorLlRQCisuSSAvdmFyL2xpYi9kcGtnL2FsdGVybmF0aXZlcy8KK1RoZSBkZWZhdWx0IGFkbWluaXN0cmF0aW9uIGRpcmVjdG9yeS4KK0NhbiBiZSBvdmVycmlkZGVuIGJ5IHRoZQorLkIgXC1cLWFkbWluZGlyCitvcHRpb24uCisuCisuU0ggIkVYSVQgU1RBVFVTIgorLlRQCisuQiAwCitUaGUgcmVxdWVzdGVkIGFjdGlvbiB3YXMgc3VjY2Vzc2Z1bGx5IHBlcmZvcm1lZC4KKy5UUAorLkIgMgorUHJvYmxlbXMgd2VyZSBlbmNvdW50ZXJlZCB3aGlsc3QgcGFyc2luZyB0aGUgY29tbWFuZCBsaW5lCitvciBwZXJmb3JtaW5nIHRoZSBhY3Rpb24uCisuCisuU0ggIlFVRVJZIEZPUk1BVCIKK1RoZSBcZkJ1cGRhdGVcLWFsdGVybmF0aXZlcyBcLVwtcXVlcnlcZlAgZm9ybWF0IGlzIHVzaW5nIGFuCitSRkM4MjItbGlrZSBmbGF0IGZvcm1hdC4gSXQncyBtYWRlIG9mIFxmSW5cZlAgKyAxIGJsb2NrcyB3aGVyZSBcZkluXGZQIGlzCit0aGUgbnVtYmVyIG9mIGFsdGVybmF0aXZlcyBhdmFpbGFibGUgaW4gdGhlIHF1ZXJpZWQgbGluayBncm91cC4gVGhlIGZpcnN0CitibG9jayBjb250YWlucyB0aGUgZm9sbG93aW5nIGZpZWxkczoKKy5UUAorLkJJIExpbms6ICIgbGluayIKK1RoZSBnZW5lcmljIG5hbWUgb2YgdGhlIGFsdGVybmF0aXZlLgorLlRQCisuQkkgU3RhdHVzOiAiIHN0YXR1cyIKK1RoZSBzdGF0dXMgb2YgdGhlIGFsdGVybmF0aXZlIChcZkJhdXRvXGZSIG9yIFxmQm1hbnVhbFxmUikuCisuVFAKKy5CSSBCZXN0OiAiIGJlc3QtY2hvaWNlIgorVGhlIHBhdGggb2YgdGhlIGJlc3QgYWx0ZXJuYXRpdmUgZm9yIHRoaXMgbGluayBncm91cC4gTm90IHByZXNlbnQgaWYKK3RoZXJlIGlzIG5vIGFsdGVybmF0aXZlcyBhdmFpbGFibGUuCisuVFAKKy5CSSBWYWx1ZTogIiBjdXJyZW50bHktc2VsZWN0ZWQtYWx0ZXJuYXRpdmUiCitUaGUgcGF0aCBvZiB0aGUgY3VycmVudGx5IHNlbGVjdGVkIGFsdGVybmF0aXZlLiBJdCBjYW4gYWxzbyB0YWtlIHRoZSBtYWdpYwordmFsdWUgXGZCbm9uZVxmUi4gSXQgaXMgdXNlZCBpZiB0aGUgbGluayBkb2Vzbid0IGV4aXN0LgorLlRQCisuVFAKK1RoZSBvdGhlciBibG9ja3MgZGVzY3JpYmUgdGhlIGF2YWlsYWJsZSBhbHRlcm5hdGl2ZXMgaW4gdGhlIHF1ZXJpZWQgbGluayBncm91cDoKKy5UUAorLkJJIEFsdGVybmF0aXZlOiAiIHBhdGgtb2YtdGhpcy1hbHRlcm5hdGl2ZSIKK1BhdGggdG8gdGhpcyBibG9jaydzIGFsdGVybmF0aXZlLgorLlRQCisuQkkgUHJpb3JpdHk6ICIgcHJpb3JpdHktdmFsdWUiCitWYWx1ZSBvZiB0aGUgcHJpb3JpdHkgb2YgdGhpcyBhbHRlcm5hdGl2ZS4KKy5UUAorLkJJIFNsYXZlczogIiBsaXN0LW9mLXNsYXZlcyIKK1doZW4gdGhpcyBoZWFkZXIgaXMgcHJlc2VudCwgdGhlIFxmQm5leHRcZlIgbGluZXMgaG9sZCBhbGwgc2xhdmUgYWx0ZXJuYXRpdmVzCithc3NvY2lhdGVkIHRvIHRoZSBtYXN0ZXIgbGluayBvZiB0aGUgYWx0ZXJuYXRpdmUuIFRoZXJlIGlzIG9uZSBzbGF2ZSBwZXIKK2xpbmUuIEVhY2ggbGluZSBjb250YWlucyBvbmUgc3BhY2UsIHRoZSBnZW5lcmljIG5hbWUgb2YgdGhlIHNsYXZlCithbHRlcm5hdGl2ZSwgYW5vdGhlciBzcGFjZSwgYW5kIHRoZSBwYXRoIHRvIHRoZSBzbGF2ZSBhbHRlcm5hdGl2ZS4KKy4KKy5UUAorLkJSIEV4YW1wbGUKKy5uZgorJCB1cGRhdGVcLWFsdGVybmF0aXZlcyBcLVwtcXVlcnkgZWRpdG9yCitMaW5rOiBlZGl0b3IKK1N0YXR1czogYXV0bworQmVzdDogL3Vzci9iaW4vdmltLmd0aworVmFsdWU6IC91c3IvYmluL3ZpbS5ndGsKKworQWx0ZXJuYXRpdmU6IC9iaW4vZWQKK1ByaW9yaXR5OiBcLTEwMAorU2xhdmVzOgorIGVkaXRvci4xLmd6IC91c3Ivc2hhcmUvbWFuL21hbjEvZWQuMS5negorCitBbHRlcm5hdGl2ZTogL3Vzci9iaW4vdmltLmd0aworUHJpb3JpdHk6IDUwCitTbGF2ZXM6CisgZWRpdG9yLjEuZ3ogL3Vzci9zaGFyZS9tYW4vbWFuMS92aW0uMS5negorIGVkaXRvci5ydS4xLmd6IC91c3Ivc2hhcmUvbWFuL3J1L21hbjEvdmltLjEuZ3oKKyBlZGl0b3IucGwuSVNPODg1OS0yLjEuZ3ogL3Vzci9zaGFyZS9tYW4vcGwuSVNPODg1OS0yL21hbjEvdmltLjEuZ3oKKyBlZGl0b3IuaXQuSVNPODg1OS0xLjEuZ3ogL3Vzci9zaGFyZS9tYW4vaXQuSVNPODg1OS0xL21hbjEvdmltLjEuZ3oKKyBlZGl0b3IucGwuVVRGLTguMS5neiAvdXNyL3NoYXJlL21hbi9wbC5VVEYtOC9tYW4xL3ZpbS4xLmd6CisgZWRpdG9yLml0LjEuZ3ogL3Vzci9zaGFyZS9tYW4vaXQvbWFuMS92aW0uMS5negorIGVkaXRvci5mci5VVEYtOC4xLmd6IC91c3Ivc2hhcmUvbWFuL2ZyLlVURi04L21hbjEvdmltLjEuZ3oKKyBlZGl0b3IuZnIuMS5neiAvdXNyL3NoYXJlL21hbi9mci9tYW4xL3ZpbS4xLmd6CisgZWRpdG9yLml0LlVURi04LjEuZ3ogL3Vzci9zaGFyZS9tYW4vaXQuVVRGLTgvbWFuMS92aW0uMS5negorIGVkaXRvci5wbC4xLmd6IC91c3Ivc2hhcmUvbWFuL3BsL21hbjEvdmltLjEuZ3oKKyBlZGl0b3IuZnIuSVNPODg1OS0xLjEuZ3ogL3Vzci9zaGFyZS9tYW4vZnIuSVNPODg1OS0xL21hbjEvdmltLjEuZ3oKKy5maQorLgorLlNIIERJQUdOT1NUSUNTCitXaXRoIFxmQlwtXC12ZXJib3NlXGZSCisuQiB1cGRhdGVcLWFsdGVybmF0aXZlcworY2hhdHRlcnMgaW5jZXNzYW50bHkgYWJvdXQgaXRzIGFjdGl2aXRpZXMgb24gaXRzIHN0YW5kYXJkIG91dHB1dCBjaGFubmVsLgorSWYgcHJvYmxlbXMgb2NjdXIsCisuQiB1cGRhdGVcLWFsdGVybmF0aXZlcworb3V0cHV0cyBlcnJvciBtZXNzYWdlcyBvbiBpdHMgc3RhbmRhcmQgZXJyb3IgY2hhbm5lbCBhbmQKK3JldHVybnMgYW4gZXhpdCBzdGF0dXMgb2YgMi4KK1RoZXNlIGRpYWdub3N0aWNzIHNob3VsZCBiZSBzZWxmLWV4cGxhbmF0b3J5OworaWYgeW91IGRvIG5vdCBmaW5kIHRoZW0gc28sIHBsZWFzZSByZXBvcnQgdGhpcyBhcyBhIGJ1Zy4KKy4KKy5TSCBFWEFNUExFUworVGhlcmUgYXJlIHNldmVyYWwgcGFja2FnZXMgd2hpY2ggcHJvdmlkZSBhIHRleHQgZWRpdG9yIGNvbXBhdGlibGUKK3dpdGggXGZCdmlcZlAsIGZvciBleGFtcGxlIFxmQm52aVxmUCBhbmQgXGZCdmltXGZQLiBXaGljaCBvbmUgaXMgdXNlZAoraXMgY29udHJvbGxlZCBieSB0aGUgbGluayBncm91cCBcZkJ2aVxmUCwgd2hpY2ggaW5jbHVkZXMgbGlua3MgZm9yIHRoZQorcHJvZ3JhbSBpdHNlbGYgYW5kIHRoZSBhc3NvY2lhdGVkIG1hbnBhZ2UuCisuUFAKK1RvIGRpc3BsYXkgdGhlIGF2YWlsYWJsZSBwYWNrYWdlcyB3aGljaCBwcm92aWRlIFxmQnZpXGZQIGFuZCB0aGUgY3VycmVudAorc2V0dGluZyBmb3IgaXQsIHVzZSB0aGUgXGZCXC1cLWRpc3BsYXlcZlAgYWN0aW9uOgorLlJTCisuUFAKKy5CIHVwZGF0ZVwtYWx0ZXJuYXRpdmVzIFwtXC1kaXNwbGF5IHZpCisuUkUKKy5QUAorVG8gY2hvb3NlIGEgcGFydGljdWxhciBcZkJ2aVxmUCBpbXBsZW1lbnRhdGlvbiwgdXNlIHRoaXMgY29tbWFuZCBhcyByb290CithbmQgdGhlbiBzZWxlY3QgYSBudW1iZXIgZnJvbSB0aGUgbGlzdDoKKy5SUworLlBQCisuQiB1cGRhdGVcLWFsdGVybmF0aXZlcyBcLVwtY29uZmlnIHZpCisuUkUKKy5QUAorVG8gZ28gYmFjayB0byBoYXZpbmcgdGhlIFxmQnZpXGZQIGltcGxlbWVudGF0aW9uIGNob3NlbiBhdXRvbWF0aWNhbGx5LCBkbwordGhpcyBhcyByb290OgorLlJTCisuUFAKKy5CIHVwZGF0ZVwtYWx0ZXJuYXRpdmVzIFwtXC1hdXRvIHZpCisuUkUKKy4KKy5TSCBCVUdTCitJZiB5b3UgZmluZCBhIGJ1ZywgcGxlYXNlIHJlcG9ydCBpdCB1c2luZyB0aGUgRGViaWFuIGJ1Zy10cmFja2luZyBzeXN0ZW0uCisuUFAKK0lmIHlvdSBmaW5kIGFueSBkaXNjcmVwYW5jeSBiZXR3ZWVuIHRoZSBvcGVyYXRpb24gb2YKKy5CIHVwZGF0ZVwtYWx0ZXJuYXRpdmVzCithbmQgdGhpcyBtYW51YWwgcGFnZSwgaXQgaXMgYSBidWcsCitlaXRoZXIgaW4gdGhlIGltcGxlbWVudGF0aW9uIG9yIHRoZSBkb2N1bWVudGF0aW9uOyBwbGVhc2UgcmVwb3J0IGl0LgorLgorLlNIIEFVVEhPUlMKK0NvcHlyaWdodCBcKGNvIDE5OTUgSWFuIEphY2tzb24KKy5icgorQ29weXJpZ2h0IFwoY28gMjAwOSBSYXBoYVxbOmVdbCBIZXJ0em9nCisuc3AKK1RoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSB2ZXJzaW9uIDIgb3IKK2xhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIFdBUlJBTlRZLgorLlBQCitUaGlzIG1hbnVhbCBwYWdlIGlzIGNvcHlyaWdodCAxOTk3LDE5OTggQ2hhcmxlcyBCcmlzY29lLVNtaXRoIGFuZAorb3RoZXJzLgorLnNwCitUaGlzIGlzIGZyZWUgZG9jdW1lbnRhdGlvbjsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSB2ZXJzaW9uIDIgb3IKK2xhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIFdBUlJBTlRZLgorLgorLlNIICJTRUUgQUxTTyIKKy5CUiBsbiAoMSksCitGSFMsIHRoZSBGaWxlc3lzdGVtIEhpZXJhcmNoeSBTdGFuZGFyZC4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvb3N0YWJsZSBiL2Rwa2ctMS4xNi4xLjEvb3N0YWJsZQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40YzgxYWJlCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9vc3RhYmxlCkBAIC0wLDAgKzEsMzQgQEAKKyMgVGhpcyBmaWxlIGNvbnRhaW5zIHRoZSB0YWJsZSBvZiBrbm93biBvcGVyYXRpbmcgc3lzdGVtIG5hbWVzLgorIworIyBBcmNoaXRlY3R1cmUgbmFtZXMgYXJlIGZvcm1lZCBhcyBhIGNvbWJpbmF0aW9uIG9mIHRoZSBzeXN0ZW0gbmFtZQorIyAoZnJvbSB0aGlzIHRhYmxlKSBhbmQgQ1BVIG5hbWUgKGZyb20gY3B1dGFibGUpIGFmdGVyIG1hcHBpbmcgZnJvbQorIyB0aGUgRGViaWFuIHRyaXBsZXQgKGZyb20gdHJpcGxldHRhYmxlKS4gQSBsaXN0IG9mIGFyY2hpdGVjdHVyZQorIyBuYW1lcyBpbiB0aGUgRGViaWFuIOKAmHNpZOKAmSBkaXN0cmlidXRpb24gY2FuIGJlIGZvdW5kIGluIHRoZSBhcmNodGFibGUKKyMgZmlsZS4KKyMKKyMgQ29sdW1uIDEgaXMgdGhlIERlYmlhbiBuYW1lIGZvciB0aGUgc3lzdGVtLCB1c2VkIHRvIGZvcm0gdGhlIHN5c3RlbSBwYXJ0CisjIGluIHRoZSBEZWJpYW4gdHJpcGxldC4KKyMgQ29sdW1uIDIgaXMgdGhlIEdOVSBuYW1lIGZvciB0aGUgc3lzdGVtLCB1c2VkIHRvIG91dHB1dCBidWlsZCBhbmQgaG9zdAorIyB0YXJnZXRzIGluIOKAmGRwa2ctYXJjaGl0ZWN0dXJl4oCZLgorIyBDb2x1bW4gMyBpcyBhbiBleHRlbmRlZCByZWd1bGFyIGV4cHJlc3Npb24gdXNlZCB0byBtYXRjaCBhZ2FpbnN0IHRoZQorIyBzeXN0ZW0gcGFydCBvZiB0aGUgb3V0cHV0IG9mIHRoZSBHTlUgY29uZmlnLmd1ZXNzIHNjcmlwdC4KKyMKKyMgPERlYmlhbiBuYW1lPgkJPEdOVSBuYW1lPgkJPGNvbmZpZy5ndWVzcyByZWdleD4KK3VjbGliY2VhYmktbGludXgJbGludXgtdWNsaWJjZWFiaQlsaW51eFteLV0qLXVjbGliY2VhYmkKK3VjbGliYy1saW51eAkJbGludXgtdWNsaWJjCQlsaW51eFteLV0qLXVjbGliYworZ251ZWFiaWhmLWxpbnV4CQlsaW51eC1nbnVlYWJpaGYJCWxpbnV4W14tXSotZ251ZWFiaWhmCitnbnVlYWJpLWxpbnV4CQlsaW51eC1nbnVlYWJpCQlsaW51eFteLV0qLWdudWVhYmkKK2dudXNwZS1saW51eAkJbGludXgtZ251c3BlCQlsaW51eFteLV0qLWdudXNwZQorZ251bHAtbGludXgJCWxpbnV4LWdudWxwCQlsaW51eFteLV0qLWdudWxwCitnbnUtbGludXgJCWxpbnV4LWdudQkJbGludXhbXi1dKigtZ251LiopPworZ251LWtmcmVlYnNkCQlrZnJlZWJzZC1nbnUJCWtmcmVlYnNkW14tXSooLWdudS4qKT8KK2dudS1rbmV0YnNkCQlrbmV0YnNkLWdudQkJa25ldGJzZFteLV0qKC1nbnUuKik/CitnbnUta29wZW5zb2xhcmlzCWtvcGVuc29sYXJpcy1nbnUJa29wZW5zb2xhcmlzW14tXSooLWdudS4qKT8KK2dudS1odXJkCQlnbnUJCQlnbnVbXi1dKgorYnNkLWRhcndpbgkJZGFyd2luCQkJZGFyd2luW14tXSoKK2JzZC1mcmVlYnNkCQlmcmVlYnNkCQkJZnJlZWJzZFteLV0qCitic2QtbmV0YnNkCQluZXRic2QJCQluZXRic2RbXi1dKgorYnNkLW9wZW5ic2QJCW9wZW5ic2QJCQlvcGVuYnNkW14tXSoKK3N5c3Ytc29sYXJpcwkJc29sYXJpcwkJCXNvbGFyaXNbXi1dKgordWNsaWJjZWFiaS11Y2xpbnV4CXVjbGludXgtdWNsaWJjZWFiaQl1Y2xpbnV4W14tXSotdWNsaWJjZWFiaQordWNsaWJjLXVjbGludXgJCXVjbGludXgtdWNsaWJjCQl1Y2xpbnV4W14tXSooLXVjbGliYy4qKT8KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvcG8vQ2hhbmdlTG9nLm9sZCBiL2Rwa2ctMS4xNi4xLjEvcG8vQ2hhbmdlTG9nLm9sZApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iMzY2NGY4Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9wby9DaGFuZ2VMb2cub2xkCkBAIC0wLDAgKzEsMTgzNSBAQAorMjAwOS0wMy0wMiAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogZHBrZy5wb3Q6IFJlZ2VuZXJhdGVkLgorCSogKi5wbzogTWVyZ2VkIHdpdGggZHBrZy5wb3QuCisKKzIwMDktMDItMDggIEl2YW4gTWFzw6FyICA8aGVsaXg4NEBjZW50cnVtLnNrPgorCisJKiBzay5wbzogVXBkYXRlZCB0byA5ODZ0LgorCisyMDA5LTAyLTAyICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBkcGtnLnBvdDogUmVnZW5lcmF0ZWQuCisJKiAqLnBvOiBNZXJnZWQgd2l0aCBkcGtnLnBvdC4KKworMjAwOS0wMi0wMiAgVGV0cmFsZXQgIDx0ZXRyYWxldEBnbWFpbC5jb20+CisKKwkqIHpoX1RXLnBvOiBVcGRhdGVkIHRvIDk4NnQuCisKKzIwMDktMDItMDEgIFRldHJhbGV0ICA8dGV0cmFsZXRAZ21haWwuY29tPgorCisJKiB6aF9UVy5wbzogVXBkYXRlZCB0byA5ODN0M2YuCisKKzIwMDktMDEtMDUgIERlbmcgWGl5dWUgIDxtYW5waGl6LWd1ZXN0QHVzZXJzLmFsaW90aC5kZWJpYW4ub3JnPgorCisJKiB6aF9DTi5wbzogVXBkYXRlZCB0byA5ODZ0LgorCisyMDA5LTAxLTA1ICBQaWFycmVzIEJlb2JpZGUgIDxwaUBiZW9iaWRlLm5ldD4KKworCSogZXUucG86IFVwZGF0ZWQgdG8gOTg2dC4KKworMjAwOC0xMi0yOSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogZHBrZy5wb3Q6IFJlZ2VuZXJhdGVkLgorCSogKi5wbzogTWVyZ2VkIHdpdGggZHBrZy5wb3QuCisKKzIwMDgtMTItMjIgIENseXRpZSBTaWRkYWxsICA8Y2x5dGllQHJpdmVybGFuZC5uZXQuYXU+CisKKwkqIHZpLnBvOiBVcGRhdGVkIHRvIDk4NnQuCisKKzIwMDgtMTItMTkgIE1hcmNlIFZpbGxhcmlubyAgPG12aWxsYXJpbm9AZ21haWwuY29tPgorCisJKiBnbC5wbzogVXBkYXRlZCB0byA5ODZ0LgorCisyMDA4LTExLTE4ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBlcy5wbzogTWVyZ2VkIHdpdGggZHBrZy5wb3QuCisJKiBmci5wbzogTGlrZXdpc2UuCisJKiBzdi5wbzogTGlrZXdpc2UuCisKKzIwMDgtMTEtMTggIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGVzLnBvOiBDaGFuZ2UgY2hhcnNldCB0byBVVEYtOCB0byBtYXRjaCByZWFsaXR5LgorCisyMDA4LTExLTE4ICBNaWd1ZWwgRmlndWVpcmVkbyAgPGVsbWlnQGRlYmlhbnB0Lm9yZz4KKworCSogcHQucG86IFVwZGF0ZWQgdG8gOTg2dC4KKworMjAwOC0xMS0xOCAgSXZhbiBNYXPDoXIgIDxoZWxpeDg0QGNlbnRydW0uc2s+CisKKwkqIHNrLnBvOiBVcGRhdGVkIHRvIDk4NnQuCisKKzIwMDgtMTEtMTcgIE1pcm9zbGF2IEt1cmUgIDxrdXJlbUBkZWJpYW4uY3o+CisKKwkqIGNzLnBvOiBVcGRhdGVkIHRvIDk4NnQuCisKKzIwMDgtMTEtMTcgIEZlbGlwZSBBdWd1c3RvIHZhbiBkZSBXaWVsICA8ZmF3QGRlYmlhbi5vcmc+CisKKwkqIHB0X0JSLnBvOiBVcGRhdGVkIHRvIDk4NnQuCisKKzIwMDgtMTEtMTcgIEhhbnMgRnJlZHJpayBOb3JkaGF1ZyAgPGhhbnNAbm9yZGhhdWcucHJpdi5ubz4KKworCSogbmIucG86IFVwZGF0ZWQgdG8gOTg2dC4KKworMjAwOC0xMS0xNiAgSmF2aWVyIEZlcm7DoW5kZXotU2FuZ3Vpbm8gUGXDsWEgIDxqZnNAY29tcHV0ZXIub3JnPgorCisJKiBlcy5wbzogVXBkYXRlZCB0byA5ODZ0LgorCisyMDA4LTExLTE2ICBZdXJpIEtvemxvdiAgPGtvemxvdi55QGdtYWlsLmNvbT4KKworCSogcnUucG86IFVwZGF0ZWQgdG8gOTg2dC4KKworMjAwOC0xMS0xNiAgRWRkeSBQZXRyaciZb3IgIDxlZGR5LnBldHJpc29yQGdtYWlsLmNvbT4KKworCSogcm8ucG86IFVwZGF0ZWQgdG8gOTg2dC4KKworMjAwOC0xMS0xNSAgUGV0ZXIgS3JlZnRpbmcgIDxwZXRlcmtAZGViaWFuLm9yZz4KKworCSogc3YucG86IFVwZGF0ZWQgdG8gOTg2dC4KKworMjAwOC0xMS0xNSBXaWt0b3IgV2FuZGFjaG93aWN6ICA8c2lyeWVzQGdtYWlsLmNvbT4KKworCSogcGwucG86IFVwZGF0ZWQgdG8gOTg2dC4KKworMjAwOC0xMS0xNSAgQ2hhbmd3b28gUnl1ICA8Y3dyeXVAZGViaWFuLm9yZz4KKworCSoga28ucG86IFVwZGF0ZWQgdG8gOTg2dC4KKworMjAwOC0xMS0xNSAgWXVyaSBLb3psb3YgIDxrb3psb3YueUBnbWFpbC5jb20+CisKKwkqIHJ1LnBvOiBVcGRhdGVkIHRvIDk4NXQxZi4KKworMjAwOC0xMS0xNCAgQ2hyaXN0aWFuIFBlcnJpZXIgIDxidWJ1bGxlQGRlYmlhbi5vcmc+CisKKwkqIGZyLnBvOiBVcGRhdGVkIHRvIDk4NnQuCisKKzIwMDgtMTEtMTQgIFN2ZW4gSm9hY2hpbSAgPHN2ZW5qb2FjQGdteC5kZT4KKworCSogZGUucG86IFVwZGF0ZWQgdG8gOTg2dC4KKworMjAwOC0xMS0xNCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogZHBrZy5wb3Q6IFJlZ2VuZXJhdGVkLiBGb3JtZXJseSBjb21wbGV0ZSB0cmFuc2xhdGlvbnMKKwliZWNvbWUgOTg1dDF1LgorCSogKi5wbzogTWVyZ2VkIHdpdGggZHBrZy5wb3QuCisKKzIwMDgtMTEtMTEgIEpvcmRpIE1hbGxhY2ggIDxqb3JkaUBkZWJpYW4ub3JnPgorCisJKiBjYS5wbzogVXBkYXRlZCB0byA5ODF0MmYydS4KKworMjAwOC0wOS0xNiAgV2lrdG9yIFdhbmRhY2hvd2ljeiAgPHNpcnllc0BnbWFpbC5jb20+CisKKwkqIHBsLnBvOiBVcGRhdGVkIHRvIDk4NXQuCisKKzIwMDgtMDktMTMgIFl1cmkgS296bG92ICA8a296bG92LnlAZ21haWwuY29tPgorCisJKiBydS5wbzogVXBkYXRlZCB0byA5ODV0LgorCisyMDA4LTA5LTEzICBNaWd1ZWwgRmlndWVpcmVkbyAgPGVsbWlnQGRlYmlhbnB0Lm9yZz4KKworCSogcHQucG86IFVwZGF0ZWQgdG8gOTg1dC4KKworMjAwOC0wOS0xMiAgRW1tYW51ZWwgR2FsYXRvdWxhcyAgPGdhbGF4aWNvQHF1YWQtbnJnLm5ldD4KKworCSogZWwucG86IFVwZGF0ZWQgdG8gOTg1dC4KKworMjAwOC0wOS0wNSAgQ2x5dGllIFNpZGRhbGwgIDxjbHl0aWVAcml2ZXJsYW5kLm5ldC5hdT4KKworCSogdmkucG86IFVwZGF0ZWQgdG8gOTg1dC4KKworMjAwOC0wOS0wNSAgSGFucyBGcmVkcmlrIE5vcmRoYXVnICA8aGFuc0Bub3JkaGF1Zy5wcml2Lm5vPgorCisJKiBuYi5wbzogVXBkYXRlZCB0byA5ODV0LgorCisyMDA4LTA5LTA1ICBQaWFycmVzIEJlb2JpZGUgIDxwaStkZWJpYW5AYmVvYmlkZS5uZXQ+CisKKwkqIGV1LnBvOiBVcGRhdGVkIHRvIDk4NXQuCisKKzIwMDgtMDgtMjkgIEphY29ibyBUYXJyaW8gIDxqdGFycmlvQGRlYmlhbi5vcmc+CisKKwkqIGdsLnBvOiBVcGRhdGVkIHRvIDk4NXQuCisKKzIwMDgtMDgtMjkgIERhbmllbCBOeWxhbmRlciAgPHBvQGRhbmllbG55bGFuZGVyLnNlPgorCisJKiBzdi5wbzogVXBkYXRlZCB0byA5ODV0LgorCisyMDA4LTA4LTI2ICBGZWxpcGUgQXVndXN0byB2YW4gZGUgV2llbCAgPGZhd0BkZWJpYW4ub3JnPgorCisJKiBwdF9CUi5wbzogVXBkYXRlZCB0byA5ODV0LgorCisyMDA4LTA4LTI2ICBEZW5nIFhpeXVlICA8bWFucGhpei1ndWVzdEB1c2Vycy5hbGlvdGguZGViaWFuLm9yZz4KKworCSogemhfQ04ucG86IFVwZGF0ZWQgdG8gOTg1dC4KKworMjAwOC0wOC0yNCAgTWlyb3NsYXYgS3VyZSAgPGt1cmVtQGRlYmlhbi5jej4KKworCSogY3MucG86IFVwZGF0ZWQgdG8gOTg1dC4KKworMjAwOC0wOC0yMCAgRWRkeSBQZXRyaciZb3IgIDxlZGR5LnBldHJpc29yQGdtYWlsLmNvbT4KKworCSogcm8ucG86IFVwZGF0ZWQgdG8gOTg1dC4KKworMjAwOC0wOC0xOCAgU3ZlbiBKb2FjaGltICA8c3ZlbmpvYWNAZ214LmRlPgorCisJKiBkZS5wbzogVXBkYXRlZCB0byA5ODV0LgorCisyMDA4LTA4LTE4ICBDaHJpc3RpYW4gUGVycmllciAgPGJ1YnVsbGVAZGViaWFuLm9yZz4KKworCSogZnIucG86IFVwZGF0ZWQgdG8gOTg1dC4KKworMjAwOC0wOC0xOCAgSXZhbiBNYXPDoXIgIDxoZWxpeDg0QGNlbnRydW0uc2s+CisKKwkqIHNrLnBvOiBVcGRhdGVkIHRvIDk4NXQuCisKKzIwMDgtMDgtMTcgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGRwa2cucG90OiBSZWdlbmVyYXRlZC4KKwkqICoucG86IE1lcmdlZCB3aXRoIGRwa2cucG90LgorCisyMDA4LTA4LTE3ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBMSU5HVUFTOiBBZGQgTGl0aHVhbmlhbi4KKworMjAwOC0wOC0wMiAgR2ludGF1dGFzIE1pbGlhdXNrYXMgIDxnaW50YXNAYWtsLmx0PgorCisJKiBsdC5wbzogQWRkZWQgYXMgNjI2dDU0ZjMwNHUuCisKKzIwMDgtMDctMjkgIEVkZHkgUGV0cmnImW9yICA8ZWRkeS5wZXRyaXNvckBnbWFpbC5jb20+CisKKwkqIHJvLnBvOiBVcGRhdGVkIHRvIDk4NHQgKHBvcnQgZnJvbSBsZW5ueSBicmFuY2gpLgorCisyMDA4LTA3LTI2ICBDaHJpc3RpYW4gUGVycmllciAgPGJ1YnVsbGVAZGViaWFuLm9yZz4KKworCSogZnIucG86IFJlcGxhY2UgImTDqWNsZW5jaGVtZW50IiBieSAiYWN0aW9uIGRpZmbDqXLDqWUiLgorCisyMDA4LTA3LTIyICBQaWFycmVzIEJlb2JpZGUgIDxwaStkZWJpYW5AYmVvYmlkZS5uZXQ+CisKKwkqIGV1LnBvOiBVcGRhdGVkIHRvIDk4NHQuCisKKzIwMDgtMDctMTkgIENoYW5nd29vIFJ5dSAgPGN3cnl1QGRlYmlhbi5vcmc+CisKKwkqIGtvLnBvOiBVcGRhdGVkIHRvIDk4NHQuCisKKzIwMDgtMDctMDIgIEl2YW4gTWFzw6FyICA8aGVsaXg4NEBjZW50cnVtLnNrPgorCisJKiBzay5wbzogVXBkYXRlZCB0byA5ODR0LgorCisyMDA4LTA3LTAxICBZdXJpIEtvemxvdiAgPGtvemxvdi55QGdtYWlsLmNvbT4KKworCSogcnUucG86IFVwZGF0ZWQgdG8gOTg0dC4KKworMjAwOC0wNi0yOCAgRWRkeSBQZXRyaciZb3IgIDxlZGR5LnBldHJpc29yQGdtYWlsLmNvbT4KKworCSogcm8ucG86IFVwZGF0ZWQgdG8gOTg0dC4KKworMjAwOC0wNi0yNiAgVGhlcHBpdGFrIEthcm9vbmJvb255YW5hbiAgPHRoZXBAbGludXgudGhhaS5uZXQ+CisKKwkqIHRoLnBvOiBVcGRhdGVkIHRvIDk4NHQuCisKKzIwMDgtMDYtMDkgIEZlbGlwZSBBdWd1c3RvIHZhbiBkZSBXaWVsICA8ZmF3QGRlYmlhbi5vcmc+CisKKwkqIHB0X0JSLnBvOiBVcGRhdGVkIHRvIDk4NHQuCisKKzIwMDgtMDYtMDYgIFdpa3RvciBXYW5kYWNob3dpY3ogIDxzaXJ5ZXNAZ21haWwuY29tPgorCisJKiBwbC5wbzogVXBkYXRlZCB0byA5ODR0LgorCisyMDA4LTA2LTA2ICBKb3JkaSBNYWxsYWNoICA8am9yZGlAZGViaWFuLm9yZz4KKworCSogY2EucG86IFVwZGF0ZWQgdG8gODg3dDcxZjI2dS4KKworMjAwOC0wNS0zMSAgRGVuZyBYaXl1ZSAgPG1hbnBoaXotZ3Vlc3RAdXNlcnMuYWxpb3RoLmRlYmlhbi5vcmc+CisKKwkqIHpoX0NOLnBvOiBVcGRhdGVkIHRvIDk4NHQuCisKKzIwMDgtMDUtMzEgIFBpYXJyZXMgQmVvYmlkZSAgPHBpK2RlYmlhbkBiZW9iaWRlLm5ldD4KKworCSogZXUucG86IFVwZGF0ZWQgdG8gOTg0dC4KKworMjAwOC0wNS0zMSAgSGFucyBGcmVkcmlrIE5vcmRoYXVnICA8aGFuc0Bub3JkaGF1Zy5wcml2Lm5vPgorCisJKiBuYi5wbzogVXBkYXRlZCB0byA5ODR0LgorCisyMDA4LTA1LTI4ICBKYWNvYm8gVGFycmlvICA8anRhcnJpb0BkZWJpYW4ub3JnPgorCisJKiBnbC5wbzogVXBkYXRlZCB0byA5ODR0CisKKzIwMDgtMDUtMTggIE1pcm9zbGF2IEt1cmUgIDxrdXJlbUBkZWJpYW4uY3o+CisKKwkqIGNzLnBvOiBVcGRhdGVkIHRvIDk4NHQKKworMjAwOC0wNS0xNyAgQ2x5dGllIFNpZGRhbGwgIDxjbHl0aWVAcml2ZXJsYW5kLm5ldC5hdT4KKworCSogdmkucG86IFVwZGF0ZWQgdG8gOTg0dAorCisyMDA4LTA1LTEzICBDaHJpc3RpYW4gUGVycmllciAgPGJ1YnVsbGVAZGViaWFuLm9yZz4KKworCSogZnIucG86IFVwZGF0ZWQgdG8gOTg0dC4KKworMjAwOC0wNS0xMyAgU3ZlbiBKb2FjaGltICA8c3ZlbmpvYWNAZ214LmRlPgorCisJKiBkZS5wbzogVXBkYXRlZCB0byA5ODR0LgorCisyMDA4LTA1LTEzICBQZXRlciBLYXJsc3NvbiAgPHBldGVya0BkZWJpYW4ub3JnPgorCisJKiBzdi5wbzogVXBkYXRlZCB0byA5ODR0LgorCisyMDA4LTA1LTEzICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBkcGtnLnBvdDogUmVnZW5lcmF0ZWQuCisJKiAqLnBvOiBNZXJnZWQgd2l0aCBkcGtnLnBvdC4KKworMjAwOC0wNS0xMyAgUGlhcnJlcyBCZW9iaWRlICA8cGkrZGViaWFuQGJlb2JpZGUubmV0PgorCisJKiBldS5wbzogVXBkYXRlZCB0byA5ODR0LgorCisyMDA4LTA1LTEyICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBkcGtnLnBvdDogUmVnZW5lcmF0ZWQuCisJKiAqLnBvOiBNZXJnZWQgd2l0aCBkcGtnLnBvdC4KKworMjAwOC0wNS0xMSAgRmVsaXBlIEF1Z3VzdG8gdmFuIGRlIFdpZWwgIDxmYXdAZGViaWFuLm9yZz4KKworCSogcHRfQlIucG86IFVwZGF0ZWQgdG8gOTg0dC4KKworMjAwOC0wNS0wOSAgU3ZlbiBKb2FjaGltICA8c3ZlbmpvYWNAZ214LmRlPgorCisJKiBkZS5wbzogQWRqdXN0IHRyYW5zbGF0aW9uIG9mICJicmVha3MiLgorCisyMDA4LTA1LTA4ICBGbG9yZW50IFVTU0VJTCAgPHN3aWlwODFAZnJlZS5mcj4KKworCSogZnIucG86IFVwZGF0ZWQgdG8gOTg0dC4KKworMjAwOC0wNS0wMiAgTWlndWVsIEZpZ3VlaXJlZG8gIDxlbG1pZ0BkZWJpYW5wdC5vcmc+CisKKwkqIHB0LnBvOiBVcGRhdGVkIHRvIDk4NHQuCisKKzIwMDgtMDQtMjAgIFJvYmVydCBMdWJlcmRhICA8cm9iZXJ0QGRlYmlhbi5vcmc+CisKKwkqIHBsLnBvOiBGaXggb25lIG1pc3Npbmcgc3BhY2UuCisKKzIwMDgtMDUtMDYgIFN2ZW4gSm9hY2hpbSAgPHN2ZW5qb2FjQGdteC5kZT4KKworCSogZGUucG86IE1pbm9yIGZpeGVzLgorCisyMDA4LTA1LTA1ICBXaWt0b3IgV2FuZGFjaG93aWN6ICA8c2lyeWVzQGdtYWlsLmNvbT4KKworCSogcGwucG86IE1pbm9yIGZpeGVzLgorCisyMDA4LTA1LTA0ICBJdmFuIE1hc8OhciAgPGhlbGl4ODRAY2VudHJ1bS5zaz4KKworCSogc2sucG86IFVwZGF0ZSB0byA5ODR0LgorCisyMDA4LTA1LTAzICBJdmFuIE1hc8OhciAgPGhlbGl4ODRAY2VudHJ1bS5zaz4KKworCSogc2sucG86IFVwZGF0ZSB0byA5ODF0M2YuCisKKzIwMDgtMDUtMDMgIFl1cmkgS296bG92ICA8a296bG92LnlAZ21haWwuY29tPgorCisJKiBydS5wbzogVXBkYXRlZCB0byA5ODR0LgorCisyMDA4LTA1LTAyICBTWkVSVsOBQyBBdHRpbGEgIDxzYXNAMzIxLmh1PgorCisJKiBodS5wbzogVXBkYXRlZCB0byA4MTh0LgorCisyMDA4LTA0LTMwICBXaWt0b3IgV2FuZGFjaG93aWN6ICA8c2lyeWVzQGdtYWlsLmNvbT4KKworCSogcGwucG86IFVwZGF0ZWQgdG8gOTg0dC4KKworMjAwOC0wNC0yOSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogZHBrZy5wb3Q6IFJlZ2VuZXJhdGVkLgorCSogKi5wbzogTWVyZ2VkIHdpdGggZHBrZy5wb3QuCisKKzIwMDgtMDQtMjggIFN2ZW4gSm9hY2hpbSAgPHN2ZW5qb2FjQGdteC5kZT4KKworCSogc3YucG86IEFkZCBtaXNzaW5nIGZvcm1hdCBzcGVjaWZpZXIuCisKKzIwMDgtMDQtMjUgIFBldGVyIEthcmxzc29uICA8cGV0ZXJrQGRlYmlhbi5vcmc+CisKKwkqIHN2LnBvOiBVcGRhdGVkIHRvIDk4NHQuCisKKzIwMDgtMDQtMjAgIFJvYmVydCBMdWJlcmRhICA8cm9iZXJ0QGRlYmlhbi5vcmc+CisKKwkqIHBsLnBvOiBVcGRhdGVkIHRvIDk0NXQyNmYxM3UuCisKKzIwMDgtMDQtMTYgIE1pZ3VlbCBGaWd1ZWlyZWRvICA8ZWxtaWdAZGViaWFucHQub3JnPgorCisJKiBwdC5wbzogVXBkYXRlZCB0byA5NTF0CisKKzIwMDgtMDQtMTMgIEphY29ibyBUYXJyaW8gIDxqdGFycmlvQGRlYmlhbi5vcmc+CisKKwkqIGdsLnBvOiBSZWFsbHkgdXBkYXRlZCB0byA5ODR0IChoYWQgMSBmdXp6eSBzdHJpbmcpLgorCisyMDA4LTA0LTExICBKYWNvYm8gVGFycmlvICA8anRhcnJpb0BkZWJpYW4ub3JnPgorCisJKiBnbC5wbzogVXBkYXRlZCB0byA5ODR0LgorCisyMDA4LTA0LTEwICBTdmVuIEpvYWNoaW0gIDxzdmVuam9hY0BnbXguZGU+CisKKwkqIGRwa2cucG90OiBSZWdlbmVyYXRlZC4KKwkqICoucG86IE1lcmdlZCB3aXRoIGRwa2cucG90LgorCSogZGUucG86IEZpeCBhbGlnbm1lbnQgb2YgJ2Rwa2ctdHJpZ2dlciAtLWhlbHAnLgorCisyMDA4LTA0LTA5ICBTdmVuIEpvYWNoaW0gIDxzdmVuam9hY0BnbXguZGU+CisKKwkqIGRlLnBvOiBVcGRhdGVkIHRvIDk4NHQuCisKKzIwMDgtMDQtMDggIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHB0LnBvLCBzdi5wbzogTWVyZ2VkIHdpdGggZHBrZy5wb3QuCisKKzIwMDgtMDQtMDggIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHN2LnBvOiBNYXJrIHR3byBub24tbWF0Y2hpbmcgc3RyaW5ncyBhcyBmdXp6eS4KKworMjAwOC0wNC0wMyAgUGV0ZXIgS2FybHNzb24gIDxwZXRlcmtAZGViaWFuLm9yZz4KKworCSogc3YucG86IFVwZGF0ZWQgdG8gOTg0dC4KKworMjAwOC0wNC0wMiAgTWlndWVsIEZpZ3VlaXJlZG8gIDxlbG1pZ0BkZWJpYW5wdC5vcmc+CisKKwkqIHB0LnBvOiBVcGRhdGVkIHRvIDk1MXQKKworMjAwOC0wNC0wMiAgU3ZlbiBKb2FjaGltICA8c3ZlbmpvYWNAZ214LmRlPgorCisJKiBkcGtnLnBvdDogUmVnZW5lcmF0ZWQuCisJKiAqLnBvOiBNZXJnZWQgd2l0aCBkcGtnLnBvdC4KKworMjAwOC0wNC0wMSAgQ2x5dGllIFNpZGRhbGwgIDxjbHl0aWVAcml2ZXJsYW5kLm5ldC5hdT4KKworCSogdmkucG86IFVwZGF0ZWQgdG8gOTg0dAorCisyMDA4LTA0LTAxICBNaWd1ZWwgRmlndWVpcmVkbyAgPGVsbWlnQGRlYmlhbnB0Lm9yZz4KKworCSogcHQucG86IFVwZGF0ZWQgdG8gOTMzdAorCisyMDA4LTA0LTAxICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBkcGtnLnBvdDogUmVnZW5lcmF0ZWQuCisJKiAqLnBvOiBNZXJnZWQgd2l0aCBkcGtnLnBvdC4KKworMjAwOC0wNC0wMSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogUE9URklMRVMuaW46IFJlbmFtZSAnbGliL3RyaWdkZWZlcnJlZC5jJyB0byAnbGliL3RyaWdkZWZlcnJlZC5sJy4KKworMjAwOC0wMy0zMSAgRGVuZyBYaXl1ZSAgPG1hbnBoaXotZ3Vlc3RAdXNlcnMuYWxpb3RoLmRlYmlhbi5vcmc+CisKKwkqIHpoX0NOLnBvOiBVcGRhdGVkIHRvIDk4NHQKKworMjAwOC0wMy0zMCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogZHBrZy5wb3Q6IFJlZ2VuZXJhdGVkLgorCSogKi5wbzogTWVyZ2VkIHdpdGggZHBrZy5wb3QuCisKKzIwMDgtMDMtMjAgIEl2YW4gTWFzw6FyICA8aGVsaXg4NEBjZW50cnVtLnNrPgorCisJKiBzay5wbzogVXBkYXRlZCB0byA5Mjd0CisKKzIwMDgtMDMtMDkgIFJvYmVydCBMdWJlcmRhICA8cm9iZXJ0QGRlYmlhbi5vcmc+CisKKwkqIHBsLnBvOiBBcHBseSBzb21lIGZpeGVzIHN1Z2dlc3RlZCBieSBXaWt0b3IgV2FuZGFjaG93aWN6LgorCSogcGwucG86IENvbnNpc3RlbnRseSB1c2UgUG9saXNoIHF1b3RhdGlvbiBtYXJrcyBpbiB0cmFuc2xhdGlvbnMuCisKKzIwMDgtMDMtMDMgIFRoZXBwaXRhayBLYXJvb25ib29ueWFuYW4gIDx0aGVwQGxpbnV4LnRoYWkubmV0PgorCisJKiB0aC5wbzogVXBkYXRlZCB0byA5MjF0LgorCisyMDA4LTAyLTI2ICBQZXRlciBLYXJsc3NvbiAgPHBldGVya0BkZWJpYW4ub3JnPgorCisJKiBzdi5wbzogVXBkYXRlZCB0byA5MjF0LgorCisyMDA4LTAyLTI0ICBSb2JlcnQgTHViZXJkYSAgPHJvYmVydEBkZWJpYW4ub3JnPgorCisJKiBwbC5wbzogUmVjb2RlZCB0byBVVEYtOAorCSogcGwucG86IFVwZGF0ZWQgdG8gOTIxdC4KKworMjAwOC0wMi0wOSAgRWRkeSBQZXRyacWfb3IgIDxlZGR5LnBldHJpc29yQGdtYWlsLmNvbT4KKworCSogcm8ucG86IFVwZGF0ZSB0byA5Mjd0LgorCisyMDA4LTAyLTA0ICBDaGFuZ3dvbyBSeXUgIDxjd3J5dUBkZWJpYW4ub3JnPgorCisJKiBrby5wbzogVXBkYXRlIHRvIDkyN3QuCisKKzIwMDgtMDEtMjEgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGRlLnBvLCBldS5wbywgZnIucG8sIGdsLnBvLCBuYi5wbywgcnUucG8sIHN2LnBvOiBVcGRhdGUgdG8gOTI4dC4KKwkqIHZpLnBvLCB6aF9DTi5wbzogTGlrZXdpc2UuCisKKzIwMDgtMDEtMjEgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGRwa2cucG90OiBSZWdlbmVyYXRlZC4KKwkqICoucG86IE1lcmdlZCB3aXRoIGRwa2cucG90LgorCisyMDA4LTAxLTE5ICBGcmFuayBMaWNodGVuaGVsZCAgPGRqcGlnQGRlYmlhbi5vcmc+CisKKwkqIFBPVEZJTEVTLmluOiBSZW1vdmUgdXRpbHMvZW5vZW50LmMKKwlzaW5jZSBpdCBkb2Vzbid0IGV4aXN0IGFueW1vcmUuCisKKzIwMDgtMDEtMTQgIFl1cmkgS296bG92ICA8a296bG92LnlAZ21haWwuY29tPgorCisJKiBydS5wbzogVXBkYXRlZCB0byA5Mjh0LgorCisyMDA4LTAxLTEyICBKYWNvYm8gVGFycmlvICA8anRhcnJpb0BkZWJpYW4ub3JnPgorCisJKiBnbC5wbzogVXBkYXRlZCB0byA5Mjh0LgorCisyMDA4LTAxLTA3ICBDaHJpc3RpYW4gUGVycmllciAgPGJ1YnVsbGVAZGViaWFuLm9yZz4KKworCSogZGUucG8sIGV1LnBvLCBmci5wbywgbmIucG8sIHN2LnBvLCB2aS5wbzogVXBkYXRlZCB0byA5Mjh0LgorCSogemhfQ04ucG86IExpa2V3aXNlLgorCisyMDA4LTAxLTA3ICBQaWFycmVzIEJlb2JpZGUgIDxwaUBiZW9iaWRlLm5ldD4KKworCSogZXUucG86IFVwZGF0ZWQgdG8gOTI3dDFmLgorCisyMDA4LTAxLTA3ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBkcGtnLnBvdDogUmVnZW5lcmF0ZWQuCisJKiAqLnBvOiBNZXJnZWQgd2l0aCBkcGtnLnBvdC4KKworMjAwOC0wMS0wNSAgU3ZlbiBKb2FjaGltICA8c3ZlbmpvYWNAZ214LmRlPgorCisJKiBkZS5wbzogVXBkYXRlZCB0byA5Mjh0LgorCisyMDA4LTAxLTA0ICBQZXRlciBLYXJsc3NvbiAgPHBldGVya0BkZWJpYW4ub3JnPgorCisJKiBzdi5wbzogVXBkYXRlZCB0byA5Mjh0LgorCisyMDA4LTAxLTA0ICBDaHJpc3RpYW4gUGVycmllciAgPGJ1YnVsbGVAZGViaWFuLm9yZz4KKworCSogemhfQ04ucG86IFVwZGF0ZWQgdG8gOTI4dC4KKworMjAwOC0wMS0wNCAgQ2hyaXN0aWFuIFBlcnJpZXIgIDxidWJ1bGxlQGRlYmlhbi5vcmc+CisKKwkqIGZyLnBvOiBVcGRhdGVkIHRvIDkyOHQuCisKKzIwMDgtMDEtMDQgIENseXRpZSBTaWRkYWxsICA8Y2x5dGllQHJpdmVybGFuZC5uZXQuYXU+CisKKwkqIHZpLnBvOiBVcGRhdGVkIHRvIDkyOHQuCisKKzIwMDgtMDEtMDIgIEhhbnMgRnJlZHJpayBOb3JkaGF1ZyAgPGhhbnNAbm9yZGhhdWcucHJpdi5ubz4KKworCSogbmIucG86IFVwZGF0ZWQgdG8gOTI4dC4KKworMjAwNy0xMi0yOSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogZHBrZy5wb3Q6IFJlZ2VuZXJhdGVkLgorCSogKi5wbzogTWVyZ2VkIHdpdGggZHBrZy5wb3QuIEZvcm1lcmx5IGNvbXBsZXRlIHRyYW5zbGF0aW9ucworCWJlY29tZSA5MjZ0MmYuCisKKzIwMDctMTItMjkgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGhlLnBvOiBSZW1vdmUgb2Jzb2xldGUgdHJhbnNsYXRpb24uCisJKiBMSU5HVUFTOiBSZW1vdmUgZGlzYWJsZWQgSGVicmV3IGVudHJ5LgorCisyMDA3LTEyLTI5ICBIYW5zIEZyZWRyaWsgTm9yZGhhdWcgIDxoYW5zQG5vcmRoYXVnLnByaXYubm8+CisKKwkqIG5iLnBvOiBVcGRhdGVkIHRvIDkzMHQuCisKKzIwMDctMTItMjIgIENocmlzdGlhbiBQZXJyaWVyICA8YnVidWxsZUBkZWJpYW4ub3JnPgorCisJKiBmci5wbzogVXBkYXRlZCB0byA5MzB0LgorCisyMDA3LTEyLTIwICBSYXBoYcOrbCBIZXJ0em9nICA8aGVydHpvZ0BkZWJpYW4ub3JnPgorCisJKiBzdi5wbzogRml4IHNvbWUgZ3JvZmYgdGhhdCBsZWFkIHRvIGEgYnVpbGQgZmFpbHVyZS4KKworMjAwNy0xMi0yMCAgS2Vuc2hpIE11dG8gIDxrbXV0b0BkZWJpYW4ub3JnPgorCisJKiBqYS5wbzogVXBkYXRlZCB0byA5MzB0LgorCisyMDA3LTEyLTE5ICBKYXZpZXIgRmVybsOhbmRlei1TYW5ndWlubyBQZcOxYSAgPGpmc0Bjb21wdXRlci5vcmc+CisKKwkqIGVzLnBvOiBVcGRhdGVkIHRvIDkzMHQuCisKKzIwMDctMTItMTkgIFBldGVyIEthcmxzc29uICA8cGV0ZXJrQGRlYmlhbi5vcmc+CisKKwkqIGRwa2cucG90OiBSZWdlbmVyYXRlZC4KKwkqICoucG86IE1lcmdlZCB3aXRoIGRwa2cucG90LgorCSogc3YucG86IFVwZGF0ZWQgdG8gOTMwdC4KKworMjAwNy0xMi0xMyAgS2Vuc2hpIE11dG8gIDxrbXV0b0BkZWJpYW4ub3JnPgorCisJKiBqYS5wbzogVXBkYXRlZCA5Mjl0LgorCisyMDA3LTExLTI5ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBkcGtnLnBvdDogUmVnZW5lcmF0ZWQuCisJKiAqLnBvOiBNZXJnZWQgd2l0aCBkcGtnLnBvdC4KKworMjAwNy0xMS0xOSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogZHBrZy5wb3Q6IFJlZ2VuZXJhdGVkLgorCSogKi5wbzogTWVyZ2VkIHdpdGggZHBrZy5wb3QuCisKKzIwMDctMTEtMDkgIE1pcm9zbGF2IEt1cmUgIDxrdXJlbUBkZWJpYW4uY3o+CisKKwkqIGNzLnBvOiBVcGRhdGVkIHRvIDkyOXQuCisKKzIwMDctMTEtMDYgIENocmlzdGlhbiBQZXJyaWVyICA8YnVidWxsZUBkZWJpYW4ub3JnPgorCisJKiBmci5wbzogRW50ZXIgdGhlIDIxc3QgY2VudHVyeSBhbmQgc3dpdGNoZWQgdG8gVVRGLTguCisKKzIwMDctMTAtMTQgIEphY29ibyBUYXJyaW8gIDxqdGFycmlvQHRyYXNuby5uZXQ+CisKKwkqIGdsLnBvOiBVcGRhdGVkIHRvIDkyOXQuCisKKzIwMDctMTAtMTMgIFRoZXBwaXRhayBLYXJvb25ib29ueWFuYW4gIDx0aGVwQGxpbnV4LnRoYWkubmV0PgorCisJKiB0aC5wbzogVXBkYXRlZCB0byA5Mjl0LgorCisyMDA3LTEwLTEyICBZdXJpIEtvemxvdiAgPGtvemxvdi55QGdtYWlsLmNvbT4KKworCSogcnUucG86IFVwZGF0ZWQgdG8gOTI5dC4KKworMjAwNy0xMC0wOCAgUm9iZXJ0IEx1YmVyZGEgIDxyb2JlcnRAZGViaWFuLm9yZz4KKworCSogcGwucG86IFVwZGF0ZWQgdG8gOTI5dC4KKworMjAwNy0wOS0xOSAgU3VuamFlIFBhcmsgIDxkYXJlaGFubEBnbWFpbC5jb20+CisKKwkqIGtvLnBvOiBVcGRhdGVkIHRvIDkyOXQuCisKKzIwMDctMDktMDcgIENsYXVzIEhpbmRzZ2F1bCAgPGNsYXVzLmhpbmRzZ2F1bEBnbWFpbC5jb20+CisKKwkqIGRhLnBvOiBVcGRhdGVkIHRvIDkyOXQuCisKKzIwMDctMDktMDYgIE1pZ3VlbCBGaWd1ZWlyZWRvICA8ZWxtaWdAZGViaWFucHQub3JnPgorCisJKiBwdC5wbzogVXBkYXRlZCB0byA5Mjl0LgorCisyMDA3LTA5LTA1ICBQaWFycmVzIEJlb2JpZGUgIDxwaUBiZW9iaWRlLm5ldD4KKworCSogZXUucG86IFVwZGF0ZWQgdG8gOTI5dC4KKworMjAwNy0wOS0wNCAgRnLDqWTDqXJpYyBCb3RoYW15ICA8ZnJlZGVyaWMuYm90aGFteUBmcmVlLmZyPgorCisJKiBmci5wbzogVXBkYXRlZCB0byA5Mjl0LgorCisyMDA3LTA5LTAyICBTdmVuIEpvYWNoaW0gIDxzdmVuam9hY0BnbXguZGU+CisKKwkqIGRlLnBvOiBVcGRhdGVkIHRvIDkyOXQuCisKKzIwMDctMDktMDIgIENseXRpZSBTaWRkYWxsICA8Y2x5dGllQHJpdmVybGFuZC5uZXQuYXU+CisKKwkqIHZpLnBvOiBVcGRhdGVkIHRvIDkyOXQuCisKKzIwMDctMDgtMjYgIFNoaXZhIFByYXNhZCBQb2toYXJlbCAgPHBva2hhcmVsc2hpdkBnbWFpbC5jb20+CisKKwkqIG5lLnBvOiBVcGRhdGVkIHRvIDkwM3QyM2YzdS4KKworMjAwNy0wOC0yNSAgUGV0ZXIgS2FybHNzb24gIDxwZXRlcmtAZGViaWFuLm9yZz4KKworCSogc3YucG86IFVwZGF0ZWQgdG8gOTI5dC4KKworMjAwNy0wOC0xOCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogZHBrZy5wb3Q6IFJlZ2VuZXJhdGVkLgorCSogKi5wbzogTWVyZ2VkIHdpdGggZHBrZy5wb3QuCisKKzIwMDctMDgtMTQgIFJvYmVydCBMdWJlcmRhICA8cm9iZXJ0QGRlYmlhbi5vcmc+CisKKwkqIHBsLnBvOiBVcGRhdGVkIHRvIDkyMXQuCisKKzIwMDctMDgtMDYgIFl1cmkgS296bG92ICA8a296bG92LnlAZ21haWwuY29tPgorCisJKiBydS5wbzogVXBkYXRlZCB0byA5MjF0LgorCisyMDA3LTA3LTMxICBTaGl2YSBQcmFzYWQgUG9raGFyZWwgIDxwb2toYXJlbHNoaXZAZ21haWwuY29tPgorCisJKiBuZS5wbzogVXBkYXRlZCB0byA5MjF0LgorCisyMDA3LTA3LTI0ICBQZXRlciBLYXJsc3NvbiAgPHBldGVya0BkZWJpYW4ub3JnPgorCisJKiBzdi5wbzogVXBkYXRlZCB0byA5MjF0LgorCisyMDA3LTA3LTEzICBJdmFyIFNtb2xpbiAgPG9rdWxAbGludXguZWU+CisKKwkqIGV0LnBvOiBVcGRhdGVkIHRvIDUwNXQ0MTZ1LgorCisyMDA3LTA2LTI4ICBUc2hld2FuZyBOb3JidSAgPGJ1bXRoYXAyMDA2QGhvdG1haWwuY29tPgorCisJKiBkei5wbzogVXBkYXRlZCB0byA5MjF0LgorCisyMDA3LTA2LTIxICBKYXZpZXIgRmVybmFuZGV6LVNhbmd1aW5vICA8amZzQGRlYmlhbi5vcmc+CisKKwkqIGVzLnBvOiBVcGRhdGVkIHRvIDkyMXQuCisKKzIwMDctMDYtMTggIEl2YXIgU21vbGluICA8b2t1bEBsaW51eC5lZT4KKworCSogZXQucG86IFVwZGF0ZWQgdG8gNDYzdDQ1OHUuCisKKzIwMDctMDYtMDUgIEl2YXIgU21vbGluICA8b2t1bEBsaW51eC5lZT4KKworCSogZXQucG86IFVwZGF0ZWQgdG8gNDQxdDQ4MHUuCisKKzIwMDctMDYtMDEgIENseXRpZSBTaWRkYWxsICA8Y2x5dGllQHJpdmVybGFuZC5uZXQuYXU+CisKKwkqIHZpLnBvOiBVcGRhdGVkIFZpZXRuYW1lc2UgdHJhbnNsYXRpb24uCisKKzIwMDctMDUtMjQgIE1pZ3VlbCBGaWd1ZWlyZWRvICA8ZWxtaWdAZGViaWFucHQub3JnPgorCisJKiBwdC5wbzogVXBkYXRlZCB0byA5MjF0LgorCisyMDA3LTA1LTI0ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBkcGtnLnBvdDogUmVnZW5lcmF0ZWQuCisJKiAqLnBvOiBNZXJnZWQgd2l0aCBkcGtnLnBvdC4KKworMjAwNy0wNS0yNCAgSmFjb2JvIFRhcnLDrW8gIDxqdGFycmlvQGRlYmlhbi5vcmc+CisKKwkqIGdsLnBvOiBVcGRhdGVkIHRvIDkyMXQuCisKKzIwMDctMDUtMjQgIFBpYXJyZXMgQmVvYmlkZSAgPHBpQGJlb2JpZGUubmV0PgorCisJKiBldS5wbzogVXBkYXRlZCB0byA5MjF0LgorCisyMDA3LTA1LTIxICBGcsOpZMOpcmljIEJvdGhhbXkgIDxmcmVkZXJpYy5ib3RoYW15QGZyZWUuZnI+CisKKwkqIGZyLnBvOiBVcGRhdGVkIHRvIDkyMXQuCisKKzIwMDctMDUtMTUgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGRwa2cucG90OiBSZWdlbmVyYXRlZC4KKwkqICoucG86IE1lcmdlZCB3aXRoIGRwa2cucG90LiBGb3JtZXJseSBjb21wbGV0ZWQgdHJhbnNsYXRpb25zCisJYmVjb21lIDkxOXQxZjF1LgorCisyMDA3LTA1LTExICBDaHJpc3RpYW4gUGVycmllciAgPGJ1YnVsbGVAZGViaWFuLm9yZz4KKworCSogZnIucG86IFVwZGF0ZWQgdG8gOTIxdC4KKworMjAwNy0wNS0xMSAgU3ZlbiBKb2FjaGltICA8c3ZlbmpvYWNAZ214LmRlPgorCisJKiBkZS5wbzogVXBkYXRlZCB0byA5MjF0LgorCisyMDA3LTA1LTEwICBCYXJ0IENvcm5lbGlzICA8Y29iYWNvQHNrb2xlbGludXgubm8+CisKKwkqIG5sLnBvOiBVcGRhdGVkLgorCisyMDA3LTA1LTA4ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBkcGtnLnBvdDogUmVnZW5lcmF0ZWQuCisJKiAqLnBvOiBNZXJnZWQgd2l0aCBkcGtnLnBvdC4KKworMjAwNy0wNS0wOCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogTElOR1VBUzogRXN0b25pYW4gaXMgJ2V0JyBub3QgJ2VzJy4KKworMjAwNy0wNS0wNCAgSXZhciBTbW9saW4gIDxva3VsQGxpbnV4LmVlPgorCisJKiBldC5wbzogQWRkZWQgd2l0aCAzMDR0OGY2MDh1LgorCisyMDA3LTA1LTA0ICBSb2JlcnQgTHViZXJkYSAgPHJvYmVydEBkZWJpYW4ub3JnPgorCisJKiBwbC5wbzogVXBkYXRlZCB0byA5MjB0LgorCisyMDA3LTA1LTA0ICBGcsOpZMOpcmljIEJvdGhhbXkgIDxmcmVkZXJpYy5ib3RoYW15QGZyZWUuZnI+CisKKwkqIGZyLnBvOiBVcGRhdGVkIHRvIDkyMHQuCisKKzIwMDctMDQtMDcgIEVyZGFsIFJvbmFoaSAgPGVyZGFsLnJvbmFoaUBnbWFpbC5jb20+CisKKwkqIGt1LnBvOiBBZGRlZCB0cmFuc2xhdGlvbi4KKworMjAwNy0wNC0wMSAgUHJpdGkgUGF0aWwgIDxwcml0aGlzZEBnbWFpbC5jb20+CisKKwkqIG1yLnBvOiBBZGRlZCB0cmFuc2xhdGlvbi4KKworMjAwNy0wMy0yOCAgQmFydCBDb3JuZWxpcyAgPGNvYmFjb0Bza29sZWxpbnV4Lm5vPgorCisJKiBubC5wbzogVXBkYXRlZCB0cmFuc2xhdGlvbi4KKworMjAwNy0wMy0yMSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogZHBrZy5wb3Q6IFJlZ2VuZXJhdGVkLgorCSogKi5wbzogTWVyZ2VkIHdpdGggZHBrZy5wb3QuIEZvcm1lcmx5IGNvbXBsZXRlZCB0cmFuc2xhdGlvbnMKKwliZWNvbWUgOTA3dDExZjJ1LgorCisyMDA3LTAzLTE4ICBSb2JlcnQgTHViZXJkYSAgPHJvYmVydEBkZWJpYW4ub3JnPgorCisJKiBwbC5wbzogVXBkYXRlZCB0byA5MjB0LgorCisyMDA3LTAzLTE4ICBBbnRob255IFdvbmcgIDxtZUB5cHdvbmcub3JnPgorCisJKiB6aF9DTi5wbzogVXBkYXRlZCB0byA5MTh0MmYuCisKKzIwMDctMDMtMTcgIEFudGhvbnkgV29uZyAgPG1lQHlwd29uZy5vcmc+CisKKwkqIHpoX1RXLnBvOiBVcGRhdGUgZm9yIG9uZSBzdHJpbmcuCisKKzIwMDctMDEtMTEgIEVkZHkgUGV0cmnFn29yICA8ZWRkeS5wZXRyaXNvckBnbWFpbC5jb20+CisKKwkqIHJvLnBvOiBUeXBvIGNvcnJlY3Rpb24gaW4gZHBrZy1kaXZlcnQuCisKKzIwMDctMDEtMDEgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGtvLnBvOiBNYXJrIGFnYWluIDEgc3RyaW5nIGFzIGZ1enp5LCBhcyBpdCB3YXMgbm90IG1hdGNoaW5nIHRoZQorCWZvcm1hdCBjaGFyYWN0ZXJzLgorCisyMDA2LTEyLTMxICBTdW5qYWUgUGFyayAgPGRhcmVoYW5sQGdtYWlsLmNvbT4KKworCSoga28ucG86IFVwZGF0ZWQgdG8gOTIwdC4KKworMjAwNi0xMi0yNSAgQSBTIEFsYW0gIDxhcGJyYXJAZ21haWwuY29tPgorCisJKiBwYS5wbzogTmV3IFB1bmphYmkgdHJhbnNsYXRpb24gKDIwMXQgdXAgdG8gbm93KS4KKworMjAwNi0xMi0yMiAgRWRkeSBQZXRyacWfb3IgIDxlZGR5LnBldHJpc29yQGdtYWlsLmNvbT4KKworCSogcm8ucG86IHNvbWUgaW1wcm92ZW1lbnRzIGluIHdvcmRpbmcgYW5kIHdyb3RlIG15IG5hbWUgd2l0aCB0aGUgcmlnaHQKKwlkaWFjcml0aWNzIChzdGlsbCA5MjB0KS4KKworMjAwNi0xMS0wNiAgQ2x5dGllIFNpZGRhbGwgIDxjbHl0aWVAcml2ZXJsYW5kLm5ldC5hdT4KKworCSogdmkucG86IFZhcmlvdXMgZml4ZXMuCisKKzIwMDYtMTEtMTcgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGNhLnBvOiBDb3JyZWN0IHMvZ3ppcC9iemlwMi8gaW4gMiBzdHJpbmdzLiBBZGQgbWlzc2luZyAnJXMnIGluCisJZm9ybWF0IHN0cmluZ3MuCisJKiBrby5wbzogTWFyayAzIHN0cmluZ3MgYXMgZnV6enksIGFzIHRoZXkgd2VyZSBub3QgbWF0Y2hpbmcgdGhlCisJb3JpZ2luYWwgb25lcy4KKworMjAwNi0xMS0wNiAgUGFyYXMgcHJhZGhhbiAgPHByYWRoYW5wYXJhc0BnbWFpbC5jb20+CisKKwkqIG5lLnBvOiBVcGRhdGVkIHRvIDkyMHQgYnkgU2hpdmEgUHJhc2FkIFBva2hhcmVsLgorCisyMDA2LTExLTAxICBQZXRlciBLYXJsc3NvbiAgPHBldGVya0BkZWJpYW4ub3JnPgorCisJKiBzdi5wbzogU29tZSBtaW5vciB0d2Vha3MgdG8gdGhlIHRyYW5zbGF0aW9uLgorCisyMDA2LTEwLTIyICBKb3JkaSBNYWxsYWNoICA8am9yZGlAZGViaWFuLm9yZz4KKworCSogY2EucG86IFVwZGF0ZWQgdG8gOTIwdCBieSBKb3Jkw6AgUG9sby4KKworMjAwNi0xMC0yMSAgU1pFUlbDgUMgQXR0aWxhICA8c2FzQDMyMS5odT4KKworCSogaHUucG86IFVwZGF0ZWQgdG8gODE1dC4KKworMjAwNi0xMC0yMSAgQXNobyBZZWggIDxhc2hvQGRlYmlhbi5vcmcudHc+CisKKwkqIHpoX1RXLnBvOiBVcGRhdGVkIHRvIDkyMHQuCisKKzIwMDYtMTAtMjAgIFN1bmphZSBQYXJrICA8ZGFyZWhhbmxAZ21haWwuY29tPgorCisJKiBrby5wbzogVXBkYXRlZCB0byA5MjB0IChidXQgYSBmZXcgZm9ybWF0cyBhcmUgaW5jb3JyZWN0KS4KKworMjAwNi0xMC0xOCAgRWRkeSBQZXRyacWfb3IgIDxlZGR5LnBldHJpc29yQGdtYWlsLmNvbT4KKworCSogcm8ucG86IHVzZSBSb21hbmlhbiBxdW90ZXMgaW5zdGVhZCBvZiBvdGhlciB0eXBlcyBvZiBxdW90ZXMKKwlhbmQgc21hbGwgd29yZGluZyBpbXByb3ZlbWVudCAoc3RpbGwgOTIwdCkuCisKKzIwMDYtMTAtMTggIEhhbnMgRnJlZHJpayBOb3JkaGF1ZyAgPGhhbnNAbm9yZGhhdWcucHJpdi5ubz4KKworCSogbmIucG86IFVwZGF0ZWQgdG8gOTIwdC4KKworMjAwNi0xMC0xMiAgU2hpdmEgUHJhc2FkIFBva2hhcmVsICA8cG9raGFyZWxzaGl2YUBob3RtYWlsLmNvbT4KKworCSogbmUucG86IFVwZGF0ZWQgdG8gOTE5dDFmLgorCisyMDA2LTEwLTA4ICBTdmVuIEpvYWNoaW0gIDxzdmVuam9hY0BnbXguZGU+CisKKwkqIGRlLnBvOiBVcGRhdGVkIHRvIDkyMHQuCisKKzIwMDYtMTAtMDggIEFuZHJlIEx1aXMgTG9wZXMgIDxhbmRyZWxvcEBkZWJpYW4ub3JnPgorCisJKiBwdF9CUi5wbzogVXBkYXRlZCB0byA5MjB0LgorCisyMDA2LTEwLTA3ICBZdXJpIEtvemxvdiAgPGtvemxvdi55QGdtYWlsLmNvbT4KKworCSogcnUucG86IFVwZGF0ZWQgdG8gOTIwdC4KKworMjAwNi0xMC0wNiAgQ2xhdXMgSGluZHNnYXVsICA8Y2xhdXMuaGluZHNnYXVsQGdtYWlsLmNvbT4KKworCSogZGEucG86IFVwZGF0ZWQgdG8gOTIwdC4KKworMjAwNi0xMC0wNiAgSm9yZGkgTWFsbGFjaCAgPGpvcmRpQGRlYmlhbi5vcmc+CisKKwkqIGNhLnBvOiBVcGRhdGVkIHRvIDc0OXQ3NGY5N3UuCisKKzIwMDYtMTAtMDYgIENsYXVzIEhpbmRzZ2F1bCAgPGNsYXVzLmhpbmRzZ2F1bEBnbWFpbC5jb20+CisKKwkqIGRhLnBvOiBVcGRhdGVkIHRvIDkxNnQzZjF1LgorCisyMDA2LTEwLTA1ICBTWkVSVsOBQyBBdHRpbGEgIDxzYXNAMzIxLmh1PgorCisJKiBodS5wbzogVXBkYXRlZCB0byA3MzR0MTRmMTcydS4KKworMjAwNi0xMC0wNSAgS2hvZW0gU29raGVtICA8a2hvZW1zb2toZW1Aa2htZXJvcy5pbmZvPgorCisJKiBrbS5wbzogVXBkYXRlZCB0byA5MjB0LgorCisyMDA2LTA5LTI3ICBQaWFycmVzIEJlb2JpZGUgIDxwaUBiZW9iaWRlLm5ldD4KKworCSogZXUucG86IFVwZGF0ZWQgdG8gOTIwdC4KKworMjAwNi0wOS0xOSAgVGVuemluIERlbmR1cCAgPHRkZW5kdXBAZGl0Lmdvdi5idD4KKworCSogTElOR1VBUzogQ2hhbmdlIHRoZSBEem9uZ2toYSB0cmFuc2xhdGlvbiBtYWludGFpbmVyIHRvCisJbm9yYnUgPG5vcl9kZW5AaG90bWFpbC5jb20+LgorCisyMDA2LTA5LTE5ICBUZW56aW4gRGVuZHVwICA8dGRlbmR1cEBkaXQuZ292LmJ0PgorCisJKiBkei5wbzogVXBkYXRlZCB0byA5MjB0LgorCisyMDA2LTA5LTE3ICBEYXZpZGUgVml0aSAgPHppbm9zYXRAdGlzY2FsaS5pdD4KKworCSogaXQucG86IEZpeCB0eXBvLgorCisyMDA2LTA5LTE2ICBGcsOpZMOpcmljIEJvdGhhbXkgIDxmcmVkZXJpYy5ib3RoYW15QGZyZWUuZnI+CisKKwkqIGZyLnBvOiBVcGRhdGVkIHRvIDkyMHQuCisJCisyMDA2LTA5LTE0ICBKYXZpZXIgRmVybmFuZGV6LVNhbmd1aW5vICA8amZzQGRlYmlhbi5vcmc+CisKKwkqIGVzLnBvOiBVcGRhdGVkIHRvIDkyMHQuCisJCisyMDA2LTA5LTEzICBTdGVmYW5vIENhbmVwYSAgPHNjQGxpbnV4Lml0PgorCisJKiBpdC5wbzogVXBkYXRlZCB0byA5MjB0LgorCisyMDA2LTA5LTEzICBLZW5zaGkgTXV0byAgPGttdXRvQGRlYmlhbi5vcmc+CisKKwkqIGphLnBvOiBGaXggdHlwb3MuCisKKzIwMDYtMDktMTMgIFBldGVyIE1hbm4gIDxQZXRlci5NYW5uQHR1a2Uuc2s+CisKKwkqIHNrLnBvOiBVcGRhdGVkIHRvIDkyMHQuCisKKzIwMDYtMDktMTEgIEtlbnNoaSBNdXRvICA8a211dG9AZGViaWFuLm9yZz4KKworCSogamEucG86IFVwZGF0ZWQgdG8gOTIwdC4KKworMjAwNi0wOC0zMCAgTWlndWVsIEZpZ3VlaXJlZG8gIDxlbG1pZ0BkZWJpYW5wdC5vcmc+CisKKwkqIHB0LnBvOiBGaXhlZCBleHRyYSBzcGFjZS4KKworMjAwNi0wOC0yOSAgQmFydCBDb3JuZWxpcyAgPGNvYmFjb0Bza29sZWxpbnV4Lm5vPgorCQorCSogbmwucG86IFVwZGF0ZWQgdHJhbnNsYXRpb24uCisKKzIwMDYtMDgtMjkgIFN2ZW4gSm9hY2hpbSAgPHN2ZW5qb2FjQGdteC5kZT4KKworCSogTElOR1VBUzogTmV3IEdlcm1hbiB0cmFuc2xhdGlvbiBtYWludGFpbmVyLgorCisyMDA2LTA4LTI3ICBNaWd1ZWwgRmlndWVpcmVkbyAgPGVsbWlnQGRlYmlhbnB0Lm9yZz4KKworCSogcHQucG86IFVwZGF0ZWQgdG8gOTIwdC4KKworMjAwNi0wOC0xOSAgRGFuaWVsIE55bGFuZGVyICA8eWVhZ2VyQGxpZGtvcGluZy5uZXQ+CisKKwkqIHN2LnBvOiBVcGRhdGVkIHRvIDkyMHQuCisKKzIwMDYtMDgtMTggIE1pcm9zbGF2IEt1cmUgIDxrdXJlbUBkZWJpYW4uY3o+CisKKwkqIGNzLnBvOiBVcGRhdGVkIHRvIDkyMHQuCisKKzIwMDYtMDgtMTggIENseXRpZSBTaWRkYWxsICA8Y2x5dGllQHJpdmVybGFuZC5uZXQuYXU+CisKKwkqIHZpLnBvOiBVcGRhdGVkIHRvIDkyMHQuCisKKzIwMDYtMDgtMTggIEphY29ibyBUYXJyaW8gIDxqdGFycmlvQGRlYmlhbi5vcmc+CisKKwkqIGdsLnBvOiBVcGRhdGVkIHRvIDkyMHQuCisKKzIwMDYtMDgtMTggIFJvYmVydCBNaWxsYW4gIDxybWhAYXliYWJ0dS5jb20+CisKKwkqIGNhLnBvOiBGaXhlZCBzcGVsbGluZyBlcnJvcnMuCisKKzIwMDYtMDgtMTggIEVkZHkgUGV0cmnFn29yICA8ZWRkeS5wZXRyaXNvckBnbWFpbC5jb20+CisKKwkqIHJvLnBvOiBVcGRhdGVkIHRvIDkyMHQuCisKKzIwMDYtMDgtMTcgIE5pY29sYXMgRnJhbmNvaXMgIDxuaWNvbGFzLmZyYW5jb2lzQGNlbnRyYWxpZW5zLm5ldD4KKworCSogZHBrZy5wb3Q6IFJlZ2VuZXJhdGVkLgorCSogKi5wbzogTWVyZ2VkIHdpdGggZHBrZy5wb3QuIEZvcm1lcmx5IGNvbXBsZXRlIHRyYW5zbGF0aW9ucworCWJlY29tZSA5MTZ0M2YxdS4KKworMjAwNi0wOC0wNyAgU3ZlbiBKb2FjaGltICA8c3ZlbmpvYWNAZ214LmRlPgorCisJKiBkZS5wbzogRml4IHR5cG9zLgorCisyMDA2LTA4LTA1ICBTdmVuIEpvYWNoaW0gIDxzdmVuam9hY0BnbXguZGU+CisKKwkqIGRlLnBvOiBVcGRhdGVkIHRvIDkxNnQuCisKKzIwMDYtMDctMjggIEVkZHkgUGV0cmnFn29yICA8ZWRkeS5wZXRyaXNvckBnbWFpbC5jb20+CisKKwkqIHJvLnBvOiBXb3JkaW5nIGltcHJvdmVtZW50cy4KKworMjAwNi0wNy0yNiAgQ2hyaXN0aWFuIFBlcnJpZXIgIDxidWJ1bGxlQGRlYmlhbi5vcmc+CisKKwkqIGZyLnBvOiBUeXBvIGNvcnJlY3Rpb24gImNlb2VuZGFudCIuCisKKzIwMDYtMDctMTEgIE1pZ3VlbCBGaWd1ZWlyZWRvICA8ZWxtaWdAZGViaWFucHQub3JnPgorCSAgICBSdWkgQnJhbmNvICA8cnVpcGJAZGViaWFucHQub3JnPgorCisJKiBwdC5wbzogVXBkYXRlZCB0byA5MTZ0LgorCisyMDA2LTA3LTA3ICBNaWd1ZWwgRmlndWVpcmVkbyAgPGVsbWlnQGRlYmlhbnB0Lm9yZz4KKworCSogcHQucG86IFVwZGF0ZWQgdG8gODAwdC4KKworMjAwNi0wNy0wNSAgWXVyaSBLb3psb3YgIDxrb3psb3YueUBnbWFpbC5jb20+CisKKwkqIHJ1LnBvOiBVcGRhdGVkIHRvIDkxNnQuCisKKzIwMDYtMDctMDEgIEtpbmxleSBUc2hlcmluZyAgPGdhc2Vwa3VlbmRlbjJrM0Bob3RtYWlsLmNvbT4KKworCSogZHoucG86IEFkZGVkIHdpdGggOTE2dC4KKwkqIExJTkdVQVM6IE5ldyBsYW5ndWFnZTogRHpvbmdraGEuCisKKzIwMDYtMDYtMjQgIE1pcm9zbGF2IEt1cmUgIDxrdXJlbUBkZWJpYW4uY3o+CisKKwkqIGNzLnBvOiBVcGRhdGVkIHRvIDkxNnQuCisKKzIwMDYtMDYtMjQgIEtob2VtIFNva2hlbSAgPGtob2Vtc29raGVtQGtobWVyb3MuaW5mbz4KKworCSoga20ucG86IFVwZGF0ZWQgdG8gOTE2dC4KKworMjAwNi0wNi0yMyAgUGlhcnJlcyBCZW9iaWRlICA8cGlAYmVvYmlkZS5uZXQ+CisKKwkqIGV1LnBvOiBVcGRhdGVkIHRvIDkxNnQuCisKKzIwMDYtMDYtMjMgIEtob2VtIFNva2hlbSAgPGtob2Vtc29raGVtQGtobWVyb3MuaW5mbz4KKworCSogTElOR1VBUzogTmV3IGxhbmd1YWdlOiBLaG1lci4KKwkqIGttLnBvOiBOZXcgdHJhbnNsYXRpb246IDg5NHQyMmYuCisKKzIwMDYtMDYtMjMgIENsYXVzIEhpbmRzZ2F1bCAgPGNsYXVzLmhpbmRzZ2F1bEBnbWFpbC5jb20+CisKKwkqIGRhLnBvOiBVcGRhdGVkIHRvIDkxNnQuCisKKzIwMDYtMDYtMjMgIENseXRpZSBTaWRkYWxsICA8Y2x5dGllQHJpdmVybGFuZC5uZXQuYXU+CisKKwkqIHZpLnBvOiBVcGRhdGVkIHRvIDkxNnQuCisKKzIwMDYtMDYtMjIgIEZyw6lkw6lyaWMgQm90aGFteSAgPGZyZWRlcmljLmJvdGhhbXlAZnJlZS5mcj4KKworCSogZnIucG86IFVwZGF0ZWQgdG8gOTE2dC4KKworMjAwNi0wNi0yMiAgRWRkeSBQZXRyacWfb3IgIDxlZGR5LnBldHJpc29yQGdtYWlsLmNvbT4KKworCSogcm8ucG86IFVwZGF0ZWQgdG8gOTE2dC4KKworMjAwNi0wNi0yMiAgU1pFUlbDgUMgQXR0aWxhICA8c2FzQDMyMS5odT4KKworCSogaHUucG86IFVwZGF0ZWQgdG8gNzE2dC4KKworMjAwNi0wNi0yMiAgQmFydCBDb3JuZWxpcyAgPGNvYmFjb0Bza29sZWxpbnV4Lm5vPgorCisJKiBubC5wbzogVXBkYXRlZCB0cmFuc2xhdGlvbi4KKworMjAwNi0wNi0yMSAgSmFjb2JvIFRhcnJpbyAgPGp0YXJyaW9AZGViaWFuLm9yZz4KKworCSogZ2wucG86IFVwZGF0ZWQgdG8gOTE2dC4KKworMjAwNi0wNi0yMSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogZHBrZy5wb3Q6IFJlZ2VuZXJhdGVkLgorCSogKi5wbzogTWVyZ2VkIHdpdGggZHBrZy5wb3QuIEZvcm1lcmx5IGNvbXBsZXRlIHRyYW5zbGF0aW9ucworCWJlY29tZSA4OTV0MjFmLgorCisyMDA2LTA2LTE5ICBSb2JlcnQgTHViZXJkYSAgPHJvYmVydEBkZWJpYW4ub3JnPgorCisJKiBwbC5wbzogVXBkYXRlZCB0byA5MzZ0LgorCisyMDA2LTA2LTE5ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBjYS5wbzogVXBkYXRlZCB0byA3Mjh0NzRmMTM2dS4KKworMjAwNi0wNi0xOCAgUm9iZXJ0IEx1YmVyZGEgIDxyb2JlcnRAZGViaWFuLm9yZz4KKworCSogcGwucG86IFVwZGF0ZWQgdG8gOTA2dDExZjIxdS4KKworMjAwNi0wNi0xNyAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogcGwucG86IEFkZCBhIG1pc3NpbmcgJyVzJyBpbiBhIHN0cmluZy4KKworMjAwNi0wNi0xNyAgQ2hyaXN0aWFuIFBlcnJpZXIgIDxidWJ1bGxlQGRlYmlhbi5vcmc+CisKKwkqICoucG86IFByZXZlbnRpdmUgdW5mdXp6eSBmb3IgImFsdGVybmF0aXZzZSIgYmVpbmcgY29ycmVjdGVkCisJaW4gdXBkYXRlLWFsdGVybmF0aXZlcworCisyMDA2LTA2LTE3ICBFZGR5IFBldHJpxZ9vciAgPGVkZHkucGV0cmlzb3JAZ21haWwuY29tPgorCisJKiByby5wbzogVXBkYXRlZCB0byA5Mzh0OworCUEgY291cGxlIHR5cG8gZml4ZXM7CisJQW50aWNpcGF0ZWQgYW4gdXBkYXRlIG9uIHRoZSBoZWxwIGZvciB0aGUgYWx0ZXJuYXRpdmVzOworCisyMDA2LTA2LTE2ICBSb2JlcnQgTHViZXJkYSAgPHJvYmVydEBkZWJpYW4ub3JnPgorCisJKiBwbC5wbzogVXBkYXRlZCB0byA4NDh0MThmNDJ1LgorCisyMDA2LTA2LTE2ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBMSU5HVUFTOiBBZGQgbmUuCisKKzIwMDYtMDYtMTYgIFBhcmFzIFByYWRoYW4gIDxwcmFkaGFucGFyYXNAZ21haWwuY29tPgorCisJKiBuZS5wbzogTmV3IGZpbGUgNzM3dDgwZjEyMXUuCisKKzIwMDYtMDYtMTYgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIHN2LnBvOiBBZGQgYSBtaXNzaW5nICclcycgaW4gYSBzdHJpbmcuCisJKiByby5wbzogQWRkIGEgbWlzc2luZyAncycgaW4gYSBmb3JtYXQgc3RyaW5nLgorCisyMDA2LTA2LTE2ICBQaWFycmVzIEJlb2JpZGUgIDxwaUBiZW9iaWRlLm5ldD4KKworCSogZXUucG86IFVwZGF0ZWQgdG8gOTM3dDF1LgorCisyMDA2LTA2LTA5ICBQZXRlciBLYXJsc3NvbiAgPHBldGVya0BkZWJpYW4ub3JnPgorCisJKiBzdi5wbzogVXBkYXRlZCB0byA5Mzl0LgorCisyMDA2LTA2LTA4ICBDaHJpc3RpYW4gUGVycmllciAgPGJ1YnVsbGVAZGViaWFuLm9yZz4KKworCSogZnIucG86IFVwZGF0ZWQgdG8gOTM4dCAodGhhbmtzIEZyZWQgQm90aGFteSkuCisKKzIwMDYtMDYtMDYgIEphY29ibyBUYXJyaW8gIDxqdGFycmlvQGRlYmlhbi5vcmc+CisKKwkqIGdsLnBvOiBVcGRhdGVkIHRvIDkzOHQuCisKKzIwMDYtMDYtMDUgIEVkZHkgUGV0cmnFn29yICA8ZWRkeS5wZXRyaXNvckBnbWFpbC5jb20+CisKKwkqIHJvLnBvOiBOb3cgY29uc2lzdGVudCB3aXRoIGFwdGl0dWRlIHRyYW5zbGF0aW9uOworCVVwZGF0ZWQgdG8gOTM2dDJ1LgorCisyMDA2LTA2LTAyICBNaXJvc2xhdiBLdXJlICA8a3VyZW1AdXBjYXNlLmluZi51cG9sLmN6PgorCisJKiBjcy5wbzogVXBkYXRlZCB0byA5Mzh0LgorCisyMDA2LTA2LTAyICBDbHl0aWUgU2lkZGFsbCAgPGNseXRpZUByaXZlcmxhbmQubmV0LmF1PgorCisJKiB2aS5wbzogVXBkYXRlZCBWaWV0bmFtZXNlIHRyYW5zbGF0aW9uLgorCisyMDA2LTA1LTAyICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBkcGtnLnBvdDogUmVnZW5lcmF0ZWQuCisJKiAqLnBvOiBNZXJnZWQgd2l0aCBkcGtnLnBvdC4gRm9ybWVybHkgY29tcGxldGUgdHJhbnNsYXRpb25zCisJYmVjb21lIDkzN3QxZi4KKworMjAwNi0wNS0zMSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogZHBrZy5wb3Q6IFJlZ2VuZXJhdGVkLgorCSogKi5wbzogTWVyZ2VkIHdpdGggZHBrZy5wb3QuIEZvcm1lcmx5IGNvbXBsZXRlIHRyYW5zbGF0aW9ucworCWJlY29tZSA5Mzd0MWYuCisKKzIwMDYtMDUtMzEgIFBpYXJyZXMgQmVvYmlkZSAgPHBpQGJlb2JpZGUubmV0PgorCisJKiBldS5wbzogVXBkYXRlZCB0byA3NDB0NzdmMTIxdS4KKworMjAwNi0wNS0zMCAgUGV0ZXIgTWFubiAgPFBldGVyLk1hbm5AdHVrZS5zaz4KKworCSogc2sucG86IFVwZGF0ZWQgdG8gODQ4dDBmOTF1LgorCisyMDA2LTA1LTI5ICBNaXJvc2xhdiBLdXJlICA8a3VyZW1AdXBjYXNlLmluZi51cG9sLmN6PgorCisJKiBjcy5wbzogVXBkYXRlZCB0byA5Mzl0LgorCisyMDA2LTA1LTI3ICBTWkVSVsOBQyBBdHRpbGEgIDxzYXNAMzIxLmh1PgorCisJKiBodS5wbzogVXBkYXRlZCB0byA2Njl0LgorCisyMDA2LTA1LTI3ICBKYWNvYm8gVGFycmlvICA8anRhcnJpb0BkZWJpYW4ub3JnPgorCisJKiBnbC5wbzogVXBkYXRlZCB0byA5Mzl0LgorCisyMDA2LTA1LTI0ICBDbHl0aWUgU2lkZGFsbCAgPGNseXRpZUByaXZlcmxhbmQubmV0LmF1PgorCisJKiB2aS5wbzogVXBkYXRlZCBWaWV0bmFtZXNlIHRyYW5zbGF0aW9uLgorCisyMDA2LTA1LTIzICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBkcGtnLnBvdDogUmVnZW5lcmF0ZWQuCisJKiAqLnBvOiBNZXJnZWQgd2l0aCBkcGtnLnBvdC4gRm9ybWVybHkgY29tcGxldGUgdHJhbnNsYXRpb25zCisJYmVjb21lIDc0MnQ3NmYxMjF1LgorCisyMDA2LTA1LTE1ICBFZGR5IFBldHJpxZ9vciAgPGVkZHkucGV0cmlzb3JAZ21haWwuY29tPgorCisJKiByby5wbzogRml4ZWQgc29tZSBjb25zaXRlbmN5IGlzc3VlczsKKwkiY29uZmZpbGVzIiBpcyBubyBsb25nZXIgdHJhbnNsYXRlZDsKKwlkb3VibGVjaGVja2VkIGZvciBleGlzdGVuY2Ugb2Ygd3JpdGluZ3Mgd2l0aG91dCBkaWFjcml0aWNzOworCXRyYW5zbGF0aW9uIHN0aWxsIGF0IDc0MnQuCisKKzIwMDYtMDUtMTUgIFBldGVyIEthcmxzc29uICA8cGV0ZXJrQGRlYmlhbi5vcmc+CisKKwkqIHN2LnBvOiBVcGRhdGVkIHRvIDc0MnQuCisKKzIwMDYtMDUtMTMgIEtvdiBUY2hhaSAgPHRjaGFpa292QHNqdHUuZWR1LmNuPgorCisJKiB6aF9DTi5wbzogVXBkYXRlZCB0byA3Mzh0NGYuCisKKzIwMDYtMDUtMDggIE1pcm9zbGF2IEt1cmUgIDxrdXJlbUBkZWJpYW4uY3o+CisKKwkqIGNzLnBvOiBVcGRhdGVkIHRvIDc0MnQuCisKKzIwMDYtMDUtMDggIFl1cmkgS296bG92ICA8a296bG92LnlAZ21haWwuY29tPgorCisJKiBydS5wbzogVXBkYXRlZCB0byA3NDJ0LgorCisyMDA2LTA1LTA3ICBNaWd1ZWwgRmlndWVpcmVkbyAgPGVsbWlnQGRlYmlhbnB0Lm9yZz4KKworCSogcHQucG86IFVwZGF0ZWQgdG8gNzQydC4KKworMjAwNi0wNS0wNiAgRWRkeSBQZXRyacWfb3IgIDxlZGR5LnBldHJpc29yQGdtYWlsLmNvbT4KKworCSogcm8ucG86IFVuaWZpZWQgcXVvdGF0aW9uIG1hcmtzOyB1c2luZyBSb21hbmlhbiBxdW90ZXMKKwlldmVuIG1vcmUgdGhhbiBiZWZvcmU7IHJlbW92ZWQgKGhvcGVmdWx5KSB0aGUgcmVzdCBvZgorCWZpcnN0IHBlcnNvbiBtZXNzYWdlcyAobm93IGRwa2cgbWVzc2FnZSBzaG91bGQgYmUKKwlpbXBlcnNvbmFsKS4gSW1wcm92ZWQgY29uc2lzdGVuY3kgb2YgdHJhbnNsYXRpb24gb2YKKwkiZmFpbGVkIi8idW5hYmxlIi8iY291bGRuJ3QiOyBtaW5vciBzcGVsbGluZyBjb3JyZWN0aW9ucy4KKwlVcGRhdGVkIHRvIDc0MnQuCisKKzIwMDYtMDUtMDUgIENseXRpZSBTaWRkYWxsICA8Y2x5dGllQHJpdmVybGFuZC5uZXQuYXU+CisKKwkqIHZpLnBvOiBVcGRhdGVkIFZpZXRuYW1lc2UgdHJhbnNsYXRpb24uCisKKzIwMDYtMDUtMDQgIFNaRVJWw4FDIEF0dGlsYSAgPHNhc0AzMjEuaHU+CisKKwkqIGh1LnBvOiBVcGRhdGVkIHRvIDU3OHQuCisKKzIwMDYtMDUtMDQgIFJvYmVydCBMdWJlcmRhICA8cm9iZXJ0QGRlYmlhbi5vcmc+CisKKwkqIHBsLnBvOiBVcGRhdGVkIHRvIDc0MnQuCisJCisyMDA2LTA1LTA0ICBCYXJ0IENvcm5lbGlzICA8Y29iYWNvQGxpbnV4LmJlPgorCisJKiBubC5wbzogVXBkYXRlZCB0cmFuc2xhdGlvbi4KKworMjAwNi0wNS0wNCAgQ2hyaXN0aWFuIFBlcnJpZXIgIDxidWJ1bGxlQGRlYmlhbi5vcmc+CisKKwkqIGZyLnBvOiBGaXJzdCByZXZpZXcgcmVjZWl2ZWQuCisKKzIwMDYtMDUtMDMgIENocmlzdGlhbiBQZXJyaWVyICA8YnVidWxsZUBkZWJpYW4ub3JnPgorCisJKiBmci5wbzogVXBkYXRlZCB0byA3NDJ0LiBQcm9vZnJlYWRpbmcgc3RpbGwgcGVuZGluZy4KKworMjAwNi0wNS0wMyAgSmFjb2JvIFRhcnJpbyAgPGp0YXJyaW9AZGViaWFuLm9yZz4KKworCSogZ2wucG86IFVwZGF0ZWQgdG8gNzQydC4KKworMjAwNi0wNS0wMyAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogZHBrZy5wb3Q6IFJlZ2VuZXJhdGVkLgorCSogKi5wbzogTWVyZ2VkIHdpdGggZHBrZy5wb3QuIEZvcm1lcmx5IGNvbXBsZXRlIHRyYW5zbGF0aW9ucworCWJlY29tZSA3MDN0MjJmMTd1LgorCisyMDA2LTA0LTI5ICBLZW5zaGkgTXV0byAgPGttdXRvQGRlYmlhbi5vcmc+CisKKwkqIGphLnBvOiBVcGRhdGVkIHRvIDczMXQuCisKKzIwMDYtMDQtMjEgIFBpYXJyZXMgQmVvYmlkZSAgPHBpQGJlb2JpZGUubmV0PgorCisJKiBldS5wbzogVXBkYXRlZCB0byA3MzF0LgorCisyMDA2LTA0LTIxICBKYXZpZXIgRmVybsOhbmRlei1TYW5ndWlubyBQZcOxYSAgPGpmc0Bjb21wdXRlci5vcmc+CisKKwkqIGVzLnBvOiBVcGRhdGVkIHRvIDcyOXQuCisKKzIwMDYtMDQtMTggIENseXRpZSBTaWRkYWxsICA8Y2x5dGllQHJpdmVybGFuZC5uZXQuYXU+CisKKwkqIHZpLnBvOiBVcGRhdGVkIHRvIDczMXQuCisKKzIwMDYtMDQtMTcgIE1pcm9zbGF2IEt1cmUgIDxrdXJlbUBkZWJpYW4uY3o+CisKKwkqIGNzLnBvOiBVcGRhdGVkIHRvIDczMXQuCisKKzIwMDYtMDQtMTYgIENsYXVzIEhpbmRzZ2F1bCAgPGNsYXVzLmhpbmRzZ2F1bEBnbWFpbC5jb20+CisKKwkqIGRhLnBvOiBVcGRhdGVkIHRvIDczMXQuCisKKzIwMDYtMDQtMTMgIEJhcnQgQ29ybmVsaXMgIDxjb2JhY29AbGludXguYmU+CisKKwkqIG5sLnBvOiBVcGRhdGVkIHRvIDczMXQuCisKKzIwMDYtMDQtMTMgIFBldGVyIEthcmxzc29uICA8cGV0ZXJrQGRlYmlhbi5vcmc+CisKKwkqIHN2LnBvOiBVcGRhdGVkIHRvIDczMHQxZi4KKworMjAwNi0wNC0xMSAgRnJhbmsgTGljaHRlbmhlbGQgIDxkanBpZ0BkZWJpYW4ub3JnPgorCisJKiBwdC5wbzogTWFyayBhIGJyb2tlbiBzdHJpbmcgYXMgZnV6enkgYW5kIGdpdmUKKwl0aGUgdHJhbnNsYXRvciBhIGhpbnQgd2hlcmUgaXQgaXMgYnJva2VuLgorCisyMDA2LTA0LTExICBFZGR5IFBldHJpxZ9vciAgPGVkZHkucGV0cmlzb3JAZ21haWwuY29tPgorCisJKiByby5wbzogVW5pZmllZCBxdW90YXRpb24gbWFya3M7IHVzaW5nIFJvbWFuaWFuIHF1b3Rlcy4KKwlVcGRhdGVkIHRvIDczMXQuCisKKzIwMDYtMDQtMTAgIE1pZ3VlbCBGaWd1ZWlyZWRvICA8ZWxtaWdAZGViaWFucHQub3JnPgorCisJKiBwdC5wbzogVXBkYXRlZCB0byA3MzF0LgorCisyMDA2LTA0LTEwICBDaHJpc3RpYW4gUGVycmllciAgPGJ1YnVsbGVAZGViaWFuLm9yZz4KKworCSogZnIucG86IFVwZGF0ZWQgdG8gNzMxdC4KKworMjAwNi0wNC0xMCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogZHBrZy5wb3Q6IFJlZ2VuZXJhdGVkLgorCSogKi5wbzogTWVyZ2VkIHdpdGggZHBrZy5wb3QuIEZvcm1lcmx5IGNvbXBsZXRlIHRyYW5zbGF0aW9ucworCWJlY29tZSA3Mjd0NGYuCisKKzIwMDYtMDQtMDQgIEJhcnQgQ29ybmVsaXMgIDxjb2JhY29AbGludXguYmU+CisKKwkqIG5sLnBvOiBGaXhlZCBzbWFsbCBlcnJvciByZXBvcnRlZCBiaWogTWFyayB2YW4gZGVuIEJvcnJlLgorCisyMDA2LTAzLTIyICBSb2JlcnQgTHViZXJkYSAgPHJvYmVydEBkZWJpYW4ub3JnPgorCisJKiBwbC5wbzogVXBkYXRlZCB0byA3Mjl0LgorCisyMDA2LTAzLTIxICBDbGF1cyBIaW5kc2dhdWwgIDxjbGF1cy5oaW5kc2dhdWxAZ21haWwuY29tPgorCisJKiBkYS5wbzogVXBkYXRlZCB0byA3Mjl0LgorCisyMDA2LTAzLTIxICBTb3JpbiBCYXRhcml1YyAgPHNvcmluQGJvbmJvbi5uZXQ+CisKKwkqIHJvLnBvOiBVcGRhdGVkIHRvIDcyOXQuCisKKzIwMDYtMDMtMTkgIFl1cmkgS296bG92ICA8a296bG92LnlAZ21haWwuY29tPgorCisJKiBydS5wbzogVXBkYXRlZCB0byA3Mjl0LgorCisyMDA2LTAzLTA3ICBTemVydsOhYyBBdHRpbGEgIDxzYXNAMzIxLmh1PgorCisJKiBodS5wbzogVXBkYXRlZCB0byA0Njh0LgorCisyMDA2LTAzLTA3ICBMZWxlIEdhaWZheCAgPGxlbGVAbmF1dGlsdXMuaG9tZWlwLm5ldD4KKworCSogaXQucG86IFVwZGF0ZWQgdG8gNzI5dC4KKworMjAwNi0wMy0wNSAgTWlyb3NsYXYgS3VyZSAgPGt1cmVtQGRlYmlhbi5jej4KKworCSogY3MucG86IFVwZGF0ZWQgdG8gMjc5dC4KKworMjAwNi0wMi0yMSAgU3plcnbDoWMgQXR0aWxhICA8c2FzQDMyMS5odT4KKworCSogaHUucG86IDIgc21hbGwgYnVnZml4ZXMgJiBsaXR0bGUgaW1wcm92ZW1lbnRzLgorCisyMDA2LTAyLTIxICBNaWd1ZWwgRmlndWVpcmVkbyAgPGVsbWlnQGRlYmlhbnB0Lm9yZz4KKworCSogcHQucG86IFVwZGF0ZWQgdG8gNzIzdC4KKworMjAwNi0wMi0xOSAgQmFydCBDb3JuZWxpcyAgPGNvYmFjb0BsaW51eC5iZT4KKworCSogbmwucG86IFVwZGF0ZWQgdG8gNzI5dC4KKworMjAwNi0wMi0xOSAgTWlndWVsIEZpZ3VlaXJlZG8gIDxlbG1pZ0BkZWJpYW5wdC5vcmc+CisKKwkqIHB0LnBvOiBVcGRhdGVkIHRvIDcyMHQuCisKKzIwMDYtMDItMTkgIENhcmxvcyBaLkYuIExpdSAgPGNhcmxvc2xpdUB1c2Vycy5zb3VyY2Vmb3JnZS5uZXQ+CisKKwkqIHpoX0NOLnBvOiBVcGRhdGVkIHRvIDcyOXQuIChmaW5pc2hlZCkKKworMjAwNi0wMi0xNyAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogUE9URklMRVMuaW46IFJlbW92ZSBkc2VsZWN0IHNvdXJjZSBmaWxlcy4KKwkqIGRwa2cucG90OiBSZWdlbmVyYXRlLgorCSogKi5wbzogTWVyZ2VkIHdpdGggZHBrZy5wb3QuIFJlbW92ZWQgb2Jzb2xldGUgc3RyaW5ncy4KKworMjAwNi0wMi0xNyAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogZHBrZy5wb3Q6IFJlZ2VuZXJhdGVkLgorCSogKi5wbzogTWVyZ2VkIHdpdGggZHBrZy5wb3QuIEFkZCBtaXNzaW5nIGNsb3NpbmcgcGFyZW50aGVzaXMgdG8KKwlub24tZnV6enkgc3RyaW5ncy4KKworMjAwNi0wMi0xNSAgRnJhbmsgTGljaHRlbmhlbGQgIDxkanBpZ0BkZWJpYW4ub3JnPgorCisJKiBMSU5HVUFTOiBBZGQgaHUuCisKKwkqIHB0LnBvOiBGaXhlZCBzb21lIGVycm9ycyB0aGF0IGNhdXNlZCBidWlsZAorCWZhaWx1cmVzLgorCisyMDA2LTAyLTE0ICBNaWd1ZWwgRmlndWVpcmVkbyAgPGVsbWlnQGRlYmlhbnB0Lm9yZz4KKworCSogcHQucG86IFVwZGF0ZWQgdG8gOTc5dC4KKworMjAwNi0wMi0xNCAgU3plcnbDoWMgQXR0aWxhICA8c2FzQDMyMS5odT4KKworCSogaHUucG86IEFkZGVkLgorCisyMDA2LTAyLTEzICBEYW5pZWwgTnlsYW5kZXIgIDxpbmZvQGRhbmllbG55bGFuZGVyLnNlPgorCisJKiBzdi5wbzogVXBkYXRlZCB0byAxMDExdC4KKworMjAwNi0wMi0xMyAgSmFjb2JvIFRhcnJpbyAgPGp0YXJyaW9AdHJhc25vLm5ldD4KKworCSogZ2wucG86IFVwZGF0ZWQgdG8gMTAxMXQuCisKKzIwMDYtMDItMTMgIEFuZHJlIEx1aXMgTG9wZXMgIDxhbmRyZWxvcEBkZWJpYW4ub3JnPgorCisJKiBwdF9CUi5wbzogVXBkYXRlZCB0byAxMDExdC4KKworMjAwNi0wMi0xMyAgSm9yZGkgTWFsbGFjaCAgPGpvcmRpQGRlYmlhbi5vcmc+CisKKwkqIGNhLnBvOiBVcGRhdGVkIHRvIDEwMTF0LgorCisyMDA2LTAyLTExICBDaHJpc3RpYW4gUGVycmllciAgPGJ1YnVsbGVAZGViaWFuLm9yZz4KKworCSogZnIucG86IFVwZGF0ZWQgdG8gMTAxMXQuCisKKzIwMDYtMDItMTEgIFBldGVyIE1hbm4gIDxQZXRlci5NYW5uQHR1a2Uuc2s+CisKKwkqIHNrLnBvOiBVcGRhdGVkIHRvIDEwMTF0LgorCisyMDA2LTAyLTExICBDbHl0aWUgU2lkZGFsbCAgPGNseXRpZUByaXZlcmxhbmQubmV0LmF1PgorCisJKiB2aS5wbzogVXBkYXRlZCB0byAxMDExdC4KKworMjAwNi0wMi0xMSAgRnJhbmsgTGljaHRlbmhlbGQgIDxkanBpZ0BkZWJpYW4ub3JnPgorCisJKiAqLnBvOiBNZXJnZSB3aXRoIGRwa2cucG90LgorCisyMDA2LTAyLTA5ICBQZXRlciBNYW5uICA8UGV0ZXIuTWFubkB0dWtlLnNrPgorCisJKiBzay5wbzogVXBkYXRlZCB0byAxMDAydC4KKworMjAwNi0wMi0wOCAgUGlhcnJlcyBCZW9iaWRlIEVnYW5hICA8cGlAYmVvYmlkZS5uZXQ+CisKKwkqIGV1LnBvOiBVcGRhdGVkIHRvIDEwMDJ0LgorCisyMDA2LTAyLTA3ICBKYWNvYm8gVGFycmlvICA8anRhcnJpb0B0cmFzbm8ubmV0PgorCisJKiBnbC5wbzogVXBkYXRlZCB0byAxMDAydC4KKworMjAwNi0wMi0wNyAgQ2hyaXN0aWFuIFBlcnJpZXIgIDxidWJ1bGxlQGRlYmlhbi5vcmc+CisKKwkqIExJTkdVQVM6IEFkZGVkIFZpZXRuYW1lc2UuCisJKiB2aS5wbzogTWVyZ2Ugd2l0aCBkcGtnLnBvdC4KKworMjAwNi0wMi0wNiAgQ2hyaXN0aWFuIFBlcnJpZXIgIDxidWJ1bGxlQGRlYmlhbi5vcmc+CisKKwkqIGZyLnBvOiBVcGRhdGVkIHRvIDEwMDJ0LgorCisyMDA2LTAyLTA2ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiAqLnBvOiBNZXJnZWQgd2l0aCBkcGtnLnBvdCBhZ2Fpbi4KKworMjAwNi0wMi0wNiAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogKi5wbzogTWVyZ2VkIHdpdGggZHBrZy5wb3QuCisKKzIwMDYtMDItMDYgIEpvcmRpIE1hbGxhY2ggIDxqb3JkaUBkZWJpYW4ub3JnPgorCisJKiBjYS5wbzogVXBkYXRlZCB0byAxMDAwdC4KKworMjAwNi0wMS0yNCAgS2Vuc2hpIE11dG8gIDxrbXV0b0BkZWJpYW4ub3JnPgorCisJKiBqYS5wbzogVXBkYXRlZCB0byAxMDAwdC4KKworMjAwNi0wMS0yMiAgQ2x5dGllIFNpZGRhbGwgIDxjbHl0aWVAcml2ZXJsYW5kLm5ldC5hdT4KKworCSogdmkucG86IFVwZGF0ZWQgdG8gMTAwMHQuCisKKzIwMDYtMDEtMjEgIFl1cmkgS296bG92ICA8a296bG92LnlAZ21haWwuY29tPgorCisJKiBydS5wbzogVXBkYXRlZCB0byAxMDAwdC4gQ2xvc2VzOiAjMzQ5MTUxCisKKzIwMDYtMDEtMTggIENsYXVzIEhpbmRzZ2F1bCAgPGNsYXVzX2hAaW1hZ2UuZGs+CisKKwkqIGRhLnBvOiBVcGRhdGVkIHRvIDEwMDB0LiBDbG9zZXM6ICMzNDg1NzUKKworMjAwNi0wMS0xMiAgSmFjb2JvIFRhcnJpbyAgPGp0YXJyaW9AdHJhc25vLm5ldD4KKworCSogZ2wucG86IENvbXBsZXRlZCB0byAxMDAwdC4gQ2xvc2VzOiAjMzM4OTA0CisKKzIwMDYtMDEtMDkgIFN0ZWZhbm8gTWVsY2hpb3IgIDxzdGVmYW5vLm1lbGNoaW9yQG9wZW5sYWJzLml0PgorCisJKiBpdC5wbzogTWlub3IgY29ycmVjdGlvbi4KKworMjAwNS0xMi0zMSAgTWlyb3NsYXYgS3VyZSAgPGt1cmVtQHVwY2FzZS5pbmYudXBvbC5jej4KKworCSogY3MucG86IFVwZGF0ZWQgdG8gMTAwMHQuCisKKzIwMDUtMTItMjUgIFN0ZWZhbm8gQ2FuZXBhICA8c2NAbGludXguaXQ+CisKKwkqIGl0LnBvOiBVcGRhdGVkIHRvIDEwMDB0LgorCisyMDA1LTEyLTI1ICBFbW1hbnVlbCBHYWxhdG91bGFzCisKKwkqIGVsLnBvOiBVcGRhdGVkIHRvIDEwMDB0LgorCisyMDA1LTEyLTIzICBQYXJsaW4gSW1hbnVlbCAgPHB0QHNhbWlwLW9ubGluZS5jb20+CisKKwkqIGlkLnBvOiBVcGRhdGVkIHRvIDEwMDB0LgorCisyMDA1LTEyLTIzICBDbHl0aWUgU2lkZGFsbCAgPGNseXRpZUByaXZlcmxhbmQubmV0LmF1PgorCisJKiB2aS5wbzogVXBkYXRlZCB0byA5OTJ0OGYuCisKKzIwMDUtMTItMjIgIEVkZHkgUGV0cmlzb3IgIDxlZGR5LnBldHJpc29yQGdtYWlsLmNvbT4KKworCSogcm8ucG86IFVwZGF0ZWQgdG8gOTk4dDJmLgorCisyMDA1LTEyLTIyICBKYWNvYm8gVGFycmlvICA8anRhcnJpb0B0cmFzbm8ubmV0PgorCisJKiBnbC5wbzogVXBkYXRlZCB0byA3MTh0NzlmMjAzdSAobm8gdHJhbnNsYXRpb24gZm9yIGRzZWxlY3QpLgorCisyMDA1LTEyLTIyICBLb3YgVGNoYWkgIDx0Y2hhaWtvdkBzanR1LmVkdS5jbj4KKworCSogemhfQ04ucG86IFVwZGF0ZWQgdG8gOTk5dDFmLgorCisyMDA1LTEyLTIyICBlcmljIHBhcmVqYSAgPHhlbm9zQHVwbS5lZHUucGg+CisKKwkqIHRsLnBvOiBVcGRhdGVkIHRvIDEwMDB0LgorCisyMDA1LTEyLTIyICBwaSAgPHBpQGJlb2JpZGUubmV0PgorCisJKiBldS5wbzogVXBkYXRlZCB0byAxMDAwdC4KKworMjAwNS0xMi0yMiAgSm9yZGkgTWFsbGFjaCAgPGpvcmRpQGRlYmlhbi5vcmc+CisKKwkqIGNhLnBvOiBVcGRhdGVkIHRvIDk5OHQyZi4KKworMjAwNS0xMi0yMiAgU3RlZmFubyBDYW5lcGEgIDxzY0BsaW51eC5pdD4KKworCSogaXQucG86IFVwZGF0ZWQgdG8gOTk4dDJmLgorCisyMDA1LTEyLTIyICBNaWNoYWVsIFBpZWZlbCAgPHBpZWZlbEBkZWJpYW4ub3JnPgorCisJKiBkZS5wbzogVXBkYXRlZCB0byA5OTh0MmYuCisKKzIwMDUtMTItMjIgIEJhcnQgQ29ybmVsaXMgICA8Y29iYWNvQGxpbnV4LmJlPgorCisJKiBubC5wbzogVXBkYXRlZCB0byA5OTh0MmYuCisKKzIwMDUtMTItMjIgIENsYXVzIEhpbmRzZ2F1bCAgPGNsYXVzX2hAaW1hZ2UuZGs+CisKKwkqIGRhLnBvOiBVcGRhdGVkIHRvIDEwMDB0LgorCisyMDA1LTEyLTIyICBKYXZpZXIgRmVybsOhbmRlei1TYW5ndWlubyBQZcOxYSAgPGpmc0Bjb21wdXRlci5vcmc+CisKKwkqIGVzLnBvOiBVcGRhdGVkIHRvIDk5OHQyZi4KKworMjAwNS0xMi0yMiAgSMOldmFyZCBLb3Jzdm9sbCAgPGtvcnN2b2xsQHNrdWxlbGludXgubm8+CisKKwkqIG5uLnBvOiBVcGRhdGVkIHRvIDk5OXQxZi4KKworMjAwNS0xMi0yMiAgTWlndWVsIEZpZ3VlaXJlZG8gIDxlbG1pZ0BkZWJpYW5wdC5vcmc+CisKKwkqIHB0LnBvOiBVcGRhdGVkIHRvIDk3NHQyNGYydS4KKworMjAwNS0xMi0yMiAgUGV0ZXIgS2FybHNzb24gIDxwZXRlcmtAZGViaWFuLm9yZz4KKworCSogc3YucG86IFVwZGF0ZWQgdG8gMTAwMHQuCisKKzIwMDUtMTAtMjIgIENocmlzdGlhbiBQZXJyaWVyICA8YnVidWxsZUBkZWJpYW4ub3JnPgorCisJKiAqLnBvOiBNZXJnZWQgd2l0aCBkcGtnLnBvdC4KKworMjAwNS0xMC0yMiAgWXVyaSBLb3psb3YgIDxrb3psb3YueUBnbWFpbC5jb20+CisKKwkqIHJ1LnBvOiBDb21wbGV0ZWQuCisKKzIwMDUtMTAtMjIgIENocmlzdGlhbiBQZXJyaWVyICA8YnVidWxsZUBkZWJpYW4ub3JnPgorCisJKiBmci5wbzogQ29tcGxldGVkLgorCisyMDA1LTEwLTIyICBDaHJpc3RpYW4gUGVycmllciAgPGJ1YnVsbGVAZGViaWFuLm9yZz4KKworCSogZHBrZy5wb3Q6IFJlLWdlbmVyYXRlZCBmcm9tIHNvdXJjZXMuCisKKzIwMDUtMTAtMTEgIENocmlzdGlhbiBQZXJyaWVyICA8YnVidWxsZUBkZWJpYW4ub3JnPgorCisJKiBmci5wbzogQ29tcGxldGVkLgorCisyMDA1LTEwLTExICBDaHJpc3RpYW4gUGVycmllciAgPGJ1YnVsbGVAZGViaWFuLm9yZz4KKworCSogKi5wbzogVXBkYXRlZCBmcm9tIHNvdXJjZXMuCisKKzIwMDUtMDktMDEgIEphbWVzIFRyb3VwICA8amFtZXNAbm9jcmV3Lm9yZz4KKworCSogcHRfQlIucG86IE9idmlvdXMgZXJyb3IgY29ycmVjdGVkIHRoYW5rcyB0byBKYW1lcyBkZWVwIGtub3dsZWRnZQorCW9mIFBvcnR1Z3Vlc2UuCisKKzIwMDUtMDktMDEgIENocmlzdGlhbiBQZXJyaWVyICA8YnVidWxsZUBkZWJpYW4ub3JnPgorCisJKiAqLnBvOiBQcm9qZWN0LUlkLVZlcnNpb24gZm9yY2VkIHRvICJkcGtnIDEuMTMiLgorCisyMDA1LTA4LTI2ICBBbmRyZSBMdWlzIExvcGVzICA8YW5kcmVsb3BAZGViaWFuLm9yZz4KKworCSogcHRfQlIucG86IFVwZGF0ZWQgKDk5OXQpLgorCisyMDA1LTA4LTIyICBLZW5zaGkgTXV0byAgPGttdXRvQGRlYmlhbi5vcmc+CisKKwkqIGphLnBvOiBVcGRhdGVkICg5OTl0KS4KKworMjAwNS0wOC0yMiAgWXVyaSBLb3psb3YgIDx5dXJheUBpZC5ydT4KKworCSogcnUucG86IFVwZGF0ZWQgKDk5OXQpLgorCisyMDA1LTA4LTIyICBNaXJvc2xhdiBLdXJlICA8a3VyZW1AdXBjYXNlLmluZi51cG9sLmN6PgorCisJKiBjcy5wbzogVXBkYXRlZCAoOTk5dCkuCisKKzIwMDUtMDgtMjIgIEhhbnMgRnJlZHJpayBOb3JkaGF1ZyAgPGhhbnNAbm9yZGhhdWcucHJpdi5ubz4KKworCSogbmIucG86IFVwZGF0ZWQgKDk5OXQpLgorCisyMDA1LTA4LTIyICBCYXJ0b3N6IEZlbnNraSAgPGZlbmlvQGRlYmlhbi5vcmc+CisKKwkqIHBsLnBvOiBVcGRhdGVkICg5OTl0KS4KKworMjAwNS0wOC0xOSAgQ2hyaXN0aWFuIFBlcnJpZXIgIDxidWJ1bGxlQGRlYmlhbi5vcmc+CisKKwkqIGZyLnBvOiBDb21wbGV0ZWQgKDk5OXQpLgorCisyMDA1LTA4LTE3ICBDaHJpc3RpYW4gUGVycmllciAgPGJ1YnVsbGVAZGViaWFuLm9yZz4KKworCSogKi5wbzogVXBkYXRlZCB3aXRoIHRoZSBkcGtnLnBvdCBmaWxlLgorCisyMDA1LTA3LTA2ICBQYXJsaW4gSW1hbnVlbCAgPHBhcmxpbl9pQHlhaG9vLmNvbT4KKworCSogaWQucG86IFVwZGF0ZWQuCisKKzIwMDUtMDYtMTkgIENsYXVzIEhpbmRzZ2F1bCAgPGNsYXVzX2hAaW1hZ2UuZGs+CisKKwkqIGRhLnBvOiBDb21wbGV0ZWQuCisKKzIwMDUtMDYtMTkgIEdyZWVrIHRyYW5zbGF0aW9uIHRlYW0gIDxkZWJpYW4tbDEwbi1ncmVla0BsaXN0cy5kZWJpYW4ub3JnPgorCisJKiBlbC5wbzogQ29tcGxldGVkIChvbmUgZnV6enkgbGVmdCkuCisKKzIwMDUtMDYtMTQgIE1pcm9zbGF2IEt1cmUgIDxrdXJlbUB1cGNhc2UuaW5mLnVwb2wuY3o+CisKKwkqIGNzLnBvOiBDb21wbGV0ZWQuCisKKzIwMDUtMDYtMTUgIEplbnMgU2VpZGVsICA8amVuc3NlaWRlbEB1c2Vycy5zZi5uZXQ+CisKKwkqIGRlLnBvOiBhdXRvbWF0aWNhbGx5IHNwZWxsY2hlY2tlZC4KKworMjAwNS0wNi0xNCAgQ2hyaXN0aWFuIFBlcnJpZXIgIDxidWJ1bGxlQGRlYmlhbi5vcmc+CisKKwkqIExJTkdVQVM6IERlLWFjdGl2YXRlIEhlYnJldy4KKworMjAwNS0wNi0xNCAgTGVsZSBHYWlmYXggIDxsZWxlQG5hdXRpbHVzLmhvbWVpcC5uZXQ+CisKKwkqIGl0LnBvOiBDb21wbGV0ZWQuCisKKzIwMDUtMDYtMTQgIFl1cmkgS296bG92ICA8eXVyYXlAaWQucnU+CisKKwkqIHJ1LnBvOiBDb21wbGV0ZWQuCisKKzIwMDUtMDYtMTQgIFBpYXJyZXMgQmVvYmlkZSBFZ2FuYSAgPHBpQGJlb2JpZGUubmV0PgorCisJKiBldS5wbzogQ29tcGxldGVkLgorCisyMDA1LTA2LTE0ICBLZW5zaGkgTXV0byAgPGttdXRvQGRlYmlhbi5vcmc+CisKKwkqIGphLnBvOiBDb21wbGV0ZWQuCisKKzIwMDUtMDYtMTQgIEpvcmRpIE1hbGxhY2ggIDxqb3JkaUBkZWJpYW4ub3JnPgorCisJKiBjYS5wbzogQ29tcGxldGVkLgorCisyMDA1LTA2LTEzICBDaHJpc3RpYW4gUGVycmllciAgPGJ1YnVsbGVAZGViaWFuLm9yZz4KKworCSogZnIucG86IENvbXBsZXRlZC4KKworMjAwNS0wNS0yNSAgRWRkeSBQZXRyaT9vciAgPGVkZHkucGV0cmlzb3JAZ21haWwuY29tPgorCisJKiByby5wbzogTmVhcmx5IGNvbXBsZXRlIHRyYW5zbGF0aW9uLiA6LSkKKworMjAwNS0wNS0yMiAgRWRkeSBQZXRyaT9vciAgPGVkZHkucGV0cmlzb3JAZ21haWwuY29tPgorCisJKiByby5wbzogQmV0dGVyIHRyYW5zbGF0aW9uLgorCisyMDA1LTA1LTE5ICBFZGR5IFBldHJpP29yICA8ZWRkeS5wZXRyaXNvckBnbWFpbC5jb20+CisKKwkqIHJvLnBvOiBBZGQgdHJhbnNsYXRpb24uCisJKiBMSU5HVUFTOiBBZGQgUm9tYW5pYW4gdG8gdGhlIGxhbmd1YWdlIGxpc3QuCisKKzIwMDUtMDMtMzAgIEVyaWMgUGFyZWphICA8eGVub3NAdXBtLmVkdS5waD4KKworCSogdGwucG86IEFkZCB0cmFuc2xhdGlvbi4KKwkqIExJTkdVQVM6IEFkZCBUYWdhbG9nIHRvIHRoZSBsYW5ndWFnZSBsaXN0LgorCisyMDA1LTAzLTMwICBDaHJpc3RpYW4gUGVycmllciAgPGJ1YnVsbGVAZGViaWFuLm9yZz4KKworCSogZHBrZy5wb3Q6IFJlZ2VuZXJhdGVkCisJKiAqLnBvOiBVcGRhdGVkLgorCSogZnIucG86IENvbXBsZXRlIHRyYW5zbGF0aW9uLgorCisyMDA1LTAzLTE4ICBDaHJpc3RpYW4gUGVycmllciAgPGJ1YnVsbGVAZGViaWFuLm9yZz4KKworCSogZnIucG86IENvbXBsZXRlZC4KKworMjAwNS0wMy0xOCAgQ2hyaXN0aWFuIFBlcnJpZXIgIDxidWJ1bGxlQGRlYmlhbi5vcmc+CisKKwkqIGRwa2cucG90OiBSZWdlbmVyYXRlZC4KKwkqICoucG86IFVwZGF0ZWQuCisKKzIwMDUtMDMtMTggIEFyaWVmIFMgRml0cmlhbnRvICA8YXJpZWZAZ3VyYW1lLmZpc2lrYS51aS5hYy5pZD4KKworCSogaWQucG86IENvbXBsZXRlZCBmcm9tIDEuMTAgYnJhbmNoICgybmQgdHJ5KS4KKworMjAwNS0wMy0xOCAgU2NvdHQgSmFtZXMgUmVtbmFudCAgPHNjb3R0QG5ldHNwbGl0LmNvbT4KKworCSogUE9URklMRVMuaW46IFJlbW92ZWQgdXRpbHMvbWQ1c3VtLmMgbm93IGl0IG5vIGxvbmdlciBleGlzdHMuCisKKzIwMDUtMDMtMDggIENocmlzdGlhbiBQZXJyaWVyICA8YnVidWxsZUBkZWJpYW4ub3JnPgorCisJKiBmci5wbzogTWlzc2luZyBzcGFjZSBhZGRlZC4KKworMjAwNS0wMy0wMyAgQXJpZWYgUyBGaXRyaWFudG8gIDxhcmllZkBndXJhbWUuZmlzaWthLnVpLmFjLmlkPgorCisJKiBpZC5wbzogRmlyc3QgdmVyc2lvbi4KKworMjAwNS0wMi0yMCAgS29uc3RhbnRpbm9zIE1hcmdhcml0aXMgIDxtYXJrb3NAZGViaWFuLm9yZz4KKworCSogZWwucG86IFVwZGF0ZWQgYWdhaW4gKGNvbXBsZXRlKS4KKworMjAwNS0wMi0xOSAgS29uc3RhbnRpbm9zIE1hcmdhcml0aXMgIDxtYXJrb3NAZGViaWFuLm9yZz4KKworCSogZWwucG86IFVwZGF0ZWQuCisKKzIwMDUtMDItMDYgIENhcmxvcyBMaXUgIDxjYXJsb3NfbGl1QHlhaG9vLmNvbT4KKworCSogemhfQ04ucG86IFVwZGF0ZWQuCisKKzIwMDUtMDItMDUgIEphY29ibyBUYXJyaW8gIDxqdGFycmlvQHRyYXNuby5uZXQ+CisKKwkqIGdsLnBvOiBVcGRhdGVkLgorCisyMDA1LTAyLTA1ICBBc2hvIFllaCAgPGFzaG9AbXM0NC51cmwuY29tLnR3PgorCisJKiB6aF9UVy5wbzogVXBkYXRlZC4KKworMjAwNS0wMS0yOCAgU2VvIFNhbmdoeWVvbiAgPHRpbnV2aWVsQHNwYXJjcy5rYWlzdC5hYy5rcj4KKworCSoga28ucG86IENvbXBsZXRlZC4KKworMjAwNS0wMS0yNSAgQ2hyaXN0aWFuIFBlcnJpZXIgIDxidWJ1bGxlQGRlYmlhbi5vcmc+CisKKwkqIGZyLnBvOiBVcGRhdGVkLgorCisyMDA1LTAxLTI1ICBCam9ybiBTdGVlbnNydWQgIDxiam9ybnN0QHBvd2VydGVjaC5ubz4KKworCSogbmIucG86IEFkZCBuZXcgTm9yd2VnaWFuIEJva21hbCB0cmFuc2xhdGlvbi4KKworMjAwNS0wMS0xMSAgU2NvdHQgSmFtZXMgUmVtbmFudCAgPHNjb3R0QG5ldHNwbGl0LmNvbT4KKworCSogTElOR1VBUzogUmF0aGVyIHRoYW4ganVzdCBsaXN0aW5nIHRoZSBsYW5ndWFnZSBjb2RlcyBvbiBvbmUKKwlsaW5lLCBwdXQgZWFjaCBvbiBpdHMgb3duIGxpbmUgd2l0aCBhIHByZWNlZGluZyBjb21tZW50IGdpdmluZworCXRoZSBFbmdsaXNoIG5hbWUgZm9yIHRoZSBsYW5ndWFnZSwgdGhlIGN1cnJlbnQgdHJhbnNsYXRvcidzCisJbmFtZSBpbiB0aGVpciBwcmVmZXJyZWQgZm9ybSBhbmQgYSBjb250YWN0IGUtbWFpbCBhZGRyZXNzLgorCisyMDA1LTAxLTExICBTYWZpciDFoGXEh2Vyb3ZpxIcgIDxzYXBwaGlyZUBsaW51eC5vcmcuYmE+CisKKwkqIGJzLnBvOiBBZGQgbmV3IEJvc25pYW4gdHJhbnNsYXRpb24uCisKKzIwMDUtMDEtMTEgIEpvcmRpIE1hbGxhY2ggIDxqb3JkaUBkZWJpYW4ub3JnPgorCisJKiBjYS5wbzogVXBkYXRlZC4KKworMjAwNS0wMS0xMSAgTWlyb3NsYXYgS3VyZSAgPGt1cmVtQGRlYmlhbi5jej4KKworCSogY3MucG86IFVwZGF0ZWQuCisKKzIwMDUtMDEtMTEgIENsYXVzIEhpbmRzZ2F1bCAgPGNsYXVzX2hAaW1hZ2UuZGs+CisKKwkqIGRhLnBvOiBVcGRhdGVkLgorCisyMDA1LTAxLTExICBNaWNoYWVsIFBpZWZlbCAgPHBpZWZlbEBkZWJpYW4ub3JnPgorCisJKiBkZS5wbzogVXBkYXRlZC4KKworMjAwNS0wMS0xMSAgR2VvcmdlIFBhcGFtaWNoZWxha2lzICA8Z2VvcmdlQHN0ZXAuZ3I+CisKKwkqIGVsLnBvOiBVcGRhdGVkLgorCisyMDA1LTAxLTExICBKYXZpZXIgRmVybsOhbmRlei1TYW5ndWlubyBQZcOxYSAgPGpmc0BkZWJpYW4ub3JnPgorCisJKiBlcy5wbzogVXBkYXRlZC4KKworMjAwNS0wMS0xMSAgUGlhcnJlcyBCZW9iaWRlICAgPHBpQGJlb2JpZGUubmV0PgorCisJKiBldS5wbzogVXBkYXRlZC4KKworMjAwNS0wMS0xMSAgQ2hyaXN0aWFuIFBlcnJpZXIgIDxidWJ1bGxlQGRlYmlhbi5vcmc+CisKKwkqIGZyLnBvOiBVcGRhdGVkLgorCisyMDA1LTAxLTExICBIw6ljdG9yIEZlcm7DoW5kZXogTMOzcGV6ICA8dHJvcnJyQHlhaG9vLmVzPgorCisJKiBnbC5wbzogVXBkYXRlZC4KKworMjAwNS0wMS0xMSAgTGlvciBLYXBsYW4gIDx3ZWJtYXN0ZXJAZ3VpZGVzLmNvLmlsPgorCisJKiBoZS5wbzogVXBkYXRlZC4KKworMjAwNS0wMS0xMSAgU3RlZmFubyBDYW5lcGEgIDxzY0BsaW51eC5pdD4KKworCSogaXQucG86IFVwZGF0ZWQuCisKKzIwMDUtMDEtMTEgIEtlbnNoaSBNdXRvICA8a211dG9AZGViaWFuLm9yZz4KKworCSogamEucG86IFVwZGF0ZWQuCisKKzIwMDUtMDEtMTEgIENoYW5nd29vIFJ5dSAgPGN3cnl1QGRlYmlhbi5vcmc+CisKKwkqIGtvLnBvOiBVcGRhdGVkLgorCisyMDA1LTAxLTExICBCYXJ0IENvcm5lbGlzICA8Y29iYWNvQGxpbnV4LmJlPgorCisJKiBubC5wbzogVXBkYXRlZC4KKworMjAwNS0wMS0xMSAgSMOldmFyZCBLb3Jzdm9sbCAgPGtvcnN2b2xsQHNrdWxlbGludXgubm8+CisKKwkqIG5uLnBvOiBVcGRhdGVkLgorCisyMDA1LTAxLTExICBCYXJ0b3N6IEZlw7Fza2kgIDxmZW5pb0BkZWJpYW4ub3JnPgorCisJKiBwbC5wbzogVXBkYXRlZC4KKworMjAwNS0wMS0xMSAgTWlndWVsIEZpZ3VlaXJlZG8gIDxlbG1pZ0BkZWJpYW5wdC5vcmc+CisKKwkqIHB0LnBvOiBVcGRhdGVkLgorCisyMDA1LTAxLTExICBBbmRyw6kgTHXDrXMgTG9wZXMgIDxhbmRyZWxvcEBkZWJpYW4ub3JnPgorCisJKiBwdF9CUi5wbzogVXBkYXRlZC4KKworMjAwNS0wMS0xMSAgWXVyaSBLb3psb3YgIDx5dXJheUBpZC5ydT4KKworCSogcnUucG86IFVwZGF0ZWQuCisKKzIwMDUtMDEtMTEgIFJvbWFuIEJlbmtvICA8YmVuY29AYWNpZC5zaz4KKworCSogc2sucG86IEFkZCBuZXcgU2xvdmFraWFuIHRyYW5zbGF0aW9uLgorCisyMDA1LTAxLTExICBQZXRlciBLYXJsc3NvbiAgPHBldGVya0BkZWJpYW4ub3JnPgorCisJKiBzdi5wbzogVXBkYXRlZC4KKworMjAwNS0wMS0xMSAgVGNoYWlrb3YgIDxjaGFpc2F2ZUAyNjMuY29tPgorCisJKiB6aF9DTi5wbzogVXBkYXRlZC4KKworMjAwNS0wMS0xMSAgQXNobyBZZWggIDxhc2hvQGRlYmlhbi5vcmcudHc+CisKKwkqIHpoX1RXLnBvOiBBZGQgbmV3IFRyYWRpdGlvbmFsIENoaW5lc2UgdHJhbnNsYXRpb24uCisKKzIwMDUtMDEtMTAgIFNjb3R0IEphbWVzIFJlbW5hbnQgIDxzY290dEBuZXRzcGxpdC5jb20+CisKKwkqIFBPVEZJTEVTLmluOiBVcGRhdGUgd2l0aCBuZXcgZmlsZSBwYXRocy4KKwkKKwkqIGRwa2cucG90OiBSZW1vdmUgZnJvbSB2ZXJzaW9uIGNvbnRyb2wsIGl0IHdpbGwgYmUgYXV0b21hdGljYWxseQorCWdlbmVyYXRlZCB0aHJvdWdoIGdldHRleHQgYW5kIGF1dG9tYWtlLgorCSogZW4ucG86IFJlbW92ZSBuZWVkbGVzcyBlbmdsaXNoIHRyYW5zbGF0aW9uLCB0aGUgZGVmYXVsdCBzdHJpbmdzCisJYXJlIGluIGVuZ2xpc2guCisJKiB1cGRhdGUuc2g6IFJlbW92ZSB1cGRhdGUgc2NyaXB0LCBmaWxlcyB3aWxsIGJlIGF1dG9tYXRpY2FsbHkKKwl1cGRhdGVkIHRocm91Z2ggZ2V0dGV4dCBhbmQgYXV0b21ha2UuCisKKwkqIExJTkdVQVM6IFN0b3JlIGxpc3Qgb2YgYXZhaWxhYmxlIHRyYW5zbGF0aW9ucyBpbiB0aGlzIGZpbGUsIHdoaWNoCisJaXMgZmFyIGVhc2llciB0byBtYWludGFpbiB0aGFuIGhhdmluZyB0byBlZGl0IGNvbmZpZ3VyZS5pbidzCisJQUxMX0xJTkdVQVMgdmFyaWFibGUgZWFjaCB0aW1lLgorCSogTWFrZXZhcnM6IFVwZGF0ZWQgYWdhaW5zdCBjdXJyZW50IGdldHRleHQgdGVtcGxhdGUsIHdpdGggY29weXJpZ2h0CisJY2hhbmdlZCB0byBTUEkgYW5kIGJ1Z3MgYWRkcmVzcyByZXRhaW5lZCBmcm9tIHByZXZpb3VzIHZlcnNpb24uCisKK09sZGVyIGNoYW5nZXMgYXJlIGRvY3VtZW50ZWQgaW4gdGhlIHRvcC1sZXZlbCBDaGFuZ2VMb2cKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvcG8vTElOR1VBUyBiL2Rwa2ctMS4xNi4xLjEvcG8vTElOR1VBUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wMWYwOTM4Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9wby9MSU5HVUFTCkBAIC0wLDAgKzEsMTI1IEBACisjIFRoaXMgZmlsZSBjb250YWlucyB0aGUgbGlzdCBvZiBhdmFpbGFibGUgdHJhbnNsYXRpb25zLgorIworIyBFYWNoIHNob3VsZCBiZSBwcmVmaXhlZCB3aXRoIHRoZSBFbmdsaXNoIG5hbWUgZm9yIHRoZSBsYW5ndWFnZSBhbmQKKyMgdGhlIGN1cnJlbnQgbWFpbnRhaW5lcidzIG5hbWUgaW4gdGhlaXIgcHJlZmVycmVkIGZvcm0gYW5kIGNvbnRhY3QKKyMgZS1tYWlsIGFkZHJlc3MuCisKKyMgQXN0dXJpYW4gLSBNYXJjb3MgQWx2YXJleiBDb3N0YWxlcyA8bWFyY29zLmFsdmFyZXouY29zdGFsZXNAZ21haWwuY29tPgorYXN0CisKKyMgQm9zbmlhbiAtIFNhZmlyIMWgZcSHZXJvdmnEhyA8c2FwcGhpcmVAbGludXgub3JnLmJhPgorYnMKKworIyBDYXRhbGFuIC0gSm9yZGkgTWFsbGFjaCA8am9yZGlAZGViaWFuLm9yZz4KK2NhCisKKyMgQ3plY2ggLSBNaXJvc2xhdiBLdXJlIDxrdXJlbUBkZWJpYW4uY3o+CitjcworCisjIERhbmlzaCAtIENsYXVzIEhpbmRzZ2F1bCA8Y2xhdXNfaEBpbWFnZS5kaz4KK2RhCisKKyMgR2VybWFuIC0gU3ZlbiBKb2FjaGltIDxzdmVuam9hY0BnbXguZGU+CitkZQorCisjIER6b25na2hhIC0gbm9yYnUgPG5vcl9kZW5AaG90bWFpbC5jb20+CitkegorCisjIEdyZWVrIChIZWxsZW5pYykgLSBHZW9yZ2UgUGFwYW1pY2hlbGFraXMgPGdlb3JnZUBzdGVwLmdyPgorZWwKKworIyBFc3BlcmFudG8gLSBGZWxpcGUgQ2FzdHJvIDxmZWZjYXNAZ21haWwuY29tPgorZW8KKworIyBTcGFuaXNoIC0gSmF2aWVyIEZlcm7DoW5kZXotU2FuZ3Vpbm8gUGXDsWEgPGpmc0BkZWJpYW4ub3JnPgorZXMKKworIyBFc3RvbmlhbiAtIEl2YXIgU21vbGluIDxva3VsQGxpbnV4LmVlPgorZXQKKworIyBCYXNxdWUgKEV1c2thcmEpIC0gUGlhcnJlcyBCZW9iaWRlIEVnYcOxYSA8cGlAYmVvYmlkZS5uZXQ+CitldQorCisjIEZyZW5jaCAtIENocmlzdGlhbiBQZXJyaWVyIDxidWJ1bGxlQGRlYmlhbi5vcmc+CitmcgorCisjIEdhbGljaWFuIC0gSMOpY3RvciBGZXJuw6FuZGV6IEzDs3BleiA8dHJvcnJyQHlhaG9vLmVzPgorZ2wKKworIyBIdW5nYXJpYW4gLSBTemVydsOhYyBBdHRpbGEgPHNhc0AzMjEuaHU+CitodQorCisjIEluZG9uZXNpYW4gLSBBcmllZiBTIEZpdHJpYW50byA8YXJpZWZAZ3VyYW1lLmZpc2lrYS51aS5hYy5pZD4KK2lkCisKKyMgSXRhbGlhbiAtIFN0ZWZhbm8gQ2FuZXBhIDxzY0BsaW51eC5pdD4KK2l0CisKKyMgSmFwYW5lc2UgLSBLZW5zaGkgTXV0byA8a211dG9AZGViaWFuLm9yZz4KK2phCisKKyMgS2htZXIgLSBLaG9lbSBTb2toZW0gPGtob2Vtc29raGVtQGtobWVyb3MuaW5mbz4KK2ttCisKKyMgS29yZWFuIC0gQ2hhbmd3b28gUnl1IDxjd3J5dUBkZWJpYW4ub3JnPgora28KKworIyBLdXJkaXNoIC0gRXJkYWwgUm9uYWhpIDxlcmRhbC5yb25haGlAZ21haWwuY29tPgora3UKKworIyBMaXRodWFuaWFuIC0gR2ludGF1dGFzIE1pbGlhdXNrYXMgPGdpbnRhc0Bha2wubHQ+CitsdAorCisjIE1hcmF0aGkgLSBQcml0aSBQYXRpbCA8cHJpdGhpc2RAZ21haWwuY29tPgorbXIKKworIyBOb3J3ZWdpYW4gKEJva23DpWwpIC0gQmpvcm4gU3RlZW5zcnVkIDxiam9ybnN0QHBvd2VydGVjaC5ubz4KK25iCisKKyMgTmVwYWxpIC0gUGFyYXMgUHJhZGhhbiA8cHJhZGhhbnBhcmFzQGdtYWlsLmNvbT4KK25lCisKKyMgRHV0Y2ggLSBCYXJ0IENvcm5lbGlzIDxjb2JhY29AbGludXguYmU+CitubAorCisjIE5vcndlZ2lhbiAoTnlub3JzaykgLSBIw6V2YXJkIEtvcnN2b2xsIDxrb3Jzdm9sbEBza3VsZWxpbnV4Lm5vPgorbm4KKworIyBQdW5qYWJpIC0gQW1hbnByZWV0IFNpbmdoIEFsYW0gPGFwYnJhckBnbWFpbC5jb20+CitwYQorCisjIFBvbGlzaCAtIEJhcnRvc3ogRmXDsXNraSA8ZmVuaW9AZGViaWFuLm9yZz4KK3BsCisKKyMgUG9ydHVndWVzZSAtIE1pZ3VlbCBGaWd1ZWlyZWRvIDxlbG1pZ0BkZWJpYW5wdC5vcmc+CitwdAorCisjIEJyYXppbGlhbiBQb3J0dWd1ZXNlIC0gQW5kcsOpIEx1w61zIExvcGVzIDxhbmRyZWxvcEBkZWJpYW4ub3JnPgorcHRfQlIKKworIyBSb21hbmlhbiAtIEVkZHkgUGV0cmlzb3IgPGVkZHkucGV0cmlzb3JAZ21haWwuY29tPgorcm8KKworIyBSdXNzaWFuIC0gWXVyaSBLb3psb3YgPHl1cmF5QGlkLnJ1PgorcnUKKworIyBTbG92YWsgLSBJdmFuIE1hc8OhciA8aGVsaXg4NEBjZW50cnVtLnNrPgorc2sKKworIyBTd2VkaXNoIC0gUGV0ZXIgS3JlZnRpbmcgPHBldGVya0BkZWJpYW4ub3JnPgorc3YKKworIyBUaGFpIC0gVGhlcHBpdGFrIEthcm9vbmJvb255YW5hbiA8dGhlcEBsaW51eC50aGFpLm5ldD4KK3RoCisKKyMgVGFnYWxvZyAtIEVyaWMgUGFyZWphIDx4ZW5vc0B1cG0uZWR1LnBoPgordGwKKworIyBWaWV0bmFtZXNlIC0gQ2x5dGllIFNpZGRhbGwgPGNseXRpZUByaXZlcmxhbmQubmV0LmF1PgordmkKKworIyBTaW1wbGlmaWVkIENoaW5lc2UgLSBUY2hhaWtvdiA8Y2hhaXNhdmVAMjYzLmNvbT4KK3poX0NOCisKKyMgVHJhZGl0aW9uYWwgQ2hpbmVzZSAtIEFzaG8gWWVoIDxhc2hvQGRlYmlhbi5vcmcudHc+Cit6aF9UVwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9wby9NYWtlZmlsZS5pbi5pbiBiL2Rwa2ctMS4xNi4xLjEvcG8vTWFrZWZpbGUuaW4uaW4KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODNkODgzOAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvcG8vTWFrZWZpbGUuaW4uaW4KQEAgLTAsMCArMSw0NDQgQEAKKyMgTWFrZWZpbGUgZm9yIFBPIGRpcmVjdG9yeSBpbiBhbnkgcGFja2FnZSB1c2luZyBHTlUgZ2V0dGV4dC4KKyMgQ29weXJpZ2h0IChDKSAxOTk1LTE5OTcsIDIwMDAtMjAwNywgMjAwOS0yMDEwIGJ5IFVscmljaCBEcmVwcGVyIDxkcmVwcGVyQGdudS5haS5taXQuZWR1PgorIworIyBUaGlzIGZpbGUgY2FuIGJlIGNvcGllZCBhbmQgdXNlZCBmcmVlbHkgd2l0aG91dCByZXN0cmljdGlvbnMuICBJdCBjYW4KKyMgYmUgdXNlZCBpbiBwcm9qZWN0cyB3aGljaCBhcmUgbm90IGF2YWlsYWJsZSB1bmRlciB0aGUgR05VIEdlbmVyYWwgUHVibGljCisjIExpY2Vuc2UgYnV0IHdoaWNoIHN0aWxsIHdhbnQgdG8gcHJvdmlkZSBzdXBwb3J0IGZvciB0aGUgR05VIGdldHRleHQKKyMgZnVuY3Rpb25hbGl0eS4KKyMgUGxlYXNlIG5vdGUgdGhhdCB0aGUgYWN0dWFsIGNvZGUgb2YgR05VIGdldHRleHQgaXMgY292ZXJlZCBieSB0aGUgR05VCisjIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYW5kIGlzICpub3QqIGluIHRoZSBwdWJsaWMgZG9tYWluLgorIworIyBPcmlnaW46IGdldHRleHQtMC4xOAorR0VUVEVYVF9NQUNST19WRVJTSU9OID0gMC4xOAorCitQQUNLQUdFID0gQFBBQ0tBR0VACitWRVJTSU9OID0gQFZFUlNJT05ACitQQUNLQUdFX0JVR1JFUE9SVCA9IEBQQUNLQUdFX0JVR1JFUE9SVEAKKworU0hFTEwgPSAvYmluL3NoCitAU0VUX01BS0VACisKK3NyY2RpciA9IEBzcmNkaXJACit0b3Bfc3JjZGlyID0gQHRvcF9zcmNkaXJACitWUEFUSCA9IEBzcmNkaXJACisKK3ByZWZpeCA9IEBwcmVmaXhACitleGVjX3ByZWZpeCA9IEBleGVjX3ByZWZpeEAKK2RhdGFyb290ZGlyID0gQGRhdGFyb290ZGlyQAorZGF0YWRpciA9IEBkYXRhZGlyQAorbG9jYWxlZGlyID0gQGxvY2FsZWRpckAKK2dldHRleHRzcmNkaXIgPSAkKGRhdGFkaXIpL2dldHRleHQvcG8KKworSU5TVEFMTCA9IEBJTlNUQUxMQAorSU5TVEFMTF9EQVRBID0gQElOU1RBTExfREFUQUAKKworIyBXZSB1c2UgJChta2Rpcl9wKS4KKyMgSW4gYXV0b21ha2UgPD0gMS45LngsICQobWtkaXJfcCkgaXMgZGVmaW5lZCBlaXRoZXIgYXMgIm1rZGlyIC1wIC0tIiBvciBhcworIyAiJChta2luc3RhbGxkaXJzKSIgb3IgYXMgIiQoaW5zdGFsbF9zaCkgLWQiLiBGb3IgdGhlc2UgYXV0b21ha2UgdmVyc2lvbnMsCisjIEBpbnN0YWxsX3NoQCBkb2VzIG5vdCBzdGFydCB3aXRoICQoU0hFTEwpLCBzbyB3ZSBhZGQgaXQuCisjIEluIGF1dG9tYWtlID49IDEuMTAsIEBta2Rpcl9wQCBpcyBkZXJpdmVkIGZyb20gJHtNS0RJUl9QfSwgd2hpY2ggaXMgZGVmaW5lZAorIyBlaXRoZXIgYXMgIi9wYXRoL3RvL21rZGlyIC1wIiBvciAiLi4uL2luc3RhbGwtc2ggLWMgLWQiLiBGb3IgdGhlc2UgYXV0b21ha2UKKyMgdmVyc2lvbnMsICQobWtpbnN0YWxsZGlycykgYW5kICQoaW5zdGFsbF9zaCkgYXJlIHVudXNlZC4KK21raW5zdGFsbGRpcnMgPSAkKFNIRUxMKSBAaW5zdGFsbF9zaEAgLWQKK2luc3RhbGxfc2ggPSAkKFNIRUxMKSBAaW5zdGFsbF9zaEAKK01LRElSX1AgPSBATUtESVJfUEAKK21rZGlyX3AgPSBAbWtkaXJfcEAKKworR01TR0ZNVF8gPSBAR01TR0ZNVEAKK0dNU0dGTVRfbm8gPSBAR01TR0ZNVEAKK0dNU0dGTVRfeWVzID0gQEdNU0dGTVRfMDE1QAorR01TR0ZNVCA9ICQoR01TR0ZNVF8kKFVTRV9NU0dDVFhUKSkKK01TR0ZNVF8gPSBATVNHRk1UQAorTVNHRk1UX25vID0gQE1TR0ZNVEAKK01TR0ZNVF95ZXMgPSBATVNHRk1UXzAxNUAKK01TR0ZNVCA9ICQoTVNHRk1UXyQoVVNFX01TR0NUWFQpKQorWEdFVFRFWFRfID0gQFhHRVRURVhUQAorWEdFVFRFWFRfbm8gPSBAWEdFVFRFWFRACitYR0VUVEVYVF95ZXMgPSBAWEdFVFRFWFRfMDE1QAorWEdFVFRFWFQgPSAkKFhHRVRURVhUXyQoVVNFX01TR0NUWFQpKQorTVNHTUVSR0UgPSBtc2dtZXJnZQorTVNHTUVSR0VfVVBEQVRFID0gQE1TR01FUkdFQCAtLXVwZGF0ZQorTVNHSU5JVCA9IG1zZ2luaXQKK01TR0NPTlYgPSBtc2djb252CitNU0dGSUxURVIgPSBtc2dmaWx0ZXIKKworUE9GSUxFUyA9IEBQT0ZJTEVTQAorR01PRklMRVMgPSBAR01PRklMRVNACitVUERBVEVQT0ZJTEVTID0gQFVQREFURVBPRklMRVNACitEVU1NWVBPRklMRVMgPSBARFVNTVlQT0ZJTEVTQAorRElTVEZJTEVTLmNvbW1vbiA9IE1ha2VmaWxlLmluLmluIHJlbW92ZS1wb3RjZGF0ZS5zaW4gXAorJChESVNURklMRVMuY29tbW9uLmV4dHJhMSkgJChESVNURklMRVMuY29tbW9uLmV4dHJhMikgJChESVNURklMRVMuY29tbW9uLmV4dHJhMykKK0RJU1RGSUxFUyA9ICQoRElTVEZJTEVTLmNvbW1vbikgTWFrZXZhcnMgUE9URklMRVMuaW4gXAorJChQT0ZJTEVTKSAkKEdNT0ZJTEVTKSBcCiskKERJU1RGSUxFUy5leHRyYTEpICQoRElTVEZJTEVTLmV4dHJhMikgJChESVNURklMRVMuZXh0cmEzKQorCitQT1RGSUxFUyA9IFwKKworQ0FUQUxPR1MgPSBAQ0FUQUxPR1NACisKKyMgTWFrZXZhcnMgZ2V0cyBpbnNlcnRlZCBoZXJlLiAoRG9uJ3QgcmVtb3ZlIHRoaXMgbGluZSEpCisKKy5TVUZGSVhFUzoKKy5TVUZGSVhFUzogLnBvIC5nbW8gLm1vIC5zZWQgLnNpbiAubm9wIC5wby1jcmVhdGUgLnBvLXVwZGF0ZQorCisucG8ubW86CisJQGVjaG8gIiQoTVNHRk1UKSAtYyAtbyAkQCAkPCI7IFwKKwkkKE1TR0ZNVCkgLWMgLW8gdC0kQCAkPCAmJiBtdiB0LSRAICRACisKKy5wby5nbW86CisJQGxhbmc9YGVjaG8gJCogfCBzZWQgLWUgJ3MsLiovLCwnYDsgXAorCXRlc3QgIiQoc3JjZGlyKSIgPSAuICYmIGNkY21kPSIiIHx8IGNkY21kPSJjZCAkKHNyY2RpcikgJiYgIjsgXAorCWVjaG8gIiQke2NkY21kfXJtIC1mICQke2xhbmd9LmdtbyAmJiAkKEdNU0dGTVQpIC1jIC0tc3RhdGlzdGljcyAtLXZlcmJvc2UgLW8gJCR7bGFuZ30uZ21vICQke2xhbmd9LnBvIjsgXAorCWNkICQoc3JjZGlyKSAmJiBybSAtZiAkJHtsYW5nfS5nbW8gJiYgJChHTVNHRk1UKSAtYyAtLXN0YXRpc3RpY3MgLS12ZXJib3NlIC1vIHQtJCR7bGFuZ30uZ21vICQke2xhbmd9LnBvICYmIG12IHQtJCR7bGFuZ30uZ21vICQke2xhbmd9LmdtbworCisuc2luLnNlZDoKKwlzZWQgLWUgJy9eIy9kJyAkPCA+IHQtJEAKKwltdiB0LSRAICRACisKKworYWxsOiBjaGVjay1tYWNyby12ZXJzaW9uIGFsbC1AVVNFX05MU0AKKworYWxsLXllczogc3RhbXAtcG8KK2FsbC1ubzoKKworIyBFbnN1cmUgdGhhdCB0aGUgZ2V0dGV4dCBtYWNyb3MgYW5kIHRoaXMgTWFrZWZpbGUuaW4uaW4gYXJlIGluIHN5bmMuCitjaGVjay1tYWNyby12ZXJzaW9uOgorCUB0ZXN0ICIkKEdFVFRFWFRfTUFDUk9fVkVSU0lPTikiID0gIkBHRVRURVhUX01BQ1JPX1ZFUlNJT05AIiBcCisJICB8fCB7IGVjaG8gIioqKiBlcnJvcjogZ2V0dGV4dCBpbmZyYXN0cnVjdHVyZSBtaXNtYXRjaDogdXNpbmcgYSBNYWtlZmlsZS5pbi5pbiBmcm9tIGdldHRleHQgdmVyc2lvbiAkKEdFVFRFWFRfTUFDUk9fVkVSU0lPTikgYnV0IHRoZSBhdXRvY29uZiBtYWNyb3MgYXJlIGZyb20gZ2V0dGV4dCB2ZXJzaW9uIEBHRVRURVhUX01BQ1JPX1ZFUlNJT05AIiAxPiYyOyBcCisJICAgICAgIGV4aXQgMTsgXAorCSAgICAgfQorCisjICQoc3JjZGlyKS8kKERPTUFJTikucG90IGlzIG9ubHkgY3JlYXRlZCB3aGVuIG5lZWRlZC4gV2hlbiB4Z2V0dGV4dCBmaW5kcyBubworIyBpbnRlcm5hdGlvbmFsaXplZCBtZXNzYWdlcywgbm8gJChzcmNkaXIpLyQoRE9NQUlOKS5wb3QgaXMgY3JlYXRlZCAoYmVjYXVzZQorIyB3ZSBkb24ndCB3YW50IHRvIGJvdGhlciB0cmFuc2xhdG9ycyB3aXRoIGVtcHR5IFBPVCBmaWxlcykuIFdlIGFzc3VtZSB0aGF0CisjIExJTkdVQVMgaXMgZW1wdHkgaW4gdGhpcyBjYXNlLCBpLmUuICQoUE9GSUxFUykgYW5kICQoR01PRklMRVMpIGFyZSBlbXB0eS4KKyMgSW4gdGhpcyBjYXNlLCBzdGFtcC1wbyBpcyBhIG5vcCAoaS5lLiBhIHBob255IHRhcmdldCkuCisKKyMgc3RhbXAtcG8gaXMgYSB0aW1lc3RhbXAgZGVub3RpbmcgdGhlIGxhc3QgdGltZSBhdCB3aGljaCB0aGUgQ0FUQUxPR1MgaGF2ZQorIyBiZWVuIGxvb3NlbHkgdXBkYXRlZC4gSXRzIHB1cnBvc2UgaXMgdGhhdCB3aGVuIGEgZGV2ZWxvcGVyIG9yIHRyYW5zbGF0b3IKKyMgY2hlY2tzIG91dCB0aGUgcGFja2FnZSB2aWEgQ1ZTLCBhbmQgdGhlICQoRE9NQUlOKS5wb3QgZmlsZSBpcyBub3QgaW4gQ1ZTLAorIyAibWFrZSIgd2lsbCB1cGRhdGUgdGhlICQoRE9NQUlOKS5wb3QgYW5kIHRoZSAkKENBVEFMT0dTKSwgYnV0IHN1YnNlcXVlbnQKKyMgaW52b2NhdGlvbnMgb2YgIm1ha2UiIHdpbGwgZG8gbm90aGluZy4gVGhpcyB0aW1lc3RhbXAgd291bGQgbm90IGJlIG5lY2Vzc2FyeQorIyBpZiB1cGRhdGluZyB0aGUgJChDQVRBTE9HUykgd291bGQgYWx3YXlzIHRvdWNoIHRoZW07IGhvd2V2ZXIsIHRoZSBydWxlIGZvcgorIyAkKFBPRklMRVMpIGhhcyBiZWVuIGRlc2lnbmVkIHRvIG5vdCB0b3VjaCBmaWxlcyB0aGF0IGRvbid0IG5lZWQgdG8gYmUKKyMgY2hhbmdlZC4KK3N0YW1wLXBvOiAkKHNyY2RpcikvJChET01BSU4pLnBvdAorCXRlc3QgISAtZiAkKHNyY2RpcikvJChET01BSU4pLnBvdCB8fCBcCisJICB0ZXN0IC16ICIkKEdNT0ZJTEVTKSIgfHwgJChNQUtFKSAkKEdNT0ZJTEVTKQorCUB0ZXN0ICEgLWYgJChzcmNkaXIpLyQoRE9NQUlOKS5wb3QgfHwgeyBcCisJICBlY2hvICJ0b3VjaCBzdGFtcC1wbyIgJiYgXAorCSAgZWNobyB0aW1lc3RhbXAgPiBzdGFtcC1wb1QgJiYgXAorCSAgbXYgc3RhbXAtcG9UIHN0YW1wLXBvOyBcCisJfQorCisjIE5vdGU6IFRhcmdldCAnYWxsJyBtdXN0IG5vdCBkZXBlbmQgb24gdGFyZ2V0ICckKERPTUFJTikucG90LXVwZGF0ZScsCisjIG90aGVyd2lzZSBwYWNrYWdlcyBsaWtlIEdDQyBjYW4gbm90IGJlIGJ1aWx0IGlmIG9ubHkgcGFydHMgb2YgdGhlIHNvdXJjZQorIyBoYXZlIGJlZW4gZG93bmxvYWRlZC4KKworIyBUaGlzIHRhcmdldCByZWJ1aWxkcyAkKERPTUFJTikucG90OyBpdCBpcyBhbiBleHBlbnNpdmUgb3BlcmF0aW9uLgorIyBOb3RlIHRoYXQgJChET01BSU4pLnBvdCBpcyBub3QgdG91Y2hlZCBpZiBpdCBkb2Vzbid0IG5lZWQgdG8gYmUgY2hhbmdlZC4KKyQoRE9NQUlOKS5wb3QtdXBkYXRlOiAkKFBPVEZJTEVTKSAkKHNyY2RpcikvUE9URklMRVMuaW4gcmVtb3ZlLXBvdGNkYXRlLnNlZAorCWlmIExDX0FMTD1DIGdyZXAgJ0dOVSBAUEFDS0FHRUAnICQodG9wX3NyY2RpcikvKiAyPi9kZXYvbnVsbCB8IGdyZXAgLXYgJ2xpYnRvb2w6JyA+L2Rldi9udWxsOyB0aGVuIFwKKwkgIHBhY2thZ2VfZ251PSdHTlUgJzsgXAorCWVsc2UgXAorCSAgcGFja2FnZV9nbnU9Jyc7IFwKKwlmaTsgXAorCWlmIHRlc3QgLW4gJyQoTVNHSURfQlVHU19BRERSRVNTKScgfHwgdGVzdCAnJChQQUNLQUdFX0JVR1JFUE9SVCknID0gJ0AnUEFDS0FHRV9CVUdSRVBPUlQnQCc7IHRoZW4gXAorCSAgbXNnaWRfYnVnc19hZGRyZXNzPSckKE1TR0lEX0JVR1NfQUREUkVTUyknOyBcCisJZWxzZSBcCisJICBtc2dpZF9idWdzX2FkZHJlc3M9JyQoUEFDS0FHRV9CVUdSRVBPUlQpJzsgXAorCWZpOyBcCisJY2FzZSBgJChYR0VUVEVYVCkgLS12ZXJzaW9uIHwgc2VkIDFxIHwgc2VkIC1lICdzLF5bXjAtOV0qLCwnYCBpbiBcCisJICAnJyB8IDAuWzAtOV0gfCAwLlswLTldLiogfCAwLjFbMC01XSB8IDAuMVswLTVdLiogfCAwLjE2IHwgMC4xNi5bMC0xXSopIFwKKwkgICAgJChYR0VUVEVYVCkgLS1kZWZhdWx0LWRvbWFpbj0kKERPTUFJTikgLS1kaXJlY3Rvcnk9JCh0b3Bfc3JjZGlyKSBcCisJICAgICAgLS1hZGQtY29tbWVudHM9VFJBTlNMQVRPUlM6ICQoWEdFVFRFWFRfT1BUSU9OUykgQFhHRVRURVhUX0VYVFJBX09QVElPTlNAIFwKKwkgICAgICAtLWZpbGVzLWZyb209JChzcmNkaXIpL1BPVEZJTEVTLmluIFwKKwkgICAgICAtLWNvcHlyaWdodC1ob2xkZXI9JyQoQ09QWVJJR0hUX0hPTERFUiknIFwKKwkgICAgICAtLW1zZ2lkLWJ1Z3MtYWRkcmVzcz0iJCRtc2dpZF9idWdzX2FkZHJlc3MiIFwKKwkgICAgOzsgXAorCSAgKikgXAorCSAgICAkKFhHRVRURVhUKSAtLWRlZmF1bHQtZG9tYWluPSQoRE9NQUlOKSAtLWRpcmVjdG9yeT0kKHRvcF9zcmNkaXIpIFwKKwkgICAgICAtLWFkZC1jb21tZW50cz1UUkFOU0xBVE9SUzogJChYR0VUVEVYVF9PUFRJT05TKSBAWEdFVFRFWFRfRVhUUkFfT1BUSU9OU0AgXAorCSAgICAgIC0tZmlsZXMtZnJvbT0kKHNyY2RpcikvUE9URklMRVMuaW4gXAorCSAgICAgIC0tY29weXJpZ2h0LWhvbGRlcj0nJChDT1BZUklHSFRfSE9MREVSKScgXAorCSAgICAgIC0tcGFja2FnZS1uYW1lPSIkJHtwYWNrYWdlX2dudX1AUEFDS0FHRUAiIFwKKwkgICAgICAtLXBhY2thZ2UtdmVyc2lvbj0nQFZFUlNJT05AJyBcCisJICAgICAgLS1tc2dpZC1idWdzLWFkZHJlc3M9IiQkbXNnaWRfYnVnc19hZGRyZXNzIiBcCisJICAgIDs7IFwKKwllc2FjCisJdGVzdCAhIC1mICQoRE9NQUlOKS5wbyB8fCB7IFwKKwkgIGlmIHRlc3QgLWYgJChzcmNkaXIpLyQoRE9NQUlOKS5wb3Q7IHRoZW4gXAorCSAgICBzZWQgLWYgcmVtb3ZlLXBvdGNkYXRlLnNlZCA8ICQoc3JjZGlyKS8kKERPTUFJTikucG90ID4gJChET01BSU4pLjFwbyAmJiBcCisJICAgIHNlZCAtZiByZW1vdmUtcG90Y2RhdGUuc2VkIDwgJChET01BSU4pLnBvID4gJChET01BSU4pLjJwbyAmJiBcCisJICAgIGlmIGNtcCAkKERPTUFJTikuMXBvICQoRE9NQUlOKS4ycG8gPi9kZXYvbnVsbCAyPiYxOyB0aGVuIFwKKwkgICAgICBybSAtZiAkKERPTUFJTikuMXBvICQoRE9NQUlOKS4ycG8gJChET01BSU4pLnBvOyBcCisJICAgIGVsc2UgXAorCSAgICAgIHJtIC1mICQoRE9NQUlOKS4xcG8gJChET01BSU4pLjJwbyAkKHNyY2RpcikvJChET01BSU4pLnBvdCAmJiBcCisJICAgICAgbXYgJChET01BSU4pLnBvICQoc3JjZGlyKS8kKERPTUFJTikucG90OyBcCisJICAgIGZpOyBcCisJICBlbHNlIFwKKwkgICAgbXYgJChET01BSU4pLnBvICQoc3JjZGlyKS8kKERPTUFJTikucG90OyBcCisJICBmaTsgXAorCX0KKworIyBUaGlzIHJ1bGUgaGFzIG5vIGRlcGVuZGVuY2llczogd2UgZG9uJ3QgbmVlZCB0byB1cGRhdGUgJChET01BSU4pLnBvdCBhdAorIyBldmVyeSAibWFrZSIgaW52b2NhdGlvbiwgb25seSBjcmVhdGUgaXQgd2hlbiBpdCBpcyBtaXNzaW5nLgorIyBPbmx5ICJtYWtlICQoRE9NQUlOKS5wb3QtdXBkYXRlIiBvciAibWFrZSBkaXN0IiB3aWxsIGZvcmNlIGFuIHVwZGF0ZS4KKyQoc3JjZGlyKS8kKERPTUFJTikucG90OgorCSQoTUFLRSkgJChET01BSU4pLnBvdC11cGRhdGUKKworIyBUaGlzIHRhcmdldCByZWJ1aWxkcyBhIFBPIGZpbGUgaWYgJChET01BSU4pLnBvdCBoYXMgY2hhbmdlZC4KKyMgTm90ZSB0aGF0IGEgUE8gZmlsZSBpcyBub3QgdG91Y2hlZCBpZiBpdCBkb2Vzbid0IG5lZWQgdG8gYmUgY2hhbmdlZC4KKyQoUE9GSUxFUyk6ICQoc3JjZGlyKS8kKERPTUFJTikucG90CisJQGxhbmc9YGVjaG8gJEAgfCBzZWQgLWUgJ3MsLiovLCwnIC1lICdzL1wucG8kJC8vJ2A7IFwKKwlpZiB0ZXN0IC1mICIkKHNyY2RpcikvJCR7bGFuZ30ucG8iOyB0aGVuIFwKKwkgIHRlc3QgIiQoc3JjZGlyKSIgPSAuICYmIGNkY21kPSIiIHx8IGNkY21kPSJjZCAkKHNyY2RpcikgJiYgIjsgXAorCSAgZWNobyAiJCR7Y2RjbWR9JChNU0dNRVJHRV9VUERBVEUpICQoTVNHTUVSR0VfT1BUSU9OUykgLS1sYW5nPSQke2xhbmd9ICQke2xhbmd9LnBvICQoRE9NQUlOKS5wb3QiOyBcCisJICBjZCAkKHNyY2RpcikgXAorCSAgICAmJiB7IGNhc2UgYCQoTVNHTUVSR0VfVVBEQVRFKSAtLXZlcnNpb24gfCBzZWQgMXEgfCBzZWQgLWUgJ3MsXlteMC05XSosLCdgIGluIFwKKwkgICAgICAgICAgICcnIHwgMC5bMC05XSB8IDAuWzAtOV0uKiB8IDAuMVswLTddIHwgMC4xWzAtN10uKikgXAorCSAgICAgICAgICAgICAkKE1TR01FUkdFX1VQREFURSkgJChNU0dNRVJHRV9PUFRJT05TKSAkJHtsYW5nfS5wbyAkKERPTUFJTikucG90OzsgXAorCSAgICAgICAgICAgKikgXAorCSAgICAgICAgICAgICAkKE1TR01FUkdFX1VQREFURSkgJChNU0dNRVJHRV9PUFRJT05TKSAtLWxhbmc9JCR7bGFuZ30gJCR7bGFuZ30ucG8gJChET01BSU4pLnBvdDs7IFwKKwkgICAgICAgICBlc2FjOyBcCisJICAgICAgIH07IFwKKwllbHNlIFwKKwkgICQoTUFLRSkgJCR7bGFuZ30ucG8tY3JlYXRlOyBcCisJZmkKKworCitpbnN0YWxsOiBpbnN0YWxsLWV4ZWMgaW5zdGFsbC1kYXRhCitpbnN0YWxsLWV4ZWM6CitpbnN0YWxsLWRhdGE6IGluc3RhbGwtZGF0YS1AVVNFX05MU0AKKwlpZiB0ZXN0ICIkKFBBQ0tBR0UpIiA9ICJnZXR0ZXh0LXRvb2xzIjsgdGhlbiBcCisJICAkKG1rZGlyX3ApICQoREVTVERJUikkKGdldHRleHRzcmNkaXIpOyBcCisJICBmb3IgZmlsZSBpbiAkKERJU1RGSUxFUy5jb21tb24pIE1ha2V2YXJzLnRlbXBsYXRlOyBkbyBcCisJICAgICQoSU5TVEFMTF9EQVRBKSAkKHNyY2RpcikvJCRmaWxlIFwKKwkJCSAgICAkKERFU1RESVIpJChnZXR0ZXh0c3JjZGlyKS8kJGZpbGU7IFwKKwkgIGRvbmU7IFwKKwkgIGZvciBmaWxlIGluIE1ha2V2YXJzOyBkbyBcCisJICAgIHJtIC1mICQoREVTVERJUikkKGdldHRleHRzcmNkaXIpLyQkZmlsZTsgXAorCSAgZG9uZTsgXAorCWVsc2UgXAorCSAgOiA7IFwKKwlmaQoraW5zdGFsbC1kYXRhLW5vOiBhbGwKK2luc3RhbGwtZGF0YS15ZXM6IGFsbAorCUBjYXRhbG9ncz0nJChDQVRBTE9HUyknOyBcCisJZm9yIGNhdCBpbiAkJGNhdGFsb2dzOyBkbyBcCisJICBjYXQ9YGJhc2VuYW1lICQkY2F0YDsgXAorCSAgbGFuZz1gZWNobyAkJGNhdCB8IHNlZCAtZSAncy9cLmdtbyQkLy8nYDsgXAorCSAgZGlyPSQobG9jYWxlZGlyKS8kJGxhbmcvTENfTUVTU0FHRVM7IFwKKwkgICQobWtkaXJfcCkgJChERVNURElSKSQkZGlyOyBcCisJICBpZiB0ZXN0IC1yICQkY2F0OyB0aGVuIHJlYWxjYXQ9JCRjYXQ7IGVsc2UgcmVhbGNhdD0kKHNyY2RpcikvJCRjYXQ7IGZpOyBcCisJICAkKElOU1RBTExfREFUQSkgJCRyZWFsY2F0ICQoREVTVERJUikkJGRpci8kKERPTUFJTikubW87IFwKKwkgIGVjaG8gImluc3RhbGxpbmcgJCRyZWFsY2F0IGFzICQoREVTVERJUikkJGRpci8kKERPTUFJTikubW8iOyBcCisJICBmb3IgbGMgaW4gJycgJChFWFRSQV9MT0NBTEVfQ0FURUdPUklFUyk7IGRvIFwKKwkgICAgaWYgdGVzdCAtbiAiJCRsYyI7IHRoZW4gXAorCSAgICAgIGlmIChjZCAkKERFU1RESVIpJChsb2NhbGVkaXIpLyQkbGFuZyAmJiBMQ19BTEw9QyBscyAtbCAtZCAkJGxjIDI+L2Rldi9udWxsKSB8IGdyZXAgJyAtPiAnID4vZGV2L251bGw7IHRoZW4gXAorCSAgICAgICAgbGluaz1gY2QgJChERVNURElSKSQobG9jYWxlZGlyKS8kJGxhbmcgJiYgTENfQUxMPUMgbHMgLWwgLWQgJCRsYyB8IHNlZCAtZSAncy9eLiogLT4gLy8nYDsgXAorCSAgICAgICAgbXYgJChERVNURElSKSQobG9jYWxlZGlyKS8kJGxhbmcvJCRsYyAkKERFU1RESVIpJChsb2NhbGVkaXIpLyQkbGFuZy8kJGxjLm9sZDsgXAorCSAgICAgICAgbWtkaXIgJChERVNURElSKSQobG9jYWxlZGlyKS8kJGxhbmcvJCRsYzsgXAorCSAgICAgICAgKGNkICQoREVTVERJUikkKGxvY2FsZWRpcikvJCRsYW5nLyQkbGMub2xkICYmIFwKKwkgICAgICAgICBmb3IgZmlsZSBpbiAqOyBkbyBcCisJICAgICAgICAgICBpZiB0ZXN0IC1mICQkZmlsZTsgdGhlbiBcCisJICAgICAgICAgICAgIGxuIC1zIC4uLyQkbGluay8kJGZpbGUgJChERVNURElSKSQobG9jYWxlZGlyKS8kJGxhbmcvJCRsYy8kJGZpbGU7IFwKKwkgICAgICAgICAgIGZpOyBcCisJICAgICAgICAgZG9uZSk7IFwKKwkgICAgICAgIHJtIC1mICQoREVTVERJUikkKGxvY2FsZWRpcikvJCRsYW5nLyQkbGMub2xkOyBcCisJICAgICAgZWxzZSBcCisJICAgICAgICBpZiB0ZXN0IC1kICQoREVTVERJUikkKGxvY2FsZWRpcikvJCRsYW5nLyQkbGM7IHRoZW4gXAorCSAgICAgICAgICA6OyBcCisJICAgICAgICBlbHNlIFwKKwkgICAgICAgICAgcm0gLWYgJChERVNURElSKSQobG9jYWxlZGlyKS8kJGxhbmcvJCRsYzsgXAorCSAgICAgICAgICBta2RpciAkKERFU1RESVIpJChsb2NhbGVkaXIpLyQkbGFuZy8kJGxjOyBcCisJICAgICAgICBmaTsgXAorCSAgICAgIGZpOyBcCisJICAgICAgcm0gLWYgJChERVNURElSKSQobG9jYWxlZGlyKS8kJGxhbmcvJCRsYy8kKERPTUFJTikubW87IFwKKwkgICAgICBsbiAtcyAuLi9MQ19NRVNTQUdFUy8kKERPTUFJTikubW8gJChERVNURElSKSQobG9jYWxlZGlyKS8kJGxhbmcvJCRsYy8kKERPTUFJTikubW8gMj4vZGV2L251bGwgfHwgXAorCSAgICAgIGxuICQoREVTVERJUikkKGxvY2FsZWRpcikvJCRsYW5nL0xDX01FU1NBR0VTLyQoRE9NQUlOKS5tbyAkKERFU1RESVIpJChsb2NhbGVkaXIpLyQkbGFuZy8kJGxjLyQoRE9NQUlOKS5tbyAyPi9kZXYvbnVsbCB8fCBcCisJICAgICAgY3AgLXAgJChERVNURElSKSQobG9jYWxlZGlyKS8kJGxhbmcvTENfTUVTU0FHRVMvJChET01BSU4pLm1vICQoREVTVERJUikkKGxvY2FsZWRpcikvJCRsYW5nLyQkbGMvJChET01BSU4pLm1vOyBcCisJICAgICAgZWNobyAiaW5zdGFsbGluZyAkJHJlYWxjYXQgbGluayBhcyAkKERFU1RESVIpJChsb2NhbGVkaXIpLyQkbGFuZy8kJGxjLyQoRE9NQUlOKS5tbyI7IFwKKwkgICAgZmk7IFwKKwkgIGRvbmU7IFwKKwlkb25lCisKK2luc3RhbGwtc3RyaXA6IGluc3RhbGwKKworaW5zdGFsbGRpcnM6IGluc3RhbGxkaXJzLWV4ZWMgaW5zdGFsbGRpcnMtZGF0YQoraW5zdGFsbGRpcnMtZXhlYzoKK2luc3RhbGxkaXJzLWRhdGE6IGluc3RhbGxkaXJzLWRhdGEtQFVTRV9OTFNACisJaWYgdGVzdCAiJChQQUNLQUdFKSIgPSAiZ2V0dGV4dC10b29scyI7IHRoZW4gXAorCSAgJChta2Rpcl9wKSAkKERFU1RESVIpJChnZXR0ZXh0c3JjZGlyKTsgXAorCWVsc2UgXAorCSAgOiA7IFwKKwlmaQoraW5zdGFsbGRpcnMtZGF0YS1ubzoKK2luc3RhbGxkaXJzLWRhdGEteWVzOgorCUBjYXRhbG9ncz0nJChDQVRBTE9HUyknOyBcCisJZm9yIGNhdCBpbiAkJGNhdGFsb2dzOyBkbyBcCisJICBjYXQ9YGJhc2VuYW1lICQkY2F0YDsgXAorCSAgbGFuZz1gZWNobyAkJGNhdCB8IHNlZCAtZSAncy9cLmdtbyQkLy8nYDsgXAorCSAgZGlyPSQobG9jYWxlZGlyKS8kJGxhbmcvTENfTUVTU0FHRVM7IFwKKwkgICQobWtkaXJfcCkgJChERVNURElSKSQkZGlyOyBcCisJICBmb3IgbGMgaW4gJycgJChFWFRSQV9MT0NBTEVfQ0FURUdPUklFUyk7IGRvIFwKKwkgICAgaWYgdGVzdCAtbiAiJCRsYyI7IHRoZW4gXAorCSAgICAgIGlmIChjZCAkKERFU1RESVIpJChsb2NhbGVkaXIpLyQkbGFuZyAmJiBMQ19BTEw9QyBscyAtbCAtZCAkJGxjIDI+L2Rldi9udWxsKSB8IGdyZXAgJyAtPiAnID4vZGV2L251bGw7IHRoZW4gXAorCSAgICAgICAgbGluaz1gY2QgJChERVNURElSKSQobG9jYWxlZGlyKS8kJGxhbmcgJiYgTENfQUxMPUMgbHMgLWwgLWQgJCRsYyB8IHNlZCAtZSAncy9eLiogLT4gLy8nYDsgXAorCSAgICAgICAgbXYgJChERVNURElSKSQobG9jYWxlZGlyKS8kJGxhbmcvJCRsYyAkKERFU1RESVIpJChsb2NhbGVkaXIpLyQkbGFuZy8kJGxjLm9sZDsgXAorCSAgICAgICAgbWtkaXIgJChERVNURElSKSQobG9jYWxlZGlyKS8kJGxhbmcvJCRsYzsgXAorCSAgICAgICAgKGNkICQoREVTVERJUikkKGxvY2FsZWRpcikvJCRsYW5nLyQkbGMub2xkICYmIFwKKwkgICAgICAgICBmb3IgZmlsZSBpbiAqOyBkbyBcCisJICAgICAgICAgICBpZiB0ZXN0IC1mICQkZmlsZTsgdGhlbiBcCisJICAgICAgICAgICAgIGxuIC1zIC4uLyQkbGluay8kJGZpbGUgJChERVNURElSKSQobG9jYWxlZGlyKS8kJGxhbmcvJCRsYy8kJGZpbGU7IFwKKwkgICAgICAgICAgIGZpOyBcCisJICAgICAgICAgZG9uZSk7IFwKKwkgICAgICAgIHJtIC1mICQoREVTVERJUikkKGxvY2FsZWRpcikvJCRsYW5nLyQkbGMub2xkOyBcCisJICAgICAgZWxzZSBcCisJICAgICAgICBpZiB0ZXN0IC1kICQoREVTVERJUikkKGxvY2FsZWRpcikvJCRsYW5nLyQkbGM7IHRoZW4gXAorCSAgICAgICAgICA6OyBcCisJICAgICAgICBlbHNlIFwKKwkgICAgICAgICAgcm0gLWYgJChERVNURElSKSQobG9jYWxlZGlyKS8kJGxhbmcvJCRsYzsgXAorCSAgICAgICAgICBta2RpciAkKERFU1RESVIpJChsb2NhbGVkaXIpLyQkbGFuZy8kJGxjOyBcCisJICAgICAgICBmaTsgXAorCSAgICAgIGZpOyBcCisJICAgIGZpOyBcCisJICBkb25lOyBcCisJZG9uZQorCisjIERlZmluZSB0aGlzIGFzIGVtcHR5IHVudGlsIEkgZm91bmQgYSB1c2VmdWwgYXBwbGljYXRpb24uCitpbnN0YWxsY2hlY2s6CisKK3VuaW5zdGFsbDogdW5pbnN0YWxsLWV4ZWMgdW5pbnN0YWxsLWRhdGEKK3VuaW5zdGFsbC1leGVjOgordW5pbnN0YWxsLWRhdGE6IHVuaW5zdGFsbC1kYXRhLUBVU0VfTkxTQAorCWlmIHRlc3QgIiQoUEFDS0FHRSkiID0gImdldHRleHQtdG9vbHMiOyB0aGVuIFwKKwkgIGZvciBmaWxlIGluICQoRElTVEZJTEVTLmNvbW1vbikgTWFrZXZhcnMudGVtcGxhdGU7IGRvIFwKKwkgICAgcm0gLWYgJChERVNURElSKSQoZ2V0dGV4dHNyY2RpcikvJCRmaWxlOyBcCisJICBkb25lOyBcCisJZWxzZSBcCisJICA6IDsgXAorCWZpCit1bmluc3RhbGwtZGF0YS1ubzoKK3VuaW5zdGFsbC1kYXRhLXllczoKKwljYXRhbG9ncz0nJChDQVRBTE9HUyknOyBcCisJZm9yIGNhdCBpbiAkJGNhdGFsb2dzOyBkbyBcCisJICBjYXQ9YGJhc2VuYW1lICQkY2F0YDsgXAorCSAgbGFuZz1gZWNobyAkJGNhdCB8IHNlZCAtZSAncy9cLmdtbyQkLy8nYDsgXAorCSAgZm9yIGxjIGluIExDX01FU1NBR0VTICQoRVhUUkFfTE9DQUxFX0NBVEVHT1JJRVMpOyBkbyBcCisJICAgIHJtIC1mICQoREVTVERJUikkKGxvY2FsZWRpcikvJCRsYW5nLyQkbGMvJChET01BSU4pLm1vOyBcCisJICBkb25lOyBcCisJZG9uZQorCitjaGVjazogYWxsCisKK2luZm8gZHZpIHBzIHBkZiBodG1sIHRhZ3MgVEFHUyBjdGFncyBDVEFHUyBJRDoKKworbW9zdGx5Y2xlYW46CisJcm0gLWYgcmVtb3ZlLXBvdGNkYXRlLnNlZAorCXJtIC1mIHN0YW1wLXBvVAorCXJtIC1mIGNvcmUgY29yZS4qICQoRE9NQUlOKS5wbyAkKERPTUFJTikuMXBvICQoRE9NQUlOKS4ycG8gKi5uZXcucG8KKwlybSAtZnIgKi5vCisKK2NsZWFuOiBtb3N0bHljbGVhbgorCitkaXN0Y2xlYW46IGNsZWFuCisJcm0gLWYgTWFrZWZpbGUgTWFrZWZpbGUuaW4gUE9URklMRVMgKi5tbworCittYWludGFpbmVyLWNsZWFuOiBkaXN0Y2xlYW4KKwlAZWNobyAiVGhpcyBjb21tYW5kIGlzIGludGVuZGVkIGZvciBtYWludGFpbmVycyB0byB1c2U7IgorCUBlY2hvICJpdCBkZWxldGVzIGZpbGVzIHRoYXQgbWF5IHJlcXVpcmUgc3BlY2lhbCB0b29scyB0byByZWJ1aWxkLiIKKwlybSAtZiBzdGFtcC1wbyAkKEdNT0ZJTEVTKQorCitkaXN0ZGlyID0gJCh0b3BfYnVpbGRkaXIpLyQoUEFDS0FHRSktJChWRVJTSU9OKS8kKHN1YmRpcikKK2Rpc3QgZGlzdGRpcjoKKwkkKE1BS0UpIHVwZGF0ZS1wbworCUAkKE1BS0UpIGRpc3QyCisjIFRoaXMgaXMgYSBzZXBhcmF0ZSB0YXJnZXQgYmVjYXVzZSAndXBkYXRlLXBvJyBtdXN0IGJlIGV4ZWN1dGVkIGJlZm9yZS4KK2Rpc3QyOiBzdGFtcC1wbyAkKERJU1RGSUxFUykKKwlkaXN0cz0iJChESVNURklMRVMpIjsgXAorCWlmIHRlc3QgIiQoUEFDS0FHRSkiID0gImdldHRleHQtdG9vbHMiOyB0aGVuIFwKKwkgIGRpc3RzPSIkJGRpc3RzIE1ha2V2YXJzLnRlbXBsYXRlIjsgXAorCWZpOyBcCisJaWYgdGVzdCAtZiAkKHNyY2RpcikvJChET01BSU4pLnBvdDsgdGhlbiBcCisJICBkaXN0cz0iJCRkaXN0cyAkKERPTUFJTikucG90IHN0YW1wLXBvIjsgXAorCWZpOyBcCisJaWYgdGVzdCAtZiAkKHNyY2RpcikvQ2hhbmdlTG9nOyB0aGVuIFwKKwkgIGRpc3RzPSIkJGRpc3RzIENoYW5nZUxvZyI7IFwKKwlmaTsgXAorCWZvciBpIGluIDAgMSAyIDMgNCA1IDYgNyA4IDk7IGRvIFwKKwkgIGlmIHRlc3QgLWYgJChzcmNkaXIpL0NoYW5nZUxvZy4kJGk7IHRoZW4gXAorCSAgICBkaXN0cz0iJCRkaXN0cyBDaGFuZ2VMb2cuJCRpIjsgXAorCSAgZmk7IFwKKwlkb25lOyBcCisJaWYgdGVzdCAtZiAkKHNyY2RpcikvTElOR1VBUzsgdGhlbiBkaXN0cz0iJCRkaXN0cyBMSU5HVUFTIjsgZmk7IFwKKwlmb3IgZmlsZSBpbiAkJGRpc3RzOyBkbyBcCisJICBpZiB0ZXN0IC1mICQkZmlsZTsgdGhlbiBcCisJICAgIGNwIC1wICQkZmlsZSAkKGRpc3RkaXIpIHx8IGV4aXQgMTsgXAorCSAgZWxzZSBcCisJICAgIGNwIC1wICQoc3JjZGlyKS8kJGZpbGUgJChkaXN0ZGlyKSB8fCBleGl0IDE7IFwKKwkgIGZpOyBcCisJZG9uZQorCit1cGRhdGUtcG86IE1ha2VmaWxlCisJJChNQUtFKSAkKERPTUFJTikucG90LXVwZGF0ZQorCXRlc3QgLXogIiQoVVBEQVRFUE9GSUxFUykiIHx8ICQoTUFLRSkgJChVUERBVEVQT0ZJTEVTKQorCSQoTUFLRSkgdXBkYXRlLWdtbworCisjIEdlbmVyYWwgcnVsZSBmb3IgY3JlYXRpbmcgUE8gZmlsZXMuCisKKy5ub3AucG8tY3JlYXRlOgorCUBsYW5nPWBlY2hvICRAIHwgc2VkIC1lICdzL1wucG8tY3JlYXRlJCQvLydgOyBcCisJZWNobyAiRmlsZSAkJGxhbmcucG8gZG9lcyBub3QgZXhpc3QuIElmIHlvdSBhcmUgYSB0cmFuc2xhdG9yLCB5b3UgY2FuIGNyZWF0ZSBpdCB0aHJvdWdoICdtc2dpbml0Jy4iIDE+JjI7IFwKKwlleGl0IDEKKworIyBHZW5lcmFsIHJ1bGUgZm9yIHVwZGF0aW5nIFBPIGZpbGVzLgorCisubm9wLnBvLXVwZGF0ZToKKwlAbGFuZz1gZWNobyAkQCB8IHNlZCAtZSAncy9cLnBvLXVwZGF0ZSQkLy8nYDsgXAorCWlmIHRlc3QgIiQoUEFDS0FHRSkiID0gImdldHRleHQtdG9vbHMiOyB0aGVuIFBBVEg9YHB3ZGAvLi4vc3JjOiQkUEFUSDsgZmk7IFwKKwl0bXBkaXI9YHB3ZGA7IFwKKwllY2hvICIkJGxhbmc6IjsgXAorCXRlc3QgIiQoc3JjZGlyKSIgPSAuICYmIGNkY21kPSIiIHx8IGNkY21kPSJjZCAkKHNyY2RpcikgJiYgIjsgXAorCWVjaG8gIiQke2NkY21kfSQoTVNHTUVSR0UpICQoTVNHTUVSR0VfT1BUSU9OUykgLS1sYW5nPSQkbGFuZyAkJGxhbmcucG8gJChET01BSU4pLnBvdCAtbyAkJGxhbmcubmV3LnBvIjsgXAorCWNkICQoc3JjZGlyKTsgXAorCWlmIHsgY2FzZSBgJChNU0dNRVJHRSkgLS12ZXJzaW9uIHwgc2VkIDFxIHwgc2VkIC1lICdzLF5bXjAtOV0qLCwnYCBpbiBcCisJICAgICAgICcnIHwgMC5bMC05XSB8IDAuWzAtOV0uKiB8IDAuMVswLTddIHwgMC4xWzAtN10uKikgXAorCSAgICAgICAgICQoTVNHTUVSR0UpICQoTVNHTUVSR0VfT1BUSU9OUykgLW8gJCR0bXBkaXIvJCRsYW5nLm5ldy5wbyAkJGxhbmcucG8gJChET01BSU4pLnBvdDs7IFwKKwkgICAgICAgKikgXAorCSAgICAgICAgICQoTVNHTUVSR0UpICQoTVNHTUVSR0VfT1BUSU9OUykgLS1sYW5nPSQkbGFuZyAtbyAkJHRtcGRpci8kJGxhbmcubmV3LnBvICQkbGFuZy5wbyAkKERPTUFJTikucG90OzsgXAorCSAgICAgZXNhYzsgXAorCSAgIH07IHRoZW4gXAorCSAgaWYgY21wICQkbGFuZy5wbyAkJHRtcGRpci8kJGxhbmcubmV3LnBvID4vZGV2L251bGwgMj4mMTsgdGhlbiBcCisJICAgIHJtIC1mICQkdG1wZGlyLyQkbGFuZy5uZXcucG87IFwKKwkgIGVsc2UgXAorCSAgICBpZiBtdiAtZiAkJHRtcGRpci8kJGxhbmcubmV3LnBvICQkbGFuZy5wbzsgdGhlbiBcCisJICAgICAgOjsgXAorCSAgICBlbHNlIFwKKwkgICAgICBlY2hvICJtc2dtZXJnZSBmb3IgJCRsYW5nLnBvIGZhaWxlZDogY2Fubm90IG1vdmUgJCR0bXBkaXIvJCRsYW5nLm5ldy5wbyB0byAkJGxhbmcucG8iIDE+JjI7IFwKKwkgICAgICBleGl0IDE7IFwKKwkgICAgZmk7IFwKKwkgIGZpOyBcCisJZWxzZSBcCisJICBlY2hvICJtc2dtZXJnZSBmb3IgJCRsYW5nLnBvIGZhaWxlZCEiIDE+JjI7IFwKKwkgIHJtIC1mICQkdG1wZGlyLyQkbGFuZy5uZXcucG87IFwKKwlmaQorCiskKERVTU1ZUE9GSUxFUyk6CisKK3VwZGF0ZS1nbW86IE1ha2VmaWxlICQoR01PRklMRVMpCisJQDoKKworIyBSZWNyZWF0ZSBNYWtlZmlsZSBieSBpbnZva2luZyBjb25maWcuc3RhdHVzLiBFeHBsaWNpdGx5IGludm9rZSB0aGUgc2hlbGwsCisjIGJlY2F1c2UgZXhlY3V0aW9uIHBlcm1pc3Npb24gYml0cyBtYXkgbm90IHdvcmsgb24gdGhlIGN1cnJlbnQgZmlsZSBzeXN0ZW0uCisjIFVzZSBAU0hFTExALCB3aGljaCBpcyB0aGUgc2hlbGwgZGV0ZXJtaW5lZCBieSBhdXRvY29uZiBmb3IgdGhlIHVzZSBieSBpdHMKKyMgc2NyaXB0cywgbm90ICQoU0hFTEwpIHdoaWNoIGlzIGhhcmR3aXJlZCB0byAvYmluL3NoIGFuZCBtYXkgYmUgZGVmaWNpZW50LgorTWFrZWZpbGU6IE1ha2VmaWxlLmluLmluIE1ha2V2YXJzICQodG9wX2J1aWxkZGlyKS9jb25maWcuc3RhdHVzIEBQT01BS0VGSUxFREVQU0AKKwljZCAkKHRvcF9idWlsZGRpcikgXAorCSAgJiYgQFNIRUxMQCAuL2NvbmZpZy5zdGF0dXMgJChzdWJkaXIpLyRALmluIHBvLWRpcmVjdG9yaWVzCisKK2ZvcmNlOgorCisjIFRlbGwgdmVyc2lvbnMgWzMuNTksMy42Mykgb2YgR05VIG1ha2Ugbm90IHRvIGV4cG9ydCBhbGwgdmFyaWFibGVzLgorIyBPdGhlcndpc2UgYSBzeXN0ZW0gbGltaXQgKGZvciBTeXNWIGF0IGxlYXN0KSBtYXkgYmUgZXhjZWVkZWQuCisuTk9FWFBPUlQ6CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3BvL01ha2V2YXJzIGIvZHBrZy0xLjE2LjEuMS9wby9NYWtldmFycwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yMjU0MWM2Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9wby9NYWtldmFycwpAQCAtMCwwICsxLDQ2IEBACisjIE1ha2VmaWxlIHZhcmlhYmxlcyBmb3IgUE8gZGlyZWN0b3J5IGluIGFueSBwYWNrYWdlIHVzaW5nIEdOVSBnZXR0ZXh0LgorCisjIFVzdWFsbHkgdGhlIG1lc3NhZ2UgZG9tYWluIGlzIHRoZSBzYW1lIGFzIHRoZSBwYWNrYWdlIG5hbWUuCitET01BSU4gPSAkKFBBQ0tBR0UpCisKKyMgVGhlc2UgdHdvIHZhcmlhYmxlcyBkZXBlbmQgb24gdGhlIGxvY2F0aW9uIG9mIHRoaXMgZGlyZWN0b3J5Lgorc3ViZGlyID0gcG8KK3RvcF9idWlsZGRpciA9IC4uCisKKyMgVGhlc2Ugb3B0aW9ucyBnZXQgcGFzc2VkIHRvIHhnZXR0ZXh0LgorWEdFVFRFWFRfT1BUSU9OUyA9IC0tZnJvbS1jb2RlPVVURi04IC0ta2V5d29yZD1fIC0ta2V5d29yZD1OXyBcCisgICAgICAgICAgICAgICAgICAgLS1rZXl3b3JkPVBfOjEsMiAtLWtleXdvcmQ9Q186MWMsMgorCitNU0dNRVJHRV9PUFRJT05TID0gLS1wcmV2aW91cworCisjIFRoaXMgaXMgdGhlIGNvcHlyaWdodCBob2xkZXIgdGhhdCBnZXRzIGluc2VydGVkIGludG8gdGhlIGhlYWRlciBvZiB0aGUKKyMgJChET01BSU4pLnBvdCBmaWxlLiAgU2V0IHRoaXMgdG8gdGhlIGNvcHlyaWdodCBob2xkZXIgb2YgdGhlIHN1cnJvdW5kaW5nCisjIHBhY2thZ2UuICAoTm90ZSB0aGF0IHRoZSBtc2dzdHIgc3RyaW5ncywgZXh0cmFjdGVkIGZyb20gdGhlIHBhY2thZ2UncworIyBzb3VyY2VzLCBiZWxvbmcgdG8gdGhlIGNvcHlyaWdodCBob2xkZXIgb2YgdGhlIHBhY2thZ2UuKSAgVHJhbnNsYXRvcnMgYXJlCisjIGV4cGVjdGVkIHRvIHRyYW5zZmVyIHRoZSBjb3B5cmlnaHQgZm9yIHRoZWlyIHRyYW5zbGF0aW9ucyB0byB0aGlzIHBlcnNvbgorIyBvciBlbnRpdHksIG9yIHRvIGRpc2NsYWltIHRoZWlyIGNvcHlyaWdodC4gIFRoZSBlbXB0eSBzdHJpbmcgc3RhbmRzIGZvcgorIyB0aGUgcHVibGljIGRvbWFpbjsgaW4gdGhpcyBjYXNlIHRoZSB0cmFuc2xhdG9ycyBhcmUgZXhwZWN0ZWQgdG8gZGlzY2xhaW0KKyMgdGhlaXIgY29weXJpZ2h0LgorQ09QWVJJR0hUX0hPTERFUiA9IFNvZnR3YXJlIGluIHRoZSBQdWJsaWMgSW50ZXJlc3QsIEluYy4KKworIyBUaGlzIGlzIHRoZSBlbWFpbCBhZGRyZXNzIG9yIFVSTCB0byB3aGljaCB0aGUgdHJhbnNsYXRvcnMgc2hhbGwgcmVwb3J0CisjIGJ1Z3MgaW4gdGhlIHVudHJhbnNsYXRlZCBzdHJpbmdzOgorIyAtIFN0cmluZ3Mgd2hpY2ggYXJlIG5vdCBlbnRpcmUgc2VudGVuY2VzLCBzZWUgdGhlIG1haW50YWluZXIgZ3VpZGVsaW5lcworIyAgIGluIHRoZSBHTlUgZ2V0dGV4dCBkb2N1bWVudGF0aW9uLCBzZWN0aW9uICdQcmVwYXJpbmcgU3RyaW5ncycuCisjIC0gU3RyaW5ncyB3aGljaCB1c2UgdW5jbGVhciB0ZXJtcyBvciByZXF1aXJlIGFkZGl0aW9uYWwgY29udGV4dCB0byBiZQorIyAgIHVuZGVyc3Rvb2QuCisjIC0gU3RyaW5ncyB3aGljaCBtYWtlIGludmFsaWQgYXNzdW1wdGlvbnMgYWJvdXQgbm90YXRpb24gb2YgZGF0ZSwgdGltZSBvcgorIyAgIG1vbmV5LgorIyAtIFBsdXJhbGlzYXRpb24gcHJvYmxlbXMuCisjIC0gSW5jb3JyZWN0IEVuZ2xpc2ggc3BlbGxpbmcuCisjIC0gSW5jb3JyZWN0IGZvcm1hdHRpbmcuCisjIEl0IGNhbiBiZSB5b3VyIGVtYWlsIGFkZHJlc3MsIG9yIGEgbWFpbGluZyBsaXN0IGFkZHJlc3Mgd2hlcmUgdHJhbnNsYXRvcnMKKyMgY2FuIHdyaXRlIHRvIHdpdGhvdXQgYmVpbmcgc3Vic2NyaWJlZCwgb3IgdGhlIFVSTCBvZiBhIHdlYiBwYWdlIHRocm91Z2gKKyMgd2hpY2ggdGhlIHRyYW5zbGF0b3JzIGNhbiBjb250YWN0IHlvdS4KK01TR0lEX0JVR1NfQUREUkVTUyA9IGRlYmlhbi1kcGtnQGxpc3RzLmRlYmlhbi5vcmcKKworIyBUaGlzIGlzIHRoZSBsaXN0IG9mIGxvY2FsZSBjYXRlZ29yaWVzLCBiZXlvbmQgTENfTUVTU0FHRVMsIGZvciB3aGljaCB0aGUKKyMgbWVzc2FnZSBjYXRhbG9ncyBzaGFsbCBiZSB1c2VkLiAgSXQgaXMgdXN1YWxseSBlbXB0eS4KK0VYVFJBX0xPQ0FMRV9DQVRFR09SSUVTID0KKworRElTVEZJTEVTLmV4dHJhMSA9IENoYW5nZUxvZy5vbGQKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvcG8vUE9URklMRVMuaW4gYi9kcGtnLTEuMTYuMS4xL3BvL1BPVEZJTEVTLmluCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmM3ZGQ3MDQKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3BvL1BPVEZJTEVTLmluCkBAIC0wLDAgKzEsNzYgQEAKKyMgVGhpcyBpcyB0aGUgbGlzdCBvZiBhbGwgc291cmNlIGZpbGVzIHdpdGggdHJhbnNsYXRhYmxlIHN0cmluZ3MuCisKK2xpYi9kcGtnL2FyLmMKK2xpYi9kcGtnL2J1ZmZlci5jCitsaWIvZHBrZy9jbGVhbnVwLmMKK2xpYi9kcGtnL2NvbW1hbmQuYworbGliL2Rwa2cvY29tcHJlc3MuYworbGliL2Rwa2cvZGJtb2RpZnkuYworbGliL2Rwa2cvZGlyLmMKK2xpYi9kcGtnL2R1bXAuYworbGliL2Rwa2cvZWhhbmRsZS5jCitsaWIvZHBrZy9maWVsZHMuYworbGliL2Rwa2cvZmlsZS5jCitsaWIvZHBrZy9nbG9iLmMKK2xpYi9kcGtnL2xvZy5jCitsaWIvZHBrZy9tZDUuYworbGliL2Rwa2cvbWxpYi5jCitsaWIvZHBrZy9uZm1hbGxvYy5jCitsaWIvZHBrZy9vcHRpb25zLmMKK2xpYi9kcGtnL3BhcnNlLmMKK2xpYi9kcGtnL3BhcnNlaGVscC5jCitsaWIvZHBrZy9wYXRoLmMKK2xpYi9kcGtnL3BrZy5jCitsaWIvZHBrZy9wa2ctYXJyYXkuYworbGliL2Rwa2cvcGtnLWRiLmMKK2xpYi9kcGtnL3BrZy1mb3JtYXQuYworbGliL2Rwa2cvcGtnLWxpc3QuYworbGliL2Rwa2cvcGtnLXF1ZXVlLmMKK2xpYi9kcGtnL3BrZy1zaG93LmMKK2xpYi9kcGtnL3Byb2dyZXNzLmMKK2xpYi9kcGtnL3N0cmluZy5jCitsaWIvZHBrZy9zdWJwcm9jLmMKK2xpYi9kcGtnL3RhcmZuLmMKK2xpYi9kcGtnL3RyaWdkZWZlcnJlZC5sCitsaWIvZHBrZy90cmlnbGliLmMKK2xpYi9kcGtnL3RyaWduYW1lLmMKK2xpYi9kcGtnL3V0aWxzLmMKK2xpYi9kcGtnL3ZhcmJ1Zi5jCitsaWIvZHBrZy92ZXJjbXAuYworCitzcmMvYXJjaGl2ZXMuYworc3JjL2NsZWFudXAuYworc3JjL2NvbmZpZ3VyZS5jCitzcmMvZGVwY29uLmMKK3NyYy9kaXZlcnRjbWQuYworc3JjL2RpdmVydGRiLmMKK3NyYy9lbnF1aXJ5LmMKK3NyYy9lcnJvcnMuYworc3JjL2ZpbGVzZGIuYworc3JjL2hlbHAuYworc3JjL2luZm9kYi5jCitzcmMvbWFpbi5jCitzcmMvcGFja2FnZXMuYworc3JjL3Byb2Nlc3NhcmMuYworc3JjL3F1ZXJ5Y21kLmMKK3NyYy9yZW1vdmUuYworc3JjL3NlbGVjdC5jCitzcmMvc3RhdGNtZC5jCitzcmMvc3RhdGRiLmMKK3NyYy90cmlnY21kLmMKK3NyYy90cmlncHJvYy5jCitzcmMvdXBkYXRlLmMKKworZHBrZy1kZWIvYnVpbGQuYworZHBrZy1kZWIvZXh0cmFjdC5jCitkcGtnLWRlYi9pbmZvLmMKK2Rwa2ctZGViL21haW4uYworCitkcGtnLXNwbGl0L2luZm8uYworZHBrZy1zcGxpdC9qb2luLmMKK2Rwa2ctc3BsaXQvbWFpbi5jCitkcGtnLXNwbGl0L3F1ZXVlLmMKK2Rwa2ctc3BsaXQvc3BsaXQuYworCit1dGlscy9zdGFydC1zdG9wLWRhZW1vbi5jCit1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmMKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvcG8vUnVsZXMtcXVvdCBiL2Rwa2ctMS4xNi4xLjEvcG8vUnVsZXMtcXVvdApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hZjUyNDg3Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9wby9SdWxlcy1xdW90CkBAIC0wLDAgKzEsNDcgQEAKKyMgU3BlY2lhbCBNYWtlZmlsZSBydWxlcyBmb3IgRW5nbGlzaCBtZXNzYWdlIGNhdGFsb2dzIHdpdGggcXVvdGF0aW9uIG1hcmtzLgorCitESVNURklMRVMuY29tbW9uLmV4dHJhMSA9IHF1b3Quc2VkIGJvbGRxdW90LnNlZCBlbkBxdW90LmhlYWRlciBlbkBib2xkcXVvdC5oZWFkZXIgaW5zZXJ0LWhlYWRlci5zaW4gUnVsZXMtcXVvdAorCisuU1VGRklYRVM6IC5pbnNlcnQtaGVhZGVyIC5wby11cGRhdGUtZW4KKworZW5AcXVvdC5wby1jcmVhdGU6CisJJChNQUtFKSBlbkBxdW90LnBvLXVwZGF0ZQorZW5AYm9sZHF1b3QucG8tY3JlYXRlOgorCSQoTUFLRSkgZW5AYm9sZHF1b3QucG8tdXBkYXRlCisKK2VuQHF1b3QucG8tdXBkYXRlOiBlbkBxdW90LnBvLXVwZGF0ZS1lbgorZW5AYm9sZHF1b3QucG8tdXBkYXRlOiBlbkBib2xkcXVvdC5wby11cGRhdGUtZW4KKworLmluc2VydC1oZWFkZXIucG8tdXBkYXRlLWVuOgorCUBsYW5nPWBlY2hvICRAIHwgc2VkIC1lICdzL1wucG8tdXBkYXRlLWVuJCQvLydgOyBcCisJaWYgdGVzdCAiJChQQUNLQUdFKSIgPSAiZ2V0dGV4dCI7IHRoZW4gUEFUSD1gcHdkYC8uLi9zcmM6JCRQQVRIOyBHRVRURVhUTElCRElSPWBjZCAkKHRvcF9zcmNkaXIpL3NyYyAmJiBwd2RgOyBleHBvcnQgR0VUVEVYVExJQkRJUjsgZmk7IFwKKwl0bXBkaXI9YHB3ZGA7IFwKKwllY2hvICIkJGxhbmc6IjsgXAorCWxsPWBlY2hvICQkbGFuZyB8IHNlZCAtZSAncy9ALiovLydgOyBcCisJTENfQUxMPUM7IGV4cG9ydCBMQ19BTEw7IFwKKwljZCAkKHNyY2Rpcik7IFwKKwlpZiAkKE1TR0lOSVQpIC1pICQoRE9NQUlOKS5wb3QgLS1uby10cmFuc2xhdG9yIC1sICQkbGFuZyAtbyAtIDI+L2Rldi9udWxsIHwgc2VkIC1mICQkdG1wZGlyLyQkbGFuZy5pbnNlcnQtaGVhZGVyIHwgJChNU0dDT05WKSAtdCBVVEYtOCB8ICQoTVNHRklMVEVSKSBzZWQgLWYgYGVjaG8gJCRsYW5nIHwgc2VkIC1lICdzLy4qQC8vJ2Auc2VkIDI+L2Rldi9udWxsID4gJCR0bXBkaXIvJCRsYW5nLm5ldy5wbzsgdGhlbiBcCisJICBpZiBjbXAgJCRsYW5nLnBvICQkdG1wZGlyLyQkbGFuZy5uZXcucG8gPi9kZXYvbnVsbCAyPiYxOyB0aGVuIFwKKwkgICAgcm0gLWYgJCR0bXBkaXIvJCRsYW5nLm5ldy5wbzsgXAorCSAgZWxzZSBcCisJICAgIGlmIG12IC1mICQkdG1wZGlyLyQkbGFuZy5uZXcucG8gJCRsYW5nLnBvOyB0aGVuIFwKKwkgICAgICA6OyBcCisJICAgIGVsc2UgXAorCSAgICAgIGVjaG8gImNyZWF0aW9uIG9mICQkbGFuZy5wbyBmYWlsZWQ6IGNhbm5vdCBtb3ZlICQkdG1wZGlyLyQkbGFuZy5uZXcucG8gdG8gJCRsYW5nLnBvIiAxPiYyOyBcCisJICAgICAgZXhpdCAxOyBcCisJICAgIGZpOyBcCisJICBmaTsgXAorCWVsc2UgXAorCSAgZWNobyAiY3JlYXRpb24gb2YgJCRsYW5nLnBvIGZhaWxlZCEiIDE+JjI7IFwKKwkgIHJtIC1mICQkdG1wZGlyLyQkbGFuZy5uZXcucG87IFwKKwlmaQorCitlbkBxdW90Lmluc2VydC1oZWFkZXI6IGluc2VydC1oZWFkZXIuc2luCisJc2VkIC1lICcvXiMvZCcgLWUgJ3MvSEVBREVSL2VuQHF1b3QuaGVhZGVyL2cnICQoc3JjZGlyKS9pbnNlcnQtaGVhZGVyLnNpbiA+IGVuQHF1b3QuaW5zZXJ0LWhlYWRlcgorCitlbkBib2xkcXVvdC5pbnNlcnQtaGVhZGVyOiBpbnNlcnQtaGVhZGVyLnNpbgorCXNlZCAtZSAnL14jL2QnIC1lICdzL0hFQURFUi9lbkBib2xkcXVvdC5oZWFkZXIvZycgJChzcmNkaXIpL2luc2VydC1oZWFkZXIuc2luID4gZW5AYm9sZHF1b3QuaW5zZXJ0LWhlYWRlcgorCittb3N0bHljbGVhbjogbW9zdGx5Y2xlYW4tcXVvdAorbW9zdGx5Y2xlYW4tcXVvdDoKKwlybSAtZiAqLmluc2VydC1oZWFkZXIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvcG8vYXN0LmdtbyBiL2Rwa2ctMS4xNi4xLjEvcG8vYXN0LmdtbwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kN2ZjYzZjCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9wby9hc3QuZ21vCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvcG8vYXN0LnBvIGIvZHBrZy0xLjE2LjEuMS9wby9hc3QucG8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOWViMDZkMQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvcG8vYXN0LnBvCkBAIC0wLDAgKzEsNzQyNSBAQAorIyBkcGtnIHRyYW5zbGF0aW9uIHRvIHRoZSBhc3R1cmlhbiBsYW5ndWFnZQorIyBDb3B5cmlnaHQgKEMpIDIwMDkgU29mdHdhcmUgaW4gdGhlIFB1YmxpYyBJbnRlcmVzdCwgSW5jLgorIyBUaGlzIGZpbGUgaXMgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIHNhbWUgbGljZW5zZSBhcyB0aGUgZHBrZyBwYWNrYWdlLgorIyBNYXJjb3MgQWx2YXJleiBDb3N0YWxlcyA8bWFyY29zLmFsdmFyZXouY29zdGFsZXNAZ21haWwuY29tPiwgMjAwOS4KKyMKKyMKK21zZ2lkICIiCittc2dzdHIgIiIKKyJQcm9qZWN0LUlkLVZlcnNpb246IERlYmlhbiBkcGtnIDEuMTQuMjJcbiIKKyJSZXBvcnQtTXNnaWQtQnVncy1UbzogZGViaWFuLWRwa2dAbGlzdHMuZGViaWFuLm9yZ1xuIgorIlBPVC1DcmVhdGlvbi1EYXRlOiAyMDExLTEwLTE0IDA3OjExKzAyMDBcbiIKKyJQTy1SZXZpc2lvbi1EYXRlOiAyMDA5LTExLTE0IDE3OjQzKzAxMDBcbiIKKyJMYXN0LVRyYW5zbGF0b3I6IE1hcmNvcyBBbHZhcmV6IENvc3RhbGVzIDxtYXJjb3MuYWx2YXJlei5jb3N0YWxlc0BnbWFpbC4iCisiY29tPlxuIgorIkxhbmd1YWdlLVRlYW06IEFzdHVyaWFuIDxzb2Z0YXN0LXhlbmVyYWxAbGlzdHMuc291cmNlZm9yZ2UubmV0PlxuIgorIkxhbmd1YWdlOiBhc3RcbiIKKyJNSU1FLVZlcnNpb246IDEuMFxuIgorIkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD1VVEYtOFxuIgorIkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXRcbiIKKworIzogbGliL2Rwa2cvYXIuYzo2NgorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGNoYXJhY3RlciAnJWMnIGluIGFyY2hpdmUgJyUuMjUwcycgbWVtYmVyICclLjE2cycgc2l6ZSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9hci5jOjgxIGxpYi9kcGtnL2FyLmM6OTcgbGliL2Rwa2cvYXIuYzoxMDggbGliL2Rwa2cvYXIuYzoxMTIKKyM6IGxpYi9kcGtnL2FyLmM6MTM0IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTU0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgZmlsZSAnJXMnIgorbXNnc3RyICJudW4gc2UgcHVlZGUgYWJyaXIgZWwgZmljaGVydSBmb250ZSBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvYXIuYzo5NAorIywgYy1mb3JtYXQKK21zZ2lkICJnZW5lcmF0ZWQgY29ycnVwdCBhciBoZWFkZXIgZm9yICclcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvYXIuYzoxMjMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byBmc3RhdCB0bXBmaWxlIChkYXRhKSIKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgYXIgbWVtYmVyIGZpbGUgKCVzKSIKK21zZ3N0ciAiZmFsbMOzIGFsIGNyaWFyIGVsIGZpY2hlcnUgdG1wZmlsZSAoZGF0YSkiCisKKyM6IGxpYi9kcGtnL2FyLmM6MTMwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gZnN0YXQgdG1wZmlsZSAoZGF0YSkiCittc2dpZCAiYXIgbWVtYmVyIGZpbGUgKCVzKSIKK21zZ3N0ciAiZmFsbMOzIGFsIGNyaWFyIGVsIGZpY2hlcnUgdG1wZmlsZSAoZGF0YSkiCisKKyM6IGxpYi9kcGtnL2J1ZmZlci5jOjE5NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgb24gYnVmZmVyIGNvcHkgZm9yICVzIgorbXNnc3RyICJmYWxsw7MgZW4gYnVmZmVyX2NvcHkgKCVzKSIKKworIzogbGliL2Rwa2cvYnVmZmVyLmM6MjEyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgaW4gd3JpdGUgb24gYnVmZmVyIGNvcHkgZm9yICVzIgorbXNnc3RyICJmYWxsw7MgZW4gYnVmZmVyX2NvcHkgKCVzKSIKKworIzogbGliL2Rwa2cvYnVmZmVyLmM6MjIwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJzaG9ydCByZWFkIG9uIGJ1ZmZlciBjb3B5IGZvciAlcyIKK21zZ3N0ciAibGxlY3R1cmEgaW5zdWZpY2llbnRlIGVuIGJ1ZmZlcl9jb3B5ICglcykiCisKKyM6IGxpYi9kcGtnL2J1ZmZlci5jOjI4OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgdGFyIgorbXNnaWQgImZhaWxlZCB0byBzZWVrICVzIgorbXNnc3RyICJmYWxsw7MgYWwgZXhlY3V0YXIgdGFyIgorCisjOiBsaWIvZHBrZy9jb21tYW5kLmM6MTc4IGxpYi9kcGtnL2NvbW1hbmQuYzoyMDQgc3JjL2hlbHAuYzo2MjEKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTggc3JjL3Byb2Nlc3NhcmMuYzoxMzggc3JjL3Byb2Nlc3NhcmMuYzo0MzIKKyM6IHNyYy9wcm9jZXNzYXJjLmM6ODM5IGRwa2ctZGViL2J1aWxkLmM6NDU5IGRwa2ctZGViL2J1aWxkLmM6NTM4CisjOiBkcGtnLWRlYi9idWlsZC5jOjU2MSBkcGtnLWRlYi9leHRyYWN0LmM6MzE3IGRwa2ctZGViL2luZm8uYzo2NQorIzogZHBrZy1zcGxpdC9zcGxpdC5jOjY5IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo0NTcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBleGVjdXRlICVzICglcykiCittc2dzdHIgIm51biBzZSBwdWRvIGV4ZWN1dGFyICVzIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBkZWNvbXByZXNzaW9uIgorbXNnc3RyICIlczogZGVzY29tcHJlc2nDs24iCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6ODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGNvbXByZXNzaW9uIgorbXNnc3RyICIlczogY29tcHJlc2nDs24iCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTEyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvciBiaW5kaW5nIGlucHV0IHRvIGd6aXAgc3RyZWFtIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTI0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCByZWFkIGVycm9yOiAnJXMnIgorbXNnc3RyICIlczogZmFsbHUgaW50ZXJudSBkZSBnemlwOiBgJXMnIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjEzMiBsaWIvZHBrZy9jb21wcmVzcy5jOjEzNgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgd3JpdGUgZXJyb3IiCittc2dzdHIgIiVzOiBmYWxsdSBpbnRlcm51IGRlIGd6aXA6IGAlcyciCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTUwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvciBiaW5kaW5nIG91dHB1dCB0byBnemlwIHN0cmVhbSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE1NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgcmVhZCBlcnJvciIKK21zZ3N0ciAiJXM6IGZhbGx1IGludGVybnUgZGUgZ3ppcDogYCVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxNjcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHdyaXRlIGVycm9yOiAnJXMnIgorbXNnc3RyICIlczogZmFsbHUgaW50ZXJudSBkZSBnemlwOiBgJXMnIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE4MAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgd3JpdGUgZXJyb3I6ICVzIgorbXNnc3RyICIlczogZmFsbHUgaW50ZXJudSBkZSBnemlwOiBgJXMnIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjIyMAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZXJyb3IgYmluZGluZyBpbnB1dCB0byBiemlwMiBzdHJlYW0iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyMzIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiByZWFkIGVycm9yOiAnJXMnIgorbXNnc3RyICIlczogZmFsbHUgaW50ZXJudSBkZSBiemlwMjogYCVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyNDAgbGliL2Rwa2cvY29tcHJlc3MuYzoyNDQgbGliL2Rwa2cvY29tcHJlc3MuYzoyOTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiB3cml0ZSBlcnJvciIKK21zZ3N0ciAiJXM6IGZhbGx1IGludGVybnUgZGUgYnppcDI6IGAlcyciCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjU4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvciBiaW5kaW5nIG91dHB1dCB0byBiemlwMiBzdHJlYW0iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyNjUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiByZWFkIGVycm9yIgorbXNnc3RyICIlczogZmFsbHUgaW50ZXJudSBkZSBiemlwMjogYCVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyNzUgbGliL2Rwa2cvY29tcHJlc3MuYzoyODYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiB3cml0ZSBlcnJvcjogJyVzJyIKK21zZ3N0ciAiJXM6IGZhbGx1IGludGVybnUgZGUgYnppcDI6IGAlcyciCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjgyCittc2dpZCAidW5leHBlY3RlZCBiemlwMiBlcnJvciIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjY4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1cGRhdGVzIGRpcmVjdG9yeSBjb250YWlucyBmaWxlIGAlLjI1MHMnIHdob3NlIG5hbWUgaXMgdG9vIGxvbmcgKGxlbmd0aD0lZCwgIgorIm1heD0lZCkiCittc2dzdHIgIiIKKyJlbCBkaXJldXRvcml1IGQnYW5vdmFjaW9uZXMgY29udGnDqW4gZWwgZmljaGVydSAnJS4yNTBzJywgeSBlbCBzbyBub21lIHllICIKKyJlbmZvcm1hIGdyYW5kZSAobGxvbnhpdMO6PSVkLCBtYXg9JWQpIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1cGRhdGVzIGRpcmVjdG9yeSBjb250YWlucyBmaWxlcyB3aXRoIGRpZmZlcmVudCBsZW5ndGggbmFtZXMgKGJvdGggJWQgYW5kICVkKSIKK21zZ3N0ciAiIgorImVsIGRpcmV1dG9yaXUgZCdhbm92YWNpb25lcyBjb250acOpbiBlbCBmaWNoZXJvcyBjb24gbm9tZXMgZGUgbGxvbnhpdHVkZXMgIgorImRpZmVyZW50ZXMgKCVkIHkgJWQpIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjg2CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzY2FuIHVwZGF0ZXMgZGlyZWN0b3J5IGAlLjI1NXMnIgorbXNnc3RyICJudW4gcHVlZGUgZGVzYW1pbmFzZSdsIGRpcmV1dG9yaXUgZCdhbm92YWNpb25lcyBgJS4yNTVzJyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlbW92ZSBpbmNvcnBvcmF0ZWQgdXBkYXRlIGZpbGUgJS4yNTVzIgorbXNnc3RyICJmYWxsdSBhbCBkZXNhbmljaWFyIGVsIGZpY2hlcnUgZCdhbm92YWNpw7NuIGluY29ycG9yw6F1ICUuMjU1cyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxMjEgZHBrZy1kZWIvYnVpbGQuYzo0NDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBgJS4yNTVzJyIKK21zZ3N0ciAibnVuIHB1ZWRlIGNyZWFzZSAnJS4yNTVzJyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxMjUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZpbGwgJS4yNTBzIHdpdGggcGFkZGluZyIKK21zZ3N0ciAibnVuIHB1ZWRlIGVubGxlbmFzZSAlLjI1MHMgY29uIHJlbGxlbnUiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTI3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCAlLjI1MHMgYWZ0ZXIgcGFkZGluZyIKK21zZ3N0ciAibnVuIHB1ZWRlIGZhY2VzZSBgZmx1c2gnICUuMjUwcyB0cmVzIGRlbCByZWxsZW51IgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEyOQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2VlayB0byBzdGFydCBvZiAlLjI1MHMgYWZ0ZXIgcGFkZGluZyIKK21zZ3N0ciAibnVuIHB1ZWRlIHRvcm5hc2UgYWwgZW50YW11IGRlICUuMjUwcyBkZW1wdcOpcyBkZWwgcmVsbGVudSIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxOTUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byBvcGVuIHRtcGZpbGUgZm9yIHZzbnByaW50ZiIKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBsb2NrIGZpbGUgJXMgZm9yIHRlc3RpbmciCittc2dzdHIgIm51biBwdWUgYWJyaXNlIHVuIGZpY2hlcnUgdGVtcG9yYWwgcGEgdnNucHJpbnRmIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjIyMQorbXNnaWQgInVuYWJsZSB0byBvcGVuL2NyZWF0ZSBzdGF0dXMgZGF0YWJhc2UgbG9ja2ZpbGUiCittc2dzdHIgIiIKKyJudW4gcHVlZGUgYWJyaXNlL2NyaWFzZSdsIGZpY2hlcnUgZGUgYmxvcXXDqXUgZGUgbGEgYmFzZSBkZSBkYXRvcyBkJ2VzdMOhdSIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyMzEKK21zZ2lkICJ5b3UgZG8gbm90IGhhdmUgcGVybWlzc2lvbiB0byBsb2NrIHRoZSBkcGtnIHN0YXR1cyBkYXRhYmFzZSIKK21zZ3N0ciAibnVuIHRpZW4gcGVybWlzdSBwYSBibG9xdWlhciBsYSBiYXNlIGRlIGRhdG9zIGQnZXN0w6F1IGRlIGRwa2ciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjMzCisjLCBmdXp6eQorI3wgbXNnaWQgInVuYWJsZSB0byBsb2NrIGRwa2cgc3RhdHVzIGRhdGFiYXNlIgorbXNnaWQgImRwa2cgc3RhdHVzIGRhdGFiYXNlIgorbXNnc3RyICJudW4gcHVlZGUgYmxvcXVpYXNlIGxhIGJhc2UgZGUgZGF0b3MgZCdlc3TDoXUgZGUgZHBrZyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyNTcKK21zZ2lkICJyZXF1ZXN0ZWQgb3BlcmF0aW9uIHJlcXVpcmVzIHN1cGVydXNlciBwcml2aWxlZ2UiCittc2dzdHIgImxhIG9wZXJhY2nDs24gc29saWNpdGFkYSBwcmVjaXNhIHByaXZpbGV4b3MgZGUgc3VwZXJ1c3Vhcml1IgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjI2MgorbXNnaWQgInVuYWJsZSB0byBhY2Nlc3MgZHBrZyBzdGF0dXMgYXJlYSIKK21zZ3N0ciAibnVuIHB1ZWRlIGFjY2VkZXNlIGFsIMOhcmVhIGQnZXN0w6F1IGRlIGRwa2ciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjY0Cittc2dpZCAib3BlcmF0aW9uIHJlcXVpcmVzIHJlYWQvd3JpdGUgYWNjZXNzIHRvIGRwa2cgc3RhdHVzIGFyZWEiCittc2dzdHIgIiIKKyJsYSBvcGVyYWNpw7NuIHByZWNpc2EgYWNjZXN1IGRlIGxsZWN0dXJhIHkgZXNjcml0dXJhIGFsIMOhcmVhIGQnZXN0w6F1IGRlIGRwa2ciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzA5CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZW1vdmUgbXkgb3duIHVwZGF0ZSBmaWxlICUuMjU1cyIKK21zZ3N0ciAiZmFsbHUgYWwgZGVzYW5pY2lhciBlbCBtaW8gcHJvcGl1IGZpY2hlcnUgZCdhbm92YWNpw7NuICUuMjU1cyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJudW4gcHVlZGUgZXNjcmliaXNlIGwnZXN0w6F1IGFjdHVhbCBkZSAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNDkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJudW4gcHVlIGZhY2VzZSdsIHZhY2nDoXUgZGVsIGVzdMOhdSBhY3R1YWwgZGUgJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzUxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB0cnVuY2F0ZSBmb3IgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgIm51biBwdWUgdHJvbnphc2UgcGEgbCdlc3RhdSBhY3R1YWxpemF1IGRlIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM1MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZnN5bmMgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgIm51biBwdWUgc2luY3Jvbml6YXNlIGwnZXN0YXUgYWN0dWFsaXphdSBkZSBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJudW4gcHVlIHphcnJhc2UgbCdlc3RhdSBhY3R1YWxpemF1IGRlIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM1OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAibnVuIHB1ZSBpbnN0YWxhc2UgbCdlc3RhdSBhY3R1YWxpemF1IGRlIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy9kaXIuYzo1MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHJlYWQgZmlsZWRlc2NyaXB0b3IgZmxhZ3MgZm9yICUuMjUwcyIKK21zZ2lkICJ1bmFibGUgdG8gZ2V0IGZpbGUgZGVzY3JpcHRvciBmb3IgZGlyZWN0b3J5ICclcyciCittc2dzdHIgIiIKKyJudW4gcHVlZGVuIGxsZWVzZSBsZXMgcHJvcGllZGFlcyBkZWwgZGVzY3JpcHRvciBkZSBmaWNoZXJvcyBwYSBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZGlyLmM6NTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzeW5jIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICJudW4gc2UgcHVlZGUgYWJyaXIgZWwgZmljaGVydSBmb250ZSBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZGlyLmM6NjkgbGliL2Rwa2cvZGlyLmM6MTMxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBkaXJlY3RvcnkgJyVzJyIKK21zZ3N0ciAibnVuIHNlIHB1ZWRlIGFicmlyIGVsIGZpY2hlcnUgZm9udGUgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2Rpci5jOjEwOSBzcmMvZGl2ZXJ0Y21kLmM6MjE4IGRwa2ctc3BsaXQvc3BsaXQuYzoyMDIKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjkzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBmaWxlICclcyciCittc2dzdHIgIm51biBzZSBwdWVkZSBhYnJpciBlbCBmaWNoZXJ1IGZvbnRlIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy9kaXIuYzoxMTEgc3JjL2RpdmVydGNtZC5jOjIzMiBzcmMvZGl2ZXJ0Y21kLmM6Mzc3CisjOiBzcmMvc3RhdGNtZC5jOjIxNyBkcGtnLWRlYi9idWlsZC5jOjU5OCBkcGtnLXNwbGl0L2pvaW4uYzo2NQorIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE4NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTQwNgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgZmlsZSAnJXMnIgorbXNnc3RyICJudW4gc2UgcHVlZGUgYWJyaXIgZWwgZmljaGVydSBmb250ZSBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZGlyLmM6MTEzIHNyYy9kaXZlcnRjbWQuYzoyMzQgc3JjL2RpdmVydGNtZC5jOjM3OQorIzogZHBrZy1kZWIvYnVpbGQuYzo2MDAgZHBrZy1zcGxpdC9qb2luLmM6NjcgZHBrZy1zcGxpdC9xdWV1ZS5jOjE4OQorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzMTQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE0MDgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBmaWxlICclcyciCittc2dzdHIgIm51biBwdWUgZXNjb3Nhc2UgdnNucHJpbnRmIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6Mzk2CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB3cml0ZSBkZXRhaWxzIG9mIGAlLjUwcycgdG8gYCUuMjUwcyciCittc2dzdHIgImZhbGzDsyBlc2NyaWJpciBsb3MgZGV0YWxsZXMgZGUgYCUuNTBzJyBhIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDIzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiAnJXMnIGZvciB3cml0aW5nICVzIGRhdGFiYXNlIgorbXNnc3RyICJmYWxsw7MgYWJyaXIgYCVzJyBwYSBlc2NyaWJpciBsYSBpbmZvcm1hY2nDs24gZGUgJXMiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0MjYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgYnVmZmVyaW5nIG9uICVzIGRhdGFiYXNlIGZpbGUiCittc2dzdHIgIm51biBwdWUgYWZpdGFzZSdsIGJ1ZmZlcmluZyBuZWwgZmljaGVydSBkJ2VzdMOhdSIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQzOAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlICVzIGRhdGFiYXNlIHJlY29yZCBhYm91dCAnJS41MHMnIHRvICclLjI1MHMnIgorbXNnc3RyICJmYWxsw7MgZXNjcmliaXIgZWwgcmV4aXN0cnUgJXMgdG9jYW50ZSBhIGAlLjUwcycgYSBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ0NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZsdXNoICVzIGRhdGFiYXNlIHRvICclLjI1MHMnIgorbXNnc3RyICJmYWxsw7MgdmFjaWFyIGxhIGluZm9ybWFjacOzbiAlcyBhIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDQ4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZnN5bmMgJXMgZGF0YWJhc2UgdG8gJyUuMjUwcyciCittc2dzdHIgImZhbGzDsyBmc3luYyBsYSBpbmZvcm1hY2nDs24gJXMgYSBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ1MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNsb3NlICclLjI1MHMnIGFmdGVyIHdyaXRpbmcgJXMgZGF0YWJhc2UiCittc2dzdHIgImZhbGzDsyB6YXJyYXIgYCUuMjUwcycgdHJlcyBkJ2VzY3JpYmlyIGxhIGluZm9ybWFjacOzbiAlcyIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ1NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGxpbmsgJyUuMjUwcycgdG8gJyUuMjUwcycgZm9yIGJhY2t1cCBvZiAlcyBkYXRhYmFzZSIKK21zZ3N0ciAiIgorImZhbGzDsyBlbmxsYXphciBgJS4yNTBzJyBjb24gYCUuMjUwcycgY29tbyBjb3BpYSBkZSBzZWd1cmlkw6EgZGUgbGEgaW5mbyAlcyIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ1OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGluc3RhbGwgJyUuMjUwcycgYXMgJyUuMjUwcycgY29udGFpbmluZyAlcyBkYXRhYmFzZSIKK21zZ3N0ciAiZmFsbMOzIGluc3RhbGFyIGAlLjI1MHMnIGNvbW8gYCUuMjUwcycgY29udGVuaWVuZG8gbGEgaW5mb3JtYWNpw7NuICVzIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6OTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiB1bnJlY292ZXJhYmxlIGZhdGFsIGVycm9yLCBhYm9ydGluZzpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorIiVzOiBlcnJvciBmYXRhbCBub24gcmVjdXBlcmFibGUsIGVuY2Fib3hhbmRvOlxuIgorIiAlc1xuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MTAwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiJXM6IHVucmVjb3ZlcmFibGUgZmF0YWwgZXJyb3IsIGFib3J0aW5nOlxuIgorI3wgIiAlc1xuIgorbXNnaWQgIiIKKyIlczogb3V0c2lkZSBlcnJvciBjb250ZXh0LCBhYm9ydGluZzpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorIiVzOiBlcnJvciBmYXRhbCBub24gcmVjdXBlcmFibGUsIGVuY2Fib3hhbmRvOlxuIgorIiAlc1xuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MTIwCisjLCBmdXp6eQorI3wgbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBjbGVhbnVwIGVudHJ5IgorbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBlcnJvciBjb250ZXh0IgorbXNnc3RyICJtZW1vcmlhIGVzY29zYWRhIHBhIHVuYSBudWV2YSBlbnRyYWRhIGRlIHJlb3JnYW5pemFjacOzbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjE4MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IGVycm9yIHdoaWxlIGNsZWFuaW5nIHVwOlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisiJXM6IGZhbGx1IGFsIHJlb3JnYW5pemFyOlxuIgorIiAlc1xuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MjAxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJkcGtnOiB0b28gbWFueSBuZXN0ZWQgZXJyb3JzIGR1cmluZyBlcnJvciByZWNvdmVyeSAhIVxuIgorbXNnaWQgIiVzOiB0b28gbWFueSBuZXN0ZWQgZXJyb3JzIGR1cmluZyBlcnJvciByZWNvdmVyeSEhXG4iCittc2dzdHIgImRwa2c6IMKhwqFhYm9uZG9zIGZhbGxvcyBhw7FlcmFvcyBkdXJhbnRlIGxhIHJlY3VwZXJhY2nDs24gZGUgZXJyb3IhIVxuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MjY4IGxpYi9kcGtnL2VoYW5kbGUuYzozMDcKK21zZ2lkICJvdXQgb2YgbWVtb3J5IGZvciBuZXcgY2xlYW51cCBlbnRyeSIKK21zZ3N0ciAibWVtb3JpYSBlc2Nvc2FkYSBwYSB1bmEgbnVldmEgZW50cmFkYSBkZSByZW9yZ2FuaXphY2nDs24iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoyOTEKK21zZ2lkICJvdXQgb2YgbWVtb3J5IGZvciBuZXcgY2xlYW51cCBlbnRyeSB3aXRoIG1hbnkgYXJndW1lbnRzIgorbXNnc3RyICIiCisibWVtb3JpYSBlc2Nvc2FkYSBwYSBsYSBlbnRyYWRhIGRlIHJlb3JnYW5pemFjacOzbiBudWV2YSBjb24gbXVuY2hvcyBhcmd1bWVudG9zIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MzUyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIlczogd2FybmluZzogJXNcbiIKK21zZ2lkICIlczogZXJyb3I6ICVzXG4iCittc2dzdHIgIiVzOiBmYWxsdSBhbCByZW9yZ2FuaXphcjogJXNcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjM5MworIywgYy1mb3JtYXQKK21zZ2lkICIlczogd2FybmluZzogJXNcbiIKK21zZ3N0ciAiJXM6IGZhbGx1IGFsIHJlb3JnYW5pemFyOiAlc1xuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6NDE2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiVzOiVkOiBpbnRlcm5hbCBlcnJvcjogJXNcbiIKK21zZ3N0ciAiJXM6JXM6JWQ6IGZhbGx1IGludGVybnU6ICVzXG4iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGlzIG1pc3NpbmciCittc2dzdHIgImZhbHRhICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0OQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYCUuKnMnIGlzIG5vdCBhbGxvd2VkIGZvciAlcyIKK21zZ2lkICInJS41MHMnIGlzIG5vdCBhbGxvd2VkIGZvciAlcyIKK21zZ3N0ciAibnVuIHMnYWxtaXRlIGAlLipzJyBwYSAlcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NzMKKyMsIGMtZm9ybWF0Cittc2dpZCAianVuayBhZnRlciAlcyIKK21zZ3N0ciAiYmFzdXJhIGRlbXB1w6lzIGRlICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo4NworIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHBhY2thZ2UgbmFtZSAoJS4yNTBzKSIKK21zZ3N0ciAibm9tZSBkZSBwYXF1ZXRlIGludsOhbGlkdSAoJS4yNTBzKSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgImVtcHR5IGZpbGUgZGV0YWlscyBmaWVsZCBgJXMnIgorbXNnc3RyICJjYW1wdSBkZSBkZXRhbGxlcyBgJXMnIGRlIGZpY2hlcnUgZXJtdSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTA1CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgZGV0YWlscyBmaWVsZCBgJXMnIG5vdCBhbGxvd2VkIGluIHN0YXR1cyBmaWxlIgorbXNnc3RyICJjYW1wdSBkZSBkZXRhbGxlcyBkZSBmaWNoZXJ1IGAlcycgbm9uIHBlcm1pdMOtdSBuZWwgZmljaGVydSBkJ2VzdMOhdSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTE4CisjLCBjLWZvcm1hdAorbXNnaWQgInRvbyBtYW55IHZhbHVlcyBpbiBmaWxlIGRldGFpbHMgZmllbGQgYCVzJyAoY29tcGFyZWQgdG8gb3RoZXJzKSIKK21zZ3N0ciAiIgorImFib25kb3MgdmFsb3JlcyBuZWwgY2FtcHUgZGUgZGV0YWxsZXMgZGUgZmljaGVydSBgJXMnXG4iCisiKGNvbXBhcsOhdSBjb24gb3Ryb3MpIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAidG9vIGZldyB2YWx1ZXMgaW4gZmlsZSBkZXRhaWxzIGZpZWxkIGAlcycgKGNvbXBhcmVkIHRvIG90aGVycykiCittc2dzdHIgIiIKKyJpbnN1ZmljaWVudGUgbsO6bWJlcnUgZGUgdmFsb3JlcyBuZWwgY2FtcHUgZGUgZGV0YWxsZXMgZGUgZmljaGVydSBgJXMnXG4iCisiKGNvbXBhcsOhdSBjb24gb3Ryb3MpIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxNTQKK21zZ2lkICJ5ZXMvbm8gaW4gYm9vbGVhbiBmaWVsZCIKK21zZ3N0ciAieWVzL25vIGVuIGNhbXB1IGJvb2xlYW51IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxNzQKK21zZ2lkICJ3b3JkIGluIGBwcmlvcml0eScgZmllbGQiCittc2dzdHIgInBhbGxhYnJhIGVuIGNhbXB1IMKrcHJpb3JpZMOhwrsiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE4NgorbXNnaWQgInZhbHVlIGZvciBgc3RhdHVzJyBmaWVsZCBub3QgYWxsb3dlZCBpbiB0aGlzIGNvbnRleHQiCittc2dzdHIgImVsIHZhbG9yIHBhbCBjYW1wdSBgc3RhdHVzJyBudW4gdGEgcGVybWl0w611IG5lc3RpIGNvbnRlc3R1IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxOTEKK21zZ2lkICJmaXJzdCAod2FudCkgd29yZCBpbiBgc3RhdHVzJyBmaWVsZCIKK21zZ3N0ciAicHJpbWVyIHBhbGxhYnJhIChuZWNlc2FyaWEpIG5lbCBjYW1wdSBgc3RhdHVzJyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTk0Cittc2dpZCAic2Vjb25kIChlcnJvcikgd29yZCBpbiBgc3RhdHVzJyBmaWVsZCIKK21zZ3N0ciAic2VndW5kYSBwYWxsYWJyYSAoZmFsbHUpIG5lbCBjYW1wdSBgc3RhdHVzJyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTk3Cittc2dpZCAidGhpcmQgKHN0YXR1cykgd29yZCBpbiBgc3RhdHVzJyBmaWVsZCIKK21zZ3N0ciAidGVyY2VyIHBhbGxhYnJhIGQnZXN0w6F1IG5lbCBjYW1wdSBgc3RhdHVzJyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjA3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJlcnJvciBpbiBWZXJzaW9uIHN0cmluZyBgJS4yNTBzJzogJS4yNTBzIgorbXNnaWQgImVycm9yIGluIFZlcnNpb24gc3RyaW5nICclLjI1MHMnIgorbXNnc3RyICJmYWxsdSBuYSBjYWRlbmEgYFZlcnNpb24nIGAlLjI1MHMnOiAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjIxOAorbXNnaWQgIm9ic29sZXRlIGBSZXZpc2lvbicgb3IgYFBhY2thZ2UtUmV2aXNpb24nIGZpZWxkIHVzZWQiCittc2dzdHIgIlVzw7NzZSB1biBjYW1wdSBgUmV2aXNpb24nIG8gYFBhY2thZ2UtUmV2aXNpb24nIG9ic29sZXR1IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyMzUKK21zZ2lkICJ2YWx1ZSBmb3IgYGNvbmZpZy12ZXJzaW9uJyBmaWVsZCBub3QgYWxsb3dlZCBpbiB0aGlzIGNvbnRleHQiCittc2dzdHIgImVsIHZhbG9yIGRlbCBjYW1wdSBgY29uZmlnLXZlcnNpb24nIG51biBzZSBwZXJtaXRlIG5lc3RpIGNvbnRlc3R1IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyNDAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImVycm9yIGluIENvbmZpZy1WZXJzaW9uIHN0cmluZyBgJS4yNTBzJzogJS4yNTBzIgorbXNnaWQgImVycm9yIGluIENvbmZpZy1WZXJzaW9uIHN0cmluZyAnJS4yNTBzJyIKK21zZ3N0ciAiZmFsbHUgbmEgY2FkZW5hIENvbmZpZy1WZXJzaW9uIGAlLjI1MHMnOiAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjI2NgorIywgYy1mb3JtYXQKK21zZ2lkICJ2YWx1ZSBmb3IgYGNvbmZmaWxlcycgaGFzIG1hbGZvcm1hdHRlZCBsaW5lIGAlLipzJyIKK21zZ3N0ciAiZWwgdmFsb3IgZGUgYGNvbmZmaWxlcycgdGllbiB1bmEgbGxpbmlhIG1hbCBmb3JtYXRlYWRhIGAlLipzJyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6Mjg3CisjLCBjLWZvcm1hdAorbXNnaWQgInZhbHVlIGZvciBgY29uZmZpbGVzJyBoYXMgbGluZSBzdGFydGluZyB3aXRoIG5vbi1zcGFjZSBgJWMnIgorbXNnc3RyICJ1bmEgbGxpbmlhIGRlbCB2YWxvciBkZSBgY29uZmZpbGVzJyBudW4gZW50YW1hIGNvbiBlc3BhY2l1IGAlYyciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjMwNAorbXNnaWQgInJvb3Qgb3IgbnVsbCBkaXJlY3RvcnkgaXMgbGlzdGVkIGFzIGEgY29uZmZpbGUiCittc2dzdHIgImVsIGRpcmV1dG9yaXUgcm9vdCBvIG51bGwgdGEgbGxpc3RhdSBjb21vIGNvbmZmaWxlIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzozNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIG1pc3NpbmcgcGFja2FnZSBuYW1lLCBvciBnYXJiYWdlIHdoZXJlIHBhY2thZ2UgbmFtZSBleHBlY3RlZCIKK21zZ3N0ciAiIgorIm5lbCBjYW1wdSBgJXMnLCBmYWx0YSBlbCBub21lIGRlIHBhcXVldGUsIG8gYWxjb250csOzc2UgYmFzb3JpYSBlbiBjdWVudGEnbCAiCisibm9tZSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MzcwCisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgZmllbGQsIGludmFsaWQgcGFja2FnZSBuYW1lIGAlLjI1NXMnOiAlcyIKK21zZ3N0ciAiY2FtcHUgYCVzJywgbm9tZSBkZSBwYXF1ZXRlIGludsOhbGlkdSBgJS4yNTVzJzogJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQwNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOlxuIgorIiBiYWQgdmVyc2lvbiByZWxhdGlvbnNoaXAgJWMlYyIKK21zZ3N0ciAiIgorImNhbXB1IGAlcycsIHJlZmVyZW5jaWEgYSBgJS4yNTVzJzpcbiIKKyIgcmVsbGFjacOzbiBkZSB2ZXJzacOzbiBlcnLDs25lYSAlYyVjIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgYCVjJyBpcyBvYnNvbGV0ZSwgdXNlIGAlYz0nIG9yIGAlYyVjJyBpbnN0ZWFkIgorbXNnc3RyICIiCisiZWwgY2FtcHUgYCVzJywgcmVmZXJlbmNpYSBhIGAlLjI1NXMnOlxuIgorIiBgJWMnIHRhIGFudGljdcOhdSwgdXNlIGAlYz0nIG8gYCVjJWMnIGVuIGN1ZW50YSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDIyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6XG4iCisiIGltcGxpY2l0IGV4YWN0IG1hdGNoIG9uIHZlcnNpb24gbnVtYmVyLCBzdWdnZXN0IHVzaW5nIGA9JyBpbnN0ZWFkIgorbXNnc3RyICIiCisiZWwgY2FtcHUgYCVzJywgcmVmZXJlbmNpYSBhIGAlLjI1NXMnOlxuIgorIiBjb25jYXNhbWllbnR1IGVzYXV0dSBpbXBsaWNpdHUgbmVsIG7Dum1iZXJ1IGRlIHZlcnNpw7NuLCDDumZyZXNlIHVzYXIgYD0nIGVuICIKKyJjdWVudGEiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQzMAorbXNnaWQgIk9ubHkgZXhhY3QgdmVyc2lvbnMgbWF5IGJlIHVzZWQgZm9yIFByb3ZpZGVzIgorbXNnc3RyICJOYW3DoWkgcHVlbiB1c2FzZSB2ZXJzaW9uZXMgZXNhdXRlcyBwYSBQcm92aWRlcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6XG4iCisiIHZlcnNpb24gdmFsdWUgc3RhcnRzIHdpdGggbm9uLWFscGhhbnVtZXJpYywgc3VnZ2VzdCBhZGRpbmcgYSBzcGFjZSIKK21zZ3N0ciAiIgorImVsIGNhbXB1IGAlcycsIHJlZmVyZW5jaWEgYSBgJS4yNTVzJzpcbiIKKyIgZWwgdmFsb3IgZGUgdmVyc2nDs24gZW50YW1hIGNvbiB1biBub24tYWxmYW51bcOpcmljdSwgw7pmcmVzZSBhbWVzdGFyIHVuICIKKyJlc3BhY2l1IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NTEgbGliL2Rwa2cvZmllbGRzLmM6NDU1CisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzogdmVyc2lvbiBjb250YWlucyBgJWMnIgorbXNnc3RyICJlbCBjYW1wdSBgJXMnLCByZWZlcmVuY2lhIGEgYCUuMjU1cyc6IGxhIHZlcnNpw7NuIGNvbnRpZW4gYCVjJyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDU5CisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzogdmVyc2lvbiB1bnRlcm1pbmF0ZWQiCittc2dzdHIgImVsIGNhbXB1IGAlcycsIHJlZmVyZW5jaWEgYSBgJS4yNTVzJzogdmVyc2nDs24gbnVuIHRlcm1pbmFkYSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDY1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6IGVycm9yIGluIHZlcnNpb246ICUuMjU1cyIKK21zZ2lkICInJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gJyUuMjU1cyc6IGVycm9yIGluIHZlcnNpb24iCittc2dzdHIgImVsIGNhbXB1IGAlcycsIHJlZmVyZW5jaWEgYSBgJS4yNTVzJzogZXJyb3IgbmEgdmVyc2nDs246ICUuMjU1cyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDc1CisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgZmllbGQsIHN5bnRheCBlcnJvciBhZnRlciByZWZlcmVuY2UgdG8gcGFja2FnZSBgJS4yNTVzJyIKK21zZ3N0ciAiY2FtcHUgYCVzJywgZXJyb3IgZGUgc2ludGF4aXMgdHJlcyBsYSByZWZlcmVuY2lhIGFsIHBhcXVldGUgYCUuMjU1cyciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ4MgorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZXMgKGB8Jykgbm90IGFsbG93ZWQgaW4gJXMgZmllbGQiCittc2dzdHIgIm51biBzJ2FsbWl0ZW4gYWx0ZXJuYXRpdmVzIChgfCcpIG5lbCBjYW1wdSAlcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTM2Cittc2dpZCAidmFsdWUgZm9yIGB0cmlnZ2Vycy1wZW5kaW5nJyBmaWVsZCBub3QgYWxsb3dlZCBpbiB0aGlzIGNvbnRleHQiCittc2dzdHIgImVsIHZhbG9yIHBhbCBjYW1wdSBgdHJpZ2dlcnMtcGVuZGluZycgbnVuIHRhIHBlcm1pdMOtdSBuZXN0aSBjb250ZXN0dSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTQzCisjLCBjLWZvcm1hdAorbXNnaWQgImlsbGVnYWwgcGVuZGluZyB0cmlnZ2VyIG5hbWUgYCUuMjU1cyc6ICVzIgorbXNnc3RyICJub21lIGlsbGVnYWwgcGEgbCdhY3RpdmFkb3IgZGUgcGVuZGllbnRlcyBgJS4yNTVzJzogJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU0NworIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgcGVuZGluZyB0cmlnZ2VyIGAlLjI1NXMnIgorbXNnc3RyICJhY3RpdmFkb3IgZGUgcGVuZGllbnRlcyBgJS4yNTVzJyBkdXBsaWPDoXUiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU2MQorbXNnaWQgInZhbHVlIGZvciBgdHJpZ2dlcnMtYXdhaXRlZCcgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICJlbCB2YWxvciBwYWwgY2FtcHUgYHRyaWdnZXJzLWF3YWl0ZWQnIG51biB0YSBwZXJtaXTDrXUgbmVzdGkgY29udGVzdHUiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU2OAorIywgYy1mb3JtYXQKK21zZ2lkICJpbGxlZ2FsIHBhY2thZ2UgbmFtZSBpbiBhd2FpdGVkIHRyaWdnZXIgYCUuMjU1cyc6ICVzIgorbXNnc3RyICJub21lIGRlIHBhcXVldGUgaWxsZWdhbCBuZWwgZGlzcGFyYWRvciBlc3BlcsOhdSBgJS4yNTVzJzogJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU3NAorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgYXdhaXRlZCB0cmlnZ2VyIHBhY2thZ2UgYCUuMjU1cyciCittc2dzdHIgInBhcXVldGUgZGUgZGlzcGFyYWRvciBlc3BlcsOhdSBkdXBsaWPDoXUgYCUuMjU1cyciCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzo1MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgc291cmNlIGZpbGUgJyUuMjUwcyciCittc2dzdHIgIm51biBzZSBwdWVkZSBhYnJpciBlbCBmaWNoZXJ1IGZvbnRlIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy9maWxlLmM6NTUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGFuZ2Ugb3duZXJzaGlwIG9mIHRhcmdldCBmaWxlICclLjI1MHMnIgorbXNnc3RyICJudW4gcHVlIGNhbXVkYXNlJ2wgcHJvcGlldGFyaXUgZGVsIG51ZXZ1IGZpY2hlcnUgY29uZiBkaXN0IGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy9maWxlLmM6NTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgbW9kZSBvZiB0YXJnZXQgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAibnVuIHB1ZSBhZml0YXNlJ2wgbW91IGRlbCBudWV2dSBmaWNoZXJ1IGNvbmYgZGlzdCBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZmlsZS5jOjg1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gdW5sb2NrICVzOiAlcyIKK21zZ2lkICJ1bmFibGUgdG8gdW5sb2NrICVzIgorbXNnc3RyICJudW4gc2UgcHVlZGUgZGVzYmxvcXVlYXIgJXM6ICVzIgorCisjOiBsaWIvZHBrZy9maWxlLmM6MTExCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hlY2sgZmlsZSAnJXMnIGxvY2sgc3RhdHVzIgorbXNnc3RyICJudW4gc2UgcHVlZGUgYWJyaXIgZWwgZmljaGVydSBmb250ZSBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZmlsZS5jOjE0NgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic3RhdHVzIGRhdGFiYXNlIGFyZWEgaXMgbG9ja2VkIGJ5IGFub3RoZXIgcHJvY2VzcyIKK21zZ2lkICIlcyBpcyBsb2NrZWQgYnkgYW5vdGhlciBwcm9jZXNzIgorbXNnc3RyICJsJ8OhcmVhIGRlIGxhIGJhc2UgZGUgZGF0b3MgZCdlc3TDoXUgdGEgYmxvcXVpYWRhIHBvciBvdHJ1IHByb2Nlc3UiCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzoxNDgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byB1bmxvY2sgJXM6ICVzIgorbXNnaWQgInVuYWJsZSB0byBsb2NrICVzIgorbXNnc3RyICJudW4gc2UgcHVlZGUgZGVzYmxvcXVlYXIgJXM6ICVzIgorCisjOiBsaWIvZHBrZy9sb2cuYzo1MworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBvcGVuIGxvZyBgJXMnOiAlc1xuIgorbXNnc3RyICJudW4gcHVkbyBhYnJpc2UnbCByZXhpc3RydSAnJXMnOiAlc1xuIgorCisjOiBsaWIvZHBrZy9sb2cuYzo4NQorbXNnaWQgIjxwYWNrYWdlIHN0YXR1cyBhbmQgcHJvZ3Jlc3MgZmlsZSBkZXNjcmlwdG9yPiIKK21zZ3N0ciAiPGVzdMOhdSBkZSBwYXF1ZXRlIHkgZGVzY3JpcHRvciBkZSBwcm9ncmVzdSBkZSBmaWNoZXJ1PiIKKworIzogbGliL2Rwa2cvbG9nLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSB0byBzdGF0dXMgZmQgJWQiCittc2dzdHIgIm51biBwdWVkZSBlc2NyaWJpc2UgbCdlc3TDoXUgZmQgJWQiCisKKyM6IGxpYi9kcGtnL21saWIuYzo0NCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJyZWFsbG9jIGZhaWxlZCAoJXp1IGJ5dGVzKSIKK21zZ2lkICJtYWxsb2MgZmFpbGVkICglenUgYnl0ZXMpIgorbXNnc3RyICJmYWxsw7MgZW4gcmVhbGxvYyAoJXp1IGJ5dGVzKSIKKworIzogbGliL2Rwa2cvbWxpYi5jOjU4CisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWxsb2MgZmFpbGVkICglenUgYnl0ZXMpIgorbXNnc3RyICJmYWxsw7MgZW4gcmVhbGxvYyAoJXp1IGJ5dGVzKSIKKworIzogbGliL2Rwa2cvbWxpYi5jOjcyIGxpYi9kcGtnL21saWIuYzo5MCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6Mjc3CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MzM0IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTA3Cittc2dpZCAiZmFpbGVkIHRvIGFsbG9jYXRlIG1lbW9yeSIKK21zZ3N0ciAiZmFsbMOzIGFsIGFzaWduYXIgbWVtb3JpYSIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZHVwIGZvciBzdGQlcyIKK21zZ3N0ciAiZmFsbMOzIGFsIGVmZXV0dWFyIGBkdXAnIHBhIHN0ZCVzIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTAzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBkdXAgZm9yIGZkICVkIgorbXNnc3RyICJmYWxsw7MgYWwgZWZldXR1YXIgYGR1cCcgcGEgYGZkJyAlZCIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEwOQorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgcGlwZSIKK21zZ3N0ciAiZmFsbMOzIGFsIGNyaWFyIHR1YmVyw61hIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTE3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJlcnJvciB3cml0aW5nIHRvICclcyciCittc2dzdHIgImZhbGx1IGFsIGVzY3JpYmlyIGAlcyciCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgZmlsZWRlc2NyaXB0b3IgZmxhZ3MgZm9yICUuMjUwcyIKK21zZ3N0ciAiIgorIm51biBwdWVkZW4gbGxlZXNlIGxlcyBwcm9waWVkYWVzIGRlbCBkZXNjcmlwdG9yIGRlIGZpY2hlcm9zIHBhIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTI2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgY2xvc2Utb24tZXhlYyBmbGFnIGZvciAlLjI1MHMiCittc2dzdHIgIm51biBwdWVkZSBhZml0YXNlIGwnYXRyaWJ1dHUgY2xvc2Utb24tZXhlYyBwYSBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjYzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJjb25maWd1cmF0aW9uIGVycm9yOiAlczolZDogJXMiCittc2dzdHIgImZhbGx1IGRlIGNvbmZpZ3VyYWNpw7NuOiAlcyBuZWNlc2l0YSB1biB2YWxvciIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjc1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuIGNvbmZpZ3VyYXRpb24gZmlsZSAnJS4yNTVzJyBmb3IgcmVhZGluZzogJXMiCittc2dzdHIgImZhbGzDsyBhbCBhYnJpciBlbCBmaWNoZXJ1IGRlIGNvbmZpZ3VyYWNpw7NuICclLjI1NXMnIHBhIGxsZWN0dXJhOiAlcyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmJhbGFuY2VkIHF1b3RlcyBpbiAnJXMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMTcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gb3B0aW9uICclcyciCittc2dzdHIgIm9wY2nDs24gYCVzJyBkZXNjb25vY2lkYSIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjEyMQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBuZWVkcyBhIHZhbHVlIgorbXNnc3RyICJsYSBvcGNpw7NuIC0tJXMgbGxldmEgdW4gcGFyw6FtZXRydSIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjEyNworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBkb2VzIG5vdCB0YWtlIGEgdmFsdWUiCittc2dzdHIgImxhIG9wY2nDs24gLS0lcyBudW4gbGxldmEgcGFyw6FtZXRyb3MiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVhZCBlcnJvciBpbiBjb25maWd1cmF0aW9uIGZpbGUgYCUuMjU1cyciCittc2dzdHIgImZhbGx1IGRlIGxsZWN0dXJhIG5lbCBmaWNoZXJ1IGRlIGNvbmZpZ3VyYWNpw7NuIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgY29uZmlndXJhdGlvbiBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICJmYWxsdSBhbCB6YXJyYXIgZWwgZmljaGVydSBkZSBjb25maWd1cmFjacOzbiBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjE3MAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igb3BlbmluZyBjb25maWd1cmF0aW9uIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICJmYWxsdSBhbCB6YXJyYXIgZWwgZmljaGVydSBkZSBjb25maWd1cmFjacOzbiBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjIyOAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiAtLSVzIgorbXNnc3RyICJvcGNpw7NuIC0tJXMgZGVzY29ub2NpZGEiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBvcHRpb24gdGFrZXMgYSB2YWx1ZSIKK21zZ3N0ciAibGEgb3BjacOzbiAtLSVzIGxsZXZhIHVuIHBhcsOhbWV0cnUiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBvcHRpb24gZG9lcyBub3QgdGFrZSBhIHZhbHVlIgorbXNnc3RyICJsYSBvcGNpw7NuIC0tJXMgbnVuIGxsZXZhIHBhcsOhbWV0cm9zIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gb3B0aW9uIC0lYyIKK21zZ3N0ciAib3BjacOzbiAtJWMgZGVzY29ub2PDrWEiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLSVjIG9wdGlvbiB0YWtlcyBhIHZhbHVlIgorbXNnc3RyICJsYSBvcGNpw7NuIC0lYyBsbGV2YSB1biBwYXLDoW1ldHJ1IgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjU4CisjLCBjLWZvcm1hdAorbXNnaWQgIi0lYyBvcHRpb24gZG9lcyBub3QgdGFrZSBhIHZhbHVlIgorbXNnc3RyICJsYSBvcGNpw7NuIC0lYyBudW4gbGxldmEgcGFyw6FtZXRyb3MiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAib2Jzb2xldGUgb3B0aW9uICctLSVzJ1xuIgorbXNnc3RyICJvcGNpw7NuIG9ic29sZXRhICctLSVzJ1xuIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6Mjg3CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZsaWN0aW5nIGFjdGlvbnMgLSVjICgtLSVzKSBhbmQgLSVjICgtLSVzKSIKK21zZ3N0ciAiYWljaW9uZXMgZW4gY29uZmxpY3R1IC0lYyAoLS0lcykgeSAtJWMgKC0tJXMpIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgdmFsdWUgZm9yIGAlcycgZmllbGQiCittc2dzdHIgInZhbG9yIGR1cGxpY8OhdSBwYWwgY2FtcHUgYCVzJyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoxNDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidXNlci1kZWZpbmVkIGZpZWxkIG5hbWUgYCUuKnMnIHRvbyBzaG9ydCIKK21zZ3N0ciAibm9tZSBkZSBjYW1wdSBkZWZpbsOtdSBwb2wgdXN1YXJpdSBgJS4qcycgZW5mb3JtYSBjdXJ0aXUiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MTUyCisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSB2YWx1ZSBmb3IgdXNlci1kZWZpbmVkIGZpZWxkIGAlLipzJyIKK21zZ3N0ciAidmFsb3IgZHVwbGljw6F1IHBhbCBjYW1wdSBkZWZpbsOtdSBwb2wgdXN1YXJpdSBgJS4qcyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjA3Cittc2dpZCAiQ29uZmlndXJlZC1WZXJzaW9uIGZvciBwYWNrYWdlIHdpdGggaW5hcHByb3ByaWF0ZSBTdGF0dXMiCittc2dzdHIgIkNhbXB1IGBDb25maWd1cmVkLVZlcnNpb24nIHBhIHVuIHBhcXVldGUgY29uIFN0YXR1cyBub24gYWZheWHDrXp1IgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjIxOAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGhhcyBzdGF0dXMgJXMgYnV0IHRyaWdnZXJzIGFyZSBhd2FpdGVkIgorbXNnc3RyICJlbCBwYXF1ZXRlIHRpZW4gbCdlc3TDoXUgJXMgcGVybyBsb3MgZGlzcGFyYWRvcmVzIHTDoW4gbidlc3BlcmEiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjIyCittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzIHRyaWdnZXJzLWF3YWl0ZWQgYnV0IG5vIHRyaWdnZXJzIGF3YWl0ZWQiCittc2dzdHIgIiIKKyJlbCBwYXF1ZXRlIHRpZW4gbCdlc3TDoXUgwqt0cmlnZ2Vycy1hd2FpdGVkwrsgcGVybyBudW4gaGFpIGRlbmfDum4gZGlzcGFyYWRvciAiCisibidlc3BlcmEiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjI4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgaGFzIHN0YXR1cyAlcyBidXQgdHJpZ2dlcnMgYXJlIHBlbmRpbmciCittc2dzdHIgImVsIHBhcXVldGUgdGllbiBsJ2VzdMOhdSAlcyBwZXJvIGxvcyBkaXNwYXJhZG9yZXMgdMOhbiBwZW5kaWVudGVzIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjIzMgorbXNnaWQgInBhY2thZ2UgaGFzIHN0YXR1cyB0cmlnZ2Vycy1wZW5kaW5nIGJ1dCBubyB0cmlnZ2VycyBwZW5kaW5nIgorbXNnc3RyICIiCisiZWwgcGFxdWV0ZSB0aWVuIGwnZXN0w6F1IMKrdHJpZ2dlcnMtcGVuZGluZ8K7IHBlcm8gbnVuIGhhaSBkaXNwYXJhZG9yZXMgIgorInBlbmRpZW50ZXMiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjQyCittc2dpZCAiUGFja2FnZSB3aGljaCBpbiBzdGF0ZSBub3QtaW5zdGFsbGVkIGhhcyBjb25mZmlsZXMsIGZvcmdldHRpbmcgdGhlbSIKK21zZ3N0ciAiUGFxdWV0ZSBxdWUgbnVuIHRhbmRvIGluc3RhbMOhdSB0aWVuIGNvbmZmaWxlcywgZXNjYWVjw6ltb25vcyBkJ2VsbG9zIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjMzNQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiBwYWNrYWdlIGluZm8gZmlsZSBgJS4yNTVzJyBmb3IgcmVhZGluZyIKK21zZ3N0ciAiZmFsbMOhIGFsIGFicmlyIGVsIGZpY2hlcnUgZCdpbmZvcm1hY2nDs24gZGVsIHBhcXVldGUgYCUuMjU1cycgcGEgbGxlZXIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzQxCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbid0IHN0YXQgcGFja2FnZSBpbmZvIGZpbGUgYCUuMjU1cyciCittc2dzdHIgIm51biBwdWVkZSBleGVjdXRhc2Ugc3RhdCBzb2JybydsIGZpY2hlcnUgYCUuMjU1cyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzQ3CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbid0IG1tYXAgcGFja2FnZSBpbmZvIGZpbGUgYCUuMjU1cyciCittc2dzdHIgIm51biBwdWVkZSBleGVjdXRhc2UgbW1hcCBzb2JybydsIGZpY2hlcnUgYCUuMjU1cyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzUyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW4ndCBzdGF0IHBhY2thZ2UgaW5mbyBmaWxlIGAlLjI1NXMnIgorbXNnaWQgInJlYWRpbmcgcGFja2FnZSBpbmZvIGZpbGUgJyUuMjU1cyciCittc2dzdHIgIm51biBwdWVkZSBleGVjdXRhc2Ugc3RhdCBzb2JybydsIGZpY2hlcnUgYCUuMjU1cyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzYzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjbG9zZSBhZnRlciByZWFkOiBgJS4yNTVzJyIKK21zZ3N0ciAiZmFsbMOzIGFsIHphcnJhciBkZW1wdcOpcyBkZSBsYSBsbGVjdHVyYTogYCUuMjU1cyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDA0CisjLCBjLWZvcm1hdAorbXNnaWQgIkVPRiBhZnRlciBmaWVsZCBuYW1lIGAlLipzJyIKK21zZ3N0ciAiRU9GIGRlbXB1w6lzIGRlbCBub21lIGRlbCBjYW1wdSBgJS4qcyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDA3CisjLCBjLWZvcm1hdAorbXNnaWQgIm5ld2xpbmUgaW4gZmllbGQgbmFtZSBgJS4qcyciCittc2dzdHIgIm51ZXZhIGxsaW5pYSBkaWVudHJvIGRlbCBub21lIGRlbCBjYW1wdSBgJS4qcyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDEwCisjLCBjLWZvcm1hdAorbXNnaWQgIk1TRE9TIEVPRiAoXlopIGluIGZpZWxkIG5hbWUgYCUuKnMnIgorbXNnc3RyICJFT0YgZGUgTVNET1MgKF5aKSBkaWVudHJvIGRlbCBub21lIGRlbCBjYW1wdSBgJS4qcyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDE0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpZWxkIG5hbWUgYCUuKnMnIG11c3QgYmUgZm9sbG93ZWQgYnkgY29sb24iCittc2dzdHIgImVsIG5vbWUgZGVsIGNhbXB1IGAlLipzJyB0aWVuIGRlIHRhciBzaWd1w611IHBvciBkb3MgcHVudG9zIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQyNQorIywgYy1mb3JtYXQKK21zZ2lkICJFT0YgYmVmb3JlIHZhbHVlIG9mIGZpZWxkIGAlLipzJyAobWlzc2luZyBmaW5hbCBuZXdsaW5lKSIKK21zZ3N0ciAiRU9GIGVuYW50ZXMgZGVsIHZhbG9yIGRlbCBjYW1wdSBgJS4qcycgKGZhbHRhIG51ZXZhIGxsaW5pYSBmaW5hbCkiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDI5CisjLCBjLWZvcm1hdAorbXNnaWQgIk1TRE9TIEVPRiBjaGFyIGluIHZhbHVlIG9mIGZpZWxkIGAlLipzJyAobWlzc2luZyBuZXdsaW5lPykiCittc2dzdHIgIiIKKyJjYXLDoXV0ZXIgRU9GIGRlIE1TRE9TIGRpZW50cm8gZGVsIHZhbG9yIGRlbCBjYW1wdSBgJS4qcycgKMK/ZmFsdGEgbnVldmEgIgorImxsaW5pYT8pIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQ0MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAibmV3bGluZSBpbiBmaWVsZCBuYW1lIGAlLipzJyIKK21zZ2lkICJibGFuayBsaW5lIGluIHZhbHVlIG9mIGZpZWxkICclLipzJyIKK21zZ3N0ciAibnVldmEgbGxpbmlhIGRpZW50cm8gZGVsIG5vbWUgZGVsIGNhbXB1IGAlLipzJyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiRU9GIGR1cmluZyB2YWx1ZSBvZiBmaWVsZCBgJS4qcycgKG1pc3NpbmcgZmluYWwgbmV3bGluZSkiCittc2dzdHIgIkVPRiBkdXJhbnRlJ2wgdmFsb3IgZGVsIGNhbXB1IGAlLipzJyAoZmFsdGEgbnVldmEgbGxpbmlhKSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo1NDYKK21zZ2lkICJzZXZlcmFsIHBhY2thZ2UgaW5mbyBlbnRyaWVzIGZvdW5kLCBvbmx5IG9uZSBhbGxvd2VkIgorbXNnc3RyICIiCisiYWxjb250csOhcm9uc2UgZGVsbGVzIGVudHJhZXMgZCdpbmZvcm1hY2nDs24gZGUgcGFxdWV0ZXMsIG5hbcOhaSBzZSBwZXJtaXRlIHVuYSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo1NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gcGFja2FnZSBpbmZvcm1hdGlvbiBpbiBgJS4yNTVzJyIKK21zZ3N0ciAibnVuIGhhaSBkZW5ndW5hIGluZm9ybWFjacOzbiBkZSBwYXF1ZXRlcyBlbiBgJS4yNTVzJyIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6NDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIlcywgaW4gZmlsZSAnJS4yNTVzJyBuZWFyIGxpbmUgJWQgcGFja2FnZSAnJS4yNTVzJzpcbiIKKyN8ICIgIgorbXNnaWQgIiIKKyJwYXJzaW5nIGZpbGUgJyUuMjU1cycgbmVhciBsaW5lICVkIHBhY2thZ2UgJyUuMjU1cyc6XG4iCisiICUuMjU1cyIKK21zZ3N0ciAiIgorIiVzLCBuZWwgZmljaGVydSAnJS4yNTVzJyBjZXJjYSBkZSBsYSBsbGluaWEgJWQgcGFxdWV0ZSAnJS4yNTVzJzpcbiIKKyIgIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzo0OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiVzLCBpbiBmaWxlICclLjI1NXMnIG5lYXIgbGluZSAlZDpcbiIKKyN8ICIgIgorbXNnaWQgIiIKKyJwYXJzaW5nIGZpbGUgJyUuMjU1cycgbmVhciBsaW5lICVkOlxuIgorIiAlLjI1NXMiCittc2dzdHIgIiIKKyIlcywgZW4gZmljaGVydSAnJS4yNTVzJyBjZXJjYSBkZSBsbGluaWEgJWQ6XG4iCisiICIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MTI1Cittc2dpZCAibWF5IG5vdCBiZSBlbXB0eSBzdHJpbmciCittc2dzdHIgIm51biBwdWUgc2VyIHVuYSBjYWRlbmEgZXJtYSIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MTI3CisjLCBmdXp6eQorI3wgbXNnaWQgIm11c3Qgc3RhcnQgd2l0aCBhbiBhbHBoYW51bWVyaWMiCittc2dpZCAibXVzdCBzdGFydCB3aXRoIGFuIGFscGhhbnVtZXJpYyBjaGFyYWN0ZXIiCittc2dzdHIgInRpZW4gZCdlbnRhbWFyIGNvbiB1biBjYXJhdXRlciBhbGZhbnVtYsOpcmljdSIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MTM2CisjLCBjLWZvcm1hdAorbXNnaWQgImNoYXJhY3RlciBgJWMnIG5vdCBhbGxvd2VkIChvbmx5IGxldHRlcnMsIGRpZ2l0cyBhbmQgY2hhcmFjdGVycyBgJXMnKSIKK21zZ3N0ciAiIgorImVsIGNhcsOhdXRlciBgJWMnIG51biB0YSBwZXJtaXTDrXUgKG5hbcOhaSBzZSBwZXJtaXRlbiBsbGV0cmVzLCBkw614aXRvcyAiCisiY2FyYXV0ZXJlcyBgJXMnKSIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MTc4CisjLCBmdXp6eQorI3wgbXNnaWQgIjxub25lPiIKK21zZ2N0eHQgInZlcnNpb24iCittc2dpZCAiPG5vbmU+IgorbXNnc3RyICI8ZGVuZ8O6bj4iCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjIwOQorbXNnaWQgInZlcnNpb24gc3RyaW5nIGlzIGVtcHR5IgorbXNnc3RyICJsYSBjYWRlbmEgZGUgdmVyc2nDs24gdGEgZXJtYSIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjI0Cittc2dpZCAidmVyc2lvbiBzdHJpbmcgaGFzIGVtYmVkZGVkIHNwYWNlcyIKK21zZ3N0ciAibGEgY2FkZW5hIGRlIHZlcnNpw7NuIHRpZW4gZXNwYWNpb3MgbmVsIHNvIGludGVyaW9yIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyMzAKK21zZ2lkICJlcG9jaCBpbiB2ZXJzaW9uIGlzIG5vdCBudW1iZXIiCittc2dzdHIgImxhIMOpcG9jYSBuYSB2ZXJzacOzbiBudW4geWUgdW4gbsO6bWJlcnUiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjIzMgorbXNnaWQgIm5vdGhpbmcgYWZ0ZXIgY29sb24gaW4gdmVyc2lvbiBudW1iZXIiCittc2dzdHIgIm51biBoYWkgcmVzIHRyZXMgbG9zIGRvcyBwdW50b3MgbmVsIG7Dum1iZXJ1IGRlIHZlcnNpw7NuIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyNDcKK21zZ2lkICJ2ZXJzaW9uIG51bWJlciBkb2VzIG5vdCBzdGFydCB3aXRoIGRpZ2l0IgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjI1MAorIywgZnV6enkKKyN8IG1zZ2lkICJub3RoaW5nIGFmdGVyIGNvbG9uIGluIHZlcnNpb24gbnVtYmVyIgorbXNnaWQgImludmFsaWQgY2hhcmFjdGVyIGluIHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICJudW4gaGFpIHJlcyB0cmVzIGxvcyBkb3MgcHVudG9zIG5lbCBuw7ptYmVydSBkZSB2ZXJzacOzbiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjU0CisjLCBmdXp6eQorI3wgbXNnaWQgIm5vdGhpbmcgYWZ0ZXIgY29sb24gaW4gdmVyc2lvbiBudW1iZXIiCittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgaW4gcmV2aXNpb24gbnVtYmVyIgorbXNnc3RyICJudW4gaGFpIHJlcyB0cmVzIGxvcyBkb3MgcHVudG9zIG5lbCBuw7ptYmVydSBkZSB2ZXJzacOzbiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6Mjk5IGxpYi9kcGtnL3BhcnNlaGVscC5jOjMxMQorIywgYy1mb3JtYXQKK21zZ2lkICJtaXNzaW5nICVzIgorbXNnc3RyICJmYWx0YSAlcyIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MzAxIGxpYi9kcGtnL3BhcnNlaGVscC5jOjMxNAorIywgYy1mb3JtYXQKK21zZ2lkICJlbXB0eSB2YWx1ZSBmb3IgJXMiCittc2dzdHIgInZhbG9yIGVybXUgcGEgJXMiCisKKyM6IGxpYi9kcGtnL3BrZy1mb3JtYXQuYzo4MAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGNoYXJhY3RlciBgJWMnIGluIGZpZWxkIHdpZHRoXG4iCittc2dzdHIgImNhcsOhdXRlciBgJWMnIGludsOhbGlkdSBuZWwgYW5jaG9yIGRlbCBjYW1wdVxuIgorCisjOiBsaWIvZHBrZy9wa2ctZm9ybWF0LmM6MTcyCisjLCBjLWZvcm1hdAorbXNnaWQgIkNsb3NpbmcgYnJhY2UgbWlzc2luZyBpbiBmb3JtYXRcbiIKK21zZ3N0ciAiRmFsdGEgdW5hIGxsYXZlIGRlIHphcnJlIG5lbCBmb3JtYXR1XG4iCisKKyM6IGxpYi9kcGtnL3BrZy1zaG93LmM6NDAKK21zZ2lkICIobm8gZGVzY3JpcHRpb24gYXZhaWxhYmxlKSIKK21zZ3N0ciAiKGVuc2luIGRlc2NyaXBjacOzbiBkaXNwb25pYmxlKSIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjU1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpZ25vcmUgc2lnbmFsICVzIGJlZm9yZSBydW5uaW5nICUuMjUwcyIKK21zZ3N0ciAibnVuIHNlIHB1ZG8gaW5vcmFyIGxhIHNlw7FhbCAlcyBlbmFudGVzIGQnZXhlY3V0YXIgZWwgc2NyaXB0ICUuMjUwcyIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjY4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHVuLWNhdGNoaW5nIHNpZ25hbCAlczogJXNcbiIKK21zZ3N0ciAiZmFsbHUgYWwgbm9uIHJlbWFuYXIgbGEgc2XDsWFsICVzOiAlc1xuIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgKHN1YnByb2Nlc3MpOiAlc1xuIgorbXNnc3RyICIlcyAoc3VicHJvY2VzdSk6ICVzXG4iCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzo4OSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NDU0Cittc2dpZCAiZm9yayBmYWlsZWQiCittc2dzdHIgImZhbGzDsyBlbiBgZm9yayciCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMTkKKyMsIGMtZm9ybWF0Cittc2dpZCAic3VicHJvY2VzcyAlcyByZXR1cm5lZCBlcnJvciBleGl0IHN0YXR1cyAlZCIKK21zZ3N0ciAiZWwgc3VicHJvY2VzdSAlcyBkZXZvbHZpw7MgZWwgY8OzZGlndSBkZSBzYWxpZGEgZCdlcnJvciAlZCIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEyOAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAic3VicHJvY2VzcyAlcyB3YXMgaW50ZXJydXB0ZWQiCittc2dzdHIgImVsIGB3YWl0JyBkZSAlcyBmYWxsw7MiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInN1YnByb2Nlc3MgJXMga2lsbGVkIGJ5IHNpZ25hbCAoJXMpJXMiCittc2dpZCAic3VicHJvY2VzcyAlcyB3YXMga2lsbGVkIGJ5IHNpZ25hbCAoJXMpJXMiCittc2dzdHIgImVsIHNvcHJvY2VzdSAlcyB0ZXJtaW7Ds3NlIHBvbGEgc2XDsWFsICglcyklcyIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEzMgorbXNnaWQgIiwgY29yZSBkdW1wZWQiCittc2dzdHIgIiwgdm9sY8OhdSBkZSDCq2NvcmXCuyIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJzdWJwcm9jZXNzICVzIGZhaWxlZCB3aXRoIHdhaXQgc3RhdHVzIGNvZGUgJWQiCittc2dzdHIgImVsIHNvcHJvY2VzdSAlcyBmYWxsw7MgY29uIGPDs2RpZ3UgZCdlc3TDoXUgZCdlc3BlcmEgJWQiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxNTEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQ2MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAid2FpdCBmb3Igc3VicHJvY2VzcyAlcyBmYWlsZWQiCittc2dzdHIgImVsIGB3YWl0JyBkZSAlcyBmYWxsw7MiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgcGFja2FnZSBuYW1lIGAlLjI1MHMnIGluIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKyJub21lIGRlIHBhcXVldGUgaW52w6FsaWR1IGAlLjI1MHMnIG5hIGxsaXN0YSBkZSBkaXNwYXJhZG9yZXMgZGVyZWZlcmVuY2lhb3MgYCIKKyIlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDo4MQorIywgYy1mb3JtYXQKK21zZ2lkICJ0cnVuY2F0ZWQgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiZmljaGVydSBkJ2FjdGl2YWRvcmVzIGRlcmVmZXJlbmNpYW9zIHRydW5jw6F1IGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDo4NQorIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyBhdCBjaGFyYWN0ZXIgYCVzJyVzIgorbXNnc3RyICIiCisiZmFsbHUgZGUgc2ludGF4aXMgbmVsIGZpY2hlcnUgZGUgZGlzcGFyYWRvcmVzIGRlcmVmZXJlbmNpYW9zICclLjI1MHMnIG5lbCAiCisiY2FyYXV0ZXIgJyVzJyVzIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4vY3JlYXRlIHRyaWdnZXJzIGxvY2tmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisibnVuIHB1ZWRlIGFicmlzZS9jcmlhc2UnbCBmaWNoZXJ1IGRlIGJsb3F1w6l1IGRlIGxvcyBkaXNwYXJhZG9yZXMgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjE0MQorIywgZnV6enkKKyN8IG1zZ2lkICJ0cmlnZ2VyZWQiCittc2dpZCAidHJpZ2dlcnMgYXJlYSIKK21zZ3N0ciAiZGlzcGFyw6F1IgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorIm51biBwdWVkZSBmYWNlc2UgYHN0YXQnIHNvYnJvJ2wgZmljaGVydSBkZXJlZmVyZW5jacOhdSBkZSBkaXNwYXJhZG9yZXMgYCIKKyIlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibnVuIHB1ZWRlIGFicmlzZSdsIGZpY2hlcnUgZGUgZGlzcGFyYWRvcmVzIGRlcmVmZXJlbmNpw6F1IGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4vY3JlYXRlIG5ldyB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisibnVuIHB1ZWRlIGFicmlzZS9jcmlhc2UnbCBudWV2dSBmaWNoZXJ1IGRlIGRpc3BhcmFkb3JlcyBkZXJlZmVyZW5jacOhdSBgIgorIiUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjIxNQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciByZWFkaW5nIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImZhbGx1IGFsIGxsZWVyIGxvcyBkaXNwYXJhZG9yZXMgZGVsIGZpY2hlcnUgZGVyZWZlcmVuY2nDoXUgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjIyMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKyJudW4gcHVlZGUgYWJyaXNlJ2wgbnVldnUgZmljaGVydSBkZXJlZmVyZW5jacOhdSBkZSBkaXNwYXJhZG9yZXMgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjIyOAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKyJudW4gcHVlZGUgemFycmFzZSdsIG51ZXZ1IGZpY2hlcnUgZGVyZWZlcmVuY2nDoXUgZGUgZGlzcGFyYWRvcmVzIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKyJudW4gcHVlZGUgaW5zdGFsYXNlJ2wgbnVldnUgZmljaGVydSBkZXJlZmVyZW5jacOhdSBkZSBkaXNwYXJhZG9yZXMgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzoyMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImludmFsaWQgb3IgdW5rbm93biBzeW50YXggaW4gdHJpZ2dlciBuYW1lIGAlLjI1MHMnIChpbiB0cmlnZ2VyIGludGVyZXN0cyBmb3IgIgorInBhY2thZ2UgYCUuMjUwcycpIgorbXNnc3RyICIiCisic8OtbnRheGlzIGRlc2Nvbm9jaWRhIG8gaW52w6FsaWRhIG5lbCBub21lIGRlbCBkaXNwYXJhZG9yIGAlLjI1MHMnIChuZWwgIgorImRpc3BhcmFkb3IgaW50ZXJlc8OhdSBwYWwgcGFxdWV0ZSBgJS4yNTBzJykiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzoyNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gdHJpZ2dlciBpbnRlcmVzdCBsaXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKyJudW4gcHVlZGUgYWJyaXNlJ2wgbnVldnUgZmljaGVydSBkZSBsbGlzdGEgZCdpbnRlcmVzZXMgZGUgZGlzcGFyYWRvcmVzIGAiCisiJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjI5MgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmV3aW5kIHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibnVuIHB1ZWRlIHJlYm9iaW5hc2UnbCBmaWNoZXJ1IGQnaW50ZXJlc2VzIGRlIGRpc3BhcmFkb3JlcyBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMwNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIHN5bnRheCBlcnJvcjsgaWxsZWdhbCBwYWNrYWdlIG5hbWUgYCUuMjUwcyc6ICIKKyIlLjI1MHMiCittc2dzdHIgIiIKKyJmYWxsdSBzaW50w6FjdGljdSBuZWwgZmljaGVydSBkJ2ludGVyZXNlcyBkZWwgZGlzcGFyYWRvciBgJS4yNTBzJzsgbm9tZSBkZSAiCisicGFxdWV0ZSBpbGxlZ2FsIGAlLjI1MHMnOiAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKyJudW4gcHVlZGUgZXNjcmliaXNlIHVuIG51ZXZ1IGZpY2hlcnUgZCdpbnRlcmVzZXMgZGUgZGlzcGFyYWRvcmVzIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzIxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAibnVuIHB1ZWRlIHphcnJhc2UnbCBudWV2dSBkaXNwYXJhZG9yIGRlbCBmaWNoZXJ1IGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzI0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlICclLjI1MHMnIgorbXNnc3RyICJudW4gcHVlZGUgemFycmFzZSdsIG51ZXZ1IGRpc3BhcmFkb3IgZGVsIGZpY2hlcnUgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorIm51biBwdWVkZSBpbnN0YWxhc2UgdW4gbnVldnUgZmljaGVydSBkJ2ludGVyZXNlcyBkZSBkaXNwYXJhZG9yZXMgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozNDAgbGliL2Rwa2cvdHJpZ2xpYi5jOjM0MiBsaWIvZHBrZy90cmlnbGliLmM6NDcyCisjOiBzcmMvcmVtb3ZlLmM6Mjg2IHNyYy9yZW1vdmUuYzozNzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlbW92ZSBgJS4yNTBzJyIKK21zZ3N0ciAibnVuIHNlIHB1ZWRlIGRlc2FuaWNpYXIgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozNjAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJudW4gcHVlZGUgY3JlYXNlIHVuIG51ZXZ1IGZpY2hlcnUgZCdpbnRlcmVzZXMgZGUgZGlzcGFyYWRvcmVzIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzgzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJudW4gcHVlZGUgemFycmFzZSdsIG51ZXZ1IGRpc3BhcmFkb3IgZGVsIGZpY2hlcnUgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0NTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImR1cGxpY2F0ZSBmaWxlIHRyaWdnZXIgaW50ZXJlc3QgZm9yIGZpbGVuYW1lIGAlLjI1MHMnIGFuZCBwYWNrYWdlIGAlLjI1MHMnIgorbXNnc3RyICIiCisiaW50ZXLDqXMgZGUgZGlzcGFyYWRvciBkZSBmaWNoZXJ1IGR1cGxpY8OhdSBwYWwgZmljaGVydSBgJS4yNTBzJyB5IGVsIHBhcXVldGUgYCIKKyIlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDgzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibnVuIHB1ZG8gY3JpYXNlJ2wgbnVldnUgZmljaGVydSBkZSBkaXNwYXJhZG9yZXMgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0OTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm51biBwdWRvIGVzY3JpYmlzZSdsIG51ZXZ1IGZpY2hlcnUgZGUgZGlzcGFyYWRvcmVzIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDk2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAibnVuIHB1ZG8gemFycmFzZSdsIG51ZXZ1IGZpY2hlcnUgZGUgZGlzcGFyYWRvcmVzIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDk5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlICclLjI1MHMnIgorbXNnc3RyICJudW4gcHVkbyB6YXJyYXNlJ2wgbnVldnUgZmljaGVydSBkZSBkaXNwYXJhZG9yZXMgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1MDMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm51biBwdWRvIHphcnJhc2UnbCBudWV2dSBmaWNoZXJ1IGRlIGRpc3BhcmFkb3JlcyBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjUwNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGFzIGAlLjI1MHMnIgorbXNnc3RyICJudW4gcHVlZGUgaW5zdGFsYXNlJ2wgbnVldnUgZmljaGVydSBkZSBkaXNwYXJhZG9yZXMgY29tbyBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjU0MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm51biBwdWVkZSBsbGVlc2UnbCBudWV2dSBmaWNoZXJ1IGRlIGRpc3BhcmFkb3JlcyBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjU1MgorIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJlcnJvciBzaW50w6F1dGljdSBuZWwgZmljaGVydSBkZSBkaXNwYXJhZG9yZXMgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImZpbGUgdHJpZ2dlcnMgcmVjb3JkIG1lbnRpb25zIGlsbGVnYWwgcGFja2FnZSBuYW1lIGAlLjI1MHMnIChmb3IgaW50ZXJlc3QgaW4gIgorImZpbGUgYCUuMjUwcycpOiAlLjI1MHMiCittc2dzdHIgIiIKKyJlbCBmaWNoZXJ1IGRlIHJleGlzdHJvcyBkZSBkaXNwYXJhZG9yZXMgbWVuY2lvbmEgdW4gbm9tZSBkZSBwYXF1ZXRlIGlsbGVnYWwgYCIKKyIlLjI1MHMnIChuZWwgZmljaGVydSBgJS4yNTBzJyk6ICUuMjUwcyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjY2NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidHJpZ2dlcnMgY2kgZmlsZSBgJS4yNTBzJyBjb250YWlucyBpbGxlZ2FsIHRyaWdnZXIgc3ludGF4IGluIHRyaWdnZXIgbmFtZSBgIgorIiUuMjUwcyc6ICUuMjUwcyIKK21zZ3N0ciAiIgorImZpY2hlcnUgZGUgZGlzcGFyYWRvcmVzIGNpIGAlLjI1MHMnIGNvbnRpw6luIHVuYSBzw61udGF4aXMgZGUgZGlzcGFyYWRvciAiCisiaWxsZWdhbCBuZWwgbm9tZSBkZSBkaXNwYXJhZG9yIGAlLjI1MHMnOiAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo2ODQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gdHJpZ2dlcnMgY2kgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibnVuIHB1ZWRlIGFicmlzZSdsIGZpY2hlcnUgZGUgZGlzcGFyYWRvcmVzIGNpIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Njk5Cittc2dpZCAidHJpZ2dlcnMgY2kgZmlsZSBjb250YWlucyB1bmtub3duIGRpcmVjdGl2ZSBzeW50YXgiCittc2dzdHIgIiIKKyJlbCBmaWNoZXJ1IGNpIGQnYWN0aXZhZG9yZXMgY29udGnDqW4gdW5hIHNpbnRheGlzIGRlIGRpcmVjdGl2YSBkZXNjb25vY2lkYSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjcxMgorIywgYy1mb3JtYXQKK21zZ2lkICJ0cmlnZ2VycyBjaSBmaWxlIGNvbnRhaW5zIHVua25vd24gZGlyZWN0aXZlIGAlLjI1MHMnIgorbXNnc3RyICJlbCBmaWNoZXJ1IGNpIGQnYWN0aXZhZG9yZXMgY29udGnDqW4gbGEgZGlyZWN0aXZhIGRlc2Nvbm9jaWRhIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Nzc2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdHJpZ2dlcnMgc3RhdGUgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICJudW4gcHVlIGNyaWFzZSdsIGRpcmV1dG9yaXUgZCdlc3RhdSBkJ2FjdGl2YWRvcmVzIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Nzc5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgb3duZXJzaGlwIG9mIHRyaWdnZXJzIHN0YXRlIGRpcmVjdG9yeSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorIm51biBwdWUgYWZpdGFzZSdsIHByb3BpZXRhcml1IGRlbCBkaXJldXRvcml1IGQnZXN0YXUgZCdhY3RpdmFkb3JlcyBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ25hbWUuYzozNAorbXNnaWQgImVtcHR5IHRyaWdnZXIgbmFtZXMgYXJlIG5vdCBwZXJtaXR0ZWQiCittc2dzdHIgIm51biBzZSBwZXJtaXRlbiBub21lcyBkZSBkaXNwYXJhZG9yZXMgZXJtb3MiCisKKyM6IGxpYi9kcGtnL3RyaWduYW1lLmM6MzgKK21zZ2lkICJ0cmlnZ2VyIG5hbWUgY29udGFpbnMgaW52YWxpZCBjaGFyYWN0ZXIiCittc2dzdHIgImVsIG5vbWUgZGVsIGRpc3BhcmFkb3IgY29udGnDqW4gY2FyYXV0ZXJlcyBpbnbDoWxpZG9zIgorCisjOiBsaWIvZHBrZy91dGlscy5jOjU2CisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWQgZXJyb3IgaW4gYCUuMjUwcyciCittc2dzdHIgImVycm9yIGRlIGxsZWN0dXJhIGVuIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy91dGlscy5jOjYxCisjLCBjLWZvcm1hdAorbXNnaWQgImZnZXRzIGdhdmUgYW4gZW1wdHkgc3RyaW5nIGZyb20gYCUuMjUwcyciCittc2dzdHIgImZnZXRzIHRvcm7DsyB1bmEgY2FkZW5hIGJhbGVyYSBkZW5kZSBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdXRpbHMuYzo2MworIywgYy1mb3JtYXQKK21zZ2lkICJ0b28tbG9uZyBsaW5lIG9yIG1pc3NpbmcgbmV3bGluZSBpbiBgJS4yNTBzJyIKK21zZ3N0ciAibGxpbmlhIG11aSBsbGFyZ2EgbyByZXRvcm51IGRlIGxsaW5pYSBwZXJkw611IGVuIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy91dGlscy5jOjc1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW9mIHJlYWRpbmcgYCUuMjUwcyciCittc2dzdHIgImZpbiBkZSBmaWNoZXJ1IGluZXNwZXLDoXUgYWwgbGxlZXIgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3ZhcmJ1Zi5jOjgyIGxpYi9kcGtnL3ZhcmJ1Zi5jOjg4Cittc2dpZCAiZXJyb3IgZm9ybWF0dGluZyBzdHJpbmcgaW50byB2YXJidWYgdmFyaWFibGUiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTc5IHNyYy9hcmNoaXZlcy5jOjIwMCBzcmMvYXJjaGl2ZXMuYzo3MjQKK21zZ2lkICJlcnJvciByZWFkaW5nIGZyb20gZHBrZy1kZWIgcGlwZSIKK21zZ3N0ciAiZXJyb3IgYWwgbGxlZXIgZGVsIHR1YnUgZGUgZHBrZy1kZWIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjE5NQorIywgYy1mb3JtYXQKK21zZ2lkICJza2lwcGVkIHVucGFja2luZyBmaWxlICclLjI1NXMnIChyZXBsYWNlZCBvciBleGNsdWRlZD8pIgorbXNnc3RyICJzYWx0YW5kbyBmaWNoZXJ1IGVuc2luIGVtcGFxdWV0YXIgJyUuMjU1cycgKHRyb2NhciBvIGVzY2x1eWlyPykiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjI0NiBzcmMvYXJjaGl2ZXMuYzoyNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igc2V0dGluZyB0aW1lc3RhbXBzIG9mIGAlLjI1NXMnIgorbXNnc3RyICJlcnJvciBhbCBhZml0YXIgbGVzIGRhdGVzIGRlIGAlLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoyNjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igc2V0dGluZyBvd25lcnNoaXAgb2Ygc3ltbGluayBgJS4yNTVzJyIKK21zZ3N0ciAiZXJyb3IgYWwgYWZpdGFyIGVsIHByb3BpZXRhcml1IGRlIGwnZW5sbGF6IHNpbWLDs2xpY3UgYCUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjI2NSBzcmMvYXJjaGl2ZXMuYzo3MzQgc3JjL3N0YXRjbWQuYzoxNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igc2V0dGluZyBvd25lcnNoaXAgb2YgYCUuMjU1cyciCittc2dzdHIgImVycm9yIGFsIGFmaXRhciBlbCBwcm9waWV0YXJpdSBkZSBgJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6MjY3IHNyYy9hcmNoaXZlcy5jOjczNiBzcmMvc3RhdGNtZC5jOjE2NQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIHBlcm1pc3Npb25zIG9mIGAlLjI1NXMnIgorbXNnc3RyICJlcnJvciBhbCBhZml0YXIgbG9zIHBlcm1pc29zIGRlIGAlLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzozOTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHN0YXQgKGRlcmVmZXJlbmNlKSBleGlzdGluZyBzeW1saW5rIGAlLjI1MHMnIgorbXNnc3RyICIiCisiZmFsbMOzIGFtb3NhciBsJ2VzdMOhdSAoc2lndWllbmRvIGVubGxhY2VzKSBkZSBsJ2VubGxheiBzaW1iw7NsaWN1IGVzaXN0ZW50ZSBgIgorIiUuMjUwcyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjQxNworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZmFpbGVkIHRvIHN0YXQgKGRlcmVmZXJlbmNlKSBwcm9wb3NlZCBuZXcgc3ltbGluayB0YXJnZXQgYCUuMjUwcycgZm9yICIKKyJzeW1saW5rIGAlLjI1MHMnIgorbXNnc3RyICIiCisiZmFsbMOzIGFtb3NhciBsJ2VzdMOhdSAoc2lndWllbmRvIGVubGxhY2VzKSBkZWwgZGVzdMOtbiBkZWwgZW5sbGF6IG51ZXZ1IGAiCisiJS4yNTBzJyBwYSBsJ2VubGxheiBzaW1iw7NsaWN1IGAlLjI1MHMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo0NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInRyeWluZyB0byBvdmVyd3JpdGUgYCUuMjUwcycsIHdoaWNoIGlzIHRoZSBkaXZlcnRlZCB2ZXJzaW9uIG9mIGAiCisiJS4yNTBzJyAocGFja2FnZTogJS4xMDBzKSIKK21zZ3N0ciAiIgorInRlbnRhbmRvIHNvYnJlc2NyaWJpciBgJS4yNTBzJywgcXVlIHllIGxhIHZlcnNpw7NuIGVzdmlhZGEgZGUgYCIKKyIlLjI1MHMnIChwYXF1ZXRlOiAlLjEwMHMpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo0ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJ5aW5nIHRvIG92ZXJ3cml0ZSBgJS4yNTBzJywgd2hpY2ggaXMgdGhlIGRpdmVydGVkIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dzdHIgInRlbnRhbmRvIHNvYnJlc2NyaWJpciBgJS4yNTBzJywgcXVlIHllIGxhIHZlcnNpw7NuIGVzdmlhZGEgZGUgYCUuMjUwcyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjUxMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBgJS4yNTVzJyAod2hpY2ggSSB3YXMgYWJvdXQgdG8gaW5zdGFsbCkiCittc2dzdHIgIm51biBwdWRvIGFtb3Nhc2UgbCdlc3TDoXUgZGUgYCUuMjU1cycgKHF1ZSB0YWJhIG5lbCBpbnRyZSBkJ2luc3RhbGFzZSkiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjUxOQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidW5hYmxlIHRvIGNsZWFuIHVwIG1lc3Mgc3Vycm91bmRpbmcgYCUuMjU1cycgYmVmb3JlIGluc3RhbGxpbmcgYW5vdGhlciAiCisidmVyc2lvbiIKK21zZ3N0ciAiIgorIm51biBwdWUgbGxpbXBpYXNlJ2wgYmFydXl1IGFsIHJvZGl1IGRlIGAlLjI1NXMnIGVuYW50ZXMgZCdpbnN0YWxhciBvdHJhICIKKyJ2ZXJzacOzbiIKKworIzogc3JjL2FyY2hpdmVzLmM6NTI1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IHJlc3RvcmVkIGAlLjI1NXMnIGJlZm9yZSBpbnN0YWxsaW5nIGFub3RoZXIgdmVyc2lvbiIKK21zZ3N0ciAiIgorIm51biBwdWUgYW1vc2FzZSBsJ2VzdMOhdSBkZSBgJS4yNTVzJyByZXN0YXVyYXUgZW5hbnRlcyBkJ2luc3RhbGFyIG90cmEgdmVyc2nDs24iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjU2MQorIywgYy1mb3JtYXQKK21zZ2lkICJhcmNoaXZlIGNvbnRhaW5lZCBvYmplY3QgYCUuMjU1cycgb2YgdW5rbm93biB0eXBlIDB4JXgiCittc2dzdHIgImwnYXJjaGl2dSBjb250ZW7DrWEgdW4gb3hldHUgYCUuMjU1cycgZGUgdHJpYmEgZGVzY29ub2PDrWEgMHgleCIKKworIzogc3JjL2FyY2hpdmVzLmM6NjI2IHNyYy9kaXZlcnRjbWQuYzoxNTAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjY4MgorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMjIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyODQKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNDQxIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNjgwCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE2NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI0NAorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MjcKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImNhbm5vdCBzdGF0IG9sZCBuYW1lIGAlcyc6ICVzIgorbXNnaWQgImNhbm5vdCBzdGF0IGZpbGUgJyVzJyIKK21zZ3N0ciAibnVuIHNlIHB1ZWRlIGZhY2VyIGBzdGF0JyBzb2JyZSdsIG5vbWUgYW50aWd1dSBgJXMnOiAlcyIKKworIzogc3JjL2FyY2hpdmVzLmM6NjQxCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlcGxhY2luZyBmaWxlcyBpbiBvbGQgcGFja2FnZSAlcyAuLi5cbiIKK21zZ3N0ciAiUmVlbXBsYXphbmRvIGxvcyBmaWNoZXJvcyBkZWwgcGFxdWV0ZSBhbnRpZ3V1ICVzIC4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVwbGFjZWQgYnkgZmlsZXMgaW4gaW5zdGFsbGVkIHBhY2thZ2UgJXMgLi4uXG4iCittc2dzdHIgIlJlZW1wbGF6YW9zIHBvbG9zIGZpY2hlcm9zIGRlbCBwYXF1ZXRlIGluc3RhbGF1ICVzIC4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ0cnlpbmcgdG8gb3ZlcndyaXRlIGRpcmVjdG9yeSAnJS4yNTBzJyBpbiBwYWNrYWdlICUuMjUwcyAlLjI1MHMgd2l0aCAiCisibm9uZGlyZWN0b3J5IgorbXNnc3RyICIiCisidGVudGFuZG8gc29icmVlc2NyaWJpciBlbCBkaXJldXRvcml1IGAlLjI1MHMnIGRlbCBwYXF1ZXRlICUuMjUwcyBjb24gdW4gbm9uICIKKyJkaXJldXRvcml1IgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInRyeWluZyB0byBvdmVyd3JpdGUgJyUuMjUwcycsIHdoaWNoIGlzIGFsc28gaW4gcGFja2FnZSAlLjI1MHMgJS4yNTBzIgorbXNnc3RyICJ0ZW50YW5kbyBzb2JyZWVzY3JpYmlyIGAlLjI1MHMnLCBxdWUgdGFtacOpbiB0YSBuZWwgcGFxdWV0ZSAlLjI1MHMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjcxMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGAlLjI1NXMnICh3aGlsZSBwcm9jZXNzaW5nIGAlLjI1NXMnKSIKK21zZ3N0ciAiaW1wb3NpYmxlIGNyaWFyIGAlLjI1NXMnIChtaWVudHJlcyBzZSBwcm9jZXNhYiBgJS4yNTVzJykiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjcxOAorIywgYy1mb3JtYXQKK21zZ2lkICJiYWNrZW5kIGRwa2ctZGViIGR1cmluZyBgJS4yNTVzJyIKK21zZ3N0ciAibWFuZGFzZSBkZSBkcGtnLWRlYiBkZW1pZW50cmVzIGAlLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NDQgc3JjL2FyY2hpdmVzLmM6OTA4IHNyYy9hcmNoaXZlcy5jOjk0OQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nL3dyaXRpbmcgYCUuMjU1cyciCittc2dzdHIgImVycm9yIGFsIHphcnJhci9lc2NyaWJpciBgJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6NzQ4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIHBpcGUgYCUuMjU1cyciCittc2dzdHIgImVycm9yIGFsIGNyaWFyIGVsIHR1YnUgYCUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc1MyBzcmMvYXJjaGl2ZXMuYzo3NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgZGV2aWNlIGAlLjI1NXMnIgorbXNnc3RyICJlcnJvciBhbCBjcmlhciBlbCBwcmVzw6l1IGAlLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgaGFyZCBsaW5rIGAlLjI1NXMnIgorbXNnc3RyICJlcnJvciBhbCBjcmlhciBsJ2VubGxheiBkdXJ1IGAlLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NzcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjUzOQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBzeW1ib2xpYyBsaW5rIGAlLjI1NXMnIgorbXNnc3RyICJlcnJvciBhbCBjcmlhciBsJ2VubGxheiBzaW1iw7NsaWN1IGAlLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgZGlyZWN0b3J5IGAlLjI1NXMnIgorbXNnc3RyICJlcnJvciBhbCBjcmlhciBlbCBkaXJldXRvcml1IGAlLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4MjIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG1vdmUgYXNpZGUgYCUuMjU1cycgdG8gaW5zdGFsbCBuZXcgdmVyc2lvbiIKK21zZ3N0ciAibnVuIHB1ZSBhcGFydGFzZSBgJS4yNTVzJyBwYSBpbnN0YWxhciBsYSB2ZXJzacOzbiBudWV2YSIKKworIzogc3JjL2FyY2hpdmVzLmM6ODMyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzozMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgbGluayBgJS4yNTVzJyIKK21zZ3N0ciAibnVuIHB1ZSBsbGVlc2UgbCdlbmxsYXogYCUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjgzNCBzcmMvY29uZmlndXJlLmM6NDIzCisjLCBjLWZvcm1hdAorbXNnaWQgInN5bWJvbGljIGxpbmsgJyUuMjUwcycgc2l6ZSBoYXMgY2hhbmdlZCBmcm9tICVqZCB0byAlemQiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6ODM5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBtYWtlIGJhY2t1cCBzeW1saW5rIGZvciBgJS4yNTVzJyIKK21zZ3N0ciAibnVuIHB1ZSBmYWNlc2UgZW5sbGF6IHNpbWLDs2xpY3UgZGUgc2VndXJpZMOhIHBhIGAlLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNob3duIGJhY2t1cCBzeW1saW5rIGZvciBgJS4yNTVzJyIKK21zZ3N0ciAibnVuIHB1ZSBjYW11ZGFzZSdsIGR1ZcOxdSBkZSBsJ2VubGxheiBzaW1iw7NsaWN1IGRlIHNlZ3VyaWTDoSBwYSBgJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6ODQ2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBtYWtlIGJhY2t1cCBsaW5rIG9mIGAlLjI1NXMnIGJlZm9yZSBpbnN0YWxsaW5nIG5ldyB2ZXJzaW9uIgorbXNnc3RyICIiCisibnVuIHB1ZSBmYWNlc2UgbCdlbmxsYXogZGUgc2VndXJpZMOhIGRlIGAlLjI1NXMnIGVuYW50ZXMgZCdpbnN0YWxhciBsYSAiCisidmVyc2nDs24gbnVldmEiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjg2MyBzcmMvYXJjaGl2ZXMuYzo5NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IHZlcnNpb24gb2YgYCUuMjU1cyciCittc2dzdHIgIm51biBwdWUgaW5zdGFsYXNlIGxhIHZlcnNpw7NuIG51ZXZhIGRlIGAlLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo5MDIgc3JjL2FyY2hpdmVzLmM6OTQ1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiAnJS4yNTVzJyIKK21zZ3N0ciAibnVuIHB1ZWRlIGNyZWFzZSAnJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6OTQ3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBmaWxlICclLjI1NXMnIgorbXNnc3RyICJudW4gcHVlZGUgZGVzZmFjZXNlJ2wgYsO6ZmVyIGAlLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDAwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpZ25vcmluZyBkZXBlbmRlbmN5IHByb2JsZW0gd2l0aCAlczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImlub3JhbmRvIGVsIHByb2JsZW1hIGRlIGRlcGVuZGVuY2llcyBjb24gJXM6XG4iCisiJXMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImNvbnNpZGVyaW5nIGRlY29uZmlndXJhdGlvbiBvZiBlc3NlbnRpYWxcbiIKKyIgcGFja2FnZSAlcywgdG8gZW5hYmxlICVzLiIKK21zZ3N0ciAiIgorInZhbG9yYW5kbyBsYSBkZXNjb25maWd1cmFjacOzbiBkZWwgcGFxdWV0ZVxuIgorIiBlc2VuY2lhbCAlcywgcCdhY3RpdmFyICVzLiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAwOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogbm8sICVzIGlzIGVzc2VudGlhbCwgd2lsbCBub3QgZGVjb25maWd1cmVcbiIKKyIgaXQgaW4gb3JkZXIgdG8gZW5hYmxlICVzLlxuIgorbXNnc3RyICIiCisiZHBrZzogbm9uLCAlcyB5ZSBlc2VuY2lhbCwgbnVuIHZhIGRlc2NvbmZpZ3VyYXNlXG4iCisiIGNvbCBlbnbDrXMgZCdhY3RpdmFyICVzLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDIyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBubywgY2Fubm90IHByb2NlZWQgd2l0aCAlcyAoLS1hdXRvLWRlY29uZmlndXJlIHdpbGwgaGVscCk6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiBub24sIG51biBwdWUgY29udGludWFzZSBjb24gJXMgKC0tYXV0by1kZWNvbmZpZ3VyZSBhaWRhcsOhKTpcbiIKKyIlcyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAzMgorIywgYy1mb3JtYXQKK21zZ2lkICJyZW1vdmFsIG9mICUuMjUwcyIKK21zZ3N0ciAiZWxpbWluYWNpw7NuIGRlICUuMjUwcyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA1NworIywgYy1mb3JtYXQKK21zZ2lkICJpbnN0YWxsYXRpb24gb2YgJS4yNTBzIgorbXNnc3RyICJpbnN0YWxhY2nDs24gZGUgJS4yNTBzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDU4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBjb25zaWRlcmluZyBkZWNvbmZpZ3VyYXRpb24gb2YgJXMsIHdoaWNoIHdvdWxkIGJlIGJyb2tlbiBieSAlcyAuLi5cbiIKK21zZ3N0ciAiZHBrZzogYWxiaWRyYW5kbyBkZXNjb25maWd1cmFyICVzLCBxdWUgZnJhw7FhcsOtYXNlIHBvciAlcyAuLi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA2NQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiB5ZXMsIHdpbGwgZGVjb25maWd1cmUgJXMgKGJyb2tlbiBieSAlcykuXG4iCittc2dzdHIgImRwa2c6IHPDrSwgZGVzY29uZmlndXJhcmFzZSAlcyAoZnJhw7HDoXUgcG9yICVzKS5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA2OSBzcmMvYXJjaGl2ZXMuYzoxMTg3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiByZWdhcmRpbmcgJXMgY29udGFpbmluZyAlczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6IHRvY2FudGUgYSAlcyBxdWUgY29udGnDqW4gJXM6XG4iCisiJXMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNzcKK21zZ2lkICJpZ25vcmluZyBicmVha2FnZSwgbWF5IHByb2NlZWQgYW55d2F5ISIKK21zZ3N0ciAiZXNjYWVjaWVuZG8nbCBmcmHDsWFtaWVudHUsIMKhcHVlIHNpZ3Vpc2UgbG8gbWVzbW8hIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDgyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpbnN0YWxsaW5nICUuMjUwcyB3b3VsZCBicmVhayAlLjI1MHMsIGFuZFxuIgorIiBkZWNvbmZpZ3VyYXRpb24gaXMgbm90IHBlcm1pdHRlZCAoLS1hdXRvLWRlY29uZmlndXJlIG1pZ2h0IGhlbHApIgorbXNnc3RyICIiCisiaW5zdGFsYXIgJS4yNTBzIGZyYcOxYXLDrWEgJS4yNTBzLCB5IGxhXG4iCisiIGRlc2NvbmZpZ3VyYWNpw7NuIHRhIHRvcmdhZGEgKC0tYXV0by1kZWNvbmZpZ3VyZSBwdWUgYWlkYXIpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDg2CisjLCBjLWZvcm1hdAorbXNnaWQgImluc3RhbGxpbmcgJS4yNTBzIHdvdWxkIGJyZWFrIGV4aXN0aW5nIHNvZnR3YXJlIgorbXNnc3RyICJpbnN0YWxhciAlLjI1MHMgZnJhw7FhcsOtYSBzb2Z0d2FyZSBlc2lzdGVudGUiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExMTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogY29uc2lkZXJpbmcgcmVtb3ZpbmcgJXMgaW4gZmF2b3VyIG9mICVzIC4uLlxuIgorbXNnc3RyICJkcGtnOiBhbGJpZHJhbmRvIHF1aXRhciAlcyBlbiBmYXZvciBkZSAlcyAuLi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTEyMgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgcHJvcGVybHkgaW5zdGFsbGVkIC0gaWdub3JpbmcgYW55IGRlcGVuZGVuY2llcyBvbiBpdC5cbiIKK21zZ3N0ciAiJXMgbnVuIHRhIGNvcnJldXRhbWVudGUgaW5zdGFsw6F1IC0gZXNjYWVjaWVuZG8gbG8gcXVlIGRlcGVuZGUgZCdlbC5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE1MQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiBtYXkgaGF2ZSB0cm91YmxlIHJlbW92aW5nICVzLCBhcyBpdCBwcm92aWRlcyAlcyAuLi5cbiIKK21zZ3N0ciAiZHBrZzogcXVpdGFyICVzIHB1ZSBkYXIgcHJvYmxlbWVzLCBwb3JxdWUgdWZyZSAlcyAuLi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE2NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogcGFja2FnZSAlcyByZXF1aXJlcyByZWluc3RhbGxhdGlvbiwgYnV0IHdpbGwgcmVtb3ZlIGFueXdheSBhcyB5b3UgIgorInJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiIgorImRwa2c6IGVsIHBhcXVldGUgJXMgcmVxdWllciByZWluc3RhbGFjacOzbiwgcGVybyB2YSBkZXNhbmljaWFzZSBkZSB0b2VzICIKKyJtYW5lcmVzLCBjb21vIHR1IHBpZGlzdGUuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExNjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogcGFja2FnZSAlcyByZXF1aXJlcyByZWluc3RhbGxhdGlvbiwgd2lsbCBub3QgcmVtb3ZlLlxuIgorbXNnc3RyICJkcGtnOiBlbCBwYXF1ZXRlICVzIHJlcXVpZXIgcmVpbnN0YWxhY2nDs24sIG51biB2YSBxdWl0YXNlLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTc4CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IHllcywgd2lsbCByZW1vdmUgJXMgaW4gZmF2b3VyIG9mICVzLlxuIgorbXNnc3RyICJkcGtnOiBzw60sIHF1aXRhcmFzZSAlcyBlbiBmYXZvciBkZSAlcy5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE5MAorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mbGljdGluZyBwYWNrYWdlcyAtIG5vdCBpbnN0YWxsaW5nICUuMjUwcyIKK21zZ3N0ciAiY29uZmxpY3R1IGVudGUgcGFxdWV0ZXMgLSBudW4gcydpbnN0YWxhICUuMjUwcyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE5MQorbXNnaWQgImlnbm9yaW5nIGNvbmZsaWN0LCBtYXkgcHJvY2VlZCBhbnl3YXkhIgorbXNnc3RyICJlc2NhZWNpZW5kbydsIGNvbmZsaWN0dSwgwqFwdWUgc2lndWlzZSBpZ3VhbCEiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyMzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyAtLXJlY3Vyc2l2ZSBuZWVkcyBhdCBsZWFzdCBvbmUgcGF0aCBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyAtLXJlY3Vyc2l2ZSBuZWNlc2l0YSBwb2xvIG1lbm9zIHVuIGFyZ3VtZW50dSBjYW3DrW4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNDUKKyMsIGZ1enp5Cittc2dpZCAiZmluZCBmb3IgZHBrZyAtLXJlY3Vyc2l2ZSIKK21zZ3N0ciAiZmFsbMOzIGxhIGV4ZWN1Y2nDs24gZGUgZmluZCBwYSAtLXJlY3Vyc2l2ZSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI2NgorbXNnaWQgImZhaWxlZCB0byBmZG9wZW4gZmluZCdzIHBpcGUiCittc2dzdHIgImZhbGzDsyBmYWNlciBmZG9wZW4gbmVsIHR1YnUgZGUgZmluZCIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3MgorbXNnaWQgImVycm9yIHJlYWRpbmcgZmluZCdzIHBpcGUiCittc2dzdHIgImVycm9yIGFsIGxsZWVyIGVsIHR1YnUgZGUgZmluZCIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3MworbXNnaWQgImVycm9yIGNsb3NpbmcgZmluZCdzIHBpcGUiCittc2dzdHIgImVycm9yIGFsIHphcnJhciBlbCB0dWJ1IGRlIGZpbmQiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmluZCBmb3IgLS1yZWN1cnNpdmUgcmV0dXJuZWQgdW5oYW5kbGVkIGVycm9yICVpIgorbXNnc3RyICJmaW5kIHBhIC0tcmVjdXJzaXZlIGRldm9sdmnDsyBsJ2Vycm9yIG51biByZW1hbmFvICVpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjc5Cittc2dpZCAic2VhcmNoZWQsIGJ1dCBmb3VuZCBubyBwYWNrYWdlcyAoZmlsZXMgbWF0Y2hpbmcgKi5kZWIpIgorbXNnc3RyICJndWV0YW8sIHBlcm8gbnVuIHMnYWxjb250cmFyb24gcGFxdWV0ZXMgKGZpY2hlcm9zIHF1ZSBjb25jYXNlbiAqLmRlYikiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhdCBsZWFzdCBvbmUgcGFja2FnZSBhcmNoaXZlIGZpbGUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMgbmVjZXNpdGEgZCdhcmd1bWVudHUgcG9sbyBtZW5vcyB1biBmaWNoZXJ1IGQnYXJjaGl2dSBkZSBwYXF1ZXRlIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzI1IHNyYy9kaXZlcnRjbWQuYzo3OCBzcmMvZGl2ZXJ0Y21kLmM6MTE4CisjOiBzcmMvZW5xdWlyeS5jOjE2NiBzcmMvZW5xdWlyeS5jOjI3OSBzcmMvZW5xdWlyeS5jOjQ0OSBzcmMvZW5xdWlyeS5jOjQ1MQorIzogc3JjL2VucXVpcnkuYzo0NjQgc3JjL21haW4uYzo2NiBzcmMvbWFpbi5jOjE2MyBzcmMvbWFpbi5jOjMxNAorIzogc3JjL21haW4uYzo0OTMgc3JjL3BhY2thZ2VzLmM6MjU0IHNyYy9xdWVyeWNtZC5jOjI1MiBzcmMvcXVlcnljbWQuYzozNTUKKyM6IHNyYy9xdWVyeWNtZC5jOjM5NiBzcmMvcXVlcnljbWQuYzo0MDQgc3JjL3F1ZXJ5Y21kLmM6NDQ4IHNyYy9xdWVyeWNtZC5jOjUxNworIzogc3JjL3F1ZXJ5Y21kLmM6NjA2IHNyYy9xdWVyeWNtZC5jOjY1MCBzcmMvc2VsZWN0LmM6Nzkgc3JjL3N0YXRjbWQuYzo2OAorIzogc3JjL3N0YXRjbWQuYzo5OCBzcmMvdHJpZ2NtZC5jOjU4IHNyYy90cmlnY21kLmM6OTAgZHBrZy1kZWIvYnVpbGQuYzo0NDEKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyMTcgZHBrZy1kZWIvZXh0cmFjdC5jOjI1MCBkcGtnLWRlYi9pbmZvLmM6MjAzCisjOiBkcGtnLWRlYi9pbmZvLmM6MjY1IGRwa2ctZGViL21haW4uYzo2MCBkcGtnLWRlYi9tYWluLmM6MTI2CisjOiBkcGtnLXNwbGl0L2luZm8uYzoyNTcgZHBrZy1zcGxpdC9tYWluLmM6NTQgZHBrZy1zcGxpdC9tYWluLmM6OTgKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxNDQgZHBrZy1zcGxpdC9xdWV1ZS5jOjI4MAorbXNnaWQgIjxzdGFuZGFyZCBvdXRwdXQ+IgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzMjYgc3JjL3BhY2thZ2VzLmM6MjU1IHNyYy9xdWVyeWNtZC5jOjI1MworIzogc3JjL3F1ZXJ5Y21kLmM6MzUzIHNyYy9xdWVyeWNtZC5jOjQ1NCBzcmMvcXVlcnljbWQuYzo1MTggc3JjL3NlbGVjdC5jOjgwCisjOiBkcGtnLXNwbGl0L21haW4uYzoxNjkgZHBrZy1zcGxpdC9xdWV1ZS5jOjIxOAorbXNnaWQgIjxzdGFuZGFyZCBlcnJvcj4iCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTM2NworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiU2VsZWN0aW5nIHByZXZpb3VzbHkgZGVzZWxlY3RlZCBwYWNrYWdlICVzLlxuIgorbXNnaWQgIlNlbGVjdGluZyBwcmV2aW91c2x5IHVuc2VsZWN0ZWQgcGFja2FnZSAlcy5cbiIKK21zZ3N0ciAiU2VsZWljaW9uYW5kbyBlbCBwYXF1ZXRlIGVuYW50ZXMgZGVzZWxlaWNpb27DoXUgJXMuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzNzEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIlNraXBwaW5nIGRlc2VsZWN0ZWQgcGFja2FnZSAlcy5cbiIKK21zZ2lkICJTa2lwcGluZyB1bnNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dzdHIgIlNhbHRhbmRvJ2wgcGFxdWV0ZSBkZXNlbGVpY2lvbsOhdSAlcy5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTM4NworIywgYy1mb3JtYXQKK21zZ2lkICJWZXJzaW9uICUuMjUwcyBvZiAlLjI1MHMgYWxyZWFkeSBpbnN0YWxsZWQsIHNraXBwaW5nLlxuIgorbXNnc3RyICJMYSB2ZXJzacOzbiAlLjI1MHMgZGUgJS4yNTBzIHlhIHRhIGluc3RhbGFkYSwgc2FsdGFuZG8uXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzOTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZG93bmdyYWRpbmcgJS4yNTBzIGZyb20gJS4yNTBzIHRvICUuMjUwcy4iCittc2dzdHIgImRlc2FjdHVhbGl6YW5kbyAlLjI1MHMgZGUgJS4yNTBzIGEgJS4yNTBzLiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTQwMgorIywgYy1mb3JtYXQKK21zZ2lkICJXaWxsIG5vdCBkb3duZ3JhZGUgJS4yNTBzIGZyb20gdmVyc2lvbiAlLjI1MHMgdG8gJS4yNTBzLCBza2lwcGluZy5cbiIKK21zZ3N0ciAiIgorIk51biB2YSBkZXNhY3R1YWxpemFzZSAlLjI1MHMgZGUgbGEgdmVyc2nDs24gJS4yNTBzIGEgbGEgJS4yNTBzLCBzYWx0YW5kby5cbiIKKworIzogc3JjL2NsZWFudXAuYzo4NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidW5hYmxlIHRvIHJlbW92ZSBuZXdseS1pbnN0YWxsZWQgdmVyc2lvbiBvZiBgJS4yNTBzJyB0byBhbGxvdyByZWluc3RhbGxhdGlvbiAiCisib2YgYmFja3VwIGNvcHkiCittc2dzdHIgIiIKKyJudW4gcHVlIHF1aXRhc2UgbGEgbnVldmEgdmVyc2nDs24gaW5zdGFsYWRhIGRlIGAlLjI1MHMnIHBhIHJlaW5zdGFsYXIgbGEgIgorImNvcGlhIGRlIHNlZ3VyaWTDoSIKKworIzogc3JjL2NsZWFudXAuYzo5MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVzdG9yZSBiYWNrdXAgdmVyc2lvbiBvZiBgJS4yNTBzJyIKK21zZ3N0ciAibnVuIHB1ZSByZXN0YXVyYXNlIGxhIHZlcnNpw7NuIGRlIHNlZ3VyaWTDoSBkZSBgJS4yNTBzJyIKKworIzogc3JjL2NsZWFudXAuYzo5NworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHJlc3RvcmUgYmFja3VwIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBiYWNrdXAgY29weSBvZiAnJS4yNTBzJyIKK21zZ3N0ciAibnVuIHB1ZSByZXN0YXVyYXNlIGxhIHZlcnNpw7NuIGRlIHNlZ3VyaWTDoSBkZSBgJS4yNTBzJyIKKworIzogc3JjL2NsZWFudXAuYzoxMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBuZXdseS1pbnN0YWxsZWQgdmVyc2lvbiBvZiBgJS4yNTBzJyIKK21zZ3N0ciAibnVuIHB1ZSBxdWl0YXNlIGxhIG51ZXZhIHZlcnNpw7NuIGluc3RhbGFkYSBkZSBgJS4yNTBzJyIKKworIzogc3JjL2NsZWFudXAuYzoxMDgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBuZXdseS1leHRyYWN0ZWQgdmVyc2lvbiBvZiBgJS4yNTBzJyIKK21zZ3N0ciAibnVuIHB1ZSBxdWl0YXNlIGxhIG51ZXZhIHZlcnNpw7NuIGVzdHJhecOtYSBkZSBgJS4yNTBzJyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjEwNAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHN0YXQgbmV3IGRpc3QgY29uZmZpbGUgYCUuMjUwcyciCittc2dpZCAidW5hYmxlIHRvIHN0YXQgbmV3IGRpc3RyaWJ1dGVkIGNvbmZmaWxlICclLjI1MHMnIgorbXNnc3RyICJudW4gcydhdG9ww7MgbCdlc3RhdSBkZWwgbnVldnUgZmljaGVydSBjb25maWcgZGlzdCBgJS4yNTBzJyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBjdXJyZW50IGluc3RhbGxlZCBjb25mZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibnVuIHMnYXRvcMOzIGwnZXN0YXUgZGVsIGZpY2hlcnUgY29uZmlnIGAlLjI1MHMnIGluc3RhbMOhdSBhY3R1YWxtZW50ZSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjEyNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiQ29uZmlndXJhdGlvbiBmaWxlIGAlcycsIGRvZXMgbm90IGV4aXN0IG9uIHN5c3RlbS5cbiIKKyJJbnN0YWxsaW5nIG5ldyBjb25maWcgZmlsZSBhcyB5b3UgcmVxdWVzdGVkLlxuIgorbXNnc3RyICIiCisiXG4iCisiRWwgZmljaGVydSBkZSBjb25maWd1cmFjacOzbiBgJXMnLCBudW4gZXNpc3RlIG5lbCBzaXN0ZW1hLlxuIgorIkluc3RhbGFuZG8gZWwgZmljaGVydSBkZSBjb25maWcgbnVldnUgY29tbyBzZSBwaWRpZXJhLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTY4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlIG9sZCBiYWNrdXAgJyUuMjUwcyc6ICVzIgorbXNnc3RyICIlczogZmFsbMOzIGRlc2FuaWNpYXIgbGEgY29waWEgYW50aWd1YSAnJS4yNTBzJzogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW5hbWUgJyUuMjUwcycgdG8gJyUuMjUwcyc6ICVzIgorbXNnc3RyICIlczogZmFsbMOzIHJlbm9tYXIgJyUuMjUwcycgY29tbyAnJS4yNTBzJzogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW1vdmUgJyUuMjUwcyc6ICVzIgorbXNnc3RyICIlczogZmFsbMOzIGFsIGRlc2FuaWNpYXIgJyUuMjUwcyc6ICVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTg4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIlczogZmFpbGVkIHRvIHJlbW92ZSBvbGQgZGlzdHJpYiB2ZXJzaW9uICclLjI1MHMnOiAlcyIKK21zZ2lkICIlczogZmFpbGVkIHRvIHJlbW92ZSBvbGQgZGlzdHJpYnV0ZWQgdmVyc2lvbiAnJS4yNTBzJzogJXMiCittc2dzdHIgIiVzOiBmYWxsw7MgZGVzYW5pY2lhciBsYSB2ZXJzacOzbiB2aWV5YSBkZSBsYSBkaXN0cmlidWNpw7NuICclLjI1MHMnOiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE5MgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIHJlbW92ZSAnJS4yNTBzJyAoYmVmb3JlIG92ZXJ3cml0ZSk6ICVzIgorbXNnc3RyICIlczogZmFsbMOzIGRlc2FuaWNpYXIgJyUuMjUwcycgKGVuYW50ZXMgZGUgc29icmVlc2NyaWJpcik6ICVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTk2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gbGluayAnJS4yNTBzJyB0byAnJS4yNTBzJzogJXMiCittc2dzdHIgIiVzOiBmYWxsw7MgZW5sbGF6YXIgJyUuMjUwcycgYSAnJS4yNTBzJzogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoyMDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW5zdGFsbGluZyBuZXcgdmVyc2lvbiBvZiBjb25maWcgZmlsZSAlcyAuLi5cbiIKK21zZ3N0ciAiSW5zdGFsYW5kbyBsYSB2ZXJzacOzbiBudWV2YSBkZWwgZmljaGVydSBkZSBjb25maWd1cmFjacOzbiAlcyAuLi5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjIwNiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NTQ2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIGAlLjI1MHMnIGFzIGAlLjI1MHMnIgorbXNnc3RyICJudW4gcHVlIGluc3RhbGFzZSBgJS4yNTBzJyBjb21vIGAlLjI1MHMnIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjU3CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHBhY2thZ2UgbmFtZWQgYCVzJyBpcyBpbnN0YWxsZWQsIGNhbm5vdCBjb25maWd1cmUiCittc2dzdHIgIm51biB0YSBpbnN0YWzDoXUgZGVuZ8O6biBwYXF1ZXRlIG5vbcOhdSBgJXMnLCBudW4gcHVlIGNvbmZpZ3VyYXNlIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjYwCisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgJS4yNTBzIGlzIGFscmVhZHkgaW5zdGFsbGVkIGFuZCBjb25maWd1cmVkIgorbXNnc3RyICJlbCBwYXF1ZXRlICUuMjUwcyB5w6EgdGEgaW5zdGFsw6F1IHkgY29uZmlndXLDoXUiCisKKyM6IHNyYy9jb25maWd1cmUuYzoyNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInBhY2thZ2UgJS4yNTBzIGlzIG5vdCByZWFkeSBmb3IgY29uZmlndXJhdGlvblxuIgorIiBjYW5ub3QgY29uZmlndXJlIChjdXJyZW50IHN0YXR1cyBgJS4yNTBzJykiCittc2dzdHIgIiIKKyJlbCBwYXF1ZXRlICUuMjUwcyBudW4gdGEgcHJlcGFyw6F1IHBhIGNvbmZpZ3VyYXNlXG4iCisiIG51biBwdWUgY29uZmlndXJhc2UgKGVzdGF1IGFjdHVhbCBgJS4yNTBzJykiCisKKyM6IHNyYy9jb25maWd1cmUuYzoyOTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IGRlcGVuZGVuY3kgcHJvYmxlbXMgcHJldmVudCBjb25maWd1cmF0aW9uIG9mICVzOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogcHJvYmxlbWVzIGRlIGRlcGVuZGVuY2llcyB0b3JndWVuIGxhIGNvbmZpZ3VyYWNpw7NuIGRlICVzOlxuIgorIiVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6Mjk3Cittc2dpZCAiZGVwZW5kZW5jeSBwcm9ibGVtcyAtIGxlYXZpbmcgdW5jb25maWd1cmVkIgorbXNnc3RyICJwcm9ibGVtZXMgZGUgZGVwZW5kZW5jaWVzIC0gZMOpeGFzZSBlbnNpbiBjb25maWd1cmFyIgorCisjOiBzcmMvY29uZmlndXJlLmM6MzAxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiAlczogZGVwZW5kZW5jeSBwcm9ibGVtcywgYnV0IGNvbmZpZ3VyaW5nIGFueXdheSBhcyB5b3UgcmVxdWVzdGVkOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogJXM6IHByb2JsZW1lcyBkZSBkZXBlbmRlbmNpZXMsIHBlcm8gdmEgY29uZmlndXJhc2UgaWd1YWwgY29tbyBzZSAiCisicGlkacOzOlxuIgorIiVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MzA5Cittc2dpZCAiIgorIlBhY2thZ2UgaXMgaW4gYSB2ZXJ5IGJhZCBpbmNvbnNpc3RlbnQgc3RhdGUgLSB5b3Ugc2hvdWxkXG4iCisiIHJlaW5zdGFsbCBpdCBiZWZvcmUgYXR0ZW1wdGluZyBjb25maWd1cmF0aW9uLiIKK21zZ3N0ciAiIgorIkVsIHBhcXVldGUgdGEgbnVuIGVzdMOhdSBlbmZvcm1hIGdhZmllbnR1IC0gaGFicsOtYSBxdWVcbiIKKyIgcmVpbnN0YWxhbHUgZW5hbnRlcyBkZSB0ZW50YXIgbGEgY29uZmlndXJhY2nDs24uIgorCisjOiBzcmMvY29uZmlndXJlLmM6MzEyCisjLCBjLWZvcm1hdAorbXNnaWQgIlNldHRpbmcgdXAgJXMgKCVzKSAuLi5cbiIKK21zZ3N0ciAiQ29uZmlndXJhbmRvICVzICglcykgLi4uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzozOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiB1bmFibGUgdG8gc3RhdCBjb25maWcgZmlsZSAnJXMnXG4iCisiICg9ICclcycpOiAlcyIKK21zZ3N0ciAiIgorIiVzOiBudW4gcHVlIHNhYmVzZSBsJ2VzdMOhdSBkZWwgZmljaGVydSBjb25maWcgJyVzJ1xuIgorIiAoPSBgJXMnKTogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzo0MDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBjb25maWcgZmlsZSAnJXMnIGlzIGEgY2lyY3VsYXIgbGlua1xuIgorIiAoPSAnJXMnKSIKK21zZ3N0ciAiIgorIiVzOiBlbCBmaWNoZXJ1IGNvbmZpZyAnJXMnIHllIHVuIGVubGxheiBjaXJjdWxhclxuIgorIiAoPSAnJXMnKSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQxOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IHVuYWJsZSB0byByZWFkbGluayBjb25mZmlsZSAnJXMnXG4iCisiICg9ICclcycpOiAlcyIKK21zZ3N0ciAiIgorIiVzOiBudW4gcHVlIGxsZWVzZSBsJ2VubGxheiBhbCBmaWNoZXJ1IGNvbmYgJyVzJ1xuIgorIiAoPSAnJXMnKTogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzo0NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBjb25mZmlsZSAnJS4yNTBzJyByZXNvbHZlcyB0byBkZWdlbmVyYXRlIGZpbGVuYW1lXG4iCisiICgnJXMnIGlzIGEgc3ltbGluayB0byAnJXMnKSIKK21zZ3N0ciAiIgorIiVzOiBlbCBmaWNoZXJ1IGNvbmYgJyUuMjUwcycgYXB1bnRhIGEgdW4gbm9tZSBkZXhlbmVyw6F1XG4iCisiICgnJXMnIHllIGVubGxheiBzaW1iw7NsaWN1IGEgJyVzJykiCisKKyM6IHNyYy9jb25maWd1cmUuYzo0NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGNvbmZmaWxlICclLjI1MHMnIGlzIG5vdCBhIHBsYWluIGZpbGUgb3Igc3ltbGluayAoPSAnJXMnKSIKK21zZ3N0ciAiIgorIiVzOiBlbCBmaWNoZXJ1IGNvbmYgJyUuMjUwcycgbnVuIHllIHVuIHNpbXBsZSBmaWNoZXJ1IG8gZW5sbGF6ICg9ICclcycpIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDg2Cittc2dpZCAibWQ1aGFzaCIKK21zZ3N0ciAiaGFzaCBtZDUiCisKKyM6IHNyYy9jb25maWd1cmUuYzo0OTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IHVuYWJsZSB0byBvcGVuIGNvbmZmaWxlICVzIGZvciBoYXNoOiAlcyIKK21zZ3N0ciAiJXM6IG51biBwdWUgYWJyaXNlJ2wgZmljaGVydSBjb25mICVzIHBhIGZhY2VyIGhhc2g6ICVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6NTIyIHNyYy9jb25maWd1cmUuYzo1MjYKK21zZ2lkICJjb25mZmlsZSBkaWZmZXJlbmNlIHZpc3VhbGl6ZXIiCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjU0MworbXNnaWQgIlR5cGUgYGV4aXQnIHdoZW4geW91J3JlIGRvbmUuXG4iCittc2dzdHIgIkVuIGFjYWJhbmRvLCBlc2NyaWJpciBgZXhpdCcuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo1NTIgc3JjL2NvbmZpZ3VyZS5jOjU1NgorbXNnaWQgImNvbmZmaWxlIHNoZWxsIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIkNvbmZpZ3VyYXRpb24gZmlsZSBgJXMnIgorbXNnc3RyICIiCisiXG4iCisiRmljaGVydSBkZSBjb25maWd1cmFjacOzbiBgJXMnIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjA0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAoYWN0dWFsbHkgYCVzJykiCittc2dzdHIgIiAoZGF2ZXJlcyBgJXMnKSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYwOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiID09PiBGaWxlIG9uIHN5c3RlbSBjcmVhdGVkIGJ5IHlvdSBvciBieSBhIHNjcmlwdC5cbiIKKyIgPT0+IEZpbGUgYWxzbyBpbiBwYWNrYWdlIHByb3ZpZGVkIGJ5IHBhY2thZ2UgbWFpbnRhaW5lci5cbiIKK21zZ3N0ciAiIgorIlxuIgorIiA9PT4gRmljaGVydSBuZWwgc2lzdGVtYSBjcmlhdSBwb3IgdnVzdMOpIG8gcG9yIHVuIHNjcmlwdC5cbiIKKyIgPT0+IEZpY2hlcnUgdGFtacOpbiBuZWwgcGFxdWV0ZSBzaXJ2w611IHBvbCBtYW50ZW5lZG9yLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjEzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgICAgIE5vdCBtb2RpZmllZCBzaW5jZSBpbnN0YWxsYXRpb24uXG4iCittc2dzdHIgIiIKKyJcbiIKKyIgICAgIE51biBtb2RpZmljw6F1IGRlbmRlIGxhIGluc3RhbGFjacOzbi5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYxNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiID09PiBNb2RpZmllZCAoYnkgeW91IG9yIGJ5IGEgc2NyaXB0KSBzaW5jZSBpbnN0YWxsYXRpb24uXG4iCittc2dzdHIgIiIKKyJcbiIKKyIgPT0+IE1vZGlmaWPDoXUgKHBvciB2dXN0w6kgbyB1biBzY3JpcHQpIGRlbmRlIGxhIGluc3RhbGFjacOzbi5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYxNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiID09PiBEZWxldGVkIChieSB5b3Ugb3IgYnkgYSBzY3JpcHQpIHNpbmNlIGluc3RhbGxhdGlvbi5cbiIKK21zZ3N0ciAiIgorIlxuIgorIiA9PT4gRGVzYW5pY2nDoXUgKHBvciB2dXN0w6kgbyB1biBzY3JpcHQpIGRlbmRlIGxhIGluc3RhbGFjacOzbi5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYxOQorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IFBhY2thZ2UgZGlzdHJpYnV0b3IgaGFzIHNoaXBwZWQgYW4gdXBkYXRlZCB2ZXJzaW9uLlxuIgorbXNnc3RyICIgPT0+IEVsIGRpc3RyaWJ1aWRvciBkZWwgcGFxdWV0ZSB1ZnJlIHVuYSB2ZXJzacOzbiBhY3R1YWxpemFkYS5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYyMAorIywgYy1mb3JtYXQKK21zZ2lkICIgICAgIFZlcnNpb24gaW4gcGFja2FnZSBpcyB0aGUgc2FtZSBhcyBhdCBsYXN0IGluc3RhbGxhdGlvbi5cbiIKK21zZ3N0ciAiICAgICBMYSB2ZXJzacOzbiBkZWwgcGFxdWV0ZSB5ZSBsYSBtZXNtYSBxdWUgbGEgY2FiZXJhIGluc3RhbGFkYS5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYyOAorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IFVzaW5nIG5ldyBmaWxlIGFzIHlvdSByZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiA9PT4gVXNhbmRvIHVuIGZpY2hlcnUgbnVldnUgY29tbyBzZSBwaWRpZXJhLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gVXNpbmcgY3VycmVudCBvbGQgZmlsZSBhcyB5b3UgcmVxdWVzdGVkLlxuIgorbXNnc3RyICIgPT0+IFVzYW5kbyBsJ2FjdHVhbCBmaWNoZXJ1IGFudGlndXUgY29tbyBzZSBwaWRpZXJhLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjQxCisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gS2VlcGluZyBvbGQgY29uZmlnIGZpbGUgYXMgZGVmYXVsdC5cbiIKK21zZ3N0ciAiID09PiBHdWFyZGFuZG8gbCdhbnRpZ3V1IGZpY2hlcnUgY29uZmlnIGNvbW8gcHJlZGV0ZXJtaW7DoXUuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBVc2luZyBuZXcgY29uZmlnIGZpbGUgYXMgZGVmYXVsdC5cbiIKK21zZ3N0ciAiID09PiBVc2FuZG8nbCBudWV2dSBmaWNoZXJ1IGNvbmZpZyBjb21vIHByZWRldGVybWluw6F1LlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjUyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiICAgV2hhdCB3b3VsZCB5b3UgbGlrZSB0byBkbyBhYm91dCBpdCA/ICBZb3VyIG9wdGlvbnMgYXJlOlxuIgorIiAgICBZIG9yIEkgIDogaW5zdGFsbCB0aGUgcGFja2FnZSBtYWludGFpbmVyJ3MgdmVyc2lvblxuIgorIiAgICBOIG9yIE8gIDoga2VlcCB5b3VyIGN1cnJlbnRseS1pbnN0YWxsZWQgdmVyc2lvblxuIgorIiAgICAgIEQgICAgIDogc2hvdyB0aGUgZGlmZmVyZW5jZXMgYmV0d2VlbiB0aGUgdmVyc2lvbnNcbiIKKyIgICAgICBaICAgICA6IHN0YXJ0IGEgc2hlbGwgdG8gZXhhbWluZSB0aGUgc2l0dWF0aW9uXG4iCittc2dzdHIgIiIKKyIgICDCv1F1w6kgcHJlZmllciBmYWNlciBjb24gZXN0bz8gIExlcyBvcGNpb25lcyBzb246XG4iCisiICAgIFkgbyBJICA6IGluc3RhbGFyIGxhIHZlcnNpw7NuIGRlbCBtYW50ZW5lZG9yIGRlbCBwYXF1ZXRlXG4iCisiICAgIE4gbyBPICA6IGRleGFyIGxhIHZlcnNpw7NuIGluc3RhbGFkYSBhY3R1YWxtZW50ZVxuIgorIiAgICAgIEQgICAgIDogYW1vc2FyIGxlcyBkaWZlcmVuY2llcyBlbnRlIGxlcyB2ZXJzaW9uZXNcbiIKKyIgICAgICBaICAgICA6IG1hbmRhciBlc3RpIHByb2Nlc3UgYSBzZWd1bmR1IHBsYW51IHBhIGVzYW1pbmFyIGxhIHNpdHVhY2nDs25cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY1OQorIywgYy1mb3JtYXQKK21zZ2lkICIgVGhlIGRlZmF1bHQgYWN0aW9uIGlzIHRvIGtlZXAgeW91ciBjdXJyZW50IHZlcnNpb24uXG4iCittc2dzdHIgIiBMJ2FpY2nDs24gcHJlZGV0ZXJtaW5hZGEgeWUgY29uc2VydmFyIGxhIHZlcnNpw7NuIGFjdHVhbC5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY2MQorIywgYy1mb3JtYXQKK21zZ2lkICIgVGhlIGRlZmF1bHQgYWN0aW9uIGlzIHRvIGluc3RhbGwgdGhlIG5ldyB2ZXJzaW9uLlxuIgorbXNnc3RyICIgTCdhaWNpw7NuIHByZWRldGVybWluYWRhIHllIGluc3RhbGFyIGxhIHZlcnNpw7NuIG51ZXZhLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjY2Cittc2dpZCAiW2RlZmF1bHQ9Tl0iCittc2dzdHIgIltwcmVkZXRlcm1pbmFvPU5dIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjY3Cittc2dpZCAiW2RlZmF1bHQ9WV0iCittc2dzdHIgIltwcmVkZXRlcm1pbmFvPVldIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjY4Cittc2dpZCAiW25vIGRlZmF1bHRdIgorbXNnc3RyICJbZW5zaW4gcHJlZGV0ZXJtw61uXSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY3MQorbXNnaWQgImVycm9yIHdyaXRpbmcgdG8gc3RkZXJyLCBkaXNjb3ZlcmVkIGJlZm9yZSBjb25mZmlsZSBwcm9tcHQiCittc2dzdHIgIiIKKyJlcnJvciBhbCBlc2NyaWJpciBlbiBzdGRlcnIsIGRlc2N1YmllcnR1IGVuYW50ZXMgZGVsIHByb21wdCBkZWwgZmljaGVydSBjb25mIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjgwCittc2dpZCAicmVhZCBlcnJvciBvbiBzdGRpbiBhdCBjb25mZmlsZSBwcm9tcHQiCittc2dzdHIgImVycm9yIGRlIGxsZWN0dXJhIG5hIGVudHJhZGEgZXN0w6FuZGFyIG5lbCBwcm9tcHQgZGVsIGZpY2hlcnUgY29uZiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY4MQorbXNnaWQgIkVPRiBvbiBzdGRpbiBhdCBjb25mZmlsZSBwcm9tcHQiCittc2dzdHIgIkVPRiBuYSBlbnRyYWRhIGVzdMOhbmRhciBuZWwgcHJvbXB0IGRlbCBmaWNoZXJ1IGNvbmYiCisKKyM6IHNyYy9kZXBjb24uYzoxNzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgZGVwZW5kcyBvbiAlcyIKK21zZ3N0ciAiJXMgZGVwZW5kZSBkZSAlcyIKKworIzogc3JjL2RlcGNvbi5jOjE3OAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBwcmUtZGVwZW5kcyBvbiAlcyIKK21zZ3N0ciAiJXMgcHJlLWRlcGVuZGUgZGUgJXMiCisKKyM6IHNyYy9kZXBjb24uYzoxODEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcmVjb21tZW5kcyAlcyIKK21zZ3N0ciAiJXMgZW5jYW1pZW50YSAlcyIKKworIzogc3JjL2RlcGNvbi5jOjE4NAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBzdWdnZXN0cyAlcyIKK21zZ3N0ciAiJXMgc3V4aWVyICVzIgorCisjOiBzcmMvZGVwY29uLmM6MTg3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGJyZWFrcyAlcyIKK21zZ3N0ciAiJXMgZnJhw7FhICVzIgorCisjOiBzcmMvZGVwY29uLmM6MTkwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGNvbmZsaWN0cyB3aXRoICVzIgorbXNnc3RyICIlcyBoYWkgY29uZmxpY3R1IGNvbiAlcyIKKworIzogc3JjL2RlcGNvbi5jOjE5MworIywgYy1mb3JtYXQKK21zZ2lkICIlcyBlbmhhbmNlcyAlcyIKK21zZ3N0ciAiJXMgbWV5b3JhICVzIgorCisjOiBzcmMvZGVwY29uLmM6Mjk2CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHRvIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIHZhIGRlc2FuaWNpYXNlLlxuIgorCisjOiBzcmMvZGVwY29uLmM6Mjk5CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHRvIGJlIGRlY29uZmlndXJlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMgdmEgZGVjb25maWd1cmFzZS5cbiIKKworIzogc3JjL2RlcGNvbi5jOjMwNAorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB0byBiZSBpbnN0YWxsZWQsIGJ1dCBpcyB2ZXJzaW9uICUuMjUwcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgdmEgaW5zdGFsYXNlLCBwZXJvIHllIGxhIHZlcnNpw7NuICUuMjUwcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjMxNAorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyBpbnN0YWxsZWQsIGJ1dCBpcyB2ZXJzaW9uICUuMjUwcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgdGEgaW5zdGFsw6F1LCBwZXJvIHllIGxhIHZlcnNpw7NuICUuMjUwcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjMzMworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB1bnBhY2tlZCwgYnV0IGhhcyBuZXZlciBiZWVuIGNvbmZpZ3VyZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIHRhIGRlc2VtcGFxdWV0w6F1LCBwZXJvIG51bmNhIG51biBzZSBjb25maWd1csOzLlxuIgorCisjOiBzcmMvZGVwY29uLmM6MzM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHVucGFja2VkLCBidXQgaXMgdmVyc2lvbiAlLjI1MHMuXG4iCittc2dzdHIgIiAgJS4yNTBzIHRhIGRlc2VtcGFxdWV0w6F1LCBwZXJvIHllIGxhIHZlcnNpw7NuICUuMjUwcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjM0MworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBsYXRlc3QgY29uZmlndXJlZCB2ZXJzaW9uIGlzICUuMjUwcy5cbiIKK21zZ3N0ciAiICBsYSBjYWJlcmEgdmVyc2nDs24gY29uZmlndXJhZGEgZGUgJS4yNTBzIHllIGxhICUuMjUwcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjM1MworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyAlcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgeWUgJXMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozODgKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGJ1dCBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyB1ZnJlICUuMjUwcyBwZXJvIHZhIGRlc2FuaWNpYXNlLlxuIgorCisjOiBzcmMvZGVwY29uLmM6MzkyCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBidXQgaXMgdG8gYmUgZGVjb25maWd1cmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyB1ZnJlICUuMjUwcyBwZXJvIHZhIGRlc2NvbmZpZ3VyYXNlLlxuIgorCisjOiBzcmMvZGVwY29uLmM6NDAxCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBidXQgaXMgJXMuXG4iCittc2dzdHIgIiAgJS4yNTBzIHVmcmUgJS4yNTBzIHBlcm8geWUgJXMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0MTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgbm90IGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMgbnVuIHRhIGluc3RhbMOhdS5cbiIKKworIzogc3JjL2RlcGNvbi5jOjQ0MworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyAodmVyc2lvbiAlLjI1MHMpIGlzIHRvIGJlIGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMgKHZlcnNpw7NuICUuMjUwcykgdmEgaW5zdGFsYXNlLlxuIgorCisjOiBzcmMvZGVwY29uLmM6NDY4CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzICh2ZXJzaW9uICUuMjUwcykgaXMgcHJlc2VudCBhbmQgJXMuXG4iCittc2dzdHIgIiAgJS4yNTBzICh2ZXJzacOzbiAlLjI1MHMpIHRhIHByZXNlbnRlIHkgJXMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGFuZCBpcyB0byBiZSBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIHVmcmUgJS4yNTBzIHkgdmEgaW5zdGFsYXNlLlxuIgorCisjOiBzcmMvZGVwY29uLmM6NTM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBhbmQgaXMgcHJlc2VudCBhbmQgJXMuXG4iCittc2dzdHIgIiAgJS4yNTBzIHVmcmUgJS4yNTBzIHkgdGEgcHJlc2VudGUgeSAlcy5cbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjUwCisjLCBmdXp6eQorI3wgbXNnaWQgIlR5cGUgZHBrZy10cmlnZ2VyIC0taGVscCBmb3IgaGVscCBhYm91dCB0aGlzIHV0aWxpdHkuIgorbXNnaWQgIlVzZSAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgZGl2ZXJ0aW5nIGZpbGVzLiIKK21zZ3N0ciAiRXNjcmliYSBkcGtnLXRyaWdnZXIgLS1oZWxwIHBhIG9idGVuZXIgYWlkYSBkJ2VzdGEgZmVycmFtaWVudGEuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjYgc3JjL3N0YXRjbWQuYzo1NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuICVzIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkRlYmlhbiAlcyB2ZXJzacOzbiAlcy5cbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjcwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiXG4iCisjfCAiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorI3wgIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uIgorbXNnaWQgIiIKKyJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMTAgR3VpbGxlbSBKb3Zlci5cbiIKK21zZ3N0ciAiIgorIlxuIgorIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLiIKKworIzogc3JjL2RpdmVydGNtZC5jOjc1IHNyYy9tYWluLmM6NjMgc3JjL3F1ZXJ5Y21kLmM6NjAzIHNyYy9zdGF0Y21kLmM6NjUKKyM6IHNyYy90cmlnY21kLmM6NTUgZHBrZy1kZWIvbWFpbi5jOjU3IGRwa2ctc3BsaXQvbWFpbi5jOjUxCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6ODkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAyIG9yXG4iCisibGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuXG4iCittc2dzdHIgIiIKKyJcbiIKKyJFc3RvIHllIHNvZnR3YXJlIGxsaWJyZTsgbWlyYSBsYSBMbGljZW5jaWEgUMO6YmxpY2EgWGVuZXJhbCBkZSBHTlUgVmVyc2nDs24gMiAiCisib1xuIgorInBvc3RlcmlvciBwYSBsZXMgY29uZGljaW9uZXMgZGUgY29waWEuIE51biBoYWkgREVOR1VOQSBnYXJhbnTDrWEuXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo4NyBzcmMvbWFpbi5jOjgxIHNyYy9xdWVyeWNtZC5jOjYxNSBzcmMvc3RhdGNtZC5jOjc3CisjOiBkcGtnLWRlYi9tYWluLmM6NjkgZHBrZy1zcGxpdC9tYWluLmM6NjMgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjk3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gPGNvbW1hbmQ+XG4iCisiXG4iCittc2dzdHIgIiIKKyJFbXBsZWd1OiAlcyBbPG9wY2nDs24+IC4uLl0gPG9yZGU+XG4iCisiXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo5MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICBbLS1hZGRdIDxmaWxlPiAgICAgICAgICAgYWRkIGEgZGl2ZXJzaW9uLlxuIgorIiAgLS1yZW1vdmUgPGZpbGU+ICAgICAgICAgIHJlbW92ZSB0aGUgZGl2ZXJzaW9uLlxuIgorIiAgLS1saXN0IFs8Z2xvYi1wYXR0ZXJuPl0gIHNob3cgZmlsZSBkaXZlcnNpb25zLlxuIgorIiAgLS1saXN0cGFja2FnZSA8ZmlsZT4gICAgIHNob3cgd2hhdCBwYWNrYWdlIGRpdmVydHMgdGhlIGZpbGUuXG4iCisiICAtLXRydWVuYW1lIDxmaWxlPiAgICAgICAgcmV0dXJuIHRoZSBkaXZlcnRlZCBmaWxlLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoxMDAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gPGNvbW1hbmQ+XG4iCisjfCAiXG4iCisjfCAiQ29tbWFuZHM6XG4iCisjfCAiICBbLS1hZGRdIDxmaWxlPiAgICAgICAgICAgYWRkIGEgZGl2ZXJzaW9uLlxuIgorI3wgIiAgLS1yZW1vdmUgPGZpbGU+ICAgICAgICAgIHJlbW92ZSB0aGUgZGl2ZXJzaW9uLlxuIgorI3wgIiAgLS1saXN0IFs8Z2xvYi1wYXR0ZXJuPl0gIHNob3cgZmlsZSBkaXZlcnNpb25zLlxuIgorI3wgIiAgLS1saXN0cGFja2FnZSA8ZmlsZT4gICAgIHNob3cgd2hhdCBwYWNrYWdlIGRpdmVydHMgdGhlIGZpbGUuXG4iCisjfCAiICAtLXRydWVuYW1lIDxmaWxlPiAgICAgICAgcmV0dXJuIHRoZSBkaXZlcnRlZCBmaWxlLlxuIgorI3wgIlxuIgorI3wgIk9wdGlvbnM6XG4iCisjfCAiICAtLXBhY2thZ2UgPHBhY2thZ2U+ICAgICAgbmFtZSBvZiB0aGUgcGFja2FnZSB3aG9zZSBjb3B5IG9mIDxmaWxlPiB3aWxsICIKKyN8ICJub3RcbiIKKyN8ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJlIGRpdmVydGVkLlxuIgorI3wgIiAgLS1sb2NhbCAgICAgICAgICAgICAgICAgIGFsbCBwYWNrYWdlcycgdmVyc2lvbnMgYXJlIGRpdmVydGVkLlxuIgorI3wgIiAgLS1kaXZlcnQgPGRpdmVydC10bz4gICAgIHRoZSBuYW1lIHVzZWQgYnkgb3RoZXIgcGFja2FnZXMnIHZlcnNpb25zLlxuIgorI3wgIiAgLS1yZW5hbWUgICAgICAgICAgICAgICAgIGFjdHVhbGx5IG1vdmUgdGhlIGZpbGUgYXNpZGUgKG9yIGJhY2spLlxuIgorI3wgIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIHNldCB0aGUgZGlyZWN0b3J5IHdpdGggdGhlIGRpdmVyc2lvbnMgZmlsZS5cbiIKKyN8ICIgIC0tdGVzdCAgICAgICAgICAgICAgICAgICBkb24ndCBkbyBhbnl0aGluZywganVzdCBkZW1vbnN0cmF0ZS5cbiIKKyN8ICIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBxdWlldCBvcGVyYXRpb24sIG1pbmltYWwgb3V0cHV0LlxuIgorI3wgIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisjfCAiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyN8ICJcbiIKKyN8ICJXaGVuIGFkZGluZywgZGVmYXVsdCBpcyAtLWxvY2FsIGFuZCAtLWRpdmVydCA8b3JpZ2luYWw+LmRpc3RyaWIuXG4iCisjfCAiV2hlbiByZW1vdmluZywgLS1wYWNrYWdlIG9yIC0tbG9jYWwgYW5kIC0tZGl2ZXJ0IG11c3QgbWF0Y2ggaWYgIgorI3wgInNwZWNpZmllZC5cbiIKKyN8ICJQYWNrYWdlIHByZWluc3QvcG9zdHJtIHNjcmlwdHMgc2hvdWxkIGFsd2F5cyBzcGVjaWZ5IC0tcGFja2FnZSBhbmQgLS0iCisjfCAiZGl2ZXJ0LlxuIgorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1wYWNrYWdlIDxwYWNrYWdlPiAgICAgIG5hbWUgb2YgdGhlIHBhY2thZ2Ugd2hvc2UgY29weSBvZiA8ZmlsZT4gd2lsbCAiCisibm90XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiZSBkaXZlcnRlZC5cbiIKKyIgIC0tbG9jYWwgICAgICAgICAgICAgICAgICBhbGwgcGFja2FnZXMnIHZlcnNpb25zIGFyZSBkaXZlcnRlZC5cbiIKKyIgIC0tZGl2ZXJ0IDxkaXZlcnQtdG8+ICAgICB0aGUgbmFtZSB1c2VkIGJ5IG90aGVyIHBhY2thZ2VzJyB2ZXJzaW9ucy5cbiIKKyIgIC0tcmVuYW1lICAgICAgICAgICAgICAgICBhY3R1YWxseSBtb3ZlIHRoZSBmaWxlIGFzaWRlIChvciBiYWNrKS5cbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICBzZXQgdGhlIGRpcmVjdG9yeSB3aXRoIHRoZSBkaXZlcnNpb25zIGZpbGUuXG4iCisiICAtLXRlc3QgICAgICAgICAgICAgICAgICAgZG9uJ3QgZG8gYW55dGhpbmcsIGp1c3QgZGVtb25zdHJhdGUuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgcXVpZXQgb3BlcmF0aW9uLCBtaW5pbWFsIG91dHB1dC5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCittc2dzdHIgIiIKKyJGb3JtYSBkJ3VzdTogJXMgWzxvcGNpw7NuPiAuLi5dIDxvcmRlPlxuIgorIlxuIgorIsOTcmRlbmVzOlxuIgorIiAgWy0tYWRkXSA8ZmljaGVydT4gICAgICAgICAgIGFtaWVzdGEgdW4gcmFtYWwuXG4iCisiICAtLXJlbW92ZSA8ZmljaGVydT4gICAgICAgICAgZGVzYW5pY2lhIHVuIHJhbWFsLlxuIgorIiAgLS1saXN0IFs8cGF0csOzbi1nbG9iPl0gIGFtdWVzYSBsb3MgcmFtYWxlcyBkZSBmaWNoZXJvcy5cbiIKKyIgIC0tbGlzdHBhY2thZ2UgPGZpY2hlcnU+ICAgICBhbXVlc2EgcXXDqSBwYXF1ZXRlIGVzdsOtYSBlbCBmaWNoZXJ1LlxuIgorIiAgLS10cnVlbmFtZSA8ZmljaGVydT4gICAgICAgIGRldnVlbHZlJ2wgZmljaGVydSBlc3Zpw6F1LlxuIgorIlxuIgorIk9wY2lvbmVzOlxuIgorIiAgLS1wYWNrYWdlIDxwYXF1ZXRlPiAgICAgIG5vbWUgZGVsIHBhcXVldGUgY3V5YSBjb3BpYSBkZSA8ZmljaGVydT4gbnVuIHZhXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXIgZXN2aWFkYS5cbiIKKyIgIC0tbGxvY2FsICAgICAgICAgICAgICAgICAgZXN2w61lbiB0b2xlcyB2ZXJzaW9uZXMgZGVsIHBhcXVldGUuXG4iCisiICAtLWRpdmVydCA8cmFtYWwtYT4gICAgIGVsIG5vbWUgdXPDoXUgcG9sZXMgb3RyZXMgdmVyc2lvbmVzIGRlIHBhcXVldGVzXG4iCisiICAtLXJlbmFtZSAgICAgICAgICAgICAgICAgbW92ZXIgZWwgZmljaGVydSBhIHVuIGxsYXUgKG8gYXRyw6FzKS5cbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yaXU+ICAgZGVmaW5lJ2wgZGlyZWN0b3JpdSBjb2xvcyByYW1hbGVzLlxuIgorIiAgLS10ZXN0ICAgICAgICAgICAgICAgICAgIG51biBmYWNlciByZW4sIG5hbcOhaSBhbW9zYXIuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgb3BlcmFjacOzbiBzaWxlbmNpb3NhLCBlbnNpbiBzYWxpZGEuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgYW11ZXNhIGVzdGkgbWVuc2F4ZSBkJ2FpZGEuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgYW11ZXNhIGxhIHZlcnNpw7NuLlxuIgorIlxuIgorIkN1YW5kbyBzJ2FtaWVzdGVuIHJhbWFsZXMsIHBvciBvbWlzacOzbiDDunNhc2UgLS1sbG9jYWwgeSAtLWRpdmVydCA8b3JpeGluYWw+LiIKKyJkaXN0cmliLlxuIgorIkN1YW5kbyBzZSBkZXNhbmljaWVuIGxvcyB2YWxvcmVzIGRlIC0tcGFja2FnZSBvIC0tbGxvY2FsIHkgLS1kaXZlcnQgdGllbmVuICIKKyJkZSBjb25jYXNhciBzaSBzJ2VzcGVjaWZpcXVlbi5cbiIKKyJMb3Mgc2NyaXB0cyBwcmVpbnN0IG8gcG9zdHJtIGRlIGxvcyBwYXF1ZXRlcyBkZWJlcsOtZW4gZXNwZWNpZmljYXIgc2llbXByZXMgLS0iCisicGFja2FnZSB5IC0tZGl2ZXJ0LlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJXaGVuIGFkZGluZywgZGVmYXVsdCBpcyAtLWxvY2FsIGFuZCAtLWRpdmVydCA8b3JpZ2luYWw+LmRpc3RyaWIuXG4iCisiV2hlbiByZW1vdmluZywgLS1wYWNrYWdlIG9yIC0tbG9jYWwgYW5kIC0tZGl2ZXJ0IG11c3QgbWF0Y2ggaWYgc3BlY2lmaWVkLlxuIgorIlBhY2thZ2UgcHJlaW5zdC9wb3N0cm0gc2NyaXB0cyBzaG91bGQgYWx3YXlzIHNwZWNpZnkgLS1wYWNrYWdlIGFuZCAtLSIKKyJkaXZlcnQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjE2OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZXJyb3IgY2hlY2tpbmcgYCVzJzogJXMiCittc2dpZCAiZXJyb3IgY2hlY2tpbmcgJyVzJyIKK21zZ3N0ciAiZXJyb3IgY29tcHJvYmFuZG8gYCVzJzogJXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInJlbmFtZSBpbnZvbHZlcyBvdmVyd3JpdGluZyBgJXMnIHdpdGhcbiIKKyIgIGRpZmZlcmVudCBmaWxlIGAlcycsIG5vdCBhbGxvd2VkIgorbXNnc3RyICIiCisicmVub21hciBvYmxpZ2EgYSBzb2JyZWVzY3JpYmlyIGAlcycgY29uXG4iCisidW4gZmljaGVydSBkaXN0aW50dSBgJXMnLCBudW4gc2UgcGVybWl0ZS4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyMjMgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzNzMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgZmlsZSAnJXMnIgorbXNnc3RyICJudW4gc2UgcHVlZGUgYWJyaXIgZWwgZmljaGVydSBmb250ZSBgJS4yNTBzJyIKKworIzogc3JjL2RpdmVydGNtZC5jOjIyNworbXNnaWQgImZpbGUgY29weSIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjM5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW5ub3Qgc3RhdCBuZXcgbmFtZSBgJXMnOiAlcyIKK21zZ2lkICJjYW5ub3QgcmVuYW1lICclcycgdG8gJyVzJyIKK21zZ3N0ciAibnVuIHNlIHB1ZWRlIGZhY2VyIGBzdGF0JyBzb2JyZSdsIG5vbWUgbnVldnUgYCVzJzogJXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyNTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInJlbmFtZTogcmVtb3ZlIGR1cGxpY2F0ZSBvbGQgbGluayBgJXMnOiAlcyIKK21zZ2lkICJyZW5hbWU6IHJlbW92ZSBkdXBsaWNhdGUgb2xkIGxpbmsgJyVzJyIKK21zZ3N0ciAicmVuYW1lOiBkZXNhbmljaWFyIGVubGxheiBhbnRpZ3V1IGR1cGxpY8OhdSBgJXMnOiAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjI2MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIG9wZW4gc291cmNlIGZpbGUgYCUuMjUwcyciCittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBjb3BpZWQgc291cmNlIGZpbGUgJyVzJyIKK21zZ3N0ciAibnVuIHNlIHB1ZWRlIGFicmlyIGVsIGZpY2hlcnUgZm9udGUgYCUuMjUwcyciCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyODQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImxvY2FsIGRpdmVyc2lvbiB0bzogJXNcbiIKK21zZ2lkICJsb2NhbCBkaXZlcnNpb24gb2YgJXMiCittc2dzdHIgImVzdmlhY2nDs24gbGxvY2FsIGE6ICVzXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyODYKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImxvY2FsIGRpdmVyc2lvbiB0bzogJXNcbiIKK21zZ2lkICJsb2NhbCBkaXZlcnNpb24gb2YgJXMgdG8gJXMiCittc2dzdHIgImVzdmlhY2nDs24gbGxvY2FsIGE6ICVzXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyOTAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImRpdmVyc2lvbiBieSAlcyB0bzogJXNcbiIKK21zZ2lkICJkaXZlcnNpb24gb2YgJXMgYnkgJXMiCittc2dzdHIgImVzdmnDoXUgcG9yICVzIGE6ICVzXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyOTMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImRpdmVyc2lvbiBieSAlcyB0bzogJXNcbiIKK21zZ2lkICJkaXZlcnNpb24gb2YgJXMgdG8gJXMgYnkgJXMiCittc2dzdHIgImVzdmnDoXUgcG9yICVzIGE6ICVzXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozMDkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImxvY2FsIGRpdmVyc2lvbiB0bzogJXNcbiIKK21zZ2lkICJhbnkgZGl2ZXJzaW9uIG9mICVzIgorbXNnc3RyICJlc3ZpYWNpw7NuIGxsb2NhbCBhOiAlc1xuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MzExCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJkaXZlcnNpb24gYnkgJXMgdG86ICVzXG4iCittc2dpZCAiYW55IGRpdmVyc2lvbiBvZiAlcyB0byAlcyIKK21zZ3N0ciAiZXN2acOhdSBwb3IgJXMgYTogJXNcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjM1NworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiY2Fubm90IG9wZW4gR1BMIGZpbGUiCittc2dpZCAiY2Fubm90IGNyZWF0ZSBuZXcgJXMgZmlsZSIKK21zZ3N0ciAibnVuIHB1ZWRlIGFicmlzZSdsIGZpY2hlcnUgR1BMIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mzc1IHNyYy9zdGF0Y21kLmM6MjE1IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNDA0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggZmlsZSAnJXMnIgorbXNnc3RyICJudW4gcHVlIGVzY29zYXNlIHZzbnByaW50ZiIKKworIzogc3JjL2RpdmVydGNtZC5jOjM4MgorIywgZnV6enkKKyN8IG1zZ2lkICJyZW1vdmUgb2xkIGRpdmVyc2lvbnMtb2xkOiAlcyIKK21zZ2lkICJlcnJvciByZW1vdmluZyBvbGQgZGl2ZXJzaW9ucy1vbGQiCittc2dzdHIgImRlc2FuaWNpYXIgZGl2ZXJzaW9ucy1vbGQgYW50aWd1dTogJXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozODQKKyMsIGZ1enp5Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgbmV3IGRpdmVyc2lvbnMtb2xkIgorbXNnc3RyICJmYWxsdSBhbCBjcmVhciBlbCBudWV2dSBmaWNoZXJ1IHN0YXRvdmVycmlkZS1vbGQ6ICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mzg2CisjLCBmdXp6eQorbXNnaWQgImVycm9yIGluc3RhbGxpbmcgbmV3IGRpdmVyc2lvbnMiCittc2dzdHIgImZhbGx1IGFsIGluc3RhbGFyIGVsIG51ZXZ1IHN0YXRvdmVycmlkZTogJXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MDYgc3JjL2RpdmVydGNtZC5jOjUwMyBzcmMvZGl2ZXJ0Y21kLmM6NjEwCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjMwIHNyYy9zdGF0Y21kLmM6MjkwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSBzaW5nbGUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMgbmVjZXNpdGVzIHVuIHBhcsOhbWV0cnUiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MDkgc3JjL2RpdmVydGNtZC5jOjQzMAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlbmFtZSBcIiVzXCIgaXMgbm90IGFic29sdXRlIgorbXNnc3RyICJlbCBub21lIGRlIGZpY2hlcnUgwqslc8K7IG51biB5ZSB1biBhbGx1Z2FtaWVudHUgYWJzb2x1dHUiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MTEgc3JjL3N0YXRjbWQuYzoyNDkKK21zZ2lkICJmaWxlIG1heSBub3QgY29udGFpbiBuZXdsaW5lcyIKK21zZ3N0ciAiZWwgZmljaGVydSBudW4gcHVlIGNvbnRlbmVyIHNhbHRvcyBkZSBsbGluaWEiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MTgKK21zZ2lkICJDYW5ub3QgZGl2ZXJ0IGRpcmVjdG9yaWVzIgorbXNnc3RyICJOdW4gcHVlbiBlc3ZpYXNlIGRpcmV1dG9yaW9zIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDMzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgZGl2ZXJ0IGZpbGUgJyVzJyB0byBpdHNlbGYiCittc2dzdHIgIk51biBwdWVuIGVzdmlhc2UgZGlyZXV0b3Jpb3MiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0NTMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIkxlYXZpbmcgYCVzJyIKK21zZ2lkICJMZWF2aW5nICclcydcbiIKK21zZ3N0ciAiRGV4YW5kbyBgJXMnIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDU4CisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgY2xhc2hlcyB3aXRoIGAlcyciCittc2dzdHIgImAlcycgZW50cmEgZW4gY29uZmxpY3R1IGNvbiBgJXMnIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDgxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJBZGRpbmcgYCVzJyIKK21zZ2lkICJBZGRpbmcgJyVzJ1xuIgorbXNnc3RyICJBbWVzdGFuZG8gYCVzJyIKKworIzogc3JjL2RpdmVydGNtZC5jOjUxMAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiTm8gZGl2ZXJzaW9uIGAlcycsIG5vbmUgcmVtb3ZlZCIKK21zZ2lkICJObyBkaXZlcnNpb24gJyVzJywgbm9uZSByZW1vdmVkLlxuIgorbXNnc3RyICJOdW4gaGFpIHVuIGVzdsOtdSBgJXMnLCBkZW5ndW51IGRlc2FuaWNpw6F1IgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTI1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJtaXNtYXRjaCBvbiBkaXZlcnQtdG9cbiIKKyIgIHdoZW4gcmVtb3ZpbmcgYCVzJ1xuIgorIiAgZm91bmQgYCVzJyIKK21zZ3N0ciAiIgorIm51biBjb25jYXNhIGFsIGVzdmlhci1wYVxuIgorIiAgYWwgZGVzYW5pY2lhciBgJXMnXG4iCisiICBhbGNvbnRyw7NzZSBgJXMnIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJtaXNtYXRjaCBvbiBwYWNrYWdlXG4iCisiICB3aGVuIHJlbW92aW5nIGAlcydcbiIKKyIgIGZvdW5kIGAlcyciCittc2dzdHIgIiIKKyJudW4gY29uY2FzYSBlbCBwYXF1ZXRlXG4iCisiICBhbCBkZXNhbmljaWFyIGAlcydcbiIKKyIgIGFsY29udHLDs3NlIGAlcyciCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MzkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIlJlbW92aW5nIGAlcyciCittc2dpZCAiUmVtb3ZpbmcgJyVzJ1xuIgorbXNnc3RyICJEZXNhbmljaWFuZG8gYCVzJyIKKworIzogc3JjL2RpdmVydGNtZC5jOjY1NworbXNnaWQgInBhY2thZ2UgbWF5IG5vdCBjb250YWluIG5ld2xpbmVzIgorbXNnc3RyICJlbCBub21lIGRlIHBhcXVldGUgbnVuIHB1ZWRlIHRlbmVyIHNhbHRvcyBkZSBsbGluaWEiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo2NjYKK21zZ2lkICJkaXZlcnQtdG8gbWF5IG5vdCBjb250YWluIG5ld2xpbmVzIgorbXNnc3RyICLCq2RpdmVydC10b8K7IG51biBwdWVkZSB0ZW5lciBzYWx0b3MgZGUgbGxpbmlhIgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzo2NAorbXNnaWQgImZhaWxlZCB0byBvcGVuIGRpdmVyc2lvbnMgZmlsZSIKK21zZ3N0ciAiZmFsbHUgYWwgYWJyaXIgZWwgZmljaGVydSBkZSBkZXN2w61vcyIKKworIzogc3JjL2RpdmVydGRiLmM6NzEKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgcHJldmlvdXMgZGl2ZXJzaW9ucyBmaWxlIgorbXNnc3RyICJmYWxsdSBhbCBmYWNlciBgZnN0YXQnIGRlbCBmaWNoZXJ1IGFudGVyaW9yIGRlIGRlc3bDrW9zIgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzo3MworbXNnaWQgImZhaWxlZCB0byBmc3RhdCBkaXZlcnNpb25zIGZpbGUiCittc2dzdHIgImZhbGx1IGFsIGZhY2VyIGBmc3RhdCcgZGVsIGZpY2hlcnUgZGUgZGVzdsOtb3MiCisKKyM6IHNyYy9kaXZlcnRkYi5jOjExMworIywgYy1mb3JtYXQKK21zZ2lkICJjb25mbGljdGluZyBkaXZlcnNpb25zIGludm9sdmluZyBgJS4yNTBzJyBvciBgJS4yNTBzJyIKK21zZ3N0ciAiZGVzdsOtb3MgY29uZmxpY3Rpdm9zIHNvYnJlIGAlLjI1MHMnIG91IGAlLjI1MHMnIgorCisjOiBzcmMvZW5xdWlyeS5jOjczCittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgYXJlIGluIGEgbWVzcyBkdWUgdG8gc2VyaW91cyBwcm9ibGVtcyBkdXJpbmdcbiIKKyJpbnN0YWxsYXRpb24uICBUaGV5IG11c3QgYmUgcmVpbnN0YWxsZWQgZm9yIHRoZW0gKGFuZCBhbnkgcGFja2FnZXNcbiIKKyJ0aGF0IGRlcGVuZCBvbiB0aGVtKSB0byBmdW5jdGlvbiBwcm9wZXJseTpcbiIKK21zZ3N0ciAiIgorIkxvcyBzaWd1aWVudGVzIHBhcXVldGVzIHRhbiB0cmFjYW11bmRpYW9zIHBvciBwcm9ibGVtZXMgZ3JhdmVzIGRlbWllbnRyZXNcbiIKKyJsYSBpbnN0YWxhY2nDs24uICBIYWkgcXVlIGxvcyByZWluc3RhbGFyIHBhIHF1ZSBmdW5jaW9uZW4gY29ycmV1dGFtZW50ZSAiCisiKGVsbG9zIHlcbiIKKyJsb3MgZGVtw6FzIHBhcXVldGVzIHF1ZSBkZXBlbmRlbiBkJ2VsbG9zKTpcbiIKKworIzogc3JjL2VucXVpcnkuYzo4MAorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGhhdmUgYmVlbiB1bnBhY2tlZCBidXQgbm90IHlldCBjb25maWd1cmVkLlxuIgorIlRoZXkgbXVzdCBiZSBjb25maWd1cmVkIHVzaW5nIGRwa2cgLS1jb25maWd1cmUgb3IgdGhlIGNvbmZpZ3VyZVxuIgorIm1lbnUgb3B0aW9uIGluIGRzZWxlY3QgZm9yIHRoZW0gdG8gd29yazpcbiIKK21zZ3N0ciAiIgorIkxvcyBzaWd1aWVudGVzIHBhcXVldGVzIGRlc2VtcGFxdWV0w6Fyb25zZSBwZXJvIG51biB0YW4gY29uZmlndXJhb3MuXG4iCisiSGFpIHF1ZSBsb3MgY29uZmlndXJhciB1c2FuZG8gZHBrZyAtLWNvbmZpZ3VyZSBvIGxhIG9wY2nDs24gY29uZmlndXJlIGRlbFxuIgorIm1lbsO6IGRlIGRzZWxlY3QgcGEgcXVlIGZ1bmNpb25lbjpcbiIKKworIzogc3JjL2VucXVpcnkuYzo4NworbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBvbmx5IGhhbGYgY29uZmlndXJlZCwgcHJvYmFibHkgZHVlIHRvIHByb2JsZW1zXG4iCisiY29uZmlndXJpbmcgdGhlbSB0aGUgZmlyc3QgdGltZS4gIFRoZSBjb25maWd1cmF0aW9uIHNob3VsZCBiZSByZXRyaWVkIHVzaW5nXG4iCisiZHBrZyAtLWNvbmZpZ3VyZSA8cGFja2FnZT4gb3IgdGhlIGNvbmZpZ3VyZSBtZW51IG9wdGlvbiBpbiBkc2VsZWN0OlxuIgorbXNnc3RyICIiCisiTG9zIHNpZ3VpZW50ZXMgcGFxdWV0ZXMgdGFuIGEgbWVkaW8gY29uZmlndXJhciwgcXVpY2lhYmVzIHBvciBwcm9ibGVtZXMgYWxcbiIKKyJjb25maWd1cmFsb3MgbGEgcHJpbWVyYSB2ZWdhZGEuICBIYWJyw61hIHF1ZSB2b2x2ZXIgYSB0ZW50YXIgY29uZmlndXJhbG9zICIKKyJ1c2FuZG9cbiIKKyJkcGtnIC0tY29uZmlndXJlIDxwYWNrYWdlPiBvIGxhIG9wY2nDs24gY29uZmlndXJlIGRlbCBtZW7DuiBkZSBkc2VsZWN0OlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjk0Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgYXJlIG9ubHkgaGFsZiBpbnN0YWxsZWQsIGR1ZSB0byBwcm9ibGVtcyBkdXJpbmdcbiIKKyJpbnN0YWxsYXRpb24uICBUaGUgaW5zdGFsbGF0aW9uIGNhbiBwcm9iYWJseSBiZSBjb21wbGV0ZWQgYnkgcmV0cnlpbmcgaXQ7XG4iCisidGhlIHBhY2thZ2VzIGNhbiBiZSByZW1vdmVkIHVzaW5nIGRzZWxlY3Qgb3IgZHBrZyAtLXJlbW92ZTpcbiIKK21zZ3N0ciAiIgorIkxvcyBzaWd1aWVudGVzIHBhcXVldGVzIHRhbiBhIG1lZGlvIGluc3RhbGFyLCAgcG9yIHByb2JsZW1lcyBkZW1pZW50cmVzXG4iCisibGEgaW5zdGFsYWNpw7NuLiAgUXVpY2lhYmVzIHB1ZWRhIGNvbXBsZXRhc2UgbGEgaW5zdGFsYWNpw7NuIHZvbHZpZW5kbyBhICIKKyJ0ZW50YWxvO1xuIgorImxvcyBwYXF1ZXRlcyBwdWVuIGRlc2FuaWNpYXNlIHVzYW5kbyBkc2VsZWN0IG8gZHBrZyAtLXJlbW92ZTpcbiIKKworIzogc3JjL2VucXVpcnkuYzoxMDEKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgYXdhaXRpbmcgcHJvY2Vzc2luZyBvZiB0cmlnZ2VycyB0aGF0IHRoZXlcbiIKKyJoYXZlIGFjdGl2YXRlZCBpbiBvdGhlciBwYWNrYWdlcy4gIFRoaXMgcHJvY2Vzc2luZyBjYW4gYmUgcmVxdWVzdGVkIHVzaW5nXG4iCisiZHNlbGVjdCBvciBkcGtnIC0tY29uZmlndXJlIC0tcGVuZGluZyAob3IgZHBrZyAtLXRyaWdnZXJzLW9ubHkpOlxuIgorbXNnc3RyICIiCisiTG9zIHBhcXVldGVzIHNpZ3VpZW50ZXMgdGFuIGVzcGVyYW5kbyBwb2wgcHJvY2VzYW1pZW50dSBkZSBsb3MgYWN0aXZhZG9yZXNcbiIKKyJxdWUgYWN0aXZhcm9uIG4nb3Ryb3MgcGFxdWV0ZXMuICBFc3RpIHByb2Nlc2FtaWVudHUgcHVlIHNvbGljaXRhc2UgdXNhbmRvXG4iCisiZHNlbGVjdCBvIGRwa2cgLS1jb25maWd1cmUgLS1wZW5kaW5nIChvIGRwa2cgLS10cmlnZ2Vycy1vbmx5KTpcbiIKKworIzogc3JjL2VucXVpcnkuYzoxMDgKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBoYXZlIGJlZW4gdHJpZ2dlcmVkLCBidXQgdGhlIHRyaWdnZXIgcHJvY2Vzc2luZ1xuIgorImhhcyBub3QgeWV0IGJlZW4gZG9uZS4gIFRyaWdnZXIgcHJvY2Vzc2luZyBjYW4gYmUgcmVxdWVzdGVkIHVzaW5nXG4iCisiZHNlbGVjdCBvciBkcGtnIC0tY29uZmlndXJlIC0tcGVuZGluZyAob3IgZHBrZyAtLXRyaWdnZXJzLW9ubHkpOlxuIgorbXNnc3RyICIiCisiTG9zIHBhcXVldGVzIHNpZ3VpZW50ZXMgYWN0aXbDoXJvbnNlLCBwZXJvIGVsIHByb2Nlc2FtaWVudHUgZCdhY3RpdmFkb3Jlc1xuIgorImVudMOhIG51biBzZSBmaXpvLiAgRWwgcHJvY2VzYW1pZW50dSBkJ2FjdGl2YWRvcmVzIHB1ZSBzb2xpY2l0YXNlIHVzYW5kb1xuIgorImRzZWxlY3QgbyBkcGtnIC0tY29uZmlndXJlIC0tcGVuZGluZyAobyBkcGtnIC0tdHJpZ2dlcnMtb25seSk6XG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTM3IHNyYy9lbnF1aXJ5LmM6MjExIHNyYy9lbnF1aXJ5LmM6MjkyIHNyYy9lbnF1aXJ5LmM6MzczCisjOiBzcmMvZW5xdWlyeS5jOjQ2MCBzcmMvc2VsZWN0LmM6OTggc3JjL3NlbGVjdC5jOjE2NCBzcmMvdHJpZ2NtZC5jOjE5OQorIzogc3JjL3VwZGF0ZS5jOjQ4IHNyYy91cGRhdGUuYzoxMTMgZHBrZy1zcGxpdC9xdWV1ZS5jOjIzMgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIHRha2VzIG5vIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS0lcyBudW4gdG9tYSBkZW5nw7puIGFyZ3VtZW50dSIKKworIzogc3JjL2VucXVpcnkuYzoxNTIKK21zZ2lkICIiCisiQW5vdGhlciBwcm9jZXNzIGhhcyBsb2NrZWQgdGhlIGRhdGFiYXNlIGZvciB3cml0aW5nLCBhbmQgbWlnaHQgY3VycmVudGx5IGJlXG4iCisibW9kaWZ5aW5nIGl0LCBzb21lIG9mIHRoZSBmb2xsb3dpbmcgcHJvYmxlbXMgbWlnaHQganVzdCBiZSBkdWUgdG8gdGhhdC5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZW5xdWlyeS5jOjE5MQorIywgZnV6enkKKyN8IG1zZ2lkICI8dW5rbm93bj4iCittc2djdHh0ICJzZWN0aW9uIgorbXNnaWQgIjx1bmtub3duPiIKK21zZ3N0ciAiPGRlc2Nvbm9jw611PiIKKworIzogc3JjL2VucXVpcnkuYzoyNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiICVkIGluICVzOiAiCittc2dzdHIgIiAlZCBlbiAlczogIgorCisjOiBzcmMvZW5xdWlyeS5jOjI2NgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiICVkIHBhY2thZ2VzLCBmcm9tIHRoZSBmb2xsb3dpbmcgc2VjdGlvbnM6IgorbXNnaWQgIiAlZCBwYWNrYWdlLCBmcm9tIHRoZSBmb2xsb3dpbmcgc2VjdGlvbjoiCittc2dpZF9wbHVyYWwgIiAlZCBwYWNrYWdlcywgZnJvbSB0aGUgZm9sbG93aW5nIHNlY3Rpb25zOiIKK21zZ3N0clswXSAiICVkIHBhcXVldGVzLCBkZSBsZXMgc2lndWllbnRlcyBzZWljaW9uZXM6IgorbXNnc3RyWzFdICIgJWQgcGFxdWV0ZXMsIGRlIGxlcyBzaWd1aWVudGVzIHNlaWNpb25lczoiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzA1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJWZXJzaW9uIG9mIGRwa2cgd2l0aCB3b3JraW5nICVzIHN1cHBvcnQgbm90IHlldCBjb25maWd1cmVkLlxuIgorIiBQbGVhc2UgdXNlICdkcGtnIC0tY29uZmlndXJlIGRwa2cnLCBhbmQgdGhlbiB0cnkgYWdhaW4uXG4iCittc2dzdHIgIiIKKyJMYSB2ZXJzacOzbiBkZSBkcGtnIGNvbiBzb2ZpdHUgYWN0aXZ1IHBhICVzIGHDrW5kYSBudW4gdGEgY29uZmlndXJhZGEuXG4iCisiIFBvciBmYXZvciwgdXNlICdkcGtnIC0tY29uZmlndXJlIGRwa2cnLCB5IHZ1ZWx2YSBhIHRlbnRhbG8uXG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzEwCisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2cgbm90IHJlY29yZGVkIGFzIGluc3RhbGxlZCwgY2Fubm90IGNoZWNrIGZvciAlcyBzdXBwb3J0IVxuIgorbXNnc3RyICIiCisiZHBrZyBudW4gdGEgcmV4aXN0csOhdSBjb21vIGluc3RhbMOhdSwgwqFudW4gcHVlIGNvbXByb2Jhc2UnbCBzb2ZpdHUgcGEgJXMhXG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzIxCittc2dpZCAiUHJlLURlcGVuZHMgZmllbGQiCittc2dzdHIgImNhbXB1IFByZS1EZXBlbmRlbmNpZXMiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzI5Cittc2dpZCAiZXBvY2giCittc2dzdHIgImVwb2NoIgorCisjOiBzcmMvZW5xdWlyeS5jOjMzNworbXNnaWQgImxvbmcgZmlsZW5hbWVzIgorbXNnc3RyICJub21lcyBkZSBmaWNoZXJvcyBhYm9uZG8gbGxhcmdvcyIKKworIzogc3JjL2VucXVpcnkuYzozNDYKK21zZ2lkICJtdWx0aXBsZSBDb25mbGljdHMgYW5kIFJlcGxhY2VzIgorbXNnc3RyICJhYm9uZG9zIFRyb3F1ZXMgeSBDb25mbGljdG9zIgorCisjOiBzcmMvZW5xdWlyeS5jOjQzNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogY2Fubm90IHNlZSBob3cgdG8gc2F0aXNmeSBwcmUtZGVwZW5kZW5jeTpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorImRwa2c6IG51biBzZSB2ZSBjw7NtbyBzYXRpc2ZhY2VyIGxhIHByZS1kZXBlbmRlbmNpYTpcbiIKKyIgJXNcbiIKKworIzogc3JjL2VucXVpcnkuYzo0MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHNhdGlzZnkgcHJlLWRlcGVuZGVuY2llcyBmb3IgJS4yNTBzICh3YW50ZWQgZHVlIHRvICUuMjUwcykiCittc2dzdHIgIiIKKyJudW4gcHVlZGVuIHNhdGlzZmFjZXNlIGxlcyBwcmUtZGVwZW5kZW5jaWVzIHBhICUuMjUwcyAobmVjZXNhcmllcyBwb3IgJS4yNTBzKSIKKworIzogc3JjL2VucXVpcnkuYzo0NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAib2Jzb2xldGUgb3B0aW9uICctLSVzJywgcGxlYXNlIHVzZSAnLS0lcycgaW5zdGVhZC4iCittc2dzdHIgIm9wY2nDs24gb2Jzb2xldGEgJy0tJXMnLCBwb3IgZmF2b3IsIHVzYSBuZWwgc28gbGx1Z2FyICctLSVzJyIKKworIzogc3JjL2VucXVpcnkuYzo1MTkKK21zZ2lkICIiCisiLS1jb21wYXJlLXZlcnNpb25zIHRha2VzIHRocmVlIGFyZ3VtZW50czogPHZlcnNpb24+IDxyZWxhdGlvbj4gPHZlcnNpb24+IgorbXNnc3RyICIiCisiLS1jb21wYXJlLXZlcnNpb25zIGxsZXZhIHRyw6lzIGFyZ3VtZW50b3M6IDx2ZXJzacOzbj4gPHJlbGFjacOzbj4gPHZlcnNpw7NuPiIKKworIzogc3JjL2VucXVpcnkuYzo1MjQKK21zZ2lkICItLWNvbXBhcmUtdmVyc2lvbnMgYmFkIHJlbGF0aW9uIgorbXNnc3RyICJtYWxhIHJlbGFjacOzbiBkZSAtLWNvbXBhcmUtdmVyc2lvbnMiCisKKyM6IHNyYy9lbnF1aXJ5LmM6NTI5IHNyYy9lbnF1aXJ5LmM6NTMxIHNyYy9lbnF1aXJ5LmM6NTQwIHNyYy9lbnF1aXJ5LmM6NTQyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ2ZXJzaW9uICclcycgaGFzIGJhZCBzeW50YXg6ICVzIgorbXNnc3RyICJkcGtnOiBsYSB2ZXJzacOzbiBgJXMnIHRpZW4gdW5hIG1hbGEgc2ludGF4aXM6ICVzXG4iCisKKyM6IHNyYy9lcnJvcnMuYzo2MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IGVycm9yIHByb2Nlc3NpbmcgJXMgKC0tJXMpOlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisiJXM6IGVycm9yIGFsIHByb2Nlc2FyICVzICgtLSVzKTpcbiIKKyIgJXNcbiIKKworIzogc3JjL2Vycm9ycy5jOjY4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiZHBrZzogZmFpbGVkIHRvIGFsbG9jYXRlIG1lbW9yeSBmb3IgbmV3IGVudHJ5IGluIGxpc3Qgb2YgZmFpbGVkIHBhY2thZ2VzLiIKK21zZ2lkICIiCisiJXM6IGZhaWxlZCB0byBhbGxvY2F0ZSBtZW1vcnkgZm9yIG5ldyBlbnRyeSBpbiBsaXN0IG9mIGZhaWxlZCBwYWNrYWdlczogJXMiCittc2dzdHIgIiIKKyJkcGtnOiBmYWxsw7MgYWxsdWdhciBtZW1vcmlhIHBhIGxhIG51ZXZhIGVudHJhZGEgbmEgbGxpc3RhIGRlIHBhcXVldGVzIHF1ZSAiCisiZmFsbGFyb24uIgorCisjOiBzcmMvZXJyb3JzLmM6NzkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImRwa2c6IHRvbyBtYW55IGVycm9ycywgc3RvcHBpbmdcbiIKK21zZ2lkICIlczogdG9vIG1hbnkgZXJyb3JzLCBzdG9wcGluZ1xuIgorbXNnc3RyICJkcGtnOiBkZW1hc2lhb3MgZXJyb3JlcywgcGFyYW5kb1xuIgorCisjOiBzcmMvZXJyb3JzLmM6ODcKK21zZ2lkICJFcnJvcnMgd2VyZSBlbmNvdW50ZXJlZCB3aGlsZSBwcm9jZXNzaW5nOlxuIgorbXNnc3RyICJBbGNvbnRyw6Fyb25zZSBlcnJvcmVzIGFsIHByb2Nlc2FyOlxuIgorCisjOiBzcmMvZXJyb3JzLmM6OTQKK21zZ2lkICJQcm9jZXNzaW5nIHdhcyBoYWx0ZWQgYmVjYXVzZSB0aGVyZSB3ZXJlIHRvbyBtYW55IGVycm9ycy5cbiIKK21zZ3N0ciAiUGFyb3NlJ2wgcHJvY2VzdSBwb3JxdWUgaHVibyBkZW1hc2lhb3MgZXJyb3Jlcy5cbiIKKworIzogc3JjL2Vycm9ycy5jOjEwNQorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlICVzIHdhcyBvbiBob2xkLCBwcm9jZXNzaW5nIGl0IGFueXdheSBhcyB5b3UgcmVxdWVzdGVkXG4iCittc2dzdHIgIkVsIHBhcXVldGUgJXMgdGFiYSByZXRlbsOtdSwgcHJvY2Vzw6FuZG9sdSBsbyBtZXNtbyBjb21vIHNlIHBpZGnDs1xuIgorCisjOiBzcmMvZXJyb3JzLmM6MTA5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJQYWNrYWdlICVzIGlzIG9uIGhvbGQsIG5vdCB0b3VjaGluZyBpdC4gIFVzZSAtLWZvcmNlLWhvbGQgdG8gb3ZlcnJpZGUuXG4iCittc2dzdHIgIiIKKyJFbCBwYXF1ZXRlICVzIHRhIHJldGVuw611LCBudW4gdmEgdG9jYXNlLiBVc2UgLS1mb3JjZS1ob2xkIHBhIGNhbWJpYXIgZXN0b1xuIgorCisjOiBzcmMvZXJyb3JzLmM6MTE5Cittc2dpZCAib3ZlcnJpZGluZyBwcm9ibGVtIGJlY2F1c2UgLS1mb3JjZSBlbmFibGVkOiIKK21zZ3N0ciAiYXZpc3UsIHNhbHRhbmRvJ2wgcHJvYmxlbWEgcG9yIHRhciBhY3RpdmFvIC0tZm9yY2U6ICIKKworIzogc3JjL2ZpbGVzZGIuYzozMDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlIGAlLjI1MHMnIgorbXNnc3RyICJudW4gcHVlIGFicmlzZSdsIGZpY2hlcnUgZGUgbGxpc3RhIGRlIGZpY2hlcm9zIGRlbCBwYXF1ZXRlIGAlLjI1MHMnIgorCisjOiBzcmMvZmlsZXNkYi5jOjMxMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlIGAlLjI1MHMnIG1pc3NpbmcsIGFzc3VtaW5nIHBhY2thZ2UgaGFzIG5vIGZpbGVzICIKKyJjdXJyZW50bHkgaW5zdGFsbGVkLiIKK21zZ3N0ciAiIgorImZhbHRhJ2wgZmljaGVydSBkZSBsbGlzdGEgZGUgZmljaGVyb3MgZGVsIHBhcXVldGUgYCUuMjUwcycsIHN1cG9uc2UgcXUnZWwgIgorInBhcXVldGUgbnVuIHRpZW4gZGVuZ8O6biBmaWNoZXJ1IGluc3RhbMOhdSBhY3R1YWxtZW50ZS4iCisKKyM6IHNyYy9maWxlc2RiLmM6MzIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAnJS4yNTBzJyIKK21zZ3N0ciAibnVuIHB1ZSBhYnJpc2UnbCBmaWNoZXJ1IGRlIGxsaXN0YSBkZSBmaWNoZXJvcyBkZWwgcGFxdWV0ZSAnJS4yNTBzJyIKKworIzogc3JjL2ZpbGVzZGIuYzozMzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGVzIGxpc3QgZm9yIHBhY2thZ2UgYCUuMjUwcyciCittc2dpZCAicmVhZGluZyBmaWxlcyBsaXN0IGZvciBwYWNrYWdlICclLjI1MHMnIgorbXNnc3RyICJsbGlzdGEgZGUgZmljaGVyb3MgZGVsIHBhcXVldGUgYCUuMjUwcyciCisKKyM6IHNyYy9maWxlc2RiLmM6MzM2CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAnJS4yNTBzJyBpcyBtaXNzaW5nIGZpbmFsIG5ld2xpbmUiCittc2dzdHIgIiIKKyJlbCBmaWNoZXJ1IGRlIGxsaXN0YSBkZSBmaWNoZXJvcyBkZWwgcGFxdWV0ZSAnJS4yNTBzJyBjb250acOpbiB1bmEgbGxpbmlhICIKKyJmaW5hbCBlcm1hIgorCisjOiBzcmMvZmlsZXNkYi5jOjM0NAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcycgY29udGFpbnMgZW1wdHkgZmlsZW5hbWUiCittc2dzdHIgIiIKKyJlbCBmaWNoZXJ1IGRlIGxsaXN0YSBkZSBmaWNoZXJvcyBkZWwgcGFxdWV0ZSBgJS4yNTBzJyBjb250acOpbiB1biBub21lIGRlICIKKyJmaWNoZXJ1IHZhY8OtdSIKKworIzogc3JjL2ZpbGVzZGIuYzozNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcyciCittc2dzdHIgImVycm9yIGFsIHphcnJhciBlbCBmaWNoZXJ1IGRlIGxsaXN0YSBkZSBmaWNoZXJvcyBkZWwgcGFxdWV0ZSBgJS4yNTBzJyIKKworIzogc3JjL2ZpbGVzZGIuYzo0NjIKK21zZ2lkICIoUmVhZGluZyBkYXRhYmFzZSAuLi4gIgorbXNnc3RyICIoTGxlZW5kbyBsYSBiYXNlIGRlIGRhdG9zIC4uLiAiCisKKyM6IHNyYy9maWxlc2RiLmM6NDgzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIlZCBmaWxlcyBhbmQgZGlyZWN0b3JpZXMgY3VycmVudGx5IGluc3RhbGxlZC4pXG4iCittc2dpZCAiJWQgZmlsZSBvciBkaXJlY3RvcnkgY3VycmVudGx5IGluc3RhbGxlZC4pXG4iCittc2dpZF9wbHVyYWwgIiVkIGZpbGVzIGFuZCBkaXJlY3RvcmllcyBjdXJyZW50bHkgaW5zdGFsbGVkLilcbiIKK21zZ3N0clswXSAiJWQgZmljaGVyb3MgeSBkaXJldXRvcmlvcyBpbnN0YWxhb3MgYWN0dWFsbWVudGUuKVxuIgorbXNnc3RyWzFdICIlZCBmaWNoZXJvcyB5IGRpcmV1dG9yaW9zIGluc3RhbGFvcyBhY3R1YWxtZW50ZS4pXG4iCisKKyM6IHNyYy9maWxlc2RiLmM6NTE2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIiIKKyJudW4gcHVlIGNyaWFzZSdsIGZpY2hlcnUgZGUgbGxpc3RhIGRlIGZpY2hlcm9zIGFjdHVhbGl6YW8gZGVsIHBhcXVldGUgJXMiCisKKyM6IHNyYy9maWxlc2RiLmM6NTI2CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB3cml0ZSB0byB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAiIgorImZhbGx1IGQnZXNjcml0dXJhIG5lbCBmaWNoZXJ1IGRlIGxsaXN0YSBkZSBmaWNoZXJvcyBhY3R1YWxpemFvIGRlbCBwYXF1ZXRlICVzIgorCisjOiBzcmMvZmlsZXNkYi5jOjUyOAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZmx1c2ggdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgImZhbGx1IGFsIHZvbGNhciBsYSBsbGlzdGEgZGUgZmljaGVyb3MgYWN0dWFsaXphZGEgZGVsIHBhcXVldGUgJXMiCisKKyM6IHNyYy9maWxlc2RiLmM6NTMwCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBzeW5jIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICJmYWxsdSBhbCBzaW5jcm9uaXphciBsYSBsbGlzdGEgZGUgZmljaGVyb3MgYWN0dWFsaXphZGEgZGVsIHBhcXVldGUgJXMiCisKKyM6IHNyYy9maWxlc2RiLmM6NTMzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjbG9zZSB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAiZmFsbHUgYWwgemFycmFyIGxhIGxsaXN0YSBkZSBmaWNoZXJvcyBhY3R1YWxpemFkYSBkZWwgcGFxdWV0ZSAlcyIKKworIzogc3JjL2ZpbGVzZGIuYzo1MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGluc3RhbGwgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgImZhbGx1IGFsIGluc3RhbGFyIGxhIGxsaXN0YSBkZSBmaWNoZXJvcyBhY3R1YWxpemFkYSBkZWwgcGFxdWV0ZSAlcyIKKworIzogc3JjL2hlbHAuYzo0OAorbXNnaWQgIm5vdCBpbnN0YWxsZWQiCittc2dzdHIgIm5vbiBpbnN0YWzDoXUiCisKKyM6IHNyYy9oZWxwLmM6NDkKK21zZ2lkICJub3QgaW5zdGFsbGVkIGJ1dCBjb25maWdzIHJlbWFpbiIKK21zZ3N0ciAibm9uIGluc3RhbMOhdSBwZXJvIHF1ZWRhIGxhIHNvIGNvbmZpZ3VyYWNpw7NuIgorCisjOiBzcmMvaGVscC5jOjUwCittc2dpZCAiYnJva2VuIGR1ZSB0byBmYWlsZWQgcmVtb3ZhbCBvciBpbnN0YWxsYXRpb24iCittc2dzdHIgImZyYW5jw611IHBvciB1biBkZXNhbmljaXUgbyBpbnN0YWxhY2nDs24gbWFsYSIKKworIzogc3JjL2hlbHAuYzo1MQorbXNnaWQgInVucGFja2VkIGJ1dCBub3QgY29uZmlndXJlZCIKK21zZ3N0ciAiZGVzZW1wYXF1ZXTDoXUgcGVybyBlbnNpbiBjb25maWd1cmFyIgorCisjOiBzcmMvaGVscC5jOjUyCittc2dpZCAiYnJva2VuIGR1ZSB0byBwb3N0aW5zdCBmYWlsdXJlIgorbXNnc3RyICJmcmFuY8OtdSBwb3IgdW4gZmFsbHUgZW4gJ3Bvc3RpbnN0JyIKKworIzogc3JjL2hlbHAuYzo1MworbXNnaWQgImF3YWl0aW5nIHRyaWdnZXIgcHJvY2Vzc2luZyBieSBhbm90aGVyIHBhY2thZ2UiCittc2dzdHIgImVzcGVyYW5kbyBhIHF1ZSBvdHJ1IHBhcXVldGUgcHJvY2VzZSBkaXNwYXJhZG9yZXMiCisKKyM6IHNyYy9oZWxwLmM6NTQKK21zZ2lkICJ0cmlnZ2VyZWQiCittc2dzdHIgImRpc3BhcsOhdSIKKworIzogc3JjL2hlbHAuYzo1NQorbXNnaWQgImluc3RhbGxlZCIKK21zZ3N0ciAiaW5zdGFsw6F1IgorCisjOiBzcmMvaGVscC5jOjEwNworIywgZnV6enkKK21zZ2lkICJQQVRIIGlzIG5vdCBzZXQuIgorbXNnc3RyICJkcGtnIC0gZmFsbHU6IGxhIHZhcmlhYmxlIGQnYW1iaWVudGUgUEFUSCBudW4gcydlc3RhYmxlY2nDsy5cbiIKKworIzogc3JjL2hlbHAuYzoxMjkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiclcycgbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuIgorbXNnc3RyICJkcGtnOiBgJXMnIG51biBzJ2F0b3DDsyBlbiBQQVRILlxuIgorCisjOiBzcmMvaGVscC5jOjEzOAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIiVkIGV4cGVjdGVkIHByb2dyYW0gbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuXG4iCisiJXMiCittc2dpZF9wbHVyYWwgIiIKKyIlZCBleHBlY3RlZCBwcm9ncmFtcyBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS5cbiIKKyIlcyIKK21zZ3N0clswXSAiZHBrZzogYCVzJyBudW4gcydhdG9ww7MgZW4gUEFUSC5cbiIKK21zZ3N0clsxXSAiZHBrZzogYCVzJyBudW4gcydhdG9ww7MgZW4gUEFUSC5cbiIKKworIzogc3JjL2hlbHAuYzoxNDEKKyMsIGZ1enp5Cittc2dpZCAiIgorIk5vdGU6IHJvb3QncyBQQVRIIHNob3VsZCB1c3VhbGx5IGNvbnRhaW4gL3Vzci9sb2NhbC9zYmluLCAvdXNyL3NiaW4gYW5kIC8iCisic2Jpbi4iCittc2dzdHIgIiIKKyIlZCBwcm9ncmFtYShlcykgZXNwZXLDoXUoYW9zKSBlbnNpbiBhdG9wYXIgZW4gUEFUSC5cbiIKKyJOQjogZWwgUEFUSCBkZWwgcm9vdCBkZWJlcsOtYSBjb250ZW5lciAvdXNyL2xvY2FsL3NiaW4sIC91c3Ivc2JpbiBlIC9zYmluLiIKKworIzogc3JjL2hlbHAuYzoxODgKK21zZ2lkICJhZG1pbmRpciBtdXN0IGJlIGluc2lkZSBpbnN0ZGlyIGZvciBkcGtnIHRvIHdvcmsgcHJvcGVybHkiCittc2dzdHIgIiIKKworIzogc3JjL2hlbHAuYzoxOTAgc3JjL21haW4uYzo3NDcKKyMsIGZ1enp5CisjfCBtc2dpZCAidW5hYmxlIHRvIHNldGVudiBmb3IgbWFpbnRhaW5lciBzY3JpcHQiCittc2dpZCAidW5hYmxlIHRvIHNldGVudiBmb3Igc3VicHJvY2Vzc2VzIgorbXNnc3RyICJudW4gcHVlIGVmZXV0dWFzZSBzZXRlbnYgcGFsIHByb2dyYW1hIGRlIGNhbHRlbmltaWVudHUiCisKKyM6IHNyYy9oZWxwLmM6MTkyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjaHJvb3QgdG8gYCUuMjUwcyciCittc2dzdHIgImZhbGx1IGFsIGZhY2VyIGNocm9vdCBhIGAlLjI1MHMnIgorCisjOiBzcmMvaGVscC5jOjE5NCBkcGtnLWRlYi9idWlsZC5jOjQ1NSBkcGtnLWRlYi9idWlsZC5jOjQ1NworIzogZHBrZy1kZWIvYnVpbGQuYzo1MzYgZHBrZy1kZWIvYnVpbGQuYzo1NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIGAlLjI1NXMnIgorbXNnc3RyICJmYWxsw7MgYWwgY2FtdWRhciBhbCBkaXJldXRvcml1IGAlLjI1NXMnIgorCisjOiBzcmMvaGVscC5jOjI1NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IGV4ZWN1dGUgcGVybWlzc2lvbnMgb24gYCUuMjUwcyciCittc2dzdHIgIm51biBzZSBwdWRpZXJvbiBlc3RhYmxlY2VyIHBlcm1pc29zIGQnZXhlY3VjacOzbiBlbiBgJS4yNTBzJyIKKworIzogc3JjL2hlbHAuYzoyNzYKK21zZ2lkICJ1bmFibGUgdG8gc2V0ZW52IGZvciBtYWludGFpbmVyIHNjcmlwdCIKK21zZ3N0ciAibnVuIHB1ZSBlZmV1dHVhc2Ugc2V0ZW52IHBhbCBwcm9ncmFtYSBkZSBjYWx0ZW5pbWllbnR1IgorCisjOiBzcmMvaGVscC5jOjMwMAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnN0YWxsZWQgJXMgc2NyaXB0IgorbXNnc3RyICJzY3JpcHQgJXMgaW5zdGFsw6F1IgorCisjOiBzcmMvaGVscC5jOjMxMyBzcmMvaGVscC5jOjM4MiBzcmMvaGVscC5jOjQ0MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCAlcyBgJS4yNTBzJyIKK21zZ3N0ciAibnVuIHNlIHB1ZG8gZmFjZXIgc3RhdCBkZSAlcyBgJS4yNTBzJyIKKworIzogc3JjL2hlbHAuYzozNjggc3JjL2hlbHAuYzo0MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAibmV3ICVzIHNjcmlwdCIKK21zZ3N0ciAic2NyaXB0ICVzIG51ZXZ1IgorCisjOiBzcmMvaGVscC5jOjQwMgorIywgYy1mb3JtYXQKK21zZ2lkICJvbGQgJXMgc2NyaXB0IgorbXNnc3RyICJzY3JpcHQgJXMgdmlleXUiCisKKyM6IHNyYy9oZWxwLmM6NDE2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0ICVzICclLjI1MHMnOiAlcyIKK21zZ3N0ciAibnVuIHB1ZG8gZmFjZXNlIHN0YXQgZGUgJXMgJyUuMjUwcyc6ICVzIgorCisjOiBzcmMvaGVscC5jOjQyNQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnIC0gdHJ5aW5nIHNjcmlwdCBmcm9tIHRoZSBuZXcgcGFja2FnZSBpbnN0ZWFkIC4uLlxuIgorbXNnc3RyICJkcGtnIC0gcHJvYmFuZG8nbCBzY3JpcHQgZGVsIHBhcXVldGUgbnVldnUgbmVsIHNvIHNpdGl1Li4uXG4iCisKKyM6IHNyYy9oZWxwLmM6NDM5Cittc2dpZCAidGhlcmUgaXMgbm8gc2NyaXB0IGluIHRoZSBuZXcgdmVyc2lvbiBvZiB0aGUgcGFja2FnZSAtIGdpdmluZyB1cCIKK21zZ3N0ciAibnVuIGhhaSB1biBzY3JpcHQgbmEgdmVyc2nDs24gbnVldmEgZGVsIHBhcXVldGUgLSBjb2xhbmRvIgorCisjOiBzcmMvaGVscC5jOjQ0NQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiAuLi4gaXQgbG9va3MgbGlrZSB0aGF0IHdlbnQgT0suXG4iCittc2dzdHIgImRwa2c6IC4uLiBwYWV6IHF1ZSB0b28gZm9pIGJpZW4uXG4iCisKKyM6IHNyYy9oZWxwLmM6NjE2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2VjdXJlbHkgcmVtb3ZlICclLjI1NXMnIgorbXNnc3RyICJudW4gcHVlZGUgY3JlYXNlICclLjI1NXMnIgorCisjOiBzcmMvaGVscC5jOjYyMSBkcGtnLWRlYi9pbmZvLmM6NjUgZHBrZy1kZWIvaW5mby5jOjY3Cittc2dpZCAicm0gY29tbWFuZCBmb3IgY2xlYW51cCIKK21zZ3N0ciAiIgorCisjOiBzcmMvaW5mb2RiLmM6NTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoZWNrIGV4aXN0ZW5jZSBvZiBgJS4yNTBzJyIKK21zZ3N0ciAibnVuIHB1ZWRlIGNvbXByb2Jhc2UgbGEgZXNpc3RlbmNpYSBkZSBgJS4yNTBzJyIKKworIzogc3JjL2luZm9kYi5jOjcwCittc2dpZCAiY2Fubm90IHJlYWQgaW5mbyBkaXJlY3RvcnkiCittc2dzdHIgIm51biBwdWVkZSBsbGVlc2UnbCBkaXJldXRvcml1IGBpbmZvJyIKKworIzogc3JjL21haW4uYzo2MAorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIG1hbmFnZW1lbnQgcHJvZ3JhbSB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICJQcm9ncmFtYSBkZSB4ZXN0acOzbiBkZSBwYXF1ZXRlcyBcIiVzXCIgZGUgRGViaWFuIHZlcnNpw7NuICVzLlxuIgorCisjOiBzcmMvbWFpbi5jOjg1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1pfC0taW5zdGFsbCAgICAgICA8LmRlYiBmaWxlIG5hbWU+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXJlY3Rvcnk+IC4uLlxuIgorIiAgLS11bnBhY2sgICAgICAgICAgIDwuZGViIGZpbGUgbmFtZT4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRpcmVjdG9yeT4gLi4uXG4iCisiICAtQXwtLXJlY29yZC1hdmFpbCAgPC5kZWIgZmlsZSBuYW1lPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyZWN0b3J5PiAuLi5cbiIKKyIgIC0tY29uZmlndXJlICAgICAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtLXRyaWdnZXJzLW9ubHkgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLXJ8LS1yZW1vdmUgICAgICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC1QfC0tcHVyZ2UgICAgICAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtLWdldC1zZWxlY3Rpb25zIFs8cGF0dGVybj4gLi4uXSBHZXQgbGlzdCBvZiBzZWxlY3Rpb25zIHRvIHN0ZG91dC5cbiIKKyIgIC0tc2V0LXNlbGVjdGlvbnMgICAgICAgICAgICAgICAgIFNldCBwYWNrYWdlIHNlbGVjdGlvbnMgZnJvbSBzdGRpbi5cbiIKKyIgIC0tY2xlYXItc2VsZWN0aW9ucyAgICAgICAgICAgICAgIERlc2VsZWN0IGV2ZXJ5IG5vbi1lc3NlbnRpYWwgcGFja2FnZS5cbiIKKyIgIC0tdXBkYXRlLWF2YWlsIDxQYWNrYWdlcy1maWxlPiAgIFJlcGxhY2UgYXZhaWxhYmxlIHBhY2thZ2VzIGluZm8uXG4iCisiICAtLW1lcmdlLWF2YWlsIDxQYWNrYWdlcy1maWxlPiAgICBNZXJnZSB3aXRoIGluZm8gZnJvbSBmaWxlLlxuIgorIiAgLS1jbGVhci1hdmFpbCAgICAgICAgICAgICAgICAgICAgRXJhc2UgZXhpc3RpbmcgYXZhaWxhYmxlIGluZm8uXG4iCisiICAtLWZvcmdldC1vbGQtdW5hdmFpbCAgICAgICAgICAgICBGb3JnZXQgdW5pbnN0YWxsZWQgdW5hdmFpbGFibGUgcGtncy5cbiIKKyIgIC1zfC0tc3RhdHVzIDxwYWNrYWdlPiAuLi4gICAgICAgIERpc3BsYXkgcGFja2FnZSBzdGF0dXMgZGV0YWlscy5cbiIKKyIgIC1wfC0tcHJpbnQtYXZhaWwgPHBhY2thZ2U+IC4uLiAgIERpc3BsYXkgYXZhaWxhYmxlIHZlcnNpb24gZGV0YWlscy5cbiIKKyIgIC1MfC0tbGlzdGZpbGVzIDxwYWNrYWdlPiAuLi4gICAgIExpc3QgZmlsZXMgYG93bmVkJyBieSBwYWNrYWdlKHMpLlxuIgorIiAgLWx8LS1saXN0IFs8cGF0dGVybj4gLi4uXSAgICAgICAgTGlzdCBwYWNrYWdlcyBjb25jaXNlbHkuXG4iCisiICAtU3wtLXNlYXJjaCA8cGF0dGVybj4gLi4uICAgICAgICBGaW5kIHBhY2thZ2Uocykgb3duaW5nIGZpbGUocykuXG4iCisiICAtQ3wtLWF1ZGl0ICAgICAgICAgICAgICAgICAgICAgICBDaGVjayBmb3IgYnJva2VuIHBhY2thZ2UocykuXG4iCisiICAtLXByaW50LWFyY2hpdGVjdHVyZSAgICAgICAgICAgICBQcmludCBkcGtnIGFyY2hpdGVjdHVyZS5cbiIKKyIgIC0tY29tcGFyZS12ZXJzaW9ucyA8YT4gPG9wPiA8Yj4gIENvbXBhcmUgdmVyc2lvbiBudW1iZXJzIC0gc2VlIGJlbG93LlxuIgorIiAgLS1mb3JjZS1oZWxwICAgICAgICAgICAgICAgICAgICAgU2hvdyBoZWxwIG9uIGZvcmNpbmcuXG4iCisiICAtRGh8LS1kZWJ1Zz1oZWxwICAgICAgICAgICAgICAgICBTaG93IGhlbHAgb24gZGVidWdnaW5nLlxuIgorIlxuIgorbXNnc3RyICIiCisiw5NyZGVuZXM6XG4iCisiLWl8LS1pbnN0YWxsIDxmaWNoZXJ1IC5kZWI+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXJldXRvcml1PiAuLi5cbiIKKyItLXVucGFjayA8ZmljaGVydSAuZGViPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyZXV0b3JpdT4gLi4uXG4iCisiLUF8LS1yZWNvcmQtYXZhaWwgPGZpY2hlcnUgLmRlYj4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRpcmV1dG9yaXU+IC4uLlxuIgorIi0tY29uZmlndXJlIDxwYXF1ZXRlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyItLXRyaWdnZXJzLW9ubHkgPHBhcXVldGU+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIi1yfC0tcmVtb3ZlIDxwYXF1ZXRlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyItUHwtLXB1cmdlIDxwYXF1ZXRlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyItLWdldC1zZWxlY3Rpb25zIFs8cGF0csOzbj4gLi4uXSBBbXVlc2EgbGEgbGxpc3RhIGQnZXNjb3lldGVzLlxuIgorIi0tc2V0LXNlbGVjdGlvbnMgRXN0YWJsZXogbGVzIGVzY295ZXRlcyBkZSBwYXF1ZXRlcy5cbiIKKyItLWNsZWFyLXNlbGVjdGlvbnMgRGVzZXNlYmlsbGEgbG9zIHBhcXVldGVzIG5vbiBlc2VuY2lhbGVzLlxuIgorIi0tdXBkYXRlLWF2YWlsIDxmaWNoZXJ1LVBhY2thZ2VzPiBTdWJzdGl0dWkgbGEgaW5mb3JtYWNpw7NuIGRlIHBhcXVldGVzLlxuIgorIi0tbWVyZ2UtYXZhaWwgPGZpY2hlcnUtUGFja2FnZXM+IEFtacOpc3Rhc2UgY29sYSBpbmZvcm1hY2nDs24gZGVsIGZpY2hlcnUuXG4iCisiLS1jbGVhci1hdmFpbCBEZXNhbmljaWEgbGEgaW5mb3JtYWNpw7NuIGRlIGRpc3BvbmlibGVzLlxuIgorIi0tZm9yZ2V0LW9sZC11bmF2YWlsIEVzY2FleiBsb3MgcGFxdWV0ZXNsb3MgcGFxdWV0ZXMgZGVzaW5zdGFsYW9zXG4iCisieSBub24gZGlzcG9uaWJsZXMuXG4iCisiLXN8LS1zdGF0dXMgPHBhcXVldGU+IC4uLiBBbXVlc2EgZGV0YWxsZXMgZGVsIGVzdMOhdSBkZWwgcGFxdWV0ZS5cbiIKKyItcHwtLXByaW50LWF2YWlsIDxwYXF1ZXRlPiAuLi4gQW11ZXNhIGRldGFsbGVzIGRlIGxhIHZlcnNpw7NuIGRpc3BvbmlibGUuXG4iCisiLUx8LS1saXN0ZmlsZXMgPHBhcXVldGU+IC4uLiBBbXVlc2EgbG9zIGZpY2hlcm9zIGRlbCBwYXF1ZXRlLlxuIgorIi1sfC0tbGlzdCBbPHBhdHLDs24+IC4uLl0gQW11ZXNhIHVuYSBsbGlzdGEgY29uY2lzYSBkZSBwYXF1ZXRlcy5cbiIKKyItU3wtLXNlYXJjaCA8cGF0csOzbj4gLi4uIEd1ZXRhIHBhcXVldGVzIHF1ZSBjb250aWVuZW4gZWwgZmljaGVydS5cbiIKKyItQ3wtLWF1ZGl0IEd1ZXRhIHBhcXVldGVzIHJvdG9zLlxuIgorIi0tcHJpbnQtYXJjaGl0ZWN0dXJlIEFtdWVzYSBsJ2FycXVpdGV1dHVyYSBkZSBkcGtnLlxuIgorIi0tY29tcGFyZS12ZXJzaW9ucyA8YT4gPG9wPiA8Yj4gQ29tcGFyYSB2ZXJzaW9uZXMgLSBtaXJhIGVtYmF4by5cbiIKKyItLWZvcmNlLWhlbHAgQWlkYSBzb2JyZSBlbCBmb3J6w6F1LlxuIgorIi1EaHwtLWRlYnVnPWhlbHAgQWlkYSBzb2JyZSBsYSBkZXB1cmFjacOzbi5cbiIKKyJcbiIKKworIzogc3JjL21haW4uYzoxMTMgc3JjL3F1ZXJ5Y21kLmM6NjMxIHNyYy90cmlnY21kLmM6NzcgZHBrZy1kZWIvbWFpbi5jOjg4CisjOiBkcGtnLXNwbGl0L21haW4uYzo3NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIiAgLWh8LS1oZWxwICAgICAgICAgICAgICAgICAgICAgICAgU2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCittc2dzdHIgIiIKKyIgIC1ofC0taGVscCBBbXVlc2EgZXN0aSBtZW5zYXhlIGQnYWlkYS5cbiIKKyIgIC0tdmVyc2lvbiBBbXVlc2EgbGEgdmVyc2nDs24uXG4iCisiICAtLWxpY2Vuc2V8LS1saWNlbmNlIEFtdWVzYSBsb3MgdMOpcm1pbm9zIGRlIGNvcGlhIHkgbGEgbGxpY2VuY2lhLlxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjExOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVXNlIGRwa2cgLWJ8LS1idWlsZHwtY3wtLWNvbnRlbnRzfC1lfC0tY29udHJvbHwtSXwtLWluZm98LWZ8LS1maWVsZHxcbiIKKyIgLXh8LS1leHRyYWN0fC1YfC0tdmV4dHJhY3R8LS1mc3lzLXRhcmZpbGUgIG9uIGFyY2hpdmVzICh0eXBlICVzIC0taGVscCkuXG4iCisiXG4iCittc2dzdHIgIiIKKyJVc2EgZHBrZyAtYnwtLWJ1aWxkfC1jfC0tY29udGVudHN8LWV8LS1jb250cm9sfC1JfC0taW5mb3wtZnwtLWZpZWxkfFxuIgorIiAteHwtLWV4dHJhY3R8LVh8LS12ZXh0cmFjdHwtLWZzeXMtdGFyZmlsZSAgc29icmUgZmljaGVyb3NcbiIKKyIgKGVzY3JpYmkgJXMgLS1oZWxwLilcbiIKKyJcbiIKKworIzogc3JjL21haW4uYzoxMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkZvciBpbnRlcm5hbCB1c2U6IGRwa2cgLS1hc3NlcnQtc3VwcG9ydC1wcmVkZXBlbmRzIHwgLS1wcmVkZXAtcGFja2FnZSB8XG4iCisiICAtLWFzc2VydC13b3JraW5nLWVwb2NoIHwgLS1hc3NlcnQtbG9uZy1maWxlbmFtZXMgfCAtLWFzc2VydC1tdWx0aS1jb25yZXAuXG4iCisiXG4iCittc2dzdHIgIiIKKyJQYSB1c3UgaW50ZXJudTogZHBrZyAtLWFzc2VydC1zdXBwb3J0LXByZWRlcGVuZHMgfCAtLXByZWRlcC1wYWNrYWdlIHxcbiIKKyIgIC0tYXNzZXJ0LXdvcmtpbmctZXBvY2ggfCAtLWFzc2VydC1sb25nLWZpbGVuYW1lcyB8IC0tYXNzZXJ0LW11bHRpLWNvbnJlcFxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjEyOAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIk9wdGlvbnM6XG4iCisjfCAiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyN8ICIgIC0tcm9vdD08ZGlyZWN0b3J5PiAgICAgICAgIEluc3RhbGwgb24gYSBkaWZmZXJlbnQgcm9vdCBkaXJlY3RvcnkuXG4iCisjfCAiICAtLWluc3RkaXI9PGRpcmVjdG9yeT4gICAgICBDaGFuZ2UgaW5zdGFsbGF0aW9uIGRpciB3aXRob3V0IGNoYW5naW5nICIKKyN8ICJhZG1pbiBkaXIuXG4iCisjfCAiICAtT3wtLXNlbGVjdGVkLW9ubHkgICAgICAgICBTa2lwIHBhY2thZ2VzIG5vdCBzZWxlY3RlZCBmb3IgaW5zdGFsbC8iCisjfCAidXBncmFkZS5cbiIKKyN8ICIgIC1FfC0tc2tpcC1zYW1lLXZlcnNpb24gICAgIFNraXAgcGFja2FnZXMgd2hvc2Ugc2FtZSB2ZXJzaW9uIGlzICIKKyN8ICJpbnN0YWxsZWQuXG4iCisjfCAiICAtR3wtLXJlZnVzZS1kb3duZ3JhZGUgICAgICBTa2lwIHBhY2thZ2VzIHdpdGggZWFybGllciB2ZXJzaW9uIHRoYW4gIgorI3wgImluc3RhbGxlZC5cbiIKKyN8ICIgIC1CfC0tYXV0by1kZWNvbmZpZ3VyZSAgICAgIEluc3RhbGwgZXZlbiBpZiBpdCB3b3VsZCBicmVhayBzb21lIG90aGVyICIKKyN8ICJwYWNrYWdlLlxuIgorI3wgIiAgLS1bbm8tXXRyaWdnZXJzICAgICAgICAgICAgU2tpcCBvciBmb3JjZSBjb25zZXF1ZW50aWFsIHRyaWdnZXIgIgorI3wgInByb2Nlc3NpbmcuXG4iCisjfCAiICAtLW5vLWRlYnNpZyAgICAgICAgICAgICAgICBEbyBub3QgdHJ5IHRvIHZlcmlmeSBwYWNrYWdlIHNpZ25hdHVyZXMuXG4iCisjfCAiICAtLW5vLWFjdHwtLWRyeS1ydW58LS1zaW11bGF0ZVxuIgorI3wgIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSnVzdCBzYXkgd2hhdCB3ZSB3b3VsZCBkbyAtIGRvbid0IGRvIGl0LlxuIgorI3wgIiAgLUR8LS1kZWJ1Zz08b2N0YWw+ICAgICAgICAgRW5hYmxlIGRlYnVnZ2luZyAoc2VlIC1EaGVscCBvciAtLSIKKyN8ICJkZWJ1Zz1oZWxwKS5cbiIKKyN8ICIgIC0tc3RhdHVzLWZkIDxuPiAgICAgICAgICAgIFNlbmQgc3RhdHVzIGNoYW5nZSB1cGRhdGVzIHRvIGZpbGUgIgorI3wgImRlc2NyaXB0b3IgPG4+LlxuIgorI3wgIiAgLS1sb2c9PGZpbGVuYW1lPiAgICAgICAgICAgTG9nIHN0YXR1cyBjaGFuZ2VzIGFuZCBhY3Rpb25zIHRvICIKKyN8ICI8ZmlsZW5hbWU+LlxuIgorI3wgIiAgLS1pZ25vcmUtZGVwZW5kcz08cGFja2FnZT4sLi4uXG4iCisjfCAiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZ25vcmUgZGVwZW5kZW5jaWVzIGludm9sdmluZyA8cGFja2FnZT4uXG4iCisjfCAiICAtLWZvcmNlLS4uLiAgICAgICAgICAgICAgICBPdmVycmlkZSBwcm9ibGVtcyAoc2VlIC0tZm9yY2UtaGVscCkuXG4iCisjfCAiICAtLW5vLWZvcmNlLS4uLnwtLXJlZnVzZS0uLi5cbiIKKyN8ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3Agd2hlbiBwcm9ibGVtcyBlbmNvdW50ZXJlZC5cbiIKKyN8ICIgIC0tYWJvcnQtYWZ0ZXIgPG4+ICAgICAgICAgIEFib3J0IGFmdGVyIGVuY291bnRlcmluZyA8bj4gZXJyb3JzLlxuIgorI3wgIlxuIgorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hZG1pbmRpcj08ZGlyZWN0b3J5PiAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMuXG4iCisiICAtLXJvb3Q9PGRpcmVjdG9yeT4gICAgICAgICBJbnN0YWxsIG9uIGEgZGlmZmVyZW50IHJvb3QgZGlyZWN0b3J5LlxuIgorIiAgLS1pbnN0ZGlyPTxkaXJlY3Rvcnk+ICAgICAgQ2hhbmdlIGluc3RhbGxhdGlvbiBkaXIgd2l0aG91dCBjaGFuZ2luZyBhZG1pbiAiCisiZGlyLlxuIgorIiAgLS1wYXRoLWV4Y2x1ZGU9PHBhdHRlcm4+ICAgRG8gbm90IGluc3RhbGwgcGF0aHMgd2hpY2ggbWF0Y2ggYSBzaGVsbCAiCisicGF0dGVybi5cbiIKKyIgIC0tcGF0aC1pbmNsdWRlPTxwYXR0ZXJuPiAgIFJlLWluY2x1ZGUgYSBwYXR0ZXJuIGFmdGVyIGEgcHJldmlvdXMgIgorImV4Y2x1c2lvbi5cbiIKKyIgIC1PfC0tc2VsZWN0ZWQtb25seSAgICAgICAgIFNraXAgcGFja2FnZXMgbm90IHNlbGVjdGVkIGZvciBpbnN0YWxsLyIKKyJ1cGdyYWRlLlxuIgorIiAgLUV8LS1za2lwLXNhbWUtdmVyc2lvbiAgICAgU2tpcCBwYWNrYWdlcyB3aG9zZSBzYW1lIHZlcnNpb24gaXMgaW5zdGFsbGVkLlxuIgorIiAgLUd8LS1yZWZ1c2UtZG93bmdyYWRlICAgICAgU2tpcCBwYWNrYWdlcyB3aXRoIGVhcmxpZXIgdmVyc2lvbiB0aGFuICIKKyJpbnN0YWxsZWQuXG4iCisiICAtQnwtLWF1dG8tZGVjb25maWd1cmUgICAgICBJbnN0YWxsIGV2ZW4gaWYgaXQgd291bGQgYnJlYWsgc29tZSBvdGhlciAiCisicGFja2FnZS5cbiIKKyIgIC0tW25vLV10cmlnZ2VycyAgICAgICAgICAgIFNraXAgb3IgZm9yY2UgY29uc2VxdWVudGlhbCB0cmlnZ2VyICIKKyJwcm9jZXNzaW5nLlxuIgorIiAgLS1uby1kZWJzaWcgICAgICAgICAgICAgICAgRG8gbm90IHRyeSB0byB2ZXJpZnkgcGFja2FnZSBzaWduYXR1cmVzLlxuIgorIiAgLS1uby1hY3R8LS1kcnktcnVufC0tc2ltdWxhdGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEp1c3Qgc2F5IHdoYXQgd2Ugd291bGQgZG8gLSBkb24ndCBkbyBpdC5cbiIKKyIgIC1EfC0tZGVidWc9PG9jdGFsPiAgICAgICAgIEVuYWJsZSBkZWJ1Z2dpbmcgKHNlZSAtRGhlbHAgb3IgLS1kZWJ1Zz1oZWxwKS5cbiIKKyIgIC0tc3RhdHVzLWZkIDxuPiAgICAgICAgICAgIFNlbmQgc3RhdHVzIGNoYW5nZSB1cGRhdGVzIHRvIGZpbGUgZGVzY3JpcHRvciAiCisiPG4+LlxuIgorIiAgLS1sb2c9PGZpbGVuYW1lPiAgICAgICAgICAgTG9nIHN0YXR1cyBjaGFuZ2VzIGFuZCBhY3Rpb25zIHRvIDxmaWxlbmFtZT4uXG4iCisiICAtLWlnbm9yZS1kZXBlbmRzPTxwYWNrYWdlPiwuLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIElnbm9yZSBkZXBlbmRlbmNpZXMgaW52b2x2aW5nIDxwYWNrYWdlPi5cbiIKKyIgIC0tZm9yY2UtLi4uICAgICAgICAgICAgICAgIE92ZXJyaWRlIHByb2JsZW1zIChzZWUgLS1mb3JjZS1oZWxwKS5cbiIKKyIgIC0tbm8tZm9yY2UtLi4ufC0tcmVmdXNlLS4uLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcCB3aGVuIHByb2JsZW1zIGVuY291bnRlcmVkLlxuIgorIiAgLS1hYm9ydC1hZnRlciA8bj4gICAgICAgICAgQWJvcnQgYWZ0ZXIgZW5jb3VudGVyaW5nIDxuPiBlcnJvcnMuXG4iCisiXG4iCittc2dzdHIgIiIKKyJPcGNpb25lczpcbiIKKyItLWFkbWluZGlyPTxkaXJlY3Rvcml1PiBVc2EgPGRpcmVjdG9yaXU+IGVuIHZleiBkZSAlcy5cbiIKKyItLXJvb3Q9PGRpcmVjdG9yaXU+IEluc3RhbGEgbnVuIHNpc3RlbWEgYWx0ZXJuYXRpdnUgY29uIGRpcmVjdG9yaXVcbiIKKyJyYWlnYcOxdSBuJ290cnUgc2l0aXUuXG4iCisiLS1pbnN0ZGlyPTxkaXJlY3Rvcml1PiBDYW11ZGEnbCByYWlnYcOxdSBkZSBsYSBpbnN0YWxhY2nDs24gZW5zaW4gY2FtdWRhciBlbFxuIgorImRpcmVjdG9yaXUgZCdhbG1pbmlzdHJhY2nDs24uXG4iCisiLU98LS1zZWxlY3RlZC1vbmx5IE9taXRlIGxvcyBwYXF1ZXRlcyBxdWUgbnVuIHMnZXNjb3llcm9uIHBhXG4iCisiaW5zdGFsYWNpw7NuIG8gYW5vdmFtaWVudHUuXG4iCisiLUV8LS1za2lwLXNhbWUtdmVyc2lvbiBPbWl0ZSBsb3MgcGFxdWV0ZXMgcXVlIHRpZW5lbiBsYSBtZXNtYSB2ZXJzacOzblxuIgorInF1ZSBsb3MgaW5zdGFsYW9zLlxuIgorIi1HfC0tcmVmdXNlLWRvd25ncmFkZSBPbWl0ZSBsb3MgcGFxdWV0ZXMgY29uIHZlcnNpw7NuIGFudGVyaW9yIHF1ZSBsYSBkZVxuIgorImxvcyBpbnN0YWxhb3MuXG4iCisiLUJ8LS1hdXRvLWRlY29uZmlndXJlIEluc3RhbGEgYW5xdWUgc2UgcHVlZGEgZnJhbmNlciBvdHJ1XG4iCisicGFxdWV0ZSxcbiIKKyItLVtuby1ddHJpZ2dlcnMgT21pdGUgbyBmdWVyemEgbGEgZXhlY3VjacOzbiBkZSBkaXNwYXJhZG9yZXMgdmVuY2V5YW9zLlxuIgorIi0tbm8tZGVic2lnIE51biB2ZXJpZmljYSBsZXMgcm9ibGVzIGRlIGxvcyBwYXF1ZXRlcy5cbiIKKyItLW5vLWFjdHwtLWRyeS1ydW58LS1zaW11bGF0ZVxuIgorIkluZGljYSBzb2xhbWVudGUgbG8gcXVlIGZhZHLDrWEsIHBlcm8gbnVuIGZhaSBuYWRhLlxuIgorIi1EfC0tZGVidWc9PG9jdGFsPiBIYWJpbGl0YSdsIGRlcHVyw6F1LCB2ZXIgLURoZWxwIMOzIC0tZGVidWc9aGVscC5cbiIKKyItLXN0YXR1cy1mZCA8bj4gVW52w61hIGFub3ZhY2lvbmVzIGRlIGNhbWJlb3MgZCdlc3TDoXUgIGFsXG4iCisiZGVzY3JpcHRvciBkZSBmaWNoZXJ1IDxuPi5cbiIKKyItLWxvZz08ZmljaGVydT4gUmV4aXN0cmEgbG9zIGNhbWJlb3MgZCdlc3TDoXUgZW4gPGZpY2hlcnU+Li5cbiIKKyItLWlnbm9yZS1kZXBlbmRzPTxwYXF1ZXRlPiwuLi4gXG4iCisiTnVuIHRpZW4gZW4gY3VlbnRhIGxlcyBkZXBlbmRlbmNpZXNcbiIKKyJxdSdpbXBsaXF1ZW4gYSA8cGFxdWV0ZT4uXG4iCisiLS1mb3JjZS0uLi4gRGVzY2FydGEgcHJvYmxlbWVzLCB2ZXIgLS1mb3JjZS1oZWxwLlxuIgorIi0tbm8tZm9yY2UtLi4ufC0tcmVmdXNlLS4uLlxuIgorIlDDoXJhc2UgY3VhbmRvIGF0b3BhIHByb2JsZW1lcy5cbiIKKyItLWFib3J0LWFmdGVyIDxuPiBFbmNhYm9zYSBkZW1wdcOpcyBkZSA8bj4gZmFsbG9zLlxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjE1NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tcGFyaXNvbiBvcGVyYXRvcnMgZm9yIC0tY29tcGFyZS12ZXJzaW9ucyBhcmU6XG4iCisiICBsdCBsZSBlcSBuZSBnZSBndCAgICAgICAodHJlYXQgZW1wdHkgdmVyc2lvbiBhcyBlYXJsaWVyIHRoYW4gYW55ICIKKyJ2ZXJzaW9uKTtcbiIKKyIgIGx0LW5sIGxlLW5sIGdlLW5sIGd0LW5sICh0cmVhdCBlbXB0eSB2ZXJzaW9uIGFzIGxhdGVyIHRoYW4gYW55IHZlcnNpb24pO1xuIgorIiAgPCA8PCA8PSA9ID49ID4+ID4gICAgICAgKG9ubHkgZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBjb250cm9sIGZpbGUgIgorInN5bnRheCkuXG4iCisiXG4iCittc2dzdHIgIiIKKyJMb3Mgb3BlcmFkb3JlcyBkZSBjb21wYXJhY2nDs24gcGEgLS1jb21wYXJlLXZlcnNpb25zIHNvbjpcbiIKKyJsdCBsZSBlcSBuZSBnZSBndCAocmVtYW5hIHVuYSB2ZXJzacOzbiBpbmV4aXN0ZW50ZSBjb21vIGFudGVyaW9yIGFcbiIKKyJjdWFscXVpZXIgdmVyc2nDs247XG4iCisibHQtbmwgbGUtbmwgZ2UtbmwgZ3QtbmwgKHJlbWFuYSB1bmEgdmVyc2nDs24gaW5leGlzdGVudGUgY29tbyBwb3N0ZXJpb3IgYVxuIgorImN1YWxxdWllciB2ZXJzacOzbjtcbiIKKyI8IDw8IDw9ID0gPj0gPj4gPiAoc8OzbG8gcG9yIGNvbXBhdGliaWxpZMOhIGNvbGEgc2ludGF4aXMgZGUgbG9zXG4iCisiZmljaGVyb3MgZGUgY29udHJvbCkuXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTYxCisjLCBjLWZvcm1hdAorbXNnaWQgIlVzZSBgZHNlbGVjdCcgb3IgYGFwdGl0dWRlJyBmb3IgdXNlci1mcmllbmRseSBwYWNrYWdlIG1hbmFnZW1lbnQuXG4iCittc2dzdHIgIlVzZSBgZHNlbGVjdCcgbyAnYXB0aXR1ZGUnIHBhIHVuYSB4ZXN0acOzbiBkZSBwYXF1ZXRlcyBtw6FzIGFtaWdhYmxlLlxuIgorCisjOiBzcmMvbWFpbi5jOjE3MAorIywgZnV6enkKK21zZ2lkICIiCisiVHlwZSBkcGtnIC0taGVscCBmb3IgaGVscCBhYm91dCBpbnN0YWxsaW5nIGFuZCBkZWluc3RhbGxpbmcgcGFja2FnZXMgWypdO1xuIgorIlVzZSBgZHNlbGVjdCcgb3IgYGFwdGl0dWRlJyBmb3IgdXNlci1mcmllbmRseSBwYWNrYWdlIG1hbmFnZW1lbnQ7XG4iCisiVHlwZSBkcGtnIC1EaGVscCBmb3IgYSBsaXN0IG9mIGRwa2cgZGVidWcgZmxhZyB2YWx1ZXM7XG4iCisiVHlwZSBkcGtnIC0tZm9yY2UtaGVscCBmb3IgYSBsaXN0IG9mIGZvcmNpbmcgb3B0aW9ucztcbiIKKyJUeXBlIGRwa2ctZGViIC0taGVscCBmb3IgaGVscCBhYm91dCBtYW5pcHVsYXRpbmcgKi5kZWIgZmlsZXM7XG4iCisiXG4iCisiT3B0aW9ucyBtYXJrZWQgWypdIHByb2R1Y2UgYSBsb3Qgb2Ygb3V0cHV0IC0gcGlwZSBpdCB0aHJvdWdoIGBsZXNzJyBvciAiCisiYG1vcmUnICEiCittc2dzdHIgIiIKKyJFc2NyaWJpIGRwa2cgLS1oZWxwIHAnYWlkYSBzb2JyZSBpbnN0YWxhciB5IGRlc2luc3RhbGFyIHBhcXVldGVzIFsqXTtcbiIKKyJVc2UgYGRzZWxlY3QnIG8gYGFwdGl0dWRlJyBwYSB1bmEgeGVzdGnDs24gbcOhcyBhbWlnYWJsZSBkZSBsb3MgcGFxdWV0ZXM7XG4iCisiRXNjcmliaSBkcGtnIC1EaGVscCBwYSB1bmEgbGxpc3RhIGRlIGxvcyB2YWxvcmVzIGRlIGRlcHVyYWNpw7NuIGRlIGRwa2c7XG4iCisiRXNjcmliaSBkcGtnIC0tZm9yY2UtaGVscCBwYSB1bmEgbGxpc3RhIGQnb3BjaW9uZXMgcGEgZm9yemFyIGNvc2VzO1xuIgorIkVzY3JpYmkgZHBrZy1kZWIgLS1oZWxwIHBhIG9idGVuZXIgYWlkYSBzb2JyZSByZW1hbmFyIGZpY2hlcm9zIC5kZWI7XG4iCisiRXNjcmliaSBkcGtnIC0tbGljZW5zZSBwYSB2ZXIgbGEgbGxpY2VuY2lhIChHUEwgZGUgR05VKSwgZWwgY29weXJpZ2h0IHkgXG4iCisibCdhdXNlbmNpYSBkZSBnYXJhbnTDrWEgWypdLlxuIgorIlxuIgorIkxlcyBvcGNpb25lcyBtYXJjYWVzIGNvbiBbKl0gcHJvZHVjZW4gdW5hIHNhbGlkYSBleHRlbnNhLFxuIgorIsKhcGXDscOpcmFsYSBjb24gYGxlc3MnIG8gY29uIGBtb3JlJyEiCisKKyM6IHNyYy9tYWluLmM6MjE5Cittc2dpZCAiU2V0IGFsbCBmb3JjZSBvcHRpb25zIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjIxCittc2dpZCAiUmVwbGFjZSBhIHBhY2thZ2Ugd2l0aCBhIGxvd2VyIHZlcnNpb24iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjMKK21zZ2lkICJDb25maWd1cmUgYW55IHBhY2thZ2Ugd2hpY2ggbWF5IGhlbHAgdGhpcyBvbmUiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjUKK21zZ2lkICJQcm9jZXNzIGluY2lkZW50YWwgcGFja2FnZXMgZXZlbiB3aGVuIG9uIGhvbGQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjcKK21zZ2lkICJUcnkgdG8gKGRlKWluc3RhbGwgdGhpbmdzIGV2ZW4gd2hlbiBub3Qgcm9vdCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIyOQorbXNnaWQgIlBBVEggaXMgbWlzc2luZyBpbXBvcnRhbnQgcHJvZ3JhbXMsIHByb2JsZW1zIGxpa2VseSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzMQorbXNnaWQgIkluc3RhbGwgYSBwYWNrYWdlIGV2ZW4gaWYgaXQgZmFpbHMgYXV0aGVudGljaXR5IGNoZWNrIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjMzCittc2dpZCAiUHJvY2VzcyBldmVuIHBhY2thZ2VzIHdpdGggd3JvbmcgdmVyc2lvbnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzUKK21zZ2lkICJPdmVyd3JpdGUgYSBmaWxlIGZyb20gb25lIHBhY2thZ2Ugd2l0aCBhbm90aGVyIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjM3Cittc2dpZCAiT3ZlcndyaXRlIGEgZGl2ZXJ0ZWQgZmlsZSB3aXRoIGFuIHVuZGl2ZXJ0ZWQgdmVyc2lvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzOQorbXNnaWQgIk92ZXJ3cml0ZSBvbmUgcGFja2FnZSdzIGRpcmVjdG9yeSB3aXRoIGFub3RoZXIncyBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjQxCittc2dpZCAiRG8gbm90IHBlcmZvcm0gc2FmZSBJL08gb3BlcmF0aW9ucyB3aGVuIHVucGFja2luZyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI0MworbXNnaWQgIkFsd2F5cyB1c2UgdGhlIG5ldyBjb25maWcgZmlsZXMsIGRvbid0IHByb21wdCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI0NQorbXNnaWQgIkFsd2F5cyB1c2UgdGhlIG9sZCBjb25maWcgZmlsZXMsIGRvbid0IHByb21wdCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI0OAorbXNnaWQgIiIKKyJVc2UgdGhlIGRlZmF1bHQgb3B0aW9uIGZvciBuZXcgY29uZmlnIGZpbGVzIGlmIG9uZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICBpcyBhdmFpbGFibGUsIGRvbid0IHByb21wdC4gSWYgbm8gZGVmYXVsdCBjYW4gYmUgIgorImZvdW5kLFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICB5b3Ugd2lsbCBiZSBwcm9tcHRlZCB1bmxlc3Mgb25lIG9mIHRoZSBjb25mb2xkIG9yXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmZuZXcgb3B0aW9ucyBpcyBhbHNvIGdpdmVuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjUzCittc2dpZCAiQWx3YXlzIGluc3RhbGwgbWlzc2luZyBjb25maWcgZmlsZXMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNTUKK21zZ2lkICJPZmZlciB0byByZXBsYWNlIGNvbmZpZyBmaWxlcyB3aXRoIG5vIG5ldyB2ZXJzaW9ucyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI1NworbXNnaWQgIlByb2Nlc3MgZXZlbiBwYWNrYWdlcyB3aXRoIHdyb25nIG9yIG5vIGFyY2hpdGVjdHVyZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI1OQorbXNnaWQgIkluc3RhbGwgZXZlbiBpZiBpdCB3b3VsZCBicmVhayBhbm90aGVyIHBhY2thZ2UiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNjEKK21zZ2lkICJBbGxvdyBpbnN0YWxsYXRpb24gb2YgY29uZmxpY3RpbmcgcGFja2FnZXMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNjMKKyMsIGZ1enp5CisjfCBtc2dpZCAiZGVwZW5kZW5jeSBwcm9ibGVtcyAtIG5vdCByZW1vdmluZyIKK21zZ2lkICJUdXJuIGFsbCBkZXBlbmRlbmN5IHByb2JsZW1zIGludG8gd2FybmluZ3MiCittc2dzdHIgInByb2JsZW1lcyBkZSBkZXBlbmRlbmNpZXMgLSBudW4gc2UgZGVzaW5zdGFsYSIKKworIzogc3JjL21haW4uYzoyNjUKKyMsIGZ1enp5CisjfCBtc2dpZCAiZGVwZW5kZW5jeSBwcm9ibGVtcyAtIG5vdCByZW1vdmluZyIKK21zZ2lkICJUdXJuIGRlcGVuZGVuY3kgdmVyc2lvbiBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzIgorbXNnc3RyICJwcm9ibGVtZXMgZGUgZGVwZW5kZW5jaWVzIC0gbnVuIHNlIGRlc2luc3RhbGEiCisKKyM6IHNyYy9tYWluLmM6MjY3Cittc2dpZCAiUmVtb3ZlIHBhY2thZ2VzIHdoaWNoIHJlcXVpcmUgaW5zdGFsbGF0aW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjY5Cittc2dpZCAiUmVtb3ZlIGFuIGVzc2VudGlhbCBwYWNrYWdlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjgxCittc2dpZCAiR2VuZXJhbGx5IGhlbHBmdWwgcHJvZ3Jlc3MgaW5mb3JtYXRpb24iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODIKKyMsIGZ1enp5CisjfCBtc2dpZCAidW5hYmxlIHRvIHNldGVudiBmb3IgbWFpbnRhaW5lciBzY3JpcHQiCittc2dpZCAiSW52b2NhdGlvbiBhbmQgc3RhdHVzIG9mIG1haW50YWluZXIgc2NyaXB0cyIKK21zZ3N0ciAibnVuIHB1ZSBlZmV1dHVhc2Ugc2V0ZW52IHBhbCBwcm9ncmFtYSBkZSBjYWx0ZW5pbWllbnR1IgorCisjOiBzcmMvbWFpbi5jOjI4MworbXNnaWQgIk91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4NAorbXNnaWQgIkxvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg1CisjLCBmdXp6eQorI3wgbXNnaWQgInJlYWQgZXJyb3IgaW4gY29uZmlndXJhdGlvbiBmaWxlIGAlLjI1NXMnIgorbXNnaWQgIk91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGUiCittc2dzdHIgImZhbGx1IGRlIGxsZWN0dXJhIG5lbCBmaWNoZXJ1IGRlIGNvbmZpZ3VyYWNpw7NuIGAlLjI1MHMnIgorCisjOiBzcmMvbWFpbi5jOjI4NgorbXNnaWQgIkxvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4NworbXNnaWQgIkRlcGVuZGVuY2llcyBhbmQgY29uZmxpY3RzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg4Cittc2dpZCAiTG90cyBvZiBkZXBlbmRlbmNpZXMvY29uZmxpY3RzIG91dHB1dCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4OQorbXNnaWQgIlRyaWdnZXIgYWN0aXZhdGlvbiBhbmQgcHJvY2Vzc2luZyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MAorbXNnaWQgIkxvdHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2VycyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MQorbXNnaWQgIlNpbGx5IGFtb3VudHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2VycyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MgorbXNnaWQgIkxvdHMgb2YgZHJpdmVsIGFib3V0IGVnIHRoZSBkcGtnL2luZm8gZGlyZWN0b3J5IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjkzCittc2dpZCAiSW5zYW5lIGFtb3VudHMgb2YgZHJpdmVsIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MzA0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlcyBkZWJ1Z2dpbmcgb3B0aW9uLCAtLWRlYnVnPTxvY3RhbD4gb3IgLUQ8b2N0YWw+OlxuIgorIlxuIgorIiBOdW1iZXIgIFJlZi4gaW4gc291cmNlICAgRGVzY3JpcHRpb25cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjMxMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiRGVidWdnaW5nIG9wdGlvbnMgY2FuIGJlIG1peGVkIHVzaW5nIGJpdHdpc2Utb3IuXG4iCisiTm90ZSB0aGF0IHRoZSBtZWFuaW5ncyBhbmQgdmFsdWVzIGFyZSBzdWJqZWN0IHRvIGNoYW5nZS5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjMxOQorbXNnaWQgIi0tZGVidWcgcmVxdWlyZXMgYW4gb2N0YWwgYXJndW1lbnQiCittc2dzdHIgIi0tZGVidWcgbmVjZXNpdGEgdW4gbsO6bWJlcnUgb2N0YWwgY29tbyBwYXLDoW1ldHJ1IgorCisjOiBzcmMvbWFpbi5jOjM0OAorIywgYy1mb3JtYXQKK21zZ2lkICJudWxsIHBhY2thZ2UgbmFtZSBpbiAtLWlnbm9yZS1kZXBlbmRzIGNvbW1hLXNlcGFyYXRlZCBsaXN0IGAlLjI1MHMnIgorbXNnc3RyICIiCisibm9tZSBkZSBwYXF1ZXRlIGVybXUgbmEgbGxpc3RhIGRlIC0taWdub3JlLWRlcGVuZHMgc2VwYXJ0YW9zIHBvciBjb21hIGAiCisiJS4yNTBzJyIKKworIzogc3JjL21haW4uYzozNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS1pZ25vcmUtZGVwZW5kcyByZXF1aXJlcyBhIGxlZ2FsIHBhY2thZ2UgbmFtZS4gYCUuMjUwcycgaXMgbm90OyAlcyIKK21zZ3N0ciAiIgorIi0taWdub3JlLWRlcGVuZHMgbmVjZXNpdGEgdW4gbm9tZSBkZSBwYXF1ZXRlIGxsZWdhbC5cbiIKKyJgJS4yNTBzJyBubyBsbyBlczsgJXMiCisKKyM6IHNyYy9tYWluLmM6MzcxIHNyYy9tYWluLmM6MzgxIHNyYy9tYWluLmM6NjQ5IGRwa2ctc3BsaXQvbWFpbi5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGludGVnZXIgZm9yIC0tJXM6IGAlLjI1MHMnIgorbXNnc3RyICJlbnRlcnUgaW52w6FsaWR1IHBhIC0tJXM6IGAlLjI1MHMnIgorCisjOiBzcmMvbWFpbi5jOjQzOAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBleGVjdXRpbmcgaG9vayAnJXMnLCBleGl0IGNvZGUgJWQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzo0NjUKKyMsIGZ1enp5CisjfCBtc2dpZCAic3RhdHVzIgorbXNnaWQgInN0YXR1cyBsb2dnZXIiCittc2dzdHIgImVzdMOhdSIKKworIzogc3JjL21haW4uYzo0ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzIGZvcmNpbmcgb3B0aW9ucyAtIGNvbnRyb2wgYmVoYXZpb3VyIHdoZW4gcHJvYmxlbXMgZm91bmQ6XG4iCisiICB3YXJuIGJ1dCBjb250aW51ZTogIC0tZm9yY2UtPHRoaW5nPiw8dGhpbmc+LC4uLlxuIgorIiAgc3RvcCB3aXRoIGVycm9yOiAgICAtLXJlZnVzZS08dGhpbmc+LDx0aGluZz4sLi4uIHwgLS1uby1mb3JjZS08dGhpbmc+LC4uLlxuIgorIiBGb3JjaW5nIHRoaW5nczpcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjQ5MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiV0FSTklORyAtIHVzZSBvZiBvcHRpb25zIG1hcmtlZCBbIV0gY2FuIHNlcmlvdXNseSBkYW1hZ2UgeW91ciBpbnN0YWxsYXRpb24uXG4iCisiRm9yY2luZyBvcHRpb25zIG1hcmtlZCBbKl0gYXJlIGVuYWJsZWQgYnkgZGVmYXVsdC5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjUwNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGZvcmNlL3JlZnVzZSBvcHRpb24gYCUuKnMnIgorbXNnc3RyICJvcGNpw7NuIMKrZm9yY2UvcmVmdXNlwrsgZGVzY29ub2PDrWEgYCUuKnMnIgorCisjOiBzcmMvbWFpbi5jOjUxMworIywgYy1mb3JtYXQKK21zZ2lkICJvYnNvbGV0ZSBmb3JjZS9yZWZ1c2Ugb3B0aW9uICclcydcbiIKK21zZ3N0ciAib3BjacOzbiBmb3JjZS9yZWZ1c2Ugb2Jzb2xldGEgJyVzJ1xuIgorCisjOiBzcmMvbWFpbi5jOjY0MworbXNnaWQgIi0tY29tbWFuZC1mZCB0YWtlcyBvbmUgYXJndW1lbnQsIG5vdCB6ZXJvIgorbXNnc3RyICItLWNvbW1hbmQtZmQgdG9tYSB1biBhcmd1bWVudHUsIHF1ZSBudW4gc2V5YSBjZXJvIgorCisjOiBzcmMvbWFpbi5jOjY0NQorbXNnaWQgIi0tY29tbWFuZC1mZCBvbmx5IHRha2VzIG9uZSBhcmd1bWVudCIKK21zZ3N0ciAiLS1jb21tYW5kLWZkIHPDs2xvIHRvbWEgdW4gYXJndW1lbnR1IgorCisjOiBzcmMvbWFpbi5jOjY1MQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBvcGVuIGAlaScgZm9yIHN0cmVhbSIKK21zZ3N0ciAibnVuIHNlIHB1ZG8gYWJyaXIgYCVpJyBwYSB1biBmbHV4dSIKKworIzogc3JjL21haW4uYzo2NzYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgYmVmb3JlIGVuZCBvZiBsaW5lICVkIgorbXNnc3RyICJlb2YgaW5lc3BlcsOhdSBlbmFudGVzIGRlbCBmaW4gZGUgbGEgbGxpbmlhICVkIgorCisjOiBzcmMvbWFpbi5jOjcxOSBzcmMvbWFpbi5jOjc0MSBzcmMvcXVlcnljbWQuYzo2OTIgc3JjL3N0YXRjbWQuYzozNzkKKyM6IGRwa2ctZGViL21haW4uYzoyMDEgZHBrZy1zcGxpdC9tYWluLmM6MTYzCittc2dpZCAibmVlZCBhbiBhY3Rpb24gb3B0aW9uIgorbXNnc3RyICJuZWNlc8OtdGFzZSB1bmEgb3BjacOzbiBkJ2FpY2nDs24iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjExMworbXNnaWQgIiIKKyJ5b3UgbXVzdCBzcGVjaWZ5IHBhY2thZ2VzIGJ5IHRoZWlyIG93biBuYW1lcywgbm90IGJ5IHF1b3RpbmcgdGhlIG5hbWVzIG9mICIKKyJ0aGUgZmlsZXMgdGhleSBjb21lIGluIgorbXNnc3RyICIiCisiVGllbmVzIHF1J2VzcGVjaWZpY2FyIGxvcyBwYXF1ZXRlcyBwb2xvcyBzb3Mgbm9tZXMgcHJvcGlvcywgZW5zaW4gY2l0YXIgbG9zICIKKyJub21lc1xuIgorImRlIGxvcyBmaWNoZXJvcyBub3MgcXVlIHZpZW5lbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MTMzCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgLS1wZW5kaW5nIGRvZXMgbm90IHRha2UgYW55IG5vbi1vcHRpb24gYXJndW1lbnRzIgorbXNnc3RyICItLSVzIC0tcGVuZGluZyBudW4gZ2FycmEgZGVuZ8O6biBhcmd1bWVudHUgcXVlIG51biBzZXlhIHVuYSBvcGNpw7NuIgorCisjOiBzcmMvcGFja2FnZXMuYzoxMzggc3JjL3F1ZXJ5Y21kLmM6Mzc1IHNyYy9xdWVyeWNtZC5jOjU2NQorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGF0IGxlYXN0IG9uZSBwYWNrYWdlIG5hbWUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMgbmVjZXNpdGEgcG9sbyBtZW5vcyB1biBub21lIGRlIHBhcXVldGUgY29tbyBhcmd1bWVudHUiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjE3OQorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlICVzIGxpc3RlZCBtb3JlIHRoYW4gb25jZSwgb25seSBwcm9jZXNzaW5nIG9uY2UuXG4iCittc2dzdHIgIlBhcXVldGUgJXMgbGxpc3TDoXUgbcOhcyBkJ3VuYSB2ZWdhZGEsIHPDs2xvIHNlIHByb2Nlc2EgdW5hLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzoxODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk1vcmUgdGhhbiBvbmUgY29weSBvZiBwYWNrYWdlICVzIGhhcyBiZWVuIHVucGFja2VkXG4iCisiIGluIHRoaXMgcnVuICEgIE9ubHkgY29uZmlndXJpbmcgaXQgb25jZS5cbiIKK21zZ3N0ciAiIgorIsKhRGVzZW1wYXF1ZXTDs3NlIG3DoXMgZCd1bmEgY29waWEgZGVsIHBhcXVldGUgJXMhXG4iCisiVmEgY29uZmlndXLDoXNlIHNvbGFtZW50ZSB1bmEgdmVnYWRhXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjIzMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisicGFja2FnZSAlLjI1MHMgaXMgbm90IHJlYWR5IGZvciB0cmlnZ2VyIHByb2Nlc3NpbmdcbiIKKyIgKGN1cnJlbnQgc3RhdHVzIGAlLjI1MHMnIHdpdGggbm8gcGVuZGluZyB0cmlnZ2VycykiCittc2dzdHIgIiIKKyJlbCBwYXF1ZXRlICUuMjUwcyBudW4gdGEgcHJlcGFyw6F1IHBhIHByb2Nlc2FyIGRpc3BhcmFkb3Jlc1xuIgorIihsJ2VzdMOhdSBhY3R1YWwgeWUgYCUuMjUwcycgZW5zaW4gZGlzcGFyYWRvcnNlIHBlbmRpZW50ZXMpIgorCisjOiBzcmMvcGFja2FnZXMuYzozMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIHdoaWNoIHByb3ZpZGVzICVzIGlzIHRvIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiAgRWwgcGFxdWV0ZSBgJXMnIGFwdXJyZSBgJXMnIHBlcm8gdmEgZGVzaW5zdGFsYXNlLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzozMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIGlzIHRvIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiAgRWwgcGFxdWV0ZSBgJXMnIHZhIGRlc2luc3RhbGFzZS5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MzU0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgVmVyc2lvbiBvZiAlcyBvbiBzeXN0ZW0gaXMgJXMuXG4iCittc2dzdHIgIiAgTGEgdmVyc2nDs24gZGUgYCVzJyBuZWwgc2lzdGVtYSB5ZSAlcy5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6Mzc2CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyB3aGljaCBwcm92aWRlcyAlcyBhd2FpdHMgdHJpZ2dlciBwcm9jZXNzaW5nLlxuIgorbXNnc3RyICIiCisiICBFbCBwYXF1ZXRlIGAlcycgcXUnYXB1cnJlIGAlcycgdGEgZXNwZXJhbmRvIGFsIHByb2Nlc2FtaWVudHUgZGUgbG9zICIKKyJkaXNwYXJhZG9yZXMuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjM4MAorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgYXdhaXRzIHRyaWdnZXIgcHJvY2Vzc2luZy5cbiIKK21zZ3N0ciAiICBFbCBwYXF1ZXRlICVzIHRhIGVzcGVyYW5kbyBwb2wgcHJvY2Vzw6F1IGRlIGRpc3BhcmFkb3Jlcy5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDEwCisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IGFsc28gY29uZmlndXJpbmcgYCVzJyAocmVxdWlyZWQgYnkgYCVzJylcbiIKK21zZ3N0ciAiZHBrZzogdGFtacOpbiBjb25maWd1cmFuZG8gYCVzJyAocmVxdWVyw611IHBvciBgJXMnKVxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIHdoaWNoIHByb3ZpZGVzICVzIGlzIG5vdCBjb25maWd1cmVkIHlldC5cbiIKK21zZ3N0ciAiICBFbCBwYXF1ZXRlIGAlcycgcXUnYXB1cnJlYCVzJyBlbnTDoSBudW4gc2UgY29uZmlndXLDsy5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDIxCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyBpcyBub3QgY29uZmlndXJlZCB5ZXQuXG4iCittc2dzdHIgIiAgRWwgcGFxdWV0ZSBgJXMnIGVudMOhIG51biBzZSBjb25maWd1csOzLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIHdoaWNoIHByb3ZpZGVzICVzIGlzIG5vdCBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgRWwgcGFxdWV0ZSBgJXMnIHF1J2FwdXJyZSAlcyBudW4gcydpbnN0YWzDsy5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDM1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIgIEVsIHBhcXVldGUgwqslc8K7IG51biBzJ2luc3RhbMOzLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICVzICglcykgYnJlYWtzICVzIGFuZCBpcyAlcy5cbiIKK21zZ3N0ciAiICVzICglcykgZnJhbmNlICVzIHkgeWUgJXMuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQ3OAorIywgYy1mb3JtYXQKK21zZ2lkICIgICVzICglcykgcHJvdmlkZXMgJXMuXG4iCittc2dzdHIgIiAgJXMgKCVzKSBhcHVycmUgJXMuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQ4MgorIywgYy1mb3JtYXQKK21zZ2lkICIgIFZlcnNpb24gb2YgJXMgdG8gYmUgY29uZmlndXJlZCBpcyAlcy5cbiIKK21zZ3N0ciAiICBMYSB2ZXJzacOzbiBkZSBgJXMnIHF1ZSBzZSBkZXNjb25maWd1cmFyw6EgeWUgJXMuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjU5NgorbXNnaWQgIiBkZXBlbmRzIG9uICIKK21zZ3N0ciAiIGRlcGVuZGUgZGUgIgorCisjOiBzcmMvcGFja2FnZXMuYzo2MDIKK21zZ2lkICI7IGhvd2V2ZXI6XG4iCittc2dzdHIgIjsgcG9yIGVtYmFyZ3U6XG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiLi4uLyVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgZW5zdXJpbmcgYCUuMjUwcycgZG9lc24ndCBleGlzdCIKK21zZ3N0ciAiZmFsbHUgYWwgYXNlZ3VyYXNlIGRlIHF1ZSBgJS4yNTBzJyBudW4gZXhpc3RlIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjk5Cittc2dpZCAic3BsaXQgcGFja2FnZSByZWFzc2VtYmx5IgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTA4Cittc2dpZCAicmVhc3NlbWJsZWQgcGFja2FnZSBmaWxlIgorbXNnc3RyICJwYXF1ZXRlIHJlZW5zYW1ibMOhdSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiQXV0aGVudGljYXRpbmcgJXMgLi4uXG4iCittc2dzdHIgIkF1dGVudGlmaWNhbmRvICVzIC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEzOQorbXNnaWQgInBhY2thZ2Ugc2lnbmF0dXJlIHZlcmlmaWNhdGlvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE0NgorIywgYy1mb3JtYXQKK21zZ2lkICJWZXJpZmljYXRpb24gb24gcGFja2FnZSAlcyBmYWlsZWQhIgorbXNnc3RyICLCoUZhbGzDsyBsYSB2ZXJpZmljYWNpw7NuIGRlbCBwYXF1ZXRlICVzISIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlZlcmlmaWNhdGlvbiBvbiBwYWNrYWdlICVzIGZhaWxlZCxcbiIKKyJidXQgaW5zdGFsbGluZyBhbnl3YXkgYXMgeW91IHJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiIgorIkZhbGzDsyBsYSB2ZXJpZmljYWNpw7NuIGRlbCBwYXF1ZXRlICVzLFxuIgorInBlcm8gaW5zdGFsYXLDoXNlIGRlIHRvbGVzIGZvcm1lcyB0YWxvIHkgY29tbyBzZSBzb2xpY2l0w7NcbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFzc2VkXG4iCittc2dzdHIgImNvcnJldXRvXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTY1IGRwa2ctZGViL2luZm8uYzo4MQorIywgZnV6enkKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHRlbXBvcmFyeSBkaXJlY3RvcnkiCittc2dzdHIgImZhbGzDsyBhbCBjcmlhciBub21lIGRlIGRpcmV1dG9yaXUgdGVtcG9yYWwiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MjA1CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgJXMgaGFzIHRvbyBtYW55IENvbmZsaWN0cy9SZXBsYWNlcyBwYWlycyIKK21zZ3N0ciAiZWwgcGFxdWV0ZSAlcyB0aWVuIGRlbWFzaWFvcyBwYXJlcyBDb25mbGljdHUvUmVlbXBsYXphIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjI0MworIywgYy1mb3JtYXQKK21zZ2lkICJvbGQgdmVyc2lvbiBvZiBwYWNrYWdlIGhhcyBvdmVybHktbG9uZyBpbmZvIGZpbGUgbmFtZSBzdGFydGluZyBgJS4yNTBzJyIKK21zZ3N0ciAiIgorImxhIHZlcnNpw7NuIGFudGlndWEgZGVsIHBhcXVldGUgdGllbiB1biBub21lIGRlIGZpY2hlcnUgZCdpbmZvcm1hY2nDs25cbiIKKyJsbGFyZ3XDrXNpbXUgcXUnZW50YW1hIHBlciBgJS4yNTBzJyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyODEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBvYnNvbGV0ZSBpbmZvIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm51biBwdWVkZSBkZXNhbmljaWFzZSdsIGZpY2hlcnUgZCdpbmZvcm1hY2nDs24gb2Jzb2xldHUgYCUuMjUwcyciCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6Mjg2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIChzdXBwb3NlZCkgbmV3IGluZm8gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorIm51biBwdWVkZSBpbnN0YWxhc2UnbCAoc3VwdWVzdGFtZW50ZSkgbnVldnUgZmljaGVydSBkJ2luZm9ybWFjacOzbiBgJS4yNTBzJyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyOTYKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiB0ZW1wIGNvbnRyb2wgZGlyZWN0b3J5IgorbXNnc3RyICJudW4gcHVlZGUgYWJyaXNlJ2wgZGlyZXV0b3JpdSBkZSBjb250cm9sIHRlbXBvcmFsIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMwNworIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGNvbnRhaW5zIG92ZXJseS1sb25nIGNvbnRyb2wgaW5mbyBmaWxlIG5hbWUgKHN0YXJ0aW5nIGAlLjUwcycpIgorbXNnc3RyICIiCisiZWwgcGFxdWV0ZSBjb250acOpbiB1biBub21lIGRlIGZpY2hlcnUgZCdpbmZvcm1hY2nDs24gbGxhcmd1w61zaW11XG4iCisiKGVudGFtYSBjb24gYCUuNTBzJykiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzE0CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgY29udHJvbCBpbmZvIGNvbnRhaW5lZCBkaXJlY3RvcnkgYCUuMjUwcyciCittc2dzdHIgImxhIGluZm9ybWFjacOzbiBkZSBjb250cm9sIGRlbCBwYXF1ZXRlIGNvbnRpw6luIGVsIGRpcmV1dG9yaXUgYCUuMjUwcyciCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzE2CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgY29udHJvbCBpbmZvIHJtZGlyIG9mIGAlLjI1MHMnIGRpZG4ndCBzYXkgbm90IGEgZGlyIgorbXNnc3RyICJwYWNrYWdlIGNvbnRyb2wgaW5mbyBybWRpciBvZiBgJS4yNTBzJyBkaWRuJ3Qgc2F5IG5vdCBhIGRpciIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMjYKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlcyBjb250YWluZWQgbGlzdCBhcyBpbmZvIGZpbGUiCittc2dzdHIgImVsIHBhcXVldGUgJXMgY29udGnDqW4gbGlzdCBjb21vIGZpY2hlcnUgZCdpbmZvcm1hY2nDs24iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzMzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyBpbmZvIGZpbGUgYCUuMjUwcycgYXMgYCUuMjUwcyciCittc2dzdHIgIiIKKyJudW4gcHVlZGUgaW5zdGFsYXNlJ2wgbnVldnUgZmljaGVydSBkJ2luZm9ybWFjacOzbiBgJS4yNTBzJyBjb21vIGAlLjI1MHMnIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjM0OSBzcmMvcmVtb3ZlLmM6MTk4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkZWxldGUgY29udHJvbCBpbmZvIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm51biBzZSBwdWVkZSBkZXNhbmljaWFyIGVsIGZpY2hlcnUgZCdpbmZvcm1hY2nDs24gZGUgY29udHJvbCBgJS4yNTBzJyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo0MTEKK21zZ2lkICJjYW5ub3QgYWNjZXNzIGFyY2hpdmUiCittc2dzdHIgIm51biBzZSBwdWVkZSBhY2NlZGVyIGFsIGZpY2hlcnUiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDMzCisjLCBmdXp6eQorI3wgbXNnaWQgImNvbnRyb2wgaW5mb3JtYXRpb24gbGVuZ3RoIgorbXNnaWQgInBhY2thZ2UgY29udHJvbCBpbmZvcm1hdGlvbiBleHRyYWN0aW9uIgorbXNnc3RyICJsbG9ueGl0w7ogZGUgbGEgaW5mb3JtYWNpw7NuIGRlIGNvbnRyb2wiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDYwCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlY29yZGVkIGluZm8gYWJvdXQgJXMgZnJvbSAlcy5cbiIKK21zZ3N0ciAiUmV4aXN0cmFkYSBsYSBpbmZvcm1hY2nDs24gc29icm8gJXMgYSBwYXJ0aXIgZGUgJXMuXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDY4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgYXJjaGl0ZWN0dXJlICglcykgZG9lcyBub3QgbWF0Y2ggc3lzdGVtICglcykiCittc2dzdHIgImwnYXJxdWl0ZWN0dXJhIGRlbCBwYXF1ZXRlICglcykgbnVuIGNvcnJlc3B1ZW5kZSBjb2xhIGRlbCBzaXN0ZW1hICglcykiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTIzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiByZWdhcmRpbmcgJXMgY29udGFpbmluZyAlcywgcHJlLWRlcGVuZGVuY3kgcHJvYmxlbTpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6IHRvY2FudGUgYSAlcyBxdWUgY29udGnDqW4gJXMsIHByb2JsZW1hIGRlIHByZWRlcGVuZGVuY2lhOlxuIgorIiVzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjUyNgorIywgYy1mb3JtYXQKK21zZ2lkICJwcmUtZGVwZW5kZW5jeSBwcm9ibGVtIC0gbm90IGluc3RhbGxpbmcgJS4yNTBzIgorbXNnc3RyICJwcm9ibGVtYSBkZSBwcmVkZXBlbmRlbmNpYSAtIG51biBzJ2luc3RhbGEgJS4yNTBzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjUyNworbXNnaWQgImlnbm9yaW5nIHByZS1kZXBlbmRlbmN5IHByb2JsZW0hIgorbXNnc3RyICJkZXNjYXJ0YW5kbyBwcm9ibGVtYSBkZSBwcmVkZXBlbmRlbmNpYSEiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTQzCisjLCBjLWZvcm1hdAorbXNnaWQgIlByZXBhcmluZyB0byByZXBsYWNlICVzICVzICh1c2luZyAlcykgLi4uXG4iCittc2dzdHIgIlRyZXNuYW5kbyBwYSB0cm9jYXIgJXMgJXMgKHVzYW5kbyAlcykgLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIlVucGFja2luZyAlcyAoZnJvbSAlcykgLi4uXG4iCittc2dzdHIgIkRlc2VtcGFxdWV0YW5kbyAlcyAoZGUgJXMpIC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjU4MAorIywgYy1mb3JtYXQKK21zZ2lkICJuYW1lIG9mIGNvbmZmaWxlIChzdGFydGluZyBgJS4yNTBzJykgaXMgdG9vIGxvbmcgKD4lZCBjaGFyYWN0ZXJzKSIKK21zZ3N0ciAiIgorImVsIG5vbWUgZGVsIGNvbmZmaWxlIChxdSdlbnRhbWEgcG9yIGAlLjI1MHMnKVxuIgorInllIGFib25kdSBsbGFyZ3UgKD4lZCBjYXJhdXRlcmVzKSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2MzMgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVhZCBlcnJvciBpbiAlLjI1MHMiCittc2dzdHIgImVycm9yIGRlIGxsZWN0dXJhIGVuICUuMjUwcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyAlLjI1MHMiCittc2dzdHIgImZhbGx1IGFsIHphcnJhciAlLjI1MHMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjM3CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHRyeWluZyB0byBvcGVuICUuMjUwcyIKK21zZ3N0ciAiZmFsbHUgaW50ZW50YW5kbyBhYnJpciAlLjI1MHMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6Njc4CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlLWNvbmZpZ3VyaW5nICVzLCB0byBhbGxvdyByZW1vdmFsIG9mICVzIC4uLlxuIgorbXNnc3RyICJEZXNjb25maWd1cmFuZG8gJXMsIHBhIHBvZGVyIGRlc2FuaWNpYXIgJXMgLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjgxCisjLCBjLWZvcm1hdAorbXNnaWQgIkRlLWNvbmZpZ3VyaW5nICVzIC4uLlxuIgorbXNnc3RyICJEZXNjb25maWd1cmFuZG8gJXMgLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NzU1CisjLCBjLWZvcm1hdAorbXNnaWQgIlVucGFja2luZyByZXBsYWNlbWVudCAlLjI1MHMgLi4uXG4iCittc2dzdHIgIkRlc2VtcGFxdWV0YW5kbydsIHRyb3F1w6l1IGRlICUuMjUwcyAuLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NDAKK21zZ2lkICJwYWNrYWdlIGZpbGVzeXN0ZW0gYXJjaGl2ZSBleHRyYWN0aW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6ODU0Cittc2dpZCAiZXJyb3IgcmVhZGluZyBkcGtnLWRlYiB0YXIgb3V0cHV0IgorbXNnc3RyICJmYWxsdSBhbCBsbGVlciBsYSBzYWxpZGEgZGUgdGFyIGRlIGRwa2ctZGViIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjg1NgorbXNnaWQgImNvcnJ1cHRlZCBmaWxlc3lzdGVtIHRhcmZpbGUgLSBjb3JydXB0ZWQgcGFja2FnZSBhcmNoaXZlIgorbXNnc3RyICJzaXN0ZW1hIGRlIGZpY2hlcm9zIGRlbCBhcmNoaXZ1LXRhciBkYcOxYWRvIC0gYXJjaGl2dSBkZSBwYXF1ZXRlIGZyYcOxw6F1IgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjg1OQorbXNnaWQgImRwa2ctZGViOiB6YXAgcG9zc2libGUgdHJhaWxpbmcgemVyb3MiCittc2dzdHIgImRwa2ctZGViOiB6YXBlYSBkYWJsZXMgY2Vyb3MgZmluYWxlcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5MTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHN0YXQgb2xkIGZpbGUgJyUuMjUwcycgc28gbm90IGRlbGV0aW5nIGl0OiAlcyIKK21zZ3N0ciAiIgorIm51biBwdWRvIGVmZXV0dWFzZSBzdGF0IGFsIGZpY2hlcm8gYW50aWd1dSAnJS4yNTBzJyBwb2xvIHF1ZSBudW4gc2UgIgorImRlc2FuaWNpYXLDoTogJXMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTI1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkZWxldGUgb2xkIGRpcmVjdG9yeSAnJS4yNTBzJzogJXMiCittc2dzdHIgIm51biBwdWVkZSBkZXNhbmljaWFzZSdsIGRpcmV1dG9yaXUgYW50aWd1dSAnJS4yNTBzJzogJXMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTI4CisjLCBjLWZvcm1hdAorbXNnaWQgIm9sZCBjb25mZmlsZSAnJS4yNTBzJyB3YXMgYW4gZW1wdHkgZGlyZWN0b3J5IChhbmQgaGFzIG5vdyBiZWVuIGRlbGV0ZWQpIgorbXNnc3RyICJlbCBjb25mZmlsZSBhbnRpZ3V1ICclLjI1MHMnIHllcmEgdW4gZGlyZXV0b3JpdSBlcm11ICh5IGRlc2FuaWNpw7NzZSkiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTc1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IG90aGVyIG5ldyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJudW4gcHVlZGUgZWZldXR1YXNlIGBzdGF0JyBvdHJ1IGZpY2hlcnUgbnVldnUgYCUuMjUwcyciCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTg2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJvbGQgZmlsZSAnJS4yNTBzJyBpcyB0aGUgc2FtZSBhcyBzZXZlcmFsIG5ldyBmaWxlcyEgKGJvdGggJyUuMjUwcycgYW5kICIKKyInJS4yNTBzJykiCittc2dzdHIgIiIKKyJlbCBmaWNoZXJ1IGFudGlndXUgJyUuMjUwcycgeWUnbCBtZXNtdSBxdWUgZGVsbG9zIGRlIGxvcyBudWV2b3MgZmljaGVyb3MhICIKKyIodGFudHUgJyUuMjUwcycgY29tbyAnJS4yNTBzJykiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTAyNQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNlY3VyZWx5IHJlbW92ZSBvbGQgZmlsZSAnJS4yNTBzJzogJXMiCittc2dzdHIgIm51biBzZSBwdWVkZSAlcyBlbCBmaWNoZXJ1IGFudGlndXUgJyUuMjUwcyc6ICVzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEyMDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiKE5vdGluZyBkaXNhcHBlYXJhbmNlIG9mICVzLCB3aGljaCBoYXMgYmVlbiBjb21wbGV0ZWx5IHJlcGxhY2VkLilcbiIKK21zZ3N0ciAiKE5vdGUgbGEgZGVzYXBhcmljacOzbiBkZSAlcywgcXVlIHRyb2PDs3NlIGVuc2VtYnJlLilcbiIKKworIy4gVFJBTlNMQVRPUlM6IFRoaXMgaXMgdGhlIGhlYWRlciB0aGF0IGFwcGVhcnMgb24gJ2Rwa2ctcXVlcnkgLWwnLiBUaGUKKyMuICogc3RyaW5nIHNob3VsZCByZW1haW4gdW5kZXIgODAgY2hhcmFjdGVycy4gVGhlIHVwcGVyY2FzZSBsZXR0ZXJzIGluCisjLiAqIHRoZSBzdGF0ZSB2YWx1ZXMgZGVub3RlIHRoZSBhYmJyZXZpYXRlZCBsZXR0ZXIgdGhhdCB3aWxsIGFwcGVhciBvbgorIy4gKiB0aGUgZmlyc3QgdGhyZWUgY29sdW1ucywgd2hpY2ggc2hvdWxkIGlkZWFsbHkgbWF0Y2ggdGhlIEVuZ2xpc2ggb25lCisjLiAqIChlLmcuIFJlbW92ZSDihpIgc3VwUmltZWl4KSwgc2VlIGRwa2ctcXVlcnkoMSkgZm9yIGZ1cnRoZXIgZGV0YWlscy4gVGhlCisjLiAqIHRyYW5zbGF0ZWQgbWVzc2FnZSBjYW4gdXNlIGFkZGl0aW9uYWwgbGluZXMgaWYgbmVlZGVkLgorIzogc3JjL3F1ZXJ5Y21kLmM6MTQ5CisjLCBmdXp6eQorbXNnaWQgIiIKKyJEZXNpcmVkPVVua25vd24vSW5zdGFsbC9SZW1vdmUvUHVyZ2UvSG9sZFxuIgorInwgU3RhdHVzPU5vdC9JbnN0L0NvbmYtZmlsZXMvVW5wYWNrZWQvaGFsRi1jb25mL0hhbGYtaW5zdC90cmlnLWFXYWl0L1RyaWctIgorInBlbmRcbiIKKyJ8LyBFcnI/PShub25lKS9SZWluc3QtcmVxdWlyZWQgKFN0YXR1cyxFcnI6IHVwcGVyY2FzZT1iYWQpXG4iCittc2dzdHIgIiIKKyJEZXNpcmVkPVVua25vd24vSW5zdGFsbC9SZW1vdmUvUHVyZ2UvSG9sZFxuIgorInwgRXN0w6F1PU5vbi9JbnN0YWzDoXUvQ29uZmlnLWZpbGVzL0Rlc2VtcGFxdWV0w6F1L0ZhbGx1LWNvbmZpZy9NZWRpdS1pbnN0LyIKKyJlc3BlcmEtZGlzcGFydS9wZW5kaWVudGUtZGlzcGFydVxuIgorInwvIEVycj89KGRlbmfDum4pL1JldGVuw611L1JlcXVpZXItcmVpbnN0L1g9ZGFtYm9zIHByb2JsZW1lcyAoRXN0w6F1LEVycjogIgorIm1hecO6c2MuPW1hbHUpXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjE1MworbXNnaWQgIk5hbWUiCittc2dzdHIgIk5vbWUiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjE1MworbXNnaWQgIlZlcnNpb24iCittc2dzdHIgIlZlcnNpw7NuIgorCisjOiBzcmMvcXVlcnljbWQuYzoxNTQKK21zZ2lkICJEZXNjcmlwdGlvbiIKK21zZ3N0ciAiRGVzY3JpcGNpw7NuIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNDYgc3JjL3F1ZXJ5Y21kLmM6NTExIHNyYy9zZWxlY3QuYzo3NQorIywgYy1mb3JtYXQKK21zZ2lkICJObyBwYWNrYWdlcyBmb3VuZCBtYXRjaGluZyAlcy5cbiIKK21zZ3N0ciAiTnVuIHMnYWxjb250csOzIGRlbmfDum4gcGFxdWV0ZSBxdWUgY29ycmVzcHVlbmRhIGNvbiAlcy5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MjczCisjLCBjLWZvcm1hdAorbXNnaWQgImRpdmVyc2lvbiBieSAlcyBmcm9tOiAlc1xuIgorbXNnc3RyICJlc3Zpw6F1IHBvciAlcyBkZTogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6Mjc1CisjLCBjLWZvcm1hdAorbXNnaWQgImRpdmVyc2lvbiBieSAlcyB0bzogJXNcbiIKK21zZ3N0ciAiZXN2acOhdSBwb3IgJXMgYTogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6Mjc4CisjLCBjLWZvcm1hdAorbXNnaWQgImxvY2FsIGRpdmVyc2lvbiBmcm9tOiAlc1xuIgorbXNnc3RyICJlc3ZpYWNpw7NuIGxsb2NhbCBkZTogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6Mjc5CisjLCBjLWZvcm1hdAorbXNnaWQgImxvY2FsIGRpdmVyc2lvbiB0bzogJXNcbiIKK21zZ3N0ciAiZXN2aWFjacOzbiBsbG9jYWwgYTogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MzA5Cittc2dpZCAiLS1zZWFyY2ggbmVlZHMgYXQgbGVhc3Qgb25lIGZpbGUgbmFtZSBwYXR0ZXJuIGFyZ3VtZW50IgorbXNnc3RyICIiCisiLS1zZWFyY2ggbmVjZXNpdGEgYSBsbyBtZW5vcyB1biBwYXRyw7NuIGRlIG5vbWUgZGUgZmljaGVydSBjb21vIGFyZ3VtZW50dSIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MzUwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJObyBwYWNrYWdlcyBmb3VuZCBtYXRjaGluZyAlcy5cbiIKK21zZ2lkICIlczogbm8gcGF0aCBmb3VuZCBtYXRjaGluZyBwYXR0ZXJuICVzLlxuIgorbXNnc3RyICJOdW4gcydhbGNvbnRyw7MgZGVuZ8O6biBwYXF1ZXRlIHF1ZSBjb3JyZXNwdWVuZGEgY29uICVzLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzozOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSBgJXMnIGlzIG5vdCBpbnN0YWxsZWQgYW5kIG5vIGluZm8gaXMgYXZhaWxhYmxlLlxuIgorbXNnc3RyICIiCisiRWwgcGFxdWV0ZSBgJXMnIG51biB0YSBpbnN0YWzDoXUgeSBudW4gaGFpIGRlbmd1bmEgaW5mb3JtYWNpw7NuIGRpc3BvbmlibGUuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQwMQorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlIGAlcycgaXMgbm90IGF2YWlsYWJsZS5cbiIKK21zZ3N0ciAiRWwgcGFxdWV0ZSBgJXMnIG51biB0YSBkaXNwb25pYmxlLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MTAgc3JjL3F1ZXJ5Y21kLmM6NTg1CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgYCVzJyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICJFbCBwYXF1ZXRlIGAlcycgbnVuIHRhIGluc3RhbMOhdS5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDE4CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgYCVzJyBkb2VzIG5vdCBjb250YWluIGFueSBmaWxlcyAoISlcbiIKK21zZ3N0ciAiRWwgcGFxdWV0ZSBgJXMnIG51biBjb250acOpbiBkZW5nw7puIGZpY2hlcnUgKCEpXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQyNQorIywgYy1mb3JtYXQKK21zZ2lkICJsb2NhbGx5IGRpdmVydGVkIHRvOiAlc1xuIgorbXNnc3RyICJlc3Zpw6F1IGxsb2NhbG1lbnRlIGE6ICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQyOAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGRpdmVydHMgb3RoZXJzIHRvOiAlc1xuIgorbXNnc3RyICJlbCBwYXF1ZXRlIGVzdsOtYSBvdHJvcyBhOiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJ0ZWQgYnkgJXMgdG86ICVzXG4iCittc2dzdHIgImVzdmnDoXUgcG9yICVzIGE6ICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQ1MgorbXNnaWQgIiIKKyJVc2UgZHBrZyAtLWluZm8gKD0gZHBrZy1kZWIgLS1pbmZvKSB0byBleGFtaW5lIGFyY2hpdmUgZmlsZXMsXG4iCisiYW5kIGRwa2cgLS1jb250ZW50cyAoPSBkcGtnLWRlYiAtLWNvbnRlbnRzKSB0byBsaXN0IHRoZWlyIGNvbnRlbnRzLlxuIgorbXNnc3RyICIiCisiVXNlIGRwa2cgLS1pbmZvICg9IGRwa2ctZGViIC0taW5mbykgcGEgZGVzYW1pbmFyIGZpY2hlcm9zLFxuIgorInkgZHBrZyAtLWNvbnRlbnRzICg9IGRwa2ctZGViIC0tY29udGVudHMpIHBhIGxsaXN0YXIgZWwgc28gY29udGVuw611LlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo1NzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgYXQgbW9zdCB0d28gYXJndW1lbnRzIgorbXNnc3RyICItLWJ1aWxkIGxsZXZhIHRvbG8gbcOhcywgZG9zIHBhcsOhbWV0cm9zIgorCisjOiBzcmMvcXVlcnljbWQuYzo1NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29udHJvbCBmaWxlIGNvbnRhaW5zICVjIgorbXNnc3RyICIiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjYwMAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuICVzIHBhY2thZ2UgbWFuYWdlbWVudCBwcm9ncmFtIHF1ZXJ5IHRvb2wgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiUHJvZ3JhbWEgZGUgeGVzdGnDs24gZGUgcGFxdWV0ZXMgXCIlc1wiIGRlIERlYmlhbiB2ZXJzacOzbiAlcy5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjE5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtc3wtLXN0YXR1cyA8cGFja2FnZT4gLi4uICAgICAgICBEaXNwbGF5IHBhY2thZ2Ugc3RhdHVzIGRldGFpbHMuXG4iCisiICAtcHwtLXByaW50LWF2YWlsIDxwYWNrYWdlPiAuLi4gICBEaXNwbGF5IGF2YWlsYWJsZSB2ZXJzaW9uIGRldGFpbHMuXG4iCisiICAtTHwtLWxpc3RmaWxlcyA8cGFja2FnZT4gLi4uICAgICBMaXN0IGZpbGVzIGBvd25lZCcgYnkgcGFja2FnZShzKS5cbiIKKyIgIC1sfC0tbGlzdCBbPHBhdHRlcm4+IC4uLl0gICAgICAgIExpc3QgcGFja2FnZXMgY29uY2lzZWx5LlxuIgorIiAgLVd8LS1zaG93IFs8cGF0dGVybj4gLi4uXSAgICAgICAgU2hvdyBpbmZvcm1hdGlvbiBvbiBwYWNrYWdlKHMpLlxuIgorIiAgLVN8LS1zZWFyY2ggPHBhdHRlcm4+IC4uLiAgICAgICAgRmluZCBwYWNrYWdlKHMpIG93bmluZyBmaWxlKHMpLlxuIgorIiAgLWN8LS1jb250cm9sLXBhdGggPHBhY2thZ2U+IFs8ZmlsZT5dXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQcmludCBwYXRoIGZvciBwYWNrYWdlIGNvbnRyb2wgZmlsZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIsOTcmRlbmVzOlxuIgorIiAgLXN8LS1zdGF0dXMgPHBhcXVldGU+IC4uLiAgICAgICAgICAgIEFtdWVzYSBsJ2VzdMOhdSBkZWwgcGFxdWV0ZS5cbiIKKyIgIC1wfC0tcHJpbnQtYXZhaWwgPHBhcXVldGU+IC4uLiAgICAgICBBbXVlc2EgZGV0YWxsZXMgc29icm8gbGEgdmVyc2nDs24gIgorImRpc3BvbmlibGUuXG4iCisiICAtTHwtLWxpc3RmaWxlcyA8cGFxdWV0ZT4gLi4uICAgICAgICAgQW11ZXNhIGxvcyBmaWNoZXJvcyBxdWUgYHBlcnRlbmVjZW4nICIKKyJhbCBwYXF1ZXRlLlxuIgorIiAgLWx8LS1saXN0IFs8cGF0csOzbj4gLi4uXSAgICAgICAgICAgICBMbGlzdGEgbG9zIHBhcXVldGVzIGRlIG1vdSBjb25jaXN1LlxuIgorIiAgLVd8LS1zaG93IDxwYXRyw7NuPiAuLi4gICAgICAgICAgICAgICBBbXVlc2EgaW5mb3JtYWNpw7NuIHNvYnJvIGVsKGxvcykgIgorInBhcXVldGUocykuXG4iCisiICAtU3wtLXNlYXJjaCA8cGF0csOzbj4gLi4uICAgICAgICAgICAgIEd1ZXRhIGVsKGxvcykgcGFxdWV0ZShzKSBhIGxvcyBxdWUgIgorInBlcnRlbmV6XG4iCisiXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjYzNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorIiAgLWZ8LS1zaG93Zm9ybWF0PTxmb3JtYXQ+ICAgICAgICAgVXNlIGFsdGVybmF0aXZlIGZvcm1hdCBmb3IgLS1zaG93LlxuIgorIlxuIgorbXNnc3RyICIiCisiT3BjaW9uZXM6XG4iCisiICAtLWFkbWluZGlyPTxkaXJldXRvcml1PiAgICAgVXNhIDxkaXJldXRvcml1PiBuJ2FycsOzdSBkZSAlcy5cbiIKKyIgIC1mfC0tc2hvd2Zvcm1hdD08Zm9ybWF0dT4gICBVc2EgdW4gZm9ybWF0dSBhbHRlcm5hdGl2dSBwYSAtLXNob3cuXG4iCisiXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjY0MiBkcGtnLWRlYi9tYWluLmM6MTEyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJGb3JtYXQgc3ludGF4OlxuIgorIiAgQSBmb3JtYXQgaXMgYSBzdHJpbmcgdGhhdCB3aWxsIGJlIG91dHB1dCBmb3IgZWFjaCBwYWNrYWdlLiBUaGUgZm9ybWF0XG4iCisiICBjYW4gaW5jbHVkZSB0aGUgc3RhbmRhcmQgZXNjYXBlIHNlcXVlbmNlcyBcXG4gKG5ld2xpbmUpLCBcXHIgKGNhcnJpYWdlXG4iCisiICByZXR1cm4pIG9yIFxcXFwgKHBsYWluIGJhY2tzbGFzaCkuIFBhY2thZ2UgaW5mb3JtYXRpb24gY2FuIGJlIGluY2x1ZGVkXG4iCisiICBieSBpbnNlcnRpbmcgdmFyaWFibGUgcmVmZXJlbmNlcyB0byBwYWNrYWdlIGZpZWxkcyB1c2luZyB0aGUgJHt2YXJbOyIKKyJ3aWR0aF19XG4iCisiICBzeW50YXguIEZpZWxkcyB3aWxsIGJlIHJpZ2h0LWFsaWduZWQgdW5sZXNzIHRoZSB3aWR0aCBpcyBuZWdhdGl2ZSBpbiAiCisid2hpY2hcbiIKKyIgIGNhc2UgbGVmdCBhbGlnbm1lbnQgd2lsbCBiZSB1c2VkLlxuIgorbXNnc3RyICIiCisiU2ludGF4aXMgZGVsIGZvcm1hdHU6XG4iCisiICBVbiBmb3JtYXR1IHllIHVuYSBjYWRlbmEgcXVlIHMnYW1vc2Fyw6EgcGEgY2FkYSBwYXF1ZXRlLiBFbCBmb3JtYXR1XG4iCisiICBwdWVkZSBpbmNsdXlpciBsZXMgc2VjdWVuY2llcyBkJ2VzY2FwZSBlc3TDoW5kYXJlcyBcXG4gKG51ZXZhIGxsaW5pYSksXG4iCisiICBcXHIgKHJldG9ybnUgZGUgY2FycnUpIG8gXFxcXCAoYmFycmEgaW52ZXJ0w61hKS4gUHVlZGUgaW5jbHV5aXNlXG4iCisiICBpbmZvcm1hY2nDs24gc29icm8nbCBwYXF1ZXRlIGlueGVydGFuZG8gcmVmZXJlbmNpZXMgdmFyaWFibGVzIGEgbG9zXG4iCisiICBjYW1wb3MgZGVsIHBhcXVldGUgdXNhbmRvIGxhIHNpbnRheGlzICR7dmFyWzt3aWR0aF19LiBMb3MgY2FtcG9zXG4iCisiICBhbGxpbmlhcsOhbnNlIGEgbGEgZHJlY2hhIGEgbWVub3MgcXVlJ2wgYW5jaG9yIHNleWEgbmVnYXRpdnUsIG5lc2lcbiIKKyIgIGNhc3UgYWxsaW5pYXLDoW5zZSBhIGxhIGVzcXVpZXJkYS5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjU2Cittc2dpZCAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBxdWVyeWluZyBwYWNrYWdlcy4iCittc2dzdHIgIiIKKworIzogc3JjL3JlbW92ZS5jOjg4CisjLCBjLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nIHJlcXVlc3QgdG8gcmVtb3ZlICUuMjUwcyB3aGljaCBpc24ndCBpbnN0YWxsZWQuIgorbXNnc3RyICJpbm9yYW5kbyBwZXRpY2nDs24gZGUgZGVzYW5pY2l1IGRlICUuMjUwcyBxdWUgbnVuIHRhIGluc3RhbMOhdSIKKworIzogc3JjL3JlbW92ZS5jOjk1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpZ25vcmluZyByZXF1ZXN0IHRvIHJlbW92ZSAlLjI1MHMsIG9ubHkgdGhlIGNvbmZpZ1xuIgorIiBmaWxlcyBvZiB3aGljaCBhcmUgb24gdGhlIHN5c3RlbS4gVXNlIC0tcHVyZ2UgdG8gcmVtb3ZlIHRoZW0gdG9vLiIKK21zZ3N0ciAiIgorImRlc2PDoXJ0YXNlIGxhIHBldGljacOzbiBkZSBkZXNpbnN0YWxhciAlLjI1MHMsIGRlbCBxdWUgbmFtw6FpIGxvc1xuIgorIiBmaWNoZXJvcyBkZSBjb25maWd1cmFjacOzbiBxdWVkZW4gbmVsIHNpc3RlbWEuIFVzZSAtLXB1cmdlIHBhIGRlc2FuaWNpYXIgIgorInRhbWnDqW4gZXN0b3MgZmljaGVyb3MuIgorCisjOiBzcmMvcmVtb3ZlLmM6MTAzCittc2dpZCAiVGhpcyBpcyBhbiBlc3NlbnRpYWwgcGFja2FnZSAtIGl0IHNob3VsZCBub3QgYmUgcmVtb3ZlZC4iCittc2dzdHIgIlllIHVuIHBhcXVldGUgZXNlbmNpYWwgLSBudW4gaGEgZGVzaW5zdGFsYXNlLiIKKworIzogc3JjL3JlbW92ZS5jOjEyOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogZGVwZW5kZW5jeSBwcm9ibGVtcyBwcmV2ZW50IHJlbW92YWwgb2YgJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiBwcm9ibGVtZXMgZGUgZGVwZW5kZW5jaWVzIGltcGlkZW4gbGEgZGVzaW5zdGFsYWNpw7NuIGRlICVzOlxuIgorIiVzIgorCisjOiBzcmMvcmVtb3ZlLmM6MTMwCittc2dpZCAiZGVwZW5kZW5jeSBwcm9ibGVtcyAtIG5vdCByZW1vdmluZyIKK21zZ3N0ciAicHJvYmxlbWVzIGRlIGRlcGVuZGVuY2llcyAtIG51biBzZSBkZXNpbnN0YWxhIgorCisjOiBzcmMvcmVtb3ZlLmM6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiAlczogZGVwZW5kZW5jeSBwcm9ibGVtcywgYnV0IHJlbW92aW5nIGFueXdheSBhcyB5b3UgcmVxdWVzdGVkOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogJXM6IHByb2JsZW1lcyBkZSBkZXBlbmRlbmNpZXMsIHBlcm8gZGVzaW5zdGFsYXLDoXNlIGRlIHRvZXMgZm9ybWVzXG4iCisiIHRhbG8geSBjb21vIHNlIHNvbGljaXTDszpcbiIKKyIlcyIKKworIzogc3JjL3JlbW92ZS5jOjE0MgorbXNnaWQgIiIKKyJQYWNrYWdlIGlzIGluIGEgdmVyeSBiYWQgaW5jb25zaXN0ZW50IHN0YXRlIC0geW91IHNob3VsZFxuIgorIiByZWluc3RhbGwgaXQgYmVmb3JlIGF0dGVtcHRpbmcgYSByZW1vdmFsLiIKK21zZ3N0ciAiIgorIkVsIHBhcXVldGUgdGEgbnVuIGVzdMOhdSBtdWkgbWFsdSB5YSBpbmNvbnNpc3RlbnRlIC0gdGllbiBkZSByZWluc3RhbGFsdVxuIgorIiBlbmFudGVzIGQnaW50ZW50YXIgZGVzaW5zdGFsYWx1LiIKKworIzogc3JjL3JlbW92ZS5jOjE0OQorIywgYy1mb3JtYXQKK21zZ2lkICJXb3VsZCByZW1vdmUgb3IgcHVyZ2UgJXMgLi4uXG4iCittc2dzdHIgIkRlc2luc3RhbGFyw61hIG8gcHVyZ2Fyw61hICVzIC4uLlxuIgorCisjOiBzcmMvcmVtb3ZlLmM6MTU3CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlbW92aW5nICVzIC4uLlxuIgorbXNnc3RyICJEZXNpbnN0YWxhbmRvICVzIC4uLlxuIgorCisjOiBzcmMvcmVtb3ZlLmM6Mjc1IHNyYy9yZW1vdmUuYzozNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIndoaWxlIHJlbW92aW5nICUuMjUwcywgdW5hYmxlIHRvIHJlbW92ZSBkaXJlY3RvcnkgJyUuMjUwcyc6ICVzIC0gZGlyZWN0b3J5ICIKKyJtYXkgYmUgYSBtb3VudCBwb2ludD8iCittc2dzdHIgIiIKKyJhbCBkZXNpbnN0YWxhciAlLjI1MHMsIG51biBzZSBwdWVkZSBkZXNhbmljaWFyIGVsIGRpcmV1dG9yaXUgJyUuMjUwcyc6ICVzIC0gIgorIsK/ZWwgZGlyZXV0b3JpdSBwdWVkZSBzZXIgdW4gcHVudHUgZGUgbW9udGF4ZT8iCisKKyM6IHNyYy9yZW1vdmUuYzoyODkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWN1cmVseSByZW1vdmUgJyUuMjUwcyciCittc2dzdHIgIm51biBwdWVkZSBjcmVhc2UgJyUuMjU1cyciCisKKyM6IHNyYy9yZW1vdmUuYzozNjEKKyMsIGMtZm9ybWF0Cittc2dpZCAid2hpbGUgcmVtb3ZpbmcgJS4yNTBzLCBkaXJlY3RvcnkgJyUuMjUwcycgbm90IGVtcHR5IHNvIG5vdCByZW1vdmVkLiIKK21zZ3N0ciAiIgorImFsIGRlc2luc3RhbGFyICUuMjUwcywgZWwgZGlyZXV0b3JpdSAnJS4yNTBzJyBudW4gdGEgZXJtdSwgbnVuIHNlIGRlc2FuaWNpYSIKKworIzogc3JjL3JlbW92ZS5jOjM4MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiY2Fubm90IHJlbW92ZSBgJS4yNTBzJyIKK21zZ2lkICJjYW5ub3QgcmVtb3ZlICclLjI1MHMnIgorbXNnc3RyICJudW4gc2UgcHVlZGUgZGVzYW5pY2lhciBgJS4yNTBzJyIKKworIzogc3JjL3JlbW92ZS5jOjQwOQorIywgYy1mb3JtYXQKK21zZ2lkICJQdXJnaW5nIGNvbmZpZ3VyYXRpb24gZmlsZXMgZm9yICVzIC4uLlxuIgorbXNnc3RyICJQdXJnYW5kbyBmaWNoZXJvcyBkZSBjb25maWd1cmFjacOzbiBkZSAlcyAuLi5cbiIKKworIzogc3JjL3JlbW92ZS5jOjQ1OQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVtb3ZlIG9sZCBjb25maWcgZmlsZSBgJS4yNTBzJyAoPSBgJS4yNTBzJykiCittc2dzdHIgIiIKKyJudW4gc2UgcHVlZGUgZGVzYW5pY2lhciBlbCBmaWNoZXJ1IGRlIGNvbmZpZ3VyYWNpw7NuIGFudGlndXUgYCUuMjUwcycgKD0gYCIKKyIlLjI1MHMnKSIKKworIzogc3JjL3JlbW92ZS5jOjQ3NAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVhZCBjb25maWcgZmlsZSBkaXIgYCUuMjUwcycgKGZyb20gYCUuMjUwcycpIgorbXNnc3RyICIiCisibnVuIHB1ZWRlIGxsZWVzZSdsIGRpcmV1dG9yaXUgZGVsIGZpY2hlcnUgZGUgY29uZmlndXJhY2nDs24gYCUuMjUwcydcbiIKKyIoYSBwYXJ0aXIgZGUgYCUuMjUwcycpIgorCisjOiBzcmMvcmVtb3ZlLmM6NTEwCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZW1vdmUgb2xkIGJhY2t1cCBjb25maWcgZmlsZSBgJS4yNTBzJyAob2YgYCUuMjUwcycpIgorbXNnc3RyICIiCisibnVuIHB1ZWRlIGRlc2FuaWNpYXNlIGwnYW50aWd1dSBmaWNoZXJ1IGRlIGNvbmZpZ3VyYWNpw7NuIGRlIHJlc3BhbGR1IGAiCisiJS4yNTBzJ1xuIgorIihkZSBgJS4yNTBzJykiCisKKyM6IHNyYy9yZW1vdmUuYzo1NjgKK21zZ2lkICJjYW5ub3QgcmVtb3ZlIG9sZCBmaWxlcyBsaXN0IgorbXNnc3RyICJudW4gcHVlZGUgZGVzYW5pY2lhc2UgbGEgbGxpc3RhIGRlIGZpY2hlcm9zIGFudGlndWEiCisKKyM6IHNyYy9yZW1vdmUuYzo1NzQKK21zZ2lkICJjYW4ndCByZW1vdmUgb2xkIHBvc3RybSBzY3JpcHQiCittc2dzdHIgIm51biBwdWVkZSBkZXNhbmljaWFzZSdsIHNjcmlwdCBwb3N0cm0gYW50aWd1dSIKKworIzogc3JjL3NlbGVjdC5jOjExNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVvZiBpbiBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZCIKK21zZ3N0ciAiZW9mIGluZXNwZXLDoXUgbmVsIG5vbWUgZGVsIHBhcXVldGUgbmEgbGxpbmlhICVkIgorCisjOiBzcmMvc2VsZWN0LmM6MTE2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGxpbmUgaW4gcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQiCittc2dzdHIgImZpbiBkZSBsbGluaWEgaW5lc3BlcsOhdSBuZWwgbm9tZSBkZWwgcGFxdWV0ZSBuYSBsbGxpbmlhICVkIgorCisjOiBzcmMvc2VsZWN0LmM6MTIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW9mIGFmdGVyIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICJlb2YgaW5lc3BlcsOhdSB0cmVzIGVsIG5vbWUgZGVsIHBhcXVldGUgbmEgbGxpbmlhICVkIgorCisjOiBzcmMvc2VsZWN0LmM6MTIzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGxpbmUgYWZ0ZXIgcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQiCittc2dzdHIgImZpbiBkZSBsbGluaWEgaW5lc3BlcsOhdSB0cmVzIGVsIG5vbWUgZGVsIHBhcXVldGUgbmEgbGxpbmlhICVkIgorCisjOiBzcmMvc2VsZWN0LmM6MTM2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZGF0YSBhZnRlciBwYWNrYWdlIGFuZCBzZWxlY3Rpb24gYXQgbGluZSAlZCIKK21zZ3N0ciAiZGF0b3MgaW5lc3BlcmFvcyB0cmVzIGVsIHBhcXVldGUgeSBlc2JpbGxhIG5hIGxsaW5pYSAlZCIKKworIzogc3JjL3NlbGVjdC5jOjEzOQorIywgYy1mb3JtYXQKK21zZ2lkICJpbGxlZ2FsIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkOiAlLjI1MHMiCittc2dzdHIgIm5vbWUgZGUgcGFxdWV0ZSBpbGxlZ2FsIG5hIGxsaW5pYSAlZDogJS4yNTBzIgorCisjOiBzcmMvc2VsZWN0LmM6MTQzCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gd2FudGVkIHN0YXR1cyBhdCBsaW5lICVkOiAlLjI1MHMiCittc2dzdHIgImVzdMOhdSBkZXNlecOhdSBkZXNjb25vY8OtdSBuYSBsbGluaWEgJWQ6ICUuMjUwcyIKKworIzogc3JjL3NlbGVjdC5jOjE0OQorbXNnaWQgInJlYWQgZXJyb3Igb24gc3RhbmRhcmQgaW5wdXQiCittc2dzdHIgImZhbGx1IGRlIGxsZWN0dXJhIG5hIGVudHJhZGEgZXN0w6FuZGFyIgorCisjOiBzcmMvc3RhdGNtZC5jOjUyCittc2dpZCAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBvdmVycmlkaW5nIGZpbGUgc3RhdCBpbmZvcm1hdGlvbi4iCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRjbWQuYzo2MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvcHlyaWdodCAoQykgMjAwMCwgMjAwMSBXaWNoZXJ0IEFra2VybWFuLlxuIgorIkNvcHlyaWdodCAoQykgMjAwNi0yMDA5IEd1aWxsZW0gSm92ZXIuXG4iCittc2dzdHIgIiIKKyJcbiIKKyJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLTIwMDIgV2ljaGVydCBBa2tlcm1hbi4iCisKKyM6IHNyYy9zdGF0Y21kLmM6ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLS1hZGQgPG93bmVyPiA8Z3JvdXA+IDxtb2RlPiA8ZmlsZT5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBhZGQgYSBuZXcgZW50cnkgaW50byB0aGUgZGF0YWJhc2UuXG4iCisiICAtLXJlbW92ZSA8ZmlsZT4gICAgICAgICAgcmVtb3ZlIGZpbGUgZnJvbSB0aGUgZGF0YWJhc2UuXG4iCisiICAtLWxpc3QgWzxnbG9iLXBhdHRlcm4+XSAgbGlzdCBjdXJyZW50IG92ZXJyaWRlcyBpbiB0aGUgZGF0YWJhc2UuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRjbWQuYzo4OQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgc2V0IHRoZSBkaXJlY3Rvcnkgd2l0aCB0aGUgc3RhdG92ZXJyaWRlIGZpbGUuXG4iCisiICAtLXVwZGF0ZSAgICAgICAgICAgICAgICAgaW1tZWRpYXRlbHkgdXBkYXRlIGZpbGUgcGVybWlzc2lvbnMuXG4iCisiICAtLWZvcmNlICAgICAgICAgICAgICAgICAgZm9yY2UgYW4gYWN0aW9uIGV2ZW4gaWYgYSBzYW5pdHkgY2hlY2sgZmFpbHMuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgcXVpZXQgb3BlcmF0aW9uLCBtaW5pbWFsIG91dHB1dC5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCittc2dzdHIgIiIKKyJNb3UgZCd1c3U6ICVzIFs8b3BjacOzbj4gLi4uXSA8b3JkZT5cbiIKKyJcbiIKKyLDk3JkZW5lczpcbiIKKyIgIC0tYWRkIDxwcm9waWV0YXJpdT4gPGdydXB1PiA8bW91PjxmaWNoZXJ1PiBcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBhbWllc3RhIHVuYSBlbnRyYWRhIG51ZXZhIG5hIGJhc2UgZGF0b3MuXG4iCisiICAtLXJlbW92ZSA8ZmljaGVydT4gZGVzYW5pY2lhIHVuIGZpY2hlcnUgZGUgbGEgYmFzZSBkYXRvcy5cbiIKKyIgIC0tbGlzdCBbPHBhdHLDs24tZ2xvYj5dIGFtdWVzYSBsYSBpbmZvcm1hY2nDs24gZGUgbGEgYmFzZSBkYXRvc1xuIgorIiAgZGUgcmVkZWZpbmljaW9uZXMuXG4iCisiXG4iCisiT3BjaW9uZXM6XG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcml1PiBkZWZpbmUnbCBkaXJlY3Rvcml1IGNvbCBmaWNoZXJ1IHN0YXRvdmVycmlkZS5cbiIKKyIgIC0tdXBkYXRlIGFub3ZhIGxvcyBwZXJtaXNvcyBkZSBsb3MgZmljaGVyb3MgZGFycsOpdS5cbiIKKyIgIC0tZm9yY2UgZnVlcnphIGxhIGV4ZWN1Y2nDs24gZCd1bmEgYWNjacOzbiBhbnF1ZSBmYWxsZW4gbGVzIHBydWViZXMuXG4iCisiICAtLXF1aWV0IG9wZXJhY2nDs24gc2lsZW5jaW9zYSwgc2FsaWRhIHJlZHVjaWRhLlxuIgorIiAgLS1oZWxwIGFtdWVzYSBlc3RpIG1lbnNheGUgZCdhaWRhLlxuIgorIiAgLS12ZXJzaW9uIGFtdWVzYSBsYSB2ZXJzacOzbi5cbiIKKworIzogc3JjL3N0YXRjbWQuYzoxMTYKK21zZ2lkICJzdHJpcHBpbmcgdHJhaWxpbmcgLyIKK21zZ3N0ciAidGFyYXphbmRvIGxhIGNhYmVyYSAvIgorCisjOiBzcmMvc3RhdGNtZC5jOjIwNworIywgZnV6enkKK21zZ2lkICJjYW5ub3Qgb3BlbiBuZXcgc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgImZhbGx1IGFsIGFicmlyIGVsIG51ZXZ1IGZpY2hlcnUgc3RhdG92ZXJyaWRlOiAlcyIKKworIzogc3JjL3N0YXRjbWQuYzoyMjIKKyMsIGZ1enp5Cittc2dpZCAiZXJyb3IgcmVtb3Zpbmcgc3RhdG92ZXJyaWRlLW9sZCIKK21zZ3N0ciAiZmFsbHUgYWwgZGVzYW5pY2lhciBzdGF0b3ZlcnJpZGUtb2xkOiAlcyIKKworIzogc3JjL3N0YXRjbWQuYzoyMjQKKyMsIGZ1enp5Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgbmV3IHN0YXRvdmVycmlkZS1vbGQiCittc2dzdHIgImZhbGx1IGFsIGNyZWFyIGVsIG51ZXZ1IGZpY2hlcnUgc3RhdG92ZXJyaWRlLW9sZDogJXMiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjI2CisjLCBmdXp6eQorbXNnaWQgImVycm9yIGluc3RhbGxpbmcgbmV3IHN0YXRvdmVycmlkZSIKK21zZ3N0ciAiZmFsbHUgYWwgaW5zdGFsYXIgZWwgbnVldnUgc3RhdG92ZXJyaWRlOiAlcyIKKworIzogc3JjL3N0YXRjbWQuYzoyNDYKK21zZ2lkICItLWFkZCBuZWVkcyBmb3VyIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS1hZGQgbmVjZXNpdGEgY3VhdHJvIGFyZ3VtZW50b3MiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjU2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiQW4gb3ZlcnJpZGUgZm9yICclcycgYWxyZWFkeSBleGlzdHMsIGJ1dCAtLWZvcmNlIHNwZWNpZmllZCBzbyB3aWxsIGJlICIKKyJpZ25vcmVkLiIKK21zZ3N0ciAicGVybyBlc3BlY2lmaWPDs3NlLS1mb3JjZSwgcG9ybywgdmEgaWdub3Jhc2UiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjYwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJBbiBvdmVycmlkZSBmb3IgJyVzJyBhbHJlYWR5IGV4aXN0cywgYWJvcnRpbmcuIgorbXNnc3RyICJZw6EgZXhpc3RlIHVuYSByZWRlZmluaWNpw7NuIHBhIMKrJXPCuywgIgorCisjOiBzcmMvc3RhdGNtZC5jOjI3MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiLS11cGRhdGUgZ2l2ZW4gYnV0ICVzIGRvZXMgbm90IGV4aXN0IgorbXNnc3RyICJhdmlzdTogZGlvc2UgLS11cGRhdGUgcGVybyBudW4gZXNpc3RlICVzIgorCisjOiBzcmMvc3RhdGNtZC5jOjI5NgorbXNnaWQgIk5vIG92ZXJyaWRlIHByZXNlbnQuIgorbXNnc3RyICJOdW4gZXhpc3RlIHVuYSByZWRlZmluaWNpw7NuLiIKKworIzogc3JjL3N0YXRjbWQuYzozMDQKKyMsIGZ1enp5Cittc2dpZCAiLS11cGRhdGUgaXMgdXNlbGVzcyBmb3IgLS1yZW1vdmUiCittc2dzdHIgImF2aXN1OiAtLXVwZGF0ZSB5ZSBpbsO6dGlsIHBhIC0tcmVtb3ZlIgorCisjOiBzcmMvc3RhdGRiLmM6NTkKK21zZ2lkICJzeW50YXggZXJyb3I6IGludmFsaWQgdWlkIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJlcnJvciBkZSBzaW50YXhpczogdWlkIGludsOhbGlkdSBlbiBmaWNoZXJ1IHN0YXRvdmVycmlkZSIKKworIzogc3JjL3N0YXRkYi5jOjY0CisjLCBjLWZvcm1hdAorbXNnaWQgInN5bnRheCBlcnJvcjogdW5rbm93biB1c2VyICclcycgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgImVycm9yIGRlIHNpbnRheGlzOiB1c3Vhcml1IGRlc2Nvbm9jw611ICclcycgZW4gZmljaGVydSBzdGF0b3ZlcnJpZGUiCisKKyM6IHNyYy9zdGF0ZGIuYzo4MworbXNnaWQgInN5bnRheCBlcnJvcjogaW52YWxpZCBnaWQgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgImVycm9yIGRlIHNpbnRheGlzOiBnaWQgaW52w6FsaWR1IGVuIHN0YXRvdmVycmlkZSIKKworIzogc3JjL3N0YXRkYi5jOjg4CisjLCBjLWZvcm1hdAorbXNnaWQgInN5bnRheCBlcnJvcjogdW5rbm93biBncm91cCAnJXMnIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJlcnJvciBkZSBmaWNoZXJ1OiBncnVwdSBkZXNjb25vY8OtdSAnJXMnIGVuIGZpY2hlcnUgc3RhdG92ZXJyaWRlIgorCisjOiBzcmMvc3RhdGRiLmM6MTA0Cittc2dpZCAic3ludGF4IGVycm9yOiBpbnZhbGlkIG1vZGUgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgImVycm9yIGRlIHNpbnRheGlzOiBtb3UgaW52w6FsaWR1IGVuIGZpY2hlcnUgc3RhdG92ZXJyaWRlIgorCisjOiBzcmMvc3RhdGRiLmM6MTI3Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgImZhbGx1YSBhbCBhYnJpciBlbCBmaWNoZXJ1IGRlICBcInN0YXRvdmVycmlkZVwiIgorCisjOiBzcmMvc3RhdGRiLmM6MTM0Cittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJmYWxsdSBhbCBmYWNlciBgZnN0YXQnIGRlbCBmaWNoZXJ1IGRlIGBzdGF0b3ZlcnJpZGUnIgorCisjOiBzcmMvc3RhdGRiLmM6MTM3Cittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IHByZXZpb3VzIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJudW4gcydhdG9ww7MnbCBmaWNoZXJ1IFwic3RhdG92ZXJyaWRlXCIgYW50ZXJpb3IiCisKKyM6IHNyYy9zdGF0ZGIuYzoxNjIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInN0YXRvdmVycmlkZSBmaWxlIGAlLjI1MHMnIgorbXNnaWQgInJlYWRpbmcgc3RhdG92ZXJyaWRlIGZpbGUgJyUuMjUwcyciCittc2dzdHIgImZpY2hlcnUgZGUgYHN0YXRvdmVycmlkZScgYCUuMjUwcyciCisKKyM6IHNyYy9zdGF0ZGIuYzoxNjkKK21zZ2lkICJzdGF0b3ZlcnJpZGUgZmlsZSBpcyBtaXNzaW5nIGZpbmFsIG5ld2xpbmUiCittc2dzdHIgImVsIGZpY2hlcnUgc3RhdG92ZXJyaWRlIHRpZW4gdW5hIGxsaW5pYSBiYWxlcmEiCisKKyM6IHNyYy9zdGF0ZGIuYzoxNzMKK21zZ2lkICJzdGF0b3ZlcnJpZGUgZmlsZSBjb250YWlucyBlbXB0eSBsaW5lIgorbXNnc3RyICJlbCBmaWNoZXJ1IGBzdGF0b3ZlcnJpZGUnICB0aWVuIHVuYSBsbGluaWEgYmFsZXJhIgorCisjOiBzcmMvc3RhdGRiLmM6MTc4IHNyYy9zdGF0ZGIuYzoxOTAgc3JjL3N0YXRkYi5jOjIwMgorbXNnaWQgInN5bnRheCBlcnJvciBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiZmFsbHVhIGFsIGFicmlyIGVsIGZpY2hlcnUgZGUgc3RhdG92ZXJyaWRlIgorCisjOiBzcmMvc3RhdGRiLmM6MTg2IHNyYy9zdGF0ZGIuYzoxOTggc3JjL3N0YXRkYi5jOjIxMAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGxpbmUgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgImZpbiBkZSBsbGluaWEgaW5lc3BlcsOhdSBlbiBmaWNoZXJ1IHN0YXRvdmVycmlkZSIKKworIzogc3JjL3N0YXRkYi5jOjIxNAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAibXVsdGlwbGUgc3RhdHVzb3ZlcmlkZXMgcHJlc2VudCBmb3IgZmlsZSAnJS4yNTBzJyIKK21zZ2lkICJtdWx0aXBsZSBzdGF0dXNvdmVycmlkZXMgcHJlc2VudCBmb3IgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAibXVsdGlwbGVzIHN0YXR1c292ZXJpZGVzIHByZXNlbnRlcyBwYWwgZmljaGVydSAnJS4yNTBzJyIKKworIzogc3JjL3RyaWdjbWQuYzo0NgorbXNnaWQgIlR5cGUgZHBrZy10cmlnZ2VyIC0taGVscCBmb3IgaGVscCBhYm91dCB0aGlzIHV0aWxpdHkuIgorbXNnc3RyICJFc2NyaWJhIGRwa2ctdHJpZ2dlciAtLWhlbHAgcGEgb2J0ZW5lciBhaWRhIGQnZXN0YSBmZXJyYW1pZW50YS4iCisKKyM6IHNyYy90cmlnY21kLmM6NTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiAlcyBwYWNrYWdlIHRyaWdnZXIgdXRpbGl0eSB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICJGZXJyYW1pZW50YSBkZSBkaXNwYXJhZG9yZXMgZGUgRGViaWFuIGAlcydcbiIKKworIzogc3JjL3RyaWdjbWQuYzo2NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9ucz4gLi4uXSA8dHJpZ2dlci1uYW1lPlxuIgorIiAgICAgICAlcyBbPG9wdGlvbnM+IC4uLl0gPGNvbW1hbmQ+XG4iCisiXG4iCittc2dzdHIgIiIKKyJNb3UgZCd1c3U6ICVzIFs8b3BjaW9uZXM+IC4uLl0gPG5vbWUtZGlzcGFyYWRvcj5cbiIKKyIgICAgICAgICAgICAgJXMgWzxvcGNpb25lcz4gLi4uXSA8b3JkZT5cbiIKKyJcbiIKKworIzogc3JjL3RyaWdjbWQuYzo3MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtLWNoZWNrLXN1cHBvcnRlZCAgICAgICAgICAgICAgICBDaGVjayBpZiB0aGUgcnVubmluZyBkcGtnIHN1cHBvcnRzICIKKyJ0cmlnZ2Vycy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIsOTcmRlbmVzOlxuIgorIiAgLS1jaGVjay1zdXBwb3J0ZWQgICAgICAgICAgICAgICAgICAgICBDb21wcmViYSBzaSdsIHByb2dyYW1hIGRwa2cgc29wb3J0YSAiCisiZGlzcGFyYWRvcmVzLlxuIgorIlxuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjgyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hZG1pbmRpcj08ZGlyZWN0b3J5PiAgICAgICAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMuXG4iCisiICAtLWJ5LXBhY2thZ2U9PHBhY2thZ2U+ICAgICAgICAgICBPdmVycmlkZSB0cmlnZ2VyIGF3YWl0ZXIgKG5vcm1hbGx5IHNldFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBieSBkcGtnKS5cbiIKKyIgIC0tbm8tYXdhaXQgICAgICAgICAgICAgICAgICAgICAgIE5vIHBhY2thZ2UgbmVlZHMgdG8gYXdhaXQgdGhlICIKKyJwcm9jZXNzaW5nLlxuIgorIiAgLS1uby1hY3QgICAgICAgICAgICAgICAgICAgICAgICAgSnVzdCB0ZXN0IC0gZG9uJ3QgYWN0dWFsbHkgY2hhbmdlICIKKyJhbnl0aGluZy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIk9wY2lvbmVzOlxuIgorIiAgLS1hZG1pbmRpcj08ZGlyZXV0b3JpdT4gICAgICAgICAgVXNhIDxkaXJldXRvcml1PiBuJ2FycsOzdSBkZSAlcy5cbiIKKyIgIC0tYnktcGFja2FnZT08cGFxdWV0ZT4gICAgICAgICAgIEV2aXRhIGxhIGVzcGVyYSBkZSBkaXNwYXJhZG9yZXMgIgorIih4ZW5lcmFsbWVudGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpeMOhdSBwb3IgZHBrZykuXG4iCisiICAtLW5vLWF3YWl0ICAgICAgICAgICAgICAgICAgICAgICBEZW5nw7puIHBhcXVldGUgdGllbiBxdSdlc3BlcmFyIGFsICIKKyJwcm9jZXPDoXUuXG4iCisiICAtLW5vLWFjdCAgICAgICAgICAgICAgICAgICAgICAgICBOYW3DoWkgcHJlYmFyLCBudW4gY2FtdWRhciByZW4gcmVhbG1lbnRlLlxuIgorIlxuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogdHJpZ2dlcnMgZGF0YSBkaXJlY3Rvcnkgbm90IHlldCBjcmVhdGVkXG4iCittc2dzdHIgIiVzOiBlbCBkaXJldXRvcml1IGRlIGRhdG9zIGRlIGRpc3BhcmFkb3JlcyBlbnTDoSBudW4gc2UgY3Jpw7NcbiIKKworIzogc3JjL3RyaWdjbWQuYzoxNTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IHRyaWdnZXIgcmVjb3JkcyBub3QgeWV0IGluIGV4aXN0ZW5jZVxuIgorbXNnc3RyICIlczogZW50w6EgbnVuIGVzaXN0ZW4gcmV4aXN0cm9zIGRlIGRpc3BhcmFkb3Jlc1xuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIwNQorbXNnaWQgInRha2VzIG9uZSBhcmd1bWVudCwgdGhlIHRyaWdnZXIgbmFtZSIKK21zZ3N0ciAiZHBrZy10cmlnZ2VyIHRvbWEgbmFtw6FzIHVuIGFyZ3VtZW50byIKKworIzogc3JjL3RyaWdjbWQuYzoyMTAKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgImRwa2ctdHJpZ2dlciBtdXN0IGJlIGNhbGxlZCBmcm9tIGEgbWFpbnRhaW5lciBzY3JpcHQgKG9yIHdpdGggYSAtLWJ5LSIKKyN8ICJwYWNrYWdlIG9wdGlvbikiCittc2dpZCAibXVzdCBiZSBjYWxsZWQgZnJvbSBhIG1haW50YWluZXIgc2NyaXB0IChvciB3aXRoIGEgLS1ieS1wYWNrYWdlIG9wdGlvbikiCittc2dzdHIgIiIKKyJkcGtnLXRyaWdnZXIgaGEgbGxhbWFzZSBkZW5kZSB1biBwcm9ncmFtYSBkJ3VuIGRlc2VuZG9sY2Fkb3IgKG8gY29sYSBvcGNpw7NuICIKKyItLWJ5LXBhY2thZ2UpIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIxNQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZHBrZy10cmlnZ2VyOiBpbGxlZ2FsIGF3YWl0ZWQgcGFja2FnZSBuYW1lIGAlLjI1MHMnOiAlLjI1MHMiCittc2dpZCAiaWxsZWdhbCBhd2FpdGVkIHBhY2thZ2UgbmFtZSAnJS4yNTBzJzogJS4yNTBzIgorbXNnc3RyICJkcGtnLXRyaWdnZXI6IG5vbWUgZGUgcGFxdWV0ZSBlc3BlcsOhdSBpbGxlZ2FsIGAlLjI1MHMnOiAlLjI1MHMiCisKKyM6IHNyYy90cmlnY21kLmM6MjIxCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgdHJpZ2dlciBuYW1lIGAlLjI1MHMnOiAlLjI1MHMiCittc2dzdHIgIm5vbWUgZGUgZGlzcGFyYWRvciBpbnbDoWxpZHUgYCUuMjUwcyc6ICUuMjUwcyIKKworIzogc3JjL3RyaWdwcm9jLmM6MjUwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogY3ljbGUgZm91bmQgd2hpbGUgcHJvY2Vzc2luZyB0cmlnZ2VyczpcbiIKKyIgY2hhaW4gb2YgcGFja2FnZXMgd2hvc2UgdHJpZ2dlcnMgYXJlIG9yIG1heSBiZSByZXNwb25zaWJsZTpcbiIKK21zZ3N0ciAiIgorIiVzOiBhbGNvbnRyw7NzZSB1biBidWNsZSBhbCBwcm9jZXNhciBsb3MgZGlzcGFyYWRvcmVzOlxuIgorIiBsYSBjYWRlbmEgZGUgcGFxdWV0ZXMgY3V5b3MgZGlzcGFyYWRvcmVzIHNvbiBvIHB1ZWRlbiBzZXIgcmVzcG9uc2FibGVzOlxuIgorCisjOiBzcmMvdHJpZ3Byb2MuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiBwYWNrYWdlcycgcGVuZGluZyB0cmlnZ2VycyB3aGljaCBhcmUgb3IgbWF5IGJlIHVucmVzb2x2YWJsZTpcbiIKK21zZ3N0ciAiIgorIlxuIgorIiBkaXNwYXJhZG9yZXMgcGVuZGllbnRlcyBkZSBwYXF1ZXRlcyBxdWUgbnVuIHNvbiBvIHB1ZWRlbiBudW4gc2VyICIKKyJyZXNvbHVibGVzOlxuIgorCisjOiBzcmMvdHJpZ3Byb2MuYzoyODEKK21zZ2lkICJ0cmlnZ2VycyBsb29waW5nLCBhYmFuZG9uZWQiCittc2dzdHIgImxvcyBkaXNwYXJhZG9yZXMgZW50cmFyb24gZW4gYnVjbGUsIGRlc2RleGFuZG8iCisKKyM6IHNyYy90cmlncHJvYy5jOjMxMgorIywgYy1mb3JtYXQKK21zZ2lkICJQcm9jZXNzaW5nIHRyaWdnZXJzIGZvciAlcyAuLi5cbiIKK21zZ3N0ciAiUHJvY2VzYW5kbyBkaXNwYXJhZG9yZXMgcGEgJXMgLi4uXG4iCisKKyM6IHNyYy91cGRhdGUuYzo1MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiLS0lcyBuZWVkcyBleGFjdGx5IG9uZSBQYWNrYWdlcyBmaWxlIGFyZ3VtZW50IgorbXNnaWQgIi0tJXMgbmVlZHMgZXhhY3RseSBvbmUgUGFja2FnZXMtZmlsZSBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyBuZWNlc2l0YSBlc2F1dGFtZW50ZSB1biBmaWNoZXJ1IGRlIFBhcXVldGVzIGNvbW8gYXJndW1lbnR1IgorCisjOiBzcmMvdXBkYXRlLmM6NjIKK21zZ2lkICJ1bmFibGUgdG8gYWNjZXNzIGRwa2cgc3RhdHVzIGFyZWEgZm9yIGJ1bGsgYXZhaWxhYmxlIHVwZGF0ZSIKK21zZ3N0ciAiIgorIm51biBwdWVkZSBhY2NlZGVzZSBhbCDDoXJlYSBkJ2VzdMOhdSBkZSBkcGtnIHBhIHVuIGFub3ZhbWllbnR1XG4iCisiZGUgYGF2YWlsYWJsZSciCisKKyM6IHNyYy91cGRhdGUuYzo2NAorbXNnaWQgImJ1bGsgYXZhaWxhYmxlIHVwZGF0ZSByZXF1aXJlcyB3cml0ZSBhY2Nlc3MgdG8gZHBrZyBzdGF0dXMgYXJlYSIKK21zZ3N0ciAiIgorImwnYW5vdmFtaWVudHUgZGUgYGF2YWlsYWJsZScgcmVxdWllciBhY2Nlc3UgZCcgZXNjcml0dXJhIGFsIMOhcmVhIGQnZXN0w6F1XG4iCisiZGUgZHBrZyIKKworIzogc3JjL3VwZGF0ZS5jOjcxCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlcGxhY2luZyBhdmFpbGFibGUgcGFja2FnZXMgaW5mbywgdXNpbmcgJXMuXG4iCittc2dzdHIgIlRyb2NhbmRvIGluZm9ybWFjacOzbiBkZSBwYXF1ZXRlcyBkaXNwb25pYmxlcywgdXNhbmRvICVzLlxuIgorCisjOiBzcmMvdXBkYXRlLmM6NzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiVXBkYXRpbmcgYXZhaWxhYmxlIHBhY2thZ2VzIGluZm8sIHVzaW5nICVzLlxuIgorbXNnc3RyICJBbm92YW5kbyBpbmZvcm1hY2nDs24gZGUgcGFxdWV0ZXMgZGlzcG9uaWJsZXMsIHVzYW5kbyAlcy5cbiIKKworIzogc3JjL3VwZGF0ZS5jOjEwMQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiSW5mb3JtYXRpb24gYWJvdXQgJWQgcGFja2FnZShzKSB3YXMgdXBkYXRlZC5cbiIKK21zZ2lkICJJbmZvcm1hdGlvbiBhYm91dCAlZCBwYWNrYWdlIHdhcyB1cGRhdGVkLlxuIgorbXNnaWRfcGx1cmFsICJJbmZvcm1hdGlvbiBhYm91dCAlZCBwYWNrYWdlcyB3YXMgdXBkYXRlZC5cbiIKK21zZ3N0clswXSAiTGEgaW5mb3JtYWNpw7NuIHNvYnJvICVkIHBhcXVldGUocykgYW5vdsOzc2UuXG4iCittc2dzdHJbMV0gIkxhIGluZm9ybWFjacOzbiBzb2JybyAlZCBwYXF1ZXRlKHMpIGFub3bDs3NlLlxuIgorCisjOiBzcmMvdXBkYXRlLmM6MTE1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJvYnNvbGV0ZSAnLS0lcycgb3B0aW9uLCB1bmF2YWlsYWJsZSBwYWNrYWdlcyBhcmUgYXV0b21hdGljYWxseSBjbGVhbmVkIHVwLiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIG5hbWUgJyUuNTBzLi4uJyBpcyB0b28gbG9uZyIKK21zZ3N0ciAiZWwgbm9tZSBkZSBmaWNoZXJ1ICclLjUwcy4uLicgeWUgZW5mb3JtYSBsbGFyZ3UiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTI5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBmaWxlIG5hbWUgJyUuMjUwcyciCittc2dzdHIgIm51biBzZSBwdWVkZSBhYnJpciBlbCBmaWNoZXJ1IGZvbnRlIGAlLjI1MHMnIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjE4OQorbXNnaWQgInVuYWJsZSB0byBzdGF0IGNvbnRyb2wgZGlyZWN0b3J5IgorbXNnc3RyICJudW4gcHVlZGUgYWJyaXNlIGRpcmV1dG9yaXUgZGUgY29udHJvbCB0ZW1wb3JhbCIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoxOTEKK21zZ2lkICJjb250cm9sIGRpcmVjdG9yeSBpcyBub3QgYSBkaXJlY3RvcnkiCittc2dzdHIgIm51biBwdWVkZSBsbGVlc2UnbCBkaXJldXRvcml1IGluZm8iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTkzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbnRyb2wgZGlyZWN0b3J5IGhhcyBiYWQgcGVybWlzc2lvbnMgJTAzbG8gKG11c3QgYmUgPj0wNzU1IGFuZCA8PTA3NzUpIgorbXNnc3RyICIiCisiZWwgZGlyZXV0b3JpdSBkZSBjb250cm9sIHRpZW4gcGVybWlzb3MgZXJyw7NuZW9zICUwM2xvXG4iCisiKHRpZW4gZGUgc2VyID49MDc1NSB5IDw9MDc3NSkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjA0CisjLCBjLWZvcm1hdAorbXNnaWQgIm1haW50YWluZXIgc2NyaXB0IGAlLjUwcycgaXMgbm90IGEgcGxhaW4gZmlsZSBvciBzeW1saW5rIgorbXNnc3RyICJlbCBzY3JpcHQgYCUuNTBzJyBudW4geWUgdW4gZmljaGVydSBub3JtYWwgbyB1biBlbmxsYXogc2ltYsOzbGljdSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyMDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm1haW50YWluZXIgc2NyaXB0IGAlLjUwcycgaGFzIGJhZCBwZXJtaXNzaW9ucyAlMDNsbyAobXVzdCBiZSA+PTA1NTUgYW5kICIKKyI8PTA3NzUpIgorbXNnc3RyICIiCisiZWwgc2NyaXB0IGAlLjUwcycgdGllbiBwZXJtaXNvcyBlcnLDs25lb3MgJTAzbG9cbiIKKyIodGllbiBkZSBzZXIgPj0wNTU1IHkgPD0wNzc1KSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAibWFpbnRhaW5lciBzY3JpcHQgYCUuNTBzJyBpcyBub3Qgc3RhdHRhYmxlIgorbXNnc3RyICJudW4gcHVlZGUgZWZldXR1YXNlIGBzdGF0JyBzb2JybydsIHNjcmlwdCBgJS41MHMnIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjIzNworbXNnaWQgImVycm9yIG9wZW5pbmcgY29uZmZpbGVzIGZpbGUiCittc2dzdHIgImZhbGx1IGFsIGFicmlyIGVsIGZpY2hlcnUgZGUgY29uZmZpbGVzIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI0NgorbXNnaWQgImVtcHR5IHN0cmluZyBmcm9tIGZnZXRzIHJlYWRpbmcgY29uZmZpbGVzIgorbXNnc3RyICJjYWRlbmEgZXJtYSBkZSBmZ2V0cyBhbCBsbGVlciBjb25mZmlsZXMiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjUxCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIG5hbWUgJyUuNTBzLi4uJyBpcyB0b28gbG9uZywgb3IgbWlzc2luZyBmaW5hbCBuZXdsaW5lIgorbXNnc3RyICIiCisiZWwgbm9tZSBkZSBjb25mZmlsZSAnJS41MHMuLi4nIHllIGVuZm9ybWEgbGxhcmd1LCBvIGbDoWx0YS15IGVsIGZpbmFsIGRlICIKKyJudWV2YSBsbGluaWEiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjY0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIGZpbGVuYW1lICclcycgY29udGFpbnMgdHJhaWxpbmcgd2hpdGUgc3BhY2VzIgorbXNnc3RyICJlbCBjb25mZmlsZSAnJXMnIGNvbnRpw6luIGVzcGFjaW9zIGVuIGJsYW5jdSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgYCUuMjUwcycgZG9lcyBub3QgYXBwZWFyIGluIHBhY2thZ2UiCittc2dzdHIgImVsIGNvbmZmaWxlIGAlLjI1MHMnIG51biBhcGFleiBkaWVudHJvIGRlbCBwYXF1ZXRlIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI2OAorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBgJS4yNTBzJyBpcyBub3Qgc3RhdHRhYmxlIgorbXNnc3RyICJudW4gcHVlZGUgZWZldXR1YXNlIGBzdGF0JyBzb2JybydsIGNvbmZmaWxlIGAlLjI1MHMnIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI3MAorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSAnJXMnIGlzIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgImNvbmZmaWxlICclcycgbnVuIHllIHVuIGZpY2hlcnUgcGxhbnUiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6Mjc0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBuYW1lICclcycgaXMgZHVwbGljYXRlZCIKK21zZ3N0ciAiZWwgbm9tZSBlc2NsYXZ1ICVzIHRhIGR1cGxpY8OhdSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyODcKK21zZ2lkICJlcnJvciByZWFkaW5nIGNvbmZmaWxlcyBmaWxlIgorbXNnc3RyICJmYWxsdSBhbCBsbGVlciBlbCBmaWNoZXJ1IGRlIGNvbmZmaWxlcyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzozMzkKK21zZ2lkICJwYWNrYWdlIG5hbWUgaGFzIGNoYXJhY3RlcnMgdGhhdCBhcmVuJ3QgbG93ZXJjYXNlIGFscGhhbnVtcyBvciBgLSsuJyIKK21zZ3N0ciAiIgorImVsIG5vbWUgZGVsIHBhcXVldGUgdGllbiBjYXJhdXRlcmVzIHF1ZSBudW4gc29uIG1pbsO6c2N1bGVzLCBhbGZhbnVtw6lyaWNvc1xuIgorIm8gYC0rLiciCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MzQxCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgY29udGFpbnMgdXNlci1kZWZpbmVkIFByaW9yaXR5IHZhbHVlICclcyciCittc2dzdHIgIiclcycgY29udGnDqW4gdW4gdmFsb3IgUHJpb3JpdHkgJyVzJyBkZWZpbsOtdSBwb2wgdXN1YXJpdSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzozNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBjb250YWlucyB1c2VyLWRlZmluZWQgZmllbGQgJyVzJyIKK21zZ3N0ciAiJyVzJyBjb250acOpbiB1biBjYW1wdSAnJXMnIGRlZmluw611IHBvbCB1c3Vhcml1IgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjM1OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgJWQgd2FybmluZyBhYm91dCB0aGUgY29udHJvbCBmaWxlKHMpXG4iCittc2dpZF9wbHVyYWwgImlnbm9yaW5nICVkIHdhcm5pbmdzIGFib3V0IHRoZSBjb250cm9sIGZpbGUocylcbiIKK21zZ3N0clswXSAiIgorImRwa2ctZGViOiBudW4gdGVuZHLDoW5zZSBlbiBjdWVudGEgJWQgYXZpc29zIHNvYnJvIGxvcyBmaWNoZXJvcyBkZSBjb250cm9sXG4iCittc2dzdHJbMV0gIiIKKyJkcGtnLWRlYjogbnVuIHRlbmRyw6Fuc2UgZW4gY3VlbnRhICVkIGF2aXNvcyBzb2JybyBsb3MgZmljaGVyb3MgZGUgY29udHJvbFxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQwMyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQyOQorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhIDxkaXJlY3Rvcnk+IGFyZ3VtZW50IgorbXNnc3RyICItLSVzIG5lY2VzaXRlcyB1biBkaXJlY3Rvcml1IGNvbW8gcGFyw6FtZXRydSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MDkKK21zZ2lkICItLWJ1aWxkIHRha2VzIGF0IG1vc3QgdHdvIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS1idWlsZCBsbGV2YSB0b2xvIG3DoXMsIGRvcyBwYXLDoW1ldHJvcyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoZWNrIGZvciBleGlzdGVuY2Ugb2YgYXJjaGl2ZSBgJS4yNTBzJyIKK21zZ3N0ciAibnVuIHB1ZWRlIGNvbXByZWJhc2UgbGEgZXNpc3RlbmNpYSBkZWwgZmljaGVydSBgJS4yNTBzJyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzAKK21zZ2lkICJ0YXJnZXQgaXMgZGlyZWN0b3J5IC0gY2Fubm90IHNraXAgY29udHJvbCBmaWxlIGNoZWNrIgorbXNnc3RyICIiCisibCdveGV0aXZ1IHllIHVuIGRpcmV1dG9yaXUgLSBudW4gcHVlZGUgb21pdGlzZSBsYSBjb21wcmViYWNpw7NuIGRlbCBmaWNoZXJ1XG4iCisiZGUgY29udHJvbCIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzEKK21zZ2lkICJub3QgY2hlY2tpbmcgY29udGVudHMgb2YgY29udHJvbCBhcmVhLiIKK21zZ3N0ciAibm9uIHRlc3RpYW5kbyBjb250ZW7DrW9zIGQnw6FyZWEgZGUgY29udHJvbCIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZy1kZWI6IGJ1aWxkaW5nIGFuIHVua25vd24gcGFja2FnZSBpbiAnJXMnLlxuIgorbXNnc3RyICJjb25zdHJ1eWVuZG8gcGFxdWV0ZSBkZXNjb25vY8OtdSBlbiAnJXMnLlxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQzOQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnLWRlYjogYnVpbGRpbmcgcGFja2FnZSBgJXMnIGluIGAlcycuXG4iCittc2dzdHIgImRwa2ctZGViOiBjb25zdHJ1eWVuZG8nbCBwYXF1ZXRlIGAlcycgZW4gYCVzJy5cbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0NjcgZHBrZy1kZWIvYnVpbGQuYzo1MjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byBtYWtlIHRtcGZpbGUgKGRhdGEpIgorbXNnaWQgImZhaWxlZCB0byBtYWtlIHRlbXBvcmFyeSBmaWxlICglcykiCittc2dzdHIgImZhbGzDsyBhbCBjcmlhciBlbCBmaWNoZXJ1IHRlbXBvcmFsIChkYXRhKSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0NjcgZHBrZy1kZWIvYnVpbGQuYzo0NzAgZHBrZy1kZWIvYnVpbGQuYzo0NzcKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDg1IGRwa2ctZGViL2J1aWxkLmM6NDk0IGRwa2ctZGViL2J1aWxkLmM6NDk5CisjLCBmdXp6eQorI3wgbXNnaWQgImNvbnRyb2wgYXJlYSIKK21zZ2lkICJjb250cm9sIG1lbWJlciIKK21zZ3N0ciAiZXN0YXlhIGRlIGNvbnRyb2wiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDcwIGRwa2ctZGViL2J1aWxkLmM6NTI0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gdW5saW5rIHRtcGZpbGUgKGRhdGEpLCAlcyIKK21zZ2lkICJmYWlsZWQgdG8gdW5saW5rIHRlbXBvcmFyeSBmaWxlICglcyksICVzIgorbXNnc3RyICJmYWxsw7MgYWwgZGVzYW5pY2lhciBlbCBmaWNoZXJ1IHRlbXBvcmFsIChkYXRhKSwgJXMiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDg1IGRwa2ctZGViL2J1aWxkLmM6NTkzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gcmV3aW5kIHRtcGZpbGUgKGRhdGEpIgorbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdGVtcG9yYXJ5IGZpbGUgKCVzKSIKK21zZ3N0ciAiZmFsbMOzIGFsIGVmZXV0dWFyIGByZXdpbmQnIHNvYnJvJ2wgZmljaGVydSB0ZW1wb3JhbCAoZGF0YSkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDk0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gZnN0YXQgdG1wZmlsZSAoZGF0YSkiCittc2dpZCAiZmFpbGVkIHRvIHN0YXQgdGVtcG9yYXJ5IGZpbGUgKCVzKSIKK21zZ3N0ciAiZmFsbMOzIGFsIGNyaWFyIGVsIGZpY2hlcnUgdG1wZmlsZSAoZGF0YSkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDk4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHdyaXRpbmcgYCVzJyIKK21zZ3N0ciAiZmFsbHUgYWwgZXNjcmliaXIgYCVzJyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo1MjEgZHBrZy1kZWIvYnVpbGQuYzo1MjQgZHBrZy1kZWIvYnVpbGQuYzo1NDYKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTcyIGRwa2ctZGViL2J1aWxkLmM6NTgwIGRwa2ctZGViL2J1aWxkLmM6NTkzCisjLCBmdXp6eQorI3wgbXNnaWQgImJldHdlZW4gbWVtYmVycyIKK21zZ2lkICJkYXRhIG1lbWJlciIKK21zZ3N0ciAiZW50ZSBuw7ptYmVyb3MiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTcxIGRwa2ctZGViL2J1aWxkLmM6NTgwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gd3JpdGUgZmlsZW5hbWUgdG8gdGFyIHBpcGUgKGRhdGEpIgorbXNnaWQgImZhaWxlZCB0byB3cml0ZSBmaWxlbmFtZSB0byB0YXIgcGlwZSAoJXMpIgorbXNnc3RyICJmYWxsw7MgYWwgZXNjcmliaXIgZWwgbm9tZSBkZWwgZmljaGVydSBuYSB0dWJlcsOtYSBkZSB0YXIgKGRhdGEpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjU4NAorbXNnaWQgIjxjb21wcmVzcz4gZnJvbSB0YXIgLWNmIgorbXNnc3RyICI8Y29tcHJlc3M+IGRlbmRlIHRhciAtY2YiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzo2MSBkcGtnLWRlYi9leHRyYWN0LmM6NjMKK21zZ2lkICJzaGVsbCBjb21tYW5kIHRvIG1vdmUgZmlsZXMiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjcwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGZpbGUgaW4gJXMgaW4gJS4yNTVzIgorbXNnc3RyICJmaW4gZGUgZmljaGVydSBpbmVzcGVyw6F1IGVuICVzIGVuICUuMjU1cyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHJlYWRpbmcgJXMgZnJvbSBmaWxlICUuMjU1cyIKK21zZ3N0ciAiZmFsbHUgYWwgbGxlZXIgJXMgZGVsIGZpY2hlcnUgJS4yNTVzIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTI1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZWFkIGFyY2hpdmUgYCUuMjU1cyciCittc2dzdHIgImZhbGzDsyBhbCBsbGVlciBlbCBmaWNoZXJ1IGAlLjI1NXMnIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTI3Cittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGFyY2hpdmUiCittc2dzdHIgImZhbGzDsyBhbCBlZmV1dHVhciBgZnN0YXQnIHNvYnJvJ2wgZmljaGVydSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjEzMQorIywgZnV6enkKKyN8IG1zZ2lkICJhcmNoaXZlIGhhcyBubyBkb3QgaW4gdmVyc2lvbiBudW1iZXIiCittc2dpZCAiYXJjaGl2ZSBtYWdpYyB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAiZWwgZmljaGVydSBudW4gdGllbiBkZW5nw7puIHB1bnR1IG5lbCBuw7ptYmVydSBkZSB2ZXJzacOzbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE0MworIywgZnV6enkKKyN8IG1zZ2lkICJhcmNoaXZlIGhhcyBubyBuZXdsaW5lcyBpbiBoZWFkZXIiCittc2dpZCAiYXJjaGl2ZSBtZW1iZXIgaGVhZGVyIgorbXNnc3RyICJlbCBmaWNoZXJ1IG51biB0aWVuIGNhcmF1dGVyZXMgZGUgbnVldmEgbGxpbmlhIG5hIGNhYmVjZXJhIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTQ4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgcGFydCBudW1iZXIiCittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIGFyY2hpdmUgaGVhZGVyIG1hZ2ljIgorbXNnc3RyICJlbCBmaWNoZXJ1IGAlLjI1MHMnIHRhIGZyYcOxw6F1IC0gbsO6bWJlcnUgZGUgcGFydGUgZXJyw7NuZXUiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBub3QgYSBkZWJpYW4gYmluYXJ5IGFyY2hpdmUgKHRyeSBkcGtnLXNwbGl0PykiCittc2dzdHIgImVsIGZpY2hlcnUgYCUuMjUwcycgbnVuIHllIHVuIGZpY2hlcnUgYmluYXJpdSBkZSBkZWJpYW4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNTkKKyMsIGZ1enp5CisjfCBtc2dpZCAiYXJjaGl2ZSBoYXMgbm8gZG90IGluIHZlcnNpb24gbnVtYmVyIgorbXNnaWQgImFyY2hpdmUgaW5mb3JtYXRpb24gaGVhZGVyIG1lbWJlciIKK21zZ3N0ciAiZWwgZmljaGVydSBudW4gdGllbiBkZW5nw7puIHB1bnR1IG5lbCBuw7ptYmVydSBkZSB2ZXJzacOzbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE2MgorbXNnaWQgImFyY2hpdmUgaGFzIG5vIG5ld2xpbmVzIGluIGhlYWRlciIKK21zZ3N0ciAiZWwgZmljaGVydSBudW4gdGllbiBjYXJhdXRlcmVzIGRlIG51ZXZhIGxsaW5pYSBuYSBjYWJlY2VyYSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE2NQorbXNnaWQgImFyY2hpdmUgaGFzIG5vIGRvdCBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAiZWwgZmljaGVydSBudW4gdGllbiBkZW5nw7puIHB1bnR1IG5lbCBuw7ptYmVydSBkZSB2ZXJzacOzbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE2OAorIywgYy1mb3JtYXQKK21zZ2lkICJhcmNoaXZlIHZlcnNpb24gJS4yNTBzIG5vdCB1bmRlcnN0b29kLCBnZXQgbmV3ZXIgZHBrZy1kZWIiCittc2dzdHIgIiIKKyJudW4gcydlbnRpZW5kZSBsYSB2ZXJzacOzbiAlLjI1MHMgZGVsIGZpY2hlcnUsIGbDoWlnYXNlIHVuXG4iCisiZHBrZy1kZWIgbcOhcyBtb2Rlcm51IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTc5IGRwa2ctZGViL2V4dHJhY3QuYzoyMDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInNraXBwZWQgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ2lkICJza2lwcGVkIGFyY2hpdmUgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ3N0ciAic8OhbHRhc2UgbCdlbGVtZW50dSBkZSAlcyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE5NAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZSBgJS4yNTBzJyBjb250YWlucyB1bnVuZGVyc3Rvb2QgZGF0YSBtZW1iZXIgJS4qcywgZ2l2aW5nIHVwIgorbXNnaWQgImFyY2hpdmUgJyUuMjUwcycgY29udGFpbnMgbm90IHVuZGVyc3Rvb2QgZGF0YSBtZW1iZXIgJS4qcywgZ2l2aW5nIHVwIgorbXNnc3RyICJlbCBmaWNoZXJ1IGAlLjI1MHMnIGNvbnRpw6luIHVuIG1pZW1icnUgJS4qcyBpbmludGVsaXhpYmxlLCBhYmFuZG9udSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE5OQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZSBgJS4yNTBzJyBjb250YWlucyB0d28gY29udHJvbCBtZW1iZXJzLCBnaXZpbmcgdXAiCittc2dpZCAiYXJjaGl2ZSAnJS4yNTBzJyBjb250YWlucyB0d28gY29udHJvbCBtZW1iZXJzLCBnaXZpbmcgdXAiCittc2dzdHIgImVsIGZpY2hlcnUgYCUuMjUwcycgY29udGnDqW4gZG9zIG1pZW1icm9zIGRlIGNvbnRyb2wsIGFiYW5kb251IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjE0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiIG5ldyBkZWJpYW4gcGFja2FnZSwgdmVyc2lvbiAlcy5cbiIKKyN8ICIgc2l6ZSAlbGQgYnl0ZXM6IGNvbnRyb2wgYXJjaGl2ZT0gJXppIGJ5dGVzLlxuIgorbXNnaWQgIiIKKyIgbmV3IGRlYmlhbiBwYWNrYWdlLCB2ZXJzaW9uICVzLlxuIgorIiBzaXplICVqZCBieXRlczogY29udHJvbCBhcmNoaXZlPSAlamQgYnl0ZXMuXG4iCittc2dzdHIgIiIKKyIgcGFxdWV0ZSBkZWJpYW4gbnVldnUsIHZlcnNpw7NuICVzLlxuIgorIiB0YW1hw7F1ICVsZCBieXRlczogZmljaGVydSBkZSBjb250cm9sPSAlemkgYnl0ZXMuXG4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyMzIKK21zZ2lkICJhcmNoaXZlIGNvbnRyb2wgbWVtYmVyIHNpemUiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIzNQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYXJjaGl2ZSBoYXMgbWFsZm9ybWF0dGVkIGNvbnRyb2wgbGVuZ3RoIGAlcyciCittc2dpZCAiYXJjaGl2ZSBoYXMgbWFsZm9ybWF0dGVkIGNvbnRyb2wgbWVtYmVyIHNpemUgJyVzJyIKK21zZ3N0ciAiZWwgZmljaGVydSB0aWVuIHVuYSBsbG9ueGl0w7ogZGUgY29udHJvbCBtYWwgZm9ybWFkYSBgJXMnIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjQyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJza2lwcGVkIG1lbWJlciBkYXRhIGZyb20gJXMiCittc2dpZCAic2tpcHBlZCBhcmNoaXZlIGNvbnRyb2wgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ3N0ciAic8OhbHRhc2UgbCdlbGVtZW50dSBkZSAlcyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI0NgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiBvbGQgZGViaWFuIHBhY2thZ2UsIHZlcnNpb24gJXMuXG4iCisjfCAiIHNpemUgJWxkIGJ5dGVzOiBjb250cm9sIGFyY2hpdmU9ICV6aSwgbWFpbiBhcmNoaXZlPSAlbGQuXG4iCittc2dpZCAiIgorIiBvbGQgZGViaWFuIHBhY2thZ2UsIHZlcnNpb24gJXMuXG4iCisiIHNpemUgJWpkIGJ5dGVzOiBjb250cm9sIGFyY2hpdmU9ICVqZCwgbWFpbiBhcmNoaXZlPSAlamQuXG4iCittc2dzdHIgIiIKKyIgcGFxdWV0ZSBkZWJpYW4gYW50aWd1dSwgdmVyc2nDs24gJXMuXG4iCisiIHRhbWHDsXUgJWxkIGJ5dGVzOiBmaWNoZXJ1IGRlIGNvbnRyb2w9ICV6aSwgZmljaGVydSBwcmluY2lwYWw9ICVsZC5cbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI1NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZy1kZWI6IGZpbGUgbG9va3MgbGlrZSBpdCBtaWdodCBiZSBhbiBhcmNoaXZlIHdoaWNoIGhhcyBiZWVuXG4iCisiZHBrZy1kZWI6ICAgIGNvcnJ1cHRlZCBieSBiZWluZyBkb3dubG9hZGVkIGluIEFTQ0lJIG1vZGVcbiIKK21zZ3N0ciAiIgorImRwa2ctZGViOiBlbCBmaWNoZXJ1IHRpZW4gcGludGEgZGUgc2VyIHVuIGZpY2hlcnUgcXVlIGZvaSBmcmHDscOhdVxuIgorImRwa2ctZGViICAgICBhbCBzZXIgdHJlc2ZlcsOtdSBlbiBtb3UgQVNDSUlcbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI1OQorIywgYy1mb3JtYXQKK21zZ2lkICJgJS4yNTVzJyBpcyBub3QgYSBkZWJpYW4gZm9ybWF0IGFyY2hpdmUiCittc2dzdHIgImAlLjI1NXMnIG51biB5ZSB1biBmaWNoZXJ1IGVuIGZvcm1hdHUgZGViaWFuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjY2Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIHRvIHBpcGUgaW4gY29weSIKK21zZ3N0ciAiZmFsbMOzIGFsIGVzY3JpYmlyIGEgbGEgdHViZXLDrWEgbmEgY29waWEiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNjgKK21zZ2lkICJmYWlsZWQgdG8gY2xvc2UgcGlwZSBpbiBjb3B5IgorbXNnc3RyICJmYWxsw7MgYWwgemFycmFyIGxhIHR1YmVyw61hIG5hIGNvcGlhIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6Mjg0Cittc2dpZCAiZGF0YSIKK21zZ3N0ciAiZGF0b3MiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozMDcKK21zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gZGlyZWN0b3J5IgorbXNnc3RyICJmYWxsw7MgYWwgY2FtdWRhciBhbCBkaXJldXRvcml1IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzEwCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBkaXJlY3RvcnkiCittc2dzdHIgImZhbGzDsyBhbCBjcmVhciBkaXJldXRvcml1IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzEyCittc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIGRpcmVjdG9yeSBhZnRlciBjcmVhdGluZyBpdCIKK21zZ3N0ciAiZmFsbMOzIGFsIGNhbXVkYXIgYSB1biBkaXJldXRvcml1IGRlbXB1w6lzIGRlIGNyaWFsdSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMyMworbXNnaWQgIjxkZWNvbXByZXNzPiIKK21zZ3N0ciAiPGRlc2NvbXByZXNpw7NuPiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMyNQorbXNnaWQgInBhc3RlIgorbXNnc3RyICJhcGVnYXIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozNDIgZHBrZy1kZWIvZXh0cmFjdC5jOjM2MyBkcGtnLWRlYi9leHRyYWN0LmM6NDAyCisjOiBkcGtnLWRlYi9pbmZvLmM6NzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhIC5kZWIgZmlsZW5hbWUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMgbmVjZXNpdGEgdW4gbm9tZSBkZSBmaWNoZXJ1IC5kZWIgY29tbyBhcmd1bWVudHUiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozNDcgZHBrZy1kZWIvZXh0cmFjdC5jOjQwNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiLS0lcyBuZWVkcyBhIHRhcmdldCBkaXJlY3RvcnkuXG4iCisiUGVyaGFwcyB5b3Ugc2hvdWxkIGJlIHVzaW5nIGRwa2cgLS1pbnN0YWxsID8iCittc2dzdHIgIiIKKyItLSVzIG5lY2VzaXRhIHVuIGRpcmV1dG9yaXUgZGUgZGVzdMOtbi5cbiIKKyLCv0EgbG8gbWV5b3IgbG8gcXVlIHF1aWVyIGZhY2VyIHllIGRwa2cgLS1pbnN0YWxsPyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjM1MCBkcGtnLWRlYi9leHRyYWN0LmM6NDEwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgYXQgbW9zdCB0d28gYXJndW1lbnRzICguZGViIGFuZCBkaXJlY3RvcnkpIgorbXNnc3RyICItLSVzIHRvbWEgY29tbyBtdW5jaG8gZG9zIGFyZ3VtZW50b3MgKC5kZWIgeSBkaXJldXRvcml1KSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjM2NQorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIHRha2VzIG9ubHkgb25lIGFyZ3VtZW50ICguZGViIGZpbGVuYW1lKSIKK21zZ3N0ciAiLS0lcyB0b21hIG5hbcOhaSB1biBhcmd1bWVudHUgKGZpY2hlcnUgLmRlYikiCisKKyM6IGRwa2ctZGViL2luZm8uYzo2MworbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byBgLycgZm9yIGNsZWFudXAiCittc2dzdHIgImZhbGzDsyBhbCBjYW11ZGFyIGEgYC8nIHBhIGxsaW1waWV6YSIKKworIzogZHBrZy1kZWIvaW5mby5jOjEwNgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiY2Fubm90IHN0YXQgb2xkIG5hbWUgYCVzJzogJXMiCittc2dpZCAiY29udHJvbCBmaWxlICclcyciCittc2dzdHIgIm51biBzZSBwdWVkZSBmYWNlciBgc3RhdCcgc29icmUnbCBub21lIGFudGlndXUgYCVzJzogJXMiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZy1kZWI6IGAlLjI1NXMnIGNvbnRhaW5zIG5vIGNvbnRyb2wgY29tcG9uZW50IGAlLjI1NXMnXG4iCittc2dzdHIgImRwa2ctZGViOiBgJS4yNTVzJyBudW4gY29udGnDqW4gZGVuZ8O6biBjb21wb25lbnRlIGRlIGNvbnRyb2wgYCUuMjU1cydcbiIKKworIzogZHBrZy1kZWIvaW5mby5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICJvcGVuIGNvbXBvbmVudCBgJS4yNTVzJyAoaW4gJS4yNTVzKSBmYWlsZWQgaW4gYW4gdW5leHBlY3RlZCB3YXkiCittc2dzdHIgIiIKKyJsJ2FwZXJ0dXJhIGRlbCBjb21wb25lbnRlIGAlLjI1NXMnIChkaWVudHJvIGRlICUuMjU1cylcbiIKKyJmYWxsw7MgZGUgbW91IGluZXNwZXLDoXUiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIk9uZSByZXF1ZXN0ZWQgY29udHJvbCBjb21wb25lbnQgaXMgbWlzc2luZyIKK21zZ2lkICIlZCByZXF1ZXN0ZWQgY29udHJvbCBjb21wb25lbnQgaXMgbWlzc2luZyIKK21zZ2lkX3BsdXJhbCAiJWQgcmVxdWVzdGVkIGNvbnRyb2wgY29tcG9uZW50cyBhcmUgbWlzc2luZyIKK21zZ3N0clswXSAiRmFsdGEgdW5hIGRlIGxlcyBjb21wb25lbnRlcyBkZSBjb250cm9sIHNvbGljaXRhZXMiCittc2dzdHJbMV0gIkZhbHRhIHVuYSBkZSBsZXMgY29tcG9uZW50ZXMgZGUgY29udHJvbCBzb2xpY2l0YWVzIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTM5IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo0MjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHNjYW4gZGlyZWN0b3J5IGAlLjI1NXMnIgorbXNnc3RyICJudW4gc2UgcHVlZGUgZGVzYW1pbmFyIGVsIGRpcmV1dG9yaXUgYCUuMjU1cyciCisKKyM6IGRwa2ctZGViL2luZm8uYzoxNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHN0YXQgYCUuMjU1cycgKGluIGAlLjI1NXMnKSIKK21zZ3N0ciAibnVuIHB1ZWRlIGVmZXV0dWFzZSBgc3RhdCcgc29icm8gYCUuMjU1cycgKGVuIGAlLjI1NXMnKSIKKworIzogZHBrZy1kZWIvaW5mby5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgb3BlbiBgJS4yNTVzJyAoaW4gYCUuMjU1cycpIgorbXNnc3RyICJudW4gcHVlZGUgYWJyaXNlIGAlLjI1NXMnIChlbiBgJS4yNTVzJykiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxNjcgZHBrZy1kZWIvaW5mby5jOjE4NSBkcGtnLWRlYi9pbmZvLmM6MTk5CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZWFkIGAlLjI1NXMnIChpbiBgJS4yNTVzJykiCittc2dzdHIgImZhbGzDsyBhbCBsbGVlciBgJS4yNTVzJyAoZW4gYCUuMjU1cycpIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTcwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIgJTdsZCBieXRlcywgJTVkIGxpbmVzICAgJWMgICUtMjAuMTI3cyAlLjEyN3NcbiIKK21zZ2lkICIgJTdqZCBieXRlcywgJTVkIGxpbmVzICAgJWMgICUtMjAuMTI3cyAlLjEyN3NcbiIKK21zZ3N0ciAiICU3bGQgYnl0ZXMsICU1ZCBsbGluaWVzICAlYyAgJS0yMC4xMjdzICUuMTI3c1xuIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTc0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgICAgbm90IGEgcGxhaW4gZmlsZSAgICAgICAgICAlLjI1NXNcbiIKK21zZ3N0ciAiICAgICBudW4geWUgdW4gZmljaGVydSBwbGFudSAgICUuMjU1c1xuIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTg2Cittc2dpZCAiKG5vIGBjb250cm9sJyBmaWxlIGluIGNvbnRyb2wgYXJjaGl2ZSEpXG4iCittc2dzdHIgIijCoW51biBoYWkgZGVuZ8O6biBmaWNoZXJ1IGBjb250cm9sJyBuZWwgZmljaGVydSBkZSBjb250cm9sISlcbiIKKworIzogZHBrZy1kZWIvaW5mby5jOjIyMgorbXNnaWQgImNvdWxkIG5vdCBvcGVuIHRoZSBgY29udHJvbCcgY29tcG9uZW50IgorbXNnc3RyICJudW4gcHVlZGUgYWJyaXNlJ2wgY29tcG9uZW50ZSBgY29udHJvbCciCisKKyM6IGRwa2ctZGViL2luZm8uYzoyNjEKK21zZ2lkICJmYWlsZWQgZHVyaW5nIHJlYWQgb2YgYGNvbnRyb2wnIGNvbXBvbmVudCIKK21zZ3N0ciAiZmFsbMOzIGR1cmFudGUgbGEgbGxlY3R1cmEgZGUgbGEgY29tcG9uZW50ZSBgY29udHJvbCciCisKKyM6IGRwa2ctZGViL2luZm8uYzoyNjMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgdGhlICclcycgY29tcG9uZW50IgorbXNnc3RyICJlcnJvciBhbCB6YXJyYXIgZWwgdHVidSBkZSBmaW5kIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6Mjc4Cittc2dpZCAiRXJyb3IgaW4gZm9ybWF0IgorbXNnc3RyICJGYWxsdSBuZWwgZm9ybWF0dSIKKworIzogZHBrZy1kZWIvaW5mby5jOjMyOAorbXNnaWQgIi0tY29udGVudHMgdGFrZXMgZXhhY3RseSBvbmUgYXJndW1lbnQiCittc2dzdHIgIi0tY29udGVudHMgdG9tYSBlc2F1dGFtZW50ZSB1biBhcmd1bWVudHUiCisKKyM6IGRwa2ctZGViL21haW4uYzo1NAorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIGFyY2hpdmUgYmFja2VuZCB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICJWZXJzacOzbiBgJXMnIGRlbCBzaXN0ZW1hIGRlIHhlc3Rpw7NuIGRlIHBhcXVldGVzIGRlIERlYmlhbiBgJXMnLlxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6NzMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJDb21tYW5kczpcbiIKKyN8ICIgIC1ifC0tYnVpbGQgPGRpcmVjdG9yeT4gWzxkZWI+XSAgIEJ1aWxkIGFuIGFyY2hpdmUuXG4iCisjfCAiICAtY3wtLWNvbnRlbnRzIDxkZWI+ICAgICAgICAgICAgICBMaXN0IGNvbnRlbnRzLlxuIgorI3wgIiAgLUl8LS1pbmZvIDxkZWI+IFs8Y2ZpbGU+IC4uLl0gICAgU2hvdyBpbmZvIHRvIHN0ZG91dC5cbiIKKyN8ICIgIC1XfC0tc2hvdyA8ZGViPiAgICAgICAgICAgICAgICAgIFNob3cgaW5mb3JtYXRpb24gb24gcGFja2FnZShzKVxuIgorI3wgIiAgLWZ8LS1maWVsZCA8ZGViPiBbPGNmaWVsZD4gLi4uXSAgU2hvdyBmaWVsZChzKSB0byBzdGRvdXQuXG4iCisjfCAiICAtZXwtLWNvbnRyb2wgPGRlYj4gWzxkaXJlY3Rvcnk+XSBFeHRyYWN0IGNvbnRyb2wgaW5mby5cbiIKKyN8ICIgIC14fC0tZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PiAgIEV4dHJhY3QgZmlsZXMuXG4iCisjfCAiICAtWHwtLXZleHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+ICBFeHRyYWN0ICYgbGlzdCBmaWxlcy5cbiIKKyN8ICIgIC0tZnN5cy10YXJmaWxlIDxkZWI+ICAgICAgICAgICAgIE91dHB1dCBmaWxlc3lzdGVtIHRhcmZpbGUuXG4iCisjfCAiXG4iCittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLWJ8LS1idWlsZCA8ZGlyZWN0b3J5PiBbPGRlYj5dICAgQnVpbGQgYW4gYXJjaGl2ZS5cbiIKKyIgIC1jfC0tY29udGVudHMgPGRlYj4gICAgICAgICAgICAgIExpc3QgY29udGVudHMuXG4iCisiICAtSXwtLWluZm8gPGRlYj4gWzxjZmlsZT4gLi4uXSAgICBTaG93IGluZm8gdG8gc3Rkb3V0LlxuIgorIiAgLVd8LS1zaG93IDxkZWI+ICAgICAgICAgICAgICAgICAgU2hvdyBpbmZvcm1hdGlvbiBvbiBwYWNrYWdlKHMpXG4iCisiICAtZnwtLWZpZWxkIDxkZWI+IFs8Y2ZpZWxkPiAuLi5dICBTaG93IGZpZWxkKHMpIHRvIHN0ZG91dC5cbiIKKyIgIC1lfC0tY29udHJvbCA8ZGViPiBbPGRpcmVjdG9yeT5dIEV4dHJhY3QgY29udHJvbCBpbmZvLlxuIgorIiAgLXh8LS1leHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+ICAgRXh0cmFjdCBmaWxlcy5cbiIKKyIgIC1YfC0tdmV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gIEV4dHJhY3QgJiBsaXN0IGZpbGVzLlxuIgorIiAgLVJ8LS1yYXctZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRXh0cmFjdCBjb250cm9sIGluZm8gYW5kIGZpbGVzLlxuIgorIiAgLS1mc3lzLXRhcmZpbGUgPGRlYj4gICAgICAgICAgICAgT3V0cHV0IGZpbGVzeXN0ZW0gdGFyZmlsZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIsOTcmRlbmVzOlxuIgorIi1ifC0tYnVpbGQgPGRpcmVjdG9yaXU+IFs8ZGViPl0gQ29uc3RydXllIHVuIGZpY2hlcnUuXG4iCisiLWN8LS1jb250ZW50cyA8ZGViPiBMbGlzdGEnbCBjb250ZW7DrXUuXG4iCisiLUl8LS1pbmZvIDxkZWI+IFs8Y2ZpY2hlcm8+Li4uXSBBbXVlc2EgaW5mb3JtYWNpw7NuIG5hIHNhbGlkYSBlc3TDoW5kYXIuXG4iCisiLVd8LS1zaG93IDxkZWI+IEFtdWVzYSBpbmZvcm1hY2nDs24gc29icmUnbC9sb3NcbiIKKyJwYXF1ZXRlKHMpLlxuIgorIi1mfC0tZmllbGQgPGRlYj4gWzxjY2FtcHU+Li4uXSBBbXVlc2EnbC9sb3MgY2FtcG8vcyBuYSBzYWxpZGFcbiIKKyJlc3TDoW5kYXIuXG4iCisiLWV8LS1jb250cm9sIDxkZWI+IFs8ZGlyZWN0b3JpdT5dU2FjYSBsYSBpbmZvcm1hY2nDs24gZGUgY29udHJvbFxuIgorIi14fC0tZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3JpdT4gU2FjYSBsb3MgZmljaGVyb3MuXG4iCisiLVh8LS12ZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3JpdT4gU2FjYSB5IGxsaXN0YSBsb3MgZmljaGVyb3MuXG4iCisiLS1mc3lzLXRhcmZpbGUgPGRlYj4gUHJvZHV6IGVsIGZpY2hlcnUgdGFyIGRlbCBzaXN0ZW1hIGRlXG4iCisiZmljaGVyb3MuXG4iCisiXG4iCisKKyM6IGRwa2ctZGViL21haW4uYzo5MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiPGRlYj4gaXMgdGhlIGZpbGVuYW1lIG9mIGEgRGViaWFuIGZvcm1hdCBhcmNoaXZlLlxuIgorIjxjZmlsZT4gaXMgdGhlIG5hbWUgb2YgYW4gYWRtaW5pc3RyYXRpdmUgZmlsZSBjb21wb25lbnQuXG4iCisiPGNmaWVsZD4gaXMgdGhlIG5hbWUgb2YgYSBmaWVsZCBpbiB0aGUgbWFpbiBgY29udHJvbCcgZmlsZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIjxkZWI+IHllJ2wgbm9tZSBkZSBmaWNoZXJ1IGQndW4gZmljaGVydSBlbiBmb3JtYXR1IERlYmlhbi5cbiIKKyI8Y2ZpY2hlcm8+IHllJ2wgbm9tZSBkJ3VuIGNvbXBvbmVudGUgZGUgZmljaGVydSBhbG1pbmlzdHJhdGl2dS5cbiIKKyI8Y2NhbXBvPiB5ZSdsIG5vbWUgZCd1biBjYW1wdSBuZWwgZmljaGVydSBkZSBgY29udHJvbCcgcHJpbmNpcGFsLlxuIgorIlxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6OTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1zaG93Zm9ybWF0PTxmb3JtYXQ+ICAgICAgICAgICAgVXNlIGFsdGVybmF0aXZlIGZvcm1hdCBmb3IgLS1zaG93LlxuIgorIiAgLXYsIC0tdmVyYm9zZSAgICAgICAgICAgICAgICAgICAgRW5hYmxlIHZlcmJvc2Ugb3V0cHV0LlxuIgorIiAgLUQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRW5hYmxlIGRlYnVnZ2luZyBvdXRwdXQuXG4iCisiICAtLW9sZCwgLS1uZXcgICAgICAgICAgICAgICAgICAgICBTZWxlY3QgYXJjaGl2ZSBmb3JtYXQuXG4iCisiICAtLW5vY2hlY2sgICAgICAgICAgICAgICAgICAgICAgICBTdXBwcmVzcyBjb250cm9sIGZpbGUgY2hlY2sgKGJ1aWxkIGJhZFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWNrYWdlcykuXG4iCisiICAteiMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTZXQgdGhlIGNvbXByZXNzaW9uIGxldmVsIHdoZW4gYnVpbGRpbmcuXG4iCisiICAtWjx0eXBlPiAgICAgICAgICAgICAgICAgICAgICAgICBTZXQgdGhlIGNvbXByZXNzaW9uIHR5cGUgdXNlZCB3aGVuICIKKyJidWlsZGluZy5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWxsb3dlZCB0eXBlczogZ3ppcCwgeHosIGJ6aXAyLCBsem1hLCAiCisibm9uZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIk9wY2lvbmVzOlxuIgorIi0tc2hvd2Zvcm1hdD08Zm9ybWF0dT4gVXNhIHVuIGZvcm1hdHUgYWx0ZXJuYXRpdnUgcGEgLS1zaG93LlxuIgorIi1EIEFjdGl2YSBsYSBzYWxpZGEgZGUgZGVwdXJhY2nDs24uXG4iCisiLS1vbGQsIC0tbmV3IEVzY3VleWUnbCBmb3JtYXR1IGRlbCBmaWNoZXJ1LlxuIgorIi0tbm9jaGVjayBTdXByaW1lIGxhIHZlcmlmaWNhY2nDs24gZGVsIGZpY2hlcnUgZGUgY29udHJvbFxuIgorIihjb25zdHJ1eWUgcGFxdWV0ZXMgZXJyw7NuZW9zKVxuIgorIi16IyBBZml0YSBsYSBjb21wcmVzacOzbiBuYSBjcmVhY2nDs24gZGVsIHBhcXVldGUuXG4iCisiLVo8dGlwbz4gQWZpdGEgbGEgdHJpYmEgZGUgY29tcHJlc2nDs24gYSB1c2FyIGN1YW5kb1xuIgorInNlIGNvbnN0cnV5ZSB1biBwYXF1ZXRlLiBWYWxvcmVzIHBlcm1pdMOtb3M6XG4iCisiwqtnemlwwrssIMKrYnppcDLCuywgwqtub25lwrsgKG5pbmd1bmEpXG4iCisiXG4iCisKKyM6IGRwa2ctZGViL21haW4uYzoxMjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIlVzZSBgZHBrZycgdG8gaW5zdGFsbCBhbmQgcmVtb3ZlIHBhY2thZ2VzIGZyb20geW91ciBzeXN0ZW0sIG9yXG4iCisiYGRzZWxlY3QnIG9yIGBhcHRpdHVkZScgZm9yIHVzZXItZnJpZW5kbHkgcGFja2FnZSBtYW5hZ2VtZW50LiAgUGFja2FnZXNcbiIKKyJ1bnBhY2tlZCB1c2luZyBgZHBrZy1kZWIgLS1leHRyYWN0JyB3aWxsIGJlIGluY29ycmVjdGx5IGluc3RhbGxlZCAhXG4iCittc2dzdHIgIiIKKyJcbiIKKyJVc2EgwqtkcGtnwrsgcGEgaW5zdGFsYXIgbyBkZXNhbmljaWFyIHBhcXVldGVzIGRlbCBzbyBzaXN0ZW1hLCBvXG4iCisiwqtkc2VsZWN0wrsgbyDCq2FwdGl0dWRlwrsgc2kgcXVpZXMgdXNhciB1bmEgZmVycmFtaWVudGEgZGUgeGVzdGnDs25cbiIKKyJkZSBwYXF1ZXRlcyBmw6FjaWwgZCd1c2FyLiBBdmlzdTogwqFsb3MgcGFxdWV0ZXMgcXVlIGRlc2VtcGFxdWV0ZXMgY29uXG4iCisiwqtkcGtnLWRlYiAtLWV4dHJhY3TCuyBudW4gcydpbnN0YWxhcsOhbiBiaWVuIVxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTMyCittc2dpZCAiIgorIlR5cGUgZHBrZy1kZWIgLS1oZWxwIGZvciBoZWxwIGFib3V0IG1hbmlwdWxhdGluZyAqLmRlYiBmaWxlcztcbiIKKyJUeXBlIGRwa2cgLS1oZWxwIGZvciBoZWxwIGFib3V0IGluc3RhbGxpbmcgYW5kIGRlaW5zdGFsbGluZyBwYWNrYWdlcy4iCittc2dzdHIgIiIKKyJFc2NyaWJpIGRwa2ctZGViIC0taGVscCBwYSBvYnRlbmVyIGFpZGEgc29icmUgcmVtYW5hbWllbnR1IGRlIGZpY2hlcm9zIC4iCisiZGViO1xuIgorIkVzY3JpYmkgZHBrZyAtLWhlbHAgcGEgb2J0ZW5lciBhaWRhIHNvYnJlIGluc3RhbGFyIHkgZGVzaW5zdGFsYXIgcGFxdWV0ZXMuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTQ4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGludGVnZXIgZm9yIC0lYzogJyUuMjUwcyciCittc2dzdHIgImVudGVydSBpbnbDoWxpZHUgcGEgLS0lczogYCUuMjUwcyciCisKKyM6IGRwa2ctZGViL21haW4uYzoxNTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgY29tcHJlc3Npb24gbGV2ZWwgZm9yIC0lYzogJWxkJyIKK21zZ3N0ciAiZW50ZXJ1IGludsOhbGlkdSBwYSAtLSVzOiBgJS4yNTBzJyIKKworIzogZHBrZy1kZWIvbWFpbi5jOjE2MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGNvbXByZXNzaW9uIHR5cGUgYCVzJyEiCittc2dzdHIgIsKhdHJpYmEgZGUgY29tcHJlc2nDs24gwqslc8K7IGRlc2Nvbm9jw61hISIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6NTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIGRpZ2l0IChjb2RlICVkKSBpbiAlcyIKK21zZ3N0ciAiZWwgZmljaGVydSBgJS4yNTBzJyB0YSBmcmHDscOhdSAtIGTDrXhpdHUgZmFsbMOtdSAoY8OzZGlndSAlZCkgZW4gJXMiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjYwCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtICUuMjUwcyBtaXNzaW5nIgorbXNnc3RyICJlbCBmaWNoZXJ1IGAlLjI1MHMnIHRhIGZyYcOxw6F1IC0gZmFsdGEgJS4yNTBzXCIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjYzCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIG1pc3NpbmcgbmV3bGluZSBhZnRlciAlLjI1MHMiCittc2dzdHIgIiIKKyJlbCBmaWNoZXJ1IGAlLjI1MHMnIHRhIGZyYcOxw6F1IC0gZmFsdGEgdW5hIG51ZXZhIGxsaW5pYSBkZW1wdcOpcyBkZSAlLjI1MHMiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjg5IGRwa2ctc3BsaXQvbWFpbi5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciByZWFkaW5nICUuMjUwcyIKK21zZ3N0ciAiZmFsbHUgYWwgbGxlZXIgJS4yNTBzIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIG1hZ2ljIGF0IGVuZCBvZiBmaXJzdCBoZWFkZXIiCittc2dzdHIgIiIKKyJlbCBmaWNoZXJ1IGAlLjI1MHMnIHRhIGZyYcOxw6F1IC0gbWF4YSBlcnLDs25lYSBhbCBmaW5hbCBkZSBsYVxuIgorInByaW1lciBjYWJlY2VyYSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTEzCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBwYWRkaW5nIGNoYXJhY3RlciAoY29kZSAlZCkiCittc2dzdHIgImVsIGZpY2hlcnUgYCUuMjUwcycgdGEgZnJhw7HDoXUgLSBjYXLDoXV0ZXIgZCdlbmxsZW51IGVycsOzbmV1IChjw7NkaWd1ICVkKSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTE3CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIG51bGxzIGluIGluZm8gc2VjdGlvbiIKK21zZ3N0ciAiZWwgZmljaGVydSBgJS4yNTBzJyB0YSBmcmHDscOhdSAtIGhhaSBudWxvcyBuYSBzZWljacOzbiBkJ2luZm9ybWFjacOzbiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTIyCittc2dpZCAiZm9ybWF0IHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICJmb3JtYXR1IGRlIG7Dum1iZXJ1IGRlIHZlcnNpw7NuIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBmb3JtYXQgdmVyc2lvbiBgJS4yNTBzJyAtIHlvdSBuZWVkIGEgbmV3ZXIgZHBrZy1zcGxpdCIKK21zZ3N0ciAiIgorImVsIGZpY2hlcnUgYCUuMjUwcycgdGllbiBmb3JtYXR1IHZlcnNpw7NuIGAlLjI1MHMnIC0gbmVjZXNpdGEgdW4gZHBrZy1zcGxpdFxuIgorIm3DoXMgbW9kZXJudSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTI3Cittc2dpZCAicGFja2FnZSBuYW1lIgorbXNnc3RyICJub21lIHBhcXVldGUiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyOAorbXNnaWQgInBhY2thZ2UgdmVyc2lvbiBudW1iZXIiCittc2dzdHIgInBhcXVldGUgZGUgbsO6bWJlcnUgZGUgdmVyc2nDs24iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyOQorbXNnaWQgInBhY2thZ2UgZmlsZSBNRDUgY2hlY2tzdW0iCittc2dzdHIgImZpY2hlcnUgcGFxdWV0ZSBNRCUgY2hlY2tzdW0iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEzMgorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgTUQ1IGNoZWNrc3VtIGAlLjI1MHMnIgorbXNnc3RyICJlbCBmaWNoZXJ1IGAlLjI1MHMnIHRhIGZyYcOxw6F1IC0gc3VtYSBNRDUgYCUuMjUwcycgZXJyw7NuZWEiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEzNCBkcGtnLXNwbGl0L2luZm8uYzoxMzUKK21zZ2lkICJhcmNoaXZlIHRvdGFsIHNpemUiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTM2IGRwa2ctc3BsaXQvaW5mby5jOjEzNworIywgZnV6enkKKyN8IG1zZ2lkICJwYXJ0IG9mZnNldCIKK21zZ2lkICJhcmNoaXZlIHBhcnQgb2Zmc2V0IgorbXNnc3RyICJwYXJ0IG9mZnNldCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTM5CisjLCBmdXp6eQorI3wgbXNnaWQgInBhcnQgbnVtYmVycyIKK21zZ2lkICJhcmNoaXZlIHBhcnQgbnVtYmVycyIKK21zZ3N0ciAibsO6bWJlcm9zIGRlIHBhcnRlIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIG5vIHNsYXNoIGJldHdlZW4gcGFydCBudW1iZXJzIgorbXNnaWQgImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIG5vIHNsYXNoIGJldHdlZW4gYXJjaGl2ZSBwYXJ0IG51bWJlcnMiCittc2dzdHIgIiIKKyJlbCBmaWNoZXJ1IGAlLjI1MHMnIHRhIGZyYcOxw6F1IC0gbnVuIGhhaSB1bmEgYmFycmEgZW50ZSBsb3MgbsO6bWJlcm9zXG4iCisiZGUgcGFydGUiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE0NQorIywgZnV6enkKKyN8IG1zZ2lkICJudW1iZXIgb2YgcGFydHMiCittc2dpZCAibnVtYmVyIG9mIGFyY2hpdmUgcGFydHMiCittc2dzdHIgIm7Dum1iZXJ1IGRlIHBhcnRlcyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTQ3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgbnVtYmVyIG9mIHBhcnRzIgorbXNnaWQgImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBudW1iZXIgb2YgYXJjaGl2ZSBwYXJ0cyIKK21zZ3N0ciAiZWwgZmljaGVydSAnJS4yNTBzJyB0YSBmcmHDscOhdSAtIG7Dum1iZXJ1IGRlIHBhcnRlIGVycsOzbmV1IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDkKKyMsIGZ1enp5CisjfCBtc2dpZCAicGFydHMgbnVtYmVyIgorbXNnaWQgImFyY2hpdmUgcGFydHMgbnVtYmVyIgorbXNnc3RyICJuw7ptYmVydSBkZSBwYXJ0ZXMiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE1MQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIHBhcnQgbnVtYmVyIgorbXNnaWQgImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBhcmNoaXZlIHBhcnQgbnVtYmVyIgorbXNnc3RyICJlbCBmaWNoZXJ1IGAlLjI1MHMnIHRhIGZyYcOxw6F1IC0gbsO6bWJlcnUgZGUgcGFydGUgZXJyw7NuZXUiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE1NworIywgZnV6enkKKyN8IG1zZ2lkICJwYWNrYWdlIG5hbWUiCittc2dpZCAicGFja2FnZSBhcmNoaXRlY3R1cmUiCittc2dzdHIgIm5vbWUgcGFxdWV0ZSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTY2CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBtYWdpYyBhdCBlbmQgb2Ygc2Vjb25kIGhlYWRlciIKK21zZ3N0ciAiIgorImVsIGZpY2hlcnUgYCUuMjUwcycgdGEgZnJhw7HDoXUgLSBtYXhhIGVycsOzbmVhIGFsIGZpbmFsIGRlXG4iCisibGEgc2VndW5kYSB0ZXN0ZXJhIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gc2Vjb25kIG1lbWJlciBpcyBub3QgZGF0YSBtZW1iZXIiCittc2dzdHIgIiIKKyJlbCBmaWNoZXJ1IGAlLjI1MHMnIHRhIGZyYcOxw6F1IC0gZWwgc2VndW5kdSBtaWVtYnJ1IG51biB5ZSB1biBtaWVtYnJ1XG4iCisiZGUgZGF0b3MiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE3NAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSB3cm9uZyBudW1iZXIgb2YgcGFydHMgZm9yIHF1b3RlZCBzaXplcyIKK21zZ3N0ciAiIgorImVsIGZpY2hlcnUgYCUuMjUwcycgdGEgZnJhw7HDoXUgLSBuw7ptYmVydSBlbnF1aXZvY8OhdSBkZSBwYXJ0ZXMgcGEgbG9zXG4iCisidGFtYcOxb3MgY29uc2XDsWFvcyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTc4CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIHNpemUgaXMgd3JvbmcgZm9yIHF1b3RlZCBwYXJ0IG51bWJlciIKK21zZ3N0ciAiIgorImVsIGZpY2hlcnUgYCUuMjUwcycgdGEgZnJhw7HDoXUgLSBlbCB0YW1hw7F1IHRhIGVucXVpdm9jw6F1IHBvbFxuIgorIm7Dum1iZXJ1IGRlIHBhcnRlIGNvbnNlw7HDoXUiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE4NAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZnN0YXQgcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJudW4gcHVlZGUgZWZldXR1YXNlIGBzdGF0JyBzb2JybydsIGZpY2hlcnUgcGFydGUgYCUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE4OQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSB0b28gc2hvcnQiCittc2dzdHIgImVsIGZpY2hlcnUgYCUuMjUwcycgdGEgZnJhw7HDoXUgLSBlbmZvcm1hIGN1cnRpdSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjAyIGRwa2ctc3BsaXQvaW5mby5jOjI0OQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgb3BlbiBhcmNoaXZlIHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibnVuIHB1ZWRlIGFicmlzZSdsIGZpY2hlcnUgcGFydGUgZCdhcmNoaXZ1IGAlLjI1MHMnIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBub3QgYW4gYXJjaGl2ZSBwYXJ0IgorbXNnc3RyICJlbCBmaWNoZXJ1IGAlLjI1MHMnIG51biB5ZSB1bmEgcGFydGUgZCdhcmNoaXZ1IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyMDkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIlczpcbiIKKyN8ICIgICAgUGFydCBmb3JtYXQgdmVyc2lvbjogICAgICAgICAgICAlc1xuIgorI3wgIiAgICBQYXJ0IG9mIHBhY2thZ2U6ICAgICAgICAgICAgICAgICVzXG4iCisjfCAiICAgICAgICAuLi4gdmVyc2lvbjogICAgICAgICAgICAgICAgJXNcbiIKKyN8ICIgICAgICAgIC4uLiBNRDUgY2hlY2tzdW06ICAgICAgICAgICAlc1xuIgorI3wgIiAgICAgICAgLi4uIGxlbmd0aDogICAgICAgICAgICAgICAgICVsdSBieXRlc1xuIgorI3wgIiAgICAgICAgLi4uIHNwbGl0IGV2ZXJ5OiAgICAgICAgICAgICVsdSBieXRlc1xuIgorI3wgIiAgICBQYXJ0IG51bWJlcjogICAgICAgICAgICAgICAgICAgICVkLyVkXG4iCisjfCAiICAgIFBhcnQgbGVuZ3RoOiAgICAgICAgICAgICAgICAgICAgJXppIGJ5dGVzXG4iCisjfCAiICAgIFBhcnQgb2Zmc2V0OiAgICAgICAgICAgICAgICAgICAgJWx1IGJ5dGVzXG4iCisjfCAiICAgIFBhcnQgZmlsZSBzaXplICh1c2VkIHBvcnRpb24pOiAgJWx1IGJ5dGVzXG4iCisjfCAiXG4iCittc2dpZCAiIgorIiVzOlxuIgorIiAgICBQYXJ0IGZvcm1hdCB2ZXJzaW9uOiAgICAgICAgICAgICVzXG4iCisiICAgIFBhcnQgb2YgcGFja2FnZTogICAgICAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiB2ZXJzaW9uOiAgICAgICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIGFyY2hpdGVjdHVyZTogICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gTUQ1IGNoZWNrc3VtOiAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiBsZW5ndGg6ICAgICAgICAgICAgICAgICAlamQgYnl0ZXNcbiIKKyIgICAgICAgIC4uLiBzcGxpdCBldmVyeTogICAgICAgICAgICAlamQgYnl0ZXNcbiIKKyIgICAgUGFydCBudW1iZXI6ICAgICAgICAgICAgICAgICAgICAlZC8lZFxuIgorIiAgICBQYXJ0IGxlbmd0aDogICAgICAgICAgICAgICAgICAgICVqZCBieXRlc1xuIgorIiAgICBQYXJ0IG9mZnNldDogICAgICAgICAgICAgICAgICAgICVqZCBieXRlc1xuIgorIiAgICBQYXJ0IGZpbGUgc2l6ZSAodXNlZCBwb3J0aW9uKTogICVqZCBieXRlc1xuIgorIlxuIgorbXNnc3RyICIiCisiJXM6XG4iCisiVmVyc2nDs24gZGUgZm9ybWF0dSBkZSBwYXJ0ZTogJXNcbiIKKyJQYXJ0ZSBkZSBwYXF1ZXRlOiAlc1xuIgorIi4uLiB2ZXJzacOzbjogJXNcbiIKKyIuLi4gc3VtYSBNRDU6ICVzXG4iCisiLi4uIGxsYXJnb3I6ICVsdSBieXRlc1xuIgorIi4uLiB0cm9jZcOhdSBjYWRhOiAlbHUgYnl0ZXNcbiIKKyJQYXJ0ZSBuw7ptYmVydTogJWQvJWRcbiIKKyJMbGFyZ29yIGRlIHBhcnRlOiAlemkgYnl0ZXNcbiIKKyJEZXNwbGF6YW1pZW50dSBkZSBwYXJ0ZTogJWx1IGJ5dGVzXG4iCisiVGFtYcOxdSBkZSBmaWNoZXJ1IGRlIHBhcnRlXG4iCisiKGNhY2h1IHVzw6F1KTogJWx1IGJ5dGVzXG4iCisiXG4iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjIyNQorIywgZnV6enkKKyN8IG1zZ2lkICI8dW5rbm93bj4iCittc2djdHh0ICJhcmNoaXRlY3R1cmUiCittc2dpZCAiPHVua25vd24+IgorbXNnc3RyICI8ZGVzY29ub2PDrXU+IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyNDQgZHBrZy1zcGxpdC9qb2luLmM6MTA1CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgcmVxdWlyZXMgb25lIG9yIG1vcmUgcGFydCBmaWxlIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS0lcyByZXF1aWVyIMO6biBvIG3DoXMgYXJndW1lbnRvcyBkZSBmaWNoZXJ1IGRlIHBhcnRlcyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjU1CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCVzJyBpcyBub3QgYW4gYXJjaGl2ZSBwYXJ0XG4iCittc2dzdHIgImVsIGZpY2hlcnUgYCVzJyBudW4geWUgdW5hIHBhcnRlIGQnYXJjaGl2dVxuIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo0NAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiUHV0dGluZyBwYWNrYWdlICVzIHRvZ2V0aGVyIGZyb20gJWQgcGFydHM6ICIKK21zZ2lkICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0OiAiCittc2dpZF9wbHVyYWwgIlB1dHRpbmcgcGFja2FnZSAlcyB0b2dldGhlciBmcm9tICVkIHBhcnRzOiAiCittc2dzdHJbMF0gIlBvbmllbmRvIHBhcXVldGUgJXMgeHVudHUgZGVuZGUgJWQgcGFydGVzOiIKK21zZ3N0clsxXSAiUG9uaWVuZG8gcGFxdWV0ZSAlcyB4dW50dSBkZW5kZSAlZCBwYXJ0ZXM6IgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBvdXRwdXQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibnVuIHB1ZWRlIGFicmlzZSdsIGZpY2hlcnUgZGUgc2FsaWRhIGAlLjI1MHMnIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gKHJlKW9wZW4gaW5wdXQgcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJudW4gcHVlZGUgKHJlKWFicmlzZSdsIGZpY2hlcnUgcGFydGUgZCdlbnRyYWRhIGAlLjI1MHMnIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1OAorIywgZnV6enkKKyN8IG1zZ2lkICJTa2lwcGluZyBkZXNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dpZCAic2tpcHBpbmcgc3BsaXQgcGFja2FnZSBoZWFkZXIiCittc2dzdHIgIlNhbHRhbmRvJ2wgcGFxdWV0ZSBkZXNlbGVpY2lvbsOhdSAlcy5cbiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NTkKKyMsIGZ1enp5CisjfCBtc2dpZCAiUHV0dGluZyBwYWNrYWdlICVzIHRvZ2V0aGVyIGZyb20gJWQgcGFydHM6ICIKK21zZ2lkICJzcGxpdCBwYWNrYWdlIHBhcnQiCittc2dzdHIgIlBvbmllbmRvIHBhcXVldGUgJXMgeHVudHUgZGVuZGUgJWQgcGFydGVzOiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NjkgZHBrZy1zcGxpdC9zcGxpdC5jOjIzNworIywgYy1mb3JtYXQKK21zZ2lkICJkb25lXG4iCittc2dzdHIgImZlY2hvXG4iCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjg1CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGVzIGAlLjI1MHMnIGFuZCBgJS4yNTBzJyBhcmUgbm90IHBhcnRzIG9mIHRoZSBzYW1lIGZpbGUiCittc2dzdHIgImxvcyBmaWNoZXJvcyBgJS4yNTBzJyB5IGAlLjI1MHMnIG51biBzb24gcGFydGVzIGRlbCBtZXNtdSBmaWNoZXJ1IgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo5MAorIywgYy1mb3JtYXQKK21zZ2lkICJ0aGVyZSBhcmUgc2V2ZXJhbCB2ZXJzaW9ucyBvZiBwYXJ0ICVkIC0gYXQgbGVhc3QgYCUuMjUwcycgYW5kIGAlLjI1MHMnIgorbXNnc3RyICJoYWkgZGVsbGVzIHZlcnNpb25lcyBkZSBsYSBwYXJ0ZSAlZCAtIGEgbG8gbWVub3MgYCUuMjUwcycgeSBgJS4yNTBzJyIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6MTI4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhcnQgJWQgaXMgbWlzc2luZyIKK21zZ3N0ciAiZmFsdGEgbGEgcGFydGUgJWQiCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjQ3CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiBgJXMnIHBhY2thZ2Ugc3BsaXQvam9pbiB0b29sOyB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICJmZXJyYW1pZW50YSBkZSBkaXZpc2nDs24vdW5pw7NuIGRlIERlYmlhbiBgJXMnOyB2ZXJzacOzbiAlcy5cbiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ29weXJpZ2h0IChDKSAxOTk0LTE5OTYgSWFuIEphY2tzb24uXG4iCittc2dzdHIgIkNvcHlyaWdodCAoQykgMTk5NC0xOTk2IElhbiBKYWNrc29uLlxuIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo2NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtc3wtLXNwbGl0IDxmaWxlPiBbPHByZWZpeD5dICAgICBTcGxpdCBhbiBhcmNoaXZlLlxuIgorIiAgLWp8LS1qb2luIDxwYXJ0PiA8cGFydD4gLi4uICAgICAgSm9pbiBwYXJ0cyB0b2dldGhlci5cbiIKKyIgIC1JfC0taW5mbyA8cGFydD4gLi4uICAgICAgICAgICAgIERpc3BsYXkgaW5mbyBhYm91dCBhIHBhcnQuXG4iCisiICAtYXwtLWF1dG8gLW8gPGNvbXBsZXRlPiA8cGFydD4gICBBdXRvLWFjY3VtdWxhdGUgcGFydHMuXG4iCisiICAtbHwtLWxpc3RxICAgICAgICAgICAgICAgICAgICAgICBMaXN0IHVubWF0Y2hlZCBwaWVjZXMuXG4iCisiICAtZHwtLWRpc2NhcmQgWzxmaWxlbmFtZT4gLi4uXSAgICBEaXNjYXJkIHVubWF0Y2hlZCBwaWVjZXMuXG4iCisiXG4iCittc2dzdHIgIiIKKyJPcmRlczpcbiIKKyIgIC1zfC0tc3BsaXQgPGZpY2hlcnU+IFs8cHJlZml4dT5dICAgICAgIFRhcmF6YSB1biBhcmNoaXZ1LlxuIgorIiAgLWp8LS1qb2luIDxwYXJ0ZT4gPHBhcnRlPiAuLi4gICAgICAgICAgICBYdW50YSBwYXJ0ZXMuXG4iCisiICAtSXwtLWluZm8gPHBhcnRlPiAuLi4gICAgICAgICAgQW11ZXNhIGluZm9ybWFjacOzbiBzb2JybyB1bmEgcGFydGUuXG4iCisiICAtYXwtLWF1dG8gLW8gPGNvbXBsZXR1PiA8cGFydGU+ICAgICAgICAgQXV0by1hY3VtdWxhIHBhcnRlcy5cbiIKKyIgIC1sfC0tbGlzdHEgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExsaXN0YSB0cm96b3MgcXVlIG51biAiCisiY29uY2FzZW4uXG4iCisiICAtZHwtLWRpc2NhcmQgWzxmaWNoZXJ1PiAuLi5dICAgRGVzY2FydGEgdHJvem9zIHF1ZSBudW4gY29uY2FzZW4uXG4iCisiXG4iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjgyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiT3B0aW9uczpcbiIKKyN8ICIgIC0tZGVwb3RkaXIgPGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLyVzLlxuIgorI3wgIiAgLVN8LS1wYXJ0c2l6ZSA8c2l6ZT4gICAgICAgICAgICAgSW4gS2lCLCBmb3IgLXMgKGRlZmF1bHQgaXMgNDUwKS5cbiIKKyN8ICIgIC1vfC0tb3V0cHV0IDxmaWxlPiAgICAgICAgICAgICAgIEZvciAtaiAoZGVmYXVsdCBpcyA8cGFja2FnZT4tPHZlcnNpb24+LiIKKyN8ICJkZWIpLlxuIgorI3wgIiAgLVF8LS1ucHF1aWV0ICAgICAgICAgICAgICAgICAgICAgQmUgcXVpZXQgd2hlbiAtYSBpcyBub3QgYSBwYXJ0LlxuIgorI3wgIiAgLS1tc2RvcyAgICAgICAgICAgICAgICAgICAgICAgICAgR2VuZXJhdGUgOC4zIGZpbGVuYW1lcy5cbiIKKyN8ICJcbiIKKyN8ICJFeGl0IHN0YXR1czogMCA9IE9LOyAgMSA9IC1hIGlzIG5vdCBhIHBhcnQ7ICAyID0gdHJvdWJsZSFcbiIKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tZGVwb3RkaXIgPGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLyVzLlxuIgorIiAgLVN8LS1wYXJ0c2l6ZSA8c2l6ZT4gICAgICAgICAgICAgSW4gS2lCLCBmb3IgLXMgKGRlZmF1bHQgaXMgNDUwKS5cbiIKKyIgIC1vfC0tb3V0cHV0IDxmaWxlPiAgICAgICAgICAgICAgIEZpbGVuYW1lLCBmb3IgLWogKGRlZmF1bHQgaXNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhY2thZ2U+Xzx2ZXJzaW9uPl88YXJjaD4uZGViKS5cbiIKKyIgIC1RfC0tbnBxdWlldCAgICAgICAgICAgICAgICAgICAgIEJlIHF1aWV0IHdoZW4gLWEgaXMgbm90IGEgcGFydC5cbiIKKyIgIC0tbXNkb3MgICAgICAgICAgICAgICAgICAgICAgICAgIEdlbmVyYXRlIDguMyBmaWxlbmFtZXMuXG4iCisiXG4iCittc2dzdHIgIiIKKyJPcGNpb25lczpcbiIKKyIgICAtLWRlcG90ZGlyIDxkaXJldXRvcml1PiAgICAgIFV0aWxpemEgPGRpcmV1dG9yaXU+IGVuIGN1ZW50YSBkZSAlcy8lcy5cbiIKKyIgICAtU3wtLXBhcnRzaXplIDx0YW1hw7F1PiAgICAgICAgICAgRW4gS2IsIHBhIC1zIChwb3Igb21pc2nDs24geWUgNDUwKS5cbiIKKyIgICAtb3wtLW91dHB1dCA8ZmljaGVydT4gICAgIFBhIC1qIChwb3Igb21pc2nDs24geWUgPHBhcXVldGU+LTx2ZXJzacOzbj4uZGViKVxuIgorIiAgIC1RfC0tbnBxdWlldCAgICAgICAgICAgICAgICAgIFJlc3B1ZXN0YSBzZWxlIGN1YW5kbyAtYSBudW4geWUgdW5hIHBhcnRlLlxuIgorIiAgIC0tbXNkb3MgICAgICAgICAgICAgICAgICAgICAgICAgWGVuZXJhIG5vbWVzIGRlIGZpY2hlcm9zIG5lbCBmb3JtYXR1ICIKKyI4LjMuXG4iCisiXG4iCisiRXN0w6F1IGRlIHNhbGlkYTogMCA9IE9LOyAgMSA9IC1hIG51biB5ZSB1bmEgcGFydGU7ICAyID0gwqFwcm9ibGVtZXMhXG4iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjkyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJFeGl0IHN0YXR1czpcbiIKKyIgIDAgPSBva1xuIgorIiAgMSA9IHdpdGggLS1hdXRvLCBmaWxlIGlzIG5vdCBhIHBhcnRcbiIKKyIgIDIgPSB0cm91YmxlXG4iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6MTAzCittc2dpZCAiVHlwZSBkcGtnLXNwbGl0IC0taGVscCBmb3IgaGVscC4iCittc2dzdHIgIkVzY3JpYmEgZHBrZy1zcGxpdCAtLWhlbHAgcGEgdGVuZXIgYWlkYS4iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjExNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBmaWxlIGluICUuMjUwcyIKK21zZ3N0ciAiZmluIGRlIGZpY2hlcnUgaW5lc3BlcsOhdSBlbiAlLjI1MHMiCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjEyNgorbXNnaWQgInBhcnQgc2l6ZSBpcyBmYXIgdG9vIGxhcmdlIG9yIGlzIG5vdCBwb3NpdGl2ZSIKK21zZ3N0ciAiZWwgdGFtYcOxdSBkZSBsYSBwYXJ0ZSB5ZSBhYm9uZG8gZ3JhbmRlIG8gbnVuIHllIHBvc2l0aXZ1IgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMzAKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFydCBzaXplIG11c3QgYmUgYXQgbGVhc3QgJWQgS2lCICh0byBhbGxvdyBmb3IgaGVhZGVyKSIKK21zZ3N0ciAiIgorImVsIHRhbWHDsXUgZGUgbGEgcGFydGUgdGllbiBkZSBzZXIgcG9sbyBtZW5vcyAlZCBLaUIgKHAnYWxtaXRpciB1bmEgdGVzdGVyYSkiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzo5MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBkZXBvdCBkaXJlY3RvcnkgYCUuMjUwcyciCittc2dzdHIgIm51biBwdWVkZSBsbGVlc2UnbCBkaXJldXRvcml1IGRlIGRlcMOzc2l0dSBgJS4yNTBzJyIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjEzNAorbXNnaWQgIi0tYXV0byByZXF1aXJlcyB0aGUgdXNlIG9mIHRoZSAtLW91dHB1dCBvcHRpb24iCittc2dzdHIgIi0tYXV0byByZXF1aWVyIGwndXN1IGRlIGxhIG9wY2nDs24gLS1vdXRwdXQiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxMzYKK21zZ2lkICItLWF1dG8gcmVxdWlyZXMgZXhhY3RseSBvbmUgcGFydCBmaWxlIGFyZ3VtZW50IgorbXNnc3RyICItLWF1dG8gcmVxdWllciBlc2F1dGFtZW50ZSB1biBmaWNoZXJ1IHBhcnRlIGNvbW8gYXJndW1lbnR1IgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTQwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibnVuIHB1ZWRlIGxsZWVzZSdsIGZpY2hlcnUgcGFydGUgYCUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxNDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiRmlsZSBgJS4yNTBzJyBpcyBub3QgcGFydCBvZiBhIG11bHRpcGFydCBhcmNoaXZlLlxuIgorbXNnc3RyICJFbCBmaWNoZXJ1IGAlLjI1MHMnIG51biB5ZSBwYXJ0ZSBkJ3VuIGFyY2hpdnUgbXVsdGlwYXJ0ZS5cbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE3OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVvcGVuIHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibnVuIHB1ZWRlIHJlYWJyaXNlJ2wgZmljaGVydSBwYXJ0ZSBgJS4yNTBzJyIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE4MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBuZXcgZGVwb3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibnVuIHB1ZWRlIGFicmlzZSdsIG51ZXZ1IGZpY2hlcnUgZGUgZGVww7NzaXR1IGAlLjI1MHMnIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTg0Cittc2dpZCAiZXh0cmFjdGluZyBzcGxpdCBwYXJ0IgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbmFtZSBuZXcgZGVwb3QgZmlsZSBgJS4yNTBzJyB0byBgJS4yNTBzJyIKK21zZ3N0ciAibnVuIHB1ZWRlIHJlbm9tYXNlJ2wgbnVldnUgZmljaGVydSBkZSBkZXDDs3NpdHUgYCUuMjUwcycgYSBgJS4yNTBzJyIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE5NgorIywgYy1mb3JtYXQKK21zZ2lkICJQYXJ0ICVkIG9mIHBhY2thZ2UgJXMgZmlsZWQgKHN0aWxsIHdhbnQgIgorbXNnc3RyICJQYXJ0ZSAlZCBkZWwgcGFxdWV0ZSAlcyBhcmNoaXZhZGEgKGVudMOhIHNlIG5lY2VzaXRhICIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjIwMAorbXNnaWQgIiBhbmQgIgorbXNnc3RyICIgeSAiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSB1c2VkLXVwIGRlcG90IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm51biBwdWVkZSBkZXNhbmljaWFzZSdsIGZpY2hlcnUgZGUgZGVww7NzaXR1IHVzw6F1IGAlLjI1MHMnIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjM1Cittc2dpZCAiSnVuayBmaWxlcyBsZWZ0IGFyb3VuZCBpbiB0aGUgZGVwb3QgZGlyZWN0b3J5OlxuIgorbXNnc3RyICJRdWVkZW4gZmljaGVyb3MgcHV4YXJyYSBuZWwgZGlyZXV0b3JpdSBkZSBkZXDDs3NpdHU6XG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNDAgZHBrZy1zcGxpdC9xdWV1ZS5jOjI2OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBgJS4yNTBzJyIKK21zZ3N0ciAibnUgc2UgcHVlZGUgZmFjZXIgYHN0YXQnIHNvYnJlIGAlLjI1MHMnIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjQzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIgJXMgKCVsdSBieXRlcylcbiIKK21zZ2lkICIgJXMgKCVqZCBieXRlcylcbiIKK21zZ3N0ciAiICVzICglbHUgYnl0ZXMpXG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICVzIChub3QgYSBwbGFpbiBmaWxlKVxuIgorbXNnc3RyICIgJXMgKG51biB5ZSB1biBmaWNoZXJ1IG5vcm1hbClcbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI1MAorbXNnaWQgIlBhY2thZ2VzIG5vdCB5ZXQgcmVhc3NlbWJsZWQ6XG4iCittc2dzdHIgIlBhcXVldGVzIGVudMOhIGVuc2luIGF0b3JuaXphcjpcbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI1OAorIywgYy1mb3JtYXQKK21zZ2lkICIgUGFja2FnZSAlczogcGFydChzKSAiCittc2dzdHIgIiBQYXF1ZXRlICVzOiBwYXJ0ZShzKSIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI3MQorIywgYy1mb3JtYXQKK21zZ2lkICJwYXJ0IGZpbGUgYCUuMjUwcycgaXMgbm90IGEgcGxhaW4gZmlsZSIKK21zZ3N0ciAiZWwgZmljaGVydSBwYXJ0ZSBgJS4yNTBzJyBudW4geWUgdW4gZmljaGVydSBub3JtYWwiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNzgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIih0b3RhbCAlbHUgYnl0ZXMpXG4iCittc2dpZCAiKHRvdGFsICVqZCBieXRlcylcbiIKK21zZ3N0ciAiKHRvdGFsICVsdSBieXRlcylcbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjMwNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGlzY2FyZCBgJS4yNTBzJyIKK21zZ3N0ciAibnVuIHNlIHB1ZWRlIGRlc2NhcnRhciBgJS4yNTBzJyIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjMwNQorIywgYy1mb3JtYXQKK21zZ2lkICJEZWxldGVkICVzLlxuIgorbXNnc3RyICJEZXNpbnN0YWzDoXUgJXMuXG4iCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzo3MCBkcGtnLXNwbGl0L3NwbGl0LmM6NzYgZHBrZy1zcGxpdC9zcGxpdC5jOjgxCittc2dpZCAicGFja2FnZSBmaWVsZCB2YWx1ZSBleHRyYWN0aW9uIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxMzEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gc291cmNlIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm51biBzZSBwdWVkZSBhYnJpciBlbCBmaWNoZXJ1IGZvbnRlIGAlLjI1MHMnIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTMzCittc2dpZCAidW5hYmxlIHRvIGZzdGF0IHNvdXJjZSBmaWxlIgorbXNnc3RyICJudW4gc2UgcHVlZGUgZmFjZXIgYHN0YXQnIHNvYnJlJ2wgZmljaGVydSBmb250ZSIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjEzNQorIywgYy1mb3JtYXQKK21zZ2lkICJzb3VyY2UgZmlsZSBgJS4yNTBzJyBub3QgYSBwbGFpbiBmaWxlIgorbXNnc3RyICJlbCBmaWNoZXJ1IGZvbnRlIGAlLjI1MHMnIG51biB5ZSB1biBmaWNoZXJ1IG5vcm1hbCIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjE1MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiUHV0dGluZyBwYWNrYWdlICVzIHRvZ2V0aGVyIGZyb20gJWQgcGFydHM6ICIKK21zZ2lkICJTcGxpdHRpbmcgcGFja2FnZSAlcyBpbnRvICVkIHBhcnQ6ICIKK21zZ2lkX3BsdXJhbCAiU3BsaXR0aW5nIHBhY2thZ2UgJXMgaW50byAlZCBwYXJ0czogIgorbXNnc3RyWzBdICJQb25pZW5kbyBwYXF1ZXRlICVzIHh1bnR1IGRlbmRlICVkIHBhcnRlczoiCittc2dzdHJbMV0gIlBvbmllbmRvIHBhcXVldGUgJXMgeHVudHUgZGVuZGUgJWQgcGFydGVzOiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjE5MworbXNnaWQgIiIKKyJIZWFkZXIgaXMgdG9vIGxvbmcsIG1ha2luZyBwYXJ0IHRvbyBsb25nLiBZb3VyIHBhY2thZ2UgbmFtZSBvciB2ZXJzaW9uXG4iCisibnVtYmVycyBtdXN0IGJlIGV4dHJhb3JkaW5hcmlseSBsb25nLCBvciBzb21ldGhpbmcuIEdpdmluZyB1cC5cbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MjQ5Cittc2dpZCAiLS1zcGxpdCBuZWVkcyBhIHNvdXJjZSBmaWxlbmFtZSBhcmd1bWVudCIKK21zZ3N0ciAiLS1zcGxpdCBuZWNlc2l0YSB1biBub21lIGRlIGZpY2hlcnUgZm9udGUgY29tbyBhcmd1bWVudHUiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoyNTIKK21zZ2lkICItLXNwbGl0IHRha2VzIGF0IG1vc3QgYSBzb3VyY2UgZmlsZW5hbWUgYW5kIGRlc3RpbmF0aW9uIHByZWZpeCIKK21zZ3N0ciAiIgorIi0tc3BsaXQgdG9tYSBjb21vIG11bmNobyB1biBub21lIGRlIGZpY2hlcnUgZm9udGUgeSB1biBwcmVmaXhvIGRlIGRlc3TDrW4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo4NAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIlxuIgorI3wgIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyN8ICJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLiIKK21zZ2lkICIiCisiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMC0yMDAyIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDA5LTIwMTAgUmFwaGFlbCBIZXJ0em9nLlxuIgorbXNnc3RyICIiCisiXG4iCisiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTAxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIDxjb21tYW5kPlxuIgorI3wgIlxuIgorI3wgIkNvbW1hbmRzOlxuIgorI3wgIiAgLS1pbnN0YWxsIDxsaW5rPiA8bmFtZT4gPHBhdGg+IDxwcmlvcml0eT5cbiIKKyN8ICIgICAgWy0tc2xhdmUgPGxpbms+IDxuYW1lPiA8cGF0aD5dIC4uLlxuIgorI3wgIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGFkZCBhIGdyb3VwIG9mIGFsdGVybmF0aXZlcyB0byB0aGUgc3lzdGVtLlxuIgorI3wgIiAgLS1yZW1vdmUgPG5hbWU+IDxwYXRoPiAgIHJlbW92ZSA8cGF0aD4gZnJvbSB0aGUgPG5hbWU+IGdyb3VwICIKKyN8ICJhbHRlcm5hdGl2ZS5cbiIKKyN8ICIgIC0tcmVtb3ZlLWFsbCA8bmFtZT4gICAgICByZW1vdmUgPG5hbWU+IGdyb3VwIGZyb20gdGhlIGFsdGVybmF0aXZlcyAiCisjfCAic3lzdGVtLlxuIgorI3wgIiAgLS1hdXRvIDxuYW1lPiAgICAgICAgICAgIHN3aXRjaCB0aGUgbWFzdGVyIGxpbmsgPG5hbWU+IHRvIGF1dG9tYXRpYyAiCisjfCAibW9kZS5cbiIKKyN8ICIgIC0tZGlzcGxheSA8bmFtZT4gICAgICAgICBkaXNwbGF5IGluZm9ybWF0aW9uIGFib3V0IHRoZSA8bmFtZT4gZ3JvdXAuXG4iCisjfCAiICAtLWxpc3QgPG5hbWU+ICAgICAgICAgICAgZGlzcGxheSBhbGwgdGFyZ2V0cyBvZiB0aGUgPG5hbWU+IGdyb3VwLlxuIgorI3wgIiAgLS1jb25maWcgPG5hbWU+ICAgICAgICAgIHNob3cgYWx0ZXJuYXRpdmVzIGZvciB0aGUgPG5hbWU+IGdyb3VwIGFuZCBhc2sgIgorI3wgInRoZVxuIgorI3wgIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzZXIgdG8gc2VsZWN0IHdoaWNoIG9uZSB0byB1c2UuXG4iCisjfCAiICAtLXNldCA8bmFtZT4gPHBhdGg+ICAgICAgc2V0IDxwYXRoPiBhcyBhbHRlcm5hdGl2ZSBmb3IgPG5hbWU+LlxuIgorI3wgIiAgLS1hbGwgICAgICAgICAgICAgICAgICAgIGNhbGwgLS1jb25maWcgb24gYWxsIGFsdGVybmF0aXZlcy5cbiIKKyN8ICJcbiIKKyN8ICI8bGluaz4gaXMgdGhlIHN5bWxpbmsgcG9pbnRpbmcgdG8gJXMvPG5hbWU+LlxuIgorI3wgIiAgKGUuZy4gL3Vzci9iaW4vcGFnZXIpXG4iCisjfCAiPG5hbWU+IGlzIHRoZSBtYXN0ZXIgbmFtZSBmb3IgdGhpcyBsaW5rIGdyb3VwLlxuIgorI3wgIiAgKGUuZy4gcGFnZXIpXG4iCisjfCAiPHBhdGg+IGlzIHRoZSBsb2NhdGlvbiBvZiBvbmUgb2YgdGhlIGFsdGVybmF0aXZlIHRhcmdldCBmaWxlcy5cbiIKKyN8ICIgIChlLmcuIC91c3IvYmluL2xlc3MpXG4iCisjfCAiPHByaW9yaXR5PiBpcyBhbiBpbnRlZ2VyOyBvcHRpb25zIHdpdGggaGlnaGVyIG51bWJlcnMgaGF2ZSBoaWdoZXIgIgorI3wgInByaW9yaXR5IGluXG4iCisjfCAiICBhdXRvbWF0aWMgbW9kZS5cbiIKKyN8ICJcbiIKKyN8ICJPcHRpb25zOlxuIgorI3wgIiAgLS1hbHRkaXIgPGRpcmVjdG9yeT4gICAgIGNoYW5nZSB0aGUgYWx0ZXJuYXRpdmVzIGRpcmVjdG9yeS5cbiIKKyN8ICIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICBjaGFuZ2UgdGhlIGFkbWluaXN0cmF0aXZlIGRpcmVjdG9yeS5cbiIKKyN8ICIgIC0tdmVyYm9zZSAgICAgICAgICAgICAgICB2ZXJib3NlIG9wZXJhdGlvbiwgbW9yZSBvdXRwdXQuXG4iCisjfCAiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgcXVpZXQgb3BlcmF0aW9uLCBtaW5pbWFsIG91dHB1dC5cbiIKKyN8ICIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorI3wgIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLS1pbnN0YWxsIDxsaW5rPiA8bmFtZT4gPHBhdGg+IDxwcmlvcml0eT5cbiIKKyIgICAgWy0tc2xhdmUgPGxpbms+IDxuYW1lPiA8cGF0aD5dIC4uLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGFkZCBhIGdyb3VwIG9mIGFsdGVybmF0aXZlcyB0byB0aGUgc3lzdGVtLlxuIgorIiAgLS1yZW1vdmUgPG5hbWU+IDxwYXRoPiAgIHJlbW92ZSA8cGF0aD4gZnJvbSB0aGUgPG5hbWU+IGdyb3VwIGFsdGVybmF0aXZlLlxuIgorIiAgLS1yZW1vdmUtYWxsIDxuYW1lPiAgICAgIHJlbW92ZSA8bmFtZT4gZ3JvdXAgZnJvbSB0aGUgYWx0ZXJuYXRpdmVzICIKKyJzeXN0ZW0uXG4iCisiICAtLWF1dG8gPG5hbWU+ICAgICAgICAgICAgc3dpdGNoIHRoZSBtYXN0ZXIgbGluayA8bmFtZT4gdG8gYXV0b21hdGljIG1vZGUuXG4iCisiICAtLWRpc3BsYXkgPG5hbWU+ICAgICAgICAgZGlzcGxheSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgPG5hbWU+IGdyb3VwLlxuIgorIiAgLS1xdWVyeSA8bmFtZT4gICAgICAgICAgIG1hY2hpbmUgcGFyc2VhYmxlIHZlcnNpb24gb2YgLS1kaXNwbGF5IDxuYW1lPi5cbiIKKyIgIC0tbGlzdCA8bmFtZT4gICAgICAgICAgICBkaXNwbGF5IGFsbCB0YXJnZXRzIG9mIHRoZSA8bmFtZT4gZ3JvdXAuXG4iCisiICAtLWdldC1zZWxlY3Rpb25zICAgICAgICAgbGlzdCBtYXN0ZXIgYWx0ZXJuYXRpdmUgbmFtZXMgYW5kIHRoZWlyIHN0YXR1cy5cbiIKKyIgIC0tc2V0LXNlbGVjdGlvbnMgICAgICAgICByZWFkIGFsdGVybmF0aXZlIHN0YXR1cyBmcm9tIHN0YW5kYXJkIGlucHV0LlxuIgorIiAgLS1jb25maWcgPG5hbWU+ICAgICAgICAgIHNob3cgYWx0ZXJuYXRpdmVzIGZvciB0aGUgPG5hbWU+IGdyb3VwIGFuZCBhc2sgIgorInRoZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzZXIgdG8gc2VsZWN0IHdoaWNoIG9uZSB0byB1c2UuXG4iCisiICAtLXNldCA8bmFtZT4gPHBhdGg+ICAgICAgc2V0IDxwYXRoPiBhcyBhbHRlcm5hdGl2ZSBmb3IgPG5hbWU+LlxuIgorIiAgLS1hbGwgICAgICAgICAgICAgICAgICAgIGNhbGwgLS1jb25maWcgb24gYWxsIGFsdGVybmF0aXZlcy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIk1vdSBkJ3VzdTogJXMgWzxvcGNpw7NuPiAuLi5dIDxvcmRlPlxuIgorIlxuIgorIsOTcmRlbmVzOlxuIgorIiAgLS1pbnN0YWxsIDxlbmxsYXo+IDxub21lPiA8Y2Ftw61uPiA8cHJpb3JpZMOhPlxuIgorIiAgICBbLS1zbGF2ZSA8ZW5sbGF6PiA8bm9tZT4gPGNhbcOtbj5dIC4uLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGFtaWVzdGEgdW4gZ3J1cHUgZCdhbHRlcm5hdGl2ZXMgYWwgc2lzdGVtYS5cbiIKKyIgIC0tcmVtb3ZlIDxub21lPiA8Y2Ftw61uPiBkZXNhbmljaWEgPGNhbcOtbj4gZGVsIGdydXB1IGQnYWx0ZXJuYXRpdmVzICIKKyI8bm9tZT4uXG4iCisiICAtLXJlbW92ZS1hbGwgPG5vbWU+IGRlc2FuaWNpYXIgZWwgZ3J1cHUgPG5vbWU+IGRlbCBzaXN0ZW1hICIKKyJkJ2FsdGVybmF0aXZlcy5cbiIKKyIgIC0tYXV0byA8bm9tZT4gY2FtdWRhIGVuIGVubGxheiBtYWVzdHJ1IGRlIDxub21lPiBhIG1vdSBhdXRvbcOhdGljdS5cbiIKKyIgIC0tZGlzcGxheSA8bm9tZT4gYW11ZXNhIGluZm9ybWFjacOzbiBkZWwgZ3J1cHUgPG5vbWU+LlxuIgorIiAgLS1saXN0IDxub21lPiBhbXVlc2EgdG9sb3MgZGVzdGlub3MgZGVsIGdydXB1IDxub21lPi5cbiIKKyIgIC0tY29uZmlnIDxub21lPiBhbXVlc2EgbGVzIGFsdGVybmF0aXZlcyBwYWwgZ3J1cHUgPG5vbWU+IHkgcGlkZS15XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgYWwgdXN1YXJpdSBlc2NveWVyIGxhIHF1ZSBxdWllciB1c2FyLlxuIgorIiAgLS1zZXQgPG5vbWU+IDxjYW3DrW4+IGNvbmZpZ3VyYSA8Y2Ftw61uPiBjb21vIHVuYSBhbHRlcm5hdGl2YSBwYSA8bm9tZT4uXG4iCisiICAtLWFsbCBsbGFtYSAtLWNvbmZpZyBwYSB0b2xlcyBhbHRlcm5hdGl2ZXMuXG4iCisiXG4iCisiPGVubGxhej4geWUgbCdlbmxsYXogc2ltYsOzbGljdSBxdSdhcHVudGEgYSAlcy88bm9tZT4uXG4iCisiICAocC5leC4gL3Vzci9iaW4vcGFnZXIpXG4iCisiPG5vbWU+IHllJ2wgbm9tZSBwcmluY2lwYWwgcGEgZXN0aSBncnVwdSBkJ2VubGxhY2VzLlxuIgorIiAgKHAuZXguIHBhZ2VyKVxuIgorIjxjYW3DrW4+IHllIGwnYWxsdWdhbWllbnR1IHBhIGxvcyBmaWNoZXJvcyBveGV0aXZ1IGRlIGxlcyBhbHRlcm5hdGl2ZXNcbiIKKyIgIChwLmV4LiAvdXNyL2Jpbi9sZXNzKVxuIgorIjxwcmlvcmlkw6E+IHllIHVuIHZhbG9yIGVudGVydSwgbGVzIG9wY2lvbmVzIGNvbCB2YWxvciBtw6FzIGFsdHUgdGllbmVuIG3DoXMgXG4iCisiICBwcmlvcmlkw6EgcXVlIGxlcyBvcGNpb25lcyBlbiBtb3UgYXV0b23DoXRpY3UuXG4iCisiXG4iCisiT3BjaW9uZXM6XG4iCisiICAtLWFsdGRpciA8ZGlyZWN0b3JpdT4gY2FtdWRhJ2wgZGlyZWN0b3JpdSBkJ2FsdGVybmF0aXZlcy5cbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yaXU+IGNhbXVkYSdsIGRpcmVjdG9yaXUgYWxtaW5pc3RyYXRpdnUuXG4iCisiICAtLXRlc3QgbnVuIGZhY2VyIG5hZGEsIHNvbG8gYW1vc2FyLlxuIgorIiAgLS12ZXJib3NlIG9wZXJhY2nDs24gdmVyYm9zYSwgbcOhcyBzYWxpZGEuXG4iCisiICAtLXF1aWV0IG9wZXJhY2nDs24gc2lsZW5jaW9zYSwgc2FsaWRhIG3DrW5pbWEuXG4iCisiICAtLWhlbHAgYW11ZXNhIGVzdGkgbWVuc2F4IGQnYWlkYS5cbiIKKyIgIC0tdmVyc2lvbiBhbXVlc2EgbGEgdmVyc2nDs24uXG4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIjxsaW5rPiBpcyB0aGUgc3ltbGluayBwb2ludGluZyB0byAlcy88bmFtZT4uXG4iCisiICAoZS5nLiAvdXNyL2Jpbi9wYWdlcilcbiIKKyI8bmFtZT4gaXMgdGhlIG1hc3RlciBuYW1lIGZvciB0aGlzIGxpbmsgZ3JvdXAuXG4iCisiICAoZS5nLiBwYWdlcilcbiIKKyI8cGF0aD4gaXMgdGhlIGxvY2F0aW9uIG9mIG9uZSBvZiB0aGUgYWx0ZXJuYXRpdmUgdGFyZ2V0IGZpbGVzLlxuIgorIiAgKGUuZy4gL3Vzci9iaW4vbGVzcylcbiIKKyI8cHJpb3JpdHk+IGlzIGFuIGludGVnZXI7IG9wdGlvbnMgd2l0aCBoaWdoZXIgbnVtYmVycyBoYXZlIGhpZ2hlciBwcmlvcml0eSAiCisiaW5cbiIKKyIgIGF1dG9tYXRpYyBtb2RlLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hbHRkaXIgPGRpcmVjdG9yeT4gICAgIGNoYW5nZSB0aGUgYWx0ZXJuYXRpdmVzIGRpcmVjdG9yeS5cbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICBjaGFuZ2UgdGhlIGFkbWluaXN0cmF0aXZlIGRpcmVjdG9yeS5cbiIKKyIgIC0tbG9nIDxmaWxlPiAgICAgICAgICAgICBjaGFuZ2UgdGhlIGxvZyBmaWxlLlxuIgorIiAgLS1mb3JjZSAgICAgICAgICAgICAgICAgIGFsbG93IHJlcGxhY2luZyBmaWxlcyB3aXRoIGFsdGVybmF0aXZlIGxpbmtzLlxuIgorIiAgLS1za2lwLWF1dG8gICAgICAgICAgICAgIHNraXAgcHJvbXB0IGZvciBhbHRlcm5hdGl2ZXMgY29ycmVjdGx5ICIKKyJjb25maWd1cmVkXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gYXV0b21hdGljIG1vZGUgKHJlbGV2YW50IGZvciAtLWNvbmZpZyBvbmx5KVxuIgorIiAgLS12ZXJib3NlICAgICAgICAgICAgICAgIHZlcmJvc2Ugb3BlcmF0aW9uLCBtb3JlIG91dHB1dC5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBxdWlldCBvcGVyYXRpb24sIG1pbmltYWwgb3V0cHV0LlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIgorIk1vdSBkJ3VzdTogJXMgWzxvcGNpw7NuPiAuLi5dIDxvcmRlPlxuIgorIlxuIgorIsOTcmRlbmVzOlxuIgorIiAgLS1hZGQgPHByb3BpZXRhcml1PiA8Z3J1cHU+IDxtb3U+PGZpY2hlcnU+IFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGFtaWVzdGEgdW5hIGVudHJhZGEgbnVldmEgbmEgYmFzZSBkYXRvcy5cbiIKKyIgIC0tcmVtb3ZlIDxmaWNoZXJ1PiBkZXNhbmljaWEgdW4gZmljaGVydSBkZSBsYSBiYXNlIGRhdG9zLlxuIgorIiAgLS1saXN0IFs8cGF0csOzbi1nbG9iPl0gYW11ZXNhIGxhIGluZm9ybWFjacOzbiBkZSBsYSBiYXNlIGRhdG9zXG4iCisiICBkZSByZWRlZmluaWNpb25lcy5cbiIKKyJcbiIKKyJPcGNpb25lczpcbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yaXU+IGRlZmluZSdsIGRpcmVjdG9yaXUgY29sIGZpY2hlcnUgc3RhdG92ZXJyaWRlLlxuIgorIiAgLS11cGRhdGUgYW5vdmEgbG9zIHBlcm1pc29zIGRlIGxvcyBmaWNoZXJvcyBkYXJyw6l1LlxuIgorIiAgLS1mb3JjZSBmdWVyemEgbGEgZXhlY3VjacOzbiBkJ3VuYSBhY2Npw7NuIGFucXVlIGZhbGxlbiBsZXMgcHJ1ZWJlcy5cbiIKKyIgIC0tcXVpZXQgb3BlcmFjacOzbiBzaWxlbmNpb3NhLCBzYWxpZGEgcmVkdWNpZGEuXG4iCisiICAtLWhlbHAgYW11ZXNhIGVzdGkgbWVuc2F4ZSBkJ2FpZGEuXG4iCisiICAtLXZlcnNpb24gYW11ZXNhIGxhIHZlcnNpw7NuLlxuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNjMKKyMsIGZ1enp5CisjfCBtc2dpZCAicGFyc2UgZXJyb3IiCittc2dpZCAiZXJyb3IiCittc2dzdHIgInBhcnNlIGVycm9yIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTkzCittc2dpZCAid2FybmluZyIKK21zZ3N0ciAiYXZpc3UiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzozNTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInR3byBjb21tYW5kcyBzcGVjaWZpZWQ6ICVzIGFuZCAtLSVzIgorbXNnaWQgInR3byBjb21tYW5kcyBzcGVjaWZpZWQ6IC0tJXMgYW5kIC0tJXMiCittc2dzdHIgImVzcGVjaWZpY8Ohcm9uc2UgZG9zIMOzcmRlbmVzOiAlcyB5IC0tJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzozODcKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImNhbm5vdCBvcGVuIGRpdmVyc2lvbnM6ICVzIgorbXNnaWQgImNhbm5vdCBhcHBlbmQgdG8gJyVzJyIKK21zZ3N0ciAiZmFsbHUgYWwgYWJyaXIgZmljaGVydSBkZSBkZXN2w61vczogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo1NTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byByZW1vdmUgJXM6ICVzIgorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgJyVzJyIKK21zZ3N0ciAibnVuIHNlIHB1ZWRlIGRlc2FuaWNpYXIgJXM6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTExMQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgZmlsZSBpbiAlcyB3aGlsZSB0cnlpbmcgdG8gcmVhZCAlcyIKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBmaWxlIHdoaWxlIHRyeWluZyB0byByZWFkICVzIgorbXNnc3RyICJmaW4gZGUgZmljaGVydSBpbmVzcGVyw6F1IGVuICVzIGFsIGxsZWVyICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTExMworIywgYy1mb3JtYXQKK21zZ2lkICJ3aGlsZSByZWFkaW5nICVzOiAlcyIKK21zZ3N0ciAibWllbnRyZXMgc2UgbGxlw61hICVzOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGZpbGUgaW4gJXMgd2hpbGUgdHJ5aW5nIHRvIHJlYWQgJXMiCittc2dpZCAibGluZSBub3QgdGVybWluYXRlZCB3aGlsZSB0cnlpbmcgdG8gcmVhZCAlcyIKK21zZ3N0ciAiZmluIGRlIGZpY2hlcnUgaW5lc3BlcsOhdSBlbiAlcyBhbCBsbGVlciAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgY29ycnVwdDogJXMiCittc2dzdHIgIiVzIGNvcnJvbXDDrXU6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE1MAorIywgYy1mb3JtYXQKK21zZ2lkICJuZXdsaW5lcyBwcm9oaWJpdGVkIGluIHVwZGF0ZS1hbHRlcm5hdGl2ZXMgZmlsZXMgKCVzKSIKK21zZ3N0ciAibG9zIHNhbHRvcyBkZSBsbGluaWEgdGFuIHRvcmdhb3Mgbm9zIGZpY2hlcm9zIHVwZGF0ZS1hbHRlcm5hdGl2ZXMgKCVzKSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNjMKK21zZ2lkICJzbGF2ZSBuYW1lIgorbXNnc3RyICJub21lIGVzY2xhdnUiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTcxIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDA1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJkdXBsaWNhdGUgc2xhdmUgJXMiCittc2dpZCAiZHVwbGljYXRlIHNsYXZlIG5hbWUgJXMiCittc2dzdHIgImVzY2xhdnUgZHVwbGljw6F1IGAlcyciCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTc0Cittc2dpZCAic2xhdmUgbGluayIKK21zZ3N0ciAiZW5sbGF6IGVzY2xhdnUiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTc4CisjLCBjLWZvcm1hdAorbXNnaWQgInNsYXZlIGxpbmsgc2FtZSBhcyBtYWluIGxpbmsgJXMiCittc2dzdHIgImwnZW5sbGF6IGVzY2xhdnUgeWUnbCBtZXNtdSBxdWUnbCBwcmluY2lwYWwgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTg1IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDEyCisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBzbGF2ZSBsaW5rICVzIgorbXNnc3RyICJlbmxsYXogZXNjbGF2dSBkdXBsaWPDoXUgYCVzJyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMDQKK21zZ2lkICJtYXN0ZXIgZmlsZSIKK21zZ3N0ciAiZmljaGVydSBtYXllc3RydSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHBhdGggJXMiCittc2dzdHIgImNhbcOtbiBkdXBsaWPDoXUgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjI2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJhbHRlcm5hdGl2ZSAlcyAocGFydCBvZiBsaW5rIGdyb3VwICVzKSBkb2Vzbid0IGV4aXN0LiBSZW1vdmluZyBmcm9tIGxpc3Qgb2YgIgorImFsdGVybmF0aXZlcy4iCittc2dzdHIgIiIKKyJMJ2FsdGVybmF0aXZhICVzIChwYXJ0ZSBkZWwgZ3J1cHUgZCdlbmxsYXogJXMpLCBudW4gcydhdG9ww7MuIERlc2FuaWNpw6FuZG9sYSAiCisiZGUgbGEgbGxpc3RhIGQnYWx0ZXJuYXRpdmVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMjkgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyNDAKK21zZ2lkICJwcmlvcml0eSIKK21zZ3N0ciAicHJpb3JpZMOhIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIzMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI0OQorbXNnaWQgInNsYXZlIGZpbGUiCittc2dzdHIgImZpY2hlcnUgZXNjbGF2dSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyNDQKKyMsIGMtZm9ybWF0Cittc2dpZCAicHJpb3JpdHkgb2YgJXM6ICVzIgorbXNnc3RyICJwcmlvcmlkw6EgZGUgJXM6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI5NworbXNnaWQgInN0YXR1cyIKK21zZ3N0ciAiZXN0w6F1IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI5OQorbXNnaWQgImludmFsaWQgc3RhdHVzIgorbXNnc3RyICJlc3TDoXUgaW52w6FsaWR1IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTMwNAorIywgZnV6enkKK21zZ2lkICJtYXN0ZXIgbGluayIKK21zZ3N0ciAiZmljaGVydSBtYXllc3RydSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGlzY2FyZGluZyBvYnNvbGV0ZSBzbGF2ZSBsaW5rICVzICglcykuIgorbXNnc3RyICJkZXNjYXJ0YW5kbyBlbmxsYXogZXNjbGF2dSBwZXJ2aWV5dSAlcyAoJXMpLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MDIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NjkKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjM4Cittc2dpZCAiYXV0byBtb2RlIgorbXNnc3RyICJtb3UgYXV0byIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MDIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NzgKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjM5Cittc2dpZCAibWFudWFsIG1vZGUiCittc2dzdHIgIm1vdSBtYW51YWwiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTA1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIgIGxpbmsgY3VycmVudGx5IHBvaW50cyB0byAlcyIKK21zZ3N0ciAiIGwnZW5sbGF6IGFwdW50YSBhbmd1YcOxbyBhICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwOAorIywgZnV6enkKK21zZ2lkICIgIGxpbmsgY3VycmVudGx5IGFic2VudCIKK21zZ3N0ciAiIG51biBoYWkgZW5sbGF6IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUxMgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiJXMgLSBwcmlvcml0eSAlcyIKK21zZ2lkICIlcyAtIHByaW9yaXR5ICVkIgorbXNnc3RyICIlcyAtIHByaW9yaWTDoSAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MTUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiAgc2xhdmUgJXM6ICVzIgorbXNnc3RyICIgZXNjbGF2dSAlczogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTIyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJDdXJyZW50ICdiZXN0JyB2ZXJzaW9uIGlzICclcycuIgorbXNnc3RyICJBbmd1YcOxbyBsYSDCq21leW9ywrsgdmVyc2nDs24geWUgJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUyNAorbXNnaWQgIk5vIHZlcnNpb25zIGF2YWlsYWJsZS4iCittc2dzdHIgIk51biBoYWkgZGVuZ3VuYSB2ZXJzacOzbiBkaXNwb25pYmxlLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NTMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIlRoZXJlIGFyZSAlcyBjaG9pY2VzIGZvciB0aGUgYWx0ZXJuYXRpdmUgJXMgKHByb3ZpZGluZyAlcykuIgorbXNnaWQgIlRoZXJlIGlzICVkIGNob2ljZSBmb3IgdGhlIGFsdGVybmF0aXZlICVzIChwcm92aWRpbmcgJXMpLiIKK21zZ2lkX3BsdXJhbCAiVGhlcmUgYXJlICVkIGNob2ljZXMgZm9yIHRoZSBhbHRlcm5hdGl2ZSAlcyAocHJvdmlkaW5nICVzKS4iCittc2dzdHJbMF0gIkhhaSAlcyBlbGVpY2lvbmVzIHBhIGwnYWx0ZXJuYXRpdmEgJXMgKHByb3BvcmNpb25hbmRvICVzKS4iCittc2dzdHJbMV0gIkhhaSAlcyBlbGVpY2lvbmVzIHBhIGwnYWx0ZXJuYXRpdmEgJXMgKHByb3BvcmNpb25hbmRvICVzKS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYwCittc2dpZCAiU2VsZWN0aW9uIgorbXNnc3RyICJTZWxlaWNpw7NuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2MQorbXNnaWQgIlBhdGgiCittc2dzdHIgIkNhbcOtbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NjEKK21zZ2lkICJQcmlvcml0eSIKK21zZ3N0ciAiUHJpb3JpZMOhIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2MQorbXNnaWQgIlN0YXR1cyIKK21zZ3N0ciAiRXN0w6F1IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU4MgorIywgYy1mb3JtYXQKK21zZ2lkICJQcmVzcyBlbnRlciB0byBrZWVwIHRoZSBjdXJyZW50IGNob2ljZVsqXSwgb3IgdHlwZSBzZWxlY3Rpb24gbnVtYmVyOiAiCittc2dzdHIgIiIKKyJDYWxjYXIgZW50ZXIgcGFyYSBkZXhhciBlbCB2YWxvciBwb3Igb21pc2nDs25bKl0sIG8gZXNjcmliaXIgZWwgbsO6bWJlcnUgZGUgIgorInNlbGVpY2nDs246ICIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3MjEKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IHJlcGxhY2luZyAlcyB3aXRoIGEgbGluay4iCittc2dzdHIgIm51biBzZSB0cm9jYSAlcyBjb24gdW4gZW5sbGF6LiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3NjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2FuJ3QgaW5zdGFsbCB1bmtub3duIGNob2ljZSAlcyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTc4MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisic2tpcCBjcmVhdGlvbiBvZiAlcyBiZWNhdXNlIGFzc29jaWF0ZWQgZmlsZSAlcyAob2YgbGluayBncm91cCAlcykgZG9lc24ndCAiCisiZXhpc3QuIgorbXNnc3RyICIiCisic2FsdHUgY3JpYW5kbyAlcyBwb3JxdWUnbCBmaWNoZXJ1IGFzb2Npw6F1ICVzIChkZWwgZ3J1cHUgZW5sbGF6ICVzKSBudW4gIgorImVzaXN0ZS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNzkwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJub3QgcmVwbGFjaW5nICVzIHdpdGggYSBsaW5rLiIKK21zZ2lkICJub3QgcmVtb3ZpbmcgJXMgc2luY2UgaXQncyBub3QgYSBzeW1saW5rLiIKK21zZ3N0ciAibnVuIHNlIHRyb2NhICVzIGNvbiB1biBlbmxsYXouIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA0MSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA0NworIywgYy1mb3JtYXQKK21zZ2lkICJDYWxsICVzLiIKK21zZ3N0ciAiTGxhbWFkYSAlcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDUxCisjLCBjLWZvcm1hdAorbXNnaWQgIkFsdGVybmF0aXZlICVzIHVuY2hhbmdlZCBiZWNhdXNlIGNob2ljZSAlcyBpcyBub3QgYXZhaWxhYmxlLiIKK21zZ3N0ciAiQWx0ZXJuYXRpdmEgJXMgZW5zaW4gY2FtdWRhciBwb3JxdWUgbGEgZWxlaWNpw7NuICVzIG51biB0YSBkaXNwb25pYmxlLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2tpcCB1bmtub3duIGFsdGVybmF0aXZlICVzLiIKK21zZ3N0ciAiTnVuIHMnYWxjdWVudHJhIHVuYSBhbHRlcm5hdGl2YSAlcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDc3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBmaWxlIGluICVzIHdoaWxlIHRyeWluZyB0byByZWFkICVzIgorbXNnaWQgImxpbmUgdG9vIGxvbmcgb3Igbm90IHRlcm1pbmF0ZWQgd2hpbGUgdHJ5aW5nIHRvIHJlYWQgJXMiCittc2dzdHIgImZpbiBkZSBmaWNoZXJ1IGluZXNwZXLDoXUgZW4gJXMgYWwgbGxlZXIgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDkwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTAzCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjExMworIywgYy1mb3JtYXQKK21zZ2lkICJTa2lwIGludmFsaWQgbGluZTogJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVuYW1pbmcgJXMgbGluayBmcm9tICVzIHRvICVzLiIKK21zZ3N0ciAicmVub21hbmRvIGVubGxheiAlcyBkZSAlcyBhICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxNzMKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVuYW1pbmcgJXMgc2xhdmUgbGluayBmcm9tICVzIHRvICVzLiIKK21zZ3N0ciAicmVub21hbmRvIGVubGxheiBlc2NsYXZ1ICVzIGRlICVzIGEgJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE4OQorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBuYW1lICglcykgbXVzdCBub3QgY29udGFpbiAnLycgYW5kIHNwYWNlcy4iCittc2dzdHIgImVsIG5vbWUgYWx0ZXJuYXRpdnUgKCVzKSBudW4gcHVlZGUgdGVuZXIgJy8nIHkgZXNwYWNpb3MuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE5MworIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBsaW5rIGlzIG5vdCBhYnNvbHV0ZSBhcyBpdCBzaG91bGQgYmU6ICVzIgorbXNnc3RyICJsJ2VubGxheiBhbHRlcm5hdGl2dSwgbnVuIHllIGFic29sdXR1IHkgdGVuZHLDrWEgZGUgc2VyOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxOTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgcGF0aCBpcyBub3QgYWJzb2x1dGUgYXMgaXQgc2hvdWxkIGJlOiAlcyIKK21zZ3N0ciAiZWwgY2Ftw61uIGFsdGVybmF0aXZ1IG51biB5ZSBhYnNvbHV0dSB5IHRlbmRyw61hIGRlIHNlcjogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjI0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBtYXN0ZXI6ICVzIgorbXNnaWQgImFsdGVybmF0aXZlICVzIGNhbid0IGJlIG1hc3RlcjogaXQgaXMgYSBzbGF2ZSBvZiAlcyIKK21zZ3N0ciAiYWx0ZXJuYXRpdnUgJXMgbnVuIHB1ZWRlIHNlciBtYXllc3RydTogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjMyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjY3CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIGxpbmsgJXMgaXMgYWxyZWFkeSBtYW5hZ2VkIGJ5ICVzLiIKK21zZ3N0ciAiZW5sbGF6IGFsdGVybmF0aXZ1ICVzIHRhIGRpc3BvbmlibGUgeSByZW1hbsOhdSBwb3IgJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI0MQorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBwYXRoICVzIGRvZXNuJ3QgZXhpc3QuIgorbXNnc3RyICJjYW3DrW4gYWx0ZXJuYXRpdnUgJXMgbnVuIGVzaXN0ZSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImFsdGVybmF0aXZlICVzIGNhbid0IGJlIHNsYXZlIG9mICVzOiAlcyIKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBzbGF2ZSBvZiAlczogaXQgaXMgYSBtYXN0ZXIgYWx0ZXJuYXRpdmUuIgorbXNnc3RyICJhbHRlcm5hdGl2dSAlcyBudW4gcHVlZGUgc2VyIGVzY2xhdnUgZGUgJXM6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI1OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgbWFzdGVyOiAlcyIKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBzbGF2ZSBvZiAlczogaXQgaXMgYSBzbGF2ZSBvZiAlcyIKK21zZ3N0ciAiYWx0ZXJuYXRpdnUgJXMgbnVuIHB1ZWRlIHNlciBtYXllc3RydTogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjc4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJhbHRlcm5hdGl2ZSBsaW5rICVzIGlzIGFscmVhZHkgbWFuYWdlZCBieSAlcy4iCittc2dpZCAiYWx0ZXJuYXRpdmUgbGluayAlcyBpcyBhbHJlYWR5IG1hbmFnZWQgYnkgJXMgKHNsYXZlIG9mICVzKS4iCittc2dzdHIgImVubGxheiBhbHRlcm5hdGl2dSAlcyB0YSBkaXNwb25pYmxlIHkgcmVtYW7DoXUgcG9yICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBhcmd1bWVudCBgJXMnIgorbXNnc3RyICJhcmd1bWVudHUgYCVzJyBkZXNjb25vY8OtdSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNDMKK21zZ2lkICItLWluc3RhbGwgbmVlZHMgPGxpbms+IDxuYW1lPiA8cGF0aD4gPHByaW9yaXR5PiIKK21zZ3N0ciAiLS1pbnN0YWxsIG5lY2VzaXRhIDxlbmxsYXo+IDxub21lPiA8Y2Ftw61uPiA8cHJpb3JpZMOhPiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNDYgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzOTcKK21zZ2lkICI8bGluaz4gYW5kIDxwYXRoPiBjYW4ndCBiZSB0aGUgc2FtZSIKK21zZ3N0ciAiPGxpbms+IHkgPHBhdGg+IG51biBwdWVkZW4gc2VyIGxvIG1lc21vIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM0OQorbXNnaWQgInByaW9yaXR5IG11c3QgYmUgYW4gaW50ZWdlciIKK21zZ3N0ciAiZWwgdmFsb3IgZGUgcHJpb3JpZMOhIHRpZW4gcXVlIHNlciB1biBlbnRlcnUiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzYyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgPG5hbWU+IDxwYXRoPiIKK21zZ3N0ciAiLS0lcyBuZWNlc2l0YSA8bm9tZT4gPGNhbcOtbj4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzc2CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgPG5hbWU+IgorbXNnc3RyICItLSVzIG5lY2VzaXRhIDxub21lPiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzODgKK21zZ2lkICItLXNsYXZlIG9ubHkgYWxsb3dlZCB3aXRoIC0taW5zdGFsbCIKK21zZ3N0ciAic8OzbG8gc2UgcHVlZGUgdXNhciAtLXNsYXZlIGNvbiAtLWluc3RhbGwiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzkwCittc2dpZCAiLS1zbGF2ZSBuZWVkcyA8bGluaz4gPG5hbWU+IDxwYXRoPiIKK21zZ3N0ciAiLS1zbGF2ZSBuZWNlc2l0YSA8ZW5sbGF6PiA8bm9tZT4gPGNhbcOtbj4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzk5CisjLCBjLWZvcm1hdAorbXNnaWQgIm5hbWUgJXMgaXMgYm90aCBwcmltYXJ5IGFuZCBzbGF2ZSIKK21zZ3N0ciAiZWwgbm9tZSAlcyB5ZSBhIGxhIHZleiBwcmluY2lwYWwgeSBlc2NsYXZ1IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQwMgorIywgYy1mb3JtYXQKK21zZ2lkICJsaW5rICVzIGlzIGJvdGggcHJpbWFyeSBhbmQgc2xhdmUiCittc2dzdHIgImwnZW5sbGF6ICVzIHllIGEgbGEgdmV6IHByaW5jaXBhbCB5IGVzY2xhdnUiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDIyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSA8ZmlsZT4gYXJndW1lbnQiCittc2dzdHIgIi0tJXMgbmVjZXNpdGEgdW4gcGFyw6FtZXRydSA8ZmlsZT4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDQ4CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gb3B0aW9uIGAlcyciCittc2dzdHIgIm9wY2nDs24gYCVzJyBkZXNjb25vY2lkYSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0NTMKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIm5lZWQgLS1kaXNwbGF5LCAtLXF1ZXJ5LCAtLWxpc3QsIC0tZ2V0LXNlbGVjdGlvbnMsIC0tY29uZmlnLC0tc2V0LCAtLXNldC0iCisjfCAic2VsZWN0aW9ucywgLS1pbnN0YWxsLCAtLXJlbW92ZSwgLS1hbGwsIC0tcmVtb3ZlLWFsbCBvciAtLWF1dG8iCittc2dpZCAiIgorIm5lZWQgLS1kaXNwbGF5LCAtLXF1ZXJ5LCAtLWxpc3QsIC0tZ2V0LXNlbGVjdGlvbnMsIC0tY29uZmlnLCAtLXNldCwgLS1zZXQtIgorInNlbGVjdGlvbnMsIC0taW5zdGFsbCwgLS1yZW1vdmUsIC0tYWxsLCAtLXJlbW92ZS1hbGwgb3IgLS1hdXRvIgorbXNnc3RyICIiCisibmVjZXNpdG8gLS1kaXNwbGF5LCAtLXF1ZXJ5LCAtLWxpc3QsIC0tZ2V0LXNlbGVjdGlvbnMsIC0tY29uZmlnLC0tc2V0LCAtLXNldC0iCisic2VsZWN0aW9ucywgLS1pbnN0YWxsLCAtLXJlbW92ZSwgLS1hbGwsIC0tcmVtb3ZlLWFsbCDDsyAtLWF1dG8iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDkwCisjLCBmdXp6eQorI3wgbXNnaWQgInJlYWQgZXJyb3Igb24gc3RhbmRhcmQgaW5wdXQiCittc2dpZCAiPHN0YW5kYXJkIGlucHV0PiIKK21zZ3N0ciAiZmFsbHUgZGUgbGxlY3R1cmEgbmEgZW50cmFkYSBlc3TDoW5kYXIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTAwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTAzCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIGFsdGVybmF0aXZlcyBmb3IgJXMuIgorbXNnc3RyICJudW4gaGFpIGFsdGVybmF0aXZlcyBwYSAlcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTMwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzLyVzIGlzIGRhbmdsaW5nLCBpdCB3aWxsIGJlIHVwZGF0ZWQgd2l0aCBiZXN0IGNob2ljZS4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MzQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIlcyBoYXMgYmVlbiBjaGFuZ2VkIChtYW51YWxseSBvciBieSBhIHNjcmlwdCkuIFN3aXRjaGluZyB0byBtYW51YWwgIgorI3wgInVwZGF0ZXMgb25seS4iCittc2dpZCAiIgorIiVzLyVzIGhhcyBiZWVuIGNoYW5nZWQgKG1hbnVhbGx5IG9yIGJ5IGEgc2NyaXB0KS4gU3dpdGNoaW5nIHRvIG1hbnVhbCAiCisidXBkYXRlcyBvbmx5LiIKK21zZ3N0ciAiIgorIkNhbXVkw7NzZSAlcyAobWFudWFsbWVudGUgbyBwb3IgdW4gcHJvZ3JhbWEpLiBDYW11ZGFuZG8gcGEgZmFjZXIgc8OzbG8gIgorImFub3ZhbWllbnRvcyBtYW51YWxlcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTQyCisjLCBjLWZvcm1hdAorbXNnaWQgInNldHRpbmcgdXAgYXV0b21hdGljIHNlbGVjdGlvbiBvZiAlcy4iCittc2dzdHIgImNvbmZpZ3VyYW5kbyBsYSBlc2NveWV0YSBhdXRvbcOhdGljYSBkZSAlcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTUxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBmb3IgJXMgbm90IHJlZ2lzdGVyZWQsIG5vdCBzZXR0aW5nLiIKK21zZ3N0ciAiYWx0ZXJuYXRpdmEgJXMgcGEgJXMgbnVuIHRhIHJleGlzdHJhZGEsIG51biBzZSBkZXNhbmljaWFyw6EuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU1NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU2MworIywgYy1mb3JtYXQKK21zZ2lkICJUaGVyZSBpcyBubyBwcm9ncmFtIHdoaWNoIHByb3ZpZGVzICVzLiIKK21zZ3N0ciAiTnVuIGhhaSBkZW5nw7puIHByb2dyYW1hIHF1J2FwdXJyYSAlcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTY1IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTc1Cittc2dpZCAiTm90aGluZyB0byBjb25maWd1cmUuIgorbXNnc3RyICJSZW4gcXVlIGNvbmZpZ3VyYXIuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU3MworIywgYy1mb3JtYXQKK21zZ2lkICJUaGVyZSBpcyBvbmx5IG9uZSBhbHRlcm5hdGl2ZSBpbiBsaW5rIGdyb3VwICVzOiAlcyIKK21zZ3N0ciAiSGFpIG5hbcOhaSB1bmEgYWx0ZXJuYXRpdmEgbmVsIGdydXB1IGVubGxheiAlczogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTg0CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlICVzIGZvciAlcyBub3QgcmVnaXN0ZXJlZCwgbm90IHJlbW92aW5nLiIKK21zZ3N0ciAiYWx0ZXJuYXRpdmEgJXMgcGEgJXMgbnVuIHRhIHJleGlzdHJhZGEsIG51biBzZSBkZXNhbmljaWFyw6EuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU5MgorIywgYy1mb3JtYXQKK21zZ2lkICJyZW1vdmluZyBtYW51YWxseSBzZWxlY3RlZCBhbHRlcm5hdGl2ZSAtIHN3aXRjaGluZyAlcyB0byBhdXRvIG1vZGUiCittc2dzdHIgIiIKKyJkZXNhbmljaWFuZG8gbCdhbHRlcm5hdGl2YSBlc2NveWlkYSBhIG1hbm8sIGNhbXVkYW5kbyAlcyBhIG1vdSBhdXRvbcOhdGljdSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MTcKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImF1dG9tYXRpYyB1cGRhdGVzIG9mICVzIGFyZSBkaXNhYmxlZCwgbGVhdmluZyBpdCBhbG9uZS4iCittc2dpZCAiYXV0b21hdGljIHVwZGF0ZXMgb2YgJXMvJXMgYXJlIGRpc2FibGVkLCBsZWF2aW5nIGl0IGFsb25lLiIKK21zZ3N0ciAidMOhbiBkZXNoYWJpbGl0YW9zIGxvcyBhbm92YW1pZW50b3MgYXV0b23DoXRpY29zIGRlICVzLCBudW4gc2UgdmEgdG9jYXIuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYxOQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidG8gcmV0dXJuIHRvIGF1dG9tYXRpYyB1cGRhdGVzIHVzZSBgdXBkYXRlLWFsdGVybmF0aXZlcyAtLWF1dG8gJXMnLiIKK21zZ2lkICJ0byByZXR1cm4gdG8gYXV0b21hdGljIHVwZGF0ZXMgdXNlICclcyAtLWF1dG8gJXMnLiIKK21zZ3N0ciAiIgorInBhIHZvbHZlciBhIGZhY2VyIGFub3ZhbWllbnRvcyBhdXRvbcOhdGljb3MgdXNhIGB1cGRhdGUtYWx0ZXJuYXRpdmVzIC0tYXV0byAiCisiJXMnLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MzYKKyMsIGMtZm9ybWF0Cittc2dpZCAidXNpbmcgJXMgdG8gcHJvdmlkZSAlcyAoJXMpIGluICVzLiIKK21zZ3N0ciAiVXNhbmRvICVzIHBhIHByb3ZlZXIgJXMgKCVzKSBlbiAlcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjQ0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJUaGVyZSBpcyBvbmx5IG9uZSBhbHRlcm5hdGl2ZSBpbiBsaW5rIGdyb3VwICVzOiAlcyIKK21zZ2lkICIiCisiZm9yY2luZyByZWluc3RhbGxhdGlvbiBvZiBhbHRlcm5hdGl2ZSAlcyBiZWNhdXNlIGxpbmsgZ3JvdXAgJXMgaXMgYnJva2VuLiIKK21zZ3N0ciAiSGFpIG5hbcOhaSB1bmEgYWx0ZXJuYXRpdmEgbmVsIGdydXB1IGVubGxheiAlczogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjUxCisjLCBjLWZvcm1hdAorbXNnaWQgImN1cnJlbnQgYWx0ZXJuYXRpdmUgJXMgaXMgdW5rbm93biwgc3dpdGNoaW5nIHRvICVzIGZvciBsaW5rIGdyb3VwICVzLiIKK21zZ3N0ciAiIgorCisjfiBtc2dpZCAiaXQgaXMgYSBtYXN0ZXIgYWx0ZXJuYXRpdmUuIgorI34gbXNnc3RyICJ5ZSB1biBtYXllc3RydSBhbHRlcm5hdGl2dS4iCisKKyN+IG1zZ2lkICJpdCBpcyBhIHNsYXZlIG9mICVzIgorI34gbXNnc3RyICJ5ZSBlc2NsYXZ1IGRlICVzIgorCisjLCBmdXp6eQorI358IG1zZ2lkICJjYW5ub3Qgc3RhdCBvbGQgbmFtZSBgJXMnOiAlcyIKKyN+IG1zZ2lkICJjYW5ub3Qgc3RhdCAlczogJXMiCisjfiBtc2dzdHIgIm51biBzZSBwdWVkZSBmYWNlciBgc3RhdCcgc29icmUnbCBub21lIGFudGlndXUgYCVzJzogJXMiCisKKyN+IG1zZ2lkICJyZWFkbGluayglcykgZmFpbGVkOiAlcyIKKyN+IG1zZ3N0ciAibGxlY3R1cmFlbmxsYXooJXMpIGZhbGzDszogJXMiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgInJlYWRsaW5rKCVzKSBmYWlsZWQ6ICVzIgorI34gbXNnaWQgInNjYW4gb2YgJXMgZmFpbGVkOiAlcyIKKyN+IG1zZ3N0ciAibGxlY3R1cmFlbmxsYXooJXMpIGZhbGzDszogJXMiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgImZhaWxlZCB0byBleGVjICVzIgorI34gbXNnaWQgImZhaWxlZCB0byBleGVjdXRlICVzOiAlcyIKKyN+IG1zZ3N0ciAiZmFsbHUgYWwgZXhlY3V0YXIgJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gbWFrZSAlcyBhIHN5bWxpbmsgdG8gJXM6ICVzIgorI34gbXNnc3RyICJudW4gcHVlIGZhY2VzZSBkZSAlcyB1biBlbmxsYXogc2ltYsOzbGljdSBhICVzOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsICVzIGFzICVzOiAlcyIKKyN+IG1zZ3N0ciAibnVuIHB1ZSBpbnN0YWxhc2UgJXMgY29tbyAlczogJXMiCisKKyN+IG1zZ2lkICJ3aGlsZSB3cml0aW5nICVzOiAlcyIKKyN+IG1zZ3N0ciAibWllbnRyZXMgcydlc2NyaWLDrWEgJXM6ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHJlYWQgJXM6ICVzIgorI34gbXNnc3RyICJudW4gc2UgcHVlZGUgbGxlZXIgJXM6ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGNsb3NlICVzOiAlcyIKKyN+IG1zZ3N0ciAibnVuIHNlIHB1ZWRlIHphcnJhciAlczogJXMiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgInVuYWJsZSB0byB3cml0ZSAlczogJXMiCisjfiBtc2dpZCAiY2Fubm90IHdyaXRlICVzOiAlcyIKKyN+IG1zZ3N0ciAibnVuIHNlIHB1ZWRlIGVzY3JpYmlyICVzOiAlcyIKKworIywgZnV6enkKKyN+fCBtc2dpZCAidW5hYmxlIHRvIHJlbmFtZSAlcyB0byAlczogJXMiCisjfiBtc2dpZCAidW5hYmxlIHRvIHJlbmFtZSBmaWxlICclcycgdG8gJyVzJyIKKyN+IG1zZ3N0ciAibnVuIHNlIHB1ZWRlIHJlbm9tYXIgJXMgYSAlczogJXMiCisKKyN+IG1zZ2lkICJtYWxsb2MgZmFpbGVkICglbGQgYnl0ZXMpIgorI34gbXNnc3RyICJmYWxsw7MgZW4gbWFsbG9jICglbGQgYnl0ZXMpIgorCisjfiBtc2dpZCAicmVhbGxvYyBmYWlsZWQgKCVsZCBieXRlcykiCisjfiBtc2dzdHIgImZhbGzDsyBlbiByZWFsbG9jICglbGQgYnl0ZXMpIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHVuYnVmZmVyIGAlLjI1NXMnIgorI34gbXNnc3RyICJudW4gcHVlZGUgZGVzZmFjZXNlJ2wgYsO6ZmVyIGAlLjI1NXMnIgorCisjfiBtc2dpZCAicGFydCBmaWxlIGAlLjI1MHMnIGhhcyB0cmFpbGluZyBnYXJiYWdlIgorI34gbXNnc3RyICJlbCBmaWNoZXJ1IHBhcnRlIGAlLjI1MHMnIHRpZW4gYmFzb3JpYSBhbCBmaW5hbCIKKworI34gbXNnaWQgInNpemUgJTdkIG9jY3VycyAlNWQgdGltZXNcbiIKKyN+IG1zZ3N0ciAiZWwgdGFtYcOxdSAlN2QgYXBhZXogJTVkIHZlZ8OhZXNcbiIKKworI34gbXNnaWQgIm91dCBvZiBtZW1vcnkgcHVzaGluZyBlcnJvciBoYW5kbGVyOiAiCisjfiBtc2dzdHIgIm1lbW9yaWEgZXNjb3NhZGEgcmVtYW5hbmRvIGVsIHhlc3RvciBkJ2Vycm9yZXM6ICIKKworI34gbXNnaWQgInVuYWJsZSB0byB1bmxvY2sgZHBrZyBzdGF0dXMgZGF0YWJhc2UiCisjfiBtc2dzdHIgIm51biBwdWVkZSBkZXNibG9xdWlhZSBsYSBiYXNlIGRlIGRhdG9zIGQnZXN0w6F1IGRlIGRwa2ciCisKKyN+IG1zZ2lkICJjb3B5IGluZm8gZmlsZSBgJS4yNTVzJyIKKyN+IG1zZ3N0ciAiY29waWEnbCBmaWNoZXJ1IGQnaW5mb3JtYWNpw7NuIGAlLjI1MHMnIgorCisjfiBtc2dpZCAicGFyc2UgZXJyb3IiCisjfiBtc2dzdHIgInBhcnNlIGVycm9yIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHdyaXRlIHBhcnNpbmcgd2FybmluZyIKKyN+IG1zZ3N0ciAiZmFsbMOzIGFsIGVzY3JpYmlyIGF2aXN1IHNvYnJvIGFuYWzDrXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gbG9jayB0cmlnZ2VycyBhcmVhIgorI34gbXNnc3RyICJudW4gcHVlZGUgYmxvcXVpYXNlIGwnw6FyZWEgZGUgZGlzcGFyYWRvcmVzIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHJ1biAlcyAoJS4yNTBzKSIKKyN+IG1zZ3N0ciAiZmFsbMOzIGV4ZWN1dGFyICVzICglLjI1MHMpIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgc2hlbGwgKCUuMjUwcykiCisjfiBtc2dzdHIgImZhbGzDsyBleGVjdXRhciBzaGVsbCAoJS4yNTBzKSIKKworI34gbXNnaWQgInVuYWJsZSB0byBjaGVjayBmb3IgZXhpc3RlbmNlIG9mIGAlLjI1MHMnIgorI34gbXNnc3RyICJudW4gcHVlIGNvbXByb2Jhc2UgbGEgZXNpc3RlbmNpYSBkZSBgJS4yNTBzJyIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIHJtIGZvciBjbGVhbnVwIgorI34gbXNnc3RyICJudW4gc2UgcHVkbyBleGVjdXRhciBybSBwYSBsYSBsbGltcGllemEiCisKKyN+IG1zZ2lkICIiCisjfiAiJXMgZGVidWdnaW5nIG9wdGlvbiwgLS1kZWJ1Zz08b2N0YWw+IG9yIC1EPG9jdGFsPjpcbiIKKyN+ICJcbiIKKyN+ICIgbnVtYmVyICByZWYuIGluIHNvdXJjZSAgIGRlc2NyaXB0aW9uXG4iCisjfiAiICAgICAgMSAgIGdlbmVyYWwgICAgICAgICAgIEdlbmVyYWxseSBoZWxwZnVsIHByb2dyZXNzIGluZm9ybWF0aW9uXG4iCisjfiAiICAgICAgMiAgIHNjcmlwdHMgICAgICAgICAgIEludm9jYXRpb24gYW5kIHN0YXR1cyBvZiBtYWludGFpbmVyIHNjcmlwdHNcbiIKKyN+ICIgICAgIDEwICAgZWFjaGZpbGUgICAgICAgICAgT3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkXG4iCisjfiAiICAgIDEwMCAgIGVhY2hmaWxlZGV0YWlsICAgIExvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkXG4iCisjfiAiICAgICAyMCAgIGNvbmZmICAgICAgICAgICAgIE91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGVcbiIKKyN+ICIgICAgMjAwICAgY29uZmZkZXRhaWwgICAgICAgTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggY29uZmlndXJhdGlvbiBmaWxlXG4iCisjfiAiICAgICA0MCAgIGRlcGNvbiAgICAgICAgICAgIERlcGVuZGVuY2llcyBhbmQgY29uZmxpY3RzXG4iCisjfiAiICAgIDQwMCAgIGRlcGNvbmRldGFpbCAgICAgIExvdHMgb2YgZGVwZW5kZW5jaWVzL2NvbmZsaWN0cyBvdXRwdXRcbiIKKyN+ICIgIDEwMDAwICAgdHJpZ2dlcnMgICAgICAgICAgVHJpZ2dlciBhY3RpdmF0aW9uIGFuZCBwcm9jZXNzaW5nXG4iCisjfiAiICAyMDAwMCAgIHRyaWdnZXJzZGV0YWlsICAgIExvdHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2Vyc1xuIgorI34gIiAgNDAwMDAgICB0cmlnZ2Vyc3N0dXBpZCAgICBTaWxseSBhbW91bnRzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnNcbiIKKyN+ICIgICAxMDAwICAgdmVyeXZlcmJvc2UgICAgICAgTG90cyBvZiBkcml2ZWwgYWJvdXQgZWcgdGhlIGRwa2cvaW5mbyAiCisjfiAiZGlyZWN0b3J5XG4iCisjfiAiICAgMjAwMCAgIHN0dXBpZGx5dmVyYm9zZSAgIEluc2FuZSBhbW91bnRzIG9mIGRyaXZlbFxuIgorI34gIlxuIgorI34gIkRlYnVnZ2luZyBvcHRpb25zIGFyZSBiZSBtaXhlZCB1c2luZyBiaXR3aXNlLW9yLlxuIgorI34gIk5vdGUgdGhhdCB0aGUgbWVhbmluZ3MgYW5kIHZhbHVlcyBhcmUgc3ViamVjdCB0byBjaGFuZ2UuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJvcGNpw7NuIGRlIGRlcHVyYWNpw7NuICVzLCAtLWRlYnVnPTxvY3RhbD4gbyAtRDxvY3RhbD46XG4iCisjfiAiXG4iCisjfiAiIG7Dum1iZXJ1ICByZWZlcmVuY2lhIGVuIGZvbnRlICBkZXNjcmlwY2nDs25cbiIKKyN+ICIgICAgICAxICB4ZW5lcmFsICAgICAgICAgICAgICAgSW5mb3JtYWNpw7NuIGRlIHByb2dyZXN1IHhlbmVyYWxtZW50ZSDDunRpbFxuIgorI34gIiAgICAgIDIgIHNjcmlwdHMgICAgICAgICAgICAgICBJbnZvY2FjacOzbiB5IGVzdMOhdSBkZSBsb3Mgc2NyaXB0cyBkZWwgIgorI34gInBhcXVldGVcbiIKKyN+ICIgICAgIDEwICBlYWNoZmlsZSAgICAgICAgICAgICAgU2FsaWRhIHBvciBjYWRhIGZpY2hlcnUgcHJvY2Vzw6F1XG4iCisjfiAiICAgIDEwMCAgZWFjaGZpbGVkZXRhaWwgICAgICAgIE11bmNoYSBzYWxpZGEgcG9yIGNhZGEgZmljaGVydSBwcm9jZXPDoXVcbiIKKyN+ICIgICAgIDIwICBjb25mZiAgICAgICAgICAgICAgICAgU2FsaWRhIHBvciBjYWRhIGNvbmZmaWxlXG4iCisjfiAiICAgIDIwMCAgY29uZmZkZXRhaWwgICAgICAgICAgIE11bmNoYSBzYWxpZGEgcG9yIGNhZGEgY29uZmZpbGVcbiIKKyN+ICIgICAgIDQwICBkZXBjb24gICAgICAgICAgICAgICAgRGVwZW5kZW5jaWVzIHkgY29uZmxpY3Rvc1xuIgorI34gIiAgICA0MDAgIGRlcGNvbmRldGFpbCAgICAgICAgICBNdW5jaGEgc2FsaWRhIHNvYnJvIGRlcGVuZGVuY2llcyB5ICIKKyN+ICJjb25mbGljdG9zXG4iCisjfiAiICAxMDAwMCAgdHJpZ2dlcnMgICAgICAgICAgICAgIEFjdGl2YWNpw7NuIHkgcHJvY2Vzw6F1IGRlIGRpc3BhcmFkb3Jlc1xuIgorI34gIiAgMjAwMDAgIHRyaWdnZXJzZGV0YWlsICAgICAgICBNdW5jaGEgaW5mb3JtYWNpw7NuIHJlbGxhY2lvbmFkYSBjb24gIgorI34gImRpc3BhcmFkb3Jlc1xuIgorI34gIiAgNDAwMDAgIHRyaWdnZXJzc3R1cGlkICAgICAgICBNb250YcOxZXMgZGUgcGFycmFmYWVzIHNvYnJvIGxvcyAiCisjfiAiZGlzcGFyYWRvcmVzXG4iCisjfiAiICAgMTAwMCAgdmVyeXZlcmJvc2UgICAgICAgICAgIFBhcnJhZmFlcyBzb2JybydsIGRpcmV1dG9yaXUgZHBrZy9pbmZvXG4iCisjfiAiICAgMjAwMCAgc3R1cGlkbHl2ZXJib3NlICAgICAgIE1vbnRvbmVyZXMgZGUgcGFycmFmYWVzIChwZXJ4dWRpY2EgbGEgIgorI34gInNhbMO6KVxuIgorI34gIlxuIgorI34gIkxlcyBvcGNpb25lcyBkZSBkZXB1cmFjacOzbiBlbnRlbcOpY2Vuc2UgZmFjaWVuZG8gZWwgT1IgYml0IHBvciBiaXQuXG4iCisjfiAiTm90ZSBxdWUgbG9zIHNpZ25pZmljYW9zIHkgbG9zIHZhbG9yZXMgdMOhbiBzdXhldG9zIGEgY2FtYmVvcy5cbiIKKworIywgZnV6enkKKyN+fCBtc2dpZCAiIgorI358ICIlcyBmb3JjaW5nIG9wdGlvbnMgLSBjb250cm9sIGJlaGF2aW91ciB3aGVuIHByb2JsZW1zIGZvdW5kOlxuIgorI358ICIgIHdhcm4gYnV0IGNvbnRpbnVlOiAgLS1mb3JjZS08dGhpbmc+LDx0aGluZz4sLi4uXG4iCisjfnwgIiAgc3RvcCB3aXRoIGVycm9yOiAgICAtLXJlZnVzZS08dGhpbmc+LDx0aGluZz4sLi4uIHwgLS1uby1mb3JjZS0iCisjfnwgIjx0aGluZz4sLi4uXG4iCisjfnwgIiBGb3JjaW5nIHRoaW5nczpcbiIKKyN+fCAiICBhbGwgWyFdICAgICAgICAgICAgICAgIFNldCBhbGwgZm9yY2Ugb3B0aW9uc1xuIgorI358ICIgIGRvd25ncmFkZSBbKl0gICAgICAgICAgUmVwbGFjZSBhIHBhY2thZ2Ugd2l0aCBhIGxvd2VyIHZlcnNpb25cbiIKKyN+fCAiICBjb25maWd1cmUtYW55ICAgICAgICAgIENvbmZpZ3VyZSBhbnkgcGFja2FnZSB3aGljaCBtYXkgaGVscCB0aGlzIG9uZVxuIgorI358ICIgIGhvbGQgICAgICAgICAgICAgICAgICAgUHJvY2VzcyBpbmNpZGVudGFsIHBhY2thZ2VzIGV2ZW4gd2hlbiBvbiBob2xkXG4iCisjfnwgIiAgYmFkLXBhdGggICAgICAgICAgICAgICBQQVRIIGlzIG1pc3NpbmcgaW1wb3J0YW50IHByb2dyYW1zLCBwcm9ibGVtcyAiCisjfnwgImxpa2VseVxuIgorI358ICIgIG5vdC1yb290ICAgICAgICAgICAgICAgVHJ5IHRvIChkZSlpbnN0YWxsIHRoaW5ncyBldmVuIHdoZW4gbm90IHJvb3RcbiIKKyN+fCAiICBvdmVyd3JpdGUgICAgICAgICAgICAgIE92ZXJ3cml0ZSBhIGZpbGUgZnJvbSBvbmUgcGFja2FnZSB3aXRoIGFub3RoZXJcbiIKKyN+fCAiICBvdmVyd3JpdGUtZGl2ZXJ0ZWQgICAgIE92ZXJ3cml0ZSBhIGRpdmVydGVkIGZpbGUgd2l0aCBhbiB1bmRpdmVydGVkICIKKyN+fCAidmVyc2lvblxuIgorI358ICIgIGJhZC12ZXJpZnkgICAgICAgICAgICAgSW5zdGFsbCBhIHBhY2thZ2UgZXZlbiBpZiBpdCBmYWlscyBhdXRoZW50aWNpdHkgIgorI358ICJjaGVja1xuIgorI358ICIgIGRlcGVuZHMtdmVyc2lvbiBbIV0gICAgVHVybiBkZXBlbmRlbmN5IHZlcnNpb24gcHJvYmxlbXMgaW50byB3YXJuaW5nc1xuIgorI358ICIgIGRlcGVuZHMgWyFdICAgICAgICAgICAgVHVybiBhbGwgZGVwZW5kZW5jeSBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzXG4iCisjfnwgIiAgY29uZm5ldyBbIV0gICAgICAgICAgICBBbHdheXMgdXNlIHRoZSBuZXcgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHRcbiIKKyN+fCAiICBjb25mb2xkIFshXSAgICAgICAgICAgIEFsd2F5cyB1c2UgdGhlIG9sZCBjb25maWcgZmlsZXMsIGRvbid0IHByb21wdFxuIgorI358ICIgIGNvbmZkZWYgWyFdICAgICAgICAgICAgVXNlIHRoZSBkZWZhdWx0IG9wdGlvbiBmb3IgbmV3IGNvbmZpZyBmaWxlcyBpZiAiCisjfnwgIm9uZVxuIgorI358ICIgICAgICAgICAgICAgICAgICAgICAgICAgaXMgYXZhaWxhYmxlLCBkb24ndCBwcm9tcHQuIElmIG5vIGRlZmF1bHQgY2FuICIKKyN+fCAiYmUgZm91bmQsXG4iCisjfnwgIiAgICAgICAgICAgICAgICAgICAgICAgICB5b3Ugd2lsbCBiZSBwcm9tcHRlZCB1bmxlc3Mgb25lIG9mIHRoZSBjb25mb2xkICIKKyN+fCAib3JcbiIKKyN+fCAiICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmZuZXcgb3B0aW9ucyBpcyBhbHNvIGdpdmVuXG4iCisjfnwgIiAgY29uZm1pc3MgWyFdICAgICAgICAgICBBbHdheXMgaW5zdGFsbCBtaXNzaW5nIGNvbmZpZyBmaWxlc1xuIgorI358ICIgIGJyZWFrcyBbIV0gICAgICAgICAgICAgSW5zdGFsbCBldmVuIGlmIGl0IHdvdWxkIGJyZWFrIGFub3RoZXIgcGFja2FnZVxuIgorI358ICIgIGNvbmZsaWN0cyBbIV0gICAgICAgICAgQWxsb3cgaW5zdGFsbGF0aW9uIG9mIGNvbmZsaWN0aW5nIHBhY2thZ2VzXG4iCisjfnwgIiAgYXJjaGl0ZWN0dXJlIFshXSAgICAgICBQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyBhcmNoaXRlY3R1cmVcbiIKKyN+fCAiICBvdmVyd3JpdGUtZGlyIFshXSAgICAgIE92ZXJ3cml0ZSBvbmUgcGFja2FnZSdzIGRpcmVjdG9yeSB3aXRoICIKKyN+fCAiYW5vdGhlcidzIGZpbGVcbiIKKyN+fCAiICByZW1vdmUtcmVpbnN0cmVxIFshXSAgIFJlbW92ZSBwYWNrYWdlcyB3aGljaCByZXF1aXJlIGluc3RhbGxhdGlvblxuIgorI358ICIgIHJlbW92ZS1lc3NlbnRpYWwgWyFdICAgUmVtb3ZlIGFuIGVzc2VudGlhbCBwYWNrYWdlXG4iCisjfnwgIlxuIgorI358ICJXQVJOSU5HIC0gdXNlIG9mIG9wdGlvbnMgbWFya2VkIFshXSBjYW4gc2VyaW91c2x5IGRhbWFnZSB5b3VyICIKKyN+fCAiaW5zdGFsbGF0aW9uLlxuIgorI358ICJGb3JjaW5nIG9wdGlvbnMgbWFya2VkIFsqXSBhcmUgZW5hYmxlZCBieSBkZWZhdWx0LlxuIgorI34gbXNnaWQgIiIKKyN+ICIlcyBmb3JjaW5nIG9wdGlvbnMgLSBjb250cm9sIGJlaGF2aW91ciB3aGVuIHByb2JsZW1zIGZvdW5kOlxuIgorI34gIiAgd2FybiBidXQgY29udGludWU6ICAtLWZvcmNlLTx0aGluZz4sPHRoaW5nPiwuLi5cbiIKKyN+ICIgIHN0b3Agd2l0aCBlcnJvcjogICAgLS1yZWZ1c2UtPHRoaW5nPiw8dGhpbmc+LC4uLiB8IC0tbm8tZm9yY2UtIgorI34gIjx0aGluZz4sLi4uXG4iCisjfiAiIEZvcmNpbmcgdGhpbmdzOlxuIgorI34gIiAgYWxsIFshXSAgICAgICAgICAgICAgICBTZXQgYWxsIGZvcmNlIG9wdGlvbnNcbiIKKyN+ICIgIGRvd25ncmFkZSBbKl0gICAgICAgICAgUmVwbGFjZSBhIHBhY2thZ2Ugd2l0aCBhIGxvd2VyIHZlcnNpb25cbiIKKyN+ICIgIGNvbmZpZ3VyZS1hbnkgICAgICAgICAgQ29uZmlndXJlIGFueSBwYWNrYWdlIHdoaWNoIG1heSBoZWxwIHRoaXMgb25lXG4iCisjfiAiICBob2xkICAgICAgICAgICAgICAgICAgIFByb2Nlc3MgaW5jaWRlbnRhbCBwYWNrYWdlcyBldmVuIHdoZW4gb24gaG9sZFxuIgorI34gIiAgYmFkLXBhdGggICAgICAgICAgICAgICBQQVRIIGlzIG1pc3NpbmcgaW1wb3J0YW50IHByb2dyYW1zLCBwcm9ibGVtcyAiCisjfiAibGlrZWx5XG4iCisjfiAiICBub3Qtcm9vdCAgICAgICAgICAgICAgIFRyeSB0byAoZGUpaW5zdGFsbCB0aGluZ3MgZXZlbiB3aGVuIG5vdCByb290XG4iCisjfiAiICBvdmVyd3JpdGUgICAgICAgICAgICAgIE92ZXJ3cml0ZSBhIGZpbGUgZnJvbSBvbmUgcGFja2FnZSB3aXRoIGFub3RoZXJcbiIKKyN+ICIgIG92ZXJ3cml0ZS1kaXZlcnRlZCAgICAgT3ZlcndyaXRlIGEgZGl2ZXJ0ZWQgZmlsZSB3aXRoIGFuIHVuZGl2ZXJ0ZWQgIgorI34gInZlcnNpb25cbiIKKyN+ICIgIGJhZC12ZXJpZnkgICAgICAgICAgICAgSW5zdGFsbCBhIHBhY2thZ2UgZXZlbiBpZiBpdCBmYWlscyBhdXRoZW50aWNpdHkgIgorI34gImNoZWNrXG4iCisjfiAiICBkZXBlbmRzLXZlcnNpb24gWyFdICAgIFR1cm4gZGVwZW5kZW5jeSB2ZXJzaW9uIHByb2JsZW1zIGludG8gd2FybmluZ3NcbiIKKyN+ICIgIGRlcGVuZHMgWyFdICAgICAgICAgICAgVHVybiBhbGwgZGVwZW5kZW5jeSBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzXG4iCisjfiAiICBjb25mbmV3IFshXSAgICAgICAgICAgIEFsd2F5cyB1c2UgdGhlIG5ldyBjb25maWcgZmlsZXMsIGRvbid0IHByb21wdFxuIgorI34gIiAgY29uZm9sZCBbIV0gICAgICAgICAgICBBbHdheXMgdXNlIHRoZSBvbGQgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHRcbiIKKyN+ICIgIGNvbmZkZWYgWyFdICAgICAgICAgICAgVXNlIHRoZSBkZWZhdWx0IG9wdGlvbiBmb3IgbmV3IGNvbmZpZyBmaWxlcyBpZiAiCisjfiAib25lXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIGlzIGF2YWlsYWJsZSwgZG9uJ3QgcHJvbXB0LiBJZiBubyBkZWZhdWx0IGNhbiBiZSAiCisjfiAiZm91bmQsXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIHlvdSB3aWxsIGJlIHByb21wdGVkIHVubGVzcyBvbmUgb2YgdGhlIGNvbmZvbGQgIgorI34gIm9yXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmZuZXcgb3B0aW9ucyBpcyBhbHNvIGdpdmVuXG4iCisjfiAiICBjb25mbWlzcyBbIV0gICAgICAgICAgIEFsd2F5cyBpbnN0YWxsIG1pc3NpbmcgY29uZmlnIGZpbGVzXG4iCisjfiAiICBjb25mYXNrIFshXSAgICAgICAgICAgIE9mZmVyIHRvIHJlcGxhY2UgY29uZmlnIGZpbGVzIHdpdGggbm8gbmV3ICIKKyN+ICJ2ZXJzaW9uc1xuIgorI34gIiAgYnJlYWtzIFshXSAgICAgICAgICAgICBJbnN0YWxsIGV2ZW4gaWYgaXQgd291bGQgYnJlYWsgYW5vdGhlciBwYWNrYWdlXG4iCisjfiAiICBjb25mbGljdHMgWyFdICAgICAgICAgIEFsbG93IGluc3RhbGxhdGlvbiBvZiBjb25mbGljdGluZyBwYWNrYWdlc1xuIgorI34gIiAgYXJjaGl0ZWN0dXJlIFshXSAgICAgICBQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyBhcmNoaXRlY3R1cmVcbiIKKyN+ICIgIG92ZXJ3cml0ZS1kaXIgWyFdICAgICAgT3ZlcndyaXRlIG9uZSBwYWNrYWdlJ3MgZGlyZWN0b3J5IHdpdGggYW5vdGhlcidzICIKKyN+ICJmaWxlXG4iCisjfiAiICB1bnNhZmUtaW8gWyFdICAgICAgICAgIERvIG5vdCBwZXJmb3JtIHNhZmUgSS9PIG9wZXJhdGlvbnMgd2hlbiAiCisjfiAidW5wYWNraW5nXG4iCisjfiAiICByZW1vdmUtcmVpbnN0cmVxIFshXSAgIFJlbW92ZSBwYWNrYWdlcyB3aGljaCByZXF1aXJlIGluc3RhbGxhdGlvblxuIgorI34gIiAgcmVtb3ZlLWVzc2VudGlhbCBbIV0gICBSZW1vdmUgYW4gZXNzZW50aWFsIHBhY2thZ2VcbiIKKyN+ICJcbiIKKyN+ICJXQVJOSU5HIC0gdXNlIG9mIG9wdGlvbnMgbWFya2VkIFshXSBjYW4gc2VyaW91c2x5IGRhbWFnZSB5b3VyICIKKyN+ICJpbnN0YWxsYXRpb24uXG4iCisjfiAiRm9yY2luZyBvcHRpb25zIG1hcmtlZCBbKl0gYXJlIGVuYWJsZWQgYnkgZGVmYXVsdC5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIm9wY2lvbmVzIGRlIGZvcmNpw6F1IGRlICVzIC0gcmVtYW5lbiBlbCBjb21wb3J0YW1pZW50dSBjdWFuZG8gaGFpICIKKyN+ICJwcm9ibGVtZXM6XG4iCisjfiAiXG4iCisjfiAiIGF2aXNhIHBlcm8gY29udGluw7phOiAgICAgIC0tZm9yY2UtPGNvc2E+LDxjb3NhPiwuLi5cbiIKKyN+ICIgZGV0acOpbnNlIHNpIGhhaSBmYWxsdTogIC0tcmVmdXNlLTxjb3NhPiw8Y29zYT4sLi4uIHwgLS1uby1mb3JjZS0iCisjfiAiPGNvc2E+LC4uLlxuIgorI34gIlxuIgorI34gIiBDb3NlcyBxdWUgc2UgcHVlZGVuIGZvcmNpYXI6XG4iCisjfiAiICBhbGwgWyFdICAgICAgICAgICAgICAgIEFjdGl2YSB0b2xlcyBvcGNpb25lcyBkZSBmb3JjacOhdS5cbiIKKyN+ICIgIGRvd25ncmFkZSBbKl0gICAgICAgICAgVHJvY2EgdW4gcGFxdWV0ZSBjb24gdW5hIHZlcnNpw7NuIG1lbm9yLlxuIgorI34gIiAgY29uZmlndXJlLWFueSAgICAgICAgICBDb25maWd1cmEgY3VhbGVzcXVpZXIgcGFxdWV0ZSBxdWUgcHVlZGEgYWlkYXIgYSAiCisjfiAiw6lzdGkuXG4iCisjfiAiICBob2xkICAgICAgICAgICAgICAgICAgIFByb2Nlc2EgcGFxdWV0ZXMgYWNjZXNvcmlvcyBjdWFuZG8gc2UgIgorI34gImNhbHRpZW5lbi5cbiIKKyN+ICIgIGJhZC1wYXRoICAgICAgICAgICAgICAgRmFsdGVuIHByb2dyYW1lcyBpbXBvcnRhbnRlcyBuZWwgUEFUSCxcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgcHVlZGUgaGFiZXIgcHJvYmxlbWVzLlxuIgorI34gIiAgbm90LXJvb3QgICAgICAgICAgICAgICBJbnRlbnRhIChkZXMpaW5zdGFsYXIgY29zZXMgaW5jbHVzdSBlbnNpbiBzZXIgIgorI34gInJvb3QuXG4iCisjfiAiICBvdmVyd3JpdGUgICAgICAgICAgICAgIFNvYnJvc2NyaWJlIHVuIGZpY2hlcnUgZCd1biBwYXF1ZXRlIGNvbiBvdHJ1LlxuIgorI34gIiAgb3ZlcndyaXRlLWRpdmVydGVkICAgICBTb2Jyb3NjcmliZSB1biBmaWNoZXJ1IGVzdmnDoXUgY29uIHVuYSB2ZXJzacOzblxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICBub24gZXN2aWFkYS5cbiIKKyN+ICIgIGJhZC12ZXJpZnkgICAgICAgICAgICAgSW5zdGFsYSB1biBwYXF1ZXRlIGluY2x1c3Ugc2kgZmFsbGEgbGEgIgorI34gImNvbXByb2JhY2nDs25cbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgZCdhdXRlbnRpY2lkw6EuXG4iCisjfiAiICBkZXBlbmRzLXZlcnNpb24gWyFdICAgIENvbnZpZXJ0ZSBuJ2F2aXNvcyBsb3MgcHJvYmxlbWVzIGRlIGRlcGVuZGVuY2lhXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIGRlIHZlcnNpw7NuLlxuIgorI34gIiAgZGVwZW5kcyBbIV0gICAgICAgICAgICBDb252aWVydGUgbidhdmlzb3MgdG9sb3MgcHJvYmxlbWVzIGRlXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIGRlcGVuZGVuY2llcy5cbiIKKyN+ICIgIGNvbmZuZXcgWyFdICAgICAgICAgICAgVXNhIHNpZW1wcmVzIGxvcyBudWV2b3MgY29uZmZpbGVzLCBlbnNpbiAiCisjfiAiZW50cnVnYXIuXG4iCisjfiAiICBjb25mb2xkIFshXSAgICAgICAgICAgIFVzYSBzaWVtcHJlcyBsb3MgY29uZmZpbGVzIGFudGlndW9zLCBlbnNpbiAiCisjfiAiZW50cnVnYXIuXG4iCisjfiAiICBjb25mZGVmIFshXSAgICAgICAgICAgIFVzYSBsYSBvcGNpw7NuIHByZWRldGVybWluYWRhIHBhIGxvcyBjb25mZmlsZXNcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgbnVldm9zIHNpIHTDoW4gZGlzcG9uaWJsZXMsIGVuc2luIGVudHJ1Z2FyLiBTaSAiCisjfiAibnVuXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIHMnYWxjdWVudHJhIGRlbmfDum4gcHJlZGV0ZXJtaW7DoXUgZW50cnVnYXLDoSwgYSAiCisjfiAibWVub3NcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgcXVlIHNlIGRlIHRhbWnDqW4gZGFsZ3VuYSBkZSBsZXMgb3BjaW9uZXMgIgorI34gImNvbmZvbGRcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgbyBjb25mbmV3LlxuIgorI34gIiAgY29uZm1pc3MgWyFdICAgICAgICAgICBJbnN0YWxhIHNpZW1wcmVzIGxvcyBjb25mZmlsZXMgcXVlIGZhbHRlbi5cbiIKKyN+ICIgIGJyZWFrcyAgICAgICAgICAgICAgICAgSW5zdGFsYSBtYWdhciBxdSdvdHJ1IHBhcXVldGUgc2UgZnJhw7FlLiAgICAgICAgXG4iCisjfiAiICBjb25mbGljdHMgWyFdICAgICAgICAgIFBlcm1pdGUgbGEgaW5zdGFsYWNpw7NuIGRlIHBhcXVldGVzIGVuICIKKyN+ICJjb25mbGljdHUuXG4iCisjfiAiICBhcmNoaXRlY3R1cmUgWyFdICAgICAgIFByb2Nlc2EgaW5jbHVzdSBsb3MgcGFxdWV0ZXMgY29uIGFycXVpdGV1dHVyYSAiCisjfiAiZXJyw7NuZWEuXG4iCisjfiAiICBvdmVyd3JpdGUtZGlyIFshXSAgICAgIFNvYnJvc2NyaWJlJ2wgZGlyZXV0b3JpdSBkJ3VuIHBhcXVldGUgY29sXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIGZpY2hlcnUgZCdvdHJ1LlxuIgorI34gIiAgcmVtb3ZlLXJlaW5zdHJlcSBbIV0gICBEZXNpbnN0YWxhIGxvcyBwYXF1ZXRlcyBxdWUgcHJlY2lzZW4gIgorI34gImluc3RhbGFjacOzbixcbiIKKyN+ICIgIHJlbW92ZS1lc3NlbnRpYWwgWyFdICAgRGVzaW5zdGFsYSB1biBwYXF1ZXRlIGVzZW5jaWFsLFxuIgorI34gIlxuIgorI34gIkFURU5DScOTTiAtIGwndXN1IGRlIGxlcyBvcGNpb25lcyBjb25zZcOxYWVzIGNvbiBbIV0gcHVlZGUgZnJhw7FhciAiCisjfiAic2VyaWFtZW50ZVxuIgorI34gImxhIGluc3RhbGFjacOzbi4gTGVzIG9wY2lvbmVzIGRlIGZvcmNpw6F1IGNvbnNlw7FhZXMgY29uIFsqXSB0w6FuIGFjdGl2YWVzXG4iCisjfiAicG9yIG9taXNpw7NuLlxuIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgZHBrZy1zcGxpdCB0byBzZWUgaWYgaXQncyBwYXJ0IG9mIGEgbXVsdGlwYXJ0ZXIiCisjfiBtc2dzdHIgImZhbGx1IGFsIGV4ZWN1dGFyIGRwa2ctc3BsaXQgcGEgdmVyIHNpIHllIHBhcnRlIGQndW4gbXVsdGlwYXJ0ZSIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjbCBkZWJzaWctdmVyaWZ5IgorI34gbXNnc3RyICJmYWxsdSBhbCBleGVjdXRhciBkZWJzaWctdmVyaWZ5IgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgZHBrZy1kZWIgdG8gZXh0cmFjdCBjb250cm9sIGluZm9ybWF0aW9uIgorI34gbXNnc3RyICJmYWxsw6EgYWwgZXhlY3V0YXIgZHBrZy1kZWIgcGEgZXN0cmF5ZXIgbGEgaW5mb3JtYWNpw7NuIGRlIGNvbnRyb2wiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gZXhlYyBkcGtnLWRlYiB0byBnZXQgZmlsZXN5c3RlbSBhcmNoaXZlIgorI34gbXNnc3RyICJudW4gcHVlZGUgZXhlY3V0YXNlIGRwa2ctZGViIHBhIG9idGVuZXIgZWwgZmljaGVydSIKKworI34gbXNnaWQgInVuYWJsZSB0byBkZWxldGUgZGlzYXBwZWFyaW5nIGNvbnRyb2wgaW5mbyBmaWxlIGAlLjI1MHMnIgorI34gbXNnc3RyICIiCisjfiAibnVuIHB1ZWRlIGRlc2FuaWNpYXNlJ2wgZmljaGVydSBkJ2luZm9ybWFjacOzbiBkZSBjb250cm9sIGAlLjI1MHMnIHF1ZSAiCisjfiAiZGVzYXBhcmVjacOzIgorCisjfiBtc2dpZCAiZHBrZzogJXMgbm90IGZvdW5kLlxuIgorI34gbXNnc3RyICJkcGtnOiBudW4gcydhbGNvbnRyw7MgJXMuXG4iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gLi4uL0RFQklBTiIKKyN+IG1zZ3N0ciAiZmFsbMOzIGFsIGNhbXVkYXIgYWwgZGlyZXV0b3JpdSAuLi4vREVCSUFOIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgdGFyIC1jZiIKKyN+IG1zZ3N0ciAiZmFsbMOzIGFsIGV4ZWN1dGFyIHRhciAtY2YiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gbWFrZSB0bXBmaWxlIChjb250cm9sKSIKKyN+IG1zZ3N0ciAiZmFsbMOzIGFsIGNyaWFyIHVuIGZpY2hlcnUgdGVtcG9yYWwgKGNvbnRyb2wpIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHVubGluayB0bXBmaWxlIChjb250cm9sKSwgJXMiCisjfiBtc2dzdHIgImZhbGzDsyBhbCBkZXNhbmljaWFyIGNvbiB1bmxpbmsgZWwgZmljaGVydSB0ZW1wb3JhbCAoY29udHJvbCksICVzIgorCisjfiBtc2dpZCAiY29udHJvbCIKKyN+IG1zZ3N0ciAiY29udHJvbCIKKworI34gbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdG1wZmlsZSAoY29udHJvbCkiCisjfiBtc2dzdHIgImZhbGzDsyBhbCBlZmV1dHVhciBgcmV3aW5kJyBzb2JybydsIGZpY2hlcnUgdGVtcG9yYWwgKGNvbnRyb2wpIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGZzdGF0IHRtcGZpbGUgKGNvbnRyb2wpIgorI34gbXNnc3RyICJmYWxsw7MgYWwgZWZldXR1YXIgYGZzdGF0JyBzb2JybydsIGZpY2hlcnUgdGVtcG9yYWwgKGNvbnRyb2wpIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgZmluZCIKKyN+IG1zZ3N0ciAiZmFsbMOzIGFsIGV4ZWN1dGFyIGZpbmQiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBzaCAtYyBtdiBmb28vKiAmYyIKKyN+IG1zZ3N0ciAiZmFsbMOzIGFsIGV4ZWN1dGFyIHNoIC1jIG12IGZ1LyogZXRjLiIKKworI34gbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtICUuMjUwcyBsZW5ndGggY29udGFpbnMgbnVsbHMiCisjfiBtc2dzdHIgImVsIGZpY2hlcnUgYCUuMjUwcycgdGEgZnJhw7HDoXUgLSBsYSBsbG9ueGl0w7ogJS4yNTBzIGNvbnRpw6luIG51bG9zIgorCisjfiBtc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gbmVnYXRpdmUgbWVtYmVyIGxlbmd0aCAlemkiCisjfiBtc2dzdHIgImVsIGZpY2hlcnUgYCUuMjUwcycgdGEgZnJhw7HDoXUgLSBsbG9ueGl0w7ogJXppIG5lZ2F0aXZhIgorCisjfiBtc2dpZCAiZmFpbGVkIGdldHRpbmcgdGhlIGN1cnJlbnQgZmlsZSBwb3NpdGlvbiIKKyN+IG1zZ3N0ciAiaGVibyB1biBmYWxsdSBhbCBvYnRlbmVyIGxhIHBvc2ljacOzbiBhY3R1YWwgbmVsIGZpY2hlcnUiCisKKyN+IG1zZ2lkICJmYWlsZWQgc2V0dGluZyB0aGUgY3VycmVudCBmaWxlIHBvc2l0aW9uIgorI34gbXNnc3RyICJoZWJvIHVuIGZhbGx1IGFsIGF0cm94YXIgbGEgcG9zaWNpw7NuIGFjdHVhbCBkZWwgZmljaGVydSIKKworI34gbXNnaWQgInZlcnNpb24gbnVtYmVyIgorI34gbXNnc3RyICJuw7ptYmVydSBkZSB2ZXJzacOzbiIKKworI34gbXNnaWQgIm1lbWJlciBsZW5ndGgiCisjfiBtc2dzdHIgImxsb254aXTDuiBtaWVtYnJ1IgorCisjfiBtc2dpZCAiaGVhZGVyIGluZm8gbWVtYmVyIgorI34gbXNnc3RyICJpbmZvcm1hY2nDs24gZGUgY2FiZWNlcmEgZGVsIGVsZW1lbnR1IgorCisjLCBmdXp6eQorI358IG1zZ2lkICJza2lwcGVkIG1lbWJlciBkYXRhIGZyb20gJXMiCisjfiBtc2dpZCAic2tpcHBlZCBjb250cm9sIGFyZWEgZnJvbSAlcyIKKyN+IG1zZ3N0ciAic8OhbHRhc2UgbCdlbGVtZW50dSBkZSAlcyIKKworIywgZnV6enkKKyN+IG1zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHRlbXBvcmFyeSBkaXJlY3RvcnkiCisjfiBtc2dzdHIgImZhbGzDsyBhbCBjcmlhciBub21lIGRlIGRpcmV1dG9yaXUgdGVtcG9yYWwiCisKKyN+IG1zZ2lkICJpbmZvX3NwZXciCisjfiBtc2dzdHIgImluZm9fc3BldyIKKworI34gbXNnaWQgImluZm8gbGVuZ3RoIgorI34gbXNnc3RyICJsbG9ueGl0w7ogaW5mbyIKKworI34gbXNnaWQgInRvdGFsIGxlbmd0aCIKKyN+IG1zZ3N0ciAibGxvbnhpdMO6IHRvdGFsIgorCisjfiBtc2dpZCAiZGF0YSBsZW5ndGgiCisjfiBtc2dzdHIgImxsb254aXTDuiBkZSBkYXRvcyIKKworIywgZnV6enkKKyN+fCBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgZHBrZy1kZWIgdG8gZXh0cmFjdCBjb250cm9sIGluZm9ybWF0aW9uIgorI34gbXNnaWQgImZhaWxlZCB0byBleGVjIGRwa2ctZGViIHRvIGV4dHJhY3QgZmllbGQgdmFsdWUiCisjfiBtc2dzdHIgImZhbGzDoSBhbCBleGVjdXRhciBkcGtnLWRlYiBwYSBlc3RyYXllciBsYSBpbmZvcm1hY2nDs24gZGUgY29udHJvbCIKKworIywgZnV6enkKKyN+fCBtc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSAlczogJXMiCisjfiBtc2dpZCAidW5hYmxlIHRvIHN0YXQgJXM6ICVzIgorI34gbXNnc3RyICJudW4gc2UgcHVlZGUgY3JlYXIgJXM6ICVzIgorCisjfiBtc2dpZCAic2xhdmUgbmFtZSAlcyBkdXBsaWNhdGVkIgorI34gbXNnc3RyICJlbCBub21lIGVzY2xhdnUgJXMgdGEgZHVwbGljw6F1IgorCisjfiBtc2dpZCAic2xhdmUgbGluayAlcyBkdXBsaWNhdGVkIgorI34gbXNnc3RyICJsJ2VubGxheiBlc2NsYXZ1ICVzIHRhIGR1cGxpY8OhdSIKKworI34gbXNnaWQgIiVkIHJlcXVlc3RlZCBjb250cm9sIGNvbXBvbmVudHMgYXJlIG1pc3NpbmciCisjfiBtc2dzdHIgImZhbHRlbiAlZCBjb21wb25lbnRlcyBkZSBjb250cm9sIHNvbGljaXRhZXMiCisKKyN+IG1zZ2lkICJjYXQgKGRhdGEpIgorI34gbXNnc3RyICJjYXQgKGRhdG9zKSIKKworI34gbXNnaWQgImZhaWxlZCB0byBvcGVuIHBpcGUgZGVzY3JpcHRvciBgMScgaW4gcGFzdGUiCisjfiBtc2dzdHIgImZhbGzDsyBhbCBlZmV1dHVhciBgZmRvcGVuJyBzb2JybydsIGRlc2NyaXB0b3IgYDEnIGVuIGBwYXN0ZSciCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gd3JpdGUgdG8gZ3ppcCAtZGMiCisjfiBtc2dzdHIgImZhbGzDsyBhbCBlc2NyaWJpciBhIGd6aXAgLWRjIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGNsb3NlIGd6aXAgLWRjIgorI34gbXNnc3RyICJmYWxsw7MgYWwgemFycmFyIGd6aXAgLWRjIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHN5c2NhbGwgbHNlZWsgdG8gZmlsZXMgYXJjaGl2ZSBwb3J0aW9uIgorI34gbXNnc3RyICJmYWxsw6EgbmEgbGxhbWFkYSBhbCBzaXN0ZW1hIGxzZWVrIG5vcyBmaWNoZXJvcyBwb3JjacOzbiBkZSBmaWNoZXJ1IgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGV4ZWMgbWtzcGxpdCIKKyN+IG1zZ3N0ciAibnVuIHNlIHB1ZWRlIGV4ZWN1dGFyIG1rc3BsaXQiCisKKyN+IG1zZ2lkICIiCisjfiAiXG4iCisjfiAiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorI34gIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uIgorI34gbXNnc3RyICIiCisjfiAiXG4iCisjfiAiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorI34gIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uIgorCisjfiBtc2dpZCAidHdvIGNvbW1hbmRzIHNwZWNpZmllZDogJXMgYW5kIC0tJXMiCisjfiBtc2dzdHIgImVzcGVjaWZpY8Ohcm9uc2UgZG9zIMOzcmRlbmVzOiAlcyB5IC0tJXMiCisKKyN+IG1zZ2lkICItLSVzIG5lZWRzIGEgZGl2ZXJ0LXRvIGFyZ3VtZW50IgorI34gbXNnc3RyICItLSVzIG5lY2VzaXRlcyB1biBwYXLDoW1ldHJ1IGluZGljYW5kbyBhIG9uZGUgZGVzdmlhciIKKworI34gbXNnaWQgIi0tJXMgbmVlZHMgYSA8cGFja2FnZT4gYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tJXMgbmVjZXNpdGVzIHVuIG5vbWUgZGUgcGFxdWV0ZSBjb21vIGFyZ3VtZW50dSIKKworI34gbXNnaWQgImNhbm5vdCBvcGVuIGRpdmVyc2lvbnM6ICVzIgorI34gbXNnc3RyICJmYWxsdSBhbCBhYnJpciBmaWNoZXJ1IGRlIGRlc3bDrW9zOiAlcyIKKworI34gbXNnaWQgIm1pc3NpbmcgYWx0bmFtZSIKKyN+IG1zZ3N0ciAiZmFsdGEnbCBub21lIGFsdGVybmF0aXZ1IgorCisjfiBtc2dpZCAibWlzc2luZyBwYWNrYWdlIgorI34gbXNnc3RyICJmYWx0YSdsIHBhcXVldGUiCisKKyN+IG1zZ2lkICJpbnRlcm5hbCBlcnJvciAtIGJhZCBtb2RlIGAlcyciCisjfiBtc2dzdHIgImVycm9yIGludGVybnUgLSBtb3UgaW52w6FsaWR1IGAlcyciCisKKyN+IG1zZ2lkICJjYW5ub3Qgc3RhdCBvbGQgbmFtZSBgJXMnOiAlcyIKKyN+IG1zZ3N0ciAibnVuIHNlIHB1ZWRlIGZhY2VyIGBzdGF0JyBzb2JyZSdsIG5vbWUgYW50aWd1dSBgJXMnOiAlcyIKKworI34gbXNnaWQgInJlbmFtZTogcmVuYW1lIGAlcycgdG8gYCVzJzogJXMiCisjfiBtc2dzdHIgInJlbmFtZTogcmVub21hciBgJXMnIGNvbW8gYCVzJzogJXMiCisKKyN+IG1zZ2lkICJjcmVhdGUgZGl2ZXJzaW9ucy1uZXc6ICVzIgorI34gbXNnc3RyICJjcmlhciBkaXZlcnNpb25zLW5ldzogJXMiCisKKyN+IG1zZ2lkICJ3cml0ZSBkaXZlcnNpb25zLW5ldzogJXMiCisjfiBtc2dzdHIgImVzY3JpYmlyIGRpdmVyc2lvbnMtbmV3OiAlcyIKKworI34gbXNnaWQgImNsb3NlIGRpdmVyc2lvbnMtbmV3OiAlcyIKKyN+IG1zZ3N0ciAiemFycmFyIGRpdmVyc2lvbnMtbmV3OiAlcyIKKworI34gbXNnaWQgImNyZWF0ZSBuZXcgZGl2ZXJzaW9ucy1vbGQ6ICVzIgorI34gbXNnc3RyICJjcmlhciDCq2RpdmVyc2lvbnMtb2xkwrsgbnVldnU6ICVzIgorCisjfiBtc2dpZCAiaW5zdGFsbCBuZXcgZGl2ZXJzaW9uczogJXMiCisjfiBtc2dzdHIgImluc3RhbGFyIG51ZXZvcyBlc3bDrW9zOiAlcyIKKworI34gbXNnaWQgImludGVybmFsIGVycm9yOiAlcyBjb3JydXB0OiAlcyIKKyN+IG1zZ3N0ciAiZXJyb3IgaW50ZXJudTogJXMgY29ycm9tcMOtdTogJXMiCisKKyN+IG1zZ2lkICJkcGtnLWRlYiAtIGVycm9yOiAlcyAoYCVzJykgZG9lc24ndCBjb250YWluIGFueSBkaWdpdHNcbiIKKyN+IG1zZ3N0ciAiZHBrZy1kZWIgLSBlcnJvcjogJXMgKGAlcycpIG51biBjb250acOpbiBkZW5nw7puIGTDrXhpdHVcbiIKKworI34gbXNnaWQgIih1cHN0cmVhbSkgdmVyc2lvbiIKKyN+IG1zZ3N0ciAidmVyc2nDs24gKHVwc3RyZWFtKSAiCisKKyN+IG1zZ2lkICJEZWJpYW4gcmV2aXNpb24iCisjfiBtc2dzdHIgInJldmlzacOzbiBEZWJpYW4iCisKKyN+IG1zZ2lkICIlZCBlcnJvcnMgaW4gY29udHJvbCBmaWxlIgorI34gbXNnc3RyICIlZCBmYWxsb3MgbmVsIGZpY2hlcnUgZGUgY29udHJvbCIKKworIywgZnV6enkKKyN+fCBtc2dpZCAidW5hYmxlIHRvIHJlYWQgJXM6ICVzIgorI34gbXNnaWQgImNhbid0IHJlYWRkaXIgJXM6ICVzIgorI34gbXNnc3RyICJudW4gc2UgcHVlZGUgbGxlZXIgJXM6ICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIGluIGJ1ZmZlcl93cml0ZShmZCkgKCVpLCByZXQ9JWxpKTogJXMiCisjfiBtc2dzdHIgImZhbGzDsyBlbiBidWZmZXJfd3JpdGUoZmQpICglaSwgcmV0PSVsaSk6ICVzIgorCisjfiBtc2dpZCAiZW9mIGluIGJ1ZmZlcl93cml0ZShzdHJlYW0pOiAlcyIKKyN+IG1zZ3N0ciAiZW9mIGVuIGJ1ZmZlcl93cml0ZShzdHJlYW0pOiAlcyIKKworI34gbXNnaWQgImVycm9yIGluIGJ1ZmZlcl93cml0ZShzdHJlYW0pOiAlcyIKKyN+IG1zZ3N0ciAiZmFsbHUgZW4gYnVmZmVyX3dyaXRlKHN0cmVhbSk6ICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIGluIGJ1ZmZlcl9yZWFkKGZkKTogJXMiCisjfiBtc2dzdHIgImZhbGzDsyBlbiBidWZmZXJfcmVhZChmZCk6ICVzIgorCisjfiBtc2dpZCAiZXJyb3IgaW4gYnVmZmVyX3JlYWQoc3RyZWFtKTogJXMiCisjfiBtc2dzdHIgImVycm9yIGVuIGJ1ZmZlcl9yZWFkKHN0cmVhbSk6ICVzIgorCisjfiBtc2dpZCAiJXMgcmV0dXJuZWQgZXJyb3IgZXhpdCBzdGF0dXMgJWQiCisjfiBtc2dzdHIgIiVzIGRldm9sdmnDsydsIGPDs2RpZ3UgZGUgc2FsaWRhIGQnZXJyb3IgJWQiCisKKyN+IG1zZ2lkICIlcyBraWxsZWQgYnkgc2lnbmFsICglcyklcyIKKyN+IG1zZ3N0ciAiJXMgdGVybWluw7NzZSBwb2xhIHNlw7FhbCAoJXMpJXMiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiIgorI34gIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSB2ZXJzaW9uIDIgb3JcbiIKKyN+ICJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIlxuIgorI34gIkVzdG8geWUgc29mdHdhcmUgbGxpYnJlOyBtaXJhIGxhIExsaWNlbmNpYSBQw7pibGljYSBYZW5lcmFsIGRlIEdOVSBWZXJzacOzbiAiCisjfiAiMiBvXG4iCisjfiAicG9zdGVyaW9yIHBhIGxlcyBjb25kaWNpb25lcyBkZSBjb3BpYS4gTnVuIGhhaSBERU5HVU5BIGdhcmFudMOtYS5cbiIKKworI34gbXNnaWQgIiIKKyN+ICJcbiIKKyN+ICJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgdmVyc2lvbiAyIG9yXG4iCisjfiAibGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJcbiIKKyN+ICJFc3RvIHllIHNvZnR3YXJlIGxsaWJyZTsgbWlyYSBsYSBMbGljZW5jaWEgUMO6YmxpY2EgWGVuZXJhbCBkZSBHTlUgVmVyc2nDs24gIgorI34gIjIgb1xuIgorI34gInBvc3RlcmlvciBwYSBsZXMgY29uZGljaW9uZXMgZGUgY29waWEuIE51biBoYWkgREVOR1VOQSBnYXJhbnTDrWEuXG4iCisKKyN+IG1zZ2lkICIlczogZmFpbGVkIHRvIGV4ZWMgJyVzICVzJyIKKyN+IG1zZ3N0ciAiJXM6IG51biBwdWRvIGV4ZWN1dGFzZSAnJXMgJXMnIgorCisjfiBtc2dpZCAiJXM6IGludGVybmFsIGd6aXAgZXJyb3I6IHJlYWQ6IGAlcyciCisjfiBtc2dzdHIgIiVzOiBmYWxsdSBpbnRlcm51IGRlIGd6aXA6IGxsZWN0dXJhOiBgJXMnIgorCisjfiBtc2dpZCAiJXM6IGludGVybmFsIGd6aXAgZXJyb3I6IHdyaXRlOiBgJXMnIgorI34gbXNnc3RyICIlczogZmFsbHUgaW50ZXJudSBkZSBnemlwOiBlc2NyaXR1cmEgYCVzJyIKKworI34gbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIGVycm9yOiByZWFkKCVpKSAhPSB3cml0ZSglaSkiCisjfiBtc2dzdHIgIiVzOiBmYWxsdSBpbnRlcm51IGRlIGd6aXA6IGxsZWN0dXJhKCVpKSAhPSBlc2NyaXR1cmEoJWkpIgorCisjfiBtc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIGVycm9yOiByZWFkOiBgJXMnIgorI34gbXNnc3RyICIlczogZmFsbHUgaW50ZXJudSBkZSBiemlwMjogbGxlY3R1cmE6IGAlcyciCisKKyN+IG1zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgZXJyb3I6IHdyaXRlOiBgJXMnIgorI34gbXNnc3RyICIlczogZmFsbHUgaW50ZXJudSBkZSBiemlwMjogZXNjcml0dXJhIGAlcyciCisKKyN+IG1zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgZXJyb3I6IHJlYWQoJWkpICE9IHdyaXRlKCVpKSIKKyN+IG1zZ3N0ciAiJXM6IGZhbGx1IGludGVybnUgZGUgYnppcDI6IGxsZWN0dXJhKCVpKSAhPSBlc2NyaXR1cmEoJWkpIgorCisjfiBtc2dpZCAiRG9uJ3QgZm9yZ2V0IHRvIGZvcmVncm91bmQgKGBmZycpIHRoaXMgcHJvY2VzcyB3aGVuIHlvdSdyZSBkb25lICFcbiIKKyN+IG1zZ3N0ciAiIgorI34gIkVuIGFjYWJhbmRvIMKhbnVuIGVzY2FlY2VyIHRyYWVyIGVzdGkgcHJvY2VzdSBhIHByaW1lciBwbGFudSAoYGZnJykhXG4iCisKKyN+IG1zZ2lkICIiCisjfiAiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvclxuIgorI34gImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LlxuIgorI34gIlNlZSAlcyAtLWxpY2Vuc2UgZm9yIGNvcHlyaWdodCBhbmQgbGljZW5zZSBkZXRhaWxzLlxuIgorI34gbXNnc3RyICIiCisjfiAiRXN0byB5ZSBzb2Z0d2FyZSBsbGlicmU7IHZlIGxhIExsaWNlbmNpYSBQw7pibGljYSBYZW5lcmFsIGRlIEdOVSAoR05VIEdQTCkgIgorI34gInZlcnNpw7NuMiBvIHVuYSBwb3N0ZXJpb3IgcGEgbGVzIGNvbmRpY2lvbmVzIGRlIGNvcGlhLiBOVU4gaGFpIGdhcmFudMOtYS5WZSAiCisjfiAiJXMgLS1saWNlbnNlIHBhIGxvcyBkZXRhbGxlcyBkZSBjb3B5cmlnaHQgeSBsbGljZW5jaWEuXG4iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gZ2V0IHVuaXF1ZSBmaWxlbmFtZSBmb3IgY29udHJvbCBpbmZvIgorI34gbXNnc3RyICIiCisjfiAibnVuIHB1ZWRlIG9idGVuZXNlIHVuIG5vbWUgZGUgZmljaGVydSDDum5pY3UgcGEgbGEgaW5mb3JtYWNpw7NuIGRlIGNvbnRyb2wiCisKKyN+IG1zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIG1hbmFnZW1lbnQgcHJvZ3JhbSBxdWVyeSB0b29sXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJMYSBmZXJyYW1pZW50YSBkZSBjb25zdWx0ZXMgZGVsIHByb2dyYW1hIGRlIHhlc3Rpb24gZGUgcGFxdWV0ZXMgZGUgRGViaWFuICIKKyN+ICJgJXMnXG4iCisKKyN+IG1zZ2lkICIiCisjfiAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBxdWVyeWluZyBwYWNrYWdlcztcbiIKKyN+ICJVc2UgLS1saWNlbnNlIGZvciBjb3B5cmlnaHQgbGljZW5zZSBhbmQgbGFjayBvZiB3YXJyYW50eSAoR05VIEdQTCkuIgorI34gbXNnc3RyICIiCisjfiAiVXNlIC0taGVscCBwYSB0ZW5lciBhaWRhIHNvYnJvIGNvbnN1bHRhIGRlIHBhcXVldGVzO1xuIgorI34gIlVzZSAtLWxpY2Vuc2UgcGEgbGxlZXIgZWwgY29weXJpZ2h0LCBsYSBsbGljZW5jaWEgeSBsYSBhdXNlbmNpYSBkZSAiCisjfiAiZ2FyYW50w61hIChHUEwgZGUgR05VKS4iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gY2hvd24gJXM6ICVzIgorI34gbXNnc3RyICJmYWxsw7MgY2FtdWRhciBkZSBwcm9waWV0YXJpdSAlczogJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gY2htb2QgJXM6ICVzIgorI34gbXNnc3RyICJmYWxsw7MgY2FtdWRhciBkZSBwZXJtaXNvcyAlczogJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZm9yayBmb3IgY2xlYW51cCIKKyN+IG1zZ3N0ciAiZmFsbMOzIGFsIGVmZXV0dWFyIGBmb3JrJyBwYSBsbGltcGllemEiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gd2FpdCBmb3Igcm0gY2xlYW51cCIKKyN+IG1zZ3N0ciAiZmFsbMOzIGFsIGVzcGVyYXIgcG9sYSBsbGltcGllemEgY29uIHJtIgorCisjfiBtc2dpZCAicm0gY2xlYW51cCBmYWlsZWQsIGNvZGUgJWRcbiIKKyN+IG1zZ3N0ciAibGEgbGxpbXBpZXphIGNvbiBybSBmYWxsw7MsIGPDs2RpZ3UgJWRcbiIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIHJtIC1yZiIKKyN+IG1zZ3N0ciAiZmFsbMOzIGFsIGV4ZWN1dGFyIHJtIC1yZiIKKworI34gbXNnaWQgImZhaWxlZCB0byByZWFkIGBjb250cm9sJyAoaW4gYCUuMjU1cycpIgorI34gbXNnc3RyICJmYWxsw7MgYWwgbGxlZXIgYGNvbnRyb2wnIChlbiBgJS4yNTVzJykiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gc2VlayBiYWNrIgorI34gbXNnc3RyICJudW4gcHVlZGUgZWZldXR1YXNlIGBzZWVrJyBoYXphIGF0csOhcyIKKworI34gbXNnaWQgInVua25vd24gZGF0YSB0eXBlIGAlaScgaW4gYnVmZmVyX3dyaXRlXG4iCisjfiBtc2dzdHIgInRyaWJhIGRlIGRhdHUgYCVpJyBkZXNjb25vY8OtdSBlbiBidWZmZXJfd3JpdGVcbiIKKworI34gbXNnaWQgInVua25vd24gZGF0YSB0eXBlIGAlaScgaW4gYnVmZmVyX3JlYWRcbiIKKyN+IG1zZ3N0ciAidHJpYmEgZGUgZGF0dSBkZXNjb25vY8OtdSBgJWknIGVuIGJ1ZmZlcl9yZWFkXG4iCisKKyN+IG1zZ2lkICJ3YWl0IGZvciBzaGVsbCBmYWlsZWQiCisjfiBtc2dzdHIgIkZhbGzDsyBlc3BlcmFyIHBvbGEgc2hlbGwiCisKKyN+IG1zZ2lkICJyZWFkIGVycm9yIGluIGRpdmVyc2lvbnMgW2ldIgorI34gbXNnc3RyICJmYWxsdSBkZSBsbGVjdHVyYSBub3MgZGVzdsOtb3MgW2ldIgorCisjfiBtc2dpZCAidW5saW5rIgorI34gbXNnc3RyICJkZXNlbmxsYXphciIKKworI34gbXNnaWQgImNobW9kIgorI34gbXNnc3RyICJjYW11ZGFyIGxvcyBwZXJtaXNvcyBkZSIKKworI34gbXNnaWQgImRlbGV0ZSIKKyN+IG1zZ3N0ciAiZGVzYW5pY2lhciIKKworI34gbXNnaWQgImZhaWxlZCB0byAlcyAnJS4yNTVzJyIKKyN+IG1zZ3N0ciAiZmFsbMOzIGVuICVzICclLjI1NXMnIgorCisjfiBtc2dpZCAid2FpdCBmb3IgZHBrZy1zcGxpdCBmYWlsZWQiCisjfiBtc2dzdHIgImxhIGVzcGVyYSBwb3IgZHBrZy1zcGxpdCBmYWxsw7MiCisKKyN+IG1zZ2lkICJjYW5ub3QgcmVtb3ZlIGZpbGUgYCUuMjUwcyciCisjfiBtc2dzdHIgIm51biBzZSBwdWVkZSBkZXNhbmljaWFyIGVsIGZpY2hlcnUgYCUuMjUwcyciCisKKyN+IG1zZ2lkICIiCisjfiAiXG4iCisjfiAiQ29weXJpZ2h0IChDKSAyMDAwIFdpY2hlcnQgQWtrZXJtYW4uIgorI34gbXNnc3RyICIiCisjfiAiXG4iCisjfiAiQ29weXJpZ2h0IChDKSAyMDAwIFdpY2hlcnQgQWtrZXJtYW4uIgorCisjfiBtc2dpZCAibm8gbW9kZSBzcGVjaWZpZWQiCisjfiBtc2dzdHIgIm51biBzZSBjb25zZcOxw7MgbW91IGRhbHUiCisKKyN+IG1zZ2lkICJpbGxlZ2FsIHVzZXIgJXMiCisjfiBtc2dzdHIgInVzdWFyaXUgaWxlZ2FsIGAlcyciCisKKyN+IG1zZ2lkICJub24tZXhpc3RpbmcgdXNlciAlcyIKKyN+IG1zZ3N0ciAidXN1YXJpdSBpbmVzaXN0ZW50ZSBgJXMnIgorCisjfiBtc2dpZCAiaWxsZWdhbCBncm91cCAlcyIKKyN+IG1zZ3N0ciAiZ3J1cHUgaWxsZWdhbCBgJXMnIgorCisjfiBtc2dpZCAibm9uLWV4aXN0aW5nIGdyb3VwICVzIgorI34gbXNnc3RyICJncnVwdSBpbmVzaXN0ZW50ZSBgJXMnIgorCisjfiBtc2dpZCAiaWxsZWdhbCBtb2RlICVzIgorI34gbXNnc3RyICJtb3UgaWxsZWdhbCBgJXMnIgorCisjfiBtc2dpZCAiYWJvcnRpbmciCisjfiBtc2dzdHIgImVuY2Fib3hhbmRvIgorCisjfiBtc2dpZCAiY2Fubm90IG9wZW4gc3RhdG92ZXJyaWRlOiAlcyIKKyN+IG1zZ3N0ciAiZmFsbHUgYWwgYWJyaXIgZWwgZmljaGVydSBzdGF0b3ZlcnJpZGU6ICVzIgorCisjfiBtc2dpZCAiTXVsdGlwbGUgb3ZlcnJpZGVzIGZvciBcIiVzXCIsIGFib3J0aW5nIgorI34gbXNnc3RyICJBbGJvcnRhbmRvIHBvcnF1ZSBleGlzdGVuIGFib25kZXMgcmVkZWZpbmljaW9uZXMgcGEgwqslc8K7IgorCisjfiBtc2dpZCAiZmFpbGVkIHdyaXRlIGR1cmluZyBoYXNocmVwb3J0IgorI34gbXNnc3RyICJlc2NyaXR1cmEgZmFsbGlkYSBuJ2luZm9ybWUgZGUgdGlwdSDCq2hhc2jCuyIKKworI34gbXNnaWQgImNvbmZpZ3VyYXRpb24gZXJyb3I6IHVua25vd24gb3B0aW9uICVzIgorI34gbXNnc3RyICJmYWxsdSBkZSBjb25maWd1cmFjacOzbjogb3BjacOzbiBkZXNjb25vY2lkYSAlcyIKKworI34gbXNnaWQgImNvbmZpZ3VyYXRpb24gZXJyb3I6ICVzIGRvZXMgbm90IHRha2UgYSB2YWx1ZSIKKyN+IG1zZ3N0ciAiZmFsbHUgZGUgY29uZmlndXJhY2nDs246ICVzIG51biBsbGV2YSBwYXLDoW1ldHJvcyIKKworI34gbXNnaWQgInVuZXhlY3B0ZWQgZW5kIG9mIGxpbmUgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCisjfiBtc2dzdHIgImZpbmFsIGRlIGxsaW5pYSBpbmVzcGVyw6F1IGVuIGZpY2hlcnUgc3RhdG92ZXJyaWRlIgorCisjfiBtc2dpZCAiLS1jaGVjay1zdXBwb3J0ZWQgdGFrZXMgbm8gYXJndW1lbnRzIgorI34gbXNnc3RyICItLWNoZWNrLXN1cHBvcnQgbnVuIHRvbWEgZGVuZ8O6biBhcmd1bWVudHUiCisKKyN+IG1zZ2lkICItLWZvcmdldC1vbGQtdW5hdmFpbCB0YWtlcyBubyBhcmd1bWVudHMiCisjfiBtc2dzdHIgIi0tZm9yZ2V0LW9sZC11bmF2YWlsIG51biBsbGV2YSBwYXLDoW1ldHJvcyIKKworI34gbXNnaWQgIiIKKyN+ICJcbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDE5OTQsMTk5NSBJYW4gSmFja3Nvbi4iCisjfiBtc2dzdHIgIiIKKyN+ICJcbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDE5OTQsMTk5NSBJYW4gSmFja3Nvbi4iCisKKyN+IG1zZ2lkICIiCisjfiAiVXNhZ2U6ICVzIFs8b3B0aW9ucz4gLi4uXSBbLS1dIDxmaWxlbmFtZT5cbiIKKyN+ICJcbiIKKyN+ICJPcHRpb25zOlxuIgorI34gIiAgLS1zZWN0aW9uIDxyZWdleHA+IDx0aXRsZT5cbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICBwdXQgdGhlIG5ldyBlbnRyeSBpbiB0aGUgPHJlZ2V4PiBtYXRjaGVkICIKKyN+ICJzZWN0aW9uXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgb3IgY3JlYXRlIGEgbmV3IG9uZSB3aXRoIDx0aXRsZT4gaWYgbm9uLSIKKyN+ICJleGlzdGVudC5cbiIKKyN+ICIgIC0tbWVudWVudHJ5PTx0ZXh0PiAgICAgICBzZXQgdGhlIG1lbnUgZW50cnkuXG4iCisjfiAiICAtLWRlc2NyaXB0aW9uPTx0ZXh0PiAgICAgc2V0IHRoZSBkZXNjcmlwdGlvbiB0byBiZSB1c2VkIGluIHRoZSBtZW51ICIKKyN+ICJlbnRyeS5cbiIKKyN+ICIgIC0taW5mby1maWxlPTxwYXRoPiAgICAgICBzcGVjaWZ5IGluZm8gZmlsZSB0byBpbnN0YWxsIGluIHRoZSAiCisjfiAiZGlyZWN0b3J5LlxuIgorI34gIiAgLS1kaXItZmlsZT08cGF0aD4gICAgICAgIHNwZWNpZnkgZmlsZSBuYW1lIG9mIGluZm8gZGlyZWN0b3J5IGZpbGUuXG4iCisjfiAiICAtLWluZm9kaXI9PGRpcmVjdG9yeT4gICAgc2FtZSBhcyAnLS1kaXItZmlsZT08ZGlyZWN0b3J5Pi9kaXInLlxuIgorI34gIiAgLS1pbmZvLWRpcj08ZGlyZWN0b3J5PiAgIGxpa2V3aXNlLlxuIgorI34gIiAgLS1rZWVwLW9sZCAgICAgICAgICAgICAgIGRvIG5vdCByZXBsYWNlIGVudHJpZXMgbm9yIHJlbW92ZSBlbXB0eSBvbmVzLlxuIgorI34gIiAgLS1yZW1vdmUgICAgICAgICAgICAgICAgIHJlbW92ZSB0aGUgZW50cnkgc3BlY2lmaWVkIGJ5IDxmaWxlbmFtZT4gIgorI34gImJhc2VuYW1lLlxuIgorI34gIiAgLS1yZW1vdmUtZXhhY3RseSAgICAgICAgIHJlbW92ZSB0aGUgZXhhY3QgPGZpbGVuYW1lPiBlbnRyeS5cbiIKKyN+ICIgIC0tdGVzdCAgICAgICAgICAgICAgICAgICBlbmFibGVzIHRlc3QgbW9kZSAobm8gYWN0aW9ucyB0YWtlbikuXG4iCisjfiAiICAtLWRlYnVnICAgICAgICAgICAgICAgICAgZW5hYmxlcyBkZWJ1ZyBtb2RlIChzaG93IG1vcmUgaW5mb3JtYXRpb24pLlxuIgorI34gIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIGRvIG5vdCBzaG93IG91dHB1dCBtZXNzYWdlcy5cbiIKKyN+ICIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorI34gIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJNb3UgZCd1c3U6ICVzIFs8b3BjaW9uZXM+IC4uLl0gWy0tXSA8ZmljaGVydT5cbiIKKyN+ICJcbiIKKyN+ICJPcGNpb25lczpcbiIKKyN+ICIgIC0tc2VjdGlvbiA8ZXhwcmVnPiA8dMOtdHVsdT5cbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICBwb24gbGEgZW50cmFkYSBudWV2YSBuYSBlc3RheWEgcXVlIHMnYXh1c3RhXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgYSA8ZXhwcmVnPiBvIGNyZWEgdW5hIG51ZXZhIGNvbiA8dMOtdHVsdT4gc2kgIgorI34gIm51biBleGlzdGUuXG4iCisjfiAiICAtLW1lbnVlbnRyeT08dGVzdHU+IGZpeGEgbGEgZW50cmFkYSBkZSBtZW7Dui5cbiIKKyN+ICIgIC0tZGVzY3JpcHRpb249PHRlc3R1PiBmaXhhIGxhIGRlc2NyaXBjacOzbiBhIHVzYXIgbmEgZW50cmFkYSBkZSBtZW7Dui5cbiIKKyN+ICIgIC0taW5mby1maWxlPTxjYW3DrW4+IGVzcGVjaWZpY2EnbCBmaWNoZXJ1IGQnaW5mb3JtYWNpw7NuIGEgaW5zdGFsYXIgbmVsICIKKyN+ICJkaXJldXRvcml1LlxuIgorI34gIiAgLS1kaXItZmlsZT08Y2Ftw61uPiBlc3BlY2lmaWNhJ2wgbm9tZSBkZWwgZmljaGVydSBkJ2luZm9ybWFjacOzbiBkZSAiCisjfiAiZGlyZXV0b3JpdS5cbiIKKyN+ICIgIC0taW5mb2Rpcj08ZGlyZWN0b3JpdT4gZXF1aXZhbGVudGUgYSAnLS1kaXItZmlsZT08ZGlyZWN0b3JpdT4vZGlyJy5cbiIKKyN+ICIgIC0taW5mby1kaXI9PGRpcmVjdG9yaXU+IGlndWFsIHF1ZSdsIGNhc3UgYW50ZXJpb3IuXG4iCisjfiAiICAtLWtlZXAtb2xkIG51biBjYW11ZGEgbGVzIGVudHJhZXMgbmluIGRlc2FuaWNpYSBsZXMgdmFsZXJlcy5cbiIKKyN+ICIgIC0tcmVtb3ZlIGRlc2FuaWNpYXIgbGEgZW50cmFkYSBlc3BlY2lmaWNhIG5lbCBub21lIGJhc2UgPGZpY2hlcnU+LlxuIgorI34gIiAgLS1yZW1vdmUtZXhhY3RseSBkZXNhbmljaWEgbGEgZW50cmFkYSBxdWUgc2UgbGxhbWEgZXhhdXRhbWVudGUgIgorI34gIjxmaWNoZXJ1Pi5cbiIKKyN+ICIgIC0tdGVzdCBhY3RpdmEgZWwgbW91IGRlIHBydWViYSAobnVuIGZhaSBkZW5ndW5hIGFpY2nDs24pLlxuIgorI34gIiAgLS1kZWJ1ZyBhY3RpdmEgbW91IGRlIGRlcHVyYWNpw7NuIChhbXVlc2EgbcOhcyBpbmZvcm1hY2nDs24pLlxuIgorI34gIiAgLS1xdWlldCBvbWl0ZSBsb3MgbWVuc2F4ZXMgZGUgc2FsaWRhLlxuIgorI34gIiAgLS1oZWxwIGFtdWVzYSBlc3RpIG1lbnNheGUgZGUgYWlkYS5cbiIKKyN+ICIgIC0tdmVyc2lvbiBhbXVlc2EgbGEgdmVyc2nDs24uXG4iCisKKyN+IG1zZ2lkICJjb3VsZCBub3Qgb3BlbiBzdGRlcnIgZm9yIG91dHB1dCEgJXMiCisjfiBtc2dzdHIgIsKhbnVuIHB1ZSBhYnJpc2UgbGEgc2FsaWRhIGVzdMOhbmRhciBkJ2Vycm9yISAlcyIKKworI34gbXNnaWQgIiVzOiAtLXNlY3Rpb24gbmVlZHMgdHdvIG1vcmUgYXJncyIKKyN+IG1zZ3N0ciAiJXM6IC0tc2VjdGlvbiBuZWNlc2l0YSBkb3MgYXJndW1lbnRvcyBtw6FzIgorCisjfiBtc2dpZCAiJXM6IG9wdGlvbiAtLSVzIGlzIGRlcHJlY2F0ZWQgKGlnbm9yZWQpIgorI34gbXNnc3RyICIlczogbGEgb3BjacOzbiAtLSVzIHllIHZpZXnDrXNpbWEgKGlnbm9yYXLDoXNlKSIKKworI34gbXNnaWQgIiVzOiB1bmtub3duIG9wdGlvbiBgJXMnIgorI34gbXNnc3RyICIlczogb3BjacOzbiBgJXMnIGRlc2Nvbm9jaWRhIgorCisjfiBtc2dpZCAiJXM6IHRvbyBtYW55IGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiJXM6IGRlbWFzaWFvcyBhcmd1bWVudG9zIgorCisjfiBtc2dpZCAiJXM6IC0tc2VjdGlvbiBpZ25vcmVkIHdpdGggLS1yZW1vdmUiCisjfiBtc2dzdHIgIiVzOiBpZ27Ds3Jhc2UgLS1zZWN0aW9uIGNvbiAtLXJlbW92ZSIKKworI34gbXNnaWQgIiVzOiAtLWRlc2NyaXB0aW9uIGlnbm9yZWQgd2l0aCAtLXJlbW92ZSIKKyN+IG1zZ3N0ciAiJXM6IGlnbsOzcmFzZSAtLWRlc2NyaXB0aW9uIGNvbiAtLXJlbW92ZSIKKworI34gbXNnaWQgIiVzOiB0ZXN0IG1vZGUgLSBkaXIgZmlsZSB3aWxsIG5vdCBiZSB1cGRhdGVkIgorI34gbXNnc3RyICIlczogbW91IGRlIHBydWViYSwgbnVuIHMnYW5vdmFyw6EgZWwgZmljaGVydSBkZSBkaXJlY3Rvcml1IgorCisjfiBtc2dpZCAiJXM6IHdhcm5pbmcsIGlnbm9yaW5nIGNvbmZ1c2luZyBJTkZPLURJUi1FTlRSWSBpbiBmaWxlLiIKKyN+IG1zZ3N0ciAiIgorI34gIiVzOiBhdmlzdSwgaWduw7NyYXNlJ2wgY29uZnVzdSB2YWxvciBJTkZPLURJUi1FTlRSWSBhdG9ww6F1IG5lbCBmaWNoZXJ1LiIKKworI34gbXNnaWQgImludmFsaWQgaW5mbyBlbnRyeSIKKyN+IG1zZ3N0ciAiZW50cmFkYSBkJ2luZm9ybWFjacOzbiBpbnbDoWxpZGEiCisKKyN+IG1zZ2lkICIiCisjfiAiXG4iCisjfiAiTm8gYFNUQVJULUlORk8tRElSLUVOVFJZJyBhbmQgbm8gYFRoaXMgZmlsZSBkb2N1bWVudHMnLlxuIgorI34gIiVzOiB1bmFibGUgdG8gZGV0ZXJtaW5lIGRlc2NyaXB0aW9uIGZvciBgZGlyJyBlbnRyeSAtIGdpdmluZyB1cFxuIgorI34gbXNnc3RyICIiCisjfiAiXG4iCisjfiAiTnVuIHMnYXRvcGEgYFNUQVJULUlORk8tRElSLUVOVFJZJyBuaW4gdGFtcG9jbyB1biB0ZXN0dSDCq1RoaXMgZmlsZSAiCisjfiAiZG9jdW1lbnRzwrsgLlxuIgorI34gIiVzOiBudW4gc2UgcHVkbyBkZXRlcm1pbmFyIGxhIGRlc2NyaXBjacOzbiBwYSBsYSBlbnRyYWRhIGBkaXInLCAiCisjfiAiZW5jYWJveGFuZG9cbiIKKworI34gbXNnaWQgIiVzOiBubyBmaWxlICVzLCByZXRyaWV2aW5nIGJhY2t1cCBmaWxlICVzLiIKKyN+IG1zZ3N0ciAiJXM6IG51biBlc2lzdGUnbCBmaWNoZXJ1ICVzLCBhbGdhbWFuZG8gbGEgY29waWEgZGUgc2VndXJpZMOhICVzLiIKKworI34gbXNnaWQgIiVzOiBjb3B5aW5nICVzIHRvICVzIGZhaWxlZCwgZ2l2aW5nIHVwOiAlcyIKKyN+IG1zZ3N0ciAiJXM6IGZhbGzDsyBjb3BpYXIgJXMgYSAlcywgZGV4w6FuZG9sbzogJXMiCisKKyN+IG1zZ2lkICIlczogbm8gYmFja3VwIGZpbGUgJXMgYXZhaWxhYmxlLCByZXRyaWV2aW5nIGRlZmF1bHQgZmlsZS4iCisjfiBtc2dzdHIgIiIKKyN+ICIlczogbnVuIGVzaXN0ZSdsIGZpY2hlcnUgZGUgY29waWEgZGUgc2VndXJpZMOhICVzLCBhbGdhbWFuZG8gZWwgZmljaGVydSAiCisjfiAicG9yIG9taXNpw7NuLiIKKworI34gbXNnaWQgIiVzOiBubyBiYWNrdXAgZmlsZSAlcyBhdmFpbGFibGUuIgorI34gbXNnc3RyICIlczogbnVuIGVzaXN0ZSdsIGZpY2hlcnUgZGUgY29waWEgZGUgc2VndXJpZMOhICVzLiIKKworI34gbXNnaWQgIiVzOiBubyBkZWZhdWx0IGZpbGUgJXMgYXZhaWxhYmxlLCBnaXZpbmcgdXAuIgorI34gbXNnc3RyICIlczogbnVuIGVzaXN0ZSdsIGZpY2hlcnUgcG9yIG9taXNpw7NuICVzLCBkZXjDoW5kb2xvLiIKKworI34gbXNnaWQgIiVzOiBmYWlsZWQgdG8gbG9jayBkaXIgZm9yIGVkaXRpbmchICVzIgorI34gbXNnc3RyICIlczogwqFoZWJvIHVuIGZhbGx1IGFsIGJsb3F1ZWFyIGVsIGRpcmVjdG9yaXUgcGEgZWRpdGFsdSEgJXMiCisKKyN+IG1zZ2lkICJ0cnkgZGVsZXRpbmcgJXM/IgorI34gbXNnc3RyICLCv3RlbnRhciBkZXNhbmljaWFyICVzPyIKKworI34gbXNnaWQgInVuYWJsZSB0byBvcGVuICVzOiAlcyIKKyN+IG1zZ3N0ciAibnVuIHNlIHB1ZWRlIGFicmlyICVzOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byBjbG9zZSAlcyBhZnRlciByZWFkOiAlcyIKKyN+IG1zZ3N0ciAiZmFsbHUgYWwgemFycmFyICVzIGRhcnLDqXUgZGUgbGEgbGxlY3R1cmE6ICVzIgorCisjfiBtc2dpZCAiJXM6IGV4aXN0aW5nIGVudHJ5IGZvciBgJXMnIG5vdCByZXBsYWNlZCIKKyN+IG1zZ3N0ciAiJXM6IG51biBzZSBjYW11ZMOzIGxhIGVudHJhZGEgZXhpc3RlbnRlIHBhIGAlcyciCisKKyN+IG1zZ2lkICIlczogcmVwbGFjaW5nIGV4aXN0aW5nIGRpciBlbnRyeSBmb3IgYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IGNhbXVkYW5kbyBsYSBlbnRyYWRhIGRpciBleGlzdGVudGUgcGEgYCVzJyIKKworI34gbXNnaWQgIiVzOiBjcmVhdGluZyBuZXcgc2VjdGlvbiBgJXMnIgorI34gbXNnc3RyICIlczogY3JlYW5kbyB1bmEgbnVldmEgZXN0YXlhIGAlcyciCisKKyN+IG1zZ2lkICIlczogbm8gc2VjdGlvbnMgeWV0LCBjcmVhdGluZyBNaXNjZWxsYW5lb3VzIHNlY3Rpb24gdG9vLiIKKyN+IG1zZ3N0ciAiJXM6IGVudMOhIG51biBoYWkgZXN0YXllcywgY3JlYXLDoXNlIGxhIGVzdGF5YSDCq0FtaWVzdHXCuy4iCisKKyN+IG1zZ2lkICIlczogbm8gc2VjdGlvbiBzcGVjaWZpZWQgZm9yIG5ldyBlbnRyeSwgcGxhY2luZyBhdCBlbmQiCisjfiBtc2dzdHIgIiIKKyN+ICIlczogbnVuIHMnZXNwZWNpZmljw7MgdW5hIGVzdGF5YSAgcGEgbGEgbnVldmEgZW50cmFkYSwgbGxhbnRhcsOhc2UgYWwgZmluYWwiCisKKyN+IG1zZ2lkICIlczogZGVsZXRpbmcgZW50cnkgYCVzIC4uLiciCisjfiBtc2dzdHIgIiVzOiBkZXNhbmljaWFuZG8gbGEgZW50cmFkYSBgJXMgLi4uJyIKKworI34gbXNnaWQgIiVzOiBlbXB0eSBzZWN0aW9uIGAlcycgbm90IHJlbW92ZWQiCisjfiBtc2dzdHIgIiVzOiBudW4gc2UgZGVzYW5pY2nDsyBsYSBlc3RheWEgdmFsZXJhIGAlcyciCisKKyN+IG1zZ2lkICIlczogZGVsZXRpbmcgZW1wdHkgc2VjdGlvbiBgJXMnIgorI34gbXNnc3RyICIlczogZGVzYW5pY2lhbmRvIGxhIGVzdGF5YSB2YWxlcmEgYCVzJyIKKworI34gbXNnaWQgIiVzOiBubyBlbnRyeSBmb3IgZmlsZSBgJXMnIGFuZCBtZW51IGVudHJ5IGAlcyciCisjfiBtc2dzdHIgIiVzOiBudW4gaGFpIHVuYSBlbnRyYWRhIHBhbCBmaWNoZXJ1IGAlcycgeSBsYSBlbnRyYWRhIGRlIG1lbsO6IGAlcyciCisKKyN+IG1zZ2lkICIlczogbm8gZW50cnkgZm9yIGZpbGUgYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IG51biBoYWkgdW5hIGVudHJhZGEgcGFsIGZpY2hlcnUgYCVzJyIKKworI34gbXNnaWQgInVuYWJsZSB0byBiYWNrdXAgb2xkICVzLCBnaXZpbmcgdXA6ICVzIgorI34gbXNnc3RyICJudW4gc2UgcHVkbyBncmFiYXIgdW5hIGNvcGlhIGRlICVzLCBhYmFuZG9uYW5kbzogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgJXM6ICVzIgorI34gbXNnc3RyICJudW4gc2UgcHVlZGUgaW5zdGFsYXIgZWwgbnVldnUgJXM6ICVzIgorCisjfiBtc2dpZCAiJXM6IGNvdWxkIG5vdCBiYWNrdXAgJXMgaW4gJXM6ICVzIgorI34gbXNnc3RyICIlczogbnVuIHNlIHB1ZG8gZmFjZXIgdW5hIGNvcGlhIGRlIHNlZ3VyaWTDoSBkZSAlcyBlbiAlczogJXMiCisKKyN+IG1zZ2lkICIlczogd2FybmluZyAtIHVuYWJsZSB0byB1bmxvY2sgJXM6ICVzIgorI34gbXNnc3RyICIlczogYXZpc3UgLSBudW4gc2UgcHVlZGUgZGVzYmxvcXVlYXIgYCVzJzogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcmVhZCAlczogJWQiCisjfiBtc2dzdHIgIm51biBzZSBwdWVkZSBsbGVlciAlczogJWQiCisKKyN+IG1zZ2lkICJkYmc6ICVzIgorI34gbXNnc3RyICJkYmc6ICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIG9wZW4gdG1wZmlsZSAoY29udHJvbCksICVzIgorI34gbXNnc3RyICJmYWxsw7MgYWwgYWJyaXIgdW4gZmljaGVydSB0ZW1wb3JhbCAoY29udHJvbCksICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIG9wZW4gdG1wZmlsZSAoZGF0YSksICVzIgorI34gbXNnc3RyICJmYWxsw7MgYWwgYWJyaXIgZWwgZmljaGVydSB0ZW1wb3JhbCAoZGF0YSksICVzIgorCisjfiBtc2dpZCAiaW52YWxpZCBudW1iZXIgZm9yIC0tY29tbWFuZC1mZCIKKyN+IG1zZ3N0ciAibsO6bWJlcnUgaW52w6FsaWR1IHBhIC0tY29tbWFuZC1mZCIKKworI34gbXNnaWQgInVuYWJsZSB0byByZXdpbmQgYXQgc3RhcnQgb2YgdnNucHJpbnRmIgorI34gbXNnc3RyICJudW4gcHVlIHZvbHZlc2UgYSBsJ2VudGFtdSBkZSB2c25wcmludGYiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gdHJ1bmNhdGUgaW4gdnNucHJpbnRmIgorI34gbXNnc3RyICJudW4gcHVlIHRydW5jYXNlIGVuIHZzbnByaW50ZiIKKworI34gbXNnaWQgIndyaXRlIGVycm9yIGluIHZzbnByaW50ZiIKKyN+IG1zZ3N0ciAiZXJyb3IgZCdlc2NyaXR1cmEgZW4gdnNucHJpbnRmIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHN0YXQgaW4gdnNucHJpbnRmIgorI34gbXNnc3RyICJudW4gcHVlIGZhY2VzZSBgc3RhdCcgZW4gdnNucHJpbnRmIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHJld2luZCBpbiB2c25wcmludGYiCisjfiBtc2dzdHIgIm51biBwdWUgdm9sdmVzZSBlbiB2c25wcmludGYiCisKKyN+IG1zZ2lkICJyZWFkIGVycm9yIGluIHZzbnByaW50ZiB0cnVuY2F0ZWQiCisjfiBtc2dzdHIgImVycm9yIGRlIGxsZWN0dXJhIGVuIHZzbnByaW50ZiB0cnVuY8OhdSIKKworI34gbXNnaWQgIlN5c3RlbSBlcnJvciBuby4lZCIKKyN+IG1zZ3N0ciAiRmFsbHUgZGVsIHNpc3RlbWEgbsK6OiVkIgorCisjfiBtc2dpZCAiU2lnbmFsIG5vLiVkIgorI34gbXNnc3RyICJTZcOxYWwgbsK6OiVkIgorCisjfiBtc2dpZCAiZHBrZzogd2FybmluZyAtICVzIHJldHVybmVkIGVycm9yIGV4aXQgc3RhdHVzICVkXG4iCisjfiBtc2dzdHIgImRwa2c6IGF2aXN1IC0gJXMgZGV2b2x2acOzIGPDs2RpZ3UgZCdlcnJvciAlZFxuIgorCisjfiBtc2dpZCAiZHBrZzogd2FybmluZyAtICVzIGtpbGxlZCBieSBzaWduYWwgKCVzKSVzXG4iCisjfiBtc2dzdHIgImRwa2c6IGF2aXN1IC0gJXMgdGVybWluw6F1IHBvciBzZcOxYWwgKCVzKSVzXG4iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gcmVhZCBgJXMnIGF0IGxpbmUgJWQiCisjfiBtc2dzdHIgImZhbGzDsyBhbCBsbGVlciBgJXMnIG5hIGxsaW5pYSAlZCIKKworI34gbXNnaWQgInBhcnNlIGVycm9yLCBpbiBmaWxlIGAlLjI1NXMnIG5lYXIgbGluZSAlZCIKKyN+IG1zZ3N0ciAiZmFsbHUgZGUgdHJhdGFtaWVudHUsIG5lbCBmaWNoZXJ1IGAlLjI1NXMnIGNlcmNhIGRlIGxhIGxsaW5pYSAlZCIKKworI34gbXNnaWQgIiBwYWNrYWdlIGAlLjI1NXMnIgorI34gbXNnc3RyICIgcGFxdWV0ZSBgJS4yNTVzJyIKKworI34gbXNnaWQgImZhaWxlZCB0byByZWFsbG9jIGZvciB2YXJpYWJsZSBidWZmZXIiCisjfiBtc2dzdHIgImZhbGx1IGFsIHJlYXNpdGlhciB1biBidWZmZXIgdmFyaWFibGUiCisKKyN+IG1zZ2lkICJwcm9jZXNzX2FyY2hpdmUgLi4uICBhbHJlYWR5IGRpc2FwcGVhcmVkICEiCisjfiBtc2dzdHIgInByb2Nlc3NfYXJjaGl2ZSAuLi4gIMKhecOhIGRlc2FwYWVjacOzISIKKworI34gbXNnaWQgImdvYmJsZSByZXBsYWNlZCBmaWxlIGAlLjI1NXMnIgorI34gbXNnc3RyICJ1c2FyIGVsIGZpY2hlcnUgcmVlbXBsYXrDoXUgYCUuMjU1cyciCisKKyN+IG1zZ2lkICJkcGtnOiAlczogd2FybmluZyAtIGZhaWxlZCB0byByZW1vdmUgYCUuMjUwcyc6ICVzXG4iCisjfiBtc2dzdHIgImRwa2c6ICVzOiBhdmlzdSAtIGZhbGzDsyBkZXNhbmljaWFyIGAlLjI1MHMnOiAlc1xuIgorCisjfiBtc2dpZCAiLS1hdWRpdCBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudHMiCisjfiBtc2dzdHIgIi0tYXVkaXQgbnVuIGxsZXZhIGRlbmfDum4gYXJndW1lbnR1IgorCisjfiBtc2dpZCAiLS15ZXQtdG8tdW5wYWNrIGRvZXMgbm90IHRha2UgYW55IGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiLS15ZXQtdG8tdW5wYWNrIG51biBsbGV2YSBkZW5nw7puIGFyZ3VtZW50dSIKKworI34gbXNnaWQgIi0tYXNzZXJ0LSogZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnRzIgorI34gbXNnc3RyICItLWFzc2VydC0qIG51biBsbGV2YSBkZW5nw7puIGFyZ3VtZW50dSIKKworI34gbXNnaWQgIi0tcHJlZGVwLXBhY2thZ2UgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tcHJlZGVwLXBhY2thZ2UgbnVuIGxsZXZhIGRlbmfDum4gYXJndW1lbnR1IgorCisjfiBtc2dpZCAiLS1wcmludC1hcmNoaXRlY3R1cmUgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tcHJpbnQtYXJjaGl0ZWN0dXJlIG51biBsbGV2YSBkZW5nw7puIGFyZ3VtZW50dSIKKworI34gbXNnaWQgInVuYWJsZSB0byBzdGF0IGluc3RhbGxlZCAlcyBzY3JpcHQgYCUuMjUwcyciCisjfiBtc2dzdHIgIm51biBzZSBwdWRvIGZhY2VyIGBzdGF0JyBkZWwgc2NyaXB0ICVzIGluc3RhbMOhdSBgJS4yNTBzJyIKKworI34gbXNnaWQgInVuYWJsZSB0byBzdGF0IG5ldyAlcyBzY3JpcHQgYCUuMjUwcyciCisjfiBtc2dzdHIgIm51biBzZSBwdWRvIGZhY2VyIGBzdGF0JyBkZWwgc2NyaXB0IG51ZXZ1ICVzIGAlLjI1MHMnIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGV4ZWN1dGUgbmV3ICVzIgorI34gbXNnc3RyICJudW4gc2UgcHVkbyBleGVjdXRhciBlbCBudWV2dSAlcyIKKworI34gbXNnaWQgImRwa2c6IHdhcm5pbmcgLSB1bmFibGUgdG8gc3RhdCAlcyBgJS4yNTBzJzogJXNcbiIKKyN+IG1zZ3N0ciAiZHBrZzogYXZpc3UgLSBudW4gc2UgcHVkbyBmYWNlciBgc3RhdCcgZGUgJXMgYCUuMjUwcyc6ICVzXG4iCisKKyN+IG1zZ2lkICItLXNldC1zZWxlY3Rpb25zIGRvZXMgbm90IHRha2UgYW55IGFyZ3VtZW50IgorI34gbXNnc3RyICItLXNldC1zZWxlY3Rpb25zIG51biBsbGV2YSBwYXLDoW1ldHJvcyIKKworI34gbXNnaWQgIi0tY2xlYXItc2VsZWN0aW9ucyBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudCIKKyN+IG1zZ3N0ciAiLS1jbGVhci1zZWxlY3Rpb25zIG51biBsbGV2YSBwYXLDoW1ldHJvcyIKKworI34gbXNnaWQgIi0tYnVpbGQgbmVlZHMgYSBkaXJlY3RvcnkgYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tYnVpbGQgbmVjZXNpdGEgdW4gZGlyZXV0b3JpdSBjb21vIHBhcsOhbWV0cnUiCisKKyN+IG1zZ2lkICIiCisjfiAiZHBrZy1kZWI6IHdhcm5pbmcsIG5vdCBjaGVja2luZyBjb250ZW50cyBvZiBjb250cm9sIGFyZWEuXG4iCisjfiAiZHBrZy1kZWI6IGJ1aWxkaW5nIGFuIHVua25vd24gcGFja2FnZSBpbiBgJXMnLlxuIgorI34gbXNnc3RyICIiCisjfiAiZHBrZy1kZWI6IGF0ZW5jacOzbiwgbnVuIHNlIGNvbXByZWJhJ2wgY29udGVuw611IGRlbCDDoXJlYSBkZSBjb250cm9sLlxuIgorI34gImRwa2ctZGViOiBjb25zdHLDumlzZSB1biBwYXF1ZXRlIGRlc2Nvbm9jw611IGVuIGAlcycuXG4iCisKKyN+IG1zZ2lkICJJbnRlcm5hbCBlcnJvciwgY29tcHJlc3NfdHlwZSBgJWknIHVua25vd24hIgorI34gbXNnc3RyICJGYWxsdSBpbnRlcm51LCDCoXRyaWJhIGRlIGNvbXByZXNpw7NuIMKrJWnCuyBkZXNjb25vY8OtYSEiCisKKyN+IG1zZ2lkICItLWpvaW4gcmVxdWlyZXMgb25lIG9yIG1vcmUgcGFydCBmaWxlIGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiLS1qb2luIHJlcXVpZXIgw7puIG8gbcOhcyBmaWNoZXJvcyBwYXJ0ZSBjb21vIGFyZ3VtZW50b3MiCisKKyN+IG1zZ2lkICItLWxpc3RxIGRvZXMgbm90IHRha2UgYW55IGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiLS1saXN0cSBudW4gdG9tYSBkZW5nw7puIGFyZ3VtZW50dSIKKworI34gbXNnaWQgIiIKKyN+ICJcbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDE5OTYgS2ltLU1pbmggS2FwbGFuLiIKKyN+IG1zZ3N0ciAiIgorI34gIlxuIgorI34gIkNvcHlyaWdodCAoQykgMTk5NiBLaW0tTWluaCBLYXBsYW4uIgorCisjfiBtc2dpZCAiIgorI34gIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSBbLS1dIFs8ZGlybmFtZT5dXG4iCisjfiAiXG4iCisjfiAiT3B0aW9uczpcbiIKKyN+ICIgIC0tdW5zYWZlICAgICBzZXQgc29tZSBhZGRpdGlvbmFsIHBvc3NpYmx5IHVzZWZ1bCBvcHRpb25zLlxuIgorI34gIiAgICAgICAgICAgICAgIHdhcm5pbmc6IHRoaXMgb3B0aW9uIG1heSBnYXJibGUgYW4gb3RoZXJ3aXNlIGNvcnJlY3QgIgorI34gImZpbGUuXG4iCisjfiAiICAtLWhlbHAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyN+ICIgIC0tdmVyc2lvbiAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorI34gbXNnc3RyICIiCisjfiAiVXN1OiAlcyBbPG9wY2nDs24+IC4uLl0gWy0tXSBbPGRpcmV1dG9yaXU+XVxuIgorI34gIlxuIgorI34gIk9wY2lvbmVzOlxuIgorI34gIiAgLS11bnNhZmUgICAgYWZpdGEgZGVsbGVzIG9wY2lvbmVzIHNlaXF1ZSBhZmF5YWRpY2VzLlxuIgorI34gIiAgICAgICAgICAgICAgYXZpc3U6IGVzdGEgb3BjacOzbiBwdWUgY29ycm9tcGVyIHVuIGZpY2hlcnUgY29ycmV1dHUuXG4iCisjfiAiICAtLWhlbHAgICAgICBhbXVlc2EgZXN0aSB0ZXN0dSBkJ2FpZGEuXG4iCisjfiAiICAtLXZlcnNpb24gICBhbXVlc2EgbGEgdmVyc2nDs24uXG4iCisKKyN+IG1zZ2lkICJ0cnkgZGVsZXRpbmcgJXMiCisjfiBtc2dzdHIgImludGVudGEgZGVzYW5pY2lhciAlcyIKKworI34gbXNnaWQgImZhaWxlZCB0byBpbnN0YWxsICVzOyBpdCB3aWxsIGJlIGxlZnQgYXMgJXM6ICVzIgorI34gbXNnc3RyICJudW4gc2UgcHVlZGUgaW5zdGFsYXIgYCVzJzsgZGV4YXLDoXNlIGNvbW8gJXM6ICVzIgorCisjfiBtc2dpZCAiJXM6IHVuYWJsZSB0byB1bmxvY2sgJXM6ICVzIgorI34gbXNnc3RyICIlczogZmFsbHUgYWwgZGVzYmxvcXVlYXIgJXM6ICVzIgorCisjfiBtc2dpZCAiJXMgLSBzdGF0dXMgaXMgJXMuIgorI34gbXNnc3RyICIlcyAtIGwnZXN0w6F1IHllICVzLiIKKworI34gbXNnaWQgIiBsaW5rIHVucmVhZGFibGUgLSAlcyIKKyN+IG1zZ3N0ciAiIG51biBzZSBwdWVkZSBsbGVlciBsJ2VubGxheiAtICVzIgorCisjfiBtc2dpZCAiIgorI34gIndhcm5pbmc6ICVzIGlzIHN1cHBvc2VkIHRvIGJlIGEgc3ltbGluayB0byAlcywgXG4iCisjfiAib3Igbm9uZXhpc3RlbnQ7IGhvd2V2ZXIsIHJlYWRsaW5rIGZhaWxlZDogJXMiCisjfiBtc2dzdHIgIiIKKyN+ICJhdmlzdTogc3Vww7Nuc2UgcXVlICVzIHllIHVuIGVubGxheiBzaW1iw7NsaWN1IGEgJXMsXG4iCisjfiAibyBudW4gZXhpc3RlOyBwb3IgZW1iYXJndSBmYWxsw7MgwqtyZWFkbGlua8K7OiAlcyIKKworI34gbXNnaWQgIkxlYXZpbmcgJXMgKCVzKSBwb2ludGluZyB0byAlcy4iCisjfiBtc2dzdHIgIkRleGFuZG8gJXMgKCVzKSBwYSBxdSdhcHVudGUgYSAlcy4iCisKKyN+IG1zZ2lkICJVcGRhdGluZyAlcyAoJXMpIHRvIHBvaW50IHRvICVzLiIKKyN+IG1zZ3N0ciAiQW5vdmFuZG8gJXMgKCVzKSBwYSBxdSdhcHVudGUgYSAlcy4iCisKKyN+IG1zZ2lkICJSZW1vdmluZyAlcyAoJXMpLCBub3QgYXBwcm9wcmlhdGUgd2l0aCAlcy4iCisjfiBtc2dzdHIgIkRlc2FuaWNpYW5kbyAlcyAoJXMpLCBudW4geWUgYWZheWFkaXp1IHBhICVzLiIKKworI34gbXNnaWQgIiIKKyN+ICJDaGVja2luZyBhdmFpbGFibGUgdmVyc2lvbnMgb2YgJXMsIHVwZGF0aW5nIGxpbmtzIGluICVzIC4uLlxuIgorI34gIihZb3UgbWF5IG1vZGlmeSB0aGUgc3ltbGlua3MgdGhlcmUgeW91cnNlbGYgaWYgZGVzaXJlZCAtIHNlZSBgbWFuIGxuJy4pIgorI34gbXNnc3RyICIiCisjfiAiQ29tcHJvYmFuZG8gbGVzIHZlcnNpb25lcyBkaXNwb25pYmxlcyBwYSAlcywgYW5vdmFuZG8gZW5sbGFjZXMgZW4gJXMgLi4uXG4iCisjfiAiKFB1ZWRlcyBjYW11ZGFyIGxvcyBlbmxsYWNlcyBlbGzDrSBzaSB0ZSBwZXRhIC0gY29uc3VsdGEgwqttYW4gbG7Cuy4pIgorCisjfiBtc2dpZCAic2xhdmUgbGluayBuYW1lICVzIGR1cGxpY2F0ZWQiCisjfiBtc2dzdHIgImVsIG5vbWUgZGVsIGVubGxheiBlc2NsYXZ1ICVzIHRhIGR1cGxpY8OhdSIKKworI34gbXNnaWQgIlJlY292ZXJpbmcgZnJvbSBwcmV2aW91cyBmYWlsZWQgdXBkYXRlIG9mICVzIC4uLiIKKyN+IG1zZ3N0ciAiUmVzdGF1cmFuZG8gZCd1biBhbm92YW1pZW50dSBwcmV2aXUgcXVlIGZhbGzDsyBkZSAlcyAuLi4iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gb3BlbiAlcyBmb3Igd3JpdGU6ICVzIgorI34gbXNnc3RyICJudW4gc2UgcHVlZGUgYWJyaXIgZWwgZmljaGVydSAlcyBwYSBlc2NyaXR1cmE6ICVzIgorCisjfiBtc2dpZCAiTGFzdCBwYWNrYWdlIHByb3ZpZGluZyAlcyAoJXMpIHJlbW92ZWQsIGRlbGV0aW5nIGl0LiIKKyN+IG1zZ3N0ciAiTCfDumx0aW11IHBhcXVldGUgYXB1cnLDrXUgZGVzYW5pY2nDs3NlICVzICglcyksIGRlc2FuaWNpw6FuZG9sdS4iCisKKyN+IG1zZ2lkICIiCisjfiAiVGhlcmUgaXMgb25seSAxIHByb2dyYW0gd2hpY2ggcHJvdmlkZXMgJXNcbiIKKyN+ICIoJXMpLiBOb3RoaW5nIHRvIGNvbmZpZ3VyZS5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIlPDs2xvIGhhaSB1biBwcm9ncmFtYSBxdSdhcHVycmEgJXNcbiIKKyN+ICIoJXMpLiBOdW4gc2UgY29uZmlndXJhcsOhIG5hZGEuXG4iCisKKyN+IG1zZ2lkICIiCisjfiAiVGhlcmUgYXJlICVzIGFsdGVybmF0aXZlcyB3aGljaCBwcm92aWRlIGAlcycuXG4iCisjfiAiXG4iCisjfiAiICBTZWxlY3Rpb24gICAgQWx0ZXJuYXRpdmVcbiIKKyN+ICItLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIgorI34gbXNnc3RyICIiCisjfiAiSGFpICVzIGFsdGVybmF0aXZlcyBxdSdhcHVycmVuIGAlcycuXG4iCisjfiAiXG4iCisjfiAiRXNjb3lldGEgQWx0ZXJuYXRpdmFcbiIKKyN+ICItLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIgorCisjfiBtc2dpZCAiZXJyb3Igb3IgZW9mIHJlYWRpbmcgJXMgZm9yICVzICglcykiCisjfiBtc2dzdHIgImVycm9yIG8gZmluIGRlIGZpY2hlcnUgYWwgbGxlZXIgJXMgcGEgJXMgKCVzKSIKKworI34gbXNnaWQgIm1pc3NpbmcgbmV3bGluZSBhZnRlciAlcyIKKyN+IG1zZ3N0ciAiZmFsdGEgdW5hIG51ZXZhIGxsaW5pYSB0cmVzICVzIgorCisjfiBtc2dpZCAiU2VyaW91cyBwcm9ibGVtOiAlcyIKKyN+IG1zZ3N0ciAiUHJvYmxlbWEgZ3JhdmU6ICVzIgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9wby9ib2xkcXVvdC5zZWQgYi9kcGtnLTEuMTYuMS4xL3BvL2JvbGRxdW90LnNlZApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40YjkzN2FhCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9wby9ib2xkcXVvdC5zZWQKQEAgLTAsMCArMSwxMCBAQAorcy8iXChbXiJdKlwpIi/igJxcMeKAnS9nCitzL2BcKFteYCddKlwpJy/igJhcMeKAmS9nCitzLyAnXChbXmAnXSpcKScgLyDigJhcMeKAmSAvZworcy8gJ1woW15gJ10qXCknJC8g4oCYXDHigJkvZworcy9eJ1woW15gJ10qXCknIC/igJhcMeKAmSAvZworcy/igJzigJ0vIiIvZworcy/igJwv4oCcG1sxbS9nCitzL+KAnS8bWzBt4oCdL2cKK3Mv4oCYL+KAmBtbMW0vZworcy/igJkvG1swbeKAmS9nCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3BvL2JzLmdtbyBiL2Rwa2ctMS4xNi4xLjEvcG8vYnMuZ21vCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjdiMTk3YTYKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3BvL2JzLmdtbwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3BvL2JzLnBvIGIvZHBrZy0xLjE2LjEuMS9wby9icy5wbwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43YzBmMmI5Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9wby9icy5wbwpAQCAtMCwwICsxLDU1MDEgQEAKKyMgU09NRSBERVNDUklQVElWRSBUSVRMRS4KKyMgQ29weXJpZ2h0IChDKSBZRUFSIFRIRSBQQUNLQUdFJ1MgQ09QWVJJR0hUIEhPTERFUgorIyBUaGlzIGZpbGUgaXMgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIHNhbWUgbGljZW5zZSBhcyB0aGUgUEFDS0FHRSBwYWNrYWdlLgorIyBGSVJTVCBBVVRIT1IgPEVNQUlMQEFERFJFU1M+LCBZRUFSLgorIworbXNnaWQgIiIKK21zZ3N0ciAiIgorIlByb2plY3QtSWQtVmVyc2lvbjogZHBrZyAxLjEzXG4iCisiUmVwb3J0LU1zZ2lkLUJ1Z3MtVG86IGRlYmlhbi1kcGtnQGxpc3RzLmRlYmlhbi5vcmdcbiIKKyJQT1QtQ3JlYXRpb24tRGF0ZTogMjAxMS0xMC0xNCAwNzoxMSswMjAwXG4iCisiUE8tUmV2aXNpb24tRGF0ZTogMjAwOS0xMS0xNCAxNzo0NCswMTAwXG4iCisiTGFzdC1UcmFuc2xhdG9yOiBTYWZpciDFoGXEh2Vyb3ZpxIcgPHNhcHBoaXJlQGxpbnV4Lm9yZy5iYT5cbiIKKyJMYW5ndWFnZS1UZWFtOiBCb3NuaWFuIDxsb2thbEBsaW51eC5vcmcuYmE+XG4iCisiTGFuZ3VhZ2U6IGJzXG4iCisiTUlNRS1WZXJzaW9uOiAxLjBcbiIKKyJDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9VVRGLThcbiIKKyJDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiA4Yml0XG4iCisKKyM6IGxpYi9kcGtnL2FyLmM6NjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgJyVjJyBpbiBhcmNoaXZlICclLjI1MHMnIG1lbWJlciAnJS4xNnMnIHNpemUiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvYXIuYzo4MSBsaWIvZHBrZy9hci5jOjk3IGxpYi9kcGtnL2FyLmM6MTA4IGxpYi9kcGtnL2FyLmM6MTEyCisjOiBsaWIvZHBrZy9hci5jOjEzNCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE1NAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgZmlsZSAnJXMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2FyLmM6OTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZ2VuZXJhdGVkIGNvcnJ1cHQgYXIgaGVhZGVyIGZvciAnJXMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2FyLmM6MTIzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBmc3RhdCBhciBtZW1iZXIgZmlsZSAoJXMpIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2FyLmM6MTMwCisjLCBjLWZvcm1hdAorbXNnaWQgImFyIG1lbWJlciBmaWxlICglcykiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvYnVmZmVyLmM6MTk2CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZWFkIG9uIGJ1ZmZlciBjb3B5IGZvciAlcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9idWZmZXIuYzoyMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIGluIHdyaXRlIG9uIGJ1ZmZlciBjb3B5IGZvciAlcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9idWZmZXIuYzoyMjAKKyMsIGMtZm9ybWF0Cittc2dpZCAic2hvcnQgcmVhZCBvbiBidWZmZXIgY29weSBmb3IgJXMiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvYnVmZmVyLmM6Mjg4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBzZWVrICVzIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2NvbW1hbmQuYzoxNzggbGliL2Rwa2cvY29tbWFuZC5jOjIwNCBzcmMvaGVscC5jOjYyMQorIzogc3JjL3Byb2Nlc3NhcmMuYzo5OCBzcmMvcHJvY2Vzc2FyYy5jOjEzOCBzcmMvcHJvY2Vzc2FyYy5jOjQzMgorIzogc3JjL3Byb2Nlc3NhcmMuYzo4MzkgZHBrZy1kZWIvYnVpbGQuYzo0NTkgZHBrZy1kZWIvYnVpbGQuYzo1MzgKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTYxIGRwa2ctZGViL2V4dHJhY3QuYzozMTcgZHBrZy1kZWIvaW5mby5jOjY1CisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6NjkgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQ1NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZXhlY3V0ZSAlcyAoJXMpIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGRlY29tcHJlc3Npb24iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzo4OQorIywgYy1mb3JtYXQKK21zZ2lkICIlczogY29tcHJlc3Npb24iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yIGJpbmRpbmcgaW5wdXQgdG8gZ3ppcCBzdHJlYW0iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgcmVhZCBlcnJvcjogJyVzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjEzMiBsaWIvZHBrZy9jb21wcmVzcy5jOjEzNgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCB3cml0ZSBlcnJvciIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE1MAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZXJyb3IgYmluZGluZyBvdXRwdXQgdG8gZ3ppcCBzdHJlYW0iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgcmVhZCBlcnJvciIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE2NworIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCB3cml0ZSBlcnJvcjogJyVzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE4MAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCB3cml0ZSBlcnJvcjogJXMiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyMjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yIGJpbmRpbmcgaW5wdXQgdG8gYnppcDIgc3RyZWFtIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiByZWFkIGVycm9yOiAnJXMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjQwIGxpYi9kcGtnL2NvbXByZXNzLmM6MjQ0IGxpYi9kcGtnL2NvbXByZXNzLmM6Mjk0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiB3cml0ZSBlcnJvciIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI1OAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZXJyb3IgYmluZGluZyBvdXRwdXQgdG8gYnppcDIgc3RyZWFtIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjY1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiByZWFkIGVycm9yIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6Mjc1IGxpYi9kcGtnL2NvbXByZXNzLmM6Mjg2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiB3cml0ZSBlcnJvcjogJyVzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI4MgorbXNnaWQgInVuZXhwZWN0ZWQgYnppcDIgZXJyb3IiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzo2OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidXBkYXRlcyBkaXJlY3RvcnkgY29udGFpbnMgZmlsZSBgJS4yNTBzJyB3aG9zZSBuYW1lIGlzIHRvbyBsb25nIChsZW5ndGg9JWQsICIKKyJtYXg9JWQpIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVwZGF0ZXMgZGlyZWN0b3J5IGNvbnRhaW5zIGZpbGVzIHdpdGggZGlmZmVyZW50IGxlbmd0aCBuYW1lcyAoYm90aCAlZCBhbmQgJWQpIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHNjYW4gdXBkYXRlcyBkaXJlY3RvcnkgYCUuMjU1cyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlbW92ZSBpbmNvcnBvcmF0ZWQgdXBkYXRlIGZpbGUgJS4yNTVzIgorbXNnc3RyICIiCisKKyMgIE5vdyB0aGF0IHdlIGhhdmUgdmVyaWZpZWQgZXZlcnl0aGluZyBpdHMgdGltZSB0byBhY3R1YWxseQorIyAgKiBidWlsZCBzb21ldGhpbmcuIExldHMgc3RhcnQgYnkgbWFraW5nIHRoZSBhci13cmFwcGVyLgorIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxMjEgZHBrZy1kZWIvYnVpbGQuYzo0NDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBgJS4yNTVzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEyNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmlsbCAlLjI1MHMgd2l0aCBwYWRkaW5nIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTI3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCAlLjI1MHMgYWZ0ZXIgcGFkZGluZyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEyOQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2VlayB0byBzdGFydCBvZiAlLjI1MHMgYWZ0ZXIgcGFkZGluZyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjE5NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBsb2NrIGZpbGUgJXMgZm9yIHRlc3RpbmciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyMjEKK21zZ2lkICJ1bmFibGUgdG8gb3Blbi9jcmVhdGUgc3RhdHVzIGRhdGFiYXNlIGxvY2tmaWxlIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjMxCittc2dpZCAieW91IGRvIG5vdCBoYXZlIHBlcm1pc3Npb24gdG8gbG9jayB0aGUgZHBrZyBzdGF0dXMgZGF0YWJhc2UiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyMzMKK21zZ2lkICJkcGtnIHN0YXR1cyBkYXRhYmFzZSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjI1NworbXNnaWQgInJlcXVlc3RlZCBvcGVyYXRpb24gcmVxdWlyZXMgc3VwZXJ1c2VyIHByaXZpbGVnZSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjI2MgorbXNnaWQgInVuYWJsZSB0byBhY2Nlc3MgZHBrZyBzdGF0dXMgYXJlYSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjI2NAorbXNnaWQgIm9wZXJhdGlvbiByZXF1aXJlcyByZWFkL3dyaXRlIGFjY2VzcyB0byBkcGtnIHN0YXR1cyBhcmVhIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzA5CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZW1vdmUgbXkgb3duIHVwZGF0ZSBmaWxlICUuMjU1cyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM0NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNDkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzUxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB0cnVuY2F0ZSBmb3IgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZzeW5jIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzU1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM1OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9kaXIuYzo1MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZ2V0IGZpbGUgZGVzY3JpcHRvciBmb3IgZGlyZWN0b3J5ICclcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZGlyLmM6NTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgZGlyZWN0b3J5ICclcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZGlyLmM6NjkgbGliL2Rwa2cvZGlyLmM6MTMxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2Rpci5jOjEwOSBzcmMvZGl2ZXJ0Y21kLmM6MjE4IGRwa2ctc3BsaXQvc3BsaXQuYzoyMDIKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjkzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIGZpbGUgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9kaXIuYzoxMTEgc3JjL2RpdmVydGNtZC5jOjIzMiBzcmMvZGl2ZXJ0Y21kLmM6Mzc3CisjOiBzcmMvc3RhdGNtZC5jOjIxNyBkcGtnLWRlYi9idWlsZC5jOjU5OCBkcGtnLXNwbGl0L2pvaW4uYzo2NQorIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE4NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTQwNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBmaWxlICclcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZGlyLmM6MTEzIHNyYy9kaXZlcnRjbWQuYzoyMzQgc3JjL2RpdmVydGNtZC5jOjM3OQorIzogZHBrZy1kZWIvYnVpbGQuYzo2MDAgZHBrZy1zcGxpdC9qb2luLmM6NjcgZHBrZy1zcGxpdC9xdWV1ZS5jOjE4OQorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzMTQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE0MDgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIGZpbGUgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6Mzk2CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB3cml0ZSBkZXRhaWxzIG9mIGAlLjUwcycgdG8gYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQyMworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiAnJXMnIGZvciB3cml0aW5nICVzIGRhdGFiYXNlIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0MjYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNldCBidWZmZXJpbmcgb24gJXMgZGF0YWJhc2UgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDM4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB3cml0ZSAlcyBkYXRhYmFzZSByZWNvcmQgYWJvdXQgJyUuNTBzJyB0byAnJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDQ2CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBmbHVzaCAlcyBkYXRhYmFzZSB0byAnJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDQ4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBmc3luYyAlcyBkYXRhYmFzZSB0byAnJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDUxCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjbG9zZSAnJS4yNTBzJyBhZnRlciB3cml0aW5nICVzIGRhdGFiYXNlIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGxpbmsgJyUuMjUwcycgdG8gJyUuMjUwcycgZm9yIGJhY2t1cCBvZiAlcyBkYXRhYmFzZSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDU4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBpbnN0YWxsICclLjI1MHMnIGFzICclLjI1MHMnIGNvbnRhaW5pbmcgJXMgZGF0YWJhc2UiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjk0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogdW5yZWNvdmVyYWJsZSBmYXRhbCBlcnJvciwgYWJvcnRpbmc6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjEwMAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IG91dHNpZGUgZXJyb3IgY29udGV4dCwgYWJvcnRpbmc6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjEyMAorbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBlcnJvciBjb250ZXh0IgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoxODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBlcnJvciB3aGlsZSBjbGVhbmluZyB1cDpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MjAxCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB0b28gbWFueSBuZXN0ZWQgZXJyb3JzIGR1cmluZyBlcnJvciByZWNvdmVyeSEhXG4iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjI2OCBsaWIvZHBrZy9laGFuZGxlLmM6MzA3Cittc2dpZCAib3V0IG9mIG1lbW9yeSBmb3IgbmV3IGNsZWFudXAgZW50cnkiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjI5MQorbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBjbGVhbnVwIGVudHJ5IHdpdGggbWFueSBhcmd1bWVudHMiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjM1MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yOiAlc1xuIgorbXNnc3RyICJ1cG96b3JlbmplIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MzkzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogd2FybmluZzogJXNcbiIKK21zZ3N0ciAidXBvem9yZW5qZSIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjQxNgorIywgYy1mb3JtYXQKK21zZ2lkICIlczolczolZDogaW50ZXJuYWwgZXJyb3I6ICVzXG4iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgaXMgbWlzc2luZyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0OQorIywgYy1mb3JtYXQKK21zZ2lkICInJS41MHMnIGlzIG5vdCBhbGxvd2VkIGZvciAlcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo3MworIywgYy1mb3JtYXQKK21zZ2lkICJqdW5rIGFmdGVyICVzIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjg3CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgcGFja2FnZSBuYW1lICglLjI1MHMpIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJlbXB0eSBmaWxlIGRldGFpbHMgZmllbGQgYCVzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBkZXRhaWxzIGZpZWxkIGAlcycgbm90IGFsbG93ZWQgaW4gc3RhdHVzIGZpbGUiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTE4CisjLCBjLWZvcm1hdAorbXNnaWQgInRvbyBtYW55IHZhbHVlcyBpbiBmaWxlIGRldGFpbHMgZmllbGQgYCVzJyAoY29tcGFyZWQgdG8gb3RoZXJzKSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAidG9vIGZldyB2YWx1ZXMgaW4gZmlsZSBkZXRhaWxzIGZpZWxkIGAlcycgKGNvbXBhcmVkIHRvIG90aGVycykiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTU0Cittc2dpZCAieWVzL25vIGluIGJvb2xlYW4gZmllbGQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTc0Cittc2dpZCAid29yZCBpbiBgcHJpb3JpdHknIGZpZWxkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE4NgorbXNnaWQgInZhbHVlIGZvciBgc3RhdHVzJyBmaWVsZCBub3QgYWxsb3dlZCBpbiB0aGlzIGNvbnRleHQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTkxCittc2dpZCAiZmlyc3QgKHdhbnQpIHdvcmQgaW4gYHN0YXR1cycgZmllbGQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTk0Cittc2dpZCAic2Vjb25kIChlcnJvcikgd29yZCBpbiBgc3RhdHVzJyBmaWVsZCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxOTcKK21zZ2lkICJ0aGlyZCAoc3RhdHVzKSB3b3JkIGluIGBzdGF0dXMnIGZpZWxkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjIwNworIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBpbiBWZXJzaW9uIHN0cmluZyAnJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyMTgKK21zZ2lkICJvYnNvbGV0ZSBgUmV2aXNpb24nIG9yIGBQYWNrYWdlLVJldmlzaW9uJyBmaWVsZCB1c2VkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjIzNQorbXNnaWQgInZhbHVlIGZvciBgY29uZmlnLXZlcnNpb24nIGZpZWxkIG5vdCBhbGxvd2VkIGluIHRoaXMgY29udGV4dCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyNDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgaW4gQ29uZmlnLVZlcnNpb24gc3RyaW5nICclLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjI2NgorIywgYy1mb3JtYXQKK21zZ2lkICJ2YWx1ZSBmb3IgYGNvbmZmaWxlcycgaGFzIG1hbGZvcm1hdHRlZCBsaW5lIGAlLipzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyODcKKyMsIGMtZm9ybWF0Cittc2dpZCAidmFsdWUgZm9yIGBjb25mZmlsZXMnIGhhcyBsaW5lIHN0YXJ0aW5nIHdpdGggbm9uLXNwYWNlIGAlYyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MzA0Cittc2dpZCAicm9vdCBvciBudWxsIGRpcmVjdG9yeSBpcyBsaXN0ZWQgYXMgYSBjb25mZmlsZSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzozNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIG1pc3NpbmcgcGFja2FnZSBuYW1lLCBvciBnYXJiYWdlIHdoZXJlIHBhY2thZ2UgbmFtZSBleHBlY3RlZCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzozNzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBmaWVsZCwgaW52YWxpZCBwYWNrYWdlIG5hbWUgYCUuMjU1cyc6ICVzIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQwNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOlxuIgorIiBiYWQgdmVyc2lvbiByZWxhdGlvbnNoaXAgJWMlYyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgYCVjJyBpcyBvYnNvbGV0ZSwgdXNlIGAlYz0nIG9yIGAlYyVjJyBpbnN0ZWFkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQyMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOlxuIgorIiBpbXBsaWNpdCBleGFjdCBtYXRjaCBvbiB2ZXJzaW9uIG51bWJlciwgc3VnZ2VzdCB1c2luZyBgPScgaW5zdGVhZCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MzAKK21zZ2lkICJPbmx5IGV4YWN0IHZlcnNpb25zIG1heSBiZSB1c2VkIGZvciBQcm92aWRlcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgdmVyc2lvbiB2YWx1ZSBzdGFydHMgd2l0aCBub24tYWxwaGFudW1lcmljLCBzdWdnZXN0IGFkZGluZyBhIHNwYWNlIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ1MSBsaWIvZHBrZy9maWVsZHMuYzo0NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOiB2ZXJzaW9uIGNvbnRhaW5zIGAlYyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDU5CisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzogdmVyc2lvbiB1bnRlcm1pbmF0ZWQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDY1CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgZmllbGQsIHJlZmVyZW5jZSB0byAnJS4yNTVzJzogZXJyb3IgaW4gdmVyc2lvbiIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBmaWVsZCwgc3ludGF4IGVycm9yIGFmdGVyIHJlZmVyZW5jZSB0byBwYWNrYWdlIGAlLjI1NXMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ4MgorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZXMgKGB8Jykgbm90IGFsbG93ZWQgaW4gJXMgZmllbGQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTM2Cittc2dpZCAidmFsdWUgZm9yIGB0cmlnZ2Vycy1wZW5kaW5nJyBmaWVsZCBub3QgYWxsb3dlZCBpbiB0aGlzIGNvbnRleHQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTQzCisjLCBjLWZvcm1hdAorbXNnaWQgImlsbGVnYWwgcGVuZGluZyB0cmlnZ2VyIG5hbWUgYCUuMjU1cyc6ICVzIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU0NworIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgcGVuZGluZyB0cmlnZ2VyIGAlLjI1NXMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU2MQorbXNnaWQgInZhbHVlIGZvciBgdHJpZ2dlcnMtYXdhaXRlZCcgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU2OAorIywgYy1mb3JtYXQKK21zZ2lkICJpbGxlZ2FsIHBhY2thZ2UgbmFtZSBpbiBhd2FpdGVkIHRyaWdnZXIgYCUuMjU1cyc6ICVzIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU3NAorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgYXdhaXRlZCB0cmlnZ2VyIHBhY2thZ2UgYCUuMjU1cyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmlsZS5jOjUxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IHNvdXJjZSBmaWxlICclLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzo1NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hhbmdlIG93bmVyc2hpcCBvZiB0YXJnZXQgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWxlLmM6NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNldCBtb2RlIG9mIHRhcmdldCBmaWxlICclLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzo4NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gdW5sb2NrICVzIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzoxMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoZWNrIGZpbGUgJyVzJyBsb2NrIHN0YXR1cyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWxlLmM6MTQ2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGlzIGxvY2tlZCBieSBhbm90aGVyIHByb2Nlc3MiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmlsZS5jOjE0OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gbG9jayAlcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9sb2cuYzo1MworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBvcGVuIGxvZyBgJXMnOiAlc1xuIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2xvZy5jOjg1Cittc2dpZCAiPHBhY2thZ2Ugc3RhdHVzIGFuZCBwcm9ncmVzcyBmaWxlIGRlc2NyaXB0b3I+IgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2xvZy5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgdG8gc3RhdHVzIGZkICVkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL21saWIuYzo0NCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYyCisjLCBjLWZvcm1hdAorbXNnaWQgIm1hbGxvYyBmYWlsZWQgKCV6dSBieXRlcykiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvbWxpYi5jOjU4CisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWxsb2MgZmFpbGVkICglenUgYnl0ZXMpIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL21saWIuYzo3MiBsaWIvZHBrZy9tbGliLmM6OTAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI3NworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjMzNCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTEwNworbXNnaWQgImZhaWxlZCB0byBhbGxvY2F0ZSBtZW1vcnkiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZHVwIGZvciBzdGQlcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTAzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBkdXAgZm9yIGZkICVkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMDkKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHBpcGUiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvbWxpYi5jOjExNworIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciB3cml0aW5nIHRvICclcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBmaWxlZGVzY3JpcHRvciBmbGFncyBmb3IgJS4yNTBzIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMjYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNldCBjbG9zZS1vbi1leGVjIGZsYWcgZm9yICUuMjUwcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6NjMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImNvbmZpZ3VyYXRpb24gZXJyb3I6ICVzOiVkOiAlcyIKK21zZ3N0ciAiIgorIlxuIgorIktvbmZpZ3VyYWNpanNrYSBkYXRvdGVrYSBgJXMnIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gY29uZmlndXJhdGlvbiBmaWxlICclLjI1NXMnIGZvciByZWFkaW5nOiAlcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYmFsYW5jZWQgcXVvdGVzIGluICclcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjExNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiAnJXMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBuZWVkcyBhIHZhbHVlIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBkb2VzIG5vdCB0YWtlIGEgdmFsdWUiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjEzMworIywgYy1mb3JtYXQKK21zZ2lkICJyZWFkIGVycm9yIGluIGNvbmZpZ3VyYXRpb24gZmlsZSBgJS4yNTVzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgY29uZmlndXJhdGlvbiBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxNzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igb3BlbmluZyBjb25maWd1cmF0aW9uIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gLS0lcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgb3B0aW9uIHRha2VzIGEgdmFsdWUiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjIzNworIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG9wdGlvbiBkb2VzIG5vdCB0YWtlIGEgdmFsdWUiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI0NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiAtJWMiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI1MAorIywgYy1mb3JtYXQKK21zZ2lkICItJWMgb3B0aW9uIHRha2VzIGEgdmFsdWUiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI1OAorIywgYy1mb3JtYXQKK21zZ2lkICItJWMgb3B0aW9uIGRvZXMgbm90IHRha2UgYSB2YWx1ZSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjcxCisjLCBjLWZvcm1hdAorbXNnaWQgIm9ic29sZXRlIG9wdGlvbiAnLS0lcydcbiIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6Mjg3CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZsaWN0aW5nIGFjdGlvbnMgLSVjICgtLSVzKSBhbmQgLSVjICgtLSVzKSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgdmFsdWUgZm9yIGAlcycgZmllbGQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoxNDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidXNlci1kZWZpbmVkIGZpZWxkIG5hbWUgYCUuKnMnIHRvbyBzaG9ydCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgdmFsdWUgZm9yIHVzZXItZGVmaW5lZCBmaWVsZCBgJS4qcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMDcKK21zZ2lkICJDb25maWd1cmVkLVZlcnNpb24gZm9yIHBhY2thZ2Ugd2l0aCBpbmFwcHJvcHJpYXRlIFN0YXR1cyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjIxOAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGhhcyBzdGF0dXMgJXMgYnV0IHRyaWdnZXJzIGFyZSBhd2FpdGVkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjIyCittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzIHRyaWdnZXJzLWF3YWl0ZWQgYnV0IG5vIHRyaWdnZXJzIGF3YWl0ZWQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzICVzIGJ1dCB0cmlnZ2VycyBhcmUgcGVuZGluZyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjIzMgorbXNnaWQgInBhY2thZ2UgaGFzIHN0YXR1cyB0cmlnZ2Vycy1wZW5kaW5nIGJ1dCBubyB0cmlnZ2VycyBwZW5kaW5nIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjQyCittc2dpZCAiUGFja2FnZSB3aGljaCBpbiBzdGF0ZSBub3QtaW5zdGFsbGVkIGhhcyBjb25mZmlsZXMsIGZvcmdldHRpbmcgdGhlbSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjMzNQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiBwYWNrYWdlIGluZm8gZmlsZSBgJS4yNTVzJyBmb3IgcmVhZGluZyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjM0MQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW4ndCBzdGF0IHBhY2thZ2UgaW5mbyBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzQ3CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbid0IG1tYXAgcGFja2FnZSBpbmZvIGZpbGUgYCUuMjU1cyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVhZGluZyBwYWNrYWdlIGluZm8gZmlsZSAnJS4yNTVzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjM2MworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2xvc2UgYWZ0ZXIgcmVhZDogYCUuMjU1cyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiRU9GIGFmdGVyIGZpZWxkIG5hbWUgYCUuKnMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDA3CisjLCBjLWZvcm1hdAorbXNnaWQgIm5ld2xpbmUgaW4gZmllbGQgbmFtZSBgJS4qcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiTVNET1MgRU9GICheWikgaW4gZmllbGQgbmFtZSBgJS4qcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmllbGQgbmFtZSBgJS4qcycgbXVzdCBiZSBmb2xsb3dlZCBieSBjb2xvbiIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQyNQorIywgYy1mb3JtYXQKK21zZ2lkICJFT0YgYmVmb3JlIHZhbHVlIG9mIGZpZWxkIGAlLipzJyAobWlzc2luZyBmaW5hbCBuZXdsaW5lKSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQyOQorIywgYy1mb3JtYXQKK21zZ2lkICJNU0RPUyBFT0YgY2hhciBpbiB2YWx1ZSBvZiBmaWVsZCBgJS4qcycgKG1pc3NpbmcgbmV3bGluZT8pIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDQwCisjLCBjLWZvcm1hdAorbXNnaWQgImJsYW5rIGxpbmUgaW4gdmFsdWUgb2YgZmllbGQgJyUuKnMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDYxCisjLCBjLWZvcm1hdAorbXNnaWQgIkVPRiBkdXJpbmcgdmFsdWUgb2YgZmllbGQgYCUuKnMnIChtaXNzaW5nIGZpbmFsIG5ld2xpbmUpIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NTQ2Cittc2dpZCAic2V2ZXJhbCBwYWNrYWdlIGluZm8gZW50cmllcyBmb3VuZCwgb25seSBvbmUgYWxsb3dlZCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjU3MgorIywgYy1mb3JtYXQKK21zZ2lkICJubyBwYWNrYWdlIGluZm9ybWF0aW9uIGluIGAlLjI1NXMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJwYXJzaW5nIGZpbGUgJyUuMjU1cycgbmVhciBsaW5lICVkIHBhY2thZ2UgJyUuMjU1cyc6XG4iCisiICUuMjU1cyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzo0OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisicGFyc2luZyBmaWxlICclLjI1NXMnIG5lYXIgbGluZSAlZDpcbiIKKyIgJS4yNTVzIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjEyNQorbXNnaWQgIm1heSBub3QgYmUgZW1wdHkgc3RyaW5nIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjEyNworIywgZnV6enkKKyN8IG1zZ2lkICJtdXN0IHN0YXJ0IHdpdGggYW4gYWxwaGFudW1lcmljIgorbXNnaWQgIm11c3Qgc3RhcnQgd2l0aCBhbiBhbHBoYW51bWVyaWMgY2hhcmFjdGVyIgorbXNnc3RyICJtb3JhIHBvxI1pbmphdGkgc2EgYWxmYW51bWVyacSNa2ltIHpuYWtvbSIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MTM2CisjLCBjLWZvcm1hdAorbXNnaWQgImNoYXJhY3RlciBgJWMnIG5vdCBhbGxvd2VkIChvbmx5IGxldHRlcnMsIGRpZ2l0cyBhbmQgY2hhcmFjdGVycyBgJXMnKSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoxNzgKK21zZ2N0eHQgInZlcnNpb24iCittc2dpZCAiPG5vbmU+IgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjIwOQorbXNnaWQgInZlcnNpb24gc3RyaW5nIGlzIGVtcHR5IgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjIyNAorbXNnaWQgInZlcnNpb24gc3RyaW5nIGhhcyBlbWJlZGRlZCBzcGFjZXMiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjMwCittc2dpZCAiZXBvY2ggaW4gdmVyc2lvbiBpcyBub3QgbnVtYmVyIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjIzMgorbXNnaWQgIm5vdGhpbmcgYWZ0ZXIgY29sb24gaW4gdmVyc2lvbiBudW1iZXIiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjQ3Cittc2dpZCAidmVyc2lvbiBudW1iZXIgZG9lcyBub3Qgc3RhcnQgd2l0aCBkaWdpdCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyNTAKKyMsIGZ1enp5Cittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgaW4gdmVyc2lvbiBudW1iZXIiCittc2dzdHIgImJyb2ogdmVyemlqZSIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjU0Cittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgaW4gcmV2aXNpb24gbnVtYmVyIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjI5OSBsaWIvZHBrZy9wYXJzZWhlbHAuYzozMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAibWlzc2luZyAlcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzozMDEgbGliL2Rwa2cvcGFyc2VoZWxwLmM6MzE0CisjLCBjLWZvcm1hdAorbXNnaWQgImVtcHR5IHZhbHVlIGZvciAlcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wa2ctZm9ybWF0LmM6ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgYCVjJyBpbiBmaWVsZCB3aWR0aFxuIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BrZy1mb3JtYXQuYzoxNzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2xvc2luZyBicmFjZSBtaXNzaW5nIGluIGZvcm1hdFxuIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BrZy1zaG93LmM6NDAKK21zZ2lkICIobm8gZGVzY3JpcHRpb24gYXZhaWxhYmxlKSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGlnbm9yZSBzaWduYWwgJXMgYmVmb3JlIHJ1bm5pbmcgJS4yNTBzIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzo2OAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciB1bi1jYXRjaGluZyBzaWduYWwgJXM6ICVzXG4iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjc4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIChzdWJwcm9jZXNzKTogJXNcbiIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6ODkgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQ1NAorbXNnaWQgImZvcmsgZmFpbGVkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMTkKKyMsIGMtZm9ybWF0Cittc2dpZCAic3VicHJvY2VzcyAlcyByZXR1cm5lZCBlcnJvciBleGl0IHN0YXR1cyAlZCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTI4CisjLCBjLWZvcm1hdAorbXNnaWQgInN1YnByb2Nlc3MgJXMgd2FzIGludGVycnVwdGVkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMzAKKyMsIGMtZm9ybWF0Cittc2dpZCAic3VicHJvY2VzcyAlcyB3YXMga2lsbGVkIGJ5IHNpZ25hbCAoJXMpJXMiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEzMgorbXNnaWQgIiwgY29yZSBkdW1wZWQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJzdWJwcm9jZXNzICVzIGZhaWxlZCB3aXRoIHdhaXQgc3RhdHVzIGNvZGUgJWQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjE1MSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NDYxCisjLCBjLWZvcm1hdAorbXNnaWQgIndhaXQgZm9yIHN1YnByb2Nlc3MgJXMgZmFpbGVkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgcGFja2FnZSBuYW1lIGAlLjI1MHMnIGluIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJ1bmNhdGVkIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yIGluIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcycgYXQgY2hhcmFjdGVyIGAlcyclcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4vY3JlYXRlIHRyaWdnZXJzIGxvY2tmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjE0MQorbXNnaWQgInRyaWdnZXJzIGFyZWEiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MTUxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MTY1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MTc5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuL2NyZWF0ZSBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoyMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcmVhZGluZyB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjIyMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MjI4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjIyMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiaW52YWxpZCBvciB1bmtub3duIHN5bnRheCBpbiB0cmlnZ2VyIG5hbWUgYCUuMjUwcycgKGluIHRyaWdnZXIgaW50ZXJlc3RzIGZvciAiCisicGFja2FnZSBgJS4yNTBzJykiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjI2MworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiB0cmlnZ2VyIGludGVyZXN0IGxpc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MjkyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyBzeW50YXggZXJyb3I7IGlsbGVnYWwgcGFja2FnZSBuYW1lIGAlLjI1MHMnOiAiCisiJS4yNTBzIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMyMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzI0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzeW5jIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMzMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozNDAgbGliL2Rwa2cvdHJpZ2xpYi5jOjM0MiBsaWIvZHBrZy90cmlnbGliLmM6NDcyCisjOiBzcmMvcmVtb3ZlLmM6Mjg2IHNyYy9yZW1vdmUuYzozNzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlbW92ZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzYwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzgzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0NTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImR1cGxpY2F0ZSBmaWxlIHRyaWdnZXIgaW50ZXJlc3QgZm9yIGZpbGVuYW1lIGAlLjI1MHMnIGFuZCBwYWNrYWdlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0OTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ5NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDk5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzeW5jIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgJyUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjUwMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTA3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgYXMgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjU0MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjU1MgorIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImZpbGUgdHJpZ2dlcnMgcmVjb3JkIG1lbnRpb25zIGlsbGVnYWwgcGFja2FnZSBuYW1lIGAlLjI1MHMnIChmb3IgaW50ZXJlc3QgaW4gIgorImZpbGUgYCUuMjUwcycpOiAlLjI1MHMiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjY2NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidHJpZ2dlcnMgY2kgZmlsZSBgJS4yNTBzJyBjb250YWlucyBpbGxlZ2FsIHRyaWdnZXIgc3ludGF4IGluIHRyaWdnZXIgbmFtZSBgIgorIiUuMjUwcyc6ICUuMjUwcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Njg0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIHRyaWdnZXJzIGNpIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjY5OQorbXNnaWQgInRyaWdnZXJzIGNpIGZpbGUgY29udGFpbnMgdW5rbm93biBkaXJlY3RpdmUgc3ludGF4IgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo3MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJpZ2dlcnMgY2kgZmlsZSBjb250YWlucyB1bmtub3duIGRpcmVjdGl2ZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Nzc2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdHJpZ2dlcnMgc3RhdGUgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo3NzkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNldCBvd25lcnNoaXAgb2YgdHJpZ2dlcnMgc3RhdGUgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWduYW1lLmM6MzQKK21zZ2lkICJlbXB0eSB0cmlnZ2VyIG5hbWVzIGFyZSBub3QgcGVybWl0dGVkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWduYW1lLmM6MzgKK21zZ2lkICJ0cmlnZ2VyIG5hbWUgY29udGFpbnMgaW52YWxpZCBjaGFyYWN0ZXIiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdXRpbHMuYzo1NgorIywgYy1mb3JtYXQKK21zZ2lkICJyZWFkIGVycm9yIGluIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3V0aWxzLmM6NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmdldHMgZ2F2ZSBhbiBlbXB0eSBzdHJpbmcgZnJvbSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy91dGlscy5jOjYzCisjLCBjLWZvcm1hdAorbXNnaWQgInRvby1sb25nIGxpbmUgb3IgbWlzc2luZyBuZXdsaW5lIGluIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3V0aWxzLmM6NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgcmVhZGluZyBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy92YXJidWYuYzo4MiBsaWIvZHBrZy92YXJidWYuYzo4OAorbXNnaWQgImVycm9yIGZvcm1hdHRpbmcgc3RyaW5nIGludG8gdmFyYnVmIHZhcmlhYmxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjE3OSBzcmMvYXJjaGl2ZXMuYzoyMDAgc3JjL2FyY2hpdmVzLmM6NzI0Cittc2dpZCAiZXJyb3IgcmVhZGluZyBmcm9tIGRwa2ctZGViIHBpcGUiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTk1CisjLCBjLWZvcm1hdAorbXNnaWQgInNraXBwZWQgdW5wYWNraW5nIGZpbGUgJyUuMjU1cycgKHJlcGxhY2VkIG9yIGV4Y2x1ZGVkPykiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MjQ2IHNyYy9hcmNoaXZlcy5jOjI1MAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIHRpbWVzdGFtcHMgb2YgYCUuMjU1cyciCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MjYyCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHNldHRpbmcgb3duZXJzaGlwIG9mIHN5bWxpbmsgYCUuMjU1cyciCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MjY1IHNyYy9hcmNoaXZlcy5jOjczNCBzcmMvc3RhdGNtZC5jOjE2MworIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIG93bmVyc2hpcCBvZiBgJS4yNTVzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoyNjcgc3JjL2FyY2hpdmVzLmM6NzM2IHNyYy9zdGF0Y21kLmM6MTY1CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHNldHRpbmcgcGVybWlzc2lvbnMgb2YgYCUuMjU1cyciCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6Mzk1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBzdGF0IChkZXJlZmVyZW5jZSkgZXhpc3Rpbmcgc3ltbGluayBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo0MTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImZhaWxlZCB0byBzdGF0IChkZXJlZmVyZW5jZSkgcHJvcG9zZWQgbmV3IHN5bWxpbmsgdGFyZ2V0IGAlLjI1MHMnIGZvciAiCisic3ltbGluayBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo0NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInRyeWluZyB0byBvdmVyd3JpdGUgYCUuMjUwcycsIHdoaWNoIGlzIHRoZSBkaXZlcnRlZCB2ZXJzaW9uIG9mIGAiCisiJS4yNTBzJyAocGFja2FnZTogJS4xMDBzKSIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo0ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJ5aW5nIHRvIG92ZXJ3cml0ZSBgJS4yNTBzJywgd2hpY2ggaXMgdGhlIGRpdmVydGVkIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6NTExCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGAlLjI1NXMnICh3aGljaCBJIHdhcyBhYm91dCB0byBpbnN0YWxsKSIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo1MTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVuYWJsZSB0byBjbGVhbiB1cCBtZXNzIHN1cnJvdW5kaW5nIGAlLjI1NXMnIGJlZm9yZSBpbnN0YWxsaW5nIGFub3RoZXIgIgorInZlcnNpb24iCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6NTI1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IHJlc3RvcmVkIGAlLjI1NXMnIGJlZm9yZSBpbnN0YWxsaW5nIGFub3RoZXIgdmVyc2lvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo1NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiYXJjaGl2ZSBjb250YWluZWQgb2JqZWN0IGAlLjI1NXMnIG9mIHVua25vd24gdHlwZSAweCV4IgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjYyNiBzcmMvZGl2ZXJ0Y21kLmM6MTUwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo2ODIKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjIyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjg0CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTQ0MSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTY4MAorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxNjcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNDQKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTI3CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzdGF0IGZpbGUgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVwbGFjaW5nIGZpbGVzIGluIG9sZCBwYWNrYWdlICVzIC4uLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjY0NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiUmVwbGFjZWQgYnkgZmlsZXMgaW4gaW5zdGFsbGVkIHBhY2thZ2UgJXMgLi4uXG4iCittc2dzdHIgIkHFvnVyaXJhbmkgaW5zdGFsaXJhbmkgcGFrZXRpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInRyeWluZyB0byBvdmVyd3JpdGUgZGlyZWN0b3J5ICclLjI1MHMnIGluIHBhY2thZ2UgJS4yNTBzICUuMjUwcyB3aXRoICIKKyJub25kaXJlY3RvcnkiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6NjYxCisjLCBjLWZvcm1hdAorbXNnaWQgInRyeWluZyB0byBvdmVyd3JpdGUgJyUuMjUwcycsIHdoaWNoIGlzIGFsc28gaW4gcGFja2FnZSAlLjI1MHMgJS4yNTBzIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjcxMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGAlLjI1NXMnICh3aGlsZSBwcm9jZXNzaW5nIGAlLjI1NXMnKSIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3MTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFja2VuZCBkcGtnLWRlYiBkdXJpbmcgYCUuMjU1cyciCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6NzQ0IHNyYy9hcmNoaXZlcy5jOjkwOCBzcmMvYXJjaGl2ZXMuYzo5NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZy93cml0aW5nIGAlLjI1NXMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc0OAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBwaXBlIGAlLjI1NXMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc1MyBzcmMvYXJjaGl2ZXMuYzo3NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgZGV2aWNlIGAlLjI1NXMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc3MQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBoYXJkIGxpbmsgYCUuMjU1cyciCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6Nzc3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo1MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgc3ltYm9saWMgbGluayBgJS4yNTVzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgZGlyZWN0b3J5IGAlLjI1NXMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjgyMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gbW92ZSBhc2lkZSBgJS4yNTVzJyB0byBpbnN0YWxsIG5ldyB2ZXJzaW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjgzMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MzIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIGxpbmsgYCUuMjU1cyciCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6ODM0IHNyYy9jb25maWd1cmUuYzo0MjMKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ltYm9saWMgbGluayAnJS4yNTBzJyBzaXplIGhhcyBjaGFuZ2VkIGZyb20gJWpkIHRvICV6ZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG1ha2UgYmFja3VwIHN5bWxpbmsgZm9yIGAlLjI1NXMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjg0MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hvd24gYmFja3VwIHN5bWxpbmsgZm9yIGAlLjI1NXMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjg0NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gbWFrZSBiYWNrdXAgbGluayBvZiBgJS4yNTVzJyBiZWZvcmUgaW5zdGFsbGluZyBuZXcgdmVyc2lvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4NjMgc3JjL2FyY2hpdmVzLmM6OTU3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyB2ZXJzaW9uIG9mIGAlLjI1NXMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjkwMiBzcmMvYXJjaGl2ZXMuYzo5NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gJyUuMjU1cyciCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6OTQ3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzeW5jIGZpbGUgJyUuMjU1cyciCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAwMAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiaWdub3JpbmcgZGVwZW5kZW5jeSBwcm9ibGVtIHdpdGggJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAwNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiY29uc2lkZXJpbmcgZGVjb25maWd1cmF0aW9uIG9mIGVzc2VudGlhbFxuIgorIiBwYWNrYWdlICVzLCB0byBlbmFibGUgJXMuIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IG5vLCAlcyBpcyBlc3NlbnRpYWwsIHdpbGwgbm90IGRlY29uZmlndXJlXG4iCisiIGl0IGluIG9yZGVyIHRvIGVuYWJsZSAlcy5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDIyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBubywgY2Fubm90IHByb2NlZWQgd2l0aCAlcyAoLS1hdXRvLWRlY29uZmlndXJlIHdpbGwgaGVscCk6XG4iCisiJXMiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAzMgorIywgYy1mb3JtYXQKK21zZ2lkICJyZW1vdmFsIG9mICUuMjUwcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDU3CisjLCBjLWZvcm1hdAorbXNnaWQgImluc3RhbGxhdGlvbiBvZiAlLjI1MHMiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA1OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogY29uc2lkZXJpbmcgZGVjb25maWd1cmF0aW9uIG9mICVzLCB3aGljaCB3b3VsZCBiZSBicm9rZW4gYnkgJXMgLi4uXG4iCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA2NQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiB5ZXMsIHdpbGwgZGVjb25maWd1cmUgJXMgKGJyb2tlbiBieSAlcykuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA2OSBzcmMvYXJjaGl2ZXMuYzoxMTg3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiByZWdhcmRpbmcgJXMgY29udGFpbmluZyAlczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDc3Cittc2dpZCAiaWdub3JpbmcgYnJlYWthZ2UsIG1heSBwcm9jZWVkIGFueXdheSEiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA4MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiaW5zdGFsbGluZyAlLjI1MHMgd291bGQgYnJlYWsgJS4yNTBzLCBhbmRcbiIKKyIgZGVjb25maWd1cmF0aW9uIGlzIG5vdCBwZXJtaXR0ZWQgKC0tYXV0by1kZWNvbmZpZ3VyZSBtaWdodCBoZWxwKSIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDg2CisjLCBjLWZvcm1hdAorbXNnaWQgImluc3RhbGxpbmcgJS4yNTBzIHdvdWxkIGJyZWFrIGV4aXN0aW5nIHNvZnR3YXJlIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExMTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogY29uc2lkZXJpbmcgcmVtb3ZpbmcgJXMgaW4gZmF2b3VyIG9mICVzIC4uLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgaXMgbm90IHByb3Blcmx5IGluc3RhbGxlZCAtIGlnbm9yaW5nIGFueSBkZXBlbmRlbmNpZXMgb24gaXQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE1MQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiBtYXkgaGF2ZSB0cm91YmxlIHJlbW92aW5nICVzLCBhcyBpdCBwcm92aWRlcyAlcyAuLi5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTY2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBwYWNrYWdlICVzIHJlcXVpcmVzIHJlaW5zdGFsbGF0aW9uLCBidXQgd2lsbCByZW1vdmUgYW55d2F5IGFzIHlvdSAiCisicmVxdWVzdGVkLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExNjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogcGFja2FnZSAlcyByZXF1aXJlcyByZWluc3RhbGxhdGlvbiwgd2lsbCBub3QgcmVtb3ZlLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogeWVzLCB3aWxsIHJlbW92ZSAlcyBpbiBmYXZvdXIgb2YgJXMuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE5MAorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mbGljdGluZyBwYWNrYWdlcyAtIG5vdCBpbnN0YWxsaW5nICUuMjUwcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTkxCittc2dpZCAiaWdub3JpbmcgY29uZmxpY3QsIG1heSBwcm9jZWVkIGFueXdheSEiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTIzNQorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIC0tcmVjdXJzaXZlIG5lZWRzIGF0IGxlYXN0IG9uZSBwYXRoIGFyZ3VtZW50IgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNDUKK21zZ2lkICJmaW5kIGZvciBkcGtnIC0tcmVjdXJzaXZlIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNjYKK21zZ2lkICJmYWlsZWQgdG8gZmRvcGVuIGZpbmQncyBwaXBlIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNzIKK21zZ2lkICJlcnJvciByZWFkaW5nIGZpbmQncyBwaXBlIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNzMKK21zZ2lkICJlcnJvciBjbG9zaW5nIGZpbmQncyBwaXBlIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmluZCBmb3IgLS1yZWN1cnNpdmUgcmV0dXJuZWQgdW5oYW5kbGVkIGVycm9yICVpIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNzkKK21zZ2lkICJzZWFyY2hlZCwgYnV0IGZvdW5kIG5vIHBhY2thZ2VzIChmaWxlcyBtYXRjaGluZyAqLmRlYikiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI5MAorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGF0IGxlYXN0IG9uZSBwYWNrYWdlIGFyY2hpdmUgZmlsZSBhcmd1bWVudCIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzI1IHNyYy9kaXZlcnRjbWQuYzo3OCBzcmMvZGl2ZXJ0Y21kLmM6MTE4CisjOiBzcmMvZW5xdWlyeS5jOjE2NiBzcmMvZW5xdWlyeS5jOjI3OSBzcmMvZW5xdWlyeS5jOjQ0OSBzcmMvZW5xdWlyeS5jOjQ1MQorIzogc3JjL2VucXVpcnkuYzo0NjQgc3JjL21haW4uYzo2NiBzcmMvbWFpbi5jOjE2MyBzcmMvbWFpbi5jOjMxNAorIzogc3JjL21haW4uYzo0OTMgc3JjL3BhY2thZ2VzLmM6MjU0IHNyYy9xdWVyeWNtZC5jOjI1MiBzcmMvcXVlcnljbWQuYzozNTUKKyM6IHNyYy9xdWVyeWNtZC5jOjM5NiBzcmMvcXVlcnljbWQuYzo0MDQgc3JjL3F1ZXJ5Y21kLmM6NDQ4IHNyYy9xdWVyeWNtZC5jOjUxNworIzogc3JjL3F1ZXJ5Y21kLmM6NjA2IHNyYy9xdWVyeWNtZC5jOjY1MCBzcmMvc2VsZWN0LmM6Nzkgc3JjL3N0YXRjbWQuYzo2OAorIzogc3JjL3N0YXRjbWQuYzo5OCBzcmMvdHJpZ2NtZC5jOjU4IHNyYy90cmlnY21kLmM6OTAgZHBrZy1kZWIvYnVpbGQuYzo0NDEKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyMTcgZHBrZy1kZWIvZXh0cmFjdC5jOjI1MCBkcGtnLWRlYi9pbmZvLmM6MjAzCisjOiBkcGtnLWRlYi9pbmZvLmM6MjY1IGRwa2ctZGViL21haW4uYzo2MCBkcGtnLWRlYi9tYWluLmM6MTI2CisjOiBkcGtnLXNwbGl0L2luZm8uYzoyNTcgZHBrZy1zcGxpdC9tYWluLmM6NTQgZHBrZy1zcGxpdC9tYWluLmM6OTgKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxNDQgZHBrZy1zcGxpdC9xdWV1ZS5jOjI4MAorbXNnaWQgIjxzdGFuZGFyZCBvdXRwdXQ+IgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzMjYgc3JjL3BhY2thZ2VzLmM6MjU1IHNyYy9xdWVyeWNtZC5jOjI1MworIzogc3JjL3F1ZXJ5Y21kLmM6MzUzIHNyYy9xdWVyeWNtZC5jOjQ1NCBzcmMvcXVlcnljbWQuYzo1MTggc3JjL3NlbGVjdC5jOjgwCisjOiBkcGtnLXNwbGl0L21haW4uYzoxNjkgZHBrZy1zcGxpdC9xdWV1ZS5jOjIxOAorbXNnaWQgIjxzdGFuZGFyZCBlcnJvcj4iCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTM2NworIywgYy1mb3JtYXQKK21zZ2lkICJTZWxlY3RpbmcgcHJldmlvdXNseSB1bnNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTM3MQorIywgYy1mb3JtYXQKK21zZ2lkICJTa2lwcGluZyB1bnNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTM4NworIywgYy1mb3JtYXQKK21zZ2lkICJWZXJzaW9uICUuMjUwcyBvZiAlLjI1MHMgYWxyZWFkeSBpbnN0YWxsZWQsIHNraXBwaW5nLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzOTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZG93bmdyYWRpbmcgJS4yNTBzIGZyb20gJS4yNTBzIHRvICUuMjUwcy4iCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTQwMgorIywgYy1mb3JtYXQKK21zZ2lkICJXaWxsIG5vdCBkb3duZ3JhZGUgJS4yNTBzIGZyb20gdmVyc2lvbiAlLjI1MHMgdG8gJS4yNTBzLCBza2lwcGluZy5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvY2xlYW51cC5jOjg2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1bmFibGUgdG8gcmVtb3ZlIG5ld2x5LWluc3RhbGxlZCB2ZXJzaW9uIG9mIGAlLjI1MHMnIHRvIGFsbG93IHJlaW5zdGFsbGF0aW9uICIKKyJvZiBiYWNrdXAgY29weSIKK21zZ3N0ciAiIgorCisjOiBzcmMvY2xlYW51cC5jOjkzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZXN0b3JlIGJhY2t1cCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9jbGVhbnVwLmM6OTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBiYWNrdXAgY29weSBvZiAnJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvY2xlYW51cC5jOjEwMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIG5ld2x5LWluc3RhbGxlZCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9jbGVhbnVwLmM6MTA4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgbmV3bHktZXh0cmFjdGVkIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjEwNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBuZXcgZGlzdHJpYnV0ZWQgY29uZmZpbGUgJyUuMjUwcyciCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBjdXJyZW50IGluc3RhbGxlZCBjb25mZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTI2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJDb25maWd1cmF0aW9uIGZpbGUgYCVzJywgZG9lcyBub3QgZXhpc3Qgb24gc3lzdGVtLlxuIgorIkluc3RhbGxpbmcgbmV3IGNvbmZpZyBmaWxlIGFzIHlvdSByZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE2OAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIHJlbW92ZSBvbGQgYmFja3VwICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTc2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVuYW1lICclLjI1MHMnIHRvICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTgyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTg4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlIG9sZCBkaXN0cmlidXRlZCB2ZXJzaW9uICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTkyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlICclLjI1MHMnIChiZWZvcmUgb3ZlcndyaXRlKTogJXMiCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE5NgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIGxpbmsgJyUuMjUwcycgdG8gJyUuMjUwcyc6ICVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzoyMDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW5zdGFsbGluZyBuZXcgdmVyc2lvbiBvZiBjb25maWcgZmlsZSAlcyAuLi5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjA2IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo1NDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgYCUuMjUwcycgYXMgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI1NworIywgYy1mb3JtYXQKK21zZ2lkICJubyBwYWNrYWdlIG5hbWVkIGAlcycgaXMgaW5zdGFsbGVkLCBjYW5ub3QgY29uZmlndXJlIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzoyNjAKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlLjI1MHMgaXMgYWxyZWFkeSBpbnN0YWxsZWQgYW5kIGNvbmZpZ3VyZWQiCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI2MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisicGFja2FnZSAlLjI1MHMgaXMgbm90IHJlYWR5IGZvciBjb25maWd1cmF0aW9uXG4iCisiIGNhbm5vdCBjb25maWd1cmUgKGN1cnJlbnQgc3RhdHVzIGAlLjI1MHMnKSIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6Mjk0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBkZXBlbmRlbmN5IHByb2JsZW1zIHByZXZlbnQgY29uZmlndXJhdGlvbiBvZiAlczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6Mjk3Cittc2dpZCAiZGVwZW5kZW5jeSBwcm9ibGVtcyAtIGxlYXZpbmcgdW5jb25maWd1cmVkIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzozMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6ICVzOiBkZXBlbmRlbmN5IHByb2JsZW1zLCBidXQgY29uZmlndXJpbmcgYW55d2F5IGFzIHlvdSByZXF1ZXN0ZWQ6XG4iCisiJXMiCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjMwOQorbXNnaWQgIiIKKyJQYWNrYWdlIGlzIGluIGEgdmVyeSBiYWQgaW5jb25zaXN0ZW50IHN0YXRlIC0geW91IHNob3VsZFxuIgorIiByZWluc3RhbGwgaXQgYmVmb3JlIGF0dGVtcHRpbmcgY29uZmlndXJhdGlvbi4iCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjMxMgorIywgYy1mb3JtYXQKK21zZ2lkICJTZXR0aW5nIHVwICVzICglcykgLi4uXG4iCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjM5NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IHVuYWJsZSB0byBzdGF0IGNvbmZpZyBmaWxlICclcydcbiIKKyIgKD0gJyVzJyk6ICVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo0MDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBjb25maWcgZmlsZSAnJXMnIGlzIGEgY2lyY3VsYXIgbGlua1xuIgorIiAoPSAnJXMnKSIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDE4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogdW5hYmxlIHRvIHJlYWRsaW5rIGNvbmZmaWxlICclcydcbiIKKyIgKD0gJyVzJyk6ICVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo0NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBjb25mZmlsZSAnJS4yNTBzJyByZXNvbHZlcyB0byBkZWdlbmVyYXRlIGZpbGVuYW1lXG4iCisiICgnJXMnIGlzIGEgc3ltbGluayB0byAnJXMnKSIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDYwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBjb25mZmlsZSAnJS4yNTBzJyBpcyBub3QgYSBwbGFpbiBmaWxlIG9yIHN5bWxpbmsgKD0gJyVzJykiCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQ4NgorbXNnaWQgIm1kNWhhc2giCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQ5MgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogdW5hYmxlIHRvIG9wZW4gY29uZmZpbGUgJXMgZm9yIGhhc2g6ICVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo1MjIgc3JjL2NvbmZpZ3VyZS5jOjUyNgorbXNnaWQgImNvbmZmaWxlIGRpZmZlcmVuY2UgdmlzdWFsaXplciIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NTQzCittc2dpZCAiVHlwZSBgZXhpdCcgd2hlbiB5b3UncmUgZG9uZS5cbiIKK21zZ3N0ciAiVWt1Y2FqdGUgYGV4aXQnIGthZGEgemF2csWhaXRlLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NTUyIHNyYy9jb25maWd1cmUuYzo1NTYKK21zZ2lkICJjb25mZmlsZSBzaGVsbCIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjAyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJDb25maWd1cmF0aW9uIGZpbGUgYCVzJyIKK21zZ3N0ciAiIgorIlxuIgorIktvbmZpZ3VyYWNpanNrYSBkYXRvdGVrYSBgJXMnIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjA0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAoYWN0dWFsbHkgYCVzJykiCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYwOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiID09PiBGaWxlIG9uIHN5c3RlbSBjcmVhdGVkIGJ5IHlvdSBvciBieSBhIHNjcmlwdC5cbiIKKyIgPT0+IEZpbGUgYWxzbyBpbiBwYWNrYWdlIHByb3ZpZGVkIGJ5IHBhY2thZ2UgbWFpbnRhaW5lci5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjEzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgICAgIE5vdCBtb2RpZmllZCBzaW5jZSBpbnN0YWxsYXRpb24uXG4iCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYxNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiID09PiBNb2RpZmllZCAoYnkgeW91IG9yIGJ5IGEgc2NyaXB0KSBzaW5jZSBpbnN0YWxsYXRpb24uXG4iCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYxNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiID09PiBEZWxldGVkIChieSB5b3Ugb3IgYnkgYSBzY3JpcHQpIHNpbmNlIGluc3RhbGxhdGlvbi5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjE5CisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gUGFja2FnZSBkaXN0cmlidXRvciBoYXMgc2hpcHBlZCBhbiB1cGRhdGVkIHZlcnNpb24uXG4iCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYyMAorIywgYy1mb3JtYXQKK21zZ2lkICIgICAgIFZlcnNpb24gaW4gcGFja2FnZSBpcyB0aGUgc2FtZSBhcyBhdCBsYXN0IGluc3RhbGxhdGlvbi5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjI4CisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gVXNpbmcgbmV3IGZpbGUgYXMgeW91IHJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gVXNpbmcgY3VycmVudCBvbGQgZmlsZSBhcyB5b3UgcmVxdWVzdGVkLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBLZWVwaW5nIG9sZCBjb25maWcgZmlsZSBhcyBkZWZhdWx0LlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBVc2luZyBuZXcgY29uZmlnIGZpbGUgYXMgZGVmYXVsdC5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjUyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIgICBXaGF0IHdvdWxkIHlvdSBsaWtlIHRvIGRvIGFib3V0IGl0ID8gIFlvdXIgb3B0aW9ucyBhcmU6XG4iCisiICAgIFkgb3IgSSAgOiBpbnN0YWxsIHRoZSBwYWNrYWdlIG1haW50YWluZXIncyB2ZXJzaW9uXG4iCisiICAgIE4gb3IgTyAgOiBrZWVwIHlvdXIgY3VycmVudGx5LWluc3RhbGxlZCB2ZXJzaW9uXG4iCisiICAgICAgRCAgICAgOiBzaG93IHRoZSBkaWZmZXJlbmNlcyBiZXR3ZWVuIHRoZSB2ZXJzaW9uc1xuIgorIiAgICAgIFogICAgIDogc3RhcnQgYSBzaGVsbCB0byBleGFtaW5lIHRoZSBzaXR1YXRpb25cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjU5CisjLCBjLWZvcm1hdAorbXNnaWQgIiBUaGUgZGVmYXVsdCBhY3Rpb24gaXMgdG8ga2VlcCB5b3VyIGN1cnJlbnQgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjYxCisjLCBjLWZvcm1hdAorbXNnaWQgIiBUaGUgZGVmYXVsdCBhY3Rpb24gaXMgdG8gaW5zdGFsbCB0aGUgbmV3IHZlcnNpb24uXG4iCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY2NgorbXNnaWQgIltkZWZhdWx0PU5dIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NjcKK21zZ2lkICJbZGVmYXVsdD1ZXSIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjY4Cittc2dpZCAiW25vIGRlZmF1bHRdIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NzEKK21zZ2lkICJlcnJvciB3cml0aW5nIHRvIHN0ZGVyciwgZGlzY292ZXJlZCBiZWZvcmUgY29uZmZpbGUgcHJvbXB0IgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2ODAKK21zZ2lkICJyZWFkIGVycm9yIG9uIHN0ZGluIGF0IGNvbmZmaWxlIHByb21wdCIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjgxCittc2dpZCAiRU9GIG9uIHN0ZGluIGF0IGNvbmZmaWxlIHByb21wdCIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGVwY29uLmM6MTc1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlcyBkZXBlbmRzIG9uICVzIgorbXNnc3RyICJ6YXZpc2kgbyIKKworIzogc3JjL2RlcGNvbi5jOjE3OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXMgcHJlLWRlcGVuZHMgb24gJXMiCittc2dzdHIgInVuYXByaWplZCB6YXZpc2kgbyIKKworIzogc3JjL2RlcGNvbi5jOjE4MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXMgcmVjb21tZW5kcyAlcyIKK21zZ3N0ciAicHJlcG9ydcSNdWplIgorCisjOiBzcmMvZGVwY29uLmM6MTg0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlcyBzdWdnZXN0cyAlcyIKK21zZ3N0ciAicHJlZGxhxb5lIgorCisjOiBzcmMvZGVwY29uLmM6MTg3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGJyZWFrcyAlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGVwY29uLmM6MTkwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlcyBjb25mbGljdHMgd2l0aCAlcyIKK21zZ3N0ciAic3Vrb2JsamF2YSBzZSBzYSIKKworIzogc3JjL2RlcGNvbi5jOjE5MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXMgZW5oYW5jZXMgJXMiCittc2dzdHIgInBvYm9sasWhYXZhIgorCisjOiBzcmMvZGVwY29uLmM6Mjk2CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHRvIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2RlcGNvbi5jOjI5OQorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB0byBiZSBkZWNvbmZpZ3VyZWQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2RlcGNvbi5jOjMwNAorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB0byBiZSBpbnN0YWxsZWQsIGJ1dCBpcyB2ZXJzaW9uICUuMjUwcy5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGVwY29uLmM6MzE0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIGluc3RhbGxlZCwgYnV0IGlzIHZlcnNpb24gJS4yNTBzLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9kZXBjb24uYzozMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdW5wYWNrZWQsIGJ1dCBoYXMgbmV2ZXIgYmVlbiBjb25maWd1cmVkLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9kZXBjb24uYzozMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdW5wYWNrZWQsIGJ1dCBpcyB2ZXJzaW9uICUuMjUwcy5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGVwY29uLmM6MzQzCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGxhdGVzdCBjb25maWd1cmVkIHZlcnNpb24gaXMgJS4yNTBzLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9kZXBjb24uYzozNTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgJXMuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2RlcGNvbi5jOjM4OAorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYnV0IGlzIHRvIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2RlcGNvbi5jOjM5MgorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYnV0IGlzIHRvIGJlIGRlY29uZmlndXJlZC5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGVwY29uLmM6NDAxCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBidXQgaXMgJXMuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2RlcGNvbi5jOjQxNQorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9kZXBjb24uYzo0NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgKHZlcnNpb24gJS4yNTBzKSBpcyB0byBiZSBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2RlcGNvbi5jOjQ2OAorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyAodmVyc2lvbiAlLjI1MHMpIGlzIHByZXNlbnQgYW5kICVzLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9kZXBjb24uYzo0OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGFuZCBpcyB0byBiZSBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2RlcGNvbi5jOjUzNworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYW5kIGlzIHByZXNlbnQgYW5kICVzLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MAorbXNnaWQgIlVzZSAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgZGl2ZXJ0aW5nIGZpbGVzLiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjYgc3JjL3N0YXRjbWQuYzo1NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6ODAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiAlcyB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICJEZWJpYW5vdiBgJXMnIHByb2dyYW0gemEgcnVrb3ZhbmplIHBha2V0aW1hLiIKKworIzogc3JjL2RpdmVydGNtZC5jOjcwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMTAgR3VpbGxlbSBKb3Zlci5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NzUgc3JjL21haW4uYzo2MyBzcmMvcXVlcnljbWQuYzo2MDMgc3JjL3N0YXRjbWQuYzo2NQorIzogc3JjL3RyaWdjbWQuYzo1NSBkcGtnLWRlYi9tYWluLmM6NTcgZHBrZy1zcGxpdC9tYWluLmM6NTEKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo4OQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgb3JcbiIKKyJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKK21zZ3N0ciAiIgorIlZlcnppamEgJXMuXG4iCisiQ29weXJpZ2h0IChDKSAxOTk0LTE5OTYgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJPdm8gamUgc2xvYm9kYW4gc29mdHdhcmU7IHBvZ2xlZGFqdGUgR05VIG9wxaF0dSBqYXZudSBsaWNlbmN1IHZlcnppamUgMlxuIgorImlsaSBrYXNuaWp1IHphIHVzbG92ZSBrb3BpcmFuamEuICBORU1BIGdhcmFuY2lqZS4gIFBvZ2xlZGFqdGVcbiIKKyJkc2VsZWN0IC0tbGljZW5jZSB6YSBkZXRhbGplLlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6ODcgc3JjL21haW4uYzo4MSBzcmMvcXVlcnljbWQuYzo2MTUgc3JjL3N0YXRjbWQuYzo3NworIzogZHBrZy1kZWIvbWFpbi5jOjY5IGRwa2ctc3BsaXQvbWFpbi5jOjYzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo5NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIDxjb21tYW5kPlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo5MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICBbLS1hZGRdIDxmaWxlPiAgICAgICAgICAgYWRkIGEgZGl2ZXJzaW9uLlxuIgorIiAgLS1yZW1vdmUgPGZpbGU+ICAgICAgICAgIHJlbW92ZSB0aGUgZGl2ZXJzaW9uLlxuIgorIiAgLS1saXN0IFs8Z2xvYi1wYXR0ZXJuPl0gIHNob3cgZmlsZSBkaXZlcnNpb25zLlxuIgorIiAgLS1saXN0cGFja2FnZSA8ZmlsZT4gICAgIHNob3cgd2hhdCBwYWNrYWdlIGRpdmVydHMgdGhlIGZpbGUuXG4iCisiICAtLXRydWVuYW1lIDxmaWxlPiAgICAgICAgcmV0dXJuIHRoZSBkaXZlcnRlZCBmaWxlLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoxMDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLXBhY2thZ2UgPHBhY2thZ2U+ICAgICAgbmFtZSBvZiB0aGUgcGFja2FnZSB3aG9zZSBjb3B5IG9mIDxmaWxlPiB3aWxsICIKKyJub3RcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJlIGRpdmVydGVkLlxuIgorIiAgLS1sb2NhbCAgICAgICAgICAgICAgICAgIGFsbCBwYWNrYWdlcycgdmVyc2lvbnMgYXJlIGRpdmVydGVkLlxuIgorIiAgLS1kaXZlcnQgPGRpdmVydC10bz4gICAgIHRoZSBuYW1lIHVzZWQgYnkgb3RoZXIgcGFja2FnZXMnIHZlcnNpb25zLlxuIgorIiAgLS1yZW5hbWUgICAgICAgICAgICAgICAgIGFjdHVhbGx5IG1vdmUgdGhlIGZpbGUgYXNpZGUgKG9yIGJhY2spLlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIHNldCB0aGUgZGlyZWN0b3J5IHdpdGggdGhlIGRpdmVyc2lvbnMgZmlsZS5cbiIKKyIgIC0tdGVzdCAgICAgICAgICAgICAgICAgICBkb24ndCBkbyBhbnl0aGluZywganVzdCBkZW1vbnN0cmF0ZS5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBxdWlldCBvcGVyYXRpb24sIG1pbmltYWwgb3V0cHV0LlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJXaGVuIGFkZGluZywgZGVmYXVsdCBpcyAtLWxvY2FsIGFuZCAtLWRpdmVydCA8b3JpZ2luYWw+LmRpc3RyaWIuXG4iCisiV2hlbiByZW1vdmluZywgLS1wYWNrYWdlIG9yIC0tbG9jYWwgYW5kIC0tZGl2ZXJ0IG11c3QgbWF0Y2ggaWYgc3BlY2lmaWVkLlxuIgorIlBhY2thZ2UgcHJlaW5zdC9wb3N0cm0gc2NyaXB0cyBzaG91bGQgYWx3YXlzIHNwZWNpZnkgLS1wYWNrYWdlIGFuZCAtLSIKKyJkaXZlcnQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjE2OAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjaGVja2luZyAnJXMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInJlbmFtZSBpbnZvbHZlcyBvdmVyd3JpdGluZyBgJXMnIHdpdGhcbiIKKyIgIGRpZmZlcmVudCBmaWxlIGAlcycsIG5vdCBhbGxvd2VkIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyMjMgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzNzMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJcbiIKKyN8ICJDb25maWd1cmF0aW9uIGZpbGUgYCVzJyIKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGZpbGUgJyVzJyIKK21zZ3N0ciAiIgorIlxuIgorIktvbmZpZ3VyYWNpanNrYSBkYXRvdGVrYSBgJXMnIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjI3Cittc2dpZCAiZmlsZSBjb3B5IgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyMzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlbmFtZSAnJXMnIHRvICclcyciCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjI1MgorIywgYy1mb3JtYXQKK21zZ2lkICJyZW5hbWU6IHJlbW92ZSBkdXBsaWNhdGUgb2xkIGxpbmsgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjYyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgY29waWVkIHNvdXJjZSBmaWxlICclcyciCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjI4NAorIywgYy1mb3JtYXQKK21zZ2lkICJsb2NhbCBkaXZlcnNpb24gb2YgJXMiCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjI4NgorIywgYy1mb3JtYXQKK21zZ2lkICJsb2NhbCBkaXZlcnNpb24gb2YgJXMgdG8gJXMiCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjI5MAorIywgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnNpb24gb2YgJXMgYnkgJXMiCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjI5MworIywgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnNpb24gb2YgJXMgdG8gJXMgYnkgJXMiCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjMwOQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiYW55IGRpdmVyc2lvbiBvZiAlcyIKK21zZ3N0ciAiRGViaWFub3YgYCVzJyBwcm9ncmFtIHphIHJ1a292YW5qZSBwYWtldGltYS4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiYW55IGRpdmVyc2lvbiBvZiAlcyB0byAlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MzU3CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBjcmVhdGUgbmV3ICVzIGZpbGUiCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjM3NSBzcmMvc3RhdGNtZC5jOjIxNSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTQwNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggZmlsZSAnJXMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozODIKK21zZ2lkICJlcnJvciByZW1vdmluZyBvbGQgZGl2ZXJzaW9ucy1vbGQiCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjM4NAorbXNnaWQgImVycm9yIGNyZWF0aW5nIG5ldyBkaXZlcnNpb25zLW9sZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mzg2Cittc2dpZCAiZXJyb3IgaW5zdGFsbGluZyBuZXcgZGl2ZXJzaW9ucyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDA2IHNyYy9kaXZlcnRjbWQuYzo1MDMgc3JjL2RpdmVydGNtZC5jOjYxMAorIzogc3JjL2RpdmVydGNtZC5jOjYzMCBzcmMvc3RhdGNtZC5jOjI5MAorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGEgc2luZ2xlIGFyZ3VtZW50IgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MDkgc3JjL2RpdmVydGNtZC5jOjQzMAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlbmFtZSBcIiVzXCIgaXMgbm90IGFic29sdXRlIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MTEgc3JjL3N0YXRjbWQuYzoyNDkKK21zZ2lkICJmaWxlIG1heSBub3QgY29udGFpbiBuZXdsaW5lcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDE4Cittc2dpZCAiQ2Fubm90IGRpdmVydCBkaXJlY3RvcmllcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDMzCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBkaXZlcnQgZmlsZSAnJXMnIHRvIGl0c2VsZiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDUzCisjLCBjLWZvcm1hdAorbXNnaWQgIkxlYXZpbmcgJyVzJ1xuIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBjbGFzaGVzIHdpdGggYCVzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDgxCisjLCBjLWZvcm1hdAorbXNnaWQgIkFkZGluZyAnJXMnXG4iCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjUxMAorIywgYy1mb3JtYXQKK21zZ2lkICJObyBkaXZlcnNpb24gJyVzJywgbm9uZSByZW1vdmVkLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm1pc21hdGNoIG9uIGRpdmVydC10b1xuIgorIiAgd2hlbiByZW1vdmluZyBgJXMnXG4iCisiICBmb3VuZCBgJXMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm1pc21hdGNoIG9uIHBhY2thZ2VcbiIKKyIgIHdoZW4gcmVtb3ZpbmcgYCVzJ1xuIgorIiAgZm91bmQgYCVzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTM5CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlbW92aW5nICclcydcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjU3Cittc2dpZCAicGFja2FnZSBtYXkgbm90IGNvbnRhaW4gbmV3bGluZXMiCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjY2NgorbXNnaWQgImRpdmVydC10byBtYXkgbm90IGNvbnRhaW4gbmV3bGluZXMiCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGRiLmM6NjQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiBkaXZlcnNpb25zIGZpbGUiCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGRiLmM6NzEKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgcHJldmlvdXMgZGl2ZXJzaW9ucyBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRkYi5jOjczCittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGRpdmVyc2lvbnMgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzoxMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmxpY3RpbmcgZGl2ZXJzaW9ucyBpbnZvbHZpbmcgYCUuMjUwcycgb3IgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzo3MworbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBpbiBhIG1lc3MgZHVlIHRvIHNlcmlvdXMgcHJvYmxlbXMgZHVyaW5nXG4iCisiaW5zdGFsbGF0aW9uLiAgVGhleSBtdXN0IGJlIHJlaW5zdGFsbGVkIGZvciB0aGVtIChhbmQgYW55IHBhY2thZ2VzXG4iCisidGhhdCBkZXBlbmQgb24gdGhlbSkgdG8gZnVuY3Rpb24gcHJvcGVybHk6XG4iCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzo4MAorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGhhdmUgYmVlbiB1bnBhY2tlZCBidXQgbm90IHlldCBjb25maWd1cmVkLlxuIgorIlRoZXkgbXVzdCBiZSBjb25maWd1cmVkIHVzaW5nIGRwa2cgLS1jb25maWd1cmUgb3IgdGhlIGNvbmZpZ3VyZVxuIgorIm1lbnUgb3B0aW9uIGluIGRzZWxlY3QgZm9yIHRoZW0gdG8gd29yazpcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZW5xdWlyeS5jOjg3Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgYXJlIG9ubHkgaGFsZiBjb25maWd1cmVkLCBwcm9iYWJseSBkdWUgdG8gcHJvYmxlbXNcbiIKKyJjb25maWd1cmluZyB0aGVtIHRoZSBmaXJzdCB0aW1lLiAgVGhlIGNvbmZpZ3VyYXRpb24gc2hvdWxkIGJlIHJldHJpZWQgdXNpbmdcbiIKKyJkcGtnIC0tY29uZmlndXJlIDxwYWNrYWdlPiBvciB0aGUgY29uZmlndXJlIG1lbnUgb3B0aW9uIGluIGRzZWxlY3Q6XG4iCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzo5NAorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBvbmx5IGhhbGYgaW5zdGFsbGVkLCBkdWUgdG8gcHJvYmxlbXMgZHVyaW5nXG4iCisiaW5zdGFsbGF0aW9uLiAgVGhlIGluc3RhbGxhdGlvbiBjYW4gcHJvYmFibHkgYmUgY29tcGxldGVkIGJ5IHJldHJ5aW5nIGl0O1xuIgorInRoZSBwYWNrYWdlcyBjYW4gYmUgcmVtb3ZlZCB1c2luZyBkc2VsZWN0IG9yIGRwa2cgLS1yZW1vdmU6XG4iCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzoxMDEKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgYXdhaXRpbmcgcHJvY2Vzc2luZyBvZiB0cmlnZ2VycyB0aGF0IHRoZXlcbiIKKyJoYXZlIGFjdGl2YXRlZCBpbiBvdGhlciBwYWNrYWdlcy4gIFRoaXMgcHJvY2Vzc2luZyBjYW4gYmUgcmVxdWVzdGVkIHVzaW5nXG4iCisiZHNlbGVjdCBvciBkcGtnIC0tY29uZmlndXJlIC0tcGVuZGluZyAob3IgZHBrZyAtLXRyaWdnZXJzLW9ubHkpOlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTA4Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgaGF2ZSBiZWVuIHRyaWdnZXJlZCwgYnV0IHRoZSB0cmlnZ2VyIHByb2Nlc3NpbmdcbiIKKyJoYXMgbm90IHlldCBiZWVuIGRvbmUuICBUcmlnZ2VyIHByb2Nlc3NpbmcgY2FuIGJlIHJlcXVlc3RlZCB1c2luZ1xuIgorImRzZWxlY3Qgb3IgZHBrZyAtLWNvbmZpZ3VyZSAtLXBlbmRpbmcgKG9yIGRwa2cgLS10cmlnZ2Vycy1vbmx5KTpcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZW5xdWlyeS5jOjEzNyBzcmMvZW5xdWlyeS5jOjIxMSBzcmMvZW5xdWlyeS5jOjI5MiBzcmMvZW5xdWlyeS5jOjM3MworIzogc3JjL2VucXVpcnkuYzo0NjAgc3JjL3NlbGVjdC5jOjk4IHNyYy9zZWxlY3QuYzoxNjQgc3JjL3RyaWdjbWQuYzoxOTkKKyM6IHNyYy91cGRhdGUuYzo0OCBzcmMvdXBkYXRlLmM6MTEzIGRwa2ctc3BsaXQvcXVldWUuYzoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyB0YWtlcyBubyBhcmd1bWVudHMiCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzoxNTIKK21zZ2lkICIiCisiQW5vdGhlciBwcm9jZXNzIGhhcyBsb2NrZWQgdGhlIGRhdGFiYXNlIGZvciB3cml0aW5nLCBhbmQgbWlnaHQgY3VycmVudGx5IGJlXG4iCisibW9kaWZ5aW5nIGl0LCBzb21lIG9mIHRoZSBmb2xsb3dpbmcgcHJvYmxlbXMgbWlnaHQganVzdCBiZSBkdWUgdG8gdGhhdC5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZW5xdWlyeS5jOjE5MQorbXNnY3R4dCAic2VjdGlvbiIKK21zZ2lkICI8dW5rbm93bj4iCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzoyNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiICVkIGluICVzOiAiCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzoyNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiICVkIHBhY2thZ2UsIGZyb20gdGhlIGZvbGxvd2luZyBzZWN0aW9uOiIKK21zZ2lkX3BsdXJhbCAiICVkIHBhY2thZ2VzLCBmcm9tIHRoZSBmb2xsb3dpbmcgc2VjdGlvbnM6IgorbXNnc3RyWzBdICIiCittc2dzdHJbMV0gIiIKKworIzogc3JjL2VucXVpcnkuYzozMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlZlcnNpb24gb2YgZHBrZyB3aXRoIHdvcmtpbmcgJXMgc3VwcG9ydCBub3QgeWV0IGNvbmZpZ3VyZWQuXG4iCisiIFBsZWFzZSB1c2UgJ2Rwa2cgLS1jb25maWd1cmUgZHBrZycsIGFuZCB0aGVuIHRyeSBhZ2Fpbi5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZW5xdWlyeS5jOjMxMAorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnIG5vdCByZWNvcmRlZCBhcyBpbnN0YWxsZWQsIGNhbm5vdCBjaGVjayBmb3IgJXMgc3VwcG9ydCFcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZW5xdWlyeS5jOjMyMQorbXNnaWQgIlByZS1EZXBlbmRzIGZpZWxkIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzI5Cittc2dpZCAiZXBvY2giCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzozMzcKK21zZ2lkICJsb25nIGZpbGVuYW1lcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZW5xdWlyeS5jOjM0NgorbXNnaWQgIm11bHRpcGxlIENvbmZsaWN0cyBhbmQgUmVwbGFjZXMiCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzo0MzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IGNhbm5vdCBzZWUgaG93IHRvIHNhdGlzZnkgcHJlLWRlcGVuZGVuY3k6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzo0MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHNhdGlzZnkgcHJlLWRlcGVuZGVuY2llcyBmb3IgJS4yNTBzICh3YW50ZWQgZHVlIHRvICUuMjUwcykiCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzo0NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAib2Jzb2xldGUgb3B0aW9uICctLSVzJywgcGxlYXNlIHVzZSAnLS0lcycgaW5zdGVhZC4iCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzo1MTkKK21zZ2lkICIiCisiLS1jb21wYXJlLXZlcnNpb25zIHRha2VzIHRocmVlIGFyZ3VtZW50czogPHZlcnNpb24+IDxyZWxhdGlvbj4gPHZlcnNpb24+IgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6NTI0Cittc2dpZCAiLS1jb21wYXJlLXZlcnNpb25zIGJhZCByZWxhdGlvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZW5xdWlyeS5jOjUyOSBzcmMvZW5xdWlyeS5jOjUzMSBzcmMvZW5xdWlyeS5jOjU0MCBzcmMvZW5xdWlyeS5jOjU0MgorIywgYy1mb3JtYXQKK21zZ2lkICJ2ZXJzaW9uICclcycgaGFzIGJhZCBzeW50YXg6ICVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9lcnJvcnMuYzo2MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IGVycm9yIHByb2Nlc3NpbmcgJXMgKC0tJXMpOlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisKKyM6IHNyYy9lcnJvcnMuYzo2OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IGZhaWxlZCB0byBhbGxvY2F0ZSBtZW1vcnkgZm9yIG5ldyBlbnRyeSBpbiBsaXN0IG9mIGZhaWxlZCBwYWNrYWdlczogJXMiCittc2dzdHIgIiIKKworIzogc3JjL2Vycm9ycy5jOjc5CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB0b28gbWFueSBlcnJvcnMsIHN0b3BwaW5nXG4iCittc2dzdHIgIiIKKworIzogc3JjL2Vycm9ycy5jOjg3Cittc2dpZCAiRXJyb3JzIHdlcmUgZW5jb3VudGVyZWQgd2hpbGUgcHJvY2Vzc2luZzpcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZXJyb3JzLmM6OTQKK21zZ2lkICJQcm9jZXNzaW5nIHdhcyBoYWx0ZWQgYmVjYXVzZSB0aGVyZSB3ZXJlIHRvbyBtYW55IGVycm9ycy5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZXJyb3JzLmM6MTA1CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgJXMgd2FzIG9uIGhvbGQsIHByb2Nlc3NpbmcgaXQgYW55d2F5IGFzIHlvdSByZXF1ZXN0ZWRcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZXJyb3JzLmM6MTA5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJQYWNrYWdlICVzIGlzIG9uIGhvbGQsIG5vdCB0b3VjaGluZyBpdC4gIFVzZSAtLWZvcmNlLWhvbGQgdG8gb3ZlcnJpZGUuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2Vycm9ycy5jOjExOQorbXNnaWQgIm92ZXJyaWRpbmcgcHJvYmxlbSBiZWNhdXNlIC0tZm9yY2UgZW5hYmxlZDoiCittc2dzdHIgIiIKKworIzogc3JjL2ZpbGVzZGIuYzozMDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9maWxlc2RiLmM6MzExCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcycgbWlzc2luZywgYXNzdW1pbmcgcGFja2FnZSBoYXMgbm8gZmlsZXMgIgorImN1cnJlbnRseSBpbnN0YWxsZWQuIgorbXNnc3RyICIiCisKKyM6IHNyYy9maWxlc2RiLmM6MzIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAnJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZmlsZXNkYi5jOjMzMAorIywgYy1mb3JtYXQKK21zZ2lkICJyZWFkaW5nIGZpbGVzIGxpc3QgZm9yIHBhY2thZ2UgJyUuMjUwcyciCittc2dzdHIgIiIKKworIzogc3JjL2ZpbGVzZGIuYzozMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICclLjI1MHMnIGlzIG1pc3NpbmcgZmluYWwgbmV3bGluZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvZmlsZXNkYi5jOjM0NAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcycgY29udGFpbnMgZW1wdHkgZmlsZW5hbWUiCittc2dzdHIgIiIKKworIzogc3JjL2ZpbGVzZGIuYzozNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogc3JjL2ZpbGVzZGIuYzo0NjIKK21zZ2lkICIoUmVhZGluZyBkYXRhYmFzZSAuLi4gIgorbXNnc3RyICIiCisKKyM6IHNyYy9maWxlc2RiLmM6NDgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiVkIGZpbGUgb3IgZGlyZWN0b3J5IGN1cnJlbnRseSBpbnN0YWxsZWQuKVxuIgorbXNnaWRfcGx1cmFsICIlZCBmaWxlcyBhbmQgZGlyZWN0b3JpZXMgY3VycmVudGx5IGluc3RhbGxlZC4pXG4iCittc2dzdHJbMF0gIiIKK21zZ3N0clsxXSAiIgorCisjOiBzcmMvZmlsZXNkYi5jOjUxNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9maWxlc2RiLmM6NTI2CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB3cml0ZSB0byB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZmlsZXNkYi5jOjUyOAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZmx1c2ggdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIiIKKworIzogc3JjL2ZpbGVzZGIuYzo1MzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHN5bmMgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIiIKKworIzogc3JjL2ZpbGVzZGIuYzo1MzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNsb3NlIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9maWxlc2RiLmM6NTM1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBpbnN0YWxsIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9oZWxwLmM6NDgKK21zZ2lkICJub3QgaW5zdGFsbGVkIgorbXNnc3RyICIiCisKKyM6IHNyYy9oZWxwLmM6NDkKK21zZ2lkICJub3QgaW5zdGFsbGVkIGJ1dCBjb25maWdzIHJlbWFpbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvaGVscC5jOjUwCittc2dpZCAiYnJva2VuIGR1ZSB0byBmYWlsZWQgcmVtb3ZhbCBvciBpbnN0YWxsYXRpb24iCittc2dzdHIgIiIKKworIzogc3JjL2hlbHAuYzo1MQorbXNnaWQgInVucGFja2VkIGJ1dCBub3QgY29uZmlndXJlZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvaGVscC5jOjUyCittc2dpZCAiYnJva2VuIGR1ZSB0byBwb3N0aW5zdCBmYWlsdXJlIgorbXNnc3RyICIiCisKKyM6IHNyYy9oZWxwLmM6NTMKK21zZ2lkICJhd2FpdGluZyB0cmlnZ2VyIHByb2Nlc3NpbmcgYnkgYW5vdGhlciBwYWNrYWdlIgorbXNnc3RyICIiCisKKyM6IHNyYy9oZWxwLmM6NTQKK21zZ2lkICJ0cmlnZ2VyZWQiCittc2dzdHIgIiIKKworIzogc3JjL2hlbHAuYzo1NQorbXNnaWQgImluc3RhbGxlZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvaGVscC5jOjEwNworbXNnaWQgIlBBVEggaXMgbm90IHNldC4iCittc2dzdHIgIiIKKworIzogc3JjL2hlbHAuYzoxMjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS4iCittc2dzdHIgIiIKKworIzogc3JjL2hlbHAuYzoxMzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVkIGV4cGVjdGVkIHByb2dyYW0gbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuXG4iCisiJXMiCittc2dpZF9wbHVyYWwgIiIKKyIlZCBleHBlY3RlZCBwcm9ncmFtcyBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS5cbiIKKyIlcyIKK21zZ3N0clswXSAiIgorbXNnc3RyWzFdICIiCisKKyM6IHNyYy9oZWxwLmM6MTQxCittc2dpZCAiIgorIk5vdGU6IHJvb3QncyBQQVRIIHNob3VsZCB1c3VhbGx5IGNvbnRhaW4gL3Vzci9sb2NhbC9zYmluLCAvdXNyL3NiaW4gYW5kIC8iCisic2Jpbi4iCittc2dzdHIgIiIKKworIzogc3JjL2hlbHAuYzoxODgKK21zZ2lkICJhZG1pbmRpciBtdXN0IGJlIGluc2lkZSBpbnN0ZGlyIGZvciBkcGtnIHRvIHdvcmsgcHJvcGVybHkiCittc2dzdHIgIiIKKworIzogc3JjL2hlbHAuYzoxOTAgc3JjL21haW4uYzo3NDcKK21zZ2lkICJ1bmFibGUgdG8gc2V0ZW52IGZvciBzdWJwcm9jZXNzZXMiCittc2dzdHIgIiIKKworIzogc3JjL2hlbHAuYzoxOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNocm9vdCB0byBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvaGVscC5jOjE5NCBkcGtnLWRlYi9idWlsZC5jOjQ1NSBkcGtnLWRlYi9idWlsZC5jOjQ1NworIzogZHBrZy1kZWIvYnVpbGQuYzo1MzYgZHBrZy1kZWIvYnVpbGQuYzo1NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIGAlLjI1NXMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9oZWxwLmM6MjU2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgZXhlY3V0ZSBwZXJtaXNzaW9ucyBvbiBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvaGVscC5jOjI3NgorbXNnaWQgInVuYWJsZSB0byBzZXRlbnYgZm9yIG1haW50YWluZXIgc2NyaXB0IgorbXNnc3RyICIiCisKKyM6IHNyYy9oZWxwLmM6MzAwCisjLCBjLWZvcm1hdAorbXNnaWQgImluc3RhbGxlZCAlcyBzY3JpcHQiCittc2dzdHIgIiIKKworIzogc3JjL2hlbHAuYzozMTMgc3JjL2hlbHAuYzozODIgc3JjL2hlbHAuYzo0NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgJXMgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogc3JjL2hlbHAuYzozNjggc3JjL2hlbHAuYzo0MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAibmV3ICVzIHNjcmlwdCIKK21zZ3N0ciAiIgorCisjOiBzcmMvaGVscC5jOjQwMgorIywgYy1mb3JtYXQKK21zZ2lkICJvbGQgJXMgc2NyaXB0IgorbXNnc3RyICIiCisKKyM6IHNyYy9oZWxwLmM6NDE2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0ICVzICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvaGVscC5jOjQyNQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnIC0gdHJ5aW5nIHNjcmlwdCBmcm9tIHRoZSBuZXcgcGFja2FnZSBpbnN0ZWFkIC4uLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9oZWxwLmM6NDM5Cittc2dpZCAidGhlcmUgaXMgbm8gc2NyaXB0IGluIHRoZSBuZXcgdmVyc2lvbiBvZiB0aGUgcGFja2FnZSAtIGdpdmluZyB1cCIKK21zZ3N0ciAiIgorCisjOiBzcmMvaGVscC5jOjQ0NQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiAuLi4gaXQgbG9va3MgbGlrZSB0aGF0IHdlbnQgT0suXG4iCittc2dzdHIgIiIKKworIzogc3JjL2hlbHAuYzo2MTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNlY3VyZWx5IHJlbW92ZSAnJS4yNTVzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvaGVscC5jOjYyMSBkcGtnLWRlYi9pbmZvLmM6NjUgZHBrZy1kZWIvaW5mby5jOjY3Cittc2dpZCAicm0gY29tbWFuZCBmb3IgY2xlYW51cCIKK21zZ3N0ciAiIgorCisjOiBzcmMvaW5mb2RiLmM6NTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoZWNrIGV4aXN0ZW5jZSBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvaW5mb2RiLmM6NzAKK21zZ2lkICJjYW5ub3QgcmVhZCBpbmZvIGRpcmVjdG9yeSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjYwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIG1hbmFnZW1lbnQgcHJvZ3JhbSB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICJEZWJpYW5vdiBgJXMnIHByb2dyYW0gemEgcnVrb3ZhbmplIHBha2V0aW1hLiIKKworIzogc3JjL21haW4uYzo4NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtaXwtLWluc3RhbGwgICAgICAgPC5kZWIgZmlsZSBuYW1lPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyZWN0b3J5PiAuLi5cbiIKKyIgIC0tdW5wYWNrICAgICAgICAgICA8LmRlYiBmaWxlIG5hbWU+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXJlY3Rvcnk+IC4uLlxuIgorIiAgLUF8LS1yZWNvcmQtYXZhaWwgIDwuZGViIGZpbGUgbmFtZT4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRpcmVjdG9yeT4gLi4uXG4iCisiICAtLWNvbmZpZ3VyZSAgICAgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLS10cmlnZ2Vycy1vbmx5ICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC1yfC0tcmVtb3ZlICAgICAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtUHwtLXB1cmdlICAgICAgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLS1nZXQtc2VsZWN0aW9ucyBbPHBhdHRlcm4+IC4uLl0gR2V0IGxpc3Qgb2Ygc2VsZWN0aW9ucyB0byBzdGRvdXQuXG4iCisiICAtLXNldC1zZWxlY3Rpb25zICAgICAgICAgICAgICAgICBTZXQgcGFja2FnZSBzZWxlY3Rpb25zIGZyb20gc3RkaW4uXG4iCisiICAtLWNsZWFyLXNlbGVjdGlvbnMgICAgICAgICAgICAgICBEZXNlbGVjdCBldmVyeSBub24tZXNzZW50aWFsIHBhY2thZ2UuXG4iCisiICAtLXVwZGF0ZS1hdmFpbCA8UGFja2FnZXMtZmlsZT4gICBSZXBsYWNlIGF2YWlsYWJsZSBwYWNrYWdlcyBpbmZvLlxuIgorIiAgLS1tZXJnZS1hdmFpbCA8UGFja2FnZXMtZmlsZT4gICAgTWVyZ2Ugd2l0aCBpbmZvIGZyb20gZmlsZS5cbiIKKyIgIC0tY2xlYXItYXZhaWwgICAgICAgICAgICAgICAgICAgIEVyYXNlIGV4aXN0aW5nIGF2YWlsYWJsZSBpbmZvLlxuIgorIiAgLS1mb3JnZXQtb2xkLXVuYXZhaWwgICAgICAgICAgICAgRm9yZ2V0IHVuaW5zdGFsbGVkIHVuYXZhaWxhYmxlIHBrZ3MuXG4iCisiICAtc3wtLXN0YXR1cyA8cGFja2FnZT4gLi4uICAgICAgICBEaXNwbGF5IHBhY2thZ2Ugc3RhdHVzIGRldGFpbHMuXG4iCisiICAtcHwtLXByaW50LWF2YWlsIDxwYWNrYWdlPiAuLi4gICBEaXNwbGF5IGF2YWlsYWJsZSB2ZXJzaW9uIGRldGFpbHMuXG4iCisiICAtTHwtLWxpc3RmaWxlcyA8cGFja2FnZT4gLi4uICAgICBMaXN0IGZpbGVzIGBvd25lZCcgYnkgcGFja2FnZShzKS5cbiIKKyIgIC1sfC0tbGlzdCBbPHBhdHRlcm4+IC4uLl0gICAgICAgIExpc3QgcGFja2FnZXMgY29uY2lzZWx5LlxuIgorIiAgLVN8LS1zZWFyY2ggPHBhdHRlcm4+IC4uLiAgICAgICAgRmluZCBwYWNrYWdlKHMpIG93bmluZyBmaWxlKHMpLlxuIgorIiAgLUN8LS1hdWRpdCAgICAgICAgICAgICAgICAgICAgICAgQ2hlY2sgZm9yIGJyb2tlbiBwYWNrYWdlKHMpLlxuIgorIiAgLS1wcmludC1hcmNoaXRlY3R1cmUgICAgICAgICAgICAgUHJpbnQgZHBrZyBhcmNoaXRlY3R1cmUuXG4iCisiICAtLWNvbXBhcmUtdmVyc2lvbnMgPGE+IDxvcD4gPGI+ICBDb21wYXJlIHZlcnNpb24gbnVtYmVycyAtIHNlZSBiZWxvdy5cbiIKKyIgIC0tZm9yY2UtaGVscCAgICAgICAgICAgICAgICAgICAgIFNob3cgaGVscCBvbiBmb3JjaW5nLlxuIgorIiAgLURofC0tZGVidWc9aGVscCAgICAgICAgICAgICAgICAgU2hvdyBoZWxwIG9uIGRlYnVnZ2luZy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjExMyBzcmMvcXVlcnljbWQuYzo2MzEgc3JjL3RyaWdjbWQuYzo3NyBkcGtnLWRlYi9tYWluLmM6ODgKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjc3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIgIC1ofC0taGVscCAgICAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgICAgICAgICBTaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MTE4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJVc2UgZHBrZyAtYnwtLWJ1aWxkfC1jfC0tY29udGVudHN8LWV8LS1jb250cm9sfC1JfC0taW5mb3wtZnwtLWZpZWxkfFxuIgorIiAteHwtLWV4dHJhY3R8LVh8LS12ZXh0cmFjdHwtLWZzeXMtdGFyZmlsZSAgb24gYXJjaGl2ZXMgKHR5cGUgJXMgLS1oZWxwKS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjEyMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiRm9yIGludGVybmFsIHVzZTogZHBrZyAtLWFzc2VydC1zdXBwb3J0LXByZWRlcGVuZHMgfCAtLXByZWRlcC1wYWNrYWdlIHxcbiIKKyIgIC0tYXNzZXJ0LXdvcmtpbmctZXBvY2ggfCAtLWFzc2VydC1sb25nLWZpbGVuYW1lcyB8IC0tYXNzZXJ0LW11bHRpLWNvbnJlcC5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjEyOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT4gICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorIiAgLS1yb290PTxkaXJlY3Rvcnk+ICAgICAgICAgSW5zdGFsbCBvbiBhIGRpZmZlcmVudCByb290IGRpcmVjdG9yeS5cbiIKKyIgIC0taW5zdGRpcj08ZGlyZWN0b3J5PiAgICAgIENoYW5nZSBpbnN0YWxsYXRpb24gZGlyIHdpdGhvdXQgY2hhbmdpbmcgYWRtaW4gIgorImRpci5cbiIKKyIgIC0tcGF0aC1leGNsdWRlPTxwYXR0ZXJuPiAgIERvIG5vdCBpbnN0YWxsIHBhdGhzIHdoaWNoIG1hdGNoIGEgc2hlbGwgIgorInBhdHRlcm4uXG4iCisiICAtLXBhdGgtaW5jbHVkZT08cGF0dGVybj4gICBSZS1pbmNsdWRlIGEgcGF0dGVybiBhZnRlciBhIHByZXZpb3VzICIKKyJleGNsdXNpb24uXG4iCisiICAtT3wtLXNlbGVjdGVkLW9ubHkgICAgICAgICBTa2lwIHBhY2thZ2VzIG5vdCBzZWxlY3RlZCBmb3IgaW5zdGFsbC8iCisidXBncmFkZS5cbiIKKyIgIC1FfC0tc2tpcC1zYW1lLXZlcnNpb24gICAgIFNraXAgcGFja2FnZXMgd2hvc2Ugc2FtZSB2ZXJzaW9uIGlzIGluc3RhbGxlZC5cbiIKKyIgIC1HfC0tcmVmdXNlLWRvd25ncmFkZSAgICAgIFNraXAgcGFja2FnZXMgd2l0aCBlYXJsaWVyIHZlcnNpb24gdGhhbiAiCisiaW5zdGFsbGVkLlxuIgorIiAgLUJ8LS1hdXRvLWRlY29uZmlndXJlICAgICAgSW5zdGFsbCBldmVuIGlmIGl0IHdvdWxkIGJyZWFrIHNvbWUgb3RoZXIgIgorInBhY2thZ2UuXG4iCisiICAtLVtuby1ddHJpZ2dlcnMgICAgICAgICAgICBTa2lwIG9yIGZvcmNlIGNvbnNlcXVlbnRpYWwgdHJpZ2dlciAiCisicHJvY2Vzc2luZy5cbiIKKyIgIC0tbm8tZGVic2lnICAgICAgICAgICAgICAgIERvIG5vdCB0cnkgdG8gdmVyaWZ5IHBhY2thZ2Ugc2lnbmF0dXJlcy5cbiIKKyIgIC0tbm8tYWN0fC0tZHJ5LXJ1bnwtLXNpbXVsYXRlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBKdXN0IHNheSB3aGF0IHdlIHdvdWxkIGRvIC0gZG9uJ3QgZG8gaXQuXG4iCisiICAtRHwtLWRlYnVnPTxvY3RhbD4gICAgICAgICBFbmFibGUgZGVidWdnaW5nIChzZWUgLURoZWxwIG9yIC0tZGVidWc9aGVscCkuXG4iCisiICAtLXN0YXR1cy1mZCA8bj4gICAgICAgICAgICBTZW5kIHN0YXR1cyBjaGFuZ2UgdXBkYXRlcyB0byBmaWxlIGRlc2NyaXB0b3IgIgorIjxuPi5cbiIKKyIgIC0tbG9nPTxmaWxlbmFtZT4gICAgICAgICAgIExvZyBzdGF0dXMgY2hhbmdlcyBhbmQgYWN0aW9ucyB0byA8ZmlsZW5hbWU+LlxuIgorIiAgLS1pZ25vcmUtZGVwZW5kcz08cGFja2FnZT4sLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZ25vcmUgZGVwZW5kZW5jaWVzIGludm9sdmluZyA8cGFja2FnZT4uXG4iCisiICAtLWZvcmNlLS4uLiAgICAgICAgICAgICAgICBPdmVycmlkZSBwcm9ibGVtcyAoc2VlIC0tZm9yY2UtaGVscCkuXG4iCisiICAtLW5vLWZvcmNlLS4uLnwtLXJlZnVzZS0uLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3Agd2hlbiBwcm9ibGVtcyBlbmNvdW50ZXJlZC5cbiIKKyIgIC0tYWJvcnQtYWZ0ZXIgPG4+ICAgICAgICAgIEFib3J0IGFmdGVyIGVuY291bnRlcmluZyA8bj4gZXJyb3JzLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MTU0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21wYXJpc29uIG9wZXJhdG9ycyBmb3IgLS1jb21wYXJlLXZlcnNpb25zIGFyZTpcbiIKKyIgIGx0IGxlIGVxIG5lIGdlIGd0ICAgICAgICh0cmVhdCBlbXB0eSB2ZXJzaW9uIGFzIGVhcmxpZXIgdGhhbiBhbnkgIgorInZlcnNpb24pO1xuIgorIiAgbHQtbmwgbGUtbmwgZ2UtbmwgZ3QtbmwgKHRyZWF0IGVtcHR5IHZlcnNpb24gYXMgbGF0ZXIgdGhhbiBhbnkgdmVyc2lvbik7XG4iCisiICA8IDw8IDw9ID0gPj0gPj4gPiAgICAgICAob25seSBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIGNvbnRyb2wgZmlsZSAiCisic3ludGF4KS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjE2MQorIywgYy1mb3JtYXQKK21zZ2lkICJVc2UgYGRzZWxlY3QnIG9yIGBhcHRpdHVkZScgZm9yIHVzZXItZnJpZW5kbHkgcGFja2FnZSBtYW5hZ2VtZW50LlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MTcwCittc2dpZCAiIgorIlR5cGUgZHBrZyAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgaW5zdGFsbGluZyBhbmQgZGVpbnN0YWxsaW5nIHBhY2thZ2VzIFsqXTtcbiIKKyJVc2UgYGRzZWxlY3QnIG9yIGBhcHRpdHVkZScgZm9yIHVzZXItZnJpZW5kbHkgcGFja2FnZSBtYW5hZ2VtZW50O1xuIgorIlR5cGUgZHBrZyAtRGhlbHAgZm9yIGEgbGlzdCBvZiBkcGtnIGRlYnVnIGZsYWcgdmFsdWVzO1xuIgorIlR5cGUgZHBrZyAtLWZvcmNlLWhlbHAgZm9yIGEgbGlzdCBvZiBmb3JjaW5nIG9wdGlvbnM7XG4iCisiVHlwZSBkcGtnLWRlYiAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgbWFuaXB1bGF0aW5nICouZGViIGZpbGVzO1xuIgorIlxuIgorIk9wdGlvbnMgbWFya2VkIFsqXSBwcm9kdWNlIGEgbG90IG9mIG91dHB1dCAtIHBpcGUgaXQgdGhyb3VnaCBgbGVzcycgb3IgIgorImBtb3JlJyAhIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjE5Cittc2dpZCAiU2V0IGFsbCBmb3JjZSBvcHRpb25zIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjIxCittc2dpZCAiUmVwbGFjZSBhIHBhY2thZ2Ugd2l0aCBhIGxvd2VyIHZlcnNpb24iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjMKK21zZ2lkICJDb25maWd1cmUgYW55IHBhY2thZ2Ugd2hpY2ggbWF5IGhlbHAgdGhpcyBvbmUiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjUKK21zZ2lkICJQcm9jZXNzIGluY2lkZW50YWwgcGFja2FnZXMgZXZlbiB3aGVuIG9uIGhvbGQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjcKK21zZ2lkICJUcnkgdG8gKGRlKWluc3RhbGwgdGhpbmdzIGV2ZW4gd2hlbiBub3Qgcm9vdCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIyOQorbXNnaWQgIlBBVEggaXMgbWlzc2luZyBpbXBvcnRhbnQgcHJvZ3JhbXMsIHByb2JsZW1zIGxpa2VseSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzMQorbXNnaWQgIkluc3RhbGwgYSBwYWNrYWdlIGV2ZW4gaWYgaXQgZmFpbHMgYXV0aGVudGljaXR5IGNoZWNrIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjMzCittc2dpZCAiUHJvY2VzcyBldmVuIHBhY2thZ2VzIHdpdGggd3JvbmcgdmVyc2lvbnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzUKK21zZ2lkICJPdmVyd3JpdGUgYSBmaWxlIGZyb20gb25lIHBhY2thZ2Ugd2l0aCBhbm90aGVyIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjM3Cittc2dpZCAiT3ZlcndyaXRlIGEgZGl2ZXJ0ZWQgZmlsZSB3aXRoIGFuIHVuZGl2ZXJ0ZWQgdmVyc2lvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzOQorbXNnaWQgIk92ZXJ3cml0ZSBvbmUgcGFja2FnZSdzIGRpcmVjdG9yeSB3aXRoIGFub3RoZXIncyBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjQxCittc2dpZCAiRG8gbm90IHBlcmZvcm0gc2FmZSBJL08gb3BlcmF0aW9ucyB3aGVuIHVucGFja2luZyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI0MworbXNnaWQgIkFsd2F5cyB1c2UgdGhlIG5ldyBjb25maWcgZmlsZXMsIGRvbid0IHByb21wdCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI0NQorbXNnaWQgIkFsd2F5cyB1c2UgdGhlIG9sZCBjb25maWcgZmlsZXMsIGRvbid0IHByb21wdCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI0OAorbXNnaWQgIiIKKyJVc2UgdGhlIGRlZmF1bHQgb3B0aW9uIGZvciBuZXcgY29uZmlnIGZpbGVzIGlmIG9uZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICBpcyBhdmFpbGFibGUsIGRvbid0IHByb21wdC4gSWYgbm8gZGVmYXVsdCBjYW4gYmUgIgorImZvdW5kLFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICB5b3Ugd2lsbCBiZSBwcm9tcHRlZCB1bmxlc3Mgb25lIG9mIHRoZSBjb25mb2xkIG9yXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmZuZXcgb3B0aW9ucyBpcyBhbHNvIGdpdmVuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjUzCittc2dpZCAiQWx3YXlzIGluc3RhbGwgbWlzc2luZyBjb25maWcgZmlsZXMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNTUKK21zZ2lkICJPZmZlciB0byByZXBsYWNlIGNvbmZpZyBmaWxlcyB3aXRoIG5vIG5ldyB2ZXJzaW9ucyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI1NworbXNnaWQgIlByb2Nlc3MgZXZlbiBwYWNrYWdlcyB3aXRoIHdyb25nIG9yIG5vIGFyY2hpdGVjdHVyZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI1OQorbXNnaWQgIkluc3RhbGwgZXZlbiBpZiBpdCB3b3VsZCBicmVhayBhbm90aGVyIHBhY2thZ2UiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNjEKK21zZ2lkICJBbGxvdyBpbnN0YWxsYXRpb24gb2YgY29uZmxpY3RpbmcgcGFja2FnZXMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNjMKK21zZ2lkICJUdXJuIGFsbCBkZXBlbmRlbmN5IHByb2JsZW1zIGludG8gd2FybmluZ3MiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNjUKK21zZ2lkICJUdXJuIGRlcGVuZGVuY3kgdmVyc2lvbiBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjY3Cittc2dpZCAiUmVtb3ZlIHBhY2thZ2VzIHdoaWNoIHJlcXVpcmUgaW5zdGFsbGF0aW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjY5Cittc2dpZCAiUmVtb3ZlIGFuIGVzc2VudGlhbCBwYWNrYWdlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjgxCittc2dpZCAiR2VuZXJhbGx5IGhlbHBmdWwgcHJvZ3Jlc3MgaW5mb3JtYXRpb24iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODIKK21zZ2lkICJJbnZvY2F0aW9uIGFuZCBzdGF0dXMgb2YgbWFpbnRhaW5lciBzY3JpcHRzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjgzCittc2dpZCAiT3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg0Cittc2dpZCAiTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODUKK21zZ2lkICJPdXRwdXQgZm9yIGVhY2ggY29uZmlndXJhdGlvbiBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg2Cittc2dpZCAiTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggY29uZmlndXJhdGlvbiBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg3Cittc2dpZCAiRGVwZW5kZW5jaWVzIGFuZCBjb25mbGljdHMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODgKK21zZ2lkICJMb3RzIG9mIGRlcGVuZGVuY2llcy9jb25mbGljdHMgb3V0cHV0IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg5Cittc2dpZCAiVHJpZ2dlciBhY3RpdmF0aW9uIGFuZCBwcm9jZXNzaW5nIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjkwCittc2dpZCAiTG90cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjkxCittc2dpZCAiU2lsbHkgYW1vdW50cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjkyCittc2dpZCAiTG90cyBvZiBkcml2ZWwgYWJvdXQgZWcgdGhlIGRwa2cvaW5mbyBkaXJlY3RvcnkiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyOTMKK21zZ2lkICJJbnNhbmUgYW1vdW50cyBvZiBkcml2ZWwiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzozMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzIGRlYnVnZ2luZyBvcHRpb24sIC0tZGVidWc9PG9jdGFsPiBvciAtRDxvY3RhbD46XG4iCisiXG4iCisiIE51bWJlciAgUmVmLiBpbiBzb3VyY2UgICBEZXNjcmlwdGlvblxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MzExCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJEZWJ1Z2dpbmcgb3B0aW9ucyBjYW4gYmUgbWl4ZWQgdXNpbmcgYml0d2lzZS1vci5cbiIKKyJOb3RlIHRoYXQgdGhlIG1lYW5pbmdzIGFuZCB2YWx1ZXMgYXJlIHN1YmplY3QgdG8gY2hhbmdlLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MzE5Cittc2dpZCAiLS1kZWJ1ZyByZXF1aXJlcyBhbiBvY3RhbCBhcmd1bWVudCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjM0OAorIywgYy1mb3JtYXQKK21zZ2lkICJudWxsIHBhY2thZ2UgbmFtZSBpbiAtLWlnbm9yZS1kZXBlbmRzIGNvbW1hLXNlcGFyYXRlZCBsaXN0IGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MzU0CisjLCBjLWZvcm1hdAorbXNnaWQgIi0taWdub3JlLWRlcGVuZHMgcmVxdWlyZXMgYSBsZWdhbCBwYWNrYWdlIG5hbWUuIGAlLjI1MHMnIGlzIG5vdDsgJXMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzozNzEgc3JjL21haW4uYzozODEgc3JjL21haW4uYzo2NDkgZHBrZy1zcGxpdC9tYWluLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgaW50ZWdlciBmb3IgLS0lczogYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzo0MzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgZXhlY3V0aW5nIGhvb2sgJyVzJywgZXhpdCBjb2RlICVkIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6NDY1Cittc2dpZCAic3RhdHVzIGxvZ2dlciIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjQ4MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXMgZm9yY2luZyBvcHRpb25zIC0gY29udHJvbCBiZWhhdmlvdXIgd2hlbiBwcm9ibGVtcyBmb3VuZDpcbiIKKyIgIHdhcm4gYnV0IGNvbnRpbnVlOiAgLS1mb3JjZS08dGhpbmc+LDx0aGluZz4sLi4uXG4iCisiICBzdG9wIHdpdGggZXJyb3I6ICAgIC0tcmVmdXNlLTx0aGluZz4sPHRoaW5nPiwuLi4gfCAtLW5vLWZvcmNlLTx0aGluZz4sLi4uXG4iCisiIEZvcmNpbmcgdGhpbmdzOlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6NDkwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJXQVJOSU5HIC0gdXNlIG9mIG9wdGlvbnMgbWFya2VkIFshXSBjYW4gc2VyaW91c2x5IGRhbWFnZSB5b3VyIGluc3RhbGxhdGlvbi5cbiIKKyJGb3JjaW5nIG9wdGlvbnMgbWFya2VkIFsqXSBhcmUgZW5hYmxlZCBieSBkZWZhdWx0LlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6NTA0CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gZm9yY2UvcmVmdXNlIG9wdGlvbiBgJS4qcyciCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzo1MTMKKyMsIGMtZm9ybWF0Cittc2dpZCAib2Jzb2xldGUgZm9yY2UvcmVmdXNlIG9wdGlvbiAnJXMnXG4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzo2NDMKK21zZ2lkICItLWNvbW1hbmQtZmQgdGFrZXMgb25lIGFyZ3VtZW50LCBub3QgemVybyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjY0NQorbXNnaWQgIi0tY29tbWFuZC1mZCBvbmx5IHRha2VzIG9uZSBhcmd1bWVudCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjY1MQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBvcGVuIGAlaScgZm9yIHN0cmVhbSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjY3NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVvZiBiZWZvcmUgZW5kIG9mIGxpbmUgJWQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzo3MTkgc3JjL21haW4uYzo3NDEgc3JjL3F1ZXJ5Y21kLmM6NjkyIHNyYy9zdGF0Y21kLmM6Mzc5CisjOiBkcGtnLWRlYi9tYWluLmM6MjAxIGRwa2ctc3BsaXQvbWFpbi5jOjE2MworbXNnaWQgIm5lZWQgYW4gYWN0aW9uIG9wdGlvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcGFja2FnZXMuYzoxMTMKK21zZ2lkICIiCisieW91IG11c3Qgc3BlY2lmeSBwYWNrYWdlcyBieSB0aGVpciBvd24gbmFtZXMsIG5vdCBieSBxdW90aW5nIHRoZSBuYW1lcyBvZiAiCisidGhlIGZpbGVzIHRoZXkgY29tZSBpbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcGFja2FnZXMuYzoxMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyAtLXBlbmRpbmcgZG9lcyBub3QgdGFrZSBhbnkgbm9uLW9wdGlvbiBhcmd1bWVudHMiCittc2dzdHIgIiIKKworIzogc3JjL3BhY2thZ2VzLmM6MTM4IHNyYy9xdWVyeWNtZC5jOjM3NSBzcmMvcXVlcnljbWQuYzo1NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhdCBsZWFzdCBvbmUgcGFja2FnZSBuYW1lIGFyZ3VtZW50IgorbXNnc3RyICIiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjE3OQorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlICVzIGxpc3RlZCBtb3JlIHRoYW4gb25jZSwgb25seSBwcm9jZXNzaW5nIG9uY2UuXG4iCittc2dzdHIgIiIKKworIzogc3JjL3BhY2thZ2VzLmM6MTgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJNb3JlIHRoYW4gb25lIGNvcHkgb2YgcGFja2FnZSAlcyBoYXMgYmVlbiB1bnBhY2tlZFxuIgorIiBpbiB0aGlzIHJ1biAhICBPbmx5IGNvbmZpZ3VyaW5nIGl0IG9uY2UuXG4iCittc2dzdHIgIiIKKworIzogc3JjL3BhY2thZ2VzLmM6MjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJwYWNrYWdlICUuMjUwcyBpcyBub3QgcmVhZHkgZm9yIHRyaWdnZXIgcHJvY2Vzc2luZ1xuIgorIiAoY3VycmVudCBzdGF0dXMgYCUuMjUwcycgd2l0aCBubyBwZW5kaW5nIHRyaWdnZXJzKSIKK21zZ3N0ciAiIgorCisjOiBzcmMvcGFja2FnZXMuYzozMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIHdoaWNoIHByb3ZpZGVzICVzIGlzIHRvIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL3BhY2thZ2VzLmM6MzM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjM1NAorIywgYy1mb3JtYXQKK21zZ2lkICIgIFZlcnNpb24gb2YgJXMgb24gc3lzdGVtIGlzICVzLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjM3NgorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgd2hpY2ggcHJvdmlkZXMgJXMgYXdhaXRzIHRyaWdnZXIgcHJvY2Vzc2luZy5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcGFja2FnZXMuYzozODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIGF3YWl0cyB0cmlnZ2VyIHByb2Nlc3NpbmcuXG4iCittc2dzdHIgIiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDEwCisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IGFsc28gY29uZmlndXJpbmcgYCVzJyAocmVxdWlyZWQgYnkgYCVzJylcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIHdoaWNoIHByb3ZpZGVzICVzIGlzIG5vdCBjb25maWd1cmVkIHlldC5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIGlzIG5vdCBjb25maWd1cmVkIHlldC5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIHdoaWNoIHByb3ZpZGVzICVzIGlzIG5vdCBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDM1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQ3MgorIywgYy1mb3JtYXQKK21zZ2lkICIgJXMgKCVzKSBicmVha3MgJXMgYW5kIGlzICVzLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQ3OAorIywgYy1mb3JtYXQKK21zZ2lkICIgICVzICglcykgcHJvdmlkZXMgJXMuXG4iCittc2dzdHIgIiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDgyCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgVmVyc2lvbiBvZiAlcyB0byBiZSBjb25maWd1cmVkIGlzICVzLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjU5NgorbXNnaWQgIiBkZXBlbmRzIG9uICIKK21zZ3N0ciAiemF2aXNpIG8iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjYwMgorbXNnaWQgIjsgaG93ZXZlcjpcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjcxCisjLCBjLWZvcm1hdAorbXNnaWQgIi4uLi8lcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjkxCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGVuc3VyaW5nIGAlLjI1MHMnIGRvZXNuJ3QgZXhpc3QiCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5OQorbXNnaWQgInNwbGl0IHBhY2thZ2UgcmVhc3NlbWJseSIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEwOAorbXNnaWQgInJlYXNzZW1ibGVkIHBhY2thZ2UgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEzMworIywgYy1mb3JtYXQKK21zZ2lkICJBdXRoZW50aWNhdGluZyAlcyAuLi5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEzOQorbXNnaWQgInBhY2thZ2Ugc2lnbmF0dXJlIHZlcmlmaWNhdGlvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE0NgorIywgYy1mb3JtYXQKK21zZ2lkICJWZXJpZmljYXRpb24gb24gcGFja2FnZSAlcyBmYWlsZWQhIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTQ4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJWZXJpZmljYXRpb24gb24gcGFja2FnZSAlcyBmYWlsZWQsXG4iCisiYnV0IGluc3RhbGxpbmcgYW55d2F5IGFzIHlvdSByZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFzc2VkXG4iCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxNjUgZHBrZy1kZWIvaW5mby5jOjgxCittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSB0ZW1wb3JhcnkgZGlyZWN0b3J5IgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MjA1CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgJXMgaGFzIHRvbyBtYW55IENvbmZsaWN0cy9SZXBsYWNlcyBwYWlycyIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjI0MworIywgYy1mb3JtYXQKK21zZ2lkICJvbGQgdmVyc2lvbiBvZiBwYWNrYWdlIGhhcyBvdmVybHktbG9uZyBpbmZvIGZpbGUgbmFtZSBzdGFydGluZyBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjI4MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIG9ic29sZXRlIGluZm8gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjI4NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCAoc3VwcG9zZWQpIG5ldyBpbmZvIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyOTYKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiB0ZW1wIGNvbnRyb2wgZGlyZWN0b3J5IgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzA3CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgY29udGFpbnMgb3Zlcmx5LWxvbmcgY29udHJvbCBpbmZvIGZpbGUgbmFtZSAoc3RhcnRpbmcgYCUuNTBzJykiCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBjb250cm9sIGluZm8gY29udGFpbmVkIGRpcmVjdG9yeSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMxNgorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGNvbnRyb2wgaW5mbyBybWRpciBvZiBgJS4yNTBzJyBkaWRuJ3Qgc2F5IG5vdCBhIGRpciIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMyNgorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlICVzIGNvbnRhaW5lZCBsaXN0IGFzIGluZm8gZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMzMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgaW5mbyBmaWxlIGAlLjI1MHMnIGFzIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzQ5IHNyYy9yZW1vdmUuYzoxOTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSBjb250cm9sIGluZm8gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjQxMQorbXNnaWQgImNhbm5vdCBhY2Nlc3MgYXJjaGl2ZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjQzMworbXNnaWQgInBhY2thZ2UgY29udHJvbCBpbmZvcm1hdGlvbiBleHRyYWN0aW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDYwCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlY29yZGVkIGluZm8gYWJvdXQgJXMgZnJvbSAlcy5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjQ2OAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGFyY2hpdGVjdHVyZSAoJXMpIGRvZXMgbm90IG1hdGNoIHN5c3RlbSAoJXMpIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTIzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiByZWdhcmRpbmcgJXMgY29udGFpbmluZyAlcywgcHJlLWRlcGVuZGVuY3kgcHJvYmxlbTpcbiIKKyIlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjUyNgorIywgYy1mb3JtYXQKK21zZ2lkICJwcmUtZGVwZW5kZW5jeSBwcm9ibGVtIC0gbm90IGluc3RhbGxpbmcgJS4yNTBzIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTI3Cittc2dpZCAiaWdub3JpbmcgcHJlLWRlcGVuZGVuY3kgcHJvYmxlbSEiCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHJlcGFyaW5nIHRvIHJlcGxhY2UgJXMgJXMgKHVzaW5nICVzKSAuLi5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjU0OQorIywgYy1mb3JtYXQKK21zZ2lkICJVbnBhY2tpbmcgJXMgKGZyb20gJXMpIC4uLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTgwCisjLCBjLWZvcm1hdAorbXNnaWQgIm5hbWUgb2YgY29uZmZpbGUgKHN0YXJ0aW5nIGAlLjI1MHMnKSBpcyB0b28gbG9uZyAoPiVkIGNoYXJhY3RlcnMpIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjMzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDcxCisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWQgZXJyb3IgaW4gJS4yNTBzIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjM1CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgJS4yNTBzIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjM3CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHRyeWluZyB0byBvcGVuICUuMjUwcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjY3OAorIywgYy1mb3JtYXQKK21zZ2lkICJEZS1jb25maWd1cmluZyAlcywgdG8gYWxsb3cgcmVtb3ZhbCBvZiAlcyAuLi5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjY4MQorIywgYy1mb3JtYXQKK21zZ2lkICJEZS1jb25maWd1cmluZyAlcyAuLi5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjc1NQorIywgYy1mb3JtYXQKK21zZ2lkICJVbnBhY2tpbmcgcmVwbGFjZW1lbnQgJS4yNTBzIC4uLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6ODQwCittc2dpZCAicGFja2FnZSBmaWxlc3lzdGVtIGFyY2hpdmUgZXh0cmFjdGlvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjg1NAorbXNnaWQgImVycm9yIHJlYWRpbmcgZHBrZy1kZWIgdGFyIG91dHB1dCIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjg1NgorbXNnaWQgImNvcnJ1cHRlZCBmaWxlc3lzdGVtIHRhcmZpbGUgLSBjb3JydXB0ZWQgcGFja2FnZSBhcmNoaXZlIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6ODU5Cittc2dpZCAiZHBrZy1kZWI6IHphcCBwb3NzaWJsZSB0cmFpbGluZyB6ZXJvcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjkxOQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgc3RhdCBvbGQgZmlsZSAnJS4yNTBzJyBzbyBub3QgZGVsZXRpbmcgaXQ6ICVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTI1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkZWxldGUgb2xkIGRpcmVjdG9yeSAnJS4yNTBzJzogJXMiCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAib2xkIGNvbmZmaWxlICclLjI1MHMnIHdhcyBhbiBlbXB0eSBkaXJlY3RvcnkgKGFuZCBoYXMgbm93IGJlZW4gZGVsZXRlZCkiCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgb3RoZXIgbmV3IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm9sZCBmaWxlICclLjI1MHMnIGlzIHRoZSBzYW1lIGFzIHNldmVyYWwgbmV3IGZpbGVzISAoYm90aCAnJS4yNTBzJyBhbmQgIgorIiclLjI1MHMnKSIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEwMjUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNlY3VyZWx5IHJlbW92ZSBvbGQgZmlsZSAnJS4yNTBzJzogJXMiCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxMjA2CisjLCBjLWZvcm1hdAorbXNnaWQgIihOb3RpbmcgZGlzYXBwZWFyYW5jZSBvZiAlcywgd2hpY2ggaGFzIGJlZW4gY29tcGxldGVseSByZXBsYWNlZC4pXG4iCittc2dzdHIgIiIKKworIy4gVFJBTlNMQVRPUlM6IFRoaXMgaXMgdGhlIGhlYWRlciB0aGF0IGFwcGVhcnMgb24gJ2Rwa2ctcXVlcnkgLWwnLiBUaGUKKyMuICogc3RyaW5nIHNob3VsZCByZW1haW4gdW5kZXIgODAgY2hhcmFjdGVycy4gVGhlIHVwcGVyY2FzZSBsZXR0ZXJzIGluCisjLiAqIHRoZSBzdGF0ZSB2YWx1ZXMgZGVub3RlIHRoZSBhYmJyZXZpYXRlZCBsZXR0ZXIgdGhhdCB3aWxsIGFwcGVhciBvbgorIy4gKiB0aGUgZmlyc3QgdGhyZWUgY29sdW1ucywgd2hpY2ggc2hvdWxkIGlkZWFsbHkgbWF0Y2ggdGhlIEVuZ2xpc2ggb25lCisjLiAqIChlLmcuIFJlbW92ZSDihpIgc3VwUmltZWl4KSwgc2VlIGRwa2ctcXVlcnkoMSkgZm9yIGZ1cnRoZXIgZGV0YWlscy4gVGhlCisjLiAqIHRyYW5zbGF0ZWQgbWVzc2FnZSBjYW4gdXNlIGFkZGl0aW9uYWwgbGluZXMgaWYgbmVlZGVkLgorIzogc3JjL3F1ZXJ5Y21kLmM6MTQ5Cittc2dpZCAiIgorIkRlc2lyZWQ9VW5rbm93bi9JbnN0YWxsL1JlbW92ZS9QdXJnZS9Ib2xkXG4iCisifCBTdGF0dXM9Tm90L0luc3QvQ29uZi1maWxlcy9VbnBhY2tlZC9oYWxGLWNvbmYvSGFsZi1pbnN0L3RyaWctYVdhaXQvVHJpZy0iCisicGVuZFxuIgorInwvIEVycj89KG5vbmUpL1JlaW5zdC1yZXF1aXJlZCAoU3RhdHVzLEVycjogdXBwZXJjYXNlPWJhZClcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcXVlcnljbWQuYzoxNTMKK21zZ2lkICJOYW1lIgorbXNnc3RyICJOYXppdiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MTUzCittc2dpZCAiVmVyc2lvbiIKK21zZ3N0ciAiVmVyemlqYSIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MTU0Cittc2dpZCAiRGVzY3JpcHRpb24iCittc2dzdHIgIk9waXMiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI0NiBzcmMvcXVlcnljbWQuYzo1MTEgc3JjL3NlbGVjdC5jOjc1CisjLCBjLWZvcm1hdAorbXNnaWQgIk5vIHBhY2thZ2VzIGZvdW5kIG1hdGNoaW5nICVzLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI3MworIywgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnNpb24gYnkgJXMgZnJvbTogJXNcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJzaW9uIGJ5ICVzIHRvOiAlc1xuIgorbXNnc3RyICIiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI3OAorIywgYy1mb3JtYXQKK21zZ2lkICJsb2NhbCBkaXZlcnNpb24gZnJvbTogJXNcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9jYWwgZGl2ZXJzaW9uIHRvOiAlc1xuIgorbXNnc3RyICIiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjMwOQorbXNnaWQgIi0tc2VhcmNoIG5lZWRzIGF0IGxlYXN0IG9uZSBmaWxlIG5hbWUgcGF0dGVybiBhcmd1bWVudCIKK21zZ3N0ciAiIgorCisjOiBzcmMvcXVlcnljbWQuYzozNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IG5vIHBhdGggZm91bmQgbWF0Y2hpbmcgcGF0dGVybiAlcy5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcXVlcnljbWQuYzozOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSBgJXMnIGlzIG5vdCBpbnN0YWxsZWQgYW5kIG5vIGluZm8gaXMgYXZhaWxhYmxlLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQwMQorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlIGAlcycgaXMgbm90IGF2YWlsYWJsZS5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MTAgc3JjL3F1ZXJ5Y21kLmM6NTg1CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgYCVzJyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQxOAorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlIGAlcycgZG9lcyBub3QgY29udGFpbiBhbnkgZmlsZXMgKCEpXG4iCittc2dzdHIgIiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDI1CisjLCBjLWZvcm1hdAorbXNnaWQgImxvY2FsbHkgZGl2ZXJ0ZWQgdG86ICVzXG4iCittc2dzdHIgIiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDI4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgZGl2ZXJ0cyBvdGhlcnMgdG86ICVzXG4iCittc2dzdHIgIiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDMxCisjLCBjLWZvcm1hdAorbXNnaWQgImRpdmVydGVkIGJ5ICVzIHRvOiAlc1xuIgorbXNnc3RyICIiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQ1MgorbXNnaWQgIiIKKyJVc2UgZHBrZyAtLWluZm8gKD0gZHBrZy1kZWIgLS1pbmZvKSB0byBleGFtaW5lIGFyY2hpdmUgZmlsZXMsXG4iCisiYW5kIGRwa2cgLS1jb250ZW50cyAoPSBkcGtnLWRlYiAtLWNvbnRlbnRzKSB0byBsaXN0IHRoZWlyIGNvbnRlbnRzLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjU3MAorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIHRha2VzIGF0IG1vc3QgdHdvIGFyZ3VtZW50cyIKK21zZ3N0ciAiIgorCisjOiBzcmMvcXVlcnljbWQuYzo1NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29udHJvbCBmaWxlIGNvbnRhaW5zICVjIgorbXNnc3RyICIiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjYwMAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuICVzIHBhY2thZ2UgbWFuYWdlbWVudCBwcm9ncmFtIHF1ZXJ5IHRvb2wgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiRGViaWFub3YgYCVzJyBwcm9ncmFtIHphIHJ1a292YW5qZSBwYWtldGltYS4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjYxOQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtc3wtLXN0YXR1cyA8cGFja2FnZT4gLi4uICAgICAgICBEaXNwbGF5IHBhY2thZ2Ugc3RhdHVzIGRldGFpbHMuXG4iCisiICAtcHwtLXByaW50LWF2YWlsIDxwYWNrYWdlPiAuLi4gICBEaXNwbGF5IGF2YWlsYWJsZSB2ZXJzaW9uIGRldGFpbHMuXG4iCisiICAtTHwtLWxpc3RmaWxlcyA8cGFja2FnZT4gLi4uICAgICBMaXN0IGZpbGVzIGBvd25lZCcgYnkgcGFja2FnZShzKS5cbiIKKyIgIC1sfC0tbGlzdCBbPHBhdHRlcm4+IC4uLl0gICAgICAgIExpc3QgcGFja2FnZXMgY29uY2lzZWx5LlxuIgorIiAgLVd8LS1zaG93IFs8cGF0dGVybj4gLi4uXSAgICAgICAgU2hvdyBpbmZvcm1hdGlvbiBvbiBwYWNrYWdlKHMpLlxuIgorIiAgLVN8LS1zZWFyY2ggPHBhdHRlcm4+IC4uLiAgICAgICAgRmluZCBwYWNrYWdlKHMpIG93bmluZyBmaWxlKHMpLlxuIgorIiAgLWN8LS1jb250cm9sLXBhdGggPHBhY2thZ2U+IFs8ZmlsZT5dXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQcmludCBwYXRoIGZvciBwYWNrYWdlIGNvbnRyb2wgZmlsZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcXVlcnljbWQuYzo2MzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgICAgICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyIgIC1mfC0tc2hvd2Zvcm1hdD08Zm9ybWF0PiAgICAgICAgIFVzZSBhbHRlcm5hdGl2ZSBmb3JtYXQgZm9yIC0tc2hvdy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcXVlcnljbWQuYzo2NDIgZHBrZy1kZWIvbWFpbi5jOjExMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiRm9ybWF0IHN5bnRheDpcbiIKKyIgIEEgZm9ybWF0IGlzIGEgc3RyaW5nIHRoYXQgd2lsbCBiZSBvdXRwdXQgZm9yIGVhY2ggcGFja2FnZS4gVGhlIGZvcm1hdFxuIgorIiAgY2FuIGluY2x1ZGUgdGhlIHN0YW5kYXJkIGVzY2FwZSBzZXF1ZW5jZXMgXFxuIChuZXdsaW5lKSwgXFxyIChjYXJyaWFnZVxuIgorIiAgcmV0dXJuKSBvciBcXFxcIChwbGFpbiBiYWNrc2xhc2gpLiBQYWNrYWdlIGluZm9ybWF0aW9uIGNhbiBiZSBpbmNsdWRlZFxuIgorIiAgYnkgaW5zZXJ0aW5nIHZhcmlhYmxlIHJlZmVyZW5jZXMgdG8gcGFja2FnZSBmaWVsZHMgdXNpbmcgdGhlICR7dmFyWzsiCisid2lkdGhdfVxuIgorIiAgc3ludGF4LiBGaWVsZHMgd2lsbCBiZSByaWdodC1hbGlnbmVkIHVubGVzcyB0aGUgd2lkdGggaXMgbmVnYXRpdmUgaW4gIgorIndoaWNoXG4iCisiICBjYXNlIGxlZnQgYWxpZ25tZW50IHdpbGwgYmUgdXNlZC5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcXVlcnljbWQuYzo2NTYKK21zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IHF1ZXJ5aW5nIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcmVtb3ZlLmM6ODgKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgcmVxdWVzdCB0byByZW1vdmUgJS4yNTBzIHdoaWNoIGlzbid0IGluc3RhbGxlZC4iCittc2dzdHIgIiIKKworIzogc3JjL3JlbW92ZS5jOjk1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpZ25vcmluZyByZXF1ZXN0IHRvIHJlbW92ZSAlLjI1MHMsIG9ubHkgdGhlIGNvbmZpZ1xuIgorIiBmaWxlcyBvZiB3aGljaCBhcmUgb24gdGhlIHN5c3RlbS4gVXNlIC0tcHVyZ2UgdG8gcmVtb3ZlIHRoZW0gdG9vLiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcmVtb3ZlLmM6MTAzCittc2dpZCAiVGhpcyBpcyBhbiBlc3NlbnRpYWwgcGFja2FnZSAtIGl0IHNob3VsZCBub3QgYmUgcmVtb3ZlZC4iCittc2dzdHIgIiIKKworIzogc3JjL3JlbW92ZS5jOjEyOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogZGVwZW5kZW5jeSBwcm9ibGVtcyBwcmV2ZW50IHJlbW92YWwgb2YgJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKworIzogc3JjL3JlbW92ZS5jOjEzMAorbXNnaWQgImRlcGVuZGVuY3kgcHJvYmxlbXMgLSBub3QgcmVtb3ZpbmciCittc2dzdHIgIiIKKworIzogc3JjL3JlbW92ZS5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogJXM6IGRlcGVuZGVuY3kgcHJvYmxlbXMsIGJ1dCByZW1vdmluZyBhbnl3YXkgYXMgeW91IHJlcXVlc3RlZDpcbiIKKyIlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvcmVtb3ZlLmM6MTQyCittc2dpZCAiIgorIlBhY2thZ2UgaXMgaW4gYSB2ZXJ5IGJhZCBpbmNvbnNpc3RlbnQgc3RhdGUgLSB5b3Ugc2hvdWxkXG4iCisiIHJlaW5zdGFsbCBpdCBiZWZvcmUgYXR0ZW1wdGluZyBhIHJlbW92YWwuIgorbXNnc3RyICIiCisKKyM6IHNyYy9yZW1vdmUuYzoxNDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiV291bGQgcmVtb3ZlIG9yIHB1cmdlICVzIC4uLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9yZW1vdmUuYzoxNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVtb3ZpbmcgJXMgLi4uXG4iCittc2dzdHIgIiIKKworIzogc3JjL3JlbW92ZS5jOjI3NSBzcmMvcmVtb3ZlLmM6MzY2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ3aGlsZSByZW1vdmluZyAlLjI1MHMsIHVuYWJsZSB0byByZW1vdmUgZGlyZWN0b3J5ICclLjI1MHMnOiAlcyAtIGRpcmVjdG9yeSAiCisibWF5IGJlIGEgbW91bnQgcG9pbnQ/IgorbXNnc3RyICIiCisKKyM6IHNyYy9yZW1vdmUuYzoyODkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNlY3VyZWx5IHJlbW92ZSAnJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvcmVtb3ZlLmM6MzYxCisjLCBjLWZvcm1hdAorbXNnaWQgIndoaWxlIHJlbW92aW5nICUuMjUwcywgZGlyZWN0b3J5ICclLjI1MHMnIG5vdCBlbXB0eSBzbyBub3QgcmVtb3ZlZC4iCittc2dzdHIgIiIKKworIzogc3JjL3JlbW92ZS5jOjM4MworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVtb3ZlICclLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9yZW1vdmUuYzo0MDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHVyZ2luZyBjb25maWd1cmF0aW9uIGZpbGVzIGZvciAlcyAuLi5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcmVtb3ZlLmM6NDU5CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZW1vdmUgb2xkIGNvbmZpZyBmaWxlIGAlLjI1MHMnICg9IGAlLjI1MHMnKSIKK21zZ3N0ciAiIgorCisjOiBzcmMvcmVtb3ZlLmM6NDc0CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZWFkIGNvbmZpZyBmaWxlIGRpciBgJS4yNTBzJyAoZnJvbSBgJS4yNTBzJykiCittc2dzdHIgIiIKKworIzogc3JjL3JlbW92ZS5jOjUxMAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVtb3ZlIG9sZCBiYWNrdXAgY29uZmlnIGZpbGUgYCUuMjUwcycgKG9mIGAlLjI1MHMnKSIKK21zZ3N0ciAiIgorCisjOiBzcmMvcmVtb3ZlLmM6NTY4Cittc2dpZCAiY2Fubm90IHJlbW92ZSBvbGQgZmlsZXMgbGlzdCIKK21zZ3N0ciAiIgorCisjOiBzcmMvcmVtb3ZlLmM6NTc0Cittc2dpZCAiY2FuJ3QgcmVtb3ZlIG9sZCBwb3N0cm0gc2NyaXB0IgorbXNnc3RyICIiCisKKyM6IHNyYy9zZWxlY3QuYzoxMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgaW4gcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQiCittc2dzdHIgIiIKKworIzogc3JjL3NlbGVjdC5jOjExNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBsaW5lIGluIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICIiCisKKyM6IHNyYy9zZWxlY3QuYzoxMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgYWZ0ZXIgcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQiCittc2dzdHIgIiIKKworIzogc3JjL3NlbGVjdC5jOjEyMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBsaW5lIGFmdGVyIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICIiCisKKyM6IHNyYy9zZWxlY3QuYzoxMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBkYXRhIGFmdGVyIHBhY2thZ2UgYW5kIHNlbGVjdGlvbiBhdCBsaW5lICVkIgorbXNnc3RyICIiCisKKyM6IHNyYy9zZWxlY3QuYzoxMzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWxsZWdhbCBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZDogJS4yNTBzIgorbXNnc3RyICIiCisKKyM6IHNyYy9zZWxlY3QuYzoxNDMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biB3YW50ZWQgc3RhdHVzIGF0IGxpbmUgJWQ6ICUuMjUwcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvc2VsZWN0LmM6MTQ5Cittc2dpZCAicmVhZCBlcnJvciBvbiBzdGFuZGFyZCBpbnB1dCIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGNtZC5jOjUyCittc2dpZCAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBvdmVycmlkaW5nIGZpbGUgc3RhdCBpbmZvcm1hdGlvbi4iCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRjbWQuYzo2MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29weXJpZ2h0IChDKSAyMDAwLCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDA2LTIwMDkgR3VpbGxlbSBKb3Zlci5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGNtZC5jOjgxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC0tYWRkIDxvd25lcj4gPGdyb3VwPiA8bW9kZT4gPGZpbGU+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkIGEgbmV3IGVudHJ5IGludG8gdGhlIGRhdGFiYXNlLlxuIgorIiAgLS1yZW1vdmUgPGZpbGU+ICAgICAgICAgIHJlbW92ZSBmaWxlIGZyb20gdGhlIGRhdGFiYXNlLlxuIgorIiAgLS1saXN0IFs8Z2xvYi1wYXR0ZXJuPl0gIGxpc3QgY3VycmVudCBvdmVycmlkZXMgaW4gdGhlIGRhdGFiYXNlLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0Y21kLmM6ODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgc2V0IHRoZSBkaXJlY3Rvcnkgd2l0aCB0aGUgc3RhdG92ZXJyaWRlIGZpbGUuXG4iCisiICAtLXVwZGF0ZSAgICAgICAgICAgICAgICAgaW1tZWRpYXRlbHkgdXBkYXRlIGZpbGUgcGVybWlzc2lvbnMuXG4iCisiICAtLWZvcmNlICAgICAgICAgICAgICAgICAgZm9yY2UgYW4gYWN0aW9uIGV2ZW4gaWYgYSBzYW5pdHkgY2hlY2sgZmFpbHMuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgcXVpZXQgb3BlcmF0aW9uLCBtaW5pbWFsIG91dHB1dC5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRjbWQuYzoxMTYKK21zZ2lkICJzdHJpcHBpbmcgdHJhaWxpbmcgLyIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGNtZC5jOjIwNworbXNnaWQgImNhbm5vdCBvcGVuIG5ldyBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGNtZC5jOjIyMgorbXNnaWQgImVycm9yIHJlbW92aW5nIHN0YXRvdmVycmlkZS1vbGQiCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRjbWQuYzoyMjQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBuZXcgc3RhdG92ZXJyaWRlLW9sZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGNtZC5jOjIyNgorbXNnaWQgImVycm9yIGluc3RhbGxpbmcgbmV3IHN0YXRvdmVycmlkZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGNtZC5jOjI0NgorbXNnaWQgIi0tYWRkIG5lZWRzIGZvdXIgYXJndW1lbnRzIgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjU2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJBbiBvdmVycmlkZSBmb3IgJyVzJyBhbHJlYWR5IGV4aXN0cywgYnV0IC0tZm9yY2Ugc3BlY2lmaWVkIHNvIHdpbGwgYmUgIgorImlnbm9yZWQuIgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjYwCisjLCBjLWZvcm1hdAorbXNnaWQgIkFuIG92ZXJyaWRlIGZvciAnJXMnIGFscmVhZHkgZXhpc3RzLCBhYm9ydGluZy4iCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRjbWQuYzoyNzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS11cGRhdGUgZ2l2ZW4gYnV0ICVzIGRvZXMgbm90IGV4aXN0IgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0Y21kLmM6Mjk2Cittc2dpZCAiTm8gb3ZlcnJpZGUgcHJlc2VudC4iCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRjbWQuYzozMDQKK21zZ2lkICItLXVwZGF0ZSBpcyB1c2VsZXNzIGZvciAtLXJlbW92ZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGRiLmM6NTkKK21zZ2lkICJzeW50YXggZXJyb3I6IGludmFsaWQgdWlkIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0ZGIuYzo2NAorIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3I6IHVua25vd24gdXNlciAnJXMnIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0ZGIuYzo4MworbXNnaWQgInN5bnRheCBlcnJvcjogaW52YWxpZCBnaWQgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRkYi5jOjg4CisjLCBjLWZvcm1hdAorbXNnaWQgInN5bnRheCBlcnJvcjogdW5rbm93biBncm91cCAnJXMnIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0ZGIuYzoxMDQKK21zZ2lkICJzeW50YXggZXJyb3I6IGludmFsaWQgbW9kZSBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGRiLmM6MTI3Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRkYi5jOjEzNAorbXNnaWQgImZhaWxlZCB0byBmc3RhdCBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGRiLmM6MTM3Cittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IHByZXZpb3VzIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0ZGIuYzoxNjIKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVhZGluZyBzdGF0b3ZlcnJpZGUgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGRiLmM6MTY5Cittc2dpZCAic3RhdG92ZXJyaWRlIGZpbGUgaXMgbWlzc2luZyBmaW5hbCBuZXdsaW5lIgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0ZGIuYzoxNzMKK21zZ2lkICJzdGF0b3ZlcnJpZGUgZmlsZSBjb250YWlucyBlbXB0eSBsaW5lIgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0ZGIuYzoxNzggc3JjL3N0YXRkYi5jOjE5MCBzcmMvc3RhdGRiLmM6MjAyCittc2dpZCAic3ludGF4IGVycm9yIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0ZGIuYzoxODYgc3JjL3N0YXRkYi5jOjE5OCBzcmMvc3RhdGRiLmM6MjEwCittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgbGluZSBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGRiLmM6MjE0CisjLCBjLWZvcm1hdAorbXNnaWQgIm11bHRpcGxlIHN0YXR1c292ZXJyaWRlcyBwcmVzZW50IGZvciBmaWxlICclLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IHNyYy90cmlnY21kLmM6NDYKK21zZ2lkICJUeXBlIGRwa2ctdHJpZ2dlciAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgdGhpcyB1dGlsaXR5LiIKK21zZ3N0ciAiIgorCisjOiBzcmMvdHJpZ2NtZC5jOjUxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gJXMgcGFja2FnZSB0cmlnZ2VyIHV0aWxpdHkgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiRGViaWFub3YgYCVzJyBwcm9ncmFtIHphIHJ1a292YW5qZSBwYWtldGltYS4iCisKKyM6IHNyYy90cmlnY21kLmM6NjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbnM+IC4uLl0gPHRyaWdnZXItbmFtZT5cbiIKKyIgICAgICAgJXMgWzxvcHRpb25zPiAuLi5dIDxjb21tYW5kPlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy90cmlnY21kLmM6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLS1jaGVjay1zdXBwb3J0ZWQgICAgICAgICAgICAgICAgQ2hlY2sgaWYgdGhlIHJ1bm5pbmcgZHBrZyBzdXBwb3J0cyAiCisidHJpZ2dlcnMuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogc3JjL3RyaWdjbWQuYzo4MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorIiAgLS1ieS1wYWNrYWdlPTxwYWNrYWdlPiAgICAgICAgICAgT3ZlcnJpZGUgdHJpZ2dlciBhd2FpdGVyIChub3JtYWxseSBzZXRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnkgZHBrZykuXG4iCisiICAtLW5vLWF3YWl0ICAgICAgICAgICAgICAgICAgICAgICBObyBwYWNrYWdlIG5lZWRzIHRvIGF3YWl0IHRoZSAiCisicHJvY2Vzc2luZy5cbiIKKyIgIC0tbm8tYWN0ICAgICAgICAgICAgICAgICAgICAgICAgIEp1c3QgdGVzdCAtIGRvbid0IGFjdHVhbGx5IGNoYW5nZSAiCisiYW55dGhpbmcuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogc3JjL3RyaWdjbWQuYzoxNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IHRyaWdnZXJzIGRhdGEgZGlyZWN0b3J5IG5vdCB5ZXQgY3JlYXRlZFxuIgorbXNnc3RyICIiCisKKyM6IHNyYy90cmlnY21kLmM6MTU2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB0cmlnZ2VyIHJlY29yZHMgbm90IHlldCBpbiBleGlzdGVuY2VcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIwNQorbXNnaWQgInRha2VzIG9uZSBhcmd1bWVudCwgdGhlIHRyaWdnZXIgbmFtZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIxMAorbXNnaWQgIm11c3QgYmUgY2FsbGVkIGZyb20gYSBtYWludGFpbmVyIHNjcmlwdCAob3Igd2l0aCBhIC0tYnktcGFja2FnZSBvcHRpb24pIgorbXNnc3RyICIiCisKKyM6IHNyYy90cmlnY21kLmM6MjE1CisjLCBjLWZvcm1hdAorbXNnaWQgImlsbGVnYWwgYXdhaXRlZCBwYWNrYWdlIG5hbWUgJyUuMjUwcyc6ICUuMjUwcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIyMQorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHRyaWdnZXIgbmFtZSBgJS4yNTBzJzogJS4yNTBzIgorbXNnc3RyICIiCisKKyM6IHNyYy90cmlncHJvYy5jOjI1MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IGN5Y2xlIGZvdW5kIHdoaWxlIHByb2Nlc3NpbmcgdHJpZ2dlcnM6XG4iCisiIGNoYWluIG9mIHBhY2thZ2VzIHdob3NlIHRyaWdnZXJzIGFyZSBvciBtYXkgYmUgcmVzcG9uc2libGU6XG4iCittc2dzdHIgIiIKKworIzogc3JjL3RyaWdwcm9jLmM6MjU4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgcGFja2FnZXMnIHBlbmRpbmcgdHJpZ2dlcnMgd2hpY2ggYXJlIG9yIG1heSBiZSB1bnJlc29sdmFibGU6XG4iCittc2dzdHIgIiIKKworIzogc3JjL3RyaWdwcm9jLmM6MjgxCittc2dpZCAidHJpZ2dlcnMgbG9vcGluZywgYWJhbmRvbmVkIgorbXNnc3RyICIiCisKKyM6IHNyYy90cmlncHJvYy5jOjMxMgorIywgYy1mb3JtYXQKK21zZ2lkICJQcm9jZXNzaW5nIHRyaWdnZXJzIGZvciAlcyAuLi5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvdXBkYXRlLmM6NTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBleGFjdGx5IG9uZSBQYWNrYWdlcy1maWxlIGFyZ3VtZW50IgorbXNnc3RyICIiCisKKyM6IHNyYy91cGRhdGUuYzo2MgorbXNnaWQgInVuYWJsZSB0byBhY2Nlc3MgZHBrZyBzdGF0dXMgYXJlYSBmb3IgYnVsayBhdmFpbGFibGUgdXBkYXRlIgorbXNnc3RyICIiCisKKyM6IHNyYy91cGRhdGUuYzo2NAorbXNnaWQgImJ1bGsgYXZhaWxhYmxlIHVwZGF0ZSByZXF1aXJlcyB3cml0ZSBhY2Nlc3MgdG8gZHBrZyBzdGF0dXMgYXJlYSIKK21zZ3N0ciAiIgorCisjOiBzcmMvdXBkYXRlLmM6NzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVwbGFjaW5nIGF2YWlsYWJsZSBwYWNrYWdlcyBpbmZvLCB1c2luZyAlcy5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvdXBkYXRlLmM6NzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiVXBkYXRpbmcgYXZhaWxhYmxlIHBhY2thZ2VzIGluZm8sIHVzaW5nICVzLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy91cGRhdGUuYzoxMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW5mb3JtYXRpb24gYWJvdXQgJWQgcGFja2FnZSB3YXMgdXBkYXRlZC5cbiIKK21zZ2lkX3BsdXJhbCAiSW5mb3JtYXRpb24gYWJvdXQgJWQgcGFja2FnZXMgd2FzIHVwZGF0ZWQuXG4iCittc2dzdHJbMF0gIiIKK21zZ3N0clsxXSAiIgorCisjOiBzcmMvdXBkYXRlLmM6MTE1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJvYnNvbGV0ZSAnLS0lcycgb3B0aW9uLCB1bmF2YWlsYWJsZSBwYWNrYWdlcyBhcmUgYXV0b21hdGljYWxseSBjbGVhbmVkIHVwLiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIG5hbWUgJyUuNTBzLi4uJyBpcyB0b28gbG9uZyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjEyOQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBmaWxlIG5hbWUgJyUuMjUwcyciCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoxODkKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBjb250cm9sIGRpcmVjdG9yeSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjE5MQorbXNnaWQgImNvbnRyb2wgZGlyZWN0b3J5IGlzIG5vdCBhIGRpcmVjdG9yeSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjE5MworIywgYy1mb3JtYXQKK21zZ2lkICJjb250cm9sIGRpcmVjdG9yeSBoYXMgYmFkIHBlcm1pc3Npb25zICUwM2xvIChtdXN0IGJlID49MDc1NSBhbmQgPD0wNzc1KSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjIwNAorIywgYy1mb3JtYXQKK21zZ2lkICJtYWludGFpbmVyIHNjcmlwdCBgJS41MHMnIGlzIG5vdCBhIHBsYWluIGZpbGUgb3Igc3ltbGluayIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjIwNworIywgYy1mb3JtYXQKK21zZ2lkICIiCisibWFpbnRhaW5lciBzY3JpcHQgYCUuNTBzJyBoYXMgYmFkIHBlcm1pc3Npb25zICUwM2xvIChtdXN0IGJlID49MDU1NSBhbmQgIgorIjw9MDc3NSkiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAibWFpbnRhaW5lciBzY3JpcHQgYCUuNTBzJyBpcyBub3Qgc3RhdHRhYmxlIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjM3Cittc2dpZCAiZXJyb3Igb3BlbmluZyBjb25mZmlsZXMgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI0NgorbXNnaWQgImVtcHR5IHN0cmluZyBmcm9tIGZnZXRzIHJlYWRpbmcgY29uZmZpbGVzIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjUxCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIG5hbWUgJyUuNTBzLi4uJyBpcyB0b28gbG9uZywgb3IgbWlzc2luZyBmaW5hbCBuZXdsaW5lIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjY0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIGZpbGVuYW1lICclcycgY29udGFpbnMgdHJhaWxpbmcgd2hpdGUgc3BhY2VzIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjY2CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIGAlLjI1MHMnIGRvZXMgbm90IGFwcGVhciBpbiBwYWNrYWdlIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjY4CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIGAlLjI1MHMnIGlzIG5vdCBzdGF0dGFibGUiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgJyVzJyBpcyBub3QgYSBwbGFpbiBmaWxlIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6Mjc0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIG5hbWUgJyVzJyBpcyBkdXBsaWNhdGVkIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6Mjg3Cittc2dpZCAiZXJyb3IgcmVhZGluZyBjb25mZmlsZXMgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjMzOQorbXNnaWQgInBhY2thZ2UgbmFtZSBoYXMgY2hhcmFjdGVycyB0aGF0IGFyZW4ndCBsb3dlcmNhc2UgYWxwaGFudW1zIG9yIGAtKy4nIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MzQxCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgY29udGFpbnMgdXNlci1kZWZpbmVkIFByaW9yaXR5IHZhbHVlICclcyciCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzozNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBjb250YWlucyB1c2VyLWRlZmluZWQgZmllbGQgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjM1OAorIywgYy1mb3JtYXQKK21zZ2lkICJpZ25vcmluZyAlZCB3YXJuaW5nIGFib3V0IHRoZSBjb250cm9sIGZpbGUocylcbiIKK21zZ2lkX3BsdXJhbCAiaWdub3JpbmcgJWQgd2FybmluZ3MgYWJvdXQgdGhlIGNvbnRyb2wgZmlsZShzKVxuIgorbXNnc3RyWzBdICIiCittc2dzdHJbMV0gIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MDMgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MjkKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDM2CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSA8ZGlyZWN0b3J5PiBhcmd1bWVudCIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQwOQorbXNnaWQgIi0tYnVpbGQgdGFrZXMgYXQgbW9zdCB0d28gYXJndW1lbnRzIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDEzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGVjayBmb3IgZXhpc3RlbmNlIG9mIGFyY2hpdmUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzAKK21zZ2lkICJ0YXJnZXQgaXMgZGlyZWN0b3J5IC0gY2Fubm90IHNraXAgY29udHJvbCBmaWxlIGNoZWNrIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDMxCittc2dpZCAibm90IGNoZWNraW5nIGNvbnRlbnRzIG9mIGNvbnRyb2wgYXJlYS4iCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZy1kZWI6IGJ1aWxkaW5nIGFuIHVua25vd24gcGFja2FnZSBpbiAnJXMnLlxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDM5CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2ctZGViOiBidWlsZGluZyBwYWNrYWdlIGAlcycgaW4gYCVzJy5cbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ2NyBkcGtnLWRlYi9idWlsZC5jOjUyMQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gbWFrZSB0ZW1wb3JhcnkgZmlsZSAoJXMpIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDY3IGRwa2ctZGViL2J1aWxkLmM6NDcwIGRwa2ctZGViL2J1aWxkLmM6NDc3CisjOiBkcGtnLWRlYi9idWlsZC5jOjQ4NSBkcGtnLWRlYi9idWlsZC5jOjQ5NCBkcGtnLWRlYi9idWlsZC5jOjQ5OQorbXNnaWQgImNvbnRyb2wgbWVtYmVyIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDcwIGRwa2ctZGViL2J1aWxkLmM6NTI0CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB1bmxpbmsgdGVtcG9yYXJ5IGZpbGUgKCVzKSwgJXMiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0ODUgZHBrZy1kZWIvYnVpbGQuYzo1OTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJld2luZCB0ZW1wb3JhcnkgZmlsZSAoJXMpIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDk0CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBzdGF0IHRlbXBvcmFyeSBmaWxlICglcykiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0OTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igd3JpdGluZyBgJXMnIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTIxIGRwa2ctZGViL2J1aWxkLmM6NTI0IGRwa2ctZGViL2J1aWxkLmM6NTQ2CisjOiBkcGtnLWRlYi9idWlsZC5jOjU3MiBkcGtnLWRlYi9idWlsZC5jOjU4MCBkcGtnLWRlYi9idWlsZC5jOjU5MworIywgZnV6enkKK21zZ2lkICJkYXRhIG1lbWJlciIKK21zZ3N0ciAiYnJvaiB2ZXJ6aWplIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjU3MSBkcGtnLWRlYi9idWlsZC5jOjU4MAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgZmlsZW5hbWUgdG8gdGFyIHBpcGUgKCVzKSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjU4NAorbXNnaWQgIjxjb21wcmVzcz4gZnJvbSB0YXIgLWNmIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzo2MSBkcGtnLWRlYi9leHRyYWN0LmM6NjMKK21zZ2lkICJzaGVsbCBjb21tYW5kIHRvIG1vdmUgZmlsZXMiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjcwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGZpbGUgaW4gJXMgaW4gJS4yNTVzIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzo3MgorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciByZWFkaW5nICVzIGZyb20gZmlsZSAlLjI1NXMiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjEyNQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCBhcmNoaXZlIGAlLjI1NXMnIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxMjcKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgYXJjaGl2ZSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTMxCisjLCBmdXp6eQorbXNnaWQgImFyY2hpdmUgbWFnaWMgdmVyc2lvbiBudW1iZXIiCittc2dzdHIgImJyb2ogdmVyemlqZSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE0MworbXNnaWQgImFyY2hpdmUgbWVtYmVyIGhlYWRlciIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTQ4CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBhcmNoaXZlIGhlYWRlciBtYWdpYyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTU1CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgbm90IGEgZGViaWFuIGJpbmFyeSBhcmNoaXZlICh0cnkgZHBrZy1zcGxpdD8pIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNTkKK21zZ2lkICJhcmNoaXZlIGluZm9ybWF0aW9uIGhlYWRlciBtZW1iZXIiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE2MgorbXNnaWQgImFyY2hpdmUgaGFzIG5vIG5ld2xpbmVzIGluIGhlYWRlciIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTY1Cittc2dpZCAiYXJjaGl2ZSBoYXMgbm8gZG90IGluIHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiYXJjaGl2ZSB2ZXJzaW9uICUuMjUwcyBub3QgdW5kZXJzdG9vZCwgZ2V0IG5ld2VyIGRwa2ctZGViIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNzkgZHBrZy1kZWIvZXh0cmFjdC5jOjIwNQorIywgYy1mb3JtYXQKK21zZ2lkICJza2lwcGVkIGFyY2hpdmUgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTk0CisjLCBjLWZvcm1hdAorbXNnaWQgImFyY2hpdmUgJyUuMjUwcycgY29udGFpbnMgbm90IHVuZGVyc3Rvb2QgZGF0YSBtZW1iZXIgJS4qcywgZ2l2aW5nIHVwIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxOTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiYXJjaGl2ZSAnJS4yNTBzJyBjb250YWlucyB0d28gY29udHJvbCBtZW1iZXJzLCBnaXZpbmcgdXAiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIxNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiIG5ldyBkZWJpYW4gcGFja2FnZSwgdmVyc2lvbiAlcy5cbiIKKyIgc2l6ZSAlamQgYnl0ZXM6IGNvbnRyb2wgYXJjaGl2ZT0gJWpkIGJ5dGVzLlxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyMzIKK21zZ2lkICJhcmNoaXZlIGNvbnRyb2wgbWVtYmVyIHNpemUiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIzNQorIywgYy1mb3JtYXQKK21zZ2lkICJhcmNoaXZlIGhhcyBtYWxmb3JtYXR0ZWQgY29udHJvbCBtZW1iZXIgc2l6ZSAnJXMnIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNDIKKyMsIGMtZm9ybWF0Cittc2dpZCAic2tpcHBlZCBhcmNoaXZlIGNvbnRyb2wgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjQ2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIgb2xkIGRlYmlhbiBwYWNrYWdlLCB2ZXJzaW9uICVzLlxuIgorIiBzaXplICVqZCBieXRlczogY29udHJvbCBhcmNoaXZlPSAlamQsIG1haW4gYXJjaGl2ZT0gJWpkLlxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2ctZGViOiBmaWxlIGxvb2tzIGxpa2UgaXQgbWlnaHQgYmUgYW4gYXJjaGl2ZSB3aGljaCBoYXMgYmVlblxuIgorImRwa2ctZGViOiAgICBjb3JydXB0ZWQgYnkgYmVpbmcgZG93bmxvYWRlZCBpbiBBU0NJSSBtb2RlXG4iCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI1OQorIywgYy1mb3JtYXQKK21zZ2lkICJgJS4yNTVzJyBpcyBub3QgYSBkZWJpYW4gZm9ybWF0IGFyY2hpdmUiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI2NgorbXNnaWQgImZhaWxlZCB0byB3cml0ZSB0byBwaXBlIGluIGNvcHkiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI2OAorbXNnaWQgImZhaWxlZCB0byBjbG9zZSBwaXBlIGluIGNvcHkiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI4NAorbXNnaWQgImRhdGEiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMwNworbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byBkaXJlY3RvcnkiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMxMAorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgZGlyZWN0b3J5IgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozMTIKK21zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gZGlyZWN0b3J5IGFmdGVyIGNyZWF0aW5nIGl0IgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozMjMKK21zZ2lkICI8ZGVjb21wcmVzcz4iCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMyNQorbXNnaWQgInBhc3RlIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozNDIgZHBrZy1kZWIvZXh0cmFjdC5jOjM2MyBkcGtnLWRlYi9leHRyYWN0LmM6NDAyCisjOiBkcGtnLWRlYi9pbmZvLmM6NzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhIC5kZWIgZmlsZW5hbWUgYXJndW1lbnQiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjM0NyBkcGtnLWRlYi9leHRyYWN0LmM6NDA2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyItLSVzIG5lZWRzIGEgdGFyZ2V0IGRpcmVjdG9yeS5cbiIKKyJQZXJoYXBzIHlvdSBzaG91bGQgYmUgdXNpbmcgZHBrZyAtLWluc3RhbGwgPyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzUwIGRwa2ctZGViL2V4dHJhY3QuYzo0MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyB0YWtlcyBhdCBtb3N0IHR3byBhcmd1bWVudHMgKC5kZWIgYW5kIGRpcmVjdG9yeSkiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjM2NQorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIHRha2VzIG9ubHkgb25lIGFyZ3VtZW50ICguZGViIGZpbGVuYW1lKSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6NjMKK21zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gYC8nIGZvciBjbGVhbnVwIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMDYKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJcbiIKKyN8ICJDb25maWd1cmF0aW9uIGZpbGUgYCVzJyIKK21zZ2lkICJjb250cm9sIGZpbGUgJyVzJyIKK21zZ3N0ciAiIgorIlxuIgorIktvbmZpZ3VyYWNpanNrYSBkYXRvdGVrYSBgJXMnIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTEwCisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2ctZGViOiBgJS4yNTVzJyBjb250YWlucyBubyBjb250cm9sIGNvbXBvbmVudCBgJS4yNTVzJ1xuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAib3BlbiBjb21wb25lbnQgYCUuMjU1cycgKGluICUuMjU1cykgZmFpbGVkIGluIGFuIHVuZXhwZWN0ZWQgd2F5IgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJWQgcmVxdWVzdGVkIGNvbnRyb2wgY29tcG9uZW50IGlzIG1pc3NpbmciCittc2dpZF9wbHVyYWwgIiVkIHJlcXVlc3RlZCBjb250cm9sIGNvbXBvbmVudHMgYXJlIG1pc3NpbmciCittc2dzdHJbMF0gIiIKK21zZ3N0clsxXSAiIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTM5IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo0MjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHNjYW4gZGlyZWN0b3J5IGAlLjI1NXMnIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHN0YXQgYCUuMjU1cycgKGluIGAlLjI1NXMnKSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTUyCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBvcGVuIGAlLjI1NXMnIChpbiBgJS4yNTVzJykiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvaW5mby5jOjE2NyBkcGtnLWRlYi9pbmZvLmM6MTg1IGRwa2ctZGViL2luZm8uYzoxOTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgYCUuMjU1cycgKGluIGAlLjI1NXMnKSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTcwCisjLCBjLWZvcm1hdAorbXNnaWQgIiAlN2pkIGJ5dGVzLCAlNWQgbGluZXMgICAlYyAgJS0yMC4xMjdzICUuMTI3c1xuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxNzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAgICBub3QgYSBwbGFpbiBmaWxlICAgICAgICAgICUuMjU1c1xuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxODYKK21zZ2lkICIobm8gYGNvbnRyb2wnIGZpbGUgaW4gY29udHJvbCBhcmNoaXZlISlcbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MjIyCittc2dpZCAiY291bGQgbm90IG9wZW4gdGhlIGBjb250cm9sJyBjb21wb25lbnQiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvaW5mby5jOjI2MQorbXNnaWQgImZhaWxlZCBkdXJpbmcgcmVhZCBvZiBgY29udHJvbCcgY29tcG9uZW50IgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2luZm8uYzoyNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyB0aGUgJyVzJyBjb21wb25lbnQiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvaW5mby5jOjI3OAorbXNnaWQgIkVycm9yIGluIGZvcm1hdCIKK21zZ3N0ciAiR3JlxaFrYSB1IGZvcm1hdHUiCisKKyM6IGRwa2ctZGViL2luZm8uYzozMjgKK21zZ2lkICItLWNvbnRlbnRzIHRha2VzIGV4YWN0bHkgb25lIGFyZ3VtZW50IgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL21haW4uYzo1NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuIGAlcycgcGFja2FnZSBhcmNoaXZlIGJhY2tlbmQgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiRGViaWFub3YgYCVzJyBwcm9ncmFtIHphIHJ1a292YW5qZSBwYWtldGltYS4iCisKKyM6IGRwa2ctZGViL21haW4uYzo3MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtYnwtLWJ1aWxkIDxkaXJlY3Rvcnk+IFs8ZGViPl0gICBCdWlsZCBhbiBhcmNoaXZlLlxuIgorIiAgLWN8LS1jb250ZW50cyA8ZGViPiAgICAgICAgICAgICAgTGlzdCBjb250ZW50cy5cbiIKKyIgIC1JfC0taW5mbyA8ZGViPiBbPGNmaWxlPiAuLi5dICAgIFNob3cgaW5mbyB0byBzdGRvdXQuXG4iCisiICAtV3wtLXNob3cgPGRlYj4gICAgICAgICAgICAgICAgICBTaG93IGluZm9ybWF0aW9uIG9uIHBhY2thZ2UocylcbiIKKyIgIC1mfC0tZmllbGQgPGRlYj4gWzxjZmllbGQ+IC4uLl0gIFNob3cgZmllbGQocykgdG8gc3Rkb3V0LlxuIgorIiAgLWV8LS1jb250cm9sIDxkZWI+IFs8ZGlyZWN0b3J5Pl0gRXh0cmFjdCBjb250cm9sIGluZm8uXG4iCisiICAteHwtLWV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gICBFeHRyYWN0IGZpbGVzLlxuIgorIiAgLVh8LS12ZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PiAgRXh0cmFjdCAmIGxpc3QgZmlsZXMuXG4iCisiICAtUnwtLXJhdy1leHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFeHRyYWN0IGNvbnRyb2wgaW5mbyBhbmQgZmlsZXMuXG4iCisiICAtLWZzeXMtdGFyZmlsZSA8ZGViPiAgICAgICAgICAgICBPdXRwdXQgZmlsZXN5c3RlbSB0YXJmaWxlLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL21haW4uYzo5MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiPGRlYj4gaXMgdGhlIGZpbGVuYW1lIG9mIGEgRGViaWFuIGZvcm1hdCBhcmNoaXZlLlxuIgorIjxjZmlsZT4gaXMgdGhlIG5hbWUgb2YgYW4gYWRtaW5pc3RyYXRpdmUgZmlsZSBjb21wb25lbnQuXG4iCisiPGNmaWVsZD4gaXMgdGhlIG5hbWUgb2YgYSBmaWVsZCBpbiB0aGUgbWFpbiBgY29udHJvbCcgZmlsZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9tYWluLmM6OTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLXNob3dmb3JtYXQ9PGZvcm1hdD4gICAgICAgICAgICBVc2UgYWx0ZXJuYXRpdmUgZm9ybWF0IGZvciAtLXNob3cuXG4iCisiICAtdiwgLS12ZXJib3NlICAgICAgICAgICAgICAgICAgICBFbmFibGUgdmVyYm9zZSBvdXRwdXQuXG4iCisiICAtRCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbmFibGUgZGVidWdnaW5nIG91dHB1dC5cbiIKKyIgIC0tb2xkLCAtLW5ldyAgICAgICAgICAgICAgICAgICAgIFNlbGVjdCBhcmNoaXZlIGZvcm1hdC5cbiIKKyIgIC0tbm9jaGVjayAgICAgICAgICAgICAgICAgICAgICAgIFN1cHByZXNzIGNvbnRyb2wgZmlsZSBjaGVjayAoYnVpbGQgYmFkXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhY2thZ2VzKS5cbiIKKyIgIC16IyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNldCB0aGUgY29tcHJlc3Npb24gbGV2ZWwgd2hlbiBidWlsZGluZy5cbiIKKyIgIC1aPHR5cGU+ICAgICAgICAgICAgICAgICAgICAgICAgIFNldCB0aGUgY29tcHJlc3Npb24gdHlwZSB1c2VkIHdoZW4gIgorImJ1aWxkaW5nLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBbGxvd2VkIHR5cGVzOiBnemlwLCB4eiwgYnppcDIsIGx6bWEsICIKKyJub25lLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL21haW4uYzoxMjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIlVzZSBgZHBrZycgdG8gaW5zdGFsbCBhbmQgcmVtb3ZlIHBhY2thZ2VzIGZyb20geW91ciBzeXN0ZW0sIG9yXG4iCisiYGRzZWxlY3QnIG9yIGBhcHRpdHVkZScgZm9yIHVzZXItZnJpZW5kbHkgcGFja2FnZSBtYW5hZ2VtZW50LiAgUGFja2FnZXNcbiIKKyJ1bnBhY2tlZCB1c2luZyBgZHBrZy1kZWIgLS1leHRyYWN0JyB3aWxsIGJlIGluY29ycmVjdGx5IGluc3RhbGxlZCAhXG4iCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjEzMgorbXNnaWQgIiIKKyJUeXBlIGRwa2ctZGViIC0taGVscCBmb3IgaGVscCBhYm91dCBtYW5pcHVsYXRpbmcgKi5kZWIgZmlsZXM7XG4iCisiVHlwZSBkcGtnIC0taGVscCBmb3IgaGVscCBhYm91dCBpbnN0YWxsaW5nIGFuZCBkZWluc3RhbGxpbmcgcGFja2FnZXMuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL21haW4uYzoxNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBpbnRlZ2VyIGZvciAtJWM6ICclLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL21haW4uYzoxNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjb21wcmVzc2lvbiBsZXZlbCBmb3IgLSVjOiAlbGQnIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL21haW4uYzoxNjEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBjb21wcmVzc2lvbiB0eXBlIGAlcychIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjUyCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBkaWdpdCAoY29kZSAlZCkgaW4gJXMiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gJS4yNTBzIG1pc3NpbmciCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gbWlzc2luZyBuZXdsaW5lIGFmdGVyICUuMjUwcyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzo4OSBkcGtnLXNwbGl0L21haW4uYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcmVhZGluZyAlLjI1MHMiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTAzCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBtYWdpYyBhdCBlbmQgb2YgZmlyc3QgaGVhZGVyIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjExMworIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgcGFkZGluZyBjaGFyYWN0ZXIgKGNvZGUgJWQpIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjExNworIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBudWxscyBpbiBpbmZvIHNlY3Rpb24iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTIyCisjLCBmdXp6eQorbXNnaWQgImZvcm1hdCB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAiYnJvaiB2ZXJ6aWplIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBmb3JtYXQgdmVyc2lvbiBgJS4yNTBzJyAtIHlvdSBuZWVkIGEgbmV3ZXIgZHBrZy1zcGxpdCIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMjcKK21zZ2lkICJwYWNrYWdlIG5hbWUiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTI4CisjLCBmdXp6eQorbXNnaWQgInBhY2thZ2UgdmVyc2lvbiBudW1iZXIiCittc2dzdHIgImJyb2ogdmVyemlqZSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTI5Cittc2dpZCAicGFja2FnZSBmaWxlIE1ENSBjaGVja3N1bSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIE1ENSBjaGVja3N1bSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMzQgZHBrZy1zcGxpdC9pbmZvLmM6MTM1Cittc2dpZCAiYXJjaGl2ZSB0b3RhbCBzaXplIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEzNiBkcGtnLXNwbGl0L2luZm8uYzoxMzcKK21zZ2lkICJhcmNoaXZlIHBhcnQgb2Zmc2V0IgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEzOQorIywgZnV6enkKK21zZ2lkICJhcmNoaXZlIHBhcnQgbnVtYmVycyIKK21zZ3N0ciAiYnJvaiB2ZXJ6aWplIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gbm8gc2xhc2ggYmV0d2VlbiBhcmNoaXZlIHBhcnQgbnVtYmVycyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDUKK21zZ2lkICJudW1iZXIgb2YgYXJjaGl2ZSBwYXJ0cyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIG51bWJlciBvZiBhcmNoaXZlIHBhcnRzIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE0OQorIywgZnV6enkKK21zZ2lkICJhcmNoaXZlIHBhcnRzIG51bWJlciIKK21zZ3N0ciAiYnJvaiB2ZXJ6aWplIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIGFyY2hpdmUgcGFydCBudW1iZXIiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTU3Cittc2dpZCAicGFja2FnZSBhcmNoaXRlY3R1cmUiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTY2CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBtYWdpYyBhdCBlbmQgb2Ygc2Vjb25kIGhlYWRlciIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gc2Vjb25kIG1lbWJlciBpcyBub3QgZGF0YSBtZW1iZXIiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTc0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIHdyb25nIG51bWJlciBvZiBwYXJ0cyBmb3IgcXVvdGVkIHNpemVzIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE3OAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBzaXplIGlzIHdyb25nIGZvciBxdW90ZWQgcGFydCBudW1iZXIiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTg0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmc3RhdCBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTg5CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIHRvbyBzaG9ydCIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyMDIgZHBrZy1zcGxpdC9pbmZvLmM6MjQ5CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBvcGVuIGFyY2hpdmUgcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjIwNAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIG5vdCBhbiBhcmNoaXZlIHBhcnQiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjA5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczpcbiIKKyIgICAgUGFydCBmb3JtYXQgdmVyc2lvbjogICAgICAgICAgICAlc1xuIgorIiAgICBQYXJ0IG9mIHBhY2thZ2U6ICAgICAgICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gdmVyc2lvbjogICAgICAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiBhcmNoaXRlY3R1cmU6ICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIE1ENSBjaGVja3N1bTogICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gbGVuZ3RoOiAgICAgICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgICAgICAuLi4gc3BsaXQgZXZlcnk6ICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgIFBhcnQgbnVtYmVyOiAgICAgICAgICAgICAgICAgICAgJWQvJWRcbiIKKyIgICAgUGFydCBsZW5ndGg6ICAgICAgICAgICAgICAgICAgICAlamQgYnl0ZXNcbiIKKyIgICAgUGFydCBvZmZzZXQ6ICAgICAgICAgICAgICAgICAgICAlamQgYnl0ZXNcbiIKKyIgICAgUGFydCBmaWxlIHNpemUgKHVzZWQgcG9ydGlvbik6ICAlamQgYnl0ZXNcbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyMjUKK21zZ2N0eHQgImFyY2hpdGVjdHVyZSIKK21zZ2lkICI8dW5rbm93bj4iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjQ0IGRwa2ctc3BsaXQvam9pbi5jOjEwNQorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIHJlcXVpcmVzIG9uZSBvciBtb3JlIHBhcnQgZmlsZSBhcmd1bWVudHMiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjU1CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCVzJyBpcyBub3QgYW4gYXJjaGl2ZSBwYXJ0XG4iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHV0dGluZyBwYWNrYWdlICVzIHRvZ2V0aGVyIGZyb20gJWQgcGFydDogIgorbXNnaWRfcGx1cmFsICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0czogIgorbXNnc3RyWzBdICIiCittc2dzdHJbMV0gIiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gb3V0cHV0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIChyZSlvcGVuIGlucHV0IHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1OAorbXNnaWQgInNraXBwaW5nIHNwbGl0IHBhY2thZ2UgaGVhZGVyIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjU5Cittc2dpZCAic3BsaXQgcGFja2FnZSBwYXJ0IgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjY5IGRwa2ctc3BsaXQvc3BsaXQuYzoyMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZG9uZVxuIgorbXNnc3RyICJ1cmHEkWVub1xuIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo4NQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlcyBgJS4yNTBzJyBhbmQgYCUuMjUwcycgYXJlIG5vdCBwYXJ0cyBvZiB0aGUgc2FtZSBmaWxlIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjkwCisjLCBjLWZvcm1hdAorbXNnaWQgInRoZXJlIGFyZSBzZXZlcmFsIHZlcnNpb25zIG9mIHBhcnQgJWQgLSBhdCBsZWFzdCBgJS4yNTBzJyBhbmQgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6MTI4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhcnQgJWQgaXMgbWlzc2luZyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo0NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuIGAlcycgcGFja2FnZSBzcGxpdC9qb2luIHRvb2w7IHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkRlYmlhbm92IGAlcycgcHJvZ3JhbSB6YSBydWtvdmFuamUgcGFrZXRpbWEuIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo0OQorIywgYy1mb3JtYXQKK21zZ2lkICJDb3B5cmlnaHQgKEMpIDE5OTQtMTk5NiBJYW4gSmFja3Nvbi5cbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo2NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtc3wtLXNwbGl0IDxmaWxlPiBbPHByZWZpeD5dICAgICBTcGxpdCBhbiBhcmNoaXZlLlxuIgorIiAgLWp8LS1qb2luIDxwYXJ0PiA8cGFydD4gLi4uICAgICAgSm9pbiBwYXJ0cyB0b2dldGhlci5cbiIKKyIgIC1JfC0taW5mbyA8cGFydD4gLi4uICAgICAgICAgICAgIERpc3BsYXkgaW5mbyBhYm91dCBhIHBhcnQuXG4iCisiICAtYXwtLWF1dG8gLW8gPGNvbXBsZXRlPiA8cGFydD4gICBBdXRvLWFjY3VtdWxhdGUgcGFydHMuXG4iCisiICAtbHwtLWxpc3RxICAgICAgICAgICAgICAgICAgICAgICBMaXN0IHVubWF0Y2hlZCBwaWVjZXMuXG4iCisiICAtZHwtLWRpc2NhcmQgWzxmaWxlbmFtZT4gLi4uXSAgICBEaXNjYXJkIHVubWF0Y2hlZCBwaWVjZXMuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWRlcG90ZGlyIDxkaXJlY3Rvcnk+ICAgICAgICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy8lcy5cbiIKKyIgIC1TfC0tcGFydHNpemUgPHNpemU+ICAgICAgICAgICAgIEluIEtpQiwgZm9yIC1zIChkZWZhdWx0IGlzIDQ1MCkuXG4iCisiICAtb3wtLW91dHB1dCA8ZmlsZT4gICAgICAgICAgICAgICBGaWxlbmFtZSwgZm9yIC1qIChkZWZhdWx0IGlzXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYWNrYWdlPl88dmVyc2lvbj5fPGFyY2g+LmRlYikuXG4iCisiICAtUXwtLW5wcXVpZXQgICAgICAgICAgICAgICAgICAgICBCZSBxdWlldCB3aGVuIC1hIGlzIG5vdCBhIHBhcnQuXG4iCisiICAtLW1zZG9zICAgICAgICAgICAgICAgICAgICAgICAgICBHZW5lcmF0ZSA4LjMgZmlsZW5hbWVzLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjkyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJFeGl0IHN0YXR1czpcbiIKKyIgIDAgPSBva1xuIgorIiAgMSA9IHdpdGggLS1hdXRvLCBmaWxlIGlzIG5vdCBhIHBhcnRcbiIKKyIgIDIgPSB0cm91YmxlXG4iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6MTAzCittc2dpZCAiVHlwZSBkcGtnLXNwbGl0IC0taGVscCBmb3IgaGVscC4iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6MTE1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGZpbGUgaW4gJS4yNTBzIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjEyNgorbXNnaWQgInBhcnQgc2l6ZSBpcyBmYXIgdG9vIGxhcmdlIG9yIGlzIG5vdCBwb3NpdGl2ZSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMzAKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFydCBzaXplIG11c3QgYmUgYXQgbGVhc3QgJWQgS2lCICh0byBhbGxvdyBmb3IgaGVhZGVyKSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgZGVwb3QgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxMzQKK21zZ2lkICItLWF1dG8gcmVxdWlyZXMgdGhlIHVzZSBvZiB0aGUgLS1vdXRwdXQgb3B0aW9uIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxMzYKK21zZ2lkICItLWF1dG8gcmVxdWlyZXMgZXhhY3RseSBvbmUgcGFydCBmaWxlIGFyZ3VtZW50IgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxNDAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxNDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiRmlsZSBgJS4yNTBzJyBpcyBub3QgcGFydCBvZiBhIG11bHRpcGFydCBhcmNoaXZlLlxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlb3BlbiBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE4MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBuZXcgZGVwb3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTg0Cittc2dpZCAiZXh0cmFjdGluZyBzcGxpdCBwYXJ0IgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbmFtZSBuZXcgZGVwb3QgZmlsZSBgJS4yNTBzJyB0byBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTk2CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhcnQgJWQgb2YgcGFja2FnZSAlcyBmaWxlZCAoc3RpbGwgd2FudCAiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjIwMAorbXNnaWQgIiBhbmQgIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSB1c2VkLXVwIGRlcG90IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjIzNQorbXNnaWQgIkp1bmsgZmlsZXMgbGVmdCBhcm91bmQgaW4gdGhlIGRlcG90IGRpcmVjdG9yeTpcbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjQwIGRwa2ctc3BsaXQvcXVldWUuYzoyNjkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI0MworIywgYy1mb3JtYXQKK21zZ2lkICIgJXMgKCVqZCBieXRlcylcbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAlcyAobm90IGEgcGxhaW4gZmlsZSlcbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjUwCittc2dpZCAiUGFja2FnZXMgbm90IHlldCByZWFzc2VtYmxlZDpcbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjU4CisjLCBjLWZvcm1hdAorbXNnaWQgIiBQYWNrYWdlICVzOiBwYXJ0KHMpICIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjcxCisjLCBjLWZvcm1hdAorbXNnaWQgInBhcnQgZmlsZSBgJS4yNTBzJyBpcyBub3QgYSBwbGFpbiBmaWxlIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiKHRvdGFsICVqZCBieXRlcylcbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MzA0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkaXNjYXJkIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzozMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGVsZXRlZCAlcy5cbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6NzAgZHBrZy1zcGxpdC9zcGxpdC5jOjc2IGRwa2ctc3BsaXQvc3BsaXQuYzo4MQorbXNnaWQgInBhY2thZ2UgZmllbGQgdmFsdWUgZXh0cmFjdGlvbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTMxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIHNvdXJjZSBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxMzMKK21zZ2lkICJ1bmFibGUgdG8gZnN0YXQgc291cmNlIGZpbGUiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjEzNQorIywgYy1mb3JtYXQKK21zZ2lkICJzb3VyY2UgZmlsZSBgJS4yNTBzJyBub3QgYSBwbGFpbiBmaWxlIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxNTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiU3BsaXR0aW5nIHBhY2thZ2UgJXMgaW50byAlZCBwYXJ0OiAiCittc2dpZF9wbHVyYWwgIlNwbGl0dGluZyBwYWNrYWdlICVzIGludG8gJWQgcGFydHM6ICIKK21zZ3N0clswXSAiIgorbXNnc3RyWzFdICIiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxOTMKK21zZ2lkICIiCisiSGVhZGVyIGlzIHRvbyBsb25nLCBtYWtpbmcgcGFydCB0b28gbG9uZy4gWW91ciBwYWNrYWdlIG5hbWUgb3IgdmVyc2lvblxuIgorIm51bWJlcnMgbXVzdCBiZSBleHRyYW9yZGluYXJpbHkgbG9uZywgb3Igc29tZXRoaW5nLiBHaXZpbmcgdXAuXG4iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjI0OQorbXNnaWQgIi0tc3BsaXQgbmVlZHMgYSBzb3VyY2UgZmlsZW5hbWUgYXJndW1lbnQiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjI1MgorbXNnaWQgIi0tc3BsaXQgdGFrZXMgYXQgbW9zdCBhIHNvdXJjZSBmaWxlbmFtZSBhbmQgZGVzdGluYXRpb24gcHJlZml4IgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo4NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMC0yMDAyIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDA5LTIwMTAgUmFwaGFlbCBIZXJ0em9nLlxuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLS1pbnN0YWxsIDxsaW5rPiA8bmFtZT4gPHBhdGg+IDxwcmlvcml0eT5cbiIKKyIgICAgWy0tc2xhdmUgPGxpbms+IDxuYW1lPiA8cGF0aD5dIC4uLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGFkZCBhIGdyb3VwIG9mIGFsdGVybmF0aXZlcyB0byB0aGUgc3lzdGVtLlxuIgorIiAgLS1yZW1vdmUgPG5hbWU+IDxwYXRoPiAgIHJlbW92ZSA8cGF0aD4gZnJvbSB0aGUgPG5hbWU+IGdyb3VwIGFsdGVybmF0aXZlLlxuIgorIiAgLS1yZW1vdmUtYWxsIDxuYW1lPiAgICAgIHJlbW92ZSA8bmFtZT4gZ3JvdXAgZnJvbSB0aGUgYWx0ZXJuYXRpdmVzICIKKyJzeXN0ZW0uXG4iCisiICAtLWF1dG8gPG5hbWU+ICAgICAgICAgICAgc3dpdGNoIHRoZSBtYXN0ZXIgbGluayA8bmFtZT4gdG8gYXV0b21hdGljIG1vZGUuXG4iCisiICAtLWRpc3BsYXkgPG5hbWU+ICAgICAgICAgZGlzcGxheSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgPG5hbWU+IGdyb3VwLlxuIgorIiAgLS1xdWVyeSA8bmFtZT4gICAgICAgICAgIG1hY2hpbmUgcGFyc2VhYmxlIHZlcnNpb24gb2YgLS1kaXNwbGF5IDxuYW1lPi5cbiIKKyIgIC0tbGlzdCA8bmFtZT4gICAgICAgICAgICBkaXNwbGF5IGFsbCB0YXJnZXRzIG9mIHRoZSA8bmFtZT4gZ3JvdXAuXG4iCisiICAtLWdldC1zZWxlY3Rpb25zICAgICAgICAgbGlzdCBtYXN0ZXIgYWx0ZXJuYXRpdmUgbmFtZXMgYW5kIHRoZWlyIHN0YXR1cy5cbiIKKyIgIC0tc2V0LXNlbGVjdGlvbnMgICAgICAgICByZWFkIGFsdGVybmF0aXZlIHN0YXR1cyBmcm9tIHN0YW5kYXJkIGlucHV0LlxuIgorIiAgLS1jb25maWcgPG5hbWU+ICAgICAgICAgIHNob3cgYWx0ZXJuYXRpdmVzIGZvciB0aGUgPG5hbWU+IGdyb3VwIGFuZCBhc2sgIgorInRoZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzZXIgdG8gc2VsZWN0IHdoaWNoIG9uZSB0byB1c2UuXG4iCisiICAtLXNldCA8bmFtZT4gPHBhdGg+ICAgICAgc2V0IDxwYXRoPiBhcyBhbHRlcm5hdGl2ZSBmb3IgPG5hbWU+LlxuIgorIiAgLS1hbGwgICAgICAgICAgICAgICAgICAgIGNhbGwgLS1jb25maWcgb24gYWxsIGFsdGVybmF0aXZlcy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyI8bGluaz4gaXMgdGhlIHN5bWxpbmsgcG9pbnRpbmcgdG8gJXMvPG5hbWU+LlxuIgorIiAgKGUuZy4gL3Vzci9iaW4vcGFnZXIpXG4iCisiPG5hbWU+IGlzIHRoZSBtYXN0ZXIgbmFtZSBmb3IgdGhpcyBsaW5rIGdyb3VwLlxuIgorIiAgKGUuZy4gcGFnZXIpXG4iCisiPHBhdGg+IGlzIHRoZSBsb2NhdGlvbiBvZiBvbmUgb2YgdGhlIGFsdGVybmF0aXZlIHRhcmdldCBmaWxlcy5cbiIKKyIgIChlLmcuIC91c3IvYmluL2xlc3MpXG4iCisiPHByaW9yaXR5PiBpcyBhbiBpbnRlZ2VyOyBvcHRpb25zIHdpdGggaGlnaGVyIG51bWJlcnMgaGF2ZSBoaWdoZXIgcHJpb3JpdHkgIgorImluXG4iCisiICBhdXRvbWF0aWMgbW9kZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTMxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hbHRkaXIgPGRpcmVjdG9yeT4gICAgIGNoYW5nZSB0aGUgYWx0ZXJuYXRpdmVzIGRpcmVjdG9yeS5cbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICBjaGFuZ2UgdGhlIGFkbWluaXN0cmF0aXZlIGRpcmVjdG9yeS5cbiIKKyIgIC0tbG9nIDxmaWxlPiAgICAgICAgICAgICBjaGFuZ2UgdGhlIGxvZyBmaWxlLlxuIgorIiAgLS1mb3JjZSAgICAgICAgICAgICAgICAgIGFsbG93IHJlcGxhY2luZyBmaWxlcyB3aXRoIGFsdGVybmF0aXZlIGxpbmtzLlxuIgorIiAgLS1za2lwLWF1dG8gICAgICAgICAgICAgIHNraXAgcHJvbXB0IGZvciBhbHRlcm5hdGl2ZXMgY29ycmVjdGx5ICIKKyJjb25maWd1cmVkXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gYXV0b21hdGljIG1vZGUgKHJlbGV2YW50IGZvciAtLWNvbmZpZyBvbmx5KVxuIgorIiAgLS12ZXJib3NlICAgICAgICAgICAgICAgIHZlcmJvc2Ugb3BlcmF0aW9uLCBtb3JlIG91dHB1dC5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBxdWlldCBvcGVyYXRpb24sIG1pbmltYWwgb3V0cHV0LlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNjMKK21zZ2lkICJlcnJvciIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTkzCittc2dpZCAid2FybmluZyIKK21zZ3N0ciAidXBvem9yZW5qZSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjM1NgorIywgYy1mb3JtYXQKK21zZ2lkICJ0d28gY29tbWFuZHMgc3BlY2lmaWVkOiAtLSVzIGFuZCAtLSVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzozODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGFwcGVuZCB0byAnJXMnIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo1NTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJcbiIKKyN8ICJDb25maWd1cmF0aW9uIGZpbGUgYCVzJyIKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlICclcyciCittc2dzdHIgIiIKKyJcbiIKKyJLb25maWd1cmFjaWpza2EgZGF0b3Rla2EgYCVzJyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgZmlsZSB3aGlsZSB0cnlpbmcgdG8gcmVhZCAlcyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTExMworIywgYy1mb3JtYXQKK21zZ2lkICJ3aGlsZSByZWFkaW5nICVzOiAlcyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTExOQorIywgYy1mb3JtYXQKK21zZ2lkICJsaW5lIG5vdCB0ZXJtaW5hdGVkIHdoaWxlIHRyeWluZyB0byByZWFkICVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGNvcnJ1cHQ6ICVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTUwCisjLCBjLWZvcm1hdAorbXNnaWQgIm5ld2xpbmVzIHByb2hpYml0ZWQgaW4gdXBkYXRlLWFsdGVybmF0aXZlcyBmaWxlcyAoJXMpIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTYzCittc2dpZCAic2xhdmUgbmFtZSIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE3MSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQwNQorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgc2xhdmUgbmFtZSAlcyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE3NAorbXNnaWQgInNsYXZlIGxpbmsiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAic2xhdmUgbGluayBzYW1lIGFzIG1haW4gbGluayAlcyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE4NSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQxMgorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgc2xhdmUgbGluayAlcyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIwNAorbXNnaWQgIm1hc3RlciBmaWxlIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjEzCisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBwYXRoICVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjI2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJhbHRlcm5hdGl2ZSAlcyAocGFydCBvZiBsaW5rIGdyb3VwICVzKSBkb2Vzbid0IGV4aXN0LiBSZW1vdmluZyBmcm9tIGxpc3Qgb2YgIgorImFsdGVybmF0aXZlcy4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMjkgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyNDAKK21zZ2lkICJwcmlvcml0eSIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIzMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI0OQorbXNnaWQgInNsYXZlIGZpbGUiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyNDQKKyMsIGMtZm9ybWF0Cittc2dpZCAicHJpb3JpdHkgb2YgJXM6ICVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjk3Cittc2dpZCAic3RhdHVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjk5Cittc2dpZCAiaW52YWxpZCBzdGF0dXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzMDQKK21zZ2lkICJtYXN0ZXIgbGluayIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTM0OAorIywgYy1mb3JtYXQKK21zZ2lkICJkaXNjYXJkaW5nIG9ic29sZXRlIHNsYXZlIGxpbmsgJXMgKCVzKS4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MDIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NjkKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjM4Cittc2dpZCAiYXV0byBtb2RlIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTAyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTc4CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYzOQorbXNnaWQgIm1hbnVhbCBtb2RlIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTA1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgbGluayBjdXJyZW50bHkgcG9pbnRzIHRvICVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTA4Cittc2dpZCAiICBsaW5rIGN1cnJlbnRseSBhYnNlbnQiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgLSBwcmlvcml0eSAlZCIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUxNQorIywgYy1mb3JtYXQKK21zZ2lkICIgIHNsYXZlICVzOiAlcyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUyMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiQ3VycmVudCAnYmVzdCcgdmVyc2lvbiBpcyAnJXMnLiIKK21zZ3N0ciAiRGViaWFub3YgYCVzJyBwcm9ncmFtIHphIHJ1a292YW5qZSBwYWtldGltYS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTI0Cittc2dpZCAiTm8gdmVyc2lvbnMgYXZhaWxhYmxlLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU1MworIywgYy1mb3JtYXQKK21zZ2lkICJUaGVyZSBpcyAlZCBjaG9pY2UgZm9yIHRoZSBhbHRlcm5hdGl2ZSAlcyAocHJvdmlkaW5nICVzKS4iCittc2dpZF9wbHVyYWwgIlRoZXJlIGFyZSAlZCBjaG9pY2VzIGZvciB0aGUgYWx0ZXJuYXRpdmUgJXMgKHByb3ZpZGluZyAlcykuIgorbXNnc3RyWzBdICIiCittc2dzdHJbMV0gIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NjAKKyMsIGZ1enp5Cittc2dpZCAiU2VsZWN0aW9uIgorbXNnc3RyICJPcGlzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2MQorbXNnaWQgIlBhdGgiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NjEKK21zZ2lkICJQcmlvcml0eSIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2MQorbXNnaWQgIlN0YXR1cyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU4MgorIywgYy1mb3JtYXQKK21zZ2lkICJQcmVzcyBlbnRlciB0byBrZWVwIHRoZSBjdXJyZW50IGNob2ljZVsqXSwgb3IgdHlwZSBzZWxlY3Rpb24gbnVtYmVyOiAiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3MjEKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IHJlcGxhY2luZyAlcyB3aXRoIGEgbGluay4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3NjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2FuJ3QgaW5zdGFsbCB1bmtub3duIGNob2ljZSAlcyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTc4MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisic2tpcCBjcmVhdGlvbiBvZiAlcyBiZWNhdXNlIGFzc29jaWF0ZWQgZmlsZSAlcyAob2YgbGluayBncm91cCAlcykgZG9lc24ndCAiCisiZXhpc3QuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNzkwCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vdCByZW1vdmluZyAlcyBzaW5jZSBpdCdzIG5vdCBhIHN5bWxpbmsuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDQxIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDQ3CisjLCBjLWZvcm1hdAorbXNnaWQgIkNhbGwgJXMuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDUxCisjLCBjLWZvcm1hdAorbXNnaWQgIkFsdGVybmF0aXZlICVzIHVuY2hhbmdlZCBiZWNhdXNlIGNob2ljZSAlcyBpcyBub3QgYXZhaWxhYmxlLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA1NQorIywgYy1mb3JtYXQKK21zZ2lkICJTa2lwIHVua25vd24gYWx0ZXJuYXRpdmUgJXMuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDc3CisjLCBjLWZvcm1hdAorbXNnaWQgImxpbmUgdG9vIGxvbmcgb3Igbm90IHRlcm1pbmF0ZWQgd2hpbGUgdHJ5aW5nIHRvIHJlYWQgJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwOTAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxMDMKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTEzCisjLCBjLWZvcm1hdAorbXNnaWQgIlNraXAgaW52YWxpZCBsaW5lOiAlcyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjEzMgorIywgYy1mb3JtYXQKK21zZ2lkICJyZW5hbWluZyAlcyBsaW5rIGZyb20gJXMgdG8gJXMuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTczCisjLCBjLWZvcm1hdAorbXNnaWQgInJlbmFtaW5nICVzIHNsYXZlIGxpbmsgZnJvbSAlcyB0byAlcy4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgbmFtZSAoJXMpIG11c3Qgbm90IGNvbnRhaW4gJy8nIGFuZCBzcGFjZXMuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTkzCisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIGxpbmsgaXMgbm90IGFic29sdXRlIGFzIGl0IHNob3VsZCBiZTogJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxOTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgcGF0aCBpcyBub3QgYWJzb2x1dGUgYXMgaXQgc2hvdWxkIGJlOiAlcyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjIyNAorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBtYXN0ZXI6IGl0IGlzIGEgc2xhdmUgb2YgJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyMzIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgbGluayAlcyBpcyBhbHJlYWR5IG1hbmFnZWQgYnkgJXMuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjQxCisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIHBhdGggJXMgZG9lc24ndCBleGlzdC4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgc2xhdmUgb2YgJXM6IGl0IGlzIGEgbWFzdGVyIGFsdGVybmF0aXZlLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI1OAorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBzbGF2ZSBvZiAlczogaXQgaXMgYSBzbGF2ZSBvZiAlcyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI3OAorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBsaW5rICVzIGlzIGFscmVhZHkgbWFuYWdlZCBieSAlcyAoc2xhdmUgb2YgJXMpLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjMyNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGFyZ3VtZW50IGAlcyciCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNDMKK21zZ2lkICItLWluc3RhbGwgbmVlZHMgPGxpbms+IDxuYW1lPiA8cGF0aD4gPHByaW9yaXR5PiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM0NiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM5NworbXNnaWQgIjxsaW5rPiBhbmQgPHBhdGg+IGNhbid0IGJlIHRoZSBzYW1lIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzQ5Cittc2dpZCAicHJpb3JpdHkgbXVzdCBiZSBhbiBpbnRlZ2VyIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzYyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgPG5hbWU+IDxwYXRoPiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM3NgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIDxuYW1lPiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM4OAorbXNnaWQgIi0tc2xhdmUgb25seSBhbGxvd2VkIHdpdGggLS1pbnN0YWxsIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzkwCittc2dpZCAiLS1zbGF2ZSBuZWVkcyA8bGluaz4gPG5hbWU+IDxwYXRoPiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM5OQorIywgYy1mb3JtYXQKK21zZ2lkICJuYW1lICVzIGlzIGJvdGggcHJpbWFyeSBhbmQgc2xhdmUiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAibGluayAlcyBpcyBib3RoIHByaW1hcnkgYW5kIHNsYXZlIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDIyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSA8ZmlsZT4gYXJndW1lbnQiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gYCVzJyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQ1MworbXNnaWQgIiIKKyJuZWVkIC0tZGlzcGxheSwgLS1xdWVyeSwgLS1saXN0LCAtLWdldC1zZWxlY3Rpb25zLCAtLWNvbmZpZywgLS1zZXQsIC0tc2V0LSIKKyJzZWxlY3Rpb25zLCAtLWluc3RhbGwsIC0tcmVtb3ZlLCAtLWFsbCwgLS1yZW1vdmUtYWxsIG9yIC0tYXV0byIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQ5MAorbXNnaWQgIjxzdGFuZGFyZCBpbnB1dD4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MDAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MDMKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gYWx0ZXJuYXRpdmVzIGZvciAlcy4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMvJXMgaXMgZGFuZ2xpbmcsIGl0IHdpbGwgYmUgdXBkYXRlZCB3aXRoIGJlc3QgY2hvaWNlLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUzNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXMvJXMgaGFzIGJlZW4gY2hhbmdlZCAobWFudWFsbHkgb3IgYnkgYSBzY3JpcHQpLiBTd2l0Y2hpbmcgdG8gbWFudWFsICIKKyJ1cGRhdGVzIG9ubHkuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTQyCisjLCBjLWZvcm1hdAorbXNnaWQgInNldHRpbmcgdXAgYXV0b21hdGljIHNlbGVjdGlvbiBvZiAlcy4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgZm9yICVzIG5vdCByZWdpc3RlcmVkLCBub3Qgc2V0dGluZy4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NTcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiVGhlcmUgaXMgbm8gcHJvZ3JhbSB3aGljaCBwcm92aWRlcyAlcy4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NjUgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NzUKK21zZ2lkICJOb3RoaW5nIHRvIGNvbmZpZ3VyZS4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiVGhlcmUgaXMgb25seSBvbmUgYWx0ZXJuYXRpdmUgaW4gbGluayBncm91cCAlczogJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1ODQKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgZm9yICVzIG5vdCByZWdpc3RlcmVkLCBub3QgcmVtb3ZpbmcuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTkyCisjLCBjLWZvcm1hdAorbXNnaWQgInJlbW92aW5nIG1hbnVhbGx5IHNlbGVjdGVkIGFsdGVybmF0aXZlIC0gc3dpdGNoaW5nICVzIHRvIGF1dG8gbW9kZSIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYxNworIywgYy1mb3JtYXQKK21zZ2lkICJhdXRvbWF0aWMgdXBkYXRlcyBvZiAlcy8lcyBhcmUgZGlzYWJsZWQsIGxlYXZpbmcgaXQgYWxvbmUuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjE5CisjLCBjLWZvcm1hdAorbXNnaWQgInRvIHJldHVybiB0byBhdXRvbWF0aWMgdXBkYXRlcyB1c2UgJyVzIC0tYXV0byAlcycuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjM2CisjLCBjLWZvcm1hdAorbXNnaWQgInVzaW5nICVzIHRvIHByb3ZpZGUgJXMgKCVzKSBpbiAlcy4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImZvcmNpbmcgcmVpbnN0YWxsYXRpb24gb2YgYWx0ZXJuYXRpdmUgJXMgYmVjYXVzZSBsaW5rIGdyb3VwICVzIGlzIGJyb2tlbi4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY3VycmVudCBhbHRlcm5hdGl2ZSAlcyBpcyB1bmtub3duLCBzd2l0Y2hpbmcgdG8gJXMgZm9yIGxpbmsgZ3JvdXAgJXMuIgorbXNnc3RyICIiCisKKyN+IG1zZ2lkICJ2ZXJzaW9uIG51bWJlciIKKyN+IG1zZ3N0ciAiYnJvaiB2ZXJ6aWplIgorCisjLCBmdXp6eQorI34gbXNnaWQgIkRlYmlhbiByZXZpc2lvbiIKKyN+IG1zZ3N0ciAiRGViaWFub3YgYCVzJyBwcm9ncmFtIHphIHJ1a292YW5qZSBwYWtldGltYS4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiIgorI34gIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSB2ZXJzaW9uIDIgb3JcbiIKKyN+ICJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIlZlcnppamEgJXMuXG4iCisjfiAiQ29weXJpZ2h0IChDKSAxOTk0LTE5OTYgSWFuIEphY2tzb24uXG4iCisjfiAiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyN+ICJPdm8gamUgc2xvYm9kYW4gc29mdHdhcmU7IHBvZ2xlZGFqdGUgR05VIG9wxaF0dSBqYXZudSBsaWNlbmN1IHZlcnppamUgMlxuIgorI34gImlsaSBrYXNuaWp1IHphIHVzbG92ZSBrb3BpcmFuamEuICBORU1BIGdhcmFuY2lqZS4gIFBvZ2xlZGFqdGVcbiIKKyN+ICJkc2VsZWN0IC0tbGljZW5jZSB6YSBkZXRhbGplLlxuIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICJcbiIKKyN+ICJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgdmVyc2lvbiAyIG9yXG4iCisjfiAibGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJWZXJ6aWphICVzLlxuIgorI34gIkNvcHlyaWdodCAoQykgMTk5NC0xOTk2IElhbiBKYWNrc29uLlxuIgorI34gIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisjfiAiT3ZvIGplIHNsb2JvZGFuIHNvZnR3YXJlOyBwb2dsZWRhanRlIEdOVSBvcMWhdHUgamF2bnUgbGljZW5jdSB2ZXJ6aWplIDJcbiIKKyN+ICJpbGkga2FzbmlqdSB6YSB1c2xvdmUga29waXJhbmphLiAgTkVNQSBnYXJhbmNpamUuICBQb2dsZWRhanRlXG4iCisjfiAiZHNlbGVjdCAtLWxpY2VuY2UgemEgZGV0YWxqZS5cbiIKKworIywgZnV6enkKKyN+IG1zZ2lkICIiCisjfiAiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvclxuIgorI34gImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LlxuIgorI34gIlNlZSAlcyAtLWxpY2Vuc2UgZm9yIGNvcHlyaWdodCBhbmQgbGljZW5zZSBkZXRhaWxzLlxuIgorI34gbXNnc3RyICIiCisjfiAiVmVyemlqYSAlcy5cbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDE5OTQtMTk5NiBJYW4gSmFja3Nvbi5cbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLlxuIgorI34gIk92byBqZSBzbG9ib2RhbiBzb2Z0d2FyZTsgcG9nbGVkYWp0ZSBHTlUgb3DFoXR1IGphdm51IGxpY2VuY3UgdmVyemlqZSAyXG4iCisjfiAiaWxpIGthc25panUgemEgdXNsb3ZlIGtvcGlyYW5qYS4gIE5FTUEgZ2FyYW5jaWplLiAgUG9nbGVkYWp0ZVxuIgorI34gImRzZWxlY3QgLS1saWNlbmNlIHphIGRldGFsamUuXG4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiRGViaWFuIGAlcycgcGFja2FnZSBtYW5hZ2VtZW50IHByb2dyYW0gcXVlcnkgdG9vbFxuIgorI34gbXNnc3RyICJEZWJpYW5vdiBgJXMnIHByb2dyYW0gemEgcnVrb3ZhbmplIHBha2V0aW1hLiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJjaG1vZCIKKyN+IG1zZ3N0ciAiemFkcsW+aSIKKworIywgZnV6enkKKyN+IG1zZ2lkICJhYm9ydGluZyIKKyN+IG1zZ3N0ciAidXBvem9yZW5qZSIKKworI34gbXNnaWQgIlN5c3RlbSBlcnJvciBuby4lZCIKKyN+IG1zZ3N0ciAiU2lzdGVtc2thIGdyZcWha2EgYnIuJWQiCisKKyN+IG1zZ2lkICJTaWduYWwgbm8uJWQiCisjfiBtc2dzdHIgIlNpZ25hbCBici4lZCIKKworI34gbXNnaWQgInRvIgorI34gbXNnc3RyICJ6YSIKKworI34gbXNnaWQgImZyb20iCisjfiBtc2dzdHIgIm9kIgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9wby9jYS5nbW8gYi9kcGtnLTEuMTYuMS4xL3BvL2NhLmdtbwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jYWRmYjUzCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9wby9jYS5nbW8KQmluYXJ5IGZpbGVzIGRpZmZlcgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9wby9jYS5wbyBiL2Rwa2ctMS4xNi4xLjEvcG8vY2EucG8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjkyZWYxMAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvcG8vY2EucG8KQEAgLTAsMCArMSw3NjQ3IEBACisjIENhdGFsYW4gdHJhbnNsYXRpb24gb2YgRHBrZy4KKyMgQ29weXJpZ2h0IMKpIDIwMDEsIDIwMDIsIDIwMDMsIDIwMDQsIDIwMDUsIDIwMDYsIDIwMDgsIDIwMDksIDIwMTAgU29mdHdhcmUgaW4gdGhlIFB1YmxpYyBJbnRlcmVzdCwgSW5jLgorIyBBbnRvbmkgQmVsbGEgPGJlbGxhNUB0ZWxlbGluZS5lcz4sIDIwMDEsIDIwMDIuCisjIEpvcmRpIE1hbGxhY2ggPGpvcmRpQGRlYmlhbi5vcmc+LCAyMDAyLCAyMDAzLCAyMDA0LCAyMDA1LCAyMDA2LCAyMDA4LCAyMDA5LCAyMDEwLgorIyBKb3Jkw6AgUG9sbyA8am9yZGFAZXR0aW4ub3JnPiwgMjAwNi4KKyMgR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPiwgMjAxMC4KKyMKK21zZ2lkICIiCittc2dzdHIgIiIKKyJQcm9qZWN0LUlkLVZlcnNpb246IGRwa2cgMS4xNS44LjZcbiIKKyJSZXBvcnQtTXNnaWQtQnVncy1UbzogZGViaWFuLWRwa2dAbGlzdHMuZGViaWFuLm9yZ1xuIgorIlBPVC1DcmVhdGlvbi1EYXRlOiAyMDExLTEwLTE0IDA3OjExKzAyMDBcbiIKKyJQTy1SZXZpc2lvbi1EYXRlOiAyMDEwLTEwLTI0IDE0OjM5KzAyMDBcbiIKKyJMYXN0LVRyYW5zbGF0b3I6IEpvcmRpIE1hbGxhY2ggPGpvcmRpQGRlYmlhbi5vcmc+XG4iCisiTGFuZ3VhZ2UtVGVhbTogQ2F0YWxhbiA8ZGViaWFuLWwxMG4tY2F0YWxhbkBsaXN0cy5kZWJpYW4ub3JnPlxuIgorIkxhbmd1YWdlOiBjYVxuIgorIk1JTUUtVmVyc2lvbjogMS4wXG4iCisiQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PVVURi04XG4iCisiQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdFxuIgorIlBsdXJhbC1Gb3JtczogbnBsdXJhbHM9MjsgcGx1cmFsPW4hPTE7XG4iCisKKyM6IGxpYi9kcGtnL2FyLmM6NjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgJyVjJyBpbiBhcmNoaXZlICclLjI1MHMnIG1lbWJlciAnJS4xNnMnIHNpemUiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvYXIuYzo4MSBsaWIvZHBrZy9hci5jOjk3IGxpYi9kcGtnL2FyLmM6MTA4IGxpYi9kcGtnL2FyLmM6MTEyCisjOiBsaWIvZHBrZy9hci5jOjEzNCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE1NAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgZmlsZSAnJXMnIgorbXNnc3RyICJubyBlcyBwb3QgZXNjcml1cmUgZWwgZml0eGVyIMKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL2FyLmM6OTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZ2VuZXJhdGVkIGNvcnJ1cHQgYXIgaGVhZGVyIGZvciAnJXMnIgorbXNnc3RyICJzJ2hhIGdlbmVyYXQgdW5hIGNhcMOnYWxlcmEgYXIgY29ycm9tcHVkYSBwZXIgYSDCqyVzwrsiCisKKyM6IGxpYi9kcGtnL2FyLmM6MTIzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBmc3RhdCBhciBtZW1iZXIgZmlsZSAoJXMpIgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGZlciDCq2ZzdGF0wrsgZGVsIGZpdHhlciBtZW1icmUgZCdhciAoJXMpIgorCisjOiBsaWIvZHBrZy9hci5jOjEzMAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGFyIG1lbWJlciBmaWxlICglcykiCittc2dpZCAiYXIgbWVtYmVyIGZpbGUgKCVzKSIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBmZXIgwqtmc3RhdMK7IGRlbCBmaXR4ZXIgbWVtYnJlIGQnYXIgKCVzKSIKKworIyBBw6fDsiBxdWUgaGUgZXNjcml0IHTDqSBzZW50aXQ/IGptCisjOiBsaWIvZHBrZy9idWZmZXIuYzoxOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgb24gYnVmZmVyIGNvcHkgZm9yICVzIgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGxsZWdpciBkZSBsYSBjw7JwaWEgZGVsIGLDumZlciBwZXIgYSAlcyIKKworIzogbGliL2Rwa2cvYnVmZmVyLmM6MjEyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCBpbiB3cml0ZSBvbiBidWZmZXIgY29weSBmb3IgJXMiCittc2dzdHIgIm5vIHMnaGEgcG9ndXQgZXNjcml1cmUgYSBsYSBjw7JwaWEgZGVsIGLDumZlciBwZXIgYSAlcyIKKworIzogbGliL2Rwa2cvYnVmZmVyLmM6MjIwCisjLCBjLWZvcm1hdAorbXNnaWQgInNob3J0IHJlYWQgb24gYnVmZmVyIGNvcHkgZm9yICVzIgorbXNnc3RyICJsbGVnaWRhIGN1cnRhIGRlIGxhIGPDsnBpYSBkZWwgYsO6ZmVyIHBlciBhICVzIgorCisjOiBsaWIvZHBrZy9idWZmZXIuYzoyODgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byBleGVjIHRhciIKK21zZ2lkICJmYWlsZWQgdG8gc2VlayAlcyIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBleGVjdXRhciB0YXIiCisKKyM6IGxpYi9kcGtnL2NvbW1hbmQuYzoxNzggbGliL2Rwa2cvY29tbWFuZC5jOjIwNCBzcmMvaGVscC5jOjYyMQorIzogc3JjL3Byb2Nlc3NhcmMuYzo5OCBzcmMvcHJvY2Vzc2FyYy5jOjEzOCBzcmMvcHJvY2Vzc2FyYy5jOjQzMgorIzogc3JjL3Byb2Nlc3NhcmMuYzo4MzkgZHBrZy1kZWIvYnVpbGQuYzo0NTkgZHBrZy1kZWIvYnVpbGQuYzo1MzgKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTYxIGRwa2ctZGViL2V4dHJhY3QuYzozMTcgZHBrZy1kZWIvaW5mby5jOjY1CisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6NjkgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQ1NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZXhlY3V0ZSAlcyAoJXMpIgorbXNnc3RyICJubyBlcyBwb3QgZXhlY3V0YXIgJXMgKCVzKSIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzo4MworIywgYy1mb3JtYXQKK21zZ2lkICIlczogZGVjb21wcmVzc2lvbiIKK21zZ3N0ciAiJXM6IGRlc2NvbXByZXNzacOzIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjg5CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBjb21wcmVzc2lvbiIKK21zZ3N0ciAiJXM6IGNvbXByZXNzacOzIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjExMgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZXJyb3IgYmluZGluZyBpbnB1dCB0byBnemlwIHN0cmVhbSIKK21zZ3N0ciAiJXM6IHMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgYWwgdmluY3VsYXIgbCdlbnRyYWRhIGFsIGZsdXggZ3ppcCIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgcmVhZCBlcnJvcjogJyVzJyIKK21zZ3N0ciAiJXM6IHMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZGUgbGVjdHVyYSBpbnRlcm4gZGUgZ3ppcDogwqslc8K7IgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjEzMiBsaWIvZHBrZy9jb21wcmVzcy5jOjEzNgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCB3cml0ZSBlcnJvciIKK21zZ3N0ciAiJXM6IHMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZCdlc2NyaXB0dXJhIGludGVybiBkZSBnemlwIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE1MAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZXJyb3IgYmluZGluZyBvdXRwdXQgdG8gZ3ppcCBzdHJlYW0iCittc2dzdHIgIiVzOiBzJ2hhIHByb2R1w690IHVuIGVycm9yIGFsIHZpbmNsdWFyIGxhIHNvcnRpZGEgYWwgZmx1eCBnemlwIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE1NworIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCByZWFkIGVycm9yIgorbXNnc3RyICIlczogcydoYSBwcm9kdcOvdCB1biBlcnJvciBkZSBsZWN0dXJhIGludGVybiBkZSBnemlwIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE2NworIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCB3cml0ZSBlcnJvcjogJyVzJyIKK21zZ3N0ciAiJXM6IHMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZCdlc2NyaXB0dXJhIGludGVybiBkZSBnemlwOiDCqyVzwrsiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTgwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHdyaXRlIGVycm9yOiAlcyIKK21zZ3N0ciAiJXM6IHMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZCdlc2NyaXB0dXJhIGludGVybiBkZSBnemlwOiDCqyVzwrsiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjIwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvciBiaW5kaW5nIGlucHV0IHRvIGJ6aXAyIHN0cmVhbSIKK21zZ3N0ciAiJXM6IHMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgYWwgdmluY3VsYXIgbCdlbnRyYWRhIGFsIGZsdXggYnppcDIiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiByZWFkIGVycm9yOiAnJXMnIgorbXNnc3RyICIlczogcydoYSBwcm9kdcOvdCB1biBlcnJvciBkZSBsZWN0dXJhIGludGVybiBkZSBiemlwMjogwqslc8K7IgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI0MCBsaWIvZHBrZy9jb21wcmVzcy5jOjI0NCBsaWIvZHBrZy9jb21wcmVzcy5jOjI5NAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgd3JpdGUgZXJyb3IiCittc2dzdHIgIiVzOiBzJ2hhIHByb2R1w690IHVuIGVycm9yIGQnZXNjcmlwdHVyYSBpbnRlcm4gZGUgYnppcDIiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjU4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvciBiaW5kaW5nIG91dHB1dCB0byBiemlwMiBzdHJlYW0iCittc2dzdHIgIiVzOiBzJ2hhIHByb2R1w690IHVuIGVycm9yIGFsIHZpbmNsdWFyIGxhIHNvcnRpZGEgYWwgZmx1eCBiemlwMiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIHJlYWQgZXJyb3IiCittc2dzdHIgIiVzOiBzJ2hhIHByb2R1w690IHVuIGVycm9yIGRlIGxlY3R1cmEgaW50ZXJuIGRlIGJ6aXAyIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI3NSBsaWIvZHBrZy9jb21wcmVzcy5jOjI4NgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgd3JpdGUgZXJyb3I6ICclcyciCittc2dzdHIgIiVzOiBzJ2hhIHByb2R1w690IHVuIGVycm9yIGQnZXNjcnB0dXJhIGludGVybiBkZSBiemlwMjogwqslc8K7IgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI4MgorbXNnaWQgInVuZXhwZWN0ZWQgYnppcDIgZXJyb3IiCittc2dzdHIgImVycm9yIGluZXNwZXJhdCBkZSBiemlwMiIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzo2OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidXBkYXRlcyBkaXJlY3RvcnkgY29udGFpbnMgZmlsZSBgJS4yNTBzJyB3aG9zZSBuYW1lIGlzIHRvbyBsb25nIChsZW5ndGg9JWQsICIKKyJtYXg9JWQpIgorbXNnc3RyICIiCisiZWwgZGlyZWN0b3JpIGQnYWN0dWFsaXR6YWNpb25zIGNvbnTDqSBlbCBmaXR4ZXIgwqslLjI1MHPCuywgYW1iIHVuIG5vbSBtYXNzYSAiCisiZ3JhbiAobG9uZ2l0dWQ9JWQsIG3DoHg9JWQpIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1cGRhdGVzIGRpcmVjdG9yeSBjb250YWlucyBmaWxlcyB3aXRoIGRpZmZlcmVudCBsZW5ndGggbmFtZXMgKGJvdGggJWQgYW5kICVkKSIKK21zZ3N0ciAiIgorImVsIGRpcmVjdG9yaSBkJ2FjdHVhbGl0emFjaW9ucyBjb250w6kgZml0eGVycyBhbWIgbm9tcyBkZSBkaWZlcmVudHMgbG9uZ2l0dWRzICIKKyIoJWQgaSAlZCkiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHNjYW4gdXBkYXRlcyBkaXJlY3RvcnkgYCUuMjU1cyciCittc2dzdHIgIm5vIGVzIHBvdCBhbmFsaXR6YXIgZWwgZGlyZWN0b3JpIGQnYWN0dWFsaXR6YWNpb25zIMKrJS4yNTVzwrsiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZW1vdmUgaW5jb3Jwb3JhdGVkIHVwZGF0ZSBmaWxlICUuMjU1cyIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBlbGltaW5hciBlbCBmaXR4ZXIgZCdhY3R1YWxpdHphY2nDsyBpbmNvcnBvcmF0ICUuMjU1cyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxMjEgZHBrZy1kZWIvYnVpbGQuYzo0NDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBgJS4yNTVzJyIKK21zZ3N0ciAibm8gZXMgcG90IGNyZWFyIMKrJS4yNTVzwrsiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTI1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmaWxsICUuMjUwcyB3aXRoIHBhZGRpbmciCittc2dzdHIgIm5vIGVzIHBvdCBlbXBsZW5hciAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTI3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCAlLjI1MHMgYWZ0ZXIgcGFkZGluZyIKK21zZ3N0ciAibm8gZXMgcG90IGZlciDCq2ZsdXNowrsgZW4gJS4yNTBzIGRlc3Byw6lzIGRlbCBmYXJjaW1lbnQiCisKKyMgRklYTUUgb3JpZ2luYWwKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTI5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWVrIHRvIHN0YXJ0IG9mICUuMjUwcyBhZnRlciBwYWRkaW5nIgorbXNnc3RyICJubyBlcyBwb3QgdG9ybmFyIGFsIHByaW5jaXBpIGRlICUuMjUwcyBkZXNwcsOpcyBkZWwgZmFyY2ltZW50IgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjE5NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBsb2NrIGZpbGUgJXMgZm9yIHRlc3RpbmciCittc2dzdHIgIm5vIGVzIHBvdCBvYnJpciBlbCBmaXR4ZXIgZGUgYmxvY2F0Z2UgJXMgcGVyIGNvbXByb3ZhciIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyMjEKK21zZ2lkICJ1bmFibGUgdG8gb3Blbi9jcmVhdGUgc3RhdHVzIGRhdGFiYXNlIGxvY2tmaWxlIgorbXNnc3RyICIiCisibm8gZXMgcG90IG9icmlyL2NyZWFyIGVsIGZpdHhlciBkZSBibG9jYXRnZSBkZSBsYSBiYXNlIGRlIGRhZGVzIGQnZXN0YXQiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjMxCittc2dpZCAieW91IGRvIG5vdCBoYXZlIHBlcm1pc3Npb24gdG8gbG9jayB0aGUgZHBrZyBzdGF0dXMgZGF0YWJhc2UiCittc2dzdHIgIm5vIHRlbml1IHBlcm3DrXMgcGVyIGEgYmxvY2FyIGxhIGJhc2UgZGUgZGFkZXMgZCdlc3RhdCBkZWwgZHBrZyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyMzMKKyMsIGZ1enp5CisjfCBtc2dpZCAidW5hYmxlIHRvIGxvY2sgZHBrZyBzdGF0dXMgZGF0YWJhc2UiCittc2dpZCAiZHBrZyBzdGF0dXMgZGF0YWJhc2UiCittc2dzdHIgIm5vIGVzIHBvdCBibG9jYXIgbGEgYmFzZSBkZSBkYWRlcyBkJ2VzdGF0IGRlbCBkcGtnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjI1NworbXNnaWQgInJlcXVlc3RlZCBvcGVyYXRpb24gcmVxdWlyZXMgc3VwZXJ1c2VyIHByaXZpbGVnZSIKK21zZ3N0ciAibGEgb3BlcmFjacOzIHNvxYBsaWNpdGFkYSByZXF1ZXJlaXggcHJpdmlsZWdpcyBkZSBzdXBlcnVzdWFyaSIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyNjIKK21zZ2lkICJ1bmFibGUgdG8gYWNjZXNzIGRwa2cgc3RhdHVzIGFyZWEiCittc2dzdHIgIm5vIGVzIHBvdCBhY2NlZGlyIGEgbCfDoHJlYSBkJ2VzdGF0IGRlbCBkcGtnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjI2NAorbXNnaWQgIm9wZXJhdGlvbiByZXF1aXJlcyByZWFkL3dyaXRlIGFjY2VzcyB0byBkcGtnIHN0YXR1cyBhcmVhIgorbXNnc3RyICIiCisibCdvcGVyYWNpw7MgcmVxdWVyZWl4IGFjY8OpcyBkZSBsZWN0dXJhIGkgZXNjcmlwdHVyYSBhIGwnw6ByZWEgZCdlc3RhdCBkZWwgZHBrZyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozMDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlbW92ZSBteSBvd24gdXBkYXRlIGZpbGUgJS4yNTVzIgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGVzYm9ycmFyIGVsIG5vc3RyZSBwcm9waSBmaXR4ZXIgZCdhY3R1YWxpdHphY2nDsyAlLjI1NXMiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzQ3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAibm8gZXMgcG90IGVzY3JpdXJlIGwnZXN0YXQgZCdhY3R1YWxpdHphY2nDsyBkZSDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM0OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgIm5vIGVzIHBvdCBmZXIgwqtmbHVzaMK7IGFtYiBsJ2VzdGF0IGQnYWN0dWFsaXR6YWNpw7MgZGUgwqslLjI1MHPCuyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHRydW5jYXRlIGZvciB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAibm8gZXMgcG90IHRydW5jYXIgbCdlc3RhdCBhY3R1YWxpdHphdCBkZSDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM1MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZnN5bmMgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgIm5vIGVzIHBvdCBmZXIgwqtmc3luY8K7IHNvYnJlIGwnZXN0YXQgZCdhY3R1YWxpdHphY2nDsyBkZSDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM1NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgIm5vIGVzIHBvdCB0YW5jYXIgbCdlc3RhdCBkJ2FjdHVhbGl0emFjacOzIGRlIMKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzU4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJubyBlcyBwb3QgaW5zdGHFgGxhciBsJ2VzdGF0IGFjdHVhbGl0emFjacOzIGRlIMKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL2Rpci5jOjUwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gcmVhZCBmaWxlZGVzY3JpcHRvciBmbGFncyBmb3IgJS4yNTBzIgorbXNnaWQgInVuYWJsZSB0byBnZXQgZmlsZSBkZXNjcmlwdG9yIGZvciBkaXJlY3RvcnkgJyVzJyIKK21zZ3N0ciAiIgorIm5vIGVzIHBvZGVuIGxsZWdpciBsYXMgcHJvcGlldGF0cyBkZWwgZGVzY3JpcHRvciBkZSBmaXR4ZXJzIHBlciBhICUuMjUwcyIKKworIyBObyBlcyBwb3Qgc2luY3Jvbml0emFyLCBvIG5vIGVzIHBvdCBmZXIgwqtzeW5jwrs/IGptCisjOiBsaWIvZHBrZy9kaXIuYzo1NAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHN5bmMgZmlsZSAnJXMnIgorbXNnaWQgInVuYWJsZSB0byBzeW5jIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICJubyBlcyBwb3QgZmVyIMKrc3luY8K7IHNvYnJlIGVsIGZpdHhlciDCqyVzwrsiCisKKyM6IGxpYi9kcGtnL2Rpci5jOjY5IGxpYi9kcGtnL2Rpci5jOjEzMQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIG9wZW4gZmlsZSAnJXMnIgorbXNnaWQgInVuYWJsZSB0byBvcGVuIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICJubyBlcyBwb3Qgb2JyaXIgZWwgZml0eGVyIMKrJXPCuyIKKworIzogbGliL2Rwa2cvZGlyLmM6MTA5IHNyYy9kaXZlcnRjbWQuYzoyMTggZHBrZy1zcGxpdC9zcGxpdC5jOjIwMgorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gZmlsZSAnJXMnIgorbXNnc3RyICJubyBlcyBwb3Qgb2JyaXIgZWwgZml0eGVyIMKrJXPCuyIKKworIyBObyBlcyBwb3Qgc2luY3Jvbml0emFyLCBvIG5vIGVzIHBvdCBmZXIgwqtzeW5jwrs/IGptCisjOiBsaWIvZHBrZy9kaXIuYzoxMTEgc3JjL2RpdmVydGNtZC5jOjIzMiBzcmMvZGl2ZXJ0Y21kLmM6Mzc3CisjOiBzcmMvc3RhdGNtZC5jOjIxNyBkcGtnLWRlYi9idWlsZC5jOjU5OCBkcGtnLXNwbGl0L2pvaW4uYzo2NQorIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE4NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTQwNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBmaWxlICclcyciCittc2dzdHIgIm5vIGVzIHBvdCBmZXIgwqtzeW5jwrsgc29icmUgZWwgZml0eGVyIMKrJXPCuyIKKworIzogbGliL2Rwa2cvZGlyLmM6MTEzIHNyYy9kaXZlcnRjbWQuYzoyMzQgc3JjL2RpdmVydGNtZC5jOjM3OQorIzogZHBrZy1kZWIvYnVpbGQuYzo2MDAgZHBrZy1zcGxpdC9qb2luLmM6NjcgZHBrZy1zcGxpdC9xdWV1ZS5jOjE4OQorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzMTQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE0MDgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIGZpbGUgJyVzJyIKK21zZ3N0ciAibm8gZXMgcG90IHRhbmNhciBlbCBmaXR4ZXIgwqslc8K7IgorCisjOiBsaWIvZHBrZy9kdW1wLmM6Mzk2CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB3cml0ZSBkZXRhaWxzIG9mIGAlLjUwcycgdG8gYCUuMjUwcyciCittc2dzdHIgIm5vIHMnaGFuIHBvZ3V0IGVzY3JpdXJlIGVscyBkZXRhbGxzIGRlIMKrJS41MHPCuyBhIMKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0MjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gJyVzJyBmb3Igd3JpdGluZyAlcyBkYXRhYmFzZSIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBvYnJpciDCqyVzwrsgcGVyIGEgZXNjcml1cmUgJXMgYSBsYSBiYXNlIGRlIGRhZGVzIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDI2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgYnVmZmVyaW5nIG9uICVzIGRhdGFiYXNlIGZpbGUiCittc2dzdHIgIiIKKyJubyBlcyBwb3QgZXN0YWJsaXIgZW1tYWdhdHplbWFtZW50IGludGVybWVkaSBhbCBmaXR4ZXIgZGUgbGEgYmFzZSBkZSBkYWRlcyAlcyIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQzOAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgJXMgZGF0YWJhc2UgcmVjb3JkIGFib3V0ICclLjUwcycgdG8gJyUuMjUwcyciCittc2dzdHIgIiIKKyJubyBzJ2hhIHBvZ3V0IGVzY3JpdXJlIGVsIHJlZ2lzdHJlIGRlIGxhIGJhc2UgZGUgZGFkZXMgJXMgc29icmUgwqslLjUwc8K7IGEgIgorIsKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZsdXNoICVzIGRhdGFiYXNlIHRvICclLjI1MHMnIgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGZlciDCq2ZsdXNowrsgZGUgbGEgYmFzZSBkZSBkYWRlcyAlcyBlbiDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDQ4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBmc3luYyAlcyBkYXRhYmFzZSB0byAnJS4yNTBzJyIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBmZXIgwqtmc3luY8K7IHNvYnJlIGxhIGJhc2UgZGUgZGFkZXMgJXMgYSDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDUxCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjbG9zZSAnJS4yNTBzJyBhZnRlciB3cml0aW5nICVzIGRhdGFiYXNlIgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IHRhbmNhciDCqyUuMjUwc8K7IGRlc3Byw6lzIGQnZXNjcml1cmUgbGEgYmFzZSBkZSBkYWRlcyAlcyIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ1NQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gbGluayAnJS4yNTBzJyB0byAnJS4yNTBzJyBmb3IgYmFja3VwIG9mICVzIGRhdGFiYXNlIgorbXNnc3RyICIiCisibm8gcydoYSBwb2d1dCBlbmxsYcOnYXIgwqslLjI1MHPCuyBhbWIgwqslLjI1MHPCuyBjb20gYSBjw7JwaWEgZGUgc2VndXJldGF0IGRlIGxhICIKKyJiYXNlIGRlIGRhZGVzICVzIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDU4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBpbnN0YWxsICclLjI1MHMnIGFzICclLjI1MHMnIGNvbnRhaW5pbmcgJXMgZGF0YWJhc2UiCittc2dzdHIgIiIKKyJubyBzJ2hhIHBvZ3V0IGluc3RhxYBsYXIgwqslLjI1MHPCuyBjb20gYSDCqyUuMjUwc8K7IGFtYiBsYSBiYXNlIGRlIGRhZGVzICVzIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6OTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiB1bnJlY292ZXJhYmxlIGZhdGFsIGVycm9yLCBhYm9ydGluZzpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorIiVzOiBzJ2hhIHByb2R1w690IHVuIGVycm9yIGdyZXUgaXJyZWN1cGVyYWJsZSwgcydlc3RhIGFib3J0YW50OlxuIgorIiAlc1xuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MTAwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiJXM6IHVucmVjb3ZlcmFibGUgZmF0YWwgZXJyb3IsIGFib3J0aW5nOlxuIgorI3wgIiAlc1xuIgorbXNnaWQgIiIKKyIlczogb3V0c2lkZSBlcnJvciBjb250ZXh0LCBhYm9ydGluZzpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorIiVzOiBzJ2hhIHByb2R1w690IHVuIGVycm9yIGdyZXUgaXJyZWN1cGVyYWJsZSwgcydlc3RhIGFib3J0YW50OlxuIgorIiAlc1xuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MTIwCisjLCBmdXp6eQorI3wgbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBjbGVhbnVwIGVudHJ5IgorbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBlcnJvciBjb250ZXh0IgorbXNnc3RyICJtZW3DsnJpYSBleGhhdXJpZGEgcGVyIGEgdW5hIGVudHJhZGEgbm92YSBkZSBuZXRlamEiCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoxODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBlcnJvciB3aGlsZSBjbGVhbmluZyB1cDpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorIiVzOiBzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIG5ldGVqYXI6XG4iCisiICVzXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoyMDEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImRwa2c6IHRvbyBtYW55IG5lc3RlZCBlcnJvcnMgZHVyaW5nIGVycm9yIHJlY292ZXJ5ICEhXG4iCittc2dpZCAiJXM6IHRvbyBtYW55IG5lc3RlZCBlcnJvcnMgZHVyaW5nIGVycm9yIHJlY292ZXJ5ISFcbiIKK21zZ3N0ciAiZHBrZzogcydoYW4gcHJvZHXDr3QgbWFzc2EgZXJyb3JzIG5pdWF0cyBkdXJhbnQgbGEgcmVjdXBlcmFjacOzIVxuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MjY4IGxpYi9kcGtnL2VoYW5kbGUuYzozMDcKK21zZ2lkICJvdXQgb2YgbWVtb3J5IGZvciBuZXcgY2xlYW51cCBlbnRyeSIKK21zZ3N0ciAibWVtw7JyaWEgZXhoYXVyaWRhIHBlciBhIHVuYSBlbnRyYWRhIG5vdmEgZGUgbmV0ZWphIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MjkxCittc2dpZCAib3V0IG9mIG1lbW9yeSBmb3IgbmV3IGNsZWFudXAgZW50cnkgd2l0aCBtYW55IGFyZ3VtZW50cyIKK21zZ3N0ciAibWVtw7JyaWEgZXhoYXVyaWRhIHBlciBhIHVuYSBlbnRyYWRhIG5vdmEgZGUgbmV0ZWphIGFtYiBtYXNzYSBhcmd1bWVudHMiCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzozNTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiVzOiBlcnJvciBjbG9zaW5nICVzOiAlcyIKK21zZ2lkICIlczogZXJyb3I6ICVzXG4iCittc2dzdHIgIiVzOiBzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIHRhbmNhciAlczogJXMiCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzozOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IHdhcm5pbmc6ICVzXG4iCittc2dzdHIgIiVzOiBhdsOtczogJXNcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjQxNgorIywgYy1mb3JtYXQKK21zZ2lkICIlczolczolZDogaW50ZXJuYWwgZXJyb3I6ICVzXG4iCittc2dzdHIgIiVzOiVzOiVkOiBzJ2hhIHByb2R1w690IGwnZXJyb3IgaW50ZXJuIMKrJXPCu1xuIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBpcyBtaXNzaW5nIgorbXNnc3RyICJtYW5jYSAlcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImAlLipzJyBpcyBub3QgYWxsb3dlZCBmb3IgJXMiCittc2dpZCAiJyUuNTBzJyBpcyBub3QgYWxsb3dlZCBmb3IgJXMiCittc2dzdHIgIm5vIHMnYWRtZXQgwqslLipzwrsgcGVyIGEgJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjczCisjLCBjLWZvcm1hdAorbXNnaWQgImp1bmsgYWZ0ZXIgJXMiCittc2dzdHIgImJyb3NzYSBkZXNwcsOpcyBkZSAlcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6ODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBwYWNrYWdlIG5hbWUgKCUuMjUwcykiCittc2dzdHIgImVsIG5vbSBkZWwgcGFxdWV0IMOpcyBpbnbDoGxpZCAoJS4yNTBzKSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgImVtcHR5IGZpbGUgZGV0YWlscyBmaWVsZCBgJXMnIgorbXNnc3RyICJjYW1wIGRlIGRldGFsbHMgwqslc8K7IGRlbCBmaXR4ZXIgYnVpdCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTA1CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgZGV0YWlscyBmaWVsZCBgJXMnIG5vdCBhbGxvd2VkIGluIHN0YXR1cyBmaWxlIgorbXNnc3RyICJjYW1wIGRlIGRldGFsbHMgZGVsIGZpdHhlciDCqyVzwrsgbm8gcGVybcOpcyBhbCBmaXR4ZXIgZCdlc3RhdCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTE4CisjLCBjLWZvcm1hdAorbXNnaWQgInRvbyBtYW55IHZhbHVlcyBpbiBmaWxlIGRldGFpbHMgZmllbGQgYCVzJyAoY29tcGFyZWQgdG8gb3RoZXJzKSIKK21zZ3N0ciAiIgorIm1hc3NhIHZhbG9ycyBlbiBlbCBjYW1wIGRlIGRldGFsbHMgZGVsIGZpdHhlciDCqyVzwrsgKGNvbXBhcmF0IGFtYiBkJ2FsdHJlcykiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjEzMgorIywgYy1mb3JtYXQKK21zZ2lkICJ0b28gZmV3IHZhbHVlcyBpbiBmaWxlIGRldGFpbHMgZmllbGQgYCVzJyAoY29tcGFyZWQgdG8gb3RoZXJzKSIKK21zZ3N0ciAiIgorIm5vbSBkZSB2YWxvcnMgaW5zdWZpY2llbnQgZW4gZWwgY2FtcCBkZWxzIGRldGFsbHMgZGUgZml0eGVyIMKrJXPCuyAoY29tcGFyYXQgIgorImFtYiBkJ2FsdHJlcykiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE1NAorbXNnaWQgInllcy9ubyBpbiBib29sZWFuIGZpZWxkIgorbXNnc3RyICJzw60vbm8gZW4gdW4gY2FtcCBib29sZcOgIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxNzQKK21zZ2lkICJ3b3JkIGluIGBwcmlvcml0eScgZmllbGQiCittc2dzdHIgInBhcmF1bGEgYWwgY2FtcCDCq3ByaW9yaXR5wrsiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE4NgorbXNnaWQgInZhbHVlIGZvciBgc3RhdHVzJyBmaWVsZCBub3QgYWxsb3dlZCBpbiB0aGlzIGNvbnRleHQiCittc2dzdHIgImVsIHZhbG9yIHBlbCBjYW1wIMKrc3RhdHVzwrsgbm8gZXN0w6AgcGVybcOpcyBlbiBhcXVlc3QgY29udGV4dCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTkxCittc2dpZCAiZmlyc3QgKHdhbnQpIHdvcmQgaW4gYHN0YXR1cycgZmllbGQiCittc2dzdHIgInByaW1lcmEgcGFyYXVsYSAoZGUgcmVxdWVyaW1lbnQpIGFsIGNhbXAgwqtzdGF0dXPCuyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTk0Cittc2dpZCAic2Vjb25kIChlcnJvcikgd29yZCBpbiBgc3RhdHVzJyBmaWVsZCIKK21zZ3N0ciAic2Vnb25hIHBhcmF1bGEgKGQnZXJyb3IpIGFsIGNhbXAgwqtzdGF0dXPCuyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTk3Cittc2dpZCAidGhpcmQgKHN0YXR1cykgd29yZCBpbiBgc3RhdHVzJyBmaWVsZCIKK21zZ3N0ciAidGVyY2VyYSBwYXJhdWxhIChkJ2VzdGF0KSBhbCBjYW1wIMKrc3RhdHVzwrsiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjIwNworIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBpbiBWZXJzaW9uIHN0cmluZyAnJS4yNTBzJyIKK21zZ3N0ciAiZXJyb3IgZW4gbGEgY2FkZW5hIFZlcnNpb24gwqslLjI1MHPCuyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjE4Cittc2dpZCAib2Jzb2xldGUgYFJldmlzaW9uJyBvciBgUGFja2FnZS1SZXZpc2lvbicgZmllbGQgdXNlZCIKK21zZ3N0ciAiUydoYSB1dGlsaXR6YXQgdW4gY2FtcCDCq1JldmlzaW9uwrsgbyDCq1BhY2thZ2UtUmV2aXNpb27CuyBvYnNvbGV0IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyMzUKK21zZ2lkICJ2YWx1ZSBmb3IgYGNvbmZpZy12ZXJzaW9uJyBmaWVsZCBub3QgYWxsb3dlZCBpbiB0aGlzIGNvbnRleHQiCittc2dzdHIgImVuIGFxdWVzdCBjb250ZXh0IG5vIGVzIHBlcm1ldCB1biB2YWxvciBwZWwgY2FtcCDCq2NvbmZpZy12ZXJzaW9uwrsiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjI0MAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBpbiBDb25maWctVmVyc2lvbiBzdHJpbmcgJyUuMjUwcyciCittc2dzdHIgImVycm9yIGVuIGxhIGNhZGVuYSBDb25maWctVmVyc2lvbiDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAidmFsdWUgZm9yIGBjb25mZmlsZXMnIGhhcyBtYWxmb3JtYXR0ZWQgbGluZSBgJS4qcyciCittc2dzdHIgImVsIHZhbG9yIGRlIMKrY29uZmZpbGVzwrsgdMOpIHVuYSBsw61uaWEgYW1iIGZvcm1hdCBlcnJvbmkgwqslLipzwrsiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjI4NworIywgYy1mb3JtYXQKK21zZ2lkICJ2YWx1ZSBmb3IgYGNvbmZmaWxlcycgaGFzIGxpbmUgc3RhcnRpbmcgd2l0aCBub24tc3BhY2UgYCVjJyIKK21zZ3N0ciAiIgorImVsIHZhbG9yIGRlIMKrY29uZmZpbGVzwrsgY29udMOpIHVuYSBsw61uaWEgcXVlIGNvbWVuw6dhIGFtYiB1biBjYXLDoGN0ZXIgwqslY8K7IHF1ZSAiCisibm8gw6lzIHVuIGVzcGFpIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzozMDQKK21zZ2lkICJyb290IG9yIG51bGwgZGlyZWN0b3J5IGlzIGxpc3RlZCBhcyBhIGNvbmZmaWxlIgorbXNnc3RyICJzJ2hhIGluZGljYXQgY29tIGNvbmZmaWxlIGVsIGRpcmVjdG9yaSBhcnJlbCBvIHVuIGRpcmVjdG9yaSBudWwiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjM2NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgbWlzc2luZyBwYWNrYWdlIG5hbWUsIG9yIGdhcmJhZ2Ugd2hlcmUgcGFja2FnZSBuYW1lIGV4cGVjdGVkIgorbXNnc3RyICIiCisiRW4gZWwgY2FtcCDCqyVzwrssIG1hbmNhIHVuIG5vbSBkZSBwYXF1ZXQsIG8gcydoYSB0cm9iYXQgYnJ1dMOtY2lhIG9uICIKKyJzJ2VzcGVyYXZhIHVuIG5vbSBkZSBwYXF1ZXQiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjM3MAorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGZpZWxkLCBpbnZhbGlkIHBhY2thZ2UgbmFtZSBgJS4yNTVzJzogJXMiCittc2dzdHIgImNhbXAgwqslc8K7LCBub20gZGUgcGFxdWV0IGludsOgbGlkIMKrJS4yNTVzwrs6ICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgYmFkIHZlcnNpb24gcmVsYXRpb25zaGlwICVjJWMiCittc2dzdHIgIiIKKyJlbCBjYW1wIMKrJXPCuywgZmEgcmVmZXLDqG5jaWEgYSDCqyUuMjU1c8K7OlxuIgorIiBsYSByZWxhY2nDsyBkZSB2ZXJzacOzICVjJWMgw6lzIGVycsOybmlhIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgYCVjJyBpcyBvYnNvbGV0ZSwgdXNlIGAlYz0nIG9yIGAlYyVjJyBpbnN0ZWFkIgorbXNnc3RyICIiCisiY2FtcCDCqyVzwrssIHJlZmVyw6huY2lhIGEgwqslLjI1NXPCuzpcbiIKKyIgwqslY8K7IGVzdMOgIG9ic29sZXQsIHVzZXUgwqslYz3CuyBvIMKrJWMlY8K7IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgaW1wbGljaXQgZXhhY3QgbWF0Y2ggb24gdmVyc2lvbiBudW1iZXIsIHN1Z2dlc3QgdXNpbmcgYD0nIGluc3RlYWQiCittc2dzdHIgIiIKKyJjYW1wIMKrJXPCuywgcmVmZXLDqG5jaWEgYSDCqyUuMjU1c8K7OlxuIgorIiBjb2luY2lkw6huY2lhIGltcGzDrWNpdGEgZW4gZWwgbsO6bWVybyBleGFjdGUgZGUgdmVyc2nDsywgc2Ugc3VnZ2VyZWl4IGVtcHJhciAiCisiwqs9wrsiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQzMAorbXNnaWQgIk9ubHkgZXhhY3QgdmVyc2lvbnMgbWF5IGJlIHVzZWQgZm9yIFByb3ZpZGVzIgorbXNnc3RyICJOb23DqXMgcG9kZXUgZW1wcmFyIHZlcnNpb25zIGV4YWN0ZXMgcGVyIGEgUHJvdmlkZXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQzNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOlxuIgorIiB2ZXJzaW9uIHZhbHVlIHN0YXJ0cyB3aXRoIG5vbi1hbHBoYW51bWVyaWMsIHN1Z2dlc3QgYWRkaW5nIGEgc3BhY2UiCittc2dzdHIgIiIKKyJjYW1wIMKrJXPCuywgcmVmZXLDqG5jaWEgYSDCqyUuMjU1c8K7OlxuIgorIiBlbCB2YWxvciBkZSB2ZXJzacOzIGNvbWVuw6dhIGFtYiB1biBjYXLDoGN0ZXIgbm8gYWxmYW51bcOocmljLCBzZSBzdWdnZXJlaXggIgorImFmZWdpciB1biBlc3BhaSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDUxIGxpYi9kcGtnL2ZpZWxkcy5jOjQ1NQorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6IHZlcnNpb24gY29udGFpbnMgYCVjJyIKK21zZ3N0ciAiY2FtcCDCqyVzwrssIHJlZmVyw6huY2lhIGEgwqslLjI1NXPCuzogbGEgdmVyc2nDsyBjb250w6kgdW4gwqslY8K7IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOiB2ZXJzaW9uIHVudGVybWluYXRlZCIKK21zZ3N0ciAiY2FtcCDCqyVzwrssIHJlZmVyw6huY2lhIGEgwqslLjI1NXPCuzogdmVyc2nDsyBubyB0ZXJtaW5hZGEiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ2NQorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gJyUuMjU1cyc6IGVycm9yIGluIHZlcnNpb24iCittc2dzdHIgImNhbXAgwqslc8K7LCByZWZlcsOobmNpYSBhIMKrJS4yNTVzwrs6IGVycm9yIGVuIGxhIHZlcnNpw7MiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ3NQorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGZpZWxkLCBzeW50YXggZXJyb3IgYWZ0ZXIgcmVmZXJlbmNlIHRvIHBhY2thZ2UgYCUuMjU1cyciCittc2dzdHIgIiIKKyJjYW1wIMKrJXPCuywgZXJyb3IgZGUgc2ludGF4aSBkZXNwcsOpcyBkZSBsYSByZWZlcsOobmNpYSBhbCBwYXF1ZXQgwqslLjI1NXPCuyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDgyCisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlcyAoYHwnKSBub3QgYWxsb3dlZCBpbiAlcyBmaWVsZCIKK21zZ3N0ciAibm8gcydhZG1ldGVuIGFsdGVybmF0aXZlcyAowqt8wrspIGVuIGVsIGNhbXAgJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjUzNgorbXNnaWQgInZhbHVlIGZvciBgdHJpZ2dlcnMtcGVuZGluZycgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICJlbiBhcXVlc3QgY29udGV4dCBubyBlcyBwZXJtZXQgdW4gdmFsb3IgcGVsIGNhbXAgwqt0cmlnZ2Vycy1wZW5kaW5nwrsiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU0MworIywgYy1mb3JtYXQKK21zZ2lkICJpbGxlZ2FsIHBlbmRpbmcgdHJpZ2dlciBuYW1lIGAlLjI1NXMnOiAlcyIKK21zZ3N0ciAiZWwgbm9tIGRlIGwnYWN0aXZhZG9yIHBlbmRlbnQgwqslLjI1NXPCuyDDqXMgacWAbGVnYWw6ICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHBlbmRpbmcgdHJpZ2dlciBgJS4yNTVzJyIKK21zZ3N0ciAibCdhY3RpdmFkb3IgcGVuZGVudCDCqyUuMjU1c8K7IMOpcyBkdXBsaWNhdCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTYxCittc2dpZCAidmFsdWUgZm9yIGB0cmlnZ2Vycy1hd2FpdGVkJyBmaWVsZCBub3QgYWxsb3dlZCBpbiB0aGlzIGNvbnRleHQiCittc2dzdHIgImVsIHZhbG9yIHBlbCBjYW1wIMKrdHJpZ2dlcnMtYXdhaXRlZMK7IG5vIGVzdMOgIHBlcm3DqXMgZW4gYXF1ZXN0IGNvbnRleHQiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU2OAorIywgYy1mb3JtYXQKK21zZ2lkICJpbGxlZ2FsIHBhY2thZ2UgbmFtZSBpbiBhd2FpdGVkIHRyaWdnZXIgYCUuMjU1cyc6ICVzIgorbXNnc3RyICJlbCBub20gZGVsIHBhcXVldCBhbCBhY3RpdmFkb3IgZXNwZXJhdCDCqyUuMjU1c8K7IMOpcyBpxYBsZWdhbDogJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU3NAorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgYXdhaXRlZCB0cmlnZ2VyIHBhY2thZ2UgYCUuMjU1cyciCittc2dzdHIgImVsIHBhcXVldCBkZSBsJ2FjdGl2YWRvciBlc3BlcmF0IMKrJS4yNTVzwrsgw6lzIGR1cGxpY2F0IgorCisjOiBsaWIvZHBrZy9maWxlLmM6NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgc291cmNlIGZpbGUgJyUuMjUwcyciCittc2dzdHIgIm5vIGVzIHBvdCBmZXIgwqtzdGF0wrsgc29icmUgZWwgZml0eGVyIGZvbnQgwqslLjI1MHPCuyIKKworIzogbGliL2Rwa2cvZmlsZS5jOjU1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGFuZ2Ugb3duZXJzaGlwIG9mIHRhcmdldCBmaWxlICclLjI1MHMnIgorbXNnc3RyICJubyBlcyBwb3QgY2FudmlhciBlbCBwcm9waWV0YXJpIGRlbCBmaXR4ZXIgZGVzdMOtIMKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzo1OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IG1vZGUgb2YgdGFyZ2V0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgIm5vIGVzIHBvdCBlc3RhYmxpciBlbCBtb2RlIGRlbCBmaXR4ZXIgZGVzdMOtIMKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzo4NQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHVubG9jayAlczogJXMiCittc2dpZCAidW5hYmxlIHRvIHVubG9jayAlcyIKK21zZ3N0ciAibm8gZXMgcG90IGRlc2Jsb2NhciAlczogJXMiCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzoxMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoZWNrIGZpbGUgJyVzJyBsb2NrIHN0YXR1cyIKK21zZ3N0ciAibm8gZXMgcG90IGNvbXByb3ZhciBsJ2VzdGF0IGRlIGJsb2NhdGdlIGRlbCBmaXR4ZXIgwqslc8K7IgorCisjOiBsaWIvZHBrZy9maWxlLmM6MTQ2CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJzdGF0dXMgZGF0YWJhc2UgYXJlYSBpcyBsb2NrZWQgYnkgYW5vdGhlciBwcm9jZXNzIgorbXNnaWQgIiVzIGlzIGxvY2tlZCBieSBhbm90aGVyIHByb2Nlc3MiCittc2dzdHIgImwnw6ByZWEgZGUgbGEgYmFzZSBkZSBkYWRlcyBkJ2VzdGF0IGVzdMOgIGJsb2NhZGEgcGVyIHVuIGFsdHJlIHByb2PDqXMiCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzoxNDgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byB1bmxvY2sgJXM6ICVzIgorbXNnaWQgInVuYWJsZSB0byBsb2NrICVzIgorbXNnc3RyICJubyBlcyBwb3QgZGVzYmxvY2FyICVzOiAlcyIKKworIzogbGliL2Rwa2cvbG9nLmM6NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGRuJ3Qgb3BlbiBsb2cgYCVzJzogJXNcbiIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBvYnJpciBlbCByZWdpc3RyZSDCqyVzwrs6ICVzXG4iCisKKyM6IGxpYi9kcGtnL2xvZy5jOjg1Cittc2dpZCAiPHBhY2thZ2Ugc3RhdHVzIGFuZCBwcm9ncmVzcyBmaWxlIGRlc2NyaXB0b3I+IgorbXNnc3RyICI8ZXN0YXQgZGVsIHBhcXVldCBpIGRlc2NyaXB0b3IgZGUgZml0eGVyIGRlIHByb2dyw6lzPiIKKworIzogbGliL2Rwa2cvbG9nLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSB0byBzdGF0dXMgZmQgJWQiCittc2dzdHIgIm5vIGVzIHBvdCBlc2NyaXVyZSBhbCBkZXNjcmlwdG9yIGRlIGZpdHhlciBkJ2VzdGF0ICVkIgorCisjOiBsaWIvZHBrZy9tbGliLmM6NDQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAicmVhbGxvYyBmYWlsZWQgKCV6dSBieXRlcykiCittc2dpZCAibWFsbG9jIGZhaWxlZCAoJXp1IGJ5dGVzKSIKK21zZ3N0ciAiaGEgZmFsbGF0IGVsIMKrcmVhbGxvY8K7ICglenUgb2N0ZXRzKSIKKworIzogbGliL2Rwa2cvbWxpYi5jOjU4CisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWxsb2MgZmFpbGVkICglenUgYnl0ZXMpIgorbXNnc3RyICJoYSBmYWxsYXQgZWwgwqtyZWFsbG9jwrsgKCV6dSBvY3RldHMpIgorCisjOiBsaWIvZHBrZy9tbGliLmM6NzIgbGliL2Rwa2cvbWxpYi5jOjkwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNzcKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzozMzQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMDcKK21zZ2lkICJmYWlsZWQgdG8gYWxsb2NhdGUgbWVtb3J5IgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGFzc2lnbmFyIG1lbcOycmlhIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBkdXAgZm9yIHN0ZCVzIgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGZlciDCq2R1cMK7IHBlciBhIHN0ZCVzIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTAzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBkdXAgZm9yIGZkICVkIgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGZlciDCq2R1cMK7IHBlciBhbCBmZCAlZCIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEwOQorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgcGlwZSIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBjcmVhciB1biBjb25kdWN0ZSIKKworIzogbGliL2Rwa2cvbWxpYi5jOjExNworIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciB3cml0aW5nIHRvICclcyciCittc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gZXNjcml1cmUgYSDCqyVzwrsiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgZmlsZWRlc2NyaXB0b3IgZmxhZ3MgZm9yICUuMjUwcyIKK21zZ3N0ciAiIgorIm5vIGVzIHBvZGVuIGxsZWdpciBsYXMgcHJvcGlldGF0cyBkZWwgZGVzY3JpcHRvciBkZSBmaXR4ZXJzIHBlciBhICUuMjUwcyIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEyNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IGNsb3NlLW9uLWV4ZWMgZmxhZyBmb3IgJS4yNTBzIgorbXNnc3RyICJubyBlcyBwb3QgZXN0YWJsaXIgbCdhdHJpYnV0IGNsb3NlLW9uLWV4ZWMgcGVyIGEgwqslLjI1MHPCuyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjYzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZpZ3VyYXRpb24gZXJyb3I6ICVzOiVkOiAlcyIKK21zZ3N0ciAiZXJyb3IgZGUgY29uZmlndXJhY2nDszogJXM6JWQ6ICVzIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gY29uZmlndXJhdGlvbiBmaWxlICclLjI1NXMnIGZvciByZWFkaW5nOiAlcyIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBvYnJpciBwZXIgbGVjdHVyYSBlbCBmaXR4ZXIgZGUgY29uZmlndXJhY2nDsyDCqyUuMjU1c8K7OiAlcyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmJhbGFuY2VkIHF1b3RlcyBpbiAnJXMnIgorbXNnc3RyICJjb21ldGVzIGRlc2VxdWlsaWJyYWRlcyBhIMKrJXPCuyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjExNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiAnJXMnIgorbXNnc3RyICJsJ29wY2nDsyDCqyVzwrsgw6lzIGRlc2NvbmVndWRhIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTIxCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgbmVlZHMgYSB2YWx1ZSIKK21zZ3N0ciAibCdvcGNpw7Mgwqslc8K7IG5lY2Vzc2l0YSB1biBwYXLDoG1ldHJlIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTI3CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgZG9lcyBub3QgdGFrZSBhIHZhbHVlIgorbXNnc3RyICJsJ29wY2nDsyDCqyVzwrsgbm8gcG9ydGEgcGFyw6BtZXRyZXMiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVhZCBlcnJvciBpbiBjb25maWd1cmF0aW9uIGZpbGUgYCUuMjU1cyciCittc2dzdHIgImVycm9yIGRlIGxlY3R1cmEgYWwgZml0eGVyIGRlIGNvbmZpZ3VyYWNpw7MgwqslLjI1MHPCuyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nIGNvbmZpZ3VyYXRpb24gZmlsZSBgJS4yNTVzJyIKK21zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiB0YW5jYXIgZWwgZml0eGVyIGRlIGNvbmZpZ3VyYWNpw7MgwqslLjI1MHPCuyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjE3MAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBvcGVuaW5nIGNvbmZpZ3VyYXRpb24gZGlyZWN0b3J5ICclcyciCittc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gb2JyaXIgZWwgZGlyZWN0b3JpIGRlIGNvbmZpZ3VyYWNpw7MgwqslLjI1MHPCuyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjIyOAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiAtLSVzIgorbXNnc3RyICJsJ29wY2nDsyAtLSVzIMOpcyBkZXNjb25lZ3VkYSIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjIzMgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG9wdGlvbiB0YWtlcyBhIHZhbHVlIgorbXNnc3RyICJsJ29wY2nDsyAtLSVzIHTDqSB1biBwYXLDoG1ldHJlIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjM3CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgb3B0aW9uIGRvZXMgbm90IHRha2UgYSB2YWx1ZSIKK21zZ3N0ciAibCdvcGNpw7MgLS0lcyBubyBwb3J0YSBwYXLDoG1ldHJlcyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI0NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiAtJWMiCittc2dzdHIgImwnb3BjacOzIC0lYyDDqXMgZGVzY29uZWd1ZGEiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLSVjIG9wdGlvbiB0YWtlcyBhIHZhbHVlIgorbXNnc3RyICJsJ29wY2nDsyAtJWMgdMOpIHVuIHBhcsOgbWV0cmUiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiLSVjIG9wdGlvbiBkb2VzIG5vdCB0YWtlIGEgdmFsdWUiCittc2dzdHIgImwnb3BjacOzIC0lYyBubyBwb3J0YSBwYXLDoG1ldHJlcyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI3MQorIywgYy1mb3JtYXQKK21zZ2lkICJvYnNvbGV0ZSBvcHRpb24gJy0tJXMnXG4iCittc2dzdHIgImwnb3BjacOzIMKrLS0lc8K7IMOpcyBvYnNvbGV0YVxuIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6Mjg3CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZsaWN0aW5nIGFjdGlvbnMgLSVjICgtLSVzKSBhbmQgLSVjICgtLSVzKSIKK21zZ3N0ciAiYWNjaW9ucyBlbiBjb25mbGljdGUgLSVjICgtLSVzKSBpIC0lYyAoLS0lcykiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSB2YWx1ZSBmb3IgYCVzJyBmaWVsZCIKK21zZ3N0ciAidmFsb3IgZHVwbGljYXQgZW4gZWwgY2FtcCDCqyVzwrsiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MTQ2CisjLCBjLWZvcm1hdAorbXNnaWQgInVzZXItZGVmaW5lZCBmaWVsZCBuYW1lIGAlLipzJyB0b28gc2hvcnQiCittc2dzdHIgImVsIG5vbSBkZSBjYW1wIGRlZmluaXQgcGVyIGwndXN1YXJpIMKrJS4qc8K7IMOpcyBtYXNzYSBjdXJ0IgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgdmFsdWUgZm9yIHVzZXItZGVmaW5lZCBmaWVsZCBgJS4qcyciCittc2dzdHIgInZhbG9yIGR1cGxpY2F0IHBlbCBjYW1wIGRlZmluaXQgcGVyIGwndXN1YXJpIMKrJS4qc8K7IgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjIwNworbXNnaWQgIkNvbmZpZ3VyZWQtVmVyc2lvbiBmb3IgcGFja2FnZSB3aXRoIGluYXBwcm9wcmlhdGUgU3RhdHVzIgorbXNnc3RyICJjYW1wIMKrQ29uZmlndXJlZC1WZXJzaW9uwrsgcGVyIGEgdW4gcGFxdWV0IGFtYiBTdGF0dXMgbm8gYXByb3BpYXQiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjE4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgaGFzIHN0YXR1cyAlcyBidXQgdHJpZ2dlcnMgYXJlIGF3YWl0ZWQiCittc2dzdHIgImVsIHBhcXVldCB0w6kgbCdlc3RhdCAlcyBwZXLDsiBzJ2VzcGVyZW4gYWN0aXZhZG9ycyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMjIKK21zZ2lkICJwYWNrYWdlIGhhcyBzdGF0dXMgdHJpZ2dlcnMtYXdhaXRlZCBidXQgbm8gdHJpZ2dlcnMgYXdhaXRlZCIKK21zZ3N0ciAiZWwgcGFxdWV0IHTDqSBsJ2VzdGF0IHRyaWdnZXJzLWF3YWl0ZWQgcGVyw7Igbm8gcydlc3BlcmEgY2FwIGFjdGl2YWRvciIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzICVzIGJ1dCB0cmlnZ2VycyBhcmUgcGVuZGluZyIKK21zZ3N0ciAiZWwgcGFxdWV0IHTDqSBlc3RhdCAlcyBwZXLDsiBlbHMgYWN0aXZhZG9ycyBzw7NuIHBlbmRlbnRzIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjIzMgorbXNnaWQgInBhY2thZ2UgaGFzIHN0YXR1cyB0cmlnZ2Vycy1wZW5kaW5nIGJ1dCBubyB0cmlnZ2VycyBwZW5kaW5nIgorbXNnc3RyICIiCisiZWwgcGFxdWV0IHTDqSBsJ2VzdGF0IHRyaWdnZXJzLXBlbmRpbmcgcGVyw7Igbm8gaGkgaGEgY2FwIGFjdGl2YWRvciBwZW5kZW50IgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjI0MgorbXNnaWQgIlBhY2thZ2Ugd2hpY2ggaW4gc3RhdGUgbm90LWluc3RhbGxlZCBoYXMgY29uZmZpbGVzLCBmb3JnZXR0aW5nIHRoZW0iCittc2dzdHIgIlBhcXVldCBxdWUgbm8gZXN0YW50IGluc3RhxYBsYXQgdMOpIGNvbmZmaWxlcywgZW5zIG4nb2JsaWRlbSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozMzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gcGFja2FnZSBpbmZvIGZpbGUgYCUuMjU1cycgZm9yIHJlYWRpbmciCittc2dzdHIgIiIKKyJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIG9icmlyIHBlciBhIGxlY3R1cmEgZWwgZml0eGVyIGQnaW5mb3JtYWNpw7MgZGVsICIKKyJwYXF1ZXQgwqslLjI1NXPCuyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozNDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2FuJ3Qgc3RhdCBwYWNrYWdlIGluZm8gZmlsZSBgJS4yNTVzJyIKK21zZ3N0ciAibm8gZXMgcG90IGV4ZWN1dGFyIMKrc3RhdMK7IHNvYnJlIGVsIGZpdHhlciDCqyUuMjU1c8K7IgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjM0NworIywgYy1mb3JtYXQKK21zZ2lkICJjYW4ndCBtbWFwIHBhY2thZ2UgaW5mbyBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICJubyBlcyBwb3QgZXhlY3V0YXIgwqttbWFwwrsgc29icmUgZWwgZml0eGVyIMKrJS4yNTVzwrsiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzUyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW4ndCBzdGF0IHBhY2thZ2UgaW5mbyBmaWxlIGAlLjI1NXMnIgorbXNnaWQgInJlYWRpbmcgcGFja2FnZSBpbmZvIGZpbGUgJyUuMjU1cyciCittc2dzdHIgIm5vIGVzIHBvdCBleGVjdXRhciDCq3N0YXTCuyBzb2JyZSBlbCBmaXR4ZXIgwqslLjI1NXPCuyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNsb3NlIGFmdGVyIHJlYWQ6IGAlLjI1NXMnIgorbXNnc3RyICJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIHRhbmNhciBkZXNwcsOpcyBkZSBsYSBsZWN0dXJhOiDCqyUuMjU1c8K7IgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQwNAorIywgYy1mb3JtYXQKK21zZ2lkICJFT0YgYWZ0ZXIgZmllbGQgbmFtZSBgJS4qcyciCittc2dzdHIgIkVPRiBkZXNwcsOpcyBkZWwgbm9tIGRlbCBjYW1wIMKrJS4qc8K7IgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQwNworIywgYy1mb3JtYXQKK21zZ2lkICJuZXdsaW5lIGluIGZpZWxkIG5hbWUgYCUuKnMnIgorbXNnc3RyICJsw61uaWEgbm92YSBkaW5zIGRlbCBub20gZGVsIGNhbXAgwqslLipzwrsiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDEwCisjLCBjLWZvcm1hdAorbXNnaWQgIk1TRE9TIEVPRiAoXlopIGluIGZpZWxkIG5hbWUgYCUuKnMnIgorbXNnc3RyICJFT0YgZCdNU0RPUyAoXlopIGRpbnMgZGVsIG5vbSBkZWwgY2FtcCDCqyUuKnPCuyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmllbGQgbmFtZSBgJS4qcycgbXVzdCBiZSBmb2xsb3dlZCBieSBjb2xvbiIKK21zZ3N0ciAiZWwgbm9tIGRlbCBjYW1wIMKrJS4qc8K7IGhhIGQnZXN0YXIgc2VndWl0IHBlciBkb3MgcHVudHMiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDI1CisjLCBjLWZvcm1hdAorbXNnaWQgIkVPRiBiZWZvcmUgdmFsdWUgb2YgZmllbGQgYCUuKnMnIChtaXNzaW5nIGZpbmFsIG5ld2xpbmUpIgorbXNnc3RyICJFT0YgYWJhbnMgZGVsIHZhbG9yIGRlbCBjYW1wIMKrJS4qc8K7IChtYW5jYSB1bmEgbMOtbmlhIG5vdmEgYWwgZmluYWwpIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQyOQorIywgYy1mb3JtYXQKK21zZ2lkICJNU0RPUyBFT0YgY2hhciBpbiB2YWx1ZSBvZiBmaWVsZCBgJS4qcycgKG1pc3NpbmcgbmV3bGluZT8pIgorbXNnc3RyICIiCisiY2Fyw6BjdGVyIEVPRiBkJ01TRE9TIGRpbnMgZGVsIHZhbG9yIGRlbCBjYW1wIMKrJS4qc8K7IChtYW5jYSB1bmEgbMOtbmlhIG5vdmE/KSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0NDAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIm5ld2xpbmUgaW4gZmllbGQgbmFtZSBgJS4qcyciCittc2dpZCAiYmxhbmsgbGluZSBpbiB2YWx1ZSBvZiBmaWVsZCAnJS4qcyciCittc2dzdHIgImzDrW5pYSBub3ZhIGRpbnMgZGVsIG5vbSBkZWwgY2FtcCDCqyUuKnPCuyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiRU9GIGR1cmluZyB2YWx1ZSBvZiBmaWVsZCBgJS4qcycgKG1pc3NpbmcgZmluYWwgbmV3bGluZSkiCittc2dzdHIgIkVPRiBkdXJhbnQgZWwgdmFsb3IgZGVsIGNhbXAgwqslLipzwrsgKG1hbmNhIHVuYSBsw61uaWEgbm92YSBhbCBmaW5hbCkiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NTQ2Cittc2dpZCAic2V2ZXJhbCBwYWNrYWdlIGluZm8gZW50cmllcyBmb3VuZCwgb25seSBvbmUgYWxsb3dlZCIKK21zZ3N0ciAiIgorInMnaGFuIHRyb2JhdCBkaXZlcnNlcyBlbnRyYWRlcyBkJ2luZm9ybWFjacOzIGRlIHBhcXVldHMsIG5vbcOpcyBzZSduIHBlcm1ldCB1bmEiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NTcyCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHBhY2thZ2UgaW5mb3JtYXRpb24gaW4gYCUuMjU1cyciCittc2dzdHIgIm5vIGhpIGhhIGluZm9ybWFjacOzIGRlIHBhcXVldHMgZW4gwqslLjI1NXPCuyIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6NDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIlcywgaW4gZmlsZSAnJS4yNTVzJyBuZWFyIGxpbmUgJWQgcGFja2FnZSAnJS4yNTVzJzpcbiIKKyN8ICIgIgorbXNnaWQgIiIKKyJwYXJzaW5nIGZpbGUgJyUuMjU1cycgbmVhciBsaW5lICVkIHBhY2thZ2UgJyUuMjU1cyc6XG4iCisiICUuMjU1cyIKK21zZ3N0ciAiIgorIiVzLCBhbCBmaXR4ZXIgwqslLjI1NXPCuyBwcm9wIGRlIGxhIGzDrW5pYSAlZCBwYXF1ZXQgwqslLjI1NXPCuzpcbiIKKyIgIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzo0OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiVzLCBpbiBmaWxlICclLjI1NXMnIG5lYXIgbGluZSAlZDpcbiIKKyN8ICIgIgorbXNnaWQgIiIKKyJwYXJzaW5nIGZpbGUgJyUuMjU1cycgbmVhciBsaW5lICVkOlxuIgorIiAlLjI1NXMiCittc2dzdHIgIiIKKyIlcywgYWwgZml0eGVyIMKrJS4yNTVzwrsgcHJvcCBkZSBsYSBsw61uaWEgJWQ6XG4iCisiICIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MTI1Cittc2dpZCAibWF5IG5vdCBiZSBlbXB0eSBzdHJpbmciCittc2dzdHIgIm5vIHBvdCBzZXIgdW5hIGNhZGVuYSBidWlkYSIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MTI3CisjLCBmdXp6eQorI3wgbXNnaWQgIm11c3Qgc3RhcnQgd2l0aCBhbiBhbHBoYW51bWVyaWMiCittc2dpZCAibXVzdCBzdGFydCB3aXRoIGFuIGFscGhhbnVtZXJpYyBjaGFyYWN0ZXIiCittc2dzdHIgImhhIGRlIGNvbWVuw6dhciBhbWIgdW4gY2Fyw6BjdGVyIGFsZmFudW3DqHJpYyIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MTM2CisjLCBjLWZvcm1hdAorbXNnaWQgImNoYXJhY3RlciBgJWMnIG5vdCBhbGxvd2VkIChvbmx5IGxldHRlcnMsIGRpZ2l0cyBhbmQgY2hhcmFjdGVycyBgJXMnKSIKK21zZ3N0ciAiIgorImVsIGNhcsOgY3RlciDCqyVjwrsgbm8gZXN0w6AgcGVybcOocyAobm9tw6lzIHMnYWRtZXRlbiBsbGV0cmVzLCBkw61naXRzIGkgY2Fyw6BjdGVycyAiCisiwqslc8K7IgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoxNzgKKyMsIGZ1enp5CisjfCBtc2dpZCAiPG5vbmU+IgorbXNnY3R4dCAidmVyc2lvbiIKK21zZ2lkICI8bm9uZT4iCittc2dzdHIgIjxjYXA+IgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyMDkKK21zZ2lkICJ2ZXJzaW9uIHN0cmluZyBpcyBlbXB0eSIKK21zZ3N0ciAibGEgY2FkZW5hIGRlIHZlcnNpw7MgZXN0w6AgYnVpZGEiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjIyNAorbXNnaWQgInZlcnNpb24gc3RyaW5nIGhhcyBlbWJlZGRlZCBzcGFjZXMiCittc2dzdHIgImxhIGNhZGVuYSBkZSB2ZXJzacOzIHTDqSBlc3BhaXMiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjIzMAorbXNnaWQgImVwb2NoIGluIHZlcnNpb24gaXMgbm90IG51bWJlciIKK21zZ3N0ciAibCfDqHBvY2EgZW4gbGEgdmVyc2nDsyBubyDDqXMgdW4gbsO6bWVybyIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjMyCittc2dpZCAibm90aGluZyBhZnRlciBjb2xvbiBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAibm8gaGkgaGEgcmVzIGRhcnJlcmUgZGVscyBkb3MgcHVudHMgYWwgbsO6bWVybyBkZSB2ZXJzacOzIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyNDcKK21zZ2lkICJ2ZXJzaW9uIG51bWJlciBkb2VzIG5vdCBzdGFydCB3aXRoIGRpZ2l0IgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjI1MAorbXNnaWQgImludmFsaWQgY2hhcmFjdGVyIGluIHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICJjYXLDoGN0ZXIgaW52w6BsaWQgYWwgbsO6bWVybyBkZSB2ZXJzacOzIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyNTQKK21zZ2lkICJpbnZhbGlkIGNoYXJhY3RlciBpbiByZXZpc2lvbiBudW1iZXIiCittc2dzdHIgImNhcsOgY3RlciBpbnbDoGxpZCBhbCBuw7ptZXJvIGRlIHJldmlzacOzIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyOTkgbGliL2Rwa2cvcGFyc2VoZWxwLmM6MzExCisjLCBjLWZvcm1hdAorbXNnaWQgIm1pc3NpbmcgJXMiCittc2dzdHIgIm1hbmNhICVzIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzozMDEgbGliL2Rwa2cvcGFyc2VoZWxwLmM6MzE0CisjLCBjLWZvcm1hdAorbXNnaWQgImVtcHR5IHZhbHVlIGZvciAlcyIKK21zZ3N0ciAidmFsb3IgYnVpdCBwZXIgYSAlcyIKKworIzogbGliL2Rwa2cvcGtnLWZvcm1hdC5jOjgwCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgY2hhcmFjdGVyIGAlYycgaW4gZmllbGQgd2lkdGhcbiIKK21zZ3N0ciAiY2Fyw6BjdGVyIGludsOgbGlkIMKrJWPCuyBlbiBsJ2FtcGxhZGEgZGVsIGNhbXBcbiIKKworIzogbGliL2Rwa2cvcGtnLWZvcm1hdC5jOjE3MgorIywgYy1mb3JtYXQKK21zZ2lkICJDbG9zaW5nIGJyYWNlIG1pc3NpbmcgaW4gZm9ybWF0XG4iCittc2dzdHIgIk1hbmNhIGxhIGNsYXUgZGUgdGFuY2FtZW50IGFsIGZvcm1hdFxuIgorCisjOiBsaWIvZHBrZy9wa2ctc2hvdy5jOjQwCittc2dpZCAiKG5vIGRlc2NyaXB0aW9uIGF2YWlsYWJsZSkiCittc2dzdHIgIihubyBoaSBoYSBjYXAgZGVzY3JpcGNpw7MgZGlzcG9uaWJsZSkiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzo1NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaWdub3JlIHNpZ25hbCAlcyBiZWZvcmUgcnVubmluZyAlLjI1MHMiCittc2dzdHIgIm5vIGVzIHBvdCBkZXNjYXJ0YXIgZWwgc2VueWFsICVzIGFiYW5zIGQnZXhlY3V0YXIgJS4yNTBzIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgdW4tY2F0Y2hpbmcgc2lnbmFsICVzOiAlc1xuIgorbXNnc3RyICJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIGRlc2Fzc2lnbmFyIGVsIHNlbnlhbCAlczogJXNcbiIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjc4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIChzdWJwcm9jZXNzKTogJXNcbiIKK21zZ3N0ciAiJXMgKHN1YnByb2PDqXMpOiAlc1xuIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6ODkgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQ1NAorbXNnaWQgImZvcmsgZmFpbGVkIgorbXNnc3RyICJoYSBmYWxsYXQgZWwgwqtmb3JrwrsiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMTkKKyMsIGMtZm9ybWF0Cittc2dpZCAic3VicHJvY2VzcyAlcyByZXR1cm5lZCBlcnJvciBleGl0IHN0YXR1cyAlZCIKK21zZ3N0ciAiZWwgc3VicHJvY8OpcyAlcyByZXRvcm7DoCBlbCBjb2RpIGQnZWl4aWRhIGQnZXJyb3IgJWQiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMjgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIndhaXQgZm9yIHN1YnByb2Nlc3MgJXMgZmFpbGVkIgorbXNnaWQgInN1YnByb2Nlc3MgJXMgd2FzIGludGVycnVwdGVkIgorbXNnc3RyICJlbCDCq3dhaXTCuyBwZXIgYWwgc3VicHJvY8OpcyAlcyBoYSBmYWxsYXQiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInN1YnByb2Nlc3MgJXMga2lsbGVkIGJ5IHNpZ25hbCAoJXMpJXMiCittc2dpZCAic3VicHJvY2VzcyAlcyB3YXMga2lsbGVkIGJ5IHNpZ25hbCAoJXMpJXMiCittc2dzdHIgImVsIHN1YnByb2PDqXMgJXMgaGEgZXN0YXQgZmluYWxpdHphdCBwZWwgc2VueWFsICglcyklcyIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEzMgorbXNnaWQgIiwgY29yZSBkdW1wZWQiCittc2dzdHIgIiwgcydoYSBnZW5lcmF0IHVuIGZpdHhlciDCq2NvcmXCuyIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJzdWJwcm9jZXNzICVzIGZhaWxlZCB3aXRoIHdhaXQgc3RhdHVzIGNvZGUgJWQiCittc2dzdHIgImVsIHN1YnByb2PDqXMgJXMgaGEgZmFsbGF0IGFtYiBjb2RpIGQnZXN0YXQgZW4gZXNwZXJhICVkIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTUxIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo0NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAid2FpdCBmb3Igc3VicHJvY2VzcyAlcyBmYWlsZWQiCittc2dzdHIgImVsIMKrd2FpdMK7IHBlciBhbCBzdWJwcm9jw6lzICVzIGhhIGZhbGxhdCIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBwYWNrYWdlIG5hbWUgYCUuMjUwcycgaW4gdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorImVsIG5vbSBkZWwgcGFxdWV0IMKrJS4yNTBzwrsgw6lzIGludsOgbGlkIGFsIGZpdHhlciBkJ2FjdGl2YWRvcnMgYWpvcm5hdHMgIgorIsKrJTAuMjUwc8K7IgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDo4MQorIywgYy1mb3JtYXQKK21zZ2lkICJ0cnVuY2F0ZWQgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiZWwgZml0eGVyIGQnYWN0aXZhZG9ycyBham9ybmF0cyDCqyUuMjUwc8K7IMOpcyB0cnVuY2F0IgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDo4NQorIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyBhdCBjaGFyYWN0ZXIgYCVzJyVzIgorbXNnc3RyICIiCisiZXJyb3IgZGUgc2ludGF4aSBhbCBmaXR4ZXIgZCdhY3RpdmFkb3JzIGFqb3JuYXRzIMKrJS4yNTBzwrsgYWwgY2Fyw6BjdGVyIMKrJXPCuyVzIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4vY3JlYXRlIHRyaWdnZXJzIGxvY2tmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJubyBlcyBwb3Qgb2JyaXIgZWwgZml0eGVyIGRlIGJsb2NhdGdlIGQnYWN0aXZhZG9ycyDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNDEKKyMsIGZ1enp5CisjfCBtc2dpZCAidHJpZ2dlcmVkIgorbXNnaWQgInRyaWdnZXJzIGFyZWEiCittc2dzdHIgImFjdGl2YXQiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjE1MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJubyBlcyBwb3QgZmVyIMKrc3RhdMK7IHNvYnJlIGVsIGZpdHhlciBkJ2FjdGl2YWRvcnMgYWpvcm5hdHMgwqslLjI1MHPCuyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MTY1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5vIGVzIHBvdCBvYnJpciBlbCBmaXR4ZXIgZCdhY3RpdmFkb3JzIGFqb3JuYXRzIMKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjE3OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3Blbi9jcmVhdGUgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5vIGVzIHBvdCBvYnJpci9jcmVhciBlbCBmaXR4ZXIgZCdhY3RpdmFkb3JzIGFqb3JuYXRzIG5vdSDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoyMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcmVhZGluZyB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBsbGVnaXIgZWwgZml0eGVyIGQnYWN0aXZhZG9ycyBham9ybmF0cyDCqyUuMjU1c8K7IgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoyMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ldyB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJubyBlcyBwb3QgZXNjcml1cmUgZWwgZml0eGVyIGQnYWN0aXZhZG9ycyBham9ybmF0cyBub3UgwqslLjI1MHPCuyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MjI4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibm8gZXMgcG90IHRhbmNhciBlbCBmaXR4ZXIgZCdhY3RpdmFkb3JzIGFqb3JuYXRzIG5vdSDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5vIGVzIHBvdCBpbnN0YcWAbGFyIGVsIGZpdHhlciBkJ2FjdGl2YWRvcnMgYWpvcm5hdHMgbm91IMKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzoyMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImludmFsaWQgb3IgdW5rbm93biBzeW50YXggaW4gdHJpZ2dlciBuYW1lIGAlLjI1MHMnIChpbiB0cmlnZ2VyIGludGVyZXN0cyBmb3IgIgorInBhY2thZ2UgYCUuMjUwcycpIgorbXNnc3RyICIiCisibGEgc2ludGF4aSBkZWwgbm9tIGRlIGwnYWN0aXZhZG9yIMKrJS4yNTBzwrsgw6lzIGludsOgbGlkYSBvIGRlc2NvbmVndWRhIChhbHMgIgorImFjdGl2YWRvcnMgaW50ZXJlc3NhbnRzIHBlciBhbCBwYXF1ZXQgwqslLjI1MHPCuyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjI2MworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiB0cmlnZ2VyIGludGVyZXN0IGxpc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibm8gZXMgcG90IG9icmlyIGVsIGZpdHhlciBkJ2FjdGl2YWRvcnMgaW50ZXJlc3NhbnRzIMKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzoyOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJld2luZCB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5vIGVzIHBvdCBmZXIgwqtyZXdpbmTCuyBhbCBmaXR4ZXIgZCdhY3RpdmFkb3JzIGludGVyZXNzYW50cyDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzA1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcycgc3ludGF4IGVycm9yOyBpbGxlZ2FsIHBhY2thZ2UgbmFtZSBgJS4yNTBzJzogIgorIiUuMjUwcyIKK21zZ3N0ciAiIgorImVycm9yIGRlIHNpbnRheGkgYWwgZml0eGVyIGQnYWN0aXZhZG9ycyBpbnRlcmVzc2FudHMgwqslLjI1MHPCuzsgZWwgbm9tIGRlbCAiCisicGFxdWV0IMKrJS4yNTBzwrsgw6lzIGnFgGxlZ2FsOiAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5vIGVzIHBvdCBlc2NyaXVyZSBlbCBmaXR4ZXIgZCdhY3RpdmFkb3JzIGludGVyZXNzYW50cyDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzIxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlICclLjI1MHMnIgorbXNnc3RyICIiCisibm8gZXMgcG90IGZlciDCq2ZsdXNowrsgZGVsIGZpdHhlciBkJ2FjdGl2YWRvcnMgaW50ZXJlc3NhbnRzIG5vdSDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzI0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzeW5jIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgIm5vIGVzIHBvdCBmZXIgwqtzeW5jwrsgZGVsIGZpdHhlciBkJ2FjdGl2YWRvcnMgaW50ZXJlc3NhbnRzIG5vdSDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzMyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5vIGVzIHBvdCBpbnN0YcWAbGFyIGVsIGZpdHhlciBkJ2FjdGl2YWRvcnMgaW50ZXJlc3NhbnRzIG5vdSDCqyUuMjU1c8K7IgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzQwIGxpYi9kcGtnL3RyaWdsaWIuYzozNDIgbGliL2Rwa2cvdHJpZ2xpYi5jOjQ3MgorIzogc3JjL3JlbW92ZS5jOjI4NiBzcmMvcmVtb3ZlLmM6Mzc3CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZW1vdmUgYCUuMjUwcyciCittc2dzdHIgIm5vIGVzIHBvdCBlc2JvcnJhciDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzYwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibm8gZXMgcG90IGNyZWFyIGVsIGZpdHhlciBkJ2FjdGl2YWRvcnMgaW50ZXJlc3NhbnRzIG5vdSDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzgzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJubyBlcyBwb3QgdGFuY2FyIGVsIGZpdHhlciBkJ2FjdGl2YWRvcnMgaW50ZXJlc3NhbnRzIG5vdSDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDU2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkdXBsaWNhdGUgZmlsZSB0cmlnZ2VyIGludGVyZXN0IGZvciBmaWxlbmFtZSBgJS4yNTBzJyBhbmQgcGFja2FnZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorImhpIGhhIHVuIGZpdHhlciBkJ2FjdGl2YWRvcnMgaW50ZXJlc3NhbnRzIGR1cGxpY2F0IHBlciBhbCBmaXR4ZXIgwqslLjI1MHPCuyBpICIKKyJlbCBwYXF1ZXQgwqslLjI1MHPCuyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ4MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5vIGVzIHBvdCBjcmVhciBlbCBmaXR4ZXIgZCdhY3RpdmFkb3JzIGRlIGZpdHhlciBub3UgwqslLjI1MHPCuyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ5MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibm8gZXMgcG90IGVzY3JpdXJlIGVsIGZpdHhlciBkJ2FjdGl2YWRvcnMgZGUgZml0eGVyIG5vdSDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDk2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlICclLjI1MHMnIgorbXNnc3RyICJubyBlcyBwb3QgZmVyIMKrZmx1c2jCuyBkZWwgZml0eGVyIGQnYWN0aXZhZG9ycyBkZSBmaXR4ZXIgbm91IMKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0OTkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAibm8gZXMgcG90IGZlciDCq3N5bmPCuyBkZWwgZml0eGVyIGQnYWN0aXZhZG9ycyBkZSBmaXR4ZXIgbm91IMKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1MDMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5vIGVzIHBvdCB0YW5jYXIgZWwgZml0eGVyIGQnYWN0aXZhZG9ycyBkZSBmaXR4ZXIgbm91IMKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1MDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSBhcyBgJS4yNTBzJyIKK21zZ3N0ciAiIgorIm5vIGVzIHBvdCBpbnN0YcWAbGFyIGVsIGZpdHhlciBkJ2FjdGl2YWRvcnMgZGUgZml0eGVyIG5vdSBjb20gYSDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTQyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibm8gZXMgcG90IGxsZWdpciBlbCBmaXR4ZXIgZCdhY3RpdmFkb3JzIGRlIGZpdHhlciDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTUyCisjLCBjLWZvcm1hdAorbXNnaWQgInN5bnRheCBlcnJvciBpbiBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImVycm9yIGRlIHNpbnRheGkgYWwgZml0eGVyIGQnYWN0aXZhZG9ycyBkZSBmaXR4ZXIgwqslLjI1MHPCuyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjU2MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZmlsZSB0cmlnZ2VycyByZWNvcmQgbWVudGlvbnMgaWxsZWdhbCBwYWNrYWdlIG5hbWUgYCUuMjUwcycgKGZvciBpbnRlcmVzdCBpbiAiCisiZmlsZSBgJS4yNTBzJyk6ICUuMjUwcyIKK21zZ3N0ciAiIgorImVsIHJlZ2lzdHJlIGQnYWN0aXZhZG9ycyBkZSBmaXR4ZXIgbWVuY2lvbmEgZWwgbm9tIGRlIHBhcXVldCBpxYBsZWdhbCAiCisiwqslLjI1MHPCuyAocGVyIGwnaW50ZXLDqXMgZW4gZWwgZml0eGVyIMKrJS4yNTBzwrspOiAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo2NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInRyaWdnZXJzIGNpIGZpbGUgYCUuMjUwcycgY29udGFpbnMgaWxsZWdhbCB0cmlnZ2VyIHN5bnRheCBpbiB0cmlnZ2VyIG5hbWUgYCIKKyIlLjI1MHMnOiAlLjI1MHMiCittc2dzdHIgIiIKKyJlbCBmaXR4ZXIgZCdpbmZvcm1hY2nDsyBkZSBjb250cm9sIGRlbHMgZ2FsZXRzIMKrJS4yNTBzwrsgY29udMOpIHNpbnTDoHhpICIKKyJkJ2FjdGl2YWRvciBpxYBsZWdhbCBhbCBub20gZCdhY3RpdmFkb3IgwqslLjI1MHPCuzogJS4yNTBzIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Njg0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIHRyaWdnZXJzIGNpIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKyJubyBlcyBwb3Qgb2JyaXIgZWwgZml0eGVyIGQnaW5mb3JtYWNpw7MgZGUgY29udHJvbCBkZWxzIGFjdGl2YWRvcnMgwqslLjI1MHPCuyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjY5OQorbXNnaWQgInRyaWdnZXJzIGNpIGZpbGUgY29udGFpbnMgdW5rbm93biBkaXJlY3RpdmUgc3ludGF4IgorbXNnc3RyICIiCisiZWwgZml0eGVyIGQnaW5mb3JtYWNpw7MgZGUgY29udHJvbCBkZWxzIGFjdGl2YWRvcnMgY29udMOpIHNpbnRheGkgZGUgZGlyZWN0aXZhICIKKyJkZXNjb25lZ3VkYSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjcxMgorIywgYy1mb3JtYXQKK21zZ2lkICJ0cmlnZ2VycyBjaSBmaWxlIGNvbnRhaW5zIHVua25vd24gZGlyZWN0aXZlIGAlLjI1MHMnIgorbXNnc3RyICIiCisiZWwgZml0eGVyIGQnaW5mb3JtYWNpw7MgZGUgY29udHJvbCBkZWxzIGFjdGl2YWRvcnMgY29udMOpIGxhIGRpcmVjdGl2YSAiCisiZGVzY29uZWd1ZGEgwqslLjI1MHPCuyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjc3NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHRyaWdnZXJzIHN0YXRlIGRpcmVjdG9yeSBgJS4yNTBzJyIKK21zZ3N0ciAibm8gZXMgcG90IGNyZWFyIGVsIGRpcmVjdG9yaW8gZCdlc3RhdCBkZWxzIGFjdGl2YWRvcnMgwqslLjI1MHPCuyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjc3OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IG93bmVyc2hpcCBvZiB0cmlnZ2VycyBzdGF0ZSBkaXJlY3RvcnkgYCUuMjUwcyciCittc2dzdHIgIiIKKyJubyBlcyBwb3QgZXN0YWJsaXIgZWwgcHJvcGlldGFyaSBkZWwgZGlyZWN0b3JpIGQnZXN0YXQgZCdhY3RpdmFkb3JzIMKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL3RyaWduYW1lLmM6MzQKK21zZ2lkICJlbXB0eSB0cmlnZ2VyIG5hbWVzIGFyZSBub3QgcGVybWl0dGVkIgorbXNnc3RyICJubyBlcyBwZXJtZXRlbiBlbHMgbm9tcyBkJ2FjdGl2YWRvciBidWl0cyIKKworIzogbGliL2Rwa2cvdHJpZ25hbWUuYzozOAorbXNnaWQgInRyaWdnZXIgbmFtZSBjb250YWlucyBpbnZhbGlkIGNoYXJhY3RlciIKK21zZ3N0ciAiZWwgbm9tIGRlIGwnYWN0aXZhZG9yIGNvbnTDqSB1biBjYXLDoGN0ZXIgaW52w6BsaWQiCisKKyM6IGxpYi9kcGtnL3V0aWxzLmM6NTYKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVhZCBlcnJvciBpbiBgJS4yNTBzJyIKK21zZ3N0ciAiZXJyb3IgZGUgbGVjdHVyYSBhIMKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL3V0aWxzLmM6NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmdldHMgZ2F2ZSBhbiBlbXB0eSBzdHJpbmcgZnJvbSBgJS4yNTBzJyIKK21zZ3N0ciAiZmdldHMgaGEgZG9uYXQgdW5hIGNhZGVuYSBidWlkYSBkZXMgZGUgwqslLjI1MHPCuyIKKworIzogbGliL2Rwa2cvdXRpbHMuYzo2MworIywgYy1mb3JtYXQKK21zZ2lkICJ0b28tbG9uZyBsaW5lIG9yIG1pc3NpbmcgbmV3bGluZSBpbiBgJS4yNTBzJyIKK21zZ3N0ciAibGEgbMOtbmlhIMOpcyBtYXNzYSBsbGFyZ2EgbyBtYW5jYSB1bmEgbMOtbmlhIG5vdmEgYSDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy91dGlscy5jOjc1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW9mIHJlYWRpbmcgYCUuMjUwcyciCittc2dzdHIgInMnaGEgdHJvYmF0IHVuIGZpIGRlIGZpdHhlciBpbmVzcGVyYXQgZW4gbGxlZ2lyIMKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL3ZhcmJ1Zi5jOjgyIGxpYi9kcGtnL3ZhcmJ1Zi5jOjg4Cittc2dpZCAiZXJyb3IgZm9ybWF0dGluZyBzdHJpbmcgaW50byB2YXJidWYgdmFyaWFibGUiCittc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gZm9ybWF0YXIgbGEgY2FkZW5hIGEgdW5hIHZhcmlhYmxlIHZhcmJ1ZiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTc5IHNyYy9hcmNoaXZlcy5jOjIwMCBzcmMvYXJjaGl2ZXMuYzo3MjQKK21zZ2lkICJlcnJvciByZWFkaW5nIGZyb20gZHBrZy1kZWIgcGlwZSIKK21zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBsbGVnaXIgZGVzIGQndW4gY29uZHVjdGUgZGUgZHBrZy1kZWIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjE5NQorIywgYy1mb3JtYXQKK21zZ2lkICJza2lwcGVkIHVucGFja2luZyBmaWxlICclLjI1NXMnIChyZXBsYWNlZCBvciBleGNsdWRlZD8pIgorbXNnc3RyICJzJ2hhIG9tw6hzIGVsIGRlc2VtcGFxdWV0YXQgZGVsIGZpdHhlciDCqyUuMjU1c8K7IChyZWVtcGxhw6dhdCBvIGV4Y2zDsnM/KSIKKworIzogc3JjL2FyY2hpdmVzLmM6MjQ2IHNyYy9hcmNoaXZlcy5jOjI1MAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIHRpbWVzdGFtcHMgb2YgYCUuMjU1cyciCittc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gZXN0YWJsaXIgbGVzIGRhdGVzIGRlIMKrJS4yNTVzwrsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjI2MgorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIG93bmVyc2hpcCBvZiBzeW1saW5rIGAlLjI1NXMnIgorbXNnc3RyICIiCisicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBlc3RhYmxpciBlbCBwcm9waWV0YXJpIGRlIGwnZW5sbGHDpyBzaW1iw7JsaWMgwqslLjI1NXPCuyIKKworIzogc3JjL2FyY2hpdmVzLmM6MjY1IHNyYy9hcmNoaXZlcy5jOjczNCBzcmMvc3RhdGNtZC5jOjE2MworIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIG93bmVyc2hpcCBvZiBgJS4yNTVzJyIKK21zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBlc3RhYmxpciBlbCBwcm9waWV0YXJpIGRlIMKrJS4yNTVzwrsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjI2NyBzcmMvYXJjaGl2ZXMuYzo3MzYgc3JjL3N0YXRjbWQuYzoxNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igc2V0dGluZyBwZXJtaXNzaW9ucyBvZiBgJS4yNTVzJyIKK21zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBlc3RhYmxpciBlbHMgcGVybWlzb3MgZGUgwqslLjI1NXPCuyIKKworIzogc3JjL2FyY2hpdmVzLmM6Mzk1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBzdGF0IChkZXJlZmVyZW5jZSkgZXhpc3Rpbmcgc3ltbGluayBgJS4yNTBzJyIKK21zZ3N0ciAiIgorIm5vIHMnaGEgcG9ndXQgZmVyIMKrc3RhdMK7IChkZXJlZmVyw6huY2lhKSBzb2JyZSBsJ2VubGxhw6cgc2ltYsOybGljIGV4aXN0ZW50ICIKKyLCqyUuMjUwc8K7IgorCisjOiBzcmMvYXJjaGl2ZXMuYzo0MTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImZhaWxlZCB0byBzdGF0IChkZXJlZmVyZW5jZSkgcHJvcG9zZWQgbmV3IHN5bWxpbmsgdGFyZ2V0IGAlLjI1MHMnIGZvciAiCisic3ltbGluayBgJS4yNTBzJyIKK21zZ3N0ciAiIgorIm5vIHMnaGEgcG9ndXQgZmVyIMKrc3RhdMK7IChkZXJlZmVyw6huY2lhKSBzb2JyZSBsJ29iamVjdGl1IGRlbCBub3UgZW5sbGHDpyAiCisic2ltYsOybGljIHByb3Bvc2F0IMKrJS4yNTBzwrsgcGVyIGEgbCdlbmxsYcOnIHNpbWLDsmxpYyDCqyUuMjUwc8K7IgorCisjOiBzcmMvYXJjaGl2ZXMuYzo0NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInRyeWluZyB0byBvdmVyd3JpdGUgYCUuMjUwcycsIHdoaWNoIGlzIHRoZSBkaXZlcnRlZCB2ZXJzaW9uIG9mIGAiCisiJS4yNTBzJyAocGFja2FnZTogJS4xMDBzKSIKK21zZ3N0ciAiIgorInMnZXN0w6AgaW50ZW50YW50IHNvYnJlZXNjcml1cmUgwqslLjI1MHPCuywgcXVlIMOpcyBsYSB2ZXJzacOzIGRlc3ZpYWRhIGRlICIKKyLCqyUuMjUwc8K7IChwYXF1ZXQ6ICUuMTAwcykiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjQ4MQorIywgYy1mb3JtYXQKK21zZ2lkICJ0cnlpbmcgdG8gb3ZlcndyaXRlIGAlLjI1MHMnLCB3aGljaCBpcyB0aGUgZGl2ZXJ0ZWQgdmVyc2lvbiBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiIgorInMnZXN0w6AgaW50ZW50YW50IHNvYnJlZXNjcml1cmUgwqslLjI1MHPCuywgcXVlIMOpcyBsYSB2ZXJzacOzIGRlc3ZpYWRhIGRlICIKKyLCqyUuMjUwc8K7IgorCisjOiBzcmMvYXJjaGl2ZXMuYzo1MTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgYCUuMjU1cycgKHdoaWNoIEkgd2FzIGFib3V0IHRvIGluc3RhbGwpIgorbXNnc3RyICIiCisibm8gZXMgcG90IGZlciDCq3N0YXTCuyBzb2JyZSDCqyUuMjU1c8K7IChxdWUgw6lzIGVsIHF1ZSBzJ2FuYXZhIGEgaW5zdGHFgGxhcikiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjUxOQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidW5hYmxlIHRvIGNsZWFuIHVwIG1lc3Mgc3Vycm91bmRpbmcgYCUuMjU1cycgYmVmb3JlIGluc3RhbGxpbmcgYW5vdGhlciAiCisidmVyc2lvbiIKK21zZ3N0ciAiIgorIm5vIGVzIHBvdCBuZXRlamFyIGVsIGRlc29yZHJlIGRlIMKrJS4yNTVzwrsgYWJhbnMgZCdpbnN0YcWAbGFyIHVuYSBhbHRyYSB2ZXJzacOzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo1MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgcmVzdG9yZWQgYCUuMjU1cycgYmVmb3JlIGluc3RhbGxpbmcgYW5vdGhlciB2ZXJzaW9uIgorbXNnc3RyICIiCisibm8gZXMgcG90IGZlciDCq3N0YXTCuyBzb2JyZSBlbCDCqyUuMjU1c8K7IHJlc3RhYmxlcnQgYWJhbnMgZCdpbnN0YcWAbGFyIHVuYSAiCisiYWx0cmEgdmVyc2nDsyIKKworIzogc3JjL2FyY2hpdmVzLmM6NTYxCisjLCBjLWZvcm1hdAorbXNnaWQgImFyY2hpdmUgY29udGFpbmVkIG9iamVjdCBgJS4yNTVzJyBvZiB1bmtub3duIHR5cGUgMHgleCIKK21zZ3N0ciAibCdhcnhpdSBjb250w6kgbCdvYmpldGUgwqslLjI1NXPCuyBkZSB0aXB1cyAweCV4IGRlc2NvbmVndXQiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjYyNiBzcmMvZGl2ZXJ0Y21kLmM6MTUwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo2ODIKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjIyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjg0CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTQ0MSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTY4MAorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxNjcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNDQKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTI3CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzdGF0IGZpbGUgJyVzJyIKK21zZ3N0ciAibm8gZXMgcG90IGZlciDCq3N0YXTCuyBzb2JyZSBlbCBmaXR4ZXIgwqslc8K7IgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVwbGFjaW5nIGZpbGVzIGluIG9sZCBwYWNrYWdlICVzIC4uLlxuIgorbXNnc3RyICJTJ2VzdMOgIHJlZW1wbGHDp2FudCBmaXR4ZXJzIGRlbCBwYXF1ZXQgYW50aWMgJXPigKZcbiIKKworIzogc3JjL2FyY2hpdmVzLmM6NjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlcGxhY2VkIGJ5IGZpbGVzIGluIGluc3RhbGxlZCBwYWNrYWdlICVzIC4uLlxuIgorbXNnc3RyICJSZWVtcGxhw6dhdCBwZWxzIGZpdHhlcnMgYWwgcGFxdWV0IGluc3RhxYBsYXQgJXPigKZcbiIKKworIzogc3JjL2FyY2hpdmVzLmM6NjU0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ0cnlpbmcgdG8gb3ZlcndyaXRlIGRpcmVjdG9yeSAnJS4yNTBzJyBpbiBwYWNrYWdlICUuMjUwcyAlLjI1MHMgd2l0aCAiCisibm9uZGlyZWN0b3J5IgorbXNnc3RyICIiCisicydlc3TDoCBpbnRlbnRhbnQgc29icmVlc2NyaXVyZSBlbCBkaXJlY3RvcmkgwqslLjI1MHPCuyBkZWwgcGFxdWV0ICUuMjUwcyAiCisiJS4yNTBzIGFtYiB1biBubyBkaXJlY3RvcmkiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjY2MQorIywgYy1mb3JtYXQKK21zZ2lkICJ0cnlpbmcgdG8gb3ZlcndyaXRlICclLjI1MHMnLCB3aGljaCBpcyBhbHNvIGluIHBhY2thZ2UgJS4yNTBzICUuMjUwcyIKK21zZ3N0ciAiIgorInMnZXN0w6AgaW50ZW50YW50IHNvYnJlZXNjcml1cmUgwqslLjI1MHPCuywgcXVlIHRhbWLDqSBlc3TDoCBlbiBlbCBwYXF1ZXQgJS4yNTBzICIKKyIlLjI1MHMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjcxMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGAlLjI1NXMnICh3aGlsZSBwcm9jZXNzaW5nIGAlLjI1NXMnKSIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBjcmVhciDCqyUuMjU1c8K7IChlbiBwcm9jZXNzYXIgwqslLjI1NXPCuykiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjcxOAorIywgYy1mb3JtYXQKK21zZ2lkICJiYWNrZW5kIGRwa2ctZGViIGR1cmluZyBgJS4yNTVzJyIKK21zZ3N0ciAicmVyZWZvbnMgZHBrZy1kZWIgZHVyYW50IMKrJS4yNTVzwrsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc0NCBzcmMvYXJjaGl2ZXMuYzo5MDggc3JjL2FyY2hpdmVzLmM6OTQ5CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3Npbmcvd3JpdGluZyBgJS4yNTVzJyIKK21zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiB0YW5jYXIvZXNjcml1cmUgwqslLjI1NXPCuyIKKworIzogc3JjL2FyY2hpdmVzLmM6NzQ4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIHBpcGUgYCUuMjU1cyciCittc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gY3JlYXIgZWwgY29uZHVjdGUgwqslLjI1NXPCuyIKKworIzogc3JjL2FyY2hpdmVzLmM6NzUzIHNyYy9hcmNoaXZlcy5jOjc1OAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBkZXZpY2UgYCUuMjU1cyciCittc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gY3JlYXIgZWwgZGlzcG9zaXRpdSDCqyUuMjU1c8K7IgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgaGFyZCBsaW5rIGAlLjI1NXMnIgorbXNnc3RyICJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIGNyZWFyIGwnZW5sbGHDpyBkdXIgwqslLjI1NXPCuyIKKworIzogc3JjL2FyY2hpdmVzLmM6Nzc3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo1MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgc3ltYm9saWMgbGluayBgJS4yNTVzJyIKK21zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBjcmVhciBsJ2VubGxhw6cgc2ltYsOybGljIMKrJS4yNTVzwrsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc4MworIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBkaXJlY3RvcnkgYCUuMjU1cyciCittc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gY3JlYXIgZWwgZGlyZWN0b3JpIMKrJS4yNTVzwrsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjgyMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gbW92ZSBhc2lkZSBgJS4yNTVzJyB0byBpbnN0YWxsIG5ldyB2ZXJzaW9uIgorbXNnc3RyICJubyBlcyBwb3QgbW91cmUgwqslLjI1NXPCuyBwZXIgYSBpbnN0YcWAbGFyIHVuYSB2ZXJzacOzIG5vdmEiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjgzMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MzIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIGxpbmsgYCUuMjU1cyciCittc2dzdHIgIm5vIGVzIHBvdCBsbGVnaXIgbCdlbmxsYcOnIMKrJS4yNTVzwrsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjgzNCBzcmMvY29uZmlndXJlLmM6NDIzCisjLCBjLWZvcm1hdAorbXNnaWQgInN5bWJvbGljIGxpbmsgJyUuMjUwcycgc2l6ZSBoYXMgY2hhbmdlZCBmcm9tICVqZCB0byAlemQiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6ODM5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBtYWtlIGJhY2t1cCBzeW1saW5rIGZvciBgJS4yNTVzJyIKK21zZ3N0ciAiIgorIm5vIGVzIHBvdCBmZXIgdW5hIGPDsnBpYSBkZSBzZWd1cmV0YXQgZGUgbCdlbmxsYcOnIHNpbWLDsmxpYyBwZXIgYSDCqyUuMjU1c8K7IgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNob3duIGJhY2t1cCBzeW1saW5rIGZvciBgJS4yNTVzJyIKK21zZ3N0ciAiIgorIm5vIGVzIHBvdCBmZXIgwqtjaG93bsK7IHNvYnJlIGwnZW5sbGHDpyBzaW1iw7JsaWMgZGUgbGEgY8OycGlhIGRlIHNlZ3VyZXRhdCBkZSAiCisiwqslLjI1NXPCuyIKKworIzogc3JjL2FyY2hpdmVzLmM6ODQ2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBtYWtlIGJhY2t1cCBsaW5rIG9mIGAlLjI1NXMnIGJlZm9yZSBpbnN0YWxsaW5nIG5ldyB2ZXJzaW9uIgorbXNnc3RyICIiCisibm8gZXMgcG90IGNyZWFyIHVuIGVubGxhw6cgZGUgc2VndXJldGF0IGRlIMKrJS4yNTVzwrsgYWJhbnMgZCdpbnN0YcWAbGFyIGxhICIKKyJ2ZXJzacOzIG5vdmEiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjg2MyBzcmMvYXJjaGl2ZXMuYzo5NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IHZlcnNpb24gb2YgYCUuMjU1cyciCittc2dzdHIgIm5vIGVzIHBvdCBpbnN0YcWAbGFyIHVuYSB2ZXJzacOzIG5vdmEgZGUgwqslLjI1NXPCuyIKKworIzogc3JjL2FyY2hpdmVzLmM6OTAyIHNyYy9hcmNoaXZlcy5jOjk0NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiAnJS4yNTVzJyIKK21zZ3N0ciAibm8gZXMgcG90IG9icmlyIMKrJS4yNTVzwrsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjk0NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBmaWxlICclLjI1NXMnIgorbXNnc3RyICJubyBlcyBwb3QgZmVyIMKrc3luY8K7IGFsIGZpdHhlciDCqyUuMjU1c8K7IgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDAwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpZ25vcmluZyBkZXBlbmRlbmN5IHByb2JsZW0gd2l0aCAlczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorIm5vIGVzIHRpbmRyw6AgZW4gY29tcHRlIGVsIHByb2JsZW1hIGRlIGRlcGVuZMOobmNpYSBhbWIgJXM6XG4iCisiJXMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImNvbnNpZGVyaW5nIGRlY29uZmlndXJhdGlvbiBvZiBlc3NlbnRpYWxcbiIKKyIgcGFja2FnZSAlcywgdG8gZW5hYmxlICVzLiIKK21zZ3N0ciAiIgorImVzIGNvbnNpZGVyYSBsYSBkZXNjb25maWd1cmFjacOzIGRlbCBwYXF1ZXRcbiIKKyIgZXNzZW5jaWFsICVzLCBwZXIgYSBoYWJpbGl0YXIgJXMuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDA4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBubywgJXMgaXMgZXNzZW50aWFsLCB3aWxsIG5vdCBkZWNvbmZpZ3VyZVxuIgorIiBpdCBpbiBvcmRlciB0byBlbmFibGUgJXMuXG4iCittc2dzdHIgIiIKKyJkcGtnOiBubywgJXMgw6lzIGVzc2VuY2lhbCwgbm8gc2Vyw6AgZGVzY29uZmlndXJhdFxuIgorIiBwZXIgYSBoYWJpbGl0YXIgJXMuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IG5vLCBjYW5ub3QgcHJvY2VlZCB3aXRoICVzICgtLWF1dG8tZGVjb25maWd1cmUgd2lsbCBoZWxwKTpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6IG5vLCBubyBlcyBwb3QgY29udGludWFyIGFtYiAlcyAoLS1hdXRvLWRlY29uZmlndXJlIGFqdWRhcsOgKTpcbiIKKyIlcyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAzMgorIywgYy1mb3JtYXQKK21zZ2lkICJyZW1vdmFsIG9mICUuMjUwcyIKK21zZ3N0ciAic3VwcmVzc2nDsyBkZSAlLjI1MHMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW5zdGFsbGF0aW9uIG9mICUuMjUwcyIKK21zZ3N0ciAiaW5zdGHFgGxhY2nDsyBkZSDCqyUuMjU1c8K7IgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDU4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBjb25zaWRlcmluZyBkZWNvbmZpZ3VyYXRpb24gb2YgJXMsIHdoaWNoIHdvdWxkIGJlIGJyb2tlbiBieSAlcyAuLi5cbiIKK21zZ3N0ciAiIgorImRwa2c6IGVzIGNvbnNpZGVyYSBsYSBkZXNpbnN0YcWAbGFjacOzIGRlICVzLCBxdWUgc2VyaWEgdHJlbmNhdCBwZXIgJXPigKZcbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA2NQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiB5ZXMsIHdpbGwgZGVjb25maWd1cmUgJXMgKGJyb2tlbiBieSAlcykuXG4iCittc2dzdHIgImRwa2c6IHPDrSwgZXMgZGVzY29uZmlndXJhcsOgICVzICh0cmVuY2F0IHBlciAlcykuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNjkgc3JjL2FyY2hpdmVzLmM6MTE4NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogcmVnYXJkaW5nICVzIGNvbnRhaW5pbmcgJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiByZWZlcmVudCBhICVzIHF1ZSBjb250w6kgJXM6XG4iCisiJXMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNzcKK21zZ2lkICJpZ25vcmluZyBicmVha2FnZSwgbWF5IHByb2NlZWQgYW55d2F5ISIKK21zZ3N0ciAicydpZ25vcmFyw6AgZWwgdHJlbmNhbWVudCwgZXMgcG90IHByb2NlZGlyIGlndWFsbWVudCEiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImluc3RhbGxpbmcgJS4yNTBzIHdvdWxkIGJyZWFrICUuMjUwcywgYW5kXG4iCisiIGRlY29uZmlndXJhdGlvbiBpcyBub3QgcGVybWl0dGVkICgtLWF1dG8tZGVjb25maWd1cmUgbWlnaHQgaGVscCkiCittc2dzdHIgIiIKKyJpbnN0YcWAbGFyICUuMjUwcyB0cmVuY2FyaWEgJS4yNTBzLCBpXG4iCisiIGxhIGRlY29uZmlndXJhY2nDsyBubyDDqXMgcGVybWVzYSAoLS1hdXRvLWRlY29uZmlndXJlIHBvZHJpYSBhanVkYXIpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDg2CisjLCBjLWZvcm1hdAorbXNnaWQgImluc3RhbGxpbmcgJS4yNTBzIHdvdWxkIGJyZWFrIGV4aXN0aW5nIHNvZnR3YXJlIgorbXNnc3RyICJsYSBpbnN0YcWAbGFjacOzIGRlbCBwYXF1ZXQgJS4yNTBzIHRyZW5jYXJpYSBlbCBwcm9ncmFtYXJpIGV4aXN0ZW50IgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTE2CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IGNvbnNpZGVyaW5nIHJlbW92aW5nICVzIGluIGZhdm91ciBvZiAlcyAuLi5cbiIKK21zZ3N0ciAiZHBrZzogZXMgY29uc2lkZXJhIGxhIGRlc2luc3RhxYBsYWNpw7MgZGUgJXMgZW4gZmF2b3IgZGUgJXPigKZcbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTEyMgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgcHJvcGVybHkgaW5zdGFsbGVkIC0gaWdub3JpbmcgYW55IGRlcGVuZGVuY2llcyBvbiBpdC5cbiIKK21zZ3N0ciAiIgorIiVzIG5vIGVzdMOgIGNvcnJlY3RhbWVudCBpbnN0YcWAbGF0IC0gbm8gZXMgdGluZHLDoCBlbiBjb21wdGUgY2FwIGRlcGVuZMOobmNpYSAiCisiZCdhcXVlc3QuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogbWF5IGhhdmUgdHJvdWJsZSByZW1vdmluZyAlcywgYXMgaXQgcHJvdmlkZXMgJXMgLi4uXG4iCittc2dzdHIgIiIKKyJkcGtnOiBwb2RlbiBoYXZlci1oaSBwcm9ibGVtZXMgZW4gZGVzaW5zdGHFgGxhciAlcywgZG9uYXQgcXVlIHByb3ZlZWl4IGEgJXMgIgorIuKAplxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTY2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBwYWNrYWdlICVzIHJlcXVpcmVzIHJlaW5zdGFsbGF0aW9uLCBidXQgd2lsbCByZW1vdmUgYW55d2F5IGFzIHlvdSAiCisicmVxdWVzdGVkLlxuIgorbXNnc3RyICIiCisiZHBrZzogZWwgcGFxdWV0ICVzIHJlcXVlcmVpeCBzZXIgcmVpbnN0YcWAbGF0LCBwZXLDsiBlcyBkZXNpbnN0YcWAbGFyw6AgdGFsIGkgIgorImNvbSBoZXUgZGVtYW5hdC5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE2OQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiBwYWNrYWdlICVzIHJlcXVpcmVzIHJlaW5zdGFsbGF0aW9uLCB3aWxsIG5vdCByZW1vdmUuXG4iCittc2dzdHIgImRwa2c6IGVsIHBhcXVldCAlcyByZXF1ZXJlaXggc2VyIHJlaW5zdGHFgGxhdCwgbm8gZXMgZGVzaW5zdGHFgGxhcsOgLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTc4CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IHllcywgd2lsbCByZW1vdmUgJXMgaW4gZmF2b3VyIG9mICVzLlxuIgorbXNnc3RyICJkcGtnOiBzw60sIGVzIGRlc2luc3RhxYBsYXLDoCAlcyBlbiBmYXZvciBkZSAlcy5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE5MAorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mbGljdGluZyBwYWNrYWdlcyAtIG5vdCBpbnN0YWxsaW5nICUuMjUwcyIKK21zZ3N0ciAicGFxdWV0cyBlbiBjb25mbGljdGUgLSBubyBzJ2luc3RhxYBsYXLDoCAlLjI1MHMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExOTEKK21zZ2lkICJpZ25vcmluZyBjb25mbGljdCwgbWF5IHByb2NlZWQgYW55d2F5ISIKK21zZ3N0ciAicydpZ25vcmFyw6AgZWwgY29uZmxpY3RlLCBlcyBwb3QgcHJvY2VkaXIgaWd1YWxtZW50ISIKKworIzogc3JjL2FyY2hpdmVzLmM6MTIzNQorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIC0tcmVjdXJzaXZlIG5lZWRzIGF0IGxlYXN0IG9uZSBwYXRoIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIC0tcmVjdXJzaXZlIG5lY2Vzc2l0YSBhbG1lbnlzIHVuIGNhbcOtIGNvbSBhIGFyZ3VtZW50IgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjQ1Cittc2dpZCAiZmluZCBmb3IgZHBrZyAtLXJlY3Vyc2l2ZSIKK21zZ3N0ciAiwqtmaW5kwrsgcGVyIGEgLS1yZWN1cnNpdmUiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNjYKK21zZ2lkICJmYWlsZWQgdG8gZmRvcGVuIGZpbmQncyBwaXBlIgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGZlciDCq2Zkb3BlbsK7IGFsIGNvbmR1Y3RlIGRlIGZpbmQiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNzIKK21zZ2lkICJlcnJvciByZWFkaW5nIGZpbmQncyBwaXBlIgorbXNnc3RyICJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIGxsZWdpciBlbCBjb25kdWN0ZSBkZSBmaW5kIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjczCittc2dpZCAiZXJyb3IgY2xvc2luZyBmaW5kJ3MgcGlwZSIKK21zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiB0YW5jYXIgZWwgY29uZHVjdGUgZGUgZmluZCIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3NgorIywgYy1mb3JtYXQKK21zZ2lkICJmaW5kIGZvciAtLXJlY3Vyc2l2ZSByZXR1cm5lZCB1bmhhbmRsZWQgZXJyb3IgJWkiCittc2dzdHIgIkxhIHJlY2VyY2EgZW1wcmFudCAtLXJlY3Vyc2l2ZSBoYSB0b3JuYXQgbCdlaXhpZGEgbm8gZ2VzdGlvbmFkYSAlaSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3OQorbXNnaWQgInNlYXJjaGVkLCBidXQgZm91bmQgbm8gcGFja2FnZXMgKGZpbGVzIG1hdGNoaW5nICouZGViKSIKK21zZ3N0ciAiIgorInMnaGEgYnVzY2F0LCBwZXLDsiBubyBzJ2hhbiB0cm9iYXQgcGFxdWV0cyAoZml0eGVycyBxdWUgY29pbmNpZGlzcXVlbiBhbWIgKi4iCisiZGViKSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI5MAorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGF0IGxlYXN0IG9uZSBwYWNrYWdlIGFyY2hpdmUgZmlsZSBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyBuZWNlc3NpdGEgYWxtZW55cyB1biBwYXF1ZXQgYXJ4aXUgY29tIGEgYXJndW1lbnQiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzMjUgc3JjL2RpdmVydGNtZC5jOjc4IHNyYy9kaXZlcnRjbWQuYzoxMTgKKyM6IHNyYy9lbnF1aXJ5LmM6MTY2IHNyYy9lbnF1aXJ5LmM6Mjc5IHNyYy9lbnF1aXJ5LmM6NDQ5IHNyYy9lbnF1aXJ5LmM6NDUxCisjOiBzcmMvZW5xdWlyeS5jOjQ2NCBzcmMvbWFpbi5jOjY2IHNyYy9tYWluLmM6MTYzIHNyYy9tYWluLmM6MzE0CisjOiBzcmMvbWFpbi5jOjQ5MyBzcmMvcGFja2FnZXMuYzoyNTQgc3JjL3F1ZXJ5Y21kLmM6MjUyIHNyYy9xdWVyeWNtZC5jOjM1NQorIzogc3JjL3F1ZXJ5Y21kLmM6Mzk2IHNyYy9xdWVyeWNtZC5jOjQwNCBzcmMvcXVlcnljbWQuYzo0NDggc3JjL3F1ZXJ5Y21kLmM6NTE3CisjOiBzcmMvcXVlcnljbWQuYzo2MDYgc3JjL3F1ZXJ5Y21kLmM6NjUwIHNyYy9zZWxlY3QuYzo3OSBzcmMvc3RhdGNtZC5jOjY4CisjOiBzcmMvc3RhdGNtZC5jOjk4IHNyYy90cmlnY21kLmM6NTggc3JjL3RyaWdjbWQuYzo5MCBkcGtnLWRlYi9idWlsZC5jOjQ0MQorIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIxNyBkcGtnLWRlYi9leHRyYWN0LmM6MjUwIGRwa2ctZGViL2luZm8uYzoyMDMKKyM6IGRwa2ctZGViL2luZm8uYzoyNjUgZHBrZy1kZWIvbWFpbi5jOjYwIGRwa2ctZGViL21haW4uYzoxMjYKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjI1NyBkcGtnLXNwbGl0L21haW4uYzo1NCBkcGtnLXNwbGl0L21haW4uYzo5OAorIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE0NCBkcGtnLXNwbGl0L3F1ZXVlLmM6MjgwCittc2dpZCAiPHN0YW5kYXJkIG91dHB1dD4iCittc2dzdHIgIjxlaXhpZGEgZXN0w6BuZGFyZD4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzMjYgc3JjL3BhY2thZ2VzLmM6MjU1IHNyYy9xdWVyeWNtZC5jOjI1MworIzogc3JjL3F1ZXJ5Y21kLmM6MzUzIHNyYy9xdWVyeWNtZC5jOjQ1NCBzcmMvcXVlcnljbWQuYzo1MTggc3JjL3NlbGVjdC5jOjgwCisjOiBkcGtnLXNwbGl0L21haW4uYzoxNjkgZHBrZy1zcGxpdC9xdWV1ZS5jOjIxOAorbXNnaWQgIjxzdGFuZGFyZCBlcnJvcj4iCittc2dzdHIgIjxlcnJvciBlc3TDoG5kYXJkPiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTM2NworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiU2VsZWN0aW5nIHByZXZpb3VzbHkgZGVzZWxlY3RlZCBwYWNrYWdlICVzLlxuIgorbXNnaWQgIlNlbGVjdGluZyBwcmV2aW91c2x5IHVuc2VsZWN0ZWQgcGFja2FnZSAlcy5cbiIKK21zZ3N0ciAiUydlc3TDoCBzZWxlY2Npb25hbnQgZWwgcGFxdWV0ICVzIHByw6h2aWFtZW50IG5vIHNlbGVjY2lvbmF0LlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzcxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJTa2lwcGluZyBkZXNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dpZCAiU2tpcHBpbmcgdW5zZWxlY3RlZCBwYWNrYWdlICVzLlxuIgorbXNnc3RyICJTJ2VzdMOgIG9tZXRlbnQgZWwgcGFxdWV0IG5vIHNlbGVjY2lvbmF0ICVzLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzg3CisjLCBjLWZvcm1hdAorbXNnaWQgIlZlcnNpb24gJS4yNTBzIG9mICUuMjUwcyBhbHJlYWR5IGluc3RhbGxlZCwgc2tpcHBpbmcuXG4iCittc2dzdHIgIkxhIHZlcnNpw7MgJS4yNTBzIGRlICUuMjUwcyBqYSDDqXMgaW5zdGHFgGxhZGEsIGVzIGRlc2NhcnRhLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzk3CisjLCBjLWZvcm1hdAorbXNnaWQgImRvd25ncmFkaW5nICUuMjUwcyBmcm9tICUuMjUwcyB0byAlLjI1MHMuIgorbXNnc3RyICJzJ2VzdMOgIGRlc2FjdHVhbGl0emFudCAlLjI1MHMgZGUgJS4yNTBzIGEgJS4yNTBzLiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTQwMgorIywgYy1mb3JtYXQKK21zZ2lkICJXaWxsIG5vdCBkb3duZ3JhZGUgJS4yNTBzIGZyb20gdmVyc2lvbiAlLjI1MHMgdG8gJS4yNTBzLCBza2lwcGluZy5cbiIKK21zZ3N0ciAiIgorIk5vIGVzIGRlc2FjdHVhbGl0emFyw6AgJS4yNTBzIGRlIGxhIHZlcnNpw7MgJS4yNTBzIGEgbGEgJS4yNTBzLCBlcyBkZXNjYXJ0YS5cbiIKKworIzogc3JjL2NsZWFudXAuYzo4NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidW5hYmxlIHRvIHJlbW92ZSBuZXdseS1pbnN0YWxsZWQgdmVyc2lvbiBvZiBgJS4yNTBzJyB0byBhbGxvdyByZWluc3RhbGxhdGlvbiAiCisib2YgYmFja3VwIGNvcHkiCittc2dzdHIgIiIKKyJubyBlcyBwb3QgZXNib3JyYXIgbGEgdmVyc2nDsyBhY2FiYWRhIGQnaW5zdGHFgGxhciBkZSDCqyUuMjUwc8K7IHBlciBhIHBlcm1ldHJlICIKKyJsYSByZWluc3RhxYBsYWNpw7MgZGUgbGEgY8OycGlhIGRlIHNlZ3VyZXRhdCIKKworIzogc3JjL2NsZWFudXAuYzo5MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVzdG9yZSBiYWNrdXAgdmVyc2lvbiBvZiBgJS4yNTBzJyIKK21zZ3N0ciAibm8gZXMgcG90IHJlc3RhYmxpciBsYSB2ZXJzacOzIGRlIGxhIGPDsnBpYSBkZSBzZWd1cmV0YXQgZGUgwqslLjI1MHPCuyIKKworIzogc3JjL2NsZWFudXAuYzo5NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIGJhY2t1cCBjb3B5IG9mICclLjI1MHMnIgorbXNnc3RyICJubyBlcyBwb3Qgc3VwcmltaXIgbGEgY8OycGlhIGRlIHNlZ3VyZXRhdCBkZSDCqyUuMjUwc8K7IgorCisjOiBzcmMvY2xlYW51cC5jOjEwMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIG5ld2x5LWluc3RhbGxlZCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICJubyBlcyBwb3Qgc3VwcmltaXIgbGEgdmVyc2nDsyBhY2FiYWRhIGQnaW5zdGHFgGxhciBkZSDCqyUuMjUwc8K7IgorCisjOiBzcmMvY2xlYW51cC5jOjEwOAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIG5ld2x5LWV4dHJhY3RlZCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICJubyBlcyBwb3Qgc3VwcmltaXIgbGEgdmVyc2nDsyBhY2FiYWRhIGQnZXh0cmF1cmUgZGUgwqslLjI1MHPCuyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjEwNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBuZXcgZGlzdHJpYnV0ZWQgY29uZmZpbGUgJyUuMjUwcyciCittc2dzdHIgIm5vIGVzIHBvdCBmZXIgwqtzdGF0wrsgc29icmUgZWwgY29uZmZpbGUgZGUgbm92YSBkaXN0cmlidWNpw7MgwqslLjI1MHPCuyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBjdXJyZW50IGluc3RhbGxlZCBjb25mZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibm8gZXMgcG90IGZlciDCq3N0YXTCuyBzb2JyZSBlbCBjb25mZmlsZSDCqyUuMjUwc8K7IGFjdHVhbG1lbnQgaW5zdGHFgGxhdCIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjEyNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiQ29uZmlndXJhdGlvbiBmaWxlIGAlcycsIGRvZXMgbm90IGV4aXN0IG9uIHN5c3RlbS5cbiIKKyJJbnN0YWxsaW5nIG5ldyBjb25maWcgZmlsZSBhcyB5b3UgcmVxdWVzdGVkLlxuIgorbXNnc3RyICIiCisiXG4iCisiRWwgY29uZmZpbGUgwqslc8K7IG5vIGV4aXN0ZWl4IGVuIGVsIHNpc3RlbWEuXG4iCisiUydlc3TDoCBpbnN0YcWAbGFudCBlbCBjb25mZmlsZSBub3UgdGFsIGkgY29tIGhldSBkZW1hbmF0LlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTY4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlIG9sZCBiYWNrdXAgJyUuMjUwcyc6ICVzIgorbXNnc3RyICIlczogbm8gcydoYSBwb2d1dCBlc2JvcnJhciBsJ2FudGlnYSBjw7JwaWEgZGUgc2VndXJldGF0IMKrJS4yNTBzwrs6ICVzIgorCisjIFJlYW5vbWVuYXIgLSBDYW52aWFyIGVsIG5vbSAtIFRvcm5hciBhIGFub21lbmFyPyAtLSBKb3Jkw6AKKyMgSm8gcGVyc29uYWxtZW50IHByZWZlcmlzYyAiY2FudmlhIGVsIG5vbSIsIHBlcsOyIHBlciBleGVtcGxlIGFsIFRlcm1jYXQKKyMgdmFuIG3DqXMgYW1iIHJlYW5vbWVuYSwgaSBlbCBHTk9NRSBobyBlc3TDoCBzZWd1aW50LgorIyBBbmVtIGFtYiDCq2NhbnZpYXIgZWwgbm9twrssIHZhbD8gam0KKyMgRmlucyBvbiBqbyB2ZWlnLCBlbCBOYXV0aWx1cyBkaXUgYWl4w7IsIGVuIG9jdHVicmUgZGUgMjAxMOKApgorIzogc3JjL2NvbmZpZ3VyZS5jOjE3NgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIHJlbmFtZSAnJS4yNTBzJyB0byAnJS4yNTBzJzogJXMiCittc2dzdHIgIiVzOiBubyBzJ2hhIHBvZ3V0IGNhbnZpYXIgZWwgbm9tIGRlIMKrJS4yNTBzwrsgYSDCqyUuMjUwc8K7OiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE4MgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIHJlbW92ZSAnJS4yNTBzJzogJXMiCittc2dzdHIgIiVzOiBubyBzJ2hhIHBvZ3V0IGVzYm9ycmFyIMKrJXPCuzogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxODgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW1vdmUgb2xkIGRpc3RyaWJ1dGVkIHZlcnNpb24gJyUuMjUwcyc6ICVzIgorbXNnc3RyICIiCisiJXM6IG5vIHMnaGEgcG9ndXQgZXNib3JyYXIgbGEgdmVyc2nDsyBkZSBsJ2FudGlnYSBkaXN0cmlidWNpw7MgwqslLjI1MHPCuzogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW1vdmUgJyUuMjUwcycgKGJlZm9yZSBvdmVyd3JpdGUpOiAlcyIKK21zZ3N0ciAiJXM6IG5vIHMnaGEgcG9ndXQgZXNib3JyYXIgwqslLjI1MHPCuyAoYWJhbnMgZGUgc29icmVlc2NyaXVyZSk6ICVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTk2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gbGluayAnJS4yNTBzJyB0byAnJS4yNTBzJzogJXMiCittc2dzdHIgIiVzOiBubyBzJ2hhIHBvZ3V0IGVubGxhw6dhciDCqyUuMjUwc8K7IGEgwqslLjI1MHPCuzogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoyMDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW5zdGFsbGluZyBuZXcgdmVyc2lvbiBvZiBjb25maWcgZmlsZSAlcyAuLi5cbiIKK21zZ3N0ciAiUydlc3TDoCBpbnN0YcWAbGFudCB1bmEgdmVyc2nDsyBub3ZhIGRlbCBmaXR4ZXIgZGUgY29uZmlndXJhY2nDsyAlc+KAplxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjA2IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo1NDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgYCUuMjUwcycgYXMgYCUuMjUwcyciCittc2dzdHIgIm5vIGVzIHBvdCBpbnN0YcWAbGFyIMKrJS4yNTBzwrsgY29tIGEgwqslLjI1MHPCuyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI1NworIywgYy1mb3JtYXQKK21zZ2lkICJubyBwYWNrYWdlIG5hbWVkIGAlcycgaXMgaW5zdGFsbGVkLCBjYW5ub3QgY29uZmlndXJlIgorbXNnc3RyICJubyBoaSBoYSBpbnN0YcWAbGF0IGNhcCBwYXF1ZXQgYW5vbWVuYXQgwqslc8K7LCBubyBlcyBwb3QgY29uZmlndXJhciIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI2MAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlICUuMjUwcyBpcyBhbHJlYWR5IGluc3RhbGxlZCBhbmQgY29uZmlndXJlZCIKK21zZ3N0ciAiZWwgcGFxdWV0ICUuMjUwcyBqYSBlc3TDoCBpbnN0YcWAbGF0IGkgY29uZmlndXJhdCIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI2MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisicGFja2FnZSAlLjI1MHMgaXMgbm90IHJlYWR5IGZvciBjb25maWd1cmF0aW9uXG4iCisiIGNhbm5vdCBjb25maWd1cmUgKGN1cnJlbnQgc3RhdHVzIGAlLjI1MHMnKSIKK21zZ3N0ciAiIgorImVsIHBhcXVldCAlLjI1MHMgbm8gZXN0w6AgbGxlc3QgcGVyIGEgY29uZmlndXJhci1zZVxuIgorIiBubyBlcyBwb3QgY29uZmlndXJhciAoZXN0YXQgYWN0dWFsIMKrJS4yNTBzwrspIgorCisjOiBzcmMvY29uZmlndXJlLmM6Mjk0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBkZXBlbmRlbmN5IHByb2JsZW1zIHByZXZlbnQgY29uZmlndXJhdGlvbiBvZiAlczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6IHByb2JsZW1lcyBkZSBkZXBlbmTDqG5jaWVzIGltcGVkZWl4ZW4gbGEgY29uZmlndXJhY2nDsyBkZSAlczpcbiIKKyIlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI5NworbXNnaWQgImRlcGVuZGVuY3kgcHJvYmxlbXMgLSBsZWF2aW5nIHVuY29uZmlndXJlZCIKK21zZ3N0ciAicHJvYmxlbWVzIGRlIGRlcGVuZMOobmNpZXMgLSBlcyBkZWl4YSBzZW5zZSBjb25maWd1cmFyIgorCisjOiBzcmMvY29uZmlndXJlLmM6MzAxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiAlczogZGVwZW5kZW5jeSBwcm9ibGVtcywgYnV0IGNvbmZpZ3VyaW5nIGFueXdheSBhcyB5b3UgcmVxdWVzdGVkOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogJXM6IHByb2JsZW1lcyBkZSBkZXBlbmTDqG5jaWVzLCBwZXLDsiBlcyBjb25maWd1cmFyw6AgaWd1YWxtZW50IHRhbCBpIGNvbSAiCisiaGV1IGRlbWFuYXQ6XG4iCisiJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzozMDkKK21zZ2lkICIiCisiUGFja2FnZSBpcyBpbiBhIHZlcnkgYmFkIGluY29uc2lzdGVudCBzdGF0ZSAtIHlvdSBzaG91bGRcbiIKKyIgcmVpbnN0YWxsIGl0IGJlZm9yZSBhdHRlbXB0aW5nIGNvbmZpZ3VyYXRpb24uIgorbXNnc3RyICIiCisiRWwgcGFxdWV0IGVzdMOgIGVuIHVuIGdyZXUgZXN0YXQgZCdpbmNvbnNpc3TDqG5jaWEgLSBoZXUgZGVcbiIKKyIgcmVpbnN0YcWAbGFyLWxvIGFiYW5zIGQnaW50ZW50YXIgbGEgc2V2YSBjb25maWd1cmFjacOzLiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjMxMgorIywgYy1mb3JtYXQKK21zZ2lkICJTZXR0aW5nIHVwICVzICglcykgLi4uXG4iCittc2dzdHIgIlMnZXN0w6AgY29uZmlndXJhbnQgJXMgKCVzKeKAplxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6Mzk2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogdW5hYmxlIHRvIHN0YXQgY29uZmlnIGZpbGUgJyVzJ1xuIgorIiAoPSAnJXMnKTogJXMiCittc2dzdHIgIiIKKyIlczogbm8gZXMgcG90IGZlciDCq3N0YXTCuyBzb2JyZSBlbCBmaXR4ZXIgZGUgY29uZmlndXJhY2nDsyDCqyVzwrtcbiIKKyIgKD0gwqslc8K7KTogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzo0MDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBjb25maWcgZmlsZSAnJXMnIGlzIGEgY2lyY3VsYXIgbGlua1xuIgorIiAoPSAnJXMnKSIKK21zZ3N0ciAiIgorIiVzOiBlbCBmaXR4ZXIgZGUgY29uZmlndXJhY2nDsyDCqyVzwrsgw6lzIHVuIGVubGxhw6cgY2lyY3VsYXJcbiIKKyIgKD0gwqslc8K7KSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQxOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IHVuYWJsZSB0byByZWFkbGluayBjb25mZmlsZSAnJXMnXG4iCisiICg9ICclcycpOiAlcyIKK21zZ3N0ciAiIgorIiVzOiBubyBlcyBwb3QgbGxlZ2lyIGVsIHZhbG9yIGRlIGwnZW5sbGHDpyBzaW1iw7JsaWMgZGVsIGNvbmZmaWxlIMKrJXPCu1xuIgorIiAoPSDCqyVzwrspOiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQ0NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IGNvbmZmaWxlICclLjI1MHMnIHJlc29sdmVzIHRvIGRlZ2VuZXJhdGUgZmlsZW5hbWVcbiIKKyIgKCclcycgaXMgYSBzeW1saW5rIHRvICclcycpIgorbXNnc3RyICIiCisiJXM6IGVsIGNvbmZmaWxlIMKrJS4yNTBzwrsgYXB1bnRhIGEgdW4gbm9tIGRlIGZpdHhlciBjb3JydXB0ZVxuIgorIiAowqslc8K7IMOpcyB1biBlbmxsYcOnIHNpbWLDsmxpYyBhIMKrJXPCuykiCisKKyM6IHNyYy9jb25maWd1cmUuYzo0NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGNvbmZmaWxlICclLjI1MHMnIGlzIG5vdCBhIHBsYWluIGZpbGUgb3Igc3ltbGluayAoPSAnJXMnKSIKK21zZ3N0ciAiIgorIiVzOiBlbCBjb25mZmlsZSDCqyUuMjUwc8K7IG5vIMOpcyB1biBmaXR4ZXIgbm9ybWFsIG8gdW4gZW5sbGHDpyBzaW1iw7JsaWMgKD0gwqslc8K7KSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQ4NgorbXNnaWQgIm1kNWhhc2giCittc2dzdHIgInN1bWEgbWQ1IgorCisjIEZJWE1FIGhhc2guIENhbCB0cmFkdWlyLWhvLiBqbQorIzogc3JjL2NvbmZpZ3VyZS5jOjQ5MgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogdW5hYmxlIHRvIG9wZW4gY29uZmZpbGUgJXMgZm9yIGhhc2g6ICVzIgorbXNnc3RyICIlczogbm8gZXMgcG90IG9icmlyIGVsIGNvbmZmaWxlICVzIHBlbCDCq2hhc2jCuzogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzo1MjIgc3JjL2NvbmZpZ3VyZS5jOjUyNgorbXNnaWQgImNvbmZmaWxlIGRpZmZlcmVuY2UgdmlzdWFsaXplciIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NTQzCittc2dpZCAiVHlwZSBgZXhpdCcgd2hlbiB5b3UncmUgZG9uZS5cbiIKK21zZ3N0ciAiRXNjcml2aXUgwqtleGl0wrsgcXVhbiBhY2FiZXUuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo1NTIgc3JjL2NvbmZpZ3VyZS5jOjU1NgorbXNnaWQgImNvbmZmaWxlIHNoZWxsIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIkNvbmZpZ3VyYXRpb24gZmlsZSBgJXMnIgorbXNnc3RyICIiCisiXG4iCisiRml0eGVyIGRlIGNvbmZpZ3VyYWNpw7Mgwqslc8K7IgorCisjOiBzcmMvY29uZmlndXJlLmM6NjA0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAoYWN0dWFsbHkgYCVzJykiCittc2dzdHIgIiAowqslc8K7IGFjdHVhbG1lbnQpIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjA4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgPT0+IEZpbGUgb24gc3lzdGVtIGNyZWF0ZWQgYnkgeW91IG9yIGJ5IGEgc2NyaXB0LlxuIgorIiA9PT4gRmlsZSBhbHNvIGluIHBhY2thZ2UgcHJvdmlkZWQgYnkgcGFja2FnZSBtYWludGFpbmVyLlxuIgorbXNnc3RyICIiCisiXG4iCisiID09PiBGaXR4ZXIgZW4gZWwgc2lzdGVtYSBjcmVhdCBwZXIgdm9zYWx0cmVzIG8gcGVyIGFsZ3VuYSBzZXHDvMOobmNpYS5cbiIKKyIgPT0+IEZpdHhlciB0YW1iw6kgZW4gZWwgcGFxdWV0IHByb3Zlw690IHBlbCBtYW50ZW5pZG9yLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjEzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgICAgIE5vdCBtb2RpZmllZCBzaW5jZSBpbnN0YWxsYXRpb24uXG4iCittc2dzdHIgIiIKKyJcbiIKKyIgICAgIE5vIG1vZGlmaWNhdCBkZXMgZGUgbGEgaW5zdGHFgGxhY2nDsy5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYxNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiID09PiBNb2RpZmllZCAoYnkgeW91IG9yIGJ5IGEgc2NyaXB0KSBzaW5jZSBpbnN0YWxsYXRpb24uXG4iCittc2dzdHIgIiIKKyJcbiIKKyIgPT0+IE1vZGlmaWNhdCAocGVyIHZvc2FsdHJlcyBvIHBlciBhbGd1bmEgc2Vxw7zDqG5jaWEpIGRlcyBkZSBsYSAiCisiaW5zdGHFgGxhY2nDsy5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYxNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiID09PiBEZWxldGVkIChieSB5b3Ugb3IgYnkgYSBzY3JpcHQpIHNpbmNlIGluc3RhbGxhdGlvbi5cbiIKK21zZ3N0ciAiIgorIlxuIgorIiA9PT4gU3VwcmltaXQgKHBlciB2b3NhbHRyZXMgbyBwZXIgYWxndW5hIHNlccO8w6huY2lhKSBkZXMgZGUgbGEgaW5zdGHFgGxhY2nDsy5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYxOQorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IFBhY2thZ2UgZGlzdHJpYnV0b3IgaGFzIHNoaXBwZWQgYW4gdXBkYXRlZCB2ZXJzaW9uLlxuIgorbXNnc3RyICIgPT0+IEVsIGRpc3RyaWJ1w69kb3IgZGVsIHBhcXVldCBoYSBwdWJsaWNhdCB1bmEgdmVyc2nDsyBhY3R1YWxpdHphZGEuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAgICBWZXJzaW9uIGluIHBhY2thZ2UgaXMgdGhlIHNhbWUgYXMgYXQgbGFzdCBpbnN0YWxsYXRpb24uXG4iCittc2dzdHIgIiIKKyIgICAgIExhIHZlcnNpw7MgZGVsIHBhcXVldCDDqXMgbGEgbWF0ZWl4YSBxdWUgbGEgZGUgbCfDumx0aW1hIGluc3RhxYBsYWNpw7MuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBVc2luZyBuZXcgZmlsZSBhcyB5b3UgcmVxdWVzdGVkLlxuIgorbXNnc3RyICIgPT0+IFMnZW1wcmFyw6AgZWwgZml0eGVyIG5vdSB0YWwgaSBjb20gaGV1IGRlbWFuYXQuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBVc2luZyBjdXJyZW50IG9sZCBmaWxlIGFzIHlvdSByZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiA9PT4gUydlbXByYXLDoCBlbCBmaXR4ZXIgYW50aWMgdGFsIGkgY29tIGhldSBkZW1hbmF0LlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjQxCisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gS2VlcGluZyBvbGQgY29uZmlnIGZpbGUgYXMgZGVmYXVsdC5cbiIKK21zZ3N0ciAiID09PiBFcyBtYW50w6kgZWwgZml0eGVyIGRlIGNvbmZpZ3VyYWNpw7MgYW50aWMgcGVyIGRlZmVjdGUuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBVc2luZyBuZXcgY29uZmlnIGZpbGUgYXMgZGVmYXVsdC5cbiIKK21zZ3N0ciAiID09PiBTJ2VtcHJhcsOgIGVsIGZpdHhlciBkZSBjb25maWd1cmFjacOzIG5vdSBwZXIgZGVmZWN0ZS5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY1MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiICAgV2hhdCB3b3VsZCB5b3UgbGlrZSB0byBkbyBhYm91dCBpdCA/ICBZb3VyIG9wdGlvbnMgYXJlOlxuIgorIiAgICBZIG9yIEkgIDogaW5zdGFsbCB0aGUgcGFja2FnZSBtYWludGFpbmVyJ3MgdmVyc2lvblxuIgorIiAgICBOIG9yIE8gIDoga2VlcCB5b3VyIGN1cnJlbnRseS1pbnN0YWxsZWQgdmVyc2lvblxuIgorIiAgICAgIEQgICAgIDogc2hvdyB0aGUgZGlmZmVyZW5jZXMgYmV0d2VlbiB0aGUgdmVyc2lvbnNcbiIKKyIgICAgICBaICAgICA6IHN0YXJ0IGEgc2hlbGwgdG8gZXhhbWluZSB0aGUgc2l0dWF0aW9uXG4iCittc2dzdHIgIiIKKyIgICBRdcOoIHZvbGV1IGZlciBhbCByZXNwZWN0ZT8gTGVzIHZvc3RyZXMgb3BjaW9ucyBzw7NuOlxuIgorIiAgICBZIG8gSSAgOiBpbnN0YcWAbGEgbGEgdmVyc2nDsyBkZWwgcGFxdWV0XG4iCisiICAgIE4gbyBPICA6IGNvbnNlcnZhIGxhIHZlcnNpw7MgYWN0dWFsbWVudCBpbnN0YcWAbGFkYVxuIgorIiAgICAgIEQgICAgOiBtb3N0cmEgbGVzIGRpZmVyw6huY2llcyBlbnRyZSB2ZXJzaW9uc1xuIgorIiAgICAgIFogICAgOiBleGVjdXRhIHVuIGludMOocnByZXQgZCdvcmRyZXMgcGVyIGEgZXhhbWluYXIgbGEgc2l0dWFjacOzXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIFRoZSBkZWZhdWx0IGFjdGlvbiBpcyB0byBrZWVwIHlvdXIgY3VycmVudCB2ZXJzaW9uLlxuIgorbXNnc3RyICIgTCdhY2Npw7MgcGVyIGRlZmVjdGUgw6lzIGNvbnNlcnZhciBsYSB2ZXJzacOzIGFjdHVhbC5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY2MQorIywgYy1mb3JtYXQKK21zZ2lkICIgVGhlIGRlZmF1bHQgYWN0aW9uIGlzIHRvIGluc3RhbGwgdGhlIG5ldyB2ZXJzaW9uLlxuIgorbXNnc3RyICIgTCdhY2Npw7MgcGVyIGRlZmVjdGUgw6lzIGluc3RhxYBsYXIgbGEgdmVyc2nDsyBub3ZhLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjY2Cittc2dpZCAiW2RlZmF1bHQ9Tl0iCittc2dzdHIgIltwZXIgZGVmZWN0ZT1OXSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY2NworbXNnaWQgIltkZWZhdWx0PVldIgorbXNnc3RyICJbcGVyIGRlZmVjdGU9WV0iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NjgKK21zZ2lkICJbbm8gZGVmYXVsdF0iCittc2dzdHIgIltubyBoaSBoYSBvcGNpw7MgcGVyIGRlZmVjdGVdIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjcxCittc2dpZCAiZXJyb3Igd3JpdGluZyB0byBzdGRlcnIsIGRpc2NvdmVyZWQgYmVmb3JlIGNvbmZmaWxlIHByb21wdCIKK21zZ3N0ciAiIgorImVycm9yIGEgbCdlc2NyaXVyZSBsJ2VpeGlkYSBkJ2Vycm9yLCBzJ2hhIGRlc2NvYmVydCBhYmFucyBkZSBwcmVndW50YXIgc29icmUgIgorImNvbmZmaWxlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY4MAorbXNnaWQgInJlYWQgZXJyb3Igb24gc3RkaW4gYXQgY29uZmZpbGUgcHJvbXB0IgorbXNnc3RyICJlcnJvciBkZSBsZWN0dXJhIGVuIGwnZW50cmFkYSBlc3TDoG5kYXJkIGFsIHByZWd1bnRhciBzb2JyZSBjb25mZmlsZXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2ODEKK21zZ2lkICJFT0Ygb24gc3RkaW4gYXQgY29uZmZpbGUgcHJvbXB0IgorbXNnc3RyICJFT0YgZW4gbCdlbnRyYWRhIGVzdMOgbmRhcmQgYWwgcHJlZ3VudGFyIHNvYnJlIGNvbmZmaWxlcyIKKworIzogc3JjL2RlcGNvbi5jOjE3NQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBkZXBlbmRzIG9uICVzIgorbXNnc3RyICIlcyBkZXDDqG4gZGUgJXMiCisKKyM6IHNyYy9kZXBjb24uYzoxNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcHJlLWRlcGVuZHMgb24gJXMiCittc2dzdHIgIiVzIHByZS1kZXDDqG4gZGUgJXMiCisKKyM6IHNyYy9kZXBjb24uYzoxODEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcmVjb21tZW5kcyAlcyIKK21zZ3N0ciAiJXMgcmVjb21hbmEgJXMiCisKKyM6IHNyYy9kZXBjb24uYzoxODQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgc3VnZ2VzdHMgJXMiCittc2dzdHIgIiVzIHN1Z2dlcmVpeCAlcyIKKworIzogc3JjL2RlcGNvbi5jOjE4NworIywgYy1mb3JtYXQKK21zZ2lkICIlcyBicmVha3MgJXMiCittc2dzdHIgIiVzIHRyZW5jYSAlcyIKKworIzogc3JjL2RlcGNvbi5jOjE5MAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBjb25mbGljdHMgd2l0aCAlcyIKK21zZ3N0ciAiJXMgZW50cmEgZW4gY29uZmxpY3RlIGFtYiAlcyIKKworIzogc3JjL2RlcGNvbi5jOjE5MworIywgYy1mb3JtYXQKK21zZ2lkICIlcyBlbmhhbmNlcyAlcyIKK21zZ3N0ciAiJXMgbWlsbG9yYSAlcyIKKworIzogc3JjL2RlcGNvbi5jOjI5NgorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyBzZXLDoCBkZXNpbnN0YcWAbGF0LlxuIgorCisjOiBzcmMvZGVwY29uLmM6Mjk5CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHRvIGJlIGRlY29uZmlndXJlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMgc2Vyw6AgZGVzY29uZmlndXJhdC5cbiIKKworIzogc3JjL2RlcGNvbi5jOjMwNAorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB0byBiZSBpbnN0YWxsZWQsIGJ1dCBpcyB2ZXJzaW9uICUuMjUwcy5cbiIKK21zZ3N0ciAiICAgJS4yNTBzIHNlcsOgIGluc3RhxYBsYXQsIHBlcsOyIHTDqSB1bmEgdmVyc2nDsyAlLjI1MHMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgaW5zdGFsbGVkLCBidXQgaXMgdmVyc2lvbiAlLjI1MHMuXG4iCittc2dzdHIgIiAgJS4yNTBzIGVzdMOgIGluc3RhxYBsYXQsIHBlcsOyIHTDqSB1bmEgdmVyc2nDsyAlLjI1MHMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdW5wYWNrZWQsIGJ1dCBoYXMgbmV2ZXIgYmVlbiBjb25maWd1cmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyBlc3TDoCBkZXNlbXBhcXVldGF0LCBwZXLDsiBubyBoYSBlc3RhdCBjb25maWd1cmF0LlxuIgorCisjOiBzcmMvZGVwY29uLmM6MzM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHVucGFja2VkLCBidXQgaXMgdmVyc2lvbiAlLjI1MHMuXG4iCittc2dzdHIgIiAgJS4yNTBzIGVzdMOgIGRlc2VtcGFxdWV0YXQsIHBlcsOyIHTDqSB1bmEgdmVyc2nDsyAlLjI1MHMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozNDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgbGF0ZXN0IGNvbmZpZ3VyZWQgdmVyc2lvbiBpcyAlLjI1MHMuXG4iCittc2dzdHIgIiAgbGEgZGFycmVyYSB2ZXJzacOzIGNvbmZpZ3VyYWRhIGRlICUuMjUwcyDDqXMgbGEgJS4yNTBzLlxuIgorCisjOiBzcmMvZGVwY29uLmM6MzUzCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzICVzLlxuIgorbXNnc3RyICIgICUuMjUwcyDDqXMgJXMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozODgKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGJ1dCBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyBwcm92ZWVpeCAlLjI1MHMgcGVyw7Igc2Vyw6AgZGVzaW5zdGHFgGxhdC5cbiIKKworIzogc3JjL2RlcGNvbi5jOjM5MgorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYnV0IGlzIHRvIGJlIGRlY29uZmlndXJlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMgcHJvdmVlaXggJS4yNTBzIHBlcsOyIHNlcsOgIGRlc2NvbmZpZ3VyYXQuXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0MDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGJ1dCBpcyAlcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgcHJvdmVlaXggJS4yNTBzIHBlcsOyIMOpcyAlcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjQxNQorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIgICUuMjUwcyBubyBlc3TDoCBpbnN0YcWAbGF0LlxuIgorCisjOiBzcmMvZGVwY29uLmM6NDQzCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzICh2ZXJzaW9uICUuMjUwcykgaXMgdG8gYmUgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIgICUuMjUwcyAodmVyc2nDsyAlLjI1MHMpIHNlcsOgIGluc3RhxYBsYXQuXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgKHZlcnNpb24gJS4yNTBzKSBpcyBwcmVzZW50IGFuZCAlcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgKHZlcnNpw7MgJS4yNTBzKSDDqXMgcHJlc2VudCBpICVzLlxuIgorCisjOiBzcmMvZGVwY29uLmM6NDk1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBhbmQgaXMgdG8gYmUgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIgICUuMjUwcyBwcm92ZWVpeCAlLjI1MHMgeSBzZXLDoCBpbnN0YcWAbGF0LlxuIgorCisjOiBzcmMvZGVwY29uLmM6NTM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBhbmQgaXMgcHJlc2VudCBhbmQgJXMuXG4iCittc2dzdHIgIiAgJS4yNTBzIHByb3ZlZWl4ICUuMjUwcyBpIMOpcyBwcmVzZW50IGkgJXMuXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MAorIywgZnV6enkKKyN8IG1zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IHF1ZXJ5aW5nIHBhY2thZ2VzLiIKK21zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IGRpdmVydGluZyBmaWxlcy4iCittc2dzdHIgIkVtcHJldSAtLWhlbHAgcGVyIGEgb2J0ZW5pciBhanVkYSBzb2JyZSBsYSBjb25zdWx0YSBkZSBwYXF1ZXRzLiIKKworIzogc3JjL2RpdmVydGNtZC5jOjY2IHNyYy9zdGF0Y21kLmM6NTcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjgwCisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiAlcyB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICJEZWJpYW4gJXMgdmVyc2nDsyAlcy5cbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjcwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMTAgR3VpbGxlbSBKb3Zlci5cbiIKK21zZ3N0ciAiIgorIkNvcHlyaWdodCDCqSAxOTk1IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCDCqSAyMDAwLCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IMKpIDIwMTAgR3VpbGxlbSBKb3Zlci5cbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjc1IHNyYy9tYWluLmM6NjMgc3JjL3F1ZXJ5Y21kLmM6NjAzIHNyYy9zdGF0Y21kLmM6NjUKKyM6IHNyYy90cmlnY21kLmM6NTUgZHBrZy1kZWIvbWFpbi5jOjU3IGRwa2ctc3BsaXQvbWFpbi5jOjUxCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6ODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgb3JcbiIKKyJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKK21zZ3N0ciAiIgorIkFpeMOyIMOpcyBwcm9ncmFtYXJpIGxsaXVyZSwgdmVnZXUgbGEgTGxpY8OobmNpYSBQw7pibGljYSBHZW5lcmFsIEdOVSB2ZXJzacOzIDJcbiIKKyJvIHBvc3RlcmlvciBwZXIgYSBsZXMgY29uZGljaW9ucyBkZSBjw7JwaWEuIE5vIGhpIGhhIENBUCBnYXJhbnRpYS5cbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjg3IHNyYy9tYWluLmM6ODEgc3JjL3F1ZXJ5Y21kLmM6NjE1IHNyYy9zdGF0Y21kLmM6NzcKKyM6IGRwa2ctZGViL21haW4uYzo2OSBkcGtnLXNwbGl0L21haW4uYzo2MyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6OTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSA8Y29tbWFuZD5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIkZvcm1hIGQnw7pzOiAlcyBbPG9wY2nDsz4g4oCmXSA8b3JkcmU+XG4iCisiXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo5MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICBbLS1hZGRdIDxmaWxlPiAgICAgICAgICAgYWRkIGEgZGl2ZXJzaW9uLlxuIgorIiAgLS1yZW1vdmUgPGZpbGU+ICAgICAgICAgIHJlbW92ZSB0aGUgZGl2ZXJzaW9uLlxuIgorIiAgLS1saXN0IFs8Z2xvYi1wYXR0ZXJuPl0gIHNob3cgZmlsZSBkaXZlcnNpb25zLlxuIgorIiAgLS1saXN0cGFja2FnZSA8ZmlsZT4gICAgIHNob3cgd2hhdCBwYWNrYWdlIGRpdmVydHMgdGhlIGZpbGUuXG4iCisiICAtLXRydWVuYW1lIDxmaWxlPiAgICAgICAgcmV0dXJuIHRoZSBkaXZlcnRlZCBmaWxlLlxuIgorIlxuIgorbXNnc3RyICIiCisiT3JkcmVzOlxuIgorIiAgWy0tYWRkXSA8Zml0eGVyPiAgICAgICAgIGFmZWdlaXggdW5hIGRlc3ZpYWNpw7MuXG4iCisiICAtLXJlbW92ZSA8Zml0eGVyPiAgICAgICAgZWxpbWluYSB1bmEgZGVzdmlhY2nDsy5cbiIKKyIgIC0tbGlzdCBbPHBhdHLDsy1nbG9iPl0gICAgbW9zdHJhIGxlcyBkZXN2aWFjaW9ucyBkZSBmaXR4ZXJzLlxuIgorIiAgLS1saXN0cGFja2FnZSA8Zml0eGVyPiAgIG1vc3RyYSBxdWluIHBhcXVldCBkZXN2aWEgZWwgZml0eGVyLlxuIgorIiAgLS10cnVlbmFtZSA8Zml0eGVyPiAgICAgIHJldG9ybmEgZWwgZml0eGVyIGRlc3ZpYXQuXG4iCisKKyMgTW92ZSB0aGUgZmlsZSBhc2lkZSAob3IgYmFjaykgPyAtLSBKb3Jkw6AKKyM6IHNyYy9kaXZlcnRjbWQuYzoxMDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLXBhY2thZ2UgPHBhY2thZ2U+ICAgICAgbmFtZSBvZiB0aGUgcGFja2FnZSB3aG9zZSBjb3B5IG9mIDxmaWxlPiB3aWxsICIKKyJub3RcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJlIGRpdmVydGVkLlxuIgorIiAgLS1sb2NhbCAgICAgICAgICAgICAgICAgIGFsbCBwYWNrYWdlcycgdmVyc2lvbnMgYXJlIGRpdmVydGVkLlxuIgorIiAgLS1kaXZlcnQgPGRpdmVydC10bz4gICAgIHRoZSBuYW1lIHVzZWQgYnkgb3RoZXIgcGFja2FnZXMnIHZlcnNpb25zLlxuIgorIiAgLS1yZW5hbWUgICAgICAgICAgICAgICAgIGFjdHVhbGx5IG1vdmUgdGhlIGZpbGUgYXNpZGUgKG9yIGJhY2spLlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIHNldCB0aGUgZGlyZWN0b3J5IHdpdGggdGhlIGRpdmVyc2lvbnMgZmlsZS5cbiIKKyIgIC0tdGVzdCAgICAgICAgICAgICAgICAgICBkb24ndCBkbyBhbnl0aGluZywganVzdCBkZW1vbnN0cmF0ZS5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBxdWlldCBvcGVyYXRpb24sIG1pbmltYWwgb3V0cHV0LlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIk9wY2nDszpcbiIKKyIgIC0tcGFja2FnZSA8cGFxdWV0PiAgICAgICBub20gZGVsIHBhcXVldCBxdWUgbm8gZGVzdmlhcsOgIGxhIHNldmEgY8OycGlhIGRlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZpdHhlcj4uXG4iCisiICAtLWxvY2FsICAgICAgICAgICAgICAgICAgZGVzdmlhIHRvdGVzIGxlcyB2ZXJzaW9ucyBkZWwgcGFxdWV0LlxuIgorIiAgLS1kaXZlcnQgPGRlc3ZpYWNpw7M+ICAgICBub20gdXRpbGl0emF0IHBlciBhbHRyZXMgdmVyc2lvbnMgZGVscyBwYXF1ZXRzLlxuIgorIiAgLS1yZW5hbWUgICAgICAgICAgICAgICAgIG1vdSBlbCBmaXR4ZXIgYSB1biBjb3N0YXQgKG8gZWwgdG9ybmEgZW5yZXJlKVxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3JpPiAgIGVzdGFibGVpeCBlbCBkaXJlY3RvcmkgYW1iIGxlcyBkZXN2aWFjaW9ucy5cbiIKKyIgIC0tdGVzdCAgICAgICAgICAgICAgICAgICBubyBmYWNpcyByZXMsIG5vbcOpcyBkZW1vc3RyYS5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBvcGVyYSBzaWxlbmNpb3NhbWVudCwgYW1iIGxhIHNvcnRpZGEgbcOtbmltYS5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICBtb3N0cmEgYXF1ZXN0IG1pc3NhdGdlIGQnYWp1ZGFcbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBtb3N0cmEgbGEgdmVyc2nDsy5cbiIKKyJcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiV2hlbiBhZGRpbmcsIGRlZmF1bHQgaXMgLS1sb2NhbCBhbmQgLS1kaXZlcnQgPG9yaWdpbmFsPi5kaXN0cmliLlxuIgorIldoZW4gcmVtb3ZpbmcsIC0tcGFja2FnZSBvciAtLWxvY2FsIGFuZCAtLWRpdmVydCBtdXN0IG1hdGNoIGlmIHNwZWNpZmllZC5cbiIKKyJQYWNrYWdlIHByZWluc3QvcG9zdHJtIHNjcmlwdHMgc2hvdWxkIGFsd2F5cyBzcGVjaWZ5IC0tcGFja2FnZSBhbmQgLS0iCisiZGl2ZXJ0LlxuIgorbXNnc3RyICIiCisiRW4gYWZlZ2lyLCBsZXMgb3BjaW9ucyBwZXIgZGVmZWN0ZSBzw7NuIC0tbG9jYWwgaSAtLWRpdmVydCA8b3JpZ2luYWw+LiIKKyJkaXN0cmliLlxuIgorIkVuIHN1cHJpbWlyLCAtLXBhY2thZ2UgbyAtLWxvY2FsIGkgLS1kaXZlcnQgaGFuIGRlIGNvaW5jaWRpciBlbiBjYXNcbiIKKyJkJ2VzcGVjaWZpY2FyLXNlLlxuIgorIkVscyBzY3JpcHRzIGRlIHByZWluc3QvcG9zdHJtIHNlbXByZSBoYXVyaWVuIGQnZXNwZWNpZmljYXIgLS1wYWNrYWdlIGkgLS0iCisiZGl2ZXJ0LlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MTY4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNoZWNraW5nICclcyciCittc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gY29tcHJvdmFyIMKrJXPCuyIKKworIzogc3JjL2RpdmVydGNtZC5jOjIwMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisicmVuYW1lIGludm9sdmVzIG92ZXJ3cml0aW5nIGAlcycgd2l0aFxuIgorIiAgZGlmZmVyZW50IGZpbGUgYCVzJywgbm90IGFsbG93ZWQiCittc2dzdHIgIiIKKyJlbCBjYW52aSBkZSBub20gaW1wbGljYSBzb2JyZWVzY3JpdXJlIMKrJXPCuyBhbWJcbiIKKyIgIGVsIGZpdHhlciBkaWZlcmVudCDCqyVzwrssIG5vIMOpcyBwZXJtw6lzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjIzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzczCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gd3JpdGUgZmlsZSAnJXMnIgorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgZmlsZSAnJXMnIgorbXNnc3RyICJubyBlcyBwb3QgZXNjcml1cmUgZWwgZml0eGVyIMKrJS4yNTBzwrsiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyMjcKK21zZ2lkICJmaWxlIGNvcHkiCittc2dzdHIgImPDsnBpYSBkZSBmaXR4ZXIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyMzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlbmFtZSAnJXMnIHRvICclcyciCittc2dzdHIgIm5vIGVzIHBvdCBjYW52aWFyIGVsIG5vbSBkZSDCqyVzwrsgYSDCqyVzwrsiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVuYW1lOiByZW1vdmUgZHVwbGljYXRlIG9sZCBsaW5rICclcyciCittc2dzdHIgImNhbnZpIGRlIG5vbTogc3VwcmltZWl4IGwnZW5sbGHDpyB2ZWxsIGR1cGxpY2F0IMKrJXPCuyIKKworIzogc3JjL2RpdmVydGNtZC5jOjI2MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIG9wZW4gc291cmNlIGZpbGUgYCUuMjUwcyciCittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBjb3BpZWQgc291cmNlIGZpbGUgJyVzJyIKK21zZ3N0ciAibm8gZXMgcG90IG9icmlyIGVsIGZpdHhlciBmb250IMKrJS4yNTBzwrsiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyODQKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9jYWwgZGl2ZXJzaW9uIG9mICVzIgorbXNnc3RyICJkZXN2aWFjacOzIGxvY2FsIGRlICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mjg2CisjLCBjLWZvcm1hdAorbXNnaWQgImxvY2FsIGRpdmVyc2lvbiBvZiAlcyB0byAlcyIKK21zZ3N0ciAiZGVzdmlhY2nDsyBsb2NhbCBkZSAlcyBjYXAgYSAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjI5MAorIywgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnNpb24gb2YgJXMgYnkgJXMiCittc2dzdHIgImRlc3ZpYWNpw7MgZGUgJXMgcGVyICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjkzCisjLCBjLWZvcm1hdAorbXNnaWQgImRpdmVyc2lvbiBvZiAlcyB0byAlcyBieSAlcyIKK21zZ3N0ciAiZGVzdmlhY2nDsyBkZSAlcyBjYXAgYSAlcyBwZXIgJXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozMDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiYW55IGRpdmVyc2lvbiBvZiAlcyIKK21zZ3N0ciAicXVhbHNldm9sIGRlc3ZpYWNpw7MgZGUgJXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiYW55IGRpdmVyc2lvbiBvZiAlcyB0byAlcyIKK21zZ3N0ciAicXVhbHNldm9sIGRlc3ZpYWNpw7MgZGUgJXMgY2FwIGE6ICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MzU3CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBjcmVhdGUgbmV3ICVzIGZpbGUiCittc2dzdHIgIm5vIGVzIHBvdCBjcmVhciB1biBmaXR4ZXIgJXMgbm91IgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mzc1IHNyYy9zdGF0Y21kLmM6MjE1IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNDA0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCBmaWxlICclcyciCittc2dzdHIgIm5vIGVzIHBvdCBmZXIgwqtmbHVzaMK7IHNvYnJlIGVsIGZpdHhlciDCqyVzwrsiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozODIKK21zZ2lkICJlcnJvciByZW1vdmluZyBvbGQgZGl2ZXJzaW9ucy1vbGQiCittc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gc3VwcmltaXIgbCdhbnRpYyBkaXZlcnNpb25zLW9sZCIKKworIzogc3JjL2RpdmVydGNtZC5jOjM4NAorbXNnaWQgImVycm9yIGNyZWF0aW5nIG5ldyBkaXZlcnNpb25zLW9sZCIKK21zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBjcmVhciBlbCBub3UgZGl2ZXJzaW9ucy1vbGQiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozODYKK21zZ2lkICJlcnJvciBpbnN0YWxsaW5nIG5ldyBkaXZlcnNpb25zIgorbXNnc3RyICJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIGluc3RhxYBsYXIgbGVzIG5vdmVzIGRlc3ZpYWNpb25zIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDA2IHNyYy9kaXZlcnRjbWQuYzo1MDMgc3JjL2RpdmVydGNtZC5jOjYxMAorIzogc3JjL2RpdmVydGNtZC5jOjYzMCBzcmMvc3RhdGNtZC5jOjI5MAorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGEgc2luZ2xlIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIG5lY2Vzc2l0YSB1biBzb2wgcGFyw6BtZXRyZSIKKworIzogc3JjL2RpdmVydGNtZC5jOjQwOSBzcmMvZGl2ZXJ0Y21kLmM6NDMwCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGVuYW1lIFwiJXNcIiBpcyBub3QgYWJzb2x1dGUiCittc2dzdHIgImVsIG5vbSBkZSBmaXR4ZXIgwqslc8K7IG5vIMOpcyBhYnNvbHV0IgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDExIHNyYy9zdGF0Y21kLmM6MjQ5Cittc2dpZCAiZmlsZSBtYXkgbm90IGNvbnRhaW4gbmV3bGluZXMiCittc2dzdHIgImVsIGZpdHhlciBubyBwb3QgY29udGVuaXIgbMOtbmllcyBub3ZlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjQxOAorbXNnaWQgIkNhbm5vdCBkaXZlcnQgZGlyZWN0b3JpZXMiCittc2dzdHIgIk5vIGVzIHBvZGVuIGRlc3ZpYXIgZGlyZWN0b3JpcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjQzMworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgZGl2ZXJ0IGZpbGUgJyVzJyB0byBpdHNlbGYiCittc2dzdHIgIm5vIGVzIHBvdCBkZXN2aWFyIGVsIGZpdHhlciDCqyVzwrsgY2FwIGEgZWxsIG1hdGVpeCIKKworIzogc3JjL2RpdmVydGNtZC5jOjQ1MworIywgYy1mb3JtYXQKK21zZ2lkICJMZWF2aW5nICclcydcbiIKK21zZ3N0ciAiUydlc3TDoCBkZWl4YW50IMKrJXPCu1xuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDU4CisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgY2xhc2hlcyB3aXRoIGAlcyciCittc2dzdHIgIsKrJXPCuyB0w6kgdW4gY29uZmxpY3RlIGFtYiDCqyVzwrsiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAiQWRkaW5nICclcydcbiIKK21zZ3N0ciAiUydlc3TDoCBhZmVnaW50IMKrJXPCu1xuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTEwCisjLCBjLWZvcm1hdAorbXNnaWQgIk5vIGRpdmVyc2lvbiAnJXMnLCBub25lIHJlbW92ZWQuXG4iCittc2dzdHIgIk5vIGhpIGhhIGNhcCBkZXN2aWFjacOzIMKrJXPCuywgbm8gcydoYSBzdXByaW1pdC5cbiIKKworIyBEaXNjcmVww6BuY2lhPyAtLSBKb3Jkw6AKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm1pc21hdGNoIG9uIGRpdmVydC10b1xuIgorIiAgd2hlbiByZW1vdmluZyBgJXMnXG4iCisiICBmb3VuZCBgJXMnIgorbXNnc3RyICIiCisiZGlzY3JlcMOgbmNpYSBhIGxhIGRlc3ZpYWNpw7NcbiIKKyIgIGVuIHN1cHJpbWlyIMKrJXPCu1xuIgorIiAgcydoYSB0cm9iYXQgwqslc8K7IgorCisjIERpc2NyZXDDoG5jaWE/IC0tIEpvcmTDoAorIzogc3JjL2RpdmVydGNtZC5jOjUzMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisibWlzbWF0Y2ggb24gcGFja2FnZVxuIgorIiAgd2hlbiByZW1vdmluZyBgJXMnXG4iCisiICBmb3VuZCBgJXMnIgorbXNnc3RyICIiCisiZGlzY3JlcMOgbmNpYSBhbCBwYXF1ZXRcbiIKKyIgIGVuIHN1cHJpbWlyIMKrJXPCu1xuIgorIiAgcydoYSB0cm9iYXQgwqslc8K7IgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTM5CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlbW92aW5nICclcydcbiIKK21zZ3N0ciAiUydlc3TDoCBzdXByaW1pbnQgwqslc8K7XG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo2NTcKK21zZ2lkICJwYWNrYWdlIG1heSBub3QgY29udGFpbiBuZXdsaW5lcyIKK21zZ3N0ciAiZWwgcGFxdWV0IG5vIHBvdCBjb250ZW5pciBsw61uaWVzIG5vdmVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjY2Cittc2dpZCAiZGl2ZXJ0LXRvIG1heSBub3QgY29udGFpbiBuZXdsaW5lcyIKK21zZ3N0ciAibGEgZGVzdmlhY2nDsyBubyBwb3QgY29udGVuaXIgbMOtbmllcyBub3ZlcyIKKworIzogc3JjL2RpdmVydGRiLmM6NjQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiBkaXZlcnNpb25zIGZpbGUiCittc2dzdHIgIm5vIHMnaGEgcG9ndXQgb2JyaXIgZWwgZml0eGVyIGRlIGRlc3ZpYWNpb25zIgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzo3MQorbXNnaWQgImZhaWxlZCB0byBmc3RhdCBwcmV2aW91cyBkaXZlcnNpb25zIGZpbGUiCittc2dzdHIgIm5vIHMnaGEgcG9ndXQgZmVyIMKrZnN0YXTCuyBzb2JyZSBsJ2FudGVyaW9yIGZpdHhlciBkZSBkZXN2aWFjaW9ucyIKKworIzogc3JjL2RpdmVydGRiLmM6NzMKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgZGl2ZXJzaW9ucyBmaWxlIgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGZlciDCq2ZzdGF0wrsgc29icmUgZWwgZml0eGVyIGRlIGRlc3ZpYWNpb25zIgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzoxMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmxpY3RpbmcgZGl2ZXJzaW9ucyBpbnZvbHZpbmcgYCUuMjUwcycgb3IgYCUuMjUwcyciCittc2dzdHIgImhpIGhhIGRlc3ZpYWNpb25zIGVuIGNvbmZsaWN0ZSBlbiDCqyUuMjUwc8K7IG8gwqslLjI1MHPCuyIKKworIzogc3JjL2VucXVpcnkuYzo3MworbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBpbiBhIG1lc3MgZHVlIHRvIHNlcmlvdXMgcHJvYmxlbXMgZHVyaW5nXG4iCisiaW5zdGFsbGF0aW9uLiAgVGhleSBtdXN0IGJlIHJlaW5zdGFsbGVkIGZvciB0aGVtIChhbmQgYW55IHBhY2thZ2VzXG4iCisidGhhdCBkZXBlbmQgb24gdGhlbSkgdG8gZnVuY3Rpb24gcHJvcGVybHk6XG4iCittc2dzdHIgIiIKKyJFbHMgcGFxdWV0cyBzZWfDvGVudHMgZXN0YW4gZGVzZ2F2ZWxsYXRzIGEgY2F1c2EgZGUgc2VyaW9zb3MgcHJvYmxlbWVzXG4iCisiZHVyYW50IGxhIGluc3RhxYBsYWNpw7MuIEhhdXJhbiBkZSBzZXIgcmVpbnN0YcWAbGF0cyBwZXIgYSBxdWUgYXF1ZXN0c1xuIgorIihpIGVscyBwYXF1ZXRzIHF1ZSBlbiBkZXBlbmd1ZW4pIGZ1bmNpb25lbiBjb3JyZWN0YW1lbnQ6XG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6ODAKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBoYXZlIGJlZW4gdW5wYWNrZWQgYnV0IG5vdCB5ZXQgY29uZmlndXJlZC5cbiIKKyJUaGV5IG11c3QgYmUgY29uZmlndXJlZCB1c2luZyBkcGtnIC0tY29uZmlndXJlIG9yIHRoZSBjb25maWd1cmVcbiIKKyJtZW51IG9wdGlvbiBpbiBkc2VsZWN0IGZvciB0aGVtIHRvIHdvcms6XG4iCittc2dzdHIgIiIKKyJFbHMgcGFxdWV0cyBzZWfDvGVudHMgaGFuIGVzdGF0IGRlc2VtcGFxdWV0YXRzIHBlcsOyIGVuY2FyYSBubyBlc3RhblxuIgorImNvbmZpZ3VyYXRzLiAgUydoYW4gZGUgY29uZmlndXJhciBlbXByYW50IGRwa2cgLS1jb25maWd1cmUgbyBsJ29wY2nDs1xuIgorIsKrY29uZmlndXJlwrsgZW4gZHNlbGVjdCBwZXJxdcOoIGZ1bmNpb25lbjpcbiIKKworIzogc3JjL2VucXVpcnkuYzo4NworbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBvbmx5IGhhbGYgY29uZmlndXJlZCwgcHJvYmFibHkgZHVlIHRvIHByb2JsZW1zXG4iCisiY29uZmlndXJpbmcgdGhlbSB0aGUgZmlyc3QgdGltZS4gIFRoZSBjb25maWd1cmF0aW9uIHNob3VsZCBiZSByZXRyaWVkIHVzaW5nXG4iCisiZHBrZyAtLWNvbmZpZ3VyZSA8cGFja2FnZT4gb3IgdGhlIGNvbmZpZ3VyZSBtZW51IG9wdGlvbiBpbiBkc2VsZWN0OlxuIgorbXNnc3RyICIiCisiRWxzIHBhcXVldHMgc2Vnw7xlbnRzIG5vbcOpcyBlc3RhbiBjb25maWd1cmF0cyBhIG1pdGdlcywgcHJvYmFibGVtZW50XG4iCisiYSBjYXVzYSBkZSBwcm9ibGVtZXMgZW4gbGEgY29uZmlndXJhY2nDsyBpbmljaWFsLiAgUydoYSBkZSByZWludGVudGFyXG4iCisibGEgY29uZmlndXJhY2nDsyBhbWIgZHBrZyAtLWNvbmZpZ3VyZSA8cGFxdWV0PiBvIGwnb3BjacOzIGNvbmZpZ3VyYXJcbiIKKyJlbiBlbCBtZW7DuiBkZSBkc2VsZWN0OlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjk0Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgYXJlIG9ubHkgaGFsZiBpbnN0YWxsZWQsIGR1ZSB0byBwcm9ibGVtcyBkdXJpbmdcbiIKKyJpbnN0YWxsYXRpb24uICBUaGUgaW5zdGFsbGF0aW9uIGNhbiBwcm9iYWJseSBiZSBjb21wbGV0ZWQgYnkgcmV0cnlpbmcgaXQ7XG4iCisidGhlIHBhY2thZ2VzIGNhbiBiZSByZW1vdmVkIHVzaW5nIGRzZWxlY3Qgb3IgZHBrZyAtLXJlbW92ZTpcbiIKK21zZ3N0ciAiIgorIkVscyBwYXF1ZXRzIHNlZ8O8ZW50cyBub23DqXMgZXN0YW4gaW5zdGHFgGxhdHMgYSBtaXRnZXMsIGEgY2F1c2EgZGUgcHJvYmxlbWVzXG4iCisiZHVyYW50IGxhIGluc3RhxYBsYWNpw7MuICBMYSBpbnN0YcWAbGFjacOzIHByb2JhYmxlbWVudCBlcyBwdWdhIGNvbXBsZXRhclxuIgorInJlaW50ZW50YW50OyBlbHMgcGFxdWV0cyBlcyBwb2RlbiBkZXNpbnN0YcWAbGFyIGFtYiBkc2VsZWN0IG9cbiIKKyJkcGtnIC0tcmVtb3ZlOlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjEwMQorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBhd2FpdGluZyBwcm9jZXNzaW5nIG9mIHRyaWdnZXJzIHRoYXQgdGhleVxuIgorImhhdmUgYWN0aXZhdGVkIGluIG90aGVyIHBhY2thZ2VzLiAgVGhpcyBwcm9jZXNzaW5nIGNhbiBiZSByZXF1ZXN0ZWQgdXNpbmdcbiIKKyJkc2VsZWN0IG9yIGRwa2cgLS1jb25maWd1cmUgLS1wZW5kaW5nIChvciBkcGtnIC0tdHJpZ2dlcnMtb25seSk6XG4iCittc2dzdHIgIiIKKyJFbHMgcGFxdWV0cyBzZWfDvGVudHMgZXN0YW4gZXNwZXJhbnQgZWwgcHJvY2Vzc2F0IGRlbHMgYWN0aXZhZG9ycyBxdWUgaGFuXG4iCisiZXN0YXQgYWN0aXZhdHMgcGVyIGFsdHJlcyBwYXF1ZXRzLiBBcXVlc3QgcHJvY2Vzc2F0IGVzIHBvdCBkZW1hbmFyXG4iCisiZW1wcmFudCBkc2VsZWN0IG8gZHBrZyAtLWNvbmZpZ3VyZSAtLXBlbmRpbmcgKG8gZHBrZyAtLXRyaWdnZXJzLW9ubHkpOlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjEwOAorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGhhdmUgYmVlbiB0cmlnZ2VyZWQsIGJ1dCB0aGUgdHJpZ2dlciBwcm9jZXNzaW5nXG4iCisiaGFzIG5vdCB5ZXQgYmVlbiBkb25lLiAgVHJpZ2dlciBwcm9jZXNzaW5nIGNhbiBiZSByZXF1ZXN0ZWQgdXNpbmdcbiIKKyJkc2VsZWN0IG9yIGRwa2cgLS1jb25maWd1cmUgLS1wZW5kaW5nIChvciBkcGtnIC0tdHJpZ2dlcnMtb25seSk6XG4iCittc2dzdHIgIiIKKyJTJ2hhbiBhY3RpdmF0IGVscyBzZWfDvGVudHMgcGFxdWV0cywgcGVyw7IgZW5jYXJhIG5vIHMnaGEgZHV0IGEgdGVybWVcbiIKKyJlbCBwcm9jZXNzYXQgZGVscyBhY3RpdmFkb3JzLiBBcXVlc3QgcHJvY2Vzc2F0IGVzIHBvdCBkZW1hbmFyIGVtcHJhbnRcbiIKKyJkc2VsZWN0IG8gZHBrZyAtLWNvbmZpZ3VyZSAtLXBlbmRpbmcgKG8gZHBrZyAtLXRyaWdnZXJzLW9ubHkpOlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjEzNyBzcmMvZW5xdWlyeS5jOjIxMSBzcmMvZW5xdWlyeS5jOjI5MiBzcmMvZW5xdWlyeS5jOjM3MworIzogc3JjL2VucXVpcnkuYzo0NjAgc3JjL3NlbGVjdC5jOjk4IHNyYy9zZWxlY3QuYzoxNjQgc3JjL3RyaWdjbWQuYzoxOTkKKyM6IHNyYy91cGRhdGUuYzo0OCBzcmMvdXBkYXRlLmM6MTEzIGRwa2ctc3BsaXQvcXVldWUuYzoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyB0YWtlcyBubyBhcmd1bWVudHMiCittc2dzdHIgIi0tJXMgbm8gYWNjZXB0YSBjYXAgYXJndW1lbnQiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTUyCittc2dpZCAiIgorIkFub3RoZXIgcHJvY2VzcyBoYXMgbG9ja2VkIHRoZSBkYXRhYmFzZSBmb3Igd3JpdGluZywgYW5kIG1pZ2h0IGN1cnJlbnRseSBiZVxuIgorIm1vZGlmeWluZyBpdCwgc29tZSBvZiB0aGUgZm9sbG93aW5nIHByb2JsZW1zIG1pZ2h0IGp1c3QgYmUgZHVlIHRvIHRoYXQuXG4iCittc2dzdHIgIiIKKyJVbiBhbHRyZSBwcm9jw6lzIGhhIGJsb2NhdCBsJ2VzY3JpcHR1cmEgZGUgbGEgYmFzZSBkZSBkYWRlcywgaSBwb3NzaWJsZW1lbnRcbiIKKyJlc3RpZ2EgbW9kaWZpY2FudC1sYSwgYWxndW5zIGRlbHMgcHJvYmxlbWVzIHNlZ8O8ZW50cyBwb2RyaWVuIGVzdGFyICIKKyJyZWxhY2lvbmF0c1xuIgorImFtYiBhaXjDsi5cbiIKKworIzogc3JjL2VucXVpcnkuYzoxOTEKKyMsIGZ1enp5CisjfCBtc2dpZCAiPHVua25vd24+IgorbXNnY3R4dCAic2VjdGlvbiIKK21zZ2lkICI8dW5rbm93bj4iCittc2dzdHIgIjxkZXNjb25lZ3V0PiIKKworIzogc3JjL2VucXVpcnkuYzoyNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiICVkIGluICVzOiAiCittc2dzdHIgIiAlZCBlbiAlczogIgorCisjOiBzcmMvZW5xdWlyeS5jOjI2NgorIywgYy1mb3JtYXQKK21zZ2lkICIgJWQgcGFja2FnZSwgZnJvbSB0aGUgZm9sbG93aW5nIHNlY3Rpb246IgorbXNnaWRfcGx1cmFsICIgJWQgcGFja2FnZXMsIGZyb20gdGhlIGZvbGxvd2luZyBzZWN0aW9uczoiCittc2dzdHJbMF0gIiAlZCBwYXF1ZXQsIGRlIGxhIHNlY2Npb24gc2Vnw7xlbnQ6IgorbXNnc3RyWzFdICIgJWQgcGFxdWV0cywgZGUgbGVzIHNlY2Npb25zIHNlZ8O8ZW50czoiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzA1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJWZXJzaW9uIG9mIGRwa2cgd2l0aCB3b3JraW5nICVzIHN1cHBvcnQgbm90IHlldCBjb25maWd1cmVkLlxuIgorIiBQbGVhc2UgdXNlICdkcGtnIC0tY29uZmlndXJlIGRwa2cnLCBhbmQgdGhlbiB0cnkgYWdhaW4uXG4iCittc2dzdHIgIiIKKyJObyBzJ2hhIGNvbmZpZ3VyYXQgdW5hIHZlcnNpw7MgZGUgZHBrZyBxdWUgYWRtZXRhICVzLlxuIgorIiBFbXByZXUgwqtkcGtnIC0tY29uZmlndXJlIGRwa2fCuyBpIGludGVudGV1LWhvIG5vdmFtZW50LlxuIgorCisjIEZJWE1FOiB3cm9uZyBtc2dpZAorIzogc3JjL2VucXVpcnkuYzozMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZyBub3QgcmVjb3JkZWQgYXMgaW5zdGFsbGVkLCBjYW5ub3QgY2hlY2sgZm9yICVzIHN1cHBvcnQhXG4iCittc2dzdHIgIiIKKyJkcGtnIG5vIGVzdMOgIHJlZ2lzdHJhdCBjb20gYSBpbnN0YcWAbGF0LCBubyBlcyBwb3QgY29tcHJvdmFyIGVsIHN1cG9ydCBwZXIgYSAiCisiJXMhXG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzIxCittc2dpZCAiUHJlLURlcGVuZHMgZmllbGQiCittc2dzdHIgImNhbXAgUHJlLURlcGVuZHMiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzI5Cittc2dpZCAiZXBvY2giCittc2dzdHIgIsOocG9xdWVzIgorCisjOiBzcmMvZW5xdWlyeS5jOjMzNworbXNnaWQgImxvbmcgZmlsZW5hbWVzIgorbXNnc3RyICJub21zIGRlIGZpdHhlciBsbGFyZ3MiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzQ2Cittc2dpZCAibXVsdGlwbGUgQ29uZmxpY3RzIGFuZCBSZXBsYWNlcyIKK21zZ3N0ciAibcO6bHRpcGxlcyBDb25mbGljdHMgaSBSZXBsYWNlcyIKKworIzogc3JjL2VucXVpcnkuYzo0MzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IGNhbm5vdCBzZWUgaG93IHRvIHNhdGlzZnkgcHJlLWRlcGVuZGVuY3k6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKyJkcGtnOiBubyB2ZXUgY29tIHNhdGlzZmVyIGxhIHByZWRlcGVuZMOobmNpYTpcbiIKKyIgJXNcbiIKKworIzogc3JjL2VucXVpcnkuYzo0MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHNhdGlzZnkgcHJlLWRlcGVuZGVuY2llcyBmb3IgJS4yNTBzICh3YW50ZWQgZHVlIHRvICUuMjUwcykiCittc2dzdHIgIiIKKyJubyBlcyBwb3Qgc2F0aXNmZXIgbGEgcHJlZGVwZW5kw6huY2lhIHBlciBhICUuMjUwcyAobmVjZXNzw6ByaWEgcGVyIGEgJS4yNTBzKSIKKworIzogc3JjL2VucXVpcnkuYzo0NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAib2Jzb2xldGUgb3B0aW9uICctLSVzJywgcGxlYXNlIHVzZSAnLS0lcycgaW5zdGVhZC4iCittc2dzdHIgImwnb3BjacOzIMKrLS0lc8K7IMOpcyBvYnNvbGV0YSwgZW1wcmV1ICDCqy0tJXPCuyBlbiBlbCBzZXUgbGxvYy4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6NTE5Cittc2dpZCAiIgorIi0tY29tcGFyZS12ZXJzaW9ucyB0YWtlcyB0aHJlZSBhcmd1bWVudHM6IDx2ZXJzaW9uPiA8cmVsYXRpb24+IDx2ZXJzaW9uPiIKK21zZ3N0ciAiLS1jb21wYXJlLXZlcnNpb25zIHByZW4gdHJlcyBhcmd1bWVudHM6IDx2ZXJzacOzPiA8cmVsYWNpw7M+IDx2ZXJzacOzPiIKKworIzogc3JjL2VucXVpcnkuYzo1MjQKK21zZ2lkICItLWNvbXBhcmUtdmVyc2lvbnMgYmFkIHJlbGF0aW9uIgorbXNnc3RyICJyZWxhY2nDsyBkb2xlbnRhIGRlIC0tY29tcGFyZS12ZXJzaW9ucyIKKworIzogc3JjL2VucXVpcnkuYzo1Mjkgc3JjL2VucXVpcnkuYzo1MzEgc3JjL2VucXVpcnkuYzo1NDAgc3JjL2VucXVpcnkuYzo1NDIKKyMsIGMtZm9ybWF0Cittc2dpZCAidmVyc2lvbiAnJXMnIGhhcyBiYWQgc3ludGF4OiAlcyIKK21zZ3N0ciAibGEgdmVyc2nDsyDCqyVzwrsgdMOpIHVuYSBzaW50YXhpIGluY29ycmVjdGE6ICVzIgorCisjOiBzcmMvZXJyb3JzLmM6NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBlcnJvciBwcm9jZXNzaW5nICVzICgtLSVzKTpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorIiVzOiBzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIHByb2Nlc3NhciAlcyAoLS0lcyk6XG4iCisiICVzXG4iCisKKyM6IHNyYy9lcnJvcnMuYzo2OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgImRwa2c6IGZhaWxlZCB0byBhbGxvY2F0ZSBtZW1vcnkgZm9yIG5ldyBlbnRyeSBpbiBsaXN0IG9mIGZhaWxlZCBwYWNrYWdlcy4iCittc2dpZCAiIgorIiVzOiBmYWlsZWQgdG8gYWxsb2NhdGUgbWVtb3J5IGZvciBuZXcgZW50cnkgaW4gbGlzdCBvZiBmYWlsZWQgcGFja2FnZXM6ICVzIgorbXNnc3RyICIiCisiZHBrZzogcydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBhc3NpZ25hciBtZW3DsnJpYSBwZXIgYSBsJ2VudHJhZGEgbm92YSBlbiBsYSAiCisibGxpc3RhIGRlIHBhcXVldHMgcXVlIGhhbiBmYWxsYXQiCisKKyM6IHNyYy9lcnJvcnMuYzo3OQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZHBrZzogdG9vIG1hbnkgZXJyb3JzLCBzdG9wcGluZ1xuIgorbXNnaWQgIiVzOiB0b28gbWFueSBlcnJvcnMsIHN0b3BwaW5nXG4iCittc2dzdHIgImRwa2c6IG1hc3NhIGVycm9ycywgcydlc3TDoCBhdHVyYW50XG4iCisKKyM6IHNyYy9lcnJvcnMuYzo4NworbXNnaWQgIkVycm9ycyB3ZXJlIGVuY291bnRlcmVkIHdoaWxlIHByb2Nlc3Npbmc6XG4iCittc2dzdHIgIlMnaGFuIHRyb2JhdCBlcnJvcnMgZW4gcHJvY2Vzc2FyOlxuIgorCisjOiBzcmMvZXJyb3JzLmM6OTQKK21zZ2lkICJQcm9jZXNzaW5nIHdhcyBoYWx0ZWQgYmVjYXVzZSB0aGVyZSB3ZXJlIHRvbyBtYW55IGVycm9ycy5cbiIKK21zZ3N0ciAiUHJvY8OpcyBhdHVyYXQgcGVyIGhhdmVyLWhpIG1hc3NhIGVycm9ycy5cbiIKKworIzogc3JjL2Vycm9ycy5jOjEwNQorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlICVzIHdhcyBvbiBob2xkLCBwcm9jZXNzaW5nIGl0IGFueXdheSBhcyB5b3UgcmVxdWVzdGVkXG4iCittc2dzdHIgIiIKKyJFbCBwYXF1ZXQgJXMgZXN0YXZhIGVuIG1hbnRpbmRyZSwgZXMgcHJvY2Vzc2Fyw6AgaWd1YWxtZW50IHRhbCBjb20gaGV1ICIKKyJkZW1hbmF0XG4iCisKKyM6IHNyYy9lcnJvcnMuYzoxMDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlBhY2thZ2UgJXMgaXMgb24gaG9sZCwgbm90IHRvdWNoaW5nIGl0LiAgVXNlIC0tZm9yY2UtaG9sZCB0byBvdmVycmlkZS5cbiIKK21zZ3N0ciAiIgorIkVsIHBhcXVldCAlcyBlc3TDoCBlbiBtYW50aW5kcmUsIG5vIGVzIHRvY2EuICBVc2V1IC0tZm9yY2UtaG9sZCBwZXIgYSBmb3LDp2FyLSIKKyJob1xuIgorCisjOiBzcmMvZXJyb3JzLmM6MTE5Cittc2dpZCAib3ZlcnJpZGluZyBwcm9ibGVtIGJlY2F1c2UgLS1mb3JjZSBlbmFibGVkOiIKK21zZ3N0ciAibm8gZXMgdGluZHLDoCBlbiBjb21wdGUgZWwgcHJvYmxlbWEgcGVyIGVzdGFyIGFjdGl2YSB1bmEgb3BjacOzIC0tZm9yY2U6IgorCisjOiBzcmMvZmlsZXNkYi5jOjMwNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcyciCittc2dzdHIgIm5vIGVzIHBvdCBvYnJpciBlbCBmaXR4ZXIgZGUgbGEgbGxpc3RhIGRlIGZpdHhlcnMgZGVsIHBhcXVldCDCqyUuMjUwc8K7IgorCisjOiBzcmMvZmlsZXNkYi5jOjMxMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlIGAlLjI1MHMnIG1pc3NpbmcsIGFzc3VtaW5nIHBhY2thZ2UgaGFzIG5vIGZpbGVzICIKKyJjdXJyZW50bHkgaW5zdGFsbGVkLiIKK21zZ3N0ciAiIgorIm1hbmNhIGVsIGZpdHhlciBkZSBsYSBsbGlzdGEgZGUgZml0eGVycyBkZWwgcGFxdWV0IMKrJS4yNTBzwrssIHMnYXNzdW1pcsOgIHF1ZSAiCisiZWwgcGFxdWV0IG5vIHTDqSBjYXAgZml0eGVyIGFjdHVhbG1lbnQgaW5zdGHFgGxhdC4iCisKKyM6IHNyYy9maWxlc2RiLmM6MzIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAnJS4yNTBzJyIKK21zZ3N0ciAiIgorIm5vIGVzIHBvdCBmZXIgwqtzdGF0wrsgc29icmUgZWwgZml0eGVyIGRlIGxhIGxsaXN0YSBkZSBmaXR4ZXJzIGRlbCBwYXF1ZXQgIgorIsKrJS4yNTBzwrsiCisKKyM6IHNyYy9maWxlc2RiLmM6MzMwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlcyBsaXN0IGZvciBwYWNrYWdlIGAlLjI1MHMnIgorbXNnaWQgInJlYWRpbmcgZmlsZXMgbGlzdCBmb3IgcGFja2FnZSAnJS4yNTBzJyIKK21zZ3N0ciAiZWwgZml0eGVyIGRlIGxhIGxsaXN0YSBkZSBmaXR4ZXJzIGRlbCBwYXF1ZXQgwqslLjI1MHPCuyIKKworIzogc3JjL2ZpbGVzZGIuYzozMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICclLjI1MHMnIGlzIG1pc3NpbmcgZmluYWwgbmV3bGluZSIKK21zZ3N0ciAiIgorImVsIGZpdHhlciBkZSBsYSBsbGlzdGEgZGUgZml0eGVycyBkZWwgcGFxdWV0IMKrJS4yNTBzwrsgbWFuY2EgdW5hIGzDrW5lYSBub3ZhICIKKyJhbCBmaW5hbCIKKworIzogc3JjL2ZpbGVzZGIuYzozNDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlIGAlLjI1MHMnIGNvbnRhaW5zIGVtcHR5IGZpbGVuYW1lIgorbXNnc3RyICIiCisiZWwgZml0eGVyIGRlIGxhIGxsaXN0YSBkZSBmaXR4ZXJzIGRlbCBwYXF1ZXQgwqslLjI1MHPCuyBjb250w6kgdW4gbm9tIGRlIGZpdHhlciAiCisiYnVpdCIKKworIzogc3JjL2ZpbGVzZGIuYzozNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcyciCittc2dzdHIgIiIKKyJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIHRhbmNhciBlbCBmaXR4ZXIgZGUgbGEgbGxpc3RhIGRlIGZpdHhlcnMgZGVsIHBhcXVldCAiCisiwqslLjI1MHPCuyIKKworIzogc3JjL2ZpbGVzZGIuYzo0NjIKK21zZ2lkICIoUmVhZGluZyBkYXRhYmFzZSAuLi4gIgorbXNnc3RyICIoUydlc3TDoCBsbGVnaW50IGxhIGJhc2UgZGUgZGFkZXPigKYgIgorCisjOiBzcmMvZmlsZXNkYi5jOjQ4MworIywgYy1mb3JtYXQKK21zZ2lkICIlZCBmaWxlIG9yIGRpcmVjdG9yeSBjdXJyZW50bHkgaW5zdGFsbGVkLilcbiIKK21zZ2lkX3BsdXJhbCAiJWQgZmlsZXMgYW5kIGRpcmVjdG9yaWVzIGN1cnJlbnRseSBpbnN0YWxsZWQuKVxuIgorbXNnc3RyWzBdICJoaSBoYSAlZCBmaXR4ZXIgbyBkaXJlY3RvcmkgaW5zdGHFgGxhdCBhY3R1YWxtZW50LilcbiIKK21zZ3N0clsxXSAiaGkgaGEgJWQgZml0eGVycyBpIGRpcmVjdG9yaXMgaW5zdGHFgGxhdHMgYWN0dWFsbWVudC4pXG4iCisKKyM6IHNyYy9maWxlc2RiLmM6NTE2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIiIKKyJubyBlcyBwb3QgY3JlYXIgdW4gZml0eGVyIGRlIG5saXN0IGRlIGZpdHhlcnMgYWN0dWHFgGxpdHphdHMgZGVsIHBhcXVldCAlcyIKKworIzogc3JjL2ZpbGVzZGIuYzo1MjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIHRvIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICIiCisibm8gZXMgcG90IGVzY3JpdXJlIGFsIGZpdHhlciBkZSBsYSBsbGlzdGEgZGUgZml0eGVycyBhY3R1YWxpdHphdHMgZGVsIHBhcXVldCAiCisiJXMiCisKKyM6IHNyYy9maWxlc2RiLmM6NTI4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBmbHVzaCB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAiIgorIm5vIGVzIHBvdCBmZXIgwqtmbHVzaMK7IHNvYnJlIGVsIGZpdHhlciBkZSBubGlzdCBkZSBmaXR4ZXJzIGFjdHVhbGl0emF0cyBkZWwgIgorInBhcXVldCAlcyIKKworIzogc3JjL2ZpbGVzZGIuYzo1MzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHN5bmMgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIiIKKyJubyBlcyBwb3QgZmVyIMKrc3luY8K7IHNvYnJlIGVsIGZpdHhlciBkZSBubGlzdCBkZSBmaXR4ZXJzIGFjdHVhbGl0emF0cyBkZWwgIgorInBhcXVldCAlcyIKKworIzogc3JjL2ZpbGVzZGIuYzo1MzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNsb3NlIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICIiCisibm8gZXMgcG90IHRhbmNhciBlbCBmaXR4ZXIgZGUgbmxpc3QgZGUgZml0eGVycyBhY3R1YWxpdHphdHMgZGVsIHBhcXVldCAlcyIKKworIzogc3JjL2ZpbGVzZGIuYzo1MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGluc3RhbGwgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIiIKKyJubyBlcyBwb3QgaW5zdGHFgGxhciBlbCBmaXR4ZXIgZGUgbmxpc3QgZGUgZml0eGVycyBhY3R1YWxpdHphdHMgZGVsIHBhcXVldCAlcyIKKworIzogc3JjL2hlbHAuYzo0OAorbXNnaWQgIm5vdCBpbnN0YWxsZWQiCittc2dzdHIgIm5vIGluc3RhxYBsYXQiCisKKyM6IHNyYy9oZWxwLmM6NDkKK21zZ2lkICJub3QgaW5zdGFsbGVkIGJ1dCBjb25maWdzIHJlbWFpbiIKK21zZ3N0ciAibm8gaW5zdGHFgGxhdCBwZXLDsiByZXN0YSBsYSBzZXZhIGNvbmZpZ3VyYWNpw7MiCisKKyM6IHNyYy9oZWxwLmM6NTAKK21zZ2lkICJicm9rZW4gZHVlIHRvIGZhaWxlZCByZW1vdmFsIG9yIGluc3RhbGxhdGlvbiIKK21zZ3N0ciAidHJlbmNhdCBhIGNhdXNhIGQndW5hIGVsaW1pbmFjacOzIG8gaW5zdGHFgGxhY2nDsyBmYWxsaWRhIgorCisjOiBzcmMvaGVscC5jOjUxCittc2dpZCAidW5wYWNrZWQgYnV0IG5vdCBjb25maWd1cmVkIgorbXNnc3RyICJkZXNlbXBhcXVldGF0IHBlcsOyIHNlbnNlIGNvbmZpZ3VyYXIiCisKKyM6IHNyYy9oZWxwLmM6NTIKK21zZ2lkICJicm9rZW4gZHVlIHRvIHBvc3RpbnN0IGZhaWx1cmUiCittc2dzdHIgInRyZW5jYXQgYSBjYXVzYSBkJ3VuIGVycm9yIGVuIHBvc3RpbnN0IgorCisjOiBzcmMvaGVscC5jOjUzCittc2dpZCAiYXdhaXRpbmcgdHJpZ2dlciBwcm9jZXNzaW5nIGJ5IGFub3RoZXIgcGFja2FnZSIKK21zZ3N0ciAicydlc3TDoCBlc3BlcmFudCBlbCBwcm9jZXNzYXQgZGVscyBhY3RpdmFkb3JzIHBlciB1biBhbHRyZSBwYXF1ZXQiCisKKyM6IHNyYy9oZWxwLmM6NTQKK21zZ2lkICJ0cmlnZ2VyZWQiCittc2dzdHIgImFjdGl2YXQiCisKKyM6IHNyYy9oZWxwLmM6NTUKK21zZ2lkICJpbnN0YWxsZWQiCittc2dzdHIgImluc3RhxYBsYXQiCisKKyM6IHNyYy9oZWxwLmM6MTA3CisjLCBmdXp6eQorI3wgbXNnaWQgImVycm9yOiBQQVRIIGlzIG5vdCBzZXQuIgorbXNnaWQgIlBBVEggaXMgbm90IHNldC4iCittc2dzdHIgImVycm9yOiBQQVRIIG5vIGVzdMOgIGVzdGFibGVydC4iCisKKyM6IHNyYy9oZWxwLmM6MTI5CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuIgorbXNnc3RyICJubyBzJ2hhIHRyb2JhdCDCqyVzwrsgZW4gZWwgUEFUSCBvIG5vIMOpcyBleGVjdXRhYmxlLiIKKworIzogc3JjL2hlbHAuYzoxMzgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiclcycgbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuIgorbXNnaWQgIiIKKyIlZCBleHBlY3RlZCBwcm9ncmFtIG5vdCBmb3VuZCBpbiBQQVRIIG9yIG5vdCBleGVjdXRhYmxlLlxuIgorIiVzIgorbXNnaWRfcGx1cmFsICIiCisiJWQgZXhwZWN0ZWQgcHJvZ3JhbXMgbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuXG4iCisiJXMiCittc2dzdHJbMF0gIm5vIHMnaGEgdHJvYmF0IMKrJXPCuyBlbiBlbCBQQVRIIG8gbm8gw6lzIGV4ZWN1dGFibGUuIgorbXNnc3RyWzFdICJubyBzJ2hhIHRyb2JhdCDCqyVzwrsgZW4gZWwgUEFUSCBvIG5vIMOpcyBleGVjdXRhYmxlLiIKKworIzogc3JjL2hlbHAuYzoxNDEKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIiVkIGV4cGVjdGVkIHByb2dyYW0gbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuXG4iCisjfCAiTkI6IHJvb3QncyBQQVRIIHNob3VsZCB1c3VhbGx5IGNvbnRhaW4gL3Vzci9sb2NhbC9zYmluLCAvdXNyL3NiaW4gYW5kIC8iCisjfCAic2Jpbi4iCisjfCBtc2dpZF9wbHVyYWwgIiIKKyN8ICIlZCBleHBlY3RlZCBwcm9ncmFtcyBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS5cbiIKKyN8ICJOQjogcm9vdCdzIFBBVEggc2hvdWxkIHVzdWFsbHkgY29udGFpbiAvdXNyL2xvY2FsL3NiaW4sIC91c3Ivc2JpbiBhbmQgLyIKKyN8ICJzYmluLiIKK21zZ2lkICIiCisiTm90ZTogcm9vdCdzIFBBVEggc2hvdWxkIHVzdWFsbHkgY29udGFpbiAvdXNyL2xvY2FsL3NiaW4sIC91c3Ivc2JpbiBhbmQgLyIKKyJzYmluLiIKK21zZ3N0ciAiIgorIk5vIHMnaGEgdHJvYmF0ICVkIHByb2dyYW1hIGVzcGVyYXRzIGFsIFBBVEgsIG8gbm8gw6lzIGV4ZWN1dGFibGUuXG4iCisiTkI6IEVsIFBBVEggZGVsIHJvb3Qgbm9ybWFsbWVudCBoYSBkZSBjb250aW5kcmUgL3Vzci9sb2NhbC9zYmluLCAvdXNyL3NiaW4gIgorImkgL3NiaW4uIgorCisjOiBzcmMvaGVscC5jOjE4OAorbXNnaWQgImFkbWluZGlyIG11c3QgYmUgaW5zaWRlIGluc3RkaXIgZm9yIGRwa2cgdG8gd29yayBwcm9wZXJseSIKK21zZ3N0ciAiIgorCisjOiBzcmMvaGVscC5jOjE5MCBzcmMvbWFpbi5jOjc0NworIywgZnV6enkKKyN8IG1zZ2lkICJ1bmFibGUgdG8gc2V0ZW52IGZvciBtYWludGFpbmVyIHNjcmlwdCIKK21zZ2lkICJ1bmFibGUgdG8gc2V0ZW52IGZvciBzdWJwcm9jZXNzZXMiCittc2dzdHIgIm5vIGVzIHBvdCBmZXIgwqtzZXRlbnbCuyBwZXIgYWwgc2NyaXB0IGRlbCBtYW50ZW5pZG9yIgorCisjOiBzcmMvaGVscC5jOjE5MgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2hyb290IHRvIGAlLjI1MHMnIgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGZlciDCq2Nocm9vdMK7IGEgwqslLjI1MHPCuyIKKworIzogc3JjL2hlbHAuYzoxOTQgZHBrZy1kZWIvYnVpbGQuYzo0NTUgZHBrZy1kZWIvYnVpbGQuYzo0NTcKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTM2IGRwa2ctZGViL2J1aWxkLmM6NTU4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byBgJS4yNTVzJyIKK21zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBjYW52aWFyIGFsIGRpcmVjdG9yaSDCqyUuMjU1c8K7IgorCisjOiBzcmMvaGVscC5jOjI1NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IGV4ZWN1dGUgcGVybWlzc2lvbnMgb24gYCUuMjUwcyciCittc2dzdHIgIm5vIGVzIHBvZGVuIGVzdGFibGlyIGVscyBwZXJtaXNvcyBkJ2V4ZWN1Y2nDsyBlbiDCqyUuMjUwc8K7IgorCisjOiBzcmMvaGVscC5jOjI3NgorbXNnaWQgInVuYWJsZSB0byBzZXRlbnYgZm9yIG1haW50YWluZXIgc2NyaXB0IgorbXNnc3RyICJubyBlcyBwb3QgZmVyIMKrc2V0ZW52wrsgcGVyIGFsIHNjcmlwdCBkZWwgbWFudGVuaWRvciIKKworIzogc3JjL2hlbHAuYzozMDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW5zdGFsbGVkICVzIHNjcmlwdCIKK21zZ3N0ciAicydoYSBpbnN0YcWAbGF0IGVsIHNjcmlwdCAlcyIKKworIzogc3JjL2hlbHAuYzozMTMgc3JjL2hlbHAuYzozODIgc3JjL2hlbHAuYzo0NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgJXMgYCUuMjUwcyciCittc2dzdHIgIm5vIGVzIHBvdCBmZXIgwqtzdGF0wrsgc29icmUgJXMgwqslLjI1MHPCuyIKKworIzogc3JjL2hlbHAuYzozNjggc3JjL2hlbHAuYzo0MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAibmV3ICVzIHNjcmlwdCIKK21zZ3N0ciAic2Vxw7zDqG5jaWEgJXMgbm92YSIKKworIzogc3JjL2hlbHAuYzo0MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAib2xkICVzIHNjcmlwdCIKK21zZ3N0ciAic2Vxw7zDqG5jaWEgZGUgwqslc8K7IGFudGlnYSIKKworIzogc3JjL2hlbHAuYzo0MTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgJXMgJyUuMjUwcyc6ICVzIgorbXNnc3RyICJubyBlcyBwb3QgZmVyIMKrc3RhdMK7IHNvYnJlICVzIMKrJS4yNTBzwrs6ICVzIgorCisjOiBzcmMvaGVscC5jOjQyNQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnIC0gdHJ5aW5nIHNjcmlwdCBmcm9tIHRoZSBuZXcgcGFja2FnZSBpbnN0ZWFkIC4uLlxuIgorbXNnc3RyICJkcGtnIC0gcydlc3TDoCBwcm92YW50IGxhIHNlccO8w6huY2lhIGRlbCBwYXF1ZXQgbm91IGVuIGVsIHNldSBsbG9j4oCmXG4iCisKKyM6IHNyYy9oZWxwLmM6NDM5Cittc2dpZCAidGhlcmUgaXMgbm8gc2NyaXB0IGluIHRoZSBuZXcgdmVyc2lvbiBvZiB0aGUgcGFja2FnZSAtIGdpdmluZyB1cCIKK21zZ3N0ciAiIgorIm5vIGhpIGhhIGNhcCBzZXHDvMOobmNpYSBlbiBsYSB2ZXJzacOzIG5vdmEgZGVsIHBhcXVldCAtIHMnZXN0w6AgYWJhbmRvbmFudCIKKworIzogc3JjL2hlbHAuYzo0NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogLi4uIGl0IGxvb2tzIGxpa2UgdGhhdCB3ZW50IE9LLlxuIgorbXNnc3RyICJkcGtnOiDigKYgc2VtYmxhIHF1ZSBoYSBhbmF0IGLDqS5cbiIKKworIzogc3JjL2hlbHAuYzo2MTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNlY3VyZWx5IHJlbW92ZSAnJS4yNTVzJyIKK21zZ3N0ciAibm8gZXMgcG90IGVzYm9ycmFyIMKrJS4yNTVzwrsgZGUgZm9ybWEgc2VndXJhIgorCisjOiBzcmMvaGVscC5jOjYyMSBkcGtnLWRlYi9pbmZvLmM6NjUgZHBrZy1kZWIvaW5mby5jOjY3Cittc2dpZCAicm0gY29tbWFuZCBmb3IgY2xlYW51cCIKK21zZ3N0ciAiIgorCisjOiBzcmMvaW5mb2RiLmM6NTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoZWNrIGV4aXN0ZW5jZSBvZiBgJS4yNTBzJyIKK21zZ3N0ciAibm8gZXMgcG90IGNvbXByb3ZhciBsJ2V4aXN0w6huY2lhIGRlIMKrJS4yNTBzwrsiCisKKyM6IHNyYy9pbmZvZGIuYzo3MAorbXNnaWQgImNhbm5vdCByZWFkIGluZm8gZGlyZWN0b3J5IgorbXNnc3RyICJubyBlcyBwb3QgbGxlZ2lyIGVsIGRpcmVjdG9yaSDCq2luZm/CuyIKKworIzogc3JjL21haW4uYzo2MAorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIG1hbmFnZW1lbnQgcHJvZ3JhbSB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICJQcm9ncmFtYSBkZSBnZXN0acOzIGRlIHBhcXVldHMgwqslc8K7IGRlIERlYmlhbiB2ZXJzacOzICVzLlxuIgorCisjOiBzcmMvbWFpbi5jOjg1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1pfC0taW5zdGFsbCAgICAgICA8LmRlYiBmaWxlIG5hbWU+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXJlY3Rvcnk+IC4uLlxuIgorIiAgLS11bnBhY2sgICAgICAgICAgIDwuZGViIGZpbGUgbmFtZT4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRpcmVjdG9yeT4gLi4uXG4iCisiICAtQXwtLXJlY29yZC1hdmFpbCAgPC5kZWIgZmlsZSBuYW1lPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyZWN0b3J5PiAuLi5cbiIKKyIgIC0tY29uZmlndXJlICAgICAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtLXRyaWdnZXJzLW9ubHkgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLXJ8LS1yZW1vdmUgICAgICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC1QfC0tcHVyZ2UgICAgICAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtLWdldC1zZWxlY3Rpb25zIFs8cGF0dGVybj4gLi4uXSBHZXQgbGlzdCBvZiBzZWxlY3Rpb25zIHRvIHN0ZG91dC5cbiIKKyIgIC0tc2V0LXNlbGVjdGlvbnMgICAgICAgICAgICAgICAgIFNldCBwYWNrYWdlIHNlbGVjdGlvbnMgZnJvbSBzdGRpbi5cbiIKKyIgIC0tY2xlYXItc2VsZWN0aW9ucyAgICAgICAgICAgICAgIERlc2VsZWN0IGV2ZXJ5IG5vbi1lc3NlbnRpYWwgcGFja2FnZS5cbiIKKyIgIC0tdXBkYXRlLWF2YWlsIDxQYWNrYWdlcy1maWxlPiAgIFJlcGxhY2UgYXZhaWxhYmxlIHBhY2thZ2VzIGluZm8uXG4iCisiICAtLW1lcmdlLWF2YWlsIDxQYWNrYWdlcy1maWxlPiAgICBNZXJnZSB3aXRoIGluZm8gZnJvbSBmaWxlLlxuIgorIiAgLS1jbGVhci1hdmFpbCAgICAgICAgICAgICAgICAgICAgRXJhc2UgZXhpc3RpbmcgYXZhaWxhYmxlIGluZm8uXG4iCisiICAtLWZvcmdldC1vbGQtdW5hdmFpbCAgICAgICAgICAgICBGb3JnZXQgdW5pbnN0YWxsZWQgdW5hdmFpbGFibGUgcGtncy5cbiIKKyIgIC1zfC0tc3RhdHVzIDxwYWNrYWdlPiAuLi4gICAgICAgIERpc3BsYXkgcGFja2FnZSBzdGF0dXMgZGV0YWlscy5cbiIKKyIgIC1wfC0tcHJpbnQtYXZhaWwgPHBhY2thZ2U+IC4uLiAgIERpc3BsYXkgYXZhaWxhYmxlIHZlcnNpb24gZGV0YWlscy5cbiIKKyIgIC1MfC0tbGlzdGZpbGVzIDxwYWNrYWdlPiAuLi4gICAgIExpc3QgZmlsZXMgYG93bmVkJyBieSBwYWNrYWdlKHMpLlxuIgorIiAgLWx8LS1saXN0IFs8cGF0dGVybj4gLi4uXSAgICAgICAgTGlzdCBwYWNrYWdlcyBjb25jaXNlbHkuXG4iCisiICAtU3wtLXNlYXJjaCA8cGF0dGVybj4gLi4uICAgICAgICBGaW5kIHBhY2thZ2Uocykgb3duaW5nIGZpbGUocykuXG4iCisiICAtQ3wtLWF1ZGl0ICAgICAgICAgICAgICAgICAgICAgICBDaGVjayBmb3IgYnJva2VuIHBhY2thZ2UocykuXG4iCisiICAtLXByaW50LWFyY2hpdGVjdHVyZSAgICAgICAgICAgICBQcmludCBkcGtnIGFyY2hpdGVjdHVyZS5cbiIKKyIgIC0tY29tcGFyZS12ZXJzaW9ucyA8YT4gPG9wPiA8Yj4gIENvbXBhcmUgdmVyc2lvbiBudW1iZXJzIC0gc2VlIGJlbG93LlxuIgorIiAgLS1mb3JjZS1oZWxwICAgICAgICAgICAgICAgICAgICAgU2hvdyBoZWxwIG9uIGZvcmNpbmcuXG4iCisiICAtRGh8LS1kZWJ1Zz1oZWxwICAgICAgICAgICAgICAgICBTaG93IGhlbHAgb24gZGVidWdnaW5nLlxuIgorIlxuIgorbXNnc3RyICIiCisiT3JkcmVzOlxuIgorIiAgLWl8LS1pbnN0YWxsICAgICAgIDxmaXR4ZXIgLmRlYj4g4oCmIHwgLVJ8LS1yZWN1cnNpdmUgPGRpcmVjdG9yaT4g4oCmXG4iCisiICAtLXVucGFjayAgICAgICAgICAgPGZpdHhlciAuZGViPiDigKYgfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyZWN0b3JpPiDigKZcbiIKKyIgIC1BfC0tcmVjb3JkLWF2YWlsICA8Zml0eGVyIC5kZWI+IOKApiB8IC1SfC0tcmVjdXJzaXZlIDxkaXJlY3Rvcmk+IOKAplxuIgorIiAgLS1jb25maWd1cmUgICAgICAgICAgICAgPHBhcXVldD4g4oCmIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtcnwtLXJlbW92ZSAgICAgICAgICAgICA8cGFxdWV0PiDigKYgfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC1QfC0tcHVyZ2UgICAgICAgICAgICAgIDxwYXF1ZXQ+IOKApiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLS1nZXQtc2VsZWN0aW9ucyBbPHBhdHLDsz4g4oCmXSAgICAgICAgIEFjb25zZWd1ZWl4IGxhIGxsaXN0YSBkZSBzZWxlY2Npb25zXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbiBsJ2VpeGlkYSBlc3TDoG5kYXJkLlxuIgorIiAgLS1zZXQtc2VsZWN0aW9ucyAgICAgICAgICAgICAgICAgICAgIEVzdGFibGVpeCBzZWxlY2Npb25zIGRlIHBhcXVldHMgZGVzXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZSBsJ2VudHJhZGEgZXN0w6BuZGFyZC5cbiIKKyIgIC0tY2xlYXItc2VsZWN0aW9ucyAgICAgICAgICAgICAgICAgICBEZXNzZWxlY2Npb25hIHRvdHMgZWxzIHBhcXVldHMgbm9cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVzc2VuY2lhbHMuXG4iCisiICAtLXVwZGF0ZS1hdmFpbCA8Zml0eGVyLVBhY2thZ2VzPiAgICAgUmVlbXBsYcOnYSBsYSBpbmZvcm1hY2nDsyBkZSBwYXF1ZXRzXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwb25pYmxlcy5cbiIKKyIgIC0tbWVyZ2UtYXZhaWwgIDxmaXR4ZXItUGFja2FnZXM+ICAgICBGdXNpb25hIGFtYiBsYSBpbmZvcm1hY2nDsyBkZWwgIgorImZpdHhlci5cbiIKKyIgIC0tY2xlYXItYXZhaWwgICAgICAgICAgICAgICAgICAgICAgICBTdXByaW1laXggbGEgaW5mb3JtYWNpw7MgYWN0dWFsIHNvYnJlICIKKyJlbHNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhcXVldHMgZGlzcG9uaWJsZXMuXG4iCisiICAtLWZvcmdldC1vbGQtdW5hdmFpbCAgICAgICAgICAgICAgICAgT2JsaWRhIGxhIGluZm9ybWFjacOzIHNvYnJlIHBhcXVldHMgIgorIm5vXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnN0YcWAbGF0cyBpIG5vIGRpc3BvbmlibGVzLlxuIgorIiAgLXN8LS1zdGF0dXMgPHBhcXVldD4g4oCmICAgICAgICAgICAgICAgTW9zdHJhIGRldGFsbHMgc29icmUgbCdlc3RhdCBkZWwgIgorInBhcXVldC5cbiIKKyIgIC1wfC0tcHJpbnQtYXZhaWwgPHBhcXVldD4g4oCmICAgICAgICAgIE1vc3RyYSBkZXRhbGxzIHNvYnJlIGxhIHZlcnNpw7NcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BvbmlibGUuXG4iCisiICAtTHwtLWxpc3RmaWxlcyA8cGFxdWV0PiDigKYgICAgICAgICAgICBMbGlzdGEgZWxzIGZpdHhlcnMgcXVlIHBlcnRhbnllbiBhbHNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhcXVldHMuXG4iCisiICAtbHwtLWxpc3QgWzxwYXRyw7M+IOKApl0gICAgICAgICAgICAgICAgTGxpc3RhIGJyZXVtZW50IGVscyBwYXF1ZXRzLlxuIgorIiAgLVN8LS1zZWFyY2ggPHBhdHLDsz4g4oCmICAgICAgICAgICAgICAgIENlcmNhIGVscyBwYXF1ZXRzIHF1ZSBjb250ZW5lblxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXF1ZXN0cyBmaXR4ZXJzLlxuIgorIiAgLUN8LS1hdWRpdCAgICAgICAgICAgICAgICAgICAgICAgICAgIFZlcmlmaWNhIGVscyBwYXF1ZXRzIHRyZW5jYXRzLlxuIgorIiAgLS1wcmludC1hcmNoaXRlY3R1cmUgICAgICAgICAgICAgICAgIE1vc3RyYSBsJ2FycXVpdGVjdHVyYSBkZSBkZXN0w60gZGUgIgorImRwa2cuXG4iCisiICAtLWNvbXBhcmUtdmVyc2lvbnMgPGE+IDxvcD4gPGI+ICAgICAgQ29tcGFyYSBlbHMgbsO6bWVyb3MgZGUgdmVyc2nDsyAtICIKKyJtaXJldVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbcOpcyBlbmRhdmFudC5cbiIKKyIgIC0tZm9yY2UtaGVscCAgICAgICAgICAgICAgICAgICAgICAgICBNb3N0cmEgbCdhanVkYSBzb2JyZSBmb3LDp2FyLlxuIgorIiAgLURofC0tZGVidWc9aGVscCAgICAgICAgICAgICAgICAgICAgIE1vc3RyYSBsJ2FqdWRhIHNvYnJlIGxhIGRlcHVyYWNpw7MuXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTEzIHNyYy9xdWVyeWNtZC5jOjYzMSBzcmMvdHJpZ2NtZC5jOjc3IGRwa2ctZGViL21haW4uYzo4OAorIzogZHBrZy1zcGxpdC9tYWluLmM6NzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiAgLWh8LS1oZWxwICAgICAgICAgICAgICAgICAgICAgICAgU2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCittc2dzdHIgIiIKKyIgIC1ofC0taGVscCAgICAgICAgICAgICAgICAgICAgICAgIE1vc3RyYSBhcXVlc3QgbWlzc2F0Z2UgZCdhanVkYS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgICAgICAgIE1vc3RyYSBsYSB2ZXJzacOzLlxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjExOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVXNlIGRwa2cgLWJ8LS1idWlsZHwtY3wtLWNvbnRlbnRzfC1lfC0tY29udHJvbHwtSXwtLWluZm98LWZ8LS1maWVsZHxcbiIKKyIgLXh8LS1leHRyYWN0fC1YfC0tdmV4dHJhY3R8LS1mc3lzLXRhcmZpbGUgIG9uIGFyY2hpdmVzICh0eXBlICVzIC0taGVscCkuXG4iCisiXG4iCittc2dzdHIgIiIKKyJVc2V1IGRwa2cgLWJ8LS1idWlsZHwtY3wtLWNvbnRlbnRzfC1lfC0tY29udHJvbHwtSXwtLWluZm98LWZ8LS1maWVsZHxcbiIKKyIgLXh8LS1leHRyYWN0fC1YfC0tdmV4dHJhY3R8LS1mc3lzLXRhcmZpbGUgIGVuIGFyeGl1cyAodmVnZXUgJXMgLS1oZWxwKS5cbiIKKyJcbiIKKworIzogc3JjL21haW4uYzoxMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkZvciBpbnRlcm5hbCB1c2U6IGRwa2cgLS1hc3NlcnQtc3VwcG9ydC1wcmVkZXBlbmRzIHwgLS1wcmVkZXAtcGFja2FnZSB8XG4iCisiICAtLWFzc2VydC13b3JraW5nLWVwb2NoIHwgLS1hc3NlcnQtbG9uZy1maWxlbmFtZXMgfCAtLWFzc2VydC1tdWx0aS1jb25yZXAuXG4iCisiXG4iCittc2dzdHIgIiIKKyJQZXIgYSDDunMgaW50ZXJuOiBkcGtnIC0tYXNzZXJ0LXN1cHBvcnQtcHJlZGVwZW5kcyB8IC0tcHJlZGVwLXBhY2thZ2UgfFxuIgorIiAgLS1hc3NlcnQtd29ya2luZy1lcG9jaCB8IC0tYXNzZXJ0LWxvbmctZmlsZW5hbWVzIHwgLS1hc3NlcnQtbXVsdGktY29ucmVwLlxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjEyOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT4gICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorIiAgLS1yb290PTxkaXJlY3Rvcnk+ICAgICAgICAgSW5zdGFsbCBvbiBhIGRpZmZlcmVudCByb290IGRpcmVjdG9yeS5cbiIKKyIgIC0taW5zdGRpcj08ZGlyZWN0b3J5PiAgICAgIENoYW5nZSBpbnN0YWxsYXRpb24gZGlyIHdpdGhvdXQgY2hhbmdpbmcgYWRtaW4gIgorImRpci5cbiIKKyIgIC0tcGF0aC1leGNsdWRlPTxwYXR0ZXJuPiAgIERvIG5vdCBpbnN0YWxsIHBhdGhzIHdoaWNoIG1hdGNoIGEgc2hlbGwgIgorInBhdHRlcm4uXG4iCisiICAtLXBhdGgtaW5jbHVkZT08cGF0dGVybj4gICBSZS1pbmNsdWRlIGEgcGF0dGVybiBhZnRlciBhIHByZXZpb3VzICIKKyJleGNsdXNpb24uXG4iCisiICAtT3wtLXNlbGVjdGVkLW9ubHkgICAgICAgICBTa2lwIHBhY2thZ2VzIG5vdCBzZWxlY3RlZCBmb3IgaW5zdGFsbC8iCisidXBncmFkZS5cbiIKKyIgIC1FfC0tc2tpcC1zYW1lLXZlcnNpb24gICAgIFNraXAgcGFja2FnZXMgd2hvc2Ugc2FtZSB2ZXJzaW9uIGlzIGluc3RhbGxlZC5cbiIKKyIgIC1HfC0tcmVmdXNlLWRvd25ncmFkZSAgICAgIFNraXAgcGFja2FnZXMgd2l0aCBlYXJsaWVyIHZlcnNpb24gdGhhbiAiCisiaW5zdGFsbGVkLlxuIgorIiAgLUJ8LS1hdXRvLWRlY29uZmlndXJlICAgICAgSW5zdGFsbCBldmVuIGlmIGl0IHdvdWxkIGJyZWFrIHNvbWUgb3RoZXIgIgorInBhY2thZ2UuXG4iCisiICAtLVtuby1ddHJpZ2dlcnMgICAgICAgICAgICBTa2lwIG9yIGZvcmNlIGNvbnNlcXVlbnRpYWwgdHJpZ2dlciAiCisicHJvY2Vzc2luZy5cbiIKKyIgIC0tbm8tZGVic2lnICAgICAgICAgICAgICAgIERvIG5vdCB0cnkgdG8gdmVyaWZ5IHBhY2thZ2Ugc2lnbmF0dXJlcy5cbiIKKyIgIC0tbm8tYWN0fC0tZHJ5LXJ1bnwtLXNpbXVsYXRlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBKdXN0IHNheSB3aGF0IHdlIHdvdWxkIGRvIC0gZG9uJ3QgZG8gaXQuXG4iCisiICAtRHwtLWRlYnVnPTxvY3RhbD4gICAgICAgICBFbmFibGUgZGVidWdnaW5nIChzZWUgLURoZWxwIG9yIC0tZGVidWc9aGVscCkuXG4iCisiICAtLXN0YXR1cy1mZCA8bj4gICAgICAgICAgICBTZW5kIHN0YXR1cyBjaGFuZ2UgdXBkYXRlcyB0byBmaWxlIGRlc2NyaXB0b3IgIgorIjxuPi5cbiIKKyIgIC0tbG9nPTxmaWxlbmFtZT4gICAgICAgICAgIExvZyBzdGF0dXMgY2hhbmdlcyBhbmQgYWN0aW9ucyB0byA8ZmlsZW5hbWU+LlxuIgorIiAgLS1pZ25vcmUtZGVwZW5kcz08cGFja2FnZT4sLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZ25vcmUgZGVwZW5kZW5jaWVzIGludm9sdmluZyA8cGFja2FnZT4uXG4iCisiICAtLWZvcmNlLS4uLiAgICAgICAgICAgICAgICBPdmVycmlkZSBwcm9ibGVtcyAoc2VlIC0tZm9yY2UtaGVscCkuXG4iCisiICAtLW5vLWZvcmNlLS4uLnwtLXJlZnVzZS0uLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3Agd2hlbiBwcm9ibGVtcyBlbmNvdW50ZXJlZC5cbiIKKyIgIC0tYWJvcnQtYWZ0ZXIgPG4+ICAgICAgICAgIEFib3J0IGFmdGVyIGVuY291bnRlcmluZyA8bj4gZXJyb3JzLlxuIgorIlxuIgorbXNnc3RyICIiCisiT3BjaW9uczpcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yaT4gICAgIFV0aWxpdHphIDxkaXJlY3Rvcmk+IGVuIGxsb2MgZGUgJXMuXG4iCisiICAtLXJvb3Q9PGRpcmVjdG9yaT4gICAgICAgICBJbnN0YcWAbGEgZW4gdW4gZGlyZWN0b3JpIGFycmVsIGRpZmVyZW50LlxuIgorIiAgLS1pbnN0ZGlyPTxkaXJlY3Rvcmk+ICAgICAgQ2FudmlhIGVsIGRpcmVjdG9yaSBkJ2luc3RhxYBsYWNpw7Mgc2Vuc2UgIgorImFsdGVyYXJcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZWwgZGlyZWN0b3JpIGRlIGdlc3Rpw7MuXG4iCisiICAtLXBhdGgtZXhjbHVkZT08cGF0csOzPiAgICAgTm8gaW5zdGHFgGxlcyBjYW1pbnMgcXVlIGNvbmNvcmRlbiBhbWIgdW4gcGF0csOzXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNoZWxsLlxuIgorIiAgLS1wYXRoLWluY2x1ZGU9PHBhdHLDsz4gICAgIFRvcm5hIGEgaW5jbG91cmUgdW4gcGF0csOzIGRlc3Byw6lzIGQndW5hICIKKyJleGNsdXNzacOzXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcsOodmlhLlxuIgorIiAgLU98LS1zZWxlY3RlZC1vbmx5ICAgICAgICAgT21ldCBlbHMgcGFxdWV0cyBubyBzZWxlY2Npb25hdHMgcGVyIGFcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5zdGHFgGxhY2nDsyBvIGFjdHVhbGl0emFjacOzLlxuIgorIiAgLUV8LS1za2lwLXNhbWUtdmVyc2lvbiAgICAgT21ldCBlbHMgcGFxdWV0cyBxdWUgamEgdGluZ3VlbiBsYSBtYXRlaXhhICIKKyJ2ZXJzacOzXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluc3RhxYBsYWRhLlxuIgorIiAgLUc9LS1yZWZ1c2UtZG93bmdyYWRlICAgICAgT21ldCBlbHMgcGFxdWV0cyBhbWIgdW5hIHZlcnNpw7MgYW50ZXJpb3IgcXVlICIKKyJsYVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5zdGHFgGxhZGEuXG4iCisiICAtQnwtLWF1dG8tZGVjb25maWd1cmUgICAgICBJbnN0YcWAbGEgZW5jYXJhIHF1ZSBlcyBwdWdhIHRyZW5jYXIgYWxndW4gIgorImFsdHJlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhcXVldC5cbiIKKyIgIC0tW25vLV10cmlnZ2VycyAgICAgICAgICAgIE9tZXQgbyBmb3LDp2EgZWwgcHJvY2Vzc2F0IGQnYWN0aXZhZG9ycyAiCisiY29uc2VxdWVudHMuXG4iCisiICAtLW5vLWRlYnNpZyAgICAgICAgICAgICAgICBObyB2ZXJpZmlxdWVzIGxlcyBzaWduYXR1cmVzIGRlbHMgcGFxdWV0cy5cbiIKKyIgIC0tbm8tYWN0fC0tZHJ5LXJ1bnwtLXNpbXVsYXRlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJbmRpY2Egbm9tw6lzIGVsIHF1ZSBlcyBmYXJpYSwgcGVyw7Igbm8gZmFjZXMgIgorInJlcy5cbiIKKyIgIC1EfC0tZGVidWc9PG9jdGFsPiAgICAgICAgIEhhYmlsaXRhIGxhIGRlcHVyYWNpw7MgKHZlZ2V1IC1EaGVscCDDsyAtLSIKKyJkZWJ1Zz1oZWxwKS5cbiIKKyIgIC0tc3RhdHVzLWZkIDxuPiAgICAgICAgICAgIEVudmlhIGFjdHVhbGl0emFjaW9ucyBkZSBjYW52aXMgZCdlc3RhdCBhbFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXNjcmlwdG9yIGRlIGZpdHhlciA8bj4uXG4iCisiICAtLWxvZz08Zml0eGVyPiAgICAgICAgICAgICBSZWdpc3RyYSBjYW52aXMgZCdlc3RhdCBpIGFjY2lvbnMgYSA8Zml0eGVyPi5cbiIKKyIgIC0taWdub3JlLWRlcGVuZHM9PHBhcXVldD4s4oCmXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBObyB0aW5ndWVzIGVuIGNvbXB0ZSBsZXMgZGVwZW5kw6huY2llcyBxdWVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW1wbGlxdWVuIGEgPHBhcXVldD4uXG4iCisiICAtLWZvcmNlLeKApiAgICAgICAgICAgICAgICAgIERlc2NhcnRhIHByb2JsZW1lcyAodmVnZXUgLS1mb3JjZS1oZWxwKS5cbiIKKyIgIC0tbm8tZm9yY2Ut4oCmfC0tcmVmdXNlLeKApiAgICBBdHVyYSd0IHF1YW4gdHJvYmVzIHByb2JsZW1lcy5cbiIKKyIgIC0tYWJvcnQtYWZ0ZXIgPG4+ICAgICAgICAgIEF2b3J0YSBkZXNwcsOpcyBkZSB0cm9iYXIgPG4+IGVycm9ycy5cbiIKKyJcbiIKKworIzogc3JjL21haW4uYzoxNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbXBhcmlzb24gb3BlcmF0b3JzIGZvciAtLWNvbXBhcmUtdmVyc2lvbnMgYXJlOlxuIgorIiAgbHQgbGUgZXEgbmUgZ2UgZ3QgICAgICAgKHRyZWF0IGVtcHR5IHZlcnNpb24gYXMgZWFybGllciB0aGFuIGFueSAiCisidmVyc2lvbik7XG4iCisiICBsdC1ubCBsZS1ubCBnZS1ubCBndC1ubCAodHJlYXQgZW1wdHkgdmVyc2lvbiBhcyBsYXRlciB0aGFuIGFueSB2ZXJzaW9uKTtcbiIKKyIgIDwgPDwgPD0gPSA+PSA+PiA+ICAgICAgIChvbmx5IGZvciBjb21wYXRpYmlsaXR5IHdpdGggY29udHJvbCBmaWxlICIKKyJzeW50YXgpLlxuIgorIlxuIgorbXNnc3RyICIiCisiRWxzIG9wZXJhZG9ycyBkZSBjb21wYXJhY2nDsyBwZXIgYSAtLWNvbXBhcmUtdmVyc2lvbnMgc8OzbjpcbiIKKyIgIGx0IGxlIGVxIG5lIGdlIGd0ICAgICAgICh0cmFjdGEgbGEgdmVyc2nDsyBlbiBibGFuYyBjb20gYW50ZXJpb3IgYSAiCisicXVhbHNldm9sXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICBhbHRyYSB2ZXJzacOzKTtcbiIKKyIgIGx0LW5sIGxlLW5sIGdlLW5sIGd0LW5sICh0cmFjdGEgbGEgdmVyc2nDsyBlbiBibGFuYyBjb20gcG9zdGVyaW9yIGEgIgorInF1YWxzZXZvbFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgYWx0cmEgdmVyc2nDsyk7XG4iCisiICA8IDw8IDw9ID0gPj0gPj4gPiAgICAgICAobm9tw6lzIHBlciBtb3RpdXMgZGUgY29tcGF0aWJpbGl0YXQgYW1iIGxhICIKKyJzaW50YXhpXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICBkZWwgZml0eGVyIGRlIGNvbnRyb2wpLlxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjE2MQorIywgYy1mb3JtYXQKK21zZ2lkICJVc2UgYGRzZWxlY3QnIG9yIGBhcHRpdHVkZScgZm9yIHVzZXItZnJpZW5kbHkgcGFja2FnZSBtYW5hZ2VtZW50LlxuIgorbXNnc3RyICIiCisiRW1wcmV1IMKrZHNlbGVjdMK7IG8gwqthcHRpdHVkZcK7IHNpIHZvbGV1IHVuIHByb2dyYW1hIGRlIGdlc3Rpw7MgZGUgcGFxdWV0cyBtw6lzICIKKyJhbWlnYWJsZS5cbiIKKworIzogc3JjL21haW4uYzoxNzAKK21zZ2lkICIiCisiVHlwZSBkcGtnIC0taGVscCBmb3IgaGVscCBhYm91dCBpbnN0YWxsaW5nIGFuZCBkZWluc3RhbGxpbmcgcGFja2FnZXMgWypdO1xuIgorIlVzZSBgZHNlbGVjdCcgb3IgYGFwdGl0dWRlJyBmb3IgdXNlci1mcmllbmRseSBwYWNrYWdlIG1hbmFnZW1lbnQ7XG4iCisiVHlwZSBkcGtnIC1EaGVscCBmb3IgYSBsaXN0IG9mIGRwa2cgZGVidWcgZmxhZyB2YWx1ZXM7XG4iCisiVHlwZSBkcGtnIC0tZm9yY2UtaGVscCBmb3IgYSBsaXN0IG9mIGZvcmNpbmcgb3B0aW9ucztcbiIKKyJUeXBlIGRwa2ctZGViIC0taGVscCBmb3IgaGVscCBhYm91dCBtYW5pcHVsYXRpbmcgKi5kZWIgZmlsZXM7XG4iCisiXG4iCisiT3B0aW9ucyBtYXJrZWQgWypdIHByb2R1Y2UgYSBsb3Qgb2Ygb3V0cHV0IC0gcGlwZSBpdCB0aHJvdWdoIGBsZXNzJyBvciAiCisiYG1vcmUnICEiCittc2dzdHIgIiIKKyJFc2NyaXZpdSBkcGtnIC0taGVscCBwZXIgb2J0ZW5pciBhanVkYSBzb2JyZSBsYSBpbnN0YcWAbGFjacOzIGkgZGVzaW5zdGHFgGxhY2nDsyAiCisiZGUgcGFxdWV0cyBbKl07XG4iCisiVXNldSDCq2RzZWxlY3TCuyBvIMKrYXB0aXR1ZGXCuyBwZXIgYSBnZXN0aW9uYXIgZWxzIHBhcXVldHMgZCd1bmEgbWFuZXJhIG3DqXMgIgorImFtaWdhYmxlO1xuIgorIkVzY3Jpdml1IGRwa2cgLURoZWxwIHBlciBhIG9idGVuaXIgdW5hIGxsaXN0YSBkZWxzIHZhbG9ycyBkZWxzIHNlbnlhbGFkb3JzICIKKyJkZSBkZXB1cmFjacOzIGRlIGRwa2c7XG4iCisiRXNjcml2aXUgZHBrZyAtLWZvcmNlLWhlbHAgcGVyIGEgb2J0ZW5pciB1bmEgbGxpc3RhIGQnb3BjaW9ucyBwZXIgYSBmb3LDp2FyO1xuIgorIkVzY3Jpdml1IGRwa2ctZGViIC0taGVscCBwZXIgYSBvYnRlbmlyIGFqdWRhIHNvYnJlIGxhIG1hbmlwdWxhY2nDsyBkZSAiCisiZml0eGVycyAuZGViO1xuIgorIlxuIgorIkxlcyBvcGNpb25zIG1hcmNhZGVzIGFtYiAoWypdKSBwcm9kdWVpeGVuIHVuYSBlaXhpZGEgZXN0ZXNhIC0gY2FuYWxpdHpldS1sYSAiCisiYSB0cmF2w6lzIGRlIMKrbGVzc8K7IG8gwqttb3JlwrshIgorCisjOiBzcmMvbWFpbi5jOjIxOQorbXNnaWQgIlNldCBhbGwgZm9yY2Ugb3B0aW9ucyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIyMQorbXNnaWQgIlJlcGxhY2UgYSBwYWNrYWdlIHdpdGggYSBsb3dlciB2ZXJzaW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjIzCittc2dpZCAiQ29uZmlndXJlIGFueSBwYWNrYWdlIHdoaWNoIG1heSBoZWxwIHRoaXMgb25lIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjI1Cittc2dpZCAiUHJvY2VzcyBpbmNpZGVudGFsIHBhY2thZ2VzIGV2ZW4gd2hlbiBvbiBob2xkIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjI3Cittc2dpZCAiVHJ5IHRvIChkZSlpbnN0YWxsIHRoaW5ncyBldmVuIHdoZW4gbm90IHJvb3QiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjkKK21zZ2lkICJQQVRIIGlzIG1pc3NpbmcgaW1wb3J0YW50IHByb2dyYW1zLCBwcm9ibGVtcyBsaWtlbHkiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzEKK21zZ2lkICJJbnN0YWxsIGEgcGFja2FnZSBldmVuIGlmIGl0IGZhaWxzIGF1dGhlbnRpY2l0eSBjaGVjayIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzMworbXNnaWQgIlByb2Nlc3MgZXZlbiBwYWNrYWdlcyB3aXRoIHdyb25nIHZlcnNpb25zIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjM1Cittc2dpZCAiT3ZlcndyaXRlIGEgZmlsZSBmcm9tIG9uZSBwYWNrYWdlIHdpdGggYW5vdGhlciIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzNworbXNnaWQgIk92ZXJ3cml0ZSBhIGRpdmVydGVkIGZpbGUgd2l0aCBhbiB1bmRpdmVydGVkIHZlcnNpb24iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzkKK21zZ2lkICJPdmVyd3JpdGUgb25lIHBhY2thZ2UncyBkaXJlY3Rvcnkgd2l0aCBhbm90aGVyJ3MgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI0MQorbXNnaWQgIkRvIG5vdCBwZXJmb3JtIHNhZmUgSS9PIG9wZXJhdGlvbnMgd2hlbiB1bnBhY2tpbmciCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDMKK21zZ2lkICJBbHdheXMgdXNlIHRoZSBuZXcgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDUKK21zZ2lkICJBbHdheXMgdXNlIHRoZSBvbGQgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDgKK21zZ2lkICIiCisiVXNlIHRoZSBkZWZhdWx0IG9wdGlvbiBmb3IgbmV3IGNvbmZpZyBmaWxlcyBpZiBvbmVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgaXMgYXZhaWxhYmxlLCBkb24ndCBwcm9tcHQuIElmIG5vIGRlZmF1bHQgY2FuIGJlICIKKyJmb3VuZCxcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgeW91IHdpbGwgYmUgcHJvbXB0ZWQgdW5sZXNzIG9uZSBvZiB0aGUgY29uZm9sZCBvclxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICBjb25mbmV3IG9wdGlvbnMgaXMgYWxzbyBnaXZlbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI1MworbXNnaWQgIkFsd2F5cyBpbnN0YWxsIG1pc3NpbmcgY29uZmlnIGZpbGVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjU1Cittc2dpZCAiT2ZmZXIgdG8gcmVwbGFjZSBjb25maWcgZmlsZXMgd2l0aCBubyBuZXcgdmVyc2lvbnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNTcKK21zZ2lkICJQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyBvciBubyBhcmNoaXRlY3R1cmUiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNTkKK21zZ2lkICJJbnN0YWxsIGV2ZW4gaWYgaXQgd291bGQgYnJlYWsgYW5vdGhlciBwYWNrYWdlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjYxCittc2dpZCAiQWxsb3cgaW5zdGFsbGF0aW9uIG9mIGNvbmZsaWN0aW5nIHBhY2thZ2VzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjYzCisjLCBmdXp6eQorI3wgbXNnaWQgImRlcGVuZGVuY3kgcHJvYmxlbXMgLSBub3QgcmVtb3ZpbmciCittc2dpZCAiVHVybiBhbGwgZGVwZW5kZW5jeSBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzIgorbXNnc3RyICJwcm9ibGVtZXMgZGUgZGVwZW5kw6huY2llcyAtIG5vIGVzIGRlc2luc3RhxYBsYSIKKworIzogc3JjL21haW4uYzoyNjUKKyMsIGZ1enp5CisjfCBtc2dpZCAiZGVwZW5kZW5jeSBwcm9ibGVtcyAtIG5vdCByZW1vdmluZyIKK21zZ2lkICJUdXJuIGRlcGVuZGVuY3kgdmVyc2lvbiBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzIgorbXNnc3RyICJwcm9ibGVtZXMgZGUgZGVwZW5kw6huY2llcyAtIG5vIGVzIGRlc2luc3RhxYBsYSIKKworIzogc3JjL21haW4uYzoyNjcKK21zZ2lkICJSZW1vdmUgcGFja2FnZXMgd2hpY2ggcmVxdWlyZSBpbnN0YWxsYXRpb24iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNjkKK21zZ2lkICJSZW1vdmUgYW4gZXNzZW50aWFsIHBhY2thZ2UiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODEKK21zZ2lkICJHZW5lcmFsbHkgaGVscGZ1bCBwcm9ncmVzcyBpbmZvcm1hdGlvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4MgorIywgZnV6enkKKyN8IG1zZ2lkICJ1bmFibGUgdG8gc2V0ZW52IGZvciBtYWludGFpbmVyIHNjcmlwdCIKK21zZ2lkICJJbnZvY2F0aW9uIGFuZCBzdGF0dXMgb2YgbWFpbnRhaW5lciBzY3JpcHRzIgorbXNnc3RyICJubyBlcyBwb3QgZmVyIMKrc2V0ZW52wrsgcGVyIGFsIHNjcmlwdCBkZWwgbWFudGVuaWRvciIKKworIzogc3JjL21haW4uYzoyODMKK21zZ2lkICJPdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODQKK21zZ2lkICJMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4NQorIywgZnV6enkKKyN8IG1zZ2lkICJyZWFkIGVycm9yIGluIGNvbmZpZ3VyYXRpb24gZmlsZSBgJS4yNTVzJyIKK21zZ2lkICJPdXRwdXQgZm9yIGVhY2ggY29uZmlndXJhdGlvbiBmaWxlIgorbXNnc3RyICJlcnJvciBkZSBsZWN0dXJhIGFsIGZpdHhlciBkZSBjb25maWd1cmFjacOzIMKrJS4yNTBzwrsiCisKKyM6IHNyYy9tYWluLmM6Mjg2Cittc2dpZCAiTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggY29uZmlndXJhdGlvbiBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg3Cittc2dpZCAiRGVwZW5kZW5jaWVzIGFuZCBjb25mbGljdHMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODgKK21zZ2lkICJMb3RzIG9mIGRlcGVuZGVuY2llcy9jb25mbGljdHMgb3V0cHV0IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg5Cittc2dpZCAiVHJpZ2dlciBhY3RpdmF0aW9uIGFuZCBwcm9jZXNzaW5nIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjkwCittc2dpZCAiTG90cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjkxCittc2dpZCAiU2lsbHkgYW1vdW50cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjkyCittc2dpZCAiTG90cyBvZiBkcml2ZWwgYWJvdXQgZWcgdGhlIGRwa2cvaW5mbyBkaXJlY3RvcnkiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyOTMKK21zZ2lkICJJbnNhbmUgYW1vdW50cyBvZiBkcml2ZWwiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzozMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzIGRlYnVnZ2luZyBvcHRpb24sIC0tZGVidWc9PG9jdGFsPiBvciAtRDxvY3RhbD46XG4iCisiXG4iCisiIE51bWJlciAgUmVmLiBpbiBzb3VyY2UgICBEZXNjcmlwdGlvblxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MzExCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJEZWJ1Z2dpbmcgb3B0aW9ucyBjYW4gYmUgbWl4ZWQgdXNpbmcgYml0d2lzZS1vci5cbiIKKyJOb3RlIHRoYXQgdGhlIG1lYW5pbmdzIGFuZCB2YWx1ZXMgYXJlIHN1YmplY3QgdG8gY2hhbmdlLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MzE5Cittc2dpZCAiLS1kZWJ1ZyByZXF1aXJlcyBhbiBvY3RhbCBhcmd1bWVudCIKK21zZ3N0ciAiLS1kZWJ1ZyByZXF1ZXJlaXggZCd1biBuw7ptZXJvIG9jdGFsIGNvbSBhIHBhcsOgbWV0cmUiCisKKyM6IHNyYy9tYWluLmM6MzQ4CisjLCBjLWZvcm1hdAorbXNnaWQgIm51bGwgcGFja2FnZSBuYW1lIGluIC0taWdub3JlLWRlcGVuZHMgY29tbWEtc2VwYXJhdGVkIGxpc3QgYCUuMjUwcyciCittc2dzdHIgIiIKKyJub20gZGUgcGFxdWV0IGJ1aXQgZW4gbGEgbGxpc3RhIGRlIC0taWdub3JlLWRlcGVuZHMgc2VwYXJhdHMgcGVyIGNvbWEgIgorIsKrJS4yNTBzwrsiCisKKyM6IHNyYy9tYWluLmM6MzU0CisjLCBjLWZvcm1hdAorbXNnaWQgIi0taWdub3JlLWRlcGVuZHMgcmVxdWlyZXMgYSBsZWdhbCBwYWNrYWdlIG5hbWUuIGAlLjI1MHMnIGlzIG5vdDsgJXMiCittc2dzdHIgIiIKKyItLWlnbm9yZS1kZXBlbmRzIG5lY2Vzc2l0YSB1biBub20gZGUgcGFxdWV0IGxlZ2FsLiDCqyUuMjUwc8K7IG5vIGhvIMOpczsgJXMiCisKKyM6IHNyYy9tYWluLmM6MzcxIHNyYy9tYWluLmM6MzgxIHNyYy9tYWluLmM6NjQ5IGRwa2ctc3BsaXQvbWFpbi5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGludGVnZXIgZm9yIC0tJXM6IGAlLjI1MHMnIgorbXNnc3RyICJlbnRlciBpbnbDoGxpZCBwZXIgYSAtLSVzOiDCqyUuMjUwc8K7IgorCisjIGhvb2sgLT4gbGxpZ2FtLCBzZWdvbnMgZWwgVGVybWNhdC4gam0KKyM6IHNyYy9tYWluLmM6NDM4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGV4ZWN1dGluZyBob29rICclcycsIGV4aXQgY29kZSAlZCIKK21zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBleGVjdXRhciBlbCBsbGlnYW0gwqslc8K7LCBjb2RpIGQnZWl4aWRhICVkIgorCisjOiBzcmMvbWFpbi5jOjQ2NQorIywgZnV6enkKKyN8IG1zZ2lkICJzdGF0dXMiCittc2dpZCAic3RhdHVzIGxvZ2dlciIKK21zZ3N0ciAiZXN0YXQiCisKKyM6IHNyYy9tYWluLmM6NDgwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlcyBmb3JjaW5nIG9wdGlvbnMgLSBjb250cm9sIGJlaGF2aW91ciB3aGVuIHByb2JsZW1zIGZvdW5kOlxuIgorIiAgd2FybiBidXQgY29udGludWU6ICAtLWZvcmNlLTx0aGluZz4sPHRoaW5nPiwuLi5cbiIKKyIgIHN0b3Agd2l0aCBlcnJvcjogICAgLS1yZWZ1c2UtPHRoaW5nPiw8dGhpbmc+LC4uLiB8IC0tbm8tZm9yY2UtPHRoaW5nPiwuLi5cbiIKKyIgRm9yY2luZyB0aGluZ3M6XG4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzo0OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIldBUk5JTkcgLSB1c2Ugb2Ygb3B0aW9ucyBtYXJrZWQgWyFdIGNhbiBzZXJpb3VzbHkgZGFtYWdlIHlvdXIgaW5zdGFsbGF0aW9uLlxuIgorIkZvcmNpbmcgb3B0aW9ucyBtYXJrZWQgWypdIGFyZSBlbmFibGVkIGJ5IGRlZmF1bHQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzo1MDQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBmb3JjZS9yZWZ1c2Ugb3B0aW9uIGAlLipzJyIKK21zZ3N0ciAibCdvcGNpw7MgZGUgZm9yw6dhdC9yZWZ1c2F0IMKrJS4qc8K7IMOpcyBkZXNjb25lZ3VkYSIKKworIzogc3JjL21haW4uYzo1MTMKKyMsIGMtZm9ybWF0Cittc2dpZCAib2Jzb2xldGUgZm9yY2UvcmVmdXNlIG9wdGlvbiAnJXMnXG4iCittc2dzdHIgImwnb3BjacOzIGRlIGZvcsOnYXQvcmVmdXNhdCDCqyVzwrsgw6lzIG9ic29sZXRhXG4iCisKKyM6IHNyYy9tYWluLmM6NjQzCittc2dpZCAiLS1jb21tYW5kLWZkIHRha2VzIG9uZSBhcmd1bWVudCwgbm90IHplcm8iCittc2dzdHIgIi0tY29tbWFuZC1mZCBhY2NlcHRhIHVuIGFyZ3VtZW50LCBubyB6ZXJvIgorCisjOiBzcmMvbWFpbi5jOjY0NQorbXNnaWQgIi0tY29tbWFuZC1mZCBvbmx5IHRha2VzIG9uZSBhcmd1bWVudCIKK21zZ3N0ciAiLS1jb21tYW5kLWZkIG5vbcOpcyBhY2NlcHRhIHVuIGFyZ3VtZW50IgorCisjOiBzcmMvbWFpbi5jOjY1MQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBvcGVuIGAlaScgZm9yIHN0cmVhbSIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBvYnJpciDCqyVpwrsgcGVyIGEgdW4gZmx1eCIKKworIzogc3JjL21haW4uYzo2NzYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgYmVmb3JlIGVuZCBvZiBsaW5lICVkIgorbXNnc3RyICJlb2YgaW5lc3BlcmF0IGFiYW5zIGRlIGxhIGZpIGRlIGxhIGzDrW5pYSAlZCIKKworIzogc3JjL21haW4uYzo3MTkgc3JjL21haW4uYzo3NDEgc3JjL3F1ZXJ5Y21kLmM6NjkyIHNyYy9zdGF0Y21kLmM6Mzc5CisjOiBkcGtnLWRlYi9tYWluLmM6MjAxIGRwa2ctc3BsaXQvbWFpbi5jOjE2MworbXNnaWQgIm5lZWQgYW4gYWN0aW9uIG9wdGlvbiIKK21zZ3N0ciAiZXMgbmVjZXNzaXRhIHVuYSBvcGNpw7MgZCdhY2Npw7MiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjExMworbXNnaWQgIiIKKyJ5b3UgbXVzdCBzcGVjaWZ5IHBhY2thZ2VzIGJ5IHRoZWlyIG93biBuYW1lcywgbm90IGJ5IHF1b3RpbmcgdGhlIG5hbWVzIG9mICIKKyJ0aGUgZmlsZXMgdGhleSBjb21lIGluIgorbXNnc3RyICIiCisiaGV1IGQnZXNwZWNpZmljYXIgZWxzIHBhcXVldHMgcGVscyBzZXVzIG5vbXMgcHJvcGlzLCBubyBjaXRhbnQgZWxzIG5vbXMgZGVscyAiCisiZml0eGVycyBlbiBlbHMgcXVlIHZlbmVuIgorCisjOiBzcmMvcGFja2FnZXMuYzoxMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyAtLXBlbmRpbmcgZG9lcyBub3QgdGFrZSBhbnkgbm9uLW9wdGlvbiBhcmd1bWVudHMiCittc2dzdHIgIi0tJXMgLS1wZW5kaW5nIG5vIHByZW4gY2FwIGFyZ3VtZW50IHF1ZSBubyBzaWd1aSB1bmEgb3BjacOzIgorCisjOiBzcmMvcGFja2FnZXMuYzoxMzggc3JjL3F1ZXJ5Y21kLmM6Mzc1IHNyYy9xdWVyeWNtZC5jOjU2NQorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGF0IGxlYXN0IG9uZSBwYWNrYWdlIG5hbWUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMgYWxtZW55cyBuZWNlc3NpdGEgdW4gbm9tIGRlIHBhcXVldCBjb20gYSBhcmd1bWVudCIKKworIzogc3JjL3BhY2thZ2VzLmM6MTc5CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgJXMgbGlzdGVkIG1vcmUgdGhhbiBvbmNlLCBvbmx5IHByb2Nlc3Npbmcgb25jZS5cbiIKK21zZ3N0ciAiUGFxdWV0ICVzIGxsaXN0YXQgbcOpcyBkJ3VuYSB2ZWdhZGEsIG5vbcOpcyBlcyBwcm9jZXNzYXLDoCB1bmEuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjE4MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiTW9yZSB0aGFuIG9uZSBjb3B5IG9mIHBhY2thZ2UgJXMgaGFzIGJlZW4gdW5wYWNrZWRcbiIKKyIgaW4gdGhpcyBydW4gISAgT25seSBjb25maWd1cmluZyBpdCBvbmNlLlxuIgorbXNnc3RyICIiCisiUydoYSBkZXNlbXBhcXVldGF0IG3DqXMgZCd1bmEgY8OycGlhIGRlbCBwYXF1ZXQgJXMhXG4iCisiIE5vbcOpcyBlcyBjb25maWd1cmFyw6AgdW5hIHZlZ2FkYS5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJwYWNrYWdlICUuMjUwcyBpcyBub3QgcmVhZHkgZm9yIHRyaWdnZXIgcHJvY2Vzc2luZ1xuIgorIiAoY3VycmVudCBzdGF0dXMgYCUuMjUwcycgd2l0aCBubyBwZW5kaW5nIHRyaWdnZXJzKSIKK21zZ3N0ciAiIgorImVsIHBhcXVldCAlLjI1MHMgbm8gZXN0w6AgbGxlc3QgcGVyIGEgcHJvY2Vzc2FyIGFjdGl2YWRvcnNcbiIKKyIgKGVzdGF0IGFjdHVhbCDCqyUuMjUwc8K7IGFtYiBjYXAgYWN0aXZhZG9yIHBlbmRlbnQpIgorCisjOiBzcmMvcGFja2FnZXMuYzozMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIHdoaWNoIHByb3ZpZGVzICVzIGlzIHRvIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiAgRWwgcGFxdWV0ICVzIHF1ZSBwcm92ZWVpeCAlcyBzZXLDoCBkZXNpbnN0YcWAbGF0LlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzozMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIGlzIHRvIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiAgRWwgcGFxdWV0ICVzIHNlcsOgIGRlc2luc3RhxYBsYXQuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjM1NAorIywgYy1mb3JtYXQKK21zZ2lkICIgIFZlcnNpb24gb2YgJXMgb24gc3lzdGVtIGlzICVzLlxuIgorbXNnc3RyICIgIExhIHZlcnNpw7MgZGVsIHBhcXVldCDCqyVzwrsgYWwgc2lzdGVtYSDDqXMgJXMuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjM3NgorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgd2hpY2ggcHJvdmlkZXMgJXMgYXdhaXRzIHRyaWdnZXIgcHJvY2Vzc2luZy5cbiIKK21zZ3N0ciAiIgorIiAgRWwgcGFxdWV0ICVzIHF1ZSBwcm92ZWVpeCAlcyBlc3TDoCBlc3BlcmFudCBlbCBwcm9jZXNzYXQgZGVscyBhY3RpdmFkb3JzLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzozODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIGF3YWl0cyB0cmlnZ2VyIHByb2Nlc3NpbmcuXG4iCittc2dzdHIgIiAgRWwgcGFxdWV0ICVzIGVzdMOgIGVzcGVyYW50IGVsIHByb2Nlc3NhdCBkZWxzIGFjdGl2YWRvcnMuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQxMAorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiBhbHNvIGNvbmZpZ3VyaW5nIGAlcycgKHJlcXVpcmVkIGJ5IGAlcycpXG4iCittc2dzdHIgImRwa2c6IHRhbWLDqSBjb25maWd1cmEgwqslc8K7IChyZXF1ZXJpdCBwZXIgwqslc8K7KVxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIHdoaWNoIHByb3ZpZGVzICVzIGlzIG5vdCBjb25maWd1cmVkIHlldC5cbiIKK21zZ3N0ciAiICBFbCBwYXF1ZXQgJXMgcXVlIHByb3ZlZWl4ICVzIG5vIGVzdMOgIGNvbmZpZ3VyYXQuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQyMQorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgaXMgbm90IGNvbmZpZ3VyZWQgeWV0LlxuIgorbXNnc3RyICIgIEVsIHBhcXVldCAlcyBlbmNhcmEgbm8gZXN0w6AgY29uZmlndXJhdC5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyB3aGljaCBwcm92aWRlcyAlcyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIgIEVsIHBhcXVldCAlcyBxdWUgcHJvdmVlaXggJXMgbm8gZXN0w6AgaW5zdGHFgGxhdC5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDM1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIgIEVsIHBhcXVldCAlcyBubyBlc3TDoCBpbnN0YcWAbGF0LlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICVzICglcykgYnJlYWtzICVzIGFuZCBpcyAlcy5cbiIKK21zZ3N0ciAiICVzICglcykgdHJlbmNhICVzIGkgw6lzICVzLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlcyAoJXMpIHByb3ZpZGVzICVzLlxuIgorbXNnc3RyICIgICVzICglcykgcHJvdmVlaXggJXMuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQ4MgorIywgYy1mb3JtYXQKK21zZ2lkICIgIFZlcnNpb24gb2YgJXMgdG8gYmUgY29uZmlndXJlZCBpcyAlcy5cbiIKK21zZ3N0ciAiICBMYSB2ZXJzacOzIGRlbCBwYXF1ZXQgJXMgcXVlIGVzIGNvbmZpZ3VyYXLDoCDDqXMgJXMuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjU5NgorbXNnaWQgIiBkZXBlbmRzIG9uICIKK21zZ3N0ciAiIGRlcMOobiBkZSAiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjYwMgorbXNnaWQgIjsgaG93ZXZlcjpcbiIKK21zZ3N0ciAiOyB0b3QgaSBhaXjDrTpcbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo3MQorIywgYy1mb3JtYXQKK21zZ2lkICIuLi4vJXMiCittc2dzdHIgIuKApi8lcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5MQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBlbnN1cmluZyBgJS4yNTBzJyBkb2Vzbid0IGV4aXN0IgorbXNnc3RyICJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIGFzc2VndXJhci1zZSBkZSBxdWUgwqslLjI1MHPCuyBubyBleGlzdGVpeCIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5OQorbXNnaWQgInNwbGl0IHBhY2thZ2UgcmVhc3NlbWJseSIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEwOAorbXNnaWQgInJlYXNzZW1ibGVkIHBhY2thZ2UgZmlsZSIKK21zZ3N0ciAicGFxdWV0IHJlZW5zYW1ibGF0IgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEzMworIywgYy1mb3JtYXQKK21zZ2lkICJBdXRoZW50aWNhdGluZyAlcyAuLi5cbiIKK21zZ3N0ciAiUydlc3TDoCBhdXRlbnRpY2FudCAlc+KAplxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEzOQorbXNnaWQgInBhY2thZ2Ugc2lnbmF0dXJlIHZlcmlmaWNhdGlvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE0NgorIywgYy1mb3JtYXQKK21zZ2lkICJWZXJpZmljYXRpb24gb24gcGFja2FnZSAlcyBmYWlsZWQhIgorbXNnc3RyICJIYSBmYWxsYXQgbGEgdmVyaWZpY2FjacOzIGRlbCBwYXF1ZXQgJXMhIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE0OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVmVyaWZpY2F0aW9uIG9uIHBhY2thZ2UgJXMgZmFpbGVkLFxuIgorImJ1dCBpbnN0YWxsaW5nIGFueXdheSBhcyB5b3UgcmVxdWVzdGVkLlxuIgorbXNnc3RyICIiCisiSGEgZmFsbGF0IGxhIHZlcmlmaWNhY2nDsyBkZWwgcGFxdWV0ICVzLFxuIgorInBlcsOyIHMnaW5zdGHFgGxhcsOgIGlndWFsbWVudCB0YWwgaSBjb20gaGV1IGRlbWFuYXQuXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTUyCisjLCBjLWZvcm1hdAorbXNnaWQgInBhc3NlZFxuIgorbXNnc3RyICJjb3JyZWN0ZVxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE2NSBkcGtnLWRlYi9pbmZvLmM6ODEKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHRlbXBvcmFyeSBkaXJlY3RvcnkiCittc2dzdHIgIm5vIHMnaGEgcG9ndXQgY3JlYXIgZWwgZGlyZWN0b3JpIHRlbXBvcmFsIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjIwNQorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlICVzIGhhcyB0b28gbWFueSBDb25mbGljdHMvUmVwbGFjZXMgcGFpcnMiCittc2dzdHIgImVsIHBhcXVldCAlcyB0w6kgbWFzc2EgcGFyZWxsZXMgZGUgQ29uZmxpY3RzL1JlcGxhY2VzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjI0MworIywgYy1mb3JtYXQKK21zZ2lkICJvbGQgdmVyc2lvbiBvZiBwYWNrYWdlIGhhcyBvdmVybHktbG9uZyBpbmZvIGZpbGUgbmFtZSBzdGFydGluZyBgJS4yNTBzJyIKK21zZ3N0ciAiIgorImxhIHZlcnNpw7MgYW50aWdhIGRlbCBwYXF1ZXQgdMOpIHVuIG5vbSBkZSBmaXR4ZXIgZCdpbmZvcm1hY2nDsyBsbGFyZ3XDrXNzaW0gcXVlICIKKyJjb21lbsOnYSBwZXIgwqslLjI1MHPCuyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyODEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBvYnNvbGV0ZSBpbmZvIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5vIGVzIHBvdCBlc2JvcnJhciBlbCBmaXR4ZXIgZCdpbmZvLiBvYnNvbGV0IMKrJS4yNTBzwrsiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6Mjg2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIChzdXBwb3NlZCkgbmV3IGluZm8gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibm8gZXMgcG90IGluc3RhxYBsYXIgZWwgKHN1cG9zYXQpIGZpdHhlciBkJ2luZm8uIG5vdSDCqyUuMjUwc8K7IgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjI5NgorbXNnaWQgInVuYWJsZSB0byBvcGVuIHRlbXAgY29udHJvbCBkaXJlY3RvcnkiCittc2dzdHIgIm5vIGVzIHBvdCBvYnJpciBlbCBkaXJlY3RvcmkgZGUgY29udHJvbCB0ZW1wb3JhbCIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMDcKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBjb250YWlucyBvdmVybHktbG9uZyBjb250cm9sIGluZm8gZmlsZSBuYW1lIChzdGFydGluZyBgJS41MHMnKSIKK21zZ3N0ciAiIgorImVsIHBhcXVldCBjb250w6kgdW4gbm9tIGRlIGZpdHhlciBkJ2luZm8uIGxsYXJndcOtc3NpbSAoY29tZW7Dp2EgcGVyIMKrJS41MHPCuykiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzE0CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgY29udHJvbCBpbmZvIGNvbnRhaW5lZCBkaXJlY3RvcnkgYCUuMjUwcyciCittc2dzdHIgImxhIGluZm8uIGRlIGNvbnRyb2wgZGVsIHBhcXVldCBjb250w6kgZWwgZGlyZWN0b3JpIMKrJS4yNTBzwrsiCisKKyMgUXXDqCBjb2xsb25zIHZvbCBkaXIgYWl4w7IsIGkgcXXDqCBjb2xsb25zIHZvbCBkaXIgbGEgdHJhZHVjY2nDsz8hIGptCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMxNgorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGNvbnRyb2wgaW5mbyBybWRpciBvZiBgJS4yNTBzJyBkaWRuJ3Qgc2F5IG5vdCBhIGRpciIKK21zZ3N0ciAiIgorImEgbCdlc2JvcnJhciBlbCBkaXJlY3RvcmkgwqslLjI1MHPCuyBhbWIgbGEgaW5mb3JtYWNpw7MgZGUgY29udHJvbCBkZWwgcGFxdWV0ICIKKyJvY29ycmVndcOpIHVuIGVycm9yIGRpZmVyZW50IGNvbSBkZSBubyBzZXIgdW4gZGlyZWN0b3JpIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMyNgorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlICVzIGNvbnRhaW5lZCBsaXN0IGFzIGluZm8gZmlsZSIKK21zZ3N0ciAiZWwgcGFxdWV0ICVzIGNvbnTDqSDCq2xpc3TCuyBjb20gYSBmaXR4ZXIgZCdpbmZvcm1hY2nDsyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IGluZm8gZmlsZSBgJS4yNTBzJyBhcyBgJS4yNTBzJyIKK21zZ3N0ciAibm8gZXMgcG90IGluc3RhxYBsYXIgZWwgZml0eGVyIGQnaW5mby4gbm91IMKrJS4yNTBzwrsgY29tIGEgwqslLjI1MHPCuyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozNDkgc3JjL3JlbW92ZS5jOjE5OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGVsZXRlIGNvbnRyb2wgaW5mbyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJubyBlcyBwb3QgZWxpbWluYXIgZWwgZml0eGVyIGQnaW5mby4gZGUgY29udHJvbCDCqyUuMjUwc8K7IgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjQxMQorbXNnaWQgImNhbm5vdCBhY2Nlc3MgYXJjaGl2ZSIKK21zZ3N0ciAibm8gZXMgcG90IGFjY2VkaXIgYSBsJ2FyeGl1IgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjQzMworIywgZnV6enkKKyN8IG1zZ2lkICJjb250cm9sIGluZm9ybWF0aW9uIGxlbmd0aCIKK21zZ2lkICJwYWNrYWdlIGNvbnRyb2wgaW5mb3JtYXRpb24gZXh0cmFjdGlvbiIKK21zZ3N0ciAibG9uZ2l0dWQgZGUgbGEgaW5mb3JtYWNpw7MgZGUgY29udHJvbCIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo0NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVjb3JkZWQgaW5mbyBhYm91dCAlcyBmcm9tICVzLlxuIgorbXNnc3RyICJTJ2hhIHJlZ2lzdHJhdCBsYSBpbmZvcm1hY2nDsyBzb2JyZSAlcyBhIHBhcnRpciBkZSAlcy5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo0NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBhcmNoaXRlY3R1cmUgKCVzKSBkb2VzIG5vdCBtYXRjaCBzeXN0ZW0gKCVzKSIKK21zZ3N0ciAibCdhcnF1aXRlY3R1cmEgZGVsIHBhcXVldCAoJXMpIG5vIGNvcnJlc3BvbiBhbWIgbGEgZGVsIHNpc3RlbWEgKCVzKSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1MjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IHJlZ2FyZGluZyAlcyBjb250YWluaW5nICVzLCBwcmUtZGVwZW5kZW5jeSBwcm9ibGVtOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogcmVmZXJlbnQgYSAlcyBxdWUgY29udMOpICVzLCBwcm9ibGVtYSBkZSBwcmVkZXBlbmTDqG5jaWE6XG4iCisiJXMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTI2CisjLCBjLWZvcm1hdAorbXNnaWQgInByZS1kZXBlbmRlbmN5IHByb2JsZW0gLSBub3QgaW5zdGFsbGluZyAlLjI1MHMiCittc2dzdHIgInByb2JsZW1hIGRlIHByZWRlcGVuZMOobmNpYSAtIG5vIHMnaW5zdGHFgGxhcsOgICUuMjUwcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1MjcKK21zZ2lkICJpZ25vcmluZyBwcmUtZGVwZW5kZW5jeSBwcm9ibGVtISIKK21zZ3N0ciAicydlc3TDoCBpZ25vcmFudCBlbCBwcm9ibGVtYSBkZSBwcmVkZXBlbmTDqG5jaWEhIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjU0MworIywgYy1mb3JtYXQKK21zZ2lkICJQcmVwYXJpbmcgdG8gcmVwbGFjZSAlcyAlcyAodXNpbmcgJXMpIC4uLlxuIgorbXNnc3RyICJTJ2VzdMOgIHByZXBhcmFudCBwZXIgYSByZWVtcGxhw6dhciAlcyAlcyAoZmVudCBzZXJ2aXIgJXMp4oCmXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIlVucGFja2luZyAlcyAoZnJvbSAlcykgLi4uXG4iCittc2dzdHIgIlMnZXN0w6AgZGVzZW1wYXF1ZXRhbnQgJXMgKGRlICVzKeKAplxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjU4MAorIywgYy1mb3JtYXQKK21zZ2lkICJuYW1lIG9mIGNvbmZmaWxlIChzdGFydGluZyBgJS4yNTBzJykgaXMgdG9vIGxvbmcgKD4lZCBjaGFyYWN0ZXJzKSIKK21zZ3N0ciAiIgorImVsIG5vbSBkZWwgY29uZmZpbGUgKHF1ZSBjb21lbsOnYSBwZXIgwqslLjI1MHPCuykgw6lzIG1hc3NhIGxsYXJnICg+JWQgY2Fyw6BjdGVycykiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjMzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDcxCisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWQgZXJyb3IgaW4gJS4yNTBzIgorbXNnc3RyICJlcnJvciBkZSBsZWN0dXJhIGVuICUuMjUwcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyAlLjI1MHMiCittc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gdGFuY2FyICUuMjUwcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2MzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgdHJ5aW5nIHRvIG9wZW4gJS4yNTBzIgorbXNnc3RyICJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIGludGVudGFyIG9icmlyICUuMjUwcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGUtY29uZmlndXJpbmcgJXMsIHRvIGFsbG93IHJlbW92YWwgb2YgJXMgLi4uXG4iCittc2dzdHIgIlMnZXN0w6AgZGVzY29uZmlndXJhbnQgJXMsIHBlciBhIHBlcm1ldHJlIGxhIHN1cHJlc3Npw7MgZGUgJXPigKZcbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGUtY29uZmlndXJpbmcgJXMgLi4uXG4iCittc2dzdHIgIlMnZXN0w6AgZGVzY29uZmlndXJhbnQgJXPigKZcbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo3NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiVW5wYWNraW5nIHJlcGxhY2VtZW50ICUuMjUwcyAuLi5cbiIKK21zZ3N0ciAiUydlc3TDoCBkZXNlbXBhcXVldGFudCBlbCByZWVtcGxhw6dhbWVudCBkZSAlLjI1MHPigKZcbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NDAKKyMsIGZ1enp5CisjfCBtc2dpZCAiZHBrZy1kZWIgZmllbGQgZXh0cmFjdGlvbiIKK21zZ2lkICJwYWNrYWdlIGZpbGVzeXN0ZW0gYXJjaGl2ZSBleHRyYWN0aW9uIgorbXNnc3RyICJleHRyYWNjacOzIGRlIGNhbXBzIGRlIGRwa2ctZGViIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjg1NAorbXNnaWQgImVycm9yIHJlYWRpbmcgZHBrZy1kZWIgdGFyIG91dHB1dCIKK21zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBsbGVnaXIgbCdlaXhpZGEgdGFyIGRlIGRwa2ctZGViIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjg1NgorbXNnaWQgImNvcnJ1cHRlZCBmaWxlc3lzdGVtIHRhcmZpbGUgLSBjb3JydXB0ZWQgcGFja2FnZSBhcmNoaXZlIgorbXNnc3RyICJzaXN0ZW1hIGRlIGZpdHhlcnMgZGUgbCdhcnhpdSB0YXIgY29ycnVwdGUgLSBhcnhpdSBkZWwgcGFxdWV0IGNvcnJ1cHRlIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjg1OQorbXNnaWQgImRwa2ctZGViOiB6YXAgcG9zc2libGUgdHJhaWxpbmcgemVyb3MiCittc2dzdHIgImRwa2ctZGViOiBlc2JvcnJhIHBvc3NpYmxlcyB6ZXJvcyBmaW5hbHMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTE5CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBzdGF0IG9sZCBmaWxlICclLjI1MHMnIHNvIG5vdCBkZWxldGluZyBpdDogJXMiCittc2dzdHIgIiIKKyJubyBlcyBwb3QgZmVyIMKrc3RhdMK7IHNvYnJlIGVsIGZpdHhlciBhbnRpYyDCqyUuMjUwc8K7IGFpeMOtIGRvbmNzIG5vICIKKyJzJ2VsaW1pbmFyw6A6ICVzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjkyNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGVsZXRlIG9sZCBkaXJlY3RvcnkgJyUuMjUwcyc6ICVzIgorbXNnc3RyICJubyBlcyBwb3QgZXNib3JyYXIgZWwgZGlyZWN0b3JpIGFudGljIMKrJS4yNTBzwrs6ICVzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjkyOAorIywgYy1mb3JtYXQKK21zZ2lkICJvbGQgY29uZmZpbGUgJyUuMjUwcycgd2FzIGFuIGVtcHR5IGRpcmVjdG9yeSAoYW5kIGhhcyBub3cgYmVlbiBkZWxldGVkKSIKK21zZ3N0ciAiZWwgY29uZmZpbGUgwqslLjI1MHPCuyBlcmEgdW4gZGlyZWN0b3JpIGJ1aXQgKGkgcydoYSBlbGltaW5hdCkiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTc1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IG90aGVyIG5ldyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJubyBlcyBwb3QgZmVyIMKrc3RhdMK7IHNvYnJlIGVsIGZpdHhlciBub3UgwqslLjI1MHPCuyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm9sZCBmaWxlICclLjI1MHMnIGlzIHRoZSBzYW1lIGFzIHNldmVyYWwgbmV3IGZpbGVzISAoYm90aCAnJS4yNTBzJyBhbmQgIgorIiclLjI1MHMnKSIKK21zZ3N0ciAiIgorImVsIGZpdHhlciBhbnRpYyDCqyUuMjUwc8K7IMOpcyBpZ3VhbCBxdWUgZGl2ZXJzb3MgZml0eGVycyBub3VzISAowqslLjI1MHPCuyBpICIKKyLCqyUuMjUwc8K7KSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxMDI1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWN1cmVseSByZW1vdmUgb2xkIGZpbGUgJyUuMjUwcyc6ICVzIgorbXNnc3RyICJubyBlcyBwb3QgZXNib3JyYXIgZWwgZml0eGVyIGFudGljIMKrJS4yNTBzwrsgZGUgZm9ybWF0IHNlZ3VyYTogJXMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTIwNgorIywgYy1mb3JtYXQKK21zZ2lkICIoTm90aW5nIGRpc2FwcGVhcmFuY2Ugb2YgJXMsIHdoaWNoIGhhcyBiZWVuIGNvbXBsZXRlbHkgcmVwbGFjZWQuKVxuIgorbXNnc3RyICIoTm90ZXUgbGEgZGVzYXBhcmljacOzIGRlICVzLCBxdWUgaGEgZXN0YXQgY29tcGxldGFtZW50IHJlZW1wbGHDp2F0LilcbiIKKworIyBqbTogQcOnw7Igam8gbm8gc2Ugc2kgdHJhZHVpci1oby4gSGEgZGUgY2FiZXIgZW4gdW5hIGzDrW5pYSBpIGhlbSBkZSBkaXIKKyMgam06IHF1aW5hIGxsZXRyYSBjb3JyZXNwb24gYSBjYWRhIGVzdGF0LgorIy4gVFJBTlNMQVRPUlM6IFRoaXMgaXMgdGhlIGhlYWRlciB0aGF0IGFwcGVhcnMgb24gJ2Rwa2ctcXVlcnkgLWwnLiBUaGUKKyMuICogc3RyaW5nIHNob3VsZCByZW1haW4gdW5kZXIgODAgY2hhcmFjdGVycy4gVGhlIHVwcGVyY2FzZSBsZXR0ZXJzIGluCisjLiAqIHRoZSBzdGF0ZSB2YWx1ZXMgZGVub3RlIHRoZSBhYmJyZXZpYXRlZCBsZXR0ZXIgdGhhdCB3aWxsIGFwcGVhciBvbgorIy4gKiB0aGUgZmlyc3QgdGhyZWUgY29sdW1ucywgd2hpY2ggc2hvdWxkIGlkZWFsbHkgbWF0Y2ggdGhlIEVuZ2xpc2ggb25lCisjLiAqIChlLmcuIFJlbW92ZSDihpIgc3VwUmltZWl4KSwgc2VlIGRwa2ctcXVlcnkoMSkgZm9yIGZ1cnRoZXIgZGV0YWlscy4gVGhlCisjLiAqIHRyYW5zbGF0ZWQgbWVzc2FnZSBjYW4gdXNlIGFkZGl0aW9uYWwgbGluZXMgaWYgbmVlZGVkLgorIzogc3JjL3F1ZXJ5Y21kLmM6MTQ5Cittc2dpZCAiIgorIkRlc2lyZWQ9VW5rbm93bi9JbnN0YWxsL1JlbW92ZS9QdXJnZS9Ib2xkXG4iCisifCBTdGF0dXM9Tm90L0luc3QvQ29uZi1maWxlcy9VbnBhY2tlZC9oYWxGLWNvbmYvSGFsZi1pbnN0L3RyaWctYVdhaXQvVHJpZy0iCisicGVuZFxuIgorInwvIEVycj89KG5vbmUpL1JlaW5zdC1yZXF1aXJlZCAoU3RhdHVzLEVycjogdXBwZXJjYXNlPWJhZClcbiIKK21zZ3N0ciAiIgorIkRlc2l0amF0PWRlc2NvbmVnVXQvSW5zdGHFgGxhL3N1cFJpbWVpeC9QdXJnYS9yZXTDrW4oSClcbiIKKyJ8IEVzdGF0PU5vdC9JbnN0L0NvbmYtZmlsZXMvVW5wYWNrZWQvaGFsRi1jb25mL0hhbGYtaW5zdC90cmlnLWFXYWl0L1RyaWctIgorInBlbmRcbiIKKyJ8LyBFcnI/PShub25lKS9SZWluc3QtcmVxdWlyZWQgKEVzdGF0LEVycjogbWFqw7pzYy49ZG9sZW50KVxuIgorCisjOiBzcmMvcXVlcnljbWQuYzoxNTMKK21zZ2lkICJOYW1lIgorbXNnc3RyICJOb20iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjE1MworbXNnaWQgIlZlcnNpb24iCittc2dzdHIgIlZlcnNpw7MiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjE1NAorbXNnaWQgIkRlc2NyaXB0aW9uIgorbXNnc3RyICJEZXNjcmlwY2nDsyIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MjQ2IHNyYy9xdWVyeWNtZC5jOjUxMSBzcmMvc2VsZWN0LmM6NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiTm8gcGFja2FnZXMgZm91bmQgbWF0Y2hpbmcgJXMuXG4iCittc2dzdHIgIk5vIHMnaGEgdHJvYmF0IGNhcCBwYXF1ZXQgcXVlIGNvcnJlc3Bvbmd1aSBhbWIgJXMuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI3MworIywgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnNpb24gYnkgJXMgZnJvbTogJXNcbiIKK21zZ3N0ciAiZGVzdmlhdCBwZXIgJXMgZGVzIGRlOiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJzaW9uIGJ5ICVzIHRvOiAlc1xuIgorbXNnc3RyICJkZXN2aWF0IHBlciAlcyBjYXAgYTogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6Mjc4CisjLCBjLWZvcm1hdAorbXNnaWQgImxvY2FsIGRpdmVyc2lvbiBmcm9tOiAlc1xuIgorbXNnc3RyICJkZXN2aWFjacOzIGxvY2FsIGRlcyBkZTogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6Mjc5CisjLCBjLWZvcm1hdAorbXNnaWQgImxvY2FsIGRpdmVyc2lvbiB0bzogJXNcbiIKK21zZ3N0ciAiZGVzdmlhdCBsb2NhbG1lbnQgY2FwIGE6ICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjMwOQorbXNnaWQgIi0tc2VhcmNoIG5lZWRzIGF0IGxlYXN0IG9uZSBmaWxlIG5hbWUgcGF0dGVybiBhcmd1bWVudCIKK21zZ3N0ciAiLS1zZWFyY2ggYWxtZW55cyBuZWNlc3NpdGEgdW4gbm9tIGRlIGZpdHhlciBwYXJlIGNvbSBhcmd1bWVudCIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MzUwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJObyBwYWNrYWdlcyBmb3VuZCBtYXRjaGluZyAlcy5cbiIKK21zZ2lkICIlczogbm8gcGF0aCBmb3VuZCBtYXRjaGluZyBwYXR0ZXJuICVzLlxuIgorbXNnc3RyICJObyBzJ2hhIHRyb2JhdCBjYXAgcGFxdWV0IHF1ZSBjb3JyZXNwb25ndWkgYW1iICVzLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzozOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSBgJXMnIGlzIG5vdCBpbnN0YWxsZWQgYW5kIG5vIGluZm8gaXMgYXZhaWxhYmxlLlxuIgorbXNnc3RyICJFbCBwYXF1ZXQgwqslc8K7IG5vIGVzdMOgIGluc3RhxYBsYXQgaSBubyBoaSBoYSBpbmZvcm1hY2nDsyBkaXNwb25pYmxlLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSBgJXMnIGlzIG5vdCBhdmFpbGFibGUuXG4iCittc2dzdHIgIkVsIHBhcXVldCDCqyVzwrsgbm8gZXN0w6AgZGlzcG9uaWJsZS5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDEwIHNyYy9xdWVyeWNtZC5jOjU4NQorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlIGAlcycgaXMgbm90IGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiRWwgcGFxdWV0IMKrJXPCuyBubyBlc3TDoCBpbnN0YcWAbGF0LlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSBgJXMnIGRvZXMgbm90IGNvbnRhaW4gYW55IGZpbGVzICghKVxuIgorbXNnc3RyICJFbCBwYXF1ZXQgwqslc8K7IG5vIGNvbnTDqSBjYXAgZml0eGVyICghKVxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9jYWxseSBkaXZlcnRlZCB0bzogJXNcbiIKK21zZ3N0ciAiZGVzdmlhdCBsb2NhbG1lbnQgY2FwIGE6ICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQyOAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGRpdmVydHMgb3RoZXJzIHRvOiAlc1xuIgorbXNnc3RyICJlbCBwYXF1ZXQgZGVzdmlhIGEgZCdhbHRyZXMgY2FwIGEgJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDMxCisjLCBjLWZvcm1hdAorbXNnaWQgImRpdmVydGVkIGJ5ICVzIHRvOiAlc1xuIgorbXNnc3RyICJkZXN2aWF0IHBlciAlcyBjYXAgYTogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDUyCittc2dpZCAiIgorIlVzZSBkcGtnIC0taW5mbyAoPSBkcGtnLWRlYiAtLWluZm8pIHRvIGV4YW1pbmUgYXJjaGl2ZSBmaWxlcyxcbiIKKyJhbmQgZHBrZyAtLWNvbnRlbnRzICg9IGRwa2ctZGViIC0tY29udGVudHMpIHRvIGxpc3QgdGhlaXIgY29udGVudHMuXG4iCittc2dzdHIgIiIKKyJVc2V1IGRwa2cgLS1pbmZvICg9IGRwa2ctZGViIC0taW5mbykgcGVyIGEgZXhhbWluYXIgZWxzIGZpdHhlcnMgZCdhcnhpdSxcbiIKKyJpIGRwa2cgLS1jb250ZW50cyAoPSBkcGtnLWRlYiAtLWNvbnRlbnRzKSBwZXIgYSBsbGlzdGFyLW5lIGVsIGNvbnRpbmd1dC5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NTcwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgYXQgbW9zdCB0d28gYXJndW1lbnRzIgorbXNnc3RyICItLSVzIHBvcnRhIGNvbSBhIG1vbHQgZG9zIGFyZ3VtZW50cyIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NTc4CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbnRyb2wgZmlsZSBjb250YWlucyAlYyIKK21zZ3N0ciAiZWwgZml0eGVyIGRlIGNvbnRyb2wgY29udMOpICVjIgorCisjOiBzcmMvcXVlcnljbWQuYzo2MDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuICVzIHBhY2thZ2UgbWFuYWdlbWVudCBwcm9ncmFtIHF1ZXJ5IHRvb2wgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiIgorIkVpbmEgZGUgY29uc3VsdGEgZGVsIHByb2dyYW1hIGRlIGdlc3Rpw7MgZGUgcGFxdWV0cyDCqyVzwrsgZGUgRGViaWFuIHZlcnNpw7MgIgorIiVzLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo2MTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJDb21tYW5kczpcbiIKKyN8ICIgIC1zfC0tc3RhdHVzIDxwYWNrYWdlPiAuLi4gICAgICAgIERpc3BsYXkgcGFja2FnZSBzdGF0dXMgZGV0YWlscy5cbiIKKyN8ICIgIC1wfC0tcHJpbnQtYXZhaWwgPHBhY2thZ2U+IC4uLiAgIERpc3BsYXkgYXZhaWxhYmxlIHZlcnNpb24gZGV0YWlscy5cbiIKKyN8ICIgIC1MfC0tbGlzdGZpbGVzIDxwYWNrYWdlPiAuLi4gICAgIExpc3QgZmlsZXMgYG93bmVkJyBieSBwYWNrYWdlKHMpLlxuIgorI3wgIiAgLWx8LS1saXN0IFs8cGF0dGVybj4gLi4uXSAgICAgICAgTGlzdCBwYWNrYWdlcyBjb25jaXNlbHkuXG4iCisjfCAiICAtV3wtLXNob3cgPHBhdHRlcm4+IC4uLiAgICAgICAgICBTaG93IGluZm9ybWF0aW9uIG9uIHBhY2thZ2UocykuXG4iCisjfCAiICAtU3wtLXNlYXJjaCA8cGF0dGVybj4gLi4uICAgICAgICBGaW5kIHBhY2thZ2Uocykgb3duaW5nIGZpbGUocykuXG4iCisjfCAiICAtY3wtLWNvbnRyb2wtcGF0aCA8cGFja2FnZT4gWzxmaWxlPl1cbiIKKyN8ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFByaW50IHBhdGggZm9yIHBhY2thZ2UgY29udHJvbCBmaWxlLlxuIgorI3wgIlxuIgorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1zfC0tc3RhdHVzIDxwYWNrYWdlPiAuLi4gICAgICAgIERpc3BsYXkgcGFja2FnZSBzdGF0dXMgZGV0YWlscy5cbiIKKyIgIC1wfC0tcHJpbnQtYXZhaWwgPHBhY2thZ2U+IC4uLiAgIERpc3BsYXkgYXZhaWxhYmxlIHZlcnNpb24gZGV0YWlscy5cbiIKKyIgIC1MfC0tbGlzdGZpbGVzIDxwYWNrYWdlPiAuLi4gICAgIExpc3QgZmlsZXMgYG93bmVkJyBieSBwYWNrYWdlKHMpLlxuIgorIiAgLWx8LS1saXN0IFs8cGF0dGVybj4gLi4uXSAgICAgICAgTGlzdCBwYWNrYWdlcyBjb25jaXNlbHkuXG4iCisiICAtV3wtLXNob3cgWzxwYXR0ZXJuPiAuLi5dICAgICAgICBTaG93IGluZm9ybWF0aW9uIG9uIHBhY2thZ2UocykuXG4iCisiICAtU3wtLXNlYXJjaCA8cGF0dGVybj4gLi4uICAgICAgICBGaW5kIHBhY2thZ2Uocykgb3duaW5nIGZpbGUocykuXG4iCisiICAtY3wtLWNvbnRyb2wtcGF0aCA8cGFja2FnZT4gWzxmaWxlPl1cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFByaW50IHBhdGggZm9yIHBhY2thZ2UgY29udHJvbCBmaWxlLlxuIgorIlxuIgorbXNnc3RyICIiCisiT3JkcmVzOlxuIgorIiAgLXN8LS1zdGF0dXMgPHBhcXVldD4g4oCmICAgICAgICAgTW9zdHJhIGRldGFsbHMgZGUgbCdlc3RhdCBkZWwgcGFxdWV0LlxuIgorIiAgLXB8LS1wcmludC1hdmFpbCA8cGFxdWV0PiDigKYgICAgTW9zdHJhIGRldGFsbHMgZGUgbGEgdmVyc2nDsyBkaXNwb25pYmxlLlxuIgorIiAgLUx8LS1saXN0ZmlsZXMgPHBhcXVldD4g4oCmICAgICAgTGxpc3RhIGVscyBmaXR4ZXJzIHF1ZSBwZXJ0YW55ZW4gYWxzXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXF1ZXRzLlxuIgorIiAgLWx8LS1saXN0IFs8cGF0csOzPiDigKZdICAgICAgICAgIExsaXN0YSBlbHMgcGFxdWV0cyBzZW5zZSBtYXNzYSBkZXRhbGxzLlxuIgorIiAgLVd8LS1zaG93IDxwYXRyw7M+IOKApiAgICAgICAgICAgIE1vc3RyYSBpbmZvcm1hY2nDsyBzb2JyZSBlbHMgcGFxdWV0cy5cbiIKKyIgIC1TfC0tc2VhcmNoIDxwYXRyw7M+IOKApiAgICAgICAgICBDZXJjYSBlbHMgcGFxdWV0cyBhbHMgcXVlIHBlcnRhbnllblxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZWxzIGZpdHhlcnMuXG4iCisiICAtY3wtLWNvbnRyb2wtcGF0aCA8cGFxdWV0PiBbPGZ0eGVyPl1cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBNb3N0cmEgZWwgY2Ftw60gcGVyIGFsIGZpdHhlciBkZSBjb250cm9sXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWwgcGFxdWV0LlxuIgorIlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo2MzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgICAgICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyIgIC1mfC0tc2hvd2Zvcm1hdD08Zm9ybWF0PiAgICAgICAgIFVzZSBhbHRlcm5hdGl2ZSBmb3JtYXQgZm9yIC0tc2hvdy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIk9wY2lvbnM6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcmk+ICAgICAgICAgICBVdGlsaXR6YSA8ZGlyZWN0b3JpPiBlbiBsbG9jIGRlICVzLlxuIgorIiAgLWZ8LS1zaG93Zm9ybWF0PTxmb3JtYXQ+ICAgICAgICAgVXRpbGl0emEgdW4gZm9ybWF0IGFsdGVybmF0aXUgcGVyXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhIC0tc2hvdy5cbiIKKyJcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjQyIGRwa2ctZGViL21haW4uYzoxMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkZvcm1hdCBzeW50YXg6XG4iCisiICBBIGZvcm1hdCBpcyBhIHN0cmluZyB0aGF0IHdpbGwgYmUgb3V0cHV0IGZvciBlYWNoIHBhY2thZ2UuIFRoZSBmb3JtYXRcbiIKKyIgIGNhbiBpbmNsdWRlIHRoZSBzdGFuZGFyZCBlc2NhcGUgc2VxdWVuY2VzIFxcbiAobmV3bGluZSksIFxcciAoY2FycmlhZ2VcbiIKKyIgIHJldHVybikgb3IgXFxcXCAocGxhaW4gYmFja3NsYXNoKS4gUGFja2FnZSBpbmZvcm1hdGlvbiBjYW4gYmUgaW5jbHVkZWRcbiIKKyIgIGJ5IGluc2VydGluZyB2YXJpYWJsZSByZWZlcmVuY2VzIHRvIHBhY2thZ2UgZmllbGRzIHVzaW5nIHRoZSAke3Zhcls7IgorIndpZHRoXX1cbiIKKyIgIHN5bnRheC4gRmllbGRzIHdpbGwgYmUgcmlnaHQtYWxpZ25lZCB1bmxlc3MgdGhlIHdpZHRoIGlzIG5lZ2F0aXZlIGluICIKKyJ3aGljaFxuIgorIiAgY2FzZSBsZWZ0IGFsaWdubWVudCB3aWxsIGJlIHVzZWQuXG4iCittc2dzdHIgIiIKKyJGb3JtYXQgZGUgbGEgc2ludGF4aTpcbiIKKyIgIFVuIGZvcm1hdCDDqXMgdW5hIGNhZGVuYSBxdWUgZXMgbW9zdHJhcsOgIHBlciBhIGNhZGEgcGFxdWV0LiBFbCBmb3JtYXRcbiIKKyIgIHBvdCBpbmNsb3VyZSBsZXMgc2Vxw7zDqG5jaWVzIGQnZXNjYXBhZGEgZXN0w6BuZGFyZCBcXG4gKGzDrW5pYSBub3ZhKSxcbiIKKyIgIFxcciAocmV0b3JuIGRlIGNhcnJvKSBvIFxcXFwgKGJhcnJhIGludmVydGlkYSkuIEVzIHBvdCBpbmNsb3VyZSAiCisiaW5mb3JtYWNpw7NcbiIKKyIgIHNvYnJlIGVsIHBhcXVldCBpbnNlcmludCByZWZlcsOobmNpZXMgdmFyaWFibGVzIGFscyBjYW1wcyBkZWxzIHBhcXVldHNcbiIKKyIgIHV0aWxpdHphbnQgbGEgc2ludGF4aSAke3Zhcls7YW1wbGFkYV19LiBFbHMgY2FtcHMgcydhbGluZWFyYW4gYSBsYVxuIgorIiAgZHJldGEgYSBtZW55cyBxdWUgbCdhbXBsYWRhIHNpZ2EgbmVnYXRpdmEsIGVuIGFxdWVzdCBjYXMgcyd1dGlsaXR6YXLDoFxuIgorIiAgYWxpbmVhY2nDsyBhIGwnZXNxdWVycmEuIFxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo2NTYKK21zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IHF1ZXJ5aW5nIHBhY2thZ2VzLiIKK21zZ3N0ciAiRW1wcmV1IC0taGVscCBwZXIgYSBvYnRlbmlyIGFqdWRhIHNvYnJlIGxhIGNvbnN1bHRhIGRlIHBhcXVldHMuIgorCisjOiBzcmMvcmVtb3ZlLmM6ODgKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgcmVxdWVzdCB0byByZW1vdmUgJS4yNTBzIHdoaWNoIGlzbid0IGluc3RhbGxlZC4iCittc2dzdHIgIiIKKyJzJ2VzdMOgIGlnbm9yYW50IGxhIHBldGljacOzIGRlIGRlc2luc3RhxYBsYXIgJS4yNTBzIHF1ZSBubyBlc3TDoCBpbnN0YcWAbGF0LiIKKworIzogc3JjL3JlbW92ZS5jOjk1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpZ25vcmluZyByZXF1ZXN0IHRvIHJlbW92ZSAlLjI1MHMsIG9ubHkgdGhlIGNvbmZpZ1xuIgorIiBmaWxlcyBvZiB3aGljaCBhcmUgb24gdGhlIHN5c3RlbS4gVXNlIC0tcHVyZ2UgdG8gcmVtb3ZlIHRoZW0gdG9vLiIKK21zZ3N0ciAiIgorImVzIGRlc2NhcnRhIGxhIHBldGljacOzIGRlIGRlc2luc3RhxYBsYXIgJS4yNTBzLCBkZWwgcXVhbFxuIgorIiBub23DqXMgZWxzIGZpdHhlcnMgZGUgY29uZmlndXJhY2nDsyBxdWVkZW4gZW4gZWwgc2lzdGVtYS4gVXNldSAtLXB1cmdlIHBlclxuIgorIiBhIGVzYm9ycmFyIHRhbWLDqSBhcXVlc3RzIGZpdHhlcnMuIgorCisjOiBzcmMvcmVtb3ZlLmM6MTAzCittc2dpZCAiVGhpcyBpcyBhbiBlc3NlbnRpYWwgcGFja2FnZSAtIGl0IHNob3VsZCBub3QgYmUgcmVtb3ZlZC4iCittc2dzdHIgIkFxdWVzdCDDqXMgdW4gcGFxdWV0IGVzc2VuY2lhbCAtIG5vIGhhdXJpYSBkZSBzZXIgZGVzaW5zdGHFgGxhdC4iCisKKyM6IHNyYy9yZW1vdmUuYzoxMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IGRlcGVuZGVuY3kgcHJvYmxlbXMgcHJldmVudCByZW1vdmFsIG9mICVzOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogcHJvYmxlbWVzIGRlIGRlcGVuZMOobmNpZXMgaW1wZWRlaXhlbiBsYSBkZXNpbnN0YcWAbGFjacOzIGRlICVzOlxuIgorIiVzIgorCisjOiBzcmMvcmVtb3ZlLmM6MTMwCittc2dpZCAiZGVwZW5kZW5jeSBwcm9ibGVtcyAtIG5vdCByZW1vdmluZyIKK21zZ3N0ciAicHJvYmxlbWVzIGRlIGRlcGVuZMOobmNpZXMgLSBubyBlcyBkZXNpbnN0YcWAbGEiCisKKyM6IHNyYy9yZW1vdmUuYzoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6ICVzOiBkZXBlbmRlbmN5IHByb2JsZW1zLCBidXQgcmVtb3ZpbmcgYW55d2F5IGFzIHlvdSByZXF1ZXN0ZWQ6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiAlczogcHJvYmxlbWVzIGRlIGRlcGVuZMOobmNpZXMsIHBlcsOyIGVzIGRlc2luc3RhxYBsYXLDoCBpZ3VhbG1lbnQgdGFsIGkgIgorImNvbSBoZXUgZGVtYW5hdDpcbiIKKyIlcyIKKworIzogc3JjL3JlbW92ZS5jOjE0MgorbXNnaWQgIiIKKyJQYWNrYWdlIGlzIGluIGEgdmVyeSBiYWQgaW5jb25zaXN0ZW50IHN0YXRlIC0geW91IHNob3VsZFxuIgorIiByZWluc3RhbGwgaXQgYmVmb3JlIGF0dGVtcHRpbmcgYSByZW1vdmFsLiIKK21zZ3N0ciAiIgorIkVsIHBhcXVldCBlc3TDoCBlbiB1biBlc3RhdCBtb2x0IGRvbGVudCBlIGluY29uc2lzdGVudCAtIGVsIHRpbmRyZXUgcXVlXG4iCisiIHJlaW5zdGHFgGxhciBhYmFucyBkJ2ludGVudGFyIGRlc2luc3RhxYBsYXItbG8uIgorCisjOiBzcmMvcmVtb3ZlLmM6MTQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIldvdWxkIHJlbW92ZSBvciBwdXJnZSAlcyAuLi5cbiIKK21zZ3N0ciAiRGVzaW5zdGHFgGxhcmlhIG8gcHVyZ2FyaWEgJXPigKZcbiIKKworIzogc3JjL3JlbW92ZS5jOjE1NworIywgYy1mb3JtYXQKK21zZ2lkICJSZW1vdmluZyAlcyAuLi5cbiIKK21zZ3N0ciAiUydlc3TDoCBkZXNpbnN0YcWAbGFudCAlc+KAplxuIgorCisjOiBzcmMvcmVtb3ZlLmM6Mjc1IHNyYy9yZW1vdmUuYzozNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIndoaWxlIHJlbW92aW5nICUuMjUwcywgdW5hYmxlIHRvIHJlbW92ZSBkaXJlY3RvcnkgJyUuMjUwcyc6ICVzIC0gZGlyZWN0b3J5ICIKKyJtYXkgYmUgYSBtb3VudCBwb2ludD8iCittc2dzdHIgIiIKKyJhbCBkZXNpbnN0YcWAbGFyICUuMjUwcywgbm8gZXMgcG90IGVzYm9ycmFyIGVsIGRpcmVjdG9yaSDCqyUuMjUwc8K7OiAlcyAtIGVsICIKKyJkaXJlY3RvcmkgcG9kcmlhIHNlciB1biBwdW50IGRlIG11bnRhdGdlPyIKKworIzogc3JjL3JlbW92ZS5jOjI4OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2VjdXJlbHkgcmVtb3ZlICclLjI1MHMnIgorbXNnc3RyICJubyBlcyBwb3QgZXNib3JyYXIgwqslLjI1MHPCuyBkZSBmb3JtYSBzZWd1cmEiCisKKyM6IHNyYy9yZW1vdmUuYzozNjEKKyMsIGMtZm9ybWF0Cittc2dpZCAid2hpbGUgcmVtb3ZpbmcgJS4yNTBzLCBkaXJlY3RvcnkgJyUuMjUwcycgbm90IGVtcHR5IHNvIG5vdCByZW1vdmVkLiIKK21zZ3N0ciAiIgorImFsIGRlc2luc3RhxYBsYXIgJS4yNTBzLCBlbCBkaXJlY3RvcmkgwqslLjI1MHPCuyBubyBlc3TDoCBidWl0LCBubyBzJ2VzYm9ycmEuIgorCisjOiBzcmMvcmVtb3ZlLmM6MzgzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW5ub3QgcmVtb3ZlIGAlLjI1MHMnIgorbXNnaWQgImNhbm5vdCByZW1vdmUgJyUuMjUwcyciCittc2dzdHIgIm5vIGVzIHBvdCBlc2JvcnJhciDCqyUuMjUwc8K7IgorCisjOiBzcmMvcmVtb3ZlLmM6NDA5CisjLCBjLWZvcm1hdAorbXNnaWQgIlB1cmdpbmcgY29uZmlndXJhdGlvbiBmaWxlcyBmb3IgJXMgLi4uXG4iCittc2dzdHIgIlMnZXN0YW4gcHVyZ2FudCBlbHMgZml0eGVycyBkZSBjb25maWd1cmFjacOzIGRlICVz4oCmXG4iCisKKyM6IHNyYy9yZW1vdmUuYzo0NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlbW92ZSBvbGQgY29uZmlnIGZpbGUgYCUuMjUwcycgKD0gYCUuMjUwcycpIgorbXNnc3RyICIiCisibm8gZXMgcG90IGVsaW1pbmFyIGVsIGZpdHhlciBkZSBjb25maWd1cmFjacOzIGFudGljIMKrJS4yNTBzwrsgKD0gwqslLjI1MHPCuykiCisKKyM6IHNyYy9yZW1vdmUuYzo0NzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlYWQgY29uZmlnIGZpbGUgZGlyIGAlLjI1MHMnIChmcm9tIGAlLjI1MHMnKSIKK21zZ3N0ciAiIgorIm5vIGVzIHBvdCBsbGVnaXIgZWwgZGlyZWN0b3JpIGRlbCBmaXR4ZXIgZGUgY29uZmlndXJhY2nDsyDCqyUuMjUwc8K7IChhIHBhcnRpciAiCisiZGUgwqslLjI1MHPCuykiCisKKyM6IHNyYy9yZW1vdmUuYzo1MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlbW92ZSBvbGQgYmFja3VwIGNvbmZpZyBmaWxlIGAlLjI1MHMnIChvZiBgJS4yNTBzJykiCittc2dzdHIgIiIKKyJubyBlcyBwb3QgZWxpbWluYXIgbCdhbnRpZ2EgY8OycGlhIGRlIHNlZ3VyZXRhdCBkZWwgZml0eGVyIGRlIGNvbmZpZ3VyYWNpw7MgIgorIsKrJS4yNTBzwrsgKGRlIMKrJS4yNTBzwrspIgorCisjOiBzcmMvcmVtb3ZlLmM6NTY4Cittc2dpZCAiY2Fubm90IHJlbW92ZSBvbGQgZmlsZXMgbGlzdCIKK21zZ3N0ciAibm8gZXMgcG90IGVsaW1pbmFyIGxhIGxsaXN0YSBkZSBmaXR4ZXJzIGFudGlnYSIKKworIzogc3JjL3JlbW92ZS5jOjU3NAorbXNnaWQgImNhbid0IHJlbW92ZSBvbGQgcG9zdHJtIHNjcmlwdCIKK21zZ3N0ciAibm8gZXMgcG90IGVsaW1pbmFyIGxhIHNlccO8w6huY2lhIHBvc3RybSBhbnRpZ2EiCisKKyM6IHNyYy9zZWxlY3QuYzoxMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgaW4gcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQiCittc2dzdHIgInMnaGEgdHJvYmF0IHVuIGVvZiBpbmVzcGVyYXQgZW4gZWwgbm9tIGRlbCBwYXF1ZXQgZW4gbGEgbMOtbmlhICVkIgorCisjOiBzcmMvc2VsZWN0LmM6MTE2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGxpbmUgaW4gcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQiCittc2dzdHIgIiIKKyJzJ2hhIHRyb2JhdCB1biBmaSBkZSBsw61uaWEgaW5lc3BlcmF0IGVuIGVsIG5vbSBkZWwgcGFxdWV0IGVuIGxhIGzDrW5pYSAlZCIKKworIzogc3JjL3NlbGVjdC5jOjEyMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVvZiBhZnRlciBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZCIKK21zZ3N0ciAicydoYSB0cm9iYXQgdW4gZW9mIGluZXNwZXJhdCBkZXNwcsOpcyBkZWwgbm9tIGRlbCBwYXF1ZXQgZW4gbGEgbMOtbmlhICVkIgorCisjOiBzcmMvc2VsZWN0LmM6MTIzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGxpbmUgYWZ0ZXIgcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQiCittc2dzdHIgIiIKKyJzJ2hhIHRyb2JhdCB1biBmaSBkZSBsw61uaWEgaW5lc3BlcmF0IGRlc3Byw6lzIGRlbCBub20gZGVsIHBhcXVldCBlbiBsYSBsw61uaWEgIgorIiVkIgorCisjOiBzcmMvc2VsZWN0LmM6MTM2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZGF0YSBhZnRlciBwYWNrYWdlIGFuZCBzZWxlY3Rpb24gYXQgbGluZSAlZCIKK21zZ3N0ciAiIgorInMnaGFuIHRyb2JhdCBkYWRlcyBpbmVzcGVyYWRlcyBkZXNwcsOpcyBkZWwgcGFxdWV0IGkgc2VsZWNjacOzIGVuIGxhIGzDrW5pYSAlZCIKKworIzogc3JjL3NlbGVjdC5jOjEzOQorIywgYy1mb3JtYXQKK21zZ2lkICJpbGxlZ2FsIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkOiAlLjI1MHMiCittc2dzdHIgInMnaGEgdHJvYmF0IHVuIG5vbSBkZSBwYXF1ZXQgacWAbGVnYWwgZW4gbGEgbMOtbmlhICVkOiAlLjI1MHMiCisKKyM6IHNyYy9zZWxlY3QuYzoxNDMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biB3YW50ZWQgc3RhdHVzIGF0IGxpbmUgJWQ6ICUuMjUwcyIKK21zZ3N0ciAicydoYSB0cm9iYXQgdW4gZXN0YXQgZGVzaXRqYXQgZGVzY29uZWd1dCBlbiBsYSBsw61uaWEgJWQ6ICUuMjUwcyIKKworIzogc3JjL3NlbGVjdC5jOjE0OQorbXNnaWQgInJlYWQgZXJyb3Igb24gc3RhbmRhcmQgaW5wdXQiCittc2dzdHIgImVycm9yIGRlIGxlY3R1cmEgZW4gbCdlbnRyYWRhIGVzdMOgbmRhcmQiCisKKyM6IHNyYy9zdGF0Y21kLmM6NTIKKyMsIGZ1enp5CisjfCBtc2dpZCAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBxdWVyeWluZyBwYWNrYWdlcy4iCittc2dpZCAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBvdmVycmlkaW5nIGZpbGUgc3RhdCBpbmZvcm1hdGlvbi4iCittc2dzdHIgIkVtcHJldSAtLWhlbHAgcGVyIGEgb2J0ZW5pciBhanVkYSBzb2JyZSBsYSBjb25zdWx0YSBkZSBwYXF1ZXRzLiIKKworIzogc3JjL3N0YXRjbWQuYzo2MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29weXJpZ2h0IChDKSAyMDAwLCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDA2LTIwMDkgR3VpbGxlbSBKb3Zlci5cbiIKK21zZ3N0ciAiIgorIkNvcHlyaWdodCDCqSAyMDAwLCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IMKpIDIwMDYtMjAwOSBHdWlsbGVtIEpvdmVyLlxuIgorCisjOiBzcmMvc3RhdGNtZC5jOjgxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC0tYWRkIDxvd25lcj4gPGdyb3VwPiA8bW9kZT4gPGZpbGU+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkIGEgbmV3IGVudHJ5IGludG8gdGhlIGRhdGFiYXNlLlxuIgorIiAgLS1yZW1vdmUgPGZpbGU+ICAgICAgICAgIHJlbW92ZSBmaWxlIGZyb20gdGhlIGRhdGFiYXNlLlxuIgorIiAgLS1saXN0IFs8Z2xvYi1wYXR0ZXJuPl0gIGxpc3QgY3VycmVudCBvdmVycmlkZXMgaW4gdGhlIGRhdGFiYXNlLlxuIgorIlxuIgorbXNnc3RyICIiCisiT3JkcmVzOlxuIgorIiAgLS1hZGQgPHByb3BpZXRhcmk+IDxncnVwPiA8bW9kZT4gPGZpdHhlcj5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBhZmVnZWl4IHVuYSBub3ZhIGVudHJhZGEgYSBsYSBiYXNlIGRlIGRhZGVzLlxuIgorIiAgLS1yZW1vdmUgPGZpdHhlcj4gICAgICAgIGVzYm9ycmEgdW4gZml0eGVyIGRlIGxhIGJhc2UgZGUgZGFkZXMuXG4iCisiICAtLWxpc3QgWzxwYXRyw7MtZ2xvYj5dICAgIGxsaXN0YSBkZSBsZXMgc3Vic3RpdHVjaW9ucyBhY3R1YWxzIGEgbGEgYmFzZSBkZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGFkZXMuXG4iCisiXG4iCisKKyM6IHNyYy9zdGF0Y21kLmM6ODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgc2V0IHRoZSBkaXJlY3Rvcnkgd2l0aCB0aGUgc3RhdG92ZXJyaWRlIGZpbGUuXG4iCisiICAtLXVwZGF0ZSAgICAgICAgICAgICAgICAgaW1tZWRpYXRlbHkgdXBkYXRlIGZpbGUgcGVybWlzc2lvbnMuXG4iCisiICAtLWZvcmNlICAgICAgICAgICAgICAgICAgZm9yY2UgYW4gYWN0aW9uIGV2ZW4gaWYgYSBzYW5pdHkgY2hlY2sgZmFpbHMuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgcXVpZXQgb3BlcmF0aW9uLCBtaW5pbWFsIG91dHB1dC5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCittc2dzdHIgIiIKKyJPcGNpb25zOlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3JpPiAgIGRlZmluZWl4IGVsIGRpcmVjdG9yaSBhbWIgZWwgZml0eGVyICIKKyJzdGF0b3ZlcnJpZGUuXG4iCisiICAtLXVwZGF0ZSAgICAgICAgICAgICAgICAgYWN0dWFsaXR6YSBlbHMgcGVybWlzb3MgZGVscyBmaXR4ZXJzIGRlIGZvcm1hXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbW1lZGlhdGEuXG4iCisiICAtLWZvcmNlICAgICAgICAgICAgICAgICAgZm9yw6dhIHVuYSBhY2Npw7MgZmlucyBpIHRvdCBzaSBmYWxsZW4gbGVzXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb21wcm92YWNpb25zIGQnaW50ZWdyaXRhdC5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBvcGVyYSBzaWxlbmNpb3NhbWVudCwgYW1iIGxhIHNvcnRpZGEgbcOtbmltYS5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICBtb3N0cmEgYXF1ZXN0IG1pc3NhdGdlIGQnYWp1ZGEuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgbW9zdHJhIGxhIHZlcnNpw7MuXG4iCisKKyM6IHNyYy9zdGF0Y21kLmM6MTE2Cittc2dpZCAic3RyaXBwaW5nIHRyYWlsaW5nIC8iCittc2dzdHIgInMnZXN0w6Agc3VwcmltaW50IGxhIC8gZGUgZGF2YW50IgorCisjOiBzcmMvc3RhdGNtZC5jOjIwNworbXNnaWQgImNhbm5vdCBvcGVuIG5ldyBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBvYnJpciBlbCBub3UgZml0eGVyIGRlIHN0YXRvdmVycmlkZSIKKworIzogc3JjL3N0YXRjbWQuYzoyMjIKK21zZ2lkICJlcnJvciByZW1vdmluZyBzdGF0b3ZlcnJpZGUtb2xkIgorbXNnc3RyICJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIHN1cHJpbWlyIHN0YXRvdmVycmlkZS1vbGQiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjI0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgbmV3IHN0YXRvdmVycmlkZS1vbGQiCittc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gY3JlYXIgZWwgbm91IHN0YXRvdmVycmlkZS1vbGQiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjI2Cittc2dpZCAiZXJyb3IgaW5zdGFsbGluZyBuZXcgc3RhdG92ZXJyaWRlIgorbXNnc3RyICJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIGluc3RhxYBsYXIgZWwgbm91IHN0YXRvdmVycmlkZSIKKworIzogc3JjL3N0YXRjbWQuYzoyNDYKK21zZ2lkICItLWFkZCBuZWVkcyBmb3VyIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS1hZGQgbmVjZXNzaXRhIHF1YXRyZSBhcmd1bWVudHMiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjU2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJBbiBvdmVycmlkZSBmb3IgJyVzJyBhbHJlYWR5IGV4aXN0cywgYnV0IC0tZm9yY2Ugc3BlY2lmaWVkIHNvIHdpbGwgYmUgIgorImlnbm9yZWQuIgorbXNnc3RyICIiCisiSmEgZXhpc3RlaXggdW5hIHN1YnN0aXR1Y2nDsyBwZXIgYSDCqyVzwrssIHBlcsOyIGNvbSBzJ2hhIGVzcGVjaWZpY2F0IC0tZm9yY2UsICIKKyJzJ2lnbm9yYXLDoC4iCisKKyMgT3ZlcnJpZGUgLT4gc3Vic3RpdHVjacOzPyAtLSBKb3Jkw6AKKyM6IHNyYy9zdGF0Y21kLmM6MjYwCisjLCBjLWZvcm1hdAorbXNnaWQgIkFuIG92ZXJyaWRlIGZvciAnJXMnIGFscmVhZHkgZXhpc3RzLCBhYm9ydGluZy4iCittc2dzdHIgIkphIGV4aXN0ZWl4IHVuYSBzdWJzdGl0dWNpw7MgcGVyIGEgwqslc8K7LCBzJ2VzdMOgIGF2b3J0YW50LiIKKworIzogc3JjL3N0YXRjbWQuYzoyNzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS11cGRhdGUgZ2l2ZW4gYnV0ICVzIGRvZXMgbm90IGV4aXN0IgorbXNnc3RyICJzJ2hhIGRvbmF0IC0tdXBkYXRlIHBlcsOyICVzIG5vIGV4aXN0ZWl4IgorCisjIE92ZXJyaWRlIC0+IHN1YnN0aXR1Y2nDsz8gLS0gSm9yZMOgCisjOiBzcmMvc3RhdGNtZC5jOjI5NgorbXNnaWQgIk5vIG92ZXJyaWRlIHByZXNlbnQuIgorbXNnc3RyICJObyBoaSBoYSBjYXAgc3Vic3RpdHVjacOzIHByZXNlbnQuIgorCisjOiBzcmMvc3RhdGNtZC5jOjMwNAorbXNnaWQgIi0tdXBkYXRlIGlzIHVzZWxlc3MgZm9yIC0tcmVtb3ZlIgorbXNnc3RyICJubyB0w6kgc2VudGl0IHV0aWxpdHphciAtLXVwZGF0ZSBhbWIgLS1yZW1vdmUiCisKKyM6IHNyYy9zdGF0ZGIuYzo1OQorbXNnaWQgInN5bnRheCBlcnJvcjogaW52YWxpZCB1aWQgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgImVycm9yIGRlIHNpbnRheGk6IGwndWlkIMOpcyBpbnbDoGxpZCBhbCBmaXR4ZXIgc3RhdG92ZXJyaWRlIgorCisjOiBzcmMvc3RhdGRiLmM6NjQKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yOiB1bmtub3duIHVzZXIgJyVzJyBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiZXJyb3IgZGUgc2ludGF4aTogbCd1c3Vhcmkgwqslc8K7IMOpcyBkZXNjb25lZ3V0IGFsIGZpdHhlciBzdGF0b3ZlcnJpZGUiCisKKyM6IHNyYy9zdGF0ZGIuYzo4MworbXNnaWQgInN5bnRheCBlcnJvcjogaW52YWxpZCBnaWQgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgImVycm9yIGRlIHNpbnRheGk6IGVsIGdpZCDDqXMgaW52w6BsaWQgYWwgZml0eGVyIHN0YXRvdmVycmlkZSIKKworIzogc3JjL3N0YXRkYi5jOjg4CisjLCBjLWZvcm1hdAorbXNnaWQgInN5bnRheCBlcnJvcjogdW5rbm93biBncm91cCAnJXMnIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJlcnJvciBkZSBzaW50YXhpOiBlbCBncnViIMKrJXPCuyDDqXMgZGVzY29uZWd1dCBhbCBmaXR4ZXIgc3RhdG92ZXJyaWRlIgorCisjOiBzcmMvc3RhdGRiLmM6MTA0Cittc2dpZCAic3ludGF4IGVycm9yOiBpbnZhbGlkIG1vZGUgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgImVycm9yIGRlIHNpbnRheGk6IGVsIG1vZGUgw6lzIGludsOgbGlkIGFsIGZpdHhlciBzdGF0b3ZlcnJpZGUiCisKKyM6IHNyYy9zdGF0ZGIuYzoxMjcKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBvYnJpciBlbCBmaXR4ZXIgZGUgc3RhdG92ZXJyaWRlIgorCisjOiBzcmMvc3RhdGRiLmM6MTM0Cittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGZlciDCq2ZzdGF0wrsgc29icmUgZWwgZml0eGVyIGRlIHN0YXRvdmVycmlkZSIKKworIzogc3JjL3N0YXRkYi5jOjEzNworbXNnaWQgImZhaWxlZCB0byBmc3RhdCBwcmV2aW91cyBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBmZXIgwqtmc3RhdMK7IHNvYnJlIGwnYW50ZXJpb3IgZml0eGVyIGRlIHN0YXRvdmVycmlkZSIKKworIzogc3JjL3N0YXRkYi5jOjE2MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic3RhdG92ZXJyaWRlIGZpbGUgYCUuMjUwcyciCittc2dpZCAicmVhZGluZyBzdGF0b3ZlcnJpZGUgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAiZml0eGVyIGRlIHN0YXRvdmVycmlkZSDCqyUuMjUwc8K7IgorCisjOiBzcmMvc3RhdGRiLmM6MTY5Cittc2dpZCAic3RhdG92ZXJyaWRlIGZpbGUgaXMgbWlzc2luZyBmaW5hbCBuZXdsaW5lIgorbXNnc3RyICJlbCBmaXR4ZXIgZGUgc3RhdG92ZXJyaWRlIG1hbmNhIHVuYSBsw61uaWEgbm92YSBhbCBmaW5hbCIKKworIzogc3JjL3N0YXRkYi5jOjE3MworbXNnaWQgInN0YXRvdmVycmlkZSBmaWxlIGNvbnRhaW5zIGVtcHR5IGxpbmUiCittc2dzdHIgImVsIGZpdHhlciBkZSBzdGF0b3ZlcnJpZGUgY29udMOpIHVuYSBsw61uaWEgYnVpZGEiCisKKyM6IHNyYy9zdGF0ZGIuYzoxNzggc3JjL3N0YXRkYi5jOjE5MCBzcmMvc3RhdGRiLmM6MjAyCittc2dpZCAic3ludGF4IGVycm9yIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJlcnJvciBkZSBzaW50YXhpIGFsIGZpdHhlciBkZSBzdGF0b3ZlcnJpZGUiCisKKyM6IHNyYy9zdGF0ZGIuYzoxODYgc3JjL3N0YXRkYi5jOjE5OCBzcmMvc3RhdGRiLmM6MjEwCittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgbGluZSBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAicydoYSB0cm9iYXQgdW5hIGZpIGRlIGzDrW5pYSBpbmVzcGVyYWRhIGFsIGZpdHhlciBkZSBzdGF0b3ZlcnJpZGUiCisKKyM6IHNyYy9zdGF0ZGIuYzoyMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAibXVsdGlwbGUgc3RhdHVzb3ZlcnJpZGVzIHByZXNlbnQgZm9yIGZpbGUgJyUuMjUwcyciCittc2dzdHIgImhpIGhhIG3Dumx0aXBsZXMgc3RhdHVzb3Z2ZXJyaWRlcyBwZXIgYWwgZml0eGVyIMKrJS4yNTBzwrsiCisKKyM6IHNyYy90cmlnY21kLmM6NDYKK21zZ2lkICJUeXBlIGRwa2ctdHJpZ2dlciAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgdGhpcyB1dGlsaXR5LiIKK21zZ3N0ciAiIgorIkV4ZWN1dGV1IGRwa2ctdHJpZ2dlciAtLWhlbHAgcGVyIGEgb2J0ZW5pci1uZSBhanVkYSBzb2JyZSBhcXVlc3RhIHV0aWxpdGF0LiIKKworIzogc3JjL3RyaWdjbWQuYzo1MQorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gJXMgcGFja2FnZSB0cmlnZ2VyIHV0aWxpdHkgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiVXRpbGl0YXQgZGUgY29uc3VsdGEgZCdhY3RpdmFkb3JzICVzIGRlIERlYmlhbiB2ZXJzacOzICVzLlxuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjY3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJVc2FnZTogJXMgWzxvcHRpb25zPiAuLi5dIDx0cmlnZ2VyLW5hbWU+XG4iCisiICAgICAgICVzIFs8b3B0aW9ucz4gLi4uXSA8Y29tbWFuZD5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIkZvcm1hIGQnw7pzOiAlcyBbPG9wY2lvbnM+IOKApl0gPG5vbS1hY3RpdmFkb3I+XG4iCisiICAgICAgICAgICAgJXMgWzxvcGNpb25zPiDigKZdIDxvcmRyZT5cbiIKKyJcbiIKKworIzogc3JjL3RyaWdjbWQuYzo3MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtLWNoZWNrLXN1cHBvcnRlZCAgICAgICAgICAgICAgICBDaGVjayBpZiB0aGUgcnVubmluZyBkcGtnIHN1cHBvcnRzICIKKyJ0cmlnZ2Vycy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIk9yZHJlczpcbiIKKyIgIC0tY2hlY2stc3VwcG9ydGVkICAgICAgICAgICAgICAgIENvbXByb3ZhIHNpIGVsIGRwa2cgZW4gZXhlY3VjacOzICIKKyJpbXBsZW1lbnRhIGFjdGl2YWRvcnMuXG4iCisiXG4iCisKKyMgdHJpZ2dlciBhd2FpdGVyPyBXVEYhIGptCisjOiBzcmMvdHJpZ2NtZC5jOjgyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hZG1pbmRpcj08ZGlyZWN0b3J5PiAgICAgICAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMuXG4iCisiICAtLWJ5LXBhY2thZ2U9PHBhY2thZ2U+ICAgICAgICAgICBPdmVycmlkZSB0cmlnZ2VyIGF3YWl0ZXIgKG5vcm1hbGx5IHNldFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBieSBkcGtnKS5cbiIKKyIgIC0tbm8tYXdhaXQgICAgICAgICAgICAgICAgICAgICAgIE5vIHBhY2thZ2UgbmVlZHMgdG8gYXdhaXQgdGhlICIKKyJwcm9jZXNzaW5nLlxuIgorIiAgLS1uby1hY3QgICAgICAgICAgICAgICAgICAgICAgICAgSnVzdCB0ZXN0IC0gZG9uJ3QgYWN0dWFsbHkgY2hhbmdlICIKKyJhbnl0aGluZy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIk9wY2lvbnM6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcmk+ICAgICAgICAgIEVtcHJhIDxkaXJlY3Rvcmk+IGVuIGxsb2MgZGUgJXMuXG4iCisiICAtLWJ5LXBhY2thZ2U9PHBhcXVldD4gICAgICAgICAgIERlc2NhcnRhIGwnZXNwZXJhIGRlIGwnYWN0aXZhZG9yXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChub3JtYWxtZW50IGVzdGFibGVydGEgcGVsIGRwa2cpLlxuIgorIiAgLS1uby1hd2FpdCAgICAgICAgICAgICAgICAgICAgICBDYXAgcGFxdWV0IG5lY2Vzc2l0YSBlc3BlcmFyIGVsICIKKyJwcm9jZXNzYXQuXG4iCisiICAtLW5vLWFjdCAgICAgICAgICAgICAgICAgICAgICAgIE5vbcOpcyBjb21wcm92YSwgbm8gY2FudmllcyByZXMuXG4iCisiXG4iCisKKyM6IHNyYy90cmlnY21kLmM6MTUyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB0cmlnZ2VycyBkYXRhIGRpcmVjdG9yeSBub3QgeWV0IGNyZWF0ZWRcbiIKK21zZ3N0ciAiJXM6IGVuY2FyYSBubyBzJ2hhIGNyZWF0IGVsIGRpcmVjdG9yaSBkZSBkYWRlcyBkZWxzIGFjdGl2YWRvcnNcbiIKKworIzogc3JjL3RyaWdjbWQuYzoxNTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IHRyaWdnZXIgcmVjb3JkcyBub3QgeWV0IGluIGV4aXN0ZW5jZVxuIgorbXNnc3RyICIlczogZW5jYXJhIG5vIGV4aXN0ZWl4ZW4gZWxzIHJlZ2lzdHJlcyBkZWxzIGFjdGl2YWRvcnNcbiIKKworIzogc3JjL3RyaWdjbWQuYzoyMDUKK21zZ2lkICJ0YWtlcyBvbmUgYXJndW1lbnQsIHRoZSB0cmlnZ2VyIG5hbWUiCittc2dzdHIgIm5vbcOpcyBwcmVuIHVuIGFyZ3VtZW50LCBlbCBub20gZGUgbCdhY3RpdmFkb3IiCisKKyM6IHNyYy90cmlnY21kLmM6MjEwCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJkcGtnLXRyaWdnZXIgbXVzdCBiZSBjYWxsZWQgZnJvbSBhIG1haW50YWluZXIgc2NyaXB0IChvciB3aXRoIGEgLS1ieS0iCisjfCAicGFja2FnZSBvcHRpb24pIgorbXNnaWQgIm11c3QgYmUgY2FsbGVkIGZyb20gYSBtYWludGFpbmVyIHNjcmlwdCAob3Igd2l0aCBhIC0tYnktcGFja2FnZSBvcHRpb24pIgorbXNnc3RyICIiCisicydoYSBkJ2V4ZWN1dGFyIGRwa2ctdHJpZ2dlciBkZXMgZCd1biBzY3JpcHQgZGUgbWFudGVuaWRvciAobyBhbWIgdW5hIG9wY2nDsyAiCisiLS1ieS1wYWNrYWdlKSIKKworIzogc3JjL3RyaWdjbWQuYzoyMTUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImRwa2ctdHJpZ2dlcjogaWxsZWdhbCBhd2FpdGVkIHBhY2thZ2UgbmFtZSBgJS4yNTBzJzogJS4yNTBzIgorbXNnaWQgImlsbGVnYWwgYXdhaXRlZCBwYWNrYWdlIG5hbWUgJyUuMjUwcyc6ICUuMjUwcyIKK21zZ3N0ciAiZHBrZy10cmlnZ2VyOiBlbCBub20gZGUgcGFxdWV0IGVzcGVyYXQgwqslLjI1NXPCuyDDqXMgacWAbGVnYWw6ICUuMjUwcyIKKworIzogc3JjL3RyaWdjbWQuYzoyMjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCB0cmlnZ2VyIG5hbWUgYCUuMjUwcyc6ICUuMjUwcyIKK21zZ3N0ciAiZWwgbm9tIGQnYWN0aXZhZG9yIMKrJS4yNTBzwrsgw6lzIGludsOgbGlkOiAlLjI1MHPCuyIKKworIzogc3JjL3RyaWdwcm9jLmM6MjUwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogY3ljbGUgZm91bmQgd2hpbGUgcHJvY2Vzc2luZyB0cmlnZ2VyczpcbiIKKyIgY2hhaW4gb2YgcGFja2FnZXMgd2hvc2UgdHJpZ2dlcnMgYXJlIG9yIG1heSBiZSByZXNwb25zaWJsZTpcbiIKK21zZ3N0ciAiIgorIiVzOiBzJ2hhIHRyb2JhdCB1biBidWNsZSBtZW50cmUgZXMgcHJvY2Vzc2F2ZW4gZWxzIGFjdGl2YWRvcnM6XG4iCisiIGNhZGVuYSBkZSBwYXF1ZXRzIGFjdGl2YWRvcnMgZGVscyBxdWFscyBzw7NuIG8gcG9kcmllbiBzZXIgZWxzICIKKyJyZXNwb25zYWJsZXM6XG4iCisKKyM6IHNyYy90cmlncHJvYy5jOjI1OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiIHBhY2thZ2VzJyBwZW5kaW5nIHRyaWdnZXJzIHdoaWNoIGFyZSBvciBtYXkgYmUgdW5yZXNvbHZhYmxlOlxuIgorbXNnc3RyICIiCisiXG4iCisiYWN0aXZhZG9ycyBwZW5kZW50cyBkZSBwYXF1ZXRzIHF1ZSBzw7NuIG8gcG9kZW4gc2VyIGlycmVzb2x1YmxlczpcbiIKKworIzogc3JjL3RyaWdwcm9jLmM6MjgxCittc2dpZCAidHJpZ2dlcnMgbG9vcGluZywgYWJhbmRvbmVkIgorbXNnc3RyICJoaSBoYSB1biBidWNsZSBkJ2FjdGl2YWRvcnMsIHMnaGEgYWJhbmRvbmF0IgorCisjOiBzcmMvdHJpZ3Byb2MuYzozMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHJvY2Vzc2luZyB0cmlnZ2VycyBmb3IgJXMgLi4uXG4iCittc2dzdHIgIlMnZXN0YW4gcHJvY2Vzc2FudCBlbHMgYWN0aXZhZG9ycyBwZXIgYSAlc+KAplxuIgorCisjOiBzcmMvdXBkYXRlLmM6NTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIi0tJXMgbmVlZHMgZXhhY3RseSBvbmUgUGFja2FnZXMgZmlsZSBhcmd1bWVudCIKK21zZ2lkICItLSVzIG5lZWRzIGV4YWN0bHkgb25lIFBhY2thZ2VzLWZpbGUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMgbmVjZXNzaXRhIGV4YWN0YW1lbnQgdW4gZml0eGVyIFBhY2thZ2VzIGNvbSBhIGFyZ3VtZW50IgorCisjOiBzcmMvdXBkYXRlLmM6NjIKK21zZ2lkICJ1bmFibGUgdG8gYWNjZXNzIGRwa2cgc3RhdHVzIGFyZWEgZm9yIGJ1bGsgYXZhaWxhYmxlIHVwZGF0ZSIKK21zZ3N0ciAiIgorIm5vIGVzIHBvdCBhY2NlZGlyIGEgbCfDoHJlYSBkJ2VzdGF0IGRlIGRwa2cgcGVyIGEgdW5hIGFjdHVhbGl0emFjacOzIGRlICIKKyLCq2F2YWlsYWJsZcK7IgorCisjOiBzcmMvdXBkYXRlLmM6NjQKK21zZ2lkICJidWxrIGF2YWlsYWJsZSB1cGRhdGUgcmVxdWlyZXMgd3JpdGUgYWNjZXNzIHRvIGRwa2cgc3RhdHVzIGFyZWEiCittc2dzdHIgIiIKKyJsJ2FjdHVhbGl0emFjacOzIGQnwqthdmFpbGFibGXCuyByZXF1ZXJlaXggYWNjw6lzIGQnZXNjcmlwdHVyYSBhIGwnw6ByZWEgZCdlc3RhdCAiCisiZGUgZHBrZyIKKworIzogc3JjL3VwZGF0ZS5jOjcxCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlcGxhY2luZyBhdmFpbGFibGUgcGFja2FnZXMgaW5mbywgdXNpbmcgJXMuXG4iCittc2dzdHIgIiIKKyJTJ2VzdMOgIHJlZW1wbGHDp2FudCBsYSBpbmZvcm1hY2nDsyBkZSBwYXF1ZXRzIGRpc3BvbmlibGVzLCBmZW50IHNlcnZpciAlcy5cbiIKKworIzogc3JjL3VwZGF0ZS5jOjc0CisjLCBjLWZvcm1hdAorbXNnaWQgIlVwZGF0aW5nIGF2YWlsYWJsZSBwYWNrYWdlcyBpbmZvLCB1c2luZyAlcy5cbiIKK21zZ3N0ciAiIgorIlMnZXN0w6AgYWN0dWFsaXR6YW50IGxhIGluZm9ybWFjacOzIGRlIHBhcXVldHMgZGlzcG9uaWJsZXMsIGZlbnQgc2VydmlyICVzLlxuIgorCisjOiBzcmMvdXBkYXRlLmM6MTAxCisjLCBjLWZvcm1hdAorbXNnaWQgIkluZm9ybWF0aW9uIGFib3V0ICVkIHBhY2thZ2Ugd2FzIHVwZGF0ZWQuXG4iCittc2dpZF9wbHVyYWwgIkluZm9ybWF0aW9uIGFib3V0ICVkIHBhY2thZ2VzIHdhcyB1cGRhdGVkLlxuIgorbXNnc3RyWzBdICJTJ2hhIGFjdHVhbGl0emF0IGxhIGluZm9ybWFjacOzIHNvYnJlICVkIHBhcXVldFxuIgorbXNnc3RyWzFdICJTJ2hhIGFjdHVhbGl0emF0IGxhIGluZm9ybWFjacOzIHNvYnJlICVkIHBhcXVldHMuXG4iCisKKyM6IHNyYy91cGRhdGUuYzoxMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm9ic29sZXRlICctLSVzJyBvcHRpb24sIHVuYXZhaWxhYmxlIHBhY2thZ2VzIGFyZSBhdXRvbWF0aWNhbGx5IGNsZWFuZWQgdXAuIgorbXNnc3RyICIiCisibCdvcGNpw7MgwqstLSVzwrsgw6lzIG9ic29sZXRhLCBlbHMgcGFxdWV0cyBubyBkaXNwb25pYmxlcyBlcyBuZXRlZ2VuICIKKyJhdXRvbcOgdGljYW1lbnQuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIG5hbWUgJyUuNTBzLi4uJyBpcyB0b28gbG9uZyIKK21zZ3N0ciAiZWwgbm9tIGRlbCBmaXR4ZXIgwqslLjUwc+KApsK7IMOpcyBtYXNzYSBsbGFyZyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoxMjkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgZmlsZSBuYW1lICclLjI1MHMnIgorbXNnc3RyICJubyBlcyBwb3QgZmVyIMKrc3RhdMK7IHNvYnJlIGVsIG5vbSBkZSBmaXR4ZXIgwqslLjI1MHPCuyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoxODkKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBjb250cm9sIGRpcmVjdG9yeSIKK21zZ3N0ciAibm8gZXMgcG90IGZlciDCq3N0YXTCuyBzb2JyZSBlbCBkaXJlY3RvcmkgZGUgY29udHJvbCIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoxOTEKK21zZ2lkICJjb250cm9sIGRpcmVjdG9yeSBpcyBub3QgYSBkaXJlY3RvcnkiCittc2dzdHIgImVsIGRpcmVjdG9yaSBkZSBjb250cm9sIG5vIMOpcyB1biBkaXJlY3RvcmkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTkzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbnRyb2wgZGlyZWN0b3J5IGhhcyBiYWQgcGVybWlzc2lvbnMgJTAzbG8gKG11c3QgYmUgPj0wNzU1IGFuZCA8PTA3NzUpIgorbXNnc3RyICIiCisiZWwgZGlyZWN0b3JpIGRlIGNvbnRyb2wgdMOpIHBlcm1pc29zIGVycm9uaXMgJTAzbG8gKGhhIGRlIHNlciA+PTA3NTUgaSA8PTA3NzUpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjIwNAorIywgYy1mb3JtYXQKK21zZ2lkICJtYWludGFpbmVyIHNjcmlwdCBgJS41MHMnIGlzIG5vdCBhIHBsYWluIGZpbGUgb3Igc3ltbGluayIKK21zZ3N0ciAibGEgc2Vxw7zDqG5jaWEgwqslLjUwc8K7IG5vIMOpcyB1biBmaXR4ZXIgbm9ybWFsIG8gdW4gZW5sbGHDpyBzaW1iw7JsaWMiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjA3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJtYWludGFpbmVyIHNjcmlwdCBgJS41MHMnIGhhcyBiYWQgcGVybWlzc2lvbnMgJTAzbG8gKG11c3QgYmUgPj0wNTU1IGFuZCAiCisiPD0wNzc1KSIKK21zZ3N0ciAiIgorImxhIHNlccO8w6huY2lhIMKrJS41MHPCuyB0w6kgcGVybWlzb3MgZXJyb25pcyAlMDNsbyAoaGEgZGUgc2VyID49MDU1NSBpIDw9MDc3NSkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjExCisjLCBjLWZvcm1hdAorbXNnaWQgIm1haW50YWluZXIgc2NyaXB0IGAlLjUwcycgaXMgbm90IHN0YXR0YWJsZSIKK21zZ3N0ciAibm8gZXMgcG90IGZlciDCq3N0YXTCuyBzb2JyZSBsYSBzZXHDvMOobmNpYSDCqyUuNTBzwrsiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjM3Cittc2dpZCAiZXJyb3Igb3BlbmluZyBjb25mZmlsZXMgZmlsZSIKK21zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBsJ29icmlyIGVsIGZpdHhlciBkZSBjb25mZmlsZXMiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjQ2Cittc2dpZCAiZW1wdHkgc3RyaW5nIGZyb20gZmdldHMgcmVhZGluZyBjb25mZmlsZXMiCittc2dzdHIgImNhZGVuYSBidWlkYSBkZSDCq2ZnZXRzwrsgZW4gbGxlZ2lyIGNvbmZmaWxlcyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgbmFtZSAnJS41MHMuLi4nIGlzIHRvbyBsb25nLCBvciBtaXNzaW5nIGZpbmFsIG5ld2xpbmUiCittc2dzdHIgIiIKKyJlbCBub20gZGUgY29uZmZpbGUgwqslLjUwc+KApsK7IMOpcyBtYXNzYSBsbGFyZywgbyBsaSBtYW5jYSBlbCBjYXLDoGN0ZXIgZGUgbMOtbmlhICIKKyJub3ZhIGZpbmFsIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI2NAorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBmaWxlbmFtZSAnJXMnIGNvbnRhaW5zIHRyYWlsaW5nIHdoaXRlIHNwYWNlcyIKK21zZ3N0ciAiZWwgbm9tIGRlbCBjb25mZmlsZSDCqyVzwrsgY29udMOpIGVzcGFpcyBlbiBibGFuYyBhbCBmaW5hbCIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgYCUuMjUwcycgZG9lcyBub3QgYXBwZWFyIGluIHBhY2thZ2UiCittc2dzdHIgImVsIGNvbmZmaWxlIMKrJS4yNTBzwrsgbm8gZXN0w6AgZGlucyBkZWwgcGFxdWV0IgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI2OAorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBgJS4yNTBzJyBpcyBub3Qgc3RhdHRhYmxlIgorbXNnc3RyICJubyBlcyBwb3QgZmVyIMKrc3RhdMK7IHNvYnJlIGVsIGNvbmZmaWxlIMKrJS4yNTBzwrsiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjcwCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlICclcycgaXMgbm90IGEgcGxhaW4gZmlsZSIKK21zZ3N0ciAiZWwgY29uZmZpbGUgwqslc8K7IG5vIMOpcyB1biBmaXR4ZXIgbm9ybWFsIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI3NAorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBuYW1lICclcycgaXMgZHVwbGljYXRlZCIKK21zZ3N0ciAiZWwgbm9tIGRlbCBjb25mZmlsZSDCqyVzwrsgZXN0w6AgZHVwbGljYXQiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6Mjg3Cittc2dpZCAiZXJyb3IgcmVhZGluZyBjb25mZmlsZXMgZmlsZSIKK21zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBsbGVnaXIgZWwgZml0eGVyIGRlIGNvbmZmaWxlcyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzozMzkKK21zZ2lkICJwYWNrYWdlIG5hbWUgaGFzIGNoYXJhY3RlcnMgdGhhdCBhcmVuJ3QgbG93ZXJjYXNlIGFscGhhbnVtcyBvciBgLSsuJyIKK21zZ3N0ciAiIgorImVsIG5vbSBkZWwgcGFxdWV0IHTDqSBjYXLDoGN0ZXJzIHF1ZSBubyBzw7NuIG1pbsO6c2N1bGVzLCBhbGZhbnVtw6hyaWNzIG8gwqstK8K7LiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzozNDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBjb250YWlucyB1c2VyLWRlZmluZWQgUHJpb3JpdHkgdmFsdWUgJyVzJyIKK21zZ3N0ciAiwqslc8K7IGNvbnTDqSB1biB2YWxvciBQcmlvcml0eSDCqyVzwrsgZGVmaW5pdCBwZXIgbCd1c3VhcmkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MzQ3CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgY29udGFpbnMgdXNlci1kZWZpbmVkIGZpZWxkICclcyciCittc2dzdHIgIsKrJXPCuyBjb250w6kgdW4gY2FtcCDCqyVzwrsgZGVmaW5pdCBwZXIgbCd1c3VhcmkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MzU4CisjLCBjLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nICVkIHdhcm5pbmcgYWJvdXQgdGhlIGNvbnRyb2wgZmlsZShzKVxuIgorbXNnaWRfcGx1cmFsICJpZ25vcmluZyAlZCB3YXJuaW5ncyBhYm91dCB0aGUgY29udHJvbCBmaWxlKHMpXG4iCittc2dzdHJbMF0gInMnb21ldCAlZCBhdsOtcyBzb2JyZSBlbHMgZml0eGVycyBkZSBjb250cm9sXG4iCittc2dzdHJbMV0gInMnb21ldGVuICVkIGF2aXNvcyBzb2JyZSBlbHMgZml0eGVycyBkZSBjb250cm9sXG4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDAzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDI5CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQzNgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGEgPGRpcmVjdG9yeT4gYXJndW1lbnQiCittc2dzdHIgIi0tJXMgbmVjZXNzaXRhIHVuIDxkaXJlY3Rvcmk+IGNvbSBhIHBhcsOgbWV0cmUiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDA5Cittc2dpZCAiLS1idWlsZCB0YWtlcyBhdCBtb3N0IHR3byBhcmd1bWVudHMiCittc2dzdHIgIi0tYnVpbGQgcG9ydGEgY29tIGEgbW9sdCBkb3MgYXJndW1lbnRzIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQxMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hlY2sgZm9yIGV4aXN0ZW5jZSBvZiBhcmNoaXZlIGAlLjI1MHMnIgorbXNnc3RyICJubyBlcyBwb3QgY29tcHJvdmFyIGwnZXhpc3TDqG5jaWEgZGUgbCdhcnhpdSDCqyUuMjUwc8K7IgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQzMAorbXNnaWQgInRhcmdldCBpcyBkaXJlY3RvcnkgLSBjYW5ub3Qgc2tpcCBjb250cm9sIGZpbGUgY2hlY2siCittc2dzdHIgIiIKKyJsJ29iamVjdGl1IMOpcyB1biBkaXJlY3RvcmkgLSBubyBlcyBwb3Qgb21ldHJlIGxhIGNvbXByb3ZhY2nDsyBkZWwgZml0eGVyIGRlICIKKyJjb250cm9sIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQzMQorbXNnaWQgIm5vdCBjaGVja2luZyBjb250ZW50cyBvZiBjb250cm9sIGFyZWEuIgorbXNnc3RyICJubyBlcyBjb21wcm92YSBlbCBjb250aW5ndXQgZGUgbCfDoHJlYSBkZSBjb250cm9sLiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZy1kZWI6IGJ1aWxkaW5nIGFuIHVua25vd24gcGFja2FnZSBpbiAnJXMnLlxuIgorbXNnc3RyICJkcGtnLWRlYjogcydlc3TDoCBjb25zdHJ1aW50IHVuIHBhcXVldCBkZXNjb25lZ3V0IGVuIMKrJXPCuy5cbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZy1kZWI6IGJ1aWxkaW5nIHBhY2thZ2UgYCVzJyBpbiBgJXMnLlxuIgorbXNnc3RyICJkcGtnLWRlYjogcydlc3TDoCBjb25zdHJ1aW50IGVsIHBhcXVldCDCqyVzwrsgZW4gwqslc8K7LlxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ2NyBkcGtnLWRlYi9idWlsZC5jOjUyMQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIG1ha2UgdG1wZmlsZSAoZGF0YSkiCittc2dpZCAiZmFpbGVkIHRvIG1ha2UgdGVtcG9yYXJ5IGZpbGUgKCVzKSIKK21zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBjcmVhciBlbCBmaXR4ZXIgdGVtcG9yYWwgKGRhdGEpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ2NyBkcGtnLWRlYi9idWlsZC5jOjQ3MCBkcGtnLWRlYi9idWlsZC5jOjQ3NworIzogZHBrZy1kZWIvYnVpbGQuYzo0ODUgZHBrZy1kZWIvYnVpbGQuYzo0OTQgZHBrZy1kZWIvYnVpbGQuYzo0OTkKKyMsIGZ1enp5CisjfCBtc2dpZCAiY29udHJvbCBhcmVhIgorbXNnaWQgImNvbnRyb2wgbWVtYmVyIgorbXNnc3RyICLDoHJlYSBkZSBjb250cm9sIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ3MCBkcGtnLWRlYi9idWlsZC5jOjUyNAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIHVubGluayB0bXBmaWxlIChkYXRhKSwgJXMiCittc2dpZCAiZmFpbGVkIHRvIHVubGluayB0ZW1wb3JhcnkgZmlsZSAoJXMpLCAlcyIKK21zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBlc2JvcnJhciBlbCBmaXR4ZXIgdGVtcG9yYWwgKGRhdGEpLCAlcyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0ODUgZHBrZy1kZWIvYnVpbGQuYzo1OTMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdG1wZmlsZSAoZGF0YSkiCittc2dpZCAiZmFpbGVkIHRvIHJld2luZCB0ZW1wb3JhcnkgZmlsZSAoJXMpIgorbXNnc3RyICJzJ2hhIHByb2R1w690IHVuIGVycm9yIGFsIGZlciDCq3Jld2luZMK7IHNvYnJlIGVsIGZpdHhlciB0ZW1wb3JhbCAoZGF0YSkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDk0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gZnN0YXQgYXIgbWVtYmVyIGZpbGUgKCVzKSIKK21zZ2lkICJmYWlsZWQgdG8gc3RhdCB0ZW1wb3JhcnkgZmlsZSAoJXMpIgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGZlciDCq2ZzdGF0wrsgZGVsIGZpdHhlciBtZW1icmUgZCdhciAoJXMpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ5OAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciB3cml0aW5nIGAlcyciCittc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gZXNjcml1cmUgwqslc8K7IgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjUyMSBkcGtnLWRlYi9idWlsZC5jOjUyNCBkcGtnLWRlYi9idWlsZC5jOjU0NgorIzogZHBrZy1kZWIvYnVpbGQuYzo1NzIgZHBrZy1kZWIvYnVpbGQuYzo1ODAgZHBrZy1kZWIvYnVpbGQuYzo1OTMKKyMsIGZ1enp5CisjfCBtc2dpZCAiYmV0d2VlbiBtZW1iZXJzIgorbXNnaWQgImRhdGEgbWVtYmVyIgorbXNnc3RyICJlbnRyZSBuw7ptZXJvcyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo1NzEgZHBrZy1kZWIvYnVpbGQuYzo1ODAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byB3cml0ZSBmaWxlbmFtZSB0byB0YXIgcGlwZSAoZGF0YSkiCittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIGZpbGVuYW1lIHRvIHRhciBwaXBlICglcykiCittc2dzdHIgIiIKKyJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIGVzY3JpdXJlIGVsIG5vbSBkZWwgZml0eGVyIGFsIGNvbmR1Y3RlIGRlIHRhciAoZGF0YSkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTg0Cittc2dpZCAiPGNvbXByZXNzPiBmcm9tIHRhciAtY2YiCittc2dzdHIgIjxjb21wcmVzcz4gZGVzIGRlIHRhciAtY2YiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzo2MSBkcGtnLWRlYi9leHRyYWN0LmM6NjMKK21zZ2lkICJzaGVsbCBjb21tYW5kIHRvIG1vdmUgZmlsZXMiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjcwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGZpbGUgaW4gJXMgaW4gJS4yNTVzIgorbXNnc3RyICJmaSBkZSBmaXR4ZXIgaW5lc3BlcmFkYSBlbiAlcyBlbiAlLjI1NXMiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzo3MgorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciByZWFkaW5nICVzIGZyb20gZmlsZSAlLjI1NXMiCittc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gbGxlZ2lyICVzIGRlbCBmaXR4ZXIgJS4yNTVzIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTI1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZWFkIGFyY2hpdmUgYCUuMjU1cyciCittc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gbGxlZ2lyIGwnYXJ4aXUgwqslLjI1NXPCuyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjEyNworbXNnaWQgImZhaWxlZCB0byBmc3RhdCBhcmNoaXZlIgorbXNnc3RyICJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIGZlciDCq2ZzdGF0wrsgc29icmUgbCdhcnhpdSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjEzMQorIywgZnV6enkKKyN8IG1zZ2lkICJhcmNoaXZlIGhhcyBubyBkb3QgaW4gdmVyc2lvbiBudW1iZXIiCittc2dpZCAiYXJjaGl2ZSBtYWdpYyB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAibCdhcnhpdSBubyB0w6kgY2FwIHB1bnQgZW4gZWwgbsO6bWVybyBkZSB2ZXJzacOzIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTQzCisjLCBmdXp6eQorI3wgbXNnaWQgImFyY2hpdmUgaGFzIG5vIG5ld2xpbmVzIGluIGhlYWRlciIKK21zZ2lkICJhcmNoaXZlIG1lbWJlciBoZWFkZXIiCittc2dzdHIgImwnYXJ4aXUgbm8gdMOpIGNhcsOgY3RlcnMgZGUgbMOtbmlhIG5vdmEgZW4gbGEgY2Fww6dhbGVyYSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE0OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIHBhcnQgbnVtYmVyIgorbXNnaWQgImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBhcmNoaXZlIGhlYWRlciBtYWdpYyIKK21zZ3N0ciAiZWwgZml0eGVyIMKrJS4yNTBzwrsgZXN0w6AgY29ycm9tcHV0IC0gbsO6bWVybyBkZSBwYXJ0IGVycm9uaSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE1NQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIG5vdCBhIGRlYmlhbiBiaW5hcnkgYXJjaGl2ZSAodHJ5IGRwa2ctc3BsaXQ/KSIKK21zZ3N0ciAiIgorImVsIGZpdHhlciDCqyUuMjUwc8K7IG5vIMOpcyB1biBhcnhpdSBiaW5hcmkgZGUgZGViaWFuIChwcm92ZXUgYW1iIGVsIGRwa2ctIgorInNwbGl0PykiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNTkKKyMsIGZ1enp5CisjfCBtc2dpZCAiYXJjaGl2ZSBoYXMgbm8gZG90IGluIHZlcnNpb24gbnVtYmVyIgorbXNnaWQgImFyY2hpdmUgaW5mb3JtYXRpb24gaGVhZGVyIG1lbWJlciIKK21zZ3N0ciAibCdhcnhpdSBubyB0w6kgY2FwIHB1bnQgZW4gZWwgbsO6bWVybyBkZSB2ZXJzacOzIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTYyCittc2dpZCAiYXJjaGl2ZSBoYXMgbm8gbmV3bGluZXMgaW4gaGVhZGVyIgorbXNnc3RyICJsJ2FyeGl1IG5vIHTDqSBjYXLDoGN0ZXJzIGRlIGzDrW5pYSBub3ZhIGVuIGxhIGNhcMOnYWxlcmEiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNjUKK21zZ2lkICJhcmNoaXZlIGhhcyBubyBkb3QgaW4gdmVyc2lvbiBudW1iZXIiCittc2dzdHIgImwnYXJ4aXUgbm8gdMOpIGNhcCBwdW50IGVuIGVsIG7Dum1lcm8gZGUgdmVyc2nDsyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE2OAorIywgYy1mb3JtYXQKK21zZ2lkICJhcmNoaXZlIHZlcnNpb24gJS4yNTBzIG5vdCB1bmRlcnN0b29kLCBnZXQgbmV3ZXIgZHBrZy1kZWIiCittc2dzdHIgIm5vIHMnZW50w6luIGxhIHZlcnNpw7MgJS4yNTBzIGRlIGwnYXJ4aXUsIGFjb25zZWd1aXUgdW4gZHBrZy1kZWIgbcOpcyBub3UiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNzkgZHBrZy1kZWIvZXh0cmFjdC5jOjIwNQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic2tpcHBlZCBtZW1iZXIgZGF0YSBmcm9tICVzIgorbXNnaWQgInNraXBwZWQgYXJjaGl2ZSBtZW1iZXIgZGF0YSBmcm9tICVzIgorbXNnc3RyICJzJ29tZXQgbCdlbGVtZW50IGRlICVzIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTk0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGNvbnRhaW5zIHVudW5kZXJzdG9vZCBkYXRhIG1lbWJlciAlLipzLCBnaXZpbmcgdXAiCittc2dpZCAiYXJjaGl2ZSAnJS4yNTBzJyBjb250YWlucyBub3QgdW5kZXJzdG9vZCBkYXRhIG1lbWJlciAlLipzLCBnaXZpbmcgdXAiCittc2dzdHIgImVsIGZpdHhlciDCqyUuMjUwc8K7IGNvbnTDqSB1biBlbGVtZW50ICUuKnMgaW5pbnRlxYBsaWdpYmxlLCBzJ2FiYW5kb25hIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTk5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGNvbnRhaW5zIHR3byBjb250cm9sIG1lbWJlcnMsIGdpdmluZyB1cCIKK21zZ2lkICJhcmNoaXZlICclLjI1MHMnIGNvbnRhaW5zIHR3byBjb250cm9sIG1lbWJlcnMsIGdpdmluZyB1cCIKK21zZ3N0ciAiZWwgZml0eGVyIMKrJS4yNTBzwrsgY29udMOpIGRvcyBlbGVtZW50cyBkZSBjb250cm9sLCBzJ2FiYW5kb25hIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjE0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiIG5ldyBkZWJpYW4gcGFja2FnZSwgdmVyc2lvbiAlcy5cbiIKKyN8ICIgc2l6ZSAlbGQgYnl0ZXM6IGNvbnRyb2wgYXJjaGl2ZT0gJXppIGJ5dGVzLlxuIgorbXNnaWQgIiIKKyIgbmV3IGRlYmlhbiBwYWNrYWdlLCB2ZXJzaW9uICVzLlxuIgorIiBzaXplICVqZCBieXRlczogY29udHJvbCBhcmNoaXZlPSAlamQgYnl0ZXMuXG4iCittc2dzdHIgIiIKKyIgcGFxdWV0IGRlIGRlYmlhbiBub3UsIHZlcnNpw7MgJXMuXG4iCisiIG1pZGEgJWxkIG9jdGV0czogYXJ4aXUgZGUgY29udHJvbD0gJXppIG9jdGV0cy5cbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIzMgorbXNnaWQgImFyY2hpdmUgY29udHJvbCBtZW1iZXIgc2l6ZSIKK21zZ3N0ciAiIgorCisjIEZJWE1FIG9yaWdpbmFsCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjM1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJhcmNoaXZlIGhhcyBtYWxmb3JtYXR0ZWQgY29udHJvbCBsZW5ndGggYCVzJyIKK21zZ2lkICJhcmNoaXZlIGhhcyBtYWxmb3JtYXR0ZWQgY29udHJvbCBtZW1iZXIgc2l6ZSAnJXMnIgorbXNnc3RyICJsJ2FyeGl1IHTDqSB1bmEgbG9uZ2l0dWQgZGUgY29udHJvbCBtYWwgZm9ybWF0YWRhIMKrJXPCuyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI0MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic2tpcHBlZCBtZW1iZXIgZGF0YSBmcm9tICVzIgorbXNnaWQgInNraXBwZWQgYXJjaGl2ZSBjb250cm9sIG1lbWJlciBkYXRhIGZyb20gJXMiCittc2dzdHIgInMnb21ldCBsJ2VsZW1lbnQgZGUgJXMiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNDYKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIgb2xkIGRlYmlhbiBwYWNrYWdlLCB2ZXJzaW9uICVzLlxuIgorI3wgIiBzaXplICVsZCBieXRlczogY29udHJvbCBhcmNoaXZlPSAlemksIG1haW4gYXJjaGl2ZT0gJWxkLlxuIgorbXNnaWQgIiIKKyIgb2xkIGRlYmlhbiBwYWNrYWdlLCB2ZXJzaW9uICVzLlxuIgorIiBzaXplICVqZCBieXRlczogY29udHJvbCBhcmNoaXZlPSAlamQsIG1haW4gYXJjaGl2ZT0gJWpkLlxuIgorbXNnc3RyICIiCisiIHBhcXVldCBkZWJpYW4gYW50aWMsIHZlcnNpw7MgJXMuXG4iCisiIG1pZGEgJWxkIG9jdGV0czogYXJ4aXUgZGUgY29udHJvbD0gJXppLCBhcnhpdSBwcmluY2lwYWw9ICVsZC5cbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI1NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZy1kZWI6IGZpbGUgbG9va3MgbGlrZSBpdCBtaWdodCBiZSBhbiBhcmNoaXZlIHdoaWNoIGhhcyBiZWVuXG4iCisiZHBrZy1kZWI6ICAgIGNvcnJ1cHRlZCBieSBiZWluZyBkb3dubG9hZGVkIGluIEFTQ0lJIG1vZGVcbiIKK21zZ3N0ciAiIgorImRwa2ctZGViOiBlbCBmaXR4ZXIgc2VtYmxhIHNlciB1biBhcnhpdSBxdWUgaGEgZXN0YXQgY29ycm9tcHV0XG4iCisiZHBrZy1kZWIgICAgIGFsIHNlciBkZXNjYXJyZWdhdCBlbiBtb2RlIEFTQ0lJXG4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCUuMjU1cycgaXMgbm90IGEgZGViaWFuIGZvcm1hdCBhcmNoaXZlIgorbXNnc3RyICLCqyUuMjU1c8K7IG5vIMOpcyB1biBhcnhpdSBhbWIgZWwgZm9ybWF0IGRlYmlhbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI2NgorbXNnaWQgImZhaWxlZCB0byB3cml0ZSB0byBwaXBlIGluIGNvcHkiCittc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gZXNjcml1cmUgYWwgY29uZHVjdGUgZW4gbGEgY8OycGlhIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjY4Cittc2dpZCAiZmFpbGVkIHRvIGNsb3NlIHBpcGUgaW4gY29weSIKK21zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiB0YW5jYXIgZWwgY29uZHVjdGUgZW4gbGEgY8OycGlhIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6Mjg0Cittc2dpZCAiZGF0YSIKK21zZ3N0ciAiZGFkZXMiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozMDcKK21zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gZGlyZWN0b3J5IgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGNhbnZpYXIgYWwgZGlyZWN0b3JpIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzEwCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBkaXJlY3RvcnkiCittc2dzdHIgIm5vIHMnaGEgcG9ndXQgY3JlYXIgZWwgZGlyZWN0b3JpIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzEyCittc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIGRpcmVjdG9yeSBhZnRlciBjcmVhdGluZyBpdCIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBjYW52aWFyIGEgdW4gZGlyZWN0b3JpIGRlc3Byw6lzIGRlIGNyZWFyLWxvIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzIzCittc2dpZCAiPGRlY29tcHJlc3M+IgorbXNnc3RyICI8ZGVzY29tcHJlc3Npw7M+IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzI1Cittc2dpZCAicGFzdGUiCittc2dzdHIgImVuZ2FueGEiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozNDIgZHBrZy1kZWIvZXh0cmFjdC5jOjM2MyBkcGtnLWRlYi9leHRyYWN0LmM6NDAyCisjOiBkcGtnLWRlYi9pbmZvLmM6NzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhIC5kZWIgZmlsZW5hbWUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMgbmVjZXNzaXRhIHVuIG5vbSBkZSBmaXR4ZXIgLmRlYiBjb20gYSBhcmd1bWVudCIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjM0NyBkcGtnLWRlYi9leHRyYWN0LmM6NDA2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyItLSVzIG5lZWRzIGEgdGFyZ2V0IGRpcmVjdG9yeS5cbiIKKyJQZXJoYXBzIHlvdSBzaG91bGQgYmUgdXNpbmcgZHBrZyAtLWluc3RhbGwgPyIKK21zZ3N0ciAiIgorIi0tJXMgbmVjZXNzaXRhIHVuIGRpcmVjdG9yaSBkZSBkZXN0w60uXG4iCisiUG90c2VyIHZvbGV1IGZlciBkcGtnIC0taW5zdGFsbD8iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozNTAgZHBrZy1kZWIvZXh0cmFjdC5jOjQxMAorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIHRha2VzIGF0IG1vc3QgdHdvIGFyZ3VtZW50cyAoLmRlYiBhbmQgZGlyZWN0b3J5KSIKK21zZ3N0ciAiLS0lcyBwcmVuIGNvbSBhIG1vbHQgZG9zIGFyZ3VtZW50cyAoLmRlYiBpIGRpcmVjdG9yaSkiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyB0YWtlcyBvbmx5IG9uZSBhcmd1bWVudCAoLmRlYiBmaWxlbmFtZSkiCittc2dzdHIgIi0tJXMgbm9tw6lzIHByZW4gdW4gYXJndW1lbnQgKGZpdHhlciAuZGViKSIKKworIzogZHBrZy1kZWIvaW5mby5jOjYzCittc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIGAvJyBmb3IgY2xlYW51cCIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBjYW52aWFyIGEgwqsvwrsgcGVyIGEgbGEgbmV0ZWphIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTA2CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW5ub3Qgc3RhdCBmaWxlICclcyciCittc2dpZCAiY29udHJvbCBmaWxlICclcyciCittc2dzdHIgIm5vIGVzIHBvdCBmZXIgwqtzdGF0wrsgc29icmUgZWwgZml0eGVyIMKrJXPCuyIKKworIzogZHBrZy1kZWIvaW5mby5jOjExMAorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnLWRlYjogYCUuMjU1cycgY29udGFpbnMgbm8gY29udHJvbCBjb21wb25lbnQgYCUuMjU1cydcbiIKK21zZ3N0ciAiZHBrZy1kZWI6IMKrJS4yNTVzwrsgbm8gY29udMOpIGNhcCBjb21wb25lbnQgZGUgY29udHJvbCAgwqslLjI1NXPCu1xuIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgIm9wZW4gY29tcG9uZW50IGAlLjI1NXMnIChpbiAlLjI1NXMpIGZhaWxlZCBpbiBhbiB1bmV4cGVjdGVkIHdheSIKK21zZ3N0ciAiIgorImwnb2JlcnR1cmEgZGVsIGNvbXBvbmVudCDCqyUuMjU1c8K7IChkaW5zIGRlICUuMjU1cykgaGEgZmFsbGF0IGRlIGZvcm1hICIKKyJpbmVzcGVyYWRhIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTIxCisjLCBjLWZvcm1hdAorbXNnaWQgIiVkIHJlcXVlc3RlZCBjb250cm9sIGNvbXBvbmVudCBpcyBtaXNzaW5nIgorbXNnaWRfcGx1cmFsICIlZCByZXF1ZXN0ZWQgY29udHJvbCBjb21wb25lbnRzIGFyZSBtaXNzaW5nIgorbXNnc3RyWzBdICJNYW5jYSBlbCBjb21wb25lbnQgZGUgY29udHJvbCByZXF1ZXJpdCAlZCIKK21zZ3N0clsxXSAiTWFucXVlbiBlbHMgY29tcG9uZW50cyBkZSBjb250cm9sIHJlcXVlcml0cyAlZCIKKworIzogZHBrZy1kZWIvaW5mby5jOjEzOSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NDI0CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzY2FuIGRpcmVjdG9yeSBgJS4yNTVzJyIKK21zZ3N0ciAibm8gZXMgcG90IGV4YW1pbmFyIGVsIGRpcmVjdG9yaSDCqyUuMjU1c8K7IgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTQ4CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzdGF0IGAlLjI1NXMnIChpbiBgJS4yNTVzJykiCittc2dzdHIgIm5vIGVzIHBvdCBmZXIgwqtzdGF0wrsgc29icmUgwqslLjI1NXPCuyAoZW4gwqslLjI1NXPCuykiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IG9wZW4gYCUuMjU1cycgKGluIGAlLjI1NXMnKSIKK21zZ3N0ciAibm8gZXMgcG90IG9icmlyIMKrJS4yNTVzwrsgKGVuIMKrJS4yNTVzwrspIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTY3IGRwa2ctZGViL2luZm8uYzoxODUgZHBrZy1kZWIvaW5mby5jOjE5OQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCBgJS4yNTVzJyAoaW4gYCUuMjU1cycpIgorbXNnc3RyICJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIGxsZWdpciDCqyUuMjU1c8K7IChlbiDCqyUuMjU1c8K7KSIKKworIzogZHBrZy1kZWIvaW5mby5jOjE3MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiICU3bGQgYnl0ZXMsICU1ZCBsaW5lcyAgICVjICAlLTIwLjEyN3MgJS4xMjdzXG4iCittc2dpZCAiICU3amQgYnl0ZXMsICU1ZCBsaW5lcyAgICVjICAlLTIwLjEyN3MgJS4xMjdzXG4iCittc2dzdHIgIiAlN2xkIG9jdGV0cywgJTVkIGzDrW5pZXMgICVjICAlLTIwLjEyN3MgJS4xMjdzXG4iCisKKyM6IGRwa2ctZGViL2luZm8uYzoxNzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAgICBub3QgYSBwbGFpbiBmaWxlICAgICAgICAgICUuMjU1c1xuIgorbXNnc3RyICIgICAgIG5vIMOpcyB1biBmaXR4ZXIgbm9ybWFsICAgJS4yNTVzXG4iCisKKyM6IGRwa2ctZGViL2luZm8uYzoxODYKK21zZ2lkICIobm8gYGNvbnRyb2wnIGZpbGUgaW4gY29udHJvbCBhcmNoaXZlISlcbiIKK21zZ3N0ciAiKG5vIGhpIGhhIGNhcCBmaXR4ZXIgwqtjb250cm9swrsgZW4gbCdhcnhpdSBkZSBjb250cm9sISlcbiIKKworIzogZHBrZy1kZWIvaW5mby5jOjIyMgorbXNnaWQgImNvdWxkIG5vdCBvcGVuIHRoZSBgY29udHJvbCcgY29tcG9uZW50IgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IG9icmlyIGVsIGNvbXBvbmVudCDCq2NvbnRyb2zCuyIKKworIzogZHBrZy1kZWIvaW5mby5jOjI2MQorbXNnaWQgImZhaWxlZCBkdXJpbmcgcmVhZCBvZiBgY29udHJvbCcgY29tcG9uZW50IgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGxsZWdpciBlbCBjb21wb25lbnQgwqtjb250cm9swrsiCisKKyM6IGRwa2ctZGViL2luZm8uYzoyNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyB0aGUgJyVzJyBjb21wb25lbnQiCittc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gdGFuY2FyIGVsIGNvbXBvbmVudCDCqyVzwrsiCisKKyM6IGRwa2ctZGViL2luZm8uYzoyNzgKK21zZ2lkICJFcnJvciBpbiBmb3JtYXQiCittc2dzdHIgIkVycm9yIGVuIGVsIGZvcm1hdCIKKworIzogZHBrZy1kZWIvaW5mby5jOjMyOAorbXNnaWQgIi0tY29udGVudHMgdGFrZXMgZXhhY3RseSBvbmUgYXJndW1lbnQiCittc2dzdHIgIi0tY29udGVudHMgcHJlbiBleGFjdGFtZW50IHVuIGFyZ3VtZW50IgorCisjOiBkcGtnLWRlYi9tYWluLmM6NTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuIGAlcycgcGFja2FnZSBhcmNoaXZlIGJhY2tlbmQgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiUmVyZWZvbnMgZCdhcnhpdXMgZGUgcGFxdWV0cyDCqyVzwrsgZGUgRGViaWFuIHZlcnNpw7MgJXMuXG4iCisKKyM6IGRwa2ctZGViL21haW4uYzo3MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIkNvbW1hbmRzOlxuIgorI3wgIiAgLWJ8LS1idWlsZCA8ZGlyZWN0b3J5PiBbPGRlYj5dICAgQnVpbGQgYW4gYXJjaGl2ZS5cbiIKKyN8ICIgIC1jfC0tY29udGVudHMgPGRlYj4gICAgICAgICAgICAgIExpc3QgY29udGVudHMuXG4iCisjfCAiICAtSXwtLWluZm8gPGRlYj4gWzxjZmlsZT4gLi4uXSAgICBTaG93IGluZm8gdG8gc3Rkb3V0LlxuIgorI3wgIiAgLVd8LS1zaG93IDxkZWI+ICAgICAgICAgICAgICAgICAgU2hvdyBpbmZvcm1hdGlvbiBvbiBwYWNrYWdlKHMpXG4iCisjfCAiICAtZnwtLWZpZWxkIDxkZWI+IFs8Y2ZpZWxkPiAuLi5dICBTaG93IGZpZWxkKHMpIHRvIHN0ZG91dC5cbiIKKyN8ICIgIC1lfC0tY29udHJvbCA8ZGViPiBbPGRpcmVjdG9yeT5dIEV4dHJhY3QgY29udHJvbCBpbmZvLlxuIgorI3wgIiAgLXh8LS1leHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+ICAgRXh0cmFjdCBmaWxlcy5cbiIKKyN8ICIgIC1YfC0tdmV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gIEV4dHJhY3QgJiBsaXN0IGZpbGVzLlxuIgorI3wgIiAgLS1mc3lzLXRhcmZpbGUgPGRlYj4gICAgICAgICAgICAgT3V0cHV0IGZpbGVzeXN0ZW0gdGFyZmlsZS5cbiIKKyN8ICJcbiIKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtYnwtLWJ1aWxkIDxkaXJlY3Rvcnk+IFs8ZGViPl0gICBCdWlsZCBhbiBhcmNoaXZlLlxuIgorIiAgLWN8LS1jb250ZW50cyA8ZGViPiAgICAgICAgICAgICAgTGlzdCBjb250ZW50cy5cbiIKKyIgIC1JfC0taW5mbyA8ZGViPiBbPGNmaWxlPiAuLi5dICAgIFNob3cgaW5mbyB0byBzdGRvdXQuXG4iCisiICAtV3wtLXNob3cgPGRlYj4gICAgICAgICAgICAgICAgICBTaG93IGluZm9ybWF0aW9uIG9uIHBhY2thZ2UocylcbiIKKyIgIC1mfC0tZmllbGQgPGRlYj4gWzxjZmllbGQ+IC4uLl0gIFNob3cgZmllbGQocykgdG8gc3Rkb3V0LlxuIgorIiAgLWV8LS1jb250cm9sIDxkZWI+IFs8ZGlyZWN0b3J5Pl0gRXh0cmFjdCBjb250cm9sIGluZm8uXG4iCisiICAteHwtLWV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gICBFeHRyYWN0IGZpbGVzLlxuIgorIiAgLVh8LS12ZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PiAgRXh0cmFjdCAmIGxpc3QgZmlsZXMuXG4iCisiICAtUnwtLXJhdy1leHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFeHRyYWN0IGNvbnRyb2wgaW5mbyBhbmQgZmlsZXMuXG4iCisiICAtLWZzeXMtdGFyZmlsZSA8ZGViPiAgICAgICAgICAgICBPdXRwdXQgZmlsZXN5c3RlbSB0YXJmaWxlLlxuIgorIlxuIgorbXNnc3RyICIiCisiT3JkcmVzOlxuIgorIiAgLWJ8LS1idWlsZCA8ZGlyZWN0b3JpPiBbPGRlYj5dICAgQ29uc3RydWVpeCB1biBhcnhpdS5cbiIKKyIgIC1jfC0tY29udGVudHMgPGRlYj4gICAgICAgICAgICAgIExsaXN0YSBlbHMgY29udGluZ3V0cy5cbiIKKyIgIC1JfC0taW5mbyA8ZGViPiBbPGZpdHhlcmM+IOKApl0gICAgTW9zdHJhIGxhIGluZm8gcGVyIGxhIHNvcnRpZGEgZXN0w6BuZGFyZC5cbiIKKyIgIC1XfC0tc2hvdyA8ZGViPiAgICAgICAgICAgICAgICAgIE1vc3RyYSBpbmZvcm1hY2nDsyBzb2JyZSBlbChzKSBwYXF1ZXQocykuXG4iCisiICAtZnwtLWZpZWxkIDxkZWI+IFs8Y2FtcGM+IOKApl0gICAgIE1vc3RyYSBlbChzKSBjYW1wKHMpIHBlciBsYSBzb3J0aWRhXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVzdMOgbmRhcmQuXG4iCisiICAtZXwtLWNvbnRyb2wgPGRlYj4gWzxkaXJlY3Rvcmk+XSBFeHRyZXUgbGEgaW5mb3JtYWNpw7MgZGUgY29udHJvbC5cbiIKKyIgIC14fC0tZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3JpPiAgIEV4dHJldSBlbHMgZml0eGVycy5cbiIKKyIgIC1YfC0tdmV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yaT4gIEV4dHJldSBpIGxsaXN0YSBlbHMgZml0eGVycy5cbiIKKyIgIC0tZnN5cy10YXJmaWxlIDxkZWI+ICAgICAgICAgICAgIE1vc3RyYSBlbCBmaXR4ZXIgdGFyIGRlbCBzaXN0ZW1hIGRlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpdHhlcnMuXG4iCisiXG4iCisKKyM6IGRwa2ctZGViL21haW4uYzo5MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiPGRlYj4gaXMgdGhlIGZpbGVuYW1lIG9mIGEgRGViaWFuIGZvcm1hdCBhcmNoaXZlLlxuIgorIjxjZmlsZT4gaXMgdGhlIG5hbWUgb2YgYW4gYWRtaW5pc3RyYXRpdmUgZmlsZSBjb21wb25lbnQuXG4iCisiPGNmaWVsZD4gaXMgdGhlIG5hbWUgb2YgYSBmaWVsZCBpbiB0aGUgbWFpbiBgY29udHJvbCcgZmlsZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIjxkZWI+IMOpcyBlbCBub20gZGUgZml0eGVyIGQndW4gYXJ4aXUgZW4gZm9ybWF0IERlYmlhbi5cbiIKKyI8Zml0eGVyYz4gw6lzIGVsIG5vbSBkJ3VuIGNvbXBvbmVudCBkJ3VuIGZpdHhlciBhZG1pbmlzdHJhdGl1LlxuIgorIjxjYW1wYz4gw6lzIGVsIG5vbSBkJ3VuIGNhbXAgZW4gZWwgZml0eGVyIGRlIMKrY29udHJvbMK7IHByaW5jaXBhbC5cbiIKKyJcbiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjk5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiT3B0aW9uczpcbiIKKyN8ICIgIC0tc2hvd2Zvcm1hdD08Zm9ybWF0PiAgICAgICAgICAgIFVzZSBhbHRlcm5hdGl2ZSBmb3JtYXQgZm9yIC0tc2hvdy5cbiIKKyN8ICIgIC1EICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVuYWJsZSBkZWJ1Z2dpbmcgb3V0cHV0LlxuIgorI3wgIiAgLS1vbGQsIC0tbmV3ICAgICAgICAgICAgICAgICAgICAgU2VsZWN0IGFyY2hpdmUgZm9ybWF0LlxuIgorI3wgIiAgLS1ub2NoZWNrICAgICAgICAgICAgICAgICAgICAgICAgU3VwcHJlc3MgY29udHJvbCBmaWxlIGNoZWNrIChidWlsZCAiCisjfCAiYmFkXG4iCisjfCAiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhY2thZ2VzKS5cbiIKKyN8ICIgIC16IyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNldCB0aGUgY29tcHJlc3Npb24gbGV2ZWwgd2hlbiAiCisjfCAiYnVpbGRpbmcuXG4iCisjfCAiICAtWjx0eXBlPiAgICAgICAgICAgICAgICAgICAgICAgICBTZXQgdGhlIGNvbXByZXNzaW9uIHR5cGUgdXNlZCB3aGVuICIKKyN8ICJidWlsZGluZy5cbiIKKyN8ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWxsb3dlZCB0eXBlczogZ3ppcCwgeHosIGJ6aXAyLCAiCisjfCAibHptYSwgbm9uZS5cbiIKKyN8ICJcbiIKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tc2hvd2Zvcm1hdD08Zm9ybWF0PiAgICAgICAgICAgIFVzZSBhbHRlcm5hdGl2ZSBmb3JtYXQgZm9yIC0tc2hvdy5cbiIKKyIgIC12LCAtLXZlcmJvc2UgICAgICAgICAgICAgICAgICAgIEVuYWJsZSB2ZXJib3NlIG91dHB1dC5cbiIKKyIgIC1EICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVuYWJsZSBkZWJ1Z2dpbmcgb3V0cHV0LlxuIgorIiAgLS1vbGQsIC0tbmV3ICAgICAgICAgICAgICAgICAgICAgU2VsZWN0IGFyY2hpdmUgZm9ybWF0LlxuIgorIiAgLS1ub2NoZWNrICAgICAgICAgICAgICAgICAgICAgICAgU3VwcHJlc3MgY29udHJvbCBmaWxlIGNoZWNrIChidWlsZCBiYWRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFja2FnZXMpLlxuIgorIiAgLXojICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU2V0IHRoZSBjb21wcmVzc2lvbiBsZXZlbCB3aGVuIGJ1aWxkaW5nLlxuIgorIiAgLVo8dHlwZT4gICAgICAgICAgICAgICAgICAgICAgICAgU2V0IHRoZSBjb21wcmVzc2lvbiB0eXBlIHVzZWQgd2hlbiAiCisiYnVpbGRpbmcuXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFsbG93ZWQgdHlwZXM6IGd6aXAsIHh6LCBiemlwMiwgbHptYSwgIgorIm5vbmUuXG4iCisiXG4iCittc2dzdHIgIiIKKyJPcGNpb25zOlxuIgorIiAgLS1zaG93Zm9ybWF0PTxmb3JtYXQ+ICAgICAgRW1wcmEgdW4gZm9ybWF0IGFsdGVybmF0aXUgcGVyIGEgLS1zaG93LlxuIgorIiAgLUQgICAgICAgICAgICAgICAgICAgICAgICAgSGFiaWxpdGEgbCdlaXhpZGEgZGUgZGVwdXJhY2nDsy5cbiIKKyIgIC0tb2xkLCAtLW5ldyAgICAgICAgICAgICAgIFNlbGVjY2lvbmEgZWwgZm9ybWF0IGRlIGwnYXJ4aXUuXG4iCisiICAtLW5vY2hlY2sgICAgICAgICAgICAgICAgICBTdXByaW1laXggbGEgY29tcHJvdmFjacOzIGRlbCBmaXR4ZXIgZGUgY29udHJvbFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY29uc3RydWVpeCB1biBwYXF1ZXQgZXJyb25pKS5cbiIKKyIgIC16IyAgICAgICAgICAgICAgICAgICAgICAgIEVzdGFibGVpeCBlbCBuaXZlbGwgZGUgY29tcHJlc3Npw7MgZHVyYW50XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhIGNvbnN0cnVjY2nDsy5cbiIKKyIgIC1aPHRpcHVzPiAgICAgICAgICAgICAgICAgIEVzdGFibGVpeCBlbCB0aXB1cyBkZSBjb21wcmVzc2nDsyBhIHV0aWxpdHphclxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdXJhbnQgbGEgY29uc3RydWNjacOzLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVGlwdXMgcGVybWVzb3M6IGd6aXAsIHh6LCBiemlwMiwgbHptYSwgbm9uZS5cbiIKKyJcbiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjEyMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiVXNlIGBkcGtnJyB0byBpbnN0YWxsIGFuZCByZW1vdmUgcGFja2FnZXMgZnJvbSB5b3VyIHN5c3RlbSwgb3JcbiIKKyJgZHNlbGVjdCcgb3IgYGFwdGl0dWRlJyBmb3IgdXNlci1mcmllbmRseSBwYWNrYWdlIG1hbmFnZW1lbnQuICBQYWNrYWdlc1xuIgorInVucGFja2VkIHVzaW5nIGBkcGtnLWRlYiAtLWV4dHJhY3QnIHdpbGwgYmUgaW5jb3JyZWN0bHkgaW5zdGFsbGVkICFcbiIKK21zZ3N0ciAiIgorIlxuIgorIkZldSBzZXJ2aXIgwqtkcGtnwrsgcGVyIGEgaW5zdGHFgGxhciBpIGRlc2luc3RhxYBsYXIgcGFxdWV0cyBkZWwgdm9zdHJlXG4iCisic2lzdGVtYSwgbyDCq2RzZWxlY3TCuyBvIMKrYXB0aXR1ZGXCuyBwZXIgYSBnZXN0aW9uYXIgZWxzIHBhcXVldHMgZCd1bmEgbWFuZXJhXG4iCisiYW1pZ2FibGUuICBFbHMgcGFxdWV0cyBkZXNlbXBhcXVldGF0cyBmZW50IHNlcnZpciDCq2Rwa2ctZGViwqAtLWV4dHJhY3TCu1xuIgorImVzdGFyYW4gaW5zdGHFgGxhdHMgaW5jb3JyZWN0YW1lbnQhXG4iCisKKyM6IGRwa2ctZGViL21haW4uYzoxMzIKK21zZ2lkICIiCisiVHlwZSBkcGtnLWRlYiAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgbWFuaXB1bGF0aW5nICouZGViIGZpbGVzO1xuIgorIlR5cGUgZHBrZyAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgaW5zdGFsbGluZyBhbmQgZGVpbnN0YWxsaW5nIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorIkVzY3Jpdml1IGRwa2ctZGViIC0taGVscCBwZXIgYSBvYnRpbmRyZSBhanVkYSBhIHNvYnJlIGRlIGxhIG1hbmlwdWxhY2nDsyBkZSAiCisiZml0eGVycyAqLmRlYjtcbiIKKyJFc2NyaXZpdSBkcGtnIC0taGVscCBwZXIgYSBvYnRpbmRyZSBhanVkYSBhIHNvYnJlIGRlIGNvbSBpbnN0YcWAbGFyIGkgIgorImRlc2luc3RhxYBsYXIgcGFxdWV0cy4iCisKKyM6IGRwa2ctZGViL21haW4uYzoxNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBpbnRlZ2VyIGZvciAtJWM6ICclLjI1MHMnIgorbXNnc3RyICJlbnRlciBpbnbDoGxpZCBwZXIgYSAtJWM6IMKrJS4yNTBzwrsiCisKKyM6IGRwa2ctZGViL21haW4uYzoxNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjb21wcmVzc2lvbiBsZXZlbCBmb3IgLSVjOiAlbGQnIgorbXNnc3RyICJuaXZlbGwgZGUgY29tcHJlc3Npw7MgaW52w6BsaWQgcGVyIGEgLSVjOiAlbGQiCisKKyM6IGRwa2ctZGViL21haW4uYzoxNjEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBjb21wcmVzc2lvbiB0eXBlIGAlcychIgorbXNnc3RyICJlbCB0aXB1cyBkZSBjb21wcmVzc2nDsyDCqyVzwrsgw6lzIGRlc2NvbmVndXQhIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzo1MgorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgZGlnaXQgKGNvZGUgJWQpIGluICVzIgorbXNnc3RyICJlbCBmaXR4ZXIgwqslLjI1MHPCuyBlc3TDoCBjb3Jyb21wdXQgLSBkw61naXQgZXJyb25pIChjb2RpICVkKSBlbiAlcyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gJS4yNTBzIG1pc3NpbmciCittc2dzdHIgImVsIGZpdHhlciDCqyUuMjUwc8K7IGVzdMOgIGNvcnJvbXB1dCAtIG1hbmNhICUuMjUwcyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gbWlzc2luZyBuZXdsaW5lIGFmdGVyICUuMjUwcyIKK21zZ3N0ciAiIgorImVsIGZpdHhlciDCqyUuMjUwc8K7IGVzdMOgIGNvcnJvbXB1dCAtIG1hbmNhIHVuYSBsw61uaWEgbm92YSBkZXNwcsOpcyBkZSAlLjI1MHMiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjg5IGRwa2ctc3BsaXQvbWFpbi5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciByZWFkaW5nICUuMjUwcyIKK21zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBhbCBsbGVnaXIgJS4yNTBzIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIG1hZ2ljIGF0IGVuZCBvZiBmaXJzdCBoZWFkZXIiCittc2dzdHIgIiIKKyJlbCBmaXR4ZXIgwqslLjI1MHPCuyBlc3TDoCBjb3Jyb21wdXQgLSBtw6BnaWEgZXJyw7NuaWEgYWwgZmluYWwgZGUgbGEgcHJpbWVyYSAiCisiY2Fww6dhbGVyYSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTEzCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBwYWRkaW5nIGNoYXJhY3RlciAoY29kZSAlZCkiCittc2dzdHIgIiIKKyJlbCBmaXR4ZXIgwqslLjI1MHPCuyBlc3TDoCBjb3Jyb21wdXQgLSBjYXLDoGN0ZXIgZGUgZmFyY2l0IGVycm9uaSAoY29kaSAlZCkiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjExNworIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBudWxscyBpbiBpbmZvIHNlY3Rpb24iCittc2dzdHIgImVsIGZpdHhlciDCqyUuMjUwc8K7IGVzdMOgIGNvcnJvbXB1dCAtIGhpIGhhIG51bHMgZW4gbGEgc2VjY2nDsyBkJ2luZm8uIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMjIKK21zZ2lkICJmb3JtYXQgdmVyc2lvbiBudW1iZXIiCittc2dzdHIgIm7Dum1lcm8gZGUgdmVyc2nDsyBkZWwgZm9ybWF0IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBmb3JtYXQgdmVyc2lvbiBgJS4yNTBzJyAtIHlvdSBuZWVkIGEgbmV3ZXIgZHBrZy1zcGxpdCIKK21zZ3N0ciAiIgorImVsIGZpdHhlciDCqyUuMjUwc8K7IHTDqSB1biBmb3JtYXQgdmVyc2nDsyDCqyUuMjUwc8K7IC0gbmVjZXNzaXRldSB1biBkcGtnLXNwbGl0ICIKKyJtw6lzIG5vdSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTI3Cittc2dpZCAicGFja2FnZSBuYW1lIgorbXNnc3RyICJub20gZGVsIHBhcXVldCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTI4Cittc2dpZCAicGFja2FnZSB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAibsO6bWVybyBkZSB2ZXJzacOzIGRlbCBwYXF1ZXQiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyOQorbXNnaWQgInBhY2thZ2UgZmlsZSBNRDUgY2hlY2tzdW0iCittc2dzdHIgInN1bWEgTUQ1IGRlbCBmaXR4ZXIgZGUgcGFxdWV0IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIE1ENSBjaGVja3N1bSBgJS4yNTBzJyIKK21zZ3N0ciAiZWwgZml0eGVyIMKrJS4yNTBzwrsgZXN0w6AgY29ycm9tcHV0IC0gc3VtYSBNRDUgwqslLjI1MHPCuyBlcnLDsm5pYSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTM0IGRwa2ctc3BsaXQvaW5mby5jOjEzNQorbXNnaWQgImFyY2hpdmUgdG90YWwgc2l6ZSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMzYgZHBrZy1zcGxpdC9pbmZvLmM6MTM3CisjLCBmdXp6eQorI3wgbXNnaWQgInBhcnQgb2Zmc2V0IgorbXNnaWQgImFyY2hpdmUgcGFydCBvZmZzZXQiCittc2dzdHIgIsOyZnNldCBkZSBwYXJ0IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMzkKKyMsIGZ1enp5CisjfCBtc2dpZCAicGFydCBudW1iZXJzIgorbXNnaWQgImFyY2hpdmUgcGFydCBudW1iZXJzIgorbXNnc3RyICJuw7ptZXJvIGRlIHBhcnRzIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIG5vIHNsYXNoIGJldHdlZW4gcGFydCBudW1iZXJzIgorbXNnaWQgImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIG5vIHNsYXNoIGJldHdlZW4gYXJjaGl2ZSBwYXJ0IG51bWJlcnMiCittc2dzdHIgIiIKKyJlbCBmaXR4ZXIgwqslLjI1MHPCuyBlc3TDoCBjb3Jyb21wdXQgLSBubyBoaSBoYSB1bmEgYmFycmEgZW50cmUgZWxzIG7Dum1lcm9zIGRlICIKKyJwYXJ0IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDUKKyMsIGZ1enp5CisjfCBtc2dpZCAibnVtYmVyIG9mIHBhcnRzIgorbXNnaWQgIm51bWJlciBvZiBhcmNoaXZlIHBhcnRzIgorbXNnc3RyICJub21icmUgZGUgcGFydHMiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE0NworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIG51bWJlciBvZiBwYXJ0cyIKK21zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgbnVtYmVyIG9mIGFyY2hpdmUgcGFydHMiCittc2dzdHIgImVsIGZpdHhlciDCqyUuMjUwc8K7IGVzdMOgIGNvcnJvbXB1dCAtIG5vbWJyZSBkZSBwYXJ0cyBlcnJvbmkiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE0OQorIywgZnV6enkKKyN8IG1zZ2lkICJwYXJ0cyBudW1iZXIiCittc2dpZCAiYXJjaGl2ZSBwYXJ0cyBudW1iZXIiCittc2dzdHIgIm5vbWJyZSBkZSBwYXJ0cyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTUxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgcGFydCBudW1iZXIiCittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIGFyY2hpdmUgcGFydCBudW1iZXIiCittc2dzdHIgImVsIGZpdHhlciDCqyUuMjUwc8K7IGVzdMOgIGNvcnJvbXB1dCAtIG7Dum1lcm8gZGUgcGFydCBlcnJvbmkiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE1NworIywgZnV6enkKKyN8IG1zZ2lkICJwYWNrYWdlIG5hbWUiCittc2dpZCAicGFja2FnZSBhcmNoaXRlY3R1cmUiCittc2dzdHIgIm5vbSBkZWwgcGFxdWV0IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIG1hZ2ljIGF0IGVuZCBvZiBzZWNvbmQgaGVhZGVyIgorbXNnc3RyICIiCisiZWwgZml0eGVyIMKrJS4yNTBzwrsgZXN0w6AgY29ycm9tcHV0IC0gbcOgZ2lhIGVycsOybmlhIGFsIGZpbmFsIGRlIGxhIHNlZ29uYSAiCisiY2Fww6dhbGVyYSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTY4CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIHNlY29uZCBtZW1iZXIgaXMgbm90IGRhdGEgbWVtYmVyIgorbXNnc3RyICIiCisiZWwgZml0eGVyIMKrJS4yNTBzwrsgZXN0w6AgY29ycm9tcHV0IC0gZWwgc2Vnb24gZWxlbWVudCBubyDDqXMgdW4gZWxlbWVudCBkZSAiCisiZGFkZXMiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE3NAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSB3cm9uZyBudW1iZXIgb2YgcGFydHMgZm9yIHF1b3RlZCBzaXplcyIKK21zZ3N0ciAiIgorImVsIGZpdHhlciDCqyUuMjUwc8K7IGVzdMOgIGNvcnJvbXB1dCAtIG7Dum1lcm8gZXF1aXZvY2F0IGRlIHBhcnRzIHBlciBhIGxlcyAiCisibWlkZXMgaW5kaWNhZGVzIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gc2l6ZSBpcyB3cm9uZyBmb3IgcXVvdGVkIHBhcnQgbnVtYmVyIgorbXNnc3RyICIiCisiZWwgZml0eGVyIMKrJS4yNTBzwrsgZXN0w6AgY29ycm9tcHV0IC0gbGEgbWlkYSBlc3TDoCBlcXVpdm9jYWRhIHBlbCBuw7ptZXJvIGRlICIKKyJwYXJ0IGluZGljYWRhIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxODQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZzdGF0IHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibm8gZXMgcG90IGZlciDCq3N0YXTCuyBzb2JyZSBlbCBmaXR4ZXIgcGFydCDCqyUuMjUwc8K7IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gdG9vIHNob3J0IgorbXNnc3RyICJlbCBmaXR4ZXIgwqslLjI1MHPCuyBlc3TDoCBjb3Jyb21wdXQgLSBtYXNzYSBjdXJ0IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyMDIgZHBrZy1zcGxpdC9pbmZvLmM6MjQ5CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBvcGVuIGFyY2hpdmUgcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJubyBlcyBwb3Qgb2JyaXIgZWwgZml0eGVyIHBhcnQgZCdhcnhpdSDCqyUuMjUwc8K7IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBub3QgYW4gYXJjaGl2ZSBwYXJ0IgorbXNnc3RyICJlbCBmaXR4ZXIgwqslLjI1MHPCuyBubyDDqXMgdW5hIHBhcnQgZCdhcnhpdSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjA5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiJXM6XG4iCisjfCAiICAgIFBhcnQgZm9ybWF0IHZlcnNpb246ICAgICAgICAgICAgJXNcbiIKKyN8ICIgICAgUGFydCBvZiBwYWNrYWdlOiAgICAgICAgICAgICAgICAlc1xuIgorI3wgIiAgICAgICAgLi4uIHZlcnNpb246ICAgICAgICAgICAgICAgICVzXG4iCisjfCAiICAgICAgICAuLi4gTUQ1IGNoZWNrc3VtOiAgICAgICAgICAgJXNcbiIKKyN8ICIgICAgICAgIC4uLiBsZW5ndGg6ICAgICAgICAgICAgICAgICAlbHUgYnl0ZXNcbiIKKyN8ICIgICAgICAgIC4uLiBzcGxpdCBldmVyeTogICAgICAgICAgICAlbHUgYnl0ZXNcbiIKKyN8ICIgICAgUGFydCBudW1iZXI6ICAgICAgICAgICAgICAgICAgICAlZC8lZFxuIgorI3wgIiAgICBQYXJ0IGxlbmd0aDogICAgICAgICAgICAgICAgICAgICV6aSBieXRlc1xuIgorI3wgIiAgICBQYXJ0IG9mZnNldDogICAgICAgICAgICAgICAgICAgICVsdSBieXRlc1xuIgorI3wgIiAgICBQYXJ0IGZpbGUgc2l6ZSAodXNlZCBwb3J0aW9uKTogICVsdSBieXRlc1xuIgorI3wgIlxuIgorbXNnaWQgIiIKKyIlczpcbiIKKyIgICAgUGFydCBmb3JtYXQgdmVyc2lvbjogICAgICAgICAgICAlc1xuIgorIiAgICBQYXJ0IG9mIHBhY2thZ2U6ICAgICAgICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gdmVyc2lvbjogICAgICAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiBhcmNoaXRlY3R1cmU6ICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIE1ENSBjaGVja3N1bTogICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gbGVuZ3RoOiAgICAgICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgICAgICAuLi4gc3BsaXQgZXZlcnk6ICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgIFBhcnQgbnVtYmVyOiAgICAgICAgICAgICAgICAgICAgJWQvJWRcbiIKKyIgICAgUGFydCBsZW5ndGg6ICAgICAgICAgICAgICAgICAgICAlamQgYnl0ZXNcbiIKKyIgICAgUGFydCBvZmZzZXQ6ICAgICAgICAgICAgICAgICAgICAlamQgYnl0ZXNcbiIKKyIgICAgUGFydCBmaWxlIHNpemUgKHVzZWQgcG9ydGlvbik6ICAlamQgYnl0ZXNcbiIKKyJcbiIKK21zZ3N0ciAiIgorIiVzOlxuIgorIiAgICBWZXJzacOzIGRlbCBmb3JtYXQgZGUgcGFydDogICAgICAgJXNcbiIKKyIgICAgUGFydCBkZWwgcGFxdWV0OiAgICAgICAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIOKApiB2ZXJzacOzOiAgICAgICAgICAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIOKApiBzdW1hIE1ENTogICAgICAgICAgICAgICAgICAlc1xuIgorIiAgICAgICAg4oCmIG1pZGE6ICAgICAgICAgICAgICAgICAgICAgICVsdSBvY3RldHNcbiIKKyIgICAgICAgIOKApiB0cm9zc2VqYXQgY2FkYTogICAgICAgICAgICAlbHUgb2N0ZXRzXG4iCisiICAgIE7Dum1lcm8gZGUgbGEgcGFydDogICAgICAgICAgICAgICAlZC8lZFxuIgorIiAgICBNaWRhIGRlIGxhIHBhcnQ6ICAgICAgICAgICAgICAgICAlemkgb2N0ZXRzXG4iCisiICAgIERlc3BsYcOnYW1lbnQgZGUgbGEgcGFydDogICAgICAgICAlbHUgb2N0ZXRzXG4iCisiICAgIE1pZGEgZGVsIGZpdHhlciBkZSBsYSBwYXJ0XG4iCisiICAgICAgICAocG9yY2nDsyB1c2FkYSk6ICAgICAgICAgICAgICAlbHUgb2N0ZXRzXG4iCisiXG4iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjIyNQorIywgZnV6enkKKyN8IG1zZ2lkICI8dW5rbm93bj4iCittc2djdHh0ICJhcmNoaXRlY3R1cmUiCittc2dpZCAiPHVua25vd24+IgorbXNnc3RyICI8ZGVzY29uZWd1dD4iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjI0NCBkcGtnLXNwbGl0L2pvaW4uYzoxMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyByZXF1aXJlcyBvbmUgb3IgbW9yZSBwYXJ0IGZpbGUgYXJndW1lbnRzIgorbXNnc3RyICItLSVzIHJlcXVlcmVpeCB1biBvIG3DqXMgZml0eGVycyBwYXJ0IGNvbSBhIGFyZ3VtZW50cyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjU1CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCVzJyBpcyBub3QgYW4gYXJjaGl2ZSBwYXJ0XG4iCittc2dzdHIgImVsIGZpdHhlciDCqyVzwrsgbm8gw6lzIHVuYSBwYXJ0IGQnYXJ4aXVcbiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHV0dGluZyBwYWNrYWdlICVzIHRvZ2V0aGVyIGZyb20gJWQgcGFydDogIgorbXNnaWRfcGx1cmFsICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0czogIgorbXNnc3RyWzBdICJTJ2VzdMOgIGFzc2VtYmxhbnQgZWwgcGFxdWV0ICVzIGFtYiAlZCBwYXJ0OiAiCittc2dzdHJbMV0gIlMnZXN0w6AgYXNzZW1ibGFudCBlbCBwYXF1ZXQgJXMgYW1iICVkIHBhcnRzOiAiCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjUxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIG91dHB1dCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJubyBlcyBwb3Qgb2JyaXIgZWwgZml0eGVyIGQnZWl4aWRhIMKrJS4yNTBzwrsiCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjU3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byAocmUpb3BlbiBpbnB1dCBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5vIGVzIHBvdCAocmUpb2JyaXIgZWwgZml0eGVyIHBhcnQgZCdlbnRyYWRhIMKrJS4yNTBzwrsiCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjU4CisjLCBmdXp6eQorI3wgbXNnaWQgIlNraXBwaW5nIGRlc2VsZWN0ZWQgcGFja2FnZSAlcy5cbiIKK21zZ2lkICJza2lwcGluZyBzcGxpdCBwYWNrYWdlIGhlYWRlciIKK21zZ3N0ciAiUydlc3TDoCBvbWV0ZW50IGVsIHBhcXVldCBubyBzZWxlY2Npb25hdCAlcy5cbiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NTkKKyMsIGZ1enp5CisjfCBtc2dpZCAiUHV0dGluZyBwYWNrYWdlICVzIHRvZ2V0aGVyIGZyb20gJWQgcGFydDogIgorI3wgbXNnaWRfcGx1cmFsICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0czogIgorbXNnaWQgInNwbGl0IHBhY2thZ2UgcGFydCIKK21zZ3N0ciAiUydlc3TDoCBhc3NlbWJsYW50IGVsIHBhcXVldCAlcyBhbWIgJWQgcGFydDogIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo2OSBkcGtnLXNwbGl0L3NwbGl0LmM6MjM3CisjLCBjLWZvcm1hdAorbXNnaWQgImRvbmVcbiIKK21zZ3N0ciAiZmV0XG4iCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjg1CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGVzIGAlLjI1MHMnIGFuZCBgJS4yNTBzJyBhcmUgbm90IHBhcnRzIG9mIHRoZSBzYW1lIGZpbGUiCittc2dzdHIgImVscyBmaXR4ZXJzIMKrJS4yNTBzwrsgaSDCqyUuMjUwc8K7IG5vIHPDs24gcGFydHMgZGVsIG1hdGVpeCBmaXR4ZXIiCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjkwCisjLCBjLWZvcm1hdAorbXNnaWQgInRoZXJlIGFyZSBzZXZlcmFsIHZlcnNpb25zIG9mIHBhcnQgJWQgLSBhdCBsZWFzdCBgJS4yNTBzJyBhbmQgYCUuMjUwcyciCittc2dzdHIgImhpIGhhbiBkaXZlcnNlcyB2ZXJzaW9ucyBkZSBsYSBwYXJ0ICVkIC0gYWxtZW55cyDCqyUuMjUwc8K7IGkgwqslLjI1MHPCuyIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6MTI4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhcnQgJWQgaXMgbWlzc2luZyIKK21zZ3N0ciAibWFuY2EgbGEgcGFydCAlZCIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6NDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuIGAlcycgcGFja2FnZSBzcGxpdC9qb2luIHRvb2w7IHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkVpbmEgZGUgZGl2aXNpw7MvdW5pw7Mgwqslc8K7IGRlIERlYmlhbjsgdmVyc2nDsyAlcy5cbiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ29weXJpZ2h0IChDKSAxOTk0LTE5OTYgSWFuIEphY2tzb24uXG4iCittc2dzdHIgIkNvcHlyaWdodCDCqSAxOTk0LTE5OTYgSWFuIEphY2tzb24uXG4iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjY3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1zfC0tc3BsaXQgPGZpbGU+IFs8cHJlZml4Pl0gICAgIFNwbGl0IGFuIGFyY2hpdmUuXG4iCisiICAtanwtLWpvaW4gPHBhcnQ+IDxwYXJ0PiAuLi4gICAgICBKb2luIHBhcnRzIHRvZ2V0aGVyLlxuIgorIiAgLUl8LS1pbmZvIDxwYXJ0PiAuLi4gICAgICAgICAgICAgRGlzcGxheSBpbmZvIGFib3V0IGEgcGFydC5cbiIKKyIgIC1hfC0tYXV0byAtbyA8Y29tcGxldGU+IDxwYXJ0PiAgIEF1dG8tYWNjdW11bGF0ZSBwYXJ0cy5cbiIKKyIgIC1sfC0tbGlzdHEgICAgICAgICAgICAgICAgICAgICAgIExpc3QgdW5tYXRjaGVkIHBpZWNlcy5cbiIKKyIgIC1kfC0tZGlzY2FyZCBbPGZpbGVuYW1lPiAuLi5dICAgIERpc2NhcmQgdW5tYXRjaGVkIHBpZWNlcy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIk9yZHJlczpcbiIKKyIgIC1zfC0tc3BsaXQgPGZpdHhlcj4gWzxwcmVmaXg+XSAgIFNlcGFyYSB1biBhcnhpdSBlbiBwYXJ0cy5cbiIKKyIgIC1qfC0tam9pbiA8cGFydD4gPHBhcnQ+IOKApiAgICAgICAgVW5laXggcGFydHMuXG4iCisiICAtSXwtLWluZm8gPHBhcnQ+IOKApiAgICAgICAgICAgICAgIE1vc3RyYSBpbmZvcm1hY2nDsyBzb2JyZSB1bmEgcGFydC5cbiIKKyIgIC1hfC0tYXV0byAtbyA8Y29tcGxldGE+IDxwYXJ0PiAgIEFjdW11bGEgbGVzIHBhcnRzIGF1dG9tw6B0aWNhbWVudC5cbiIKKyIgIC1sfC0tbGlzdHEgICAgICAgICAgICAgICAgICAgICAgIExsaXN0YSBlbHMgYm9jaW5zIGRlc2FwYXJlbGxhdHMuXG4iCisiICAtZHwtLWRpc2NhcmQgWzxmaXR4ZXI+IOKApl0gICAgICAgIERlc2NhcnRhIGVscyBib2NpbnMgZGVzYXBhcmVsbGF0cy5cbiIKKyJcbiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6ODIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJPcHRpb25zOlxuIgorI3wgIiAgLS1kZXBvdGRpciA8ZGlyZWN0b3J5PiAgICAgICAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMvJXMuXG4iCisjfCAiICAtU3wtLXBhcnRzaXplIDxzaXplPiAgICAgICAgICAgICBJbiBLaUIsIGZvciAtcyAoZGVmYXVsdCBpcyA0NTApLlxuIgorI3wgIiAgLW98LS1vdXRwdXQgPGZpbGU+ICAgICAgICAgICAgICAgRm9yIC1qIChkZWZhdWx0IGlzIDxwYWNrYWdlPi08dmVyc2lvbj4uIgorI3wgImRlYikuXG4iCisjfCAiICAtUXwtLW5wcXVpZXQgICAgICAgICAgICAgICAgICAgICBCZSBxdWlldCB3aGVuIC1hIGlzIG5vdCBhIHBhcnQuXG4iCisjfCAiICAtLW1zZG9zICAgICAgICAgICAgICAgICAgICAgICAgICBHZW5lcmF0ZSA4LjMgZmlsZW5hbWVzLlxuIgorI3wgIlxuIgorI3wgIkV4aXQgc3RhdHVzOiAwID0gT0s7ICAxID0gLWEgaXMgbm90IGEgcGFydDsgIDIgPSB0cm91YmxlIVxuIgorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1kZXBvdGRpciA8ZGlyZWN0b3J5PiAgICAgICAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMvJXMuXG4iCisiICAtU3wtLXBhcnRzaXplIDxzaXplPiAgICAgICAgICAgICBJbiBLaUIsIGZvciAtcyAoZGVmYXVsdCBpcyA0NTApLlxuIgorIiAgLW98LS1vdXRwdXQgPGZpbGU+ICAgICAgICAgICAgICAgRmlsZW5hbWUsIGZvciAtaiAoZGVmYXVsdCBpc1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGFja2FnZT5fPHZlcnNpb24+XzxhcmNoPi5kZWIpLlxuIgorIiAgLVF8LS1ucHF1aWV0ICAgICAgICAgICAgICAgICAgICAgQmUgcXVpZXQgd2hlbiAtYSBpcyBub3QgYSBwYXJ0LlxuIgorIiAgLS1tc2RvcyAgICAgICAgICAgICAgICAgICAgICAgICAgR2VuZXJhdGUgOC4zIGZpbGVuYW1lcy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIk9wY2lvbnM6XG4iCisiICAtLWRlcG90ZGlyIDxkaXJlY3Rvcmk+ICAgICAgICAgICBFbXByYSA8ZGlyZWN0b3JpPiBlbiBjb21wdGVzIGRlICVzLyVzLlxuIgorIiAgLVN8LS1wYXJ0c2l6ZSA8bWlkYT4gICAgICAgICAgICAgRW4gS2lCLCBwZXIgYSAtcyAocGVyIGRlZmVjdGUgw6lzIDQ1MCkuXG4iCisiICAtb3wtLW91dHB1dCA8Zml0eGVyPiAgICAgICAgICAgICBQZXIgYSAtaiAocGVyIGRlZmVjdGUgw6lzXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGFxdWV0Pi08dmVyc2nDsz4uZGViKVxuIgorIiAgLVF8LS1ucHF1aWV0ICAgICAgICAgICAgICAgICAgICAgU2lndWVzIHNpbGVuY2nDs3MgcXVhbiAtYSBubyDDqXMgdW5hIHBhcnQuXG4iCisiICAtLW1zZG9zICAgICAgICAgICAgICAgICAgICAgICAgICBHZW5lcmEgbm9tcyBkZSBmaXR4ZXIgZW4gZm9ybWF0IDguMy5cbiIKKyJcbiIKKyJFc3RhdCBkJ2VpeGlkYTogMCA9IE9LOyAgMSA9IC1hIG5vIMOpcyB1bmEgcGFydDsgIDIgPSBwcm9ibGVtZXMhXG4iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjkyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJFeGl0IHN0YXR1czpcbiIKKyIgIDAgPSBva1xuIgorIiAgMSA9IHdpdGggLS1hdXRvLCBmaWxlIGlzIG5vdCBhIHBhcnRcbiIKKyIgIDIgPSB0cm91YmxlXG4iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6MTAzCittc2dpZCAiVHlwZSBkcGtnLXNwbGl0IC0taGVscCBmb3IgaGVscC4iCittc2dzdHIgIkV4ZWN1dGV1IGRwa2ctc3BsaXQgLS1oZWxwIHBlciBhIG9idGVuaXItbmUgYWp1ZGEuIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgZmlsZSBpbiAlLjI1MHMiCittc2dzdHIgInMnaGEgdHJvYmF0IHVuYSBmaSBkZSBmaXR4ZXIgaW5lc3BlcmFkYSBlbiAlLjI1MHMiCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjEyNgorbXNnaWQgInBhcnQgc2l6ZSBpcyBmYXIgdG9vIGxhcmdlIG9yIGlzIG5vdCBwb3NpdGl2ZSIKK21zZ3N0ciAibGEgbWlkYSBkZSBsYSBwYXJ0IMOpcyBtYXNzYSBncmFuIG8gbm8gw6lzIHBvc2l0aXZhIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMzAKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFydCBzaXplIG11c3QgYmUgYXQgbGVhc3QgJWQgS2lCICh0byBhbGxvdyBmb3IgaGVhZGVyKSIKK21zZ3N0ciAiIgorImxhIG1pZGEgZGUgbGEgcGFydCBoYSBkZSBzZXIgZCdhbG1lbnlzICVkIEtpQiAocGVyIGEgYWRtZXRyZSB1bmEgY2Fww6dhbGVyYSkiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzo5MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBkZXBvdCBkaXJlY3RvcnkgYCUuMjUwcyciCittc2dzdHIgIm5vIGVzIHBvdCBsbGVnaXIgZWwgZGlyZWN0b3JpIGRlIGRpcMOyc2l0IMKrJS4yNTBzwrsiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxMzQKK21zZ2lkICItLWF1dG8gcmVxdWlyZXMgdGhlIHVzZSBvZiB0aGUgLS1vdXRwdXQgb3B0aW9uIgorbXNnc3RyICItLWF1dG8gcmVxdWVyZWl4IGwnw7pzIGRlIGwnb3BjacOzIC0tb3V0cHV0IgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTM2Cittc2dpZCAiLS1hdXRvIHJlcXVpcmVzIGV4YWN0bHkgb25lIHBhcnQgZmlsZSBhcmd1bWVudCIKK21zZ3N0ciAiLS1hdXRvIHJlcXVlcmVpeCBleGFjdGFtZW50IHVuIGZpdHhlciBwYXJ0IGNvbSBhIGFyZ3VtZW50IgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTQwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibm8gZXMgcG90IGxsZWdpciBlbCBmaXR4ZXIgcGFydCDCqyUuMjUwc8K7IgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTQzCisjLCBjLWZvcm1hdAorbXNnaWQgIkZpbGUgYCUuMjUwcycgaXMgbm90IHBhcnQgb2YgYSBtdWx0aXBhcnQgYXJjaGl2ZS5cbiIKK21zZ3N0ciAiRWwgZml0eGVyIMKrJS4yNTBzwrsgbm8gw6lzIHBhcnQgZCd1biBhcnhpdSBtdWx0aXBhcnQuXG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlb3BlbiBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5vIGVzIHBvdCByZW9icmlyIGVsIGZpdHhlciBwYXJ0IMKrJS4yNTBzwrsiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxODIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gbmV3IGRlcG90IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5vIGVzIHBvdCBvYnJpciBlbCBmaXR4ZXIgZGUgZGlww7JzaXQgbm91IMKrJS4yNTBzwrsiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxODQKK21zZ2lkICJleHRyYWN0aW5nIHNwbGl0IHBhcnQiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE5MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVuYW1lIG5ldyBkZXBvdCBmaWxlIGAlLjI1MHMnIHRvIGAlLjI1MHMnIgorbXNnc3RyICJubyBlcyBwb3QgY2FudmlhciBlbCBub20gZGVsIGZpdHhlciBkZSBkaXDDsnNpdCBub3UgwqslLjI1MHPCuyBhIMKrJS4yNTBzwrsiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFydCAlZCBvZiBwYWNrYWdlICVzIGZpbGVkIChzdGlsbCB3YW50ICIKK21zZ3N0ciAiUGFydCAlZCBkZWwgcGFxdWV0ICVzIGFyeGl2YWRhIChlbmNhcmEgZXMgbmVjZXNzaXRhICIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjIwMAorbXNnaWQgIiBhbmQgIgorbXNnc3RyICIgaSAiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSB1c2VkLXVwIGRlcG90IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5vIGVzIHBvdCBlc2JvcnJhciBlbCBmaXR4ZXIgZGUgZGlww7JzaXQgZW1wcmF0IMKrJS4yNTBzwrsiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyMzUKK21zZ2lkICJKdW5rIGZpbGVzIGxlZnQgYXJvdW5kIGluIHRoZSBkZXBvdCBkaXJlY3Rvcnk6XG4iCittc2dzdHIgIlF1ZWRlbiBmaXR4ZXJzIGRlIGJydXTDrWNpYSBhbCBkaXJlY3RvcmkgZGUgZGlww7JzaXQ6XG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNDAgZHBrZy1zcGxpdC9xdWV1ZS5jOjI2OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBgJS4yNTBzJyIKK21zZ3N0ciAibm8gZXMgcG90IGZlciDCq3N0YXTCuyBzb2JyZSDCqyUuMjUwc8K7IgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjQzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIgJXMgKCVsdSBieXRlcylcbiIKK21zZ2lkICIgJXMgKCVqZCBieXRlcylcbiIKK21zZ3N0ciAiICVzICglbHUgb2N0ZXRzKVxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAlcyAobm90IGEgcGxhaW4gZmlsZSlcbiIKK21zZ3N0ciAiICVzIChubyDDqXMgdW4gZml0eGVyIG5vcm1hbClcbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI1MAorbXNnaWQgIlBhY2thZ2VzIG5vdCB5ZXQgcmVhc3NlbWJsZWQ6XG4iCittc2dzdHIgIlBhcXVldHMgZW5jYXJhIHNlbnNlIHJlZW5zYW1ibGFyOlxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjU4CisjLCBjLWZvcm1hdAorbXNnaWQgIiBQYWNrYWdlICVzOiBwYXJ0KHMpICIKK21zZ3N0ciAiIFBhcXVldCAlczogcGFydChzKSAiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFydCBmaWxlIGAlLjI1MHMnIGlzIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgImVsIGZpdHhlciBwYXJ0IMKrJS4yNTBzwrsgbm8gw6lzIHVuIGZpdHhlciBub3JtYWwiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNzgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIih0b3RhbCAlbHUgYnl0ZXMpXG4iCittc2dpZCAiKHRvdGFsICVqZCBieXRlcylcbiIKK21zZ3N0ciAiKHRvdGFsICVsdSBvY3RldHMpXG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzozMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRpc2NhcmQgYCUuMjUwcyciCittc2dzdHIgIm5vIGVzIHBvdCBkZXNjYXJ0YXIgwqslLjI1MHPCuyIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjMwNQorIywgYy1mb3JtYXQKK21zZ2lkICJEZWxldGVkICVzLlxuIgorbXNnc3RyICJTJ2hhIGVsaW1pbmF0ICVzLlxuIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6NzAgZHBrZy1zcGxpdC9zcGxpdC5jOjc2IGRwa2ctc3BsaXQvc3BsaXQuYzo4MQorIywgZnV6enkKKyN8IG1zZ2lkICJkcGtnLWRlYiBmaWVsZCBleHRyYWN0aW9uIgorbXNnaWQgInBhY2thZ2UgZmllbGQgdmFsdWUgZXh0cmFjdGlvbiIKK21zZ3N0ciAiZXh0cmFjY2nDsyBkZSBjYW1wcyBkZSBkcGtnLWRlYiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjEzMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBzb3VyY2UgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibm8gZXMgcG90IG9icmlyIGVsIGZpdHhlciBmb250IMKrJS4yNTBzwrsiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxMzMKK21zZ2lkICJ1bmFibGUgdG8gZnN0YXQgc291cmNlIGZpbGUiCittc2dzdHIgIm5vIGVzIHBvdCBmZXIgwqtzdGF0wrsgc29icmUgZWwgZml0eGVyIGZvbnQiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxMzUKKyMsIGMtZm9ybWF0Cittc2dpZCAic291cmNlIGZpbGUgYCUuMjUwcycgbm90IGEgcGxhaW4gZmlsZSIKK21zZ3N0ciAiZWwgZml0eGVyIGZvbnQgwqslLjI1MHPCuyBubyDDqXMgdW4gZml0eGVyIG5vcm1hbCIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjE1MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiUHV0dGluZyBwYWNrYWdlICVzIHRvZ2V0aGVyIGZyb20gJWQgcGFydDogIgorI3wgbXNnaWRfcGx1cmFsICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0czogIgorbXNnaWQgIlNwbGl0dGluZyBwYWNrYWdlICVzIGludG8gJWQgcGFydDogIgorbXNnaWRfcGx1cmFsICJTcGxpdHRpbmcgcGFja2FnZSAlcyBpbnRvICVkIHBhcnRzOiAiCittc2dzdHJbMF0gIlMnZXN0w6AgYXNzZW1ibGFudCBlbCBwYXF1ZXQgJXMgYW1iICVkIHBhcnQ6ICIKK21zZ3N0clsxXSAiUydlc3TDoCBhc3NlbWJsYW50IGVsIHBhcXVldCAlcyBhbWIgJWQgcGFydHM6ICIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjE5MworbXNnaWQgIiIKKyJIZWFkZXIgaXMgdG9vIGxvbmcsIG1ha2luZyBwYXJ0IHRvbyBsb25nLiBZb3VyIHBhY2thZ2UgbmFtZSBvciB2ZXJzaW9uXG4iCisibnVtYmVycyBtdXN0IGJlIGV4dHJhb3JkaW5hcmlseSBsb25nLCBvciBzb21ldGhpbmcuIEdpdmluZyB1cC5cbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MjQ5Cittc2dpZCAiLS1zcGxpdCBuZWVkcyBhIHNvdXJjZSBmaWxlbmFtZSBhcmd1bWVudCIKK21zZ3N0ciAiLS1zcGxpdCBuZWNlc3NpdGEgdW4gbm9tIGRlIGZpdHhlciBmb250IGNvbSBhIGFyZ3VtZW50IgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MjUyCittc2dpZCAiLS1zcGxpdCB0YWtlcyBhdCBtb3N0IGEgc291cmNlIGZpbGVuYW1lIGFuZCBkZXN0aW5hdGlvbiBwcmVmaXgiCittc2dzdHIgIi0tc3BsaXQgcHJlbiBjb20gbW9sdCB1biBub20gZGUgZml0eGVyIGZvbnQgaSB1biBwcmVmaXggZGUgZGVzdMOtIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6ODQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAtMjAwMiBXaWNoZXJ0IEFra2VybWFuLlxuIgorIkNvcHlyaWdodCAoQykgMjAwOS0yMDEwIFJhcGhhZWwgSGVydHpvZy5cbiIKK21zZ3N0ciAiIgorIkNvcHlyaWdodCDCqSAxOTk1IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCDCqSAyMDAwLTIwMDIgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgwqkgMjAwOS0yMDEwIFJhcGhhw6tsIEhlcnR6b2cuXG4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMDEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gPGNvbW1hbmQ+XG4iCisjfCAiXG4iCisjfCAiQ29tbWFuZHM6XG4iCisjfCAiICAtLWluc3RhbGwgPGxpbms+IDxuYW1lPiA8cGF0aD4gPHByaW9yaXR5PlxuIgorI3wgIiAgICBbLS1zbGF2ZSA8bGluaz4gPG5hbWU+IDxwYXRoPl0gLi4uXG4iCisjfCAiICAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkIGEgZ3JvdXAgb2YgYWx0ZXJuYXRpdmVzIHRvIHRoZSBzeXN0ZW0uXG4iCisjfCAiICAtLXJlbW92ZSA8bmFtZT4gPHBhdGg+ICAgcmVtb3ZlIDxwYXRoPiBmcm9tIHRoZSA8bmFtZT4gZ3JvdXAgIgorI3wgImFsdGVybmF0aXZlLlxuIgorI3wgIiAgLS1yZW1vdmUtYWxsIDxuYW1lPiAgICAgIHJlbW92ZSA8bmFtZT4gZ3JvdXAgZnJvbSB0aGUgYWx0ZXJuYXRpdmVzICIKKyN8ICJzeXN0ZW0uXG4iCisjfCAiICAtLWF1dG8gPG5hbWU+ICAgICAgICAgICAgc3dpdGNoIHRoZSBtYXN0ZXIgbGluayA8bmFtZT4gdG8gYXV0b21hdGljICIKKyN8ICJtb2RlLlxuIgorI3wgIiAgLS1kaXNwbGF5IDxuYW1lPiAgICAgICAgIGRpc3BsYXkgaW5mb3JtYXRpb24gYWJvdXQgdGhlIDxuYW1lPiBncm91cC5cbiIKKyN8ICIgIC0tcXVlcnkgPG5hbWU+ICAgICAgICAgICBtYWNoaW5lIHBhcnNlYWJsZSB2ZXJzaW9uIG9mIC0tZGlzcGxheSAiCisjfCAiPG5hbWU+LlxuIgorI3wgIiAgLS1saXN0IDxuYW1lPiAgICAgICAgICAgIGRpc3BsYXkgYWxsIHRhcmdldHMgb2YgdGhlIDxuYW1lPiBncm91cC5cbiIKKyN8ICIgIC0tY29uZmlnIDxuYW1lPiAgICAgICAgICBzaG93IGFsdGVybmF0aXZlcyBmb3IgdGhlIDxuYW1lPiBncm91cCBhbmQgYXNrICIKKyN8ICJ0aGVcbiIKKyN8ICIgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2VyIHRvIHNlbGVjdCB3aGljaCBvbmUgdG8gdXNlLlxuIgorI3wgIiAgLS1zZXQgPG5hbWU+IDxwYXRoPiAgICAgIHNldCA8cGF0aD4gYXMgYWx0ZXJuYXRpdmUgZm9yIDxuYW1lPi5cbiIKKyN8ICIgIC0tYWxsICAgICAgICAgICAgICAgICAgICBjYWxsIC0tY29uZmlnIG9uIGFsbCBhbHRlcm5hdGl2ZXMuXG4iCisjfCAiXG4iCisjfCAiPGxpbms+IGlzIHRoZSBzeW1saW5rIHBvaW50aW5nIHRvICVzLzxuYW1lPi5cbiIKKyN8ICIgIChlLmcuIC91c3IvYmluL3BhZ2VyKVxuIgorI3wgIjxuYW1lPiBpcyB0aGUgbWFzdGVyIG5hbWUgZm9yIHRoaXMgbGluayBncm91cC5cbiIKKyN8ICIgIChlLmcuIHBhZ2VyKVxuIgorI3wgIjxwYXRoPiBpcyB0aGUgbG9jYXRpb24gb2Ygb25lIG9mIHRoZSBhbHRlcm5hdGl2ZSB0YXJnZXQgZmlsZXMuXG4iCisjfCAiICAoZS5nLiAvdXNyL2Jpbi9sZXNzKVxuIgorI3wgIjxwcmlvcml0eT4gaXMgYW4gaW50ZWdlcjsgb3B0aW9ucyB3aXRoIGhpZ2hlciBudW1iZXJzIGhhdmUgaGlnaGVyICIKKyN8ICJwcmlvcml0eSBpblxuIgorI3wgIiAgYXV0b21hdGljIG1vZGUuXG4iCisjfCAiXG4iCisjfCAiT3B0aW9uczpcbiIKKyN8ICIgIC0tYWx0ZGlyIDxkaXJlY3Rvcnk+ICAgICBjaGFuZ2UgdGhlIGFsdGVybmF0aXZlcyBkaXJlY3RvcnkuXG4iCisjfCAiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgY2hhbmdlIHRoZSBhZG1pbmlzdHJhdGl2ZSBkaXJlY3RvcnkuXG4iCisjfCAiICAtLXNraXAtYXV0byAgICAgICAgICAgICAgc2tpcCBwcm9tcHQgZm9yIGFsdGVybmF0aXZlcyBjb3JyZWN0bHkgIgorI3wgImNvbmZpZ3VyZWRcbiIKKyN8ICIgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBhdXRvbWF0aWMgbW9kZSAocmVsZXZhbnQgZm9yIC0tY29uZmlnICIKKyN8ICJvbmx5KVxuIgorI3wgIiAgLS12ZXJib3NlICAgICAgICAgICAgICAgIHZlcmJvc2Ugb3BlcmF0aW9uLCBtb3JlIG91dHB1dC5cbiIKKyN8ICIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBxdWlldCBvcGVyYXRpb24sIG1pbmltYWwgb3V0cHV0LlxuIgorI3wgIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisjfCAiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtLWluc3RhbGwgPGxpbms+IDxuYW1lPiA8cGF0aD4gPHByaW9yaXR5PlxuIgorIiAgICBbLS1zbGF2ZSA8bGluaz4gPG5hbWU+IDxwYXRoPl0gLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkIGEgZ3JvdXAgb2YgYWx0ZXJuYXRpdmVzIHRvIHRoZSBzeXN0ZW0uXG4iCisiICAtLXJlbW92ZSA8bmFtZT4gPHBhdGg+ICAgcmVtb3ZlIDxwYXRoPiBmcm9tIHRoZSA8bmFtZT4gZ3JvdXAgYWx0ZXJuYXRpdmUuXG4iCisiICAtLXJlbW92ZS1hbGwgPG5hbWU+ICAgICAgcmVtb3ZlIDxuYW1lPiBncm91cCBmcm9tIHRoZSBhbHRlcm5hdGl2ZXMgIgorInN5c3RlbS5cbiIKKyIgIC0tYXV0byA8bmFtZT4gICAgICAgICAgICBzd2l0Y2ggdGhlIG1hc3RlciBsaW5rIDxuYW1lPiB0byBhdXRvbWF0aWMgbW9kZS5cbiIKKyIgIC0tZGlzcGxheSA8bmFtZT4gICAgICAgICBkaXNwbGF5IGluZm9ybWF0aW9uIGFib3V0IHRoZSA8bmFtZT4gZ3JvdXAuXG4iCisiICAtLXF1ZXJ5IDxuYW1lPiAgICAgICAgICAgbWFjaGluZSBwYXJzZWFibGUgdmVyc2lvbiBvZiAtLWRpc3BsYXkgPG5hbWU+LlxuIgorIiAgLS1saXN0IDxuYW1lPiAgICAgICAgICAgIGRpc3BsYXkgYWxsIHRhcmdldHMgb2YgdGhlIDxuYW1lPiBncm91cC5cbiIKKyIgIC0tZ2V0LXNlbGVjdGlvbnMgICAgICAgICBsaXN0IG1hc3RlciBhbHRlcm5hdGl2ZSBuYW1lcyBhbmQgdGhlaXIgc3RhdHVzLlxuIgorIiAgLS1zZXQtc2VsZWN0aW9ucyAgICAgICAgIHJlYWQgYWx0ZXJuYXRpdmUgc3RhdHVzIGZyb20gc3RhbmRhcmQgaW5wdXQuXG4iCisiICAtLWNvbmZpZyA8bmFtZT4gICAgICAgICAgc2hvdyBhbHRlcm5hdGl2ZXMgZm9yIHRoZSA8bmFtZT4gZ3JvdXAgYW5kIGFzayAiCisidGhlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlciB0byBzZWxlY3Qgd2hpY2ggb25lIHRvIHVzZS5cbiIKKyIgIC0tc2V0IDxuYW1lPiA8cGF0aD4gICAgICBzZXQgPHBhdGg+IGFzIGFsdGVybmF0aXZlIGZvciA8bmFtZT4uXG4iCisiICAtLWFsbCAgICAgICAgICAgICAgICAgICAgY2FsbCAtLWNvbmZpZyBvbiBhbGwgYWx0ZXJuYXRpdmVzLlxuIgorIlxuIgorbXNnc3RyICIiCisiRm9ybWEgZCfDunM6ICVzIFs8b3BjacOzPiDigKZdIDxvcmRyZT5cbiIKKyJcbiIKKyJPcmRyZXM6XG4iCisiICAtLWluc3RhbGwgPGVubGxhw6c+IDxub20+IDxjYW3DrT4gPHByaW9yaXRhdD5cbiIKKyIgICAgWy0tc2xhdmUgPGVubGxhw6c+IDxub20+IDxjYW3DrT5dIOKAplxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGFmZWdlaXggdW4gZ3J1cCBkJ2FsdGVybmF0aXZlcyBhbCBzaXN0ZW1hLlxuIgorIiAgLS1yZW1vdmUgPG5vbT4gPGNhbcOtPiAgICBzdXByaW1laXggPGNhbcOtPiBkZWwgZ3J1cCBkJ2FsdGVybmF0aXZlcyA8bm9tPi5cbiIKKyIgIC0tcmVtb3ZlLWFsbCA8bm9tPiAgICAgICBzdXByaW1laXggZGVsIHNpc3RlbWEgZWwgZ3J1cCBkJ2FsdGVybmF0aXZlcyAiCisiPG5vbT4uXG4iCisiICAtLWF1dG8gPG5vbT4gICAgICAgICAgICAgY2FudmlhIGwnZW5sbGHDpyBtZXN0cmUgPG5vbT4gYSBtb2RlIGF1dG9tw6B0aWMuXG4iCisiICAtLWRpc3BsYXkgPG5vbT4gICAgICAgICAgbW9zdHJhIGluZm9ybWFjacOzIHNvYnJlIGVsIGdydXAgPG5vbT4uXG4iCisiICAtLXF1ZXJ5IDxub20+ICAgICAgICAgICAgdmVyc2nDsyBhbmFsaXR6YWJsZSBwZXIgbcOgcXVpbmEgZGUgLS1kaXNwbGF5ICIKKyI8bm9tPi5cbiIKKyIgIC0tbGlzdCA8bm9tPiAgICAgICAgICAgICBtb3N0cmEgdG90cyBlbHMgb2JqZWN0aXVzIGRlbCBncnVwIDxub20+LlxuIgorIiAgLS1jb25maWcgPG5vbT4gICAgICAgICAgIG1vc3RyYSBsZXMgYWx0ZXJuYXRpdmVzIHBlciBhbCBncnVwIDxub20+IGlcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBwcmVndW50YSBhIGwndXN1YXJpIHF1aW5hIHByZWZlcmVpeCB1dGlsaXR6YXIuXG4iCisiICAtLXNldCA8bm9tPiA8Y2Ftw60+ICAgICAgIGRlZmluZWl4IDxjYW3DrT4gY29tIGEgYWx0ZXJuYXRpdmEgcGVyIGEgPG5vbT4uXG4iCisiICAtLWFsbCAgICAgICAgICAgICAgICAgICAgY3JpZGEgLS1jb25maWcgc29icmUgdG90ZXMgbGVzIGFsdGVybmF0aXZlcy5cbiIKKyJcbiIKKyI8ZW5sbGHDpz4gw6lzIHVuIGVubGxhw6cgc2ltYsOybGljIHF1ZSBhcHVudGEgYSAlcy88bm9tPi5cbiIKKyIgIChwLmV4LiAvdXNyL2Jpbi9wYWdlcilcbiIKKyI8bm9tPiDDqXMgZWwgbm9tIG1lc3RyZSBkZWwgZ3J1cCBkJ2VubGxhw6dvcy5cbiIKKyIgIChwLmV4LiBwYWdlcilcbiIKKyI8Y2Ftw60+IMOpcyBsYSB1YmljYWNpw7MgZGUgdW4gZGVscyBmaXR4ZXJzIG9iamVjdGl1IGRlIGxlcyBhbHRlcm5hdGl2ZXMuXG4iCisiICAocC5leC4gL3Vzci9iaW4vbGVzcylcbiIKKyI8cHJpb3JpdGF0PiDDqXMgdW4gZW50ZXI7IGxlcyBvcGNpb25zIGFtYiB1biB2YWxvciBtw6lzIGdyYW4gdGVuZW4gbWFqb3JcbiIKKyIgIHByaW9yaXRhdCBhbCBtb2RlIGF1dG9tw6B0aWMuXG4iCisiXG4iCisiT3BjaW9uczpcbiIKKyIgIC0tYWx0ZGlyIDxkaXJlY3Rvcmk+ICAgICBjYW52aWEgZWwgZGlyZWN0b3JpIGQnYWx0ZXJuYXRpdmVzLlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3JpPiAgIGNhbnZpYSBlbCBkaXJlY3RvcmkgYWRtaW5pc3RyYXRpdS5cbiIKKyIgIC0tc2tpcC1hdXRvICAgICAgICAgICAgICBvbWV0IGxhIHByZWd1bnRhIHBlciBhIGFsdGVybmF0aXZlcyBjb3JyZWN0YW1lbnRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmZpZ3VyYWRlcyBhbCBtb2RlIGF1dG9tw6B0aWMgKG5vbcOpcyByZWxldmFudFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGVyIGEgLS1jb25maWcpLlxuIgorIiAgLS12ZXJib3NlICAgICAgICAgICAgICAgIG9wZXJhIGRldGFsbGFkYW1lbnQsIGFtYiBtw6lzIHNvcnRpZGEuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgb3BlcmEgc2lsZW5jaW9zYW1lbnQsIGFtYiBsYSBzb3J0aWRhIG3DrW5pbWEuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgbW9zdHJhIGFxdWVzdCBtaXNzYXRnZSBkJ2FqdWRhLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIG1vc3RyYSBsYSB2ZXJzacOzLlxuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyI8bGluaz4gaXMgdGhlIHN5bWxpbmsgcG9pbnRpbmcgdG8gJXMvPG5hbWU+LlxuIgorIiAgKGUuZy4gL3Vzci9iaW4vcGFnZXIpXG4iCisiPG5hbWU+IGlzIHRoZSBtYXN0ZXIgbmFtZSBmb3IgdGhpcyBsaW5rIGdyb3VwLlxuIgorIiAgKGUuZy4gcGFnZXIpXG4iCisiPHBhdGg+IGlzIHRoZSBsb2NhdGlvbiBvZiBvbmUgb2YgdGhlIGFsdGVybmF0aXZlIHRhcmdldCBmaWxlcy5cbiIKKyIgIChlLmcuIC91c3IvYmluL2xlc3MpXG4iCisiPHByaW9yaXR5PiBpcyBhbiBpbnRlZ2VyOyBvcHRpb25zIHdpdGggaGlnaGVyIG51bWJlcnMgaGF2ZSBoaWdoZXIgcHJpb3JpdHkgIgorImluXG4iCisiICBhdXRvbWF0aWMgbW9kZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTMxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiT3B0aW9uczpcbiIKKyN8ICIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICBzZXQgdGhlIGRpcmVjdG9yeSB3aXRoIHRoZSBzdGF0b3ZlcnJpZGUgZmlsZS5cbiIKKyN8ICIgIC0tdXBkYXRlICAgICAgICAgICAgICAgICBpbW1lZGlhdGVseSB1cGRhdGUgZmlsZSBwZXJtaXNzaW9ucy5cbiIKKyN8ICIgIC0tZm9yY2UgICAgICAgICAgICAgICAgICBmb3JjZSBhbiBhY3Rpb24gZXZlbiBpZiBhIHNhbml0eSBjaGVjayBmYWlscy5cbiIKKyN8ICIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBxdWlldCBvcGVyYXRpb24sIG1pbmltYWwgb3V0cHV0LlxuIgorI3wgIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisjfCAiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyN8ICJcbiIKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWx0ZGlyIDxkaXJlY3Rvcnk+ICAgICBjaGFuZ2UgdGhlIGFsdGVybmF0aXZlcyBkaXJlY3RvcnkuXG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgY2hhbmdlIHRoZSBhZG1pbmlzdHJhdGl2ZSBkaXJlY3RvcnkuXG4iCisiICAtLWxvZyA8ZmlsZT4gICAgICAgICAgICAgY2hhbmdlIHRoZSBsb2cgZmlsZS5cbiIKKyIgIC0tZm9yY2UgICAgICAgICAgICAgICAgICBhbGxvdyByZXBsYWNpbmcgZmlsZXMgd2l0aCBhbHRlcm5hdGl2ZSBsaW5rcy5cbiIKKyIgIC0tc2tpcC1hdXRvICAgICAgICAgICAgICBza2lwIHByb21wdCBmb3IgYWx0ZXJuYXRpdmVzIGNvcnJlY3RseSAiCisiY29uZmlndXJlZFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGluIGF1dG9tYXRpYyBtb2RlIChyZWxldmFudCBmb3IgLS1jb25maWcgb25seSlcbiIKKyIgIC0tdmVyYm9zZSAgICAgICAgICAgICAgICB2ZXJib3NlIG9wZXJhdGlvbiwgbW9yZSBvdXRwdXQuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgcXVpZXQgb3BlcmF0aW9uLCBtaW5pbWFsIG91dHB1dC5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCittc2dzdHIgIiIKKyJPcGNpb25zOlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3JpPiAgIGRlZmluZWl4IGVsIGRpcmVjdG9yaSBhbWIgZWwgZml0eGVyICIKKyJzdGF0b3ZlcnJpZGUuXG4iCisiICAtLXVwZGF0ZSAgICAgICAgICAgICAgICAgYWN0dWFsaXR6YSBlbHMgcGVybWlzb3MgZGVscyBmaXR4ZXJzIGRlIGZvcm1hXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbW1lZGlhdGEuXG4iCisiICAtLWZvcmNlICAgICAgICAgICAgICAgICAgZm9yw6dhIHVuYSBhY2Npw7MgZmlucyBpIHRvdCBzaSBmYWxsZW4gbGVzXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb21wcm92YWNpb25zIGQnaW50ZWdyaXRhdC5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBvcGVyYSBzaWxlbmNpb3NhbWVudCwgYW1iIGxhIHNvcnRpZGEgbcOtbmltYS5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICBtb3N0cmEgYXF1ZXN0IG1pc3NhdGdlIGQnYWp1ZGEuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgbW9zdHJhIGxhIHZlcnNpw7MuXG4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE2MworbXNnaWQgImVycm9yIgorbXNnc3RyICJzJ2hhIHByb2R1w690IHVuIGVycm9yIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTkzCittc2dpZCAid2FybmluZyIKK21zZ3N0ciAiYXbDrXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzozNTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidHdvIGNvbW1hbmRzIHNwZWNpZmllZDogLS0lcyBhbmQgLS0lcyIKK21zZ3N0ciAicydoYSBlc3BlY2lmaWNhdCBkb3Mgb3JkcmVzOiAtLSVzIGkgLS0lcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjM4NworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiY2Fubm90IGFwcGVuZCB0byAlczogJXMiCittc2dpZCAiY2Fubm90IGFwcGVuZCB0byAnJXMnIgorbXNnc3RyICJubyBlcyBwb3QgYWZlZ2lyIGEgJXM6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NTU2CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlICVzOiAlcyIKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlICclcyciCittc2dzdHIgIm5vIGVzIHBvdCBzdXByaW1pciAlczogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTExCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGZpbGUgd2hpbGUgdHJ5aW5nIHRvIHJlYWQgJXMiCittc2dzdHIgImZpIGRlIGZpdHhlciBpbmVzcGVyYWRhIGVuIGxsZWdpciAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAid2hpbGUgcmVhZGluZyAlczogJXMiCittc2dzdHIgIm1lbnRyZSBlcyBsbGVnaWEgJXM6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTExOQorIywgYy1mb3JtYXQKK21zZ2lkICJsaW5lIG5vdCB0ZXJtaW5hdGVkIHdoaWxlIHRyeWluZyB0byByZWFkICVzIgorbXNnc3RyICJsYSBsw61uaWEgbm8gZXN0YXZhIHRlcm1pbmFkYSBlbiBsbGVnaXIgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGNvcnJ1cHQ6ICVzIgorbXNnc3RyICIlcyBlc3TDoCBjb3Jyb21wdXQ6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE1MAorIywgYy1mb3JtYXQKK21zZ2lkICJuZXdsaW5lcyBwcm9oaWJpdGVkIGluIHVwZGF0ZS1hbHRlcm5hdGl2ZXMgZmlsZXMgKCVzKSIKK21zZ3N0ciAiIgorImxlcyBsw61uaWVzIG5vdmVzIG5vIGVzdGFuIHBlcm1lc29zIGFscyBmaXR4ZXJzIGQndXBkYXRlLWFsdGVybmF0aXZlcyAoJXMpIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE2MworbXNnaWQgInNsYXZlIG5hbWUiCittc2dzdHIgIm5vbSBkZSBsJ2VzY2xhdSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNzEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImR1cGxpY2F0ZSBzbGF2ZSAlcyIKK21zZ2lkICJkdXBsaWNhdGUgc2xhdmUgbmFtZSAlcyIKK21zZ3N0ciAiZXNjbGF1IGR1cGxpY2F0ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE3NAorbXNnaWQgInNsYXZlIGxpbmsiCittc2dzdHIgImVubGxhw6cgZXNjbGF1IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE3OAorIywgYy1mb3JtYXQKK21zZ2lkICJzbGF2ZSBsaW5rIHNhbWUgYXMgbWFpbiBsaW5rICVzIgorbXNnc3RyICJsJ2VubGxhw6cgZXNjbGF1IMOpcyBlbCBtYXRlaXggcXVlIGwnZW5sbGHDpyBwcmluY2lwYWwgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTg1IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDEyCisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBzbGF2ZSBsaW5rICVzIgorbXNnc3RyICJlbmxsYcOnIGVzY2xhdSBkdXBsaWNhdCAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMDQKK21zZ2lkICJtYXN0ZXIgZmlsZSIKK21zZ3N0ciAiZml0eGVyIG1lc3RyZSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHBhdGggJXMiCittc2dzdHIgImNhbcOtIGR1cGxpY2F0ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIyNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYWx0ZXJuYXRpdmUgJXMgKHBhcnQgb2YgbGluayBncm91cCAlcykgZG9lc24ndCBleGlzdC4gUmVtb3ZpbmcgZnJvbSBsaXN0IG9mICIKKyJhbHRlcm5hdGl2ZXMuIgorbXNnc3RyICIiCisibCdhbHRlcm5hdGl2YSAlcyAocGFydCBkZWwgZ3J1cCBkJ2VubGxhw6dvcyAlcykgbm8gZXhpc3RlaXguIFMnZXN0w6Agc3VwcmltaW50ICIKKyJkZSBsYSBsbGlzdGEgZCdhbHRlcm5hdGl2ZXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIyOSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI0MAorbXNnaWQgInByaW9yaXR5IgorbXNnc3RyICJwcmlvcml0YXQiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjMyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjQ5Cittc2dpZCAic2xhdmUgZmlsZSIKK21zZ3N0ciAiZml0eGVyIGVzY2xhdSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyNDQKKyMsIGMtZm9ybWF0Cittc2dpZCAicHJpb3JpdHkgb2YgJXM6ICVzIgorbXNnc3RyICJwcmlvcml0YXQgZGUgJXM6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI5NworbXNnaWQgInN0YXR1cyIKK21zZ3N0ciAiZXN0YXQiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjk5Cittc2dpZCAiaW52YWxpZCBzdGF0dXMiCittc2dzdHIgImwnZXN0YXQgw6lzIGludsOgbGlkIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTMwNAorbXNnaWQgIm1hc3RlciBsaW5rIgorbXNnc3RyICJlbmxsYcOnIG1lc3RyZSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGlzY2FyZGluZyBvYnNvbGV0ZSBzbGF2ZSBsaW5rICVzICglcykuIgorbXNnc3RyICJzJ2VzdMOgIGRlc2NhcnRhbnQgbCdlbmxsYcOnIGVzY2xhdSBvYnNvbGV0ICVzICglcykuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2OQorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MzgKK21zZ2lkICJhdXRvIG1vZGUiCittc2dzdHIgIm1vZGUgYXV0b23DoHRpYyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MDIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NzgKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjM5Cittc2dpZCAibWFudWFsIG1vZGUiCittc2dzdHIgIm1vZGUgbWFudWFsIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwNQorIywgYy1mb3JtYXQKK21zZ2lkICIgIGxpbmsgY3VycmVudGx5IHBvaW50cyB0byAlcyIKK21zZ3N0ciAiICBsJ2VubGxhw6cgYXB1bnRhIGFjdHVhbG1lbnQgY2FwIGEgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTA4Cittc2dpZCAiICBsaW5rIGN1cnJlbnRseSBhYnNlbnQiCittc2dzdHIgIiAgbCdlbmxsYcOnIGVzdMOgIGFjdHVhbG1lbnQgYWJzZW50IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUxMgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyAtIHByaW9yaXR5ICVkIgorbXNnc3RyICIlcyAtIHByaW9yaXRhdCAlZCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBzbGF2ZSAlczogJXMiCittc2dzdHIgIiAgZXNjbGF1ICVzOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ3VycmVudCAnYmVzdCcgdmVyc2lvbiBpcyAnJXMnLiIKK21zZ3N0ciAiQWN0dWFsbWVudCBsYSDCq21pbGxvcsK7IHZlcnNpw7Mgw6lzIMKrJXPCuy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTI0Cittc2dpZCAiTm8gdmVyc2lvbnMgYXZhaWxhYmxlLiIKK21zZ3N0ciAiTm8gaGkgaGEgY2FwIHZlcnNpw7MgZGlzcG9uaWJsZS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTUzCisjLCBjLWZvcm1hdAorbXNnaWQgIlRoZXJlIGlzICVkIGNob2ljZSBmb3IgdGhlIGFsdGVybmF0aXZlICVzIChwcm92aWRpbmcgJXMpLiIKK21zZ2lkX3BsdXJhbCAiVGhlcmUgYXJlICVkIGNob2ljZXMgZm9yIHRoZSBhbHRlcm5hdGl2ZSAlcyAocHJvdmlkaW5nICVzKS4iCittc2dzdHJbMF0gIkhpIGhhICVkIHBvc3NpYmlsaXRhdCBwZXIgYSBsJ2FsdGVybmF0aXZhICVzIChxdWUgcHJvdmVlaXggJXMpLiIKK21zZ3N0clsxXSAiSGkgaGEgJWQgcG9zc2liaWxpdGF0cyBwZXIgYSBsJ2FsdGVybmF0aXZhICVzIChxdWUgcHJvdmVlaXggJXMpLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NjAKK21zZ2lkICJTZWxlY3Rpb24iCittc2dzdHIgIlNlbGVjY2nDsyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NjEKK21zZ2lkICJQYXRoIgorbXNnc3RyICJDYW3DrSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NjEKK21zZ2lkICJQcmlvcml0eSIKK21zZ3N0ciAiUHJpb3JpdGF0IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2MQorbXNnaWQgIlN0YXR1cyIKK21zZ3N0ciAiRXN0YXQiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTgyCisjLCBjLWZvcm1hdAorbXNnaWQgIlByZXNzIGVudGVyIHRvIGtlZXAgdGhlIGN1cnJlbnQgY2hvaWNlWypdLCBvciB0eXBlIHNlbGVjdGlvbiBudW1iZXI6ICIKK21zZ3N0ciAiIgorIlByZW1ldSByZXRvcm4gcGVyIGEgbWFudGVuaXIgbCdvcGNpw7MgcGVyIGRlZmVjdGVbKl0sIG8gaW50cm9kdcOvdSB1biBuw7ptZXJvICIKKyJkZSBzZWxlY2Npw7M6ICIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3MjEKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IHJlcGxhY2luZyAlcyB3aXRoIGEgbGluay4iCittc2dzdHIgIm5vIGVzIHJlZW1wbGHDp2EgJXMgYW1iIHVuIGVubGxhw6cuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTc2MgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW4ndCBpbnN0YWxsIHVua25vd24gY2hvaWNlICVzIgorbXNnc3RyICJubyBlcyBwb3QgaW5zdGHFgGxhciBsYSBzZWxlY2Npw7MgJXMgZGVzY29uZWd1ZGEiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNzgwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJza2lwIGNyZWF0aW9uIG9mICVzIGJlY2F1c2UgYXNzb2NpYXRlZCBmaWxlICVzIChvZiBsaW5rIGdyb3VwICVzKSBkb2Vzbid0ICIKKyJleGlzdC4iCittc2dzdHIgIiIKKyJzJ29tZXQgbGEgY3JlYWNpw7MgZGUgJXMgcGVycXXDqCBlbCBmaXR4ZXIgYXNzb2NpYXQgwqslc8K7IChkZWwgZ3J1cCBkJ2VubGxhw6dvcyAiCisiJXMpIG5vIGV4aXN0ZWl4LiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3OTAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIm5vdCByZXBsYWNpbmcgJXMgd2l0aCBhIGxpbmsuIgorbXNnaWQgIm5vdCByZW1vdmluZyAlcyBzaW5jZSBpdCdzIG5vdCBhIHN5bWxpbmsuIgorbXNnc3RyICJubyBlcyByZWVtcGxhw6dhICVzIGFtYiB1biBlbmxsYcOnLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNDEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2FsbCAlcy4iCittc2dzdHIgIkNyaWRhIGEgJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA1MQorIywgYy1mb3JtYXQKK21zZ2lkICJBbHRlcm5hdGl2ZSAlcyB1bmNoYW5nZWQgYmVjYXVzZSBjaG9pY2UgJXMgaXMgbm90IGF2YWlsYWJsZS4iCittc2dzdHIgIiIKKyJObyBzJ2hhIGNhbnZpYXQgbCdhbHRlcm5hdGl2YSAlcyBwZXJxdcOoIGxhIHNlbGVjY2nDsyAlcyBubyDDqXMgZGlzcG9uaWJsZS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDU1CisjLCBjLWZvcm1hdAorbXNnaWQgIlNraXAgdW5rbm93biBhbHRlcm5hdGl2ZSAlcy4iCittc2dzdHIgIlMnb21ldCBsJ2FsdGVybmF0aXZhIGRlc2NvbmVndWRhICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNzcKKyMsIGMtZm9ybWF0Cittc2dpZCAibGluZSB0b28gbG9uZyBvciBub3QgdGVybWluYXRlZCB3aGlsZSB0cnlpbmcgdG8gcmVhZCAlcyIKK21zZ3N0ciAibMOtbmlhIG1hc3NhIGxsYXJnYSBvIG5vIHRlcm1pbmFkYSBlbiBsbGVnaXIgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDkwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTAzCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjExMworIywgYy1mb3JtYXQKK21zZ2lkICJTa2lwIGludmFsaWQgbGluZTogJXMiCittc2dzdHIgIlMnb21ldCBsYSBsw61uaWEgaW52w6BsaWRhOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVuYW1pbmcgJXMgbGluayBmcm9tICVzIHRvICVzLiIKK21zZ3N0ciAiUydlc3TDoCBjYW52aWFudCBlbCBub20gZGUgbCdlbmxsYcOnICVzIGRlICVzIGEgJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE3MworIywgYy1mb3JtYXQKK21zZ2lkICJyZW5hbWluZyAlcyBzbGF2ZSBsaW5rIGZyb20gJXMgdG8gJXMuIgorbXNnc3RyICJTJ2VzdMOgIGNhbnZpYW50IGVsIG5vbSBkZSBsJ2VubGxhw6cgZXNjbGF1ICVzIGRlICVzIGEgJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE4OQorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBuYW1lICglcykgbXVzdCBub3QgY29udGFpbiAnLycgYW5kIHNwYWNlcy4iCittc2dzdHIgImVsIG5vbSBkZSBsJ2FsdGVybmF0aXZhICglcykgbm8gcG90IGNvbnRlbmlyIMKrL8K7IG8gZXNwYWlzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgbGluayBpcyBub3QgYWJzb2x1dGUgYXMgaXQgc2hvdWxkIGJlOiAlcyIKK21zZ3N0ciAibCdlbmxsYcOnIGQnYWx0ZXJuYXRpdmEgbm8gw6lzIGFic29sdXQgY29tIGhvIGhhdXJpYSBkZSBzZXI6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE5NworIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBwYXRoIGlzIG5vdCBhYnNvbHV0ZSBhcyBpdCBzaG91bGQgYmU6ICVzIgorbXNnc3RyICJlbCBjYW3DrSBkZSBsJ2FsdGVybmF0aXZhIG5vIMOpcyBhYnNvbHV0IGNvbSBobyBoYXVyaWEgZGUgc2VyOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyMjQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImFsdGVybmF0aXZlICVzIGNhbid0IGJlIG1hc3RlcjogJXMiCittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgbWFzdGVyOiBpdCBpcyBhIHNsYXZlIG9mICVzIgorbXNnc3RyICJsJ2FsdGVybmF0aXZhICVzIG5vIHBvdCBzZXIgbWVzdHJhOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyMzIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgbGluayAlcyBpcyBhbHJlYWR5IG1hbmFnZWQgYnkgJXMuIgorbXNnc3RyICJsJ2VubGxhw6cgZCdhbHRlcm5hdGl2YSAlcyBqYSBlc3TDoCBnZXN0aW9uYXQgcGVyICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgcGF0aCAlcyBkb2Vzbid0IGV4aXN0LiIKK21zZ3N0ciAiZWwgY2Ftw60gZGUgbCdhbHRlcm5hdGl2YSAlcyBubyBleGlzdGVpeC4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjU0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBzbGF2ZSBvZiAlczogJXMiCittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgc2xhdmUgb2YgJXM6IGl0IGlzIGEgbWFzdGVyIGFsdGVybmF0aXZlLiIKK21zZ3N0ciAibCdhbHRlcm5hdGl2YSAlcyBubyBwb3Qgc2VyIGVzY2xhdmEgZGUgJXM6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI1OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgbWFzdGVyOiAlcyIKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBzbGF2ZSBvZiAlczogaXQgaXMgYSBzbGF2ZSBvZiAlcyIKK21zZ3N0ciAibCdhbHRlcm5hdGl2YSAlcyBubyBwb3Qgc2VyIG1lc3RyYTogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjc4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJhbHRlcm5hdGl2ZSBsaW5rICVzIGlzIGFscmVhZHkgbWFuYWdlZCBieSAlcy4iCittc2dpZCAiYWx0ZXJuYXRpdmUgbGluayAlcyBpcyBhbHJlYWR5IG1hbmFnZWQgYnkgJXMgKHNsYXZlIG9mICVzKS4iCittc2dzdHIgImwnZW5sbGHDpyBkJ2FsdGVybmF0aXZhICVzIGphIGVzdMOgIGdlc3Rpb25hdCBwZXIgJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjMyNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGFyZ3VtZW50IGAlcyciCittc2dzdHIgImwnYXJndW1lbnQgwqslc8K7IMOpcyBkZXNjb25lZ3V0IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM0MworbXNnaWQgIi0taW5zdGFsbCBuZWVkcyA8bGluaz4gPG5hbWU+IDxwYXRoPiA8cHJpb3JpdHk+IgorbXNnc3RyICItLWluc3RhbGwgbmVjZXNzaXRhIDxlbmxsYcOnPiA8bm9tPiA8Y2Ftw60+IDxwcmlvcml0YXQ+IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM0NiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM5NworbXNnaWQgIjxsaW5rPiBhbmQgPHBhdGg+IGNhbid0IGJlIHRoZSBzYW1lIgorbXNnc3RyICI8ZW5sbGHDpz4gaSA8Y2Ftw60+IG5vIHBvZGVuIHNlciBlbCBtYXRlaXgiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzQ5Cittc2dpZCAicHJpb3JpdHkgbXVzdCBiZSBhbiBpbnRlZ2VyIgorbXNnc3RyICJsYSBwcmlvcml0YXQgaGEgZGUgc2VyIHVuIGVudGVyIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM2MgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIDxuYW1lPiA8cGF0aD4iCittc2dzdHIgIi0tJXMgbmVjZXNzaXRhIDxub20+IDxjYW3DrT4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzc2CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgPG5hbWU+IgorbXNnc3RyICItLSVzIG5lY2Vzc2l0YSA8bm9tPiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzODgKK21zZ2lkICItLXNsYXZlIG9ubHkgYWxsb3dlZCB3aXRoIC0taW5zdGFsbCIKK21zZ3N0ciAiLS1zbGF2ZSBub23DqXMgZXMgcG90IGVzcGVjaWZpY2FyIGp1bnQgYW1iIC0taW5zdGFsbCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzOTAKK21zZ2lkICItLXNsYXZlIG5lZWRzIDxsaW5rPiA8bmFtZT4gPHBhdGg+IgorbXNnc3RyICItLXNsYXZlIG5lY2Vzc2l0YSA8ZW5sbGHDpz4gPG5vbT4gPGNhbcOtPiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzOTkKKyMsIGMtZm9ybWF0Cittc2dpZCAibmFtZSAlcyBpcyBib3RoIHByaW1hcnkgYW5kIHNsYXZlIgorbXNnc3RyICJlbCBub20gJXMgw6lzIGFsaG9yYSBwcmltYXJpIGkgZXNjbGF1IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQwMgorIywgYy1mb3JtYXQKK21zZ2lkICJsaW5rICVzIGlzIGJvdGggcHJpbWFyeSBhbmQgc2xhdmUiCittc2dzdHIgImwnZW5sbGHDpyAlcyDDqXMgYWxob3JhIHByaW1hcmkgaSBlc2NsYXUiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDIyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSA8ZmlsZT4gYXJndW1lbnQiCittc2dzdHIgIi0tJXMgbmVjZXNzaXRhIHVuIGFyZ3VtZW50IDxmaXR4ZXI+IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQ0OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiBgJXMnIgorbXNnc3RyICJsJ29wY2nDsyDCqyVzwrsgw6lzIGRlc2NvbmVndWRhIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQ1MworbXNnaWQgIiIKKyJuZWVkIC0tZGlzcGxheSwgLS1xdWVyeSwgLS1saXN0LCAtLWdldC1zZWxlY3Rpb25zLCAtLWNvbmZpZywgLS1zZXQsIC0tc2V0LSIKKyJzZWxlY3Rpb25zLCAtLWluc3RhbGwsIC0tcmVtb3ZlLCAtLWFsbCwgLS1yZW1vdmUtYWxsIG9yIC0tYXV0byIKK21zZ3N0ciAiIgorImVzIG5lY2Vzc2l0YSAtLWRpc3BsYXksIC0tcXVlcnksIC0tbGlzdCwgLS1nZXQtc2VsZWN0aW9ucywgLS1jb25maWcsIC0tc2V0LCAiCisiLS1zZXQtc2VsZWN0aW9ucywgLS1pbnN0YWxsLCAtLXJlbW92ZSwgLS1hbGwsIC0tcmVtb3ZlLWFsbCBvIC0tYXV0byIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0OTAKK21zZ2lkICI8c3RhbmRhcmQgaW5wdXQ+IgorbXNnc3RyICI8ZW50cmFkYSBlc3TDoG5kYXJkPiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MDAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MDMKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gYWx0ZXJuYXRpdmVzIGZvciAlcy4iCittc2dzdHIgIm5vIGhpIGhhIGFsdGVybmF0aXZlcyBwZXIgYSAlcy4iCisKKyMgQSBjb3JldXRpbHMsIGRhbmdsaW5nIHN5bWxpbmsgLT4gZW5sbGHDpyB0cmVuY2F0LiBqbQorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiVzIGlzIGRhbmdsaW5nLCBpdCB3aWxsIGJlIHVwZGF0ZWQgd2l0aCBiZXN0IGNob2ljZS4iCittc2dpZCAiJXMvJXMgaXMgZGFuZ2xpbmcsIGl0IHdpbGwgYmUgdXBkYXRlZCB3aXRoIGJlc3QgY2hvaWNlLiIKK21zZ3N0ciAiJXMgw6lzIHRyZW5jYXQsIHMnYWN0dWFsaXR6YXLDoCBhbWIgbGEgbWlsbG9yIHNlbGVjY2nDsy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTM0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiJXMgaGFzIGJlZW4gY2hhbmdlZCAobWFudWFsbHkgb3IgYnkgYSBzY3JpcHQpLiBTd2l0Y2hpbmcgdG8gbWFudWFsICIKKyN8ICJ1cGRhdGVzIG9ubHkuIgorbXNnaWQgIiIKKyIlcy8lcyBoYXMgYmVlbiBjaGFuZ2VkIChtYW51YWxseSBvciBieSBhIHNjcmlwdCkuIFN3aXRjaGluZyB0byBtYW51YWwgIgorInVwZGF0ZXMgb25seS4iCittc2dzdHIgIiIKKyIlcyBoYSBlc3RhdCBtb2RpZmljYXQgKG1hbnVhbG1lbnQgbyBwZXIgYWxndW5hIHNlccO8w6huY2lhKS4gUydlc3TDoCBjYW52aWFudCBhICIKKyJtb2RpZmljYWNpb25zIG1hbnVhbHMgw7puaWNhbWVudC4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTQyCisjLCBjLWZvcm1hdAorbXNnaWQgInNldHRpbmcgdXAgYXV0b21hdGljIHNlbGVjdGlvbiBvZiAlcy4iCittc2dzdHIgInMnZXN0w6AgY29uZmlndXJhbnQgbGEgc2VsZWNjacOzIGF1dG9tw6B0aWNhIGRlICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgZm9yICVzIG5vdCByZWdpc3RlcmVkLCBub3Qgc2V0dGluZy4iCittc2dzdHIgImwnYWx0ZXJuYXRpdmEgJXMgcGVyIGEgJXMgbm8gZXN0w6AgcmVnaXN0cmFkYSwgbm8gcydlc3RhYmxlaXguIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU1NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU2MworIywgYy1mb3JtYXQKK21zZ2lkICJUaGVyZSBpcyBubyBwcm9ncmFtIHdoaWNoIHByb3ZpZGVzICVzLiIKK21zZ3N0ciAiTm8gaGkgaGEgY2FwIHByb2dyYW1hIHF1ZSBwcm92ZWVpeGkgJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU2NSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU3NQorbXNnaWQgIk5vdGhpbmcgdG8gY29uZmlndXJlLiIKK21zZ3N0ciAiTm8gaGkgaGEgcmVzIGEgY29uZmlndXJhci4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTczCisjLCBjLWZvcm1hdAorbXNnaWQgIlRoZXJlIGlzIG9ubHkgb25lIGFsdGVybmF0aXZlIGluIGxpbmsgZ3JvdXAgJXM6ICVzIgorbXNnc3RyICJOb23DqXMgaGkgaGEgdW5hIGFsdGVybmF0aXZhIGFsIGdydXAgZCdlbmxsYcOnb3MgJXM6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU4NAorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBmb3IgJXMgbm90IHJlZ2lzdGVyZWQsIG5vdCByZW1vdmluZy4iCittc2dzdHIgImwnYWx0ZXJuYXRpdmEgJXMgcGVyIGEgJXMgbm8gZXN0w6AgcmVnaXN0cmFkYSwgbm8gZXMgc3VwcmltZWl4LiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1OTIKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVtb3ZpbmcgbWFudWFsbHkgc2VsZWN0ZWQgYWx0ZXJuYXRpdmUgLSBzd2l0Y2hpbmcgJXMgdG8gYXV0byBtb2RlIgorbXNnc3RyICIiCisicydlc3TDoCBzdXByaW1pbnQgbCdhbHRlcm5hdGl2YSBzZWxlY2Npb25hZGEgbWFudWFsbWVudCAtIHMnZXN0w6AgY2FudmlhbnQgJXMgIgorImEgbW9kZSBhdXRvbcOgdGljIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYxNworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYXV0b21hdGljIHVwZGF0ZXMgb2YgJXMgYXJlIGRpc2FibGVkLCBsZWF2aW5nIGl0IGFsb25lLiIKK21zZ2lkICJhdXRvbWF0aWMgdXBkYXRlcyBvZiAlcy8lcyBhcmUgZGlzYWJsZWQsIGxlYXZpbmcgaXQgYWxvbmUuIgorbXNnc3RyICIiCisibGVzIGFjdHVhbGl0YWNpb25zIGF1dG9tw6B0aXF1ZXMgZGUgJXMgZXN0YW4gZGVzYWN0aXZhZGVzLCBubyBoaSBoYXVyw6AgY2FudmlzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInRvIHJldHVybiB0byBhdXRvbWF0aWMgdXBkYXRlcyB1c2UgYHVwZGF0ZS1hbHRlcm5hdGl2ZXMgLS1hdXRvICVzJy4iCittc2dpZCAidG8gcmV0dXJuIHRvIGF1dG9tYXRpYyB1cGRhdGVzIHVzZSAnJXMgLS1hdXRvICVzJy4iCittc2dzdHIgIiIKKyJwZXIgdG9ybmFyIGEgYWN0aXZhciBsZXMgYWN0dWFsaXR6YWNpb25zIGF1dG9tw6B0aXF1ZXMsIHV0aWxpdHpldSDCq3VwZGF0ZS0iCisiYWx0ZXJuYXRpdmVzIC0tYXV0byAlc8K7LiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MzYKKyMsIGMtZm9ybWF0Cittc2dpZCAidXNpbmcgJXMgdG8gcHJvdmlkZSAlcyAoJXMpIGluICVzLiIKK21zZ3N0ciAicydlc3TDoCBlbXByYW50ICVzIHBlciBhIHByb3ZlaXIgJXMgKCVzKSBhIMKrJXPCuy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjQ0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmb3JjaW5nIHJlaW5zdGFsbGF0aW9uIG9mIGFsdGVybmF0aXZlICVzIGJlY2F1c2UgbGluayBncm91cCAlcyBpcyBicm9rZW4uIgorbXNnc3RyICIiCisicydlc3TDoCBmb3LDp2FudCBsYSByZWluc3RhxYBsYWNpw7MgZGUgbCdhbHRlcm5hdGl2YSAlcyBwZXJxdcOoIGVsIGdydXAgIgorImQnZW5sbGHDp29zICVzIMOpcyB0cmVuY2F0LiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY3VycmVudCBhbHRlcm5hdGl2ZSAlcyBpcyB1bmtub3duLCBzd2l0Y2hpbmcgdG8gJXMgZm9yIGxpbmsgZ3JvdXAgJXMuIgorbXNnc3RyICIiCisibCdhbHRlcm5hdGl2YSBhY3R1YWwgJXMgw6lzIGRlc2NvbmVndWRhLCBzJ2VzdMOgIGNhbnZpYW50IGEgJXMgcGVyIGFsIGdydXAgIgorImQnZW5sbGHDp29zICVzLiIKKworI34gbXNnaWQgIml0IGlzIGEgbWFzdGVyIGFsdGVybmF0aXZlLiIKKyN+IG1zZ3N0ciAiw6lzIHVuYSBhbHRlcm5hdGl2YSBtZXN0cmEuIgorCisjfiBtc2dpZCAiaXQgaXMgYSBzbGF2ZSBvZiAlcyIKKyN+IG1zZ3N0ciAiw6lzIHVuIGVzY2xhdSBkZSAlcyIKKworI34gbXNnaWQgImNhbm5vdCBzdGF0ICVzOiAlcyIKKyN+IG1zZ3N0ciAibm8gZXMgcG90IGZlciDCq3N0YXTCuyBzb2JyZSDCqyVzwrs6ICVzIgorCisjfiBtc2dpZCAicmVhZGxpbmsoJXMpIGZhaWxlZDogJXMiCisjfiBtc2dzdHIgImhhIGZhbGxhdCDCq3JlYWRsaW5rKCVzKcK7OiAlcyIKKworI34gbXNnaWQgInNjYW4gb2YgJXMgZmFpbGVkOiAlcyIKKyN+IG1zZ3N0ciAiaGEgZmFsbGF0IGwnYW7DoGxpc2kgZGUgJXM6ICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWN1dGUgJXM6ICVzIgorI34gbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGV4ZWN1dGFyICVzOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byBtYWtlICVzIGEgc3ltbGluayB0byAlczogJXMiCisjfiBtc2dzdHIgIm5vIGVzIHBvdCBmZXIgbCdlbmxsYcOnIHNpbWLDsmxpYyBkZSAlcyBhICVzOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsICVzIGFzICVzOiAlcyIKKyN+IG1zZ3N0ciAibm8gZXMgcG90IGluc3RhxYBsYXIgJXMgY29tIGEgJXM6ICVzIgorCisjfiBtc2dpZCAid2hpbGUgd3JpdGluZyAlczogJXMiCisjfiBtc2dzdHIgImVuIGVzY3JpdXJlICVzOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byByZWFkICVzOiAlcyIKKyN+IG1zZ3N0ciAibm8gZXMgcG90IGxsZWdpciAlczogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gY2xvc2UgJXM6ICVzIgorI34gbXNnc3RyICJubyBlcyBwb3QgdGFuY2FyICVzOiAlcyIKKworI34gbXNnaWQgImNhbm5vdCB3cml0ZSAlczogJXMiCisjfiBtc2dzdHIgIm5vIGVzIHBvdCBlc2NyaXVyZSAlczogJXMiCisKKyMgUmVhbm9tZW5hciAtIENhbnZpYXIgZWwgbm9tIC0gVG9ybmFyIGEgYW5vbWVuYXI/IC0tIEpvcmTDoAorIyBKbyBwZXJzb25hbG1lbnQgcHJlZmVyaXNjICJjYW52aWEgZWwgbm9tIiwgcGVyw7IgcGVyIGV4ZW1wbGUgYWwgVGVybWNhdAorIyB2YW4gbcOpcyBhbWIgcmVhbm9tZW5hLCBpIGVsIEdOT01FIGhvIGVzdMOgIHNlZ3VpbnQuCisjIEFuZW0gYW1iIMKrY2FudmlhciBlbCBub23CuywgdmFsPyBqbQorIyBGaW5zIG9uIGpvIHZlaWcsIGVsIE5hdXRpbHVzIGRpdSBhaXjDsiwgZW4gb2N0dWJyZSBkZSAyMDEw4oCmCisjLCBmdXp6eQorI358IG1zZ2lkICJ1bmFibGUgdG8gcmVuYW1lICVzIHRvICVzOiAlcyIKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcmVuYW1lIGZpbGUgJyVzJyB0byAnJXMnIgorI34gbXNnc3RyICJubyBlcyBwb3QgcmVhbm9tZW5hciAlcyBhICVzOiAlcyIKKworI34gbXNnaWQgIm1hbGxvYyBmYWlsZWQgKCVsZCBieXRlcykiCisjfiBtc2dzdHIgImhhIGZhbGxhdCBlbCDCq21hbGxvY8K7ICglbGQgb2N0ZXRzKSIKKworI34gbXNnaWQgInJlYWxsb2MgZmFpbGVkICglbGQgYnl0ZXMpIgorI34gbXNnc3RyICJoYSBmYWxsYXQgZWwgwqtyZWFsbG9jwrsgKCVsZCBvY3RldHMpIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHVuYnVmZmVyIGAlLjI1NXMnIgorI34gbXNnc3RyICJubyBlcyBwb3QgZGVzZmVyIGxhIG1lbcOycmlhIHRlbXBvcmFsIMKrJS4yNTVzwrsiCisKKyN+IG1zZ2lkICJwYXJ0IGZpbGUgYCUuMjUwcycgaGFzIHRyYWlsaW5nIGdhcmJhZ2UiCisjfiBtc2dzdHIgImVsIGZpdHhlciBwYXJ0IMKrJS4yNTBzwrsgdMOpIGJyb3NzYSBhbCBmaW5hbCIKKworI34gbXNnaWQgInNpemUgJTdkIG9jY3VycyAlNWQgdGltZXNcbiIKKyN+IG1zZ3N0ciAibWlkYSAlN2QgdMOpIGxsb2MgJTVkIHZlZ2FkZXNcbiIKKworI34gbXNnaWQgIm91dCBvZiBtZW1vcnkgcHVzaGluZyBlcnJvciBoYW5kbGVyOiAiCisjfiBtc2dzdHIgIlMnaGEgZXhoYXVyaXQgbGEgbWVtw7JyaWEgZW4gY3JpZGFyIGVsIGdlc3RvciBkJ2Vycm9yOiAiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gdW5sb2NrIGRwa2cgc3RhdHVzIGRhdGFiYXNlIgorI34gbXNnc3RyICJubyBlcyBwb3QgZGVzYmxvY2FyIGxhIGJhc2UgZGUgZGFkZXMgZCdlc3RhdCBkZSBkcGtnIgorCisjfiBtc2dpZCAiY29weSBpbmZvIGZpbGUgYCUuMjU1cyciCisjfiBtc2dzdHIgImPDsnBpYSBlbCBmaXR4ZXIgZCdpbmZvLiDCqyUuMjUwc8K7IgorCisjfiBtc2dpZCAicGFyc2UgZXJyb3IiCisjfiBtc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZCdhbsOgbGlzaSIKKworI34gbXNnaWQgImZhaWxlZCB0byB3cml0ZSBwYXJzaW5nIHdhcm5pbmciCisjfiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgZXNjcml1cmUgbCdhdsOtcyBzb2JyZSBsJ2Fuw6BsaXNpIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGxvY2sgdHJpZ2dlcnMgYXJlYSIKKyN+IG1zZ3N0ciAibm8gZXMgcG90IGJsb2NhciBsJ8OgcmVhIGQnYWN0aXZhZG9ycyIKKworI34gbXNnaWQgImZhaWxlZCB0byBydW4gJXMgKCUuMjUwcykiCisjfiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgZXhlY3V0YXIgJXMgKCUuMjUwcykiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBzaGVsbCAoJS4yNTBzKSIKKyN+IG1zZ3N0ciAibm8gcydoYSBwb2d1dCBleGVjdXRhciBsJ2ludMOocnByZXQgZCdvcmRyZXMgKCUuMjUwcykiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gY2hlY2sgZm9yIGV4aXN0ZW5jZSBvZiBgJS4yNTBzJyIKKyN+IG1zZ3N0ciAibm8gZXMgcG90IGNvbXByb3ZhciBsJ2V4aXN0w6huY2lhIGRlIMKrJS4yNTBzwrsiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBybSBmb3IgY2xlYW51cCIKKyN+IG1zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBleGVjdXRhciDCq3JtwrsgcGVyIGEgbmV0ZWphciIKKworI34gbXNnaWQgIiIKKyN+ICIlcyBkZWJ1Z2dpbmcgb3B0aW9uLCAtLWRlYnVnPTxvY3RhbD4gb3IgLUQ8b2N0YWw+OlxuIgorI34gIlxuIgorI34gIiBudW1iZXIgIHJlZi4gaW4gc291cmNlICAgZGVzY3JpcHRpb25cbiIKKyN+ICIgICAgICAxICAgZ2VuZXJhbCAgICAgICAgICAgR2VuZXJhbGx5IGhlbHBmdWwgcHJvZ3Jlc3MgaW5mb3JtYXRpb25cbiIKKyN+ICIgICAgICAyICAgc2NyaXB0cyAgICAgICAgICAgSW52b2NhdGlvbiBhbmQgc3RhdHVzIG9mIG1haW50YWluZXIgc2NyaXB0c1xuIgorI34gIiAgICAgMTAgICBlYWNoZmlsZSAgICAgICAgICBPdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWRcbiIKKyN+ICIgICAgMTAwICAgZWFjaGZpbGVkZXRhaWwgICAgTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWRcbiIKKyN+ICIgICAgIDIwICAgY29uZmYgICAgICAgICAgICAgT3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZVxuIgorI34gIiAgICAyMDAgICBjb25mZmRldGFpbCAgICAgICBMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGVcbiIKKyN+ICIgICAgIDQwICAgZGVwY29uICAgICAgICAgICAgRGVwZW5kZW5jaWVzIGFuZCBjb25mbGljdHNcbiIKKyN+ICIgICAgNDAwICAgZGVwY29uZGV0YWlsICAgICAgTG90cyBvZiBkZXBlbmRlbmNpZXMvY29uZmxpY3RzIG91dHB1dFxuIgorI34gIiAgMTAwMDAgICB0cmlnZ2VycyAgICAgICAgICBUcmlnZ2VyIGFjdGl2YXRpb24gYW5kIHByb2Nlc3NpbmdcbiIKKyN+ICIgIDIwMDAwICAgdHJpZ2dlcnNkZXRhaWwgICAgTG90cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzXG4iCisjfiAiICA0MDAwMCAgIHRyaWdnZXJzc3R1cGlkICAgIFNpbGx5IGFtb3VudHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2Vyc1xuIgorI34gIiAgIDEwMDAgICB2ZXJ5dmVyYm9zZSAgICAgICBMb3RzIG9mIGRyaXZlbCBhYm91dCBlZyB0aGUgZHBrZy9pbmZvICIKKyN+ICJkaXJlY3RvcnlcbiIKKyN+ICIgICAyMDAwICAgc3R1cGlkbHl2ZXJib3NlICAgSW5zYW5lIGFtb3VudHMgb2YgZHJpdmVsXG4iCisjfiAiXG4iCisjfiAiRGVidWdnaW5nIG9wdGlvbnMgYXJlIGJlIG1peGVkIHVzaW5nIGJpdHdpc2Utb3IuXG4iCisjfiAiTm90ZSB0aGF0IHRoZSBtZWFuaW5ncyBhbmQgdmFsdWVzIGFyZSBzdWJqZWN0IHRvIGNoYW5nZS5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIm9wY2nDsyBkZSBkZXB1cmFjacOzICVzLCAtLWRlYnVnPTxvY3RhbD4gbyAtRDxvY3RhbD46XG4iCisjfiAiXG4iCisjfiAiIG7Dum1lcm8gIHJlZi4gYWwgZm9udCAgICAgIGRlc2NyaXBjacOzXG4iCisjfiAiICAgICAgMSAgZ2VuZXJhbCAgICAgICAgICAgSW5mb3JtYWNpw7MgZGUgcHJvZ3LDqXMgZ2VuZXJhbG1lbnQgw7p0aWxcbiIKKyN+ICIgICAgICAyICBzY3JpcHRzICAgICAgICAgICBJbnZvY2FjacOzIGkgZXN0YXQgZGVscyBzY3JpcHRzIGRlbCBtYW50ZW5pZG9yXG4iCisjfiAiICAgICAxMCAgZWFjaGZpbGUgICAgICAgICAgRWl4aWRhIHBlciBjYWRhIGZpdHhlciBwcm9jZXNzYXRcbiIKKyN+ICIgICAgMTAwICBlYWNoZmlsZWRldGFpbCAgICBNb2x0YSBlaXhpZGEgcGVyIGNhZGEgZml0eGVyIHByb2Nlc3NhdFxuIgorI34gIiAgICAgMjAgIGNvbmZmICAgICAgICAgICAgIEVpeGlkYSBwZXIgY2FkYSBjb25mZmlsZVxuIgorI34gIiAgICAyMDAgIGNvbmZmZGV0YWlsICAgICAgIE1vbHRhIGVpeGlkYSBwZXIgY2FkYSBjb25mZmlsZVxuIgorI34gIiAgICAgNDAgIGRlcGNvbiAgICAgICAgICAgIERlcGVuZMOobmNpZXMgaSBjb25mbGljdGVzXG4iCisjfiAiICAgIDQwMCAgZGVwY29uZGV0YWlsICAgICAgTW9sdGEgZWl4aWRhIHNvYnJlIGRlcGVuZMOobmNpZXMgaSBjb25mbGljdGVzXG4iCisjfiAiICAxMDAwMCAgdHJpZ2dlcnMgICAgICAgICAgQWN0aXZhY2nDsyBpIHByb2Nlc3NhdCBkZWxzIGFjdGl2YWRvcnNcbiIKKyN+ICIgIDIwMDAwIHRyaWdnZXJzZGV0YWlsICAgICBNb2x0YSBlaXhpZGEgc29icmUgYWN0aXZhZG9yc1xuIgorI34gIiAgNDAwMDAgdHJpZ2dlcnNzdHVwaWQgICAgIFF1YW50aXRhdCBhYnN1cmRhIGQnZWl4aWRhIHNvYnJlIGFjdGl2YWRvcnNcbiIKKyN+ICIgICAxMDAwICB2ZXJ5dmVyYm9zZSAgICAgICBUb250ZXJpZXMgc29icmUgcC4gZXguIGVsIGRpcmVjdG9yaSBkcGtnL2luZm9cbiIKKyN+ICIgICAyMDAwICBzdHVwaWRseXZlcmJvc2UgICBNdW50YW55ZXMgZGUgdG9udGVyaWVzXG4iCisjfiAiXG4iCisjfiAiTGVzIG9wY2lvbnMgZGUgZGVwdXJhY2nDsyBlcyBiYXJyZWdlbiBmZW50IGwnT1IgYml0IGEgYml0LlxuIgorI34gIlRlbml1IGVuIGNvbXB0ZSBxdWUgZWxzIHNpZ25pZmljYXRzIGkgZWxzIHZhbG9ycyBlc3RhbiBzdWJqZWN0ZXMgYSAiCisjfiAiY2FudmlzLlxuIgorCisjfiBtc2dpZCAiIgorI34gIiVzIGZvcmNpbmcgb3B0aW9ucyAtIGNvbnRyb2wgYmVoYXZpb3VyIHdoZW4gcHJvYmxlbXMgZm91bmQ6XG4iCisjfiAiICB3YXJuIGJ1dCBjb250aW51ZTogIC0tZm9yY2UtPHRoaW5nPiw8dGhpbmc+LC4uLlxuIgorI34gIiAgc3RvcCB3aXRoIGVycm9yOiAgICAtLXJlZnVzZS08dGhpbmc+LDx0aGluZz4sLi4uIHwgLS1uby1mb3JjZS0iCisjfiAiPHRoaW5nPiwuLi5cbiIKKyN+ICIgRm9yY2luZyB0aGluZ3M6XG4iCisjfiAiICBhbGwgWyFdICAgICAgICAgICAgICAgIFNldCBhbGwgZm9yY2Ugb3B0aW9uc1xuIgorI34gIiAgZG93bmdyYWRlIFsqXSAgICAgICAgICBSZXBsYWNlIGEgcGFja2FnZSB3aXRoIGEgbG93ZXIgdmVyc2lvblxuIgorI34gIiAgY29uZmlndXJlLWFueSAgICAgICAgICBDb25maWd1cmUgYW55IHBhY2thZ2Ugd2hpY2ggbWF5IGhlbHAgdGhpcyBvbmVcbiIKKyN+ICIgIGhvbGQgICAgICAgICAgICAgICAgICAgUHJvY2VzcyBpbmNpZGVudGFsIHBhY2thZ2VzIGV2ZW4gd2hlbiBvbiBob2xkXG4iCisjfiAiICBiYWQtcGF0aCAgICAgICAgICAgICAgIFBBVEggaXMgbWlzc2luZyBpbXBvcnRhbnQgcHJvZ3JhbXMsIHByb2JsZW1zICIKKyN+ICJsaWtlbHlcbiIKKyN+ICIgIG5vdC1yb290ICAgICAgICAgICAgICAgVHJ5IHRvIChkZSlpbnN0YWxsIHRoaW5ncyBldmVuIHdoZW4gbm90IHJvb3RcbiIKKyN+ICIgIG92ZXJ3cml0ZSAgICAgICAgICAgICAgT3ZlcndyaXRlIGEgZmlsZSBmcm9tIG9uZSBwYWNrYWdlIHdpdGggYW5vdGhlclxuIgorI34gIiAgb3ZlcndyaXRlLWRpdmVydGVkICAgICBPdmVyd3JpdGUgYSBkaXZlcnRlZCBmaWxlIHdpdGggYW4gdW5kaXZlcnRlZCAiCisjfiAidmVyc2lvblxuIgorI34gIiAgYmFkLXZlcmlmeSAgICAgICAgICAgICBJbnN0YWxsIGEgcGFja2FnZSBldmVuIGlmIGl0IGZhaWxzIGF1dGhlbnRpY2l0eSAiCisjfiAiY2hlY2tcbiIKKyN+ICIgIGRlcGVuZHMtdmVyc2lvbiBbIV0gICAgVHVybiBkZXBlbmRlbmN5IHZlcnNpb24gcHJvYmxlbXMgaW50byB3YXJuaW5nc1xuIgorI34gIiAgZGVwZW5kcyBbIV0gICAgICAgICAgICBUdXJuIGFsbCBkZXBlbmRlbmN5IHByb2JsZW1zIGludG8gd2FybmluZ3NcbiIKKyN+ICIgIGNvbmZuZXcgWyFdICAgICAgICAgICAgQWx3YXlzIHVzZSB0aGUgbmV3IGNvbmZpZyBmaWxlcywgZG9uJ3QgcHJvbXB0XG4iCisjfiAiICBjb25mb2xkIFshXSAgICAgICAgICAgIEFsd2F5cyB1c2UgdGhlIG9sZCBjb25maWcgZmlsZXMsIGRvbid0IHByb21wdFxuIgorI34gIiAgY29uZmRlZiBbIV0gICAgICAgICAgICBVc2UgdGhlIGRlZmF1bHQgb3B0aW9uIGZvciBuZXcgY29uZmlnIGZpbGVzIGlmICIKKyN+ICJvbmVcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgaXMgYXZhaWxhYmxlLCBkb24ndCBwcm9tcHQuIElmIG5vIGRlZmF1bHQgY2FuIGJlICIKKyN+ICJmb3VuZCxcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgeW91IHdpbGwgYmUgcHJvbXB0ZWQgdW5sZXNzIG9uZSBvZiB0aGUgY29uZm9sZCAiCisjfiAib3JcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgY29uZm5ldyBvcHRpb25zIGlzIGFsc28gZ2l2ZW5cbiIKKyN+ICIgIGNvbmZtaXNzIFshXSAgICAgICAgICAgQWx3YXlzIGluc3RhbGwgbWlzc2luZyBjb25maWcgZmlsZXNcbiIKKyN+ICIgIGNvbmZhc2sgWyFdICAgICAgICAgICAgT2ZmZXIgdG8gcmVwbGFjZSBjb25maWcgZmlsZXMgd2l0aCBubyBuZXcgIgorI34gInZlcnNpb25zXG4iCisjfiAiICBicmVha3MgWyFdICAgICAgICAgICAgIEluc3RhbGwgZXZlbiBpZiBpdCB3b3VsZCBicmVhayBhbm90aGVyIHBhY2thZ2VcbiIKKyN+ICIgIGNvbmZsaWN0cyBbIV0gICAgICAgICAgQWxsb3cgaW5zdGFsbGF0aW9uIG9mIGNvbmZsaWN0aW5nIHBhY2thZ2VzXG4iCisjfiAiICBhcmNoaXRlY3R1cmUgWyFdICAgICAgIFByb2Nlc3MgZXZlbiBwYWNrYWdlcyB3aXRoIHdyb25nIGFyY2hpdGVjdHVyZVxuIgorI34gIiAgb3ZlcndyaXRlLWRpciBbIV0gICAgICBPdmVyd3JpdGUgb25lIHBhY2thZ2UncyBkaXJlY3Rvcnkgd2l0aCBhbm90aGVyJ3MgIgorI34gImZpbGVcbiIKKyN+ICIgIHVuc2FmZS1pbyBbIV0gICAgICAgICAgRG8gbm90IHBlcmZvcm0gc2FmZSBJL08gb3BlcmF0aW9ucyB3aGVuICIKKyN+ICJ1bnBhY2tpbmdcbiIKKyN+ICIgIHJlbW92ZS1yZWluc3RyZXEgWyFdICAgUmVtb3ZlIHBhY2thZ2VzIHdoaWNoIHJlcXVpcmUgaW5zdGFsbGF0aW9uXG4iCisjfiAiICByZW1vdmUtZXNzZW50aWFsIFshXSAgIFJlbW92ZSBhbiBlc3NlbnRpYWwgcGFja2FnZVxuIgorI34gIlxuIgorI34gIldBUk5JTkcgLSB1c2Ugb2Ygb3B0aW9ucyBtYXJrZWQgWyFdIGNhbiBzZXJpb3VzbHkgZGFtYWdlIHlvdXIgIgorI34gImluc3RhbGxhdGlvbi5cbiIKKyN+ICJGb3JjaW5nIG9wdGlvbnMgbWFya2VkIFsqXSBhcmUgZW5hYmxlZCBieSBkZWZhdWx0LlxuIgorI34gbXNnc3RyICIiCisjfiAiTGVzIG9wY2lvbnMgZGUgZm9yw6dhdCBkZSAlcyAtIGNvbnRyb2xlbiBlbCBjb21wb3J0YW1lbnQgcXVhbiBoaSBoYSAiCisjfiAicHJvYmxlbWVzOlxuIgorI34gIiAgYXZpc2EgcGVyw7IgY29udGludWE6ICAgICAgLS1mb3JjZS08Y29zYT4sPGNvc2E+LOKAplxuIgorI34gIiAgYXR1cmEndCBhbWIgZXJyb3I6ICAgICAgICAtLXJlZnVzZS08Y29zYT4sPGNvc2E+LOKApiB8IC0tbm8tZm9yY2UtPGNvc2E+LCIKKyN+ICLigKZcbiIKKyN+ICIgRm9yw6dhdCBkZSBjb3NlczpcbiIKKyN+ICIgIGFsbCBbIV0gICAgICAgICAgICAgICBBY3RpdmEgdG90ZXMgbGVzIG9wY2lvbnMgZGUgZm9yw6dhdFxuIgorI34gIiAgZG93bmdyYWRlIFsqXSAgICAgICAgIFJlZW1wbGHDp2EgdW4gcGFxdWV0IGFtYiB1bmEgdmVyc2nDsyBtZW5vclxuIgorI34gIiAgY29uZmlndXJlLWFueSAgICAgICAgIENvbmZpZ3VyYSBxdWFsc2V2b2wgcGFxdWV0IHF1ZSBwdWd1aSBhanVkYXIgYSAiCisjfiAiYXF1ZXN0XG4iCisjfiAiICBob2xkICAgICAgICAgICAgICAgICAgUHJvY2Vzc2EgcGFxdWV0cyBhY2Nlc3NvcmkgZmlucyBpIHRvdCBzaSBzw7NuICIKKyN+ICJyZXRpbmd1dHNcbiIKKyN+ICIgIGJhZC1wYXRoICAgICAgICAgICAgICBGYWx0ZW4gcHJvZ3JhbWVzIGltcG9ydGFudHMgYWwgUEFUSCwgcG9kZW5cbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICBoYXZlci1oaSBwcm9ibGVtZXNcbiIKKyN+ICIgIG5vdC1yb290ICAgICAgICAgICAgICBJbnRlbnRhIChkZXMpaW5zdGHFgGxhciBjb3NlcyBmaW5zIGkgdG90IHNlbnNlIHNlciAiCisjfiAicm9vdFxuIgorI34gIiAgb3ZlcndyaXRlICAgICAgICAgICAgIFNvYnJlZXNjcml1IHVuIGZpdHhlciBkJ3VuIHBhcXVldCBhbWIgdW4gYWx0cmVcbiIKKyN+ICIgIG92ZXJ3cml0ZS1kaXZlcnRlZCAgICBTb2JyZWVzY3JpdSB1biBmaXR4ZXIgZGVzdmlhdCBhbWIgdW5hIHZlcnNpw7Mgbm9cbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICBkZXN2aWFkYVxuIgorI34gIiAgYmFkLXZlcmlmeSAgICAgICAgICAgIEluc3RhxYBsYSB1biBwYXF1ZXQgZmlucyBpIHRvdCBzaSBmYWxsYSBsYSAiCisjfiAiY29tcHJvdmFjacOzXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgZCdhdXRlbnRpY2l0YXRcbiIKKyN+ICIgIGRlcGVuZHMtdmVyc2lvbiBbIV0gICBDb252ZXJ0ZWl4IGVuIGF2aXNvcyBlbHMgcHJvYmxlbWVzIGRlIGRlcGVuZMOobmNpYSAiCisjfiAiZGVcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICB2ZXJzacOzXG4iCisjfiAiICBkZXBlbmRzIFshXSAgICAgICAgICAgQ29udmVydGVpeCBlbiBhdmlzb3MgdG90cyBlbHMgcHJvYmxlbWVzIGRlXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgZGVwZW5kw6huY2llc1xuIgorI34gIiAgY29uZm5ldyBbIV0gICAgICAgICAgIFV0aWxpdHphIHNlbXByZSBlbHMgY29uZmZpbGVzIG5vdXMsIHNlbnNlICIKKyN+ICJwcmVndW50YXJcbiIKKyN+ICIgIGNvbmZvbGQgWyFdICAgICAgICAgICBVdGlsaXR6YSBzZW1wcmUgZWxzIGNvbmZmaWxlcyBhbnRpY3MsIHNlbnNlICIKKyN+ICJwcmVndW50YXJcbiIKKyN+ICIgIGNvbmZkZWYgWyFdICAgICAgICAgICBVdGlsaXR6YSBsJ29wY2nDsyBwcmVkZXRlcm1pbmFkYSBwZWxzIGNvbmZmaWxlcyAiCisjfiAibm91c1xuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgIHNpIGVzdGFuIGRpc3BvbmlibGVzLCBzZW5zZSBwcmVndW50YXIuIFNpIG5vIGVuXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgdHJvYmEgY2FwIGRlIHByZWRldGVybWluYXQgcHJlZ3VudGFyw6AsIGEgbWVueXMgIgorI34gInF1ZVxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgIHRhbWLDqSBsaSBkb25ldSBhbGd1bmEgZGUgbGVzIG9wY2lvbnMgY29uZm9sZCBvICIKKyN+ICJjb25mbmV3XG4iCisjfiAiICBjb25mbWlzcyBbIV0gICAgICAgICAgSW5zdGHFgGxhIHNlbXByZSBlbHMgY29uZmZpbGVzIHF1ZSBmYWx0ZW5cbiIKKyN+ICIgIGNvbmZhc2sgWyFdICAgICAgICAgICBPZmVyZWl4IHJlZW1wbGHDp2FyIGVscyBmaXR4ZXIgZGUgY29uZmlndXJhY2nDsyAiCisjfiAicGVyXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgY2FwIHZlcnNpw7Mgbm92YVxuIgorI34gIiAgY29uZmxpY3RzIFshXSAgICAgICAgIFBlcm1ldCBsYSBpbnN0YcWAbGFjacOzIGRlIHBhcXVldHMgZW4gY29uZmxpY3RlXG4iCisjfiAiICBhcmNoaXRlY3R1cmUgWyFdICAgICAgUHJvY2Vzc2EgZmlucyBpIHRvdCBlbHMgcGFxdWV0cyBhbWIgYXJxdWl0ZWN0dXJhICIKKyN+ICJlcnLDsm5pYVxuIgorI34gIiAgb3ZlcndyaXRlLWRpciBbIV0gICAgIFNvYnJlZXNjcml1IGVsIGRpcmVjdG9yaSBkJ3VuIHBhcXVldCBhbWIgZWwgIgorI34gImZpdHhlclxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgIGQndW4gYWx0cmVcbiIKKyN+ICIgIHVuc2FmZS1pbyBbIV0gICAgICAgICBObyByZWFsaXR6YSBvcGVyYWNpb25zIGQnRS9TIHNlZ3VyZXMgYWwgIgorI34gImRlc2VtcGFxdWV0YXJcbiIKKyN+ICIgIHJlbW92ZS1yZWluc3RyZXEgWyFdICBTdXByaW1laXggZWxzIHBhcXVldHMgcXVlIHByZWNpc2VuIGluc3RhxYBsYWNpw7NcbiIKKyN+ICIgIHJlbW92ZS1lc3NlbnRpYWwgWyFdICBTdXByaW1laXggdW4gcGFxdWV0IGVzc2VuY2lhbFxuIgorI34gIlxuIgorI34gIkFWw41TIC0gZm9yw6dhciBsJ8O6cyBkZSBsZXMgb3BjaW9ucyBtYXJjYWRlcyBhbWIgWyFdIHBvZGVuIG1hbG1ldHJlXG4iCisjfiAic2VyaW9zYW1lbnQgbGEgaW5zdGHFgGxhY2nDsy4gTGVzIG9wY2lvbnMgZGUgZm9yw6dhdCBtYXJjYWRlcyBhbWIgWypdIGVzdGFuXG4iCisjfiAiYWN0aXZhZGVzIHBlciBkZWZlY3RlLlxuIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgZHBrZy1zcGxpdCB0byBzZWUgaWYgaXQncyBwYXJ0IG9mIGEgbXVsdGlwYXJ0ZXIiCisjfiBtc2dzdHIgIiIKKyN+ICJubyBzJ2hhIHBvZ3V0IGV4ZWN1dGFyIGRwa2ctc3BsaXQgcGVyIGEgdmV1cmUgc2kgw6lzIHBhcnQgZCd1bmEgcGFydCAiCisjfiAibcO6bHRpcGxlIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWNsIGRlYnNpZy12ZXJpZnkiCisjfiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgZmVyIMKrZXhlY2zCuyBzb2JyZSBkZWJzaWctdmVyaWZ5IgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgZHBrZy1kZWIgdG8gZXh0cmFjdCBjb250cm9sIGluZm9ybWF0aW9uIgorI34gbXNnc3RyICIiCisjfiAibm8gcydoYSBwb2d1dCBleGVjdXRhciBkcGtnLWRlYiBwZXIgYSBleHRyZXVyZSBsYSBpbmZvcm1hY2nDsyBkZSBjb250cm9sIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGV4ZWMgZHBrZy1kZWIgdG8gZ2V0IGZpbGVzeXN0ZW0gYXJjaGl2ZSIKKyN+IG1zZ3N0ciAiIgorI34gIm5vIGVzIHBvdCBleGVjdXRhciBkcGtnLWRlYiBwZXIgYSBvYnRpbmRyZSBsJ2FyeGl1IGRlbCBzaXN0ZW1hIGRlIGZpdHhlcnMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gZGVsZXRlIGRpc2FwcGVhcmluZyBjb250cm9sIGluZm8gZmlsZSBgJS4yNTBzJyIKKyN+IG1zZ3N0ciAiIgorI34gIm5vIGVzIHBvdCBlc2JvcnJhciBlbCBmaXR4ZXIgZCdpbmZvLiBkZSBjb250cm9sIMKrJS4yNTBzwrsgcXVlIGhhICIKKyN+ICJkZXNhcGFyZWd1dCIKKworI34gbXNnaWQgImRwa2c6ICVzIG5vdCBmb3VuZC5cbiIKKyN+IG1zZ3N0ciAiZHBrZzogJXMgbm8gdHJvYmF0LlxuIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIC4uLi9ERUJJQU4iCisjfiBtc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gY2FudmlhciBhbCBkaXJlY3Rvcmkg4oCmL0RFQklBTiIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIHRhciAtY2YiCisjfiBtc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gZXhlY3V0YXIgdGFyIC1jZiIKKworI34gbXNnaWQgImZhaWxlZCB0byBtYWtlIHRtcGZpbGUgKGNvbnRyb2wpIgorI34gbXNnc3RyICJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIGNyZWFyIHVuIGZpdHhlciB0ZW1wb3JhbCAoY29udHJvbCkiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gdW5saW5rIHRtcGZpbGUgKGNvbnRyb2wpLCAlcyIKKyN+IG1zZ3N0ciAiIgorI34gInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gZGVzZW5sbGHDp2FyIGVsIGZpdHhlciB0ZW1wb3JhbCAoY29udHJvbCksICVzIgorCisjfiBtc2dpZCAiY29udHJvbCIKKyN+IG1zZ3N0ciAiY29udHJvbCIKKworI34gbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdG1wZmlsZSAoY29udHJvbCkiCisjfiBtc2dzdHIgIiIKKyN+ICJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIGZlciDCq3Jld2luZMK7IHNvYnJlIGVsIGZpdHhlciB0ZW1wb3JhbCAoY29udHJvbCkiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZnN0YXQgdG1wZmlsZSAoY29udHJvbCkiCisjfiBtc2dzdHIgIiIKKyN+ICJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIGZlciDCq2ZzdGF0wrsgc29icmUgZWwgZml0eGVyIHRlbXBvcmFsIChjb250cm9sKSIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIGZpbmQiCisjfiBtc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gZXhlY3V0YXIgZmluZCIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIHNoIC1jIG12IGZvby8qICZjIgorI34gbXNnc3RyICJzJ2hhIHByb2R1w690IHVuIGVycm9yIGEgbCdleGVjdXRhciBzaCAtYyBtdiBmb28vKiBldGMuIgorCisjfiBtc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gJS4yNTBzIGxlbmd0aCBjb250YWlucyBudWxscyIKKyN+IG1zZ3N0ciAiZWwgZml0eGVyIMKrJS4yNTBzwrsgZXN0w6AgY29ycm9tcHV0IC0gbGEgbG9uZ2l0dWQgJS4yNTBzIGNvbnTDqSBudWxzIgorCisjfiBtc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gbmVnYXRpdmUgbWVtYmVyIGxlbmd0aCAlemkiCisjfiBtc2dzdHIgImVsIGZpdHhlciDCqyUuMjUwc8K7IGVzdMOgIGNvcnJvbXB1dCAtIGxvbmdpdHVkICV6aSBuZWdhdGl2YSIKKworI34gbXNnaWQgImZhaWxlZCBnZXR0aW5nIHRoZSBjdXJyZW50IGZpbGUgcG9zaXRpb24iCisjfiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgb2J0ZW5pciBsYSBwb3NpY2nDsyBhY3R1YWwgZGVsIGZpdHhlciIKKworI34gbXNnaWQgImZhaWxlZCBzZXR0aW5nIHRoZSBjdXJyZW50IGZpbGUgcG9zaXRpb24iCisjfiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgZXN0YWJsaXIgbGEgcG9zaWNpw7MgYWN0dWFsIGRlbCBmaXR4ZXIiCisKKyN+IG1zZ2lkICJ2ZXJzaW9uIG51bWJlciIKKyN+IG1zZ3N0ciAibsO6bWVybyBkZSB2ZXJzacOzIgorCisjfiBtc2dpZCAibWVtYmVyIGxlbmd0aCIKKyN+IG1zZ3N0ciAibWlkYSBkZWwgbWVtYnJlIgorCisjfiBtc2dpZCAiaGVhZGVyIGluZm8gbWVtYmVyIgorI34gbXNnc3RyICJpbmZvLiBkZSBjYXDDp2FsZXJhIGRlIGwnZWxlbWVudCIKKworI34gbXNnaWQgInNraXBwZWQgY29udHJvbCBhcmVhIGZyb20gJXMiCisjfiBtc2dzdHIgInMnb21ldCBsJ8OgcmVhIGRlIGNvbnRyb2wgZGUgJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHRlbXBvcmFyeSBkaXJlY3RvcnkiCisjfiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgY3JlYXIgdW4gZGlyZWN0b3JpIHRlbXBvcmFsIgorCisjfiBtc2dpZCAiaW5mb19zcGV3IgorI34gbXNnc3RyICJpbmZvX3NwZXciCisKKyN+IG1zZ2lkICJpbmZvIGxlbmd0aCIKKyN+IG1zZ3N0ciAibWlkYSBkJ2luZm8iCisKKyN+IG1zZ2lkICJ0b3RhbCBsZW5ndGgiCisjfiBtc2dzdHIgIm1pZGEgdG90YWwiCisKKyN+IG1zZ2lkICJkYXRhIGxlbmd0aCIKKyN+IG1zZ3N0ciAibWlkYSBkZSBsZXMgZGFkZXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBkcGtnLWRlYiB0byBleHRyYWN0IGZpZWxkIHZhbHVlIgorI34gbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGV4ZWN1dGFyIGRwa2ctZGViIHBlciBhIGV4dHJldXJlIGVsIHZhbG9yIGRlbCBjYW1wIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHN0YXQgJXM6ICVzIgorI34gbXNnc3RyICJubyBlcyBwb3QgZmV0IMKrc3RhdMK7IHNvYnJlICVzOiAlcyIKKworI34gbXNnaWQgInNsYXZlIG5hbWUgJXMgZHVwbGljYXRlZCIKKyN+IG1zZ3N0ciAiZWwgbm9tIGRlIGwnZXNjbGF1ICVzIGVzdMOgIGR1cGxpY2F0IgorCisjfiBtc2dpZCAic2xhdmUgbGluayAlcyBkdXBsaWNhdGVkIgorI34gbXNnc3RyICJsJ2VubGxhw6cgZHVwbGljYXQgJXMgZXN0w6AgZHVwbGljYXQiCisKKyN+IG1zZ2lkICIlZCByZXF1ZXN0ZWQgY29udHJvbCBjb21wb25lbnRzIGFyZSBtaXNzaW5nIgorI34gbXNnc3RyICJGYWx0ZW4gJWQgY29tcG9uZW50cyBkZSBjb250cm9sIHJlcXVlcml0cyIKKworI34gbXNnaWQgImNhdCAoZGF0YSkiCisjfiBtc2dzdHIgImNhdCAoZGFkZXMpIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIG9wZW4gcGlwZSBkZXNjcmlwdG9yIGAxJyBpbiBwYXN0ZSIKKyN+IG1zZ3N0ciAibm8gcydoYSBwb2d1dCBvYnJpciBlbCBkZXNjcmlwdG9yIGRlIGZpdHhlciDCqzHCuyBlbiDCq3Bhc3RlwrsiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gd3JpdGUgdG8gZ3ppcCAtZGMiCisjfiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgZXNjcml1cmUgYSBnemlwIC1kYyIKKworI34gbXNnaWQgImZhaWxlZCB0byBjbG9zZSBnemlwIC1kYyIKKyN+IG1zZ3N0ciAibm8gcydoYSBwb2d1dCB0YW5jYXIgZ3ppcCAtZGMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gc3lzY2FsbCBsc2VlayB0byBmaWxlcyBhcmNoaXZlIHBvcnRpb24iCisjfiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgZmVyIMKrc3lzY2FsbCBsc2Vla8K7IGFscyBmaXR4ZXJzIHBvcmNpw7MgZCdhcnhpdSIKKworI34gbXNnaWQgInVuYWJsZSB0byBleGVjIG1rc3BsaXQiCisjfiBtc2dzdHIgIm5vIGVzIHBvdCBleGVjdXRhciBta3NwbGl0IgorCisjfiBtc2dpZCAiIgorI34gIlxuIgorI34gIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLiIKKyN+IG1zZ3N0ciAiIgorI34gIlxuIgorI34gIkNvcHlyaWdodCDCqSAxOTk1IElhbiBKYWNrc29uLlxuIgorI34gIkNvcHlyaWdodCDCqSAyMDAwLCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4uIgorCisjfiBtc2dpZCAidHdvIGNvbW1hbmRzIHNwZWNpZmllZDogJXMgYW5kIC0tJXMiCisjfiBtc2dzdHIgInMnaGEgZXNwZWNpZmljYXQgZG9zIG9yZHJlczogJXMgaSAtLSVzIgorCisjfiBtc2dpZCAiLS0lcyBuZWVkcyBhIGRpdmVydC10byBhcmd1bWVudCIKKyN+IG1zZ3N0ciAiLS0lcyBuZWNlc3NpdGEgdW4gYXJndW1lbnQgYW1iIGxhIGRlc3ZpYWNpw7MiCisKKyN+IG1zZ2lkICItLSVzIG5lZWRzIGEgPHBhY2thZ2U+IGFyZ3VtZW50IgorI34gbXNnc3RyICItLSVzIG5lY2Vzc2l0YSB1biA8cGFxdWV0PiBjb20gYSBwYXLDoG1ldHJlIgorCisjfiBtc2dpZCAiY2Fubm90IG9wZW4gZGl2ZXJzaW9uczogJXMiCisjfiBtc2dzdHIgIm5vIHMnaGFuIHBvZ3V0IG9icmlyIGxlcyBkZXN2aWFjaW9uczogJXMiCisKKyN+IG1zZ2lkICJtaXNzaW5nIGFsdG5hbWUiCisjfiBtc2dzdHIgIm1hbmNhIGVsIG5vbSBhbHRlcm5hdGl1IgorCisjfiBtc2dpZCAibWlzc2luZyBwYWNrYWdlIgorI34gbXNnc3RyICJtYW5jYSBlbCBwYXF1ZXQiCisKKyN+IG1zZ2lkICJpbnRlcm5hbCBlcnJvciAtIGJhZCBtb2RlIGAlcyciCisjfiBtc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgaW50ZXJuIC0gZWwgbW9kZSDCqyVzwrsgw6lzIGluY29ycmVjdGUiCisKKyN+IG1zZ2lkICJjYW5ub3Qgc3RhdCBvbGQgbmFtZSBgJXMnOiAlcyIKKyN+IG1zZ3N0ciAibm8gZXMgcG90IGZlciDCq3N0YXTCuyBzb2JyZSBlbCBub20gdmVsbCDCqyVzwrs6ICVzIgorCisjfiBtc2dpZCAicmVuYW1lOiByZW5hbWUgYCVzJyB0byBgJXMnOiAlcyIKKyN+IG1zZ3N0ciAiY2FudmkgZGUgbm9tOiBjYW52aWEgZWwgbm9tIGRlIMKrJXPCuyBhIMKrJXPCuzogJXMiCisKKyN+IG1zZ2lkICJjcmVhdGUgZGl2ZXJzaW9ucy1uZXc6ICVzIgorI34gbXNnc3RyICJjcmVhIGVsIGRpdmVyc2lvbnMtbmV3OiAlcyIKKworI34gbXNnaWQgIndyaXRlIGRpdmVyc2lvbnMtbmV3OiAlcyIKKyN+IG1zZ3N0ciAiZXNjcml1IGVsIGRpdmVyc2lvbnMtbmV3OiAlcyIKKworI34gbXNnaWQgImNsb3NlIGRpdmVyc2lvbnMtbmV3OiAlcyIKKyN+IG1zZ3N0ciAidGFuY2EgZWwgZGl2ZXJzaW9ucy1uZXc6ICVzIgorCisjfiBtc2dpZCAiY3JlYXRlIG5ldyBkaXZlcnNpb25zLW9sZDogJXMiCisjfiBtc2dzdHIgImNyZWEgZWwgbm91IGRpdmVyc2lvbnMtb2xkOiAlcyIKKworI34gbXNnaWQgImluc3RhbGwgbmV3IGRpdmVyc2lvbnM6ICVzIgorI34gbXNnc3RyICJpbnN0YcWAbGEgZWwgbm91IGRpdmVyc2lvbnM6ICVzIgorCisjfiBtc2dpZCAiaW50ZXJuYWwgZXJyb3I6ICVzIGNvcnJ1cHQ6ICVzIgorI34gbXNnc3RyICJzJ2hhIHByb2R1w690IHVuIGVycm9yIGludGVybjogJXMgZXN0w6AgY29ycm9tcHV0OiAlcyIKKworI34gbXNnaWQgImRwa2ctZGViIC0gZXJyb3I6ICVzIChgJXMnKSBkb2Vzbid0IGNvbnRhaW4gYW55IGRpZ2l0c1xuIgorI34gbXNnc3RyICJkcGtnLWRlYiAtIGVycm9yOiAlcyAowqslc8K7KSBubyBjb250w6kgY2FwIGTDrWdpdFxuIgorCisjfiBtc2dpZCAiJWQgZXJyb3JzIGluIGNvbnRyb2wgZmlsZSIKKyN+IG1zZ3N0ciAiJWQgZXJyb3JzIGFsIGZpdHhlciBkZSBjb250cm9sIgorCisjfiBtc2dpZCAiZmFpbGVkIGluIGJ1ZmZlcl93cml0ZShmZCkgKCVpLCByZXQ9JWxpKTogJXMiCisjfiBtc2dzdHIgImhhIGZhbGxhdCBlbiBidWZmZXJfd3JpdGUoZmQpICglaSwgcmV0PSVsaSk6ICVzIgorCisjfiBtc2dpZCAiZW9mIGluIGJ1ZmZlcl93cml0ZShzdHJlYW0pOiAlcyIKKyN+IG1zZ3N0ciAiZW9mIGVuIGVsIGJ1ZmZlcl93cml0ZShzdHJlYW0pOiAlcyIKKworI34gbXNnaWQgImVycm9yIGluIGJ1ZmZlcl93cml0ZShzdHJlYW0pOiAlcyIKKyN+IG1zZ3N0ciAiZXJyb3IgZW4gZWwgYnVmZmVyX3dyaXRlKHN0cmVhbSk6ICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIGluIGJ1ZmZlcl9yZWFkKGZkKTogJXMiCisjfiBtc2dzdHIgImVycm9yIGVuIGVsIGJ1ZmZlcl9yZWFkKGZkKTogJXMiCisKKyN+IG1zZ2lkICJlcnJvciBpbiBidWZmZXJfcmVhZChzdHJlYW0pOiAlcyIKKyN+IG1zZ3N0ciAiZXJyb3IgZW4gZWwgYnVmZmVyX3JlYWQoc3RyZWFtKTogJXMiCisKKyN+IG1zZ2lkICIiCisjfiAiXG4iCisjfiAiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbmNlIHZlcnNpb24gMiBvclxuIgorI34gImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LlxuIgorI34gbXNnc3RyICIiCisjfiAiXG4iCisjfiAiQWl4w7Igw6lzIHByb2dyYW1hcmkgbGxpdXJlLCB2ZWdldSBsYSBMbGljw6huY2lhIFDDumJsaWNhIEdlbmVyYWwgR05VIHZlcnNpw7MgIgorI34gIjJcbiIKKyN+ICJvIHBvc3RlcmlvciBwZXIgYSBsZXMgY29uZGljaW9ucyBkZSBjw7JwaWEuIE5vIGhpIGhhIENBUCBnYXJhbnRpYS5cbiIKKworI34gbXNnaWQgIiVzOiBmYWlsZWQgdG8gZXhlYyAnJXMgJXMnIgorI34gbXNnc3RyICIlczogbm8gcydoYSBwb2d1dCBleGVjdXRhciDCqyVzICVzwrsiCisKKyN+IG1zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCBlcnJvcjogcmVhZDogYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IHMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgaW50ZXJuIGRlIGd6aXA6IGxlY3R1cmE6IMKrJXPCuyIKKworI34gbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIGVycm9yOiB3cml0ZTogYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IHMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgaW50ZXJuIGRlIGd6aXA6IGVzY3JpcHR1cmEgwqslc8K7IgorCisjfiBtc2dpZCAiJXM6IGludGVybmFsIGd6aXAgZXJyb3I6IHJlYWQoJWkpICE9IHdyaXRlKCVpKSIKKyN+IG1zZ3N0ciAiIgorI34gIiVzOiBzJ2hhIHByb2R1w690IHVuIGVycm9yIGludGVybiBkZSBnemlwOiBsZWN0dXJhKCVpKSAhPSBlc2NyaXB0dXJhKCVpKSIKKworI34gbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiBlcnJvcjogcmVhZDogYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IHMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgaW50ZXJuIGRlIGJ6aXAyOiBsZWN0dXJhOiDCqyVzwrsiCisKKyN+IG1zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgZXJyb3I6IHdyaXRlOiBgJXMnIgorI34gbXNnc3RyICIlczogcydoYSBwcm9kdcOvdCB1biBlcnJvciBpbnRlcm4gZGUgYnppcDI6IGVzY3JpcHR1cmEgwqslc8K7IgorCisjfiBtc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIGVycm9yOiByZWFkKCVpKSAhPSB3cml0ZSglaSkiCisjfiBtc2dzdHIgIiIKKyN+ICIlczogcydoYSBwcm9kdcOvdCB1biBlcnJvciBpbnRlcm4gZGUgYnppcDI6IGxlY3R1cmEoJWkpICE9IGVzY3JpcHR1cmEoJWkpIgorCisjfiBtc2dpZCAiRG9uJ3QgZm9yZ2V0IHRvIGZvcmVncm91bmQgKGBmZycpIHRoaXMgcHJvY2VzcyB3aGVuIHlvdSdyZSBkb25lICFcbiIKKyN+IG1zZ3N0ciAiIgorI34gIk5vIHZvcyBvYmxpZGV1IGRlIHBvc2FyIGVuIHByaW1lciBwbGEgYXF1ZXN0IHByb2PDqXMgYW1iIMKrZmfCuyBxdWFuICIKKyN+ICJhY2FiZXUhXG4iCisKKyN+IG1zZ2lkICIiCisjfiAiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvclxuIgorI34gImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LlxuIgorI34gIlNlZSAlcyAtLWxpY2Vuc2UgZm9yIGNvcHlyaWdodCBhbmQgbGljZW5zZSBkZXRhaWxzLlxuIgorI34gbXNnc3RyICIiCisjfiAiQWl4w7Igw6lzIHByb2dyYW1hcmkgbGxpdXJlLCB2ZWdldSBsYSBMbGljw6huY2lhIFDDumJsaWNhIEdlbmVyYWwgR05VIHZlcnNpw7MgIgorI34gIjJcbiIKKyN+ICJvIHBvc3RlcmlvciBwZXIgYSBsZXMgY29uZGljaW9ucyBkZSBjw7JwaWEuIE5vIGhpIGhhIENBUCBnYXJhbnRpYS5cbiIKKyN+ICJWZWdldSAlcyAtLWxpY2Vuc2UgcGVyIGEgdmV1cmUnbiBtw6lzIGRldGFsbHMuXG4iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gZ2V0IHVuaXF1ZSBmaWxlbmFtZSBmb3IgY29udHJvbCBpbmZvIgorI34gbXNnc3RyICJubyBlcyBwb3Qgb2J0aW5kcmUgdW4gbm9tIGRlIGZpdHhlciDDum5pYyBwZXIgYSBsYSBpbmZvLiBkZSBjb250cm9sIgorCisjfiBtc2dpZCAiRGViaWFuIGAlcycgcGFja2FnZSBtYW5hZ2VtZW50IHByb2dyYW0gcXVlcnkgdG9vbFxuIgorI34gbXNnc3RyICJFaW5hIGRlIGNvbnN1bHRlcyBhbCBwcm9ncmFtYSBkZSBnZXN0acOzIGRlIHBhcXVldHMgwqslc8K7IGRlIERlYmlhblxuIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGNob3duICVzOiAlcyIKKyN+IG1zZ3N0ciAibm8gcydoYSBwb2d1dCBmZXIgY2hvd24gJXM6ICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGNobW9kICVzOiAlcyIKKyN+IG1zZ3N0ciAibm8gcydoYSBwb2d1dCBmZXIgY2htb2QgJXM6ICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGZvcmsgZm9yIGNsZWFudXAiCisjfiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgZmVyIMKrZm9ya8K7IHBlciBhIGxhIG5ldGVqYSIKKworI34gbXNnaWQgImZhaWxlZCB0byB3YWl0IGZvciBybSBjbGVhbnVwIgorI34gbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGVzcGVyYXIgcGVyIGEgbGEgbmV0ZWphIGFtYiBybSIKKworI34gbXNnaWQgInJtIGNsZWFudXAgZmFpbGVkLCBjb2RlICVkXG4iCisjfiBtc2dzdHIgImxhIG5ldGVqYSBhbWIgcm0gaGEgZmFsbGF0LCBjb2RpICVkXG4iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBybSAtcmYiCisjfiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgZXhlY3V0YXIgcm0gLXJmIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHJlYWQgYGNvbnRyb2wnIChpbiBgJS4yNTVzJykiCisjfiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgbGxlZ2lyIMKrY29udHJvbMK7IChlbiDCqyUuMjU1c8K7KSIKKworI34gbXNnaWQgInVuYWJsZSB0byBzZWVrIGJhY2siCisjfiBtc2dzdHIgIm5vIGVzIHBvdCBmZXIgwqtzZWVrwrsgY2FwIGVucmFkZXJhIgorCisjfiBtc2dpZCAidW5rbm93biBkYXRhIHR5cGUgYCVpJyBpbiBidWZmZXJfd3JpdGVcbiIKKyN+IG1zZ3N0ciAidGlwdXMgZGUgZGFkYSDCqyVpwrsgZGVzY29uZWd1ZGEgZW4gZWwgYnVmZmVyX3dyaXRlXG4iCisKKyN+IG1zZ2lkICJ1bmtub3duIGRhdGEgdHlwZSBgJWknIGluIGJ1ZmZlcl9yZWFkXG4iCisjfiBtc2dzdHIgImVsIHRpcHVzIGRlIGRhZGEgw6lzIGRlc2NvbmVndXQgwqslacK7IGVuIGJ1ZmZlcl9yZWFkXG4iCisKKyN+IG1zZ2lkICJ3YWl0IGZvciBzaGVsbCBmYWlsZWQiCisjfiBtc2dzdHIgImwnZXNwZXJhIHBlbCBzaGVsbCBoYSBmYWxsYXQiCisKKyN+IG1zZ2lkICJyZWFkIGVycm9yIGluIGRpdmVyc2lvbnMgW2ldIgorI34gbXNnc3RyICJzJ2hhIHByb2R1w690IHVuIGVycm9yIGRlIGxlY3R1cmEgZW4gbGVzIGRlc3ZpYWNpb25zIFtpXSIKKworI34gbXNnaWQgInVubGluayIKKyN+IG1zZ3N0ciAiZGVzZW5sbGHDp2FyIgorCisjfiBtc2dpZCAiY2htb2QiCisjfiBtc2dzdHIgImNhbnZpYXIgZWwgbW9kZSBkZSIKKworI34gbXNnaWQgImRlbGV0ZSIKKyN+IG1zZ3N0ciAic3VwcmltaXIiCisKKyN+IG1zZ2lkICJ3YWl0IGZvciBkcGtnLXNwbGl0IGZhaWxlZCIKKyN+IG1zZ3N0ciAibCdlc3BlcmEgcGVyIGRwa2ctc3BsaXQgaGEgZmFsbGF0IgorCisjfiBtc2dpZCAiY2Fubm90IHJlbW92ZSBmaWxlIGAlLjI1MHMnIgorI34gbXNnc3RyICJubyBlcyBwb3QgZXNib3JyYXIgZWwgZml0eGVyIMKrJS4yNTBzwrsiCisKKyN+IG1zZ2lkICIiCisjfiAiXG4iCisjfiAiQ29weXJpZ2h0IChDKSAyMDAwIFdpY2hlcnQgQWtrZXJtYW4uIgorI34gbXNnc3RyICIiCisjfiAiXG4iCisjfiAiQ29weXJpZ2h0IMKpIDIwMDAgV2ljaGVydCBBa2tlcm1hbi4iCisKKyN+IG1zZ2lkICJubyBtb2RlIHNwZWNpZmllZCIKKyN+IG1zZ3N0ciAibm8gcydoYSBlc3BlY2lmaWNhdCBjYXAgbW9kZSIKKworI34gbXNnaWQgImlsbGVnYWwgdXNlciAlcyIKKyN+IG1zZ3N0ciAibCd1c3VhcmkgJXMgw6lzIGnFgGxlZ2FsIgorCisjfiBtc2dpZCAibm9uLWV4aXN0aW5nIHVzZXIgJXMiCisjfiBtc2dzdHIgImwndXN1YXJpICVzIG5vIGV4aXN0ZWl4IgorCisjfiBtc2dpZCAiaWxsZWdhbCBncm91cCAlcyIKKyN+IG1zZ3N0ciAiZWwgZ3J1cCAlcyDDqXMgacWAbGVnYWwiCisKKyN+IG1zZ2lkICJub24tZXhpc3RpbmcgZ3JvdXAgJXMiCisjfiBtc2dzdHIgImVsIGdydXAgJXMgbm8gZXhpc3RlaXgiCisKKyN+IG1zZ2lkICJpbGxlZ2FsIG1vZGUgJXMiCisjfiBtc2dzdHIgImVsIG1vZGUgJXMgw6lzIGnFgGxlZ2FsIgorCisjfiBtc2dpZCAiYWJvcnRpbmciCisjfiBtc2dzdHIgInMnZXN0w6AgYXZvcnRhbnQiCisKKyN+IG1zZ2lkICJjYW5ub3Qgb3BlbiBzdGF0b3ZlcnJpZGU6ICVzIgorI34gbXNnc3RyICJubyBzJ2hhIHBvZ3V0IG9icmlyIGVsIGZpdHhlciBkZSBzdGF0b3ZlcnJpZGU6ICVzIgorCisjfiBtc2dpZCAiTXVsdGlwbGUgb3ZlcnJpZGVzIGZvciBcIiVzXCIsIGFib3J0aW5nIgorI34gbXNnc3RyICJIaSBoYSBtw7psdGlwbGVzIHN1YnN0aXR1Y2lvbnMgcGVyIGEgwqslc8K7LCBzJ2VzdMOgIGF2b3J0YW50IgorCisjfiBtc2dpZCAiZmFpbGVkIHdyaXRlIGR1cmluZyBoYXNocmVwb3J0IgorI34gbXNnc3RyICJlc2NyaXB0dXJhIGZhbGxpZGEgZGUgbCdpbmZvcm1lIGRlIHRpcHVzIMKraGFzaMK7IgorCisjfiBtc2dpZCAiY29uZmlndXJhdGlvbiBlcnJvcjogdW5rbm93biBvcHRpb24gJXMiCisjfiBtc2dzdHIgImVycm9yIGRlIGNvbmZpZ3VyYWNpw7M6IG9wY2nDsyBkZXNjb25lZ3VkYSAlcyIKKworI34gbXNnaWQgImNvbmZpZ3VyYXRpb24gZXJyb3I6ICVzIGRvZXMgbm90IHRha2UgYSB2YWx1ZSIKKyN+IG1zZ3N0ciAiZXJyb3IgZGUgY29uZmlndXJhY2nDszogJXMgbm8gdMOpIHBhcsOgbWV0cmVzIgorCisjfiBtc2dpZCAiZHBrZzogdmVyc2lvbiAnJXMnIGhhcyBiYWQgc3ludGF4OiAlc1xuIgorI34gbXNnc3RyICJkcGtnOiBsYSB2ZXJzacOzIMKrJXPCuyB0w6kgdW5hIHNpbnRheGkgZG9sZW50YTogJXNcbiIKKworI34gbXNnaWQgIi0tZm9yZ2V0LW9sZC11bmF2YWlsIHRha2VzIG5vIGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiLS1mb3JnZXQtb2xkLXVuYXZhaWwgbm8gYWNjZXB0YSBjYXAgYXJndW1lbnQiCisKKyN+IG1zZ2lkICIiCisjfiAiXG4iCisjfiAiQ29weXJpZ2h0IChDKSAxOTk0LDE5OTUgSWFuIEphY2tzb24uIgorI34gbXNnc3RyICIiCisjfiAiXG4iCisjfiAiQ29weXJpZ2h0IMKpIDE5OTQsMTk5NSBJYW4gSmFja3Nvbi4iCisKKyN+IG1zZ2lkICIiCisjfiAiVXNhZ2U6ICVzIFs8b3B0aW9ucz4gLi4uXSBbLS1dIDxmaWxlbmFtZT5cbiIKKyN+ICJcbiIKKyN+ICJPcHRpb25zOlxuIgorI34gIiAgLS1zZWN0aW9uIDxyZWdleHA+IDx0aXRsZT5cbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICBwdXQgdGhlIG5ldyBlbnRyeSBpbiB0aGUgPHJlZ2V4PiBtYXRjaGVkICIKKyN+ICJzZWN0aW9uXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgb3IgY3JlYXRlIGEgbmV3IG9uZSB3aXRoIDx0aXRsZT4gaWYgbm9uLSIKKyN+ICJleGlzdGVudC5cbiIKKyN+ICIgIC0tbWVudWVudHJ5PTx0ZXh0PiAgICAgICBzZXQgdGhlIG1lbnUgZW50cnkuXG4iCisjfiAiICAtLWRlc2NyaXB0aW9uPTx0ZXh0PiAgICAgc2V0IHRoZSBkZXNjcmlwdGlvbiB0byBiZSB1c2VkIGluIHRoZSBtZW51ICIKKyN+ICJlbnRyeS5cbiIKKyN+ICIgIC0taW5mby1maWxlPTxwYXRoPiAgICAgICBzcGVjaWZ5IGluZm8gZmlsZSB0byBpbnN0YWxsIGluIHRoZSAiCisjfiAiZGlyZWN0b3J5LlxuIgorI34gIiAgLS1kaXItZmlsZT08cGF0aD4gICAgICAgIHNwZWNpZnkgZmlsZSBuYW1lIG9mIGluZm8gZGlyZWN0b3J5IGZpbGUuXG4iCisjfiAiICAtLWluZm9kaXI9PGRpcmVjdG9yeT4gICAgc2FtZSBhcyAnLS1kaXItZmlsZT08ZGlyZWN0b3J5Pi9kaXInLlxuIgorI34gIiAgLS1pbmZvLWRpcj08ZGlyZWN0b3J5PiAgIGxpa2V3aXNlLlxuIgorI34gIiAgLS1rZWVwLW9sZCAgICAgICAgICAgICAgIGRvIG5vdCByZXBsYWNlIGVudHJpZXMgbm9yIHJlbW92ZSBlbXB0eSBvbmVzLlxuIgorI34gIiAgLS1yZW1vdmUgICAgICAgICAgICAgICAgIHJlbW92ZSB0aGUgZW50cnkgc3BlY2lmaWVkIGJ5IDxmaWxlbmFtZT4gIgorI34gImJhc2VuYW1lLlxuIgorI34gIiAgLS1yZW1vdmUtZXhhY3RseSAgICAgICAgIHJlbW92ZSB0aGUgZXhhY3QgPGZpbGVuYW1lPiBlbnRyeS5cbiIKKyN+ICIgIC0tdGVzdCAgICAgICAgICAgICAgICAgICBlbmFibGVzIHRlc3QgbW9kZSAobm8gYWN0aW9ucyB0YWtlbikuXG4iCisjfiAiICAtLWRlYnVnICAgICAgICAgICAgICAgICAgZW5hYmxlcyBkZWJ1ZyBtb2RlIChzaG93IG1vcmUgaW5mb3JtYXRpb24pLlxuIgorI34gIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIGRvIG5vdCBzaG93IG91dHB1dCBtZXNzYWdlcy5cbiIKKyN+ICIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorI34gIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJGb3JtYSBkJ8O6czogJXMgWzxvcGNpb25zPiDigKZdIFstLV0gPGZpdHhlcj5cbiIKKyN+ICJcbiIKKyN+ICJPcGNpb25zOlxuIgorI34gIiAgLS1zZWN0aW9uIDxleHAtcmVnPiA8dMOtdG9sPlxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2EgbGEgbm92YSBlbnRyYWRhIGVuIGxhIHNlY2Npw7MgcXVlICIKKyN+ICJjb2luY2lkZWl4aVxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGFtYiBsJzxleHAtcmVnPiwgbyBlbiBjcmVhIHVuYSBkZSBub3ZhIGFtYiBlbCAiCisjfiAibm9tXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgPHTDrXRvbD4gc2kgbm8gZXhpc3RlaXguXG4iCisjfiAiICAtLW1lbnVlbnRyeT08dGV4dD4gICAgICAgZGVmaW5laXggbCdlbnRyYWRhIGRlbCBtZW7Dui5cbiIKKyN+ICIgIC0tZGVzY3JpcHRpb249PHRleHQ+ICAgICBkZWZpbmVpeCBsYSBkZXNjcmlwY2nDsyBhIHV0aWxpdHphciBlbiAiCisjfiAibCdlbnRyYWRhXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVsIG1lbsO6LlxuIgorI34gIiAgLS1pbmZvLWZpbGU9PGNhbcOtPiAgICAgICBlc3BlY2lmaWNhIGVsIGZpdHhlciBpbmZvIHF1ZSBzJ2luc3RhxYBsYXLDoCBhbFxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpcmVjdG9yaS5cbiIKKyN+ICIgIC0tZGlyLWZpbGU9PGNhbcOtPiAgICAgICAgZXNwZWNpZmljYSBlbCBub20gZGVsIGZpdHhlciBkZSBkaXJlY3RvcmkgIgorI34gImluZm8uXG4iCisjfiAiICAtLWluZm9kaXI9PGRpcmVjdG9yaT4gICAgZXF1aXZhbCBhICctLWRpci1maWxlPTxkaXJlY3Rvcmk+L2RpcicuXG4iCisjfiAiICAtLWluZm8tZGlyPTxkaXJlY3Rvcmk+ICAgc2ltaWxhciBhIGwnYW50ZXJpb3IuXG4iCisjfiAiICAtLWtlZXAtb2xkICAgICAgICAgICAgICAgbm8gcmVlbXBsYcOnYXIgZW50cmFkZXMgbmkgZXNib3JyYXIgbGVzIHF1ZSAiCisjfiAic2lndWluXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgYnVpZGVzLlxuIgorI34gIiAgLS1yZW1vdmUgICAgICAgICAgICAgICAgIGVzYm9ycmEgbCdlbnRyYWRhIGVzcGVjaWZpY2FkYSBwZWwgbm9tIGJhc2UgIgorI34gImRlXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZpdHhlcj4uXG4iCisjfiAiICAtLXJlbW92ZS1leGFjdGx5ICAgICAgICAgZXNib3JyYSBleGFjdGFtZW50IGwnZW50cmFkYSA8Zml0eGVyPi5cbiIKKyN+ICIgIC0tdGVzdCAgICAgICAgICAgICAgICAgICBoYWJpbGl0YSBlbCBtb2RlIGRlIHByb3ZlcyAobm8gZXMgcmVhbGl0emFyw6BcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICBjYXAgYWNjacOzKS5cbiIKKyN+ICIgIC0tZGVidWcgICAgICAgICAgICAgICAgICBoYWJpbGl0YSBlbCBtb2RlIGRlIGRlcHVyYWNpw7MgKG1vc3RyYSBtw6lzXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5mb3JtYWNpw7MpLlxuIgorI34gIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIG5vIG1vc3RyYXIgbWlzc2F0Z2VzIHBlciBsYSBzb3J0aWRhICIKKyN+ICJlc3TDoG5kYXJkLlxuIgorI34gIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIG1vc3RyYSBhcXVlc3QgbWlzc2F0Z2UgZCdhanVkYS5cbiIKKyN+ICIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBtb3N0cmEgbGEgdmVyc2nDsy5cbiIKKworI34gbXNnaWQgImNvdWxkIG5vdCBvcGVuIHN0ZGVyciBmb3Igb3V0cHV0ISAlcyIKKyN+IG1zZ3N0ciAibm8gcydoYSBwb2d1dCBvYnJpciBsYSBzb3J0aWRhIGQnZXJyb3IhICVzIgorCisjfiBtc2dpZCAiJXM6IC0tc2VjdGlvbiBuZWVkcyB0d28gbW9yZSBhcmdzIgorI34gbXNnc3RyICIlczogLS1zZWN0aW9uIG5lY2Vzc2l0YSBkb3MgYXJndW1lbnRzIG3DqXMiCisKKyN+IG1zZ2lkICIlczogb3B0aW9uIC0tJXMgaXMgZGVwcmVjYXRlZCAoaWdub3JlZCkiCisjfiBtc2dzdHIgIiVzOiBsJ29wY2nDsyAtLSVzIMOpcyBvYnNvbGV0YSAocydpZ25vcmFyw6ApIgorCisjfiBtc2dpZCAiJXM6IHVua25vd24gb3B0aW9uIGAlcyciCisjfiBtc2dzdHIgIiVzOiBsJ29wY2nDsyDCqyVzwrsgw6lzIGRlc2NvbmVndWRhIgorCisjfiBtc2dpZCAiJXM6IHRvbyBtYW55IGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiJXM6IGhpIGhhIG1hc3NhIGFyZ3VtZW50IgorCisjfiBtc2dpZCAiJXM6IC0tc2VjdGlvbiBpZ25vcmVkIHdpdGggLS1yZW1vdmUiCisjfiBtc2dzdHIgIiVzOiAtLXNlY3Rpb24gcydpZ25vcmEgYW1iIC0tcmVtb3ZlIgorCisjfiBtc2dpZCAiJXM6IC0tZGVzY3JpcHRpb24gaWdub3JlZCB3aXRoIC0tcmVtb3ZlIgorI34gbXNnc3RyICIlczogLS1kZXNjcmlwdGlvbiBzJ2lnbm9yYSBhbWIgLS1yZW1vdmUiCisKKyN+IG1zZ2lkICIlczogdGVzdCBtb2RlIC0gZGlyIGZpbGUgd2lsbCBub3QgYmUgdXBkYXRlZCIKKyN+IG1zZ3N0ciAiJXM6IG1vZGUgZGUgcHJvdmVzIC0gbm8gcydhY3R1YWxpdHphcsOgIGVsIGZpdHhlciBkaXIiCisKKyN+IG1zZ2lkICIlczogd2FybmluZywgaWdub3JpbmcgY29uZnVzaW5nIElORk8tRElSLUVOVFJZIGluIGZpbGUuIgorI34gbXNnc3RyICIlczogYXbDrXMsIHMnZXN0w6AgaWdub3JhbnQgbCdJTkZPLURJUi1FTlRSWSBjb25mw7pzIGFsIGZpdHhlci4iCisKKyN+IG1zZ2lkICJpbnZhbGlkIGluZm8gZW50cnkiCisjfiBtc2dzdHIgIkwnZW50cmFkYSBpbmZvIG5vIMOpcyB2w6BsaWRhIgorCisjfiBtc2dpZCAiIgorI34gIlxuIgorI34gIk5vIGBTVEFSVC1JTkZPLURJUi1FTlRSWScgYW5kIG5vIGBUaGlzIGZpbGUgZG9jdW1lbnRzJy5cbiIKKyN+ICIlczogdW5hYmxlIHRvIGRldGVybWluZSBkZXNjcmlwdGlvbiBmb3IgYGRpcicgZW50cnkgLSBnaXZpbmcgdXBcbiIKKyN+IG1zZ3N0ciAiIgorI34gIlxuIgorI34gIk5vIGhpIGhhIMKrU1RBUlQtSU5GTy1ESVItRU5UUlnCuyBuaSDCq1RoaXMgZmlsZSBkb2N1bWVudHPCuy5cbiIKKyN+ICIlczogbm8gZXMgcG90IGRldGVybWluYXIgbGEgZGVzY3JpcGNpw7MgcGVyIGEgbCdlbnRyYWRhIMKrZGlywrssIHMnZXN0w6AgIgorI34gImFiYW5kb25hbnRcbiIKKworI34gbXNnaWQgIiVzOiBubyBmaWxlICVzLCByZXRyaWV2aW5nIGJhY2t1cCBmaWxlICVzLiIKKyN+IG1zZ3N0ciAiIgorI34gIiVzOiBubyBleGlzdGVpeCBlbCBmaXR4ZXIgJXMsIGVzIHJlY3VwZXJhcsOgIGxhIGPDsnBpYSBkZSBzZWd1cmV0YXQgJXMuIgorCisjfiBtc2dpZCAiJXM6IG5vIGJhY2t1cCBmaWxlICVzIGF2YWlsYWJsZSwgcmV0cmlldmluZyBkZWZhdWx0IGZpbGUuIgorI34gbXNnc3RyICIiCisjfiAiJXM6IGxhIGPDsnBpYSBkZSBzZWd1cmV0YXQgZGVsIGZpdHhlciAlcyBubyBlc3TDoCBkaXNwb25pYmxlLCBlcyByZWN1cGVyYXLDoCAiCisjfiAiZWwgZml0eGVyIHBlciBkZWZlY3RlLiIKKworI34gbXNnaWQgIiVzOiBubyBiYWNrdXAgZmlsZSAlcyBhdmFpbGFibGUuIgorI34gbXNnc3RyICIlczogbGEgY8OycGlhIGRlIHNlZ3VyZXRhdCBkZWwgZml0eGVyICVzIG5vIGVzdMOgIGRpc3BvbmlibGUuIgorCisjfiBtc2dpZCAiJXM6IG5vIGRlZmF1bHQgZmlsZSAlcyBhdmFpbGFibGUsIGdpdmluZyB1cC4iCisjfiBtc2dzdHIgIiVzOiBlbCBmaXR4ZXIgcGVyIGRlZmVjdGUgJXMgbm8gZXN0w6AgZGlzcG9uaWJsZSwgcydhYmFuZG9uYS4iCisKKyN+IG1zZ2lkICIlczogZmFpbGVkIHRvIGxvY2sgZGlyIGZvciBlZGl0aW5nISAlcyIKKyN+IG1zZ3N0ciAiJXM6IG5vIHMnaGEgcG9ndXQgYmxvY2FyIGVsIGRpcmVjdG9yaSBwZXIgZWRpdGFyLWxvISAlcyIKKworI34gbXNnaWQgInRyeSBkZWxldGluZyAlcz8iCisjfiBtc2dzdHIgInZvbGV1IHByb3ZhciBkJ2VzYm9ycmFyICVzPyIKKworIyBObyBlcyBwb3QgdnMgTm8gcydoYSBwb2d1dD8gLS0gSm9yZMOgCisjIE5vcm1hbG1lbnQgcG9zZSAibm8gZXMgcG90IiBzaSBkaXUgInVuYWJsZSIgKHByZXNlbnQsIGkgY29tIHF1ZSBtYWkgaG8KKyMgcG90IGZlciwgaSAibm8gcydoYSBwb2d1dCIgcGVyIGEgY2Fzb3MgY29uY3JldHMgY29tICJmYWlsZWQgdG8iLiBqbQorI34gbXNnaWQgInVuYWJsZSB0byBvcGVuICVzOiAlcyIKKyN+IG1zZ3N0ciAibm8gZXMgcG90IG9icmlyICVzOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byBjbG9zZSAlcyBhZnRlciByZWFkOiAlcyIKKyN+IG1zZ3N0ciAibm8gZXMgcG90IHRhbmNhciAlcyBkZXNwcsOpcyBkZSBsYSBsZWN0dXJhOiAlcyIKKworIyBwZXIvcGVyIGE/IC0tIEpvcmTDoAorI34gbXNnaWQgIiVzOiBleGlzdGluZyBlbnRyeSBmb3IgYCVzJyBub3QgcmVwbGFjZWQiCisjfiBtc2dzdHIgIiVzOiBubyBzJ2hhIHJlZW1wbGHDp2F0IGwnZW50cmFkYSBleGlzdGVudCBwZXIgYSDCqyVzwrsiCisKKyN+IG1zZ2lkICIlczogcmVwbGFjaW5nIGV4aXN0aW5nIGRpciBlbnRyeSBmb3IgYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IHMnZXN0w6AgcmVlbXBsYcOnYW50IGwnZW50cmFkYSBkaXIgZXhpc3RlbnQgcGVyIGEgwqslc8K7IgorCisjfiBtc2dpZCAiJXM6IGNyZWF0aW5nIG5ldyBzZWN0aW9uIGAlcyciCisjfiBtc2dzdHIgIiVzOiBzJ2VzdMOgIGNyZWFudCBsYSBub3ZhIHNlY2Npw7Mgwqslc8K7IgorCisjfiBtc2dpZCAiJXM6IG5vIHNlY3Rpb25zIHlldCwgY3JlYXRpbmcgTWlzY2VsbGFuZW91cyBzZWN0aW9uIHRvby4iCisjfiBtc2dzdHIgIiIKKyN+ICIlczogZW5jYXJhIG5vIGhpIGhhIHNlY2Npb25zLCBlcyBjcmVhcsOgIHRhbWLDqSBsYSBzZWNjacOzIMKrTWlzY2VsbGFuZW91c8K7LiIKKworI34gbXNnaWQgIiVzOiBubyBzZWN0aW9uIHNwZWNpZmllZCBmb3IgbmV3IGVudHJ5LCBwbGFjaW5nIGF0IGVuZCIKKyN+IG1zZ3N0ciAiIgorI34gIiVzOiBubyBzJ2hhIGVzcGVjaWZpY2F0IGNhcCBzZWNjacOzIHBlciBhIGxhIG5vdmEgZW50cmFkYSwgcydlbXBsYcOnYXLDoCBhbCAiCisjfiAiZmluYWwiCisKKyN+IG1zZ2lkICIlczogZGVsZXRpbmcgZW50cnkgYCVzIC4uLiciCisjfiBtc2dzdHIgIiVzOiBzJ2VzdMOgIGVzYm9ycmFudCBsJ2VudHJhZGEgwqslc+KApsK7IgorCisjfiBtc2dpZCAiJXM6IGVtcHR5IHNlY3Rpb24gYCVzJyBub3QgcmVtb3ZlZCIKKyN+IG1zZ3N0ciAiJXM6IG5vIHMnaGEgZWxpbWluYXQgbGEgc2VjY2nDsyBidWlkYSDCqyVzwrsiCisKKyN+IG1zZ2lkICIlczogZGVsZXRpbmcgZW1wdHkgc2VjdGlvbiBgJXMnIgorI34gbXNnc3RyICIlczogcydlc3TDoCBlc2JvcnJhbnQgbGEgc2VjY2nDsyBidWlkYSDCqyVzwrsiCisKKyN+IG1zZ2lkICIlczogbm8gZW50cnkgZm9yIGZpbGUgYCVzJyBhbmQgbWVudSBlbnRyeSBgJXMnIgorI34gbXNnc3RyICIiCisjfiAiJXM6IG5vIGhpIGhhIGNhcCBlbnRyYWRhIHBlciBhbCBmaXR4ZXIgwqslc8K7IGkgbCdlbnRyYWRhIGRlIG1lbsO6IMKrJXPCuyIKKworI34gbXNnaWQgIiVzOiBubyBlbnRyeSBmb3IgZmlsZSBgJXMnIgorI34gbXNnc3RyICIlczogbm8gaGkgaGEgY2FwIGVudHJhZGEgcGVyIGFsIGZpdHhlciDCqyVzwrsiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gYmFja3VwIG9sZCAlcywgZ2l2aW5nIHVwOiAlcyIKKyN+IG1zZ3N0ciAibm8gZXMgcG90IGZlciB1bmEgY8OycGlhIGRlIHNlZ3VyZXRhdCBkZSAlcywgcydlc3TDoCBhYmFuZG9uYW50OiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyAlczogJXMiCisjfiBtc2dzdHIgIm5vIGVzIHBvdCBpbnN0YcWAbGFyIGVsIG5vdSAlczogJXMiCisKKyN+IG1zZ2lkICIlczogY291bGQgbm90IGJhY2t1cCAlcyBpbiAlczogJXMiCisjfiBtc2dzdHIgIiVzOiBubyBzJ2hhIHBvZ3V0IGZlciBsYSBjw7JwaWEgZGUgc2VndXJldGF0ICVzIGEgJXM6ICVzIgorCisjfiBtc2dpZCAiJXM6IHdhcm5pbmcgLSB1bmFibGUgdG8gdW5sb2NrICVzOiAlcyIKKyN+IG1zZ3N0ciAiJXM6IGF2w61zIC0gbm8gZXMgcG90IGZlciBibG9jYXIgJXM6ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHJlYWQgJXM6ICVkIgorI34gbXNnc3RyICJubyBlcyBwb3QgbGxlZ2lyICVzOiAlZCIKKworI34gbXNnaWQgImRiZzogJXMiCisjfiBtc2dzdHIgImRiZzogJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gb3BlbiB0bXBmaWxlIChjb250cm9sKSwgJXMiCisjfiBtc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gb2JyaXIgdW4gZml0eGVyIHRlbXBvcmFsIChjb250cm9sKSwgJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gb3BlbiB0bXBmaWxlIChkYXRhKSwgJXMiCisjfiBtc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gb2JyaXIgZWwgZml0eGVyIHRlbXBvcmFsIChkYXRhKSwgJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcmV3aW5kIGF0IHN0YXJ0IG9mIHZzbnByaW50ZiIKKyN+IG1zZ3N0ciAibm8gZXMgcG90IGZlciDCq3Jld2luZMK7IGFsIHByaW5jaXBpIGRlIHZzbnByaW50ZiIKKworI34gbXNnaWQgInVuYWJsZSB0byB0cnVuY2F0ZSBpbiB2c25wcmludGYiCisjfiBtc2dzdHIgIm5vIGVzIHBvdCBmZXIgwqt0cnVuY2F0ZcK7IGVuIHZzbnByaW50ZiIKKworI34gbXNnaWQgIndyaXRlIGVycm9yIGluIHZzbnByaW50ZiIKKyN+IG1zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBkJ2VzY3JpcHR1cmEgZW4gdnNucHJpbnRmIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHN0YXQgaW4gdnNucHJpbnRmIgorI34gbXNnc3RyICJubyBlcyBwb3QgZmVyIMKrc3RhdMK7IGVuIHZzbnByaW50ZiIKKworI34gbXNnaWQgInVuYWJsZSB0byByZXdpbmQgaW4gdnNucHJpbnRmIgorI34gbXNnc3RyICJubyBlcyBwb3QgZmVyIMKrcmV3aW5kwrsgZW4gdnNucHJpbnRmIgorCisjfiBtc2dpZCAicmVhZCBlcnJvciBpbiB2c25wcmludGYgdHJ1bmNhdGVkIgorI34gbXNnc3RyICJzJ2hhIHByb2R1w690IHVuIGVycm9yIGRlIGxlY3R1cmEgZW4gdnNucHJpbnRmIHRydW5jYXQiCisKKyN+IG1zZ2lkICJTeXN0ZW0gZXJyb3Igbm8uJWQiCisjfiBtc2dzdHIgIlMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZGVsIHNpc3RlbWEgbsO6bS4lZCIKKworI34gbXNnaWQgIlNpZ25hbCBuby4lZCIKKyN+IG1zZ3N0ciAiU2VueWFsIG7Dum0uJWQiCisKKyN+IG1zZ2lkICJkcGtnOiB3YXJuaW5nIC0gJXMgcmV0dXJuZWQgZXJyb3IgZXhpdCBzdGF0dXMgJWRcbiIKKyN+IG1zZ3N0ciAiZHBrZzogYXbDrXMgLSAlcyByZXRvcm5hIGwnZWl4aWRhIGQnZXJyb3IgJWRcbiIKKworI34gbXNnaWQgImRwa2c6IHdhcm5pbmcgLSAlcyBraWxsZWQgYnkgc2lnbmFsICglcyklc1xuIgorI34gbXNnc3RyICJkcGtnOiBhdsOtcyAtICVzIGZpbmFsaXR6YXQgcGVsIHNlbnlhbCAoJXMpJXNcbiIKKworI34gbXNnaWQgImZhaWxlZCB0byByZWFkIGAlcycgYXQgbGluZSAlZCIKKyN+IG1zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBsbGVnaXIgwqslc8K7IGVuIGxhIGzDrW5pYSAlZCIKKworI34gbXNnaWQgInBhcnNlIGVycm9yLCBpbiBmaWxlIGAlLjI1NXMnIG5lYXIgbGluZSAlZCIKKyN+IG1zZ3N0ciAiZXJyb3IgZCdhbsOgbGlzaSwgYWwgZml0eGVyIMKrJS4yNTVzwrsgcHJvcCBkZSBsYSBsw61uaWEgJWQiCisKKyN+IG1zZ2lkICIgcGFja2FnZSBgJS4yNTVzJyIKKyN+IG1zZ3N0ciAiIHBhcXVldCDCqyUuMjU1c8K7IgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHJlYWxsb2MgZm9yIHZhcmlhYmxlIGJ1ZmZlciIKKyN+IG1zZ3N0ciAiIgorI34gInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gZmVyIMKrcmVhbGxvY8K7IHBlciBsYSBtZW3DsnJpYSB0ZW1wb3JhbCBkJ3VuYSAiCisjfiAidmFyaWFibGUiCisKKyN+IG1zZ2lkICJwcm9jZXNzX2FyY2hpdmUgLi4uICBhbHJlYWR5IGRpc2FwcGVhcmVkICEiCisjfiBtc2dzdHIgInByb2Nlc3NfYXJjaGl2ZeKApiAgamEgaGEgZGVzYXBhcmVndXQhIgorCisjfiBtc2dpZCAiZ29iYmxlIHJlcGxhY2VkIGZpbGUgYCUuMjU1cyciCisjfiBtc2dzdHIgInMnZXN0w6AgZGVzY2FydGFudCBlbCBmaXR4ZXIgcmVlbXBsYcOnYXQgwqslLjI1NXPCuyIKKworI34gbXNnaWQgImRwa2c6ICVzOiB3YXJuaW5nIC0gZmFpbGVkIHRvIHJlbW92ZSBgJS4yNTBzJzogJXNcbiIKKyN+IG1zZ3N0ciAiZHBrZzogJXM6IGF2w61zIC0gcydoYSBwcm9kdcOvdCB1biBlcnJvciBlbiBlc2JvcnJhciDCqyUuMjUwc8K7OiAlc1xuIgorCisjfiBtc2dpZCAiLS1hdWRpdCBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudHMiCisjfiBtc2dzdHIgIi0tYXVkaXQgbm8gdMOpIGNhcCBhcmd1bWVudCIKKworI34gbXNnaWQgIi0teWV0LXRvLXVucGFjayBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudHMiCisjfiBtc2dzdHIgIi0teWV0LXRvLXVucGFjayBubyBwb3J0YSBjYXAgYXJndW1lbnQiCisKKyN+IG1zZ2lkICItLWFzc2VydC0qIGRvZXMgbm90IHRha2UgYW55IGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiLS1hc3NlcnQtKiBubyBwb3J0YSBjYXAgYXJndW1lbnQiCisKKyN+IG1zZ2lkICItLXByZWRlcC1wYWNrYWdlIGRvZXMgbm90IHRha2UgYW55IGFyZ3VtZW50IgorI34gbXNnc3RyICItLXByZWRlcC1wYWNrYWdlIG5vIGFjY2VwdGEgY2FwIGFyZ3VtZW50IgorCisjfiBtc2dpZCAiLS1wcmludC1hcmNoaXRlY3R1cmUgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tcHJpbnQtYXJjaGl0ZWN0dXJlIG5vIHByZW4gY2FwIGFyZ3VtZW50IgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHN0YXQgaW5zdGFsbGVkICVzIHNjcmlwdCBgJS4yNTBzJyIKKyN+IG1zZ3N0ciAibm8gZXMgcG90IGZlciDCq3N0YXTCuyBzb2JyZSBsYSBzZXHDvMOobmNpYSAlcyBpbnN0YcWAbGFkYSDCqyUuMjUwc8K7IgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHN0YXQgbmV3ICVzIHNjcmlwdCBgJS4yNTBzJyIKKyN+IG1zZ3N0ciAibm8gZXMgcG90IGZlciDCq3N0YXTCuyBzb2JyZSBsYSBzZXHDvMOobmNpYSAlcyBub3ZhIMKrJS4yNTBzwrsiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gZXhlY3V0ZSBuZXcgJXMiCisjfiBtc2dzdHIgIm5vIGVzIHBvdCBleGVjdXRhciBlbCAlcyBub3UiCisKKyN+IG1zZ2lkICJkcGtnOiB3YXJuaW5nIC0gdW5hYmxlIHRvIHN0YXQgJXMgYCUuMjUwcyc6ICVzXG4iCisjfiBtc2dzdHIgImRwa2c6IGF2w61zIC0gbm8gZXMgcG90IGZlciDCq3N0YXTCuyBzb2JyZSAlcyDCqyUuMjUwc8K7OiAlc1xuIgorCisjfiBtc2dpZCAiaW52YWxpZCBudW1iZXIgZm9yIC0tY29tbWFuZC1mZCIKKyN+IG1zZ3N0ciAibsO6bWVybyBpbnbDoGxpZCBwZXIgYSAtLWNvbW1hbmQtZmQiCisKKyN+IG1zZ2lkICItLXNldC1zZWxlY3Rpb25zIGRvZXMgbm90IHRha2UgYW55IGFyZ3VtZW50IgorI34gbXNnc3RyICItLXNldC1zZWxlY3Rpb25zIG5vIGFjY2VwdGEgY2FwIGFyZ3VtZW50IgorCisjfiBtc2dpZCAiLS1jbGVhci1zZWxlY3Rpb25zIGRvZXMgbm90IHRha2UgYW55IGFyZ3VtZW50IgorI34gbXNnc3RyICItLWNsZWFyLXNlbGVjdGlvbnMgbm8gYWNjZXB0YSBjYXAgYXJndW1lbnQiCisKKyN+IG1zZ2lkICItLWJ1aWxkIG5lZWRzIGEgZGlyZWN0b3J5IGFyZ3VtZW50IgorI34gbXNnc3RyICItLWJ1aWxkIG5lY2Vzc2l0YSB1biBkaXJlY3RvcmkgYW1iIHBhcsOgbWV0cmUiCisKKyN+IG1zZ2lkICIiCisjfiAiZHBrZy1kZWI6IHdhcm5pbmcsIG5vdCBjaGVja2luZyBjb250ZW50cyBvZiBjb250cm9sIGFyZWEuXG4iCisjfiAiZHBrZy1kZWI6IGJ1aWxkaW5nIGFuIHVua25vd24gcGFja2FnZSBpbiBgJXMnLlxuIgorI34gbXNnc3RyICIiCisjfiAiZHBrZy1kZWI6IGF2w61zLCBubyBlcyBjb21wcm92YSBlbCBjb250aW5ndXQgZGUgbCfDoHJlYSBkZSBjb250cm9sLlxuIgorI34gImRwa2ctZGViOiBlcyBjb25zdHJ1ZWl4IHVuIHBhcXVldCBkZXNjb25lZ3V0IGVuIMKrJXPCuy5cbiIKKworI34gbXNnaWQgIkludGVybmFsIGVycm9yLCBjb21wcmVzc190eXBlIGAlaScgdW5rbm93biEiCisjfiBtc2dzdHIgIlMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgaW50ZXJuLCBlbCBjb21wcmVzc190eXBlIMKrJWnCuyDDqXMgZGVzY29uZWd1dC4iCisKKyN+IG1zZ2lkICItLWpvaW4gcmVxdWlyZXMgb25lIG9yIG1vcmUgcGFydCBmaWxlIGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiLS1qb2luIHJlcXVlcmVpeCB1biBvIG3DqXMgZml0eGVycyBwYXJ0IGNvbSBhIGFyZ3VtZW50cyIKKworI34gbXNnaWQgIi0tbGlzdHEgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnRzIgorI34gbXNnc3RyICItLWxpc3RxIG5vIHByZW4gY2FwIGFyZ3VtZW50IgorCisjfiBtc2dpZCAiIgorI34gIlxuIgorI34gIkNvcHlyaWdodCAoQykgMTk5NiBLaW0tTWluaCBLYXBsYW4uIgorI34gbXNnc3RyICIiCisjfiAiXG4iCisjfiAiQ29weXJpZ2h0IMKpIDE5OTYgS2ltLU1pbmggS2FwbGFuLiIKKworI34gbXNnaWQgIiIKKyN+ICJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gWy0tXSBbPGRpcm5hbWU+XVxuIgorI34gIlxuIgorI34gIk9wdGlvbnM6XG4iCisjfiAiICAtLXVuc2FmZSAgICAgc2V0IHNvbWUgYWRkaXRpb25hbCBwb3NzaWJseSB1c2VmdWwgb3B0aW9ucy5cbiIKKyN+ICIgICAgICAgICAgICAgICB3YXJuaW5nOiB0aGlzIG9wdGlvbiBtYXkgZ2FyYmxlIGFuIG90aGVyd2lzZSBjb3JyZWN0ICIKKyN+ICJmaWxlLlxuIgorI34gIiAgLS1oZWxwICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisjfiAiICAtLXZlcnNpb24gICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIkZvcm1hIGQnw7pzOiAlcyBbPG9wY2nDsz4g4oCmXSBbLS1dIFs8bm9tIGRpcmVjdG9yaT5dXG4iCisjfiAiXG4iCisjfiAiT3BjaW9uczpcbiIKKyN+ICIgIC0tdW5zYWZlICAgICBFc3RhYmxlaXggYWxndW5lcyBvcGNpb25zIGFkZGljaW9uYWxzIHF1ZSBwb2RlbiBzZXIgIgorI34gIsO6dGlscy5cbiIKKyN+ICIgICAgICAgICAgICAgICBBdsOtczogYXF1ZXN0YSBvcGNpw7MgcG90IGVzcGF0bGxhciBmaXR4ZXJzIGVuIGJvbiBlc3RhdC5cbiIKKyN+ICIgIC0taGVscCAgICAgICBNb3N0cmEgYXF1ZXN0IG1pc3NhdGdlIGQnYWp1ZGEuXG4iCisjfiAiICAtLXZlcnNpb24gICAgTW9zdHJhIGxhIHZlcnNpw7MuXG4iCisKKyN+IG1zZ2lkICJ0cnkgZGVsZXRpbmcgJXMiCisjfiBtc2dzdHIgInByb3ZldSBhIHN1cHJpbWlyICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGluc3RhbGwgJXM7IGl0IHdpbGwgYmUgbGVmdCBhcyAlczogJXMiCisjfiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgaW5zdGHFgGxhciAlcywgZXMgZGVpeGFyw6AgY29tIGEgJXM6ICVzIgorCisjfiBtc2dpZCAiJXM6IHVuYWJsZSB0byB1bmxvY2sgJXM6ICVzIgorI34gbXNnc3RyICIlczogbm8gZXMgcG90IGRlc2Jsb2NhciAlczogJXMiCisKKyN+IG1zZ2lkICIlcyAtIHN0YXR1cyBpcyAlcy4iCisjfiBtc2dzdHIgIiVzIC0gbCdlc3RhdCDDqXMgJXMuIgorCisjfiBtc2dpZCAiIGxpbmsgdW5yZWFkYWJsZSAtICVzIgorI34gbXNnc3RyICIgbm8gZXMgcG90IGxsZWdpciBsJ2VubGxhw6cgLSAlcyIKKworI34gbXNnaWQgIiIKKyN+ICJ3YXJuaW5nOiAlcyBpcyBzdXBwb3NlZCB0byBiZSBhIHN5bWxpbmsgdG8gJXMsIFxuIgorI34gIm9yIG5vbmV4aXN0ZW50OyBob3dldmVyLCByZWFkbGluayBmYWlsZWQ6ICVzIgorI34gbXNnc3RyICIiCisjfiAiYXbDrXM6ICVzIGhhdXJpYSBkZSBzZXIgdW4gZW5sbGHDpyBzaW1iw7JsaWMgYSAlcywgXG4iCisjfiAibyBpbmV4aXN0ZW50OyB0YW5tYXRlaXgsIHJlYWRsaW5rIGhhIGZhbGxhdDogJXMiCisKKyN+IG1zZ2lkICJMZWF2aW5nICVzICglcykgcG9pbnRpbmcgdG8gJXMuIgorI34gbXNnc3RyICJTJ2VzdMOgIGRlaXhhbnQgJXMgKCVzKSBhcHVudGFudCBjYXAgYSAlcy4iCisKKyN+IG1zZ2lkICJVcGRhdGluZyAlcyAoJXMpIHRvIHBvaW50IHRvICVzLiIKKyN+IG1zZ3N0ciAiUydlc3TDoCBhY3R1YWxpdHphbnQgJXMgKCVzKSBwZXIgYXB1bnRhciBjYXAgYSAlcy4iCisKKyN+IG1zZ2lkICJSZW1vdmluZyAlcyAoJXMpLCBub3QgYXBwcm9wcmlhdGUgd2l0aCAlcy4iCisjfiBtc2dzdHIgIlMnZXN0w6Agc3VwcmltaW50ICVzICglcyksIG5vIMOpcyBhcHJvcGlhdCBhbWIgJXMuIgorCisjfiBtc2dpZCAiIgorI34gIkNoZWNraW5nIGF2YWlsYWJsZSB2ZXJzaW9ucyBvZiAlcywgdXBkYXRpbmcgbGlua3MgaW4gJXMgLi4uXG4iCisjfiAiKFlvdSBtYXkgbW9kaWZ5IHRoZSBzeW1saW5rcyB0aGVyZSB5b3Vyc2VsZiBpZiBkZXNpcmVkIC0gc2VlIGBtYW4gbG4nLikiCisjfiBtc2dzdHIgIiIKKyN+ICJDb21wcm92YW50IGxlcyB2ZXJzaW9ucyBkaXNwb25pYmxlcyBkZSAlcywgcydlc3RhbiBhY3R1YWxpdHphbnQgZWxzICIKKyN+ICJlbmxsYcOnb3MgYSAlc+KAplxuIgorI34gIihTaSBobyB2b2xldSwgcG9kZXUgbW9kaWZpY2FyIGVscyBlbmxsYcOnb3Mgc2ltYsOybGljcyAtIHZlZ2V1IMKrbWFuIGxuwrsuKSIKKworI34gbXNnaWQgInNsYXZlIGxpbmsgbmFtZSAlcyBkdXBsaWNhdGVkIgorI34gbXNnc3RyICJub20gZCdlbmxsYcOnIGVzY2xhdSAlcyBkdXBsaWNhdCIKKworI34gbXNnaWQgIlJlY292ZXJpbmcgZnJvbSBwcmV2aW91cyBmYWlsZWQgdXBkYXRlIG9mICVzIC4uLiIKKyN+IG1zZ3N0ciAiUydlc3TDoCByZXN0YWJsaW50IGQndW5hIGFjdHVhbGl0emFjacOzIHByw6h2aWEgZmFsbGlkYSBkZSAlc+KApiIKKworI34gbXNnaWQgInVuYWJsZSB0byBvcGVuICVzIGZvciB3cml0ZTogJXMiCisjfiBtc2dzdHIgIm5vIGVzIHBvdCBvYnJpciAlcyBwZXIgYSBsJ2VzY3JpcHR1cmE6ICVzIgorCisjfiBtc2dpZCAiTGFzdCBwYWNrYWdlIHByb3ZpZGluZyAlcyAoJXMpIHJlbW92ZWQsIGRlbGV0aW5nIGl0LiIKKyN+IG1zZ3N0ciAiIgorI34gIlMnaGEgZGVzaW5zdGHFgGxhdCBlbCBkYXJyZXIgcGFxdWV0IHF1ZSBwcm92ZWVpeCAlcyAoJXMpLCBzJ2VzYm9ycmFyw6AuIgorCisjfiBtc2dpZCAiIgorI34gIlRoZXJlIGlzIG9ubHkgMSBwcm9ncmFtIHdoaWNoIHByb3ZpZGVzICVzXG4iCisjfiAiKCVzKS4gTm90aGluZyB0byBjb25maWd1cmUuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJOb23DqXMgaGkgaGEgMSBwcm9ncmFtYSBxdWUgcHJvdmVlaXhpICVzXG4iCisjfiAiKCVzKS4gTm8gaGkgaGEgcmVzIGEgY29uZmlndXJhci5cbiIKKworI34gbXNnaWQgIiIKKyN+ICJUaGVyZSBhcmUgJXMgYWx0ZXJuYXRpdmVzIHdoaWNoIHByb3ZpZGUgYCVzJy5cbiIKKyN+ICJcbiIKKyN+ICIgIFNlbGVjdGlvbiAgICBBbHRlcm5hdGl2ZVxuIgorI34gIi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJIaSBoYSAlcyBhbHRlcm5hdGl2ZXMgcXVlIHByb3ZlZWl4aW4gwqslc8K7LlxuIgorI34gIlxuIgorI34gIiAgU2VsZWNjacOzICAgICBBbHRlcm5hdGl2YVxuIgorI34gIi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4iCisKKyN+IG1zZ2lkICJlcnJvciB3cml0aW5nIHN0ZG91dDogJXMiCisjfiBtc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gZXNjcml1cmUgbGEgc29ydGlkYSBlc3TDoG5kYXJkOiAlcyIKKworI34gbXNnaWQgImVycm9yIG9yIGVvZiByZWFkaW5nICVzIGZvciAlcyAoJXMpIgorI34gbXNnc3RyICJzJ2hhIHByb2R1w690IHVuIGVycm9yIG8gZmluYWwgZGUgZml0eGVyIGVuIGxsZWdpciAlcyBwZXIgJXMgKCVzKSIKKworI34gbXNnaWQgIlNlcmlvdXMgcHJvYmxlbTogJXMiCisjfiBtc2dzdHIgIlByb2JsZW1hIHNlcmnDs3M6ICVzIgorCisjfiBtc2dpZCAiY291bGRuJ3QgYWxsb2NhdGUgbWVtb3J5IGZvciBzdHJkdXAgaW4gZmluZHBhY2thZ2UoJXMpIgorI34gbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGFzc2lnbmFyIG1lbcOycmlhIHBlciBhIMKrc3RyZHVwwrsgZW4gZmluZHBhY2thZ2UoJXMpIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGFsbG9jYXRlIGJ1ZmZlciBpbiBidWZmZXJfY29weSAoJXMpIgorI34gbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGFzc2lnbmFyIGVzcGFpIGVuIGJ1ZmZlcl9jb3B5ICglcykiCisKKyN+IG1zZ2lkICJFcnJvciBhbGxvY2F0aW5nIG1lbW9yeSBmb3IgY2ZnZmlsZW5hbWUiCisjfiBtc2dzdHIgIlMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgYWwgcmVzZXJ2YXIgbWVtw7JyaWEgcGVyIGEgY2ZnZmlsZW5hbWUiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gbWFsbG9jIGZvciBpbmZvIGZpbGUgYCUuMjU1cyciCisjfiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgZXhlY3V0YXIgwqttYWxsb2PCuyBwZWwgZml0eGVyIMKrJS4yNTVzwrsiCisKKyN+IG1zZ2lkICJkaXZlcnNpb25zIGZpbGUgaGFzIHRvby1sb25nIGxpbmUgb3IgRU9GIFtpXSIKKyN+IG1zZ3N0ciAiZWwgZml0eGVyIGRlIGRlc3ZpYWNpb25zIHTDqSB1bmEgbMOtbmlhIG1hc3NhIGxsYXJnYSBvIEVPRiBbaV0iCisKKyN+IG1zZ2lkICJyZWFkIGVycm9yIGluIGRpdmVyc2lvbnMgW2lpXSIKKyN+IG1zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBkZSBsZWN0dXJhIGVuIGxlcyBkZXN2aWFjaW9ucyBbaWldIgorCisjfiBtc2dpZCAidW5leHBlY3RlZCBFT0YgaW4gZGl2ZXJzaW9ucyBbaWldIgorI34gbXNnc3RyICJzJ2hhIHRyb2JhdCB1biBFT0YgaW5lc3BlcmF0IGVuIGxlcyBkZXN2aWFjaW9ucyBbaWldIgorCisjfiBtc2dpZCAiZmdldHMgZ2F2ZSBhbiBlbXB0eSBzdHJpbmcgZnJvbSBkaXZlcnNpb25zIFtpaV0iCisjfiBtc2dzdHIgImZnZXRzIGhhIGRvbmF0IHVuYSBjYWRlbmEgYnVpZGEgZGVzIGRlbHMgZGUgbGVzIGRlc3ZpYWNpb25zIFtpaV0iCisKKyN+IG1zZ2lkICJkaXZlcnNpb25zIGZpbGUgaGFzIHRvby1sb25nIGxpbmUgb3IgRU9GIFtpaV0iCisjfiBtc2dzdHIgImVsIGZpdHhlciBkZSBkZXN2aWFjaW9ucyB0w6kgdW5hIGzDrW5pYSBtYXNzYSBsbGFyZ2EgbyBFT0YgW2lpXSIKKworI34gbXNnaWQgInJlYWQgZXJyb3IgaW4gZGl2ZXJzaW9ucyBbaWlpXSIKKyN+IG1zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBkZSBsZWN0dXJhIGVuIGxlcyBkZXN2aWFjaW9ucyBbaWlpXSIKKworI34gbXNnaWQgInVuZXhwZWN0ZWQgRU9GIGluIGRpdmVyc2lvbnMgW2lpaV0iCisjfiBtc2dzdHIgInMnaGEgdHJvYmF0IHVuIEVPRiBpbmVzcGVyYXQgZW4gbGVzIGRlc3ZpYWNpb25zIFtpaWldIgorCisjfiBtc2dpZCAiZmdldHMgZ2F2ZSBhbiBlbXB0eSBzdHJpbmcgZnJvbSBkaXZlcnNpb25zIFtpaWldIgorI34gbXNnc3RyICJmZ2V0cyBoYSBkb25hdCB1bmEgY2FkZW5hIGJ1aWRhIGRlcyBkZSBsZXMgZGVzdmlhY2lvbnMgW2lpaV0iCisKKyN+IG1zZ2lkICJjb3VsZG4ndCBtYWxsb2MgaW4gZXhlY2JhY2tlbmQiCisjfiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgZmVyIMKrbWFsbG9jwrsgZW4gZXhlY2JhY2tlbmQiCisKKyN+IG1zZ2lkICJjb3VsZG4ndCBzdHJkdXAgaW4gZXhlY2JhY2tlbmQiCisjfiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgZmVyIMKrc3RyZHVwwrsgZW4gZXhlY2JhY2tlbmQiCisKKyMgTWlsbG9yIHRyYWR1Y2Npw7MgZGUgInN1cHBvcnQiPyAtLSBKb3Jkw6AKKyN+IG1zZ2lkICIiCisjfiAiZHBrZzogcmVnYXJkaW5nICVzIGNvbnRhaW5pbmcgJXM6XG4iCisjfiAiIHBhY2thZ2UgdXNlcyBCcmVha3M7IG5vdCBzdXBwb3J0ZWQgaW4gdGhpcyBkcGtnXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJkcGtnOiByZWZlcmVudCBhICVzIHF1ZSBjb250w6kgJXM6XG4iCisjfiAiIGVsIHBhcXVldCB1dGlsaXR6YSBCcmVha3M7IG5vIGVzdMOgIGltcGxlbWVudGF0IGVuIGFxdWVzdCBkcGtnXG4iCisKKyMgTWlsbG9yIHRyYWR1Y2Npw7MgZGUgInN1cHBvcnQiPyAtLSBKb3Jkw6AKKyN+IG1zZ2lkICJ1bnN1cHBvcnRlZCBkZXBlbmRlbmN5IHByb2JsZW0gLSBub3QgaW5zdGFsbGluZyAlLjI1MHMiCisjfiBtc2dzdHIgInByb2JsZW1hIGRlIGRlcGVuZMOobmNpYSBubyBpbXBsZW1lbnRhZGEgLSBubyBzJ2luc3RhxYBsYXLDoCAlLjI1MHMiCisKKyN+IG1zZ2lkICJkcGtnOiB3YXJuaW5nIC0gaWdub3JpbmcgQnJlYWtzICFcbiIKKyN+IG1zZ3N0ciAiZHBrZzogYXbDrXMgLSBzJ2VzdMOgIGlnbm9yYW50IEJyZWFrcyFcbiIKKworI34gbXNnaWQgInRvIgorI34gbXNnc3RyICJhIgorCisjfiBtc2dpZCAiZnJvbSIKKyN+IG1zZ3N0ciAicGVyIgorCisjfiBtc2dpZCAiZmFpbGVkIGFsbG9jYXRpbmcgbWVtb3J5IGZvciB2YXJpYWJsZSBgY3RybGFyZWEnIgorI34gbXNnc3RyICJubyBzJ2hhIHByb2R1w690IHJlc2VydmFyIG1lbcOycmlhIHBlciBhIGxhIHZhcmlhYmxlIMKrY3RybGFyZWHCuyIKKworI34gbXNnaWQgImVycm9yIHJlYWRpbmcgJXMiCisjfiBtc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgYWwgbGxlZ2lyICVzIgorCisjfiBtc2dpZCAiQ2Fubm90IGdldCBFTk9FTlQgdmFsdWUgZnJvbSAlczogJXMiCisjfiBtc2dzdHIgIk5vIGVzIHBvdCBvYnRlbmlyIGVsIHZhbG9yIEVOT0VOVCBkZSAlczogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gZW5zdXJlICVzIG5vbmV4aXN0ZW50OiAlcyIKKyN+IG1zZ3N0ciAibm8gZXMgcG90IGdhcmFudGlyIHF1ZSAlcyBzaWd1aSBubyBleGlzdGVudDogJXMiCisKKyN+IG1zZ2lkICIiCisjfiAid2FybmluZzogJXMgaXMgc3VwcG9zZWQgdG8gYmUgYSBzbGF2ZSBzeW1saW5rIHRvXG4iCisjfiAiICVzLCBvciBub25leGlzdGVudDsgaG93ZXZlciwgcmVhZGxpbmsgZmFpbGVkOiAlcyIKKyN+IG1zZ3N0ciAiIgorI34gImF2w61zOiAlcyBoYXVyaWEgZGUgc2VyIHVuIGVubGxhw6cgc2ltYsOybGljIGVzY2xhdSBhXG4iCisjfiAiICVzLCBvIG5vIGV4aXN0ZW50OyB0YW5tYXRlaXgsIHJlYWRsaW5rIGhhIGZhbGxhdDogJXMiCisKKyN+IG1zZ2lkICJ0d28gbW9kZXMgc3BlY2lmaWVkOiAlcyBhbmQgLS0lcyIKKyN+IG1zZ3N0ciAicydoYSBlc3BlY2lmaWNhdCBkb3MgbW9kZXM6ICVzIGkgLS0lcyIKKworI34gbXNnaWQgIm1hbmZsYWciCisjfiBtc2dzdHIgIm1hbmZsYWciCisKKyN+IG1zZ2lkICIlczogZmFpbGVkIHRvIGV4ZWMgZ3ppcCAtZGMiCisjfiBtc2dzdHIgIiVzOiBubyBzJ2hhIHBvZ3V0IGV4ZWN1dGFyIGd6aXAgLWRjIgorCisjfiBtc2dpZCAiJXM6IGZhaWxlZCB0byBleGVjIGJ6aXAyIC1kYyIKKyN+IG1zZ3N0ciAiJXM6IG5vIHMnaGEgcG9ndXQgZXhlY3V0YXIgYnppcDIgLWRjIgorCisjfiBtc2dpZCAiJXM6IGZhaWxlZCB0byBleGVjIGJ6aXAyICVzIgorI34gbXNnc3RyICIlczogbm8gcydoYSBwb2d1dCBleGVjdXRhciBiemlwMiAlcyIKKworI34gbXNnaWQgImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzogdmVyc2lvbiBjb250YWlucyBgICciCisjfiBtc2dzdHIgImNhbXAgwqslc8K7LCByZWZlcsOobmNpYSBhIMKrJS4yNTVzwrs6IGxhIHZlcnNpw7MgY29udMOpIHVuIMKrIMK7IgorCisjfiBtc2dpZCAiJXM6IGNsb3NlICVzIGFmdGVyIHJlYWQ6ICVzIgorI34gbXNnc3RyICIlczogdGFuY2EgJXMgZGVzcHLDqXMgZGUgbGEgbGVjdHVyYTogwqslc8K7IgorCisjfiBtc2dpZCAiLS1hZG1pbmRpciBuZWVkcyBhIGRpcmVjdG9yeSBhcmd1bWVudCIKKyN+IG1zZ3N0ciAiLS1hZG1pbmRpciBuZWNlc3NpdGEgdW4gZGlyZWN0b3JpIGNvbSBhIGFyZ3VtZW50IgorCisjfiBtc2dpZCAiLS1yZW1vdmUgbmVlZHMgYSBzaW5nbGUgYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tcmVtb3ZlIG5lY2Vzc2l0YSB1biBzb2wgYXJndW1lbnQiCisKKyN+IG1zZ2lkICItLXRydWVuYW1lIG5lZWRzIGEgc2luZ2xlIGFyZ3VtZW50IgorI34gbXNnc3RyICItLXRydWVuYW1lIG5lY2Vzc2l0YSB1biBzb2wgYXJndW1lbnQiCisKKyN+IG1zZ2lkICJkcGtnLWRpdmVydDogJXMiCisjfiBtc2dzdHIgImRwa2ctZGl2ZXJ0OiAlcyIKKworI34gbXNnaWQgIllvdSBuZWVkIC0taGVscCIKKyN+IG1zZ3N0ciAiTmVjZXNzaXRldSAtLWhlbHAiCisKKyN+IG1zZ2lkICIgIFBhY2thZ2UgIgorI34gbXNnc3RyICIgIGVsIHBhcXVldCAiCisKKyN+IG1zZ2lkICIgd2hpY2ggcHJvdmlkZXMgIgorI34gbXNnc3RyICIgcXVlIHByb3ZlZWl4ICIKKworI34gbXNnaWQgIiBpcyB0byBiZSByZW1vdmVkLlxuIgorI34gbXNnc3RyICIgc2Vyw6AgZGVzaW5zdGHFgGxhdC5cbiIKKworI34gbXNnaWQgIiAgVmVyc2lvbiBvZiAiCisjfiBtc2dzdHIgIiAgVmVyc2nDsyBkZSAiCisKKyN+IG1zZ2lkICIgb24gc3lzdGVtIGlzICIKKyN+IG1zZ3N0ciAiIGVuIGVsIHNpc3RlbWEgw6lzICIKKworI34gbXNnaWQgIiBpcyBub3QgaW5zdGFsbGVkLlxuIgorI34gbXNnc3RyICIgbm8gZXN0w6AgaW5zdGHFgGxhdC5cbiIKKworI34gbXNnaWQgIiB0bzogJXNcbiIKKyN+IG1zZ3N0ciAiIHBlciBhOiAlc1xuIgorCisjfiBtc2dpZCAiZmdldHBvcyBmYWlsZWQiCisjfiBtc2dzdHIgImZnZXRwb3MgaGEgZmFsbGF0IgorCisjfiBtc2dpZCAiZnNldHBvcyBmYWlsZWQiCisjfiBtc2dzdHIgImZzZXRwb3MgaGEgZmFsbGF0IgorCisjIEZJWE1FOiBTaG93IGluZm9ybWF0aW9uIG9uIHBhY2thZ2UgLT4gTG93ZXJjYXNlICJTaG93IgorI34gbXNnaWQgIiIKKyN+ICJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gPGNvbW1hbmQ+XG4iCisjfiAiXG4iCisjfiAiQ29tbWFuZHM6XG4iCisjfiAiICAtYnwtLWJ1aWxkIDxkaXJlY3Rvcnk+IFs8ZGViPl0gICAgQnVpbGQgYW4gYXJjaGl2ZS5cbiIKKyN+ICIgIC1jfC0tY29udGVudHMgPGRlYj4gICAgICAgICAgICAgICBMaXN0IGNvbnRlbnRzLlxuIgorI34gIiAgLUl8LS1pbmZvIDxkZWI+IFs8Y2ZpbGU+Li4uXSAgICAgIFNob3cgaW5mbyB0byBzdGRvdXQuXG4iCisjfiAiICAtV3wtLXNob3cgPGRlYj4gICAgICAgICAgICAgICAgICAgU2hvdyBpbmZvcm1hdGlvbiBvbiBwYWNrYWdlKHMpXG4iCisjfiAiICAtZnwtLWZpZWxkIDxkZWI+IFs8Y2ZpZWxkPi4uLl0gICAgU2hvdyBmaWVsZChzKSB0byBzdGRvdXQuXG4iCisjfiAiICAtZXwtLWNvbnRyb2wgPGRlYj4gWzxkaXJlY3Rvcnk+XSAgRXh0cmFjdCBjb250cm9sIGluZm8uXG4iCisjfiAiICAteHwtLWV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gICAgRXh0cmFjdCBmaWxlcy5cbiIKKyN+ICIgIC1YfC0tdmV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gICBFeHRyYWN0ICYgbGlzdCBmaWxlcy5cbiIKKyN+ICIgIC0tZnN5cy10YXJmaWxlIDxkZWI+ICAgICAgICAgICAgICBPdXRwdXQgZmlsZXN5c3RlbSB0YXJmaWxlLlxuIgorI34gIiAgLWh8LS1oZWxwICAgICAgICAgICAgICAgICAgICAgICAgIERpc3BsYXkgdGhpcyBtZXNzYWdlLlxuIgorI34gIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICAgICAgICAgIFNob3cgdmVyc2lvbi5cbiIKKyN+ICIgIC0tbGljZW5zZSB8IC0tbGljZW5jZSAgICAgICAgICAgICBTaG93IGxpY2Vuc2UuXG4iCisjfiAiXG4iCisjfiAiPGRlYj4gaXMgdGhlIGZpbGVuYW1lIG9mIGEgRGViaWFuIGZvcm1hdCBhcmNoaXZlLlxuIgorI34gIjxjZmlsZT4gaXMgdGhlIG5hbWUgb2YgYW4gYWRtaW5pc3RyYXRpdmUgZmlsZSBjb21wb25lbnQuXG4iCisjfiAiPGNmaWVsZD4gaXMgdGhlIG5hbWUgb2YgYSBmaWVsZCBpbiB0aGUgbWFpbiBgY29udHJvbCcgZmlsZS5cbiIKKyN+ICJcbiIKKyN+ICJPcHRpb25zOlxuIgorI34gIiAgLS1zaG93Zm9ybWF0PTxmb3JtYXQ+ICAgICAgVXNlIGFsdGVybmF0aXZlIGZvcm1hdCBmb3IgLS1zaG93LlxuIgorI34gIiAgLUQgICAgICAgICAgICAgICAgICAgICAgICAgRW5hYmxlIGRlYnVnZ2luZyBvdXRwdXQuXG4iCisjfiAiICAtLW9sZCwgLS1uZXcgICAgICAgICAgICAgICBTZWxlY3QgYXJjaGl2ZSBmb3JtYXQuXG4iCisjfiAiICAtLW5vY2hlY2sgICAgICAgICAgICAgICAgICBTdXBwcmVzcyBjb250cm9sIGZpbGUgY2hlY2sgKGJ1aWxkIGJhZCAiCisjfiAicGFja2FnZSkuXG4iCisjfiAiICAteiMgICAgICAgICAgICAgICAgICAgICAgICBTZXQgdGhlIGNvbXByZXNzaW9uIGxldmVsIHdoZW4gYnVpbGRpbmcuXG4iCisjfiAiICAtWjx0eXBlPiAgICAgICAgICAgICAgICAgICBTZXQgdGhlIGNvbXByZXNzaW9uIHR5cGUgdG8gdXNlIHdoZW4gIgorI34gImJ1aWxkaW5nLlxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWxsb3dlZCB2YWx1ZXM6IGd6aXAsIGJ6aXAyLCBub25lLlxuIgorI34gIlxuIgorI34gbXNnc3RyICIiCisjfiAiRm9ybWEgZCfDunM6ICVzIFs8b3BjacOzPiDigKZdIDxvcmRyZT5cbiIKKyN+ICJcbiIKKyN+ICJPcmRyZTpcbiIKKyN+ICIgIC1ifC0tYnVpbGQgPGRpcmVjdG9yaT4gWzxkZWI+XSAgICBDb25zdHJ1ZWl4IHVuIGFyeGl1LlxuIgorI34gIiAgLWN8LS1jb250ZW50cyA8ZGViPiAgICAgICAgICAgICAgIExsaXN0YSBlbHMgY29udGluZ3V0cy5cbiIKKyN+ICIgIC1JfC0taW5mbyA8ZGViPiBbPGZpdHhlcmM+4oCmXSAgICAgIE1vc3RyYSBsYSBpbmZvIGVuIGwnZWl4aWRhICIKKyN+ICJlc3TDoG5kYXJkLlxuIgorI34gIiAgLVd8LS1zaG93IDxkZWI+ICAgICAgICAgICAgICAgICAgIE1vc3RyYSBpbmZvcm1hY2nDsyBzb2JyZSBlbChzKSBwYXF1ZXQiCisjfiAiKHMpLlxuIgorI34gIiAgLWZ8LS1maWVsZCA8ZGViPiBbPGNhbXBjPuKApl0gICAgICAgTW9zdHJhIGVsKHMpIGNhbXAocykgZW4gbCdlaXhpZGEgIgorI34gImVzdMOgbmRhcmQuXG4iCisjfiAiICAtZXwtLWNvbnRyb2wgPGRlYj4gWzxkaXJlY3Rvcmk+XSAgRXh0cmF1IGxhIGluZm9ybWFjacOzIGRlIGNvbnRyb2wuXG4iCisjfiAiICAteHwtLWV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yaT4gICAgRXh0cmF1IGVscyBmaXR4ZXJzLlxuIgorI34gIiAgLVh8LS12ZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3JpPiAgIEV4dHJhdSBpIGxsaXN0YSBlbHMgZml0eGVycy5cbiIKKyN+ICIgIC0tZnN5cy10YXJmaWxlIDxkZWI+ICAgICAgICAgICAgICBNb3N0cmEgZWwgZml0eGVyIHRhciBkZWwgc2lzdGVtYSBkZSAiCisjfiAiZml0eGVycy5cbiIKKyN+ICIgIC1ofC0taGVscCAgICAgICAgICAgICAgICAgICAgICAgICBNb3N0cmEgYXF1ZXN0IG1pc3NhdGdlLlxuIgorI34gIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICAgICAgICAgIE1vc3RyYSBsYSB2ZXJzacOzLlxuIgorI34gIiAgLS1saWNlbmNlIHwgLS1saWNlbnNlICAgICAgICAgICAgIE1vc3RyYSBsYSBsbGljw6huY2lhLlxuIgorI34gIlxuIgorI34gIjxkZWI+IMOpcyBlbCBub20gZGUgZml0eGVyIGQndW4gYXJ4aXUgZW4gZm9ybWF0IERlYmlhbi5cbiIKKyN+ICI8Zml0eGVyYz4gw6lzIGVsIG5vbSBkJ3VuIGNvbXBvbmVudCBkJ3VuIGZpdHhlciBhZG1pbmlzdHJhdGl1LlxuIgorI34gIjxjYW1wYz4gw6lzIGVsIG5vbSBkJ3VuIGNhbXAgYWwgZml0eGVyIGRlIMKrY29udHJvbMK7IHByaW5jaXBhbC5cbiIKKyN+ICJcbiIKKyN+ICJPcGNpb25zOlxuIgorI34gIiAgLS1zaG93Zm9ybWF0PTxmb3JtYXQ+ICAgICAgRW1wcmEgdW4gZm9ybWF0IGFsdGVybmF0aXUgcGVyIGEgLS1zaG93LlxuIgorI34gIiAgLUQgICAgICAgICAgICAgICAgICAgICAgICAgSGFiaWxpdGEgbCdlaXhpZGEgZGUgZGVwdXJhY2nDsy5cbiIKKyN+ICIgIC0tb2xkLCAtLW5ldyAgICAgICAgICAgICAgIFNlbGVjY2lvbmEgZWwgZm9ybWF0IGRlIGwnYXJ4aXUuXG4iCisjfiAiICAtLW5vY2hlY2sgICAgICAgICAgICAgICAgICBTdXByaW1laXggbGEgY29tcHJvdmFjacOzIGRlbCBmaXR4ZXIgZGUgIgorI34gImNvbnRyb2xcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjb25zdHJ1ZWl4IHVuIHBhcXVldCBlcnJvbmkpLlxuIgorI34gIiAgLXojICAgICAgICAgICAgICAgICAgICAgICAgRXN0YWJsZWl4IGVsIG5pdmVsbCBkZSBjb21wcmVzc2nDsyBkdXJhbnRcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhIGNvbnN0cnVjY2nDsy5cbiIKKyN+ICIgIC1aPHRpcHVzPiAgICAgICAgICAgICAgICAgIEVzdGFibGVpeCBlbCB0aXB1cyBkZSBjb21wcmVzc2nDsyBhICIKKyN+ICJ1dGlsaXR6YXJcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR1cmFudCBsYSBjb250cnVjY2nDsy5cbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZhbG9ycyBwZXJtZXNvczogZ3ppcCwgYnppcDIsIGNhcC5cbiIKKworI34gbXNnaWQgIiIKKyN+ICJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gPGNvbW1hbmQ+XG4iCisjfiAiXG4iCisjfiAiQ29tbWFuZHM6XG4iCisjfiAiICAtc3wtLXNwbGl0IDxmaWxlPiBbPHByZWZpeD5dICAgIFNwbGl0IGFuIGFyY2hpdmUuXG4iCisjfiAiICAtanwtLWpvaW4gPHBhcnQ+IDxwYXJ0PiAuLi4gICAgIEpvaW4gcGFydHMgdG9nZXRoZXIuXG4iCisjfiAiICAtSXwtLWluZm8gPHBhcnQ+IC4uLiAgICAgICAgICAgIERpc3BsYXkgaW5mbyBhYm91dCBhIHBhcnQuXG4iCisjfiAiICAtaHwtLWhlbHAgICAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisjfiAiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhlIHZlcnNpb24uXG4iCisjfiAiICAtLWxpY2Vuc2UgICAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhlIGxpY2Vuc2UuXG4iCisjfiAiXG4iCisjfiAiICAtYXwtLWF1dG8gLW8gPGNvbXBsZXRlPiA8cGFydD4gIEF1dG8tYWNjdW11bGF0ZSBwYXJ0cy5cbiIKKyN+ICIgIC1sfC0tbGlzdHEgICAgICAgICAgICAgICAgICAgICAgTGlzdCB1bm1hdGNoZWQgcGllY2VzLlxuIgorI34gIiAgLWR8LS1kaXNjYXJkIFs8ZmlsZW5hbWU+IC4uLl0gICBEaXNjYXJkIHVubWF0Y2hlZCBwaWVjZXMuXG4iCisjfiAiXG4iCisjfiAiT3B0aW9uczpcbiIKKyN+ICIgIC0tZGVwb3RkaXIgPGRpcmVjdG9yeT4gICAgICAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMvJXMuXG4iCisjfiAiICAtU3wtLXBhcnRzaXplIDxzaXplPiAgICAgICAgICAgIEluIEtpQiwgZm9yIC1zIChkZWZhdWx0IGlzIDQ1MCkuXG4iCisjfiAiICAtb3wtLW91dHB1dCA8ZmlsZT4gICAgICAgICAgICAgIEZvciAtaiAoZGVmYXVsdCBpcyA8cGFja2FnZT4tPHZlcnNpb24+LiIKKyN+ICJkZWIpLlxuIgorI34gIiAgLVF8LS1ucHF1aWV0ICAgICAgICAgICAgICAgICAgICBCZSBxdWlldCB3aGVuIC1hIGlzIG5vdCBhIHBhcnQuXG4iCisjfiAiICAtLW1zZG9zICAgICAgICAgICAgICAgICAgICAgICAgIEdlbmVyYXRlIDguMyBmaWxlbmFtZXMuXG4iCisjfiAiXG4iCisjfiAiRXhpdCBzdGF0dXM6IDAgPSBPSzsgIDEgPSAtYSBpcyBub3QgYSBwYXJ0OyAgMiA9IHRyb3VibGUhXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJGb3JtYSBkJ8O6czogJXMgWzxvcGNpw7M+IOKApl0gPG9yZHJlPlxuIgorI34gIlxuIgorI34gIk9yZHJlczpcbiIKKyN+ICIgIC1zfC0tc3BsaXQgPGZpdHhlcj4gWzxwcmVmaXg+XSAgRXNib3ppbmEgZW4gcGFydHMgdW4gYXJ4aXUuXG4iCisjfiAiICAtanwtLWpvaW4gPHBhcnQ+IDxwYXJ0PiDigKYgICAgICAgVW5laXggcGFydHMuXG4iCisjfiAiICAtSXwtLWluZm8gPHBhcnQ+IOKApiAgICAgICAgICAgICAgTW9zdHJhIGluZm9ybWFjacOzIHNvYnJlIHVuYSBwYXJ0LlxuIgorI34gIiAgLWh8LS1oZWxwICAgICAgICAgICAgICAgICAgICAgICBNb3N0cmEgYXF1ZXN0IG1pc3NhdGdlIGQnYWp1ZGEuXG4iCisjfiAiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgICAgICAgIE1vc3RyYSBsYSB2ZXJzacOzLlxuIgorI34gIiAgLS1saWNlbmNlICAgICAgICAgICAgICAgICAgICAgICBNb3N0cmEgbGEgbGxpY8OobmNpYS5cbiIKKyN+ICJcbiIKKyN+ICIgIC1hfC0tYXV0byAtbyA8Y29tcGxldGE+IDxwYXJ0PiAgQXV0b2FjdW11bGEgcGFydHMuXG4iCisjfiAiICAtbHwtLWxpc3RxICAgICAgICAgICAgICAgICAgICAgIExsaXN0YSBlbHMgYm9jaW5zIGRlc2VtcGFyZWxsYXRzLlxuIgorI34gIiAgLWR8LS1kaXNjYXJkIFs8Zml0eGVyPiDigKZdICAgICAgIERlc2NhcnRhIGVscyBib2NpbnMgZGVzZW1wYXJlbGxhdHMuXG4iCisjfiAiXG4iCisjfiAiT3BjaW9uczpcbiIKKyN+ICIgIC0tZGVwb3RkaXIgPGRpcmVjdG9yaT4gICAgICAgICAgRW1wcmEgPGRpcmVjdG9yaT4gZW4gY29tcHRlcyBkZSAlcy8lcy5cbiIKKyN+ICIgIC1TfC0tcGFydHNpemUgPG1pZGE+ICAgICAgICAgICAgKGVuIEtpQiwgcGVyIGEgLXMgKHBlciBkZWZlY3RlIMOpcyAiCisjfiAiNDUwKS5cbiIKKyN+ICIgIC1vfC0tb3V0cHV0IDxmaXR4ZXI+ICAgICAgICAgICAgUGVyIGEgLWogKHBlciBkZWZlY3RlIMOpc1xuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGFxdWV0Pi08dmVyc2nDsz4uZGViKVxuIgorI34gIiAgLVF8LS1ucHF1aWV0ICAgICAgICAgICAgICAgICAgICBTaWd1ZXMgc2lsZW5jacOzcyBxdWFuIC1hIG5vIMOpcyB1bmEgIgorI34gInBhcnQuXG4iCisjfiAiICAtLW1zZG9zICAgICAgICAgICAgICAgICAgICAgICAgIEdlbmVyYSBub21zIGRlIGZpdHhlciBlbiBmb3JtYXQgOC4zLlxuIgorI34gIlxuIgorI34gIkVzdGF0IGQnZWl4aWRhOiAwID0gT0s7ICAxID0gLWEgbm8gw6lzIHVuYSBwYXJ0OyAgMiA9IHByb2JsZW1lcyFcbiIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvcG8vY3MuZ21vIGIvZHBrZy0xLjE2LjEuMS9wby9jcy5nbW8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTNlM2YwMAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvcG8vY3MuZ21vCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvcG8vY3MucG8gYi9kcGtnLTEuMTYuMS4xL3BvL2NzLnBvCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjk2ODAwNTQKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3BvL2NzLnBvCkBAIC0wLDAgKzEsNzMxOSBAQAorIyBDemVjaCB0cmFuc2xhdGlvbiBmb3IgZHBrZy4KKyMKKyMgUGV0ciBDZWNoIDxjZWNoQGRlYmlhbi5vcmc+LCAxOTk5LCAyMDAwLCAyMDAxLgorIyBNaXJvc2xhdiBLdXJlIDxrdXJlbUBkZWJpYW4uY3o+LCAyMDA0LCAyMDA1LCAyMDA2LCAyMDA3LCAyMDA4LCAyMDA5LCAyMDEwLgorIworIyBUaGFua3MgZ28gdG86CisjIE1pbGFuIFphbWF6YWwgPHBkbUBkZWJpYW4ub3JnPgorIyBWbGFkaW1pciBNaWNobCA8VmxhZGltaXIuTWljaGxAc2V6bmFtLmN6PgorbXNnaWQgIiIKK21zZ3N0ciAiIgorIlByb2plY3QtSWQtVmVyc2lvbjogZHBrZ1xuIgorIlJlcG9ydC1Nc2dpZC1CdWdzLVRvOiBkZWJpYW4tZHBrZ0BsaXN0cy5kZWJpYW4ub3JnXG4iCisiUE9ULUNyZWF0aW9uLURhdGU6IDIwMTEtMTAtMTQgMDc6MTErMDIwMFxuIgorIlBPLVJldmlzaW9uLURhdGU6IDIwMTAtMTEtMjcgMTM6MjArMDEwMFxuIgorIkxhc3QtVHJhbnNsYXRvcjogTWlyb3NsYXYgS3VyZSA8a3VyZW1AZGViaWFuLmN6PlxuIgorIkxhbmd1YWdlLVRlYW06IEN6ZWNoIDxkZWJpYW4tbDEwbi1jemVjaEBsaXN0cy5kZWJpYW4ub3JnPlxuIgorIkxhbmd1YWdlOiBjc1xuIgorIk1JTUUtVmVyc2lvbjogMS4wXG4iCisiQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PVVURi04XG4iCisiQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdFxuIgorIlBsdXJhbC1Gb3JtczogbnBsdXJhbHM9MzsgcGx1cmFsPW49PTEgPyAwIDogbj49MiAmJiBuPD00ID8gMSA6IDI7XG4iCisKKyM6IGxpYi9kcGtnL2FyLmM6NjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgJyVjJyBpbiBhcmNoaXZlICclLjI1MHMnIG1lbWJlciAnJS4xNnMnIHNpemUiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvYXIuYzo4MSBsaWIvZHBrZy9hci5jOjk3IGxpYi9kcGtnL2FyLmM6MTA4IGxpYi9kcGtnL2FyLmM6MTEyCisjOiBsaWIvZHBrZy9hci5jOjEzNCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE1NAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgZmlsZSAnJXMnIgorbXNnc3RyICJuZWx6ZSB6YXBzYXQgc291Ym9yIOKAniVz4oCcIgorCisjOiBsaWIvZHBrZy9hci5jOjk0CisjLCBjLWZvcm1hdAorbXNnaWQgImdlbmVyYXRlZCBjb3JydXB0IGFyIGhlYWRlciBmb3IgJyVzJyIKK21zZ3N0ciAidnlnZW5lcm92w6FuYSBwb3J1xaFlbsOhIGFyIGhsYXZpxI1rYSBwcm8g4oCeJXPigJwiCisKKyM6IGxpYi9kcGtnL2FyLmM6MTIzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBmc3RhdCBhciBtZW1iZXIgZmlsZSAoJXMpIgorbXNnc3RyICJzZWxoYWxvIHZvbMOhbsOtIGZzdGF0IG5hIHNvdWJvcnUgJXMsIGt0ZXLDvSBqZSBzb3XEjcOhc3TDrSBhciIKKworIzogbGliL2Rwa2cvYXIuYzoxMzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byBmc3RhdCBhciBtZW1iZXIgZmlsZSAoJXMpIgorbXNnaWQgImFyIG1lbWJlciBmaWxlICglcykiCittc2dzdHIgInNlbGhhbG8gdm9sw6Fuw60gZnN0YXQgbmEgc291Ym9ydSAlcywga3RlcsO9IGplIHNvdcSNw6FzdMOtIGFyIgorCisjOiBsaWIvZHBrZy9idWZmZXIuYzoxOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgb24gYnVmZmVyIGNvcHkgZm9yICVzIgorbXNnc3RyICJjaHliYSDEjXRlbsOtIHYgYnVmZmVyX2NvcHkgKCVzKSIKKworIzogbGliL2Rwa2cvYnVmZmVyLmM6MjEyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCBpbiB3cml0ZSBvbiBidWZmZXIgY29weSBmb3IgJXMiCittc2dzdHIgImNoeWJhIHrDoXBpc3UgdiBidWZmZXJfY29weSAoJXMpIgorCisjOiBsaWIvZHBrZy9idWZmZXIuYzoyMjAKKyMsIGMtZm9ybWF0Cittc2dpZCAic2hvcnQgcmVhZCBvbiBidWZmZXIgY29weSBmb3IgJXMiCittc2dzdHIgInprcsOhY2Vuw6kgxI10ZW7DrSB2IGJ1ZmZlcl9jb3B5ICglcykiCisKKyM6IGxpYi9kcGtnL2J1ZmZlci5jOjI4OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgdGFyIgorbXNnaWQgImZhaWxlZCB0byBzZWVrICVzIgorbXNnc3RyICJuZWx6ZSBzcHVzdGl0IHRhciIKKworIzogbGliL2Rwa2cvY29tbWFuZC5jOjE3OCBsaWIvZHBrZy9jb21tYW5kLmM6MjA0IHNyYy9oZWxwLmM6NjIxCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjk4IHNyYy9wcm9jZXNzYXJjLmM6MTM4IHNyYy9wcm9jZXNzYXJjLmM6NDMyCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjgzOSBkcGtnLWRlYi9idWlsZC5jOjQ1OSBkcGtnLWRlYi9idWlsZC5jOjUzOAorIzogZHBrZy1kZWIvYnVpbGQuYzo1NjEgZHBrZy1kZWIvZXh0cmFjdC5jOjMxNyBkcGtnLWRlYi9pbmZvLmM6NjUKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzo2OSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NDU3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBleGVjdXRlICVzICglcykiCittc2dzdHIgIm5lbHplIHNwdXN0aXQgJXMgKCVzKSIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzo4MworIywgYy1mb3JtYXQKK21zZ2lkICIlczogZGVjb21wcmVzc2lvbiIKK21zZ3N0ciAiJXM6IGRla29tcHJlc2UiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6ODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGNvbXByZXNzaW9uIgorbXNnc3RyICIlczoga29tcHJlc2UiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTEyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvciBiaW5kaW5nIGlucHV0IHRvIGd6aXAgc3RyZWFtIgorbXNnc3RyICIlczogY2h5YmEgbmF2w6F6w6Fuw60gdnN0dXB1IG5hIHByb3VkIGd6aXB1IgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCByZWFkIGVycm9yOiAnJXMnIgorbXNnc3RyICIlczogdm5pdMWZbsOtIGNoeWJhIGd6aXB1IHDFmWkgxI10ZW7DrTog4oCeJXPigJwiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTMyIGxpYi9kcGtnL2NvbXByZXNzLmM6MTM2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHdyaXRlIGVycm9yIgorbXNnc3RyICIlczogdm5pdMWZbsOtIGNoeWJhIGd6aXB1IHDFmWkgesOhcGlzdSIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yIGJpbmRpbmcgb3V0cHV0IHRvIGd6aXAgc3RyZWFtIgorbXNnc3RyICIlczogY2h5YmEgbmF2w6F6w6Fuw60gdsO9c3R1cHUgbmEgcHJvdWQgZ3ppcHUiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTU3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHJlYWQgZXJyb3IiCittc2dzdHIgIiVzOiB2bml0xZluw60gY2h5YmEgZ3ppcHUgcMWZaSDEjXRlbsOtIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE2NworIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCB3cml0ZSBlcnJvcjogJyVzJyIKK21zZ3N0ciAiJXM6IHZuaXTFmW7DrSBjaHliYSBnemlwdSBwxZlpIHrDoXBpc3U6IOKAniVz4oCcIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE4MAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCB3cml0ZSBlcnJvcjogJXMiCittc2dzdHIgIiVzOiB2bml0xZluw60gY2h5YmEgZ3ppcHUgcMWZaSB6w6FwaXN1OiAlcyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyMjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yIGJpbmRpbmcgaW5wdXQgdG8gYnppcDIgc3RyZWFtIgorbXNnc3RyICIlczogY2h5YmEgbmF2w6F6w6Fuw60gdnN0dXB1IG5hIHByb3VkIGJ6aXB1MiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIHJlYWQgZXJyb3I6ICclcyciCittc2dzdHIgIiVzOiB2bml0xZluw60gY2h5YmEgYnppcHUyIHDFmWkgxI10ZW7DrTog4oCeJXPigJwiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjQwIGxpYi9kcGtnL2NvbXByZXNzLmM6MjQ0IGxpYi9kcGtnL2NvbXByZXNzLmM6Mjk0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiB3cml0ZSBlcnJvciIKK21zZ3N0ciAiJXM6IHZuaXTFmW7DrSBjaHliYSBiemlwdTIgcMWZaSB6w6FwaXN1IgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI1OAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZXJyb3IgYmluZGluZyBvdXRwdXQgdG8gYnppcDIgc3RyZWFtIgorbXNnc3RyICIlczogY2h5YmEgbmF2w6F6w6Fuw60gdsO9c3R1cHUgbmEgcHJvdWQgYnppcHUyIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI2NQorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgcmVhZCBlcnJvciIKK21zZ3N0ciAiJXM6IHZuaXTFmW7DrSBjaHliYSBiemlwdTIgcMWZaSDEjXRlbsOtIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI3NSBsaWIvZHBrZy9jb21wcmVzcy5jOjI4NgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgd3JpdGUgZXJyb3I6ICclcyciCittc2dzdHIgIiVzOiB2bml0xZluw60gY2h5YmEgYnppcHUyIHDFmWkgesOhcGlzdTog4oCeJXPigJwiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjgyCittc2dpZCAidW5leHBlY3RlZCBiemlwMiBlcnJvciIKK21zZ3N0ciAibmVvxI1la8OhdmFuw6EgY2h5YmEgYnppcDIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVwZGF0ZXMgZGlyZWN0b3J5IGNvbnRhaW5zIGZpbGUgYCUuMjUwcycgd2hvc2UgbmFtZSBpcyB0b28gbG9uZyAobGVuZ3RoPSVkLCAiCisibWF4PSVkKSIKK21zZ3N0ciAiIgorImFkcmVzw6HFmSBzIGFrdHVhbGl6YWNlbWkgb2JzYWh1amUgc291Ym9yIOKAniUuMjUwc+KAnCwgamVob8W+IG7DoXpldiBqZSBwxZnDrWxpxaEgIgorImRsb3Vow70gKCVkLCBtYXg9JWQpIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1cGRhdGVzIGRpcmVjdG9yeSBjb250YWlucyBmaWxlcyB3aXRoIGRpZmZlcmVudCBsZW5ndGggbmFtZXMgKGJvdGggJWQgYW5kICVkKSIKK21zZ3N0ciAiIgorImFkcmVzw6HFmSBzIGFrdHVhbGl6YWNlbWkgb2JzYWh1amUgc291Ym9yeSBzIHLFr3pub3UgZMOpbGtvdSBuw6F6dsWvICglZCBpICVkKSIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzo4NgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc2NhbiB1cGRhdGVzIGRpcmVjdG9yeSBgJS4yNTVzJyIKK21zZ3N0ciAibmVsemUgemppc3RpdCBvYnNhaCBhZHJlc8OhxZllIHMgYWt0dWFsaXphY2VtaSDigJ4lLjI1NXPigJwiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZW1vdmUgaW5jb3Jwb3JhdGVkIHVwZGF0ZSBmaWxlICUuMjU1cyIKK21zZ3N0ciAic2VsaGFsbyBvZHN0cmFuxJtuw60gc3BvamVuw6lobyBha3R1YWxpemHEjW7DrWhvIHNvdWJvcnUgJS4yNTVzIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEyMSBkcGtnLWRlYi9idWlsZC5jOjQ0NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGAlLjI1NXMnIgorbXNnc3RyICJuZWx6ZSB2eXR2b8WZaXQg4oCeJS4yNTVz4oCcIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEyNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmlsbCAlLjI1MHMgd2l0aCBwYWRkaW5nIgorbXNnc3RyICJuZWx6ZSBkb3Jvdm5hdCAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTI3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCAlLjI1MHMgYWZ0ZXIgcGFkZGluZyIKK21zZ3N0ciAibmVsemUgdnlwcsOhemRuaXQgJS4yNTBzIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEyOQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2VlayB0byBzdGFydCBvZiAlLjI1MHMgYWZ0ZXIgcGFkZGluZyIKK21zZ3N0ciAibmVsemUgc2UgcMWZZXN1bm91dCBuYSB6YcSNw6F0ZWsgJS4yNTBzIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjE5NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBsb2NrIGZpbGUgJXMgZm9yIHRlc3RpbmciCittc2dzdHIgIm5lbHplIG90ZXbFmcOtdCB6w6Fta292w70gc291Ym9yICVzIHBybyB0ZXN0IgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjIyMQorbXNnaWQgInVuYWJsZSB0byBvcGVuL2NyZWF0ZSBzdGF0dXMgZGF0YWJhc2UgbG9ja2ZpbGUiCittc2dzdHIgInrDoW1layBzdGF2b3bDqSBkYXRhYsOhemUgbmVsemUgb3RldsWZw610IG5lYm8gdnl0dm/FmWl0IgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjIzMQorbXNnaWQgInlvdSBkbyBub3QgaGF2ZSBwZXJtaXNzaW9uIHRvIGxvY2sgdGhlIGRwa2cgc3RhdHVzIGRhdGFiYXNlIgorbXNnc3RyICJuZW3DoXRlIHByw6F2byBrIHV6YW3EjWVuw60gc3Rhdm92w6kgZGF0YWLDoXplIGRwa2ciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjMzCisjLCBmdXp6eQorI3wgbXNnaWQgInVuYWJsZSB0byBsb2NrIGRwa2cgc3RhdHVzIGRhdGFiYXNlIgorbXNnaWQgImRwa2cgc3RhdHVzIGRhdGFiYXNlIgorbXNnc3RyICJzdGF2b3ZvdSBkYXRhYsOhemkgZHBrZyBuZWx6ZSB1emFta25vdXQiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjU3Cittc2dpZCAicmVxdWVzdGVkIG9wZXJhdGlvbiByZXF1aXJlcyBzdXBlcnVzZXIgcHJpdmlsZWdlIgorbXNnc3RyICJwb8W+YWRvdmFuw6Egb3BlcmFjZSB2ecW+YWR1amUgc3VwZXJ1xb5pdmF0ZWxza8OhIHByw6F2YSIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyNjIKK21zZ2lkICJ1bmFibGUgdG8gYWNjZXNzIGRwa2cgc3RhdHVzIGFyZWEiCittc2dzdHIgImtlIHN0YXZvdsOpIG9ibGFzdGkgZHBrZyBuZWx6ZSBwxZlpc3RvdXBpdCIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyNjQKK21zZ2lkICJvcGVyYXRpb24gcmVxdWlyZXMgcmVhZC93cml0ZSBhY2Nlc3MgdG8gZHBrZyBzdGF0dXMgYXJlYSIKK21zZ3N0ciAib3BlcmFjZSBwb8W+YWR1amUgesOhcGlzb3bDoSBwcsOhdmEgZG8gc3Rhdm92w6kgb2JsYXN0aSBkcGtnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjMwOQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVtb3ZlIG15IG93biB1cGRhdGUgZmlsZSAlLjI1NXMiCittc2dzdHIgIm5lcG9kYcWZaWxvIHNlIG9kc3RyYW5pdCBzdsWvaiB2bGFzdG7DrSBzb3Vib3IgcyBha3R1YWxpemFjZW1pICUuMjU1cyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJuZWx6ZSB6YXBzYXQgem3Em27Em27DvSBzdGF2IGJhbMOta3Ug4oCeJS4yNTBz4oCcIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM0OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgIm5lbHplIHZ5cHLDoXpkbml0IGFrdHVhbGl6b3ZhbsO9IHN0YXYg4oCeJS4yNTBz4oCcIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM1MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gdHJ1bmNhdGUgZm9yIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJuZWx6ZSB6a3LDoXRpdCBwcm8gYWt0dWFsaXpvdmFuw70gc3RhdiDigJ4lLjI1MHPigJwiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzUzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmc3luYyB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAibmVsemUgc3luY2hyb25pem92YXQgYWt0dWFsaXpvdmFuw70gc3RhdiDigJ4lLjI1MHPigJwiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzU1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAibmVsemUgdXphdsWZw610IHptxJtuxJtuw70gc3RhdiBiYWzDrWt1IOKAniUuMjUwc+KAnCIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgIm5lbHplIG5haW5zdGFsb3ZhdCB6bcSbbsSbbsO9IHN0YXYgYmFsw61rdSDigJ4lLjI1MHPigJwiCisKKyM6IGxpYi9kcGtnL2Rpci5jOjUwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gcmVhZCBmaWxlZGVzY3JpcHRvciBmbGFncyBmb3IgJS4yNTBzIgorbXNnaWQgInVuYWJsZSB0byBnZXQgZmlsZSBkZXNjcmlwdG9yIGZvciBkaXJlY3RvcnkgJyVzJyIKK21zZ3N0ciAibmVsemUgcMWZZcSNw61zdCBwxZnDrXpuYWt5IHBvcGlzb3ZhxI1lIHNvdWJvcnUgcHJvIOKAniUuMjUwc+KAnCIKKworIzogbGliL2Rwa2cvZGlyLmM6NTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byBzeW5jIGZpbGUgJyVzJyIKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBkaXJlY3RvcnkgJyVzJyIKK21zZ3N0ciAibmVsemUgc3luY2hyb25pem92YXQgc291Ym9yIOKAniVz4oCcIgorCisjOiBsaWIvZHBrZy9kaXIuYzo2OSBsaWIvZHBrZy9kaXIuYzoxMzEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byBvcGVuIGZpbGUgJyVzJyIKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBkaXJlY3RvcnkgJyVzJyIKK21zZ3N0ciAibmVsemUgb3RldsWZw610IHNvdWJvciDigJ4lc+KAnCIKKworIzogbGliL2Rwa2cvZGlyLmM6MTA5IHNyYy9kaXZlcnRjbWQuYzoyMTggZHBrZy1zcGxpdC9zcGxpdC5jOjIwMgorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gZmlsZSAnJXMnIgorbXNnc3RyICJuZWx6ZSBvdGV2xZnDrXQgc291Ym9yIOKAniVz4oCcIgorCisjOiBsaWIvZHBrZy9kaXIuYzoxMTEgc3JjL2RpdmVydGNtZC5jOjIzMiBzcmMvZGl2ZXJ0Y21kLmM6Mzc3CisjOiBzcmMvc3RhdGNtZC5jOjIxNyBkcGtnLWRlYi9idWlsZC5jOjU5OCBkcGtnLXNwbGl0L2pvaW4uYzo2NQorIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE4NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTQwNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBmaWxlICclcyciCittc2dzdHIgIm5lbHplIHN5bmNocm9uaXpvdmF0IHNvdWJvciDigJ4lc+KAnCIKKworIzogbGliL2Rwa2cvZGlyLmM6MTEzIHNyYy9kaXZlcnRjbWQuYzoyMzQgc3JjL2RpdmVydGNtZC5jOjM3OQorIzogZHBrZy1kZWIvYnVpbGQuYzo2MDAgZHBrZy1zcGxpdC9qb2luLmM6NjcgZHBrZy1zcGxpdC9xdWV1ZS5jOjE4OQorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzMTQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE0MDgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIGZpbGUgJyVzJyIKK21zZ3N0ciAibmVsemUgemF2xZnDrXQgc291Ym9yIOKAniVz4oCcIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6Mzk2CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB3cml0ZSBkZXRhaWxzIG9mIGAlLjUwcycgdG8gYCUuMjUwcyciCittc2dzdHIgInNlbGhhbG8gemFwc8OhbsOtIHBvZHJvYm5vc3TDrSBvIOKAniUuNTBz4oCcIGRvIHNvdWJvcnUg4oCeJS4yNTBz4oCcIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDIzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuICclcycgZm9yIHdyaXRpbmcgJXMgZGF0YWJhc2UiCittc2dzdHIgInNlbGhhbG8gb3RldsWZZW7DrSDigJ4lc+KAnCBwcm8gemFwc8OhbsOtIGRhdGFiw6F6ZSAlcyIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQyNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IGJ1ZmZlcmluZyBvbiAlcyBkYXRhYmFzZSBmaWxlIgorbXNnc3RyICJuZWx6ZSBuYXN0YXZpdCBidWZmZXJvdsOhbsOtIG5hIHNvdWJvcnUgZGF0YWLDoXplICVzIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDM4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB3cml0ZSAlcyBkYXRhYmFzZSByZWNvcmQgYWJvdXQgJyUuNTBzJyB0byAnJS4yNTBzJyIKK21zZ3N0ciAic2VsaGFsbyB6YXBzw6Fuw60gJXMgesOhem5hbXUgbyDigJ4lLjUwc+KAnCBkbyBzb3Vib3J1IOKAniUuMjUwc+KAnCIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ0NgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZmx1c2ggJXMgZGF0YWJhc2UgdG8gJyUuMjUwcyciCittc2dzdHIgInNlbGhhbG8gdnlwcsOhemRuxJtuw60gZGF0YWLDoXplICVzIGRvIHNvdWJvcnUg4oCeJS4yNTBz4oCcIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDQ4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBmc3luYyAlcyBkYXRhYmFzZSB0byAnJS4yNTBzJyIKK21zZ3N0ciAic2VsaGFsIGZzeW5jIGRhdGFiw6F6ZSAlcyBkbyBzb3Vib3J1IOKAniUuMjUwc+KAnCIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ1MQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2xvc2UgJyUuMjUwcycgYWZ0ZXIgd3JpdGluZyAlcyBkYXRhYmFzZSIKK21zZ3N0ciAic2VsaGFsbyB6YXbFmWVuw60g4oCeJS4yNTBz4oCcIHBvIHphcHPDoW7DrSBkYXRhYsOhemUgJXMiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGxpbmsgJyUuMjUwcycgdG8gJyUuMjUwcycgZm9yIGJhY2t1cCBvZiAlcyBkYXRhYmFzZSIKK21zZ3N0ciAic2VsaGFsbyBsaW5rb3bDoW7DrSDigJ4lLjI1MHPigJwgbmEg4oCeJS4yNTBz4oCcIHBybyB6w6Fsb2h1IGRhdGFiw6F6ZSAlcyIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ1OAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gaW5zdGFsbCAnJS4yNTBzJyBhcyAnJS4yNTBzJyBjb250YWluaW5nICVzIGRhdGFiYXNlIgorbXNnc3RyICJzZWxoYWxhIGluc3RhbGFjZSDigJ4lLjI1MHPigJwgamFrbyDigJ4lLjI1MHPigJwgb2JzYWh1asOtY8OtIGRhdGFiw6F6aSAlcyIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjk0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogdW5yZWNvdmVyYWJsZSBmYXRhbCBlcnJvciwgYWJvcnRpbmc6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKyIlczogbmVvYm5vdml0ZWxuw6Ega3JpdGlja8OhIGNoeWJhLCBwxZllcnXFoXVqaTpcbiIKKyIgJXNcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjEwMAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiVzOiB1bnJlY292ZXJhYmxlIGZhdGFsIGVycm9yLCBhYm9ydGluZzpcbiIKKyN8ICIgJXNcbiIKK21zZ2lkICIiCisiJXM6IG91dHNpZGUgZXJyb3IgY29udGV4dCwgYWJvcnRpbmc6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKyIlczogbmVvYm5vdml0ZWxuw6Ega3JpdGlja8OhIGNoeWJhLCBwxZllcnXFoXVqaTpcbiIKKyIgJXNcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjEyMAorIywgZnV6enkKKyN8IG1zZ2lkICJvdXQgb2YgbWVtb3J5IGZvciBuZXcgY2xlYW51cCBlbnRyeSIKK21zZ2lkICJvdXQgb2YgbWVtb3J5IGZvciBuZXcgZXJyb3IgY29udGV4dCIKK21zZ3N0ciAibmVkb3N0YXRlayBwYW3Em3RpIHBybyBub3ZvdSBwb2xvxb5rdSIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjE4MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IGVycm9yIHdoaWxlIGNsZWFuaW5nIHVwOlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisiJXM6IGNoeWJhIHDFmWkgw7prbGlkdTpcbiIKKyIgJXNcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjIwMQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZHBrZzogdG9vIG1hbnkgbmVzdGVkIGVycm9ycyBkdXJpbmcgZXJyb3IgcmVjb3ZlcnkgISFcbiIKK21zZ2lkICIlczogdG9vIG1hbnkgbmVzdGVkIGVycm9ycyBkdXJpbmcgZXJyb3IgcmVjb3ZlcnkhIVxuIgorbXNnc3RyICJkcGtnOiBwxZnDrWxpxaEgbW5vaG8gdm5vxZllbsO9Y2ggY2h5YiBixJtoZW0gb3ByYXZvdsOhbsOtIGNoeWIhIVxuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MjY4IGxpYi9kcGtnL2VoYW5kbGUuYzozMDcKK21zZ2lkICJvdXQgb2YgbWVtb3J5IGZvciBuZXcgY2xlYW51cCBlbnRyeSIKK21zZ3N0ciAibmVkb3N0YXRlayBwYW3Em3RpIHBybyBub3ZvdSBwb2xvxb5rdSIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjI5MQorbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBjbGVhbnVwIGVudHJ5IHdpdGggbWFueSBhcmd1bWVudHMiCittc2dzdHIgIm5lZG9zdGF0ZWsgcGFtxJt0aSBwcm8gbm92b3UgcG9sb8W+a3UgcyBtbm9oYSBhcmd1bWVudHkiCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzozNTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiVzOiBlcnJvciBjbG9zaW5nICVzOiAlcyIKK21zZ2lkICIlczogZXJyb3I6ICVzXG4iCittc2dzdHIgIiVzOiBjaHliYSBwxZlpIHphdsOtcsOhbsOtICVzOiAlcyIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjM5MworIywgYy1mb3JtYXQKK21zZ2lkICIlczogd2FybmluZzogJXNcbiIKK21zZ3N0ciAiJXM6IHZhcm92w6Fuw606ICVzXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzo0MTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6JXM6JWQ6IGludGVybmFsIGVycm9yOiAlc1xuIgorbXNnc3RyICIlczolczolZDogdm5pdMWZbsOtIGNoeWJhOiAlc1xuIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBpcyBtaXNzaW5nIgorbXNnc3RyICIlcyBjaHliw60iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJgJS4qcycgaXMgbm90IGFsbG93ZWQgZm9yICVzIgorbXNnaWQgIiclLjUwcycgaXMgbm90IGFsbG93ZWQgZm9yICVzIgorbXNnc3RyICLigJ4lLipz4oCcIG5lbsOtIHYgJXMgcG92b2xlbm8iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjczCisjLCBjLWZvcm1hdAorbXNnaWQgImp1bmsgYWZ0ZXIgJXMiCittc2dzdHIgIm5lc215c2xuw6EgZGF0YSB6YSAlcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6ODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBwYWNrYWdlIG5hbWUgKCUuMjUwcykiCittc2dzdHIgImNoeWJuw6kgam3DqW5vIGJhbMOta3UgKCUuMjUwcykiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJlbXB0eSBmaWxlIGRldGFpbHMgZmllbGQgYCVzJyIKK21zZ3N0ciAicHLDoXpkbsOpIHBvbGUgcG9kcm9ibm9zdMOtIG8gc291Ym9ydSDigJ4lc+KAnCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTA1CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgZGV0YWlscyBmaWVsZCBgJXMnIG5vdCBhbGxvd2VkIGluIHN0YXR1cyBmaWxlIgorbXNnc3RyICJwb2xlIHBvZHJvYm5vc3TDrSBvIHNvdWJvcnUg4oCeJXPigJwgbmVuw60gdmUgc3Rhdm92w6ltIHNvdWJvcnUgZG92b2xlbm8iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjExOAorIywgYy1mb3JtYXQKK21zZ2lkICJ0b28gbWFueSB2YWx1ZXMgaW4gZmlsZSBkZXRhaWxzIGZpZWxkIGAlcycgKGNvbXBhcmVkIHRvIG90aGVycykiCittc2dzdHIgInDFmcOtbGnFoSBtbm9obyBob2Rub3QgdiBwb2xvxb5jZSDigJ4lc+KAnCAodnpobGVkZW0gayBvc3RhdG7DrW0pIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAidG9vIGZldyB2YWx1ZXMgaW4gZmlsZSBkZXRhaWxzIGZpZWxkIGAlcycgKGNvbXBhcmVkIHRvIG90aGVycykiCittc2dzdHIgInDFmcOtbGnFoSBtw6FsbyBob2Rub3QgdiBwb2xvxb5jZSDigJ4lc+KAnCAodnpobGVkZW0gayBvc3RhdG7DrW0pIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxNTQKK21zZ2lkICJ5ZXMvbm8gaW4gYm9vbGVhbiBmaWVsZCIKK21zZ3N0ciAieWVzL25vIHYgZHZvdWhvZG5vdG92w6ltIHBvbGkiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE3NAorbXNnaWQgIndvcmQgaW4gYHByaW9yaXR5JyBmaWVsZCIKK21zZ3N0ciAic2xvdm8gdiBwb2xpIOKAnnByaW9yaXR54oCcIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxODYKK21zZ2lkICJ2YWx1ZSBmb3IgYHN0YXR1cycgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICJob2Rub3RhIHBvbGUg4oCec3RhdHVz4oCcIG5lbsOtIHYgdG9tdG8gbcOtc3TEmyBwxZnDrXB1c3Ruw6EiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE5MQorbXNnaWQgImZpcnN0ICh3YW50KSB3b3JkIGluIGBzdGF0dXMnIGZpZWxkIgorbXNnc3RyICJwcnZuw60gc2xvdm8gKHdhbnQpIHYgcG9saSDigJ5zdGF0dXPigJwiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE5NAorbXNnaWQgInNlY29uZCAoZXJyb3IpIHdvcmQgaW4gYHN0YXR1cycgZmllbGQiCittc2dzdHIgImRydWjDqSBzbG92byAoZXJyb3IpIHYgcG9saSDigJ5zdGF0dXPigJwiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE5NworbXNnaWQgInRoaXJkIChzdGF0dXMpIHdvcmQgaW4gYHN0YXR1cycgZmllbGQiCittc2dzdHIgInTFmWV0w60gc2xvdm8gKHN0YXR1cykgdiBwb2xpIOKAnnN0YXR1c+KAnCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjA3CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGluIFZlcnNpb24gc3RyaW5nICclLjI1MHMnIgorbXNnc3RyICJjaHliYSB2IMWZZXTEm3pjaSBWZXJzaW9uIOKAniUuMjUwc+KAnCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjE4Cittc2dpZCAib2Jzb2xldGUgYFJldmlzaW9uJyBvciBgUGFja2FnZS1SZXZpc2lvbicgZmllbGQgdXNlZCIKK21zZ3N0ciAicG91xb5pdG8gemFzdGFyYWzDqSBwb2xlIOKAnlJldmlzaW9u4oCcIG5lYm8g4oCeUGFja2FnZS1SZXZpc2lvbuKAnCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjM1Cittc2dpZCAidmFsdWUgZm9yIGBjb25maWctdmVyc2lvbicgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICJob2Rub3RhIHBvbGUg4oCeY29uZmlnLXZlcnNpb27igJwgbmVuw60gdiB0b210byBtw61zdMSbIHDFmcOtcHVzdG7DoSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjQwCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGluIENvbmZpZy1WZXJzaW9uIHN0cmluZyAnJS4yNTBzJyIKK21zZ3N0ciAiY2h5YmEgdiDFmWV0xJt6Y2kgQ29uZmlnLVZlcnNpb24g4oCeJS4yNTBz4oCcIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAidmFsdWUgZm9yIGBjb25mZmlsZXMnIGhhcyBtYWxmb3JtYXR0ZWQgbGluZSBgJS4qcyciCittc2dzdHIgImhvZG5vdGEg4oCeY29uZmZpbGVz4oCcIG9ic2FodWplIHprb21vbGVuw70gxZnDoWRlayDigJ4lLipz4oCcIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyODcKKyMsIGMtZm9ybWF0Cittc2dpZCAidmFsdWUgZm9yIGBjb25mZmlsZXMnIGhhcyBsaW5lIHN0YXJ0aW5nIHdpdGggbm9uLXNwYWNlIGAlYyciCittc2dzdHIgImhvZG5vdGEg4oCeY29uZmZpbGVz4oCcIG9ic2FodWplIMWZw6FkZWsgbmV6YcSNw61uYWrDrWPDrSBtZXplcm91IOKAniVj4oCcIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzozMDQKK21zZ2lkICJyb290IG9yIG51bGwgZGlyZWN0b3J5IGlzIGxpc3RlZCBhcyBhIGNvbmZmaWxlIgorbXNnc3RyICJrb8WZZW5vdsO9IG5lYm8gcHLDoXpkbsO9IGFkcmVzw6HFmSB1dmVkZW4gamFrbyBjb25mZmlsZSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MzY1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJgJXMnIGZpZWxkLCBtaXNzaW5nIHBhY2thZ2UgbmFtZSwgb3IgZ2FyYmFnZSB3aGVyZSBwYWNrYWdlIG5hbWUgZXhwZWN0ZWQiCittc2dzdHIgInYgcG9saSDigJ4lc+KAnCBjaHliw60gam3DqW5vIGJhbMOta3UsIG5lYm8gbcOtc3RvIG7Em2ogb2JzYWh1amUgbmVzbXlzbCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MzcwCisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgZmllbGQsIGludmFsaWQgcGFja2FnZSBuYW1lIGAlLjI1NXMnOiAlcyIKK21zZ3N0ciAicG9sZSDigJ4lc+KAnCBvYnNhaHVqZSBuZXBsYXRuw6kgam3DqW5vIGJhbMOta3Ug4oCeJS4yNTVz4oCcOiAlcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDA2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6XG4iCisiIGJhZCB2ZXJzaW9uIHJlbGF0aW9uc2hpcCAlYyVjIgorbXNnc3RyICIiCisicG9sb8W+a2Eg4oCeJXPigJwsIG9ka2F6IG5hIOKAniUuMjU1c+KAnDpcbiIKKyIgY2h5Ym7DvSB2enRhaCBtZXppIHZlcnplbWkgJWMlYyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDEyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6XG4iCisiIGAlYycgaXMgb2Jzb2xldGUsIHVzZSBgJWM9JyBvciBgJWMlYycgaW5zdGVhZCIKK21zZ3N0ciAiIgorInBvbG/FvmthIOKAniVz4oCcLCBvZGtheiBuYSDigJ4lLjI1NXPigJw6XG4iCisiIOKAniVj4oCcIGplIHphc3RhcmFsw6ksIG3DrXN0byB0b2hvIHBvdcW+aWp0ZSDigJ4lYz3igJwgbmVibyDigJ4lYyVj4oCcIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgaW1wbGljaXQgZXhhY3QgbWF0Y2ggb24gdmVyc2lvbiBudW1iZXIsIHN1Z2dlc3QgdXNpbmcgYD0nIGluc3RlYWQiCittc2dzdHIgIiIKKyJwb2xvxb5rYSDigJ4lc+KAnCwgb2RrYXogbmEg4oCeJS4yNTVz4oCcOlxuIgorIiBpbXBsaWNpdG7DrSBzaG9kYSBzIGtvbmtyw6l0bsOtbSDEjcOtc2xlbSB2ZXJ6ZSwgZG9wb3J1xI11amkgcG91xb7DrXQg4oCePeKAnCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDMwCittc2dpZCAiT25seSBleGFjdCB2ZXJzaW9ucyBtYXkgYmUgdXNlZCBmb3IgUHJvdmlkZXMiCittc2dzdHIgIlYgcG9saSBQcm92aWRlcyBsemUgcG91xb7DrXQgcG91emUgcMWZZXNuw6kgdXLEjWVuw60gdmVyc2UiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQzNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOlxuIgorIiB2ZXJzaW9uIHZhbHVlIHN0YXJ0cyB3aXRoIG5vbi1hbHBoYW51bWVyaWMsIHN1Z2dlc3QgYWRkaW5nIGEgc3BhY2UiCittc2dzdHIgIiIKKyJwb2xvxb5rYSDigJ4lc+KAnCwgb2RrYXogbmEg4oCeJS4yNTVz4oCcOlxuIgorIiDEjcOtc2xvIHZlcnplIG5lemHEjcOtbsOhIGFsZmFudW1lcmlja8O9bSB6bmFrZW0sIGRvcG9ydcSNdWppIHDFmWlkYXQgbWV6ZXJ1IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NTEgbGliL2Rwa2cvZmllbGRzLmM6NDU1CisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzogdmVyc2lvbiBjb250YWlucyBgJWMnIgorbXNnc3RyICJwb2xvxb5rYSDigJ4lc+KAnCwgb2RrYXogbmEg4oCeJS4yNTVz4oCcOiB2ZXJ6ZSBvYnNhaHVqZSDigJ4lY+KAnCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDU5CisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzogdmVyc2lvbiB1bnRlcm1pbmF0ZWQiCittc2dzdHIgInBvbG/FvmthIOKAniVz4oCcLCBvZGtheiBuYSDigJ4lLjI1NXPigJw6IG5ldXLEjWl0ZWxuw6EgdmVyemUiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ2NQorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gJyUuMjU1cyc6IGVycm9yIGluIHZlcnNpb24iCittc2dzdHIgInBvbG/FvmthIOKAniVz4oCcLCBvZGtheiBuYSDigJ4lLjI1NXPigJw6IGNoeWJhIHZlIHZlcnppIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBmaWVsZCwgc3ludGF4IGVycm9yIGFmdGVyIHJlZmVyZW5jZSB0byBwYWNrYWdlIGAlLjI1NXMnIgorbXNnc3RyICJwb2xvxb5rYSDigJ4lc+KAnCwgc3ludGFrdGlja8OhIGNoeWJhIHBvIHJlZmVyZW5jaSBuYSBiYWzDrWsg4oCeJS4yNTVz4oCcIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmVzIChgfCcpIG5vdCBhbGxvd2VkIGluICVzIGZpZWxkIgorbXNnc3RyICJhbHRlcm5hdGl2eSAo4oCefOKAnCkgbmVqc291IHYgcG9sb8W+Y2UgJXMgcG92b2xlbnkiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjUzNgorbXNnaWQgInZhbHVlIGZvciBgdHJpZ2dlcnMtcGVuZGluZycgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICJob2Rub3RhIHBvbGUg4oCedHJpZ2dlcnMtcGVuZGluZ+KAnCBuZW7DrSB2IHRvbXRvIGtvbnRleHR1IHDFmcOtcHVzdG7DoSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTQzCisjLCBjLWZvcm1hdAorbXNnaWQgImlsbGVnYWwgcGVuZGluZyB0cmlnZ2VyIG5hbWUgYCUuMjU1cyc6ICVzIgorbXNnc3RyICJuZXBvdm9sZW7DqSBqbcOpbm8gbmV2ecWZw616ZW7DqWhvIHNwb3XFoXTEm8SNZSDigJ4lLjI1NXPigJw6ICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHBlbmRpbmcgdHJpZ2dlciBgJS4yNTVzJyIKK21zZ3N0ciAiZHVwbGljaXRuw60gbmV2ecWZw616ZW7DvSBzcG91xaF0xJvEjSDigJ4lLjI1NXPigJwiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU2MQorbXNnaWQgInZhbHVlIGZvciBgdHJpZ2dlcnMtYXdhaXRlZCcgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICJob2Rub3RhIHBvbG/Fvmt5IOKAnnRyaWdnZXJzLWF3YWl0ZWTigJwgbmVuw60gdiB0b210byBrb250ZXh0dSBwxZnDrXB1c3Ruw6EiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU2OAorIywgYy1mb3JtYXQKK21zZ2lkICJpbGxlZ2FsIHBhY2thZ2UgbmFtZSBpbiBhd2FpdGVkIHRyaWdnZXIgYCUuMjU1cyc6ICVzIgorbXNnc3RyICJuZXBvdm9sZW7DqSBqbcOpbm8gYmFsw61rdSB2IG/EjWVrw6F2YW7DqW0gc3BvdcWhdMSbxI1pIOKAniUuMjU1c+KAnDogJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU3NAorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgYXdhaXRlZCB0cmlnZ2VyIHBhY2thZ2UgYCUuMjU1cyciCittc2dzdHIgImR1cGxpY2l0bsOtIGJhbMOtayB2IHNlem5hbXUgb8SNZWvDoXZhbsO9Y2ggc3BvdcWhdMSbxI3FryDigJ4lLjI1NXPigJwiCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzo1MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBzb3VyY2UgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAibmVsemUgdm9sYXQgc3RhdCBuYSB6ZHJvam92w70gc291Ym9yIOKAniUuMjUwc+KAnCIKKworIzogbGliL2Rwa2cvZmlsZS5jOjU1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGFuZ2Ugb3duZXJzaGlwIG9mIHRhcmdldCBmaWxlICclLjI1MHMnIgorbXNnc3RyICJuZWx6ZSB6bcSbbml0IHZsYXN0bsOta2EgY8OtbG92w6lobyBzb3Vib3J1IOKAniUuMjUwc+KAnCIKKworIzogbGliL2Rwa2cvZmlsZS5jOjU5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgbW9kZSBvZiB0YXJnZXQgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAibmVsemUgbmFzdGF2aXQgbcOzZCBjw61sb3bDqWhvIHNvdWJvcnUg4oCeJS4yNTBz4oCcIgorCisjOiBsaWIvZHBrZy9maWxlLmM6ODUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byB1bmxvY2sgJXM6ICVzIgorbXNnaWQgInVuYWJsZSB0byB1bmxvY2sgJXMiCittc2dzdHIgIm5lbHplIG9kZW1rbm91dCAlczogJXMiCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzoxMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoZWNrIGZpbGUgJyVzJyBsb2NrIHN0YXR1cyIKK21zZ3N0ciAibmVsemUgemtvbnRyb2xvdmF0IHN0YXYgesOhbWt1IHNvdWJvcnUg4oCeJXPigJwiCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzoxNDYKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInN0YXR1cyBkYXRhYmFzZSBhcmVhIGlzIGxvY2tlZCBieSBhbm90aGVyIHByb2Nlc3MiCittc2dpZCAiJXMgaXMgbG9ja2VkIGJ5IGFub3RoZXIgcHJvY2VzcyIKK21zZ3N0ciAic3Rhdm92w6EgZGF0YWLDoXplIGplIHV6YW3EjWVuYSBkYWzFocOtbSBwcm9jZXNlbSIKKworIzogbGliL2Rwa2cvZmlsZS5jOjE0OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHVubG9jayAlczogJXMiCittc2dpZCAidW5hYmxlIHRvIGxvY2sgJXMiCittc2dzdHIgIm5lbHplIG9kZW1rbm91dCAlczogJXMiCisKKyM6IGxpYi9kcGtnL2xvZy5jOjUzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkbid0IG9wZW4gbG9nIGAlcyc6ICVzXG4iCittc2dzdHIgIm5lbHplIG90ZXbFmcOtdCBsb2cg4oCeJXPigJw6ICVzXG4iCisKKyM6IGxpYi9kcGtnL2xvZy5jOjg1Cittc2dpZCAiPHBhY2thZ2Ugc3RhdHVzIGFuZCBwcm9ncmVzcyBmaWxlIGRlc2NyaXB0b3I+IgorbXNnc3RyICI8cG9waXNvdmHEjSBzb3Vib3J1IHN0YXZ1IGJhbMOta3UgYSB1a2F6YXRlbGUgcG9zdHVwdT4iCisKKyM6IGxpYi9kcGtnL2xvZy5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgdG8gc3RhdHVzIGZkICVkIgorbXNnc3RyICJuZWx6ZSB6YXBzYXQgZG8gcG9waXNvdmHEjWUgc291Ym9ydSAlZCIKKworIzogbGliL2Rwa2cvbWxpYi5jOjQ0IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInJlYWxsb2MgZmFpbGVkICglenUgYnl0ZXMpIgorbXNnaWQgIm1hbGxvYyBmYWlsZWQgKCV6dSBieXRlcykiCittc2dzdHIgInJlYWxsb2Mgc2VsaGFsICglenUgYmFqdMWvKSIKKworIzogbGliL2Rwa2cvbWxpYi5jOjU4CisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWxsb2MgZmFpbGVkICglenUgYnl0ZXMpIgorbXNnc3RyICJyZWFsbG9jIHNlbGhhbCAoJXp1IGJhanTFrykiCisKKyM6IGxpYi9kcGtnL21saWIuYzo3MiBsaWIvZHBrZy9tbGliLmM6OTAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI3NworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjMzNCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTEwNworbXNnaWQgImZhaWxlZCB0byBhbGxvY2F0ZSBtZW1vcnkiCittc2dzdHIgInNlbGhhbGEgYWxva2FjZSBwYW3Em3RpIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBkdXAgZm9yIHN0ZCVzIgorbXNnc3RyICJkdXAgc2VsaGFsIHBybyBzdGQlcyIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEwMworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZHVwIGZvciBmZCAlZCIKK21zZ3N0ciAiZHVwIHNlbGhhbCBwcm8gZmQgJWQiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMDkKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHBpcGUiCittc2dzdHIgIm5lbHplIHZ5dHZvxZlpdCByb3VydSIKKworIzogbGliL2Rwa2cvbWxpYi5jOjExNworIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciB3cml0aW5nIHRvICclcyciCittc2dzdHIgImNoeWJhIHDFmWkgesOhcGlzdSBkbyDigJ4lc+KAnCIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBmaWxlZGVzY3JpcHRvciBmbGFncyBmb3IgJS4yNTBzIgorbXNnc3RyICJuZWx6ZSBwxZllxI3DrXN0IHDFmcOtem5ha3kgcG9waXNvdmHEjWUgc291Ym9ydSBwcm8g4oCeJS4yNTBz4oCcIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTI2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgY2xvc2Utb24tZXhlYyBmbGFnIGZvciAlLjI1MHMiCittc2dzdHIgIm5lbHplIG5hc3Rhdml0IHDFmcOtem5hayB6YXbFmcOtdC1wxZlpLXNwdcWhdMSbbsOtIHBybyDigJ4lLjI1MHPigJwiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzo2MworIywgYy1mb3JtYXQKK21zZ2lkICJjb25maWd1cmF0aW9uIGVycm9yOiAlczolZDogJXMiCittc2dzdHIgImNoeWJhIGtvbmZpZ3VyYWNlOiAlczolZDogJXMiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzo3NQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiBjb25maWd1cmF0aW9uIGZpbGUgJyUuMjU1cycgZm9yIHJlYWRpbmc6ICVzIgorbXNnc3RyICJzZWxoYWxvIG90ZXbFmWVuw60ga29uZmlndXJhxI1uw61obyBzb3Vib3J1IOKAniUuMjU1c+KAnCBwcm8gxI10ZW7DrTogJXMiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5iYWxhbmNlZCBxdW90ZXMgaW4gJyVzJyIKK21zZ3N0ciAibmV2eXDDoXJvdmFuw6kgdXZvem92a3kgdiDigJ4lc+KAnCIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjExNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiAnJXMnIgorbXNnc3RyICJuZXpuw6Ftw6Egdm9sYmEg4oCeJXPigJwiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBuZWVkcyBhIHZhbHVlIgorbXNnc3RyICLigJ4lc+KAnCB2ecW+YWR1amUgaG9kbm90dSIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjEyNworIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGRvZXMgbm90IHRha2UgYSB2YWx1ZSIKK21zZ3N0ciAi4oCeJXPigJwgbXVzw60gYsO9dCB6YWTDoW4gYmV6IGFyZ3VtZW50dSIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjEzMworIywgYy1mb3JtYXQKK21zZ2lkICJyZWFkIGVycm9yIGluIGNvbmZpZ3VyYXRpb24gZmlsZSBgJS4yNTVzJyIKK21zZ3N0ciAiY2h5YmEgcMWZaSDEjXRlbsOtIGtvbmZpZ3VyYcSNbsOtaG8gc291Ym9ydSDigJ4lLjI1NXPigJwiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyBjb25maWd1cmF0aW9uIGZpbGUgYCUuMjU1cyciCittc2dzdHIgImNoeWJhIHDFmWkgemF2w61yw6Fuw60ga29uZmlndXJhxI1uw61obyBzb3Vib3J1IOKAniUuMjU1c+KAnCIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjE3MAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBvcGVuaW5nIGNvbmZpZ3VyYXRpb24gZGlyZWN0b3J5ICclcyciCittc2dzdHIgImNoeWJhIHDFmWkgb3RldsOtcsOhbsOtIGtvbmZpZ3VyYcSNbsOtaG8gYWRyZXPDocWZZSDigJ4lc+KAnCIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjIyOAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiAtLSVzIgorbXNnc3RyICJuZXpuw6Ftw70gcMWZZXDDrW5hxI0gLS0lcyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjIzMgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG9wdGlvbiB0YWtlcyBhIHZhbHVlIgorbXNnc3RyICJwxZllcMOtbmHEjSAtLSVzIHZ5xb5hZHVqZSBhcmd1bWVudCIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjIzNworIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG9wdGlvbiBkb2VzIG5vdCB0YWtlIGEgdmFsdWUiCittc2dzdHIgInDFmWVww61uYcSNIC0tJXMgbXVzw60gYsO9dCB6YWTDoW4gYmV6IGFyZ3VtZW50dSIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI0NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiAtJWMiCittc2dzdHIgIm5lem7DoW3DvSBwxZllcMOtbmHEjSAtJWMiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLSVjIG9wdGlvbiB0YWtlcyBhIHZhbHVlIgorbXNnc3RyICJwxZllcMOtbmHEjSAtJWMgdnnFvmFkdWplIGFyZ3VtZW50IgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjU4CisjLCBjLWZvcm1hdAorbXNnaWQgIi0lYyBvcHRpb24gZG9lcyBub3QgdGFrZSBhIHZhbHVlIgorbXNnc3RyICJwxZllcMOtbmHEjSAtJWMgbXVzw60gYsO9dCB6YWTDoW4gYmV6IGFyZ3VtZW50dSIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI3MQorIywgYy1mb3JtYXQKK21zZ2lkICJvYnNvbGV0ZSBvcHRpb24gJy0tJXMnXG4iCittc2dzdHIgInphc3RhcmFsw6Egdm9sYmEgYC0tJXMnXG4iCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmxpY3RpbmcgYWN0aW9ucyAtJWMgKC0tJXMpIGFuZCAtJWMgKC0tJXMpIgorbXNnc3RyICJvZHBvcnVqw61jw60gc2kgYWtjZSAtJWMgKC0tJXMpIGEgLSVjICgtLSVzKSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHZhbHVlIGZvciBgJXMnIGZpZWxkIgorbXNnc3RyICJ6ZHZvamVuw6EgaG9kbm90YSBwb2xvxb5reSDigJ4lc+KAnCIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoxNDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidXNlci1kZWZpbmVkIGZpZWxkIG5hbWUgYCUuKnMnIHRvbyBzaG9ydCIKK21zZ3N0ciAiam3DqW5vIHXFvml2YXRlbGVtIGRlZmlub3ZhbsOpIHBvbG/Fvmt5IOKAniUuKnPigJwgcMWZw61sacWhIGtyw6F0a8OpIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgdmFsdWUgZm9yIHVzZXItZGVmaW5lZCBmaWVsZCBgJS4qcyciCittc2dzdHIgInpkdm9qZW7DoSBob2Rub3RhIHXFvml2YXRlbGVtIGRlZmlub3ZhbsOpIHBvbG/Fvmt5IOKAniUuKnPigJwiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjA3Cittc2dpZCAiQ29uZmlndXJlZC1WZXJzaW9uIGZvciBwYWNrYWdlIHdpdGggaW5hcHByb3ByaWF0ZSBTdGF0dXMiCittc2dzdHIgIkNvbmZpZ3VyZWQtVmVyc2lvbiBwcm8gYmFsw61rIHMgbmVvZHBvdsOtZGFqw61jw61tIFN0YXZlbSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzICVzIGJ1dCB0cmlnZ2VycyBhcmUgYXdhaXRlZCIKK21zZ3N0ciAiYmFsw61rIGplIHZlIHN0YXZ1ICVzLCBhbGUgb8SNZWvDoXZhasOtIHNlIHNwb3XFoXTEm8SNZSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMjIKK21zZ2lkICJwYWNrYWdlIGhhcyBzdGF0dXMgdHJpZ2dlcnMtYXdhaXRlZCBidXQgbm8gdHJpZ2dlcnMgYXdhaXRlZCIKK21zZ3N0ciAiIgorImJhbMOtayBqZSB2ZSBzdGF2dSDigJ7EjWVrw6Fuw60gbmEgc3BvdcWhdMSbxI1l4oCcLCBhbGUgxb7DoWRuw6kgc3BvdcWhdMSbxI1lIG5lanNvdSBvxI1la8OhdsOhbnkiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjI4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgaGFzIHN0YXR1cyAlcyBidXQgdHJpZ2dlcnMgYXJlIHBlbmRpbmciCittc2dzdHIgImJhbMOtayBqZSB2ZSBzdGF2dSAlcywgYWxlIHNwb3XFoXTEm8SNZSB6YXTDrW0gbmVqc291IHZ5xZnDrXplbsOpIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjIzMgorbXNnaWQgInBhY2thZ2UgaGFzIHN0YXR1cyB0cmlnZ2Vycy1wZW5kaW5nIGJ1dCBubyB0cmlnZ2VycyBwZW5kaW5nIgorbXNnc3RyICIiCisiYmFsw61rIGplIHZlIHN0YXZ1IOKAnm5ldnnFmcOtemVuw6kgc3BvdcWhdMSbxI1l4oCcLCBhbGUgdsWhZWNobnkgc3BvdcWhdMSbxI1lIGpzb3UgdnnFmcOtemVueSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyNDIKK21zZ2lkICJQYWNrYWdlIHdoaWNoIGluIHN0YXRlIG5vdC1pbnN0YWxsZWQgaGFzIGNvbmZmaWxlcywgZm9yZ2V0dGluZyB0aGVtIgorbXNnc3RyICIiCisiQmFsw61rIGplIHZlIHN0YXZ1IG5lbmFpbnN0YWxvdmFuw70gYSBtw6Ega29uZmlndXJhxI1uw60gc291Ym9yeSwgdnlwb3XFoXTDrW0gamUiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzM1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuIHBhY2thZ2UgaW5mbyBmaWxlIGAlLjI1NXMnIGZvciByZWFkaW5nIgorbXNnc3RyICJuZWx6ZSBvdGV2xZnDrXQgc291Ym9yIOKAniUuMjU1c+KAnCBzIGluZm9ybWFjZW1pIG8gYmFsw61rdSBwcm8gxI10ZW7DrSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozNDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2FuJ3Qgc3RhdCBwYWNrYWdlIGluZm8gZmlsZSBgJS4yNTVzJyIKK21zZ3N0ciAibmVmdW5ndWplIHZvbMOhbsOtIGZzdGF0IG5hIGluZm8gc291Ym9yIOKAniUuMjU1c+KAnCIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2FuJ3QgbW1hcCBwYWNrYWdlIGluZm8gZmlsZSBgJS4yNTVzJyIKK21zZ3N0ciAibmVmdW5ndWplIHZvbMOhbsOtIG1tYXAgbmEgaW5mbyBzb3Vib3Ig4oCeJS4yNTVz4oCcIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjM1MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiY2FuJ3Qgc3RhdCBwYWNrYWdlIGluZm8gZmlsZSBgJS4yNTVzJyIKK21zZ2lkICJyZWFkaW5nIHBhY2thZ2UgaW5mbyBmaWxlICclLjI1NXMnIgorbXNnc3RyICJuZWZ1bmd1amUgdm9sw6Fuw60gZnN0YXQgbmEgaW5mbyBzb3Vib3Ig4oCeJS4yNTVz4oCcIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjM2MworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2xvc2UgYWZ0ZXIgcmVhZDogYCUuMjU1cyciCittc2dzdHIgInBvIMSNdGVuw60gemFwb21uxJtsIHphdsWZw610OiDigJ4lLjI1NXPigJwiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDA0CisjLCBjLWZvcm1hdAorbXNnaWQgIkVPRiBhZnRlciBmaWVsZCBuYW1lIGAlLipzJyIKK21zZ3N0ciAia29uZWMgc291Ym9ydSB6YSBwb2xvxb5rb3Ug4oCeJS4qc+KAnCIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MDcKKyMsIGMtZm9ybWF0Cittc2dpZCAibmV3bGluZSBpbiBmaWVsZCBuYW1lIGAlLipzJyIKK21zZ3N0ciAibm92w70gxZnDoWRlayB2IHBvbG/FvmNlIOKAniUuKnPigJwiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDEwCisjLCBjLWZvcm1hdAorbXNnaWQgIk1TRE9TIEVPRiAoXlopIGluIGZpZWxkIG5hbWUgYCUuKnMnIgorbXNnc3RyICJNUy1ET1MgRU9GICheWikgdmUgcG9sb8W+Y2Ug4oCeJS4qc+KAnCIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmllbGQgbmFtZSBgJS4qcycgbXVzdCBiZSBmb2xsb3dlZCBieSBjb2xvbiIKK21zZ3N0ciAiam3DqW5vIHBvbG/Fvmt5IOKAniUuKnPigJwgbXVzw60gYsO9dCBuw6FzbGVkb3bDoW5vIGR2b2p0ZcSNa291IgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQyNQorIywgYy1mb3JtYXQKK21zZ2lkICJFT0YgYmVmb3JlIHZhbHVlIG9mIGZpZWxkIGAlLipzJyAobWlzc2luZyBmaW5hbCBuZXdsaW5lKSIKK21zZ3N0ciAiRU9GIHDFmWVkIGhvZG5vdG91IHYgcG9sb8W+Y2Ug4oCeJS4qc+KAnCAoY2h5YsOtIHrDoXbEm3JlxI1uw70ga29uZWMgxZnDoWRrdSkiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDI5CisjLCBjLWZvcm1hdAorbXNnaWQgIk1TRE9TIEVPRiBjaGFyIGluIHZhbHVlIG9mIGZpZWxkIGAlLipzJyAobWlzc2luZyBuZXdsaW5lPykiCittc2dzdHIgInBvbG/FvmthIOKAniUuKnPigJwgb2JzYWh1amUgTVNET1MgRU9GIHpuYWt5IChjaHlixJtqw61jw60gbm92w70gxZnDoWRlaz8pIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQ0MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAibmV3bGluZSBpbiBmaWVsZCBuYW1lIGAlLipzJyIKK21zZ2lkICJibGFuayBsaW5lIGluIHZhbHVlIG9mIGZpZWxkICclLipzJyIKK21zZ3N0ciAibm92w70gxZnDoWRlayB2IHBvbG/FvmNlIOKAniUuKnPigJwiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDYxCisjLCBjLWZvcm1hdAorbXNnaWQgIkVPRiBkdXJpbmcgdmFsdWUgb2YgZmllbGQgYCUuKnMnIChtaXNzaW5nIGZpbmFsIG5ld2xpbmUpIgorbXNnc3RyICJFT0YgcMWZaSDEjXRlbsOtIHBvbG/Fvmt5IOKAniUuKnPigJwgKGNoeWLEm2rDrWPDrSB6w6F2xJtyZcSNbsO9IGtvbmVjIMWZw6Fka3UpIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjU0NgorbXNnaWQgInNldmVyYWwgcGFja2FnZSBpbmZvIGVudHJpZXMgZm91bmQsIG9ubHkgb25lIGFsbG93ZWQiCittc2dzdHIgIm5hbGV6ZW5vIG7Em2tvbGlrIGluZm8gcG9sb8W+ZWsgYmFsw61rdSwgZG92b2xlbmEgcG91emUgamVkbmEiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NTcyCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHBhY2thZ2UgaW5mb3JtYXRpb24gaW4gYCUuMjU1cyciCittc2dzdHIgIsW+w6FkbsOhIGluZm9ybWFjZSBvIGJhbMOta3UgdiDigJ4lLjI1NXPigJwiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjQ1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiJXMsIGluIGZpbGUgJyUuMjU1cycgbmVhciBsaW5lICVkIHBhY2thZ2UgJyUuMjU1cyc6XG4iCisjfCAiICIKK21zZ2lkICIiCisicGFyc2luZyBmaWxlICclLjI1NXMnIG5lYXIgbGluZSAlZCBwYWNrYWdlICclLjI1NXMnOlxuIgorIiAlLjI1NXMiCittc2dzdHIgIiIKKyIlcywgdiBzb3Vib3J1IOKAniUuMjU1c+KAnCBva29sbyDFmcOhZGt1ICVkLCBiYWzDrWsg4oCeJS4yNTVz4oCcOlxuIgorIiAiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjQ4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiJXMsIGluIGZpbGUgJyUuMjU1cycgbmVhciBsaW5lICVkOlxuIgorI3wgIiAiCittc2dpZCAiIgorInBhcnNpbmcgZmlsZSAnJS4yNTVzJyBuZWFyIGxpbmUgJWQ6XG4iCisiICUuMjU1cyIKK21zZ3N0ciAiIgorIiVzLCB2IHNvdWJvcnUg4oCeJS4yNTVz4oCcIG9rb2xvIMWZw6Fka3UgJWQ6XG4iCisiICIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MTI1Cittc2dpZCAibWF5IG5vdCBiZSBlbXB0eSBzdHJpbmciCittc2dzdHIgIm5lc23DrSBiw710IHByw6F6ZG7DvSDFmWV0xJt6ZWMiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjEyNworIywgZnV6enkKKyN8IG1zZ2lkICJtdXN0IHN0YXJ0IHdpdGggYW4gYWxwaGFudW1lcmljIgorbXNnaWQgIm11c3Qgc3RhcnQgd2l0aCBhbiBhbHBoYW51bWVyaWMgY2hhcmFjdGVyIgorbXNnc3RyICJtdXPDrSB6YcSNw61uYXQgcMOtc21lbmVtIG5lYm8gxI3DrXNsaWPDrSIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MTM2CisjLCBjLWZvcm1hdAorbXNnaWQgImNoYXJhY3RlciBgJWMnIG5vdCBhbGxvd2VkIChvbmx5IGxldHRlcnMsIGRpZ2l0cyBhbmQgY2hhcmFjdGVycyBgJXMnKSIKK21zZ3N0ciAiIgorInpuYWsg4oCeJWPigJwgbmVuw60gcG92b2xlbiAtIHBvdm9sZW5hIGpzb3UgcG91emUgcMOtc21lbmEsIMSNw61zbGEgYSB6bmFreSDigJ4lc+KAnCIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MTc4CisjLCBmdXp6eQorI3wgbXNnaWQgIjxub25lPiIKK21zZ2N0eHQgInZlcnNpb24iCittc2dpZCAiPG5vbmU+IgorbXNnc3RyICI8xb7DoWRuw6E+IgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyMDkKK21zZ2lkICJ2ZXJzaW9uIHN0cmluZyBpcyBlbXB0eSIKK21zZ3N0ciAicHLDoXpkbsOhIHZlcnplIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyMjQKK21zZ2lkICJ2ZXJzaW9uIHN0cmluZyBoYXMgZW1iZWRkZWQgc3BhY2VzIgorbXNnc3RyICJ2ZXJ6ZSBvYnNhaHVqZSBtZXplcnkiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjIzMAorbXNnaWQgImVwb2NoIGluIHZlcnNpb24gaXMgbm90IG51bWJlciIKK21zZ3N0ciAiZXBvY2hhIHZlIHZlcnppIG5lbsOtIMSNw61zbG8iCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjIzMgorbXNnaWQgIm5vdGhpbmcgYWZ0ZXIgY29sb24gaW4gdmVyc2lvbiBudW1iZXIiCittc2dzdHIgInphIGR2b2p0ZcSNa291IHZlIHZlcnppIG5pYyBuZW7DoXNsZWR1amUiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjI0NworbXNnaWQgInZlcnNpb24gbnVtYmVyIGRvZXMgbm90IHN0YXJ0IHdpdGggZGlnaXQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjUwCittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgaW4gdmVyc2lvbiBudW1iZXIiCittc2dzdHIgIm5lcGxhdG7DvSB6bmFrIHYgxI3DrXNsdSB2ZXJ6ZSIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjU0Cittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgaW4gcmV2aXNpb24gbnVtYmVyIgorbXNnc3RyICJuZXBsYXRuw70gem5hayB2IMSNw61zbHUgcmV2aXplIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyOTkgbGliL2Rwa2cvcGFyc2VoZWxwLmM6MzExCisjLCBjLWZvcm1hdAorbXNnaWQgIm1pc3NpbmcgJXMiCittc2dzdHIgImNoeWLDrSAlcyIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MzAxIGxpYi9kcGtnL3BhcnNlaGVscC5jOjMxNAorIywgYy1mb3JtYXQKK21zZ2lkICJlbXB0eSB2YWx1ZSBmb3IgJXMiCittc2dzdHIgInBvbG/FvmthIGAlcycgamUgcHLDoXpkbsOhIgorCisjOiBsaWIvZHBrZy9wa2ctZm9ybWF0LmM6ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgYCVjJyBpbiBmaWVsZCB3aWR0aFxuIgorbXNnc3RyICLFocOtxZlrYSBwb2xvxb5reSBvYnNhaHVqZSBuZXBsYXRuw70gem5hayDigJ4lY+KAnFxuIgorCisjOiBsaWIvZHBrZy9wa2ctZm9ybWF0LmM6MTcyCisjLCBjLWZvcm1hdAorbXNnaWQgIkNsb3NpbmcgYnJhY2UgbWlzc2luZyBpbiBmb3JtYXRcbiIKK21zZ3N0ciAiVmUgZm9ybcOhdHUgY2h5YsOtIHV6YXbDrXJhY8OtIHrDoXZvcmthXG4iCisKKyM6IGxpYi9kcGtnL3BrZy1zaG93LmM6NDAKK21zZ2lkICIobm8gZGVzY3JpcHRpb24gYXZhaWxhYmxlKSIKK21zZ3N0ciAiKHBvcGlzIG5lbsOtIGsgZGlzcG96aWNpKSIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjU1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpZ25vcmUgc2lnbmFsICVzIGJlZm9yZSBydW5uaW5nICUuMjUwcyIKK21zZ3N0ciAibmVsemUgaWdub3JvdmF0IHNpZ27DoWwgJXMgcMWZZWQgc3B1xaF0xJtuw61tICUuMjUwcyIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjY4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHVuLWNhdGNoaW5nIHNpZ25hbCAlczogJXNcbiIKK21zZ3N0ciAiY2h5YmEgcMWZaSBvZGJsb2tvdsOhbsOtIHNpZ27DoWx1ICVzOiAlc1xuIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgKHN1YnByb2Nlc3MpOiAlc1xuIgorbXNnc3RyICIlcyAocG9kcHJvY2VzKTogJXNcbiIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjg5IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo0NTQKK21zZ2lkICJmb3JrIGZhaWxlZCIKK21zZ3N0ciAiZm9yayBzZWxoYWwiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMTkKKyMsIGMtZm9ybWF0Cittc2dpZCAic3VicHJvY2VzcyAlcyByZXR1cm5lZCBlcnJvciBleGl0IHN0YXR1cyAlZCIKK21zZ3N0ciAicG9kcHJvY2VzICVzIHZyw6F0aWwgY2h5Ym92w70gc3RhdHVzICVkIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTI4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ3YWl0IGZvciBzdWJwcm9jZXNzICVzIGZhaWxlZCIKK21zZ2lkICJzdWJwcm9jZXNzICVzIHdhcyBpbnRlcnJ1cHRlZCIKK21zZ3N0ciAixI1la8OhbsOtIG5hIHBvZHByb2NlcyAlcyBzZWxoYWxvIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTMwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJzdWJwcm9jZXNzICVzIGtpbGxlZCBieSBzaWduYWwgKCVzKSVzIgorbXNnaWQgInN1YnByb2Nlc3MgJXMgd2FzIGtpbGxlZCBieSBzaWduYWwgKCVzKSVzIgorbXNnc3RyICJwb2Rwcm9jZXMgJXMgYnlsIHphYml0IHNpZ27DoWxlbSAoJXMpJXMiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMzIKK21zZ2lkICIsIGNvcmUgZHVtcGVkIgorbXNnc3RyICIsIGNvcmUgZHVtcGVkIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgInN1YnByb2Nlc3MgJXMgZmFpbGVkIHdpdGggd2FpdCBzdGF0dXMgY29kZSAlZCIKK21zZ3N0ciAicG9kcHJvY2VzICVzIHZyw6F0aWwgxI1la2Fjw60gY2h5Ym92w70gc3RhdHVzICVkIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTUxIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo0NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAid2FpdCBmb3Igc3VicHJvY2VzcyAlcyBmYWlsZWQiCittc2dzdHIgIsSNZWvDoW7DrSBuYSBwb2Rwcm9jZXMgJXMgc2VsaGFsbyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBwYWNrYWdlIG5hbWUgYCUuMjUwcycgaW4gdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorIm5lcGxhdG7DqSBqbcOpbm8gYmFsw61rdSDigJ4lLjI1MHPigJwgdiBzb3Vib3J1IHMgb2Rsb8W+ZW7DvW1pIHNwb3XFoXTEm8SNaSDigJ4lLjI1MHPigJwiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjgxCisjLCBjLWZvcm1hdAorbXNnaWQgInRydW5jYXRlZCB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJvxZnDrXpudXTDvSBzb3Vib3IgcyBvZGxvxb5lbsO9bWkgc3BvdcWhdMSbxI1pIOKAniUuMjUwc+KAnCIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yIGluIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcycgYXQgY2hhcmFjdGVyIGAlcyclcyIKK21zZ3N0ciAiIgorInN5bnRha3RpY2vDoSBjaHliYSB2IHNvdWJvcnUgcyBvZGxvxb5lbsO9bWkgc3BvdcWhdMSbxI1pIOKAniUuMjUwc+KAnCBuYSB6bmFrdSDigJ4lc+KAnCVzIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4vY3JlYXRlIHRyaWdnZXJzIGxvY2tmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuZWx6ZSBvdGV2xZnDrXQvdnl0dm/FmWl0IHrDoW1layBwcm8gc3BvdcWhdMSbxI1lICglLjI1MHMpIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNDEKKyMsIGZ1enp5CisjfCBtc2dpZCAidHJpZ2dlcmVkIgorbXNnaWQgInRyaWdnZXJzIGFyZWEiCittc2dzdHIgInNwb3XFoXTEm8SNIGFrdGl2b3bDoW4iCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjE1MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuZWx6ZSB6YXZvbGF0IHN0YXQgbmEgc291Ym9yIHMgb2Rsb8W+ZW7DvW1pIHNwb3XFoXTEm8SNaSDigJ4lLjI1MHPigJwiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjE2NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuZWx6ZSBvdGV2xZnDrXQgc291Ym9yIHMgb2Rsb8W+ZW7DvW1pIHNwb3XFoXTEm8SNaSDigJ4lLjI1MHPigJwiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjE3OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3Blbi9jcmVhdGUgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5lbHplIG90ZXbFmcOtdC92eXR2b8WZaXQgbm92w70gc291Ym9yIHMgb2Rsb8W+ZW7DvW1pIHNwb3XFoXTEm8SNaSDigJ4lLjI1MHPigJwiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjIxNQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciByZWFkaW5nIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImNoeWJhIHDFmWkgxI10ZW7DrSBzb3Vib3J1IHMgb2Rsb8W+ZW7DvW1pIHNwb3XFoXTEm8SNaSDigJ4lLjI1MHPigJwiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjIyMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5lbHplIHphcHNhdCBub3bDvSBzb3Vib3IgcyBvZGxvxb5lbsO9bWkgc3BvdcWhdMSbxI1pIOKAniUuMjUwc+KAnCIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MjI4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmVsemUgemF2xZnDrXQgbm92w70gc291Ym9yIHMgb2Rsb8W+ZW7DvW1pIHNwb3XFoXTEm8SNaSDigJ4lLjI1MHPigJwiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjIzMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmVsemUgbmFpbnN0YWxvdmF0IG5vdm91IHZlcnppIHNvdWJvcnUgcyBvZGxvxb5lbsO9bWkgc3BvdcWhdMSbxI1pIOKAniUuMjUwc+KAnCIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjIyMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiaW52YWxpZCBvciB1bmtub3duIHN5bnRheCBpbiB0cmlnZ2VyIG5hbWUgYCUuMjUwcycgKGluIHRyaWdnZXIgaW50ZXJlc3RzIGZvciAiCisicGFja2FnZSBgJS4yNTBzJykiCittc2dzdHIgIiIKKyJuZXBsYXRuw6EgbmVibyBuZXpuw6Ftw6Egc3ludGF4ZSB2IG7DoXp2dSBzcG91xaF0xJvEjWUg4oCeJS4yNTBz4oCcICh2IHNlem5hbXUgIgorInphasOtbWF2w71jaCBzcG91xaF0xJvEjcWvIGJhbMOta3Ug4oCeJS4yNTBz4oCcKSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjI2MworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiB0cmlnZ2VyIGludGVyZXN0IGxpc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmVsemUgb3RldsWZw610IHNvdWJvciBzZSBzZXpuYW1lbSB6YWrDrW1hdsO9Y2ggc3BvdcWhdMSbxI3FryDigJ4lLjI1MHPigJwiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzoyOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJld2luZCB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgInNlbGhhbG8gcMWZZXN1bnV0w60gdiBzb3Vib3J1IHNlIHphasOtbWF2w71taSBzcG91xaF0xJvEjWkg4oCeJS4yNTBz4oCcIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzA1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcycgc3ludGF4IGVycm9yOyBpbGxlZ2FsIHBhY2thZ2UgbmFtZSBgJS4yNTBzJzogIgorIiUuMjUwcyIKK21zZ3N0ciAiIgorImNoeWJuw6Egc3ludGF4ZSB2IHNvdWJvcnUgc2UgemFqw61tYXbDvW1pIHNwb3XFoXTEm8SNaSDigJ4lLjI1MHPigJw7IG5lcGxhdG7DqSBqbcOpbm8gIgorImJhbMOta3Ug4oCeJS4yNTBz4oCcOiAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5lbHplIHphcHNhdCBub3bDvSBzb3Vib3Igc2UgemFqw61tYXbDvW1pIHNwb3XFoXTEm8SNaSDigJ4lLjI1MHPigJwiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMjEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgIm5lbHplIHZ5cHLDoXpkbml0IG5vdsO9IHNvdWJvciBzZSB6YWrDrW1hdsO9bWkgc3BvdcWhdMSbxI1pIOKAniUuMjUwc+KAnCIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMyNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlICclLjI1MHMnIgorbXNnc3RyICJuZWx6ZSBzeW5jaHJvbml6b3ZhdCBub3bDvSBzb3Vib3Igc2UgemFqw61tYXbDvW1pIHNwb3XFoXTEm8SNaSDigJ4lLjI1MHPigJwiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmVsemUgbmFpbnN0YWxvdmF0IG5vdm91IHZlcnppIHNvdWJvcnUgc2UgemFqw61tYXbDvW1pIHNwb3XFoXTEm8SNaeKAniUuMjUwc+KAnCIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjM0MCBsaWIvZHBrZy90cmlnbGliLmM6MzQyIGxpYi9kcGtnL3RyaWdsaWIuYzo0NzIKKyM6IHNyYy9yZW1vdmUuYzoyODYgc3JjL3JlbW92ZS5jOjM3NworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVtb3ZlIGAlLjI1MHMnIgorbXNnc3RyICJuZWx6ZSBvZHN0cmFuaXQg4oCeJS4yNTBz4oCcIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzYwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmVsemUgdnl0dm/FmWl0IG5vdsO9IHNvdWJvciBzZSB6YWrDrW1hdsO9bWkgc3BvdcWhdMSbxI1pIOKAniUuMjUwc+KAnCIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjM4MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmVsemUgemF2xZnDrXQgbm92w70gc291Ym9yIHNlIHphasOtbWF2w71taSBzcG91xaF0xJvEjWkg4oCeJS4yNTBz4oCcIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDU2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkdXBsaWNhdGUgZmlsZSB0cmlnZ2VyIGludGVyZXN0IGZvciBmaWxlbmFtZSBgJS4yNTBzJyBhbmQgcGFja2FnZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorImR1cGxpY2l0bsOtIHphasOtbWF2w70gc291Ym9yb3bDvSBzcG91xaF0xJvEjSBwcm8gam3DqW5vIHNvdWJvcnUg4oCeJS4yNTBz4oCcIGEgYmFsw61rICIKKyLigJ4lLjI1MHPigJwiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuZWx6ZSB2eXR2b8WZaXQgbm92w70gc291Ym9yIHNlIHNvdWJvcm92w71taSBzcG91xaF0xJvEjWkg4oCeJS4yNTBz4oCcIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDkzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuZWx6ZSB6YXBzYXQgbm92w70gc291Ym9yIHNlIHNvdWJvcm92w71taSBzcG91xaF0xJvEjWkg4oCeJS4yNTBz4oCcIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDk2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlICclLjI1MHMnIgorbXNnc3RyICJuZWx6ZSB2eXByw6F6ZG5pdCBub3bDvSBzb3Vib3Igc2Ugc291Ym9yb3bDvW1pIHNwb3XFoXTEm8SNaSDigJ4lLjI1MHPigJwiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0OTkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAibmVsemUgc3luY2hyb25pem92YXQgbm92w70gc291Ym9yIHNlIHNvdWJvcm92w71taSBzcG91xaF0xJvEjWkg4oCeJS4yNTBz4oCcIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTAzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuZWx6ZSB6YXbFmcOtdCBub3bDvSBzb3Vib3Igc2Ugc291Ym9yb3bDvW1pIHNwb3XFoXTEm8SNaSDigJ4lLjI1MHPigJwiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1MDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSBhcyBgJS4yNTBzJyIKK21zZ3N0ciAibmVsemUgaW5zdGFsb3ZhdCBub3bDvSBzb3Vib3Igc2Ugc291Ym9yb3bDvW1pIHNwb3XFoXTEm8SNaSBqYWtvIOKAniUuMjUwc+KAnCIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjU0MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5lbHplIHDFmWXEjcOtc3Qgc291Ym9yIHNlIHNvdWJvcm92w71taSBzcG91xaF0xJvEjWkg4oCeJS4yNTBz4oCcIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTUyCisjLCBjLWZvcm1hdAorbXNnaWQgInN5bnRheCBlcnJvciBpbiBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgInN5bnRha3RpY2vDoSBjaHliYSB2IHNvdWJvcnUgc2Ugc291Ym9yb3bDvW1pIHNwb3XFoXTEm8SNaSDigJ4lLjI1MHPigJwiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImZpbGUgdHJpZ2dlcnMgcmVjb3JkIG1lbnRpb25zIGlsbGVnYWwgcGFja2FnZSBuYW1lIGAlLjI1MHMnIChmb3IgaW50ZXJlc3QgaW4gIgorImZpbGUgYCUuMjUwcycpOiAlLjI1MHMiCittc2dzdHIgIiIKKyJ6w6F6bmFtIHNvdWJvcm92w6lobyBzcG91xaF0xJvEjWUgb2JzYWh1amUgbmVwbGF0bsOpIGptw6lubyBiYWzDrWt1IOKAniUuMjUwc+KAnCAoc2UgIgorInrDoWptZW0gbmEgc291Ym9ydSDigJ4lLjI1MHPigJwpOiAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo2NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInRyaWdnZXJzIGNpIGZpbGUgYCUuMjUwcycgY29udGFpbnMgaWxsZWdhbCB0cmlnZ2VyIHN5bnRheCBpbiB0cmlnZ2VyIG5hbWUgYCIKKyIlLjI1MHMnOiAlLjI1MHMiCittc2dzdHIgIiIKKyJjaSBzb3Vib3IgcHJvIHNwb3XFoXTEm8SNZSDigJ4lLjI1MHPigJwgb2JzYWh1amUgbmVwbGF0bm91IHN5bnRheGkgdmUgam3DqW7EmyAiCisic3BvdcWhdMSbxI1lIOKAniUuMjUwc+KAnDogJS4yNTBzIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Njg0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIHRyaWdnZXJzIGNpIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5lbHplIG90ZXbFmcOtdCBjaSBzb3Vib3IgcHJvIHNwb3XFoXTEm8SNZSDigJ4lLjI1MHPigJwiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo2OTkKK21zZ2lkICJ0cmlnZ2VycyBjaSBmaWxlIGNvbnRhaW5zIHVua25vd24gZGlyZWN0aXZlIHN5bnRheCIKK21zZ3N0ciAiY2kgc291Ym9yIHBybyBzcG91xaF0xJvEjWUgb2JzYWh1amUgbmV6bsOhbW91IHN5bnRheGkgZGlyZWt0aXZ5IgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NzEyCisjLCBjLWZvcm1hdAorbXNnaWQgInRyaWdnZXJzIGNpIGZpbGUgY29udGFpbnMgdW5rbm93biBkaXJlY3RpdmUgYCUuMjUwcyciCittc2dzdHIgImNpIHNvdWJvciBwcm8gc3BvdcWhdMSbxI1lIG9ic2FodWplIG5lem7DoW1vdSBkaXJla3RpdnUg4oCeJS4yNTBz4oCcIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Nzc2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdHJpZ2dlcnMgc3RhdGUgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICJuZWx6ZSB2eXR2b8WZaXQgc3Rhdm92w70gYWRyZXPDocWZIHBybyBzcG91xaF0xJvEjWUgKCUuMjUwcykiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo3NzkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNldCBvd25lcnNoaXAgb2YgdHJpZ2dlcnMgc3RhdGUgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICJuZWx6ZSBuYXN0YXZpdCB2bGFzdG5pY3R2w60gc3Rhdm92w6lobyBhZHJlc8OhxZllIHBybyBzcG91xaF0xJvEjWUgKCUuMjUwcykiCisKKyM6IGxpYi9kcGtnL3RyaWduYW1lLmM6MzQKK21zZ2lkICJlbXB0eSB0cmlnZ2VyIG5hbWVzIGFyZSBub3QgcGVybWl0dGVkIgorbXNnc3RyICJwcsOhemRuw6kgbsOhenZ5IHNwb3XFoXTEm8SNxa8gbmVqc291IHBvdm9sZW55IgorCisjOiBsaWIvZHBrZy90cmlnbmFtZS5jOjM4Cittc2dpZCAidHJpZ2dlciBuYW1lIGNvbnRhaW5zIGludmFsaWQgY2hhcmFjdGVyIgorbXNnc3RyICJuw6F6ZXYgc3BvdcWhdMSbxI1lIG9ic2FodWplIG5lcGxhdG7DvSB6bmFrIgorCisjOiBsaWIvZHBrZy91dGlscy5jOjU2CisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWQgZXJyb3IgaW4gYCUuMjUwcyciCittc2dzdHIgImNoeWJhIMSNdGVuw60gdiDigJ4lLjI1MHPigJwiCisKKyM6IGxpYi9kcGtnL3V0aWxzLmM6NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmdldHMgZ2F2ZSBhbiBlbXB0eSBzdHJpbmcgZnJvbSBgJS4yNTBzJyIKK21zZ3N0ciAiZmdldHMgdnLDoXRpbCB6IOKAniUuMjUwc+KAnCBwcsOhemRuw70gxZlldMSbemVjIgorCisjOiBsaWIvZHBrZy91dGlscy5jOjYzCisjLCBjLWZvcm1hdAorbXNnaWQgInRvby1sb25nIGxpbmUgb3IgbWlzc2luZyBuZXdsaW5lIGluIGAlLjI1MHMnIgorbXNnc3RyICJwxZnDrWxpxaEgZGxvdWjDvSDFmcOhZGVrIG5lYm8gY2h5YsSbasOtY8OtIGtvbmVjIMWZw6Fka3UgdiDigJ4lLjI1MHPigJwiCisKKyM6IGxpYi9kcGtnL3V0aWxzLmM6NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgcmVhZGluZyBgJS4yNTBzJyIKK21zZ3N0ciAibmVvxI1la8OhdmFuw70ga29uZWMgc291Ym9ydSB2IOKAniUuMjUwc+KAnCIKKworIzogbGliL2Rwa2cvdmFyYnVmLmM6ODIgbGliL2Rwa2cvdmFyYnVmLmM6ODgKK21zZ2lkICJlcnJvciBmb3JtYXR0aW5nIHN0cmluZyBpbnRvIHZhcmJ1ZiB2YXJpYWJsZSIKK21zZ3N0ciAiY2h5YmEgZm9ybcOhdG92w6Fuw60gxZlldMSbemNlIGRvIHByb23Em25uw6kgdmFyYnVmIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxNzkgc3JjL2FyY2hpdmVzLmM6MjAwIHNyYy9hcmNoaXZlcy5jOjcyNAorbXNnaWQgImVycm9yIHJlYWRpbmcgZnJvbSBkcGtnLWRlYiBwaXBlIgorbXNnc3RyICJjaHliYSBwxZlpIMSNdGVuw60geiByb3VyeSBvZCBkcGtnLWRlYiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTk1CisjLCBjLWZvcm1hdAorbXNnaWQgInNraXBwZWQgdW5wYWNraW5nIGZpbGUgJyUuMjU1cycgKHJlcGxhY2VkIG9yIGV4Y2x1ZGVkPykiCittc2dzdHIgInDFmWVza2FrdWppIHJvemJhbGVuw60gc291Ym9ydSDigJ4lLjI1NXPigJwgKG5haHJhemVuIG5lYm8gdnnFmWF6ZW4/KSIKKworIzogc3JjL2FyY2hpdmVzLmM6MjQ2IHNyYy9hcmNoaXZlcy5jOjI1MAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIHRpbWVzdGFtcHMgb2YgYCUuMjU1cyciCittc2dzdHIgImNoeWJhIHDFmWkgbmFzdGF2b3bDoW7DrSDEjWFzdSB1IOKAniUuMjU1c+KAnCIKKworIzogc3JjL2FyY2hpdmVzLmM6MjYyCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHNldHRpbmcgb3duZXJzaGlwIG9mIHN5bWxpbmsgYCUuMjU1cyciCittc2dzdHIgImNoeWJhIHDFmWkgbmFzdGF2b3bDoW7DrSB2bGFzdG7DrWthIHN5bWJvbGlja8OpaG8gb2RrYXp1IOKAniUuMjU1c+KAnCIKKworIzogc3JjL2FyY2hpdmVzLmM6MjY1IHNyYy9hcmNoaXZlcy5jOjczNCBzcmMvc3RhdGNtZC5jOjE2MworIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIG93bmVyc2hpcCBvZiBgJS4yNTVzJyIKK21zZ3N0ciAiY2h5YmEgcMWZaSBuYXN0YXZvdsOhbsOtIHZsYXN0bsOta2Eg4oCeJS4yNTVz4oCcIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoyNjcgc3JjL2FyY2hpdmVzLmM6NzM2IHNyYy9zdGF0Y21kLmM6MTY1CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHNldHRpbmcgcGVybWlzc2lvbnMgb2YgYCUuMjU1cyciCittc2dzdHIgImNoeWJhIHDFmWkgbmFzdGF2b3bDoW7DrSBwcsOhdiDigJ4lLjI1NXPigJwiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjM5NQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gc3RhdCAoZGVyZWZlcmVuY2UpIGV4aXN0aW5nIHN5bWxpbmsgYCUuMjUwcyciCittc2dzdHIgInNlbGhhbG8gZGVyZWZlcmVuY292w6Fuw60gc3TDoXZhasOtY8OtaG8gc3ltYm9saWNrw6lobyBvZGthenUg4oCeJS4yNTBz4oCcIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo0MTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImZhaWxlZCB0byBzdGF0IChkZXJlZmVyZW5jZSkgcHJvcG9zZWQgbmV3IHN5bWxpbmsgdGFyZ2V0IGAlLjI1MHMnIGZvciAiCisic3ltbGluayBgJS4yNTBzJyIKK21zZ3N0ciAiIgorInNlbGhhbG8gZGVyZWZlcmVuY292w6Fuw60gbm92w6lobyBjw61sZSAo4oCeJS4yNTBz4oCcKSBzeW1ib2xpY2vDqWhvIG9ka2F6dSDigJ4lLjI1MHPigJwiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjQ3NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidHJ5aW5nIHRvIG92ZXJ3cml0ZSBgJS4yNTBzJywgd2hpY2ggaXMgdGhlIGRpdmVydGVkIHZlcnNpb24gb2YgYCIKKyIlLjI1MHMnIChwYWNrYWdlOiAlLjEwMHMpIgorbXNnc3RyICIiCisiemtvdcWhw61tIHDFmWVwc2F0IOKAniUuMjUwc+KAnCwgY2/FviBqZSBvZGtsb27Em27DoSB2ZXJ6ZSDigJ4lLjI1MHPigJwgKGJhbMOtazogJS4xMDBzKSIKKworIzogc3JjL2FyY2hpdmVzLmM6NDgxCisjLCBjLWZvcm1hdAorbXNnaWQgInRyeWluZyB0byBvdmVyd3JpdGUgYCUuMjUwcycsIHdoaWNoIGlzIHRoZSBkaXZlcnRlZCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICJ6a291xaHDrW0gcMWZZXBzYXQg4oCeJS4yNTBz4oCcLCBjb8W+IGplIG9ka2xvbsSbbsOhIHZlcnplIOKAniUuMjUwc+KAnCIKKworIzogc3JjL2FyY2hpdmVzLmM6NTExCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGAlLjI1NXMnICh3aGljaCBJIHdhcyBhYm91dCB0byBpbnN0YWxsKSIKK21zZ3N0ciAibmVsemUgemppc3RpdCBzdGF2IHNvdWJvcnUg4oCeJS4yNTVz4oCcLCBrdGVyw70gYnVkZSB6cm92bmEgbmFpbnN0YWxvdsOhbiIKKworIzogc3JjL2FyY2hpdmVzLmM6NTE5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1bmFibGUgdG8gY2xlYW4gdXAgbWVzcyBzdXJyb3VuZGluZyBgJS4yNTVzJyBiZWZvcmUgaW5zdGFsbGluZyBhbm90aGVyICIKKyJ2ZXJzaW9uIgorbXNnc3RyICJuZWx6ZSB1a2xpZGl0IG5lcG/FmcOhZGVrIHUg4oCeJS4yNTVz4oCcIHDFmWVkIG5haW5zdGFsb3bDoW7DrW0gZGFsxaHDrSB2ZXJ6ZSAiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjUyNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCByZXN0b3JlZCBgJS4yNTVzJyBiZWZvcmUgaW5zdGFsbGluZyBhbm90aGVyIHZlcnNpb24iCittc2dzdHIgIiIKKyJuZWx6ZSB6amlzdGl0IHN0YXYgb2Jub3ZlbsOpaG8gc291Ym9ydSDigJ4lLjI1NXPigJwgcMWZZWQgbmFpbnN0YWxvdsOhbsOtbSBkYWzFocOtICIKKyJ2ZXJ6ZSIKKworIzogc3JjL2FyY2hpdmVzLmM6NTYxCisjLCBjLWZvcm1hdAorbXNnaWQgImFyY2hpdmUgY29udGFpbmVkIG9iamVjdCBgJS4yNTVzJyBvZiB1bmtub3duIHR5cGUgMHgleCIKK21zZ3N0ciAiYXJjaGl2IG9ic2Fob3ZhbCBvYmpla3Qg4oCeJS4yNTVz4oCcIG5lem7DoW3DqWhvIHR5cHUgMHgleCIKKworIzogc3JjL2FyY2hpdmVzLmM6NjI2IHNyYy9kaXZlcnRjbWQuYzoxNTAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjY4MgorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMjIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyODQKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNDQxIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNjgwCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE2NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI0NAorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHN0YXQgZmlsZSAnJXMnIgorbXNnc3RyICJuZWx6ZSB2b2xhdCBzdGF0IG5hIHNvdWJvciDigJ4lc+KAnCIKKworIzogc3JjL2FyY2hpdmVzLmM6NjQxCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlcGxhY2luZyBmaWxlcyBpbiBvbGQgcGFja2FnZSAlcyAuLi5cbiIKK21zZ3N0ciAiTmFocmF6dWppIHNvdWJvcnkgdmUgc3RhcsOpbSBiYWzDrWt1ICVzIOKAplxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVwbGFjZWQgYnkgZmlsZXMgaW4gaW5zdGFsbGVkIHBhY2thZ2UgJXMgLi4uXG4iCittc2dzdHIgIk5haHJhemVuIHNvdWJvcnkgdiBuYWluc3RhbG92YW7DqW0gYmFsw61rdSAlcyDigKZcbiIKKworIzogc3JjL2FyY2hpdmVzLmM6NjU0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ0cnlpbmcgdG8gb3ZlcndyaXRlIGRpcmVjdG9yeSAnJS4yNTBzJyBpbiBwYWNrYWdlICUuMjUwcyAlLjI1MHMgd2l0aCAiCisibm9uZGlyZWN0b3J5IgorbXNnc3RyICJ6a291xaHDrW0gcMWZZXBzYXQgYWRyZXPDocWZIOKAniUuMjUwc+KAnCB2IGJhbMOta3UgJS4yNTBzICUuMjUwcyBuZWFkcmVzw6HFmWVtIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJ5aW5nIHRvIG92ZXJ3cml0ZSAnJS4yNTBzJywgd2hpY2ggaXMgYWxzbyBpbiBwYWNrYWdlICUuMjUwcyAlLjI1MHMiCittc2dzdHIgInprb3XFocOtbSBwxZllcHNhdCBzb3Vib3Ig4oCeJS4yNTBz4oCcLCBrdGVyw70gamUgdGFrw6kgdiBiYWzDrWt1ICUuMjUwcyAlLjI1MHMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjcxMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGAlLjI1NXMnICh3aGlsZSBwcm9jZXNzaW5nIGAlLjI1NXMnKSIKK21zZ3N0ciAibmVsemUgdnl0dm/FmWl0IOKAniUuMjU1c+KAnCAocMWZaSB6cHJhY292w6Fuw60g4oCeJS4yNTVz4oCcKSIKKworIzogc3JjL2FyY2hpdmVzLmM6NzE4CisjLCBjLWZvcm1hdAorbXNnaWQgImJhY2tlbmQgZHBrZy1kZWIgZHVyaW5nIGAlLjI1NXMnIgorbXNnc3RyICJkcGtnLWRlYiBixJtoZW0g4oCeJS4yNTVz4oCcIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NDQgc3JjL2FyY2hpdmVzLmM6OTA4IHNyYy9hcmNoaXZlcy5jOjk0OQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nL3dyaXRpbmcgYCUuMjU1cyciCittc2dzdHIgImNoeWJhIHDFmWkgdXphdsOtcsOhbsOtIG5lYm8gesOhcGlzdSDigJ4lLjI1NXPigJwiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc0OAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBwaXBlIGAlLjI1NXMnIgorbXNnc3RyICJjaHliYSBwxZlpIHZ5dHbDocWZZW7DrSByb3VyeSDigJ4lLjI1NXPigJwiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc1MyBzcmMvYXJjaGl2ZXMuYzo3NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgZGV2aWNlIGAlLjI1NXMnIgorbXNnc3RyICJjaHliYSBwxZlpIHZ5dHbDocWZZW7DrSBzcGVjLiBzb3Vib3J1IOKAniUuMjU1c+KAnCIKKworIzogc3JjL2FyY2hpdmVzLmM6NzcxCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIGhhcmQgbGluayBgJS4yNTVzJyIKK21zZ3N0ciAiY2h5YmEgcMWZaSB2eXR2w6HFmWVuw60gcGV2bsOpaG8gb2RrYXp1IOKAniUuMjU1c+KAnCIKKworIzogc3JjL2FyY2hpdmVzLmM6Nzc3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo1MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgc3ltYm9saWMgbGluayBgJS4yNTVzJyIKK21zZ3N0ciAiY2h5YmEgcMWZaSB2eXR2w6HFmWVuw60gc3ltYm9saWNrw6lobyBvZGthenUg4oCeJS4yNTVz4oCcIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgZGlyZWN0b3J5IGAlLjI1NXMnIgorbXNnc3RyICJjaHliYSBwxZlpIHZ5dHbDocWZZW7DrSBhZHJlc8OhxZllIOKAniUuMjU1c+KAnCIKKworIzogc3JjL2FyY2hpdmVzLmM6ODIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBtb3ZlIGFzaWRlIGAlLjI1NXMnIHRvIGluc3RhbGwgbmV3IHZlcnNpb24iCittc2dzdHIgIm5lbHplIG9kc3Vub3V0IOKAniUuMjU1c+KAnCBwcm8gbmFpbnN0YWxvdsOhbsOtIG5vdsOpIHZlcnplIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4MzIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjMyMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBsaW5rIGAlLjI1NXMnIgorbXNnc3RyICJuZWx6ZSBwxZllxI3DrXN0IG9ka2F6IOKAniUuMjU1c+KAnCIKKworIzogc3JjL2FyY2hpdmVzLmM6ODM0IHNyYy9jb25maWd1cmUuYzo0MjMKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ltYm9saWMgbGluayAnJS4yNTBzJyBzaXplIGhhcyBjaGFuZ2VkIGZyb20gJWpkIHRvICV6ZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG1ha2UgYmFja3VwIHN5bWxpbmsgZm9yIGAlLjI1NXMnIgorbXNnc3RyICJuZWx6ZSB2eXR2b8WZaXQgesOhbG/Fvm7DrSBzeW1ib2xpY2vDvSBvZGtheiBwcm8g4oCeJS4yNTVz4oCcIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNob3duIGJhY2t1cCBzeW1saW5rIGZvciBgJS4yNTVzJyIKK21zZ3N0ciAibmVsemUgem3Em25pdCB2bGFzdG7DrWthIHrDoWxvxb5uw61obyBzeW1ib2xpY2vDqWhvIG9ka2F6dSDigJ4lLjI1NXPigJwiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjg0NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gbWFrZSBiYWNrdXAgbGluayBvZiBgJS4yNTVzJyBiZWZvcmUgaW5zdGFsbGluZyBuZXcgdmVyc2lvbiIKK21zZ3N0ciAibmVsemUgdnl0dm/FmWl0IHrDoWxvxb5uw60gb2RrYXog4oCeJS4yNTVz4oCcIHDFmWVkIG5haW5zdGFsb3bDoW7DrW0gbm92w6kgdmVyemUiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjg2MyBzcmMvYXJjaGl2ZXMuYzo5NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IHZlcnNpb24gb2YgYCUuMjU1cyciCittc2dzdHIgIm5lbHplIG5haW5zdGFsb3ZhdCBub3ZvdSB2ZXJ6aSDigJ4lLjI1NXPigJwiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjkwMiBzcmMvYXJjaGl2ZXMuYzo5NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gJyUuMjU1cyciCittc2dzdHIgIm5lbHplIG90ZXbFmcOtdCDigJ4lLjI1NXPigJwiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjk0NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBmaWxlICclLjI1NXMnIgorbXNnc3RyICJuZWx6ZSBzeW5jaHJvbml6b3ZhdCBzb3Vib3Ig4oCeJS4yNTVz4oCcIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDAwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpZ25vcmluZyBkZXBlbmRlbmN5IHByb2JsZW0gd2l0aCAlczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImlnbm9ydWppIHByb2Jsw6ltIHNlIHrDoXZpc2xvc3RtaSBha2NlIOKAniVz4oCcOlxuIgorIiVzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDA1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJjb25zaWRlcmluZyBkZWNvbmZpZ3VyYXRpb24gb2YgZXNzZW50aWFsXG4iCisiIHBhY2thZ2UgJXMsIHRvIGVuYWJsZSAlcy4iCittc2dzdHIgIiIKKyJ6dmHFvnVqaSBkZWtvbmZpZ3VyYWNpIG5lemJ5dG7DqWhvIGJhbMOta3VcbiIKKyIgJXMsIGNvxb4gYnkgdW1vxb5uaWxvIGFrY2kg4oCeJXPigJwuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDA4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBubywgJXMgaXMgZXNzZW50aWFsLCB3aWxsIG5vdCBkZWNvbmZpZ3VyZVxuIgorIiBpdCBpbiBvcmRlciB0byBlbmFibGUgJXMuXG4iCittc2dzdHIgIiIKKyJkcGtnOiBuZSwgYmFsw61rICVzIGplIG5lemJ5dG7DvSwgbmVwcm92ZWR1IGplaG8gZGVrb25maWd1cmFjaSxcbiIKKyIga3RlcsOhIGJ5IHVtb8W+bmlsYSBha2NpIOKAniVz4oCcLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDIyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBubywgY2Fubm90IHByb2NlZWQgd2l0aCAlcyAoLS1hdXRvLWRlY29uZmlndXJlIHdpbGwgaGVscCk6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiBuZSwgbmVsemUgcG9rcmHEjW92YXQgcyBha2PDrSDigJ4lc+KAnCAocG9txa/FvmUgLS1hdXRvLWRlY29uZmlndXJlKTpcbiIKKyIlcyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAzMgorIywgYy1mb3JtYXQKK21zZ2lkICJyZW1vdmFsIG9mICUuMjUwcyIKK21zZ3N0ciAib2RzdHJhbsSbbsOtICUuMjUwcyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA1NworIywgYy1mb3JtYXQKK21zZ2lkICJpbnN0YWxsYXRpb24gb2YgJS4yNTBzIgorbXNnc3RyICJpbnN0YWxhY2UgJS4yNTBzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDU4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBjb25zaWRlcmluZyBkZWNvbmZpZ3VyYXRpb24gb2YgJXMsIHdoaWNoIHdvdWxkIGJlIGJyb2tlbiBieSAlcyAuLi5cbiIKK21zZ3N0ciAiIgorImRwa2c6IHp2YcW+dWppIGRla29uZmlndXJhY2kgYmFsw61rdSAlcywga3RlcsO9IGJ5IGJ5bCBwb3J1xaFlbiBha2PDrSDigJ4lc+KAnOKAplxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDY1CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IHllcywgd2lsbCBkZWNvbmZpZ3VyZSAlcyAoYnJva2VuIGJ5ICVzKS5cbiIKK21zZ3N0ciAiZHBrZzogYW5vLCBkZWtvbmZpZ3VydWppICVzIChwb3J1xaFlbiBiYWzDrWtlbSAlcykuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNjkgc3JjL2FyY2hpdmVzLmM6MTE4NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogcmVnYXJkaW5nICVzIGNvbnRhaW5pbmcgJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiBvaGxlZG7EmyAlcyBvYnNhaHVqw61jw60gYmFsw61rICVzOlxuIgorIiVzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDc3Cittc2dpZCAiaWdub3JpbmcgYnJlYWthZ2UsIG1heSBwcm9jZWVkIGFueXdheSEiCittc2dzdHIgImlnbm9ydWppIHBvcnXFoWVuw60sIHprb3XFocOtbSBwb2tyYcSNb3ZhdCEiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImluc3RhbGxpbmcgJS4yNTBzIHdvdWxkIGJyZWFrICUuMjUwcywgYW5kXG4iCisiIGRlY29uZmlndXJhdGlvbiBpcyBub3QgcGVybWl0dGVkICgtLWF1dG8tZGVjb25maWd1cmUgbWlnaHQgaGVscCkiCittc2dzdHIgIiIKKyJpbnN0YWxhY2UgYmFsw61rdSAlLjI1MHMgYnkgcG9ydcWhaWxhIGJhbMOtayAlLjI1MHMgYVxuIgorIiBkZWtvbmZpZ3VyYWNlIG5lbsOtIHBvdm9sZW5hIChtb2hsbyBieSBwb21vY2kgLS1hdXRvLWRlY29uZmlndXJlKSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA4NgorIywgYy1mb3JtYXQKK21zZ2lkICJpbnN0YWxsaW5nICUuMjUwcyB3b3VsZCBicmVhayBleGlzdGluZyBzb2Z0d2FyZSIKK21zZ3N0ciAiaW5zdGFsYWNlIGJhbMOta3UgJS4yNTBzIGJ5IHBvcnXFoWlsYSBzdMOhdmFqw61jw60gc29mdHdhcmUiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExMTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogY29uc2lkZXJpbmcgcmVtb3ZpbmcgJXMgaW4gZmF2b3VyIG9mICVzIC4uLlxuIgorbXNnc3RyICJkcGtnOiB6dmHFvnVqaSBvZHN0cmFuxJtuw60gJXMgdmUgcHJvc3DEm2NoICVzIOKAplxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTIyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGlzIG5vdCBwcm9wZXJseSBpbnN0YWxsZWQgLSBpZ25vcmluZyBhbnkgZGVwZW5kZW5jaWVzIG9uIGl0LlxuIgorbXNnc3RyICIiCisiYmFsw61rICVzIG5lbsOtIHNwcsOhdm7EmyBuYWluc3RhbG92w6FuIC0gaWdub3J1amkgdsWhZWNobnkgesOhdmlzbG9zdGkgbmEgbsSbbS5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE1MQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiBtYXkgaGF2ZSB0cm91YmxlIHJlbW92aW5nICVzLCBhcyBpdCBwcm92aWRlcyAlcyAuLi5cbiIKK21zZ3N0ciAiZHBrZzogbW/Fvm7DqSBwcm9ibMOpbXkgcyBvZHN0cmFuxJtuw61tIGJhbMOta3UgJXMsIHByb3Rvxb5lIHBvc2t5dHVqZSAlcyDigKZcbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE2NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogcGFja2FnZSAlcyByZXF1aXJlcyByZWluc3RhbGxhdGlvbiwgYnV0IHdpbGwgcmVtb3ZlIGFueXdheSBhcyB5b3UgIgorInJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiIgorImRwa2c6IGJhbMOtayAlcyB2ecW+YWR1amUgcMWZZWluc3RhbGFjaSwgYWxlIGJ1ZGUgb2RzdHJhbsSbbiBwb2RsZSB2YcWhZWhvICIKKyJwb8W+YWRhdmt1LlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTY5CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IHBhY2thZ2UgJXMgcmVxdWlyZXMgcmVpbnN0YWxsYXRpb24sIHdpbGwgbm90IHJlbW92ZS5cbiIKK21zZ3N0ciAiIgorImRwa2c6IGJhbMOtayAlcyB2ecW+YWR1amUgcMWZZWluc3RhbGFjaSwgbmVidWR1IG5lcG9rcmHEjW92YXQgdiBvZGluc3RhbGFjaS5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE3OAorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiB5ZXMsIHdpbGwgcmVtb3ZlICVzIGluIGZhdm91ciBvZiAlcy5cbiIKK21zZ3N0ciAiZHBrZzogYW5vLCBvZHN0cmFuw61tICVzIHZlIHByb3NwxJtjaCAlcy5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE5MAorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mbGljdGluZyBwYWNrYWdlcyAtIG5vdCBpbnN0YWxsaW5nICUuMjUwcyIKK21zZ3N0ciAia29uZmxpa3QgYmFsw61rxa8gLSBuZWJ1ZHUgaW5zdGFsb3ZhdCAlLjI1MHMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExOTEKK21zZ2lkICJpZ25vcmluZyBjb25mbGljdCwgbWF5IHByb2NlZWQgYW55d2F5ISIKK21zZ3N0ciAiaWdub3J1amkga29uZmxpa3QsIHprb3XFocOtbSBwb2tyYcSNb3ZhdCEiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyMzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyAtLXJlY3Vyc2l2ZSBuZWVkcyBhdCBsZWFzdCBvbmUgcGF0aCBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyAtLXJlY3Vyc2l2ZSB2ecW+YWR1amUgYWxlc3BvxYggamVkbnUgY2VzdHUiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNDUKK21zZ2lkICJmaW5kIGZvciBkcGtnIC0tcmVjdXJzaXZlIgorbXNnc3RyICJmaW5kIHBybyBkcGtnIC0tcmVjdXJzaXZlIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjY2Cittc2dpZCAiZmFpbGVkIHRvIGZkb3BlbiBmaW5kJ3MgcGlwZSIKK21zZ3N0ciAibmVsemUgcHJvdsOpc3QgZmRvcGVuIG5hIHJvdcWZZSBvZCBwxZnDrWthenUgZmluZCIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3MgorbXNnaWQgImVycm9yIHJlYWRpbmcgZmluZCdzIHBpcGUiCittc2dzdHIgImNoeWJhIHDFmWkgxI10ZW7DrSB6IHJvdXJ5IHDFmcOta2F6dSBmaW5kIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjczCittc2dpZCAiZXJyb3IgY2xvc2luZyBmaW5kJ3MgcGlwZSIKK21zZ3N0ciAiY2h5YmEgcMWZaSB6YXbDrXLDoW7DrSByb3VyeSBvZCBwxZnDrWthenUgZmluZCIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3NgorIywgYy1mb3JtYXQKK21zZ2lkICJmaW5kIGZvciAtLXJlY3Vyc2l2ZSByZXR1cm5lZCB1bmhhbmRsZWQgZXJyb3IgJWkiCittc2dzdHIgImhsZWTDoW7DrSAtLXJlY3Vyc2l2ZSB2csOhdGlsbyBuZW/FoWV0xZllbm91IGNoeWJ1ICVpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjc5Cittc2dpZCAic2VhcmNoZWQsIGJ1dCBmb3VuZCBubyBwYWNrYWdlcyAoZmlsZXMgbWF0Y2hpbmcgKi5kZWIpIgorbXNnc3RyICJwcm9obGVkw6FubywgYWxlIG5lYnlsIG5hbGV6ZW4gxb7DoWRuw70gYmFsw61rIChzb3Vib3J5IHZ5aG92dWrDrWPDrSAqLmRlYikiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhdCBsZWFzdCBvbmUgcGFja2FnZSBhcmNoaXZlIGZpbGUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMgdnnFvmFkdWplIGpha28gYXJndW1lbnQgYWxlc3BvxYggamVkZW4gc291Ym9yIHMgYmFsw61rZW0iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzMjUgc3JjL2RpdmVydGNtZC5jOjc4IHNyYy9kaXZlcnRjbWQuYzoxMTgKKyM6IHNyYy9lbnF1aXJ5LmM6MTY2IHNyYy9lbnF1aXJ5LmM6Mjc5IHNyYy9lbnF1aXJ5LmM6NDQ5IHNyYy9lbnF1aXJ5LmM6NDUxCisjOiBzcmMvZW5xdWlyeS5jOjQ2NCBzcmMvbWFpbi5jOjY2IHNyYy9tYWluLmM6MTYzIHNyYy9tYWluLmM6MzE0CisjOiBzcmMvbWFpbi5jOjQ5MyBzcmMvcGFja2FnZXMuYzoyNTQgc3JjL3F1ZXJ5Y21kLmM6MjUyIHNyYy9xdWVyeWNtZC5jOjM1NQorIzogc3JjL3F1ZXJ5Y21kLmM6Mzk2IHNyYy9xdWVyeWNtZC5jOjQwNCBzcmMvcXVlcnljbWQuYzo0NDggc3JjL3F1ZXJ5Y21kLmM6NTE3CisjOiBzcmMvcXVlcnljbWQuYzo2MDYgc3JjL3F1ZXJ5Y21kLmM6NjUwIHNyYy9zZWxlY3QuYzo3OSBzcmMvc3RhdGNtZC5jOjY4CisjOiBzcmMvc3RhdGNtZC5jOjk4IHNyYy90cmlnY21kLmM6NTggc3JjL3RyaWdjbWQuYzo5MCBkcGtnLWRlYi9idWlsZC5jOjQ0MQorIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIxNyBkcGtnLWRlYi9leHRyYWN0LmM6MjUwIGRwa2ctZGViL2luZm8uYzoyMDMKKyM6IGRwa2ctZGViL2luZm8uYzoyNjUgZHBrZy1kZWIvbWFpbi5jOjYwIGRwa2ctZGViL21haW4uYzoxMjYKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjI1NyBkcGtnLXNwbGl0L21haW4uYzo1NCBkcGtnLXNwbGl0L21haW4uYzo5OAorIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE0NCBkcGtnLXNwbGl0L3F1ZXVlLmM6MjgwCittc2dpZCAiPHN0YW5kYXJkIG91dHB1dD4iCittc2dzdHIgIjxzdGFuZGFyZG7DrSB2w71zdHVwPiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTMyNiBzcmMvcGFja2FnZXMuYzoyNTUgc3JjL3F1ZXJ5Y21kLmM6MjUzCisjOiBzcmMvcXVlcnljbWQuYzozNTMgc3JjL3F1ZXJ5Y21kLmM6NDU0IHNyYy9xdWVyeWNtZC5jOjUxOCBzcmMvc2VsZWN0LmM6ODAKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjE2OSBkcGtnLXNwbGl0L3F1ZXVlLmM6MjE4Cittc2dpZCAiPHN0YW5kYXJkIGVycm9yPiIKK21zZ3N0ciAiPGNoeWJvdsO9IHbDvXN0dXA+IgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzY3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJTZWxlY3RpbmcgcHJldmlvdXNseSBkZXNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dpZCAiU2VsZWN0aW5nIHByZXZpb3VzbHkgdW5zZWxlY3RlZCBwYWNrYWdlICVzLlxuIgorbXNnc3RyICJJbnN0YWx1amkgYmFsw61rICVzLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzcxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJTa2lwcGluZyBkZXNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dpZCAiU2tpcHBpbmcgdW5zZWxlY3RlZCBwYWNrYWdlICVzLlxuIgorbXNnc3RyICJQxZllc2tha3VqaSBiYWzDrWsgJXMuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiVmVyc2lvbiAlLjI1MHMgb2YgJS4yNTBzIGFscmVhZHkgaW5zdGFsbGVkLCBza2lwcGluZy5cbiIKK21zZ3N0ciAiVmVyemUgJS4yNTBzIGJhbMOta3UgJS4yNTBzIGplIGppxb4gbmFpbnN0YWxvdsOhbmEsIHDFmWVza2FrdWppLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzk3CisjLCBjLWZvcm1hdAorbXNnaWQgImRvd25ncmFkaW5nICUuMjUwcyBmcm9tICUuMjUwcyB0byAlLjI1MHMuIgorbXNnc3RyICJpbnN0YWx1amkgc3RhcsWhw60gdmVyemkgJS4yNTBzIHogJS4yNTBzIG5hICUuMjUwcy4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjE0MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiV2lsbCBub3QgZG93bmdyYWRlICUuMjUwcyBmcm9tIHZlcnNpb24gJS4yNTBzIHRvICUuMjUwcywgc2tpcHBpbmcuXG4iCittc2dzdHIgIiIKKyJPZG3DrXTDoW0gaW5zdGFsb3ZhdCBzdGFyxaHDrSB2ZXJ6aSBiYWzDrWt1ICUuMjUwcywgYWt0dcOhbG7DrVxuIgorInZlcnplICUuMjUwcyBwb8W+YWRvdsOhbmEgaW5zdGFsYWNlIHZlcnplICUuMjUwcywgcMWZZXNrYWt1amkuXG4iCisKKyM6IHNyYy9jbGVhbnVwLmM6ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVuYWJsZSB0byByZW1vdmUgbmV3bHktaW5zdGFsbGVkIHZlcnNpb24gb2YgYCUuMjUwcycgdG8gYWxsb3cgcmVpbnN0YWxsYXRpb24gIgorIm9mIGJhY2t1cCBjb3B5IgorbXNnc3RyICIiCisibmVsemUgb2RzdHJhbml0IG5vdsSbIG5haW5zdGFsb3Zhbm91IHZlcnppIOKAniUuMjUwc+KAnCBhYnkgc2UgbW9obGEgIgorInDFmWVpbnN0YWxvdmF0IHrDoWxvxb5uw60ga29waWUiCisKKyM6IHNyYy9jbGVhbnVwLmM6OTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlc3RvcmUgYmFja3VwIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dzdHIgIm5lbHplIG9ibm92aXQgesOhbG/Fvm7DrSB2ZXJ6aSDigJ4lLjI1MHPigJwiCisKKyM6IHNyYy9jbGVhbnVwLmM6OTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBiYWNrdXAgY29weSBvZiAnJS4yNTBzJyIKK21zZ3N0ciAibmVsemUgb2RzdHJhbml0IHrDoWxvxb5uw60ga29waWkg4oCeJS4yNTBz4oCcIgorCisjOiBzcmMvY2xlYW51cC5jOjEwMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIG5ld2x5LWluc3RhbGxlZCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICJuZWx6ZSBvZHN0cmFuaXQgbm92xJsgaW5zdGFsb3Zhbm91IHZlcnppIOKAniUuMjUwc+KAnCIKKworIzogc3JjL2NsZWFudXAuYzoxMDgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBuZXdseS1leHRyYWN0ZWQgdmVyc2lvbiBvZiBgJS4yNTBzJyIKK21zZ3N0ciAibmVsemUgb2RzdHJhbml0IG5vdsSbIHZ5dHZvxZllbm91IHZlcnppIOKAniUuMjUwc+KAnCIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjEwNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBuZXcgZGlzdHJpYnV0ZWQgY29uZmZpbGUgJyUuMjUwcyciCittc2dzdHIgIiIKKyJuZWx6ZSB6amlzdGl0IHN0YXYgbm92w6lobyBkaXN0cmlidcSNbsOtaG8ga29uZmlndXJhxI1uw61obyBzb3Vib3J1IOKAniUuMjUwc+KAnCIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBjdXJyZW50IGluc3RhbGxlZCBjb25mZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmVsemUgemppc3RpdCBzdGF2IGFrdHXDoWxuw61obyBrb25maWd1cmHEjW7DrWhvIHNvdWJvcnUg4oCeJS4yNTBz4oCcIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTI2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJDb25maWd1cmF0aW9uIGZpbGUgYCVzJywgZG9lcyBub3QgZXhpc3Qgb24gc3lzdGVtLlxuIgorIkluc3RhbGxpbmcgbmV3IGNvbmZpZyBmaWxlIGFzIHlvdSByZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiIKKyJcbiIKKyJLb25maWd1cmHEjW7DrSBzb3Vib3Ig4oCeJXPigJwgdmUgdmHFoWVtIHN5c3TDqW11IG5lZXhpc3R1amUuXG4iCisiUG9kbGUgdmHFoWVobyBwb8W+YWRhdmt1IG5haW5zdGFsdWppIG5vdsO9LlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTY4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlIG9sZCBiYWNrdXAgJyUuMjUwcyc6ICVzIgorbXNnc3RyICIlczogbmVwb2RhxZlpbG8gc2Ugb2RzdHJhbml0IHrDoWxvxb5uw60ga29waWkg4oCeJS4yNTBz4oCcOiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE3NgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIHJlbmFtZSAnJS4yNTBzJyB0byAnJS4yNTBzJzogJXMiCittc2dzdHIgIiVzOiBuZXBvZGHFmWlsbyBzZSBwxZllam1lbm92YXQg4oCeJS4yNTBz4oCcIG5hIOKAniUuMjUwc+KAnDogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW1vdmUgJyUuMjUwcyc6ICVzIgorbXNnc3RyICIlczogbmVwb2RhxZlpbG8gc2Ugb2RzdHJhbml0IOKAniUuMjUwc+KAnDogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxODgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW1vdmUgb2xkIGRpc3RyaWJ1dGVkIHZlcnNpb24gJyUuMjUwcyc6ICVzIgorbXNnc3RyICIlczogbmVwb2RhxZlpbG8gc2Ugb2RzdHJhbml0IHN0YXJvdSBkaXN0cmlidcSNbsOtIHZlcnppIOKAniUuMjUwc+KAnDogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW1vdmUgJyUuMjUwcycgKGJlZm9yZSBvdmVyd3JpdGUpOiAlcyIKK21zZ3N0ciAiJXM6IG5lcG9kYcWZaWxvIHNlIG9kc3RyYW5pdCDigJ4lLjI1MHPigJwgKHDFmWVkIHDFmWVwc8OhbsOtbSk6ICVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTk2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gbGluayAnJS4yNTBzJyB0byAnJS4yNTBzJzogJXMiCittc2dzdHIgIiVzOiBuZXBvZGHFmWlsbyBzZSB2eXR2b8WZaXQgb2RrYXog4oCeJS4yNTBz4oCcIG5hIOKAniUuMjUwc+KAnDogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoyMDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW5zdGFsbGluZyBuZXcgdmVyc2lvbiBvZiBjb25maWcgZmlsZSAlcyAuLi5cbiIKK21zZ3N0ciAiSW5zdGFsdWppIG5vdm91IHZlcnppIGtvbmZpZ3VyYcSNbsOtaG8gc291Ym9ydSAlcyDigKZcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjIwNiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NTQ2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIGAlLjI1MHMnIGFzIGAlLjI1MHMnIgorbXNnc3RyICJuZWx6ZSBuYWluc3RhbG92YXQg4oCeJS4yNTBz4oCcIGpha28g4oCeJS4yNTBz4oCcIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjU3CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHBhY2thZ2UgbmFtZWQgYCVzJyBpcyBpbnN0YWxsZWQsIGNhbm5vdCBjb25maWd1cmUiCittc2dzdHIgImJhbMOtayBqbcOpbmEg4oCeJXPigJwgbmVuw60gbmFpbnN0YWxvdsOhbiwgbmVsemUgemtvbmZpZ3Vyb3ZhdCIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI2MAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlICUuMjUwcyBpcyBhbHJlYWR5IGluc3RhbGxlZCBhbmQgY29uZmlndXJlZCIKK21zZ3N0ciAiYmFsw61rICUuMjUwcyBqZSBqacW+IG5haW5zdGFsb3bDoW4gYSB6a29uZmlndXJvdsOhbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI2MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisicGFja2FnZSAlLjI1MHMgaXMgbm90IHJlYWR5IGZvciBjb25maWd1cmF0aW9uXG4iCisiIGNhbm5vdCBjb25maWd1cmUgKGN1cnJlbnQgc3RhdHVzIGAlLjI1MHMnKSIKK21zZ3N0ciAiIgorImJhbMOtayAlLjI1MHMgbmVuw60gcMWZaXByYXZlbiBrZSBrb25maWd1cmFjaVxuIgorIiBuZWx6ZSB6a29uZmlndXJvdmF0IChzb3XEjWFzbsO9IHN0YXYg4oCeJS4yNTBz4oCcKSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI5NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogZGVwZW5kZW5jeSBwcm9ibGVtcyBwcmV2ZW50IGNvbmZpZ3VyYXRpb24gb2YgJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiBuZXNwbG7Em27DqSB6w6F2aXNsb3N0aSB6YW1lemlseSBrb25maWd1cmFjaSBiYWzDrWt1ICVzOlxuIgorIiVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6Mjk3Cittc2dpZCAiZGVwZW5kZW5jeSBwcm9ibGVtcyAtIGxlYXZpbmcgdW5jb25maWd1cmVkIgorbXNnc3RyICJwcm9ibMOpbSBzZSB6w6F2aXNsb3N0bWkgLSBuZWNow6F2w6FtIG5lemtvbmZpZ3Vyb3ZhbsOpIgorCisjOiBzcmMvY29uZmlndXJlLmM6MzAxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiAlczogZGVwZW5kZW5jeSBwcm9ibGVtcywgYnV0IGNvbmZpZ3VyaW5nIGFueXdheSBhcyB5b3UgcmVxdWVzdGVkOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogJXM6IHByb2Jsw6ltIHNlIHrDoXZpc2xvc3RtaSwgYWxlIHDFmWVzdG8ga29uZmlndXJ1amkgcG9kbGUgdmHFoWVobyAiCisicG/FvmFkYXZrdTpcbiIKKyIlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjMwOQorbXNnaWQgIiIKKyJQYWNrYWdlIGlzIGluIGEgdmVyeSBiYWQgaW5jb25zaXN0ZW50IHN0YXRlIC0geW91IHNob3VsZFxuIgorIiByZWluc3RhbGwgaXQgYmVmb3JlIGF0dGVtcHRpbmcgY29uZmlndXJhdGlvbi4iCittc2dzdHIgIiIKKyJCYWzDrWsgamUgdmUgdmVsbWkgbmVrb256aXN0ZW50bsOtbSBzdGF2dSAtIHDFmWVkIHBva3VzZW1cbiIKKyJvIGtvbmZpZ3VyYWNpIGJ5IG3Em2wgYnkgYsO9dCBwxZllaW5zdGFsb3bDoW4uIgorCisjOiBzcmMvY29uZmlndXJlLmM6MzEyCisjLCBjLWZvcm1hdAorbXNnaWQgIlNldHRpbmcgdXAgJXMgKCVzKSAuLi5cbiIKK21zZ3N0ciAiTmFzdGF2dWppIGJhbMOtayAlcyAoJXMpIOKAplxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6Mzk2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogdW5hYmxlIHRvIHN0YXQgY29uZmlnIGZpbGUgJyVzJ1xuIgorIiAoPSAnJXMnKTogJXMiCittc2dzdHIgIiIKKyIlczogbmVsemUgemppc3RpdCBzdGF2IGtvbmZpZ3VyYcSNbsOtaG8gc291Ym9ydSDigJ4lc+KAnFxuIgorIiAoPSDigJ4lc+KAnCk6ICVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDA5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogY29uZmlnIGZpbGUgJyVzJyBpcyBhIGNpcmN1bGFyIGxpbmtcbiIKKyIgKD0gJyVzJykiCittc2dzdHIgIiIKKyIlczoga29uZmlndXJhxI1uw60gc291Ym9yIOKAniVz4oCcIGplIGN5a2xpY2vDvW0gb2RrYXplbVxuIgorIiAoPSDigJ4lc+KAnCkiCisKKyM6IHNyYy9jb25maWd1cmUuYzo0MTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiB1bmFibGUgdG8gcmVhZGxpbmsgY29uZmZpbGUgJyVzJ1xuIgorIiAoPSAnJXMnKTogJXMiCittc2dzdHIgIiIKKyIlczogbmVsemUgcHJvdsOpc3QgcmVhZGxpbmsgbmEga29uZmlndXJhxI1uw61tIHNvdWJvcnUg4oCeJXPigJxcbiIKKyIgKD0g4oCeJXPigJwpOiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQ0NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IGNvbmZmaWxlICclLjI1MHMnIHJlc29sdmVzIHRvIGRlZ2VuZXJhdGUgZmlsZW5hbWVcbiIKKyIgKCclcycgaXMgYSBzeW1saW5rIHRvICclcycpIgorbXNnc3RyICIiCisiJXM6IGtvbmZpZ3VyYcSNbsOtIHNvdWJvciDigJ4lLjI1MHPigJwgb2RrYXp1amUgbmEgbmVwbGF0bsOpIGptw6lub1xuIgorIiAo4oCeJXPigJwgamUgc3ltYm9saWNrw70gb2RrYXogbmEg4oCeJXPigJwpIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDYwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBjb25mZmlsZSAnJS4yNTBzJyBpcyBub3QgYSBwbGFpbiBmaWxlIG9yIHN5bWxpbmsgKD0gJyVzJykiCittc2dzdHIgIiIKKyIlczoga29uZmlndXJhxI1uw60gc291Ym9yIOKAniUuMjUwc+KAnCBuZW7DrSBzb3Vib3JlbSBhbmkgc3ltYm9saWNrw71tIG9ka2F6ZW0gKD0gIgorIuKAniVz4oCcKSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQ4NgorbXNnaWQgIm1kNWhhc2giCittc2dzdHIgIm1kNWhhc2giCisKKyM6IHNyYy9jb25maWd1cmUuYzo0OTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IHVuYWJsZSB0byBvcGVuIGNvbmZmaWxlICVzIGZvciBoYXNoOiAlcyIKK21zZ3N0ciAiJXM6IG5lbHplIG90ZXbFmcOtdCBrb25maWd1cmHEjW7DrSBzb3Vib3IgJXMgcHJvIGhhc2g6ICVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6NTIyIHNyYy9jb25maWd1cmUuYzo1MjYKK21zZ2lkICJjb25mZmlsZSBkaWZmZXJlbmNlIHZpc3VhbGl6ZXIiCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjU0MworbXNnaWQgIlR5cGUgYGV4aXQnIHdoZW4geW91J3JlIGRvbmUuXG4iCittc2dzdHIgIlBvIHNrb27EjWVuw60gbmFwacWhdGUg4oCeZXhpdOKAnC5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjU1MiBzcmMvY29uZmlndXJlLmM6NTU2Cittc2dpZCAiY29uZmZpbGUgc2hlbGwiCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYwMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiQ29uZmlndXJhdGlvbiBmaWxlIGAlcyciCittc2dzdHIgIiIKKyJcbiIKKyJLb25maWd1cmHEjW7DrSBzb3Vib3Ig4oCeJXPigJwiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIChhY3R1YWxseSBgJXMnKSIKK21zZ3N0ciAiICh2bGFzdG7EmyDigJ4lc+KAnCkiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiA9PT4gRmlsZSBvbiBzeXN0ZW0gY3JlYXRlZCBieSB5b3Ugb3IgYnkgYSBzY3JpcHQuXG4iCisiID09PiBGaWxlIGFsc28gaW4gcGFja2FnZSBwcm92aWRlZCBieSBwYWNrYWdlIG1haW50YWluZXIuXG4iCittc2dzdHIgIiIKKyJcbiIKKyIgPT0+IFNvdWJvciB2IHN5c3TDqW11IGJ5bCB2eXR2b8WZZW4gdsOhbWkgbmVibyBza3JpcHRlbS5cbiIKKyIgPT0+IFRlbnRvIHNvdWJvciBzZSB0YWvDqSBuYWNow6F6w60gdiBiYWzDrWt1LlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjEzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgICAgIE5vdCBtb2RpZmllZCBzaW5jZSBpbnN0YWxsYXRpb24uXG4iCittc2dzdHIgIiIKKyJcbiIKKyIgICAgIE5lem3Em27Em24gb2QgZG9ieSBpbnN0YWxhY2UuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiA9PT4gTW9kaWZpZWQgKGJ5IHlvdSBvciBieSBhIHNjcmlwdCkgc2luY2UgaW5zdGFsbGF0aW9uLlxuIgorbXNnc3RyICIiCisiXG4iCisiID09PiBPZCBkb2J5IGluc3RhbGFjZSBieWwgem3Em27Em24gKHbDoW1pIG5lYm8gc2tyaXB0ZW0pLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjE2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgPT0+IERlbGV0ZWQgKGJ5IHlvdSBvciBieSBhIHNjcmlwdCkgc2luY2UgaW5zdGFsbGF0aW9uLlxuIgorbXNnc3RyICIiCisiXG4iCisiID09PiBPZCBkb2J5IGluc3RhbGFjZSBieWwgc21hesOhbiAodsOhbWkgbmVibyBza3JpcHRlbSkuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBQYWNrYWdlIGRpc3RyaWJ1dG9yIGhhcyBzaGlwcGVkIGFuIHVwZGF0ZWQgdmVyc2lvbi5cbiIKK21zZ3N0ciAiID09PiBEaXN0cmlidXRvciBwb3NreXRsIHVwcmF2ZW5vdSB2ZXJ6aS5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYyMAorIywgYy1mb3JtYXQKK21zZ2lkICIgICAgIFZlcnNpb24gaW4gcGFja2FnZSBpcyB0aGUgc2FtZSBhcyBhdCBsYXN0IGluc3RhbGxhdGlvbi5cbiIKK21zZ3N0ciAiICAgICBWZXJ6ZSB2IGJhbMOta3UgamUgc3Rlam7DoSBqYWtvIHBvc2xlZG7DrSBuYWluc3RhbG92YW7DoS5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYyOAorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IFVzaW5nIG5ldyBmaWxlIGFzIHlvdSByZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiA9PT4gUG91xb7DrXbDoW0gbm92w70gc291Ym9yIHBvZGxlIHDFmcOhbsOtLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gVXNpbmcgY3VycmVudCBvbGQgZmlsZSBhcyB5b3UgcmVxdWVzdGVkLlxuIgorbXNnc3RyICIgPT0+IFBvdcW+w612w6FtIHN0YXLDvSBzb3Vib3IgcG9kbGUgcMWZw6Fuw60uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBLZWVwaW5nIG9sZCBjb25maWcgZmlsZSBhcyBkZWZhdWx0LlxuIgorbXNnc3RyICIgPT0+IFBvbmVjaMOhdsOhbSBzdGFyw70ga29uZmlndXJhxI1uw60gc291Ym9yIGpha28gdsO9Y2hvesOtLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gVXNpbmcgbmV3IGNvbmZpZyBmaWxlIGFzIGRlZmF1bHQuXG4iCittc2dzdHIgIiA9PT4gUG91xb7DrXbDoW0gbm92w70ga29uZmlndXJhxI1uw60gc291Ym9yIGpha28gdsO9Y2hvesOtLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjUyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIgICBXaGF0IHdvdWxkIHlvdSBsaWtlIHRvIGRvIGFib3V0IGl0ID8gIFlvdXIgb3B0aW9ucyBhcmU6XG4iCisiICAgIFkgb3IgSSAgOiBpbnN0YWxsIHRoZSBwYWNrYWdlIG1haW50YWluZXIncyB2ZXJzaW9uXG4iCisiICAgIE4gb3IgTyAgOiBrZWVwIHlvdXIgY3VycmVudGx5LWluc3RhbGxlZCB2ZXJzaW9uXG4iCisiICAgICAgRCAgICAgOiBzaG93IHRoZSBkaWZmZXJlbmNlcyBiZXR3ZWVuIHRoZSB2ZXJzaW9uc1xuIgorIiAgICAgIFogICAgIDogc3RhcnQgYSBzaGVsbCB0byBleGFtaW5lIHRoZSBzaXR1YXRpb25cbiIKK21zZ3N0ciAiIgorIiAgIENvIHMgdMOtbSBjaGNldGUgdWTEm2xhdCA/IE1vxb5uw6kgdm9sYnkganNvdTpcbiIKKyIgICAgWSBuZWJvIEkgOiBuYWluc3RhbG92YXQgdmVyemkgeiBiYWzDrWt1XG4iCisiICAgIE4gbmVibyBPIDogcG9uZWNoYXQgc291xI1hc25vdSB2ZXJ6aVxuIgorIiAgICAgICAgRCAgICA6IHpvYnJheml0IHJvemTDrWwgbWV6aSB2ZXJ6ZW1pXG4iCisiICAgICAgICBaICAgIDogc3B1c3RpdCBzaGVsbCBhIHByb3prb3VtYXQgc2l0dWFjaVxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjU5CisjLCBjLWZvcm1hdAorbXNnaWQgIiBUaGUgZGVmYXVsdCBhY3Rpb24gaXMgdG8ga2VlcCB5b3VyIGN1cnJlbnQgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIFbDvWNob3rDrSBha2PDrSBqZSBwb25lY2jDoW7DrSBzb3XEjWFzbsOpIHZlcnplLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjYxCisjLCBjLWZvcm1hdAorbXNnaWQgIiBUaGUgZGVmYXVsdCBhY3Rpb24gaXMgdG8gaW5zdGFsbCB0aGUgbmV3IHZlcnNpb24uXG4iCittc2dzdHIgIiBWw71jaG96w60gYWtjw60gamUgaW5zdGFsYWNlIG5vdsOpIHZlcnplLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjY2Cittc2dpZCAiW2RlZmF1bHQ9Tl0iCittc2dzdHIgIltwxZllZHZvbGVubz1OXSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY2NworbXNnaWQgIltkZWZhdWx0PVldIgorbXNnc3RyICJbcMWZZWR2b2xlbm89WV0iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NjgKK21zZ2lkICJbbm8gZGVmYXVsdF0iCittc2dzdHIgIltiZXogcMWZZWR2b2xieV0iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NzEKK21zZ2lkICJlcnJvciB3cml0aW5nIHRvIHN0ZGVyciwgZGlzY292ZXJlZCBiZWZvcmUgY29uZmZpbGUgcHJvbXB0IgorbXNnc3RyICIiCisiY2h5YmEgcMWZaSB6w6FwaXN1IG5hIHN0ZGVyciwgb2JqZXZlbm8gcMWZZWQgb3TDoXprb3UgbmEga29uZmlndXJhxI1uw60gc291Ym9yeSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY4MAorbXNnaWQgInJlYWQgZXJyb3Igb24gc3RkaW4gYXQgY29uZmZpbGUgcHJvbXB0IgorbXNnc3RyICJjaHliYSDEjXRlbsOtIG5hIHN0ZGluIHDFmWkgb3TDoXpjZSBuYSBrb25maWd1cmHEjW7DrSBzb3Vib3J5IgorCisjOiBzcmMvY29uZmlndXJlLmM6NjgxCittc2dpZCAiRU9GIG9uIHN0ZGluIGF0IGNvbmZmaWxlIHByb21wdCIKK21zZ3N0ciAiRU9GIG5hIHN0ZGluIHDFmWkgb3TDoXpjZSBuYSBrb25maWd1cmHEjW7DrSBzb3Vib3IiCisKKyM6IHNyYy9kZXBjb24uYzoxNzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgZGVwZW5kcyBvbiAlcyIKK21zZ3N0ciAiJXMgesOhdmlzw60gbmEgJXMiCisKKyM6IHNyYy9kZXBjb24uYzoxNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcHJlLWRlcGVuZHMgb24gJXMiCittc2dzdHIgIiVzIHDFmWVkLXrDoXZpc8OtIG5hICVzIgorCisjOiBzcmMvZGVwY29uLmM6MTgxCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHJlY29tbWVuZHMgJXMiCittc2dzdHIgIiVzIGRvcG9ydcSNdWplICVzIgorCisjOiBzcmMvZGVwY29uLmM6MTg0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHN1Z2dlc3RzICVzIgorbXNnc3RyICIlcyBuYXZyaHVqZSAlcyIKKworIzogc3JjL2RlcGNvbi5jOjE4NworIywgYy1mb3JtYXQKK21zZ2lkICIlcyBicmVha3MgJXMiCittc2dzdHIgIiVzIHBvcnXFoXVqZSAlcyIKKworIzogc3JjL2RlcGNvbi5jOjE5MAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBjb25mbGljdHMgd2l0aCAlcyIKK21zZ3N0ciAiJXMgamUgdiBrb25mbGlrdHUgcyAlcyIKKworIzogc3JjL2RlcGNvbi5jOjE5MworIywgYy1mb3JtYXQKK21zZ2lkICIlcyBlbmhhbmNlcyAlcyIKK21zZ3N0ciAiJXMgcm96xaFpxZl1amUgJXMiCisKKyM6IHNyYy9kZXBjb24uYzoyOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdG8gYmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMgYnVkZSBvZHN0cmFuxJtuLlxuIgorCisjOiBzcmMvZGVwY29uLmM6Mjk5CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHRvIGJlIGRlY29uZmlndXJlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMgYnVkZSBkZWtvbmZpZ3Vyb3bDoW4uXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdG8gYmUgaW5zdGFsbGVkLCBidXQgaXMgdmVyc2lvbiAlLjI1MHMuXG4iCittc2dzdHIgIiAgJS4yNTBzIGJ1ZGUgbmFpbnN0YWxvdsOhbiwgYWxlIGplIHZlcnplICUuMjUwcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjMxNAorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyBpbnN0YWxsZWQsIGJ1dCBpcyB2ZXJzaW9uICUuMjUwcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgamUgbmFpbnN0YWxvdsOhbiwgYWxlIGplIHZlcnplICUuMjUwcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjMzMworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB1bnBhY2tlZCwgYnV0IGhhcyBuZXZlciBiZWVuIGNvbmZpZ3VyZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIGplIHJvemJhbGVuLCBhbGUgamXFoXTEmyBuZWJ5bCB6a29uZmlndXJvdsOhbi5cbiIKKworIzogc3JjL2RlcGNvbi5jOjMzNworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB1bnBhY2tlZCwgYnV0IGlzIHZlcnNpb24gJS4yNTBzLlxuIgorbXNnc3RyICIgICUuMjUwcyBqZSByb3piYWxlbiwgYWxlIGplIHZlcnplICUuMjUwcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjM0MworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBsYXRlc3QgY29uZmlndXJlZCB2ZXJzaW9uIGlzICUuMjUwcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgcG9zbGVkbsOtIHprb25maWd1cm92YW7DoSB2ZXJ6ZSBqZSAlLjI1MHMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozNTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgJXMuXG4iCittc2dzdHIgIiAgJS4yNTBzIGplICVzLlxuIgorCisjOiBzcmMvZGVwY29uLmM6Mzg4CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBidXQgaXMgdG8gYmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMgcG9za3l0dWplICUuMjUwcywgYWxlIGJ1ZGUgb2RzdHJhbsSbbi5cbiIKKworIzogc3JjL2RlcGNvbi5jOjM5MgorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYnV0IGlzIHRvIGJlIGRlY29uZmlndXJlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMgcG9za3l0dWplICUuMjUwcywgYWxlIGJ1ZGUgZGVrb25maWd1cm92w6FuLlxuIgorCisjOiBzcmMvZGVwY29uLmM6NDAxCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBidXQgaXMgJXMuXG4iCittc2dzdHIgIiAgJS4yNTBzIHBvc2t5dHVqZSAlLjI1MHMsIGFsZSBqZSAlcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjQxNQorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIgJTI1MHMgbmVuw60gbmFpbnN0YWxvdsOhbi5cbiIKKworIzogc3JjL2RlcGNvbi5jOjQ0MworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyAodmVyc2lvbiAlLjI1MHMpIGlzIHRvIGJlIGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMgKHZlcnplICUuMjUwcykgYnVkZSBuYWluc3RhbG92w6FuLlxuIgorCisjOiBzcmMvZGVwY29uLmM6NDY4CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzICh2ZXJzaW9uICUuMjUwcykgaXMgcHJlc2VudCBhbmQgJXMuXG4iCittc2dzdHIgIiAgJS4yNTBzICh2ZXJ6ZSAlLjI1MHMpIGplIHDFmcOtdG9tbsO9IGEgJXMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGFuZCBpcyB0byBiZSBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIHBvc2t5dHVqZSAlLjI1MHMgYSBidWRlIG5haW5zdGFsb3bDoW4uXG4iCisKKyM6IHNyYy9kZXBjb24uYzo1MzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGFuZCBpcyBwcmVzZW50IGFuZCAlcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgcG9za3l0dWplICUuMjUwcyBhIGplIHDFmcOtdG9tbsO9IGEgJXMuXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MAorIywgZnV6enkKKyN8IG1zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IHF1ZXJ5aW5nIHBhY2thZ2VzLiIKK21zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IGRpdmVydGluZyBmaWxlcy4iCittc2dzdHIgIlBybyBuw6Fwb3bEm2R1IG8gZG90YXpvdsOhbsOtIHNlIG5hIGJhbMOta3kgcG91xb5panRlIC0taGVscC4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo2NiBzcmMvc3RhdGNtZC5jOjU3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo4MAorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gJXMgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiRGViaWFuICVzIHZlcnplICVzLlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLlxuIgorIkNvcHlyaWdodCAoQykgMjAxMCBHdWlsbGVtIEpvdmVyLlxuIgorbXNnc3RyICIiCisiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDEwIEd1aWxsZW0gSm92ZXIuXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo3NSBzcmMvbWFpbi5jOjYzIHNyYy9xdWVyeWNtZC5jOjYwMyBzcmMvc3RhdGNtZC5jOjY1CisjOiBzcmMvdHJpZ2NtZC5jOjU1IGRwa2ctZGViL21haW4uYzo1NyBkcGtnLXNwbGl0L21haW4uYzo1MQorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjg5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAyIG9yXG4iCisibGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuXG4iCittc2dzdHIgIiIKKyJUb3RvIGplIHN2b2JvZG7DvSBzb2Z0d2FyZTsgcG9kcm9ibm9zdGkgbyBwb2Rtw61ua8OhY2gga29ww61yb3bDoW7DrSBuYWxlem5ldGVcbiIKKyJ2IE9iZWNuw6kgdmXFmWVqbsOpIGxpY2VuY2kgR05VIChHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSkgdmVyemUgMiBuZWJvXG4iCisicG96ZMSbasWhw60uIFRvdG8gcHJvZ3JhbW92w6kgdnliYXZlbsOtIGplIGFic29sdXRuxJsgYmV6IHrDoXJ1a3kuXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo4NyBzcmMvbWFpbi5jOjgxIHNyYy9xdWVyeWNtZC5jOjYxNSBzcmMvc3RhdGNtZC5jOjc3CisjOiBkcGtnLWRlYi9tYWluLmM6NjkgZHBrZy1zcGxpdC9tYWluLmM6NjMgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjk3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gPGNvbW1hbmQ+XG4iCisiXG4iCittc2dzdHIgIiIKKyJQb3XFvml0w606ICVzIFs8dm9sYmE+IOKApl0gPHDFmcOta2F6PlxuIgorIlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6OTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgWy0tYWRkXSA8ZmlsZT4gICAgICAgICAgIGFkZCBhIGRpdmVyc2lvbi5cbiIKKyIgIC0tcmVtb3ZlIDxmaWxlPiAgICAgICAgICByZW1vdmUgdGhlIGRpdmVyc2lvbi5cbiIKKyIgIC0tbGlzdCBbPGdsb2ItcGF0dGVybj5dICBzaG93IGZpbGUgZGl2ZXJzaW9ucy5cbiIKKyIgIC0tbGlzdHBhY2thZ2UgPGZpbGU+ICAgICBzaG93IHdoYXQgcGFja2FnZSBkaXZlcnRzIHRoZSBmaWxlLlxuIgorIiAgLS10cnVlbmFtZSA8ZmlsZT4gICAgICAgIHJldHVybiB0aGUgZGl2ZXJ0ZWQgZmlsZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIlDFmcOta2F6eTpcbiIKKyIgIFstLWFkZF0gPHNvdWJvcj4gICAgICAgICBwxZlpZMOhIG9ka2xvbsSbbsOtXG4iCisiICAtLXJlbW92ZSA8c291Ym9yPiAgICAgICAgb2RzdHJhbsOtIG9ka2xvbsSbbsOtXG4iCisiICAtLWxpc3QgWzx2em9yLWdsb2I+XSAgICAgem9icmF6w60gb2RrbG9uxJtuw60gc291Ym9ydVxuIgorIiAgLS1saXN0cGFja2FnZSA8c291Ym9yPiAgIHpvYnJhesOtIGJhbMOtaywga3RlcsO9IG9ka2xvbmlsIHNvdWJvclxuIgorIiAgLS10cnVlbmFtZSA8c291Ym9yPiAgICAgIHZyw6F0w60gb2RrbG9uxJtuw70gc291Ym9yXG4iCisiXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoxMDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLXBhY2thZ2UgPHBhY2thZ2U+ICAgICAgbmFtZSBvZiB0aGUgcGFja2FnZSB3aG9zZSBjb3B5IG9mIDxmaWxlPiB3aWxsICIKKyJub3RcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJlIGRpdmVydGVkLlxuIgorIiAgLS1sb2NhbCAgICAgICAgICAgICAgICAgIGFsbCBwYWNrYWdlcycgdmVyc2lvbnMgYXJlIGRpdmVydGVkLlxuIgorIiAgLS1kaXZlcnQgPGRpdmVydC10bz4gICAgIHRoZSBuYW1lIHVzZWQgYnkgb3RoZXIgcGFja2FnZXMnIHZlcnNpb25zLlxuIgorIiAgLS1yZW5hbWUgICAgICAgICAgICAgICAgIGFjdHVhbGx5IG1vdmUgdGhlIGZpbGUgYXNpZGUgKG9yIGJhY2spLlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIHNldCB0aGUgZGlyZWN0b3J5IHdpdGggdGhlIGRpdmVyc2lvbnMgZmlsZS5cbiIKKyIgIC0tdGVzdCAgICAgICAgICAgICAgICAgICBkb24ndCBkbyBhbnl0aGluZywganVzdCBkZW1vbnN0cmF0ZS5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBxdWlldCBvcGVyYXRpb24sIG1pbmltYWwgb3V0cHV0LlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIlZvbGJ5OlxuIgorIiAgLS1wYWNrYWdlIDxiYWzDrWs+ICAgICAgICBqbcOpbm8gYmFsw61rdSwgamVob8W+IGtvcGllIDxzb3Vib3J1PiBuZWJ1ZGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9ka2xvbsSbbmFcbiIKKyIgIC0tbG9jYWwgICAgICAgICAgICAgICAgICBvZGtsb27Em255IGJ1ZG91IHbFoWVjaG55IHZlcnplIGJhbMOta3VcbiIKKyIgIC0tZGl2ZXJ0IDxrYW0tb2RrbG9uaXQ+ICBqbcOpbm8gcG91xb7DrXZhbsOpIG9zdGF0bsOtbWkgdmVyemVtaSBiYWzDrWt1XG4iCisiICAtLXJlbmFtZSAgICAgICAgICAgICAgICAgc2t1dGXEjW7EmyBwxZllc3VuZSBzb3Vib3IgZG8gw7pzdHJhbsOtIChuZWJvIHpwxJt0KVxuIgorIiAgLS1hZG1pbmRpciA8YWRyZXPDocWZPiAgICAgdXLEjcOtIGFkcmVzw6HFmSBzZSBzb3Vib3JlbSBkaXZlcnNpb25zXG4iCisiICAtLXRlc3QgICAgICAgICAgICAgICAgICAgbmljIG5lcHJvdsOhZMOtLCBwb3V6ZSBzaW11bHVqZVxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHRpY2jDvSByZcW+aW0sIG1pbmltw6FsbsOtIHbDvXN0dXBcbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICB6b2JyYXrDrSB0dXRvIG7DoXBvdsSbZHVcbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICB6b2JyYXrDrSB2ZXJ6aVxuIgorIlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJXaGVuIGFkZGluZywgZGVmYXVsdCBpcyAtLWxvY2FsIGFuZCAtLWRpdmVydCA8b3JpZ2luYWw+LmRpc3RyaWIuXG4iCisiV2hlbiByZW1vdmluZywgLS1wYWNrYWdlIG9yIC0tbG9jYWwgYW5kIC0tZGl2ZXJ0IG11c3QgbWF0Y2ggaWYgc3BlY2lmaWVkLlxuIgorIlBhY2thZ2UgcHJlaW5zdC9wb3N0cm0gc2NyaXB0cyBzaG91bGQgYWx3YXlzIHNwZWNpZnkgLS1wYWNrYWdlIGFuZCAtLSIKKyJkaXZlcnQuXG4iCittc2dzdHIgIiIKKyJVIHDFmWlkw6Fuw60gamUgdsO9Y2hvesOtIC0tbG9jYWwgYSAtLWRpdmVydCA8b3JpZ2luYWw+LmRpc3RyaWIuXG4iCisiUMWZaSBvZHN0cmFuxJtuw60gbXVzw60gb2Rwb3bDrWRhdCAtLXBhY2thZ2UgbmVibyAtLWxvY2FsIGEgLS1kaXZlcnRcbiIKKyIoanNvdS1saSBwb3XFvml0eSkuXG4iCisiUMWZZWQvcG9pbnN0YWxhxI1uw60gc2tyaXB0eSBiYWzDrWt1IGJ5IG3Em2x5IHbFvmR5IHBvdcW+w612YXQgLS1wYWNrYWdlIGEgLS0iCisiZGl2ZXJ0LlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MTY4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNoZWNraW5nICclcyciCittc2dzdHIgImNoeWJhIHDFmWkga29udHJvbGUg4oCeJXPigJwiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInJlbmFtZSBpbnZvbHZlcyBvdmVyd3JpdGluZyBgJXMnIHdpdGhcbiIKKyIgIGRpZmZlcmVudCBmaWxlIGAlcycsIG5vdCBhbGxvd2VkIgorbXNnc3RyICIiCisicMWZZWptZW5vdsOhbsOtIHpuYW1lbsOhIHDFmWVwc8OhbsOtIOKAniVz4oCcXG4iCisiICBzb3Vib3JlbSDigJ4lc+KAnCwgY2/FviBuZW7DrSBwb3ZvbGVubyIKKworIzogc3JjL2RpdmVydGNtZC5jOjIyMyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTM3MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHdyaXRlIGZpbGUgJyVzJyIKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGZpbGUgJyVzJyIKK21zZ3N0ciAibmVsemUgemFwc2F0IHNvdWJvciDigJ4lc+KAnCIKKworIzogc3JjL2RpdmVydGNtZC5jOjIyNworbXNnaWQgImZpbGUgY29weSIKK21zZ3N0ciAia29waWUgc291Ym9ydSIKKworIzogc3JjL2RpdmVydGNtZC5jOjIzOQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVuYW1lICclcycgdG8gJyVzJyIKK21zZ3N0ciAibmVsemUgcMWZZWptZW5vdmF0IOKAniVz4oCcIG5hIOKAniVz4oCcIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjUyCisjLCBjLWZvcm1hdAorbXNnaWQgInJlbmFtZTogcmVtb3ZlIGR1cGxpY2F0ZSBvbGQgbGluayAnJXMnIgorbXNnc3RyICJwxZllam1lbm92w6Fuw606IG9kc3RyYW7Em27DrSBkdXBsaWNpdG7DrWhvIHN0YXLDqWhvIG9ka2F6dSDigJ4lc+KAnCIKKworIzogc3JjL2RpdmVydGNtZC5jOjI2MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIG9wZW4gc291cmNlIGZpbGUgYCUuMjUwcyciCittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBjb3BpZWQgc291cmNlIGZpbGUgJyVzJyIKK21zZ3N0ciAibmVsemUgb3RldsWZw610IHpkcm9qb3bDvSBzb3Vib3Ig4oCeJS4yNTBz4oCcIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mjg0CisjLCBjLWZvcm1hdAorbXNnaWQgImxvY2FsIGRpdmVyc2lvbiBvZiAlcyIKK21zZ3N0ciAibG9rw6FsbsOtIG9ka2xvbsSbbsOtICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mjg2CisjLCBjLWZvcm1hdAorbXNnaWQgImxvY2FsIGRpdmVyc2lvbiBvZiAlcyB0byAlcyIKK21zZ3N0ciAibG9rw6FsbsOtIG9ka2xvbsSbbsOtICVzIGRvICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjkwCisjLCBjLWZvcm1hdAorbXNnaWQgImRpdmVyc2lvbiBvZiAlcyBieSAlcyIKK21zZ3N0ciAib2RrbG9uxJtuw60gJXMgYmFsw61rZW0gJXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJzaW9uIG9mICVzIHRvICVzIGJ5ICVzIgorbXNnc3RyICJvZGtsb27Em27DrSAlcyBkbyAlcyBiYWzDrWtlbSAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjMwOQorIywgYy1mb3JtYXQKK21zZ2lkICJhbnkgZGl2ZXJzaW9uIG9mICVzIgorbXNnc3RyICJsaWJvdm9sbsOpIG9ka2xvbsSbbsOtICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MzExCisjLCBjLWZvcm1hdAorbXNnaWQgImFueSBkaXZlcnNpb24gb2YgJXMgdG8gJXMiCittc2dzdHIgImxpYm92b2xuw6kgb2RrbG9uxJtuw60gJXMgZG8gJXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGNyZWF0ZSBuZXcgJXMgZmlsZSIKK21zZ3N0ciAibmVsemUgdnl0dm/FmWl0IG5vdsO9IHNvdWJvciAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjM3NSBzcmMvc3RhdGNtZC5jOjIxNSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTQwNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggZmlsZSAnJXMnIgorbXNnc3RyICJuZWx6ZSB2eXByw6F6ZG5pdCBzb3Vib3Ig4oCeJXPigJwiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozODIKK21zZ2lkICJlcnJvciByZW1vdmluZyBvbGQgZGl2ZXJzaW9ucy1vbGQiCittc2dzdHIgImNoeWJhIHDFmWkgb2RzdHJhbsSbbsOtIHN0YXLDqWhvIHNvdWJvcnUgZGl2ZXJzaW9ucy1vbGQiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozODQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBuZXcgZGl2ZXJzaW9ucy1vbGQiCittc2dzdHIgImNoeWJhIHDFmWkgdnl0dsOhxZllbsOtIHNvdWJvcnUgc3RhdG92ZXJyaWRlLW9sZCIKKworIzogc3JjL2RpdmVydGNtZC5jOjM4NgorbXNnaWQgImVycm9yIGluc3RhbGxpbmcgbmV3IGRpdmVyc2lvbnMiCittc2dzdHIgImNoeWJhIHDFmWkgaW5zdGFsYWNpIG5vdsO9Y2ggb2RrbG9uxJtuw60iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MDYgc3JjL2RpdmVydGNtZC5jOjUwMyBzcmMvZGl2ZXJ0Y21kLmM6NjEwCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjMwIHNyYy9zdGF0Y21kLmM6MjkwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSBzaW5nbGUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMgdnnFvmFkdWplIGplZGVuIGFyZ3VtZW50IgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDA5IHNyYy9kaXZlcnRjbWQuYzo0MzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZW5hbWUgXCIlc1wiIGlzIG5vdCBhYnNvbHV0ZSIKK21zZ3N0ciAibsOhemV2IHNvdWJvcnUg4oCeJXPigJwgbmVuw60gYWJzb2x1dG7DrSIKKworIzogc3JjL2RpdmVydGNtZC5jOjQxMSBzcmMvc3RhdGNtZC5jOjI0OQorbXNnaWQgImZpbGUgbWF5IG5vdCBjb250YWluIG5ld2xpbmVzIgorbXNnc3RyICJzb3Vib3IgbmVzbcOtIG9ic2Fob3ZhdCB6bmFreSBub3bDqWhvIMWZw6Fka3UiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MTgKK21zZ2lkICJDYW5ub3QgZGl2ZXJ0IGRpcmVjdG9yaWVzIgorbXNnc3RyICJOZWx6ZSBvZGtsb25pdCBhZHJlc8OhxZkiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGRpdmVydCBmaWxlICclcycgdG8gaXRzZWxmIgorbXNnc3RyICJuZWx6ZSBvZGtsb25pdCBzb3Vib3Ig4oCeJXPigJwgc8OhbSBuYSBzZWJlIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDUzCisjLCBjLWZvcm1hdAorbXNnaWQgIkxlYXZpbmcgJyVzJ1xuIgorbXNnc3RyICJPcG91xaF0w61tIOKAniVz4oCcXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBjbGFzaGVzIHdpdGggYCVzJyIKK21zZ3N0ciAi4oCeJXPigJwga29saWR1amUgcyDigJ4lc+KAnCIKKworIzogc3JjL2RpdmVydGNtZC5jOjQ4MQorIywgYy1mb3JtYXQKK21zZ2lkICJBZGRpbmcgJyVzJ1xuIgorbXNnc3RyICJQxZlpZMOhdsOhbSDigJ4lc+KAnFxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTEwCisjLCBjLWZvcm1hdAorbXNnaWQgIk5vIGRpdmVyc2lvbiAnJXMnLCBub25lIHJlbW92ZWQuXG4iCittc2dzdHIgIk9ka2xvbsSbbsOtIOKAniVz4oCcIG5lZXhpc3R1amUsIHRlZHkgbmVieWxvIG9kc3RyYW7Em25vXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm1pc21hdGNoIG9uIGRpdmVydC10b1xuIgorIiAgd2hlbiByZW1vdmluZyBgJXMnXG4iCisiICBmb3VuZCBgJXMnIgorbXNnc3RyICIiCisibmVzaG9kYSB2IGthbS1vZGtsb25pdFxuIgorIiAgcMWZaSBvZHN0cmHFiG92w6Fuw60g4oCeJXPigJxcbiIKKyIgIG5hbGV6ZW5vIOKAniVz4oCcIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJtaXNtYXRjaCBvbiBwYWNrYWdlXG4iCisiICB3aGVuIHJlbW92aW5nIGAlcydcbiIKKyIgIGZvdW5kIGAlcyciCittc2dzdHIgIiIKKyJuZXNob2RhIHYgYmFsw61rdVxuIgorIiAgcMWZaSBvZHN0cmHFiG92w6Fuw60g4oCeJXPigJxcbiIKKyIgIG5hbGV6ZW4g4oCeJXPigJwiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVtb3ZpbmcgJyVzJ1xuIgorbXNnc3RyICJPZHN0cmHFiHVqaSDigJ4lc+KAnFxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjU3Cittc2dpZCAicGFja2FnZSBtYXkgbm90IGNvbnRhaW4gbmV3bGluZXMiCittc2dzdHIgImptw6lubyBiYWzDrWt1IG5lbcWvxb5lIG9ic2Fob3ZhdCB6bmFrIG5vdsOpaG8gxZnDoWRrdSIKKworIzogc3JjL2RpdmVydGNtZC5jOjY2NgorbXNnaWQgImRpdmVydC10byBtYXkgbm90IGNvbnRhaW4gbmV3bGluZXMiCittc2dzdHIgImthbS1vZGtsb25pdCBuZW3Fr8W+ZSBvYnNhaG92YXQgem5hayBub3bDqWhvIMWZw6Fka3UiCisKKyM6IHNyYy9kaXZlcnRkYi5jOjY0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gZGl2ZXJzaW9ucyBmaWxlIgorbXNnc3RyICJuZWx6ZSBvdGV2xZnDrXQgc291Ym9yIHMgb2RzdW55IgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzo3MQorbXNnaWQgImZhaWxlZCB0byBmc3RhdCBwcmV2aW91cyBkaXZlcnNpb25zIGZpbGUiCittc2dzdHIgIm5lbHplIGZzdGF0IHDFmWVkY2hvesOtIG9kc3VudXTDvSBzb3Vib3IiCisKKyM6IHNyYy9kaXZlcnRkYi5jOjczCittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGRpdmVyc2lvbnMgZmlsZSIKK21zZ3N0ciAibmVsemUgZnN0YXQgb2RzdW51dMO9IHNvdWJvciIKKworIzogc3JjL2RpdmVydGRiLmM6MTEzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZsaWN0aW5nIGRpdmVyc2lvbnMgaW52b2x2aW5nIGAlLjI1MHMnIG9yIGAlLjI1MHMnIgorbXNnc3RyICJvZHN1bnkg4oCeJS4yNTBz4oCcIGEg4oCeJS4yNTBz4oCcIHYga29uZmxpa3R1IgorCisjOiBzcmMvZW5xdWlyeS5jOjczCittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgYXJlIGluIGEgbWVzcyBkdWUgdG8gc2VyaW91cyBwcm9ibGVtcyBkdXJpbmdcbiIKKyJpbnN0YWxsYXRpb24uICBUaGV5IG11c3QgYmUgcmVpbnN0YWxsZWQgZm9yIHRoZW0gKGFuZCBhbnkgcGFja2FnZXNcbiIKKyJ0aGF0IGRlcGVuZCBvbiB0aGVtKSB0byBmdW5jdGlvbiBwcm9wZXJseTpcbiIKK21zZ3N0ciAiIgorIk7DoXNsZWR1asOtY8OtIGJhbMOta3kgc2UgYsSbaGVtIGluc3RhbGFjZSBkb3N0YWx5IGRvIHByb2Jsw6ltxa8uIEFieSB0eXRvIGJhbMOta3lcbiIKKyIoYSB2xaFlY2hueSBuYSBuaWNoIHrDoXZpc2zDqSkgcHJhY292YWx5IHNwcsOhdm7EmywgbXVzw60gYsO9dCBwxZllaW5zdGFsb3bDoW55OlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjgwCittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgaGF2ZSBiZWVuIHVucGFja2VkIGJ1dCBub3QgeWV0IGNvbmZpZ3VyZWQuXG4iCisiVGhleSBtdXN0IGJlIGNvbmZpZ3VyZWQgdXNpbmcgZHBrZyAtLWNvbmZpZ3VyZSBvciB0aGUgY29uZmlndXJlXG4iCisibWVudSBvcHRpb24gaW4gZHNlbGVjdCBmb3IgdGhlbSB0byB3b3JrOlxuIgorbXNnc3RyICIiCisiTsOhc2xlZHVqw61jw60gYmFsw61reSBieWx5IHJvemJhbGVueSwgYWxlIGplxaF0xJsgbmVieWx5IHprb25maWd1cm92w6FueS5cbiIKKyJUeXRvIGJhbMOta3kgbXVzw60gYsO9dCB6a29uZmlndXJvdsOhbnkgcG91xb5pdMOtbSBkcGtnIC0tY29uZmlndXJlIG5lYm8gdnlicsOhbsOtbVxuIgorInBvbG/Fvmt5IGtvbmZpZ3VyYWNlIHYgbWVudSBkc2VsZWN0dTpcbiIKKworIzogc3JjL2VucXVpcnkuYzo4NworbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBvbmx5IGhhbGYgY29uZmlndXJlZCwgcHJvYmFibHkgZHVlIHRvIHByb2JsZW1zXG4iCisiY29uZmlndXJpbmcgdGhlbSB0aGUgZmlyc3QgdGltZS4gIFRoZSBjb25maWd1cmF0aW9uIHNob3VsZCBiZSByZXRyaWVkIHVzaW5nXG4iCisiZHBrZyAtLWNvbmZpZ3VyZSA8cGFja2FnZT4gb3IgdGhlIGNvbmZpZ3VyZSBtZW51IG9wdGlvbiBpbiBkc2VsZWN0OlxuIgorbXNnc3RyICIiCisiTsOhc2xlZHVqw61jw60gYmFsw61reSBqc291IMSNw6FzdGXEjW7EmyBuYWtvbmZpZ3Vyb3bDoW55LCBwcmF2ZMSbcG9kb2JuxJsgZMOta3kgdG9tdSxcbiIKKyLFvmUgamUgYmFsw61rIGtvbmZpZ3Vyb3bDoW4gcG9wcnbDqS4gS29uZmlndXJhY2UgYnkgbcSbbGEgYsO9dCBvcGFrb3bDoW5hIHBvdcW+aXTDrW1cbiIKKyJkcGtnIC0tY29uZmlndXJlIDxiYWzDrWs+IG5lYm8gcG9sb8W+a291IGtvbmZpZ3VyYWNlIHYgcHJvZ3JhbXUgZHNlbGVjdDpcbiIKKworIzogc3JjL2VucXVpcnkuYzo5NAorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBvbmx5IGhhbGYgaW5zdGFsbGVkLCBkdWUgdG8gcHJvYmxlbXMgZHVyaW5nXG4iCisiaW5zdGFsbGF0aW9uLiAgVGhlIGluc3RhbGxhdGlvbiBjYW4gcHJvYmFibHkgYmUgY29tcGxldGVkIGJ5IHJldHJ5aW5nIGl0O1xuIgorInRoZSBwYWNrYWdlcyBjYW4gYmUgcmVtb3ZlZCB1c2luZyBkc2VsZWN0IG9yIGRwa2cgLS1yZW1vdmU6XG4iCittc2dzdHIgIiIKKyJOw6FzbGVkdWrDrWPDrSBiYWzDrWt5IGpzb3UgaW5zdGFsb3bDoW55IHBvdXplIMSNw6FzdGXEjW7EmywgZMOta3kgcHJvYmzDqW3Fr20gcMWZaVxuIgorImluc3RhbGFjaS4gUHJhdmTEm3BvZG9ibsSbIG3Fr8W+ZSBiw710IGluc3RhbGFjZSBkb2tvbsSNZW5hIGplasOtbSBvcGFrb3bDoW7DrW07XG4iCisiYmFsw61reSBtb2hvdSBiw710IG9kc3RyYW7Em255IHBvbW9jw60gcHJvZ3JhbXUgZHNlbGVjdCBuZWJvIGRwa2cgLS1yZW1vdmU6XG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTAxCittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgYXJlIGF3YWl0aW5nIHByb2Nlc3Npbmcgb2YgdHJpZ2dlcnMgdGhhdCB0aGV5XG4iCisiaGF2ZSBhY3RpdmF0ZWQgaW4gb3RoZXIgcGFja2FnZXMuICBUaGlzIHByb2Nlc3NpbmcgY2FuIGJlIHJlcXVlc3RlZCB1c2luZ1xuIgorImRzZWxlY3Qgb3IgZHBrZyAtLWNvbmZpZ3VyZSAtLXBlbmRpbmcgKG9yIGRwa2cgLS10cmlnZ2Vycy1vbmx5KTpcbiIKK21zZ3N0ciAiIgorIk7DoXNsZWR1asOtY8OtIGJhbMOta3kgb8SNZWvDoXZhasOtIHpwcmFjb3bDoW7DrSBzcG91xaF0xJvEjcWvLCBrdGVyw6kgYWt0aXZvdmFsaVxuIgorInYgb3N0YXRuw61jaCBiYWzDrWPDrWNoLiBUb3RvIHpwcmFjb3bDoW7DrSBsemUgdnnFvsOhZGF0IHBvbW9jw60gZHNlbGVjdHVcbiIKKyJuZWJvIHDFmcOta2F6ZW0gZHBrZyAtLWNvbmZpZ3VyZSAtLXBlbmRpbmcgKHJlc3AuIGRwa2cgLS10cmlnZ2Vycy1vbmx5KTpcbiIKKworIzogc3JjL2VucXVpcnkuYzoxMDgKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBoYXZlIGJlZW4gdHJpZ2dlcmVkLCBidXQgdGhlIHRyaWdnZXIgcHJvY2Vzc2luZ1xuIgorImhhcyBub3QgeWV0IGJlZW4gZG9uZS4gIFRyaWdnZXIgcHJvY2Vzc2luZyBjYW4gYmUgcmVxdWVzdGVkIHVzaW5nXG4iCisiZHNlbGVjdCBvciBkcGtnIC0tY29uZmlndXJlIC0tcGVuZGluZyAob3IgZHBrZyAtLXRyaWdnZXJzLW9ubHkpOlxuIgorbXNnc3RyICIiCisiTsOhc2xlZHVqw61jw60gYmFsw61reSBjaHTEm2rDrSB6cHJhY292YXQgYWt0aXZvdmFuw6kgc3BvdcWhdMSbxI1lLCBhbGUga2VcbiIKKyJ6cHJhY292w6Fuw60gemF0w61tIG5lZG/FoWxvLiBUb3RvIHpwcmFjb3bDoW7DrSBsemUgdnnFvsOhZGF0IHBvbW9jw60gZHNlbGVjdHVcbiIKKyJuZWJvIHDFmcOta2F6ZW0gZHBrZyAtLWNvbmZpZ3VyZSAtLXBlbmRpbmcgKHJlc3AuIGRwa2cgLS10cmlnZ2Vycy1vbmx5KTpcbiIKKworIzogc3JjL2VucXVpcnkuYzoxMzcgc3JjL2VucXVpcnkuYzoyMTEgc3JjL2VucXVpcnkuYzoyOTIgc3JjL2VucXVpcnkuYzozNzMKKyM6IHNyYy9lbnF1aXJ5LmM6NDYwIHNyYy9zZWxlY3QuYzo5OCBzcmMvc2VsZWN0LmM6MTY0IHNyYy90cmlnY21kLmM6MTk5CisjOiBzcmMvdXBkYXRlLmM6NDggc3JjL3VwZGF0ZS5jOjExMyBkcGtnLXNwbGl0L3F1ZXVlLmM6MjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgbm8gYXJndW1lbnRzIgorbXNnc3RyICItLSVzIG11c8OtIGLDvXQgemFkw6FuIGJleiBhcmd1bWVudHUiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTUyCittc2dpZCAiIgorIkFub3RoZXIgcHJvY2VzcyBoYXMgbG9ja2VkIHRoZSBkYXRhYmFzZSBmb3Igd3JpdGluZywgYW5kIG1pZ2h0IGN1cnJlbnRseSBiZVxuIgorIm1vZGlmeWluZyBpdCwgc29tZSBvZiB0aGUgZm9sbG93aW5nIHByb2JsZW1zIG1pZ2h0IGp1c3QgYmUgZHVlIHRvIHRoYXQuXG4iCittc2dzdHIgIiIKKyJKaW7DvSBwcm9jZXMgc2kgemFta251bCBkYXRhYsOhemkgcHJvIHrDoXBpcyBhIG1vxb5uw6EgamkgcHLDoXbEmyBtxJtuw60uXG4iCisiTsSba3RlcsOpIHogbsOhc2xlZHVqw61jw61jaCBwcm9ibMOpbcWvIG1vaG91IGLDvXQgenDFr3NvYmVueSBwcsOhdsSbIHTDrW10by5cbiIKKworIzogc3JjL2VucXVpcnkuYzoxOTEKKyMsIGZ1enp5CisjfCBtc2dpZCAiPHVua25vd24+IgorbXNnY3R4dCAic2VjdGlvbiIKK21zZ2lkICI8dW5rbm93bj4iCittc2dzdHIgIjxuZXpuw6Ftbz4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MjUxCisjLCBjLWZvcm1hdAorbXNnaWQgIiAlZCBpbiAlczogIgorbXNnc3RyICIgJWQgdiAlczogIgorCisjOiBzcmMvZW5xdWlyeS5jOjI2NgorIywgYy1mb3JtYXQKK21zZ2lkICIgJWQgcGFja2FnZSwgZnJvbSB0aGUgZm9sbG93aW5nIHNlY3Rpb246IgorbXNnaWRfcGx1cmFsICIgJWQgcGFja2FnZXMsIGZyb20gdGhlIGZvbGxvd2luZyBzZWN0aW9uczoiCittc2dzdHJbMF0gIiAlZCBiYWzDrWsgeiBuw6FzbGVkdWrDrWPDrSBzZWtjZToiCittc2dzdHJbMV0gIiAlZCBiYWzDrWt5IHogbsOhc2xlZHVqw61jw61jaCBzZWtjw606IgorbXNnc3RyWzJdICIgJWQgYmFsw61rxa8geiBuw6FzbGVkdWrDrWPDrWNoIHNla2PDrToiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzA1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJWZXJzaW9uIG9mIGRwa2cgd2l0aCB3b3JraW5nICVzIHN1cHBvcnQgbm90IHlldCBjb25maWd1cmVkLlxuIgorIiBQbGVhc2UgdXNlICdkcGtnIC0tY29uZmlndXJlIGRwa2cnLCBhbmQgdGhlbiB0cnkgYWdhaW4uXG4iCittc2dzdHIgIiIKKyJWZXJ6ZSBkcGtnIHMgZnVua8SNbsOtIHBvZHBvcm91IHBybyAlcyBqZcWhdMSbIG5lbsOtIHprb25maWd1cm92w6FuYS5cbiIKKyIgUG91xb5panRlIHByb3PDrW0g4oCeZHBrZyAtLWNvbmZpZ3VyZSBkcGtn4oCcIGEgcG90b20gem9wYWt1anRlXG4iCisiIHRlbnRvIHDFmcOta2F6LlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjMxMAorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnIG5vdCByZWNvcmRlZCBhcyBpbnN0YWxsZWQsIGNhbm5vdCBjaGVjayBmb3IgJXMgc3VwcG9ydCFcbiIKK21zZ3N0ciAiIgorImRwa2cgbmVuw60gdXZlZGVubyBqYWtvIG5haW5zdGFsb3ZhbsOpLCBuZWx6ZSB6a29udHJvbG92YXQgcG9kcG9ydSBwcm8gJXMhXG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzIxCittc2dpZCAiUHJlLURlcGVuZHMgZmllbGQiCittc2dzdHIgInBvbGUgUHJlLURlcGVuZHMiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzI5Cittc2dpZCAiZXBvY2giCittc2dzdHIgImVwb2NoIgorCisjOiBzcmMvZW5xdWlyeS5jOjMzNworbXNnaWQgImxvbmcgZmlsZW5hbWVzIgorbXNnc3RyICJkbG91aMOhIGptw6luYSBzb3Vib3LFryIKKworIzogc3JjL2VucXVpcnkuYzozNDYKK21zZ2lkICJtdWx0aXBsZSBDb25mbGljdHMgYW5kIFJlcGxhY2VzIgorbXNnc3RyICJ2w61jZSBDb25mbGljdHMgYSBSZXBsYWNlcyIKKworIzogc3JjL2VucXVpcnkuYzo0MzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IGNhbm5vdCBzZWUgaG93IHRvIHNhdGlzZnkgcHJlLWRlcGVuZGVuY3k6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKyJkcGtnOiBuZXR1xaHDrW0gamFrIHNwbG5pdCBwxZllZC16w6F2aXNsb3N0OlxuIgorIiAlc1xuIgorCisjOiBzcmMvZW5xdWlyeS5jOjQzNQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc2F0aXNmeSBwcmUtZGVwZW5kZW5jaWVzIGZvciAlLjI1MHMgKHdhbnRlZCBkdWUgdG8gJS4yNTBzKSIKK21zZ3N0ciAibmVsemUgc3Bsbml0IHDFmWVkLXrDoXZpc2xvc3RpIHBybyAlLjI1MHMgKHZ5xb5hZG92w6FubyBwcm8gJS4yNTBzKSIKKworIzogc3JjL2VucXVpcnkuYzo0NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAib2Jzb2xldGUgb3B0aW9uICctLSVzJywgcGxlYXNlIHVzZSAnLS0lcycgaW5zdGVhZC4iCittc2dzdHIgInphc3RhcmFsw6Egdm9sYmEgYC0tJXMnLCBwb3XFvmlqdGUgbcOtc3RvIG7DrSAnLS0lcycuIgorCisjOiBzcmMvZW5xdWlyeS5jOjUxOQorbXNnaWQgIiIKKyItLWNvbXBhcmUtdmVyc2lvbnMgdGFrZXMgdGhyZWUgYXJndW1lbnRzOiA8dmVyc2lvbj4gPHJlbGF0aW9uPiA8dmVyc2lvbj4iCittc2dzdHIgIi0tY29tcGFyZS12ZXJzaW9uIHZ5xb5hZHVqZSB0xZlpIHBhcmFtZXRyeTogPHZlcnplPiA8dnp0YWg+IDx2ZXJ6ZT4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6NTI0Cittc2dpZCAiLS1jb21wYXJlLXZlcnNpb25zIGJhZCByZWxhdGlvbiIKK21zZ3N0ciAiLS1jb21wYXJlLXZlcnNpb25zIMWhcGF0bsOhIHJlbGFjZSIKKworIzogc3JjL2VucXVpcnkuYzo1Mjkgc3JjL2VucXVpcnkuYzo1MzEgc3JjL2VucXVpcnkuYzo1NDAgc3JjL2VucXVpcnkuYzo1NDIKKyMsIGMtZm9ybWF0Cittc2dpZCAidmVyc2lvbiAnJXMnIGhhcyBiYWQgc3ludGF4OiAlcyIKK21zZ3N0ciAidmVyemUg4oCeJXPigJwgbcOhIMWhcGF0bm91IHN5bnRheGk6ICVzIgorCisjOiBzcmMvZXJyb3JzLmM6NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBlcnJvciBwcm9jZXNzaW5nICVzICgtLSVzKTpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorIiVzOiBjaHliYSBwxZlpIHpwcmFjb3bDoXbDoW7DrSAlcyAoLS0lcyk6XG4iCisiICVzXG4iCisKKyM6IHNyYy9lcnJvcnMuYzo2OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgImRwa2c6IGZhaWxlZCB0byBhbGxvY2F0ZSBtZW1vcnkgZm9yIG5ldyBlbnRyeSBpbiBsaXN0IG9mIGZhaWxlZCBwYWNrYWdlcy4iCittc2dpZCAiIgorIiVzOiBmYWlsZWQgdG8gYWxsb2NhdGUgbWVtb3J5IGZvciBuZXcgZW50cnkgaW4gbGlzdCBvZiBmYWlsZWQgcGFja2FnZXM6ICVzIgorbXNnc3RyICIiCisiZHBrZzogbmVwb2RhxZlpbG8gc2UgYWxva292YXQgcGFtxJvFpSBwcm8gbm92b3UgcG9sb8W+a3UgdiBzZXpuYW11IGJhbMOta8WvLCAiCisiamVqaWNoxb5cbiIKKyIgaW5zdGFsYWNlIHNlIG5lcG9kYcWZaWxhLiIKKworIzogc3JjL2Vycm9ycy5jOjc5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJkcGtnOiB0b28gbWFueSBlcnJvcnMsIHN0b3BwaW5nXG4iCittc2dpZCAiJXM6IHRvbyBtYW55IGVycm9ycywgc3RvcHBpbmdcbiIKK21zZ3N0ciAiZHBrZzogcMWZw61sacWhIG1ub2hvIGNoeWIsIGtvbsSNw61tXG4iCisKKyM6IHNyYy9lcnJvcnMuYzo4NworbXNnaWQgIkVycm9ycyB3ZXJlIGVuY291bnRlcmVkIHdoaWxlIHByb2Nlc3Npbmc6XG4iCittc2dzdHIgIlDFmWkgenByYWNvdsOhbsOtIG5hc3RhbHkgY2h5Ynk6XG4iCisKKyM6IHNyYy9lcnJvcnMuYzo5NAorbXNnaWQgIlByb2Nlc3Npbmcgd2FzIGhhbHRlZCBiZWNhdXNlIHRoZXJlIHdlcmUgdG9vIG1hbnkgZXJyb3JzLlxuIgorbXNnc3RyICJacHJhY292w6Fuw60gemFzdGF2ZW5vLCBwcm90b8W+ZSBkb8WhbG8gayBwxZnDrWxpxaEgbW5vaGEgY2h5YsOhbS5cbiIKKworIzogc3JjL2Vycm9ycy5jOjEwNQorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlICVzIHdhcyBvbiBob2xkLCBwcm9jZXNzaW5nIGl0IGFueXdheSBhcyB5b3UgcmVxdWVzdGVkXG4iCittc2dzdHIgIiIKKyJCYWzDrWsgJXMgYnlsIHZlIHN0YXZ1IGhvbGQsIGFsZSBwxZllc3RvIGJ1ZGUgcHJvdmVkZW5hIHBvxb5hZG92YW7DoSBha2NlXG4iCisKKyM6IHNyYy9lcnJvcnMuYzoxMDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlBhY2thZ2UgJXMgaXMgb24gaG9sZCwgbm90IHRvdWNoaW5nIGl0LiAgVXNlIC0tZm9yY2UtaG9sZCB0byBvdmVycmlkZS5cbiIKK21zZ3N0ciAiIgorIkJhbMOtayAlcyBqZSB2ZSBzdGF2dSBob2xkLCBwb25lY2jDoXbDoW0uIEsgdnludWNlbsOtIHBvdcW+aWp0ZSAtLWZvcmNlLWhvbGQuXG4iCisKKyM6IHNyYy9lcnJvcnMuYzoxMTkKK21zZ2lkICJvdmVycmlkaW5nIHByb2JsZW0gYmVjYXVzZSAtLWZvcmNlIGVuYWJsZWQ6IgorbXNnc3RyICJwb3RsYcSNdWppIHByb2Jsw6ltLCBwcm90b8W+ZSBqZSBuYXN0YXZlbm8gLS1mb3JjZToiCisKKyM6IHNyYy9maWxlc2RiLmM6MzA3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSBgJS4yNTBzJyIKK21zZ3N0ciAic2V6bmFtIHNvdWJvcsWvIGJhbMOta3Ug4oCeJS4yNTBz4oCcIG5lbHplIG90ZXbFmcOtdCIKKworIzogc3JjL2ZpbGVzZGIuYzozMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSBgJS4yNTBzJyBtaXNzaW5nLCBhc3N1bWluZyBwYWNrYWdlIGhhcyBubyBmaWxlcyAiCisiY3VycmVudGx5IGluc3RhbGxlZC4iCittc2dzdHIgIiIKKyJzZXpuYW0gc291Ym9yxa8gYmFsw61rdSDigJ4lLjI1MHPigJwgY2h5YsOtLCBwxZllZHBva2zDoWTDoW0sIMW+ZSBwcm9ncmFtIG5lbcOhICIKKyJuYWluc3RhbG92YW7DqSDFvsOhZG7DqSBzb3Vib3J5LiIKKworIzogc3JjL2ZpbGVzZGIuYzozMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICclLjI1MHMnIgorbXNnc3RyICJuZWx6ZSB6amlzdGl0IHN0YXYgc2V6bmFtdSBzb3Vib3LFryBiYWzDrWt1IOKAniUuMjUwc+KAnCIKKworIzogc3JjL2ZpbGVzZGIuYzozMzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGVzIGxpc3QgZm9yIHBhY2thZ2UgYCUuMjUwcyciCittc2dpZCAicmVhZGluZyBmaWxlcyBsaXN0IGZvciBwYWNrYWdlICclLjI1MHMnIgorbXNnc3RyICJzZXpuYW0gc291Ym9yxa8gYmFsw61rdSDigJ4lLjI1MHPigJwiCisKKyM6IHNyYy9maWxlc2RiLmM6MzM2CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAnJS4yNTBzJyBpcyBtaXNzaW5nIGZpbmFsIG5ld2xpbmUiCittc2dzdHIgInNlem5hbSBzb3Vib3LFryBiYWzDrWt1IOKAniUuMjUwc+KAnCBuZW9ic2FodWplIHrDoXbEm3JlxI1uw70gbm92w70gxZnDoWRlayIKKworIzogc3JjL2ZpbGVzZGIuYzozNDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlIGAlLjI1MHMnIGNvbnRhaW5zIGVtcHR5IGZpbGVuYW1lIgorbXNnc3RyICJzZXpuYW0gc291Ym9yxa8gYmFsw61rdSDigJ4lLjI1MHPigJwgb2JzYWh1amUgcHLDoXpkbsOpIGptw6lubyBzb3Vib3J1IgorCisjOiBzcmMvZmlsZXNkYi5jOjM1MgorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSBgJS4yNTBzJyIKK21zZ3N0ciAiY2h5YmEgcMWZaSB6YXbDrXLDoW7DrSBzZXpuYW11IHNvdWJvcsWvIHBybyBiYWzDrWsg4oCeJS4yNTBz4oCcIgorCisjOiBzcmMvZmlsZXNkYi5jOjQ2MgorbXNnaWQgIihSZWFkaW5nIGRhdGFiYXNlIC4uLiAiCittc2dzdHIgIijEjHR1IGRhdGFiw6F6aSDigKYgIgorCisjOiBzcmMvZmlsZXNkYi5jOjQ4MworIywgYy1mb3JtYXQKK21zZ2lkICIlZCBmaWxlIG9yIGRpcmVjdG9yeSBjdXJyZW50bHkgaW5zdGFsbGVkLilcbiIKK21zZ2lkX3BsdXJhbCAiJWQgZmlsZXMgYW5kIGRpcmVjdG9yaWVzIGN1cnJlbnRseSBpbnN0YWxsZWQuKVxuIgorbXNnc3RyWzBdICJueW7DrSBqZSBuYWluc3RhbG92w6FuICVkIHNvdWJvciBuZWJvIGFkcmVzw6HFmS4pXG4iCittc2dzdHJbMV0gIm55bsOtIGpzb3UgbmFpbnN0YWxvdsOhbnkgJWQgc291Ym9yeSBhIGFkcmVzw6HFmWUuKVxuIgorbXNnc3RyWzJdICJueW7DrSBqZSBuYWluc3RhbG92w6FubyAlZCBzb3Vib3LFryBhIGFkcmVzw6HFmcWvLilcbiIKKworIzogc3JjL2ZpbGVzZGIuYzo1MTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAibmVsemUgdnl0dm/FmWl0IGFrdHVhbGl6b3ZhbsO9IHNlem5hbSBzb3Vib3LFryBiYWzDrWt1ICVzIgorCisjOiBzcmMvZmlsZXNkYi5jOjUyNgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgdG8gdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIm5lbHplIHphcHNhdCBha3R1YWxpem92YW7DvSBzZXpuYW0gc291Ym9yxa8gYmFsw61rdSAlcyIKKworIzogc3JjL2ZpbGVzZGIuYzo1MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZsdXNoIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICJuZWx6ZSB2eXByw6F6ZG5pdCBzZXpuYW0gYWt0dWFsaXpvdmFuw71jaCBzb3Vib3LFryBwcm8gYmFsw61rICVzIgorCisjOiBzcmMvZmlsZXNkYi5jOjUzMAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gc3luYyB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAibmVsemUgc3luY2hyb25pem92YXQgc2V6bmFtIGFrdHVhbGl6b3ZhbsO9Y2ggc291Ym9yxa8gcHJvIGJhbMOtayAlcyIKKworIzogc3JjL2ZpbGVzZGIuYzo1MzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNsb3NlIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICJuZWx6ZSB1emF2xZnDrXQgYWt0dWFsaXpvdmFuw70gc2V6bmFtIHNvdWJvcsWvIGJhbMOta3UgJXMiCisKKyM6IHNyYy9maWxlc2RiLmM6NTM1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBpbnN0YWxsIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICJuZWx6ZSBuYWluc3RhbG92YXQgYWt0dWFsaXpvdmFuw70gc2V6bmFtIHNvdWJvcsWvIGJhbMOta3UgJXMiCisKKyM6IHNyYy9oZWxwLmM6NDgKK21zZ2lkICJub3QgaW5zdGFsbGVkIgorbXNnc3RyICJuZW5haW5zdGFsb3bDoW4iCisKKyM6IHNyYy9oZWxwLmM6NDkKK21zZ2lkICJub3QgaW5zdGFsbGVkIGJ1dCBjb25maWdzIHJlbWFpbiIKK21zZ3N0ciAibmVuYWluc3RhbG92YW7DvSwgYWxlIGtvbmZpZ3VyYcSNbsOtIHNvdWJvcnkgemFjaG92w6FueSIKKworIzogc3JjL2hlbHAuYzo1MAorbXNnaWQgImJyb2tlbiBkdWUgdG8gZmFpbGVkIHJlbW92YWwgb3IgaW5zdGFsbGF0aW9uIgorbXNnc3RyICJwb3J1xaFlbsO9IGt2xa9saSBjaHlibsOpbXUgb2RzdHJhbsSbbsOtIG5lYm8gaW5zdGFsYWNpIgorCisjOiBzcmMvaGVscC5jOjUxCittc2dpZCAidW5wYWNrZWQgYnV0IG5vdCBjb25maWd1cmVkIgorbXNnc3RyICJyb3piYWxlbiwgYWxlIG5lemtvbmZpZ3Vyb3bDoW4iCisKKyM6IHNyYy9oZWxwLmM6NTIKK21zZ2lkICJicm9rZW4gZHVlIHRvIHBvc3RpbnN0IGZhaWx1cmUiCittc2dzdHIgInBvcnXFoWVuw70ga3bFr2xpIGNoeWLEmyB2IHBvc3RpbnN0IgorCisjOiBzcmMvaGVscC5jOjUzCittc2dpZCAiYXdhaXRpbmcgdHJpZ2dlciBwcm9jZXNzaW5nIGJ5IGFub3RoZXIgcGFja2FnZSIKK21zZ3N0ciAib8SNZWvDoXbDoSB6cHJhY292w6Fuw60gc3BvdcWhdMSbxI1lIGppbsO9bSBiYWzDrWtlbSIKKworIzogc3JjL2hlbHAuYzo1NAorbXNnaWQgInRyaWdnZXJlZCIKK21zZ3N0ciAic3BvdcWhdMSbxI0gYWt0aXZvdsOhbiIKKworIzogc3JjL2hlbHAuYzo1NQorbXNnaWQgImluc3RhbGxlZCIKK21zZ3N0ciAibmFpbnN0YWxvdsOhbiIKKworIzogc3JjL2hlbHAuYzoxMDcKKyMsIGZ1enp5CisjfCBtc2dpZCAiZXJyb3I6IFBBVEggaXMgbm90IHNldC4iCittc2dpZCAiUEFUSCBpcyBub3Qgc2V0LiIKK21zZ3N0ciAiY2h5YmE6IFBBVEggbmVuw60gbmFzdGF2ZW5hLiIKKworIzogc3JjL2hlbHAuYzoxMjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS4iCittc2dzdHIgIuKAniVz4oCcIG5lbmFsZXplbiB2IFBBVEggbmVibyBuZW7DrSBzcHVzdGl0ZWxuw70uIgorCisjOiBzcmMvaGVscC5jOjEzOAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiJyVzJyBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS4iCittc2dpZCAiIgorIiVkIGV4cGVjdGVkIHByb2dyYW0gbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuXG4iCisiJXMiCittc2dpZF9wbHVyYWwgIiIKKyIlZCBleHBlY3RlZCBwcm9ncmFtcyBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS5cbiIKKyIlcyIKK21zZ3N0clswXSAi4oCeJXPigJwgbmVuYWxlemVuIHYgUEFUSCBuZWJvIG5lbsOtIHNwdXN0aXRlbG7DvS4iCittc2dzdHJbMV0gIuKAniVz4oCcIG5lbmFsZXplbiB2IFBBVEggbmVibyBuZW7DrSBzcHVzdGl0ZWxuw70uIgorbXNnc3RyWzJdICLigJ4lc+KAnCBuZW5hbGV6ZW4gdiBQQVRIIG5lYm8gbmVuw60gc3B1c3RpdGVsbsO9LiIKKworIzogc3JjL2hlbHAuYzoxNDEKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIiVkIGV4cGVjdGVkIHByb2dyYW0gbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuXG4iCisjfCAiTkI6IHJvb3QncyBQQVRIIHNob3VsZCB1c3VhbGx5IGNvbnRhaW4gL3Vzci9sb2NhbC9zYmluLCAvdXNyL3NiaW4gYW5kIC8iCisjfCAic2Jpbi4iCisjfCBtc2dpZF9wbHVyYWwgIiIKKyN8ICIlZCBleHBlY3RlZCBwcm9ncmFtcyBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS5cbiIKKyN8ICJOQjogcm9vdCdzIFBBVEggc2hvdWxkIHVzdWFsbHkgY29udGFpbiAvdXNyL2xvY2FsL3NiaW4sIC91c3Ivc2JpbiBhbmQgLyIKKyN8ICJzYmluLiIKK21zZ2lkICIiCisiTm90ZTogcm9vdCdzIFBBVEggc2hvdWxkIHVzdWFsbHkgY29udGFpbiAvdXNyL2xvY2FsL3NiaW4sIC91c3Ivc2JpbiBhbmQgLyIKKyJzYmluLiIKK21zZ3N0ciAiIgorIiVkIG/EjWVrw6F2YW7DvSBwcm9ncmFtIHYgUEFUSCBuZW5hbGV6ZW4gbmVibyBuZW7DrSBzcHVzdGl0ZWxuw70uXG4iCisiTkI6IFBBVEggdcW+aXZhdGVsZSByb290IGJ5IG3Em2xhIG9ic2Fob3ZhdCAvdXNyL2xvY2FsL3NiaW4sIC91c3Ivc2JpbiBhIC9zYmluLiIKKworIzogc3JjL2hlbHAuYzoxODgKK21zZ2lkICJhZG1pbmRpciBtdXN0IGJlIGluc2lkZSBpbnN0ZGlyIGZvciBkcGtnIHRvIHdvcmsgcHJvcGVybHkiCittc2dzdHIgIiIKKworIzogc3JjL2hlbHAuYzoxOTAgc3JjL21haW4uYzo3NDcKKyMsIGZ1enp5CisjfCBtc2dpZCAidW5hYmxlIHRvIHNldGVudiBmb3IgbWFpbnRhaW5lciBzY3JpcHQiCittc2dpZCAidW5hYmxlIHRvIHNldGVudiBmb3Igc3VicHJvY2Vzc2VzIgorbXNnc3RyICJuZWx6ZSBuYXN0YXZpdCBwcm9txJtubsOpIHByb3N0xZllZMOtIHBybyBrb25maWd1cmHEjW7DrSBza3JpcHQiCisKKyM6IHNyYy9oZWxwLmM6MTkyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjaHJvb3QgdG8gYCUuMjUwcyciCittc2dzdHIgImNocm9vdCBuYSDigJ4lLjI1MHPigJwgc2VsaGFsIgorCisjOiBzcmMvaGVscC5jOjE5NCBkcGtnLWRlYi9idWlsZC5jOjQ1NSBkcGtnLWRlYi9idWlsZC5jOjQ1NworIzogZHBrZy1kZWIvYnVpbGQuYzo1MzYgZHBrZy1kZWIvYnVpbGQuYzo1NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIGAlLjI1NXMnIgorbXNnc3RyICJuZWx6ZSB6bcSbbml0IGFkcmVzw6HFmSBuYSDigJ4lLjI1NXPigJwiCisKKyM6IHNyYy9oZWxwLmM6MjU2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgZXhlY3V0ZSBwZXJtaXNzaW9ucyBvbiBgJS4yNTBzJyIKK21zZ3N0ciAibmVsemUgbmFzdGF2aXQgc3B1c3RpdGVsbsOpIHByw6F2byBuYSDigJ4lLjI1MHPigJwiCisKKyM6IHNyYy9oZWxwLmM6Mjc2Cittc2dpZCAidW5hYmxlIHRvIHNldGVudiBmb3IgbWFpbnRhaW5lciBzY3JpcHQiCittc2dzdHIgIm5lbHplIG5hc3Rhdml0IHByb23Em25uw6kgcHJvc3TFmWVkw60gcHJvIGtvbmZpZ3VyYcSNbsOtIHNrcmlwdCIKKworIzogc3JjL2hlbHAuYzozMDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW5zdGFsbGVkICVzIHNjcmlwdCIKK21zZ3N0ciAiaW5zdGFsb3ZhbsO9ICVzIHNrcmlwdCIKKworIzogc3JjL2hlbHAuYzozMTMgc3JjL2hlbHAuYzozODIgc3JjL2hlbHAuYzo0NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgJXMgYCUuMjUwcyciCittc2dzdHIgIm5lbHplIHpqaXN0aXQgc3RhdiAlcyDigJ4lLjI1MHPigJwiCisKKyM6IHNyYy9oZWxwLmM6MzY4IHNyYy9oZWxwLmM6NDI4CisjLCBjLWZvcm1hdAorbXNnaWQgIm5ldyAlcyBzY3JpcHQiCittc2dzdHIgIm5vdsO9ICVzIHNrcmlwdCIKKworIzogc3JjL2hlbHAuYzo0MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAib2xkICVzIHNjcmlwdCIKK21zZ3N0ciAic3RhcsO9ICVzIHNrcmlwdCIKKworIzogc3JjL2hlbHAuYzo0MTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgJXMgJyUuMjUwcyc6ICVzIgorbXNnc3RyICJuZWx6ZSB6amlzdGl0IHN0YXYgJXMg4oCeJS4yNTBz4oCcOiAlcyIKKworIzogc3JjL2hlbHAuYzo0MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZyAtIHRyeWluZyBzY3JpcHQgZnJvbSB0aGUgbmV3IHBhY2thZ2UgaW5zdGVhZCAuLi5cbiIKK21zZ3N0ciAiZHBrZyAtIHprb3XFocOtbSByYWTEm2ppIHNrcmlwdCB6IG5vdsSbIG5haW5zdGFsb3ZhbsOpaG8gYmFsw61rdSDigKZcbiIKKworIzogc3JjL2hlbHAuYzo0MzkKK21zZ2lkICJ0aGVyZSBpcyBubyBzY3JpcHQgaW4gdGhlIG5ldyB2ZXJzaW9uIG9mIHRoZSBwYWNrYWdlIC0gZ2l2aW5nIHVwIgorbXNnc3RyICJ2IG5vdsOpIHZlcnppIGJhbMOta3UgbmVuw60gxb7DoWRuw70gc2tyaXB0IC0ga29uxI3DrW0iCisKKyM6IHNyYy9oZWxwLmM6NDQ1CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IC4uLiBpdCBsb29rcyBsaWtlIHRoYXQgd2VudCBPSy5cbiIKK21zZ3N0ciAiZHBrZzog4oCmIHZ5cGFkw6EgdG8sIMW+ZSBzZSB2xaFlIHBvdmVkbG8uXG4iCisKKyM6IHNyYy9oZWxwLmM6NjE2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWN1cmVseSByZW1vdmUgJyUuMjU1cyciCittc2dzdHIgIm5lbHplIGJlenBlxI1uxJsgb2RzdHJhbml0IOKAniUuMjU1c+KAnCIKKworIzogc3JjL2hlbHAuYzo2MjEgZHBrZy1kZWIvaW5mby5jOjY1IGRwa2ctZGViL2luZm8uYzo2NworbXNnaWQgInJtIGNvbW1hbmQgZm9yIGNsZWFudXAiCittc2dzdHIgIiIKKworIzogc3JjL2luZm9kYi5jOjUyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGVjayBleGlzdGVuY2Ugb2YgYCUuMjUwcyciCittc2dzdHIgIm5lbHplIHprb250cm9sb3ZhdCBleGlzdGVuY2kg4oCeJS4yNTBz4oCcIgorCisjOiBzcmMvaW5mb2RiLmM6NzAKK21zZ2lkICJjYW5ub3QgcmVhZCBpbmZvIGRpcmVjdG9yeSIKK21zZ3N0ciAibmVsemUgcMWZZcSNw61zdCBhZHJlc8OhxZkgaW5mbyIKKworIzogc3JjL21haW4uYzo2MAorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIG1hbmFnZW1lbnQgcHJvZ3JhbSB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICJEZWJpYW4g4oCeJXPigJwgLSBwcm9ncmFtIHBybyBzcHLDoXZ1IGJhbMOta8WvIHZlcnplICVzLlxuIgorCisjOiBzcmMvbWFpbi5jOjg1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1pfC0taW5zdGFsbCAgICAgICA8LmRlYiBmaWxlIG5hbWU+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXJlY3Rvcnk+IC4uLlxuIgorIiAgLS11bnBhY2sgICAgICAgICAgIDwuZGViIGZpbGUgbmFtZT4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRpcmVjdG9yeT4gLi4uXG4iCisiICAtQXwtLXJlY29yZC1hdmFpbCAgPC5kZWIgZmlsZSBuYW1lPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyZWN0b3J5PiAuLi5cbiIKKyIgIC0tY29uZmlndXJlICAgICAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtLXRyaWdnZXJzLW9ubHkgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLXJ8LS1yZW1vdmUgICAgICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC1QfC0tcHVyZ2UgICAgICAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtLWdldC1zZWxlY3Rpb25zIFs8cGF0dGVybj4gLi4uXSBHZXQgbGlzdCBvZiBzZWxlY3Rpb25zIHRvIHN0ZG91dC5cbiIKKyIgIC0tc2V0LXNlbGVjdGlvbnMgICAgICAgICAgICAgICAgIFNldCBwYWNrYWdlIHNlbGVjdGlvbnMgZnJvbSBzdGRpbi5cbiIKKyIgIC0tY2xlYXItc2VsZWN0aW9ucyAgICAgICAgICAgICAgIERlc2VsZWN0IGV2ZXJ5IG5vbi1lc3NlbnRpYWwgcGFja2FnZS5cbiIKKyIgIC0tdXBkYXRlLWF2YWlsIDxQYWNrYWdlcy1maWxlPiAgIFJlcGxhY2UgYXZhaWxhYmxlIHBhY2thZ2VzIGluZm8uXG4iCisiICAtLW1lcmdlLWF2YWlsIDxQYWNrYWdlcy1maWxlPiAgICBNZXJnZSB3aXRoIGluZm8gZnJvbSBmaWxlLlxuIgorIiAgLS1jbGVhci1hdmFpbCAgICAgICAgICAgICAgICAgICAgRXJhc2UgZXhpc3RpbmcgYXZhaWxhYmxlIGluZm8uXG4iCisiICAtLWZvcmdldC1vbGQtdW5hdmFpbCAgICAgICAgICAgICBGb3JnZXQgdW5pbnN0YWxsZWQgdW5hdmFpbGFibGUgcGtncy5cbiIKKyIgIC1zfC0tc3RhdHVzIDxwYWNrYWdlPiAuLi4gICAgICAgIERpc3BsYXkgcGFja2FnZSBzdGF0dXMgZGV0YWlscy5cbiIKKyIgIC1wfC0tcHJpbnQtYXZhaWwgPHBhY2thZ2U+IC4uLiAgIERpc3BsYXkgYXZhaWxhYmxlIHZlcnNpb24gZGV0YWlscy5cbiIKKyIgIC1MfC0tbGlzdGZpbGVzIDxwYWNrYWdlPiAuLi4gICAgIExpc3QgZmlsZXMgYG93bmVkJyBieSBwYWNrYWdlKHMpLlxuIgorIiAgLWx8LS1saXN0IFs8cGF0dGVybj4gLi4uXSAgICAgICAgTGlzdCBwYWNrYWdlcyBjb25jaXNlbHkuXG4iCisiICAtU3wtLXNlYXJjaCA8cGF0dGVybj4gLi4uICAgICAgICBGaW5kIHBhY2thZ2Uocykgb3duaW5nIGZpbGUocykuXG4iCisiICAtQ3wtLWF1ZGl0ICAgICAgICAgICAgICAgICAgICAgICBDaGVjayBmb3IgYnJva2VuIHBhY2thZ2UocykuXG4iCisiICAtLXByaW50LWFyY2hpdGVjdHVyZSAgICAgICAgICAgICBQcmludCBkcGtnIGFyY2hpdGVjdHVyZS5cbiIKKyIgIC0tY29tcGFyZS12ZXJzaW9ucyA8YT4gPG9wPiA8Yj4gIENvbXBhcmUgdmVyc2lvbiBudW1iZXJzIC0gc2VlIGJlbG93LlxuIgorIiAgLS1mb3JjZS1oZWxwICAgICAgICAgICAgICAgICAgICAgU2hvdyBoZWxwIG9uIGZvcmNpbmcuXG4iCisiICAtRGh8LS1kZWJ1Zz1oZWxwICAgICAgICAgICAgICAgICBTaG93IGhlbHAgb24gZGVidWdnaW5nLlxuIgorIlxuIgorbXNnc3RyICIiCisiUMWZw61rYXp5OlxuIgorIiAgLWl8LS1pbnN0YWxsICAgICAgPC5kZWIgc291Ym9yPiDigKYgfCAtUnwtLXJlY3Vyc2l2ZSA8YWRyZXPDocWZPiDigKZcbiIKKyIgIC0tdW5wYWNrICAgICAgICAgIDwuZGViIHNvdWJvcj4g4oCmIHwgLVJ8LS1yZWN1cnNpdmUgPGFkcmVzw6HFmT4g4oCmXG4iCisiICAtQXwtLXJlY29yZC1hdmFpbCA8LmRlYiBzb3Vib3I+IOKApiB8IC1SfC0tcmVjdXJzaXZlIDxhZHJlc8OhxZk+IOKAplxuIgorIiAgLS1jb25maWd1cmUgICAgICAgPGJhbMOtaz4g4oCmIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtcnwtLXJlbW92ZSAgICAgICA8YmFsw61rPiDigKYgfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC1QfC0tcHVyZ2UgICAgICAgIDxiYWzDrWs+IOKApiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLS1nZXQtc2VsZWN0aW9ucyBbPHZ6b3I+IOKApl0gICAgICB2eXDDrcWhZSB2eWJyYW7DqSBiYWzDrWt5IG5hIHN0ZG91dFxuIgorIiAgLS1zZXQtc2VsZWN0aW9ucyAgICAgICAgICAgICAgICAgbmFzdGF2w60gdnlicmFuw6kgYmFsw61reSB6ZSBzdGRpblxuIgorIiAgLS1jbGVhci1zZWxlY3Rpb25zICAgICAgICAgICAgICAgb2R6bmHEjcOtIHbFoWVjaG55IGJhbMOta3kga3JvbSBuZXpieXRuw71jaFxuIgorIiAgLS11cGRhdGUtYXZhaWwgPHNvdWJvciBQYWNrYWdlcz4gbmFocmFkw60gaW5mb3JtYWNlIG8gZG9zdHVwbsO9Y2ggYmFsw61jw61jaFxuIgorIiAgLS1tZXJnZS1hdmFpbCA8c291Ym9yIFBhY2thZ2VzPiAgc2xvdcSNw60gaW5mb3JtYWNlIG8gZG9zdHVwbsO9Y2ggYmFsw61jw61jaFxuIgorIiAgLS1jbGVhci1hdmFpbCAgICAgICAgICAgICAgICAgICAgenJ1xaHDrSBpbmZvcm1hY2UgbyBiYWzDrWPDrWNoXG4iCisiICAtLWZvcmdldC1vbGQtdW5hdmFpbCAgICAgICAgICAgICB6YXBvbWVuZSBuZW5haW5zdGFsb3ZhbsOpIG5lZG9zdHVwbsOpXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWzDrWt5XG4iCisiICAtc3wtLXN0YXR1cyA8YmFsw61rPiDigKYgICAgICAgICAgICB6b2JyYXrDrSBwb2Ryb2Juw70gc3RhdiBiYWzDrWt1XG4iCisiICAtcHwtLXByaW50LWF2YWlsIDxiYWzDrWs+IOKApiAgICAgICB6b2JyYXrDrSBpbmZvcm1hY2UgbyBkb3N0dXBuw6kgdmVyemlcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhbMOta3VcbiIKKyIgIC1MfC0tbGlzdGZpbGVzIDxiYWzDrWs+IOKApiAgICAgICAgIHZ5cMOtxaFlIHNvdWJvcnkgdmxhc3RuxJtuw6kgYmFsw61rZW1cbiIKKyIgIC1sfC0tbGlzdCBbPHZ6b3I+IOKApl0gICAgICAgICAgICAgc3RydcSNbsO9IHNlem5hbSBiYWzDrWvFr1xuIgorIiAgLVN8LS1zZWFyY2ggPHZ6b3I+IOKApiAgICAgICAgICAgICBuYWxlem5lIGJhbMOtaywga3RlcsO9IHZsYXN0bsOtIHNvdWJvcih5KVxuIgorIiAgLUN8LS1hdWRpdCAgICAgICAgICAgICAgICAgICAgICAgdnlobGVkw6EgcG9ydcWhZW7DqSBiYWzDrWt5XG4iCisiICAtLXByaW50LWFyY2hpdGVjdHVyZSAgICAgICAgICAgICB2eXDDrcWhZSBkcGtnIGFyY2hpdGVrdHVydVxuIgorIiAgLS1jb21wYXJlLXZlcnNpb25zIDxhPiA8b3A+IDxiPiAgcG9yb3Zuw6EgxI3DrXNsYSB2ZXJ6w60gLSB2aXogbsOtxb5lXG4iCisiICAtLWZvcmNlLWhlbHAgICAgICAgICAgICAgICAgICAgICB6b2JyYXrDrSBuw6Fwb3bEm2R1IHBybyBkb251Y292w6Fuw61cbiIKKyIgIC1EaHwtLWRlYnVnPWhlbHAgICAgICAgICAgICAgICAgIHpvYnJhesOtIG7DoXBvdsSbZHUgcHJvIGxhZMSbbsOtXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTEzIHNyYy9xdWVyeWNtZC5jOjYzMSBzcmMvdHJpZ2NtZC5jOjc3IGRwa2ctZGViL21haW4uYzo4OAorIzogZHBrZy1zcGxpdC9tYWluLmM6NzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiAgLWh8LS1oZWxwICAgICAgICAgICAgICAgICAgICAgICAgU2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCittc2dzdHIgIiIKKyIgIC1ofC0taGVscCAgICAgICAgICAgICAgICAgICAgICAgIHpvYnJhesOtIHR1dG8gbsOhcG92xJtkdVxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICAgICAgICAgem9icmF6w60gdmVyemlcbiIKKyJcbiIKKworIzogc3JjL21haW4uYzoxMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlVzZSBkcGtnIC1ifC0tYnVpbGR8LWN8LS1jb250ZW50c3wtZXwtLWNvbnRyb2x8LUl8LS1pbmZvfC1mfC0tZmllbGR8XG4iCisiIC14fC0tZXh0cmFjdHwtWHwtLXZleHRyYWN0fC0tZnN5cy10YXJmaWxlICBvbiBhcmNoaXZlcyAodHlwZSAlcyAtLWhlbHApLlxuIgorIlxuIgorbXNnc3RyICIiCisiTmEgYXJjaGl2eSBwb3XFvmlqdGUgZHBrZyAtYnwtLWJ1aWxkfC1jfC0tY29udGVudHN8LWV8LS1jb250cm9sfC1JfC0taW5mb3xcbiIKKyItZnwtLWZpZWxkfCAteHwtLWV4dHJhY3R8LVh8LS12ZXh0cmFjdHwtLWZzeXMtdGFyZmlsZSAgKG5hcGnFoXRlICVzIC0taGVscCkuXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTIzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJGb3IgaW50ZXJuYWwgdXNlOiBkcGtnIC0tYXNzZXJ0LXN1cHBvcnQtcHJlZGVwZW5kcyB8IC0tcHJlZGVwLXBhY2thZ2UgfFxuIgorIiAgLS1hc3NlcnQtd29ya2luZy1lcG9jaCB8IC0tYXNzZXJ0LWxvbmctZmlsZW5hbWVzIHwgLS1hc3NlcnQtbXVsdGktY29ucmVwLlxuIgorIlxuIgorbXNnc3RyICIiCisiUHJvIHZuaXTFmW7DrSBwb3TFmWVidTogZHBrZyAtLWFzc2VydC1zdXBwb3J0LXByZWRlcGVuZHMgfCAtLXByZWRlcC1wYWNrYWdlIHxcbiIKKyIgIC0tYXNzZXJ0LXdvcmtpbmctZXBvY2ggfCAtLWFzc2VydC1sb25nLWZpbGVuYW1lcyB8IC0tYXNzZXJ0LW11bHRpLWNvbnJlcFxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjEyOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT4gICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorIiAgLS1yb290PTxkaXJlY3Rvcnk+ICAgICAgICAgSW5zdGFsbCBvbiBhIGRpZmZlcmVudCByb290IGRpcmVjdG9yeS5cbiIKKyIgIC0taW5zdGRpcj08ZGlyZWN0b3J5PiAgICAgIENoYW5nZSBpbnN0YWxsYXRpb24gZGlyIHdpdGhvdXQgY2hhbmdpbmcgYWRtaW4gIgorImRpci5cbiIKKyIgIC0tcGF0aC1leGNsdWRlPTxwYXR0ZXJuPiAgIERvIG5vdCBpbnN0YWxsIHBhdGhzIHdoaWNoIG1hdGNoIGEgc2hlbGwgIgorInBhdHRlcm4uXG4iCisiICAtLXBhdGgtaW5jbHVkZT08cGF0dGVybj4gICBSZS1pbmNsdWRlIGEgcGF0dGVybiBhZnRlciBhIHByZXZpb3VzICIKKyJleGNsdXNpb24uXG4iCisiICAtT3wtLXNlbGVjdGVkLW9ubHkgICAgICAgICBTa2lwIHBhY2thZ2VzIG5vdCBzZWxlY3RlZCBmb3IgaW5zdGFsbC8iCisidXBncmFkZS5cbiIKKyIgIC1FfC0tc2tpcC1zYW1lLXZlcnNpb24gICAgIFNraXAgcGFja2FnZXMgd2hvc2Ugc2FtZSB2ZXJzaW9uIGlzIGluc3RhbGxlZC5cbiIKKyIgIC1HfC0tcmVmdXNlLWRvd25ncmFkZSAgICAgIFNraXAgcGFja2FnZXMgd2l0aCBlYXJsaWVyIHZlcnNpb24gdGhhbiAiCisiaW5zdGFsbGVkLlxuIgorIiAgLUJ8LS1hdXRvLWRlY29uZmlndXJlICAgICAgSW5zdGFsbCBldmVuIGlmIGl0IHdvdWxkIGJyZWFrIHNvbWUgb3RoZXIgIgorInBhY2thZ2UuXG4iCisiICAtLVtuby1ddHJpZ2dlcnMgICAgICAgICAgICBTa2lwIG9yIGZvcmNlIGNvbnNlcXVlbnRpYWwgdHJpZ2dlciAiCisicHJvY2Vzc2luZy5cbiIKKyIgIC0tbm8tZGVic2lnICAgICAgICAgICAgICAgIERvIG5vdCB0cnkgdG8gdmVyaWZ5IHBhY2thZ2Ugc2lnbmF0dXJlcy5cbiIKKyIgIC0tbm8tYWN0fC0tZHJ5LXJ1bnwtLXNpbXVsYXRlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBKdXN0IHNheSB3aGF0IHdlIHdvdWxkIGRvIC0gZG9uJ3QgZG8gaXQuXG4iCisiICAtRHwtLWRlYnVnPTxvY3RhbD4gICAgICAgICBFbmFibGUgZGVidWdnaW5nIChzZWUgLURoZWxwIG9yIC0tZGVidWc9aGVscCkuXG4iCisiICAtLXN0YXR1cy1mZCA8bj4gICAgICAgICAgICBTZW5kIHN0YXR1cyBjaGFuZ2UgdXBkYXRlcyB0byBmaWxlIGRlc2NyaXB0b3IgIgorIjxuPi5cbiIKKyIgIC0tbG9nPTxmaWxlbmFtZT4gICAgICAgICAgIExvZyBzdGF0dXMgY2hhbmdlcyBhbmQgYWN0aW9ucyB0byA8ZmlsZW5hbWU+LlxuIgorIiAgLS1pZ25vcmUtZGVwZW5kcz08cGFja2FnZT4sLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZ25vcmUgZGVwZW5kZW5jaWVzIGludm9sdmluZyA8cGFja2FnZT4uXG4iCisiICAtLWZvcmNlLS4uLiAgICAgICAgICAgICAgICBPdmVycmlkZSBwcm9ibGVtcyAoc2VlIC0tZm9yY2UtaGVscCkuXG4iCisiICAtLW5vLWZvcmNlLS4uLnwtLXJlZnVzZS0uLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3Agd2hlbiBwcm9ibGVtcyBlbmNvdW50ZXJlZC5cbiIKKyIgIC0tYWJvcnQtYWZ0ZXIgPG4+ICAgICAgICAgIEFib3J0IGFmdGVyIGVuY291bnRlcmluZyA8bj4gZXJyb3JzLlxuIgorIlxuIgorbXNnc3RyICIiCisiVm9sYnk6XG4iCisiICAtLWFkbWluZGlyPTxhZHJlc8OhxZk+ICAgICAgIG3DrXN0byAlcyBwb3XFvmlqZSA8YWRyZXPDocWZPlxuIgorIiAgLS1yb290PTxhZHJlc8OhxZk+ICAgICAgICAgICBpbnN0YWx1amUgcyBqaW7DvW0ga2/FmWVub3bDvW0gYWRyZXPDocWZZW1cbiIKKyIgIC0taW5zdGRpcj08YWRyZXPDocWZPiAgICAgICAgem3Em27DrSBpbnN0YWxhxI1uw60ga2/FmWVuIGJleiB6bcSbbnkgYWRtaW5kaXJcbiIKKyIgIC0tcGF0aC1leGNsdWRlPTx2em9yPiAgICAgIG5laW5zdGFsdWplIGNlc3R5IG9kcG92w61kYWrDrWPDrSBzaGVsbG92w6ltdSAiCisidnpvcnUuXG4iCisiICAtLXBhdGgtaW5jbHVkZT08dnpvcj4gICAgICB6bm92dSB6YWhybmUgdnpvciBwbyBwxZllZGNob3rDrW0gdnlqbXV0w60uXG4iCisiICAtT3wtLXNlbGVjdGVkLW9ubHkgICAgICAgICBwxZllc2tvxI3DrSBiYWzDrWt5LCBrdGVyw6kgbmVqc291IHZ5YnLDoW55IHBybyAiCisiaW5zdGFsYWNpL2FrdHVhbGl6YWNpXG4iCisiICAtRXwtLXNraXAtc2FtZS12ZXJzaW9uICAgICBuZWluc3RhbHVqZSB6bm92dSBzdGVqbm91IHZlcnppIGJhbMOta3VcbiIKKyIgIC1HfC0tcmVmdXNlLWRvd25ncmFkZSAgICAgIG5laW5zdGFsdWplIHN0YXLFocOtIHZlcnplIGJhbMOta3VcbiIKKyIgIC1CfC0tYXV0by1kZWNvbmZpZ3VyZSAgICAgIG5haW5zdGFsdWplIGJhbMOtaywgaSBrZHnFviBzZSBwb3J1xaHDrSB6w6F2aXNsb3N0aSAiCisiamluw6lob1xuIgorIiAgLS1uby1kZWJzaWcgICAgICAgICAgICAgICAgbmVidWRlIHNlIHBva291xaFldCBvdsSbxZlpdCBwb2RwaXMgYmFsw61rdVxuIgorIiAgLS1uby1hY3R8LS1kcnktcnVufC0tc2ltdWxhdGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvdXplIHZ5cGlzdWplLCBjbyBieSBzZSBzdGFsbywgYWxlIG5lcHJvdsOhZMOtICIKKyJzZVxuIgorIiAgLUR8LS1kZWJ1Zz08b2N0YWw+ICAgICAgICAgcG92b2zDrSBsYWTEm27DrSAodml6IC1EaGVscCBuZWJvIC0tZGVidWc9PWhlbHApXG4iCisiICAtLXN0YXR1cy1mZCA8bj4gICAgICAgICAgICBwb8WhbGUgem3Em255IHN0YXZ1IGJhbMOta3UgbmEgcG9waXNvdmHEjSA8bj5cbiIKKyIgIC0tbG9nPTxzb3Vib3I+ICAgICAgICAgICAgIHphem5hbWVuw6Egem3Em255IHN0YXZ1IGEgYWtjZSBkbyA8c291Ym9ydT5cbiIKKyIgIC0taWdub3JlLWRlcGVuZHM9PGJhbMOtaz4s4oCmIGlnbm9ydWplIHrDoXZpc2xvc3RpIHMgPGJhbMOta2VtPlxuIgorIiAgLS1mb3JjZS3igKYgICAgICAgICAgICAgICAgICBpZ25vcnVqZSBwcm9ibMOpbXkgKHZpeiAtLWZvcmNlLWhlbHApXG4iCisiICAtLW5vLWZvcmNlLeKApnwtLXJlZnVzZS3igKYgICAgcMWZaSBwcm9ibMOpbWVjaCBzZSB6YXN0YXbDrVxuIgorIiAgLS1hYm9ydC1hZnRlciA8bj4gICAgICAgICAgemFzdGF2w60gcG8gbmFsZXplbsOtIDxuPiBjaHliXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTU0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21wYXJpc29uIG9wZXJhdG9ycyBmb3IgLS1jb21wYXJlLXZlcnNpb25zIGFyZTpcbiIKKyIgIGx0IGxlIGVxIG5lIGdlIGd0ICAgICAgICh0cmVhdCBlbXB0eSB2ZXJzaW9uIGFzIGVhcmxpZXIgdGhhbiBhbnkgIgorInZlcnNpb24pO1xuIgorIiAgbHQtbmwgbGUtbmwgZ2UtbmwgZ3QtbmwgKHRyZWF0IGVtcHR5IHZlcnNpb24gYXMgbGF0ZXIgdGhhbiBhbnkgdmVyc2lvbik7XG4iCisiICA8IDw8IDw9ID0gPj0gPj4gPiAgICAgICAob25seSBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIGNvbnRyb2wgZmlsZSAiCisic3ludGF4KS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIk9wZXLDoXRvcnkgcG9yb3Zuw6Fuw60gcHJvIC0tY29tcGFyZS12ZXJzaW9ucyBqc291OlxuIgorIiBsdCBsZSBlcSBuZSBnZSBndCAgICAgICAgKG5lZXhpc3RlbmNpIHZlcnplIHBvdmHFvnVqZSB6YSBzdGFyxaHDrSBuZcW+ICIKKyJjb2tvbGkpO1xuIgorIiBsdC1ubCBsZS1ubCBnZS1ubCBndC1ubCAgKG5lZXhpc3RlbmNpIHZlcnplIHBvdmHFvnVqZSB6YSBub3bEm2rFocOtIG5lxb4gIgorImNva29saSk7XG4iCisiIDwgPDwgPD0gPSA+PSA+PiA+ICAgICAgICAocHJvIGtvbXBhdGliaWxpdHUgc2Ugc3ludGF4w60gc291Ym9ydSBjb250cm9sKS5cbiIKKyJcbiIKKworIzogc3JjL21haW4uYzoxNjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiVXNlIGBkc2VsZWN0JyBvciBgYXB0aXR1ZGUnIGZvciB1c2VyLWZyaWVuZGx5IHBhY2thZ2UgbWFuYWdlbWVudC5cbiIKK21zZ3N0ciAiIgorIlBybyB1xb5pdmF0ZWxza3kgcMWZw612xJt0aXZvdSBzcHLDoXZ1IGJhbMOta8WvIHBvdcW+aWp0ZSDigJ5kc2VsZWN04oCcIG5lYm8gIgorIuKAnmFwdGl0dWRl4oCcLlxuIgorCisjOiBzcmMvbWFpbi5jOjE3MAorbXNnaWQgIiIKKyJUeXBlIGRwa2cgLS1oZWxwIGZvciBoZWxwIGFib3V0IGluc3RhbGxpbmcgYW5kIGRlaW5zdGFsbGluZyBwYWNrYWdlcyBbKl07XG4iCisiVXNlIGBkc2VsZWN0JyBvciBgYXB0aXR1ZGUnIGZvciB1c2VyLWZyaWVuZGx5IHBhY2thZ2UgbWFuYWdlbWVudDtcbiIKKyJUeXBlIGRwa2cgLURoZWxwIGZvciBhIGxpc3Qgb2YgZHBrZyBkZWJ1ZyBmbGFnIHZhbHVlcztcbiIKKyJUeXBlIGRwa2cgLS1mb3JjZS1oZWxwIGZvciBhIGxpc3Qgb2YgZm9yY2luZyBvcHRpb25zO1xuIgorIlR5cGUgZHBrZy1kZWIgLS1oZWxwIGZvciBoZWxwIGFib3V0IG1hbmlwdWxhdGluZyAqLmRlYiBmaWxlcztcbiIKKyJcbiIKKyJPcHRpb25zIG1hcmtlZCBbKl0gcHJvZHVjZSBhIGxvdCBvZiBvdXRwdXQgLSBwaXBlIGl0IHRocm91Z2ggYGxlc3MnIG9yICIKKyJgbW9yZScgISIKK21zZ3N0ciAiIgorIk5hcGnFoXRlIGRwa2cgLS1oZWxwIGsgesOtc2vDoW7DrSBuw6Fwb3bEm2R5IG8gaW5zdGFsYWNpIGEgb2RpbnN0YWxhY2kgYmFsw61rxa8gIgorIlsqXTtcbiIKKyJQcm8gdcW+aXZhdGVsc2t5IHDFmcOtdsSbdGl2b3Ugc3Byw6F2dSBiYWzDrWvFryBwb3XFvmlqdGUgZHNlbGVjdCBuZWJvIGFwdGl0dWRlO1xuIgorIk5hcGnFoXRlIGRwa2cgLURoZWxwIHBybyBzZXpuYW0gbGFkw61jw61jaCBwxZnDrXpuYWvFryBkcGtnO1xuIgorIk5hcGnFoXRlIGRwa2cgLS1mb3JjZS1oZWxwIGsgesOtc2vDoW7DrSBzZXpuYW11IHZ5bnVjb3ZhY8OtY2ggcMWZZXDDrW5hxI3FrztcbiIKKyJOYXBpxaF0ZSBkcGtnLWRlYiAtLWhlbHAgayB6w61za8OhbsOtIG7DoXBvdsSbZHkgbyB6YWNow6F6ZW7DrSBzZSBzb3Vib3J5ICouZGViO1xuIgorIlxuIgorIlZvbGJ5IG96bmHEjWVuw6kgWypdIHByb2R1a3Vqw60gb2Jzw6FobMO9IHbDvXN0dXAgLSBwb3XFvmlqdGUg4oCebGVzc+KAnCBuZWJvIOKAnm1vcmXigJwhIgorCisjOiBzcmMvbWFpbi5jOjIxOQorbXNnaWQgIlNldCBhbGwgZm9yY2Ugb3B0aW9ucyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIyMQorbXNnaWQgIlJlcGxhY2UgYSBwYWNrYWdlIHdpdGggYSBsb3dlciB2ZXJzaW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjIzCittc2dpZCAiQ29uZmlndXJlIGFueSBwYWNrYWdlIHdoaWNoIG1heSBoZWxwIHRoaXMgb25lIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjI1Cittc2dpZCAiUHJvY2VzcyBpbmNpZGVudGFsIHBhY2thZ2VzIGV2ZW4gd2hlbiBvbiBob2xkIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjI3Cittc2dpZCAiVHJ5IHRvIChkZSlpbnN0YWxsIHRoaW5ncyBldmVuIHdoZW4gbm90IHJvb3QiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjkKK21zZ2lkICJQQVRIIGlzIG1pc3NpbmcgaW1wb3J0YW50IHByb2dyYW1zLCBwcm9ibGVtcyBsaWtlbHkiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzEKK21zZ2lkICJJbnN0YWxsIGEgcGFja2FnZSBldmVuIGlmIGl0IGZhaWxzIGF1dGhlbnRpY2l0eSBjaGVjayIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzMworbXNnaWQgIlByb2Nlc3MgZXZlbiBwYWNrYWdlcyB3aXRoIHdyb25nIHZlcnNpb25zIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjM1Cittc2dpZCAiT3ZlcndyaXRlIGEgZmlsZSBmcm9tIG9uZSBwYWNrYWdlIHdpdGggYW5vdGhlciIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzNworbXNnaWQgIk92ZXJ3cml0ZSBhIGRpdmVydGVkIGZpbGUgd2l0aCBhbiB1bmRpdmVydGVkIHZlcnNpb24iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzkKK21zZ2lkICJPdmVyd3JpdGUgb25lIHBhY2thZ2UncyBkaXJlY3Rvcnkgd2l0aCBhbm90aGVyJ3MgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI0MQorbXNnaWQgIkRvIG5vdCBwZXJmb3JtIHNhZmUgSS9PIG9wZXJhdGlvbnMgd2hlbiB1bnBhY2tpbmciCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDMKK21zZ2lkICJBbHdheXMgdXNlIHRoZSBuZXcgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDUKK21zZ2lkICJBbHdheXMgdXNlIHRoZSBvbGQgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDgKK21zZ2lkICIiCisiVXNlIHRoZSBkZWZhdWx0IG9wdGlvbiBmb3IgbmV3IGNvbmZpZyBmaWxlcyBpZiBvbmVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgaXMgYXZhaWxhYmxlLCBkb24ndCBwcm9tcHQuIElmIG5vIGRlZmF1bHQgY2FuIGJlICIKKyJmb3VuZCxcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgeW91IHdpbGwgYmUgcHJvbXB0ZWQgdW5sZXNzIG9uZSBvZiB0aGUgY29uZm9sZCBvclxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICBjb25mbmV3IG9wdGlvbnMgaXMgYWxzbyBnaXZlbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI1MworbXNnaWQgIkFsd2F5cyBpbnN0YWxsIG1pc3NpbmcgY29uZmlnIGZpbGVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjU1Cittc2dpZCAiT2ZmZXIgdG8gcmVwbGFjZSBjb25maWcgZmlsZXMgd2l0aCBubyBuZXcgdmVyc2lvbnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNTcKK21zZ2lkICJQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyBvciBubyBhcmNoaXRlY3R1cmUiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNTkKK21zZ2lkICJJbnN0YWxsIGV2ZW4gaWYgaXQgd291bGQgYnJlYWsgYW5vdGhlciBwYWNrYWdlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjYxCittc2dpZCAiQWxsb3cgaW5zdGFsbGF0aW9uIG9mIGNvbmZsaWN0aW5nIHBhY2thZ2VzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjYzCisjLCBmdXp6eQorI3wgbXNnaWQgImRlcGVuZGVuY3kgcHJvYmxlbXMgLSBub3QgcmVtb3ZpbmciCittc2dpZCAiVHVybiBhbGwgZGVwZW5kZW5jeSBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzIgorbXNnc3RyICJwcm9ibMOpbSBzZSB6w6F2aXNsb3N0bWkgLSBuZW9kaW5zdGFsb3bDoXbDoW0iCisKKyM6IHNyYy9tYWluLmM6MjY1CisjLCBmdXp6eQorI3wgbXNnaWQgImRlcGVuZGVuY3kgcHJvYmxlbXMgLSBub3QgcmVtb3ZpbmciCittc2dpZCAiVHVybiBkZXBlbmRlbmN5IHZlcnNpb24gcHJvYmxlbXMgaW50byB3YXJuaW5ncyIKK21zZ3N0ciAicHJvYmzDqW0gc2UgesOhdmlzbG9zdG1pIC0gbmVvZGluc3RhbG92w6F2w6FtIgorCisjOiBzcmMvbWFpbi5jOjI2NworbXNnaWQgIlJlbW92ZSBwYWNrYWdlcyB3aGljaCByZXF1aXJlIGluc3RhbGxhdGlvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI2OQorbXNnaWQgIlJlbW92ZSBhbiBlc3NlbnRpYWwgcGFja2FnZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4MQorbXNnaWQgIkdlbmVyYWxseSBoZWxwZnVsIHByb2dyZXNzIGluZm9ybWF0aW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjgyCisjLCBmdXp6eQorI3wgbXNnaWQgInVuYWJsZSB0byBzZXRlbnYgZm9yIG1haW50YWluZXIgc2NyaXB0IgorbXNnaWQgIkludm9jYXRpb24gYW5kIHN0YXR1cyBvZiBtYWludGFpbmVyIHNjcmlwdHMiCittc2dzdHIgIm5lbHplIG5hc3Rhdml0IHByb23Em25uw6kgcHJvc3TFmWVkw60gcHJvIGtvbmZpZ3VyYcSNbsOtIHNrcmlwdCIKKworIzogc3JjL21haW4uYzoyODMKK21zZ2lkICJPdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODQKK21zZ2lkICJMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4NQorIywgZnV6enkKKyN8IG1zZ2lkICJyZWFkIGVycm9yIGluIGNvbmZpZ3VyYXRpb24gZmlsZSBgJS4yNTVzJyIKK21zZ2lkICJPdXRwdXQgZm9yIGVhY2ggY29uZmlndXJhdGlvbiBmaWxlIgorbXNnc3RyICJjaHliYSBwxZlpIMSNdGVuw60ga29uZmlndXJhxI1uw61obyBzb3Vib3J1IOKAniUuMjU1c+KAnCIKKworIzogc3JjL21haW4uYzoyODYKK21zZ2lkICJMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGUiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODcKK21zZ2lkICJEZXBlbmRlbmNpZXMgYW5kIGNvbmZsaWN0cyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4OAorbXNnaWQgIkxvdHMgb2YgZGVwZW5kZW5jaWVzL2NvbmZsaWN0cyBvdXRwdXQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODkKK21zZ2lkICJUcmlnZ2VyIGFjdGl2YXRpb24gYW5kIHByb2Nlc3NpbmciCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyOTAKK21zZ2lkICJMb3RzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyOTEKK21zZ2lkICJTaWxseSBhbW91bnRzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyOTIKK21zZ2lkICJMb3RzIG9mIGRyaXZlbCBhYm91dCBlZyB0aGUgZHBrZy9pbmZvIGRpcmVjdG9yeSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MworbXNnaWQgIkluc2FuZSBhbW91bnRzIG9mIGRyaXZlbCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjMwNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXMgZGVidWdnaW5nIG9wdGlvbiwgLS1kZWJ1Zz08b2N0YWw+IG9yIC1EPG9jdGFsPjpcbiIKKyJcbiIKKyIgTnVtYmVyICBSZWYuIGluIHNvdXJjZSAgIERlc2NyaXB0aW9uXG4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzozMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIkRlYnVnZ2luZyBvcHRpb25zIGNhbiBiZSBtaXhlZCB1c2luZyBiaXR3aXNlLW9yLlxuIgorIk5vdGUgdGhhdCB0aGUgbWVhbmluZ3MgYW5kIHZhbHVlcyBhcmUgc3ViamVjdCB0byBjaGFuZ2UuXG4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzozMTkKK21zZ2lkICItLWRlYnVnIHJlcXVpcmVzIGFuIG9jdGFsIGFyZ3VtZW50IgorbXNnc3RyICItLWRlYnVnIHZ5xb5hZHVqZSBva3RhbG92w70gcGFyYW1ldHIiCisKKyM6IHNyYy9tYWluLmM6MzQ4CisjLCBjLWZvcm1hdAorbXNnaWQgIm51bGwgcGFja2FnZSBuYW1lIGluIC0taWdub3JlLWRlcGVuZHMgY29tbWEtc2VwYXJhdGVkIGxpc3QgYCUuMjUwcyciCittc2dzdHIgInByw6F6ZG7DqSBqbcOpbm8gYmFsw61rdSB2IHNlem5hbXUgLS1pZ25vcmUtZGVwZW5kcyDigJ4lLjI1MHPigJwiCisKKyM6IHNyYy9tYWluLmM6MzU0CisjLCBjLWZvcm1hdAorbXNnaWQgIi0taWdub3JlLWRlcGVuZHMgcmVxdWlyZXMgYSBsZWdhbCBwYWNrYWdlIG5hbWUuIGAlLjI1MHMnIGlzIG5vdDsgJXMiCittc2dzdHIgIi0taWdub3JlLWRlcGVuZHMgdnnFvmFkdWplIHBsYXRuw6kgam3DqW5vIGJhbMOta3UsIGNvxb4g4oCeJS4yNTBz4oCcIG5lbsOtOyAlcyIKKworIzogc3JjL21haW4uYzozNzEgc3JjL21haW4uYzozODEgc3JjL21haW4uYzo2NDkgZHBrZy1zcGxpdC9tYWluLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgaW50ZWdlciBmb3IgLS0lczogYCUuMjUwcyciCittc2dzdHIgIm5lcGxhdG7DqSDEjcOtc2xvIHBybyAtLSVzOiDigJ4lLjI1MHPigJwiCisKKyM6IHNyYy9tYWluLmM6NDM4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGV4ZWN1dGluZyBob29rICclcycsIGV4aXQgY29kZSAlZCIKK21zZ3N0ciAiY2h5YmEgc3BvdcWhdMSbbsOtIGFrY2Ug4oCeJXPigJwsIG7DoXZyYXRvdsO9IGvDs2QgJWQiCisKKyM6IHNyYy9tYWluLmM6NDY1CisjLCBmdXp6eQorI3wgbXNnaWQgInN0YXR1cyIKK21zZ2lkICJzdGF0dXMgbG9nZ2VyIgorbXNnc3RyICJzdGF2IgorCisjOiBzcmMvbWFpbi5jOjQ4MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXMgZm9yY2luZyBvcHRpb25zIC0gY29udHJvbCBiZWhhdmlvdXIgd2hlbiBwcm9ibGVtcyBmb3VuZDpcbiIKKyIgIHdhcm4gYnV0IGNvbnRpbnVlOiAgLS1mb3JjZS08dGhpbmc+LDx0aGluZz4sLi4uXG4iCisiICBzdG9wIHdpdGggZXJyb3I6ICAgIC0tcmVmdXNlLTx0aGluZz4sPHRoaW5nPiwuLi4gfCAtLW5vLWZvcmNlLTx0aGluZz4sLi4uXG4iCisiIEZvcmNpbmcgdGhpbmdzOlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6NDkwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJXQVJOSU5HIC0gdXNlIG9mIG9wdGlvbnMgbWFya2VkIFshXSBjYW4gc2VyaW91c2x5IGRhbWFnZSB5b3VyIGluc3RhbGxhdGlvbi5cbiIKKyJGb3JjaW5nIG9wdGlvbnMgbWFya2VkIFsqXSBhcmUgZW5hYmxlZCBieSBkZWZhdWx0LlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6NTA0CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gZm9yY2UvcmVmdXNlIG9wdGlvbiBgJS4qcyciCittc2dzdHIgIm5lem7DoW3DoSBmb3JjZS9yZWZ1c2Ugdm9sYmEg4oCeJS4qc+KAnCIKKworIzogc3JjL21haW4uYzo1MTMKKyMsIGMtZm9ybWF0Cittc2dpZCAib2Jzb2xldGUgZm9yY2UvcmVmdXNlIG9wdGlvbiAnJXMnXG4iCittc2dzdHIgInphc3RhcmFsw6EgZm9yY2UvcmVmdXNlIHZvbGJhIOKAniVz4oCcXG4iCisKKyM6IHNyYy9tYWluLmM6NjQzCittc2dpZCAiLS1jb21tYW5kLWZkIHRha2VzIG9uZSBhcmd1bWVudCwgbm90IHplcm8iCittc2dzdHIgIi0tY29tbWFuZC1mZCB2ecW+YWR1amUgamVkZW4gYXJndW1lbnQiCisKKyM6IHNyYy9tYWluLmM6NjQ1Cittc2dpZCAiLS1jb21tYW5kLWZkIG9ubHkgdGFrZXMgb25lIGFyZ3VtZW50IgorbXNnc3RyICItLWNvbW1hbmQtZmQgdnnFvmFkdWplIHBvdXplIGplZGVuIGFyZ3VtZW50IgorCisjOiBzcmMvbWFpbi5jOjY1MQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBvcGVuIGAlaScgZm9yIHN0cmVhbSIKK21zZ3N0ciAibmVsemUgb3RldsWZw610IOKAniVp4oCcIHBybyBwcm91ZCIKKworIzogc3JjL21haW4uYzo2NzYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgYmVmb3JlIGVuZCBvZiBsaW5lICVkIgorbXNnc3RyICJuZW/EjWVrw6F2YW7DvSBrb25lYyBzb3Vib3J1IHDFmWVkIGtvbmNlbSDFmcOhZGt1ICVkIgorCisjOiBzcmMvbWFpbi5jOjcxOSBzcmMvbWFpbi5jOjc0MSBzcmMvcXVlcnljbWQuYzo2OTIgc3JjL3N0YXRjbWQuYzozNzkKKyM6IGRwa2ctZGViL21haW4uYzoyMDEgZHBrZy1zcGxpdC9tYWluLmM6MTYzCittc2dpZCAibmVlZCBhbiBhY3Rpb24gb3B0aW9uIgorbXNnc3RyICJwb3TFmWVidWppIHphZGF0IGFrY2kiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjExMworbXNnaWQgIiIKKyJ5b3UgbXVzdCBzcGVjaWZ5IHBhY2thZ2VzIGJ5IHRoZWlyIG93biBuYW1lcywgbm90IGJ5IHF1b3RpbmcgdGhlIG5hbWVzIG9mICIKKyJ0aGUgZmlsZXMgdGhleSBjb21lIGluIgorbXNnc3RyICIiCisiYmFsw61reSBtdXPDrXRlIHphZMOhdmF0IGplamljaCB2bGFzdG7DrW1pIG7DoXp2eSwgYSBuZSBuw6F6dnkgc291Ym9yxa8sIHZlIGt0ZXLDvWNoICIKKyJqc291IG9ic2HFvmVueSIKKworIzogc3JjL3BhY2thZ2VzLmM6MTMzCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgLS1wZW5kaW5nIGRvZXMgbm90IHRha2UgYW55IG5vbi1vcHRpb24gYXJndW1lbnRzIgorbXNnc3RyICItLSVzIC0tcGVuZGluZyBuZW3DoSDFvsOhZG7DvSB2b2xpdGVsbsO9IGFyZ3VtZW50IgorCisjOiBzcmMvcGFja2FnZXMuYzoxMzggc3JjL3F1ZXJ5Y21kLmM6Mzc1IHNyYy9xdWVyeWNtZC5jOjU2NQorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGF0IGxlYXN0IG9uZSBwYWNrYWdlIG5hbWUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMgdnnFvmFkdWplIGFsZXNwb8WIIGplZG5vIGptw6lubyBiYWzDrWt1IgorCisjOiBzcmMvcGFja2FnZXMuYzoxNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSAlcyBsaXN0ZWQgbW9yZSB0aGFuIG9uY2UsIG9ubHkgcHJvY2Vzc2luZyBvbmNlLlxuIgorbXNnc3RyICJCYWzDrWsgJXMgc3BlY2lmaWtvdsOhbiB2w61jZSBuZcW+IGplZG5vdSwgenByYWNvdsOhdsOhbSBwb3V6ZSBqZWRub3UuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjE4MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiTW9yZSB0aGFuIG9uZSBjb3B5IG9mIHBhY2thZ2UgJXMgaGFzIGJlZW4gdW5wYWNrZWRcbiIKKyIgaW4gdGhpcyBydW4gISAgT25seSBjb25maWd1cmluZyBpdCBvbmNlLlxuIgorbXNnc3RyICIiCisiQnlsYSByb3piYWxlbmEgdsOtY2UgbmXFviBqZWRuYSBrb3BpZSBiYWzDrWt1ICVzXG4iCisiIHYgdG9tdG8gYsSbaHUgISBLb25maWd1cnVqaSBqZW4gamVkbm91LlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInBhY2thZ2UgJS4yNTBzIGlzIG5vdCByZWFkeSBmb3IgdHJpZ2dlciBwcm9jZXNzaW5nXG4iCisiIChjdXJyZW50IHN0YXR1cyBgJS4yNTBzJyB3aXRoIG5vIHBlbmRpbmcgdHJpZ2dlcnMpIgorbXNnc3RyICIiCisiYmFsw61rICUuMjUwcyBuZW7DrSBwxZlpcHJhdmVuIGtlIHpwcmFjb3bDoW7DrSBzcG91xaF0xJvEjcWvXG4iCisiIChzb3XEjWFzbsO9IHN0YXYg4oCeJS4yNTBz4oCcIHMgxb7DoWRuw71taSBuZXZ5xZnDrXplbsO9bWkgc3BvdcWhdMSbxI1pKSIKKworIzogc3JjL3BhY2thZ2VzLmM6MzM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyB3aGljaCBwcm92aWRlcyAlcyBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIgIEJhbMOtayAlcyBwb3NreXR1asOtY8OtICVzIGJ1ZGUgb2RzdHJhbsSbbi5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MzM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIgIEJhbMOtayAlcyBidWRlIG9kc3RyYW7Em24uXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjM1NAorIywgYy1mb3JtYXQKK21zZ2lkICIgIFZlcnNpb24gb2YgJXMgb24gc3lzdGVtIGlzICVzLlxuIgorbXNnc3RyICIgIFZlcnplICVzIHYgc3lzdMOpbXUgamUgJXMuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjM3NgorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgd2hpY2ggcHJvdmlkZXMgJXMgYXdhaXRzIHRyaWdnZXIgcHJvY2Vzc2luZy5cbiIKK21zZ3N0ciAiICBCYWzDrWsgJXMgcG9za3l0dWrDrWPDrSAlcyBvxI1la8OhdsOhIHpwcmFjb3bDoW7DrSBzcG91xaF0xJvEjcWvLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzozODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIGF3YWl0cyB0cmlnZ2VyIHByb2Nlc3NpbmcuXG4iCittc2dzdHIgIiAgQmFsw61rICVzIG/EjWVrw6F2w6EgenByYWNvdsOhbsOtIHNwb3XFoXTEm8SNxa8uXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQxMAorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiBhbHNvIGNvbmZpZ3VyaW5nIGAlcycgKHJlcXVpcmVkIGJ5IGAlcycpXG4iCittc2dzdHIgImRwa2c6IHRha8OpIGtvbmZpZ3VydWppIOKAniVz4oCcICh2ecW+YWRvdsOhbm8gYmFsw61rZW0g4oCeJXPigJwpXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQxOAorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgd2hpY2ggcHJvdmlkZXMgJXMgaXMgbm90IGNvbmZpZ3VyZWQgeWV0LlxuIgorbXNnc3RyICIgIEJhbMOtayAlcyBwb3NreXR1asOtY8OtICVzIHphdMOtbSBuZW7DrSB6a29uZmlndXJvdsOhbi5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDIxCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyBpcyBub3QgY29uZmlndXJlZCB5ZXQuXG4iCittc2dzdHIgIiAgQmFsw61rICVzIHphdMOtbSBuZW7DrSB6a29uZmlndXJvdsOhbi5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyB3aGljaCBwcm92aWRlcyAlcyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIgIEJhbMOtayAlcyBwb3NreXR1asOtY8OtICVzIG5lbsOtIG5haW5zdGFsb3bDoW4uXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQzNQorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgaXMgbm90IGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiICBCYWzDrWsgJXMgbmVuw60gbmFpbnN0YWxvdsOhbi5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDcyCisjLCBjLWZvcm1hdAorbXNnaWQgIiAlcyAoJXMpIGJyZWFrcyAlcyBhbmQgaXMgJXMuXG4iCittc2dzdHIgIiAlcyAoJXMpIHBvcnXFoXVqZSAlcyBhIGplICVzLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlcyAoJXMpIHByb3ZpZGVzICVzLlxuIgorbXNnc3RyICIgICVzICglcykgcG9za3l0dWplICVzLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBWZXJzaW9uIG9mICVzIHRvIGJlIGNvbmZpZ3VyZWQgaXMgJXMuXG4iCittc2dzdHIgIiAgVmVyemUgJXMgcHJvIGtvbmZpZ3VyYWNpIGplICVzLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo1OTYKK21zZ2lkICIgZGVwZW5kcyBvbiAiCittc2dzdHIgIiB6w6F2aXPDrSBuYSAiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjYwMgorbXNnaWQgIjsgaG93ZXZlcjpcbiIKK21zZ3N0ciAiOyBhdsWhYWs6XG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiLi4uLyVzIgorbXNnc3RyICLigKYvJXMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgZW5zdXJpbmcgYCUuMjUwcycgZG9lc24ndCBleGlzdCIKK21zZ3N0ciAiY2h5YmEgcMWZaSBvdsSbxZlvdsOhbsOtLCDFvmUg4oCeJS4yNTBz4oCcIG5lZXhpc3R1amUiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTkKK21zZ2lkICJzcGxpdCBwYWNrYWdlIHJlYXNzZW1ibHkiCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxMDgKK21zZ2lkICJyZWFzc2VtYmxlZCBwYWNrYWdlIGZpbGUiCittc2dzdHIgInNwb2plbsO9IGJhbMOtayIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiQXV0aGVudGljYXRpbmcgJXMgLi4uXG4iCittc2dzdHIgIktvbnRyb2x1amkgYXV0ZW50aWNpdHUgJXMg4oCmXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTM5Cittc2dpZCAicGFja2FnZSBzaWduYXR1cmUgdmVyaWZpY2F0aW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTQ2CisjLCBjLWZvcm1hdAorbXNnaWQgIlZlcmlmaWNhdGlvbiBvbiBwYWNrYWdlICVzIGZhaWxlZCEiCittc2dzdHIgIktvbnRyb2xhIGJhbMOta3UgJXMgc2VsaGFsYSEiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTQ4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJWZXJpZmljYXRpb24gb24gcGFja2FnZSAlcyBmYWlsZWQsXG4iCisiYnV0IGluc3RhbGxpbmcgYW55d2F5IGFzIHlvdSByZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiIKKyJLb250cm9sYSBwb2RwaXN1IGJhbMOta3UgJXMgc2VsaGFsYSxcbiIKKyJhbGUgcMWZZXN0byBpbnN0YWx1amkuXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTUyCisjLCBjLWZvcm1hdAorbXNnaWQgInBhc3NlZFxuIgorbXNnc3RyICLDunNwxJvFoW7DoVxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE2NSBkcGtnLWRlYi9pbmZvLmM6ODEKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHRlbXBvcmFyeSBkaXJlY3RvcnkiCittc2dzdHIgIm5lbHplIHZ5dHZvxZlpdCBkb8SNYXNuw70gYWRyZXPDocWZIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjIwNQorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlICVzIGhhcyB0b28gbWFueSBDb25mbGljdHMvUmVwbGFjZXMgcGFpcnMiCittc2dzdHIgImJhbMOtayAlcyBtw6EgcMWZw61sacWhIG1ub2hvIGR2b2ppYyBLb2xpZHVqZS9OYWhyYXp1amUiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MjQzCisjLCBjLWZvcm1hdAorbXNnaWQgIm9sZCB2ZXJzaW9uIG9mIHBhY2thZ2UgaGFzIG92ZXJseS1sb25nIGluZm8gZmlsZSBuYW1lIHN0YXJ0aW5nIGAlLjI1MHMnIgorbXNnc3RyICIiCisic3RhcsOhIHZlcnplIGJhbMOta3UgbcOhIHDFmcOtbGnFoSBkbG91aMOpIGptw6lubyBpbmZvIHNvdWJvcnUsIGt0ZXLDvSB6YcSNw61uw6Eg4oCeJS4yNTBz4oCcIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjI4MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIG9ic29sZXRlIGluZm8gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmVsemUgb2RzdHJhbml0IHN0YXLDvSBpbmZvIHNvdWJvciDigJ4lLjI1MHPigJwiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6Mjg2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIChzdXBwb3NlZCkgbmV3IGluZm8gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmVsemUgaW5zdGFsb3ZhdCBub3bDvSBpbmZvIHNvdWJvciDigJ4lLjI1MHPigJwiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6Mjk2Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gdGVtcCBjb250cm9sIGRpcmVjdG9yeSIKK21zZ3N0ciAibmVsemUgb3RldsWZw610IGRvxI1hc27DvSBrb250cm9sbsOtIGFkcmVzw6HFmSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMDcKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBjb250YWlucyBvdmVybHktbG9uZyBjb250cm9sIGluZm8gZmlsZSBuYW1lIChzdGFydGluZyBgJS41MHMnKSIKK21zZ3N0ciAiYmFsw61rIG9ic2FodWplIHDFmcOtbGnFoSBkbG91aMOpIGptw6lubyBpbmZvIHNvdWJvcnUgKHphxI3DrW7DoSDigJ4lLjUwc+KAnCkiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzE0CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgY29udHJvbCBpbmZvIGNvbnRhaW5lZCBkaXJlY3RvcnkgYCUuMjUwcyciCittc2dzdHIgImluZm9ybWFjZSBvIGJhbMOta3Ugb2JzYWh1asOtIGFkcmVzw6HFmSDigJ4lLjI1MHPigJwiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzE2CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgY29udHJvbCBpbmZvIHJtZGlyIG9mIGAlLjI1MHMnIGRpZG4ndCBzYXkgbm90IGEgZGlyIgorbXNnc3RyICJpbmZvcm1hY2UgbyBiYWzDrWt1IHJtZGlyIG5hIOKAniUuMjUwc+KAnCBuZcWZZWtsLCDFvmUgdG8gbmVuw60gYWRyZXPDocWZIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMyNgorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlICVzIGNvbnRhaW5lZCBsaXN0IGFzIGluZm8gZmlsZSIKK21zZ3N0ciAiYmFsw61rICVzIG9ic2Fob3ZhbCBzZXpuYW0gamFrbyBpbmZvIHNvdWJvciIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IGluZm8gZmlsZSBgJS4yNTBzJyBhcyBgJS4yNTBzJyIKK21zZ3N0ciAibmVsemUgaW5zdGFsb3ZhdCBub3bDvSBpbmZvIHNvdWJvciDigJ4lLjI1MHPigJwgamFrbyDigJ4lLjI1MHPigJwiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzQ5IHNyYy9yZW1vdmUuYzoxOTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSBjb250cm9sIGluZm8gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmVsemUgb2RzdHJhbml0IGNvbnRyb2wgc291Ym9yIOKAniUuMjUwc+KAnCIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo0MTEKK21zZ2lkICJjYW5ub3QgYWNjZXNzIGFyY2hpdmUiCittc2dzdHIgIm5lbHplIHDFmWlzdG91cGl0IGsgYXJjaGl2dSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo0MzMKKyMsIGZ1enp5CisjfCBtc2dpZCAiY29udHJvbCBpbmZvcm1hdGlvbiBsZW5ndGgiCittc2dpZCAicGFja2FnZSBjb250cm9sIGluZm9ybWF0aW9uIGV4dHJhY3Rpb24iCittc2dzdHIgImTDqWxrYSBrb250cm9sbsOtIGluZm9ybWFjZSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo0NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVjb3JkZWQgaW5mbyBhYm91dCAlcyBmcm9tICVzLlxuIgorbXNnc3RyICJaYXpuYW1lbsOhbnkgaW5mb3JtYWNlIG8gJXMgeiAlcy5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo0NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBhcmNoaXRlY3R1cmUgKCVzKSBkb2VzIG5vdCBtYXRjaCBzeXN0ZW0gKCVzKSIKK21zZ3N0ciAiYXJjaGl0ZWt0dXJhIGJhbMOta3UgKCVzKSBzZSBuZXNob2R1amUgc2Ugc3lzdMOpbWVtICglcykiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTIzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiByZWdhcmRpbmcgJXMgY29udGFpbmluZyAlcywgcHJlLWRlcGVuZGVuY3kgcHJvYmxlbTpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6IGTDrXbDoW0gc2UgbmEgJXMgb2JzYWh1asOtY8OtICVzLCBwxZllZC16w6F2aXNsb3N0bsOtIHByb2Jsw6ltOlxuIgorIiVzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjUyNgorIywgYy1mb3JtYXQKK21zZ2lkICJwcmUtZGVwZW5kZW5jeSBwcm9ibGVtIC0gbm90IGluc3RhbGxpbmcgJS4yNTBzIgorbXNnc3RyICJwxZllZC16w6F2aXNsb3N0bsOtIHByb2Jsw6ltIC0gbmVpbnN0YWx1amkgJS4yNTBzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjUyNworbXNnaWQgImlnbm9yaW5nIHByZS1kZXBlbmRlbmN5IHByb2JsZW0hIgorbXNnc3RyICJpZ25vcnVqaSBwxZllZC16w6F2aXNsb3N0bsOtIHByb2Jsw6ltISIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHJlcGFyaW5nIHRvIHJlcGxhY2UgJXMgJXMgKHVzaW5nICVzKSAuLi5cbiIKK21zZ3N0ciAiUMWZaXByYXZ1amkgbmFocmF6ZW7DrSAlcyAlcyAocG9tb2PDrSAlcykg4oCmXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIlVucGFja2luZyAlcyAoZnJvbSAlcykgLi4uXG4iCittc2dzdHIgIlJvemJhbHVqaSAlcyAoeiAlcykg4oCmXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTgwCisjLCBjLWZvcm1hdAorbXNnaWQgIm5hbWUgb2YgY29uZmZpbGUgKHN0YXJ0aW5nIGAlLjI1MHMnKSBpcyB0b28gbG9uZyAoPiVkIGNoYXJhY3RlcnMpIgorbXNnc3RyICIiCisibsOhemV2IGtvbmZpZ3VyYcSNbsOtaG8gc291Ym9ydSAocG/EjcOhdGVrIGNlc3R5IOKAniUuMjUwc+KAnCkgamUgcMWZw61sacWhIGRsb3Vow70gKD4lZCAiCisiem5ha8WvKSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2MzMgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVhZCBlcnJvciBpbiAlLjI1MHMiCittc2dzdHIgImNoeWJhIMSNdGVuw60gdiAlLjI1MHMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjM1CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgJS4yNTBzIgorbXNnc3RyICJjaHliYSB1emF2xZllbsOtIHYgJS4yNTBzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjYzNworIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciB0cnlpbmcgdG8gb3BlbiAlLjI1MHMiCittc2dzdHIgImNoeWJhIHDFmWkgcG9rdXN1IG8gb3RldsWZZW7DrSAlLjI1MHMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6Njc4CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlLWNvbmZpZ3VyaW5nICVzLCB0byBhbGxvdyByZW1vdmFsIG9mICVzIC4uLlxuIgorbXNnc3RyICJEZWtvbmZpZ3VydWppICVzLCBhYnkgbW9obCBiw710IG9kc3RyYW7Em24gJXMg4oCmXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjgxCisjLCBjLWZvcm1hdAorbXNnaWQgIkRlLWNvbmZpZ3VyaW5nICVzIC4uLlxuIgorbXNnc3RyICJEZWtvbmZpZ3VydWppICVzIOKAplxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjc1NQorIywgYy1mb3JtYXQKK21zZ2lkICJVbnBhY2tpbmcgcmVwbGFjZW1lbnQgJS4yNTBzIC4uLlxuIgorbXNnc3RyICJSb3piYWx1amkgbsOhaHJhZHUgJS4yNTBzIOKAplxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjg0MAorIywgZnV6enkKKyN8IG1zZ2lkICJkcGtnLWRlYiBmaWVsZCBleHRyYWN0aW9uIgorbXNnaWQgInBhY2thZ2UgZmlsZXN5c3RlbSBhcmNoaXZlIGV4dHJhY3Rpb24iCittc2dzdHIgImRwa2ctZGViIHrDrXNrw6Fuw60gaG9kbm90eSBwb2xlIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjg1NAorbXNnaWQgImVycm9yIHJlYWRpbmcgZHBrZy1kZWIgdGFyIG91dHB1dCIKK21zZ3N0ciAiY2h5YmEgcMWZaSDEjXRlbsOtIHRhciB2w71zdHVwdSB6IGRwa2ctZGViIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjg1NgorbXNnaWQgImNvcnJ1cHRlZCBmaWxlc3lzdGVtIHRhcmZpbGUgLSBjb3JydXB0ZWQgcGFja2FnZSBhcmNoaXZlIgorbXNnc3RyICJwb8Wha296ZW7DvSBzeXN0w6ltb3bDvSB0YXIgc291Ym9yIC0gcG/FoWtvemVuw70gYmFsw61rIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjg1OQorbXNnaWQgImRwa2ctZGViOiB6YXAgcG9zc2libGUgdHJhaWxpbmcgemVyb3MiCittc2dzdHIgImRwa2ctZGViOiBydcWhw61tIG1vxb5uw6kga29uY292w6kgbnVseSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5MTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHN0YXQgb2xkIGZpbGUgJyUuMjUwcycgc28gbm90IGRlbGV0aW5nIGl0OiAlcyIKK21zZ3N0ciAibmVsemUgemppc3RpdCBzdGF2IHN0YXLDqWhvIHNvdWJvcnUg4oCeJS4yNTBz4oCcLCB0dWTDrcW+IGplaiBuZW1hxb51OiAlcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSBvbGQgZGlyZWN0b3J5ICclLjI1MHMnOiAlcyIKK21zZ3N0ciAibmVsemUgc21hemF0IHN0YXLDvSBhZHJlc8OhxZkg4oCeJS4yNTBz4oCcOiAlcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAib2xkIGNvbmZmaWxlICclLjI1MHMnIHdhcyBhbiBlbXB0eSBkaXJlY3RvcnkgKGFuZCBoYXMgbm93IGJlZW4gZGVsZXRlZCkiCittc2dzdHIgIiIKKyJzdGFyw70ga29uZmlndXJhxI1uw60gc291Ym9yIOKAniUuMjUwc+KAnCBieWwgcHLDoXpkbsO9bSBhZHJlc8OhxZllbSBhIGJ5bCBwcm90byBzbWF6w6FuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjk3NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBvdGhlciBuZXcgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmVsemUgemppc3RpdCBzdGF2IG5vdsOpaG8gc291Ym9ydSDigJ4lLjI1MHPigJwiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTg2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJvbGQgZmlsZSAnJS4yNTBzJyBpcyB0aGUgc2FtZSBhcyBzZXZlcmFsIG5ldyBmaWxlcyEgKGJvdGggJyUuMjUwcycgYW5kICIKKyInJS4yNTBzJykiCittc2dzdHIgIiIKKyJzdGFyw70gc291Ym9yIOKAniUuMjUwc+KAnCBqZSBzdGVqbsO9IGpha28gbsSba3RlcsOpIG5vdsOpIHNvdWJvcnkhICjigJ4lLjI1MHPigJwgaSAiCisi4oCeJS4yNTBz4oCcKSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxMDI1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWN1cmVseSByZW1vdmUgb2xkIGZpbGUgJyUuMjUwcyc6ICVzIgorbXNnc3RyICJuZWx6ZSBiZXpwZcSNbsSbIG9kc3RyYW5pdCBzdGFyw70gc291Ym9yIOKAniUuMjUwc+KAnDogJXMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTIwNgorIywgYy1mb3JtYXQKK21zZ2lkICIoTm90aW5nIGRpc2FwcGVhcmFuY2Ugb2YgJXMsIHdoaWNoIGhhcyBiZWVuIGNvbXBsZXRlbHkgcmVwbGFjZWQuKVxuIgorbXNnc3RyICIoUG96bmFtZW7DoXbDoW0gem1pemVuw60gYmFsw61rdSAlcywga3RlcsO9IGJ5bCDDunBsbsSbIG5haHJhemVuLilcbiIKKworIy4gVFJBTlNMQVRPUlM6IFRoaXMgaXMgdGhlIGhlYWRlciB0aGF0IGFwcGVhcnMgb24gJ2Rwa2ctcXVlcnkgLWwnLiBUaGUKKyMuICogc3RyaW5nIHNob3VsZCByZW1haW4gdW5kZXIgODAgY2hhcmFjdGVycy4gVGhlIHVwcGVyY2FzZSBsZXR0ZXJzIGluCisjLiAqIHRoZSBzdGF0ZSB2YWx1ZXMgZGVub3RlIHRoZSBhYmJyZXZpYXRlZCBsZXR0ZXIgdGhhdCB3aWxsIGFwcGVhciBvbgorIy4gKiB0aGUgZmlyc3QgdGhyZWUgY29sdW1ucywgd2hpY2ggc2hvdWxkIGlkZWFsbHkgbWF0Y2ggdGhlIEVuZ2xpc2ggb25lCisjLiAqIChlLmcuIFJlbW92ZSDihpIgc3VwUmltZWl4KSwgc2VlIGRwa2ctcXVlcnkoMSkgZm9yIGZ1cnRoZXIgZGV0YWlscy4gVGhlCisjLiAqIHRyYW5zbGF0ZWQgbWVzc2FnZSBjYW4gdXNlIGFkZGl0aW9uYWwgbGluZXMgaWYgbmVlZGVkLgorIzogc3JjL3F1ZXJ5Y21kLmM6MTQ5Cittc2dpZCAiIgorIkRlc2lyZWQ9VW5rbm93bi9JbnN0YWxsL1JlbW92ZS9QdXJnZS9Ib2xkXG4iCisifCBTdGF0dXM9Tm90L0luc3QvQ29uZi1maWxlcy9VbnBhY2tlZC9oYWxGLWNvbmYvSGFsZi1pbnN0L3RyaWctYVdhaXQvVHJpZy0iCisicGVuZFxuIgorInwvIEVycj89KG5vbmUpL1JlaW5zdC1yZXF1aXJlZCAoU3RhdHVzLEVycjogdXBwZXJjYXNlPWJhZClcbiIKK21zZ3N0ciAiIgorIlBvxb5hZG92YW7DqT1OZXpuw6Ftw6kvSW5zdGFsb3ZhdC9PZGluc3RhbG92YXQvVnnEjWlzdGl0L1BvZHLFvmV0XG4iCisifCBTdGF2PU5lL0luc3RhbG92w6FuL0tvbmZpZ3VyYcSNbsOtIHNvdWJvcnkvUm96YmFsZW4vTmV6a29uZmlndXJvdsOhbi8iCisiTmVrb21wbGV0bsOtXG4iCisifCBpbnN0YWxhY2UvT8SNZWvDoXZhbsOpIHNwb3XFoXTEm8SNZS9OZXZ5xZnDrXplbsOpIHNwb3XFoXTEm8SNZVxuIgorInwvIENoeWJhPz0obmljKS9OdXRuw6EgcMWZZWluc3RhbGFjZSAoU3RhdixDaHliYTogdmVsa8OpIHDDrXNtZW5vPWNoeWJhKVxuIgorCisjOiBzcmMvcXVlcnljbWQuYzoxNTMKK21zZ2lkICJOYW1lIgorbXNnc3RyICJOw6F6ZXYiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjE1MworbXNnaWQgIlZlcnNpb24iCittc2dzdHIgIlZlcnplIgorCisjOiBzcmMvcXVlcnljbWQuYzoxNTQKK21zZ2lkICJEZXNjcmlwdGlvbiIKK21zZ3N0ciAiUG9waXMiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI0NiBzcmMvcXVlcnljbWQuYzo1MTEgc3JjL3NlbGVjdC5jOjc1CisjLCBjLWZvcm1hdAorbXNnaWQgIk5vIHBhY2thZ2VzIGZvdW5kIG1hdGNoaW5nICVzLlxuIgorbXNnc3RyICIlcyBuZXZ5aG92dWplIMW+w6FkbsO9IGJhbMOtay5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MjczCisjLCBjLWZvcm1hdAorbXNnaWQgImRpdmVyc2lvbiBieSAlcyBmcm9tOiAlc1xuIgorbXNnc3RyICJvZGtsb27Em25vIGJhbMOta2VtICVzIHo6ICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI3NQorIywgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnNpb24gYnkgJXMgdG86ICVzXG4iCittc2dzdHIgIm9ka2xvbsSbbm8gYmFsw61rZW0gJXMgZG86ICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI3OAorIywgYy1mb3JtYXQKK21zZ2lkICJsb2NhbCBkaXZlcnNpb24gZnJvbTogJXNcbiIKK21zZ3N0ciAibG9rw6FsbsSbIG9ka2xvbsSbbm8gejogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6Mjc5CisjLCBjLWZvcm1hdAorbXNnaWQgImxvY2FsIGRpdmVyc2lvbiB0bzogJXNcbiIKK21zZ3N0ciAibG9rw6FsbsSbIG9ka2xvbsSbbm8gZG86ICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjMwOQorbXNnaWQgIi0tc2VhcmNoIG5lZWRzIGF0IGxlYXN0IG9uZSBmaWxlIG5hbWUgcGF0dGVybiBhcmd1bWVudCIKK21zZ3N0ciAiLS1zZWFyY2ggdnnFvmFkdWplIGFsZXNwb8WIIGplZG51IHNvdWJvcm92b3UgbWFza3UiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjM1MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiTm8gcGFja2FnZXMgZm91bmQgbWF0Y2hpbmcgJXMuXG4iCittc2dpZCAiJXM6IG5vIHBhdGggZm91bmQgbWF0Y2hpbmcgcGF0dGVybiAlcy5cbiIKK21zZ3N0ciAiJXMgbmV2eWhvdnVqZSDFvsOhZG7DvSBiYWzDrWsuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjM5MworIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlIGAlcycgaXMgbm90IGluc3RhbGxlZCBhbmQgbm8gaW5mbyBpcyBhdmFpbGFibGUuXG4iCittc2dzdHIgIkJhbMOtayDigJ4lc+KAnCBuZW7DrSBuYWluc3RhbG92w6FuIGEgbmVuw60gZG9zdHVwbsOhIMW+w6FkbsOhIGluZm9ybWFjZS5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDAxCisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgYCVzJyBpcyBub3QgYXZhaWxhYmxlLlxuIgorbXNnc3RyICJCYWzDrWsg4oCeJXPigJwgbmVuw60gZG9zdHVwbsO9LlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MTAgc3JjL3F1ZXJ5Y21kLmM6NTg1CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgYCVzJyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICJCYWzDrWsg4oCeJXPigJwgbmVuw60gbmFpbnN0YWxvdsOhbi5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDE4CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgYCVzJyBkb2VzIG5vdCBjb250YWluIGFueSBmaWxlcyAoISlcbiIKK21zZ3N0ciAiQmFsw61rIOKAniVz4oCcIG5lb2JzYWh1amUgxb7DoWRuw6kgc291Ym9yeSAoISlcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDI1CisjLCBjLWZvcm1hdAorbXNnaWQgImxvY2FsbHkgZGl2ZXJ0ZWQgdG86ICVzXG4iCittc2dzdHIgImxva8OhbG7EmyBvZGtsb27Em25vIGRvOiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBkaXZlcnRzIG90aGVycyB0bzogJXNcbiIKK21zZ3N0ciAiYmFsw61rIG9ka2zDoW7DrSBvc3RhdG7DrSBkbzogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDMxCisjLCBjLWZvcm1hdAorbXNnaWQgImRpdmVydGVkIGJ5ICVzIHRvOiAlc1xuIgorbXNnc3RyICJvZGtsb27Em25vIGJhbMOta2VtICVzIGRvOiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0NTIKK21zZ2lkICIiCisiVXNlIGRwa2cgLS1pbmZvICg9IGRwa2ctZGViIC0taW5mbykgdG8gZXhhbWluZSBhcmNoaXZlIGZpbGVzLFxuIgorImFuZCBkcGtnIC0tY29udGVudHMgKD0gZHBrZy1kZWIgLS1jb250ZW50cykgdG8gbGlzdCB0aGVpciBjb250ZW50cy5cbiIKK21zZ3N0ciAiIgorIlBvdcW+aWp0ZSBkcGtnIC0taW5mbyAoPSBkcGtnLWRlYiAtLWluZm8pIGsgcHJvemtvdW3DoW7DrSBhcmNoaXZ1XG4iCisiYSBkcGtnIC0tY29udGVudHMgKD0gZHBrZy1kZWIgLS1jb250ZW50cykgayB2eXBzw6Fuw60gamVobyBvYnNhaHUuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjU3MAorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIHRha2VzIGF0IG1vc3QgdHdvIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS0lcyB2ecW+YWR1amUgbmVqdsO9xaFlIGR2YSBwYXJhbWV0cnkiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjU3OAorIywgYy1mb3JtYXQKK21zZ2lkICJjb250cm9sIGZpbGUgY29udGFpbnMgJWMiCittc2dzdHIgInNvdWJvciBjb250cm9sIG9ic2FodWplICVjIgorCisjOiBzcmMvcXVlcnljbWQuYzo2MDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuICVzIHBhY2thZ2UgbWFuYWdlbWVudCBwcm9ncmFtIHF1ZXJ5IHRvb2wgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiRGViaWFuIOKAniVz4oCcIC0gbsOhc3Ryb2ogcHJvIGRvdGF6b3bDoW7DrSBzZSBuYSBiYWzDrWt5IHZlcnplICVzLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo2MTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJDb21tYW5kczpcbiIKKyN8ICIgIC1zfC0tc3RhdHVzIDxwYWNrYWdlPiAuLi4gICAgICAgIERpc3BsYXkgcGFja2FnZSBzdGF0dXMgZGV0YWlscy5cbiIKKyN8ICIgIC1wfC0tcHJpbnQtYXZhaWwgPHBhY2thZ2U+IC4uLiAgIERpc3BsYXkgYXZhaWxhYmxlIHZlcnNpb24gZGV0YWlscy5cbiIKKyN8ICIgIC1MfC0tbGlzdGZpbGVzIDxwYWNrYWdlPiAuLi4gICAgIExpc3QgZmlsZXMgYG93bmVkJyBieSBwYWNrYWdlKHMpLlxuIgorI3wgIiAgLWx8LS1saXN0IFs8cGF0dGVybj4gLi4uXSAgICAgICAgTGlzdCBwYWNrYWdlcyBjb25jaXNlbHkuXG4iCisjfCAiICAtV3wtLXNob3cgPHBhdHRlcm4+IC4uLiAgICAgICAgICBTaG93IGluZm9ybWF0aW9uIG9uIHBhY2thZ2UocykuXG4iCisjfCAiICAtU3wtLXNlYXJjaCA8cGF0dGVybj4gLi4uICAgICAgICBGaW5kIHBhY2thZ2Uocykgb3duaW5nIGZpbGUocykuXG4iCisjfCAiICAtY3wtLWNvbnRyb2wtcGF0aCA8cGFja2FnZT4gWzxmaWxlPl1cbiIKKyN8ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFByaW50IHBhdGggZm9yIHBhY2thZ2UgY29udHJvbCBmaWxlLlxuIgorI3wgIlxuIgorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1zfC0tc3RhdHVzIDxwYWNrYWdlPiAuLi4gICAgICAgIERpc3BsYXkgcGFja2FnZSBzdGF0dXMgZGV0YWlscy5cbiIKKyIgIC1wfC0tcHJpbnQtYXZhaWwgPHBhY2thZ2U+IC4uLiAgIERpc3BsYXkgYXZhaWxhYmxlIHZlcnNpb24gZGV0YWlscy5cbiIKKyIgIC1MfC0tbGlzdGZpbGVzIDxwYWNrYWdlPiAuLi4gICAgIExpc3QgZmlsZXMgYG93bmVkJyBieSBwYWNrYWdlKHMpLlxuIgorIiAgLWx8LS1saXN0IFs8cGF0dGVybj4gLi4uXSAgICAgICAgTGlzdCBwYWNrYWdlcyBjb25jaXNlbHkuXG4iCisiICAtV3wtLXNob3cgWzxwYXR0ZXJuPiAuLi5dICAgICAgICBTaG93IGluZm9ybWF0aW9uIG9uIHBhY2thZ2UocykuXG4iCisiICAtU3wtLXNlYXJjaCA8cGF0dGVybj4gLi4uICAgICAgICBGaW5kIHBhY2thZ2Uocykgb3duaW5nIGZpbGUocykuXG4iCisiICAtY3wtLWNvbnRyb2wtcGF0aCA8cGFja2FnZT4gWzxmaWxlPl1cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFByaW50IHBhdGggZm9yIHBhY2thZ2UgY29udHJvbCBmaWxlLlxuIgorIlxuIgorbXNnc3RyICIiCisiUMWZw61rYXp5OlxuIgorIiAgLXN8LS1zdGF0dXMgPGptw6luby1iYWzDrWt1PiDigKYgICAgICB6b2JyYXrDrSBwb2Ryb2Juw70gc3RhdiBiYWzDrWt1XG4iCisiICAtcHwtLXByaW50LWF2YWlsIDxqbcOpbm8tYmFsw61rdT4g4oCmIHpvYnJhesOtIGRvc3R1cG7DqSB2ZXJ6ZSBiYWzDrWt1XG4iCisiICAtTHwtLWxpc3RmaWxlcyA8am3DqW5vLWJhbMOta3U+IOKApiAgIHZ5cMOtxaFlIHNvdWJvcnkgdmxhc3RuxJtuw6kgYmFsw61rZW1cbiIKKyIgIC1sfC0tbGlzdCBbPHZ6b3I+IOKApl0gICAgICAgICAgICAgIHZ5cMOtxaFlIGJhbMOta3kgdmUgemh1xaF0xJtuw6ltIHR2YXJ1XG4iCisiICAtV3wtLXNob3cgPHZ6b3I+IOKApiAgICAgICAgICAgICAgICB6b2JyYXrDrSBpbmZvcm1hY2UgbyBiYWzDrWt1L2JhbMOtY8OtY2hcbiIKKyIgIC1TfC0tc2VhcmNoIDx2em9yPiDigKYgICAgICAgICAgICAgIG5hamRlIGJhbMOtayh5KSB2bGFzdG7DrWPDrSBzb3Vib3IoeSlcbiIKKyIgIC1jfC0tY29udHJvbC1wYXRoIDxqbcOpbm8tYmFsw61rdT4gWzxzb3Vib3I+XVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZ5cMOtxaFlIGNlc3R1IGsgc291Ym9ydSBjb250cm9sXG4iCisiXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjYzNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorIiAgLWZ8LS1zaG93Zm9ybWF0PTxmb3JtYXQ+ICAgICAgICAgVXNlIGFsdGVybmF0aXZlIGZvcm1hdCBmb3IgLS1zaG93LlxuIgorIlxuIgorbXNnc3RyICIiCisiVm9sYnk6XG4iCisiICAtLWFkbWluZGlyPTxhZHJlc8OhxZk+ICAgICAgIG3DrXN0byAlcyBwb3XFvmlqZSA8YWRyZXPDocWZPlxuIgorIiAgLWZ8LS1zaG93Zm9ybWF0PTxmb3Jtw6F0PiAgIHBybyAtLXNob3cgcG91xb5pamUgYWx0ZXJuYXRpdm7DrSBmb3Jtw6F0XG4iCisiXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjY0MiBkcGtnLWRlYi9tYWluLmM6MTEyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJGb3JtYXQgc3ludGF4OlxuIgorIiAgQSBmb3JtYXQgaXMgYSBzdHJpbmcgdGhhdCB3aWxsIGJlIG91dHB1dCBmb3IgZWFjaCBwYWNrYWdlLiBUaGUgZm9ybWF0XG4iCisiICBjYW4gaW5jbHVkZSB0aGUgc3RhbmRhcmQgZXNjYXBlIHNlcXVlbmNlcyBcXG4gKG5ld2xpbmUpLCBcXHIgKGNhcnJpYWdlXG4iCisiICByZXR1cm4pIG9yIFxcXFwgKHBsYWluIGJhY2tzbGFzaCkuIFBhY2thZ2UgaW5mb3JtYXRpb24gY2FuIGJlIGluY2x1ZGVkXG4iCisiICBieSBpbnNlcnRpbmcgdmFyaWFibGUgcmVmZXJlbmNlcyB0byBwYWNrYWdlIGZpZWxkcyB1c2luZyB0aGUgJHt2YXJbOyIKKyJ3aWR0aF19XG4iCisiICBzeW50YXguIEZpZWxkcyB3aWxsIGJlIHJpZ2h0LWFsaWduZWQgdW5sZXNzIHRoZSB3aWR0aCBpcyBuZWdhdGl2ZSBpbiAiCisid2hpY2hcbiIKKyIgIGNhc2UgbGVmdCBhbGlnbm1lbnQgd2lsbCBiZSB1c2VkLlxuIgorbXNnc3RyICIiCisiRm9ybcOhdDpcbiIKKyIgIEZvcm3DoXQgamUgxZlldMSbemVjLCBrdGVyw70gYnVkZSB2eXRpxaF0xJtuIHBybyBrYcW+ZMO9IGJhbMOtay4gRm9ybcOhdCBtxa/FvmVcbiIKKyIgIG9ic2Fob3ZhdCBzdGFuZGFyZG7DrSBlc2NhcGUgc2VrdmVuY2UgXFxuIChub3bDvSDFmcOhZGVrKSwgXFxyIChuw6F2cmF0XG4iCisiICB2b3rDrWt1KSBuZWJvIFxcXFwgKGxvbcOtdGtvKS4gSW5mb3JtYWNlIG8gYmFsw61rdSBtxa/FvmV0ZSB6YWhybm91dCBwb21vY8OtXG4iCisiICBvZGthesWvIG5hIHLFr3puw6EgcG9sZSBiYWzDrWt1IGRsZSB2em9ydSAke3Byb23Em25uw6FbO8Whw63FmWthXX0uXG4iCisiICBQb2xlIGJ1ZG91IHphcm92bmFuw6EgbmFwcmF2bywgesOhcG9ybsOhIMWhw63FmWthIGplIHphcm92bsOhIHZsZXZvLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo2NTYKK21zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IHF1ZXJ5aW5nIHBhY2thZ2VzLiIKK21zZ3N0ciAiUHJvIG7DoXBvdsSbZHUgbyBkb3Rhem92w6Fuw60gc2UgbmEgYmFsw61reSBwb3XFvmlqdGUgLS1oZWxwLiIKKworIzogc3JjL3JlbW92ZS5jOjg4CisjLCBjLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nIHJlcXVlc3QgdG8gcmVtb3ZlICUuMjUwcyB3aGljaCBpc24ndCBpbnN0YWxsZWQuIgorbXNnc3RyICIiCisiaWdub3J1amkgcG/FvmFkYXZlayBuYSBvZHN0cmFuxJtuw60gYmFsw61rdSAlLjI1MHMsIGt0ZXLDvSBuZW7DrSBuYWluc3RhbG92w6FuLiIKKworIzogc3JjL3JlbW92ZS5jOjk1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpZ25vcmluZyByZXF1ZXN0IHRvIHJlbW92ZSAlLjI1MHMsIG9ubHkgdGhlIGNvbmZpZ1xuIgorIiBmaWxlcyBvZiB3aGljaCBhcmUgb24gdGhlIHN5c3RlbS4gVXNlIC0tcHVyZ2UgdG8gcmVtb3ZlIHRoZW0gdG9vLiIKK21zZ3N0ciAiIgorImlnbm9ydWppIHBvxb5hZGF2ZWsgbmEgb2RzdHJhbsSbbsOtICUuMjUwcywgdiBzeXN0w6ltdVxuIgorInrFr3N0YWx5IGplbiBrb25maWd1cmHEjW7DrSBzb3Vib3J5LiBQcm8gamVqaWNoIG9kc3RyYW7Em27DrSBwb3XFvmlqdGUgLS1wdXJnZS4iCisKKyM6IHNyYy9yZW1vdmUuYzoxMDMKK21zZ2lkICJUaGlzIGlzIGFuIGVzc2VudGlhbCBwYWNrYWdlIC0gaXQgc2hvdWxkIG5vdCBiZSByZW1vdmVkLiIKK21zZ3N0ciAiVG90byBqZSBuZXpieXRuw70gYmFsw61rIC0gbmVtxJtsIGJ5IGLDvXQgb2RzdHJhbsSbbi4iCisKKyM6IHNyYy9yZW1vdmUuYzoxMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IGRlcGVuZGVuY3kgcHJvYmxlbXMgcHJldmVudCByZW1vdmFsIG9mICVzOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogcHJvYmzDqW15IHNlIHrDoXZpc2xvc3RtaSB6YWJyw6FuaWx5IG9kc3RyYW7Em27DrSAlczpcbiIKKyIlcyIKKworIzogc3JjL3JlbW92ZS5jOjEzMAorbXNnaWQgImRlcGVuZGVuY3kgcHJvYmxlbXMgLSBub3QgcmVtb3ZpbmciCittc2dzdHIgInByb2Jsw6ltIHNlIHrDoXZpc2xvc3RtaSAtIG5lb2RpbnN0YWxvdsOhdsOhbSIKKworIzogc3JjL3JlbW92ZS5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogJXM6IGRlcGVuZGVuY3kgcHJvYmxlbXMsIGJ1dCByZW1vdmluZyBhbnl3YXkgYXMgeW91IHJlcXVlc3RlZDpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiBwcm9ibMOpbSBzZSB6w6F2aXNsb3N0bWksIGFsZSBvZHN0cmHFiHVqaSBwb2RsZSBwb8W+YWRhdmt1OlxuIgorIiVzIgorCisjOiBzcmMvcmVtb3ZlLmM6MTQyCittc2dpZCAiIgorIlBhY2thZ2UgaXMgaW4gYSB2ZXJ5IGJhZCBpbmNvbnNpc3RlbnQgc3RhdGUgLSB5b3Ugc2hvdWxkXG4iCisiIHJlaW5zdGFsbCBpdCBiZWZvcmUgYXR0ZW1wdGluZyBhIHJlbW92YWwuIgorbXNnc3RyICIiCisiQmFsw61rIGplIHZlIHZlbG1pIMWhcGF0bsOpbSwgbmVrb256aXN0ZW50bsOtbSBzdGF2dSAtIHDFmWVkXG4iCisiIHBva3VzZW0gbyBvZHN0cmFuxJtuw60gaG8gcmFkxJtqaSBwxZllaW5zdGFsdWp0ZS4iCisKKyM6IHNyYy9yZW1vdmUuYzoxNDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiV291bGQgcmVtb3ZlIG9yIHB1cmdlICVzIC4uLlxuIgorbXNnc3RyICJDaGNldGUgb2RzdHJhbml0IG5lYm8gdnnEjWlzdGl0IGJhbMOtayAlcyDigKZcbiIKKworIzogc3JjL3JlbW92ZS5jOjE1NworIywgYy1mb3JtYXQKK21zZ2lkICJSZW1vdmluZyAlcyAuLi5cbiIKK21zZ3N0ciAiT2RpbnN0YWxvdsOhbsOtIGJhbMOta3UgJXMg4oCmXG4iCisKKyM6IHNyYy9yZW1vdmUuYzoyNzUgc3JjL3JlbW92ZS5jOjM2NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisid2hpbGUgcmVtb3ZpbmcgJS4yNTBzLCB1bmFibGUgdG8gcmVtb3ZlIGRpcmVjdG9yeSAnJS4yNTBzJzogJXMgLSBkaXJlY3RvcnkgIgorIm1heSBiZSBhIG1vdW50IHBvaW50PyIKK21zZ3N0ciAiIgorInDFmWkgb2RzdHJhxYhvdsOhbsOtICUuMjUwcyBuZWx6ZSBzbWF6YXQgYWRyZXPDocWZIOKAniUuMjUwc+KAnDogJXMgLSBuZW7DrSB0ZW50byAiCisiYWRyZXPDocWZIHDFmcOtcG9qbsO9bSBib2RlbT8iCisKKyM6IHNyYy9yZW1vdmUuYzoyODkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNlY3VyZWx5IHJlbW92ZSAnJS4yNTBzJyIKK21zZ3N0ciAibmVsemUgYmV6cGXEjW7EmyBvZHN0cmFuaXQg4oCeJS4yNTBz4oCcIgorCisjOiBzcmMvcmVtb3ZlLmM6MzYxCisjLCBjLWZvcm1hdAorbXNnaWQgIndoaWxlIHJlbW92aW5nICUuMjUwcywgZGlyZWN0b3J5ICclLjI1MHMnIG5vdCBlbXB0eSBzbyBub3QgcmVtb3ZlZC4iCittc2dzdHIgIiIKKyJwxZlpIG9kc3RyYcWIb3bDoW7DrSAlLjI1MHMgbmVuw60gYWRyZXPDocWZIOKAniUuMjUwc+KAnCBwcsOhemRuw70sIHByb3RvIG5lYnVkZSAiCisib2RzdHJhbsSbbi4iCisKKyM6IHNyYy9yZW1vdmUuYzozODMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImNhbm5vdCByZW1vdmUgYCUuMjUwcyciCittc2dpZCAiY2Fubm90IHJlbW92ZSAnJS4yNTBzJyIKK21zZ3N0ciAibmVsemUgb2RzdHJhbml0IOKAniUuMjUwc+KAnCIKKworIzogc3JjL3JlbW92ZS5jOjQwOQorIywgYy1mb3JtYXQKK21zZ2lkICJQdXJnaW5nIGNvbmZpZ3VyYXRpb24gZmlsZXMgZm9yICVzIC4uLlxuIgorbXNnc3RyICJPZHN0cmHFiHVqaSBrb25maWd1cmHEjW7DrSBzb3Vib3J5IGJhbMOta3UgJXMg4oCmXG4iCisKKyM6IHNyYy9yZW1vdmUuYzo0NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlbW92ZSBvbGQgY29uZmlnIGZpbGUgYCUuMjUwcycgKD0gYCUuMjUwcycpIgorbXNnc3RyICJuZWx6ZSBvZHN0cmFuaXQgc3RhcsO9IGtvbmZpZ3VyYcSNbsOtIHNvdWJvciDigJ4lLjI1MHPigJwgKD0g4oCeJS4yNTBz4oCcKSIKKworIzogc3JjL3JlbW92ZS5jOjQ3NAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVhZCBjb25maWcgZmlsZSBkaXIgYCUuMjUwcycgKGZyb20gYCUuMjUwcycpIgorbXNnc3RyICJuZWx6ZSDEjcOtc3QgYWRyZXPDocWZIGtvbmZpZ3VyYcSNbsOtY2ggc291Ym9yxa8g4oCeJS4yNTBz4oCcICh6IOKAniUuMjUwc+KAnCkiCisKKyM6IHNyYy9yZW1vdmUuYzo1MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlbW92ZSBvbGQgYmFja3VwIGNvbmZpZyBmaWxlIGAlLjI1MHMnIChvZiBgJS4yNTBzJykiCittc2dzdHIgIm5lbHplIG9kc3RyYW5pdCBzdGFyw70ga29uZmlndXJhxI1uw60gc291Ym9yIOKAniUuMjUwc+KAnCAoeiDigJ4lLjI1MHPigJwpIgorCisjOiBzcmMvcmVtb3ZlLmM6NTY4Cittc2dpZCAiY2Fubm90IHJlbW92ZSBvbGQgZmlsZXMgbGlzdCIKK21zZ3N0ciAibmVsemUgb2RzdHJhbml0IHN0YXLDvSBzZXpuYW0gc291Ym9yxa8iCisKKyM6IHNyYy9yZW1vdmUuYzo1NzQKK21zZ2lkICJjYW4ndCByZW1vdmUgb2xkIHBvc3RybSBzY3JpcHQiCittc2dzdHIgIm5lbHplIG9kc3RyYW5pdCBzdGFyw70gcG9zdHJtIHNrcmlwdCIKKworIzogc3JjL3NlbGVjdC5jOjExNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVvZiBpbiBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZCIKK21zZ3N0ciAibmVvxI1la8OhdmFuw70ga29uZWMgc291Ym9ydSB2ZSBqbcOpbnUgYmFsw61rdSBuYSDFmcOhZGt1ICVkIgorCisjOiBzcmMvc2VsZWN0LmM6MTE2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGxpbmUgaW4gcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQiCittc2dzdHIgIm5lb8SNZWvDoXZhbsO9IGtvbmVjIMWZw6Fka3UgdmUgam3DqW51IGJhbMOta3UgbmEgxZnDoWRrdSAlZCIKKworIzogc3JjL3NlbGVjdC5jOjEyMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVvZiBhZnRlciBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZCIKK21zZ3N0ciAibmVvxI1la8OhdmFuw70ga29uZWMgc291Ym9ydSB6YSBqbcOpbmVtIGJhbMOta3UgbmEgxZnDoWRrdSAlZCIKKworIzogc3JjL3NlbGVjdC5jOjEyMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBsaW5lIGFmdGVyIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICJuZW/EjWVrw6F2YW7DvSBrb25lYyDFmcOhZGt1IHphIGptw6luZW0gYmFsw61rdSBuYSDFmcOhZGt1ICVkIgorCisjOiBzcmMvc2VsZWN0LmM6MTM2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZGF0YSBhZnRlciBwYWNrYWdlIGFuZCBzZWxlY3Rpb24gYXQgbGluZSAlZCIKK21zZ3N0ciAibmVvxI1la8OhdmFuw6EgZGF0YSB6YSDFmcOhZGt5IHBhY2thZ2UgYSBzZWxlY3Rpb24gbmEgxZnDoWRrdSAlZCIKKworIzogc3JjL3NlbGVjdC5jOjEzOQorIywgYy1mb3JtYXQKK21zZ2lkICJpbGxlZ2FsIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkOiAlLjI1MHMiCittc2dzdHIgIm5lcG92b2xlbsOpIGptw6lubyBiYWzDrWt1IG5hIMWZw6Fka3UgJWQ6ICUuMjUwcyIKKworIzogc3JjL3NlbGVjdC5jOjE0MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIHdhbnRlZCBzdGF0dXMgYXQgbGluZSAlZDogJS4yNTBzIgorbXNnc3RyICJuZXpuw6Ftw70gY8OtbG92w70gc3RhdiBuYSDFmcOhZGt1ICVkOiAlLjI1MHMiCisKKyM6IHNyYy9zZWxlY3QuYzoxNDkKK21zZ2lkICJyZWFkIGVycm9yIG9uIHN0YW5kYXJkIGlucHV0IgorbXNnc3RyICJjaHliYSBwxZlpIMSNdGVuw60gemUgc3RhbmRhcmRuw61obyB2c3R1cHUiCisKKyM6IHNyYy9zdGF0Y21kLmM6NTIKKyMsIGZ1enp5CisjfCBtc2dpZCAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBxdWVyeWluZyBwYWNrYWdlcy4iCittc2dpZCAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBvdmVycmlkaW5nIGZpbGUgc3RhdCBpbmZvcm1hdGlvbi4iCittc2dzdHIgIlBybyBuw6Fwb3bEm2R1IG8gZG90YXpvdsOhbsOtIHNlIG5hIGJhbMOta3kgcG91xb5panRlIC0taGVscC4iCisKKyM6IHNyYy9zdGF0Y21kLmM6NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvcHlyaWdodCAoQykgMjAwMCwgMjAwMSBXaWNoZXJ0IEFra2VybWFuLlxuIgorIkNvcHlyaWdodCAoQykgMjAwNi0yMDA5IEd1aWxsZW0gSm92ZXIuXG4iCittc2dzdHIgIiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsIDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDYtMjAwOSBHdWlsbGVtIEpvdmVyLlxuIgorCisjOiBzcmMvc3RhdGNtZC5jOjgxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC0tYWRkIDxvd25lcj4gPGdyb3VwPiA8bW9kZT4gPGZpbGU+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkIGEgbmV3IGVudHJ5IGludG8gdGhlIGRhdGFiYXNlLlxuIgorIiAgLS1yZW1vdmUgPGZpbGU+ICAgICAgICAgIHJlbW92ZSBmaWxlIGZyb20gdGhlIGRhdGFiYXNlLlxuIgorIiAgLS1saXN0IFs8Z2xvYi1wYXR0ZXJuPl0gIGxpc3QgY3VycmVudCBvdmVycmlkZXMgaW4gdGhlIGRhdGFiYXNlLlxuIgorIlxuIgorbXNnc3RyICIiCisiUMWZw61rYXp5OlxuIgorIiAgLS1hZGQgPHZsYXN0bsOtaz4gPHNrdXBpbmE+IDxyZcW+aW0+IDxzb3Vib3I+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgcMWZaWTDoSBkbyBkYXRhYsOhemUgbm92w70gesOhem5hbVxuIgorIiAgLS1yZW1vdmUgPHNvdWJvcj4gICAgICAgIG9kc3RyYW7DrSBzb3Vib3IgeiBkYXRhYsOhemVcbiIKKyIgIC0tbGlzdCBbPHZ6b3ItZ2xvYj5dICAgICB2eXDDrcWhZSBha3R1w6FsbsOtIHNlem5hbSBwxZllYml0w71jaCBzb3Vib3LFr1xuIgorIlxuIgorCisjOiBzcmMvc3RhdGNtZC5jOjg5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIHNldCB0aGUgZGlyZWN0b3J5IHdpdGggdGhlIHN0YXRvdmVycmlkZSBmaWxlLlxuIgorIiAgLS11cGRhdGUgICAgICAgICAgICAgICAgIGltbWVkaWF0ZWx5IHVwZGF0ZSBmaWxlIHBlcm1pc3Npb25zLlxuIgorIiAgLS1mb3JjZSAgICAgICAgICAgICAgICAgIGZvcmNlIGFuIGFjdGlvbiBldmVuIGlmIGEgc2FuaXR5IGNoZWNrIGZhaWxzLlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHF1aWV0IG9wZXJhdGlvbiwgbWluaW1hbCBvdXRwdXQuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorbXNnc3RyICIiCisiVm9sYnk6XG4iCisiICAtLWFkbWluZGlyIDxhZHJlc8OhxZk+ICAgICB1csSNw60gYWRyZXPDocWZIHNlIHNvdWJvcmVtIHN0YXRvdmVycmlkZVxuIgorIiAgLS11cGRhdGUgICAgICAgICAgICAgICAgIG9rYW3Fvml0xJsgYWt0dWFsaXp1amUgb3Byw6F2bsSbbsOtIGsgc291Ym9yxa9tXG4iCisiICAtLWZvcmNlICAgICAgICAgICAgICAgICAgdnludXTDrSBha2NpLCBpIGtkecW+IHNlbMW+ZSBrb250cm9sYSBwxZnDrcSNZXRub3N0aVxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHRpY2jDvSByZcW+aW0sIG1pbmltw6FsbsOtIHbDvXN0dXBcbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICB6b2JyYXrDrSB0dXRvIG7DoXBvdsSbZHVcbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICB6b2JyYXrDrSB2ZXJ6aVxuIgorCisjOiBzcmMvc3RhdGNtZC5jOjExNgorbXNnaWQgInN0cmlwcGluZyB0cmFpbGluZyAvIgorbXNnc3RyICJvZHN0cmHFiHVqaSBrb25jb3bDqSAvIgorCisjOiBzcmMvc3RhdGNtZC5jOjIwNworbXNnaWQgImNhbm5vdCBvcGVuIG5ldyBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAibmVsemUgb3RldsWZw610IG5vdsO9IHNvdWJvciBzdGF0b3ZlcnJpZGUiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjIyCittc2dpZCAiZXJyb3IgcmVtb3Zpbmcgc3RhdG92ZXJyaWRlLW9sZCIKK21zZ3N0ciAiY2h5YmEgcMWZaSBvZHN0cmHFiG92w6Fuw60gc291Ym9ydSBzdGF0b3ZlcnJpZGUtb2xkIgorCisjOiBzcmMvc3RhdGNtZC5jOjIyNAorbXNnaWQgImVycm9yIGNyZWF0aW5nIG5ldyBzdGF0b3ZlcnJpZGUtb2xkIgorbXNnc3RyICJjaHliYSBwxZlpIHZ5dHbDocWZZW7DrSBub3bDqWhvIHNvdWJvcnUgc3RhdG92ZXJyaWRlLW9sZCIKKworIzogc3JjL3N0YXRjbWQuYzoyMjYKK21zZ2lkICJlcnJvciBpbnN0YWxsaW5nIG5ldyBzdGF0b3ZlcnJpZGUiCittc2dzdHIgImNoeWJhIHDFmWkgaW5zdGFsYWNpIG5vdsOpaG8gc291Ym9ydSBzdGF0b3ZlcnJpZGUiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjQ2Cittc2dpZCAiLS1hZGQgbmVlZHMgZm91ciBhcmd1bWVudHMiCittc2dzdHIgIi0tYWRkIHZ5xb5hZHVqZSDEjXR5xZlpIGFyZ3VtZW50eSIKKworIzogc3JjL3N0YXRjbWQuYzoyNTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkFuIG92ZXJyaWRlIGZvciAnJXMnIGFscmVhZHkgZXhpc3RzLCBidXQgLS1mb3JjZSBzcGVjaWZpZWQgc28gd2lsbCBiZSAiCisiaWdub3JlZC4iCittc2dzdHIgIlDFmWVwaXMg4oCeJXPigJwgamnFviBleGlzdHVqZSwgYWxlIGt2xa9saSAtLWZvcmNlIGplaiBidWRlbWUgaWdub3JvdmF0LiIKKworIzogc3JjL3N0YXRjbWQuYzoyNjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiQW4gb3ZlcnJpZGUgZm9yICclcycgYWxyZWFkeSBleGlzdHMsIGFib3J0aW5nLiIKK21zZ3N0ciAiUMWZZXBpcyDigJ4lc+KAnCBqacW+IGV4aXN0dWplLCBwxZllcnXFoXVqaS4iCisKKyM6IHNyYy9zdGF0Y21kLmM6MjcyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tdXBkYXRlIGdpdmVuIGJ1dCAlcyBkb2VzIG5vdCBleGlzdCIKK21zZ3N0ciAiYnlsbyB6YWTDoW5vIC0tdXBkYXRlLCBhbGUgJXMgbmVleGlzdHVqZSIKKworIzogc3JjL3N0YXRjbWQuYzoyOTYKK21zZ2lkICJObyBvdmVycmlkZSBwcmVzZW50LiIKK21zZ3N0ciAixb3DoWRuw6kgcMWZZWJpdMOtIG5lZXhpc3R1amUiCisKKyM6IHNyYy9zdGF0Y21kLmM6MzA0Cittc2dpZCAiLS11cGRhdGUgaXMgdXNlbGVzcyBmb3IgLS1yZW1vdmUiCittc2dzdHIgInBybyAtLXJlbW92ZSBqZSAtLXVwZGF0ZSB6Ynl0ZcSNbsOpIgorCisjOiBzcmMvc3RhdGRiLmM6NTkKK21zZ2lkICJzeW50YXggZXJyb3I6IGludmFsaWQgdWlkIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJzeW50YWt0aWNrw6EgY2h5YmE6IG5lcGxhdG7DqSB1aWQgdiBzb3Vib3J1IHN0YXRvdmVycmlkZTogJXMiCisKKyM6IHNyYy9zdGF0ZGIuYzo2NAorIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3I6IHVua25vd24gdXNlciAnJXMnIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJzeW50YWt0aWNrw6EgY2h5YmE6IG5lem7DoW3DvSB1xb5pdmF0ZWwg4oCeJXPigJwgdiBzb3Vib3J1IHN0YXRvdmVycmlkZSIKKworIzogc3JjL3N0YXRkYi5jOjgzCittc2dpZCAic3ludGF4IGVycm9yOiBpbnZhbGlkIGdpZCBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAic3ludGFrdGlja8OhIGNoeWJhOiBuZXBsYXRuw6kgZ2lkIHYgc291Ym9ydSBzdGF0b3ZlcnJpZGU6ICVzIgorCisjOiBzcmMvc3RhdGRiLmM6ODgKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yOiB1bmtub3duIGdyb3VwICclcycgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgInN5bnRha3RpY2vDoSBjaHliYTogbmV6bsOhbcOhIHNrdXBpbmEg4oCeJXPigJwgdiBzb3Vib3J1IHN0YXRvdmVycmlkZSIKKworIzogc3JjL3N0YXRkYi5jOjEwNAorbXNnaWQgInN5bnRheCBlcnJvcjogaW52YWxpZCBtb2RlIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJzeW50YWt0aWNrw6EgY2h5YmE6IG5lcGxhdG7DvSByZcW+aW0gdiBzb3Vib3J1IHN0YXRvdmVycmlkZSIKKworIzogc3JjL3N0YXRkYi5jOjEyNworbXNnaWQgImZhaWxlZCB0byBvcGVuIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJuZWx6ZSBvdGV2xZnDrXQgc291Ym9yIHN0YXRvdmVycmlkZSIKKworIzogc3JjL3N0YXRkYi5jOjEzNAorbXNnaWQgImZhaWxlZCB0byBmc3RhdCBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAibmVsemUgZnN0YXQgc291Ym9yIHN0YXRvdmVycmlkZSIKKworIzogc3JjL3N0YXRkYi5jOjEzNworbXNnaWQgImZhaWxlZCB0byBmc3RhdCBwcmV2aW91cyBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAibmVsemUgZnN0YXQgcMWZZWRjaG96w60gc291Ym9yIHN0YXRvdmVycmlkZSIKKworIzogc3JjL3N0YXRkYi5jOjE2MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic3RhdG92ZXJyaWRlIGZpbGUgYCUuMjUwcyciCittc2dpZCAicmVhZGluZyBzdGF0b3ZlcnJpZGUgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAic3RhdG92ZXJyaWRlIHNvdWJvciDigJ4lLjI1MHPigJwiCisKKyM6IHNyYy9zdGF0ZGIuYzoxNjkKK21zZ2lkICJzdGF0b3ZlcnJpZGUgZmlsZSBpcyBtaXNzaW5nIGZpbmFsIG5ld2xpbmUiCittc2dzdHIgInNvdWJvciBzdGF0b3ZlcnJpZGUgbmVvYnNhaHVqZSB6w6F2xJtyZcSNbsO9IG5vdsO9IMWZw6FkZWsiCisKKyM6IHNyYy9zdGF0ZGIuYzoxNzMKK21zZ2lkICJzdGF0b3ZlcnJpZGUgZmlsZSBjb250YWlucyBlbXB0eSBsaW5lIgorbXNnc3RyICJzb3Vib3Igc3RhdG92ZXJyaWRlIG9ic2FodWplIHByw6F6ZG7DvSDFmcOhZGVrIgorCisjOiBzcmMvc3RhdGRiLmM6MTc4IHNyYy9zdGF0ZGIuYzoxOTAgc3JjL3N0YXRkYi5jOjIwMgorbXNnaWQgInN5bnRheCBlcnJvciBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAic3ludGFrdGlja8OhIGNoeWJhIHYgc291Ym9ydSBzdGF0b3ZlcnJpZGUiCisKKyM6IHNyYy9zdGF0ZGIuYzoxODYgc3JjL3N0YXRkYi5jOjE5OCBzcmMvc3RhdGRiLmM6MjEwCittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgbGluZSBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAibmVvxI1la8OhdmFuw70ga29uZWMgxZnDoWRrdSB2IHNvdWJvcnUgc3RhdG92ZXJyaWRlIgorCisjOiBzcmMvc3RhdGRiLmM6MjE0CisjLCBjLWZvcm1hdAorbXNnaWQgIm11bHRpcGxlIHN0YXR1c292ZXJyaWRlcyBwcmVzZW50IGZvciBmaWxlICclLjI1MHMnIgorbXNnc3RyICJwcm8gc291Ym9yIOKAniUuMjUwc+KAnCBleGlzdHVqZSB2w61jZSBzdGF0dXNvdmVycmlkZSIKKworIzogc3JjL3RyaWdjbWQuYzo0NgorbXNnaWQgIlR5cGUgZHBrZy10cmlnZ2VyIC0taGVscCBmb3IgaGVscCBhYm91dCB0aGlzIHV0aWxpdHkuIgorbXNnc3RyICJQcm8gem9icmF6ZW7DrSBuw6Fwb3bEm2R5IG5hcGnFoXRlIGRwa2ctdHJpZ2dlciAtLWhlbHAuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjUxCisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiAlcyBwYWNrYWdlIHRyaWdnZXIgdXRpbGl0eSB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICJEZWJpYW4gJXMgLSBuw6FzdHJvaiBwcm8gcHLDoWNpIHNlIHNwb3XFoXTEm21pIHZlcnplICVzLlxuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjY3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJVc2FnZTogJXMgWzxvcHRpb25zPiAuLi5dIDx0cmlnZ2VyLW5hbWU+XG4iCisiICAgICAgICVzIFs8b3B0aW9ucz4gLi4uXSA8Y29tbWFuZD5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIlBvdcW+aXTDrTogJXMgWzx2b2xieT4g4oCmXSA8bsOhemV2X3Nwb3XFoXTEm8SNZT5cbiIKKyIgICAgICAgICAlcyBbPHZvbGJ5PiDigKZdIDxwxZnDrWthej5cbiIKKyJcbiIKKworIzogc3JjL3RyaWdjbWQuYzo3MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtLWNoZWNrLXN1cHBvcnRlZCAgICAgICAgICAgICAgICBDaGVjayBpZiB0aGUgcnVubmluZyBkcGtnIHN1cHBvcnRzICIKKyJ0cmlnZ2Vycy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIlDFmcOta2F6eTpcbiIKKyIgIC0tY2hlY2stc3VwcG9ydGVkICAgICAgICAgICB6a29udHJvbHVqZSwgemRhIGRwa2cgcG9kcG9ydWplIHNwb3XFoXTEm8SNZVxuIgorIlxuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjgyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hZG1pbmRpcj08ZGlyZWN0b3J5PiAgICAgICAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMuXG4iCisiICAtLWJ5LXBhY2thZ2U9PHBhY2thZ2U+ICAgICAgICAgICBPdmVycmlkZSB0cmlnZ2VyIGF3YWl0ZXIgKG5vcm1hbGx5IHNldFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBieSBkcGtnKS5cbiIKKyIgIC0tbm8tYXdhaXQgICAgICAgICAgICAgICAgICAgICAgIE5vIHBhY2thZ2UgbmVlZHMgdG8gYXdhaXQgdGhlICIKKyJwcm9jZXNzaW5nLlxuIgorIiAgLS1uby1hY3QgICAgICAgICAgICAgICAgICAgICAgICAgSnVzdCB0ZXN0IC0gZG9uJ3QgYWN0dWFsbHkgY2hhbmdlICIKKyJhbnl0aGluZy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIlZvbGJ5OlxuIgorIiAgLS1hZG1pbmRpcj08YWRyZXPDocWZPiAgICAgICAgbcOtc3RvICVzIHBvdcW+aWplIDxhZHJlc8OhxZk+XG4iCisiICAtLWJ5LXBhY2thZ2U9PGJhbMOtaz4gICAgICAgIHptxJtuw60sIGt0ZXLDvSBiYWzDrWsgxI1la8OhIG5hIHNwb3XFoXTEm8SNXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG5vcm3DoWxuxJsgdG8gZHBrZyBuYXN0YXZ1amUgYXV0b21hdGlja3kpXG4iCisiICAtLW5vLWF3YWl0ICAgICAgICAgICAgICAgICAgxb7DoWRuw70gYmFsw61rIG5ldnnFvmFkdWplIHBvxI1rYXQgbmEgenByYWNvdsOhbsOtXG4iCisiICAtLW5vLWFjdCAgICAgICAgICAgICAgICAgICAgcG91emUgdGVzdHVqZSwgbmljIG5lbcSbbsOtXG4iCisiXG4iCisKKyM6IHNyYy90cmlnY21kLmM6MTUyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB0cmlnZ2VycyBkYXRhIGRpcmVjdG9yeSBub3QgeWV0IGNyZWF0ZWRcbiIKK21zZ3N0ciAiJXM6IGRhdG92w70gYWRyZXPDocWZIHBybyBzcG91xaF0xJvEjWUgamXFoXTEmyBuZW7DrSB2eXR2b8WZZW5cbiIKKworIzogc3JjL3RyaWdjbWQuYzoxNTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IHRyaWdnZXIgcmVjb3JkcyBub3QgeWV0IGluIGV4aXN0ZW5jZVxuIgorbXNnc3RyICIlczogesOhem5hbXkgc3BvdcWhdMSbxI3FryB6YXTDrW0gbmVleGlzdHVqw61cbiIKKworIzogc3JjL3RyaWdjbWQuYzoyMDUKK21zZ2lkICJ0YWtlcyBvbmUgYXJndW1lbnQsIHRoZSB0cmlnZ2VyIG5hbWUiCittc2dzdHIgInZ5xb5hZHVqZSBqZWRlbiBwYXJhbWV0ciwgbsOhemV2IHNwb3XFoXTEm8SNZSIKKworIzogc3JjL3RyaWdjbWQuYzoyMTAKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgImRwa2ctdHJpZ2dlciBtdXN0IGJlIGNhbGxlZCBmcm9tIGEgbWFpbnRhaW5lciBzY3JpcHQgKG9yIHdpdGggYSAtLWJ5LSIKKyN8ICJwYWNrYWdlIG9wdGlvbikiCittc2dpZCAibXVzdCBiZSBjYWxsZWQgZnJvbSBhIG1haW50YWluZXIgc2NyaXB0IChvciB3aXRoIGEgLS1ieS1wYWNrYWdlIG9wdGlvbikiCittc2dzdHIgIiIKKyJkcGtnLXRyaWdnZXIgbXVzw60gYsO9dCB6YXZvbMOhbiB6IGtvbmZpZ3VyYcSNbsOtaG8gc2tyaXB0dSAobmVibyBzIHBhcmFtZXRyZW0gLS0iCisiYnktcGFja2FnZSkiCisKKyM6IHNyYy90cmlnY21kLmM6MjE1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJkcGtnLXRyaWdnZXI6IGlsbGVnYWwgYXdhaXRlZCBwYWNrYWdlIG5hbWUgYCUuMjUwcyc6ICUuMjUwcyIKK21zZ2lkICJpbGxlZ2FsIGF3YWl0ZWQgcGFja2FnZSBuYW1lICclLjI1MHMnOiAlLjI1MHMiCittc2dzdHIgImRwa2ctdHJpZ2dlcjogbmVkb3ZvbGVuw6kgam3DqW5vIG/EjWVrw6F2YWrDrWPDrWhvIGJhbMOta3Ug4oCeJS4yNTBz4oCcOiAlLjI1MHMiCisKKyM6IHNyYy90cmlnY21kLmM6MjIxCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgdHJpZ2dlciBuYW1lIGAlLjI1MHMnOiAlLjI1MHMiCittc2dzdHIgIm5lcGxhdG7DqSBqbcOpbm8gc3BvdcWhdMSbxI1lIOKAniUuMjUwc+KAnDogJS4yNTBzIgorCisjOiBzcmMvdHJpZ3Byb2MuYzoyNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBjeWNsZSBmb3VuZCB3aGlsZSBwcm9jZXNzaW5nIHRyaWdnZXJzOlxuIgorIiBjaGFpbiBvZiBwYWNrYWdlcyB3aG9zZSB0cmlnZ2VycyBhcmUgb3IgbWF5IGJlIHJlc3BvbnNpYmxlOlxuIgorbXNnc3RyICIiCisiJXM6IHDFmWkgenByYWNvdsOhbsOtIHNwb3XFoXTEm8SNxa8gYnlsIG5hbGV6ZW4gY3lrbHVzOlxuIgorIiDFmWV0xJt6IGJhbMOta8WvLCBqZWppY2jFviBzcG91xaF0xJvEjWUgbW9ob3UgYsO9dCB6b2Rwb3bEm2Ruw6k6XG4iCisKKyM6IHNyYy90cmlncHJvYy5jOjI1OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiIHBhY2thZ2VzJyBwZW5kaW5nIHRyaWdnZXJzIHdoaWNoIGFyZSBvciBtYXkgYmUgdW5yZXNvbHZhYmxlOlxuIgorbXNnc3RyICIiCisiXG4iCisiIG5ldnnFmcOtemVuw6kgc3BvdcWhdMSbxI1lLCBrdGVyw6kgc2UgbmVtdXPDrSBwb2RhxZlpdCB6cHJhY292YXQ6XG4iCisKKyM6IHNyYy90cmlncHJvYy5jOjI4MQorbXNnaWQgInRyaWdnZXJzIGxvb3BpbmcsIGFiYW5kb25lZCIKK21zZ3N0ciAic3BvdcWhdMSbxI1lIHR2b8WZw60gY3lrbHVzLCBwxZllcnXFoWVubyIKKworIzogc3JjL3RyaWdwcm9jLmM6MzEyCisjLCBjLWZvcm1hdAorbXNnaWQgIlByb2Nlc3NpbmcgdHJpZ2dlcnMgZm9yICVzIC4uLlxuIgorbXNnc3RyICJacHJhY292w6Fuw60gc3BvdcWhdMSbxI3FryBwcm8gYmFsw61rICVzIOKAplxuIgorCisjOiBzcmMvdXBkYXRlLmM6NTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIi0tJXMgbmVlZHMgZXhhY3RseSBvbmUgUGFja2FnZXMgZmlsZSBhcmd1bWVudCIKK21zZ2lkICItLSVzIG5lZWRzIGV4YWN0bHkgb25lIFBhY2thZ2VzLWZpbGUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMgdnnFvmFkdWplIHByw6F2xJsgamVkbm8gam3DqW5vIHNvdWJvcnUgUGFja2FnZXMiCisKKyM6IHNyYy91cGRhdGUuYzo2MgorbXNnaWQgInVuYWJsZSB0byBhY2Nlc3MgZHBrZyBzdGF0dXMgYXJlYSBmb3IgYnVsayBhdmFpbGFibGUgdXBkYXRlIgorbXNnc3RyICIiCisibmVsemUgcMWZaXN0b3VwaXQga2Ugc3Rhdm92w6kgb2JsYXN0aSBkcGtnIHBybyBvYmplbW5vdSBkb3N0dXBub3UgYWt0dWFsaXphY2kiCisKKyM6IHNyYy91cGRhdGUuYzo2NAorbXNnaWQgImJ1bGsgYXZhaWxhYmxlIHVwZGF0ZSByZXF1aXJlcyB3cml0ZSBhY2Nlc3MgdG8gZHBrZyBzdGF0dXMgYXJlYSIKK21zZ3N0ciAiIgorIm9iamVtbsOhIGRvc3R1cG7DoSBha3R1YWxpemFjZSB2ecW+YWR1amUgcHLDoXZhIHrDoXBpc3UgZG8gc3Rhdm92w6kgb2JsYXN0aSBkcGtnIgorCisjOiBzcmMvdXBkYXRlLmM6NzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVwbGFjaW5nIGF2YWlsYWJsZSBwYWNrYWdlcyBpbmZvLCB1c2luZyAlcy5cbiIKK21zZ3N0ciAiTmFocmF6dWppIGluZm9ybWFjZSBvIGRvc3R1cG7DvWNoIGJhbMOtY8OtY2ggeiAlcy5cbiIKKworIzogc3JjL3VwZGF0ZS5jOjc0CisjLCBjLWZvcm1hdAorbXNnaWQgIlVwZGF0aW5nIGF2YWlsYWJsZSBwYWNrYWdlcyBpbmZvLCB1c2luZyAlcy5cbiIKK21zZ3N0ciAiQWt0dWFsaXp1amkgaW5mb3JtYWNlIG8gZG9zdHVwbsO9Y2ggYmFsw61jw61jaCB6ICVzLlxuIgorCisjOiBzcmMvdXBkYXRlLmM6MTAxCisjLCBjLWZvcm1hdAorbXNnaWQgIkluZm9ybWF0aW9uIGFib3V0ICVkIHBhY2thZ2Ugd2FzIHVwZGF0ZWQuXG4iCittc2dpZF9wbHVyYWwgIkluZm9ybWF0aW9uIGFib3V0ICVkIHBhY2thZ2VzIHdhcyB1cGRhdGVkLlxuIgorbXNnc3RyWzBdICJCeWx5IGFrdHVhbGl6b3bDoW55IGluZm9ybWFjZSBvICVkIGJhbMOta3UuXG4iCittc2dzdHJbMV0gIkJ5bHkgYWt0dWFsaXpvdsOhbnkgaW5mb3JtYWNlIG8gJWQgYmFsw61jw61jaC5cbiIKK21zZ3N0clsyXSAiQnlseSBha3R1YWxpem92w6FueSBpbmZvcm1hY2UgbyAlZCBiYWzDrWPDrWNoLlxuIgorCisjOiBzcmMvdXBkYXRlLmM6MTE1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJvYnNvbGV0ZSAnLS0lcycgb3B0aW9uLCB1bmF2YWlsYWJsZSBwYWNrYWdlcyBhcmUgYXV0b21hdGljYWxseSBjbGVhbmVkIHVwLiIKK21zZ3N0ciAiemFzdGFyYWzDoSB2b2xiYSDigJ4tLSVz4oCcLCBuZWRvc3R1cG7DqSBiYWzDrWt5IGpzb3UgxI1pxaF0xJtueSBhdXRvbWF0aWNreS4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgbmFtZSAnJS41MHMuLi4nIGlzIHRvbyBsb25nIgorbXNnc3RyICJqbcOpbm8gc291Ym9ydSDigJ4lLjUwc+KApuKAnCBqZSBwxZnDrWxpxaEgZGxvdWjDqSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoxMjkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgZmlsZSBuYW1lICclLjI1MHMnIgorbXNnc3RyICJuZWx6ZSB6amlzdGl0IHN0YXYgc291Ym9ydSDigJ4lLjI1MHPigJwiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTg5Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgY29udHJvbCBkaXJlY3RvcnkiCittc2dzdHIgIm5lbHplIHpqaXN0aXQgc3RhdiDFmcOtZMOtY8OtaG8gYWRyZXPDocWZZSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoxOTEKK21zZ2lkICJjb250cm9sIGRpcmVjdG9yeSBpcyBub3QgYSBkaXJlY3RvcnkiCittc2dzdHIgIsWZw61kw61jw60gYWRyZXPDocWZIG5lbsOtIGFkcmVzw6HFmWVtIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjE5MworIywgYy1mb3JtYXQKK21zZ2lkICJjb250cm9sIGRpcmVjdG9yeSBoYXMgYmFkIHBlcm1pc3Npb25zICUwM2xvIChtdXN0IGJlID49MDc1NSBhbmQgPD0wNzc1KSIKK21zZ3N0ciAixZnDrWTDrWPDrSBhZHJlc8OhxZkgbcOhIMWhcGF0bsOhIHByw6F2YSAlMDNsbyAobXVzw60gYsO9dCA+PTA3NTUgYSA8PTA3NzUpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjIwNAorIywgYy1mb3JtYXQKK21zZ2lkICJtYWludGFpbmVyIHNjcmlwdCBgJS41MHMnIGlzIG5vdCBhIHBsYWluIGZpbGUgb3Igc3ltbGluayIKK21zZ3N0ciAia29uZmlndXJhxI1uw60gc2tyaXB0IOKAniUuNTBz4oCcIG5lbsOtIG9iecSNZWpuw70gc291Ym9yIGFuaSBzeW1ib2xpY2vDvSBvZGtheiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyMDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm1haW50YWluZXIgc2NyaXB0IGAlLjUwcycgaGFzIGJhZCBwZXJtaXNzaW9ucyAlMDNsbyAobXVzdCBiZSA+PTA1NTUgYW5kICIKKyI8PTA3NzUpIgorbXNnc3RyICIiCisia29uZmlndXJhxI1uw60gc2tyaXB0IOKAniUuNTBz4oCcIG3DoSDFoXBhdG7DoSBwcsOhdmEgJTAzbG8gKG11c8OtIGLDvXQgPj0wNTU1IGEgPD0wNzc1KSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAibWFpbnRhaW5lciBzY3JpcHQgYCUuNTBzJyBpcyBub3Qgc3RhdHRhYmxlIgorbXNnc3RyICJuYSBrb25maWd1cmHEjW7DrSBza3JpcHQg4oCeJS41MHPigJwgc2UgbmVkw6EgemF2b2xhdCBzdGF0IgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjIzNworbXNnaWQgImVycm9yIG9wZW5pbmcgY29uZmZpbGVzIGZpbGUiCittc2dzdHIgImNoeWJhIHDFmWkgb3RldsWZZW7DrSBzb3Vib3J5IGNvbmZmaWxlcyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNDYKK21zZ2lkICJlbXB0eSBzdHJpbmcgZnJvbSBmZ2V0cyByZWFkaW5nIGNvbmZmaWxlcyIKK21zZ3N0ciAiZmdldHMgdnLDoXRpbCBwxZlpIMSNdGVuw60ga29uZmlndXJhxI1uw61obyBzb3Vib3J1IHByw6F6ZG7DvSDFmWV0xJt6ZWMiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjUxCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIG5hbWUgJyUuNTBzLi4uJyBpcyB0b28gbG9uZywgb3IgbWlzc2luZyBmaW5hbCBuZXdsaW5lIgorbXNnc3RyICIiCisiam3DqW5vIGtvbmZpZ3VyYcSNbsOtaG8gc291Ym9ydSDigJ4lLjUwc+KApuKAnCBqZSBwxZnDrWxpxaEgZGxvdWjDqSwgbmVibyBjaHliw60ga29uY292w6EgIgorIm5vdsOhIMWZw6Fka2EiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjY0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIGZpbGVuYW1lICclcycgY29udGFpbnMgdHJhaWxpbmcgd2hpdGUgc3BhY2VzIgorbXNnc3RyICJrb25maWd1cmHEjW7DrSBzb3Vib3Ig4oCeJXPigJwgbcOhIG5hIGtvbmNpIGLDrWzDqSB6bmFreSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgYCUuMjUwcycgZG9lcyBub3QgYXBwZWFyIGluIHBhY2thZ2UiCittc2dzdHIgImtvbmZpZ3VyYcSNbsOtIHNvdWJvciDigJ4lLjI1MHPigJwgbmVieWwgdiBiYWzDrWt1IG5lbmFsZXplbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgYCUuMjUwcycgaXMgbm90IHN0YXR0YWJsZSIKK21zZ3N0ciAibmEga29uZmlndXJhxI1uw61tIHNvdWJvcnUg4oCeJS4yNTBz4oCcIG5lbHplIHNwdXN0aXQgc3RhdCgpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI3MAorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSAnJXMnIGlzIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgImtvbmZpZ3VyYcSNbsOtIHNvdWJvciDigJ4lc+KAnCBuZW7DrSBvYnnEjWVqbsO9IHNvdWJvciIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgbmFtZSAnJXMnIGlzIGR1cGxpY2F0ZWQiCittc2dzdHIgIm7DoXpldiBrb25maWd1cmHEjW7DrWhvIHNvdWJvcnUgJXMgamUgZHVwbGljaXRuw60iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6Mjg3Cittc2dpZCAiZXJyb3IgcmVhZGluZyBjb25mZmlsZXMgZmlsZSIKK21zZ3N0ciAiY2h5YmEgcMWZaSDEjXRlbsOtIHNvdWJvcnUgY29uZmZpbGVzIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjMzOQorbXNnaWQgInBhY2thZ2UgbmFtZSBoYXMgY2hhcmFjdGVycyB0aGF0IGFyZW4ndCBsb3dlcmNhc2UgYWxwaGFudW1zIG9yIGAtKy4nIgorbXNnc3RyICJqbcOpbm8gYmFsw61rdSBzZSBza2zDoWTDoSB6ZSB6bmFrxa8sIGt0ZXLDqSBuZWpzb3UgbWFsw71taSBww61zbWVueSBhbmkgYC0rLiciCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MzQxCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgY29udGFpbnMgdXNlci1kZWZpbmVkIFByaW9yaXR5IHZhbHVlICclcyciCittc2dzdHIgIuKAniVz4oCcIG9ic2FodWplIHXFvml2YXRlbGVtIGRlZmlub3Zhbm91IGhvZG5vdHUgUHJpb3JpdHkg4oCeJXPigJwiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MzQ3CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgY29udGFpbnMgdXNlci1kZWZpbmVkIGZpZWxkICclcyciCittc2dzdHIgIuKAniVz4oCcIG9ic2FodWplIHXFvml2YXRlbGVtIGRlZmlub3Zhbm91IHBvbG/Fvmt1IOKAniVz4oCcIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjM1OAorIywgYy1mb3JtYXQKK21zZ2lkICJpZ25vcmluZyAlZCB3YXJuaW5nIGFib3V0IHRoZSBjb250cm9sIGZpbGUocylcbiIKK21zZ2lkX3BsdXJhbCAiaWdub3JpbmcgJWQgd2FybmluZ3MgYWJvdXQgdGhlIGNvbnRyb2wgZmlsZShzKVxuIgorbXNnc3RyWzBdICJpZ25vcnVqaSAlZCB2YXJvdsOhbsOtIG8ga29udHJvbG7DrWNoIHNvdWJvcmVjaFxuIgorbXNnc3RyWzFdICJpZ25vcnVqaSAlZCB2YXJvdsOhbsOtIG8ga29udHJvbG7DrWNoIHNvdWJvcmVjaFxuIgorbXNnc3RyWzJdICJpZ25vcnVqaSAlZCB2YXJvdsOhbsOtIG8ga29udHJvbG7DrWNoIHNvdWJvcmVjaFxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQwMyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQyOQorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhIDxkaXJlY3Rvcnk+IGFyZ3VtZW50IgorbXNnc3RyICItLSVzIHZ5xb5hZHVqZSBqYWtvIGFyZ3VtZW50IDxhZHJlc8OhxZk+IgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQwOQorbXNnaWQgIi0tYnVpbGQgdGFrZXMgYXQgbW9zdCB0d28gYXJndW1lbnRzIgorbXNnc3RyICItLWJ1aWxkIHZ5xb5hZHVqZSBuZWp2w73FoWUgZHZhIHBhcmFtZXRyeSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoZWNrIGZvciBleGlzdGVuY2Ugb2YgYXJjaGl2ZSBgJS4yNTBzJyIKK21zZ3N0ciAibmVsemUgemtvbnRyb2xvdmF0IGV4aXN0ZW5jaSBhcmNoaXZ1IOKAniUuMjUwc+KAnCIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzAKK21zZ2lkICJ0YXJnZXQgaXMgZGlyZWN0b3J5IC0gY2Fubm90IHNraXAgY29udHJvbCBmaWxlIGNoZWNrIgorbXNnc3RyICJjw61sIGplIGFkcmVzw6HFmSAtIG5lbHplIHDFmWVza2/EjWl0IHRlc3Qga29udHJvbG7DrWhvIHNvdWJvcnUiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDMxCittc2dpZCAibm90IGNoZWNraW5nIGNvbnRlbnRzIG9mIGNvbnRyb2wgYXJlYS4iCittc2dzdHIgIm5la29udHJvbHVqaSBvYnNhaCBrb250cm9sbsOtIG9ibGFzdGkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDMyCisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2ctZGViOiBidWlsZGluZyBhbiB1bmtub3duIHBhY2thZ2UgaW4gJyVzJy5cbiIKK21zZ3N0ciAiZHBrZy1kZWI6IHZ5dHbDocWZw61tIG5lem7DoW3DvSBiYWzDrWsgdiDigJ4lc+KAnC5cbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZy1kZWI6IGJ1aWxkaW5nIHBhY2thZ2UgYCVzJyBpbiBgJXMnLlxuIgorbXNnc3RyICJkcGtnLWRlYjogdnl0dsOhxZnDrW0gYmFsw61rIOKAniVz4oCcIHYg4oCeJXPigJwuXG4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDY3IGRwa2ctZGViL2J1aWxkLmM6NTIxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gbWFrZSB0bXBmaWxlIChkYXRhKSIKK21zZ2lkICJmYWlsZWQgdG8gbWFrZSB0ZW1wb3JhcnkgZmlsZSAoJXMpIgorbXNnc3RyICJzZWxoYWxvIHZ5dHZvxZllbsOtIGRvxI1hc27DqWhvIHNvdWJvcnUgKGRhdGEpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ2NyBkcGtnLWRlYi9idWlsZC5jOjQ3MCBkcGtnLWRlYi9idWlsZC5jOjQ3NworIzogZHBrZy1kZWIvYnVpbGQuYzo0ODUgZHBrZy1kZWIvYnVpbGQuYzo0OTQgZHBrZy1kZWIvYnVpbGQuYzo0OTkKKyMsIGZ1enp5CisjfCBtc2dpZCAiY29udHJvbCBhcmVhIgorbXNnaWQgImNvbnRyb2wgbWVtYmVyIgorbXNnc3RyICJrb250cm9sbsOtIG9ibGFzdCIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0NzAgZHBrZy1kZWIvYnVpbGQuYzo1MjQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byB1bmxpbmsgdG1wZmlsZSAoZGF0YSksICVzIgorbXNnaWQgImZhaWxlZCB0byB1bmxpbmsgdGVtcG9yYXJ5IGZpbGUgKCVzKSwgJXMiCittc2dzdHIgInNlbGhhbG8gc21hesOhbsOtIGRvxI1hc27DqWhvIHNvdWJvcnUgKGRhdGEpLCAlcyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0ODUgZHBrZy1kZWIvYnVpbGQuYzo1OTMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdG1wZmlsZSAoZGF0YSkiCittc2dpZCAiZmFpbGVkIHRvIHJld2luZCB0ZW1wb3JhcnkgZmlsZSAoJXMpIgorbXNnc3RyICJwxZllc3VuIHYgZG/EjWFzbsOpbSBzb3Vib3J1IChkYXRhKSBzZWxoYWwiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDk0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gZnN0YXQgYXIgbWVtYmVyIGZpbGUgKCVzKSIKK21zZ2lkICJmYWlsZWQgdG8gc3RhdCB0ZW1wb3JhcnkgZmlsZSAoJXMpIgorbXNnc3RyICJzZWxoYWxvIHZvbMOhbsOtIGZzdGF0IG5hIHNvdWJvcnUgJXMsIGt0ZXLDvSBqZSBzb3XEjcOhc3TDrSBhciIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0OTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igd3JpdGluZyBgJXMnIgorbXNnc3RyICJjaHliYSBwxZlpIHrDoXBpc3Ug4oCeJXPigJwiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTIxIGRwa2ctZGViL2J1aWxkLmM6NTI0IGRwa2ctZGViL2J1aWxkLmM6NTQ2CisjOiBkcGtnLWRlYi9idWlsZC5jOjU3MiBkcGtnLWRlYi9idWlsZC5jOjU4MCBkcGtnLWRlYi9idWlsZC5jOjU5MworIywgZnV6enkKKyN8IG1zZ2lkICJiZXR3ZWVuIG1lbWJlcnMiCittc2dpZCAiZGF0YSBtZW1iZXIiCittc2dzdHIgIm1lemkgcHJ2a3kiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTcxIGRwa2ctZGViL2J1aWxkLmM6NTgwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gd3JpdGUgZmlsZW5hbWUgdG8gdGFyIHBpcGUgKGRhdGEpIgorbXNnaWQgImZhaWxlZCB0byB3cml0ZSBmaWxlbmFtZSB0byB0YXIgcGlwZSAoJXMpIgorbXNnc3RyICJzZWxoYWwgesOhcGlzIGptw6luYSBzb3Vib3J1IGRvIHJvdXJ5IHMgdGFyZW0gKGRhdGEpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjU4NAorbXNnaWQgIjxjb21wcmVzcz4gZnJvbSB0YXIgLWNmIgorbXNnc3RyICI8a29tcHJlc2U+IHogdGFyIC1jZiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjYxIGRwa2ctZGViL2V4dHJhY3QuYzo2MworbXNnaWQgInNoZWxsIGNvbW1hbmQgdG8gbW92ZSBmaWxlcyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6NzAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgZmlsZSBpbiAlcyBpbiAlLjI1NXMiCittc2dzdHIgIm5lb8SNZWvDoXZhbsO9IGtvbmVjIHNvdWJvcnUgdiAlcyBuYSAlLjI1NXMiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzo3MgorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciByZWFkaW5nICVzIGZyb20gZmlsZSAlLjI1NXMiCittc2dzdHIgImNoeWJhIHDFmWkgxI10ZW7DrSAlcyB6ZSBzb3Vib3J1ICUuMjU1cyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjEyNQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCBhcmNoaXZlIGAlLjI1NXMnIgorbXNnc3RyICJjaHliYSBwxZlpIMSNdGVuw60gYXJjaGl2dSDigJ4lLjI1NXPigJwiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxMjcKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgYXJjaGl2ZSIKK21zZ3N0ciAibmEgYXJjaGl2dSBzZWxoYWxvIHZvbMOhbsOtIGZzdGF0KCkiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxMzEKKyMsIGZ1enp5CisjfCBtc2dpZCAiYXJjaGl2ZSBoYXMgbm8gZG90IGluIHZlcnNpb24gbnVtYmVyIgorbXNnaWQgImFyY2hpdmUgbWFnaWMgdmVyc2lvbiBudW1iZXIiCittc2dzdHIgImFyY2hpdiBuZW3DoSB0ZcSNa3UgdiDEjcOtc2xlIHZlcnplIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTQzCisjLCBmdXp6eQorI3wgbXNnaWQgImFyY2hpdmUgaGFzIG5vIG5ld2xpbmVzIGluIGhlYWRlciIKK21zZ2lkICJhcmNoaXZlIG1lbWJlciBoZWFkZXIiCittc2dzdHIgImFyY2hpdiB2IGhsYXZpxI1jZSBuZW9ic2FodWplIG5vdsOpIMWZw6Fka3kiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNDgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBwYXJ0IG51bWJlciIKK21zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgYXJjaGl2ZSBoZWFkZXIgbWFnaWMiCittc2dzdHIgInNvdWJvciDigJ4lLjI1MHPigJwgamUgcG/FoWtvemVuIC0gxaFwYXRuw6kgxI3DrXNsbyDEjcOhc3RpIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTU1CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgbm90IGEgZGViaWFuIGJpbmFyeSBhcmNoaXZlICh0cnkgZHBrZy1zcGxpdD8pIgorbXNnc3RyICJzb3Vib3Ig4oCeJS4yNTBz4oCcIG5lbsOtIGJpbsOhcm7DrW0gYmFsw61rZW0gKHprdXN0ZSBkcGtnLXNwbGl0PykiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNTkKKyMsIGZ1enp5CisjfCBtc2dpZCAiYXJjaGl2ZSBoYXMgbm8gZG90IGluIHZlcnNpb24gbnVtYmVyIgorbXNnaWQgImFyY2hpdmUgaW5mb3JtYXRpb24gaGVhZGVyIG1lbWJlciIKK21zZ3N0ciAiYXJjaGl2IG5lbcOhIHRlxI1rdSB2IMSNw61zbGUgdmVyemUiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNjIKK21zZ2lkICJhcmNoaXZlIGhhcyBubyBuZXdsaW5lcyBpbiBoZWFkZXIiCittc2dzdHIgImFyY2hpdiB2IGhsYXZpxI1jZSBuZW9ic2FodWplIG5vdsOpIMWZw6Fka3kiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNjUKK21zZ2lkICJhcmNoaXZlIGhhcyBubyBkb3QgaW4gdmVyc2lvbiBudW1iZXIiCittc2dzdHIgImFyY2hpdiBuZW3DoSB0ZcSNa3UgdiDEjcOtc2xlIHZlcnplIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTY4CisjLCBjLWZvcm1hdAorbXNnaWQgImFyY2hpdmUgdmVyc2lvbiAlLjI1MHMgbm90IHVuZGVyc3Rvb2QsIGdldCBuZXdlciBkcGtnLWRlYiIKK21zZ3N0ciAibmV6bsOhbcOhIHZlcnplICUuMjUwcyBhcmNoaXZ1LCBuYWluc3RhbHVqdGUgbm92xJtqxaHDrSBkcGtnLWRlYiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE3OSBkcGtnLWRlYi9leHRyYWN0LmM6MjA1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJza2lwcGVkIG1lbWJlciBkYXRhIGZyb20gJXMiCittc2dpZCAic2tpcHBlZCBhcmNoaXZlIG1lbWJlciBkYXRhIGZyb20gJXMiCittc2dzdHIgInDFmWVza2/EjWVuYSDEjcOhc3Qgb2QgJXMiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxOTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgY29udGFpbnMgdW51bmRlcnN0b29kIGRhdGEgbWVtYmVyICUuKnMsIGdpdmluZyB1cCIKK21zZ2lkICJhcmNoaXZlICclLjI1MHMnIGNvbnRhaW5zIG5vdCB1bmRlcnN0b29kIGRhdGEgbWVtYmVyICUuKnMsIGdpdmluZyB1cCIKK21zZ3N0ciAic291Ym9yIOKAniUuMjUwc+KAnCBvYnNhaHVqZSBuZXJvenBvem5hbm91IMSNw6FzdCAlLipzLCB2emTDoXbDoW0gdG8iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxOTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgY29udGFpbnMgdHdvIGNvbnRyb2wgbWVtYmVycywgZ2l2aW5nIHVwIgorbXNnaWQgImFyY2hpdmUgJyUuMjUwcycgY29udGFpbnMgdHdvIGNvbnRyb2wgbWVtYmVycywgZ2l2aW5nIHVwIgorbXNnc3RyICJzb3Vib3Ig4oCeJS4yNTBz4oCcIG9ic2FodWplIGR2xJsga29udHJvbG7DrSDEjcOhc3RpLCB2emTDoXbDoW0gdG8iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyMTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIgbmV3IGRlYmlhbiBwYWNrYWdlLCB2ZXJzaW9uICVzLlxuIgorI3wgIiBzaXplICVsZCBieXRlczogY29udHJvbCBhcmNoaXZlPSAlemkgYnl0ZXMuXG4iCittc2dpZCAiIgorIiBuZXcgZGViaWFuIHBhY2thZ2UsIHZlcnNpb24gJXMuXG4iCisiIHNpemUgJWpkIGJ5dGVzOiBjb250cm9sIGFyY2hpdmU9ICVqZCBieXRlcy5cbiIKK21zZ3N0ciAiIgorIiBub3bDvSBmb3Jtw6F0IGJhbMOta3UsIHZlcnplICVzLlxuIgorIiB2ZWxpa29zdCAlbGQgYmFqdMWvLCDFmcOtZMOtY8OtIGFyY2hpdj0gJXppIGJhanTFry5cbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIzMgorbXNnaWQgImFyY2hpdmUgY29udHJvbCBtZW1iZXIgc2l6ZSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjM1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJhcmNoaXZlIGhhcyBtYWxmb3JtYXR0ZWQgY29udHJvbCBsZW5ndGggYCVzJyIKK21zZ2lkICJhcmNoaXZlIGhhcyBtYWxmb3JtYXR0ZWQgY29udHJvbCBtZW1iZXIgc2l6ZSAnJXMnIgorbXNnc3RyICJhcmNoaXYgbcOhIGNoeWJuxJsgZm9ybcOhdG92YW5vdSBrb250cm9sbsOtIGTDqWxrdSDigJ4lc+KAnCIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI0MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic2tpcHBlZCBtZW1iZXIgZGF0YSBmcm9tICVzIgorbXNnaWQgInNraXBwZWQgYXJjaGl2ZSBjb250cm9sIG1lbWJlciBkYXRhIGZyb20gJXMiCittc2dzdHIgInDFmWVza2/EjWVuYSDEjcOhc3Qgb2QgJXMiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNDYKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIgb2xkIGRlYmlhbiBwYWNrYWdlLCB2ZXJzaW9uICVzLlxuIgorI3wgIiBzaXplICVsZCBieXRlczogY29udHJvbCBhcmNoaXZlPSAlemksIG1haW4gYXJjaGl2ZT0gJWxkLlxuIgorbXNnaWQgIiIKKyIgb2xkIGRlYmlhbiBwYWNrYWdlLCB2ZXJzaW9uICVzLlxuIgorIiBzaXplICVqZCBieXRlczogY29udHJvbCBhcmNoaXZlPSAlamQsIG1haW4gYXJjaGl2ZT0gJWpkLlxuIgorbXNnc3RyICIiCisiIHN0YXLDvSBkZWJpYW7DrSBiYWzDrWssIHZlcnplICVzLlxuIgorIiB2ZWxpa29zdCAlbGQgYmFqdMWvOiBrb250cm9sbsOtIGFyY2hpdj0gJXppLCBobGF2bsOtIGFyY2hpdj0gJWxkLlxuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjU1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnLWRlYjogZmlsZSBsb29rcyBsaWtlIGl0IG1pZ2h0IGJlIGFuIGFyY2hpdmUgd2hpY2ggaGFzIGJlZW5cbiIKKyJkcGtnLWRlYjogICAgY29ycnVwdGVkIGJ5IGJlaW5nIGRvd25sb2FkZWQgaW4gQVNDSUkgbW9kZVxuIgorbXNnc3RyICIiCisiZHBrZy1kZWI6IHNvdWJvciB2eXBhZMOhIGpha28gYXJjaGl2LCBrdGVyw70gYnlsIHBvxaFrb3plblxuIgorImRwa2ctZGViOiAgICBwxZlpIHN0YWhvdsOhbsOtIHYgQVNDSUkgbcOzZHVcbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI1OQorIywgYy1mb3JtYXQKK21zZ2lkICJgJS4yNTVzJyBpcyBub3QgYSBkZWJpYW4gZm9ybWF0IGFyY2hpdmUiCittc2dzdHIgIuKAniUuMjU1c+KAnCBuZW3DoSBmb3Jtw6F0IGJhbMOta3UgZGViaWFuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjY2Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIHRvIHBpcGUgaW4gY29weSIKK21zZ3N0ciAibmVsemUgemFwaXNvdmF0IGRvIHJvdXJ5IGLEm2hlbSBrb3DDrXJvdsOhbsOtIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjY4Cittc2dpZCAiZmFpbGVkIHRvIGNsb3NlIHBpcGUgaW4gY29weSIKK21zZ3N0ciAibmVsemUgemF2xZnDrXQgcm91cnUgYsSbaGVtIGtvcMOtcm92w6Fuw60iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyODQKK21zZ2lkICJkYXRhIgorbXNnc3RyICJkYXRhIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzA3Cittc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIGRpcmVjdG9yeSIKK21zZ3N0ciAibmVsemUgdnN0b3VwaXQgZG8gYWRyZXPDocWZZSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMxMAorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgZGlyZWN0b3J5IgorbXNnc3RyICJuZWx6ZSB2eXR2b8WZaXQgYWRyZXPDocWZIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzEyCittc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIGRpcmVjdG9yeSBhZnRlciBjcmVhdGluZyBpdCIKK21zZ3N0ciAibmVsemUgc2UgcMWZZXBub3V0IGRvIHByw6F2xJsgdnl0dm/FmWVuw6lobyBhZHJlc8OhxZllIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzIzCittc2dpZCAiPGRlY29tcHJlc3M+IgorbXNnc3RyICI8ZGVrb21wcmVzZT4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozMjUKK21zZ2lkICJwYXN0ZSIKK21zZ3N0ciAicGFzdGUiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozNDIgZHBrZy1kZWIvZXh0cmFjdC5jOjM2MyBkcGtnLWRlYi9leHRyYWN0LmM6NDAyCisjOiBkcGtnLWRlYi9pbmZvLmM6NzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhIC5kZWIgZmlsZW5hbWUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMgdnnFvmFkdWplIGptw6lubyAuZGViIHNvdWJvcnUiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozNDcgZHBrZy1kZWIvZXh0cmFjdC5jOjQwNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiLS0lcyBuZWVkcyBhIHRhcmdldCBkaXJlY3RvcnkuXG4iCisiUGVyaGFwcyB5b3Ugc2hvdWxkIGJlIHVzaW5nIGRwa2cgLS1pbnN0YWxsID8iCittc2dzdHIgIiIKKyItLSVzIHZ5xb5hZHVqZSBjw61sb3bDvSBhZHJlc8OhxZkuXG4iCisiTmVjaHTEm2xpIGpzdGUgcG91xb7DrXQgZHBrZyAtLWluc3RhbGwgPyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjM1MCBkcGtnLWRlYi9leHRyYWN0LmM6NDEwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgYXQgbW9zdCB0d28gYXJndW1lbnRzICguZGViIGFuZCBkaXJlY3RvcnkpIgorbXNnc3RyICItLSVzIHZ5xb5hZHVqZSBuZWp2w73FoWUgZHZhIHBhcmFtZXRyeSAoLmRlYiBhIGFkcmVzw6HFmSkiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyB0YWtlcyBvbmx5IG9uZSBhcmd1bWVudCAoLmRlYiBmaWxlbmFtZSkiCittc2dzdHIgIi0tJXMgdnnFvmFkdWplIGplbiBqZWRlbiBwYXJhbWV0ciAoam3DqW5vIC5kZWIgc291Ym9ydSkiCisKKyM6IGRwa2ctZGViL2luZm8uYzo2MworbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byBgLycgZm9yIGNsZWFudXAiCittc2dzdHIgIm5lbHplIHptxJtuaXQgYWRyZXPDocWZIG5hIOKAni/igJwgcHJvIMO6a2xpZCIKKworIzogZHBrZy1kZWIvaW5mby5jOjEwNgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiY2Fubm90IHN0YXQgZmlsZSAnJXMnIgorbXNnaWQgImNvbnRyb2wgZmlsZSAnJXMnIgorbXNnc3RyICJuZWx6ZSB2b2xhdCBzdGF0IG5hIHNvdWJvciDigJ4lc+KAnCIKKworIzogZHBrZy1kZWIvaW5mby5jOjExMAorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnLWRlYjogYCUuMjU1cycgY29udGFpbnMgbm8gY29udHJvbCBjb21wb25lbnQgYCUuMjU1cydcbiIKK21zZ3N0ciAiZHBrZy1kZWI6IOKAniUuMjU1c+KAnCBuZW9ic2FodWplIGtvbnRyb2xuw60gxI3DoXN0IOKAniUuMjU1c+KAnFxuIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgIm9wZW4gY29tcG9uZW50IGAlLjI1NXMnIChpbiAlLjI1NXMpIGZhaWxlZCBpbiBhbiB1bmV4cGVjdGVkIHdheSIKK21zZ3N0ciAib3RldsOtcsOhbsOtIGtvbXBvbmVudHkg4oCeJS4yNTVz4oCcICh2ICUuMjU1cykgc2VsaGFsbyBuZW/EjWVrw6F2YW7DvW0genDFr3NvYmVtIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTIxCisjLCBjLWZvcm1hdAorbXNnaWQgIiVkIHJlcXVlc3RlZCBjb250cm9sIGNvbXBvbmVudCBpcyBtaXNzaW5nIgorbXNnaWRfcGx1cmFsICIlZCByZXF1ZXN0ZWQgY29udHJvbCBjb21wb25lbnRzIGFyZSBtaXNzaW5nIgorbXNnc3RyWzBdICIlZCB2ecW+YWRvdmFuw6Ega29udHJvbG7DrSDEjcOhc3QgY2h5YsOtIgorbXNnc3RyWzFdICIlZCB2ecW+YWRvdmFuw6kga29udHJvbG7DrSDEjcOhc3RpIGNoeWLDrSIKK21zZ3N0clsyXSAiJWQgdnnFvmFkb3ZhbsO9Y2gga29udHJvbG7DrWNoIMSNw6FzdMOtIGNoeWLDrSIKKworIzogZHBrZy1kZWIvaW5mby5jOjEzOSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NDI0CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzY2FuIGRpcmVjdG9yeSBgJS4yNTVzJyIKK21zZ3N0ciAibmVsemUgcHJvaGxlZGF0IGFkcmVzw6HFmSDigJ4lLjI1NXPigJwiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHN0YXQgYCUuMjU1cycgKGluIGAlLjI1NXMnKSIKK21zZ3N0ciAibmVsemUgdm9sYXQgc3RhdCBuYSDigJ4lLjI1NXPigJwgKHYg4oCeJS4yNTVz4oCcKSIKKworIzogZHBrZy1kZWIvaW5mby5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgb3BlbiBgJS4yNTVzJyAoaW4gYCUuMjU1cycpIgorbXNnc3RyICJuZWx6ZSBvdGV2xZnDrXQg4oCeJS4yNTVz4oCcICh2IOKAniUuMjU1c+KAnCkiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxNjcgZHBrZy1kZWIvaW5mby5jOjE4NSBkcGtnLWRlYi9pbmZvLmM6MTk5CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZWFkIGAlLjI1NXMnIChpbiBgJS4yNTVzJykiCittc2dzdHIgInNlbGhhbG8gxI10ZW7DrSDigJ4lLjI1NXPigJwgKHYg4oCeJS4yNTVz4oCcKSIKKworIzogZHBrZy1kZWIvaW5mby5jOjE3MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiICU3bGQgYnl0ZXMsICU1ZCBsaW5lcyAgICVjICAlLTIwLjEyN3MgJS4xMjdzXG4iCittc2dpZCAiICU3amQgYnl0ZXMsICU1ZCBsaW5lcyAgICVjICAlLTIwLjEyN3MgJS4xMjdzXG4iCittc2dzdHIgIiAlN2xkIGJhanTFrywgJTVkIMWZw6Fka8WvICAgJWMgICUtMjAuMTI3cyAlLjEyN3NcbiIKKworIzogZHBrZy1kZWIvaW5mby5jOjE3NAorIywgYy1mb3JtYXQKK21zZ2lkICIgICAgIG5vdCBhIHBsYWluIGZpbGUgICAgICAgICAgJS4yNTVzXG4iCittc2dzdHIgIiAgICAgbmVuw60gcHJvc3TDvSBzb3Vib3IgICAgICAgICUuMjU1c1xuIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTg2Cittc2dpZCAiKG5vIGBjb250cm9sJyBmaWxlIGluIGNvbnRyb2wgYXJjaGl2ZSEpXG4iCittc2dzdHIgIih2IMWZw61kw61jw61tIGFyY2hpdnUgY2h5YsOtIHNvdWJvciDigJ5jb250cm9s4oCcISlcbiIKKworIzogZHBrZy1kZWIvaW5mby5jOjIyMgorbXNnaWQgImNvdWxkIG5vdCBvcGVuIHRoZSBgY29udHJvbCcgY29tcG9uZW50IgorbXNnc3RyICJuZWx6ZSBvdGV2xZnDrXQgxI3DoXN0IOKAnmNvbnRyb2zigJwiCisKKyM6IGRwa2ctZGViL2luZm8uYzoyNjEKK21zZ2lkICJmYWlsZWQgZHVyaW5nIHJlYWQgb2YgYGNvbnRyb2wnIGNvbXBvbmVudCIKK21zZ3N0ciAiY2h5YmEgYsSbaGVtIMSNdGVuw60gxI3DoXN0aSDigJ5jb250cm9s4oCcIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MjYzCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgdGhlICclcycgY29tcG9uZW50IgorbXNnc3RyICJjaHliYSBwxZlpIHphdsOtcsOhbsOtIGtvbXBvbmVudHkg4oCeJXPigJwiCisKKyM6IGRwa2ctZGViL2luZm8uYzoyNzgKK21zZ2lkICJFcnJvciBpbiBmb3JtYXQiCittc2dzdHIgIkNoeWJhIHZlIGZvcm3DoXR1IgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MzI4Cittc2dpZCAiLS1jb250ZW50cyB0YWtlcyBleGFjdGx5IG9uZSBhcmd1bWVudCIKK21zZ3N0ciAiLS1jb250ZW50cyB2ecW+YWR1amUgcHLDoXbEmyBqZWRlbiBwYXJhbWV0ciIKKworIzogZHBrZy1kZWIvbWFpbi5jOjU0CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiBgJXMnIHBhY2thZ2UgYXJjaGl2ZSBiYWNrZW5kIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkRlYmlhbiDigJ4lc+KAnCAtIGJhY2tlbmQgcHJvIHByw6FjaSBzIGFyY2hpdnkgdmVyemUgJXMuXG4iCisKKyM6IGRwa2ctZGViL21haW4uYzo3MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIkNvbW1hbmRzOlxuIgorI3wgIiAgLWJ8LS1idWlsZCA8ZGlyZWN0b3J5PiBbPGRlYj5dICAgQnVpbGQgYW4gYXJjaGl2ZS5cbiIKKyN8ICIgIC1jfC0tY29udGVudHMgPGRlYj4gICAgICAgICAgICAgIExpc3QgY29udGVudHMuXG4iCisjfCAiICAtSXwtLWluZm8gPGRlYj4gWzxjZmlsZT4gLi4uXSAgICBTaG93IGluZm8gdG8gc3Rkb3V0LlxuIgorI3wgIiAgLVd8LS1zaG93IDxkZWI+ICAgICAgICAgICAgICAgICAgU2hvdyBpbmZvcm1hdGlvbiBvbiBwYWNrYWdlKHMpXG4iCisjfCAiICAtZnwtLWZpZWxkIDxkZWI+IFs8Y2ZpZWxkPiAuLi5dICBTaG93IGZpZWxkKHMpIHRvIHN0ZG91dC5cbiIKKyN8ICIgIC1lfC0tY29udHJvbCA8ZGViPiBbPGRpcmVjdG9yeT5dIEV4dHJhY3QgY29udHJvbCBpbmZvLlxuIgorI3wgIiAgLXh8LS1leHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+ICAgRXh0cmFjdCBmaWxlcy5cbiIKKyN8ICIgIC1YfC0tdmV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gIEV4dHJhY3QgJiBsaXN0IGZpbGVzLlxuIgorI3wgIiAgLS1mc3lzLXRhcmZpbGUgPGRlYj4gICAgICAgICAgICAgT3V0cHV0IGZpbGVzeXN0ZW0gdGFyZmlsZS5cbiIKKyN8ICJcbiIKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtYnwtLWJ1aWxkIDxkaXJlY3Rvcnk+IFs8ZGViPl0gICBCdWlsZCBhbiBhcmNoaXZlLlxuIgorIiAgLWN8LS1jb250ZW50cyA8ZGViPiAgICAgICAgICAgICAgTGlzdCBjb250ZW50cy5cbiIKKyIgIC1JfC0taW5mbyA8ZGViPiBbPGNmaWxlPiAuLi5dICAgIFNob3cgaW5mbyB0byBzdGRvdXQuXG4iCisiICAtV3wtLXNob3cgPGRlYj4gICAgICAgICAgICAgICAgICBTaG93IGluZm9ybWF0aW9uIG9uIHBhY2thZ2UocylcbiIKKyIgIC1mfC0tZmllbGQgPGRlYj4gWzxjZmllbGQ+IC4uLl0gIFNob3cgZmllbGQocykgdG8gc3Rkb3V0LlxuIgorIiAgLWV8LS1jb250cm9sIDxkZWI+IFs8ZGlyZWN0b3J5Pl0gRXh0cmFjdCBjb250cm9sIGluZm8uXG4iCisiICAteHwtLWV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gICBFeHRyYWN0IGZpbGVzLlxuIgorIiAgLVh8LS12ZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PiAgRXh0cmFjdCAmIGxpc3QgZmlsZXMuXG4iCisiICAtUnwtLXJhdy1leHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFeHRyYWN0IGNvbnRyb2wgaW5mbyBhbmQgZmlsZXMuXG4iCisiICAtLWZzeXMtdGFyZmlsZSA8ZGViPiAgICAgICAgICAgICBPdXRwdXQgZmlsZXN5c3RlbSB0YXJmaWxlLlxuIgorIlxuIgorbXNnc3RyICIiCisiUMWZw61rYXp5OlxuIgorIiAgLWJ8LS1idWlsZCA8YWRyZXPDocWZPiBbPGRlYj5dICAgIHZ5dHZvxZnDrSBhcmNoaXZcbiIKKyIgIC1jfC0tY29udGVudHMgPGRlYj4gICAgICAgICAgICAgdnlww63FoWUgb2JzYWhcbiIKKyIgIC1JfC0taW5mbyA8ZGViPiBbPGNzb3Vib3I+4oCmXSAgICB2eXDDrcWhZSBpbmZvcm1hY2UgbmEgc3RhbmRhcmRuw60gdsO9c3R1cFxuIgorIiAgLVd8LS1zaG93IDxkZWI+ICAgICAgICAgICAgICAgICB2eXDDrcWhZSBpbmZvcm1hY2UgbyBiYWzDrWt1XG4iCisiICAtZnwtLWZpZWxkIDxkZWI+IFs8Y3BvbG/FvmthPuKApl0gIHZ5cMOtxaFlIHBvbG/Fvmt1IG5hIHN0YW5kYXJkbsOtIHbDvXN0dXBcbiIKKyIgIC1lfC0tY29udHJvbCA8ZGViPiBbPGFkcmVzw6HFmT5dICByb3piYWzDrSDFmcOtZMOtY8OtIGluZm9ybWFjZVxuIgorIiAgLXh8LS1leHRyYWN0IDxkZWI+IDxhZHJlc8OhxZk+ICAgIHJvemJhbMOtIHNvdWJvcnlcbiIKKyIgIC1YfC0tdmV4dHJhY3QgPGRlYj4gPGFkcmVzw6HFmT4gICByb3piYWzDrSBhIHZ5cMOtxaFlIHNvdWJvcnlcbiIKKyIgIC0tZnN5cy10YXJmaWxlIDxkZWI+ICAgICAgICAgICAgdnlww63FoWUgdGFyIHNlIHNvdWJvcnlcbiIKKyJcbiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjkzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyI8ZGViPiBpcyB0aGUgZmlsZW5hbWUgb2YgYSBEZWJpYW4gZm9ybWF0IGFyY2hpdmUuXG4iCisiPGNmaWxlPiBpcyB0aGUgbmFtZSBvZiBhbiBhZG1pbmlzdHJhdGl2ZSBmaWxlIGNvbXBvbmVudC5cbiIKKyI8Y2ZpZWxkPiBpcyB0aGUgbmFtZSBvZiBhIGZpZWxkIGluIHRoZSBtYWluIGBjb250cm9sJyBmaWxlLlxuIgorIlxuIgorbXNnc3RyICIiCisiPGRlYj4gamUgam3DqW5vIGRlYmlhbsOtaG8gYXJjaGl2dS5cbiIKKyI8Y3NvdWJvcj4gamUgam3DqW5vIMWZw61kw61jw61obyBzb3Vib3J1LlxuIgorIjxjcG9sb8W+a2E+IGplIG7DoXpldiBwb2xvxb5reSB2IGhsYXZuw61tIHNvdWJvcnUg4oCeY29udHJvbOKAnC5cbiIKKyJcbiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjk5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiT3B0aW9uczpcbiIKKyN8ICIgIC0tc2hvd2Zvcm1hdD08Zm9ybWF0PiAgICAgICAgICAgIFVzZSBhbHRlcm5hdGl2ZSBmb3JtYXQgZm9yIC0tc2hvdy5cbiIKKyN8ICIgIC1EICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVuYWJsZSBkZWJ1Z2dpbmcgb3V0cHV0LlxuIgorI3wgIiAgLS1vbGQsIC0tbmV3ICAgICAgICAgICAgICAgICAgICAgU2VsZWN0IGFyY2hpdmUgZm9ybWF0LlxuIgorI3wgIiAgLS1ub2NoZWNrICAgICAgICAgICAgICAgICAgICAgICAgU3VwcHJlc3MgY29udHJvbCBmaWxlIGNoZWNrIChidWlsZCAiCisjfCAiYmFkXG4iCisjfCAiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhY2thZ2VzKS5cbiIKKyN8ICIgIC16IyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNldCB0aGUgY29tcHJlc3Npb24gbGV2ZWwgd2hlbiAiCisjfCAiYnVpbGRpbmcuXG4iCisjfCAiICAtWjx0eXBlPiAgICAgICAgICAgICAgICAgICAgICAgICBTZXQgdGhlIGNvbXByZXNzaW9uIHR5cGUgdXNlZCB3aGVuICIKKyN8ICJidWlsZGluZy5cbiIKKyN8ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWxsb3dlZCB0eXBlczogZ3ppcCwgeHosIGJ6aXAyLCAiCisjfCAibHptYSwgbm9uZS5cbiIKKyN8ICJcbiIKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tc2hvd2Zvcm1hdD08Zm9ybWF0PiAgICAgICAgICAgIFVzZSBhbHRlcm5hdGl2ZSBmb3JtYXQgZm9yIC0tc2hvdy5cbiIKKyIgIC12LCAtLXZlcmJvc2UgICAgICAgICAgICAgICAgICAgIEVuYWJsZSB2ZXJib3NlIG91dHB1dC5cbiIKKyIgIC1EICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVuYWJsZSBkZWJ1Z2dpbmcgb3V0cHV0LlxuIgorIiAgLS1vbGQsIC0tbmV3ICAgICAgICAgICAgICAgICAgICAgU2VsZWN0IGFyY2hpdmUgZm9ybWF0LlxuIgorIiAgLS1ub2NoZWNrICAgICAgICAgICAgICAgICAgICAgICAgU3VwcHJlc3MgY29udHJvbCBmaWxlIGNoZWNrIChidWlsZCBiYWRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFja2FnZXMpLlxuIgorIiAgLXojICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU2V0IHRoZSBjb21wcmVzc2lvbiBsZXZlbCB3aGVuIGJ1aWxkaW5nLlxuIgorIiAgLVo8dHlwZT4gICAgICAgICAgICAgICAgICAgICAgICAgU2V0IHRoZSBjb21wcmVzc2lvbiB0eXBlIHVzZWQgd2hlbiAiCisiYnVpbGRpbmcuXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFsbG93ZWQgdHlwZXM6IGd6aXAsIHh6LCBiemlwMiwgbHptYSwgIgorIm5vbmUuXG4iCisiXG4iCittc2dzdHIgIiIKKyJWb2xieTpcbiIKKyIgIC0tc2hvd2Zvcm1hdD08Zm9ybcOhdD4gICAgIHBvdcW+aWplIHBybyAtLXNob3cgYWx0ZXJuYXRpdm7DrSBmb3Jtw6F0XG4iCisiICAtRCAgICAgICAgICAgICAgICAgICAgICAgIHBvdm9sw60gbGFkw61jw60gdsO9cGlzeVxuIgorIiAgLS1vbGQsIC0tbmV3ICAgICAgICAgICAgICB2eWJlcmUgZm9ybcOhdCBhcmNoaXZ1XG4iCisiICAtLW5vY2hlY2sgICAgICAgICAgICAgICAgIHBvdGxhxI3DrSBrb250cm9sdSBzb3Vib3J1IGNvbnRyb2wgKHZ5dHbDocWZZW7DrVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaHlibsO9Y2ggYmFsw61rxa8pXG4iCisiICAteiMgICAgICAgICAgICAgICAgICAgICAgIHDFmWkgdnl0dsOhxZllbsOtIG5hc3RhdsOtIG3DrXJ1IGtvbXByZXNlXG4iCisiICAtWjx0eXA+ICAgICAgICAgICAgICAgICAgIHDFmWkgdnl0dsOhxZllbsOtIG5hc3RhdsOtIHR5cCBrb21wcmVzZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3ZvbGVuw6kgaG9kbm90eTogZ3ppcCwgeHosIGJ6aXAyLCBsem1hLCBub25lXG4iCisiXG4iCisKKyM6IGRwa2ctZGViL21haW4uYzoxMjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIlVzZSBgZHBrZycgdG8gaW5zdGFsbCBhbmQgcmVtb3ZlIHBhY2thZ2VzIGZyb20geW91ciBzeXN0ZW0sIG9yXG4iCisiYGRzZWxlY3QnIG9yIGBhcHRpdHVkZScgZm9yIHVzZXItZnJpZW5kbHkgcGFja2FnZSBtYW5hZ2VtZW50LiAgUGFja2FnZXNcbiIKKyJ1bnBhY2tlZCB1c2luZyBgZHBrZy1kZWIgLS1leHRyYWN0JyB3aWxsIGJlIGluY29ycmVjdGx5IGluc3RhbGxlZCAhXG4iCittc2dzdHIgIiIKKyJcbiIKKyJLIGluc3RhbGFjaSBhIG9kc3RyYW7Em27DrSBiYWzDrWvFryBwb3XFvmlqdGUgYnXEjyDigJ5kcGtn4oCcLCBuZWJvIHByb1xuIgorInDFmcOtdsSbdGl2xJtqxaHDrSBzcHLDoXZ1IGJhbMOta8WvIOKAnmRzZWxlY3TigJwgxI1pIOKAnmFwdGl0dWRl4oCcLiBCYWzDrWt5IHJvemJhbGVuw6lcbiIKKyJwb21vY8OtIOKAnmRwa2ctZGViIC0tZXh0cmFjdOKAnCBuZWJ1ZG91IHNwcsOhdm7EmyBuYWluc3RhbG92YW7DqSFcbiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjEzMgorbXNnaWQgIiIKKyJUeXBlIGRwa2ctZGViIC0taGVscCBmb3IgaGVscCBhYm91dCBtYW5pcHVsYXRpbmcgKi5kZWIgZmlsZXM7XG4iCisiVHlwZSBkcGtnIC0taGVscCBmb3IgaGVscCBhYm91dCBpbnN0YWxsaW5nIGFuZCBkZWluc3RhbGxpbmcgcGFja2FnZXMuIgorbXNnc3RyICIiCisiTmFwacWhdGUgZHBrZy1kZWIgLS1oZWxwIGsgesOtc2vDoW7DrSBuw6Fwb3bEm2R5IGsgbWFuaXB1bGFjaSBzICouZGViIHNvdWJvcnk7XG4iCisiTmFwacWhdGUgZHBrZyAtLWhlbHAgayB6w61za8OhbsOtIGluZm9ybWFjw60gbyBpbnN0YWxvdsOhbsOtIGEgb2RpbnN0YWxvdsOhbsOtIGJhbMOta8WvLiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjE0OAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGludGVnZXIgZm9yIC0lYzogJyUuMjUwcyciCittc2dzdHIgIm5lcGxhdG7DqSBjZWzDqSDEjcOtc2xvIHBybyAtLSVjOiDigJ4lLjI1MHPigJwiCisKKyM6IGRwa2ctZGViL21haW4uYzoxNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjb21wcmVzc2lvbiBsZXZlbCBmb3IgLSVjOiAlbGQnIgorbXNnc3RyICJuZXBsYXRuw6Egw7pyb3ZlxYgga29tcHJlc2UgcHJvIC0tJWM6ICVsZCIKKworIzogZHBrZy1kZWIvbWFpbi5jOjE2MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGNvbXByZXNzaW9uIHR5cGUgYCVzJyEiCittc2dzdHIgIm5lem7DoW3DvSB0eXAga29tcHJlc2Ug4oCeJXPigJwhIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzo1MgorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgZGlnaXQgKGNvZGUgJWQpIGluICVzIgorbXNnc3RyICJzb3Vib3Ig4oCeJS4yNTBz4oCcIGplIHBvxaFrb3plbiAtIGNoeWJuw6EgxI3DrXNsaWNlIChrw7NkICVkKSB2ICVzIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzo2MAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSAlLjI1MHMgbWlzc2luZyIKK21zZ3N0ciAic291Ym9yIOKAniUuMjUwc+KAnCBqZSBwb8Wha296ZW4gLSAlLjI1MHMgY2h5YsOtIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzo2MworIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBtaXNzaW5nIG5ld2xpbmUgYWZ0ZXIgJS4yNTBzIgorbXNnc3RyICJzb3Vib3Ig4oCeJS4yNTBz4oCcIGplIHBvxaFrb3plbiAtIGNoeWLDrSBub3bDvSDFmcOhZGVrIHphICUuMjUwcyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6ODkgZHBrZy1zcGxpdC9tYWluLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHJlYWRpbmcgJS4yNTBzIgorbXNnc3RyICJjaHliYSBwxZlpIMSNdGVuw60gJS4yNTBzIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIG1hZ2ljIGF0IGVuZCBvZiBmaXJzdCBoZWFkZXIiCittc2dzdHIgInNvdWJvciDigJ4lLjI1MHPigJwgamUgcG/FoWtvemVuIC0gxaFwYXRuw6EgbWFnaWUgbmEga29uY2kgcHJ2bsOtIGhsYXZpxI1reSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTEzCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBwYWRkaW5nIGNoYXJhY3RlciAoY29kZSAlZCkiCittc2dzdHIgInNvdWJvciDigJ4lLjI1MHPigJwgamUgcG/FoWtvemVuIC0gxaFwYXRuw70gdsO9cGzFiG92w70gem5hayAoa8OzZCAlZCkiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjExNworIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBudWxscyBpbiBpbmZvIHNlY3Rpb24iCittc2dzdHIgInNvdWJvciDigJ4lLjI1MHPigJwgamUgcG/FoWtvemVuIC0gbnVseSB2IHNla2NpIGluZm8iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyMgorbXNnaWQgImZvcm1hdCB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAidmVyemUgZm9ybcOhdHUiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGZvcm1hdCB2ZXJzaW9uIGAlLjI1MHMnIC0geW91IG5lZWQgYSBuZXdlciBkcGtnLXNwbGl0IgorbXNnc3RyICIiCisic291Ym9yIOKAniUuMjUwc+KAnCBtw6EgZm9ybcOhdCB2ZXJ6ZSDigJ4lLjI1MHPigJwgLSB2ecW+YWR1amV0ZSBub3bEm2rFocOtIGRwa2ctc3BsaXQiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyNworbXNnaWQgInBhY2thZ2UgbmFtZSIKK21zZ3N0ciAiam3DqW5vIGJhbMOta3UiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyOAorbXNnaWQgInBhY2thZ2UgdmVyc2lvbiBudW1iZXIiCittc2dzdHIgInZlcnplIGJhbMOta3UiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyOQorbXNnaWQgInBhY2thZ2UgZmlsZSBNRDUgY2hlY2tzdW0iCittc2dzdHIgIk1ENSBzb3XEjWV0IGJhbMOta3UiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEzMgorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgTUQ1IGNoZWNrc3VtIGAlLjI1MHMnIgorbXNnc3RyICJzb3Vib3Ig4oCeJS4yNTBz4oCcIGplIHBvxaFrb3plbiAtIMWhcGF0bsO9IGtvbnRyb2xuw60gc291xI1ldCBNRDUg4oCeJS4yNTBz4oCcIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMzQgZHBrZy1zcGxpdC9pbmZvLmM6MTM1Cittc2dpZCAiYXJjaGl2ZSB0b3RhbCBzaXplIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEzNiBkcGtnLXNwbGl0L2luZm8uYzoxMzcKKyMsIGZ1enp5CisjfCBtc2dpZCAicGFydCBvZmZzZXQiCittc2dpZCAiYXJjaGl2ZSBwYXJ0IG9mZnNldCIKK21zZ3N0ciAib2Zmc2V0IMSNw6FzdGkiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEzOQorIywgZnV6enkKKyN8IG1zZ2lkICJwYXJ0IG51bWJlcnMiCittc2dpZCAiYXJjaGl2ZSBwYXJ0IG51bWJlcnMiCittc2dzdHIgIsSNw61zbGEgxI3DoXN0w60iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE0MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gbm8gc2xhc2ggYmV0d2VlbiBwYXJ0IG51bWJlcnMiCittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gbm8gc2xhc2ggYmV0d2VlbiBhcmNoaXZlIHBhcnQgbnVtYmVycyIKK21zZ3N0ciAic291Ym9yIOKAniUuMjUwc+KAnCBqZSBwb8Wha296ZW4gLSBjaHliw60gbG9tw610a28gbWV6aSDEjcOtc2x5IMSNw6FzdGkiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE0NQorIywgZnV6enkKKyN8IG1zZ2lkICJudW1iZXIgb2YgcGFydHMiCittc2dpZCAibnVtYmVyIG9mIGFyY2hpdmUgcGFydHMiCittc2dzdHIgInBvxI1ldCDEjcOhc3TDrSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTQ3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgbnVtYmVyIG9mIHBhcnRzIgorbXNnaWQgImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBudW1iZXIgb2YgYXJjaGl2ZSBwYXJ0cyIKK21zZ3N0ciAic291Ym9yIOKAniUuMjUwc+KAnCBqZSBwb8Wha296ZW4gLSDFoXBhdG7DvSBwb8SNZXQgxI3DoXN0w60iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE0OQorIywgZnV6enkKKyN8IG1zZ2lkICJwYXJ0cyBudW1iZXIiCittc2dpZCAiYXJjaGl2ZSBwYXJ0cyBudW1iZXIiCittc2dzdHIgIsSNw61zbG8gxI3DoXN0aSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTUxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgcGFydCBudW1iZXIiCittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIGFyY2hpdmUgcGFydCBudW1iZXIiCittc2dzdHIgInNvdWJvciDigJ4lLjI1MHPigJwgamUgcG/FoWtvemVuIC0gxaFwYXRuw6kgxI3DrXNsbyDEjcOhc3RpIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNTcKKyMsIGZ1enp5CisjfCBtc2dpZCAicGFja2FnZSBuYW1lIgorbXNnaWQgInBhY2thZ2UgYXJjaGl0ZWN0dXJlIgorbXNnc3RyICJqbcOpbm8gYmFsw61rdSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTY2CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBtYWdpYyBhdCBlbmQgb2Ygc2Vjb25kIGhlYWRlciIKK21zZ3N0ciAiIgorInNvdWJvciDigJ4lLjI1MHPigJwgamUgcG/FoWtvemVuIC0gxaFwYXRuw6kgbWFnaWNrw6kgxI3DrXNsbyBuYSBrb25jaSBkcnVow6kgaGxhdmnEjWt5IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gc2Vjb25kIG1lbWJlciBpcyBub3QgZGF0YSBtZW1iZXIiCittc2dzdHIgInNvdWJvciDigJ4lLjI1MHPigJwgamUgcG/FoWtvemVuIC0gZHJ1aMO9IMSNbGVuIG5lbsOtIMSNw6FzdMOtIGRhdCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTc0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIHdyb25nIG51bWJlciBvZiBwYXJ0cyBmb3IgcXVvdGVkIHNpemVzIgorbXNnc3RyICJzb3Vib3Ig4oCeJS4yNTBz4oCcIGplIHBvxaFrb3plbiAtIGNoeWJuw70gcG/EjWV0IMSNw6FzdMOtIHBybyB1dm96ZW7DqSB2ZWxpa29zdGkiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE3OAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBzaXplIGlzIHdyb25nIGZvciBxdW90ZWQgcGFydCBudW1iZXIiCittc2dzdHIgInNvdWJvciDigJ4lLjI1MHPigJwgamUgcG/FoWtvemVuIC0gY2h5Ym7DoSB2ZWxpa29zdCB1dm96ZW7DqSDEjcOhc3RpIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxODQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZzdGF0IHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmVsemUgemppc3RpdCBmc3RhdCDEjcOhc3RpIHNvdWJvcnUg4oCeJS4yNTBz4oCcIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gdG9vIHNob3J0IgorbXNnc3RyICJzb3Vib3Ig4oCeJS4yNTBz4oCcIGplIHBvxaFrb3plbiAtIG1vYyBrcsOhdGvDvSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjAyIGRwa2ctc3BsaXQvaW5mby5jOjI0OQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgb3BlbiBhcmNoaXZlIHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmVsemUgb3RldsWZw610IMSNw6FzdCDigJ4lLjI1MHPigJwiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjIwNAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIG5vdCBhbiBhcmNoaXZlIHBhcnQiCittc2dzdHIgInNvdWJvciDigJ4lLjI1MHPigJwgbmVuw60gxI3DoXN0w60gYXJjaGl2dSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjA5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiJXM6XG4iCisjfCAiICAgIFBhcnQgZm9ybWF0IHZlcnNpb246ICAgICAgICAgICAgJXNcbiIKKyN8ICIgICAgUGFydCBvZiBwYWNrYWdlOiAgICAgICAgICAgICAgICAlc1xuIgorI3wgIiAgICAgICAgLi4uIHZlcnNpb246ICAgICAgICAgICAgICAgICVzXG4iCisjfCAiICAgICAgICAuLi4gTUQ1IGNoZWNrc3VtOiAgICAgICAgICAgJXNcbiIKKyN8ICIgICAgICAgIC4uLiBsZW5ndGg6ICAgICAgICAgICAgICAgICAlbHUgYnl0ZXNcbiIKKyN8ICIgICAgICAgIC4uLiBzcGxpdCBldmVyeTogICAgICAgICAgICAlbHUgYnl0ZXNcbiIKKyN8ICIgICAgUGFydCBudW1iZXI6ICAgICAgICAgICAgICAgICAgICAlZC8lZFxuIgorI3wgIiAgICBQYXJ0IGxlbmd0aDogICAgICAgICAgICAgICAgICAgICV6aSBieXRlc1xuIgorI3wgIiAgICBQYXJ0IG9mZnNldDogICAgICAgICAgICAgICAgICAgICVsdSBieXRlc1xuIgorI3wgIiAgICBQYXJ0IGZpbGUgc2l6ZSAodXNlZCBwb3J0aW9uKTogICVsdSBieXRlc1xuIgorI3wgIlxuIgorbXNnaWQgIiIKKyIlczpcbiIKKyIgICAgUGFydCBmb3JtYXQgdmVyc2lvbjogICAgICAgICAgICAlc1xuIgorIiAgICBQYXJ0IG9mIHBhY2thZ2U6ICAgICAgICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gdmVyc2lvbjogICAgICAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiBhcmNoaXRlY3R1cmU6ICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIE1ENSBjaGVja3N1bTogICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gbGVuZ3RoOiAgICAgICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgICAgICAuLi4gc3BsaXQgZXZlcnk6ICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgIFBhcnQgbnVtYmVyOiAgICAgICAgICAgICAgICAgICAgJWQvJWRcbiIKKyIgICAgUGFydCBsZW5ndGg6ICAgICAgICAgICAgICAgICAgICAlamQgYnl0ZXNcbiIKKyIgICAgUGFydCBvZmZzZXQ6ICAgICAgICAgICAgICAgICAgICAlamQgYnl0ZXNcbiIKKyIgICAgUGFydCBmaWxlIHNpemUgKHVzZWQgcG9ydGlvbik6ICAlamQgYnl0ZXNcbiIKKyJcbiIKK21zZ3N0ciAiIgorIiVzOlxuIgorIiAgICBWZXJ6ZSBmb3Jtw6F0dSDEjcOhc3RpOiAgICAgICAgICAgICVzXG4iCisiICAgIMSMw6FzdCBiYWzDrWt1OiAgICAgICAgICAgICAgICAgICAgJXNcbiIKKyIgICAgICAuLi4gdmVyemU6ICAgICAgICAgICAgICAgICAgICAlc1xuIgorIiAgICAgIC4uLiBNRDUgc291xI1ldDogICAgICAgICAgICAgICAlc1xuIgorIiAgICAgIC4uLiBkw6lsa2E6ICAgICAgICAgICAgICAgICAgICAlbHUgYmFqdMWvXG4iCisiICAgICAgLi4uIGTEm2xlbm8ga2HFvmTDvWNoOiAgICAgICAgICAgJWx1IGJhanTFr1xuIgorIiAgICDEjMOtc2xvIMSNw6FzdGk6ICAgICAgICAgICAgICAgICAgICAlZC8lZFxuIgorIiAgICBEw6lsa2EgxI3DoXN0aTogICAgICAgICAgICAgICAgICAgICV6aSBiYWp0xa9cbiIKKyIgICAgT2Zmc2V0IMSNw6FzdGk6ICAgICAgICAgICAgICAgICAgICVsdSBiYWp0xa9cbiIKKyIgICAgVmVsaWtvc3QgxI3DoXN0aSAocG91xb5pdMOhIMSNw6FzdCk6ICAlbHUgYmFqdMWvXG4iCisiXG4iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjIyNQorIywgZnV6enkKKyN8IG1zZ2lkICI8dW5rbm93bj4iCittc2djdHh0ICJhcmNoaXRlY3R1cmUiCittc2dpZCAiPHVua25vd24+IgorbXNnc3RyICI8bmV6bsOhbW8+IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyNDQgZHBrZy1zcGxpdC9qb2luLmM6MTA1CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgcmVxdWlyZXMgb25lIG9yIG1vcmUgcGFydCBmaWxlIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS0lcyB2ecW+YWR1amUgamVkbm8gbmVibyB2w61jZSBqbWVuIMSNw6FzdMOtIHNvdWJvcnUiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjI1NQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlcycgaXMgbm90IGFuIGFyY2hpdmUgcGFydFxuIgorbXNnc3RyICJzb3Vib3Ig4oCeJXPigJwgbmVuw60gxI3DoXN0IGFyY2hpdnVcbiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHV0dGluZyBwYWNrYWdlICVzIHRvZ2V0aGVyIGZyb20gJWQgcGFydDogIgorbXNnaWRfcGx1cmFsICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0czogIgorbXNnc3RyWzBdICJTZXN0YXZ1amkgYmFsw61rICVzIHogJWQgxI3DoXN0aTogIgorbXNnc3RyWzFdICJTZXN0YXZ1amkgYmFsw61rICVzIHogJWQgxI3DoXN0w606ICIKK21zZ3N0clsyXSAiU2VzdGF2dWppIGJhbMOtayAlcyB6ICVkIMSNw6FzdMOtOiAiCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjUxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIG91dHB1dCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuZWx6ZSBvdGV2xZnDrXQgdsO9c3R1cG7DrSBzb3Vib3Ig4oCeJS4yNTBz4oCcIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gKHJlKW9wZW4gaW5wdXQgcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuZWx6ZSAoem5vdnUpb3RldsWZw610IHZzdHVwbsOtIHNvdWJvciDigJ4lLjI1MHPigJwiCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjU4CisjLCBmdXp6eQorI3wgbXNnaWQgIlNraXBwaW5nIGRlc2VsZWN0ZWQgcGFja2FnZSAlcy5cbiIKK21zZ2lkICJza2lwcGluZyBzcGxpdCBwYWNrYWdlIGhlYWRlciIKK21zZ3N0ciAiUMWZZXNrYWt1amkgYmFsw61rICVzLlxuIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1OQorIywgZnV6enkKKyN8IG1zZ2lkICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0OiAiCisjfCBtc2dpZF9wbHVyYWwgIlB1dHRpbmcgcGFja2FnZSAlcyB0b2dldGhlciBmcm9tICVkIHBhcnRzOiAiCittc2dpZCAic3BsaXQgcGFja2FnZSBwYXJ0IgorbXNnc3RyICJTZXN0YXZ1amkgYmFsw61rICVzIHogJWQgxI3DoXN0aTogIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo2OSBkcGtnLXNwbGl0L3NwbGl0LmM6MjM3CisjLCBjLWZvcm1hdAorbXNnaWQgImRvbmVcbiIKK21zZ3N0ciAiaG90b3ZvXG4iCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjg1CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGVzIGAlLjI1MHMnIGFuZCBgJS4yNTBzJyBhcmUgbm90IHBhcnRzIG9mIHRoZSBzYW1lIGZpbGUiCittc2dzdHIgInNvdWJvcnkg4oCeJS4yNTBz4oCcIGEg4oCeJS4yNTBz4oCcIG5lanNvdSDEjcOhc3RpIHN0ZWpuw6lobyBiYWzDrWt1IgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo5MAorIywgYy1mb3JtYXQKK21zZ2lkICJ0aGVyZSBhcmUgc2V2ZXJhbCB2ZXJzaW9ucyBvZiBwYXJ0ICVkIC0gYXQgbGVhc3QgYCUuMjUwcycgYW5kIGAlLjI1MHMnIgorbXNnc3RyICJuYWxlemVubyBuxJtrb2xpayB2ZXJ6w60gxI3DoXN0aSAlZCAtIGpkZSBhbGVzcG/FiCBvIOKAniUuMjUwc+KAnCBhIOKAniUuMjUwc+KAnCIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6MTI4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhcnQgJWQgaXMgbWlzc2luZyIKK21zZ3N0ciAiJWQuIMSNw6FzdCBjaHliw60iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjQ3CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiBgJXMnIHBhY2thZ2Ugc3BsaXQvam9pbiB0b29sOyB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICJEZWJpYW4g4oCeJXPigJwgLSBuw6FzdHJvaiBuYSBkxJtsZW7DrS9zbHXEjW92w6Fuw60gYmFsw61rxa87IHZlcnplICVzLlxuIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo0OQorIywgYy1mb3JtYXQKK21zZ2lkICJDb3B5cmlnaHQgKEMpIDE5OTQtMTk5NiBJYW4gSmFja3Nvbi5cbiIKK21zZ3N0ciAiQ29weXJpZ2h0IChDKSAxOTk0LTE5OTYgSWFuIEphY2tzb24uXG4iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjY3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1zfC0tc3BsaXQgPGZpbGU+IFs8cHJlZml4Pl0gICAgIFNwbGl0IGFuIGFyY2hpdmUuXG4iCisiICAtanwtLWpvaW4gPHBhcnQ+IDxwYXJ0PiAuLi4gICAgICBKb2luIHBhcnRzIHRvZ2V0aGVyLlxuIgorIiAgLUl8LS1pbmZvIDxwYXJ0PiAuLi4gICAgICAgICAgICAgRGlzcGxheSBpbmZvIGFib3V0IGEgcGFydC5cbiIKKyIgIC1hfC0tYXV0byAtbyA8Y29tcGxldGU+IDxwYXJ0PiAgIEF1dG8tYWNjdW11bGF0ZSBwYXJ0cy5cbiIKKyIgIC1sfC0tbGlzdHEgICAgICAgICAgICAgICAgICAgICAgIExpc3QgdW5tYXRjaGVkIHBpZWNlcy5cbiIKKyIgIC1kfC0tZGlzY2FyZCBbPGZpbGVuYW1lPiAuLi5dICAgIERpc2NhcmQgdW5tYXRjaGVkIHBpZWNlcy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIlDFmcOta2F6eTpcbiIKKyIgIC1zfC0tc3BsaXQgPHNvdWJvcj4gWzxwcmVmaXg+XSAgcm96ZMSbbMOtIGFyY2hpdlxuIgorIiAgLWp8LS1qb2luIDzEjcOhc3Q+IDzEjcOhc3Q+IOKApiAgICAgICBzcG9qw60gxI3DoXN0aSBkb2hyb21hZHlcbiIKKyIgIC1JfC0taW5mbyA8xI3DoXN0PiDigKYgICAgICAgICAgICAgIHZ5cMOtxaFlIGluZm9ybWFjaSBvIMSNw6FzdGlcbiIKKyIgIC1hfC0tYXV0byAtbyA8Y2VsZWs+IDzEjcOhc3Q+ICAgICBhdXRvbWF0aWNreSBzcG9qw60gxI3DoXN0aVxuIgorIiAgLWx8LS1saXN0cSAgICAgICAgICAgICAgICAgICAgICB2eXDDrcWhZSBuZWhvZMOtY8OtIHNlIMSNw6FzdGlcbiIKKyIgIC1kfC0tZGlzY2FyZCBbPHNvdWJvcj4g4oCmXSAgICAgICBpZ25vcnVqZSBuZWhvZMOtY8OtIHNlIMSNw6FzdGlcbiIKKyJcbiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6ODIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJPcHRpb25zOlxuIgorI3wgIiAgLS1kZXBvdGRpciA8ZGlyZWN0b3J5PiAgICAgICAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMvJXMuXG4iCisjfCAiICAtU3wtLXBhcnRzaXplIDxzaXplPiAgICAgICAgICAgICBJbiBLaUIsIGZvciAtcyAoZGVmYXVsdCBpcyA0NTApLlxuIgorI3wgIiAgLW98LS1vdXRwdXQgPGZpbGU+ICAgICAgICAgICAgICAgRm9yIC1qIChkZWZhdWx0IGlzIDxwYWNrYWdlPi08dmVyc2lvbj4uIgorI3wgImRlYikuXG4iCisjfCAiICAtUXwtLW5wcXVpZXQgICAgICAgICAgICAgICAgICAgICBCZSBxdWlldCB3aGVuIC1hIGlzIG5vdCBhIHBhcnQuXG4iCisjfCAiICAtLW1zZG9zICAgICAgICAgICAgICAgICAgICAgICAgICBHZW5lcmF0ZSA4LjMgZmlsZW5hbWVzLlxuIgorI3wgIlxuIgorI3wgIkV4aXQgc3RhdHVzOiAwID0gT0s7ICAxID0gLWEgaXMgbm90IGEgcGFydDsgIDIgPSB0cm91YmxlIVxuIgorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1kZXBvdGRpciA8ZGlyZWN0b3J5PiAgICAgICAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMvJXMuXG4iCisiICAtU3wtLXBhcnRzaXplIDxzaXplPiAgICAgICAgICAgICBJbiBLaUIsIGZvciAtcyAoZGVmYXVsdCBpcyA0NTApLlxuIgorIiAgLW98LS1vdXRwdXQgPGZpbGU+ICAgICAgICAgICAgICAgRmlsZW5hbWUsIGZvciAtaiAoZGVmYXVsdCBpc1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGFja2FnZT5fPHZlcnNpb24+XzxhcmNoPi5kZWIpLlxuIgorIiAgLVF8LS1ucHF1aWV0ICAgICAgICAgICAgICAgICAgICAgQmUgcXVpZXQgd2hlbiAtYSBpcyBub3QgYSBwYXJ0LlxuIgorIiAgLS1tc2RvcyAgICAgICAgICAgICAgICAgICAgICAgICAgR2VuZXJhdGUgOC4zIGZpbGVuYW1lcy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIlZvbGJ5OlxuIgorIiAgLS1kZXBvdGRpciA8YWRyZXPDocWZPiAgICAgICAgICAgIG3DrXN0byAlcy8lcyBwb3XFvmlqZSA8YWRyZXPDocWZPlxuIgorIiAgLVN8LS1wYXJ0c2l6ZSA8dmVsaWtvc3Q+ICAgICAgICB2IGtpQiwgcHJvIC1zLCB2w71jaG96w60gamUgNDUwKVxuIgorIiAgLW98LS1vdXRwdXQgPHNvdWJvcj4gICAgICAgICAgICBwcm8gLWosIHbDvWNob3rDrSBqZSA8YmFsw61rPi08dmVyemU+LmRlYlxuIgorIiAgLVF8LS1ucHF1aWV0ICAgICAgICAgICAgICAgICAgICBuZXN0xJvFvnVqZSBzaSBwb2t1ZCAtYSBuZW7DrSDEjcOhc3TDrVxuIgorIiAgLS1tc2RvcyAgICAgICAgICAgICAgICAgICAgICAgICBnZW5lcnVqZSBqbcOpbmEga29udmVuY2UgOC4zXG4iCisiXG4iCisiVsO9c3R1cG7DrSBzdGF2eTogMCA9IE9LOyAgMSA9IC1hIGEgbmVuw60gxI3DoXN0w607ICAyID0gcHJvYmzDqW15IVxuIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo5MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiRXhpdCBzdGF0dXM6XG4iCisiICAwID0gb2tcbiIKKyIgIDEgPSB3aXRoIC0tYXV0bywgZmlsZSBpcyBub3QgYSBwYXJ0XG4iCisiICAyID0gdHJvdWJsZVxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjEwMworbXNnaWQgIlR5cGUgZHBrZy1zcGxpdCAtLWhlbHAgZm9yIGhlbHAuIgorbXNnc3RyICJQcm8gem9icmF6ZW7DrSBuw6Fwb3bEm2R5IG5hcGnFoXRlIGRwa2ctc3BsaXQgLS1oZWxwLiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6MTE1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGZpbGUgaW4gJS4yNTBzIgorbXNnc3RyICJuZW/EjWVrw6F2YW7DvSBrb25lYyBzb3Vib3J1IHYgJS4yNTBzIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMjYKK21zZ2lkICJwYXJ0IHNpemUgaXMgZmFyIHRvbyBsYXJnZSBvciBpcyBub3QgcG9zaXRpdmUiCittc2dzdHIgInZlbGlrb3N0IMSNw6FzdGkgamUgYnXEjyBwxZnDrWxpxaEgdmVsaWvDoSwgbmVibyBuZWtsYWRuw6EiCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjEzMAorIywgYy1mb3JtYXQKK21zZ2lkICJwYXJ0IHNpemUgbXVzdCBiZSBhdCBsZWFzdCAlZCBLaUIgKHRvIGFsbG93IGZvciBoZWFkZXIpIgorbXNnc3RyICJ2ZWxpa29zdCDEjcOhc3RpIG11c8OtIGLDvXQgYWxlc3BvxYggJWQgS2lCIChrdsWvbGkgaGxhdmnEjWNlKSIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjkwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIGRlcG90IGRpcmVjdG9yeSBgJS4yNTBzJyIKK21zZ3N0ciAibmVsemUgxI3DrXN0IHNrbGFkacWhdG7DrSBhZHJlc8OhxZkg4oCeJS4yNTBz4oCcIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTM0Cittc2dpZCAiLS1hdXRvIHJlcXVpcmVzIHRoZSB1c2Ugb2YgdGhlIC0tb3V0cHV0IG9wdGlvbiIKK21zZ3N0ciAiLS1hdXRvIHZ5xb5hZHVqZSBwb3XFvml0w60gcMWZZXDDrW5hxI1lIC0tb3V0cHV0IgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTM2Cittc2dpZCAiLS1hdXRvIHJlcXVpcmVzIGV4YWN0bHkgb25lIHBhcnQgZmlsZSBhcmd1bWVudCIKK21zZ3N0ciAiLS1hdXRvIHZ5xb5hZHVqZSBqbcOpbm8gcHLDoXbEmyBqZWRub2hvIHNvdWJvcnUiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxNDAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuZWx6ZSBwxZllxI3DrXN0IHNvdWJvciDigJ4lLjI1MHPigJwiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxNDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiRmlsZSBgJS4yNTBzJyBpcyBub3QgcGFydCBvZiBhIG11bHRpcGFydCBhcmNoaXZlLlxuIgorbXNnc3RyICJTb3Vib3Ig4oCeJS4yNTBz4oCcIG5lbsOtIMSNw6FzdMOtIHJvemTEm2xlbsOpaG8gYXJjaGl2dS5cbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE3OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVvcGVuIHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmVsemUgem5vdnVvdGV2xZnDrXQgc291Ym9yIOKAniUuMjUwc+KAnCIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE4MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBuZXcgZGVwb3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmVsemUgb3RldsWZw610IG5vdsO9IHNrbGFkacWhdG7DrSBzb3Vib3Ig4oCeJS4yNTBz4oCcIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTg0Cittc2dpZCAiZXh0cmFjdGluZyBzcGxpdCBwYXJ0IgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbmFtZSBuZXcgZGVwb3QgZmlsZSBgJS4yNTBzJyB0byBgJS4yNTBzJyIKK21zZ3N0ciAibmVsemUgcMWZZWptZW5vdmF0IG5vdsO9IHNrbGFkacWhdG7DrSBzb3Vib3Ig4oCeJS4yNTBz4oCcIG5hIOKAniUuMjUwc+KAnCIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE5NgorIywgYy1mb3JtYXQKK21zZ2lkICJQYXJ0ICVkIG9mIHBhY2thZ2UgJXMgZmlsZWQgKHN0aWxsIHdhbnQgIgorbXNnc3RyICLEjMOhc3QgJWQgYmFsw61rdSAlcyBuYXBsbsSbbmEgKGplxaF0xJsgcG90xZllYnVqaSAiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyMDAKK21zZ2lkICIgYW5kICIKK21zZ3N0ciAiIGEgIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjE0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkZWxldGUgdXNlZC11cCBkZXBvdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuZWx6ZSBzbWF6YXQgdnl1xb5pdMO9IHNrbGFkacWhdG7DrSBzb3Vib3Ig4oCeJS4yNTBz4oCcIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjM1Cittc2dpZCAiSnVuayBmaWxlcyBsZWZ0IGFyb3VuZCBpbiB0aGUgZGVwb3QgZGlyZWN0b3J5OlxuIgorbXNnc3RyICJQxZllYnl0ZcSNbsOpIHNvdWJvcnkgcG9uZWNow6FueSB2IG9ka2xhZGnFoXRpOlxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjQwIGRwa2ctc3BsaXQvcXVldWUuYzoyNjkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgYCUuMjUwcyciCittc2dzdHIgIm5lbHplIHpqaXN0aXQgc3RhdiDigJ4lLjI1MHPigJwiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNDMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiAlcyAoJWx1IGJ5dGVzKVxuIgorbXNnaWQgIiAlcyAoJWpkIGJ5dGVzKVxuIgorbXNnc3RyICIgJXMgKCVsdSBiYWp0xa8pXG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICVzIChub3QgYSBwbGFpbiBmaWxlKVxuIgorbXNnc3RyICIgJXMgKG5lbsOtIG9iecSNZWpuw71tIHNvdWJvcmVtKVxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjUwCittc2dpZCAiUGFja2FnZXMgbm90IHlldCByZWFzc2VtYmxlZDpcbiIKK21zZ3N0ciAiRG9zdWQgbmVzZXN0YXZlbsOpIGJhbMOta3k6XG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIFBhY2thZ2UgJXM6IHBhcnQocykgIgorbXNnc3RyICIgxIzDoXN0aSBiYWzDrWt1ICVzOiAiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFydCBmaWxlIGAlLjI1MHMnIGlzIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgIsSNw6FzdCDigJ4lLjI1MHPigJwgbmVuw60gb2J5xI1lam7DvSBzb3Vib3IiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNzgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIih0b3RhbCAlbHUgYnl0ZXMpXG4iCittc2dpZCAiKHRvdGFsICVqZCBieXRlcylcbiIKK21zZ3N0ciAiKGNlbGtlbSAlbHUgYmFqdMWvKVxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MzA0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkaXNjYXJkIGAlLjI1MHMnIgorbXNnc3RyICJuZWx6ZSB6YWhvZGl0IOKAniUuMjUwc+KAnCIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjMwNQorIywgYy1mb3JtYXQKK21zZ2lkICJEZWxldGVkICVzLlxuIgorbXNnc3RyICJTbWF6w6FuICVzLlxuIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6NzAgZHBrZy1zcGxpdC9zcGxpdC5jOjc2IGRwa2ctc3BsaXQvc3BsaXQuYzo4MQorIywgZnV6enkKKyN8IG1zZ2lkICJkcGtnLWRlYiBmaWVsZCBleHRyYWN0aW9uIgorbXNnaWQgInBhY2thZ2UgZmllbGQgdmFsdWUgZXh0cmFjdGlvbiIKK21zZ3N0ciAiZHBrZy1kZWIgesOtc2vDoW7DrSBob2Rub3R5IHBvbGUiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxMzEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gc291cmNlIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5lbHplIG90ZXbFmcOtdCB6ZHJvam92w70gc291Ym9yIOKAniUuMjUwc+KAnCIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjEzMworbXNnaWQgInVuYWJsZSB0byBmc3RhdCBzb3VyY2UgZmlsZSIKK21zZ3N0ciAibmVsemUgemF2b2xhdCBmc3RhdCBuYSB6ZHJvam92w70gc291Ym9yIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTM1CisjLCBjLWZvcm1hdAorbXNnaWQgInNvdXJjZSBmaWxlIGAlLjI1MHMnIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgInpkcm9qb3bDvSBzb3Vib3Ig4oCeJS4yNTBz4oCcIG5lbsOtIG9iecSNZWpuw71tIHNvdWJvcmVtIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTUzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0OiAiCisjfCBtc2dpZF9wbHVyYWwgIlB1dHRpbmcgcGFja2FnZSAlcyB0b2dldGhlciBmcm9tICVkIHBhcnRzOiAiCittc2dpZCAiU3BsaXR0aW5nIHBhY2thZ2UgJXMgaW50byAlZCBwYXJ0OiAiCittc2dpZF9wbHVyYWwgIlNwbGl0dGluZyBwYWNrYWdlICVzIGludG8gJWQgcGFydHM6ICIKK21zZ3N0clswXSAiU2VzdGF2dWppIGJhbMOtayAlcyB6ICVkIMSNw6FzdGk6ICIKK21zZ3N0clsxXSAiU2VzdGF2dWppIGJhbMOtayAlcyB6ICVkIMSNw6FzdMOtOiAiCittc2dzdHJbMl0gIlNlc3RhdnVqaSBiYWzDrWsgJXMgeiAlZCDEjcOhc3TDrTogIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTkzCittc2dpZCAiIgorIkhlYWRlciBpcyB0b28gbG9uZywgbWFraW5nIHBhcnQgdG9vIGxvbmcuIFlvdXIgcGFja2FnZSBuYW1lIG9yIHZlcnNpb25cbiIKKyJudW1iZXJzIG11c3QgYmUgZXh0cmFvcmRpbmFyaWx5IGxvbmcsIG9yIHNvbWV0aGluZy4gR2l2aW5nIHVwLlxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoyNDkKK21zZ2lkICItLXNwbGl0IG5lZWRzIGEgc291cmNlIGZpbGVuYW1lIGFyZ3VtZW50IgorbXNnc3RyICItLXNwbGl0IHZ5xb5hZHVqZSBqbcOpbm8gc291Ym9ydSIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjI1MgorbXNnaWQgIi0tc3BsaXQgdGFrZXMgYXQgbW9zdCBhIHNvdXJjZSBmaWxlbmFtZSBhbmQgZGVzdGluYXRpb24gcHJlZml4IgorbXNnc3RyICItLXNwbGl0IHZ5xb5hZHVqZSBuZWp2w73FoWUgam3DqW5vIHNvdWJvcnUgYSB6YcSNw6F0ZWsgY8OtbG92w6kgY2VzdHkiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo4NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMC0yMDAyIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDA5LTIwMTAgUmFwaGFlbCBIZXJ0em9nLlxuIgorbXNnc3RyICIiCisiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMC0yMDAyIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDA5LTIwMTAgUmFwaGFlbCBIZXJ0em9nLlxuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTAxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIDxjb21tYW5kPlxuIgorI3wgIlxuIgorI3wgIkNvbW1hbmRzOlxuIgorI3wgIiAgLS1pbnN0YWxsIDxsaW5rPiA8bmFtZT4gPHBhdGg+IDxwcmlvcml0eT5cbiIKKyN8ICIgICAgWy0tc2xhdmUgPGxpbms+IDxuYW1lPiA8cGF0aD5dIC4uLlxuIgorI3wgIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGFkZCBhIGdyb3VwIG9mIGFsdGVybmF0aXZlcyB0byB0aGUgc3lzdGVtLlxuIgorI3wgIiAgLS1yZW1vdmUgPG5hbWU+IDxwYXRoPiAgIHJlbW92ZSA8cGF0aD4gZnJvbSB0aGUgPG5hbWU+IGdyb3VwICIKKyN8ICJhbHRlcm5hdGl2ZS5cbiIKKyN8ICIgIC0tcmVtb3ZlLWFsbCA8bmFtZT4gICAgICByZW1vdmUgPG5hbWU+IGdyb3VwIGZyb20gdGhlIGFsdGVybmF0aXZlcyAiCisjfCAic3lzdGVtLlxuIgorI3wgIiAgLS1hdXRvIDxuYW1lPiAgICAgICAgICAgIHN3aXRjaCB0aGUgbWFzdGVyIGxpbmsgPG5hbWU+IHRvIGF1dG9tYXRpYyAiCisjfCAibW9kZS5cbiIKKyN8ICIgIC0tZGlzcGxheSA8bmFtZT4gICAgICAgICBkaXNwbGF5IGluZm9ybWF0aW9uIGFib3V0IHRoZSA8bmFtZT4gZ3JvdXAuXG4iCisjfCAiICAtLXF1ZXJ5IDxuYW1lPiAgICAgICAgICAgbWFjaGluZSBwYXJzZWFibGUgdmVyc2lvbiBvZiAtLWRpc3BsYXkgIgorI3wgIjxuYW1lPi5cbiIKKyN8ICIgIC0tbGlzdCA8bmFtZT4gICAgICAgICAgICBkaXNwbGF5IGFsbCB0YXJnZXRzIG9mIHRoZSA8bmFtZT4gZ3JvdXAuXG4iCisjfCAiICAtLWNvbmZpZyA8bmFtZT4gICAgICAgICAgc2hvdyBhbHRlcm5hdGl2ZXMgZm9yIHRoZSA8bmFtZT4gZ3JvdXAgYW5kIGFzayAiCisjfCAidGhlXG4iCisjfCAiICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlciB0byBzZWxlY3Qgd2hpY2ggb25lIHRvIHVzZS5cbiIKKyN8ICIgIC0tc2V0IDxuYW1lPiA8cGF0aD4gICAgICBzZXQgPHBhdGg+IGFzIGFsdGVybmF0aXZlIGZvciA8bmFtZT4uXG4iCisjfCAiICAtLWFsbCAgICAgICAgICAgICAgICAgICAgY2FsbCAtLWNvbmZpZyBvbiBhbGwgYWx0ZXJuYXRpdmVzLlxuIgorI3wgIlxuIgorI3wgIjxsaW5rPiBpcyB0aGUgc3ltbGluayBwb2ludGluZyB0byAlcy88bmFtZT4uXG4iCisjfCAiICAoZS5nLiAvdXNyL2Jpbi9wYWdlcilcbiIKKyN8ICI8bmFtZT4gaXMgdGhlIG1hc3RlciBuYW1lIGZvciB0aGlzIGxpbmsgZ3JvdXAuXG4iCisjfCAiICAoZS5nLiBwYWdlcilcbiIKKyN8ICI8cGF0aD4gaXMgdGhlIGxvY2F0aW9uIG9mIG9uZSBvZiB0aGUgYWx0ZXJuYXRpdmUgdGFyZ2V0IGZpbGVzLlxuIgorI3wgIiAgKGUuZy4gL3Vzci9iaW4vbGVzcylcbiIKKyN8ICI8cHJpb3JpdHk+IGlzIGFuIGludGVnZXI7IG9wdGlvbnMgd2l0aCBoaWdoZXIgbnVtYmVycyBoYXZlIGhpZ2hlciAiCisjfCAicHJpb3JpdHkgaW5cbiIKKyN8ICIgIGF1dG9tYXRpYyBtb2RlLlxuIgorI3wgIlxuIgorI3wgIk9wdGlvbnM6XG4iCisjfCAiICAtLWFsdGRpciA8ZGlyZWN0b3J5PiAgICAgY2hhbmdlIHRoZSBhbHRlcm5hdGl2ZXMgZGlyZWN0b3J5LlxuIgorI3wgIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIGNoYW5nZSB0aGUgYWRtaW5pc3RyYXRpdmUgZGlyZWN0b3J5LlxuIgorI3wgIiAgLS1za2lwLWF1dG8gICAgICAgICAgICAgIHNraXAgcHJvbXB0IGZvciBhbHRlcm5hdGl2ZXMgY29ycmVjdGx5ICIKKyN8ICJjb25maWd1cmVkXG4iCisjfCAiICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gYXV0b21hdGljIG1vZGUgKHJlbGV2YW50IGZvciAtLWNvbmZpZyAiCisjfCAib25seSlcbiIKKyN8ICIgIC0tdmVyYm9zZSAgICAgICAgICAgICAgICB2ZXJib3NlIG9wZXJhdGlvbiwgbW9yZSBvdXRwdXQuXG4iCisjfCAiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgcXVpZXQgb3BlcmF0aW9uLCBtaW5pbWFsIG91dHB1dC5cbiIKKyN8ICIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorI3wgIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLS1pbnN0YWxsIDxsaW5rPiA8bmFtZT4gPHBhdGg+IDxwcmlvcml0eT5cbiIKKyIgICAgWy0tc2xhdmUgPGxpbms+IDxuYW1lPiA8cGF0aD5dIC4uLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGFkZCBhIGdyb3VwIG9mIGFsdGVybmF0aXZlcyB0byB0aGUgc3lzdGVtLlxuIgorIiAgLS1yZW1vdmUgPG5hbWU+IDxwYXRoPiAgIHJlbW92ZSA8cGF0aD4gZnJvbSB0aGUgPG5hbWU+IGdyb3VwIGFsdGVybmF0aXZlLlxuIgorIiAgLS1yZW1vdmUtYWxsIDxuYW1lPiAgICAgIHJlbW92ZSA8bmFtZT4gZ3JvdXAgZnJvbSB0aGUgYWx0ZXJuYXRpdmVzICIKKyJzeXN0ZW0uXG4iCisiICAtLWF1dG8gPG5hbWU+ICAgICAgICAgICAgc3dpdGNoIHRoZSBtYXN0ZXIgbGluayA8bmFtZT4gdG8gYXV0b21hdGljIG1vZGUuXG4iCisiICAtLWRpc3BsYXkgPG5hbWU+ICAgICAgICAgZGlzcGxheSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgPG5hbWU+IGdyb3VwLlxuIgorIiAgLS1xdWVyeSA8bmFtZT4gICAgICAgICAgIG1hY2hpbmUgcGFyc2VhYmxlIHZlcnNpb24gb2YgLS1kaXNwbGF5IDxuYW1lPi5cbiIKKyIgIC0tbGlzdCA8bmFtZT4gICAgICAgICAgICBkaXNwbGF5IGFsbCB0YXJnZXRzIG9mIHRoZSA8bmFtZT4gZ3JvdXAuXG4iCisiICAtLWdldC1zZWxlY3Rpb25zICAgICAgICAgbGlzdCBtYXN0ZXIgYWx0ZXJuYXRpdmUgbmFtZXMgYW5kIHRoZWlyIHN0YXR1cy5cbiIKKyIgIC0tc2V0LXNlbGVjdGlvbnMgICAgICAgICByZWFkIGFsdGVybmF0aXZlIHN0YXR1cyBmcm9tIHN0YW5kYXJkIGlucHV0LlxuIgorIiAgLS1jb25maWcgPG5hbWU+ICAgICAgICAgIHNob3cgYWx0ZXJuYXRpdmVzIGZvciB0aGUgPG5hbWU+IGdyb3VwIGFuZCBhc2sgIgorInRoZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzZXIgdG8gc2VsZWN0IHdoaWNoIG9uZSB0byB1c2UuXG4iCisiICAtLXNldCA8bmFtZT4gPHBhdGg+ICAgICAgc2V0IDxwYXRoPiBhcyBhbHRlcm5hdGl2ZSBmb3IgPG5hbWU+LlxuIgorIiAgLS1hbGwgICAgICAgICAgICAgICAgICAgIGNhbGwgLS1jb25maWcgb24gYWxsIGFsdGVybmF0aXZlcy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIlBvdcW+aXTDrTogJXMgWzx2b2xiYT4g4oCmXSA8cMWZw61rYXo+XG4iCisiXG4iCisiUMWZw61rYXp5OlxuIgorIiAgLS1pbnN0YWxsIDxvZGthej4gPGptw6lubz4gPGNlc3RhPiA8cHJpb3JpdGE+XG4iCisiICAgIFstLXNsYXZlIDxvZGthej4gPGptw6lubz4gPGNlc3RhPl0g4oCmXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgcMWZaWTDoSBkbyBzeXN0w6ltdSBza3VwaW51IGFsdGVybmF0aXZcbiIKKyIgIC0tcmVtb3ZlIDxqbcOpbm8+IDxjZXN0YT4gemUgc2t1cGlueSBhbHRlcm5hdGl2IDxqbcOpbm8+IG9kc3RyYW7DrSA8Y2VzdHU+XG4iCisiICAtLXJlbW92ZS1hbGwgPGptw6lubz4gICAgIG9kc3RyYW7DrSBza3VwaW51IDxqbcOpbm8+IHplIHN5c3TDqW11IGFsdGVybmF0aXZcbiIKKyIgIC0tYXV0byA8am3DqW5vPiAgICAgICAgICAgcMWZZXBuZSBvZGtheiA8am3DqW5vPiBkbyBhdXRvbWF0aWNrw6lobyByZcW+aW11XG4iCisiICAtLWRpc3BsYXkgPGptw6lubz4gICAgICAgIHpvYnJhesOtIGluZm9ybWFjZSBvIHNrdXBpbsSbIDxqbcOpbm8+XG4iCisiICAtLXF1ZXJ5IDxqbcOpbm8+ICAgICAgICAgIHN0cm9qb3bEmyB6cHJhY292YXRlbG7DoSB2ZXJ6ZSAtLWRpc3BsYXkgPGptw6lubz5cbiIKKyIgIC0tbGlzdCA8am3DqW5vPiAgICAgICAgICAgem9icmF6w60gdsWhZWNobnkgY8OtbGUgc2t1cGlueSA8am3DqW5vPlxuIgorIiAgLS1jb25maWcgPGptw6lubz4gICAgICAgICB6b2JyYXrDrSBhbHRlcm5hdGl2eSBza3VwaW55IDxqbcOpbm8+IGEgcG/FvsOhZMOhXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgdcW+aXZhdGVsZSBvIHbDvWLEm3IgdMOpLCBrdGVyw6Egc2UgbcOhIHBvdcW+w610XG4iCisiICAtLXNldCA8am3DqW5vPiA8Y2VzdGE+ICAgIG5hc3RhdsOtIDxjZXN0dT4gamFrbyBhbHRlcm5hdGl2dSBwcm8gPGptw6lubz5cbiIKKyIgIC0tYWxsICAgICAgICAgICAgICAgICAgICB6YXZvbMOhIC0tY29uZmlnIG5hIHbFoWVjaG55IGFsdGVybmF0aXZ5XG4iCisiXG4iCisiPG9ka2F6PiBqZSBvZGtheiBqZSBvZGtheiB1a2F6dWrDrWPDrSBuYSAlcy88am3DqW5vPi5cbiIKKyIgIChuYXDFmS4gL3Vzci9iaW4vcGFnZXIpXG4iCisiPGptw6lubz4gamUgaGxhdm7DrSBqbcOpbm8gcHJvIHR1dG8gc2t1cGludSBvZGthesWvLlxuIgorIiAgKG5hcMWZLiBwYWdlcilcbiIKKyI8Y2VzdGE+IGplIHVtw61zdMSbbsOtIGplZG5vaG8geiBjw61sb3bDvWNoIHNvdWJvcsWvLlxuIgorIiAgKG5hcMWZLiAvdXNyL2Jpbi9sZXNzKVxuIgorIjxwcmlvcml0YT4gamUgY2Vsw6kgxI3DrXNsbzsgdiBhdXRvbWF0aWNrw6ltIHJlxb5pbXUganNvdSB2eWLDrXLDoW55IHZvbGJ5XG4iCisiICBzIHZ5xaHFocOtbWkgxI3DrXNseS5cbiIKKyJcbiIKKyJWb2xieTpcbiIKKyIgIC0tYWx0ZGlyIDxhZHJlc8OhxZk+ICAgICAgIHptxJtuw60gYWRyZXPDocWZIHBybyBhbHRlcm5hdGl2eVxuIgorIiAgLS1hZG1pbmRpciA8YWRyZXPDocWZPiAgICAgem3Em27DrSBhZG1pbmlzdHJhdGl2bsOtIGFkcmVzw6HFmVxuIgorIiAgLS1za2lwLWF1dG8gICAgICAgICAgICAgIHDFmWVza2/EjcOtIGRvdGF6IG5hIGtvcmVrdG7EmyBuYXN0YXZlbsOpIGFsdGVybmF0aXZ5XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgdiBhdXRvbWF0aWNrw6ltIHJlxb5pbXUgKHJlbGV2YW50bsOtIHBybyAtLWNvbmZpZylcbiIKKyIgIC0tdmVyYm9zZSAgICAgICAgICAgICAgICB1cG92w61kYW7DvSByZcW+aW0sIHbDrWNlIGluZm9ybWFjw61cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICB0aWNow70gcmXFvmltLCBtaW5pbcOhbG7DrSB2w71zdHVwXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgem9icmF6w60gdHV0byBuw6Fwb3bEm2R1XG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgem9icmF6w60gdmVyemlcbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiPGxpbms+IGlzIHRoZSBzeW1saW5rIHBvaW50aW5nIHRvICVzLzxuYW1lPi5cbiIKKyIgIChlLmcuIC91c3IvYmluL3BhZ2VyKVxuIgorIjxuYW1lPiBpcyB0aGUgbWFzdGVyIG5hbWUgZm9yIHRoaXMgbGluayBncm91cC5cbiIKKyIgIChlLmcuIHBhZ2VyKVxuIgorIjxwYXRoPiBpcyB0aGUgbG9jYXRpb24gb2Ygb25lIG9mIHRoZSBhbHRlcm5hdGl2ZSB0YXJnZXQgZmlsZXMuXG4iCisiICAoZS5nLiAvdXNyL2Jpbi9sZXNzKVxuIgorIjxwcmlvcml0eT4gaXMgYW4gaW50ZWdlcjsgb3B0aW9ucyB3aXRoIGhpZ2hlciBudW1iZXJzIGhhdmUgaGlnaGVyIHByaW9yaXR5ICIKKyJpblxuIgorIiAgYXV0b21hdGljIG1vZGUuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzMQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIk9wdGlvbnM6XG4iCisjfCAiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgc2V0IHRoZSBkaXJlY3Rvcnkgd2l0aCB0aGUgc3RhdG92ZXJyaWRlIGZpbGUuXG4iCisjfCAiICAtLXVwZGF0ZSAgICAgICAgICAgICAgICAgaW1tZWRpYXRlbHkgdXBkYXRlIGZpbGUgcGVybWlzc2lvbnMuXG4iCisjfCAiICAtLWZvcmNlICAgICAgICAgICAgICAgICAgZm9yY2UgYW4gYWN0aW9uIGV2ZW4gaWYgYSBzYW5pdHkgY2hlY2sgZmFpbHMuXG4iCisjfCAiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgcXVpZXQgb3BlcmF0aW9uLCBtaW5pbWFsIG91dHB1dC5cbiIKKyN8ICIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorI3wgIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisjfCAiXG4iCittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFsdGRpciA8ZGlyZWN0b3J5PiAgICAgY2hhbmdlIHRoZSBhbHRlcm5hdGl2ZXMgZGlyZWN0b3J5LlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIGNoYW5nZSB0aGUgYWRtaW5pc3RyYXRpdmUgZGlyZWN0b3J5LlxuIgorIiAgLS1sb2cgPGZpbGU+ICAgICAgICAgICAgIGNoYW5nZSB0aGUgbG9nIGZpbGUuXG4iCisiICAtLWZvcmNlICAgICAgICAgICAgICAgICAgYWxsb3cgcmVwbGFjaW5nIGZpbGVzIHdpdGggYWx0ZXJuYXRpdmUgbGlua3MuXG4iCisiICAtLXNraXAtYXV0byAgICAgICAgICAgICAgc2tpcCBwcm9tcHQgZm9yIGFsdGVybmF0aXZlcyBjb3JyZWN0bHkgIgorImNvbmZpZ3VyZWRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBhdXRvbWF0aWMgbW9kZSAocmVsZXZhbnQgZm9yIC0tY29uZmlnIG9ubHkpXG4iCisiICAtLXZlcmJvc2UgICAgICAgICAgICAgICAgdmVyYm9zZSBvcGVyYXRpb24sIG1vcmUgb3V0cHV0LlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHF1aWV0IG9wZXJhdGlvbiwgbWluaW1hbCBvdXRwdXQuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorbXNnc3RyICIiCisiVm9sYnk6XG4iCisiICAtLWFkbWluZGlyIDxhZHJlc8OhxZk+ICAgICB1csSNw60gYWRyZXPDocWZIHNlIHNvdWJvcmVtIHN0YXRvdmVycmlkZVxuIgorIiAgLS11cGRhdGUgICAgICAgICAgICAgICAgIG9rYW3Fvml0xJsgYWt0dWFsaXp1amUgb3Byw6F2bsSbbsOtIGsgc291Ym9yxa9tXG4iCisiICAtLWZvcmNlICAgICAgICAgICAgICAgICAgdnludXTDrSBha2NpLCBpIGtkecW+IHNlbMW+ZSBrb250cm9sYSBwxZnDrcSNZXRub3N0aVxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHRpY2jDvSByZcW+aW0sIG1pbmltw6FsbsOtIHbDvXN0dXBcbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICB6b2JyYXrDrSB0dXRvIG7DoXBvdsSbZHVcbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICB6b2JyYXrDrSB2ZXJ6aVxuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNjMKK21zZ2lkICJlcnJvciIKK21zZ3N0ciAiY2h5YmEiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxOTMKK21zZ2lkICJ3YXJuaW5nIgorbXNnc3RyICJ2YXJvdsOhbsOtIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MzU2CisjLCBjLWZvcm1hdAorbXNnaWQgInR3byBjb21tYW5kcyBzcGVjaWZpZWQ6IC0tJXMgYW5kIC0tJXMiCittc2dzdHIgInphZMOhbnkgZHZhIHDFmcOta2F6eTogLS0lcyBhIC0tJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzozODcKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImNhbm5vdCBhcHBlbmQgdG8gJXM6ICVzIgorbXNnaWQgImNhbm5vdCBhcHBlbmQgdG8gJyVzJyIKK21zZ3N0ciAibmVsemUgcMWZaXBvaml0IGsgJXM6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NTU2CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlICVzOiAlcyIKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlICclcyciCittc2dzdHIgIm5lbHplIG9kc3RyYW5pdCAlczogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTExCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGZpbGUgd2hpbGUgdHJ5aW5nIHRvIHJlYWQgJXMiCittc2dzdHIgIm5lb8SNZWvDoXZhbsO9IGtvbmVjIHNvdWJvcnUgcMWZaSBwb2t1c3UgbyDEjXRlbsOtICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTExMworIywgYy1mb3JtYXQKK21zZ2lkICJ3aGlsZSByZWFkaW5nICVzOiAlcyIKK21zZ3N0ciAicMWZaSDEjXRlbsOtICVzOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMTkKKyMsIGMtZm9ybWF0Cittc2dpZCAibGluZSBub3QgdGVybWluYXRlZCB3aGlsZSB0cnlpbmcgdG8gcmVhZCAlcyIKK21zZ3N0ciAibmV1a29uxI1lbsO9IMWZw6FkZWsgcMWZaSBwb2t1c3UgbyDEjXRlbsOtICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTEzNworIywgYy1mb3JtYXQKK21zZ2lkICIlcyBjb3JydXB0OiAlcyIKK21zZ3N0ciAiJXMgcG9ydcWhZW5vOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAibmV3bGluZXMgcHJvaGliaXRlZCBpbiB1cGRhdGUtYWx0ZXJuYXRpdmVzIGZpbGVzICglcykiCittc2dzdHIgIm5vdsOpIMWZw6Fka3kganNvdSB2IHNvdWJvcmVjaCB1cGRhdGUtYWx0ZXJuYXRpdmVzIHpha8OhesOhbnkgKCVzKSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNjMKK21zZ2lkICJzbGF2ZSBuYW1lIgorbXNnc3RyICJ6w6F2aXNsw6kgam3DqW5vIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE3MSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQwNQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZHVwbGljYXRlIHNsYXZlICVzIgorbXNnaWQgImR1cGxpY2F0ZSBzbGF2ZSBuYW1lICVzIgorbXNnc3RyICJkdXBsaWNpdG7DrSB6w6F2aXNsb3N0ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE3NAorbXNnaWQgInNsYXZlIGxpbmsiCittc2dzdHIgInrDoXZpc2zDvSBvZGtheiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAic2xhdmUgbGluayBzYW1lIGFzIG1haW4gbGluayAlcyIKK21zZ3N0ciAiesOhdmlzbMO9IG9ka2F6IGplIHN0ZWpuw70gamFrbyBobGF2bsOtIG9ka2F6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE4NSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQxMgorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgc2xhdmUgbGluayAlcyIKK21zZ3N0ciAiZHVwbGljaXRuw60gesOhdmlzbMO9IG9ka2F6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIwNAorbXNnaWQgIm1hc3RlciBmaWxlIgorbXNnc3RyICJobGF2bsOtIHNvdWJvciIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHBhdGggJXMiCittc2dzdHIgImR1cGxpY2l0bsOtIGNlc3RhICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIyNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYWx0ZXJuYXRpdmUgJXMgKHBhcnQgb2YgbGluayBncm91cCAlcykgZG9lc24ndCBleGlzdC4gUmVtb3ZpbmcgZnJvbSBsaXN0IG9mICIKKyJhbHRlcm5hdGl2ZXMuIgorbXNnc3RyICIiCisiYWx0ZXJuYXRpdmEgJXMgKHNvdcSNw6FzdCBza3VwaW55IG9ka2F6xa8gJXMpIG5lZXhpc3R1amUuIE9kc3RyYcWIdWppIHplIHNlem5hbXUgIgorImFsdGVybmF0aXYuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIyOSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI0MAorbXNnaWQgInByaW9yaXR5IgorbXNnc3RyICJwcmlvcml0YSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMzIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyNDkKK21zZ2lkICJzbGF2ZSBmaWxlIgorbXNnc3RyICJ6w6F2aXNsw70gc291Ym9yIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI0NAorIywgYy1mb3JtYXQKK21zZ2lkICJwcmlvcml0eSBvZiAlczogJXMiCittc2dzdHIgInByaW9yaXRhICVzOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyOTcKK21zZ2lkICJzdGF0dXMiCittc2dzdHIgInN0YXYiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjk5Cittc2dpZCAiaW52YWxpZCBzdGF0dXMiCittc2dzdHIgIm5lcGxhdG7DvSBzdGF2IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTMwNAorbXNnaWQgIm1hc3RlciBsaW5rIgorbXNnc3RyICJobGF2bsOtIG9ka2F6IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTM0OAorIywgYy1mb3JtYXQKK21zZ2lkICJkaXNjYXJkaW5nIG9ic29sZXRlIHNsYXZlIGxpbmsgJXMgKCVzKS4iCittc2dzdHIgInphaGF6dWppIHphc3RhcmFsw70gesOhdmlzbMO9IG9ka2F6ICVzICglcykuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2OQorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MzgKK21zZ2lkICJhdXRvIG1vZGUiCittc2dzdHIgImF1dG9tYXRpY2vDvSByZcW+aW0iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTAyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTc4CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYzOQorbXNnaWQgIm1hbnVhbCBtb2RlIgorbXNnc3RyICJydcSNbsOtIHJlxb5pbSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBsaW5rIGN1cnJlbnRseSBwb2ludHMgdG8gJXMiCittc2dzdHIgIiAgb2RrYXogbW9tZW50w6FsbsSbIHVrYXp1amUgbmEgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTA4Cittc2dpZCAiICBsaW5rIGN1cnJlbnRseSBhYnNlbnQiCittc2dzdHIgIiAgb2RrYXogbW9tZW50w6FsbsSbIGNoeWLDrSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgLSBwcmlvcml0eSAlZCIKK21zZ3N0ciAiJXMgLSBwcmlvcml0YSAlZCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBzbGF2ZSAlczogJXMiCittc2dzdHIgIiAgesOhdmlzbG9zdCAlczogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTIyCisjLCBjLWZvcm1hdAorbXNnaWQgIkN1cnJlbnQgJ2Jlc3QnIHZlcnNpb24gaXMgJyVzJy4iCittc2dzdHIgIk1vbWVudMOhbG7DrSDigJ5uZWpsZXDFocOt4oCcIHZlcnplIGplIOKAniVz4oCcLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MjQKK21zZ2lkICJObyB2ZXJzaW9ucyBhdmFpbGFibGUuIgorbXNnc3RyICJOZWpzb3UgayBkaXNwb3ppY2kgxb7DoWRuw6kgdmVyemUuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU1MworIywgYy1mb3JtYXQKK21zZ2lkICJUaGVyZSBpcyAlZCBjaG9pY2UgZm9yIHRoZSBhbHRlcm5hdGl2ZSAlcyAocHJvdmlkaW5nICVzKS4iCittc2dpZF9wbHVyYWwgIlRoZXJlIGFyZSAlZCBjaG9pY2VzIGZvciB0aGUgYWx0ZXJuYXRpdmUgJXMgKHByb3ZpZGluZyAlcykuIgorbXNnc3RyWzBdICJFeGlzdHVqZSAlZCBtb8W+bm9zdCBwcm8gYWx0ZXJuYXRpdnUgJXMgKHBvc2t5dHVqw61jw60gJXMpLiIKK21zZ3N0clsxXSAiRXhpc3R1asOtICVkIG1vxb5ub3N0aSBwcm8gYWx0ZXJuYXRpdnUgJXMgKHBvc2t5dHVqw61jw60gJXMpLiIKK21zZ3N0clsyXSAiRXhpc3R1amUgJWQgbW/Fvm5vc3TDrSBwcm8gYWx0ZXJuYXRpdnUgJXMgKHBvc2t5dHVqw61jw60gJXMpLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NjAKK21zZ2lkICJTZWxlY3Rpb24iCittc2dzdHIgIlbDvWLEm3IiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYxCittc2dpZCAiUGF0aCIKK21zZ3N0ciAiQ2VzdGEiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYxCittc2dpZCAiUHJpb3JpdHkiCittc2dzdHIgIlByaW9yaXRhIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2MQorbXNnaWQgIlN0YXR1cyIKK21zZ3N0ciAiU3RhdiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHJlc3MgZW50ZXIgdG8ga2VlcCB0aGUgY3VycmVudCBjaG9pY2VbKl0sIG9yIHR5cGUgc2VsZWN0aW9uIG51bWJlcjogIgorbXNnc3RyICJQcm8gYWt0dcOhbG7DrSBtb8W+bm9zdFsqXSBzdGlza27Em3RlIGVudGVyLCBqaW5hayB6YWRlanRlIMSNw61zbG86ICIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3MjEKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IHJlcGxhY2luZyAlcyB3aXRoIGEgbGluay4iCittc2dzdHIgIm5lbmFocmF6dWppICVzIG9ka2F6ZW0uIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTc2MgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW4ndCBpbnN0YWxsIHVua25vd24gY2hvaWNlICVzIgorbXNnc3RyICJuZWx6ZSBpbnN0YWxvdmF0IG5lem7DoW1vdSB2b2xidSAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInNraXAgY3JlYXRpb24gb2YgJXMgYmVjYXVzZSBhc3NvY2lhdGVkIGZpbGUgJXMgKG9mIGxpbmsgZ3JvdXAgJXMpIGRvZXNuJ3QgIgorImV4aXN0LiIKK21zZ3N0ciAiIgorInDFmWVza2FrdWppIHZ5dHZvxZllbsOtICVzLCBwcm90b8W+ZSBwxZlpZHJ1xb5lbsO9IHNvdWJvciAlcyAoemUgc2t1cGlueSBvZGthesWvICVzKSAiCisibmVleGlzdHVqZS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNzkwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJub3QgcmVwbGFjaW5nICVzIHdpdGggYSBsaW5rLiIKK21zZ2lkICJub3QgcmVtb3ZpbmcgJXMgc2luY2UgaXQncyBub3QgYSBzeW1saW5rLiIKK21zZ3N0ciAibmVuYWhyYXp1amkgJXMgb2RrYXplbS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDQxIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDQ3CisjLCBjLWZvcm1hdAorbXNnaWQgIkNhbGwgJXMuIgorbXNnc3RyICJWb2zDoW0gJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA1MQorIywgYy1mb3JtYXQKK21zZ2lkICJBbHRlcm5hdGl2ZSAlcyB1bmNoYW5nZWQgYmVjYXVzZSBjaG9pY2UgJXMgaXMgbm90IGF2YWlsYWJsZS4iCittc2dzdHIgIkFsdGVybmF0aXZhICVzIG5lYnlsYSB6bcSbbsSbbmEsIHByb3Rvxb5lIHZvbGJhICVzIG5lbsOtIGRvc3R1cG7DoS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDU1CisjLCBjLWZvcm1hdAorbXNnaWQgIlNraXAgdW5rbm93biBhbHRlcm5hdGl2ZSAlcy4iCittc2dzdHIgIlDFmWVza2/EjWVuw60gbmV6bsOhbcOpIGFsdGVybmF0aXZ5ICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNzcKKyMsIGMtZm9ybWF0Cittc2dpZCAibGluZSB0b28gbG9uZyBvciBub3QgdGVybWluYXRlZCB3aGlsZSB0cnlpbmcgdG8gcmVhZCAlcyIKK21zZ3N0ciAicMWZw61sacWhIGRsb3Vow70gbmVibyBuZXVrb27EjWVuw70gxZnDoWRlayBwxZlpIHBva3VzdSBvIMSNdGVuw60gJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDkwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTAzCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjExMworIywgYy1mb3JtYXQKK21zZ2lkICJTa2lwIGludmFsaWQgbGluZTogJXMiCittc2dzdHIgIlDFmWVza2/EjWVuw60gbmVwbGF0bsOpaG8gxZnDoWRrdTogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTMyCisjLCBjLWZvcm1hdAorbXNnaWQgInJlbmFtaW5nICVzIGxpbmsgZnJvbSAlcyB0byAlcy4iCittc2dzdHIgInDFmWVqbWVub3bDoXbDoW0gb2RrYXogJXMgeiAlcyBuYSAlcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTczCisjLCBjLWZvcm1hdAorbXNnaWQgInJlbmFtaW5nICVzIHNsYXZlIGxpbmsgZnJvbSAlcyB0byAlcy4iCittc2dzdHIgInDFmWVqbWVub3bDoXbDoW0gesOhdmlzbMO9IG9ka2F6ICVzIHogJXMgbmEgJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE4OQorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBuYW1lICglcykgbXVzdCBub3QgY29udGFpbiAnLycgYW5kIHNwYWNlcy4iCittc2dzdHIgImptw6lubyBhbHRlcm5hdGl2eSAoJXMpIG5lc23DrSBvYnNhaG92YXQg4oCeL+KAnCBhIG1lemVyeS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTkzCisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIGxpbmsgaXMgbm90IGFic29sdXRlIGFzIGl0IHNob3VsZCBiZTogJXMiCittc2dzdHIgImFsdGVybmF0aXZuw60gb2RrYXogbmVuw60gYWJzb2x1dG7DrSwgamFrIGJ5IG3Em2wgYsO9dDogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTk3CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIHBhdGggaXMgbm90IGFic29sdXRlIGFzIGl0IHNob3VsZCBiZTogJXMiCittc2dzdHIgImFsdGVybmF0aXZuw60gY2VzdGEgbmVuw60gYWJzb2x1dG7DrSwgamFrIGJ5IG3Em2xhIGLDvXQ6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjIyNAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgbWFzdGVyOiAlcyIKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBtYXN0ZXI6IGl0IGlzIGEgc2xhdmUgb2YgJXMiCittc2dzdHIgImFsdGVybmF0aXZhICVzIG5lbcWvxb5lIGLDvXQgaGxhdm7DrTogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjMyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjY3CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIGxpbmsgJXMgaXMgYWxyZWFkeSBtYW5hZ2VkIGJ5ICVzLiIKK21zZ3N0ciAiYWx0ZXJuYXRpdm7DrSBvZGtheiAlcyBqZSBqacW+IHNwcmF2b3bDoW4gcG9tb2PDrSAlcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjQxCisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIHBhdGggJXMgZG9lc24ndCBleGlzdC4iCittc2dzdHIgImFsdGVybmF0aXZuw60gY2VzdGEgJXMgbmVleGlzdHVqZS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjU0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBzbGF2ZSBvZiAlczogJXMiCittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgc2xhdmUgb2YgJXM6IGl0IGlzIGEgbWFzdGVyIGFsdGVybmF0aXZlLiIKK21zZ3N0ciAiYWx0ZXJuYXRpdmEgJXMgbmVtxa/FvmUgYsO9dCB6w6F2aXNsb3N0ICVzOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNTgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImFsdGVybmF0aXZlICVzIGNhbid0IGJlIG1hc3RlcjogJXMiCittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgc2xhdmUgb2YgJXM6IGl0IGlzIGEgc2xhdmUgb2YgJXMiCittc2dzdHIgImFsdGVybmF0aXZhICVzIG5lbcWvxb5lIGLDvXQgaGxhdm7DrTogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjc4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJhbHRlcm5hdGl2ZSBsaW5rICVzIGlzIGFscmVhZHkgbWFuYWdlZCBieSAlcy4iCittc2dpZCAiYWx0ZXJuYXRpdmUgbGluayAlcyBpcyBhbHJlYWR5IG1hbmFnZWQgYnkgJXMgKHNsYXZlIG9mICVzKS4iCittc2dzdHIgImFsdGVybmF0aXZuw60gb2RrYXogJXMgamUgamnFviBzcHJhdm92w6FuIHBvbW9jw60gJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjMyNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGFyZ3VtZW50IGAlcyciCittc2dzdHIgIm5lem7DoW3DvSBhcmd1bWVudCDigJ4lc+KAnCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNDMKK21zZ2lkICItLWluc3RhbGwgbmVlZHMgPGxpbms+IDxuYW1lPiA8cGF0aD4gPHByaW9yaXR5PiIKK21zZ3N0ciAiLS1pbnN0YWxsIHZ5xb5hZHVqZSA8b2RrYXo+IDxqbcOpbm8+IDxjZXN0YT4gPHByaW9yaXRhPiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNDYgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzOTcKK21zZ2lkICI8bGluaz4gYW5kIDxwYXRoPiBjYW4ndCBiZSB0aGUgc2FtZSIKK21zZ3N0ciAiPG9ka2F6PiBhIDxjZXN0YT4gbmVtb2hvdSBiw710IHN0ZWpuw6kiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzQ5Cittc2dpZCAicHJpb3JpdHkgbXVzdCBiZSBhbiBpbnRlZ2VyIgorbXNnc3RyICJwcmlvcml0YSBtdXPDrSBiw710IGNlbMOpIMSNw61zbG8iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzYyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgPG5hbWU+IDxwYXRoPiIKK21zZ3N0ciAiLS0lcyB2ecW+YWR1amUgPGptw6lubz4gPGNlc3RhPiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyA8bmFtZT4iCittc2dzdHIgIi0tJXMgdnnFvmFkdWplIDxqbcOpbm8+IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM4OAorbXNnaWQgIi0tc2xhdmUgb25seSBhbGxvd2VkIHdpdGggLS1pbnN0YWxsIgorbXNnc3RyICItLXNsYXZlIGplIHBvdm9sZW5vIGplbiBzb3XEjWFzbsSbIHMgLS1pbnN0YWxsIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM5MAorbXNnaWQgIi0tc2xhdmUgbmVlZHMgPGxpbms+IDxuYW1lPiA8cGF0aD4iCittc2dzdHIgIi0tc2xhdmUgdnnFvmFkdWplIDxvZGthej4gPGptw6lubz4gPGNlc3RhPiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzOTkKKyMsIGMtZm9ybWF0Cittc2dpZCAibmFtZSAlcyBpcyBib3RoIHByaW1hcnkgYW5kIHNsYXZlIgorbXNnc3RyICJqbcOpbm8gJXMgamUgamFrIHByaW3DoXJuw60sIHRhayB6w6F2aXNsw6kiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDAyCisjLCBjLWZvcm1hdAorbXNnaWQgImxpbmsgJXMgaXMgYm90aCBwcmltYXJ5IGFuZCBzbGF2ZSIKK21zZ3N0ciAib2RrYXogJXMgamUgamFrIHByaW3DoXJuw60sIHRhayB6w6F2aXNsw70iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDIyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSA8ZmlsZT4gYXJndW1lbnQiCittc2dzdHIgIi0tJXMgdnnFvmFkdWplIGFyZ3VtZW50IDxzb3Vib3I+IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQ0OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiBgJXMnIgorbXNnc3RyICJuZXpuw6Ftw6Egdm9sYmEg4oCeJXPigJwiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDUzCittc2dpZCAiIgorIm5lZWQgLS1kaXNwbGF5LCAtLXF1ZXJ5LCAtLWxpc3QsIC0tZ2V0LXNlbGVjdGlvbnMsIC0tY29uZmlnLCAtLXNldCwgLS1zZXQtIgorInNlbGVjdGlvbnMsIC0taW5zdGFsbCwgLS1yZW1vdmUsIC0tYWxsLCAtLXJlbW92ZS1hbGwgb3IgLS1hdXRvIgorbXNnc3RyICIiCisidnnFvmFkdWppIC0tZGlzcGxheSwgLS1xdWVyeSwgLS1saXN0LCAtLWdldC1zZWxlY3Rpb25zLCAtLWNvbmZpZywgLS1zZXQsIC0tIgorInNldC1zZWxlY3Rpb25zLCAtLWluc3RhbGwsIC0tcmVtb3ZlLCAtLWFsbCwgLS1yZW1vdmUtYWxsIG5lYm8gLS1hdXRvIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQ5MAorbXNnaWQgIjxzdGFuZGFyZCBpbnB1dD4iCittc2dzdHIgIjxzdGFuZGFyZG7DrSB2c3R1cD4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTAwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTAzCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIGFsdGVybmF0aXZlcyBmb3IgJXMuIgorbXNnc3RyICJwcm8gJXMgbmVleGlzdHVqw60gxb7DoWRuw6kgYWx0ZXJuYXRpdnkuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUzMAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiJXMgaXMgZGFuZ2xpbmcsIGl0IHdpbGwgYmUgdXBkYXRlZCB3aXRoIGJlc3QgY2hvaWNlLiIKK21zZ2lkICIlcy8lcyBpcyBkYW5nbGluZywgaXQgd2lsbCBiZSB1cGRhdGVkIHdpdGggYmVzdCBjaG9pY2UuIgorbXNnc3RyICIlcyBuZW7DrSB6YWtvbsSNZW7DvSwgYnVkZSBuYXN0YXZlbiBuYSBuZWpsZXDFocOtIG1vxb5ub3N0LiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MzQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIlcyBoYXMgYmVlbiBjaGFuZ2VkIChtYW51YWxseSBvciBieSBhIHNjcmlwdCkuIFN3aXRjaGluZyB0byBtYW51YWwgIgorI3wgInVwZGF0ZXMgb25seS4iCittc2dpZCAiIgorIiVzLyVzIGhhcyBiZWVuIGNoYW5nZWQgKG1hbnVhbGx5IG9yIGJ5IGEgc2NyaXB0KS4gU3dpdGNoaW5nIHRvIG1hbnVhbCAiCisidXBkYXRlcyBvbmx5LiIKK21zZ3N0ciAiIgorIiVzIGJ5bCB6bcSbbsSbbiAodsOhbWkgbmVibyBza3JpcHRlbSkuIFDFmWVww61uw6FtIHBvdXplIG5hIHJ1xI1uw60gYWt0dWFsaXphY2UuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU0MgorIywgYy1mb3JtYXQKK21zZ2lkICJzZXR0aW5nIHVwIGF1dG9tYXRpYyBzZWxlY3Rpb24gb2YgJXMuIgorbXNnc3RyICJuYXN0YXZ1amkgYXV0b21hdGlja8O9IHbDvWLEm3IgJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU1MQorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBmb3IgJXMgbm90IHJlZ2lzdGVyZWQsIG5vdCBzZXR0aW5nLiIKK21zZ3N0ciAiYWx0ZXJuYXRpdmEgJXMgcHJvICVzIG5lbsOtIHJlZ2lzdHJvdsOhbmEsIG5lbmFzdGF2dWppLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NTcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiVGhlcmUgaXMgbm8gcHJvZ3JhbSB3aGljaCBwcm92aWRlcyAlcy4iCittc2dzdHIgIk5lZXhpc3R1amUgcHJvZ3JhbSBwb3NreXR1asOtY8OtICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NjUgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NzUKK21zZ2lkICJOb3RoaW5nIHRvIGNvbmZpZ3VyZS4iCittc2dzdHIgIk5pYyBrIG5hc3RhdmVuw60uIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU3MworIywgYy1mb3JtYXQKK21zZ2lkICJUaGVyZSBpcyBvbmx5IG9uZSBhbHRlcm5hdGl2ZSBpbiBsaW5rIGdyb3VwICVzOiAlcyIKK21zZ3N0ciAiVmUgc2t1cGluxJsgb2RrYXrFryAlcyBqZSBwb3V6ZSBqZWRuYSBhbHRlcm5hdGl2YTogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTg0CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlICVzIGZvciAlcyBub3QgcmVnaXN0ZXJlZCwgbm90IHJlbW92aW5nLiIKK21zZ3N0ciAiYWx0ZXJuYXRpdmEgJXMgcHJvICVzIG5lbsOtIHJlZ2lzdHJvdsOhbmEsIG5lb2RzdHJhxYh1amkuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU5MgorIywgYy1mb3JtYXQKK21zZ2lkICJyZW1vdmluZyBtYW51YWxseSBzZWxlY3RlZCBhbHRlcm5hdGl2ZSAtIHN3aXRjaGluZyAlcyB0byBhdXRvIG1vZGUiCittc2dzdHIgIiIKKyJvZHN0cmHFiHVqaSBydcSNbsSbIHp2b2xlbm91IGFsdGVybmF0aXZ1IC0gcMWZZXDDrW7DoW0gJXMgZG8gYXV0b21hdGlja8OpaG8gcmXFvmltdSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MTcKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImF1dG9tYXRpYyB1cGRhdGVzIG9mICVzIGFyZSBkaXNhYmxlZCwgbGVhdmluZyBpdCBhbG9uZS4iCittc2dpZCAiYXV0b21hdGljIHVwZGF0ZXMgb2YgJXMvJXMgYXJlIGRpc2FibGVkLCBsZWF2aW5nIGl0IGFsb25lLiIKK21zZ3N0ciAiYXV0b21hdGlja8OpIGFrdHVhbGl6YWNlICVzIGpzb3UgemFrw6F6w6FueSwgcG9uZWNow6F2w6FtIGJleiB6bcSbbi4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjE5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ0byByZXR1cm4gdG8gYXV0b21hdGljIHVwZGF0ZXMgdXNlIGB1cGRhdGUtYWx0ZXJuYXRpdmVzIC0tYXV0byAlcycuIgorbXNnaWQgInRvIHJldHVybiB0byBhdXRvbWF0aWMgdXBkYXRlcyB1c2UgJyVzIC0tYXV0byAlcycuIgorbXNnc3RyICIiCisiayBhdXRvbWF0aWNrw71tIGFrdHVhbGl6YWPDrW0gc2UgdnLDoXTDrXRlIHDFmcOta2F6ZW0g4oCedXBkYXRlLWFsdGVybmF0aXZlcyAtLWF1dG8gIgorIiVz4oCcLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MzYKKyMsIGMtZm9ybWF0Cittc2dpZCAidXNpbmcgJXMgdG8gcHJvdmlkZSAlcyAoJXMpIGluICVzLiIKK21zZ3N0ciAicG91xb7DrXbDoW0gJXMgcHJvIHBvc2t5dG51dMOtICVzICglcyksICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImZvcmNpbmcgcmVpbnN0YWxsYXRpb24gb2YgYWx0ZXJuYXRpdmUgJXMgYmVjYXVzZSBsaW5rIGdyb3VwICVzIGlzIGJyb2tlbi4iCittc2dzdHIgIiIKKyJ2eW51Y3VqaSBwxZllaW5zdGFsYWNpIGFsdGVybmF0aXZ5ICVzLCBwcm90b8W+ZSBza3VwaW5hIG9ka2F6xa8gJXMgamUgcG9ydcWhZW7DoS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjUxCisjLCBjLWZvcm1hdAorbXNnaWQgImN1cnJlbnQgYWx0ZXJuYXRpdmUgJXMgaXMgdW5rbm93biwgc3dpdGNoaW5nIHRvICVzIGZvciBsaW5rIGdyb3VwICVzLiIKK21zZ3N0ciAiIgorInNvdcSNYXNuw6EgYWx0ZXJuYXRpdmEgJXMgbmVleGlzdHVqZSwgcMWZZXDDrW7DoW0gbmEgJXMgcHJvIHNrdXBpbnUgb2RrYXrFryAlcy4iCisKKyN+IG1zZ2lkICJpdCBpcyBhIG1hc3RlciBhbHRlcm5hdGl2ZS4iCisjfiBtc2dzdHIgImplIHRvIGhsYXZuw60gYWx0ZXJuYXRpdmEuIgorCisjfiBtc2dpZCAiaXQgaXMgYSBzbGF2ZSBvZiAlcyIKKyN+IG1zZ3N0ciAiamUgdG8gesOhdmlzbG9zdCAlcyIKKworI34gbXNnaWQgImNhbm5vdCBzdGF0ICVzOiAlcyIKKyN+IG1zZ3N0ciAibmVsemUgdm9sYXQgc3RhdCBuYSAlczogJXMiCisKKyN+IG1zZ2lkICJyZWFkbGluayglcykgZmFpbGVkOiAlcyIKKyN+IG1zZ3N0ciAidm9sw6Fuw60gcmVhZGxpbmsoJXMpIHNlbGhhbG86ICVzIgorCisjfiBtc2dpZCAic2NhbiBvZiAlcyBmYWlsZWQ6ICVzIgorI34gbXNnc3RyICJwcm9jaMOhemVuw60gJXMgc2VsaGFsbzogJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlY3V0ZSAlczogJXMiCisjfiBtc2dzdHIgIm5lbHplIHNwdXN0aXQgJXM6ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIG1ha2UgJXMgYSBzeW1saW5rIHRvICVzOiAlcyIKKyN+IG1zZ3N0ciAibmVsemUgdnl0dm/FmWl0IHN5bWJvbGlja8O9IG9ka2F6ICVzIG5hICVzOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsICVzIGFzICVzOiAlcyIKKyN+IG1zZ3N0ciAibmVsemUgbmFpbnN0YWxvdmF0ICVzIGpha28gJXM6ICVzIgorCisjfiBtc2dpZCAid2hpbGUgd3JpdGluZyAlczogJXMiCisjfiBtc2dzdHIgInDFmWkgesOhcGlzdSAlczogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcmVhZCAlczogJXMiCisjfiBtc2dzdHIgIm5lbHplIMSNw61zdCAlczogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gY2xvc2UgJXM6ICVzIgorI34gbXNnc3RyICJuZWx6ZSB6YXbFmcOtdCAlczogJXMiCisKKyN+IG1zZ2lkICJjYW5ub3Qgd3JpdGUgJXM6ICVzIgorI34gbXNnc3RyICJuZWx6ZSB6YXBzYXQgJXM6ICVzIgorCisjLCBmdXp6eQorI358IG1zZ2lkICJ1bmFibGUgdG8gcmVuYW1lICVzIHRvICVzOiAlcyIKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcmVuYW1lIGZpbGUgJyVzJyB0byAnJXMnIgorI34gbXNnc3RyICJuZWx6ZSBwxZllam1lbm92YXQgJXMgbmEgJXM6ICVzIgorCisjfiBtc2dpZCAibWFsbG9jIGZhaWxlZCAoJWxkIGJ5dGVzKSIKKyN+IG1zZ3N0ciAibWFsbG9jIHNlbGhhbCAoJWxkIGJhanTFrykiCisKKyN+IG1zZ2lkICJyZWFsbG9jIGZhaWxlZCAoJWxkIGJ5dGVzKSIKKyN+IG1zZ3N0ciAicmVhbGxvYyBzZWxoYWwgKCVsZCBiYWp0xa8pIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHVuYnVmZmVyIGAlLjI1NXMnIgorI34gbXNnc3RyICJuZWx6ZSBvZGJ1ZmZlcm92YXQg4oCeJS4yNTVz4oCcIgorCisjfiBtc2dpZCAicGFydCBmaWxlIGAlLjI1MHMnIGhhcyB0cmFpbGluZyBnYXJiYWdlIgorI34gbXNnc3RyICJzb3Vib3Ig4oCeJS4yNTBz4oCcIG3DoSBuYSBrb25jaSBuZXNteXNseSIKKworI34gbXNnaWQgInNpemUgJTdkIG9jY3VycyAlNWQgdGltZXNcbiIKKyN+IG1zZ3N0ciAidmVsaWtvc3QgJTdkIHNlIG9iamV2dWplICU1ZCBrcsOhdFxuIgorCisjfiBtc2dpZCAib3V0IG9mIG1lbW9yeSBwdXNoaW5nIGVycm9yIGhhbmRsZXI6ICIKKyN+IG1zZ3N0ciAibm91em92w70gY2h5Ym92w70gdsO9c3R1cDogIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHVubG9jayBkcGtnIHN0YXR1cyBkYXRhYmFzZSIKKyN+IG1zZ3N0ciAic3Rhdm92b3UgZGF0YWLDoXppIGRwa2cgbmVsemUgb2RlbWtub3V0IgorCisjfiBtc2dpZCAiY29weSBpbmZvIGZpbGUgYCUuMjU1cyciCisjfiBtc2dzdHIgImtvcMOtcm92w6Fuw60gaW5mbyBzb3Vib3J1IOKAniUuMjU1c+KAnCIKKworI34gbXNnaWQgInBhcnNlIGVycm9yIgorI34gbXNnc3RyICJjaHliYSBzeW50YWt0aWNrw6kgYW5hbMO9enkiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gd3JpdGUgcGFyc2luZyB3YXJuaW5nIgorI34gbXNnc3RyICJjaHliYSBwxZlpIHrDoXBpc3UgdmFyb3bDoW7DrSBvIHJvemJvcnUiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gbG9jayB0cmlnZ2VycyBhcmVhIgorI34gbXNnc3RyICJuZWx6ZSB6YW1rbm91dCBvYmxhc3Qgc3BvdcWhdMSbxI3FryIKKworI34gbXNnaWQgImZhaWxlZCB0byBydW4gJXMgKCUuMjUwcykiCisjfiBtc2dzdHIgIm5lbHplIHNwdXN0aXQgJXMgKCUuMjUwcykiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBzaGVsbCAoJS4yNTBzKSIKKyN+IG1zZ3N0ciAibmVsemUgc3B1c3RpdCBzaGVsbCAoJS4yNTBzKSIKKworI34gbXNnaWQgInVuYWJsZSB0byBjaGVjayBmb3IgZXhpc3RlbmNlIG9mIGAlLjI1MHMnIgorI34gbXNnc3RyICJleGlzdGVuY2kg4oCeJS4yNTBz4oCcIG5lbHplIHprb250cm9sb3ZhdCIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIHJtIGZvciBjbGVhbnVwIgorI34gbXNnc3RyICJzcHXFoXTEm27DrSBybSBwcm8gw7prbGlkIHNlbGhhbG8iCisKKyN+IG1zZ2lkICIiCisjfiAiJXMgZGVidWdnaW5nIG9wdGlvbiwgLS1kZWJ1Zz08b2N0YWw+IG9yIC1EPG9jdGFsPjpcbiIKKyN+ICJcbiIKKyN+ICIgbnVtYmVyICByZWYuIGluIHNvdXJjZSAgIGRlc2NyaXB0aW9uXG4iCisjfiAiICAgICAgMSAgIGdlbmVyYWwgICAgICAgICAgIEdlbmVyYWxseSBoZWxwZnVsIHByb2dyZXNzIGluZm9ybWF0aW9uXG4iCisjfiAiICAgICAgMiAgIHNjcmlwdHMgICAgICAgICAgIEludm9jYXRpb24gYW5kIHN0YXR1cyBvZiBtYWludGFpbmVyIHNjcmlwdHNcbiIKKyN+ICIgICAgIDEwICAgZWFjaGZpbGUgICAgICAgICAgT3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkXG4iCisjfiAiICAgIDEwMCAgIGVhY2hmaWxlZGV0YWlsICAgIExvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkXG4iCisjfiAiICAgICAyMCAgIGNvbmZmICAgICAgICAgICAgIE91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGVcbiIKKyN+ICIgICAgMjAwICAgY29uZmZkZXRhaWwgICAgICAgTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggY29uZmlndXJhdGlvbiBmaWxlXG4iCisjfiAiICAgICA0MCAgIGRlcGNvbiAgICAgICAgICAgIERlcGVuZGVuY2llcyBhbmQgY29uZmxpY3RzXG4iCisjfiAiICAgIDQwMCAgIGRlcGNvbmRldGFpbCAgICAgIExvdHMgb2YgZGVwZW5kZW5jaWVzL2NvbmZsaWN0cyBvdXRwdXRcbiIKKyN+ICIgIDEwMDAwICAgdHJpZ2dlcnMgICAgICAgICAgVHJpZ2dlciBhY3RpdmF0aW9uIGFuZCBwcm9jZXNzaW5nXG4iCisjfiAiICAyMDAwMCAgIHRyaWdnZXJzZGV0YWlsICAgIExvdHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2Vyc1xuIgorI34gIiAgNDAwMDAgICB0cmlnZ2Vyc3N0dXBpZCAgICBTaWxseSBhbW91bnRzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnNcbiIKKyN+ICIgICAxMDAwICAgdmVyeXZlcmJvc2UgICAgICAgTG90cyBvZiBkcml2ZWwgYWJvdXQgZWcgdGhlIGRwa2cvaW5mbyAiCisjfiAiZGlyZWN0b3J5XG4iCisjfiAiICAgMjAwMCAgIHN0dXBpZGx5dmVyYm9zZSAgIEluc2FuZSBhbW91bnRzIG9mIGRyaXZlbFxuIgorI34gIlxuIgorI34gIkRlYnVnZ2luZyBvcHRpb25zIGFyZSBiZSBtaXhlZCB1c2luZyBiaXR3aXNlLW9yLlxuIgorI34gIk5vdGUgdGhhdCB0aGUgbWVhbmluZ3MgYW5kIHZhbHVlcyBhcmUgc3ViamVjdCB0byBjaGFuZ2UuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICIlcyBsYWTDrWPDrSBwxZllcMOtbmHEjWUsIC0tZGVidWc9PG9zbWnEjWtvdsSbPiBuZWJvIC1EPG9zbWnEjWtvdsSbPjpcbiIKKyN+ICJcbiIKKyN+ICIgIMSNw61zbG8gICBvZGtheiBkbyB6ZHJvai4gICBwb3Bpc1xuIgorI34gIiAgICAgIDEgICBnZW5lcmFsICAgICAgICAgICBIbGF2bsOtIHXFvml0ZcSNbsOpIGluZm9ybWFjZSBvIHpwcmFjb3bDoXbDoW7DrVxuIgorI34gIiAgICAgIDIgICBzY3JpcHRzICAgICAgICAgICBTcHXFoXTEm27DrSBhIHN0YXYga29uZmlndXJhxI1uw61jaCBza3JpcHTFr1xuIgorI34gIiAgICAgMTAgICBlYWNoZmlsZSAgICAgICAgICBWw71zdHVwIHBybyBrYcW+ZMO9IHpwcmFjb3bDoXZhbsO9IHNvdWJvclxuIgorI34gIiAgICAxMDAgICBlYWNoZmlsZWRldGFpbCAgICBWw61jZSBpbmZvcm1hY8OtIHBybyBrYcW+ZMO9IHpwcmFjb3bDoXZhbsO9IHNvdWJvclxuIgorI34gIiAgICAgMjAgICBjb25mZiAgICAgICAgICAgICBWw71zdHVwIHBybyBrYcW+ZMO9IGtvbmZpZ3VyYcSNbsOtIHNvdWJvclxuIgorI34gIiAgICAyMDAgICBjb25mZmRldGFpbCAgICAgICBWw61jZSBpbmZvcm1hY8OtIHBybyBrYcW+ZMO9IGtvbmZpZ3VyYcSNbsOtIHNvdWJvclxuIgorI34gIiAgICAgNDAgICBkZXBjb24gICAgICAgICAgICBaw6F2aXNsb3N0aSBhIGtvbmZsaWt0eVxuIgorI34gIiAgICA0MDAgICBkZXBjb25kZXRhaWwgICAgICBWw61jZSBvIHrDoXZpc2xvc3RlY2ggYSBrb25mbGlrdGVjaFxuIgorI34gIiAgMTAwMDAgICB0cmlnZ2VycyAgICAgICAgICBBa3RpdmFjZSBhIHpwcmFjb3bDoXbDoW7DrSBzcG91xaF0xJvEjcWvXG4iCisjfiAiICAyMDAwMCAgIHRyaWdnZXJzZGV0YWlsICAgIFbDrWNlIGluZm9ybWFjw60gbyBzcG91xaF0ZcSNw61jaFxuIgorI34gIiAgNDAwMDAgICB0cmlnZ2Vyc3N0dXBpZCAgICDFoMOtbGVuw6kgbW5vxb5zdHbDrSBpbmZvcm1hY8OtIG8gc3BvdcWhdMSbxI3DrWNoXG4iCisjfiAiICAgMTAwMCAgIHZlcnl2ZXJib3NlICAgICAgIFbDrWNlIGluZm9ybWFjw60gbmFwxZkuIG8gYWRyZXPDocWZaSBkcGtnL2luZm9cbiIKKyN+ICIgICAyMDAwICAgc3R1cGlkbHl2ZXJib3NlICAgxaDDrWxlbsOpIG1ub8W+c3R2w60gaW5mb3JtYWPDrSB6cHJhY292w6F2w6Fuw61cbiIKKyN+ICJcbiIKKyN+ICJMYWTDrWPDrSBwxZllcMOtbmHEjWUgbW9ob3UgYsO9dCBtaXhvdsOhbnkgcG91xb5pdMOtbSBiaW7DoXJuw61obyBPUi5cbiIKKyN+ICJQb3puw6Fta2E6IHbDvXpuYW15IGEgaG9kbm90eSBzZSBtb2hvdSDEjWFzdG8gbcSbbml0LlxuIgorCisjfiBtc2dpZCAiIgorI34gIiVzIGZvcmNpbmcgb3B0aW9ucyAtIGNvbnRyb2wgYmVoYXZpb3VyIHdoZW4gcHJvYmxlbXMgZm91bmQ6XG4iCisjfiAiICB3YXJuIGJ1dCBjb250aW51ZTogIC0tZm9yY2UtPHRoaW5nPiw8dGhpbmc+LC4uLlxuIgorI34gIiAgc3RvcCB3aXRoIGVycm9yOiAgICAtLXJlZnVzZS08dGhpbmc+LDx0aGluZz4sLi4uIHwgLS1uby1mb3JjZS0iCisjfiAiPHRoaW5nPiwuLi5cbiIKKyN+ICIgRm9yY2luZyB0aGluZ3M6XG4iCisjfiAiICBhbGwgWyFdICAgICAgICAgICAgICAgIFNldCBhbGwgZm9yY2Ugb3B0aW9uc1xuIgorI34gIiAgZG93bmdyYWRlIFsqXSAgICAgICAgICBSZXBsYWNlIGEgcGFja2FnZSB3aXRoIGEgbG93ZXIgdmVyc2lvblxuIgorI34gIiAgY29uZmlndXJlLWFueSAgICAgICAgICBDb25maWd1cmUgYW55IHBhY2thZ2Ugd2hpY2ggbWF5IGhlbHAgdGhpcyBvbmVcbiIKKyN+ICIgIGhvbGQgICAgICAgICAgICAgICAgICAgUHJvY2VzcyBpbmNpZGVudGFsIHBhY2thZ2VzIGV2ZW4gd2hlbiBvbiBob2xkXG4iCisjfiAiICBiYWQtcGF0aCAgICAgICAgICAgICAgIFBBVEggaXMgbWlzc2luZyBpbXBvcnRhbnQgcHJvZ3JhbXMsIHByb2JsZW1zICIKKyN+ICJsaWtlbHlcbiIKKyN+ICIgIG5vdC1yb290ICAgICAgICAgICAgICAgVHJ5IHRvIChkZSlpbnN0YWxsIHRoaW5ncyBldmVuIHdoZW4gbm90IHJvb3RcbiIKKyN+ICIgIG92ZXJ3cml0ZSAgICAgICAgICAgICAgT3ZlcndyaXRlIGEgZmlsZSBmcm9tIG9uZSBwYWNrYWdlIHdpdGggYW5vdGhlclxuIgorI34gIiAgb3ZlcndyaXRlLWRpdmVydGVkICAgICBPdmVyd3JpdGUgYSBkaXZlcnRlZCBmaWxlIHdpdGggYW4gdW5kaXZlcnRlZCAiCisjfiAidmVyc2lvblxuIgorI34gIiAgYmFkLXZlcmlmeSAgICAgICAgICAgICBJbnN0YWxsIGEgcGFja2FnZSBldmVuIGlmIGl0IGZhaWxzIGF1dGhlbnRpY2l0eSAiCisjfiAiY2hlY2tcbiIKKyN+ICIgIGRlcGVuZHMtdmVyc2lvbiBbIV0gICAgVHVybiBkZXBlbmRlbmN5IHZlcnNpb24gcHJvYmxlbXMgaW50byB3YXJuaW5nc1xuIgorI34gIiAgZGVwZW5kcyBbIV0gICAgICAgICAgICBUdXJuIGFsbCBkZXBlbmRlbmN5IHByb2JsZW1zIGludG8gd2FybmluZ3NcbiIKKyN+ICIgIGNvbmZuZXcgWyFdICAgICAgICAgICAgQWx3YXlzIHVzZSB0aGUgbmV3IGNvbmZpZyBmaWxlcywgZG9uJ3QgcHJvbXB0XG4iCisjfiAiICBjb25mb2xkIFshXSAgICAgICAgICAgIEFsd2F5cyB1c2UgdGhlIG9sZCBjb25maWcgZmlsZXMsIGRvbid0IHByb21wdFxuIgorI34gIiAgY29uZmRlZiBbIV0gICAgICAgICAgICBVc2UgdGhlIGRlZmF1bHQgb3B0aW9uIGZvciBuZXcgY29uZmlnIGZpbGVzIGlmICIKKyN+ICJvbmVcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgaXMgYXZhaWxhYmxlLCBkb24ndCBwcm9tcHQuIElmIG5vIGRlZmF1bHQgY2FuIGJlICIKKyN+ICJmb3VuZCxcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgeW91IHdpbGwgYmUgcHJvbXB0ZWQgdW5sZXNzIG9uZSBvZiB0aGUgY29uZm9sZCAiCisjfiAib3JcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgY29uZm5ldyBvcHRpb25zIGlzIGFsc28gZ2l2ZW5cbiIKKyN+ICIgIGNvbmZtaXNzIFshXSAgICAgICAgICAgQWx3YXlzIGluc3RhbGwgbWlzc2luZyBjb25maWcgZmlsZXNcbiIKKyN+ICIgIGNvbmZhc2sgWyFdICAgICAgICAgICAgT2ZmZXIgdG8gcmVwbGFjZSBjb25maWcgZmlsZXMgd2l0aCBubyBuZXcgIgorI34gInZlcnNpb25zXG4iCisjfiAiICBicmVha3MgWyFdICAgICAgICAgICAgIEluc3RhbGwgZXZlbiBpZiBpdCB3b3VsZCBicmVhayBhbm90aGVyIHBhY2thZ2VcbiIKKyN+ICIgIGNvbmZsaWN0cyBbIV0gICAgICAgICAgQWxsb3cgaW5zdGFsbGF0aW9uIG9mIGNvbmZsaWN0aW5nIHBhY2thZ2VzXG4iCisjfiAiICBhcmNoaXRlY3R1cmUgWyFdICAgICAgIFByb2Nlc3MgZXZlbiBwYWNrYWdlcyB3aXRoIHdyb25nIGFyY2hpdGVjdHVyZVxuIgorI34gIiAgb3ZlcndyaXRlLWRpciBbIV0gICAgICBPdmVyd3JpdGUgb25lIHBhY2thZ2UncyBkaXJlY3Rvcnkgd2l0aCBhbm90aGVyJ3MgIgorI34gImZpbGVcbiIKKyN+ICIgIHVuc2FmZS1pbyBbIV0gICAgICAgICAgRG8gbm90IHBlcmZvcm0gc2FmZSBJL08gb3BlcmF0aW9ucyB3aGVuICIKKyN+ICJ1bnBhY2tpbmdcbiIKKyN+ICIgIHJlbW92ZS1yZWluc3RyZXEgWyFdICAgUmVtb3ZlIHBhY2thZ2VzIHdoaWNoIHJlcXVpcmUgaW5zdGFsbGF0aW9uXG4iCisjfiAiICByZW1vdmUtZXNzZW50aWFsIFshXSAgIFJlbW92ZSBhbiBlc3NlbnRpYWwgcGFja2FnZVxuIgorI34gIlxuIgorI34gIldBUk5JTkcgLSB1c2Ugb2Ygb3B0aW9ucyBtYXJrZWQgWyFdIGNhbiBzZXJpb3VzbHkgZGFtYWdlIHlvdXIgIgorI34gImluc3RhbGxhdGlvbi5cbiIKKyN+ICJGb3JjaW5nIG9wdGlvbnMgbWFya2VkIFsqXSBhcmUgZW5hYmxlZCBieSBkZWZhdWx0LlxuIgorI34gbXNnc3RyICIiCisjfiAiJXMgZG9udWNvdmFjw60gcMWZZXDDrW5hxI1lIC0gb3Zsw6FkYWrDrSBjaG92w6Fuw60gcMWZaSB2em5pa3UgcG90w63FvsOtOlxuIgorI34gIiAgdmFydWplLCBhbGUgcG9rcmHEjXVqZTogLS1mb3JjZS08Y28+LDxjbz4s4oCmXG4iCisjfiAiICB6YXN0YXbDrSBzIGNoeWJvdTogICAgICAtLXJlZnVzZS08Y28+LDxjbz4s4oCmIHwgLS1uby1mb3JjZS08Y28+LOKAplxuIgorI34gIiBEb251Y292YWPDrSBha2NlOlxuIgorI34gIiAgYWxsIFshXSAgICAgICAgICAgICAgICBuYXN0YXbDrSB2xaFlY2hueSBkb251Y292YWPDrSB2b2xieVxuIgorI34gIiAgZG93bmdyYWRlIFsqXSAgICAgICAgICBuYWhyYWTDrSBiYWzDrWsgc3RhcsWhw60gdmVyesOtXG4iCisjfiAiICBjb25maWd1cmUtYW55ICAgICAgICAgIG5ha29uZmlndXJ1amUgdsWhZWNobnkgYmFsw61reSwga3RlcsOpIG1vaG91ICIKKyN+ICJ0b211dG9cbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgYmFsw61rdSBwb21vY2lcbiIKKyN+ICIgIGhvbGQgICAgICAgICAgICAgICAgICAgenByYWN1amUgYmFsw61reSwgaSBrZHnFviBqc291IHBvZHLFvmVueVxuIgorI34gIiAgYmFkLXBhdGggICAgICAgICAgICAgICB2IFBBVEggY2h5YsOtIGTFr2xlxb5pdMOpIHByb2dyYW15LCBjb8W+IHpwxa9zb2J1amVcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgcHJvYmzDqW15XG4iCisjfiAiICBub3Qtcm9vdCAgICAgICAgICAgICAgIHprdXPDrSAob2R8bmEpaW5zdGFsb3ZhdCBiYWzDrWssIGkga2R5xb4gbmVuw60gcm9vdFxuIgorI34gIiAgb3ZlcndyaXRlICAgICAgICAgICAgICBwxZllcMOtxaFlIHNvdWJvcnkgcGF0xZnDrWPDrSBqaW7DqW11IGJhbMOta3VcbiIKKyN+ICIgIG92ZXJ3cml0ZS1kaXZlcnRlZCAgICAgcMWZZXDDrcWhZSBvZGtsb27Em27DqSBzb3Vib3J5IG5vcm3DoWxuw60gdmVyesOtXG4iCisjfiAiICBiYWQtdmVyaWZ5ICAgICAgICAgICAgIG5haW5zdGFsdWplIGJhbMOtaywgaSBrZHnFviBzZWzFvmUga29udHJvbGEgIgorI34gImF1dGVudGljaXR5XG4iCisjfiAiICBkZXBlbmRzLXZlcnNpb24gWyFdICAgIHptxJtuw60gcHJvYmzDqW15IHNlIHrDoXZpc2xvc3RtaSB2ZXJ6w60gbmEgdmFyb3bDoW7DrVxuIgorI34gIiAgZGVwZW5kcyBbIV0gICAgICAgICAgICB6bcSbbsOtIHbFoWVjaG55IHByb2Jsw6lteSBzZSB6w6F2aXNsb3N0bWkgbmEgIgorI34gInZhcm92w6Fuw61cbiIKKyN+ICIgIGNvbmZuZXcgWyFdICAgICAgICAgICAgdsW+ZHkgcG91xb5pamUgbm92w70ga29uZmlndXJhxI1uw60gc291Ym9yLCBiZXogIgorI34gImRvdGF6dVxuIgorI34gIiAgY29uZm9sZCBbIV0gICAgICAgICAgICB2xb5keSBwb3XFvmlqZSBzdGFyw70ga29uZmlndXJhxI1uw60gc291Ym9yLCBiZXogIgorI34gImRvdGF6dVxuIgorI34gIiAgY29uZmRlZiBbIV0gICAgICAgICAgICBwb3XFvmlqZSBpbXBsaWNpdG7DrSB2b2xidSBwcm8gbm92w6kga29uZmlndXJhxI1uw61cbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgc291Ym9yeSwgcG9rdWQgZXhpc3R1amUsIG5lcHTDoSBzZS4gUG9rdWQgxb7DoWRuw6FcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgaW1wbGljaXRuw60gdm9sYmEgbmVleGlzdHVqZSwgYnVkZXRlIGRvdMOhesOhbiwgIgorI34gImFsZVxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICBwb3V6ZSBwb2t1ZCBuZWJ5bHkgemFkw6FueSBwxZllcMOtbmHEjWUgY29uZm9sZCAiCisjfiAibmVib1xuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICBjb25mbmV3XG4iCisjfiAiICBjb25mbWlzcyBbIV0gICAgICAgICAgIHbFvmR5IG5haW5zdGFsdWplIGNoeWLEm2rDrWPDrSBrb25maWd1cmHEjW7DrSBzb3Vib3J5XG4iCisjfiAiICBjb25mYXNrIFshXSAgICAgICAgICAgIG5hYsOtZG5lIG5haHJhemVuw60gaSBrb25maWcuIHNvdWJvcsWvIGJleiBub3bDqSAiCisjfiAidmVyemVcbiIKKyN+ICIgIGJyZWFrcyBbIV0gICAgICAgICAgICAgaW5zdGFsdWplLCBpIGtkecW+IHTDrW0gcG9ydcWhw60gamluw70gYmFsw61rXG4iCisjfiAiICBjb25mbGljdHMgWyFdICAgICAgICAgIHBvdm9sw60gaW5zdGFsYWNpIGtvbGlkdWrDrWPDrWNoIGJhbMOta8WvXG4iCisjfiAiICBhcmNoaXRlY3R1cmUgWyFdICAgICAgIHpwcmFjdWplIGkgYmFsw61rIHMgamlub3UgYXJjaGl0ZWt0dXJvdVxuIgorI34gIiAgb3ZlcndyaXRlLWRpciBbIV0gICAgICBwxZllcMOtxaFlIGFkcmVzw6HFmSBiYWzDrWt1IHNvdWJvcmVtIHogamluw6lobyBiYWzDrWt1XG4iCisjfiAiICB1bnNhZmUtaW8gWyFdICAgICAgICAgIHDFmWkgcm96YmFsb3bDoW7DrSBuZXBvdcW+aWplIGJlenBlxI1uw6kgVi9WIG9wZXJhY2VcbiIKKyN+ICIgIHJlbW92ZS1yZWluc3RyZXEgWyFdICAgb2RzdHJhbsOtIGJhbMOtaywga3RlcsO9IHZ5xb5hZHVqZSBwxZllaW5zdGFsb3bDoW7DrVxuIgorI34gIiAgcmVtb3ZlLWVzc2VudGlhbCBbIV0gICBvZHN0cmFuw60gbmV6Ynl0bsO9IGJhbMOta1xuIgorI34gIlxuIgorI34gIlZBUk9Ww4FOw40gLSBwb3XFvml0w60gb3puYcSNZW7DvWNoIFshXSBwxZllcMOtbmHEjcWvIG3Fr8W+ZSB2w6HFvm7EmyBwb8Wha29kaXQgIgorI34gImluc3RhbGFjaS5cbiIKKyN+ICJJbXBsaWNpdG7EmyB6YXBudXTDqSBkb251Y292YWPDrSB2b2xieSBqc291IG96bmHEjWVueSBbKl0uXG4iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBkcGtnLXNwbGl0IHRvIHNlZSBpZiBpdCdzIHBhcnQgb2YgYSBtdWx0aXBhcnRlciIKKyN+IG1zZ3N0ciAiY2h5YmEgcMWZaSBzcHXFoXTEm27DrSBkcGtnLXNwbGl0IHBybyBrb250cm9sdSByb3pkxJtsZW7DrSBuYSDEjcOhc3RpIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWNsIGRlYnNpZy12ZXJpZnkiCisjfiBtc2dzdHIgImNoeWJhIHDFmWkgc3B1xaF0xJtuw60gZGVic2lnLXZlcmlmeSIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIGRwa2ctZGViIHRvIGV4dHJhY3QgY29udHJvbCBpbmZvcm1hdGlvbiIKKyN+IG1zZ3N0ciAiY2h5YmEgcMWZaSBzcG91xaF0xJtuw60gZHBrZy1kZWIgayB6w61za8OhbsOtIGluZm9ybWFjw60geiBjb250cm9sIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGV4ZWMgZHBrZy1kZWIgdG8gZ2V0IGZpbGVzeXN0ZW0gYXJjaGl2ZSIKKyN+IG1zZ3N0ciAibmVsemUgc3B1c3RpdCBkcGtnLWRlYiBwcm8gesOtc2vDoW7DrSBvYnNhaHUgYmFsw61rdSIKKworI34gbXNnaWQgInVuYWJsZSB0byBkZWxldGUgZGlzYXBwZWFyaW5nIGNvbnRyb2wgaW5mbyBmaWxlIGAlLjI1MHMnIgorI34gbXNnc3RyICJuZWx6ZSBzbWF6YXQgbWl6w61jw60ga29udHJvbG7DrSBpbmZvIHNvdWJvciDigJ4lLjI1MHPigJwiCisKKyN+IG1zZ2lkICJkcGtnOiAlcyBub3QgZm91bmQuXG4iCisjfiBtc2dzdHIgImRwa2c6ICVzIG5lbmFsZXplbi5cbiIKKworI34gbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byAuLi4vREVCSUFOIgorI34gbXNnc3RyICJuZWx6ZSB6bcSbbml0IGFkcmVzw6HFmSBuYSDigKYvREVCSUFOIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgdGFyIC1jZiIKKyN+IG1zZ3N0ciAibmVsemUgc3B1c3RpdCB0YXIgLWNmIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIG1ha2UgdG1wZmlsZSAoY29udHJvbCkiCisjfiBtc2dzdHIgInNlbGhhbG8gdnl0dm/FmWVuw60gZG/EjWFzbsOpaG8gc291Ym9ydSAoY29udHJvbCkiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gdW5saW5rIHRtcGZpbGUgKGNvbnRyb2wpLCAlcyIKKyN+IG1zZ3N0ciAic2VsaGFsbyBzbWF6w6Fuw60gZG/EjWFzbsOpaG8gc291Ym9ydSAoY29udHJvbCksICVzIgorCisjfiBtc2dpZCAiY29udHJvbCIKKyN+IG1zZ3N0ciAiY29udHJvbCIKKworI34gbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdG1wZmlsZSAoY29udHJvbCkiCisjfiBtc2dzdHIgInNlbGhhbG8gcMWZZXN1bnV0w60gdiBkb8SNYXNuw6ltIHNvdWJvcnUgKGNvbnRyb2wpIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGZzdGF0IHRtcGZpbGUgKGNvbnRyb2wpIgorI34gbXNnc3RyICJzZWxoYWwgZnN0YXQgbmEgZG/EjWFzbsOpbSBzb3Vib3J1IChjb250cm9sKSIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIGZpbmQiCisjfiBtc2dzdHIgIm5lbHplIHNwdXN0aXQgZmluZCIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIHNoIC1jIG12IGZvby8qICZjIgorI34gbXNnc3RyICJuZWx6ZSBzcHVzdGl0IHNoIC1jIG12IGZvby8qICZjIgorCisjfiBtc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gJS4yNTBzIGxlbmd0aCBjb250YWlucyBudWxscyIKKyN+IG1zZ3N0ciAic291Ym9yIOKAniUuMjUwc+KAnCBqZSBwb8Wha296ZW4gLSBkw6lsa2EgJS4yNTBzIG9ic2FodWplIG51bHkiCisKKyN+IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBuZWdhdGl2ZSBtZW1iZXIgbGVuZ3RoICV6aSIKKyN+IG1zZ3N0ciAic291Ym9yIOKAniUuMjUwc+KAnCBqZSBwb8Wha296ZW4gLSB6w6Fwb3Juw6EgZMOpbGthIMSNw6FzdGkgJXppIgorCisjfiBtc2dpZCAiZmFpbGVkIGdldHRpbmcgdGhlIGN1cnJlbnQgZmlsZSBwb3NpdGlvbiIKKyN+IG1zZ3N0ciAibmVsemUgesOtc2thdCBha3R1w6FsbsOtIHBvemljaSB2IHNvdWJvcnUiCisKKyN+IG1zZ2lkICJmYWlsZWQgc2V0dGluZyB0aGUgY3VycmVudCBmaWxlIHBvc2l0aW9uIgorI34gbXNnc3RyICJuZWx6ZSBuYXN0YXZpdCBha3R1w6FsbsOtIHBvemljaSB2IHNvdWJvcnUiCisKKyN+IG1zZ2lkICJ2ZXJzaW9uIG51bWJlciIKKyN+IG1zZ3N0ciAidmVyemUiCisKKyN+IG1zZ2lkICJtZW1iZXIgbGVuZ3RoIgorI34gbXNnc3RyICJkw6lsa2EgxI3DoXN0aSIKKworI34gbXNnaWQgImhlYWRlciBpbmZvIG1lbWJlciIKKyN+IG1zZ3N0ciAixI3DoXN0IGhsYXZpxI1reSIKKworI34gbXNnaWQgInNraXBwZWQgY29udHJvbCBhcmVhIGZyb20gJXMiCisjfiBtc2dzdHIgInDFmWVza2/EjWVuYSBrb250cm9sbsOtIG9ibGFzdCBvZCAlcyIKKworI34gbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgdGVtcG9yYXJ5IGRpcmVjdG9yeSIKKyN+IG1zZ3N0ciAibmVsemUgdnl0dm/FmWl0IGRvxI1hc27DvSBhZHJlc8OhxZkiCisKKyN+IG1zZ2lkICJpbmZvX3NwZXciCisjfiBtc2dzdHIgImluZm9fc3BldyIKKworI34gbXNnaWQgImluZm8gbGVuZ3RoIgorI34gbXNnc3RyICJkw6lsa2EgaW5mYSIKKworI34gbXNnaWQgInRvdGFsIGxlbmd0aCIKKyN+IG1zZ3N0ciAiY2Vsa292w6EgZMOpbGthIgorCisjfiBtc2dpZCAiZGF0YSBsZW5ndGgiCisjfiBtc2dzdHIgImTDqWxrYSBkYXQiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBkcGtnLWRlYiB0byBleHRyYWN0IGZpZWxkIHZhbHVlIgorI34gbXNnc3RyICJjaHliYSBwxZlpIHNwb3XFoXTEm27DrSBkcGtnLWRlYiBrIHrDrXNrw6Fuw60gaG9kbm90eSBwb2xlIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHN0YXQgJXM6ICVzIgorI34gbXNnc3RyICJuZWx6ZSB6amlzdGl0IHN0YXYgJXM6ICVzIgorCisjfiBtc2dpZCAic2xhdmUgbmFtZSAlcyBkdXBsaWNhdGVkIgorI34gbXNnc3RyICJ6w6F2aXNsw6kgam3DqW5vICVzIGplIGR1cGxpY2l0bsOtIgorCisjfiBtc2dpZCAic2xhdmUgbGluayAlcyBkdXBsaWNhdGVkIgorI34gbXNnc3RyICJ6w6F2aXNsw70gb2RrYXogJXMgamUgZHVwbGljaXRuw60iCisKKyN+IG1zZ2lkICIlZCByZXF1ZXN0ZWQgY29udHJvbCBjb21wb25lbnRzIGFyZSBtaXNzaW5nIgorI34gbXNnc3RyICJDaHliw60gdnnFvmFkb3ZhbsOpIGtvbnRyb2xuw60gxI3DoXN0aSAoY2Vsa2VtICVkKSIKKworI34gbXNnaWQgImNhdCAoZGF0YSkiCisjfiBtc2dzdHIgImNhdCAoZGF0YSkiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gb3BlbiBwaXBlIGRlc2NyaXB0b3IgYDEnIGluIHBhc3RlIgorI34gbXNnc3RyICJuZWx6ZSBvdGV2xZnDrXQgcG9waXNvdmHEjSDigJ4x4oCcIHJvdXJ5IgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHdyaXRlIHRvIGd6aXAgLWRjIgorI34gbXNnc3RyICJuZWx6ZSB6YXBpc292YXQgZG8gZ3ppcCAtZGMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gY2xvc2UgZ3ppcCAtZGMiCisjfiBtc2dzdHIgIm5lbHplIHphdsWZw610IGd6aXAgLWRjIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHN5c2NhbGwgbHNlZWsgdG8gZmlsZXMgYXJjaGl2ZSBwb3J0aW9uIgorI34gbXNnc3RyICJzZWxoYWwgbHNlZWsgayDEjcOhc3RpIGFyY2hpdnUgc2Ugc291Ym9yeSIKKworI34gbXNnaWQgInVuYWJsZSB0byBleGVjIG1rc3BsaXQiCisjfiBtc2dzdHIgIm5lbHplIHNwdXN0aXQgbWtzcGxpdCIKKworI34gbXNnaWQgIiIKKyN+ICJcbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisjfiAiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi4iCisjfiBtc2dzdHIgIiIKKyN+ICJcbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisjfiAiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi4iCisKKyN+IG1zZ2lkICJ0d28gY29tbWFuZHMgc3BlY2lmaWVkOiAlcyBhbmQgLS0lcyIKKyN+IG1zZ3N0ciAiemFkw6FueSBkdmEgcMWZw61rYXp5OiAlcyBhIC0tJXMiCisKKyN+IG1zZ2lkICItLSVzIG5lZWRzIGEgZGl2ZXJ0LXRvIGFyZ3VtZW50IgorI34gbXNnc3RyICItLSVzIHZ5xb5hZHVqZSBhcmd1bWVudCBrYW0tb2RrbG9uaXQiCisKKyN+IG1zZ2lkICItLSVzIG5lZWRzIGEgPHBhY2thZ2U+IGFyZ3VtZW50IgorI34gbXNnc3RyICItLSVzIHZ5xb5hZHVqZSBqYWtvIGFyZ3VtZW50IDxiYWzDrWs+IgorCisjfiBtc2dpZCAiY2Fubm90IG9wZW4gZGl2ZXJzaW9uczogJXMiCisjfiBtc2dzdHIgIm5lbHplIG90ZXbFmcOtdCBzb3Vib3IgcyBvZHN1bnk6ICVzIgorCisjfiBtc2dpZCAibWlzc2luZyBhbHRuYW1lIgorI34gbXNnc3RyICJjaHliw60gYWx0ZXJuYXRpdm7DrSBqbcOpbm8iCisKKyN+IG1zZ2lkICJtaXNzaW5nIHBhY2thZ2UiCisjfiBtc2dzdHIgImNoeWLDrSBiYWzDrWsiCisKKyN+IG1zZ2lkICJpbnRlcm5hbCBlcnJvciAtIGJhZCBtb2RlIGAlcyciCisjfiBtc2dzdHIgInZuaXTFmW7DrSBjaHliYSAtIGNoeWJuw70gcmXFvmltIOKAniVz4oCcIgorCisjfiBtc2dpZCAiY2Fubm90IHN0YXQgb2xkIG5hbWUgYCVzJzogJXMiCisjfiBtc2dzdHIgIm5lbHplIHZvbGF0IHN0YXQgbmEgc3RhcsOpIGptw6lubyDigJ4lc+KAnDogJXMiCisKKyN+IG1zZ2lkICJyZW5hbWU6IHJlbmFtZSBgJXMnIHRvIGAlcyc6ICVzIgorI34gbXNnc3RyICJwxZllam1lbm92w6Fuw606IHDFmWVqbWVub3bDoW7DrSDigJ4lc+KAnCBuYSDigJ4lc+KAnDogJXMiCisKKyN+IG1zZ2lkICJjcmVhdGUgZGl2ZXJzaW9ucy1uZXc6ICVzIgorI34gbXNnc3RyICJ2eXR2w6HFmWVuw60gc291Ym9ydSBkaXZlcnNpb25zLW5ldzogJXMiCisKKyN+IG1zZ2lkICJ3cml0ZSBkaXZlcnNpb25zLW5ldzogJXMiCisjfiBtc2dzdHIgInrDoXBpcyBzb3Vib3J1IGRpdmVyc2lvbnMtbmV3OiAlcyIKKworI34gbXNnaWQgImNsb3NlIGRpdmVyc2lvbnMtbmV3OiAlcyIKKyN+IG1zZ3N0ciAiemF2w61yw6Fuw60gc291Ym9ydSBkaXZlcnNpb25zLW5ldzogJXMiCisKKyN+IG1zZ2lkICJjcmVhdGUgbmV3IGRpdmVyc2lvbnMtb2xkOiAlcyIKKyN+IG1zZ3N0ciAidnl0dm/FmWVuw60gbm92w6lobyBzb3Vib3J1IGRpdmVyc2lvbnMtb2xkOiAlcyIKKworI34gbXNnaWQgImluc3RhbGwgbmV3IGRpdmVyc2lvbnM6ICVzIgorI34gbXNnc3RyICJpbnN0YWxhY2Ugbm92w6lobyBzb3Vib3J1IGRpdmVyc2lvbnM6ICVzIgorCisjfiBtc2dpZCAiaW50ZXJuYWwgZXJyb3I6ICVzIGNvcnJ1cHQ6ICVzIgorI34gbXNnc3RyICJ2bml0xZluw60gY2h5YmE6ICVzIHBvcnXFoWVubzogJXMiCisKKyN+IG1zZ2lkICJkcGtnLWRlYiAtIGVycm9yOiAlcyAoYCVzJykgZG9lc24ndCBjb250YWluIGFueSBkaWdpdHNcbiIKKyN+IG1zZ3N0ciAiZHBrZy1kZWIgLSBjaHliYTogJXMgKOKAniVz4oCcKSBuZW9ic2FodWplIMSNw61zbGFcbiIKKworI34gbXNnaWQgIih1cHN0cmVhbSkgdmVyc2lvbiIKKyN+IG1zZ3N0ciAiKHVwc3RyZWFtKSB2ZXJ6ZSIKKworI34gbXNnaWQgIkRlYmlhbiByZXZpc2lvbiIKKyN+IG1zZ3N0ciAiRGViaWFuIHJldml6ZSIKKworI34gbXNnaWQgIiVkIGVycm9ycyBpbiBjb250cm9sIGZpbGUiCisjfiBtc2dzdHIgIiVkIGNoeWIgdiBzb3Vib3J1IGNvbnRyb2wiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gd3JpdGUgJXM6ICVzIgorI34gbXNnc3RyICJuZWx6ZSB6YXBzYXQgJXM6ICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIGluIGJ1ZmZlcl93cml0ZShmZCkgKCVpLCByZXQ9JWxpKTogJXMiCisjfiBtc2dzdHIgImNoeWJhIHYgYnVmZmVyX3dyaXRlKGZkKSAoJWksIHJldD0lbGkpOiAlcyIKKworI34gbXNnaWQgImVvZiBpbiBidWZmZXJfd3JpdGUoc3RyZWFtKTogJXMiCisjfiBtc2dzdHIgImtvbmVjIHNvdWJvcnUgdiBidWZmZXJfd3JpdGUoc3RyZWFtKTogJXMiCisKKyN+IG1zZ2lkICJlcnJvciBpbiBidWZmZXJfd3JpdGUoc3RyZWFtKTogJXMiCisjfiBtc2dzdHIgImNoeWJhIHYgYnVmZmVyX3dyaXRlKHN0cmVhbSk6ICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIGluIGJ1ZmZlcl9yZWFkKGZkKTogJXMiCisjfiBtc2dzdHIgImNoeWJhIHYgYnVmZmVyX3JlYWQoZmQpOiAlcyIKKworI34gbXNnaWQgImVycm9yIGluIGJ1ZmZlcl9yZWFkKHN0cmVhbSk6ICVzIgorI34gbXNnc3RyICJjaHliYSB2IGJ1ZmZlcl9yZWFkKHN0cmVhbSk6ICVzIgorCisjfiBtc2dpZCAiJXMgcmV0dXJuZWQgZXJyb3IgZXhpdCBzdGF0dXMgJWQiCisjfiBtc2dzdHIgIiVzIHZyw6F0aWwgY2h5Ym92w70gc3RhdHVzICVkIgorCisjfiBtc2dpZCAiJXMga2lsbGVkIGJ5IHNpZ25hbCAoJXMpJXMiCisjfiBtc2dzdHIgIiVzIGJ5bCB6YWJpdCBzaWduw6FsZW0gKCVzKSVzIgorCisjfiBtc2dpZCAiIgorI34gIlxuIgorI34gIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSB2ZXJzaW9uIDIgb3JcbiIKKyN+ICJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIlxuIgorI34gIlRvdG8gamUgc3ZvYm9kbsO9IHNvZnR3YXJlOyBwb2Ryb2Jub3N0aSBvIHBvZG3DrW5rw6FjaCBrb3DDrXJvdsOhbsOtIG5hbGV6bmV0ZVxuIgorI34gInYgT2JlY27DqSB2ZcWZZWpuw6kgbGljZW5jaSBHTlUgKEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbmNlKSB2ZXJ6ZSAyIG5lYm9cbiIKKyN+ICJwb3pkxJtqxaHDrS4gVG90byBwcm9ncmFtb3bDqSB2eWJhdmVuw60gamUgYWJzb2x1dG7EmyBiZXogesOhcnVreS5cbiIKKworI34gbXNnaWQgIiVzOiBmYWlsZWQgdG8gZXhlYyAnJXMgJXMnIgorI34gbXNnc3RyICIlczogbmVsemUgc3B1c3RpdCDigJ4lcyAlc+KAnCIKKworI34gbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIGVycm9yOiByZWFkOiBgJXMnIgorI34gbXNnc3RyICIlczogdm5pdMWZbsOtIGNoeWJhIGd6aXB1OiDEjXRlbsOtOiDigJ4lc+KAnCIKKworI34gbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIGVycm9yOiB3cml0ZTogYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IHZuaXTFmW7DrSBjaHliYSBnemlwdTogesOhcGlzOiDigJ4lc+KAnCIKKworI34gbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIGVycm9yOiByZWFkKCVpKSAhPSB3cml0ZSglaSkiCisjfiBtc2dzdHIgIiVzOiB2bml0xZluw60gY2h5YmEgZ3ppcHU6IHJlYWQoJWkpICE9IHdyaXRlKCVpKSIKKworI34gbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiBlcnJvcjogcmVhZDogYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IHZuaXTFmW7DrSBjaHliYSBiemlwdTI6IMSNdGVuw606IOKAniVz4oCcIgorCisjfiBtc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIGVycm9yOiB3cml0ZTogYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IHZuaXTFmW7DrSBjaHliYSBiemlwdTI6IHrDoXBpczog4oCeJXPigJwiCisKKyN+IG1zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgZXJyb3I6IHJlYWQoJWkpICE9IHdyaXRlKCVpKSIKKyN+IG1zZ3N0ciAiJXM6IHZuaXTFmW7DrSBjaHliYSBiemlwdTI6IHJlYWQoJWkpICE9IHdyaXRlKCVpKSIKKworI34gbXNnaWQgIkRvbid0IGZvcmdldCB0byBmb3JlZ3JvdW5kIChgZmcnKSB0aGlzIHByb2Nlc3Mgd2hlbiB5b3UncmUgZG9uZSAhXG4iCisjfiBtc2dzdHIgIk5lemFwb21lxYh0ZSBwxZllcG5vdXQgdGVudG8gcHJvY2VzIG5hIHBvcMWZZWTDrSAoYGZnJykgYcW+IHNrb27EjcOtdGUhXG4iCisKKyN+IG1zZ2lkICIiCisjfiAiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvclxuIgorI34gImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LlxuIgorI34gIlNlZSAlcyAtLWxpY2Vuc2UgZm9yIGNvcHlyaWdodCBhbmQgbGljZW5zZSBkZXRhaWxzLlxuIgorI34gbXNnc3RyICIiCisjfiAiVG90byBqZSBzdm9ib2Ruw70gc29mdHdhcmU7IHBvZHJvYm5vc3RpIG8gcG9kbcOtbmvDoWNoIGtvcMOtcm92w6Fuw60gbmFsZXpuZXRlXG4iCisjfiAidiBPYmVjbsOpIHZlxZllam7DqSBsaWNlbmNpIEdOVSAoR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UpIHZlcnplIDIgbmVib1xuIgorI34gInBvemTEm2rFocOtLiBUb3RvIHByb2dyYW1vdsOpIHZ5YmF2ZW7DrSBqZSBhYnNvbHV0bsSbIGJleiB6w6FydWt5LlxuIgorI34gIlbDrWNlIGluZm9ybWFjw60gesOtc2vDoXRlIHBvdcW+aXTDrW0gJXMgLS1saWNlbnNlLlxuIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGdldCB1bmlxdWUgZmlsZW5hbWUgZm9yIGNvbnRyb2wgaW5mbyIKKyN+IG1zZ3N0ciAibmVsemUgesOtc2thdCBqZWRpbmXEjW7DqSBqbcOpbm8gcHJvIHNvdWJvciBjb250cm9sIgorCisjfiBtc2dpZCAiRGViaWFuIGAlcycgcGFja2FnZSBtYW5hZ2VtZW50IHByb2dyYW0gcXVlcnkgdG9vbFxuIgorI34gbXNnc3RyICJEZWJpYW4g4oCeJXPigJwgLSBwcm9ncmFtIHBybyBkb3Rhem92w6Fuw60gc2UgbmEgYmFsw61reVxuIgorCisjfiBtc2dpZCAiIgorI34gIlVzZSAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgcXVlcnlpbmcgcGFja2FnZXM7XG4iCisjfiAiVXNlIC0tbGljZW5zZSBmb3IgY29weXJpZ2h0IGxpY2Vuc2UgYW5kIGxhY2sgb2Ygd2FycmFudHkgKEdOVSBHUEwpLiIKKyN+IG1zZ3N0ciAiIgorI34gIlBybyBuw6Fwb3bEm2R1IG8gZG90YXpvdsOhbsOtIGJhbMOta8WvIHBvdcW+aWp0ZSAtLWhlbHA7XG4iCisjfiAiUHJvIHpvYnJhemVuw60gbGljZW7EjW7DrWhvIHVqZWRuw6Fuw60gcG91xb5panRlIC0tbGljZW5zZS4iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gY2hvd24gJXM6ICVzIgorI34gbXNnc3RyICJzZWxoYWxhIHptxJtuYSB2bGFzdG7DrWthICVzOiAlcyIKKworI34gbXNnaWQgImZhaWxlZCB0byBjaG1vZCAlczogJXMiCisjfiBtc2dzdHIgInNlbGhhbGEgem3Em25hIG9wcsOhdm7Em27DrSAlczogJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZm9yayBmb3IgY2xlYW51cCIKKyN+IG1zZ3N0ciAicm96ZHZvamVuw60gcHJvIMO6a2xpZCBzZWxoYWxvIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHdhaXQgZm9yIHJtIGNsZWFudXAiCisjfiBtc2dzdHIgIsSNZWvDoW7DrSBuYSDDumtsaWQgcHJvZ3JhbWVtIHJtIHNlbGhhbG8iCisKKyN+IG1zZ2lkICJybSBjbGVhbnVwIGZhaWxlZCwgY29kZSAlZFxuIgorI34gbXNnc3RyICLDumtsaWQgcHJvZ3JhbWVtIHJtIHNlbGhhbCwga8OzZCAlZFxuIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgcm0gLXJmIgorI34gbXNnc3RyICJjaHliYSBwxZlpIHNwdcWhdMSbbsOtIHJtIC1yZiIKKworI34gbXNnaWQgImZhaWxlZCB0byByZWFkIGBjb250cm9sJyAoaW4gYCUuMjU1cycpIgorI34gbXNnc3RyICJzZWxoYWxvIMSNdGVuw60g4oCeY29udHJvbOKAnCAodiDigJ4lLjI1NXPigJwpIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHNlZWsgYmFjayIKKyN+IG1zZ3N0ciAibmVsemUgc2UgcMWZZXN1bm91dCB6cMSbdCIKKworI34gbXNnaWQgInVua25vd24gZGF0YSB0eXBlIGAlaScgaW4gYnVmZmVyX3dyaXRlXG4iCisjfiBtc2dzdHIgIm5lem7DoW3DvSBkYXRvdsO9IHR5cCDigJ4laeKAnCB2IGJ1ZmZlcl93cml0ZVxuIgorCisjfiBtc2dpZCAidW5rbm93biBkYXRhIHR5cGUgYCVpJyBpbiBidWZmZXJfcmVhZFxuIgorI34gbXNnc3RyICJuZXpuw6Ftw70gZGF0b3bDvSB0eXAg4oCeJWnigJwgdiBidWZmZXJfcmVhZFxuIgorCisjfiBtc2dpZCAid2FpdCBmb3Igc2hlbGwgZmFpbGVkIgorI34gbXNnc3RyICLEjWVrw6Fuw60gbmEgc2hlbGwgbmXDunNwxJvFoW7DqSIKKworI34gbXNnaWQgInJlYWQgZXJyb3IgaW4gZGl2ZXJzaW9ucyBbaV0iCisjfiBtc2dzdHIgImNoeWJhIHDFmWkgxI10ZW7DrSBkaXZlcnNpb25zIFtpXSIKKworI34gbXNnaWQgInVubGluayIKKyN+IG1zZ3N0ciAidW5saW5rIgorCisjfiBtc2dpZCAiY2htb2QiCisjfiBtc2dzdHIgImNobW9kIgorCisjfiBtc2dpZCAiZGVsZXRlIgorI34gbXNnc3RyICJzbWF6YXQiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gJXMgJyUuMjU1cyciCisjfiBtc2dzdHIgInNlbGhhbG8gdm9sw6Fuw60gJXMg4oCeJS4yNTVz4oCcIgorCisjfiBtc2dpZCAid2FpdCBmb3IgZHBrZy1zcGxpdCBmYWlsZWQiCisjfiBtc2dzdHIgIsSNZWvDoW7DrSBuYSBkcGtnLXNwbGl0IHNlbGhhbG8iCisKKyN+IG1zZ2lkICJjYW5ub3QgcmVtb3ZlIGZpbGUgYCUuMjUwcyciCisjfiBtc2dzdHIgIm5lbHplIG9kc3RyYW5pdCBzb3Vib3Ig4oCeJS4yNTBz4oCcIgorCisjfiBtc2dpZCAiIgorI34gIlxuIgorI34gIkNvcHlyaWdodCAoQykgMjAwMCBXaWNoZXJ0IEFra2VybWFuLiIKKyN+IG1zZ3N0ciAiIgorI34gIlxuIgorI34gIkNvcHlyaWdodCAoQykgMjAwMCBXaWNoZXJ0IEFra2VybWFuLiIKKworI34gbXNnaWQgIm5vIG1vZGUgc3BlY2lmaWVkIgorI34gbXNnc3RyICJuZWJ5bCB2eWJyw6FuIMW+w6FkbsO9IHJlxb5pbSIKKworI34gbXNnaWQgImlsbGVnYWwgdXNlciAlcyIKKyN+IG1zZ3N0ciAiY2h5Ym7DvSB1xb5pdmF0ZWwgJXMiCisKKyN+IG1zZ2lkICJub24tZXhpc3RpbmcgdXNlciAlcyIKKyN+IG1zZ3N0ciAibmVleGlzdHVqw61jw60gdcW+aXZhdGVsICVzIgorCisjfiBtc2dpZCAiaWxsZWdhbCBncm91cCAlcyIKKyN+IG1zZ3N0ciAiY2h5Ym7DoSBza3VwaW5hICVzIgorCisjfiBtc2dpZCAibm9uLWV4aXN0aW5nIGdyb3VwICVzIgorI34gbXNnc3RyICJuZWV4aXN0dWrDrWPDrSBza3VwaW5hICVzIgorCisjfiBtc2dpZCAiaWxsZWdhbCBtb2RlICVzIgorI34gbXNnc3RyICJjaHlibsO9IHJlxb5pbSAlcyIKKworI34gbXNnaWQgImFib3J0aW5nIgorI34gbXNnc3RyICJwxZllcnXFoXVqaSIKKworI34gbXNnaWQgImNhbm5vdCBvcGVuIHN0YXRvdmVycmlkZTogJXMiCisjfiBtc2dzdHIgIm5lbHplIG90ZXbFmcOtdCBzb3Vib3Igc3RhdG92ZXJyaWRlOiAlcyIKKworI34gbXNnaWQgIk11bHRpcGxlIG92ZXJyaWRlcyBmb3IgXCIlc1wiLCBhYm9ydGluZyIKKyN+IG1zZ3N0ciAiVsOtY2VybyBwxZllYml0w60gcHJvIOKAniVz4oCcLCBwxZllcnXFoXVqaSIKKworI34gbXNnaWQgImZhaWxlZCB3cml0ZSBkdXJpbmcgaGFzaHJlcG9ydCIKKyN+IG1zZ3N0ciAiY2h5YmEgesOhcGlzdSBwxZlpIGhhc2hyZXBvcnQiCisKKyN+IG1zZ2lkICJjb25maWd1cmF0aW9uIGVycm9yOiB1bmtub3duIG9wdGlvbiAlcyIKKyN+IG1zZ3N0ciAiY2h5YmEga29uZmlndXJhY2U6IG5lem7DoW3DoSB2b2xiYSAlcyIKKworI34gbXNnaWQgImNvbmZpZ3VyYXRpb24gZXJyb3I6ICVzIGRvZXMgbm90IHRha2UgYSB2YWx1ZSIKKyN+IG1zZ3N0ciAiY2h5YmEga29uZmlndXJhY2U6ICVzIG5lbcOhIMW+w6FkbsO9IHBhcmFtZXRyIgorCisjfiBtc2dpZCAiZHBrZzogdmVyc2lvbiAnJXMnIGhhcyBiYWQgc3ludGF4OiAlc1xuIgorI34gbXNnc3RyICJkcGtnOiB2ZXJ6ZSDigJ4lc+KAnCBtw6EgY2h5Ym5vdSBzeW50YXhpOiAlc1xuIgorCisjfiBtc2dpZCAidW5leGVjcHRlZCBlbmQgb2YgbGluZSBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKKyN+IG1zZ3N0ciAibmVvxI1la8OhdmFuw70ga29uZWMgxZnDoWRrdSB2IHNvdWJvcnUgc3RhdG92ZXJyaWRlIgorCisjfiBtc2dpZCAiLS1jaGVjay1zdXBwb3J0ZWQgdGFrZXMgbm8gYXJndW1lbnRzIgorI34gbXNnc3RyICItLWNoZWNrLXN1cHBvcnRlZCBtdXPDrSBiw710IHphZMOhbiBiZXogYXJndW1lbnTFryIKKworI34gbXNnaWQgIi0tZm9yZ2V0LW9sZC11bmF2YWlsIHRha2VzIG5vIGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiLS1mb3JnZXQtb2xkLXVuYXZhaWwgbXVzw60gYsO9dCB6YWTDoW4gYmV6IGFyZ3VtZW50dSIKKworI34gbXNnaWQgIiIKKyN+ICJcbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDE5OTQsMTk5NSBJYW4gSmFja3Nvbi4iCisjfiBtc2dzdHIgIiIKKyN+ICJcbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDE5OTQsMTk5NSBJYW4gSmFja3Nvbi4iCisKKyN+IG1zZ2lkICIiCisjfiAiVXNhZ2U6ICVzIFs8b3B0aW9ucz4gLi4uXSBbLS1dIDxmaWxlbmFtZT5cbiIKKyN+ICJcbiIKKyN+ICJPcHRpb25zOlxuIgorI34gIiAgLS1zZWN0aW9uIDxyZWdleHA+IDx0aXRsZT5cbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICBwdXQgdGhlIG5ldyBlbnRyeSBpbiB0aGUgPHJlZ2V4PiBtYXRjaGVkICIKKyN+ICJzZWN0aW9uXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgb3IgY3JlYXRlIGEgbmV3IG9uZSB3aXRoIDx0aXRsZT4gaWYgbm9uLSIKKyN+ICJleGlzdGVudC5cbiIKKyN+ICIgIC0tbWVudWVudHJ5PTx0ZXh0PiAgICAgICBzZXQgdGhlIG1lbnUgZW50cnkuXG4iCisjfiAiICAtLWRlc2NyaXB0aW9uPTx0ZXh0PiAgICAgc2V0IHRoZSBkZXNjcmlwdGlvbiB0byBiZSB1c2VkIGluIHRoZSBtZW51ICIKKyN+ICJlbnRyeS5cbiIKKyN+ICIgIC0taW5mby1maWxlPTxwYXRoPiAgICAgICBzcGVjaWZ5IGluZm8gZmlsZSB0byBpbnN0YWxsIGluIHRoZSAiCisjfiAiZGlyZWN0b3J5LlxuIgorI34gIiAgLS1kaXItZmlsZT08cGF0aD4gICAgICAgIHNwZWNpZnkgZmlsZSBuYW1lIG9mIGluZm8gZGlyZWN0b3J5IGZpbGUuXG4iCisjfiAiICAtLWluZm9kaXI9PGRpcmVjdG9yeT4gICAgc2FtZSBhcyAnLS1kaXItZmlsZT08ZGlyZWN0b3J5Pi9kaXInLlxuIgorI34gIiAgLS1pbmZvLWRpcj08ZGlyZWN0b3J5PiAgIGxpa2V3aXNlLlxuIgorI34gIiAgLS1rZWVwLW9sZCAgICAgICAgICAgICAgIGRvIG5vdCByZXBsYWNlIGVudHJpZXMgbm9yIHJlbW92ZSBlbXB0eSBvbmVzLlxuIgorI34gIiAgLS1yZW1vdmUgICAgICAgICAgICAgICAgIHJlbW92ZSB0aGUgZW50cnkgc3BlY2lmaWVkIGJ5IDxmaWxlbmFtZT4gIgorI34gImJhc2VuYW1lLlxuIgorI34gIiAgLS1yZW1vdmUtZXhhY3RseSAgICAgICAgIHJlbW92ZSB0aGUgZXhhY3QgPGZpbGVuYW1lPiBlbnRyeS5cbiIKKyN+ICIgIC0tdGVzdCAgICAgICAgICAgICAgICAgICBlbmFibGVzIHRlc3QgbW9kZSAobm8gYWN0aW9ucyB0YWtlbikuXG4iCisjfiAiICAtLWRlYnVnICAgICAgICAgICAgICAgICAgZW5hYmxlcyBkZWJ1ZyBtb2RlIChzaG93IG1vcmUgaW5mb3JtYXRpb24pLlxuIgorI34gIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIGRvIG5vdCBzaG93IG91dHB1dCBtZXNzYWdlcy5cbiIKKyN+ICIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorI34gIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJQb3XFvml0w606ICVzIFs8dm9sYnk+IOKApl0gWy0tXSA8c291Ym9yPlxuIgorI34gIlxuIgorI34gIlZvbGJ5OlxuIgorI34gIiAgLS1zZWN0aW9uIDxyZWcudsO9cmF6PiA8bmFkcGlzPlxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHVtw61zdMOtIG5vdsO9IHrDoXpuYW0gZG8gc2VrY2UgdXLEjWVuw6kgPHJlZy4iCisjfiAidsO9cmF6ZW0+LFxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHBva3VkIG5lZXhpc3R1amUsIHZ5dHZvxZnDrSBub3ZvdSBzIG7DoXp2ZW0gIgorI34gIjxuYWRwaXM+XG4iCisjfiAiICAtLW1lbnVlbnRyeT08dGV4dD4gICAgICAgemFkw6EgdGV4dCBwb2xvxb5reSB2IG1lbnVcbiIKKyN+ICIgIC0tZGVzY3JpcHRpb249PHRleHQ+ICAgICB6YWTDoSBwb3Bpcywga3RlcsO9IHNlIG3DoSBwb3XFvsOtdCBwcm8gcG9sb8W+a3UgdiAiCisjfiAibWVudVxuIgorI34gIiAgLS1pbmZvLWZpbGU9PGNlc3RhPiAgICAgIHVyxI3DrSBpbmZvIHNvdWJvciwga3RlcsO9IHNlIG3DoSBpbnN0YWxvdmF0IGRvICIKKyN+ICJhZHJlc8OhxZllXG4iCisjfiAiICAtLWRpci1maWxlPTxjZXN0YT4gICAgICAgdXLEjcOtIHNvdWJvciBzbG91xb7DrWPDrSBqYWtvIGFkcmVzw6HFmSBwcm8gaW5mb1xuIgorI34gIiAgLS1pbmZvZGlyPTxhZHJlc8OhxZk+ICAgICAgc3Rlam7DqSBqYWtvICctLWRpci1maWxlPTxhZHJlc8OhxZk+L2RpcidcbiIKKyN+ICIgIC0taW5mby1kaXI9PGFkcmVzw6HFmT4gICAgIHN0ZWpuw6kgamFrbyAnLS1kaXItZmlsZT08YWRyZXPDocWZPi9kaXInXG4iCisjfiAiICAtLWtlZXAtb2xkICAgICAgICAgICAgICAgbmVwxZllcMOtxaFlIHN0YXLDqSB6w6F6bmFteSBhbmkgbmVvZHN0cmFuw60gIgorI34gInByw6F6ZG7DqVxuIgorI34gIiAgLS1yZW1vdmUgICAgICAgICAgICAgICAgIG9kc3RyYW7DrSBwb2xvxb5rdSB6YWRhbm91IGpha28gYmFzZW5hbWUgIgorI34gIjxzb3Vib3I+XG4iCisjfiAiICAtLXJlbW92ZS1leGFjdGx5ICAgICAgICAgb2RzdHJhbsOtIHDFmWVzbsSbIHBvbG/Fvmt1IDxzb3Vib3I+XG4iCisjfiAiICAtLXRlc3QgICAgICAgICAgICAgICAgICAgcG92b2zDrSB0ZXN0b3ZhY8OtIHJlxb5pbSAocG91emUgc2ltdWx1amUpXG4iCisjfiAiICAtLWRlYnVnICAgICAgICAgICAgICAgICAgcG92b2zDrSBsYWRpY8OtIHJlxb5pbSAoem9icmF6w60gdsOtY2UgaW5mb3JtYWPDrSlcbiIKKyN+ICIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICB6YXB0ZSB0aWNow70gcmXFvmltXG4iCisjfiAiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgem9icmF6w60gdHV0byBuw6Fwb3bEm2R1XG4iCisjfiAiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgem9icmF6w60gdmVyemlcbiIKKworI34gbXNnaWQgImNvdWxkIG5vdCBvcGVuIHN0ZGVyciBmb3Igb3V0cHV0ISAlcyIKKyN+IG1zZ3N0ciAibmVsemUgb3RldsWZw610IHN0YW5kYXJkbsOtIGNoeWJvdsO9IHbDvXN0dXAhICVzIgorCisjfiBtc2dpZCAiJXM6IC0tc2VjdGlvbiBuZWVkcyB0d28gbW9yZSBhcmdzIgorI34gbXNnc3RyICIlczogLS1zZWN0aW9uIHZ5xb5hZHVqZSBkdmEgZGFsxaHDrSBhcmd1bWVudHkiCisKKyN+IG1zZ2lkICIlczogb3B0aW9uIC0tJXMgaXMgZGVwcmVjYXRlZCAoaWdub3JlZCkiCisjfiBtc2dzdHIgIiVzOiB2b2xiYSAtLSVzIGplIHDFmWVrb27DoW5hIChpZ25vcm92w6FuYSkiCisKKyN+IG1zZ2lkICIlczogdW5rbm93biBvcHRpb24gYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IG5lem7DoW3DvSBwxZllcMOtbmHEjSDigJ4lc+KAnCIKKworI34gbXNnaWQgIiVzOiB0b28gbWFueSBhcmd1bWVudHMiCisjfiBtc2dzdHIgIiVzOiBwxZnDrWxpxaEgbW5vaG8gYXJndW1lbnTFryIKKworI34gbXNnaWQgIiVzOiAtLXNlY3Rpb24gaWdub3JlZCB3aXRoIC0tcmVtb3ZlIgorI34gbXNnc3RyICIlczogdSAtLXJlbW92ZSBqZSAtLXNlY3Rpb24gaWdub3JvdsOhbm8iCisKKyN+IG1zZ2lkICIlczogLS1kZXNjcmlwdGlvbiBpZ25vcmVkIHdpdGggLS1yZW1vdmUiCisjfiBtc2dzdHIgIiVzOiB1IC0tcmVtb3ZlIGplIC0tZGVzY3JpcHRpb24gaWdub3JvdsOhbm8iCisKKyN+IG1zZ2lkICIlczogdGVzdCBtb2RlIC0gZGlyIGZpbGUgd2lsbCBub3QgYmUgdXBkYXRlZCIKKyN+IG1zZ3N0ciAiJXM6IHRlc3RvdmFjw60gcmXFvmltIC0gYWRyLiBzb3Vib3IgbmVidWRlIGFrdHVhbGl6b3bDoW4iCisKKyN+IG1zZ2lkICIlczogd2FybmluZywgaWdub3JpbmcgY29uZnVzaW5nIElORk8tRElSLUVOVFJZIGluIGZpbGUuIgorI34gbXNnc3RyICIlczogdmFyb3bDoW7DrSwgaWdub3J1amkgbWF0b3Vjw60gSU5GTy1ESVItRU5UUlkgdiBzb3Vib3J1LiIKKworI34gbXNnaWQgImludmFsaWQgaW5mbyBlbnRyeSIKKyN+IG1zZ3N0ciAibmVwbGF0bsO9IEluZm8gesOhem5hbSIKKworI34gbXNnaWQgIiIKKyN+ICJcbiIKKyN+ICJObyBgU1RBUlQtSU5GTy1ESVItRU5UUlknIGFuZCBubyBgVGhpcyBmaWxlIGRvY3VtZW50cycuXG4iCisjfiAiJXM6IHVuYWJsZSB0byBkZXRlcm1pbmUgZGVzY3JpcHRpb24gZm9yIGBkaXInIGVudHJ5IC0gZ2l2aW5nIHVwXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJcbiIKKyN+ICLigJ5TVEFSVC1JTkZPLURJUi1FTlRSWeKAnCBhbmkg4oCeVGhpcyBmaWxlIGRvY3VtZW50c+KAnCBuZWV4aXN0dWrDrS5cbiIKKyN+ICIlczogbmVsemUgemppc3RpdCBwb3BpcyBwb2xvxb5reSDigJ5kaXLigJwgLSB2emTDoXbDoW0gc2VcbiIKKworI34gbXNnaWQgIiVzOiBubyBmaWxlICVzLCByZXRyaWV2aW5nIGJhY2t1cCBmaWxlICVzLiIKKyN+IG1zZ3N0ciAiJXM6IHNvdWJvciAlcyBuZWV4aXN0dWplLCB2eXZvbMOhdsOhbSB6w6Fsb8W+bsOtIHNvdWJvciAlcy4iCisKKyN+IG1zZ2lkICIlczogY29weWluZyAlcyB0byAlcyBmYWlsZWQsIGdpdmluZyB1cDogJXMiCisjfiBtc2dzdHIgIiVzOiBrb3DDrXJvdsOhbsOtICVzIG5hICVzIHNlbGhhbG8sIHZ6ZMOhdsOhbSBzZTogJXMiCisKKyN+IG1zZ2lkICIlczogbm8gYmFja3VwIGZpbGUgJXMgYXZhaWxhYmxlLCByZXRyaWV2aW5nIGRlZmF1bHQgZmlsZS4iCisjfiBtc2dzdHIgIiVzOiB6w6Fsb8W+bsOtIHNvdWJvciAlcyBuZW7DrSBkb3N0dXBuw70sIHZ5dm9sw6F2w6FtIHbDvWNob3rDrSBzb3Vib3IuIgorCisjfiBtc2dpZCAiJXM6IG5vIGJhY2t1cCBmaWxlICVzIGF2YWlsYWJsZS4iCisjfiBtc2dzdHIgIiVzOiB6w6Fsb8W+bsOtIHNvdWJvciAlcyBuZWV4aXN0dWplLiIKKworI34gbXNnaWQgIiVzOiBubyBkZWZhdWx0IGZpbGUgJXMgYXZhaWxhYmxlLCBnaXZpbmcgdXAuIgorI34gbXNnc3RyICIlczogesOhbG/Fvm7DrSBzb3Vib3IgJXMgbmVleGlzdHVqZSwgdnpkw6F2w6FtIHNlLiIKKworI34gbXNnaWQgIiVzOiBmYWlsZWQgdG8gbG9jayBkaXIgZm9yIGVkaXRpbmchICVzIgorI34gbXNnc3RyICIlczogc2VsaGFsbyB6YW1rbnV0w60gYWRyZXPDocWZZSBwcm8gw7pwcmF2eSEgJXMiCisKKyN+IG1zZ2lkICJ0cnkgZGVsZXRpbmcgJXM/IgorI34gbXNnc3RyICJ6a3VzdGUgc21hemF0ICVzPyIKKworI34gbXNnaWQgInVuYWJsZSB0byBvcGVuICVzOiAlcyIKKyN+IG1zZ3N0ciAibmVsemUgb3RldsWZw610ICVzOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byBjbG9zZSAlcyBhZnRlciByZWFkOiAlcyIKKyN+IG1zZ3N0ciAicG8gxI10ZW7DrSBuZWx6ZSB6YXbFmcOtdCAlczogJXMiCisKKyN+IG1zZ2lkICIlczogZXhpc3RpbmcgZW50cnkgZm9yIGAlcycgbm90IHJlcGxhY2VkIgorI34gbXNnc3RyICIlczogc3TDoXZhasOtY8OtIHrDoXpuYW0gcHJvIOKAniVz4oCcIG5lYnlsIG5haHJhemVuIgorCisjfiBtc2dpZCAiJXM6IHJlcGxhY2luZyBleGlzdGluZyBkaXIgZW50cnkgZm9yIGAlcyciCisjfiBtc2dzdHIgIiVzOiBuYWhyYXp1amkgc3TDoXZhasOtY8OtIHrDoXpuYW0gZGlyIHBybyDigJ4lc+KAnCIKKworI34gbXNnaWQgIiVzOiBjcmVhdGluZyBuZXcgc2VjdGlvbiBgJXMnIgorI34gbXNnc3RyICIlczogdnl0dsOhxZnDrW0gbm92b3Ugc2VrY2kg4oCeJXPigJwiCisKKyN+IG1zZ2lkICIlczogbm8gc2VjdGlvbnMgeWV0LCBjcmVhdGluZyBNaXNjZWxsYW5lb3VzIHNlY3Rpb24gdG9vLiIKKyN+IG1zZ3N0ciAiJXM6IHphdMOtbSDFvsOhZG7DqSBzZWtjZSwgdnl0dsOhxZnDrW0gdGFrw6kgc2VrY2kgTWlzY2VsbGFuZW91cy4iCisKKyN+IG1zZ2lkICIlczogbm8gc2VjdGlvbiBzcGVjaWZpZWQgZm9yIG5ldyBlbnRyeSwgcGxhY2luZyBhdCBlbmQiCisjfiBtc2dzdHIgIiVzOiBwcm8gbm92w70gesOhem5hbSBuZWJ5bGEgemFkw6FuYSBzZWtjZSwgdW1pc8WldWppIG5hIGtvbmVjIgorCisjfiBtc2dpZCAiJXM6IGRlbGV0aW5nIGVudHJ5IGAlcyAuLi4nIgorI34gbXNnc3RyICIlczogbWHFvnUgesOhem5hbSBgJXMg4oCmJyIKKworI34gbXNnaWQgIiVzOiBlbXB0eSBzZWN0aW9uIGAlcycgbm90IHJlbW92ZWQiCisjfiBtc2dzdHIgIiVzOiBwcsOhemRuw6Egc2VrY2Ug4oCeJXPigJwgbmVieWxhIG9kc3RyYW7Em25hIgorCisjfiBtc2dpZCAiJXM6IGRlbGV0aW5nIGVtcHR5IHNlY3Rpb24gYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IG1hxb51IHByw6F6ZG5vdSBzZWtjaSDigJ4lc+KAnCIKKworI34gbXNnaWQgIiVzOiBubyBlbnRyeSBmb3IgZmlsZSBgJXMnIGFuZCBtZW51IGVudHJ5IGAlcyciCisjfiBtc2dzdHIgIiVzOiB6w6F6bmFtIHBybyBzb3Vib3Ig4oCeJXPigJwgYSBtZW51IOKAniVz4oCcIG5lZXhpc3R1amUiCisKKyN+IG1zZ2lkICIlczogbm8gZW50cnkgZm9yIGZpbGUgYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IMW+w6FkbsO9IHrDoXpuYW0gcHJvIHNvdWJvciDigJ4lc+KAnCIKKworI34gbXNnaWQgInVuYWJsZSB0byBiYWNrdXAgb2xkICVzLCBnaXZpbmcgdXA6ICVzIgorI34gbXNnc3RyICJuZWx6ZSB6w6Fsb2hvdmF0IHN0YXLDvSAlcywgdnpkw6F2w6FtIHNlOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyAlczogJXMiCisjfiBtc2dzdHIgIm5lbHplIG5haW5zdGFsb3ZhdCBub3bDvSAlczogJXMiCisKKyN+IG1zZ2lkICIlczogY291bGQgbm90IGJhY2t1cCAlcyBpbiAlczogJXMiCisjfiBtc2dzdHIgIiVzOiBuZWx6ZSB6w6Fsb2hvdmF0ICVzIHYgJXM6ICVzIgorCisjfiBtc2dpZCAiJXM6IHdhcm5pbmcgLSB1bmFibGUgdG8gdW5sb2NrICVzOiAlcyIKKyN+IG1zZ3N0ciAiJXM6IHZhcm92w6Fuw60gLSBuZWx6ZSBvZGVta25vdXQgJXM6ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHJlYWQgJXM6ICVkIgorI34gbXNnc3RyICJuZWx6ZSDEjcOtc3QgJXM6ICVkIgorCisjfiBtc2dpZCAiZGJnOiAlcyIKKyN+IG1zZ3N0ciAiZGJnOiAlcyIKKworI34gbXNnaWQgImZhaWxlZCB0byBvcGVuIHRtcGZpbGUgKGNvbnRyb2wpLCAlcyIKKyN+IG1zZ3N0ciAic2VsaGFsbyBvdGV2xZllbsOtIGRvxI1hc27DqWhvIHNvdWJvcnUgKGNvbnRyb2wpLCAlcyIKKworI34gbXNnaWQgImZhaWxlZCB0byBvcGVuIHRtcGZpbGUgKGRhdGEpLCAlcyIKKyN+IG1zZ3N0ciAic2VsaGFsbyBvdGV2xZllbsOtIGRvxI1hc27DqWhvIHNvdWJvcnUgKGRhdGEpLCAlcyIKKworI34gbXNnaWQgImludmFsaWQgbnVtYmVyIGZvciAtLWNvbW1hbmQtZmQiCisjfiBtc2dzdHIgIm5lcGxhdG7DqSDEjcOtc2xvIHBybyAtLWNvbW1hbmQtZmQiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcmV3aW5kIGF0IHN0YXJ0IG9mIHZzbnByaW50ZiIKKyN+IG1zZ3N0ciAibmVsemUgcMWZZWrDrXQgbmEgemHEjcOhdGVrIHZzbnByaW50ZiIKKworI34gbXNnaWQgInVuYWJsZSB0byB0cnVuY2F0ZSBpbiB2c25wcmludGYiCisjfiBtc2dzdHIgIm5lbHplIHprcsOhdGl0IHZlIHZzbnByaW50ZiIKKworI34gbXNnaWQgIndyaXRlIGVycm9yIGluIHZzbnByaW50ZiIKKyN+IG1zZ3N0ciAidmUgdnNucHJpbnRmIG5hc3RhbGEgY2h5YmEgcMWZaSB6w6FwaXN1IgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHN0YXQgaW4gdnNucHJpbnRmIgorI34gbXNnc3RyICJuZWx6ZSBwcm92w6lzdCBzdGF0IHZlIHZzbnByaW50ZiIKKworI34gbXNnaWQgInVuYWJsZSB0byByZXdpbmQgaW4gdnNucHJpbnRmIgorI34gbXNnc3RyICJuZWx6ZSBwcm92w6lzdCBuw6F2cmF0IHZlIHZzbnByaW50ZiIKKworI34gbXNnaWQgInJlYWQgZXJyb3IgaW4gdnNucHJpbnRmIHRydW5jYXRlZCIKKyN+IG1zZ3N0ciAiY2h5YmEgcMWZaSDEjXRlbsOtIHZlIHZzbnByaW50Ziwgemtyw6FjZW5vIgorCisjfiBtc2dpZCAiU3lzdGVtIGVycm9yIG5vLiVkIgorI34gbXNnc3RyICJTeXN0w6ltb3bDoSBjaHliYSDEjcOtc2xvICVkIgorCisjfiBtc2dpZCAiU2lnbmFsIG5vLiVkIgorI34gbXNnc3RyICJTaWduw6FsIMSNw61zbG8gJWQiCisKKyN+IG1zZ2lkICJkcGtnOiB3YXJuaW5nIC0gJXMgcmV0dXJuZWQgZXJyb3IgZXhpdCBzdGF0dXMgJWRcbiIKKyN+IG1zZ3N0ciAiZHBrZzogdmFyb3bDoW7DrSAtICVzIG5hdnLDoXRpbCBjaHlib3bDvSBrw7NkICVkXG4iCisKKyN+IG1zZ2lkICJkcGtnOiB3YXJuaW5nIC0gJXMga2lsbGVkIGJ5IHNpZ25hbCAoJXMpJXNcbiIKKyN+IG1zZ3N0ciAiZHBrZzogdmFyb3bDoW7DrSAtICVzIGJ5bCB6YWJpdCBzaWduw6FsZW0gKCVzKSVzXG4iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gcmVhZCBgJXMnIGF0IGxpbmUgJWQiCisjfiBtc2dzdHIgIm5lbHplIHDFmWXEjcOtc3Qg4oCeJXPigJwgbmEgxZnDoWRrdSAlZCIKKworI34gbXNnaWQgInBhcnNlIGVycm9yLCBpbiBmaWxlIGAlLjI1NXMnIG5lYXIgbGluZSAlZCIKKyN+IG1zZ3N0ciAiY2h5Ym7DoSBzeW50YXhlIHYgc291Ym9ydSDigJ4lLjI1NXPigJwgb2tvbG8gxZnDoWRrdSAlZCIKKworI34gbXNnaWQgIiBwYWNrYWdlIGAlLjI1NXMnIgorI34gbXNnc3RyICIgYmFsw61rdSDigJ4lLjI1NXPigJwiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gcmVhbGxvYyBmb3IgdmFyaWFibGUgYnVmZmVyIgorI34gbXNnc3RyICJzZWxoYWxvIHJlYWxva292w6Fuw60gcHJvbcSbbmxpdsOpaG8gYnVmZmVydSIKKworI34gbXNnaWQgInByb2Nlc3NfYXJjaGl2ZSAuLi4gIGFscmVhZHkgZGlzYXBwZWFyZWQgISIKKyN+IG1zZ3N0ciAicHJvY2Vzc19hcmNoaXZlIOKApiAgamnFviB6bWl6ZWwgISIKKworI34gbXNnaWQgImdvYmJsZSByZXBsYWNlZCBmaWxlIGAlLjI1NXMnIgorI34gbXNnc3RyICJ6cHJhY292w6Fuw60gbmFocmFkaWxvIHNvdWJvciDigJ4lLjI1NXPigJwiCisKKyN+IG1zZ2lkICJkcGtnOiAlczogd2FybmluZyAtIGZhaWxlZCB0byByZW1vdmUgYCUuMjUwcyc6ICVzXG4iCisjfiBtc2dzdHIgImRwa2c6ICVzOiB2YXJvdsOhbsOtIC0g4oCeJS4yNTBz4oCcIG5lb2RzdHJhbsSbbjogJXNcbiIKKworI34gbXNnaWQgIi0tYXVkaXQgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnRzIgorI34gbXNnc3RyICItLWF1ZGl0IG11c8OtIGLDvXQgemFkw6FuIGJleiBhcmd1bWVudHUiCisKKyN+IG1zZ2lkICItLXlldC10by11bnBhY2sgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnRzIgorI34gbXNnc3RyICItLXlldC10by11bnBhY2sgbXVzw60gYsO9dCB6YWTDoW4gYmV6IGFyZ3VtZW50dSIKKworI34gbXNnaWQgIi0tYXNzZXJ0LSogZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnRzIgorI34gbXNnc3RyICItLWFzc2VydC0qIG11c8OtIGLDvXQgemFkw6FuIGJleiBhcmd1bWVudHUiCisKKyN+IG1zZ2lkICItLXByZWRlcC1wYWNrYWdlIGRvZXMgbm90IHRha2UgYW55IGFyZ3VtZW50IgorI34gbXNnc3RyICItLXByZWRlcC1wYWNrYWdlIG11c8OtIGLDvXQgemFkw6FuIGJleiBhcmd1bWVudHUiCisKKyN+IG1zZ2lkICItLXByaW50LWFyY2hpdGVjdHVyZSBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudCIKKyN+IG1zZ3N0ciAiLS1wcmludC1hcmNoaXRlY3R1cmUgbXVzw60gYsO9dCB6YWTDoW4gYmV6IGFyZ3VtZW50dSIKKworI34gbXNnaWQgInVuYWJsZSB0byBzdGF0IGluc3RhbGxlZCAlcyBzY3JpcHQgYCUuMjUwcyciCisjfiBtc2dzdHIgIm5lbHplIHpqaXN0aXQgc3RhdCgpIGluc3RhbG92YW7DqWhvICVzIHNrcmlwdHUg4oCeJS4yNTBz4oCcIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHN0YXQgbmV3ICVzIHNjcmlwdCBgJS4yNTBzJyIKKyN+IG1zZ3N0ciAibmVsemUgemppc3RpdCBzdGF0KCkgbm92w6lobyAlcyBza3JpcHR1IOKAniUuMjUwc+KAnCIKKworI34gbXNnaWQgInVuYWJsZSB0byBleGVjdXRlIG5ldyAlcyIKKyN+IG1zZ3N0ciAibmVsemUgc3B1c3RpdCBub3bDvSAlcyIKKworI34gbXNnaWQgImRwa2c6IHdhcm5pbmcgLSB1bmFibGUgdG8gc3RhdCAlcyBgJS4yNTBzJzogJXNcbiIKKyN+IG1zZ3N0ciAiZHBrZzogdmFyb3bDoW7DrSAtIG5lbHplIHpqaXN0aXQgc3RhdiAlcyDigJ4lLjI1MHPigJw6ICVzXG4iCisKKyN+IG1zZ2lkICItLXNldC1zZWxlY3Rpb25zIGRvZXMgbm90IHRha2UgYW55IGFyZ3VtZW50IgorI34gbXNnc3RyICItLXNldC1zZWxlY3Rpb25zIG11c8OtIGLDvXQgemFkw6FuIGJleiBhcmd1bWVudHUiCisKKyN+IG1zZ2lkICItLWNsZWFyLXNlbGVjdGlvbnMgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tY2xlYXItc2VsZWN0aW9ucyBtdXPDrSBiw710IHphZMOhbiBiZXogYXJndW1lbnR1IgorCisjfiBtc2dpZCAiLS1idWlsZCBuZWVkcyBhIGRpcmVjdG9yeSBhcmd1bWVudCIKKyN+IG1zZ3N0ciAiLS1idWlsZCB2ecW+YWR1amUgam3DqW5vIGFkcmVzw6HFmWUiCisKKyN+IG1zZ2lkICIiCisjfiAiZHBrZy1kZWI6IHdhcm5pbmcsIG5vdCBjaGVja2luZyBjb250ZW50cyBvZiBjb250cm9sIGFyZWEuXG4iCisjfiAiZHBrZy1kZWI6IGJ1aWxkaW5nIGFuIHVua25vd24gcGFja2FnZSBpbiBgJXMnLlxuIgorI34gbXNnc3RyICIiCisjfiAiZHBrZy1kZWI6IHBvem9yLCBuZWtvbnRyb2x1amkgb2JzYWggb2JsYXN0aSBjb250cm9sLlxuIgorI34gImRwa2ctZGViOiB2eXR2w6HFmcOtbSBuZXpuw6Ftw70gYmFsw61rIHYg4oCeJXPigJwuXG4iCisKKyN+IG1zZ2lkICJJbnRlcm5hbCBlcnJvciwgY29tcHJlc3NfdHlwZSBgJWknIHVua25vd24hIgorI34gbXNnc3RyICJWbml0xZluw60gY2h5YmEsIG5lem7DoW3DvSBjb21wcmVzc190eXBlIOKAniVp4oCcISIKKworI34gbXNnaWQgIi0tam9pbiByZXF1aXJlcyBvbmUgb3IgbW9yZSBwYXJ0IGZpbGUgYXJndW1lbnRzIgorI34gbXNnc3RyICItLWpvaW4gdnnFvmFkdWplIGptw6luYSDEjcOhc3TDrSBzb3Vib3J1IGpha28gcGFyYW1ldHIiCisKKyN+IG1zZ2lkICItLWxpc3RxIGRvZXMgbm90IHRha2UgYW55IGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiLS1saXN0cSBtdXPDrSBiw710IHphZMOhbiBiZXogYXJndW1lbnR1IgorCisjfiBtc2dpZCAiIgorI34gIlxuIgorI34gIkNvcHlyaWdodCAoQykgMTk5NiBLaW0tTWluaCBLYXBsYW4uIgorI34gbXNnc3RyICIiCisjfiAiXG4iCisjfiAiQ29weXJpZ2h0IChDKSAxOTk2IEtpbS1NaW5oIEthcGxhbi4iCisKKyN+IG1zZ2lkICIiCisjfiAiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIFstLV0gWzxkaXJuYW1lPl1cbiIKKyN+ICJcbiIKKyN+ICJPcHRpb25zOlxuIgorI34gIiAgLS11bnNhZmUgICAgIHNldCBzb21lIGFkZGl0aW9uYWwgcG9zc2libHkgdXNlZnVsIG9wdGlvbnMuXG4iCisjfiAiICAgICAgICAgICAgICAgd2FybmluZzogdGhpcyBvcHRpb24gbWF5IGdhcmJsZSBhbiBvdGhlcndpc2UgY29ycmVjdCAiCisjfiAiZmlsZS5cbiIKKyN+ICIgIC0taGVscCAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorI34gIiAgLS12ZXJzaW9uICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJQb3XFvml0w606ICVzIFs8dm9sYmE+IOKApl0gWy0tXSBbPGFkcmVzw6HFmT5dXG4iCisjfiAiXG4iCisjfiAiVm9sYnk6XG4iCisjfiAiICAtLXVuc2FmZSAgICAgcG91xb5pamUgbsSba3RlcsOpIHBvdGVuY2nDoWxuxJsgdcW+aXRlxaFuw6kgdm9sYnlcbiIKKyN+ICIgICAgICAgICAgICAgICB2YXJvdsOhbsOtOiB0YXRvIHZvbGJhIG3Fr8W+ZSB6a29tb2xpdCBpIGtvcmVrdG7DrSBzb3Vib3JcbiIKKyN+ICIgIC0taGVscCAgICAgICB6b2JyYXrDrSB0dXRvIG7DoXBvdsSbZHVcbiIKKyN+ICIgIC0tdmVyc2lvbiAgICB6b2JyYXrDrSB2ZXJ6aVxuIgorCisjfiBtc2dpZCAidHJ5IGRlbGV0aW5nICVzIgorI34gbXNnc3RyICJ6a3VzdGUgc21hemF0ICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGluc3RhbGwgJXM7IGl0IHdpbGwgYmUgbGVmdCBhcyAlczogJXMiCisjfiBtc2dzdHIgImluc3RhbGFjZSAlcyBzZWxoYWxhOyBwb25lY2jDoW0gamVqIGpha28gJXM6ICVzIgorCisjfiBtc2dpZCAiJXM6IHVuYWJsZSB0byB1bmxvY2sgJXM6ICVzIgorI34gbXNnc3RyICIlczogbmVsemUgb2RlbWtub3V0ICVzOiAlcyIKKworI34gbXNnaWQgIiVzIC0gc3RhdHVzIGlzICVzLiIKKyN+IG1zZ3N0ciAiJXMgLSBzdGF2IGplICVzLiIKKworI34gbXNnaWQgIiBsaW5rIHVucmVhZGFibGUgLSAlcyIKKyN+IG1zZ3N0ciAiIG9ka2F6IG5lbsOtIMSNaXRlbG7DvSAtICVzIgorCisjfiBtc2dpZCAiIgorI34gIndhcm5pbmc6ICVzIGlzIHN1cHBvc2VkIHRvIGJlIGEgc3ltbGluayB0byAlcywgXG4iCisjfiAib3Igbm9uZXhpc3RlbnQ7IGhvd2V2ZXIsIHJlYWRsaW5rIGZhaWxlZDogJXMiCisjfiBtc2dzdHIgIiIKKyN+ICJ2YXJvdsOhbsOtOiAlcyBtw6EgYsO9dCBzeW1ib2xpY2vDvSBvZGtheiBuYSAlc1xuIgorI34gIiBuZWJvIG5lbcOhIGV4aXN0b3ZhdCwgYXbFoWFrIHZvbMOhbsOtIHJlYWRsaW5rIHNlbGhhbG86ICVzIgorCisjfiBtc2dpZCAiTGVhdmluZyAlcyAoJXMpIHBvaW50aW5nIHRvICVzLiIKKyN+IG1zZ3N0ciAiUG9uZWNow6F2w6FtICVzICglcyksIGFieSB1a2F6b3ZhbCBuYSAlcy4iCisKKyN+IG1zZ2lkICJVcGRhdGluZyAlcyAoJXMpIHRvIHBvaW50IHRvICVzLiIKKyN+IG1zZ3N0ciAiQWt0dWFsaXp1amkgJXMgKCVzKSwgYWJ5IHVrYXpvdmFsIG5hICVzLiIKKworI34gbXNnaWQgIlJlbW92aW5nICVzICglcyksIG5vdCBhcHByb3ByaWF0ZSB3aXRoICVzLiIKKyN+IG1zZ3N0ciAiT2RzdHJhxYh1amkgJXMgKCVzKSwgbmVvZHBvdsOtZMOhICVzLiIKKworI34gbXNnaWQgIiIKKyN+ICJDaGVja2luZyBhdmFpbGFibGUgdmVyc2lvbnMgb2YgJXMsIHVwZGF0aW5nIGxpbmtzIGluICVzIC4uLlxuIgorI34gIihZb3UgbWF5IG1vZGlmeSB0aGUgc3ltbGlua3MgdGhlcmUgeW91cnNlbGYgaWYgZGVzaXJlZCAtIHNlZSBgbWFuIGxuJy4pIgorI34gbXNnc3RyICIiCisjfiAiS29udHJvbHVqaSBkb3N0dXBuw6kgdmVyemUgJXMsIGFrdHVhbGl6dWppIG9ka2F6eSB2ICVzIOKAplxuIgorI34gIihTeW1ib2xpY2vDqSBvZGthenkgbcWvxb5ldGUgbcSbbml0IGkgcnXEjW7EmyAtIHZpeiDigJ5tYW4gbG7igJwuKSIKKworI34gbXNnaWQgInNsYXZlIGxpbmsgbmFtZSAlcyBkdXBsaWNhdGVkIgorI34gbXNnc3RyICJ6w6F2aXNsw70gb2RrYXogam3DqW5lbSAlcyBieWwgZHVwbGlrb3bDoW4iCisKKyN+IG1zZ2lkICJSZWNvdmVyaW5nIGZyb20gcHJldmlvdXMgZmFpbGVkIHVwZGF0ZSBvZiAlcyAuLi4iCisjfiBtc2dzdHIgIk9ibm92dWppIHogcMWZZWRjaG96w60gbmVmdW5rxI1uw60gYWt0dWFsaXphY2UgJXMg4oCmIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIG9wZW4gJXMgZm9yIHdyaXRlOiAlcyIKKyN+IG1zZ3N0ciAibmVsemUgb3RldsWZw610ICVzIHBybyB6w6FwaXM6ICVzIgorCisjfiBtc2dpZCAiTGFzdCBwYWNrYWdlIHByb3ZpZGluZyAlcyAoJXMpIHJlbW92ZWQsIGRlbGV0aW5nIGl0LiIKKyN+IG1zZ3N0ciAiUG9zbGVkbsOtIGJhbMOtayBwb2t5dHVqw61jw60gJXMgKCVzKSBieWwgb2RzdHJhbsSbbiwgbWHFvnUuIgorCisjfiBtc2dpZCAiIgorI34gIlRoZXJlIGlzIG9ubHkgMSBwcm9ncmFtIHdoaWNoIHByb3ZpZGVzICVzXG4iCisjfiAiKCVzKS4gTm90aGluZyB0byBjb25maWd1cmUuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJFeGlzdHVqZSBwb3V6ZSBqZWRpbsO9IHByb2dyYW0gcG9za3l0dWrDrWPDrSAlc1xuIgorI34gIiglcykuIE5lbcOhbSBuaWMgayBuYXN0YXZlbsOtLlxuIgorCisjfiBtc2dpZCAiIgorI34gIlRoZXJlIGFyZSAlcyBhbHRlcm5hdGl2ZXMgd2hpY2ggcHJvdmlkZSBgJXMnLlxuIgorI34gIlxuIgorI34gIiAgU2VsZWN0aW9uICAgIEFsdGVybmF0aXZlXG4iCisjfiAiLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiIKKyN+IG1zZ3N0ciAiIgorI34gIkV4aXN0dWplIG7Em2tvbGlrIGFsdGVybmF0aXYgKCVzKSwga3RlcsOpIHBvc2t5dHVqw60g4oCeJXPigJwuXG4iCisjfiAiXG4iCisjfiAiICBWw71ixJtyICAgICAgICBBbHRlcm5hdGl2YVxuIgorI34gIi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4iCisKKyN+IG1zZ2lkICJlcnJvciB3cml0aW5nIHN0ZG91dDogJXMiCisjfiBtc2dzdHIgImNoeWJhIHDFmWkgesOhcGlzdSBuYSBzdGFuZGFyZG7DrSB2w71zdHVwOiAlcyIKKworI34gbXNnaWQgImVycm9yIG9yIGVvZiByZWFkaW5nICVzIGZvciAlcyAoJXMpIgorI34gbXNnc3RyICJjaHliYSBuZWJvIGtvbmVjIHNvdWJvcnUgcMWZaSDEjXRlbsOtICVzIHBybyAlcyAoJXMpIgorCisjfiBtc2dpZCAibWlzc2luZyBuZXdsaW5lIGFmdGVyICVzIgorI34gbXNnc3RyICJjaHliw60gbm92w70gxZnDoWRlayB6YSAlcyIKKworI34gbXNnaWQgIlNlcmlvdXMgcHJvYmxlbTogJXMiCisjfiBtc2dzdHIgIlbDocW+bsO9IHByb2Jsw6ltOiAlcyIKKworI34gbXNnaWQgImNvdWxkbid0IGFsbG9jYXRlIG1lbW9yeSBmb3Igc3RyZHVwIGluIGZpbmRwYWNrYWdlKCVzKSIKKyN+IG1zZ3N0ciAibmVwb2RhxZlpbG8gc2UgYWxva292YXQgcGFtxJvFpSBwcm8gc3RyZHVwKCkgdmUgZmluZHBhY2thZ2UoJXMpIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGFsbG9jYXRlIGJ1ZmZlciBpbiBidWZmZXJfY29weSAoJXMpIgorI34gbXNnc3RyICJzZWxoYWxvIGFsb2tvdsOhbsOtIGJ1ZmZlcnUgdiBidWZmZXJfY29weSAoJXMpIgorCisjfiBtc2dpZCAiRXJyb3IgYWxsb2NhdGluZyBtZW1vcnkgZm9yIGNmZ2ZpbGVuYW1lIgorI34gbXNnc3RyICJDaHliYSBwxZlpIGFsb2thY2kgcGFtxJt0aSBwcm8gY2ZnZmlsZW5hbWUiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gbWFsbG9jIGZvciBpbmZvIGZpbGUgYCUuMjU1cyciCisjfiBtc2dzdHIgInNlbGhhbG8gdm9sw6Fuw60gbWFsbG9jIHBybyBpbmZvIHNvdWJvciDigJ4lLjI1NXPigJwiCisKKyN+IG1zZ2lkICJkaXZlcnNpb25zIGZpbGUgaGFzIHRvby1sb25nIGxpbmUgb3IgRU9GIFtpXSIKKyN+IG1zZ3N0ciAic291Ym9yIGRpdmVyc2lvbnMgbcOhIHDFmcOtbGnFoSBkbG91aMO9IMWZw6FkZWsgbmVibyBFT0YgW2ldIgorCisjfiBtc2dpZCAicmVhZCBlcnJvciBpbiBkaXZlcnNpb25zIFtpaV0iCisjfiBtc2dzdHIgImNoeWJhIHDFmWkgxI10ZW7DrSBkaXZlcnNpb25zIFtpaV0iCisKKyN+IG1zZ2lkICJ1bmV4cGVjdGVkIEVPRiBpbiBkaXZlcnNpb25zIFtpaV0iCisjfiBtc2dzdHIgIm5lb8SNZWvDoXZhbsO9IGtvbmVjIHNvdWJvcnUgZGl2ZXJzaW9ucyBbaWldIgorCisjfiBtc2dpZCAiZmdldHMgZ2F2ZSBhbiBlbXB0eSBzdHJpbmcgZnJvbSBkaXZlcnNpb25zIFtpaV0iCisjfiBtc2dzdHIgImZnZXRzIGRvc3RhbCB6IGRpdmVyc2lvbnMgcHLDoXpkbsO9IMWZZXTEm3plYyBbaWldIgorCisjfiBtc2dpZCAiZGl2ZXJzaW9ucyBmaWxlIGhhcyB0b28tbG9uZyBsaW5lIG9yIEVPRiBbaWldIgorI34gbXNnc3RyICIiCisjfiAic291Ym9yIGRpdmVyc2lvbnMgb2JzYWh1amUgcMWZw61sacWhIGRsb3Vow70gxZnDoWRlayBuZWJvIGtvbmVjIHNvdWJvcnUgW2lpXSIKKworI34gbXNnaWQgInJlYWQgZXJyb3IgaW4gZGl2ZXJzaW9ucyBbaWlpXSIKKyN+IG1zZ3N0ciAiY2h5YmEgcMWZaSDEjXRlbsOtIGRpdmVyc2lvbnMgW2lpaV0iCisKKyN+IG1zZ2lkICJ1bmV4cGVjdGVkIEVPRiBpbiBkaXZlcnNpb25zIFtpaWldIgorI34gbXNnc3RyICJuZW/EjWVrw6F2YW7DvSBrb25lYyBzb3Vib3J1IGRpdmVyc2lvbnMgW2lpaV0iCisKKyN+IG1zZ2lkICJmZ2V0cyBnYXZlIGFuIGVtcHR5IHN0cmluZyBmcm9tIGRpdmVyc2lvbnMgW2lpaV0iCisjfiBtc2dzdHIgImZnZXRzIHZyw6F0aWwgeiBkaXZlcnNpb25zIHByw6F6ZG7DvSDFmWV0xJt6ZWMgW2lpaV0iCisKKyN+IG1zZ2lkICJjb3VsZG4ndCBtYWxsb2MgaW4gZXhlY2JhY2tlbmQiCisjfiBtc2dzdHIgIm5lbHplIHByb3bDqXN0IG1hbGxvYygpIHYgZXhlY2JhY2tlbmQiCisKKyN+IG1zZ2lkICJjb3VsZG4ndCBzdHJkdXAgaW4gZXhlY2JhY2tlbmQiCisjfiBtc2dzdHIgIm5lbHplIHByb3bDqXN0IHN0cmR1cCB2IGV4ZWNiYWNrZW5kIgorCisjfiBtc2dpZCAiZmFpbGVkIGFsbG9jYXRpbmcgbWVtb3J5IGZvciB2YXJpYWJsZSBgY3RybGFyZWEnIgorI34gbXNnc3RyICJjaHliYSBwxZlpIGFsb2thY2kgcGFtxJt0aSBwcm8gcHJvbcSbbm5vdSBgY3RybGFyZWEnIgorCisjfiBtc2dpZCAiQ2Fubm90IGdldCBFTk9FTlQgdmFsdWUgZnJvbSAlczogJXMiCisjfiBtc2dzdHIgIk5lbHplIHrDrXNrYXQgaG9kbm90dSBFTk9FTlQgeiAlczogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gZW5zdXJlICVzIG5vbmV4aXN0ZW50OiAlcyIKKyN+IG1zZ3N0ciAibmVsemUgc2UgcMWZZXN2xJtkxI1pdCwgxb5lICVzIG5lZXhpc3R1amU6ICVzIgorCisjfiBtc2dpZCAiIgorI34gIndhcm5pbmc6ICVzIGlzIHN1cHBvc2VkIHRvIGJlIGEgc2xhdmUgc3ltbGluayB0b1xuIgorI34gIiAlcywgb3Igbm9uZXhpc3RlbnQ7IGhvd2V2ZXIsIHJlYWRsaW5rIGZhaWxlZDogJXMiCisjfiBtc2dzdHIgIiIKKyN+ICJ2YXJvdsOhbsOtOiAlcyBtw6EgYsO9dCB6w6F2aXNrw70gc3ltYm9saWNrw70gb2RrYXogbmFcbiIKKyN+ICIgJXMsIGF2xaFhayB2b2zDoW7DrSByZWFkbGluayBzZWxoYWxvOiAlcyIKKworI34gbXNnaWQgIiIKKyN+ICJkcGtnOiByZWdhcmRpbmcgJXMgY29udGFpbmluZyAlczpcbiIKKyN+ICIgcGFja2FnZSB1c2VzIEJyZWFrczsgbm90IHN1cHBvcnRlZCBpbiB0aGlzIGRwa2dcbiIKKyN+IG1zZ3N0ciAiIgorI34gImRwa2c6IGTDrXbDoW0gc2UgbmEgJXMgb2JzYWh1asOtY8OtICVzOlxuIgorI34gIiBiYWzDrWsgcG91xb7DrXbDoSBwb2xlIEJyZWFrcywga3RlcsOpIG5lbsOtIHYgdMOpdG8gdmVyemkgZHBrZyBwb2Rwb3JvdsOhbm9cbiIKKworI34gbXNnaWQgInVuc3VwcG9ydGVkIGRlcGVuZGVuY3kgcHJvYmxlbSAtIG5vdCBpbnN0YWxsaW5nICUuMjUwcyIKKyN+IG1zZ3N0ciAibmVwb2Rwb3JvdmFuw70gcHJvYmzDqW0gc2UgesOhdmlzbG9zdG1pIC0gbmVpbnN0YWx1amkgJS4yNTBzIgorCisjfiBtc2dpZCAiZHBrZzogd2FybmluZyAtIGlnbm9yaW5nIEJyZWFrcyAhXG4iCisjfiBtc2dzdHIgImRwa2c6IHZhcm92w6Fuw60gLSBpZ25vcnVqaSBwb2xlIEJyZWFrcyAhXG4iCisKKyN+IG1zZ2lkICJ0byIKKyN+IG1zZ3N0ciAibmEiCisKKyN+IG1zZ2lkICJmcm9tIgorI34gbXNnc3RyICJ6IgorCisjfiBtc2dpZCAiZXJyb3IgcmVhZGluZyAlcyIKKyN+IG1zZ3N0ciAiY2h5YmEgcMWZaSDEjXRlbsOtICVzIgorCisjfiBtc2dpZCAidHdvIG1vZGVzIHNwZWNpZmllZDogJXMgYW5kIC0tJXMiCisjfiBtc2dzdHIgInphZMOhbnkgZHZhIHJlxb5pbXk6ICVzIGEgLS0lcyIKKworI34gbXNnaWQgIm1hbmZsYWciCisjfiBtc2dzdHIgInJ1xI1uw60gcMWZw616bmFrIgorCisjfiBtc2dpZCAiJXM6IGZhaWxlZCB0byBleGVjIGd6aXAgLWRjIgorI34gbXNnc3RyICIlczogbmVsemUgc3B1c3RpdCBnemlwIC1kYyIKKworI34gbXNnaWQgIiVzOiBmYWlsZWQgdG8gZXhlYyBiemlwMiAtZGMiCisjfiBtc2dzdHIgIiVzOiBuZWx6ZSBzcHVzdGl0IGJ6aXAyIC1kYyIKKworI34gbXNnaWQgIiVzOiBmYWlsZWQgdG8gZXhlYyBiemlwMiAlcyIKKyN+IG1zZ3N0ciAiJXM6IG5lbHplIHNwdXN0aXQgYnppcDIgJXMiCisKKyN+IG1zZ2lkICJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6IHZlcnNpb24gY29udGFpbnMgYCAnIgorI34gbXNnc3RyICJwb2xvxb5rYSDigJ4lc+KAnCwgb2RrYXogbmEg4oCeJS4yNTVz4oCcOiB2ZXJ6ZSBvYnNhaHVqZSBgICciCisKKyN+IG1zZ2lkICIlczogY2xvc2UgJXMgYWZ0ZXIgcmVhZDogJXMiCisjfiBtc2dzdHIgIiVzOiB1emF2xZllbsOtICVzIHBvIMSNdGVuw606ICVzIgorCisjfiBtc2dpZCAiJXM6IGNhbid0IGJhY2t1cCBvbGQgJXMsIGdpdmluZyB1cDogJXMiCisjfiBtc2dzdHIgIiVzOiBuZWx6ZSB6w6Fsb2hvdmF0IHN0YXLDvSAlcywgcmV6aWdudWppOiAlcyIKKworI34gbXNnaWQgIi0tYWRtaW5kaXIgbmVlZHMgYSBkaXJlY3RvcnkgYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tYWRtaW5kaXIgdnnFvmFkdWplIGpha28gYXJndW1lbnQgam3DqW5vIGFkcmVzw6HFmWUiCisKKyN+IG1zZ2lkICItLXJlbW92ZSBuZWVkcyBhIHNpbmdsZSBhcmd1bWVudCIKKyN+IG1zZ3N0ciAiLS1yZW1vdmUgdnnFvmFkdWplIGplZGluw70gYXJndW1lbnQiCisKKyN+IG1zZ2lkICItLXRydWVuYW1lIG5lZWRzIGEgc2luZ2xlIGFyZ3VtZW50IgorI34gbXNnc3RyICItLXRydWVuYW1lIHZ5xb5hZHVqZSBqZWRpbsO9IGFyZ3VtZW50IgorCisjfiBtc2dpZCAiZHBrZy1kaXZlcnQ6ICVzIgorI34gbXNnc3RyICJkcGtnLWRpdmVydDogJXMiCisKKyN+IG1zZ2lkICJZb3UgbmVlZCAtLWhlbHAiCisjfiBtc2dzdHIgIkhsZWTDoXRlIC0taGVscCIKKworI34gbXNnaWQgIi0tcmVtb3ZlIG5lZWRzIG9uZSBhcmd1bWVudHMiCisjfiBtc2dzdHIgIi0tcmVtb3ZlIHZ5xb5hZHVqZSBqZWRlbiBhcmd1bWVudCIKKworI34gbXNnaWQgImRwa2ctc3RhdG92ZXJyaWRlOiAlcyIKKyN+IG1zZ3N0ciAiZHBrZy1zdGF0b3ZlcnJpZGU6ICVzIgorCisjfiBtc2dpZCAiWW91IG5lZWQgLS1oZWxwLiIKKyN+IG1zZ3N0ciAiSGxlZMOhdGUgLS1oZWxwLiIKKworI34gbXNnaWQgIm9wZW4gJXM6ICVzIgorI34gbXNnc3RyICJvdGV2w61yw6Fuw60gJXM6ICVzIgorCisjfiBtc2dpZCAiY3JlYXRlICVzOiAlcyIKKyN+IG1zZ3N0ciAidnl0dsOhxZllbsOtICVzOiAlcyIKKworI34gbXNnaWQgImNsb3NlICVzOiAlcyIKKyN+IG1zZ3N0ciAiemF2w61yw6Fuw60gJXM6ICVzIgorCisjfiBtc2dpZCAiaW5zdGFsbCBuZXcgJXM6ICVzIgorI34gbXNnc3RyICJpbnN0YWxhY2Ugbm92w6lobyAlczogJXMiCisKKyN+IG1zZ2lkICIlczogdW5sb2NrICVzOiAlcyIKKyN+IG1zZ3N0ciAiJXM6IG9kZW15a8OhbsOtICVzOiAlcyIKKworI34gbXNnaWQgIiVzOiByZWFkICVzOiAlZCIKKyN+IG1zZ3N0ciAiJXM6IMSNdGVuw60gJXM6ICVkIgorCisjfiBtc2dpZCAidXBkYXRlLWFsdGVybmF0aXZlczogJXMiCisjfiBtc2dzdHIgInVwZGF0ZS1hbHRlcm5hdGl2ZXM6ICVzIgorCisjfiBtc2dpZCAiLS1hZG1pbmRpciBuZWVkcyBhIDxkaXJlY3Rvcnk+IGFyZ3VtZW50IgorI34gbXNnc3RyICItLWFkbWluZGlyIHZ5xb5hZHVqZSBqYWtvIGFyZ3VtZW50IDxhZHJlc8OhxZk+IgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIG9wZW4gJXM6ICVzIgorI34gbXNnc3RyICJzZWxoYWxvIG90ZXbFmWVuw60gJXM6ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgJXMgYXMgJXMiCisjfiBtc2dzdHIgIm5lbHplIG5haW5zdGFsb3ZhdCAlcyBqYWtvICVzIgorCisjfiBtc2dpZCAiICBQYWNrYWdlICIKKyN+IG1zZ3N0ciAiICBCYWzDrWsgIgorCisjfiBtc2dpZCAiIHdoaWNoIHByb3ZpZGVzICIKKyN+IG1zZ3N0ciAiLCBrdGVyw70gcG9za3l0dWplICIKKworI34gbXNnaWQgIiBpcyB0byBiZSByZW1vdmVkLlxuIgorI34gbXNnc3RyICIgYnVkZSBvZHN0cmFuxJtuLlxuIgorCisjfiBtc2dpZCAiICBWZXJzaW9uIG9mICIKKyN+IG1zZ3N0ciAiICB2ZXJ6ZSBiYWzDrWt1ICIKKworI34gbXNnaWQgIiBvbiBzeXN0ZW0gaXMgIgorI34gbXNnc3RyICIgdiBzeXN0w6ltdSBqZSAiCisKKyN+IG1zZ2lkICIgaXMgbm90IGluc3RhbGxlZC5cbiIKKyN+IG1zZ3N0ciAiIG5lbsOtIG5haW5zdGFsb3bDoW4uXG4iCisKKyN+IG1zZ2lkICIgdG86ICVzXG4iCisjfiBtc2dzdHIgIiBuYTogJXNcbiIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvcG8vZGEuZ21vIGIvZHBrZy0xLjE2LjEuMS9wby9kYS5nbW8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMmEyNDhjMAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvcG8vZGEuZ21vCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvcG8vZGEucG8gYi9kcGtnLTEuMTYuMS4xL3BvL2RhLnBvCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQ2NjUzZTkKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3BvL2RhLnBvCkBAIC0wLDAgKzEsNzIwNiBAQAorIyB0cmFuc2xhdGlvbiBvZiBkcGtnXzEuMTMuOV9kYS5wbyB0byBEYW5pc2gKKyMgRGFuaXNoIG1lc3NhZ2VzIGZvciBEZWJpYW4gZHBrZworIyBDb3B5cmlnaHQgKEMpIDIwMDUKKyMKKyMgc3RhdCAtPiAobm9ybWFsdCkgdGlsZ8OlIGVsLiBmaW5kZSAob20gZW4gZmlsKQorIyBtYXN0ZXIgKGFsdGVybmF0aXZlKSAtPiBob3ZlZC0KKyMKKyMgdHJpZ2dlciBpbnRlcmVzdHMgLT4gdWRsw7hzZXItaW50ZXJlc3Nlcj8gIHd0aD8KKyMKKyMgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZTogdHJvciBkZXQgc2thbCBsw6ZzZXMgc29tICd0cmlnZ2VycyBkZWZlcnJlZCcgZmlsZSwgYWx0c8OlIGVuIGZpbCBmb3IgaHZpbGtlIHVkbMO4c2VyZSBkZXIgZXIgdWRzYXQuCisjCisjIENsYXVzIEhpbmRzZ2F1bCA8Y2xhdXNfaEBpbWFnZS5kaz4sIDIwMDIsIDIwMDQsIDIwMDUsIDIwMDYuCisjIHJldmlld2VkIGJ5IE9sZSBMYXVyc2VuIDxvbGF1QGhhcmR3b3JraW5nLmRrPiwgMjAwMi4KKyMgQ2xhdXMgSGluZHNnYXVsIDxjbGF1cy5oaW5kc2dhdWxAZ21haWwuY29tPiwgMjAwNiwgMjAwNy4KKyMgQXNrIEhqb3J0aCBMYXJzZW4gPGFza2xhcnNlbkBnbWFpbC5jb20+LCAyMDEwLgorbXNnaWQgIiIKK21zZ3N0ciAiIgorIlByb2plY3QtSWQtVmVyc2lvbjogZHBrZ18xLjEwLjE5X2RhXG4iCisiUmVwb3J0LU1zZ2lkLUJ1Z3MtVG86IGRlYmlhbi1kcGtnQGxpc3RzLmRlYmlhbi5vcmdcbiIKKyJQT1QtQ3JlYXRpb24tRGF0ZTogMjAxMS0xMC0xNCAwNzoxMSswMjAwXG4iCisiUE8tUmV2aXNpb24tRGF0ZTogMjAxMC0xMC0xNCAwMToxMyswMjAwXG4iCisiTGFzdC1UcmFuc2xhdG9yOiBBc2sgSGpvcnRoIExhcnNlbiA8YXNrbGFyc2VuQGdtYWlsLmNvbT5cbiIKKyJMYW5ndWFnZS1UZWFtOiBEYW5pc2ggPGRhbnNrQGRhbnNrLWdydXBwZW4uZGs+XG4iCisiTGFuZ3VhZ2U6IGRhXG4iCisiTUlNRS1WZXJzaW9uOiAxLjBcbiIKKyJDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9VVRGLThcbiIKKyJDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiA4Yml0XG4iCisiWC1HZW5lcmF0b3I6IEtCYWJlbCAxLjExLjRcbiIKKyJQbHVyYWwtRm9ybXM6ICBucGx1cmFscz0yOyBwbHVyYWw9KG4gIT0gMSk7XG4iCisKKyM6IGxpYi9kcGtnL2FyLmM6NjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgJyVjJyBpbiBhcmNoaXZlICclLjI1MHMnIG1lbWJlciAnJS4xNnMnIHNpemUiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvYXIuYzo4MSBsaWIvZHBrZy9hci5jOjk3IGxpYi9kcGtnL2FyLmM6MTA4IGxpYi9kcGtnL2FyLmM6MTEyCisjOiBsaWIvZHBrZy9hci5jOjEzNCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE1NAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgZmlsZSAnJXMnIgorbXNnc3RyICJrYW4gaWtrZSBza3JpdmUgZmlsZW4gJyVzJyIKKworIzogbGliL2Rwa2cvYXIuYzo5NAorIywgYy1mb3JtYXQKK21zZ2lkICJnZW5lcmF0ZWQgY29ycnVwdCBhciBoZWFkZXIgZm9yICclcyciCittc2dzdHIgImdlbmVyZXJlZGUgw7hkZWxhZ3QgYXItaG92ZWQgZm9yICclcyciCisKKyM6IGxpYi9kcGtnL2FyLmM6MTIzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBmc3RhdCBhciBtZW1iZXIgZmlsZSAoJXMpIgorbXNnc3RyICJrdW5uZSBpa2tlIGvDuHJlIGZzdGF0IHDDpSBhci1tZWRsZW1zZmlsICglcykiCisKKyM6IGxpYi9kcGtnL2FyLmM6MTMwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gZnN0YXQgYXIgbWVtYmVyIGZpbGUgKCVzKSIKK21zZ2lkICJhciBtZW1iZXIgZmlsZSAoJXMpIgorbXNnc3RyICJrdW5uZSBpa2tlIGvDuHJlIGZzdGF0IHDDpSBhci1tZWRsZW1zZmlsICglcykiCisKKyM6IGxpYi9kcGtnL2J1ZmZlci5jOjE5NgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCBvbiBidWZmZXIgY29weSBmb3IgJXMiCittc2dzdHIgImt1bm5lIGlra2UgbMOmc2UgdmVkIGJ1ZmZlcmtvcGllcmluZyBmb3IgJXMiCisKKyM6IGxpYi9kcGtnL2J1ZmZlci5jOjIxMgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgaW4gd3JpdGUgb24gYnVmZmVyIGNvcHkgZm9yICVzIgorbXNnc3RyICJrdW5uZSBpa2tlIHNrcml2ZSB2ZWQgYnVmZmVya29waWVyaW5nIGZvciAlcyIKKworIzogbGliL2Rwa2cvYnVmZmVyLmM6MjIwCisjLCBjLWZvcm1hdAorbXNnaWQgInNob3J0IHJlYWQgb24gYnVmZmVyIGNvcHkgZm9yICVzIgorbXNnc3RyICJsw7hiIHTDuHIgdW5kZXIgbMOmc25pbmcgaSBidWZmZXJrb3BpZXJpbmcgZm9yICVzIgorCisjOiBsaWIvZHBrZy9idWZmZXIuYzoyODgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byBleGVjIHRhciIKK21zZ2lkICJmYWlsZWQgdG8gc2VlayAlcyIKK21zZ3N0ciAia3VubmUgaWtrZSBrw7hyZSB0YXIiCisKKyM6IGxpYi9kcGtnL2NvbW1hbmQuYzoxNzggbGliL2Rwa2cvY29tbWFuZC5jOjIwNCBzcmMvaGVscC5jOjYyMQorIzogc3JjL3Byb2Nlc3NhcmMuYzo5OCBzcmMvcHJvY2Vzc2FyYy5jOjEzOCBzcmMvcHJvY2Vzc2FyYy5jOjQzMgorIzogc3JjL3Byb2Nlc3NhcmMuYzo4MzkgZHBrZy1kZWIvYnVpbGQuYzo0NTkgZHBrZy1kZWIvYnVpbGQuYzo1MzgKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTYxIGRwa2ctZGViL2V4dHJhY3QuYzozMTcgZHBrZy1kZWIvaW5mby5jOjY1CisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6NjkgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQ1NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZXhlY3V0ZSAlcyAoJXMpIgorbXNnc3RyICJrdW5uZSBpa2tlIGvDuHJlICVzICglcykiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGRlY29tcHJlc3Npb24iCittc2dzdHIgIiVzOiBkZWtvbXByaW1lcmluZyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzo4OQorIywgYy1mb3JtYXQKK21zZ2lkICIlczogY29tcHJlc3Npb24iCittc2dzdHIgIiVzOiBrb21wcmltZXJpbmciCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTEyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvciBiaW5kaW5nIGlucHV0IHRvIGd6aXAgc3RyZWFtIgorbXNnc3RyICIlczogZmVqbCB2ZWQgYmluZGluZyBhZiBpbmRkYXRhIHRpbCBnemlwLXN0csO4bSIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgcmVhZCBlcnJvcjogJyVzJyIKK21zZ3N0ciAiJXM6IGludGVybiBnemlwLWzDpnNlZmVqbDogJyVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxMzIgbGliL2Rwa2cvY29tcHJlc3MuYzoxMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgd3JpdGUgZXJyb3IiCittc2dzdHIgIiVzOiBpbnRlcm4gZ3ppcC1za3JpdmVmZWpsIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE1MAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZXJyb3IgYmluZGluZyBvdXRwdXQgdG8gZ3ppcCBzdHJlYW0iCittc2dzdHIgIiVzOiBmZWpsIHZlZCBiaW5kaW5nIGFmIHVkZGF0YSB0aWwgZ3ppcC1zdHLDuG0iCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTU3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHJlYWQgZXJyb3IiCittc2dzdHIgIiVzOiBpbnRlcm4gZ3ppcC1sw6ZzZWZlamwiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTY3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHdyaXRlIGVycm9yOiAnJXMnIgorbXNnc3RyICIlczogaW50ZXJuIGd6aXAtc2tyaXZlZmVqbDogJyVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgd3JpdGUgZXJyb3I6ICVzIgorbXNnc3RyICIlczogaW50ZXJuIGd6aXAtc2tyaXZlZmVqbDogJXMiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjIwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvciBiaW5kaW5nIGlucHV0IHRvIGJ6aXAyIHN0cmVhbSIKK21zZ3N0ciAiJXM6IGZlamwgdmVkIGJpbmRpbmcgYWYgaW5kZGF0YSB0aWwgYnppcDItc3Ryw7htIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjIzMgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgcmVhZCBlcnJvcjogJyVzJyIKK21zZ3N0ciAiJXM6IGludGVybiBiemlwMi1sw6ZzZWZlamw6ICclcyciCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjQwIGxpYi9kcGtnL2NvbXByZXNzLmM6MjQ0IGxpYi9kcGtnL2NvbXByZXNzLmM6Mjk0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiB3cml0ZSBlcnJvciIKK21zZ3N0ciAiJXM6IGludGVybiBiemlwMi1za3JpdmVmZWpsIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI1OAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZXJyb3IgYmluZGluZyBvdXRwdXQgdG8gYnppcDIgc3RyZWFtIgorbXNnc3RyICIlczogZmVqbCB2ZWQgYmluZGluZyBhZiB1ZGRhdGEgdGlsIGJ6aXAyLXN0csO4bSIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIHJlYWQgZXJyb3IiCittc2dzdHIgIiVzOiBpbnRlcm4gYnppcDItbMOmc2VmZWpsIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI3NSBsaWIvZHBrZy9jb21wcmVzcy5jOjI4NgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgd3JpdGUgZXJyb3I6ICclcyciCittc2dzdHIgIiVzOiBpbnRlcm4gYnppcDItc2tyaXZlZmVqbDogJyVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyODIKK21zZ2lkICJ1bmV4cGVjdGVkIGJ6aXAyIGVycm9yIgorbXNnc3RyICJ1dmVudGV0IGJ6aXAyLWZlamwiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVwZGF0ZXMgZGlyZWN0b3J5IGNvbnRhaW5zIGZpbGUgYCUuMjUwcycgd2hvc2UgbmFtZSBpcyB0b28gbG9uZyAobGVuZ3RoPSVkLCAiCisibWF4PSVkKSIKK21zZ3N0ciAiIgorIm9wZGF0ZXJpbmdza2F0YWxvZ2V0IGluZGVob2xkZXIgZmlsZW4gJyUuMjUwcycsIGh2aXMgbmF2biBlciBmb3IgbGFuZ3QgIgorIihsw6ZuZ2RlPSVkLCBtYXg9JWQpIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1cGRhdGVzIGRpcmVjdG9yeSBjb250YWlucyBmaWxlcyB3aXRoIGRpZmZlcmVudCBsZW5ndGggbmFtZXMgKGJvdGggJWQgYW5kICVkKSIKK21zZ3N0ciAiIgorIm9wZGF0ZXJpbmdza2F0YWxvZ2V0IGluZGVob2xkZXIgZmlsZXIgbWVkIGZvcnNrZWxsaWdlIG5hdm5lbMOmbmdkZXIgKGLDpWRlICVkICIKKyJvZyAlZCkiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHNjYW4gdXBkYXRlcyBkaXJlY3RvcnkgYCUuMjU1cyciCittc2dzdHIgImthbiBpa2tlIGdlbm5lbXPDuGdlIG9wZGF0ZXJpbmdza2F0YWxvZ2V0ICclLjI1NXMnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVtb3ZlIGluY29ycG9yYXRlZCB1cGRhdGUgZmlsZSAlLjI1NXMiCittc2dzdHIgImt1bm5lIGlra2Ugc2xldHRlIGluZGxlbW1ldCBvcGRhdGVyaW5nc2ZpbCAlLjI1NXMiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTIxIGRwa2ctZGViL2J1aWxkLmM6NDQ3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgYCUuMjU1cyciCittc2dzdHIgImt1bm5lIGlra2Ugb3ByZXR0ZSAnJS4yNTVzJyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxMjUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZpbGwgJS4yNTBzIHdpdGggcGFkZGluZyIKK21zZ3N0ciAia3VubmUgaWtrZSBlZnRlcmZ5bGRlICUuMjUwcyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxMjcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoICUuMjUwcyBhZnRlciBwYWRkaW5nIgorbXNnc3RyICJrdW5uZSBpa2tlIHTDuG1tZSAlLjI1MHMgZWZ0ZXIgZWZ0ZXJmeWxkbmluZ2VuIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEyOQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2VlayB0byBzdGFydCBvZiAlLjI1MHMgYWZ0ZXIgcGFkZGluZyIKK21zZ3N0ciAia3VubmUgaWtrZSBzw7hnZSB0aWwgc3RhcnRlbiBhZiAlLjI1MHMgZWZ0ZXIgZWZ0ZXJmeWxkbmluZ2VuIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjE5NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBsb2NrIGZpbGUgJXMgZm9yIHRlc3RpbmciCittc2dzdHIgImthbiBpa2tlIMOlYm5lIGzDpXNlZmlsICVzIHRpbCB0ZXN0IgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjIyMQorbXNnaWQgInVuYWJsZSB0byBvcGVuL2NyZWF0ZSBzdGF0dXMgZGF0YWJhc2UgbG9ja2ZpbGUiCittc2dzdHIgImt1bm5lIGlra2Ugw6VibmUvb3ByZXR0ZSBzdGF0dXNkYXRhYmFzZW5zIGzDpXNlZmlsIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjIzMQorbXNnaWQgInlvdSBkbyBub3QgaGF2ZSBwZXJtaXNzaW9uIHRvIGxvY2sgdGhlIGRwa2cgc3RhdHVzIGRhdGFiYXNlIgorbXNnc3RyICJkdSBoYXIgaWtrZSByZXR0aWdoZWRlciB0aWwgYXQgbMOlc2UgZHBrZydzIHN0YXR1c2RhdGFiYXNlIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjIzMworIywgZnV6enkKKyN8IG1zZ2lkICJ1bmFibGUgdG8gbG9jayBkcGtnIHN0YXR1cyBkYXRhYmFzZSIKK21zZ2lkICJkcGtnIHN0YXR1cyBkYXRhYmFzZSIKK21zZ3N0ciAia3VubmUgaWtrZSBsw6VzZSBkcGtnJ3Mgc3RhdHVzZGF0YWJhc2UiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjU3Cittc2dpZCAicmVxdWVzdGVkIG9wZXJhdGlvbiByZXF1aXJlcyBzdXBlcnVzZXIgcHJpdmlsZWdlIgorbXNnc3RyICJkZW4gw7huc2tlZGUgaGFuZGxpbmcga3LDpnZlciBzdXBlcmJydWdlcnJldHRpZ2hlZGVyIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjI2MgorbXNnaWQgInVuYWJsZSB0byBhY2Nlc3MgZHBrZyBzdGF0dXMgYXJlYSIKK21zZ3N0ciAia3VubmUgaWtrZSB0aWxnw6UgZHBrZy1zdGF0dXNvbXLDpWRldCIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyNjQKK21zZ2lkICJvcGVyYXRpb24gcmVxdWlyZXMgcmVhZC93cml0ZSBhY2Nlc3MgdG8gZHBrZyBzdGF0dXMgYXJlYSIKK21zZ3N0ciAiaGFuZGxpbmcga3LDpnZlciBsw6ZzZS9za3JpdmVhZGdhbmcgdGlsIGRwa2ctc3RhdHVzb21yw6VkZXQiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzA5CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZW1vdmUgbXkgb3duIHVwZGF0ZSBmaWxlICUuMjU1cyIKK21zZ3N0ciAia3VubmUgaWtrZSBzbGV0dGUgbWluIGVnZW4gb3BkYXRlcmluZ3NmaWwgJS4yNTVzIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM0NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgImt1bm5lIGlra2Ugc2tyaXZlIG9wZGF0ZXJldCBzdGF0dXMgZm9yICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM0OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgImt1bm5lIGlra2UgdMO4bW1lIG9wZGF0ZXJldCBzdGF0dXMgZm9yICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM1MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gdHJ1bmNhdGUgZm9yIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJrdW5uZSBpa2tlIGtsaXBwZSBmb3Igb3BkYXRlcmV0IHN0YXR1cyBmb3IgJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzUzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmc3luYyB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAia3VubmUgaWtrZSBzeW5rcm9uaXNlcmUgb3BkYXRlcmV0IHN0YXR1cyBmb3IgJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzU1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAia3VubmUgaWtrZSBsdWtrZSBvcGRhdGVyZXQgc3RhdHVzIGZvciAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgImt1bm5lIGlra2UgaW5zdGFsbGVyZSBvcGRhdGVyZXQgc3RhdHVzIGZvciAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZGlyLmM6NTAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byByZWFkIGZpbGVkZXNjcmlwdG9yIGZsYWdzIGZvciAlLjI1MHMiCittc2dpZCAidW5hYmxlIHRvIGdldCBmaWxlIGRlc2NyaXB0b3IgZm9yIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICJrdW5uZSBpa2tlIGzDpnNlIGZpbGRlc2tyaXB0b3ItZmxhZyBmb3IgJS4yNTBzIgorCisjOiBsaWIvZHBrZy9kaXIuYzo1NAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHN5bmMgZmlsZSAnJXMnIgorbXNnaWQgInVuYWJsZSB0byBzeW5jIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICJrYW4gaWtrZSBzeW5rcm9uaXNlcmUgZmlsZW4gJyVzJyIKKworIzogbGliL2Rwa2cvZGlyLmM6NjkgbGliL2Rwa2cvZGlyLmM6MTMxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gb3BlbiBmaWxlICclcyciCittc2dpZCAidW5hYmxlIHRvIG9wZW4gZGlyZWN0b3J5ICclcyciCittc2dzdHIgImthbiBpa2tlIMOlYm5lIGZpbGVuICclcyciCisKKyM6IGxpYi9kcGtnL2Rpci5jOjEwOSBzcmMvZGl2ZXJ0Y21kLmM6MjE4IGRwa2ctc3BsaXQvc3BsaXQuYzoyMDIKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjkzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIGZpbGUgJyVzJyIKK21zZ3N0ciAia2FuIGlra2Ugw6VibmUgZmlsZW4gJyVzJyIKKworIzogbGliL2Rwa2cvZGlyLmM6MTExIHNyYy9kaXZlcnRjbWQuYzoyMzIgc3JjL2RpdmVydGNtZC5jOjM3NworIzogc3JjL3N0YXRjbWQuYzoyMTcgZHBrZy1kZWIvYnVpbGQuYzo1OTggZHBrZy1zcGxpdC9qb2luLmM6NjUKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxODcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE0MDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgZmlsZSAnJXMnIgorbXNnc3RyICJrYW4gaWtrZSBzeW5rcm9uaXNlcmUgZmlsZW4gJyVzJyIKKworIzogbGliL2Rwa2cvZGlyLmM6MTEzIHNyYy9kaXZlcnRjbWQuYzoyMzQgc3JjL2RpdmVydGNtZC5jOjM3OQorIzogZHBrZy1kZWIvYnVpbGQuYzo2MDAgZHBrZy1zcGxpdC9qb2luLmM6NjcgZHBrZy1zcGxpdC9xdWV1ZS5jOjE4OQorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzMTQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE0MDgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIGZpbGUgJyVzJyIKK21zZ3N0ciAia2FuIGlra2UgbHVra2UgZmlsZW4gJyVzJyIKKworIzogbGliL2Rwa2cvZHVtcC5jOjM5NgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgZGV0YWlscyBvZiBgJS41MHMnIHRvIGAlLjI1MHMnIgorbXNnc3RyICJrdW5uZSBpa2tlIHNrcml2ZSBkZXRhbGplcm5lIG9tICclLjUwcycgdGlsICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDIzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuICclcycgZm9yIHdyaXRpbmcgJXMgZGF0YWJhc2UiCittc2dzdHIgImt1bm5lIGlra2Ugw6VibmUgJyVzJyBmb3IgYXQgc2tyaXZlICVzLWRhdGFiYXNlIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDI2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgYnVmZmVyaW5nIG9uICVzIGRhdGFiYXNlIGZpbGUiCittc2dzdHIgImt1bm5lIGlra2UgYWt0aXZlcmUgbWVsbGVtbGFncmluZyBmb3IgJXMtZGF0YWJhc2VmaWwiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0MzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlICVzIGRhdGFiYXNlIHJlY29yZCBhYm91dCAnJS41MHMnIHRvICclLjI1MHMnIgorbXNnc3RyICJrdW5uZSBpa2tlIHNrcml2ZSAlcy1pbmRnYW5nIG9tICclLjUwcycgdGlsICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDQ2CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBmbHVzaCAlcyBkYXRhYmFzZSB0byAnJS4yNTBzJyIKK21zZ3N0ciAia3VubmUgaWtrZSB0w7htbWUgJXMtZGF0YWJhc2UgdGlsICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDQ4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBmc3luYyAlcyBkYXRhYmFzZSB0byAnJS4yNTBzJyIKK21zZ3N0ciAia3VubmUgaWtrZSBzeW5rcm9uaXNlcmUgJXMtZGF0YWJhc2UgdGlsICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDUxCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjbG9zZSAnJS4yNTBzJyBhZnRlciB3cml0aW5nICVzIGRhdGFiYXNlIgorbXNnc3RyICJrdW5uZSBpa2tlIGx1a2tlICclLjI1MHMnIGVmdGVyIHNrcml2bmluZyBhZiAlcy1kYXRhYmFzZSIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ1NQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gbGluayAnJS4yNTBzJyB0byAnJS4yNTBzJyBmb3IgYmFja3VwIG9mICVzIGRhdGFiYXNlIgorbXNnc3RyICIiCisia3VubmUgaWtrZSBsw6Zua2UgJyUuMjUwcycgdGlsICclLjI1MHMnIHRpbCBzaWtrZXJoZWRza29waWVyaW5nIGFmICVzLWRhdGFiYXNlIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDU4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBpbnN0YWxsICclLjI1MHMnIGFzICclLjI1MHMnIGNvbnRhaW5pbmcgJXMgZGF0YWJhc2UiCittc2dzdHIgImt1bm5lIGlra2UgaW5zdGFsbGVyZSAnJS4yNTBzJyBzb20gJyUuMjUwcycgaW5kZWhvbGRlbmRlICVzLWRhdGFiYXNlIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6OTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiB1bnJlY292ZXJhYmxlIGZhdGFsIGVycm9yLCBhYm9ydGluZzpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorIiVzOiB1bMO4c2VsaWcgZmF0YWwgZmVqbCAtIGFmYnJ5ZGVyOlxuIgorIiAlc1xuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MTAwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiJXM6IHVucmVjb3ZlcmFibGUgZmF0YWwgZXJyb3IsIGFib3J0aW5nOlxuIgorI3wgIiAlc1xuIgorbXNnaWQgIiIKKyIlczogb3V0c2lkZSBlcnJvciBjb250ZXh0LCBhYm9ydGluZzpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorIiVzOiB1bMO4c2VsaWcgZmF0YWwgZmVqbCAtIGFmYnJ5ZGVyOlxuIgorIiAlc1xuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MTIwCisjLCBmdXp6eQorI3wgbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBjbGVhbnVwIGVudHJ5IgorbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBlcnJvciBjb250ZXh0IgorbXNnc3RyICJsw7hiIHTDuHIgZm9yIGh1a29tbWVsc2UgdGlsIG55IG9wcnlkbmluZ3NpbmRnYW5nIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MTgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogZXJyb3Igd2hpbGUgY2xlYW5pbmcgdXA6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKyIlczogZmVqbCB1bmRlciBvcHJ5ZG5pbmc6XG4iCisiICVzXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoyMDEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImRwa2c6IHRvbyBtYW55IG5lc3RlZCBlcnJvcnMgZHVyaW5nIGVycm9yIHJlY292ZXJ5ICEhXG4iCittc2dpZCAiJXM6IHRvbyBtYW55IG5lc3RlZCBlcnJvcnMgZHVyaW5nIGVycm9yIHJlY292ZXJ5ISFcbiIKK21zZ3N0ciAiZHBrZzogZm9yIG1hbmdlIHNhbW1lbmZsZXR0ZWRlIGZlamwgdW5kZXIgZmVqbG9wcmV0bmluZyEhXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoyNjggbGliL2Rwa2cvZWhhbmRsZS5jOjMwNworbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBjbGVhbnVwIGVudHJ5IgorbXNnc3RyICJsw7hiIHTDuHIgZm9yIGh1a29tbWVsc2UgdGlsIG55IG9wcnlkbmluZ3NpbmRnYW5nIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MjkxCittc2dpZCAib3V0IG9mIG1lbW9yeSBmb3IgbmV3IGNsZWFudXAgZW50cnkgd2l0aCBtYW55IGFyZ3VtZW50cyIKK21zZ3N0ciAibMO4YiB0w7hyIGZvciBodWtvbW1lbHNlIHRpbCBueSBvcHJ5ZG5pbmdzaW5kZ2FuZyBtZWQgbWFuZ2UgYXJndW1lbnRlciIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjM1MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiJXM6IHdhcm5pbmc6ICVzXG4iCittc2dpZCAiJXM6IGVycm9yOiAlc1xuIgorbXNnc3RyICIlczogYWR2YXJzZWw6ICVzXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzozOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IHdhcm5pbmc6ICVzXG4iCittc2dzdHIgIiVzOiBhZHZhcnNlbDogJXNcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjQxNgorIywgYy1mb3JtYXQKK21zZ2lkICIlczolczolZDogaW50ZXJuYWwgZXJyb3I6ICVzXG4iCittc2dzdHIgIiVzOiVzOiVkOiBpbnRlcm4gZmVqbDogJXNcbiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgaXMgbWlzc2luZyIKK21zZ3N0ciAiJXMgbWFuZ2xlciIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImAlLipzJyBpcyBub3QgYWxsb3dlZCBmb3IgJXMiCittc2dpZCAiJyUuNTBzJyBpcyBub3QgYWxsb3dlZCBmb3IgJXMiCittc2dzdHIgIiclLipzJyBpa2tlIHRpbGxhZHQgZm9yICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo3MworIywgYy1mb3JtYXQKK21zZ2lkICJqdW5rIGFmdGVyICVzIgorbXNnc3RyICJza3JhbW1lbCBlZnRlciAlcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6ODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBwYWNrYWdlIG5hbWUgKCUuMjUwcykiCittc2dzdHIgInVneWxkaWd0IHBha2tlbmF2biAoJS4yNTBzKSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgImVtcHR5IGZpbGUgZGV0YWlscyBmaWVsZCBgJXMnIgorbXNnc3RyICJ0b210IGZpbGRldGFsamVmZWx0ICclcyciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjEwNQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGRldGFpbHMgZmllbGQgYCVzJyBub3QgYWxsb3dlZCBpbiBzdGF0dXMgZmlsZSIKK21zZ3N0ciAiZmlsZGV0YWxqZWZlbHQgJyVzJyBpa2tlIHRpbGxhZHQgaSBzdGF0dXNmaWwiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjExOAorIywgYy1mb3JtYXQKK21zZ2lkICJ0b28gbWFueSB2YWx1ZXMgaW4gZmlsZSBkZXRhaWxzIGZpZWxkIGAlcycgKGNvbXBhcmVkIHRvIG90aGVycykiCittc2dzdHIgImZvciBtYW5nZSB2w6ZyZGllciBpIGZpbGRldGFsamVmZWx0ICclcycgKHNhbW1lbmxpZ25ldCBtZWQgYW5kcmUpIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAidG9vIGZldyB2YWx1ZXMgaW4gZmlsZSBkZXRhaWxzIGZpZWxkIGAlcycgKGNvbXBhcmVkIHRvIG90aGVycykiCittc2dzdHIgImZvciBmw6UgdsOmcmRpZXIgaSBmaWxkZXRhbGplZmVsdCAnJXMnIChzYW1tZW5saWduZXQgbWVkIGFuZHJlKSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTU0Cittc2dpZCAieWVzL25vIGluIGJvb2xlYW4gZmllbGQiCittc2dzdHIgInllcy9ubyBpIGJvb2xzayBmZWx0IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxNzQKK21zZ2lkICJ3b3JkIGluIGBwcmlvcml0eScgZmllbGQiCittc2dzdHIgIm9yZCBpICdwcmlvcml0eSctZmVsdCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTg2Cittc2dpZCAidmFsdWUgZm9yIGBzdGF0dXMnIGZpZWxkIG5vdCBhbGxvd2VkIGluIHRoaXMgY29udGV4dCIKK21zZ3N0ciAidsOmcmRpIGkgJ3N0YXR1cyctZmVsdGV0IGVyIGlra2UgdGlsbGFkdCBpIGRlbm5lIHNhbW1lbmjDpm5nIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxOTEKK21zZ2lkICJmaXJzdCAod2FudCkgd29yZCBpbiBgc3RhdHVzJyBmaWVsZCIKK21zZ3N0ciAiZsO4cnN0ZSAow7huc2tlKSBvcmQgaSAnc3RhdHVzJy1mZWx0ZXQiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE5NAorbXNnaWQgInNlY29uZCAoZXJyb3IpIHdvcmQgaW4gYHN0YXR1cycgZmllbGQiCittc2dzdHIgImFuZGV0IChmZWpsKSBvcmQgaSAnc3RhdHVzJy1mZWx0ZXQiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE5NworbXNnaWQgInRoaXJkIChzdGF0dXMpIHdvcmQgaW4gYHN0YXR1cycgZmllbGQiCittc2dzdHIgInRyZWRqZSAoc3RhdHVzKSBvcmQgaSAnc3RhdHVzJy1mZWx0ZXQiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjIwNworIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBpbiBWZXJzaW9uIHN0cmluZyAnJS4yNTBzJyIKK21zZ3N0ciAiZmVqbCBpIFZlcnNpb24tc3RyZW5nICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyMTgKK21zZ2lkICJvYnNvbGV0ZSBgUmV2aXNpb24nIG9yIGBQYWNrYWdlLVJldmlzaW9uJyBmaWVsZCB1c2VkIgorbXNnc3RyICJmb3LDpmxkZXQgJ1JldmlzaW9uJy0gZWxsZXIgJ1BhY2thZ2UtUmV2aXNpb24nLWZlbHQgYmxldiBicnVndCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjM1Cittc2dpZCAidmFsdWUgZm9yIGBjb25maWctdmVyc2lvbicgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICJ2w6ZyZGllbiBmb3IgJ2NvbmZpZy12ZXJzaW9uJy1mZWx0ZXQgZXIgaWtrZSB0aWxsYWR0IGkgZGVubmUgc2FtbWVuaMOmbmciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjI0MAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBpbiBDb25maWctVmVyc2lvbiBzdHJpbmcgJyUuMjUwcyciCittc2dzdHIgImZlamwgaSBDb25maWctVmVyc2lvbi1zdHJlbmcgJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjI2NgorIywgYy1mb3JtYXQKK21zZ2lkICJ2YWx1ZSBmb3IgYGNvbmZmaWxlcycgaGFzIG1hbGZvcm1hdHRlZCBsaW5lIGAlLipzJyIKK21zZ3N0ciAidsOmcmRpZW4gZm9yICdjb25mZmlsZXMnIGhhciBlbiBsaW5qZSBtZWQgdWd5bGRpZ3QgZm9ybWF0ICclLipzJyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6Mjg3CisjLCBjLWZvcm1hdAorbXNnaWQgInZhbHVlIGZvciBgY29uZmZpbGVzJyBoYXMgbGluZSBzdGFydGluZyB3aXRoIG5vbi1zcGFjZSBgJWMnIgorbXNnc3RyICJ2w6ZyZGllbiBmb3IgJ2NvbmZmaWxlcycgaGFyIGVuIGxpbmplLCBkZXIgc3RhcnRlciB1ZGVuIG1lbGxlbXJ1bSAnJWMnIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzozMDQKK21zZ2lkICJyb290IG9yIG51bGwgZGlyZWN0b3J5IGlzIGxpc3RlZCBhcyBhIGNvbmZmaWxlIgorbXNnc3RyICJyb290LSBlbGxlciBudWxsLWthdGFsb2dldCBlciBuw6Z2bnQgaSBrb25maWd1cmF0aW9uc2ZpbCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MzY1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJgJXMnIGZpZWxkLCBtaXNzaW5nIHBhY2thZ2UgbmFtZSwgb3IgZ2FyYmFnZSB3aGVyZSBwYWNrYWdlIG5hbWUgZXhwZWN0ZWQiCittc2dzdHIgIiIKKyInJXMnLWZlbHQsIG1hbmdsZW5kZSBwYWtrZW5hdm4gZWxsZXIgc2tyYW1tZWwsIGh2b3IgcGFra2VuYXZuZXQgdmFyIGZvcnZlbnRldCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MzcwCisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgZmllbGQsIGludmFsaWQgcGFja2FnZSBuYW1lIGAlLjI1NXMnOiAlcyIKK21zZ3N0ciAiJyVzJy1mZWx0LCB1Z3lsZGlndCBwYWtrZW5hdm4gJyUuMjU1cyc6ICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgYmFkIHZlcnNpb24gcmVsYXRpb25zaGlwICVjJWMiCittc2dzdHIgIiIKKyInJXMnLWZlbHQsIGhlbnZpc25pbmcgdGlsICclLjI1NXMnOlxuIgorIiB1Z3lsZGlnIHZlcnNpb25zcmVsYXRpb24gJWMlYyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDEyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6XG4iCisiIGAlYycgaXMgb2Jzb2xldGUsIHVzZSBgJWM9JyBvciBgJWMlYycgaW5zdGVhZCIKK21zZ3N0ciAiIgorIiclcyctZmVsdCwgaGVudmlzbmluZyB0aWwgJyUuMjU1cyc6XG4iCisiICclYycgZXIgZm9yw6ZsZGV0LCBicnVnICclYz0nIGVsbGVyICclYyVjJyBpIHN0ZWRldCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDIyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6XG4iCisiIGltcGxpY2l0IGV4YWN0IG1hdGNoIG9uIHZlcnNpb24gbnVtYmVyLCBzdWdnZXN0IHVzaW5nIGA9JyBpbnN0ZWFkIgorbXNnc3RyICIiCisiJyVzJy1mZWx0LCBoZW52aXNuaW5nIHRpbCAnJS4yNTVzJzpcbiIKKyIgaW1wbGljaXQgbsO4amFndGlnIG1hdGNoIHDDpSB2ZXJzaW9uc251bW1lciwgZm9yZXNsw6VyIGJydWcgYWYgJz0nIGkgc3RlZGV0IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MzAKK21zZ2lkICJPbmx5IGV4YWN0IHZlcnNpb25zIG1heSBiZSB1c2VkIGZvciBQcm92aWRlcyIKK21zZ3N0ciAiS3VuIGVrc2FrdGUgdmVyc2lvbmVyIG3DpSBiZW55dHRlcyB0aWwgUHJvdmlkZXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQzNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOlxuIgorIiB2ZXJzaW9uIHZhbHVlIHN0YXJ0cyB3aXRoIG5vbi1hbHBoYW51bWVyaWMsIHN1Z2dlc3QgYWRkaW5nIGEgc3BhY2UiCittc2dzdHIgIiIKKyInJXMnLWZlbHQsIGhlbnZpc2VyIHRpbCAnJS4yNTVzJzpcbiIKKyIgdmVyc2lvbnN2w6ZyZGllbiBzdGFydGVyIG1lZCBpa2tlLWFsZmFudW1lcmlzayB0ZWduLCBmb3Jlc2zDpXIgYXQgdGlsZsO4amUgZXQgIgorIm1lbGxlbXJ1bSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDUxIGxpYi9kcGtnL2ZpZWxkcy5jOjQ1NQorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6IHZlcnNpb24gY29udGFpbnMgYCVjJyIKK21zZ3N0ciAiRmVsdGV0ICclcycsIGhlbnZpc25pbmcgdGlsICclLjI1NXMnOiB2ZXJzaW9uIGluZGVob2xkZXIgJyVjJyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDU5CisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzogdmVyc2lvbiB1bnRlcm1pbmF0ZWQiCittc2dzdHIgIkZlbHRldCAnJXMnLCBoZW52aXNuaW5nIHRpbCAnJS4yNTVzJzogdmVyc2lvbiB1YWZzbHV0dGV0IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvICclLjI1NXMnOiBlcnJvciBpbiB2ZXJzaW9uIgorbXNnc3RyICJGZWx0ZXQgJyVzJywgaGVudmlzbmluZyB0aWwgJyUuMjU1cyc6IGZlamwgaSB2ZXJzaW9uIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBmaWVsZCwgc3ludGF4IGVycm9yIGFmdGVyIHJlZmVyZW5jZSB0byBwYWNrYWdlIGAlLjI1NXMnIgorbXNnc3RyICJGZWx0ZXQgJyVzJywgc3ludGFrc2ZlamwgZWZ0ZXIgaGVudmlzbmluZyB0aWwgcGFra2VuICclLjI1NXMnIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmVzIChgfCcpIG5vdCBhbGxvd2VkIGluICVzIGZpZWxkIgorbXNnc3RyICJhbHRlcm5hdGl2ZXIgKCd8JykgdGlsbGFkZXMgaWtrZSBpICVzLWZlbHRldCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTM2Cittc2dpZCAidmFsdWUgZm9yIGB0cmlnZ2Vycy1wZW5kaW5nJyBmaWVsZCBub3QgYWxsb3dlZCBpbiB0aGlzIGNvbnRleHQiCittc2dzdHIgIiIKKyJ2w6ZyZGllbiBmb3IgJ3RyaWdnZXJzLXBlbmRpbmcnLWZlbHRldCBlciBpa2tlIHRpbGxhZHQgaSBkZW5uZSBzYW1tZW5ow6ZuZyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTQzCisjLCBjLWZvcm1hdAorbXNnaWQgImlsbGVnYWwgcGVuZGluZyB0cmlnZ2VyIG5hbWUgYCUuMjU1cyc6ICVzIgorbXNnc3RyICJ1Z3lsZGlndCBuYXZuIHDDpSB2ZW50ZW5kZSB1ZGzDuHNlciAnJS4yNTVzJzogJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU0NworIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgcGVuZGluZyB0cmlnZ2VyIGAlLjI1NXMnIgorbXNnc3RyICJnZW50YWdldCBmb3Jlc3TDpWVuZGUgdWRsw7hzZXIgJyUuMjU1cyciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU2MQorbXNnaWQgInZhbHVlIGZvciBgdHJpZ2dlcnMtYXdhaXRlZCcgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICJ2w6ZyZGllbiBpICd0cmlnZ2Vycy1hd2FpdGVkJy1mZWx0ZXQgZXIgaWtrZSB0aWxsYWR0IGkgZGVubmUgc2FtbWVuaMOmbmciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU2OAorIywgYy1mb3JtYXQKK21zZ2lkICJpbGxlZ2FsIHBhY2thZ2UgbmFtZSBpbiBhd2FpdGVkIHRyaWdnZXIgYCUuMjU1cyc6ICVzIgorbXNnc3RyICJ1Z3lsZGlndCBwYWtrZW5hdm4gaSB2ZW50ZXQgdWRsw7hzZXIgJyUuMjU1cyc6ICVzIgorCisjID8/PworIzogbGliL2Rwa2cvZmllbGRzLmM6NTc0CisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBhd2FpdGVkIHRyaWdnZXIgcGFja2FnZSBgJS4yNTVzJyIKK21zZ3N0ciAiZ2VudGFnZXQgdmVudGV0IHVkbMO4c2VycGFra2UgJyUuMjU1cyciCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzo1MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBzb3VyY2UgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAia2FuIGlra2UgdGlsZ8OlIGtpbGRlZmlsICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy9maWxlLmM6NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoYW5nZSBvd25lcnNoaXAgb2YgdGFyZ2V0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgImthbiBpa2tlIMOmbmRyZSBlamVyc2thYiBhZiBtw6VsZmlsZW4gJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzo1OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IG1vZGUgb2YgdGFyZ2V0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgImthbiBpa2tlIMOmbmRyZSB0aWxzdGFuZCBmb3IgbcOlbGZpbGVuICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy9maWxlLmM6ODUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byB1bmxvY2sgJXM6ICVzIgorbXNnaWQgInVuYWJsZSB0byB1bmxvY2sgJXMiCittc2dzdHIgImt1bm5lIGlra2UgbMOlc2UgJXMgb3A6ICVzIgorCisjOiBsaWIvZHBrZy9maWxlLmM6MTExCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGVjayBmaWxlICclcycgbG9jayBzdGF0dXMiCittc2dzdHIgImthbiBpa2tlIHRqZWtrZSBsw6VzZXN0YXR1cyBmb3IgZmlsZW4gJyVzJyIKKworIzogbGliL2Rwa2cvZmlsZS5jOjE0NgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic3RhdHVzIGRhdGFiYXNlIGFyZWEgaXMgbG9ja2VkIGJ5IGFub3RoZXIgcHJvY2VzcyIKK21zZ2lkICIlcyBpcyBsb2NrZWQgYnkgYW5vdGhlciBwcm9jZXNzIgorbXNnc3RyICJzdGF0dXNkYXRhYmFzZW9tcsOlZGV0IGVyIGzDpXN0IGFmIGVuIGFuZGVuIHByb2NlcyIKKworIzogbGliL2Rwa2cvZmlsZS5jOjE0OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHVubG9jayAlczogJXMiCittc2dpZCAidW5hYmxlIHRvIGxvY2sgJXMiCittc2dzdHIgImt1bm5lIGlra2UgbMOlc2UgJXMgb3A6ICVzIgorCisjOiBsaWIvZHBrZy9sb2cuYzo1MworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBvcGVuIGxvZyBgJXMnOiAlc1xuIgorbXNnc3RyICJrdW5uZSBpa2tlIMOlYm5lIGxvZ2dlbiAnJXMnOiAlc1xuIgorCisjOiBsaWIvZHBrZy9sb2cuYzo4NQorbXNnaWQgIjxwYWNrYWdlIHN0YXR1cyBhbmQgcHJvZ3Jlc3MgZmlsZSBkZXNjcmlwdG9yPiIKK21zZ3N0ciAiPHBha2tlc3RhdHVzIG9nIGZyZW1nYW5nc2ZpbGRlc2tyaXB0b3I+IgorCisjOiBsaWIvZHBrZy9sb2cuYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIHRvIHN0YXR1cyBmZCAlZCIKK21zZ3N0ciAia2FuIGlra2Ugc2tyaXZlIHRpbCBzdGF0dXMtZmQgJWQiCisKKyM6IGxpYi9kcGtnL21saWIuYzo0NCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJtYWxsb2MgZmFpbGVkICglbGQgYnl0ZXMpIgorbXNnaWQgIm1hbGxvYyBmYWlsZWQgKCV6dSBieXRlcykiCittc2dzdHIgIm1hbGxvYyBtaXNseWtrZWRlcyAoJWxkIGJ5dGUpIgorCisjOiBsaWIvZHBrZy9tbGliLmM6NTgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInJlYWxsb2MgZmFpbGVkICglbGQgYnl0ZXMpIgorbXNnaWQgInJlYWxsb2MgZmFpbGVkICglenUgYnl0ZXMpIgorbXNnc3RyICJvbWFsbG9rZXJpbmcgbWlzbHlra2VkZXMgKCVsZCBieXRlKSIKKworIzogbGliL2Rwa2cvbWxpYi5jOjcyIGxpYi9kcGtnL21saWIuYzo5MCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6Mjc3CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MzM0IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTA3Cittc2dpZCAiZmFpbGVkIHRvIGFsbG9jYXRlIG1lbW9yeSIKK21zZ3N0ciAia2FuIGlra2UgYWxsb2tlcmUgaHVrb21tZWxzZSIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZHVwIGZvciBzdGQlcyIKK21zZ3N0ciAia3VubmUgaWtrZSB1ZGbDuHJlICdkdXAnIGZvciBzdGQlcyIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEwMworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZHVwIGZvciBmZCAlZCIKK21zZ3N0ciAia3VubmUgaWtrZSAnZHVwJyBmb3IgZmQgJWQiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMDkKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHBpcGUiCittc2dzdHIgImt1bm5lIGlra2Ugb3ByZXR0ZSBkYXRha2FuYWwgKHBpcGUpIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTE3CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHdyaXRpbmcgdG8gJyVzJyIKK21zZ3N0ciAiZmVqbCB1bmRlciBza3Jpdm5pbmcgdGlsICclcyciCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgZmlsZWRlc2NyaXB0b3IgZmxhZ3MgZm9yICUuMjUwcyIKK21zZ3N0ciAia3VubmUgaWtrZSBsw6ZzZSBmaWxkZXNrcmlwdG9yLWZsYWcgZm9yICUuMjUwcyIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEyNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IGNsb3NlLW9uLWV4ZWMgZmxhZyBmb3IgJS4yNTBzIgorbXNnc3RyICJrYW4gaWtrZSBzw6Z0dGUgZmxhZ2V0ICdjbG9zZS1vbi1leGVjJyBmb3IgJS4yNTBzIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmlndXJhdGlvbiBlcnJvcjogJXM6JWQ6ICVzIgorbXNnc3RyICJrb25maWd1cmF0aW9uc2Zlamw6ICVzOiVkOiAlcyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjc1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuIGNvbmZpZ3VyYXRpb24gZmlsZSAnJS4yNTVzJyBmb3IgcmVhZGluZzogJXMiCittc2dzdHIgImt1bm5lIGlra2Ugw6VibmUga29uZmlndXJhdGlvbnNmaWwgJyUuMjU1cycgdGlsIGzDpnNuaW5nOiAlcyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmJhbGFuY2VkIHF1b3RlcyBpbiAnJXMnIgorbXNnc3RyICJ1YmFsYW5jZXJlZGUgYW5mw7hyc2Vsc3RlZ24gaSAnJXMnIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTE3CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gb3B0aW9uICclcyciCittc2dzdHIgInVrZW5kdCB0aWx2YWxnICclcyciCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBuZWVkcyBhIHZhbHVlIgorbXNnc3RyICInJXMnIGtyw6Z2ZXIgZW4gdsOmcmRpIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTI3CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgZG9lcyBub3QgdGFrZSBhIHZhbHVlIgorbXNnc3RyICInJXMnIGthbiBpa2tlIGhhdmUgZW4gdsOmcmRpIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTMzCisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWQgZXJyb3IgaW4gY29uZmlndXJhdGlvbiBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICJsw6ZzZWZlamwgaSBrb25maWd1cmF0aW9uc2ZpbCAnJS4yNTVzJyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nIGNvbmZpZ3VyYXRpb24gZmlsZSBgJS4yNTVzJyIKK21zZ3N0ciAiZmVqbCB2ZWQgbHVrbmluZyBhZiBrb25maWd1cmF0aW9uc2ZpbCAnJS4yNTVzJyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjE3MAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBvcGVuaW5nIGNvbmZpZ3VyYXRpb24gZGlyZWN0b3J5ICclcyciCittc2dzdHIgImZlamwgdmVkIMOlYm5pbmcgYWYga29uZmlndXJhdGlvbnNrYXRhbG9nICclcyciCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gLS0lcyIKK21zZ3N0ciAidWtlbmR0IHRpbHZhbGcgLS0lcyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjIzMgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG9wdGlvbiB0YWtlcyBhIHZhbHVlIgorbXNnc3RyICJ0aWx2YWxnZXQgLS0lcyBrcsOmdmVyIGVuIHbDpnJkaSIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjIzNworIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG9wdGlvbiBkb2VzIG5vdCB0YWtlIGEgdmFsdWUiCittc2dzdHIgIi0tJXMgdGFnZXIgaWtrZSBpbW9kIGVuIHbDpnJkaSIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI0NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiAtJWMiCittc2dzdHIgInVrZW5kdCB0aWx2YWxnIC0lYyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI1MAorIywgYy1mb3JtYXQKK21zZ2lkICItJWMgb3B0aW9uIHRha2VzIGEgdmFsdWUiCittc2dzdHIgInRpbHZhbGdldCAtJWMga3LDpnZlciBlbiB2w6ZyZGkiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiLSVjIG9wdGlvbiBkb2VzIG5vdCB0YWtlIGEgdmFsdWUiCittc2dzdHIgInRpbHZhbGdldCAtJWMgdGFnZXIgaWtrZSBpbW9kIGVuIHbDpnJkaSIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI3MQorIywgYy1mb3JtYXQKK21zZ2lkICJvYnNvbGV0ZSBvcHRpb24gJy0tJXMnXG4iCittc2dzdHIgImZvcsOmbGRldCB0aWx2YWxnICctLSVzJ1xuIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6Mjg3CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZsaWN0aW5nIGFjdGlvbnMgLSVjICgtLSVzKSBhbmQgLSVjICgtLSVzKSIKK21zZ3N0ciAibW9kc3RyaWRlbmRlIGhhbmRsaW5nZXIgLSVjICgtLSVzKSBhbmQgLSVjICgtLSVzKSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHZhbHVlIGZvciBgJXMnIGZpZWxkIgorbXNnc3RyICJ2w6ZyZGkgZm9yICclcyctZmVsdGV0IG9wdHLDpmRlciBtZXJlIGVuZCDDqW4gZ2FuZyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoxNDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidXNlci1kZWZpbmVkIGZpZWxkIG5hbWUgYCUuKnMnIHRvbyBzaG9ydCIKK21zZ3N0ciAiZm9yIGtvcnQgYnJ1Z2VyYmVzdGVtdCBmZWx0bmF2biAnJS4qcyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MTUyCisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSB2YWx1ZSBmb3IgdXNlci1kZWZpbmVkIGZpZWxkIGAlLipzJyIKK21zZ3N0ciAidsOmcmRpIGZvciBicnVnZXJkZWZpbmVyZXQgZmVsdCAnJS4qcycgb3B0csOmZGVyIG1lcmUgZW5kIMOpbiBnYW5nIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjIwNworbXNnaWQgIkNvbmZpZ3VyZWQtVmVyc2lvbiBmb3IgcGFja2FnZSB3aXRoIGluYXBwcm9wcmlhdGUgU3RhdHVzIgorbXNnc3RyICIiCisiS29uZmlndXJlcmV0IHZlcnNpb24gKENvbmZpZ3VyZWQtVmVyc2lvbikgZm9yIHBha2tlIG1lZCB1cGFzc2VuZGUgc3RhdHVzIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjIxOAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGhhcyBzdGF0dXMgJXMgYnV0IHRyaWdnZXJzIGFyZSBhd2FpdGVkIgorbXNnc3RyICJwYWtrZSBoYXIgc3RhdHVzICVzLCBtZW4gZGVyIGFmdmVudGVzIHVkbMO4c2VyZSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMjIKK21zZ2lkICJwYWNrYWdlIGhhcyBzdGF0dXMgdHJpZ2dlcnMtYXdhaXRlZCBidXQgbm8gdHJpZ2dlcnMgYXdhaXRlZCIKK21zZ3N0ciAicGFra2UgaGFyIHN0YXR1cyB0cmlnZ2Vycy1hd2FpdGVkLCBtZW4gaW5nZW4gdWRsw7hzZXJlIGFmdmVudGVzIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjIyOAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGhhcyBzdGF0dXMgJXMgYnV0IHRyaWdnZXJzIGFyZSBwZW5kaW5nIgorbXNnc3RyICJwYWtrZSBoYXIgc3RhdHVzICVzLCBtZW4gZGVyIGVyIHZlbnRlbmRlIHVkbMO4c2VyZSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMzIKK21zZ2lkICJwYWNrYWdlIGhhcyBzdGF0dXMgdHJpZ2dlcnMtcGVuZGluZyBidXQgbm8gdHJpZ2dlcnMgcGVuZGluZyIKK21zZ3N0ciAicGFra2UgaGFyIHN0YXR1cyB0cmlnZ2Vycy1wZW5kaW5nLCBtZW4gaW5nZW4gdWRsw7hzZXJlIHZlbnRlciIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyNDIKK21zZ2lkICJQYWNrYWdlIHdoaWNoIGluIHN0YXRlIG5vdC1pbnN0YWxsZWQgaGFzIGNvbmZmaWxlcywgZm9yZ2V0dGluZyB0aGVtIgorbXNnc3RyICIiCisiUGFra2UsIGRlciBoYXIgc3RhdHVzIFwiaWtrZS1pbnN0YWxsZXJldFwiLCBoYXIga29uZmlndXJhdGlvbnNmaWxlci4gR2xlbW1lciAiCisiZGlzc2UiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzM1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuIHBhY2thZ2UgaW5mbyBmaWxlIGAlLjI1NXMnIGZvciByZWFkaW5nIgorbXNnc3RyICJrdW5uZSBpa2tlIMOlYm5lIHBha2tlaW5mb3JtYXRpb25zZmlsICclLjI1NXMnIGZvciBsw6ZzbmluZyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozNDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2FuJ3Qgc3RhdCBwYWNrYWdlIGluZm8gZmlsZSBgJS4yNTVzJyIKK21zZ3N0ciAia3VubmUgaWtrZSBmaW5kZSBwYWtrZWluZm9ybWF0aW9uc2ZpbCAnJS4yNTVzJyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2FuJ3QgbW1hcCBwYWNrYWdlIGluZm8gZmlsZSBgJS4yNTVzJyIKK21zZ3N0ciAia3VubmUgaWtrZSBrw7hyZSAnbW1hcCcgcMOlIHBha2tlaW5mb3JtYXRpb25zZmlsICclLjI1NXMnIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjM1MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiY2FuJ3Qgc3RhdCBwYWNrYWdlIGluZm8gZmlsZSBgJS4yNTVzJyIKK21zZ2lkICJyZWFkaW5nIHBhY2thZ2UgaW5mbyBmaWxlICclLjI1NXMnIgorbXNnc3RyICJrdW5uZSBpa2tlIGZpbmRlIHBha2tlaW5mb3JtYXRpb25zZmlsICclLjI1NXMnIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjM2MworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2xvc2UgYWZ0ZXIgcmVhZDogYCUuMjU1cyciCittc2dzdHIgImt1bm5lIGlra2UgbHVra2UgZWZ0ZXIgbMOmc25pbmc6ICclLjI1NXMnIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQwNAorIywgYy1mb3JtYXQKK21zZ2lkICJFT0YgYWZ0ZXIgZmllbGQgbmFtZSBgJS4qcyciCittc2dzdHIgInNsdXQtcMOlLWZpbCBlZnRlciBmZWx0bmF2biAnJS4qcyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDA3CisjLCBjLWZvcm1hdAorbXNnaWQgIm5ld2xpbmUgaW4gZmllbGQgbmFtZSBgJS4qcyciCittc2dzdHIgImxpbmplc2tpZnQgaSBmZWx0bmF2biAnJS4qcyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDEwCisjLCBjLWZvcm1hdAorbXNnaWQgIk1TRE9TIEVPRiAoXlopIGluIGZpZWxkIG5hbWUgYCUuKnMnIgorbXNnc3RyICJNU0RPUyBzbHV0LXDDpS1maWwgKF5aKSBpIGZlbHRuYXZuICclLipzJyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmllbGQgbmFtZSBgJS4qcycgbXVzdCBiZSBmb2xsb3dlZCBieSBjb2xvbiIKK21zZ3N0ciAiZmVsdG5hdm4gJyUuKnMnIHNrYWwgZWZ0ZXJmw7hsZ2VzIGFmIGV0IGtvbG9uIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQyNQorIywgYy1mb3JtYXQKK21zZ2lkICJFT0YgYmVmb3JlIHZhbHVlIG9mIGZpZWxkIGAlLipzJyAobWlzc2luZyBmaW5hbCBuZXdsaW5lKSIKK21zZ3N0ciAiIgorIlNsdXQtcMOlLWZpbCBmw7hyIHbDpnJkaWVuIGFmIGZlbHQgJyUuKnMnIChhZnNsdXR0ZW5kZSBsaW5qZXNraWZ0IG1hbmdsZXIpIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQyOQorIywgYy1mb3JtYXQKK21zZ2lkICJNU0RPUyBFT0YgY2hhciBpbiB2YWx1ZSBvZiBmaWVsZCBgJS4qcycgKG1pc3NpbmcgbmV3bGluZT8pIgorbXNnc3RyICIiCisiTVNET1Mtc2x1dC1ww6UtZmlsLXRlZ24gaSB2w6ZyZGllbiBmb3IgZmVsdCAnJS4qcycgKG1hbmdsZW5kZSBsaW5qZXNraWZ0PykiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDQwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJuZXdsaW5lIGluIGZpZWxkIG5hbWUgYCUuKnMnIgorbXNnaWQgImJsYW5rIGxpbmUgaW4gdmFsdWUgb2YgZmllbGQgJyUuKnMnIgorbXNnc3RyICJsaW5qZXNraWZ0IGkgZmVsdG5hdm4gJyUuKnMnIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQ2MQorIywgYy1mb3JtYXQKK21zZ2lkICJFT0YgZHVyaW5nIHZhbHVlIG9mIGZpZWxkIGAlLipzJyAobWlzc2luZyBmaW5hbCBuZXdsaW5lKSIKK21zZ3N0ciAic2x1dC1ww6UtZmlsIGkgdsOmcmRpZW4gZm9yIGZlbHQgJyUuKnMnIChhZnNsdXR0ZW5kZSBsaW5qZXNraWZ0IG1hbmdsZXIpIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjU0NgorbXNnaWQgInNldmVyYWwgcGFja2FnZSBpbmZvIGVudHJpZXMgZm91bmQsIG9ubHkgb25lIGFsbG93ZWQiCittc2dzdHIgImZsZXJlIHBha2tlaW5mb3JtYXRpb25zLWluZGdhbmdlIGZ1bmRldCwga3VuIMOpbiBlciB0aWxsYWR0IgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjU3MgorIywgYy1mb3JtYXQKK21zZ2lkICJubyBwYWNrYWdlIGluZm9ybWF0aW9uIGluIGAlLjI1NXMnIgorbXNnc3RyICJpbmdlbiBwYWtrZWluZm9ybWF0aW9uIGkgJyUuMjU1cyciCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjQ1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiJXMsIGluIGZpbGUgJyUuMjU1cycgbmVhciBsaW5lICVkIHBhY2thZ2UgJyUuMjU1cyc6XG4iCisjfCAiICIKK21zZ2lkICIiCisicGFyc2luZyBmaWxlICclLjI1NXMnIG5lYXIgbGluZSAlZCBwYWNrYWdlICclLjI1NXMnOlxuIgorIiAlLjI1NXMiCittc2dzdHIgIiIKKyIlcywgaSBmaWxlbiAnJS4yNTVzJyBuw6ZyIGxpbmplICVkLCBwYWtrZSAnJS4yNTVzJzpcbiIKKyIgIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzo0OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiVzLCBpbiBmaWxlICclLjI1NXMnIG5lYXIgbGluZSAlZDpcbiIKKyN8ICIgIgorbXNnaWQgIiIKKyJwYXJzaW5nIGZpbGUgJyUuMjU1cycgbmVhciBsaW5lICVkOlxuIgorIiAlLjI1NXMiCittc2dzdHIgIiIKKyIlcywgaSBmaWxlbiAnJS4yNTVzJyBuw6ZyIGxpbmplICVkOlxuIgorIiAiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjEyNQorbXNnaWQgIm1heSBub3QgYmUgZW1wdHkgc3RyaW5nIgorbXNnc3RyICJtw6UgaWtrZSB2w6ZyZSBlbiB0b20gc3RyZW5nIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoxMjcKKyMsIGZ1enp5CisjfCBtc2dpZCAibXVzdCBzdGFydCB3aXRoIGFuIGFscGhhbnVtZXJpYyIKK21zZ2lkICJtdXN0IHN0YXJ0IHdpdGggYW4gYWxwaGFudW1lcmljIGNoYXJhY3RlciIKK21zZ3N0ciAic2thbCBzdGFydGUgbWVkIGFsZmFudW1lcmlzayB0ZWduIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoxMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2hhcmFjdGVyIGAlYycgbm90IGFsbG93ZWQgKG9ubHkgbGV0dGVycywgZGlnaXRzIGFuZCBjaGFyYWN0ZXJzIGAlcycpIgorbXNnc3RyICIiCisidGVnbmV0ICclYycgdGlsbGFkZXMgaWtrZSAoa3VuIGJvZ3N0YXZlciwgdGFsIG9nIHRlZ25lbmUgJyVzJyB0aWxsYWRlcykiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjE3OAorIywgZnV6enkKKyN8IG1zZ2lkICI8bm9uZT4iCittc2djdHh0ICJ2ZXJzaW9uIgorbXNnaWQgIjxub25lPiIKK21zZ3N0ciAiPGluZ2VuPiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjA5Cittc2dpZCAidmVyc2lvbiBzdHJpbmcgaXMgZW1wdHkiCittc2dzdHIgInZlcnNpb25zc3RyZW5nIGVyIHRvbSIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjI0Cittc2dpZCAidmVyc2lvbiBzdHJpbmcgaGFzIGVtYmVkZGVkIHNwYWNlcyIKK21zZ3N0ciAidmVyc2lvbnNzdHJlbmcgaW5kZWhvbGRlciBtZWxsZW1ydW0iCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjIzMAorbXNnaWQgImVwb2NoIGluIHZlcnNpb24gaXMgbm90IG51bWJlciIKK21zZ3N0ciAiZXBva2UgaSB2ZXJzaW9uIGVyIGlra2UgZXQgdGFsIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyMzIKK21zZ2lkICJub3RoaW5nIGFmdGVyIGNvbG9uIGluIHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICJpbnRldCBlZnRlciBrb2xvbiBpIHZlcnNpb25zbnVtbWVyIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyNDcKK21zZ2lkICJ2ZXJzaW9uIG51bWJlciBkb2VzIG5vdCBzdGFydCB3aXRoIGRpZ2l0IgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjI1MAorbXNnaWQgImludmFsaWQgY2hhcmFjdGVyIGluIHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICJ1Z3lsZGlndCB0ZWduIGkgdmVyc2lvbnNudW1tZXIiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjI1NAorbXNnaWQgImludmFsaWQgY2hhcmFjdGVyIGluIHJldmlzaW9uIG51bWJlciIKK21zZ3N0ciAidWd5bGRpZ3QgdGVnbiBpIHJldmlzaW9uc251bW1lciIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6Mjk5IGxpYi9kcGtnL3BhcnNlaGVscC5jOjMxMQorIywgYy1mb3JtYXQKK21zZ2lkICJtaXNzaW5nICVzIgorbXNnc3RyICJtYW5nbGVuZGUgJXMiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjMwMSBsaWIvZHBrZy9wYXJzZWhlbHAuYzozMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZW1wdHkgdmFsdWUgZm9yICVzIgorbXNnc3RyICJ0b20gdsOmcmRpIGZvciAlcyIKKworIzogbGliL2Rwa2cvcGtnLWZvcm1hdC5jOjgwCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgY2hhcmFjdGVyIGAlYycgaW4gZmllbGQgd2lkdGhcbiIKK21zZ3N0ciAidWd5bGRpZ3QgdGVnbiAnJWMnIGkgZmVsdGJyZWRkZW5cbiIKKworIzogbGliL2Rwa2cvcGtnLWZvcm1hdC5jOjE3MgorIywgYy1mb3JtYXQKK21zZ2lkICJDbG9zaW5nIGJyYWNlIG1pc3NpbmcgaW4gZm9ybWF0XG4iCittc2dzdHIgIkjDuGpyZXBhcmFudGVzIG1hbmdsZXIgaSBmb3JtYXRcbiIKKworIzogbGliL2Rwa2cvcGtnLXNob3cuYzo0MAorbXNnaWQgIihubyBkZXNjcmlwdGlvbiBhdmFpbGFibGUpIgorbXNnc3RyICIoaW5nZW4gdGlsZ8OmbmdlbGlnIGJlc2tyaXZlbHNlKSIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjU1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpZ25vcmUgc2lnbmFsICVzIGJlZm9yZSBydW5uaW5nICUuMjUwcyIKK21zZ3N0ciAia2FuIGlra2UgaWdub3JlcmUgc2lnbmFsICVzIGbDuHIga8O4cnNlbCBhZiAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzo2OAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciB1bi1jYXRjaGluZyBzaWduYWwgJXM6ICVzXG4iCittc2dzdHIgImZlamwgdmVkIGJsb2tlcmluZyBhZiBzaWduYWwgJXM6ICVzXG4iCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzo3OAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyAoc3VicHJvY2Vzcyk6ICVzXG4iCittc2dzdHIgIiVzICh1bmRlcnByb2Nlcyk6ICVzXG4iCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzo4OSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NDU0Cittc2dpZCAiZm9yayBmYWlsZWQiCittc2dzdHIgInByb2Nlc3NwYWx0bmluZyBtaXNseWtrZWRlcyIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjExOQorIywgYy1mb3JtYXQKK21zZ2lkICJzdWJwcm9jZXNzICVzIHJldHVybmVkIGVycm9yIGV4aXQgc3RhdHVzICVkIgorbXNnc3RyICJ1bmRlcnByb2NlcyAlcyByZXR1cm5lcmVkZSBhZnNsdXRuaW5nc3N0YXR1cyAlZCIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEyOAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAid2FpdCBmb3Igc3VicHJvY2VzcyAlcyBmYWlsZWQiCittc2dpZCAic3VicHJvY2VzcyAlcyB3YXMgaW50ZXJydXB0ZWQiCittc2dzdHIgImFmdmVudG5pbmcgYWYgdW5kZXJwcm9jZXNzZW4gJXMgbWlzbHlra2VkZXMiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInN1YnByb2Nlc3MgJXMga2lsbGVkIGJ5IHNpZ25hbCAoJXMpJXMiCittc2dpZCAic3VicHJvY2VzcyAlcyB3YXMga2lsbGVkIGJ5IHNpZ25hbCAoJXMpJXMiCittc2dzdHIgInVuZGVycHJvY2VzICVzIGRyw6ZidCBhZiBzaWduYWwgKCVzKSVzIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTMyCittc2dpZCAiLCBjb3JlIGR1bXBlZCIKK21zZ3N0ciAiLCBjb3JlIGVmdGVybGFkdCIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJzdWJwcm9jZXNzICVzIGZhaWxlZCB3aXRoIHdhaXQgc3RhdHVzIGNvZGUgJWQiCittc2dzdHIgInVuZGVycHJvY2VzICVzIG1pc2x5a2tlZGVzIG1lZCB2ZW50ZXN0YXR1c2tvZGUgJWQiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxNTEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQ2MQorIywgYy1mb3JtYXQKK21zZ2lkICJ3YWl0IGZvciBzdWJwcm9jZXNzICVzIGZhaWxlZCIKK21zZ3N0ciAiYWZ2ZW50bmluZyBhZiB1bmRlcnByb2Nlc3NlbiAlcyBtaXNseWtrZWRlcyIKKworIyA/Pz8KKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgcGFja2FnZSBuYW1lIGAlLjI1MHMnIGluIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgInVneWxkaWd0IHBha2tlbmF2biAnJS4yNTBzJyBpIHVkbMO4c2VydWRzw6Z0dGVsc2VzZmlsZW4gJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjgxCisjLCBjLWZvcm1hdAorbXNnaWQgInRydW5jYXRlZCB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJhZmtvcnRlZGUgdWRsw7hzZXJlIGkgdWRzYXQgZmlsICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDo4NQorIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyBhdCBjaGFyYWN0ZXIgYCVzJyVzIgorbXNnc3RyICJzeW50YWtzZmVqbCBpIHVkbMO4c2VydWRzw6Z0dGVsc2VzZmlsZW4gJyUuMjUwcycgdmVkIHRlZ24gJyVzJyVzIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4vY3JlYXRlIHRyaWdnZXJzIGxvY2tmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrYW4gaWtrZSDDpWJuZS9vcHJldHRlIGzDpXNlZmlsZW4gJyUuMjUwcycgdGlsIHVkbMO4c2VyZSIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MTQxCisjLCBmdXp6eQorI3wgbXNnaWQgInRyaWdnZXJlZCIKK21zZ2lkICJ0cmlnZ2VycyBhcmVhIgorbXNnc3RyICJ1ZGzDuHN0IgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia2FuIGlra2UgdGlsZ8OlIHVkbMO4c2VydWRzw6Z0dGVsc2VzZmlsZW4gJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjE2NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrYW4gaWtrZSDDpWJuZSB1ZGzDuHNlcnVkc8OmdHRlbHNlc2ZpbGVuICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4vY3JlYXRlIG5ldyB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrYW4gaWtrZSDDpWJuZS9vcHJldHRlIG55IHVkbMO4c2VydWRzw6Z0dGVsc2VzZmlsICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoyMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcmVhZGluZyB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJmZWpsIHZlZCBsw6ZzbmluZyBhZiB1ZGzDuHNlcnVkc8OmdHRlbHNlc2ZpbGVuICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoyMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ldyB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrYW4gaWtrZSBza3JpdmUgbnkgdWRsw7hzZXJ1ZHPDpnR0ZWxzZXNmaWwgJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjIyOAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImthbiBpa2tlIGx1a2tlIG55IHVkbMO4c2VydWRzw6Z0dGVsc2VzZmlsICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImthbiBpa2tlIGluc3RhbGxlcmUgbnkgdWRsw7hzZXJ1ZHPDpnR0ZWxzZXNmaWwgJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzoyMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImludmFsaWQgb3IgdW5rbm93biBzeW50YXggaW4gdHJpZ2dlciBuYW1lIGAlLjI1MHMnIChpbiB0cmlnZ2VyIGludGVyZXN0cyBmb3IgIgorInBhY2thZ2UgYCUuMjUwcycpIgorbXNnc3RyICIiCisidWd5bGRpZyBlbGxlciB1a2VuZHQgc3ludGFrcyBpIHVkbMO4c2VybmF2biAnJS4yNTBzJyAoaSB1ZGzDuHNlci1pbnRlcmVzc2VyICIKKyJmb3IgcGFra2VuICclLjI1MHMnKSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjI2MworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiB0cmlnZ2VyIGludGVyZXN0IGxpc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia3VubmUgaWtrZSDDpWJuZSB1ZGzDuHNlci1pbnRlcmVzc2VsaXN0ZWZpbCAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjI5MgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmV3aW5kIHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia3VubmUgaWtrZSBzcG9sZSB1ZGzDuHNlci1pbnRlcmVzc2VmaWwgJyUuMjUwcycgdGlsYmFnZSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMwNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIHN5bnRheCBlcnJvcjsgaWxsZWdhbCBwYWNrYWdlIG5hbWUgYCUuMjUwcyc6ICIKKyIlLjI1MHMiCittc2dzdHIgIiIKKyJzeW50YWtzZmVqbCBpIHVkbMO4c2VyLWludGVyZXNzZWZpbCAnJS4yNTBzJzsgdWd5bGRpZ3QgcGFra2VuYXZuICclLjI1MHMnOiAiCisiJS4yNTBzIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzE4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrYW4gaWtrZSBza3JpdmUgbnkgdWRsw7hzZXItaW50ZXJlc3NlZmlsICclLjI1MHMnIgorCisjIGZsdXNoIGVyIG5vcm1hbHQgYXQgdMO4bW1lIGVuIGJ1ZmZlciBuw6VyIGRlciBza3JpdmVzIGZpbGVyCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzIxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlICclLjI1MHMnIgorbXNnc3RyICJrYW4gaWtrZSB0w7htbWUgYnVmZmVyIHRpbCBueSB1ZGzDuHNlci1pbnRlcmVzc2VmaWwgJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAia2FuIGlra2Ugc3lua3JvbmlzZXJlIG55IHVkbMO4c2VyLWludGVyZXNzZWZpbCAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMzMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrYW4gaWtrZSBpbnN0YWxsZXJlIG55IHVkbMO4c2VyLWludGVyZXNzZWZpbCAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjM0MCBsaWIvZHBrZy90cmlnbGliLmM6MzQyIGxpYi9kcGtnL3RyaWdsaWIuYzo0NzIKKyM6IHNyYy9yZW1vdmUuYzoyODYgc3JjL3JlbW92ZS5jOjM3NworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVtb3ZlIGAlLjI1MHMnIgorbXNnc3RyICJrYW4gaWtrZSBhZmluc3RhbGxlcmUgJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozNjAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrYW4gaWtrZSBvcHJldHRlIG55IHVkbMO4c2VyLWludGVyZXNzZWZpbCAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjM4MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia2FuIGlra2UgbHVra2UgbnkgdWRsw7hzZXItaW50ZXJlc3NlZmlsICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDU2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkdXBsaWNhdGUgZmlsZSB0cmlnZ2VyIGludGVyZXN0IGZvciBmaWxlbmFtZSBgJS4yNTBzJyBhbmQgcGFja2FnZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorImdlbnRhZ2V0IGZpbC11ZGzDuHNlci1pbnRlcmVzc2UgZm9yIGZpbG5hdm5ldCAnJS4yNTBzJyBvZyBwYWtrZW4gJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrYW4gaWtrZSBvcHJldHRlIG55IGZpbHVkbMO4c2VyZmlsICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDkzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrYW4gaWtrZSBza3JpdmUgbnkgZmlsdWRsw7hzZXJmaWwgJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0OTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgJyUuMjUwcyciCittc2dzdHIgImthbiBpa2tlIHTDuG1tZSBueSBmaWx1ZGzDuHNlcmZpbCAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ5OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlICclLjI1MHMnIgorbXNnc3RyICJrYW4gaWtrZSBzeW5rcm9uaXNlcmUgbnkgZmlsdWRsw7hzZXJmaWwgJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1MDMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImthbiBpa2tlIGx1a2tlIG55IGZpbHVkbMO4c2VyZmlsICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTA3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgYXMgYCUuMjUwcyciCittc2dzdHIgImthbiBpa2tlIGluc3RhbGxlcmUgbnkgZmlsdWRsw7hzZXJmaWwgc29tICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTQyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia2FuIGlra2UgbMOmc2UgZmlsdWRsw7hzZXJmaWwgJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1NTIKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yIGluIGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAic3ludGFrc2ZlamwgaSBmaWx1ZGzDuHNlcmZpbCAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjU2MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZmlsZSB0cmlnZ2VycyByZWNvcmQgbWVudGlvbnMgaWxsZWdhbCBwYWNrYWdlIG5hbWUgYCUuMjUwcycgKGZvciBpbnRlcmVzdCBpbiAiCisiZmlsZSBgJS4yNTBzJyk6ICUuMjUwcyIKK21zZ3N0ciAiIgorImZvcnRlZ25lbHNlbiBhZiBmaWx1ZGzDuHNlcmUgbsOmdm5lciB1Z3lsZGlndCBwYWtrZW5hdm4gJyUuMjUwcycgKHRpbCAiCisiaW50ZXJlc3NlIGkgZmlsZW4gJyUuMjUwcycpOiAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo2NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInRyaWdnZXJzIGNpIGZpbGUgYCUuMjUwcycgY29udGFpbnMgaWxsZWdhbCB0cmlnZ2VyIHN5bnRheCBpbiB0cmlnZ2VyIG5hbWUgYCIKKyIlLjI1MHMnOiAlLjI1MHMiCittc2dzdHIgIiIKKyJ1ZGzDuHNlci1jaS1maWwgJyUuMjUwcycgaW5kZWhvbGRlciB1bG92bGlnIHVkbMO4c2Vyc3ludGFrcyBpIHVkbMO4c2VybmF2biAiCisiJyUuMjUwcyc6ICUuMjUwcyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjY4NAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiB0cmlnZ2VycyBjaSBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrYW4gaWtrZSDDpWJuZSB1ZGzDuHNlci1jaS1maWwgJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo2OTkKK21zZ2lkICJ0cmlnZ2VycyBjaSBmaWxlIGNvbnRhaW5zIHVua25vd24gZGlyZWN0aXZlIHN5bnRheCIKK21zZ3N0ciAidWRsw7hzZXItY2ktZmlsIGluZGVob2xkZXIgdWtlbmR0IGRpcmVrdGl2c3ludGFrcyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjcxMgorIywgYy1mb3JtYXQKK21zZ2lkICJ0cmlnZ2VycyBjaSBmaWxlIGNvbnRhaW5zIHVua25vd24gZGlyZWN0aXZlIGAlLjI1MHMnIgorbXNnc3RyICJ1ZGzDuHNlci1jaS1maWwgaW5kZWhvbGRlciB1a2VuZHQgZGlyZWt0aXYgJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo3NzYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSB0cmlnZ2VycyBzdGF0ZSBkaXJlY3RvcnkgYCUuMjUwcyciCittc2dzdHIgImthbiBpa2tlIG9wcmV0dGUgdWRsw7hzZXJ0aWxzdGFuZHNrYXRhbG9nICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Nzc5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgb3duZXJzaGlwIG9mIHRyaWdnZXJzIHN0YXRlIGRpcmVjdG9yeSBgJS4yNTBzJyIKK21zZ3N0ciAia2FuIGlra2Ugw6ZuZHJlIGVqZXJza2FiIGZvciB1ZGzDuHNlcnRpbHN0YW5kc2thdGFsb2cgJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWduYW1lLmM6MzQKK21zZ2lkICJlbXB0eSB0cmlnZ2VyIG5hbWVzIGFyZSBub3QgcGVybWl0dGVkIgorbXNnc3RyICJ0b21tZSB1ZGzDuHNlcm5hdm5lIGVyIGlra2UgdGlsbGFkdCIKKworIzogbGliL2Rwa2cvdHJpZ25hbWUuYzozOAorbXNnaWQgInRyaWdnZXIgbmFtZSBjb250YWlucyBpbnZhbGlkIGNoYXJhY3RlciIKK21zZ3N0ciAidWRsw7hzZXJuYXZuIGluZGVob2xkZXIgdWd5bGRpZ3QgdGVnbiIKKworIzogbGliL2Rwa2cvdXRpbHMuYzo1NgorIywgYy1mb3JtYXQKK21zZ2lkICJyZWFkIGVycm9yIGluIGAlLjI1MHMnIgorbXNnc3RyICJsw6ZzZWZlamwgaSAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdXRpbHMuYzo2MQorIywgYy1mb3JtYXQKK21zZ2lkICJmZ2V0cyBnYXZlIGFuIGVtcHR5IHN0cmluZyBmcm9tIGAlLjI1MHMnIgorbXNnc3RyICJmZ2V0cyBnYXYgZW4gdG9tIHN0cmVuZyBmcmEgJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3V0aWxzLmM6NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAidG9vLWxvbmcgbGluZSBvciBtaXNzaW5nIG5ld2xpbmUgaW4gYCUuMjUwcyciCittc2dzdHIgImZvciBsYW5nIGxpbmplIGVsbGVyIG1hbmdsZW5kZSBsaW5qZXNraWZ0IGkgJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3V0aWxzLmM6NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgcmVhZGluZyBgJS4yNTBzJyIKK21zZ3N0ciAidXZlbnRldCBmaWxhZnNsdXRuaW5nIGkgJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3ZhcmJ1Zi5jOjgyIGxpYi9kcGtnL3ZhcmJ1Zi5jOjg4Cittc2dpZCAiZXJyb3IgZm9ybWF0dGluZyBzdHJpbmcgaW50byB2YXJidWYgdmFyaWFibGUiCittc2dzdHIgImZlamwgdmVkIGZvcm1hdGVyaW5nIGFmIHN0cmVuZyBpbmQgaSB2YXJidWYtdmFyaWFiZWwiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjE3OSBzcmMvYXJjaGl2ZXMuYzoyMDAgc3JjL2FyY2hpdmVzLmM6NzI0Cittc2dpZCAiZXJyb3IgcmVhZGluZyBmcm9tIGRwa2ctZGViIHBpcGUiCittc2dzdHIgImZlamwgdmVkIGzDpnNuaW5nIGZyYSBkYXRha2FuYWwgZm9yIGRwa2ctZGViIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxOTUKKyMsIGMtZm9ybWF0Cittc2dpZCAic2tpcHBlZCB1bnBhY2tpbmcgZmlsZSAnJS4yNTVzJyAocmVwbGFjZWQgb3IgZXhjbHVkZWQ/KSIKK21zZ3N0ciAic3ByYW5nIHVkcGFrbmluZyBhZiBmaWxlbiAnJS4yNTVzJyBvdmVyIChlcnN0YXR0ZXQgZWxsZXIgdWRlbGFkdD8pIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoyNDYgc3JjL2FyY2hpdmVzLmM6MjUwCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHNldHRpbmcgdGltZXN0YW1wcyBvZiBgJS4yNTVzJyIKK21zZ3N0ciAiZmVqbCB2ZWQgaW5kc3RpbGxpbmcgYWYgdGlkc23DpnJrZXIgZm9yICclLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoyNjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igc2V0dGluZyBvd25lcnNoaXAgb2Ygc3ltbGluayBgJS4yNTVzJyIKK21zZ3N0ciAiZmVqbCB1bmRlciBpbmRzdGlsbGluZyBhZiBlamVyc2thYiBhZiBzeW1ib2xzayBsw6Zua2UgJyUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjI2NSBzcmMvYXJjaGl2ZXMuYzo3MzQgc3JjL3N0YXRjbWQuYzoxNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igc2V0dGluZyBvd25lcnNoaXAgb2YgYCUuMjU1cyciCittc2dzdHIgImZlamwgdmVkIGluZHN0aWxsaW5nIGFmIGVqZXJza2FiIGZvciAnJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6MjY3IHNyYy9hcmNoaXZlcy5jOjczNiBzcmMvc3RhdGNtZC5jOjE2NQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIHBlcm1pc3Npb25zIG9mIGAlLjI1NXMnIgorbXNnc3RyICJmZWpsIHZlZCBpbmRzdGlsbGluZyBhZiBmaWxyZXR0aWdoZWRlciBmb3IgJyUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjM5NQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gc3RhdCAoZGVyZWZlcmVuY2UpIGV4aXN0aW5nIHN5bWxpbmsgYCUuMjUwcyciCittc2dzdHIgImt1bm5lIGlra2UgZsO4bGdlIGRlbiBla3Npc3RlcmVuZGUgc3ltYm9sc2tlIGzDpm5rZSAnJS4yNTBzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6NDE3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmYWlsZWQgdG8gc3RhdCAoZGVyZWZlcmVuY2UpIHByb3Bvc2VkIG5ldyBzeW1saW5rIHRhcmdldCBgJS4yNTBzJyBmb3IgIgorInN5bWxpbmsgYCUuMjUwcyciCittc2dzdHIgIiIKKyJrdW5uZSBpa2tlIGbDuGxnZSBkZXQgZm9yZXNsw6VlZGUgbcOlbCBgJS4yNTBzJyBmb3IgZGVuIHN5bWJvbHNrZSBsw6Zua2UgYCUuMjUwcyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjQ3NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidHJ5aW5nIHRvIG92ZXJ3cml0ZSBgJS4yNTBzJywgd2hpY2ggaXMgdGhlIGRpdmVydGVkIHZlcnNpb24gb2YgYCIKKyIlLjI1MHMnIChwYWNrYWdlOiAlLjEwMHMpIgorbXNnc3RyICIiCisiZm9yc8O4Z2VyIGF0IG92ZXJza3JpdmUgJyUuMjUwcycsIHNvbSBlciBkZW4gb21kaXJpZ2VyZWRlIHZlcnNpb24gYWYgIgorIiclLjI1MHMnKHBha2tlOiAlLjEwMHMpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo0ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJ5aW5nIHRvIG92ZXJ3cml0ZSBgJS4yNTBzJywgd2hpY2ggaXMgdGhlIGRpdmVydGVkIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dzdHIgIiIKKyJmb3Jzw7hnZXIgYXQgb3ZlcnNrcml2ZSAnJS4yNTBzJywgc29tIGVyIGRlbiBvbWRpcmlnZXJlZGUgdmVyc2lvbiBhZiBgJS4yNTBzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6NTExCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGAlLjI1NXMnICh3aGljaCBJIHdhcyBhYm91dCB0byBpbnN0YWxsKSIKK21zZ3N0ciAia2FuIGlra2UgdGlsZ8OlICclLjI1NXMnIChzb20gamVnIHNrdWxsZSB0aWwgYXQgaW5zdGFsbGVyZSkiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjUxOQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidW5hYmxlIHRvIGNsZWFuIHVwIG1lc3Mgc3Vycm91bmRpbmcgYCUuMjU1cycgYmVmb3JlIGluc3RhbGxpbmcgYW5vdGhlciAiCisidmVyc2lvbiIKK21zZ3N0ciAiIgorImt1bm5lIGlra2UgcnlkZGUgb3AgaSByb2RldCBvbWtyaW5nICclLjI1NXMnLCBpbmRlbiBqZWcgaW5zdGFsbGVyZWRlIGVuICIKKyJhbmRlbiB2ZXJzaW9uIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo1MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgcmVzdG9yZWQgYCUuMjU1cycgYmVmb3JlIGluc3RhbGxpbmcgYW5vdGhlciB2ZXJzaW9uIgorbXNnc3RyICIiCisia2FuIGlra2UgdGlsZ8OlIGdlbnNrYWJ0ICclLjI1NXMnLCBpbmRlbiBqZWcgaW5zdGFsbGVyZWRlIGVuIGFuZGVuIHZlcnNpb24iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjU2MQorIywgYy1mb3JtYXQKK21zZ2lkICJhcmNoaXZlIGNvbnRhaW5lZCBvYmplY3QgYCUuMjU1cycgb2YgdW5rbm93biB0eXBlIDB4JXgiCittc2dzdHIgImFya2l2ZXQgaW5kZWhvbGR0IG9iamVrdGV0ICclLjI1NXMnIG1lZCB1a2VuZHQgdHlwZSAweCV4IgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2MjYgc3JjL2RpdmVydGNtZC5jOjE1MCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NjgyCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIyMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI4NAorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE0NDEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE2ODAKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTY3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjQ0CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUyNworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc3RhdCBmaWxlICclcyciCittc2dzdHIgImthbiBpa2tlIHRpbGfDpSBmaWxlbiAnJXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVwbGFjaW5nIGZpbGVzIGluIG9sZCBwYWNrYWdlICVzIC4uLlxuIgorbXNnc3RyICJFcnN0YXR0ZXIgZmlsZXIgaSBkZW4gZ2FtbGUgcGFra2UgJXMuLi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6NjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlcGxhY2VkIGJ5IGZpbGVzIGluIGluc3RhbGxlZCBwYWNrYWdlICVzIC4uLlxuIgorbXNnc3RyICJFcnN0YXR0ZXQgYWYgZmlsZXIgaSBkZW4gaW5zdGFsbGVyZWRlIHBha2tlICVzIC4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInRyeWluZyB0byBvdmVyd3JpdGUgZGlyZWN0b3J5ICclLjI1MHMnIGluIHBhY2thZ2UgJS4yNTBzICUuMjUwcyB3aXRoICIKKyJub25kaXJlY3RvcnkiCittc2dzdHIgIiIKKyJmb3Jzw7hnZXIgYXQgb3ZlcnNrcml2ZSBrYXRhbG9nZXQgJyUuMjUwcycgaSBwYWtrZW4gJS4yNTBzICUuMjUwcyBtZWQgaWtrZS0iCisia2F0YWxvZyIKKworIzogc3JjL2FyY2hpdmVzLmM6NjYxCisjLCBjLWZvcm1hdAorbXNnaWQgInRyeWluZyB0byBvdmVyd3JpdGUgJyUuMjUwcycsIHdoaWNoIGlzIGFsc28gaW4gcGFja2FnZSAlLjI1MHMgJS4yNTBzIgorbXNnc3RyICJmb3Jzw7hnZXIgYXQgb3ZlcnNrcml2ZSAnJS4yNTBzJywgc29tIG9nc8OlIGVyIGkgcGFra2VuICUuMjUwcyAlLjI1MHMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjcxMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGAlLjI1NXMnICh3aGlsZSBwcm9jZXNzaW5nIGAlLjI1NXMnKSIKK21zZ3N0ciAia2FuIGlra2Ugb3ByZXR0ZSAnJS4yNTVzJyAodW5kZXIgYmVoYW5kbGluZyBhZiAnJS4yNTVzJykiCisKKyMgPyAgTsOlLCBkZXQgZ8OlciBub2suLi4KKyM6IHNyYy9hcmNoaXZlcy5jOjcxOAorIywgYy1mb3JtYXQKK21zZ2lkICJiYWNrZW5kIGRwa2ctZGViIGR1cmluZyBgJS4yNTVzJyIKK21zZ3N0ciAiYmFja2VuZCBkcGtnLWRlYiB1bmRlciAnJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6NzQ0IHNyYy9hcmNoaXZlcy5jOjkwOCBzcmMvYXJjaGl2ZXMuYzo5NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZy93cml0aW5nIGAlLjI1NXMnIgorbXNnc3RyICJmZWpsIHVuZGVyIGx1a25pbmcvc2tyaXZuaW5nICclLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgcGlwZSBgJS4yNTVzJyIKK21zZ3N0ciAiZmVqbCB1bmRlciBvcHJldHRlbHNlIGFmIGRhdGFrYW5hbCAnJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6NzUzIHNyYy9hcmNoaXZlcy5jOjc1OAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBkZXZpY2UgYCUuMjU1cyciCittc2dzdHIgImZlamwgdW5kZXIgb3ByZXR0ZWxzZSBhZiBlbmhlZCAnJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6NzcxCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIGhhcmQgbGluayBgJS4yNTVzJyIKK21zZ3N0ciAiZmVqbCB1bmRlciBvcHJldHRlbHNlIGFmIGjDpXJkIGzDpm5rZSAnJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6Nzc3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo1MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgc3ltYm9saWMgbGluayBgJS4yNTVzJyIKK21zZ3N0ciAiZmVqbCB1bmRlciBvcHJldHRlbHNlIGFmIHN5bWJvbHNrIGzDpm5rZSAnJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6NzgzCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIGRpcmVjdG9yeSBgJS4yNTVzJyIKK21zZ3N0ciAia3VubmUgaWtrZSBvcHJldHRlIGthdGFsb2dldCAnJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6ODIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBtb3ZlIGFzaWRlIGAlLjI1NXMnIHRvIGluc3RhbGwgbmV3IHZlcnNpb24iCittc2dzdHIgImt1bm5lIGlra2UgZmx5dHRlICclLjI1NXMnIHbDpmsgZm9yIGF0IGluc3RhbGxlcmUgZW4gbnkgdmVyc2lvbiIKKworIzogc3JjL2FyY2hpdmVzLmM6ODMyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzozMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgbGluayBgJS4yNTVzJyIKK21zZ3N0ciAia3VubmUgaWtrZSBsw6ZzZSBsw6Zua2VuICclLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4MzQgc3JjL2NvbmZpZ3VyZS5jOjQyMworIywgYy1mb3JtYXQKK21zZ2lkICJzeW1ib2xpYyBsaW5rICclLjI1MHMnIHNpemUgaGFzIGNoYW5nZWQgZnJvbSAlamQgdG8gJXpkIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjgzOQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gbWFrZSBiYWNrdXAgc3ltbGluayBmb3IgYCUuMjU1cyciCittc2dzdHIgImt1bm5lIGlra2Ugb3ByZXR0ZSBzaWtrZXJoZWRza29waSBhZiBzeW1ib2xzayBsw6Zua2UgZm9yICclLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNob3duIGJhY2t1cCBzeW1saW5rIGZvciBgJS4yNTVzJyIKK21zZ3N0ciAia3VubmUgaWtrZSDDpm5kcmUgZWplcnNrYWIgYWYgc3ltYm9sc2sgbMOmbmtlIGZvciAnJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6ODQ2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBtYWtlIGJhY2t1cCBsaW5rIG9mIGAlLjI1NXMnIGJlZm9yZSBpbnN0YWxsaW5nIG5ldyB2ZXJzaW9uIgorbXNnc3RyICIiCisia3VubmUgaWtrZSBvcHJldHRlIHNpa2tlcmhlZHNrb3BpIGFmIGzDpm5rZSB0aWwgJyUuMjU1cycgaW5kZW4gaW5zdGFsbGF0aW9uZW4gIgorImFmIGVuIG55IHZlcnNpb24iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjg2MyBzcmMvYXJjaGl2ZXMuYzo5NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IHZlcnNpb24gb2YgYCUuMjU1cyciCittc2dzdHIgImt1bm5lIGlra2UgaW5zdGFsbGVyZSBueSB2ZXJzaW9uIGFmICclLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo5MDIgc3JjL2FyY2hpdmVzLmM6OTQ1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuICclLjI1NXMnIgorbXNnc3RyICJrYW4gaWtrZSDDpWJuZSAnJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6OTQ3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzeW5jIGZpbGUgJyUuMjU1cyciCittc2dzdHIgImthbiBpa2tlIHN5bmtyb25pc2VyZSBmaWwgJyUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImlnbm9yaW5nIGRlcGVuZGVuY3kgcHJvYmxlbSB3aXRoICVzOlxuIgorIiVzIgorbXNnc3RyICIiCisiaWdub3JlcmVyIGFmaMOmbmdpZ2hlZHNwcm9ibGVtIG1lZCAlczpcbiIKKyIlcyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAwNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiY29uc2lkZXJpbmcgZGVjb25maWd1cmF0aW9uIG9mIGVzc2VudGlhbFxuIgorIiBwYWNrYWdlICVzLCB0byBlbmFibGUgJXMuIgorbXNnc3RyICIiCisib3ZlcnZlamVyIGRla29uZmlndXJlcmluZyBhZiBkZW4gZXNzZW50aWVsbGVcbiIKKyIgcGFra2UgJXMgZm9yIGF0IG11bGlnZ8O4cmUgJXMuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDA4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBubywgJXMgaXMgZXNzZW50aWFsLCB3aWxsIG5vdCBkZWNvbmZpZ3VyZVxuIgorIiBpdCBpbiBvcmRlciB0byBlbmFibGUgJXMuXG4iCittc2dzdHIgIiIKKyJkcGtnOiBuZWosICVzIGVyIGVzc2VudGllbCwgdmlsIGlra2UgZGVrb25maWd1cmVyZVxuIgorIiBkZW4gZm9yIGF0IG11bGlnZ8O4cmUgJXMuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IG5vLCBjYW5ub3QgcHJvY2VlZCB3aXRoICVzICgtLWF1dG8tZGVjb25maWd1cmUgd2lsbCBoZWxwKTpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6IG5laiwga2FuIGlra2UgZm9ydHPDpnR0ZSBtZWQgJXMgKC0tYXV0by1kZWNvbmZpZ3VyZSB2aWwgaGrDpmxwZSk6XG4iCisiJXMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVtb3ZhbCBvZiAlLjI1MHMiCittc2dzdHIgImFmaW5zdGFsbGF0aW9uIGFmICUuMjUwcyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA1NworIywgYy1mb3JtYXQKK21zZ2lkICJpbnN0YWxsYXRpb24gb2YgJS4yNTBzIgorbXNnc3RyICJpbnN0YWxsYXRpb24gYWYgJS4yNTVzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDU4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBjb25zaWRlcmluZyBkZWNvbmZpZ3VyYXRpb24gb2YgJXMsIHdoaWNoIHdvdWxkIGJlIGJyb2tlbiBieSAlcyAuLi5cbiIKK21zZ3N0ciAiIgorImRwa2c6IG92ZXJ2ZWplciBhdCBkZWtvbmZpZ3VyZXJlICVzLCBzb20gdmlsbGUgdsOmcmUgaSBrb25mbGlrdCBtZWQgJXMgLi4uXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogeWVzLCB3aWxsIGRlY29uZmlndXJlICVzIChicm9rZW4gYnkgJXMpLlxuIgorbXNnc3RyICJkcGtnOiBqYSwgdmlsIGFma29uZmlndXJlcmUgJXMgKGkga29uZmxpa3QgbWVkICVzKS5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA2OSBzcmMvYXJjaGl2ZXMuYzoxMTg3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiByZWdhcmRpbmcgJXMgY29udGFpbmluZyAlczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6IHZlZHLDuHJlbmRlICVzLCBkZXIgaW5kZWhvbGRlciAlczpcbiIKKyIlcyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA3NworbXNnaWQgImlnbm9yaW5nIGJyZWFrYWdlLCBtYXkgcHJvY2VlZCBhbnl3YXkhIgorbXNnc3RyICJpZ25vcmVyZXIgc2thZGUsIGthbiBmb3J0c8OmdHRlIGFsbGlnZXZlbCEiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImluc3RhbGxpbmcgJS4yNTBzIHdvdWxkIGJyZWFrICUuMjUwcywgYW5kXG4iCisiIGRlY29uZmlndXJhdGlvbiBpcyBub3QgcGVybWl0dGVkICgtLWF1dG8tZGVjb25maWd1cmUgbWlnaHQgaGVscCkiCittc2dzdHIgIiIKKyJpbnN0YWxsYXRpb24gYWYgJS4yNTBzIHZpbGxlIHbDpnJlIGkga29uZmxpa3QgbWVkICUuMjUwcywgb2dcbiIKKyIgZGVrb25maWd1cmF0aW9uIGVyIGlra2UgdGlsbGFkdCAoLS1hdXRvLWRlY29uZmlndXJlIGthbiBoasOmbHBlKSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA4NgorIywgYy1mb3JtYXQKK21zZ2lkICJpbnN0YWxsaW5nICUuMjUwcyB3b3VsZCBicmVhayBleGlzdGluZyBzb2Z0d2FyZSIKK21zZ3N0ciAiIgorImluc3RhbGxhdGlvbiBhZiAlLjI1MHMgdmlsbGUgdsOmcmUgaSBrb25mbGlrdCBtZWQgZWtzaXN0ZXJlbmRlIHByb2dyYW1tZXIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExMTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogY29uc2lkZXJpbmcgcmVtb3ZpbmcgJXMgaW4gZmF2b3VyIG9mICVzIC4uLlxuIgorbXNnc3RyICJkcGtnOiBvdmVydmVqZXIgYXQgYWZpbnN0YWxsZXJlICVzIHRpbCBmb3JkZWwgZm9yICVzLi4uXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgaXMgbm90IHByb3Blcmx5IGluc3RhbGxlZCAtIGlnbm9yaW5nIGFueSBkZXBlbmRlbmNpZXMgb24gaXQuXG4iCittc2dzdHIgIiVzIGVyIGlra2Ugb3JkZW50bGlndCBpbnN0YWxsZXJldCAtIGlnbm9yZXJlciBhZmjDpm5naWdoZWRlciBhZiBkZW4uXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogbWF5IGhhdmUgdHJvdWJsZSByZW1vdmluZyAlcywgYXMgaXQgcHJvdmlkZXMgJXMgLi4uXG4iCittc2dzdHIgImRwa2c6IGthbiBmw6UgcHJvYmxlbWVyIG1lZCBhdCBhZmluc3RhbGxlcmUgJXMsIGRhIGRlbiBnaXZlciAlcy4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTY2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBwYWNrYWdlICVzIHJlcXVpcmVzIHJlaW5zdGFsbGF0aW9uLCBidXQgd2lsbCByZW1vdmUgYW55d2F5IGFzIHlvdSAiCisicmVxdWVzdGVkLlxuIgorbXNnc3RyICIiCisiZHBrZzogcGFra2VuICVzIGtyw6Z2ZXIgZ2VuaW5zdGFsbGF0aW9uLCBtZW4gYWZpbnN0YWxsZXJlcyBlZnRlciBkaXQgw7huc2tlICIKKyJhbGxpZ2V2ZWwuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExNjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogcGFja2FnZSAlcyByZXF1aXJlcyByZWluc3RhbGxhdGlvbiwgd2lsbCBub3QgcmVtb3ZlLlxuIgorbXNnc3RyICJkcGtnOiBwYWtrZW4gJXMga3LDpnZlciBnZW5pbnN0YWxsYXRpb24uIEFmaW5zdGFsbGVyZXMgaWtrZS5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE3OAorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiB5ZXMsIHdpbGwgcmVtb3ZlICVzIGluIGZhdm91ciBvZiAlcy5cbiIKK21zZ3N0ciAiZHBrZzogamEsIHZpbCBhZmluc3RhbGxlcmUgJXMgZmlsIGZvcmRlbCBmb3IgJXMuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmxpY3RpbmcgcGFja2FnZXMgLSBub3QgaW5zdGFsbGluZyAlLjI1MHMiCittc2dzdHIgIm1vZHN0cmlkZW5kZSBwYWtrZXIgLSBpbnN0YWxsZXJlciBpa2tlICUuMjUwcyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE5MQorbXNnaWQgImlnbm9yaW5nIGNvbmZsaWN0LCBtYXkgcHJvY2VlZCBhbnl3YXkhIgorbXNnc3RyICJpZ25vcmVyZXIga29uZmxpa3QsIGthbiBmb3J0c8OmdHRlIGFsbGlnZXZlbCEiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyMzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyAtLXJlY3Vyc2l2ZSBuZWVkcyBhdCBsZWFzdCBvbmUgcGF0aCBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyAtLXJlY3Vyc2l2ZSBrcsOmdmVyIG1pbmRzdCDDqXQgc3RpYXJndW1lbnQiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNDUKK21zZ2lkICJmaW5kIGZvciBkcGtnIC0tcmVjdXJzaXZlIgorbXNnc3RyICJmaW5kIGZvciBkcGtnIC0tcmVjdXJzaXZlIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjY2Cittc2dpZCAiZmFpbGVkIHRvIGZkb3BlbiBmaW5kJ3MgcGlwZSIKK21zZ3N0ciAia3VubmUgaWtrZSBrw7hyZSBmZG9wZW4gcMOlIGRhdGFrYW5hbGVuIGZvciBmaW5kIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjcyCittc2dpZCAiZXJyb3IgcmVhZGluZyBmaW5kJ3MgcGlwZSIKK21zZ3N0ciAiZmVqbCB2ZWQgbMOmc25pbmcgYWYgZGF0YWthbmFsIGZvciBmaW5kIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjczCittc2dpZCAiZXJyb3IgY2xvc2luZyBmaW5kJ3MgcGlwZSIKK21zZ3N0ciAiZmVqbCB2ZWQgbHVrbmluZyBhZiBkYXRha2FuYWwgZm9yIGZpbmQiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmluZCBmb3IgLS1yZWN1cnNpdmUgcmV0dXJuZWQgdW5oYW5kbGVkIGVycm9yICVpIgorbXNnc3RyICJmaW5kIGZvciAtLXJlY3Vyc2l2ZSByZXR1cm5lcmVkZSB1Zm9ydWRzZXQgZmVqbCAlaSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3OQorbXNnaWQgInNlYXJjaGVkLCBidXQgZm91bmQgbm8gcGFja2FnZXMgKGZpbGVzIG1hdGNoaW5nICouZGViKSIKK21zZ3N0ciAic8O4Z3RlLCBtZW4gZmFuZHQgaW5nZW4gcGFra2VyIChmaWxlciwgZGVyIG1hdGNoZXIgKi5kZWIpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjkwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYXQgbGVhc3Qgb25lIHBhY2thZ2UgYXJjaGl2ZSBmaWxlIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIGtyw6Z2ZXIgbWluZHN0IMOpbiBwYWtrZWFya2l2ZmlsIHNvbSBhcmd1bWVudCIKKworIzogc3JjL2FyY2hpdmVzLmM6MTMyNSBzcmMvZGl2ZXJ0Y21kLmM6Nzggc3JjL2RpdmVydGNtZC5jOjExOAorIzogc3JjL2VucXVpcnkuYzoxNjYgc3JjL2VucXVpcnkuYzoyNzkgc3JjL2VucXVpcnkuYzo0NDkgc3JjL2VucXVpcnkuYzo0NTEKKyM6IHNyYy9lbnF1aXJ5LmM6NDY0IHNyYy9tYWluLmM6NjYgc3JjL21haW4uYzoxNjMgc3JjL21haW4uYzozMTQKKyM6IHNyYy9tYWluLmM6NDkzIHNyYy9wYWNrYWdlcy5jOjI1NCBzcmMvcXVlcnljbWQuYzoyNTIgc3JjL3F1ZXJ5Y21kLmM6MzU1CisjOiBzcmMvcXVlcnljbWQuYzozOTYgc3JjL3F1ZXJ5Y21kLmM6NDA0IHNyYy9xdWVyeWNtZC5jOjQ0OCBzcmMvcXVlcnljbWQuYzo1MTcKKyM6IHNyYy9xdWVyeWNtZC5jOjYwNiBzcmMvcXVlcnljbWQuYzo2NTAgc3JjL3NlbGVjdC5jOjc5IHNyYy9zdGF0Y21kLmM6NjgKKyM6IHNyYy9zdGF0Y21kLmM6OTggc3JjL3RyaWdjbWQuYzo1OCBzcmMvdHJpZ2NtZC5jOjkwIGRwa2ctZGViL2J1aWxkLmM6NDQxCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjE3IGRwa2ctZGViL2V4dHJhY3QuYzoyNTAgZHBrZy1kZWIvaW5mby5jOjIwMworIzogZHBrZy1kZWIvaW5mby5jOjI2NSBkcGtnLWRlYi9tYWluLmM6NjAgZHBrZy1kZWIvbWFpbi5jOjEyNgorIzogZHBrZy1zcGxpdC9pbmZvLmM6MjU3IGRwa2ctc3BsaXQvbWFpbi5jOjU0IGRwa2ctc3BsaXQvbWFpbi5jOjk4CisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTQ0IGRwa2ctc3BsaXQvcXVldWUuYzoyODAKK21zZ2lkICI8c3RhbmRhcmQgb3V0cHV0PiIKK21zZ3N0ciAiPHN0YW5kYXJkLXVkZGF0YT4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzMjYgc3JjL3BhY2thZ2VzLmM6MjU1IHNyYy9xdWVyeWNtZC5jOjI1MworIzogc3JjL3F1ZXJ5Y21kLmM6MzUzIHNyYy9xdWVyeWNtZC5jOjQ1NCBzcmMvcXVlcnljbWQuYzo1MTggc3JjL3NlbGVjdC5jOjgwCisjOiBkcGtnLXNwbGl0L21haW4uYzoxNjkgZHBrZy1zcGxpdC9xdWV1ZS5jOjIxOAorbXNnaWQgIjxzdGFuZGFyZCBlcnJvcj4iCittc2dzdHIgIjxzdGFuZGFyZC1mZWpsPiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTM2NworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiU2VsZWN0aW5nIHByZXZpb3VzbHkgZGVzZWxlY3RlZCBwYWNrYWdlICVzLlxuIgorbXNnaWQgIlNlbGVjdGluZyBwcmV2aW91c2x5IHVuc2VsZWN0ZWQgcGFja2FnZSAlcy5cbiIKK21zZ3N0ciAiVsOmbGdlciB0aWRsaWdlcmUgZnJhdmFsZ3QgcGFra2UgJXMuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzNzEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIlNraXBwaW5nIGRlc2VsZWN0ZWQgcGFja2FnZSAlcy5cbiIKK21zZ2lkICJTa2lwcGluZyB1bnNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dzdHIgIk92ZXJzcHJpbmdlciB0aWRsaWdlcmUgZnJhdmFsZ3QgcGFra2UgJXMuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiVmVyc2lvbiAlLjI1MHMgb2YgJS4yNTBzIGFscmVhZHkgaW5zdGFsbGVkLCBza2lwcGluZy5cbiIKK21zZ3N0ciAiVmVyc2lvbiAlLjI1MHMgYWYgJS4yNTBzIGVyIGFsbGVyZWRlIGluc3RhbGxlcmV0LCBzcHJpbmdlciBvdmVyLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzk3CisjLCBjLWZvcm1hdAorbXNnaWQgImRvd25ncmFkaW5nICUuMjUwcyBmcm9tICUuMjUwcyB0byAlLjI1MHMuIgorbXNnc3RyICJuZWRncmFkZXJlciAlLjI1MHMgZnJhICUuMjUwcyB0aWwgJS4yNTBzLiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTQwMgorIywgYy1mb3JtYXQKK21zZ2lkICJXaWxsIG5vdCBkb3duZ3JhZGUgJS4yNTBzIGZyb20gdmVyc2lvbiAlLjI1MHMgdG8gJS4yNTBzLCBza2lwcGluZy5cbiIKK21zZ3N0ciAiIgorIlZpbCBpa2tlIG5lZGdyYWRlcmUgJS4yNTBzIGZyYSB2ZXJzaW9uICUuMjUwcyB0aWwgJS4yNTBzLCBzcHJpbmdlciBvdmVyLlxuIgorCisjOiBzcmMvY2xlYW51cC5jOjg2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1bmFibGUgdG8gcmVtb3ZlIG5ld2x5LWluc3RhbGxlZCB2ZXJzaW9uIG9mIGAlLjI1MHMnIHRvIGFsbG93IHJlaW5zdGFsbGF0aW9uICIKKyJvZiBiYWNrdXAgY29weSIKK21zZ3N0ciAiIgorImt1bm5lIGlra2Ugc2xldHRlIG55aW5zdGFsbGVyZXQgdmVyc2lvbiBhZiAnJS4yNTBzJyBmb3IgYXQgdGlsbGFkZSAiCisiZ2VuaW5zdGFsbGF0aW9uIGFmIHNpa2tlcmhlZHNrb3BpIgorCisjOiBzcmMvY2xlYW51cC5jOjkzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZXN0b3JlIGJhY2t1cCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICJrdW5uZSBpa2tlIGdlbnNrYWJlIHNpa2tlcmhlZHNrb3BpLXZlcnNpb24gYWYgJyUuMjUwcyciCisKKyM6IHNyYy9jbGVhbnVwLmM6OTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBiYWNrdXAgY29weSBvZiAnJS4yNTBzJyIKK21zZ3N0ciAia2FuIGlra2UgZmplcm5lIHNpa2tlcmhlZHNrb3BpIGFmICclLjI1MHMnIgorCisjOiBzcmMvY2xlYW51cC5jOjEwMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIG5ld2x5LWluc3RhbGxlZCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICJrYW4gaWtrZSBzbGV0dGUgbnlpbnN0YWxsZXJldCB2ZXJzaW9uIGFmICclLjI1MHMnIgorCisjOiBzcmMvY2xlYW51cC5jOjEwOAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIG5ld2x5LWV4dHJhY3RlZCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICJrYW4gaWtrZSBzbGV0dGUgbnl1ZHBha2tldCB2ZXJzaW9uIGFmICclLjI1MHMnIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTA0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IG5ldyBkaXN0cmlidXRlZCBjb25mZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAia2FuIGlra2UgdGlsZ8OlIG55IGRpc3RyaWJ1ZXJldCBrb25maWd1cmF0aW9uc2ZpbCAnJS4yNTBzJyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBjdXJyZW50IGluc3RhbGxlZCBjb25mZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia2FuIGlra2UgdGlsZ8OlIGRlbiBpbnN0YWxsZXJlZGUgbWVkc2VuZHRlIGtvbmZpZ3VyYXRpb25zZmlsICclLjI1MHMnIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTI2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJDb25maWd1cmF0aW9uIGZpbGUgYCVzJywgZG9lcyBub3QgZXhpc3Qgb24gc3lzdGVtLlxuIgorIkluc3RhbGxpbmcgbmV3IGNvbmZpZyBmaWxlIGFzIHlvdSByZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiIKKyJcbiIKKyJLb25maWd1cmF0aW9uc2ZpbGVuICclcycgZWtzaXN0ZXJlciBpa2tlIHDDpSBzeXN0ZW1ldC5cbiIKKyJJbnN0YWxsZXJlciBueSBrb25maWd1cmF0aW9uc2ZpbCBlZnRlciBkaXQgw7huc2tlLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTY4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlIG9sZCBiYWNrdXAgJyUuMjUwcyc6ICVzIgorbXNnc3RyICIlczoga3VubmUgaWtrZSBmamVybmUgZ2FtbWVsIHNpa2tlcmhlZHNrb3BpICclLjI1MHMnOiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE3NgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIHJlbmFtZSAnJS4yNTBzJyB0byAnJS4yNTBzJzogJXMiCittc2dzdHIgIiVzOiBrdW5uZSBpa2tlIG9tZMO4YmUgJyUuMjUwcycgdGlsICclLjI1MHMnOiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE4MgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIHJlbW92ZSAnJS4yNTBzJzogJXMiCittc2dzdHIgIiVzOiBrdW5uZSBpa2tlIGZqZXJuZSAnJS4yNTBzJzogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxODgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW1vdmUgb2xkIGRpc3RyaWJ1dGVkIHZlcnNpb24gJyUuMjUwcyc6ICVzIgorbXNnc3RyICIlczoga3VubmUgaWtrZSBmamVybmUgdGlkbGlnZXJlIGRpc3RyaWJ1ZXJldCB2ZXJzaW9uICclLjI1MHMnOiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE5MgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIHJlbW92ZSAnJS4yNTBzJyAoYmVmb3JlIG92ZXJ3cml0ZSk6ICVzIgorbXNnc3RyICIlczoga3VubmUgaWtrZSBmamVybmUgJyUuMjUwcycgKGluZGVuIG92ZXJza3Jpdm5pbmcpOiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE5NgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIGxpbmsgJyUuMjUwcycgdG8gJyUuMjUwcyc6ICVzIgorbXNnc3RyICIlczoga3VubmUgaWtrZSBsw6Zua2UgJyUuMjUwcycgdGlsICclLjI1MHMnOiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjIwMAorIywgYy1mb3JtYXQKK21zZ2lkICJJbnN0YWxsaW5nIG5ldyB2ZXJzaW9uIG9mIGNvbmZpZyBmaWxlICVzIC4uLlxuIgorbXNnc3RyICJJbnN0YWxsZXJlciBueSB2ZXJzaW9uIGFmIGtvbmZpZ3VyYXRpb25zZmlsICVzLi4uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzoyMDYgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjU0NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBgJS4yNTBzJyBhcyBgJS4yNTBzJyIKK21zZ3N0ciAia3VubmUgaWtrZSBpbnN0YWxsZXJlICclLjI1MHMnIHNvbSAnJS4yNTBzJyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI1NworIywgYy1mb3JtYXQKK21zZ2lkICJubyBwYWNrYWdlIG5hbWVkIGAlcycgaXMgaW5zdGFsbGVkLCBjYW5ub3QgY29uZmlndXJlIgorbXNnc3RyICJpbmdlbiBwYWtrZSBtZWQgbmF2bmV0ICclcycgaW5zdGFsbGVyZXQsIGthbiBpa2tlIGtvbmZpZ3VyZXJlIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjYwCisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgJS4yNTBzIGlzIGFscmVhZHkgaW5zdGFsbGVkIGFuZCBjb25maWd1cmVkIgorbXNnc3RyICJwYWtrZW4gJS4yNTBzIGVyIGFsbGVyZWRlIGluc3RhbGxlcmV0IG9nIGtvbmZpZ3VyZXJldCIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI2MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisicGFja2FnZSAlLjI1MHMgaXMgbm90IHJlYWR5IGZvciBjb25maWd1cmF0aW9uXG4iCisiIGNhbm5vdCBjb25maWd1cmUgKGN1cnJlbnQgc3RhdHVzIGAlLjI1MHMnKSIKK21zZ3N0ciAiIgorInBha2tlbiAlLjI1MHMgaWtrZSBrbGFyIHRpbCBrb25maWd1cmF0aW9uXG4iCisiIGthbiBpa2tlIGtvbmZpZ3VyZXJlIChudXbDpnJlbmRlIHN0YXR1cyAnJS4yNTBzJykiCisKKyM6IHNyYy9jb25maWd1cmUuYzoyOTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IGRlcGVuZGVuY3kgcHJvYmxlbXMgcHJldmVudCBjb25maWd1cmF0aW9uIG9mICVzOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogYWZow6ZuZ2lnaGVkc3Byb2JsZW1lciBmb3JoaW5kcmVyIGtvbmZpZ3VyYXRpb24gYWYgJXM6XG4iCisiJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoyOTcKK21zZ2lkICJkZXBlbmRlbmN5IHByb2JsZW1zIC0gbGVhdmluZyB1bmNvbmZpZ3VyZWQiCittc2dzdHIgImFmaMOmbmdpZ2hlZHNwcm9ibGVtZXIgLSBlZnRlcmxhZGVyIGRlbiB1a29uZmlndXJlcmV0IgorCisjOiBzcmMvY29uZmlndXJlLmM6MzAxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiAlczogZGVwZW5kZW5jeSBwcm9ibGVtcywgYnV0IGNvbmZpZ3VyaW5nIGFueXdheSBhcyB5b3UgcmVxdWVzdGVkOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogJXM6IGFmaMOmbmdpZ2hlZHNwcm9ibGVtZXIsIG1lbiBrb25maWd1cmVyZXIgYWxsaWdldmVsLCBzb20gZHUgIgorIsO4bnNrZWRlOlxuIgorIiVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MzA5Cittc2dpZCAiIgorIlBhY2thZ2UgaXMgaW4gYSB2ZXJ5IGJhZCBpbmNvbnNpc3RlbnQgc3RhdGUgLSB5b3Ugc2hvdWxkXG4iCisiIHJlaW5zdGFsbCBpdCBiZWZvcmUgYXR0ZW1wdGluZyBjb25maWd1cmF0aW9uLiIKK21zZ3N0ciAiIgorIlBha2tlIGVyIGkgZW4gbWVnZXQgaW5rb25zaXN0ZW50IHRpbHN0YW5kIC0gZHUgYnVyZGVcbiIKKyIgb21pbnN0YWxsZXJlIGRlbiwgZsO4ciBkdSBmb3Jzw7hnZXIga29uZmlndXJhdGlvbi4iCisKKyM6IHNyYy9jb25maWd1cmUuYzozMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2V0dGluZyB1cCAlcyAoJXMpIC4uLlxuIgorbXNnc3RyICJTw6Z0dGVyICVzICglcykgb3AuLi5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjM5NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IHVuYWJsZSB0byBzdGF0IGNvbmZpZyBmaWxlICclcydcbiIKKyIgKD0gJyVzJyk6ICVzIgorbXNnc3RyICIiCisiJXM6IGthbiBpa2tlIHRpbGfDpSBrb25maWd1cmF0aW9uc2ZpbCAnJXMnXG4iCisiICg9ICclcycpOiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQwOQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IGNvbmZpZyBmaWxlICclcycgaXMgYSBjaXJjdWxhciBsaW5rXG4iCisiICg9ICclcycpIgorbXNnc3RyICIiCisiJXM6IGtvbmZpZ3VyYXRpb25zZmlsICclcycgZXIgZW4gc2VsdnJlZmVyZXJlbmRlIGzDpm5rZVxuIgorIiAoPSAnJXMnKSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQxOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IHVuYWJsZSB0byByZWFkbGluayBjb25mZmlsZSAnJXMnXG4iCisiICg9ICclcycpOiAlcyIKK21zZ3N0ciAiIgorIiVzOiBrYW4gaWtrZSBsw6ZzZSBsw6Zua2VuIGZvciBrb25maWd1cmF0aW9uc2ZpbCAnJXMnXG4iCisiICg9ICclcycpOiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQ0NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IGNvbmZmaWxlICclLjI1MHMnIHJlc29sdmVzIHRvIGRlZ2VuZXJhdGUgZmlsZW5hbWVcbiIKKyIgKCclcycgaXMgYSBzeW1saW5rIHRvICclcycpIgorbXNnc3RyICIiCisiJXM6IGtvbmZpZ3VyYXRpb25zZmlsICclLjI1MHMnIGJsaXZlciB0aWwgZXQgZGVnZW5lcmVyZXQgZmlsbmF2blxuIgorIiAoJyVzJyBlciBzeW1ib2xzayBsw6Zua2UgdGlsICclcycpIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDYwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBjb25mZmlsZSAnJS4yNTBzJyBpcyBub3QgYSBwbGFpbiBmaWxlIG9yIHN5bWxpbmsgKD0gJyVzJykiCittc2dzdHIgIiIKKyIlczoga29uZmlndXJhdGlvbnNmaWwgJyUuMjUwcycgZXIgaHZlcmtlbiBlbiBhbG1pbmRlbGlnIGZpbCBlbGxlciBzeW1ib2xzayAiCisibMOmbmtlICg9ICclcycpIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDg2Cittc2dpZCAibWQ1aGFzaCIKK21zZ3N0ciAibWQ1aGFzaCIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQ5MgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogdW5hYmxlIHRvIG9wZW4gY29uZmZpbGUgJXMgZm9yIGhhc2g6ICVzIgorbXNnc3RyICIlczoga2FuIGlra2Ugw6VibmUga29uZmlndXJhdGlvbnNmaWwgJXMgdGlsIGhhc2huaW5nOiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjUyMiBzcmMvY29uZmlndXJlLmM6NTI2Cittc2dpZCAiY29uZmZpbGUgZGlmZmVyZW5jZSB2aXN1YWxpemVyIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo1NDMKK21zZ2lkICJUeXBlIGBleGl0JyB3aGVuIHlvdSdyZSBkb25lLlxuIgorbXNnc3RyICJTa3JpdiAnZXhpdCcsIG7DpXIgZHUgZXIgZsOmcmRpZy5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjU1MiBzcmMvY29uZmlndXJlLmM6NTU2Cittc2dpZCAiY29uZmZpbGUgc2hlbGwiCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYwMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiQ29uZmlndXJhdGlvbiBmaWxlIGAlcyciCittc2dzdHIgIiIKKyJcbiIKKyJLb25maWd1cmF0aW9uc2ZpbCAnJXMnIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjA0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAoYWN0dWFsbHkgYCVzJykiCittc2dzdHIgIiAoZmFrdGlzayAnJXMnKSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYwOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiID09PiBGaWxlIG9uIHN5c3RlbSBjcmVhdGVkIGJ5IHlvdSBvciBieSBhIHNjcmlwdC5cbiIKKyIgPT0+IEZpbGUgYWxzbyBpbiBwYWNrYWdlIHByb3ZpZGVkIGJ5IHBhY2thZ2UgbWFpbnRhaW5lci5cbiIKK21zZ3N0ciAiIgorIlxuIgorIiA9PT4gRmlsZW4gcMOlIHN5c3RlbWV0IG9wcmV0dGV0IGFmIGRpZyBlbGxlciBhZiBldCBzY3JpcHQuXG4iCisiID09PiBGaWxlbiBlciBvZ3PDpSBpIHBha2tlbiBmcmEgcGFra2VhZG1pbmlzdHJhdG9yZW4uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiAgICAgTm90IG1vZGlmaWVkIHNpbmNlIGluc3RhbGxhdGlvbi5cbiIKK21zZ3N0ciAiIgorIlxuIgorIiAgICAgVcOmbmRyZXQgc2lkZW4gaW5zdGFsbGF0aW9uZW4uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiA9PT4gTW9kaWZpZWQgKGJ5IHlvdSBvciBieSBhIHNjcmlwdCkgc2luY2UgaW5zdGFsbGF0aW9uLlxuIgorbXNnc3RyICIiCisiXG4iCisiID09PiDDhm5kcmV0IChhZiBkaWcgZWxsZXIgYWYgZXQgc2NyaXB0KSBzaWRlbiBpbnN0YWxsYXRpb25lbi5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYxNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiID09PiBEZWxldGVkIChieSB5b3Ugb3IgYnkgYSBzY3JpcHQpIHNpbmNlIGluc3RhbGxhdGlvbi5cbiIKK21zZ3N0ciAiIgorIlxuIgorIiA9PT4gw4ZuZHJldCAoYWYgZGlnIGVsbGVyIGFmIGV0IHNjcmlwdCkgc2lkZW4gaW5zdGFsbGF0aW9uZW4uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBQYWNrYWdlIGRpc3RyaWJ1dG9yIGhhcyBzaGlwcGVkIGFuIHVwZGF0ZWQgdmVyc2lvbi5cbiIKK21zZ3N0ciAiID09PiBQYWtrZWRpc3RyaWJ1dMO4ciBoYXIgZnJpZ2l2ZXQgZW4gb3BkYXRlcmV0IHZlcnNpb24uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAgICBWZXJzaW9uIGluIHBhY2thZ2UgaXMgdGhlIHNhbWUgYXMgYXQgbGFzdCBpbnN0YWxsYXRpb24uXG4iCittc2dzdHIgIiAgICAgVmVyc2lvbmVuIGkgcGFra2VuIGVyIGRlbiBzYW1tZSBzb20gdmVkIHNpZHN0ZSBpbnN0YWxsYXRpb24uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBVc2luZyBuZXcgZmlsZSBhcyB5b3UgcmVxdWVzdGVkLlxuIgorbXNnc3RyICIgPT0+IEJlbnl0dGVyIG55IGZpbCBlZnRlciBkaXQgw7huc2tlLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gVXNpbmcgY3VycmVudCBvbGQgZmlsZSBhcyB5b3UgcmVxdWVzdGVkLlxuIgorbXNnc3RyICIgPT0+IEJlbnl0dGVyIGVrc2lzdGVyZW5kZSBnYW1tZWwgZmlsIGVmdGVyIGRpdCDDuG5za2UuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBLZWVwaW5nIG9sZCBjb25maWcgZmlsZSBhcyBkZWZhdWx0LlxuIgorbXNnc3RyICIgPT0+IEJlaG9sZGVyIGdhbW1lbCBrb25maWd1cmF0aW9uc2ZpbCBzb20gc3RhbmRhcmQuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBVc2luZyBuZXcgY29uZmlnIGZpbGUgYXMgZGVmYXVsdC5cbiIKK21zZ3N0ciAiID09PiBCZW55dHRlciBueSBrb25maWd1cmF0aW9uc2ZpbCBzb20gc3RhbmRhcmQuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiAgIFdoYXQgd291bGQgeW91IGxpa2UgdG8gZG8gYWJvdXQgaXQgPyAgWW91ciBvcHRpb25zIGFyZTpcbiIKKyIgICAgWSBvciBJICA6IGluc3RhbGwgdGhlIHBhY2thZ2UgbWFpbnRhaW5lcidzIHZlcnNpb25cbiIKKyIgICAgTiBvciBPICA6IGtlZXAgeW91ciBjdXJyZW50bHktaW5zdGFsbGVkIHZlcnNpb25cbiIKKyIgICAgICBEICAgICA6IHNob3cgdGhlIGRpZmZlcmVuY2VzIGJldHdlZW4gdGhlIHZlcnNpb25zXG4iCisiICAgICAgWiAgICAgOiBzdGFydCBhIHNoZWxsIHRvIGV4YW1pbmUgdGhlIHNpdHVhdGlvblxuIgorbXNnc3RyICIiCisiICAgSHZhZCB2aWwgZHUgZ8O4cmUgdmVkIGRldD8gRGluZSBtdWxpZ2hlZGVyIGVyOlxuIgorIiAgICBZIGVsbGVyIEkgIDogaW5zdGFsbMOpciBwYWtrZWFkbWluaXN0cmF0b3JlbnMgdmVyc2lvblxuIgorIiAgICBOIGVsbGVyIE8gIDogYmVob2xkIGRlbiBudXbDpnJlbmRlIHZlcnNpb25cbiIKKyIgICAgICAgIEQgICAgICA6IHZpcyBmb3Jza2VsbGVuIG1lbGxlbSB2ZXJzaW9uZXJuZVxuIgorIiAgICAgICAgWiAgICAgIDogc3RhcnQgZW4gc2thbCBmb3IgYXQgdW5kZXJzw7hnZSBzaXR1YXRpb25lblxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjU5CisjLCBjLWZvcm1hdAorbXNnaWQgIiBUaGUgZGVmYXVsdCBhY3Rpb24gaXMgdG8ga2VlcCB5b3VyIGN1cnJlbnQgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIERlbiBmb3J2YWxndGUgaGFuZGxpbmcgZXIgYXQgYmVob2xkZSBkZW4gZWtzaXN0ZXJlbmRlIHZlcnNpb24uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIFRoZSBkZWZhdWx0IGFjdGlvbiBpcyB0byBpbnN0YWxsIHRoZSBuZXcgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIERlbiBmb3J2YWxndGUgaGFuZGxpbmcgZXIgYXQgaW5zdGFsbGVyZSBlbiBueSB2ZXJzaW9uLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjY2Cittc2dpZCAiW2RlZmF1bHQ9Tl0iCittc2dzdHIgIltmb3J2YWxndD1OXSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY2NworbXNnaWQgIltkZWZhdWx0PVldIgorbXNnc3RyICJbZm9ydmFsZ3Q9WV0iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NjgKK21zZ2lkICJbbm8gZGVmYXVsdF0iCittc2dzdHIgIltpbmdlbiBmb3J2YWxndCBoYW5kbGluZ10iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NzEKK21zZ2lkICJlcnJvciB3cml0aW5nIHRvIHN0ZGVyciwgZGlzY292ZXJlZCBiZWZvcmUgY29uZmZpbGUgcHJvbXB0IgorbXNnc3RyICIiCisiZmVqbCB2ZWQgc2tyaXZuaW5nIHRpbCBzdGFuZGFyZGZlamwsIG9wZGFnZXQgaW5kZW4ga29uZmlndXJhdGlvbnNmaWwtcHJvbXB0IgorCisjOiBzcmMvY29uZmlndXJlLmM6NjgwCittc2dpZCAicmVhZCBlcnJvciBvbiBzdGRpbiBhdCBjb25mZmlsZSBwcm9tcHQiCittc2dzdHIgImzDpnNlZmVqbCBww6Ugc3RhbmRhcmQtaW5kIHZlZCBrb25maWd1cmF0aW9uc2ZpbC1wcm9tcHQiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2ODEKK21zZ2lkICJFT0Ygb24gc3RkaW4gYXQgY29uZmZpbGUgcHJvbXB0IgorbXNnc3RyICJTbHV0LXDDpS1maWwgdmVkIHN0YW5kYXJkLWluZCB2ZWQga29uZmlndXJhdGlvbnNmaWwtcHJvbXB0IgorCisjOiBzcmMvZGVwY29uLmM6MTc1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGRlcGVuZHMgb24gJXMiCittc2dzdHIgIiVzIGFmaMOmbmdlciBhZiAlcyIKKworIzogc3JjL2RlcGNvbi5jOjE3OAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBwcmUtZGVwZW5kcyBvbiAlcyIKK21zZ3N0ciAiJXMgYWZow6ZuZ2VyIGkgZm9ydmVqZW4gYWYgJXMiCisKKyM6IHNyYy9kZXBjb24uYzoxODEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcmVjb21tZW5kcyAlcyIKK21zZ3N0ciAiJXMgYW5iZWZhbGVyICVzIgorCisjOiBzcmMvZGVwY29uLmM6MTg0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHN1Z2dlc3RzICVzIgorbXNnc3RyICIlcyBmb3Jlc2zDpXIgJXMiCisKKyM6IHNyYy9kZXBjb24uYzoxODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgYnJlYWtzICVzIgorbXNnc3RyICIlcyBlciBpIGtvbmZsaWt0IG1lZCAlcyIKKworIzogc3JjL2RlcGNvbi5jOjE5MAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBjb25mbGljdHMgd2l0aCAlcyIKK21zZ3N0ciAiJXMgZXIgaSBrb25mbGlrdCBtZWQgJXMiCisKKyM6IHNyYy9kZXBjb24uYzoxOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgZW5oYW5jZXMgJXMiCittc2dzdHIgIiVzIGZvcmJlZHJlciAlcyIKKworIzogc3JjL2RlcGNvbi5jOjI5NgorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyB2aWwgYmxpdmUgc2xldHRldC5cbiIKKworIzogc3JjL2RlcGNvbi5jOjI5OQorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB0byBiZSBkZWNvbmZpZ3VyZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIHZpbCBibGl2ZSBkZWtvbmZpZ3VyZXJldC5cbiIKKworIzogc3JjL2RlcGNvbi5jOjMwNAorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB0byBiZSBpbnN0YWxsZWQsIGJ1dCBpcyB2ZXJzaW9uICUuMjUwcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgdmlsIGJsaXZlIGluc3RhbGxlcmV0LCBtZW4gdmVyc2lvbmVuIGVyICUuMjUwcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjMxNAorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyBpbnN0YWxsZWQsIGJ1dCBpcyB2ZXJzaW9uICUuMjUwcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgZXIgaW5zdGFsbGVyZXQsIG1lbiB2ZXJzaW9uZW4gZXIgJS4yNTBzLlxuIgorCisjOiBzcmMvZGVwY29uLmM6MzMzCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHVucGFja2VkLCBidXQgaGFzIG5ldmVyIGJlZW4gY29uZmlndXJlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMgZXIgdWRwYWtrZXQsIG1lbiBibGV2IGFsZHJpZyBrb25maWd1cmVyZXQuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdW5wYWNrZWQsIGJ1dCBpcyB2ZXJzaW9uICUuMjUwcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgZXIgdWRwYWtrZXQsIG1lbiB2ZXJzaW9uZW4gZXIgJS4yNTBzLlxuIgorCisjOiBzcmMvZGVwY29uLmM6MzQzCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGxhdGVzdCBjb25maWd1cmVkIHZlcnNpb24gaXMgJS4yNTBzLlxuIgorbXNnc3RyICIgICUuMjUwcyBzaWRzdCBrb25maWd1cmVyZWRlIHZlcnNpb24gZXIgJS4yNTBzLlxuIgorCisjOiBzcmMvZGVwY29uLmM6MzUzCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzICVzLlxuIgorbXNnc3RyICIgICUuMjUwcyBlciAlcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjM4OAorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYnV0IGlzIHRvIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIGdpdmVyICUuMjUwcywgbWVuIHBsYW5sw6ZnZ2VzIGFmaW5zdGFsbGVyZXQuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGJ1dCBpcyB0byBiZSBkZWNvbmZpZ3VyZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIGdpdmVyICUuMjUwcywgbWVuIHBsYW5sw6ZnZ2VzIGRla29uZmlndXJlcmV0LlxuIgorCisjOiBzcmMvZGVwY29uLmM6NDAxCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBidXQgaXMgJXMuXG4iCittc2dzdHIgIiAgJS4yNTBzIGdpdmVyICUuMjUwcywgbWVuIGVyICVzLlxuIgorCisjOiBzcmMvZGVwY29uLmM6NDE1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIG5vdCBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIGVyIGlra2UgaW5zdGFsbGVyZXQuXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgKHZlcnNpb24gJS4yNTBzKSBpcyB0byBiZSBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzICh2ZXJzaW9uICUuMjUwcykgdmlsIGJsaXZlIGluc3RhbGxlcmV0LlxuIgorCisjOiBzcmMvZGVwY29uLmM6NDY4CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzICh2ZXJzaW9uICUuMjUwcykgaXMgcHJlc2VudCBhbmQgJXMuXG4iCittc2dzdHIgIiAgJS4yNTBzICh2ZXJzaW9uICUuMjUwcykgZXIgdGlsIHN0ZWRlIG9nICVzLlxuIgorCisjOiBzcmMvZGVwY29uLmM6NDk1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBhbmQgaXMgdG8gYmUgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIgICUuMjUwcyBnaXZlciAlLjI1MHMgb2cgdmlsIGJsaXZlIGluc3RhbGxlcmV0LlxuIgorCisjOiBzcmMvZGVwY29uLmM6NTM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBhbmQgaXMgcHJlc2VudCBhbmQgJXMuXG4iCittc2dzdHIgIiAgJS4yNTBzIGdpdmVyICUuMjUwcyBvZyBlciB0aWwgc3RlZGUgb2cgJXMuXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MAorIywgZnV6enkKKyN8IG1zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IHF1ZXJ5aW5nIHBhY2thZ2VzLiIKK21zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IGRpdmVydGluZyBmaWxlcy4iCittc2dzdHIgIkJydWcgLS1oZWxwIGZvciBhdCBmw6UgaGrDpmxwIG9tIHBha2tlZm9yZXNww7hyZ3NlbC4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo2NiBzcmMvc3RhdGNtZC5jOjU3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo4MAorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gJXMgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiRGViaWFuICVzIHZlcnNpb24gJXMuXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo3MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDEwIEd1aWxsZW0gSm92ZXIuXG4iCittc2dzdHIgIiIKKyJPcGhhdnNyZXQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisiT3BoYXZzcmV0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJPcGhhdnNyZXQgKEMpIDIwMTAgR3VpbGxlbSBKb3Zlci5cbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjc1IHNyYy9tYWluLmM6NjMgc3JjL3F1ZXJ5Y21kLmM6NjAzIHNyYy9zdGF0Y21kLmM6NjUKKyM6IHNyYy90cmlnY21kLmM6NTUgZHBrZy1kZWIvbWFpbi5jOjU3IGRwa2ctc3BsaXQvbWFpbi5jOjUxCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6ODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgb3JcbiIKKyJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKK21zZ3N0ciAiIgorIkRldHRlIGVyIGZyaXQgcHJvZ3JhbW1lbDsgc2UgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAyIGVsbGVyXG4iCisic2VuZXJlIGZvciBrb3BpZXJpbmdzYmV0aW5nZWxzZXJuZS4gRGVyIGVyIElOR0VOIGdhcmFudGkuXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo4NyBzcmMvbWFpbi5jOjgxIHNyYy9xdWVyeWNtZC5jOjYxNSBzcmMvc3RhdGNtZC5jOjc3CisjOiBkcGtnLWRlYi9tYWluLmM6NjkgZHBrZy1zcGxpdC9tYWluLmM6NjMgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjk3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gPGNvbW1hbmQ+XG4iCisiXG4iCittc2dzdHIgIiIKKyJCcnVnOiAlcyBbPHRpbHZhbGc+IC4uLl0gPGtvbW1hbmRvPlxuIgorIlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6OTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgWy0tYWRkXSA8ZmlsZT4gICAgICAgICAgIGFkZCBhIGRpdmVyc2lvbi5cbiIKKyIgIC0tcmVtb3ZlIDxmaWxlPiAgICAgICAgICByZW1vdmUgdGhlIGRpdmVyc2lvbi5cbiIKKyIgIC0tbGlzdCBbPGdsb2ItcGF0dGVybj5dICBzaG93IGZpbGUgZGl2ZXJzaW9ucy5cbiIKKyIgIC0tbGlzdHBhY2thZ2UgPGZpbGU+ICAgICBzaG93IHdoYXQgcGFja2FnZSBkaXZlcnRzIHRoZSBmaWxlLlxuIgorIiAgLS10cnVlbmFtZSA8ZmlsZT4gICAgICAgIHJldHVybiB0aGUgZGl2ZXJ0ZWQgZmlsZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIktvbW1hbmRvZXI6XG4iCisiICBbLS1hZGRdIDxmaWw+ICAgICAgICAgICAgdGlsZsO4aiBlbiBvbWRpcmlnZXJpbmcuXG4iCisiICAtLXJlbW92ZSA8ZmlsPiAgICAgICAgICAgZmplcm4gb21kaXJpZ2VyaW5nZW4uXG4iCisiICAtLWxpc3QgWzxnbG9iLW3DuG5zdGVyPl0gIHZpcyBvbWRpcmlnZXJpbmdlciBmb3IgZmlsLlxuIgorIiAgLS1saXN0cGFja2FnZSA8ZmlsPiAgICAgIHZpcyBwYWtrZW4sIGRlciBvbWRpcmlnZXJlciBmaWxlbi5cbiIKKyIgIC0tdHJ1ZW5hbWUgPGZpbD4gICAgICAgICByZXR1cm7DqXIgZGVuIG9tZGlyaWdlcmVkZSBmaWwuXG4iCisiXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoxMDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLXBhY2thZ2UgPHBhY2thZ2U+ICAgICAgbmFtZSBvZiB0aGUgcGFja2FnZSB3aG9zZSBjb3B5IG9mIDxmaWxlPiB3aWxsICIKKyJub3RcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJlIGRpdmVydGVkLlxuIgorIiAgLS1sb2NhbCAgICAgICAgICAgICAgICAgIGFsbCBwYWNrYWdlcycgdmVyc2lvbnMgYXJlIGRpdmVydGVkLlxuIgorIiAgLS1kaXZlcnQgPGRpdmVydC10bz4gICAgIHRoZSBuYW1lIHVzZWQgYnkgb3RoZXIgcGFja2FnZXMnIHZlcnNpb25zLlxuIgorIiAgLS1yZW5hbWUgICAgICAgICAgICAgICAgIGFjdHVhbGx5IG1vdmUgdGhlIGZpbGUgYXNpZGUgKG9yIGJhY2spLlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIHNldCB0aGUgZGlyZWN0b3J5IHdpdGggdGhlIGRpdmVyc2lvbnMgZmlsZS5cbiIKKyIgIC0tdGVzdCAgICAgICAgICAgICAgICAgICBkb24ndCBkbyBhbnl0aGluZywganVzdCBkZW1vbnN0cmF0ZS5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBxdWlldCBvcGVyYXRpb24sIG1pbmltYWwgb3V0cHV0LlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIlRpbHZhbGc6XG4iCisiICAtLXBhY2thZ2UgPHBha2tlPiAgICAgICAgbmF2biBww6UgcGFra2VuLCBodmlzIGtvcGkgYWYgPGZpbD4gaWtrZSB2aWxcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJsaXZlIG9tZGlyaWdlcmV0LlxuIgorIiAgLS1sb2NhbCAgICAgICAgICAgICAgICAgIGFsbGUgcGFra2V2ZXJzaW9uZXIgb21kaXJpZ2VyZXMuXG4iCisiICAtLWRpdmVydCA8b21kaXJpZ8Opci10aWw+ICBuYXZuZXQsIGRlciBiZW55dHRlcyBhZiBhbmRyZSBwYWtrZXJzICIKKyJ2ZXJzaW9uZXIuXG4iCisiICAtLXJlbmFtZSAgICAgICAgICAgICAgICAgZmx5dCBmaWxlbiB0aWwgc2lkZSAoZWxsZXIgdGlsYmFnZSkuXG4iCisiICAtLWFkbWluZGlyIDxrYXRhbG9nPiAgICAgc8OmdCBrYXRhbG9nZXQgbWVkIG9tZGlyaWdlcmluZ3NmaWwuXG4iCisiICAtLXRlc3QgICAgICAgICAgICAgICAgICAgZ8O4ciBpbnRldC4gRGVtb25zdHLDqXIgYmxvdC5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBzdGlsbGUgYmVhcmJlamRuaW5nLCBtaW5pbWFsZSB1ZGRhdGEuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgdmlzIGRlbm5lIGhqw6ZscGViZXNrZWQuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgdmlzIHZlcnNpb25lbi5cbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiV2hlbiBhZGRpbmcsIGRlZmF1bHQgaXMgLS1sb2NhbCBhbmQgLS1kaXZlcnQgPG9yaWdpbmFsPi5kaXN0cmliLlxuIgorIldoZW4gcmVtb3ZpbmcsIC0tcGFja2FnZSBvciAtLWxvY2FsIGFuZCAtLWRpdmVydCBtdXN0IG1hdGNoIGlmIHNwZWNpZmllZC5cbiIKKyJQYWNrYWdlIHByZWluc3QvcG9zdHJtIHNjcmlwdHMgc2hvdWxkIGFsd2F5cyBzcGVjaWZ5IC0tcGFja2FnZSBhbmQgLS0iCisiZGl2ZXJ0LlxuIgorbXNnc3RyICIiCisiVmVkIHRpbGbDuGplbHNlIGVyIHN0YW5kYXJkZW4gLS1sb2NhbCBvZyAtLWRpdmVydCA8b3JpZ2luYWw+LmRpc3RyaWIuXG4iCisiVmVkIGZqZXJuZWxzZSBza2FsIC0tcGFja2FnZSBlbGxlciAtLWxvY2FsIG9nIC0tZGl2ZXJ0IHN0ZW1tZSBodmlzIGdpdmV0LlxuIgorIlBha2tlcHLDpmluc3RhbGxhdGlvbnMtIGVsbGVyIC1wb3N0aW5zdGFsbGF0aW9uc3NjcmlwdGVyIHNrYWwgYWx0aWQgYW5naXZlIFxuIgorIi0tcGFja2FnZSBvZyAtLWRpdmVydC5cbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjE2OAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjaGVja2luZyAnJXMnIgorbXNnc3RyICJmZWpsIHVuZGVyIHRqZWsgYWYgJyVzJyIKKworIzogc3JjL2RpdmVydGNtZC5jOjIwMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisicmVuYW1lIGludm9sdmVzIG92ZXJ3cml0aW5nIGAlcycgd2l0aFxuIgorIiAgZGlmZmVyZW50IGZpbGUgYCVzJywgbm90IGFsbG93ZWQiCittc2dzdHIgIiIKKyJvbWTDuGJuaW5nIG1lZGbDuHJlciBvdmVyc2tyaXZuaW5nIGFmICclcycgbWVkXG4iCisiICBhbmRlbiBmaWwgYCVzJywgaWtrZSB0aWxsYWR0IgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjIzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzczCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gd3JpdGUgZmlsZSAnJXMnIgorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgZmlsZSAnJXMnIgorbXNnc3RyICJrYW4gaWtrZSBza3JpdmUgZmlsZW4gJyVzJyIKKworIzogc3JjL2RpdmVydGNtZC5jOjIyNworbXNnaWQgImZpbGUgY29weSIKK21zZ3N0ciAiZmlsa29waSIKKworIzogc3JjL2RpdmVydGNtZC5jOjIzOQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVuYW1lICclcycgdG8gJyVzJyIKK21zZ3N0ciAia2FuIGlra2Ugb21kw7hiZSAnJXMnIHRpbCAnJXMnIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjUyCisjLCBjLWZvcm1hdAorbXNnaWQgInJlbmFtZTogcmVtb3ZlIGR1cGxpY2F0ZSBvbGQgbGluayAnJXMnIgorbXNnc3RyICJvbWTDuGI6IGZqZXJuIGlkZW50aXNrIGdhbW1lbCBsw6Zua2UgJyVzJyIKKworIzogc3JjL2RpdmVydGNtZC5jOjI2MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIG9wZW4gc291cmNlIGZpbGUgYCUuMjUwcyciCittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBjb3BpZWQgc291cmNlIGZpbGUgJyVzJyIKK21zZ3N0ciAia3VubmUgaWtrZSDDpWJuZSBraWxkZWZpbCAnJS4yNTBzJyIKKworIzogc3JjL2RpdmVydGNtZC5jOjI4NAorIywgYy1mb3JtYXQKK21zZ2lkICJsb2NhbCBkaXZlcnNpb24gb2YgJXMiCittc2dzdHIgImxva2FsIG9tZGlyaWdlcmluZyBhZiAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjI4NgorIywgYy1mb3JtYXQKK21zZ2lkICJsb2NhbCBkaXZlcnNpb24gb2YgJXMgdG8gJXMiCittc2dzdHIgImxva2FsIG9tZGlyaWdlcmluZyBhZiAlcyB0aWwgJXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJzaW9uIG9mICVzIGJ5ICVzIgorbXNnc3RyICJvbWRpcmlnZXJpbmcgYWYgJXMgZ2VubmVtICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjkzCisjLCBjLWZvcm1hdAorbXNnaWQgImRpdmVyc2lvbiBvZiAlcyB0byAlcyBieSAlcyIKK21zZ3N0ciAib21kaXJpZ2VyZXQgYWYgJXMgdGlsICVzIGdlbm5lbSAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjMwOQorIywgYy1mb3JtYXQKK21zZ2lkICJhbnkgZGl2ZXJzaW9uIG9mICVzIgorbXNnc3RyICJlbmh2ZXIgb21kaXJpZ2VyaW5nIGFmICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MzExCisjLCBjLWZvcm1hdAorbXNnaWQgImFueSBkaXZlcnNpb24gb2YgJXMgdG8gJXMiCittc2dzdHIgImVuaHZlciBvbWRpcmlnZXJpbmcgYWYgJXMgdGlsICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MzU3CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBjcmVhdGUgbmV3ICVzIGZpbGUiCittc2dzdHIgImthbiBpa2tlIG9wcmV0dGUgbnkgJXMtZmlsIgorCisjIGJlbcOmcmsgYXQgZmx1c2ggbm9ybWFsdCBkw6Zra2VyIG92ZXIgYXQgdMO4bW1lIGVuIGJ1ZmZlciAoaGVyIHRpbCBlbiBmaWwpCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mzc1IHNyYy9zdGF0Y21kLmM6MjE1IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNDA0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCBmaWxlICclcyciCittc2dzdHIgImthbiBpa2tlIHTDuG1tZSB0aWwgZmlsZW4gJyVzJyIKKworIzogc3JjL2RpdmVydGNtZC5jOjM4MgorbXNnaWQgImVycm9yIHJlbW92aW5nIG9sZCBkaXZlcnNpb25zLW9sZCIKK21zZ3N0ciAiZmVqbCB2ZWQgZmplcm5lbHNlIGFmIGdhbW1lbCBkaXZlcnNpb25zLW9sZCIKKworIzogc3JjL2RpdmVydGNtZC5jOjM4NAorbXNnaWQgImVycm9yIGNyZWF0aW5nIG5ldyBkaXZlcnNpb25zLW9sZCIKK21zZ3N0ciAiZmVqbCB1bmRlciBvcHJldHRlbHNlIGFmIG55IGRpdmVyc2lvbnMtb2xkIgorCisjIHRyb3IgZGl2ZXJzaW9ucyBlciBldCBmaWxuYXZuCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mzg2Cittc2dpZCAiZXJyb3IgaW5zdGFsbGluZyBuZXcgZGl2ZXJzaW9ucyIKK21zZ3N0ciAiZmVqbCB1bmRlciBpbnN0YWxsYXRpb24gYWYgbnkgZGl2ZXJzaW9ucyIKKworIzogc3JjL2RpdmVydGNtZC5jOjQwNiBzcmMvZGl2ZXJ0Y21kLmM6NTAzIHNyYy9kaXZlcnRjbWQuYzo2MTAKKyM6IHNyYy9kaXZlcnRjbWQuYzo2MzAgc3JjL3N0YXRjbWQuYzoyOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhIHNpbmdsZSBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyBrcsOmdmVyIGV0IGVua2VsdCBwYXJhbWV0ZXIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MDkgc3JjL2RpdmVydGNtZC5jOjQzMAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlbmFtZSBcIiVzXCIgaXMgbm90IGFic29sdXRlIgorbXNnc3RyICJmaWxlbmF2bmV0IFwiJXNcIiBlciBpa2tlIGFic29sdXQiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MTEgc3JjL3N0YXRjbWQuYzoyNDkKK21zZ2lkICJmaWxlIG1heSBub3QgY29udGFpbiBuZXdsaW5lcyIKK21zZ3N0ciAiZmlsZW4gbcOlIGlra2UgaW5kZWhvbGRlIGxpbmplc2tpZnQiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MTgKK21zZ2lkICJDYW5ub3QgZGl2ZXJ0IGRpcmVjdG9yaWVzIgorbXNnc3RyICJLYW4gaWtrZSBvbWRpcmlnZXJlIGthdGFsb2dlciIKKworIzogc3JjL2RpdmVydGNtZC5jOjQzMworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgZGl2ZXJ0IGZpbGUgJyVzJyB0byBpdHNlbGYiCittc2dzdHIgImthbiBpa2tlIG9tZGlyaWdlcmUgZmlsZW4gJyVzJyB0aWwgc2lnIHNlbHYiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiTGVhdmluZyAnJXMnXG4iCittc2dzdHIgIkZvcmxhZGVyICclcydcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjQ1OAorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGNsYXNoZXMgd2l0aCBgJXMnIgorbXNnc3RyICInJXMnIGVyIGkgbW9kc3RyaWQgbWVkICclcyciCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAiQWRkaW5nICclcydcbiIKK21zZ3N0ciAiVGlsZsO4amVyICclcydcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjUxMAorIywgYy1mb3JtYXQKK21zZ2lkICJObyBkaXZlcnNpb24gJyVzJywgbm9uZSByZW1vdmVkLlxuIgorbXNnc3RyICJJbmdlbiBvbWRpcmlnZXJpbmcgJyVzJywgaW5nZW4gZmplcm5ldC5cbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjUyNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisibWlzbWF0Y2ggb24gZGl2ZXJ0LXRvXG4iCisiICB3aGVuIHJlbW92aW5nIGAlcydcbiIKKyIgIGZvdW5kIGAlcyciCittc2dzdHIgIiIKKyJtb2RzdHJpZCBpIG9tcm9rw6lyLXRpbFxuIgorIiAgdW5kZXIgYWZpbnN0YWxsYXRpb24gYWYgJyVzJ1xuIgorIiAgZmFuZHQgJyVzJyIKKworIzogc3JjL2RpdmVydGNtZC5jOjUzMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisibWlzbWF0Y2ggb24gcGFja2FnZVxuIgorIiAgd2hlbiByZW1vdmluZyBgJXMnXG4iCisiICBmb3VuZCBgJXMnIgorbXNnc3RyICIiCisibW9kc3RyaWQgaSBwYWtrZVxuIgorIiAgdW5kZXIgYWZpbnN0YWxsYXRpb24gYWYgJyVzJ1xuIgorIiAgZmFuZHQgJyVzJyIKKworIzogc3JjL2RpdmVydGNtZC5jOjUzOQorIywgYy1mb3JtYXQKK21zZ2lkICJSZW1vdmluZyAnJXMnXG4iCittc2dzdHIgIkZqZXJuZXIgJyVzJ1xuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjU3Cittc2dpZCAicGFja2FnZSBtYXkgbm90IGNvbnRhaW4gbmV3bGluZXMiCittc2dzdHIgInBha2tlIG3DpSBpa2tlIGluZGVob2xkZSBsaW5qZXNraWZ0IgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjY2Cittc2dpZCAiZGl2ZXJ0LXRvIG1heSBub3QgY29udGFpbiBuZXdsaW5lcyIKK21zZ3N0ciAib21yb2vDqXItdGlsIG3DpSBpa2tlIGluZGVob2xkZSBsaW5qZXNraWZ0IgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzo2NAorbXNnaWQgImZhaWxlZCB0byBvcGVuIGRpdmVyc2lvbnMgZmlsZSIKK21zZ3N0ciAia3VubmUgaWtrZSDDpWJuZSBvbWRpcmlnZXJpbmdzZmlsIgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzo3MQorbXNnaWQgImZhaWxlZCB0byBmc3RhdCBwcmV2aW91cyBkaXZlcnNpb25zIGZpbGUiCittc2dzdHIgImt1bm5lIGlra2Uga8O4cmUgJ2ZzdGF0JyBww6UgdGlkbGlnZXJlIG9tZGlyaWdlcmluZ3NmaWwiCisKKyM6IHNyYy9kaXZlcnRkYi5jOjczCittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGRpdmVyc2lvbnMgZmlsZSIKK21zZ3N0ciAia3VubmUgaWtrZSBrw7hyZSAnZnN0YXQnIHDDpSBvbWRpcmlnZXJpbmdzZmlsIgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzoxMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmxpY3RpbmcgZGl2ZXJzaW9ucyBpbnZvbHZpbmcgYCUuMjUwcycgb3IgYCUuMjUwcyciCittc2dzdHIgIm1vZHN0cmlkZW5kZSBvbWRpcmlnZXJpbmdlciwgZGVyIGludm9sdmVyZXIgJyUuMjUwcycgZWxsZXIgJyUuMjUwcyciCisKKyM6IHNyYy9lbnF1aXJ5LmM6NzMKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgaW4gYSBtZXNzIGR1ZSB0byBzZXJpb3VzIHByb2JsZW1zIGR1cmluZ1xuIgorImluc3RhbGxhdGlvbi4gIFRoZXkgbXVzdCBiZSByZWluc3RhbGxlZCBmb3IgdGhlbSAoYW5kIGFueSBwYWNrYWdlc1xuIgorInRoYXQgZGVwZW5kIG9uIHRoZW0pIHRvIGZ1bmN0aW9uIHByb3Blcmx5OlxuIgorbXNnc3RyICIiCisiRGUgZsO4bGdlbmRlIHBha2tlciBlciBpIHVvcmRlbiBwLmcuYS4gYWx2b3JsaWdlIHByb2JsZW1lciB1bmRlclxuIgorImluc3RhbGxhdGlvbmVuLiBEZSBza2FsIGdlbmluc3RhbGxlcmVzIGZvciBhdCBkZSAob2cgZXZlbnR1ZWxsZSBwYWtrZXIsXG4iCisiZGVyIGFmaMOmbmdlciBhZiBkZW0pIHNrYWwgdmlya2Ugb3JkZW50bGlndDpcbiIKKworIzogc3JjL2VucXVpcnkuYzo4MAorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGhhdmUgYmVlbiB1bnBhY2tlZCBidXQgbm90IHlldCBjb25maWd1cmVkLlxuIgorIlRoZXkgbXVzdCBiZSBjb25maWd1cmVkIHVzaW5nIGRwa2cgLS1jb25maWd1cmUgb3IgdGhlIGNvbmZpZ3VyZVxuIgorIm1lbnUgb3B0aW9uIGluIGRzZWxlY3QgZm9yIHRoZW0gdG8gd29yazpcbiIKK21zZ3N0ciAiIgorIkR1IGbDuGxnZW5kZSBwYWtrZXIgZXIgYmxldmV0IHVkcGFra2V0LCBtZW4gZW5kbnUgaWtrZSBrb25maWd1cmVyZWRlLlxuIgorIkRlIHNrYWwga29uZmlndXJlcmVzIG1lZCBcImRwa2cgLS1jb25maWd1cmVcIiBlbGxlciBmcmEgIgorImtvbmZpZ3VyYXRpb25zbWVudWVuXG4iCisiaSBkc2VsZWN0LCBmb3IgYXQgdmlya2U6XG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6ODcKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgb25seSBoYWxmIGNvbmZpZ3VyZWQsIHByb2JhYmx5IGR1ZSB0byBwcm9ibGVtc1xuIgorImNvbmZpZ3VyaW5nIHRoZW0gdGhlIGZpcnN0IHRpbWUuICBUaGUgY29uZmlndXJhdGlvbiBzaG91bGQgYmUgcmV0cmllZCB1c2luZ1xuIgorImRwa2cgLS1jb25maWd1cmUgPHBhY2thZ2U+IG9yIHRoZSBjb25maWd1cmUgbWVudSBvcHRpb24gaW4gZHNlbGVjdDpcbiIKK21zZ3N0ciAiIgorIkRlIGbDuGxnZW5kZSBwYWtrZXIgZXIga3VuIGhhbHZ0IGtvbmZpZ3VyZXJlZGUsIHNpa2tlcnQgcC5nLmEuIHByb2JsZW1lciBtZWRcbiIKKyJhdCBrb25maWd1cmVyZSBkZW0gaSBmw7hyc3RlIG9tZ2FuZy4gS29uZmlndXJhdGlvbmVuIGLDuHIgZm9yc8O4Z2VzIGlnZW4gbWVkXG4iCisiXCJkcGtnIC0tY29uZmlndXJlIDxwYWtrZT5cIiBlbGxlciBrb25maWd1cmF0aW9uc21lbnVlbiBpIGRzZWxlY3Q6XG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6OTQKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgb25seSBoYWxmIGluc3RhbGxlZCwgZHVlIHRvIHByb2JsZW1zIGR1cmluZ1xuIgorImluc3RhbGxhdGlvbi4gIFRoZSBpbnN0YWxsYXRpb24gY2FuIHByb2JhYmx5IGJlIGNvbXBsZXRlZCBieSByZXRyeWluZyBpdDtcbiIKKyJ0aGUgcGFja2FnZXMgY2FuIGJlIHJlbW92ZWQgdXNpbmcgZHNlbGVjdCBvciBkcGtnIC0tcmVtb3ZlOlxuIgorbXNnc3RyICIiCisiRGUgZsO4bGdlbmRlIHBha2tlciBlciBrdW4gaGFsdnQgaW5zdGFsbGVyZWRlIHAuZy5hLiBwcm9ibGVtZXIgdW5kZXJcbiIKKyJpbnN0YWxsYXRpb25lbi4gSW5zdGFsbGF0aW9uZW4ga2FuIHNhbmRzeW5saWd2aXMgZ2VubmVtZsO4cmVzIHZlZCBhdCBmb3Jzw7hnZVxuIgorImlnZW4uIFBha2tlcm5lIGthbiBhZmluc3RhbGxlcmVzIG1lZCBkc2VsZWN0IGVsbGVyIFwiZHBrZyAtLXJlbW92ZVwiOlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjEwMQorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBhd2FpdGluZyBwcm9jZXNzaW5nIG9mIHRyaWdnZXJzIHRoYXQgdGhleVxuIgorImhhdmUgYWN0aXZhdGVkIGluIG90aGVyIHBhY2thZ2VzLiAgVGhpcyBwcm9jZXNzaW5nIGNhbiBiZSByZXF1ZXN0ZWQgdXNpbmdcbiIKKyJkc2VsZWN0IG9yIGRwa2cgLS1jb25maWd1cmUgLS1wZW5kaW5nIChvciBkcGtnIC0tdHJpZ2dlcnMtb25seSk6XG4iCittc2dzdHIgIiIKKyJGw7hsZ2VuZGUgcGFra2VyIGFmdmVudGVyIGJlaGFuZGxpbmcgYWYgdWRsw7hzZXJlLCBzb20gZGUgaGFyIGFrdGl2ZXJldCBpXG4iCisiYW5kcmUgcGFra2VyLiAgRGVyIGthbiBhbm1vZGVzIG9tIGRlbm5lIGJlaGFuZGxpbmcgdmVkIGJydWcgYWYgZHNlbGVjdFxuIgorImVsbGVyIGRwa2cgLS1jb25maWd1cmUgLS1wZW5kaW5nIChlbGxlciBkcGtnIC0tdHJpZ2dlcnMtb25seSk6XG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTA4Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgaGF2ZSBiZWVuIHRyaWdnZXJlZCwgYnV0IHRoZSB0cmlnZ2VyIHByb2Nlc3NpbmdcbiIKKyJoYXMgbm90IHlldCBiZWVuIGRvbmUuICBUcmlnZ2VyIHByb2Nlc3NpbmcgY2FuIGJlIHJlcXVlc3RlZCB1c2luZ1xuIgorImRzZWxlY3Qgb3IgZHBrZyAtLWNvbmZpZ3VyZSAtLXBlbmRpbmcgKG9yIGRwa2cgLS10cmlnZ2Vycy1vbmx5KTpcbiIKK21zZ3N0ciAiIgorIkbDuGxnZW5kZSBwYWtrZXIgZXIgYmxldmV0IHVkbMO4c3QsIG1lbiB1ZGzDuHNlcmJlaGFuZGxpbmdlbiBlciBpa2tlIHVkZsO4cnRcbiIKKyJlbmRudS4gIERlciBrYW4gYW5tb2RlcyBvbSB1ZGzDuHNlcmJlaGFuZGxpbmcgdmVkIGJydWcgYWYgZHNlbGVjdFxuIgorImVsbGVyIGRwa2cgLS1jb25maWd1cmUgLS1wZW5kaW5nIChlbGxlciBkcGtnIC0tdHJpZ2dlcnMtb25seSk6XG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTM3IHNyYy9lbnF1aXJ5LmM6MjExIHNyYy9lbnF1aXJ5LmM6MjkyIHNyYy9lbnF1aXJ5LmM6MzczCisjOiBzcmMvZW5xdWlyeS5jOjQ2MCBzcmMvc2VsZWN0LmM6OTggc3JjL3NlbGVjdC5jOjE2NCBzcmMvdHJpZ2NtZC5jOjE5OQorIzogc3JjL3VwZGF0ZS5jOjQ4IHNyYy91cGRhdGUuYzoxMTMgZHBrZy1zcGxpdC9xdWV1ZS5jOjIzMgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIHRha2VzIG5vIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS0lcyB0YWdlciBpbmdlbiBwYXJhbWV0cmUiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTUyCittc2dpZCAiIgorIkFub3RoZXIgcHJvY2VzcyBoYXMgbG9ja2VkIHRoZSBkYXRhYmFzZSBmb3Igd3JpdGluZywgYW5kIG1pZ2h0IGN1cnJlbnRseSBiZVxuIgorIm1vZGlmeWluZyBpdCwgc29tZSBvZiB0aGUgZm9sbG93aW5nIHByb2JsZW1zIG1pZ2h0IGp1c3QgYmUgZHVlIHRvIHRoYXQuXG4iCittc2dzdHIgIiIKKyJFbiBhbmRlbiBwcm9jZXMgaGFyIHNrcml2ZWJlc2t5dHRldCBkYXRhYmFzZW4sIG9nIGVyIG3DpXNrZSBpIGbDpnJkIG1lZCBhdFxuIgorIsOmbmRyZSBkZW4gLSBub2dsZSBhZiBmw7hsZ2VuZGUgcHJvYmxlbWVyIGthbiB2w6ZyZSBmb3LDpXJzYWdldCBhZiBuZXRvcCBkZXR0ZS5cbiIKKworIzogc3JjL2VucXVpcnkuYzoxOTEKKyMsIGZ1enp5CisjfCBtc2dpZCAiPHVua25vd24+IgorbXNnY3R4dCAic2VjdGlvbiIKK21zZ2lkICI8dW5rbm93bj4iCittc2dzdHIgIjx1a2VuZHQ+IgorCisjOiBzcmMvZW5xdWlyeS5jOjI1MQorIywgYy1mb3JtYXQKK21zZ2lkICIgJWQgaW4gJXM6ICIKK21zZ3N0ciAiICVkIGkgJXM6ICIKKworIzogc3JjL2VucXVpcnkuYzoyNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiICVkIHBhY2thZ2UsIGZyb20gdGhlIGZvbGxvd2luZyBzZWN0aW9uOiIKK21zZ2lkX3BsdXJhbCAiICVkIHBhY2thZ2VzLCBmcm9tIHRoZSBmb2xsb3dpbmcgc2VjdGlvbnM6IgorbXNnc3RyWzBdICIgJWQgcGFra2UgZnJhIGbDuGxnZW5kZSBncnVwcGU6IgorbXNnc3RyWzFdICIgJWQgcGFra2VyIGZyYSBmw7hsZ2VuZGUgZ3J1cHBlcjoiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzA1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJWZXJzaW9uIG9mIGRwa2cgd2l0aCB3b3JraW5nICVzIHN1cHBvcnQgbm90IHlldCBjb25maWd1cmVkLlxuIgorIiBQbGVhc2UgdXNlICdkcGtnIC0tY29uZmlndXJlIGRwa2cnLCBhbmQgdGhlbiB0cnkgYWdhaW4uXG4iCittc2dzdHIgIiIKKyJWZXJzaW9uIGFmIGRwa2cgbWVkIGZ1bmdlcmVuZGUgJXMtdW5kZXJzdMO4dHRlbHNlIGVyIGVuZG51IGlra2UgIgorImtvbmZpZ3VyZXJldC5cbiIKKyIgS8O4ciB2ZW5saWdzdCAnZHBrZyAtLWNvbmZpZ3VyZSBkcGtnJywgb2cgcHLDuHYgaWdlbi5cbiIKKworIzogc3JjL2VucXVpcnkuYzozMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZyBub3QgcmVjb3JkZWQgYXMgaW5zdGFsbGVkLCBjYW5ub3QgY2hlY2sgZm9yICVzIHN1cHBvcnQhXG4iCittc2dzdHIgIiIKKyJkcGtnIGlra2UgcmVnaXN0cmVyZXQgc29tIGluc3RhbGxlcmV0LiBLYW4gaWtrZSB0amVra2UgZm9yICVzLSIKKyJ1bmRlcnN0w7h0dGVsc2UhXG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzIxCittc2dpZCAiUHJlLURlcGVuZHMgZmllbGQiCittc2dzdHIgIkZlbHRldCBQcmUtRGVwZW5kcyIKKworIzogc3JjL2VucXVpcnkuYzozMjkKK21zZ2lkICJlcG9jaCIKK21zZ3N0ciAiZXBva2VuIgorCisjOiBzcmMvZW5xdWlyeS5jOjMzNworbXNnaWQgImxvbmcgZmlsZW5hbWVzIgorbXNnc3RyICJsYW5nZSBmaWxuYXZuZSIKKworIyBjb25mbGljdHMgb2cgcmVwbGFjZXMgZXIgbmF2bmUgcMOlIGZlbHRlcgorIzogc3JjL2VucXVpcnkuYzozNDYKK21zZ2lkICJtdWx0aXBsZSBDb25mbGljdHMgYW5kIFJlcGxhY2VzIgorbXNnc3RyICJmbGVyZSBDb25mbGljdHMgb2cgUmVwbGFjZXMiCisKKyM6IHNyYy9lbnF1aXJ5LmM6NDM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBjYW5ub3Qgc2VlIGhvdyB0byBzYXRpc2Z5IHByZS1kZXBlbmRlbmN5OlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisiZHBrZzoga2FuIGlra2Ugc2UsIGh2b3JkYW4gbWFuIGthbiB0aWxmcmVkc3N0aWxsZSBmb3Jow6VuZHMtYWZow6ZuZ2lnaGVkOlxuIgorIiAlc1xuIgorCisjOiBzcmMvZW5xdWlyeS5jOjQzNQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc2F0aXNmeSBwcmUtZGVwZW5kZW5jaWVzIGZvciAlLjI1MHMgKHdhbnRlZCBkdWUgdG8gJS4yNTBzKSIKK21zZ3N0ciAiIgorImthbiBpa2tlIHRpbGZyZWRzc3RpbGxlIGZvcmjDpW5kc2FmaMOmbmdpZ2hlZGVyIGZvciAlLjI1MHMgKMO4bnNrZXQgZ3J1bmRldCAiCisiJS4yNTBzKSIKKworIzogc3JjL2VucXVpcnkuYzo0NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAib2Jzb2xldGUgb3B0aW9uICctLSVzJywgcGxlYXNlIHVzZSAnLS0lcycgaW5zdGVhZC4iCittc2dzdHIgImZvcsOmbGRldCB0aWx2YWxnICctLSVzJy4gIEJydWcgdmVubGlnc3QgJy0tJXMnIGkgc3RlZGV0LiIKKworIzogc3JjL2VucXVpcnkuYzo1MTkKK21zZ2lkICIiCisiLS1jb21wYXJlLXZlcnNpb25zIHRha2VzIHRocmVlIGFyZ3VtZW50czogPHZlcnNpb24+IDxyZWxhdGlvbj4gPHZlcnNpb24+IgorbXNnc3RyICIiCisiLS1jb21wYXJlLXZlcnNpb25zIGtyw6Z2ZXIgdHJlIHBhcmFtZXRyZTogPHZlcnNpb24+IDxyZWxhdGlvbj4gPHZlcnNpb24+IgorCisjOiBzcmMvZW5xdWlyeS5jOjUyNAorbXNnaWQgIi0tY29tcGFyZS12ZXJzaW9ucyBiYWQgcmVsYXRpb24iCittc2dzdHIgIi0tY29tcGFyZS12ZXJzaW9ucyB1Z3lsZGlnIHJlbGF0aW9uIgorCisjOiBzcmMvZW5xdWlyeS5jOjUyOSBzcmMvZW5xdWlyeS5jOjUzMSBzcmMvZW5xdWlyeS5jOjU0MCBzcmMvZW5xdWlyeS5jOjU0MgorIywgYy1mb3JtYXQKK21zZ2lkICJ2ZXJzaW9uICclcycgaGFzIGJhZCBzeW50YXg6ICVzIgorbXNnc3RyICJ2ZXJzaW9uZW4gJyVzJyBoYXIgZW4gdWd5bGRpZyBzeW50YWtzOiAlcyIKKworIzogc3JjL2Vycm9ycy5jOjYwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogZXJyb3IgcHJvY2Vzc2luZyAlcyAoLS0lcyk6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKyIlczogZmVqbCB1bmRlciBiZWhhbmRsaW5nIGFmICVzICgtLSVzKTpcbiIKKyIgJXNcbiIKKworIzogc3JjL2Vycm9ycy5jOjY4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiZHBrZzogZmFpbGVkIHRvIGFsbG9jYXRlIG1lbW9yeSBmb3IgbmV3IGVudHJ5IGluIGxpc3Qgb2YgZmFpbGVkIHBhY2thZ2VzLiIKK21zZ2lkICIiCisiJXM6IGZhaWxlZCB0byBhbGxvY2F0ZSBtZW1vcnkgZm9yIG5ldyBlbnRyeSBpbiBsaXN0IG9mIGZhaWxlZCBwYWNrYWdlczogJXMiCittc2dzdHIgIiIKKyJkcGtnOiBrdW5uZSBpa2tlIGZyaWfDuHJlIGh1a29tbWVsc2UgdGlsIG55IGluZGdhbmcgaSBsaXN0ZW4gb3ZlciBtaXNseWtrZWRlICIKKyJwYWtrZXIuIgorCisjOiBzcmMvZXJyb3JzLmM6NzkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImRwa2c6IHRvbyBtYW55IGVycm9ycywgc3RvcHBpbmdcbiIKK21zZ2lkICIlczogdG9vIG1hbnkgZXJyb3JzLCBzdG9wcGluZ1xuIgorbXNnc3RyICJkcGtnOiBmb3IgbWFuZ2UgZmVqbCwgc3RvcHBlclxuIgorCisjOiBzcmMvZXJyb3JzLmM6ODcKK21zZ2lkICJFcnJvcnMgd2VyZSBlbmNvdW50ZXJlZCB3aGlsZSBwcm9jZXNzaW5nOlxuIgorbXNnc3RyICJEZXIgb3BzdG9kIGZlamwgdW5kZXIgYmVoYW5kbGluZ2VuOlxuIgorCisjOiBzcmMvZXJyb3JzLmM6OTQKK21zZ2lkICJQcm9jZXNzaW5nIHdhcyBoYWx0ZWQgYmVjYXVzZSB0aGVyZSB3ZXJlIHRvbyBtYW55IGVycm9ycy5cbiIKK21zZ3N0ciAiQmVoYW5kbGluZ2VuIGJsZXYgc3RvcHBldCBmb3JkaSBkZXIgdmFyIGZvciBtYW5nZSBmZWpsLlxuIgorCisjOiBzcmMvZXJyb3JzLmM6MTA1CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgJXMgd2FzIG9uIGhvbGQsIHByb2Nlc3NpbmcgaXQgYW55d2F5IGFzIHlvdSByZXF1ZXN0ZWRcbiIKK21zZ3N0ciAiUGFra2VuICVzIHZhciB0aWxiYWdlaG9sZHQsIGJlaGFuZGxlciBkZW4gYWxsaWdldmVsLCBlZnRlciBkaXQgw7huc2tlXG4iCisKKyM6IHNyYy9lcnJvcnMuYzoxMDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlBhY2thZ2UgJXMgaXMgb24gaG9sZCwgbm90IHRvdWNoaW5nIGl0LiAgVXNlIC0tZm9yY2UtaG9sZCB0byBvdmVycmlkZS5cbiIKK21zZ3N0ciAiIgorIlBha2tlbiAlcyBlciB0aWxiYWdlaG9sZHQsIHLDuHJlciBkZW4gaWtrZS4gIEJydWcgLS1mb3JjZS1ob2xkIGZvciBhdCAiCisiZ2VubmVtdHZpbmdlLlxuIgorCisjOiBzcmMvZXJyb3JzLmM6MTE5Cittc2dpZCAib3ZlcnJpZGluZyBwcm9ibGVtIGJlY2F1c2UgLS1mb3JjZSBlbmFibGVkOiIKK21zZ3N0ciAidW5kZXJ0cnlra2VyIHByb2JsZW1ldCwgZm9yZGkgLS1mb3JjZSBlciBnaXZldDoiCisKKyM6IHNyYy9maWxlc2RiLmM6MzA3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSBgJS4yNTBzJyIKK21zZ3N0ciAia3VubmUgaWtrZSDDpWJuZSBmaWxsaXN0ZWZpbCBmb3IgcGFra2VuICclLjI1MHMnIgorCisjOiBzcmMvZmlsZXNkYi5jOjMxMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlIGAlLjI1MHMnIG1pc3NpbmcsIGFzc3VtaW5nIHBhY2thZ2UgaGFzIG5vIGZpbGVzICIKKyJjdXJyZW50bHkgaW5zdGFsbGVkLiIKK21zZ3N0ciAiIgorImZpbGxpc3RlZmlsZW4gZm9yIHBha2tlbiAnJS4yNTBzJyBtYW5nbGVyLiBBbnRhZ2VyLCBhdCBwYWtrZW4gaWtrZSBoYXIgbm9nZW4gIgorImZpbGVyIGluc3RhbGxlcmV0LiIKKworIzogc3JjL2ZpbGVzZGIuYzozMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICclLjI1MHMnIgorbXNnc3RyICJrYW4gaWtrZSB0aWxnw6UgZmlsbGlzdGVmaWwgZm9yIHBha2tlbiAnJS4yNTBzJyIKKworIzogc3JjL2ZpbGVzZGIuYzozMzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGVzIGxpc3QgZm9yIHBhY2thZ2UgYCUuMjUwcyciCittc2dpZCAicmVhZGluZyBmaWxlcyBsaXN0IGZvciBwYWNrYWdlICclLjI1MHMnIgorbXNnc3RyICJmaWxsaXN0ZSBmb3IgcGFra2VuICclLjI1MHMnIgorCisjOiBzcmMvZmlsZXNkYi5jOjMzNgorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJyUuMjUwcycgaXMgbWlzc2luZyBmaW5hbCBuZXdsaW5lIgorbXNnc3RyICJmaWxsaXN0ZWZpbGVuIGZvciBwYWtrZW4gJyUuMjUwcycgbWFuZ2xlciBhZnNsdXR0ZW5kZSBsaW5qZXNraWZ0IgorCisjOiBzcmMvZmlsZXNkYi5jOjM0NAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcycgY29udGFpbnMgZW1wdHkgZmlsZW5hbWUiCittc2dzdHIgImZpbGxpc3RlZmlsZW4gZm9yIHBha2tlbiAnJS4yNTBzJyBpbmRlaG9sZGVyIHRvbXQgZmlsbmF2biIKKworIzogc3JjL2ZpbGVzZGIuYzozNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcyciCittc2dzdHIgImZlamwgdW5kZXIgbHVrbmluZyBhZiBmaWxsaXN0ZWZpbCBmb3IgcGFra2VuICclLjI1MHMnIgorCisjOiBzcmMvZmlsZXNkYi5jOjQ2MgorbXNnaWQgIihSZWFkaW5nIGRhdGFiYXNlIC4uLiAiCittc2dzdHIgIihMw6ZzZXIgZGF0YWJhc2UgLi4uICIKKworIzogc3JjL2ZpbGVzZGIuYzo0ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJWQgZmlsZSBvciBkaXJlY3RvcnkgY3VycmVudGx5IGluc3RhbGxlZC4pXG4iCittc2dpZF9wbHVyYWwgIiVkIGZpbGVzIGFuZCBkaXJlY3RvcmllcyBjdXJyZW50bHkgaW5zdGFsbGVkLilcbiIKK21zZ3N0clswXSAiJWQgZmlsIGVsbGVyIGthdGFsb2cgaW5zdGFsbGVyZXQgaSDDuGplYmxpa2tldC4pXG4iCittc2dzdHJbMV0gIiVkIGZpbGVyIG9nIGthdGFsb2dlciBpbnN0YWxsZXJldCBpIMO4amVibGlra2V0LilcbiIKKworIzogc3JjL2ZpbGVzZGIuYzo1MTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAia3VubmUgaWtrZSBvcHJldHRlIG9wZGF0ZXJldCBmaWxsaXN0ZWZpbCBmb3IgcGFra2VuICVzIgorCisjOiBzcmMvZmlsZXNkYi5jOjUyNgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgdG8gdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgImt1bm5lIGlra2Ugc2tyaXZlIHRpbCBvcGRhdGVyZXQgZmlsbGlzdGVmaWwgZm9yIHBha2tlbiAlcyIKKworIzogc3JjL2ZpbGVzZGIuYzo1MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZsdXNoIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICJrdW5uZSBpa2tlIHTDuG1tZSBvcGRhdGVyZXQgZmlsbGlzdGVmaWwgZm9yIHBha2tlbiAlcyIKKworIzogc3JjL2ZpbGVzZGIuYzo1MzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHN5bmMgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgImt1bm5lIGlra2Ugc3lua3JvbmlzZXJlIG9wZGF0ZXJldCBmaWxsaXN0ZWZpbCBmb3IgcGFra2VuICVzIgorCisjOiBzcmMvZmlsZXNkYi5jOjUzMworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2xvc2UgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgImt1bm5lIGlra2UgbHVra2Ugb3BkYXRlcmV0IGZpbGxpc3RlZmlsIGZvciBwYWtrZW4gJXMiCisKKyM6IHNyYy9maWxlc2RiLmM6NTM1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBpbnN0YWxsIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICJrdW5uZSBpa2tlIGluc3RhbGxlcmUgb3BkYXRlcmVkZSBsaXN0ZWZpbCBmb3IgcGFra2VuICVzIgorCisjOiBzcmMvaGVscC5jOjQ4Cittc2dpZCAibm90IGluc3RhbGxlZCIKK21zZ3N0ciAiaWtrZSBpbnN0YWxsZXJldCIKKworIzogc3JjL2hlbHAuYzo0OQorbXNnaWQgIm5vdCBpbnN0YWxsZWQgYnV0IGNvbmZpZ3MgcmVtYWluIgorbXNnc3RyICJpa2tlIGluc3RhbGxlcmV0LCBtZW4ga29uZmlndXJhdGlvbmVuIGJlc3TDpXIiCisKKyM6IHNyYy9oZWxwLmM6NTAKK21zZ2lkICJicm9rZW4gZHVlIHRvIGZhaWxlZCByZW1vdmFsIG9yIGluc3RhbGxhdGlvbiIKK21zZ3N0ciAiw7hkZWxhZ3QgcMOlIGdydW5kIGFmIG1pc2x5a2tldCBmamVybmVsc2UgZWxsZXIgaW5zdGFsbGF0aW9uIgorCisjOiBzcmMvaGVscC5jOjUxCittc2dpZCAidW5wYWNrZWQgYnV0IG5vdCBjb25maWd1cmVkIgorbXNnc3RyICJ1ZHBha2tldCwgbWVuIGlra2Uga29uZmlndXJlcmV0IgorCisjOiBzcmMvaGVscC5jOjUyCittc2dpZCAiYnJva2VuIGR1ZSB0byBwb3N0aW5zdCBmYWlsdXJlIgorbXNnc3RyICLDuGRlbGFndCBncnVuZGV0IGVmdGVyaW5zdGFsbGF0aW9ucy1mZWpsIgorCisjOiBzcmMvaGVscC5jOjUzCittc2dpZCAiYXdhaXRpbmcgdHJpZ2dlciBwcm9jZXNzaW5nIGJ5IGFub3RoZXIgcGFja2FnZSIKK21zZ3N0ciAiYWZ2ZW50ZXIgdWRsw7hzZXJiZWhhbmRsaW5nIGFmIGVuIGFuZGVuIHBha2tlIgorCisjOiBzcmMvaGVscC5jOjU0Cittc2dpZCAidHJpZ2dlcmVkIgorbXNnc3RyICJ1ZGzDuHN0IgorCisjOiBzcmMvaGVscC5jOjU1Cittc2dpZCAiaW5zdGFsbGVkIgorbXNnc3RyICJpbnN0YWxsZXJldCIKKworIzogc3JjL2hlbHAuYzoxMDcKKyMsIGZ1enp5CisjfCBtc2dpZCAiZXJyb3I6IFBBVEggaXMgbm90IHNldC4iCittc2dpZCAiUEFUSCBpcyBub3Qgc2V0LiIKK21zZ3N0ciAiZmVqbDogUEFUSCBlciBpa2tlIGRlZmluZXJldC4iCisKKyM6IHNyYy9oZWxwLmM6MTI5CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuIgorbXNnc3RyICInJXMnIGlra2UgZnVuZGV0IGkgUEFUSCwgZWxsZXIgZXIgaWtrZSBla3Nla3ZlcmJhci4iCisKKyM6IHNyYy9oZWxwLmM6MTM4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICInJXMnIG5vdCBmb3VuZCBpbiBQQVRIIG9yIG5vdCBleGVjdXRhYmxlLiIKK21zZ2lkICIiCisiJWQgZXhwZWN0ZWQgcHJvZ3JhbSBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS5cbiIKKyIlcyIKK21zZ2lkX3BsdXJhbCAiIgorIiVkIGV4cGVjdGVkIHByb2dyYW1zIG5vdCBmb3VuZCBpbiBQQVRIIG9yIG5vdCBleGVjdXRhYmxlLlxuIgorIiVzIgorbXNnc3RyWzBdICInJXMnIGlra2UgZnVuZGV0IGkgUEFUSCwgZWxsZXIgZXIgaWtrZSBla3Nla3ZlcmJhci4iCittc2dzdHJbMV0gIiclcycgaWtrZSBmdW5kZXQgaSBQQVRILCBlbGxlciBlciBpa2tlIGVrc2VrdmVyYmFyLiIKKworIzogc3JjL2hlbHAuYzoxNDEKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIiVkIGV4cGVjdGVkIHByb2dyYW0gbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuXG4iCisjfCAiTkI6IHJvb3QncyBQQVRIIHNob3VsZCB1c3VhbGx5IGNvbnRhaW4gL3Vzci9sb2NhbC9zYmluLCAvdXNyL3NiaW4gYW5kIC8iCisjfCAic2Jpbi4iCisjfCBtc2dpZF9wbHVyYWwgIiIKKyN8ICIlZCBleHBlY3RlZCBwcm9ncmFtcyBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS5cbiIKKyN8ICJOQjogcm9vdCdzIFBBVEggc2hvdWxkIHVzdWFsbHkgY29udGFpbiAvdXNyL2xvY2FsL3NiaW4sIC91c3Ivc2JpbiBhbmQgLyIKKyN8ICJzYmluLiIKK21zZ2lkICIiCisiTm90ZTogcm9vdCdzIFBBVEggc2hvdWxkIHVzdWFsbHkgY29udGFpbiAvdXNyL2xvY2FsL3NiaW4sIC91c3Ivc2JpbiBhbmQgLyIKKyJzYmluLiIKK21zZ3N0ciAiIgorIiVkIGZvcnZlbnRldCBwcm9ncmFtIGJsZXYgaWtrZSBmdW5kZXQgaSBQQVRIIGVsbGVyIHZhciBpa2tlIGVrc2VrdmVyYmFydC5cbiIKKyJOQjogUEFUSCBmb3Igcm9vdCBiw7hyIG5vcm1hbHQgaW5kZWhvbGRlIC91c3IvbG9jYWwvc2JpbiwgL3Vzci9zYmluIG9nIC9zYmluLiIKKworIzogc3JjL2hlbHAuYzoxODgKK21zZ2lkICJhZG1pbmRpciBtdXN0IGJlIGluc2lkZSBpbnN0ZGlyIGZvciBkcGtnIHRvIHdvcmsgcHJvcGVybHkiCittc2dzdHIgIiIKKworIzogc3JjL2hlbHAuYzoxOTAgc3JjL21haW4uYzo3NDcKKyMsIGZ1enp5CisjfCBtc2dpZCAidW5hYmxlIHRvIHNldGVudiBmb3IgbWFpbnRhaW5lciBzY3JpcHQiCittc2dpZCAidW5hYmxlIHRvIHNldGVudiBmb3Igc3VicHJvY2Vzc2VzIgorbXNnc3RyICJrYW4gaWtrZSBzZXRlbnYgdGlsIHZlZGxpZ2Vob2xkZXJzY3JpcHQiCisKKyM6IHNyYy9oZWxwLmM6MTkyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjaHJvb3QgdG8gYCUuMjUwcyciCittc2dzdHIgImt1bm5lIGlra2Ugc2tpZnRlIGZpbHJvZCB0aWwgJyUuMjUwcyciCisKKyM6IHNyYy9oZWxwLmM6MTk0IGRwa2ctZGViL2J1aWxkLmM6NDU1IGRwa2ctZGViL2J1aWxkLmM6NDU3CisjOiBkcGtnLWRlYi9idWlsZC5jOjUzNiBkcGtnLWRlYi9idWlsZC5jOjU1OAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gYCUuMjU1cyciCittc2dzdHIgImt1bm5lIGlra2Ugc2tpZnRlIGthdGFsb2cgdGlsICclLjI1NXMnIgorCisjOiBzcmMvaGVscC5jOjI1NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IGV4ZWN1dGUgcGVybWlzc2lvbnMgb24gYCUuMjUwcyciCittc2dzdHIgImt1bm5lIGlra2Ugc8OmdHRlIGVrc2VrdmVyaW5nc3JldHRpZ2hlZGVyIGZvciAnJS4yNTBzJyIKKworIzogc3JjL2hlbHAuYzoyNzYKK21zZ2lkICJ1bmFibGUgdG8gc2V0ZW52IGZvciBtYWludGFpbmVyIHNjcmlwdCIKK21zZ3N0ciAia2FuIGlra2Ugc2V0ZW52IHRpbCB2ZWRsaWdlaG9sZGVyc2NyaXB0IgorCisjOiBzcmMvaGVscC5jOjMwMAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnN0YWxsZWQgJXMgc2NyaXB0IgorbXNnc3RyICJpbnN0YWxsZXJlZGUgJXMtc2NyaXB0IgorCisjOiBzcmMvaGVscC5jOjMxMyBzcmMvaGVscC5jOjM4MiBzcmMvaGVscC5jOjQ0MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCAlcyBgJS4yNTBzJyIKK21zZ3N0ciAia3VubmUgaWtrZSBmaW5kZSAlcyAnJS4yNTBzJyIKKworIzogc3JjL2hlbHAuYzozNjggc3JjL2hlbHAuYzo0MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAibmV3ICVzIHNjcmlwdCIKK21zZ3N0ciAibnl0ICVzLXNjcmlwdCIKKworIzogc3JjL2hlbHAuYzo0MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAib2xkICVzIHNjcmlwdCIKK21zZ3N0ciAiZ2FtbWVsdCAlcy1zY3JpcHQiCisKKyM6IHNyYy9oZWxwLmM6NDE2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0ICVzICclLjI1MHMnOiAlcyIKK21zZ3N0ciAia3VubmUgaWtrZSB0aWxnw6UgJXMgJyUuMjUwcyc6ICVzIgorCisjOiBzcmMvaGVscC5jOjQyNQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnIC0gdHJ5aW5nIHNjcmlwdCBmcm9tIHRoZSBuZXcgcGFja2FnZSBpbnN0ZWFkIC4uLlxuIgorbXNnc3RyICJkcGtnIC0gZm9yc8O4Z2VyIGkgc3RlZGV0IHNjcmlwdCBmcmEgbnkgcGFra2UuLi5cbiIKKworIzogc3JjL2hlbHAuYzo0MzkKK21zZ2lkICJ0aGVyZSBpcyBubyBzY3JpcHQgaW4gdGhlIG5ldyB2ZXJzaW9uIG9mIHRoZSBwYWNrYWdlIC0gZ2l2aW5nIHVwIgorbXNnc3RyICJkZXIgZXIgaW50ZXQgc2NyaXB0IGkgZGVuIG55ZSB2ZXJzaW9uIGFmIHBha2tlbiAtIGdpdmVyIG9wIgorCisjOiBzcmMvaGVscC5jOjQ0NQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiAuLi4gaXQgbG9va3MgbGlrZSB0aGF0IHdlbnQgT0suXG4iCittc2dzdHIgImRwa2c6IC4uLiBkZXQgc2VyIHVkIHRpbCwgYXQgYWx0IGdpayBvLmsuXG4iCisKKyM6IHNyYy9oZWxwLmM6NjE2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWN1cmVseSByZW1vdmUgJyUuMjU1cyciCittc2dzdHIgImthbiBpa2tlIHDDpSBzaWtrZXIgdmlzIGZqZXJuZSAnJS4yNTVzJyIKKworIzogc3JjL2hlbHAuYzo2MjEgZHBrZy1kZWIvaW5mby5jOjY1IGRwa2ctZGViL2luZm8uYzo2NworbXNnaWQgInJtIGNvbW1hbmQgZm9yIGNsZWFudXAiCittc2dzdHIgIiIKKworIzogc3JjL2luZm9kYi5jOjUyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGVjayBleGlzdGVuY2Ugb2YgYCUuMjUwcyciCittc2dzdHIgImt1bm5lIGlra2UgdGpla2tlIGVrc2lzdGVuc2VuIGFmICclLjI1MHMnIgorCisjOiBzcmMvaW5mb2RiLmM6NzAKK21zZ2lkICJjYW5ub3QgcmVhZCBpbmZvIGRpcmVjdG9yeSIKK21zZ3N0ciAia2FuIGlra2UgbMOmc2UgaW5mby1rYXRhbG9nIgorCisjOiBzcmMvbWFpbi5jOjYwCisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiBgJXMnIHBhY2thZ2UgbWFuYWdlbWVudCBwcm9ncmFtIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkRlYmlhbiAnJXMnIHBha2tlaMOlbmR0ZXJpbmdzcHJvZ3JhbSB2ZXJzaW9uICVzLlxuIgorCisjOiBzcmMvbWFpbi5jOjg1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1pfC0taW5zdGFsbCAgICAgICA8LmRlYiBmaWxlIG5hbWU+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXJlY3Rvcnk+IC4uLlxuIgorIiAgLS11bnBhY2sgICAgICAgICAgIDwuZGViIGZpbGUgbmFtZT4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRpcmVjdG9yeT4gLi4uXG4iCisiICAtQXwtLXJlY29yZC1hdmFpbCAgPC5kZWIgZmlsZSBuYW1lPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyZWN0b3J5PiAuLi5cbiIKKyIgIC0tY29uZmlndXJlICAgICAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtLXRyaWdnZXJzLW9ubHkgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLXJ8LS1yZW1vdmUgICAgICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC1QfC0tcHVyZ2UgICAgICAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtLWdldC1zZWxlY3Rpb25zIFs8cGF0dGVybj4gLi4uXSBHZXQgbGlzdCBvZiBzZWxlY3Rpb25zIHRvIHN0ZG91dC5cbiIKKyIgIC0tc2V0LXNlbGVjdGlvbnMgICAgICAgICAgICAgICAgIFNldCBwYWNrYWdlIHNlbGVjdGlvbnMgZnJvbSBzdGRpbi5cbiIKKyIgIC0tY2xlYXItc2VsZWN0aW9ucyAgICAgICAgICAgICAgIERlc2VsZWN0IGV2ZXJ5IG5vbi1lc3NlbnRpYWwgcGFja2FnZS5cbiIKKyIgIC0tdXBkYXRlLWF2YWlsIDxQYWNrYWdlcy1maWxlPiAgIFJlcGxhY2UgYXZhaWxhYmxlIHBhY2thZ2VzIGluZm8uXG4iCisiICAtLW1lcmdlLWF2YWlsIDxQYWNrYWdlcy1maWxlPiAgICBNZXJnZSB3aXRoIGluZm8gZnJvbSBmaWxlLlxuIgorIiAgLS1jbGVhci1hdmFpbCAgICAgICAgICAgICAgICAgICAgRXJhc2UgZXhpc3RpbmcgYXZhaWxhYmxlIGluZm8uXG4iCisiICAtLWZvcmdldC1vbGQtdW5hdmFpbCAgICAgICAgICAgICBGb3JnZXQgdW5pbnN0YWxsZWQgdW5hdmFpbGFibGUgcGtncy5cbiIKKyIgIC1zfC0tc3RhdHVzIDxwYWNrYWdlPiAuLi4gICAgICAgIERpc3BsYXkgcGFja2FnZSBzdGF0dXMgZGV0YWlscy5cbiIKKyIgIC1wfC0tcHJpbnQtYXZhaWwgPHBhY2thZ2U+IC4uLiAgIERpc3BsYXkgYXZhaWxhYmxlIHZlcnNpb24gZGV0YWlscy5cbiIKKyIgIC1MfC0tbGlzdGZpbGVzIDxwYWNrYWdlPiAuLi4gICAgIExpc3QgZmlsZXMgYG93bmVkJyBieSBwYWNrYWdlKHMpLlxuIgorIiAgLWx8LS1saXN0IFs8cGF0dGVybj4gLi4uXSAgICAgICAgTGlzdCBwYWNrYWdlcyBjb25jaXNlbHkuXG4iCisiICAtU3wtLXNlYXJjaCA8cGF0dGVybj4gLi4uICAgICAgICBGaW5kIHBhY2thZ2Uocykgb3duaW5nIGZpbGUocykuXG4iCisiICAtQ3wtLWF1ZGl0ICAgICAgICAgICAgICAgICAgICAgICBDaGVjayBmb3IgYnJva2VuIHBhY2thZ2UocykuXG4iCisiICAtLXByaW50LWFyY2hpdGVjdHVyZSAgICAgICAgICAgICBQcmludCBkcGtnIGFyY2hpdGVjdHVyZS5cbiIKKyIgIC0tY29tcGFyZS12ZXJzaW9ucyA8YT4gPG9wPiA8Yj4gIENvbXBhcmUgdmVyc2lvbiBudW1iZXJzIC0gc2VlIGJlbG93LlxuIgorIiAgLS1mb3JjZS1oZWxwICAgICAgICAgICAgICAgICAgICAgU2hvdyBoZWxwIG9uIGZvcmNpbmcuXG4iCisiICAtRGh8LS1kZWJ1Zz1oZWxwICAgICAgICAgICAgICAgICBTaG93IGhlbHAgb24gZGVidWdnaW5nLlxuIgorIlxuIgorbXNnc3RyICIiCisiS29tbWFuZG9lcjpcbiIKKyIgIC1pfC0taW5zdGFsbCAgICAgICAgPC5kZWItZmlsbmF2bj4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGthdGFsb2c+IC4uLlxuIgorIiAgLS11bnBhY2sgICAgICAgICAgICA8LmRlYi1maWxuYXZuPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8a2F0YWxvZz4gLi4uXG4iCisiICAtQXwtLXJlY29yZC1hdmFpbCAgIDwuZGViLWZpbG5hdm4+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxrYXRhbG9nPiAuLi5cbiIKKyIgIC0tY29uZmlndXJlICAgICAgICAgPHBha2tlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC1yfC0tcmVtb3ZlICAgICAgICAgPHBha2tlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC1QfC0tcHVyZ2UgICAgICAgICAgPHBha2tlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC0tZ2V0LXNlbGVjdGlvbnMgWzxtw7huc3Rlcj4gLi4uXSBTa3JpdiBsaXN0ZSBvdmVyIHZhbGdlbmUgdGlsIHN0YW5kYXJkLSIKKyJ1ZC5cbiIKKyIgIC0tc2V0LXNlbGVjdGlvbnMgICAgICAgICAgICAgICAgIEFuZ2l2IHBha2tldmFsZ2VuZSBmcmEgc3RhbmRhcmQtaW5kLlxuIgorIiAgLS1jbGVhci1zZWxlY3Rpb25zICAgICAgICAgICAgICAgRnJhdsOmbGcgYWxsZSBpa2tlLWVzc2VudGllbGxlIHBha2tlci5cbiIKKyIgIC0tdXBkYXRlLWF2YWlsIDxQYWNrYWdlcy1maWw+ICAgIEVyc3RhdCBpbmZvcm1hdGlvbiBvbSB0aWxnw6ZuZ2VsaWdlICIKKyJwYWtrZXIuXG4iCisiICAtLW1lcmdlLWF2YWlsIDxQYWNrYWdlcy1maWw+ICAgICBGbGV0IG1lZCBpbmZvcm1hdGlvbiBmcmEgZmlsLlxuIgorIiAgLS1jbGVhci1hdmFpbCAgICAgICAgICAgICAgICAgICAgU2xldCBha3R1ZWxsZSAiCisidGlsZ8OmbmdlbGlnaGVkc2luZm9ybWF0aW9uZXIuXG4iCisiICAtLWZvcmdldC1vbGQtdW5hdmFpbCAgICAgICAgICAgICBHbGVtIHVpbnN0YWxsZXJlZGUsIHV0aWxnw6ZuZ2VsaWdlICIKKyJwYWtrZXIuXG4iCisiICAtc3wtLXN0YXR1cyA8cGFra2U+IC4uLiAgICAgICAgICBWaXMgZGV0YWxqZXIgb20gcGFra2VzdGF0dXMuXG4iCisiICAtcHwtLXByaW50LWF2YWlsIDxwYWtrZT4gLi4uICAgICBWaXMgZGV0YWxqZXIgb20gdGlsZ8OmbmdlbGlnZSB2ZXJzaW9uZXIuXG4iCisiICAtTHwtLWxpc3RmaWxlcyA8cGFra2U+IC4uLiAgICAgICBWaXMgZGUgZmlsZXIsIGRlciAnZWplcycgYWYgcGFra2VybmUuXG4iCisiICAtbHwtLWxpc3QgWzxtw7huc3Rlcj4gLi4uXSAgICAgICAgVmlzIGtvcnRmYXR0ZXQgcGFra2VsaXN0ZS5cbiIKKyIgIC1TfC0tc2VhcmNoIDxtw7huc3Rlcj4gLi4uICAgICAgICBGaW5kIHBha2tlciwgZGVyICdlamVyJyBmaWxlci5cbiIKKyIgIC1DfC0tYXVkaXQgICAgICAgICAgICAgICAgICAgICAgIFRqZWsgZm9yIMO4ZGVsYWd0ZSBwYWtrZXIuXG4iCisiICAtLXByaW50LWFyY2hpdGVjdHVyZSAgICAgICAgICAgICBWaXMgZHBrZy1hcmtpdGVrdHVyLlxuIgorIiAgLS1jb21wYXJlLXZlcnNpb25zIDxhPiA8b3A+IDxiPiAgU2FtbWVubGlnbiB2ZXJzaW9uc251bXJlIC0gc2UgbmVkZW5mb3IuXG4iCisiICAtLWZvcmNlLWhlbHAgICAgICAgICAgICAgICAgICAgICBWaXMgaGrDpmxwIHRpbCBnZW5uZW10dmluZ25pbmcuXG4iCisiICAtRGh8LS1kZWJ1Zz1oZWxwICAgICAgICAgICAgICAgICBWaXMgaGrDpmxwIHRpbCBmZWpsc8O4Z25pbmcuXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTEzIHNyYy9xdWVyeWNtZC5jOjYzMSBzcmMvdHJpZ2NtZC5jOjc3IGRwa2ctZGViL21haW4uYzo4OAorIzogZHBrZy1zcGxpdC9tYWluLmM6NzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiAgLWh8LS1oZWxwICAgICAgICAgICAgICAgICAgICAgICAgU2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCittc2dzdHIgIiIKKyIgIC1ofC0taGVscCAgICAgICAgICAgICAgICAgICAgICAgIFZpcyBkZW5uZSBoasOmbHBlYmVza2VkLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICAgICAgICAgVmlzIHZlcnNpb25lbi5cbiIKKyJcbiIKKworIzogc3JjL21haW4uYzoxMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlVzZSBkcGtnIC1ifC0tYnVpbGR8LWN8LS1jb250ZW50c3wtZXwtLWNvbnRyb2x8LUl8LS1pbmZvfC1mfC0tZmllbGR8XG4iCisiIC14fC0tZXh0cmFjdHwtWHwtLXZleHRyYWN0fC0tZnN5cy10YXJmaWxlICBvbiBhcmNoaXZlcyAodHlwZSAlcyAtLWhlbHApLlxuIgorIlxuIgorbXNnc3RyICIiCisiQnJ1ZyBkcGtnIC1ifC0tYnVpbGR8LWN8LS1jb250ZW50c3wtZXwtLWNvbnRyb2x8LUl8LS1pbmZvfC1mfC0tZmllbGR8XG4iCisiIC14fC0tZXh0cmFjdHwtWHwtLXZleHRyYWN0fC0tZnN5cy10YXJmaWxlICBww6UgYXJraXZlciAoc2tyaXYgJXMgLS1oZWxwKS5cbiIKKyJcbiIKKworIzogc3JjL21haW4uYzoxMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkZvciBpbnRlcm5hbCB1c2U6IGRwa2cgLS1hc3NlcnQtc3VwcG9ydC1wcmVkZXBlbmRzIHwgLS1wcmVkZXAtcGFja2FnZSB8XG4iCisiICAtLWFzc2VydC13b3JraW5nLWVwb2NoIHwgLS1hc3NlcnQtbG9uZy1maWxlbmFtZXMgfCAtLWFzc2VydC1tdWx0aS1jb25yZXAuXG4iCisiXG4iCittc2dzdHIgIiIKKyJUaWwgaW50ZXJudCBicnVnOiBkcGtnIC0tYXNzZXJ0LXN1cHBvcnQtcHJlZGVwZW5kcyB8IC0tcHJlZGVwLXBhY2thZ2UgfFxuIgorIiAgLS1hc3NlcnQtd29ya2luZy1lcG9jaCB8IC0tYXNzZXJ0LWxvbmctZmlsZW5hbWVzIHwgLS1hc3NlcnQtbXVsdGktY29ucmVwLlxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjEyOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT4gICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorIiAgLS1yb290PTxkaXJlY3Rvcnk+ICAgICAgICAgSW5zdGFsbCBvbiBhIGRpZmZlcmVudCByb290IGRpcmVjdG9yeS5cbiIKKyIgIC0taW5zdGRpcj08ZGlyZWN0b3J5PiAgICAgIENoYW5nZSBpbnN0YWxsYXRpb24gZGlyIHdpdGhvdXQgY2hhbmdpbmcgYWRtaW4gIgorImRpci5cbiIKKyIgIC0tcGF0aC1leGNsdWRlPTxwYXR0ZXJuPiAgIERvIG5vdCBpbnN0YWxsIHBhdGhzIHdoaWNoIG1hdGNoIGEgc2hlbGwgIgorInBhdHRlcm4uXG4iCisiICAtLXBhdGgtaW5jbHVkZT08cGF0dGVybj4gICBSZS1pbmNsdWRlIGEgcGF0dGVybiBhZnRlciBhIHByZXZpb3VzICIKKyJleGNsdXNpb24uXG4iCisiICAtT3wtLXNlbGVjdGVkLW9ubHkgICAgICAgICBTa2lwIHBhY2thZ2VzIG5vdCBzZWxlY3RlZCBmb3IgaW5zdGFsbC8iCisidXBncmFkZS5cbiIKKyIgIC1FfC0tc2tpcC1zYW1lLXZlcnNpb24gICAgIFNraXAgcGFja2FnZXMgd2hvc2Ugc2FtZSB2ZXJzaW9uIGlzIGluc3RhbGxlZC5cbiIKKyIgIC1HfC0tcmVmdXNlLWRvd25ncmFkZSAgICAgIFNraXAgcGFja2FnZXMgd2l0aCBlYXJsaWVyIHZlcnNpb24gdGhhbiAiCisiaW5zdGFsbGVkLlxuIgorIiAgLUJ8LS1hdXRvLWRlY29uZmlndXJlICAgICAgSW5zdGFsbCBldmVuIGlmIGl0IHdvdWxkIGJyZWFrIHNvbWUgb3RoZXIgIgorInBhY2thZ2UuXG4iCisiICAtLVtuby1ddHJpZ2dlcnMgICAgICAgICAgICBTa2lwIG9yIGZvcmNlIGNvbnNlcXVlbnRpYWwgdHJpZ2dlciAiCisicHJvY2Vzc2luZy5cbiIKKyIgIC0tbm8tZGVic2lnICAgICAgICAgICAgICAgIERvIG5vdCB0cnkgdG8gdmVyaWZ5IHBhY2thZ2Ugc2lnbmF0dXJlcy5cbiIKKyIgIC0tbm8tYWN0fC0tZHJ5LXJ1bnwtLXNpbXVsYXRlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBKdXN0IHNheSB3aGF0IHdlIHdvdWxkIGRvIC0gZG9uJ3QgZG8gaXQuXG4iCisiICAtRHwtLWRlYnVnPTxvY3RhbD4gICAgICAgICBFbmFibGUgZGVidWdnaW5nIChzZWUgLURoZWxwIG9yIC0tZGVidWc9aGVscCkuXG4iCisiICAtLXN0YXR1cy1mZCA8bj4gICAgICAgICAgICBTZW5kIHN0YXR1cyBjaGFuZ2UgdXBkYXRlcyB0byBmaWxlIGRlc2NyaXB0b3IgIgorIjxuPi5cbiIKKyIgIC0tbG9nPTxmaWxlbmFtZT4gICAgICAgICAgIExvZyBzdGF0dXMgY2hhbmdlcyBhbmQgYWN0aW9ucyB0byA8ZmlsZW5hbWU+LlxuIgorIiAgLS1pZ25vcmUtZGVwZW5kcz08cGFja2FnZT4sLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZ25vcmUgZGVwZW5kZW5jaWVzIGludm9sdmluZyA8cGFja2FnZT4uXG4iCisiICAtLWZvcmNlLS4uLiAgICAgICAgICAgICAgICBPdmVycmlkZSBwcm9ibGVtcyAoc2VlIC0tZm9yY2UtaGVscCkuXG4iCisiICAtLW5vLWZvcmNlLS4uLnwtLXJlZnVzZS0uLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3Agd2hlbiBwcm9ibGVtcyBlbmNvdW50ZXJlZC5cbiIKKyIgIC0tYWJvcnQtYWZ0ZXIgPG4+ICAgICAgICAgIEFib3J0IGFmdGVyIGVuY291bnRlcmluZyA8bj4gZXJyb3JzLlxuIgorIlxuIgorbXNnc3RyICIiCisiVGlsdmFsZzpcbiIKKyIgIC0tYWRtaW5kaXI9PGthdGFsb2c+ICAgICAgIEJlbnl0IDxrYXRhbG9nPiBpIHN0ZWRldCBmb3IgJXMuXG4iCisiICAtLXJvb3Q9PGthdGFsb2c+ICAgICAgICAgICBJbnN0YWxsw6lyIGkgZXQgYW5kZXQgcm9ka2F0YWxvZy5cbiIKKyIgIC0taW5zdGRpcj08a2F0YWxvZz4gICAgICAgIFNraWZ0IGluc3RhbGxhdGlvbnNrYXRhbG9nIHVkZW4gYXQgc2tpZnRlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFkbWluaXN0cmF0aW9uc2thdGFsb2cuXG4iCisiICAtLXBhdGgtZXhjbHVkZT08bcO4bnN0ZXI+ICAgSW5zdGFsbMOpciBpa2tlIHN0aWVyIHNvbSBtYXRjaGVyIGV0ICIKKyJza2FsbcO4bnN0ZXIuXG4iCisiICAtLXBhdGgtaW5jbHVkZT08bcO4c250ZXI+ICAgR2VuaW5rbHVkw6lyIG3DuG5zdGVyIGVmdGVyIHRpZGxpZ2VyZSAiCisiZWtza2x1c2lvbi5cbiIKKyIgIC1PfC0tc2VsZWN0ZWQtb25seSAgICAgICAgIFNwcmluZyBvdmVyIHBha2tlciwgZGVyIGlra2UgZXIgdmFsZ3QgdGlsXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluc3RhbGxhdGlvbi9vcGdyYWRlcmluZy5cbiIKKyIgIC1FfC0tc2tpcC1zYW1lLXZlcnNpb24gICAgIFNwcmluZyBvdmVyIHBha2tlciwgaHZpcyB2ZXJzaW9uIGkgZm9ydmVqZW4gZXJcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5zdGFsbGVyZXQuXG4iCisiICAtR3wtLXJlZnVzZS1kb3duZ3JhZGUgICAgICBTcHJpbmcgb3ZlciBwYWtrZXIgbWVkIHRpZGxpZ2VyZSB2ZXJzaW9uIGVuZCAiCisiZGVuXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluc3RhbGxlcmVkZS5cbiIKKyIgIC1CfC0tYXV0by1kZWNvbmZpZ3VyZSAgICAgIEluc3RhbGzDqXIgc2Vsdm9tIGRldHRlIMO4ZGVsw6ZnZ2VyIGFuZHJlIHBha2tlci5cbiIKKyIgIC0tW25vLV10cmlnZ2VycyAgICAgICAgICAgIE92ZXJzcHJpbmcgZWxsZXIga8O4ciBlZnRlcmbDuGxnZW5kZSB1ZGzDuHNlcmUuXG4iCisiICAtLW5vLWRlYnNpZyAgICAgICAgICAgICAgICBGb3Jzw7hnIGlra2UgYXQgdmVyaWZpY2VyZSBwYWtrZXNpZ25hdHVyZXIuXG4iCisiICAtLW5vLWFjdHwtLWRyeS1ydW58LS1zaW11bGF0ZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVmlzIGt1biBodmFkIGRlciB2aWxsZSBza2UsIHVkZW4gYXQgZ8O4cmUgZGV0LlxuIgorIiAgLUR8LS1kZWJ1Zz08b2t0YWw+ICAgICAgICAgS8O4ciBmZWpsc8O4Z25pbmcgKHNlIC1EaGVscCBlbGxlciAtLSIKKyJkZWJ1Zz1oZWxwKS5cbiIKKyIgIC0tc3RhdHVzLWZkIDxuPiAgICAgICAgICAgIFNlbmQgc3RhdHVzb3BkYXRlcmluZ2VyIHRpbCBmaWxkZXNrcmlwdG9yIDxuPi5cbiIKKyIgIC0tbG9nPTxmaWxuYXZuPiAgICAgICAgICAgIExvZyBzdGF0dXPDpm5kcmluZ2VyIG9nIGhhbmRsaW5nZXIgdGlsICIKKyI8ZmlsbmF2bj4uXG4iCisiICAtLWlnbm9yZS1kZXBlbmRzPTxwYWtrZT4sLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZ25vcsOpciBhZmjDpm5naWdoZWRlciwgZGVyIHZlZHLDuHJlciA8cGFra2U+LlxuIgorIiAgLS1mb3JjZS0uLi4gICAgICAgICAgICAgICAgR2VubmVtdHZpbmcgKHNlIC0tZm9yY2UtaGVscCkuXG4iCisiICAtLW5vLWZvcmNlLS4uLnwtLXJlZnVzZS0uLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3AsIG7DpXIgZGVyIG9wc3TDpXIgcHJvYmxlbWVyLlxuIgorIiAgLS1hYm9ydC1hZnRlciA8bj4gICAgICAgICAgQWZicnlkIGVmdGVyIDxuPiBmZWpsLlxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjE1NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tcGFyaXNvbiBvcGVyYXRvcnMgZm9yIC0tY29tcGFyZS12ZXJzaW9ucyBhcmU6XG4iCisiICBsdCBsZSBlcSBuZSBnZSBndCAgICAgICAodHJlYXQgZW1wdHkgdmVyc2lvbiBhcyBlYXJsaWVyIHRoYW4gYW55ICIKKyJ2ZXJzaW9uKTtcbiIKKyIgIGx0LW5sIGxlLW5sIGdlLW5sIGd0LW5sICh0cmVhdCBlbXB0eSB2ZXJzaW9uIGFzIGxhdGVyIHRoYW4gYW55IHZlcnNpb24pO1xuIgorIiAgPCA8PCA8PSA9ID49ID4+ID4gICAgICAgKG9ubHkgZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBjb250cm9sIGZpbGUgIgorInN5bnRheCkuXG4iCisiXG4iCittc2dzdHIgIiIKKyJTYW1tZW5saWduaW5nc29wZXJhdG9yZXIgdGlsIC0tY29tcGFyZS12ZXJzaW9ucyBlcjpcbiIKKyIgbHQgbGUgZXEgbmUgZ2UgZ3QgICAgICAgKGJldHJhZ3QgdG9tIHZlcnNpb24gc29tIHRpZGxpZ2VyZSBlbmQgYW5kcmUgIgorInZlcnNpb25lcik7XG4iCisiIGx0LW5sIGxlLW5sIGdlLW5sIGd0LW5sIChiZXRyYWd0IHRvbSB2ZXJzaW9uIHNvbSBzZW5lcmUgZW5kIGFuZHJlICIKKyJ2ZXJzaW9uZXIpO1xuIgorIiA8IDw8IDw9ID0gPj0gPj4gPiAgICAgICAoa3VuIGZvciBrb21wYXRpYmlsaXRldCBtZWQga29udHJvbGZpbGVucyAiCisic3ludGFrcykuXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTYxCisjLCBjLWZvcm1hdAorbXNnaWQgIlVzZSBgZHNlbGVjdCcgb3IgYGFwdGl0dWRlJyBmb3IgdXNlci1mcmllbmRseSBwYWNrYWdlIG1hbmFnZW1lbnQuXG4iCittc2dzdHIgIiIKKyJCcnVnICdkc2VsZWN0JyBlbGxlciAnYXB0aXR1ZGUnIGZvciBlbiBtZXJlIGJydWdlcnZlbmxpZyBwYWtrZWjDpW5kdGVyaW5nLlxuIgorCisjOiBzcmMvbWFpbi5jOjE3MAorbXNnaWQgIiIKKyJUeXBlIGRwa2cgLS1oZWxwIGZvciBoZWxwIGFib3V0IGluc3RhbGxpbmcgYW5kIGRlaW5zdGFsbGluZyBwYWNrYWdlcyBbKl07XG4iCisiVXNlIGBkc2VsZWN0JyBvciBgYXB0aXR1ZGUnIGZvciB1c2VyLWZyaWVuZGx5IHBhY2thZ2UgbWFuYWdlbWVudDtcbiIKKyJUeXBlIGRwa2cgLURoZWxwIGZvciBhIGxpc3Qgb2YgZHBrZyBkZWJ1ZyBmbGFnIHZhbHVlcztcbiIKKyJUeXBlIGRwa2cgLS1mb3JjZS1oZWxwIGZvciBhIGxpc3Qgb2YgZm9yY2luZyBvcHRpb25zO1xuIgorIlR5cGUgZHBrZy1kZWIgLS1oZWxwIGZvciBoZWxwIGFib3V0IG1hbmlwdWxhdGluZyAqLmRlYiBmaWxlcztcbiIKKyJcbiIKKyJPcHRpb25zIG1hcmtlZCBbKl0gcHJvZHVjZSBhIGxvdCBvZiBvdXRwdXQgLSBwaXBlIGl0IHRocm91Z2ggYGxlc3MnIG9yICIKKyJgbW9yZScgISIKK21zZ3N0ciAiIgorIlNrcml2IGRwa2cgLS1oZWxwIGZvciBoasOmbHAgb20gaW5zdGFsbGF0aW9uIG9nIGFmaW5zdGFsbGF0aW9uIGFmIHBha2tlciAiCisiWypdO1xuIgorIkJydWcgJ2RzZWxlY3QnIGVsbGVyICdhcHRpdHVkZScgZm9yIGVuIG1lcmUgYnJ1Z2VydmVubGlnIHBha2tlaMOlbmR0ZXJpbmc7XG4iCisiU2tyaXYgZHBrZyAtRGhlbHAgZm9yIGVuIGxpc3RlIG92ZXIgdsOmcmRpZXJuZSBpIGRwa2cncyBmZWpsc8O4Z25pbmdzZmxhZztcbiIKKyJTa3JpdiBkcGtnIC0tZm9yY2UtaGVscCBmb3IgZW4gbGlzdGUgb3ZlciBnZW5uZW10dmluZ25pbmdzdGlsdmFsZztcbiIKKyJTa3JpdiBkcGtnLWRlYiAtLWhlbHAgZm9yIGhqw6ZscCB2ZWRyw7hyZW5kZSBtYW5pcHVsYXRpb24gYWYgKi5kZWItZmlsZXI7XG4iCisiXG4iCisiVGlsdmFsZyBtZWQgWypdIGdpdmVyIG1hbmdlIHVkZGF0YSAtIGxlZCBkZW0gZ2VubmVtICdsZXNzJyBlbGxlciAnbW9yZSchIgorCisjOiBzcmMvbWFpbi5jOjIxOQorbXNnaWQgIlNldCBhbGwgZm9yY2Ugb3B0aW9ucyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIyMQorbXNnaWQgIlJlcGxhY2UgYSBwYWNrYWdlIHdpdGggYSBsb3dlciB2ZXJzaW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjIzCittc2dpZCAiQ29uZmlndXJlIGFueSBwYWNrYWdlIHdoaWNoIG1heSBoZWxwIHRoaXMgb25lIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjI1Cittc2dpZCAiUHJvY2VzcyBpbmNpZGVudGFsIHBhY2thZ2VzIGV2ZW4gd2hlbiBvbiBob2xkIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjI3Cittc2dpZCAiVHJ5IHRvIChkZSlpbnN0YWxsIHRoaW5ncyBldmVuIHdoZW4gbm90IHJvb3QiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjkKK21zZ2lkICJQQVRIIGlzIG1pc3NpbmcgaW1wb3J0YW50IHByb2dyYW1zLCBwcm9ibGVtcyBsaWtlbHkiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzEKK21zZ2lkICJJbnN0YWxsIGEgcGFja2FnZSBldmVuIGlmIGl0IGZhaWxzIGF1dGhlbnRpY2l0eSBjaGVjayIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzMworbXNnaWQgIlByb2Nlc3MgZXZlbiBwYWNrYWdlcyB3aXRoIHdyb25nIHZlcnNpb25zIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjM1Cittc2dpZCAiT3ZlcndyaXRlIGEgZmlsZSBmcm9tIG9uZSBwYWNrYWdlIHdpdGggYW5vdGhlciIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzNworbXNnaWQgIk92ZXJ3cml0ZSBhIGRpdmVydGVkIGZpbGUgd2l0aCBhbiB1bmRpdmVydGVkIHZlcnNpb24iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzkKK21zZ2lkICJPdmVyd3JpdGUgb25lIHBhY2thZ2UncyBkaXJlY3Rvcnkgd2l0aCBhbm90aGVyJ3MgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI0MQorbXNnaWQgIkRvIG5vdCBwZXJmb3JtIHNhZmUgSS9PIG9wZXJhdGlvbnMgd2hlbiB1bnBhY2tpbmciCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDMKK21zZ2lkICJBbHdheXMgdXNlIHRoZSBuZXcgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDUKK21zZ2lkICJBbHdheXMgdXNlIHRoZSBvbGQgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDgKK21zZ2lkICIiCisiVXNlIHRoZSBkZWZhdWx0IG9wdGlvbiBmb3IgbmV3IGNvbmZpZyBmaWxlcyBpZiBvbmVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgaXMgYXZhaWxhYmxlLCBkb24ndCBwcm9tcHQuIElmIG5vIGRlZmF1bHQgY2FuIGJlICIKKyJmb3VuZCxcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgeW91IHdpbGwgYmUgcHJvbXB0ZWQgdW5sZXNzIG9uZSBvZiB0aGUgY29uZm9sZCBvclxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICBjb25mbmV3IG9wdGlvbnMgaXMgYWxzbyBnaXZlbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI1MworbXNnaWQgIkFsd2F5cyBpbnN0YWxsIG1pc3NpbmcgY29uZmlnIGZpbGVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjU1Cittc2dpZCAiT2ZmZXIgdG8gcmVwbGFjZSBjb25maWcgZmlsZXMgd2l0aCBubyBuZXcgdmVyc2lvbnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNTcKK21zZ2lkICJQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyBvciBubyBhcmNoaXRlY3R1cmUiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNTkKK21zZ2lkICJJbnN0YWxsIGV2ZW4gaWYgaXQgd291bGQgYnJlYWsgYW5vdGhlciBwYWNrYWdlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjYxCittc2dpZCAiQWxsb3cgaW5zdGFsbGF0aW9uIG9mIGNvbmZsaWN0aW5nIHBhY2thZ2VzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjYzCisjLCBmdXp6eQorI3wgbXNnaWQgImRlcGVuZGVuY3kgcHJvYmxlbXMgLSBub3QgcmVtb3ZpbmciCittc2dpZCAiVHVybiBhbGwgZGVwZW5kZW5jeSBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzIgorbXNnc3RyICJhZmjDpm5naWdoZWRzcHJvYmxlbWVyIC0gYWZpbnN0YWxsZXJlciBpa2tlIgorCisjOiBzcmMvbWFpbi5jOjI2NQorIywgZnV6enkKKyN8IG1zZ2lkICJkZXBlbmRlbmN5IHByb2JsZW1zIC0gbm90IHJlbW92aW5nIgorbXNnaWQgIlR1cm4gZGVwZW5kZW5jeSB2ZXJzaW9uIHByb2JsZW1zIGludG8gd2FybmluZ3MiCittc2dzdHIgImFmaMOmbmdpZ2hlZHNwcm9ibGVtZXIgLSBhZmluc3RhbGxlcmVyIGlra2UiCisKKyM6IHNyYy9tYWluLmM6MjY3Cittc2dpZCAiUmVtb3ZlIHBhY2thZ2VzIHdoaWNoIHJlcXVpcmUgaW5zdGFsbGF0aW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjY5Cittc2dpZCAiUmVtb3ZlIGFuIGVzc2VudGlhbCBwYWNrYWdlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjgxCittc2dpZCAiR2VuZXJhbGx5IGhlbHBmdWwgcHJvZ3Jlc3MgaW5mb3JtYXRpb24iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODIKKyMsIGZ1enp5CisjfCBtc2dpZCAidW5hYmxlIHRvIHNldGVudiBmb3IgbWFpbnRhaW5lciBzY3JpcHQiCittc2dpZCAiSW52b2NhdGlvbiBhbmQgc3RhdHVzIG9mIG1haW50YWluZXIgc2NyaXB0cyIKK21zZ3N0ciAia2FuIGlra2Ugc2V0ZW52IHRpbCB2ZWRsaWdlaG9sZGVyc2NyaXB0IgorCisjOiBzcmMvbWFpbi5jOjI4MworbXNnaWQgIk91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4NAorbXNnaWQgIkxvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg1CisjLCBmdXp6eQorI3wgbXNnaWQgInJlYWQgZXJyb3IgaW4gY29uZmlndXJhdGlvbiBmaWxlIGAlLjI1NXMnIgorbXNnaWQgIk91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGUiCittc2dzdHIgImzDpnNlZmVqbCBpIGtvbmZpZ3VyYXRpb25zZmlsICclLjI1NXMnIgorCisjOiBzcmMvbWFpbi5jOjI4NgorbXNnaWQgIkxvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4NworbXNnaWQgIkRlcGVuZGVuY2llcyBhbmQgY29uZmxpY3RzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg4Cittc2dpZCAiTG90cyBvZiBkZXBlbmRlbmNpZXMvY29uZmxpY3RzIG91dHB1dCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4OQorbXNnaWQgIlRyaWdnZXIgYWN0aXZhdGlvbiBhbmQgcHJvY2Vzc2luZyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MAorbXNnaWQgIkxvdHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2VycyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MQorbXNnaWQgIlNpbGx5IGFtb3VudHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2VycyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MgorbXNnaWQgIkxvdHMgb2YgZHJpdmVsIGFib3V0IGVnIHRoZSBkcGtnL2luZm8gZGlyZWN0b3J5IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjkzCittc2dpZCAiSW5zYW5lIGFtb3VudHMgb2YgZHJpdmVsIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MzA0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlcyBkZWJ1Z2dpbmcgb3B0aW9uLCAtLWRlYnVnPTxvY3RhbD4gb3IgLUQ8b2N0YWw+OlxuIgorIlxuIgorIiBOdW1iZXIgIFJlZi4gaW4gc291cmNlICAgRGVzY3JpcHRpb25cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjMxMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiRGVidWdnaW5nIG9wdGlvbnMgY2FuIGJlIG1peGVkIHVzaW5nIGJpdHdpc2Utb3IuXG4iCisiTm90ZSB0aGF0IHRoZSBtZWFuaW5ncyBhbmQgdmFsdWVzIGFyZSBzdWJqZWN0IHRvIGNoYW5nZS5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjMxOQorbXNnaWQgIi0tZGVidWcgcmVxdWlyZXMgYW4gb2N0YWwgYXJndW1lbnQiCittc2dzdHIgIi0tZGVidWcga3LDpnZlciBldCBva3RhbHQgcGFyYW1ldGVyIgorCisjOiBzcmMvbWFpbi5jOjM0OAorIywgYy1mb3JtYXQKK21zZ2lkICJudWxsIHBhY2thZ2UgbmFtZSBpbiAtLWlnbm9yZS1kZXBlbmRzIGNvbW1hLXNlcGFyYXRlZCBsaXN0IGAlLjI1MHMnIgorbXNnc3RyICJ0b210IHBha2tlbmF2biBpIC0taWdub3JlLWRlcGVuZHMga29tbWFzZXBhcmVyZXQgbGlzdGUgJyUuMjUwcyciCisKKyM6IHNyYy9tYWluLmM6MzU0CisjLCBjLWZvcm1hdAorbXNnaWQgIi0taWdub3JlLWRlcGVuZHMgcmVxdWlyZXMgYSBsZWdhbCBwYWNrYWdlIG5hbWUuIGAlLjI1MHMnIGlzIG5vdDsgJXMiCittc2dzdHIgIi0taWdub3JlLWRlcGVuZHMga3LDpnZlciBldCBneWxkaWd0IHBha2tlbmF2bi4gRGV0IGVyICclLjI1MHMnIGlra2U7ICVzIgorCisjOiBzcmMvbWFpbi5jOjM3MSBzcmMvbWFpbi5jOjM4MSBzcmMvbWFpbi5jOjY0OSBkcGtnLXNwbGl0L21haW4uYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBpbnRlZ2VyIGZvciAtLSVzOiBgJS4yNTBzJyIKK21zZ3N0ciAidWd5bGRpZ3QgaGVsdGFsIGZvciAtLSVzOiAnJS4yNTBzJyIKKworIzogc3JjL21haW4uYzo0MzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgZXhlY3V0aW5nIGhvb2sgJyVzJywgZXhpdCBjb2RlICVkIgorbXNnc3RyICJmZWpsIHZlZCB0aWxiYWdla2FsZGV0ICclcycsIGZlamxrb2RlICVkIgorCisjOiBzcmMvbWFpbi5jOjQ2NQorIywgZnV6enkKKyN8IG1zZ2lkICJzdGF0dXMiCittc2dpZCAic3RhdHVzIGxvZ2dlciIKK21zZ3N0ciAic3RhdHVzIgorCisjOiBzcmMvbWFpbi5jOjQ4MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXMgZm9yY2luZyBvcHRpb25zIC0gY29udHJvbCBiZWhhdmlvdXIgd2hlbiBwcm9ibGVtcyBmb3VuZDpcbiIKKyIgIHdhcm4gYnV0IGNvbnRpbnVlOiAgLS1mb3JjZS08dGhpbmc+LDx0aGluZz4sLi4uXG4iCisiICBzdG9wIHdpdGggZXJyb3I6ICAgIC0tcmVmdXNlLTx0aGluZz4sPHRoaW5nPiwuLi4gfCAtLW5vLWZvcmNlLTx0aGluZz4sLi4uXG4iCisiIEZvcmNpbmcgdGhpbmdzOlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6NDkwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJXQVJOSU5HIC0gdXNlIG9mIG9wdGlvbnMgbWFya2VkIFshXSBjYW4gc2VyaW91c2x5IGRhbWFnZSB5b3VyIGluc3RhbGxhdGlvbi5cbiIKKyJGb3JjaW5nIG9wdGlvbnMgbWFya2VkIFsqXSBhcmUgZW5hYmxlZCBieSBkZWZhdWx0LlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6NTA0CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gZm9yY2UvcmVmdXNlIG9wdGlvbiBgJS4qcyciCittc2dzdHIgInVrZW5kdCBnZW5uZW10dmluZ25pbmdzL2FmdmlzbmluZ3MtdGlsdmFsZyAnJS4qcyciCisKKyM6IHNyYy9tYWluLmM6NTEzCisjLCBjLWZvcm1hdAorbXNnaWQgIm9ic29sZXRlIGZvcmNlL3JlZnVzZSBvcHRpb24gJyVzJ1xuIgorbXNnc3RyICJmb3LDpmxkZXQgZ2VubmVtdHZhbmdzL2FmdmlzbmluZ3MtdGlsdmFsZyAnJXMnXG4iCisKKyM6IHNyYy9tYWluLmM6NjQzCittc2dpZCAiLS1jb21tYW5kLWZkIHRha2VzIG9uZSBhcmd1bWVudCwgbm90IHplcm8iCittc2dzdHIgIi0tY29tbWFuZC1mZCB0YWdlciBlZW4gcGFyYW1ldGVyLCBpa2tlIG51bCIKKworIzogc3JjL21haW4uYzo2NDUKK21zZ2lkICItLWNvbW1hbmQtZmQgb25seSB0YWtlcyBvbmUgYXJndW1lbnQiCittc2dzdHIgIi0tY29tbWFuZC1mZCB0YWdlciBrdW4gZW4gcGFyYW1ldGVyIgorCisjOiBzcmMvbWFpbi5jOjY1MQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBvcGVuIGAlaScgZm9yIHN0cmVhbSIKK21zZ3N0ciAia3VubmUgaWtrZSDDpWJuZSAnJWknIGZvciBzdHLDuG0iCisKKyM6IHNyYy9tYWluLmM6Njc2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW9mIGJlZm9yZSBlbmQgb2YgbGluZSAlZCIKK21zZ3N0ciAidXZlbnRldCBzbHV0LXDDpS1maWwgZsO4ciBhZnNsdXRuaW5nZW4gYWYgbGluamUgJWQiCisKKyM6IHNyYy9tYWluLmM6NzE5IHNyYy9tYWluLmM6NzQxIHNyYy9xdWVyeWNtZC5jOjY5MiBzcmMvc3RhdGNtZC5jOjM3OQorIzogZHBrZy1kZWIvbWFpbi5jOjIwMSBkcGtnLXNwbGl0L21haW4uYzoxNjMKK21zZ2lkICJuZWVkIGFuIGFjdGlvbiBvcHRpb24iCittc2dzdHIgImtyw6Z2ZXIgZXQgaGFuZGxpbmdzdGlsdmFsZyIKKworIzogc3JjL3BhY2thZ2VzLmM6MTEzCittc2dpZCAiIgorInlvdSBtdXN0IHNwZWNpZnkgcGFja2FnZXMgYnkgdGhlaXIgb3duIG5hbWVzLCBub3QgYnkgcXVvdGluZyB0aGUgbmFtZXMgb2YgIgorInRoZSBmaWxlcyB0aGV5IGNvbWUgaW4iCittc2dzdHIgIiIKKyJkdSBza2FsIGFuZ2l2ZSBwYWtrZXIgdmVkIGRlcmVzIGVnbmUgbmF2bmUsIGlra2UgdmVkIGRlIGZpbG5hdm5lLCBkZSBsaWdnZXIgaSIKKworIzogc3JjL3BhY2thZ2VzLmM6MTMzCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgLS1wZW5kaW5nIGRvZXMgbm90IHRha2UgYW55IG5vbi1vcHRpb24gYXJndW1lbnRzIgorbXNnc3RyICItLSVzIC0tcGVuZGluZyB0YWdlciBpbmdlbiBpa2tlLXRpbHZhbGdzLXBhcmFtZXRyZSIKKworIzogc3JjL3BhY2thZ2VzLmM6MTM4IHNyYy9xdWVyeWNtZC5jOjM3NSBzcmMvcXVlcnljbWQuYzo1NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhdCBsZWFzdCBvbmUgcGFja2FnZSBuYW1lIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIGtyw6Z2ZXIgbWluZHN0IMOpdCBwYWtrZW5hdm4gc29tIHBhcmFtZXRlciIKKworIzogc3JjL3BhY2thZ2VzLmM6MTc5CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgJXMgbGlzdGVkIG1vcmUgdGhhbiBvbmNlLCBvbmx5IHByb2Nlc3Npbmcgb25jZS5cbiIKK21zZ3N0ciAiUGFra2VuICVzIG7DpnZuZXMgZmxlcmUgZ2FuZ2UsIGJlaGFuZGxlcyBrdW4gw6luIGdhbmcuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjE4MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiTW9yZSB0aGFuIG9uZSBjb3B5IG9mIHBhY2thZ2UgJXMgaGFzIGJlZW4gdW5wYWNrZWRcbiIKKyIgaW4gdGhpcyBydW4gISAgT25seSBjb25maWd1cmluZyBpdCBvbmNlLlxuIgorbXNnc3RyICIiCisiRmxlcmUga29waWVyIGFmIHBha2tlbiAlcyBlciBibGV2ZXQgdWRwYWtrZXQgdW5kZXJcbiIKKyIgZGVubmUga8O4cnNlbCEgS29uZmlndXJlcmVyIGRlbiBrdW4gw6luIGdhbmcuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjIzMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisicGFja2FnZSAlLjI1MHMgaXMgbm90IHJlYWR5IGZvciB0cmlnZ2VyIHByb2Nlc3NpbmdcbiIKKyIgKGN1cnJlbnQgc3RhdHVzIGAlLjI1MHMnIHdpdGggbm8gcGVuZGluZyB0cmlnZ2VycykiCittc2dzdHIgIiIKKyJwYWtrZW4gJS4yNTBzIGlra2Uga2xhciB0aWwgdWRsw7hzZXJiZWhhbmRsaW5nXG4iCisiIChudXbDpnJlbmRlIHN0YXR1cyAnJS4yNTBzJyB1ZGVuIHZlbnRlbmRlIHVkbMO4c2VyZSkiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjMzNAorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgd2hpY2ggcHJvdmlkZXMgJXMgaXMgdG8gYmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiICBQYWtrZW4gJXMsIHNvbSBnaXZlciAlcywgc2thbCB0aWwgYXQgYmxpdmUgYWZpbnN0YWxsZXJldC5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MzM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIgIFBha2tlbiAlcyBza2FsIHRpbCBhdCBibGl2ZSBhZmluc3RhbGxlcmV0LlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzozNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBWZXJzaW9uIG9mICVzIG9uIHN5c3RlbSBpcyAlcy5cbiIKK21zZ3N0ciAiICBWZXJzaW9uIGFmICVzIHDDpSBzeXN0ZW1ldCBlciAlcy5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6Mzc2CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyB3aGljaCBwcm92aWRlcyAlcyBhd2FpdHMgdHJpZ2dlciBwcm9jZXNzaW5nLlxuIgorbXNnc3RyICIgIFBha2tlbiAlcywgc29tIGdpdmVyICVzLCBhZnZlbnRlciBiZWhhbmRsaW5nIGFmIHVkbMO4c2VyZS5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MzgwCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyBhd2FpdHMgdHJpZ2dlciBwcm9jZXNzaW5nLlxuIgorbXNnc3RyICIgIFBha2tlbiAlcyBhZnZlbnRlciBiZWhhbmRsaW5nIGFmIHVkbMO4c2VyZS5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDEwCisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IGFsc28gY29uZmlndXJpbmcgYCVzJyAocmVxdWlyZWQgYnkgYCVzJylcbiIKK21zZ3N0ciAiZHBrZzoga29uZmlndXJlcmVyIG9nc8OlICclcycgKGtyw6Z2ZXQgYWYgJyVzJylcbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDE4CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyB3aGljaCBwcm92aWRlcyAlcyBpcyBub3QgY29uZmlndXJlZCB5ZXQuXG4iCittc2dzdHIgIiAgUGFra2VuICVzLCBzb20gZ2l2ZXIgJXMsIGVyIGlra2Ugc2F0IG9wIGVuZG51LlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIGlzIG5vdCBjb25maWd1cmVkIHlldC5cbiIKK21zZ3N0ciAiICBQYWtrZW4gJXMgZXIgaWtrZSBzYXQgb3AgZW5kbnUuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQzMgorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgd2hpY2ggcHJvdmlkZXMgJXMgaXMgbm90IGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiICBQYWtrZW4gJyVzLCBzb20gZ2l2ZXIgJXMsJyBlciBpa2tlIGluc3RhbGxlcmV0LlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIGlzIG5vdCBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgUGFra2VuICclcycgZXIgaWtrZSBpbnN0YWxsZXJldC5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDcyCisjLCBjLWZvcm1hdAorbXNnaWQgIiAlcyAoJXMpIGJyZWFrcyAlcyBhbmQgaXMgJXMuXG4iCittc2dzdHIgIiAlcyAoJXMpIMO4ZGVsw6ZnZ2VyICVzIG9nIGVyICVzLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlcyAoJXMpIHByb3ZpZGVzICVzLlxuIgorbXNnc3RyICIgICVzICglcykgdGlsYnlkZXIgJXMuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQ4MgorIywgYy1mb3JtYXQKK21zZ2lkICIgIFZlcnNpb24gb2YgJXMgdG8gYmUgY29uZmlndXJlZCBpcyAlcy5cbiIKK21zZ3N0ciAiICBWZXJzaW9uZW4gYWYgJXMsIGRlciBza2FsIHPDpnR0ZSBvcCwgZXIgJXMuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjU5NgorbXNnaWQgIiBkZXBlbmRzIG9uICIKK21zZ3N0ciAiIGFmaMOmbmdlciBhZiAiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjYwMgorbXNnaWQgIjsgaG93ZXZlcjpcbiIKK21zZ3N0ciAiLCBtZW46XG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiLi4uLyVzIgorbXNnc3RyICIuLi4vJXMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgZW5zdXJpbmcgYCUuMjUwcycgZG9lc24ndCBleGlzdCIKK21zZ3N0ciAia3VubmUgaWtrZSBzaWtyZSwgYXQgJyUuMjUwcycgaWtrZSBla3Npc3RlcmV0IgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjk5Cittc2dpZCAic3BsaXQgcGFja2FnZSByZWFzc2VtYmx5IgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTA4Cittc2dpZCAicmVhc3NlbWJsZWQgcGFja2FnZSBmaWxlIgorbXNnc3RyICJnZW5za2FidGUgcGFra2VmaWxlbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiQXV0aGVudGljYXRpbmcgJXMgLi4uXG4iCittc2dzdHIgIkdvZGtlbmRlciAlcy4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEzOQorbXNnaWQgInBhY2thZ2Ugc2lnbmF0dXJlIHZlcmlmaWNhdGlvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE0NgorIywgYy1mb3JtYXQKK21zZ2lkICJWZXJpZmljYXRpb24gb24gcGFja2FnZSAlcyBmYWlsZWQhIgorbXNnc3RyICJWZXJpZmlrYXRpb24gYWYgJXMgbWlzbHlra2VkZXMhIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE0OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVmVyaWZpY2F0aW9uIG9uIHBhY2thZ2UgJXMgZmFpbGVkLFxuIgorImJ1dCBpbnN0YWxsaW5nIGFueXdheSBhcyB5b3UgcmVxdWVzdGVkLlxuIgorbXNnc3RyICIiCisiVmVyaWZpa2F0aW9uIGFmICVzIG1pc2x5a2tlZGVzLFxuIgorIm1hbiBpbnN0YWxsZXJlciBhbGxpZ2V2ZWwsIGVmdGVyIGRpdCDDuG5za2UuXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTUyCisjLCBjLWZvcm1hdAorbXNnaWQgInBhc3NlZFxuIgorbXNnc3RyICJnb2RrZW5kdFxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE2NSBkcGtnLWRlYi9pbmZvLmM6ODEKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHRlbXBvcmFyeSBkaXJlY3RvcnkiCittc2dzdHIgImthbiBpa2tlIG9wcmV0dGUgbWlkbGVydGlkaWd0IGthdGFsb2ciCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MjA1CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgJXMgaGFzIHRvbyBtYW55IENvbmZsaWN0cy9SZXBsYWNlcyBwYWlycyIKK21zZ3N0ciAicGFra2VuICVzIGhhciBmb3IgbWFuZ2UgQ29uZmxpY3RzL1JlcGxhY2VzLXBhciIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyNDMKKyMsIGMtZm9ybWF0Cittc2dpZCAib2xkIHZlcnNpb24gb2YgcGFja2FnZSBoYXMgb3Zlcmx5LWxvbmcgaW5mbyBmaWxlIG5hbWUgc3RhcnRpbmcgYCUuMjUwcyciCittc2dzdHIgIiIKKyJkZW4gZ2FtbGUgdmVyc2lvbiBhZiBwYWtrZW4gaGFyIGV0IG92ZXJkcmV2ZXQgbGFuZ3QgZmlsbmF2biwgZGVyIHN0YXJ0ZXIgbWVkICIKKyInJS4yNTBzJyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyODEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBvYnNvbGV0ZSBpbmZvIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImt1bm5lIGlra2Ugc2xldHRlIGZvcsOmbGRldCBpbmZvcm1hdGlvbnNmaWwgJyUuMjUwcyciCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6Mjg2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIChzdXBwb3NlZCkgbmV3IGluZm8gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia3VubmUgaWtrZSBpbnN0YWxsZXJlIChhbnRhZ2V0KSBueSBpbmZvcm1hdGlvbnNmaWwgJyUuMjUwcyciCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6Mjk2Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gdGVtcCBjb250cm9sIGRpcmVjdG9yeSIKK21zZ3N0ciAia3VubmUgaWtrZSDDpWJuZSBtaWRsZXJ0aWRpZ3Qga29udHJvbGthdGFsb2ciCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzA3CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgY29udGFpbnMgb3Zlcmx5LWxvbmcgY29udHJvbCBpbmZvIGZpbGUgbmFtZSAoc3RhcnRpbmcgYCUuNTBzJykiCittc2dzdHIgIiIKKyJwYWtrZW4gaW5kZWhvbGRlciBldCBvdmVyZHJldmV0IGxhbmd0IGluZm9ybWF0aW9uc2ZpbG5hdm4gKHN0YXJ0ZXIgbWVkICIKKyInJS41MHMnKSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBjb250cm9sIGluZm8gY29udGFpbmVkIGRpcmVjdG9yeSBgJS4yNTBzJyIKK21zZ3N0ciAicGFra2Vrb250cm9saW5mb3JtYXRpb24gaW5kZWhvbGR0IGthdGFsb2dldCAnJS4yNTBzJyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMTYKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBjb250cm9sIGluZm8gcm1kaXIgb2YgYCUuMjUwcycgZGlkbid0IHNheSBub3QgYSBkaXIiCittc2dzdHIgIiIKKyJwYWtrZWtvbnRyb2xpbmZvcm1hdGlvbiAncm1kaXInIGFmICclLjI1MHMnIHDDpXN0b2QsIGRldCBpa2tlIGVyIGV0IGthdGFsb2ciCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzI2CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgJXMgY29udGFpbmVkIGxpc3QgYXMgaW5mbyBmaWxlIgorbXNnc3RyICJwYWtrZW4gJXMgaW5kZWhvbGR0IGVuIGxpc3RlIHNvbSBpbmZvcm1hdGlvbnNmaWwiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzMzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyBpbmZvIGZpbGUgYCUuMjUwcycgYXMgYCUuMjUwcyciCittc2dzdHIgImt1bm5lIGlra2UgaW5zdGFsbGVyZSBueSBpbmZvcm1hdGlvbnNmaWwgJyUuMjUwcycgc29tICclLjI1MHMnIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjM0OSBzcmMvcmVtb3ZlLmM6MTk4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkZWxldGUgY29udHJvbCBpbmZvIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImt1bm5lIGlra2Ugc2xldHRlIGtvbnRyb2xpbmZvcm1hdGlvbnNmaWxlbiAnJS4yNTBzJyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo0MTEKK21zZ2lkICJjYW5ub3QgYWNjZXNzIGFyY2hpdmUiCittc2dzdHIgImthbiBpa2tlIHRpbGfDpSBhcmtpdmV0IgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjQzMworIywgZnV6enkKKyN8IG1zZ2lkICJjb250cm9sIGluZm9ybWF0aW9uIGxlbmd0aCIKK21zZ2lkICJwYWNrYWdlIGNvbnRyb2wgaW5mb3JtYXRpb24gZXh0cmFjdGlvbiIKK21zZ3N0ciAia29udHJvbGluZm9ybWF0aW9uc2zDpm5nZGUiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDYwCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlY29yZGVkIGluZm8gYWJvdXQgJXMgZnJvbSAlcy5cbiIKK21zZ3N0ciAiR2VtdGUgaW5mb3JtYXRpb24gb20gJXMgZnJhICVzLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjQ2OAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGFyY2hpdGVjdHVyZSAoJXMpIGRvZXMgbm90IG1hdGNoIHN5c3RlbSAoJXMpIgorbXNnc3RyICJwYWtrZWFya2l0ZWt0dXJlbiAoJXMpIHBhc3NlciBpa2tlIHRpbCBzeXN0ZW1ldCAoJXMpIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjUyMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogcmVnYXJkaW5nICVzIGNvbnRhaW5pbmcgJXMsIHByZS1kZXBlbmRlbmN5IHByb2JsZW06XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiB2ZWRyw7hyZW5kZSAlcywgZGVyIGluZGVob2xkZXIgJXMsIGZvcmjDpW5kcy1hZmjDpm5naWdoZWRzcHJvYmxlbTpcbiIKKyIlcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1MjYKKyMsIGMtZm9ybWF0Cittc2dpZCAicHJlLWRlcGVuZGVuY3kgcHJvYmxlbSAtIG5vdCBpbnN0YWxsaW5nICUuMjUwcyIKK21zZ3N0ciAiZm9yaMOlbmRzYWZow6ZuZ2lnaGVkc3Byb2JsZW0gLSBpbnN0YWxsZXJlciBpa2tlICUuMjUwcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1MjcKK21zZ2lkICJpZ25vcmluZyBwcmUtZGVwZW5kZW5jeSBwcm9ibGVtISIKK21zZ3N0ciAiaWdub3JlcmVyIGZvcmjDpW5kc2FmaMOmbmdpZ2hlZHNwcm9ibGVtISIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHJlcGFyaW5nIHRvIHJlcGxhY2UgJXMgJXMgKHVzaW5nICVzKSAuLi5cbiIKK21zZ3N0ciAiR8O4ciBrbGFyIHRpbCBhdCBlcnN0YXR0ZSAlcyAlcyAobWVkICVzKS4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjU0OQorIywgYy1mb3JtYXQKK21zZ2lkICJVbnBhY2tpbmcgJXMgKGZyb20gJXMpIC4uLlxuIgorbXNnc3RyICJVZHBha2tlciAlcyAoZnJhICVzKS4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjU4MAorIywgYy1mb3JtYXQKK21zZ2lkICJuYW1lIG9mIGNvbmZmaWxlIChzdGFydGluZyBgJS4yNTBzJykgaXMgdG9vIGxvbmcgKD4lZCBjaGFyYWN0ZXJzKSIKK21zZ3N0ciAiIgorIm5hdm5ldCBww6Uga29uZmlndXJhdGlvbnNmaWxlbiAoc3RhcnRlciBtZWQgJyUuMjUwcycpIGVyIGZvciBsYW5ndCAoPiVkIHRlZ24pIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjYzMyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA3MQorIywgYy1mb3JtYXQKK21zZ2lkICJyZWFkIGVycm9yIGluICUuMjUwcyIKK21zZ3N0ciAibMOmc2VmZWpsIGkgJS4yNTBzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjYzNQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nICUuMjUwcyIKK21zZ3N0ciAiZmVqbCB1bmRlciBsdWtuaW5nIGFmICUuMjUwcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2MzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgdHJ5aW5nIHRvIG9wZW4gJS4yNTBzIgorbXNnc3RyICJmZWpsIHZlZCBmb3Jzw7hnIHDDpSBhdCDDpWJuZSAlLjI1MHMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6Njc4CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlLWNvbmZpZ3VyaW5nICVzLCB0byBhbGxvdyByZW1vdmFsIG9mICVzIC4uLlxuIgorbXNnc3RyICJEZWtvbmZpZ3VyZXJlciAlcywgc8OlICVzIGthbiBhZmluc3RhbGxlcmVzLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjgxCisjLCBjLWZvcm1hdAorbXNnaWQgIkRlLWNvbmZpZ3VyaW5nICVzIC4uLlxuIgorbXNnc3RyICJEZWtvbmZpZ3VyZXJlciAlcy4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjc1NQorIywgYy1mb3JtYXQKK21zZ2lkICJVbnBhY2tpbmcgcmVwbGFjZW1lbnQgJS4yNTBzIC4uLlxuIgorbXNnc3RyICJVZHBha2tlciBlcnN0YXRuaW5nIGZvciAlLjI1MHMuLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NDAKKyMsIGZ1enp5CisjfCBtc2dpZCAiZHBrZy1kZWIgZmllbGQgZXh0cmFjdGlvbiIKK21zZ2lkICJwYWNrYWdlIGZpbGVzeXN0ZW0gYXJjaGl2ZSBleHRyYWN0aW9uIgorbXNnc3RyICJmZWx0dWR0csOma25pbmcgdGlsIGRwa2ctZGViIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjg1NAorbXNnaWQgImVycm9yIHJlYWRpbmcgZHBrZy1kZWIgdGFyIG91dHB1dCIKK21zZ3N0ciAiZmVqbCB2ZWQgbMOmc25pbmcgYWYgZHBrZy1kZWIncyB0YXItdWRkYXRhIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjg1NgorbXNnaWQgImNvcnJ1cHRlZCBmaWxlc3lzdGVtIHRhcmZpbGUgLSBjb3JydXB0ZWQgcGFja2FnZSBhcmNoaXZlIgorbXNnc3RyICLDuGRlbGFndCBmaWxzeXN0ZW0tdGFyZmlsIC0gw7hkZWxhZ3QgcGFra2VhcmtpdiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NTkKK21zZ2lkICJkcGtnLWRlYjogemFwIHBvc3NpYmxlIHRyYWlsaW5nIHplcm9zIgorbXNnc3RyICJkcGtnLWRlYjogZmplcm4gbXVsaWdlIGFmc2x1dHRlbmRlIG51bGxlciIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5MTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHN0YXQgb2xkIGZpbGUgJyUuMjUwcycgc28gbm90IGRlbGV0aW5nIGl0OiAlcyIKK21zZ3N0ciAia3VubmUgaWtrZSB0aWxnw6UgZGVuIGdhbWxlIGZpbCAnJS4yNTBzJywgc8OlIGRlbiBzbGV0dGVzIGlra2U6ICVzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjkyNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGVsZXRlIG9sZCBkaXJlY3RvcnkgJyUuMjUwcyc6ICVzIgorbXNnc3RyICJrYW4gaWtrZSBzbGV0dGUgZ2FtbWVsdCBrYXRhbG9nICclLjI1MHMnOiAlcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAib2xkIGNvbmZmaWxlICclLjI1MHMnIHdhcyBhbiBlbXB0eSBkaXJlY3RvcnkgKGFuZCBoYXMgbm93IGJlZW4gZGVsZXRlZCkiCittc2dzdHIgIiIKKyJnYW1tZWwga29uZmlndXJhdGlvbnNmaWwgJyUuMjUwcycgdmFyIGV0IHRvbXQga2F0YWxvZyAob2cgZXIgbnUgYmxldmV0ICIKKyJzbGV0dGV0KSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgb3RoZXIgbmV3IGZpbGUgYCUuMjUwcyciCittc2dzdHIgImt1bm5lIGlra2UgdGlsZ8OlIGRlbiBhbmRlbiBueSBmaWwgJyUuMjUwcyciCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTg2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJvbGQgZmlsZSAnJS4yNTBzJyBpcyB0aGUgc2FtZSBhcyBzZXZlcmFsIG5ldyBmaWxlcyEgKGJvdGggJyUuMjUwcycgYW5kICIKKyInJS4yNTBzJykiCittc2dzdHIgIiIKKyJkZW4gZ2FtbGUgZmlsICclLjI1MHMnIGVyIGRlbiBzYW1tZSBzb20gYWRza2lsbGlnZSBueWUgZmlsZXIhIChiw6VkZSAlLjI1MHMnICIKKyJvZyclLjI1MHMnKSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxMDI1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWN1cmVseSByZW1vdmUgb2xkIGZpbGUgJyUuMjUwcyc6ICVzIgorbXNnc3RyICJrYW4gaWtrZSBww6Ugc2lra2VyIHZpcyBmamVybmUgZGVuIGdhbWxlIGZpbCAnJS4yNTBzJzogJXMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTIwNgorIywgYy1mb3JtYXQKK21zZ2lkICIoTm90aW5nIGRpc2FwcGVhcmFuY2Ugb2YgJXMsIHdoaWNoIGhhcyBiZWVuIGNvbXBsZXRlbHkgcmVwbGFjZWQuKVxuIgorbXNnc3RyICIiCisiKEJlbcOmcmtlciBmb3JzdmluZGluZ2VuIGFmICVzLCBkZXIgZXIgYmxldmV0IGZ1bGRzdMOmbmRpZ3QgZXJzdGF0dGV0LilcbiIKKworIyBTYXRhbnMhICBEZXQgaGVyIGVyIG92ZXJza3JpZnRlbiBpIGVuIHRhYmVsIHDDpSBmb3JtZW4gbmVkZW5mb3IuCisjCisjIERlciBlciB1bXVsaWd0IHBsYWRzIHRpbCBhdCBza3JpdmUgZGV0IGhlbGUgaW5kZW4gZm9yIDgwIGtvbG9ubmVyIChibC5hLiBmb3JkaSAnaG9sZCcgaGVkZGVyICd0aWxiYWdlaG9sZCcpLCBzw6UgamVnIGhhciBpbmRyeWtrZXQgdG8gZWtzdHJhIGxpbmplciBibGFuZHQgb3ZlcnNrcmlmdGVybmUuICBEZXR0ZSDDuGRlbMOmZ2dlciBkZXQgInBpbGUtYWd0aWdlIiBhcnJhbmdlbWVudCBhZiBiaW5kZXN0cmVnZXIgb2cgc2tyw6VzdHJlZ2VyIHRpbCB2ZW5zdHJlLCBww6UgbsOmciBkZW4gKGZvcmjDpWJlbnRsaWcpIHNuZWRpZ2UgZGV0YWxqZSBhdCAiRXJyPyItbGluamVuIGVyIGluZHJ5a2tldCBlbiBla3N0cmEgZ2FuZywgc8OlICJ0ZWduaW5nZW4iIGJ1cmRlIGtvbW1lIHVkIHNhbW1lbmjDpm5nZW5kZS4gIC1Bc2sKKyMKKyMgSGVyIGVyIGV0IGVrc2VtcGVsIHDDpSBlbiBzw6VkYW4gdGFiZWw6CisjCisjIERlc2lyZWQ9VW5rbm93bi9JbnN0YWxsL1JlbW92ZS9QdXJnZS9Ib2xkCisjIHwgU3RhdHVzPU5vdC9JbnN0L0NmZy1maWxlcy9VbnBhY2tlZC9GYWlsZWQtY2ZnL0hhbGYtaW5zdC90cmlnLWFXYWl0L1RyaWctcGVuZAorIyB8LyBFcnI/PShub25lKS9SZWluc3QtcmVxdWlyZWQgKFN0YXR1cyxFcnI6IHVwcGVyY2FzZT1iYWQpCisjIHx8LyBOYXZuICAgICAgICAgICBWZXJzaW9uICAgICAgICBCZXNrcml2ZWxzZQorIyArKystPT09PT09PT09PT09PT0tPT09PT09PT09PT09PT0tPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKyMgdW4gIGEycHMgICAgICAgICAgIDxpbmdlbj4gICAgICAgIChpbmdlbiB0aWxnw6ZuZ2VsaWcgYmVza3JpdmVsc2UpCisjIHVuICBhYWxpYjEgICAgICAgICA8aW5nZW4+ICAgICAgICAoaW5nZW4gdGlsZ8OmbmdlbGlnIGJlc2tyaXZlbHNlKQorIyB1biAgYWJyb3dzZXIgICAgICAgPGluZ2VuPiAgICAgICAgKGluZ2VuIHRpbGfDpm5nZWxpZyBiZXNrcml2ZWxzZSkKKyMgdW4gIGFicm93c2VyLTMuNSAgIDxpbmdlbj4gICAgICAgIChpbmdlbiB0aWxnw6ZuZ2VsaWcgYmVza3JpdmVsc2UpCisjIHVuICBhYnJvd3Nlci0zLjUtYiA8aW5nZW4+ICAgICAgICAoaW5nZW4gdGlsZ8OmbmdlbGlnIGJlc2tyaXZlbHNlKQorIyB1biAgYWJyb3dzZXItMy42LWIgPGluZ2VuPiAgICAgICAgKGluZ2VuIHRpbGfDpm5nZWxpZyBiZXNrcml2ZWxzZSkKKyMgdW4gIGFicm93c2VyLWJyYW5kIDxpbmdlbj4gICAgICAgIChpbmdlbiB0aWxnw6ZuZ2VsaWcgYmVza3JpdmVsc2UpCisjIHVuICBhYnJvd3Nlci11YnVmbyA8aW5nZW4+ICAgICAgICAoaW5nZW4gdGlsZ8OmbmdlbGlnIGJlc2tyaXZlbHNlKQorIyB1biAgYWNsICAgICAgICAgICAgPGluZ2VuPiAgICAgICAgKGluZ2VuIHRpbGfDpm5nZWxpZyBiZXNrcml2ZWxzZSkKKyMgaWkgIGFjcGktc3VwcG9ydCAgIDAuMTM2LjEgICAgICAgIHNjcmlwdHMgZm9yIGhhbmRsaW5nIG1hbnkgQUNQSSBldmVudHMKKyMgaWkgIGFjcGlkICAgICAgICAgIDEuMC4xMC01dWJ1bnR1IEFkdmFuY2VkIENvbmZpZ3VyYXRpb24gYW5kIFBvd2VyIEludGVyZmFjZSBlCisjIHVuICBhZGJicyAgICAgICAgICA8aW5nZW4+ICAgICAgICAoaW5nZW4gdGlsZ8OmbmdlbGlnIGJlc2tyaXZlbHNlKQorIyAuLi4KKyMuIFRSQU5TTEFUT1JTOiBUaGlzIGlzIHRoZSBoZWFkZXIgdGhhdCBhcHBlYXJzIG9uICdkcGtnLXF1ZXJ5IC1sJy4gVGhlCisjLiAqIHN0cmluZyBzaG91bGQgcmVtYWluIHVuZGVyIDgwIGNoYXJhY3RlcnMuIFRoZSB1cHBlcmNhc2UgbGV0dGVycyBpbgorIy4gKiB0aGUgc3RhdGUgdmFsdWVzIGRlbm90ZSB0aGUgYWJicmV2aWF0ZWQgbGV0dGVyIHRoYXQgd2lsbCBhcHBlYXIgb24KKyMuICogdGhlIGZpcnN0IHRocmVlIGNvbHVtbnMsIHdoaWNoIHNob3VsZCBpZGVhbGx5IG1hdGNoIHRoZSBFbmdsaXNoIG9uZQorIy4gKiAoZS5nLiBSZW1vdmUg4oaSIHN1cFJpbWVpeCksIHNlZSBkcGtnLXF1ZXJ5KDEpIGZvciBmdXJ0aGVyIGRldGFpbHMuIFRoZQorIy4gKiB0cmFuc2xhdGVkIG1lc3NhZ2UgY2FuIHVzZSBhZGRpdGlvbmFsIGxpbmVzIGlmIG5lZWRlZC4KKyM6IHNyYy9xdWVyeWNtZC5jOjE0OQorbXNnaWQgIiIKKyJEZXNpcmVkPVVua25vd24vSW5zdGFsbC9SZW1vdmUvUHVyZ2UvSG9sZFxuIgorInwgU3RhdHVzPU5vdC9JbnN0L0NvbmYtZmlsZXMvVW5wYWNrZWQvaGFsRi1jb25mL0hhbGYtaW5zdC90cmlnLWFXYWl0L1RyaWctIgorInBlbmRcbiIKKyJ8LyBFcnI/PShub25lKS9SZWluc3QtcmVxdWlyZWQgKFN0YXR1cyxFcnI6IHVwcGVyY2FzZT1iYWQpXG4iCittc2dzdHIgIiIKKyLDmG5za2V0PVVrZW5kdC9JbnN0YWxsw6lyLyhSKWZqZXJuLyhQKXVkcmVucy90aWxiYWdlSG9sZFxuIgorInwgU3RhdHVzPShOKWlra2UvSW5zdGFsbGVyZXQvKEMpS29uZmlnZmlsZXIvVWRwYWtrZXQvKEYpaGFsdmtvbmZpZy4vXG4iCisifC8gICAgICAgSGFsdnQtaW5zdGFsbGVyZXQvKFcpYWZ2ZW50ZXItdWRsw7hzZXIvKFQpdWRsw7hzZXItYWZ2ZW50ZXJcbiIKKyJ8fCAgRmVqbD89KGluZ2VuKS90aWxiaWxiYWdlSG9sZHQvZ2VuaW5zdGFsbGF0aW9uLWtSw6Z2ZXMvWD1iZWdnZS1wcm9ibGVtZXJcbiIKKyJ8fCAvICAgICAgKFN0YXR1cywgRmVqbDogc3RvcmUgYm9nc3RhdmVyPWFsdm9ybGlndClcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MTUzCittc2dpZCAiTmFtZSIKK21zZ3N0ciAiTmF2biIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MTUzCittc2dpZCAiVmVyc2lvbiIKK21zZ3N0ciAiVmVyc2lvbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MTU0Cittc2dpZCAiRGVzY3JpcHRpb24iCittc2dzdHIgIkJlc2tyaXZlbHNlIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNDYgc3JjL3F1ZXJ5Y21kLmM6NTExIHNyYy9zZWxlY3QuYzo3NQorIywgYy1mb3JtYXQKK21zZ2lkICJObyBwYWNrYWdlcyBmb3VuZCBtYXRjaGluZyAlcy5cbiIKK21zZ3N0ciAiSW5nZW4gcGFra2VyIHBhc3NlZGUgbWVkICVzLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJzaW9uIGJ5ICVzIGZyb206ICVzXG4iCittc2dzdHIgIm9tZGlyaWdlcmV0IGFmICVzIGZyYTogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6Mjc1CisjLCBjLWZvcm1hdAorbXNnaWQgImRpdmVyc2lvbiBieSAlcyB0bzogJXNcbiIKK21zZ3N0ciAib21kaXJpZ2VyZXQgYWYgJXMgdGlsOiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9jYWwgZGl2ZXJzaW9uIGZyb206ICVzXG4iCittc2dzdHIgImxva2FsIG9tcm9rZXJpbmcgZnJhOiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9jYWwgZGl2ZXJzaW9uIHRvOiAlc1xuIgorbXNnc3RyICJsb2thbCBvbWRpcmlnZXJpbmcgdGlsOiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzozMDkKK21zZ2lkICItLXNlYXJjaCBuZWVkcyBhdCBsZWFzdCBvbmUgZmlsZSBuYW1lIHBhdHRlcm4gYXJndW1lbnQiCittc2dzdHIgIi0tc2VhcmNoIGtyw6Z2ZXIgbWluZHN0IMOpdCBmaWxuYXZuc23DuG5zdGVyIHNvbSBwYXJhbWV0ZXIiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjM1MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiTm8gcGFja2FnZXMgZm91bmQgbWF0Y2hpbmcgJXMuXG4iCittc2dpZCAiJXM6IG5vIHBhdGggZm91bmQgbWF0Y2hpbmcgcGF0dGVybiAlcy5cbiIKK21zZ3N0ciAiSW5nZW4gcGFra2VyIHBhc3NlZGUgbWVkICVzLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzozOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSBgJXMnIGlzIG5vdCBpbnN0YWxsZWQgYW5kIG5vIGluZm8gaXMgYXZhaWxhYmxlLlxuIgorbXNnc3RyICIiCisiUGFra2VuICclcycgZXIgaWtrZSBpbnN0YWxsZXJldCBvZyBkZXIgZXIgaW5nZW4gdGlsZ8OmbmdlbGlnIGluZm9ybWF0aW9uLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSBgJXMnIGlzIG5vdCBhdmFpbGFibGUuXG4iCittc2dzdHIgIlBha2tlbiAnJXMnIGVyIGlra2UgdGlsZ8OmbmdlbGlnLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MTAgc3JjL3F1ZXJ5Y21kLmM6NTg1CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgYCVzJyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICJQYWtrZW4gJyVzJyBlciBpa2tlIGluc3RhbGxlcmV0LlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSBgJXMnIGRvZXMgbm90IGNvbnRhaW4gYW55IGZpbGVzICghKVxuIgorbXNnc3RyICJQYWtrZW4gJyVzJyBpbmRlaG9sZGVyIGluZ2VuIGZpbGVyICghKVxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9jYWxseSBkaXZlcnRlZCB0bzogJXNcbiIKK21zZ3N0ciAibG9rYWx0IG9tZGlyaWdlcmV0IHRpbDogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDI4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgZGl2ZXJ0cyBvdGhlcnMgdG86ICVzXG4iCittc2dzdHIgInBha2tlIG9tZGlyaWdlcmVyIGFuZHJlIHRpbDogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDMxCisjLCBjLWZvcm1hdAorbXNnaWQgImRpdmVydGVkIGJ5ICVzIHRvOiAlc1xuIgorbXNnc3RyICJvbWRpcmlnZXJldCBhZiAlcyB0aWwgJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDUyCittc2dpZCAiIgorIlVzZSBkcGtnIC0taW5mbyAoPSBkcGtnLWRlYiAtLWluZm8pIHRvIGV4YW1pbmUgYXJjaGl2ZSBmaWxlcyxcbiIKKyJhbmQgZHBrZyAtLWNvbnRlbnRzICg9IGRwa2ctZGViIC0tY29udGVudHMpIHRvIGxpc3QgdGhlaXIgY29udGVudHMuXG4iCittc2dzdHIgIiIKKyJCcnVnIGRwa2cgLS1pbmZvICg9IGRwa2ctZGViIC0taW5mbykgdGlsIGF0IHVuZGVyc8O4Z2UgYXJraXZmaWxlcixcbiIKKyJvZyBkcGtnIC0tY29udGVudHMgKD0gZHBrZy1kZWIgLS1jb250ZW50cykgdGlsIGF0IHZpc2UgZGVyZXMgaW5kaG9sZC5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NTcwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgYXQgbW9zdCB0d28gYXJndW1lbnRzIgorbXNnc3RyICItLSVzIGthbiBow7hqZXN0IHRhZ2UgdG8gYXJndW1lbnRlciIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NTc4CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbnRyb2wgZmlsZSBjb250YWlucyAlYyIKK21zZ3N0ciAia29udHJvbGZpbGVuIGluZGVob2xkZXIgJWMiCisKKyMgRGViaWFuLSVzLXBha2tlaMOlbmR0ZXJpbmdzcHJvZ3JhbWZvcmVzcMO4cmdzZWxzdsOmcmt0w7hqIHZlcnNpb24gJXMuCisjOiBzcmMvcXVlcnljbWQuYzo2MDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuICVzIHBhY2thZ2UgbWFuYWdlbWVudCBwcm9ncmFtIHF1ZXJ5IHRvb2wgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiIgorIlByb2dyYW1mb3Jlc3DDuHJnc2Vsc3bDpnJrdMO4amV0ICVzIHZlcnNpb24gJXMgdGlsIERlYmlhbnBha2tlaMOlbmR0ZXJpbmcuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjYxOQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIkNvbW1hbmRzOlxuIgorI3wgIiAgLXN8LS1zdGF0dXMgPHBhY2thZ2U+IC4uLiAgICAgICAgRGlzcGxheSBwYWNrYWdlIHN0YXR1cyBkZXRhaWxzLlxuIgorI3wgIiAgLXB8LS1wcmludC1hdmFpbCA8cGFja2FnZT4gLi4uICAgRGlzcGxheSBhdmFpbGFibGUgdmVyc2lvbiBkZXRhaWxzLlxuIgorI3wgIiAgLUx8LS1saXN0ZmlsZXMgPHBhY2thZ2U+IC4uLiAgICAgTGlzdCBmaWxlcyBgb3duZWQnIGJ5IHBhY2thZ2UocykuXG4iCisjfCAiICAtbHwtLWxpc3QgWzxwYXR0ZXJuPiAuLi5dICAgICAgICBMaXN0IHBhY2thZ2VzIGNvbmNpc2VseS5cbiIKKyN8ICIgIC1XfC0tc2hvdyA8cGF0dGVybj4gLi4uICAgICAgICAgIFNob3cgaW5mb3JtYXRpb24gb24gcGFja2FnZShzKS5cbiIKKyN8ICIgIC1TfC0tc2VhcmNoIDxwYXR0ZXJuPiAuLi4gICAgICAgIEZpbmQgcGFja2FnZShzKSBvd25pbmcgZmlsZShzKS5cbiIKKyN8ICIgIC1jfC0tY29udHJvbC1wYXRoIDxwYWNrYWdlPiBbPGZpbGU+XVxuIgorI3wgIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHJpbnQgcGF0aCBmb3IgcGFja2FnZSBjb250cm9sIGZpbGUuXG4iCisjfCAiXG4iCittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLXN8LS1zdGF0dXMgPHBhY2thZ2U+IC4uLiAgICAgICAgRGlzcGxheSBwYWNrYWdlIHN0YXR1cyBkZXRhaWxzLlxuIgorIiAgLXB8LS1wcmludC1hdmFpbCA8cGFja2FnZT4gLi4uICAgRGlzcGxheSBhdmFpbGFibGUgdmVyc2lvbiBkZXRhaWxzLlxuIgorIiAgLUx8LS1saXN0ZmlsZXMgPHBhY2thZ2U+IC4uLiAgICAgTGlzdCBmaWxlcyBgb3duZWQnIGJ5IHBhY2thZ2UocykuXG4iCisiICAtbHwtLWxpc3QgWzxwYXR0ZXJuPiAuLi5dICAgICAgICBMaXN0IHBhY2thZ2VzIGNvbmNpc2VseS5cbiIKKyIgIC1XfC0tc2hvdyBbPHBhdHRlcm4+IC4uLl0gICAgICAgIFNob3cgaW5mb3JtYXRpb24gb24gcGFja2FnZShzKS5cbiIKKyIgIC1TfC0tc2VhcmNoIDxwYXR0ZXJuPiAuLi4gICAgICAgIEZpbmQgcGFja2FnZShzKSBvd25pbmcgZmlsZShzKS5cbiIKKyIgIC1jfC0tY29udHJvbC1wYXRoIDxwYWNrYWdlPiBbPGZpbGU+XVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHJpbnQgcGF0aCBmb3IgcGFja2FnZSBjb250cm9sIGZpbGUuXG4iCisiXG4iCittc2dzdHIgIiIKKyJLb21tYW5kb2VyOlxuIgorIiAgLXN8LS1zdGF0dXMgPHBha2tlPiAuLi4gICAgICAgICAgdmlzZXIgZGV0YWxqZXIgb20gcGFra2VzdGF0dXMuXG4iCisiICAtcHwtLXByaW50LWF2YWlsIDxwYWtrZT4gLi4uICAgICB2aXMgZGV0YWxqZXIgb20gdGlsZ8OmbmdlbGlnIHZlcnNpb24uXG4iCisiICAtTHwtLWxpc3RmaWxlcyA8cGFra2U+IC4uLiAgICAgICB2aXMgZmlsZXIsIGRlciAnZWplcycgYWYgcGFra2VyLlxuIgorIiAgLWx8LS1saXN0IFs8bcO4bnN0ZXI+IC4uLl0gICAgICAgIHZpcyBwYWtrZXIga29uY2lzdC5cbiIKKyIgIC1XfC0tc2hvdyA8bcO4bnN0ZXI+IC4uLiAgICAgICAgICB2aXMgb3BseXNuaW5nZXIgb20gcGFra2VyLlxuIgorIiAgLVN8LS1zZWFyY2ggPG3DuG5zdGVyPiAuLi4gICAgICAgIGZpbmQgcGFra2VyLCBkZXIgZWplciBmaWxlci5cbiIKKyJcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjM2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hZG1pbmRpcj08ZGlyZWN0b3J5PiAgICAgICAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMuXG4iCisiICAtZnwtLXNob3dmb3JtYXQ9PGZvcm1hdD4gICAgICAgICBVc2UgYWx0ZXJuYXRpdmUgZm9ybWF0IGZvciAtLXNob3cuXG4iCisiXG4iCittc2dzdHIgIiIKKyJUaWx2YWxnOlxuIgorIiAgLS1hZG1pbmRpcj08a2F0YWxvZz4gICAgICAgICAgICAgICAgQnJ1ZyA8a2F0YWxvZz4gaSBzdGVkZXQgZm9yICVzXG4iCisiICAtZnwtLXNob3dmb3JtYXQ9PGZvcm1hdD4gICAgICAgICAgICBCcnVnIGFsdGVybmF0aXZ0IGZvcm1hdCB0aWwgLS1zaG93XG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjY0MiBkcGtnLWRlYi9tYWluLmM6MTEyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJGb3JtYXQgc3ludGF4OlxuIgorIiAgQSBmb3JtYXQgaXMgYSBzdHJpbmcgdGhhdCB3aWxsIGJlIG91dHB1dCBmb3IgZWFjaCBwYWNrYWdlLiBUaGUgZm9ybWF0XG4iCisiICBjYW4gaW5jbHVkZSB0aGUgc3RhbmRhcmQgZXNjYXBlIHNlcXVlbmNlcyBcXG4gKG5ld2xpbmUpLCBcXHIgKGNhcnJpYWdlXG4iCisiICByZXR1cm4pIG9yIFxcXFwgKHBsYWluIGJhY2tzbGFzaCkuIFBhY2thZ2UgaW5mb3JtYXRpb24gY2FuIGJlIGluY2x1ZGVkXG4iCisiICBieSBpbnNlcnRpbmcgdmFyaWFibGUgcmVmZXJlbmNlcyB0byBwYWNrYWdlIGZpZWxkcyB1c2luZyB0aGUgJHt2YXJbOyIKKyJ3aWR0aF19XG4iCisiICBzeW50YXguIEZpZWxkcyB3aWxsIGJlIHJpZ2h0LWFsaWduZWQgdW5sZXNzIHRoZSB3aWR0aCBpcyBuZWdhdGl2ZSBpbiAiCisid2hpY2hcbiIKKyIgIGNhc2UgbGVmdCBhbGlnbm1lbnQgd2lsbCBiZSB1c2VkLlxuIgorbXNnc3RyICIiCisiRm9ybWF0LXN5bnRha3M6XG4iCisiICBFdCBmb3JtYXQgZXIgZW4gc3RyZW5nLCBkZXIgdWRsw6ZzZXMgZm9yIGh2ZXIgcGFra2UuIEZvcm1hdGV0IGthbiBvbWZhdHRlXG4iCisiICBzdGFuZGFyZC1lc2NhcGVzZWt2ZW5zZW4gXFxuIChsaW5qZXNraWZ0KSwgXFxyICh2b2ducmV0dXIpIGVsbGVyIFxcXFxcbiIKKyIgIChyZW4gYmFja3NsYXNoKS4gUGFra2VvcGx5c25pbmdlciBrYW4gbWVkdGFnZXMgdmVkIGF0IGluZHPDpnR0ZSB2YXJpYWJlbC1cbiIKKyIgIHJlZmVyZW5jZXIgdGlsIHBha2tlZmVsdGVyIG1lZCBzeW50YWtzZW4gJHt2YXJbO2JyZWRkZV19LiBGZWx0ZXJuZSBibGl2ZXJcbiIKKyIgIGjDuGpyZWp1c3RlcmV0LCBtZWRtaW5kcmUgYnJlZGRlbiBlciBuZWdhdGl2LiBJIHPDpSBmYWxkIGJlbnl0dGVzXG4iCisiICB2ZW5zdHJlanVzdGVyaW5nLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo2NTYKK21zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IHF1ZXJ5aW5nIHBhY2thZ2VzLiIKK21zZ3N0ciAiQnJ1ZyAtLWhlbHAgZm9yIGF0IGbDpSBoasOmbHAgb20gcGFra2Vmb3Jlc3DDuHJnc2VsLiIKKworIzogc3JjL3JlbW92ZS5jOjg4CisjLCBjLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nIHJlcXVlc3QgdG8gcmVtb3ZlICUuMjUwcyB3aGljaCBpc24ndCBpbnN0YWxsZWQuIgorbXNnc3RyICJpZ25vcmVyZXIgw7huc2tldCBvbSBhdCBmamVybmUgJS4yNTBzLCBzb20gaWtrZSBlciBpbnN0YWxsZXJldC4iCisKKyM6IHNyYy9yZW1vdmUuYzo5NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiaWdub3JpbmcgcmVxdWVzdCB0byByZW1vdmUgJS4yNTBzLCBvbmx5IHRoZSBjb25maWdcbiIKKyIgZmlsZXMgb2Ygd2hpY2ggYXJlIG9uIHRoZSBzeXN0ZW0uIFVzZSAtLXB1cmdlIHRvIHJlbW92ZSB0aGVtIHRvby4iCittc2dzdHIgIiIKKyJpZ25vcmVyZXIgw7huc2tldCBvbSBhdCBmamVybmUgJS4yNTBzLiBLdW4ga29uZmlndXJhdGlvbnMtXG4iCisiZmlsZXJuZSBlciBww6Ugc3lzdGVtZXQuIEJydWcgLS1wdXJnZSBmb3Igb2dzw6UgYXQgZmplcm5lIGRpc3NlLiIKKworIzogc3JjL3JlbW92ZS5jOjEwMworbXNnaWQgIlRoaXMgaXMgYW4gZXNzZW50aWFsIHBhY2thZ2UgLSBpdCBzaG91bGQgbm90IGJlIHJlbW92ZWQuIgorbXNnc3RyICJEZXR0ZSBlciBlbiBlc3NlbnRpZWwgcGFra2UgLSBkZW4gYsO4ciBpa2tlIGFmaW5zdGFsbGVyZXMuIgorCisjOiBzcmMvcmVtb3ZlLmM6MTI4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBkZXBlbmRlbmN5IHByb2JsZW1zIHByZXZlbnQgcmVtb3ZhbCBvZiAlczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6IGFmaMOmbmdpZ2hlZHNwcm9ibGVtZXIgZm9yaGluZHJlciBhZmluc3RhbGxhdGlvbiBhZiAlczpcbiIKKyIlcyIKKworIzogc3JjL3JlbW92ZS5jOjEzMAorbXNnaWQgImRlcGVuZGVuY3kgcHJvYmxlbXMgLSBub3QgcmVtb3ZpbmciCittc2dzdHIgImFmaMOmbmdpZ2hlZHNwcm9ibGVtZXIgLSBhZmluc3RhbGxlcmVyIGlra2UiCisKKyM6IHNyYy9yZW1vdmUuYzoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6ICVzOiBkZXBlbmRlbmN5IHByb2JsZW1zLCBidXQgcmVtb3ZpbmcgYW55d2F5IGFzIHlvdSByZXF1ZXN0ZWQ6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiAlczogYWZow6ZuZ2lnaGVkc3Byb2JsZW1lciwgbWVuIGFmaW5zdGFsbGVyZXIgZWZ0ZXIgZGl0IMO4bnNrZSAiCisiYWxsaWdldmVsOlxuIgorIiVzIgorCisjOiBzcmMvcmVtb3ZlLmM6MTQyCittc2dpZCAiIgorIlBhY2thZ2UgaXMgaW4gYSB2ZXJ5IGJhZCBpbmNvbnNpc3RlbnQgc3RhdGUgLSB5b3Ugc2hvdWxkXG4iCisiIHJlaW5zdGFsbCBpdCBiZWZvcmUgYXR0ZW1wdGluZyBhIHJlbW92YWwuIgorbXNnc3RyICIiCisiUGFra2VuIGVyIGkgZW4gbWVnZXQgZMOlcmxpZywgaW5rb25zaXN0ZW50IHRpbHN0YW5kIC0gZHUgYsO4clxuIgorIiBnZW5pbnN0YWxsZXJlIGRlbiBpbmRlbiBkdSBmb3Jzw7hnZXIgYXQgYWZpbnN0YWxsZXJlIGRlbi4iCisKKyM6IHNyYy9yZW1vdmUuYzoxNDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiV291bGQgcmVtb3ZlIG9yIHB1cmdlICVzIC4uLlxuIgorbXNnc3RyICJWaWxsZSBhZmluc3RhbGxlcmUgZWxsZXIgdWRyZW5zZSAlcy4uLlxuIgorCisjOiBzcmMvcmVtb3ZlLmM6MTU3CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlbW92aW5nICVzIC4uLlxuIgorbXNnc3RyICJBZmluc3RhbGxlcmVyICVzLi4uXG4iCisKKyM6IHNyYy9yZW1vdmUuYzoyNzUgc3JjL3JlbW92ZS5jOjM2NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisid2hpbGUgcmVtb3ZpbmcgJS4yNTBzLCB1bmFibGUgdG8gcmVtb3ZlIGRpcmVjdG9yeSAnJS4yNTBzJzogJXMgLSBkaXJlY3RvcnkgIgorIm1heSBiZSBhIG1vdW50IHBvaW50PyIKK21zZ3N0ciAiIgorImt1bm5lIHZlZCBhZmluc3RhbGxhdGlvbiBhZiAlLjI1MHMgaWtrZSBmamVybmUga2F0YWxvZ2V0ICclLjI1MHMnOiAlcyAtIGthbiAiCisia2F0YWxvZ2V0IHbDpnJlIGV0IG1vbnRlcmluZ3NwdW5rdD8iCisKKyM6IHNyYy9yZW1vdmUuYzoyODkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNlY3VyZWx5IHJlbW92ZSAnJS4yNTBzJyIKK21zZ3N0ciAia2FuIGlra2UgcMOlIHNpa2tlciB2aXMgZmplcm5lICclLjI1MHMnIgorCisjOiBzcmMvcmVtb3ZlLmM6MzYxCisjLCBjLWZvcm1hdAorbXNnaWQgIndoaWxlIHJlbW92aW5nICUuMjUwcywgZGlyZWN0b3J5ICclLjI1MHMnIG5vdCBlbXB0eSBzbyBub3QgcmVtb3ZlZC4iCittc2dzdHIgIiIKKyJ2ZWQgZmplcm5lbHNlIGFmICUuMjUwcyB2YXIga2F0YWxvZ2V0ICclLjI1MHMnIGlra2UgdG9tdCAtIGZqZXJuZXMgaWtrZS4iCisKKyM6IHNyYy9yZW1vdmUuYzozODMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImNhbm5vdCByZW1vdmUgYCUuMjUwcyciCittc2dpZCAiY2Fubm90IHJlbW92ZSAnJS4yNTBzJyIKK21zZ3N0ciAia2FuIGlra2UgYWZpbnN0YWxsZXJlICclLjI1MHMnIgorCisjOiBzcmMvcmVtb3ZlLmM6NDA5CisjLCBjLWZvcm1hdAorbXNnaWQgIlB1cmdpbmcgY29uZmlndXJhdGlvbiBmaWxlcyBmb3IgJXMgLi4uXG4iCittc2dzdHIgIlVkcmVuc2VyIGtvbmZpZ3VyYXRpb25zZmlsZXIgZm9yICVzLi4uXG4iCisKKyM6IHNyYy9yZW1vdmUuYzo0NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlbW92ZSBvbGQgY29uZmlnIGZpbGUgYCUuMjUwcycgKD0gYCUuMjUwcycpIgorbXNnc3RyICJrYW4gaWtrZSBzbGV0dGUgZ2FtbWVsIGtvbmZpZ3VyYXRpb25zZmlsICclLjI1MHMnICg9ICclLjI1MHMnKSIKKworIzogc3JjL3JlbW92ZS5jOjQ3NAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVhZCBjb25maWcgZmlsZSBkaXIgYCUuMjUwcycgKGZyb20gYCUuMjUwcycpIgorbXNnc3RyICJrYW4gaWtrZSBsw6ZzZSBrb25maWd1cmF0aW9uc2ZpbHMta2F0YWxvZ2V0ICUuMjUwcycgKGZyYSAnJS4yNTBzJykiCisKKyM6IHNyYy9yZW1vdmUuYzo1MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlbW92ZSBvbGQgYmFja3VwIGNvbmZpZyBmaWxlIGAlLjI1MHMnIChvZiBgJS4yNTBzJykiCittc2dzdHIgIiIKKyJrYW4gaWtrZSBzbGV0dGUgZ2FtbWVsIHNpa2tlcmhlZHNrb3BpIGFmIGtvbmZpZ3VyYXRpb25zZmlsZW4gJyUuMjUwcycgKGZyYSAiCisiJyUuMjUwcycpIgorCisjOiBzcmMvcmVtb3ZlLmM6NTY4Cittc2dpZCAiY2Fubm90IHJlbW92ZSBvbGQgZmlsZXMgbGlzdCIKK21zZ3N0ciAia2FuIGlra2Ugc2xldHRlIGdhbW1lbCBmaWxsaXN0ZSIKKworIzogc3JjL3JlbW92ZS5jOjU3NAorbXNnaWQgImNhbid0IHJlbW92ZSBvbGQgcG9zdHJtIHNjcmlwdCIKK21zZ3N0ciAia2FuIGlra2Ugc2xldHRlIGdhbW1lbHQgJ3Bvc3RybSctc2NyaXB0IgorCisjOiBzcmMvc2VsZWN0LmM6MTE1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW9mIGluIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICJ1dmVudGV0IHNsdXQtcMOlLWZpbCBpIHBha2tlbmF2biBww6UgbGluamUgJWQiCisKKyM6IHNyYy9zZWxlY3QuYzoxMTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgbGluZSBpbiBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZCIKK21zZ3N0ciAidXZlbnRldCBsaW5qZWFmc2x1dG5pbmcgaSBwYWtrZW5hdm4gcMOlIGxpbmplICVkIgorCisjOiBzcmMvc2VsZWN0LmM6MTIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW9mIGFmdGVyIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICJ1dmVudGV0IHNsdXQtcMOlLWZpbCBlZnRlciBwYWtrZW5hdm4gcMOlIGxpbmplICVkIgorCisjOiBzcmMvc2VsZWN0LmM6MTIzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGxpbmUgYWZ0ZXIgcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQiCittc2dzdHIgInV2ZW50ZXQgbGluamVhZnNsdXRuaW5nIGVmdGVyIHBha2tlbmF2biBww6UgbGluamUgJWQiCisKKyM6IHNyYy9zZWxlY3QuYzoxMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBkYXRhIGFmdGVyIHBhY2thZ2UgYW5kIHNlbGVjdGlvbiBhdCBsaW5lICVkIgorbXNnc3RyICJ1dmVudGVkZSBkYXRhIGVmdGVyIHBha2tlIG9nIHZhbGcgcMOlIGxpbmplICVkIgorCisjOiBzcmMvc2VsZWN0LmM6MTM5CisjLCBjLWZvcm1hdAorbXNnaWQgImlsbGVnYWwgcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQ6ICUuMjUwcyIKK21zZ3N0ciAidWd5bGRpZ3QgcGFra2VuYXZuIHDDpSBsaW5qZSAlZDogJS4yNTBzIgorCisjOiBzcmMvc2VsZWN0LmM6MTQzCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gd2FudGVkIHN0YXR1cyBhdCBsaW5lICVkOiAlLjI1MHMiCittc2dzdHIgInVrZW5kdCDDuG5za2V0IHN0YXR1cyBww6UgbGluamUgJWQ6ICUuMjUwcyIKKworIzogc3JjL3NlbGVjdC5jOjE0OQorbXNnaWQgInJlYWQgZXJyb3Igb24gc3RhbmRhcmQgaW5wdXQiCittc2dzdHIgImzDpnNlZmVqbCBmcmEgc3RhbmRhcmQtaW5kZGF0YSIKKworIzogc3JjL3N0YXRjbWQuYzo1MgorIywgZnV6enkKKyN8IG1zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IHF1ZXJ5aW5nIHBhY2thZ2VzLiIKK21zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IG92ZXJyaWRpbmcgZmlsZSBzdGF0IGluZm9ybWF0aW9uLiIKK21zZ3N0ciAiQnJ1ZyAtLWhlbHAgZm9yIGF0IGbDpSBoasOmbHAgb20gcGFra2Vmb3Jlc3DDuHJnc2VsLiIKKworIzogc3JjL3N0YXRjbWQuYzo2MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29weXJpZ2h0IChDKSAyMDAwLCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDA2LTIwMDkgR3VpbGxlbSBKb3Zlci5cbiIKK21zZ3N0ciAiIgorIk9waGF2c3JldCAoQykgMjAwMCwgMjAwMSBXaWNoZXJ0IEFra2VybWFuLlxuIgorIk9waGF2c3JldCAoQykgMjAwNi0yMDA5IEd1aWxsZW0gSm92ZXIuXG4iCisKKyM6IHNyYy9zdGF0Y21kLmM6ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLS1hZGQgPG93bmVyPiA8Z3JvdXA+IDxtb2RlPiA8ZmlsZT5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBhZGQgYSBuZXcgZW50cnkgaW50byB0aGUgZGF0YWJhc2UuXG4iCisiICAtLXJlbW92ZSA8ZmlsZT4gICAgICAgICAgcmVtb3ZlIGZpbGUgZnJvbSB0aGUgZGF0YWJhc2UuXG4iCisiICAtLWxpc3QgWzxnbG9iLXBhdHRlcm4+XSAgbGlzdCBjdXJyZW50IG92ZXJyaWRlcyBpbiB0aGUgZGF0YWJhc2UuXG4iCisiXG4iCittc2dzdHIgIiIKKyJLb21tYW5kb2VyOlxuIgorIiAgLS1hZGQgPGVqZXI+IDxncnVwcGU+IDx0aWxzdGFuZD4gPGZpbD5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICB0aWxmw7hqIGVuIG55IGluZGdhbmcgaSBkYXRhYmFzZW4uXG4iCisiICAtLXJlbW92ZSA8ZmlsPiAgICAgICAgICAgZmplcm4gZmlsIGZyYSBkYXRhYmFzZW4uXG4iCisiICAtLWxpc3QgWzxnbG9iLW3DuG5zdGVyPl0gIHZpcyBudXbDpnJlbmRlIHRpbHNpZGVzw6Z0dGVsc2VyIGkgZGF0YWJhc2VuLlxuIgorIlxuIgorCisjOiBzcmMvc3RhdGNtZC5jOjg5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIHNldCB0aGUgZGlyZWN0b3J5IHdpdGggdGhlIHN0YXRvdmVycmlkZSBmaWxlLlxuIgorIiAgLS11cGRhdGUgICAgICAgICAgICAgICAgIGltbWVkaWF0ZWx5IHVwZGF0ZSBmaWxlIHBlcm1pc3Npb25zLlxuIgorIiAgLS1mb3JjZSAgICAgICAgICAgICAgICAgIGZvcmNlIGFuIGFjdGlvbiBldmVuIGlmIGEgc2FuaXR5IGNoZWNrIGZhaWxzLlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHF1aWV0IG9wZXJhdGlvbiwgbWluaW1hbCBvdXRwdXQuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorbXNnc3RyICIiCisiVGlsdmFsZzpcbiIKKyIgIC0tYWRtaW5kaXIgPGthdGFsb2c+ICAgICBzw6Z0IGthdGFsb2dldCBtZWQgc3RhdG92ZXJyaWRlLWZpbGVuLlxuIgorIiAgLS11cGRhdGUgICAgICAgICAgICAgICAgIG9wZGF0w6lyIMO4amVibGlra2VsaWd0IGZpbHJldHRpZ2hlZGVyLlxuIgorIiAgLS1mb3JjZSAgICAgICAgICAgICAgICAgIGdlbm5lbXR2aW5nIGhhbmRsaW5nIHRyb2RzIGZlamxldCAiCisidmFsaWRpdGV0c3RqZWsuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgc3RpbGxlIGJlYXJiZWpkbmluZywgbWluaW1hbGUgdWRkYXRhLlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHZpcyBkZW5uZSBoasOmbHBlYmVza2VkLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHZpcyB2ZXJzaW9uZW4uXG4iCisKKyM6IHNyYy9zdGF0Y21kLmM6MTE2Cittc2dpZCAic3RyaXBwaW5nIHRyYWlsaW5nIC8iCittc2dzdHIgImZqZXJuZXIgYWZzbHV0dGVuZGUgLyIKKworIzogc3JjL3N0YXRjbWQuYzoyMDcKK21zZ2lkICJjYW5ub3Qgb3BlbiBuZXcgc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgImthbiBpa2tlIMOlYm5lIG55IHN0YXRvdmVycmlkZS1maWwiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjIyCittc2dpZCAiZXJyb3IgcmVtb3Zpbmcgc3RhdG92ZXJyaWRlLW9sZCIKK21zZ3N0ciAiZmVqbCB1bmRlciBmamVybmVsc2UgYWYgc3RhdG92ZXJyaWRlLW9sZCIKKworIzogc3JjL3N0YXRjbWQuYzoyMjQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBuZXcgc3RhdG92ZXJyaWRlLW9sZCIKK21zZ3N0ciAiZmVqbCB1bmRlciBvcHJldHRlbHNlIGFmIG55IHN0YXRvdmVycmlkZS1vbGQiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjI2Cittc2dpZCAiZXJyb3IgaW5zdGFsbGluZyBuZXcgc3RhdG92ZXJyaWRlIgorbXNnc3RyICJmZWpsIHVuZGVyIGluc3RhbGxhdGlvbiBhZiBueSBzdGF0b3ZlcnJpZGUiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjQ2Cittc2dpZCAiLS1hZGQgbmVlZHMgZm91ciBhcmd1bWVudHMiCittc2dzdHIgIi0tYWRkIGtyw6Z2ZXIgZmlyZSBwYXJhbWV0cmUiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjU2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJBbiBvdmVycmlkZSBmb3IgJyVzJyBhbHJlYWR5IGV4aXN0cywgYnV0IC0tZm9yY2Ugc3BlY2lmaWVkIHNvIHdpbGwgYmUgIgorImlnbm9yZWQuIgorbXNnc3RyICIiCisiRGVyIGZpbmRlcyBhbGxlcmVkZSBlbiBvbWfDpWVsc2UgZm9yICclcycsIG1lbiBkZW5uZSBpZ25vcmVyZXMgZ2l2ZXQgLS1mb3JjZS4iCisKKyM6IHNyYy9zdGF0Y21kLmM6MjYwCisjLCBjLWZvcm1hdAorbXNnaWQgIkFuIG92ZXJyaWRlIGZvciAnJXMnIGFscmVhZHkgZXhpc3RzLCBhYm9ydGluZy4iCittc2dzdHIgIkRlciBmaW5kZXMgYWxsZXJlZGUgZW4gb21nw6VlbHNlIGZvciBcIiVzXCIsIHPDpSBhZmJyeWRlci4iCisKKyM6IHNyYy9zdGF0Y21kLmM6MjcyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tdXBkYXRlIGdpdmVuIGJ1dCAlcyBkb2VzIG5vdCBleGlzdCIKK21zZ3N0ciAiLS11cGRhdGUgZXIgZ2l2ZXQsIG1lbiAlcyBmaW5kZXMgaWtrZSIKKworIzogc3JjL3N0YXRjbWQuYzoyOTYKK21zZ2lkICJObyBvdmVycmlkZSBwcmVzZW50LiIKK21zZ3N0ciAiRGVyIGVyIGluZ2VuIG9tZ8OlZWxzZXIuIgorCisjOiBzcmMvc3RhdGNtZC5jOjMwNAorbXNnaWQgIi0tdXBkYXRlIGlzIHVzZWxlc3MgZm9yIC0tcmVtb3ZlIgorbXNnc3RyICItLXVwZGF0ZSBlciBueXR0ZWzDuHMgbWVkIC0tcmVtb3ZlIgorCisjOiBzcmMvc3RhdGRiLmM6NTkKK21zZ2lkICJzeW50YXggZXJyb3I6IGludmFsaWQgdWlkIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJzeW50YWtzZmVqbDogdWd5bGRpZyB1aWQgaSBzdGF0b3ZlcnJpZGUtZmlsIgorCisjOiBzcmMvc3RhdGRiLmM6NjQKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yOiB1bmtub3duIHVzZXIgJyVzJyBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAic3ludGFrc2Zlamw6IHVrZW5kdCBicnVnZXIgJyVzJyBpIHN0YXRvdmVycmlkZS1maWwiCisKKyM6IHNyYy9zdGF0ZGIuYzo4MworbXNnaWQgInN5bnRheCBlcnJvcjogaW52YWxpZCBnaWQgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgInN5bnRha3NmZWpsOiB1Z3lsZGlnIGdpZCBpIHN0YXRvdmVycmlkZS1maWwiCisKKyM6IHNyYy9zdGF0ZGIuYzo4OAorIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3I6IHVua25vd24gZ3JvdXAgJyVzJyBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAic3ludGFrc2Zlamw6IHVrZW5kdCBncnVwcGUgJyVzJyBpIHN0YXRvdmVycmlkZS1maWwiCisKKyM6IHNyYy9zdGF0ZGIuYzoxMDQKK21zZ2lkICJzeW50YXggZXJyb3I6IGludmFsaWQgbW9kZSBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAic3ludGFrc2Zlamw6IHVneWxkaWcgdGlsc3RhbmQgaSBzdGF0b3ZlcnJpZGUtZmlsIgorCisjOiBzcmMvc3RhdGRiLmM6MTI3Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgImt1bm5lIGlra2Ugw6VibmUgc3RhdG92ZXJyaWRlLWZpbCIKKworIzogc3JjL3N0YXRkYi5jOjEzNAorbXNnaWQgImZhaWxlZCB0byBmc3RhdCBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAia3VubmUgaWtrZSBrw7hyZSAnZnN0YXQnIHDDpSAnc3RhdG92ZXJyaWRlJy1maWwiCisKKyM6IHNyYy9zdGF0ZGIuYzoxMzcKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgcHJldmlvdXMgc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgImt1bm5lIGlra2Uga8O4cmUgZnN0YXQgcMOlIHRpZGxpZ2VyZSBzdGF0b3ZlcnJpZGUtZmlsIgorCisjOiBzcmMvc3RhdGRiLmM6MTYyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJzdGF0b3ZlcnJpZGUgZmlsZSBgJS4yNTBzJyIKK21zZ2lkICJyZWFkaW5nIHN0YXRvdmVycmlkZSBmaWxlICclLjI1MHMnIgorbXNnc3RyICJzdGF0b3ZlcnJpZGUtZmlsICclLjI1MHMnIgorCisjOiBzcmMvc3RhdGRiLmM6MTY5Cittc2dpZCAic3RhdG92ZXJyaWRlIGZpbGUgaXMgbWlzc2luZyBmaW5hbCBuZXdsaW5lIgorbXNnc3RyICJzdGF0b3ZlcnJpZGUtZmlsIG1hbmdsZXIgYWZzbHV0dGVuZGUgbGluamVza2lmdCIKKworIzogc3JjL3N0YXRkYi5jOjE3MworbXNnaWQgInN0YXRvdmVycmlkZSBmaWxlIGNvbnRhaW5zIGVtcHR5IGxpbmUiCittc2dzdHIgInN0YXRvdmVycmlkZS1maWwgaW5kZWhvbGRlciBlbiB0b20gbGluamUiCisKKyM6IHNyYy9zdGF0ZGIuYzoxNzggc3JjL3N0YXRkYi5jOjE5MCBzcmMvc3RhdGRiLmM6MjAyCittc2dpZCAic3ludGF4IGVycm9yIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJzeW50YWtzZmVqbCBpIHN0YXRvdmVycmlkZS1maWwiCisKKyM6IHNyYy9zdGF0ZGIuYzoxODYgc3JjL3N0YXRkYi5jOjE5OCBzcmMvc3RhdGRiLmM6MjEwCittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgbGluZSBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAidXZlbnRldCBsaW5qZWFmc2x1dG5pbmcgaSBzdGF0b3ZlcnJpZGUtZmlsIgorCisjOiBzcmMvc3RhdGRiLmM6MjE0CisjLCBjLWZvcm1hdAorbXNnaWQgIm11bHRpcGxlIHN0YXR1c292ZXJyaWRlcyBwcmVzZW50IGZvciBmaWxlICclLjI1MHMnIgorbXNnc3RyICJkZXIgZXIgZmxlcmUgc3RhdHVzb21nw6VlbHNlciB0aWwgc3RlZGUgZm9yIGZpbGVuICclLjI1MHMnIgorCisjOiBzcmMvdHJpZ2NtZC5jOjQ2Cittc2dpZCAiVHlwZSBkcGtnLXRyaWdnZXIgLS1oZWxwIGZvciBoZWxwIGFib3V0IHRoaXMgdXRpbGl0eS4iCittc2dzdHIgIlNrcml2IGRwa2ctdGlnZ2VyIC0taGVscCBmb3IgYXQgZsOlIGhqw6ZscCBvbSBkZXR0ZSB2w6Zya3TDuGouIgorCisjOiBzcmMvdHJpZ2NtZC5jOjUxCisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiAlcyBwYWNrYWdlIHRyaWdnZXIgdXRpbGl0eSB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICJQYWtrZXVkbMO4c2VydsOmcmt0w7hqZXQgJXMgdmVyc2lvbiAlcyB0aWwgRGViaWFuLlxuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjY3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJVc2FnZTogJXMgWzxvcHRpb25zPiAuLi5dIDx0cmlnZ2VyLW5hbWU+XG4iCisiICAgICAgICVzIFs8b3B0aW9ucz4gLi4uXSA8Y29tbWFuZD5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIkJydWc6ICVzIFs8dGlsdmFsZz4gLi4uXSA8dWRsw7hzZXJuYXZuPlxuIgorIiAgICAgICVzIFs8dGlsdmFsZz4gLi4uXSA8a29tbWFuZG8+XG4iCisiXG4iCisKKyM6IHNyYy90cmlnY21kLmM6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLS1jaGVjay1zdXBwb3J0ZWQgICAgICAgICAgICAgICAgQ2hlY2sgaWYgdGhlIHJ1bm5pbmcgZHBrZyBzdXBwb3J0cyAiCisidHJpZ2dlcnMuXG4iCisiXG4iCittc2dzdHIgIiIKKyJLb21tYW5kb2VyOlxuIgorIiAgLS1jaGVjay1zdXBwb3J0ZWQgICAgICAgICAgICAgICAgVGplayBvbSBrw7hyZW5kZSBkcGtnIHVuZGVyc3TDuHR0ZXIgIgorInVkbMO4c2VyZS5cbiIKKyJcbiIKKworIzogc3JjL3RyaWdjbWQuYzo4MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorIiAgLS1ieS1wYWNrYWdlPTxwYWNrYWdlPiAgICAgICAgICAgT3ZlcnJpZGUgdHJpZ2dlciBhd2FpdGVyIChub3JtYWxseSBzZXRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnkgZHBrZykuXG4iCisiICAtLW5vLWF3YWl0ICAgICAgICAgICAgICAgICAgICAgICBObyBwYWNrYWdlIG5lZWRzIHRvIGF3YWl0IHRoZSAiCisicHJvY2Vzc2luZy5cbiIKKyIgIC0tbm8tYWN0ICAgICAgICAgICAgICAgICAgICAgICAgIEp1c3QgdGVzdCAtIGRvbid0IGFjdHVhbGx5IGNoYW5nZSAiCisiYW55dGhpbmcuXG4iCisiXG4iCittc2dzdHIgIiIKKyJUaWx2YWxnOlxuIgorIiAgLS1hZG1pbmRpcj08a2F0YWxvZz4gICAgICAgICAgICAgQnJ1ZyA8a2F0YWxvZz4gZnJlbSBmb3IgJXMuXG4iCisiICAtLWJ5LXBhY2thZ2U9PHBha2tlPiAgICAgICAgICAgICBUaWxzaWRlc8OmdCB1ZGzDuHNlci1hZnZlbnRlciAoc8OmdHRlc1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBub3JtYWx0IGFmIGRwa2cpLlxuIgorIiAgLS1uby1hd2FpdCAgICAgICAgICAgICAgICAgICAgICAgSW5nZW4gcGFra2UgYmVow7h2ZXIgYWZ2ZW50ZSBiZWhhbmRsaW5nLlxuIgorIiAgLS1uby1hY3QgICAgICAgICAgICAgICAgICAgICAgICAgVGVzdCBrdW4gLSBsYXYgaW5nZW4gZmFrdGlza2Ugw6ZuZHJpbmdlci5cbiIKKyJcbiIKKworIzogc3JjL3RyaWdjbWQuYzoxNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IHRyaWdnZXJzIGRhdGEgZGlyZWN0b3J5IG5vdCB5ZXQgY3JlYXRlZFxuIgorbXNnc3RyICIlczogZGF0YWthdGFsb2cgZm9yIHVkbMO4c2VyZSBlbmRudSBpa2tlIG9wcmV0dGV0XG4iCisKKyM6IHNyYy90cmlnY21kLmM6MTU2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB0cmlnZ2VyIHJlY29yZHMgbm90IHlldCBpbiBleGlzdGVuY2VcbiIKK21zZ3N0ciAiJXM6IHVkbMO4c2VyZm9ydGVnbmVsc2VyIGZpbmRlcyBlbmRudSBpa2tlXG4iCisKKyM6IHNyYy90cmlnY21kLmM6MjA1Cittc2dpZCAidGFrZXMgb25lIGFyZ3VtZW50LCB0aGUgdHJpZ2dlciBuYW1lIgorbXNnc3RyICJrcsOmdmVyIGV0IGFyZ3VtZW50LCB1ZGzDuHNlcm5hdm5ldCIKKworIzogc3JjL3RyaWdjbWQuYzoyMTAKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgImRwa2ctdHJpZ2dlciBtdXN0IGJlIGNhbGxlZCBmcm9tIGEgbWFpbnRhaW5lciBzY3JpcHQgKG9yIHdpdGggYSAtLWJ5LSIKKyN8ICJwYWNrYWdlIG9wdGlvbikiCittc2dpZCAibXVzdCBiZSBjYWxsZWQgZnJvbSBhIG1haW50YWluZXIgc2NyaXB0IChvciB3aXRoIGEgLS1ieS1wYWNrYWdlIG9wdGlvbikiCittc2dzdHIgIiIKKyJkcGtnLXRyaWdnZXIgc2thbCBrYWxkZXMgZnJhIGV0IHZlZGxpZ2Vob2xkZXJzY3JpcHQgKGVsbGVyIG1lZCB0aWx2YWxnZXQgLS0iCisiYnktcGFja2FnZSkiCisKKyM6IHNyYy90cmlnY21kLmM6MjE1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJkcGtnLXRyaWdnZXI6IGlsbGVnYWwgYXdhaXRlZCBwYWNrYWdlIG5hbWUgYCUuMjUwcyc6ICUuMjUwcyIKK21zZ2lkICJpbGxlZ2FsIGF3YWl0ZWQgcGFja2FnZSBuYW1lICclLjI1MHMnOiAlLjI1MHMiCittc2dzdHIgImRwa2ctdHJpZ2dlcjogdWd5bGRpZ3QgYWZ2ZW50ZXQgcGFra2VuYXZuICclLjI1MHMnOiAlLjI1MHMiCisKKyM6IHNyYy90cmlnY21kLmM6MjIxCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgdHJpZ2dlciBuYW1lIGAlLjI1MHMnOiAlLjI1MHMiCittc2dzdHIgInVneWxkaWd0IHVkbMO4c2VybmF2biAnJS4yNTBzJzogJS4yNTBzIgorCisjOiBzcmMvdHJpZ3Byb2MuYzoyNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBjeWNsZSBmb3VuZCB3aGlsZSBwcm9jZXNzaW5nIHRyaWdnZXJzOlxuIgorIiBjaGFpbiBvZiBwYWNrYWdlcyB3aG9zZSB0cmlnZ2VycyBhcmUgb3IgbWF5IGJlIHJlc3BvbnNpYmxlOlxuIgorbXNnc3RyICIiCisiJXM6IGRlciBibGV2IGZ1bmRldCBlbiBjeWtsdXMgdmVkIHVkbMO4c2VyYmVoYW5kbGluZzpcbiIKKyIga8OmZGUgYWYgcGFra2VyLCBodmlzIHVkbMO4c2VyZSBrYW4gaGF2ZSBmb3LDpXJzYWdldCBkZW46XG4iCisKKyM6IHNyYy90cmlncHJvYy5jOjI1OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiIHBhY2thZ2VzJyBwZW5kaW5nIHRyaWdnZXJzIHdoaWNoIGFyZSBvciBtYXkgYmUgdW5yZXNvbHZhYmxlOlxuIgorbXNnc3RyICIiCisiXG4iCisiIHBha2tlciBodmlzIGZvcmVzdMOlZW5kZSB1ZGzDuHNlcmUgZXIgZWxsZXIga2FuIHbDpnJlIHVsw7hzZWxpZ2U6XG4iCisKKyM6IHNyYy90cmlncHJvYy5jOjI4MQorbXNnaWQgInRyaWdnZXJzIGxvb3BpbmcsIGFiYW5kb25lZCIKK21zZ3N0ciAidWRsw7hzZXJlIGVyIGN5a2xpc2sgYWZow6ZuZ2lnZSwgYWZicnVkdCIKKworIzogc3JjL3RyaWdwcm9jLmM6MzEyCisjLCBjLWZvcm1hdAorbXNnaWQgIlByb2Nlc3NpbmcgdHJpZ2dlcnMgZm9yICVzIC4uLlxuIgorbXNnc3RyICJCZWhhbmRsZXIgdWRsw7hzZXJlIGZvciAlcyAuLi5cbiIKKworIzogc3JjL3VwZGF0ZS5jOjUyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICItLSVzIG5lZWRzIGV4YWN0bHkgb25lIFBhY2thZ2VzIGZpbGUgYXJndW1lbnQiCittc2dpZCAiLS0lcyBuZWVkcyBleGFjdGx5IG9uZSBQYWNrYWdlcy1maWxlIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIHNrYWwgYnJ1Z2UgbmV0b3Agw6luICdQYWNrYWdlcyctZmlsIHNvbSBwYXJhbWV0ZXIiCisKKyM6IHNyYy91cGRhdGUuYzo2MgorbXNnaWQgInVuYWJsZSB0byBhY2Nlc3MgZHBrZyBzdGF0dXMgYXJlYSBmb3IgYnVsayBhdmFpbGFibGUgdXBkYXRlIgorbXNnc3RyICJrdW5uZSBpa2tlIHRpbGfDpSBkcGtnJ3Mgc3RhdHVzb21yw6VkZSBmb3IgcsOlIHRpbGfDpm5nZWxpZ2hlZHNvcGRhdGVyaW5nIgorCisjOiBzcmMvdXBkYXRlLmM6NjQKK21zZ2lkICJidWxrIGF2YWlsYWJsZSB1cGRhdGUgcmVxdWlyZXMgd3JpdGUgYWNjZXNzIHRvIGRwa2cgc3RhdHVzIGFyZWEiCittc2dzdHIgIiIKKyJyw6UgdGlsZ8OmbmdlbGlnaGVkc29wZGF0ZXJpbmcga3LDpnZlIHNrcml2ZWFkZ2FuZyB0aWwgZHBrZydzIHN0YXR1c29tcsOlZGUiCisKKyM6IHNyYy91cGRhdGUuYzo3MQorIywgYy1mb3JtYXQKK21zZ2lkICJSZXBsYWNpbmcgYXZhaWxhYmxlIHBhY2thZ2VzIGluZm8sIHVzaW5nICVzLlxuIgorbXNnc3RyICJFcnN0YXR0ZXIgb3BseXNuaW5nZXIgb20gdGlsZ8OmbmdlbGlnZSBwYWtrZXIgdmlhICVzLlxuIgorCisjOiBzcmMvdXBkYXRlLmM6NzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiVXBkYXRpbmcgYXZhaWxhYmxlIHBhY2thZ2VzIGluZm8sIHVzaW5nICVzLlxuIgorbXNnc3RyICJPcGRhdGVyZXIgb3BseXNuaW5nZXIgb20gdGlsZ8OmbmdlbGlnZSBwYWtrZXIgdmlhICVzLlxuIgorCisjOiBzcmMvdXBkYXRlLmM6MTAxCisjLCBjLWZvcm1hdAorbXNnaWQgIkluZm9ybWF0aW9uIGFib3V0ICVkIHBhY2thZ2Ugd2FzIHVwZGF0ZWQuXG4iCittc2dpZF9wbHVyYWwgIkluZm9ybWF0aW9uIGFib3V0ICVkIHBhY2thZ2VzIHdhcyB1cGRhdGVkLlxuIgorbXNnc3RyWzBdICJJbmZvcm1hdGlvbmVyIG9tICVkIHBha2tlIGJsZXYgb3BkYXRlcmV0LlxuIgorbXNnc3RyWzFdICJJbmZvcm1hdGlvbmVyIG9tICVkIHBha2tlciBibGV2IG9wZGF0ZXJldC5cbiIKKworIzogc3JjL3VwZGF0ZS5jOjExNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisib2Jzb2xldGUgJy0tJXMnIG9wdGlvbiwgdW5hdmFpbGFibGUgcGFja2FnZXMgYXJlIGF1dG9tYXRpY2FsbHkgY2xlYW5lZCB1cC4iCittc2dzdHIgImZvcsOmbGRldCB0aWx2YWxnICctLSVzJywgdXRpbGfDpm5nZWxpZ2UgcGFra2VyIHJ5ZGRlcyBhdXRvbWF0aXNrLiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBuYW1lICclLjUwcy4uLicgaXMgdG9vIGxvbmciCittc2dzdHIgImZpbG5hdm4gJyUuNTBzLi4uJyBlciBmb3IgbGFuZ3QiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTI5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGZpbGUgbmFtZSAnJS4yNTBzJyIKK21zZ3N0ciAia2FuIGlra2UgdGlsZ8OlIGZpbGVuICclLjI1MHMnIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjE4OQorbXNnaWQgInVuYWJsZSB0byBzdGF0IGNvbnRyb2wgZGlyZWN0b3J5IgorbXNnc3RyICJrYW4gaWtrZSB0aWxnw6Uga29udHJvbGthdGFsb2ciCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTkxCittc2dpZCAiY29udHJvbCBkaXJlY3RvcnkgaXMgbm90IGEgZGlyZWN0b3J5IgorbXNnc3RyICJrb250cm9sa2F0YWxvZyBlciBpa2tlIGV0IGthdGFsb2ciCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTkzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbnRyb2wgZGlyZWN0b3J5IGhhcyBiYWQgcGVybWlzc2lvbnMgJTAzbG8gKG11c3QgYmUgPj0wNzU1IGFuZCA8PTA3NzUpIgorbXNnc3RyICIiCisia29udHJvbGthdGFsb2dldCBoYXIgZm9ya2VydGUgcmV0dGlnaGVkZXIgJTAzbG8gKHNrYWwgdsOmcmUgPj0wNzU1IG9nIDw9MDc3NSkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjA0CisjLCBjLWZvcm1hdAorbXNnaWQgIm1haW50YWluZXIgc2NyaXB0IGAlLjUwcycgaXMgbm90IGEgcGxhaW4gZmlsZSBvciBzeW1saW5rIgorbXNnc3RyICIiCisiZGVuIHBha2tlYW5zdmFybGlnZXMgc2NyaXB0ICclLjUwcycgZXIgaHZlcmtlbiBlbiBhbG1pbmRlbGlnIGZpbCBlbGxlciAiCisic3ltYm9sc2sgbMOmbmtlIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjIwNworIywgYy1mb3JtYXQKK21zZ2lkICIiCisibWFpbnRhaW5lciBzY3JpcHQgYCUuNTBzJyBoYXMgYmFkIHBlcm1pc3Npb25zICUwM2xvIChtdXN0IGJlID49MDU1NSBhbmQgIgorIjw9MDc3NSkiCittc2dzdHIgIiIKKyJkZW4gcGFra2VhbnN2YXJsaWdlcyBzY3JpcHQgJyUuNTBzJyBoYXIgZMOlcmxpZ2UgZmlscmV0dGlnaGVkZXIgJTAzbG8gKHNrYWwgIgorInbDpnJlID49MDU1NSBvZyA8PTA3NzUpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjIxMQorIywgYy1mb3JtYXQKK21zZ2lkICJtYWludGFpbmVyIHNjcmlwdCBgJS41MHMnIGlzIG5vdCBzdGF0dGFibGUiCittc2dzdHIgImRlbiBwYWtrZWFuc3ZhcmxpZ2VzIHNjcmlwdCAnJS41MHMnIGthbiBpa2tlIHRpbGfDpXMiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjM3Cittc2dpZCAiZXJyb3Igb3BlbmluZyBjb25mZmlsZXMgZmlsZSIKK21zZ3N0ciAiZmVqbCB2ZWQgw6VibmluZyBhZiBmaWxlbiBjb25mZmlsZXMiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjQ2Cittc2dpZCAiZW1wdHkgc3RyaW5nIGZyb20gZmdldHMgcmVhZGluZyBjb25mZmlsZXMiCittc2dzdHIgInRvbSBzdHJlbmcgZnJhICdmZ2V0cycgdW5kZXIgbMOmc25pbmcgYWYga29uZmlndXJhdGlvbnNmaWxlciIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgbmFtZSAnJS41MHMuLi4nIGlzIHRvbyBsb25nLCBvciBtaXNzaW5nIGZpbmFsIG5ld2xpbmUiCittc2dzdHIgIiIKKyJrb25maWd1cmF0aW9uc2ZpbG5hdm4gJyUuNTBzLi4uJyBmb3IgbGFuZ3QgZWxsZXIgbWFuZ2xlciBhZnNsdXR0ZW5kZSAiCisibGluamVza2lmdCIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgZmlsZW5hbWUgJyVzJyBjb250YWlucyB0cmFpbGluZyB3aGl0ZSBzcGFjZXMiCittc2dzdHIgImtvbmZpZ3VyYXRpb25zZmlsbmF2bmV0ICclcycgYWZzbHV0dGVzIG1lZCBtZWxsZW1ydW0iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjY2CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIGAlLjI1MHMnIGRvZXMgbm90IGFwcGVhciBpbiBwYWNrYWdlIgorbXNnc3RyICJrb25maWd1cmF0aW9uc2ZpbCAnJS4yNTBzJyBvcHRyw6ZkZXIgaWtrZSBpIHBha2tlbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgYCUuMjUwcycgaXMgbm90IHN0YXR0YWJsZSIKK21zZ3N0ciAia29uZmlndXJhdGlvbnNmaWwgJyUuMjUwcycga2FuIGlra2UgdGlsZ8OlcyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgJyVzJyBpcyBub3QgYSBwbGFpbiBmaWxlIgorbXNnc3RyICJrb25maWd1cmF0aW9uc2ZpbCAnJXMnIGVyIGlra2UgZW4gYWxtaW5kZWxpZyBmaWwiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6Mjc0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIG5hbWUgJyVzJyBpcyBkdXBsaWNhdGVkIgorbXNnc3RyICJrb25maWd1cmF0aW9uc2ZpbG5hdm5ldCAnJXMnIGZpbmRlcyBmbGVyZSBnYW5nZSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyODcKK21zZ2lkICJlcnJvciByZWFkaW5nIGNvbmZmaWxlcyBmaWxlIgorbXNnc3RyICJmZWpsIHZlZCBsw6ZzbmluZyBhZiBmaWxlbiBjb25mZmlsZXMiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MzM5Cittc2dpZCAicGFja2FnZSBuYW1lIGhhcyBjaGFyYWN0ZXJzIHRoYXQgYXJlbid0IGxvd2VyY2FzZSBhbHBoYW51bXMgb3IgYC0rLiciCittc2dzdHIgInBha2tlbmF2bmV0IGhhciB0ZWduLCBkZXIgaHZlcmtlbiBlciBzbcOlIGJvZ3N0YXZlciwgdGFsIGVsbGVyICctKy4nIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjM0MQorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGNvbnRhaW5zIHVzZXItZGVmaW5lZCBQcmlvcml0eSB2YWx1ZSAnJXMnIgorbXNnc3RyICInJXMnIGluZGVob2xkZXIgYnJ1Z2VyYW5naXZldCBwcmlvcml0ZXRzdsOmcmRpICclcyciCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MzQ3CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgY29udGFpbnMgdXNlci1kZWZpbmVkIGZpZWxkICclcyciCittc2dzdHIgIiclcycgaW5kZWhvbGRlciBicnVnZXJhbmdpdmV0IGZlbHQgJyVzJyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzozNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgJWQgd2FybmluZyBhYm91dCB0aGUgY29udHJvbCBmaWxlKHMpXG4iCittc2dpZF9wbHVyYWwgImlnbm9yaW5nICVkIHdhcm5pbmdzIGFib3V0IHRoZSBjb250cm9sIGZpbGUocylcbiIKK21zZ3N0clswXSAiZHBrZy1kZWI6IGlnbm9yZXJlciAlZCBhZHZhcnNlbCBvbSBrb250cm9sZmlsZXJcbiIKK21zZ3N0clsxXSAiZHBrZy1kZWI6IGlnbm9yZXJlciAlZCBhZHZhcnNsZXIgb20ga29udHJvbGZpbGVyXG4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDAzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDI5CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQzNgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGEgPGRpcmVjdG9yeT4gYXJndW1lbnQiCittc2dzdHIgIi0tJXMga3LDpnZlciBlbiA8a2F0YWxvZz4tcGFyYW1ldGVyIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQwOQorbXNnaWQgIi0tYnVpbGQgdGFrZXMgYXQgbW9zdCB0d28gYXJndW1lbnRzIgorbXNnc3RyICItLWJ1aWxkIGtyw6Z2ZXIgbWluZHN0IHRvIHBhcmFtZXRyZSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoZWNrIGZvciBleGlzdGVuY2Ugb2YgYXJjaGl2ZSBgJS4yNTBzJyIKK21zZ3N0ciAia3VubmUgaWtrZSB0amVra2UgZWtzaXN0ZW5zZW4gYWYgYXJraXZldCAnJS4yNTBzJyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzAKK21zZ2lkICJ0YXJnZXQgaXMgZGlyZWN0b3J5IC0gY2Fubm90IHNraXAgY29udHJvbCBmaWxlIGNoZWNrIgorbXNnc3RyICJtw6VsZXQgZXIgZXQga2F0YWxvZyAtIGthbiBpa2tlIG92ZXJzcHJpbmdlIGtvbnRyb2xmaWwtdGplayIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzEKK21zZ2lkICJub3QgY2hlY2tpbmcgY29udGVudHMgb2YgY29udHJvbCBhcmVhLiIKK21zZ3N0ciAia29udHJvbGxlcmVyIGlra2UgaW5kaG9sZCBhZiBrb250cm9sb21yw6VkZS4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDMyCisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2ctZGViOiBidWlsZGluZyBhbiB1bmtub3duIHBhY2thZ2UgaW4gJyVzJy5cbiIKK21zZ3N0ciAiZHBrZy1kZWI6IG9wYnlnZ2VyIGVuIHVrZW5kdCBwYWtrZSBpICclcycuXG4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDM5CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2ctZGViOiBidWlsZGluZyBwYWNrYWdlIGAlcycgaW4gYCVzJy5cbiIKK21zZ3N0ciAiZHBrZy1kZWI6IG9wYnlnZ2VyIHBha2tlbiAnJXMnIGkgJyVzJy5cbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0NjcgZHBrZy1kZWIvYnVpbGQuYzo1MjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byBtYWtlIHRtcGZpbGUgKGRhdGEpIgorbXNnaWQgImZhaWxlZCB0byBtYWtlIHRlbXBvcmFyeSBmaWxlICglcykiCittc2dzdHIgImt1bm5lIGlra2Ugb3ByZXR0ZSBtaWRsZXJ0aWRpZyBmaWwgKGRhdGEpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ2NyBkcGtnLWRlYi9idWlsZC5jOjQ3MCBkcGtnLWRlYi9idWlsZC5jOjQ3NworIzogZHBrZy1kZWIvYnVpbGQuYzo0ODUgZHBrZy1kZWIvYnVpbGQuYzo0OTQgZHBrZy1kZWIvYnVpbGQuYzo0OTkKKyMsIGZ1enp5CisjfCBtc2dpZCAiY29udHJvbCBhcmVhIgorbXNnaWQgImNvbnRyb2wgbWVtYmVyIgorbXNnc3RyICJrb250cm9sb21yw6VkZSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0NzAgZHBrZy1kZWIvYnVpbGQuYzo1MjQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byB1bmxpbmsgdG1wZmlsZSAoZGF0YSksICVzIgorbXNnaWQgImZhaWxlZCB0byB1bmxpbmsgdGVtcG9yYXJ5IGZpbGUgKCVzKSwgJXMiCittc2dzdHIgImt1bm5lIGlra2Ugc2xldHRlIGzDpm5rZSB0aWwgbWlkbGVydGlkaWcgZmlsIChkYXRhKSwgJXMiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDg1IGRwa2ctZGViL2J1aWxkLmM6NTkzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gcmV3aW5kIHRtcGZpbGUgKGRhdGEpIgorbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdGVtcG9yYXJ5IGZpbGUgKCVzKSIKK21zZ3N0ciAia3VubmUgaWtrZSBob3BwZSB0aWxiYWdlIGkgbWlkbGVydGlkaWcgZmlsIChkYXRhKSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0OTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byBmc3RhdCBhciBtZW1iZXIgZmlsZSAoJXMpIgorbXNnaWQgImZhaWxlZCB0byBzdGF0IHRlbXBvcmFyeSBmaWxlICglcykiCittc2dzdHIgImt1bm5lIGlra2Uga8O4cmUgZnN0YXQgcMOlIGFyLW1lZGxlbXNmaWwgKCVzKSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0OTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igd3JpdGluZyBgJXMnIgorbXNnc3RyICJmZWpsIHVuZGVyIHNrcml2bmluZyBhZiAnJXMnIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjUyMSBkcGtnLWRlYi9idWlsZC5jOjUyNCBkcGtnLWRlYi9idWlsZC5jOjU0NgorIzogZHBrZy1kZWIvYnVpbGQuYzo1NzIgZHBrZy1kZWIvYnVpbGQuYzo1ODAgZHBrZy1kZWIvYnVpbGQuYzo1OTMKKyMsIGZ1enp5CisjfCBtc2dpZCAiYmV0d2VlbiBtZW1iZXJzIgorbXNnaWQgImRhdGEgbWVtYmVyIgorbXNnc3RyICJtZWxsZW0gbWVkbGVtbWVyIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjU3MSBkcGtnLWRlYi9idWlsZC5jOjU4MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIHdyaXRlIGZpbGVuYW1lIHRvIHRhciBwaXBlIChkYXRhKSIKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgZmlsZW5hbWUgdG8gdGFyIHBpcGUgKCVzKSIKK21zZ3N0ciAia3VubmUgaWtrZSBza3JpdmUgZmlsbmF2biB0aWwgdGFyLWRhdGFrYW5hbCAoZGF0YSkiCisKKyMgZXIgaWtrZSBzaWtrZXIgcMOlIG9tIGNvbXByZXNzIGthbiBvdmVyc8OmdHRlcyBoZXIKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTg0Cittc2dpZCAiPGNvbXByZXNzPiBmcm9tIHRhciAtY2YiCittc2dzdHIgIjxrb21wcmltw6lyPiBmcmEgdGFyIC1jZiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjYxIGRwa2ctZGViL2V4dHJhY3QuYzo2MworbXNnaWQgInNoZWxsIGNvbW1hbmQgdG8gbW92ZSBmaWxlcyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6NzAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgZmlsZSBpbiAlcyBpbiAlLjI1NXMiCittc2dzdHIgInV2ZW50ZXQgc2x1dC1ww6UtZmlsIGkgJXMgaSAlLjI1NXMiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzo3MgorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciByZWFkaW5nICVzIGZyb20gZmlsZSAlLjI1NXMiCittc2dzdHIgImt1bm5lIGlra2UgbMOmc2UgJXMgZnJhIGZpbGVuICUuMjU1cyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjEyNQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCBhcmNoaXZlIGAlLjI1NXMnIgorbXNnc3RyICJrdW5uZSBpa2tlIGzDpnNlIGFya2l2ZXQgJyUuMjU1cyciCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxMjcKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgYXJjaGl2ZSIKK21zZ3N0ciAia3VubmUgaWtrZSBrw7hyZSAnZnN0YXQnIHDDpSBhcmtpdmV0IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTMxCisjLCBmdXp6eQorI3wgbXNnaWQgImFyY2hpdmUgaGFzIG5vIGRvdCBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ2lkICJhcmNoaXZlIG1hZ2ljIHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICJhcmtpdmV0IGhhciBpbnRldCBwdW5rdHVtIGkgdmVyc2lvbnNudW1tZXIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNDMKKyMsIGZ1enp5CisjfCBtc2dpZCAiYXJjaGl2ZSBoYXMgbm8gbmV3bGluZXMgaW4gaGVhZGVyIgorbXNnaWQgImFyY2hpdmUgbWVtYmVyIGhlYWRlciIKK21zZ3N0ciAiYXJraXZldCBoYXIgaW5nZW4gbGluamVza2lmdCBpIGhvdmVkZXQiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNDgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBwYXJ0IG51bWJlciIKK21zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgYXJjaGl2ZSBoZWFkZXIgbWFnaWMiCittc2dzdHIgImZpbGVuICclLjI1MHMnIGlzIMO4ZGVsYWd0IC0gdWd5bGRpZ3QgZGVsbnVtbWVyIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTU1CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgbm90IGEgZGViaWFuIGJpbmFyeSBhcmNoaXZlICh0cnkgZHBrZy1zcGxpdD8pIgorbXNnc3RyICJmaWxlbiAnJS4yNTBzJyBlciBpa2tlIGV0IGJpbsOmcnQgZGViaWFuYXJraXYgKHByw7h2IGRwa2ctc3BsaXQ/KSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE1OQorIywgZnV6enkKKyN8IG1zZ2lkICJhcmNoaXZlIGhhcyBubyBkb3QgaW4gdmVyc2lvbiBudW1iZXIiCittc2dpZCAiYXJjaGl2ZSBpbmZvcm1hdGlvbiBoZWFkZXIgbWVtYmVyIgorbXNnc3RyICJhcmtpdmV0IGhhciBpbnRldCBwdW5rdHVtIGkgdmVyc2lvbnNudW1tZXIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNjIKK21zZ2lkICJhcmNoaXZlIGhhcyBubyBuZXdsaW5lcyBpbiBoZWFkZXIiCittc2dzdHIgImFya2l2ZXQgaGFyIGluZ2VuIGxpbmplc2tpZnQgaSBob3ZlZGV0IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTY1Cittc2dpZCAiYXJjaGl2ZSBoYXMgbm8gZG90IGluIHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICJhcmtpdmV0IGhhciBpbnRldCBwdW5rdHVtIGkgdmVyc2lvbnNudW1tZXIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiYXJjaGl2ZSB2ZXJzaW9uICUuMjUwcyBub3QgdW5kZXJzdG9vZCwgZ2V0IG5ld2VyIGRwa2ctZGViIgorbXNnc3RyICJhcmtpdmV0cyB2ZXJzaW9uICUuMjUwcyBibGV2IGlra2UgZm9yc3TDpWV0LiBIZW50IGVuIG55ZXJlIGRwa2ctZGViIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTc5IGRwa2ctZGViL2V4dHJhY3QuYzoyMDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInNraXBwZWQgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ2lkICJza2lwcGVkIGFyY2hpdmUgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ3N0ciAic3ByYW5nIG92ZXIgbWVkbGVtc2RhdGEgZnJhICVzIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTk0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGNvbnRhaW5zIHVudW5kZXJzdG9vZCBkYXRhIG1lbWJlciAlLipzLCBnaXZpbmcgdXAiCittc2dpZCAiYXJjaGl2ZSAnJS4yNTBzJyBjb250YWlucyBub3QgdW5kZXJzdG9vZCBkYXRhIG1lbWJlciAlLipzLCBnaXZpbmcgdXAiCittc2dzdHIgImZpbGVuICclLjI1MHMnIGluZGVob2xkZXIgdWZvcnN0w6VldCBkYXRhbWVkbGVtICUuKnMuIE9wZ2l2ZXIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxOTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgY29udGFpbnMgdHdvIGNvbnRyb2wgbWVtYmVycywgZ2l2aW5nIHVwIgorbXNnaWQgImFyY2hpdmUgJyUuMjUwcycgY29udGFpbnMgdHdvIGNvbnRyb2wgbWVtYmVycywgZ2l2aW5nIHVwIgorbXNnc3RyICJmaWxlbiAnJS4yNTBzJyBpbmRlaG9sZGVyIHRvIGtvbnRyb2xtZWRsZW1tZXIuIE9wZ2l2ZXIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyMTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIgbmV3IGRlYmlhbiBwYWNrYWdlLCB2ZXJzaW9uICVzLlxuIgorI3wgIiBzaXplICVsZCBieXRlczogY29udHJvbCBhcmNoaXZlPSAlemkgYnl0ZXMuXG4iCittc2dpZCAiIgorIiBuZXcgZGViaWFuIHBhY2thZ2UsIHZlcnNpb24gJXMuXG4iCisiIHNpemUgJWpkIGJ5dGVzOiBjb250cm9sIGFyY2hpdmU9ICVqZCBieXRlcy5cbiIKK21zZ3N0ciAiIgorIiBueSBkZWJpYW5wYWtrZSwgdmVyc2lvbiAlcy5cbiIKKyIgc3TDuHJyZWxzZSAlbGQgYnl0ZToga29udHJvbGFya2l2PSAlemkgYnl0ZS5cbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIzMgorbXNnaWQgImFyY2hpdmUgY29udHJvbCBtZW1iZXIgc2l6ZSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjM1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJhcmNoaXZlIGhhcyBtYWxmb3JtYXR0ZWQgY29udHJvbCBsZW5ndGggYCVzJyIKK21zZ2lkICJhcmNoaXZlIGhhcyBtYWxmb3JtYXR0ZWQgY29udHJvbCBtZW1iZXIgc2l6ZSAnJXMnIgorbXNnc3RyICJhcmtpdmV0IGhhciBmb3JrZXJ0IHVkZm9ybWV0IGtvbnRyb2xsw6ZuZ2RlICclcyciCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNDIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInNraXBwZWQgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ2lkICJza2lwcGVkIGFyY2hpdmUgY29udHJvbCBtZW1iZXIgZGF0YSBmcm9tICVzIgorbXNnc3RyICJzcHJhbmcgb3ZlciBtZWRsZW1zZGF0YSBmcmEgJXMiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNDYKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIgb2xkIGRlYmlhbiBwYWNrYWdlLCB2ZXJzaW9uICVzLlxuIgorI3wgIiBzaXplICVsZCBieXRlczogY29udHJvbCBhcmNoaXZlPSAlemksIG1haW4gYXJjaGl2ZT0gJWxkLlxuIgorbXNnaWQgIiIKKyIgb2xkIGRlYmlhbiBwYWNrYWdlLCB2ZXJzaW9uICVzLlxuIgorIiBzaXplICVqZCBieXRlczogY29udHJvbCBhcmNoaXZlPSAlamQsIG1haW4gYXJjaGl2ZT0gJWpkLlxuIgorbXNnc3RyICIiCisiIGdhbW1lbCBkZWJpYW5wYWtrZSwgdmVyc2lvbiAlcy5cbiIKKyIgc3TDuHJyZWxzZSAlbGQgYnl0ZToga29udHJvbGFya2l2PSAlemksIGhvdmVkYXJraXY9ICVsZC5cbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI1NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZy1kZWI6IGZpbGUgbG9va3MgbGlrZSBpdCBtaWdodCBiZSBhbiBhcmNoaXZlIHdoaWNoIGhhcyBiZWVuXG4iCisiZHBrZy1kZWI6ICAgIGNvcnJ1cHRlZCBieSBiZWluZyBkb3dubG9hZGVkIGluIEFTQ0lJIG1vZGVcbiIKK21zZ3N0ciAiIgorImRwa2ctZGViOiBmaWxlbiBzZXIgdWQgdGlsIGF0IHbDpnJlIGV0IGFya2l2LCBkZXIgZXIgYmxldmV0XG4iCisiZHBrZy1kZWI6ICAgIMO4ZGVsYWd0IGFmIGF0IGJsaXZlIG5lZGhlbnRldCBpIEFTQ0lJLXRpbHN0YW5kXG4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCUuMjU1cycgaXMgbm90IGEgZGViaWFuIGZvcm1hdCBhcmNoaXZlIgorbXNnc3RyICInJS4yNTVzJyBlciBpa2tlIGV0IGFya2l2IGkgZGViaWFuZm9ybWF0IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjY2Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIHRvIHBpcGUgaW4gY29weSIKK21zZ3N0ciAia3VubmUgaWtrZSBza3JpdmUgdGlsIGRhdGFrYW5hbCB2ZWQga29waWVyaW5nIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjY4Cittc2dpZCAiZmFpbGVkIHRvIGNsb3NlIHBpcGUgaW4gY29weSIKK21zZ3N0ciAia3VubmUgaWtrZSBsdWtrZSBkYXRha2FuYWwgdmVkIGtvcGllcmluZyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI4NAorbXNnaWQgImRhdGEiCittc2dzdHIgImRhdGEiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozMDcKK21zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gZGlyZWN0b3J5IgorbXNnc3RyICJrdW5uZSBpa2tlIHNraWZ0ZSB0aWwga2F0YWxvZyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMxMAorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgZGlyZWN0b3J5IgorbXNnc3RyICJrdW5uZSBpa2tlIG9wcmV0dGUga2F0YWxvZyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMxMgorbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byBkaXJlY3RvcnkgYWZ0ZXIgY3JlYXRpbmcgaXQiCittc2dzdHIgImt1bm5lIGlra2Ugc2tpZnRlIHRpbCBrYXRhbG9nIGVmdGVyIGF0IGhhdmUgb3ByZXR0ZXQgZGVuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzIzCittc2dpZCAiPGRlY29tcHJlc3M+IgorbXNnc3RyICI8ZGVrb21wcmltw6lyPiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMyNQorbXNnaWQgInBhc3RlIgorbXNnc3RyICJpbmRzw6Z0IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzQyIGRwa2ctZGViL2V4dHJhY3QuYzozNjMgZHBrZy1kZWIvZXh0cmFjdC5jOjQwMgorIzogZHBrZy1kZWIvaW5mby5jOjc3CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSAuZGViIGZpbGVuYW1lIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIGtyw6Z2ZXIgZXQgLmRlYi1maWxuYXZuIHNvbSBwYXJhbWV0ZXIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozNDcgZHBrZy1kZWIvZXh0cmFjdC5jOjQwNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiLS0lcyBuZWVkcyBhIHRhcmdldCBkaXJlY3RvcnkuXG4iCisiUGVyaGFwcyB5b3Ugc2hvdWxkIGJlIHVzaW5nIGRwa2cgLS1pbnN0YWxsID8iCittc2dzdHIgIiIKKyItLSVzIGtyw6Z2ZXIgZXQgbcOlbGthdGFsb2cuXG4iCisiTcOlc2tlIHNrdWxsZSBkdSBicnVnZSBkcGtnIC0taW5zdGFsbD8iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozNTAgZHBrZy1kZWIvZXh0cmFjdC5jOjQxMAorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIHRha2VzIGF0IG1vc3QgdHdvIGFyZ3VtZW50cyAoLmRlYiBhbmQgZGlyZWN0b3J5KSIKK21zZ3N0ciAiLS0lcyB0YWdlciBow7hqc3QgdG8gcGFyYW1ldHJlICguZGViIG9nIGthdGFsb2cpIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzY1CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgb25seSBvbmUgYXJndW1lbnQgKC5kZWIgZmlsZW5hbWUpIgorbXNnc3RyICItLSVzIHRhZ2VyIGt1biDDqXQgcGFyYW1ldGVyKC5kZWItZmlsbmF2bikiCisKKyM6IGRwa2ctZGViL2luZm8uYzo2MworbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byBgLycgZm9yIGNsZWFudXAiCittc2dzdHIgImt1bm5lIGlra2Ugc2tpZnRlIHRpbCBrYXRhbG9nZXQgJy8nIGZvciBhdCByeWRkZSBvcCIKKworIzogZHBrZy1kZWIvaW5mby5jOjEwNgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiY2Fubm90IHN0YXQgZmlsZSAnJXMnIgorbXNnaWQgImNvbnRyb2wgZmlsZSAnJXMnIgorbXNnc3RyICJrYW4gaWtrZSB0aWxnw6UgZmlsZW4gJyVzJyIKKworIzogZHBrZy1kZWIvaW5mby5jOjExMAorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnLWRlYjogYCUuMjU1cycgY29udGFpbnMgbm8gY29udHJvbCBjb21wb25lbnQgYCUuMjU1cydcbiIKK21zZ3N0ciAiZHBrZy1kZWI6ICclLjI1NXMnIGluZGVob2xkZXIgaWtrZSBrb250cm9sa29tcG9uZW50ZW4gJyUuMjU1cydcbiIKKworIzogZHBrZy1kZWIvaW5mby5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICJvcGVuIGNvbXBvbmVudCBgJS4yNTVzJyAoaW4gJS4yNTVzKSBmYWlsZWQgaW4gYW4gdW5leHBlY3RlZCB3YXkiCittc2dzdHIgIsOlYm5pbmcgYWYga29tcG9uZW50ICclLjI1NXMnIChpICUuMjU1cykgbWlzbHlra2VkZXMgcMOlIGVuIHV2ZW50ZXQgbcOlZGUiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJWQgcmVxdWVzdGVkIGNvbnRyb2wgY29tcG9uZW50IGlzIG1pc3NpbmciCittc2dpZF9wbHVyYWwgIiVkIHJlcXVlc3RlZCBjb250cm9sIGNvbXBvbmVudHMgYXJlIG1pc3NpbmciCittc2dzdHJbMF0gIiVkIMO4bnNrZXQga29udHJvbGtvbXBvbmVudCBtYW5nbGVyIgorbXNnc3RyWzFdICIlZCDDuG5za2VkZSBrb250cm9sa29tcG9uZW50ZXIgbWFuZ2xlciIKKworIzogZHBrZy1kZWIvaW5mby5jOjEzOSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NDI0CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzY2FuIGRpcmVjdG9yeSBgJS4yNTVzJyIKK21zZ3N0ciAia3VubmUgaWtrZSBnZW5uZW1zw7hnZSBrYXRhbG9nZXQgJyUuMjU1cyciCisKKyM6IGRwa2ctZGViL2luZm8uYzoxNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHN0YXQgYCUuMjU1cycgKGluIGAlLjI1NXMnKSIKK21zZ3N0ciAia3VubmUgaWtrZSBmaW5kZSAnJS4yNTVzJyAoaSAnJS4yNTVzJykiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IG9wZW4gYCUuMjU1cycgKGluIGAlLjI1NXMnKSIKK21zZ3N0ciAia3VubmUgaWtrZSDDpWJuZSAnJS4yNTVzJyAoaSAnJS4yNTVzJykiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxNjcgZHBrZy1kZWIvaW5mby5jOjE4NSBkcGtnLWRlYi9pbmZvLmM6MTk5CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZWFkIGAlLjI1NXMnIChpbiBgJS4yNTVzJykiCittc2dzdHIgImt1bm5lIGlra2UgbMOmc2UgJyUuMjU1cycgKGkgJyUuMjU1cycpIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTcwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIgJTdsZCBieXRlcywgJTVkIGxpbmVzICAgJWMgICUtMjAuMTI3cyAlLjEyN3NcbiIKK21zZ2lkICIgJTdqZCBieXRlcywgJTVkIGxpbmVzICAgJWMgICUtMjAuMTI3cyAlLjEyN3NcbiIKK21zZ3N0ciAiICU3bGQgYnl0ZSwgJTVkIGxpbmplciAgICVjICAlLTIwLjEyN3MgJS4xMjdzXG4iCisKKyM6IGRwa2ctZGViL2luZm8uYzoxNzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAgICBub3QgYSBwbGFpbiBmaWxlICAgICAgICAgICUuMjU1c1xuIgorbXNnc3RyICIgICAgIGlra2UgYWxtaW5kZWxpZyBmaWwgICAgICAgJS4yNTVzXG4iCisKKyM6IGRwa2ctZGViL2luZm8uYzoxODYKK21zZ2lkICIobm8gYGNvbnRyb2wnIGZpbGUgaW4gY29udHJvbCBhcmNoaXZlISlcbiIKK21zZ3N0ciAiKGluZ2VuICdjb250cm9sJy1maWwgaSBrb250cm9sYXJraXZldCEpXG4iCisKKyM6IGRwa2ctZGViL2luZm8uYzoyMjIKK21zZ2lkICJjb3VsZCBub3Qgb3BlbiB0aGUgYGNvbnRyb2wnIGNvbXBvbmVudCIKK21zZ3N0ciAia3VubmUgaWtrZSDDpWJuZSBrb21wb25lbnRlbiAnY29udHJvbCciCisKKyM6IGRwa2ctZGViL2luZm8uYzoyNjEKK21zZ2lkICJmYWlsZWQgZHVyaW5nIHJlYWQgb2YgYGNvbnRyb2wnIGNvbXBvbmVudCIKK21zZ3N0ciAiZmVqbCB1bmRlciBsw6ZzbmluZyBhZiBrb21wb25lbnRlbiAnY29udHJvbCciCisKKyM6IGRwa2ctZGViL2luZm8uYzoyNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyB0aGUgJyVzJyBjb21wb25lbnQiCittc2dzdHIgImZlamwgdmVkIGx1a25pbmcgYWYgJyVzJy1rb21wb25lbnRlbiIKKworIzogZHBrZy1kZWIvaW5mby5jOjI3OAorbXNnaWQgIkVycm9yIGluIGZvcm1hdCIKK21zZ3N0ciAiRmVqbCBpIGZvcm1hdCIKKworIzogZHBrZy1kZWIvaW5mby5jOjMyOAorbXNnaWQgIi0tY29udGVudHMgdGFrZXMgZXhhY3RseSBvbmUgYXJndW1lbnQiCittc2dzdHIgIi0tY29udGVudHMgdGFnZXIgbsO4amFndGlnIMOpdCBwYXJhbWV0ZXIiCisKKyM6IGRwa2ctZGViL21haW4uYzo1NAorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIGFyY2hpdmUgYmFja2VuZCB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICJEZWJpYW4gJyVzJyBwYWtrZWFya2l2cy1ow6VuZHRlcmluZyB2ZXJzaW9uICVzLlxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6NzMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJDb21tYW5kczpcbiIKKyN8ICIgIC1ifC0tYnVpbGQgPGRpcmVjdG9yeT4gWzxkZWI+XSAgIEJ1aWxkIGFuIGFyY2hpdmUuXG4iCisjfCAiICAtY3wtLWNvbnRlbnRzIDxkZWI+ICAgICAgICAgICAgICBMaXN0IGNvbnRlbnRzLlxuIgorI3wgIiAgLUl8LS1pbmZvIDxkZWI+IFs8Y2ZpbGU+IC4uLl0gICAgU2hvdyBpbmZvIHRvIHN0ZG91dC5cbiIKKyN8ICIgIC1XfC0tc2hvdyA8ZGViPiAgICAgICAgICAgICAgICAgIFNob3cgaW5mb3JtYXRpb24gb24gcGFja2FnZShzKVxuIgorI3wgIiAgLWZ8LS1maWVsZCA8ZGViPiBbPGNmaWVsZD4gLi4uXSAgU2hvdyBmaWVsZChzKSB0byBzdGRvdXQuXG4iCisjfCAiICAtZXwtLWNvbnRyb2wgPGRlYj4gWzxkaXJlY3Rvcnk+XSBFeHRyYWN0IGNvbnRyb2wgaW5mby5cbiIKKyN8ICIgIC14fC0tZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PiAgIEV4dHJhY3QgZmlsZXMuXG4iCisjfCAiICAtWHwtLXZleHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+ICBFeHRyYWN0ICYgbGlzdCBmaWxlcy5cbiIKKyN8ICIgIC0tZnN5cy10YXJmaWxlIDxkZWI+ICAgICAgICAgICAgIE91dHB1dCBmaWxlc3lzdGVtIHRhcmZpbGUuXG4iCisjfCAiXG4iCittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLWJ8LS1idWlsZCA8ZGlyZWN0b3J5PiBbPGRlYj5dICAgQnVpbGQgYW4gYXJjaGl2ZS5cbiIKKyIgIC1jfC0tY29udGVudHMgPGRlYj4gICAgICAgICAgICAgIExpc3QgY29udGVudHMuXG4iCisiICAtSXwtLWluZm8gPGRlYj4gWzxjZmlsZT4gLi4uXSAgICBTaG93IGluZm8gdG8gc3Rkb3V0LlxuIgorIiAgLVd8LS1zaG93IDxkZWI+ICAgICAgICAgICAgICAgICAgU2hvdyBpbmZvcm1hdGlvbiBvbiBwYWNrYWdlKHMpXG4iCisiICAtZnwtLWZpZWxkIDxkZWI+IFs8Y2ZpZWxkPiAuLi5dICBTaG93IGZpZWxkKHMpIHRvIHN0ZG91dC5cbiIKKyIgIC1lfC0tY29udHJvbCA8ZGViPiBbPGRpcmVjdG9yeT5dIEV4dHJhY3QgY29udHJvbCBpbmZvLlxuIgorIiAgLXh8LS1leHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+ICAgRXh0cmFjdCBmaWxlcy5cbiIKKyIgIC1YfC0tdmV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gIEV4dHJhY3QgJiBsaXN0IGZpbGVzLlxuIgorIiAgLVJ8LS1yYXctZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRXh0cmFjdCBjb250cm9sIGluZm8gYW5kIGZpbGVzLlxuIgorIiAgLS1mc3lzLXRhcmZpbGUgPGRlYj4gICAgICAgICAgICAgT3V0cHV0IGZpbGVzeXN0ZW0gdGFyZmlsZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIktvbW1hbmRvZXI6XG4iCisiICAtYnwtLWJ1aWxkIDxrYXRhbG9nPiBbPGRlYj5dICAgICAgT3BieWcgZXQgYXJraXYuXG4iCisiICAtY3wtLWNvbnRlbnRzIDxkZWI+ICAgICAgICAgICAgICAgVmlzIGluZGhvbGQuXG4iCisiICAtSXwtLWluZm8gPGRlYj4gWzxjZmlsPi4uLl0gICAgICAgSW5mb3JtYXRpb24gdGlsIHN0YW5kYXJkLXVkLlxuIgorIiAgLVd8LS1zaG93IDxkZWI+ICAgICAgICAgICAgICAgICAgIFZpcyBvcGx5c25pbmdlciBvbSBwYWtrZShyKS5cbiIKKyIgIC1mfC0tZmllbGQgPGRlYj4gWzxjZmVsdD4uLi5dICAgICBWaXMgZmVsdGVyIHRpbCBzdGFuZGFyZC11ZC5cbiIKKyIgIC1lfC0tY29udHJvbCA8ZGViPiBbPGthdGFsb2c+XSAgICBVZGRyYWcga29udHJvbG9wbHlzbmluZ2VyLlxuIgorIiAgLXh8LS1leHRyYWN0IDxkZWI+IDxrYXRhbG9nPiAgICAgIFVkZHJhZyBmaWxlci5cbiIKKyIgIC1YfC0tdmV4dHJhY3QgPGRlYj4gPGthdGFsb2c+ICAgICBVZGRyYWcgb2cgdmlzIGZpbGVyLlxuIgorIiAgLS1mc3lzLXRhcmZpbGUgPGRlYj4gICAgICAgICAgICAgIFNrcml2IGZpbHN5c3RlbXMtdGFyLWZpbC5cbiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjkzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyI8ZGViPiBpcyB0aGUgZmlsZW5hbWUgb2YgYSBEZWJpYW4gZm9ybWF0IGFyY2hpdmUuXG4iCisiPGNmaWxlPiBpcyB0aGUgbmFtZSBvZiBhbiBhZG1pbmlzdHJhdGl2ZSBmaWxlIGNvbXBvbmVudC5cbiIKKyI8Y2ZpZWxkPiBpcyB0aGUgbmFtZSBvZiBhIGZpZWxkIGluIHRoZSBtYWluIGBjb250cm9sJyBmaWxlLlxuIgorIlxuIgorbXNnc3RyICIiCisiPGRlYj4gZXIgZmlsbmF2bmV0IHDDpSBldCBhcmlrdiBpIERlYmlhbmZvcm1hdC5cbiIKKyI8Y2ZpbD4gZXIgbmF2bmV0IHDDpSBlbiBhZG1pbmlzdHJhdGl2IGZpbGtvbXBvbmVudC5cbiIKKyI8Y2ZlbHQ+IGVyIG5hdm5ldCBww6UgZXQgZmVsdCBpIGhvdmVka29udHJvbGZpbGVuLlxuIgorIlxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6OTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJPcHRpb25zOlxuIgorI3wgIiAgLS1zaG93Zm9ybWF0PTxmb3JtYXQ+ICAgICAgICAgICAgVXNlIGFsdGVybmF0aXZlIGZvcm1hdCBmb3IgLS1zaG93LlxuIgorI3wgIiAgLUQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRW5hYmxlIGRlYnVnZ2luZyBvdXRwdXQuXG4iCisjfCAiICAtLW9sZCwgLS1uZXcgICAgICAgICAgICAgICAgICAgICBTZWxlY3QgYXJjaGl2ZSBmb3JtYXQuXG4iCisjfCAiICAtLW5vY2hlY2sgICAgICAgICAgICAgICAgICAgICAgICBTdXBwcmVzcyBjb250cm9sIGZpbGUgY2hlY2sgKGJ1aWxkICIKKyN8ICJiYWRcbiIKKyN8ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFja2FnZXMpLlxuIgorI3wgIiAgLXojICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU2V0IHRoZSBjb21wcmVzc2lvbiBsZXZlbCB3aGVuICIKKyN8ICJidWlsZGluZy5cbiIKKyN8ICIgIC1aPHR5cGU+ICAgICAgICAgICAgICAgICAgICAgICAgIFNldCB0aGUgY29tcHJlc3Npb24gdHlwZSB1c2VkIHdoZW4gIgorI3wgImJ1aWxkaW5nLlxuIgorI3wgIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBbGxvd2VkIHR5cGVzOiBnemlwLCB4eiwgYnppcDIsICIKKyN8ICJsem1hLCBub25lLlxuIgorI3wgIlxuIgorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1zaG93Zm9ybWF0PTxmb3JtYXQ+ICAgICAgICAgICAgVXNlIGFsdGVybmF0aXZlIGZvcm1hdCBmb3IgLS1zaG93LlxuIgorIiAgLXYsIC0tdmVyYm9zZSAgICAgICAgICAgICAgICAgICAgRW5hYmxlIHZlcmJvc2Ugb3V0cHV0LlxuIgorIiAgLUQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRW5hYmxlIGRlYnVnZ2luZyBvdXRwdXQuXG4iCisiICAtLW9sZCwgLS1uZXcgICAgICAgICAgICAgICAgICAgICBTZWxlY3QgYXJjaGl2ZSBmb3JtYXQuXG4iCisiICAtLW5vY2hlY2sgICAgICAgICAgICAgICAgICAgICAgICBTdXBwcmVzcyBjb250cm9sIGZpbGUgY2hlY2sgKGJ1aWxkIGJhZFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWNrYWdlcykuXG4iCisiICAteiMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTZXQgdGhlIGNvbXByZXNzaW9uIGxldmVsIHdoZW4gYnVpbGRpbmcuXG4iCisiICAtWjx0eXBlPiAgICAgICAgICAgICAgICAgICAgICAgICBTZXQgdGhlIGNvbXByZXNzaW9uIHR5cGUgdXNlZCB3aGVuICIKKyJidWlsZGluZy5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWxsb3dlZCB0eXBlczogZ3ppcCwgeHosIGJ6aXAyLCBsem1hLCAiCisibm9uZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIlRpbHZhbGc6XG4iCisiICAtLXNob3dmb3JtYXQ9PGZvcm1hdD4gICAgICAgICAgICBCcnVnIGFsdGVybmF0aXZ0IGZvcm1hdCB0aWwgLS1zaG93XG4iCisiICAtRCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBWaXMgZmVqbHPDuGduaW5nc2luZm9ybWF0aW9uLlxuIgorIiAgLS1vbGQsIC0tbmV3ICAgICAgICAgICAgICAgICAgICAgVsOmbGcgYXJraXZmb3JtYXQuXG4iCisiICAtLW5vY2hlY2sgICAgICAgICAgICAgICAgICAgICAgICBVbmRlcnRyeWsga29udHJvbGZpbHRqZWsgKGJ5ZyB1Z3lsZGlnZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWtrZXIpLlxuIgorIiAgLXojICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQW5naXYga29tcHJpbWVyaW5nc25pdmVhdSB2ZWQgYnlnbmluZy5cbiIKKyIgIC1aPHR5cGU+ICAgICAgICAgICAgICAgICAgICAgICAgIEFuZ2l2IGtvbXByaW1lcmluZ3N0eXBlbiB2ZWQgYnlnbmluZy5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTXVsaWdlIHR5cGVyOiBnemlwLCB4eiwgYnppcDIsIGx6bWEsICIKKyJub25lLlxuIgorIlxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTIxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJVc2UgYGRwa2cnIHRvIGluc3RhbGwgYW5kIHJlbW92ZSBwYWNrYWdlcyBmcm9tIHlvdXIgc3lzdGVtLCBvclxuIgorImBkc2VsZWN0JyBvciBgYXB0aXR1ZGUnIGZvciB1c2VyLWZyaWVuZGx5IHBhY2thZ2UgbWFuYWdlbWVudC4gIFBhY2thZ2VzXG4iCisidW5wYWNrZWQgdXNpbmcgYGRwa2ctZGViIC0tZXh0cmFjdCcgd2lsbCBiZSBpbmNvcnJlY3RseSBpbnN0YWxsZWQgIVxuIgorbXNnc3RyICIiCisiXG4iCisiQnJ1ZyAnZHBrZycgdGlsIGF0IGluc3RhbGxlcmUgb2cgYWZpbnN0YWxsZXJlIHBha2tlciBmcmEgZGl0IHN5c3RlbSwgZWxsZXJcbiIKKyInZHNlbGVjdCcgZWxsZXIgJ2FwdGl0dWRlJyBzb20gYnJ1Z2VydmVubGdpdCBwYWtrZWjDpW5kdGVyaW5nLiBQYWtrZXIsIGRlclxuIgorInBha2tlcyB1ZCBtZWQgJ2Rwa2ctZGViIC0tZXh0cmFjdCcgYmxpdmVyIGlra2UgaW5zdGFsbGVyZXQga29ycmVrdCFcbiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjEzMgorbXNnaWQgIiIKKyJUeXBlIGRwa2ctZGViIC0taGVscCBmb3IgaGVscCBhYm91dCBtYW5pcHVsYXRpbmcgKi5kZWIgZmlsZXM7XG4iCisiVHlwZSBkcGtnIC0taGVscCBmb3IgaGVscCBhYm91dCBpbnN0YWxsaW5nIGFuZCBkZWluc3RhbGxpbmcgcGFja2FnZXMuIgorbXNnc3RyICIiCisiU2tyaXYgZHBrZy1kZWIgLS1oZWxwIGZvciBoasOmbHAgbWVkIG1hbmlwdWxhdGlvbiBtZWQgKi5kZWItZmlsZXJcbiIKKyJTa3JpdiBkcGtnIC0taGVscCBmb3IgaGrDpmxwIG1lZCBpbnN0YWxsYXRpb24gb2cgYWZpbnN0YWxsYXRpb24gYWYgcGFra2VyLiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjE0OAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGludGVnZXIgZm9yIC0lYzogJyUuMjUwcyciCittc2dzdHIgInVneWxkaWd0IGhlbHRhbCBmb3IgLSVjOiAnJS4yNTBzJyIKKworIzogZHBrZy1kZWIvbWFpbi5jOjE1MQorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGNvbXByZXNzaW9uIGxldmVsIGZvciAtJWM6ICVsZCciCittc2dzdHIgInVneWxkaWd0IGtvbXByaW1lcmluZ3NuaXZlYXUgZm9yIC0lYzogJyVsZCciCisKKyM6IGRwa2ctZGViL21haW4uYzoxNjEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBjb21wcmVzc2lvbiB0eXBlIGAlcychIgorbXNnc3RyICJ1a2VuZHQga29tcHJpbWVyaW5nc3R5cGUgJyVzJyEiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjUyCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBkaWdpdCAoY29kZSAlZCkgaW4gJXMiCittc2dzdHIgImZpbGVuICclLjI1MHMnIGVyIMO4ZGVsYWd0IC0gdWd5bGRpZ3QgY2lmZmVyIChrb2RlICVkKSBpICVzIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzo2MAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSAlLjI1MHMgbWlzc2luZyIKK21zZ3N0ciAiZmlsZW4gJyUuMjUwcycgZXIgw7hkZWxhZ3QgLSAlLjI1MHMgbWFuZ2xlciIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gbWlzc2luZyBuZXdsaW5lIGFmdGVyICUuMjUwcyIKK21zZ3N0ciAiZmlsZW4gJyUuMjUwcycgZXIgw7hkZWxhZ3QgLSBtYW5nbGVuZGUgbGluamVza2lmdCBlZnRlciAlLjI1MHMiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjg5IGRwa2ctc3BsaXQvbWFpbi5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciByZWFkaW5nICUuMjUwcyIKK21zZ3N0ciAiZmVqbCB2ZWQgbMOmc25pbmcgYWYgJS4yNTBzIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIG1hZ2ljIGF0IGVuZCBvZiBmaXJzdCBoZWFkZXIiCittc2dzdHIgIiIKKyJmaWxlbiAnJS4yNTBzJyBlciDDuGRlbGFndCAtIHVneWxkaWd0IG1hZ2lzayBudW1tZXIgaSBzbHV0bmluZ2VuIGFmIGbDuHJzdGUgIgorImhvdmVkIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIHBhZGRpbmcgY2hhcmFjdGVyIChjb2RlICVkKSIKK21zZ3N0ciAiZmlsZW4gJyUuMjUwcycgaXMgw7hkZWxhZ3QgLSB1Z3lsZGlndCB1ZGZ5bGRuaW5nc3RlZ24gKGtvZGUgJWQpIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gbnVsbHMgaW4gaW5mbyBzZWN0aW9uIgorbXNnc3RyICJmaWxlbiAnJS4yNTBzJyBpcyDDuGRlbGFndCAtIG51bGxlciBpIGluZm9ybWF0aW9uc2Fmc25pdHRldCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTIyCittc2dpZCAiZm9ybWF0IHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICJ2ZXJzaW9uc251bW1lciBmb3IgZm9ybWF0IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBmb3JtYXQgdmVyc2lvbiBgJS4yNTBzJyAtIHlvdSBuZWVkIGEgbmV3ZXIgZHBrZy1zcGxpdCIKK21zZ3N0ciAiIgorImZpbGVuICclLjI1MHMnIGhhciBmb3JtYXR2ZXJzaW9uICclLjI1MHMnIC0gZHUgYmVow7h2ZXIgZW4gbnllcmUgZHBrZy1zcGxpdCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTI3Cittc2dpZCAicGFja2FnZSBuYW1lIgorbXNnc3RyICJwYWtrZW5hdm4iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyOAorbXNnaWQgInBhY2thZ2UgdmVyc2lvbiBudW1iZXIiCittc2dzdHIgInZlcnNpb25zbnVtbWVyIGZvciBwYWtrZSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTI5Cittc2dpZCAicGFja2FnZSBmaWxlIE1ENSBjaGVja3N1bSIKK21zZ3N0ciAicGFra2VmaWxzIE1ENS10amVrc3VtIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIE1ENSBjaGVja3N1bSBgJS4yNTBzJyIKK21zZ3N0ciAiZmlsZW4gJyUuMjUwcycgZXIgw7hkZWxhZ3QgLSB1Z3lsZGlnIE1ENS1jaGVja3N1bSAnJS4yNTBzJyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTM0IGRwa2ctc3BsaXQvaW5mby5jOjEzNQorbXNnaWQgImFyY2hpdmUgdG90YWwgc2l6ZSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMzYgZHBrZy1zcGxpdC9pbmZvLmM6MTM3CisjLCBmdXp6eQorI3wgbXNnaWQgInBhcnQgb2Zmc2V0IgorbXNnaWQgImFyY2hpdmUgcGFydCBvZmZzZXQiCittc2dzdHIgImRlbGFmc8OmdCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTM5CisjLCBmdXp6eQorI3wgbXNnaWQgInBhcnQgbnVtYmVycyIKK21zZ2lkICJhcmNoaXZlIHBhcnQgbnVtYmVycyIKK21zZ3N0ciAiZGVsbnVtcmUiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE0MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gbm8gc2xhc2ggYmV0d2VlbiBwYXJ0IG51bWJlcnMiCittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gbm8gc2xhc2ggYmV0d2VlbiBhcmNoaXZlIHBhcnQgbnVtYmVycyIKK21zZ3N0ciAiZmlsZW4gJyUuMjUwcycgaXMgw7hkZWxhZ3QgLSBpbmdlbiBzdHJlZyBtZWxsZW0gZGVsbnVtcmVuZSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTQ1CisjLCBmdXp6eQorI3wgbXNnaWQgIm51bWJlciBvZiBwYXJ0cyIKK21zZ2lkICJudW1iZXIgb2YgYXJjaGl2ZSBwYXJ0cyIKK21zZ3N0ciAiYW50YWwgZGVsZSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTQ3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgbnVtYmVyIG9mIHBhcnRzIgorbXNnaWQgImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBudW1iZXIgb2YgYXJjaGl2ZSBwYXJ0cyIKK21zZ3N0ciAiZmlsZW4gJyUuMjUwcycgaXMgw7hkZWxhZ3QgLSB1Z3lsZGlndCBhbnRhbCBkZWxlIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDkKKyMsIGZ1enp5CisjfCBtc2dpZCAicGFydHMgbnVtYmVyIgorbXNnaWQgImFyY2hpdmUgcGFydHMgbnVtYmVyIgorbXNnc3RyICJkZWxudW1tZXIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE1MQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIHBhcnQgbnVtYmVyIgorbXNnaWQgImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBhcmNoaXZlIHBhcnQgbnVtYmVyIgorbXNnc3RyICJmaWxlbiAnJS4yNTBzJyBpcyDDuGRlbGFndCAtIHVneWxkaWd0IGRlbG51bW1lciIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTU3CisjLCBmdXp6eQorI3wgbXNnaWQgInBhY2thZ2UgbmFtZSIKK21zZ2lkICJwYWNrYWdlIGFyY2hpdGVjdHVyZSIKK21zZ3N0ciAicGFra2VuYXZuIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIG1hZ2ljIGF0IGVuZCBvZiBzZWNvbmQgaGVhZGVyIgorbXNnc3RyICIiCisiZmlsZW4gJyUuMjUwcycgaXMgw7hkZWxhZ3QgLSB1Z3lsZGlndCBtYWdpc2sgbnVtbWVyIGkgc2x1dG5pbmdlbiBhZiBhbmRldCAiCisiaG92ZWQiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE2OAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBzZWNvbmQgbWVtYmVyIGlzIG5vdCBkYXRhIG1lbWJlciIKK21zZ3N0ciAiZmlsZW4gJyUuMjUwcycgaXMgw7hkZWxhZ3QgLSBhbmRldCBtZWRsZW0gZXIgaWtrZSBkYXRhbWVkbGVtIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gd3JvbmcgbnVtYmVyIG9mIHBhcnRzIGZvciBxdW90ZWQgc2l6ZXMiCittc2dzdHIgIiIKKyJmaWxlbiAnJS4yNTBzJyBpcyDDuGRlbGFndCAtIGZvcmtlcnQgYW50YWwgZGVsZSBmb3IgZGUgb3BseXN0ZSBzdMO4cnJlbHNlciIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTc4CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIHNpemUgaXMgd3JvbmcgZm9yIHF1b3RlZCBwYXJ0IG51bWJlciIKK21zZ3N0ciAiZmlsZW4gJyUuMjUwcycgaXMgw7hkZWxhZ3QgLSBzdMO4cnJlbHNlbiBlciBmb3JrZXJ0IGZvciBuw6Z2bnQgZGVsbnVtbWVyIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxODQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZzdGF0IHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia3VubmUgaWtrZSBrw7hyZSAnZnN0YXQnIHDDpSBkZWxmaWwgJyUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE4OQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSB0b28gc2hvcnQiCittc2dzdHIgImZpbGVuICclLjI1MHMnIGVyIMO4ZGVsYWd0IC0gZm9yIGtvcnQiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjIwMiBkcGtnLXNwbGl0L2luZm8uYzoyNDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IG9wZW4gYXJjaGl2ZSBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgImthbiBpa2tlIMOlYm5lIGFya2l2ZGVsZmlsZW4gJyUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjIwNAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIG5vdCBhbiBhcmNoaXZlIHBhcnQiCittc2dzdHIgImZpbGVuICclLjI1MHMnIGVyIGlra2UgZW4gYXJraXZkZWwiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjIwOQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiVzOlxuIgorI3wgIiAgICBQYXJ0IGZvcm1hdCB2ZXJzaW9uOiAgICAgICAgICAgICVzXG4iCisjfCAiICAgIFBhcnQgb2YgcGFja2FnZTogICAgICAgICAgICAgICAgJXNcbiIKKyN8ICIgICAgICAgIC4uLiB2ZXJzaW9uOiAgICAgICAgICAgICAgICAlc1xuIgorI3wgIiAgICAgICAgLi4uIE1ENSBjaGVja3N1bTogICAgICAgICAgICVzXG4iCisjfCAiICAgICAgICAuLi4gbGVuZ3RoOiAgICAgICAgICAgICAgICAgJWx1IGJ5dGVzXG4iCisjfCAiICAgICAgICAuLi4gc3BsaXQgZXZlcnk6ICAgICAgICAgICAgJWx1IGJ5dGVzXG4iCisjfCAiICAgIFBhcnQgbnVtYmVyOiAgICAgICAgICAgICAgICAgICAgJWQvJWRcbiIKKyN8ICIgICAgUGFydCBsZW5ndGg6ICAgICAgICAgICAgICAgICAgICAlemkgYnl0ZXNcbiIKKyN8ICIgICAgUGFydCBvZmZzZXQ6ICAgICAgICAgICAgICAgICAgICAlbHUgYnl0ZXNcbiIKKyN8ICIgICAgUGFydCBmaWxlIHNpemUgKHVzZWQgcG9ydGlvbik6ICAlbHUgYnl0ZXNcbiIKKyN8ICJcbiIKK21zZ2lkICIiCisiJXM6XG4iCisiICAgIFBhcnQgZm9ybWF0IHZlcnNpb246ICAgICAgICAgICAgJXNcbiIKKyIgICAgUGFydCBvZiBwYWNrYWdlOiAgICAgICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIHZlcnNpb246ICAgICAgICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gYXJjaGl0ZWN0dXJlOiAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiBNRDUgY2hlY2tzdW06ICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIGxlbmd0aDogICAgICAgICAgICAgICAgICVqZCBieXRlc1xuIgorIiAgICAgICAgLi4uIHNwbGl0IGV2ZXJ5OiAgICAgICAgICAgICVqZCBieXRlc1xuIgorIiAgICBQYXJ0IG51bWJlcjogICAgICAgICAgICAgICAgICAgICVkLyVkXG4iCisiICAgIFBhcnQgbGVuZ3RoOiAgICAgICAgICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgIFBhcnQgb2Zmc2V0OiAgICAgICAgICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgIFBhcnQgZmlsZSBzaXplICh1c2VkIHBvcnRpb24pOiAgJWpkIGJ5dGVzXG4iCisiXG4iCittc2dzdHIgIiIKKyIlczpcbiIKKyIgICAgRGVsZm9ybWF0dmVyc2lvbjogICAgICAgICAgICAgICAlc1xuIgorIiAgICBEZWwgaSBwYWtrZTogICAgICAgICAgICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gdmVyc2lvbjogICAgICAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiBNRDUtY2hlY2tzdW06ICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIGzDpm5nZGU6ICAgICAgICAgICAgICAgICAlbHUgYnl0ZVxuIgorIiAgICAgICAgLi4uIG9wZGVsIGZvciBodmVyOiAgICAgICAgICVsdSBieXRlXG4iCisiICAgIERlbC1hbnRhbDogICAgICAgICAgICAgICAgICAgICAgJWQvJWRcbiIKKyIgICAgRGVsLWzDpm5nZGU6ICAgICAgICAgICAgICAgICAgICAgJXppIGJ5dGVcbiIKKyIgICAgRGVsLWZvcnNreWRuaW5nOiAgICAgICAgICAgICAgICAlbHUgYnl0ZVxuIgorIiAgICBEZWxmaWxzdMO4cnJlbHNlIChicnVndCBhbmRlbCk6ICAlbHUgYnl0ZVxuIgorIlxuIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyMjUKKyMsIGZ1enp5CisjfCBtc2dpZCAiPHVua25vd24+IgorbXNnY3R4dCAiYXJjaGl0ZWN0dXJlIgorbXNnaWQgIjx1bmtub3duPiIKK21zZ3N0ciAiPHVrZW5kdD4iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjI0NCBkcGtnLXNwbGl0L2pvaW4uYzoxMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyByZXF1aXJlcyBvbmUgb3IgbW9yZSBwYXJ0IGZpbGUgYXJndW1lbnRzIgorbXNnc3RyICItLSVzIGtyw6Z2ZXIgw6l0IGVsbGVyIGZsZXJlIGRlbGZpbGFyZ3VtZW50ZXIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjI1NQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlcycgaXMgbm90IGFuIGFyY2hpdmUgcGFydFxuIgorbXNnc3RyICJmaWxlbiAnJXMnIGVyIGluZ2VuIGFya2l2ZGVsXG4iCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjQ0CisjLCBjLWZvcm1hdAorbXNnaWQgIlB1dHRpbmcgcGFja2FnZSAlcyB0b2dldGhlciBmcm9tICVkIHBhcnQ6ICIKK21zZ2lkX3BsdXJhbCAiUHV0dGluZyBwYWNrYWdlICVzIHRvZ2V0aGVyIGZyb20gJWQgcGFydHM6ICIKK21zZ3N0clswXSAiU2FtbGVyIHBha2tlbiAlcyB1ZCBhZiAlZCBkZWw6ICIKK21zZ3N0clsxXSAiU2FtbGVyIHBha2tlbiAlcyB1ZCBhZiAlZCBkZWxlOiAiCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjUxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIG91dHB1dCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrdW5uZSBpa2tlIMOlYm5lIHVkZGF0YS1maWwgJyUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjU3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byAocmUpb3BlbiBpbnB1dCBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgImt1bm5lIGlra2UgKGdlbinDpWJuZSBpbmRkYXRhLWRlbGZpbCAnJS4yNTBzJyIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NTgKKyMsIGZ1enp5CisjfCBtc2dpZCAiU2tpcHBpbmcgZGVzZWxlY3RlZCBwYWNrYWdlICVzLlxuIgorbXNnaWQgInNraXBwaW5nIHNwbGl0IHBhY2thZ2UgaGVhZGVyIgorbXNnc3RyICJPdmVyc3ByaW5nZXIgdGlkbGlnZXJlIGZyYXZhbGd0IHBha2tlICVzLlxuIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1OQorIywgZnV6enkKKyN8IG1zZ2lkICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0OiAiCisjfCBtc2dpZF9wbHVyYWwgIlB1dHRpbmcgcGFja2FnZSAlcyB0b2dldGhlciBmcm9tICVkIHBhcnRzOiAiCittc2dpZCAic3BsaXQgcGFja2FnZSBwYXJ0IgorbXNnc3RyICJTYW1sZXIgcGFra2VuICVzIHVkIGFmICVkIGRlbDogIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo2OSBkcGtnLXNwbGl0L3NwbGl0LmM6MjM3CisjLCBjLWZvcm1hdAorbXNnaWQgImRvbmVcbiIKK21zZ3N0ciAiZsOmcmRpZ1xuIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo4NQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlcyBgJS4yNTBzJyBhbmQgYCUuMjUwcycgYXJlIG5vdCBwYXJ0cyBvZiB0aGUgc2FtZSBmaWxlIgorbXNnc3RyICJmaWxlcm5lICclLjI1MHMnIG9nICclLjI1MHMnIGVyIGlra2UgZGVsZSBhZiBzYW1tZSBmaWwiCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjkwCisjLCBjLWZvcm1hdAorbXNnaWQgInRoZXJlIGFyZSBzZXZlcmFsIHZlcnNpb25zIG9mIHBhcnQgJWQgLSBhdCBsZWFzdCBgJS4yNTBzJyBhbmQgYCUuMjUwcyciCittc2dzdHIgIiIKKyJkZXIgZXIgZmxlcmUgdmVyc2lvbmVyIGFmIGRlbCAlZCAtIGkgaHZlcnQgdGlsZsOmbGRlICclLjI1MHMnIG9nICclLjI1MHMnIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzoxMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFydCAlZCBpcyBtaXNzaW5nIgorbXNnc3RyICJkZWwgJWQgbWFuZ2xlciIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6NDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuIGAlcycgcGFja2FnZSBzcGxpdC9qb2luIHRvb2w7IHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkRlYmlhbiAnJXMnIHBha2tlLW9wc3BsaXRuaW5ncy9zYW1tZW5zbWVsdG5pbmdzLXbDpnJrdMO4ajsgdmVyc2lvbiAlcy5cbiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ29weXJpZ2h0IChDKSAxOTk0LTE5OTYgSWFuIEphY2tzb24uXG4iCittc2dzdHIgIk9waGF2c3JldCAoQykgMTk5NC0xOTk2IElhbiBKYWNrc29uLlxuIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo2NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtc3wtLXNwbGl0IDxmaWxlPiBbPHByZWZpeD5dICAgICBTcGxpdCBhbiBhcmNoaXZlLlxuIgorIiAgLWp8LS1qb2luIDxwYXJ0PiA8cGFydD4gLi4uICAgICAgSm9pbiBwYXJ0cyB0b2dldGhlci5cbiIKKyIgIC1JfC0taW5mbyA8cGFydD4gLi4uICAgICAgICAgICAgIERpc3BsYXkgaW5mbyBhYm91dCBhIHBhcnQuXG4iCisiICAtYXwtLWF1dG8gLW8gPGNvbXBsZXRlPiA8cGFydD4gICBBdXRvLWFjY3VtdWxhdGUgcGFydHMuXG4iCisiICAtbHwtLWxpc3RxICAgICAgICAgICAgICAgICAgICAgICBMaXN0IHVubWF0Y2hlZCBwaWVjZXMuXG4iCisiICAtZHwtLWRpc2NhcmQgWzxmaWxlbmFtZT4gLi4uXSAgICBEaXNjYXJkIHVubWF0Y2hlZCBwaWVjZXMuXG4iCisiXG4iCittc2dzdHIgIiIKKyJLb21tYW5kb2VyOlxuIgorIiAgLXN8LS1zcGxpdCA8ZmlsPiBbPHByw6ZmaWtzPl0gICAgT3BkZWwgZXQgYXJraXYuXG4iCisiICAtanwtLWpvaW4gPGRlbD4gPGRlbD4gLi4uICAgICAgIFNwbGVqcyBkZWxlIHNhbW1lbi5cbiIKKyIgIC1JfC0taW5mbyA8ZGVsPiAuLi4gICAgICAgICAgICAgVmlzIG9wbHlzbmluZ2VyIG9tIGVuIGRlbC5cbiIKKyIgIC1hfC0tYXV0byAtbyA8a29tcGxldD4gPGRlbD4gICAgQXV0by1ha2t1bXVsw6lyIGRlbGUuXG4iCisiICAtbHwtLWxpc3RxICAgICAgICAgICAgICAgICAgICAgIFZpcyBkZWxlLCBkZXIgaWtrZSBwYXNzZXIuXG4iCisiICAtZHwtLWRpc2NhcmQgWzxmaWxuYXZuPiAuLi5dICAgIFNsZXQgZGVsZSwgZGVyIGlra2UgcGFzc2VyLlxuIgorIlxuIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo4MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIk9wdGlvbnM6XG4iCisjfCAiICAtLWRlcG90ZGlyIDxkaXJlY3Rvcnk+ICAgICAgICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy8lcy5cbiIKKyN8ICIgIC1TfC0tcGFydHNpemUgPHNpemU+ICAgICAgICAgICAgIEluIEtpQiwgZm9yIC1zIChkZWZhdWx0IGlzIDQ1MCkuXG4iCisjfCAiICAtb3wtLW91dHB1dCA8ZmlsZT4gICAgICAgICAgICAgICBGb3IgLWogKGRlZmF1bHQgaXMgPHBhY2thZ2U+LTx2ZXJzaW9uPi4iCisjfCAiZGViKS5cbiIKKyN8ICIgIC1RfC0tbnBxdWlldCAgICAgICAgICAgICAgICAgICAgIEJlIHF1aWV0IHdoZW4gLWEgaXMgbm90IGEgcGFydC5cbiIKKyN8ICIgIC0tbXNkb3MgICAgICAgICAgICAgICAgICAgICAgICAgIEdlbmVyYXRlIDguMyBmaWxlbmFtZXMuXG4iCisjfCAiXG4iCisjfCAiRXhpdCBzdGF0dXM6IDAgPSBPSzsgIDEgPSAtYSBpcyBub3QgYSBwYXJ0OyAgMiA9IHRyb3VibGUhXG4iCittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWRlcG90ZGlyIDxkaXJlY3Rvcnk+ICAgICAgICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy8lcy5cbiIKKyIgIC1TfC0tcGFydHNpemUgPHNpemU+ICAgICAgICAgICAgIEluIEtpQiwgZm9yIC1zIChkZWZhdWx0IGlzIDQ1MCkuXG4iCisiICAtb3wtLW91dHB1dCA8ZmlsZT4gICAgICAgICAgICAgICBGaWxlbmFtZSwgZm9yIC1qIChkZWZhdWx0IGlzXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYWNrYWdlPl88dmVyc2lvbj5fPGFyY2g+LmRlYikuXG4iCisiICAtUXwtLW5wcXVpZXQgICAgICAgICAgICAgICAgICAgICBCZSBxdWlldCB3aGVuIC1hIGlzIG5vdCBhIHBhcnQuXG4iCisiICAtLW1zZG9zICAgICAgICAgICAgICAgICAgICAgICAgICBHZW5lcmF0ZSA4LjMgZmlsZW5hbWVzLlxuIgorIlxuIgorbXNnc3RyICIiCisiVGlsdmFsZzpcbiIKKyIgIC0tZGVwb3RkaXIgPGthdGFsb2c+ICAgICAgICAgICAgQnJ1ZyA8a2F0YWxvZz4gaSBzdGVkZXQgZm9yICVzLyVzLlxuIgorIiAgLVN8LS1wYXJ0c2l6ZSA8c3TDuHJyZWxzZT4gICAgICAgRGVsc3TDuHJyZWxzZSBpIEtpQiwgZm9yIC1zIChzdGFuZGFyZCBlciAiCisiNDUwKS5cbiIKKyIgIC1vfC0tb3V0cHV0IDxmaWw+ICAgICAgICAgICAgICAgVGlsIC1qIChzdGFuZGFyZCBlciA8cGFra2U+LTx2ZXJzaW9uPi4iCisiZGViKS5cbiIKKyIgIC1RfC0tbnBxdWlldCAgICAgICAgICAgICAgICAgICAgVGkgc3RpbGxlIG7DpXIgLWEgaWtrZSBlciBlbiBkZWwuXG4iCisiICAtLW1zZG9zICAgICAgICAgICAgICAgICAgICAgICAgIEdlbmVyw6lyIDguMy1maWxuYXZuZS5cbiIKKyJcbiIKKyJBZnNsdXRuaW5nc3N0YXR1czogMCA9IG8uay47ICAxID0gLWEgZXIgaWtrZSBlbiBkZWw7ICAyID0gcHJvYmxlbWVyIVxuIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo5MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiRXhpdCBzdGF0dXM6XG4iCisiICAwID0gb2tcbiIKKyIgIDEgPSB3aXRoIC0tYXV0bywgZmlsZSBpcyBub3QgYSBwYXJ0XG4iCisiICAyID0gdHJvdWJsZVxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjEwMworbXNnaWQgIlR5cGUgZHBrZy1zcGxpdCAtLWhlbHAgZm9yIGhlbHAuIgorbXNnc3RyICJTa3JpdiBcImRwa2ctc3BsaXQgLS1oZWxwXCIgZm9yIGhqw6ZscC4iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjExNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBmaWxlIGluICUuMjUwcyIKK21zZ3N0ciAidXZlbnRldCBmaWxhZnNsdXRuaW5nIGkgJS4yNTBzIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMjYKK21zZ2lkICJwYXJ0IHNpemUgaXMgZmFyIHRvbyBsYXJnZSBvciBpcyBub3QgcG9zaXRpdmUiCittc2dzdHIgImRlbGVuIGVyIGFsdCBmb3Igc3RvciwgZWxsZXIgc3TDuHJyZWxzZW4gZXIgaWtrZSBwb3NpdGl2IgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMzAKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFydCBzaXplIG11c3QgYmUgYXQgbGVhc3QgJWQgS2lCICh0byBhbGxvdyBmb3IgaGVhZGVyKSIKK21zZ3N0ciAiZGVsc3TDuHJyZWxzZW4gc2thbCBtaW5kc3QgdsOmcmUgcMOlICVkIEtpQiAoZm9yIGF0IGbDpSBwbGFkcyB0aWwgaG92ZWQpIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgZGVwb3QgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICJrdW5uZSBpa2tlIGzDpnNlIGRlcG90LWthdGFsb2cgJyUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxMzQKK21zZ2lkICItLWF1dG8gcmVxdWlyZXMgdGhlIHVzZSBvZiB0aGUgLS1vdXRwdXQgb3B0aW9uIgorbXNnc3RyICItLWF1dG8ga3LDpnZlciBicnVnZW4gYWYgdGlsdmFsZ2V0IC0tb3V0cHV0IgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTM2Cittc2dpZCAiLS1hdXRvIHJlcXVpcmVzIGV4YWN0bHkgb25lIHBhcnQgZmlsZSBhcmd1bWVudCIKK21zZ3N0ciAiLS1hdXRvIGtyw6Z2ZXIgbsO4amFndGlnIMOpdCBkZWxmaWxzLXBhcmFtZXRlciIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE0MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgImt1bm5lIGlra2UgbMOmc2UgZGVsZmlsICclLjI1MHMnIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTQzCisjLCBjLWZvcm1hdAorbXNnaWQgIkZpbGUgYCUuMjUwcycgaXMgbm90IHBhcnQgb2YgYSBtdWx0aXBhcnQgYXJjaGl2ZS5cbiIKK21zZ3N0ciAiRmlsZW4gJyUuMjUwcycgZXIgaWtrZSBlbiBkZWwgYWYgZXQgb3BkZWx0IGFya2l2LlxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTc5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW9wZW4gcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrdW5uZSBpa2tlIGdlbsOlYm5lIGRlbGZpbGVuICclLjI1MHMnIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTgyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIG5ldyBkZXBvdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrdW5uZSBpa2tlIMOlYm5lIG55IGRlcG90ZmlsICclLjI1MHMnIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTg0Cittc2dpZCAiZXh0cmFjdGluZyBzcGxpdCBwYXJ0IgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbmFtZSBuZXcgZGVwb3QgZmlsZSBgJS4yNTBzJyB0byBgJS4yNTBzJyIKK21zZ3N0ciAia3VubmUgaWtrZSBvbWTDuGJlIGRlbiBueSBkZXBvdGZpbCAnJS4yNTBzJyB0aWwgJyUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFydCAlZCBvZiBwYWNrYWdlICVzIGZpbGVkIChzdGlsbCB3YW50ICIKK21zZ3N0ciAiRGVsICVkIGZyYSBwYWtrZW4gJXMgZ2VtdCAow7huc2tlciBzdGFkaWcgIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjAwCittc2dpZCAiIGFuZCAiCittc2dzdHIgIiBvZyAiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSB1c2VkLXVwIGRlcG90IGZpbGUgYCUuMjUwcyciCittc2dzdHIgImt1bm5lIGlra2Ugc2xldHRlIG9wYnJ1Z3QgZGVwb3RmaWwgJyUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyMzUKK21zZ2lkICJKdW5rIGZpbGVzIGxlZnQgYXJvdW5kIGluIHRoZSBkZXBvdCBkaXJlY3Rvcnk6XG4iCittc2dzdHIgIkFmZmFsZHNmaWxlciBlZnRlcmxhZHQgaSBkZXBvdGthdGFsb2dldDpcbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI0MCBkcGtnLXNwbGl0L3F1ZXVlLmM6MjY5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGAlLjI1MHMnIgorbXNnc3RyICJrdW5uZSBpa2tlIGZpbmRlICclLjI1MHMnIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjQzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIgJXMgKCVsdSBieXRlcylcbiIKK21zZ2lkICIgJXMgKCVqZCBieXRlcylcbiIKK21zZ3N0ciAiICVzICglbHUgYnl0ZSlcbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI0NQorIywgYy1mb3JtYXQKK21zZ2lkICIgJXMgKG5vdCBhIHBsYWluIGZpbGUpXG4iCittc2dzdHIgIiAlcyAoaWtrZSBlbiBhbG1pbmRlbGlnIGZpbClcbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI1MAorbXNnaWQgIlBhY2thZ2VzIG5vdCB5ZXQgcmVhc3NlbWJsZWQ6XG4iCittc2dzdHIgIlBha2tlciwgZGVyIGVuZG51IGlra2UgZXIgc2FtbWVuZsO4amV0OlxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjU4CisjLCBjLWZvcm1hdAorbXNnaWQgIiBQYWNrYWdlICVzOiBwYXJ0KHMpICIKK21zZ3N0ciAiIFBha2tlICVzOiBkZWxlICIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI3MQorIywgYy1mb3JtYXQKK21zZ2lkICJwYXJ0IGZpbGUgYCUuMjUwcycgaXMgbm90IGEgcGxhaW4gZmlsZSIKK21zZ3N0ciAiZGVsZmlsZW4gJyUuMjUwcycgZXIgaWtrZSBlbiBhbG1pbmRlbGlnIGZpbCIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI3OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiKHRvdGFsICVsdSBieXRlcylcbiIKK21zZ2lkICIodG90YWwgJWpkIGJ5dGVzKVxuIgorbXNnc3RyICIodG90YWwgJWx1IGJ5dGUpXG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzozMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRpc2NhcmQgYCUuMjUwcyciCittc2dzdHIgImt1bm5lIGlra2Ugc2xldHRlICclLjI1MHMnIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MzA1CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlbGV0ZWQgJXMuXG4iCittc2dzdHIgIlNsZXR0ZWRlICVzLlxuIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6NzAgZHBrZy1zcGxpdC9zcGxpdC5jOjc2IGRwa2ctc3BsaXQvc3BsaXQuYzo4MQorIywgZnV6enkKKyN8IG1zZ2lkICJkcGtnLWRlYiBmaWVsZCBleHRyYWN0aW9uIgorbXNnaWQgInBhY2thZ2UgZmllbGQgdmFsdWUgZXh0cmFjdGlvbiIKK21zZ3N0ciAiZmVsdHVkdHLDpmtuaW5nIHRpbCBkcGtnLWRlYiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjEzMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBzb3VyY2UgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia3VubmUgaWtrZSDDpWJuZSBraWxkZWZpbCAnJS4yNTBzJyIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjEzMworbXNnaWQgInVuYWJsZSB0byBmc3RhdCBzb3VyY2UgZmlsZSIKK21zZ3N0ciAia3VubmUgaWtrZSBrw7hyZSAnZnN0YXQnIHDDpSBraWxkZWZpbCIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjEzNQorIywgYy1mb3JtYXQKK21zZ2lkICJzb3VyY2UgZmlsZSBgJS4yNTBzJyBub3QgYSBwbGFpbiBmaWxlIgorbXNnc3RyICJraWxkZWZpbCAnJS4yNTBzJyBpa2tlIGVuIGFsbWluZGVsaWcgZmlsIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTUzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0OiAiCisjfCBtc2dpZF9wbHVyYWwgIlB1dHRpbmcgcGFja2FnZSAlcyB0b2dldGhlciBmcm9tICVkIHBhcnRzOiAiCittc2dpZCAiU3BsaXR0aW5nIHBhY2thZ2UgJXMgaW50byAlZCBwYXJ0OiAiCittc2dpZF9wbHVyYWwgIlNwbGl0dGluZyBwYWNrYWdlICVzIGludG8gJWQgcGFydHM6ICIKK21zZ3N0clswXSAiU2FtbGVyIHBha2tlbiAlcyB1ZCBhZiAlZCBkZWw6ICIKK21zZ3N0clsxXSAiU2FtbGVyIHBha2tlbiAlcyB1ZCBhZiAlZCBkZWxlOiAiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxOTMKK21zZ2lkICIiCisiSGVhZGVyIGlzIHRvbyBsb25nLCBtYWtpbmcgcGFydCB0b28gbG9uZy4gWW91ciBwYWNrYWdlIG5hbWUgb3IgdmVyc2lvblxuIgorIm51bWJlcnMgbXVzdCBiZSBleHRyYW9yZGluYXJpbHkgbG9uZywgb3Igc29tZXRoaW5nLiBHaXZpbmcgdXAuXG4iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjI0OQorbXNnaWQgIi0tc3BsaXQgbmVlZHMgYSBzb3VyY2UgZmlsZW5hbWUgYXJndW1lbnQiCittc2dzdHIgIi0tc3BsaXQga3LDpnZlciBldCBraWxkZWZpbG5hdm5zLXBhcmFtZXRlciIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjI1MgorbXNnaWQgIi0tc3BsaXQgdGFrZXMgYXQgbW9zdCBhIHNvdXJjZSBmaWxlbmFtZSBhbmQgZGVzdGluYXRpb24gcHJlZml4IgorbXNnc3RyICItLXNwbGl0IHRhZ2VyIGjDuGpzdCDDqXQga2lsZGVmaWxuYXZuIG9nIG3DpWxwcsOmZmlrcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjg0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLTIwMDIgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDktMjAxMCBSYXBoYWVsIEhlcnR6b2cuXG4iCittc2dzdHIgIiIKKyJPcGhhdnNyZXQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisiT3BoYXZzcmV0IChDKSAyMDAwLTIwMDIgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJPcGhhdnNyZXQgKEMpIDIwMDktMjAxMCBSYXBoYWVsIEhlcnR6b2cuXG4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMDEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gPGNvbW1hbmQ+XG4iCisjfCAiXG4iCisjfCAiQ29tbWFuZHM6XG4iCisjfCAiICAtLWluc3RhbGwgPGxpbms+IDxuYW1lPiA8cGF0aD4gPHByaW9yaXR5PlxuIgorI3wgIiAgICBbLS1zbGF2ZSA8bGluaz4gPG5hbWU+IDxwYXRoPl0gLi4uXG4iCisjfCAiICAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkIGEgZ3JvdXAgb2YgYWx0ZXJuYXRpdmVzIHRvIHRoZSBzeXN0ZW0uXG4iCisjfCAiICAtLXJlbW92ZSA8bmFtZT4gPHBhdGg+ICAgcmVtb3ZlIDxwYXRoPiBmcm9tIHRoZSA8bmFtZT4gZ3JvdXAgIgorI3wgImFsdGVybmF0aXZlLlxuIgorI3wgIiAgLS1yZW1vdmUtYWxsIDxuYW1lPiAgICAgIHJlbW92ZSA8bmFtZT4gZ3JvdXAgZnJvbSB0aGUgYWx0ZXJuYXRpdmVzICIKKyN8ICJzeXN0ZW0uXG4iCisjfCAiICAtLWF1dG8gPG5hbWU+ICAgICAgICAgICAgc3dpdGNoIHRoZSBtYXN0ZXIgbGluayA8bmFtZT4gdG8gYXV0b21hdGljICIKKyN8ICJtb2RlLlxuIgorI3wgIiAgLS1kaXNwbGF5IDxuYW1lPiAgICAgICAgIGRpc3BsYXkgaW5mb3JtYXRpb24gYWJvdXQgdGhlIDxuYW1lPiBncm91cC5cbiIKKyN8ICIgIC0tcXVlcnkgPG5hbWU+ICAgICAgICAgICBtYWNoaW5lIHBhcnNlYWJsZSB2ZXJzaW9uIG9mIC0tZGlzcGxheSAiCisjfCAiPG5hbWU+LlxuIgorI3wgIiAgLS1saXN0IDxuYW1lPiAgICAgICAgICAgIGRpc3BsYXkgYWxsIHRhcmdldHMgb2YgdGhlIDxuYW1lPiBncm91cC5cbiIKKyN8ICIgIC0tY29uZmlnIDxuYW1lPiAgICAgICAgICBzaG93IGFsdGVybmF0aXZlcyBmb3IgdGhlIDxuYW1lPiBncm91cCBhbmQgYXNrICIKKyN8ICJ0aGVcbiIKKyN8ICIgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2VyIHRvIHNlbGVjdCB3aGljaCBvbmUgdG8gdXNlLlxuIgorI3wgIiAgLS1zZXQgPG5hbWU+IDxwYXRoPiAgICAgIHNldCA8cGF0aD4gYXMgYWx0ZXJuYXRpdmUgZm9yIDxuYW1lPi5cbiIKKyN8ICIgIC0tYWxsICAgICAgICAgICAgICAgICAgICBjYWxsIC0tY29uZmlnIG9uIGFsbCBhbHRlcm5hdGl2ZXMuXG4iCisjfCAiXG4iCisjfCAiPGxpbms+IGlzIHRoZSBzeW1saW5rIHBvaW50aW5nIHRvICVzLzxuYW1lPi5cbiIKKyN8ICIgIChlLmcuIC91c3IvYmluL3BhZ2VyKVxuIgorI3wgIjxuYW1lPiBpcyB0aGUgbWFzdGVyIG5hbWUgZm9yIHRoaXMgbGluayBncm91cC5cbiIKKyN8ICIgIChlLmcuIHBhZ2VyKVxuIgorI3wgIjxwYXRoPiBpcyB0aGUgbG9jYXRpb24gb2Ygb25lIG9mIHRoZSBhbHRlcm5hdGl2ZSB0YXJnZXQgZmlsZXMuXG4iCisjfCAiICAoZS5nLiAvdXNyL2Jpbi9sZXNzKVxuIgorI3wgIjxwcmlvcml0eT4gaXMgYW4gaW50ZWdlcjsgb3B0aW9ucyB3aXRoIGhpZ2hlciBudW1iZXJzIGhhdmUgaGlnaGVyICIKKyN8ICJwcmlvcml0eSBpblxuIgorI3wgIiAgYXV0b21hdGljIG1vZGUuXG4iCisjfCAiXG4iCisjfCAiT3B0aW9uczpcbiIKKyN8ICIgIC0tYWx0ZGlyIDxkaXJlY3Rvcnk+ICAgICBjaGFuZ2UgdGhlIGFsdGVybmF0aXZlcyBkaXJlY3RvcnkuXG4iCisjfCAiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgY2hhbmdlIHRoZSBhZG1pbmlzdHJhdGl2ZSBkaXJlY3RvcnkuXG4iCisjfCAiICAtLXNraXAtYXV0byAgICAgICAgICAgICAgc2tpcCBwcm9tcHQgZm9yIGFsdGVybmF0aXZlcyBjb3JyZWN0bHkgIgorI3wgImNvbmZpZ3VyZWRcbiIKKyN8ICIgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBhdXRvbWF0aWMgbW9kZSAocmVsZXZhbnQgZm9yIC0tY29uZmlnICIKKyN8ICJvbmx5KVxuIgorI3wgIiAgLS12ZXJib3NlICAgICAgICAgICAgICAgIHZlcmJvc2Ugb3BlcmF0aW9uLCBtb3JlIG91dHB1dC5cbiIKKyN8ICIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBxdWlldCBvcGVyYXRpb24sIG1pbmltYWwgb3V0cHV0LlxuIgorI3wgIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisjfCAiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtLWluc3RhbGwgPGxpbms+IDxuYW1lPiA8cGF0aD4gPHByaW9yaXR5PlxuIgorIiAgICBbLS1zbGF2ZSA8bGluaz4gPG5hbWU+IDxwYXRoPl0gLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkIGEgZ3JvdXAgb2YgYWx0ZXJuYXRpdmVzIHRvIHRoZSBzeXN0ZW0uXG4iCisiICAtLXJlbW92ZSA8bmFtZT4gPHBhdGg+ICAgcmVtb3ZlIDxwYXRoPiBmcm9tIHRoZSA8bmFtZT4gZ3JvdXAgYWx0ZXJuYXRpdmUuXG4iCisiICAtLXJlbW92ZS1hbGwgPG5hbWU+ICAgICAgcmVtb3ZlIDxuYW1lPiBncm91cCBmcm9tIHRoZSBhbHRlcm5hdGl2ZXMgIgorInN5c3RlbS5cbiIKKyIgIC0tYXV0byA8bmFtZT4gICAgICAgICAgICBzd2l0Y2ggdGhlIG1hc3RlciBsaW5rIDxuYW1lPiB0byBhdXRvbWF0aWMgbW9kZS5cbiIKKyIgIC0tZGlzcGxheSA8bmFtZT4gICAgICAgICBkaXNwbGF5IGluZm9ybWF0aW9uIGFib3V0IHRoZSA8bmFtZT4gZ3JvdXAuXG4iCisiICAtLXF1ZXJ5IDxuYW1lPiAgICAgICAgICAgbWFjaGluZSBwYXJzZWFibGUgdmVyc2lvbiBvZiAtLWRpc3BsYXkgPG5hbWU+LlxuIgorIiAgLS1saXN0IDxuYW1lPiAgICAgICAgICAgIGRpc3BsYXkgYWxsIHRhcmdldHMgb2YgdGhlIDxuYW1lPiBncm91cC5cbiIKKyIgIC0tZ2V0LXNlbGVjdGlvbnMgICAgICAgICBsaXN0IG1hc3RlciBhbHRlcm5hdGl2ZSBuYW1lcyBhbmQgdGhlaXIgc3RhdHVzLlxuIgorIiAgLS1zZXQtc2VsZWN0aW9ucyAgICAgICAgIHJlYWQgYWx0ZXJuYXRpdmUgc3RhdHVzIGZyb20gc3RhbmRhcmQgaW5wdXQuXG4iCisiICAtLWNvbmZpZyA8bmFtZT4gICAgICAgICAgc2hvdyBhbHRlcm5hdGl2ZXMgZm9yIHRoZSA8bmFtZT4gZ3JvdXAgYW5kIGFzayAiCisidGhlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlciB0byBzZWxlY3Qgd2hpY2ggb25lIHRvIHVzZS5cbiIKKyIgIC0tc2V0IDxuYW1lPiA8cGF0aD4gICAgICBzZXQgPHBhdGg+IGFzIGFsdGVybmF0aXZlIGZvciA8bmFtZT4uXG4iCisiICAtLWFsbCAgICAgICAgICAgICAgICAgICAgY2FsbCAtLWNvbmZpZyBvbiBhbGwgYWx0ZXJuYXRpdmVzLlxuIgorIlxuIgorbXNnc3RyICIiCisiQnJ1ZzogJXMgWzx0aWx2YWxnPiAuLi5dIDxrb21tYW5kbz5cbiIKKyJcbiIKKyJLb21tYW5kb2VyOlxuIgorIiAgLS1pbnN0YWxsIDxsw6Zua2U+IDxuYXZuPiA8c3RpPiA8cHJpb3JpdGV0PlxuIgorIiAgICBbLS1zbGF2ZSA8bMOmbmtlPiA8bmF2bj4gPHN0aT5dIC4uLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpbGbDuGogZW4gZ3J1cHBlIGFmIGFsdGVybmF0aXZlciB0aWwgc3lzdGVtZXQuXG4iCisiICAtLXJlbW92ZSA8bmF2bj4gPHN0aT4gICAgZmplcm4gPHN0aT4gZnJhIGdydXBwZWFsdGVybmF0aXZldCA8bmF2bj4uXG4iCisiICAtLXJlbW92ZS1hbGwgPG5hdm4+ICAgICAgZmplcm4gZ3J1cHBlbiA8bmF2bj4gZnJhIGFsdGVybmF0aXZzeXN0ZW1ldC5cbiIKKyIgIC0tYXV0byA8bmF2bj4gICAgICAgICAgICBza2lmdCBob3ZlZGzDpm5rZW4gPG5hdm4+IHRpbCBhdXRvbWF0aXNrICIKKyJ0aWxzdGFuZC5cbiIKKyIgIC0tZGlzcGxheSA8bmF2bj4gICAgICAgICB2aXMgb3BseXNuaW5nZXIgb20gZ3J1cHBlbiA8bmF2bj4uXG4iCisiICAtLXF1ZXJ5IDxuYXZuPiAgICAgICAgICAgdmFyaWFudCBhZiAtLWRpc3BsYXkgPG5hdm4+IHRpbCAiCisibWFza2luZm9ydG9sa25pbmcuXG4iCisiICAtLWxpc3QgPG5hdm4+ICAgICAgICAgICAgdmlzIGFsbGUgbcOlbCBmb3IgZ3J1cHBlbiA8bmF2bj4uXG4iCisiICAtLWNvbmZpZyA8bmF2bj4gICAgICAgICAgdmlzIGFsdGVybmF0aXZlciBmb3IgZ3J1cHBlbiA8bmF2bj4sIG9nIGJlZCAiCisiYnJ1Z2VyZW5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBvbSBhdCB2w6ZsZ2UsIGh2aWxrZXQgZGVyIHNrYWwgYmVueXR0ZXMuXG4iCisiICAtLXNldCA8bmF2bj4gPHN0aT4gICAgICAgYnJ1ZyA8c3RpPiBzb20gYWx0ZXJuYXRpdiB0aWwgPG5hdm4+LlxuIgorIiAgLS1hbGwgICAgICAgICAgICAgICAgICAgIGthbGQgLS1jb25maWcgZm9yIGFsbGUgYWx0ZXJuYXRpdmVyLlxuIgorIlxuIgorIjxsw6Zua2U+IGVyIGRlbiBzeW1ib2xza2UgbMOmbmtlLCBkZXIgcGVnZXIgcMOlICVzLzxuYXZuPi5cbiIKKyIgIChmLmVrcy4gL3Vzci9iaW4vcGFnZXIpXG4iCisiPG5hdm4+IGVyIGRlbm5lIGzDpm5rZWdydXBwZXMgaG92ZWRuYXZuLlxuIgorIiAgKGYuZWtzLiBwYWdlcilcbiIKKyI8c3RpPiBlciBlbiBhZiBkZSBhbHRlcm5hdGl2ZSBtw6VsZmlsZXIuXG4iCisiICAoZi5la3MuIC91c3IvYmluL2xlc3MpXG4iCisiPHByaW9yaXRldD4gZXIgZXQgaGVsdGFsOyB0aWx2YWxnIG1lZCBow7hqZXJlIG51bXJlIGdpdmVzIGjDuGplcmUgcHJpb3JpdGV0IGlcbiIKKyIgIGF1dG9tYXRpc2sgdGlsc3RhbmQuXG4iCisiXG4iCisiVGlsdmFsZzpcbiIKKyIgIC0tYWx0ZGlyIDxrYXRhbG9nPiAgICAgICBza2lmdCBrYXRhbG9nIGZvciBhbHRlcm5hdGl2ZXIuXG4iCisiICAtLWFkbWluZGlyIDxrYXRhbG9nPiAgICAgc2tpZnQgYWRtaW5pc3RyYXRpb25za2F0YWxvZy5cbiIKKyIgIC0tc2tpcC1hdXRvICAgICAgICAgICAgICBvdmVyc3ByaW5nIHNww7hyZ3Ntw6VsIG9tIGFsdGVybmF0aXZlciwgZGVyIGVyICIKKyJrb3JyZWt0XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAga29uZmlndXJlcmV0IGkgYXV0b3RpbHN0YW5kIChicnVnZXMgbWVkIC0tIgorImNvbmZpZylcbiIKKyIgIC0tdmVyYm9zZSAgICAgICAgICAgICAgICB1ZGR5YmVuZGUgdGlsc3RhbmQsIHlkZXJsaWdlcmUgdWRza3JpZnQuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgc3RpbGxlIHRpbHN0YW5kLCBtaW5pbWFsIHVkc2tyaWZ0LlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHZpcyBkZW5uZSBoasOmbHBlYmVza2VkLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHZpcyB2ZXJzaW9uZW4uXG4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIjxsaW5rPiBpcyB0aGUgc3ltbGluayBwb2ludGluZyB0byAlcy88bmFtZT4uXG4iCisiICAoZS5nLiAvdXNyL2Jpbi9wYWdlcilcbiIKKyI8bmFtZT4gaXMgdGhlIG1hc3RlciBuYW1lIGZvciB0aGlzIGxpbmsgZ3JvdXAuXG4iCisiICAoZS5nLiBwYWdlcilcbiIKKyI8cGF0aD4gaXMgdGhlIGxvY2F0aW9uIG9mIG9uZSBvZiB0aGUgYWx0ZXJuYXRpdmUgdGFyZ2V0IGZpbGVzLlxuIgorIiAgKGUuZy4gL3Vzci9iaW4vbGVzcylcbiIKKyI8cHJpb3JpdHk+IGlzIGFuIGludGVnZXI7IG9wdGlvbnMgd2l0aCBoaWdoZXIgbnVtYmVycyBoYXZlIGhpZ2hlciBwcmlvcml0eSAiCisiaW5cbiIKKyIgIGF1dG9tYXRpYyBtb2RlLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJPcHRpb25zOlxuIgorI3wgIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIHNldCB0aGUgZGlyZWN0b3J5IHdpdGggdGhlIHN0YXRvdmVycmlkZSBmaWxlLlxuIgorI3wgIiAgLS11cGRhdGUgICAgICAgICAgICAgICAgIGltbWVkaWF0ZWx5IHVwZGF0ZSBmaWxlIHBlcm1pc3Npb25zLlxuIgorI3wgIiAgLS1mb3JjZSAgICAgICAgICAgICAgICAgIGZvcmNlIGFuIGFjdGlvbiBldmVuIGlmIGEgc2FuaXR5IGNoZWNrIGZhaWxzLlxuIgorI3wgIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHF1aWV0IG9wZXJhdGlvbiwgbWluaW1hbCBvdXRwdXQuXG4iCisjfCAiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyN8ICIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorI3wgIlxuIgorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hbHRkaXIgPGRpcmVjdG9yeT4gICAgIGNoYW5nZSB0aGUgYWx0ZXJuYXRpdmVzIGRpcmVjdG9yeS5cbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICBjaGFuZ2UgdGhlIGFkbWluaXN0cmF0aXZlIGRpcmVjdG9yeS5cbiIKKyIgIC0tbG9nIDxmaWxlPiAgICAgICAgICAgICBjaGFuZ2UgdGhlIGxvZyBmaWxlLlxuIgorIiAgLS1mb3JjZSAgICAgICAgICAgICAgICAgIGFsbG93IHJlcGxhY2luZyBmaWxlcyB3aXRoIGFsdGVybmF0aXZlIGxpbmtzLlxuIgorIiAgLS1za2lwLWF1dG8gICAgICAgICAgICAgIHNraXAgcHJvbXB0IGZvciBhbHRlcm5hdGl2ZXMgY29ycmVjdGx5ICIKKyJjb25maWd1cmVkXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gYXV0b21hdGljIG1vZGUgKHJlbGV2YW50IGZvciAtLWNvbmZpZyBvbmx5KVxuIgorIiAgLS12ZXJib3NlICAgICAgICAgICAgICAgIHZlcmJvc2Ugb3BlcmF0aW9uLCBtb3JlIG91dHB1dC5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBxdWlldCBvcGVyYXRpb24sIG1pbmltYWwgb3V0cHV0LlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIgorIlRpbHZhbGc6XG4iCisiICAtLWFkbWluZGlyIDxrYXRhbG9nPiAgICAgc8OmdCBrYXRhbG9nZXQgbWVkIHN0YXRvdmVycmlkZS1maWxlbi5cbiIKKyIgIC0tdXBkYXRlICAgICAgICAgICAgICAgICBvcGRhdMOpciDDuGplYmxpa2tlbGlndCBmaWxyZXR0aWdoZWRlci5cbiIKKyIgIC0tZm9yY2UgICAgICAgICAgICAgICAgICBnZW5uZW10dmluZyBoYW5kbGluZyB0cm9kcyBmZWpsZXQgIgorInZhbGlkaXRldHN0amVrLlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHN0aWxsZSBiZWFyYmVqZG5pbmcsIG1pbmltYWxlIHVkZGF0YS5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICB2aXMgZGVubmUgaGrDpmxwZWJlc2tlZC5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICB2aXMgdmVyc2lvbmVuLlxuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNjMKK21zZ2lkICJlcnJvciIKK21zZ3N0ciAiZmVqbCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE5MworbXNnaWQgIndhcm5pbmciCittc2dzdHIgImFkdmFyc2VsIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MzU2CisjLCBjLWZvcm1hdAorbXNnaWQgInR3byBjb21tYW5kcyBzcGVjaWZpZWQ6IC0tJXMgYW5kIC0tJXMiCittc2dzdHIgInRvIGtvbW1hbmRvZXIgYW5naXZldDogLS0lcyBvZyAtLSVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6Mzg3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW5ub3QgYXBwZW5kIHRvICVzOiAlcyIKK21zZ2lkICJjYW5ub3QgYXBwZW5kIHRvICclcyciCittc2dzdHIgImthbiBpa2tlIGbDuGplIHRpbCAlczogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo1NTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byByZW1vdmUgJXM6ICVzIgorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgJyVzJyIKK21zZ3N0ciAia3VubmUgaWtrZSBmamVybmUgJXM6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTExMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBmaWxlIHdoaWxlIHRyeWluZyB0byByZWFkICVzIgorbXNnc3RyICJmaWxlbiBzbHV0dGVkZSB1dmVudGV0IHZlZCBmb3Jzw7hnIHDDpSBhdCBsw6ZzZSAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAid2hpbGUgcmVhZGluZyAlczogJXMiCittc2dzdHIgInZlZCBsw6ZzbmluZyBhZiAlczogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTE5CisjLCBjLWZvcm1hdAorbXNnaWQgImxpbmUgbm90IHRlcm1pbmF0ZWQgd2hpbGUgdHJ5aW5nIHRvIHJlYWQgJXMiCittc2dzdHIgImxpbmplIGlra2UgYWZzbHV0dGV0IHZlZCBmb3Jzw7hnIHDDpSBhdCBsw6ZzZSAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgY29ycnVwdDogJXMiCittc2dzdHIgIiVzIMO4ZGVsYWd0OiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAibmV3bGluZXMgcHJvaGliaXRlZCBpbiB1cGRhdGUtYWx0ZXJuYXRpdmVzIGZpbGVzICglcykiCittc2dzdHIgImxpbmplc2tpZnQgZXIgaWtrZSB0aWxsYWR0IGkgdXBkYXRlLWFsdGVybmF0aXZlcy1maWxlciAoJXMpIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE2MworbXNnaWQgInNsYXZlIG5hbWUiCittc2dzdHIgInNsYXZlbmF2biIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNzEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImR1cGxpY2F0ZSBzbGF2ZSAlcyIKK21zZ2lkICJkdXBsaWNhdGUgc2xhdmUgbmFtZSAlcyIKK21zZ3N0ciAic2xhdmVkdXBsZXQgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTc0Cittc2dpZCAic2xhdmUgbGluayIKK21zZ3N0ciAic2xhdmVsw6Zua2UiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTc4CisjLCBjLWZvcm1hdAorbXNnaWQgInNsYXZlIGxpbmsgc2FtZSBhcyBtYWluIGxpbmsgJXMiCittc2dzdHIgInNsYXZlbMOmbmtlIGVyIGRlbiBzYW1tZSBzb20gaG92ZWRsw6Zua2VuICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE4NSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQxMgorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgc2xhdmUgbGluayAlcyIKK21zZ3N0ciAic2xhdmVsw6Zua2UtZHVwbGV0ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIwNAorbXNnaWQgIm1hc3RlciBmaWxlIgorbXNnc3RyICJob3ZlZGZpbCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHBhdGggJXMiCittc2dzdHIgImdlbnRhZ2V0IHN0aSAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImFsdGVybmF0aXZlICVzIChwYXJ0IG9mIGxpbmsgZ3JvdXAgJXMpIGRvZXNuJ3QgZXhpc3QuIFJlbW92aW5nIGZyb20gbGlzdCBvZiAiCisiYWx0ZXJuYXRpdmVzLiIKK21zZ3N0ciAiIgorImFsdGVybmF0aXZldCAlcyAoZGVsIGFmIGzDpm5rZWdydXBwZSAlcykgZmluZGVzIGlra2UuIEZqZXJuZXIgZGVuIGZyYSBsaXN0ZW4gIgorIm92ZXIgYWx0ZXJuYXRpdmVyLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMjkgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyNDAKK21zZ2lkICJwcmlvcml0eSIKK21zZ3N0ciAicHJpb3JpdGV0IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIzMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI0OQorbXNnaWQgInNsYXZlIGZpbGUiCittc2dzdHIgInNsYXZlZmlsIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI0NAorIywgYy1mb3JtYXQKK21zZ2lkICJwcmlvcml0eSBvZiAlczogJXMiCittc2dzdHIgInByaW9yaXRldCBmb3IgJXM6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI5NworbXNnaWQgInN0YXR1cyIKK21zZ3N0ciAic3RhdHVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI5OQorbXNnaWQgImludmFsaWQgc3RhdHVzIgorbXNnc3RyICJ1Z3lsZGlnIHN0YXR1cyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzMDQKK21zZ2lkICJtYXN0ZXIgbGluayIKK21zZ3N0ciAiaG92ZWRsw6Zua2UiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzQ4CisjLCBjLWZvcm1hdAorbXNnaWQgImRpc2NhcmRpbmcgb2Jzb2xldGUgc2xhdmUgbGluayAlcyAoJXMpLiIKK21zZ3N0ciAiZm9ya2FzdGVyIGZvcsOmbGRlZGUgc2xhdmVsw6Zua2UgJXMgKCVzKS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTAyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTY5CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYzOAorbXNnaWQgImF1dG8gbW9kZSIKK21zZ3N0ciAiYXV0b3RpbHN0YW5kIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU3OAorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MzkKK21zZ2lkICJtYW51YWwgbW9kZSIKK21zZ3N0ciAibWFudWVsIHRpbHN0YW5kIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwNQorIywgYy1mb3JtYXQKK21zZ2lkICIgIGxpbmsgY3VycmVudGx5IHBvaW50cyB0byAlcyIKK21zZ3N0ciAiICBsw6Zua2VuIHBlZ2VyIGZvciDDuGplYmxpa2tldCBww6UgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTA4Cittc2dpZCAiICBsaW5rIGN1cnJlbnRseSBhYnNlbnQiCittc2dzdHIgIiAgbMOmbmtlbiBmaW5kZXMgaWtrZSBpIMO4amVibGlra2V0IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUxMgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyAtIHByaW9yaXR5ICVkIgorbXNnc3RyICIlcyAtIHByaW9yaXRldCAlZCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBzbGF2ZSAlczogJXMiCittc2dzdHIgIiAgc2xhdmUgJXM6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUyMgorIywgYy1mb3JtYXQKK21zZ2lkICJDdXJyZW50ICdiZXN0JyB2ZXJzaW9uIGlzICclcycuIgorbXNnc3RyICJEZW4gJ2JlZHN0ZScgYWt0dWVsbGUgdmVyc2lvbiBlciAnJXMnLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MjQKK21zZ2lkICJObyB2ZXJzaW9ucyBhdmFpbGFibGUuIgorbXNnc3RyICJJbmdlbiB0aWxnw6ZuZ2VsaWdlIHZlcnNpb25lci4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTUzCisjLCBjLWZvcm1hdAorbXNnaWQgIlRoZXJlIGlzICVkIGNob2ljZSBmb3IgdGhlIGFsdGVybmF0aXZlICVzIChwcm92aWRpbmcgJXMpLiIKK21zZ2lkX3BsdXJhbCAiVGhlcmUgYXJlICVkIGNob2ljZXMgZm9yIHRoZSBhbHRlcm5hdGl2ZSAlcyAocHJvdmlkaW5nICVzKS4iCittc2dzdHJbMF0gIkRlciBlciAlZCB2YWxnIGZvciBhbHRlcm5hdGl2ZXQgJXMgKGdpdmVyICVzKS4iCittc2dzdHJbMV0gIkRlciBlciAlZCB2YWxnIGZvciBhbHRlcm5hdGl2ZXQgJXMgKGdpdmVyICVzKS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYwCittc2dpZCAiU2VsZWN0aW9uIgorbXNnc3RyICJWYWxnIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2MQorbXNnaWQgIlBhdGgiCittc2dzdHIgIlN0aSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NjEKK21zZ2lkICJQcmlvcml0eSIKK21zZ3N0ciAiUHJpb3JpdGV0IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2MQorbXNnaWQgIlN0YXR1cyIKK21zZ3N0ciAiU3RhdHVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU4MgorIywgYy1mb3JtYXQKK21zZ2lkICJQcmVzcyBlbnRlciB0byBrZWVwIHRoZSBjdXJyZW50IGNob2ljZVsqXSwgb3IgdHlwZSBzZWxlY3Rpb24gbnVtYmVyOiAiCittc2dzdHIgIiIKKyJUcnlrIHJldHVyIGZvciBhdCBiZWhvbGRlIHN0YW5kYXJkdmFsZ2V0WypdLCBlbGxlciBhbmdpdiBudW1tZXJldCBww6UgZGl0ICIKKyJ2YWxnOiAiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNzIxCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vdCByZXBsYWNpbmcgJXMgd2l0aCBhIGxpbmsuIgorbXNnc3RyICJlcnN0YXR0ZXIgaWtrZSAlcyBtZWQgZW4gbMOmbmtlLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3NjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2FuJ3QgaW5zdGFsbCB1bmtub3duIGNob2ljZSAlcyIKK21zZ3N0ciAia2FuIGlra2UgaW5zdGFsbGVyZSB1a2VuZHQgdmFsZyAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInNraXAgY3JlYXRpb24gb2YgJXMgYmVjYXVzZSBhc3NvY2lhdGVkIGZpbGUgJXMgKG9mIGxpbmsgZ3JvdXAgJXMpIGRvZXNuJ3QgIgorImV4aXN0LiIKK21zZ3N0ciAiIgorInNwcmluZyBvcHJldHRlbHNlIGFmICVzIG92ZXIsIGRlbiBkYSB0aWxrbnl0dGVkZSAlcyAoZm9yIGzDpm5rZWdydXBwZW4gJXMpICIKKyJpa2tlIGZpbmRlcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNzkwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJub3QgcmVwbGFjaW5nICVzIHdpdGggYSBsaW5rLiIKK21zZ2lkICJub3QgcmVtb3ZpbmcgJXMgc2luY2UgaXQncyBub3QgYSBzeW1saW5rLiIKK21zZ3N0ciAiZXJzdGF0dGVyIGlra2UgJXMgbWVkIGVuIGzDpm5rZS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDQxIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDQ3CisjLCBjLWZvcm1hdAorbXNnaWQgIkNhbGwgJXMuIgorbXNnc3RyICJLYWxkICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiQWx0ZXJuYXRpdmUgJXMgdW5jaGFuZ2VkIGJlY2F1c2UgY2hvaWNlICVzIGlzIG5vdCBhdmFpbGFibGUuIgorbXNnc3RyICJBbHRlcm5hdGl2ICVzIHXDpm5kcmV0LCBkYSB2YWxnZXQgJXMgaWtrZSBlciB0aWxnw6ZuZ2VsaWd0LiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2tpcCB1bmtub3duIGFsdGVybmF0aXZlICVzLiIKK21zZ3N0ciAiT3ZlcnNwcmluZyB1a2VuZHQgYWx0ZXJuYXRpdiAlcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDc3CisjLCBjLWZvcm1hdAorbXNnaWQgImxpbmUgdG9vIGxvbmcgb3Igbm90IHRlcm1pbmF0ZWQgd2hpbGUgdHJ5aW5nIHRvIHJlYWQgJXMiCittc2dzdHIgImxpbmplIGZvciBsYW5nIGVsbGVyIHVhZnNsdXR0ZXQgdmVkIGZvcnPDuGcgcMOlIGF0IGzDpnNlICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA5MCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjEwMworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2tpcCBpbnZhbGlkIGxpbmU6ICVzIgorbXNnc3RyICJTcHJpbmcgdWd5bGRpZyBsaW5qZSBvdmVyOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVuYW1pbmcgJXMgbGluayBmcm9tICVzIHRvICVzLiIKK21zZ3N0ciAib21kw7hiZXIgJXMtbMOmbmtlIGZyYSAlcyB0aWwgJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE3MworIywgYy1mb3JtYXQKK21zZ2lkICJyZW5hbWluZyAlcyBzbGF2ZSBsaW5rIGZyb20gJXMgdG8gJXMuIgorbXNnc3RyICJvbWTDuGJlciAlcy1zbGF2ZWzDpm5rZSBmcmEgJXMgdGlsICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgbmFtZSAoJXMpIG11c3Qgbm90IGNvbnRhaW4gJy8nIGFuZCBzcGFjZXMuIgorbXNnc3RyICJhbHRlcm5hdGl2bmF2bmV0ICglcykgbcOlIGlra2UgaW5kZWhvbGRlICcvJyBlbGxlciBtZWxsZW1ydW0uIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE5MworIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBsaW5rIGlzIG5vdCBhYnNvbHV0ZSBhcyBpdCBzaG91bGQgYmU6ICVzIgorbXNnc3RyICJhbHRlcm5hdGl2LWzDpm5rZSBlciBpa2tlIGFic29sdXQsIGh2aWxrZXQgZGVuIGJ1cmRlIHbDpnJlOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxOTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgcGF0aCBpcyBub3QgYWJzb2x1dGUgYXMgaXQgc2hvdWxkIGJlOiAlcyIKK21zZ3N0ciAiYWx0ZXJuYXRpdi1zdGkgZXIgaWtrZSBhYnNvbHV0LCBodmlsa2V0IGRlbiBidXJkZSB2w6ZyZTogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjI0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBtYXN0ZXI6ICVzIgorbXNnaWQgImFsdGVybmF0aXZlICVzIGNhbid0IGJlIG1hc3RlcjogaXQgaXMgYSBzbGF2ZSBvZiAlcyIKK21zZ3N0ciAiYW50ZXJuYXRpdmV0ICVzIGthbiBpa2tlIHbDpnJlIGhvdmVkYWx0ZXJuYXRpdjogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjMyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjY3CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIGxpbmsgJXMgaXMgYWxyZWFkeSBtYW5hZ2VkIGJ5ICVzLiIKK21zZ3N0ciAiYWx0ZXJuYXRpdi1sw6Zua2UgJXMgaMOlbmR0ZXJlcyBhbGxlcmVkZSBhZiAlcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjQxCisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIHBhdGggJXMgZG9lc24ndCBleGlzdC4iCittc2dzdHIgImFsdGVybmF0aXYtc3RpICVzIGZpbmRlcyBpa2tlLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImFsdGVybmF0aXZlICVzIGNhbid0IGJlIHNsYXZlIG9mICVzOiAlcyIKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBzbGF2ZSBvZiAlczogaXQgaXMgYSBtYXN0ZXIgYWx0ZXJuYXRpdmUuIgorbXNnc3RyICJhbHRlcm5hdGl2ZXQgJXMga2FuIGlra2UgdsOmcmUgc2xhdmUgZm9yICVzOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNTgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImFsdGVybmF0aXZlICVzIGNhbid0IGJlIG1hc3RlcjogJXMiCittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgc2xhdmUgb2YgJXM6IGl0IGlzIGEgc2xhdmUgb2YgJXMiCittc2dzdHIgImFudGVybmF0aXZldCAlcyBrYW4gaWtrZSB2w6ZyZSBob3ZlZGFsdGVybmF0aXY6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI3OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYWx0ZXJuYXRpdmUgbGluayAlcyBpcyBhbHJlYWR5IG1hbmFnZWQgYnkgJXMuIgorbXNnaWQgImFsdGVybmF0aXZlIGxpbmsgJXMgaXMgYWxyZWFkeSBtYW5hZ2VkIGJ5ICVzIChzbGF2ZSBvZiAlcykuIgorbXNnc3RyICJhbHRlcm5hdGl2LWzDpm5rZSAlcyBow6VuZHRlcmVzIGFsbGVyZWRlIGFmICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBhcmd1bWVudCBgJXMnIgorbXNnc3RyICJ1a2VuZHQgcGFyYW1ldGVyICclcyciCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzQzCittc2dpZCAiLS1pbnN0YWxsIG5lZWRzIDxsaW5rPiA8bmFtZT4gPHBhdGg+IDxwcmlvcml0eT4iCittc2dzdHIgIi0taW5zdGFsbCBrcsOmdmVyIDxsw6Zua2U+IDxuYXZuPiA8c3RpPiA8cHJpb3JpdGV0PiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNDYgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzOTcKK21zZ2lkICI8bGluaz4gYW5kIDxwYXRoPiBjYW4ndCBiZSB0aGUgc2FtZSIKK21zZ3N0ciAiPGzDpm5rZT4gb2cgPHN0aT4ga2FuIGlra2UgdsOmcmUgZW5zIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM0OQorbXNnaWQgInByaW9yaXR5IG11c3QgYmUgYW4gaW50ZWdlciIKK21zZ3N0ciAicHJpb3JpdGV0IHNrYWwgdsOmcmUgZXQgaGVsdGFsIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM2MgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIDxuYW1lPiA8cGF0aD4iCittc2dzdHIgIi0tJXMga3LDpnZlciA8bmF2bj4gPHN0aT4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzc2CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgPG5hbWU+IgorbXNnc3RyICItLSVzIGtyw6Z2ZXIgPG5hdm4+IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM4OAorbXNnaWQgIi0tc2xhdmUgb25seSBhbGxvd2VkIHdpdGggLS1pbnN0YWxsIgorbXNnc3RyICItLXNsYXZlIGVyIGt1biB0aWxsYWR0IG1lZCAtLWluc3RhbGwiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzkwCittc2dpZCAiLS1zbGF2ZSBuZWVkcyA8bGluaz4gPG5hbWU+IDxwYXRoPiIKK21zZ3N0ciAiLS1zbGF2ZSBrcsOmdmVyIDxsw6Zua2U+IDxuYXZuPiA8c3RpPiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzOTkKKyMsIGMtZm9ybWF0Cittc2dpZCAibmFtZSAlcyBpcyBib3RoIHByaW1hcnkgYW5kIHNsYXZlIgorbXNnc3RyICJuYXZuZXQgJXMgZXIgYsOlZGUgcHJpbcOmciBvZyBzbGF2ZSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAibGluayAlcyBpcyBib3RoIHByaW1hcnkgYW5kIHNsYXZlIgorbXNnc3RyICJsw6Zua2VuICVzIGVyIGLDpWRlIHByaW3DpnIgb2cgc2xhdmUiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDIyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSA8ZmlsZT4gYXJndW1lbnQiCittc2dzdHIgIi0tJXMga3LDpnZlciBldCA8ZmlsPi1hcmd1bWVudCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gYCVzJyIKK21zZ3N0ciAidWtlbmR0IHRpbHZhbGcgJyVzJyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0NTMKK21zZ2lkICIiCisibmVlZCAtLWRpc3BsYXksIC0tcXVlcnksIC0tbGlzdCwgLS1nZXQtc2VsZWN0aW9ucywgLS1jb25maWcsIC0tc2V0LCAtLXNldC0iCisic2VsZWN0aW9ucywgLS1pbnN0YWxsLCAtLXJlbW92ZSwgLS1hbGwsIC0tcmVtb3ZlLWFsbCBvciAtLWF1dG8iCittc2dzdHIgIiIKKyJrcsOmdmVyIC0tZGlzcGxheSwgLS1xdWVyeSwgLS1saXN0LCAtLWdldC1zZWxlY3Rpb25zLCAtLWNvbmZpZywgLS1zZXQsIC0tc2V0LSIKKyJzZWxlY3Rpb25zLCAtLWluc3RhbGwsIC0tcmVtb3ZlLCAtLWFsbCwgLS1yZW1vdmUtYWxsIGVsbGVyIC0tYXV0byIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0OTAKK21zZ2lkICI8c3RhbmRhcmQgaW5wdXQ+IgorbXNnc3RyICI8c3RhbmRhcmQtaW5kZGF0YT4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTAwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTAzCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIGFsdGVybmF0aXZlcyBmb3IgJXMuIgorbXNnc3RyICJpbmdlbiBhbHRlcm5hdGl2ZXIgdGlsICVzLiIKKworIyA/CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUzMAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiJXMgaXMgZGFuZ2xpbmcsIGl0IHdpbGwgYmUgdXBkYXRlZCB3aXRoIGJlc3QgY2hvaWNlLiIKK21zZ2lkICIlcy8lcyBpcyBkYW5nbGluZywgaXQgd2lsbCBiZSB1cGRhdGVkIHdpdGggYmVzdCBjaG9pY2UuIgorbXNnc3RyICIlcyBkaW5nbGVyLCB2aWwgYmxpdmUgb3BkYXRlcmV0IG1lZCBiZWRzdGUgdmFsZy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTM0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiJXMgaGFzIGJlZW4gY2hhbmdlZCAobWFudWFsbHkgb3IgYnkgYSBzY3JpcHQpLiBTd2l0Y2hpbmcgdG8gbWFudWFsICIKKyN8ICJ1cGRhdGVzIG9ubHkuIgorbXNnaWQgIiIKKyIlcy8lcyBoYXMgYmVlbiBjaGFuZ2VkIChtYW51YWxseSBvciBieSBhIHNjcmlwdCkuIFN3aXRjaGluZyB0byBtYW51YWwgIgorInVwZGF0ZXMgb25seS4iCittc2dzdHIgIiIKKyIlcyBlciBibGV2ZXQgw6ZuZHJldCAobWFudWVsdCBlbGxlciBhZiBldCBzY3JpcHQpLiBTa2lmdGVyIHRpbCBtYW51ZWxsZSAiCisib3BkYXRlcmluZ2VyLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NDIKKyMsIGMtZm9ybWF0Cittc2dpZCAic2V0dGluZyB1cCBhdXRvbWF0aWMgc2VsZWN0aW9uIG9mICVzLiIKK21zZ3N0ciAic8OmdHRlciBhdXRvbWF0aXNrIHZhbGcgYWYgJXMgb3AuIgorCisjIGlra2Ugc2lra2VyIHDDpSBodmFkIHNldHRpbmcgZMOma2tlciBvdmVyIGhlcgorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgZm9yICVzIG5vdCByZWdpc3RlcmVkLCBub3Qgc2V0dGluZy4iCittc2dzdHIgImFsdGVybmF0aXZldCAlcyB0aWwgJXMgZXIgaWtrZSByZWdpc3RyZXJldCwgc8OmdHRlciBpa2tlLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NTcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiVGhlcmUgaXMgbm8gcHJvZ3JhbSB3aGljaCBwcm92aWRlcyAlcy4iCittc2dzdHIgIkRlciBlciBpbnRldCBwcm9ncmFtLCBkZXIgZ2l2ZXIgJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU2NSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU3NQorbXNnaWQgIk5vdGhpbmcgdG8gY29uZmlndXJlLiIKK21zZ3N0ciAiSW50ZXQgYXQga29uZmlndXJlcmUuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU3MworIywgYy1mb3JtYXQKK21zZ2lkICJUaGVyZSBpcyBvbmx5IG9uZSBhbHRlcm5hdGl2ZSBpbiBsaW5rIGdyb3VwICVzOiAlcyIKK21zZ3N0ciAiRGVyIGVyIGt1biBldCBhbHRlcm5hdGl2IGkgbMOmbmtlZ3J1cHBlbiAlczogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTg0CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlICVzIGZvciAlcyBub3QgcmVnaXN0ZXJlZCwgbm90IHJlbW92aW5nLiIKK21zZ3N0ciAiYWx0ZXJuYXRpdmV0ICVzIHRpbCAlcyBlciBpa2tlIHJlZ2lzdHJlcmV0LCBmamVybmVyIGlra2UuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU5MgorIywgYy1mb3JtYXQKK21zZ2lkICJyZW1vdmluZyBtYW51YWxseSBzZWxlY3RlZCBhbHRlcm5hdGl2ZSAtIHN3aXRjaGluZyAlcyB0byBhdXRvIG1vZGUiCittc2dzdHIgImZqZXJuZXIgbWFudWVsdCB2YWxndCBhbHRlcm5hdGl2IC0gc2tpZnRlciAlcyB0aWwgYXV0b21hdGlzayB0aWxzdGFuZCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MTcKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImF1dG9tYXRpYyB1cGRhdGVzIG9mICVzIGFyZSBkaXNhYmxlZCwgbGVhdmluZyBpdCBhbG9uZS4iCittc2dpZCAiYXV0b21hdGljIHVwZGF0ZXMgb2YgJXMvJXMgYXJlIGRpc2FibGVkLCBsZWF2aW5nIGl0IGFsb25lLiIKK21zZ3N0ciAiYXV0b21hdGlza2Ugb3BkYXRlcmluZ2VyIGFmICVzIGVyIGRlYWt0aXZlcmV0LCBsYWRlciBkZW4gdsOmcmUuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYxOQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidG8gcmV0dXJuIHRvIGF1dG9tYXRpYyB1cGRhdGVzIHVzZSBgdXBkYXRlLWFsdGVybmF0aXZlcyAtLWF1dG8gJXMnLiIKK21zZ2lkICJ0byByZXR1cm4gdG8gYXV0b21hdGljIHVwZGF0ZXMgdXNlICclcyAtLWF1dG8gJXMnLiIKK21zZ3N0ciAiIgorImZvciBhdCBnw6UgdGlsYmFnZSB0aWwgYXV0b21hdGlza2Ugb3BkYXRlcmluZ2VyLCBza2FsIGR1IGJydWdlICd1cGRhdGUtIgorImFsdGVybmF0aXZlcyAtLWF1dG8gJXMnLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MzYKKyMsIGMtZm9ybWF0Cittc2dpZCAidXNpbmcgJXMgdG8gcHJvdmlkZSAlcyAoJXMpIGluICVzLiIKK21zZ3N0ciAiYnJ1Z2VyICVzIHRpbCBhdCBnaXZlICVzICglcykgaSAlcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjQ0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmb3JjaW5nIHJlaW5zdGFsbGF0aW9uIG9mIGFsdGVybmF0aXZlICVzIGJlY2F1c2UgbGluayBncm91cCAlcyBpcyBicm9rZW4uIgorbXNnc3RyICIiCisidHZpbmdlciBvbWluc3RhbGxhdGlvbiBhZiBhbHRlcm5hdGl2ZXQgJXMsIGRhIGzDpm5rZWdydXBwZW4gJXMgZXIgw7hkZWxhZ3QuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjY1MQorIywgYy1mb3JtYXQKK21zZ2lkICJjdXJyZW50IGFsdGVybmF0aXZlICVzIGlzIHVua25vd24sIHN3aXRjaGluZyB0byAlcyBmb3IgbGluayBncm91cCAlcy4iCittc2dzdHIgIm51dsOmcmVuZGUgYWx0ZXJuYXRpdiAlcyBlciB1a2VuZHQsIHNraWZ0ZXIgdGlsICVzIGZvciBsw6Zua2VncnVwcGVuICVzLiIKKworI34gbXNnaWQgIml0IGlzIGEgbWFzdGVyIGFsdGVybmF0aXZlLiIKKyN+IG1zZ3N0ciAiZGV0dGUgZXIgZXQgaG92ZWRhbHRlcm5hdGl2LiIKKworI34gbXNnaWQgIml0IGlzIGEgc2xhdmUgb2YgJXMiCisjfiBtc2dzdHIgImRldCBlciBlbiBzbGF2ZSBmb3IgJXMiCisKKyN+IG1zZ2lkICJjYW5ub3Qgc3RhdCAlczogJXMiCisjfiBtc2dzdHIgImthbiBpa2tlIHRpbGfDpSAlczogJXMiCisKKyN+IG1zZ2lkICJyZWFkbGluayglcykgZmFpbGVkOiAlcyIKKyN+IG1zZ3N0ciAicmVhZGxpbmsoJXMpIG1pc2x5a2tlZGVzOiAlcyIKKworI34gbXNnaWQgInNjYW4gb2YgJXMgZmFpbGVkOiAlcyIKKyN+IG1zZ3N0ciAic2thbm5pbmcgYWYgJXMgbWlzbHlra2VkZXM6ICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWN1dGUgJXM6ICVzIgorI34gbXNnc3RyICJrdW5uZSBpa2tlIGvDuHJlICVzOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byBtYWtlICVzIGEgc3ltbGluayB0byAlczogJXMiCisjfiBtc2dzdHIgImt1bm5lIGlra2UgZ8O4cmUgJXMgdGlsIGVuIHN5bWJvbHNrIGzDpm5rZSB0aWwgJXM6ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgJXMgYXMgJXM6ICVzIgorI34gbXNnc3RyICJrdW5uZSBpa2tlIGluc3RhbGxlcmUgJXMgc29tICVzOiAlcyIKKworI34gbXNnaWQgIndoaWxlIHdyaXRpbmcgJXM6ICVzIgorI34gbXNnc3RyICJ2ZWQgc2tyaXZuaW5nIHRpbCAlczogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcmVhZCAlczogJXMiCisjfiBtc2dzdHIgImt1bm5lIGlra2UgbMOmc2UgJXM6ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGNsb3NlICVzOiAlcyIKKyN+IG1zZ3N0ciAia3VubmUgaWtrZSBsdWtrZSAlczogJXMiCisKKyN+IG1zZ2lkICJjYW5ub3Qgd3JpdGUgJXM6ICVzIgorI34gbXNnc3RyICJrYW4gaWtrZSBza3JpdmUgJXM6ICVzIgorCisjLCBmdXp6eQorI358IG1zZ2lkICJ1bmFibGUgdG8gcmVuYW1lICVzIHRvICVzOiAlcyIKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcmVuYW1lIGZpbGUgJyVzJyB0byAnJXMnIgorI34gbXNnc3RyICJrdW5uZSBpa2tlIG9tZMO4YmUgJXMgdGlsICVzOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byB1bmJ1ZmZlciBgJS4yNTVzJyIKKyN+IG1zZ3N0ciAia3VubmUgaWtrZSBsdWtrZSBtZWxsZW1sYWdlciBmb3IgJyUuMjU1cyciCisKKyN+IG1zZ2lkICJwYXJ0IGZpbGUgYCUuMjUwcycgaGFzIHRyYWlsaW5nIGdhcmJhZ2UiCisjfiBtc2dzdHIgImRlbGZpbGVuICclLjI1MHMnIGVuZGVyIGkgcmVudCBza3JhbGQiCisKKyN+IG1zZ2lkICJzaXplICU3ZCBvY2N1cnMgJTVkIHRpbWVzXG4iCisjfiBtc2dzdHIgInN0w7hycmVsc2UgJTdkIGZvcmVrb21tZXIgJTVkIGdhbmdlXG4iCisKKyN+IG1zZ2lkICJvdXQgb2YgbWVtb3J5IHB1c2hpbmcgZXJyb3IgaGFuZGxlcjogIgorI34gbXNnc3RyICJsw7hiIHTDuHIgZm9yIGh1a29tbWVsc2UgdW5kZXIgZmVqbGjDpW5kdGVyaW5nOiAiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gdW5sb2NrIGRwa2cgc3RhdHVzIGRhdGFiYXNlIgorI34gbXNnc3RyICJrdW5uZSBpa2tlIGzDpXNlIGRwa2cncyBzdGF0dXNkYXRhYmFzZSBvcCIKKworI34gbXNnaWQgImNvcHkgaW5mbyBmaWxlIGAlLjI1NXMnIgorI34gbXNnc3RyICJrb3Bpw6lyIGluZm9ybWF0aW9uc2ZpbCAnJS4yNTVzJyIKKworI34gbXNnaWQgInBhcnNlIGVycm9yIgorI34gbXNnc3RyICJ0b2xrbmluZ3NmZWpsIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHdyaXRlIHBhcnNpbmcgd2FybmluZyIKKyN+IG1zZ3N0ciAia3VubmUgaWtrZSBza3JpdmUgdG9sa25pbmdzZmVqbCIKKworI34gbXNnaWQgInVuYWJsZSB0byBsb2NrIHRyaWdnZXJzIGFyZWEiCisjfiBtc2dzdHIgImthbiBpa2tlIGzDpXNlIHVkbMO4c2Vyb21yw6VkZSIKKworI34gbXNnaWQgImZhaWxlZCB0byBydW4gJXMgKCUuMjUwcykiCisjfiBtc2dzdHIgImt1bm5lIGlra2UgdWRmw7hyZSAlcyAoJS4yNTBzKSIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIHNoZWxsICglLjI1MHMpIgorI34gbXNnc3RyICJrdW5uZSBpa2tlIHVkZsO4cmUgc2thbCAoJS4yNTBzKSIKKworI34gbXNnaWQgInVuYWJsZSB0byBjaGVjayBmb3IgZXhpc3RlbmNlIG9mIGAlLjI1MHMnIgorI34gbXNnc3RyICJrdW5uZSBpa2tlIHRqZWtrZSBla3Npc3RlbnNlbiBhZiAnJS4yNTBzJyIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIHJtIGZvciBjbGVhbnVwIgorI34gbXNnc3RyICJrdW5uZSBpa2tlIHVkZsO4cmUgJ3JtJyBmb3Igb3ByeWRuaW5nIgorCisjfiBtc2dpZCAiIgorI34gIiVzIGRlYnVnZ2luZyBvcHRpb24sIC0tZGVidWc9PG9jdGFsPiBvciAtRDxvY3RhbD46XG4iCisjfiAiXG4iCisjfiAiIG51bWJlciAgcmVmLiBpbiBzb3VyY2UgICBkZXNjcmlwdGlvblxuIgorI34gIiAgICAgIDEgICBnZW5lcmFsICAgICAgICAgICBHZW5lcmFsbHkgaGVscGZ1bCBwcm9ncmVzcyBpbmZvcm1hdGlvblxuIgorI34gIiAgICAgIDIgICBzY3JpcHRzICAgICAgICAgICBJbnZvY2F0aW9uIGFuZCBzdGF0dXMgb2YgbWFpbnRhaW5lciBzY3JpcHRzXG4iCisjfiAiICAgICAxMCAgIGVhY2hmaWxlICAgICAgICAgIE91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZFxuIgorI34gIiAgICAxMDAgICBlYWNoZmlsZWRldGFpbCAgICBMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZFxuIgorI34gIiAgICAgMjAgICBjb25mZiAgICAgICAgICAgICBPdXRwdXQgZm9yIGVhY2ggY29uZmlndXJhdGlvbiBmaWxlXG4iCisjfiAiICAgIDIwMCAgIGNvbmZmZGV0YWlsICAgICAgIExvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZVxuIgorI34gIiAgICAgNDAgICBkZXBjb24gICAgICAgICAgICBEZXBlbmRlbmNpZXMgYW5kIGNvbmZsaWN0c1xuIgorI34gIiAgICA0MDAgICBkZXBjb25kZXRhaWwgICAgICBMb3RzIG9mIGRlcGVuZGVuY2llcy9jb25mbGljdHMgb3V0cHV0XG4iCisjfiAiICAxMDAwMCAgIHRyaWdnZXJzICAgICAgICAgIFRyaWdnZXIgYWN0aXZhdGlvbiBhbmQgcHJvY2Vzc2luZ1xuIgorI34gIiAgMjAwMDAgICB0cmlnZ2Vyc2RldGFpbCAgICBMb3RzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnNcbiIKKyN+ICIgIDQwMDAwICAgdHJpZ2dlcnNzdHVwaWQgICAgU2lsbHkgYW1vdW50cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzXG4iCisjfiAiICAgMTAwMCAgIHZlcnl2ZXJib3NlICAgICAgIExvdHMgb2YgZHJpdmVsIGFib3V0IGVnIHRoZSBkcGtnL2luZm8gIgorI34gImRpcmVjdG9yeVxuIgorI34gIiAgIDIwMDAgICBzdHVwaWRseXZlcmJvc2UgICBJbnNhbmUgYW1vdW50cyBvZiBkcml2ZWxcbiIKKyN+ICJcbiIKKyN+ICJEZWJ1Z2dpbmcgb3B0aW9ucyBhcmUgYmUgbWl4ZWQgdXNpbmcgYml0d2lzZS1vci5cbiIKKyN+ICJOb3RlIHRoYXQgdGhlIG1lYW5pbmdzIGFuZCB2YWx1ZXMgYXJlIHN1YmplY3QgdG8gY2hhbmdlLlxuIgorI34gbXNnc3RyICIiCisjfiAiJXMgZmVqbHPDuGduaW5nc3RpbHZhbGcsIC0tZGVidWc9PG9rdGFsPiBlbGxlciAtRDxva3RhbD46XG4iCisjfiAiXG4iCisjfiAiICB2w6ZyZGkgIGtpbGRldGVrc3RyZWYuICAgYmVza3JpdmVsc2VcbiIKKyN+ICIgICAgICAxICAgZ2VuZXJhbCAgICAgICAgICAgR2VuZXJlbCBmcmVtZ2FuZ3NpbmZvcm1hdGlvblxuIgorI34gIiAgICAgIDIgICBzY3JpcHRzICAgICAgICAgICBVZGbDuHJlbHNlIG9nIHN0YXR1cyBmb3IgIgorI34gInZlZGxpZ2Vob2xkZWxzZXNzY3JpcHRlclxuIgorI34gIiAgICAgMTAgICBlYWNoZmlsZSAgICAgICAgICBCZXNrZWQgZm9yIGh2ZXIgYmVoYW5kbGV0IGZpbFxuIgorI34gIiAgICAxMDAgICBlYWNoZmlsZWRldGFpbCAgICBNYXNzZXIgYWYgYmVza2VkZXIgZm9yIGh2ZXIgYmVoYW5kbGV0IGZpbFxuIgorI34gIiAgICAgMjAgICBjb25mZiAgICAgICAgICAgICBCZXNrZWQgZm9yIGh2ZXIga29uZmlndXJhdGlvbnNmaWxcbiIKKyN+ICIgICAgMjAwICAgY29uZmZkZXRhaWwgICAgICAgTWFzc2VyIGFmIGJlc2tlZGVyIGZvciBodmVyICIKKyN+ICJrb25maWd1cmF0aW9uc2ZpbFxuIgorI34gIiAgICAgNDAgICBkZXBjb24gICAgICAgICAgICBBZmjDpm5naWdoZWRlciBvZyBrb25mbGlrdGVyXG4iCisjfiAiICAgIDQwMCAgIGRlcGNvbmRldGFpbCAgICAgIE1hc3NlciBhZiBhZmjDpm5naWdoZWRzLSBvZyAiCisjfiAia29uZmxpa3RvcGx5c25pbmdlclxuIgorI34gIiAgMTAwMDAgICB0cmlnZ2VycyAgICAgICAgICBBa3RpdmVyaW5nIG9nIGJlaGFuZGxpbmcgYWYgdWRsw7hzZXJlXG4iCisjfiAiICAyMDAwMCAgIHRyaWdnZXJzZGV0YWlsICAgIE1hc3NlciBhZiBiZXNrZWRlciBvbSB1ZGzDuHNlcmVcbiIKKyN+ICIgIDQwMDAwICAgdHJpZ2dlcnNzdHVwaWQgICAgw4VuZHNzdmFndCBtYW5nZSBiZXNrZWRlciBvbSB1ZGzDuHNlcmVcbiIKKyN+ICIgICAxMDAwICAgdmVyeXZlcmJvc2UgICAgICAgTWFzc2VyIGFmIGtuw6Z2cmVuIG9tIGYuZWtzLiBkcGtnL2luZm8tIgorI34gImthdGFsb2dlcm5lXG4iCisjfiAiICAgMjAwMCAgIHN0dXBpZGx5dmVyYm9zZSAgIFVzdHlybGlnZSBtw6ZuZ2RlciBhZiBrbsOmdnJlblxuIgorI34gIlxuIgorI34gIkZlamxzw7hnbmluZ3N0aWx2YWxnIGthbiBibGFuZGVzIG1lZCBiaXR2aXMtZWxsZXIuXG4iCisjfiAiQmVtw6ZyayBhdCBiZXR5ZG5pbmdlcm5lIG9nIHbDpnJkaWVybmUga2FuIGJsaXZlIMOmbmRyZXQgZnJlbW92ZXIuXG4iCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgIiIKKyN+fCAiJXMgZm9yY2luZyBvcHRpb25zIC0gY29udHJvbCBiZWhhdmlvdXIgd2hlbiBwcm9ibGVtcyBmb3VuZDpcbiIKKyN+fCAiICB3YXJuIGJ1dCBjb250aW51ZTogIC0tZm9yY2UtPHRoaW5nPiw8dGhpbmc+LC4uLlxuIgorI358ICIgIHN0b3Agd2l0aCBlcnJvcjogICAgLS1yZWZ1c2UtPHRoaW5nPiw8dGhpbmc+LC4uLiB8IC0tbm8tZm9yY2UtIgorI358ICI8dGhpbmc+LC4uLlxuIgorI358ICIgRm9yY2luZyB0aGluZ3M6XG4iCisjfnwgIiAgYWxsIFshXSAgICAgICAgICAgICAgICBTZXQgYWxsIGZvcmNlIG9wdGlvbnNcbiIKKyN+fCAiICBkb3duZ3JhZGUgWypdICAgICAgICAgIFJlcGxhY2UgYSBwYWNrYWdlIHdpdGggYSBsb3dlciB2ZXJzaW9uXG4iCisjfnwgIiAgY29uZmlndXJlLWFueSAgICAgICAgICBDb25maWd1cmUgYW55IHBhY2thZ2Ugd2hpY2ggbWF5IGhlbHAgdGhpcyBvbmVcbiIKKyN+fCAiICBob2xkICAgICAgICAgICAgICAgICAgIFByb2Nlc3MgaW5jaWRlbnRhbCBwYWNrYWdlcyBldmVuIHdoZW4gb24gaG9sZFxuIgorI358ICIgIGJhZC1wYXRoICAgICAgICAgICAgICAgUEFUSCBpcyBtaXNzaW5nIGltcG9ydGFudCBwcm9ncmFtcywgcHJvYmxlbXMgIgorI358ICJsaWtlbHlcbiIKKyN+fCAiICBub3Qtcm9vdCAgICAgICAgICAgICAgIFRyeSB0byAoZGUpaW5zdGFsbCB0aGluZ3MgZXZlbiB3aGVuIG5vdCByb290XG4iCisjfnwgIiAgb3ZlcndyaXRlICAgICAgICAgICAgICBPdmVyd3JpdGUgYSBmaWxlIGZyb20gb25lIHBhY2thZ2Ugd2l0aCBhbm90aGVyXG4iCisjfnwgIiAgb3ZlcndyaXRlLWRpdmVydGVkICAgICBPdmVyd3JpdGUgYSBkaXZlcnRlZCBmaWxlIHdpdGggYW4gdW5kaXZlcnRlZCAiCisjfnwgInZlcnNpb25cbiIKKyN+fCAiICBiYWQtdmVyaWZ5ICAgICAgICAgICAgIEluc3RhbGwgYSBwYWNrYWdlIGV2ZW4gaWYgaXQgZmFpbHMgYXV0aGVudGljaXR5ICIKKyN+fCAiY2hlY2tcbiIKKyN+fCAiICBkZXBlbmRzLXZlcnNpb24gWyFdICAgIFR1cm4gZGVwZW5kZW5jeSB2ZXJzaW9uIHByb2JsZW1zIGludG8gd2FybmluZ3NcbiIKKyN+fCAiICBkZXBlbmRzIFshXSAgICAgICAgICAgIFR1cm4gYWxsIGRlcGVuZGVuY3kgcHJvYmxlbXMgaW50byB3YXJuaW5nc1xuIgorI358ICIgIGNvbmZuZXcgWyFdICAgICAgICAgICAgQWx3YXlzIHVzZSB0aGUgbmV3IGNvbmZpZyBmaWxlcywgZG9uJ3QgcHJvbXB0XG4iCisjfnwgIiAgY29uZm9sZCBbIV0gICAgICAgICAgICBBbHdheXMgdXNlIHRoZSBvbGQgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHRcbiIKKyN+fCAiICBjb25mZGVmIFshXSAgICAgICAgICAgIFVzZSB0aGUgZGVmYXVsdCBvcHRpb24gZm9yIG5ldyBjb25maWcgZmlsZXMgaWYgIgorI358ICJvbmVcbiIKKyN+fCAiICAgICAgICAgICAgICAgICAgICAgICAgIGlzIGF2YWlsYWJsZSwgZG9uJ3QgcHJvbXB0LiBJZiBubyBkZWZhdWx0IGNhbiAiCisjfnwgImJlIGZvdW5kLFxuIgorI358ICIgICAgICAgICAgICAgICAgICAgICAgICAgeW91IHdpbGwgYmUgcHJvbXB0ZWQgdW5sZXNzIG9uZSBvZiB0aGUgY29uZm9sZCAiCisjfnwgIm9yXG4iCisjfnwgIiAgICAgICAgICAgICAgICAgICAgICAgICBjb25mbmV3IG9wdGlvbnMgaXMgYWxzbyBnaXZlblxuIgorI358ICIgIGNvbmZtaXNzIFshXSAgICAgICAgICAgQWx3YXlzIGluc3RhbGwgbWlzc2luZyBjb25maWcgZmlsZXNcbiIKKyN+fCAiICBjb25mYXNrIFshXSAgICAgICAgICAgIE9mZmVyIHRvIHJlcGxhY2UgY29uZmlnIGZpbGVzIHdpdGggbm8gbmV3ICIKKyN+fCAidmVyc2lvbnNcbiIKKyN+fCAiICBicmVha3MgWyFdICAgICAgICAgICAgIEluc3RhbGwgZXZlbiBpZiBpdCB3b3VsZCBicmVhayBhbm90aGVyIHBhY2thZ2VcbiIKKyN+fCAiICBjb25mbGljdHMgWyFdICAgICAgICAgIEFsbG93IGluc3RhbGxhdGlvbiBvZiBjb25mbGljdGluZyBwYWNrYWdlc1xuIgorI358ICIgIGFyY2hpdGVjdHVyZSBbIV0gICAgICAgUHJvY2VzcyBldmVuIHBhY2thZ2VzIHdpdGggd3JvbmcgYXJjaGl0ZWN0dXJlXG4iCisjfnwgIiAgb3ZlcndyaXRlLWRpciBbIV0gICAgICBPdmVyd3JpdGUgb25lIHBhY2thZ2UncyBkaXJlY3Rvcnkgd2l0aCAiCisjfnwgImFub3RoZXIncyBmaWxlXG4iCisjfnwgIiAgcmVtb3ZlLXJlaW5zdHJlcSBbIV0gICBSZW1vdmUgcGFja2FnZXMgd2hpY2ggcmVxdWlyZSBpbnN0YWxsYXRpb25cbiIKKyN+fCAiICByZW1vdmUtZXNzZW50aWFsIFshXSAgIFJlbW92ZSBhbiBlc3NlbnRpYWwgcGFja2FnZVxuIgorI358ICJcbiIKKyN+fCAiV0FSTklORyAtIHVzZSBvZiBvcHRpb25zIG1hcmtlZCBbIV0gY2FuIHNlcmlvdXNseSBkYW1hZ2UgeW91ciAiCisjfnwgImluc3RhbGxhdGlvbi5cbiIKKyN+fCAiRm9yY2luZyBvcHRpb25zIG1hcmtlZCBbKl0gYXJlIGVuYWJsZWQgYnkgZGVmYXVsdC5cbiIKKyN+IG1zZ2lkICIiCisjfiAiJXMgZm9yY2luZyBvcHRpb25zIC0gY29udHJvbCBiZWhhdmlvdXIgd2hlbiBwcm9ibGVtcyBmb3VuZDpcbiIKKyN+ICIgIHdhcm4gYnV0IGNvbnRpbnVlOiAgLS1mb3JjZS08dGhpbmc+LDx0aGluZz4sLi4uXG4iCisjfiAiICBzdG9wIHdpdGggZXJyb3I6ICAgIC0tcmVmdXNlLTx0aGluZz4sPHRoaW5nPiwuLi4gfCAtLW5vLWZvcmNlLSIKKyN+ICI8dGhpbmc+LC4uLlxuIgorI34gIiBGb3JjaW5nIHRoaW5nczpcbiIKKyN+ICIgIGFsbCBbIV0gICAgICAgICAgICAgICAgU2V0IGFsbCBmb3JjZSBvcHRpb25zXG4iCisjfiAiICBkb3duZ3JhZGUgWypdICAgICAgICAgIFJlcGxhY2UgYSBwYWNrYWdlIHdpdGggYSBsb3dlciB2ZXJzaW9uXG4iCisjfiAiICBjb25maWd1cmUtYW55ICAgICAgICAgIENvbmZpZ3VyZSBhbnkgcGFja2FnZSB3aGljaCBtYXkgaGVscCB0aGlzIG9uZVxuIgorI34gIiAgaG9sZCAgICAgICAgICAgICAgICAgICBQcm9jZXNzIGluY2lkZW50YWwgcGFja2FnZXMgZXZlbiB3aGVuIG9uIGhvbGRcbiIKKyN+ICIgIGJhZC1wYXRoICAgICAgICAgICAgICAgUEFUSCBpcyBtaXNzaW5nIGltcG9ydGFudCBwcm9ncmFtcywgcHJvYmxlbXMgIgorI34gImxpa2VseVxuIgorI34gIiAgbm90LXJvb3QgICAgICAgICAgICAgICBUcnkgdG8gKGRlKWluc3RhbGwgdGhpbmdzIGV2ZW4gd2hlbiBub3Qgcm9vdFxuIgorI34gIiAgb3ZlcndyaXRlICAgICAgICAgICAgICBPdmVyd3JpdGUgYSBmaWxlIGZyb20gb25lIHBhY2thZ2Ugd2l0aCBhbm90aGVyXG4iCisjfiAiICBvdmVyd3JpdGUtZGl2ZXJ0ZWQgICAgIE92ZXJ3cml0ZSBhIGRpdmVydGVkIGZpbGUgd2l0aCBhbiB1bmRpdmVydGVkICIKKyN+ICJ2ZXJzaW9uXG4iCisjfiAiICBiYWQtdmVyaWZ5ICAgICAgICAgICAgIEluc3RhbGwgYSBwYWNrYWdlIGV2ZW4gaWYgaXQgZmFpbHMgYXV0aGVudGljaXR5ICIKKyN+ICJjaGVja1xuIgorI34gIiAgZGVwZW5kcy12ZXJzaW9uIFshXSAgICBUdXJuIGRlcGVuZGVuY3kgdmVyc2lvbiBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzXG4iCisjfiAiICBkZXBlbmRzIFshXSAgICAgICAgICAgIFR1cm4gYWxsIGRlcGVuZGVuY3kgcHJvYmxlbXMgaW50byB3YXJuaW5nc1xuIgorI34gIiAgY29uZm5ldyBbIV0gICAgICAgICAgICBBbHdheXMgdXNlIHRoZSBuZXcgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHRcbiIKKyN+ICIgIGNvbmZvbGQgWyFdICAgICAgICAgICAgQWx3YXlzIHVzZSB0aGUgb2xkIGNvbmZpZyBmaWxlcywgZG9uJ3QgcHJvbXB0XG4iCisjfiAiICBjb25mZGVmIFshXSAgICAgICAgICAgIFVzZSB0aGUgZGVmYXVsdCBvcHRpb24gZm9yIG5ldyBjb25maWcgZmlsZXMgaWYgIgorI34gIm9uZVxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICBpcyBhdmFpbGFibGUsIGRvbid0IHByb21wdC4gSWYgbm8gZGVmYXVsdCBjYW4gYmUgIgorI34gImZvdW5kLFxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICB5b3Ugd2lsbCBiZSBwcm9tcHRlZCB1bmxlc3Mgb25lIG9mIHRoZSBjb25mb2xkICIKKyN+ICJvclxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICBjb25mbmV3IG9wdGlvbnMgaXMgYWxzbyBnaXZlblxuIgorI34gIiAgY29uZm1pc3MgWyFdICAgICAgICAgICBBbHdheXMgaW5zdGFsbCBtaXNzaW5nIGNvbmZpZyBmaWxlc1xuIgorI34gIiAgY29uZmFzayBbIV0gICAgICAgICAgICBPZmZlciB0byByZXBsYWNlIGNvbmZpZyBmaWxlcyB3aXRoIG5vIG5ldyAiCisjfiAidmVyc2lvbnNcbiIKKyN+ICIgIGJyZWFrcyBbIV0gICAgICAgICAgICAgSW5zdGFsbCBldmVuIGlmIGl0IHdvdWxkIGJyZWFrIGFub3RoZXIgcGFja2FnZVxuIgorI34gIiAgY29uZmxpY3RzIFshXSAgICAgICAgICBBbGxvdyBpbnN0YWxsYXRpb24gb2YgY29uZmxpY3RpbmcgcGFja2FnZXNcbiIKKyN+ICIgIGFyY2hpdGVjdHVyZSBbIV0gICAgICAgUHJvY2VzcyBldmVuIHBhY2thZ2VzIHdpdGggd3JvbmcgYXJjaGl0ZWN0dXJlXG4iCisjfiAiICBvdmVyd3JpdGUtZGlyIFshXSAgICAgIE92ZXJ3cml0ZSBvbmUgcGFja2FnZSdzIGRpcmVjdG9yeSB3aXRoIGFub3RoZXIncyAiCisjfiAiZmlsZVxuIgorI34gIiAgdW5zYWZlLWlvIFshXSAgICAgICAgICBEbyBub3QgcGVyZm9ybSBzYWZlIEkvTyBvcGVyYXRpb25zIHdoZW4gIgorI34gInVucGFja2luZ1xuIgorI34gIiAgcmVtb3ZlLXJlaW5zdHJlcSBbIV0gICBSZW1vdmUgcGFja2FnZXMgd2hpY2ggcmVxdWlyZSBpbnN0YWxsYXRpb25cbiIKKyN+ICIgIHJlbW92ZS1lc3NlbnRpYWwgWyFdICAgUmVtb3ZlIGFuIGVzc2VudGlhbCBwYWNrYWdlXG4iCisjfiAiXG4iCisjfiAiV0FSTklORyAtIHVzZSBvZiBvcHRpb25zIG1hcmtlZCBbIV0gY2FuIHNlcmlvdXNseSBkYW1hZ2UgeW91ciAiCisjfiAiaW5zdGFsbGF0aW9uLlxuIgorI34gIkZvcmNpbmcgb3B0aW9ucyBtYXJrZWQgWypdIGFyZSBlbmFibGVkIGJ5IGRlZmF1bHQuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICIlcyB0aWx2YWxnIGZvciBnZW5uZW10dmluZ25pbmcgLSBzdHlyZXIgaMOlbmR0ZXJpbmdlbiBhZiBwcm9ibGVtZXI6XG4iCisjfiAiICBhZHZhciwgbWVuIGZvcnRzw6Z0OiAtLWZvcmNlLTx0aW5nPiw8dGluZz4sLi4uXG4iCisjfiAiICBzdG9wIG1lZCBmZWpsOiAgICAgIC0tcmVmdXNlLTx0aW5nPiw8dGluZz4sLi4uIHwgLS1uby1mb3JjZS08dGluZz4sLi4uXG4iCisjfiAiIEdlbm5lbXR2aW5nIHRpbmc6XG4iCisjfiAiICBhbGwgWyFdICAgICAgICAgICAgICAgIFPDpnQgYWxsZSBnZW5uZW10dmluZ25pbmdzdGlsdmFsZ1xuIgorI34gIiAgZG93bmdyYWRlIFsqXSAgICAgICAgICBFcnN0YXQgZW4gcGFra2UgbWVkIGVuIHRpZGxpZ2VyZSB2ZXJzaW9uXG4iCisjfiAiICBjb25maWd1cmUtYW55ICAgICAgICAgIEtvbmZpZ3Vyw6lyIGVuaHZlciBwYWtrZSwgZGVyIGthbiBoasOmbHBlIGRlbm5lXG4iCisjfiAiICBob2xkICAgICAgICAgICAgICAgICAgIEjDpW5kdMOpciBwYWtrZXIgc2Vsdm9tIGRlIGhvbGRlcyB0aWxiYWdlXG4iCisjfiAiICBiYWQtcGF0aCAgICAgICAgICAgICAgIFBBVEggbWFuZ2xlciB2aWd0aWdlIHByb2dyYW1tZXIsIGZvcnZlbnQgIgorI34gInByb2JsZW1lclxuIgorI34gIiAgbm90LXJvb3QgICAgICAgICAgICAgICBGb3Jzw7hnIGF0IChhZilpbnN0YWxsZXJlIHRpbmcgdWRlbiBhdCB2w6ZyZSByb290XG4iCisjfiAiICBvdmVyd3JpdGUgICAgICAgICAgICAgIE92ZXJza3JpdiBlbiBmaWwgZnJhIMOpbiBwYWtrZSBtZWQgZW4gYW5kZW5cbiIKKyN+ICIgIG92ZXJ3cml0ZS1kaXZlcnRlZCAgICAgT3ZlcnNrcml2IG9tZGlyaWdlcmV0IGZpbCBtZWQgZW4gdmVyc2lvbiwgZGVyICIKKyN+ICJpa2tlIGVyXG4iCisjfiAiICBiYWQtdmVyaWZ5ICAgICAgICAgICAgIEluc3RhbGzDqXIgZW4gcGFra2UsIHNlbHZvbSBkZW4gZmVqbGVyICIKKyN+ICJhdXRlbnRpdGV0c3RqZWtcbiIKKyN+ICIgIGRlcGVuZHMtdmVyc2lvbiBbIV0gICAgTmVkZ8O4ciB2ZXJzaW9uc2FmaMOmbmdpZ2hlZHMtcHJvYmxlbWVyIHRpbCAiCisjfiAiYWR2YXJzbGVyXG4iCisjfiAiICBkZXBlbmRzIFshXSAgICAgICAgICAgIE5lZGfDuHIgYWxsZSBhZmjDpm5naWdoZWRzcHJvYmxlbWVyIHRpbCBhZHZhcnNsZXJcbiIKKyN+ICIgIGNvbmZuZXcgWyFdICAgICAgICAgICAgQnJ1ZyBhbHRpZCBueWUga29uZmlndXJhdGlvbnNmaWxlci4gU3DDuHJnIGlra2VcbiIKKyN+ICIgIGNvbmZvbGQgWyFdICAgICAgICAgICAgQnJ1ZyBhbHRpZCBnYW1sZSBrb25maWd1cmF0aW9uc2ZpbGVyLiBTcMO4cmcgIgorI34gImlra2VcbiIKKyN+ICIgIGNvbmZkZWYgWyFdICAgICAgICAgICAgQnJ1ZyBzdGFuZGFyZGluZHN0aWxsaW5nIGZvciBueWUgIgorI34gImtvbmZpZ3VyYXRpb25zZmlsZXIsXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIGh2aXMgZW4gc8OlZGFuIGVyIHRpbGfDpm5nZWxpZy4gU3DDuHJnIGlra2UuIEh2aXMgIgorI34gImluZ2VuXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIHN0YW5kYXJkaW5kc3RpbGxpbmcgZmluZGVzLCB2aWwgZHUgYmxpdmUgc3B1cmd0XG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIG1lZG1pbmRyZSBkdSBvZ3PDpSBoYXIgYW5naXZldCBjb25mb2xkIGVsbGVyICIKKyN+ICJjb25mbmV3LlxuIgorI34gIiAgY29uZm1pc3MgWyFdICAgICAgICAgICBJbnN0YWxsw6lyIGFsdGlkIG1hbmdsZW5kZSBrb25maWd1cmF0aW9uc2ZpbGVyXG4iCisjfiAiICBjb25mYXNrIFshXSAgICAgICAgICAgIFRpbGJ5ZCBhdCBlcnN0YXR0ZSBrb25maWd1cmF0aW9uc2ZpbGVyIHVkZW4gbnkgIgorI34gInZlcnNpb25cbiIKKyN+ICIgIGJyZWFrcyBbIV0gICAgICAgICAgICAgSW5zdGFsbMOpciBzZWx2IGh2aXMgZGV0dGUgw7hkZWzDpmdnZXIgZW4gYW5kZW4gIgorI34gInBha2tlXG4iCisjfiAiICBjb25mbGljdHMgWyFdICAgICAgICAgIFRpbGxhZCBpbnN0YWxsYXRpb24gYWYgcGFra2VyLCBkZXIgZXIgaSAiCisjfiAia29uZmxpa3RcbiIKKyN+ICIgIGFyY2hpdGVjdHVyZSBbIV0gICAgICAgSMOlbmR0w6lyIG9nc8OlIHBha2tlciBtZWQgZm9ya2VydCBhcmtpdGVrdHVyXG4iCisjfiAiICBvdmVyd3JpdGUtZGlyIFshXSAgICAgIE92ZXJza3JpdiDDqW4gcGFra2VzIGthdGFsb2cgbWVkIGVuIGFuZGVucyBmaWwuXG4iCisjfiAiICByZW1vdmUtcmVpbnN0cmVxIFshXSAgIEZqZXJuIHBha2tlciwgZGVyIGtyw6Z2ZXIgaW5zdGFsbGF0aW9uXG4iCisjfiAiICByZW1vdmUtZXNzZW50aWFsIFshXSAgIEZqZXJuIGVuIGVzc2VudGllbCBwYWtrZVxuIgorI34gIlxuIgorI34gIkFEVkFSU0VMIC0gYnJ1ZyBhZiB0aWx2YWxnIG3DpnJrZXQgWyFdIGthbiDDuGRlbMOmZ2dlIGRpbiBpbnN0YWxsYXRpb24gIgorI34gImFsdm9ybGlndC5cbiIKKyN+ICJHZW5uZW10dmluZ3NuaW5nc3RpbHZhbGcgbcOmcmtldCBbKl0gZXIgYWt0aXZlcmV0IHNvbSBzdGFuZGFyZC5cbiIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIGRwa2ctc3BsaXQgdG8gc2VlIGlmIGl0J3MgcGFydCBvZiBhIG11bHRpcGFydGVyIgorI34gbXNnc3RyICIiCisjfiAia3VubmUgaWtrZSBrw7hyZSBkcGtnLXNwbGl0IGZvciBhdCBzZSBvbSBkZW4gZXIgZGVsIGFmIGVuIG11bHRpcGFydGVyIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWNsIGRlYnNpZy12ZXJpZnkiCisjfiBtc2dzdHIgImt1bm5lIGlra2UgZWtzZWt2ZXJlIGRlYnNpZy12ZXJpZnkiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBkcGtnLWRlYiB0byBleHRyYWN0IGNvbnRyb2wgaW5mb3JtYXRpb24iCisjfiBtc2dzdHIgImt1bm5lIGlra2UgZWtzZWt2ZXJlIGRwa2ctZGViIGZvciBhdCB1ZHRyw6Zra2Uga29udHJvbGluZm9ybWF0aW9uIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGV4ZWMgZHBrZy1kZWIgdG8gZ2V0IGZpbGVzeXN0ZW0gYXJjaGl2ZSIKKyN+IG1zZ3N0ciAia3VubmUgaWtrZSBrw7hyZSBkcGtnLWRlYiBmb3IgYXQgaGVudGUgZmlsc3lzdGVtYXJraXYiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gZGVsZXRlIGRpc2FwcGVhcmluZyBjb250cm9sIGluZm8gZmlsZSBgJS4yNTBzJyIKKyN+IG1zZ3N0ciAia3VubmUgaWtrZSBzbGV0dGUgZm9yc3ZpbmRlbmRlIGtvbnRyb2xpbmZvcm1hdGlvbnNmaWwgJyUuMjUwcyciCisKKyN+IG1zZ2lkICJkcGtnOiAlcyBub3QgZm91bmQuXG4iCisjfiBtc2dzdHIgImRwa2c6ICVzIGlra2UgZnVuZGV0LlxuIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIC4uLi9ERUJJQU4iCisjfiBtc2dzdHIgImt1bm5lIGlra2Ugc2tpZnRlIGthdGFsb2cgdGlsIC4uLi9ERUJJQU4iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyB0YXIgLWNmIgorI34gbXNnc3RyICJrdW5uZSBpa2tlIGVrc2VrdmVyZSB0YXIgLWNmIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIG1ha2UgdG1wZmlsZSAoY29udHJvbCkiCisjfiBtc2dzdHIgImt1bm5lIGlra2Ugb3ByZXR0ZSBtaWRsZXJ0aWRpZyBmaWwgKGtvbnRyb2wpIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHVubGluayB0bXBmaWxlIChjb250cm9sKSwgJXMiCisjfiBtc2dzdHIgImt1bm5lIGlra2Ugc2xldHRlIGzDpm5rZSB0aWwgbWlkbGVydGlkaWcgZmlsIChrb250cm9sKSwgJXMiCisKKyN+IG1zZ2lkICJjb250cm9sIgorI34gbXNnc3RyICJrb250cm9sIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHJld2luZCB0bXBmaWxlIChjb250cm9sKSIKKyN+IG1zZ3N0ciAia3VubmUgaWtrZSBob3BwZSB0aWxiYWdlIGkgbWlkbGVydGlkaWcgZmlsIChrb250cm9sKSIKKworI34gbXNnaWQgImZhaWxlZCB0byBmc3RhdCB0bXBmaWxlIChjb250cm9sKSIKKyN+IG1zZ3N0ciAia3VubmUgaWtrZSBrw7hyZSAnZnN0YXQnIHDDpSBtaWRsZXJ0aWRpZyBmaWwgKGtvbnRyb2wpIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgZmluZCIKKyN+IG1zZ3N0ciAia3VubmUgaWtrZSBla3Nla3ZlcmUgZmluZCIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIHNoIC1jIG12IGZvby8qICZjIgorI34gbXNnc3RyICJrdW5uZSBpa2tlIGVrc2VrdmVyZSBzaCAtYyBtdiBmb28vKiAmYyIKKworI34gbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtICUuMjUwcyBsZW5ndGggY29udGFpbnMgbnVsbHMiCisjfiBtc2dzdHIgImZpbGVuICclLjI1MHMnIGVyIMO4ZGVsYWd0IC0gJS4yNTBzIGzDpm5nZGUgdW5kZWhvbGRlciBudWxsZXIiCisKKyN+IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBuZWdhdGl2ZSBtZW1iZXIgbGVuZ3RoICV6aSIKKyN+IG1zZ3N0ciAiZmlsZW4gJyUuMjUwcycgZXIgw7hkZWxhZ3QgLSBuZWdhdGl2IG1lZGxlbXNsw6ZuZ2RlICV6aSIKKworI34gbXNnaWQgImZhaWxlZCBnZXR0aW5nIHRoZSBjdXJyZW50IGZpbGUgcG9zaXRpb24iCisjfiBtc2dzdHIgImt1bm5lIGlra2UgaGVudGUgZGVuIGFrdHVlbGxlIGZpbHBvc2l0aW9uIgorCisjfiBtc2dpZCAiZmFpbGVkIHNldHRpbmcgdGhlIGN1cnJlbnQgZmlsZSBwb3NpdGlvbiIKKyN+IG1zZ3N0ciAia3VubmUgaWtrZSDDpm5kcmUgZGVuIGFrdHVlbGxlIGZpbHBvc2l0aW9uIgorCisjfiBtc2dpZCAidmVyc2lvbiBudW1iZXIiCisjfiBtc2dzdHIgInZlcnNpb25zbnVtbWVyIgorCisjfiBtc2dpZCAibWVtYmVyIGxlbmd0aCIKKyN+IG1zZ3N0ciAibWVkbGVtc2zDpm5nZGUiCisKKyN+IG1zZ2lkICJoZWFkZXIgaW5mbyBtZW1iZXIiCisjfiBtc2dzdHIgImhvdmVkaW5mb3JtYXRpb25zbWVkbGVtIgorCisjfiBtc2dpZCAic2tpcHBlZCBjb250cm9sIGFyZWEgZnJvbSAlcyIKKyN+IG1zZ3N0ciAic3ByYW5nIG92ZXIga29udHJvbG9tcsOlZGUgZnJhICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSB0ZW1wb3JhcnkgZGlyZWN0b3J5IgorI34gbXNnc3RyICJrdW5uZSBpa2tlIG9wcmV0dGUgbWlkbGVydGlkaWd0IGthdGFsb2ciCisKKyN+IG1zZ2lkICJpbmZvX3NwZXciCisjfiBtc2dzdHIgImluZm9fc3BldyIKKworI34gbXNnaWQgImluZm8gbGVuZ3RoIgorI34gbXNnc3RyICJpbmZvbMOmbmdkZSIKKworI34gbXNnaWQgInRvdGFsIGxlbmd0aCIKKyN+IG1zZ3N0ciAic2FtbGV0IGzDpm5nZGUiCisKKyN+IG1zZ2lkICJkYXRhIGxlbmd0aCIKKyN+IG1zZ3N0ciAiZGF0YWzDpm5nZGUiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBkcGtnLWRlYiB0byBleHRyYWN0IGZpZWxkIHZhbHVlIgorI34gbXNnc3RyICJrdW5uZSBpa2tlIGvDuHJlIGRwa2ctZGViIGZvciBhdCB1ZHRyw6Zra2UgZmVsdHbDpnJkaSIKKworI34gbXNnaWQgInVuYWJsZSB0byBzdGF0ICVzOiAlcyIKKyN+IG1zZ3N0ciAia2FuIGlra2UgdGlsZ8OlICVzOiAlcyIKKworI34gbXNnaWQgInNsYXZlIG5hbWUgJXMgZHVwbGljYXRlZCIKKyN+IG1zZ3N0ciAic2xhdmVuYXZuZXQgJXMgZWtzaXN0ZXJlciBmbGVyZSBnYW5nZSIKKworI34gbXNnaWQgInNsYXZlIGxpbmsgJXMgZHVwbGljYXRlZCIKKyN+IG1zZ3N0ciAic2xhdmVsw6Zua2VuICVzIGVrc2lzdGVyZXIgZmxlcmUgZ2FuZ2UiCisKKyN+IG1zZ2lkICIlZCByZXF1ZXN0ZWQgY29udHJvbCBjb21wb25lbnRzIGFyZSBtaXNzaW5nIgorI34gbXNnc3RyICIlZCDDuG5za2VkZSBrb250cm9sa29tcG9uZW50ZXIgbWFuZ2xlciIKKworI34gbXNnaWQgImNhdCAoZGF0YSkiCisjfiBtc2dzdHIgImNhdCAoZGF0YSkiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gb3BlbiBwaXBlIGRlc2NyaXB0b3IgYDEnIGluIHBhc3RlIgorI34gbXNnc3RyICJrdW5uZSBpa2tlIMOlYm5lIGRhdGFsZWRuaW5ncy1iZXNrcml2ZWxzZW4gJzEnIHZlZCBpbmRzw6Z0dGVsc2UiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gd3JpdGUgdG8gZ3ppcCAtZGMiCisjfiBtc2dzdHIgImt1bm5lIGlra2Ugc2tyaXZlIHRpbCAnZ3ppcCAtZGMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gY2xvc2UgZ3ppcCAtZGMiCisjfiBtc2dzdHIgImt1bm5lIGlra2UgbHVra2UgJ2d6aXAgLWRjIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHN5c2NhbGwgbHNlZWsgdG8gZmlsZXMgYXJjaGl2ZSBwb3J0aW9uIgorI34gbXNnc3RyICJrdW5uZSBpa2tlIHVkZsO4cmUgc3lzdGVta2FsZGV0IGxzZWVrIHDDpSBhcmtpdmZpbGRlbGVuIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGV4ZWMgbWtzcGxpdCIKKyN+IG1zZ3N0ciAia3VubmUgaWtrZSB1ZGbDuHJlICdta3NwbGl0JyIKKworI34gbXNnaWQgInR3byBjb21tYW5kcyBzcGVjaWZpZWQ6ICVzIGFuZCAtLSVzIgorI34gbXNnc3RyICJ0byBrb21tYW5kb2VyIGFuZ2l2ZXQ6ICVzIG9nIC0tJXMiCisKKyN+IG1zZ2lkICItLSVzIG5lZWRzIGEgPHBhY2thZ2U+IGFyZ3VtZW50IgorI34gbXNnc3RyICItLSVzIGtyw6Z2ZXIgZXQgPHBha2tlPi1wYXJhbWV0ZXI+IgorCisjfiBtc2dpZCAibWlzc2luZyBhbHRuYW1lIgorI34gbXNnc3RyICJtYW5nbGVuZGUgYWx0bmF2biIKKworI34gbXNnaWQgIm1pc3NpbmcgcGFja2FnZSIKKyN+IG1zZ3N0ciAibWFuZ2xlbmRlIHBha2tlIgorCisjfiBtc2dpZCAiaW50ZXJuYWwgZXJyb3IgLSBiYWQgbW9kZSBgJXMnIgorI34gbXNnc3RyICJJbnRlcm4gZmVqbCAtIHVneWxkaWcgdGlsc3RhbmQgJyVzJyIKKworI34gbXNnaWQgInJlbmFtZTogcmVuYW1lIGAlcycgdG8gYCVzJzogJXMiCisjfiBtc2dzdHIgIm9tZMO4Yjogb21kw7hiICclcycgdGlsICclcyc6ICVzIgorCisjfiBtc2dpZCAiY3JlYXRlIGRpdmVyc2lvbnMtbmV3OiAlcyIKKyN+IG1zZ3N0ciAib3ByZXQgZGl2ZXJzaW9ucy1uZXc6ICVzIgorCisjfiBtc2dpZCAid3JpdGUgZGl2ZXJzaW9ucy1uZXc6ICVzIgorI34gbXNnc3RyICJza3JpdiBkaXZlcnNpb25zLW5ldzogJXMiCisKKyN+IG1zZ2lkICJjbG9zZSBkaXZlcnNpb25zLW5ldzogJXMiCisjfiBtc2dzdHIgImx1ayBkaXZlcnNpb25zLW5ldzogJXMiCisKKyN+IG1zZ2lkICJjcmVhdGUgbmV3IGRpdmVyc2lvbnMtb2xkOiAlcyIKKyN+IG1zZ3N0ciAib3ByZXQgbnkgZGl2ZXJzaW9ucy1vbGQ6ICVzIgorCisjfiBtc2dpZCAiaW50ZXJuYWwgZXJyb3I6ICVzIGNvcnJ1cHQ6ICVzIgorI34gbXNnc3RyICJpbnRlcm4gZmVqbDonJXMgdWd5bGRpZzogJXMiCisKKyN+IG1zZ2lkICJkcGtnLWRlYiAtIGVycm9yOiAlcyAoYCVzJykgZG9lc24ndCBjb250YWluIGFueSBkaWdpdHNcbiIKKyN+IG1zZ3N0ciAiZHBrZy1kZWIgLSBmZWpsOiAlcyAoJyVzJykgaW5kZWhvbGRlciBpbmdlbiB0YWxcbiIKKworI34gbXNnaWQgIiVkIGVycm9ycyBpbiBjb250cm9sIGZpbGUiCisjfiBtc2dzdHIgIiVkIGZlamwgaSBrb250cm9sZmlsIgorCisjfiBtc2dpZCAiZmFpbGVkIGluIGJ1ZmZlcl93cml0ZShmZCkgKCVpLCByZXQ9JWxpKTogJXMiCisjfiBtc2dzdHIgImZlamxlZGUgaSBidWZmZXJfd3JpdGUoZmQpICglaSwgcmV0PSVsaSk6ICVzIgorCisjfiBtc2dpZCAiZW9mIGluIGJ1ZmZlcl93cml0ZShzdHJlYW0pOiAlcyIKKyN+IG1zZ3N0ciAic2x1dC1ww6UtZmlsIGkgYnVmZmVyX3dyaXRlKHN0cmVhbSk6ICVzIgorCisjfiBtc2dpZCAiZXJyb3IgaW4gYnVmZmVyX3dyaXRlKHN0cmVhbSk6ICVzIgorI34gbXNnc3RyICJmZWpsIGkgYnVmZmVyX3dyaXRlKHN0cmVhbSk6ICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIGluIGJ1ZmZlcl9yZWFkKGZkKTogJXMiCisjfiBtc2dzdHIgImZlamxlZGUgaSBidWZmZXJfcmVhZChmZCk6ICVzIgorCisjfiBtc2dpZCAiZXJyb3IgaW4gYnVmZmVyX3JlYWQoc3RyZWFtKTogJXMiCisjfiBtc2dzdHIgImZlamwgaSBidWZmZXJfcmVhZChzdHJlYW0pOiAlcyIKKworI34gbXNnaWQgIiIKKyN+ICJcbiIKKyN+ICJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgdmVyc2lvbiAyIG9yXG4iCisjfiAibGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJcbiIKKyN+ICJEZXR0ZSBlciBmcml0IHByb2dyYW1tZWw7IHNlIFwiR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2VcIiB2ZXJzaW9uIDIgIgorI34gImVsbGVyXG4iCisjfiAic2VuZXJlIGZvciBvcGhhdnNyZXR0aWdoZWRlcm5lLiBEZXIgZXIgSU5HRU4gZ2FyYW50aS5cbiIKKworI34gbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIGVycm9yOiByZWFkOiBgJXMnIgorI34gbXNnc3RyICIlczogaW50ZXJuIGd6aXAtZmVqbDogbMOmc3RlOiAnJXMnIgorCisjfiBtc2dpZCAiJXM6IGludGVybmFsIGd6aXAgZXJyb3I6IHdyaXRlOiBgJXMnIgorI34gbXNnc3RyICIlczogaW50ZXJuIGd6aXAtZmVqbDogc2tyZXY6ICclcyciCisKKyN+IG1zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCBlcnJvcjogcmVhZCglaSkgIT0gd3JpdGUoJWkpIgorI34gbXNnc3RyICIlczogaW50ZXJuIGd6aXAtZmVqbDogbMOmc3QoJWkpICE9IHNrcmV2ZXQoJWkpIgorCisjfiBtc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIGVycm9yOiByZWFkOiBgJXMnIgorI34gbXNnc3RyICIlczogaW50ZXJuIGJ6aXAyLWZlamw6IGzDpnN0ZTogJyVzJyIKKworI34gbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiBlcnJvcjogd3JpdGU6IGAlcyciCisjfiBtc2dzdHIgIiVzOiBpbnRlcm4gYnppcDItZmVqbDogc2tyZXY6ICclcyciCisKKyN+IG1zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgZXJyb3I6IHJlYWQoJWkpICE9IHdyaXRlKCVpKSIKKyN+IG1zZ3N0ciAiJXM6IGludGVybiBiemlwMi1mZWpsOiBsw6ZzdCglaSkgIT0gc2tyZXZldCglaSkiCisKKyN+IG1zZ2lkICJEb24ndCBmb3JnZXQgdG8gZm9yZWdyb3VuZCAoYGZnJykgdGhpcyBwcm9jZXNzIHdoZW4geW91J3JlIGRvbmUgIVxuIgorI34gbXNnc3RyICIiCisjfiAiR2xlbSBpa2tlIGF0IHPDpnR0ZSBkZW5uZSBwcm9jZXMgaSBmb3JncnVuZGVuICgnZmcnKSwgbsOlciBkdSBlciBmw6ZyZGlnIVxuIgorCisjfiBtc2dpZCAiIgorI34gIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgb3JcbiIKKyN+ICJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKKyN+ICJTZWUgJXMgLS1saWNlbnNlIGZvciBjb3B5cmlnaHQgYW5kIGxpY2Vuc2UgZGV0YWlscy5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIkRldHRlIGVyIGZyaXQgcHJvZ3JhbW1lbDsgc2UgXCJHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZVwiIHZlcnNpb24gMiAiCisjfiAiZWxsZXJcbiIKKyN+ICJzZW5lcmUgZm9yIGZvcmhvbGQgdmVkcsO4cmVuZGUgb3BoYXZzcmV0LiBEZXIgZXIgSU5HRU4gZ2FyYW50aS5cbiIKKyN+ICJTZSAlcyAtLWxpY2VuY2UgZm9yIGRldGFsamVyIHZlZHLDuHJlbmRlIG9waGF2c3JldCBvZyBsaWNlbnMuXG4iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gZ2V0IHVuaXF1ZSBmaWxlbmFtZSBmb3IgY29udHJvbCBpbmZvIgorI34gbXNnc3RyICJrdW5uZSBpa2tlIGbDpSB1bmlrdCBmaWxuYXZuIGZvciBrb250cm9saW5mb3JtYXRpb24iCisKKyN+IG1zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIG1hbmFnZW1lbnQgcHJvZ3JhbSBxdWVyeSB0b29sXG4iCisjfiBtc2dzdHIgIkRlYmlhbiAnJXMnIHBha2tlaMOlbmR0ZXJpbmcsIHByb2dyYW1vcHNsYWdzdsOmcmt0w7hqXG4iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gY2hvd24gJXM6ICVzIgorI34gbXNnc3RyICJrdW5uZSBpa2tlIMOmbmRyZSBlamVyc2thYiBhZiAlczogJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gY2htb2QgJXM6ICVzIgorI34gbXNnc3RyICJrdW5uZSBpa2tlIMOmbmRyZSBmaWxyZXR0aWdoZWRlciBmb3IgJXM6ICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGZvcmsgZm9yIGNsZWFudXAiCisjfiBtc2dzdHIgImt1bm5lIGlra2Ugc3BsaXR0ZSBwcm9jZXMgZm9yIG9wcnlkbmluZyIKKworI34gbXNnaWQgImZhaWxlZCB0byB3YWl0IGZvciBybSBjbGVhbnVwIgorI34gbXNnc3RyICJrdW5uZSBpa2tlIHZlbnRlIHDDpSAncm0nLW9wcnlkbmluZyIKKworI34gbXNnaWQgInJtIGNsZWFudXAgZmFpbGVkLCBjb2RlICVkXG4iCisjfiBtc2dzdHIgIidybSctb3ByeWRuaW5nIG1pc2x5a2tlZGVzLCBrb2RlICVkXG4iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBybSAtcmYiCisjfiBtc2dzdHIgImt1bm5lIGlra2UgdWRmw7hyZSAncm0gLXJmJyIKKworI34gbXNnaWQgImZhaWxlZCB0byByZWFkIGBjb250cm9sJyAoaW4gYCUuMjU1cycpIgorI34gbXNnc3RyICJrdW5uZSBpa2tlIGzDpnNlICdjb250cm9sJyAoaSAnJS4yNTVzJykiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gc2VlayBiYWNrIgorI34gbXNnc3RyICJrdW5uZSBpa2tlIHPDuGdlIGJhZ2zDpm5zIgorCisjfiBtc2dpZCAidW5rbm93biBkYXRhIHR5cGUgYCVpJyBpbiBidWZmZXJfd3JpdGVcbiIKKyN+IG1zZ3N0ciAidWtlbmR0IGRhdGF0eXBlICclaScgaSBidWZmZXJfd3JpdGVcbiIKKworI34gbXNnaWQgInVua25vd24gZGF0YSB0eXBlIGAlaScgaW4gYnVmZmVyX3JlYWRcbiIKKyN+IG1zZ3N0ciAidWtlbmR0IGRhdGF0eXBlICclaScgaSBidWZmZXJfcmVhZFxuIgorCisjfiBtc2dpZCAid2FpdCBmb3Igc2hlbGwgZmFpbGVkIgorI34gbXNnc3RyICJhZnZlbnRuaW5nIGFmIHNrYWwgbWlzbHlra2VkZXMiCisKKyN+IG1zZ2lkICJyZWFkIGVycm9yIGluIGRpdmVyc2lvbnMgW2ldIgorI34gbXNnc3RyICJsw6ZzZWZlamwgaSBvbWRpcmlnZXJpbmdzZmlsIFtpXSIKKworI34gbXNnaWQgInVubGluayIKKyN+IG1zZ3N0ciAiYWZsw6Zua2UiCisKKyN+IG1zZ2lkICJjaG1vZCIKKyN+IG1zZ3N0ciAiY2htb2QiCisKKyN+IG1zZ2lkICJkZWxldGUiCisjfiBtc2dzdHIgInNsZXQiCisKKyN+IG1zZ2lkICJjYW5ub3QgcmVtb3ZlIGZpbGUgYCUuMjUwcyciCisjfiBtc2dzdHIgImthbiBpa2tlIHNsZXR0ZSBmaWxlbiAnJS4yNTBzJyIKKworI34gbXNnaWQgIm5vIG1vZGUgc3BlY2lmaWVkIgorI34gbXNnc3RyICJpbmdlbiB0aWxzdGFuZCBhbmdpdmV0IgorCisjfiBtc2dpZCAiaWxsZWdhbCB1c2VyICVzIgorI34gbXNnc3RyICJ1Z3lsZGlnIGJydWdlciAlcyIKKworI34gbXNnaWQgIm5vbi1leGlzdGluZyB1c2VyICVzIgorI34gbXNnc3RyICJpa2tlLWVrc2lzdGVyZW5kZSBicnVnZXIgJXMiCisKKyN+IG1zZ2lkICJpbGxlZ2FsIGdyb3VwICVzIgorI34gbXNnc3RyICJ1Z3lsZGlnIGdydXBwZSAlcyIKKworI34gbXNnaWQgIm5vbi1leGlzdGluZyBncm91cCAlcyIKKyN+IG1zZ3N0ciAiaWtrZS1la3Npc3RlcmVuZGUgZ3J1cHBlICVzIgorCisjfiBtc2dpZCAiaWxsZWdhbCBtb2RlICVzIgorI34gbXNnc3RyICJ1Z3lsZGlnIHRpbHN0YW5kICVzIgorCisjfiBtc2dpZCAiYWJvcnRpbmciCisjfiBtc2dzdHIgImFmYnJ5ZGVyIgorCisjfiBtc2dpZCAiY2Fubm90IG9wZW4gc3RhdG92ZXJyaWRlOiAlcyIKKyN+IG1zZ3N0ciAia2FuIGlra2Ugw6VibmUgc3RhdG92ZXJyaWRlOiAlcyIKKworI34gbXNnaWQgIk11bHRpcGxlIG92ZXJyaWRlcyBmb3IgXCIlc1wiLCBhYm9ydGluZyIKKyN+IG1zZ3N0ciAiRmxlcmUgb21nw6VlbHNlciBmb3IgXCIlc1wiLCBhZmJyeWRlciIKKworI34gbXNnaWQgImZhaWxlZCB3cml0ZSBkdXJpbmcgaGFzaHJlcG9ydCIKKyN+IG1zZ3N0ciAia3VubmUgaWtrZSBza3JpdmUgdW5kZXIgXCJoYXNocmVwb3J0XCIiCisKKyN+IG1zZ2lkICJjb25maWd1cmF0aW9uIGVycm9yOiB1bmtub3duIG9wdGlvbiAlcyIKKyN+IG1zZ3N0ciAia29uZmlndXJhdGlvbnNmZWpsOiB1a2VuZHQgdGlsdmFsZyAlcyIKKworI34gbXNnaWQgImNvbmZpZ3VyYXRpb24gZXJyb3I6ICVzIGRvZXMgbm90IHRha2UgYSB2YWx1ZSIKKyN+IG1zZ3N0ciAia29uZmlndXJhdGlvbnNmZWpsOiAlcyBza2FsIGlra2UgYnJ1Z2UgZXQgcGFyYW1ldGVyIgorCisjfiBtc2dpZCAiZHBrZzogdmVyc2lvbiAnJXMnIGhhcyBiYWQgc3ludGF4OiAlc1xuIgorI34gbXNnc3RyICJkcGtnOiB2ZXJzaW9uICVzIGhhciBlbiB1Z3lsZGlnIHN5bnRha3M6ICVzXG4iCisKKyN+IG1zZ2lkICItLWZvcmdldC1vbGQtdW5hdmFpbCB0YWtlcyBubyBhcmd1bWVudHMiCisjfiBtc2dzdHIgIi0tZm9yZ2V0LW9sZC11bmF2YWlsIHRhZ2VyIGluZ2VuIHBhcmFtZXRyZSIKKworI34gbXNnaWQgImNvdWxkIG5vdCBvcGVuIHN0ZGVyciBmb3Igb3V0cHV0ISAlcyIKKyN+IG1zZ3N0ciAia3VubmUgaWtrZSDDpWJuZSBzdGRlcnIgdGlsIHVkZGF0YSEgJXMiCisKKyN+IG1zZ2lkICIlczogLS1zZWN0aW9uIG5lZWRzIHR3byBtb3JlIGFyZ3MiCisjfiBtc2dzdHIgIiVzOiAtLXNlY3Rpb24ga3LDpnZlciB5ZGVybGlnZXJlIHRvIHBhcmFtZXRyZSIKKworI34gbXNnaWQgIiVzOiBvcHRpb24gLS0lcyBpcyBkZXByZWNhdGVkIChpZ25vcmVkKSIKKyN+IG1zZ3N0ciAiJXM6IHRpbHZhbGdldCAtLSVzIGVyIGZvcsOmbGRldCAoaWdub3JlcmVzKSIKKworI34gbXNnaWQgIiVzOiB1bmtub3duIG9wdGlvbiBgJXMnIgorI34gbXNnc3RyICIlczogdWtlbmR0IHRpbHZhbGcgJyVzJyIKKworI34gbXNnaWQgIiVzOiB0b28gbWFueSBhcmd1bWVudHMiCisjfiBtc2dzdHIgIiVzOiBmb3IgbWFuZ2UgcGFyYW1ldHJlIgorCisjfiBtc2dpZCAiJXM6IC0tc2VjdGlvbiBpZ25vcmVkIHdpdGggLS1yZW1vdmUiCisjfiBtc2dzdHIgIiVzOiAtLXNlY3Rpb24gaWdub3JlcmVzIG1lZCAtLXJlbW92ZSIKKworI34gbXNnaWQgIiVzOiAtLWRlc2NyaXB0aW9uIGlnbm9yZWQgd2l0aCAtLXJlbW92ZSIKKyN+IG1zZ3N0ciAiJXM6IC0tZGVzY3JpcHRpb24gaWdub3JlcmVzIG1lZCAtLXJlbW92ZSIKKworI34gbXNnaWQgIiVzOiB3YXJuaW5nLCBpZ25vcmluZyBjb25mdXNpbmcgSU5GTy1ESVItRU5UUlkgaW4gZmlsZS4iCisjfiBtc2dzdHIgIiVzOiBhZHZhcnNlbCwgaWdub3JlcmVyIGZvcnZpcnJlbmRlIElORk8tRElSLUVOVFJZIGkgZmlsZW4uIgorCisjfiBtc2dpZCAiaW52YWxpZCBpbmZvIGVudHJ5IgorI34gbXNnc3RyICJ1Z3lsZGlnIGluZm8tbGluamUiCisKKyN+IG1zZ2lkICIlczogbm8gZmlsZSAlcywgcmV0cmlldmluZyBiYWNrdXAgZmlsZSAlcy4iCisjfiBtc2dzdHIgIiVzOiBpbmdlbiBmaWwgJXMsIGhlbnRlciBzaWtrZXJoZWRza29waWVyZXQgZmlsICVzLiIKKworI34gbXNnaWQgIiVzOiBubyBiYWNrdXAgZmlsZSAlcyBhdmFpbGFibGUsIHJldHJpZXZpbmcgZGVmYXVsdCBmaWxlLiIKKyN+IG1zZ3N0ciAiJXM6IGluZ2VuIHRpbGfDpm5nZWxpZyBzaWtrZXJoZWRza29waSBhZiAlcywgaGVudGVyIHN0YW5kYXJkZmlsLiIKKworI34gbXNnaWQgIiVzOiBubyBiYWNrdXAgZmlsZSAlcyBhdmFpbGFibGUuIgorI34gbXNnc3RyICIlczogaW5nZW4gc2lra2VyaGVkc2tvcGkgYWYgJXMgdGlsZ8OmbmdlbGlnLiIKKworI34gbXNnaWQgIiVzOiBubyBkZWZhdWx0IGZpbGUgJXMgYXZhaWxhYmxlLCBnaXZpbmcgdXAuIgorI34gbXNnc3RyICIlczogaW5nZW4gc3RhbmRhcmRmaWwgZm9yICVzIHRpbGfDpm5nZWxpZywgb3BnaXZlci4iCisKKyN+IG1zZ2lkICJ0cnkgZGVsZXRpbmcgJXM/IgorI34gbXNnc3RyICJwcsO4diBhdCBzbGV0dGUgJXM/IgorCisjfiBtc2dpZCAidW5hYmxlIHRvIG9wZW4gJXM6ICVzIgorI34gbXNnc3RyICJrdW5uZSBpa2tlIMOlYm5lICVzOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byBjbG9zZSAlcyBhZnRlciByZWFkOiAlcyIKKyN+IG1zZ3N0ciAia3VubmUgaWtrZSBsdWtrZSAlcyBlZnRlciBsw6ZzbmluZzogJXMiCisKKyN+IG1zZ2lkICIlczogZXhpc3RpbmcgZW50cnkgZm9yIGAlcycgbm90IHJlcGxhY2VkIgorI34gbXNnc3RyICIlczogZWtzaXN0ZXJlbmRlIHBvc3QgZm9yICclcycgaWtrZSBlcnN0YXR0ZXQiCisKKyN+IG1zZ2lkICIlczogY3JlYXRpbmcgbmV3IHNlY3Rpb24gYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IG9wcmV0dGVyIG55dCBhZnNuaXQgJyVzJyIKKworI34gbXNnaWQgIiVzOiBubyBzZWN0aW9ucyB5ZXQsIGNyZWF0aW5nIE1pc2NlbGxhbmVvdXMgc2VjdGlvbiB0b28uIgorI34gbXNnc3RyICIlczogZW5kbnUgaW5nZW4gYWZzbml0LCBvcHJldHRlciBvZ3PDpSBldCBEaXZlcnNlLWFmbml0LiIKKworI34gbXNnaWQgIiVzOiBubyBzZWN0aW9uIHNwZWNpZmllZCBmb3IgbmV3IGVudHJ5LCBwbGFjaW5nIGF0IGVuZCIKKyN+IG1zZ3N0ciAiJXM6IGluZ2VuIGFmc25pdCBhbmdpdmV0IGZvciBueSBwb3N0LCBkZW4gcGxhY2VyZXMgaSBzbHV0bmluZ2VuIgorCisjfiBtc2dpZCAiJXM6IGRlbGV0aW5nIGVudHJ5IGAlcyAuLi4nIgorI34gbXNnc3RyICIlczogc2xldHRlciBwb3N0ZW4gJyVzIC4uLiciCisKKyN+IG1zZ2lkICIlczogZW1wdHkgc2VjdGlvbiBgJXMnIG5vdCByZW1vdmVkIgorI34gbXNnc3RyICIlczogdG9tdCBhZnNuaXQgJyVzJyBpa2tlIGZqZXJuZXQiCisKKyN+IG1zZ2lkICIlczogZGVsZXRpbmcgZW1wdHkgc2VjdGlvbiBgJXMnIgorI34gbXNnc3RyICIlczogc2xldHRlciBkZXQgdG9tbWUgYWZzbml0ICclcyciCisKKyN+IG1zZ2lkICIlczogbm8gZW50cnkgZm9yIGZpbGUgYCVzJyBhbmQgbWVudSBlbnRyeSBgJXMnIgorI34gbXNnc3RyICIlczogaW5nZW4gcG9zdCBmb3IgZmlsZW4gJyVzJyBvZyBtZW51aW5kZ2FuZ2VuICclcyciCisKKyN+IG1zZ2lkICIlczogbm8gZW50cnkgZm9yIGZpbGUgYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IGluZ2VuIHBvc3QgZm9yIGZpbGVuICclcyciCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gYmFja3VwIG9sZCAlcywgZ2l2aW5nIHVwOiAlcyIKKyN+IG1zZ3N0ciAia3VubmUgaWtrZSBzaWtrZXJoZWRza29waWVyZSBkZW4gZ2FtbGUgJXMsIG9wZ2l2ZXI6ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3ICVzOiAlcyIKKyN+IG1zZ3N0ciAia3VubmUgaWtrZSBpbnN0YWxsZXJlIG55ICVzOiAlcyIKKworI34gbXNnaWQgIiVzOiBjb3VsZCBub3QgYmFja3VwICVzIGluICVzOiAlcyIKKyN+IG1zZ3N0ciAiJXM6IGt1bm5lIGlra2Ugc2lra2VyaGVkc2tvcGllcmUgJXMgaSAlczogJXMiCisKKyN+IG1zZ2lkICIlczogd2FybmluZyAtIHVuYWJsZSB0byB1bmxvY2sgJXM6ICVzIgorI34gbXNnc3RyICIlczogYWR2YXJzZWwgLSBrdW5uZSBpa2tlIGzDpXNlICVzIG9wOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byByZWFkICVzOiAlZCIKKyN+IG1zZ3N0ciAia3VubmUgaWtrZSBsw6ZzZSAlczogJWQiCisKKyN+IG1zZ2lkICJkYmc6ICVzIgorI34gbXNnc3RyICJkYmc6ICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIG9wZW4gdG1wZmlsZSAoY29udHJvbCksICVzIgorI34gbXNnc3RyICJrdW5uZSBpa2tlIMOlYm5lIG1pZGxlcnRpZGlnIGZpbCAoa29udHJvbCksICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIG9wZW4gdG1wZmlsZSAoZGF0YSksICVzIgorI34gbXNnc3RyICJrdW5uZSBpa2tlIMOlYm5lIG1pZGxlcnRpZGlnIGZpbCAoZGF0YSksICVzIgorCisjfiBtc2dpZCAiaW52YWxpZCBudW1iZXIgZm9yIC0tY29tbWFuZC1mZCIKKyN+IG1zZ3N0ciAidWd5bGRpZ3QgdGFsIGZvciAgLS1jb21tYW5kLWZkIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHJld2luZCBhdCBzdGFydCBvZiB2c25wcmludGYiCisjfiBtc2dzdHIgImt1bm5lIGlra2UgaG9wcGUgdGlsYmFnZSB0aWwgc3RhcnRlbiBhZiB2c25wcmludGYiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gdHJ1bmNhdGUgaW4gdnNucHJpbnRmIgorI34gbXNnc3RyICJrdW5uZSBpa2tlIGFma29ydGUgaSB2c25wcmludGYiCisKKyN+IG1zZ2lkICJ3cml0ZSBlcnJvciBpbiB2c25wcmludGYiCisjfiBtc2dzdHIgInNrcml2ZWZlamwgaSB2c25wcmludGYiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gc3RhdCBpbiB2c25wcmludGYiCisjfiBtc2dzdHIgImt1bm5lIGlra2UgZsOlIHN0YXR1cyBpIHZzbnByaW50ZiIKKworI34gbXNnaWQgInVuYWJsZSB0byByZXdpbmQgaW4gdnNucHJpbnRmIgorI34gbXNnc3RyICJrdW5uZSBpa2tlIGhvcHBlIHRpbGJhZ2UgaSB2c25wcmludGYiCisKKyN+IG1zZ2lkICJyZWFkIGVycm9yIGluIHZzbnByaW50ZiB0cnVuY2F0ZWQiCisjfiBtc2dzdHIgImzDpnNlZmVqbCBpIHZzbnByaW50ZiBmcmFrbGlwcGV0IgorCisjfiBtc2dpZCAiU3lzdGVtIGVycm9yIG5vLiVkIgorI34gbXNnc3RyICJTeXN0ZW1mZWpsIG5yLiAlZCIKKworI34gbXNnaWQgIlNpZ25hbCBuby4lZCIKKyN+IG1zZ3N0ciAiU2lnbmFsIG5yLiAlZCIKKworI34gbXNnaWQgImRwa2c6IHdhcm5pbmcgLSAlcyByZXR1cm5lZCBlcnJvciBleGl0IHN0YXR1cyAlZFxuIgorI34gbXNnc3RyICJkcGtnOiBhZHZhcnNlbCAtICVzIHJldHVybmVyZWRlIGFmc2x1dG5pbmdzc3RhdHVzICVkXG4iCisKKyN+IG1zZ2lkICJkcGtnOiB3YXJuaW5nIC0gJXMga2lsbGVkIGJ5IHNpZ25hbCAoJXMpJXNcbiIKKyN+IG1zZ3N0ciAiZHBrZzogYWR2YXJzZWwgLSAlcyBkcsOmYnQgYWYgc2lnbmFsICglcyklc1xuIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHJlYWQgYCVzJyBhdCBsaW5lICVkIgorI34gbXNnc3RyICJrdW5uZSBpa2tlIGzDpnNlICclcycgdmVkIGxpbmplICVkIgorCisjfiBtc2dpZCAicGFyc2UgZXJyb3IsIGluIGZpbGUgYCUuMjU1cycgbmVhciBsaW5lICVkIgorI34gbXNnc3RyICJmb3J0b2xrbmluZ3NmZWpsLCBpIGZpbGVuICclLjI1NXMnIG7DpnIgbGluamUgJWQiCisKKyN+IG1zZ2lkICIgcGFja2FnZSBgJS4yNTVzJyIKKyN+IG1zZ3N0ciAiIHBha2tlbiAnJS4yNTVzJyIKKworI34gbXNnaWQgImZhaWxlZCB0byByZWFsbG9jIGZvciB2YXJpYWJsZSBidWZmZXIiCisjfiBtc2dzdHIgImt1bm5lIGlra2Ugb21hbGxva2VyZSB2YXJpYWJlbC1tZWxsZW1sYWdlciIKKworI34gbXNnaWQgInByb2Nlc3NfYXJjaGl2ZSAuLi4gIGFscmVhZHkgZGlzYXBwZWFyZWQgISIKKyN+IG1zZ3N0ciAicHJvY2Vzc19hcmNoaXZlIC4uLiAgbWFuZ2xlciBhbGxlcmVkZSEiCisKKyN+IG1zZ2lkICJnb2JibGUgcmVwbGFjZWQgZmlsZSBgJS4yNTVzJyIKKyN+IG1zZ3N0ciAibMOmc3RlIG9nIG92ZXJzcHJhbmcgZmlsZW4gJyUuMjU1cyciCisKKyN+IG1zZ2lkICJkcGtnOiAlczogd2FybmluZyAtIGZhaWxlZCB0byByZW1vdmUgYCUuMjUwcyc6ICVzXG4iCisjfiBtc2dzdHIgImRwa2c6ICVzOiBhZHZhcnNlbCAtIGt1bm5lIGlra2Ugc2xldHRlICclLjI1MHMnOiAlc1xuIgorCisjfiBtc2dpZCAiLS1hdWRpdCBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudHMiCisjfiBtc2dzdHIgIi0tYXVkaXQgdGFnZXIgaW5nZW4gcGFyYW1ldHJlIgorCisjfiBtc2dpZCAiLS15ZXQtdG8tdW5wYWNrIGRvZXMgbm90IHRha2UgYW55IGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiLS15ZXQtdG8tdW5wYWNrIHRhZ2VyIGluZ2VuIHBhcmFtZXRyZSIKKworI34gbXNnaWQgIi0tYXNzZXJ0LSogZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnRzIgorI34gbXNnc3RyICItLWFzc2VydC0qIHRhZ2VyIGlra2UgcGFyYW1ldHJlIgorCisjfiBtc2dpZCAiLS1wcmVkZXAtcGFja2FnZSBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudCIKKyN+IG1zZ3N0ciAiLS1wcmVkZXAtcGFja2FnZSB0YWdlciBpa2tlIHBhcmFtZXRyZSIKKworI34gbXNnaWQgIi0tcHJpbnQtYXJjaGl0ZWN0dXJlIGRvZXMgbm90IHRha2UgYW55IGFyZ3VtZW50IgorI34gbXNnc3RyICItLXByaW50LWFyY2hpdGVjdHVyZSB0YWdlciBpbmdlbiBwYXJhbWV0cmUiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gc3RhdCBpbnN0YWxsZWQgJXMgc2NyaXB0IGAlLjI1MHMnIgorI34gbXNnc3RyICJrdW5uZSBpa2tlIGZpbmRlIGluc3RhbGxlcmV0ICVzLXNjcmlwdCAnJS4yNTBzJyIKKworI34gbXNnaWQgInVuYWJsZSB0byBzdGF0IG5ldyAlcyBzY3JpcHQgYCUuMjUwcyciCisjfiBtc2dzdHIgImt1bm5lIGlra2UgZmluZGUgbnl0ICVzLXNjcmlwdCAnJS4yNTBzJyIKKworI34gbXNnaWQgInVuYWJsZSB0byBleGVjdXRlIG5ldyAlcyIKKyN+IG1zZ3N0ciAia3VubmUgaWtrZSB1ZGbDuHJlIG55dCAlcyIKKworI34gbXNnaWQgImRwa2c6IHdhcm5pbmcgLSB1bmFibGUgdG8gc3RhdCAlcyBgJS4yNTBzJzogJXNcbiIKKyN+IG1zZ3N0ciAiZHBrZzogYWR2YXJzZWwgLSBrdW5uZSBpa2tlIGZpbmRlICVzICclLjI1MHMnOiAlc1xuIgorCisjfiBtc2dpZCAiLS1zZXQtc2VsZWN0aW9ucyBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudCIKKyN+IG1zZ3N0ciAiLS1zZXQtc2VsZWN0aW9ucyB0YWdlciBpbmdlbiBwYXJhbWV0cmUiCisKKyN+IG1zZ2lkICItLWNsZWFyLXNlbGVjdGlvbnMgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tY2xlYXItc2VsZWN0aW9ucyB0YWdlciBpbmdlbiBwYXJhbWV0cmUiCisKKyN+IG1zZ2lkICIiCisjfiAiZHBrZy1kZWI6IHdhcm5pbmcsIG5vdCBjaGVja2luZyBjb250ZW50cyBvZiBjb250cm9sIGFyZWEuXG4iCisjfiAiZHBrZy1kZWI6IGJ1aWxkaW5nIGFuIHVua25vd24gcGFja2FnZSBpbiBgJXMnLlxuIgorI34gbXNnc3RyICIiCisjfiAiZHBrZy1kZWI6IGFkdmFyc2VsLCB0amVra2VyIGlra2UgaW5kaG9sZGV0IGFmIGtvbnRyb2xvbXLDpWRldC5cbiIKKyN+ICJkcGtnLWRlYjogb3BieWdnZXIgZW4gdWtlbmR0IHBha2tlIGkgJyVzJy5cbiIKKworI34gbXNnaWQgIkludGVybmFsIGVycm9yLCBjb21wcmVzc190eXBlIGAlaScgdW5rbm93biEiCisjfiBtc2dzdHIgIkludGVybiBmZWpsLCBjb21wcmVzc190eXBlICclaScgdWtlbmR0ISIKKworI34gbXNnaWQgIi0tam9pbiByZXF1aXJlcyBvbmUgb3IgbW9yZSBwYXJ0IGZpbGUgYXJndW1lbnRzIgorI34gbXNnc3RyICItLWpvaW4ga3LDpnZlciDDqXQgZWxsZXIgZmxlcmUgZGVsZmlsLXBhcmFtZXRyZSIKKworI34gbXNnaWQgIi0tbGlzdHEgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnRzIgorI34gbXNnc3RyICItLWxpc3RxIHRhZ2VyIGluZ2VuIHBhcmFtZXRyZSIKKworI34gbXNnaWQgInRyeSBkZWxldGluZyAlcyIKKyN+IG1zZ3N0ciAicHLDuHYgYXQgc2xldHRlICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGluc3RhbGwgJXM7IGl0IHdpbGwgYmUgbGVmdCBhcyAlczogJXMiCisjfiBtc2dzdHIgImt1bm5lIGlra2UgaW5zdGFsbGVyZSAlczsgZGVuIGJsaXZlciBlZnRlcmxhZHQgc29tICVzOiAlcyIKKworI34gbXNnaWQgIiVzOiB1bmFibGUgdG8gdW5sb2NrICVzOiAlcyIKKyN+IG1zZ3N0ciAiJXM6IGt1bm5lIGlra2UgbMOlc2UgJXMgb3A6ICVzIgorCisjfiBtc2dpZCAiJXMgLSBzdGF0dXMgaXMgJXMuIgorI34gbXNnc3RyICIlcyAtIHN0YXR1cyBlciAlcy4iCisKKyN+IG1zZ2lkICIgbGluayB1bnJlYWRhYmxlIC0gJXMiCisjfiBtc2dzdHIgIiBsw6Zua2VuIGVyIHVsw6ZzZWxpZyAtICVzIgorCisjfiBtc2dpZCAiTGVhdmluZyAlcyAoJXMpIHBvaW50aW5nIHRvICVzLiIKKyN+IG1zZ3N0ciAiTGFkZXIgZm9ydHNhdCAlcyAoJXMpIHBlZ2UgcMOlICVzLiIKKworI34gbXNnaWQgIlVwZGF0aW5nICVzICglcykgdG8gcG9pbnQgdG8gJXMuIgorI34gbXNnc3RyICJPcGRhdGVyZXIgJXMgKCVzKSB0aWwgYXQgcGVnZSBww6UgJXMuIgorCisjfiBtc2dpZCAiUmVtb3ZpbmcgJXMgKCVzKSwgbm90IGFwcHJvcHJpYXRlIHdpdGggJXMuIgorI34gbXNnc3RyICJGamVybmVsc2UgYWYgJXMgKCVzKSwgZXIgaSBtb2RzdHJpZCBtZWQgJXMuIgorCisjfiBtc2dpZCAiIgorI34gIkNoZWNraW5nIGF2YWlsYWJsZSB2ZXJzaW9ucyBvZiAlcywgdXBkYXRpbmcgbGlua3MgaW4gJXMgLi4uXG4iCisjfiAiKFlvdSBtYXkgbW9kaWZ5IHRoZSBzeW1saW5rcyB0aGVyZSB5b3Vyc2VsZiBpZiBkZXNpcmVkIC0gc2VlIGBtYW4gbG4nLikiCisjfiBtc2dzdHIgIiIKKyN+ICJUamVra2VyIHRpbGfDpm5nZWxpZ2UgdmVyc2lvbmVyIGFmICVzLCBvcGRhdGVyZXIgbMOmbmtnZXJuZSBpICVzIC4uLlxuIgorI34gIihEdSBrYW4gc2VsdiDDpm5kcmUgZGUgc3ltYm9sc2tlIGzDpm5rZXIgZGVyLCBodmlzIGR1IHZpbCAtIHNlICdtYW4gbG4nLikiCisKKyN+IG1zZ2lkICJzbGF2ZSBsaW5rIG5hbWUgJXMgZHVwbGljYXRlZCIKKyN+IG1zZ3N0ciAic2xhdmVsw6Zua2VuYXZuZXQgJXMgZmluZGVzIGZsZXJlIGdhbmdlIgorCisjfiBtc2dpZCAiUmVjb3ZlcmluZyBmcm9tIHByZXZpb3VzIGZhaWxlZCB1cGRhdGUgb2YgJXMgLi4uIgorI34gbXNnc3RyICJHZW5za2FiZXIgZnJhIHRpZGxpZ2VyZSBtaXNseWtrZWRlIG9wZGF0ZXJpbmcgYWYgJyVzIC4uLiIKKworI34gbXNnaWQgInVuYWJsZSB0byBvcGVuICVzIGZvciB3cml0ZTogJXMiCisjfiBtc2dzdHIgImt1bm5lIGlra2Ugw6VibmUgJXMgZm9yIHNrcml2bmluZzogJXMiCisKKyN+IG1zZ2lkICJMYXN0IHBhY2thZ2UgcHJvdmlkaW5nICVzICglcykgcmVtb3ZlZCwgZGVsZXRpbmcgaXQuIgorI34gbXNnc3RyICJTaWRzdGUgcGFra2UsIGRlciB0aWxiw7hkICVzICglcyksIGVyIGZqZXJuZXQuIFNsZXR0ZXIgZGVuLiIKKworI34gbXNnaWQgIiIKKyN+ICJUaGVyZSBpcyBvbmx5IDEgcHJvZ3JhbSB3aGljaCBwcm92aWRlcyAlc1xuIgorI34gIiglcykuIE5vdGhpbmcgdG8gY29uZmlndXJlLlxuIgorI34gbXNnc3RyICIiCisjfiAiRGVyIGVyIGt1biBldCBlbmtlbHQgcHJvZ3JhbSwgZGVyIGdpdmVyICVzXG4iCisjfiAiKCVzKS4gSW50ZXQgYXQgc8OmdHRlIG9wLlxuIgorCisjfiBtc2dpZCAiIgorI34gIlRoZXJlIGFyZSAlcyBhbHRlcm5hdGl2ZXMgd2hpY2ggcHJvdmlkZSBgJXMnLlxuIgorI34gIlxuIgorI34gIiAgU2VsZWN0aW9uICAgIEFsdGVybmF0aXZlXG4iCisjfiAiLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiIKKyN+IG1zZ3N0ciAiIgorI34gIkRlciBlciAlcyBhbHRlcm5hdGl2ZXIsIHNvbSB0aWxieWRlciAnJXMnLlxuIgorI34gIlxuIgorI34gIiAgVmFsZyAgICAgICAgIEFsdGVybmF0aXZcbiIKKyN+ICItLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIgorCisjfiBtc2dpZCAiZXJyb3Igd3JpdGluZyBzdGRvdXQ6ICVzIgorI34gbXNnc3RyICJmZWpsIHVuZGVyIHNrcml2bmluZyB0aWwgc3RhbmRhcmQtdWQ6ICVzIgorCisjfiBtc2dpZCAiZXJyb3Igb3IgZW9mIHJlYWRpbmcgJXMgZm9yICVzICglcykiCisjfiBtc2dzdHIgImZlamwgZWxsZXIgZmlsYWZzbHV0bmluZyB1bmRlciBsw6ZzbmluZyBhZiAlcyBmb3IgJXMgKCVzKSIKKworI34gbXNnaWQgIm1pc3NpbmcgbmV3bGluZSBhZnRlciAlcyIKKyN+IG1zZ3N0ciAibWFuZ2xlbmRlIGxpbmplc2tpZnQgZWZ0ZXIgJXMiCisKKyN+IG1zZ2lkICJTZXJpb3VzIHByb2JsZW06ICVzIgorI34gbXNnc3RyICJBbHZvcmxpZ3QgcHJvYmxlbTogJXMiCisKKyN+IG1zZ2lkICJjb3VsZG4ndCBhbGxvY2F0ZSBtZW1vcnkgZm9yIHN0cmR1cCBpbiBmaW5kcGFja2FnZSglcykiCisjfiBtc2dzdHIgImt1bm5lIGlra2UgZnJpZ8O4cmUgaHVrb21tZWxzZSB0aWwgc3RyZHVwIGkgZmluZHBhY2thZ2UoJXMpIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGFsbG9jYXRlIGJ1ZmZlciBpbiBidWZmZXJfY29weSAoJXMpIgorI34gbXNnc3RyICJrdW5uZSBpa2tlIGZyaWfDuHJlIG1lbGxlbWxhZ2VyIGkgYnVmZmVyX2NvcHkgKCVzKSIKKworI34gbXNnaWQgIkVycm9yIGFsbG9jYXRpbmcgbWVtb3J5IGZvciBjZmdmaWxlbmFtZSIKKyN+IG1zZ3N0ciAiRmVqbCB1bmRlciBhbGxva2VyaW5nIGFmIGh1a29tbWVsc2UgdGlsIGNmZ2ZpbGVuYW1lIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIG1hbGxvYyBmb3IgaW5mbyBmaWxlIGAlLjI1NXMnIgorI34gbXNnc3RyICJrdW5uZSBpa2tlIGvDuHJlICdtYWxsb2MnIGZvciBpbmZvcm1hdGlvbnNmaWwgJyUuMjU1cyciCisKKyN+IG1zZ2lkICJkaXZlcnNpb25zIGZpbGUgaGFzIHRvby1sb25nIGxpbmUgb3IgRU9GIFtpXSIKKyN+IG1zZ3N0ciAib21kaXJpZ2VyaW5nc2ZpbCBoYXIgZW4gZm9yIGxhbmcgbGluamUgZWxsZXIgc2x1dC1ww6UtZmlsIFtpXSIKKworI34gbXNnaWQgInJlYWQgZXJyb3IgaW4gZGl2ZXJzaW9ucyBbaWldIgorI34gbXNnc3RyICJsw6ZzZWZlamwgaSBvbWRpcmlnZXJpbmdzZmlsIFtpaV0iCisKKyN+IG1zZ2lkICJ1bmV4cGVjdGVkIEVPRiBpbiBkaXZlcnNpb25zIFtpaV0iCisjfiBtc2dzdHIgInV2ZW50ZXQgc2x1dC1ww6UtZmlsIGkgb21kaXJpZ2VyaW5nc2ZpbCBbaWldIgorCisjfiBtc2dpZCAiZmdldHMgZ2F2ZSBhbiBlbXB0eSBzdHJpbmcgZnJvbSBkaXZlcnNpb25zIFtpaV0iCisjfiBtc2dzdHIgIidmZ2V0cycgZ2F2IGVuIHRvbSBzdHJlbmcgZnJhIG9tZGlyaWdlcmluZ3NmaWwgW2lpXSIKKworI34gbXNnaWQgImRpdmVyc2lvbnMgZmlsZSBoYXMgdG9vLWxvbmcgbGluZSBvciBFT0YgW2lpXSIKKyN+IG1zZ3N0ciAib21kaXJpZ2VyaW5nc2ZpbCBoYXIgZW4gZm9yIGxhbmcgbGluamUgZWxsZXIgc2x1dC1ww6UtZmlsIFtpaV0iCisKKyN+IG1zZ2lkICJyZWFkIGVycm9yIGluIGRpdmVyc2lvbnMgW2lpaV0iCisjfiBtc2dzdHIgImzDpnNlZmVqbCBpIG9tZGlyaWdlcmluZ3NmaWwgW2lpaV0iCisKKyN+IG1zZ2lkICJ1bmV4cGVjdGVkIEVPRiBpbiBkaXZlcnNpb25zIFtpaWldIgorI34gbXNnc3RyICJ1dmVudGV0IHNsdXQtcMOlLWZpbCBpIG9tZGlyaWdlcmluZ3NmaWwgW2lpaV0iCisKKyN+IG1zZ2lkICJmZ2V0cyBnYXZlIGFuIGVtcHR5IHN0cmluZyBmcm9tIGRpdmVyc2lvbnMgW2lpaV0iCisjfiBtc2dzdHIgIidmZ2V0cycgZ2F2IHRvbSBzdHJlbmcgZnJhIG9tZGlyaWdlcmluZ3NmaWwgW2lpaV0iCisKKyN+IG1zZ2lkICJjb3VsZG4ndCBtYWxsb2MgaW4gZXhlY2JhY2tlbmQiCisjfiBtc2dzdHIgImt1bm5lIGlra2UgdWRmw7hyZSAnbWFsbG9jJyBpIGV4ZWNiYWNrZW5kIgorCisjfiBtc2dpZCAiY291bGRuJ3Qgc3RyZHVwIGluIGV4ZWNiYWNrZW5kIgorI34gbXNnc3RyICJrdW5uZSBpa2tlIHVkZsO4cmUgJ3N0cmR1cCcgaSBleGVjYmFja2VuZCIKKworI34gbXNnaWQgImZhaWxlZCBhbGxvY2F0aW5nIG1lbW9yeSBmb3IgdmFyaWFibGUgYGN0cmxhcmVhJyIKKyN+IG1zZ3N0ciAia3VubmUgaWtrZSBhbGxva2VyZSBodWtvbW1lbHNlIHRpbCB2YXJpYWJsZW4gY3RybGFyZWEgIgorCisjfiBtc2dpZCAiQ2Fubm90IGdldCBFTk9FTlQgdmFsdWUgZnJvbSAlczogJXMiCisjfiBtc2dzdHIgIkthbiBpa2tlIGhlbnRlIEVOT0VOVC12w6ZyZGllbiBmcmEgJXM6ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGVuc3VyZSAlcyBub25leGlzdGVudDogJXMiCisjfiBtc2dzdHIgImt1bm5lIGlra2Ugc2lrcmUgYXQgJXMgaWtrZSBmYW5kdGVzOiAlcyIKKworI34gbXNnaWQgIiIKKyN+ICJ3YXJuaW5nOiAlcyBpcyBzdXBwb3NlZCB0byBiZSBhIHNsYXZlIHN5bWxpbmsgdG9cbiIKKyN+ICIgJXMsIG9yIG5vbmV4aXN0ZW50OyBob3dldmVyLCByZWFkbGluayBmYWlsZWQ6ICVzIgorI34gbXNnc3RyICIiCisjfiAiYWR2YXJzZWw6ICVzIGJ1cmRlIHbDpnJlIGVuIHN5bWJvbHNrIHNsYXZlLWzDpm5rZSB0aWxcbiIKKyN+ICIgJXMsIGVsbGVyIGlra2UgZWtzaXN0ZXJlLiByZWFkbGluayBtaXNseWtrZWRlczogJXMiCisKKyN+IG1zZ2lkICIiCisjfiAiZHBrZzogcmVnYXJkaW5nICVzIGNvbnRhaW5pbmcgJXM6XG4iCisjfiAiIHBhY2thZ2UgdXNlcyBCcmVha3M7IG5vdCBzdXBwb3J0ZWQgaW4gdGhpcyBkcGtnXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJkcGtnOiB2ZWRyw7hyZW5kZSAlcywgZGVyIGluZGVob2xkZXIgJXM6XG4iCisjfiAiIHBha2tlbiBiZW55dHRlciBCcmVha3MuIERldCB1bmRlcnN0w7h0dGVzIGlra2UgYWYgZGVubmUgdWRnYXZlIGFmIGRwa2dcbiIKKworI34gbXNnaWQgInVuc3VwcG9ydGVkIGRlcGVuZGVuY3kgcHJvYmxlbSAtIG5vdCBpbnN0YWxsaW5nICUuMjUwcyIKKyN+IG1zZ3N0ciAiaWtrZS11bmRlcnN0w7h0dGV0IGFmaMOmbmdpZ2hlZHNwcm9ibGVtIC0gaW5zdGFsbGVyZXIgaWtrZSAlLjI1MHMiCisKKyN+IG1zZ2lkICJkcGtnOiB3YXJuaW5nIC0gaWdub3JpbmcgQnJlYWtzICFcbiIKKyN+IG1zZ3N0ciAiZHBrZzogYWR2YXJzZWwgLSBpZ25vcmVyZXIgQnJlYWtzICFcbiIKKworI34gbXNnaWQgInRvIgorI34gbXNnc3RyICJ0aWwiCisKKyN+IG1zZ2lkICJmcm9tIgorI34gbXNnc3RyICJmcmEiCisKKyN+IG1zZ2lkICJlcnJvciByZWFkaW5nICVzIgorI34gbXNnc3RyICJmZWpsIHZlZCBsw6ZzbmluZyBhZiAlcyIKKworI34gbXNnaWQgInR3byBtb2RlcyBzcGVjaWZpZWQ6ICVzIGFuZCAtLSVzIgorI34gbXNnc3RyICJ0byB0aWxzdGFuZGUgYW5naXZldDogJXMgb2cgLS0lcyIKKworI34gbXNnaWQgIm1hbmZsYWciCisjfiBtc2dzdHIgIm1hbmZsYWciCisKKyN+IG1zZ2lkICIlczogZmFpbGVkIHRvIGV4ZWMgZ3ppcCAtZGMiCisjfiBtc2dzdHIgIiVzOiBrdW5uZSBpa2tlIHVkZsO4cmUgJ2d6aXAgLWRjJyIKKworI34gbXNnaWQgIiVzOiBmYWlsZWQgdG8gZXhlYyBiemlwMiAtZGMiCisjfiBtc2dzdHIgIiVzOiBrdW5uZSBpa2tlIHVkZsO4cmUgJ2J6aXAyIC1kYyciCisKKyN+IG1zZ2lkICIlczogZmFpbGVkIHRvIGV4ZWMgYnppcDIgJXMiCisjfiBtc2dzdHIgIiVzOiBrdW5uZSBpa2tlIHVkZsO4cmUgYnppcDIgJXMiCisKKyN+IG1zZ2lkICJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6IHZlcnNpb24gY29udGFpbnMgYCAnIgorI34gbXNnc3RyICInJXMnIGZlbHQsIGhlbnZpc25pbmcgdGlsICclLjI1NXMnOiB2ZXJzaW9uIGluZGVob2xkZXIgJyAnIgorCisjfiBtc2dpZCAiICBQYWNrYWdlICIKKyN+IG1zZ3N0ciAiICBQYWtrZW4gIgorCisjfiBtc2dpZCAiIHdoaWNoIHByb3ZpZGVzICIKKyN+IG1zZ3N0ciAiIHNvbSBnaXZlciAiCisKKyN+IG1zZ2lkICIgaXMgdG8gYmUgcmVtb3ZlZC5cbiIKKyN+IG1zZ3N0ciAiIHZpbCBibGl2ZSBhZmluc3RhbGxlcmV0LlxuIgorCisjfiBtc2dpZCAiICBWZXJzaW9uIG9mICIKKyN+IG1zZ3N0ciAiICBWZXJzaW9uZW4gYWYgIgorCisjfiBtc2dpZCAiIG9uIHN5c3RlbSBpcyAiCisjfiBtc2dzdHIgIiBww6Ugc3lzdGVtZXQgZXIgIgorCisjfiBtc2dpZCAiIGlzIG5vdCBpbnN0YWxsZWQuXG4iCisjfiBtc2dzdHIgIiBlciBpa2tlIGluc3RhbGxlcmV0LlxuIgorCisjfiBtc2dpZCAiIHRvOiAlc1xuIgorI34gbXNnc3RyICIgdGlsOiAlc1xuIgorCisjfiBtc2dpZCAiZmdldHBvcyBmYWlsZWQiCisjfiBtc2dzdHIgIidmZ2V0cG9zJyBtaXNseWtrZWRlcyIKKworI34gbXNnaWQgImZzZXRwb3MgZmFpbGVkIgorI34gbXNnc3RyICInZnNldHBvcycgbWlzbHlra2VkZXMiCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3BvL2RlLmdtbyBiL2Rwa2ctMS4xNi4xLjEvcG8vZGUuZ21vCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjMxODZjOTgKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3BvL2RlLmdtbwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3BvL2RlLnBvIGIvZHBrZy0xLjE2LjEuMS9wby9kZS5wbwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xNzFkOWVjCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9wby9kZS5wbwpAQCAtMCwwICsxLDY0MzMgQEAKKyMgVGV4dGUgZsO8ciBEZWJpYW4gZHBrZy9wby9kZS5wbworIyBDb3B5cmlnaHQgwqkgMjAwMCBTb2Z0d2FyZSBpbiB0aGUgUHVibGljIEludGVyZXN0LgorIyBIYXJ0bXV0IEtvcHRlaW4gPGtvcHRlaW5AZGViaWFuLm9yZz4sIEFwciAyMDAwLgorIyBFcmljaCBTY2h1YmVydCA8ZGViaWFuQHZpdGF2b25uaS5kZT4sIE1hcmNoIDIwMDEuCisjIE1pY2hhZWwgUGllZmVsIDxwaWVmZWxAZGViaWFuLm9yZz4sIDIwMDEsIDIwMDIsIDIwMDMsIDIwMDQsIDIwMDUuCisjIEZsb3JpYW4gRXJuc3QgPGZsb3JpYW5AdW5pLWhkLmRlPiwgMjAwNC4KKyMgU3ZlbiBKb2FjaGltIDxzdmVuam9hY0BnbXguZGU+LCAyMDA2LCAyMDA3LCAyMDA4LCAyMDA5LCAyMDEwLCAyMDExLgorIyBIb2xnZXIgV2Fuc2luZyA8bGludXhAd2Fuc2luZy1vbmxpbmUuZGU+LCAyMDEwLgorIworbXNnaWQgIiIKK21zZ3N0ciAiIgorIlByb2plY3QtSWQtVmVyc2lvbjogRGViaWFuIGRwa2cgMS4xNi4xflxuIgorIlJlcG9ydC1Nc2dpZC1CdWdzLVRvOiBkZWJpYW4tZHBrZ0BsaXN0cy5kZWJpYW4ub3JnXG4iCisiUE9ULUNyZWF0aW9uLURhdGU6IDIwMTEtMTAtMTQgMDc6MTErMDIwMFxuIgorIlBPLVJldmlzaW9uLURhdGU6IDIwMTEtMDktMDkgMTE6MzArMDIwMFxuIgorIkxhc3QtVHJhbnNsYXRvcjogU3ZlbiBKb2FjaGltIDxzdmVuam9hY0BnbXguZGU+XG4iCisiTGFuZ3VhZ2UtVGVhbTogR2VybWFuIDxkZWJpYW4tbDEwbi1nZXJtYW5AbGlzdHMuZGViaWFuLm9yZz5cbiIKKyJMYW5ndWFnZTogZGVcbiIKKyJNSU1FLVZlcnNpb246IDEuMFxuIgorIkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD1VVEYtOFxuIgorIkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDgtYml0XG4iCisiUGx1cmFsLUZvcm1zOiBucGx1cmFscz0yOyBwbHVyYWw9KG4gIT0gMSlcbiIKKworIzogbGliL2Rwa2cvYXIuYzo2NgorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGNoYXJhY3RlciAnJWMnIGluIGFyY2hpdmUgJyUuMjUwcycgbWVtYmVyICclLjE2cycgc2l6ZSIKK21zZ3N0ciAidW5nw7xsdGlnZXMgWmVpY2hlbiDCuyVjwqsgaW4gR3LDtsOfZSB2b24gQXJjaGl2IMK7JS4yNTBzwqssIEVsZW1lbnQgwrslLjE2c8KrIgorCisjOiBsaWIvZHBrZy9hci5jOjgxIGxpYi9kcGtnL2FyLmM6OTcgbGliL2Rwa2cvYXIuYzoxMDggbGliL2Rwa2cvYXIuYzoxMTIKKyM6IGxpYi9kcGtnL2FyLmM6MTM0IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTU0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBmaWxlICclcyciCittc2dzdHIgIkRhdGVpIMK7JXPCqyBrYW5uIG5pY2h0IGdlc2NocmllYmVuIHdlcmRlbiIKKworIzogbGliL2Rwa2cvYXIuYzo5NAorIywgYy1mb3JtYXQKK21zZ2lkICJnZW5lcmF0ZWQgY29ycnVwdCBhciBoZWFkZXIgZm9yICclcyciCittc2dzdHIgIkJlc2Now6RkaWd0ZSBhci1Lb3BmemVpbGVuIGbDvHIgwrslc8KrIGVyemV1Z3QiCisKKyM6IGxpYi9kcGtnL2FyLmM6MTIzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBmc3RhdCBhciBtZW1iZXIgZmlsZSAoJXMpIgorbXNnc3RyICJBYmZyYWdlbiB2b24gYXItRWxlbWVudC1EYXRlaSAoJXMpIG1pdCBmc3RhdCBmZWhsZ2VzY2hsYWdlbiIKKworIzogbGliL2Rwa2cvYXIuYzoxMzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiYXIgbWVtYmVyIGZpbGUgKCVzKSIKK21zZ3N0ciAiYXItRWxlbWVudC1EYXRlaSAoJXMpIgorCisjOiBsaWIvZHBrZy9idWZmZXIuYzoxOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgb24gYnVmZmVyIGNvcHkgZm9yICVzIgorbXNnc3RyICJMZXNlbiBhdXMgUHVmZmVya29waWUgZsO8ciAlcyBmZWhsZ2VzY2hsYWdlbiIKKworIzogbGliL2Rwa2cvYnVmZmVyLmM6MjEyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCBpbiB3cml0ZSBvbiBidWZmZXIgY29weSBmb3IgJXMiCittc2dzdHIgIlNjaHJlaWJlbiBpbiBQdWZmZXJrb3BpZSBmw7xyICVzIGZlaGxnZXNjaGxhZ2VuIgorCisjOiBsaWIvZHBrZy9idWZmZXIuYzoyMjAKKyMsIGMtZm9ybWF0Cittc2dpZCAic2hvcnQgcmVhZCBvbiBidWZmZXIgY29weSBmb3IgJXMiCittc2dzdHIgIm5pY2h0IHZvbGxzdMOkbmRpZyBnZWxlc2VuIGluIFB1ZmZlcmtvcGllIGbDvHIgJXMiCisKKyM6IGxpYi9kcGtnL2J1ZmZlci5jOjI4OAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gc2VlayAlcyIKK21zZ3N0ciAiUG9zaXRpb25pZXJ1bmcgdm9uICVzIGZlaGxnZXNjaGxhZ2VuIgorCisjOiBsaWIvZHBrZy9jb21tYW5kLmM6MTc4IGxpYi9kcGtnL2NvbW1hbmQuYzoyMDQgc3JjL2hlbHAuYzo2MjEKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTggc3JjL3Byb2Nlc3NhcmMuYzoxMzggc3JjL3Byb2Nlc3NhcmMuYzo0MzIKKyM6IHNyYy9wcm9jZXNzYXJjLmM6ODM5IGRwa2ctZGViL2J1aWxkLmM6NDU5IGRwa2ctZGViL2J1aWxkLmM6NTM4CisjOiBkcGtnLWRlYi9idWlsZC5jOjU2MSBkcGtnLWRlYi9leHRyYWN0LmM6MzE3IGRwa2ctZGViL2luZm8uYzo2NQorIzogZHBrZy1zcGxpdC9zcGxpdC5jOjY5IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo0NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGV4ZWN1dGUgJXMgKCVzKSIKK21zZ3N0ciAiJXMgKCVzKSBrYW5uIG5pY2h0IGF1c2dlZsO8aHJ0IHdlcmRlbiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzo4MworIywgYy1mb3JtYXQKK21zZ2lkICIlczogZGVjb21wcmVzc2lvbiIKK21zZ3N0ciAiJXM6IERla29tcHJpbWllcnVuZyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzo4OQorIywgYy1mb3JtYXQKK21zZ2lkICIlczogY29tcHJlc3Npb24iCittc2dzdHIgIiVzOiBLb21wcmltaWVydW5nIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjExMgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZXJyb3IgYmluZGluZyBpbnB1dCB0byBnemlwIHN0cmVhbSIKK21zZ3N0ciAiJXM6IEZlaGxlciBiZWltIEJpbmRlbiBkZXIgRWluZ2FiZSBhbiBnemlwLURhdGVuc3Ryb20iCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHJlYWQgZXJyb3I6ICclcyciCittc2dzdHIgIiVzOiBpbnRlcm5lciBnemlwLUxlc2VmZWhsZXI6IMK7JXPCqyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxMzIgbGliL2Rwa2cvY29tcHJlc3MuYzoxMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgd3JpdGUgZXJyb3IiCittc2dzdHIgIiVzOiBpbnRlcm5lciBnemlwLVNjaHJlaWJmZWhsZXIiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTUwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvciBiaW5kaW5nIG91dHB1dCB0byBnemlwIHN0cmVhbSIKK21zZ3N0ciAiJXM6IEZlaGxlciBiZWltIEJpbmRlbiBkZXIgQXVzZ2FiZSBhbiBnemlwLURhdGVuc3Ryb20iCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTU3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHJlYWQgZXJyb3IiCittc2dzdHIgIiVzOiBpbnRlcm5lciBnemlwLUxlc2VmZWhsZXIiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTY3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHdyaXRlIGVycm9yOiAnJXMnIgorbXNnc3RyICIlczogaW50ZXJuZXIgZ3ppcC1TY2hyZWliZmVobGVyOiDCuyVzwqsiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTgwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHdyaXRlIGVycm9yOiAlcyIKK21zZ3N0ciAiJXM6IGludGVybmVyIGd6aXAtU2NocmVpYmZlaGxlcjogJXMiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjIwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvciBiaW5kaW5nIGlucHV0IHRvIGJ6aXAyIHN0cmVhbSIKK21zZ3N0ciAiJXM6IEZlaGxlciBiZWltIEJpbmRlbiBkZXIgRWluZ2FiZSBhbiBiemlwMi1EYXRlbnN0cm9tIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjIzMgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgcmVhZCBlcnJvcjogJyVzJyIKK21zZ3N0ciAiJXM6IGludGVybmVyIGJ6aXAyLUxlc2VmZWhsZXI6IMK7JXPCqyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyNDAgbGliL2Rwa2cvY29tcHJlc3MuYzoyNDQgbGliL2Rwa2cvY29tcHJlc3MuYzoyOTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIHdyaXRlIGVycm9yIgorbXNnc3RyICIlczogaW50ZXJuZXIgYnppcDItU2NocmVpYmZlaGxlciIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yIGJpbmRpbmcgb3V0cHV0IHRvIGJ6aXAyIHN0cmVhbSIKK21zZ3N0ciAiJXM6IEZlaGxlciBiZWltIEJpbmRlbiBkZXIgQXVzZ2FiZSBhbiBnemlwLURhdGVuc3Ryb20iCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjY1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiByZWFkIGVycm9yIgorbXNnc3RyICIlczogaW50ZXJuZXIgYnppcDItTGVzZWZlaGxlciIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyNzUgbGliL2Rwa2cvY29tcHJlc3MuYzoyODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIHdyaXRlIGVycm9yOiAnJXMnIgorbXNnc3RyICIlczogaW50ZXJuZXIgYnppcDItU2NocmVpYmZlaGxlcjogwrslc8KrIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI4MgorbXNnaWQgInVuZXhwZWN0ZWQgYnppcDIgZXJyb3IiCittc2dzdHIgInVuZXJ3YXJ0ZXRlciBiemlwMi1GZWhsZXIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVwZGF0ZXMgZGlyZWN0b3J5IGNvbnRhaW5zIGZpbGUgYCUuMjUwcycgd2hvc2UgbmFtZSBpcyB0b28gbG9uZyAobGVuZ3RoPSVkLCAiCisibWF4PSVkKSIKK21zZ3N0ciAiIgorIkRhcyBVcGRhdGVzLVZlcnplaWNobmlzIGVudGjDpGx0IGRpZSBEYXRlaSDCuyUuMjUwc8KrLCBkZXJlbiBOYW1lIHp1IGxhbmcgaXN0ICIKKyIoTMOkbmdlPSVkLCBNYXg9JWQpIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1cGRhdGVzIGRpcmVjdG9yeSBjb250YWlucyBmaWxlcyB3aXRoIGRpZmZlcmVudCBsZW5ndGggbmFtZXMgKGJvdGggJWQgYW5kICVkKSIKK21zZ3N0ciAiIgorIkRhcyBVcGRhdGVzLVZlcnplaWNobmlzIGVudGjDpGx0IERhdGVpZW4gbWl0IHZlcnNjaGllZGVuIGxhbmdlbiBOYW1lbiAoc293b2hsICIKKyIlZCBhbHMgYXVjaCAlZCkiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHNjYW4gdXBkYXRlcyBkaXJlY3RvcnkgYCUuMjU1cyciCittc2dzdHIgIlVwZGF0ZXMtVmVyemVpY2huaXMgwrslLjI1NXPCqyBrYW5uIG5pY2h0IGVpbmdlbGVzZW4gd2VyZGVuIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVtb3ZlIGluY29ycG9yYXRlZCB1cGRhdGUgZmlsZSAlLjI1NXMiCittc2dzdHIgIkzDtnNjaGVuIGRlciBlaW5nZWJ1bmRlbmVuIFVwZGF0ZS1EYXRlaSAlLjI1NXMgZmVobGdlc2NobGFnZW4iCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTIxIGRwa2ctZGViL2J1aWxkLmM6NDQ3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgYCUuMjU1cyciCittc2dzdHIgIsK7JS4yNTVzwqsga2FubiBuaWNodCBhbmdlbGVndCB3ZXJkZW4iCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTI1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmaWxsICUuMjUwcyB3aXRoIHBhZGRpbmciCittc2dzdHIgIiUuMjUwcyBrYW5uIG5pY2h0IGF1ZmdlZsO8bGx0IHdlcmRlbiIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxMjcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoICUuMjUwcyBhZnRlciBwYWRkaW5nIgorbXNnc3RyICJQdWZmZXJsZWVydW5nIHZvbiAlLjI1MHMgbmFjaCBBdWZmw7xsbGVuIG5pY2h0IG3DtmdsaWNoIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEyOQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2VlayB0byBzdGFydCBvZiAlLjI1MHMgYWZ0ZXIgcGFkZGluZyIKK21zZ3N0ciAiTmFjaCBBdWZmw7xsbGVuIGthbm4gbmljaHQgenVtIFN0YXJ0IHZvbiAlLjI1MHMgZ2VzcHJ1bmdlbiB3ZXJkZW4iCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTk1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIGxvY2sgZmlsZSAlcyBmb3IgdGVzdGluZyIKK21zZ3N0ciAiU3BlcnJkYXRlaSAlcyBrYW5uIG5pY2h0IHp1bSBUZXN0ZW4gZ2XDtmZmbmV0IHdlcmRlbiIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyMjEKK21zZ2lkICJ1bmFibGUgdG8gb3Blbi9jcmVhdGUgc3RhdHVzIGRhdGFiYXNlIGxvY2tmaWxlIgorbXNnc3RyICJTcGVycmRhdGVpIGRlciBTdGF0dXMtRGF0ZW5iYW5rIGthbm4gbmljaHQgZ2XDtmZmbmV0L2FuZ2VsZWd0IHdlcmRlbiIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyMzEKK21zZ2lkICJ5b3UgZG8gbm90IGhhdmUgcGVybWlzc2lvbiB0byBsb2NrIHRoZSBkcGtnIHN0YXR1cyBkYXRhYmFzZSIKK21zZ3N0ciAiRmVobGVuZGUgUmVjaHRlLCB1bSBkaWUgZHBrZy1TdGF0dXMtRGF0ZW5iYW5rIHp1IHNwZXJyZW4iCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjMzCittc2dpZCAiZHBrZyBzdGF0dXMgZGF0YWJhc2UiCittc2dzdHIgImRwa2ctU3RhdHVzLURhdGVuYmFuayIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyNTcKK21zZ2lkICJyZXF1ZXN0ZWQgb3BlcmF0aW9uIHJlcXVpcmVzIHN1cGVydXNlciBwcml2aWxlZ2UiCittc2dzdHIgIkFuZ2Vmb3JkZXJ0ZSBPcGVyYXRpb24gYmVuw7Z0aWd0IFN1cGVydXNlci1SZWNodGUiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjYyCittc2dpZCAidW5hYmxlIHRvIGFjY2VzcyBkcGtnIHN0YXR1cyBhcmVhIgorbXNnc3RyICJBdWYgZGVuIFN0YXR1c2JlcmVpY2ggdm9uIGRwa2cga2FubiBuaWNodCB6dWdlZ3JpZmZlbiB3ZXJkZW4iCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjY0Cittc2dpZCAib3BlcmF0aW9uIHJlcXVpcmVzIHJlYWQvd3JpdGUgYWNjZXNzIHRvIGRwa2cgc3RhdHVzIGFyZWEiCittc2dzdHIgIk9wZXJhdGlvbiBiZW7DtnRpZ3QgTGVzZS0vU2NocmVpYnJlY2h0ZSBmw7xyIGRlbiBTdGF0dXNiZXJlaWNoIHZvbiBkcGtnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjMwOQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVtb3ZlIG15IG93biB1cGRhdGUgZmlsZSAlLjI1NXMiCittc2dzdHIgIkzDtnNjaGVuIGRlciBlaWdlbmVuIFVwZGF0ZS1EYXRlaSAlLjI1NXMgZmVobGdlc2NobGFnZW4iCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzQ3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiQWt0dWFsaXNpZXJ0ZXIgU3RhdHVzIHZvbiDCuyUuMjUwc8KrIGthbm4gbmljaHQgZ2VzY2hyaWViZW4gd2VyZGVuIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM0OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgIiIKKyJQdWZmZXIgZGVzIGFrdHVhbGlzaWVydGVuIFN0YXR1cyB2b24gwrslLjI1MHPCqyBrYW5uIG5pY2h0IGdlbGVlcnQgd2VyZGVuIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM1MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gdHJ1bmNhdGUgZm9yIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJGw7xyIGFrdHVhbGlzaWVydGVuIFN0YXR1cyB2b24gwrslLjI1MHPCqyBrYW5uIG5pY2h0IGFiZ2VzY2huaXR0ZW4gd2VyZGVuIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM1MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZnN5bmMgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgIkFrdHVhbGlzaWVydGVyIFN0YXR1cyB2b24gwrslLjI1MHPCqyBrYW5uIG5pY2h0IHN5bmNocm9uaXNpZXJ0IHdlcmRlbiIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJBa3R1YWxpc2llcnRlciBTdGF0dXMgdm9uIMK7JS4yNTBzwqsga2FubiBuaWNodCBnZXNjaGxvc3NlbiB3ZXJkZW4iCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzU4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJBa3R1YWxpc2llcnRlciBTdGF0dXMgdm9uIMK7JS4yNTBzwqsga2FubiBuaWNodCBpbnN0YWxsaWVydCB3ZXJkZW4iCisKKyM6IGxpYi9kcGtnL2Rpci5jOjUwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBnZXQgZmlsZSBkZXNjcmlwdG9yIGZvciBkaXJlY3RvcnkgJyVzJyIKK21zZ3N0ciAiRGF0ZWlkZXNrcmlwdG9yIGbDvHIgVmVyemVpY2huaXMgwrslc8KrIGthbm4gbmljaHQgZXJsYW5ndCB3ZXJkZW4iCisKKyM6IGxpYi9kcGtnL2Rpci5jOjU0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzeW5jIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICJWZXJ6ZWljaG5pcyDCuyVzwqsga2FubiBuaWNodCBzeW5jaHJvbmlzaWVydCB3ZXJkZW4iCisKKyM6IGxpYi9kcGtnL2Rpci5jOjY5IGxpYi9kcGtnL2Rpci5jOjEzMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBkaXJlY3RvcnkgJyVzJyIKK21zZ3N0ciAiVmVyemVpY2huaXMgwrslc8KrIGthbm4gbmljaHQgZ2XDtmZmbmV0IHdlcmRlbiIKKworIzogbGliL2Rwa2cvZGlyLmM6MTA5IHNyYy9kaXZlcnRjbWQuYzoyMTggZHBrZy1zcGxpdC9zcGxpdC5jOjIwMgorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gZmlsZSAnJXMnIgorbXNnc3RyICJEYXRlaSDCuyVzwqsga2FubiBuaWNodCBnZcO2ZmZuZXQgd2VyZGVuIgorCisjOiBsaWIvZHBrZy9kaXIuYzoxMTEgc3JjL2RpdmVydGNtZC5jOjIzMiBzcmMvZGl2ZXJ0Y21kLmM6Mzc3CisjOiBzcmMvc3RhdGNtZC5jOjIxNyBkcGtnLWRlYi9idWlsZC5jOjU5OCBkcGtnLXNwbGl0L2pvaW4uYzo2NQorIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE4NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTQwNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBmaWxlICclcyciCittc2dzdHIgIkRhdGVpIMK7JXPCqyBrYW5uIG5pY2h0IHN5bmNocm9uaXNpZXJ0IHdlcmRlbiIKKworIzogbGliL2Rwa2cvZGlyLmM6MTEzIHNyYy9kaXZlcnRjbWQuYzoyMzQgc3JjL2RpdmVydGNtZC5jOjM3OQorIzogZHBrZy1kZWIvYnVpbGQuYzo2MDAgZHBrZy1zcGxpdC9qb2luLmM6NjcgZHBrZy1zcGxpdC9xdWV1ZS5jOjE4OQorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzMTQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE0MDgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIGZpbGUgJyVzJyIKK21zZ3N0ciAiRGF0ZWkgwrslc8KrIGthbm4gbmljaHQgZ2VzY2hsb3NzZW4gd2VyZGVuIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6Mzk2CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB3cml0ZSBkZXRhaWxzIG9mIGAlLjUwcycgdG8gYCUuMjUwcyciCittc2dzdHIgIlNjaHJlaWJlbiBkZXIgRGV0YWlscyDDvGJlciDCuyUuNTBzwqsgbmFjaCDCuyUuMjUwc8KrIGZlaGxnZXNjaGxhZ2VuIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDIzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuICclcycgZm9yIHdyaXRpbmcgJXMgZGF0YWJhc2UiCittc2dzdHIgIsOWZmZuZW4gdm9uIMK7JXPCqyB6dW0gU2NocmVpYmVuIGRlciAlcy1EYXRlbmJhbmsgZmVobGdlc2NobGFnZW4iCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0MjYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNldCBidWZmZXJpbmcgb24gJXMgZGF0YWJhc2UgZmlsZSIKK21zZ3N0ciAiUHVmZmVydW5nIGbDvHIgZGllICVzLURhdGVuYmFua2RhdGVpIGthbm4gbmljaHQgZ2VzZXR6dCB3ZXJkZW4iCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0MzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlICVzIGRhdGFiYXNlIHJlY29yZCBhYm91dCAnJS41MHMnIHRvICclLjI1MHMnIgorbXNnc3RyICJTY2hyZWliZW4gZGVzICVzLURhdGVuc2F0emVzIMO8YmVyIMK7JS41MHPCqyBuYWNoIMK7JS4yNTBzwqsgZmVobGdlc2NobGFnZW4iCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZsdXNoICVzIGRhdGFiYXNlIHRvICclLjI1MHMnIgorbXNnc3RyICJadXLDvGNrc2NocmVpYmVuIGRlciAlcy1EYXRlbmJhbmsgbmFjaCDCuyUuMjUwc8KrIGZlaGxnZXNjaGxhZ2VuIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDQ4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBmc3luYyAlcyBkYXRhYmFzZSB0byAnJS4yNTBzJyIKK21zZ3N0ciAiU3luY2hyb25pc2llcmVuIGRlciAlcy1EYXRlbmJhbmsgbmFjaCDCuyUuMjUwc8KrIGZlaGxnZXNjaGxhZ2VuIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDUxCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjbG9zZSAnJS4yNTBzJyBhZnRlciB3cml0aW5nICVzIGRhdGFiYXNlIgorbXNnc3RyICJTY2hsaWXDn2VuIHZvbiDCuyUuMjUwc8KrIG5hY2ggU2NocmVpYmVuIGRlciAlcy1EYXRlbmJhbmsgZmVobGdlc2NobGFnZW4iCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGxpbmsgJyUuMjUwcycgdG8gJyUuMjUwcycgZm9yIGJhY2t1cCBvZiAlcyBkYXRhYmFzZSIKK21zZ3N0ciAiIgorIlZlcmtuw7xwZmVuIHZvbiDCuyUuMjUwc8KrIG1pdCDCuyUuMjUwc8KrIGZlaGxnZXNjaGxhZ2VuIChmw7xyIFNpY2hlcmhlaXRza29waWUgIgorImRlciAlcy1EYXRlbmJhbmspIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDU4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBpbnN0YWxsICclLjI1MHMnIGFzICclLjI1MHMnIGNvbnRhaW5pbmcgJXMgZGF0YWJhc2UiCittc2dzdHIgIiIKKyJJbnN0YWxsaWVyZW4gdm9uIMK7JS4yNTBzwqsgYWxzIMK7JS4yNTBzwqsgZmVobGdlc2NobGFnZW4gKGVudGjDpGx0ICVzLURhdGVuYmFuaykiCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzo5NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IHVucmVjb3ZlcmFibGUgZmF0YWwgZXJyb3IsIGFib3J0aW5nOlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisiJXM6IG5pY2h0IGJlaGViYmFyZXIgZmF0YWxlciBGZWhsZXIsIEFiYnJ1Y2g6XG4iCisiICVzXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoxMDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBvdXRzaWRlIGVycm9yIGNvbnRleHQsIGFib3J0aW5nOlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisiJXM6IGF1w59lcmhhbGIgZGVzIEZlaGxlcmtvbnRleHRzLCBBYmJydWNoOlxuIgorIiAlc1xuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MTIwCittc2dpZCAib3V0IG9mIG1lbW9yeSBmb3IgbmV3IGVycm9yIGNvbnRleHQiCittc2dzdHIgIlp1IHdlbmlnIFNwZWljaGVyIGbDvHIgbmV1ZW4gRmVobGVya29udGV4dCIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjE4MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IGVycm9yIHdoaWxlIGNsZWFuaW5nIHVwOlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisiJXM6IEZlaGxlciBiZWltIEF1ZnLDpHVtZW46XG4iCisiICVzXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoyMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IHRvbyBtYW55IG5lc3RlZCBlcnJvcnMgZHVyaW5nIGVycm9yIHJlY292ZXJ5ISFcbiIKK21zZ3N0ciAiJXM6IHp1IHZpZWxlIHZlcnNjaGFjaHRlbHRlIEZlaGxlciB3w6RocmVuZCBkZXIgRmVobGVyYmVoZWJ1bmchIVxuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MjY4IGxpYi9kcGtnL2VoYW5kbGUuYzozMDcKK21zZ2lkICJvdXQgb2YgbWVtb3J5IGZvciBuZXcgY2xlYW51cCBlbnRyeSIKK21zZ3N0ciAiWnUgd2VuaWcgU3BlaWNoZXIgZsO8ciBuZXVlbiBBdWZyw6R1bWVpbnRyYWciCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoyOTEKK21zZ2lkICJvdXQgb2YgbWVtb3J5IGZvciBuZXcgY2xlYW51cCBlbnRyeSB3aXRoIG1hbnkgYXJndW1lbnRzIgorbXNnc3RyICJadSB3ZW5pZyBTcGVpY2hlciBmw7xyIG5ldWVuIEF1ZnLDpHVtZWludHJhZyBtaXQgdmllbGVuIEFyZ3VtZW50ZW4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzozNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yOiAlc1xuIgorbXNnc3RyICIlczogRmVobGVyOiAlc1xuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MzkzCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB3YXJuaW5nOiAlc1xuIgorbXNnc3RyICIlczogV2FybnVuZzogJXNcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjQxNgorIywgYy1mb3JtYXQKK21zZ2lkICIlczolczolZDogaW50ZXJuYWwgZXJyb3I6ICVzXG4iCittc2dzdHIgIiVzOiVzOiVkOiBpbnRlcm5lciBGZWhsZXI6ICVzXG4iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGlzIG1pc3NpbmciCittc2dzdHIgIiVzIGZlaGx0IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0OQorIywgYy1mb3JtYXQKK21zZ2lkICInJS41MHMnIGlzIG5vdCBhbGxvd2VkIGZvciAlcyIKK21zZ3N0ciAiwrslLjUwc8KrIGlzdCBuaWNodCBlcmxhdWJ0IGbDvHIgJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjczCisjLCBjLWZvcm1hdAorbXNnaWQgImp1bmsgYWZ0ZXIgJXMiCittc2dzdHIgIlVuc2lubiBoaW50ZXIgJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjg3CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgcGFja2FnZSBuYW1lICglLjI1MHMpIgorbXNnc3RyICJ1bmfDvGx0aWdlciBQYWtldG5hbWUgKCUuMjUwcykiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJlbXB0eSBmaWxlIGRldGFpbHMgZmllbGQgYCVzJyIKK21zZ3N0ciAibGVlcmVzIERhdGVpZGV0YWlsZmVsZCDCuyVzwqsiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjEwNQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGRldGFpbHMgZmllbGQgYCVzJyBub3QgYWxsb3dlZCBpbiBzdGF0dXMgZmlsZSIKK21zZ3N0ciAiRGF0ZWlkZXRhaWxmZWxkIMK7JXPCqyBpbiBTdGF0dXNkYXRlaSBuaWNodCBlcmxhdWJ0IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidG9vIG1hbnkgdmFsdWVzIGluIGZpbGUgZGV0YWlscyBmaWVsZCBgJXMnIChjb21wYXJlZCB0byBvdGhlcnMpIgorbXNnc3RyICJ6dSB2aWVsZSBXZXJ0ZSBpbiBkZW0gRGF0ZWlkZXRhaWxmZWxkIMK7JXPCqyAoaW0gVmVyZ2xlaWNoIHp1IGFuZGVyZW4pIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAidG9vIGZldyB2YWx1ZXMgaW4gZmlsZSBkZXRhaWxzIGZpZWxkIGAlcycgKGNvbXBhcmVkIHRvIG90aGVycykiCittc2dzdHIgInp1IHdlbmlnZSBXZXJ0ZSBpbiBkZW0gRGF0ZWlkZXRhaWxmZWxkIMK7JXPCqyAoaW0gVmVyZ2xlaWNoIHp1IGFuZGVyZW4pIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxNTQKK21zZ2lkICJ5ZXMvbm8gaW4gYm9vbGVhbiBmaWVsZCIKK21zZ3N0ciAieWVzL25vIGluIGJvb2xlc2NoZW0gRmVsZCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTc0Cittc2dpZCAid29yZCBpbiBgcHJpb3JpdHknIGZpZWxkIgorbXNnc3RyICJXb3J0IGltIEZlbGQgwrtwcmlvcml0ecKrIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxODYKK21zZ2lkICJ2YWx1ZSBmb3IgYHN0YXR1cycgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICJXZXJ0IGbDvHIgRmVsZCDCu3N0YXR1c8KrIGlzdCBpbiBkaWVzZW0gS29udGV4dCBuaWNodCBlcmxhdWJ0IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxOTEKK21zZ2lkICJmaXJzdCAod2FudCkgd29yZCBpbiBgc3RhdHVzJyBmaWVsZCIKK21zZ3N0ciAiZXJzdGVzIChHZXfDvG5zY2h0LSlXb3J0IGltIEZlbGQgwrtzdGF0dXPCqyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTk0Cittc2dpZCAic2Vjb25kIChlcnJvcikgd29yZCBpbiBgc3RhdHVzJyBmaWVsZCIKK21zZ3N0ciAiendlaXRlcyAoRmVobGVyLSlXb3J0IGltIEZlbGQgwrtzdGF0dXPCqyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTk3Cittc2dpZCAidGhpcmQgKHN0YXR1cykgd29yZCBpbiBgc3RhdHVzJyBmaWVsZCIKK21zZ3N0ciAiZHJpdHRlcyAoU3RhdHVzLSlXb3J0IGltIEZlbGQgwrtzdGF0dXPCqyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjA3CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGluIFZlcnNpb24gc3RyaW5nICclLjI1MHMnIgorbXNnc3RyICJGZWhsZXIgaW4gVmVyc2lvbnN6ZWljaGVua2V0dGUgwrslLjI1MHPCqyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjE4Cittc2dpZCAib2Jzb2xldGUgYFJldmlzaW9uJyBvciBgUGFja2FnZS1SZXZpc2lvbicgZmllbGQgdXNlZCIKK21zZ3N0ciAidmVyYWx0ZXRlcyBGZWxkIMK7UmV2aXNpb27CqyBvZGVyIMK7UGFja2FnZS1SZXZpc2lvbsKrIGJlbnV0enQiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjIzNQorbXNnaWQgInZhbHVlIGZvciBgY29uZmlnLXZlcnNpb24nIGZpZWxkIG5vdCBhbGxvd2VkIGluIHRoaXMgY29udGV4dCIKK21zZ3N0ciAiV2VydCBmw7xyIEZlbGQgwrtjb25maWctdmVyc2lvbsKrIGlzdCBpbiBkaWVzZW0gS29udGV4dCBuaWNodCBlcmxhdWJ0IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyNDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgaW4gQ29uZmlnLVZlcnNpb24gc3RyaW5nICclLjI1MHMnIgorbXNnc3RyICJGZWhsZXIgaW4gZGVyIENvbmZpZy1WZXJzaW9uLVplaWNoZW5rZXR0ZSDCuyUuMjUwc8KrIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAidmFsdWUgZm9yIGBjb25mZmlsZXMnIGhhcyBtYWxmb3JtYXR0ZWQgbGluZSBgJS4qcyciCittc2dzdHIgIldlcnQgZsO8ciDCu2NvbmZmaWxlc8KrIGVudGjDpGx0IGZhbHNjaCBmb3JtYXRpZXJ0ZSBaZWlsZSDCuyUuKnPCqyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6Mjg3CisjLCBjLWZvcm1hdAorbXNnaWQgInZhbHVlIGZvciBgY29uZmZpbGVzJyBoYXMgbGluZSBzdGFydGluZyB3aXRoIG5vbi1zcGFjZSBgJWMnIgorbXNnc3RyICIiCisiV2VydCBmw7xyIMK7Y29uZmZpbGVzwqsgZW50aMOkbHQgWmVpbGUsIGRpZSBtaXQgTmljaHQtTGVlcnplaWNoZW4gwrslY8KrIGJlZ2lubnQiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjMwNAorbXNnaWQgInJvb3Qgb3IgbnVsbCBkaXJlY3RvcnkgaXMgbGlzdGVkIGFzIGEgY29uZmZpbGUiCittc2dzdHIgIld1cnplbC0gb2RlciBsZWVyZXMgVmVyemVpY2huaXMgaXN0IGFscyBDb25mZmlsZSBhdWZnZWbDvGhydCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MzY1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJgJXMnIGZpZWxkLCBtaXNzaW5nIHBhY2thZ2UgbmFtZSwgb3IgZ2FyYmFnZSB3aGVyZSBwYWNrYWdlIG5hbWUgZXhwZWN0ZWQiCittc2dzdHIgIkZlbGQgwrslc8KrLCBmZWhsZW5kZXIgUGFrZXRuYW1lIG9kZXIgTcO8bGwsIHdvIFBha2V0bmFtZSBlcndhcnRldCB3dXJkZSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MzcwCisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgZmllbGQsIGludmFsaWQgcGFja2FnZSBuYW1lIGAlLjI1NXMnOiAlcyIKK21zZ3N0ciAiRmVsZCDCuyVzwqssIHVuZ8O8bHRpZ2VyIFBha2V0bmFtZSDCuyUuMjU1c8KrOiAlcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDA2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6XG4iCisiIGJhZCB2ZXJzaW9uIHJlbGF0aW9uc2hpcCAlYyVjIgorbXNnc3RyICIiCisiRmVsZCDCuyVzwqssIFJlZmVyZW56IGF1ZiDCuyUuMjU1c8KrOlxuIgorIiBmZWhsZXJoYWZ0ZSBWZXJzaW9uc2FiaMOkbmdpZ2tlaXQgJWMlYyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDEyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6XG4iCisiIGAlYycgaXMgb2Jzb2xldGUsIHVzZSBgJWM9JyBvciBgJWMlYycgaW5zdGVhZCIKK21zZ3N0ciAiIgorIkZlbGQgwrslc8KrLCBSZWZlcmVueiBhdWYgwrslLjI1NXPCqzpcbiIKKyIgwrslY8KrIGlzdCB2ZXJhbHRldCwgYmVudXR6ZW4gU2llIHN0YXR0ZGVzc2VuIMK7JWM9wqsgb2RlciDCuyVjJWPCqyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDIyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6XG4iCisiIGltcGxpY2l0IGV4YWN0IG1hdGNoIG9uIHZlcnNpb24gbnVtYmVyLCBzdWdnZXN0IHVzaW5nIGA9JyBpbnN0ZWFkIgorbXNnc3RyICIiCisiRmVsZCDCuyVzwqssIFJlZmVyZW56IGF1ZiDCuyUuMjU1c8KrOlxuIgorIiBpbXBsaXppdGUgZXhha3RlIMOcYmVyZWluc3RpbW11bmcgbWl0IFZlcnNpb25zbnVtbWVyLCB2aWVsbGVpY2h0IHN0YXR0ZGVzc2VuICIKKyLCuz3CqyBiZW51dHplbiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDMwCittc2dpZCAiT25seSBleGFjdCB2ZXJzaW9ucyBtYXkgYmUgdXNlZCBmb3IgUHJvdmlkZXMiCittc2dzdHIgIk51ciBnZW5hdWUgVmVyc2lvbmVuIGvDtm5uZW4gZsO8ciDCu1Byb3ZpZGVzwqsgYmVudXR6dCB3ZXJkZW4iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQzNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOlxuIgorIiB2ZXJzaW9uIHZhbHVlIHN0YXJ0cyB3aXRoIG5vbi1hbHBoYW51bWVyaWMsIHN1Z2dlc3QgYWRkaW5nIGEgc3BhY2UiCittc2dzdHIgIiIKKyJGZWxkIMK7JXPCqywgUmVmZXJlbnogYXVmIMK7JS4yNTVzwqs6XG4iCisiIFdlcnQgZsO8ciBWZXJzaW9uIGJlZ2lubnQgbWl0IG5pY2h0LWFscGhhbnVtZXJpc2NoZW0gWmVpY2hlbiwgdmllbGxlaWNodCBlaW4gIgorIkxlZXJ6ZWljaGVuIGhpbnp1ZsO8Z2VuIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NTEgbGliL2Rwa2cvZmllbGRzLmM6NDU1CisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzogdmVyc2lvbiBjb250YWlucyBgJWMnIgorbXNnc3RyICJGZWxkIMK7JXPCqywgUmVmZXJlbnogYXVmIMK7JS4yNTVzwqs6IFZlcnNpb24gZW50aMOkbHQgwrslY8KrIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOiB2ZXJzaW9uIHVudGVybWluYXRlZCIKK21zZ3N0ciAiRmVsZCDCuyVzwqssIFJlZmVyZW56IGF1ZiDCuyUuMjU1c8KrOiBWZXJzaW9uIG5pY2h0IGFiZ2VzY2hsb3NzZW4iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ2NQorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gJyUuMjU1cyc6IGVycm9yIGluIHZlcnNpb24iCittc2dzdHIgIkZlbGQgwrslc8KrLCBSZWZlcmVueiBhdWYgwrslLjI1NXPCqzogRmVobGVyIGluIFZlcnNpb24iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ3NQorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGZpZWxkLCBzeW50YXggZXJyb3IgYWZ0ZXIgcmVmZXJlbmNlIHRvIHBhY2thZ2UgYCUuMjU1cyciCittc2dzdHIgIkZlbGQgwrslc8KrLCBTeW50YXhmZWhsZXIgbmFjaCBSZWZlcmVueiB6dSBQYWtldCDCuyUuMjU1c8KrIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmVzIChgfCcpIG5vdCBhbGxvd2VkIGluICVzIGZpZWxkIgorbXNnc3RyICJBbHRlcm5hdGl2ZW4gKMK7fMKrKSBzaW5kIGltIEZlbGQgJXMgbmljaHQgZXJsYXVidCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTM2Cittc2dpZCAidmFsdWUgZm9yIGB0cmlnZ2Vycy1wZW5kaW5nJyBmaWVsZCBub3QgYWxsb3dlZCBpbiB0aGlzIGNvbnRleHQiCittc2dzdHIgIldlcnQgZsO8ciBGZWxkIMK7dHJpZ2dlcnMtcGVuZGluZ8KrIGlzdCBpbiBkaWVzZW0gS29udGV4dCBuaWNodCBlcmxhdWJ0IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWxsZWdhbCBwZW5kaW5nIHRyaWdnZXIgbmFtZSBgJS4yNTVzJzogJXMiCittc2dzdHIgInVuZ8O8bHRpZ2VyIGFuaMOkbmdpZ2VyIFRyaWdnZXJuYW1lIMK7JS4yNTVzwqs6ICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHBlbmRpbmcgdHJpZ2dlciBgJS4yNTVzJyIKK21zZ3N0ciAiZG9wcGVsdGVyIGFuaMOkbmdpZ2VyIFRyaWdnZXIgwrslLjI1NXPCqyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTYxCittc2dpZCAidmFsdWUgZm9yIGB0cmlnZ2Vycy1hd2FpdGVkJyBmaWVsZCBub3QgYWxsb3dlZCBpbiB0aGlzIGNvbnRleHQiCittc2dzdHIgIldlcnQgZsO8ciBGZWxkIMK7dHJpZ2dlcnMtYXdhaXRlZMKrIGlzdCBpbiBkaWVzZW0gS29udGV4dCBuaWNodCBlcmxhdWJ0IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWxsZWdhbCBwYWNrYWdlIG5hbWUgaW4gYXdhaXRlZCB0cmlnZ2VyIGAlLjI1NXMnOiAlcyIKK21zZ3N0ciAidW5nw7xsdGlnZXIgUGFrZXRuYW1lIGluIGVyd2FydGV0ZW0gVHJpZ2dlciDCuyUuMjU1c8KrOiAlcyIKKworIyBDSEVDS01FOiBiZXppZWh0IHNpY2ggwrthd2FpdGVkwqsgYXVmIMK7dHJpZ2dlcsKrIG9kZXIgYXVmIMK7cGFja2FnZcKrPworIzogbGliL2Rwa2cvZmllbGRzLmM6NTc0CisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBhd2FpdGVkIHRyaWdnZXIgcGFja2FnZSBgJS4yNTVzJyIKK21zZ3N0ciAiZG9wcGVsdGVzIGVyd2FydGV0ZXMgVHJpZ2dlcnBha2V0IMK7JS4yNTVzwqsiCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzo1MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBzb3VyY2UgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAiUXVlbGxkYXRlaSDCuyUuMjUwc8KrIGthbm4gbmljaHQgbWl0IHN0YXQgYWJnZWZyYWd0IHdlcmRlbiIKKworIzogbGliL2Rwa2cvZmlsZS5jOjU1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGFuZ2Ugb3duZXJzaGlwIG9mIHRhcmdldCBmaWxlICclLjI1MHMnIgorbXNnc3RyICJFaWdlbnTDvG1lciBkZXIgWmllbGRhdGVpIMK7JS4yNTBzwqsga2FubiBuaWNodCBnZcOkbmRlcnQgd2VyZGVuIgorCisjOiBsaWIvZHBrZy9maWxlLmM6NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNldCBtb2RlIG9mIHRhcmdldCBmaWxlICclLjI1MHMnIgorbXNnc3RyICJadWdyaWZmc3JlY2h0ZSBkZXIgWmllbGRhdGVpIMK7JS4yNTBzwqsga8O2bm5lbiBuaWNodCBnZXNldHp0IHdlcmRlbiIKKworIzogbGliL2Rwa2cvZmlsZS5jOjg1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB1bmxvY2sgJXMiCittc2dzdHIgIiVzIGthbm4gbmljaHQgZW50c3BlcnJ0IHdlcmRlbiIKKworIzogbGliL2Rwa2cvZmlsZS5jOjExMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hlY2sgZmlsZSAnJXMnIGxvY2sgc3RhdHVzIgorbXNnc3RyICJTcGVycnN0YXR1cyBkZXIgRGF0ZWkgwrslc8KrIGthbm4gbmljaHQgw7xiZXJwcsO8ZnQgd2VyZGVuIgorCisjOiBsaWIvZHBrZy9maWxlLmM6MTQ2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGlzIGxvY2tlZCBieSBhbm90aGVyIHByb2Nlc3MiCittc2dzdHIgIiVzIGlzdCB2b24gZWluZW0gYW5kZXJlbiBQcm96ZXNzIGdlc3BlcnJ0IgorCisjOiBsaWIvZHBrZy9maWxlLmM6MTQ4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBsb2NrICVzIgorbXNnc3RyICIlcyBrYW5uIG5pY2h0IGdlc3BlcnJ0IHdlcmRlbiIKKworIzogbGliL2Rwa2cvbG9nLmM6NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGRuJ3Qgb3BlbiBsb2cgYCVzJzogJXNcbiIKK21zZ3N0ciAiUHJvdG9rb2xsLURhdGVpIMK7JXPCqyBrb25udGUgbmljaHQgZ2XDtmZmbmV0IHdlcmRlbjogJXNcbiIKKworIzogbGliL2Rwa2cvbG9nLmM6ODUKK21zZ2lkICI8cGFja2FnZSBzdGF0dXMgYW5kIHByb2dyZXNzIGZpbGUgZGVzY3JpcHRvcj4iCittc2dzdHIgIjxEYXRlaWRlc2tyaXB0b3IgZsO8ciBQYWtldHN0YXR1cyB1bmQgRm9ydHNjaHJpdHQ+IgorCisjOiBsaWIvZHBrZy9sb2cuYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIHRvIHN0YXR1cyBmZCAlZCIKK21zZ3N0ciAiTmFjaCBTdGF0dXMtRGF0ZWlkZXNrcmlwdG9yICVkIGthbm4gbmljaHQgZ2VzY2hyaWViZW4gd2VyZGVuIgorCisjOiBsaWIvZHBrZy9tbGliLmM6NDQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MgorIywgYy1mb3JtYXQKK21zZ2lkICJtYWxsb2MgZmFpbGVkICglenUgYnl0ZXMpIgorbXNnc3RyICJtYWxsb2MgZmVobGdlc2NobGFnZW4gKCV6dSBCeXRlKSIKKworIzogbGliL2Rwa2cvbWxpYi5jOjU4CisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWxsb2MgZmFpbGVkICglenUgYnl0ZXMpIgorbXNnc3RyICJyZWFsbG9jIGZlaGxnZXNjaGxhZ2VuICglenUgQnl0ZSkiCisKKyM6IGxpYi9kcGtnL21saWIuYzo3MiBsaWIvZHBrZy9tbGliLmM6OTAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI3NworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjMzNCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTEwNworbXNnaWQgImZhaWxlZCB0byBhbGxvY2F0ZSBtZW1vcnkiCittc2dzdHIgIlNwZWljaGVyenV3ZWlzdW5nIGZlaGxnZXNjaGxhZ2VuIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBkdXAgZm9yIHN0ZCVzIgorbXNnc3RyICJkdXAgZmVobGdlc2NobGFnZW4gZsO8ciBzdGQlcyIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEwMworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZHVwIGZvciBmZCAlZCIKK21zZ3N0ciAiZHVwIGZlaGxnZXNjaGxhZ2VuIGbDvHIgRGF0ZWlkZXNrcmlwdG9yICVkIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTA5Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBwaXBlIgorbXNnc3RyICJQaXBlIGtvbm50ZSBuaWNodCBhbmdlbGVndCB3ZXJkZW4iCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igd3JpdGluZyB0byAnJXMnIgorbXNnc3RyICJGZWhsZXIgYmVpbSBTY2hyZWliZW4gdm9uIMK7JXPCqyIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBmaWxlZGVzY3JpcHRvciBmbGFncyBmb3IgJS4yNTBzIgorbXNnc3RyICJEYXRlaWRlc2tyaXB0b3JmbGFncyBmw7xyIMK7JS4yNTBzwqsga8O2bm5lbiBuaWNodCBnZWxlc2VuIHdlcmRlbiIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEyNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IGNsb3NlLW9uLWV4ZWMgZmxhZyBmb3IgJS4yNTBzIgorbXNnc3RyICLCu2Nsb3NlLW9uLWV4ZWPCqy1GbGFnIGbDvHIgwrslLjI1MHPCqyBrYW5uIG5pY2h0IGdlc2V0enQgd2VyZGVuIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmlndXJhdGlvbiBlcnJvcjogJXM6JWQ6ICVzIgorbXNnc3RyICJLb25maWd1cmF0aW9uc2ZlaGxlcjogJXM6JWQ6ICVzIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gY29uZmlndXJhdGlvbiBmaWxlICclLjI1NXMnIGZvciByZWFkaW5nOiAlcyIKK21zZ3N0ciAiw5ZmZm5lbiBkZXIgS29uZmlndXJhdGlvbnNkYXRlaSDCuyUuMjU1c8KrIHp1bSBMZXNlbiBmZWhsZ2VzY2hsYWdlbjogJXMiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5iYWxhbmNlZCBxdW90ZXMgaW4gJyVzJyIKK21zZ3N0ciAidW5hdXNnZWdsaWNoZW5lIEFuZsO8aHJ1bmdzemVpY2hlbiBpbiDCuyVzwqsiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gJyVzJyIKK21zZ3N0ciAidW5iZWthbm50ZSBPcHRpb24gwrslc8KrIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTIxCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgbmVlZHMgYSB2YWx1ZSIKK21zZ3N0ciAiwrslc8KrIGJlbsO2dGlndCBlaW5lbiBXZXJ0IgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTI3CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgZG9lcyBub3QgdGFrZSBhIHZhbHVlIgorbXNnc3RyICLCuyVzwqsgYWt6ZXB0aWVydCBrZWluZSBXZXJ0ZSIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjEzMworIywgYy1mb3JtYXQKK21zZ2lkICJyZWFkIGVycm9yIGluIGNvbmZpZ3VyYXRpb24gZmlsZSBgJS4yNTVzJyIKK21zZ3N0ciAiTGVzZWZlaGxlciBpbiBLb25maWd1cmF0aW9uc2RhdGVpIMK7JS4yNTVzwqsiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyBjb25maWd1cmF0aW9uIGZpbGUgYCUuMjU1cyciCittc2dzdHIgIkZlaGxlciBiZWltIFNjaGxpZcOfZW4gZGVyIEtvbmZpZ3VyYXRpb25zZGF0ZWkgwrslLjI1NXPCqyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjE3MAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBvcGVuaW5nIGNvbmZpZ3VyYXRpb24gZGlyZWN0b3J5ICclcyciCittc2dzdHIgIkZlaGxlciBiZWltIMOWZmZuZW4gZGVzIEtvbmZpZ3VyYXRpb25zdmVyemVpY2huaXNzZXMgwrslc8KrIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjI4CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gb3B0aW9uIC0tJXMiCittc2dzdHIgInVuYmVrYW5udGUgT3B0aW9uIC0tJXMiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBvcHRpb24gdGFrZXMgYSB2YWx1ZSIKK21zZ3N0ciAiT3B0aW9uIC0tJXMgYmVuw7Z0aWd0IGVpbmVuIFdlcnQiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBvcHRpb24gZG9lcyBub3QgdGFrZSBhIHZhbHVlIgorbXNnc3RyICJPcHRpb24gLS0lcyBha3plcHRpZXJ0IGtlaW5lIFdlcnRlIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gb3B0aW9uIC0lYyIKK21zZ3N0ciAidW5iZWthbm50ZSBPcHRpb24gLSVjIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjUwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0lYyBvcHRpb24gdGFrZXMgYSB2YWx1ZSIKK21zZ3N0ciAiT3B0aW9uIC0lYyBiZW7DtnRpZ3QgZWluZW4gV2VydCIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI1OAorIywgYy1mb3JtYXQKK21zZ2lkICItJWMgb3B0aW9uIGRvZXMgbm90IHRha2UgYSB2YWx1ZSIKK21zZ3N0ciAiT3B0aW9uIC0lYyBha3plcHRpZXJ0IGtlaW5lIFdlcnRlIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjcxCisjLCBjLWZvcm1hdAorbXNnaWQgIm9ic29sZXRlIG9wdGlvbiAnLS0lcydcbiIKK21zZ3N0ciAidmVyYWx0ZXRlIE9wdGlvbiDCuy0tJXPCq1xuIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6Mjg3CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZsaWN0aW5nIGFjdGlvbnMgLSVjICgtLSVzKSBhbmQgLSVjICgtLSVzKSIKK21zZ3N0ciAiQWt0aW9uZW4gLSVjICgtLSVzKSB1bmQgLSVjICgtLSVzKSBzdGVoZW4gaW4gS29uZmxpa3QiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSB2YWx1ZSBmb3IgYCVzJyBmaWVsZCIKK21zZ3N0ciAiZG9wcGVsdGVyIFdlcnQgZsO8ciBGZWxkIMK7JXPCqyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoxNDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidXNlci1kZWZpbmVkIGZpZWxkIG5hbWUgYCUuKnMnIHRvbyBzaG9ydCIKK21zZ3N0ciAiYmVudXR6ZXJkZWZpbmllcnRlciBGZWxkbmFtZSDCuyUuKnPCqyBpc3QgenUga3VyeiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoxNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHZhbHVlIGZvciB1c2VyLWRlZmluZWQgZmllbGQgYCUuKnMnIgorbXNnc3RyICJkb3BwZWx0ZXIgV2VydCBmw7xyIGJlbnV0emVyZGVmaW5pZXJ0ZXMgRmVsZCDCuyUuKnPCqyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMDcKK21zZ2lkICJDb25maWd1cmVkLVZlcnNpb24gZm9yIHBhY2thZ2Ugd2l0aCBpbmFwcHJvcHJpYXRlIFN0YXR1cyIKK21zZ3N0ciAiQ29uZmlndXJlZC1WZXJzaW9uIGbDvHIgUGFrZXQgbWl0IHVucGFzc2VuZGVtIFN0YXR1cyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzICVzIGJ1dCB0cmlnZ2VycyBhcmUgYXdhaXRlZCIKK21zZ3N0ciAiUGFrZXQgaGF0IFN0YXR1cyAlcywgYWJlciBUcmlnZ2VyIHdlcmRlbiBlcndhcnRldCIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMjIKK21zZ2lkICJwYWNrYWdlIGhhcyBzdGF0dXMgdHJpZ2dlcnMtYXdhaXRlZCBidXQgbm8gdHJpZ2dlcnMgYXdhaXRlZCIKK21zZ3N0ciAiUGFrZXQgaGF0IFN0YXR1cyDCu3RyaWdnZXJzLWF3YWl0ZWTCqywgZXJ3YXJ0ZXQgYWJlciBrZWluZSBUcmlnZ2VyIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjIyOAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGhhcyBzdGF0dXMgJXMgYnV0IHRyaWdnZXJzIGFyZSBwZW5kaW5nIgorbXNnc3RyICJQYWtldCBoYXQgU3RhdHVzICVzLCBhYmVyIFRyaWdnZXIgc2luZCBhbmjDpG5naWciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjMyCittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzIHRyaWdnZXJzLXBlbmRpbmcgYnV0IG5vIHRyaWdnZXJzIHBlbmRpbmciCittc2dzdHIgIlBha2V0IGhhdCBTdGF0dXMgwrt0cmlnZ2Vycy1wZW5kaW5nwqssIGFiZXIga2VpbmUgVHJpZ2dlciBzaW5kIGFuaMOkbmdpZyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyNDIKK21zZ2lkICJQYWNrYWdlIHdoaWNoIGluIHN0YXRlIG5vdC1pbnN0YWxsZWQgaGFzIGNvbmZmaWxlcywgZm9yZ2V0dGluZyB0aGVtIgorbXNnc3RyICJQYWtldCBtaXQgZGVtIFN0YXR1cyDCu25pY2h0IGluc3RhbGxpZXJ0wqsgaGF0IENvbmZmaWxlcywgdmVyZ2Vzc2Ugc2llIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjMzNQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiBwYWNrYWdlIGluZm8gZmlsZSBgJS4yNTVzJyBmb3IgcmVhZGluZyIKK21zZ3N0ciAiw5ZmZm5lbiBkZXIgUGFrZXQtSW5mb2RhdGVpIMK7JS4yNTVzwqsgenVtIExlc2VuIGZlaGxnZXNjaGxhZ2VuIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjM0MQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW4ndCBzdGF0IHBhY2thZ2UgaW5mbyBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICJQYWtldC1JbmZvZGF0ZWkgwrslLjI1NXPCqyBrYW5uIG5pY2h0IG1pdCBzdGF0IGFiZ2VmcmFndCB3ZXJkZW4iCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzQ3CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbid0IG1tYXAgcGFja2FnZSBpbmZvIGZpbGUgYCUuMjU1cyciCittc2dzdHIgIlBha2V0LUluZm9kYXRlaSDCuyUuMjU1c8KrIGthbm4gbmljaHQgbWl0IG1tYXAgZ2VsYWRlbiB3ZXJkZW4iCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzUyCisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWRpbmcgcGFja2FnZSBpbmZvIGZpbGUgJyUuMjU1cyciCittc2dzdHIgIkxlc2VuIGRlciBQYWtldC1JbmZvZGF0ZWkgwrslLjI1NXPCqyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNsb3NlIGFmdGVyIHJlYWQ6IGAlLjI1NXMnIgorbXNnc3RyICJTY2hsaWXDn2VuIG5hY2ggZGVtIExlc2VuIGZlaGxnZXNjaGxhZ2VuOiDCuyUuMjU1c8KrIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQwNAorIywgYy1mb3JtYXQKK21zZ2lkICJFT0YgYWZ0ZXIgZmllbGQgbmFtZSBgJS4qcyciCittc2dzdHIgIkVPRiBuYWNoIEZlbGRuYW1lIMK7JS4qc8KrIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQwNworIywgYy1mb3JtYXQKK21zZ2lkICJuZXdsaW5lIGluIGZpZWxkIG5hbWUgYCUuKnMnIgorbXNnc3RyICJaZWlsZW52b3JzY2h1YiBpbSBGZWxkbmFtZW4gwrslLipzwqsiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDEwCisjLCBjLWZvcm1hdAorbXNnaWQgIk1TRE9TIEVPRiAoXlopIGluIGZpZWxkIG5hbWUgYCUuKnMnIgorbXNnc3RyICJNUy1ET1MtRU9GICheWikgaW0gRmVsZG5hbWVuIMK7JS4qc8KrIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQxNAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWVsZCBuYW1lIGAlLipzJyBtdXN0IGJlIGZvbGxvd2VkIGJ5IGNvbG9uIgorbXNnc3RyICJuYWNoIEZlbGRuYW1lIMK7JS4qc8KrIG11c3MgZWluIERvcHBlbHB1bmt0IGZvbGdlbiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiRU9GIGJlZm9yZSB2YWx1ZSBvZiBmaWVsZCBgJS4qcycgKG1pc3NpbmcgZmluYWwgbmV3bGluZSkiCittc2dzdHIgIiIKKyJFT0Ygdm9yIGVpbmVtIFdlcnQgZsO8ciBkYXMgRmVsZCDCuyUuKnPCqyAoYWJzY2hsaWXDn2VuZGVyIFplaWxlbnZvcnNjaHViIGZlaGx0KSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiTVNET1MgRU9GIGNoYXIgaW4gdmFsdWUgb2YgZmllbGQgYCUuKnMnIChtaXNzaW5nIG5ld2xpbmU/KSIKK21zZ3N0ciAiIgorIk1TLURPUy1FT0YtWmVpY2hlbiBpbSBXZXJ0IGRlcyBGZWxkZXMgwrslLipzwqsgKGZlaGxlbmRlciBaZWlsZW52b3JzY2h1Yj8pIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQ0MAorIywgYy1mb3JtYXQKK21zZ2lkICJibGFuayBsaW5lIGluIHZhbHVlIG9mIGZpZWxkICclLipzJyIKK21zZ3N0ciAiTGVlcnplaWxlIGltIFdlcnQgZGVzIEZlbGRuYW1lbiDCuyUuKnPCqyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiRU9GIGR1cmluZyB2YWx1ZSBvZiBmaWVsZCBgJS4qcycgKG1pc3NpbmcgZmluYWwgbmV3bGluZSkiCittc2dzdHIgIiIKKyJFT0YgaW0gV2VydCBkZXMgRmVsZGVzIMK7JS4qc8KrIChmZWhsZW5kZXIgYWJzY2hsaWXDn2VuZGVyIFplaWxlbnZvcnNjaHViKSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo1NDYKK21zZ2lkICJzZXZlcmFsIHBhY2thZ2UgaW5mbyBlbnRyaWVzIGZvdW5kLCBvbmx5IG9uZSBhbGxvd2VkIgorbXNnc3RyICJtZWhyZXJlIFBha2V0aW5mby1FaW50csOkZ2UgZ2VmdW5kZW4sIG51ciBlaW5lciBlcmxhdWJ0IgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjU3MgorIywgYy1mb3JtYXQKK21zZ2lkICJubyBwYWNrYWdlIGluZm9ybWF0aW9uIGluIGAlLjI1NXMnIgorbXNnc3RyICJrZWluZSBQYWtldGluZm9ybWF0aW9uZW4gaW4gwrslLjI1NXPCqyIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInBhcnNpbmcgZmlsZSAnJS4yNTVzJyBuZWFyIGxpbmUgJWQgcGFja2FnZSAnJS4yNTVzJzpcbiIKKyIgJS4yNTVzIgorbXNnc3RyICIiCisiUGFyc2VuIGRlciBEYXRlaSDCuyUuMjU1c8KrLCBuYWhlIFplaWxlICVkIFBha2V0IMK7JS4yNTVzwqs6XG4iCisiICUuMjU1cyIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInBhcnNpbmcgZmlsZSAnJS4yNTVzJyBuZWFyIGxpbmUgJWQ6XG4iCisiICUuMjU1cyIKK21zZ3N0ciAiIgorIlBhcnNlbiBkZXIgRGF0ZWkgwrslLjI1NXPCqywgbmFoZSBaZWlsZSAlZDpcbiIKKyIgJS4yNTVzIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoxMjUKK21zZ2lkICJtYXkgbm90IGJlIGVtcHR5IHN0cmluZyIKK21zZ3N0ciAiZGFyZiBrZWluZSBsZWVyZSBaZWljaGVua2V0dGUgc2VpbiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MTI3Cittc2dpZCAibXVzdCBzdGFydCB3aXRoIGFuIGFscGhhbnVtZXJpYyBjaGFyYWN0ZXIiCittc2dzdHIgIm11c3MgbWl0IGFscGhhbnVtZXJpc2NoZW0gWmVpY2hlbiBiZWdpbm5lbiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MTM2CisjLCBjLWZvcm1hdAorbXNnaWQgImNoYXJhY3RlciBgJWMnIG5vdCBhbGxvd2VkIChvbmx5IGxldHRlcnMsIGRpZ2l0cyBhbmQgY2hhcmFjdGVycyBgJXMnKSIKK21zZ3N0ciAiIgorIlplaWNoZW4gwrslY8KrIG5pY2h0IGVybGF1YnQgKG51ciBCdWNoc3RhYmVuLCBaaWZmZXJuIHVuZCBkaWUgWmVpY2hlbiDCuyVzwqspIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoxNzgKK21zZ2N0eHQgInZlcnNpb24iCittc2dpZCAiPG5vbmU+IgorbXNnc3RyICI8a2VpbmU+IgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyMDkKK21zZ2lkICJ2ZXJzaW9uIHN0cmluZyBpcyBlbXB0eSIKK21zZ3N0ciAiVmVyc2lvbnN6ZWljaGVua2V0dGUgaXN0IGxlZXIiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjIyNAorbXNnaWQgInZlcnNpb24gc3RyaW5nIGhhcyBlbWJlZGRlZCBzcGFjZXMiCittc2dzdHIgIlZlcnNpb25zemVpY2hlbmtldHRlIGVudGjDpGx0IExlZXJ6ZWljaGVuIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyMzAKK21zZ2lkICJlcG9jaCBpbiB2ZXJzaW9uIGlzIG5vdCBudW1iZXIiCittc2dzdHIgIkVwb2NoZSBpbiBkZXIgVmVyc2lvbiBpc3Qga2VpbmUgWmFobCIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjMyCittc2dpZCAibm90aGluZyBhZnRlciBjb2xvbiBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAibmljaHRzIGhpbnRlciBEb3BwZWxwdW5rdCBpbiBWZXJzaW9uc251bW1lciIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjQ3Cittc2dpZCAidmVyc2lvbiBudW1iZXIgZG9lcyBub3Qgc3RhcnQgd2l0aCBkaWdpdCIKK21zZ3N0ciAiVmVyc2lvbnNudW1tZXIgYmVnaW5udCBuaWNodCBtaXQgZWluZXIgWmlmZmVyIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyNTAKK21zZ2lkICJpbnZhbGlkIGNoYXJhY3RlciBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAidW5nw7xsdGlnZXMgWmVpY2hlbiBpbiBWZXJzaW9uc251bW1lciIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjU0Cittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgaW4gcmV2aXNpb24gbnVtYmVyIgorbXNnc3RyICJ1bmfDvGx0aWdlcyBaZWljaGVuIGluIFJldmlzaW9uc251bW1lciIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6Mjk5IGxpYi9kcGtnL3BhcnNlaGVscC5jOjMxMQorIywgYy1mb3JtYXQKK21zZ2lkICJtaXNzaW5nICVzIgorbXNnc3RyICIlcyBmZWhsdCIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MzAxIGxpYi9kcGtnL3BhcnNlaGVscC5jOjMxNAorIywgYy1mb3JtYXQKK21zZ2lkICJlbXB0eSB2YWx1ZSBmb3IgJXMiCittc2dzdHIgImxlZXJlciBXZXJ0IGbDvHIgJXMiCisKKyM6IGxpYi9kcGtnL3BrZy1mb3JtYXQuYzo4MAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGNoYXJhY3RlciBgJWMnIGluIGZpZWxkIHdpZHRoXG4iCittc2dzdHIgInVuZ8O8bHRpZ2VzIFplaWNoZW4gwrslY8KrIGluIEZlbGRicmVpdGVcbiIKKworIzogbGliL2Rwa2cvcGtnLWZvcm1hdC5jOjE3MgorIywgYy1mb3JtYXQKK21zZ2lkICJDbG9zaW5nIGJyYWNlIG1pc3NpbmcgaW4gZm9ybWF0XG4iCittc2dzdHIgIlNjaGxpZcOfZW5kZSBLbGFtbWVyIGZlaGx0IGluIEZvcm1hdFxuIgorCisjOiBsaWIvZHBrZy9wa2ctc2hvdy5jOjQwCittc2dpZCAiKG5vIGRlc2NyaXB0aW9uIGF2YWlsYWJsZSkiCittc2dzdHIgIihrZWluZSBCZXNjaHJlaWJ1bmcgdm9yaGFuZGVuKSIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjU1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpZ25vcmUgc2lnbmFsICVzIGJlZm9yZSBydW5uaW5nICUuMjUwcyIKK21zZ3N0ciAiU2lnbmFsICVzIGthbm4gdm9yIEF1c2bDvGhydW5nIHZvbiAlLjI1MHMgbmljaHQgaWdub3JpZXJ0IHdlcmRlbiIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjY4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHVuLWNhdGNoaW5nIHNpZ25hbCAlczogJXNcbiIKK21zZ3N0ciAiRmVobGVyIGJlaW0gbmljaHQtbWVoci1BYmZhbmdlbiBkZXMgU2lnbmFscyAlczogJXNcbiIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjc4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIChzdWJwcm9jZXNzKTogJXNcbiIKK21zZ3N0ciAiJXMgKFVudGVycHJvemVzcyk6ICVzXG4iCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzo4OSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NDU0Cittc2dpZCAiZm9yayBmYWlsZWQiCittc2dzdHIgImZvcmsgZmVobGdlc2NobGFnZW4iCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMTkKKyMsIGMtZm9ybWF0Cittc2dpZCAic3VicHJvY2VzcyAlcyByZXR1cm5lZCBlcnJvciBleGl0IHN0YXR1cyAlZCIKK21zZ3N0ciAiVW50ZXJwcm96ZXNzICVzIGdhYiBkZW4gRmVobGVyd2VydCAlZCB6dXLDvGNrIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTI4CisjLCBjLWZvcm1hdAorbXNnaWQgInN1YnByb2Nlc3MgJXMgd2FzIGludGVycnVwdGVkIgorbXNnc3RyICJVbnRlcnByb3plc3MgJXMgd3VyZGUgdW50ZXJicm9jaGVuIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTMwCisjLCBjLWZvcm1hdAorbXNnaWQgInN1YnByb2Nlc3MgJXMgd2FzIGtpbGxlZCBieSBzaWduYWwgKCVzKSVzIgorbXNnc3RyICJVbnRlcnByb3plc3MgJXMgd3VyZGUgZHVyY2ggU2lnbmFsICglcyklcyBnZXTDtnRldCIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEzMgorbXNnaWQgIiwgY29yZSBkdW1wZWQiCittc2dzdHIgIiwgU3BlaWNoZXJhYmJpbGQgZXJ6ZXVndCIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJzdWJwcm9jZXNzICVzIGZhaWxlZCB3aXRoIHdhaXQgc3RhdHVzIGNvZGUgJWQiCittc2dzdHIgIlVudGVycHJvemVzcyAlcyBtaXQgV2FydGUtU3RhdHVzd2VydCAlZCBmZWhsZ2VzY2hsYWdlbiIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjE1MSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NDYxCisjLCBjLWZvcm1hdAorbXNnaWQgIndhaXQgZm9yIHN1YnByb2Nlc3MgJXMgZmFpbGVkIgorbXNnc3RyICJXYXJ0ZW4gYXVmIFVudGVycHJvemVzcyAlcyBmZWhsZ2VzY2hsYWdlbiIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBwYWNrYWdlIG5hbWUgYCUuMjUwcycgaW4gdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorInVuZ8O8bHRpZ2VyIFBha2V0bmFtZSDCuyUuMjUwc8KrIGluIERhdGVpIHp1csO8Y2tnZXN0ZWxsdGVyIFRyaWdnZXIgwrslLjI1MHPCqyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJ1bmNhdGVkIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImFiZ2VzY2huaXR0ZW5lIERhdGVpIHp1csO8Y2tnZXN0ZWxsdGVyIFRyaWdnZXIgwrslLjI1MHPCqyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yIGluIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcycgYXQgY2hhcmFjdGVyIGAlcyclcyIKK21zZ3N0ciAiIgorIlN5bnRheGZlaGxlciBpbiBEYXRlaSB6dXLDvGNrZ2VzdGVsbHRlciBUcmlnZ2VyIMK7JS4yNTBzwqsgYmVpIFplaWNoZW4gwrslc8KrJXMiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3Blbi9jcmVhdGUgdHJpZ2dlcnMgbG9ja2ZpbGUgYCUuMjUwcyciCittc2dzdHIgIlRyaWdnZXItU3BlcnJkYXRlaSDCuyUuMjUwc8KrIGthbm4gbmljaHQgZ2XDtmZmbmV0L2FuZ2VsZWd0IHdlcmRlbiIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MTQxCittc2dpZCAidHJpZ2dlcnMgYXJlYSIKK21zZ3N0ciAiVHJpZ2dlcmJlcmVpY2giCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjE1MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisiRGF0ZWkgenVyw7xja2dlc3RlbGx0ZXIgVHJpZ2dlciDCuyUuMjUwc8KrIGthbm4gbmljaHQgbWl0IHN0YXQgYWJnZWZyYWd0IHdlcmRlbiIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MTY1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIkRhdGVpIHp1csO8Y2tnZXN0ZWxsdGVyIFRyaWdnZXIgwrslLjI1MHPCqyBrYW5uIG5pY2h0IGdlw7ZmZm5ldCB3ZXJkZW4iCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjE3OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3Blbi9jcmVhdGUgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKyJOZXVlIERhdGVpIHp1csO8Y2tnZXN0ZWxsdGVyIFRyaWdnZXIgwrslLjI1MHPCqyBrYW5uIG5pY2h0IGdlw7ZmZm5ldC9hbmdlbGVndCAiCisid2VyZGVuIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoyMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcmVhZGluZyB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJGZWhsZXIgYmVpbSBMZXNlbiBkZXIgRGF0ZWkgenVyw7xja2dlc3RlbGx0ZXIgVHJpZ2dlciAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjIyMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKyJOZXVlIERhdGVpIHp1csO8Y2tnZXN0ZWxsdGVyIFRyaWdnZXIgwrslLjI1MHPCqyBrYW5uIG5pY2h0IGdlc2NocmllYmVuIHdlcmRlbiIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MjI4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorIk5ldWUgRGF0ZWkgenVyw7xja2dlc3RlbGx0ZXIgVHJpZ2dlciDCuyUuMjUwc8KrIGthbm4gbmljaHQgZ2VzY2hsb3NzZW4gd2VyZGVuIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKyJOZXVlIERhdGVpIHp1csO8Y2tnZXN0ZWxsdGVyIFRyaWdnZXIgwrslLjI1MHPCqyBrYW5uIG5pY2h0IGluc3RhbGxpZXJ0IHdlcmRlbiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjIyMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiaW52YWxpZCBvciB1bmtub3duIHN5bnRheCBpbiB0cmlnZ2VyIG5hbWUgYCUuMjUwcycgKGluIHRyaWdnZXIgaW50ZXJlc3RzIGZvciAiCisicGFja2FnZSBgJS4yNTBzJykiCittc2dzdHIgIiIKKyJ1bmfDvGx0aWdlIG9kZXIgdW5iZWthbm50ZSBTeW50YXggaW4gVHJpZ2dlcm5hbWUgwrslLjI1MHPCqyAoaW4gVHJpZ2dlci0iCisiSW50ZXJlc3NlbiBmw7xyIFBha2V0IMK7JS4yNTBzwqspIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MjYzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuIHRyaWdnZXIgaW50ZXJlc3QgbGlzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLDlmZmbmVuIGRlciBUcmlnZ2VyLUludGVyZXNzZW4tTGlzdGVuZGF0ZWkgwrslLjI1MHPCqyBmZWhsZ2VzY2hsYWdlbiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjI5MgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmV3aW5kIHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiWnVyw7xja3NldHplbiBkZXIgVHJpZ2dlci1JbnRlcmVzc2VuZGF0ZWkgwrslLjI1MHPCqyBmZWhsZ2VzY2hsYWdlbiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMwNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIHN5bnRheCBlcnJvcjsgaWxsZWdhbCBwYWNrYWdlIG5hbWUgYCUuMjUwcyc6ICIKKyIlLjI1MHMiCittc2dzdHIgIiIKKyJTeW50YXhmZWhsZXIgaW4gVHJpZ2dlci1JbnRlcmVzc2VuZGF0ZWkgwrslLjI1MHPCqzsgdW5nw7xsdGlnZXIgUGFrZXRuYW1lICIKKyLCuyUuMjUwc8KrOiAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIk5ldWUgVHJpZ2dlci1JbnRlcmVzc2VuZGF0ZWkgwrslLjI1MHPCqyBrYW5uIG5pY2h0IGdlc2NocmllYmVuIHdlcmRlbiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMyMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAiIgorIk5ldWUgVHJpZ2dlci1JbnRlcmVzc2VuZGF0ZWkgwrslLjI1MHPCqyBrYW5uIG5pY2h0IHp1csO8Y2tnZXNjaHJpZWJlbiB3ZXJkZW4iCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAiTmV1ZSBUcmlnZ2VyLUludGVyZXNzZW5kYXRlaSDCuyUuMjUwc8KrIGthbm4gbmljaHQgc3luY2hyb25pc2llcnQgd2VyZGVuIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzMyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIk5ldWUgVHJpZ2dlci1JbnRlcmVzc2VuZGF0ZWkgwrslLjI1MHPCqyBrYW5uIG5pY2h0IGluc3RhbGxpZXJ0IHdlcmRlbiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjM0MCBsaWIvZHBrZy90cmlnbGliLmM6MzQyIGxpYi9kcGtnL3RyaWdsaWIuYzo0NzIKKyM6IHNyYy9yZW1vdmUuYzoyODYgc3JjL3JlbW92ZS5jOjM3NworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVtb3ZlIGAlLjI1MHMnIgorbXNnc3RyICLCuyUuMjUwc8KrIGthbm4gbmljaHQgZW50ZmVybnQgd2VyZGVuIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzYwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiTmV1ZSBUcmlnZ2VyLUludGVyZXNzZW5kYXRlaSDCuyUuMjUwc8KrIGthbm4gbmljaHQgYW5nZWxlZ3Qgd2VyZGVuIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzgzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJOZXVlIFRyaWdnZXItSW50ZXJlc3NlbmRhdGVpIMK7JS4yNTBzwqsga2FubiBuaWNodCBnZXNjaGxvc3NlbiB3ZXJkZW4iCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0NTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImR1cGxpY2F0ZSBmaWxlIHRyaWdnZXIgaW50ZXJlc3QgZm9yIGZpbGVuYW1lIGAlLjI1MHMnIGFuZCBwYWNrYWdlIGAlLjI1MHMnIgorbXNnc3RyICIiCisiZG9wcGVsdGVzIERhdGVpdHJpZ2dlci1JbnRlcmVzc2UgZsO8ciBEYXRlaW5hbWUgwrslLjI1MHPCqyB1bmQgUGFrZXQgwrslLjI1MHPCqyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ4MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIk5ldWUgRGF0ZWl0cmlnZ2VyLURhdGVpIMK7JS4yNTBzwqsga2FubiBuaWNodCBhbmdlbGVndCB3ZXJkZW4iCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0OTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIk5ldWUgRGF0ZWl0cmlnZ2VyLURhdGVpIMK7JS4yNTBzwqsga2FubiBuaWNodCBnZXNjaHJpZWJlbiB3ZXJkZW4iCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0OTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgJyUuMjUwcyciCittc2dzdHIgIk5ldWUgRGF0ZWl0cmlnZ2VyLURhdGVpIMK7JS4yNTBzwqsga2FubiBuaWNodCB6dXLDvGNrZ2VzY2hyaWViZW4gd2VyZGVuIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDk5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzeW5jIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgJyUuMjUwcyciCittc2dzdHIgIk5ldWUgRGF0ZWl0cmlnZ2VyLURhdGVpIMK7JS4yNTBzwqsga2FubiBuaWNodCBzeW5jaHJvbmlzaWVydCB3ZXJkZW4iCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1MDMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIk5ldWUgRGF0ZWl0cmlnZ2VyLURhdGVpIMK7JS4yNTBzwqsga2FubiBuaWNodCBnZXNjaGxvc3NlbiB3ZXJkZW4iCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1MDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSBhcyBgJS4yNTBzJyIKK21zZ3N0ciAiTmV1ZSBEYXRlaXRyaWdnZXItRGF0ZWkga2FubiBuaWNodCBhbHMgwrslLjI1MHPCqyBpbnN0YWxsaWVydCB3ZXJkZW4iCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1NDIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJEYXRlaXRyaWdnZXItRGF0ZWkgwrslLjI1MHPCqyBrYW5uIG5pY2h0IGdlbGVzZW4gd2VyZGVuIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTUyCisjLCBjLWZvcm1hdAorbXNnaWQgInN5bnRheCBlcnJvciBpbiBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIlN5bnRheGZlaGxlciBpbiBEYXRlaXRyaWdnZXItRGF0ZWkgwrslLjI1MHPCqyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjU2MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZmlsZSB0cmlnZ2VycyByZWNvcmQgbWVudGlvbnMgaWxsZWdhbCBwYWNrYWdlIG5hbWUgYCUuMjUwcycgKGZvciBpbnRlcmVzdCBpbiAiCisiZmlsZSBgJS4yNTBzJyk6ICUuMjUwcyIKK21zZ3N0ciAiIgorIkRhdGVpdHJpZ2dlci1EYXRlbnNhdHogZXJ3w6RobnQgdW5nw7xsdGlnZW4gUGFrZXRuYW1lbiDCuyUuMjUwc8KrIChmw7xyIEludGVyZXNzZSAiCisiYW4gRGF0ZWkgwrslLjI1MHPCqyk6ICUuMjUwcyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjY2NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidHJpZ2dlcnMgY2kgZmlsZSBgJS4yNTBzJyBjb250YWlucyBpbGxlZ2FsIHRyaWdnZXIgc3ludGF4IGluIHRyaWdnZXIgbmFtZSBgIgorIiUuMjUwcyc6ICUuMjUwcyIKK21zZ3N0ciAiIgorImNpLVRyaWdnZXJkYXRlaSDCuyUuMjUwc8KrIGVudGjDpGx0IHVuZ8O8bHRpZ2UgVHJpZ2dlcnN5bnRheCBpbSBUcmlnZ2VybmFtZW4gIgorIsK7JS4yNTBzwqs6ICUuMjUwcyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjY4NAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiB0cmlnZ2VycyBjaSBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJjaS1UcmlnZ2VyZGF0ZWkgwrslLjI1MHPCqyBrYW5uIG5pY2h0IGdlw7ZmZm5ldCB3ZXJkZW4iCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo2OTkKK21zZ2lkICJ0cmlnZ2VycyBjaSBmaWxlIGNvbnRhaW5zIHVua25vd24gZGlyZWN0aXZlIHN5bnRheCIKK21zZ3N0ciAiY2ktVHJpZ2dlcmRhdGVpIGVudGjDpGx0IHVuYmVrYW5udGUgQW53ZWlzdW5nc3N5bnRheCIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjcxMgorIywgYy1mb3JtYXQKK21zZ2lkICJ0cmlnZ2VycyBjaSBmaWxlIGNvbnRhaW5zIHVua25vd24gZGlyZWN0aXZlIGAlLjI1MHMnIgorbXNnc3RyICJjaS1UcmlnZ2VyZGF0ZWkgZW50aMOkbHQgdW5iZWthbm50ZSBBbndlaXN1bmcgwrslLjI1MHPCqyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjc3NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHRyaWdnZXJzIHN0YXRlIGRpcmVjdG9yeSBgJS4yNTBzJyIKK21zZ3N0ciAiVHJpZ2dlci1TdGF0dXN2ZXJ6ZWljaG5pcyDCuyUuMjUwc8KrIGthbm4gbmljaHQgYW5nZWxlZ3Qgd2VyZGVuIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Nzc5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgb3duZXJzaGlwIG9mIHRyaWdnZXJzIHN0YXRlIGRpcmVjdG9yeSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorIkVpZ2VudMO8bWVyIGRlcyBUcmlnZ2VyLVN0YXR1c3ZlcnplaWNobmlzc2VzIMK7JS4yNTBzwqsga2FubiBuaWNodCBnZXNldHp0ICIKKyJ3ZXJkZW4iCisKKyM6IGxpYi9kcGtnL3RyaWduYW1lLmM6MzQKK21zZ2lkICJlbXB0eSB0cmlnZ2VyIG5hbWVzIGFyZSBub3QgcGVybWl0dGVkIgorbXNnc3RyICJsZWVyZSBUcmlnZ2VybmFtZW4gc2luZCBuaWNodCBlcmxhdWJ0IgorCisjOiBsaWIvZHBrZy90cmlnbmFtZS5jOjM4Cittc2dpZCAidHJpZ2dlciBuYW1lIGNvbnRhaW5zIGludmFsaWQgY2hhcmFjdGVyIgorbXNnc3RyICJUcmlnZ2VybmFtZSBlbnRow6RsdCB1bmfDvGx0aWdlcyBaZWljaGVuIgorCisjOiBsaWIvZHBrZy91dGlscy5jOjU2CisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWQgZXJyb3IgaW4gYCUuMjUwcyciCittc2dzdHIgIkxlc2VmZWhsZXIgaW4gwrslLjI1MHPCqyIKKworIzogbGliL2Rwa2cvdXRpbHMuYzo2MQorIywgYy1mb3JtYXQKK21zZ2lkICJmZ2V0cyBnYXZlIGFuIGVtcHR5IHN0cmluZyBmcm9tIGAlLjI1MHMnIgorbXNnc3RyICJmZ2V0cyBsaWVmZXJ0ZSBlaW5lIGxlZXJlIFplaWNoZW5rZXR0ZSBhdXMgwrslLjI1MHPCqyIKKworIzogbGliL2Rwa2cvdXRpbHMuYzo2MworIywgYy1mb3JtYXQKK21zZ2lkICJ0b28tbG9uZyBsaW5lIG9yIG1pc3NpbmcgbmV3bGluZSBpbiBgJS4yNTBzJyIKK21zZ3N0ciAienUgbGFuZ2UgWmVpbGUgb2RlciBmZWhsZW5kZXIgWmVpbGVudm9yc2NodWIgaW4gwrslLjI1MHPCqyIKKworIzogbGliL2Rwa2cvdXRpbHMuYzo3NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVvZiByZWFkaW5nIGAlLjI1MHMnIgorbXNnc3RyICJVbmVyd2FydGV0ZXMgRU9GIGJlaW0gTGVzZW4gdm9uIMK7JS4yNTBzwqsiCisKKyM6IGxpYi9kcGtnL3ZhcmJ1Zi5jOjgyIGxpYi9kcGtnL3ZhcmJ1Zi5jOjg4Cittc2dpZCAiZXJyb3IgZm9ybWF0dGluZyBzdHJpbmcgaW50byB2YXJidWYgdmFyaWFibGUiCittc2dzdHIgIkZlaGxlciBiZWltIEZvcm1hdGllcmVuIHZvbiBaZWljaGVua2V0dGUgaW4gdmFyYnVmLVZhcmlhYmxlIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxNzkgc3JjL2FyY2hpdmVzLmM6MjAwIHNyYy9hcmNoaXZlcy5jOjcyNAorbXNnaWQgImVycm9yIHJlYWRpbmcgZnJvbSBkcGtnLWRlYiBwaXBlIgorbXNnc3RyICJGZWhsZXIgYmVpbSBMZXNlbiBhdXMgZGVyIGRwa2ctZGViLVBpcGUiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjE5NQorIywgYy1mb3JtYXQKK21zZ2lkICJza2lwcGVkIHVucGFja2luZyBmaWxlICclLjI1NXMnIChyZXBsYWNlZCBvciBleGNsdWRlZD8pIgorbXNnc3RyICIiCisiRW50cGFja2VuIGRlciBEYXRlaSDCuyUuMjU1c8KrIMO8YmVyc3BydW5nZW4gKGVyc2V0enQgb2RlciBhdXNnZXNjaGxvc3Nlbj8pIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoyNDYgc3JjL2FyY2hpdmVzLmM6MjUwCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHNldHRpbmcgdGltZXN0YW1wcyBvZiBgJS4yNTVzJyIKK21zZ3N0ciAiRmVobGVyIGJlaW0gU2V0emVuIGRlcyBaZWl0c3RlbXBlbHMgdm9uIMK7JS4yNTVzwqsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjI2MgorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIG93bmVyc2hpcCBvZiBzeW1saW5rIGAlLjI1NXMnIgorbXNnc3RyICJGZWhsZXIgYmVpbSBTZXR6ZW4gZGVzIEVpZ2VudMO8bWVycyBkZXMgc3ltYm9saXNjaGVuIExpbmtzcyDCuyUuMjU1c8KrIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoyNjUgc3JjL2FyY2hpdmVzLmM6NzM0IHNyYy9zdGF0Y21kLmM6MTYzCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHNldHRpbmcgb3duZXJzaGlwIG9mIGAlLjI1NXMnIgorbXNnc3RyICJGZWhsZXIgYmVpbSBTZXR6ZW4gZGVzIEVpZ2VudMO8bWVycyB2b24gwrslLjI1NXPCqyIKKworIzogc3JjL2FyY2hpdmVzLmM6MjY3IHNyYy9hcmNoaXZlcy5jOjczNiBzcmMvc3RhdGNtZC5jOjE2NQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIHBlcm1pc3Npb25zIG9mIGAlLjI1NXMnIgorbXNnc3RyICJGZWhsZXIgYmVpbSBTZXR6ZW4gZGVyIFp1Z3JpZmZzcmVjaHRlIHZvbiDCuyUuMjU1c8KrIgorCisjOiBzcmMvYXJjaGl2ZXMuYzozOTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHN0YXQgKGRlcmVmZXJlbmNlKSBleGlzdGluZyBzeW1saW5rIGAlLjI1MHMnIgorbXNnc3RyICIiCisiQWJmcmFnZSBtaXQgc3RhdCAoRGVyZWZlcmVuemllcnVuZykgZsO8ciBleGlzdGllcmVuZGVuIFN5bWxpbmsgwrslLjI1MHPCqyAiCisiZmVobGdlc2NobGFnZW4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjQxNworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZmFpbGVkIHRvIHN0YXQgKGRlcmVmZXJlbmNlKSBwcm9wb3NlZCBuZXcgc3ltbGluayB0YXJnZXQgYCUuMjUwcycgZm9yICIKKyJzeW1saW5rIGAlLjI1MHMnIgorbXNnc3RyICIiCisiQWJmcmFnZSBtaXQgc3RhdCAoRGVyZWZlcmVuemllcnVuZykgZsO8ciB2b3JnZXNjaGxhZ2VuZXMgbmV1ZXMgU3ltbGluay1aaWVsICIKKyLCuyUuMjUwc8KrIHZvbiBTeW1saW5rIMK7JS4yNTBzwqsgZmVobGdlc2NobGFnZW4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjQ3NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidHJ5aW5nIHRvIG92ZXJ3cml0ZSBgJS4yNTBzJywgd2hpY2ggaXMgdGhlIGRpdmVydGVkIHZlcnNpb24gb2YgYCIKKyIlLjI1MHMnIChwYWNrYWdlOiAlLjEwMHMpIgorbXNnc3RyICIiCisiVmVyc3VjaCwgwrslLjI1MHPCqyB6dSDDvGJlcnNjaHJlaWJlbiwgd2VsY2hlcyBkaWUgdW1nZWxlaXRldGUgVmVyc2lvbiB2b24gIgorIsK7JS4yNTBzwqsgKFBha2V0OiAlLjEwMHMpIGlzdCIKKworIzogc3JjL2FyY2hpdmVzLmM6NDgxCisjLCBjLWZvcm1hdAorbXNnaWQgInRyeWluZyB0byBvdmVyd3JpdGUgYCUuMjUwcycsIHdoaWNoIGlzIHRoZSBkaXZlcnRlZCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICIiCisiVmVyc3VjaCwgwrslLjI1MHPCqyB6dSDDvGJlcnNjaHJlaWJlbiwgd2VsY2hlcyBkaWUgdW1nZWxlaXRldGUgVmVyc2lvbiB2b24gIgorIsK7JS4yNTBzwqsgaXN0IgorCisjOiBzcmMvYXJjaGl2ZXMuYzo1MTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgYCUuMjU1cycgKHdoaWNoIEkgd2FzIGFib3V0IHRvIGluc3RhbGwpIgorbXNnc3RyICIiCisiwrslLjI1NXPCqyAod2FzIGdlcmFkZSBpbnN0YWxsaWVydCB3ZXJkZW4gc29sbHRlKSBrb25udGUgbmljaHQgbWl0IHN0YXQgIgorImFiZ2VmcmFndCB3ZXJkZW4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjUxOQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidW5hYmxlIHRvIGNsZWFuIHVwIG1lc3Mgc3Vycm91bmRpbmcgYCUuMjU1cycgYmVmb3JlIGluc3RhbGxpbmcgYW5vdGhlciAiCisidmVyc2lvbiIKK21zZ3N0ciAiIgorIlVub3JkbnVuZyB1bSDCuyUuMjU1c8KrIGthbm4gdm9yIGRlciBJbnN0YWxsYXRpb24gZWluZXIgYW5kZXJlbiBWZXJzaW9uIG5pY2h0ICIKKyJiZXJlaW5pZ3Qgd2VyZGVuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo1MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgcmVzdG9yZWQgYCUuMjU1cycgYmVmb3JlIGluc3RhbGxpbmcgYW5vdGhlciB2ZXJzaW9uIgorbXNnc3RyICIiCisiV2llZGVyaGVyZ2VzdGVsbHRlcyDCuyUuMjU1c8KrIGthbm4gdm9yIGRlciBJbnN0YWxsYXRpb24gZWluZXIgYW5kZXJlbiBWZXJzaW9uICIKKyJuaWNodCBtaXQgc3RhdCBhYmdlZnJhZ3Qgd2VyZGVuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo1NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiYXJjaGl2ZSBjb250YWluZWQgb2JqZWN0IGAlLjI1NXMnIG9mIHVua25vd24gdHlwZSAweCV4IgorbXNnc3RyICJBcmNoaXYgZW50aGllbHQgT2JqZWt0IMK7JS4yNTVzwqsgdm9uIHVuYmVrYW5udGVtIFR5cCAweCV4IgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2MjYgc3JjL2RpdmVydGNtZC5jOjE1MCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NjgyCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIyMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI4NAorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE0NDEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE2ODAKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTY3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjQ0CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUyNworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc3RhdCBmaWxlICclcyciCittc2dzdHIgIsK7JXPCqyBrYW5uIG5pY2h0IG1pdCBzdGF0IGFiZ2VmcmFndCB3ZXJkZW4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjY0MQorIywgYy1mb3JtYXQKK21zZ2lkICJSZXBsYWNpbmcgZmlsZXMgaW4gb2xkIHBhY2thZ2UgJXMgLi4uXG4iCittc2dzdHIgIkVyc2V0emVuIGRlciBEYXRlaWVuIGltIGFsdGVuIFBha2V0ICVzIC4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVwbGFjZWQgYnkgZmlsZXMgaW4gaW5zdGFsbGVkIHBhY2thZ2UgJXMgLi4uXG4iCittc2dzdHIgIkVyc2V0enQgZHVyY2ggRGF0ZWllbiBpbiBpbnN0YWxsaWVydGVtIFBha2V0ICVzIC4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInRyeWluZyB0byBvdmVyd3JpdGUgZGlyZWN0b3J5ICclLjI1MHMnIGluIHBhY2thZ2UgJS4yNTBzICUuMjUwcyB3aXRoICIKKyJub25kaXJlY3RvcnkiCittc2dzdHIgIiIKKyJWZXJzdWNoLCBWZXJ6ZWljaG5pcyDCuyUuMjUwc8KrIGluIFBha2V0ICUuMjUwcyAlLjI1MHMgbWl0IE5pY2h0dmVyemVpY2huaXMgenUgIgorIsO8YmVyc2NocmVpYmVuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJ5aW5nIHRvIG92ZXJ3cml0ZSAnJS4yNTBzJywgd2hpY2ggaXMgYWxzbyBpbiBwYWNrYWdlICUuMjUwcyAlLjI1MHMiCittc2dzdHIgIiIKKyJWZXJzdWNoLCDCuyUuMjUwc8KrIHp1IMO8YmVyc2NocmVpYmVuLCB3ZWxjaGVzIGF1Y2ggaW4gUGFrZXQgJS4yNTBzICUuMjUwcyBpc3QiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjcxMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGAlLjI1NXMnICh3aGlsZSBwcm9jZXNzaW5nIGAlLjI1NXMnKSIKK21zZ3N0ciAiIgorIsK7JS4yNTVzwqsga29ubnRlIG5pY2h0IGFuZ2VsZWd0IHdlcmRlbiAod8OkaHJlbmQgZGVyIFZlcmFyYmVpdHVuZyB2b24gwrslLjI1NXPCqykiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjcxOAorIywgYy1mb3JtYXQKK21zZ2lkICJiYWNrZW5kIGRwa2ctZGViIGR1cmluZyBgJS4yNTVzJyIKK21zZ3N0ciAiQmFja2VuZCBkcGtnLWRlYiB3w6RocmVuZCDCuyUuMjU1c8KrIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NDQgc3JjL2FyY2hpdmVzLmM6OTA4IHNyYy9hcmNoaXZlcy5jOjk0OQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nL3dyaXRpbmcgYCUuMjU1cyciCittc2dzdHIgIkZlaGxlciBiZWltIFNjaGxpZcOfZW4vU2NocmVpYmVuIHZvbiDCuyUuMjU1c8KrIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgcGlwZSBgJS4yNTVzJyIKK21zZ3N0ciAiRmVobGVyIGJlaW0gQW5sZWdlbiBkZXIgUGlwZSDCuyUuMjU1c8KrIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NTMgc3JjL2FyY2hpdmVzLmM6NzU4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIGRldmljZSBgJS4yNTVzJyIKK21zZ3N0ciAiRmVobGVyIGJlaW0gQW5sZWdlbiBkZXMgR2Vyw6R0cyDCuyUuMjU1c8KrIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgaGFyZCBsaW5rIGAlLjI1NXMnIgorbXNnc3RyICJGZWhsZXIgYmVpbSBBbmxlZ2VuIGRlcyBoYXJ0ZW4gTGlua3MgwrslLjI1NXPCqyIKKworIzogc3JjL2FyY2hpdmVzLmM6Nzc3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo1MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgc3ltYm9saWMgbGluayBgJS4yNTVzJyIKK21zZ3N0ciAiRmVobGVyIGJlaW0gQW5sZWdlbiBkZXMgc3ltYm9saXNjaGVuIExpbmtzIMK7JS4yNTVzwqsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc4MworIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBkaXJlY3RvcnkgYCUuMjU1cyciCittc2dzdHIgIkZlaGxlciBiZWltIEFubGVnZW4gZGVzIFZlcnplaWNobmlzc2VzIMK7JS4yNTVzwqsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjgyMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gbW92ZSBhc2lkZSBgJS4yNTVzJyB0byBpbnN0YWxsIG5ldyB2ZXJzaW9uIgorbXNnc3RyICIiCisiwrslLjI1NXPCqyBrYW5uIG5pY2h0IGF1cyBkZW0gV2VnIGdlcsOkdW10IHdlcmRlbiwgdW0gbmV1ZSBWZXJzaW9uIHp1ICIKKyJpbnN0YWxsaWVyZW4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjgzMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MzIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIGxpbmsgYCUuMjU1cyciCittc2dzdHIgIkxpbmsgwrslLjI1NXPCqyBrYW5uIG5pY2h0IGdlbGVzZW4gd2VyZGVuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4MzQgc3JjL2NvbmZpZ3VyZS5jOjQyMworIywgYy1mb3JtYXQKK21zZ2lkICJzeW1ib2xpYyBsaW5rICclLjI1MHMnIHNpemUgaGFzIGNoYW5nZWQgZnJvbSAlamQgdG8gJXpkIgorbXNnc3RyICJHcsO2w59lIGRlcyBzeW1ib2xpc2NoZW4gTGlua3MgwrslLjI1MHPCqyB3dXJkZSB2b24gJWpkIHp1ICV6ZCBnZcOkbmRlcnQiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjgzOQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gbWFrZSBiYWNrdXAgc3ltbGluayBmb3IgYCUuMjU1cyciCittc2dzdHIgIiIKKyJTeW1ib2xpc2NoZXIgTGluayB6dXIgU2ljaGVydW5nIHZvbiDCuyUuMjU1c8KrIGthbm4gbmljaHQgYW5nZWxlZ3Qgd2VyZGVuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNob3duIGJhY2t1cCBzeW1saW5rIGZvciBgJS4yNTVzJyIKK21zZ3N0ciAiIgorIkVpZ2VudMO8bWVyIGRlcyBzeW1ib2xpc2NoZW4gTGlua3MgenVyIFNpY2hlcnVuZyB2b24gwrslLjI1NXPCqyBrYW5uIG5pY2h0ICIKKyJnZXNldHp0IHdlcmRlbiIKKworIzogc3JjL2FyY2hpdmVzLmM6ODQ2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBtYWtlIGJhY2t1cCBsaW5rIG9mIGAlLjI1NXMnIGJlZm9yZSBpbnN0YWxsaW5nIG5ldyB2ZXJzaW9uIgorbXNnc3RyICIiCisiTGluayB6dXIgU2ljaGVydW5nIHZvbiDCuyUuMjU1c8KrIHZvciBJbnN0YWxsYXRpb24gZGVyIG5ldWVuIFZlcnNpb24ga2FubiAiCisibmljaHQgYW5nZWxlZ3Qgd2VyZGVuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4NjMgc3JjL2FyY2hpdmVzLmM6OTU3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyB2ZXJzaW9uIG9mIGAlLjI1NXMnIgorbXNnc3RyICJOZXVlIFZlcnNpb24gdm9uIMK7JS4yNTVzwqsga2FubiBuaWNodCBpbnN0YWxsaWVydCB3ZXJkZW4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjkwMiBzcmMvYXJjaGl2ZXMuYzo5NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gJyUuMjU1cyciCittc2dzdHIgIsK7JS4yNTVzwqsga2FubiBuaWNodCBnZcO2ZmZuZXQgd2VyZGVuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo5NDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgZmlsZSAnJS4yNTVzJyIKK21zZ3N0ciAiRGF0ZWkgwrslLjI1NXPCqyBrYW5uIG5pY2h0IHN5bmNocm9uaXNpZXJ0IHdlcmRlbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAwMAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiaWdub3JpbmcgZGVwZW5kZW5jeSBwcm9ibGVtIHdpdGggJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyJBYmjDpG5naWdrZWl0c3Byb2JsZW0gbWl0ICVzIHdpcmQgaWdub3JpZXJ0OlxuIgorIiVzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDA1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJjb25zaWRlcmluZyBkZWNvbmZpZ3VyYXRpb24gb2YgZXNzZW50aWFsXG4iCisiIHBhY2thZ2UgJXMsIHRvIGVuYWJsZSAlcy4iCittc2dzdHIgIiIKKyJEZWtvbmZpZ3VyYXRpb24gZGVzIGVzc2VuemllbGxlbiBQYWtldGVzICVzXG4iCisid2lyZCBpbiBCZXRyYWNodCBnZXpvZ2VuLCB1bSAlcyB6dSBlcm3DtmdsaWNoZW4uIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDA4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBubywgJXMgaXMgZXNzZW50aWFsLCB3aWxsIG5vdCBkZWNvbmZpZ3VyZVxuIgorIiBpdCBpbiBvcmRlciB0byBlbmFibGUgJXMuXG4iCittc2dzdHIgIiIKKyJkcGtnOiBOZWluLCAlcyBpc3QgZXNzZW56aWVsbCwgZXMgd2lyZCBuaWNodCBkZWtvbmZpZ3VyaWVydCB3ZXJkZW4sXG4iCisiIHVtICVzIHp1IGVybcO2Z2xpY2hlbi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAyMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogbm8sIGNhbm5vdCBwcm9jZWVkIHdpdGggJXMgKC0tYXV0by1kZWNvbmZpZ3VyZSB3aWxsIGhlbHApOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogTmVpbiwgZm9ydGZhaHJlbiBtaXQgJXMgbmljaHQgbcO2Z2xpY2ggKC0tYXV0by1kZWNvbmZpZ3VyZSB3aXJkICIKKyJoZWxmZW4pOlxuIgorIiVzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDMyCisjLCBjLWZvcm1hdAorbXNnaWQgInJlbW92YWwgb2YgJS4yNTBzIgorbXNnc3RyICJFbnRmZXJuZW4gdm9uICUuMjUwcyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA1NworIywgYy1mb3JtYXQKK21zZ2lkICJpbnN0YWxsYXRpb24gb2YgJS4yNTBzIgorbXNnc3RyICJJbnN0YWxsYXRpb24gdm9uIMK7JS4yNTBzwqsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IGNvbnNpZGVyaW5nIGRlY29uZmlndXJhdGlvbiBvZiAlcywgd2hpY2ggd291bGQgYmUgYnJva2VuIGJ5ICVzIC4uLlxuIgorbXNnc3RyICIiCisiZHBrZzogRGVrb25maWd1cmF0aW9uIHZvbiAlcyB3aXJkIGluIEJldHJhY2h0IGdlem9nZW4sIHdlbGNoZXMgZHVyY2ggJXMgIgorImJlc2Now6RkaWd0IHfDvHJkZSAuLi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA2NQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiB5ZXMsIHdpbGwgZGVjb25maWd1cmUgJXMgKGJyb2tlbiBieSAlcykuXG4iCittc2dzdHIgImRwa2c6IEphLCAlcyB3aXJkIGRla29uZmlndXJpZXJ0IChiZXNjaMOkZGlndCBkdXJjaCAlcykuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNjkgc3JjL2FyY2hpdmVzLmM6MTE4NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogcmVnYXJkaW5nICVzIGNvbnRhaW5pbmcgJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiBCZXRyZWZmZW5kICVzLCB3ZWxjaGVzICVzIGVudGjDpGx0OlxuIgorIiVzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDc3Cittc2dpZCAiaWdub3JpbmcgYnJlYWthZ2UsIG1heSBwcm9jZWVkIGFueXdheSEiCittc2dzdHIgIkJlc2Now6RkaWd1bmcgd2lyZCBpZ25vcmllcnQsIGVzIHdpcmQgdmVyc3VjaHQsIHRyb3R6ZGVtIGZvcnR6dXNldHplbiEiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImluc3RhbGxpbmcgJS4yNTBzIHdvdWxkIGJyZWFrICUuMjUwcywgYW5kXG4iCisiIGRlY29uZmlndXJhdGlvbiBpcyBub3QgcGVybWl0dGVkICgtLWF1dG8tZGVjb25maWd1cmUgbWlnaHQgaGVscCkiCittc2dzdHIgIiIKKyJJbnN0YWxsYXRpb24gdm9uICUuMjUwcyB3w7xyZGUgJS4yNTBzIGJlc2Now6RkaWdlbiwgdW5kXG4iCisiIERla29uZmlndXJhdGlvbiBpc3QgbmljaHQgZXJsYXVidCAoLS1hdXRvLWRlY29uZmlndXJlIGvDtm5udGUgaGVsZmVuKSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA4NgorIywgYy1mb3JtYXQKK21zZ2lkICJpbnN0YWxsaW5nICUuMjUwcyB3b3VsZCBicmVhayBleGlzdGluZyBzb2Z0d2FyZSIKK21zZ3N0ciAiSW5zdGFsbGF0aW9uIHZvbiAlLjI1MHMgd8O8cmRlIGV4aXN0aWVyZW5kZSBTb2Z0d2FyZSBiZXNjaMOkZGlnZW4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExMTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogY29uc2lkZXJpbmcgcmVtb3ZpbmcgJXMgaW4gZmF2b3VyIG9mICVzIC4uLlxuIgorbXNnc3RyICJkcGtnOiBFbnRmZXJuZW4gdm9uICVzIHp1Z3Vuc3RlbiB2b24gJXMgd2lyZCBpbiBCZXRyYWNodCBnZXpvZ2VuIC4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTIyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGlzIG5vdCBwcm9wZXJseSBpbnN0YWxsZWQgLSBpZ25vcmluZyBhbnkgZGVwZW5kZW5jaWVzIG9uIGl0LlxuIgorbXNnc3RyICIiCisiJXMgaXN0IG5pY2h0IHNhdWJlciBpbnN0YWxsaWVydCAtIGFsbGUgQWJow6RuZ2lna2VpdGVuIGRhcmF1ZiB3ZXJkZW4gIgorImlnbm9yaWVydC5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE1MQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiBtYXkgaGF2ZSB0cm91YmxlIHJlbW92aW5nICVzLCBhcyBpdCBwcm92aWRlcyAlcyAuLi5cbiIKK21zZ3N0ciAiIgorImRwa2c6IEVzIGvDtm5udGUgUHJvYmxlbWUgZ2ViZW4sICVzIHp1IGVudGZlcm5lbiwgZGEgZXMgJXMgYmVyZWl0c3RlbGx0IC4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTY2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBwYWNrYWdlICVzIHJlcXVpcmVzIHJlaW5zdGFsbGF0aW9uLCBidXQgd2lsbCByZW1vdmUgYW55d2F5IGFzIHlvdSAiCisicmVxdWVzdGVkLlxuIgorbXNnc3RyICIiCisiZHBrZzogUGFrZXQgJXMgZXJmb3JkZXJ0IE5ldWluc3RhbGxhdGlvbiwgd2lyZCBhYmVyIHdpZSBnZWZvcmRlcnQgdHJvdHpkZW0gIgorImVudGZlcm50LlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTY5CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IHBhY2thZ2UgJXMgcmVxdWlyZXMgcmVpbnN0YWxsYXRpb24sIHdpbGwgbm90IHJlbW92ZS5cbiIKK21zZ3N0ciAiZHBrZzogUGFrZXQgJXMgbXVzcyBuZXUgaW5zdGFsbGllcnQgd2VyZGVuLCBlcyB3aXJkIG5pY2h0IGVudGZlcm50LlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTc4CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IHllcywgd2lsbCByZW1vdmUgJXMgaW4gZmF2b3VyIG9mICVzLlxuIgorbXNnc3RyICJkcGtnOiBKYSwgJXMgd2lyZCB6dWd1bnN0ZW4gdm9uICVzIGVudGZlcm50LlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTkwCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZsaWN0aW5nIHBhY2thZ2VzIC0gbm90IGluc3RhbGxpbmcgJS4yNTBzIgorbXNnc3RyICJLb2xsaWRpZXJlbmRlIFBha2V0ZSAtICUuMjUwcyB3aXJkIG5pY2h0IGluc3RhbGxpZXJ0IgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTkxCittc2dpZCAiaWdub3JpbmcgY29uZmxpY3QsIG1heSBwcm9jZWVkIGFueXdheSEiCittc2dzdHIgIktvbGxpc2lvbiB3aXJkIGlnbm9yaWVydCwgZXMgd2lyZCB2ZXJzdWNodCwgdHJvdHpkZW0gZm9ydHp1c2V0emVuISIKKworIzogc3JjL2FyY2hpdmVzLmM6MTIzNQorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIC0tcmVjdXJzaXZlIG5lZWRzIGF0IGxlYXN0IG9uZSBwYXRoIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIC0tcmVjdXJzaXZlIGJlbsO2dGlndCBtaW5kZXN0ZW5zIGVpbmVuIFBmYWQgYWxzIEFyZ3VtZW50IgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjQ1Cittc2dpZCAiZmluZCBmb3IgZHBrZyAtLXJlY3Vyc2l2ZSIKK21zZ3N0ciAiZmluZCBmw7xyIGRwa2cgLS1yZWN1cnNpdmUiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNjYKK21zZ2lkICJmYWlsZWQgdG8gZmRvcGVuIGZpbmQncyBwaXBlIgorbXNnc3RyICLDlmZmbmVuIGRlciBQaXBlIHZvbiBmaW5kIG1pdCBmZG9wZW4gZmVobGdlc2NobGFnZW4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNzIKK21zZ2lkICJlcnJvciByZWFkaW5nIGZpbmQncyBwaXBlIgorbXNnc3RyICJGZWhsZXIgYmVpbSBMZXNlbiBkZXIgUGlwZSB2b24gZmluZCIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3MworbXNnaWQgImVycm9yIGNsb3NpbmcgZmluZCdzIHBpcGUiCittc2dzdHIgIkZlaGxlciBiZWltIFNjaGxpZcOfZW4gZGVyIFBpcGUgdm9uIGZpbmQiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmluZCBmb3IgLS1yZWN1cnNpdmUgcmV0dXJuZWQgdW5oYW5kbGVkIGVycm9yICVpIgorbXNnc3RyICJTdWNoZSBmw7xyIC0tcmVjdXJzaXZlIGdhYiB1bmJlaGFuZGVsdGVuIEZlaGxlciAlaSB6dXLDvGNrIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjc5Cittc2dpZCAic2VhcmNoZWQsIGJ1dCBmb3VuZCBubyBwYWNrYWdlcyAoZmlsZXMgbWF0Y2hpbmcgKi5kZWIpIgorbXNnc3RyICJkdXJjaHN1Y2h0LCBhYmVyIGtlaW5lIFBha2V0ZSAoYXVmICouZGViIHBhc3NlbmRlIERhdGVpZW4pIGdlZnVuZGVuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjkwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYXQgbGVhc3Qgb25lIHBhY2thZ2UgYXJjaGl2ZSBmaWxlIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIGJlbsO2dGlndCBtaW5kZXN0ZW5zIGVpbmUgUGFrZXQtQXJjaGl2ZGF0ZWkgYWxzIEFyZ3VtZW50IgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzI1IHNyYy9kaXZlcnRjbWQuYzo3OCBzcmMvZGl2ZXJ0Y21kLmM6MTE4CisjOiBzcmMvZW5xdWlyeS5jOjE2NiBzcmMvZW5xdWlyeS5jOjI3OSBzcmMvZW5xdWlyeS5jOjQ0OSBzcmMvZW5xdWlyeS5jOjQ1MQorIzogc3JjL2VucXVpcnkuYzo0NjQgc3JjL21haW4uYzo2NiBzcmMvbWFpbi5jOjE2MyBzcmMvbWFpbi5jOjMxNAorIzogc3JjL21haW4uYzo0OTMgc3JjL3BhY2thZ2VzLmM6MjU0IHNyYy9xdWVyeWNtZC5jOjI1MiBzcmMvcXVlcnljbWQuYzozNTUKKyM6IHNyYy9xdWVyeWNtZC5jOjM5NiBzcmMvcXVlcnljbWQuYzo0MDQgc3JjL3F1ZXJ5Y21kLmM6NDQ4IHNyYy9xdWVyeWNtZC5jOjUxNworIzogc3JjL3F1ZXJ5Y21kLmM6NjA2IHNyYy9xdWVyeWNtZC5jOjY1MCBzcmMvc2VsZWN0LmM6Nzkgc3JjL3N0YXRjbWQuYzo2OAorIzogc3JjL3N0YXRjbWQuYzo5OCBzcmMvdHJpZ2NtZC5jOjU4IHNyYy90cmlnY21kLmM6OTAgZHBrZy1kZWIvYnVpbGQuYzo0NDEKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyMTcgZHBrZy1kZWIvZXh0cmFjdC5jOjI1MCBkcGtnLWRlYi9pbmZvLmM6MjAzCisjOiBkcGtnLWRlYi9pbmZvLmM6MjY1IGRwa2ctZGViL21haW4uYzo2MCBkcGtnLWRlYi9tYWluLmM6MTI2CisjOiBkcGtnLXNwbGl0L2luZm8uYzoyNTcgZHBrZy1zcGxpdC9tYWluLmM6NTQgZHBrZy1zcGxpdC9tYWluLmM6OTgKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxNDQgZHBrZy1zcGxpdC9xdWV1ZS5jOjI4MAorbXNnaWQgIjxzdGFuZGFyZCBvdXRwdXQ+IgorbXNnc3RyICI8U3RhbmRhcmRhdXNnYWJlPiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTMyNiBzcmMvcGFja2FnZXMuYzoyNTUgc3JjL3F1ZXJ5Y21kLmM6MjUzCisjOiBzcmMvcXVlcnljbWQuYzozNTMgc3JjL3F1ZXJ5Y21kLmM6NDU0IHNyYy9xdWVyeWNtZC5jOjUxOCBzcmMvc2VsZWN0LmM6ODAKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjE2OSBkcGtnLXNwbGl0L3F1ZXVlLmM6MjE4Cittc2dpZCAiPHN0YW5kYXJkIGVycm9yPiIKK21zZ3N0ciAiPFN0YW5kYXJkZmVobGVyYXVzZ2FiZT4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzNjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2VsZWN0aW5nIHByZXZpb3VzbHkgdW5zZWxlY3RlZCBwYWNrYWdlICVzLlxuIgorbXNnc3RyICJWb3JtYWxzIG5pY2h0IGF1c2dld8OkaGx0ZXMgUGFrZXQgJXMgd2lyZCBnZXfDpGhsdC5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTM3MQorIywgYy1mb3JtYXQKK21zZ2lkICJTa2lwcGluZyB1bnNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dzdHIgIk5pY2h0IGF1c2dld8OkaGx0ZXMgUGFrZXQgJXMgd2lyZCDDvGJlcmdhbmdlbi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTM4NworIywgYy1mb3JtYXQKK21zZ2lkICJWZXJzaW9uICUuMjUwcyBvZiAlLjI1MHMgYWxyZWFkeSBpbnN0YWxsZWQsIHNraXBwaW5nLlxuIgorbXNnc3RyICJWZXJzaW9uICUuMjUwcyB2b24gJS4yNTBzIGlzdCBiZXJlaXRzIGluc3RhbGxpZXJ0LCB3aXJkIMO8YmVyZ2FuZ2VuLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzk3CisjLCBjLWZvcm1hdAorbXNnaWQgImRvd25ncmFkaW5nICUuMjUwcyBmcm9tICUuMjUwcyB0byAlLjI1MHMuIgorbXNnc3RyICIiCisiVmVyc2lvbiAlMiQuMjUwcyBkZXMgUGFrZXRlcyAlMSQuMjUwcyB3aXJkIGR1cmNoIMOkbHRlcmUgVmVyc2lvbiAlMyQuMjUwcyAiCisiZXJzZXR6dC4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjE0MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiV2lsbCBub3QgZG93bmdyYWRlICUuMjUwcyBmcm9tIHZlcnNpb24gJS4yNTBzIHRvICUuMjUwcywgc2tpcHBpbmcuXG4iCittc2dzdHIgIiIKKyJWZXJzaW9uICUyJC4yNTBzIGRlcyBQYWtldGVzICUxJC4yNTBzIHdpcmQgbmljaHQgZHVyY2ggw6RsdGVyZSBWZXJzaW9uICIKKyIlMyQuMjUwcyBlcnNldHp0LCBQYWtldCB3aXJkIMO8YmVyZ2FuZ2VuLlxuIgorCisjOiBzcmMvY2xlYW51cC5jOjg2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1bmFibGUgdG8gcmVtb3ZlIG5ld2x5LWluc3RhbGxlZCB2ZXJzaW9uIG9mIGAlLjI1MHMnIHRvIGFsbG93IHJlaW5zdGFsbGF0aW9uICIKKyJvZiBiYWNrdXAgY29weSIKK21zZ3N0ciAiIgorIlNvZWJlbiBpbnN0YWxsaWVydGUgVmVyc2lvbiB2b24gwrslLjI1MHPCqyBrYW5uIG5pY2h0IGVudGZlcm50IHdlcmRlbiwgdW0gZGllICIKKyJSZWluc3RhbGxhdGlvbiBkZXIgU2ljaGVydW5nc2tvcGllIHp1IGVybcO2Z2xpY2hlbiIKKworIzogc3JjL2NsZWFudXAuYzo5MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVzdG9yZSBiYWNrdXAgdmVyc2lvbiBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiU2ljaGVydW5ncy1WZXJzaW9uIHZvbiDCuyUuMjUwc8KrIGthbm4gbmljaHQgd2llZGVyaGVyZ2VzdGVsbHQgd2VyZGVuIgorCisjOiBzcmMvY2xlYW51cC5jOjk3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgYmFja3VwIGNvcHkgb2YgJyUuMjUwcyciCittc2dzdHIgIlNpY2hlcnVuZ3MtVmVyc2lvbiB2b24gwrslLjI1MHPCqyBrYW5uIG5pY2h0IGVudGZlcm50IHdlcmRlbiIKKworIzogc3JjL2NsZWFudXAuYzoxMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBuZXdseS1pbnN0YWxsZWQgdmVyc2lvbiBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiU29lYmVuIGluc3RhbGxpZXJ0ZSBWZXJzaW9uIHZvbiDCuyUuMjUwc8KrIGthbm4gbmljaHQgZW50ZmVybnQgd2VyZGVuIgorCisjOiBzcmMvY2xlYW51cC5jOjEwOAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIG5ld2x5LWV4dHJhY3RlZCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICJTb2ViZW4gZW50cGFja3RlIFZlcnNpb24gdm9uIMK7JS4yNTBzwqsga2FubiBuaWNodCBlbnRmZXJudCB3ZXJkZW4iCisKKyM6IHNyYy9jb25maWd1cmUuYzoxMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgbmV3IGRpc3RyaWJ1dGVkIGNvbmZmaWxlICclLjI1MHMnIgorbXNnc3RyICJOZXUgdmVydGVpbHRlcyBDb25mZmlsZSDCuyUuMjUwc8KrIGthbm4gbmljaHQgbWl0IHN0YXQgYWJnZWZyYWd0IHdlcmRlbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBjdXJyZW50IGluc3RhbGxlZCBjb25mZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorIkRlcnplaXQgaW5zdGFsbGllcnRlcyBDb25mZmlsZSDCuyUuMjUwc8KrIGthbm4gbmljaHQgbWl0IHN0YXQgYWJnZWZyYWd0IHdlcmRlbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjEyNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiQ29uZmlndXJhdGlvbiBmaWxlIGAlcycsIGRvZXMgbm90IGV4aXN0IG9uIHN5c3RlbS5cbiIKKyJJbnN0YWxsaW5nIG5ldyBjb25maWcgZmlsZSBhcyB5b3UgcmVxdWVzdGVkLlxuIgorbXNnc3RyICIiCisiXG4iCisiS29uZmlndXJhdGlvbnNkYXRlaSDCuyVzwqsgZXhpc3RpZXJ0IGF1ZiBkZW0gU3lzdGVtIG5pY2h0LlxuIgorIk5ldWUgS29uZmlndXJhdGlvbnNkYXRlaSB3aXJkIHdpZSBnZWZvcmRlcnQgaW5zdGFsbGllcnQuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzoxNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW1vdmUgb2xkIGJhY2t1cCAnJS4yNTBzJzogJXMiCittc2dzdHIgIiVzOiBMw7ZzY2hlbiB2b24gYWx0ZXIgU2ljaGVydW5nIMK7JS4yNTBzwqsgZmVobGdlc2NobGFnZW46ICVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTc2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVuYW1lICclLjI1MHMnIHRvICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiJXM6IFVtYmVuZW5uZW4gdm9uIMK7JS4yNTBzwqsgaW4gwrslLjI1MHPCqyBmZWhsZ2VzY2hsYWdlbjogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW1vdmUgJyUuMjUwcyc6ICVzIgorbXNnc3RyICIlczogRW50ZmVybmVuIHZvbiDCuyUuMjUwc8KrIGZlaGxnZXNjaGxhZ2VuOiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE4OAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIHJlbW92ZSBvbGQgZGlzdHJpYnV0ZWQgdmVyc2lvbiAnJS4yNTBzJzogJXMiCittc2dzdHIgIiVzOiBMw7ZzY2hlbiB2b24gYWx0ZXIgdmVydGVpbHRlciBWZXJzaW9uIMK7JS4yNTBzwqsgZmVobGdlc2NobGFnZW46ICVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTkyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlICclLjI1MHMnIChiZWZvcmUgb3ZlcndyaXRlKTogJXMiCittc2dzdHIgIiVzOiBMw7ZzY2hlbiB2b24gwrslLjI1MHPCqyBmZWhsZ2VzY2hsYWdlbiAodm9yIMOcYmVyc2NocmVpYmVuKTogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byBsaW5rICclLjI1MHMnIHRvICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiJXM6IFZlcmtuw7xwZmVuIHZvbiDCuyUuMjUwc8KrIG1pdCDCuyUuMjUwc8KrIGZlaGxnZXNjaGxhZ2VuOiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjIwMAorIywgYy1mb3JtYXQKK21zZ2lkICJJbnN0YWxsaW5nIG5ldyB2ZXJzaW9uIG9mIGNvbmZpZyBmaWxlICVzIC4uLlxuIgorbXNnc3RyICJOZXVlIFZlcnNpb24gZGVyIEtvbmZpZ3VyYXRpb25zZGF0ZWkgJXMgd2lyZCBpbnN0YWxsaWVydCAuLi5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjIwNiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NTQ2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIGAlLjI1MHMnIGFzIGAlLjI1MHMnIgorbXNnc3RyICLCuyUuMjUwc8KrIGthbm4gbmljaHQgYWxzIMK7JS4yNTBzwqsgaW5zdGFsbGllcnQgd2VyZGVuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjU3CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHBhY2thZ2UgbmFtZWQgYCVzJyBpcyBpbnN0YWxsZWQsIGNhbm5vdCBjb25maWd1cmUiCittc2dzdHIgIktlaW4gUGFrZXQgbmFtZW5zIMK7JXPCqyBpbnN0YWxsaWVydCwga2FubiBuaWNodCBrb25maWd1cmllcnQgd2VyZGVuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjYwCisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgJS4yNTBzIGlzIGFscmVhZHkgaW5zdGFsbGVkIGFuZCBjb25maWd1cmVkIgorbXNnc3RyICJQYWtldCAlLjI1MHMgaXN0IHNjaG9uIGluc3RhbGxpZXJ0IHVuZCBrb25maWd1cmllcnQiCisKKyM6IHNyYy9jb25maWd1cmUuYzoyNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInBhY2thZ2UgJS4yNTBzIGlzIG5vdCByZWFkeSBmb3IgY29uZmlndXJhdGlvblxuIgorIiBjYW5ub3QgY29uZmlndXJlIChjdXJyZW50IHN0YXR1cyBgJS4yNTBzJykiCittc2dzdHIgIiIKKyJQYWtldCAlLjI1MHMgaXN0IG5pY2h0IGJlcmVpdCB6dXIgS29uZmlndXJhdGlvblxuIgorIiBrYW5uIG5pY2h0IGtvbmZpZ3VyaWVydCB3ZXJkZW4gKG1vbWVudGFuZXIgU3RhdHVzIMK7JS4yNTBzwqspIgorCisjOiBzcmMvY29uZmlndXJlLmM6Mjk0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBkZXBlbmRlbmN5IHByb2JsZW1zIHByZXZlbnQgY29uZmlndXJhdGlvbiBvZiAlczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6IEFiaMOkbmdpZ2tlaXRzcHJvYmxlbWUgdmVyaGluZGVybiBLb25maWd1cmF0aW9uIHZvbiAlczpcbiIKKyIlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI5NworbXNnaWQgImRlcGVuZGVuY3kgcHJvYmxlbXMgLSBsZWF2aW5nIHVuY29uZmlndXJlZCIKK21zZ3N0ciAiQWJow6RuZ2lna2VpdHNwcm9ibGVtZSAtIHZlcmJsZWlidCB1bmtvbmZpZ3VyaWVydCIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjMwMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogJXM6IGRlcGVuZGVuY3kgcHJvYmxlbXMsIGJ1dCBjb25maWd1cmluZyBhbnl3YXkgYXMgeW91IHJlcXVlc3RlZDpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiBBYmjDpG5naWdrZWl0c3Byb2JsZW1lLCB3aXJkIGFiZXIgdHJvdHpkZW0gd2llIGdlZm9yZGVydCAiCisia29uZmlndXJpZXJ0OlxuIgorIiVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MzA5Cittc2dpZCAiIgorIlBhY2thZ2UgaXMgaW4gYSB2ZXJ5IGJhZCBpbmNvbnNpc3RlbnQgc3RhdGUgLSB5b3Ugc2hvdWxkXG4iCisiIHJlaW5zdGFsbCBpdCBiZWZvcmUgYXR0ZW1wdGluZyBjb25maWd1cmF0aW9uLiIKK21zZ3N0ciAiIgorIlBha2V0IGlzdCBpbiBlaW5lbSBzZWhyIHNjaGxlY2h0ZW4gaW5rb25zaXN0ZW50ZW4gWnVzdGFuZCAtIFNpZSBzb2xsdGVuIGVzXG4iCisiIG5vY2htYWwgaW5zdGFsbGllcmVuLCBiZXZvciBTaWUgZGllIEtvbmZpZ3VyYXRpb24gdmVyc3VjaGVuLiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjMxMgorIywgYy1mb3JtYXQKK21zZ2lkICJTZXR0aW5nIHVwICVzICglcykgLi4uXG4iCittc2dzdHIgIiVzICglcykgd2lyZCBlaW5nZXJpY2h0ZXQgLi4uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzozOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiB1bmFibGUgdG8gc3RhdCBjb25maWcgZmlsZSAnJXMnXG4iCisiICg9ICclcycpOiAlcyIKK21zZ3N0ciAiIgorIiVzOiBLb25maWd1cmF0aW9uc2RhdGVpIMK7JXPCqyBrYW5uIG5pY2h0IG1pdCBzdGF0IGFiZ2VmcmFndCB3ZXJkZW5cbiIKKyIgKD0gwrslc8KrKTogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzo0MDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBjb25maWcgZmlsZSAnJXMnIGlzIGEgY2lyY3VsYXIgbGlua1xuIgorIiAoPSAnJXMnKSIKK21zZ3N0ciAiIgorIiVzOiBLb25maWd1cmF0aW9uc2RhdGVpIMK7JXPCqyBpc3QgZWluZSB6aXJrdWzDpHJlciBMaW5rXG4iCisiICg9IMK7JXPCqykiCisKKyM6IHNyYy9jb25maWd1cmUuYzo0MTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiB1bmFibGUgdG8gcmVhZGxpbmsgY29uZmZpbGUgJyVzJ1xuIgorIiAoPSAnJXMnKTogJXMiCittc2dzdHIgIiIKKyIlczogWmllbCBkZXIgQ29uZmZpbGUgwrslc8KrIGthbm4gbmljaHQgbWl0IHJlYWRsaW5rIGVybWl0dGVsdCB3ZXJkZW5cbiIKKyIgKD0gwrslc8KrKTogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzo0NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBjb25mZmlsZSAnJS4yNTBzJyByZXNvbHZlcyB0byBkZWdlbmVyYXRlIGZpbGVuYW1lXG4iCisiICgnJXMnIGlzIGEgc3ltbGluayB0byAnJXMnKSIKK21zZ3N0ciAiIgorIiVzOiBDb25mZmlsZSDCuyUuMjUwc8KrIGVyZ2lidCBlaW5lbiBkZWdlbmVyaWVydGVuIERhdGVpbmFtZW5cbiIKKyIgKMK7JXPCqyBpc3QgZWluIHN5bWJvbGlzY2hlciBMaW5rIGF1ZiDCuyVzwqspIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDYwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBjb25mZmlsZSAnJS4yNTBzJyBpcyBub3QgYSBwbGFpbiBmaWxlIG9yIHN5bWxpbmsgKD0gJyVzJykiCittc2dzdHIgIiIKKyIlczogQ29uZmZpbGUgwrslLjI1MHPCqyBpc3Qga2VpbmUgZ2V3w7ZobmxpY2hlIERhdGVpIG9kZXIgc3ltYm9saXNjaGVyIExpbmsgKD0gIgorIsK7JXPCqykiCisKKyM6IHNyYy9jb25maWd1cmUuYzo0ODYKK21zZ2lkICJtZDVoYXNoIgorbXNnc3RyICJtZDVoYXNoIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDkyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB1bmFibGUgdG8gb3BlbiBjb25mZmlsZSAlcyBmb3IgaGFzaDogJXMiCittc2dzdHIgIiIKKyIlczogQ29uZmZpbGUgJXMga2FubiBuaWNodCBnZcO2ZmZuZXQgd2VyZGVuLCB1bSBkaWUgUHLDvGZzdW1tZSB6dSBiZXJlY2huZW46ICVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6NTIyIHNyYy9jb25maWd1cmUuYzo1MjYKK21zZ2lkICJjb25mZmlsZSBkaWZmZXJlbmNlIHZpc3VhbGl6ZXIiCittc2dzdHIgIkNvbmZmaWxlLVVudGVyc2NoaWVkLURhcnN0ZWxsZXIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo1NDMKK21zZ2lkICJUeXBlIGBleGl0JyB3aGVuIHlvdSdyZSBkb25lLlxuIgorbXNnc3RyICJHZWJlbiBTaWUgwrtleGl0wqsgZWluLCB3ZW5uIFNpZSBmZXJ0aWcgc2luZC5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjU1MiBzcmMvY29uZmlndXJlLmM6NTU2Cittc2dpZCAiY29uZmZpbGUgc2hlbGwiCittc2dzdHIgIkNvbmZmaWxlLVNoZWxsIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjAyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJDb25maWd1cmF0aW9uIGZpbGUgYCVzJyIKK21zZ3N0ciAiIgorIlxuIgorIktvbmZpZ3VyYXRpb25zZGF0ZWkgwrslc8KrIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjA0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAoYWN0dWFsbHkgYCVzJykiCittc2dzdHIgIiAoZWlnZW50bGljaCDCuyVzwqspIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjA4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgPT0+IEZpbGUgb24gc3lzdGVtIGNyZWF0ZWQgYnkgeW91IG9yIGJ5IGEgc2NyaXB0LlxuIgorIiA9PT4gRmlsZSBhbHNvIGluIHBhY2thZ2UgcHJvdmlkZWQgYnkgcGFja2FnZSBtYWludGFpbmVyLlxuIgorbXNnc3RyICIiCisiXG4iCisiID09PiBEYXRlaSBhdWYgU3lzdGVtIHd1cmRlIHZvbiBJaG5lbiBvZGVyIHZvbiBlaW5lbSBTa3JpcHQgYW5nZWxlZ3QuXG4iCisiID09PiBEYXRlaSBhdWNoIGluIFBha2V0IHZvbSBQYWtldC1CZXRyZXVlciBiZXJlaXRnZXN0ZWxsdC5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYxMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiICAgICBOb3QgbW9kaWZpZWQgc2luY2UgaW5zdGFsbGF0aW9uLlxuIgorbXNnc3RyICIiCisiXG4iCisiICAgICBOaWNodCBtb2RpZml6aWVydCBzZWl0IGRlciBJbnN0YWxsYXRpb24uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiA9PT4gTW9kaWZpZWQgKGJ5IHlvdSBvciBieSBhIHNjcmlwdCkgc2luY2UgaW5zdGFsbGF0aW9uLlxuIgorbXNnc3RyICIiCisiXG4iCisiID09PiBNb2RpZml6aWVydCAodm9uIElobmVuIG9kZXIgdm9uIGVpbmVtIFNrcmlwdCkgc2VpdCBkZXIgSW5zdGFsbGF0aW9uLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjE2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgPT0+IERlbGV0ZWQgKGJ5IHlvdSBvciBieSBhIHNjcmlwdCkgc2luY2UgaW5zdGFsbGF0aW9uLlxuIgorbXNnc3RyICIiCisiXG4iCisiID09PiBHZWzDtnNjaHQgKHZvbiBJaG5lbiBvZGVyIHZvbiBlaW5lbSBTa3JpcHQpIHNlaXQgZGVyIEluc3RhbGxhdGlvbi5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYxOQorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IFBhY2thZ2UgZGlzdHJpYnV0b3IgaGFzIHNoaXBwZWQgYW4gdXBkYXRlZCB2ZXJzaW9uLlxuIgorbXNnc3RyICIgPT0+IFBha2V0dmVydGVpbGVyIGhhdCBlaW5lIGFrdHVhbGlzaWVydGUgVmVyc2lvbiBoZXJhdXNnZWdlYmVuLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjIwCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgICAgVmVyc2lvbiBpbiBwYWNrYWdlIGlzIHRoZSBzYW1lIGFzIGF0IGxhc3QgaW5zdGFsbGF0aW9uLlxuIgorbXNnc3RyICIiCisiICAgICBEaWUgVmVyc2lvbiBpbSBQYWtldCBpc3QgZGllc2VsYmUgd2llIGJlaSBkZXIgbGV0enRlbiBJbnN0YWxsYXRpb24uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBVc2luZyBuZXcgZmlsZSBhcyB5b3UgcmVxdWVzdGVkLlxuIgorbXNnc3RyICIgPT0+IFdpZSBnZWZvcmRlcnQgd2lyZCBkaWUgbmV1ZSBEYXRlaSB2ZXJ3ZW5kZXQuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBVc2luZyBjdXJyZW50IG9sZCBmaWxlIGFzIHlvdSByZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiA9PT4gV2llIGdlZm9yZGVydCB3aXJkIGRpZSBtb21lbnRhbmUgYWx0ZSBEYXRlaSB2ZXJ3ZW5kZXQuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBLZWVwaW5nIG9sZCBjb25maWcgZmlsZSBhcyBkZWZhdWx0LlxuIgorbXNnc3RyICIgPT0+IEFsdGUgS29uZmlndXJhdGlvbnNkYXRlaSB3aXJkIGFscyBWb3JnYWJlIGJlaWJlaGFsdGVuLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gVXNpbmcgbmV3IGNvbmZpZyBmaWxlIGFzIGRlZmF1bHQuXG4iCittc2dzdHIgIiA9PT4gTmV1ZSBLb25maWd1cmF0aW9uc2RhdGVpIHdpcmQgYWxzIFZvcmdhYmUgdmVyd2VuZGV0LlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjUyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIgICBXaGF0IHdvdWxkIHlvdSBsaWtlIHRvIGRvIGFib3V0IGl0ID8gIFlvdXIgb3B0aW9ucyBhcmU6XG4iCisiICAgIFkgb3IgSSAgOiBpbnN0YWxsIHRoZSBwYWNrYWdlIG1haW50YWluZXIncyB2ZXJzaW9uXG4iCisiICAgIE4gb3IgTyAgOiBrZWVwIHlvdXIgY3VycmVudGx5LWluc3RhbGxlZCB2ZXJzaW9uXG4iCisiICAgICAgRCAgICAgOiBzaG93IHRoZSBkaWZmZXJlbmNlcyBiZXR3ZWVuIHRoZSB2ZXJzaW9uc1xuIgorIiAgICAgIFogICAgIDogc3RhcnQgYSBzaGVsbCB0byBleGFtaW5lIHRoZSBzaXR1YXRpb25cbiIKK21zZ3N0ciAiIgorIiAgIFdpZSBtw7ZjaHRlbiBTaWUgdm9yZ2VoZW4/IElocmUgV2FobG3DtmdsaWNoa2VpdGVuIHNpbmQ6XG4iCisiICAgIFkgb2RlciBJIDogRGllIFZlcnNpb24gZGVzIFBha2V0LUJldHJldWVycyBpbnN0YWxsaWVyZW5cbiIKKyIgICAgTiBvZGVyIE8gOiBEaWUgbW9tZW50YW4gaW5zdGFsbGllcnRlIFZlcnNpb24gYmVpYmVoYWx0ZW5cbiIKKyIgICAgICAgRCAgICAgOiBEaWUgVW50ZXJzY2hpZWRlIHp3aXNjaGVuIGRlbiBWZXJzaW9uZW4gYW56ZWlnZW5cbiIKKyIgICAgICAgWiAgICAgOiBFaW5lIFNoZWxsIHN0YXJ0ZW4sIHVtIGRpZSBTaXR1YXRpb24genUgYmVndXRhY2h0ZW5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY1OQorIywgYy1mb3JtYXQKK21zZ2lkICIgVGhlIGRlZmF1bHQgYWN0aW9uIGlzIHRvIGtlZXAgeW91ciBjdXJyZW50IHZlcnNpb24uXG4iCittc2dzdHIgIiBEZXIgU3RhbmRhcmR3ZWcgaXN0IGRhcyBCZWliZWhhbHRlbiBkZXIgbW9tZW50YW5lbiBWZXJzaW9uLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjYxCisjLCBjLWZvcm1hdAorbXNnaWQgIiBUaGUgZGVmYXVsdCBhY3Rpb24gaXMgdG8gaW5zdGFsbCB0aGUgbmV3IHZlcnNpb24uXG4iCittc2dzdHIgIiBEZXIgU3RhbmRhcmR3ZWcgaXN0IGRpZSBJbnN0YWxsYXRpb24gZGVyIG5ldWVuIFZlcnNpb24uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NjYKK21zZ2lkICJbZGVmYXVsdD1OXSIKK21zZ3N0ciAiW1ZvcmdhYmU9Tl0iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NjcKK21zZ2lkICJbZGVmYXVsdD1ZXSIKK21zZ3N0ciAiW1ZvcmdhYmU9WV0iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NjgKK21zZ2lkICJbbm8gZGVmYXVsdF0iCittc2dzdHIgIltLZWluZSBWb3JnYWJlXSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY3MQorbXNnaWQgImVycm9yIHdyaXRpbmcgdG8gc3RkZXJyLCBkaXNjb3ZlcmVkIGJlZm9yZSBjb25mZmlsZSBwcm9tcHQiCittc2dzdHIgIiIKKyJGZWhsZXIgYmVpbSBTY2hyZWliZW4gYXVmIFN0YW5kYXJkLUZlaGxlcmF1c2dhYmUsIGVudGRlY2t0IHZvciBDb25mZmlsZS0iCisiRWluZ2FiZWF1ZmZvcmRlcnVuZyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY4MAorbXNnaWQgInJlYWQgZXJyb3Igb24gc3RkaW4gYXQgY29uZmZpbGUgcHJvbXB0IgorbXNnc3RyICIiCisiRmVobGVyIGJlaW0gTGVzZW4gdm9uIFN0YW5kYXJkZWluZ2FiZSBhbiBkZXIgQ29uZmZpbGUtRWluZ2FiZWF1ZmZvcmRlcnVuZyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY4MQorbXNnaWQgIkVPRiBvbiBzdGRpbiBhdCBjb25mZmlsZSBwcm9tcHQiCittc2dzdHIgIkVPRiBhdWYgU3RhbmRhcmRlaW5nYWJlIGFuIGRlciBDb25mZmlsZS1FaW5nYWJlYXVmZm9yZGVydW5nIgorCisjOiBzcmMvZGVwY29uLmM6MTc1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGRlcGVuZHMgb24gJXMiCittc2dzdHIgIiVzIGjDpG5ndCB2b24gJXMgYWIiCisKKyM6IHNyYy9kZXBjb24uYzoxNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcHJlLWRlcGVuZHMgb24gJXMiCittc2dzdHIgIiVzIGjDpG5ndCAodm9yaGVyKSB2b24gJXMgYWIiCisKKyM6IHNyYy9kZXBjb24uYzoxODEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcmVjb21tZW5kcyAlcyIKK21zZ3N0ciAiJXMgZW1wZmllaGx0ICVzIgorCisjOiBzcmMvZGVwY29uLmM6MTg0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHN1Z2dlc3RzICVzIgorbXNnc3RyICIlcyBzY2hsw6RndCAlcyB2b3IiCisKKyM6IHNyYy9kZXBjb24uYzoxODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgYnJlYWtzICVzIgorbXNnc3RyICIlcyBiZXNjaMOkZGlndCAlcyIKKworIzogc3JjL2RlcGNvbi5jOjE5MAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBjb25mbGljdHMgd2l0aCAlcyIKK21zZ3N0ciAiJXMga29sbGlkaWVydCBtaXQgJXMiCisKKyM6IHNyYy9kZXBjb24uYzoxOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgZW5oYW5jZXMgJXMiCittc2dzdHIgIiVzIGVyd2VpdGVydCAlcyIKKworIzogc3JjL2RlcGNvbi5jOjI5NgorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyBzb2xsIGVudGZlcm50IHdlcmRlbi5cbiIKKworIzogc3JjL2RlcGNvbi5jOjI5OQorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB0byBiZSBkZWNvbmZpZ3VyZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIHNvbGwgZGVrb25maWd1cmllcnQgd2VyZGVuLlxuIgorCisjOiBzcmMvZGVwY29uLmM6MzA0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHRvIGJlIGluc3RhbGxlZCwgYnV0IGlzIHZlcnNpb24gJS4yNTBzLlxuIgorbXNnc3RyICIgICUuMjUwcyBzb2xsIGluc3RhbGxpZXJ0IHdlcmRlbiwgaXN0IGFiZXIgVmVyc2lvbiAlLjI1MHMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgaW5zdGFsbGVkLCBidXQgaXMgdmVyc2lvbiAlLjI1MHMuXG4iCittc2dzdHIgIiAgJS4yNTBzIGlzdCBpbnN0YWxsaWVydCwgaXN0IGFiZXIgVmVyc2lvbiAlLjI1MHMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdW5wYWNrZWQsIGJ1dCBoYXMgbmV2ZXIgYmVlbiBjb25maWd1cmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyBpc3QgZW50cGFja3QsIHd1cmRlIGFiZXIgbmllIGtvbmZpZ3VyaWVydC5cbiIKKworIzogc3JjL2RlcGNvbi5jOjMzNworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB1bnBhY2tlZCwgYnV0IGlzIHZlcnNpb24gJS4yNTBzLlxuIgorbXNnc3RyICIgICUuMjUwcyBpc3QgZW50cGFja3QsIGlzdCBhYmVyIFZlcnNpb24gJS4yNTBzLlxuIgorCisjOiBzcmMvZGVwY29uLmM6MzQzCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGxhdGVzdCBjb25maWd1cmVkIHZlcnNpb24gaXMgJS4yNTBzLlxuIgorbXNnc3RyICIgICUuMjUwcyBsZXR6dGUga29uZmlndXJpZXJ0ZSBWZXJzaW9uIGlzdCAlLjI1MHMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozNTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgJXMuXG4iCittc2dzdHIgIiAgJS4yNTBzIGlzdCAlcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjM4OAorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYnV0IGlzIHRvIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIGxpZWZlcnQgJS4yNTBzLCBzb2xsIGFiZXIgZW50ZmVybnQgd2VyZGVuLlxuIgorCisjOiBzcmMvZGVwY29uLmM6MzkyCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBidXQgaXMgdG8gYmUgZGVjb25maWd1cmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyBsaWVmZXJ0ICUuMjUwcywgc29sbCBhYmVyIGRla29uZmlndXJpZXJ0IHdlcmRlbi5cbiIKKworIzogc3JjL2RlcGNvbi5jOjQwMQorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYnV0IGlzICVzLlxuIgorbXNnc3RyICIgICUuMjUwcyBsaWVmZXJ0ICUuMjUwcywgaXN0IGFiZXIgJXMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0MTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgbm90IGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMgaXN0IG5pY2h0IGluc3RhbGxpZXJ0LlxuIgorCisjOiBzcmMvZGVwY29uLmM6NDQzCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzICh2ZXJzaW9uICUuMjUwcykgaXMgdG8gYmUgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIgICUuMjUwcyAoVmVyc2lvbiAlLjI1MHMpIHNvbGwgaW5zdGFsbGllcnQgd2VyZGVuLlxuIgorCisjOiBzcmMvZGVwY29uLmM6NDY4CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzICh2ZXJzaW9uICUuMjUwcykgaXMgcHJlc2VudCBhbmQgJXMuXG4iCittc2dzdHIgIiAgJS4yNTBzIChWZXJzaW9uICUuMjUwcykgaXN0IHZvcmhhbmRlbiB1bmQgJXMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGFuZCBpcyB0byBiZSBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIGxpZWZlcnQgJS4yNTBzIHVuZCB3aXJkIGluc3RhbGxpZXJ0LlxuIgorCisjOiBzcmMvZGVwY29uLmM6NTM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBhbmQgaXMgcHJlc2VudCBhbmQgJXMuXG4iCittc2dzdHIgIiAgJS4yNTBzIGxpZWZlcnQgJS4yNTBzIHVuZCBpc3Qgdm9yaGFuZGVuIHVuZCAlcy5cbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjUwCittc2dpZCAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBkaXZlcnRpbmcgZmlsZXMuIgorbXNnc3RyICJWZXJ3ZW5kZW4gU2llIC0taGVscCBmw7xyIEhpbGZlIHp1bSBVbWxlaXRlbiB2b24gRGF0ZWllbi4iCisKKyMKKyM6IHNyYy9kaXZlcnRjbWQuYzo2NiBzcmMvc3RhdGNtZC5jOjU3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo4MAorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gJXMgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiRGViaWFuICVzIFZlcnNpb24gJXMuXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo3MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDEwIEd1aWxsZW0gSm92ZXIuXG4iCittc2dzdHIgIiIKKyJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMTAgR3VpbGxlbSBKb3Zlci5cbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjc1IHNyYy9tYWluLmM6NjMgc3JjL3F1ZXJ5Y21kLmM6NjAzIHNyYy9zdGF0Y21kLmM6NjUKKyM6IHNyYy90cmlnY21kLmM6NTUgZHBrZy1kZWIvbWFpbi5jOjU3IGRwa2ctc3BsaXQvbWFpbi5jOjUxCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6ODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgb3JcbiIKKyJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKK21zZ3N0ciAiIgorIkRpZXMgaXN0IGZyZWllIFNvZnR3YXJlOyBsZXNlbiBTaWUgZGllIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGluIGRlclxuIgorIlZlcnNpb24gMiBvZGVyIGjDtmhlciBmw7xyIEtvcGllcmJlZGluZ3VuZ2VuLiBFcyB3aXJkIEtFSU5FIEhhZnR1bmcgIgorIsO8YmVybm9tbWVuLlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6ODcgc3JjL21haW4uYzo4MSBzcmMvcXVlcnljbWQuYzo2MTUgc3JjL3N0YXRjbWQuYzo3NworIzogZHBrZy1kZWIvbWFpbi5jOjY5IGRwa2ctc3BsaXQvbWFpbi5jOjYzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo5NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIDxjb21tYW5kPlxuIgorIlxuIgorbXNnc3RyICIiCisiQXVmcnVmOiAlcyBbPE9wdGlvbj4gLi4uXSA8QmVmZWhsPlxuIgorIlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6OTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgWy0tYWRkXSA8ZmlsZT4gICAgICAgICAgIGFkZCBhIGRpdmVyc2lvbi5cbiIKKyIgIC0tcmVtb3ZlIDxmaWxlPiAgICAgICAgICByZW1vdmUgdGhlIGRpdmVyc2lvbi5cbiIKKyIgIC0tbGlzdCBbPGdsb2ItcGF0dGVybj5dICBzaG93IGZpbGUgZGl2ZXJzaW9ucy5cbiIKKyIgIC0tbGlzdHBhY2thZ2UgPGZpbGU+ICAgICBzaG93IHdoYXQgcGFja2FnZSBkaXZlcnRzIHRoZSBmaWxlLlxuIgorIiAgLS10cnVlbmFtZSA8ZmlsZT4gICAgICAgIHJldHVybiB0aGUgZGl2ZXJ0ZWQgZmlsZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIkJlZmVobGU6XG4iCisiICBbLS1hZGRdIDxEYXRlaT4gICAgICAgICAgZWluZSBVbWxlaXR1bmcgaGluenVmw7xnZW4uXG4iCisiICAtLXJlbW92ZSA8RGF0ZWk+ICAgICAgICAgVW1sZWl0dW5nIGVudGZlcm5lbi5cbiIKKyIgIC0tbGlzdCBbPEdsb2ItTXVzdGVyPl0gICBEYXRlaS1VbWxlaXR1bmdlbiBhbnplaWdlbi5cbiIKKyIgIC0tbGlzdHBhY2thZ2UgPERhdGVpPiAgICBQYWtldCBhbnplaWdlbiwgd2VsY2hlcyBkaWUgRGF0ZWkgdW1sZWl0ZXQuXG4iCisiICAtLXRydWVuYW1lIDxEYXRlaT4gICAgICAgZGllIHVtZ2VsZWl0ZXRlIERhdGVpIHp1csO8Y2tnZWJlbi5cbiIKKyJcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjEwMAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tcGFja2FnZSA8cGFja2FnZT4gICAgICBuYW1lIG9mIHRoZSBwYWNrYWdlIHdob3NlIGNvcHkgb2YgPGZpbGU+IHdpbGwgIgorIm5vdFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmUgZGl2ZXJ0ZWQuXG4iCisiICAtLWxvY2FsICAgICAgICAgICAgICAgICAgYWxsIHBhY2thZ2VzJyB2ZXJzaW9ucyBhcmUgZGl2ZXJ0ZWQuXG4iCisiICAtLWRpdmVydCA8ZGl2ZXJ0LXRvPiAgICAgdGhlIG5hbWUgdXNlZCBieSBvdGhlciBwYWNrYWdlcycgdmVyc2lvbnMuXG4iCisiICAtLXJlbmFtZSAgICAgICAgICAgICAgICAgYWN0dWFsbHkgbW92ZSB0aGUgZmlsZSBhc2lkZSAob3IgYmFjaykuXG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgc2V0IHRoZSBkaXJlY3Rvcnkgd2l0aCB0aGUgZGl2ZXJzaW9ucyBmaWxlLlxuIgorIiAgLS10ZXN0ICAgICAgICAgICAgICAgICAgIGRvbid0IGRvIGFueXRoaW5nLCBqdXN0IGRlbW9uc3RyYXRlLlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHF1aWV0IG9wZXJhdGlvbiwgbWluaW1hbCBvdXRwdXQuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorbXNnc3RyICIiCisiT3B0aW9uZW46XG4iCisiICAtLXBhY2thZ2UgPFBha2V0PiAgICAgICAgTmFtZSBkZXMgUGFrZXRlcywgZGVzc2VuIEtvcGllIHZvbiA8RGF0ZWk+IG5pY2h0XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bWdlbGVpdGV0IHdlcmRlbiB3aXJkLlxuIgorIiAgLS1sb2NhbCAgICAgICAgICAgICAgICAgIEFsbGUgVmVyc2lvbmVuIGVpbmVzIFBha2V0cyB3ZXJkZW4gdW1nZWxlaXRldC5cbiIKKyIgIC0tZGl2ZXJ0IDxkaXZlcnQtdG8+ICAgICBOYW1lLCBkZXIgdm9uIFZlcnNpb25lbiBhbmRlcmVyIFBha2V0ZSBiZW51dHp0ICIKKyJ3aXJkLlxuIgorIiAgLS1yZW5hbWUgICAgICAgICAgICAgICAgIERhdGVpIHRhdHPDpGNobGljaCBiZWlzZWl0ZSBzY2hpZWJlbiAob2RlciAiCisienVyw7xjaykuXG4iCisiICAtLWFkbWluZGlyIDxWZXJ6ZWljaG5pcz4gVmVyemVpY2huaXMgbWl0IGRlciBkaXZlcnNpb25zLURhdGVpIHNldHplbi5cbiIKKyIgIC0tdGVzdCAgICAgICAgICAgICAgICAgICBuaWNodHMgdHVuLCBudXIgdm9yZsO8aHJlbiwgd2FzIGdlc2NoZWhlbiB3w7xyZGUuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgc3RpbGxlIEF1c2bDvGhydW5nLCBtaW5pbWFsZSBBdXNnYWJlbi5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICBkaWVzZW4gSGlsZmV0ZXh0IGFuemVpZ2VuLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIFZlcnNpb24gYW56ZWlnZW4uXG4iCisiXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIldoZW4gYWRkaW5nLCBkZWZhdWx0IGlzIC0tbG9jYWwgYW5kIC0tZGl2ZXJ0IDxvcmlnaW5hbD4uZGlzdHJpYi5cbiIKKyJXaGVuIHJlbW92aW5nLCAtLXBhY2thZ2Ugb3IgLS1sb2NhbCBhbmQgLS1kaXZlcnQgbXVzdCBtYXRjaCBpZiBzcGVjaWZpZWQuXG4iCisiUGFja2FnZSBwcmVpbnN0L3Bvc3RybSBzY3JpcHRzIHNob3VsZCBhbHdheXMgc3BlY2lmeSAtLXBhY2thZ2UgYW5kIC0tIgorImRpdmVydC5cbiIKK21zZ3N0ciAiIgorIkJlaW0gSGluenVmw7xnZW4gaXN0IC0tbG9jYWwgdW5kIC0tZGl2ZXJ0IDxPcmlnaW5hbD4uZGlzdHJpYiBTdGFuZGFyZC5cbiIKKyJCZWltIEVudGZlcm5lbiBtw7xzc2VuIC0tcGFja2FnZSBvZGVyIC0tbG9jYWwgb2RlciAtLWRpdmVydCDDvGJlcmVpbnN0aW1tZW4sXG4iCisiZmFsbHMgYW5nZWdlYmVuLiBQYWtldC1wcmVpbnN0L3Bvc3RybS1Ta3JpcHRlIHNvbGx0ZW4gaW1tZXIgLS1wYWNrYWdlXG4iCisidW5kIC0tZGl2ZXJ0IGFuZ2ViZW4uXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoxNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2hlY2tpbmcgJyVzJyIKK21zZ3N0ciAiRmVobGVyIGJlaW0gw5xiZXJwcsO8ZmVuIHZvbiDCuyVzwqsiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInJlbmFtZSBpbnZvbHZlcyBvdmVyd3JpdGluZyBgJXMnIHdpdGhcbiIKKyIgIGRpZmZlcmVudCBmaWxlIGAlcycsIG5vdCBhbGxvd2VkIgorbXNnc3RyICIiCisiVW1iZW5lbm5lbiBiZWluaGFsdGV0IMOcYmVyc2NocmVpYmVuIHZvbiDCuyVzwqsgbWl0XG4iCisiICBhbmRlcmVyIERhdGVpIMK7JXPCqywgbmljaHQgZXJsYXVidCIKKworIzogc3JjL2RpdmVydGNtZC5jOjIyMyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTM3MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGZpbGUgJyVzJyIKK21zZ3N0ciAiRGF0ZWkgwrslc8KrIGthbm4gbmljaHQgYW5nZWxlZ3Qgd2VyZGVuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjI3Cittc2dpZCAiZmlsZSBjb3B5IgorbXNnc3RyICJEYXRlaWtvcGllIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjM5CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZW5hbWUgJyVzJyB0byAnJXMnIgorbXNnc3RyICLCuyVzwqsga2FubiBuaWNodCBpbiDCuyVzwqsgdW1iZW5hbm50IHdlcmRlbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjI1MgorIywgYy1mb3JtYXQKK21zZ2lkICJyZW5hbWU6IHJlbW92ZSBkdXBsaWNhdGUgb2xkIGxpbmsgJyVzJyIKK21zZ3N0ciAicmVuYW1lOiBFbnRmZXJuZW4gZGVzIGRvcHBlbHRlbiBhbHRlbiBMaW5rcyDCuyVzwqsiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyNjIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBjb3BpZWQgc291cmNlIGZpbGUgJyVzJyIKK21zZ3N0ciAiS29waWVydGUgUXVlbGxkYXRlaSDCuyVzwqsga2FubiBuaWNodCBlbnRmZXJudCB3ZXJkZW4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyODQKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9jYWwgZGl2ZXJzaW9uIG9mICVzIgorbXNnc3RyICJsb2thbGUgVW1sZWl0dW5nIHZvbiAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjI4NgorIywgYy1mb3JtYXQKK21zZ2lkICJsb2NhbCBkaXZlcnNpb24gb2YgJXMgdG8gJXMiCittc2dzdHIgImxva2FsZSBVbWxlaXR1bmcgdm9uICVzIHp1ICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjkwCisjLCBjLWZvcm1hdAorbXNnaWQgImRpdmVyc2lvbiBvZiAlcyBieSAlcyIKK21zZ3N0ciAiVW1sZWl0dW5nIHZvbiAlcyBkdXJjaCAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjI5MworIywgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnNpb24gb2YgJXMgdG8gJXMgYnkgJXMiCittc2dzdHIgIlVtbGVpdHVuZyB2b24gJXMgenUgJXMgZHVyY2ggJXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozMDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiYW55IGRpdmVyc2lvbiBvZiAlcyIKK21zZ3N0ciAiamVkZSBVbWxlaXR1bmcgdm9uICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MzExCisjLCBjLWZvcm1hdAorbXNnaWQgImFueSBkaXZlcnNpb24gb2YgJXMgdG8gJXMiCittc2dzdHIgImplZGUgVW1sZWl0dW5nIHZvbiAlcyB6dSAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjM1NworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgY3JlYXRlIG5ldyAlcyBmaWxlIgorbXNnc3RyICJOZXVlICVzLURhdGVpIGthbm4gbmljaHQgYW5nZWxlZ3Qgd2VyZGVuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mzc1IHNyYy9zdGF0Y21kLmM6MjE1IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNDA0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCBmaWxlICclcyciCittc2dzdHIgIkRhdGVpIMK7JXPCqyBrYW5uIG5pY2h0IHp1csO8Y2tnZXNjaHJpZWJlbiB3ZXJkZW4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozODIKK21zZ2lkICJlcnJvciByZW1vdmluZyBvbGQgZGl2ZXJzaW9ucy1vbGQiCittc2dzdHIgIkZlaGxlciBiZWltIEVudGZlcm5lbiB2b24gYWx0ZXIgZGl2ZXJzaW9ucy1vbGQiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozODQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBuZXcgZGl2ZXJzaW9ucy1vbGQiCittc2dzdHIgIkZlaGxlciBiZWltIEFubGVnZW4gZGVyIG5ldWVuIGRpdmVyc2lvbnMtb2xkIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mzg2Cittc2dpZCAiZXJyb3IgaW5zdGFsbGluZyBuZXcgZGl2ZXJzaW9ucyIKK21zZ3N0ciAiRmVobGVyIGJlaW0gSW5zdGFsbGllcmVuIGRlciBuZXVlbiBkaXZlcnNpb25zIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDA2IHNyYy9kaXZlcnRjbWQuYzo1MDMgc3JjL2RpdmVydGNtZC5jOjYxMAorIzogc3JjL2RpdmVydGNtZC5jOjYzMCBzcmMvc3RhdGNtZC5jOjI5MAorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGEgc2luZ2xlIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIGJlbsO2dGlndCBlaW4gZWluemVsbmVzIEFyZ3VtZW50IgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDA5IHNyYy9kaXZlcnRjbWQuYzo0MzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZW5hbWUgXCIlc1wiIGlzIG5vdCBhYnNvbHV0ZSIKK21zZ3N0ciAiRGF0ZWluYW1lIMK7JXPCqyBpc3QgbmljaHQgYWJzb2x1dCIKKworIzogc3JjL2RpdmVydGNtZC5jOjQxMSBzcmMvc3RhdGNtZC5jOjI0OQorbXNnaWQgImZpbGUgbWF5IG5vdCBjb250YWluIG5ld2xpbmVzIgorbXNnc3RyICJEYXRlaW5hbWUgZGFyZiBrZWluZSBaZWlsZW52b3JzY2jDvGJlIGVudGhhbHRlbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjQxOAorbXNnaWQgIkNhbm5vdCBkaXZlcnQgZGlyZWN0b3JpZXMiCittc2dzdHIgIlZlcnplaWNobmlzc2Uga8O2bm5lbiBuaWNodCB1bWdlbGVpdGV0IHdlcmRlbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjQzMworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgZGl2ZXJ0IGZpbGUgJyVzJyB0byBpdHNlbGYiCittc2dzdHIgIkRhdGVpIMK7JXPCqyBrYW5uIG5pY2h0IGF1ZiBzaWNoIHNlbGJzdCB1bWdlbGVpdGV0IHdlcmRlbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjQ1MworIywgYy1mb3JtYXQKK21zZ2lkICJMZWF2aW5nICclcydcbiIKK21zZ3N0ciAiwrslc8KrIHdpcmQgYmVpYmVoYWx0ZW5cbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjQ1OAorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGNsYXNoZXMgd2l0aCBgJXMnIgorbXNnc3RyICLCuyVzwqsga29sbGlkaWVydCBtaXQgwrslc8KrIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDgxCisjLCBjLWZvcm1hdAorbXNnaWQgIkFkZGluZyAnJXMnXG4iCittc2dzdHIgIsK7JXPCqyB3aXJkIGhpbnp1Z2Vmw7xndFxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTEwCisjLCBjLWZvcm1hdAorbXNnaWQgIk5vIGRpdmVyc2lvbiAnJXMnLCBub25lIHJlbW92ZWQuXG4iCittc2dzdHIgIktlaW5lIFVtbGVpdHVuZyDCuyVzwqssIGtlaW5lIGVudGZlcm50LlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTI1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJtaXNtYXRjaCBvbiBkaXZlcnQtdG9cbiIKKyIgIHdoZW4gcmVtb3ZpbmcgYCVzJ1xuIgorIiAgZm91bmQgYCVzJyIKK21zZ3N0ciAiIgorIktlaW5lIMOcYmVyZWluc3RpbW11bmcgbWl0IFppZWwgZsO8ciBVbWxlaXR1bmdcbiIKKyIgIGJlaW0gRW50ZmVybmVuIHZvbiDCuyVzwqtcbiIKKyIgIMK7JXPCqyBnZWZ1bmRlbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjUzMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisibWlzbWF0Y2ggb24gcGFja2FnZVxuIgorIiAgd2hlbiByZW1vdmluZyBgJXMnXG4iCisiICBmb3VuZCBgJXMnIgorbXNnc3RyICIiCisiS2VpbmUgw5xiZXJlaW5zdGltbXVuZyBtaXQgUGFrZXRcbiIKKyIgIGJlaW0gRW50ZmVybmVuIHZvbiDCuyVzwqtcbiIKKyIgIMK7JXPCqyBnZWZ1bmRlbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjUzOQorIywgYy1mb3JtYXQKK21zZ2lkICJSZW1vdmluZyAnJXMnXG4iCittc2dzdHIgIsK7JXPCqyB3aXJkIGVudGZlcm50XG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo2NTcKK21zZ2lkICJwYWNrYWdlIG1heSBub3QgY29udGFpbiBuZXdsaW5lcyIKK21zZ3N0ciAiUGFrZXRuYW1lIGRhcmYga2VpbmUgWmVpbGVudm9yc2Now7xiZSBlbnRoYWx0ZW4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo2NjYKK21zZ2lkICJkaXZlcnQtdG8gbWF5IG5vdCBjb250YWluIG5ld2xpbmVzIgorbXNnc3RyICJOYW1lIGRlciBVbWxlaXR1bmcgZGFyZiBrZWluZSBaZWlsZW52b3JzY2jDvGJlIGVudGhhbHRlbiIKKworIzogc3JjL2RpdmVydGRiLmM6NjQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiBkaXZlcnNpb25zIGZpbGUiCittc2dzdHIgIsOWZmZuZW4gZGVyIGRpdmVyc2lvbnMtRGF0ZWkgZmVobGdlc2NobGFnZW4iCisKKyM6IHNyYy9kaXZlcnRkYi5jOjcxCittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IHByZXZpb3VzIGRpdmVyc2lvbnMgZmlsZSIKK21zZ3N0ciAiQWJmcmFnZW4gZGVyIHZvcmhlcmlnZW4gZGl2ZXJzaW9ucy1EYXRlaSBtaXQgZnN0YXQgZmVobGdlc2NobGFnZW4iCisKKyM6IHNyYy9kaXZlcnRkYi5jOjczCittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGRpdmVyc2lvbnMgZmlsZSIKK21zZ3N0ciAiQWJmcmFnZW4gZGVyIGRpdmVyc2lvbnMtRGF0ZWkgbWl0IGZzdGF0IGZlaGxnZXNjaGxhZ2VuIgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzoxMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmxpY3RpbmcgZGl2ZXJzaW9ucyBpbnZvbHZpbmcgYCUuMjUwcycgb3IgYCUuMjUwcyciCittc2dzdHIgImtvbGxpZGllcmVuZGUgVW1sZWl0dW5nZW4gYmV0cmVmZmVuZCDCuyUuMjUwc8KrIHVuZCDCuyUuMjUwc8KrIgorCisjOiBzcmMvZW5xdWlyeS5jOjczCittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgYXJlIGluIGEgbWVzcyBkdWUgdG8gc2VyaW91cyBwcm9ibGVtcyBkdXJpbmdcbiIKKyJpbnN0YWxsYXRpb24uICBUaGV5IG11c3QgYmUgcmVpbnN0YWxsZWQgZm9yIHRoZW0gKGFuZCBhbnkgcGFja2FnZXNcbiIKKyJ0aGF0IGRlcGVuZCBvbiB0aGVtKSB0byBmdW5jdGlvbiBwcm9wZXJseTpcbiIKK21zZ3N0ciAiIgorIkRpZSBmb2xnZW5kZW4gUGFrZXRlIGJlZmluZGVuIHNpY2ggZHVyY2ggc2Nod2VyZSBQcm9ibGVtZSBiZWkgZGVyICIKKyJJbnN0YWxsYXRpb25cbiIKKyJpbiBlaW5lbSBTY2hsYW1hc3NlbC4gU2llIG3DvHNzZW4gbmV1IGluc3RhbGxpZXJ0IHdlcmRlbiwgZGFtaXQgc2llXG4iCisiKHVuZCBhbGxlIHZvbiBpaG5lbiBhYmjDpG5nZW5kZSBQYWtldGUpIG9yZG51bmdzZ2Vtw6TDnyBmdW5rdGlvbmllcmVuOlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjgwCittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgaGF2ZSBiZWVuIHVucGFja2VkIGJ1dCBub3QgeWV0IGNvbmZpZ3VyZWQuXG4iCisiVGhleSBtdXN0IGJlIGNvbmZpZ3VyZWQgdXNpbmcgZHBrZyAtLWNvbmZpZ3VyZSBvciB0aGUgY29uZmlndXJlXG4iCisibWVudSBvcHRpb24gaW4gZHNlbGVjdCBmb3IgdGhlbSB0byB3b3JrOlxuIgorbXNnc3RyICIiCisiRGllIGZvbGdlbmRlbiBQYWtldGUgd3VyZGVuIGVudHBhY2t0LCBhYmVyIG5vY2ggbmljaHQga29uZmlndXJpZXJ0LlxuIgorIlNpZSBtw7xzc2VuIG1pdCBkcGtnIC0tY29uZmlndXJlIG9kZXIgZGVtIEtvbmZpZ3VyYXRpb25zLU1lbsO8ZWludHJhZyBpblxuIgorImRzZWxlY3Qga29uZmlndXJpZXJ0IHdlcmRlbiwgZGFtaXQgc2llIG9yZG51bmdzZ2Vtw6TDnyBmdW5rdGlvbmllcmVuOlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjg3Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgYXJlIG9ubHkgaGFsZiBjb25maWd1cmVkLCBwcm9iYWJseSBkdWUgdG8gcHJvYmxlbXNcbiIKKyJjb25maWd1cmluZyB0aGVtIHRoZSBmaXJzdCB0aW1lLiAgVGhlIGNvbmZpZ3VyYXRpb24gc2hvdWxkIGJlIHJldHJpZWQgdXNpbmdcbiIKKyJkcGtnIC0tY29uZmlndXJlIDxwYWNrYWdlPiBvciB0aGUgY29uZmlndXJlIG1lbnUgb3B0aW9uIGluIGRzZWxlY3Q6XG4iCittc2dzdHIgIiIKKyJEaWUgZm9sZ2VuZGVuIFBha2V0ZSBzaW5kIG51ciBoYWxiIGtvbmZpZ3VyaWVydCwgd2FocnNjaGVpbmxpY2ggZHVyY2hcbiIKKyJQcm9ibGVtZSB3w6RocmVuZCBkZXIgZXJzdGVuIEtvbmZpZ3VyYXRpb24uIERpZSBLb25maWd1cmF0aW9uIHNvbGx0ZSBtaXRcbiIKKyJkcGtnIC0tY29uZmlndXJlIDxQYWtldD4gb2RlciBtaXQgZGVtIEtvbmZpZ3VyYXRpb25zLU1lbsO8ZWludHJhZyBpblxuIgorImRzZWxlY3QgZXJuZXV0IHZlcnN1Y2h0IHdlcmRlbjpcbiIKKworIzogc3JjL2VucXVpcnkuYzo5NAorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBvbmx5IGhhbGYgaW5zdGFsbGVkLCBkdWUgdG8gcHJvYmxlbXMgZHVyaW5nXG4iCisiaW5zdGFsbGF0aW9uLiAgVGhlIGluc3RhbGxhdGlvbiBjYW4gcHJvYmFibHkgYmUgY29tcGxldGVkIGJ5IHJldHJ5aW5nIGl0O1xuIgorInRoZSBwYWNrYWdlcyBjYW4gYmUgcmVtb3ZlZCB1c2luZyBkc2VsZWN0IG9yIGRwa2cgLS1yZW1vdmU6XG4iCittc2dzdHIgIiIKKyJEaWUgZm9sZ2VuZGVuIFBha2V0ZSBzaW5kIHdlZ2VuIFByb2JsZW1lbiB3w6RocmVuZCBkZXIgSW5zdGFsbGF0aW9uIG51ciBoYWxiXG4iCisiaW5zdGFsbGllcnQuIERpZSBJbnN0YWxsYXRpb24ga2FubiB3YWhyc2NoZWlubGljaCBkdXJjaCBlcm5ldXRlbiBWZXJzdWNoXG4iCisiYmVlbmRldCB3ZXJkZW47IGRpZSBQYWtldGUga8O2bm5lbiBtaXQgZHNlbGVjdCBvZGVyIG1pdCBkcGtnIC0tcmVtb3ZlICIKKyJlbnRmZXJudFxuIgorIndlcmRlbjpcbiIKKworIzogc3JjL2VucXVpcnkuYzoxMDEKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgYXdhaXRpbmcgcHJvY2Vzc2luZyBvZiB0cmlnZ2VycyB0aGF0IHRoZXlcbiIKKyJoYXZlIGFjdGl2YXRlZCBpbiBvdGhlciBwYWNrYWdlcy4gIFRoaXMgcHJvY2Vzc2luZyBjYW4gYmUgcmVxdWVzdGVkIHVzaW5nXG4iCisiZHNlbGVjdCBvciBkcGtnIC0tY29uZmlndXJlIC0tcGVuZGluZyAob3IgZHBrZyAtLXRyaWdnZXJzLW9ubHkpOlxuIgorbXNnc3RyICIiCisiRGllIGZvbGdlbmRlbiBQYWtldGUgd2FydGVuIGF1ZiBkaWUgVmVyYXJiZWl0dW5nIHZvbiBUcmlnZ2VybiwgZGllIHNpZSBpblxuIgorImFuZGVyZW4gUGFrZXRlbiBha3RpdmllcnQgaGFiZW4uIERpZXNlIFZlcmFyYmVpdHVuZyBrYW5uIG1pdCBkc2VsZWN0IG9kZXJcbiIKKyJkcGtnIC0tY29uZmlndXJlIC0tcGVuZGluZyAob2RlciBkcGtnIC0tdHJpZ2dlcnMtb25seSkgYW5nZWZvcmRlcnQgd2VyZGVuOlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjEwOAorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGhhdmUgYmVlbiB0cmlnZ2VyZWQsIGJ1dCB0aGUgdHJpZ2dlciBwcm9jZXNzaW5nXG4iCisiaGFzIG5vdCB5ZXQgYmVlbiBkb25lLiAgVHJpZ2dlciBwcm9jZXNzaW5nIGNhbiBiZSByZXF1ZXN0ZWQgdXNpbmdcbiIKKyJkc2VsZWN0IG9yIGRwa2cgLS1jb25maWd1cmUgLS1wZW5kaW5nIChvciBkcGtnIC0tdHJpZ2dlcnMtb25seSk6XG4iCittc2dzdHIgIiIKKyJEaWUgZm9sZ2VuZGVuIFBha2V0ZSBzaW5kIGdldHJpZ2dlcnQgd29yZGVuLCBhYmVyIGRpZSBUcmlnZ2VydmVyYXJiZWl0dW5nXG4iCisiaXN0IG5vY2ggbmljaHQgZXJmb2xndC4gVHJpZ2dlcnZlcmFyYmVpdHVuZyBrYW5uIG1pdCBkc2VsZWN0IG9kZXJcbiIKKyJkcGtnIC0tY29uZmlndXJlIC0tcGVuZGluZyAob2RlciBkcGtnIC0tdHJpZ2dlcnMtb25seSkgYW5nZWZvcmRlcnQgd2VyZGVuOlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjEzNyBzcmMvZW5xdWlyeS5jOjIxMSBzcmMvZW5xdWlyeS5jOjI5MiBzcmMvZW5xdWlyeS5jOjM3MworIzogc3JjL2VucXVpcnkuYzo0NjAgc3JjL3NlbGVjdC5jOjk4IHNyYy9zZWxlY3QuYzoxNjQgc3JjL3RyaWdjbWQuYzoxOTkKKyM6IHNyYy91cGRhdGUuYzo0OCBzcmMvdXBkYXRlLmM6MTEzIGRwa2ctc3BsaXQvcXVldWUuYzoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyB0YWtlcyBubyBhcmd1bWVudHMiCittc2dzdHIgIi0tJXMgYWt6ZXB0aWVydCBrZWluZSBBcmd1bWVudGUiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTUyCittc2dpZCAiIgorIkFub3RoZXIgcHJvY2VzcyBoYXMgbG9ja2VkIHRoZSBkYXRhYmFzZSBmb3Igd3JpdGluZywgYW5kIG1pZ2h0IGN1cnJlbnRseSBiZVxuIgorIm1vZGlmeWluZyBpdCwgc29tZSBvZiB0aGUgZm9sbG93aW5nIHByb2JsZW1zIG1pZ2h0IGp1c3QgYmUgZHVlIHRvIHRoYXQuXG4iCittc2dzdHIgIiIKKyJFaW4gYW5kZXJlciBQcm96ZXNzIGhhdCBkaWUgRGF0ZW5iYW5rIHp1bSBTY2hyZWliZW4gZ2VzcGVycnQgdW5kIGvDtm5udGUgc2llXG4iCisiZ2VyYWRlIHZlcsOkbmRlcm4sIGVpbmlnZSBkZXIgZm9sZ2VuZGVuIFByb2JsZW1lIHNpbmQgbcO2Z2xpY2hlcndlaXNlIGRhZHVyY2hcbiIKKyJ2ZXJ1cnNhY2h0LlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjE5MQorbXNnY3R4dCAic2VjdGlvbiIKK21zZ2lkICI8dW5rbm93bj4iCittc2dzdHIgIjx1bmJla2FubnQ+IgorCisjOiBzcmMvZW5xdWlyeS5jOjI1MQorIywgYy1mb3JtYXQKK21zZ2lkICIgJWQgaW4gJXM6ICIKK21zZ3N0ciAiICVkIGluICVzOiAiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MjY2CisjLCBjLWZvcm1hdAorbXNnaWQgIiAlZCBwYWNrYWdlLCBmcm9tIHRoZSBmb2xsb3dpbmcgc2VjdGlvbjoiCittc2dpZF9wbHVyYWwgIiAlZCBwYWNrYWdlcywgZnJvbSB0aGUgZm9sbG93aW5nIHNlY3Rpb25zOiIKK21zZ3N0clswXSAiICVkIFBha2V0LCBhdXMgZm9sZ2VuZGVtIEFic2Nobml0dDoiCittc2dzdHJbMV0gIiAlZCBQYWtldGUsIGF1cyBmb2xnZW5kZW4gQWJzY2huaXR0ZW46IgorCisjOiBzcmMvZW5xdWlyeS5jOjMwNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVmVyc2lvbiBvZiBkcGtnIHdpdGggd29ya2luZyAlcyBzdXBwb3J0IG5vdCB5ZXQgY29uZmlndXJlZC5cbiIKKyIgUGxlYXNlIHVzZSAnZHBrZyAtLWNvbmZpZ3VyZSBkcGtnJywgYW5kIHRoZW4gdHJ5IGFnYWluLlxuIgorbXNnc3RyICIiCisiVmVyc2lvbiB2b24gZHBrZyBtaXQgZnVua3Rpb25pZXJlbmRlciBVbnRlcnN0w7x0enVuZyBmw7xyICVzIGlzdCBub2NoIG5pY2h0ICIKKyJrb25maWd1cmllcnQuXG4iCisiIEJpdHRlIGJlbnV0emVuIFNpZSDCu2Rwa2cgLS1jb25maWd1cmUgZHBrZ8KrIHVuZCB2ZXJzdWNoZW4gZXMgZGFuYWNoIGVybmV1dC5cbiIKKworIzogc3JjL2VucXVpcnkuYzozMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZyBub3QgcmVjb3JkZWQgYXMgaW5zdGFsbGVkLCBjYW5ub3QgY2hlY2sgZm9yICVzIHN1cHBvcnQhXG4iCittc2dzdHIgIiIKKyJkcGtnIGlzdCBuaWNodCBhbHMgaW5zdGFsbGllcnQgdmVybWVya3QsIFVudGVyc3TDvHR6dW5nIGbDvHIgJXMga2FubiBuaWNodCAiCisiw7xiZXJwcsO8ZnQgd2VyZGVuIVxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjMyMQorbXNnaWQgIlByZS1EZXBlbmRzIGZpZWxkIgorbXNnc3RyICLCu1ByZS1EZXBlbmRzwqstRmVsZCIKKworIzogc3JjL2VucXVpcnkuYzozMjkKK21zZ2lkICJlcG9jaCIKK21zZ3N0ciAiRXBvY2hlbiIKKworIzogc3JjL2VucXVpcnkuYzozMzcKK21zZ2lkICJsb25nIGZpbGVuYW1lcyIKK21zZ3N0ciAibGFuZ2UgRGF0ZWluYW1lbiIKKworIzogc3JjL2VucXVpcnkuYzozNDYKK21zZ2lkICJtdWx0aXBsZSBDb25mbGljdHMgYW5kIFJlcGxhY2VzIgorbXNnc3RyICJtZWhyZXJlIEtvbGxpc2lvbmVuIHVuZCBFcnNldHp1bmdlbiIKKworIzogc3JjL2VucXVpcnkuYzo0MzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IGNhbm5vdCBzZWUgaG93IHRvIHNhdGlzZnkgcHJlLWRlcGVuZGVuY3k6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKyJkcGtnOiBLZWluIFdlZyBlcmtlbm5iYXIsIHVtIFZvci1BYmjDpG5naWdrZWl0IHp1IGVyZsO8bGxlbjpcbiIKKyIgJXNcbiIKKworIzogc3JjL2VucXVpcnkuYzo0MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHNhdGlzZnkgcHJlLWRlcGVuZGVuY2llcyBmb3IgJS4yNTBzICh3YW50ZWQgZHVlIHRvICUuMjUwcykiCittc2dzdHIgIiIKKyJWb3ItQWJow6RuZ2lna2VpdGVuIGbDvHIgJS4yNTBzIGvDtm5uZW4gbmljaHQgZXJmw7xsbHQgd2VyZGVuIChhbmdlZm9yZGVydCBkdXJjaCAiCisiJS4yNTBzKSIKKworIzogc3JjL2VucXVpcnkuYzo0NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAib2Jzb2xldGUgb3B0aW9uICctLSVzJywgcGxlYXNlIHVzZSAnLS0lcycgaW5zdGVhZC4iCittc2dzdHIgInZlcmFsdGV0ZSBPcHRpb24gwrstLSVzwqssIGJpdHRlIHZlcndlbmRlbiBTaWUgwrstLSVzwqsgc3RhdHRkZXNzZW4uIgorCisjOiBzcmMvZW5xdWlyeS5jOjUxOQorbXNnaWQgIiIKKyItLWNvbXBhcmUtdmVyc2lvbnMgdGFrZXMgdGhyZWUgYXJndW1lbnRzOiA8dmVyc2lvbj4gPHJlbGF0aW9uPiA8dmVyc2lvbj4iCittc2dzdHIgIiIKKyItLWNvbXBhcmUtdmVyc2lvbnMgYWt6ZXB0aWVydCBkcmVpIEFyZ3VtZW50ZTogPFZlcnNpb24+IDxCZXppZWh1bmc+IDxWZXJzaW9uPiIKKworIzogc3JjL2VucXVpcnkuYzo1MjQKK21zZ2lkICItLWNvbXBhcmUtdmVyc2lvbnMgYmFkIHJlbGF0aW9uIgorbXNnc3RyICItLWNvbXBhcmUtdmVyc2lvbnMgZmVobGVyaGFmdGUgQmV6aWVodW5nIgorCisjOiBzcmMvZW5xdWlyeS5jOjUyOSBzcmMvZW5xdWlyeS5jOjUzMSBzcmMvZW5xdWlyeS5jOjU0MCBzcmMvZW5xdWlyeS5jOjU0MgorIywgYy1mb3JtYXQKK21zZ2lkICJ2ZXJzaW9uICclcycgaGFzIGJhZCBzeW50YXg6ICVzIgorbXNnc3RyICJWZXJzaW9uIMK7JXPCqyBoYXQgZmFsc2NoZSBTeW50YXg6ICVzIgorCisjOiBzcmMvZXJyb3JzLmM6NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBlcnJvciBwcm9jZXNzaW5nICVzICgtLSVzKTpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorIiVzOiBGZWhsZXIgYmVpbSBCZWFyYmVpdGVuIHZvbiAlcyAoLS0lcyk6XG4iCisiICVzXG4iCisKKyM6IHNyYy9lcnJvcnMuYzo2OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IGZhaWxlZCB0byBhbGxvY2F0ZSBtZW1vcnkgZm9yIG5ldyBlbnRyeSBpbiBsaXN0IG9mIGZhaWxlZCBwYWNrYWdlczogJXMiCittc2dzdHIgIiIKKyIlczogU3BlaWNoZXJ6dXdlaXN1bmcgZsO8ciBuZXVlbiBFaW50cmFnIGluIExpc3RlIGZlaGxnZXNjaGxhZ2VuZXIgUGFrZXRlICIKKyJmZWhsZ2VzY2hsYWdlbjogJXMiCisKKyM6IHNyYy9lcnJvcnMuYzo3OQorIywgYy1mb3JtYXQKK21zZ2lkICIlczogdG9vIG1hbnkgZXJyb3JzLCBzdG9wcGluZ1xuIgorbXNnc3RyICIlczogWnUgdmllbGUgRmVobGVyLCBBYmJydWNoXG4iCisKKyM6IHNyYy9lcnJvcnMuYzo4NworbXNnaWQgIkVycm9ycyB3ZXJlIGVuY291bnRlcmVkIHdoaWxlIHByb2Nlc3Npbmc6XG4iCittc2dzdHIgIkZlaGxlciB0cmF0ZW4gYXVmIGJlaW0gQmVhcmJlaXRlbiB2b246XG4iCisKKyM6IHNyYy9lcnJvcnMuYzo5NAorbXNnaWQgIlByb2Nlc3Npbmcgd2FzIGhhbHRlZCBiZWNhdXNlIHRoZXJlIHdlcmUgdG9vIG1hbnkgZXJyb3JzLlxuIgorbXNnc3RyICJCZWFyYmVpdHVuZyB3dXJkZSBhbmdlaGFsdGVuLCBkYSB6dSB2aWVsZSBGZWhsZXIgYXVmdHJhdGVuLlxuIgorCisjOiBzcmMvZXJyb3JzLmM6MTA1CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgJXMgd2FzIG9uIGhvbGQsIHByb2Nlc3NpbmcgaXQgYW55d2F5IGFzIHlvdSByZXF1ZXN0ZWRcbiIKK21zZ3N0ciAiUGFrZXQgJXMgd2FyIGF1ZiDCu2hhbHRlbsKrLCB3aXJkIHdpZSBnZWZvcmRlcnQgZGVubm9jaCB2ZXJhcmJlaXRldFxuIgorCisjOiBzcmMvZXJyb3JzLmM6MTA5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJQYWNrYWdlICVzIGlzIG9uIGhvbGQsIG5vdCB0b3VjaGluZyBpdC4gIFVzZSAtLWZvcmNlLWhvbGQgdG8gb3ZlcnJpZGUuXG4iCittc2dzdHIgIiIKKyJQYWtldCAlcyBpc3QgYXVmIMK7aGFsdGVuwqssIHdpcmQgbmljaHQgYW5nZXLDvGhydC4gQmVudXR6ZW4gU2llIC0tZm9yY2UtaG9sZCwgIgorInVtIGVzIHRyb3R6ZGVtIHp1IHZlcmFyYmVpdGVuLlxuIgorCisjOiBzcmMvZXJyb3JzLmM6MTE5Cittc2dpZCAib3ZlcnJpZGluZyBwcm9ibGVtIGJlY2F1c2UgLS1mb3JjZSBlbmFibGVkOiIKK21zZ3N0ciAiUHJvYmxlbSB3aXJkIMO8YmVyZ2FuZ2VuLCB3ZWlsIC0tZm9yY2UgYW5nZWdlYmVuIGlzdDogIgorCisjOiBzcmMvZmlsZXNkYi5jOjMwNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcyciCittc2dzdHIgIkRhdGVpbGlzdGVuLURhdGVpIGRlcyBQYWtldGVzIMK7JS4yNTBzwqsga2FubiBuaWNodCBnZcO2ZmZuZXQgd2VyZGVuIgorCisjOiBzcmMvZmlsZXNkYi5jOjMxMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlIGAlLjI1MHMnIG1pc3NpbmcsIGFzc3VtaW5nIHBhY2thZ2UgaGFzIG5vIGZpbGVzICIKKyJjdXJyZW50bHkgaW5zdGFsbGVkLiIKK21zZ3N0ciAiIgorIkRhdGVpbGlzdGVuLURhdGVpIGRlcyBQYWtldGVzIMK7JS4yNTBzwqsgZmVobHQsIGVzIHdpcmQgYW5nZW5vbW1lbixcbiIKKyJkYXNzIGRhcyBQYWtldCBkZXJ6ZWl0IGtlaW5lIERhdGVpZW4gaW5zdGFsbGllcnQgaGF0LiIKKworIzogc3JjL2ZpbGVzZGIuYzozMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICclLjI1MHMnIgorbXNnc3RyICIiCisiRGF0ZWlsaXN0ZW4tRGF0ZWkgZGVzIFBha2V0ZXMgwrslLjI1MHPCqyBrYW5uIG5pY2h0IG1pdCBzdGF0IGFiZ2VmcmFndCB3ZXJkZW4iCisKKyM6IHNyYy9maWxlc2RiLmM6MzMwCisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWRpbmcgZmlsZXMgbGlzdCBmb3IgcGFja2FnZSAnJS4yNTBzJyIKK21zZ3N0ciAiTGVzZW4gZGVyIERhdGVpbGlzdGUgZGVzIFBha2V0ZXMgwrslLjI1MHPCqyIKKworIzogc3JjL2ZpbGVzZGIuYzozMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICclLjI1MHMnIGlzIG1pc3NpbmcgZmluYWwgbmV3bGluZSIKK21zZ3N0ciAiIgorIkFic2NobGllw59lbmRlciBaZWlsZW52b3JzY2h1YiBmZWhsdCBpbiBEYXRlaWxpc3Rlbi1EYXRlaSBkZXMgUGFrZXRlcyDCuyUuMjUwc8KrIgorCisjOiBzcmMvZmlsZXNkYi5jOjM0NAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcycgY29udGFpbnMgZW1wdHkgZmlsZW5hbWUiCittc2dzdHIgIkRhdGVpbGlzdGVuLURhdGVpIGRlcyBQYWtldGVzIMK7JS4yNTBzwqsgZW50aMOkbHQgbGVlcmVuIERhdGVpbmFtZW4iCisKKyM6IHNyYy9maWxlc2RiLmM6MzUyCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlIGAlLjI1MHMnIgorbXNnc3RyICJGZWhsZXIgYmVpbSBTY2hsaWXDn2VuIGRlciBEYXRlaWxpc3Rlbi1EYXRlaSBkZXMgUGFrZXRlcyDCuyUuMjUwc8KrIgorCisjOiBzcmMvZmlsZXNkYi5jOjQ2MgorbXNnaWQgIihSZWFkaW5nIGRhdGFiYXNlIC4uLiAiCittc2dzdHIgIihMZXNlIERhdGVuYmFuayAuLi4gIgorCisjOiBzcmMvZmlsZXNkYi5jOjQ4MworIywgYy1mb3JtYXQKK21zZ2lkICIlZCBmaWxlIG9yIGRpcmVjdG9yeSBjdXJyZW50bHkgaW5zdGFsbGVkLilcbiIKK21zZ2lkX3BsdXJhbCAiJWQgZmlsZXMgYW5kIGRpcmVjdG9yaWVzIGN1cnJlbnRseSBpbnN0YWxsZWQuKVxuIgorbXNnc3RyWzBdICIlZCBEYXRlaSBvZGVyIFZlcnplaWNobmlzIGlzdCBkZXJ6ZWl0IGluc3RhbGxpZXJ0LilcbiIKK21zZ3N0clsxXSAiJWQgRGF0ZWllbiB1bmQgVmVyemVpY2huaXNzZSBzaW5kIGRlcnplaXQgaW5zdGFsbGllcnQuKVxuIgorCisjOiBzcmMvZmlsZXNkYi5jOjUxNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICIiCisiQWt0dWFsaXNpZXJ0ZSBEYXRlaWxpc3Rlbi1EYXRlaSBmw7xyIFBha2V0ICVzIGthbm4gbmljaHQgYW5nZWxlZ3Qgd2VyZGVuIgorCisjOiBzcmMvZmlsZXNkYi5jOjUyNgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgdG8gdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIiIKKyJTY2hyZWliZW4gaW4gYWt0dWFsaXNpZXJ0ZSBEYXRlaWxpc3Rlbi1EYXRlaSBmw7xyIFBha2V0ICVzIGZlaGxnZXNjaGxhZ2VuIgorCisjOiBzcmMvZmlsZXNkYi5jOjUyOAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZmx1c2ggdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIiIKKyJMZWVyZW4gZGVzIFB1ZmZlcnMgZGVyIGFrdHVhbGlzaWVydGVuIERhdGVpbGlzdGVuLURhdGVpIGbDvHIgUGFrZXQgJXMgIgorImZlaGxnZXNjaGxhZ2VuIgorCisjOiBzcmMvZmlsZXNkYi5jOjUzMAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gc3luYyB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAiIgorIlN5bmNocm9uaXNpZXJlbiBkZXIgYWt0dWFsaXNpZXJ0ZW4gRGF0ZWlsaXN0ZW4tRGF0ZWkgZsO8ciBQYWtldCAlcyAiCisiZmVobGdlc2NobGFnZW4iCisKKyM6IHNyYy9maWxlc2RiLmM6NTMzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjbG9zZSB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAiIgorIlNjaGxpZcOfZW4gZGVyIGFrdHVhbGlzaWVydGVuIERhdGVpbGlzdGVuLURhdGVpIGbDvHIgUGFrZXQgJXMgZmVobGdlc2NobGFnZW4iCisKKyM6IHNyYy9maWxlc2RiLmM6NTM1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBpbnN0YWxsIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICIiCisiSW5zdGFsbGllcmVuIGRlciBha3R1YWxpc2llcnRlbiBEYXRlaWxpc3Rlbi1EYXRlaSBmw7xyIFBha2V0ICVzIGZlaGxnZXNjaGxhZ2VuIgorCisjOiBzcmMvaGVscC5jOjQ4Cittc2dpZCAibm90IGluc3RhbGxlZCIKK21zZ3N0ciAibmljaHQgaW5zdGFsbGllcnQiCisKKyM6IHNyYy9oZWxwLmM6NDkKK21zZ2lkICJub3QgaW5zdGFsbGVkIGJ1dCBjb25maWdzIHJlbWFpbiIKK21zZ3N0ciAibmljaHQgaW5zdGFsbGllcnQsIGFiZXIgS29uZmlndXJhdGlvbnNkYXRlaWVuIHZlcmJsZWliZW4iCisKKyM6IHNyYy9oZWxwLmM6NTAKK21zZ2lkICJicm9rZW4gZHVlIHRvIGZhaWxlZCByZW1vdmFsIG9yIGluc3RhbGxhdGlvbiIKK21zZ3N0ciAiIgorImRlZmVrdCBkdXJjaCBmZWhsZ2VzY2hsYWdlbmVzIEVudGZlcm5lbiBvZGVyIGZlaGxnZXNjaGxhZ2VuZSBJbnN0YWxsYXRpb24iCisKKyM6IHNyYy9oZWxwLmM6NTEKK21zZ2lkICJ1bnBhY2tlZCBidXQgbm90IGNvbmZpZ3VyZWQiCittc2dzdHIgImVudHBhY2t0LCBhYmVyIG5pY2h0IGtvbmZpZ3VyaWVydCIKKworIzogc3JjL2hlbHAuYzo1MgorbXNnaWQgImJyb2tlbiBkdWUgdG8gcG9zdGluc3QgZmFpbHVyZSIKK21zZ3N0ciAiZGVmZWt0IGR1cmNoIHBvc3RpbnN0LUZlaGxlciIKKworIzogc3JjL2hlbHAuYzo1MworbXNnaWQgImF3YWl0aW5nIHRyaWdnZXIgcHJvY2Vzc2luZyBieSBhbm90aGVyIHBhY2thZ2UiCittc2dzdHIgIndhcnRlbmQgYXVmIFRyaWdnZXJ2ZXJhcmJlaXR1bmcgZHVyY2ggZWluIGFuZGVyZXMgUGFrZXQiCisKKyM6IHNyYy9oZWxwLmM6NTQKK21zZ2lkICJ0cmlnZ2VyZWQiCittc2dzdHIgImdldHJpZ2dlcnQiCisKKyM6IHNyYy9oZWxwLmM6NTUKK21zZ2lkICJpbnN0YWxsZWQiCittc2dzdHIgImluc3RhbGxpZXJ0IgorCisjOiBzcmMvaGVscC5jOjEwNworbXNnaWQgIlBBVEggaXMgbm90IHNldC4iCittc2dzdHIgIlBBVEggaXN0IG5pY2h0IGdlc2V0enQuIgorCisjOiBzcmMvaGVscC5jOjEyOQorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIG5vdCBmb3VuZCBpbiBQQVRIIG9yIG5vdCBleGVjdXRhYmxlLiIKK21zZ3N0ciAiwrslc8KrIHd1cmRlIGltIFBBVEggbmljaHQgZ2VmdW5kZW4gb2RlciBpc3QgbmljaHQgYXVzZsO8aHJiYXIuIgorCisjOiBzcmMvaGVscC5jOjEzOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJWQgZXhwZWN0ZWQgcHJvZ3JhbSBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS5cbiIKKyIlcyIKK21zZ2lkX3BsdXJhbCAiIgorIiVkIGV4cGVjdGVkIHByb2dyYW1zIG5vdCBmb3VuZCBpbiBQQVRIIG9yIG5vdCBleGVjdXRhYmxlLlxuIgorIiVzIgorbXNnc3RyWzBdICIiCisiJWQgZXJ3YXJ0ZXRlcyBQcm9ncmFtbSBuaWNodCBpbSBQQVRIIGdlZnVuZGVuIG9kZXIgbmljaHQgYXVzZsO8aHJiYXIuXG4iCisiJXMiCittc2dzdHJbMV0gIiIKKyIlZCBlcndhcnRldGUgUHJvZ3JhbW1lIG5pY2h0IGltIFBBVEggZ2VmdW5kZW4gb2RlciBuaWNodCBhdXNmw7xocmJhci5cbiIKKyIlcyIKKworIzogc3JjL2hlbHAuYzoxNDEKK21zZ2lkICIiCisiTm90ZTogcm9vdCdzIFBBVEggc2hvdWxkIHVzdWFsbHkgY29udGFpbiAvdXNyL2xvY2FsL3NiaW4sIC91c3Ivc2JpbiBhbmQgLyIKKyJzYmluLiIKK21zZ3N0ciAiIgorIkJlYWNodGVuIFNpZTogUEFUSCB2b24gcm9vdCBzb2xsdGUgbm9ybWFsZXJ3ZWlzZSAvdXNyL2xvY2FsL3NiaW4sIC91c3Ivc2JpbiAiCisidW5kIC9zYmluIGVudGhhbHRlbi4iCisKKyM6IHNyYy9oZWxwLmM6MTg4Cittc2dpZCAiYWRtaW5kaXIgbXVzdCBiZSBpbnNpZGUgaW5zdGRpciBmb3IgZHBrZyB0byB3b3JrIHByb3Blcmx5IgorbXNnc3RyICIiCisiQWRtaW5pc3RyYXRpdmVzIFZlcnplaWNobmlzIG11c3MgdW50ZXJoYWxiIGRlcyBJbnN0YWxsYXRpb25zdmVyemVpY2huaXNzZXMgIgorImxpZWdlbiwgZGFtaXQgZHBrZyBrb3JyZWt0IGZ1bmt0aW9uaWVydCIKKworIzogc3JjL2hlbHAuYzoxOTAgc3JjL21haW4uYzo3NDcKK21zZ2lkICJ1bmFibGUgdG8gc2V0ZW52IGZvciBzdWJwcm9jZXNzZXMiCittc2dzdHIgIiIKKyJVbWdlYnVuZ3N2YXJpYWJsZW4gZsO8ciBVbnRlcnByb3plc3NlIGvDtm5uZW4gbmljaHQgbWl0IHNldGVudiBnZXNldHp0IHdlcmRlbiIKKworIzogc3JjL2hlbHAuYzoxOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNocm9vdCB0byBgJS4yNTBzJyIKK21zZ3N0ciAiY2hyb290IG5hY2ggwrslLjI1MHPCqyBmZWhsZ2VzY2hsYWdlbiIKKworIzogc3JjL2hlbHAuYzoxOTQgZHBrZy1kZWIvYnVpbGQuYzo0NTUgZHBrZy1kZWIvYnVpbGQuYzo0NTcKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTM2IGRwa2ctZGViL2J1aWxkLmM6NTU4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byBgJS4yNTVzJyIKK21zZ3N0ciAiV2VjaHNlbCBpbiBkYXMgVmVyemVpY2huaXMgwrslLjI1NXPCqyBmZWhsZ2VzY2hsYWdlbiIKKworIzogc3JjL2hlbHAuYzoyNTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNldCBleGVjdXRlIHBlcm1pc3Npb25zIG9uIGAlLjI1MHMnIgorbXNnc3RyICJBdXNmw7xocnJlY2h0ZSBmw7xyIMK7JS4yNTBzwqsga8O2bm5lbiBuaWNodCBnZXNldHp0IHdlcmRlbiIKKworIzogc3JjL2hlbHAuYzoyNzYKK21zZ2lkICJ1bmFibGUgdG8gc2V0ZW52IGZvciBtYWludGFpbmVyIHNjcmlwdCIKK21zZ3N0ciAiIgorIlVtZ2VidW5nc3ZhcmlhYmxlbiBmw7xyIEJldHJldWVyc2tyaXB0IGvDtm5uZW4gbmljaHQgbWl0IHNldGVudiBnZXNldHp0IHdlcmRlbiIKKworIzogc3JjL2hlbHAuYzozMDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW5zdGFsbGVkICVzIHNjcmlwdCIKK21zZ3N0ciAiaW5zdGFsbGllcnRlcyAlcy1Ta3JpcHQiCisKKyM6IHNyYy9oZWxwLmM6MzEzIHNyYy9oZWxwLmM6MzgyIHNyYy9oZWxwLmM6NDQxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0ICVzIGAlLjI1MHMnIgorbXNnc3RyICIlcyDCuyUuMjUwc8KrIGthbm4gbmljaHQgbWl0IHN0YXQgYWJnZWZyYWd0IHdlcmRlbiIKKworIzogc3JjL2hlbHAuYzozNjggc3JjL2hlbHAuYzo0MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAibmV3ICVzIHNjcmlwdCIKK21zZ3N0ciAibmV1ZXMgJXMtU2tyaXB0IgorCisjOiBzcmMvaGVscC5jOjQwMgorIywgYy1mb3JtYXQKK21zZ2lkICJvbGQgJXMgc2NyaXB0IgorbXNnc3RyICJhbHRlcyAlcy1Ta3JpcHQiCisKKyM6IHNyYy9oZWxwLmM6NDE2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0ICVzICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiJXMgwrslLjI1MHPCqyBrYW5uIG5pY2h0IG1pdCBzdGF0IGFiZ2VmcmFndCB3ZXJkZW46ICVzIgorCisjOiBzcmMvaGVscC5jOjQyNQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnIC0gdHJ5aW5nIHNjcmlwdCBmcm9tIHRoZSBuZXcgcGFja2FnZSBpbnN0ZWFkIC4uLlxuIgorbXNnc3RyICJkcGtnIC0gc3RhdHRkZXNzZW4gd2lyZCBTa3JpcHQgYXVzIGRlbSBuZXVlbiBQYWtldCBwcm9iaWVydCAuLi5cbiIKKworIzogc3JjL2hlbHAuYzo0MzkKK21zZ2lkICJ0aGVyZSBpcyBubyBzY3JpcHQgaW4gdGhlIG5ldyB2ZXJzaW9uIG9mIHRoZSBwYWNrYWdlIC0gZ2l2aW5nIHVwIgorbXNnc3RyICJFcyBnaWJ0IGtlaW4gU2tyaXB0IGluIGRlciBuZXVlbiBWZXJzaW9uIGRlcyBQYWtldGVzIC0gQWJicnVjaCIKKworIzogc3JjL2hlbHAuYzo0NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogLi4uIGl0IGxvb2tzIGxpa2UgdGhhdCB3ZW50IE9LLlxuIgorbXNnc3RyICJkcGtnOiAuLi4gc2llaHQgc28gYXVzLCBhbHMgaMOkdHRlIGRhcyBnZWtsYXBwdC5cbiIKKworIzogc3JjL2hlbHAuYzo2MTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNlY3VyZWx5IHJlbW92ZSAnJS4yNTVzJyIKK21zZ3N0ciAiwrslLjI1NXPCqyBrYW5uIG5pY2h0IGF1ZiBzaWNoZXJlIFdlaXNlIGVudGZlcm50IHdlcmRlbiIKKworIzogc3JjL2hlbHAuYzo2MjEgZHBrZy1kZWIvaW5mby5jOjY1IGRwa2ctZGViL2luZm8uYzo2NworbXNnaWQgInJtIGNvbW1hbmQgZm9yIGNsZWFudXAiCittc2dzdHIgInJtLUJlZmVobCB6dW0gQXVmcsOkdW1lbiIKKworIzogc3JjL2luZm9kYi5jOjUyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGVjayBleGlzdGVuY2Ugb2YgYCUuMjUwcyciCittc2dzdHIgIkRpZSBFeGlzdGVueiB2b24gwrslLjI1MHPCqyBrYW5uIG5pY2h0IMO8YmVycHLDvGZ0IHdlcmRlbiIKKworIzogc3JjL2luZm9kYi5jOjcwCittc2dpZCAiY2Fubm90IHJlYWQgaW5mbyBkaXJlY3RvcnkiCittc2dzdHIgIkluZm8tVmVyemVpY2huaXMga2FubiBuaWNodCBnZWxlc2VuIHdlcmRlbiIKKworIzogc3JjL21haW4uYzo2MAorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIG1hbmFnZW1lbnQgcHJvZ3JhbSB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICJEZWJpYW4gwrslc8KrIFBha2V0bWFuYWdlbWVudC1Qcm9ncmFtbSBWZXJzaW9uICVzLlxuIgorCisjOiBzcmMvbWFpbi5jOjg1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1pfC0taW5zdGFsbCAgICAgICA8LmRlYiBmaWxlIG5hbWU+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXJlY3Rvcnk+IC4uLlxuIgorIiAgLS11bnBhY2sgICAgICAgICAgIDwuZGViIGZpbGUgbmFtZT4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRpcmVjdG9yeT4gLi4uXG4iCisiICAtQXwtLXJlY29yZC1hdmFpbCAgPC5kZWIgZmlsZSBuYW1lPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyZWN0b3J5PiAuLi5cbiIKKyIgIC0tY29uZmlndXJlICAgICAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtLXRyaWdnZXJzLW9ubHkgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLXJ8LS1yZW1vdmUgICAgICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC1QfC0tcHVyZ2UgICAgICAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtLWdldC1zZWxlY3Rpb25zIFs8cGF0dGVybj4gLi4uXSBHZXQgbGlzdCBvZiBzZWxlY3Rpb25zIHRvIHN0ZG91dC5cbiIKKyIgIC0tc2V0LXNlbGVjdGlvbnMgICAgICAgICAgICAgICAgIFNldCBwYWNrYWdlIHNlbGVjdGlvbnMgZnJvbSBzdGRpbi5cbiIKKyIgIC0tY2xlYXItc2VsZWN0aW9ucyAgICAgICAgICAgICAgIERlc2VsZWN0IGV2ZXJ5IG5vbi1lc3NlbnRpYWwgcGFja2FnZS5cbiIKKyIgIC0tdXBkYXRlLWF2YWlsIDxQYWNrYWdlcy1maWxlPiAgIFJlcGxhY2UgYXZhaWxhYmxlIHBhY2thZ2VzIGluZm8uXG4iCisiICAtLW1lcmdlLWF2YWlsIDxQYWNrYWdlcy1maWxlPiAgICBNZXJnZSB3aXRoIGluZm8gZnJvbSBmaWxlLlxuIgorIiAgLS1jbGVhci1hdmFpbCAgICAgICAgICAgICAgICAgICAgRXJhc2UgZXhpc3RpbmcgYXZhaWxhYmxlIGluZm8uXG4iCisiICAtLWZvcmdldC1vbGQtdW5hdmFpbCAgICAgICAgICAgICBGb3JnZXQgdW5pbnN0YWxsZWQgdW5hdmFpbGFibGUgcGtncy5cbiIKKyIgIC1zfC0tc3RhdHVzIDxwYWNrYWdlPiAuLi4gICAgICAgIERpc3BsYXkgcGFja2FnZSBzdGF0dXMgZGV0YWlscy5cbiIKKyIgIC1wfC0tcHJpbnQtYXZhaWwgPHBhY2thZ2U+IC4uLiAgIERpc3BsYXkgYXZhaWxhYmxlIHZlcnNpb24gZGV0YWlscy5cbiIKKyIgIC1MfC0tbGlzdGZpbGVzIDxwYWNrYWdlPiAuLi4gICAgIExpc3QgZmlsZXMgYG93bmVkJyBieSBwYWNrYWdlKHMpLlxuIgorIiAgLWx8LS1saXN0IFs8cGF0dGVybj4gLi4uXSAgICAgICAgTGlzdCBwYWNrYWdlcyBjb25jaXNlbHkuXG4iCisiICAtU3wtLXNlYXJjaCA8cGF0dGVybj4gLi4uICAgICAgICBGaW5kIHBhY2thZ2Uocykgb3duaW5nIGZpbGUocykuXG4iCisiICAtQ3wtLWF1ZGl0ICAgICAgICAgICAgICAgICAgICAgICBDaGVjayBmb3IgYnJva2VuIHBhY2thZ2UocykuXG4iCisiICAtLXByaW50LWFyY2hpdGVjdHVyZSAgICAgICAgICAgICBQcmludCBkcGtnIGFyY2hpdGVjdHVyZS5cbiIKKyIgIC0tY29tcGFyZS12ZXJzaW9ucyA8YT4gPG9wPiA8Yj4gIENvbXBhcmUgdmVyc2lvbiBudW1iZXJzIC0gc2VlIGJlbG93LlxuIgorIiAgLS1mb3JjZS1oZWxwICAgICAgICAgICAgICAgICAgICAgU2hvdyBoZWxwIG9uIGZvcmNpbmcuXG4iCisiICAtRGh8LS1kZWJ1Zz1oZWxwICAgICAgICAgICAgICAgICBTaG93IGhlbHAgb24gZGVidWdnaW5nLlxuIgorIlxuIgorbXNnc3RyICIiCisiQmVmZWhsZTpcbiIKKyIgIC1pfC0taW5zdGFsbCAgICAgICA8LmRlYi1EYXRlaW5hbWU+IC4uLiB8IC1SfC0tcmVjdXJzaXZlICIKKyI8VmVyemVpY2huaXM+IC4uLlxuIgorIiAgLS11bnBhY2sgICAgICAgICAgIDwuZGViLURhdGVpbmFtZT4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgIgorIjxWZXJ6ZWljaG5pcz4gLi4uXG4iCisiICAtQXwtLXJlY29yZC1hdmFpbCAgPC5kZWItRGF0ZWluYW1lPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSAiCisiPFZlcnplaWNobmlzPiAuLi5cbiIKKyIgIC0tY29uZmlndXJlICAgICAgICA8UGFrZXQ+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLS10cmlnZ2Vycy1vbmx5ICAgIDxQYWtldD4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtcnwtLXJlbW92ZSAgICAgICAgPFBha2V0PiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC1QfC0tcHVyZ2UgICAgICAgICA8UGFrZXQ+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLS1nZXQtc2VsZWN0aW9ucyBbPE11c3Rlcj4gLi4uXSAgUGFrZXRhdXN3YWhsIGF1ZiBTdGFuZGFyZGF1c2dhYmUgIgorImF1c2dlYmVuLlxuIgorIiAgLS1zZXQtc2VsZWN0aW9ucyAgICAgICAgICAgICAgICAgUGFrZXRhdXN3YWhsIGF1cyBTdGFuZGFyZGVpbmdhYmUgc2V0emVuLlxuIgorIiAgLS1jbGVhci1zZWxlY3Rpb25zICAgICAgICAgICAgICAgSmVkZXMgbmljaHQtZXNzZW56aWVsbGUgUGFrZXQgYWJ3w6RobGVuLlxuIgorIiAgLS11cGRhdGUtYXZhaWwgPFBhY2thZ2VzLURhdGVpPiAgTGlzdGUgZGVyIHZlcmbDvGdiYXJlbiBQYWtldGUgZXJzZXR6ZW4uXG4iCisiICAtLW1lcmdlLWF2YWlsIDxQYWNrYWdlcy1EYXRlaT4gICBMaXN0ZW4gbWl0IEluZm8gYXVzIERhdGVpICIKKyJ6dXNhbW1lbmbDvGhyZW4uXG4iCisiICAtLWNsZWFyLWF2YWlsICAgICAgICAgICAgICAgICAgICBWZXJmw7xnYmFya2VpdHMtSW5mb3JtYXRpb25lbiBsw7ZzY2hlbi5cbiIKKyIgIC0tZm9yZ2V0LW9sZC11bmF2YWlsICAgICAgICAgICAgIE5pY2h0IHZlcmbDvGdiYXJlIHVuaW5zdC4gUGFrZXRlICIKKyJ2ZXJnZXNzZW4uXG4iCisiICAtc3wtLXN0YXR1cyA8UGFrZXQ+IC4uLiAgICAgICAgICBEZXRhaWxzIHp1bSBQYWtldHN0YXR1cyBhbnplaWdlbi5cbiIKKyIgIC1wfC0tcHJpbnQtYXZhaWwgPFBha2V0PiAuLi4gICAgIERldGFpbHMgenVyIHZlcmbDvGdiYXJlbiBWZXJzaW9uICIKKyJhbnplaWdlbi5cbiIKKyIgIC1MfC0tbGlzdGZpbGVzIDxQYWtldD4gLi4uICAgICAgIERhdGVpZW4gYXVmbGlzdGVuLCBkaWUgZGVtIFBha2V0ICIKKyLCu2dlaMO2cmVuwqsuXG4iCisiICAtbHwtLWxpc3QgWzxNdXN0ZXI+IC4uLl0gICAgICAgICBQYWtldGUga3VyeiBhdWZsaXN0ZW4uXG4iCisiICAtU3wtLXNlYXJjaCA8TXVzdGVyPiAuLi4gICAgICAgICBQYWtldChlKSBzdWNoZW4sIGRlbmVuIERhdGVpKGVuKSAiCisiwrtnZWjDtnJlbsKrLlxuIgorIiAgLUN8LS1hdWRpdCAgICAgICAgICAgICAgICAgICAgICAgQXVmIGJlc2Now6RkaWd0ZShzKSBQYWtldChlKSBwcsO8ZmVuLlxuIgorIiAgLS1wcmludC1hcmNoaXRlY3R1cmUgICAgICAgICAgICAgQXJjaGl0ZWt0dXIgdm9uIGRwa2cgYXVzZ2ViZW4uXG4iCisiICAtLWNvbXBhcmUtdmVyc2lvbnMgPGE+IDxvcD4gPGI+ICBWZXJzaW9uc251bW1lcm4gdmVyZ2xlaWNoZW4gLSBzaWVoZSAiCisidW50ZW4uXG4iCisiICAtLWZvcmNlLWhlbHAgICAgICAgICAgICAgICAgICAgICBIaWxmZSB6dW0gRXJ6d2luZ2VuIGFuemVpZ2VuLlxuIgorIiAgLURofC0tZGVidWc9aGVscCAgICAgICAgICAgICAgICAgSGlsZmUgenVtIERlYnVnZ2VuIGFuemVpZ2VuLlxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjExMyBzcmMvcXVlcnljbWQuYzo2MzEgc3JjL3RyaWdjbWQuYzo3NyBkcGtnLWRlYi9tYWluLmM6ODgKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjc3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIgIC1ofC0taGVscCAgICAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgICAgICAgICBTaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorbXNnc3RyICIiCisiICAtaHwtLWhlbHAgICAgICAgICAgICAgICAgICAgICAgICBEaWVzZW4gSGlsZmV0ZXh0IGFuemVpZ2VuLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICAgICAgICAgVmVyc2lvbiBhbnplaWdlbi5cbiIKKyJcbiIKKworIzogc3JjL21haW4uYzoxMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlVzZSBkcGtnIC1ifC0tYnVpbGR8LWN8LS1jb250ZW50c3wtZXwtLWNvbnRyb2x8LUl8LS1pbmZvfC1mfC0tZmllbGR8XG4iCisiIC14fC0tZXh0cmFjdHwtWHwtLXZleHRyYWN0fC0tZnN5cy10YXJmaWxlICBvbiBhcmNoaXZlcyAodHlwZSAlcyAtLWhlbHApLlxuIgorIlxuIgorbXNnc3RyICIiCisiVmVyd2VuZGVuIFNpZSBkcGtnIC1ifC0tYnVpbGR8LWN8LS1jb250ZW50c3wtZXwtLWNvbnRyb2x8LUl8LS1pbmZvfC1mfC0tIgorImZpZWxkfFxuIgorIiAteHwtLWV4dHJhY3R8LVh8LS12ZXh0cmFjdHwtLWZzeXMtdGFyZmlsZSBmw7xyIEFyY2hpdmUgKHNpZWhlICVzIC0taGVscCkuXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTIzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJGb3IgaW50ZXJuYWwgdXNlOiBkcGtnIC0tYXNzZXJ0LXN1cHBvcnQtcHJlZGVwZW5kcyB8IC0tcHJlZGVwLXBhY2thZ2UgfFxuIgorIiAgLS1hc3NlcnQtd29ya2luZy1lcG9jaCB8IC0tYXNzZXJ0LWxvbmctZmlsZW5hbWVzIHwgLS1hc3NlcnQtbXVsdGktY29ucmVwLlxuIgorIlxuIgorbXNnc3RyICIiCisiWnVyIGludGVybmVuIFZlcndlbmR1bmc6IGRwa2cgLS1hc3NlcnQtc3VwcG9ydC1wcmVkZXBlbmRzIHwgLS1wcmVkZXAtcGFja2FnZSAiCisifFxuIgorIiAgLS1hc3NlcnQtd29ya2luZy1lcG9jaCB8IC0tYXNzZXJ0LWxvbmctZmlsZW5hbWVzIHwgLS1hc3NlcnQtbXVsdGktY29ucmVwLlxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjEyOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT4gICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorIiAgLS1yb290PTxkaXJlY3Rvcnk+ICAgICAgICAgSW5zdGFsbCBvbiBhIGRpZmZlcmVudCByb290IGRpcmVjdG9yeS5cbiIKKyIgIC0taW5zdGRpcj08ZGlyZWN0b3J5PiAgICAgIENoYW5nZSBpbnN0YWxsYXRpb24gZGlyIHdpdGhvdXQgY2hhbmdpbmcgYWRtaW4gIgorImRpci5cbiIKKyIgIC0tcGF0aC1leGNsdWRlPTxwYXR0ZXJuPiAgIERvIG5vdCBpbnN0YWxsIHBhdGhzIHdoaWNoIG1hdGNoIGEgc2hlbGwgIgorInBhdHRlcm4uXG4iCisiICAtLXBhdGgtaW5jbHVkZT08cGF0dGVybj4gICBSZS1pbmNsdWRlIGEgcGF0dGVybiBhZnRlciBhIHByZXZpb3VzICIKKyJleGNsdXNpb24uXG4iCisiICAtT3wtLXNlbGVjdGVkLW9ubHkgICAgICAgICBTa2lwIHBhY2thZ2VzIG5vdCBzZWxlY3RlZCBmb3IgaW5zdGFsbC8iCisidXBncmFkZS5cbiIKKyIgIC1FfC0tc2tpcC1zYW1lLXZlcnNpb24gICAgIFNraXAgcGFja2FnZXMgd2hvc2Ugc2FtZSB2ZXJzaW9uIGlzIGluc3RhbGxlZC5cbiIKKyIgIC1HfC0tcmVmdXNlLWRvd25ncmFkZSAgICAgIFNraXAgcGFja2FnZXMgd2l0aCBlYXJsaWVyIHZlcnNpb24gdGhhbiAiCisiaW5zdGFsbGVkLlxuIgorIiAgLUJ8LS1hdXRvLWRlY29uZmlndXJlICAgICAgSW5zdGFsbCBldmVuIGlmIGl0IHdvdWxkIGJyZWFrIHNvbWUgb3RoZXIgIgorInBhY2thZ2UuXG4iCisiICAtLVtuby1ddHJpZ2dlcnMgICAgICAgICAgICBTa2lwIG9yIGZvcmNlIGNvbnNlcXVlbnRpYWwgdHJpZ2dlciAiCisicHJvY2Vzc2luZy5cbiIKKyIgIC0tbm8tZGVic2lnICAgICAgICAgICAgICAgIERvIG5vdCB0cnkgdG8gdmVyaWZ5IHBhY2thZ2Ugc2lnbmF0dXJlcy5cbiIKKyIgIC0tbm8tYWN0fC0tZHJ5LXJ1bnwtLXNpbXVsYXRlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBKdXN0IHNheSB3aGF0IHdlIHdvdWxkIGRvIC0gZG9uJ3QgZG8gaXQuXG4iCisiICAtRHwtLWRlYnVnPTxvY3RhbD4gICAgICAgICBFbmFibGUgZGVidWdnaW5nIChzZWUgLURoZWxwIG9yIC0tZGVidWc9aGVscCkuXG4iCisiICAtLXN0YXR1cy1mZCA8bj4gICAgICAgICAgICBTZW5kIHN0YXR1cyBjaGFuZ2UgdXBkYXRlcyB0byBmaWxlIGRlc2NyaXB0b3IgIgorIjxuPi5cbiIKKyIgIC0tbG9nPTxmaWxlbmFtZT4gICAgICAgICAgIExvZyBzdGF0dXMgY2hhbmdlcyBhbmQgYWN0aW9ucyB0byA8ZmlsZW5hbWU+LlxuIgorIiAgLS1pZ25vcmUtZGVwZW5kcz08cGFja2FnZT4sLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZ25vcmUgZGVwZW5kZW5jaWVzIGludm9sdmluZyA8cGFja2FnZT4uXG4iCisiICAtLWZvcmNlLS4uLiAgICAgICAgICAgICAgICBPdmVycmlkZSBwcm9ibGVtcyAoc2VlIC0tZm9yY2UtaGVscCkuXG4iCisiICAtLW5vLWZvcmNlLS4uLnwtLXJlZnVzZS0uLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3Agd2hlbiBwcm9ibGVtcyBlbmNvdW50ZXJlZC5cbiIKKyIgIC0tYWJvcnQtYWZ0ZXIgPG4+ICAgICAgICAgIEFib3J0IGFmdGVyIGVuY291bnRlcmluZyA8bj4gZXJyb3JzLlxuIgorIlxuIgorbXNnc3RyICIiCisiT3B0aW9uZW46XG4iCisiICAtLWFkbWluZGlyPTxWZXJ6ZWljaG5pcz4gICA8VmVyemVpY2huaXM+IHN0YXR0ICVzIHZlcndlbmRlbi5cbiIKKyIgIC0tcm9vdD08VmVyemVpY2huaXM+ICAgICAgIEluIGFuZGVyZW0gV3VyemVsLVZlcnplaWNobmlzIGluc3RhbGxpZXJlbi5cbiIKKyIgIC0taW5zdGRpcj08VmVyemVpY2huaXM+ICAgIEluc3RhbGxhdGlvbnN2ZXJ6ZWljaG5pcyDDpG5kZXJuLCBvaG5lIGRhc1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhZG1pbi1WZXJ6ZWljaG5pcyB6dSDDpG5kZXJuLlxuIgorIiAgLS1wYXRoLWV4Y2x1ZGU9PE11c3Rlcj4gICAgUGZhZGUgbmljaHQgaW5zdGFsbGllcmVuLCBkaWUgYXVmIGVpbiBcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU2hlbGwtTXVzdGVyIHBhc3Nlbi5cbiIKKyIgIC0tcGF0aC1pbmNsdWRlPTxNdXN0ZXI+ICAgIE11c3RlciBuYWNoIHZvcmhlcmlnZW0gQXVzc2NobHVzcyB3aWVkZXJcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZWluc2NobGllw59lbi5cbiIKKyIgIC1PfC0tc2VsZWN0ZWQtb25seSAgICAgICAgIFp1ciBJbnN0YWxsYXRpb24vQWt0dWFsaXNpZXJ1bmcgbmljaHRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXVzZ2V3w6RobHRlIFBha2V0ZSDDvGJlcmdlaGVuLlxuIgorIiAgLUV8LS1za2lwLXNhbWUtdmVyc2lvbiAgICAgUGFrZXRlIG1pdCBpZGVudGlzY2hlciBpbnN0YWxsaWVydGVyIFZlcnNpb25cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgw7xiZXJnZWhlbi5cbiIKKyIgIC1HfC0tcmVmdXNlLWRvd25ncmFkZSAgICAgIFBha2V0ZSBtaXQgZnLDvGhlcmVyIGFscyBkZXIgaW5zdGFsbGllcnRlblxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBWZXJzaW9uIMO8YmVyZ2VoZW4uXG4iCisiICAtQnwtLWF1dG8tZGVjb25maWd1cmUgICAgICBJbnN0YWxsaWVyZW4sIHNlbGJzdCB3ZW5uIGVzIGFuZGVyZSBQYWtldGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmVzY2jDpGRpZ3QuXG4iCisiICAtLVtuby1ddHJpZ2dlcnMgICAgICAgICAgICBSZXN1bHRpZXJlbmRlIFRyaWdnZXJ2ZXJhcmJlaXR1bmcgw7xiZXJnZWhlbiAiCisib2RlclxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnp3aW5nZW4uXG4iCisiICAtLW5vLWRlYnNpZyAgICAgICAgICAgICAgICBOaWNodCB2ZXJzdWNoZW4sIFBha2V0c2lnbmF0dXJlbiB6dSBwcsO8ZmVuLlxuIgorIiAgLS1uby1hY3R8LS1kcnktcnVufC0tc2ltdWxhdGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE51ciBzYWdlbiwgd2FzIHdpciB0dW4gd8O8cmRlbiAtIG5pY2h0ICIKKyJhdXNmw7xocmVuLlxuIgorIiAgLUR8LS1kZWJ1Zz08b2N0YWw+ICAgICAgICAgRGVidWdnZW4gZXJtw7ZnbC4gKHNpZWhlIC1EaGVscCBvZGVyIC0tIgorImRlYnVnPWhlbHApLlxuIgorIiAgLS1zdGF0dXMtZmQgPG4+ICAgICAgICAgICAgU3RhdHVzw6RuZGVydW5nZW4gYW4gRGF0ZWlkZXNrcmlwdG9yIDxuPiAiCisic2VuZGVuLlxuIgorIiAgLS1sb2c9PERhdGVpPiAgICAgICAgICAgICAgU3RhdHVzw6RuZGVydW5nZW4gdW5kIEFrdGlvbmVuIGluIDxEYXRlaT4gIgorInByb3Rva29sbC5cbiIKKyIgIC0taWdub3JlLWRlcGVuZHM9PFBha2V0PiwuLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFiaMOkbmdpZ2tlaXRlbiBpZ25vcmllcmVuLCBkaWUgPFBha2V0PiAiCisiYmV0cmVmZmVuLlxuIgorIiAgLS1mb3JjZS0uLi4gICAgICAgICAgICAgICAgUHJvYmxlbWUgw7xiZXJzdGltbWVuIChzaWVoZSAtLWZvcmNlLWhlbHApLlxuIgorIiAgLS1uby1mb3JjZS0uLi58LS1yZWZ1c2UtLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9wcGVuLCB3ZW5uIFByb2JsZW1lIGF1ZnRyZXRlbi5cbiIKKyIgIC0tYWJvcnQtYWZ0ZXIgPG4+ICAgICAgICAgIE5hY2ggQXVmdHJldGVuIHZvbiA8bj4gRmVobGVybiBhYmJyZWNoZW4uXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTU0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21wYXJpc29uIG9wZXJhdG9ycyBmb3IgLS1jb21wYXJlLXZlcnNpb25zIGFyZTpcbiIKKyIgIGx0IGxlIGVxIG5lIGdlIGd0ICAgICAgICh0cmVhdCBlbXB0eSB2ZXJzaW9uIGFzIGVhcmxpZXIgdGhhbiBhbnkgIgorInZlcnNpb24pO1xuIgorIiAgbHQtbmwgbGUtbmwgZ2UtbmwgZ3QtbmwgKHRyZWF0IGVtcHR5IHZlcnNpb24gYXMgbGF0ZXIgdGhhbiBhbnkgdmVyc2lvbik7XG4iCisiICA8IDw8IDw9ID0gPj0gPj4gPiAgICAgICAob25seSBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIGNvbnRyb2wgZmlsZSAiCisic3ludGF4KS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIlZlcmdsZWljaHNvcGVyYXRvcmVuIGbDvHIgLS1jb21wYXJlLXZlcnNpb25zIHNpbmQ6XG4iCisiICBsdCBsZSBlcSBuZSBnZSBndCAgICAgICAobGVlcmUgVmVyc2lvbiBnaWx0IGFscyBmcsO8aGVyIGFscyBqZWRlIFZlcnNpb24pO1xuIgorIiAgbHQtbmwgbGUtbmwgZ2UtbmwgZ3QtbmwgKGxlZXJlIFZlcnNpb24gZ2lsdCBhbHMgc3DDpHRlciBhbHMgamVkZSBWZXJzaW9uKTtcbiIKKyIgIDwgPDwgPD0gPSA+PSA+PiA+ICAgICAgIChudXIgZsO8ciBLb21wYXRpYmlsaXTDpHQgbWl0IFN5bnRheCBpbiBjb250cm9sLSIKKyJEYXRlaSkuXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTYxCisjLCBjLWZvcm1hdAorbXNnaWQgIlVzZSBgZHNlbGVjdCcgb3IgYGFwdGl0dWRlJyBmb3IgdXNlci1mcmllbmRseSBwYWNrYWdlIG1hbmFnZW1lbnQuXG4iCittc2dzdHIgIiIKKyJCZW51dHplbiBTaWUgwrtkc2VsZWN0wqsgb2RlciDCu2FwdGl0dWRlwqsgZsO8ciBiZW51dHplcmZyZXVuZGxpY2hlcyAiCisiUGFrZXRtYW5hZ2VtZW50LlxuIgorCisjOiBzcmMvbWFpbi5jOjE3MAorbXNnaWQgIiIKKyJUeXBlIGRwa2cgLS1oZWxwIGZvciBoZWxwIGFib3V0IGluc3RhbGxpbmcgYW5kIGRlaW5zdGFsbGluZyBwYWNrYWdlcyBbKl07XG4iCisiVXNlIGBkc2VsZWN0JyBvciBgYXB0aXR1ZGUnIGZvciB1c2VyLWZyaWVuZGx5IHBhY2thZ2UgbWFuYWdlbWVudDtcbiIKKyJUeXBlIGRwa2cgLURoZWxwIGZvciBhIGxpc3Qgb2YgZHBrZyBkZWJ1ZyBmbGFnIHZhbHVlcztcbiIKKyJUeXBlIGRwa2cgLS1mb3JjZS1oZWxwIGZvciBhIGxpc3Qgb2YgZm9yY2luZyBvcHRpb25zO1xuIgorIlR5cGUgZHBrZy1kZWIgLS1oZWxwIGZvciBoZWxwIGFib3V0IG1hbmlwdWxhdGluZyAqLmRlYiBmaWxlcztcbiIKKyJcbiIKKyJPcHRpb25zIG1hcmtlZCBbKl0gcHJvZHVjZSBhIGxvdCBvZiBvdXRwdXQgLSBwaXBlIGl0IHRocm91Z2ggYGxlc3MnIG9yICIKKyJgbW9yZScgISIKK21zZ3N0ciAiIgorIk51dHplbiBTaWUgZHBrZyAtLWhlbHAgZsO8ciBIaWxmZSB6dXIgSW5zdGFsbGF0aW9uIHVuZCBEZWluc3QuIHZvbiBQYWtldGVuICIKKyJbKl07XG4iCisiQmVudXR6ZW4gU2llIMK7ZHNlbGVjdMKrIG9kZXIgwrthcHRpdHVkZcKrIGbDvHIgYmVudXR6ZXJmcmV1bmRsaWNoZXMgIgorIlBha2V0bWFuYWdlbWVudDtcbiIKKyJOdXR6ZW4gU2llIGRwa2cgLURoZWxwIGbDvHIgZWluZSBMaXN0ZSB2b24gRGVidWctRmxhZ3Mgdm9uIGRwa2c7XG4iCisiTnV0emVuIFNpZSBkcGtnIC0tZm9yY2UtaGVscCBmw7xyIGVpbmUgTGlzdGUgdm9uIE9wdGlvbmVuIHp1bSBFcnp3aW5nZW47XG4iCisiTnV0emVuIFNpZSBkcGtnLWRlYiAtLWhlbHAgZsO8ciBIaWxmZSB6dW0gTWFuaXB1bGllcmVuIHZvbiAqLmRlYi1EYXRlaWVuO1xuIgorIlxuIgorIk9wdGlvbmVuIG1pdCBbKl0gZ2ViZW4gdmllbCBhdXMgLSBzY2hpY2tlbiBTaWUgZXMgZHVyY2ggwrtsZXNzwqsgb2RlciDCu21vcmXCqyEiCisKKyM6IHNyYy9tYWluLmM6MjE5Cittc2dpZCAiU2V0IGFsbCBmb3JjZSBvcHRpb25zIgorbXNnc3RyICJBbGxlIE9wdGlvbmVuIHp1bSBFcnp3aW5nZW4gc2V0emVuIgorCisjOiBzcmMvbWFpbi5jOjIyMQorbXNnaWQgIlJlcGxhY2UgYSBwYWNrYWdlIHdpdGggYSBsb3dlciB2ZXJzaW9uIgorbXNnc3RyICJQYWtldCBkdXJjaCBlaW5lIG5pZWRyaWdlcmUgVmVyc2lvbiBlcnNldHplbiIKKworIzogc3JjL21haW4uYzoyMjMKK21zZ2lkICJDb25maWd1cmUgYW55IHBhY2thZ2Ugd2hpY2ggbWF5IGhlbHAgdGhpcyBvbmUiCittc2dzdHIgIkplZGVzIFBha2V0IGtvbmZpZ3VyaWVyZW4sIGRhcyBkaWVzZW0gaGVsZmVuIGvDtm5udGUiCisKKyM6IHNyYy9tYWluLmM6MjI1Cittc2dpZCAiUHJvY2VzcyBpbmNpZGVudGFsIHBhY2thZ2VzIGV2ZW4gd2hlbiBvbiBob2xkIgorbXNnc3RyICJOZWJlbnPDpGNobGljaGUgUGFrZXRlIGJlYXJiZWl0ZW4sIGF1Y2ggd2VubiBhdWYgwrtoYWx0ZW7CqyIKKworIzogc3JjL21haW4uYzoyMjcKK21zZ2lkICJUcnkgdG8gKGRlKWluc3RhbGwgdGhpbmdzIGV2ZW4gd2hlbiBub3Qgcm9vdCIKK21zZ3N0ciAiIgorIkRpbmdlIHZlcnN1Y2hlbiB6dSAoZGUpaW5zdGFsbGllcmVuLCBzZWxic3Qgd2VublxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIG5pY2h0IHJvb3QiCisKKyM6IHNyYy9tYWluLmM6MjI5Cittc2dpZCAiUEFUSCBpcyBtaXNzaW5nIGltcG9ydGFudCBwcm9ncmFtcywgcHJvYmxlbXMgbGlrZWx5IgorbXNnc3RyICJXaWNodGlnZSBQcm9ncmFtbWUgbmljaHQgaW4gUEFUSCwgUHJvYmxlbWUgd2FocnNjaC4iCisKKyM6IHNyYy9tYWluLmM6MjMxCittc2dpZCAiSW5zdGFsbCBhIHBhY2thZ2UgZXZlbiBpZiBpdCBmYWlscyBhdXRoZW50aWNpdHkgY2hlY2siCittc2dzdHIgIiIKKyJQYWtldCBpbnN0YWxsaWVyZW4sIHNlbGJzdCB3ZW5uIEF1dGhlbnRpeml0w6R0cy1cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICDDvGJlcnByw7xmdW5nIG1pc3NsaW5ndCIKKworIzogc3JjL21haW4uYzoyMzMKK21zZ2lkICJQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyB2ZXJzaW9ucyIKK21zZ3N0ciAiU2VsYnN0IFBha2V0ZSBtaXQgZmVobGVyaGFmdGVyIFZlcnNpb24gYmVhcmJlaXRlbiIKKworIzogc3JjL21haW4uYzoyMzUKK21zZ2lkICJPdmVyd3JpdGUgYSBmaWxlIGZyb20gb25lIHBhY2thZ2Ugd2l0aCBhbm90aGVyIgorbXNnc3RyICJEYXRlaSBlaW5lcyBhbmRlcmVuIFBha2V0cyDDvGJlcnNjaHJlaWJlbiIKKworIzogc3JjL21haW4uYzoyMzcKK21zZ2lkICJPdmVyd3JpdGUgYSBkaXZlcnRlZCBmaWxlIHdpdGggYW4gdW5kaXZlcnRlZCB2ZXJzaW9uIgorbXNnc3RyICIiCisiVW1nZWxlaXRldGUgRGF0ZWkgbWl0IGVpbmVyIG5pY2h0IHVtZ2VsZWl0ZXRlblxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIFZlcnNpb24gw7xiZXJzY2hyZWliZW4iCisKKyM6IHNyYy9tYWluLmM6MjM5Cittc2dpZCAiT3ZlcndyaXRlIG9uZSBwYWNrYWdlJ3MgZGlyZWN0b3J5IHdpdGggYW5vdGhlcidzIGZpbGUiCittc2dzdHIgIiIKKyJWZXJ6ZWljaG5pcyBlaW5lcyBQYWtldHMgbWl0IERhdGVpIGVpbmVzXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgYW5kZXJlbiDDvGJlcnNjaHJlaWJlbiIKKworIzogc3JjL21haW4uYzoyNDEKK21zZ2lkICJEbyBub3QgcGVyZm9ybSBzYWZlIEkvTyBvcGVyYXRpb25zIHdoZW4gdW5wYWNraW5nIgorbXNnc3RyICIiCisiQmVpbSBFbnRwYWNrZW4ga2VpbmUgc2ljaGVyZW4gRWluL0F1c2dhYmUtT3BlcmF0aW9uZW5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBkdXJjaGbDvGhyZW4iCisKKyM6IHNyYy9tYWluLmM6MjQzCittc2dpZCAiQWx3YXlzIHVzZSB0aGUgbmV3IGNvbmZpZyBmaWxlcywgZG9uJ3QgcHJvbXB0IgorbXNnc3RyICJJbW1lciBuZXVlIEtvbmYuLURhdGVpZW4gdmVyd2VuZGVuLCBuaWNodCBuYWNoZnJhZ2VuIgorCisjOiBzcmMvbWFpbi5jOjI0NQorbXNnaWQgIkFsd2F5cyB1c2UgdGhlIG9sZCBjb25maWcgZmlsZXMsIGRvbid0IHByb21wdCIKK21zZ3N0ciAiSW1tZXIgYWx0ZSBLb25mLi1EYXRlaWVuIHZlcndlbmRlbiwgbmljaHQgbmFjaGZyYWdlbiIKKworIzogc3JjL21haW4uYzoyNDgKK21zZ2lkICIiCisiVXNlIHRoZSBkZWZhdWx0IG9wdGlvbiBmb3IgbmV3IGNvbmZpZyBmaWxlcyBpZiBvbmVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgaXMgYXZhaWxhYmxlLCBkb24ndCBwcm9tcHQuIElmIG5vIGRlZmF1bHQgY2FuIGJlICIKKyJmb3VuZCxcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgeW91IHdpbGwgYmUgcHJvbXB0ZWQgdW5sZXNzIG9uZSBvZiB0aGUgY29uZm9sZCBvclxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICBjb25mbmV3IG9wdGlvbnMgaXMgYWxzbyBnaXZlbiIKK21zZ3N0ciAiIgorIlZvcmdhYmUgZsO8ciBuZXVlIEtvbmYuLURhdGVpZW4gYmVudXR6ZW4sIHdlbm4gZXMgZWluZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGdpYnQsIG5pY2h0IG5hY2hmcmFnZW4uIFdlbm4gVm9yZ2FiZW4gbmljaHRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBnZWZ1bmRlbiB3ZXJkZW4ga8O2bm5lbiwgbmFjaGZyYWdlbiwgYXXDn2VyICIKKyJjb25mb2xkXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgb2RlciBjb25mbmV3IGlzdCBhdWNoIGFuZ2VnZWJlbi4iCisKKyM6IHNyYy9tYWluLmM6MjUzCittc2dpZCAiQWx3YXlzIGluc3RhbGwgbWlzc2luZyBjb25maWcgZmlsZXMiCittc2dzdHIgIkZlaGxlbmRlIEtvbmYuLURhdGVpZW4gaW1tZXIgaW5zdGFsbGllcmVuIgorCisjOiBzcmMvbWFpbi5jOjI1NQorbXNnaWQgIk9mZmVyIHRvIHJlcGxhY2UgY29uZmlnIGZpbGVzIHdpdGggbm8gbmV3IHZlcnNpb25zIgorbXNnc3RyICIiCisiQW5iaWV0ZW4sIEtvbmYuLURhdGVpZW4gZHVyY2ggbmljaHQgbmV1ZSBWZXJzaW9uZW5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICB6dSBlcnNldHplbiIKKworIzogc3JjL21haW4uYzoyNTcKK21zZ2lkICJQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyBvciBubyBhcmNoaXRlY3R1cmUiCittc2dzdHIgIiIKKyJTZWxic3QgUGFrZXRlIG1pdCBmYWxzY2hlciBvZGVyIGZlaGxlbmRlciBBcmNoaXRla3R1clxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGJlYXJiZWl0ZW4iCisKKyM6IHNyYy9tYWluLmM6MjU5Cittc2dpZCAiSW5zdGFsbCBldmVuIGlmIGl0IHdvdWxkIGJyZWFrIGFub3RoZXIgcGFja2FnZSIKK21zZ3N0ciAiIgorIkluc3RhbGxpZXJlbiwgc2VsYnN0IHdlbm4gZXMgYW5kZXJlIFBha2V0ZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGJlc2Now6RkaWd0IgorCisjOiBzcmMvbWFpbi5jOjI2MQorbXNnaWQgIkFsbG93IGluc3RhbGxhdGlvbiBvZiBjb25mbGljdGluZyBwYWNrYWdlcyIKK21zZ3N0ciAiSW5zdGFsbGF0aW9uIGtvbGxpZGllcmVuZGVyIFBha2V0ZSBlcmxhdWJlbiIKKworIzogc3JjL21haW4uYzoyNjMKK21zZ2lkICJUdXJuIGFsbCBkZXBlbmRlbmN5IHByb2JsZW1zIGludG8gd2FybmluZ3MiCittc2dzdHIgIkFsbGUgQWJow6RuZ2lna2VpdHNwcm9ibGVtZSBpbiBXYXJudW5nZW4gdW13YW5kZWxuIgorCisjOiBzcmMvbWFpbi5jOjI2NQorbXNnaWQgIlR1cm4gZGVwZW5kZW5jeSB2ZXJzaW9uIHByb2JsZW1zIGludG8gd2FybmluZ3MiCittc2dzdHIgIlZlcnNpb25zYWJow6RuZ2lna2VpdHNwcm9ibGVtZSBpbiBXYXJudW5nZW4gdW13YW5kZWxuIgorCisjOiBzcmMvbWFpbi5jOjI2NworbXNnaWQgIlJlbW92ZSBwYWNrYWdlcyB3aGljaCByZXF1aXJlIGluc3RhbGxhdGlvbiIKK21zZ3N0ciAiUGFrZXRlIGVudGZlcm5lbiwgZGllIEluc3RhbGxhdGlvbiBlcmZvcmRlcm4iCisKKyM6IHNyYy9tYWluLmM6MjY5Cittc2dpZCAiUmVtb3ZlIGFuIGVzc2VudGlhbCBwYWNrYWdlIgorbXNnc3RyICJFaW4gZXNzZW56aWVsbGVzIFBha2V0IGVudGZlcm5lbiIKKworIzogc3JjL21haW4uYzoyODEKK21zZ2lkICJHZW5lcmFsbHkgaGVscGZ1bCBwcm9ncmVzcyBpbmZvcm1hdGlvbiIKK21zZ3N0ciAiQWxsZ2VtZWluIGhpbGZyZWljaGUgRm9ydHNjaHJpdHRzaW5mb3JtYXRpb25lbiIKKworIzogc3JjL21haW4uYzoyODIKK21zZ2lkICJJbnZvY2F0aW9uIGFuZCBzdGF0dXMgb2YgbWFpbnRhaW5lciBzY3JpcHRzIgorbXNnc3RyICJBdWZydWYgdW5kIFN0YXR1cyB2b24gQmV0cmV1ZXItU2tyaXB0ZW4iCisKKyM6IHNyYy9tYWluLmM6MjgzCittc2dpZCAiT3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkIgorbXNnc3RyICJBdXNnYWJlbiB6dSBqZWRlciB2ZXJhcmJlaXRldGVuIERhdGVpIgorCisjOiBzcmMvbWFpbi5jOjI4NAorbXNnaWQgIkxvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkIgorbXNnc3RyICJWaWVsZSBBdXNnYWJlbiB6dSBqZWRlciB2ZXJhcmJlaXRldGVuIERhdGVpIgorCisjOiBzcmMvbWFpbi5jOjI4NQorbXNnaWQgIk91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGUiCittc2dzdHIgIkF1c2dhYmVuIHp1IGplZGVyIEtvbmZpZ3VyYXRpb25zZGF0ZWkiCisKKyM6IHNyYy9tYWluLmM6Mjg2Cittc2dpZCAiTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggY29uZmlndXJhdGlvbiBmaWxlIgorbXNnc3RyICJWaWVsZSBBdXNnYWJlbiB6dSBqZWRlciBLb25maWd1cmF0aW9uc2RhdGVpIgorCisjOiBzcmMvbWFpbi5jOjI4NworbXNnaWQgIkRlcGVuZGVuY2llcyBhbmQgY29uZmxpY3RzIgorbXNnc3RyICJBYmjDpG5naWdrZWl0ZW4gdW5kIEtvbGxpc2lvbmVuIgorCisjOiBzcmMvbWFpbi5jOjI4OAorbXNnaWQgIkxvdHMgb2YgZGVwZW5kZW5jaWVzL2NvbmZsaWN0cyBvdXRwdXQiCittc2dzdHIgIlZpZWxlIEF1c2dhYmVuIHp1IEFiaMOkbmdpZ2tlaXRlbiB1bmQgS29sbGlzaW9uZW4iCisKKyM6IHNyYy9tYWluLmM6Mjg5Cittc2dpZCAiVHJpZ2dlciBhY3RpdmF0aW9uIGFuZCBwcm9jZXNzaW5nIgorbXNnc3RyICJUcmlnZ2VyYWt0aXZpZXJ1bmcgdW5kIC12ZXJhcmJlaXR1bmciCisKKyM6IHNyYy9tYWluLmM6MjkwCittc2dpZCAiTG90cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzIgorbXNnc3RyICJWaWVsZSBBdXNnYWJlbiBiZXrDvGdsaWNoIFRyaWdnZXIiCisKKyM6IHNyYy9tYWluLmM6MjkxCittc2dpZCAiU2lsbHkgYW1vdW50cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzIgorbXNnc3RyICJBbGJlcm5lIE1lbmdlbiBhbiBBdXNnYWJlbiBiZXrDvGdsaWNoIFRyaWdnZXIiCisKKyM6IHNyYy9tYWluLmM6MjkyCittc2dpZCAiTG90cyBvZiBkcml2ZWwgYWJvdXQgZWcgdGhlIGRwa2cvaW5mbyBkaXJlY3RvcnkiCittc2dzdHIgIlZpZWwgR2VmYXNlbCB6LkIuIHp1bSBkcGtnL2luZm8tVmVyemVpY2huaXMiCisKKyM6IHNyYy9tYWluLmM6MjkzCittc2dpZCAiSW5zYW5lIGFtb3VudHMgb2YgZHJpdmVsIgorbXNnc3RyICJJcnJzaW5uaWdlIE1lbmdlbiB2b24gR2VmYXNlbCIKKworIzogc3JjL21haW4uYzozMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzIGRlYnVnZ2luZyBvcHRpb24sIC0tZGVidWc9PG9jdGFsPiBvciAtRDxvY3RhbD46XG4iCisiXG4iCisiIE51bWJlciAgUmVmLiBpbiBzb3VyY2UgICBEZXNjcmlwdGlvblxuIgorbXNnc3RyICIiCisiJXMgRGVidWctT3B0aW9uLCAtLWRlYnVnPTxva3RhbD4gb2RlciAtRDxva3RhbD46XG4iCisiXG4iCisiIE51bW1lciAgUmVmLiBpbiBRdWVsbGUgICBCZXNjaHJlaWJ1bmdcbiIKKworIzogc3JjL21haW4uYzozMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIkRlYnVnZ2luZyBvcHRpb25zIGNhbiBiZSBtaXhlZCB1c2luZyBiaXR3aXNlLW9yLlxuIgorIk5vdGUgdGhhdCB0aGUgbWVhbmluZ3MgYW5kIHZhbHVlcyBhcmUgc3ViamVjdCB0byBjaGFuZ2UuXG4iCittc2dzdHIgIiIKKyJcbiIKKyJEZWJ1Zy1PcHRpb25lbiBrw7ZubmVuIGR1cmNoIGJpdHdlaXNlcyBPZGVyIGdlbWlzY2h0IHdlcmRlbi5cbiIKKyJCZWFjaHRlbiBTaWUsIGRhc3Mgc2ljaCBkaWUgV2VydGUgdW5kIEJlZGV1dHVuZ2VuIMOkbmRlcm4ga8O2bm5lbi5cbiIKKworIzogc3JjL21haW4uYzozMTkKK21zZ2lkICItLWRlYnVnIHJlcXVpcmVzIGFuIG9jdGFsIGFyZ3VtZW50IgorbXNnc3RyICItLWRlYnVnIGJlbsO2dGlndCBlaW4gb2t0YWxlcyBBcmd1bWVudCIKKworIzogc3JjL21haW4uYzozNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAibnVsbCBwYWNrYWdlIG5hbWUgaW4gLS1pZ25vcmUtZGVwZW5kcyBjb21tYS1zZXBhcmF0ZWQgbGlzdCBgJS4yNTBzJyIKK21zZ3N0ciAibGVlcmVyIFBha2V0bmFtZSBpbiBrb21tYWdldHJlbm50ZXIgLS1pZ25vcmUtZGVwZW5kcy1MaXN0ZSDCuyUuMjUwc8KrIgorCisjOiBzcmMvbWFpbi5jOjM1NAorIywgYy1mb3JtYXQKK21zZ2lkICItLWlnbm9yZS1kZXBlbmRzIHJlcXVpcmVzIGEgbGVnYWwgcGFja2FnZSBuYW1lLiBgJS4yNTBzJyBpcyBub3Q7ICVzIgorbXNnc3RyICIiCisiLS1pZ25vcmUtZGVwZW5kcyBiZW7DtnRpZ3QgZWluZW4gZ8O8bHRpZ2VuIFBha2V0bmFtZW4uIMK7JS4yNTBzwqsgaXN0IGtlaW4gIgorInNvbGNoZXI7ICVzIgorCisjOiBzcmMvbWFpbi5jOjM3MSBzcmMvbWFpbi5jOjM4MSBzcmMvbWFpbi5jOjY0OSBkcGtnLXNwbGl0L21haW4uYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBpbnRlZ2VyIGZvciAtLSVzOiBgJS4yNTBzJyIKK21zZ3N0ciAidW5nw7xsdGlnZSBHYW56emFobCBmw7xyIC0tJXM6IMK7JS4yNTBzwqsiCisKKyM6IHNyYy9tYWluLmM6NDM4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGV4ZWN1dGluZyBob29rICclcycsIGV4aXQgY29kZSAlZCIKK21zZ3N0ciAiRmVobGVyIGJlaW0gQXVzZsO8aHJlbiBkZXMgSG9va3Mgwrslc8KrLCBFeGl0a29kZSAlZCIKKworIzogc3JjL21haW4uYzo0NjUKK21zZ2lkICJzdGF0dXMgbG9nZ2VyIgorbXNnc3RyICJTdGF0dXNsb2dnZXIiCisKKyM6IHNyYy9tYWluLmM6NDgwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlcyBmb3JjaW5nIG9wdGlvbnMgLSBjb250cm9sIGJlaGF2aW91ciB3aGVuIHByb2JsZW1zIGZvdW5kOlxuIgorIiAgd2FybiBidXQgY29udGludWU6ICAtLWZvcmNlLTx0aGluZz4sPHRoaW5nPiwuLi5cbiIKKyIgIHN0b3Agd2l0aCBlcnJvcjogICAgLS1yZWZ1c2UtPHRoaW5nPiw8dGhpbmc+LC4uLiB8IC0tbm8tZm9yY2UtPHRoaW5nPiwuLi5cbiIKKyIgRm9yY2luZyB0aGluZ3M6XG4iCittc2dzdHIgIiIKKyIlcy1PcHRpb25lbiB6dW0gRXJ6d2luZ2VuIC0gVmVyaGFsdGVuIHN0ZXVlcm4sIHdlbm4gUHJvYmxlbWUgZ2VmdW5kZW4gIgorIndlcmRlbjpcbiIKKyIgIFdhcm5lbiBhYmVyIGZvcnRzZXR6ZW46IC0tZm9yY2UtPERpbmc+LDxEaW5nPiwuLi5cbiIKKyIgIE1pdCBGZWhsZXIgYW5oYWx0ZW46ICAgIC0tcmVmdXNlLTxEaW5nPiw8RGluZz4sLi4uIHwgLS1uby1mb3JjZS0iCisiPERpbmc+LC4uLlxuIgorIiBEaW5nZSBlcnp3aW5nZW46XG4iCisKKyM6IHNyYy9tYWluLmM6NDkwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJXQVJOSU5HIC0gdXNlIG9mIG9wdGlvbnMgbWFya2VkIFshXSBjYW4gc2VyaW91c2x5IGRhbWFnZSB5b3VyIGluc3RhbGxhdGlvbi5cbiIKKyJGb3JjaW5nIG9wdGlvbnMgbWFya2VkIFsqXSBhcmUgZW5hYmxlZCBieSBkZWZhdWx0LlxuIgorbXNnc3RyICIiCisiXG4iCisiV0FSTlVORyAtIEFud2VuZGVuIGRlciBtaXQgWyFdIG1hcmtpZXJ0ZW4gT3B0aW9uZW4ga2FubiBJaHJlIEluc3RhbGxhdGlvblxuIgorInNjaHdlciBiZXNjaMOkZGlnZW4uIE1pdCBbKl0gbWFya2llcnRlIE9wdGlvbmVuIHNpbmQgcGVyIFZvcmdhYmUgYWt0aXZpZXJ0LlxuIgorCisjOiBzcmMvbWFpbi5jOjUwNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGZvcmNlL3JlZnVzZSBvcHRpb24gYCUuKnMnIgorbXNnc3RyICJ1bmJla2FubnRlIGZvcmNlL3JlZnVzZS1PcHRpb24gwrslLipzwqsiCisKKyM6IHNyYy9tYWluLmM6NTEzCisjLCBjLWZvcm1hdAorbXNnaWQgIm9ic29sZXRlIGZvcmNlL3JlZnVzZSBvcHRpb24gJyVzJ1xuIgorbXNnc3RyICJ2ZXJhbHRldGUgZm9yY2UvcmVmdXNlLU9wdGlvbiDCuyVzwqtcbiIKKworIzogc3JjL21haW4uYzo2NDMKK21zZ2lkICItLWNvbW1hbmQtZmQgdGFrZXMgb25lIGFyZ3VtZW50LCBub3QgemVybyIKK21zZ3N0ciAiLS1jb21tYW5kLWZkIGFremVwdGllcnQgZWluIEFyZ3VtZW50LCBuaWNodCBudWxsIgorCisjOiBzcmMvbWFpbi5jOjY0NQorbXNnaWQgIi0tY29tbWFuZC1mZCBvbmx5IHRha2VzIG9uZSBhcmd1bWVudCIKK21zZ3N0ciAiLS1jb21tYW5kLWZkIGFremVwdGllcnQgbnVyIGVpbiBBcmd1bWVudCIKKworIzogc3JjL21haW4uYzo2NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGRuJ3Qgb3BlbiBgJWknIGZvciBzdHJlYW0iCittc2dzdHIgIsK7JWnCqyBrb25udGUgbmljaHQgZsO8ciBEYXRlbnN0cm9tIGdlw7ZmZm5ldCB3ZXJkZW4iCisKKyM6IHNyYy9tYWluLmM6Njc2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW9mIGJlZm9yZSBlbmQgb2YgbGluZSAlZCIKK21zZ3N0ciAidW5lcndhcnRldGVzIEVPRiB2b3IgRW5kZSBkZXIgWmVpbGUgJWQiCisKKyM6IHNyYy9tYWluLmM6NzE5IHNyYy9tYWluLmM6NzQxIHNyYy9xdWVyeWNtZC5jOjY5MiBzcmMvc3RhdGNtZC5jOjM3OQorIzogZHBrZy1kZWIvbWFpbi5jOjIwMSBkcGtnLXNwbGl0L21haW4uYzoxNjMKK21zZ2lkICJuZWVkIGFuIGFjdGlvbiBvcHRpb24iCittc2dzdHIgImVpbmUgQWt0aW9ucy1PcHRpb24gd2lyZCBiZW7DtnRpZ3QiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjExMworbXNnaWQgIiIKKyJ5b3UgbXVzdCBzcGVjaWZ5IHBhY2thZ2VzIGJ5IHRoZWlyIG93biBuYW1lcywgbm90IGJ5IHF1b3RpbmcgdGhlIG5hbWVzIG9mICIKKyJ0aGUgZmlsZXMgdGhleSBjb21lIGluIgorbXNnc3RyICIiCisiU2llIG3DvHNzZW4gUGFrZXRlIG1pdCBpaHJlbSBlaWdlbmVuIE5hbWVuIGFuZ2ViZW4sIG5pY2h0IGR1cmNoIEFuZ2FiZSB2b24gIgorIkRhdGVpZW4sIGluIGRlbmVuIHNpZSBnZWxpZWZlcnQgd2VyZGVuIgorCisjOiBzcmMvcGFja2FnZXMuYzoxMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyAtLXBlbmRpbmcgZG9lcyBub3QgdGFrZSBhbnkgbm9uLW9wdGlvbiBhcmd1bWVudHMiCittc2dzdHIgIi0tJXMgLS1wZW5kaW5nIGFremVwdGllcnQga2VpbmUgTmljaHQtT3B0aW9ucy1Bcmd1bWVudGUiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjEzOCBzcmMvcXVlcnljbWQuYzozNzUgc3JjL3F1ZXJ5Y21kLmM6NTY1CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYXQgbGVhc3Qgb25lIHBhY2thZ2UgbmFtZSBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyBiZW7DtnRpZ3QgbWluZGVzdGVucyBlaW4gUGFrZXRuYW1lbi1Bcmd1bWVudCIKKworIzogc3JjL3BhY2thZ2VzLmM6MTc5CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgJXMgbGlzdGVkIG1vcmUgdGhhbiBvbmNlLCBvbmx5IHByb2Nlc3Npbmcgb25jZS5cbiIKK21zZ3N0ciAiUGFrZXQgJXMgbWVociBhbHMgZWlubWFsIGFuZ2VnZWJlbiwgd2lyZCBudXIgZWlubWFsIHZlcmFyYmVpdGV0LlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzoxODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk1vcmUgdGhhbiBvbmUgY29weSBvZiBwYWNrYWdlICVzIGhhcyBiZWVuIHVucGFja2VkXG4iCisiIGluIHRoaXMgcnVuICEgIE9ubHkgY29uZmlndXJpbmcgaXQgb25jZS5cbiIKK21zZ3N0ciAiIgorIk1laHIgYWxzIGVpbmUgS29waWUgZGVzIFBha2V0ZXMgJXMgd3VyZGUgaW4gZGllc2VtIER1cmNobGF1ZlxuIgorIiBlbnRwYWNrdCEgRXMgd2lyZCBudXIgZWlubWFsIGtvbmZpZ3VyaWVydC5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJwYWNrYWdlICUuMjUwcyBpcyBub3QgcmVhZHkgZm9yIHRyaWdnZXIgcHJvY2Vzc2luZ1xuIgorIiAoY3VycmVudCBzdGF0dXMgYCUuMjUwcycgd2l0aCBubyBwZW5kaW5nIHRyaWdnZXJzKSIKK21zZ3N0ciAiIgorIlBha2V0ICUuMjUwcyBpc3QgbmljaHQgYmVyZWl0IHp1ciBUcmlnZ2VydmVyYXJiZWl0dW5nXG4iCisiIChtb21lbnRhbmVyIFN0YXR1cyDCuyUuMjUwc8KrIG9obmUgYW5ow6RuZ2lnZSBUcmlnZ2VyKSIKKworIzogc3JjL3BhY2thZ2VzLmM6MzM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyB3aGljaCBwcm92aWRlcyAlcyBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIgIFBha2V0ICVzLCBkYXMgJXMgYmVyZWl0c3RlbGx0LCBzb2xsIGVudGZlcm50IHdlcmRlbi5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MzM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIgIFBha2V0ICVzIHNvbGwgZW50ZmVybnQgd2VyZGVuLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzozNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBWZXJzaW9uIG9mICVzIG9uIHN5c3RlbSBpcyAlcy5cbiIKK21zZ3N0ciAiICBWZXJzaW9uIHZvbiAlcyBhdWYgZGVtIFN5c3RlbSBpc3QgJXMuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjM3NgorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgd2hpY2ggcHJvdmlkZXMgJXMgYXdhaXRzIHRyaWdnZXIgcHJvY2Vzc2luZy5cbiIKK21zZ3N0ciAiICBQYWtldCAlcywgZGFzICVzIGJlcmVpdHN0ZWxsdCwgd2FydGV0IGF1ZiBUcmlnZ2VydmVyYXJiZWl0dW5nLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzozODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIGF3YWl0cyB0cmlnZ2VyIHByb2Nlc3NpbmcuXG4iCittc2dzdHIgIiAgUGFrZXQgJXMgd2FydGV0IGF1ZiBUcmlnZ2VydmVyYXJiZWl0dW5nLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogYWxzbyBjb25maWd1cmluZyBgJXMnIChyZXF1aXJlZCBieSBgJXMnKVxuIgorbXNnc3RyICJkcGtnOiDCuyVzwqsgd2lyZCBlYmVuZmFsbHMga29uZmlndXJpZXJ0IChiZW7DtnRpZ3Qgdm9uIMK7JXPCqylcbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDE4CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyB3aGljaCBwcm92aWRlcyAlcyBpcyBub3QgY29uZmlndXJlZCB5ZXQuXG4iCittc2dzdHIgIiAgUGFrZXQgJXMsIGRhcyAlcyBiZXJlaXRzdGVsbHQsIGlzdCBub2NoIG5pY2h0IGtvbmZpZ3VyaWVydC5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDIxCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyBpcyBub3QgY29uZmlndXJlZCB5ZXQuXG4iCittc2dzdHIgIiAgUGFrZXQgJXMgaXN0IG5vY2ggbmljaHQga29uZmlndXJpZXJ0LlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIHdoaWNoIHByb3ZpZGVzICVzIGlzIG5vdCBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgUGFrZXQgJXMsIGRhcyAlcyBiZXJlaXRzdGVsbHQsIGlzdCBuaWNodCBpbnN0YWxsaWVydC5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDM1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIgIFBha2V0ICVzIGlzdCBuaWNodCBpbnN0YWxsaWVydC5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDcyCisjLCBjLWZvcm1hdAorbXNnaWQgIiAlcyAoJXMpIGJyZWFrcyAlcyBhbmQgaXMgJXMuXG4iCittc2dzdHIgIiAlcyAoJXMpIGJlc2Now6RkaWd0ICVzIHVuZCBpc3QgJXMuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQ3OAorIywgYy1mb3JtYXQKK21zZ2lkICIgICVzICglcykgcHJvdmlkZXMgJXMuXG4iCittc2dzdHIgIiAgJXMgKCVzKSBzdGVsbHQgJXMgYmVyZWl0LlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBWZXJzaW9uIG9mICVzIHRvIGJlIGNvbmZpZ3VyZWQgaXMgJXMuXG4iCittc2dzdHIgIiAgWnUga29uZmlndXJpZXJlbmRlIFZlcnNpb24gdm9uICVzIGF1ZiBkZW0gU3lzdGVtIGlzdCAlcy5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NTk2Cittc2dpZCAiIGRlcGVuZHMgb24gIgorbXNnc3RyICIgaMOkbmd0IGFiIHZvbiAiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjYwMgorbXNnaWQgIjsgaG93ZXZlcjpcbiIKK21zZ3N0ciAiOyBhYmVyOlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjcxCisjLCBjLWZvcm1hdAorbXNnaWQgIi4uLi8lcyIKK21zZ3N0ciAiLi4uLyVzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjkxCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGVuc3VyaW5nIGAlLjI1MHMnIGRvZXNuJ3QgZXhpc3QiCittc2dzdHIgIkZlaGxlciBiZWltIFNpY2hlcnN0ZWxsZW4sIGRhc3MgwrslLjI1MHPCqyBuaWNodCBleGlzdGllcnQiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTkKK21zZ2lkICJzcGxpdCBwYWNrYWdlIHJlYXNzZW1ibHkiCittc2dzdHIgIlp1c2FtbWVuZsO8Z3VuZyBkZXMgYXVmZ2V0ZWlsdGVuIFBha2V0cyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxMDgKK21zZ2lkICJyZWFzc2VtYmxlZCBwYWNrYWdlIGZpbGUiCittc2dzdHIgIlBha2V0ZGF0ZWkgd2llZGVyIHp1c2FtbWVuZ2Vmw7xndCIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiQXV0aGVudGljYXRpbmcgJXMgLi4uXG4iCittc2dzdHIgIiVzIHdpcmQgYXV0aGVudGlmaXppZXJ0IC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEzOQorbXNnaWQgInBhY2thZ2Ugc2lnbmF0dXJlIHZlcmlmaWNhdGlvbiIKK21zZ3N0ciAiUGFrZXRzaWduYXR1ci3DnGJlcnByw7xmdW5nIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE0NgorIywgYy1mb3JtYXQKK21zZ2lkICJWZXJpZmljYXRpb24gb24gcGFja2FnZSAlcyBmYWlsZWQhIgorbXNnc3RyICLDnGJlcnByw7xmdW5nIHZvbiBQYWtldCAlcyBmZWhsZ2VzY2hsYWdlbiEiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTQ4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJWZXJpZmljYXRpb24gb24gcGFja2FnZSAlcyBmYWlsZWQsXG4iCisiYnV0IGluc3RhbGxpbmcgYW55d2F5IGFzIHlvdSByZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiIKKyLDnGJlcnByw7xmdW5nIHZvbiBQYWtldCAlcyBmZWhsZ2VzY2hsYWdlbixcbiIKKyIgd2lyZCBhYmVyIHdpZSBnZWZvcmRlcnQgdHJvdHpkZW0gaW5zdGFsbGllcnQuXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTUyCisjLCBjLWZvcm1hdAorbXNnaWQgInBhc3NlZFxuIgorbXNnc3RyICJiZXN0YW5kZW5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxNjUgZHBrZy1kZWIvaW5mby5jOjgxCittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSB0ZW1wb3JhcnkgZGlyZWN0b3J5IgorbXNnc3RyICJBbmxlZ2VuIGRlcyB0ZW1wb3LDpHJlbiBWZXJ6ZWljaG5pc3NlcyBmZWhsZ2VzY2hsYWdlbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlcyBoYXMgdG9vIG1hbnkgQ29uZmxpY3RzL1JlcGxhY2VzIHBhaXJzIgorbXNnc3RyICJQYWtldCAlcyBoYXQgenUgdmllbGUgQ29uZmxpY3RzL1JlcGxhY2VzLVBhYXJlIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjI0MworIywgYy1mb3JtYXQKK21zZ2lkICJvbGQgdmVyc2lvbiBvZiBwYWNrYWdlIGhhcyBvdmVybHktbG9uZyBpbmZvIGZpbGUgbmFtZSBzdGFydGluZyBgJS4yNTBzJyIKK21zZ3N0ciAiIgorIkFsdGUgVmVyc2lvbiBkZXMgUGFrZXRlcyBoYXQgw7xiZXJtw6TDn2lnIGxhbmdlbiBJbmZvLURhdGVpbmFtZW4gYmVnaW5uZW5kIG1pdCAiCisiwrslLjI1MHPCqyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyODEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBvYnNvbGV0ZSBpbmZvIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIlZlcmFsdGV0ZSBJbmZvLURhdGVpIMK7JS4yNTBzwqsga2FubiBuaWNodCBlbnRmZXJudCB3ZXJkZW4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6Mjg2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIChzdXBwb3NlZCkgbmV3IGluZm8gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiTmV1ZSAodmVybWVpbnRsaWNoZSkgSW5mby1EYXRlaSDCuyUuMjUwc8KrIGthbm4gbmljaHQgaW5zdGFsbGllcnQgd2VyZGVuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjI5NgorbXNnaWQgInVuYWJsZSB0byBvcGVuIHRlbXAgY29udHJvbCBkaXJlY3RvcnkiCittc2dzdHIgIlRlbXBvcsOkcmVzIENvbnRyb2wtVmVyemVpY2huaXMga2FubiBuaWNodCBnZcO2ZmZuZXQgd2VyZGVuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMwNworIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGNvbnRhaW5zIG92ZXJseS1sb25nIGNvbnRyb2wgaW5mbyBmaWxlIG5hbWUgKHN0YXJ0aW5nIGAlLjUwcycpIgorbXNnc3RyICIiCisiUGFrZXQgZW50aMOkbHQgw7xiZXJtw6TDn2lnIGxhbmdlbiBDb250cm9sLUluZm8tRGF0ZWluYW1lbiAoYmVnaW5uZW5kIG1pdCAiCisiwrslLjUwc8KrKSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBjb250cm9sIGluZm8gY29udGFpbmVkIGRpcmVjdG9yeSBgJS4yNTBzJyIKK21zZ3N0ciAiUGFrZXQtQ29udHJvbC1JbmZvIGVudGhpZWx0IFZlcnplaWNobmlzIMK7JS4yNTBzwqsiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzE2CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgY29udHJvbCBpbmZvIHJtZGlyIG9mIGAlLjI1MHMnIGRpZG4ndCBzYXkgbm90IGEgZGlyIgorbXNnc3RyICIiCisiUGFrZXQtQ29udHJvbC1JbmZvIHJtZGlyIHZvbiDCuyUuMjUwc8KrIGVyZ2FiIG5pY2h0LCBkYXNzIGRpZXMga2VpbiAiCisiVmVyemVpY2huaXMgaXN0IgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMyNgorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlICVzIGNvbnRhaW5lZCBsaXN0IGFzIGluZm8gZmlsZSIKK21zZ3N0ciAiUGFrZXQgJXMgZW50aGllbHQgTGlzdGUgYWxzIEluZm8tRGF0ZWkiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzMzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyBpbmZvIGZpbGUgYCUuMjUwcycgYXMgYCUuMjUwcyciCittc2dzdHIgIk5ldWUgSW5mby1EYXRlaSDCuyUuMjUwc8KrIGthbm4gbmljaHQgYWxzIMK7JS4yNTBzwqsgaW5zdGFsbGllcnQgd2VyZGVuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjM0OSBzcmMvcmVtb3ZlLmM6MTk4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkZWxldGUgY29udHJvbCBpbmZvIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIkRpZSBDb250cm9sLUluZm8tRGF0ZWkgwrslLjI1MHPCqyBrYW5uIG5pY2h0IGdlbMO2c2NodCB3ZXJkZW4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDExCittc2dpZCAiY2Fubm90IGFjY2VzcyBhcmNoaXZlIgorbXNnc3RyICJBdWYgZGFzIEFyY2hpdiBrYW5uIG5pY2h0IHp1Z2VncmlmZmVuIHdlcmRlbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo0MzMKK21zZ2lkICJwYWNrYWdlIGNvbnRyb2wgaW5mb3JtYXRpb24gZXh0cmFjdGlvbiIKK21zZ3N0ciAiUGFrZXQtY29udHJvbC1JbmZvcm1hdGlvbnNleHRyYWt0aW9uIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjQ2MAorIywgYy1mb3JtYXQKK21zZ2lkICJSZWNvcmRlZCBpbmZvIGFib3V0ICVzIGZyb20gJXMuXG4iCittc2dzdHIgIkluZm8gw7xiZXIgJXMgYXVzICVzIGF1ZmdlemVpY2huZXQuXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDY4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgYXJjaGl0ZWN0dXJlICglcykgZG9lcyBub3QgbWF0Y2ggc3lzdGVtICglcykiCittc2dzdHIgIlBha2V0LUFyY2hpdGVrdHVyICglcykgcGFzc3QgbmljaHQgenVtIFN5c3RlbSAoJXMpIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjUyMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogcmVnYXJkaW5nICVzIGNvbnRhaW5pbmcgJXMsIHByZS1kZXBlbmRlbmN5IHByb2JsZW06XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiBWb3ItQWJow6RuZ2lna2VpdHNwcm9ibGVtIGJldHJlZmZlbmQgJXMsIHdlbGNoZXMgJXMgZW50aMOkbHQ6XG4iCisiJXMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTI2CisjLCBjLWZvcm1hdAorbXNnaWQgInByZS1kZXBlbmRlbmN5IHByb2JsZW0gLSBub3QgaW5zdGFsbGluZyAlLjI1MHMiCittc2dzdHIgIlZvci1BYmjDpG5naWdrZWl0c3Byb2JsZW0gLSAlLjI1MHMgd2lyZCBuaWNodCBpbnN0YWxsaWVydCIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1MjcKK21zZ2lkICJpZ25vcmluZyBwcmUtZGVwZW5kZW5jeSBwcm9ibGVtISIKK21zZ3N0ciAiVm9yLUFiaMOkbmdpZ2tlaXRzcHJvYmxlbSB3aXJkIGlnbm9yaWVydCEiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTQzCisjLCBjLWZvcm1hdAorbXNnaWQgIlByZXBhcmluZyB0byByZXBsYWNlICVzICVzICh1c2luZyAlcykgLi4uXG4iCittc2dzdHIgIlZvcmJlcmVpdHVuZyB6dW0gRXJzZXR6ZW4gdm9uICVzICVzIChkdXJjaCAlcykgLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIlVucGFja2luZyAlcyAoZnJvbSAlcykgLi4uXG4iCittc2dzdHIgIkVudHBhY2tlbiB2b24gJXMgKGF1cyAlcykgLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTgwCisjLCBjLWZvcm1hdAorbXNnaWQgIm5hbWUgb2YgY29uZmZpbGUgKHN0YXJ0aW5nIGAlLjI1MHMnKSBpcyB0b28gbG9uZyAoPiVkIGNoYXJhY3RlcnMpIgorbXNnc3RyICJOYW1lIGRlciBDb25mZmlsZSAoYmVnaW5uZW5kIG1pdCDCuyUuMjUwc8KrKSBpc3QgenUgbGFuZyAoPiVkIFplaWNoZW4pIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjYzMyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA3MQorIywgYy1mb3JtYXQKK21zZ2lkICJyZWFkIGVycm9yIGluICUuMjUwcyIKK21zZ3N0ciAiTGVzZWZlaGxlciBpbiAlLjI1MHMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjM1CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgJS4yNTBzIgorbXNnc3RyICJGZWhsZXIgYmVpbSBTY2hsaWXDn2VuIHZvbiAlLjI1MHMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjM3CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHRyeWluZyB0byBvcGVuICUuMjUwcyIKK21zZ3N0ciAiRmVobGVyIGJlaW0gVmVyc3VjaCwgJS4yNTBzIHp1IMO2ZmZuZW4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6Njc4CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlLWNvbmZpZ3VyaW5nICVzLCB0byBhbGxvdyByZW1vdmFsIG9mICVzIC4uLlxuIgorbXNnc3RyICJEZS1rb25maWd1cmllcmVuIHZvbiAlcywgdW0gJXMgZW50ZmVybmVuIHp1IGvDtm5uZW4gLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjgxCisjLCBjLWZvcm1hdAorbXNnaWQgIkRlLWNvbmZpZ3VyaW5nICVzIC4uLlxuIgorbXNnc3RyICIlcyB3aXJkIGRlLWtvbmZpZ3VyaWVydCAuLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo3NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiVW5wYWNraW5nIHJlcGxhY2VtZW50ICUuMjUwcyAuLi5cbiIKK21zZ3N0ciAiRXJzYXR6IGbDvHIgJS4yNTBzIHdpcmQgZW50cGFja3QgLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6ODQwCittc2dpZCAicGFja2FnZSBmaWxlc3lzdGVtIGFyY2hpdmUgZXh0cmFjdGlvbiIKK21zZ3N0ciAiUGFrZXQtRGF0ZWlzeXN0ZW1hcmNoaXYtRXh0cmFrdGlvbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NTQKK21zZ2lkICJlcnJvciByZWFkaW5nIGRwa2ctZGViIHRhciBvdXRwdXQiCittc2dzdHIgIkZlaGxlciBiZWltIExlc2VuIGRlciBkcGtnLWRlYi10YXItQXVzZ2FiZSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NTYKK21zZ2lkICJjb3JydXB0ZWQgZmlsZXN5c3RlbSB0YXJmaWxlIC0gY29ycnVwdGVkIHBhY2thZ2UgYXJjaGl2ZSIKK21zZ3N0ciAiZGVmZWt0ZXMgVGFyLURhdGVpc3lzdGVtIC0gUGFrZXRhcmNoaXYgaXN0IGRlZmVrdCIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NTkKK21zZ2lkICJkcGtnLWRlYjogemFwIHBvc3NpYmxlIHRyYWlsaW5nIHplcm9zIgorbXNnc3RyICJkcGtnLWRlYjogTcO2Z2xpY2hlIE51bGxlbiBhbSBFbmRlIHdlcmRlbiBnZWzDtnNjaHQiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTE5CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBzdGF0IG9sZCBmaWxlICclLjI1MHMnIHNvIG5vdCBkZWxldGluZyBpdDogJXMiCittc2dzdHIgIiIKKyJBbHRlIERhdGVpIMK7JS4yNTBzwqsga29ubnRlIG5pY2h0IG1pdCBzdGF0IGFiZ2VmcmFndCB3ZXJkZW4sIHdpcmQgZGFoZXIgbmljaHQgIgorImdlbMO2c2NodDogJXMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTI1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkZWxldGUgb2xkIGRpcmVjdG9yeSAnJS4yNTBzJzogJXMiCittc2dzdHIgIkFsdGVzIFZlcnplaWNobmlzIMK7JS4yNTBzwqsga2FubiBuaWNodCBnZWzDtnNjaHQgd2VyZGVuOiAlcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAib2xkIGNvbmZmaWxlICclLjI1MHMnIHdhcyBhbiBlbXB0eSBkaXJlY3RvcnkgKGFuZCBoYXMgbm93IGJlZW4gZGVsZXRlZCkiCittc2dzdHIgIiIKKyJBbHRlcyBDb25mZmlsZSDCuyUuMjUwc8KrIHdhciBlaW4gbGVlcmVzIFZlcnplaWNobmlzICh1bmQgd3VyZGUgamV0enQgZ2Vsw7ZzY2h0KSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgb3RoZXIgbmV3IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIkFuZGVyZSBuZXVlIERhdGVpIMK7JS4yNTBzwqsga2FubiBuaWNodCBtaXQgc3RhdCBhYmdlZnJhZ3Qgd2VyZGVuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjk4NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisib2xkIGZpbGUgJyUuMjUwcycgaXMgdGhlIHNhbWUgYXMgc2V2ZXJhbCBuZXcgZmlsZXMhIChib3RoICclLjI1MHMnIGFuZCAiCisiJyUuMjUwcycpIgorbXNnc3RyICIiCisiQWx0ZSBEYXRlaSDCuyUuMjUwc8KrIGlzdCBkaWUgZ2xlaWNoZSB3aWUgbWVocmVyZSBuZXVlIERhdGVpZW4hIChzb3dvaGwgIgorIsK7JS4yNTBzwqsgYWxzIGF1Y2ggwrslLjI1MHPCqykiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTAyNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2VjdXJlbHkgcmVtb3ZlIG9sZCBmaWxlICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiQWx0ZSBEYXRlaSDCuyUuMjUwc8KrIGthbm4gbmljaHQgYXVmIHNpY2hlcmUgV2Vpc2UgZW50ZmVybnQgd2VyZGVuOiAlcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxMjA2CisjLCBjLWZvcm1hdAorbXNnaWQgIihOb3RpbmcgZGlzYXBwZWFyYW5jZSBvZiAlcywgd2hpY2ggaGFzIGJlZW4gY29tcGxldGVseSByZXBsYWNlZC4pXG4iCittc2dzdHIgIihWZXJzY2h3aW5kZW4gdm9uICVzIHd1cmRlIGJlbWVya3QsIHdlbGNoZXMga29tcGxldHQgZXJzZXR6dCB3dXJkZS4pXG4iCisKKyMgVW5pY29kZSA1LjEgZW50aMOkbHQgZWluIMOfIGFscyBHcm/Dn2J1Y2hzdGFiZW4gYW4gUG9zaXRpb24gVSsxRTlFLCBpcmdlbmR3YW5uCisjIHNvbGx0ZW4gd2lyIHdvaGwgZGFzIHZlcndlbmRlbi4gQWJlciBuaWNodCBiZXZvciBlcyBaZWljaGVuc8OkdHplIGdpYnQsCisjIGRpZSBkaWVzZXMgWmVpY2hlbiB0YXRzw6RjaGxpY2ggZW50aGFsdGVuLgorIyBodHRwOi8vdW5pY29kZS5vcmcvdmVyc2lvbnMvVW5pY29kZTUuMS4wLyNUYWlsb3JlZF9DYXNpbmdfT3BlcmF0aW9ucworIy4gVFJBTlNMQVRPUlM6IFRoaXMgaXMgdGhlIGhlYWRlciB0aGF0IGFwcGVhcnMgb24gJ2Rwa2ctcXVlcnkgLWwnLiBUaGUKKyMuICogc3RyaW5nIHNob3VsZCByZW1haW4gdW5kZXIgODAgY2hhcmFjdGVycy4gVGhlIHVwcGVyY2FzZSBsZXR0ZXJzIGluCisjLiAqIHRoZSBzdGF0ZSB2YWx1ZXMgZGVub3RlIHRoZSBhYmJyZXZpYXRlZCBsZXR0ZXIgdGhhdCB3aWxsIGFwcGVhciBvbgorIy4gKiB0aGUgZmlyc3QgdGhyZWUgY29sdW1ucywgd2hpY2ggc2hvdWxkIGlkZWFsbHkgbWF0Y2ggdGhlIEVuZ2xpc2ggb25lCisjLiAqIChlLmcuIFJlbW92ZSDihpIgc3VwUmltZWl4KSwgc2VlIGRwa2ctcXVlcnkoMSkgZm9yIGZ1cnRoZXIgZGV0YWlscy4gVGhlCisjLiAqIHRyYW5zbGF0ZWQgbWVzc2FnZSBjYW4gdXNlIGFkZGl0aW9uYWwgbGluZXMgaWYgbmVlZGVkLgorIzogc3JjL3F1ZXJ5Y21kLmM6MTQ5Cittc2dpZCAiIgorIkRlc2lyZWQ9VW5rbm93bi9JbnN0YWxsL1JlbW92ZS9QdXJnZS9Ib2xkXG4iCisifCBTdGF0dXM9Tm90L0luc3QvQ29uZi1maWxlcy9VbnBhY2tlZC9oYWxGLWNvbmYvSGFsZi1pbnN0L3RyaWctYVdhaXQvVHJpZy0iCisicGVuZFxuIgorInwvIEVycj89KG5vbmUpL1JlaW5zdC1yZXF1aXJlZCAoU3RhdHVzLEVycjogdXBwZXJjYXNlPWJhZClcbiIKK21zZ3N0ciAiIgorIkdld8O8bnNjaHQ9VW5iZWthbm50L0luc3RhbGxpZXJlbi9SPUVudGZlcm5lbi9QPVZvbGxzdMOkbmRpZyBMw7ZzY2hlbi9IYWx0ZW5cbiIKKyJ8IFN0YXR1cz1OaWNodC9JbnN0YWxsaWVydC9Db25maWcvVT1FbnRwYWNrdC9oYWxiIGtvbkZpZ3VyaWVydC9cbiIKKyIgICAgICAgICBIYWxiIGluc3RhbGxpZXJ0L1RyaWdnZXIgZXJXYXJ0ZXQvVHJpZ2dlciBhbmjDpG5naWdcbiIKKyJ8LyBGZWhsZXI/PShrZWluKS9SPU5ldWluc3RhbGxhdGlvbiBub3R3ZW5kaWcgKFN0YXR1cywgRmVobGVyOiAiCisiR1JPU1M9c2NobGVjaHQpXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjE1MworbXNnaWQgIk5hbWUiCittc2dzdHIgIk5hbWUiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjE1MworbXNnaWQgIlZlcnNpb24iCittc2dzdHIgIlZlcnNpb24iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjE1NAorbXNnaWQgIkRlc2NyaXB0aW9uIgorbXNnc3RyICJCZXNjaHJlaWJ1bmciCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI0NiBzcmMvcXVlcnljbWQuYzo1MTEgc3JjL3NlbGVjdC5jOjc1CisjLCBjLWZvcm1hdAorbXNnaWQgIk5vIHBhY2thZ2VzIGZvdW5kIG1hdGNoaW5nICVzLlxuIgorbXNnc3RyICJLZWluIFBha2V0IGdlZnVuZGVuLCBkYXMgYXVmICVzIHBhc3N0LlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJzaW9uIGJ5ICVzIGZyb206ICVzXG4iCittc2dzdHIgIlVtbGVpdHVuZyBkdXJjaCAlcyB2b246ICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI3NQorIywgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnNpb24gYnkgJXMgdG86ICVzXG4iCittc2dzdHIgIlVtbGVpdHVuZyBkdXJjaCAlcyB6dTogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6Mjc4CisjLCBjLWZvcm1hdAorbXNnaWQgImxvY2FsIGRpdmVyc2lvbiBmcm9tOiAlc1xuIgorbXNnc3RyICJsb2thbGUgVW1sZWl0dW5nIHZvbjogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6Mjc5CisjLCBjLWZvcm1hdAorbXNnaWQgImxvY2FsIGRpdmVyc2lvbiB0bzogJXNcbiIKK21zZ3N0ciAibG9rYWxlIFVtbGVpdHVuZyB6dTogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MzA5Cittc2dpZCAiLS1zZWFyY2ggbmVlZHMgYXQgbGVhc3Qgb25lIGZpbGUgbmFtZSBwYXR0ZXJuIGFyZ3VtZW50IgorbXNnc3RyICItLXNlYXJjaCBiZW7DtnRpZ3QgbWluZGVzdGVucyBlaW4gRGF0ZWluYW1lbm11c3Rlci1Bcmd1bWVudCIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MzUwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBubyBwYXRoIGZvdW5kIG1hdGNoaW5nIHBhdHRlcm4gJXMuXG4iCittc2dzdHIgIiVzOiBLZWluIFBmYWQgZ2VmdW5kZW4sIGRlciBhdWYgTXVzdGVyICVzIHBhc3N0LlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzozOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSBgJXMnIGlzIG5vdCBpbnN0YWxsZWQgYW5kIG5vIGluZm8gaXMgYXZhaWxhYmxlLlxuIgorbXNnc3RyICJQYWtldCDCuyVzwqsgaXN0IG5pY2h0IGluc3RhbGxpZXJ0IHVuZCBlcyBpc3Qga2VpbmUgSW5mbyB2ZXJmw7xnYmFyLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSBgJXMnIGlzIG5vdCBhdmFpbGFibGUuXG4iCittc2dzdHIgIlBha2V0IMK7JXPCqyBpc3QgbmljaHQgdmVyZsO8Z2Jhci5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDEwIHNyYy9xdWVyeWNtZC5jOjU4NQorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlIGAlcycgaXMgbm90IGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiUGFrZXQgwrslc8KrIGlzdCBuaWNodCBpbnN0YWxsaWVydC5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDE4CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgYCVzJyBkb2VzIG5vdCBjb250YWluIGFueSBmaWxlcyAoISlcbiIKK21zZ3N0ciAiUGFrZXQgwrslc8KrIGVudGjDpGx0IGtlaW5lIERhdGVpZW4oISlcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDI1CisjLCBjLWZvcm1hdAorbXNnaWQgImxvY2FsbHkgZGl2ZXJ0ZWQgdG86ICVzXG4iCittc2dzdHIgImxva2FsIHVtZ2VsZWl0ZXQgenU6ICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQyOAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGRpdmVydHMgb3RoZXJzIHRvOiAlc1xuIgorbXNnc3RyICJQYWtldCBsZWl0ZXQgYW5kZXJlIHVtIHp1OiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJ0ZWQgYnkgJXMgdG86ICVzXG4iCittc2dzdHIgInVtZ2VsZWl0ZXQgZHVyY2ggJXMgenU6ICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQ1MgorbXNnaWQgIiIKKyJVc2UgZHBrZyAtLWluZm8gKD0gZHBrZy1kZWIgLS1pbmZvKSB0byBleGFtaW5lIGFyY2hpdmUgZmlsZXMsXG4iCisiYW5kIGRwa2cgLS1jb250ZW50cyAoPSBkcGtnLWRlYiAtLWNvbnRlbnRzKSB0byBsaXN0IHRoZWlyIGNvbnRlbnRzLlxuIgorbXNnc3RyICIiCisiVmVyd2VuZGVuIFNpZSBkcGtnIC0taW5mbyAoPSBkcGtnLWRlYiAtLWluZm8pIHp1bSBVbnRlcnN1Y2hlbiB2b24gQXJjaGl2ZW5cbiIKKyJ1bmQgZHBrZyAtLWNvbnRlbnRzICg9IGRwa2ctZGViIC0tY29udGVudHMpIHp1bSBBdWZsaXN0ZW4gaWhyZXMgSW5oYWx0cy5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NTcwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgYXQgbW9zdCB0d28gYXJndW1lbnRzIgorbXNnc3RyICItLSVzIGFremVwdGllcnQgbWF4aW1hbCB6d2VpIEFyZ3VtZW50ZSIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NTc4CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbnRyb2wgZmlsZSBjb250YWlucyAlYyIKK21zZ3N0ciAiY29udHJvbC1EYXRlaSBlbnRow6RsdCAlYyIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjAwCisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiAlcyBwYWNrYWdlIG1hbmFnZW1lbnQgcHJvZ3JhbSBxdWVyeSB0b29sIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkRlYmlhbiAlcyBBYmZyYWdld2Vya3pldWcgZsO8ciBQYWtldG1hbmFnZW1lbnQtUHJvZ3JhbW0gVmVyc2lvbiAlcy5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjE5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1zfC0tc3RhdHVzIDxwYWNrYWdlPiAuLi4gICAgICAgIERpc3BsYXkgcGFja2FnZSBzdGF0dXMgZGV0YWlscy5cbiIKKyIgIC1wfC0tcHJpbnQtYXZhaWwgPHBhY2thZ2U+IC4uLiAgIERpc3BsYXkgYXZhaWxhYmxlIHZlcnNpb24gZGV0YWlscy5cbiIKKyIgIC1MfC0tbGlzdGZpbGVzIDxwYWNrYWdlPiAuLi4gICAgIExpc3QgZmlsZXMgYG93bmVkJyBieSBwYWNrYWdlKHMpLlxuIgorIiAgLWx8LS1saXN0IFs8cGF0dGVybj4gLi4uXSAgICAgICAgTGlzdCBwYWNrYWdlcyBjb25jaXNlbHkuXG4iCisiICAtV3wtLXNob3cgWzxwYXR0ZXJuPiAuLi5dICAgICAgICBTaG93IGluZm9ybWF0aW9uIG9uIHBhY2thZ2UocykuXG4iCisiICAtU3wtLXNlYXJjaCA8cGF0dGVybj4gLi4uICAgICAgICBGaW5kIHBhY2thZ2Uocykgb3duaW5nIGZpbGUocykuXG4iCisiICAtY3wtLWNvbnRyb2wtcGF0aCA8cGFja2FnZT4gWzxmaWxlPl1cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFByaW50IHBhdGggZm9yIHBhY2thZ2UgY29udHJvbCBmaWxlLlxuIgorIlxuIgorbXNnc3RyICIiCisiQmVmZWhsZTpcbiIKKyIgIC1zfC0tc3RhdHVzIDxQYWtldD4gLi4uICAgICAgICAgIERldGFpbHMgenVtIFBha2V0c3RhdHVzIGFuemVpZ2VuLlxuIgorIiAgLXB8LS1wcmludC1hdmFpbCA8UGFrZXQ+IC4uLiAgICAgRGV0YWlscyB6dXIgdm9yaGFuZGVuZW4gVmVyc2lvbiAiCisiYW56ZWlnZW4uXG4iCisiICAtTHwtLWxpc3RmaWxlcyA8UGFrZXQ+IC4uLiAgICAgICB6dSBQYWtldChlbikgZ2Vow7ZyZW5kZSBEYXRlaWVuICIKKyJhdWZsaXN0ZW4uXG4iCisiICAtbHwtLWxpc3QgWzxNdXN0ZXI+IC4uLl0gICAgICAgICDDnGJlcnNpY2h0IHp1IFBha2V0ZW4gYXVmbGlzdGVuLlxuIgorIiAgLVd8LS1zaG93IFs8TXVzdGVyPiAuLi5dICAgICAgICAgSW5mb3JtYXRpb25lbiB6dSBQYWtldChlbikgYW56ZWlnZW4uXG4iCisiICAtU3wtLXNlYXJjaCA8TXVzdGVyPiAuLi4gICAgICAgICBQYWtldGUgc3VjaGVuLCBkZW5lbiBEYXRlaShlbikgZ2Vow7ZyZW4uXG4iCisiICAtY3wtLWNvbnRyb2wtcGF0aCA8UGFrZXQ+IFs8RGF0ZWk+XVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUGZhZCB6dXIgY29udHJvbC1EYXRlaSBkZXMgUGFrZXRlcyAiCisiYXVzZ2ViZW4uXG4iCisiXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjYzNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorIiAgLWZ8LS1zaG93Zm9ybWF0PTxmb3JtYXQ+ICAgICAgICAgVXNlIGFsdGVybmF0aXZlIGZvcm1hdCBmb3IgLS1zaG93LlxuIgorIlxuIgorbXNnc3RyICIiCisiT3B0aW9uZW46XG4iCisiICAtLWFkbWluZGlyPTxWZXJ6ZWljaG5pcz4gICAgICAgICA8VmVyemVpY2huaXM+IHN0YXR0ICVzIHZlcndlbmRlbi5cbiIKKyIgIC1mfC0tc2hvd2Zvcm1hdD08Rm9ybWF0PiAgICAgICAgIGFsdGVybmF0aXZlcyBGb3JtYXQgZsO8ciAtLXNob3cgIgorInZlcndlbmRlbi5cbiIKKyJcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjQyIGRwa2ctZGViL21haW4uYzoxMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkZvcm1hdCBzeW50YXg6XG4iCisiICBBIGZvcm1hdCBpcyBhIHN0cmluZyB0aGF0IHdpbGwgYmUgb3V0cHV0IGZvciBlYWNoIHBhY2thZ2UuIFRoZSBmb3JtYXRcbiIKKyIgIGNhbiBpbmNsdWRlIHRoZSBzdGFuZGFyZCBlc2NhcGUgc2VxdWVuY2VzIFxcbiAobmV3bGluZSksIFxcciAoY2FycmlhZ2VcbiIKKyIgIHJldHVybikgb3IgXFxcXCAocGxhaW4gYmFja3NsYXNoKS4gUGFja2FnZSBpbmZvcm1hdGlvbiBjYW4gYmUgaW5jbHVkZWRcbiIKKyIgIGJ5IGluc2VydGluZyB2YXJpYWJsZSByZWZlcmVuY2VzIHRvIHBhY2thZ2UgZmllbGRzIHVzaW5nIHRoZSAke3Zhcls7IgorIndpZHRoXX1cbiIKKyIgIHN5bnRheC4gRmllbGRzIHdpbGwgYmUgcmlnaHQtYWxpZ25lZCB1bmxlc3MgdGhlIHdpZHRoIGlzIG5lZ2F0aXZlIGluICIKKyJ3aGljaFxuIgorIiAgY2FzZSBsZWZ0IGFsaWdubWVudCB3aWxsIGJlIHVzZWQuXG4iCittc2dzdHIgIiIKKyJGb3JtYXQtU3ludGF4OlxuIgorIiAgRWluIEZvcm1hdCBpc3QgZWluZSBaZWljaGVua2V0dGUsIGRpZSBmw7xyIGplZGVzIFBha2V0IGF1c2dlZ2ViZW4gd2lyZC4gIgorIkRhc1xuIgorIiAgRm9ybWF0IGthbm4gZGllIFN0YW5kYXJkLUVzY2FwZS1TZXF1ZW56ZW4gXFxuIChaZWlsZW52b3JzY2h1YiksIFxcclxuIgorIiAgKFdhZ2VucsO8Y2tsYXVmKSBvZGVyIFxcXFwgKGVpbmZhY2hlciBCYWNrc2xhc2gpIGVudGhhbHRlbi4gIgorIlBha2V0aW5mb3JtYXRpb25lblxuIgorIiAga8O2bm5lbiBlaW5nZWbDvGd0IHdlcmRlbiwgaW5kZW0gVmFyaWFibGVucmVmZXJlbnplbiB6dSBQYWtldGZlbGRlcm5cbiIKKyIgIGJlbnV0enQgd2VyZGVuLCBkaWUgU3ludGF4IGhpZXJmw7xyIGlzdCAke3Zhcls7YnJlaXRlXX0uIEZlbGRlciB3ZXJkZW5cbiIKKyIgIG5vcm1hbGVyd2Vpc2UgcmVjaHRzYsO8bmRpZyBhdXNnZXJpY2h0ZXQ7IHdlbm4gZGllIEJyZWl0ZSBuZWdhdGl2IGlzdCxcbiIKKyIgIGRhbm4gbGlua3Niw7xuZGlnLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo2NTYKK21zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IHF1ZXJ5aW5nIHBhY2thZ2VzLiIKK21zZ3N0ciAiVmVyd2VuZGVuIFNpZSAtLWhlbHAgZsO8ciBIaWxmZSB6dW0gQWJmcmFnZW4gdm9uIFBha2V0ZW4uIgorCisjOiBzcmMvcmVtb3ZlLmM6ODgKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgcmVxdWVzdCB0byByZW1vdmUgJS4yNTBzIHdoaWNoIGlzbid0IGluc3RhbGxlZC4iCittc2dzdHIgIiIKKyJEaWUgQW5mb3JkZXJ1bmcsICUuMjUwcyB6dSBlbnRmZXJuZW4sIHdpcmQgaWdub3JpZXJ0OyBlcyBpc3QgbmljaHQgIgorImluc3RhbGxpZXJ0LiIKKworIzogc3JjL3JlbW92ZS5jOjk1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpZ25vcmluZyByZXF1ZXN0IHRvIHJlbW92ZSAlLjI1MHMsIG9ubHkgdGhlIGNvbmZpZ1xuIgorIiBmaWxlcyBvZiB3aGljaCBhcmUgb24gdGhlIHN5c3RlbS4gVXNlIC0tcHVyZ2UgdG8gcmVtb3ZlIHRoZW0gdG9vLiIKK21zZ3N0ciAiIgorIkFuZm9yZGVydW5nIHp1bSBMw7ZzY2hlbiB2b24gJS4yNTBzIHdpcmQgaWdub3JpZXJ0LCB2b24gZGVtIG51ciBub2NoIGRpZVxuIgorIiBLb25mLi1EYXRlaWVuIGF1ZiBkZW0gU3lzdGVtIHNpbmQuIEJlbnV0emVuIFNpZSAtLXB1cmdlLCB1bSBkaWVzZSB6dSAiCisibMO2c2NoZW4uIgorCisjOiBzcmMvcmVtb3ZlLmM6MTAzCittc2dpZCAiVGhpcyBpcyBhbiBlc3NlbnRpYWwgcGFja2FnZSAtIGl0IHNob3VsZCBub3QgYmUgcmVtb3ZlZC4iCittc2dzdHIgIkRpZXMgaXN0IGVpbiBlc3NlbnppZWxsZXMgUGFrZXQgLSBlcyBzb2xsdGUgbmljaHQgZW50ZmVybnQgd2VyZGVuLiIKKworIzogc3JjL3JlbW92ZS5jOjEyOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogZGVwZW5kZW5jeSBwcm9ibGVtcyBwcmV2ZW50IHJlbW92YWwgb2YgJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiBBYmjDpG5naWdrZWl0c3Byb2JsZW1lIHZlcmhpbmRlcm4gRW50ZmVybmVuIHZvbiAlczpcbiIKKyIlcyIKKworIzogc3JjL3JlbW92ZS5jOjEzMAorbXNnaWQgImRlcGVuZGVuY3kgcHJvYmxlbXMgLSBub3QgcmVtb3ZpbmciCittc2dzdHIgIkFiaMOkbmdpZ2tlaXRzcHJvYmxlbWUgLSB3aXJkIG5pY2h0IGVudGZlcm50IgorCisjOiBzcmMvcmVtb3ZlLmM6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiAlczogZGVwZW5kZW5jeSBwcm9ibGVtcywgYnV0IHJlbW92aW5nIGFueXdheSBhcyB5b3UgcmVxdWVzdGVkOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogJXM6IEFiaMOkbmdpZ2tlaXRzcHJvYmxlbWUsIHdpcmQgYWJlciB3aWUgZ2Vmb3JkZXJ0IGRlbm5vY2ggZW50ZmVybnQ6XG4iCisiJXMiCisKKyM6IHNyYy9yZW1vdmUuYzoxNDIKK21zZ2lkICIiCisiUGFja2FnZSBpcyBpbiBhIHZlcnkgYmFkIGluY29uc2lzdGVudCBzdGF0ZSAtIHlvdSBzaG91bGRcbiIKKyIgcmVpbnN0YWxsIGl0IGJlZm9yZSBhdHRlbXB0aW5nIGEgcmVtb3ZhbC4iCittc2dzdHIgIiIKKyJQYWtldCBpc3QgaW4gZWluZW0gc2VociBzY2hsZWNodGVuIGlua29uc2lzdGVudGVuIFp1c3RhbmQgLSBTaWUgc29sbHRlblxuIgorIiBlcyBlcm5ldXQgaW5zdGFsbGllcmVuLCBiZXZvciBTaWUgZXMgenUgZW50ZmVybmVuIHZlcnN1Y2hlbi4iCisKKyM6IHNyYy9yZW1vdmUuYzoxNDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiV291bGQgcmVtb3ZlIG9yIHB1cmdlICVzIC4uLlxuIgorbXNnc3RyICIlcyB3w7xyZGUgZW50ZmVybnQgb2RlciB2b2xsc3TDpG5kaWcgZ2Vsw7ZzY2h0IHdlcmRlbiAuLi5cbiIKKworIzogc3JjL3JlbW92ZS5jOjE1NworIywgYy1mb3JtYXQKK21zZ2lkICJSZW1vdmluZyAlcyAuLi5cbiIKK21zZ3N0ciAiRW50ZmVybmVuIHZvbiAlcyAuLi5cbiIKKworIzogc3JjL3JlbW92ZS5jOjI3NSBzcmMvcmVtb3ZlLmM6MzY2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ3aGlsZSByZW1vdmluZyAlLjI1MHMsIHVuYWJsZSB0byByZW1vdmUgZGlyZWN0b3J5ICclLjI1MHMnOiAlcyAtIGRpcmVjdG9yeSAiCisibWF5IGJlIGEgbW91bnQgcG9pbnQ/IgorbXNnc3RyICIiCisiV8OkaHJlbmQgZGVzIEVudGZlcm5lbnMgdm9uICUuMjUwcyBrYW5uIFZlcnplaWNobmlzIMK7JS4yNTBzwqsgbmljaHQgZ2Vsw7ZzY2h0ICIKKyJ3ZXJkZW46ICVzIC0gVmVyemVpY2huaXMgdmllbGxlaWNodCBlaW4gRWluaMOkbmdlcHVua3Q/IgorCisjOiBzcmMvcmVtb3ZlLmM6Mjg5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWN1cmVseSByZW1vdmUgJyUuMjUwcyciCittc2dzdHIgIsK7JS4yNTBzwqsga2FubiBuaWNodCBhdWYgc2ljaGVyZSBXZWlzZSBlbnRmZXJudCB3ZXJkZW4iCisKKyM6IHNyYy9yZW1vdmUuYzozNjEKKyMsIGMtZm9ybWF0Cittc2dpZCAid2hpbGUgcmVtb3ZpbmcgJS4yNTBzLCBkaXJlY3RvcnkgJyUuMjUwcycgbm90IGVtcHR5IHNvIG5vdCByZW1vdmVkLiIKK21zZ3N0ciAiIgorIlfDpGhyZW5kIEVudGZlcm5lbnMgdm9uICUuMjUwcyBpc3QgVmVyemVpY2huaXMgwrslLjI1MHPCqyBuaWNodCBsZWVyLCB3aXJkICIKKyJkYWhlciBuaWNodCBnZWzDtnNjaHQuIgorCisjOiBzcmMvcmVtb3ZlLmM6MzgzCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZW1vdmUgJyUuMjUwcyciCittc2dzdHIgIsK7JS4yNTBzwqsga2FubiBuaWNodCBlbnRmZXJudCB3ZXJkZW4iCisKKyM6IHNyYy9yZW1vdmUuYzo0MDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHVyZ2luZyBjb25maWd1cmF0aW9uIGZpbGVzIGZvciAlcyAuLi5cbiIKK21zZ3N0ciAiTMO2c2NoZW4gZGVyIEtvbmZpZ3VyYXRpb25zZGF0ZWllbiB2b24gJXMgLi4uXG4iCisKKyM6IHNyYy9yZW1vdmUuYzo0NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlbW92ZSBvbGQgY29uZmlnIGZpbGUgYCUuMjUwcycgKD0gYCUuMjUwcycpIgorbXNnc3RyICIiCisiQWx0ZSBLb25maWd1cmF0aW9uc2RhdGVpIMK7JS4yNTBzwqsga2FubiBuaWNodCBlbnRmZXJudCB3ZXJkZW4gKD0gwrslLjI1MHPCqykiCisKKyM6IHNyYy9yZW1vdmUuYzo0NzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlYWQgY29uZmlnIGZpbGUgZGlyIGAlLjI1MHMnIChmcm9tIGAlLjI1MHMnKSIKK21zZ3N0ciAiIgorIktvbmZpZ3VyYXRpb25zZGF0ZWllbi1WZXJ6ZWljaG5pcyDCuyUuMjUwc8KrIGthbm4gbmljaHQgZ2VsZXNlbiB3ZXJkZW4gKGF1cyAiCisiwrslLjI1MHPCqykiCisKKyM6IHNyYy9yZW1vdmUuYzo1MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlbW92ZSBvbGQgYmFja3VwIGNvbmZpZyBmaWxlIGAlLjI1MHMnIChvZiBgJS4yNTBzJykiCittc2dzdHIgIiIKKyJBbHRlIEtvbmZpZ3VyYXRpb25zLVNpY2hlcnVuZ3NkYXRlaSDCuyUuMjUwc8KrIGthbm4gbmljaHQgZ2Vsw7ZzY2h0IHdlcmRlbiAoYXVzICIKKyLCuyUuMjUwc8KrKSIKKworIzogc3JjL3JlbW92ZS5jOjU2OAorbXNnaWQgImNhbm5vdCByZW1vdmUgb2xkIGZpbGVzIGxpc3QiCittc2dzdHIgIkFsdGUgRGF0ZWlsaXN0ZSBrYW5uIG5pY2h0IGdlbMO2c2NodCB3ZXJkZW4iCisKKyM6IHNyYy9yZW1vdmUuYzo1NzQKK21zZ2lkICJjYW4ndCByZW1vdmUgb2xkIHBvc3RybSBzY3JpcHQiCittc2dzdHIgIkFsdGVzIHBvc3RybS1Ta3JpcHQga2FubiBuaWNodCBnZWzDtnNjaHQgd2VyZGVuIgorCisjOiBzcmMvc2VsZWN0LmM6MTE1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW9mIGluIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICJ1bmVyd2FydGV0ZXMgRU9GIGltIFBha2V0bmFtZW4gaW4gWmVpbGUgJWQiCisKKyM6IHNyYy9zZWxlY3QuYzoxMTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgbGluZSBpbiBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZCIKK21zZ3N0ciAidW5lcndhcnRldGVzIFplaWxlbmVuZGUgaW0gUGFrZXRuYW1lbiBpbiBaZWlsZSAlZCIKKworIzogc3JjL3NlbGVjdC5jOjEyMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVvZiBhZnRlciBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZCIKK21zZ3N0ciAidW5lcndhcnRldGVzIEVPRiBuYWNoIFBha2V0bmFtZW4gaW4gWmVpbGUgJWQiCisKKyM6IHNyYy9zZWxlY3QuYzoxMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgbGluZSBhZnRlciBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZCIKK21zZ3N0ciAidW5lcndhcnRldGVzIFplaWxlbmVuZGUgbmFjaCBQYWtldG5hbWVuIGluIFplaWxlICVkIgorCisjOiBzcmMvc2VsZWN0LmM6MTM2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZGF0YSBhZnRlciBwYWNrYWdlIGFuZCBzZWxlY3Rpb24gYXQgbGluZSAlZCIKK21zZ3N0ciAidW5lcndhcnRldGUgRGF0ZW4gbmFjaCBQYWtldCB1bmQgQXVzd2FobCBpbiBaZWlsZSAlZCIKKworIzogc3JjL3NlbGVjdC5jOjEzOQorIywgYy1mb3JtYXQKK21zZ2lkICJpbGxlZ2FsIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkOiAlLjI1MHMiCittc2dzdHIgInVuZ8O8bHRpZ2VyIFBha2V0bmFtZSBpbiBaZWlsZSAlZDogJS4yNTBzIgorCisjOiBzcmMvc2VsZWN0LmM6MTQzCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gd2FudGVkIHN0YXR1cyBhdCBsaW5lICVkOiAlLjI1MHMiCittc2dzdHIgInVuYmVrYW5udGVyIEdld8O8bnNjaHQtU3RhdHVzIGluIFplaWxlICVkOiAlLjI1MHMiCisKKyM6IHNyYy9zZWxlY3QuYzoxNDkKK21zZ2lkICJyZWFkIGVycm9yIG9uIHN0YW5kYXJkIGlucHV0IgorbXNnc3RyICJMZXNlZmVobGVyIGF1ZiBkZXIgU3RhbmRhcmRlaW5nYWJlIgorCisjOiBzcmMvc3RhdGNtZC5jOjUyCittc2dpZCAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBvdmVycmlkaW5nIGZpbGUgc3RhdCBpbmZvcm1hdGlvbi4iCittc2dzdHIgIiIKKyJWZXJ3ZW5kZW4gU2llIC0taGVscCwgdW0genUgZXJmYWhyZW4sIHdpZSBkaWUgU3RhdHVzaW5mb3JtYXRpb25lbiB2b24gIgorIkRhdGVpZW5cbiIKKyIgw7xiZXJzY2hyaWViZW4gd2VyZGVuIGvDtm5uZW4uIgorCisjOiBzcmMvc3RhdGNtZC5jOjYxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsIDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDYtMjAwOSBHdWlsbGVtIEpvdmVyLlxuIgorbXNnc3RyICIiCisiQ29weXJpZ2h0IChDKSAyMDAwLCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDA2LTIwMDkgR3VpbGxlbSBKb3Zlci5cbiIKKworIzogc3JjL3N0YXRjbWQuYzo4MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtLWFkZCA8b3duZXI+IDxncm91cD4gPG1vZGU+IDxmaWxlPlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGFkZCBhIG5ldyBlbnRyeSBpbnRvIHRoZSBkYXRhYmFzZS5cbiIKKyIgIC0tcmVtb3ZlIDxmaWxlPiAgICAgICAgICByZW1vdmUgZmlsZSBmcm9tIHRoZSBkYXRhYmFzZS5cbiIKKyIgIC0tbGlzdCBbPGdsb2ItcGF0dGVybj5dICBsaXN0IGN1cnJlbnQgb3ZlcnJpZGVzIGluIHRoZSBkYXRhYmFzZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIkJlZmVobGU6XG4iCisiICAtLWFkZCA8RWlnZW50w7xtZXI+IDxHcnVwcGU+IDxNb2R1cz4gPERhdGVpPlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIG5ldWVuIEVpbnRyYWcgenVyIERhdGVuYmFuayBoaW56dWbDvGdlbi5cbiIKKyIgIC0tcmVtb3ZlIDxEYXRlaT4gICAgICAgICBEYXRlaSBhdXMgZGVyIERhdGVuYmFuayBlbnRmZXJuZW4uXG4iCisiICAtLWxpc3QgWzxHbG9iLU11c3Rlcj5dICAgYWt0dWVsbGUgT3ZlcnJpZGVzIGluIGRlciBEYXRlbmJhbmsgYXVmbGlzdGVuLlxuIgorIlxuIgorCisjOiBzcmMvc3RhdGNtZC5jOjg5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIHNldCB0aGUgZGlyZWN0b3J5IHdpdGggdGhlIHN0YXRvdmVycmlkZSBmaWxlLlxuIgorIiAgLS11cGRhdGUgICAgICAgICAgICAgICAgIGltbWVkaWF0ZWx5IHVwZGF0ZSBmaWxlIHBlcm1pc3Npb25zLlxuIgorIiAgLS1mb3JjZSAgICAgICAgICAgICAgICAgIGZvcmNlIGFuIGFjdGlvbiBldmVuIGlmIGEgc2FuaXR5IGNoZWNrIGZhaWxzLlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHF1aWV0IG9wZXJhdGlvbiwgbWluaW1hbCBvdXRwdXQuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorbXNnc3RyICIiCisiT3B0aW9uZW46XG4iCisiICAtLWFkbWluZGlyIDxWZXJ6ZWljaG5pcz4gVmVyemVpY2huaXMgbWl0IGRlciBzdGF0b3ZlcnJpZGUtRGF0ZWkgc2V0emVuLlxuIgorIiAgLS11cGRhdGUgICAgICAgICAgICAgICAgIERhdGVpenVncmlmZnNyZWNodGUgc29mb3J0IGFrdHVhbGlzaWVyZW4uXG4iCisiICAtLWZvcmNlICAgICAgICAgICAgICAgICAgQWt0aW9uIGVyendpbmdlbiwgc2VsYnN0IHdlbm4gw5xiZXJwcsO8ZnVuZyAiCisic2NoZWl0ZXJ0LlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHN0aWxsZSBBdXNmw7xocnVuZywgbWluaW1hbGUgQXVzZ2FiZW4uXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgZGllc2VuIEhpbGZldGV4dCBhbnplaWdlbi5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBWZXJzaW9uIGFuemVpZ2VuLlxuIgorIlxuIgorCisjOiBzcmMvc3RhdGNtZC5jOjExNgorbXNnaWQgInN0cmlwcGluZyB0cmFpbGluZyAvIgorbXNnc3RyICJFbnRmZXJuZW4gdm9uIGFic2NobGllw59lbmRlbShuKSAvIgorCisjOiBzcmMvc3RhdGNtZC5jOjIwNworbXNnaWQgImNhbm5vdCBvcGVuIG5ldyBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiTmV1ZSBzdGF0b3ZlcnJpZGUtRGF0ZWkga2FubiBuaWNodCBnZcO2ZmZuZXQgd2VyZGVuIgorCisjOiBzcmMvc3RhdGNtZC5jOjIyMgorbXNnaWQgImVycm9yIHJlbW92aW5nIHN0YXRvdmVycmlkZS1vbGQiCittc2dzdHIgIkZlaGxlciBiZWltIEVudGZlcm5lbiB2b24gc3RhdG92ZXJyaWRlLW9sZCIKKworIzogc3JjL3N0YXRjbWQuYzoyMjQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBuZXcgc3RhdG92ZXJyaWRlLW9sZCIKK21zZ3N0ciAiRmVobGVyIGJlaW0gQW5sZWdlbiBkZXIgbmV1ZW4gc3RhdG92ZXJyaWRlLW9sZCIKKworIzogc3JjL3N0YXRjbWQuYzoyMjYKK21zZ2lkICJlcnJvciBpbnN0YWxsaW5nIG5ldyBzdGF0b3ZlcnJpZGUiCittc2dzdHIgIkZlaGxlciBiZWltIEluc3RhbGxpZXJlbiBkZXIgbmV1ZW4gc3RhdG92ZXJyaWRlIgorCisjOiBzcmMvc3RhdGNtZC5jOjI0NgorbXNnaWQgIi0tYWRkIG5lZWRzIGZvdXIgYXJndW1lbnRzIgorbXNnc3RyICItLWFkZCBiZW7DtnRpZ3QgdmllciBBcmd1bWVudGUiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjU2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJBbiBvdmVycmlkZSBmb3IgJyVzJyBhbHJlYWR5IGV4aXN0cywgYnV0IC0tZm9yY2Ugc3BlY2lmaWVkIHNvIHdpbGwgYmUgIgorImlnbm9yZWQuIgorbXNnc3RyICIiCisiRWluIE92ZXJyaWRlIGbDvHIgwrslc8KrIGV4aXN0aWVydCBiZXJlaXRzLCB3aXJkIGFiZXIgaWdub3JpZXJ0LCBkYSAtLWZvcmNlICIKKyJhbmdlZ2ViZW4gaXN0LiIKKworIzogc3JjL3N0YXRjbWQuYzoyNjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiQW4gb3ZlcnJpZGUgZm9yICclcycgYWxyZWFkeSBleGlzdHMsIGFib3J0aW5nLiIKK21zZ3N0ciAiRWluIE92ZXJyaWRlIGbDvHIgwrslc8KrIGV4aXN0aWVydCBiZXJlaXRzLCBBYmJydWNoLiIKKworIzogc3JjL3N0YXRjbWQuYzoyNzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS11cGRhdGUgZ2l2ZW4gYnV0ICVzIGRvZXMgbm90IGV4aXN0IgorbXNnc3RyICItLXVwZGF0ZSBhbmdlZ2ViZW4sIGFiZXIgJXMgZXhpc3RpZXJ0IG5pY2h0IgorCisjOiBzcmMvc3RhdGNtZC5jOjI5NgorbXNnaWQgIk5vIG92ZXJyaWRlIHByZXNlbnQuIgorbXNnc3RyICJLZWluIE92ZXJyaWRlIHZvcmhhbmRlbi4iCisKKyM6IHNyYy9zdGF0Y21kLmM6MzA0Cittc2dpZCAiLS11cGRhdGUgaXMgdXNlbGVzcyBmb3IgLS1yZW1vdmUiCittc2dzdHIgIi0tdXBkYXRlIGlzdCBzaW5ubG9zIGbDvHIgLS1yZW1vdmUiCisKKyM6IHNyYy9zdGF0ZGIuYzo1OQorbXNnaWQgInN5bnRheCBlcnJvcjogaW52YWxpZCB1aWQgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIlN5bnRheGZlaGxlcjogdW5nw7xsdGlnZSBVSUQgaW4gc3RhdG92ZXJyaWRlLURhdGVpIgorCisjOiBzcmMvc3RhdGRiLmM6NjQKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yOiB1bmtub3duIHVzZXIgJyVzJyBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiU3ludGF4ZmVobGVyOiB1bmJla2FubnRlciBCZW51dHplciDCuyVzwqsgaW4gc3RhdG92ZXJyaWRlLURhdGVpIgorCisjOiBzcmMvc3RhdGRiLmM6ODMKK21zZ2lkICJzeW50YXggZXJyb3I6IGludmFsaWQgZ2lkIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJTeW50YXhmZWhsZXI6IHVuZ8O8bHRpZ2UgR0lEIGluIHN0YXRvdmVycmlkZS1EYXRlaSIKKworIzogc3JjL3N0YXRkYi5jOjg4CisjLCBjLWZvcm1hdAorbXNnaWQgInN5bnRheCBlcnJvcjogdW5rbm93biBncm91cCAnJXMnIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJTeW50YXhmZWhsZXI6IHVuYmVrYW5udGUgR3J1cHBlIMK7JXPCqyBpbiBzdGF0b3ZlcnJpZGUtRGF0ZWkiCisKKyM6IHNyYy9zdGF0ZGIuYzoxMDQKK21zZ2lkICJzeW50YXggZXJyb3I6IGludmFsaWQgbW9kZSBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiU3ludGF4ZmVobGVyOiB1bmfDvGx0aWdlciBNb2R1cyBpbiBzdGF0b3ZlcnJpZGUtRGF0ZWkiCisKKyM6IHNyYy9zdGF0ZGIuYzoxMjcKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiw5ZmZm5lbiBkZXIgc3RhdG92ZXJyaWRlLURhdGVpIGZlaGxnZXNjaGxhZ2VuIgorCisjOiBzcmMvc3RhdGRiLmM6MTM0Cittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJBYmZyYWdlbiBkZXIgc3RhdG92ZXJyaWRlLURhdGVpIG1pdCBmc3RhdCBmZWhsZ2VzY2hsYWdlbiIKKworIzogc3JjL3N0YXRkYi5jOjEzNworbXNnaWQgImZhaWxlZCB0byBmc3RhdCBwcmV2aW91cyBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiQWJmcmFnZW4gZGVyIHZvcmhlcmlnZW4gc3RhdG92ZXJyaWRlLURhdGVpIG1pdCBmc3RhdCBmZWhsZ2VzY2hsYWdlbiIKKworIzogc3JjL3N0YXRkYi5jOjE2MgorIywgYy1mb3JtYXQKK21zZ2lkICJyZWFkaW5nIHN0YXRvdmVycmlkZSBmaWxlICclLjI1MHMnIgorbXNnc3RyICJMZXNlbiBkZXIgc3RhdG92ZXJyaWRlLURhdGVpIMK7JS4yNTBzwqsiCisKKyM6IHNyYy9zdGF0ZGIuYzoxNjkKK21zZ2lkICJzdGF0b3ZlcnJpZGUgZmlsZSBpcyBtaXNzaW5nIGZpbmFsIG5ld2xpbmUiCittc2dzdHIgIkFic2NobGllw59lbmRlciBaZWlsZW52b3JzY2h1YiBmZWhsdCBpbiBzdGF0b3ZlcnJpZGUtRGF0ZWkiCisKKyM6IHNyYy9zdGF0ZGIuYzoxNzMKK21zZ2lkICJzdGF0b3ZlcnJpZGUgZmlsZSBjb250YWlucyBlbXB0eSBsaW5lIgorbXNnc3RyICJzdGF0b3ZlcnJpZGUtRGF0ZWkgZW50aMOkbHQgbGVlcmUgWmVpbGUiCisKKyM6IHNyYy9zdGF0ZGIuYzoxNzggc3JjL3N0YXRkYi5jOjE5MCBzcmMvc3RhdGRiLmM6MjAyCittc2dpZCAic3ludGF4IGVycm9yIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJTeW50YXhmZWhsZXIgaW4gc3RhdG92ZXJyaWRlLURhdGVpIgorCisjOiBzcmMvc3RhdGRiLmM6MTg2IHNyYy9zdGF0ZGIuYzoxOTggc3JjL3N0YXRkYi5jOjIxMAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGxpbmUgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgInVuZXJ3YXJ0ZXRlcyBaZWlsZW5lbmRlIGluIHN0YXRvdmVycmlkZS1EYXRlaSIKKworIzogc3JjL3N0YXRkYi5jOjIxNAorIywgYy1mb3JtYXQKK21zZ2lkICJtdWx0aXBsZSBzdGF0dXNvdmVycmlkZXMgcHJlc2VudCBmb3IgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAiTWVocmVyZSBTdGF0dXMtT3ZlcnJpZGVzIGbDvHIgRGF0ZWkgwrslLjI1MHPCqyB2b3JoYW5kZW4iCisKKyM6IHNyYy90cmlnY21kLmM6NDYKK21zZ2lkICJUeXBlIGRwa2ctdHJpZ2dlciAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgdGhpcyB1dGlsaXR5LiIKK21zZ3N0ciAiR2ViZW4gU2llIGRwa2ctdHJpZ2dlciAtLWhlbHAgZsO8ciBIaWxmZSB6dSBkaWVzZW0gUHJvZ3JhbW0gZWluLiIKKworIzogc3JjL3RyaWdjbWQuYzo1MQorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gJXMgcGFja2FnZSB0cmlnZ2VyIHV0aWxpdHkgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiRGViaWFuICVzIFBha2V0LVRyaWdnZXIgSGlsZnNwcm9ncmFtbSBWZXJzaW9uICVzLlxuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjY3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJVc2FnZTogJXMgWzxvcHRpb25zPiAuLi5dIDx0cmlnZ2VyLW5hbWU+XG4iCisiICAgICAgICVzIFs8b3B0aW9ucz4gLi4uXSA8Y29tbWFuZD5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIkF1ZnJ1ZjogJXMgWzxPcHRpb25lbj4gLi4uXSA8VHJpZ2dlci1OYW1lPlxuIgorIiAgICAgICAgJXMgWzxPcHRpb25lbj4gLi4uXSA8QmVmZWhsPlxuIgorIlxuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC0tY2hlY2stc3VwcG9ydGVkICAgICAgICAgICAgICAgIENoZWNrIGlmIHRoZSBydW5uaW5nIGRwa2cgc3VwcG9ydHMgIgorInRyaWdnZXJzLlxuIgorIlxuIgorbXNnc3RyICIiCisiQmVmZWhsZTpcbiIKKyIgIC0tY2hlY2stc3VwcG9ydGVkICAgICAgICAgICAgICAgIMOcYmVycHLDvGZlbiwgb2IgZGFzIGxhdWZlbmRlIGRwa2dcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVHJpZ2dlciB1bnRlcnN0w7x0enQuXG4iCisiXG4iCisKKyM6IHNyYy90cmlnY21kLmM6ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgICAgICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyIgIC0tYnktcGFja2FnZT08cGFja2FnZT4gICAgICAgICAgIE92ZXJyaWRlIHRyaWdnZXIgYXdhaXRlciAobm9ybWFsbHkgc2V0XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ5IGRwa2cpLlxuIgorIiAgLS1uby1hd2FpdCAgICAgICAgICAgICAgICAgICAgICAgTm8gcGFja2FnZSBuZWVkcyB0byBhd2FpdCB0aGUgIgorInByb2Nlc3NpbmcuXG4iCisiICAtLW5vLWFjdCAgICAgICAgICAgICAgICAgICAgICAgICBKdXN0IHRlc3QgLSBkb24ndCBhY3R1YWxseSBjaGFuZ2UgIgorImFueXRoaW5nLlxuIgorIlxuIgorbXNnc3RyICIiCisiT3B0aW9uZW46XG4iCisiICAtLWFkbWluZGlyPTxWZXJ6ZWljaG5pcz4gICAgICAgICA8VmVyemVpY2huaXM+IHN0YXR0ICVzIHZlcndlbmRlbi5cbiIKKyIgIC0tYnktcGFja2FnZT08UGFrZXQ+ICAgICAgICAgICAgIMOcYmVyc3RpbW1lbiwgd2VsY2hlcyBQYWtldCBhdWYgVHJpZ2dlclxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3YXJ0ZXQgKG5vcm1hbGVyd2Vpc2Ugdm9uIGRwa2cgIgorImdlc2V0enQpLlxuIgorIiAgLS1uby1hd2FpdCAgICAgICAgICAgICAgICAgICAgICAgS2VpbiBQYWtldCBtdXNzIGF1ZiBkaWUgVmVyYXJiZWl0dW5nICIKKyJ3YXJ0ZW4uXG4iCisiICAtLW5vLWFjdCAgICAgICAgICAgICAgICAgICAgICAgICBOdXIgdGVzdGVuIC0gbmljaHRzIHRhdHPDpGNobGljaCDDpG5kZXJuLlxuIgorIlxuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogdHJpZ2dlcnMgZGF0YSBkaXJlY3Rvcnkgbm90IHlldCBjcmVhdGVkXG4iCittc2dzdHIgIiVzOiBUcmlnZ2VyLURhdGVudmVyemVpY2huaXMgbm9jaCBuaWNodCBhbmdlbGVndFxuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjE1NgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogdHJpZ2dlciByZWNvcmRzIG5vdCB5ZXQgaW4gZXhpc3RlbmNlXG4iCittc2dzdHIgIiVzOiBUcmlnZ2VyLURhdGVuc8OkdHplIGV4aXN0aWVyZW4gbm9jaCBuaWNodFxuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIwNQorbXNnaWQgInRha2VzIG9uZSBhcmd1bWVudCwgdGhlIHRyaWdnZXIgbmFtZSIKK21zZ3N0ciAiYWt6ZXB0aWVydCBudXIgZWluIEFyZ3VtZW50LCBkZW4gTmFtZW4gZGVzIFRyaWdnZXJzIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIxMAorbXNnaWQgIm11c3QgYmUgY2FsbGVkIGZyb20gYSBtYWludGFpbmVyIHNjcmlwdCAob3Igd2l0aCBhIC0tYnktcGFja2FnZSBvcHRpb24pIgorbXNnc3RyICIiCisiTXVzcyB2b24gZWluZW0gQmV0cmV1ZXJza3JpcHQgYXVmZ2VydWZlbiB3ZXJkZW4gKG9kZXIgbWl0IGVpbmVyIC0tYnktcGFja2FnZSAiCisiT3B0aW9uKSIKKworIzogc3JjL3RyaWdjbWQuYzoyMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWxsZWdhbCBhd2FpdGVkIHBhY2thZ2UgbmFtZSAnJS4yNTBzJzogJS4yNTBzIgorbXNnc3RyICJ1bmfDvGx0aWdlciBOYW1lIGRlcyBlcndhcnRldGVuIFBha2V0cyDCuyUuMjUwc8KrOiAlLjI1MHMiCisKKyM6IHNyYy90cmlnY21kLmM6MjIxCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgdHJpZ2dlciBuYW1lIGAlLjI1MHMnOiAlLjI1MHMiCittc2dzdHIgInVuZ8O8bHRpZ2VyIFRyaWdnZXJuYW1lIMK7JS4yNTBzwqs6ICUuMjUwcyIKKworIzogc3JjL3RyaWdwcm9jLmM6MjUwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogY3ljbGUgZm91bmQgd2hpbGUgcHJvY2Vzc2luZyB0cmlnZ2VyczpcbiIKKyIgY2hhaW4gb2YgcGFja2FnZXMgd2hvc2UgdHJpZ2dlcnMgYXJlIG9yIG1heSBiZSByZXNwb25zaWJsZTpcbiIKK21zZ3N0ciAiIgorIiVzOiBaeWtsdXMgYmVpIGRlciBUcmlnZ2VydmVyYXJiZWl0dW5nIGdlZnVuZGVuOlxuIgorIiBLZXR0ZSBkZXIgUGFrZXRlLCBkZXJlbiBUcmlnZ2VyIHZlcmFudHdvcnRsaWNoIHNpbmQgb2RlciBzZWluIGvDtm5udGVuOlxuIgorCisjOiBzcmMvdHJpZ3Byb2MuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiBwYWNrYWdlcycgcGVuZGluZyB0cmlnZ2VycyB3aGljaCBhcmUgb3IgbWF5IGJlIHVucmVzb2x2YWJsZTpcbiIKK21zZ3N0ciAiIgorIlxuIgorIiBhbmjDpG5naWdlIFRyaWdnZXIgdm9uIFBha2V0ZW4sIGRpZSBuaWNodCBhdWZsw7ZzYmFyIHNpbmQgb2RlciBzZWluIGvDtm5udGVuOlxuIgorCisjOiBzcmMvdHJpZ3Byb2MuYzoyODEKK21zZ2lkICJ0cmlnZ2VycyBsb29waW5nLCBhYmFuZG9uZWQiCittc2dzdHIgIlRyaWdnZXIgYmlsZGVuIGVpbmUgU2NobGVpZmUsIGF1ZmdlZ2ViZW4iCisKKyM6IHNyYy90cmlncHJvYy5jOjMxMgorIywgYy1mb3JtYXQKK21zZ2lkICJQcm9jZXNzaW5nIHRyaWdnZXJzIGZvciAlcyAuLi5cbiIKK21zZ3N0ciAiVHJpZ2dlciBmw7xyICVzIHdlcmRlbiB2ZXJhcmJlaXRldCAuLi5cbiIKKworIzogc3JjL3VwZGF0ZS5jOjUyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgZXhhY3RseSBvbmUgUGFja2FnZXMtZmlsZSBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyBiZW7DtnRpZ3QgZ2VuYXUgZWluZSBQYWNrYWdlcy1EYXRlaSBhbHMgQXJndW1lbnQiCisKKyM6IHNyYy91cGRhdGUuYzo2MgorbXNnaWQgInVuYWJsZSB0byBhY2Nlc3MgZHBrZyBzdGF0dXMgYXJlYSBmb3IgYnVsayBhdmFpbGFibGUgdXBkYXRlIgorbXNnc3RyICIiCisiRsO8ciBlaW5lIGdyb8OfZSBWZXJmw7xnYmFya2VpdHMtQWt0dWFsaXNpZXJ1bmcga2FubiBuaWNodCBhdWYgZGVuXG4iCisiZHBrZy1TdGF0dXMtQmVyZWljaCB6dWdlZ3JpZmZlbiB3ZXJkZW4iCisKKyM6IHNyYy91cGRhdGUuYzo2NAorbXNnaWQgImJ1bGsgYXZhaWxhYmxlIHVwZGF0ZSByZXF1aXJlcyB3cml0ZSBhY2Nlc3MgdG8gZHBrZyBzdGF0dXMgYXJlYSIKK21zZ3N0ciAiIgorIkdyb8OfZSBWZXJmw7xnYmFya2VpdHMtQWt0dWFsaXNpZXJ1bmcgYmVuw7Z0aWd0IFNjaHJlaWJ6dWdyaWZmIGF1ZiBkZW4gZHBrZy0iCisiU3RhdHVzLUJlcmVpY2giCisKKyM6IHNyYy91cGRhdGUuYzo3MQorIywgYy1mb3JtYXQKK21zZ2lkICJSZXBsYWNpbmcgYXZhaWxhYmxlIHBhY2thZ2VzIGluZm8sIHVzaW5nICVzLlxuIgorbXNnc3RyICIiCisiSW5mb3JtYXRpb25lbiDDvGJlciB2ZXJmw7xnYmFyZSBQYWtldGUgd2VyZGVuIHVudGVyIFZlcndlbmR1bmcgdm9uICVzICIKKyJlcnNldHp0LlxuIgorCisjOiBzcmMvdXBkYXRlLmM6NzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiVXBkYXRpbmcgYXZhaWxhYmxlIHBhY2thZ2VzIGluZm8sIHVzaW5nICVzLlxuIgorbXNnc3RyICIiCisiSW5mb3JtYXRpb25lbiDDvGJlciB2ZXJmw7xnYmFyZSBQYWtldGUgd2VyZGVuIHVudGVyIFZlcndlbmR1bmcgdm9uICVzICIKKyJha3R1YWxpc2llcnQuXG4iCisKKyM6IHNyYy91cGRhdGUuYzoxMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW5mb3JtYXRpb24gYWJvdXQgJWQgcGFja2FnZSB3YXMgdXBkYXRlZC5cbiIKK21zZ2lkX3BsdXJhbCAiSW5mb3JtYXRpb24gYWJvdXQgJWQgcGFja2FnZXMgd2FzIHVwZGF0ZWQuXG4iCittc2dzdHJbMF0gIkluZm9ybWF0aW9uZW4gw7xiZXIgJWQgUGFrZXQgd3VyZGVuIGFrdHVhbGlzaWVydC5cbiIKK21zZ3N0clsxXSAiSW5mb3JtYXRpb25lbiDDvGJlciAlZCBQYWtldGUgd3VyZGVuIGFrdHVhbGlzaWVydC5cbiIKKworIzogc3JjL3VwZGF0ZS5jOjExNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisib2Jzb2xldGUgJy0tJXMnIG9wdGlvbiwgdW5hdmFpbGFibGUgcGFja2FnZXMgYXJlIGF1dG9tYXRpY2FsbHkgY2xlYW5lZCB1cC4iCittc2dzdHIgIiIKKyJ2ZXJhbHRldGUgT3B0aW9uIMK7LS0lc8KrLCBuaWNodCB2ZXJmw7xnYmFyZSBQYWtldGUgd2VyZGVuIGF1dG9tYXRpc2NoICIKKyJhdWZnZXLDpHVtdC4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgbmFtZSAnJS41MHMuLi4nIGlzIHRvbyBsb25nIgorbXNnc3RyICJEYXRlaW5hbWUgwrslLjUwcy4uLsKrIGlzdCB6dSBsYW5nIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjEyOQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBmaWxlIG5hbWUgJyUuMjUwcyciCittc2dzdHIgIkRhdGVpbmFtZSDCuyUuMjUwc8KrIGthbm4gbmljaHQgbWl0IHN0YXQgYWJnZWZyYWd0IHdlcmRlbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoxODkKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBjb250cm9sIGRpcmVjdG9yeSIKK21zZ3N0ciAiQ29udHJvbC1WZXJ6ZWljaG5pcyBrYW5uIG5pY2h0IG1pdCBzdGF0IGFiZ2VmcmFndCB3ZXJkZW4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTkxCittc2dpZCAiY29udHJvbCBkaXJlY3RvcnkgaXMgbm90IGEgZGlyZWN0b3J5IgorbXNnc3RyICJDb250cm9sLVZlcnplaWNobmlzIGlzdCBrZWluIFZlcnplaWNobmlzIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjE5MworIywgYy1mb3JtYXQKK21zZ2lkICJjb250cm9sIGRpcmVjdG9yeSBoYXMgYmFkIHBlcm1pc3Npb25zICUwM2xvIChtdXN0IGJlID49MDc1NSBhbmQgPD0wNzc1KSIKK21zZ3N0ciAiIgorIkNvbnRyb2wtVmVyemVpY2huaXMgaGF0IGZhbHNjaGUgWnVncmlmZnNyZWNodGUgJTAzbG8gKG11c3MgPj0wNzU1IHVuZCA8PTA3NzUgIgorInNlaW4pIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjIwNAorIywgYy1mb3JtYXQKK21zZ2lkICJtYWludGFpbmVyIHNjcmlwdCBgJS41MHMnIGlzIG5vdCBhIHBsYWluIGZpbGUgb3Igc3ltbGluayIKK21zZ3N0ciAiIgorIkJldHJldWVyc2tyaXB0IMK7JS41MHPCqyBpc3Qga2VpbmUgZ2V3w7ZobmxpY2hlIERhdGVpIG9kZXIgc3ltYm9saXNjaGVyIExpbmsiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjA3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJtYWludGFpbmVyIHNjcmlwdCBgJS41MHMnIGhhcyBiYWQgcGVybWlzc2lvbnMgJTAzbG8gKG11c3QgYmUgPj0wNTU1IGFuZCAiCisiPD0wNzc1KSIKK21zZ3N0ciAiIgorIkJldHJldWVyc2tyaXB0IMK7JS41MHPCqyBoYXQgZmFsc2NoZSBadWdyaWZmc3JlY2h0ZSAlMDNsbyAobXVzcyA+PTA1NTUgdW5kICIKKyI8PTA3NzUgc2VpbikiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjExCisjLCBjLWZvcm1hdAorbXNnaWQgIm1haW50YWluZXIgc2NyaXB0IGAlLjUwcycgaXMgbm90IHN0YXR0YWJsZSIKK21zZ3N0ciAiQXVmIEJldHJldWVyc2tyaXB0IMK7JS41MHPCqyBrYW5uIGtlaW4gc3RhdCBkdXJjaGdlZsO8aHJ0IHdlcmRlbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyMzcKK21zZ2lkICJlcnJvciBvcGVuaW5nIGNvbmZmaWxlcyBmaWxlIgorbXNnc3RyICJGZWhsZXIgYmVpbSDDlmZmbmVuIGRlciBjb25mZmlsZXMtRGF0ZWkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjQ2Cittc2dpZCAiZW1wdHkgc3RyaW5nIGZyb20gZmdldHMgcmVhZGluZyBjb25mZmlsZXMiCittc2dzdHIgImxlZXJlIFplaWNoZW5rZXR0ZSB2b24gZmdldHMgYmVpbSBMZXNlbiBhdXMgY29uZmZpbGVzIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI1MQorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBuYW1lICclLjUwcy4uLicgaXMgdG9vIGxvbmcsIG9yIG1pc3NpbmcgZmluYWwgbmV3bGluZSIKK21zZ3N0ciAiQ29uZmZpbGUtTmFtZSDCuyUuNTBzLi4uwqsgaXN0IHp1IGxhbmcgb2RlciBaZWlsZW52b3JzY2h1YiBhbSBFbmRlIGZlaGx0IgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI2NAorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBmaWxlbmFtZSAnJXMnIGNvbnRhaW5zIHRyYWlsaW5nIHdoaXRlIHNwYWNlcyIKK21zZ3N0ciAiQ29uZmZpbGUtRGF0ZWluYW1lIMK7JXPCqyBlbnRow6RsdCBMZWVyemVpY2hlbiBhbSBFbmRlIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI2NgorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBgJS4yNTBzJyBkb2VzIG5vdCBhcHBlYXIgaW4gcGFja2FnZSIKK21zZ3N0ciAiQ29uZmZpbGUgwrslLjI1MHPCqyBrb21tdCBuaWNodCBpbSBQYWtldCB2b3IiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjY4CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIGAlLjI1MHMnIGlzIG5vdCBzdGF0dGFibGUiCittc2dzdHIgIkF1ZiBDb25mZmlsZSDCuyUuMjUwc8KrIGthbm4ga2VpbiBzdGF0IGR1cmNoZ2Vmw7xocnQgd2VyZGVuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI3MAorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSAnJXMnIGlzIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgIkNvbmZmaWxlIMK7JXPCqyBpc3Qga2VpbmUgZ2V3w7ZobmxpY2hlIERhdGVpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI3NAorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBuYW1lICclcycgaXMgZHVwbGljYXRlZCIKK21zZ3N0ciAiQ29uZmZpbGUtTmFtZSDCuyVzwqsgaXN0IG1laHJmYWNoIHZvcmhhbmRlbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyODcKK21zZ2lkICJlcnJvciByZWFkaW5nIGNvbmZmaWxlcyBmaWxlIgorbXNnc3RyICJGZWhsZXIgYmVpbSBMZXNlbiBkZXIgY29uZmZpbGVzLURhdGVpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjMzOQorbXNnaWQgInBhY2thZ2UgbmFtZSBoYXMgY2hhcmFjdGVycyB0aGF0IGFyZW4ndCBsb3dlcmNhc2UgYWxwaGFudW1zIG9yIGAtKy4nIgorbXNnc3RyICIiCisiUGFrZXRuYW1lIGhhdCBaZWljaGVuLCBkaWUga2VpbmUgS2xlaW5idWNoc3RhYmVuLCBaaWZmZXJuIG9kZXIgwrstKy7CqyBzaW5kIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjM0MQorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGNvbnRhaW5zIHVzZXItZGVmaW5lZCBQcmlvcml0eSB2YWx1ZSAnJXMnIgorbXNnc3RyICLCuyVzwqsgZW50aMOkbHQgYmVudXR6ZXJkZWZpbmllcnRlbiBQcmlvcml0w6R0c3dlcnQgwrslc8KrIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjM0NworIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGNvbnRhaW5zIHVzZXItZGVmaW5lZCBmaWVsZCAnJXMnIgorbXNnc3RyICLCuyVzwqsgZW50aMOkbHQgYmVudXR6ZXJkZWZpbmllcnRlcyBGZWxkIMK7JXPCqyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzozNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgJWQgd2FybmluZyBhYm91dCB0aGUgY29udHJvbCBmaWxlKHMpXG4iCittc2dpZF9wbHVyYWwgImlnbm9yaW5nICVkIHdhcm5pbmdzIGFib3V0IHRoZSBjb250cm9sIGZpbGUocylcbiIKK21zZ3N0clswXSAiJWQgV2FybnVuZyB3ZWdlbiBkZXIgY29udHJvbC1EYXRlaShlbikgd2lyZCBpZ25vcmllcnRcbiIKK21zZ3N0clsxXSAiJWQgV2FybnVuZ2VuIHdlZ2VuIGRlciBjb250cm9sLURhdGVpKGVuKSB3ZXJkZW4gaWdub3JpZXJ0XG4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDAzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDI5CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQzNgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGEgPGRpcmVjdG9yeT4gYXJndW1lbnQiCittc2dzdHIgIi0tJXMgYmVuw7Z0aWd0IGVpbiBWZXJ6ZWljaG5pcyBhbHMgQXJndW1lbnQiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDA5Cittc2dpZCAiLS1idWlsZCB0YWtlcyBhdCBtb3N0IHR3byBhcmd1bWVudHMiCittc2dzdHIgIi0tYnVpbGQgYWt6ZXB0aWVydCBtYXhpbWFsIHp3ZWkgQXJndW1lbnRlIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQxMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hlY2sgZm9yIGV4aXN0ZW5jZSBvZiBhcmNoaXZlIGAlLjI1MHMnIgorbXNnc3RyICJFeGlzdGVueiBkZXMgQXJjaGl2cyDCuyUuMjUwc8KrIGthbm4gbmljaHQgw7xiZXJwcsO8ZnQgd2VyZGVuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQzMAorbXNnaWQgInRhcmdldCBpcyBkaXJlY3RvcnkgLSBjYW5ub3Qgc2tpcCBjb250cm9sIGZpbGUgY2hlY2siCittc2dzdHIgIiIKKyJaaWVsIGlzdCBlaW4gVmVyemVpY2huaXMgLSBrYW5uIENvbnRyb2wtRGF0ZWktw5xiZXJwcsO8ZnVuZyBuaWNodCDDvGJlcmdlaGVuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQzMQorbXNnaWQgIm5vdCBjaGVja2luZyBjb250ZW50cyBvZiBjb250cm9sIGFyZWEuIgorbXNnc3RyICJJbmhhbHRlIGRlcyBDb250cm9sLUJlcmVpY2hlcyB3ZXJkZW4gbmljaHQgw7xiZXJwcsO8ZnQuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQzMgorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnLWRlYjogYnVpbGRpbmcgYW4gdW5rbm93biBwYWNrYWdlIGluICclcycuXG4iCittc2dzdHIgImRwa2ctZGViOiBFaW4gdW5iZWthbm50ZXMgUGFrZXQgd2lyZCBpbiDCuyVzwqsgZ2ViYXV0LlxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQzOQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnLWRlYjogYnVpbGRpbmcgcGFja2FnZSBgJXMnIGluIGAlcycuXG4iCittc2dzdHIgImRwa2ctZGViOiBQYWtldCDCuyVzwqsgd2lyZCBpbiDCuyVzwqsgZ2ViYXV0LlxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ2NyBkcGtnLWRlYi9idWlsZC5jOjUyMQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gbWFrZSB0ZW1wb3JhcnkgZmlsZSAoJXMpIgorbXNnc3RyICJFcnN0ZWxsZW4gdm9uIHRlbXBvcsOkcmVyIERhdGVpIGZlaGxnZXNjaGxhZ2VuICglcykiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDY3IGRwa2ctZGViL2J1aWxkLmM6NDcwIGRwa2ctZGViL2J1aWxkLmM6NDc3CisjOiBkcGtnLWRlYi9idWlsZC5jOjQ4NSBkcGtnLWRlYi9idWlsZC5jOjQ5NCBkcGtnLWRlYi9idWlsZC5jOjQ5OQorbXNnaWQgImNvbnRyb2wgbWVtYmVyIgorbXNnc3RyICJjb250cm9sLUVsZW1lbnQiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDcwIGRwa2ctZGViL2J1aWxkLmM6NTI0CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB1bmxpbmsgdGVtcG9yYXJ5IGZpbGUgKCVzKSwgJXMiCittc2dzdHIgInVubGluayB2b24gdGVtcG9yw6RyZXIgRGF0ZWkgZmVobGdlc2NobGFnZW4gKCVzKSwgJXMiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDg1IGRwa2ctZGViL2J1aWxkLmM6NTkzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdGVtcG9yYXJ5IGZpbGUgKCVzKSIKK21zZ3N0ciAiWnVyw7xja3NldHplbiB2b24gdGVtcG9yw6RyZXIgRGF0ZWkgZmVobGdlc2NobGFnZW4gKCVzKSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0OTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHN0YXQgdGVtcG9yYXJ5IGZpbGUgKCVzKSIKK21zZ3N0ciAiQWJmcmFnZW4gdm9uIHRlbXBvcsOkcmVyIERhdGVpICglcykgbWl0IGZzdGF0IGZlaGxnZXNjaGxhZ2VuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ5OAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciB3cml0aW5nIGAlcyciCittc2dzdHIgIkZlaGxlciBiZWltIFNjaHJlaWJlbiB2b24gwrslc8KrIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjUyMSBkcGtnLWRlYi9idWlsZC5jOjUyNCBkcGtnLWRlYi9idWlsZC5jOjU0NgorIzogZHBrZy1kZWIvYnVpbGQuYzo1NzIgZHBrZy1kZWIvYnVpbGQuYzo1ODAgZHBrZy1kZWIvYnVpbGQuYzo1OTMKK21zZ2lkICJkYXRhIG1lbWJlciIKK21zZ3N0ciAiZGF0YS1FbGVtZW50IgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjU3MSBkcGtnLWRlYi9idWlsZC5jOjU4MAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgZmlsZW5hbWUgdG8gdGFyIHBpcGUgKCVzKSIKK21zZ3N0ciAiU2NocmVpYmVuIGVpbmVzIERhdGVpbmFtZW5zIGluIHRhci1QaXBlIGZlaGxnZXNjaGxhZ2VuICglcykiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTg0Cittc2dpZCAiPGNvbXByZXNzPiBmcm9tIHRhciAtY2YiCittc2dzdHIgIjxLb21wcmVzc2lvbj4gdm9uIHRhciAtY2YiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzo2MSBkcGtnLWRlYi9leHRyYWN0LmM6NjMKK21zZ2lkICJzaGVsbCBjb21tYW5kIHRvIG1vdmUgZmlsZXMiCittc2dzdHIgIlNoZWxsYmVmZWhsLCB1bSBEYXRlaWVuIHp1IHZlcnNjaGllYmVuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6NzAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgZmlsZSBpbiAlcyBpbiAlLjI1NXMiCittc2dzdHIgInVuZXJ3YXJ0ZXRlcyBEYXRlaWVuZGUgaW4gJXMgaW4gJS4yNTVzIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcmVhZGluZyAlcyBmcm9tIGZpbGUgJS4yNTVzIgorbXNnc3RyICJGZWhsZXIgYmVpbSBMZXNlbiB2b24gJXMgYXVzIERhdGVpICUuMjU1cyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjEyNQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCBhcmNoaXZlIGAlLjI1NXMnIgorbXNnc3RyICJMZXNlbiB2b24gQXJjaGl2IMK7JS4yNTVzwqsgZmVobGdlc2NobGFnZW4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxMjcKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgYXJjaGl2ZSIKK21zZ3N0ciAiQWJmcmFnZW4gZGVzIEFyY2hpdnMgbWl0IGZzdGF0IGZlaGxnZXNjaGxhZ2VuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTMxCittc2dpZCAiYXJjaGl2ZSBtYWdpYyB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAibWFnaXNjaGUgQXJjaGl2LVZlcnNpb25zbnVtbWVyIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTQzCittc2dpZCAiYXJjaGl2ZSBtZW1iZXIgaGVhZGVyIgorbXNnc3RyICJBcmNoaXZlbGVtZW50LUtvcGZ6ZWlsZSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE0OAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgYXJjaGl2ZSBoZWFkZXIgbWFnaWMiCittc2dzdHIgIkRhdGVpIMK7JS4yNTBzwqsgaXN0IGRlZmVrdCAtIGZhbHNjaGUgbWFnaXNjaGUgQXJjaGl2LUtvcGZ6ZWlsZSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE1NQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIG5vdCBhIGRlYmlhbiBiaW5hcnkgYXJjaGl2ZSAodHJ5IGRwa2ctc3BsaXQ/KSIKK21zZ3N0ciAiRGF0ZWkgwrslLjI1MHPCqyBpc3Qga2VpbiBEZWJpYW4tQmluw6RyYXJjaGl2IChkcGtnLXNwbGl0IHByb2JpZXJlbj8pIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTU5Cittc2dpZCAiYXJjaGl2ZSBpbmZvcm1hdGlvbiBoZWFkZXIgbWVtYmVyIgorbXNnc3RyICJBcmNoaXYtSW5mb3JtYXRpb25za29wZnplaWxlbi1FbGVtZW50IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTYyCittc2dpZCAiYXJjaGl2ZSBoYXMgbm8gbmV3bGluZXMgaW4gaGVhZGVyIgorbXNnc3RyICJBcmNoaXYgZW50aMOkbHQga2VpbmUgWmVpbGVudm9yc2Now7xiZSBpbiBLb3BmemVpbGVuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTY1Cittc2dpZCAiYXJjaGl2ZSBoYXMgbm8gZG90IGluIHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICJBcmNoaXYgZW50aMOkbHQga2VpbmVuIFB1bmt0IGluIGRlciBWZXJzaW9uc251bW1lciIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE2OAorIywgYy1mb3JtYXQKK21zZ2lkICJhcmNoaXZlIHZlcnNpb24gJS4yNTBzIG5vdCB1bmRlcnN0b29kLCBnZXQgbmV3ZXIgZHBrZy1kZWIiCittc2dzdHIgIiIKKyJBcmNoaXYtVmVyc2lvbiAlLjI1MHMgbmljaHQgdmVyc3RhbmRlbiwgaW5zdGFsbGllcmVuIFNpZSBlaW4gbmV1ZXJlcyBkcGtnLWRlYiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE3OSBkcGtnLWRlYi9leHRyYWN0LmM6MjA1CisjLCBjLWZvcm1hdAorbXNnaWQgInNraXBwZWQgYXJjaGl2ZSBtZW1iZXIgZGF0YSBmcm9tICVzIgorbXNnc3RyICJBcmNoaXZlbGVtZW50ZGF0ZW4gdm9uICVzIGF1c2dlbGFzc2VuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTk0CisjLCBjLWZvcm1hdAorbXNnaWQgImFyY2hpdmUgJyUuMjUwcycgY29udGFpbnMgbm90IHVuZGVyc3Rvb2QgZGF0YSBtZW1iZXIgJS4qcywgZ2l2aW5nIHVwIgorbXNnc3RyICJBcmNoaXYgwrslLjI1MHPCqyBlbnRow6RsdCBuaWNodCB2ZXJzdGFuZGVuZSBEYXRlbmVsZW1lbnRlICUuKnMsIEFiYnJ1Y2giCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxOTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiYXJjaGl2ZSAnJS4yNTBzJyBjb250YWlucyB0d28gY29udHJvbCBtZW1iZXJzLCBnaXZpbmcgdXAiCittc2dzdHIgIkFyY2hpdiDCuyUuMjUwc8KrIGVudGjDpGx0IHp3ZWkgQ29udHJvbC1FbGVtZW50ZSwgQWJicnVjaCIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIxNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiIG5ldyBkZWJpYW4gcGFja2FnZSwgdmVyc2lvbiAlcy5cbiIKKyIgc2l6ZSAlamQgYnl0ZXM6IGNvbnRyb2wgYXJjaGl2ZT0gJWpkIGJ5dGVzLlxuIgorbXNnc3RyICIiCisiIG5ldWVzIERlYmlhbi1QYWtldCwgVmVyc2lvbiAlcy5cbiIKKyIgR3LDtsOfZSAlamQgQnl0ZTogY29udHJvbC1BcmNoaXY9ICVqZCBCeXRlLlxuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjMyCittc2dpZCAiYXJjaGl2ZSBjb250cm9sIG1lbWJlciBzaXplIgorbXNnc3RyICJBcmNoaXYtY29udHJvbC1FbGVtZW50Z3LDtsOfZSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIzNQorIywgYy1mb3JtYXQKK21zZ2lkICJhcmNoaXZlIGhhcyBtYWxmb3JtYXR0ZWQgY29udHJvbCBtZW1iZXIgc2l6ZSAnJXMnIgorbXNnc3RyICJBcmNoaXYgZW50aMOkbHQgZmFsc2NoIGZvcm1hdGllcnRlIGNvbnRyb2wtRWxlbWVudGdyw7bDn2Ugwrslc8KrIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjQyCisjLCBjLWZvcm1hdAorbXNnaWQgInNraXBwZWQgYXJjaGl2ZSBjb250cm9sIG1lbWJlciBkYXRhIGZyb20gJXMiCittc2dzdHIgIkFyY2hpdi1jb250cm9sLUVsZW1lbnRkYXRlbiB2b24gJXMgYXVzZ2VsYXNzZW4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiBvbGQgZGViaWFuIHBhY2thZ2UsIHZlcnNpb24gJXMuXG4iCisiIHNpemUgJWpkIGJ5dGVzOiBjb250cm9sIGFyY2hpdmU9ICVqZCwgbWFpbiBhcmNoaXZlPSAlamQuXG4iCittc2dzdHIgIiIKKyIgYWx0ZXMgRGViaWFuLVBha2V0LCBWZXJzaW9uICVzLlxuIgorIiBHcsO2w59lICVqZCBCeXRlOiBjb250cm9sLUFyY2hpdj0gJWpkLCBIYXVwdGFyY2hpdj0gJWpkLlxuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjU1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnLWRlYjogZmlsZSBsb29rcyBsaWtlIGl0IG1pZ2h0IGJlIGFuIGFyY2hpdmUgd2hpY2ggaGFzIGJlZW5cbiIKKyJkcGtnLWRlYjogICAgY29ycnVwdGVkIGJ5IGJlaW5nIGRvd25sb2FkZWQgaW4gQVNDSUkgbW9kZVxuIgorbXNnc3RyICIiCisiZHBrZy1kZWI6IERhdGVpIGvDtm5udGUgZWluIEFyY2hpdiBzZWluLCBkYXNcbiIKKyJkcGtnLWRlYjogICAgZHVyY2ggZWluZW4gRG93bmxvYWQgaW0gQVNDSUktTW9kdXMgYmVzY2jDpGRpZ3Qgd3VyZGVcbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI1OQorIywgYy1mb3JtYXQKK21zZ2lkICJgJS4yNTVzJyBpcyBub3QgYSBkZWJpYW4gZm9ybWF0IGFyY2hpdmUiCittc2dzdHIgIsK7JS4yNTVzwqsgaXN0IGtlaW4gQXJjaGl2IGltIERlYmlhbi1Gb3JtYXQiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNjYKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgdG8gcGlwZSBpbiBjb3B5IgorbXNnc3RyICJTY2hyZWliZW4gaW4gZGllIFBpcGUgYmVpbSBLb3BpZXJlbiBmZWhsZ2VzY2hsYWdlbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI2OAorbXNnaWQgImZhaWxlZCB0byBjbG9zZSBwaXBlIGluIGNvcHkiCittc2dzdHIgIlNjaGxpZcOfZW4gZGVyIFBpcGUgYmVpbSBLb3BpZXJlbiBmZWhsZ2VzY2hsYWdlbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI4NAorbXNnaWQgImRhdGEiCittc2dzdHIgImRhdGEiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozMDcKK21zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gZGlyZWN0b3J5IgorbXNnc3RyICJXZWNoc2VsIGluIGRhcyBWZXJ6ZWljaG5pcyBmZWhsZ2VzY2hsYWdlbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMxMAorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgZGlyZWN0b3J5IgorbXNnc3RyICJBbmxlZ2VuIGVpbmVzIFZlcnplaWNobmlzc2VzIGZlaGxnZXNjaGxhZ2VuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzEyCittc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIGRpcmVjdG9yeSBhZnRlciBjcmVhdGluZyBpdCIKK21zZ3N0ciAiV2VjaHNlbCBpbiBkYXMgVmVyemVpY2huaXMgbmFjaCBkZXNzZW4gRXJ6ZXVndW5nIGZlaGxnZXNjaGxhZ2VuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzIzCittc2dpZCAiPGRlY29tcHJlc3M+IgorbXNnc3RyICI8RGVrb21wcmVzc2lvbj4iCisKKyMgQ0hFQ0tNRQorIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMyNQorbXNnaWQgInBhc3RlIgorbXNnc3RyICJlaW5mw7xnZW4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozNDIgZHBrZy1kZWIvZXh0cmFjdC5jOjM2MyBkcGtnLWRlYi9leHRyYWN0LmM6NDAyCisjOiBkcGtnLWRlYi9pbmZvLmM6NzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhIC5kZWIgZmlsZW5hbWUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMgYmVuw7Z0aWd0IGVpbmVuIC5kZWItRGF0ZWluYW1lbiBhbHMgQXJndW1lbnQiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozNDcgZHBrZy1kZWIvZXh0cmFjdC5jOjQwNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiLS0lcyBuZWVkcyBhIHRhcmdldCBkaXJlY3RvcnkuXG4iCisiUGVyaGFwcyB5b3Ugc2hvdWxkIGJlIHVzaW5nIGRwa2cgLS1pbnN0YWxsID8iCittc2dzdHIgIiIKKyItLSVzIGJlbsO2dGlndCBlaW4gWmllbHZlcnplaWNobmlzLlxuIgorIlZpZWxsZWljaHQgc29sbHRlbiBTaWUgZHBrZyAtLWluc3RhbGwgdmVyd2VuZGVuPyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjM1MCBkcGtnLWRlYi9leHRyYWN0LmM6NDEwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgYXQgbW9zdCB0d28gYXJndW1lbnRzICguZGViIGFuZCBkaXJlY3RvcnkpIgorbXNnc3RyICItLSVzIGFremVwdGllcnQgbWF4aW1hbCB6d2VpIEFyZ3VtZW50ZSAoLmRlYiB1bmQgVmVyemVpY2huaXMpIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzY1CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgb25seSBvbmUgYXJndW1lbnQgKC5kZWIgZmlsZW5hbWUpIgorbXNnc3RyICItLSVzIGFremVwdGllcnQgbnVyIGVpbiBBcmd1bWVudCAoLmRlYi1EYXRlaW5hbWUpIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6NjMKK21zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gYC8nIGZvciBjbGVhbnVwIgorbXNnc3RyICJXZWNoc2VsIG5hY2ggwrsvwqsgenVtIEF1ZnLDpHVtZW4gZmVobGdlc2NobGFnZW4iCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29udHJvbCBmaWxlICclcyciCittc2dzdHIgImNvbnRyb2wtRGF0ZWkgwrslc8KrIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTEwCisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2ctZGViOiBgJS4yNTVzJyBjb250YWlucyBubyBjb250cm9sIGNvbXBvbmVudCBgJS4yNTVzJ1xuIgorbXNnc3RyICJkcGtnLWRlYjogwrslLjI1NXPCqyBlbnRow6RsdCBrZWluZSBjb250cm9sLUtvbXBvbmVudGUgwrslLjI1NXPCq1xuIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgIm9wZW4gY29tcG9uZW50IGAlLjI1NXMnIChpbiAlLjI1NXMpIGZhaWxlZCBpbiBhbiB1bmV4cGVjdGVkIHdheSIKK21zZ3N0ciAiIgorIsOWZmZuZW4gZGVyIEtvbXBvbmVudGUgwrslLjI1NXPCqyAoaW4gJS4yNTVzKSBpbiB1bmVyd2FydGV0ZXIgV2Vpc2UgIgorImZlaGxnZXNjaGxhZ2VuIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTIxCisjLCBjLWZvcm1hdAorbXNnaWQgIiVkIHJlcXVlc3RlZCBjb250cm9sIGNvbXBvbmVudCBpcyBtaXNzaW5nIgorbXNnaWRfcGx1cmFsICIlZCByZXF1ZXN0ZWQgY29udHJvbCBjb21wb25lbnRzIGFyZSBtaXNzaW5nIgorbXNnc3RyWzBdICIlZCBiZW7DtnRpZ3RlIGNvbnRyb2wtS29tcG9uZW50ZSBmZWhsdCIKK21zZ3N0clsxXSAiJWQgYmVuw7Z0aWd0ZSBjb250cm9sLUtvbXBvbmVudGUgZmVobGVuIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTM5IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo0MjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHNjYW4gZGlyZWN0b3J5IGAlLjI1NXMnIgorbXNnc3RyICJWZXJ6ZWljaG5pcyDCuyUuMjU1c8KrIGthbm4gbmljaHQgZHVyY2hzdWNodCB3ZXJkZW4iCisKKyM6IGRwa2ctZGViL2luZm8uYzoxNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHN0YXQgYCUuMjU1cycgKGluIGAlLjI1NXMnKSIKK21zZ3N0ciAiwrslLjI1NXPCqyBrYW5uIG5pY2h0IG1pdCBzdGF0IGFiZ2VmcmFndCB3ZXJkZW4gKGluIMK7JS4yNTVzwqspIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTUyCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBvcGVuIGAlLjI1NXMnIChpbiBgJS4yNTVzJykiCittc2dzdHIgIsK7JS4yNTVzwqsga2FubiBuaWNodCBnZcO2ZmZuZXQgd2VyZGVuIChpbiDCuyUuMjU1c8KrKSIKKworIzogZHBrZy1kZWIvaW5mby5jOjE2NyBkcGtnLWRlYi9pbmZvLmM6MTg1IGRwa2ctZGViL2luZm8uYzoxOTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgYCUuMjU1cycgKGluIGAlLjI1NXMnKSIKK21zZ3N0ciAiTGVzZW4gdm9uIMK7JS4yNTVzwqsgZmVobGdlc2NobGFnZW4gKGluIMK7JS4yNTVzwqspIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTcwCisjLCBjLWZvcm1hdAorbXNnaWQgIiAlN2pkIGJ5dGVzLCAlNWQgbGluZXMgICAlYyAgJS0yMC4xMjdzICUuMTI3c1xuIgorbXNnc3RyICIgJTdqZCBCeXRlLCAlNWQgWmVpbGVuICAgJWMgICUtMjAuMTI3cyAlLjEyN3NcbiIKKworIzogZHBrZy1kZWIvaW5mby5jOjE3NAorIywgYy1mb3JtYXQKK21zZ2lkICIgICAgIG5vdCBhIHBsYWluIGZpbGUgICAgICAgICAgJS4yNTVzXG4iCittc2dzdHIgIiAgICAga2VpbmUgZ2V3w7ZobmxpY2hlIERhdGVpICAgJS4yNTVzXG4iCisKKyM6IGRwa2ctZGViL2luZm8uYzoxODYKK21zZ2lkICIobm8gYGNvbnRyb2wnIGZpbGUgaW4gY29udHJvbCBhcmNoaXZlISlcbiIKK21zZ3N0ciAiKGtlaW5lIMK7Y29udHJvbMKrLURhdGVpIGltIGNvbnRyb2wtQXJjaGl2ISlcbiIKKworIzogZHBrZy1kZWIvaW5mby5jOjIyMgorbXNnaWQgImNvdWxkIG5vdCBvcGVuIHRoZSBgY29udHJvbCcgY29tcG9uZW50IgorbXNnc3RyICJEaWUgwrtjb250cm9swqstS29tcG9uZW50ZSBrb25udGUgbmljaHQgZ2XDtmZmbmV0IHdlcmRlbiIKKworIzogZHBrZy1kZWIvaW5mby5jOjI2MQorbXNnaWQgImZhaWxlZCBkdXJpbmcgcmVhZCBvZiBgY29udHJvbCcgY29tcG9uZW50IgorbXNnc3RyICJMZXNlbiBkZXIgwrtjb250cm9swqstS29tcG9uZW50ZSBmZWhsZ2VzY2hsYWdlbiIKKworIzogZHBrZy1kZWIvaW5mby5jOjI2MworIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nIHRoZSAnJXMnIGNvbXBvbmVudCIKK21zZ3N0ciAiRmVobGVyIGJlaW0gU2NobGllw59lbiBkZXIgS29tcG9uZW50ZSDCuyVzwqsiCisKKyM6IGRwa2ctZGViL2luZm8uYzoyNzgKK21zZ2lkICJFcnJvciBpbiBmb3JtYXQiCittc2dzdHIgIkZlaGxlciBpbSBGb3JtYXQiCisKKyM6IGRwa2ctZGViL2luZm8uYzozMjgKK21zZ2lkICItLWNvbnRlbnRzIHRha2VzIGV4YWN0bHkgb25lIGFyZ3VtZW50IgorbXNnc3RyICItLWNvbnRlbnRzIGFremVwdGllcnQgZ2VuYXUgZWluIEFyZ3VtZW50IgorCisjCisjOiBkcGtnLWRlYi9tYWluLmM6NTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuIGAlcycgcGFja2FnZSBhcmNoaXZlIGJhY2tlbmQgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiRGViaWFuIMK7JXPCqyBQYWtldGFyY2hpdi1CYWNrZW5kIFZlcnNpb24gJXMuXG4iCisKKyM6IGRwa2ctZGViL21haW4uYzo3MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtYnwtLWJ1aWxkIDxkaXJlY3Rvcnk+IFs8ZGViPl0gICBCdWlsZCBhbiBhcmNoaXZlLlxuIgorIiAgLWN8LS1jb250ZW50cyA8ZGViPiAgICAgICAgICAgICAgTGlzdCBjb250ZW50cy5cbiIKKyIgIC1JfC0taW5mbyA8ZGViPiBbPGNmaWxlPiAuLi5dICAgIFNob3cgaW5mbyB0byBzdGRvdXQuXG4iCisiICAtV3wtLXNob3cgPGRlYj4gICAgICAgICAgICAgICAgICBTaG93IGluZm9ybWF0aW9uIG9uIHBhY2thZ2UocylcbiIKKyIgIC1mfC0tZmllbGQgPGRlYj4gWzxjZmllbGQ+IC4uLl0gIFNob3cgZmllbGQocykgdG8gc3Rkb3V0LlxuIgorIiAgLWV8LS1jb250cm9sIDxkZWI+IFs8ZGlyZWN0b3J5Pl0gRXh0cmFjdCBjb250cm9sIGluZm8uXG4iCisiICAteHwtLWV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gICBFeHRyYWN0IGZpbGVzLlxuIgorIiAgLVh8LS12ZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PiAgRXh0cmFjdCAmIGxpc3QgZmlsZXMuXG4iCisiICAtUnwtLXJhdy1leHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFeHRyYWN0IGNvbnRyb2wgaW5mbyBhbmQgZmlsZXMuXG4iCisiICAtLWZzeXMtdGFyZmlsZSA8ZGViPiAgICAgICAgICAgICBPdXRwdXQgZmlsZXN5c3RlbSB0YXJmaWxlLlxuIgorIlxuIgorbXNnc3RyICIiCisiQmVmZWhsZTpcbiIKKyIgIC1ifC0tYnVpbGQgPFZlcnplaWNobmlzPiBbPERlYj5dIEFyY2hpdiBiYXVlbi5cbiIKKyIgIC1jfC0tY29udGVudHMgPERlYj4gICAgICAgICAgICAgIEluaGFsdCBhdWZsaXN0ZW4uXG4iCisiICAtSXwtLWluZm8gPERlYj4gWzxDRGF0ZWk+IC4uLl0gICBJbmZvIGF1ZiBTdGFuZGFyZGF1c2dhYmUgYW56ZWlnZW4uXG4iCisiICAtV3wtLXNob3cgPERlYj4gICAgICAgICAgICAgICAgICBJbmZvcm1hdGlvbmVuIMO8YmVyIFBha2V0KGUpIGFuemVpZ2VuLlxuIgorIiAgLWZ8LS1maWVsZCA8RGViPiBbPENGZWxkPiAuLi5dICAgRmVsZChlcikgYXVmIFN0YW5kYXJkYXVzZ2FiZSBhbnplaWdlbi5cbiIKKyIgIC1lfC0tY29udHJvbCA8RGViPiBbPFZlcnouPl0gICAgIENvbnRyb2wtSW5mbyBleHRyYWhpZXJlbi5cbiIKKyIgIC14fC0tZXh0cmFjdCA8RGViPiA8VmVyei4+ICAgICAgIERhdGVpZW4gZXh0cmFoaWVyZW4uXG4iCisiICAtWHwtLXZleHRyYWN0IDxEZWI+IDxWZXJ6Lj4gICAgICBEYXRlaWVuIGV4dHJhaGllcmVuIHVuZCBhdWZsaXN0ZW4uXG4iCisiICAtUnwtLXJhdy1leHRyYWN0IDxEZWI+IDxWZXJ6Lj4gICBDb250cm9sLUluZm8gdW5kIERhdGVpZW4gZXh0cmFoaWVyZW4uXG4iCisiICAtLWZzeXMtdGFyZmlsZSA8RGViPiAgICAgICAgICAgICBEYXRlaXN5c3RlbS1UYXJkYXRlaSBhdXNnZWJlbi5cbiIKKyJcbiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjkzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyI8ZGViPiBpcyB0aGUgZmlsZW5hbWUgb2YgYSBEZWJpYW4gZm9ybWF0IGFyY2hpdmUuXG4iCisiPGNmaWxlPiBpcyB0aGUgbmFtZSBvZiBhbiBhZG1pbmlzdHJhdGl2ZSBmaWxlIGNvbXBvbmVudC5cbiIKKyI8Y2ZpZWxkPiBpcyB0aGUgbmFtZSBvZiBhIGZpZWxkIGluIHRoZSBtYWluIGBjb250cm9sJyBmaWxlLlxuIgorIlxuIgorbXNnc3RyICIiCisiPERlYj4gaXN0IGRlciBEYXRlaW5hbWUgZWluZXMgQXJjaGl2cyBpbSBEZWJpYW4tRm9ybWF0LlxuIgorIjxDRGF0ZWk+IGlzdCBkZXIgTmFtZSBlaW5lciBhZG1pbmlzdHJhdGl2ZW4gRGF0ZWlrb21wb25lbnRlLlxuIgorIjxDRmVsZD4gaXN0IGRlciBOYW1lIGVpbmVzIEZlbGRlcyBhdXMgZGVyIEhhdXB0LcK7Y29udHJvbMKrLURhdGVpLlxuIgorIlxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6OTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLXNob3dmb3JtYXQ9PGZvcm1hdD4gICAgICAgICAgICBVc2UgYWx0ZXJuYXRpdmUgZm9ybWF0IGZvciAtLXNob3cuXG4iCisiICAtdiwgLS12ZXJib3NlICAgICAgICAgICAgICAgICAgICBFbmFibGUgdmVyYm9zZSBvdXRwdXQuXG4iCisiICAtRCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbmFibGUgZGVidWdnaW5nIG91dHB1dC5cbiIKKyIgIC0tb2xkLCAtLW5ldyAgICAgICAgICAgICAgICAgICAgIFNlbGVjdCBhcmNoaXZlIGZvcm1hdC5cbiIKKyIgIC0tbm9jaGVjayAgICAgICAgICAgICAgICAgICAgICAgIFN1cHByZXNzIGNvbnRyb2wgZmlsZSBjaGVjayAoYnVpbGQgYmFkXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhY2thZ2VzKS5cbiIKKyIgIC16IyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNldCB0aGUgY29tcHJlc3Npb24gbGV2ZWwgd2hlbiBidWlsZGluZy5cbiIKKyIgIC1aPHR5cGU+ICAgICAgICAgICAgICAgICAgICAgICAgIFNldCB0aGUgY29tcHJlc3Npb24gdHlwZSB1c2VkIHdoZW4gIgorImJ1aWxkaW5nLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBbGxvd2VkIHR5cGVzOiBnemlwLCB4eiwgYnppcDIsIGx6bWEsICIKKyJub25lLlxuIgorIlxuIgorbXNnc3RyICIiCisiT3B0aW9uZW46XG4iCisiICAtLXNob3dmb3JtYXQ9PEZvcm1hdD4gICAgICAgICAgICBBbHRlcm5hdGl2ZXMgRm9ybWF0IGbDvHIgLS1zaG93ICIKKyJ2ZXJ3ZW5kZW4uXG4iCisiICAtdiwgLS12ZXJib3NlICAgICAgICAgICAgICAgICAgICBBdXNmw7xocmxpY2hlIEF1c2dhYmVuIGVpbnNjaGFsdGVuLlxuIgorIiAgLUQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRGVidWctQXVzZ2FiZW4gZWluc2NoYWx0ZW4uXG4iCisiICAtLW9sZCwgLS1uZXcgICAgICAgICAgICAgICAgICAgICBBcmNoaXYtRm9ybWF0IGF1c3fDpGhsZW4uXG4iCisiICAtLW5vY2hlY2sgICAgICAgICAgICAgICAgICAgICAgICBDb250cm9sLURhdGVpLVByw7xmdW5nIGF1c2xhc3NlblxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZmVobGVyaGFmdGUgUGFrZXRlIGJhdWVuKS5cbiIKKyIgIC16IyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIERpZSBLb21wcmltaWVydW5nc3N0w6Rya2UgYmVpbSBCYXVlbiAiCisic2V0emVuLlxuIgorIiAgLVo8dHlwZT4gICAgICAgICAgICAgICAgICAgICAgICAgRGVuIEtvbXByaW1pZXJ1bmdzdHlwIGJlaW0gQmF1ZW4gc2V0emVuLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFcmxhdWJ0ZSBXZXJ0ZTogZ3ppcCwgeHosIGJ6aXAyLCBsem1hLCAiCisibm9uZS5cbiIKKyJcbiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjEyMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiVXNlIGBkcGtnJyB0byBpbnN0YWxsIGFuZCByZW1vdmUgcGFja2FnZXMgZnJvbSB5b3VyIHN5c3RlbSwgb3JcbiIKKyJgZHNlbGVjdCcgb3IgYGFwdGl0dWRlJyBmb3IgdXNlci1mcmllbmRseSBwYWNrYWdlIG1hbmFnZW1lbnQuICBQYWNrYWdlc1xuIgorInVucGFja2VkIHVzaW5nIGBkcGtnLWRlYiAtLWV4dHJhY3QnIHdpbGwgYmUgaW5jb3JyZWN0bHkgaW5zdGFsbGVkICFcbiIKK21zZ3N0ciAiIgorIlxuIgorIlZlcndlbmRlbiBTaWUgwrtkcGtnwqssIHVtIFBha2V0ZSBhdWYgSWhyZW0gU3lzdGVtIHp1IChkZSlpbnN0YWxsaWVyZW4sIG9kZXJcbiIKKyLCu2RzZWxlY3TCqyBvZGVyIMK7YXB0aXR1ZGXCqyBmw7xyIGJlbnV0emVyZnJldW5kbGljaGVzIFBha2V0bWFuYWdlbWVudC4gUGFrZXRlLFxuIgorImRpZSBtaXQgwrtkcGtnLWRlYiAtLWV4dHJhY3TCqyBlbnRwYWNrdCB3dXJkZW4sIHdlcmRlbiBuaWNodCBrb3JyZWt0ICIKKyJpbnN0YWxsaWVydCFcbiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjEzMgorbXNnaWQgIiIKKyJUeXBlIGRwa2ctZGViIC0taGVscCBmb3IgaGVscCBhYm91dCBtYW5pcHVsYXRpbmcgKi5kZWIgZmlsZXM7XG4iCisiVHlwZSBkcGtnIC0taGVscCBmb3IgaGVscCBhYm91dCBpbnN0YWxsaW5nIGFuZCBkZWluc3RhbGxpbmcgcGFja2FnZXMuIgorbXNnc3RyICIiCisiR2ViZW4gU2llIGRwa2ctZGViIC0taGVscCBmw7xyIEhpbGZlIHp1bSBWZXLDpG5kZXJuIHZvbiAqLmRlYi1EYXRlaWVuIGVpbjtcbiIKKyJnZWJlbiBTaWUgZHBrZyAtLWhlbHAgZsO8ciBIaWxmZSB6dW0gKERlLSlJbnN0YWxsaWVyZW4gdm9uIFBha2V0ZW4gZWluLiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjE0OAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGludGVnZXIgZm9yIC0lYzogJyUuMjUwcyciCittc2dzdHIgInVuZ8O8bHRpZ2UgR2FuenphaGwgZsO8ciAtJWM6IMK7JS4yNTBzwqsiCisKKyM6IGRwa2ctZGViL21haW4uYzoxNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjb21wcmVzc2lvbiBsZXZlbCBmb3IgLSVjOiAlbGQnIgorbXNnc3RyICJ1bmfDvGx0aWdlciBLb21wcmVzc2lvbnNsZXZlbCBmw7xyIC0tJWM6IMK7JWxkwqsiCisKKyM6IGRwa2ctZGViL21haW4uYzoxNjEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBjb21wcmVzc2lvbiB0eXBlIGAlcychIgorbXNnc3RyICJ1bmJla2FubnRlciBLb21wcmltaWVydW5nc3R5cCDCuyVzwqshIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzo1MgorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgZGlnaXQgKGNvZGUgJWQpIGluICVzIgorbXNnc3RyICJEYXRlaSDCuyUuMjUwc8KrIGlzdCBkZWZla3QgLSBmYWxzY2hlIFppZmZlciAoQ29kZSAlZCkgaW4gJXMiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjYwCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtICUuMjUwcyBtaXNzaW5nIgorbXNnc3RyICJEYXRlaSDCuyUuMjUwc8KrIGlzdCBkZWZla3QgLSAlLjI1MHMgZmVobHQiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjYzCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIG1pc3NpbmcgbmV3bGluZSBhZnRlciAlLjI1MHMiCittc2dzdHIgIkRhdGVpIMK7JS4yNTBzwqsgaXN0IGRlZmVrdCAtIGZlaGxlbmRlciBaZWlsZW52b3JzY2h1YiBuYWNoICUuMjUwcyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6ODkgZHBrZy1zcGxpdC9tYWluLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHJlYWRpbmcgJS4yNTBzIgorbXNnc3RyICJGZWhsZXIgYmVpbSBMZXNlbiB2b24gJS4yNTBzIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIG1hZ2ljIGF0IGVuZCBvZiBmaXJzdCBoZWFkZXIiCittc2dzdHIgIiIKKyJEYXRlaSDCuyUuMjUwc8KrIGlzdCBkZWZla3QgLSBmYWxzY2hlIEtlbm51bmcgYW0gRW5kZSBkZXIgZXJzdGVuIEtvcGZ6ZWlsZSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTEzCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBwYWRkaW5nIGNoYXJhY3RlciAoY29kZSAlZCkiCittc2dzdHIgIkRhdGVpIMK7JS4yNTBzwqsgaXN0IGRlZmVrdCAtIGZhbHNjaGVzIEF1ZmbDvGxsLVplaWNoZW4gKENvZGUgJWQpIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gbnVsbHMgaW4gaW5mbyBzZWN0aW9uIgorbXNnc3RyICJEYXRlaSDCuyUuMjUwc8KrIGlzdCBkZWZla3QgLSBOdWxsZW4gaW0gSW5mby1CZXJlaWNoIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMjIKK21zZ2lkICJmb3JtYXQgdmVyc2lvbiBudW1iZXIiCittc2dzdHIgIkZvcm1hdC1WZXJzaW9uc251bW1lciIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgZm9ybWF0IHZlcnNpb24gYCUuMjUwcycgLSB5b3UgbmVlZCBhIG5ld2VyIGRwa2ctc3BsaXQiCittc2dzdHIgIiIKKyJEYXRlaSDCuyUuMjUwc8KrIGhhdCBGb3JtYXR2ZXJzaW9uIMK7JS4yNTBzwqsgLSBTaWUgYmVuw7Z0aWdlbiBlaW4gbmV1ZXJlcyBkcGtnLSIKKyJzcGxpdCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTI3Cittc2dpZCAicGFja2FnZSBuYW1lIgorbXNnc3RyICJQYWtldG5hbWUiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyOAorbXNnaWQgInBhY2thZ2UgdmVyc2lvbiBudW1iZXIiCittc2dzdHIgIlBha2V0LVZlcnNpb25zbnVtbWVyIgorCisjIENIRUNLTUUKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyOQorbXNnaWQgInBhY2thZ2UgZmlsZSBNRDUgY2hlY2tzdW0iCittc2dzdHIgIk1ENS1QcsO8ZnN1bW1lIGRlciBQYWtldGRhdGVpIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIE1ENSBjaGVja3N1bSBgJS4yNTBzJyIKK21zZ3N0ciAiRGF0ZWkgwrslLjI1MHPCqyBpc3QgZGVmZWt0IC0gZmFsc2NoZSBNRDUtUHLDvGZzdW1tZSDCuyUuMjUwc8KrIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMzQgZHBrZy1zcGxpdC9pbmZvLmM6MTM1Cittc2dpZCAiYXJjaGl2ZSB0b3RhbCBzaXplIgorbXNnc3RyICJBcmNoaXYtR2VzYW10Z3LDtsOfZSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTM2IGRwa2ctc3BsaXQvaW5mby5jOjEzNworbXNnaWQgImFyY2hpdmUgcGFydCBvZmZzZXQiCittc2dzdHIgIkFyY2hpdnRlaWwtT2Zmc2V0IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMzkKK21zZ2lkICJhcmNoaXZlIHBhcnQgbnVtYmVycyIKK21zZ3N0ciAiQXJjaGl2dGVpbG51bW1lcm4iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE0MgorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBubyBzbGFzaCBiZXR3ZWVuIGFyY2hpdmUgcGFydCBudW1iZXJzIgorbXNnc3RyICIiCisiRGF0ZWkgwrslLjI1MHPCqyBpc3QgZGVmZWt0IC0ga2VpbiBTY2hyw6Rnc3RyaWNoIHp3aXNjaGVuIGRlbiBBcmNoaXZ0ZWlsbnVtbWVybiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTQ1Cittc2dpZCAibnVtYmVyIG9mIGFyY2hpdmUgcGFydHMiCittc2dzdHIgIkFuemFobCBkZXIgQXJjaGl2dGVpbGUiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE0NworIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgbnVtYmVyIG9mIGFyY2hpdmUgcGFydHMiCittc2dzdHIgIkRhdGVpIMK7JS4yNTBzwqsgaXN0IGRlZmVrdCAtIGZhbHNjaGUgQW56YWhsIGRlciBBcmNoaXZ0ZWlsZSIKKworIyBDSEVDS01FCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDkKK21zZ2lkICJhcmNoaXZlIHBhcnRzIG51bWJlciIKK21zZ3N0ciAiQXJjaGl2dGVpbGVudW1tZXIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE1MQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgYXJjaGl2ZSBwYXJ0IG51bWJlciIKK21zZ3N0ciAiRGF0ZWkgwrslLjI1MHPCqyBpc3QgZGVmZWt0IC0gZmFsc2NoZSBBcmNoaXZ0ZWlsbnVtbWVyIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNTcKK21zZ2lkICJwYWNrYWdlIGFyY2hpdGVjdHVyZSIKK21zZ3N0ciAiUGFrZXRhcmNoaXRla3R1ciIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTY2CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBtYWdpYyBhdCBlbmQgb2Ygc2Vjb25kIGhlYWRlciIKK21zZ3N0ciAiIgorIkRhdGVpIMK7JS4yNTBzwqsgaXN0IGRlZmVrdCAtIGZhbHNjaGUgS2VubnVuZyBhbSBFbmRlIGRlciB6d2VpdGVuIEtvcGZ6ZWlsZSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTY4CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIHNlY29uZCBtZW1iZXIgaXMgbm90IGRhdGEgbWVtYmVyIgorbXNnc3RyICJEYXRlaSDCuyUuMjUwc8KrIGlzdCBkZWZla3QgLSB6d2VpdGVzIEVsZW1lbnQgaXN0IGtlaW4gRGF0ZW5lbGVtZW50IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gd3JvbmcgbnVtYmVyIG9mIHBhcnRzIGZvciBxdW90ZWQgc2l6ZXMiCittc2dzdHIgIiIKKyJEYXRlaSDCuyUuMjUwc8KrIGlzdCBkZWZla3QgLSBmYWxzY2hlIEFuemFobCBkZXIgVGVpbGUgZsO8ciBhbmdlZ2ViZW5lIEdyw7bDn2VuIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gc2l6ZSBpcyB3cm9uZyBmb3IgcXVvdGVkIHBhcnQgbnVtYmVyIgorbXNnc3RyICJEYXRlaSDCuyUuMjUwc8KrIGlzdCBkZWZla3QgLSBmYWxzY2hlIEdyw7bDn2UgZsO8ciBhbmdlZ2ViZW5lIFRlaWwtTnVtbWVyIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxODQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZzdGF0IHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiVGVpbGRhdGVpIMK7JS4yNTBzwqsga2FubiBuaWNodCBtaXQgZnN0YXQgYWJnZWZyYWd0IHdlcmRlbiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTg5CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIHRvbyBzaG9ydCIKK21zZ3N0ciAiRGF0ZWkgwrslLjI1MHPCqyBpc3QgZGVmZWt0IC0genUga3VyeiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjAyIGRwa2ctc3BsaXQvaW5mby5jOjI0OQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgb3BlbiBhcmNoaXZlIHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiQXJjaGl2LVRlaWxkYXRlaSDCuyUuMjUwc8KrIGthbm4gbmljaHQgZ2XDtmZmbmV0IHdlcmRlbiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjA0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgbm90IGFuIGFyY2hpdmUgcGFydCIKK21zZ3N0ciAiRGF0ZWkgwrslLjI1MHPCqyBpc3Qga2VpbiBBcmNoaXYtVGVpbCIKKworIworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjA5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczpcbiIKKyIgICAgUGFydCBmb3JtYXQgdmVyc2lvbjogICAgICAgICAgICAlc1xuIgorIiAgICBQYXJ0IG9mIHBhY2thZ2U6ICAgICAgICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gdmVyc2lvbjogICAgICAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiBhcmNoaXRlY3R1cmU6ICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIE1ENSBjaGVja3N1bTogICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gbGVuZ3RoOiAgICAgICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgICAgICAuLi4gc3BsaXQgZXZlcnk6ICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgIFBhcnQgbnVtYmVyOiAgICAgICAgICAgICAgICAgICAgJWQvJWRcbiIKKyIgICAgUGFydCBsZW5ndGg6ICAgICAgICAgICAgICAgICAgICAlamQgYnl0ZXNcbiIKKyIgICAgUGFydCBvZmZzZXQ6ICAgICAgICAgICAgICAgICAgICAlamQgYnl0ZXNcbiIKKyIgICAgUGFydCBmaWxlIHNpemUgKHVzZWQgcG9ydGlvbik6ICAlamQgYnl0ZXNcbiIKKyJcbiIKK21zZ3N0ciAiIgorIiVzOlxuIgorIiAgICBUZWlsLUZvcm1hdC1WZXJzaW9uOiAgICAgICAgICAgICVzXG4iCisiICAgIFRlaWwgZGVzIFBha2V0ZXM6ICAgICAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiBWZXJzaW9uOiAgICAgICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIEFyY2hpdGVrdHVyOiAgICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gTUQ1LVByw7xmc3VtbWU6ICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gTMOkbmdlOiAgICAgICAgICAgICAgICAgICVqZCBCeXRlXG4iCisiICAgICAgICAuLi4gZ2V0ZWlsdCBhbGxlOiAgICAgICAgICAgJWpkIEJ5dGVcbiIKKyIgICAgVGVpbC1OdW1tZXI6ICAgICAgICAgICAgICAgICAgICAlZC8lZFxuIgorIiAgICBUZWlsLUzDpG5nZTogICAgICAgICAgICAgICAgICAgICAlamQgQnl0ZVxuIgorIiAgICBUZWlsLU9mZnNldDogICAgICAgICAgICAgICAgICAgICVqZCBCeXRlXG4iCisiICAgIFRlaWwtRGF0ZWlncsO2w59lIChiZW4uIEFudGVpbCk6ICAlamQgQnl0ZVxuIgorIlxuIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyMjUKK21zZ2N0eHQgImFyY2hpdGVjdHVyZSIKK21zZ2lkICI8dW5rbm93bj4iCittc2dzdHIgIjx1bmJla2FubnQ+IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyNDQgZHBrZy1zcGxpdC9qb2luLmM6MTA1CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgcmVxdWlyZXMgb25lIG9yIG1vcmUgcGFydCBmaWxlIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS0lcyBiZW7DtnRpZ3QgZWluZSBvZGVyIG1laHJlcmUgVGVpbGRhdGVpZW4gYWxzIEFyZ3VtZW50ZSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjU1CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCVzJyBpcyBub3QgYW4gYXJjaGl2ZSBwYXJ0XG4iCittc2dzdHIgIkRhdGVpIMK7JXPCqyBpc3Qga2VpbiBUZWlsIGVpbmVzIEFyY2hpdnNcbiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHV0dGluZyBwYWNrYWdlICVzIHRvZ2V0aGVyIGZyb20gJWQgcGFydDogIgorbXNnaWRfcGx1cmFsICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0czogIgorbXNnc3RyWzBdICJQYWtldCAlcyB3aXJkIGF1cyAlZCBUZWlsIHp1c2FtbWVuZ2VzZXR6dDogIgorbXNnc3RyWzFdICJQYWtldCAlcyB3aXJkIGF1cyAlZCBUZWlsZW4genVzYW1tZW5nZXNldHp0OiAiCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjUxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIG91dHB1dCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJBdXNnYWJlZGF0ZWkgwrslLjI1MHPCqyBrYW5uIG5pY2h0IGdlw7ZmZm5ldCB3ZXJkZW4iCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjU3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byAocmUpb3BlbiBpbnB1dCBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIkVpbmdhYmUtVGVpbGRhdGVpIMK7JS4yNTBzwqsga2FubiBuaWNodCAod2llZGVyKSBnZcO2ZmZuZXQgd2VyZGVuIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1OAorbXNnaWQgInNraXBwaW5nIHNwbGl0IHBhY2thZ2UgaGVhZGVyIgorbXNnc3RyICJLb3BmemVpbGVuIGRlcyBnZXRlaWx0ZW4gUGFrZXRzIHdlcmRlbiDDvGJlcmdhbmdlbiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NTkKK21zZ2lkICJzcGxpdCBwYWNrYWdlIHBhcnQiCittc2dzdHIgIlRlaWwgZGVzIGF1Zmdlc3BhbHRlbmVuIFBha2V0cyIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NjkgZHBrZy1zcGxpdC9zcGxpdC5jOjIzNworIywgYy1mb3JtYXQKK21zZ2lkICJkb25lXG4iCittc2dzdHIgImZlcnRpZ1xuIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo4NQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlcyBgJS4yNTBzJyBhbmQgYCUuMjUwcycgYXJlIG5vdCBwYXJ0cyBvZiB0aGUgc2FtZSBmaWxlIgorbXNnc3RyICJEYXRlaWVuIMK7JS4yNTBzwqsgdW5kIMK7JS4yNTBzwqsgc2luZCBuaWNodCBUZWlsZSBkZXJzZWxiZW4gRGF0ZWkiCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjkwCisjLCBjLWZvcm1hdAorbXNnaWQgInRoZXJlIGFyZSBzZXZlcmFsIHZlcnNpb25zIG9mIHBhcnQgJWQgLSBhdCBsZWFzdCBgJS4yNTBzJyBhbmQgYCUuMjUwcyciCittc2dzdHIgIiIKKyJlcyBzaW5kIG1laHJlcmUgVmVyc2lvbmVuIGRlcyBUZWlscyAlZCB2b3JoYW5kZW4gLSBtaW5kZXN0ZW5zIMK7JS4yNTBzwqsgdW5kICIKKyLCuyUuMjUwc8KrIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzoxMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFydCAlZCBpcyBtaXNzaW5nIgorbXNnc3RyICJUZWlsICVkIGZlaGx0IgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo0NworIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIHNwbGl0L2pvaW4gdG9vbDsgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiRGViaWFuIMK7JXPCqyBQYWtldC1BdWZ0ZWlsLS9adXNhbW1lbmbDvGdlLVdlcmt6ZXVnOyBWZXJzaW9uICVzLlxuIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo0OQorIywgYy1mb3JtYXQKK21zZ2lkICJDb3B5cmlnaHQgKEMpIDE5OTQtMTk5NiBJYW4gSmFja3Nvbi5cbiIKK21zZ3N0ciAiQ29weXJpZ2h0IChDKSAxOTk0LTE5OTYgSWFuIEphY2tzb24uXG4iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjY3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1zfC0tc3BsaXQgPGZpbGU+IFs8cHJlZml4Pl0gICAgIFNwbGl0IGFuIGFyY2hpdmUuXG4iCisiICAtanwtLWpvaW4gPHBhcnQ+IDxwYXJ0PiAuLi4gICAgICBKb2luIHBhcnRzIHRvZ2V0aGVyLlxuIgorIiAgLUl8LS1pbmZvIDxwYXJ0PiAuLi4gICAgICAgICAgICAgRGlzcGxheSBpbmZvIGFib3V0IGEgcGFydC5cbiIKKyIgIC1hfC0tYXV0byAtbyA8Y29tcGxldGU+IDxwYXJ0PiAgIEF1dG8tYWNjdW11bGF0ZSBwYXJ0cy5cbiIKKyIgIC1sfC0tbGlzdHEgICAgICAgICAgICAgICAgICAgICAgIExpc3QgdW5tYXRjaGVkIHBpZWNlcy5cbiIKKyIgIC1kfC0tZGlzY2FyZCBbPGZpbGVuYW1lPiAuLi5dICAgIERpc2NhcmQgdW5tYXRjaGVkIHBpZWNlcy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIkJlZmVobGU6XG4iCisiICAtc3wtLXNwbGl0IDxEYXRlaT4gWzxQcsOkZml4Pl0gICAgRWluIEFyY2hpdiBhdWZ0ZWlsZW4uXG4iCisiICAtanwtLWpvaW4gPFRlaWw+IDxUZWlsPiAuLi4gICAgICBUZWlsZSB6dXNhbW1lbmbDvGdlbi5cbiIKKyIgIC1JfC0taW5mbyA8VGVpbD4gLi4uICAgICAgICAgICAgIEluZm8gw7xiZXIgVGVpbCBhbnplaWdlbi5cbiIKKyIgIC1hfC0tYXV0byAtbyA8R2FuemVzPiA8VGVpbD4gICAgIFRlaWxlIGF1dG9tYXRpc2NoIGFuc2FtbWVsbi5cbiIKKyIgIC1sfC0tbGlzdHEgICAgICAgICAgICAgICAgICAgICAgIE5pY2h0IHBhc3NlbmRlIFRlaWxlIGF1Zmxpc3Rlbi5cbiIKKyIgIC1kfC0tZGlzY2FyZCBbPERhdGVpbmFtZT4gLi4uXSAgIE5pY2h0IHBhc3NlbmRlIFRlaWxlIHZlcndlcmZlbi5cbiIKKyJcbiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWRlcG90ZGlyIDxkaXJlY3Rvcnk+ICAgICAgICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy8lcy5cbiIKKyIgIC1TfC0tcGFydHNpemUgPHNpemU+ICAgICAgICAgICAgIEluIEtpQiwgZm9yIC1zIChkZWZhdWx0IGlzIDQ1MCkuXG4iCisiICAtb3wtLW91dHB1dCA8ZmlsZT4gICAgICAgICAgICAgICBGaWxlbmFtZSwgZm9yIC1qIChkZWZhdWx0IGlzXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYWNrYWdlPl88dmVyc2lvbj5fPGFyY2g+LmRlYikuXG4iCisiICAtUXwtLW5wcXVpZXQgICAgICAgICAgICAgICAgICAgICBCZSBxdWlldCB3aGVuIC1hIGlzIG5vdCBhIHBhcnQuXG4iCisiICAtLW1zZG9zICAgICAgICAgICAgICAgICAgICAgICAgICBHZW5lcmF0ZSA4LjMgZmlsZW5hbWVzLlxuIgorIlxuIgorbXNnc3RyICIiCisiT3B0aW9uZW46XG4iCisiICAtLWRlcG90ZGlyIDxWZXJ6ZWljaG5pcz4gICAgICAgICA8VmVyemVpY2huaXM+IHN0YXR0ICVzLyVzIHZlcndlbmRlbi5cbiIKKyIgIC1TfC0tcGFydHNpemUgPEdyw7bDn2U+ICAgICAgICAgICAgSW4gS2lCLCBmw7xyIC1zIChTdGFuZGFyZCBpc3QgNDUwKS5cbiIKKyIgIC1vfC0tb3V0cHV0IDxEYXRlaT4gICAgICAgICAgICAgIERhdGVpbmFtZSwgZsO8ciAtaiAoU3RhbmRhcmQgaXN0XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxQYWtldD5fPFZlcnNpb24+XzxBcmNoaXRla3R1cj4uZGViKS5cbiIKKyIgIC1RfC0tbnBxdWlldCAgICAgICAgICAgICAgICAgICAgIEtlaW5lIEF1c2dhYmUsIHdlbm4gLWEga2VpbiBUZWlsIGlzdC5cbiIKKyIgIC0tbXNkb3MgICAgICAgICAgICAgICAgICAgICAgICAgIERhdGVpbmFtZW4gaW0gOC4zLUZvcm1hdCBlcnpldWdlbi5cbiIKKyJcbiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6OTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkV4aXQgc3RhdHVzOlxuIgorIiAgMCA9IG9rXG4iCisiICAxID0gd2l0aCAtLWF1dG8sIGZpbGUgaXMgbm90IGEgcGFydFxuIgorIiAgMiA9IHRyb3VibGVcbiIKK21zZ3N0ciAiIgorIkV4aXQtU3RhdHVzOlxuIgorIiAgMCA9IE9LXG4iCisiICAxID0gbWl0IC0tYXV0bywgRGF0ZWkgaXN0IGtlaW4gVGVpbFxuIgorIiAgMiA9IFByb2JsZW1lXG4iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjEwMworbXNnaWQgIlR5cGUgZHBrZy1zcGxpdCAtLWhlbHAgZm9yIGhlbHAuIgorbXNnc3RyICJHZWJlbiBTaWUgZHBrZy1zcGxpdCAtLWhlbHAgZsO8ciBIaWxmZSBlaW4uIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgZmlsZSBpbiAlLjI1MHMiCittc2dzdHIgIlVuZXJ3YXJ0ZXRlcyBEYXRlaWVuZGUgaW4gJS4yNTBzIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMjYKK21zZ2lkICJwYXJ0IHNpemUgaXMgZmFyIHRvbyBsYXJnZSBvciBpcyBub3QgcG9zaXRpdmUiCittc2dzdHIgIlRlaWxncsO2w59lIGlzdCB2aWVsIHp1IGdyb8OfIG9kZXIgbmljaHQgcG9zaXRpdi4iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjEzMAorIywgYy1mb3JtYXQKK21zZ2lkICJwYXJ0IHNpemUgbXVzdCBiZSBhdCBsZWFzdCAlZCBLaUIgKHRvIGFsbG93IGZvciBoZWFkZXIpIgorbXNnc3RyICJUZWlsZ3LDtsOfZSBtdXNzIG1pbmRlc3RlbnMgJWQgS2lCIHNlaW4gKGbDvHIgZGllIEtvcGZ6ZWlsZW4pIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgZGVwb3QgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICJEZXBvdC1WZXJ6ZWljaG5pcyDCuyUuMjUwc8KrIGthbm4gbmljaHQgZ2VsZXNlbiB3ZXJkZW4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxMzQKK21zZ2lkICItLWF1dG8gcmVxdWlyZXMgdGhlIHVzZSBvZiB0aGUgLS1vdXRwdXQgb3B0aW9uIgorbXNnc3RyICItLWF1dG8gYmVuw7Z0aWd0IGRpZSBBbmdhYmUgZGVyIC0tb3V0cHV0LU9wdGlvbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjEzNgorbXNnaWQgIi0tYXV0byByZXF1aXJlcyBleGFjdGx5IG9uZSBwYXJ0IGZpbGUgYXJndW1lbnQiCittc2dzdHIgIi0tYXV0byBiZW7DtnRpZ3QgZ2VuYXUgZWluZW4gVGVpbC1EYXRlaW5hbWVuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTQwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiVGVpbGRhdGVpIMK7JS4yNTBzwqsga2FubiBuaWNodCBnZWxlc2VuIHdlcmRlbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE0MworIywgYy1mb3JtYXQKK21zZ2lkICJGaWxlIGAlLjI1MHMnIGlzIG5vdCBwYXJ0IG9mIGEgbXVsdGlwYXJ0IGFyY2hpdmUuXG4iCittc2dzdHIgIkRhdGVpIMK7JS4yNTBzwqsgaXN0IGtlaW4gVGVpbCBlaW5lcyBtZWhydGVpbGlnZW4gQXJjaGl2cy5cbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE3OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVvcGVuIHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiVGVpbGRhdGVpIMK7JS4yNTBzwqsga2FubiBuaWNodCB3aWVkZXIgZ2XDtmZmbmV0IHdlcmRlbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE4MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBuZXcgZGVwb3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiTmV1ZSBEZXBvdC1EYXRlaSDCuyUuMjUwc8KrIGthbm4gbmljaHQgZ2XDtmZmbmV0IHdlcmRlbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE4NAorbXNnaWQgImV4dHJhY3Rpbmcgc3BsaXQgcGFydCIKK21zZ3N0ciAiRXh0cmFoaWVyZW4gZGVzIGFiZ2VzcGFsdGVuZW4gVGVpbHMiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbmFtZSBuZXcgZGVwb3QgZmlsZSBgJS4yNTBzJyB0byBgJS4yNTBzJyIKK21zZ3N0ciAiTmV1ZSBEZXBvdC1EYXRlaSDCuyUuMjUwc8KrIGthbm4gbmljaHQgaW4gwrslLjI1MHPCqyB1bWJlbmFubnQgd2VyZGVuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTk2CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhcnQgJWQgb2YgcGFja2FnZSAlcyBmaWxlZCAoc3RpbGwgd2FudCAiCittc2dzdHIgIlRlaWwgJWQgZGVzIFBha2V0cyAlcyBhYmdlbGVndCAoYmVuw7Z0aWdlIG5vY2ggIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjAwCittc2dpZCAiIGFuZCAiCittc2dzdHIgIiB1bmQgIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjE0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkZWxldGUgdXNlZC11cCBkZXBvdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJBdWZnZWJyYXVjaHRlIERlcG90ZGF0ZWkgwrslLjI1MHPCqyBrYW5uIG5pY2h0IGdlbMO2c2NodCB3ZXJkZW4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyMzUKK21zZ2lkICJKdW5rIGZpbGVzIGxlZnQgYXJvdW5kIGluIHRoZSBkZXBvdCBkaXJlY3Rvcnk6XG4iCittc2dzdHIgIlNpbm5sb3NlIERhdGVpZW4gaW0gRGVwb3QtVmVyemVpY2huaXMgw7xicmlnZ2VibGllYmVuOlxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjQwIGRwa2ctc3BsaXQvcXVldWUuYzoyNjkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgYCUuMjUwcyciCittc2dzdHIgIsK7JS4yNTBzwqsga2FubiBuaWNodCBtaXQgc3RhdCBhYmdlZnJhZ3Qgd2VyZGVuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjQzCisjLCBjLWZvcm1hdAorbXNnaWQgIiAlcyAoJWpkIGJ5dGVzKVxuIgorbXNnc3RyICIgJXMgKCVqZCBCeXRlKVxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAlcyAobm90IGEgcGxhaW4gZmlsZSlcbiIKK21zZ3N0ciAiICVzIChrZWluZSBnZXfDtmhubGljaGUgRGF0ZWkpXG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNTAKK21zZ2lkICJQYWNrYWdlcyBub3QgeWV0IHJlYXNzZW1ibGVkOlxuIgorbXNnc3RyICJQYWtldGUgbm9jaCBuaWNodCB3aWVkZXIgenVzYW1tZW5nZWbDvGd0OlxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjU4CisjLCBjLWZvcm1hdAorbXNnaWQgIiBQYWNrYWdlICVzOiBwYXJ0KHMpICIKK21zZ3N0ciAiUGFrZXQgJXM6IFRlaWwoZSkgIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjcxCisjLCBjLWZvcm1hdAorbXNnaWQgInBhcnQgZmlsZSBgJS4yNTBzJyBpcyBub3QgYSBwbGFpbiBmaWxlIgorbXNnc3RyICJUZWlsZGF0ZWkgwrslLjI1MHPCqyBpc3Qga2VpbmUgZ2V3w7ZobmxpY2hlIERhdGVpIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6Mjc4CisjLCBjLWZvcm1hdAorbXNnaWQgIih0b3RhbCAlamQgYnl0ZXMpXG4iCittc2dzdHIgIihpbnNnZXNhbXQgJWpkIEJ5dGUpXG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzozMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRpc2NhcmQgYCUuMjUwcyciCittc2dzdHIgIsK7JS4yNTBzwqsga2FubiBuaWNodCB2ZXJ3b3JmZW4gd2VyZGVuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MzA1CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlbGV0ZWQgJXMuXG4iCittc2dzdHIgIiVzIGlzdCBlbnRmZXJudCB3b3JkZW4uXG4iCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzo3MCBkcGtnLXNwbGl0L3NwbGl0LmM6NzYgZHBrZy1zcGxpdC9zcGxpdC5jOjgxCittc2dpZCAicGFja2FnZSBmaWVsZCB2YWx1ZSBleHRyYWN0aW9uIgorbXNnc3RyICJQYWtldC1GZWxkd2VydGV4dHJha3Rpb24iCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxMzEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gc291cmNlIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIlF1ZWxsZGF0ZWkgwrslLjI1MHPCqyBrYW5uIG5pY2h0IGdlw7ZmZm5ldCB3ZXJkZW4iCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxMzMKK21zZ2lkICJ1bmFibGUgdG8gZnN0YXQgc291cmNlIGZpbGUiCittc2dzdHIgIlF1ZWxsZGF0ZWkga2FubiBuaWNodCBtaXQgZnN0YXQgYWJnZWZyYWd0IHdlcmRlbiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjEzNQorIywgYy1mb3JtYXQKK21zZ2lkICJzb3VyY2UgZmlsZSBgJS4yNTBzJyBub3QgYSBwbGFpbiBmaWxlIgorbXNnc3RyICJRdWVsbGRhdGVpIMK7JS4yNTBzwqsgaXN0IGtlaW5lIGdld8O2aG5saWNoZSBEYXRlaSIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjE1MworIywgYy1mb3JtYXQKK21zZ2lkICJTcGxpdHRpbmcgcGFja2FnZSAlcyBpbnRvICVkIHBhcnQ6ICIKK21zZ2lkX3BsdXJhbCAiU3BsaXR0aW5nIHBhY2thZ2UgJXMgaW50byAlZCBwYXJ0czogIgorbXNnc3RyWzBdICJQYWtldCAlcyB3aXJkIGluICVkIFRlaWwgYXVmZ2V0ZWlsdDogIgorbXNnc3RyWzFdICJQYWtldCAlcyB3aXJkIGluICVkIFRlaWxlIGF1ZmdldGVpbHQ6ICIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjE5MworbXNnaWQgIiIKKyJIZWFkZXIgaXMgdG9vIGxvbmcsIG1ha2luZyBwYXJ0IHRvbyBsb25nLiBZb3VyIHBhY2thZ2UgbmFtZSBvciB2ZXJzaW9uXG4iCisibnVtYmVycyBtdXN0IGJlIGV4dHJhb3JkaW5hcmlseSBsb25nLCBvciBzb21ldGhpbmcuIEdpdmluZyB1cC5cbiIKK21zZ3N0ciAiIgorIktvcGZ6ZWlsZSBpc3QgenUgbGFuZywgd29kdXJjaCBkZXIgVGVpbCB6dSBsYW5nIHdpcmQuIElociBQYWtldG5hbWUgb2RlciAiCisiZGllXG4iCisiVmVyc2lvbnNudW1tZXIgbXVzcyBhdcOfZXJvcmRlbnRsaWNoIGxhbmcgc2Vpbiwgb2RlciBzby4gQWJicnVjaC5cbiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjI0OQorbXNnaWQgIi0tc3BsaXQgbmVlZHMgYSBzb3VyY2UgZmlsZW5hbWUgYXJndW1lbnQiCittc2dzdHIgIi0tc3BsaXQgYmVuw7Z0aWd0IGVpbmVuIFF1ZWxsZGF0ZWktTmFtZW4gYWxzIEFyZ3VtZW50IgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MjUyCittc2dpZCAiLS1zcGxpdCB0YWtlcyBhdCBtb3N0IGEgc291cmNlIGZpbGVuYW1lIGFuZCBkZXN0aW5hdGlvbiBwcmVmaXgiCittc2dzdHIgIiIKKyItLXNwbGl0IGFremVwdGllcnQgaMO2Y2hzdGVucyBlaW5lbiBRdWVsbGRhdGVpLU5hbWVuIHVuZCBlaW4gWmllbC1QcsOkZml4IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6ODQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAtMjAwMiBXaWNoZXJ0IEFra2VybWFuLlxuIgorIkNvcHlyaWdodCAoQykgMjAwOS0yMDEwIFJhcGhhZWwgSGVydHpvZy5cbiIKK21zZ3N0ciAiIgorIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAtMjAwMiBXaWNoZXJ0IEFra2VybWFuLlxuIgorIkNvcHlyaWdodCAoQykgMjAwOS0yMDEwIFJhcGhhZWwgSGVydHpvZy5cbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEwMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtLWluc3RhbGwgPGxpbms+IDxuYW1lPiA8cGF0aD4gPHByaW9yaXR5PlxuIgorIiAgICBbLS1zbGF2ZSA8bGluaz4gPG5hbWU+IDxwYXRoPl0gLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkIGEgZ3JvdXAgb2YgYWx0ZXJuYXRpdmVzIHRvIHRoZSBzeXN0ZW0uXG4iCisiICAtLXJlbW92ZSA8bmFtZT4gPHBhdGg+ICAgcmVtb3ZlIDxwYXRoPiBmcm9tIHRoZSA8bmFtZT4gZ3JvdXAgYWx0ZXJuYXRpdmUuXG4iCisiICAtLXJlbW92ZS1hbGwgPG5hbWU+ICAgICAgcmVtb3ZlIDxuYW1lPiBncm91cCBmcm9tIHRoZSBhbHRlcm5hdGl2ZXMgIgorInN5c3RlbS5cbiIKKyIgIC0tYXV0byA8bmFtZT4gICAgICAgICAgICBzd2l0Y2ggdGhlIG1hc3RlciBsaW5rIDxuYW1lPiB0byBhdXRvbWF0aWMgbW9kZS5cbiIKKyIgIC0tZGlzcGxheSA8bmFtZT4gICAgICAgICBkaXNwbGF5IGluZm9ybWF0aW9uIGFib3V0IHRoZSA8bmFtZT4gZ3JvdXAuXG4iCisiICAtLXF1ZXJ5IDxuYW1lPiAgICAgICAgICAgbWFjaGluZSBwYXJzZWFibGUgdmVyc2lvbiBvZiAtLWRpc3BsYXkgPG5hbWU+LlxuIgorIiAgLS1saXN0IDxuYW1lPiAgICAgICAgICAgIGRpc3BsYXkgYWxsIHRhcmdldHMgb2YgdGhlIDxuYW1lPiBncm91cC5cbiIKKyIgIC0tZ2V0LXNlbGVjdGlvbnMgICAgICAgICBsaXN0IG1hc3RlciBhbHRlcm5hdGl2ZSBuYW1lcyBhbmQgdGhlaXIgc3RhdHVzLlxuIgorIiAgLS1zZXQtc2VsZWN0aW9ucyAgICAgICAgIHJlYWQgYWx0ZXJuYXRpdmUgc3RhdHVzIGZyb20gc3RhbmRhcmQgaW5wdXQuXG4iCisiICAtLWNvbmZpZyA8bmFtZT4gICAgICAgICAgc2hvdyBhbHRlcm5hdGl2ZXMgZm9yIHRoZSA8bmFtZT4gZ3JvdXAgYW5kIGFzayAiCisidGhlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlciB0byBzZWxlY3Qgd2hpY2ggb25lIHRvIHVzZS5cbiIKKyIgIC0tc2V0IDxuYW1lPiA8cGF0aD4gICAgICBzZXQgPHBhdGg+IGFzIGFsdGVybmF0aXZlIGZvciA8bmFtZT4uXG4iCisiICAtLWFsbCAgICAgICAgICAgICAgICAgICAgY2FsbCAtLWNvbmZpZyBvbiBhbGwgYWx0ZXJuYXRpdmVzLlxuIgorIlxuIgorbXNnc3RyICIiCisiQmVmZWhsZTpcbiIKKyIgIC0taW5zdGFsbCA8TGluaz4gPE5hbWU+IDxQZmFkPiA8UHJpb3JpdMOkdD5cbiIKKyIgICAgWy0tc2xhdmUgPExpbms+IDxOYW1lPiA8UGZhZD5dIC4uLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIEdydXBwZSB2b24gQWx0ZXJuYXRpdmVuIHp1bSBTeXN0ZW0gaGluenVmw7xnZW4uXG4iCisiICAtLXJlbW92ZSA8TmFtZT4gPFBmYWQ+ICAgPFBmYWQ+IGF1cyBkZXIgQWx0ZXJuYXRpdi1HcnVwcGUgPE5hbWU+ICIKKyJlbnRmZXJuZW4uXG4iCisiICAtLXJlbW92ZS1hbGwgPE5hbWU+ICAgICAgR3J1cHBlIDxOYW1lPiBhdXMgZGVtIEFsdGVybmF0aXYtU3lzdGVtICIKKyJlbnRmZXJuZW4uXG4iCisiICAtLWF1dG8gPE5hbWU+ICAgICAgICAgICAgTWFzdGVyLUxpbmsgPE5hbWU+IGluIGF1dG9tYXRpc2NoZW4gTW9kdXMgIgorImJyaW5nZW4uXG4iCisiICAtLWRpc3BsYXkgPE5hbWU+ICAgICAgICAgSW5mb3JtYXRpb25lbiDDvGJlciBHcnVwcGUgPE5hbWU+IGFuemVpZ2VuLlxuIgorIiAgLS1xdWVyeSA8TmFtZT4gICAgICAgICAgIE1hc2NoaW5lbmxlc2JhcmUgVmVyc2lvbiB2b24gLS1kaXNwbGF5IDxOYW1lPi5cbiIKKyIgIC0tbGlzdCA8TmFtZT4gICAgICAgICAgICBBbGxlIFppZWxlIGRlciBHcnVwcGUgPE5hbWU+IGFuemVpZ2VuLlxuIgorIiAgLS1nZXQtc2VsZWN0aW9ucyAgICAgICAgIE5hbWVuIHVuZCBTdGF0dXMgdm9uIE1hc3Rlci1BbHRlcm5hdGl2ZW4gIgorImF1Zmxpc3Rlbi5cbiIKKyIgIC0tc2V0LXNlbGVjdGlvbnMgICAgICAgICBBbHRlcm5hdGl2ZW4tU3RhdHVzIGF1cyBTdGFuZGFyZGVpbmdhYmUgbGVzZW4uXG4iCisiICAtLWNvbmZpZyA8TmFtZT4gICAgICAgICAgQWx0ZXJuYXRpdmVuIGbDvHIgZGllIEdydXBwZSA8TmFtZT4gYW56ZWlnZW4gdW5kICIKKyJkZW5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBCZW51dHplciBhdWZmb3JkZXJuLCBkaWUgZ2V3w7xuc2NodGUgYXVzenV3w6RobGVuLlxuIgorIiAgLS1zZXQgPE5hbWU+IDxQZmFkPiAgICAgIDxQZmFkPiBhbHMgQWx0ZXJuYXRpdmUgZsO8ciA8TmFtZT4gc2V0emVuLlxuIgorIiAgLS1hbGwgICAgICAgICAgICAgICAgICAgIC0tY29uZmlnIGF1ZiBhbGxlbiBBbHRlcm5hdGl2ZW4gYXVzZsO8aHJlbi5cbiIKKyJcbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiPGxpbms+IGlzIHRoZSBzeW1saW5rIHBvaW50aW5nIHRvICVzLzxuYW1lPi5cbiIKKyIgIChlLmcuIC91c3IvYmluL3BhZ2VyKVxuIgorIjxuYW1lPiBpcyB0aGUgbWFzdGVyIG5hbWUgZm9yIHRoaXMgbGluayBncm91cC5cbiIKKyIgIChlLmcuIHBhZ2VyKVxuIgorIjxwYXRoPiBpcyB0aGUgbG9jYXRpb24gb2Ygb25lIG9mIHRoZSBhbHRlcm5hdGl2ZSB0YXJnZXQgZmlsZXMuXG4iCisiICAoZS5nLiAvdXNyL2Jpbi9sZXNzKVxuIgorIjxwcmlvcml0eT4gaXMgYW4gaW50ZWdlcjsgb3B0aW9ucyB3aXRoIGhpZ2hlciBudW1iZXJzIGhhdmUgaGlnaGVyIHByaW9yaXR5ICIKKyJpblxuIgorIiAgYXV0b21hdGljIG1vZGUuXG4iCisiXG4iCittc2dzdHIgIiIKKyI8TGluaz4gaXN0IGRlciBzeW1ib2xpc2NoZSBMaW5rLCBkZXIgYXVmICVzLzxOYW1lPiB2ZXJ3ZWlzdC5cbiIKKyIgICh6LkIuIC91c3IvYmluL3BhZ2VyKVxuIgorIjxOYW1lPiBpc3QgZGVyIE5hbWUgZGVzIE1hc3RlcnMgZsO8ciBkaWVzZSBMaW5rLUdydXBwZS5cbiIKKyIgICh6LkIuIHBhZ2VyKVxuIgorIjxQZmFkPiBpc3QgZGVyIE9ydCBlaW5lciBkZXIgYWx0ZXJuYXRpdmVuIFppZWwtRGF0ZWllbi5cbiIKKyIgICh6LkIuIC91c3IvYmluL2xlc3MpXG4iCisiPFByaW9yaXTDpHQ+IGlzdCBlaW5lIEdhbnp6YWhsOyBPcHRpb25lbiBtaXQgaMO2aGVyZW4gWmFobGVuIGhhYmVuIGltXG4iCisiICBhdXRvbWF0aXNjaGVuIE1vZHVzIGjDtmhlcmUgUHJpb3JpdMOkdC5cbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWx0ZGlyIDxkaXJlY3Rvcnk+ICAgICBjaGFuZ2UgdGhlIGFsdGVybmF0aXZlcyBkaXJlY3RvcnkuXG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgY2hhbmdlIHRoZSBhZG1pbmlzdHJhdGl2ZSBkaXJlY3RvcnkuXG4iCisiICAtLWxvZyA8ZmlsZT4gICAgICAgICAgICAgY2hhbmdlIHRoZSBsb2cgZmlsZS5cbiIKKyIgIC0tZm9yY2UgICAgICAgICAgICAgICAgICBhbGxvdyByZXBsYWNpbmcgZmlsZXMgd2l0aCBhbHRlcm5hdGl2ZSBsaW5rcy5cbiIKKyIgIC0tc2tpcC1hdXRvICAgICAgICAgICAgICBza2lwIHByb21wdCBmb3IgYWx0ZXJuYXRpdmVzIGNvcnJlY3RseSAiCisiY29uZmlndXJlZFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGluIGF1dG9tYXRpYyBtb2RlIChyZWxldmFudCBmb3IgLS1jb25maWcgb25seSlcbiIKKyIgIC0tdmVyYm9zZSAgICAgICAgICAgICAgICB2ZXJib3NlIG9wZXJhdGlvbiwgbW9yZSBvdXRwdXQuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgcXVpZXQgb3BlcmF0aW9uLCBtaW5pbWFsIG91dHB1dC5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCittc2dzdHIgIiIKKyJPcHRpb25lbjpcbiIKKyIgIC0tYWx0ZGlyIDxWZXJ6ZWljaG5pcz4gICBBbHRlcm5hdGl2LVZlcnplaWNobmlzIMOkbmRlcm4uXG4iCisiICAtLWFkbWluZGlyIDxWZXJ6ZWljaG5pcz4gYWRtaW5pc3RyYXRpdmVzIFZlcnplaWNobmlzIMOkbmRlcm4uXG4iCisiICAtLWxvZyA8RGF0ZWk+ICAgICAgICAgICAgUHJvdG9rb2xsZGF0ZWkgw6RuZGVybi5cbiIKKyIgIC0tc2tpcC1hdXRvICAgICAgICAgICAgICBBdWZmb3JkZXJ1bmcgZsO8ciBrb3JyZWt0IGtvbmZpZ3VyaWVydGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBBbHRlcm5hdGl2ZW4gaW0gYXV0b21hdGlzY2hlbiBNb2R1cyBhdXNsYXNzZW5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAobnVyIGbDvHIgLS1jb25maWcgcmVsZXZhbnQpXG4iCisiICAtLXZlcmJvc2UgICAgICAgICAgICAgICAgYXVzZsO8aHJsaWNoZSBPcGVyYXRpb24sIG1laHIgQXVzZ2FiZW4uXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgc3RpbGxlIEF1c2bDvGhydW5nLCBtaW5pbWFsZSBBdXNnYWJlbi5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICBkaWVzZW4gSGlsZmV0ZXh0IGFuemVpZ2VuLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIFZlcnNpb24gYW56ZWlnZW4uXG4iCisiXG4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE2MworbXNnaWQgImVycm9yIgorbXNnc3RyICJGZWhsZXIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxOTMKK21zZ2lkICJ3YXJuaW5nIgorbXNnc3RyICJXYXJudW5nIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MzU2CisjLCBjLWZvcm1hdAorbXNnaWQgInR3byBjb21tYW5kcyBzcGVjaWZpZWQ6IC0tJXMgYW5kIC0tJXMiCittc2dzdHIgIlp3ZWkgQmVmZWhsZSBhbmdlZ2ViZW46IC0tJXMgdW5kIC0tJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzozODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGFwcGVuZCB0byAnJXMnIgorbXNnc3RyICJBbiDCuyVzwqsga2FubiBuaWNodCBhbmdlaMOkbmd0IHdlcmRlbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjU1NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlICclcyciCittc2dzdHIgIsK7JXPCqyBrYW5uIG5pY2h0IGVudGZlcm50IHdlcmRlbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgZmlsZSB3aGlsZSB0cnlpbmcgdG8gcmVhZCAlcyIKK21zZ3N0ciAidW5lcndhcnRldGVzIERhdGVpZW5kZSBiZWltIFZlcnN1Y2gsICVzIHp1IGxlc2VuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTExMworIywgYy1mb3JtYXQKK21zZ2lkICJ3aGlsZSByZWFkaW5nICVzOiAlcyIKK21zZ3N0ciAiQmVpbSBMZXNlbiB2b24gJXM6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTExOQorIywgYy1mb3JtYXQKK21zZ2lkICJsaW5lIG5vdCB0ZXJtaW5hdGVkIHdoaWxlIHRyeWluZyB0byByZWFkICVzIgorbXNnc3RyICJaZWlsZSBuaWNodCBiZWVuZGV0IGJlaW0gVmVyc3VjaCwgJXMgenUgbGVzZW4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGNvcnJ1cHQ6ICVzIgorbXNnc3RyICIlcyBkZWZla3Q6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE1MAorIywgYy1mb3JtYXQKK21zZ2lkICJuZXdsaW5lcyBwcm9oaWJpdGVkIGluIHVwZGF0ZS1hbHRlcm5hdGl2ZXMgZmlsZXMgKCVzKSIKK21zZ3N0ciAiWmVpbGVudm9yc2Now7xiZSBzaW5kIGluIHVwZGF0ZS1hbHRlcm5hdGl2ZXMtRGF0ZWllbiAoJXMpIHZlcmJvdGVuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE2MworbXNnaWQgInNsYXZlIG5hbWUiCittc2dzdHIgIlNsYXZlLU5hbWUiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTcxIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDA1CisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBzbGF2ZSBuYW1lICVzIgorbXNnc3RyICJkb3BwZWx0ZXIgU2xhdmUtTmFtZSAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNzQKK21zZ2lkICJzbGF2ZSBsaW5rIgorbXNnc3RyICJTbGF2ZS1MaW5rIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE3OAorIywgYy1mb3JtYXQKK21zZ2lkICJzbGF2ZSBsaW5rIHNhbWUgYXMgbWFpbiBsaW5rICVzIgorbXNnc3RyICJTbGF2ZS1MaW5rIGlzdCBkZXJzZWxiZSB3aWUgSGF1cHQtTGluayAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExODUgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHNsYXZlIGxpbmsgJXMiCittc2dzdHIgImRvcHBlbHRlciBTbGF2ZS1MaW5rICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIwNAorbXNnaWQgIm1hc3RlciBmaWxlIgorbXNnc3RyICJNYXN0ZXItRGF0ZWkiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjEzCisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBwYXRoICVzIgorbXNnc3RyICJkb3BwZWx0ZXIgUGZhZCAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImFsdGVybmF0aXZlICVzIChwYXJ0IG9mIGxpbmsgZ3JvdXAgJXMpIGRvZXNuJ3QgZXhpc3QuIFJlbW92aW5nIGZyb20gbGlzdCBvZiAiCisiYWx0ZXJuYXRpdmVzLiIKK21zZ3N0ciAiIgorIkFsdGVybmF0aXZlICVzIChUZWlsIGRlciBMaW5rLUdydXBwZSAlcykgZXhpc3RpZXJ0IG5pY2h0LlxuIgorIlNpZSB3aXJkIGF1cyBkZXIgTGlzdGUgZGVyIEFsdGVybmF0aXZlbiBlbnRmZXJudC4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjI5IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjQwCittc2dpZCAicHJpb3JpdHkiCittc2dzdHIgIlByaW9yaXTDpHQiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjMyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjQ5Cittc2dpZCAic2xhdmUgZmlsZSIKK21zZ3N0ciAiU2xhdmUtRGF0ZWkiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjQ0CisjLCBjLWZvcm1hdAorbXNnaWQgInByaW9yaXR5IG9mICVzOiAlcyIKK21zZ3N0ciAiUHJpb3JpdMOkdCB2b24gJXM6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI5NworbXNnaWQgInN0YXR1cyIKK21zZ3N0ciAiU3RhdHVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI5OQorbXNnaWQgImludmFsaWQgc3RhdHVzIgorbXNnc3RyICJ1bmfDvGx0aWdlciBTdGF0dXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzA0Cittc2dpZCAibWFzdGVyIGxpbmsiCittc2dzdHIgIk1hc3Rlci1MaW5rIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTM0OAorIywgYy1mb3JtYXQKK21zZ2lkICJkaXNjYXJkaW5nIG9ic29sZXRlIHNsYXZlIGxpbmsgJXMgKCVzKS4iCittc2dzdHIgIlZlcmFsdGV0ZXIgU2xhdmUtTGluayAlcyB3aXJkIHZlcndvcmZlbiAoJXMpLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MDIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NjkKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjM4Cittc2dpZCAiYXV0byBtb2RlIgorbXNnc3RyICJBdXRvLU1vZHVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU3OAorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MzkKK21zZ2lkICJtYW51YWwgbW9kZSIKK21zZ3N0ciAibWFudWVsbGVyIE1vZHVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwNQorIywgYy1mb3JtYXQKK21zZ2lkICIgIGxpbmsgY3VycmVudGx5IHBvaW50cyB0byAlcyIKK21zZ3N0ciAiICBMaW5rIHZlcndlaXN0IHp1ciBaZWl0IGF1ZiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MDgKK21zZ2lkICIgIGxpbmsgY3VycmVudGx5IGFic2VudCIKK21zZ3N0ciAiICBMaW5rIHp1ciBaZWl0IG5pY2h0IHZvcmhhbmRlbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgLSBwcmlvcml0eSAlZCIKK21zZ3N0ciAiJXMgLSBQcmlvcml0w6R0ICVkIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUxNQorIywgYy1mb3JtYXQKK21zZ2lkICIgIHNsYXZlICVzOiAlcyIKK21zZ3N0ciAiICBTbGF2ZSAlczogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTIyCisjLCBjLWZvcm1hdAorbXNnaWQgIkN1cnJlbnQgJ2Jlc3QnIHZlcnNpb24gaXMgJyVzJy4iCittc2dzdHIgIkdlZ2Vud8OkcnRpZyDCu2Jlc3RlwqsgVmVyc2lvbiBpc3Qgwrslc8KrLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MjQKK21zZ2lkICJObyB2ZXJzaW9ucyBhdmFpbGFibGUuIgorbXNnc3RyICJLZWluZSBWZXJzaW9uZW4gdmVyZsO8Z2Jhci4iCisKKyMgQ0hFQ0tNRTogYmVyZWl0c3RlbGx0IG9kZXIgYmVyZWl0c3RlbGxlbj8KKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTUzCisjLCBjLWZvcm1hdAorbXNnaWQgIlRoZXJlIGlzICVkIGNob2ljZSBmb3IgdGhlIGFsdGVybmF0aXZlICVzIChwcm92aWRpbmcgJXMpLiIKK21zZ2lkX3BsdXJhbCAiVGhlcmUgYXJlICVkIGNob2ljZXMgZm9yIHRoZSBhbHRlcm5hdGl2ZSAlcyAocHJvdmlkaW5nICVzKS4iCittc2dzdHJbMF0gIiIKKyJFcyBnaWJ0ICVkIEF1c3dhaGxtw7ZnbGljaGtlaXQgZsO8ciBkaWUgQWx0ZXJuYXRpdmUgJXMgKHdlbGNoZSAlcyAiCisiYmVyZWl0c3RlbGx0KS4iCittc2dzdHJbMV0gIiIKKyJFcyBnaWJ0ICVkIEF1c3dhaGxtw7ZnbGljaGtlaXRlbiBmw7xyIGRpZSBBbHRlcm5hdGl2ZSAlcyAod2VsY2hlICVzICIKKyJiZXJlaXRzdGVsbGVuKS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYwCittc2dpZCAiU2VsZWN0aW9uIgorbXNnc3RyICJBdXN3YWhsIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2MQorbXNnaWQgIlBhdGgiCittc2dzdHIgIlBmYWQiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYxCittc2dpZCAiUHJpb3JpdHkiCittc2dzdHIgIlByaW9yaXTDpHQiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYxCittc2dpZCAiU3RhdHVzIgorbXNnc3RyICJTdGF0dXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTgyCisjLCBjLWZvcm1hdAorbXNnaWQgIlByZXNzIGVudGVyIHRvIGtlZXAgdGhlIGN1cnJlbnQgY2hvaWNlWypdLCBvciB0eXBlIHNlbGVjdGlvbiBudW1iZXI6ICIKK21zZ3N0ciAiIgorIkRyw7xja2VuIFNpZSBkaWUgRWluZ2FiZXRhc3RlLCB1bSBkaWUgYWt0dWVsbGUgV2FobFsqXSBiZWl6dWJlaGFsdGVuLFxuIgorIm9kZXIgZ2ViZW4gU2llIGRpZSBBdXN3YWhsbnVtbWVyIGVpbjogIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTcyMQorIywgYy1mb3JtYXQKK21zZ2lkICJub3QgcmVwbGFjaW5nICVzIHdpdGggYSBsaW5rLiIKK21zZ3N0ciAiJXMgd2lyZCBuaWNodCBkdXJjaCBlaW5lbiBMaW5rIGVyc2V0enQuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTc2MgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW4ndCBpbnN0YWxsIHVua25vd24gY2hvaWNlICVzIgorbXNnc3RyICJVbmJla2FubnRlIEF1c3dhaGwgJXMga2FubiBuaWNodCBpbnN0YWxsaWVydCB3ZXJkZW4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNzgwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJza2lwIGNyZWF0aW9uIG9mICVzIGJlY2F1c2UgYXNzb2NpYXRlZCBmaWxlICVzIChvZiBsaW5rIGdyb3VwICVzKSBkb2Vzbid0ICIKKyJleGlzdC4iCittc2dzdHIgIiIKKyJFcnN0ZWxsdW5nIHZvbiAlcyB3aXJkIMO8YmVyc3BydW5nZW4sIHdlaWwgZGllIHp1Z2Vow7ZyaWdlIERhdGVpICVzIChkZXIgTGluay0iCisiR3J1cHBlICVzKSBuaWNodCBleGlzdGllcnQuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTc5MAorIywgYy1mb3JtYXQKK21zZ2lkICJub3QgcmVtb3ZpbmcgJXMgc2luY2UgaXQncyBub3QgYSBzeW1saW5rLiIKK21zZ3N0ciAiJXMgd2lyZCBuaWNodCBlbnRmZXJudCwgZGEgc2llIGtlaW4gU3ltbGluayBpc3QuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA0MSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA0NworIywgYy1mb3JtYXQKK21zZ2lkICJDYWxsICVzLiIKK21zZ3N0ciAiJXMgd2lyZCBhdWZnZXJ1ZmVuLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiQWx0ZXJuYXRpdmUgJXMgdW5jaGFuZ2VkIGJlY2F1c2UgY2hvaWNlICVzIGlzIG5vdCBhdmFpbGFibGUuIgorbXNnc3RyICJBbHRlcm5hdGl2ZSAlcyBuaWNodCB2ZXLDpG5kZXJ0LCB3ZWlsIEF1c3dhaGwgJXMgbmljaHQgdmVyZsO8Z2JhciBpc3QuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA1NQorIywgYy1mb3JtYXQKK21zZ2lkICJTa2lwIHVua25vd24gYWx0ZXJuYXRpdmUgJXMuIgorbXNnc3RyICJVbmJla2FubnRlIEFsdGVybmF0aXZlICVzIHdpcmQgw7xiZXJzcHJ1bmdlbi4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDc3CisjLCBjLWZvcm1hdAorbXNnaWQgImxpbmUgdG9vIGxvbmcgb3Igbm90IHRlcm1pbmF0ZWQgd2hpbGUgdHJ5aW5nIHRvIHJlYWQgJXMiCittc2dzdHIgIlplaWxlIHp1IGxhbmcgb2RlciBuaWNodCBiZWVuZGV0IGJlaW0gVmVyc3VjaCwgJXMgenUgbGVzZW4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDkwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTAzCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjExMworIywgYy1mb3JtYXQKK21zZ2lkICJTa2lwIGludmFsaWQgbGluZTogJXMiCittc2dzdHIgIlVuZ8O8bHRpZ2UgWmVpbGUgd2lyZCDDvGJlcnNwcnVuZ2VuOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVuYW1pbmcgJXMgbGluayBmcm9tICVzIHRvICVzLiIKK21zZ3N0ciAiJXMtTGluayB3aXJkIHZvbiAlcyBpbiAlcyB1bWJlbmFubnQuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE3MworIywgYy1mb3JtYXQKK21zZ2lkICJyZW5hbWluZyAlcyBzbGF2ZSBsaW5rIGZyb20gJXMgdG8gJXMuIgorbXNnc3RyICIlcy1TbGF2ZS1MaW5rIHdpcmQgdm9uICVzIGluICVzIHVtYmVuYW5udC4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTg5CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIG5hbWUgKCVzKSBtdXN0IG5vdCBjb250YWluICcvJyBhbmQgc3BhY2VzLiIKK21zZ3N0ciAiQWx0ZXJuYXRpdmVuLU5hbWUgKCVzKSBkYXJmIGtlaW4gwrsvwqsgb2RlciBMZWVyemVpY2hlbiBlbnRoYWx0ZW4uIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE5MworIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBsaW5rIGlzIG5vdCBhYnNvbHV0ZSBhcyBpdCBzaG91bGQgYmU6ICVzIgorbXNnc3RyICJBbHRlcm5hdGl2ZW4tTGluayBpc3QgbmljaHQgYWJzb2x1dCB3aWUgZXIgc2VpbiBzb2xsdGU6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE5NworIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBwYXRoIGlzIG5vdCBhYnNvbHV0ZSBhcyBpdCBzaG91bGQgYmU6ICVzIgorbXNnc3RyICJBbHRlcm5hdGl2ZW4tUGZhZCBpc3QgbmljaHQgYWJzb2x1dCB3aWUgZXIgc2VpbiBzb2xsdGU6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjIyNAorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBtYXN0ZXI6IGl0IGlzIGEgc2xhdmUgb2YgJXMiCittc2dzdHIgIkFsdGVybmF0aXZlICVzIGthbm4ga2VpbiBNYXN0ZXIgc2VpbjogU2llIGlzdCBlaW4gU2xhdmUgdm9uICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjIzMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI2NworIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBsaW5rICVzIGlzIGFscmVhZHkgbWFuYWdlZCBieSAlcy4iCittc2dzdHIgIkFsdGVybmF0aXZlbi1MaW5rICVzIHdpcmQgYmVyZWl0cyB2b24gJXMgdmVyd2FsdGV0LiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgcGF0aCAlcyBkb2Vzbid0IGV4aXN0LiIKK21zZ3N0ciAiQWx0ZXJuYXRpdmVuLVBmYWQgJXMgZXhpc3RpZXJ0IG5pY2h0LiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgc2xhdmUgb2YgJXM6IGl0IGlzIGEgbWFzdGVyIGFsdGVybmF0aXZlLiIKK21zZ3N0ciAiIgorIkFsdGVybmF0aXZlICVzIGthbm4ga2VpbiBTbGF2ZSB2b24gJXMgc2VpbjogU2llIGlzdCBlaW5lIE1hc3Rlci1BbHRlcm5hdGl2ZS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjU4CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlICVzIGNhbid0IGJlIHNsYXZlIG9mICVzOiBpdCBpcyBhIHNsYXZlIG9mICVzIgorbXNnc3RyICJBbHRlcm5hdGl2ZSAlcyBrYW5uIGtlaW4gU2xhdmUgdm9uICVzIHNlaW46IFNpZSBpc3QgZWluIFNsYXZlIHZvbiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgbGluayAlcyBpcyBhbHJlYWR5IG1hbmFnZWQgYnkgJXMgKHNsYXZlIG9mICVzKS4iCittc2dzdHIgIkFsdGVybmF0aXZlbi1MaW5rICVzIHdpcmQgYmVyZWl0cyB2b24gJXMgKFNsYXZlIHZvbiAlcykgdmVyd2FsdGV0LiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBhcmd1bWVudCBgJXMnIgorbXNnc3RyICJ1bmJla2FubnRlcyBBcmd1bWVudCDCuyVzwqsiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzQzCittc2dpZCAiLS1pbnN0YWxsIG5lZWRzIDxsaW5rPiA8bmFtZT4gPHBhdGg+IDxwcmlvcml0eT4iCittc2dzdHIgIi0taW5zdGFsbCBiZW7DtnRpZ3QgPExpbms+IDxOYW1lPiA8UGZhZD4gPFByaW9yaXTDpHQ+IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM0NiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM5NworbXNnaWQgIjxsaW5rPiBhbmQgPHBhdGg+IGNhbid0IGJlIHRoZSBzYW1lIgorbXNnc3RyICI8TGluaz4gdW5kIDxQZmFkPiBrw7ZubmVuIG5pY2h0IGlkZW50aXNjaCBzZWluIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM0OQorbXNnaWQgInByaW9yaXR5IG11c3QgYmUgYW4gaW50ZWdlciIKK21zZ3N0ciAiUHJpb3JpdMOkdCBtdXNzIGVpbmUgR2FuenphaGwgc2VpbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyA8bmFtZT4gPHBhdGg+IgorbXNnc3RyICItLSVzIGJlbsO2dGlndCA8TmFtZT4gPFBmYWQ+IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM3NgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIDxuYW1lPiIKK21zZ3N0ciAiLS0lcyBiZW7DtnRpZ3QgPE5hbWU+IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM4OAorbXNnaWQgIi0tc2xhdmUgb25seSBhbGxvd2VkIHdpdGggLS1pbnN0YWxsIgorbXNnc3RyICItLXNsYXZlIGlzdCBudXIgbWl0IC0taW5zdGFsbCBlcmxhdWJ0IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM5MAorbXNnaWQgIi0tc2xhdmUgbmVlZHMgPGxpbms+IDxuYW1lPiA8cGF0aD4iCittc2dzdHIgIi0tc2xhdmUgYmVuw7Z0aWd0IDxMaW5rPiA8TmFtZT4gPFBmYWQ+IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM5OQorIywgYy1mb3JtYXQKK21zZ2lkICJuYW1lICVzIGlzIGJvdGggcHJpbWFyeSBhbmQgc2xhdmUiCittc2dzdHIgIk5hbWUgJXMgaXN0IHNvd29obCBwcmltw6RyIGFscyBhdWNoIHNsYXZlIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQwMgorIywgYy1mb3JtYXQKK21zZ2lkICJsaW5rICVzIGlzIGJvdGggcHJpbWFyeSBhbmQgc2xhdmUiCittc2dzdHIgIkxpbmsgJXMgaXN0IHNvd29obCBwcmltw6RyIGFscyBhdWNoIHNsYXZlIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQyMgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGEgPGZpbGU+IGFyZ3VtZW50IgorbXNnc3RyICItLSVzIGJlbsO2dGlndCBlaW5lIERhdGVpIGFscyBBcmd1bWVudCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gYCVzJyIKK21zZ3N0ciAidW5iZWthbm50ZSBPcHRpb24gwrslc8KrIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQ1MworbXNnaWQgIiIKKyJuZWVkIC0tZGlzcGxheSwgLS1xdWVyeSwgLS1saXN0LCAtLWdldC1zZWxlY3Rpb25zLCAtLWNvbmZpZywgLS1zZXQsIC0tc2V0LSIKKyJzZWxlY3Rpb25zLCAtLWluc3RhbGwsIC0tcmVtb3ZlLCAtLWFsbCwgLS1yZW1vdmUtYWxsIG9yIC0tYXV0byIKK21zZ3N0ciAiIgorIi0tZGlzcGxheSwgLS1xdWVyeSwgLS1saXN0LCAtLWdldC1zZWxlY3Rpb25zLCAtLWNvbmZpZywgLS1zZXQsIC0tc2V0LSIKKyJzZWxlY3Rpb25zLFxuIgorIi0taW5zdGFsbCwgLS1yZW1vdmUsIC0tYWxsLCAtLXJlbW92ZS1hbGwgb2RlciAtLWF1dG8gd2lyZCBiZW7DtnRpZ3QiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDkwCittc2dpZCAiPHN0YW5kYXJkIGlucHV0PiIKK21zZ3N0ciAiPFN0YW5kYXJkZWluZ2FiZT4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTAwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTAzCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIGFsdGVybmF0aXZlcyBmb3IgJXMuIgorbXNnc3RyICJLZWluZSBBbHRlcm5hdGl2ZW4gZsO8ciAlcy4iCisKKyMgQ0hFQ0tNRTogaXQgLT4gwrtlcsKrIG9kZXIgwrtzaWXCqyAoU3ltbGluayBvZGVyIEFsdGVybmF0aXZlKT8KKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTMwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzLyVzIGlzIGRhbmdsaW5nLCBpdCB3aWxsIGJlIHVwZGF0ZWQgd2l0aCBiZXN0IGNob2ljZS4iCittc2dzdHIgIiVzLyVzIGlzdCBmcmVpaMOkbmdlbmQsIHdpcmQgbWl0IGRlciBiZXN0ZW4gQXVzd2FobCBha3R1YWxpc2llcnQuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUzNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXMvJXMgaGFzIGJlZW4gY2hhbmdlZCAobWFudWFsbHkgb3IgYnkgYSBzY3JpcHQpLiBTd2l0Y2hpbmcgdG8gbWFudWFsICIKKyJ1cGRhdGVzIG9ubHkuIgorbXNnc3RyICIiCisiJXMvJXMgd3VyZGUgZ2XDpG5kZXJ0IChtYW51ZWxsIG9kZXIgdm9uIGVpbmVtIFNrcmlwdCkuXG4iCisiRXMgd2lyZCB6dSBhdXNzY2hsaWXDn2xpY2ggbWFudWVsbGVuIEFrdHVhbGlzaWVydW5nZW4gdW1nZXNjaGFsdGV0LiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NDIKKyMsIGMtZm9ybWF0Cittc2dpZCAic2V0dGluZyB1cCBhdXRvbWF0aWMgc2VsZWN0aW9uIG9mICVzLiIKK21zZ3N0ciAiQXV0b21hdGlzY2hlIEF1c3dhaGwgdm9uICVzIHdpcmQgZWluZ2VyaWNodGV0LiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgZm9yICVzIG5vdCByZWdpc3RlcmVkLCBub3Qgc2V0dGluZy4iCittc2dzdHIgIkFsdGVybmF0aXZlICVzIGbDvHIgJXMgaXN0IG5pY2h0IHJlZ2lzdHJpZXJ0LCB3aXJkIG5pY2h0IGdlc2V0enQuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU1NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU2MworIywgYy1mb3JtYXQKK21zZ2lkICJUaGVyZSBpcyBubyBwcm9ncmFtIHdoaWNoIHByb3ZpZGVzICVzLiIKK21zZ3N0ciAiRXMgZ2lidCBrZWluIFByb2dyYW1tLCB3ZWxjaGVzICVzIGJlcmVpdHN0ZWxsdC4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTY1IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTc1Cittc2dpZCAiTm90aGluZyB0byBjb25maWd1cmUuIgorbXNnc3RyICJOaWNodHMgenUga29uZmlndXJpZXJlbi4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTczCisjLCBjLWZvcm1hdAorbXNnaWQgIlRoZXJlIGlzIG9ubHkgb25lIGFsdGVybmF0aXZlIGluIGxpbmsgZ3JvdXAgJXM6ICVzIgorbXNnc3RyICJFcyBnaWJ0IG51ciBlaW5lIEFsdGVybmF0aXZlIGluIExpbmstR3J1cHBlICVzOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1ODQKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgZm9yICVzIG5vdCByZWdpc3RlcmVkLCBub3QgcmVtb3ZpbmcuIgorbXNnc3RyICJBbHRlcm5hdGl2ZSAlcyBmw7xyICVzIGlzdCBuaWNodCByZWdpc3RyaWVydCwgd2lyZCBuaWNodCBlbnRmZXJudC4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTkyCisjLCBjLWZvcm1hdAorbXNnaWQgInJlbW92aW5nIG1hbnVhbGx5IHNlbGVjdGVkIGFsdGVybmF0aXZlIC0gc3dpdGNoaW5nICVzIHRvIGF1dG8gbW9kZSIKK21zZ3N0ciAiIgorIk1hbnVlbGwgYXVzZ2V3w6RobHRlIEFsdGVybmF0aXZlIHdpcmQgZW50ZmVybnQgLSBVbXNjaGFsdHVuZyB2b24gJXMgaW4gQXV0by0iCisiTW9kdXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjE3CisjLCBjLWZvcm1hdAorbXNnaWQgImF1dG9tYXRpYyB1cGRhdGVzIG9mICVzLyVzIGFyZSBkaXNhYmxlZCwgbGVhdmluZyBpdCBhbG9uZS4iCittc2dzdHIgIiIKKyJBdXRvbWF0aXNjaGUgQWt0dWFsaXNpZXJ1bmdlbiB2b24gJXMvJXMgc2luZCBkZWFrdGl2aWVydCwgd2lyZCBuaWNodCAiCisidmVyw6RuZGVydC4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjE5CisjLCBjLWZvcm1hdAorbXNnaWQgInRvIHJldHVybiB0byBhdXRvbWF0aWMgdXBkYXRlcyB1c2UgJyVzIC0tYXV0byAlcycuIgorbXNnc3RyICIiCisiVW0genUgYXV0b21hdGlzY2hlbiBBa3R1YWxpc2llcnVuZ2VuIHp1csO8Y2t6dWtlaHJlbixcbiIKKyJ2ZXJ3ZW5kZW4gU2llIMK7JXMgLS1hdXRvICVzwqsuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYzNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1c2luZyAlcyB0byBwcm92aWRlICVzICglcykgaW4gJXMuIgorbXNnc3RyICIlcyB3aXJkIHZlcndlbmRldCwgdW0gJXMgKCVzKSBpbSAlcyBiZXJlaXR6dXN0ZWxsZW4uIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjY0NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZm9yY2luZyByZWluc3RhbGxhdGlvbiBvZiBhbHRlcm5hdGl2ZSAlcyBiZWNhdXNlIGxpbmsgZ3JvdXAgJXMgaXMgYnJva2VuLiIKK21zZ3N0ciAiIgorIk5ldWluc3RhbGxhdGlvbiBkZXIgQWx0ZXJuYXRpdmUgJXMgaXN0IGVyend1bmdlbiwgd2VpbCBMaW5rZ3J1cHBlICVzIGRlZmVrdCAiCisiaXN0LiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY3VycmVudCBhbHRlcm5hdGl2ZSAlcyBpcyB1bmtub3duLCBzd2l0Y2hpbmcgdG8gJXMgZm9yIGxpbmsgZ3JvdXAgJXMuIgorbXNnc3RyICIiCisiQWt0dWVsbGUgQWx0ZXJuYXRpdmUgJXMgaXN0IHVuYmVrYW5udCwgTGlua2dydXBwZSAlcyB3aXJkIHp1ICVzIHVtZ2VzY2hhbHRldC4iCisKKyN+IG1zZ2lkICJpdCBpcyBhIG1hc3RlciBhbHRlcm5hdGl2ZS4iCisjfiBtc2dzdHIgIlNpZSBpc3QgZWluZSBNYXN0ZXItQWx0ZXJuYXRpdmUuIgorCisjfiBtc2dpZCAiaXQgaXMgYSBzbGF2ZSBvZiAlcyIKKyN+IG1zZ3N0ciAiU2llIGlzdCBlaW4gU2xhdmUgdm9uICVzIgorCisjfiBtc2dpZCAiY2Fubm90IHN0YXQgJXM6ICVzIgorI34gbXNnc3RyICLCuyVzwqsga2FubiBuaWNodCBtaXQgc3RhdCBhYmdlZnJhZ3Qgd2VyZGVuOiAlcyIKKworI34gbXNnaWQgInJlYWRsaW5rKCVzKSBmYWlsZWQ6ICVzIgorI34gbXNnc3RyICJyZWFkbGluayglcykgZmVobGdlc2NobGFnZW46ICVzIgorCisjfiBtc2dpZCAic2NhbiBvZiAlcyBmYWlsZWQ6ICVzIgorI34gbXNnc3RyICJFaW5sZXNlbiB2b24gJXMgZmVobGdlc2NobGFnZW46ICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWN1dGUgJXM6ICVzIgorI34gbXNnc3RyICJBdXNmw7xocmVuIHZvbiAlcyBmZWhsZ2VzY2hsYWdlbjogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gbWFrZSAlcyBhIHN5bWxpbmsgdG8gJXM6ICVzIgorI34gbXNnc3RyICIlcyBrYW5uIG5pY2h0IHp1IGVpbmVtIHN5bWJvbGlzY2hlbiBMaW5rIGF1ZiAlcyBnZW1hY2h0IHdlcmRlbjogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCAlcyBhcyAlczogJXMiCisjfiBtc2dzdHIgIiVzIGthbm4gbmljaHQgYWxzICVzIGluc3RhbGxpZXJ0IHdlcmRlbjogJXMiCisKKyN+IG1zZ2lkICJ3aGlsZSB3cml0aW5nICVzOiAlcyIKKyN+IG1zZ3N0ciAiRmVobGVyIGJlaW0gU2NocmVpYmVuIHZvbiAlczogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcmVhZCAlczogJXMiCisjfiBtc2dzdHIgIiVzIGthbm4gbmljaHQgZ2VsZXNlbiB3ZXJkZW46ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGNsb3NlICVzOiAlcyIKKyN+IG1zZ3N0ciAiJXMga2FubiBuaWNodCBnZXNjaGxvc3NlbiB3ZXJkZW46ICVzIgorCisjfiBtc2dpZCAiY2Fubm90IHdyaXRlICVzOiAlcyIKKyN+IG1zZ3N0ciAiJXMga2FubiBuaWNodCBnZXNjaHJpZWJlbiB3ZXJkZW46ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHVuYnVmZmVyIGAlLjI1NXMnIgorI34gbXNnc3RyICLCuyUuMjU1c8KrIGthbm4gbmljaHQgZW50cHVmZmVydCB3ZXJkZW4iCisKKyN+IG1zZ2lkICJwYXJ0IGZpbGUgYCUuMjUwcycgaGFzIHRyYWlsaW5nIGdhcmJhZ2UiCisjfiBtc2dzdHIgIlRlaWxkYXRlaSDCuyUuMjUwc8KrIGVudGjDpGx0IE3DvGxsIGFtIEVuZGUiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gY2hlY2sgZm9yIGV4aXN0ZW5jZSBvZiBgJS4yNTBzJyIKKyN+IG1zZ3N0ciAiRXhpc3Rlbnogdm9uIMK7JS4yNTBzwqsga2FubiBuaWNodCDDvGJlcnByw7xmdCB3ZXJkZW4iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gZGVsZXRlIGRpc2FwcGVhcmluZyBjb250cm9sIGluZm8gZmlsZSBgJS4yNTBzJyIKKyN+IG1zZ3N0ciAiIgorI34gIlZlcnNjaHdpbmRlbmRlIENvbnRyb2wtSW5mby1EYXRlaSDCuyUuMjUwc8KrIGthbm4gbmljaHQgZ2Vsw7ZzY2h0IHdlcmRlbiIKKworI34gbXNnaWQgIiIKKyN+ICIlcyBkZWJ1Z2dpbmcgb3B0aW9uLCAtLWRlYnVnPTxvY3RhbD4gb3IgLUQ8b2N0YWw+OlxuIgorI34gIlxuIgorI34gIiBudW1iZXIgIHJlZi4gaW4gc291cmNlICAgZGVzY3JpcHRpb25cbiIKKyN+ICIgICAgICAxICAgZ2VuZXJhbCAgICAgICAgICAgR2VuZXJhbGx5IGhlbHBmdWwgcHJvZ3Jlc3MgaW5mb3JtYXRpb25cbiIKKyN+ICIgICAgICAyICAgc2NyaXB0cyAgICAgICAgICAgSW52b2NhdGlvbiBhbmQgc3RhdHVzIG9mIG1haW50YWluZXIgc2NyaXB0c1xuIgorI34gIiAgICAgMTAgICBlYWNoZmlsZSAgICAgICAgICBPdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWRcbiIKKyN+ICIgICAgMTAwICAgZWFjaGZpbGVkZXRhaWwgICAgTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWRcbiIKKyN+ICIgICAgIDIwICAgY29uZmYgICAgICAgICAgICAgT3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZVxuIgorI34gIiAgICAyMDAgICBjb25mZmRldGFpbCAgICAgICBMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGVcbiIKKyN+ICIgICAgIDQwICAgZGVwY29uICAgICAgICAgICAgRGVwZW5kZW5jaWVzIGFuZCBjb25mbGljdHNcbiIKKyN+ICIgICAgNDAwICAgZGVwY29uZGV0YWlsICAgICAgTG90cyBvZiBkZXBlbmRlbmNpZXMvY29uZmxpY3RzIG91dHB1dFxuIgorI34gIiAgMTAwMDAgICB0cmlnZ2VycyAgICAgICAgICBUcmlnZ2VyIGFjdGl2YXRpb24gYW5kIHByb2Nlc3NpbmdcbiIKKyN+ICIgIDIwMDAwICAgdHJpZ2dlcnNkZXRhaWwgICAgTG90cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzXG4iCisjfiAiICA0MDAwMCAgIHRyaWdnZXJzc3R1cGlkICAgIFNpbGx5IGFtb3VudHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2Vyc1xuIgorI34gIiAgIDEwMDAgICB2ZXJ5dmVyYm9zZSAgICAgICBMb3RzIG9mIGRyaXZlbCBhYm91dCBlZyB0aGUgZHBrZy9pbmZvICIKKyN+ICJkaXJlY3RvcnlcbiIKKyN+ICIgICAyMDAwICAgc3R1cGlkbHl2ZXJib3NlICAgSW5zYW5lIGFtb3VudHMgb2YgZHJpdmVsXG4iCisjfiAiXG4iCisjfiAiRGVidWdnaW5nIG9wdGlvbnMgYXJlIGJlIG1peGVkIHVzaW5nIGJpdHdpc2Utb3IuXG4iCisjfiAiTm90ZSB0aGF0IHRoZSBtZWFuaW5ncyBhbmQgdmFsdWVzIGFyZSBzdWJqZWN0IHRvIGNoYW5nZS5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIiVzIERlYnVnLU9wdGlvbiwgLS1kZWJ1Zz08b2t0YWw+IG9kZXIgLUQ8b2t0YWw+OlxuIgorI34gIlxuIgorI34gIiBOdW1tZXIgIFJlZi4gaW4gUXVlbGxlICAgQmVzY2hyZWlidW5nXG4iCisjfiAiICAgICAgMSAgIGdlbmVyYWwgICAgICAgICAgIEFsbGdlbWVpbiBoaWxmcmVpY2hlICIKKyN+ICJGb3J0c2Nocml0dHNpbmZvcm1hdGlvbmVuXG4iCisjfiAiICAgICAgMiAgIHNjcmlwdHMgICAgICAgICAgIEF1ZnJ1ZiB1bmQgU3RhdHVzIHZvbiBCZXRyZXVlci1Ta3JpcHRlblxuIgorI34gIiAgICAgMTAgICBlYWNoZmlsZSAgICAgICAgICBBdXNnYWJlbiB6dSBqZWRlciB2ZXJhcmJlaXRldGVuIERhdGVpXG4iCisjfiAiICAgIDEwMCAgIGVhY2hmaWxlZGV0YWlsICAgIFZpZWxlIEF1c2dhYmVuIHp1IGplZGVyIHZlcmFyYmVpdGV0ZW4gRGF0ZWlcbiIKKyN+ICIgICAgIDIwICAgY29uZmYgICAgICAgICAgICAgQXVzZ2FiZW4genUgamVkZXIgS29uZmlndXJhdGlvbnNkYXRlaVxuIgorI34gIiAgICAyMDAgICBjb25mZmRldGFpbCAgICAgICBWaWVsZSBBdXNnYWJlbiB6dSBqZWRlciBLb25maWd1cmF0aW9uc2RhdGVpXG4iCisjfiAiICAgICA0MCAgIGRlcGNvbiAgICAgICAgICAgIEFiaMOkbmdpZ2tlaXRlbiB1bmQgS29sbGlzaW9uZW5cbiIKKyN+ICIgICAgNDAwICAgZGVwY29uZGV0YWlsICAgICAgVmllbGUgQXVzZ2FiZW4genUgQWJow6RuZ2lna2VpdGVuIHVuZCAiCisjfiAiS29sbGlzaW9uZW5cbiIKKyN+ICIgIDEwMDAwICAgdHJpZ2dlcnMgICAgICAgICAgVHJpZ2dlcmFrdGl2aWVydW5nIHVuZCAtdmVyYXJiZWl0dW5nXG4iCisjfiAiICAyMDAwMCAgIHRyaWdnZXJzZGV0YWlsICAgIFZpZWxlIEF1c2dhYmVuIGJlesO8Z2xpY2ggVHJpZ2dlclxuIgorI34gIiAgNDAwMDAgICB0cmlnZ2Vyc3N0dXBpZCAgICBBbGJlcm5lIE1lbmdlbiBhbiBBdXNnYWJlbiBiZXrDvGdsaWNoIFRyaWdnZXJcbiIKKyN+ICIgICAxMDAwICAgdmVyeXZlcmJvc2UgICAgICAgVmllbCBHZWZhc2VsIHouQi4genVtIGRwa2cvaW5mby1WZXJ6ZWljaG5pc1xuIgorI34gIiAgIDIwMDAgICBzdHVwaWRseXZlcmJvc2UgICBJcnJzaW5uaWdlIE1lbmdlbiB2b24gR2VmYXNlbFxuIgorI34gIlxuIgorI34gIkRlYnVnLU9wdGlvbmVuIHdlcmRlbiBkdXJjaCBiaXR3ZWlzZXMgT2RlciB6dXNhbW1lbmdlc2V0enQuXG4iCisjfiAiQmVhY2h0ZW4gU2llLCBkYXNzIHNpY2ggZGllIFdlcnRlIHVuZCBCZWRldXR1bmdlbiDDpG5kZXJuIGvDtm5uZW4uXG4iCisKKyN+IG1zZ2lkICIiCisjfiAiJXMgZm9yY2luZyBvcHRpb25zIC0gY29udHJvbCBiZWhhdmlvdXIgd2hlbiBwcm9ibGVtcyBmb3VuZDpcbiIKKyN+ICIgIHdhcm4gYnV0IGNvbnRpbnVlOiAgLS1mb3JjZS08dGhpbmc+LDx0aGluZz4sLi4uXG4iCisjfiAiICBzdG9wIHdpdGggZXJyb3I6ICAgIC0tcmVmdXNlLTx0aGluZz4sPHRoaW5nPiwuLi4gfCAtLW5vLWZvcmNlLSIKKyN+ICI8dGhpbmc+LC4uLlxuIgorI34gIiBGb3JjaW5nIHRoaW5nczpcbiIKKyN+ICIgIGFsbCBbIV0gICAgICAgICAgICAgICAgU2V0IGFsbCBmb3JjZSBvcHRpb25zXG4iCisjfiAiICBkb3duZ3JhZGUgWypdICAgICAgICAgIFJlcGxhY2UgYSBwYWNrYWdlIHdpdGggYSBsb3dlciB2ZXJzaW9uXG4iCisjfiAiICBjb25maWd1cmUtYW55ICAgICAgICAgIENvbmZpZ3VyZSBhbnkgcGFja2FnZSB3aGljaCBtYXkgaGVscCB0aGlzIG9uZVxuIgorI34gIiAgaG9sZCAgICAgICAgICAgICAgICAgICBQcm9jZXNzIGluY2lkZW50YWwgcGFja2FnZXMgZXZlbiB3aGVuIG9uIGhvbGRcbiIKKyN+ICIgIGJhZC1wYXRoICAgICAgICAgICAgICAgUEFUSCBpcyBtaXNzaW5nIGltcG9ydGFudCBwcm9ncmFtcywgcHJvYmxlbXMgIgorI34gImxpa2VseVxuIgorI34gIiAgbm90LXJvb3QgICAgICAgICAgICAgICBUcnkgdG8gKGRlKWluc3RhbGwgdGhpbmdzIGV2ZW4gd2hlbiBub3Qgcm9vdFxuIgorI34gIiAgb3ZlcndyaXRlICAgICAgICAgICAgICBPdmVyd3JpdGUgYSBmaWxlIGZyb20gb25lIHBhY2thZ2Ugd2l0aCBhbm90aGVyXG4iCisjfiAiICBvdmVyd3JpdGUtZGl2ZXJ0ZWQgICAgIE92ZXJ3cml0ZSBhIGRpdmVydGVkIGZpbGUgd2l0aCBhbiB1bmRpdmVydGVkICIKKyN+ICJ2ZXJzaW9uXG4iCisjfiAiICBiYWQtdmVyaWZ5ICAgICAgICAgICAgIEluc3RhbGwgYSBwYWNrYWdlIGV2ZW4gaWYgaXQgZmFpbHMgYXV0aGVudGljaXR5ICIKKyN+ICJjaGVja1xuIgorI34gIiAgZGVwZW5kcy12ZXJzaW9uIFshXSAgICBUdXJuIGRlcGVuZGVuY3kgdmVyc2lvbiBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzXG4iCisjfiAiICBkZXBlbmRzIFshXSAgICAgICAgICAgIFR1cm4gYWxsIGRlcGVuZGVuY3kgcHJvYmxlbXMgaW50byB3YXJuaW5nc1xuIgorI34gIiAgY29uZm5ldyBbIV0gICAgICAgICAgICBBbHdheXMgdXNlIHRoZSBuZXcgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHRcbiIKKyN+ICIgIGNvbmZvbGQgWyFdICAgICAgICAgICAgQWx3YXlzIHVzZSB0aGUgb2xkIGNvbmZpZyBmaWxlcywgZG9uJ3QgcHJvbXB0XG4iCisjfiAiICBjb25mZGVmIFshXSAgICAgICAgICAgIFVzZSB0aGUgZGVmYXVsdCBvcHRpb24gZm9yIG5ldyBjb25maWcgZmlsZXMgaWYgIgorI34gIm9uZVxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICBpcyBhdmFpbGFibGUsIGRvbid0IHByb21wdC4gSWYgbm8gZGVmYXVsdCBjYW4gYmUgIgorI34gImZvdW5kLFxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICB5b3Ugd2lsbCBiZSBwcm9tcHRlZCB1bmxlc3Mgb25lIG9mIHRoZSBjb25mb2xkICIKKyN+ICJvclxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICBjb25mbmV3IG9wdGlvbnMgaXMgYWxzbyBnaXZlblxuIgorI34gIiAgY29uZm1pc3MgWyFdICAgICAgICAgICBBbHdheXMgaW5zdGFsbCBtaXNzaW5nIGNvbmZpZyBmaWxlc1xuIgorI34gIiAgY29uZmFzayBbIV0gICAgICAgICAgICBPZmZlciB0byByZXBsYWNlIGNvbmZpZyBmaWxlcyB3aXRoIG5vIG5ldyAiCisjfiAidmVyc2lvbnNcbiIKKyN+ICIgIGJyZWFrcyBbIV0gICAgICAgICAgICAgSW5zdGFsbCBldmVuIGlmIGl0IHdvdWxkIGJyZWFrIGFub3RoZXIgcGFja2FnZVxuIgorI34gIiAgY29uZmxpY3RzIFshXSAgICAgICAgICBBbGxvdyBpbnN0YWxsYXRpb24gb2YgY29uZmxpY3RpbmcgcGFja2FnZXNcbiIKKyN+ICIgIGFyY2hpdGVjdHVyZSBbIV0gICAgICAgUHJvY2VzcyBldmVuIHBhY2thZ2VzIHdpdGggd3Jvbmcgb3Igbm8gIgorI34gImFyY2hpdGVjdHVyZVxuIgorI34gIiAgb3ZlcndyaXRlLWRpciBbIV0gICAgICBPdmVyd3JpdGUgb25lIHBhY2thZ2UncyBkaXJlY3Rvcnkgd2l0aCBhbm90aGVyJ3MgIgorI34gImZpbGVcbiIKKyN+ICIgIHVuc2FmZS1pbyBbIV0gICAgICAgICAgRG8gbm90IHBlcmZvcm0gc2FmZSBJL08gb3BlcmF0aW9ucyB3aGVuICIKKyN+ICJ1bnBhY2tpbmdcbiIKKyN+ICIgIHJlbW92ZS1yZWluc3RyZXEgWyFdICAgUmVtb3ZlIHBhY2thZ2VzIHdoaWNoIHJlcXVpcmUgaW5zdGFsbGF0aW9uXG4iCisjfiAiICByZW1vdmUtZXNzZW50aWFsIFshXSAgIFJlbW92ZSBhbiBlc3NlbnRpYWwgcGFja2FnZVxuIgorI34gIlxuIgorI34gIldBUk5JTkcgLSB1c2Ugb2Ygb3B0aW9ucyBtYXJrZWQgWyFdIGNhbiBzZXJpb3VzbHkgZGFtYWdlIHlvdXIgIgorI34gImluc3RhbGxhdGlvbi5cbiIKKyN+ICJGb3JjaW5nIG9wdGlvbnMgbWFya2VkIFsqXSBhcmUgZW5hYmxlZCBieSBkZWZhdWx0LlxuIgorI34gbXNnc3RyICIiCisjfiAiJXMtT3B0aW9uZW4genVtIEVyendpbmdlbiAtIFZlcmhhbHRlbiBzdGV1ZXJuLCB3ZW5uIFByb2JsZW1lIGdlZnVuZGVuICIKKyN+ICJ3ZXJkZW46XG4iCisjfiAiICBXYXJuZW4gYWJlciBmb3J0c2V0emVuOiAtLWZvcmNlLTxEaW5nPiw8RGluZz4sLi4uXG4iCisjfiAiICBNaXQgRmVobGVyIGFuaGFsdGVuOiAgICAtLXJlZnVzZS08RGluZz4sPERpbmc+LC4uLiB8IC0tbm8tZm9yY2UtIgorI34gIjxEaW5nPiwuLi5cbiIKKyN+ICIgRGluZ2UgZXJ6d2luZ2VuOlxuIgorI34gIiAgYWxsIFshXSAgICAgICAgICAgICAgICBBbGxlIE9wdGlvbmVuIHp1bSBFcnp3aW5nZW4gc2V0emVuXG4iCisjfiAiICBkb3duZ3JhZGUgWypdICAgICAgICAgIFBha2V0IGR1cmNoIGVpbmUgbmllZHJpZ2VyZSBWZXJzaW9uIGVyc2V0emVuXG4iCisjfiAiICBjb25maWd1cmUtYW55ICAgICAgICAgIEplZGVzIFBha2V0IGtvbmZpZ3VyaWVyZW4sIGRhcyBkaWVzZW0gaGVsZmVuICIKKyN+ICJrw7ZubnRlXG4iCisjfiAiICBob2xkICAgICAgICAgICAgICAgICAgIE5lYmVuc8OkY2hsaWNoZSBQYWtldGUgYmVhcmJlaXRlbiwgYXVjaCB3ZW5uIGF1ZiAiCisjfiAiwrtoYWx0ZW7Cq1xuIgorI34gIiAgYmFkLXBhdGggICAgICAgICAgICAgICBXaWNodGlnZSBQcm9ncmFtbWUgbmljaHQgaW4gUEFUSCwgUHJvYmxlbWUgIgorI34gIndhaHJzY2guXG4iCisjfiAiICBub3Qtcm9vdCAgICAgICAgICAgICAgIERpbmdlIHZlcnN1Y2hlbiB6dSAoZGUpaW5zdGFsbGllcmVuLCBzZWxic3QgIgorI34gIndlbm5cbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICBuaWNodCByb290XG4iCisjfiAiICBvdmVyd3JpdGUgICAgICAgICAgICAgIERhdGVpIGVpbmVzIGFuZGVyZW4gUGFrZXRzIMO8YmVyc2NocmVpYmVuXG4iCisjfiAiICBvdmVyd3JpdGUtZGl2ZXJ0ZWQgICAgIFVtZ2VsZWl0ZXRlIERhdGVpIG1pdCBlaW5lciBuaWNodCB1bWdlbGVpdGV0ZW5cbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICBWZXJzaW9uIMO8YmVyc2NocmVpYmVuXG4iCisjfiAiICBiYWQtdmVyaWZ5ICAgICAgICAgICAgIFBha2V0IGluc3RhbGxpZXJlbiwgc2VsYnN0IHdlbm4gQXV0aGVudGl6aXTDpHRzLVxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgIMO8YmVycHLDvGZ1bmcgbWlzc2xpbmd0XG4iCisjfiAiICBkZXBlbmRzLXZlcnNpb24gWyFdICAgIFZlcnNpb25zYWJow6RuZ2lna2VpdHNwcm9ibGVtZSBpbiBXYXJudW5nZW4gIgorI34gInVtd2FuZGVsblxuIgorI34gIiAgZGVwZW5kcyBbIV0gICAgICAgICAgICBBbGxlIEFiaMOkbmdpZ2tlaXRzcHJvYmxlbWUgaW4gV2FybnVuZ2VuICIKKyN+ICJ1bXdhbmRlbG5cbiIKKyN+ICIgIGNvbmZuZXcgWyFdICAgICAgICAgICAgSW1tZXIgbmV1ZSBLb25mLi1EYXRlaWVuIHZlcndlbmRlbiwgbmljaHQgIgorI34gIm5hY2hmcmFnZW5cbiIKKyN+ICIgIGNvbmZvbGQgWyFdICAgICAgICAgICAgSW1tZXIgYWx0ZSBLb25mLi1EYXRlaWVuIHZlcndlbmRlbiwgbmljaHQgIgorI34gIm5hY2hmcmFnZW5cbiIKKyN+ICIgIGNvbmZkZWYgWyFdICAgICAgICAgICAgVm9yZ2FiZSBmw7xyIG5ldWUgS29uZi4tRGF0ZWllbiBiZW51dHplbiwgd2VubiBlcyAiCisjfiAiZWluZVxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGdpYnQsIG5pY2h0IG5hY2hmcmFnZW4uIFdlbm4gVm9yZ2FiZW4gbmljaHRcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICBnZWZ1bmRlbiB3ZXJkZW4ga8O2bm5lbiwgbmFjaGZyYWdlbiwgYXXDn2VyICIKKyN+ICJjb25mb2xkXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgb2RlciBjb25mbmV3IGlzdCBhdWNoIGFuZ2VnZWJlbi5cbiIKKyN+ICIgIGNvbmZtaXNzIFshXSAgICAgICAgICAgSW1tZXIgZmVobGVuZGUgS29uZi4tRGF0ZWllbiBpbnN0YWxsaWVyZW5cbiIKKyN+ICIgIGNvbmZhc2sgWyFdICAgICAgICAgICAgQW5iaWV0ZW4sIEtvbmYuLURhdGVpZW4gZHVyY2ggbmljaHQgbmV1ZSAiCisjfiAiVmVyc2lvbmVuXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgenUgZXJzZXR6ZW5cbiIKKyN+ICIgIGJyZWFrcyBbIV0gICAgICAgICAgICAgSW5zdGFsbGllcmVuLCBzZWxic3Qgd2VubiBlcyBhbmRlcmUgUGFrZXRlXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgYmVzY2jDpGRpZ3QuXG4iCisjfiAiICBjb25mbGljdHMgWyFdICAgICAgICAgIEluc3RhbGxhdGlvbiBrb2xsaWRpZXJlbmRlciBQYWtldGUgZXJsYXViZW5cbiIKKyN+ICIgIGFyY2hpdGVjdHVyZSBbIV0gICAgICAgU2VsYnN0IFBha2V0ZSBtaXQgZmFsc2NoZXIgb2RlciBmZWhsZW5kZXIgIgorI34gIkFyY2hpdGVrdHVyXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgYmVhcmJlaXRlblxuIgorI34gIiAgb3ZlcndyaXRlLWRpciBbIV0gICAgICBWZXJ6ZWljaG5pcyBlaW5lcyBQYWtldHMgbWl0IERhdGVpIGVpbmVzXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgYW5kZXJlbiDDvGJlcnNjaHJlaWJlblxuIgorI34gIiAgdW5zYWZlLWlvIFshXSAgICAgICAgICBCZWltIEVudHBhY2tlbiBrZWluZSBzaWNoZXJlbiBFaW4vQXVzZ2FiZS0iCisjfiAiT3BlcmF0aW9uZW5cbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICBkdXJjaGbDvGhyZW5cbiIKKyN+ICIgIHJlbW92ZS1yZWluc3RyZXEgWyFdICAgUGFrZXRlIGVudGZlcm5lbiwgZGllIEluc3RhbGxhdGlvbiBlcmZvcmRlcm5cbiIKKyN+ICIgIHJlbW92ZS1lc3NlbnRpYWwgWyFdICAgRWluIGVzc2VuemllbGxlcyBQYWtldCBlbnRmZXJuZW5cbiIKKyN+ICJcbiIKKyN+ICJXQVJOVU5HIC0gQW53ZW5kZW4gZGVyIG1pdCBbIV0gbWFya2llcnRlbiBPcHRpb25lbiBrYW5uIElocmUgIgorI34gIkluc3RhbGxhdGlvblxuIgorI34gInNjaHdlciBiZXNjaMOkZGlnZW4uIE1pdCBbKl0gbWFya2llcnRlIE9wdGlvbmVuIHNpbmQgcGVyIFZvcmdhYmUgIgorI34gImFrdGl2aWVydC5cbiIKKworI34gbXNnaWQgInNpemUgJTdkIG9jY3VycyAlNWQgdGltZXNcbiIKKyN+IG1zZ3N0ciAiR3LDtsOfZSAlN2QgdGF1Y2h0ICU1ZC1tYWwgYXVmXG4iCisKKyN+IG1zZ2lkICJvdXQgb2YgbWVtb3J5IHB1c2hpbmcgZXJyb3IgaGFuZGxlcjogIgorI34gbXNnc3RyICJadSB3ZW5pZyBTcGVpY2hlciBmw7xyIGRpZSBGZWhsZXJiZWhhbmRsdW5nOiAiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gdW5sb2NrIGRwa2cgc3RhdHVzIGRhdGFiYXNlIgorI34gbXNnc3RyICJTcGVycmUgZGVyIGRwa2ctU3RhdHVzLURhdGVuYmFuayBrYW5uIG5pY2h0IGF1ZmdlaG9iZW4gd2VyZGVuIgorCisjfiBtc2dpZCAiY29weSBpbmZvIGZpbGUgYCUuMjU1cyciCisjfiBtc2dzdHIgIktvcGllcmVuIGRlciBJbmZvLURhdGVpIMK7JS4yNTVzwqsiCisKKyN+IG1zZ2lkICJwYXJzZSBlcnJvciIKKyN+IG1zZ3N0ciAiRmVobGVyIGJlaW0gUGFyc2VuIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHdyaXRlIHBhcnNpbmcgd2FybmluZyIKKyN+IG1zZ3N0ciAiU2NocmVpYmVuIGRlciBQYXJzZS1XYXJudW5nIGZlaGxnZXNjaGxhZ2VuIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGxvY2sgdHJpZ2dlcnMgYXJlYSIKKyN+IG1zZ3N0ciAiVHJpZ2dlcmJlcmVpY2gga2FubiBuaWNodCBnZXNwZXJydCB3ZXJkZW4iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gcnVuICVzICglLjI1MHMpIgorI34gbXNnc3RyICJBdXNmw7xocmVuIHZvbiAlcyAoJS4yNTBzKSBmZWhsZ2VzY2hsYWdlbiIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIHNoZWxsICglLjI1MHMpIgorI34gbXNnc3RyICJBdXNmw7xocmVuIGRlciBTaGVsbCAoJS4yNTBzKSBmZWhsZ2VzY2hsYWdlbiIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIHJtIGZvciBjbGVhbnVwIgorI34gbXNnc3RyICJBdXNmw7xocmVuIHZvbiBybSB6dW0gQXVmcsOkdW1lbiBmZWhsZ2VzY2hsYWdlbiIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIGRwa2ctc3BsaXQgdG8gc2VlIGlmIGl0J3MgcGFydCBvZiBhIG11bHRpcGFydGVyIgorI34gbXNnc3RyICIiCisjfiAiQXVzZsO8aHJlbiB2b24gZHBrZy1zcGxpdCBmZWhsZ2VzY2hsYWdlbiwgdW0gZmVzdHp1c3RlbGxlbiwgb2IgZXMgVGVpbCAiCisjfiAiZWluZXMgTWVocnRlaWxlcnMgaXN0IgorCisjCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWNsIGRlYnNpZy12ZXJpZnkiCisjfiBtc2dzdHIgImV4ZWNsIHZvbiBkZWJzaWctdmVyaWZ5IGZlaGxnZXNjaGxhZ2VuIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgZHBrZy1kZWIgdG8gZXh0cmFjdCBjb250cm9sIGluZm9ybWF0aW9uIgorI34gbXNnc3RyICIiCisjfiAiQXVzZsO8aHJlbiB2b24gZHBrZy1kZWIgZmVobGdlc2NobGFnZW4sIHVtIENvbnRyb2wtSW5mb3JtYXRpb25lbiB6dSAiCisjfiAiZXh0cmFoaWVyZW4iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gZXhlYyBkcGtnLWRlYiB0byBnZXQgZmlsZXN5c3RlbSBhcmNoaXZlIgorI34gbXNnc3RyICIiCisjfiAiZHBrZy1kZWIga2FubiBuaWNodCBhdXNnZWbDvGhydCB3ZXJkZW4sIHVtIERhdGVpc3lzdGVtLUFyY2hpdiB6dSBlcmhhbHRlbiIKKworI34gbXNnaWQgImRwa2c6ICVzIG5vdCBmb3VuZC5cbiIKKyN+IG1zZ3N0ciAiZHBrZzogJXMgbmljaHQgZ2VmdW5kZW4uXG4iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gLi4uL0RFQklBTiIKKyN+IG1zZ3N0ciAiV2VjaHNlbCBpbiBkYXMgVmVyemVpY2huaXMgLi4uL0RFQklBTiBmZWhsZ2VzY2hsYWdlbiIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIHRhciAtY2YiCisjfiBtc2dzdHIgIkF1c2bDvGhyZW4gdm9uIMK7dGFyIC1jZsKrIGZlaGxnZXNjaGxhZ2VuIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIG1ha2UgdG1wZmlsZSAoY29udHJvbCkiCisjfiBtc2dzdHIgIkVyc3RlbGxlbiB2b24gdGVtcG9yw6RyZXIgRGF0ZWkgZmVobGdlc2NobGFnZW4gKGNvbnRyb2wpIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHVubGluayB0bXBmaWxlIChjb250cm9sKSwgJXMiCisjfiBtc2dzdHIgInVubGluayB2b24gdGVtcG9yw6RyZXIgRGF0ZWkgZmVobGdlc2NobGFnZW4gKGNvbnRyb2wpLCAlcyIKKworI34gbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdG1wZmlsZSAoY29udHJvbCkiCisjfiBtc2dzdHIgIlp1csO8Y2tzZXR6ZW4gdm9uIHRlbXBvcsOkcmVyIERhdGVpIGZlaGxnZXNjaGxhZ2VuIChjb250cm9sKSIKKworI34gbXNnaWQgImZhaWxlZCB0byBmc3RhdCB0bXBmaWxlIChjb250cm9sKSIKKyN+IG1zZ3N0ciAiQWJmcmFnZW4gdGVtcG9yw6RyZXIgRGF0ZWkgbWl0IGZzdGF0IGZlaGxnZXNjaGxhZ2VuIChjb250cm9sKSIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIGZpbmQiCisjfiBtc2dzdHIgIkF1c2bDvGhyZW4gdm9uIGZpbmQgZmVobGdlc2NobGFnZW4iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBzaCAtYyBtdiBmb28vKiAmYyIKKyN+IG1zZ3N0ciAiQXVzZsO8aHJlbiB2b24gwrtzaCAtYyBtdiBmb28vKiAmY8KrIGZlaGxnZXNjaGxhZ2VuIgorCisjfiBtc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gJS4yNTBzIGxlbmd0aCBjb250YWlucyBudWxscyIKKyN+IG1zZ3N0ciAiRGF0ZWkgwrslLjI1MHPCqyBpc3QgZGVmZWt0IC0gJS4yNTBzIEzDpG5nZSBlbnRow6RsdCBOdWxsZW4iCisKKyMKKyN+IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBuZWdhdGl2ZSBtZW1iZXIgbGVuZ3RoICV6aSIKKyN+IG1zZ3N0ciAiRGF0ZWkgwrslLjI1MHPCqyBpc3QgZGVmZWt0IC0gbmVnYXRpdmUgRWxlbWVudGzDpG5nZSAlemkiCisKKyN+IG1zZ2lkICJmYWlsZWQgZ2V0dGluZyB0aGUgY3VycmVudCBmaWxlIHBvc2l0aW9uIgorI34gbXNnc3RyICJFcmhhbHRlbiBkZXIgYWt0dWVsbGVuIFBvc2l0aW9uIGluIGRlciBEYXRlaSBmZWhsZ2VzY2hsYWdlbiIKKworI34gbXNnaWQgImZhaWxlZCBzZXR0aW5nIHRoZSBjdXJyZW50IGZpbGUgcG9zaXRpb24iCisjfiBtc2dzdHIgIlNldHplbiBkZXIgYWt0dWVsbGVuIFBvc2l0aW9uIGluIGRlciBEYXRlaSBmZWhsZ2VzY2hsYWdlbiIKKworI34gbXNnaWQgInZlcnNpb24gbnVtYmVyIgorI34gbXNnc3RyICJWZXJzaW9uc251bW1lciIKKworI34gbXNnaWQgIm1lbWJlciBsZW5ndGgiCisjfiBtc2dzdHIgIk1pdGdsaWVkLUzDpG5nZSIKKworI34gbXNnaWQgImhlYWRlciBpbmZvIG1lbWJlciIKKyN+IG1zZ3N0ciAiS29wZnplaWxlbi1JbmZvLUVsZW1lbnQiCisKKyN+IG1zZ2lkICJza2lwcGVkIGNvbnRyb2wgYXJlYSBmcm9tICVzIgorI34gbXNnc3RyICJDb250cm9sLUJlcmVpY2ggdm9uICVzIGF1c2dlbGFzc2VuIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSB0ZW1wb3JhcnkgZGlyZWN0b3J5IgorI34gbXNnc3RyICJBbmxlZ2VuIGVpbmVzIHRlbXBvcsOkcmVuIFZlcnplaWNobmlzc2VzIGZlaGxnZXNjaGxhZ2VuIgorCisjfiBtc2dpZCAiaW5mb19zcGV3IgorI34gbXNnc3RyICJpbmZvX3NwZXciCisKKyN+IG1zZ2lkICJpbmZvIGxlbmd0aCIKKyN+IG1zZ3N0ciAiSW5mby1Mw6RuZ2UiCisKKyN+IG1zZ2lkICJ0b3RhbCBsZW5ndGgiCisjfiBtc2dzdHIgIkdlc2FtdGzDpG5nZSIKKworI34gbXNnaWQgImRhdGEgbGVuZ3RoIgorI34gbXNnc3RyICJEYXRlbi1Mw6RuZ2UiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBkcGtnLWRlYiB0byBleHRyYWN0IGZpZWxkIHZhbHVlIgorI34gbXNnc3RyICJBdXNmw7xocmVuIHZvbiBkcGtnLWRlYiBmZWhsZ2VzY2hsYWdlbiwgdW0gRmVsZHdlcnQgenUgZXh0cmFoaWVyZW4iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gc3RhdCAlczogJXMiCisjfiBtc2dzdHIgIiVzIGthbm4gbmljaHQgbWl0IHN0YXQgYWJnZWZyYWd0IHdlcmRlbjogJXMiCisKKyN+IG1zZ2lkICJzbGF2ZSBuYW1lICVzIGR1cGxpY2F0ZWQiCisjfiBtc2dzdHIgImRvcHBlbHRlciBTbGF2ZS1OYW1lICVzIgorCisjfiBtc2dpZCAic2xhdmUgbGluayAlcyBkdXBsaWNhdGVkIgorI34gbXNnc3RyICJkb3BwZWx0ZXIgU2xhdmUtTGluayAlcyIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvcG8vZHBrZy5wb3QgYi9kcGtnLTEuMTYuMS4xL3BvL2Rwa2cucG90Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjRmNzQ2ZmYKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3BvL2Rwa2cucG90CkBAIC0wLDAgKzEsNTM5NyBAQAorIyBTT01FIERFU0NSSVBUSVZFIFRJVExFLgorIyBDb3B5cmlnaHQgKEMpIFlFQVIgU29mdHdhcmUgaW4gdGhlIFB1YmxpYyBJbnRlcmVzdCwgSW5jLgorIyBUaGlzIGZpbGUgaXMgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIHNhbWUgbGljZW5zZSBhcyB0aGUgUEFDS0FHRSBwYWNrYWdlLgorIyBGSVJTVCBBVVRIT1IgPEVNQUlMQEFERFJFU1M+LCBZRUFSLgorIworIywgZnV6enkKK21zZ2lkICIiCittc2dzdHIgIiIKKyJQcm9qZWN0LUlkLVZlcnNpb246IGRwa2cgMS4xNi4xLjFcbiIKKyJSZXBvcnQtTXNnaWQtQnVncy1UbzogZGViaWFuLWRwa2dAbGlzdHMuZGViaWFuLm9yZ1xuIgorIlBPVC1DcmVhdGlvbi1EYXRlOiAyMDExLTEwLTE0IDA3OjExKzAyMDBcbiIKKyJQTy1SZXZpc2lvbi1EYXRlOiBZRUFSLU1PLURBIEhPOk1JK1pPTkVcbiIKKyJMYXN0LVRyYW5zbGF0b3I6IEZVTEwgTkFNRSA8RU1BSUxAQUREUkVTUz5cbiIKKyJMYW5ndWFnZS1UZWFtOiBMQU5HVUFHRSA8TExAbGkub3JnPlxuIgorIkxhbmd1YWdlOiBcbiIKKyJNSU1FLVZlcnNpb246IDEuMFxuIgorIkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD1VVEYtOFxuIgorIkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXRcbiIKKyJQbHVyYWwtRm9ybXM6IG5wbHVyYWxzPUlOVEVHRVI7IHBsdXJhbD1FWFBSRVNTSU9OO1xuIgorCisjOiBsaWIvZHBrZy9hci5jOjY2CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgY2hhcmFjdGVyICclYycgaW4gYXJjaGl2ZSAnJS4yNTBzJyBtZW1iZXIgJyUuMTZzJyBzaXplIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2FyLmM6ODEgbGliL2Rwa2cvYXIuYzo5NyBsaWIvZHBrZy9hci5jOjEwOCBsaWIvZHBrZy9hci5jOjExMgorIzogbGliL2Rwa2cvYXIuYzoxMzQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIGZpbGUgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9hci5jOjk0CisjLCBjLWZvcm1hdAorbXNnaWQgImdlbmVyYXRlZCBjb3JydXB0IGFyIGhlYWRlciBmb3IgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9hci5jOjEyMworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgYXIgbWVtYmVyIGZpbGUgKCVzKSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9hci5jOjEzMAorIywgYy1mb3JtYXQKK21zZ2lkICJhciBtZW1iZXIgZmlsZSAoJXMpIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2J1ZmZlci5jOjE5NgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCBvbiBidWZmZXIgY29weSBmb3IgJXMiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvYnVmZmVyLmM6MjEyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCBpbiB3cml0ZSBvbiBidWZmZXIgY29weSBmb3IgJXMiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvYnVmZmVyLmM6MjIwCisjLCBjLWZvcm1hdAorbXNnaWQgInNob3J0IHJlYWQgb24gYnVmZmVyIGNvcHkgZm9yICVzIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2J1ZmZlci5jOjI4OAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gc2VlayAlcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9jb21tYW5kLmM6MTc4IGxpYi9kcGtnL2NvbW1hbmQuYzoyMDQgc3JjL2hlbHAuYzo2MjEKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTggc3JjL3Byb2Nlc3NhcmMuYzoxMzggc3JjL3Byb2Nlc3NhcmMuYzo0MzIKKyM6IHNyYy9wcm9jZXNzYXJjLmM6ODM5IGRwa2ctZGViL2J1aWxkLmM6NDU5IGRwa2ctZGViL2J1aWxkLmM6NTM4CisjOiBkcGtnLWRlYi9idWlsZC5jOjU2MSBkcGtnLWRlYi9leHRyYWN0LmM6MzE3IGRwa2ctZGViL2luZm8uYzo2NQorIzogZHBrZy1zcGxpdC9zcGxpdC5jOjY5IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo0NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGV4ZWN1dGUgJXMgKCVzKSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBkZWNvbXByZXNzaW9uIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6ODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGNvbXByZXNzaW9uIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTEyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvciBiaW5kaW5nIGlucHV0IHRvIGd6aXAgc3RyZWFtIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHJlYWQgZXJyb3I6ICclcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxMzIgbGliL2Rwa2cvY29tcHJlc3MuYzoxMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgd3JpdGUgZXJyb3IiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yIGJpbmRpbmcgb3V0cHV0IHRvIGd6aXAgc3RyZWFtIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTU3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHJlYWQgZXJyb3IiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxNjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgd3JpdGUgZXJyb3I6ICclcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgd3JpdGUgZXJyb3I6ICVzIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjIwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvciBiaW5kaW5nIGlucHV0IHRvIGJ6aXAyIHN0cmVhbSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjIzMgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgcmVhZCBlcnJvcjogJyVzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI0MCBsaWIvZHBrZy9jb21wcmVzcy5jOjI0NCBsaWIvZHBrZy9jb21wcmVzcy5jOjI5NAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgd3JpdGUgZXJyb3IiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yIGJpbmRpbmcgb3V0cHV0IHRvIGJ6aXAyIHN0cmVhbSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI2NQorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgcmVhZCBlcnJvciIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI3NSBsaWIvZHBrZy9jb21wcmVzcy5jOjI4NgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgd3JpdGUgZXJyb3I6ICclcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyODIKK21zZ2lkICJ1bmV4cGVjdGVkIGJ6aXAyIGVycm9yIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVwZGF0ZXMgZGlyZWN0b3J5IGNvbnRhaW5zIGZpbGUgYCUuMjUwcycgd2hvc2UgbmFtZSBpcyB0b28gbG9uZyAobGVuZ3RoPSVkLCAiCisibWF4PSVkKSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1cGRhdGVzIGRpcmVjdG9yeSBjb250YWlucyBmaWxlcyB3aXRoIGRpZmZlcmVudCBsZW5ndGggbmFtZXMgKGJvdGggJWQgYW5kICVkKSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjg2CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzY2FuIHVwZGF0ZXMgZGlyZWN0b3J5IGAlLjI1NXMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZW1vdmUgaW5jb3Jwb3JhdGVkIHVwZGF0ZSBmaWxlICUuMjU1cyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEyMSBkcGtnLWRlYi9idWlsZC5jOjQ0NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGAlLjI1NXMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTI1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmaWxsICUuMjUwcyB3aXRoIHBhZGRpbmciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxMjcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoICUuMjUwcyBhZnRlciBwYWRkaW5nIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTI5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWVrIHRvIHN0YXJ0IG9mICUuMjUwcyBhZnRlciBwYWRkaW5nIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTk1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIGxvY2sgZmlsZSAlcyBmb3IgdGVzdGluZyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjIyMQorbXNnaWQgInVuYWJsZSB0byBvcGVuL2NyZWF0ZSBzdGF0dXMgZGF0YWJhc2UgbG9ja2ZpbGUiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyMzEKK21zZ2lkICJ5b3UgZG8gbm90IGhhdmUgcGVybWlzc2lvbiB0byBsb2NrIHRoZSBkcGtnIHN0YXR1cyBkYXRhYmFzZSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjIzMworbXNnaWQgImRwa2cgc3RhdHVzIGRhdGFiYXNlIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjU3Cittc2dpZCAicmVxdWVzdGVkIG9wZXJhdGlvbiByZXF1aXJlcyBzdXBlcnVzZXIgcHJpdmlsZWdlIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjYyCittc2dpZCAidW5hYmxlIHRvIGFjY2VzcyBkcGtnIHN0YXR1cyBhcmVhIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjY0Cittc2dpZCAib3BlcmF0aW9uIHJlcXVpcmVzIHJlYWQvd3JpdGUgYWNjZXNzIHRvIGRwa2cgc3RhdHVzIGFyZWEiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozMDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlbW92ZSBteSBvd24gdXBkYXRlIGZpbGUgJS4yNTVzIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzQ3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM0OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHRydW5jYXRlIGZvciB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM1MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZnN5bmMgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzU4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2Rpci5jOjUwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBnZXQgZmlsZSBkZXNjcmlwdG9yIGZvciBkaXJlY3RvcnkgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9kaXIuYzo1NAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBkaXJlY3RvcnkgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9kaXIuYzo2OSBsaWIvZHBrZy9kaXIuYzoxMzEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gZGlyZWN0b3J5ICclcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZGlyLmM6MTA5IHNyYy9kaXZlcnRjbWQuYzoyMTggZHBrZy1zcGxpdC9zcGxpdC5jOjIwMgorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gZmlsZSAnJXMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2Rpci5jOjExMSBzcmMvZGl2ZXJ0Y21kLmM6MjMyIHNyYy9kaXZlcnRjbWQuYzozNzcKKyM6IHNyYy9zdGF0Y21kLmM6MjE3IGRwa2ctZGViL2J1aWxkLmM6NTk4IGRwa2ctc3BsaXQvam9pbi5jOjY1CisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTg3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNDA2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzeW5jIGZpbGUgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9kaXIuYzoxMTMgc3JjL2RpdmVydGNtZC5jOjIzNCBzcmMvZGl2ZXJ0Y21kLmM6Mzc5CisjOiBkcGtnLWRlYi9idWlsZC5jOjYwMCBkcGtnLXNwbGl0L2pvaW4uYzo2NyBkcGtnLXNwbGl0L3F1ZXVlLmM6MTg5CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTMxNCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTQwOAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgZmlsZSAnJXMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzozOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIGRldGFpbHMgb2YgYCUuNTBzJyB0byBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDIzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuICclcycgZm9yIHdyaXRpbmcgJXMgZGF0YWJhc2UiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQyNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IGJ1ZmZlcmluZyBvbiAlcyBkYXRhYmFzZSBmaWxlIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0MzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlICVzIGRhdGFiYXNlIHJlY29yZCBhYm91dCAnJS41MHMnIHRvICclLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZsdXNoICVzIGRhdGFiYXNlIHRvICclLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZzeW5jICVzIGRhdGFiYXNlIHRvICclLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNsb3NlICclLjI1MHMnIGFmdGVyIHdyaXRpbmcgJXMgZGF0YWJhc2UiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ1NQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gbGluayAnJS4yNTBzJyB0byAnJS4yNTBzJyBmb3IgYmFja3VwIG9mICVzIGRhdGFiYXNlIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGluc3RhbGwgJyUuMjUwcycgYXMgJyUuMjUwcycgY29udGFpbmluZyAlcyBkYXRhYmFzZSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6OTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiB1bnJlY292ZXJhYmxlIGZhdGFsIGVycm9yLCBhYm9ydGluZzpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MTAwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogb3V0c2lkZSBlcnJvciBjb250ZXh0LCBhYm9ydGluZzpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MTIwCittc2dpZCAib3V0IG9mIG1lbW9yeSBmb3IgbmV3IGVycm9yIGNvbnRleHQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjE4MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IGVycm9yIHdoaWxlIGNsZWFuaW5nIHVwOlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoyMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IHRvbyBtYW55IG5lc3RlZCBlcnJvcnMgZHVyaW5nIGVycm9yIHJlY292ZXJ5ISFcbiIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MjY4IGxpYi9kcGtnL2VoYW5kbGUuYzozMDcKK21zZ2lkICJvdXQgb2YgbWVtb3J5IGZvciBuZXcgY2xlYW51cCBlbnRyeSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MjkxCittc2dpZCAib3V0IG9mIG1lbW9yeSBmb3IgbmV3IGNsZWFudXAgZW50cnkgd2l0aCBtYW55IGFyZ3VtZW50cyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MzUyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvcjogJXNcbiIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MzkzCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB3YXJuaW5nOiAlc1xuIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzo0MTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6JXM6JWQ6IGludGVybmFsIGVycm9yOiAlc1xuIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGlzIG1pc3NpbmciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyUuNTBzJyBpcyBub3QgYWxsb3dlZCBmb3IgJXMiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NzMKKyMsIGMtZm9ybWF0Cittc2dpZCAianVuayBhZnRlciAlcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo4NworIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHBhY2thZ2UgbmFtZSAoJS4yNTBzKSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZW1wdHkgZmlsZSBkZXRhaWxzIGZpZWxkIGAlcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTA1CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgZGV0YWlscyBmaWVsZCBgJXMnIG5vdCBhbGxvd2VkIGluIHN0YXR1cyBmaWxlIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjExOAorIywgYy1mb3JtYXQKK21zZ2lkICJ0b28gbWFueSB2YWx1ZXMgaW4gZmlsZSBkZXRhaWxzIGZpZWxkIGAlcycgKGNvbXBhcmVkIHRvIG90aGVycykiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTMyCisjLCBjLWZvcm1hdAorbXNnaWQgInRvbyBmZXcgdmFsdWVzIGluIGZpbGUgZGV0YWlscyBmaWVsZCBgJXMnIChjb21wYXJlZCB0byBvdGhlcnMpIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE1NAorbXNnaWQgInllcy9ubyBpbiBib29sZWFuIGZpZWxkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE3NAorbXNnaWQgIndvcmQgaW4gYHByaW9yaXR5JyBmaWVsZCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxODYKK21zZ2lkICJ2YWx1ZSBmb3IgYHN0YXR1cycgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE5MQorbXNnaWQgImZpcnN0ICh3YW50KSB3b3JkIGluIGBzdGF0dXMnIGZpZWxkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE5NAorbXNnaWQgInNlY29uZCAoZXJyb3IpIHdvcmQgaW4gYHN0YXR1cycgZmllbGQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTk3Cittc2dpZCAidGhpcmQgKHN0YXR1cykgd29yZCBpbiBgc3RhdHVzJyBmaWVsZCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyMDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgaW4gVmVyc2lvbiBzdHJpbmcgJyUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjE4Cittc2dpZCAib2Jzb2xldGUgYFJldmlzaW9uJyBvciBgUGFja2FnZS1SZXZpc2lvbicgZmllbGQgdXNlZCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyMzUKK21zZ2lkICJ2YWx1ZSBmb3IgYGNvbmZpZy12ZXJzaW9uJyBmaWVsZCBub3QgYWxsb3dlZCBpbiB0aGlzIGNvbnRleHQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjQwCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGluIENvbmZpZy1WZXJzaW9uIHN0cmluZyAnJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAidmFsdWUgZm9yIGBjb25mZmlsZXMnIGhhcyBtYWxmb3JtYXR0ZWQgbGluZSBgJS4qcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6Mjg3CisjLCBjLWZvcm1hdAorbXNnaWQgInZhbHVlIGZvciBgY29uZmZpbGVzJyBoYXMgbGluZSBzdGFydGluZyB3aXRoIG5vbi1zcGFjZSBgJWMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjMwNAorbXNnaWQgInJvb3Qgb3IgbnVsbCBkaXJlY3RvcnkgaXMgbGlzdGVkIGFzIGEgY29uZmZpbGUiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MzY1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJgJXMnIGZpZWxkLCBtaXNzaW5nIHBhY2thZ2UgbmFtZSwgb3IgZ2FyYmFnZSB3aGVyZSBwYWNrYWdlIG5hbWUgZXhwZWN0ZWQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MzcwCisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgZmllbGQsIGludmFsaWQgcGFja2FnZSBuYW1lIGAlLjI1NXMnOiAlcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgYmFkIHZlcnNpb24gcmVsYXRpb25zaGlwICVjJWMiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDEyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6XG4iCisiIGAlYycgaXMgb2Jzb2xldGUsIHVzZSBgJWM9JyBvciBgJWMlYycgaW5zdGVhZCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgaW1wbGljaXQgZXhhY3QgbWF0Y2ggb24gdmVyc2lvbiBudW1iZXIsIHN1Z2dlc3QgdXNpbmcgYD0nIGluc3RlYWQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDMwCittc2dpZCAiT25seSBleGFjdCB2ZXJzaW9ucyBtYXkgYmUgdXNlZCBmb3IgUHJvdmlkZXMiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6XG4iCisiIHZlcnNpb24gdmFsdWUgc3RhcnRzIHdpdGggbm9uLWFscGhhbnVtZXJpYywgc3VnZ2VzdCBhZGRpbmcgYSBzcGFjZSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NTEgbGliL2Rwa2cvZmllbGRzLmM6NDU1CisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzogdmVyc2lvbiBjb250YWlucyBgJWMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ1OQorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6IHZlcnNpb24gdW50ZXJtaW5hdGVkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ2NQorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gJyUuMjU1cyc6IGVycm9yIGluIHZlcnNpb24iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDc1CisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgZmllbGQsIHN5bnRheCBlcnJvciBhZnRlciByZWZlcmVuY2UgdG8gcGFja2FnZSBgJS4yNTVzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmVzIChgfCcpIG5vdCBhbGxvd2VkIGluICVzIGZpZWxkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjUzNgorbXNnaWQgInZhbHVlIGZvciBgdHJpZ2dlcnMtcGVuZGluZycgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU0MworIywgYy1mb3JtYXQKK21zZ2lkICJpbGxlZ2FsIHBlbmRpbmcgdHJpZ2dlciBuYW1lIGAlLjI1NXMnOiAlcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHBlbmRpbmcgdHJpZ2dlciBgJS4yNTVzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NjEKK21zZ2lkICJ2YWx1ZSBmb3IgYHRyaWdnZXJzLWF3YWl0ZWQnIGZpZWxkIG5vdCBhbGxvd2VkIGluIHRoaXMgY29udGV4dCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWxsZWdhbCBwYWNrYWdlIG5hbWUgaW4gYXdhaXRlZCB0cmlnZ2VyIGAlLjI1NXMnOiAlcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIGF3YWl0ZWQgdHJpZ2dlciBwYWNrYWdlIGAlLjI1NXMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzo1MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBzb3VyY2UgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWxlLmM6NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoYW5nZSBvd25lcnNoaXAgb2YgdGFyZ2V0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmlsZS5jOjU5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgbW9kZSBvZiB0YXJnZXQgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWxlLmM6ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHVubG9jayAlcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWxlLmM6MTExCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGVjayBmaWxlICclcycgbG9jayBzdGF0dXMiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmlsZS5jOjE0NgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBpcyBsb2NrZWQgYnkgYW5vdGhlciBwcm9jZXNzIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzoxNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGxvY2sgJXMiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvbG9nLmM6NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGRuJ3Qgb3BlbiBsb2cgYCVzJzogJXNcbiIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9sb2cuYzo4NQorbXNnaWQgIjxwYWNrYWdlIHN0YXR1cyBhbmQgcHJvZ3Jlc3MgZmlsZSBkZXNjcmlwdG9yPiIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9sb2cuYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIHRvIHN0YXR1cyBmZCAlZCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9tbGliLmM6NDQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MgorIywgYy1mb3JtYXQKK21zZ2lkICJtYWxsb2MgZmFpbGVkICglenUgYnl0ZXMpIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL21saWIuYzo1OAorIywgYy1mb3JtYXQKK21zZ2lkICJyZWFsbG9jIGZhaWxlZCAoJXp1IGJ5dGVzKSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9tbGliLmM6NzIgbGliL2Rwa2cvbWxpYi5jOjkwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNzcKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzozMzQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMDcKK21zZ2lkICJmYWlsZWQgdG8gYWxsb2NhdGUgbWVtb3J5IgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGR1cCBmb3Igc3RkJXMiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEwMworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZHVwIGZvciBmZCAlZCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTA5Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBwaXBlIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igd3JpdGluZyB0byAnJXMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgZmlsZWRlc2NyaXB0b3IgZmxhZ3MgZm9yICUuMjUwcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTI2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgY2xvc2Utb24tZXhlYyBmbGFnIGZvciAlLjI1MHMiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjYzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZpZ3VyYXRpb24gZXJyb3I6ICVzOiVkOiAlcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gY29uZmlndXJhdGlvbiBmaWxlICclLjI1NXMnIGZvciByZWFkaW5nOiAlcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYmFsYW5jZWQgcXVvdGVzIGluICclcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjExNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiAnJXMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBuZWVkcyBhIHZhbHVlIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBkb2VzIG5vdCB0YWtlIGEgdmFsdWUiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjEzMworIywgYy1mb3JtYXQKK21zZ2lkICJyZWFkIGVycm9yIGluIGNvbmZpZ3VyYXRpb24gZmlsZSBgJS4yNTVzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgY29uZmlndXJhdGlvbiBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxNzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igb3BlbmluZyBjb25maWd1cmF0aW9uIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gLS0lcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgb3B0aW9uIHRha2VzIGEgdmFsdWUiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjIzNworIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG9wdGlvbiBkb2VzIG5vdCB0YWtlIGEgdmFsdWUiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI0NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiAtJWMiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI1MAorIywgYy1mb3JtYXQKK21zZ2lkICItJWMgb3B0aW9uIHRha2VzIGEgdmFsdWUiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI1OAorIywgYy1mb3JtYXQKK21zZ2lkICItJWMgb3B0aW9uIGRvZXMgbm90IHRha2UgYSB2YWx1ZSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjcxCisjLCBjLWZvcm1hdAorbXNnaWQgIm9ic29sZXRlIG9wdGlvbiAnLS0lcydcbiIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6Mjg3CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZsaWN0aW5nIGFjdGlvbnMgLSVjICgtLSVzKSBhbmQgLSVjICgtLSVzKSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgdmFsdWUgZm9yIGAlcycgZmllbGQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoxNDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidXNlci1kZWZpbmVkIGZpZWxkIG5hbWUgYCUuKnMnIHRvbyBzaG9ydCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgdmFsdWUgZm9yIHVzZXItZGVmaW5lZCBmaWVsZCBgJS4qcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMDcKK21zZ2lkICJDb25maWd1cmVkLVZlcnNpb24gZm9yIHBhY2thZ2Ugd2l0aCBpbmFwcHJvcHJpYXRlIFN0YXR1cyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjIxOAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGhhcyBzdGF0dXMgJXMgYnV0IHRyaWdnZXJzIGFyZSBhd2FpdGVkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjIyCittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzIHRyaWdnZXJzLWF3YWl0ZWQgYnV0IG5vIHRyaWdnZXJzIGF3YWl0ZWQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzICVzIGJ1dCB0cmlnZ2VycyBhcmUgcGVuZGluZyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjIzMgorbXNnaWQgInBhY2thZ2UgaGFzIHN0YXR1cyB0cmlnZ2Vycy1wZW5kaW5nIGJ1dCBubyB0cmlnZ2VycyBwZW5kaW5nIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjQyCittc2dpZCAiUGFja2FnZSB3aGljaCBpbiBzdGF0ZSBub3QtaW5zdGFsbGVkIGhhcyBjb25mZmlsZXMsIGZvcmdldHRpbmcgdGhlbSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjMzNQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiBwYWNrYWdlIGluZm8gZmlsZSBgJS4yNTVzJyBmb3IgcmVhZGluZyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjM0MQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW4ndCBzdGF0IHBhY2thZ2UgaW5mbyBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzQ3CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbid0IG1tYXAgcGFja2FnZSBpbmZvIGZpbGUgYCUuMjU1cyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVhZGluZyBwYWNrYWdlIGluZm8gZmlsZSAnJS4yNTVzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjM2MworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2xvc2UgYWZ0ZXIgcmVhZDogYCUuMjU1cyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiRU9GIGFmdGVyIGZpZWxkIG5hbWUgYCUuKnMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDA3CisjLCBjLWZvcm1hdAorbXNnaWQgIm5ld2xpbmUgaW4gZmllbGQgbmFtZSBgJS4qcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiTVNET1MgRU9GICheWikgaW4gZmllbGQgbmFtZSBgJS4qcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmllbGQgbmFtZSBgJS4qcycgbXVzdCBiZSBmb2xsb3dlZCBieSBjb2xvbiIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQyNQorIywgYy1mb3JtYXQKK21zZ2lkICJFT0YgYmVmb3JlIHZhbHVlIG9mIGZpZWxkIGAlLipzJyAobWlzc2luZyBmaW5hbCBuZXdsaW5lKSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQyOQorIywgYy1mb3JtYXQKK21zZ2lkICJNU0RPUyBFT0YgY2hhciBpbiB2YWx1ZSBvZiBmaWVsZCBgJS4qcycgKG1pc3NpbmcgbmV3bGluZT8pIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDQwCisjLCBjLWZvcm1hdAorbXNnaWQgImJsYW5rIGxpbmUgaW4gdmFsdWUgb2YgZmllbGQgJyUuKnMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDYxCisjLCBjLWZvcm1hdAorbXNnaWQgIkVPRiBkdXJpbmcgdmFsdWUgb2YgZmllbGQgYCUuKnMnIChtaXNzaW5nIGZpbmFsIG5ld2xpbmUpIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NTQ2Cittc2dpZCAic2V2ZXJhbCBwYWNrYWdlIGluZm8gZW50cmllcyBmb3VuZCwgb25seSBvbmUgYWxsb3dlZCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjU3MgorIywgYy1mb3JtYXQKK21zZ2lkICJubyBwYWNrYWdlIGluZm9ybWF0aW9uIGluIGAlLjI1NXMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJwYXJzaW5nIGZpbGUgJyUuMjU1cycgbmVhciBsaW5lICVkIHBhY2thZ2UgJyUuMjU1cyc6XG4iCisiICUuMjU1cyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzo0OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisicGFyc2luZyBmaWxlICclLjI1NXMnIG5lYXIgbGluZSAlZDpcbiIKKyIgJS4yNTVzIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjEyNQorbXNnaWQgIm1heSBub3QgYmUgZW1wdHkgc3RyaW5nIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjEyNworbXNnaWQgIm11c3Qgc3RhcnQgd2l0aCBhbiBhbHBoYW51bWVyaWMgY2hhcmFjdGVyIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjEzNgorIywgYy1mb3JtYXQKK21zZ2lkICJjaGFyYWN0ZXIgYCVjJyBub3QgYWxsb3dlZCAob25seSBsZXR0ZXJzLCBkaWdpdHMgYW5kIGNoYXJhY3RlcnMgYCVzJykiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MTc4Cittc2djdHh0ICJ2ZXJzaW9uIgorbXNnaWQgIjxub25lPiIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyMDkKK21zZ2lkICJ2ZXJzaW9uIHN0cmluZyBpcyBlbXB0eSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyMjQKK21zZ2lkICJ2ZXJzaW9uIHN0cmluZyBoYXMgZW1iZWRkZWQgc3BhY2VzIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjIzMAorbXNnaWQgImVwb2NoIGluIHZlcnNpb24gaXMgbm90IG51bWJlciIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyMzIKK21zZ2lkICJub3RoaW5nIGFmdGVyIGNvbG9uIGluIHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjI0NworbXNnaWQgInZlcnNpb24gbnVtYmVyIGRvZXMgbm90IHN0YXJ0IHdpdGggZGlnaXQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjUwCittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgaW4gdmVyc2lvbiBudW1iZXIiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjU0Cittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgaW4gcmV2aXNpb24gbnVtYmVyIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjI5OSBsaWIvZHBrZy9wYXJzZWhlbHAuYzozMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAibWlzc2luZyAlcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzozMDEgbGliL2Rwa2cvcGFyc2VoZWxwLmM6MzE0CisjLCBjLWZvcm1hdAorbXNnaWQgImVtcHR5IHZhbHVlIGZvciAlcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wa2ctZm9ybWF0LmM6ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgYCVjJyBpbiBmaWVsZCB3aWR0aFxuIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BrZy1mb3JtYXQuYzoxNzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2xvc2luZyBicmFjZSBtaXNzaW5nIGluIGZvcm1hdFxuIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BrZy1zaG93LmM6NDAKK21zZ2lkICIobm8gZGVzY3JpcHRpb24gYXZhaWxhYmxlKSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGlnbm9yZSBzaWduYWwgJXMgYmVmb3JlIHJ1bm5pbmcgJS4yNTBzIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzo2OAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciB1bi1jYXRjaGluZyBzaWduYWwgJXM6ICVzXG4iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjc4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIChzdWJwcm9jZXNzKTogJXNcbiIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6ODkgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQ1NAorbXNnaWQgImZvcmsgZmFpbGVkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMTkKKyMsIGMtZm9ybWF0Cittc2dpZCAic3VicHJvY2VzcyAlcyByZXR1cm5lZCBlcnJvciBleGl0IHN0YXR1cyAlZCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTI4CisjLCBjLWZvcm1hdAorbXNnaWQgInN1YnByb2Nlc3MgJXMgd2FzIGludGVycnVwdGVkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMzAKKyMsIGMtZm9ybWF0Cittc2dpZCAic3VicHJvY2VzcyAlcyB3YXMga2lsbGVkIGJ5IHNpZ25hbCAoJXMpJXMiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEzMgorbXNnaWQgIiwgY29yZSBkdW1wZWQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJzdWJwcm9jZXNzICVzIGZhaWxlZCB3aXRoIHdhaXQgc3RhdHVzIGNvZGUgJWQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjE1MSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NDYxCisjLCBjLWZvcm1hdAorbXNnaWQgIndhaXQgZm9yIHN1YnByb2Nlc3MgJXMgZmFpbGVkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgcGFja2FnZSBuYW1lIGAlLjI1MHMnIGluIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJ1bmNhdGVkIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yIGluIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcycgYXQgY2hhcmFjdGVyIGAlcyclcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4vY3JlYXRlIHRyaWdnZXJzIGxvY2tmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjE0MQorbXNnaWQgInRyaWdnZXJzIGFyZWEiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MTUxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MTY1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MTc5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuL2NyZWF0ZSBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoyMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcmVhZGluZyB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjIyMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MjI4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjIyMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiaW52YWxpZCBvciB1bmtub3duIHN5bnRheCBpbiB0cmlnZ2VyIG5hbWUgYCUuMjUwcycgKGluIHRyaWdnZXIgaW50ZXJlc3RzIGZvciAiCisicGFja2FnZSBgJS4yNTBzJykiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjI2MworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiB0cmlnZ2VyIGludGVyZXN0IGxpc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MjkyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyBzeW50YXggZXJyb3I7IGlsbGVnYWwgcGFja2FnZSBuYW1lIGAlLjI1MHMnOiAiCisiJS4yNTBzIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMyMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzI0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzeW5jIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMzMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozNDAgbGliL2Rwa2cvdHJpZ2xpYi5jOjM0MiBsaWIvZHBrZy90cmlnbGliLmM6NDcyCisjOiBzcmMvcmVtb3ZlLmM6Mjg2IHNyYy9yZW1vdmUuYzozNzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlbW92ZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzYwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzgzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0NTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImR1cGxpY2F0ZSBmaWxlIHRyaWdnZXIgaW50ZXJlc3QgZm9yIGZpbGVuYW1lIGAlLjI1MHMnIGFuZCBwYWNrYWdlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0OTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ5NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDk5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzeW5jIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgJyUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjUwMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTA3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgYXMgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjU0MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjU1MgorIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImZpbGUgdHJpZ2dlcnMgcmVjb3JkIG1lbnRpb25zIGlsbGVnYWwgcGFja2FnZSBuYW1lIGAlLjI1MHMnIChmb3IgaW50ZXJlc3QgaW4gIgorImZpbGUgYCUuMjUwcycpOiAlLjI1MHMiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjY2NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidHJpZ2dlcnMgY2kgZmlsZSBgJS4yNTBzJyBjb250YWlucyBpbGxlZ2FsIHRyaWdnZXIgc3ludGF4IGluIHRyaWdnZXIgbmFtZSBgIgorIiUuMjUwcyc6ICUuMjUwcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Njg0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIHRyaWdnZXJzIGNpIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjY5OQorbXNnaWQgInRyaWdnZXJzIGNpIGZpbGUgY29udGFpbnMgdW5rbm93biBkaXJlY3RpdmUgc3ludGF4IgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo3MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJpZ2dlcnMgY2kgZmlsZSBjb250YWlucyB1bmtub3duIGRpcmVjdGl2ZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Nzc2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdHJpZ2dlcnMgc3RhdGUgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo3NzkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNldCBvd25lcnNoaXAgb2YgdHJpZ2dlcnMgc3RhdGUgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWduYW1lLmM6MzQKK21zZ2lkICJlbXB0eSB0cmlnZ2VyIG5hbWVzIGFyZSBub3QgcGVybWl0dGVkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWduYW1lLmM6MzgKK21zZ2lkICJ0cmlnZ2VyIG5hbWUgY29udGFpbnMgaW52YWxpZCBjaGFyYWN0ZXIiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdXRpbHMuYzo1NgorIywgYy1mb3JtYXQKK21zZ2lkICJyZWFkIGVycm9yIGluIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3V0aWxzLmM6NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmdldHMgZ2F2ZSBhbiBlbXB0eSBzdHJpbmcgZnJvbSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy91dGlscy5jOjYzCisjLCBjLWZvcm1hdAorbXNnaWQgInRvby1sb25nIGxpbmUgb3IgbWlzc2luZyBuZXdsaW5lIGluIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3V0aWxzLmM6NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgcmVhZGluZyBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy92YXJidWYuYzo4MiBsaWIvZHBrZy92YXJidWYuYzo4OAorbXNnaWQgImVycm9yIGZvcm1hdHRpbmcgc3RyaW5nIGludG8gdmFyYnVmIHZhcmlhYmxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjE3OSBzcmMvYXJjaGl2ZXMuYzoyMDAgc3JjL2FyY2hpdmVzLmM6NzI0Cittc2dpZCAiZXJyb3IgcmVhZGluZyBmcm9tIGRwa2ctZGViIHBpcGUiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTk1CisjLCBjLWZvcm1hdAorbXNnaWQgInNraXBwZWQgdW5wYWNraW5nIGZpbGUgJyUuMjU1cycgKHJlcGxhY2VkIG9yIGV4Y2x1ZGVkPykiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MjQ2IHNyYy9hcmNoaXZlcy5jOjI1MAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIHRpbWVzdGFtcHMgb2YgYCUuMjU1cyciCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MjYyCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHNldHRpbmcgb3duZXJzaGlwIG9mIHN5bWxpbmsgYCUuMjU1cyciCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MjY1IHNyYy9hcmNoaXZlcy5jOjczNCBzcmMvc3RhdGNtZC5jOjE2MworIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIG93bmVyc2hpcCBvZiBgJS4yNTVzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoyNjcgc3JjL2FyY2hpdmVzLmM6NzM2IHNyYy9zdGF0Y21kLmM6MTY1CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHNldHRpbmcgcGVybWlzc2lvbnMgb2YgYCUuMjU1cyciCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6Mzk1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBzdGF0IChkZXJlZmVyZW5jZSkgZXhpc3Rpbmcgc3ltbGluayBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo0MTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImZhaWxlZCB0byBzdGF0IChkZXJlZmVyZW5jZSkgcHJvcG9zZWQgbmV3IHN5bWxpbmsgdGFyZ2V0IGAlLjI1MHMnIGZvciAiCisic3ltbGluayBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo0NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInRyeWluZyB0byBvdmVyd3JpdGUgYCUuMjUwcycsIHdoaWNoIGlzIHRoZSBkaXZlcnRlZCB2ZXJzaW9uIG9mIGAiCisiJS4yNTBzJyAocGFja2FnZTogJS4xMDBzKSIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo0ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJ5aW5nIHRvIG92ZXJ3cml0ZSBgJS4yNTBzJywgd2hpY2ggaXMgdGhlIGRpdmVydGVkIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6NTExCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGAlLjI1NXMnICh3aGljaCBJIHdhcyBhYm91dCB0byBpbnN0YWxsKSIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo1MTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVuYWJsZSB0byBjbGVhbiB1cCBtZXNzIHN1cnJvdW5kaW5nIGAlLjI1NXMnIGJlZm9yZSBpbnN0YWxsaW5nIGFub3RoZXIgIgorInZlcnNpb24iCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6NTI1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IHJlc3RvcmVkIGAlLjI1NXMnIGJlZm9yZSBpbnN0YWxsaW5nIGFub3RoZXIgdmVyc2lvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo1NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiYXJjaGl2ZSBjb250YWluZWQgb2JqZWN0IGAlLjI1NXMnIG9mIHVua25vd24gdHlwZSAweCV4IgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjYyNiBzcmMvZGl2ZXJ0Y21kLmM6MTUwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo2ODIKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjIyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjg0CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTQ0MSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTY4MAorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxNjcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNDQKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTI3CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzdGF0IGZpbGUgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVwbGFjaW5nIGZpbGVzIGluIG9sZCBwYWNrYWdlICVzIC4uLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjY0NQorIywgYy1mb3JtYXQKK21zZ2lkICJSZXBsYWNlZCBieSBmaWxlcyBpbiBpbnN0YWxsZWQgcGFja2FnZSAlcyAuLi5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInRyeWluZyB0byBvdmVyd3JpdGUgZGlyZWN0b3J5ICclLjI1MHMnIGluIHBhY2thZ2UgJS4yNTBzICUuMjUwcyB3aXRoICIKKyJub25kaXJlY3RvcnkiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6NjYxCisjLCBjLWZvcm1hdAorbXNnaWQgInRyeWluZyB0byBvdmVyd3JpdGUgJyUuMjUwcycsIHdoaWNoIGlzIGFsc28gaW4gcGFja2FnZSAlLjI1MHMgJS4yNTBzIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjcxMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGAlLjI1NXMnICh3aGlsZSBwcm9jZXNzaW5nIGAlLjI1NXMnKSIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3MTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFja2VuZCBkcGtnLWRlYiBkdXJpbmcgYCUuMjU1cyciCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6NzQ0IHNyYy9hcmNoaXZlcy5jOjkwOCBzcmMvYXJjaGl2ZXMuYzo5NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZy93cml0aW5nIGAlLjI1NXMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc0OAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBwaXBlIGAlLjI1NXMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc1MyBzcmMvYXJjaGl2ZXMuYzo3NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgZGV2aWNlIGAlLjI1NXMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc3MQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBoYXJkIGxpbmsgYCUuMjU1cyciCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6Nzc3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo1MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgc3ltYm9saWMgbGluayBgJS4yNTVzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgZGlyZWN0b3J5IGAlLjI1NXMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjgyMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gbW92ZSBhc2lkZSBgJS4yNTVzJyB0byBpbnN0YWxsIG5ldyB2ZXJzaW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjgzMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MzIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIGxpbmsgYCUuMjU1cyciCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6ODM0IHNyYy9jb25maWd1cmUuYzo0MjMKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ltYm9saWMgbGluayAnJS4yNTBzJyBzaXplIGhhcyBjaGFuZ2VkIGZyb20gJWpkIHRvICV6ZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG1ha2UgYmFja3VwIHN5bWxpbmsgZm9yIGAlLjI1NXMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjg0MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hvd24gYmFja3VwIHN5bWxpbmsgZm9yIGAlLjI1NXMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjg0NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gbWFrZSBiYWNrdXAgbGluayBvZiBgJS4yNTVzJyBiZWZvcmUgaW5zdGFsbGluZyBuZXcgdmVyc2lvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4NjMgc3JjL2FyY2hpdmVzLmM6OTU3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyB2ZXJzaW9uIG9mIGAlLjI1NXMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjkwMiBzcmMvYXJjaGl2ZXMuYzo5NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gJyUuMjU1cyciCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6OTQ3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzeW5jIGZpbGUgJyUuMjU1cyciCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAwMAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiaWdub3JpbmcgZGVwZW5kZW5jeSBwcm9ibGVtIHdpdGggJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAwNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiY29uc2lkZXJpbmcgZGVjb25maWd1cmF0aW9uIG9mIGVzc2VudGlhbFxuIgorIiBwYWNrYWdlICVzLCB0byBlbmFibGUgJXMuIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IG5vLCAlcyBpcyBlc3NlbnRpYWwsIHdpbGwgbm90IGRlY29uZmlndXJlXG4iCisiIGl0IGluIG9yZGVyIHRvIGVuYWJsZSAlcy5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDIyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBubywgY2Fubm90IHByb2NlZWQgd2l0aCAlcyAoLS1hdXRvLWRlY29uZmlndXJlIHdpbGwgaGVscCk6XG4iCisiJXMiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAzMgorIywgYy1mb3JtYXQKK21zZ2lkICJyZW1vdmFsIG9mICUuMjUwcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDU3CisjLCBjLWZvcm1hdAorbXNnaWQgImluc3RhbGxhdGlvbiBvZiAlLjI1MHMiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA1OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogY29uc2lkZXJpbmcgZGVjb25maWd1cmF0aW9uIG9mICVzLCB3aGljaCB3b3VsZCBiZSBicm9rZW4gYnkgJXMgLi4uXG4iCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA2NQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiB5ZXMsIHdpbGwgZGVjb25maWd1cmUgJXMgKGJyb2tlbiBieSAlcykuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA2OSBzcmMvYXJjaGl2ZXMuYzoxMTg3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiByZWdhcmRpbmcgJXMgY29udGFpbmluZyAlczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDc3Cittc2dpZCAiaWdub3JpbmcgYnJlYWthZ2UsIG1heSBwcm9jZWVkIGFueXdheSEiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA4MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiaW5zdGFsbGluZyAlLjI1MHMgd291bGQgYnJlYWsgJS4yNTBzLCBhbmRcbiIKKyIgZGVjb25maWd1cmF0aW9uIGlzIG5vdCBwZXJtaXR0ZWQgKC0tYXV0by1kZWNvbmZpZ3VyZSBtaWdodCBoZWxwKSIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDg2CisjLCBjLWZvcm1hdAorbXNnaWQgImluc3RhbGxpbmcgJS4yNTBzIHdvdWxkIGJyZWFrIGV4aXN0aW5nIHNvZnR3YXJlIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExMTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogY29uc2lkZXJpbmcgcmVtb3ZpbmcgJXMgaW4gZmF2b3VyIG9mICVzIC4uLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgaXMgbm90IHByb3Blcmx5IGluc3RhbGxlZCAtIGlnbm9yaW5nIGFueSBkZXBlbmRlbmNpZXMgb24gaXQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE1MQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiBtYXkgaGF2ZSB0cm91YmxlIHJlbW92aW5nICVzLCBhcyBpdCBwcm92aWRlcyAlcyAuLi5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTY2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBwYWNrYWdlICVzIHJlcXVpcmVzIHJlaW5zdGFsbGF0aW9uLCBidXQgd2lsbCByZW1vdmUgYW55d2F5IGFzIHlvdSAiCisicmVxdWVzdGVkLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExNjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogcGFja2FnZSAlcyByZXF1aXJlcyByZWluc3RhbGxhdGlvbiwgd2lsbCBub3QgcmVtb3ZlLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogeWVzLCB3aWxsIHJlbW92ZSAlcyBpbiBmYXZvdXIgb2YgJXMuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE5MAorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mbGljdGluZyBwYWNrYWdlcyAtIG5vdCBpbnN0YWxsaW5nICUuMjUwcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTkxCittc2dpZCAiaWdub3JpbmcgY29uZmxpY3QsIG1heSBwcm9jZWVkIGFueXdheSEiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTIzNQorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIC0tcmVjdXJzaXZlIG5lZWRzIGF0IGxlYXN0IG9uZSBwYXRoIGFyZ3VtZW50IgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNDUKK21zZ2lkICJmaW5kIGZvciBkcGtnIC0tcmVjdXJzaXZlIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNjYKK21zZ2lkICJmYWlsZWQgdG8gZmRvcGVuIGZpbmQncyBwaXBlIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNzIKK21zZ2lkICJlcnJvciByZWFkaW5nIGZpbmQncyBwaXBlIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNzMKK21zZ2lkICJlcnJvciBjbG9zaW5nIGZpbmQncyBwaXBlIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmluZCBmb3IgLS1yZWN1cnNpdmUgcmV0dXJuZWQgdW5oYW5kbGVkIGVycm9yICVpIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNzkKK21zZ2lkICJzZWFyY2hlZCwgYnV0IGZvdW5kIG5vIHBhY2thZ2VzIChmaWxlcyBtYXRjaGluZyAqLmRlYikiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI5MAorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGF0IGxlYXN0IG9uZSBwYWNrYWdlIGFyY2hpdmUgZmlsZSBhcmd1bWVudCIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzI1IHNyYy9kaXZlcnRjbWQuYzo3OCBzcmMvZGl2ZXJ0Y21kLmM6MTE4CisjOiBzcmMvZW5xdWlyeS5jOjE2NiBzcmMvZW5xdWlyeS5jOjI3OSBzcmMvZW5xdWlyeS5jOjQ0OSBzcmMvZW5xdWlyeS5jOjQ1MQorIzogc3JjL2VucXVpcnkuYzo0NjQgc3JjL21haW4uYzo2NiBzcmMvbWFpbi5jOjE2MyBzcmMvbWFpbi5jOjMxNAorIzogc3JjL21haW4uYzo0OTMgc3JjL3BhY2thZ2VzLmM6MjU0IHNyYy9xdWVyeWNtZC5jOjI1MiBzcmMvcXVlcnljbWQuYzozNTUKKyM6IHNyYy9xdWVyeWNtZC5jOjM5NiBzcmMvcXVlcnljbWQuYzo0MDQgc3JjL3F1ZXJ5Y21kLmM6NDQ4IHNyYy9xdWVyeWNtZC5jOjUxNworIzogc3JjL3F1ZXJ5Y21kLmM6NjA2IHNyYy9xdWVyeWNtZC5jOjY1MCBzcmMvc2VsZWN0LmM6Nzkgc3JjL3N0YXRjbWQuYzo2OAorIzogc3JjL3N0YXRjbWQuYzo5OCBzcmMvdHJpZ2NtZC5jOjU4IHNyYy90cmlnY21kLmM6OTAgZHBrZy1kZWIvYnVpbGQuYzo0NDEKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyMTcgZHBrZy1kZWIvZXh0cmFjdC5jOjI1MCBkcGtnLWRlYi9pbmZvLmM6MjAzCisjOiBkcGtnLWRlYi9pbmZvLmM6MjY1IGRwa2ctZGViL21haW4uYzo2MCBkcGtnLWRlYi9tYWluLmM6MTI2CisjOiBkcGtnLXNwbGl0L2luZm8uYzoyNTcgZHBrZy1zcGxpdC9tYWluLmM6NTQgZHBrZy1zcGxpdC9tYWluLmM6OTgKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxNDQgZHBrZy1zcGxpdC9xdWV1ZS5jOjI4MAorbXNnaWQgIjxzdGFuZGFyZCBvdXRwdXQ+IgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzMjYgc3JjL3BhY2thZ2VzLmM6MjU1IHNyYy9xdWVyeWNtZC5jOjI1MworIzogc3JjL3F1ZXJ5Y21kLmM6MzUzIHNyYy9xdWVyeWNtZC5jOjQ1NCBzcmMvcXVlcnljbWQuYzo1MTggc3JjL3NlbGVjdC5jOjgwCisjOiBkcGtnLXNwbGl0L21haW4uYzoxNjkgZHBrZy1zcGxpdC9xdWV1ZS5jOjIxOAorbXNnaWQgIjxzdGFuZGFyZCBlcnJvcj4iCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTM2NworIywgYy1mb3JtYXQKK21zZ2lkICJTZWxlY3RpbmcgcHJldmlvdXNseSB1bnNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTM3MQorIywgYy1mb3JtYXQKK21zZ2lkICJTa2lwcGluZyB1bnNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTM4NworIywgYy1mb3JtYXQKK21zZ2lkICJWZXJzaW9uICUuMjUwcyBvZiAlLjI1MHMgYWxyZWFkeSBpbnN0YWxsZWQsIHNraXBwaW5nLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzOTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZG93bmdyYWRpbmcgJS4yNTBzIGZyb20gJS4yNTBzIHRvICUuMjUwcy4iCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTQwMgorIywgYy1mb3JtYXQKK21zZ2lkICJXaWxsIG5vdCBkb3duZ3JhZGUgJS4yNTBzIGZyb20gdmVyc2lvbiAlLjI1MHMgdG8gJS4yNTBzLCBza2lwcGluZy5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvY2xlYW51cC5jOjg2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1bmFibGUgdG8gcmVtb3ZlIG5ld2x5LWluc3RhbGxlZCB2ZXJzaW9uIG9mIGAlLjI1MHMnIHRvIGFsbG93IHJlaW5zdGFsbGF0aW9uICIKKyJvZiBiYWNrdXAgY29weSIKK21zZ3N0ciAiIgorCisjOiBzcmMvY2xlYW51cC5jOjkzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZXN0b3JlIGJhY2t1cCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9jbGVhbnVwLmM6OTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBiYWNrdXAgY29weSBvZiAnJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvY2xlYW51cC5jOjEwMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIG5ld2x5LWluc3RhbGxlZCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9jbGVhbnVwLmM6MTA4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgbmV3bHktZXh0cmFjdGVkIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjEwNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBuZXcgZGlzdHJpYnV0ZWQgY29uZmZpbGUgJyUuMjUwcyciCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBjdXJyZW50IGluc3RhbGxlZCBjb25mZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTI2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJDb25maWd1cmF0aW9uIGZpbGUgYCVzJywgZG9lcyBub3QgZXhpc3Qgb24gc3lzdGVtLlxuIgorIkluc3RhbGxpbmcgbmV3IGNvbmZpZyBmaWxlIGFzIHlvdSByZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE2OAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIHJlbW92ZSBvbGQgYmFja3VwICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTc2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVuYW1lICclLjI1MHMnIHRvICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTgyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTg4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlIG9sZCBkaXN0cmlidXRlZCB2ZXJzaW9uICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTkyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlICclLjI1MHMnIChiZWZvcmUgb3ZlcndyaXRlKTogJXMiCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE5NgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIGxpbmsgJyUuMjUwcycgdG8gJyUuMjUwcyc6ICVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzoyMDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW5zdGFsbGluZyBuZXcgdmVyc2lvbiBvZiBjb25maWcgZmlsZSAlcyAuLi5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjA2IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo1NDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgYCUuMjUwcycgYXMgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI1NworIywgYy1mb3JtYXQKK21zZ2lkICJubyBwYWNrYWdlIG5hbWVkIGAlcycgaXMgaW5zdGFsbGVkLCBjYW5ub3QgY29uZmlndXJlIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzoyNjAKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlLjI1MHMgaXMgYWxyZWFkeSBpbnN0YWxsZWQgYW5kIGNvbmZpZ3VyZWQiCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI2MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisicGFja2FnZSAlLjI1MHMgaXMgbm90IHJlYWR5IGZvciBjb25maWd1cmF0aW9uXG4iCisiIGNhbm5vdCBjb25maWd1cmUgKGN1cnJlbnQgc3RhdHVzIGAlLjI1MHMnKSIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6Mjk0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBkZXBlbmRlbmN5IHByb2JsZW1zIHByZXZlbnQgY29uZmlndXJhdGlvbiBvZiAlczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6Mjk3Cittc2dpZCAiZGVwZW5kZW5jeSBwcm9ibGVtcyAtIGxlYXZpbmcgdW5jb25maWd1cmVkIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzozMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6ICVzOiBkZXBlbmRlbmN5IHByb2JsZW1zLCBidXQgY29uZmlndXJpbmcgYW55d2F5IGFzIHlvdSByZXF1ZXN0ZWQ6XG4iCisiJXMiCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjMwOQorbXNnaWQgIiIKKyJQYWNrYWdlIGlzIGluIGEgdmVyeSBiYWQgaW5jb25zaXN0ZW50IHN0YXRlIC0geW91IHNob3VsZFxuIgorIiByZWluc3RhbGwgaXQgYmVmb3JlIGF0dGVtcHRpbmcgY29uZmlndXJhdGlvbi4iCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjMxMgorIywgYy1mb3JtYXQKK21zZ2lkICJTZXR0aW5nIHVwICVzICglcykgLi4uXG4iCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjM5NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IHVuYWJsZSB0byBzdGF0IGNvbmZpZyBmaWxlICclcydcbiIKKyIgKD0gJyVzJyk6ICVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo0MDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBjb25maWcgZmlsZSAnJXMnIGlzIGEgY2lyY3VsYXIgbGlua1xuIgorIiAoPSAnJXMnKSIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDE4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogdW5hYmxlIHRvIHJlYWRsaW5rIGNvbmZmaWxlICclcydcbiIKKyIgKD0gJyVzJyk6ICVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo0NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBjb25mZmlsZSAnJS4yNTBzJyByZXNvbHZlcyB0byBkZWdlbmVyYXRlIGZpbGVuYW1lXG4iCisiICgnJXMnIGlzIGEgc3ltbGluayB0byAnJXMnKSIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDYwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBjb25mZmlsZSAnJS4yNTBzJyBpcyBub3QgYSBwbGFpbiBmaWxlIG9yIHN5bWxpbmsgKD0gJyVzJykiCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQ4NgorbXNnaWQgIm1kNWhhc2giCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQ5MgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogdW5hYmxlIHRvIG9wZW4gY29uZmZpbGUgJXMgZm9yIGhhc2g6ICVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo1MjIgc3JjL2NvbmZpZ3VyZS5jOjUyNgorbXNnaWQgImNvbmZmaWxlIGRpZmZlcmVuY2UgdmlzdWFsaXplciIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NTQzCittc2dpZCAiVHlwZSBgZXhpdCcgd2hlbiB5b3UncmUgZG9uZS5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NTUyIHNyYy9jb25maWd1cmUuYzo1NTYKK21zZ2lkICJjb25mZmlsZSBzaGVsbCIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjAyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJDb25maWd1cmF0aW9uIGZpbGUgYCVzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjA0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAoYWN0dWFsbHkgYCVzJykiCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYwOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiID09PiBGaWxlIG9uIHN5c3RlbSBjcmVhdGVkIGJ5IHlvdSBvciBieSBhIHNjcmlwdC5cbiIKKyIgPT0+IEZpbGUgYWxzbyBpbiBwYWNrYWdlIHByb3ZpZGVkIGJ5IHBhY2thZ2UgbWFpbnRhaW5lci5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjEzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgICAgIE5vdCBtb2RpZmllZCBzaW5jZSBpbnN0YWxsYXRpb24uXG4iCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYxNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiID09PiBNb2RpZmllZCAoYnkgeW91IG9yIGJ5IGEgc2NyaXB0KSBzaW5jZSBpbnN0YWxsYXRpb24uXG4iCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYxNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiID09PiBEZWxldGVkIChieSB5b3Ugb3IgYnkgYSBzY3JpcHQpIHNpbmNlIGluc3RhbGxhdGlvbi5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjE5CisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gUGFja2FnZSBkaXN0cmlidXRvciBoYXMgc2hpcHBlZCBhbiB1cGRhdGVkIHZlcnNpb24uXG4iCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYyMAorIywgYy1mb3JtYXQKK21zZ2lkICIgICAgIFZlcnNpb24gaW4gcGFja2FnZSBpcyB0aGUgc2FtZSBhcyBhdCBsYXN0IGluc3RhbGxhdGlvbi5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjI4CisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gVXNpbmcgbmV3IGZpbGUgYXMgeW91IHJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gVXNpbmcgY3VycmVudCBvbGQgZmlsZSBhcyB5b3UgcmVxdWVzdGVkLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBLZWVwaW5nIG9sZCBjb25maWcgZmlsZSBhcyBkZWZhdWx0LlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBVc2luZyBuZXcgY29uZmlnIGZpbGUgYXMgZGVmYXVsdC5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjUyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIgICBXaGF0IHdvdWxkIHlvdSBsaWtlIHRvIGRvIGFib3V0IGl0ID8gIFlvdXIgb3B0aW9ucyBhcmU6XG4iCisiICAgIFkgb3IgSSAgOiBpbnN0YWxsIHRoZSBwYWNrYWdlIG1haW50YWluZXIncyB2ZXJzaW9uXG4iCisiICAgIE4gb3IgTyAgOiBrZWVwIHlvdXIgY3VycmVudGx5LWluc3RhbGxlZCB2ZXJzaW9uXG4iCisiICAgICAgRCAgICAgOiBzaG93IHRoZSBkaWZmZXJlbmNlcyBiZXR3ZWVuIHRoZSB2ZXJzaW9uc1xuIgorIiAgICAgIFogICAgIDogc3RhcnQgYSBzaGVsbCB0byBleGFtaW5lIHRoZSBzaXR1YXRpb25cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjU5CisjLCBjLWZvcm1hdAorbXNnaWQgIiBUaGUgZGVmYXVsdCBhY3Rpb24gaXMgdG8ga2VlcCB5b3VyIGN1cnJlbnQgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjYxCisjLCBjLWZvcm1hdAorbXNnaWQgIiBUaGUgZGVmYXVsdCBhY3Rpb24gaXMgdG8gaW5zdGFsbCB0aGUgbmV3IHZlcnNpb24uXG4iCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY2NgorbXNnaWQgIltkZWZhdWx0PU5dIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NjcKK21zZ2lkICJbZGVmYXVsdD1ZXSIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjY4Cittc2dpZCAiW25vIGRlZmF1bHRdIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NzEKK21zZ2lkICJlcnJvciB3cml0aW5nIHRvIHN0ZGVyciwgZGlzY292ZXJlZCBiZWZvcmUgY29uZmZpbGUgcHJvbXB0IgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2ODAKK21zZ2lkICJyZWFkIGVycm9yIG9uIHN0ZGluIGF0IGNvbmZmaWxlIHByb21wdCIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjgxCittc2dpZCAiRU9GIG9uIHN0ZGluIGF0IGNvbmZmaWxlIHByb21wdCIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGVwY29uLmM6MTc1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGRlcGVuZHMgb24gJXMiCittc2dzdHIgIiIKKworIzogc3JjL2RlcGNvbi5jOjE3OAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBwcmUtZGVwZW5kcyBvbiAlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGVwY29uLmM6MTgxCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHJlY29tbWVuZHMgJXMiCittc2dzdHIgIiIKKworIzogc3JjL2RlcGNvbi5jOjE4NAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBzdWdnZXN0cyAlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGVwY29uLmM6MTg3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGJyZWFrcyAlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGVwY29uLmM6MTkwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGNvbmZsaWN0cyB3aXRoICVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9kZXBjb24uYzoxOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgZW5oYW5jZXMgJXMiCittc2dzdHIgIiIKKworIzogc3JjL2RlcGNvbi5jOjI5NgorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9kZXBjb24uYzoyOTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdG8gYmUgZGVjb25maWd1cmVkLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9kZXBjb24uYzozMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdG8gYmUgaW5zdGFsbGVkLCBidXQgaXMgdmVyc2lvbiAlLjI1MHMuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2RlcGNvbi5jOjMxNAorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyBpbnN0YWxsZWQsIGJ1dCBpcyB2ZXJzaW9uICUuMjUwcy5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGVwY29uLmM6MzMzCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHVucGFja2VkLCBidXQgaGFzIG5ldmVyIGJlZW4gY29uZmlndXJlZC5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGVwY29uLmM6MzM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHVucGFja2VkLCBidXQgaXMgdmVyc2lvbiAlLjI1MHMuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2RlcGNvbi5jOjM0MworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBsYXRlc3QgY29uZmlndXJlZCB2ZXJzaW9uIGlzICUuMjUwcy5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGVwY29uLmM6MzUzCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzICVzLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9kZXBjb24uYzozODgKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGJ1dCBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9kZXBjb24uYzozOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGJ1dCBpcyB0byBiZSBkZWNvbmZpZ3VyZWQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2RlcGNvbi5jOjQwMQorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYnV0IGlzICVzLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9kZXBjb24uYzo0MTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgbm90IGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGVwY29uLmM6NDQzCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzICh2ZXJzaW9uICUuMjUwcykgaXMgdG8gYmUgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9kZXBjb24uYzo0NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgKHZlcnNpb24gJS4yNTBzKSBpcyBwcmVzZW50IGFuZCAlcy5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGVwY29uLmM6NDk1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBhbmQgaXMgdG8gYmUgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9kZXBjb24uYzo1MzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGFuZCBpcyBwcmVzZW50IGFuZCAlcy5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTAKK21zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IGRpdmVydGluZyBmaWxlcy4iCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjY2IHNyYy9zdGF0Y21kLmM6NTcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjgwCisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiAlcyB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo3MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDEwIEd1aWxsZW0gSm92ZXIuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjc1IHNyYy9tYWluLmM6NjMgc3JjL3F1ZXJ5Y21kLmM6NjAzIHNyYy9zdGF0Y21kLmM6NjUKKyM6IHNyYy90cmlnY21kLmM6NTUgZHBrZy1kZWIvbWFpbi5jOjU3IGRwa2ctc3BsaXQvbWFpbi5jOjUxCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6ODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgb3JcbiIKKyJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6ODcgc3JjL21haW4uYzo4MSBzcmMvcXVlcnljbWQuYzo2MTUgc3JjL3N0YXRjbWQuYzo3NworIzogZHBrZy1kZWIvbWFpbi5jOjY5IGRwa2ctc3BsaXQvbWFpbi5jOjYzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo5NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIDxjb21tYW5kPlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo5MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICBbLS1hZGRdIDxmaWxlPiAgICAgICAgICAgYWRkIGEgZGl2ZXJzaW9uLlxuIgorIiAgLS1yZW1vdmUgPGZpbGU+ICAgICAgICAgIHJlbW92ZSB0aGUgZGl2ZXJzaW9uLlxuIgorIiAgLS1saXN0IFs8Z2xvYi1wYXR0ZXJuPl0gIHNob3cgZmlsZSBkaXZlcnNpb25zLlxuIgorIiAgLS1saXN0cGFja2FnZSA8ZmlsZT4gICAgIHNob3cgd2hhdCBwYWNrYWdlIGRpdmVydHMgdGhlIGZpbGUuXG4iCisiICAtLXRydWVuYW1lIDxmaWxlPiAgICAgICAgcmV0dXJuIHRoZSBkaXZlcnRlZCBmaWxlLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoxMDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLXBhY2thZ2UgPHBhY2thZ2U+ICAgICAgbmFtZSBvZiB0aGUgcGFja2FnZSB3aG9zZSBjb3B5IG9mIDxmaWxlPiB3aWxsICIKKyJub3RcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJlIGRpdmVydGVkLlxuIgorIiAgLS1sb2NhbCAgICAgICAgICAgICAgICAgIGFsbCBwYWNrYWdlcycgdmVyc2lvbnMgYXJlIGRpdmVydGVkLlxuIgorIiAgLS1kaXZlcnQgPGRpdmVydC10bz4gICAgIHRoZSBuYW1lIHVzZWQgYnkgb3RoZXIgcGFja2FnZXMnIHZlcnNpb25zLlxuIgorIiAgLS1yZW5hbWUgICAgICAgICAgICAgICAgIGFjdHVhbGx5IG1vdmUgdGhlIGZpbGUgYXNpZGUgKG9yIGJhY2spLlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIHNldCB0aGUgZGlyZWN0b3J5IHdpdGggdGhlIGRpdmVyc2lvbnMgZmlsZS5cbiIKKyIgIC0tdGVzdCAgICAgICAgICAgICAgICAgICBkb24ndCBkbyBhbnl0aGluZywganVzdCBkZW1vbnN0cmF0ZS5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBxdWlldCBvcGVyYXRpb24sIG1pbmltYWwgb3V0cHV0LlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJXaGVuIGFkZGluZywgZGVmYXVsdCBpcyAtLWxvY2FsIGFuZCAtLWRpdmVydCA8b3JpZ2luYWw+LmRpc3RyaWIuXG4iCisiV2hlbiByZW1vdmluZywgLS1wYWNrYWdlIG9yIC0tbG9jYWwgYW5kIC0tZGl2ZXJ0IG11c3QgbWF0Y2ggaWYgc3BlY2lmaWVkLlxuIgorIlBhY2thZ2UgcHJlaW5zdC9wb3N0cm0gc2NyaXB0cyBzaG91bGQgYWx3YXlzIHNwZWNpZnkgLS1wYWNrYWdlIGFuZCAtLSIKKyJkaXZlcnQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjE2OAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjaGVja2luZyAnJXMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInJlbmFtZSBpbnZvbHZlcyBvdmVyd3JpdGluZyBgJXMnIHdpdGhcbiIKKyIgIGRpZmZlcmVudCBmaWxlIGAlcycsIG5vdCBhbGxvd2VkIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyMjMgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzNzMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBmaWxlICclcyciCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjIyNworbXNnaWQgImZpbGUgY29weSIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjM5CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZW5hbWUgJyVzJyB0byAnJXMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVuYW1lOiByZW1vdmUgZHVwbGljYXRlIG9sZCBsaW5rICclcyciCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjI2MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIGNvcGllZCBzb3VyY2UgZmlsZSAnJXMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyODQKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9jYWwgZGl2ZXJzaW9uIG9mICVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyODYKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9jYWwgZGl2ZXJzaW9uIG9mICVzIHRvICVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJzaW9uIG9mICVzIGJ5ICVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJzaW9uIG9mICVzIHRvICVzIGJ5ICVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozMDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiYW55IGRpdmVyc2lvbiBvZiAlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MzExCisjLCBjLWZvcm1hdAorbXNnaWQgImFueSBkaXZlcnNpb24gb2YgJXMgdG8gJXMiCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjM1NworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgY3JlYXRlIG5ldyAlcyBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozNzUgc3JjL3N0YXRjbWQuYzoyMTUgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE0MDQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIGZpbGUgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MzgyCittc2dpZCAiZXJyb3IgcmVtb3Zpbmcgb2xkIGRpdmVyc2lvbnMtb2xkIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozODQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBuZXcgZGl2ZXJzaW9ucy1vbGQiCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjM4NgorbXNnaWQgImVycm9yIGluc3RhbGxpbmcgbmV3IGRpdmVyc2lvbnMiCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjQwNiBzcmMvZGl2ZXJ0Y21kLmM6NTAzIHNyYy9kaXZlcnRjbWQuYzo2MTAKKyM6IHNyYy9kaXZlcnRjbWQuYzo2MzAgc3JjL3N0YXRjbWQuYzoyOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhIHNpbmdsZSBhcmd1bWVudCIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDA5IHNyYy9kaXZlcnRjbWQuYzo0MzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZW5hbWUgXCIlc1wiIGlzIG5vdCBhYnNvbHV0ZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDExIHNyYy9zdGF0Y21kLmM6MjQ5Cittc2dpZCAiZmlsZSBtYXkgbm90IGNvbnRhaW4gbmV3bGluZXMiCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjQxOAorbXNnaWQgIkNhbm5vdCBkaXZlcnQgZGlyZWN0b3JpZXMiCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjQzMworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgZGl2ZXJ0IGZpbGUgJyVzJyB0byBpdHNlbGYiCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjQ1MworIywgYy1mb3JtYXQKK21zZ2lkICJMZWF2aW5nICclcydcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDU4CisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgY2xhc2hlcyB3aXRoIGAlcyciCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjQ4MQorIywgYy1mb3JtYXQKK21zZ2lkICJBZGRpbmcgJyVzJ1xuIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiTm8gZGl2ZXJzaW9uICclcycsIG5vbmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTI1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJtaXNtYXRjaCBvbiBkaXZlcnQtdG9cbiIKKyIgIHdoZW4gcmVtb3ZpbmcgYCVzJ1xuIgorIiAgZm91bmQgYCVzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJtaXNtYXRjaCBvbiBwYWNrYWdlXG4iCisiICB3aGVuIHJlbW92aW5nIGAlcydcbiIKKyIgIGZvdW5kIGAlcyciCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjUzOQorIywgYy1mb3JtYXQKK21zZ2lkICJSZW1vdmluZyAnJXMnXG4iCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjY1NworbXNnaWQgInBhY2thZ2UgbWF5IG5vdCBjb250YWluIG5ld2xpbmVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo2NjYKK21zZ2lkICJkaXZlcnQtdG8gbWF5IG5vdCBjb250YWluIG5ld2xpbmVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRkYi5jOjY0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gZGl2ZXJzaW9ucyBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRkYi5jOjcxCittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IHByZXZpb3VzIGRpdmVyc2lvbnMgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzo3MworbXNnaWQgImZhaWxlZCB0byBmc3RhdCBkaXZlcnNpb25zIGZpbGUiCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGRiLmM6MTEzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZsaWN0aW5nIGRpdmVyc2lvbnMgaW52b2x2aW5nIGAlLjI1MHMnIG9yIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6NzMKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgaW4gYSBtZXNzIGR1ZSB0byBzZXJpb3VzIHByb2JsZW1zIGR1cmluZ1xuIgorImluc3RhbGxhdGlvbi4gIFRoZXkgbXVzdCBiZSByZWluc3RhbGxlZCBmb3IgdGhlbSAoYW5kIGFueSBwYWNrYWdlc1xuIgorInRoYXQgZGVwZW5kIG9uIHRoZW0pIHRvIGZ1bmN0aW9uIHByb3Blcmx5OlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6ODAKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBoYXZlIGJlZW4gdW5wYWNrZWQgYnV0IG5vdCB5ZXQgY29uZmlndXJlZC5cbiIKKyJUaGV5IG11c3QgYmUgY29uZmlndXJlZCB1c2luZyBkcGtnIC0tY29uZmlndXJlIG9yIHRoZSBjb25maWd1cmVcbiIKKyJtZW51IG9wdGlvbiBpbiBkc2VsZWN0IGZvciB0aGVtIHRvIHdvcms6XG4iCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzo4NworbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBvbmx5IGhhbGYgY29uZmlndXJlZCwgcHJvYmFibHkgZHVlIHRvIHByb2JsZW1zXG4iCisiY29uZmlndXJpbmcgdGhlbSB0aGUgZmlyc3QgdGltZS4gIFRoZSBjb25maWd1cmF0aW9uIHNob3VsZCBiZSByZXRyaWVkIHVzaW5nXG4iCisiZHBrZyAtLWNvbmZpZ3VyZSA8cGFja2FnZT4gb3IgdGhlIGNvbmZpZ3VyZSBtZW51IG9wdGlvbiBpbiBkc2VsZWN0OlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6OTQKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgb25seSBoYWxmIGluc3RhbGxlZCwgZHVlIHRvIHByb2JsZW1zIGR1cmluZ1xuIgorImluc3RhbGxhdGlvbi4gIFRoZSBpbnN0YWxsYXRpb24gY2FuIHByb2JhYmx5IGJlIGNvbXBsZXRlZCBieSByZXRyeWluZyBpdDtcbiIKKyJ0aGUgcGFja2FnZXMgY2FuIGJlIHJlbW92ZWQgdXNpbmcgZHNlbGVjdCBvciBkcGtnIC0tcmVtb3ZlOlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTAxCittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgYXJlIGF3YWl0aW5nIHByb2Nlc3Npbmcgb2YgdHJpZ2dlcnMgdGhhdCB0aGV5XG4iCisiaGF2ZSBhY3RpdmF0ZWQgaW4gb3RoZXIgcGFja2FnZXMuICBUaGlzIHByb2Nlc3NpbmcgY2FuIGJlIHJlcXVlc3RlZCB1c2luZ1xuIgorImRzZWxlY3Qgb3IgZHBrZyAtLWNvbmZpZ3VyZSAtLXBlbmRpbmcgKG9yIGRwa2cgLS10cmlnZ2Vycy1vbmx5KTpcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZW5xdWlyeS5jOjEwOAorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGhhdmUgYmVlbiB0cmlnZ2VyZWQsIGJ1dCB0aGUgdHJpZ2dlciBwcm9jZXNzaW5nXG4iCisiaGFzIG5vdCB5ZXQgYmVlbiBkb25lLiAgVHJpZ2dlciBwcm9jZXNzaW5nIGNhbiBiZSByZXF1ZXN0ZWQgdXNpbmdcbiIKKyJkc2VsZWN0IG9yIGRwa2cgLS1jb25maWd1cmUgLS1wZW5kaW5nIChvciBkcGtnIC0tdHJpZ2dlcnMtb25seSk6XG4iCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzoxMzcgc3JjL2VucXVpcnkuYzoyMTEgc3JjL2VucXVpcnkuYzoyOTIgc3JjL2VucXVpcnkuYzozNzMKKyM6IHNyYy9lbnF1aXJ5LmM6NDYwIHNyYy9zZWxlY3QuYzo5OCBzcmMvc2VsZWN0LmM6MTY0IHNyYy90cmlnY21kLmM6MTk5CisjOiBzcmMvdXBkYXRlLmM6NDggc3JjL3VwZGF0ZS5jOjExMyBkcGtnLXNwbGl0L3F1ZXVlLmM6MjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgbm8gYXJndW1lbnRzIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTUyCittc2dpZCAiIgorIkFub3RoZXIgcHJvY2VzcyBoYXMgbG9ja2VkIHRoZSBkYXRhYmFzZSBmb3Igd3JpdGluZywgYW5kIG1pZ2h0IGN1cnJlbnRseSBiZVxuIgorIm1vZGlmeWluZyBpdCwgc29tZSBvZiB0aGUgZm9sbG93aW5nIHByb2JsZW1zIG1pZ2h0IGp1c3QgYmUgZHVlIHRvIHRoYXQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzoxOTEKK21zZ2N0eHQgInNlY3Rpb24iCittc2dpZCAiPHVua25vd24+IgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MjUxCisjLCBjLWZvcm1hdAorbXNnaWQgIiAlZCBpbiAlczogIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MjY2CisjLCBjLWZvcm1hdAorbXNnaWQgIiAlZCBwYWNrYWdlLCBmcm9tIHRoZSBmb2xsb3dpbmcgc2VjdGlvbjoiCittc2dpZF9wbHVyYWwgIiAlZCBwYWNrYWdlcywgZnJvbSB0aGUgZm9sbG93aW5nIHNlY3Rpb25zOiIKK21zZ3N0clswXSAiIgorbXNnc3RyWzFdICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzA1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJWZXJzaW9uIG9mIGRwa2cgd2l0aCB3b3JraW5nICVzIHN1cHBvcnQgbm90IHlldCBjb25maWd1cmVkLlxuIgorIiBQbGVhc2UgdXNlICdkcGtnIC0tY29uZmlndXJlIGRwa2cnLCBhbmQgdGhlbiB0cnkgYWdhaW4uXG4iCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzozMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZyBub3QgcmVjb3JkZWQgYXMgaW5zdGFsbGVkLCBjYW5ub3QgY2hlY2sgZm9yICVzIHN1cHBvcnQhXG4iCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzozMjEKK21zZ2lkICJQcmUtRGVwZW5kcyBmaWVsZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvZW5xdWlyeS5jOjMyOQorbXNnaWQgImVwb2NoIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzM3Cittc2dpZCAibG9uZyBmaWxlbmFtZXMiCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzozNDYKK21zZ2lkICJtdWx0aXBsZSBDb25mbGljdHMgYW5kIFJlcGxhY2VzIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6NDM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBjYW5ub3Qgc2VlIGhvdyB0byBzYXRpc2Z5IHByZS1kZXBlbmRlbmN5OlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6NDM1CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzYXRpc2Z5IHByZS1kZXBlbmRlbmNpZXMgZm9yICUuMjUwcyAod2FudGVkIGR1ZSB0byAlLjI1MHMpIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6NDcyCisjLCBjLWZvcm1hdAorbXNnaWQgIm9ic29sZXRlIG9wdGlvbiAnLS0lcycsIHBsZWFzZSB1c2UgJy0tJXMnIGluc3RlYWQuIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6NTE5Cittc2dpZCAiIgorIi0tY29tcGFyZS12ZXJzaW9ucyB0YWtlcyB0aHJlZSBhcmd1bWVudHM6IDx2ZXJzaW9uPiA8cmVsYXRpb24+IDx2ZXJzaW9uPiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZW5xdWlyeS5jOjUyNAorbXNnaWQgIi0tY29tcGFyZS12ZXJzaW9ucyBiYWQgcmVsYXRpb24iCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzo1Mjkgc3JjL2VucXVpcnkuYzo1MzEgc3JjL2VucXVpcnkuYzo1NDAgc3JjL2VucXVpcnkuYzo1NDIKKyMsIGMtZm9ybWF0Cittc2dpZCAidmVyc2lvbiAnJXMnIGhhcyBiYWQgc3ludGF4OiAlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZXJyb3JzLmM6NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBlcnJvciBwcm9jZXNzaW5nICVzICgtLSVzKTpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZXJyb3JzLmM6NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBmYWlsZWQgdG8gYWxsb2NhdGUgbWVtb3J5IGZvciBuZXcgZW50cnkgaW4gbGlzdCBvZiBmYWlsZWQgcGFja2FnZXM6ICVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9lcnJvcnMuYzo3OQorIywgYy1mb3JtYXQKK21zZ2lkICIlczogdG9vIG1hbnkgZXJyb3JzLCBzdG9wcGluZ1xuIgorbXNnc3RyICIiCisKKyM6IHNyYy9lcnJvcnMuYzo4NworbXNnaWQgIkVycm9ycyB3ZXJlIGVuY291bnRlcmVkIHdoaWxlIHByb2Nlc3Npbmc6XG4iCittc2dzdHIgIiIKKworIzogc3JjL2Vycm9ycy5jOjk0Cittc2dpZCAiUHJvY2Vzc2luZyB3YXMgaGFsdGVkIGJlY2F1c2UgdGhlcmUgd2VyZSB0b28gbWFueSBlcnJvcnMuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2Vycm9ycy5jOjEwNQorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlICVzIHdhcyBvbiBob2xkLCBwcm9jZXNzaW5nIGl0IGFueXdheSBhcyB5b3UgcmVxdWVzdGVkXG4iCittc2dzdHIgIiIKKworIzogc3JjL2Vycm9ycy5jOjEwOQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiUGFja2FnZSAlcyBpcyBvbiBob2xkLCBub3QgdG91Y2hpbmcgaXQuICBVc2UgLS1mb3JjZS1ob2xkIHRvIG92ZXJyaWRlLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9lcnJvcnMuYzoxMTkKK21zZ2lkICJvdmVycmlkaW5nIHByb2JsZW0gYmVjYXVzZSAtLWZvcmNlIGVuYWJsZWQ6IgorbXNnc3RyICIiCisKKyM6IHNyYy9maWxlc2RiLmM6MzA3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZmlsZXNkYi5jOjMxMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlIGAlLjI1MHMnIG1pc3NpbmcsIGFzc3VtaW5nIHBhY2thZ2UgaGFzIG5vIGZpbGVzICIKKyJjdXJyZW50bHkgaW5zdGFsbGVkLiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZmlsZXNkYi5jOjMyMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJyUuMjUwcyciCittc2dzdHIgIiIKKworIzogc3JjL2ZpbGVzZGIuYzozMzAKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVhZGluZyBmaWxlcyBsaXN0IGZvciBwYWNrYWdlICclLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9maWxlc2RiLmM6MzM2CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAnJS4yNTBzJyBpcyBtaXNzaW5nIGZpbmFsIG5ld2xpbmUiCittc2dzdHIgIiIKKworIzogc3JjL2ZpbGVzZGIuYzozNDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlIGAlLjI1MHMnIGNvbnRhaW5zIGVtcHR5IGZpbGVuYW1lIgorbXNnc3RyICIiCisKKyM6IHNyYy9maWxlc2RiLmM6MzUyCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9maWxlc2RiLmM6NDYyCittc2dpZCAiKFJlYWRpbmcgZGF0YWJhc2UgLi4uICIKK21zZ3N0ciAiIgorCisjOiBzcmMvZmlsZXNkYi5jOjQ4MworIywgYy1mb3JtYXQKK21zZ2lkICIlZCBmaWxlIG9yIGRpcmVjdG9yeSBjdXJyZW50bHkgaW5zdGFsbGVkLilcbiIKK21zZ2lkX3BsdXJhbCAiJWQgZmlsZXMgYW5kIGRpcmVjdG9yaWVzIGN1cnJlbnRseSBpbnN0YWxsZWQuKVxuIgorbXNnc3RyWzBdICIiCittc2dzdHJbMV0gIiIKKworIzogc3JjL2ZpbGVzZGIuYzo1MTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZmlsZXNkYi5jOjUyNgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgdG8gdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIiIKKworIzogc3JjL2ZpbGVzZGIuYzo1MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZsdXNoIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9maWxlc2RiLmM6NTMwCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBzeW5jIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9maWxlc2RiLmM6NTMzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjbG9zZSB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZmlsZXNkYi5jOjUzNQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gaW5zdGFsbCB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvaGVscC5jOjQ4Cittc2dpZCAibm90IGluc3RhbGxlZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvaGVscC5jOjQ5Cittc2dpZCAibm90IGluc3RhbGxlZCBidXQgY29uZmlncyByZW1haW4iCittc2dzdHIgIiIKKworIzogc3JjL2hlbHAuYzo1MAorbXNnaWQgImJyb2tlbiBkdWUgdG8gZmFpbGVkIHJlbW92YWwgb3IgaW5zdGFsbGF0aW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9oZWxwLmM6NTEKK21zZ2lkICJ1bnBhY2tlZCBidXQgbm90IGNvbmZpZ3VyZWQiCittc2dzdHIgIiIKKworIzogc3JjL2hlbHAuYzo1MgorbXNnaWQgImJyb2tlbiBkdWUgdG8gcG9zdGluc3QgZmFpbHVyZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvaGVscC5jOjUzCittc2dpZCAiYXdhaXRpbmcgdHJpZ2dlciBwcm9jZXNzaW5nIGJ5IGFub3RoZXIgcGFja2FnZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvaGVscC5jOjU0Cittc2dpZCAidHJpZ2dlcmVkIgorbXNnc3RyICIiCisKKyM6IHNyYy9oZWxwLmM6NTUKK21zZ2lkICJpbnN0YWxsZWQiCittc2dzdHIgIiIKKworIzogc3JjL2hlbHAuYzoxMDcKK21zZ2lkICJQQVRIIGlzIG5vdCBzZXQuIgorbXNnc3RyICIiCisKKyM6IHNyYy9oZWxwLmM6MTI5CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuIgorbXNnc3RyICIiCisKKyM6IHNyYy9oZWxwLmM6MTM4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlZCBleHBlY3RlZCBwcm9ncmFtIG5vdCBmb3VuZCBpbiBQQVRIIG9yIG5vdCBleGVjdXRhYmxlLlxuIgorIiVzIgorbXNnaWRfcGx1cmFsICIiCisiJWQgZXhwZWN0ZWQgcHJvZ3JhbXMgbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuXG4iCisiJXMiCittc2dzdHJbMF0gIiIKK21zZ3N0clsxXSAiIgorCisjOiBzcmMvaGVscC5jOjE0MQorbXNnaWQgIiIKKyJOb3RlOiByb290J3MgUEFUSCBzaG91bGQgdXN1YWxseSBjb250YWluIC91c3IvbG9jYWwvc2JpbiwgL3Vzci9zYmluIGFuZCAvIgorInNiaW4uIgorbXNnc3RyICIiCisKKyM6IHNyYy9oZWxwLmM6MTg4Cittc2dpZCAiYWRtaW5kaXIgbXVzdCBiZSBpbnNpZGUgaW5zdGRpciBmb3IgZHBrZyB0byB3b3JrIHByb3Blcmx5IgorbXNnc3RyICIiCisKKyM6IHNyYy9oZWxwLmM6MTkwIHNyYy9tYWluLmM6NzQ3Cittc2dpZCAidW5hYmxlIHRvIHNldGVudiBmb3Igc3VicHJvY2Vzc2VzIgorbXNnc3RyICIiCisKKyM6IHNyYy9oZWxwLmM6MTkyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjaHJvb3QgdG8gYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogc3JjL2hlbHAuYzoxOTQgZHBrZy1kZWIvYnVpbGQuYzo0NTUgZHBrZy1kZWIvYnVpbGQuYzo0NTcKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTM2IGRwa2ctZGViL2J1aWxkLmM6NTU4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byBgJS4yNTVzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvaGVscC5jOjI1NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IGV4ZWN1dGUgcGVybWlzc2lvbnMgb24gYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogc3JjL2hlbHAuYzoyNzYKK21zZ2lkICJ1bmFibGUgdG8gc2V0ZW52IGZvciBtYWludGFpbmVyIHNjcmlwdCIKK21zZ3N0ciAiIgorCisjOiBzcmMvaGVscC5jOjMwMAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnN0YWxsZWQgJXMgc2NyaXB0IgorbXNnc3RyICIiCisKKyM6IHNyYy9oZWxwLmM6MzEzIHNyYy9oZWxwLmM6MzgyIHNyYy9oZWxwLmM6NDQxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0ICVzIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9oZWxwLmM6MzY4IHNyYy9oZWxwLmM6NDI4CisjLCBjLWZvcm1hdAorbXNnaWQgIm5ldyAlcyBzY3JpcHQiCittc2dzdHIgIiIKKworIzogc3JjL2hlbHAuYzo0MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAib2xkICVzIHNjcmlwdCIKK21zZ3N0ciAiIgorCisjOiBzcmMvaGVscC5jOjQxNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCAlcyAnJS4yNTBzJzogJXMiCittc2dzdHIgIiIKKworIzogc3JjL2hlbHAuYzo0MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZyAtIHRyeWluZyBzY3JpcHQgZnJvbSB0aGUgbmV3IHBhY2thZ2UgaW5zdGVhZCAuLi5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvaGVscC5jOjQzOQorbXNnaWQgInRoZXJlIGlzIG5vIHNjcmlwdCBpbiB0aGUgbmV3IHZlcnNpb24gb2YgdGhlIHBhY2thZ2UgLSBnaXZpbmcgdXAiCittc2dzdHIgIiIKKworIzogc3JjL2hlbHAuYzo0NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogLi4uIGl0IGxvb2tzIGxpa2UgdGhhdCB3ZW50IE9LLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9oZWxwLmM6NjE2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWN1cmVseSByZW1vdmUgJyUuMjU1cyciCittc2dzdHIgIiIKKworIzogc3JjL2hlbHAuYzo2MjEgZHBrZy1kZWIvaW5mby5jOjY1IGRwa2ctZGViL2luZm8uYzo2NworbXNnaWQgInJtIGNvbW1hbmQgZm9yIGNsZWFudXAiCittc2dzdHIgIiIKKworIzogc3JjL2luZm9kYi5jOjUyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGVjayBleGlzdGVuY2Ugb2YgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogc3JjL2luZm9kYi5jOjcwCittc2dpZCAiY2Fubm90IHJlYWQgaW5mbyBkaXJlY3RvcnkiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzo2MAorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIG1hbmFnZW1lbnQgcHJvZ3JhbSB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLWl8LS1pbnN0YWxsICAgICAgIDwuZGViIGZpbGUgbmFtZT4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRpcmVjdG9yeT4gLi4uXG4iCisiICAtLXVucGFjayAgICAgICAgICAgPC5kZWIgZmlsZSBuYW1lPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyZWN0b3J5PiAuLi5cbiIKKyIgIC1BfC0tcmVjb3JkLWF2YWlsICA8LmRlYiBmaWxlIG5hbWU+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXJlY3Rvcnk+IC4uLlxuIgorIiAgLS1jb25maWd1cmUgICAgICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC0tdHJpZ2dlcnMtb25seSAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtcnwtLXJlbW92ZSAgICAgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLVB8LS1wdXJnZSAgICAgICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC0tZ2V0LXNlbGVjdGlvbnMgWzxwYXR0ZXJuPiAuLi5dIEdldCBsaXN0IG9mIHNlbGVjdGlvbnMgdG8gc3Rkb3V0LlxuIgorIiAgLS1zZXQtc2VsZWN0aW9ucyAgICAgICAgICAgICAgICAgU2V0IHBhY2thZ2Ugc2VsZWN0aW9ucyBmcm9tIHN0ZGluLlxuIgorIiAgLS1jbGVhci1zZWxlY3Rpb25zICAgICAgICAgICAgICAgRGVzZWxlY3QgZXZlcnkgbm9uLWVzc2VudGlhbCBwYWNrYWdlLlxuIgorIiAgLS11cGRhdGUtYXZhaWwgPFBhY2thZ2VzLWZpbGU+ICAgUmVwbGFjZSBhdmFpbGFibGUgcGFja2FnZXMgaW5mby5cbiIKKyIgIC0tbWVyZ2UtYXZhaWwgPFBhY2thZ2VzLWZpbGU+ICAgIE1lcmdlIHdpdGggaW5mbyBmcm9tIGZpbGUuXG4iCisiICAtLWNsZWFyLWF2YWlsICAgICAgICAgICAgICAgICAgICBFcmFzZSBleGlzdGluZyBhdmFpbGFibGUgaW5mby5cbiIKKyIgIC0tZm9yZ2V0LW9sZC11bmF2YWlsICAgICAgICAgICAgIEZvcmdldCB1bmluc3RhbGxlZCB1bmF2YWlsYWJsZSBwa2dzLlxuIgorIiAgLXN8LS1zdGF0dXMgPHBhY2thZ2U+IC4uLiAgICAgICAgRGlzcGxheSBwYWNrYWdlIHN0YXR1cyBkZXRhaWxzLlxuIgorIiAgLXB8LS1wcmludC1hdmFpbCA8cGFja2FnZT4gLi4uICAgRGlzcGxheSBhdmFpbGFibGUgdmVyc2lvbiBkZXRhaWxzLlxuIgorIiAgLUx8LS1saXN0ZmlsZXMgPHBhY2thZ2U+IC4uLiAgICAgTGlzdCBmaWxlcyBgb3duZWQnIGJ5IHBhY2thZ2UocykuXG4iCisiICAtbHwtLWxpc3QgWzxwYXR0ZXJuPiAuLi5dICAgICAgICBMaXN0IHBhY2thZ2VzIGNvbmNpc2VseS5cbiIKKyIgIC1TfC0tc2VhcmNoIDxwYXR0ZXJuPiAuLi4gICAgICAgIEZpbmQgcGFja2FnZShzKSBvd25pbmcgZmlsZShzKS5cbiIKKyIgIC1DfC0tYXVkaXQgICAgICAgICAgICAgICAgICAgICAgIENoZWNrIGZvciBicm9rZW4gcGFja2FnZShzKS5cbiIKKyIgIC0tcHJpbnQtYXJjaGl0ZWN0dXJlICAgICAgICAgICAgIFByaW50IGRwa2cgYXJjaGl0ZWN0dXJlLlxuIgorIiAgLS1jb21wYXJlLXZlcnNpb25zIDxhPiA8b3A+IDxiPiAgQ29tcGFyZSB2ZXJzaW9uIG51bWJlcnMgLSBzZWUgYmVsb3cuXG4iCisiICAtLWZvcmNlLWhlbHAgICAgICAgICAgICAgICAgICAgICBTaG93IGhlbHAgb24gZm9yY2luZy5cbiIKKyIgIC1EaHwtLWRlYnVnPWhlbHAgICAgICAgICAgICAgICAgIFNob3cgaGVscCBvbiBkZWJ1Z2dpbmcuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoxMTMgc3JjL3F1ZXJ5Y21kLmM6NjMxIHNyYy90cmlnY21kLmM6NzcgZHBrZy1kZWIvbWFpbi5jOjg4CisjOiBkcGtnLXNwbGl0L21haW4uYzo3NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiICAtaHwtLWhlbHAgICAgICAgICAgICAgICAgICAgICAgICBTaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICAgICAgICAgU2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjExOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVXNlIGRwa2cgLWJ8LS1idWlsZHwtY3wtLWNvbnRlbnRzfC1lfC0tY29udHJvbHwtSXwtLWluZm98LWZ8LS1maWVsZHxcbiIKKyIgLXh8LS1leHRyYWN0fC1YfC0tdmV4dHJhY3R8LS1mc3lzLXRhcmZpbGUgIG9uIGFyY2hpdmVzICh0eXBlICVzIC0taGVscCkuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoxMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkZvciBpbnRlcm5hbCB1c2U6IGRwa2cgLS1hc3NlcnQtc3VwcG9ydC1wcmVkZXBlbmRzIHwgLS1wcmVkZXAtcGFja2FnZSB8XG4iCisiICAtLWFzc2VydC13b3JraW5nLWVwb2NoIHwgLS1hc3NlcnQtbG9uZy1maWxlbmFtZXMgfCAtLWFzc2VydC1tdWx0aS1jb25yZXAuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoxMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyIgIC0tcm9vdD08ZGlyZWN0b3J5PiAgICAgICAgIEluc3RhbGwgb24gYSBkaWZmZXJlbnQgcm9vdCBkaXJlY3RvcnkuXG4iCisiICAtLWluc3RkaXI9PGRpcmVjdG9yeT4gICAgICBDaGFuZ2UgaW5zdGFsbGF0aW9uIGRpciB3aXRob3V0IGNoYW5naW5nIGFkbWluICIKKyJkaXIuXG4iCisiICAtLXBhdGgtZXhjbHVkZT08cGF0dGVybj4gICBEbyBub3QgaW5zdGFsbCBwYXRocyB3aGljaCBtYXRjaCBhIHNoZWxsICIKKyJwYXR0ZXJuLlxuIgorIiAgLS1wYXRoLWluY2x1ZGU9PHBhdHRlcm4+ICAgUmUtaW5jbHVkZSBhIHBhdHRlcm4gYWZ0ZXIgYSBwcmV2aW91cyAiCisiZXhjbHVzaW9uLlxuIgorIiAgLU98LS1zZWxlY3RlZC1vbmx5ICAgICAgICAgU2tpcCBwYWNrYWdlcyBub3Qgc2VsZWN0ZWQgZm9yIGluc3RhbGwvIgorInVwZ3JhZGUuXG4iCisiICAtRXwtLXNraXAtc2FtZS12ZXJzaW9uICAgICBTa2lwIHBhY2thZ2VzIHdob3NlIHNhbWUgdmVyc2lvbiBpcyBpbnN0YWxsZWQuXG4iCisiICAtR3wtLXJlZnVzZS1kb3duZ3JhZGUgICAgICBTa2lwIHBhY2thZ2VzIHdpdGggZWFybGllciB2ZXJzaW9uIHRoYW4gIgorImluc3RhbGxlZC5cbiIKKyIgIC1CfC0tYXV0by1kZWNvbmZpZ3VyZSAgICAgIEluc3RhbGwgZXZlbiBpZiBpdCB3b3VsZCBicmVhayBzb21lIG90aGVyICIKKyJwYWNrYWdlLlxuIgorIiAgLS1bbm8tXXRyaWdnZXJzICAgICAgICAgICAgU2tpcCBvciBmb3JjZSBjb25zZXF1ZW50aWFsIHRyaWdnZXIgIgorInByb2Nlc3NpbmcuXG4iCisiICAtLW5vLWRlYnNpZyAgICAgICAgICAgICAgICBEbyBub3QgdHJ5IHRvIHZlcmlmeSBwYWNrYWdlIHNpZ25hdHVyZXMuXG4iCisiICAtLW5vLWFjdHwtLWRyeS1ydW58LS1zaW11bGF0ZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSnVzdCBzYXkgd2hhdCB3ZSB3b3VsZCBkbyAtIGRvbid0IGRvIGl0LlxuIgorIiAgLUR8LS1kZWJ1Zz08b2N0YWw+ICAgICAgICAgRW5hYmxlIGRlYnVnZ2luZyAoc2VlIC1EaGVscCBvciAtLWRlYnVnPWhlbHApLlxuIgorIiAgLS1zdGF0dXMtZmQgPG4+ICAgICAgICAgICAgU2VuZCBzdGF0dXMgY2hhbmdlIHVwZGF0ZXMgdG8gZmlsZSBkZXNjcmlwdG9yICIKKyI8bj4uXG4iCisiICAtLWxvZz08ZmlsZW5hbWU+ICAgICAgICAgICBMb2cgc3RhdHVzIGNoYW5nZXMgYW5kIGFjdGlvbnMgdG8gPGZpbGVuYW1lPi5cbiIKKyIgIC0taWdub3JlLWRlcGVuZHM9PHBhY2thZ2U+LC4uLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSWdub3JlIGRlcGVuZGVuY2llcyBpbnZvbHZpbmcgPHBhY2thZ2U+LlxuIgorIiAgLS1mb3JjZS0uLi4gICAgICAgICAgICAgICAgT3ZlcnJpZGUgcHJvYmxlbXMgKHNlZSAtLWZvcmNlLWhlbHApLlxuIgorIiAgLS1uby1mb3JjZS0uLi58LS1yZWZ1c2UtLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9wIHdoZW4gcHJvYmxlbXMgZW5jb3VudGVyZWQuXG4iCisiICAtLWFib3J0LWFmdGVyIDxuPiAgICAgICAgICBBYm9ydCBhZnRlciBlbmNvdW50ZXJpbmcgPG4+IGVycm9ycy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjE1NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tcGFyaXNvbiBvcGVyYXRvcnMgZm9yIC0tY29tcGFyZS12ZXJzaW9ucyBhcmU6XG4iCisiICBsdCBsZSBlcSBuZSBnZSBndCAgICAgICAodHJlYXQgZW1wdHkgdmVyc2lvbiBhcyBlYXJsaWVyIHRoYW4gYW55ICIKKyJ2ZXJzaW9uKTtcbiIKKyIgIGx0LW5sIGxlLW5sIGdlLW5sIGd0LW5sICh0cmVhdCBlbXB0eSB2ZXJzaW9uIGFzIGxhdGVyIHRoYW4gYW55IHZlcnNpb24pO1xuIgorIiAgPCA8PCA8PSA9ID49ID4+ID4gICAgICAgKG9ubHkgZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBjb250cm9sIGZpbGUgIgorInN5bnRheCkuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoxNjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiVXNlIGBkc2VsZWN0JyBvciBgYXB0aXR1ZGUnIGZvciB1c2VyLWZyaWVuZGx5IHBhY2thZ2UgbWFuYWdlbWVudC5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjE3MAorbXNnaWQgIiIKKyJUeXBlIGRwa2cgLS1oZWxwIGZvciBoZWxwIGFib3V0IGluc3RhbGxpbmcgYW5kIGRlaW5zdGFsbGluZyBwYWNrYWdlcyBbKl07XG4iCisiVXNlIGBkc2VsZWN0JyBvciBgYXB0aXR1ZGUnIGZvciB1c2VyLWZyaWVuZGx5IHBhY2thZ2UgbWFuYWdlbWVudDtcbiIKKyJUeXBlIGRwa2cgLURoZWxwIGZvciBhIGxpc3Qgb2YgZHBrZyBkZWJ1ZyBmbGFnIHZhbHVlcztcbiIKKyJUeXBlIGRwa2cgLS1mb3JjZS1oZWxwIGZvciBhIGxpc3Qgb2YgZm9yY2luZyBvcHRpb25zO1xuIgorIlR5cGUgZHBrZy1kZWIgLS1oZWxwIGZvciBoZWxwIGFib3V0IG1hbmlwdWxhdGluZyAqLmRlYiBmaWxlcztcbiIKKyJcbiIKKyJPcHRpb25zIG1hcmtlZCBbKl0gcHJvZHVjZSBhIGxvdCBvZiBvdXRwdXQgLSBwaXBlIGl0IHRocm91Z2ggYGxlc3MnIG9yICIKKyJgbW9yZScgISIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIxOQorbXNnaWQgIlNldCBhbGwgZm9yY2Ugb3B0aW9ucyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIyMQorbXNnaWQgIlJlcGxhY2UgYSBwYWNrYWdlIHdpdGggYSBsb3dlciB2ZXJzaW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjIzCittc2dpZCAiQ29uZmlndXJlIGFueSBwYWNrYWdlIHdoaWNoIG1heSBoZWxwIHRoaXMgb25lIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjI1Cittc2dpZCAiUHJvY2VzcyBpbmNpZGVudGFsIHBhY2thZ2VzIGV2ZW4gd2hlbiBvbiBob2xkIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjI3Cittc2dpZCAiVHJ5IHRvIChkZSlpbnN0YWxsIHRoaW5ncyBldmVuIHdoZW4gbm90IHJvb3QiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjkKK21zZ2lkICJQQVRIIGlzIG1pc3NpbmcgaW1wb3J0YW50IHByb2dyYW1zLCBwcm9ibGVtcyBsaWtlbHkiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzEKK21zZ2lkICJJbnN0YWxsIGEgcGFja2FnZSBldmVuIGlmIGl0IGZhaWxzIGF1dGhlbnRpY2l0eSBjaGVjayIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzMworbXNnaWQgIlByb2Nlc3MgZXZlbiBwYWNrYWdlcyB3aXRoIHdyb25nIHZlcnNpb25zIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjM1Cittc2dpZCAiT3ZlcndyaXRlIGEgZmlsZSBmcm9tIG9uZSBwYWNrYWdlIHdpdGggYW5vdGhlciIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzNworbXNnaWQgIk92ZXJ3cml0ZSBhIGRpdmVydGVkIGZpbGUgd2l0aCBhbiB1bmRpdmVydGVkIHZlcnNpb24iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzkKK21zZ2lkICJPdmVyd3JpdGUgb25lIHBhY2thZ2UncyBkaXJlY3Rvcnkgd2l0aCBhbm90aGVyJ3MgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI0MQorbXNnaWQgIkRvIG5vdCBwZXJmb3JtIHNhZmUgSS9PIG9wZXJhdGlvbnMgd2hlbiB1bnBhY2tpbmciCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDMKK21zZ2lkICJBbHdheXMgdXNlIHRoZSBuZXcgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDUKK21zZ2lkICJBbHdheXMgdXNlIHRoZSBvbGQgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDgKK21zZ2lkICIiCisiVXNlIHRoZSBkZWZhdWx0IG9wdGlvbiBmb3IgbmV3IGNvbmZpZyBmaWxlcyBpZiBvbmVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgaXMgYXZhaWxhYmxlLCBkb24ndCBwcm9tcHQuIElmIG5vIGRlZmF1bHQgY2FuIGJlICIKKyJmb3VuZCxcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgeW91IHdpbGwgYmUgcHJvbXB0ZWQgdW5sZXNzIG9uZSBvZiB0aGUgY29uZm9sZCBvclxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICBjb25mbmV3IG9wdGlvbnMgaXMgYWxzbyBnaXZlbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI1MworbXNnaWQgIkFsd2F5cyBpbnN0YWxsIG1pc3NpbmcgY29uZmlnIGZpbGVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjU1Cittc2dpZCAiT2ZmZXIgdG8gcmVwbGFjZSBjb25maWcgZmlsZXMgd2l0aCBubyBuZXcgdmVyc2lvbnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNTcKK21zZ2lkICJQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyBvciBubyBhcmNoaXRlY3R1cmUiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNTkKK21zZ2lkICJJbnN0YWxsIGV2ZW4gaWYgaXQgd291bGQgYnJlYWsgYW5vdGhlciBwYWNrYWdlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjYxCittc2dpZCAiQWxsb3cgaW5zdGFsbGF0aW9uIG9mIGNvbmZsaWN0aW5nIHBhY2thZ2VzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjYzCittc2dpZCAiVHVybiBhbGwgZGVwZW5kZW5jeSBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjY1Cittc2dpZCAiVHVybiBkZXBlbmRlbmN5IHZlcnNpb24gcHJvYmxlbXMgaW50byB3YXJuaW5ncyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI2NworbXNnaWQgIlJlbW92ZSBwYWNrYWdlcyB3aGljaCByZXF1aXJlIGluc3RhbGxhdGlvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI2OQorbXNnaWQgIlJlbW92ZSBhbiBlc3NlbnRpYWwgcGFja2FnZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4MQorbXNnaWQgIkdlbmVyYWxseSBoZWxwZnVsIHByb2dyZXNzIGluZm9ybWF0aW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjgyCittc2dpZCAiSW52b2NhdGlvbiBhbmQgc3RhdHVzIG9mIG1haW50YWluZXIgc2NyaXB0cyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4MworbXNnaWQgIk91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4NAorbXNnaWQgIkxvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg1Cittc2dpZCAiT3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4NgorbXNnaWQgIkxvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4NworbXNnaWQgIkRlcGVuZGVuY2llcyBhbmQgY29uZmxpY3RzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg4Cittc2dpZCAiTG90cyBvZiBkZXBlbmRlbmNpZXMvY29uZmxpY3RzIG91dHB1dCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4OQorbXNnaWQgIlRyaWdnZXIgYWN0aXZhdGlvbiBhbmQgcHJvY2Vzc2luZyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MAorbXNnaWQgIkxvdHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2VycyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MQorbXNnaWQgIlNpbGx5IGFtb3VudHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2VycyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MgorbXNnaWQgIkxvdHMgb2YgZHJpdmVsIGFib3V0IGVnIHRoZSBkcGtnL2luZm8gZGlyZWN0b3J5IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjkzCittc2dpZCAiSW5zYW5lIGFtb3VudHMgb2YgZHJpdmVsIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MzA0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlcyBkZWJ1Z2dpbmcgb3B0aW9uLCAtLWRlYnVnPTxvY3RhbD4gb3IgLUQ8b2N0YWw+OlxuIgorIlxuIgorIiBOdW1iZXIgIFJlZi4gaW4gc291cmNlICAgRGVzY3JpcHRpb25cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjMxMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiRGVidWdnaW5nIG9wdGlvbnMgY2FuIGJlIG1peGVkIHVzaW5nIGJpdHdpc2Utb3IuXG4iCisiTm90ZSB0aGF0IHRoZSBtZWFuaW5ncyBhbmQgdmFsdWVzIGFyZSBzdWJqZWN0IHRvIGNoYW5nZS5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjMxOQorbXNnaWQgIi0tZGVidWcgcmVxdWlyZXMgYW4gb2N0YWwgYXJndW1lbnQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzozNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAibnVsbCBwYWNrYWdlIG5hbWUgaW4gLS1pZ25vcmUtZGVwZW5kcyBjb21tYS1zZXBhcmF0ZWQgbGlzdCBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjM1NAorIywgYy1mb3JtYXQKK21zZ2lkICItLWlnbm9yZS1kZXBlbmRzIHJlcXVpcmVzIGEgbGVnYWwgcGFja2FnZSBuYW1lLiBgJS4yNTBzJyBpcyBub3Q7ICVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MzcxIHNyYy9tYWluLmM6MzgxIHNyYy9tYWluLmM6NjQ5IGRwa2ctc3BsaXQvbWFpbi5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGludGVnZXIgZm9yIC0tJXM6IGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6NDM4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGV4ZWN1dGluZyBob29rICclcycsIGV4aXQgY29kZSAlZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjQ2NQorbXNnaWQgInN0YXR1cyBsb2dnZXIiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzo0ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzIGZvcmNpbmcgb3B0aW9ucyAtIGNvbnRyb2wgYmVoYXZpb3VyIHdoZW4gcHJvYmxlbXMgZm91bmQ6XG4iCisiICB3YXJuIGJ1dCBjb250aW51ZTogIC0tZm9yY2UtPHRoaW5nPiw8dGhpbmc+LC4uLlxuIgorIiAgc3RvcCB3aXRoIGVycm9yOiAgICAtLXJlZnVzZS08dGhpbmc+LDx0aGluZz4sLi4uIHwgLS1uby1mb3JjZS08dGhpbmc+LC4uLlxuIgorIiBGb3JjaW5nIHRoaW5nczpcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjQ5MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiV0FSTklORyAtIHVzZSBvZiBvcHRpb25zIG1hcmtlZCBbIV0gY2FuIHNlcmlvdXNseSBkYW1hZ2UgeW91ciBpbnN0YWxsYXRpb24uXG4iCisiRm9yY2luZyBvcHRpb25zIG1hcmtlZCBbKl0gYXJlIGVuYWJsZWQgYnkgZGVmYXVsdC5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjUwNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGZvcmNlL3JlZnVzZSBvcHRpb24gYCUuKnMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6NTEzCisjLCBjLWZvcm1hdAorbXNnaWQgIm9ic29sZXRlIGZvcmNlL3JlZnVzZSBvcHRpb24gJyVzJ1xuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6NjQzCittc2dpZCAiLS1jb21tYW5kLWZkIHRha2VzIG9uZSBhcmd1bWVudCwgbm90IHplcm8iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzo2NDUKK21zZ2lkICItLWNvbW1hbmQtZmQgb25seSB0YWtlcyBvbmUgYXJndW1lbnQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzo2NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGRuJ3Qgb3BlbiBgJWknIGZvciBzdHJlYW0iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzo2NzYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgYmVmb3JlIGVuZCBvZiBsaW5lICVkIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6NzE5IHNyYy9tYWluLmM6NzQxIHNyYy9xdWVyeWNtZC5jOjY5MiBzcmMvc3RhdGNtZC5jOjM3OQorIzogZHBrZy1kZWIvbWFpbi5jOjIwMSBkcGtnLXNwbGl0L21haW4uYzoxNjMKK21zZ2lkICJuZWVkIGFuIGFjdGlvbiBvcHRpb24iCittc2dzdHIgIiIKKworIzogc3JjL3BhY2thZ2VzLmM6MTEzCittc2dpZCAiIgorInlvdSBtdXN0IHNwZWNpZnkgcGFja2FnZXMgYnkgdGhlaXIgb3duIG5hbWVzLCBub3QgYnkgcXVvdGluZyB0aGUgbmFtZXMgb2YgIgorInRoZSBmaWxlcyB0aGV5IGNvbWUgaW4iCittc2dzdHIgIiIKKworIzogc3JjL3BhY2thZ2VzLmM6MTMzCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgLS1wZW5kaW5nIGRvZXMgbm90IHRha2UgYW55IG5vbi1vcHRpb24gYXJndW1lbnRzIgorbXNnc3RyICIiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjEzOCBzcmMvcXVlcnljbWQuYzozNzUgc3JjL3F1ZXJ5Y21kLmM6NTY1CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYXQgbGVhc3Qgb25lIHBhY2thZ2UgbmFtZSBhcmd1bWVudCIKK21zZ3N0ciAiIgorCisjOiBzcmMvcGFja2FnZXMuYzoxNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSAlcyBsaXN0ZWQgbW9yZSB0aGFuIG9uY2UsIG9ubHkgcHJvY2Vzc2luZyBvbmNlLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjE4MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiTW9yZSB0aGFuIG9uZSBjb3B5IG9mIHBhY2thZ2UgJXMgaGFzIGJlZW4gdW5wYWNrZWRcbiIKKyIgaW4gdGhpcyBydW4gISAgT25seSBjb25maWd1cmluZyBpdCBvbmNlLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjIzMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisicGFja2FnZSAlLjI1MHMgaXMgbm90IHJlYWR5IGZvciB0cmlnZ2VyIHByb2Nlc3NpbmdcbiIKKyIgKGN1cnJlbnQgc3RhdHVzIGAlLjI1MHMnIHdpdGggbm8gcGVuZGluZyB0cmlnZ2VycykiCittc2dzdHIgIiIKKworIzogc3JjL3BhY2thZ2VzLmM6MzM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyB3aGljaCBwcm92aWRlcyAlcyBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjMzNworIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgaXMgdG8gYmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcGFja2FnZXMuYzozNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBWZXJzaW9uIG9mICVzIG9uIHN5c3RlbSBpcyAlcy5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcGFja2FnZXMuYzozNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIHdoaWNoIHByb3ZpZGVzICVzIGF3YWl0cyB0cmlnZ2VyIHByb2Nlc3NpbmcuXG4iCittc2dzdHIgIiIKKworIzogc3JjL3BhY2thZ2VzLmM6MzgwCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyBhd2FpdHMgdHJpZ2dlciBwcm9jZXNzaW5nLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQxMAorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiBhbHNvIGNvbmZpZ3VyaW5nIGAlcycgKHJlcXVpcmVkIGJ5IGAlcycpXG4iCittc2dzdHIgIiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDE4CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyB3aGljaCBwcm92aWRlcyAlcyBpcyBub3QgY29uZmlndXJlZCB5ZXQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDIxCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyBpcyBub3QgY29uZmlndXJlZCB5ZXQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyB3aGljaCBwcm92aWRlcyAlcyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQzNQorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgaXMgbm90IGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcGFja2FnZXMuYzo0NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICVzICglcykgYnJlYWtzICVzIGFuZCBpcyAlcy5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcGFja2FnZXMuYzo0NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlcyAoJXMpIHByb3ZpZGVzICVzLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQ4MgorIywgYy1mb3JtYXQKK21zZ2lkICIgIFZlcnNpb24gb2YgJXMgdG8gYmUgY29uZmlndXJlZCBpcyAlcy5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcGFja2FnZXMuYzo1OTYKK21zZ2lkICIgZGVwZW5kcyBvbiAiCittc2dzdHIgIiIKKworIzogc3JjL3BhY2thZ2VzLmM6NjAyCittc2dpZCAiOyBob3dldmVyOlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiLi4uLyVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgZW5zdXJpbmcgYCUuMjUwcycgZG9lc24ndCBleGlzdCIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjk5Cittc2dpZCAic3BsaXQgcGFja2FnZSByZWFzc2VtYmx5IgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTA4Cittc2dpZCAicmVhc3NlbWJsZWQgcGFja2FnZSBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTMzCisjLCBjLWZvcm1hdAorbXNnaWQgIkF1dGhlbnRpY2F0aW5nICVzIC4uLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTM5Cittc2dpZCAicGFja2FnZSBzaWduYXR1cmUgdmVyaWZpY2F0aW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTQ2CisjLCBjLWZvcm1hdAorbXNnaWQgIlZlcmlmaWNhdGlvbiBvbiBwYWNrYWdlICVzIGZhaWxlZCEiCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlZlcmlmaWNhdGlvbiBvbiBwYWNrYWdlICVzIGZhaWxlZCxcbiIKKyJidXQgaW5zdGFsbGluZyBhbnl3YXkgYXMgeW91IHJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICJwYXNzZWRcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE2NSBkcGtnLWRlYi9pbmZvLmM6ODEKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHRlbXBvcmFyeSBkaXJlY3RvcnkiCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlcyBoYXMgdG9vIG1hbnkgQ29uZmxpY3RzL1JlcGxhY2VzIHBhaXJzIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MjQzCisjLCBjLWZvcm1hdAorbXNnaWQgIm9sZCB2ZXJzaW9uIG9mIHBhY2thZ2UgaGFzIG92ZXJseS1sb25nIGluZm8gZmlsZSBuYW1lIHN0YXJ0aW5nIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MjgxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgb2Jzb2xldGUgaW5mbyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6Mjg2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIChzdXBwb3NlZCkgbmV3IGluZm8gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjI5NgorbXNnaWQgInVuYWJsZSB0byBvcGVuIHRlbXAgY29udHJvbCBkaXJlY3RvcnkiCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMDcKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBjb250YWlucyBvdmVybHktbG9uZyBjb250cm9sIGluZm8gZmlsZSBuYW1lIChzdGFydGluZyBgJS41MHMnKSIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMxNAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGNvbnRyb2wgaW5mbyBjb250YWluZWQgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzE2CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgY29udHJvbCBpbmZvIHJtZGlyIG9mIGAlLjI1MHMnIGRpZG4ndCBzYXkgbm90IGEgZGlyIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzI2CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgJXMgY29udGFpbmVkIGxpc3QgYXMgaW5mbyBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzMzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyBpbmZvIGZpbGUgYCUuMjUwcycgYXMgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozNDkgc3JjL3JlbW92ZS5jOjE5OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGVsZXRlIGNvbnRyb2wgaW5mbyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDExCittc2dpZCAiY2Fubm90IGFjY2VzcyBhcmNoaXZlIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDMzCittc2dpZCAicGFja2FnZSBjb250cm9sIGluZm9ybWF0aW9uIGV4dHJhY3Rpb24iCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo0NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVjb3JkZWQgaW5mbyBhYm91dCAlcyBmcm9tICVzLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDY4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgYXJjaGl0ZWN0dXJlICglcykgZG9lcyBub3QgbWF0Y2ggc3lzdGVtICglcykiCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1MjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IHJlZ2FyZGluZyAlcyBjb250YWluaW5nICVzLCBwcmUtZGVwZW5kZW5jeSBwcm9ibGVtOlxuIgorIiVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTI2CisjLCBjLWZvcm1hdAorbXNnaWQgInByZS1kZXBlbmRlbmN5IHByb2JsZW0gLSBub3QgaW5zdGFsbGluZyAlLjI1MHMiCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1MjcKK21zZ2lkICJpZ25vcmluZyBwcmUtZGVwZW5kZW5jeSBwcm9ibGVtISIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjU0MworIywgYy1mb3JtYXQKK21zZ2lkICJQcmVwYXJpbmcgdG8gcmVwbGFjZSAlcyAlcyAodXNpbmcgJXMpIC4uLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIlVucGFja2luZyAlcyAoZnJvbSAlcykgLi4uXG4iCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAibmFtZSBvZiBjb25mZmlsZSAoc3RhcnRpbmcgYCUuMjUwcycpIGlzIHRvbyBsb25nICg+JWQgY2hhcmFjdGVycykiCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2MzMgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVhZCBlcnJvciBpbiAlLjI1MHMiCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyAlLjI1MHMiCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2MzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgdHJ5aW5nIHRvIG9wZW4gJS4yNTBzIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6Njc4CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlLWNvbmZpZ3VyaW5nICVzLCB0byBhbGxvdyByZW1vdmFsIG9mICVzIC4uLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjgxCisjLCBjLWZvcm1hdAorbXNnaWQgIkRlLWNvbmZpZ3VyaW5nICVzIC4uLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NzU1CisjLCBjLWZvcm1hdAorbXNnaWQgIlVucGFja2luZyByZXBsYWNlbWVudCAlLjI1MHMgLi4uXG4iCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NDAKK21zZ2lkICJwYWNrYWdlIGZpbGVzeXN0ZW0gYXJjaGl2ZSBleHRyYWN0aW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6ODU0Cittc2dpZCAiZXJyb3IgcmVhZGluZyBkcGtnLWRlYiB0YXIgb3V0cHV0IgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6ODU2Cittc2dpZCAiY29ycnVwdGVkIGZpbGVzeXN0ZW0gdGFyZmlsZSAtIGNvcnJ1cHRlZCBwYWNrYWdlIGFyY2hpdmUiCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NTkKK21zZ2lkICJkcGtnLWRlYjogemFwIHBvc3NpYmxlIHRyYWlsaW5nIHplcm9zIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTE5CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBzdGF0IG9sZCBmaWxlICclLjI1MHMnIHNvIG5vdCBkZWxldGluZyBpdDogJXMiCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSBvbGQgZGlyZWN0b3J5ICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjkyOAorIywgYy1mb3JtYXQKK21zZ2lkICJvbGQgY29uZmZpbGUgJyUuMjUwcycgd2FzIGFuIGVtcHR5IGRpcmVjdG9yeSAoYW5kIGhhcyBub3cgYmVlbiBkZWxldGVkKSIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjk3NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBvdGhlciBuZXcgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjk4NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisib2xkIGZpbGUgJyUuMjUwcycgaXMgdGhlIHNhbWUgYXMgc2V2ZXJhbCBuZXcgZmlsZXMhIChib3RoICclLjI1MHMnIGFuZCAiCisiJyUuMjUwcycpIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTAyNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2VjdXJlbHkgcmVtb3ZlIG9sZCBmaWxlICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEyMDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiKE5vdGluZyBkaXNhcHBlYXJhbmNlIG9mICVzLCB3aGljaCBoYXMgYmVlbiBjb21wbGV0ZWx5IHJlcGxhY2VkLilcbiIKK21zZ3N0ciAiIgorCisjLiBUUkFOU0xBVE9SUzogVGhpcyBpcyB0aGUgaGVhZGVyIHRoYXQgYXBwZWFycyBvbiAnZHBrZy1xdWVyeSAtbCcuIFRoZQorIy4gKiBzdHJpbmcgc2hvdWxkIHJlbWFpbiB1bmRlciA4MCBjaGFyYWN0ZXJzLiBUaGUgdXBwZXJjYXNlIGxldHRlcnMgaW4KKyMuICogdGhlIHN0YXRlIHZhbHVlcyBkZW5vdGUgdGhlIGFiYnJldmlhdGVkIGxldHRlciB0aGF0IHdpbGwgYXBwZWFyIG9uCisjLiAqIHRoZSBmaXJzdCB0aHJlZSBjb2x1bW5zLCB3aGljaCBzaG91bGQgaWRlYWxseSBtYXRjaCB0aGUgRW5nbGlzaCBvbmUKKyMuICogKGUuZy4gUmVtb3ZlIOKGkiBzdXBSaW1laXgpLCBzZWUgZHBrZy1xdWVyeSgxKSBmb3IgZnVydGhlciBkZXRhaWxzLiBUaGUKKyMuICogdHJhbnNsYXRlZCBtZXNzYWdlIGNhbiB1c2UgYWRkaXRpb25hbCBsaW5lcyBpZiBuZWVkZWQuCisjOiBzcmMvcXVlcnljbWQuYzoxNDkKK21zZ2lkICIiCisiRGVzaXJlZD1Vbmtub3duL0luc3RhbGwvUmVtb3ZlL1B1cmdlL0hvbGRcbiIKKyJ8IFN0YXR1cz1Ob3QvSW5zdC9Db25mLWZpbGVzL1VucGFja2VkL2hhbEYtY29uZi9IYWxmLWluc3QvdHJpZy1hV2FpdC9UcmlnLSIKKyJwZW5kXG4iCisifC8gRXJyPz0obm9uZSkvUmVpbnN0LXJlcXVpcmVkIChTdGF0dXMsRXJyOiB1cHBlcmNhc2U9YmFkKVxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjE1MworbXNnaWQgIk5hbWUiCittc2dzdHIgIiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MTUzCittc2dpZCAiVmVyc2lvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcXVlcnljbWQuYzoxNTQKK21zZ2lkICJEZXNjcmlwdGlvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNDYgc3JjL3F1ZXJ5Y21kLmM6NTExIHNyYy9zZWxlY3QuYzo3NQorIywgYy1mb3JtYXQKK21zZ2lkICJObyBwYWNrYWdlcyBmb3VuZCBtYXRjaGluZyAlcy5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJzaW9uIGJ5ICVzIGZyb206ICVzXG4iCittc2dzdHIgIiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6Mjc1CisjLCBjLWZvcm1hdAorbXNnaWQgImRpdmVyc2lvbiBieSAlcyB0bzogJXNcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9jYWwgZGl2ZXJzaW9uIGZyb206ICVzXG4iCittc2dzdHIgIiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6Mjc5CisjLCBjLWZvcm1hdAorbXNnaWQgImxvY2FsIGRpdmVyc2lvbiB0bzogJXNcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcXVlcnljbWQuYzozMDkKK21zZ2lkICItLXNlYXJjaCBuZWVkcyBhdCBsZWFzdCBvbmUgZmlsZSBuYW1lIHBhdHRlcm4gYXJndW1lbnQiCittc2dzdHIgIiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MzUwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBubyBwYXRoIGZvdW5kIG1hdGNoaW5nIHBhdHRlcm4gJXMuXG4iCittc2dzdHIgIiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MzkzCisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgYCVzJyBpcyBub3QgaW5zdGFsbGVkIGFuZCBubyBpbmZvIGlzIGF2YWlsYWJsZS5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSBgJXMnIGlzIG5vdCBhdmFpbGFibGUuXG4iCittc2dzdHIgIiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDEwIHNyYy9xdWVyeWNtZC5jOjU4NQorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlIGAlcycgaXMgbm90IGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSBgJXMnIGRvZXMgbm90IGNvbnRhaW4gYW55IGZpbGVzICghKVxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQyNQorIywgYy1mb3JtYXQKK21zZ2lkICJsb2NhbGx5IGRpdmVydGVkIHRvOiAlc1xuIgorbXNnc3RyICIiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQyOAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGRpdmVydHMgb3RoZXJzIHRvOiAlc1xuIgorbXNnc3RyICIiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQzMQorIywgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnRlZCBieSAlcyB0bzogJXNcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcXVlcnljbWQuYzo0NTIKK21zZ2lkICIiCisiVXNlIGRwa2cgLS1pbmZvICg9IGRwa2ctZGViIC0taW5mbykgdG8gZXhhbWluZSBhcmNoaXZlIGZpbGVzLFxuIgorImFuZCBkcGtnIC0tY29udGVudHMgKD0gZHBrZy1kZWIgLS1jb250ZW50cykgdG8gbGlzdCB0aGVpciBjb250ZW50cy5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcXVlcnljbWQuYzo1NzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyB0YWtlcyBhdCBtb3N0IHR3byBhcmd1bWVudHMiCittc2dzdHIgIiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NTc4CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbnRyb2wgZmlsZSBjb250YWlucyAlYyIKK21zZ3N0ciAiIgorCisjOiBzcmMvcXVlcnljbWQuYzo2MDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuICVzIHBhY2thZ2UgbWFuYWdlbWVudCBwcm9ncmFtIHF1ZXJ5IHRvb2wgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcXVlcnljbWQuYzo2MTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLXN8LS1zdGF0dXMgPHBhY2thZ2U+IC4uLiAgICAgICAgRGlzcGxheSBwYWNrYWdlIHN0YXR1cyBkZXRhaWxzLlxuIgorIiAgLXB8LS1wcmludC1hdmFpbCA8cGFja2FnZT4gLi4uICAgRGlzcGxheSBhdmFpbGFibGUgdmVyc2lvbiBkZXRhaWxzLlxuIgorIiAgLUx8LS1saXN0ZmlsZXMgPHBhY2thZ2U+IC4uLiAgICAgTGlzdCBmaWxlcyBgb3duZWQnIGJ5IHBhY2thZ2UocykuXG4iCisiICAtbHwtLWxpc3QgWzxwYXR0ZXJuPiAuLi5dICAgICAgICBMaXN0IHBhY2thZ2VzIGNvbmNpc2VseS5cbiIKKyIgIC1XfC0tc2hvdyBbPHBhdHRlcm4+IC4uLl0gICAgICAgIFNob3cgaW5mb3JtYXRpb24gb24gcGFja2FnZShzKS5cbiIKKyIgIC1TfC0tc2VhcmNoIDxwYXR0ZXJuPiAuLi4gICAgICAgIEZpbmQgcGFja2FnZShzKSBvd25pbmcgZmlsZShzKS5cbiIKKyIgIC1jfC0tY29udHJvbC1wYXRoIDxwYWNrYWdlPiBbPGZpbGU+XVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHJpbnQgcGF0aCBmb3IgcGFja2FnZSBjb250cm9sIGZpbGUuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjM2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hZG1pbmRpcj08ZGlyZWN0b3J5PiAgICAgICAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMuXG4iCisiICAtZnwtLXNob3dmb3JtYXQ9PGZvcm1hdD4gICAgICAgICBVc2UgYWx0ZXJuYXRpdmUgZm9ybWF0IGZvciAtLXNob3cuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjQyIGRwa2ctZGViL21haW4uYzoxMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkZvcm1hdCBzeW50YXg6XG4iCisiICBBIGZvcm1hdCBpcyBhIHN0cmluZyB0aGF0IHdpbGwgYmUgb3V0cHV0IGZvciBlYWNoIHBhY2thZ2UuIFRoZSBmb3JtYXRcbiIKKyIgIGNhbiBpbmNsdWRlIHRoZSBzdGFuZGFyZCBlc2NhcGUgc2VxdWVuY2VzIFxcbiAobmV3bGluZSksIFxcciAoY2FycmlhZ2VcbiIKKyIgIHJldHVybikgb3IgXFxcXCAocGxhaW4gYmFja3NsYXNoKS4gUGFja2FnZSBpbmZvcm1hdGlvbiBjYW4gYmUgaW5jbHVkZWRcbiIKKyIgIGJ5IGluc2VydGluZyB2YXJpYWJsZSByZWZlcmVuY2VzIHRvIHBhY2thZ2UgZmllbGRzIHVzaW5nIHRoZSAke3Zhcls7IgorIndpZHRoXX1cbiIKKyIgIHN5bnRheC4gRmllbGRzIHdpbGwgYmUgcmlnaHQtYWxpZ25lZCB1bmxlc3MgdGhlIHdpZHRoIGlzIG5lZ2F0aXZlIGluICIKKyJ3aGljaFxuIgorIiAgY2FzZSBsZWZ0IGFsaWdubWVudCB3aWxsIGJlIHVzZWQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjU2Cittc2dpZCAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBxdWVyeWluZyBwYWNrYWdlcy4iCittc2dzdHIgIiIKKworIzogc3JjL3JlbW92ZS5jOjg4CisjLCBjLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nIHJlcXVlc3QgdG8gcmVtb3ZlICUuMjUwcyB3aGljaCBpc24ndCBpbnN0YWxsZWQuIgorbXNnc3RyICIiCisKKyM6IHNyYy9yZW1vdmUuYzo5NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiaWdub3JpbmcgcmVxdWVzdCB0byByZW1vdmUgJS4yNTBzLCBvbmx5IHRoZSBjb25maWdcbiIKKyIgZmlsZXMgb2Ygd2hpY2ggYXJlIG9uIHRoZSBzeXN0ZW0uIFVzZSAtLXB1cmdlIHRvIHJlbW92ZSB0aGVtIHRvby4iCittc2dzdHIgIiIKKworIzogc3JjL3JlbW92ZS5jOjEwMworbXNnaWQgIlRoaXMgaXMgYW4gZXNzZW50aWFsIHBhY2thZ2UgLSBpdCBzaG91bGQgbm90IGJlIHJlbW92ZWQuIgorbXNnc3RyICIiCisKKyM6IHNyYy9yZW1vdmUuYzoxMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IGRlcGVuZGVuY3kgcHJvYmxlbXMgcHJldmVudCByZW1vdmFsIG9mICVzOlxuIgorIiVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9yZW1vdmUuYzoxMzAKK21zZ2lkICJkZXBlbmRlbmN5IHByb2JsZW1zIC0gbm90IHJlbW92aW5nIgorbXNnc3RyICIiCisKKyM6IHNyYy9yZW1vdmUuYzoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6ICVzOiBkZXBlbmRlbmN5IHByb2JsZW1zLCBidXQgcmVtb3ZpbmcgYW55d2F5IGFzIHlvdSByZXF1ZXN0ZWQ6XG4iCisiJXMiCittc2dzdHIgIiIKKworIzogc3JjL3JlbW92ZS5jOjE0MgorbXNnaWQgIiIKKyJQYWNrYWdlIGlzIGluIGEgdmVyeSBiYWQgaW5jb25zaXN0ZW50IHN0YXRlIC0geW91IHNob3VsZFxuIgorIiByZWluc3RhbGwgaXQgYmVmb3JlIGF0dGVtcHRpbmcgYSByZW1vdmFsLiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcmVtb3ZlLmM6MTQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIldvdWxkIHJlbW92ZSBvciBwdXJnZSAlcyAuLi5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcmVtb3ZlLmM6MTU3CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlbW92aW5nICVzIC4uLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9yZW1vdmUuYzoyNzUgc3JjL3JlbW92ZS5jOjM2NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisid2hpbGUgcmVtb3ZpbmcgJS4yNTBzLCB1bmFibGUgdG8gcmVtb3ZlIGRpcmVjdG9yeSAnJS4yNTBzJzogJXMgLSBkaXJlY3RvcnkgIgorIm1heSBiZSBhIG1vdW50IHBvaW50PyIKK21zZ3N0ciAiIgorCisjOiBzcmMvcmVtb3ZlLmM6Mjg5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWN1cmVseSByZW1vdmUgJyUuMjUwcyciCittc2dzdHIgIiIKKworIzogc3JjL3JlbW92ZS5jOjM2MQorIywgYy1mb3JtYXQKK21zZ2lkICJ3aGlsZSByZW1vdmluZyAlLjI1MHMsIGRpcmVjdG9yeSAnJS4yNTBzJyBub3QgZW1wdHkgc28gbm90IHJlbW92ZWQuIgorbXNnc3RyICIiCisKKyM6IHNyYy9yZW1vdmUuYzozODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlbW92ZSAnJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvcmVtb3ZlLmM6NDA5CisjLCBjLWZvcm1hdAorbXNnaWQgIlB1cmdpbmcgY29uZmlndXJhdGlvbiBmaWxlcyBmb3IgJXMgLi4uXG4iCittc2dzdHIgIiIKKworIzogc3JjL3JlbW92ZS5jOjQ1OQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVtb3ZlIG9sZCBjb25maWcgZmlsZSBgJS4yNTBzJyAoPSBgJS4yNTBzJykiCittc2dzdHIgIiIKKworIzogc3JjL3JlbW92ZS5jOjQ3NAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVhZCBjb25maWcgZmlsZSBkaXIgYCUuMjUwcycgKGZyb20gYCUuMjUwcycpIgorbXNnc3RyICIiCisKKyM6IHNyYy9yZW1vdmUuYzo1MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlbW92ZSBvbGQgYmFja3VwIGNvbmZpZyBmaWxlIGAlLjI1MHMnIChvZiBgJS4yNTBzJykiCittc2dzdHIgIiIKKworIzogc3JjL3JlbW92ZS5jOjU2OAorbXNnaWQgImNhbm5vdCByZW1vdmUgb2xkIGZpbGVzIGxpc3QiCittc2dzdHIgIiIKKworIzogc3JjL3JlbW92ZS5jOjU3NAorbXNnaWQgImNhbid0IHJlbW92ZSBvbGQgcG9zdHJtIHNjcmlwdCIKK21zZ3N0ciAiIgorCisjOiBzcmMvc2VsZWN0LmM6MTE1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW9mIGluIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICIiCisKKyM6IHNyYy9zZWxlY3QuYzoxMTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgbGluZSBpbiBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvc2VsZWN0LmM6MTIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW9mIGFmdGVyIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICIiCisKKyM6IHNyYy9zZWxlY3QuYzoxMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgbGluZSBhZnRlciBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvc2VsZWN0LmM6MTM2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZGF0YSBhZnRlciBwYWNrYWdlIGFuZCBzZWxlY3Rpb24gYXQgbGluZSAlZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvc2VsZWN0LmM6MTM5CisjLCBjLWZvcm1hdAorbXNnaWQgImlsbGVnYWwgcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQ6ICUuMjUwcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvc2VsZWN0LmM6MTQzCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gd2FudGVkIHN0YXR1cyBhdCBsaW5lICVkOiAlLjI1MHMiCittc2dzdHIgIiIKKworIzogc3JjL3NlbGVjdC5jOjE0OQorbXNnaWQgInJlYWQgZXJyb3Igb24gc3RhbmRhcmQgaW5wdXQiCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRjbWQuYzo1MgorbXNnaWQgIlVzZSAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgb3ZlcnJpZGluZyBmaWxlIHN0YXQgaW5mb3JtYXRpb24uIgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0Y21kLmM6NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvcHlyaWdodCAoQykgMjAwMCwgMjAwMSBXaWNoZXJ0IEFra2VybWFuLlxuIgorIkNvcHlyaWdodCAoQykgMjAwNi0yMDA5IEd1aWxsZW0gSm92ZXIuXG4iCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRjbWQuYzo4MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtLWFkZCA8b3duZXI+IDxncm91cD4gPG1vZGU+IDxmaWxlPlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGFkZCBhIG5ldyBlbnRyeSBpbnRvIHRoZSBkYXRhYmFzZS5cbiIKKyIgIC0tcmVtb3ZlIDxmaWxlPiAgICAgICAgICByZW1vdmUgZmlsZSBmcm9tIHRoZSBkYXRhYmFzZS5cbiIKKyIgIC0tbGlzdCBbPGdsb2ItcGF0dGVybj5dICBsaXN0IGN1cnJlbnQgb3ZlcnJpZGVzIGluIHRoZSBkYXRhYmFzZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGNtZC5jOjg5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIHNldCB0aGUgZGlyZWN0b3J5IHdpdGggdGhlIHN0YXRvdmVycmlkZSBmaWxlLlxuIgorIiAgLS11cGRhdGUgICAgICAgICAgICAgICAgIGltbWVkaWF0ZWx5IHVwZGF0ZSBmaWxlIHBlcm1pc3Npb25zLlxuIgorIiAgLS1mb3JjZSAgICAgICAgICAgICAgICAgIGZvcmNlIGFuIGFjdGlvbiBldmVuIGlmIGEgc2FuaXR5IGNoZWNrIGZhaWxzLlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHF1aWV0IG9wZXJhdGlvbiwgbWluaW1hbCBvdXRwdXQuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0Y21kLmM6MTE2Cittc2dpZCAic3RyaXBwaW5nIHRyYWlsaW5nIC8iCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRjbWQuYzoyMDcKK21zZ2lkICJjYW5ub3Qgb3BlbiBuZXcgc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRjbWQuYzoyMjIKK21zZ2lkICJlcnJvciByZW1vdmluZyBzdGF0b3ZlcnJpZGUtb2xkIgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjI0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgbmV3IHN0YXRvdmVycmlkZS1vbGQiCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRjbWQuYzoyMjYKK21zZ2lkICJlcnJvciBpbnN0YWxsaW5nIG5ldyBzdGF0b3ZlcnJpZGUiCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRjbWQuYzoyNDYKK21zZ2lkICItLWFkZCBuZWVkcyBmb3VyIGFyZ3VtZW50cyIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGNtZC5jOjI1NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQW4gb3ZlcnJpZGUgZm9yICclcycgYWxyZWFkeSBleGlzdHMsIGJ1dCAtLWZvcmNlIHNwZWNpZmllZCBzbyB3aWxsIGJlICIKKyJpZ25vcmVkLiIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGNtZC5jOjI2MAorIywgYy1mb3JtYXQKK21zZ2lkICJBbiBvdmVycmlkZSBmb3IgJyVzJyBhbHJlYWR5IGV4aXN0cywgYWJvcnRpbmcuIgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjcyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tdXBkYXRlIGdpdmVuIGJ1dCAlcyBkb2VzIG5vdCBleGlzdCIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGNtZC5jOjI5NgorbXNnaWQgIk5vIG92ZXJyaWRlIHByZXNlbnQuIgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0Y21kLmM6MzA0Cittc2dpZCAiLS11cGRhdGUgaXMgdXNlbGVzcyBmb3IgLS1yZW1vdmUiCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRkYi5jOjU5Cittc2dpZCAic3ludGF4IGVycm9yOiBpbnZhbGlkIHVpZCBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGRiLmM6NjQKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yOiB1bmtub3duIHVzZXIgJyVzJyBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGRiLmM6ODMKK21zZ2lkICJzeW50YXggZXJyb3I6IGludmFsaWQgZ2lkIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0ZGIuYzo4OAorIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3I6IHVua25vd24gZ3JvdXAgJyVzJyBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGRiLmM6MTA0Cittc2dpZCAic3ludGF4IGVycm9yOiBpbnZhbGlkIG1vZGUgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRkYi5jOjEyNworbXNnaWQgImZhaWxlZCB0byBvcGVuIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0ZGIuYzoxMzQKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRkYi5jOjEzNworbXNnaWQgImZhaWxlZCB0byBmc3RhdCBwcmV2aW91cyBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGRiLmM6MTYyCisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWRpbmcgc3RhdG92ZXJyaWRlIGZpbGUgJyUuMjUwcyciCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRkYi5jOjE2OQorbXNnaWQgInN0YXRvdmVycmlkZSBmaWxlIGlzIG1pc3NpbmcgZmluYWwgbmV3bGluZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGRiLmM6MTczCittc2dpZCAic3RhdG92ZXJyaWRlIGZpbGUgY29udGFpbnMgZW1wdHkgbGluZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGRiLmM6MTc4IHNyYy9zdGF0ZGIuYzoxOTAgc3JjL3N0YXRkYi5jOjIwMgorbXNnaWQgInN5bnRheCBlcnJvciBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGRiLmM6MTg2IHNyYy9zdGF0ZGIuYzoxOTggc3JjL3N0YXRkYi5jOjIxMAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGxpbmUgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRkYi5jOjIxNAorIywgYy1mb3JtYXQKK21zZ2lkICJtdWx0aXBsZSBzdGF0dXNvdmVycmlkZXMgcHJlc2VudCBmb3IgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvdHJpZ2NtZC5jOjQ2Cittc2dpZCAiVHlwZSBkcGtnLXRyaWdnZXIgLS1oZWxwIGZvciBoZWxwIGFib3V0IHRoaXMgdXRpbGl0eS4iCittc2dzdHIgIiIKKworIzogc3JjL3RyaWdjbWQuYzo1MQorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gJXMgcGFja2FnZSB0cmlnZ2VyIHV0aWxpdHkgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvdHJpZ2NtZC5jOjY3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJVc2FnZTogJXMgWzxvcHRpb25zPiAuLi5dIDx0cmlnZ2VyLW5hbWU+XG4iCisiICAgICAgICVzIFs8b3B0aW9ucz4gLi4uXSA8Y29tbWFuZD5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvdHJpZ2NtZC5jOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC0tY2hlY2stc3VwcG9ydGVkICAgICAgICAgICAgICAgIENoZWNrIGlmIHRoZSBydW5uaW5nIGRwa2cgc3VwcG9ydHMgIgorInRyaWdnZXJzLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy90cmlnY21kLmM6ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgICAgICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyIgIC0tYnktcGFja2FnZT08cGFja2FnZT4gICAgICAgICAgIE92ZXJyaWRlIHRyaWdnZXIgYXdhaXRlciAobm9ybWFsbHkgc2V0XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ5IGRwa2cpLlxuIgorIiAgLS1uby1hd2FpdCAgICAgICAgICAgICAgICAgICAgICAgTm8gcGFja2FnZSBuZWVkcyB0byBhd2FpdCB0aGUgIgorInByb2Nlc3NpbmcuXG4iCisiICAtLW5vLWFjdCAgICAgICAgICAgICAgICAgICAgICAgICBKdXN0IHRlc3QgLSBkb24ndCBhY3R1YWxseSBjaGFuZ2UgIgorImFueXRoaW5nLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy90cmlnY21kLmM6MTUyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB0cmlnZ2VycyBkYXRhIGRpcmVjdG9yeSBub3QgeWV0IGNyZWF0ZWRcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvdHJpZ2NtZC5jOjE1NgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogdHJpZ2dlciByZWNvcmRzIG5vdCB5ZXQgaW4gZXhpc3RlbmNlXG4iCittc2dzdHIgIiIKKworIzogc3JjL3RyaWdjbWQuYzoyMDUKK21zZ2lkICJ0YWtlcyBvbmUgYXJndW1lbnQsIHRoZSB0cmlnZ2VyIG5hbWUiCittc2dzdHIgIiIKKworIzogc3JjL3RyaWdjbWQuYzoyMTAKK21zZ2lkICJtdXN0IGJlIGNhbGxlZCBmcm9tIGEgbWFpbnRhaW5lciBzY3JpcHQgKG9yIHdpdGggYSAtLWJ5LXBhY2thZ2Ugb3B0aW9uKSIKK21zZ3N0ciAiIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIxNQorIywgYy1mb3JtYXQKK21zZ2lkICJpbGxlZ2FsIGF3YWl0ZWQgcGFja2FnZSBuYW1lICclLjI1MHMnOiAlLjI1MHMiCittc2dzdHIgIiIKKworIzogc3JjL3RyaWdjbWQuYzoyMjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCB0cmlnZ2VyIG5hbWUgYCUuMjUwcyc6ICUuMjUwcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvdHJpZ3Byb2MuYzoyNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBjeWNsZSBmb3VuZCB3aGlsZSBwcm9jZXNzaW5nIHRyaWdnZXJzOlxuIgorIiBjaGFpbiBvZiBwYWNrYWdlcyB3aG9zZSB0cmlnZ2VycyBhcmUgb3IgbWF5IGJlIHJlc3BvbnNpYmxlOlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy90cmlncHJvYy5jOjI1OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiIHBhY2thZ2VzJyBwZW5kaW5nIHRyaWdnZXJzIHdoaWNoIGFyZSBvciBtYXkgYmUgdW5yZXNvbHZhYmxlOlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy90cmlncHJvYy5jOjI4MQorbXNnaWQgInRyaWdnZXJzIGxvb3BpbmcsIGFiYW5kb25lZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvdHJpZ3Byb2MuYzozMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHJvY2Vzc2luZyB0cmlnZ2VycyBmb3IgJXMgLi4uXG4iCittc2dzdHIgIiIKKworIzogc3JjL3VwZGF0ZS5jOjUyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgZXhhY3RseSBvbmUgUGFja2FnZXMtZmlsZSBhcmd1bWVudCIKK21zZ3N0ciAiIgorCisjOiBzcmMvdXBkYXRlLmM6NjIKK21zZ2lkICJ1bmFibGUgdG8gYWNjZXNzIGRwa2cgc3RhdHVzIGFyZWEgZm9yIGJ1bGsgYXZhaWxhYmxlIHVwZGF0ZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvdXBkYXRlLmM6NjQKK21zZ2lkICJidWxrIGF2YWlsYWJsZSB1cGRhdGUgcmVxdWlyZXMgd3JpdGUgYWNjZXNzIHRvIGRwa2cgc3RhdHVzIGFyZWEiCittc2dzdHIgIiIKKworIzogc3JjL3VwZGF0ZS5jOjcxCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlcGxhY2luZyBhdmFpbGFibGUgcGFja2FnZXMgaW5mbywgdXNpbmcgJXMuXG4iCittc2dzdHIgIiIKKworIzogc3JjL3VwZGF0ZS5jOjc0CisjLCBjLWZvcm1hdAorbXNnaWQgIlVwZGF0aW5nIGF2YWlsYWJsZSBwYWNrYWdlcyBpbmZvLCB1c2luZyAlcy5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvdXBkYXRlLmM6MTAxCisjLCBjLWZvcm1hdAorbXNnaWQgIkluZm9ybWF0aW9uIGFib3V0ICVkIHBhY2thZ2Ugd2FzIHVwZGF0ZWQuXG4iCittc2dpZF9wbHVyYWwgIkluZm9ybWF0aW9uIGFib3V0ICVkIHBhY2thZ2VzIHdhcyB1cGRhdGVkLlxuIgorbXNnc3RyWzBdICIiCittc2dzdHJbMV0gIiIKKworIzogc3JjL3VwZGF0ZS5jOjExNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisib2Jzb2xldGUgJy0tJXMnIG9wdGlvbiwgdW5hdmFpbGFibGUgcGFja2FnZXMgYXJlIGF1dG9tYXRpY2FsbHkgY2xlYW5lZCB1cC4iCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBuYW1lICclLjUwcy4uLicgaXMgdG9vIGxvbmciCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoxMjkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgZmlsZSBuYW1lICclLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTg5Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgY29udHJvbCBkaXJlY3RvcnkiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoxOTEKK21zZ2lkICJjb250cm9sIGRpcmVjdG9yeSBpcyBub3QgYSBkaXJlY3RvcnkiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoxOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29udHJvbCBkaXJlY3RvcnkgaGFzIGJhZCBwZXJtaXNzaW9ucyAlMDNsbyAobXVzdCBiZSA+PTA3NTUgYW5kIDw9MDc3NSkiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAibWFpbnRhaW5lciBzY3JpcHQgYCUuNTBzJyBpcyBub3QgYSBwbGFpbiBmaWxlIG9yIHN5bWxpbmsiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyMDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm1haW50YWluZXIgc2NyaXB0IGAlLjUwcycgaGFzIGJhZCBwZXJtaXNzaW9ucyAlMDNsbyAobXVzdCBiZSA+PTA1NTUgYW5kICIKKyI8PTA3NzUpIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjExCisjLCBjLWZvcm1hdAorbXNnaWQgIm1haW50YWluZXIgc2NyaXB0IGAlLjUwcycgaXMgbm90IHN0YXR0YWJsZSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjIzNworbXNnaWQgImVycm9yIG9wZW5pbmcgY29uZmZpbGVzIGZpbGUiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNDYKK21zZ2lkICJlbXB0eSBzdHJpbmcgZnJvbSBmZ2V0cyByZWFkaW5nIGNvbmZmaWxlcyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI1MQorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBuYW1lICclLjUwcy4uLicgaXMgdG9vIGxvbmcsIG9yIG1pc3NpbmcgZmluYWwgbmV3bGluZSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI2NAorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBmaWxlbmFtZSAnJXMnIGNvbnRhaW5zIHRyYWlsaW5nIHdoaXRlIHNwYWNlcyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI2NgorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBgJS4yNTBzJyBkb2VzIG5vdCBhcHBlYXIgaW4gcGFja2FnZSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI2OAorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBgJS4yNTBzJyBpcyBub3Qgc3RhdHRhYmxlIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjcwCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlICclcycgaXMgbm90IGEgcGxhaW4gZmlsZSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI3NAorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBuYW1lICclcycgaXMgZHVwbGljYXRlZCIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI4NworbXNnaWQgImVycm9yIHJlYWRpbmcgY29uZmZpbGVzIGZpbGUiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzozMzkKK21zZ2lkICJwYWNrYWdlIG5hbWUgaGFzIGNoYXJhY3RlcnMgdGhhdCBhcmVuJ3QgbG93ZXJjYXNlIGFscGhhbnVtcyBvciBgLSsuJyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjM0MQorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGNvbnRhaW5zIHVzZXItZGVmaW5lZCBQcmlvcml0eSB2YWx1ZSAnJXMnIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MzQ3CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgY29udGFpbnMgdXNlci1kZWZpbmVkIGZpZWxkICclcyciCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzozNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgJWQgd2FybmluZyBhYm91dCB0aGUgY29udHJvbCBmaWxlKHMpXG4iCittc2dpZF9wbHVyYWwgImlnbm9yaW5nICVkIHdhcm5pbmdzIGFib3V0IHRoZSBjb250cm9sIGZpbGUocylcbiIKK21zZ3N0clswXSAiIgorbXNnc3RyWzFdICIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDAzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDI5CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQzNgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGEgPGRpcmVjdG9yeT4gYXJndW1lbnQiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MDkKK21zZ2lkICItLWJ1aWxkIHRha2VzIGF0IG1vc3QgdHdvIGFyZ3VtZW50cyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQxMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hlY2sgZm9yIGV4aXN0ZW5jZSBvZiBhcmNoaXZlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDMwCittc2dpZCAidGFyZ2V0IGlzIGRpcmVjdG9yeSAtIGNhbm5vdCBza2lwIGNvbnRyb2wgZmlsZSBjaGVjayIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQzMQorbXNnaWQgIm5vdCBjaGVja2luZyBjb250ZW50cyBvZiBjb250cm9sIGFyZWEuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDMyCisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2ctZGViOiBidWlsZGluZyBhbiB1bmtub3duIHBhY2thZ2UgaW4gJyVzJy5cbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQzOQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnLWRlYjogYnVpbGRpbmcgcGFja2FnZSBgJXMnIGluIGAlcycuXG4iCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0NjcgZHBrZy1kZWIvYnVpbGQuYzo1MjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG1ha2UgdGVtcG9yYXJ5IGZpbGUgKCVzKSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ2NyBkcGtnLWRlYi9idWlsZC5jOjQ3MCBkcGtnLWRlYi9idWlsZC5jOjQ3NworIzogZHBrZy1kZWIvYnVpbGQuYzo0ODUgZHBrZy1kZWIvYnVpbGQuYzo0OTQgZHBrZy1kZWIvYnVpbGQuYzo0OTkKK21zZ2lkICJjb250cm9sIG1lbWJlciIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ3MCBkcGtnLWRlYi9idWlsZC5jOjUyNAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gdW5saW5rIHRlbXBvcmFyeSBmaWxlICglcyksICVzIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDg1IGRwa2ctZGViL2J1aWxkLmM6NTkzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdGVtcG9yYXJ5IGZpbGUgKCVzKSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ5NAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gc3RhdCB0ZW1wb3JhcnkgZmlsZSAoJXMpIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDk4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHdyaXRpbmcgYCVzJyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjUyMSBkcGtnLWRlYi9idWlsZC5jOjUyNCBkcGtnLWRlYi9idWlsZC5jOjU0NgorIzogZHBrZy1kZWIvYnVpbGQuYzo1NzIgZHBrZy1kZWIvYnVpbGQuYzo1ODAgZHBrZy1kZWIvYnVpbGQuYzo1OTMKK21zZ2lkICJkYXRhIG1lbWJlciIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjU3MSBkcGtnLWRlYi9idWlsZC5jOjU4MAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgZmlsZW5hbWUgdG8gdGFyIHBpcGUgKCVzKSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjU4NAorbXNnaWQgIjxjb21wcmVzcz4gZnJvbSB0YXIgLWNmIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzo2MSBkcGtnLWRlYi9leHRyYWN0LmM6NjMKK21zZ2lkICJzaGVsbCBjb21tYW5kIHRvIG1vdmUgZmlsZXMiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjcwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGZpbGUgaW4gJXMgaW4gJS4yNTVzIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzo3MgorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciByZWFkaW5nICVzIGZyb20gZmlsZSAlLjI1NXMiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjEyNQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCBhcmNoaXZlIGAlLjI1NXMnIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxMjcKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgYXJjaGl2ZSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTMxCittc2dpZCAiYXJjaGl2ZSBtYWdpYyB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTQzCittc2dpZCAiYXJjaGl2ZSBtZW1iZXIgaGVhZGVyIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIGFyY2hpdmUgaGVhZGVyIG1hZ2ljIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBub3QgYSBkZWJpYW4gYmluYXJ5IGFyY2hpdmUgKHRyeSBkcGtnLXNwbGl0PykiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE1OQorbXNnaWQgImFyY2hpdmUgaW5mb3JtYXRpb24gaGVhZGVyIG1lbWJlciIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTYyCittc2dpZCAiYXJjaGl2ZSBoYXMgbm8gbmV3bGluZXMgaW4gaGVhZGVyIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNjUKK21zZ2lkICJhcmNoaXZlIGhhcyBubyBkb3QgaW4gdmVyc2lvbiBudW1iZXIiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE2OAorIywgYy1mb3JtYXQKK21zZ2lkICJhcmNoaXZlIHZlcnNpb24gJS4yNTBzIG5vdCB1bmRlcnN0b29kLCBnZXQgbmV3ZXIgZHBrZy1kZWIiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE3OSBkcGtnLWRlYi9leHRyYWN0LmM6MjA1CisjLCBjLWZvcm1hdAorbXNnaWQgInNraXBwZWQgYXJjaGl2ZSBtZW1iZXIgZGF0YSBmcm9tICVzIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxOTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiYXJjaGl2ZSAnJS4yNTBzJyBjb250YWlucyBub3QgdW5kZXJzdG9vZCBkYXRhIG1lbWJlciAlLipzLCBnaXZpbmcgdXAiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE5OQorIywgYy1mb3JtYXQKK21zZ2lkICJhcmNoaXZlICclLjI1MHMnIGNvbnRhaW5zIHR3byBjb250cm9sIG1lbWJlcnMsIGdpdmluZyB1cCIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjE0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIgbmV3IGRlYmlhbiBwYWNrYWdlLCB2ZXJzaW9uICVzLlxuIgorIiBzaXplICVqZCBieXRlczogY29udHJvbCBhcmNoaXZlPSAlamQgYnl0ZXMuXG4iCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIzMgorbXNnaWQgImFyY2hpdmUgY29udHJvbCBtZW1iZXIgc2l6ZSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjM1CisjLCBjLWZvcm1hdAorbXNnaWQgImFyY2hpdmUgaGFzIG1hbGZvcm1hdHRlZCBjb250cm9sIG1lbWJlciBzaXplICclcyciCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI0MgorIywgYy1mb3JtYXQKK21zZ2lkICJza2lwcGVkIGFyY2hpdmUgY29udHJvbCBtZW1iZXIgZGF0YSBmcm9tICVzIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiBvbGQgZGViaWFuIHBhY2thZ2UsIHZlcnNpb24gJXMuXG4iCisiIHNpemUgJWpkIGJ5dGVzOiBjb250cm9sIGFyY2hpdmU9ICVqZCwgbWFpbiBhcmNoaXZlPSAlamQuXG4iCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI1NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZy1kZWI6IGZpbGUgbG9va3MgbGlrZSBpdCBtaWdodCBiZSBhbiBhcmNoaXZlIHdoaWNoIGhhcyBiZWVuXG4iCisiZHBrZy1kZWI6ICAgIGNvcnJ1cHRlZCBieSBiZWluZyBkb3dubG9hZGVkIGluIEFTQ0lJIG1vZGVcbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjU5CisjLCBjLWZvcm1hdAorbXNnaWQgImAlLjI1NXMnIGlzIG5vdCBhIGRlYmlhbiBmb3JtYXQgYXJjaGl2ZSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjY2Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIHRvIHBpcGUgaW4gY29weSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjY4Cittc2dpZCAiZmFpbGVkIHRvIGNsb3NlIHBpcGUgaW4gY29weSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6Mjg0Cittc2dpZCAiZGF0YSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzA3Cittc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIGRpcmVjdG9yeSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzEwCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBkaXJlY3RvcnkiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMxMgorbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byBkaXJlY3RvcnkgYWZ0ZXIgY3JlYXRpbmcgaXQiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMyMworbXNnaWQgIjxkZWNvbXByZXNzPiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzI1Cittc2dpZCAicGFzdGUiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjM0MiBkcGtnLWRlYi9leHRyYWN0LmM6MzYzIGRwa2ctZGViL2V4dHJhY3QuYzo0MDIKKyM6IGRwa2ctZGViL2luZm8uYzo3NworIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGEgLmRlYiBmaWxlbmFtZSBhcmd1bWVudCIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzQ3IGRwa2ctZGViL2V4dHJhY3QuYzo0MDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIi0tJXMgbmVlZHMgYSB0YXJnZXQgZGlyZWN0b3J5LlxuIgorIlBlcmhhcHMgeW91IHNob3VsZCBiZSB1c2luZyBkcGtnIC0taW5zdGFsbCA/IgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozNTAgZHBrZy1kZWIvZXh0cmFjdC5jOjQxMAorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIHRha2VzIGF0IG1vc3QgdHdvIGFyZ3VtZW50cyAoLmRlYiBhbmQgZGlyZWN0b3J5KSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzY1CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgb25seSBvbmUgYXJndW1lbnQgKC5kZWIgZmlsZW5hbWUpIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2luZm8uYzo2MworbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byBgLycgZm9yIGNsZWFudXAiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvaW5mby5jOjEwNgorIywgYy1mb3JtYXQKK21zZ2lkICJjb250cm9sIGZpbGUgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTEwCisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2ctZGViOiBgJS4yNTVzJyBjb250YWlucyBubyBjb250cm9sIGNvbXBvbmVudCBgJS4yNTVzJ1xuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAib3BlbiBjb21wb25lbnQgYCUuMjU1cycgKGluICUuMjU1cykgZmFpbGVkIGluIGFuIHVuZXhwZWN0ZWQgd2F5IgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJWQgcmVxdWVzdGVkIGNvbnRyb2wgY29tcG9uZW50IGlzIG1pc3NpbmciCittc2dpZF9wbHVyYWwgIiVkIHJlcXVlc3RlZCBjb250cm9sIGNvbXBvbmVudHMgYXJlIG1pc3NpbmciCittc2dzdHJbMF0gIiIKK21zZ3N0clsxXSAiIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTM5IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo0MjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHNjYW4gZGlyZWN0b3J5IGAlLjI1NXMnIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHN0YXQgYCUuMjU1cycgKGluIGAlLjI1NXMnKSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTUyCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBvcGVuIGAlLjI1NXMnIChpbiBgJS4yNTVzJykiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvaW5mby5jOjE2NyBkcGtnLWRlYi9pbmZvLmM6MTg1IGRwa2ctZGViL2luZm8uYzoxOTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgYCUuMjU1cycgKGluIGAlLjI1NXMnKSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTcwCisjLCBjLWZvcm1hdAorbXNnaWQgIiAlN2pkIGJ5dGVzLCAlNWQgbGluZXMgICAlYyAgJS0yMC4xMjdzICUuMTI3c1xuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxNzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAgICBub3QgYSBwbGFpbiBmaWxlICAgICAgICAgICUuMjU1c1xuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxODYKK21zZ2lkICIobm8gYGNvbnRyb2wnIGZpbGUgaW4gY29udHJvbCBhcmNoaXZlISlcbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MjIyCittc2dpZCAiY291bGQgbm90IG9wZW4gdGhlIGBjb250cm9sJyBjb21wb25lbnQiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvaW5mby5jOjI2MQorbXNnaWQgImZhaWxlZCBkdXJpbmcgcmVhZCBvZiBgY29udHJvbCcgY29tcG9uZW50IgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2luZm8uYzoyNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyB0aGUgJyVzJyBjb21wb25lbnQiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvaW5mby5jOjI3OAorbXNnaWQgIkVycm9yIGluIGZvcm1hdCIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MzI4Cittc2dpZCAiLS1jb250ZW50cyB0YWtlcyBleGFjdGx5IG9uZSBhcmd1bWVudCIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9tYWluLmM6NTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuIGAlcycgcGFja2FnZSBhcmNoaXZlIGJhY2tlbmQgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9tYWluLmM6NzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLWJ8LS1idWlsZCA8ZGlyZWN0b3J5PiBbPGRlYj5dICAgQnVpbGQgYW4gYXJjaGl2ZS5cbiIKKyIgIC1jfC0tY29udGVudHMgPGRlYj4gICAgICAgICAgICAgIExpc3QgY29udGVudHMuXG4iCisiICAtSXwtLWluZm8gPGRlYj4gWzxjZmlsZT4gLi4uXSAgICBTaG93IGluZm8gdG8gc3Rkb3V0LlxuIgorIiAgLVd8LS1zaG93IDxkZWI+ICAgICAgICAgICAgICAgICAgU2hvdyBpbmZvcm1hdGlvbiBvbiBwYWNrYWdlKHMpXG4iCisiICAtZnwtLWZpZWxkIDxkZWI+IFs8Y2ZpZWxkPiAuLi5dICBTaG93IGZpZWxkKHMpIHRvIHN0ZG91dC5cbiIKKyIgIC1lfC0tY29udHJvbCA8ZGViPiBbPGRpcmVjdG9yeT5dIEV4dHJhY3QgY29udHJvbCBpbmZvLlxuIgorIiAgLXh8LS1leHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+ICAgRXh0cmFjdCBmaWxlcy5cbiIKKyIgIC1YfC0tdmV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gIEV4dHJhY3QgJiBsaXN0IGZpbGVzLlxuIgorIiAgLVJ8LS1yYXctZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRXh0cmFjdCBjb250cm9sIGluZm8gYW5kIGZpbGVzLlxuIgorIiAgLS1mc3lzLXRhcmZpbGUgPGRlYj4gICAgICAgICAgICAgT3V0cHV0IGZpbGVzeXN0ZW0gdGFyZmlsZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9tYWluLmM6OTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIjxkZWI+IGlzIHRoZSBmaWxlbmFtZSBvZiBhIERlYmlhbiBmb3JtYXQgYXJjaGl2ZS5cbiIKKyI8Y2ZpbGU+IGlzIHRoZSBuYW1lIG9mIGFuIGFkbWluaXN0cmF0aXZlIGZpbGUgY29tcG9uZW50LlxuIgorIjxjZmllbGQ+IGlzIHRoZSBuYW1lIG9mIGEgZmllbGQgaW4gdGhlIG1haW4gYGNvbnRyb2wnIGZpbGUuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjk5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1zaG93Zm9ybWF0PTxmb3JtYXQ+ICAgICAgICAgICAgVXNlIGFsdGVybmF0aXZlIGZvcm1hdCBmb3IgLS1zaG93LlxuIgorIiAgLXYsIC0tdmVyYm9zZSAgICAgICAgICAgICAgICAgICAgRW5hYmxlIHZlcmJvc2Ugb3V0cHV0LlxuIgorIiAgLUQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRW5hYmxlIGRlYnVnZ2luZyBvdXRwdXQuXG4iCisiICAtLW9sZCwgLS1uZXcgICAgICAgICAgICAgICAgICAgICBTZWxlY3QgYXJjaGl2ZSBmb3JtYXQuXG4iCisiICAtLW5vY2hlY2sgICAgICAgICAgICAgICAgICAgICAgICBTdXBwcmVzcyBjb250cm9sIGZpbGUgY2hlY2sgKGJ1aWxkIGJhZFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWNrYWdlcykuXG4iCisiICAteiMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTZXQgdGhlIGNvbXByZXNzaW9uIGxldmVsIHdoZW4gYnVpbGRpbmcuXG4iCisiICAtWjx0eXBlPiAgICAgICAgICAgICAgICAgICAgICAgICBTZXQgdGhlIGNvbXByZXNzaW9uIHR5cGUgdXNlZCB3aGVuICIKKyJidWlsZGluZy5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWxsb3dlZCB0eXBlczogZ3ppcCwgeHosIGJ6aXAyLCBsem1hLCAiCisibm9uZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTIxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJVc2UgYGRwa2cnIHRvIGluc3RhbGwgYW5kIHJlbW92ZSBwYWNrYWdlcyBmcm9tIHlvdXIgc3lzdGVtLCBvclxuIgorImBkc2VsZWN0JyBvciBgYXB0aXR1ZGUnIGZvciB1c2VyLWZyaWVuZGx5IHBhY2thZ2UgbWFuYWdlbWVudC4gIFBhY2thZ2VzXG4iCisidW5wYWNrZWQgdXNpbmcgYGRwa2ctZGViIC0tZXh0cmFjdCcgd2lsbCBiZSBpbmNvcnJlY3RseSBpbnN0YWxsZWQgIVxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL21haW4uYzoxMzIKK21zZ2lkICIiCisiVHlwZSBkcGtnLWRlYiAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgbWFuaXB1bGF0aW5nICouZGViIGZpbGVzO1xuIgorIlR5cGUgZHBrZyAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgaW5zdGFsbGluZyBhbmQgZGVpbnN0YWxsaW5nIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTQ4CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgaW50ZWdlciBmb3IgLSVjOiAnJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTUxCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgY29tcHJlc3Npb24gbGV2ZWwgZm9yIC0lYzogJWxkJyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTYxCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gY29tcHJlc3Npb24gdHlwZSBgJXMnISIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzo1MgorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgZGlnaXQgKGNvZGUgJWQpIGluICVzIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjYwCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtICUuMjUwcyBtaXNzaW5nIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjYzCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIG1pc3NpbmcgbmV3bGluZSBhZnRlciAlLjI1MHMiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6ODkgZHBrZy1zcGxpdC9tYWluLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHJlYWRpbmcgJS4yNTBzIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEwMworIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgbWFnaWMgYXQgZW5kIG9mIGZpcnN0IGhlYWRlciIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIHBhZGRpbmcgY2hhcmFjdGVyIChjb2RlICVkKSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gbnVsbHMgaW4gaW5mbyBzZWN0aW9uIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyMgorbXNnaWQgImZvcm1hdCB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBmb3JtYXQgdmVyc2lvbiBgJS4yNTBzJyAtIHlvdSBuZWVkIGEgbmV3ZXIgZHBrZy1zcGxpdCIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMjcKK21zZ2lkICJwYWNrYWdlIG5hbWUiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTI4Cittc2dpZCAicGFja2FnZSB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMjkKK21zZ2lkICJwYWNrYWdlIGZpbGUgTUQ1IGNoZWNrc3VtIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEzMgorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgTUQ1IGNoZWNrc3VtIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEzNCBkcGtnLXNwbGl0L2luZm8uYzoxMzUKK21zZ2lkICJhcmNoaXZlIHRvdGFsIHNpemUiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTM2IGRwa2ctc3BsaXQvaW5mby5jOjEzNworbXNnaWQgImFyY2hpdmUgcGFydCBvZmZzZXQiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTM5Cittc2dpZCAiYXJjaGl2ZSBwYXJ0IG51bWJlcnMiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTQyCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIG5vIHNsYXNoIGJldHdlZW4gYXJjaGl2ZSBwYXJ0IG51bWJlcnMiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTQ1Cittc2dpZCAibnVtYmVyIG9mIGFyY2hpdmUgcGFydHMiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTQ3CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBudW1iZXIgb2YgYXJjaGl2ZSBwYXJ0cyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDkKK21zZ2lkICJhcmNoaXZlIHBhcnRzIG51bWJlciIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIGFyY2hpdmUgcGFydCBudW1iZXIiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTU3Cittc2dpZCAicGFja2FnZSBhcmNoaXRlY3R1cmUiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTY2CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBtYWdpYyBhdCBlbmQgb2Ygc2Vjb25kIGhlYWRlciIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gc2Vjb25kIG1lbWJlciBpcyBub3QgZGF0YSBtZW1iZXIiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTc0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIHdyb25nIG51bWJlciBvZiBwYXJ0cyBmb3IgcXVvdGVkIHNpemVzIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE3OAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBzaXplIGlzIHdyb25nIGZvciBxdW90ZWQgcGFydCBudW1iZXIiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTg0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmc3RhdCBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTg5CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIHRvbyBzaG9ydCIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyMDIgZHBrZy1zcGxpdC9pbmZvLmM6MjQ5CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBvcGVuIGFyY2hpdmUgcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjIwNAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIG5vdCBhbiBhcmNoaXZlIHBhcnQiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjA5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczpcbiIKKyIgICAgUGFydCBmb3JtYXQgdmVyc2lvbjogICAgICAgICAgICAlc1xuIgorIiAgICBQYXJ0IG9mIHBhY2thZ2U6ICAgICAgICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gdmVyc2lvbjogICAgICAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiBhcmNoaXRlY3R1cmU6ICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIE1ENSBjaGVja3N1bTogICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gbGVuZ3RoOiAgICAgICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgICAgICAuLi4gc3BsaXQgZXZlcnk6ICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgIFBhcnQgbnVtYmVyOiAgICAgICAgICAgICAgICAgICAgJWQvJWRcbiIKKyIgICAgUGFydCBsZW5ndGg6ICAgICAgICAgICAgICAgICAgICAlamQgYnl0ZXNcbiIKKyIgICAgUGFydCBvZmZzZXQ6ICAgICAgICAgICAgICAgICAgICAlamQgYnl0ZXNcbiIKKyIgICAgUGFydCBmaWxlIHNpemUgKHVzZWQgcG9ydGlvbik6ICAlamQgYnl0ZXNcbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyMjUKK21zZ2N0eHQgImFyY2hpdGVjdHVyZSIKK21zZ2lkICI8dW5rbm93bj4iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjQ0IGRwa2ctc3BsaXQvam9pbi5jOjEwNQorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIHJlcXVpcmVzIG9uZSBvciBtb3JlIHBhcnQgZmlsZSBhcmd1bWVudHMiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjU1CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCVzJyBpcyBub3QgYW4gYXJjaGl2ZSBwYXJ0XG4iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHV0dGluZyBwYWNrYWdlICVzIHRvZ2V0aGVyIGZyb20gJWQgcGFydDogIgorbXNnaWRfcGx1cmFsICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0czogIgorbXNnc3RyWzBdICIiCittc2dzdHJbMV0gIiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gb3V0cHV0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIChyZSlvcGVuIGlucHV0IHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1OAorbXNnaWQgInNraXBwaW5nIHNwbGl0IHBhY2thZ2UgaGVhZGVyIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjU5Cittc2dpZCAic3BsaXQgcGFja2FnZSBwYXJ0IgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjY5IGRwa2ctc3BsaXQvc3BsaXQuYzoyMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZG9uZVxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjg1CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGVzIGAlLjI1MHMnIGFuZCBgJS4yNTBzJyBhcmUgbm90IHBhcnRzIG9mIHRoZSBzYW1lIGZpbGUiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAidGhlcmUgYXJlIHNldmVyYWwgdmVyc2lvbnMgb2YgcGFydCAlZCAtIGF0IGxlYXN0IGAlLjI1MHMnIGFuZCBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzoxMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFydCAlZCBpcyBtaXNzaW5nIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjQ3CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiBgJXMnIHBhY2thZ2Ugc3BsaXQvam9pbiB0b29sOyB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIkNvcHlyaWdodCAoQykgMTk5NC0xOTk2IElhbiBKYWNrc29uLlxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjY3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1zfC0tc3BsaXQgPGZpbGU+IFs8cHJlZml4Pl0gICAgIFNwbGl0IGFuIGFyY2hpdmUuXG4iCisiICAtanwtLWpvaW4gPHBhcnQ+IDxwYXJ0PiAuLi4gICAgICBKb2luIHBhcnRzIHRvZ2V0aGVyLlxuIgorIiAgLUl8LS1pbmZvIDxwYXJ0PiAuLi4gICAgICAgICAgICAgRGlzcGxheSBpbmZvIGFib3V0IGEgcGFydC5cbiIKKyIgIC1hfC0tYXV0byAtbyA8Y29tcGxldGU+IDxwYXJ0PiAgIEF1dG8tYWNjdW11bGF0ZSBwYXJ0cy5cbiIKKyIgIC1sfC0tbGlzdHEgICAgICAgICAgICAgICAgICAgICAgIExpc3QgdW5tYXRjaGVkIHBpZWNlcy5cbiIKKyIgIC1kfC0tZGlzY2FyZCBbPGZpbGVuYW1lPiAuLi5dICAgIERpc2NhcmQgdW5tYXRjaGVkIHBpZWNlcy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo4MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tZGVwb3RkaXIgPGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLyVzLlxuIgorIiAgLVN8LS1wYXJ0c2l6ZSA8c2l6ZT4gICAgICAgICAgICAgSW4gS2lCLCBmb3IgLXMgKGRlZmF1bHQgaXMgNDUwKS5cbiIKKyIgIC1vfC0tb3V0cHV0IDxmaWxlPiAgICAgICAgICAgICAgIEZpbGVuYW1lLCBmb3IgLWogKGRlZmF1bHQgaXNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhY2thZ2U+Xzx2ZXJzaW9uPl88YXJjaD4uZGViKS5cbiIKKyIgIC1RfC0tbnBxdWlldCAgICAgICAgICAgICAgICAgICAgIEJlIHF1aWV0IHdoZW4gLWEgaXMgbm90IGEgcGFydC5cbiIKKyIgIC0tbXNkb3MgICAgICAgICAgICAgICAgICAgICAgICAgIEdlbmVyYXRlIDguMyBmaWxlbmFtZXMuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6OTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkV4aXQgc3RhdHVzOlxuIgorIiAgMCA9IG9rXG4iCisiICAxID0gd2l0aCAtLWF1dG8sIGZpbGUgaXMgbm90IGEgcGFydFxuIgorIiAgMiA9IHRyb3VibGVcbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMDMKK21zZ2lkICJUeXBlIGRwa2ctc3BsaXQgLS1oZWxwIGZvciBoZWxwLiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgZmlsZSBpbiAlLjI1MHMiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6MTI2Cittc2dpZCAicGFydCBzaXplIGlzIGZhciB0b28gbGFyZ2Ugb3IgaXMgbm90IHBvc2l0aXZlIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjEzMAorIywgYy1mb3JtYXQKK21zZ2lkICJwYXJ0IHNpemUgbXVzdCBiZSBhdCBsZWFzdCAlZCBLaUIgKHRvIGFsbG93IGZvciBoZWFkZXIpIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzo5MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBkZXBvdCBkaXJlY3RvcnkgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjEzNAorbXNnaWQgIi0tYXV0byByZXF1aXJlcyB0aGUgdXNlIG9mIHRoZSAtLW91dHB1dCBvcHRpb24iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjEzNgorbXNnaWQgIi0tYXV0byByZXF1aXJlcyBleGFjdGx5IG9uZSBwYXJ0IGZpbGUgYXJndW1lbnQiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE0MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE0MworIywgYy1mb3JtYXQKK21zZ2lkICJGaWxlIGAlLjI1MHMnIGlzIG5vdCBwYXJ0IG9mIGEgbXVsdGlwYXJ0IGFyY2hpdmUuXG4iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE3OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVvcGVuIHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTgyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIG5ldyBkZXBvdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxODQKK21zZ2lkICJleHRyYWN0aW5nIHNwbGl0IHBhcnQiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE5MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVuYW1lIG5ldyBkZXBvdCBmaWxlIGAlLjI1MHMnIHRvIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFydCAlZCBvZiBwYWNrYWdlICVzIGZpbGVkIChzdGlsbCB3YW50ICIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjAwCittc2dpZCAiIGFuZCAiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjIxNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGVsZXRlIHVzZWQtdXAgZGVwb3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjM1Cittc2dpZCAiSnVuayBmaWxlcyBsZWZ0IGFyb3VuZCBpbiB0aGUgZGVwb3QgZGlyZWN0b3J5OlxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNDAgZHBrZy1zcGxpdC9xdWV1ZS5jOjI2OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjQzCisjLCBjLWZvcm1hdAorbXNnaWQgIiAlcyAoJWpkIGJ5dGVzKVxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICVzIChub3QgYSBwbGFpbiBmaWxlKVxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNTAKK21zZ2lkICJQYWNrYWdlcyBub3QgeWV0IHJlYXNzZW1ibGVkOlxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIFBhY2thZ2UgJXM6IHBhcnQocykgIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFydCBmaWxlIGAlLjI1MHMnIGlzIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI3OAorIywgYy1mb3JtYXQKK21zZ2lkICIodG90YWwgJWpkIGJ5dGVzKVxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzozMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRpc2NhcmQgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjMwNQorIywgYy1mb3JtYXQKK21zZ2lkICJEZWxldGVkICVzLlxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzo3MCBkcGtnLXNwbGl0L3NwbGl0LmM6NzYgZHBrZy1zcGxpdC9zcGxpdC5jOjgxCittc2dpZCAicGFja2FnZSBmaWVsZCB2YWx1ZSBleHRyYWN0aW9uIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxMzEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gc291cmNlIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjEzMworbXNnaWQgInVuYWJsZSB0byBmc3RhdCBzb3VyY2UgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTM1CisjLCBjLWZvcm1hdAorbXNnaWQgInNvdXJjZSBmaWxlIGAlLjI1MHMnIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjE1MworIywgYy1mb3JtYXQKK21zZ2lkICJTcGxpdHRpbmcgcGFja2FnZSAlcyBpbnRvICVkIHBhcnQ6ICIKK21zZ2lkX3BsdXJhbCAiU3BsaXR0aW5nIHBhY2thZ2UgJXMgaW50byAlZCBwYXJ0czogIgorbXNnc3RyWzBdICIiCittc2dzdHJbMV0gIiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjE5MworbXNnaWQgIiIKKyJIZWFkZXIgaXMgdG9vIGxvbmcsIG1ha2luZyBwYXJ0IHRvbyBsb25nLiBZb3VyIHBhY2thZ2UgbmFtZSBvciB2ZXJzaW9uXG4iCisibnVtYmVycyBtdXN0IGJlIGV4dHJhb3JkaW5hcmlseSBsb25nLCBvciBzb21ldGhpbmcuIEdpdmluZyB1cC5cbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MjQ5Cittc2dpZCAiLS1zcGxpdCBuZWVkcyBhIHNvdXJjZSBmaWxlbmFtZSBhcmd1bWVudCIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MjUyCittc2dpZCAiLS1zcGxpdCB0YWtlcyBhdCBtb3N0IGEgc291cmNlIGZpbGVuYW1lIGFuZCBkZXN0aW5hdGlvbiBwcmVmaXgiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjg0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLTIwMDIgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDktMjAxMCBSYXBoYWVsIEhlcnR6b2cuXG4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEwMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtLWluc3RhbGwgPGxpbms+IDxuYW1lPiA8cGF0aD4gPHByaW9yaXR5PlxuIgorIiAgICBbLS1zbGF2ZSA8bGluaz4gPG5hbWU+IDxwYXRoPl0gLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkIGEgZ3JvdXAgb2YgYWx0ZXJuYXRpdmVzIHRvIHRoZSBzeXN0ZW0uXG4iCisiICAtLXJlbW92ZSA8bmFtZT4gPHBhdGg+ICAgcmVtb3ZlIDxwYXRoPiBmcm9tIHRoZSA8bmFtZT4gZ3JvdXAgYWx0ZXJuYXRpdmUuXG4iCisiICAtLXJlbW92ZS1hbGwgPG5hbWU+ICAgICAgcmVtb3ZlIDxuYW1lPiBncm91cCBmcm9tIHRoZSBhbHRlcm5hdGl2ZXMgIgorInN5c3RlbS5cbiIKKyIgIC0tYXV0byA8bmFtZT4gICAgICAgICAgICBzd2l0Y2ggdGhlIG1hc3RlciBsaW5rIDxuYW1lPiB0byBhdXRvbWF0aWMgbW9kZS5cbiIKKyIgIC0tZGlzcGxheSA8bmFtZT4gICAgICAgICBkaXNwbGF5IGluZm9ybWF0aW9uIGFib3V0IHRoZSA8bmFtZT4gZ3JvdXAuXG4iCisiICAtLXF1ZXJ5IDxuYW1lPiAgICAgICAgICAgbWFjaGluZSBwYXJzZWFibGUgdmVyc2lvbiBvZiAtLWRpc3BsYXkgPG5hbWU+LlxuIgorIiAgLS1saXN0IDxuYW1lPiAgICAgICAgICAgIGRpc3BsYXkgYWxsIHRhcmdldHMgb2YgdGhlIDxuYW1lPiBncm91cC5cbiIKKyIgIC0tZ2V0LXNlbGVjdGlvbnMgICAgICAgICBsaXN0IG1hc3RlciBhbHRlcm5hdGl2ZSBuYW1lcyBhbmQgdGhlaXIgc3RhdHVzLlxuIgorIiAgLS1zZXQtc2VsZWN0aW9ucyAgICAgICAgIHJlYWQgYWx0ZXJuYXRpdmUgc3RhdHVzIGZyb20gc3RhbmRhcmQgaW5wdXQuXG4iCisiICAtLWNvbmZpZyA8bmFtZT4gICAgICAgICAgc2hvdyBhbHRlcm5hdGl2ZXMgZm9yIHRoZSA8bmFtZT4gZ3JvdXAgYW5kIGFzayAiCisidGhlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlciB0byBzZWxlY3Qgd2hpY2ggb25lIHRvIHVzZS5cbiIKKyIgIC0tc2V0IDxuYW1lPiA8cGF0aD4gICAgICBzZXQgPHBhdGg+IGFzIGFsdGVybmF0aXZlIGZvciA8bmFtZT4uXG4iCisiICAtLWFsbCAgICAgICAgICAgICAgICAgICAgY2FsbCAtLWNvbmZpZyBvbiBhbGwgYWx0ZXJuYXRpdmVzLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIjxsaW5rPiBpcyB0aGUgc3ltbGluayBwb2ludGluZyB0byAlcy88bmFtZT4uXG4iCisiICAoZS5nLiAvdXNyL2Jpbi9wYWdlcilcbiIKKyI8bmFtZT4gaXMgdGhlIG1hc3RlciBuYW1lIGZvciB0aGlzIGxpbmsgZ3JvdXAuXG4iCisiICAoZS5nLiBwYWdlcilcbiIKKyI8cGF0aD4gaXMgdGhlIGxvY2F0aW9uIG9mIG9uZSBvZiB0aGUgYWx0ZXJuYXRpdmUgdGFyZ2V0IGZpbGVzLlxuIgorIiAgKGUuZy4gL3Vzci9iaW4vbGVzcylcbiIKKyI8cHJpb3JpdHk+IGlzIGFuIGludGVnZXI7IG9wdGlvbnMgd2l0aCBoaWdoZXIgbnVtYmVycyBoYXZlIGhpZ2hlciBwcmlvcml0eSAiCisiaW5cbiIKKyIgIGF1dG9tYXRpYyBtb2RlLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFsdGRpciA8ZGlyZWN0b3J5PiAgICAgY2hhbmdlIHRoZSBhbHRlcm5hdGl2ZXMgZGlyZWN0b3J5LlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIGNoYW5nZSB0aGUgYWRtaW5pc3RyYXRpdmUgZGlyZWN0b3J5LlxuIgorIiAgLS1sb2cgPGZpbGU+ICAgICAgICAgICAgIGNoYW5nZSB0aGUgbG9nIGZpbGUuXG4iCisiICAtLWZvcmNlICAgICAgICAgICAgICAgICAgYWxsb3cgcmVwbGFjaW5nIGZpbGVzIHdpdGggYWx0ZXJuYXRpdmUgbGlua3MuXG4iCisiICAtLXNraXAtYXV0byAgICAgICAgICAgICAgc2tpcCBwcm9tcHQgZm9yIGFsdGVybmF0aXZlcyBjb3JyZWN0bHkgIgorImNvbmZpZ3VyZWRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBhdXRvbWF0aWMgbW9kZSAocmVsZXZhbnQgZm9yIC0tY29uZmlnIG9ubHkpXG4iCisiICAtLXZlcmJvc2UgICAgICAgICAgICAgICAgdmVyYm9zZSBvcGVyYXRpb24sIG1vcmUgb3V0cHV0LlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHF1aWV0IG9wZXJhdGlvbiwgbWluaW1hbCBvdXRwdXQuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE2MworbXNnaWQgImVycm9yIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxOTMKK21zZ2lkICJ3YXJuaW5nIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzozNTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidHdvIGNvbW1hbmRzIHNwZWNpZmllZDogLS0lcyBhbmQgLS0lcyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6Mzg3CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBhcHBlbmQgdG8gJyVzJyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NTU2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgJyVzJyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTExMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBmaWxlIHdoaWxlIHRyeWluZyB0byByZWFkICVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTEzCisjLCBjLWZvcm1hdAorbXNnaWQgIndoaWxlIHJlYWRpbmcgJXM6ICVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTE5CisjLCBjLWZvcm1hdAorbXNnaWQgImxpbmUgbm90IHRlcm1pbmF0ZWQgd2hpbGUgdHJ5aW5nIHRvIHJlYWQgJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgY29ycnVwdDogJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAibmV3bGluZXMgcHJvaGliaXRlZCBpbiB1cGRhdGUtYWx0ZXJuYXRpdmVzIGZpbGVzICglcykiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNjMKK21zZ2lkICJzbGF2ZSBuYW1lIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTcxIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDA1CisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBzbGF2ZSBuYW1lICVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTc0Cittc2dpZCAic2xhdmUgbGluayIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE3OAorIywgYy1mb3JtYXQKK21zZ2lkICJzbGF2ZSBsaW5rIHNhbWUgYXMgbWFpbiBsaW5rICVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTg1IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDEyCisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBzbGF2ZSBsaW5rICVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjA0Cittc2dpZCAibWFzdGVyIGZpbGUiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHBhdGggJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImFsdGVybmF0aXZlICVzIChwYXJ0IG9mIGxpbmsgZ3JvdXAgJXMpIGRvZXNuJ3QgZXhpc3QuIFJlbW92aW5nIGZyb20gbGlzdCBvZiAiCisiYWx0ZXJuYXRpdmVzLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIyOSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI0MAorbXNnaWQgInByaW9yaXR5IgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjMyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjQ5Cittc2dpZCAic2xhdmUgZmlsZSIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI0NAorIywgYy1mb3JtYXQKK21zZ2lkICJwcmlvcml0eSBvZiAlczogJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyOTcKK21zZ2lkICJzdGF0dXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyOTkKK21zZ2lkICJpbnZhbGlkIHN0YXR1cyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTMwNAorbXNnaWQgIm1hc3RlciBsaW5rIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzQ4CisjLCBjLWZvcm1hdAorbXNnaWQgImRpc2NhcmRpbmcgb2Jzb2xldGUgc2xhdmUgbGluayAlcyAoJXMpLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2OQorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MzgKK21zZ2lkICJhdXRvIG1vZGUiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MDIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NzgKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjM5Cittc2dpZCAibWFudWFsIG1vZGUiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBsaW5rIGN1cnJlbnRseSBwb2ludHMgdG8gJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MDgKK21zZ2lkICIgIGxpbmsgY3VycmVudGx5IGFic2VudCIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUxMgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyAtIHByaW9yaXR5ICVkIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTE1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgc2xhdmUgJXM6ICVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTIyCisjLCBjLWZvcm1hdAorbXNnaWQgIkN1cnJlbnQgJ2Jlc3QnIHZlcnNpb24gaXMgJyVzJy4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MjQKK21zZ2lkICJObyB2ZXJzaW9ucyBhdmFpbGFibGUuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTUzCisjLCBjLWZvcm1hdAorbXNnaWQgIlRoZXJlIGlzICVkIGNob2ljZSBmb3IgdGhlIGFsdGVybmF0aXZlICVzIChwcm92aWRpbmcgJXMpLiIKK21zZ2lkX3BsdXJhbCAiVGhlcmUgYXJlICVkIGNob2ljZXMgZm9yIHRoZSBhbHRlcm5hdGl2ZSAlcyAocHJvdmlkaW5nICVzKS4iCittc2dzdHJbMF0gIiIKK21zZ3N0clsxXSAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2MAorbXNnaWQgIlNlbGVjdGlvbiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2MQorbXNnaWQgIlBhdGgiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NjEKK21zZ2lkICJQcmlvcml0eSIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2MQorbXNnaWQgIlN0YXR1cyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU4MgorIywgYy1mb3JtYXQKK21zZ2lkICJQcmVzcyBlbnRlciB0byBrZWVwIHRoZSBjdXJyZW50IGNob2ljZVsqXSwgb3IgdHlwZSBzZWxlY3Rpb24gbnVtYmVyOiAiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3MjEKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IHJlcGxhY2luZyAlcyB3aXRoIGEgbGluay4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3NjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2FuJ3QgaW5zdGFsbCB1bmtub3duIGNob2ljZSAlcyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTc4MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisic2tpcCBjcmVhdGlvbiBvZiAlcyBiZWNhdXNlIGFzc29jaWF0ZWQgZmlsZSAlcyAob2YgbGluayBncm91cCAlcykgZG9lc24ndCAiCisiZXhpc3QuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNzkwCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vdCByZW1vdmluZyAlcyBzaW5jZSBpdCdzIG5vdCBhIHN5bWxpbmsuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDQxIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDQ3CisjLCBjLWZvcm1hdAorbXNnaWQgIkNhbGwgJXMuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDUxCisjLCBjLWZvcm1hdAorbXNnaWQgIkFsdGVybmF0aXZlICVzIHVuY2hhbmdlZCBiZWNhdXNlIGNob2ljZSAlcyBpcyBub3QgYXZhaWxhYmxlLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA1NQorIywgYy1mb3JtYXQKK21zZ2lkICJTa2lwIHVua25vd24gYWx0ZXJuYXRpdmUgJXMuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDc3CisjLCBjLWZvcm1hdAorbXNnaWQgImxpbmUgdG9vIGxvbmcgb3Igbm90IHRlcm1pbmF0ZWQgd2hpbGUgdHJ5aW5nIHRvIHJlYWQgJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwOTAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxMDMKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTEzCisjLCBjLWZvcm1hdAorbXNnaWQgIlNraXAgaW52YWxpZCBsaW5lOiAlcyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjEzMgorIywgYy1mb3JtYXQKK21zZ2lkICJyZW5hbWluZyAlcyBsaW5rIGZyb20gJXMgdG8gJXMuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTczCisjLCBjLWZvcm1hdAorbXNnaWQgInJlbmFtaW5nICVzIHNsYXZlIGxpbmsgZnJvbSAlcyB0byAlcy4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgbmFtZSAoJXMpIG11c3Qgbm90IGNvbnRhaW4gJy8nIGFuZCBzcGFjZXMuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTkzCisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIGxpbmsgaXMgbm90IGFic29sdXRlIGFzIGl0IHNob3VsZCBiZTogJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxOTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgcGF0aCBpcyBub3QgYWJzb2x1dGUgYXMgaXQgc2hvdWxkIGJlOiAlcyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjIyNAorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBtYXN0ZXI6IGl0IGlzIGEgc2xhdmUgb2YgJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyMzIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgbGluayAlcyBpcyBhbHJlYWR5IG1hbmFnZWQgYnkgJXMuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjQxCisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIHBhdGggJXMgZG9lc24ndCBleGlzdC4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgc2xhdmUgb2YgJXM6IGl0IGlzIGEgbWFzdGVyIGFsdGVybmF0aXZlLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI1OAorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBzbGF2ZSBvZiAlczogaXQgaXMgYSBzbGF2ZSBvZiAlcyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI3OAorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBsaW5rICVzIGlzIGFscmVhZHkgbWFuYWdlZCBieSAlcyAoc2xhdmUgb2YgJXMpLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjMyNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGFyZ3VtZW50IGAlcyciCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNDMKK21zZ2lkICItLWluc3RhbGwgbmVlZHMgPGxpbms+IDxuYW1lPiA8cGF0aD4gPHByaW9yaXR5PiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM0NiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM5NworbXNnaWQgIjxsaW5rPiBhbmQgPHBhdGg+IGNhbid0IGJlIHRoZSBzYW1lIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzQ5Cittc2dpZCAicHJpb3JpdHkgbXVzdCBiZSBhbiBpbnRlZ2VyIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzYyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgPG5hbWU+IDxwYXRoPiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM3NgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIDxuYW1lPiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM4OAorbXNnaWQgIi0tc2xhdmUgb25seSBhbGxvd2VkIHdpdGggLS1pbnN0YWxsIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzkwCittc2dpZCAiLS1zbGF2ZSBuZWVkcyA8bGluaz4gPG5hbWU+IDxwYXRoPiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM5OQorIywgYy1mb3JtYXQKK21zZ2lkICJuYW1lICVzIGlzIGJvdGggcHJpbWFyeSBhbmQgc2xhdmUiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAibGluayAlcyBpcyBib3RoIHByaW1hcnkgYW5kIHNsYXZlIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDIyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSA8ZmlsZT4gYXJndW1lbnQiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gYCVzJyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQ1MworbXNnaWQgIiIKKyJuZWVkIC0tZGlzcGxheSwgLS1xdWVyeSwgLS1saXN0LCAtLWdldC1zZWxlY3Rpb25zLCAtLWNvbmZpZywgLS1zZXQsIC0tc2V0LSIKKyJzZWxlY3Rpb25zLCAtLWluc3RhbGwsIC0tcmVtb3ZlLCAtLWFsbCwgLS1yZW1vdmUtYWxsIG9yIC0tYXV0byIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQ5MAorbXNnaWQgIjxzdGFuZGFyZCBpbnB1dD4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MDAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MDMKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gYWx0ZXJuYXRpdmVzIGZvciAlcy4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMvJXMgaXMgZGFuZ2xpbmcsIGl0IHdpbGwgYmUgdXBkYXRlZCB3aXRoIGJlc3QgY2hvaWNlLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUzNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXMvJXMgaGFzIGJlZW4gY2hhbmdlZCAobWFudWFsbHkgb3IgYnkgYSBzY3JpcHQpLiBTd2l0Y2hpbmcgdG8gbWFudWFsICIKKyJ1cGRhdGVzIG9ubHkuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTQyCisjLCBjLWZvcm1hdAorbXNnaWQgInNldHRpbmcgdXAgYXV0b21hdGljIHNlbGVjdGlvbiBvZiAlcy4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgZm9yICVzIG5vdCByZWdpc3RlcmVkLCBub3Qgc2V0dGluZy4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NTcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiVGhlcmUgaXMgbm8gcHJvZ3JhbSB3aGljaCBwcm92aWRlcyAlcy4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NjUgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NzUKK21zZ2lkICJOb3RoaW5nIHRvIGNvbmZpZ3VyZS4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiVGhlcmUgaXMgb25seSBvbmUgYWx0ZXJuYXRpdmUgaW4gbGluayBncm91cCAlczogJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1ODQKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgZm9yICVzIG5vdCByZWdpc3RlcmVkLCBub3QgcmVtb3ZpbmcuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTkyCisjLCBjLWZvcm1hdAorbXNnaWQgInJlbW92aW5nIG1hbnVhbGx5IHNlbGVjdGVkIGFsdGVybmF0aXZlIC0gc3dpdGNoaW5nICVzIHRvIGF1dG8gbW9kZSIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYxNworIywgYy1mb3JtYXQKK21zZ2lkICJhdXRvbWF0aWMgdXBkYXRlcyBvZiAlcy8lcyBhcmUgZGlzYWJsZWQsIGxlYXZpbmcgaXQgYWxvbmUuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjE5CisjLCBjLWZvcm1hdAorbXNnaWQgInRvIHJldHVybiB0byBhdXRvbWF0aWMgdXBkYXRlcyB1c2UgJyVzIC0tYXV0byAlcycuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjM2CisjLCBjLWZvcm1hdAorbXNnaWQgInVzaW5nICVzIHRvIHByb3ZpZGUgJXMgKCVzKSBpbiAlcy4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImZvcmNpbmcgcmVpbnN0YWxsYXRpb24gb2YgYWx0ZXJuYXRpdmUgJXMgYmVjYXVzZSBsaW5rIGdyb3VwICVzIGlzIGJyb2tlbi4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY3VycmVudCBhbHRlcm5hdGl2ZSAlcyBpcyB1bmtub3duLCBzd2l0Y2hpbmcgdG8gJXMgZm9yIGxpbmsgZ3JvdXAgJXMuIgorbXNnc3RyICIiCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3BvL2R6LmdtbyBiL2Rwa2ctMS4xNi4xLjEvcG8vZHouZ21vCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQ5ZDAxYzUKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3BvL2R6LmdtbwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3BvL2R6LnBvIGIvZHBrZy0xLjE2LjEuMS9wby9kei5wbwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xZjVhY2ZjCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9wby9kei5wbwpAQCAtMCwwICsxLDcyNzAgQEAKKyMgU09NRSBERVNDUklQVElWRSBUSVRMRS4KKyMgQ29weXJpZ2h0IChDKSBZRUFSIFNvZnR3YXJlIGluIHRoZSBQdWJsaWMgSW50ZXJlc3QsIEluYy4KKyMgVGhpcyBmaWxlIGlzIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBzYW1lIGxpY2Vuc2UgYXMgdGhlIFBBQ0tBR0UgcGFja2FnZS4KKyMgRklSU1QgQVVUSE9SIDxFTUFJTEBBRERSRVNTPiwgWUVBUi4KKyMKK21zZ2lkICIiCittc2dzdHIgIiIKKyJQcm9qZWN0LUlkLVZlcnNpb246IGRwa2cgcG8ucG90XG4iCisiUmVwb3J0LU1zZ2lkLUJ1Z3MtVG86IGRlYmlhbi1kcGtnQGxpc3RzLmRlYmlhbi5vcmdcbiIKKyJQT1QtQ3JlYXRpb24tRGF0ZTogMjAxMS0xMC0xNCAwNzoxMSswMjAwXG4iCisiUE8tUmV2aXNpb24tRGF0ZTogMjAwNy0wNi0yOSAwNDowNiswNTMwXG4iCisiTGFzdC1UcmFuc2xhdG9yOiBUc2hld2FuZyBOb3JidSA8YnVtdGhhcDIwMDZAaG90bWFpbC5jb20+XG4iCisiTGFuZ3VhZ2UtVGVhbTogRHpvbmdraGEgPHBnZXlsZWdAZGl0Lmdvdi5idD5cbiIKKyJMYW5ndWFnZTogZHpcbiIKKyJNSU1FLVZlcnNpb246IDEuMFxuIgorIkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD1VVEYtOFxuIgorIkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXRcbiIKKyJQbHVyYWwtRm9ybXM6IG5wbHVyYWxzPTI7IHBsdXJhbD0obiE9MSlcbiIKKyJYLVBvZWRpdC1MYW5ndWFnZTogRHpvbmdraGFcbiIKKyJYLVBvZWRpdC1Db3VudHJ5OiBCaHV0YW5cbiIKKyJYLVBvZWRpdC1Tb3VyY2VDaGFyc2V0OiB1dGYtOFxuIgorIlgtUG9lZGl0LUJvb2ttYXJrczogLTEsLTEsMzE3LC0xLC0xLC0xLC0xLC0xLC0xLC0xXG4iCisKKyM6IGxpYi9kcGtnL2FyLmM6NjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgJyVjJyBpbiBhcmNoaXZlICclLjI1MHMnIG1lbWJlciAnJS4xNnMnIHNpemUiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvYXIuYzo4MSBsaWIvZHBrZy9hci5jOjk3IGxpYi9kcGtnL2FyLmM6MTA4IGxpYi9kcGtnL2FyLmM6MTEyCisjOiBsaWIvZHBrZy9hci5jOjEzNCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE1NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIGZpbGUgJyVzJyIKK21zZ3N0ciAi4L2g4L2W4L6x4L204L2E4LyL4L2B4L204L2E4L2m4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyLIGAlLjI1MHMnIOC9geC8i+C9leC+seC9uuC8i+C9mOC8i+C9muC9tOC9guC9puC8jSIKKworIzogbGliL2Rwa2cvYXIuYzo5NAorIywgYy1mb3JtYXQKK21zZ2lkICJnZW5lcmF0ZWQgY29ycnVwdCBhciBoZWFkZXIgZm9yICclcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvYXIuYzoxMjMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBmc3RhdCBhciBtZW1iZXIgZmlsZSAoJXMpIgorbXNnc3RyICLgvYLgvZPgvabgvIvgvabgvpDgvZbgvabgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIvgvZbgvZ/gvbzgvIvgvZPgvbLgvIvgvaDgvZDgvbTgvabgvIvgvaTgvbzgvaLgvIvgvZbgvrHgvbTgvYTgvIvgvaHgvbzgvZHgvIso4L2C4L2T4L2R4LyL4L2m4L6h4L204L2R4LyLKSIKKworIzogbGliL2Rwa2cvYXIuYzoxMzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImFyIG1lbWJlciBmaWxlICglcykiCittc2dzdHIgIuC9guC9k+C9puC8i+C9puC+kOC9luC9puC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9luC9n+C9vOC8i+C9k+C9suC8i+C9oOC9kOC9tOC9puC8i+C9pOC9vOC9ouC8i+C9luC+seC9tOC9hOC8i+C9oeC9vOC9keC8iyjgvYLgvZPgvZHgvIvgvabgvqHgvbTgvZHgvIspIgorCisjOiBsaWIvZHBrZy9idWZmZXIuYzoxOTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZWFkIG9uIGJ1ZmZlciBjb3B5IGZvciAlcyIKK21zZ3N0ciAi4L2C4L2T4L2m4LyL4L2B4L284L2E4L2m4LyL4L2g4L2R4L6y4LyL4L2W4L2k4L204L2m4LyL4L2T4L2E4LyLICglcyngvaDgvZDgvbTgvabgvIvgvaTgvbzgvaLgvIvgvZbgvrHgvbTgvYTgvIvgvaHgvbzgvZHgvI0oX2MpIgorCisjOiBsaWIvZHBrZy9idWZmZXIuYzoyMTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCBpbiB3cml0ZSBvbiBidWZmZXIgY29weSBmb3IgJXMiCittc2dzdHIgIuC9guC9k+C9puC8i+C9geC9vOC9hOC9puC8i+C9oOC9keC+suC8i+C9luC9pOC9tOC9puC8i+C9k+C9hOC8iyAoJXMp4L2g4L2Q4L204L2m4LyL4L2k4L284L2i4LyL4L2W4L6x4L204L2E4LyL4L2h4L284L2R4LyNKF9jKSIKKworIzogbGliL2Rwa2cvYnVmZmVyLmM6MjIwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJzaG9ydCByZWFkIG9uIGJ1ZmZlciBjb3B5IGZvciAlcyIKK21zZ3N0ciAi4L2C4L2T4L2m4LyL4L2B4L284L2E4L2m4LyL4L2g4L2R4L6y4LyL4L2W4L2k4L204L2m4LyLICglcykg4L2T4L2E4LyL4L2j4L634L2C4LyL4L2T4L2y4LyL4L2Q4L204L2E4LyL4L2A4L204LyNKF9jKSIKKworIzogbGliL2Rwa2cvYnVmZmVyLmM6Mjg4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyB0YXIiCittc2dpZCAiZmFpbGVkIHRvIHNlZWsgJXMiCittc2dzdHIgIuC9iuC9ouC8i+C9o+C9guC8i+C9o+C9uuC9k+C8i+C9oOC9kOC9luC8i+C9k+C9suC8i+C9o+C9tOC8i+C9oOC9kOC9tOC9puC8i+C9pOC9vOC9ouC8i+C9luC+seC9tOC9hOC8i+C9oeC9vOC9keC9lOC8jSIKKworIzogbGliL2Rwa2cvY29tbWFuZC5jOjE3OCBsaWIvZHBrZy9jb21tYW5kLmM6MjA0IHNyYy9oZWxwLmM6NjIxCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjk4IHNyYy9wcm9jZXNzYXJjLmM6MTM4IHNyYy9wcm9jZXNzYXJjLmM6NDMyCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjgzOSBkcGtnLWRlYi9idWlsZC5jOjQ1OSBkcGtnLWRlYi9idWlsZC5jOjUzOAorIzogZHBrZy1kZWIvYnVpbGQuYzo1NjEgZHBrZy1kZWIvZXh0cmFjdC5jOjMxNyBkcGtnLWRlYi9pbmZvLmM6NjUKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzo2OSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NDU3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZXhlY3V0ZSAlcyAoJXMpIgorbXNnc3RyICIlcyDgvaPgvYLgvIvgvaPgvbrgvZPgvIvgvaDgvZDgvZbgvIvgvZjgvIvgvZrgvbTgvYLgvabgvI0iCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGRlY29tcHJlc3Npb24iCittc2dzdHIgIiVzOiDgvajgvbrgvZbgvIvgvZbgvZngvbTgvYLgvabgvIvgvZbgvaTgvbzgvaPgvIvgvZPgvbLgvI0iCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6ODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGNvbXByZXNzaW9uIgorbXNnc3RyICIlczog4L2o4L264L2W4LyL4L2W4L2Z4L204L2C4L2m4LyNIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjExMgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZXJyb3IgYmluZGluZyBpbnB1dCB0byBnemlwIHN0cmVhbSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjEyNAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgcmVhZCBlcnJvcjogJyVzJyIKK21zZ3N0ciAiJXM6IOC9k+C9hOC8i+C9oOC9geC9vOC9keC8iyBnemlwIOC9oOC9m+C9vOC9o+C8i+C9ljogYCVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxMzIgbGliL2Rwa2cvY29tcHJlc3MuYzoxMzYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHdyaXRlIGVycm9yIgorbXNnc3RyICIlczog4L2T4L2E4LyL4L2g4L2B4L284L2R4LyLIGd6aXAg4L2g4L2b4L284L2j4LyL4L2WOiBgJXMnIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE1MAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZXJyb3IgYmluZGluZyBvdXRwdXQgdG8gZ3ppcCBzdHJlYW0iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxNTcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHJlYWQgZXJyb3IiCittc2dzdHIgIiVzOiDgvZPgvYTgvIvgvaDgvYHgvbzgvZHgvIsgZ3ppcCDgvaDgvZvgvbzgvaPgvIvgvZY6IGAlcyciCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTY3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCB3cml0ZSBlcnJvcjogJyVzJyIKK21zZ3N0ciAiJXM6IOC9k+C9hOC8i+C9oOC9geC9vOC9keC8iyBnemlwIOC9oOC9m+C9vOC9o+C8i+C9ljogYCVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxODAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHdyaXRlIGVycm9yOiAlcyIKK21zZ3N0ciAiJXM6IOC9k+C9hOC8i+C9oOC9geC9vOC9keC8iyBnemlwIOC9oOC9m+C9vOC9o+C8i+C9ljogYCVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyMjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yIGJpbmRpbmcgaW5wdXQgdG8gYnppcDIgc3RyZWFtIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjMyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgcmVhZCBlcnJvcjogJyVzJyIKK21zZ3N0ciAiJXM6IOC9k+C9hOC8i+C9oOC9geC9vOC9keC8iyBiemlwMiDgvaDgvZvgvbzgvaPgvIvgvZY6IGAlcyciCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjQwIGxpYi9kcGtnL2NvbXByZXNzLmM6MjQ0IGxpYi9kcGtnL2NvbXByZXNzLmM6Mjk0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgd3JpdGUgZXJyb3IiCittc2dzdHIgIiVzOiDgvZPgvYTgvIvgvaDgvYHgvbzgvZHgvIsgYnppcDIg4L2g4L2b4L284L2j4LyL4L2WOiBgJXMnIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI1OAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZXJyb3IgYmluZGluZyBvdXRwdXQgdG8gYnppcDIgc3RyZWFtIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjY1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgcmVhZCBlcnJvciIKK21zZ3N0ciAiJXM6IOC9k+C9hOC8i+C9oOC9geC9vOC9keC8iyBiemlwMiDgvaDgvZvgvbzgvaPgvIvgvZY6IGAlcyciCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6Mjc1IGxpYi9kcGtnL2NvbXByZXNzLmM6Mjg2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgd3JpdGUgZXJyb3I6ICclcyciCittc2dzdHIgIiVzOiDgvZPgvYTgvIvgvaDgvYHgvbzgvZHgvIsgYnppcDIg4L2g4L2b4L284L2j4LyL4L2WOiBgJXMnIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI4MgorbXNnaWQgInVuZXhwZWN0ZWQgYnppcDIgZXJyb3IiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzo2OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidXBkYXRlcyBkaXJlY3RvcnkgY29udGFpbnMgZmlsZSBgJS4yNTBzJyB3aG9zZSBuYW1lIGlzIHRvbyBsb25nIChsZW5ndGg9JWQsICIKKyJtYXg9JWQpIgorbXNnc3RyICIiCisi4L2R4L204L2m4LyL4L2Y4L2Q4L204L2T4LyL4L2W4L2f4L284LyL4L2h4L284L2R4LyL4L2U4L2g4L2y4LyL4L2m4L6j4L284L2R4LyL4L2Q4L284L2g4L2y4LyL4L2T4L2E4LyL4L2T4LyLIOC9oeC9suC9guC8i+C9puC+o+C9vOC9keC8iyBgJS4yNTBzJyDgvYLgvIvgvYLgvbLgvIvgvZjgvbLgvYTgvIvgvaLgvbLgvYTgvIvgvZHgvrLgvYLgvabgvIvgvZjgvbLgvIso4L2i4L2y4L2E4LyL4L2a4L2R4LyLPSVkIOC9mOC9hOC8iyIKKyLgvZjgvZDgvaDgvIs9JWQp4L2g4L2R4L2y4LyL4L2h4L284L2R4L2U4LyL4L2o4L2y4L2T4LyNIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1cGRhdGVzIGRpcmVjdG9yeSBjb250YWlucyBmaWxlcyB3aXRoIGRpZmZlcmVudCBsZW5ndGggbmFtZXMgKGJvdGggJWQgYW5kICVkKSIKK21zZ3N0ciAiIgorIuC9keC9tOC9puC8i+C9mOC9kOC9tOC9k+C8i+C9luC9n+C9vOC8i+C9oeC9vOC9keC8i+C9mOC9suC8i+C9puC+o+C9vOC9keC8i+C9kOC9vOC9oOC9suC8i+C9k+C9hOC8i+C9k+C8iyDgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIsg4L2i4L2y4L2E4LyL4L2a4L2R4LyL4L2Y4L2y4L2E4LyL4L2m4L284LyL4L2m4L284LyL4L2g4L2W4L2R4LyL4L2Y4L2y4LyLKCAlZCDgvZHgvYTgvIsgJWQg4L2C4L2J4L2y4L2m4LyL4L2G4LyL4L2i4LyLKeC9muC9tOC8iyIKKyLgvaHgvbzgvZHgvZTgvIvgvajgvbLgvZPgvI0iCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHNjYW4gdXBkYXRlcyBkaXJlY3RvcnkgYCUuMjU1cyciCittc2dzdHIgIuC9keC9tOC9puC8i+C9mOC9kOC9vOC9k+C8i+C9gOC+seC9suC8i+C9puC+o+C9vOC9keC8i+C9kOC9vOC8iyBgJS4yNTVzJyDgvZ7gvbLgvZbgvIvgvaPgvp/gvIvgvaDgvZbgvZHgvIvgvZjgvbLgvIvgvZrgvbTgvYLgvabgvI0iCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZW1vdmUgaW5jb3Jwb3JhdGVkIHVwZGF0ZSBmaWxlICUuMjU1cyIKK21zZ3N0ciAi4L2C4L2F4L2y4L2C4LyL4L2B4L2i4LyL4L2m4L6h4L264L2W4LyL4L2h4L284L2R4LyL4L2U4L2g4L2y4LyL4L2R4L204L2m4LyL4L2Y4L2Q4L204L2T4LyL4L2C4L6x4L2y4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyLICUuMjU1cyDgvaLgvqngvIvgvZbgvabgvpDgvrLgvZHgvIvgvYLgvY/gvYTgvIvgvZPgvbLgvIvgvaPgvbTgvIvgvaDgvZDgvbTgvabgvIvgvaTgvbzgvaLgvIvgvZbgvrHgvbTgvYTgvIvgvaHgvbzgvZHgvI0iCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTIxIGRwa2ctZGViL2J1aWxkLmM6NDQ3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgYCUuMjU1cyciCittc2dzdHIgImAlLjI1NXMnIOC9guC9puC9ouC8i+C9luC9puC+kOC+suC9tOC9k+C8i+C9oOC9luC9keC8i+C9mOC8i+C9muC9tOC9guC9puC8jSIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxMjUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZpbGwgJS4yNTBzIHdpdGggcGFkZGluZyIKK21zZ3N0ciAiJS4yNTBzIOC9luC9ouC8i+C9pOC9luC9puC8i+C9keC9hOC8i+C9heC9suC9guC8i+C9geC9ouC8i+C9luC9gOC9hOC8i+C9mOC8i+C9muC9tOC9guC9puC8jSIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxMjcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoICUuMjUwcyBhZnRlciBwYWRkaW5nIgorbXNnc3RyICIlLjI1MHMg4L2g4L2R4L2y4LyL4L2W4L2i4LyL4L2k4L2W4L2m4LyL4L2A4L6x4L2y4LyL4L2k4L204L2j4LyL4L2j4L2m4LyL4L2E4L284L2m4LyL4L2m4L6Z4L284L2Y4LyL4L2g4L2W4L2R4LyL4L2Y4LyL4L2a4L204L2C4L2m4LyNIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEyOQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2VlayB0byBzdGFydCBvZiAlLjI1MHMgYWZ0ZXIgcGFkZGluZyIKK21zZ3N0ciAiJS4yNTBzIOC9oOC9keC9suC8i+C9luC9ouC8i+C9pOC9luC9puC8i+C9gOC+seC9suC8i+C9pOC9tOC9o+C8i+C9o+C9puC8i+C9oOC9guC9vOC8i+C9luC9meC9tOC9guC9puC8i+C9k+C9suC8i+C9oOC9muC9vOC9o+C8i+C9mOC8i+C9meC9tOC9guC9puC8jSIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxOTUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byBvcGVuIHRtcGZpbGUgZm9yIHZzbnByaW50ZiIKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBsb2NrIGZpbGUgJXMgZm9yIHRlc3RpbmciCittc2dzdHIgInZzbnByaW50ZiDgvYLgvbLgvIvgvZHgvbzgvZPgvIvgvaPgvbTgvIsg4L2K4L2y4LyL4L2o4L264L2Y4LyL4L2U4L2y4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyLIOC9geC8i+C9leC+seC9uuC8i+C9mOC8i+C9muC9tOC9guC9puC8jSIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyMjEKK21zZ2lkICJ1bmFibGUgdG8gb3Blbi9jcmVhdGUgc3RhdHVzIGRhdGFiYXNlIGxvY2tmaWxlIgorbXNnc3RyICLgvYLgvZPgvabgvIvgvZrgvZHgvIvgvYLgvZPgvZHgvIvgvabgvqHgvbTgvZHgvIvgvYDgvrHgvbLgvIvgvYLgvZ7gvbLgvIvgvaLgvp/gvbrgvZPgvIvgvaPgvqHgvbrgvIvgvZjgvbLgvYLgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIsg4L2B4LyL4L2V4L6x4L264LyLL+C9guC9puC9ouC8i+C9luC9puC+kOC+suC9tOC9k+C8i+C9oOC9luC9keC8i+C9mOC8i+C9muC9tOC9guC9puC8jSIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyMzEKK21zZ2lkICJ5b3UgZG8gbm90IGhhdmUgcGVybWlzc2lvbiB0byBsb2NrIHRoZSBkcGtnIHN0YXR1cyBkYXRhYmFzZSIKK21zZ3N0ciAi4L2B4L6x4L284L2R4LyL4L2j4L204LyL4L2M4L2y4LyL4L2U4L2y4LyL4L2A4L264LyL4L2H4L2y4LyL4L2C4L2T4L2m4LyL4L2a4L2R4LyL4L2C4L2T4L2R4LyL4L2m4L6h4L204L2R4LyL4L2C4L2e4L2y4LyL4L2i4L6f4L264L2T4LyL4L2j4L6h4L264LyL4L2Y4L2y4L2C4LyL4L2i4L6Q4L6x4L2W4L2m4LyL4L2T4L2y4L2g4L2y4LyL4L2C4L2T4L2E4LyL4L2W4LyL4L2Y4L264L2R4LyNIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjIzMworIywgZnV6enkKKyN8IG1zZ2lkICJ1bmFibGUgdG8gbG9jayBkcGtnIHN0YXR1cyBkYXRhYmFzZSIKK21zZ2lkICJkcGtnIHN0YXR1cyBkYXRhYmFzZSIKK21zZ3N0ciAi4L2M4L2y4LyL4L2U4L2y4LyL4L2A4L264LyL4L2H4L2y4LyL4L2C4L2T4L2m4LyL4L2a4L2R4LyL4L2A4L6x4L2y4LyL4L2C4L2T4L2R4LyL4L2m4L6h4L204L2R4LyL4L2C4L2e4L2y4LyL4L2i4L6f4L264L2T4LyL4L2j4L6h4L264LyL4L2Y4L2y4L2C4LyL4L2i4L6Q4L6x4L2W4L2m4LyL4L2Y4LyL4L2a4L204L2C4L2m4LyNIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjI1NworbXNnaWQgInJlcXVlc3RlZCBvcGVyYXRpb24gcmVxdWlyZXMgc3VwZXJ1c2VyIHByaXZpbGVnZSIKK21zZ3N0ciAi4L2e4L204LyL4L2W4LyL4L2g4L2W4L2R4LyL4L2h4L284L2R4LyL4L2U4L2g4L2y4LyL4L2W4L2A4L284L2j4LyL4L2m4L6k4L6x4L284L2R4LyL4L2U4LyL4L2j4L204LyLIOC9o+C9guC8i+C9o+C9uuC9k+C8i+C9lOC8i+C9guC9meC9vOC8i+C9luC9vOC9oOC9suC8i+C9geC9uuC8i+C9keC9luC9hOC8i+C9keC9guC9vOC9lOC8i+C9qOC9suC9k+C8jSIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyNjIKK21zZ2lkICJ1bmFibGUgdG8gYWNjZXNzIGRwa2cgc3RhdHVzIGFyZWEiCittc2dzdHIgIuC9jOC9suC8i+C9lOC9suC8i+C9gOC9uuC8i+C9h+C9suC8i+C9guC9k+C9puC8i+C9muC9keC8i+C9mOC9hOC9oOC8i+C9geC9vOC9hOC9puC8i+C9oOC9m+C9tOC9o+C8i+C9puC+pOC+seC9vOC9keC8i+C9oOC9luC9keC8i+C9mOC8i+C9muC9tOC9guC9puC8jSIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyNjQKK21zZ2lkICJvcGVyYXRpb24gcmVxdWlyZXMgcmVhZC93cml0ZSBhY2Nlc3MgdG8gZHBrZyBzdGF0dXMgYXJlYSIKK21zZ3N0ciAiIgorIuC9jOC9suC8i+C9lOC9suC8i+C9gOC9uuC8i+C9h+C9suC8i+C9guC9k+C9puC8i+C9muC9keC8i+C9mOC9hOC9oOC8i+C9geC9vOC9hOC9puC8i+C9o+C9tOC8i+C9oOC9m+C9tOC9o+C8i+C9puC+pOC+seC9vOC9keC8i+C9oOC9luC9keC8i+C9k+C9suC9oOC9suC8i+C9keC9vOC9k+C8i+C9o+C9puC8i+C9luC9gOC9vOC9o+C8i+C9puC+pOC+seC9vOC9keC8i+C9lOC8i+C9o+C9tOC8iyDgvaPgvrfgvYLgvIsv4L2g4L2W4L6y4L2y4LyL4L2T4L2y4LyL4L2R4L2C4L284L2U4LyL4L2o4L2y4L2T4LyNIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjMwOQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVtb3ZlIG15IG93biB1cGRhdGUgZmlsZSAlLjI1NXMiCittc2dzdHIgIuC9hOC8i+C9ouC9hOC8i+C9luC9keC9guC8i+C9keC9luC9hOC8i+C9guC9suC8i+C9keC9tOC9puC8i+C9mOC9kOC9tOC9k+C8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8iyAlLjI1NXMg4L2i4L6p4LyL4L2W4L2m4L6Q4L6y4L2R4LyL4L2C4L2P4L2E4LyL4L2T4L2y4LyL4L2j4L204LyL4L2g4L2Q4L204L2m4LyL4L2k4L284L2i4LyL4L2W4L6x4L204L2E4LyL4L2h4L284L2R4L2U4LyNIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM0NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgIiBgJS4yNTBzJyDgvYLgvbLgvIvgvZHgvbTgvabgvIvgvZjgvZDgvbTgvZPgvIvgvZbgvZ/gvbzgvIvgvaHgvbzgvZHgvIvgvZTgvaDgvbLgvIvgvYLgvZPgvabgvIvgvZrgvZHgvIvgvaDgvZbgvrLgvbLgvIvgvZjgvIvgvZrgvbTgvYLgvabgvI0iCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzQ5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiIGAlLjI1MHMnIOC9guC9suC8i+C9keC9tOC9puC8i+C9mOC9kOC9tOC9k+C8i+C9luC9n+C9vOC8i+C9oeC9vOC9keC8i+C9lOC9oOC9suC8i+C9guC9k+C9puC8i+C9muC9keC8i+C9hOC9vOC9puC8i+C9puC+meC9vOC9mOC8i+C9oOC9luC9keC8i+C9mOC8i+C9muC9tOC9guC9puC8jSIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHRydW5jYXRlIGZvciB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiIGAlLjI1MHMnIOC9guC9suC8i+C9keC9tOC9puC8i+C9mOC9kOC9tOC9k+C8i+C9luC9n+C9vOC8i+C9oeC9vOC9keC8i+C9lOC9oOC9suC8i+C9guC9k+C9puC8i+C9muC9keC8i+C9gOC+seC9suC8i+C9keC9vOC9k+C8i+C9o+C9tOC8i+C9huC9tOC9hOC8i+C9gOC9tOC8i+C9luC9n+C9vOC8i+C9mOC8i+C9muC9tOC9guC9puC8jSIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZzeW5jIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICIgYCUuMjUwcycg4L2C4L2y4LyL4L2R4L204L2m4LyL4L2Y4L2Q4L204L2T4LyL4L2W4L2f4L284LyL4L2h4L284L2R4LyL4L2U4L2g4L2y4LyL4L2C4L2T4L2m4LyL4L2a4L2R4LyL4L2A4L6x4L2y4LyL4L2R4L284L2T4LyL4L2j4L204LyLIOC9qOC9uuC9leC8i+C9mOC9ieC9mOC8i+C9oOC9luC+seC9tOC9hOC8i+C9oOC9luC9keC8i+C9mOC8i+C9muC9tOC9guC9puC8jSIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICIgYCUuMjUwcycg4L2C4L2y4LyL4L2R4L204L2m4LyL4L2Y4L2Q4L204L2T4LyL4L2W4L2f4L284LyL4L2h4L284L2R4LyL4L2U4L2g4L2y4LyL4L2C4L2T4L2m4LyL4L2a4L2R4LyL4L2A4L6x4L2y4LyL4L2R4L284L2T4LyL4L2j4L204LyLIOC9geC8i+C9luC9puC+oeC9mOC8i+C9mOC8i+C9muC9tOC9guC9puC8jSIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgIiBgJS4yNTBzJyDgvYLgvbLgvIvgvZHgvbTgvabgvIvgvZjgvZDgvbTgvZPgvIvgvZbgvZ/gvbzgvIvgvaHgvbzgvZHgvIvgvZTgvaDgvbLgvIvgvYLgvZPgvabgvIvgvZrgvZHgvIvgvYDgvrHgvbLgvIvgvZHgvbzgvZPgvIvgvaPgvbTgvIsg4L2C4L2e4L2y4LyL4L2W4L2Z4L204L2C4L2m4LyL4L2g4L2W4L2R4LyL4L2Y4LyL4L2a4L204L2C4L2m4LyNIgorCisjOiBsaWIvZHBrZy9kaXIuYzo1MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHJlYWQgZmlsZWRlc2NyaXB0b3IgZmxhZ3MgZm9yICUuMjUwcyIKK21zZ2lkICJ1bmFibGUgdG8gZ2V0IGZpbGUgZGVzY3JpcHRvciBmb3IgZGlyZWN0b3J5ICclcyciCittc2dzdHIgIiUuMjUwcyDgvYLgvbLgvIvgvZHgvbzgvZPgvIvgvaPgvbTgvIsg4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2g4L2C4L6y4L264L2j4LyL4L2W4L2k4L2R4L2U4LyL4L2f4L204L2i4LyL4L2i4L6f4L2C4L2m4LyL4L2a4L204LyL4L2j4L634L2C4LyL4L2Y4LyL4L2a4L204L2C4L2m4LyNIgorCisjOiBsaWIvZHBrZy9kaXIuYzo1NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgZGlyZWN0b3J5ICclcyciCittc2dzdHIgIuC9oOC9luC+seC9tOC9hOC8i+C9geC9tOC9hOC9puC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8iyBgJS4yNTBzJyDgvYHgvIvgvZXgvrHgvbrgvIvgvZjgvIvgvZrgvbTgvYLgvabgvI0iCisKKyM6IGxpYi9kcGtnL2Rpci5jOjY5IGxpYi9kcGtnL2Rpci5jOjEzMQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gZGlyZWN0b3J5ICclcyciCittc2dzdHIgIuC9oOC9luC+seC9tOC9hOC8i+C9geC9tOC9hOC9puC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8iyBgJS4yNTBzJyDgvYHgvIvgvZXgvrHgvbrgvIvgvZjgvIvgvZrgvbTgvYLgvabgvI0iCisKKyM6IGxpYi9kcGtnL2Rpci5jOjEwOSBzcmMvZGl2ZXJ0Y21kLmM6MjE4IGRwa2ctc3BsaXQvc3BsaXQuYzoyMDIKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjkzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBmaWxlICclcyciCittc2dzdHIgIuC9oOC9luC+seC9tOC9hOC8i+C9geC9tOC9hOC9puC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8iyBgJS4yNTBzJyDgvYHgvIvgvZXgvrHgvbrgvIvgvZjgvIvgvZrgvbTgvYLgvabgvI0iCisKKyM6IGxpYi9kcGtnL2Rpci5jOjExMSBzcmMvZGl2ZXJ0Y21kLmM6MjMyIHNyYy9kaXZlcnRjbWQuYzozNzcKKyM6IHNyYy9zdGF0Y21kLmM6MjE3IGRwa2ctZGViL2J1aWxkLmM6NTk4IGRwa2ctc3BsaXQvam9pbi5jOjY1CisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTg3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNDA2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBmaWxlICclcyciCittc2dzdHIgIuC9oOC9luC+seC9tOC9hOC8i+C9geC9tOC9hOC9puC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8iyBgJS4yNTBzJyDgvYHgvIvgvZXgvrHgvbrgvIvgvZjgvIvgvZrgvbTgvYLgvabgvI0iCisKKyM6IGxpYi9kcGtnL2Rpci5jOjExMyBzcmMvZGl2ZXJ0Y21kLmM6MjM0IHNyYy9kaXZlcnRjbWQuYzozNzkKKyM6IGRwa2ctZGViL2J1aWxkLmM6NjAwIGRwa2ctc3BsaXQvam9pbi5jOjY3IGRwa2ctc3BsaXQvcXVldWUuYzoxODkKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzE0IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNDA4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgZmlsZSAnJXMnIgorbXNnc3RyICJ2c25wcmludGYg4L2T4L2E4LyLIOC9hOC9vOC9puC8i+C9puC+meC9vOC9mOC8i+C9mOC8i+C9muC9tOC9guC9puC8jSIKKworIzogbGliL2Rwa2cvZHVtcC5jOjM5NgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgZGV0YWlscyBvZiBgJS41MHMnIHRvIGAlLjI1MHMnIgorbXNnc3RyICIgYCUuNTBzJyDgvYLgvbLgvIvgvaLgvpLgvrHgvabgvIvgvZbgvaTgvZHgvIvgvZrgvbTgvIsgYCUuMjUwcycg4L2j4L204LyL4L2g4L2W4L6y4L2y4LyL4L2T4L2y4LyL4L2g4L2Q4L204L2m4LyL4L2k4L284L2i4LyL4L2W4L6x4L204L2E4LyL4L2h4L284L2R4L2U4LyNIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDIzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiAnJXMnIGZvciB3cml0aW5nICVzIGRhdGFiYXNlIgorbXNnc3RyICIlcyDgvZbgvaLgvqHgvIvgvZHgvbzgvZPgvIvgvaDgvZbgvrLgvbLgvIvgvZPgvbLgvaDgvbLgvIvgvZHgvbzgvZPgvIvgvaPgvbTgvIsgYCVzJyDgvYHgvIvgvZXgvrHgvbrgvIvgvZPgvbLgvIvgvaDgvZDgvbTgvabgvIvgvaTgvbzgvaLgvIvgvaDgvZbgvrHgvbTgvYTgvIvgvaHgvbzgvZHgvI0iCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0MjYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgYnVmZmVyaW5nIG9uICVzIGRhdGFiYXNlIGZpbGUiCittc2dzdHIgIuC9guC9k+C9puC8i+C9muC9keC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9guC9tOC8i+C9o+C9tOC8i+C9guC9k+C9keC8i+C9geC9vOC9hOC9puC8i+C9k+C9hOC8i+C9guC9puC9vOC9guC8i+C9oOC9h+C9vOC9guC8i+C9oOC9luC9keC8i+C9k+C9suC8i+C9guC9nuC9suC8i+C9puC+kuC+suC9suC9guC8i+C9oOC9luC9keC8i+C9mOC8i+C9muC9tOC9guC9puC8jSIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQzOAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlICVzIGRhdGFiYXNlIHJlY29yZCBhYm91dCAnJS41MHMnIHRvICclLjI1MHMnIgorbXNnc3RyICJgJS41MHMnIOC9guC9suC8i+C9keC+suC9k+C8i+C9kOC9vOC8iyAlcyDgvabgvpDgvbzgvaLgvIvgvaPgvabgvIsgYCUuMjUwcycg4L2j4L204LyL4L2g4L2W4L6y4L2y4LyL4L2T4L2y4LyL4L2g4L2Q4L204L2m4LyL4L2k4L284L2i4LyL4L2g4L2W4L6x4L204L2E4LyL4L2h4L284L2R4LyNIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDQ2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZmx1c2ggJXMgZGF0YWJhc2UgdG8gJyUuMjUwcyciCittc2dzdHIgIiVzIOC9luC9ouC+oeC8i+C9keC9vOC9k+C8i+C9oOC9keC9suC8iyBgJS4yNTBzJyDgvaPgvbTgvIvgvYTgvbzgvabgvIvgvabgvpngvbzgvZjgvIvgvaDgvZbgvZHgvIvgvZPgvbLgvIvgvaPgvbTgvIvgvaDgvZDgvbTgvabgvIvgvaTgvbzgvaLgvIvgvaDgvZbgvrHgvbTgvYTgvIvgvaHgvbzgvZHgvI0iCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NDgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBmc3luYyAlcyBkYXRhYmFzZSB0byAnJS4yNTBzJyIKK21zZ3N0ciAiJXMg4L2W4L2i4L6h4LyL4L2R4L284L2T4LyL4L2g4L2R4L2y4LyLIGAlLjI1MHMnIOC9o+C9tOC8i+C9qOC9uuC9leC8i+C9mOC9ieC9mOC8i+C9oOC9luC+seC9tOC9hOC8i+C9oOC9luC9keC8i+C9k+C9suC8i+C9oOC9kOC9tOC9puC8i+C9pOC9vOC9ouC8i+C9oOC9luC+seC9tOC9hOC8i+C9oeC9vOC9keC8jSIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ1MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNsb3NlICclLjI1MHMnIGFmdGVyIHdyaXRpbmcgJXMgZGF0YWJhc2UiCittc2dzdHIgIiBgJS4yNTBzJyDgvaDgvZHgvbLgvIsgJXMg4L2W4L2i4L6h4LyL4L2R4L284L2T4LyL4L2g4L2W4L6y4L2y4LyL4L2W4L2g4L2y4LyL4L2k4L204L2j4LyL4L2j4L2m4LyL4L2B4LyL4L2W4L2m4L6h4L2Y4LyL4L2T4L2y4LyL4L2g4L2Q4L204L2m4LyL4L2k4L284L2i4LyL4L2g4L2W4L6x4L204L2E4LyL4L2h4L284L2R4LyNIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDU1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gbGluayAnJS4yNTBzJyB0byAnJS4yNTBzJyBmb3IgYmFja3VwIG9mICVzIGRhdGFiYXNlIgorbXNnc3RyICIiCisiJXMg4L2W4L2i4L6h4LyL4L2R4L284L2T4LyL4L2C4L6x4L2y4LyL4L2i4L6S4L6x4L2W4LyL4L2Q4L2C4LyL4L2C4L2y4LyL4L2R4L284L2T4LyL4L2j4L204LyLIGAlLjI1MHMnIOC9oOC9keC9suC8iyBgJS4yNTBzJyDgvaPgvbTgvIvgvaDgvZbgvrLgvbrgvaPgvIvgvZjgvZDgvbTgvZHgvIvgvaDgvZbgvZHgvIvgvZPgvbLgvIvgvaPgvbTgvIvgvaDgvZDgvbTgvabgvIvgvaTgvbzgvaLgvIvgvaDgvZbgvrHgvbTgvYTgvIsiCisi4L2h4L284L2R4LyNIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDU4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gaW5zdGFsbCAnJS4yNTBzJyBhcyAnJS4yNTBzJyBjb250YWluaW5nICVzIGRhdGFiYXNlIgorbXNnc3RyICIiCisiIGAlLjI1MHMnIOC9oOC9keC9suC8iyBgJS4yNTBzJyDgvZPgvYTgvIvgvZPgvIsgJXMg4L2W4L2i4L6h4LyL4L2R4L284L2T4LyL4L2h4L284L2R4LyL4L2Y4L2y4LyL4L2m4L6m4L264LyL4L2C4L2e4L2y4LyL4L2W4L2Z4L204L2C4L2m4LyL4L2g4L2W4L2R4LyL4L2T4L2y4LyL4L2j4L204LyL4L2g4L2Q4L204L2m4LyL4L2k4L284L2i4LyL4L2g4L2W4L6x4L204L2E4LyL4L2h4L284L2R4LyNIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6OTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiB1bnJlY292ZXJhYmxlIGZhdGFsIGVycm9yLCBhYm9ydGluZzpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MTAwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogb3V0c2lkZSBlcnJvciBjb250ZXh0LCBhYm9ydGluZzpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MTIwCisjLCBmdXp6eQorI3wgbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBjbGVhbnVwIGVudHJ5IgorbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBlcnJvciBjb250ZXh0IgorbXNnc3RyICLgvYLgvZngvYTgvIvgvZHgvYLgvIvgvZbgvZ/gvbzgvIvgvZPgvbLgvaDgvbLgvIvgvZDgvbzgvIvgvZbgvYDgvbzgvZHgvIvgvYLgvabgvaLgvZTgvIvgvYLgvbLgvIvgvZHgvbzgvZPgvIvgvaPgvbTgvIvgvZHgvrLgvZPgvIvgvZrgvZHgvIvgvaPgvabgvIvgvZXgvrHgvbLgvIvgvYHgvI0iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoxODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBlcnJvciB3aGlsZSBjbGVhbmluZyB1cDpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorIiVzOiDgvYLgvZngvYTgvIvgvZHgvYLgvIvgvZbgvZ/gvbzgvIvgvZbgvaDgvbLgvIvgvabgvpDgvZbgvabgvIvgvaDgvZvgvbzgvaPgvIvgvZY6XG4iCisiICVzXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoyMDEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImRwa2c6IHRvbyBtYW55IG5lc3RlZCBlcnJvcnMgZHVyaW5nIGVycm9yIHJlY292ZXJ5ICEhXG4iCittc2dpZCAiJXM6IHRvbyBtYW55IG5lc3RlZCBlcnJvcnMgZHVyaW5nIGVycm9yIHJlY292ZXJ5ISFcbiIKK21zZ3N0ciAiZHBrZzog4L2g4L2b4L284L2j4LyL4L2W4LyL4L2m4L6z4L2i4LyL4L2C4L2m4L284LyL4L2g4L2W4L2R4LyL4L2W4L2g4L2y4LyL4L2m4L6Q4L2W4L2m4LyL4L2g4L2b4L284L2j4LyL4L2W4LyL4L2m4L6z4LyL4L2W4L2m4L6y4L264LyL4L2W4L2m4L6y4L264L2d4LyL4L2j4L264LyL4L2kICEhXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoyNjggbGliL2Rwa2cvZWhhbmRsZS5jOjMwNworbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBjbGVhbnVwIGVudHJ5IgorbXNnc3RyICLgvYLgvZngvYTgvIvgvZHgvYLgvIvgvZbgvZ/gvbzgvIvgvZPgvbLgvaDgvbLgvIvgvZDgvbzgvIvgvZbgvYDgvbzgvZHgvIvgvYLgvabgvaLgvZTgvIvgvYLgvbLgvIvgvZHgvbzgvZPgvIvgvaPgvbTgvIvgvZHgvrLgvZPgvIvgvZrgvZHgvIvgvaPgvabgvIvgvZXgvrHgvbLgvIvgvYHgvI0iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoyOTEKK21zZ2lkICJvdXQgb2YgbWVtb3J5IGZvciBuZXcgY2xlYW51cCBlbnRyeSB3aXRoIG1hbnkgYXJndW1lbnRzIgorbXNnc3RyICLgvabgvpLgvrLgvbTgvZbgvIvgvaLgvp/gvYLgvabgvIvgvaPgvbrgvIvgvaTgvIvgvZHgvYTgvIvgvYXgvbLgvYLgvIvgvYHgvaLgvIvgvYLgvZngvYTgvIvgvZHgvYLgvIvgvZbgvZ/gvbzgvIvgvZPgvbLgvaDgvbLgvIvgvZDgvbzgvIvgvZbgvYDgvbzgvZHgvIvgvYLgvabgvaLgvZTgvIvgvYLgvbLgvIvgvZHgvbzgvZPgvIvgvaPgvbTgvIvgvZHgvrLgvZPgvIvgvZrgvZHgvIvgvaPgvabgvIvgvZXgvrHgvbLgvIvgvYHgvaLgvI0iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzozNTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiVzOiBlcnJvciBjbG9zaW5nICVzOiAlcyIKK21zZ2lkICIlczogZXJyb3I6ICVzXG4iCittc2dzdHIgIiVzOiAlcyDgvYHgvIvgvZbgvabgvqHgvZjgvIvgvZPgvbLgvaDgvbLgvIvgvaDgvZvgvbzgvaPgvIvgvZY6ICVzIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MzkzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogd2FybmluZzogJXNcbiIKK21zZ3N0ciAiJXM6ICAlcyDgvaDgvZbgvrLgvbLgvZ3gvIvgvZHgvIvgvaDgvZvgvbzgvaPgvIvgvZbgvIs6ICVzIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6NDE2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczolczolZDogaW50ZXJuYWwgZXJyb3I6ICVzXG4iCittc2dzdHIgIiVzOiVkOiDgvZPgvYTgvIvgvaDgvYHgvbzgvZHgvIvgvaDgvZvgvbzgvaPgvIvgvZYgYCVzJ1xuIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBpcyBtaXNzaW5nIgorbXNnc3RyICIlcyDgvaDgvZHgvbLgvIvgvZbgvaLgvrPgvYLgvIvgvabgvp/gvbzgvaLgvIvgvZ7gvbTgvYLgvabgvIvgvZPgvbTgvYIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJgJS4qcycgaXMgbm90IGFsbG93ZWQgZm9yICVzIgorbXNnaWQgIiclLjUwcycgaXMgbm90IGFsbG93ZWQgZm9yICVzIgorbXNnc3RyICJgJS4qcycg4L2g4L2R4L2y4LyLICVzIOC9guC9suC8i+C9keC9vOC9k+C8i+C9o+C9tOC8i+C9mOC9suC8i+C9huC9vOC9giIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NzMKKyMsIGMtZm9ybWF0Cittc2dpZCAianVuayBhZnRlciAlcyIKK21zZ3N0ciAiJXMg4L2C4L2y4LyL4L2k4L204L2j4LyL4L2j4L2m4LyL4L2Y4L2B4L284LyL4L2Y4L264L2R4LyNIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo4NworIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHBhY2thZ2UgbmFtZSAoJS4yNTBzKSIKK21zZ3N0ciAi4L2T4L204L2m4LyL4L2Y4L264L2R4LyL4L2Q4L204L2Y4LyL4L2m4L6S4L6y4L2y4L2j4LyL4L2Y4L2y4L2E4LyLICglLjI1MHMpIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZW1wdHkgZmlsZSBkZXRhaWxzIGZpZWxkIGAlcyciCittc2dzdHIgIuC9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9puC+n+C9vOC9hOC9mOC8i+C9ouC+kuC+seC9puC8i+C9luC9pOC9keC8i+C9puC8i+C9puC+kuC9vOC8iyBgJXMnIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBkZXRhaWxzIGZpZWxkIGAlcycgbm90IGFsbG93ZWQgaW4gc3RhdHVzIGZpbGUiCittc2dzdHIgIuC9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9ouC+kuC+seC9puC8i+C9luC9pOC9keC8i+C9puC8i+C9puC+kuC9vOC8iyBgJXMnIOC9guC9k+C9puC8i+C9muC9keC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9k+C9hOC8i+C9o+C9tOC8i+C9mOC9suC8i+C9huC9vOC9giIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTE4CisjLCBjLWZvcm1hdAorbXNnaWQgInRvbyBtYW55IHZhbHVlcyBpbiBmaWxlIGRldGFpbHMgZmllbGQgYCVzJyAoY29tcGFyZWQgdG8gb3RoZXJzKSIKK21zZ3N0ciAi4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2i4L6S4L6x4L2m4LyL4L2W4L2k4L2R4LyL4L2A4L6x4L2y4LyL4L2m4LyL4L2m4L6S4L284LyLIGAlcycg4L2T4L2E4LyL4L2j4L204LyL4L2C4L2T4L2m4LyL4L2C4L284L2E4LyL4L2j4L264LyL4L2k4LyLICjgvYLgvZ7gvZPgvIvgvZjgvbLgvIvgvZrgvbTgvIvgvaPgvbTgvIvgvYLgvIvgvZbgvabgvqHgvbTgvaLgvIvgvaLgvpDgvrHgvZbgvabgvIvgvZEpIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAidG9vIGZldyB2YWx1ZXMgaW4gZmlsZSBkZXRhaWxzIGZpZWxkIGAlcycgKGNvbXBhcmVkIHRvIG90aGVycykiCittc2dzdHIgIuC9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9ouC+kuC+seC9puC8i+C9luC9pOC9keC8i+C9gOC+seC9suC8i+C9puC8i+C9puC+kuC9vOC8iyBgJXMnIOC9k+C9hOC8i+C9o+C9tOC8i+C9guC9k+C9puC8i+C9guC9vOC9hOC8i+C9ieC9tOC9hOC8i+C9puC9tOC8iyjgvYLgvZ7gvZPgvIvgvZjgvbLgvIvgvZrgvbTgvIvgvaPgvbTgvIvgvYLgvIvgvZbgvabgvqHgvbTgvaLgvIvgvaLgvpDgvrHgvZbgvabgvIvgvZEpIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxNTQKK21zZ2lkICJ5ZXMvbm8gaW4gYm9vbGVhbiBmaWVsZCIKK21zZ3N0ciAi4L2W4L204LyL4L2j4L2y4L2T4LyL4L2m4LyL4L2m4L6S4L284LyL4L2T4L2E4LyL4L2j4L204LyL4L2o4L2y4L2T4LyLL+C9mOC9uuC9k+C8jSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTc0Cittc2dpZCAid29yZCBpbiBgcHJpb3JpdHknIGZpZWxkIgorbXNnc3RyICLgvZjgvbLgvYTgvIvgvZrgvbLgvYLgvIvgvaDgvZHgvbLgvIsgYOC9guC9meC9vOC8i+C9ouC9suC9mCcg4L2m4LyL4L2m4L6S4L284LyL4L2T4L2E4LyL4LyNIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxODYKK21zZ2lkICJ2YWx1ZSBmb3IgYHN0YXR1cycgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICLgvaDgvIvgvZPgvbLgvIvgvabgvpDgvZbgvabgvIvgvZHgvbzgvZPgvIvgvZPgvYTgvIvgvaPgvbTgvIsgYOC9guC9k+C9puC8i+C9muC9keC8iycg4L2m4LyL4L2m4L6S4L284LyL4L2C4L2y4LyL4L2R4L284L2T4LyL4L2j4L204LyL4L2C4L2T4L2m4LyL4L2C4L284L2E4LyL4L2Y4LyL4L2G4L284L2C4L2U4LyL4L2o4L2y4L2T4LyNICIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTkxCittc2dpZCAiZmlyc3QgKHdhbnQpIHdvcmQgaW4gYHN0YXR1cycgZmllbGQiCittc2dzdHIgIuC9keC9hOC8i+C9lOC8iyjgvZHgvYLgvbzgvIvgvZjgvbLgvIsp4L2Y4L2y4L2E4LyL4L2a4L2y4L2C4LyL4L2g4L2R4L2y4LyLICBg4L2C4L2T4L2m4LyL4L2a4L2R4LyLJyDgvabgvIvgvabgvpLgvbzgvIvgvZPgvYTgvIvgvI0iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE5NAorbXNnaWQgInNlY29uZCAoZXJyb3IpIHdvcmQgaW4gYHN0YXR1cycgZmllbGQiCittc2dzdHIgIuC9guC9ieC9suC9puC8i+C9lOC8iyjgvaDgvZvgvbzgvaPgvIvgvZbgvIsp4L2Y4L2y4L2E4LyL4L2a4L2y4L2C4LyL4L2g4L2R4L2y4LyLIGDgvYLgvZPgvabgvIvgvZrgvZHgvIsnIOC9puC8i+C9puC+kuC9vOC8i+C9k+C9hOC8i+C8jSAiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE5NworbXNnaWQgInRoaXJkIChzdGF0dXMpIHdvcmQgaW4gYHN0YXR1cycgZmllbGQiCittc2dzdHIgIuC9guC9puC9tOC9mOC8i+C9lOC8iyjgvYLgvZPgvabgvIvgvZrgvZHgvIsp4L2Y4L2y4L2E4LyL4L2a4L2y4L2C4LyL4L2g4L2R4L2y4LyLICBg4L2C4L2T4L2m4LyL4L2a4L2R4LyLJyDgvabgvIvgvabgvpLgvbzgvIvgvZPgvYTgvIvgvI0iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjIwNworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZXJyb3IgaW4gVmVyc2lvbiBzdHJpbmcgYCUuMjUwcyc6ICUuMjUwcyIKK21zZ2lkICJlcnJvciBpbiBWZXJzaW9uIHN0cmluZyAnJS4yNTBzJyIKK21zZ3N0ciAi4L2g4L2b4L284L2j4LyL4L2W4LyLIOC9kOC9vOC9k+C8i+C9ouC9suC9mOC8i+C9oeC9suC9guC8i+C9ouC+kuC+seC9tOC9k+C8iyBgJS4yNTBzJzogJS4yNTBzIOC9k+C9hOC8i+C8jSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjE4Cittc2dpZCAib2Jzb2xldGUgYFJldmlzaW9uJyBvciBgUGFja2FnZS1SZXZpc2lvbicgZmllbGQgdXNlZCIKK21zZ3N0ciAi4L2V4L2T4LyL4L2Y4L264L2R4LyLICBg4L2W4L2m4L6Q4L6x4L2i4LyL4L2m4L6m4L6x4L284L2E4LyLJyDgvaHgvYTgvIvgvZPgvIsgYOC9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8iy3gvZbgvabgvpDgvrHgvaLgvIvgvabgvqbgvrHgvbzgvYTgvIsnIOC9puC8i+C9puC+kuC9vOC8i+C9o+C9guC8i+C9o+C9uuC9k+C8i+C9oOC9kOC9luC8i+C9oeC9vOC9keC9lOC8jSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjM1Cittc2dpZCAidmFsdWUgZm9yIGBjb25maWctdmVyc2lvbicgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICLgvaDgvIvgvZPgvbLgvIvgvabgvpDgvZbgvabgvIvgvZHgvbzgvZPgvIvgvZPgvYTgvIvgvaPgvbTgvIsgYOC9ouC9suC9mOC8i+C9puC+kuC+suC9suC9guC8iy3gvZDgvbzgvZPgvIvgvaLgvbLgvZjgvIsnIOC9puC8i+C9puC+kuC9vOC8i+C9mOC8i+C9huC9vOC9guC9lOC8i+C9qOC9suC9k+C8jSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjQwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJlcnJvciBpbiBDb25maWctVmVyc2lvbiBzdHJpbmcgYCUuMjUwcyc6ICUuMjUwcyIKK21zZ2lkICJlcnJvciBpbiBDb25maWctVmVyc2lvbiBzdHJpbmcgJyUuMjUwcyciCittc2dzdHIgIuC9ouC9suC9mOC8i+C9puC+kuC+suC9suC9guC8iy3gvZDgvbzgvZPgvIvgvaLgvbLgvZjgvIvgvaHgvbLgvYLgvIvgvaLgvpLgvrHgvbTgvZPgvIsgYCUuMjUwcycg4L2T4L2E4LyL4L2g4L2b4L284L2j4LyL4L2WOiAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjI2NgorIywgYy1mb3JtYXQKK21zZ2lkICJ2YWx1ZSBmb3IgYGNvbmZmaWxlcycgaGFzIG1hbGZvcm1hdHRlZCBsaW5lIGAlLipzJyIKK21zZ3N0ciAiIGBjb25mZmlsZXMnIOC9guC9suC8i+C9keC9vOC9k+C8i+C9o+C9tOC8i+C9guC9k+C9puC8i+C9guC9vOC9hOC8i+C9o+C9tOC8i+C9luC9n+C9vOC8i+C9ieC9uuC9puC8i+C9guC+seC9tOC9ouC8i+C9guC+seC9tOC9ouC8i+C9luC9oOC9suC8i+C9guC+suC9o+C8i+C9kOC9suC9guC8iyBgJS4qcycg4L2h4L284L2R4LyNIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyODcKKyMsIGMtZm9ybWF0Cittc2dpZCAidmFsdWUgZm9yIGBjb25mZmlsZXMnIGhhcyBsaW5lIHN0YXJ0aW5nIHdpdGggbm9uLXNwYWNlIGAlYyciCittc2dzdHIgIiBgY29uZmZpbGVzJyDgvYLgvbLgvIvgvZHgvbzgvZPgvIvgvaPgvbTgvIvgvYLgvZPgvabgvIvgvYLgvbzgvYTgvIvgvaPgvbTgvIvgvYLgvrLgvaPgvIvgvZDgvbLgvYLgvIsg4L2W4L2i4LyL4L2m4L6f4L284L2E4LyLLeC9mOC9uuC9keC9lOC8iyBgJWMnIOC9guC9suC8i+C9oOC9guC9vOC8i+C9luC9meC9tOC9guC9puC8i+C9mOC9suC8i+C9oeC9vOC9keC8jSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MzA0Cittc2dpZCAicm9vdCBvciBudWxsIGRpcmVjdG9yeSBpcyBsaXN0ZWQgYXMgYSBjb25mZmlsZSIKK21zZ3N0ciAi4L2i4L6p4LyL4L2W4LyL4L2h4L2E4LyL4L2T4LyL4L2m4L6f4L284L2E4LyL4L2G4LyL4L2m4L6j4L284L2R4LyL4L2Q4L284LyL4L2g4L2R4L2y4LyLIOC9gOC9seC9vOC9k+C9leC8i+C9leC8i+C9oeC9suC9o+C8i+C9puC+puC9uuC8i+C9kOC9vOC8i+C9luC9gOC9vOC9keC8i+C9oOC9luC9keC8i+C9oeC9vOC9keC8jSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MzY1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJgJXMnIGZpZWxkLCBtaXNzaW5nIHBhY2thZ2UgbmFtZSwgb3IgZ2FyYmFnZSB3aGVyZSBwYWNrYWdlIG5hbWUgZXhwZWN0ZWQiCittc2dzdHIgIiIKKyJgJXMnIOC9puC8i+C9puC+kuC9vOC8iyDgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIvgvYLgvrHgvbLgvIvgvZjgvbLgvYTgvIvgvaLgvbrgvIvgvZbgvIvgvZbgvabgvpDgvrHgvbrgvZHgvIvgvaHgvbzgvZHgvIvgvabgvIvgvaPgvbTgvIsg4L2Q4L204L2Y4LyL4L2m4L6S4L6y4L2y4L2j4LyL4L2Y4L2y4L2E4LyLICDgvaHgvYTgvIvgvZPgvIvgvZXgvrHgvYLgvabgvIvgvYngvbLgvYLgvIsg4L2W4L2i4L6z4L2C4LyL4L2m4L6f4L284L2i4LyL4L2e4L204L2C4L2m4LyL4L2h4L284L2R4L2U4LyNIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzozNzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBmaWVsZCwgaW52YWxpZCBwYWNrYWdlIG5hbWUgYCUuMjU1cyc6ICVzIgorbXNnc3RyICJgJXMnIOC9puC8i+C9puC+kuC9vOC8iyDgvZPgvbTgvabgvIvgvZjgvbrgvZHgvIvgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIvgvZjgvbLgvYTgvIsgYCUuMjU1cyc6ICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgYmFkIHZlcnNpb24gcmVsYXRpb25zaGlwICVjJWMiCittc2dzdHIgIiIKKyJgJXMnIOC9puC8i+C9puC+kuC9vOC8iyDgvYLgvZ7gvbLgvIvgvZbgvabgvp/gvbTgvZPgvIsgIGAlLjI1NXMnIOC9o+C9tOC8izpcbiIKKyLgvZbgvrHgvYTgvIvgvYngvbrgvabgvIvgvZDgvbzgvZPgvIvgvaLgvbLgvZjgvIvgvZjgvZDgvbTgvZPgvIvgvaDgvZbgvrLgvbrgvaPgvIsgJWMlYyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDEyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6XG4iCisiIGAlYycgaXMgb2Jzb2xldGUsIHVzZSBgJWM9JyBvciBgJWMlYycgaW5zdGVhZCIKK21zZ3N0ciAiIgorImAlcycg4L2m4LyL4L2m4L6S4L284LyLIOC9guC9nuC9suC8i+C9luC9puC+n+C9tOC9k+C8iyBgJS4yNTVzJyDgvaPgvbTgvIs6XG4iCisiYCVjJyDgvZXgvZPgvIvgvZjgvbrgvZHgvIvgvajgvbLgvZPgvI0g4L2a4L2W4LyL4L2j4L204LyLIGAlYz0nIOC9oeC9hOC8i+C9k+C8iyBgJWMlYycg4L2j4L2C4LyL4L2j4L264L2T4LyL4L2g4L2Q4L2W4LyNIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgaW1wbGljaXQgZXhhY3QgbWF0Y2ggb24gdmVyc2lvbiBudW1iZXIsIHN1Z2dlc3QgdXNpbmcgYD0nIGluc3RlYWQiCittc2dzdHIgIiIKKyJgJXMnIOC9puC8i+C9puC+kuC9vOC8iyDgvYLgvZ7gvbLgvIvgvZbgvabgvp/gvbTgvZPgvIsgYCUuMjU1cycg4L2j4L204LyLOlxuIgorIuC9luC9puC9mOC8i+C9lOC9oOC9suC8i+C9mOC9kOC9tOC9k+C8i+C9puC+kuC+suC9suC9guC8i+C9j+C9guC8i+C9j+C9guC8i+C9kOC9vOC9k+C8i+C9ouC9suC9mOC8i+C9guC9tOC8i+C9o+C9tOC8jSDgvZrgvZbgvIvgvaPgvbTgvIsgYD0nIOC9o+C9guC8i+C9o+C9uuC9k+C8i+C9oOC9kOC9luC8i+C9k+C9suC8i+C9luC9puC9mOC8i+C9oOC9huC9ouC8i+C9luC9gOC9vOC9keC8jSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDMwCittc2dpZCAiT25seSBleGFjdCB2ZXJzaW9ucyBtYXkgYmUgdXNlZCBmb3IgUHJvdmlkZXMiCittc2dzdHIgIuC9kOC9vOC9k+C8i+C9ouC9suC9mOC8i+C9j+C9guC8i+C9j+C9guC8i+C9muC9tOC8i+C9ouC+kOC+seC9hOC9mOC8i+C9heC9suC9guC8iyDgvZbgvrHgvbLgvZPgvIvgvZjgvbLgvIvgvZrgvbTgvaDgvbLgvIvgvZHgvbzgvZPgvIvgvaPgvbTgvIvgvaPgvYLgvIvgvaPgvbrgvZPgvIvgvaDgvZDgvZbgvIvgvaDgvbzgvYTgvIvgvI0iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQzNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOlxuIgorIiB2ZXJzaW9uIHZhbHVlIHN0YXJ0cyB3aXRoIG5vbi1hbHBoYW51bWVyaWMsIHN1Z2dlc3QgYWRkaW5nIGEgc3BhY2UiCittc2dzdHIgIiIKKyJgJXMnIOC9puC8i+C9puC+kuC9vOC8iyDgvYLgvZ7gvbLgvIvgvZbgvabgvp/gvbTgvZPgvIsgYCUuMjU1cycg4L2j4L204LyLOlxuIgorIuC9kOC9vOC9k+C8i+C9ouC9suC9mOC8i+C9guC9k+C9puC8i+C9guC9vOC9hOC8i+C9oOC9keC9suC8iyDgvYDgvIvgvYHgvIvgvajgvYTgvIvgvaHgvbLgvYLgvIwt4L2Y4L264L2R4LyL4L2Y4L2y4LyL4L2R4L2E4LyL4L2F4L2y4L2C4LyL4L2B4L2i4LyL4L2g4L2C4L284LyL4L2W4L2Z4L204L2C4L2m4L2U4LyL4L2o4L2y4L2T4LyNIOC9luC9ouC8i+C9puC+n+C9vOC9hOC8i+C9heC9suC9guC8i+C9geC8i+C9puC+kOC9vOC9hOC8i+C9ouC+kOC+seC9luC9puC8i+C9k+C9suC9oOC9suC8iyIKKyLgvZbgvabgvZjgvIvgvaDgvYbgvaLgvIvgvZbgvYDgvbzgvZHgvI0iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ1MSBsaWIvZHBrZy9maWVsZHMuYzo0NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOiB2ZXJzaW9uIGNvbnRhaW5zIGAlYyciCittc2dzdHIgImAlcycg4L2m4LyL4L2m4L6S4L284LyLIGAlLjI1NXMnIOC9o+C9tOC8i+C9guC9nuC9suC8i+C9luC9puC+n+C9tOC9kzrgvZDgvbzgvZPgvIvgvaLgvbLgvZjgvIvgvZPgvYTgvIvgvZPgvIsgYCVjJ+C9oeC9vOC9keC8jSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDU5CisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzogdmVyc2lvbiB1bnRlcm1pbmF0ZWQiCittc2dzdHIgImAlcycg4L2m4LyL4L2m4L6S4L284LyLIOC9guC9nuC9suC8i+C9luC9puC+n+C9tOC9k+C8iyBgJS4yNTVzJyDgvaPgvbTgvIs6IOC9kOC9vOC9k+C8i+C9ouC9suC9mOC8i+C9ouC+qeC8i+C9guC+suC9vOC9o+C8i+C9mOC8i+C9guC9j+C9hOC9mOC8jSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDY1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6IGVycm9yIGluIHZlcnNpb246ICUuMjU1cyIKK21zZ2lkICInJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gJyUuMjU1cyc6IGVycm9yIGluIHZlcnNpb24iCittc2dzdHIgImAlcycg4L2m4LyL4L2m4L6S4L284LyLIOC9guC9nuC9suC8i+C9luC9puC+n+C9tOC9k+C8iyBgJS4yNTVzJyDgvaPgvbTgvIs6IOC9kOC9vOC9k+C8i+C9ouC9suC9mOC8izogJS4yNTVzIOC9k+C9hOC8i+C9oOC9m+C9vOC9o+C8i+C9luC8jSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDc1CisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgZmllbGQsIHN5bnRheCBlcnJvciBhZnRlciByZWZlcmVuY2UgdG8gcGFja2FnZSBgJS4yNTVzJyIKK21zZ3N0ciAiYCVzJyDgvabgvIvgvabgvpLgvbzgvIsg4L2Q4L204L2Y4LyL4L2m4L6S4L6y4L2y4L2j4LyLIGAlLjI1NXMnIOC9o+C9tOC8i+C9guC9nuC9suC8i+C9luC9puC+n+C9tOC9k+C8i+C9guC+seC9suC8i+C9pOC9tOC9o+C8i+C9o+C9puC8i+C9muC9suC9guC8i+C9puC+puC+seC9vOC9ouC8i+C9guC+seC+gOC8i+C9oOC9m+C9vOC9o+C8i+C9luC8jSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDgyCisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlcyAoYHwnKSBub3QgYWxsb3dlZCBpbiAlcyBmaWVsZCIKK21zZ3N0ciAi4L2m4L6k4L264L2j4LyL4L2Y4LyLIChgfCcpIOC9muC9tOC8iyAlcyDgvabgvIvgvabgvpLgvbzgvIvgvZPgvYTgvIvgvZjgvbLgvIvgvYbgvbzgvYIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjUzNgorIywgZnV6enkKK21zZ2lkICJ2YWx1ZSBmb3IgYHRyaWdnZXJzLXBlbmRpbmcnIGZpZWxkIG5vdCBhbGxvd2VkIGluIHRoaXMgY29udGV4dCIKK21zZ3N0ciAi4L2g4LyL4L2T4L2y4LyL4L2m4L6Q4L2W4L2m4LyL4L2R4L284L2T4LyL4L2T4L2E4LyL4L2j4L204LyLIGDgvaLgvbLgvZjgvIvgvabgvpLgvrLgvbLgvYLgvIst4L2Q4L284L2T4LyL4L2i4L2y4L2Y4LyLJyDgvabgvIvgvabgvpLgvbzgvIvgvZjgvIvgvYbgvbzgvYLgvZTgvIvgvajgvbLgvZPgvI0iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU0MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiaWxsZWdhbCBwZW5kaW5nIHRyaWdnZXIgbmFtZSBgJS4yNTVzJzogJXMiCittc2dzdHIgImAlcycg4L2m4LyL4L2m4L6S4L284LyLIOC9k+C9tOC9puC8i+C9mOC9uuC9keC8i+C9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8i+C9mOC9suC9hOC8iyBgJS4yNTVzJzogJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU0NworIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgcGVuZGluZyB0cmlnZ2VyIGAlLjI1NXMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU2MQorIywgZnV6enkKK21zZ2lkICJ2YWx1ZSBmb3IgYHRyaWdnZXJzLWF3YWl0ZWQnIGZpZWxkIG5vdCBhbGxvd2VkIGluIHRoaXMgY29udGV4dCIKK21zZ3N0ciAi4L2g4LyL4L2T4L2y4LyL4L2m4L6Q4L2W4L2m4LyL4L2R4L284L2T4LyL4L2T4L2E4LyL4L2j4L204LyLIGDgvYLgvZPgvabgvIvgvZrgvZHgvIsnIOC9puC8i+C9puC+kuC9vOC8i+C9guC9suC8i+C9keC9vOC9k+C8i+C9o+C9tOC8i+C9guC9k+C9puC8i+C9guC9vOC9hOC8i+C9mOC8i+C9huC9vOC9guC9lOC8i+C9qOC9suC9k+C8jSAiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU2OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiaWxsZWdhbCBwYWNrYWdlIG5hbWUgaW4gYXdhaXRlZCB0cmlnZ2VyIGAlLjI1NXMnOiAlcyIKK21zZ3N0ciAi4L2C4L6y4L2j4LyL4L2Q4L2y4L2C4LyLICVkIOC9guC9tOC8i+C9o+C9tOC8i+C9geC+suC9suC9mOC9puC8i+C9oOC9guC9o+C8i+C9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8i+C9mOC9suC9hOC8izogJS4yNTBzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NzQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBhd2FpdGVkIHRyaWdnZXIgcGFja2FnZSBgJS4yNTVzJyIKK21zZ3N0ciAi4L2Q4L204L2Y4LyL4L2m4L6S4L6y4L2y4L2j4LyLIGAlLjI1MHMnIOC9guC9suC8i+C9keC9vOC9k+C8i+C9o+C9tOC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9muC9tOC9oOC9suC8i+C9kOC9vOC8i+C9oeC9suC9giIKKworIzogbGliL2Rwa2cvZmlsZS5jOjUxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBzb3VyY2UgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAi4L2g4L2W4L6x4L204L2E4LyL4L2B4L204L2E4L2m4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyLIGAlLjI1MHMnIOC9geC8i+C9leC+seC9uuC8i+C9mOC8i+C9muC9tOC9guC9puC8jSIKKworIzogbGliL2Rwa2cvZmlsZS5jOjU1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hhbmdlIG93bmVyc2hpcCBvZiB0YXJnZXQgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAi4L2C4L6x4L2E4LyL4L2a4L2R4LyL4L2i4L2y4L2Y4LyL4L2m4L6S4L6y4L2y4L2C4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyLIGAlLjI1MHMnIOC9guC9puC9ouC9lOC8i+C9guC9suC8i+C9luC9keC9guC8i+C9lOC9vOC8i+C9luC9puC+kuC+seC9tOC9ouC8i+C9luC9heC9vOC9puC8i+C9oOC9luC9keC8i+C9mOC8i+C9muC9tOC9guC9puC8jSIKKworIzogbGliL2Rwa2cvZmlsZS5jOjU5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IG1vZGUgb2YgdGFyZ2V0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgIuC9guC+seC9hOC8i+C9muC9keC8i+C9ouC9suC9mOC8i+C9puC+kuC+suC9suC9guC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8iyBgJS4yNTBzJyDgvYLgvabgvaLgvZTgvIvgvYLgvbLgvIvgvZDgvZbgvabgvIvgvaPgvZjgvIvgvYLgvZ7gvbLgvIvgvabgvpLgvrLgvbLgvYLgvIvgvaDgvZbgvZHgvIvgvZjgvIvgvZrgvbTgvYLgvabgvI0iCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzo4NQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHVubG9jayAlczogJXMiCittc2dpZCAidW5hYmxlIHRvIHVubG9jayAlcyIKK21zZ3N0ciAi4L2B4LyL4L2W4L2m4L6h4L2Y4LyL4L2Y4LyL4L2a4L204L2C4L2m4LyLICVzOiAlcyIKKworIzogbGliL2Rwa2cvZmlsZS5jOjExMQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoZWNrIGZpbGUgJyVzJyBsb2NrIHN0YXR1cyIKK21zZ3N0ciAi4L2g4L2W4L6x4L204L2E4LyL4L2B4L204L2E4L2m4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyLIGAlLjI1MHMnIOC9geC8i+C9leC+seC9uuC8i+C9mOC8i+C9muC9tOC9guC9puC8jSIKKworIzogbGliL2Rwa2cvZmlsZS5jOjE0NgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic3RhdHVzIGRhdGFiYXNlIGFyZWEgaXMgbG9ja2VkIGJ5IGFub3RoZXIgcHJvY2VzcyIKK21zZ2lkICIlcyBpcyBsb2NrZWQgYnkgYW5vdGhlciBwcm9jZXNzIgorbXNnc3RyICLgvYLgvZPgvabgvIvgvZrgvZHgvIvgvYLgvZPgvZHgvIvgvabgvqHgvbTgvZHgvIvgvYLgvZ7gvbLgvIvgvaLgvp/gvbrgvZPgvIvgvZjgvYTgvaDgvIvgvYHgvbzgvYTgvabgvIvgvaDgvZHgvbLgvIsg4L2j4L2m4LyL4L2m4L6m4L6x4L284L2i4LyL4L2C4L2e4L2T4LyL4L2Y4L2y4LyL4L2F4L2y4L2C4LyL4L2C4L2y4L2m4LyL4L2j4L6h4L264LyL4L2Y4L2y4L2C4LyL4L2i4L6Q4L6x4L2W4L2m4LyL4L2h4L284L2R4L2U4LyL4L2o4L2y4L2T4LyNIgorCisjOiBsaWIvZHBrZy9maWxlLmM6MTQ4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gdW5sb2NrICVzOiAlcyIKK21zZ2lkICJ1bmFibGUgdG8gbG9jayAlcyIKK21zZ3N0ciAi4L2B4LyL4L2W4L2m4L6h4L2Y4LyL4L2Y4LyL4L2a4L204L2C4L2m4LyLICVzOiAlcyIKKworIzogbGliL2Rwa2cvbG9nLmM6NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGRuJ3Qgb3BlbiBsb2cgYCVzJzogJXNcbiIKK21zZ3N0ciAi4L2R4L6y4L2T4LyL4L2R4L264L2W4LyLIGAlcycg4L2B4LyL4L2V4L6x4L264LyL4L2Y4LyL4L2a4L204L2C4L2mOiAlc1xuIgorCisjOiBsaWIvZHBrZy9sb2cuYzo4NQorbXNnaWQgIjxwYWNrYWdlIHN0YXR1cyBhbmQgcHJvZ3Jlc3MgZmlsZSBkZXNjcmlwdG9yPiIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9sb2cuYzoxMTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSB0byBzdGF0dXMgZmQgJWQiCittc2dzdHIgIiBgJS4yNTBzJyDgvYLgvbLgvIvgvZHgvbTgvabgvIvgvZjgvZDgvbTgvZPgvIvgvZbgvZ/gvbzgvIvgvaHgvbzgvZHgvIvgvZTgvaDgvbLgvIvgvYLgvZPgvabgvIvgvZrgvZHgvIvgvaDgvZbgvrLgvbLgvIvgvZjgvIvgvZrgvbTgvYLgvabgvI0iCisKKyM6IGxpYi9kcGtnL21saWIuYzo0NCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJtYWxsb2MgZmFpbGVkICglenUgYnl0ZXMpIgorbXNnc3RyICLgvaLgvbLgvaDgvIvgvaPgvbzgvYDgvIsg4L2g4L2Q4L204L2m4LyL4L2k4L284L2i4LyL4L2W4L6x4L204L2E4LyL4L2h4L284L2R4L2U4LyLICglbGQg4L2W4L2x4LyL4L2g4L2y4L2K4L2y4L2m4L2yKSIKKworIzogbGliL2Rwa2cvbWxpYi5jOjU4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJyZWFsbG9jIGZhaWxlZCAoJXp1IGJ5dGVzKSIKK21zZ3N0ciAi4L2i4L2y4L2g4LyL4L2j4L284L2A4LyLIOC9oOC9kOC9tOC9puC8i+C9pOC9vOC9ouC8i+C9luC+seC9tOC9hOC8i+C9oeC9vOC9keC9lOC8iyAoJWxkIOC9luC9seC8i+C9oOC9suC9iuC9suC9puC9sikiCisKKyM6IGxpYi9kcGtnL21saWIuYzo3MiBsaWIvZHBrZy9tbGliLmM6OTAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI3NworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjMzNCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTEwNworIywgZnV6enkKK21zZ2lkICJmYWlsZWQgdG8gYWxsb2NhdGUgbWVtb3J5IgorbXNnc3RyICLgvabgvqPgvbzgvZHgvIvgvZDgvbzgvIvgvYLgvabgvaLgvIvgvZbgvabgvpDgvrLgvbTgvZPgvIvgvaDgvZbgvZHgvIvgvZPgvbLgvIvgvaPgvbTgvIvgvaDgvZDgvbTgvabgvIvgvaTgvbzgvaLgvIvgvZbgvrHgvbTgvYTgvIvgvaHgvbzgvZHgvZTgvI0iCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGR1cCBmb3Igc3RkJXMiCittc2dzdHIgInN0ZCVzIOC9guC9suC8i+C9keC9vOC9k+C8i+C9o+C9tOC8i+C9jOC9tOC9lOC8i+C9oOC9luC9keC8i+C9k+C9suC8i+C9oOC9kOC9tOC9puC8i+C9pOC9vOC9ouC8i+C9luC+seC9tOC9hOC8i+C9oeC9vOC9keC9lOC8jSIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEwMworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZHVwIGZvciBmZCAlZCIKK21zZ3N0ciAiZmQgJWQg4L2C4L2y4LyL4L2R4L284L2T4LyL4L2j4L204LyL4L2M4L204L2U4LyL4L2g4L2W4L2R4LyL4L2T4L2y4LyL4L2g4L2Q4L204L2m4LyL4L2k4L284L2i4LyL4L2W4L6x4L204L2E4LyL4L2h4L284L2R4L2U4LyNIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTA5Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBwaXBlIgorbXNnc3RyICLgvaLgvpLgvrHgvbTgvZHgvIvgvZHgvbTgvYTgvIvgvYLgvabgvaLgvIvgvZbgvabgvpDgvrLgvbTgvZPgvIvgvaDgvZbgvZHgvIvgvZPgvbLgvIvgvaDgvZDgvbTgvabgvIvgvaTgvbzgvaLgvIvgvZbgvrHgvbTgvYTgvIvgvaHgvbzgvZHgvZTgvI0iCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMTcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHdyaXRpbmcgdG8gJyVzJyIKK21zZ3N0ciAiYCVzJyDgvaDgvZbgvrLgvbLgvZ3gvIvgvZHgvIvgvaDgvZvgvbzgvaPgvIvgvZbgvI0iCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgZmlsZWRlc2NyaXB0b3IgZmxhZ3MgZm9yICUuMjUwcyIKK21zZ3N0ciAiJS4yNTBzIOC9guC9suC8i+C9keC9vOC9k+C8i+C9o+C9tOC8iyDgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIvgvaDgvYLgvrLgvbrgvaPgvIvgvZbgvaTgvZHgvZTgvIvgvZ/gvbTgvaLgvIvgvaLgvp/gvYLgvabgvIvgvZrgvbTgvIvgvaPgvrfgvYLgvIvgvZjgvIvgvZrgvbTgvYLgvabgvI0iCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMjYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNldCBjbG9zZS1vbi1leGVjIGZsYWcgZm9yICUuMjUwcyIKK21zZ3N0ciAiJS4yNTBzIOC9guC9suC8i+C9keC9vOC9k+C8i+C9o+C9tOC8iyDgvaPgvYLgvIvgvaPgvbrgvZPgvIvgvaDgvZDgvZbgvIvgvZPgvbLgvaDgvbLgvIst4L2C4L204LyLLeC9geC8i+C9luC9puC+oeC9mOC8i+C9k+C9suC8i+C9n+C9tOC9ouC8i+C9ouC+n+C9guC9puC8i+C9guC9nuC9suC8i+C9puC+kuC+suC9suC9guC8i+C9oOC9luC9keC8i+C9mOC8i+C9muC9tOC9guC9puC8jSIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjYzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJjb25maWd1cmF0aW9uIGVycm9yOiAlczolZDogJXMiCittc2dzdHIgIuC9ouC9suC9mOC8i+C9puC+kuC+suC9suC9guC8i+C9oOC9m+C9vOC9o+C8i+C9luC8izogJXMg4L2j4L204LyL4L2C4L2T4L2m4LyL4L2C4L284L2E4LyL4L2F4L2y4L2C4LyL4L2R4L2C4L284L2U4LyL4L2o4L2y4L2T4LyNIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6NzUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuIGNvbmZpZ3VyYXRpb24gZmlsZSAnJS4yNTVzJyBmb3IgcmVhZGluZzogJXMiCittc2dzdHIgIuC9o+C+t+C9guC8i+C9k+C9suC9oOC9suC8i+C9keC9vOC9k+C8i+C9o+C9puC8i+C9ouC9suC9mOC8i+C9puC+kuC+suC9suC9guC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8iyBgJS4yNTVzJyDgvYHgvIvgvZXgvrHgvbrgvIvgvZjgvIvgvZrgvbTgvYLgvabgvI0iCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5iYWxhbmNlZCBxdW90ZXMgaW4gJyVzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTE3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiAnJXMnIgorbXNnc3RyICLgvZjgvIvgvaTgvbrgvabgvIvgvZTgvaDgvbLgvIvgvYLgvZHgvZjgvIvgvYHgvIsgYCVzJyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjEyMQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBuZWVkcyBhIHZhbHVlIgorbXNnc3RyICItLSVzIOC9guC9keC9mOC8i+C9geC8i+C9guC9suC9puC8i+C9guC9k+C9puC8i+C9guC9vOC9hOC8i+C9heC9suC9guC8i+C9oOC9luC9guC9lOC8i+C9qOC9suC9k+C8jSIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjEyNworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBkb2VzIG5vdCB0YWtlIGEgdmFsdWUiCittc2dzdHIgIi0tJXMg4L2C4L2R4L2Y4LyL4L2B4LyL4L2C4L2y4L2m4LyL4L2C4L2T4L2m4LyL4L2C4L284L2E4LyL4L2F4L2y4L2C4LyL4L2Y4L2y4LyL4L2g4L2W4L2CIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTMzCisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWQgZXJyb3IgaW4gY29uZmlndXJhdGlvbiBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICLgvaLgvbLgvZjgvIvgvabgvpLgvrLgvbLgvYLgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIsgYCUuMjU1cycg4L2T4L2E4LyL4L2j4L204LyL4L2j4L634L2C4LyL4L2U4L2g4L2y4LyL4L2g4L2b4L284L2j4LyL4L2W4LyNIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgY29uZmlndXJhdGlvbiBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICLgvaLgvbLgvZjgvIvgvabgvpLgvrLgvbLgvYLgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIsgYCUuMjU1cycg4L2B4LyL4L2W4L2m4L6h4L2Y4LyL4L2T4L2y4L2g4L2y4LyL4L2g4L2b4L284L2j4LyL4L2W4LyNIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTcwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBvcGVuaW5nIGNvbmZpZ3VyYXRpb24gZGlyZWN0b3J5ICclcyciCittc2dzdHIgIuC9ouC9suC9mOC8i+C9puC+kuC+suC9suC9guC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8iyBgJS4yNTVzJyDgvYHgvIvgvZbgvabgvqHgvZjgvIvgvZPgvbLgvaDgvbLgvIvgvaDgvZvgvbzgvaPgvIvgvZbgvI0iCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gLS0lcyIKK21zZ3N0ciAi4L2Y4LyL4L2k4L264L2m4LyL4L2U4L2g4L2y4LyL4L2g4L2b4L284L2j4LyL4L2WIC0tJXMiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBvcHRpb24gdGFrZXMgYSB2YWx1ZSIKK21zZ3N0ciAiLS0lcyDgvYLgvZHgvZjgvIvgvYHgvIvgvYLgvbLgvabgvIvgvYLgvZPgvabgvIvgvYLgvbzgvYTgvIvgvYXgvbLgvYLgvIvgvaDgvZbgvYLgvZTgvIvgvajgvbLgvZPgvI0iCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBvcHRpb24gZG9lcyBub3QgdGFrZSBhIHZhbHVlIgorbXNnc3RyICItLSVzIOC9guC9keC9mOC8i+C9geC8i+C9guC9suC9puC8i+C9guC9k+C9puC8i+C9guC9vOC9hOC8i+C9heC9suC9guC8i+C9mOC9suC8i+C9oOC9luC9giIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI0NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiAtJWMiCittc2dzdHIgIuC9mOC8i+C9pOC9uuC9puC8i+C9lOC9oOC9suC8i+C9oOC9m+C9vOC9o+C8i+C9luC8iyAtJWMiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLSVjIG9wdGlvbiB0YWtlcyBhIHZhbHVlIgorbXNnc3RyICItJWMg4L2C4L2R4L2Y4LyL4L2B4LyL4L2C4L2y4L2m4LyL4L2C4L2T4L2m4LyL4L2C4L284L2E4LyL4L2F4L2y4L2C4LyL4L2g4L2W4L2C4L2U4LyL4L2o4L2y4L2T4LyNIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjU4CisjLCBjLWZvcm1hdAorbXNnaWQgIi0lYyBvcHRpb24gZG9lcyBub3QgdGFrZSBhIHZhbHVlIgorbXNnc3RyICItJWMg4L2C4L2R4L2Y4LyL4L2B4LyL4L2C4L2y4L2m4LyL4L2C4L2T4L2m4LyL4L2C4L284L2E4LyL4L2F4L2y4L2C4LyL4L2Y4L2y4LyL4L2g4L2W4L2CIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjcxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJvYnNvbGV0ZSBvcHRpb24gJy0tJXMnXG4iCittc2dzdHIgIuC9ieC9uuC9k+C8i+C9luC9ouC+oeC8izrgvZXgvZPgvIvgvZjgvbrgvZHgvIvgvYLgvZHgvZjgvIvgvYHgvIsgYC0tJXMnXG4iCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmxpY3RpbmcgYWN0aW9ucyAtJWMgKC0tJXMpIGFuZCAtJWMgKC0tJXMpIgorbXNnc3RyICLgvZjgvbLgvIvgvZjgvZDgvbTgvZPgvIvgvZTgvaDgvbLgvIvgvZbgvrHgvIvgvZbgvIstJWMgKC0tJXMpIGFuZCAtJWMgKC0tJXMpIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgdmFsdWUgZm9yIGAlcycgZmllbGQiCittc2dzdHIgImAlcycg4L2m4LyL4L2m4L6S4L284L2g4L2y4LyL4L2R4L284L2T4LyL4L2j4L204LyL4L2C4L2T4L2m4LyL4L2C4L284L2E4LyL4L2i4L6r4L204L2T4LyL4L2Y4LyNIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjE0NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1c2VyLWRlZmluZWQgZmllbGQgbmFtZSBgJS4qcycgdG9vIHNob3J0IgorbXNnc3RyICLgvaPgvYLgvIvgvaPgvbrgvZPgvIvgvZTgvIst4L2E4L264L2m4LyL4L2g4L2b4L2y4L2T4LyL4L2g4L2W4L2R4LyL4L2h4L284L2R4LyL4L2U4L2g4L2y4LyL4L2m4LyL4L2m4L6S4L284L2g4L2y4LyL4L2Y4L2y4L2E4LyLIGAlLipzJyDgvZDgvbTgvYTgvIvgvZHgvrLgvYLgvabgvI0iCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MTUyCisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSB2YWx1ZSBmb3IgdXNlci1kZWZpbmVkIGZpZWxkIGAlLipzJyIKK21zZ3N0ciAi4L2j4L2C4LyL4L2j4L264L2T4LyL4L2U4LyLLeC9hOC9uuC9puC8i+C9oOC9m+C9suC9k+C8i+C9oOC9luC9keC8i+C9oeC9vOC9keC8i+C9lOC9oOC9suC8i+C9puC8i+C9puC+kuC9vOC8iyBgJS4qcycg4L2C4L2y4LyL4L2R4L284L2T4LyL4L2j4L204LyL4L2C4L2T4L2m4LyL4L2C4L284L2E4LyL4L2i4L6r4L204L2T4LyL4L2Y4LyNIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjIwNworbXNnaWQgIkNvbmZpZ3VyZWQtVmVyc2lvbiBmb3IgcGFja2FnZSB3aXRoIGluYXBwcm9wcmlhdGUgU3RhdHVzIgorbXNnc3RyICLgvaDgvbzgvabgvIvgvaPgvqHgvZPgvIvgvZjgvbLgvZPgvIvgvZTgvaDgvbLgvIvgvYLgvZPgvabgvIvgvZrgvZHgvIvgvZHgvYTgvIvgvYXgvbLgvYLgvIvgvYHgvaLgvIvgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIvgvYLgvrHgvbLgvIvgvZHgvbzgvZPgvIvgvaPgvbTgvIvgvaLgvbLgvZjgvIvgvabgvpLgvrLgvbLgvYLgvIvgvaDgvZbgvZHgvIvgvaHgvbzgvZHgvIvgvZTgvaDgvbLgvIst4L2Q4L284L2T4LyL4L2i4L2y4L2Y4LyNIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjIxOAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGhhcyBzdGF0dXMgJXMgYnV0IHRyaWdnZXJzIGFyZSBhd2FpdGVkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjIyCittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzIHRyaWdnZXJzLWF3YWl0ZWQgYnV0IG5vIHRyaWdnZXJzIGF3YWl0ZWQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzICVzIGJ1dCB0cmlnZ2VycyBhcmUgcGVuZGluZyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjIzMgorbXNnaWQgInBhY2thZ2UgaGFzIHN0YXR1cyB0cmlnZ2Vycy1wZW5kaW5nIGJ1dCBubyB0cmlnZ2VycyBwZW5kaW5nIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjQyCittc2dpZCAiUGFja2FnZSB3aGljaCBpbiBzdGF0ZSBub3QtaW5zdGFsbGVkIGhhcyBjb25mZmlsZXMsIGZvcmdldHRpbmcgdGhlbSIKK21zZ3N0ciAi4L2C4L2e4L2y4LyL4L2W4L2Z4L204L2C4L2m4LyL4L2Y4L2y4L2T4LyL4L2U4L2g4L2y4LyL4L2C4L2T4L2m4LyL4L2j4L204L2C4L2m4LyL4L2A4L6x4L2y4LyL4L2Q4L204L2Y4LyL4L2m4L6S4L6y4L2y4L2j4LyL4L2g4L2R4L2y4LyL4L2j4L204LyL4L2A4L2x4L284L2T4LyL4L2V4LyL4L2h4L2y4L2j4LyL4L2a4L204LyL4L2h4L284L2R4LyNIOC9oOC9keC9suC8i+C9muC9tOC8i+C9luC9ouC+l+C9uuC9keC8i+C9keC9vOC8jSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozMzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gcGFja2FnZSBpbmZvIGZpbGUgYCUuMjU1cycgZm9yIHJlYWRpbmciCittc2dzdHIgIuC9o+C+t+C9guC8i+C9k+C9suC9oOC9suC8i+C9keC9vOC9k+C8i+C9o+C9tOC8iyDgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIvgvZbgvaLgvqHgvIvgvZHgvbzgvZPgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIsgYCUuMjU1cycg4L2B4LyL4L2V4L6x4L264LyL4L2T4L2y4LyL4L2j4L204LyL4L2g4L2Q4L204L2m4LyL4L2k4L284L2i4LyL4L2W4L6x4L204L2E4LyL4L2h4L284L2R4L2U4LyNIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjM0MQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW4ndCBzdGF0IHBhY2thZ2UgaW5mbyBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICLgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIvgvZbgvaLgvqHgvIvgvZHgvbzgvZPgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIsgYCUuMjU1cycg4L2m4L2y4L2K4L264L2K4L2y4LyL4L2g4L2W4L2R4LyL4L2Y4L2y4LyL4L2a4L204L2C4L2m4LyNIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjM0NworIywgYy1mb3JtYXQKK21zZ2lkICJjYW4ndCBtbWFwIHBhY2thZ2UgaW5mbyBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICLgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIvgvZbgvaLgvqHgvIvgvZHgvbzgvZPgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIsgYCUuMjU1cycg4L2o4L264L2Y4LyL4L2Y4L264L2U4LyL4L2g4L2W4L2R4LyL4L2Y4L2y4LyL4L2a4L204L2C4L2m4LyNIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjM1MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiY2FuJ3Qgc3RhdCBwYWNrYWdlIGluZm8gZmlsZSBgJS4yNTVzJyIKK21zZ2lkICJyZWFkaW5nIHBhY2thZ2UgaW5mbyBmaWxlICclLjI1NXMnIgorbXNnc3RyICLgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIvgvZbgvaLgvqHgvIvgvZHgvbzgvZPgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIsgYCUuMjU1cycg4L2m4L2y4L2K4L264L2K4L2y4LyL4L2g4L2W4L2R4LyL4L2Y4L2y4LyL4L2a4L204L2C4L2m4LyNIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjM2MworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2xvc2UgYWZ0ZXIgcmVhZDogYCUuMjU1cyciCittc2dzdHIgIuC9o+C+t+C9guC8i+C9lOC9oOC9suC8i+C9pOC9tOC9o+C8i+C9mOC8i+C9geC8i+C9luC9puC+oeC9mOC8i+C9k+C9suC8i+C9oOC9kOC9tOC9puC8i+C9pOC9vOC9ouC8i+C9luC+seC9tOC9hOC8i+C9oeC9vOC9keC9lDogYCUuMjU1cyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDA0CisjLCBjLWZvcm1hdAorbXNnaWQgIkVPRiBhZnRlciBmaWVsZCBuYW1lIGAlLipzJyIKK21zZ3N0ciAi4L2m4LyL4L2m4L6S4L284LyL4L2Y4L2y4L2E4LyLIGAlLipzJyDgvYLgvbLgvIvgvaTgvbTgvaPgvIvgvZjgvIsg4L2o4L2y4LyL4L2o4L284LyL4L2o4L264L2V4LyNIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQwNworIywgYy1mb3JtYXQKK21zZ2lkICJuZXdsaW5lIGluIGZpZWxkIG5hbWUgYCUuKnMnIgorbXNnc3RyICLgvabgvIvgvabgvpLgvbzgvIvgvZjgvbLgvYTgvIsgYCUuKnMnIOC9k+C9hOC8i+C9guC+suC9o+C8i+C9kOC9suC9guC8i+C9guC9puC9ouC9lOC8jSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiTVNET1MgRU9GICheWikgaW4gZmllbGQgbmFtZSBgJS4qcyciCittc2dzdHIgIuC9puC8i+C9puC+kuC9vOC8i+C9mOC9suC9hOC8iyBgJS4qcycg4L2T4L2E4LyL4L2o4L264L2Y4LyL4L2o4L264L2m4L2y4LyL4L2M4L2y4LyL4L2o4L284LyL4L2o4L264L2m4L2y4LyLIOC9qOC9suC8i+C9qOC9vOC8i+C9qOC9uuC9leC8iyAoXlopIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQxNAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWVsZCBuYW1lIGAlLipzJyBtdXN0IGJlIGZvbGxvd2VkIGJ5IGNvbG9uIgorbXNnc3RyICLgvabgvIvgvabgvpLgvbzgvIvgvZjgvbLgvYTgvIsgYCUuKnMnIOC9oOC9keC9suC8i+C9gOC9vOC8i+C9o+C9seC9vOC9k+C8i+C9guC+seC9suC9puC8i+C9ouC+l+C9uuC9puC8i+C9puC9tOC8i+C9oOC9luC+suC9hOC8i+C9keC9guC9vCIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiRU9GIGJlZm9yZSB2YWx1ZSBvZiBmaWVsZCBgJS4qcycgKG1pc3NpbmcgZmluYWwgbmV3bGluZSkiCittc2dzdHIgIiIKKyLgvabgvIvgvabgvpLgvbzgvIsgYCUuKnMnIOC9guC9suC8i+C9guC9k+C9puC8i+C9guC9vOC9hOC8i+C9guC9suC8i+C9p+C9uuC8i+C9mOC8i+C9qOC9suC8i+C9qOC9vOC8i+C9qOC9uuC9leC8iyjgvZjgvZDgvaDgvIvgvZjgvYfgvbTgvYLgvIvgvYLgvbLgvIvgvYLgvrLgvaPgvIvgvZDgvbLgvYLgvIvgvYLgvabgvaLgvZTgvIvgvZbgvaLgvrPgvYLgvIvgvabgvp/gvbzgvaLgvIvgvZ7gvbTgvYLgvabgvIvgvaHgvbzgvZHgvZTgvI0pIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQyOQorIywgYy1mb3JtYXQKK21zZ2lkICJNU0RPUyBFT0YgY2hhciBpbiB2YWx1ZSBvZiBmaWVsZCBgJS4qcycgKG1pc3NpbmcgbmV3bGluZT8pIgorbXNnc3RyICLgvabgvIvgvabgvpLgvbzgvIsgYCUuKnMnIOC9guC9suC8i+C9guC9k+C9puC8i+C9guC9vOC9hOC8i+C9k+C9hOC8i+C9qOC9uuC9mOC8i+C9qOC9uuC9puC9suC8i+C9jOC9suC8i+C9qOC9vOC8i+C9qOC9uuC9puC9suC8iyDgvajgvbLgvIvgvajgvbzgvIvgvajgvbrgvZXgvIsg4L2F4L2i4LyNIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQ0MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAibmV3bGluZSBpbiBmaWVsZCBuYW1lIGAlLipzJyIKK21zZ2lkICJibGFuayBsaW5lIGluIHZhbHVlIG9mIGZpZWxkICclLipzJyIKK21zZ3N0ciAi4L2m4LyL4L2m4L6S4L284LyL4L2Y4L2y4L2E4LyLIGAlLipzJyDgvZPgvYTgvIvgvYLgvrLgvaPgvIvgvZDgvbLgvYLgvIvgvYLgvabgvaLgvZTgvI0iCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDYxCisjLCBjLWZvcm1hdAorbXNnaWQgIkVPRiBkdXJpbmcgdmFsdWUgb2YgZmllbGQgYCUuKnMnIChtaXNzaW5nIGZpbmFsIG5ld2xpbmUpIgorbXNnc3RyICLgvabgvIvgvabgvpLgvbzgvIsgYCUuKnMnIOC9guC9suC8i+C9guC9k+C9puC8i+C9guC9vOC9hOC8i+C9puC+kOC9luC9puC8i+C9qOC9suC8i+C9qOC9vOC8i+C9qOC9uuC9leC8iyjgvZjgvZDgvaDgvIvgvZjgvYfgvbTgvYLgvIvgvYLgvbLgvIvgvYLgvrLgvaPgvIvgvZDgvbLgvYLgvIvgvYLgvabgvaLgvZTgvIvgvZbgvaLgvrPgvYLgvIvgvabgvp/gvbzgvaLgvIvgvZ7gvbTgvYLgvabgvIvgvaHgvbzgvZHgvZTgvI0pIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjU0NgorbXNnaWQgInNldmVyYWwgcGFja2FnZSBpbmZvIGVudHJpZXMgZm91bmQsIG9ubHkgb25lIGFsbG93ZWQiCittc2dzdHIgIuC9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8i+C9guC+seC9suC8i+C9luC9ouC+oeC8i+C9keC9vOC9k+C8i+C9kOC9vOC8i+C9luC9gOC9vOC9keC8i+C9o+C9uuC8i+C9pOC8i+C9heC9suC9guC8i+C9kOC9vOC9luC8i+C9oeC9vOC9keC8iyDgvYLgvYXgvbLgvYLgvIvgvaLgvpDgvrHgvYTgvZjgvIvgvYXgvbLgvYLgvIvgvaDgvZbgvZHgvIvgvYbgvbzgvYIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NTcyCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHBhY2thZ2UgaW5mb3JtYXRpb24gaW4gYCUuMjU1cyciCittc2dzdHIgImAlLjI1NXMnIOC9k+C9hOC8i+C9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8i+C9guC+seC9suC8i+C9luC9ouC+oeC8i+C9keC9vOC9k+C8i+C9mOC9uuC9keC8jSIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6NDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJwYXJzaW5nIGZpbGUgJyUuMjU1cycgbmVhciBsaW5lICVkIHBhY2thZ2UgJyUuMjU1cyc6XG4iCisiICUuMjU1cyIKK21zZ3N0ciAiJXMgIOC9oeC9suC9guC8i+C9puC+o+C9vOC9keC8iyBgJS4yNTVzJyDgvZPgvYTgvIsg4L2C4L6y4L2j4LyL4L2Q4L2y4L2C4LyLICVkIOC9guC9suC8i+C9ouC+qeC8i+C9luC8jSIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6NDgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJwYXJzaW5nIGZpbGUgJyUuMjU1cycgbmVhciBsaW5lICVkOlxuIgorIiAlLjI1NXMiCittc2dzdHIgIiVzICDgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIsgYCUuMjU1cycg4L2T4L2E4LyLIOC9guC+suC9o+C8i+C9kOC9suC9guC8iyAlZCDgvYLgvbLgvIvgvaLgvqngvIvgvZbgvI0iCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjEyNQorbXNnaWQgIm1heSBub3QgYmUgZW1wdHkgc3RyaW5nIgorbXNnc3RyICLgvaHgvbLgvYLgvIvgvaLgvpLgvrHgvbTgvZPgvIvgvabgvp/gvbzgvYTgvZjgvIvgvZjgvbrgvZPgvZjgvIvgvaDgvbzgvYTgvIvgvI0iCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjEyNworIywgZnV6enkKKyN8IG1zZ2lkICJtdXN0IHN0YXJ0IHdpdGggYW4gYWxwaGFudW1lcmljIgorbXNnaWQgIm11c3Qgc3RhcnQgd2l0aCBhbiBhbHBoYW51bWVyaWMgY2hhcmFjdGVyIgorbXNnc3RyICLgvYDgvIvgvYHgvIvgvajgvYTgvIvgvaHgvbLgvYLgvIvgvZHgvYTgvIvgvYXgvbLgvYLgvIvgvYHgvaLgvIvgvaDgvYLgvbzgvIvgvZbgvZngvbTgvYLgvabgvIvgvZHgvYLgvbwiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjEzNgorIywgYy1mb3JtYXQKK21zZ2lkICJjaGFyYWN0ZXIgYCVjJyBub3QgYWxsb3dlZCAob25seSBsZXR0ZXJzLCBkaWdpdHMgYW5kIGNoYXJhY3RlcnMgYCVzJykiCittc2dzdHIgIuC9oeC9suC9guC8i+C9oOC9luC+suC9tOC8iyBgJWMnIOC9mOC9suC8i+C9huC9vOC9guC8iyjgvaHgvbLgvYLgvIvgvYLgvbTgvIsg4L2o4L2E4LyL4L2h4L2y4L2C4LyLIOC9keC9hOC8i+C9oeC9suC9guC8i+C9oOC9luC+suC9tOC8iyBgJXMnIOC9muC9tOC8i+C9ouC+kOC+seC9hOC9mOC8i+C9heC9suC9gikiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjE3OAorIywgZnV6enkKKyN8IG1zZ2lkICI8bm9uZT4iCittc2djdHh0ICJ2ZXJzaW9uIgorbXNnaWQgIjxub25lPiIKK21zZ3N0ciAiPOC9heC9suC8i+C9mOC9uuC9kT4iCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjIwOQorbXNnaWQgInZlcnNpb24gc3RyaW5nIGlzIGVtcHR5IgorbXNnc3RyICLgvZDgvbzgvZPgvIvgvaLgvbLgvZjgvIvgvYLgvrHgvbLgvIvgvaHgvbLgvYLgvIvgvaLgvpLgvrHgvbTgvZPgvIvgvaDgvZHgvbLgvIvgvabgvp/gvbzgvYTgvZjgvIvgvajgvbLgvZPgvI0iCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjIyNAorbXNnaWQgInZlcnNpb24gc3RyaW5nIGhhcyBlbWJlZGRlZCBzcGFjZXMiCittc2dzdHIgIuC9kOC9vOC9k+C8i+C9ouC9suC9mOC8i+C9guC+seC9suC8i+C9oeC9suC9guC8i+C9ouC+kuC+seC9tOC9k+C8i+C9oOC9keC9suC8i+C9guC9suC9puC8i+C9luC9ouC8i+C9puC+n+C9vOC9hOC8i+C9muC9tOC8i+C9guC9k+C9puC8i+C9oOC9keC+suC9uuC9k+C8i+C9oOC9luC9keC8i+C9oeC9vOC9keC9lOC8jSIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjMwCittc2dpZCAiZXBvY2ggaW4gdmVyc2lvbiBpcyBub3QgbnVtYmVyIgorbXNnc3RyICLgvZDgvbzgvZPgvIvgvaLgvbLgvZjgvIvgvZPgvYTgvIvgvYLgvbLgvIvgvajgvbLgvIvgvZTgvbzgvYDgvIvgvaDgvZHgvbLgvIvgvajgvYTgvIvgvYLgvrLgvYTgvabgvIvgvZjgvbrgvZPgvI0iCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjIzMgorbXNnaWQgIm5vdGhpbmcgYWZ0ZXIgY29sb24gaW4gdmVyc2lvbiBudW1iZXIiCittc2dzdHIgIuC9kOC9vOC9k+C8i+C9ouC9suC9mOC8i+C9qOC9hOC8i+C9k+C9hOC8i+C9guC9suC8i+C9gOC9vOC8i+C9o+C9seC9vOC9k+C8i+C9guC+seC9suC8i+C9pOC9tOC9o+C8i+C9o+C9puC8i+C9guC8i+C9k+C9suC8i+C9oeC9hOC8i+C9mOC9uuC9keC9lOC8jSIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjQ3Cittc2dpZCAidmVyc2lvbiBudW1iZXIgZG9lcyBub3Qgc3RhcnQgd2l0aCBkaWdpdCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyNTAKKyMsIGZ1enp5CisjfCBtc2dpZCAibm90aGluZyBhZnRlciBjb2xvbiBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ2lkICJpbnZhbGlkIGNoYXJhY3RlciBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAi4L2Q4L284L2T4LyL4L2i4L2y4L2Y4LyL4L2o4L2E4LyL4L2T4L2E4LyL4L2C4L2y4LyL4L2A4L284LyL4L2j4L2x4L284L2T4LyL4L2C4L6x4L2y4LyL4L2k4L204L2j4LyL4L2j4L2m4LyL4L2C4LyL4L2T4L2y4LyL4L2h4L2E4LyL4L2Y4L264L2R4L2U4LyNIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyNTQKKyMsIGZ1enp5CisjfCBtc2dpZCAibm90aGluZyBhZnRlciBjb2xvbiBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ2lkICJpbnZhbGlkIGNoYXJhY3RlciBpbiByZXZpc2lvbiBudW1iZXIiCittc2dzdHIgIuC9kOC9vOC9k+C8i+C9ouC9suC9mOC8i+C9qOC9hOC8i+C9k+C9hOC8i+C9guC9suC8i+C9gOC9vOC8i+C9o+C9seC9vOC9k+C8i+C9guC+seC9suC8i+C9pOC9tOC9o+C8i+C9o+C9puC8i+C9guC8i+C9k+C9suC8i+C9oeC9hOC8i+C9mOC9uuC9keC9lOC8jSIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6Mjk5IGxpYi9kcGtnL3BhcnNlaGVscC5jOjMxMQorIywgYy1mb3JtYXQKK21zZ2lkICJtaXNzaW5nICVzIgorbXNnc3RyICIlcyDgvZbgvaLgvrPgvYLgvIvgvabgvp/gvbzgvaLgvIvgvZ7gvbTgvYLgvabgvIvgvaHgvbzgvZHgvZTgvI0iCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjMwMSBsaWIvZHBrZy9wYXJzZWhlbHAuYzozMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZW1wdHkgdmFsdWUgZm9yICVzIgorbXNnc3RyICIlcyDgvYLgvbLgvIvgvZHgvbzgvZPgvIvgvaPgvbTgvIvgvYLgvZPgvabgvIvgvYLgvbzgvYTgvIvgvabgvp/gvbzgvYTgvZjgvI0iCisKKyM6IGxpYi9kcGtnL3BrZy1mb3JtYXQuYzo4MAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGNoYXJhY3RlciBgJWMnIGluIGZpZWxkIHdpZHRoXG4iCittc2dzdHIgIuC9puC8i+C9puC+kuC9vOC8i+C9ouC+kuC+seC8i+C9muC9keC8i+C9k+C9hOC8i+C9o+C9tOC8i+C9k+C9tOC9puC8i+C9mOC9uuC9keC8i+C9oeC9suC9guC8i+C9oOC9luC+suC9tOC8iyBgJWMnIFxuIgorCisjOiBsaWIvZHBrZy9wa2ctZm9ybWF0LmM6MTcyCisjLCBjLWZvcm1hdAorbXNnaWQgIkNsb3NpbmcgYnJhY2UgbWlzc2luZyBpbiBmb3JtYXRcbiIKK21zZ3N0ciAi4L2i4L6p4LyL4L2m4L6S4L6y4L2y4L2C4LyL4L2T4L2E4LyL4L2j4L204LyL4L2W4L2i4L6z4L2C4LyL4L2m4L6f4L284L2i4LyL4L2e4L204L2C4L2m4LyL4L2Y4L2y4LyL4L2C4L204L2C4LyL4L2k4L2R4LyL4L2B4LyL4L2W4L2m4L6h4L2Y4LyL4L2R4L284LyNXG4iCisKKyM6IGxpYi9kcGtnL3BrZy1zaG93LmM6NDAKK21zZ2lkICIobm8gZGVzY3JpcHRpb24gYXZhaWxhYmxlKSIKK21zZ3N0ciAiKOC9oOC9guC+suC9uuC9o+C8i+C9luC9pOC9keC8i+C9oOC9kOC9vOC9luC8i+C9muC9tOC9guC9puC9lOC8i+C9mOC9uuC9keC8iykiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzo1NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGlnbm9yZSBzaWduYWwgJXMgYmVmb3JlIHJ1bm5pbmcgJS4yNTBzIgorbXNnc3RyICLgvaHgvbLgvYLgvIvgvZrgvbTgvYLgvabgvIvgvYLgvaHgvbzgvYLgvIvgvZjgvIvgvZbgvYDgvbzgvaPgvIvgvZbgvaDgvbLgvIvgvafgvbrgvIvgvZjgvIvgvZbgvaLgvqHgvIvgvaLgvp/gvYLgvabgvIsgJXMg4L2m4L6j4L2E4LyL4L2Y4L264L2R4LyL4L2W4L2e4L2C4LyL4L2Y4LyL4L2a4L204L2C4L2m4LyNIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgdW4tY2F0Y2hpbmcgc2lnbmFsICVzOiAlc1xuIgorbXNnc3RyICIlczogJXMg4L2W4L2i4L6h4LyL4L2i4L6f4L2C4L2m4LyL4L2Y4LyL4L2W4L2f4L204L2E4LyL4L2U4L2i4LyL4L2W4L2e4L2C4LyL4L2T4L2y4L2g4L2y4LyL4L2g4L2b4L284L2j4LyL4L2W4LyNXG4iCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzo3OAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyAoc3VicHJvY2Vzcyk6ICVzXG4iCittc2dzdHIgIiVzICjgvaPgvabgvIvgvabgvqbgvrHgvbzgvaLgvIvgvaHgvZPgvIvgvaPgvYIpOiAlc1xuIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6ODkgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQ1NAorbXNnaWQgImZvcmsgZmFpbGVkIgorbXNnc3RyICLgvYHgvIvgvabgvqTgvbrgvaPgvIvgvZPgvbLgvIvgvaDgvZDgvbTgvabgvIvgvaTgvbzgvaLgvIvgvZbgvrHgvbTgvYTgvIvgvaHgvbzgvZHgvZTgvI0iCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMTkKKyMsIGMtZm9ybWF0Cittc2dpZCAic3VicHJvY2VzcyAlcyByZXR1cm5lZCBlcnJvciBleGl0IHN0YXR1cyAlZCIKK21zZ3N0ciAi4L2j4L2m4LyL4L2m4L6m4L6x4L284L2i4LyL4L2h4L2T4LyL4L2j4L2C4LyLICVzIOC9puC+s+C9ouC8i+C9o+C9vOC9guC8i+C9oeC9vOC9keC8i+C9lOC9oOC9suC8i+C9oOC9m+C9vOC9o+C8i+C9luC8iyDgvYLgvZPgvabgvIvgvZrgvZHgvIsgJWQg4L2V4L6x4L2y4L2i4LyL4L2Q4L284L2T4LyL4L2g4L2W4L2R4L2d4LyL4L2o4L2y4L2T4LyNIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTI4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJzdWJwcm9jZXNzICVzIHdhcyBpbnRlcnJ1cHRlZCIKK21zZ3N0ciAiJXMg4L2C4L2y4LyL4L2R4L284L2T4LyL4L2j4L204LyL4L2W4L2m4L6S4L204L2C4LyL4L2T4L2y4LyL4L2g4L2Q4L204L2m4LyL4L2k4L284L2i4LyL4L2W4L6x4L204L2E4LyL4L2h4L284L2R4L2U4LyNIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTMwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJzdWJwcm9jZXNzICVzIGtpbGxlZCBieSBzaWduYWwgKCVzKSVzIgorbXNnaWQgInN1YnByb2Nlc3MgJXMgd2FzIGtpbGxlZCBieSBzaWduYWwgKCVzKSVzIgorbXNnc3RyICLgvaPgvabgvIvgvabgvqbgvrHgvbzgvaLgvIvgvaHgvZPgvIvgvaPgvYLgvIsgJXMg4L2g4L2R4L2y4LyL4L2W4L2i4L6h4LyL4L2i4L6f4L2C4L2m4LyLICglcyklcyDgvYLgvbLgvabgvIvgvYLgvabgvZHgvIvgvaHgvbzgvZHgvZTgvI0iCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMzIKK21zZ2lkICIsIGNvcmUgZHVtcGVkIgorbXNnc3RyICIsIOC9k+C9hOC8i+C9ouC+meC9suC9hOC8i+C9luC9gOC9vOC9guC8i+C9luC9nuC9guC8i+C9oeC9vOC9keC9lOC8jSIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJzdWJwcm9jZXNzICVzIGZhaWxlZCB3aXRoIHdhaXQgc3RhdHVzIGNvZGUgJWQiCittc2dzdHIgIuC9o+C9puC8i+C9puC+puC+seC9vOC9ouC8i+C9oeC9k+C8i+C9o+C9guC8iyAlcyDgvaDgvZHgvbLgvIvgvZbgvabgvpLgvbTgvYLgvIvgvZPgvbLgvaDgvbLgvIvgvYLgvZPgvabgvIvgvZrgvZHgvIvgvajgvYTgvIvgvaLgvp/gvYLgvabgvIsgJWQg4L2R4L2E4LyL4L2F4L2y4L2C4LyL4L2B4L2i4LyL4L2g4L2Q4L204L2m4LyL4L2k4L284L2i4LyL4L2W4L6x4L204L2E4LyL4L2h4L284L2R4L2U4LyNIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTUxIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo0NjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIndhaXQgZm9yIHN1YnByb2Nlc3MgJXMgZmFpbGVkIgorbXNnc3RyICIlcyDgvYLgvbLgvIvgvZHgvbzgvZPgvIvgvaPgvbTgvIvgvZbgvabgvpLgvbTgvYLgvIvgvZPgvbLgvIvgvaDgvZDgvbTgvabgvIvgvaTgvbzgvaLgvIvgvZbgvrHgvbTgvYTgvIvgvaHgvbzgvZHgvZTgvI0iCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgcGFja2FnZSBuYW1lIGAlLjI1MHMnIGluIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6ODEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInRydW5jYXRlZCB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLgvabgvbLgvIvgvYrgvbrgvYrgvbLgvIvgvZ/gvbTgvaLgvIvgvZbgvZ7gvYLgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIsgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjg1CisjLCBjLWZvcm1hdAorbXNnaWQgInN5bnRheCBlcnJvciBpbiB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIGF0IGNoYXJhY3RlciBgJXMnJXMiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MTM0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3Blbi9jcmVhdGUgdHJpZ2dlcnMgbG9ja2ZpbGUgYCUuMjUwcyciCittc2dzdHIgIuC9oOC9luC+seC9tOC9hOC8i+C9geC9tOC9hOC9puC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8iyBgJS4yNTBzJyDgvYHgvIvgvZXgvrHgvbrgvIvgvZjgvIvgvZrgvbTgvYLgvabgvI0iCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjE0MQorIywgZnV6enkKK21zZ2lkICJ0cmlnZ2VycyBhcmVhIgorbXNnc3RyICLgvYHgvIvgvZbgvabgvqHgvZjgvIvgvZjgvIvgvZrgvbTgvYLgvabgvIsgJXM6ICVzIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuC9guC9nuC9k+C8i+C9mOC9suC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9guC9puC9ouC9lOC8iyBgJS4yNTBzJyDgvabgvbLgvIvgvYrgvbrgvYrgvbLgvIvgvaDgvZbgvZHgvIvgvZjgvIvgvZrgvbTgvYLgvabgvI0iCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjE2NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4L2g4L2W4L6x4L204L2E4LyL4L2B4L204L2E4L2m4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyLIGAlLjI1MHMnIOC9geC8i+C9leC+seC9uuC8i+C9mOC8i+C9muC9tOC9guC9puC8jSIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MTc5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3Blbi9jcmVhdGUgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuC9keC9vOC9puC8i+C9geC9hOC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9guC9puC9ouC9lOC8iyBgJS4yNTBzJyDgvYHgvIvgvZXgvrHgvbrgvIvgvZjgvIvgvZrgvbTgvYLgvabgvI0iCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjIxNQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcmVhZGluZyB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIsgJS4yNTVzIOC9o+C9puC8iyAlcyDgvaPgvrfgvYLgvZTgvIvgvZHgvIvgvaDgvZvgvbzgvaPgvIvgvZbgvI0iCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjIyMworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ldyB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLgvZHgvbzgvabgvIvgvYHgvYTgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIvgvYLgvabgvaLgvZTgvIsgYCUuMjUwcycg4L2B4LyL4L2V4L6x4L264LyL4L2Y4LyL4L2a4L204L2C4L2m4LyNIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoyMjgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4L2R4L284L2m4LyL4L2B4L2E4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2C4L2m4L2i4L2U4LyLIGAlLjI1MHMnIOC9geC8i+C9leC+seC9uuC8i+C9mOC8i+C9muC9tOC9guC9puC8jSIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MjMyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiYCUuMjU1cycg4L2C4L2y4LyL4L2Q4L284L2T4LyL4L2i4L2y4L2Y4LyL4L2C4L2m4L2i4L2U4LyL4L2C4L2e4L2y4LyL4L2W4L2Z4L204L2C4L2m4LyL4L2g4L2W4L2R4LyL4L2Y4LyL4L2a4L204L2C4L2m4LyNIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MjIyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpbnZhbGlkIG9yIHVua25vd24gc3ludGF4IGluIHRyaWdnZXIgbmFtZSBgJS4yNTBzJyAoaW4gdHJpZ2dlciBpbnRlcmVzdHMgZm9yICIKKyJwYWNrYWdlIGAlLjI1MHMnKSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MjYzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiB0cmlnZ2VyIGludGVyZXN0IGxpc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4L2R4L284L2m4LyL4L2B4L2E4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2C4L2m4L2i4L2U4LyLIGAlLjI1MHMnIOC9geC8i+C9leC+seC9uuC8i+C9mOC8i+C9muC9tOC9guC9puC8jSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjI5MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJld2luZCB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuC9oeC9k+C8i+C9o+C9guC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8iyBgJS4yNTBzJyDgvaPgvrfgvYLgvIvgvZjgvIvgvZrgvbTgvYLgvabgvI0iCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyBzeW50YXggZXJyb3I7IGlsbGVnYWwgcGFja2FnZSBuYW1lIGAlLjI1MHMnOiAiCisiJS4yNTBzIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMTgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLgvYLgvZ7gvZPgvIvgvZjgvbLgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIvgvYLgvabgvaLgvZTgvIsgYCUuMjUwcycg4L2m4L2y4LyL4L2K4L264L2K4L2y4LyL4L2g4L2W4L2R4LyL4L2Y4LyL4L2a4L204L2C4L2m4LyNIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzIxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAi4L2C4L2e4L2T4LyL4L2Y4L2y4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2C4L2m4L2i4L2U4LyLIGAlLjI1MHMnIOC9puC9suC8i+C9iuC9uuC9iuC9suC8i+C9oOC9luC9keC8i+C9mOC8i+C9muC9tOC9guC9puC8jSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMyNAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAi4L2C4L2e4L2T4LyL4L2Y4L2y4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2C4L2m4L2i4L2U4LyLIGAlLjI1MHMnIOC9puC9suC8i+C9iuC9uuC9iuC9suC8i+C9oOC9luC9keC8i+C9mOC8i+C9muC9tOC9guC9puC8jSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMzMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiYCUuMjU1cycg4L2C4L2y4LyL4L2Q4L284L2T4LyL4L2i4L2y4L2Y4LyL4L2C4L2m4L2i4L2U4LyL4L2C4L2e4L2y4LyL4L2W4L2Z4L204L2C4L2m4LyL4L2g4L2W4L2R4LyL4L2Y4LyL4L2a4L204L2C4L2m4LyNIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzQwIGxpYi9kcGtnL3RyaWdsaWIuYzozNDIgbGliL2Rwa2cvdHJpZ2xpYi5jOjQ3MgorIzogc3JjL3JlbW92ZS5jOjI4NiBzcmMvcmVtb3ZlLmM6Mzc3CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZW1vdmUgYCUuMjUwcyciCittc2dzdHIgImAlLjI1MHMnIOC9ouC+qeC8i+C9luC9puC+kOC+suC9keC8i+C9guC9j+C9hOC8i+C9mOC9suC8i+C9muC9tOC9guC9puC8jSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjM2MAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLgvYLgvZ7gvZPgvIvgvZjgvbLgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIvgvYLgvabgvaLgvZTgvIsgYCUuMjUwcycg4L2m4L2y4LyL4L2K4L264L2K4L2y4LyL4L2g4L2W4L2R4LyL4L2Y4LyL4L2a4L204L2C4L2m4LyNIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzgzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4L2C4L2e4L2T4LyL4L2Y4L2y4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2C4L2m4L2i4L2U4LyLIGAlLjI1MHMnIOC9puC9suC8i+C9iuC9uuC9iuC9suC8i+C9oOC9luC9keC8i+C9mOC8i+C9muC9tOC9guC9puC8jSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ1NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorImR1cGxpY2F0ZSBmaWxlIHRyaWdnZXIgaW50ZXJlc3QgZm9yIGZpbGVuYW1lIGAlLjI1MHMnIGFuZCBwYWNrYWdlIGAlLjI1MHMnIgorbXNnc3RyICLgvZbgvaLgvqHgvIvgvZHgvbzgvZPgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIsgYCUuMjUwcycg4L2g4L2R4L2y4LyLIGAlLjI1MHMnIOC9puC+puC9uuC8i+C9guC9nuC9suC8i+C9luC9meC9tOC9guC9puC8i+C9oOC9luC9keC8i+C9mOC8i+C9muC9tOC9guC9puC8jSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ4MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLgvZHgvbzgvabgvIvgvYHgvYTgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIvgvYLgvabgvaLgvZTgvIsgYCUuMjUwcycg4L2B4LyL4L2V4L6x4L264LyL4L2Y4LyL4L2a4L204L2C4L2m4LyNIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDkzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4L2R4L284L2m4LyL4L2B4L2E4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2C4L2m4L2i4L2U4LyLIGAlLjI1MHMnIOC9geC8i+C9leC+seC9uuC8i+C9mOC8i+C9muC9tOC9guC9puC8jSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ5NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgJyUuMjUwcyciCittc2dzdHIgIuC9keC9vOC9puC8i+C9geC9hOC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9guC9puC9ouC9lOC8iyBgJS4yNTBzJyDgvYHgvIvgvZXgvrHgvbrgvIvgvZjgvIvgvZrgvbTgvYLgvabgvI0iCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0OTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzeW5jIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgJyUuMjUwcyciCittc2dzdHIgIuC9keC9vOC9puC8i+C9geC9hOC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9guC9puC9ouC9lOC8iyBgJS4yNTBzJyDgvYHgvIvgvZXgvrHgvbrgvIvgvZjgvIvgvZrgvbTgvYLgvabgvI0iCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1MDMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLgvZHgvbzgvabgvIvgvYHgvYTgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIvgvYLgvabgvaLgvZTgvIsgYCUuMjUwcycg4L2B4LyL4L2V4L6x4L264LyL4L2Y4LyL4L2a4L204L2C4L2m4LyNIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTA3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGFzIGAlLjI1MHMnIgorbXNnc3RyICLgvZbgvaLgvqHgvIvgvZHgvbzgvZPgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIsgYCUuMjUwcycg4L2g4L2R4L2y4LyLIGAlLjI1MHMnIOC9puC+puC9uuC8i+C9guC9nuC9suC8i+C9luC9meC9tOC9guC9puC8i+C9oOC9luC9keC8i+C9mOC8i+C9muC9tOC9guC9puC8jSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjU0MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLgvaHgvZPgvIvgvaPgvYLgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIsgYCUuMjUwcycg4L2j4L634L2C4LyL4L2Y4LyL4L2a4L204L2C4L2m4LyNIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTUyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLgvaLgvbLgvZjgvIvgvabgvpLgvrLgvbLgvYLgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIsgYCUuMjU1cycg4L2T4L2E4LyL4L2j4L204LyL4L2j4L634L2C4LyL4L2U4L2g4L2y4LyL4L2g4L2b4L284L2j4LyL4L2W4LyNIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTYzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmaWxlIHRyaWdnZXJzIHJlY29yZCBtZW50aW9ucyBpbGxlZ2FsIHBhY2thZ2UgbmFtZSBgJS4yNTBzJyAoZm9yIGludGVyZXN0IGluICIKKyJmaWxlIGAlLjI1MHMnKTogJS4yNTBzIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo2NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInRyaWdnZXJzIGNpIGZpbGUgYCUuMjUwcycgY29udGFpbnMgaWxsZWdhbCB0cmlnZ2VyIHN5bnRheCBpbiB0cmlnZ2VyIG5hbWUgYCIKKyIlLjI1MHMnOiAlLjI1MHMiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjY4NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gdHJpZ2dlcnMgY2kgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4L2g4L2W4L6x4L204L2E4LyL4L2B4L204L2E4L2m4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyLIGAlLjI1MHMnIOC9geC8i+C9leC+seC9uuC8i+C9mOC8i+C9muC9tOC9guC9puC8jSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjY5OQorbXNnaWQgInRyaWdnZXJzIGNpIGZpbGUgY29udGFpbnMgdW5rbm93biBkaXJlY3RpdmUgc3ludGF4IgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo3MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJpZ2dlcnMgY2kgZmlsZSBjb250YWlucyB1bmtub3duIGRpcmVjdGl2ZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Nzc2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHRyaWdnZXJzIHN0YXRlIGRpcmVjdG9yeSBgJS4yNTBzJyIKK21zZ3N0ciAi4L2R4L284L2m4LyL4L2B4L2E4LyL4L2m4L6j4L284L2R4LyL4L2Q4L284LyLIGAlLjI1MHMnIOC9o+C+t+C9guC8i+C9mOC8i+C9muC9tOC9guC9puC8jSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjc3OQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNldCBvd25lcnNoaXAgb2YgdHJpZ2dlcnMgc3RhdGUgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICLgvZHgvbzgvabgvIvgvYHgvYTgvIvgvabgvqPgvbzgvZHgvIvgvZDgvbzgvIsgYCUuMjUwcycg4L2j4L634L2C4LyL4L2Y4LyL4L2a4L204L2C4L2m4LyNIgorCisjOiBsaWIvZHBrZy90cmlnbmFtZS5jOjM0Cittc2dpZCAiZW1wdHkgdHJpZ2dlciBuYW1lcyBhcmUgbm90IHBlcm1pdHRlZCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy90cmlnbmFtZS5jOjM4Cittc2dpZCAidHJpZ2dlciBuYW1lIGNvbnRhaW5zIGludmFsaWQgY2hhcmFjdGVyIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3V0aWxzLmM6NTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInJlYWQgZXJyb3IgaW4gYCUuMjUwcyciCittc2dzdHIgIiUuMjUwcyDgvZPgvYTgvIvgvaPgvrfgvYLgvIvgvZTgvaDgvbLgvIvgvaDgvZvgvbzgvaPgvIvgvZbgvI0iCisKKyM6IGxpYi9kcGtnL3V0aWxzLmM6NjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZnZXRzIGdhdmUgYW4gZW1wdHkgc3RyaW5nIGZyb20gYCUuMjUwcyciCittc2dzdHIgIuC9qOC9uuC9leC8i+C9guC9uuC9iuC9suC9puC9suC8i+C9guC9suC9puC8i+C9geC8i+C9puC+kuC+seC9tOC9ouC8i+C9o+C9puC8i+C9oeC9suC9guC8i+C9ouC+kuC+seC9tOC9k+C8i+C9puC+n+C9vOC9hOC9mOC8i+C9heC9suC9guC8i+C9luC+seC9suC9k+C8i+C9k+C9tOC9giBbaV0iCisKKyM6IGxpYi9kcGtnL3V0aWxzLmM6NjMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInRvby1sb25nIGxpbmUgb3IgbWlzc2luZyBuZXdsaW5lIGluIGAlLjI1MHMnIgorbXNnc3RyICIiCisi4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyLIGAlLjI1MHMnIOC9oOC9keC9suC8i+C9hOC9k+C8i+C9heC9k+C8i+C9qOC9suC9k+C8iyAtIGAlLjI1MHMnIOC9guC9suC8i+C9pOC9tOC9o+C8i+C9o+C9puC8i+C9guC+suC9o+C8i+C9kOC9suC9guC8i+C9guC9puC9ouC9lOC8i+C9luC9ouC+s+C9guC8i+C9puC+n+C9vOC9ouC8i+C9nuC9tOC9guC9puC8i+C9oeC9vOC9keC9lOC8jSIKKworIzogbGliL2Rwa2cvdXRpbHMuYzo3NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgcmVhZGluZyBgJS4yNTBzJyIKK21zZ3N0ciAiJS4yNTBzIOC9k+C9hOC8i+C9o+C9tOC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9gOC+seC9suC8i+C9ouC9uuC8i+C9luC8i+C9mOC9uuC9keC8i+C9lOC9oOC9suC8i+C9mOC9h+C9tOC9giIKKworIzogbGliL2Rwa2cvdmFyYnVmLmM6ODIgbGliL2Rwa2cvdmFyYnVmLmM6ODgKK21zZ2lkICJlcnJvciBmb3JtYXR0aW5nIHN0cmluZyBpbnRvIHZhcmJ1ZiB2YXJpYWJsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxNzkgc3JjL2FyY2hpdmVzLmM6MjAwIHNyYy9hcmNoaXZlcy5jOjcyNAorbXNnaWQgImVycm9yIHJlYWRpbmcgZnJvbSBkcGtnLWRlYiBwaXBlIgorbXNnc3RyICJkcGtnLWRlYiDgvaLgvpLgvrHgvbTgvZHgvIvgvZHgvbTgvYTgvIvgvaPgvabgvIvgvaPgvrfgvYLgvIvgvZPgvbLgvIvgvaDgvZvgvbzgvaPgvIvgvZbgvI0iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjE5NQorIywgYy1mb3JtYXQKK21zZ2lkICJza2lwcGVkIHVucGFja2luZyBmaWxlICclLjI1NXMnIChyZXBsYWNlZCBvciBleGNsdWRlZD8pIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjI0NiBzcmMvYXJjaGl2ZXMuYzoyNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igc2V0dGluZyB0aW1lc3RhbXBzIG9mIGAlLjI1NXMnIgorbXNnc3RyICJgJS4yNTVzJyDgvYLgvbLgvIvgvZHgvbTgvabgvIvgvZbgvYDgvbzgvZHgvIvgvYLgvZ7gvbLgvIvgvabgvpLgvrLgvbLgvYLgvIvgvaDgvZbgvZHgvIvgvZPgvbLgvaDgvbLgvIvgvaDgvZvgvbzgvaPgvIvgvZbgvI0iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjI2MgorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIG93bmVyc2hpcCBvZiBzeW1saW5rIGAlLjI1NXMnIgorbXNnc3RyICLgvZbgvaLgvqHgvIvgvZjgvZrgvbzgvZPgvIvgvaDgvZbgvrLgvbrgvaPgvIvgvaPgvZjgvIsgYCUuMjU1cycg4L2C4L2y4LyL4L2W4L2R4L2C4LyL4L2U4L284LyL4L2C4L2e4L2y4LyL4L2m4L6S4L6y4L2y4L2C4LyL4L2g4L2W4L2R4L2d4LyL4L2R4LyL4L2g4L2b4L284L2j4LyL4L2W4LyNIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoyNjUgc3JjL2FyY2hpdmVzLmM6NzM0IHNyYy9zdGF0Y21kLmM6MTYzCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHNldHRpbmcgb3duZXJzaGlwIG9mIGAlLjI1NXMnIgorbXNnc3RyICJgJS4yNTVzJyDgvYLgvbLgvIvgvZbgvZHgvYLgvIvgvZTgvbzgvIvgvYLgvZ7gvbLgvIvgvabgvpLgvrLgvbLgvYLgvIvgvYLgvbLgvIvgvaDgvZvgvbzgvaPgvIvgvZbgvI0iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjI2NyBzcmMvYXJjaGl2ZXMuYzo3MzYgc3JjL3N0YXRjbWQuYzoxNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igc2V0dGluZyBwZXJtaXNzaW9ucyBvZiBgJS4yNTVzJyIKK21zZ3N0ciAiYCUuMjU1cycg4L2C4L2y4LyL4L2C4L2T4L2E4LyL4L2W4LyL4L2C4L2e4L2y4LyL4L2m4L6S4L6y4L2y4L2C4LyL4L2C4L2y4LyL4L2g4L2b4L284L2j4LyL4L2W4LyNIgorCisjOiBzcmMvYXJjaGl2ZXMuYzozOTUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBzdGF0IChkZXJlZmVyZW5jZSkgZXhpc3Rpbmcgc3ltbGluayBgJS4yNTBzJyIKK21zZ3N0ciAiYCUuMjUwcycg4L2C4L204LyL4L2j4L204LyL4L2j4L2C4LyL4L2j4L264L2T4LyL4L2g4L2Q4L2W4LyL4L2U4L2g4L2y4LyL4L2C4L2T4L2E4LyL4L2W4LyL4L2C4L2e4L2y4LyL4L2m4L6S4L6y4L2y4L2C4LyL4L2g4L2W4L2R4LyL4L2Y4LyL4L2a4L204L2C4L2m4LyNIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo0MTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImZhaWxlZCB0byBzdGF0IChkZXJlZmVyZW5jZSkgcHJvcG9zZWQgbmV3IHN5bWxpbmsgdGFyZ2V0IGAlLjI1MHMnIGZvciAiCisic3ltbGluayBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo0NzUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ0cnlpbmcgdG8gb3ZlcndyaXRlIGAlLjI1MHMnLCB3aGljaCBpcyB0aGUgZGl2ZXJ0ZWQgdmVyc2lvbiBvZiBgIgorIiUuMjUwcycgKHBhY2thZ2U6ICUuMTAwcykiCittc2dzdHIgIiIKKyJgJS4yNTBzJyUuMTBzJS4xMDBzJS4xMHMg4L2C4L2y4LyL4L2B4LyL4L2V4L6x4L284L2C4L2m4LyL4L2m4L6S4L6x4L204L2i4LyL4L2h4L284L2R4LyL4L2U4L2g4L2y4LyL4L2Q4L284L2T4LyL4L2i4L2y4L2Y4LyL4L2o4L2y4L2T4LyL4L2Y4L2y4LyLIGAlLjI1MHMnIOC9oOC9keC9suC8i+C9muC9luC8i+C9puC+suC9tOC9hOC8i+C9oOC9luC9keC8iyIKKyLgvZPgvbLgvIvgvaPgvbTgvIvgvaDgvZbgvZHgvIvgvaLgvqngvbzgvaPgvIvgvZbgvabgvpDgvrHgvbrgvZHgvIvgvZHgvbzgvI0iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjQ4MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidHJ5aW5nIHRvIG92ZXJ3cml0ZSBgJS4yNTBzJywgd2hpY2ggaXMgdGhlIGRpdmVydGVkIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dzdHIgIiIKKyJgJS4yNTBzJyUuMTBzJS4xMDBzJS4xMHMg4L2C4L2y4LyL4L2B4LyL4L2V4L6x4L284L2C4L2m4LyL4L2m4L6S4L6x4L204L2i4LyL4L2h4L284L2R4LyL4L2U4L2g4L2y4LyL4L2Q4L284L2T4LyL4L2i4L2y4L2Y4LyL4L2o4L2y4L2T4LyL4L2Y4L2y4LyLIGAlLjI1MHMnIOC9oOC9keC9suC8i+C9muC9luC8i+C9puC+suC9tOC9hOC8i+C9oOC9luC9keC8iyIKKyLgvZPgvbLgvIvgvaPgvbTgvIvgvaDgvZbgvZHgvIvgvaLgvqngvbzgvaPgvIvgvZbgvabgvpDgvrHgvbrgvZHgvIvgvZHgvbzgvI0iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjUxMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBgJS4yNTVzJyAod2hpY2ggSSB3YXMgYWJvdXQgdG8gaW5zdGFsbCkiCittc2dzdHIgImAlLjI1NXMnIOC9puC9suC8i+C9iuC9uuC9iuC9suC8i+C9oOC9luC9keC8i+C9mOC8i+C9muC9tOC9guC9puC8jSjgvYTgvIvgvYLgvbLgvabgvIvgvYLgvZ7gvbLgvIvgvZbgvZngvbTgvYLgvabgvIvgvaDgvZbgvZHgvIvgvZPgvbLgvIvgvaDgvZbgvZHgvIvgvZjgvbLgvIvgvZHgvbopIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo1MTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVuYWJsZSB0byBjbGVhbiB1cCBtZXNzIHN1cnJvdW5kaW5nIGAlLjI1NXMnIGJlZm9yZSBpbnN0YWxsaW5nIGFub3RoZXIgIgorInZlcnNpb24iCittc2dzdHIgIiIKKyLgvZDgvbzgvZPgvIvgvaLgvbLgvZjgvIvgvYLgvZ7gvZPgvIvgvZjgvbLgvIvgvYXgvbLgvYLgvIvgvYLgvZ7gvbLgvIvgvZbgvZngvbTgvYLgvabgvIvgvZjgvIvgvaDgvZbgvZHgvIvgvZbgvaDgvbLgvIvgvafgvbrgvIvgvZjgvIsgYCUuMjU1cycg4L2Y4L2Q4L2g4LyL4L2g4L2B4L284L2i4LyL4L2B4L2Y4L2m4LyL4L2j4L284L2C4LyL4L2m4L2y4LyL4L2m4L2y4LyL4L2a4L204LyL4L2W4L2m4L2j4LyL4L2C4L2P4L2E4LyL4L2T4L2y4LyLIgorIuC9oOC9luC9keC8i+C9mOC8i+C9muC9tOC9guC9puC8jSIKKworIzogc3JjL2FyY2hpdmVzLmM6NTI1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IHJlc3RvcmVkIGAlLjI1NXMnIGJlZm9yZSBpbnN0YWxsaW5nIGFub3RoZXIgdmVyc2lvbiIKK21zZ3N0ciAiIgorIuC9kOC9vOC9k+C8i+C9ouC9suC9mOC8i+C9guC9nuC9k+C8i+C9mOC9suC8i+C9heC9suC9guC8i+C9guC9nuC9suC8i+C9luC9meC9tOC9guC9puC8i+C9mOC8i+C9oOC9luC9keC8i+C9luC9oOC9suC8i+C9p+C9uuC8i+C9mOC8iyDgvabgvbzgvaLgvIvgvYbgvbTgvZHgvIvgvaDgvZbgvZHgvIvgvaHgvbzgvZHgvIvgvZTgvaDgvbLgvIsgYCUuMjU1cycg4L2g4L2R4L2y4LyL4L2m4L2y4LyL4L2K4L264L2K4L2y4LyL4L2g4L2W4L2R4LyL4L2Y4LyLIgorIuC9muC9tOC9guC9puC8jSIKKworIzogc3JjL2FyY2hpdmVzLmM6NTYxCisjLCBjLWZvcm1hdAorbXNnaWQgImFyY2hpdmUgY29udGFpbmVkIG9iamVjdCBgJS4yNTVzJyBvZiB1bmtub3duIHR5cGUgMHgleCIKK21zZ3N0ciAi4L2h4L2y4L2C4LyL4L2Y4L2b4L284L2R4LyL4L2A4L6x4L2y4LyL4L2T4L2E4LyL4L2T4LyL4L2R4L2E4L284L2m4LyL4L2U4L284LyLIGAlLjI1NXMnIOC9mOC8i+C9pOC9uuC9puC8i+C9lOC9oOC9suC8i+C9keC9luC+seC9uuC8i+C9luC8iyAweCV4IOC9oOC9keC9tOC9giIKKworIzogc3JjL2FyY2hpdmVzLmM6NjI2IHNyYy9kaXZlcnRjbWQuYzoxNTAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjY4MgorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMjIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyODQKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNDQxIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNjgwCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE2NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI0NAorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MjcKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImNhbm5vdCBzdGF0IG9sZCBuYW1lIGAlcyc6ICVzIgorbXNnaWQgImNhbm5vdCBzdGF0IGZpbGUgJyVzJyIKK21zZ3N0ciAi4L2Y4L2y4L2E4LyL4L2i4L6Z4L2y4L2E4L2Y4LyLIGAlcycg4L2m4L2y4LyL4L2K4L264L2K4L2y4LyL4L2g4L2W4L2R4LyL4L2Y4LyL4L2a4L204L2C4L2mOiAlcyIKKworIzogc3JjL2FyY2hpdmVzLmM6NjQxCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlcGxhY2luZyBmaWxlcyBpbiBvbGQgcGFja2FnZSAlcyAuLi5cbiIKK21zZ3N0ciAi4L2Q4L204L2Y4LyL4L2m4L6S4L6y4L2y4L2j4LyLICVzIOC9ouC+meC9suC9hOC9mOC8i+C9k+C9hOC8i+C9o+C9tOC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9muC9tOC8i+C9muC9luC8i+C9luC9meC9tOC9guC9puC8i+C9keC9vC4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVwbGFjZWQgYnkgZmlsZXMgaW4gaW5zdGFsbGVkIHBhY2thZ2UgJXMgLi4uXG4iCittc2dzdHIgIuC9guC9nuC9suC8i+C9luC9meC9tOC9guC9puC8i+C9oOC9luC9keC8i+C9oeC9vOC9keC8i+C9lOC9oOC9suC8i+C9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8iyAlcyDgvZPgvYTgvIvgvaPgvbTgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIvgvYDgvrHgvbLgvabgvIvgvZrgvZbgvIvgvZbgvZngvbTgvYLgvabgvIvgvaHgvbzgvZEuLi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6NjU0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisidHJ5aW5nIHRvIG92ZXJ3cml0ZSBkaXJlY3RvcnkgJyUuMjUwcycgaW4gcGFja2FnZSAlLjI1MHMgJS4yNTBzIHdpdGggIgorIm5vbmRpcmVjdG9yeSIKK21zZ3N0ciAiIgorIuC9puC+o+C9vOC9keC8i+C9kOC9vOC8i+C9mOC9suC9k+C8i+C9lOC8i+C9keC9hOC8i+C9heC9suC9guC8i+C9geC9ouC8iyDgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIsgJS4yNTBzIOC9k+C9hOC8i+C9o+C9tOC8i+C9puC+o+C9vOC9keC8i+C9kOC9vOC8iyBgJS4yNTBzJyDgvZrgvZbgvIvgvabgvrLgvbTgvYTgvIvgvaDgvZbgvZHgvIvgvZPgvbLgvIvgvaPgvbTgvIvgvaDgvZbgvZHgvIvgvaLgvqngvbzgvaPgvIsiCisi4L2W4L2m4L6Q4L6x4L264L2R4LyL4L2R4L284LyNIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInRyeWluZyB0byBvdmVyd3JpdGUgJyUuMjUwcycsIHdoaWNoIGlzIGFsc28gaW4gcGFja2FnZSAlLjI1MHMgJS4yNTBzIgorbXNnc3RyICLgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIsgJS4yNTBzIOC9k+C9hOC8i+C9o+C9tOC8i+C9oeC9hOC8i+C9oeC9vOC9keC8i+C9mOC9suC8iyAgYCUuMjUwcycg4L2a4L2W4LyL4L2m4L6y4L204L2E4LyL4L2g4L2W4L2R4LyL4L2T4L2y4LyL4L2j4L204LyL4L2g4L2W4L2R4LyL4L2i4L6p4L284L2j4LyL4L2W4L2m4L6Q4L6x4L264L2R4LyL4L2R4L284LyNIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3MTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgYCUuMjU1cycgKHdoaWxlIHByb2Nlc3NpbmcgYCUuMjU1cycpIgorbXNnc3RyICJgJS4yNTVzJyDgvaPgvrfgvYLgvIvgvZPgvbLgvIvgvaPgvbTgvIvgvaDgvZDgvbTgvabgvIvgvaTgvbzgvaLgvIvgvaDgvZbgvrHgvbTgvYTgvIvgvaHgvbzgvZHgvIsoYCUuMjU1cycg4L2T4L2E4LyL4L2j4L204LyLKSIKKworIzogc3JjL2FyY2hpdmVzLmM6NzE4CisjLCBjLWZvcm1hdAorbXNnaWQgImJhY2tlbmQgZHBrZy1kZWIgZHVyaW5nIGAlLjI1NXMnIgorbXNnc3RyICJgJS4yNTVzJyDgvabgvpDgvZbgvabgvIsgZHBrZy1kZWIg4L2i4L6S4L6x4L2W4LyL4L2Y4L2Q4L2g4LyL4L2g4L2W4L2R4LyNIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NDQgc3JjL2FyY2hpdmVzLmM6OTA4IHNyYy9hcmNoaXZlcy5jOjk0OQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nL3dyaXRpbmcgYCUuMjU1cyciCittc2dzdHIgImAlLjI1NXMnIOC9geC8i+C9luC9puC+oeC9mOC8i+C9k+C9suC8iy/gvaDgvZbgvrLgvbLgvIvgvZPgvbLgvaDgvbLgvIvgvaDgvZvgvbzgvaPgvIvgvZbgvI0iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc0OAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBwaXBlIGAlLjI1NXMnIgorbXNnc3RyICLgvaLgvpLgvrHgvbTgvZHgvIvgvZHgvbTgvYTgvIsgYCUuMjU1cycg4L2C4L2m4L2i4LyL4L2W4L2m4L6Q4L204L2T4LyL4L2g4L2W4L2R4L2d4LyL4L2R4LyL4L2g4L2b4L284L2j4LyL4L2W4LyNIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NTMgc3JjL2FyY2hpdmVzLmM6NzU4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIGRldmljZSBgJS4yNTVzJyIKK21zZ3N0ciAi4L2Q4L2W4L2m4LyL4L2g4L2V4L6y4L204L2j4LyLIGAlLjI1NXMnIOC9guC9puC9ouC8i+C9luC9puC+kOC+suC9tOC9k+C8i+C9oOC9luC9keC9neC8i+C9keC8i+C9oOC9m+C9vOC9o+C8i+C9luC8jSIKKworIzogc3JjL2FyY2hpdmVzLmM6NzcxCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIGhhcmQgbGluayBgJS4yNTVzJyIKK21zZ3N0ciAi4L2n4L2i4L2M4L2y4LyL4L2j4L2y4L2E4L2A4LyLIGAlLjI1NXMnIOC9guC9puC9ouC8i+C9luC9puC+kOC+suC9tOC9k+C8i+C9oOC9luC9keC9neC8i+C9keC8i+C9oOC9m+C9vOC9o+C8i+C9luC8jSIKKworIzogc3JjL2FyY2hpdmVzLmM6Nzc3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo1MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgc3ltYm9saWMgbGluayBgJS4yNTVzJyIKK21zZ3N0ciAi4L2W4L2i4L6h4LyL4L2Y4L2a4L284L2T4LyL4L2g4L2W4L6y4L264L2j4LyL4L2j4L2Y4LyLIGAlLjI1NXMnIOC9guC9puC9ouC8i+C9luC9puC+kOC+suC9tOC9k+C8i+C9oOC9luC9keC9neC8i+C9keC8i+C9oOC9m+C9vOC9o+C8i+C9luC8jSIKKworIzogc3JjL2FyY2hpdmVzLmM6NzgzCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIGRpcmVjdG9yeSBgJS4yNTVzJyIKK21zZ3N0ciAi4L2m4L6j4L284L2R4LyL4L2Q4L284LyLIGAlLjI1NXMnIOC9guC9puC9ouC8i+C9luC9puC+kOC+suC9tOC9k+C8i+C9oOC9luC9keC9neC8i+C9keC8i+C9oOC9m+C9vOC9o+C8i+C9luC8jSIKKworIzogc3JjL2FyY2hpdmVzLmM6ODIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBtb3ZlIGFzaWRlIGAlLjI1NXMnIHRvIGluc3RhbGwgbmV3IHZlcnNpb24iCittc2dzdHIgIuC9kOC9vOC9k+C8i+C9ouC9suC9mOC8i+C9guC9puC9ouC9lOC8i+C9guC9nuC9suC8i+C9luC9meC9tOC9guC9puC8i+C9oOC9luC9keC8i+C9k+C9suC9oOC9suC8i+C9keC9vOC9k+C8i+C9o+C9puC8iyAgYCUuMjU1cycg4L2f4L204L2i4LyL4L2B4LyL4L2W4L2k4L204L2R4LyL4L2Y4LyL4L2a4L204L2C4L2m4LyNIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4MzIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjMyMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBsaW5rIGAlLjI1NXMnIgorbXNnc3RyICLgvaDgvZbgvrLgvbrgvaPgvIvgvaPgvZjgvIsgYCUuMjU1cycg4L2j4L634L2C4LyL4L2Y4LyL4L2a4L204L2C4L2m4LyNIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4MzQgc3JjL2NvbmZpZ3VyZS5jOjQyMworIywgYy1mb3JtYXQKK21zZ2lkICJzeW1ib2xpYyBsaW5rICclLjI1MHMnIHNpemUgaGFzIGNoYW5nZWQgZnJvbSAlamQgdG8gJXpkIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjgzOQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gbWFrZSBiYWNrdXAgc3ltbGluayBmb3IgYCUuMjU1cyciCittc2dzdHIgImAlLjI1NXMnIOC9guC9suC8i+C9keC9vOC9k+C8i+C9o+C9tOC8i+C9ouC+kuC+seC9luC8i+C9kOC9guC8i+C9luC9ouC+oeC8i+C9mOC9muC9vOC9k+C8i+C9oOC9luC+suC9uuC9o+C8i+C9o+C9mOC8i+C9luC9n+C9vOC8i+C9mOC8i+C9muC9tOC9guC9puC8jSIKKworIzogc3JjL2FyY2hpdmVzLmM6ODQxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaG93biBiYWNrdXAgc3ltbGluayBmb3IgYCUuMjU1cyciCittc2dzdHIgImAlLjI1NXMnIOC9guC9suC8i+C9keC9vOC9k+C8i+C9o+C9tOC8i+C9ouC+kuC+seC9luC8i+C9kOC9guC8i+C9luC9ouC+oeC8i+C9mOC9muC9vOC9k+C8i+C9oOC9luC+suC9uuC9o+C8i+C9o+C9mOC8i+C9heC9oOC9tOC9k+C8i+C9oOC9luC9keC8i+C9mOC8i+C9muC9tOC9guC9puC8jSIKKworIzogc3JjL2FyY2hpdmVzLmM6ODQ2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBtYWtlIGJhY2t1cCBsaW5rIG9mIGAlLjI1NXMnIGJlZm9yZSBpbnN0YWxsaW5nIG5ldyB2ZXJzaW9uIgorbXNnc3RyICLgvZDgvbzgvZPgvIvgvaLgvbLgvZjgvIvgvYLgvabgvaLgvZTgvIvgvYLgvZ7gvbLgvIvgvZbgvZngvbTgvYLgvabgvIvgvZjgvIvgvaDgvZbgvZHgvIvgvZbgvaDgvbLgvIvgvafgvbrgvIvgvZjgvIsgYCUuMjU1cycg4L2C4L2y4LyL4L2i4L6S4L6x4L2W4LyL4L2Q4L2C4LyL4L2g4L2W4L6y4L264L2j4LyL4L2j4L2Y4LyL4L2W4L2f4L284LyL4L2Y4LyL4L2a4L204L2C4L2m4LyNIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4NjMgc3JjL2FyY2hpdmVzLmM6OTU3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyB2ZXJzaW9uIG9mIGAlLjI1NXMnIgorbXNnc3RyICJgJS4yNTVzJyDgvYLgvbLgvIvgvZDgvbzgvZPgvIvgvaLgvbLgvZjgvIvgvYLgvabgvaLgvZTgvIvgvYLgvZ7gvbLgvIvgvZbgvZngvbTgvYLgvabgvIvgvaDgvZbgvZHgvIvgvZjgvIvgvZrgvbTgvYLgvabgvI0iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjkwMiBzcmMvYXJjaGl2ZXMuYzo5NDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuICclLjI1NXMnIgorbXNnc3RyICJgJS4yNTVzJyDgvYLgvabgvaLgvIvgvZbgvabgvpDgvrLgvbTgvZPgvIvgvaDgvZbgvZHgvIvgvZjgvIvgvZrgvbTgvYLgvabgvI0iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjk0NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgZmlsZSAnJS4yNTVzJyIKK21zZ3N0ciAiYCUuMjU1cycg4L2C4L2T4L2m4LyL4L2B4L284L2E4L2m4LyL4L2Y4L2y4L2T4LyL4L2U4LyL4L2W4L2f4L284LyL4L2T4L2y4LyL4L2g4L2Q4L204L2m4LyL4L2k4L284L2i4LyL4L2W4L6x4L204L2E4LyL4L2h4L284L2R4LyNIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDAwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiaWdub3JpbmcgZGVwZW5kZW5jeSBwcm9ibGVtIHdpdGggJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiDgvYngvbrgvZPgvIvgvZbgvaLgvqHgvIsgLSAlcyDgvYLgvbLgvIvgvaLgvqngvIvgvZbgvabgvpDgvrLgvZHgvIvgvZHgvYTgvIvgvYXgvbLgvYLgvIvgvYHgvaLgvIvgvaLgvp/gvbrgvZPgvIvgvaDgvZbgvrLgvbrgvaPgvIvgvYLgvrHgvbLgvIvgvZHgvYDgvaDgvIvgvYTgvaPgvIvgvabgvqPgvYTgvIvgvZjgvbrgvZHgvIvgvZbgvZ7gvYLgvZTgvIvgvZE6XG4iCisiJXMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJjb25zaWRlcmluZyBkZWNvbmZpZ3VyYXRpb24gb2YgZXNzZW50aWFsXG4iCisiIHBhY2thZ2UgJXMsIHRvIGVuYWJsZSAlcy4iCittc2dzdHIgIiIKKyJkcGtnOiDgvYngvbrgvZPgvIvgvZbgvaLgvqHgvIsgLSDgvYHgvYLgvIvgvYbgvbrgvIvgvZbgvaDgvbLgvIvgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIsgJXMg4L2C4L2y4LyL4L2i4L2y4L2Y4LyL4L2m4L6S4L6y4L2y4L2C4LyL4L2Y4L2y4LyL4L2g4L2W4L2R4LyL4L2T4L2y4LyL4L2G4LyL4L2g4L2H4L284L2C4LyL4L2g4L2W4L2R4L2d4LyL4L2R4L284LyLXG4iCisiICVzIOC9ouC+qeC9luC9puC+kOC+suC9keC8i+C9guC9j+C9hOC8i+C9k+C9suC8i+C9o+C+leC9vOC9guC9puC8i+C9heC9k+C8i+C9luC9n+C9vOC8i+C9k+C9suC9oOC9suC8i+C9keC9vOC9k+C8i+C9o+C9puC8jVxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDA4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogbm8sICVzIGlzIGVzc2VudGlhbCwgd2lsbCBub3QgZGVjb25maWd1cmVcbiIKKyIgaXQgaW4gb3JkZXIgdG8gZW5hYmxlICVzLlxuIgorbXNnc3RyICIiCisiZHBrZzog4L2Y4L264L2R4LyNICVzIOC9oOC9keC9suC8i+C9geC9guC8i+C9huC9uuC9neC8i+C9qOC9suC9k+C8jSDgvaDgvZHgvbLgvIvgvaLgvbLgvZjgvIvgvabgvpLgvrLgvbLgvYLgvIvgvaDgvZbgvZHgvIvgvaDgvbzgvYTgvItcbiIKKyIgICVzIOC9ouC+qeC9luC9puC+kOC+suC9keC8i+C9guC9j+C9hOC8i+C9k+C9suC8i+C9o+C+leC9vOC9guC9puC8i+C9heC9k+C8i+C9luC9n+C9vOC8i+C9k+C9suC9oOC9suC8i+C9keC9vOC9k+C8i+C9o+C9puC8jVxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDIyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogbm8sIGNhbm5vdCBwcm9jZWVkIHdpdGggJXMgKC0tYXV0by1kZWNvbmZpZ3VyZSB3aWxsIGhlbHApOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzog4L2Y4L264L2R4LyNICVzIOC9ouC+qeC8i+C9luC9puC+kOC+suC9keC8i+C9guC9j+C9hOC8i+C9mOC9suC8i+C9muC9tOC9guC9puC8iyAoLS1hdXRvLWRlY29uZmlndXJlIOC9guC9suC8i+C9guC+suC9vOC9guC9puC8i+C9ouC9mOC8i+C9oOC9luC9keC8i+C9oOC9vOC9hOC8iyk6XG4iCisiJXMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMzIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInJlbW92YWwgb2YgJS4yNTBzIgorbXNnc3RyICIlLjI1MHMg4L2T4L2E4LyL4L2j4L634L2C4LyL4L2U4L2g4L2y4LyL4L2g4L2b4L284L2j4LyL4L2W4LyNIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDU3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJpbnN0YWxsYXRpb24gb2YgJS4yNTBzIgorbXNnc3RyICJgJS4yNTVzJyDgvYLgvbLgvIvgvZDgvbzgvZPgvIvgvaLgvbLgvZjgvIvgvYLgvabgvaLgvZTgvIvgvYLgvZ7gvbLgvIvgvZbgvZngvbTgvYLgvabgvIvgvaDgvZbgvZHgvIvgvZjgvIvgvZrgvbTgvYLgvabgvI0iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNTgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBjb25zaWRlcmluZyBkZWNvbmZpZ3VyYXRpb24gb2YgJXMsIHdoaWNoIHdvdWxkIGJlIGJyb2tlbiBieSAlcyAuLi5cbiIKK21zZ3N0ciAiZHBrZzogJXMg4L2C4L2y4LyL4L2R4L284L2T4LyL4L2j4L204LyLICVzIOC9ouC+qeC8i+C9luC9puC+kOC+suC9keC8i+C9guC9j+C9hOC8i+C9k+C9suC8i+C9huC8i+C9oOC9h+C9vOC9guC8i+C9oOC9luC9keC8i+C9keC9vOC8iyAuLi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA2NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogeWVzLCB3aWxsIGRlY29uZmlndXJlICVzIChicm9rZW4gYnkgJXMpLlxuIgorbXNnc3RyICJkcGtnOiDgvajgvbLgvZPgvI0gICVz4L2C4L2y4LyL4L2R4L284L2T4LyL4L2j4L204LyLICVz4L2i4L6p4LyL4L2W4L2m4L6Q4L6y4L2R4LyL4L2C4L2P4L2E4LyL4L2g4L284L2E4LyL4LyNXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNjkgc3JjL2FyY2hpdmVzLmM6MTE4NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogcmVnYXJkaW5nICVzIGNvbnRhaW5pbmcgJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiAgJXMg4L2T4L2E4LyL4L2T4LyLICVzIOC9oeC9vOC9keC8i+C9mOC9suC8i+C9guC9suC8i+C9puC+kOC9vOC9ouC8i+C9o+C9puC8izpcbiIKKyIlcyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA3NworIywgZnV6enkKK21zZ2lkICJpZ25vcmluZyBicmVha2FnZSwgbWF5IHByb2NlZWQgYW55d2F5ISIKK21zZ3N0ciAiZHBrZzog4L2J4L264L2T4LyL4L2W4L2i4L6h4LyLIC0g4L2Y4L2y4LyL4L2Y4L2Q4L204L2T4LyL4L2U4LyL4L2m4L6j4L2E4LyL4L2Y4L264L2R4LyL4L2W4L2e4L2C4LyL4L2R4L284LyNIOC9guC8i+C9keC9uuC8i+C9puC+puC9uuC8i+C9ouC9tOC9hOC8i+C9oOC9leC+suC9vOC8i+C9mOC9kOC9tOC9keC8i+C9oOC9vOC9hOC8iyAhXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImluc3RhbGxpbmcgJS4yNTBzIHdvdWxkIGJyZWFrICUuMjUwcywgYW5kXG4iCisiIGRlY29uZmlndXJhdGlvbiBpcyBub3QgcGVybWl0dGVkICgtLWF1dG8tZGVjb25maWd1cmUgbWlnaHQgaGVscCkiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA4NgorIywgYy1mb3JtYXQKK21zZ2lkICJpbnN0YWxsaW5nICUuMjUwcyB3b3VsZCBicmVhayBleGlzdGluZyBzb2Z0d2FyZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTE2CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IGNvbnNpZGVyaW5nIHJlbW92aW5nICVzIGluIGZhdm91ciBvZiAlcyAuLi5cbiIKK21zZ3N0ciAiZHBrZzogJXMg4L2C4L2y4LyL4L2R4L284L2T4LyL4L2j4L204LyLICVzIOC9ouC+qeC8i+C9luC9puC+kOC+suC9keC8i+C9guC9j+C9hOC8i+C9k+C9suC8i+C9huC8i+C9oOC9h+C9vOC9guC8i+C9oOC9luC9keC8i+C9keC9vOC8iyAuLi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTEyMgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgcHJvcGVybHkgaW5zdGFsbGVkIC0gaWdub3JpbmcgYW55IGRlcGVuZGVuY2llcyBvbiBpdC5cbiIKK21zZ3N0ciAiIgorIiVzIOC9oOC9keC9suC8i+C9o+C9uuC8i+C9pOC9vOC9mOC8i+C9puC+puC9uuC8i+C9guC9nuC9suC8i+C9luC9meC9tOC9guC9puC8i+C9mOC8i+C9oOC9luC9keC8i+C9luC9puC8iyAtIOC9oOC9keC9suC8i+C9guC9tOC9oOC9suC8i+C9ouC+n+C9uuC9k+C8i+C9oOC9luC+suC9uuC9o+C8i+C9guC8i+C9heC9suC8i+C9oOC9luC9keC8i+C9ouC9tOC9hOC8i+C9puC+o+C9hOC8i+C9mOC9uuC9keC8i+C9luC9nuC9guC8i+C9keC9vOC8jVxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTUxCisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IG1heSBoYXZlIHRyb3VibGUgcmVtb3ZpbmcgJXMsIGFzIGl0IHByb3ZpZGVzICVzIC4uLlxuIgorbXNnc3RyICJkcGtnOiDgvaDgvZHgvbLgvIvgvYLgvbLgvabgvIsgJXMg4L2W4L6x4L2y4L2T4L2Y4LyL4L2j4L2m4LyLICVzIOC9ouC+qeC8i+C9luC9puC+kOC+suC9keC8i+C9guC9j+C9hOC8i+C9k+C9suC8i+C9o+C9tOC8i+C9keC9gOC9oOC8i+C9hOC9o+C8i+C9oeC9vOC9keC9lOC8i+C9oOC9vOC9hOC8iyAuLi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE2NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IHBhY2thZ2UgJXMgcmVxdWlyZXMgcmVpbnN0YWxsYXRpb24sIGJ1dCB3aWxsIHJlbW92ZSBhbnl3YXkgYXMgeW91ICIKKyJyZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiIKKyJkcGtnOiDgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIsgJXMg4L2j4L204LyL4L2j4L284L2C4LyL4L2C4L2e4L2y4LyL4L2W4L2Z4L204L2C4L2m4LyL4L2g4L2W4L2R4LyL4L2T4L2y4LyL4L2R4L2C4L284L2U4LyL4L2o4L2y4L2T4LyLIOC9keC9uuC8i+C9oOC9luC9keC9neC8i+C9keC8i+C9geC+seC9vOC9keC8i+C9gOC+seC9suC9puC8i+C9nuC9tOC8i+C9luC8i+C9oOC9luC9keC8i+C9keC9vOC8i+C9luC9n+C9tOC9mOC8i+C9puC+puC9uuC8i+C9ouC+qeC8iyIKKyLgvZbgvabgvpDgvrLgvZHgvIvgvYLgvY/gvYTgvIvgvI1cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE2OQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiBwYWNrYWdlICVzIHJlcXVpcmVzIHJlaW5zdGFsbGF0aW9uLCB3aWxsIG5vdCByZW1vdmUuXG4iCittc2dzdHIgImRwa2c6IOC9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8iyAlcyDgvaPgvbTgvIvgvZHgvYLgvbzgvZTgvIvgvajgvbLgvZPgvIsg4L2i4L6p4LyL4L2W4L2m4L6Q4L6y4L2R4LyL4L2Y4L2y4LyL4L2C4L2P4L2E4LyL4LyNXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogeWVzLCB3aWxsIHJlbW92ZSAlcyBpbiBmYXZvdXIgb2YgJXMuXG4iCittc2dzdHIgImRwa2c6IOC9qOC9suC9k+C8jSAgJXPgvYLgvbLgvIvgvZHgvbzgvZPgvIvgvaPgvbTgvIsgJXPgvaLgvqngvIvgvZbgvabgvpDgvrLgvZHgvIvgvYLgvY/gvYTgvIvgvaDgvbzgvYTgvIvgvI1cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE5MAorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mbGljdGluZyBwYWNrYWdlcyAtIG5vdCBpbnN0YWxsaW5nICUuMjUwcyIKK21zZ3N0ciAi4L2Y4L2y4LyL4L2Y4L204L2T4LyL4L2U4L2g4L2y4LyL4L2Q4L204L2Y4LyL4L2m4L6S4L6y4L2y4L2j4LyL4L2a4L204LyLIC0gICUuMjUwcyDgvYLgvZ7gvbLgvIvgvZbgvZngvbTgvYLgvabgvIvgvZjgvbLgvIvgvaDgvZbgvZHgvI0iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExOTEKKyMsIGZ1enp5Cittc2dpZCAiaWdub3JpbmcgY29uZmxpY3QsIG1heSBwcm9jZWVkIGFueXdheSEiCittc2dzdHIgImRwa2c6IOC9ieC9uuC9k+C8i+C9luC9ouC+oeC8iyAtIOC9mOC9suC8i+C9mOC9kOC9tOC9k+C8i+C9lOC8i+C9puC+o+C9hOC8i+C9mOC9uuC9keC8i+C9luC9nuC9guC8i+C9keC9vOC8jSDgvYLgvIvgvZHgvbrgvIvgvabgvqbgvbrgvIvgvaLgvbTgvYTgvIvgvaDgvZXgvrLgvbzgvIvgvZjgvZDgvbTgvZHgvIvgvaDgvbzgvYTgvIsgIVxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjM1CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgLS1yZWN1cnNpdmUgbmVlZHMgYXQgbGVhc3Qgb25lIHBhdGggYXJndW1lbnQiCittc2dzdHIgIi0tJXMgLS1yZWN1cnNpdmUg4L2j4L204LyL4L2J4L204L2E4LyL4L2Y4L2Q4L2g4LyL4L2g4L2C4L6y4L204L2j4LyL4L2j4L2Y4LyL4L2m4L6S4L6y4L204L2W4LyL4L2i4L6f4L2C4L2m4LyL4L2C4L2F4L2y4L2C4LyL4L2R4L2C4L28IgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjQ1CisjLCBmdXp6eQorbXNnaWQgImZpbmQgZm9yIGRwa2cgLS1yZWN1cnNpdmUiCittc2dzdHIgIi0tcmVjdXJzaXZlIOC9guC9suC8i+C9keC9vOC9k+C8i+C9o+C9tOC8i+C9oOC9muC9vOC9o+C8i+C9k+C9suC8i+C9o+C9guC8i+C9o+C9uuC9k+C8i+C9oOC9kOC9luC8i+C9k+C9suC8i+C9o+C9tOC8i+C9oOC9kOC9tOC9puC8i+C9pOC9vOC9ouC8i+C9luC+seC9tOC9hOC8i+C9oeC9vOC9keC8jSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI2NgorbXNnaWQgImZhaWxlZCB0byBmZG9wZW4gZmluZCdzIHBpcGUiCittc2dzdHIgIuC9oOC9muC9vOC9o+C8i+C9k+C9suC9oOC9suC8i+C9ouC+kuC+seC9tOC9keC8i+C9keC9tOC9hOC8i+C9qOC9uuC9leC8i+C9jOC9suC8i+C9qOC9vOC8i+C9lOC9seC9k+C8i+C9oOC9luC9keC8i+C9k+C9suC8i+C9oOC9kOC9tOC9puC8i+C9pOC9vOC9ouC8i+C9luC+seC9tOC9hOC8i+C9oeC9vOC9keC8jSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3MgorbXNnaWQgImVycm9yIHJlYWRpbmcgZmluZCdzIHBpcGUiCittc2dzdHIgIuC9oOC9muC9vOC9o+C8i+C9k+C9suC9oOC9suC8i+C9ouC+kuC+seC9tOC9keC8i+C9keC9tOC9hOC8i+C9o+C+t+C9guC8i+C9k+C9suC9oOC9suC8i+C9oOC9m+C9vOC9o+C8i+C9luC8jSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3MworbXNnaWQgImVycm9yIGNsb3NpbmcgZmluZCdzIHBpcGUiCittc2dzdHIgIuC9oOC9muC9vOC9o+C8i+C9k+C9suC9oOC9suC8i+C9ouC+kuC+seC9tOC9keC8i+C9keC9tOC9hOC8i+C9geC8i+C9luC9puC+oeC9mOC8i+C9k+C9suC9oOC9suC8i+C9oOC9m+C9vOC9o+C8i+C9luC8jSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3NgorIywgYy1mb3JtYXQKK21zZ2lkICJmaW5kIGZvciAtLXJlY3Vyc2l2ZSByZXR1cm5lZCB1bmhhbmRsZWQgZXJyb3IgJWkiCittc2dzdHIgIi0tcmVjdXJzaXZlIOC9guC9suC8i+C9keC9vOC9k+C8i+C9o+C9tOC8i+C9oOC9muC9vOC9o+C8i+C9k+C9suC8i+C9guC9suC9puC8i+C9o+C9uuC9guC9puC8i+C9puC+kOC+seC9vOC9hOC8i+C9mOC8i+C9oOC9kOC9luC8i+C9lOC9oOC9suC8i+C9oOC9m+C9vOC9o+C8i+C9luC8iyAlaSDgvabgvrPgvaLgvIvgvaPgvbzgvYLgvIvgvaDgvZbgvZHgvIvgvZPgvbTgvYIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNzkKK21zZ2lkICJzZWFyY2hlZCwgYnV0IGZvdW5kIG5vIHBhY2thZ2VzIChmaWxlcyBtYXRjaGluZyAqLmRlYikiCittc2dzdHIgIuC9oOC9muC9vOC9o+C8i+C9nuC9suC9luC8i+C9oOC9luC9keC8i+C9oeC9vOC9keC8iyDgvZHgvbrgvIvgvaDgvZbgvZHgvZ3gvIvgvZHgvIvgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvYLgvIvgvZrgvbTgvIvgvaDgvZrgvbzgvaPgvIvgvZjgvIvgvaDgvZDgvbzgvZbgvIsoKi5kZWIg4L2Y4L2Q4L204L2T4LyL4L2Y4L2y4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2a4L204LyLKSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI5MAorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGF0IGxlYXN0IG9uZSBwYWNrYWdlIGFyY2hpdmUgZmlsZSBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyDgvaPgvbTgvIvgvYngvbTgvYTgvIvgvZjgvZDgvaDgvIvgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIvgvaHgvbLgvYLgvIvgvZjgvZvgvbzgvZHgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIvgvYDgvrHgvbLgvIvgvabgvpLgvrLgvbTgvZbgvIvgvaLgvp/gvYLgvabgvIvgvYLgvYXgvbLgvYLgvIvgvZHgvYLgvbzgvZTgvIvgvajgvbLgvZPgvI0iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzMjUgc3JjL2RpdmVydGNtZC5jOjc4IHNyYy9kaXZlcnRjbWQuYzoxMTgKKyM6IHNyYy9lbnF1aXJ5LmM6MTY2IHNyYy9lbnF1aXJ5LmM6Mjc5IHNyYy9lbnF1aXJ5LmM6NDQ5IHNyYy9lbnF1aXJ5LmM6NDUxCisjOiBzcmMvZW5xdWlyeS5jOjQ2NCBzcmMvbWFpbi5jOjY2IHNyYy9tYWluLmM6MTYzIHNyYy9tYWluLmM6MzE0CisjOiBzcmMvbWFpbi5jOjQ5MyBzcmMvcGFja2FnZXMuYzoyNTQgc3JjL3F1ZXJ5Y21kLmM6MjUyIHNyYy9xdWVyeWNtZC5jOjM1NQorIzogc3JjL3F1ZXJ5Y21kLmM6Mzk2IHNyYy9xdWVyeWNtZC5jOjQwNCBzcmMvcXVlcnljbWQuYzo0NDggc3JjL3F1ZXJ5Y21kLmM6NTE3CisjOiBzcmMvcXVlcnljbWQuYzo2MDYgc3JjL3F1ZXJ5Y21kLmM6NjUwIHNyYy9zZWxlY3QuYzo3OSBzcmMvc3RhdGNtZC5jOjY4CisjOiBzcmMvc3RhdGNtZC5jOjk4IHNyYy90cmlnY21kLmM6NTggc3JjL3RyaWdjbWQuYzo5MCBkcGtnLWRlYi9idWlsZC5jOjQ0MQorIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIxNyBkcGtnLWRlYi9leHRyYWN0LmM6MjUwIGRwa2ctZGViL2luZm8uYzoyMDMKKyM6IGRwa2ctZGViL2luZm8uYzoyNjUgZHBrZy1kZWIvbWFpbi5jOjYwIGRwa2ctZGViL21haW4uYzoxMjYKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjI1NyBkcGtnLXNwbGl0L21haW4uYzo1NCBkcGtnLXNwbGl0L21haW4uYzo5OAorIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE0NCBkcGtnLXNwbGl0L3F1ZXVlLmM6MjgwCittc2dpZCAiPHN0YW5kYXJkIG91dHB1dD4iCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTMyNiBzcmMvcGFja2FnZXMuYzoyNTUgc3JjL3F1ZXJ5Y21kLmM6MjUzCisjOiBzcmMvcXVlcnljbWQuYzozNTMgc3JjL3F1ZXJ5Y21kLmM6NDU0IHNyYy9xdWVyeWNtZC5jOjUxOCBzcmMvc2VsZWN0LmM6ODAKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjE2OSBkcGtnLXNwbGl0L3F1ZXVlLmM6MjE4Cittc2dpZCAiPHN0YW5kYXJkIGVycm9yPiIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzY3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJTZWxlY3RpbmcgcHJldmlvdXNseSBkZXNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dpZCAiU2VsZWN0aW5nIHByZXZpb3VzbHkgdW5zZWxlY3RlZCBwYWNrYWdlICVzLlxuIgorbXNnc3RyICLgvafgvbrgvIvgvZjgvIvgvabgvbrgvaPgvIvgvaDgvZDgvbTgvIvgvZjgvIvgvaDgvZbgvZHgvIvgvZbgvaDgvbLgvIvgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIsgJXMg4L2m4L264L2j4LyL4L2g4L2Q4L204LyL4L2g4L2W4L2R4LyL4L2R4L284LyNXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzNzEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIlNraXBwaW5nIGRlc2VsZWN0ZWQgcGFja2FnZSAlcy5cbiIKK21zZ2lkICJTa2lwcGluZyB1bnNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dzdHIgIuC9puC9uuC9o+C8i+C9oOC9kOC9tOC8i+C9mOC8i+C9oOC9luC9keC8i+C9luC9oOC9suC8i+C9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8iyAlcyDgvYLgvbzgvZjgvIvgvaDgvYLgvrHgvbzgvIvgvZHgvbzgvI1cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTM4NworIywgYy1mb3JtYXQKK21zZ2lkICJWZXJzaW9uICUuMjUwcyBvZiAlLjI1MHMgYWxyZWFkeSBpbnN0YWxsZWQsIHNraXBwaW5nLlxuIgorbXNnc3RyICIlLjI1MHMg4L2C4L2y4LyL4L2Q4L284L2T4LyL4L2i4L2y4L2Y4LyLICUuMjUwcyDgvafgvbrgvIvgvZjgvIvgvaPgvabgvIvgvaLgvYTgvIvgvaHgvbzgvZHgvIsg4L2C4L284L2Y4LyL4L2g4L2C4L6x4L284LyL4L2R4L284LyNXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzOTcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImRvd25ncmFkaW5nICUuMjUwcyBmcm9tICUuMjUwcyB0byAlLjI1MHMuIgorbXNnc3RyICIlcyAtIOC9ieC9uuC9k+C8i+C9luC9ouC+oeC8izogICUuMjUwcyDgvaDgvZHgvbLgvIsgICUuMjUwcyDgvaPgvabgvIsgJS4yNTBzIOC9o+C9tOC8i+C9mOC9ouC8i+C9puC+kOC+seC9uuC9keC8i+C9oOC9luC9keC8i+C9keC9vOC8jVxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxNDAyCisjLCBjLWZvcm1hdAorbXNnaWQgIldpbGwgbm90IGRvd25ncmFkZSAlLjI1MHMgZnJvbSB2ZXJzaW9uICUuMjUwcyB0byAlLjI1MHMsIHNraXBwaW5nLlxuIgorbXNnc3RyICIlLjI1MHMg4L2g4L2R4L2y4LyL4L2Q4L284L2T4LyL4L2i4L2y4L2Y4LyLICUuMjUwcyDgvaPgvabgvIsgJS4yNTBzIOC9o+C9tOC8i+C9mOC9ouC8i+C9puC+kOC+seC9uuC9keC8i+C9mOC9suC8i+C9oOC9luC9keC8iyDgvYLgvbzgvZjgvIvgvaDgvYLgvrHgvbzgvIvgvZHgvbzgvI1cbiIKKworIzogc3JjL2NsZWFudXAuYzo4NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidW5hYmxlIHRvIHJlbW92ZSBuZXdseS1pbnN0YWxsZWQgdmVyc2lvbiBvZiBgJS4yNTBzJyB0byBhbGxvdyByZWluc3RhbGxhdGlvbiAiCisib2YgYmFja3VwIGNvcHkiCittc2dzdHIgIiIKKyLgvYLgvabgvaLgvZTgvIvgvabgvqbgvbrgvIvgvYLgvZ7gvbLgvIvgvZbgvZngvbTgvYLgvabgvIvgvaDgvZbgvZHgvIvgvaHgvbzgvZHgvIvgvZTgvaDgvbLgvIsgYCUuMjUwcycg4L2Q4L284L2T4LyL4L2i4L2y4L2Y4LyL4L2g4L2R4L2y4LyL4L2i4L6S4L6x4L2W4LyL4L2Q4L2C4LyL4L2g4L2R4L6y4LyL4L2W4L2k4L204L2m4LyL4L2A4L6x4L2y4LyL4L2j4L284L2C4LyL4L2C4L2e4L2y4LyL4L2W4L2Z4L204L2C4L2m4LyL4L2g4L2W4L2R4LyL4L2T4L2y4LyLIgorIuC9ouC+qeC8i+C9luC9puC+kOC+suC9keC8i+C9guC9j+C9hOC8i+C9mOC9suC8i+C9muC9tOC9guC9puC8jSIKKworIzogc3JjL2NsZWFudXAuYzo5MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVzdG9yZSBiYWNrdXAgdmVyc2lvbiBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiYCUuMjUwcycg4L2C4L2y4LyL4L2i4L6S4L6x4L2W4LyL4L2Q4L2C4LyL4L2Q4L284L2T4LyL4L2i4L2y4L2Y4LyL4L2m4L284L2i4LyL4L2G4L204L2R4LyL4L2g4L2W4L2R4LyL4L2Y4L2y4LyL4L2a4L204L2C4L2m4LyNIgorCisjOiBzcmMvY2xlYW51cC5jOjk3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gcmVzdG9yZSBiYWNrdXAgdmVyc2lvbiBvZiBgJS4yNTBzJyIKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIGJhY2t1cCBjb3B5IG9mICclLjI1MHMnIgorbXNnc3RyICJgJS4yNTBzJyDgvYLgvbLgvIvgvaLgvpLgvrHgvZbgvIvgvZDgvYLgvIvgvZDgvbzgvZPgvIvgvaLgvbLgvZjgvIvgvabgvbzgvaLgvIvgvYbgvbTgvZHgvIvgvaDgvZbgvZHgvIvgvZjgvbLgvIvgvZrgvbTgvYLgvabgvI0iCisKKyM6IHNyYy9jbGVhbnVwLmM6MTAxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgbmV3bHktaW5zdGFsbGVkIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dzdHIgImAlLjI1MHMnIOC9guC9suC8i+C9guC9puC9ouC9lOC8i+C9puC+puC9uuC8i+C9guC9nuC9suC8i+C9luC9meC9tOC9guC9puC8i+C9oOC9luC9keC8i+C9oOC9luC9keC8i+C9luC9oOC9suC8i+C9kOC9vOC9k+C8i+C9ouC9suC9mOC8i+C9ouC+qeC8i+C9luC9puC+kOC+suC9keC8i+C9guC9j+C9hOC8i+C9mOC9suC8i+C9muC9tOC9guC9puC8jSIKKworIzogc3JjL2NsZWFudXAuYzoxMDgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBuZXdseS1leHRyYWN0ZWQgdmVyc2lvbiBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiYCUuMjUwcycg4L2C4L2y4LyL4L2Q4L284L2T4LyL4L2i4L2y4L2Y4LyL4L2C4L2m4L2i4L2U4LyL4L2m4L6m4L264LyL4L2V4L6x4L2y4L2i4LyL4L2Q4L284L2T4LyL4L2g4L2W4L2R4LyL4L2g4L2W4L2R4LyL4L2W4L2g4L2y4LyL4L2Q4L284L2T4LyL4L2i4L2y4L2Y4LyL4L2i4L6p4LyL4L2W4L2m4L6Q4L6y4L2R4LyL4L2C4L2P4L2E4LyL4L2Y4L2y4LyL4L2a4L204L2C4L2m4LyNIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTA0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gc3RhdCBuZXcgZGlzdCBjb25mZmlsZSBgJS4yNTBzJyIKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBuZXcgZGlzdHJpYnV0ZWQgY29uZmZpbGUgJyUuMjUwcyciCittc2dzdHIgIuC9luC9guC9vOC8i+C9luC9gOC+suC9mOC8i+C9ouC9suC9mOC8i+C9puC+kuC+suC9suC9guC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8iyBgJS4yNTBzJyDgvabgvbLgvIvgvYrgvbrgvYrgvbLgvIvgvaDgvZbgvZHgvIvgvZjgvIvgvZrgvbTgvYLgvabgvI0iCisKKyM6IHNyYy9jb25maWd1cmUuYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgY3VycmVudCBpbnN0YWxsZWQgY29uZmZpbGUgYCUuMjUwcyciCittc2dzdHIgIuC9keC8i+C9o+C+n+C9vOC8i+C9guC9nuC9suC8i+C9luC9meC9tOC9guC9puC8i+C9oOC9luC9keC8i+C9oeC9vOC9keC8i+C9lOC9oOC9suC8i+C9ouC9suC9mOC8i+C9puC+kuC+suC9suC9guC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8iyBgJS4yNTBzJyDgvabgvbLgvIvgvYrgvbrgvYrgvbLgvIvgvaDgvZbgvZHgvIvgvZjgvIvgvZrgvbTgvYLgvabgvI0iCisKKyM6IHNyYy9jb25maWd1cmUuYzoxMjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIkNvbmZpZ3VyYXRpb24gZmlsZSBgJXMnLCBkb2VzIG5vdCBleGlzdCBvbiBzeXN0ZW0uXG4iCisiSW5zdGFsbGluZyBuZXcgY29uZmlnIGZpbGUgYXMgeW91IHJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiIgorIlxuIgorIuC9ouC9suC9mOC8i+C9puC+kuC+suC9suC9guC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8iyBgJXMnIOC9ouC9suC9mOC8i+C9o+C9tOC9guC9puC8i+C9guC9tOC8i+C9o+C9tOC8i+C9mOC9uuC9keC8jVxuIgorIuC9geC+seC9vOC9keC8i+C9gOC+seC9suC9puC8i+C9nuC9tOC8i+C9luC8i+C9oOC9luC9keC8i+C9keC9vOC8i+C9luC9n+C9tOC9mOC8i+C9puC+puC9uuC8i+C9ouC9suC9mOC8i+C9puC+kuC+suC9suC9guC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9guC9puC9ouC9lOC8i+C9guC9nuC9suC8i+C9luC9meC9tOC9guC9puC8i+C9oOC9luC9keC8i+C9keC9vOC8jVxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTY4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIHJlbW92ZSBvbGQgYmFja3VwICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiZHBrZzogJXM6IOC9ieC9uuC9k+C8i+C9luC9ouC+oeC8iyAtICBgJS4yNTBzJyDgvaLgvpLgvrHgvZbgvIvgvZDgvYLgvIvgvaLgvpngvbLgvYTgvZjgvIvgvaLgvqngvIvgvZbgvabgvpDgvrLgvZHgvIvgvYLgvY/gvYTgvIvgvZPgvbLgvIvgvaDgvZDgvbTgvabgvIvgvaTgvbzgvaLgvIvgvZbgvrHgvbTgvYTgvIvgvaHgvbzgvZHgvIs6ICVzXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzoxNzYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVuYW1lICclLjI1MHMnIHRvICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiDgvYngvbrgvZPgvIvgvZbgvaLgvqHgvIsgLSAgYCUuMjUwcycg4L2g4L2R4L2y4LyLIGAlLjI1MHMnIOC9o+C9tOC8i+C9luC9puC+kOC+seC9ouC8i+C9mOC9suC9hOC8i+C9luC9j+C9guC9puC8i+C9k+C9suC8i+C9oOC9kOC9tOC9puC8i+C9pOC9vOC9ouC8i+C9luC+seC9tOC9hOC8i+C9oeC9vOC9keC8izogJXNcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE4MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW1vdmUgJyUuMjUwcyc6ICVzIgorbXNnc3RyICIlczrgvaPgvYLgvIvgvaPgvbrgvZPgvIvgvaDgvZDgvZbgvIvgvZPgvbLgvIvgvaDgvZDgvbTgvabgvIvgvaTgvbzgvaLgvIvgvZbgvrHgvbTgvYTgvIvgvaHgvbzgvZHgvZQgICclcyAlcyciCisKKyM6IHNyYy9jb25maWd1cmUuYzoxODgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlIG9sZCBkaXN0cmlidXRlZCB2ZXJzaW9uICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiDgvYngvbrgvZPgvIvgvZbgvaLgvqHgvIsgLSDgvZbgvYLgvbzgvIvgvZbgvYDgvrLgvZjgvIvgvZDgvbzgvZPgvIvgvaLgvbLgvZjgvIsgYCUuMjUwcycg4L2i4L6Z4L2y4L2E4L2Y4LyL4L2i4L6p4LyL4L2W4L2m4L6Q4L6y4L2R4LyL4L2C4L2P4L2E4LyL4L2T4L2y4LyL4L2g4L2Q4L204L2m4LyL4L2k4L284L2i4LyL4L2W4L6x4L204L2E4LyL4L2h4L284L2R4LyLOiAlc1xuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTkyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIHJlbW92ZSAnJS4yNTBzJyAoYmVmb3JlIG92ZXJ3cml0ZSk6ICVzIgorbXNnc3RyICIiCisiZHBrZzogJXM6IOC9ieC9uuC9k+C8i+C9luC9ouC+oeC8iyAtICBgJS4yNTBzJyAo4L2m4L6z4L2i4LyL4L2m4L6y4L204L2E4LyL4L2Y4LyL4L2g4L2W4L2R4LyL4L2W4L2g4L2y4LyL4L2n4L264LyL4L2Y4LyLKeC9ouC+qeC8i+C9luC9puC+kOC+suC9keC8i+C9guC9j+C9hOC8i+C9k+C9suC8i+C9oOC9kOC9tOC9puC8i+C9pOC9vOC9ouC8i+C9luC+seC9tOC9hOC8i+C9oeC9vOC9keC8izogIgorIiVzXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzoxOTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gbGluayAnJS4yNTBzJyB0byAnJS4yNTBzJzogJXMiCittc2dzdHIgIiIKKyJkcGtnOiAlczog4L2J4L264L2T4LyL4L2W4L2i4L6h4LyLIC0gIGAlLjI1MHMnIOC9oOC9keC9suC8iyBgJS4yNTBzJyDgvaPgvbTgvIvgvaDgvZbgvrLgvbrgvaPgvIvgvZjgvZDgvbTgvZHgvIvgvaDgvZbgvZHgvIvgvZPgvbLgvIvgvaDgvZDgvbTgvabgvIvgvaTgvbzgvaLgvIvgvZbgvrHgvbTgvYTgvIvgvaHgvbzgvZHgvIs6ICVzXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzoyMDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW5zdGFsbGluZyBuZXcgdmVyc2lvbiBvZiBjb25maWcgZmlsZSAlcyAuLi5cbiIKK21zZ3N0ciAi4L2i4L2y4L2Y4LyL4L2m4L6S4L6y4L2y4L2C4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyLICVzIOC9guC9suC8i+C9kOC9vOC9k+C8i+C9ouC9suC9mOC8i+C9guC9puC9ouC9lOC8i+C9guC9nuC9suC8i+C9luC9meC9tOC9guC9puC8i+C9oOC9luC9keC8i+C9keC9vOC8iy4uLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjA2IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo1NDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgYCUuMjUwcycgYXMgYCUuMjUwcyciCittc2dzdHIgImAlLjI1MHMnIOC9oOC9keC9suC8iyBgJS4yNTBzJyDgvabgvqbgvbrgvIvgvYLgvZ7gvbLgvIvgvZbgvZngvbTgvYLgvabgvIvgvaDgvZbgvZHgvIvgvZjgvIvgvZrgvbTgvYLgvabgvI0iCisKKyM6IHNyYy9jb25maWd1cmUuYzoyNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gcGFja2FnZSBuYW1lZCBgJXMnIGlzIGluc3RhbGxlZCwgY2Fubm90IGNvbmZpZ3VyZSIKK21zZ3N0ciAiYCVzJyDgvabgvqbgvbrgvIvgvZjgvbLgvYTgvIvgvZbgvY/gvYLgvabgvIvgvaHgvbzgvZHgvIvgvZTgvaDgvbLgvIvgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIvgvYLgvIvgvZPgvbLgvIvgvaHgvYTgvIvgvYLgvZ7gvbLgvIvgvZbgvZngvbTgvYLgvabgvIvgvZjgvIvgvaDgvZbgvZHgvIsg4L2i4L2y4L2Y4LyL4L2m4L6S4L6y4L2y4L2C4LyL4L2g4L2W4L2R4LyL4L2Y4L2y4LyL4L2a4L204L2C4L2m4LyNIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjYwCisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgJS4yNTBzIGlzIGFscmVhZHkgaW5zdGFsbGVkIGFuZCBjb25maWd1cmVkIgorbXNnc3RyICLgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIsgJS4yNTBzIOC9oOC9keC9suC8i+C9p+C9uuC8i+C9mOC8i+C9o+C9puC8i+C9guC9nuC9suC8i+C9luC9meC9tOC9guC9puC8i+C9keC9hOC8i+C9ouC9suC9mOC8i+C9puC+kuC+suC9suC9guC8i+C9oOC9luC9keC8i+C9oeC9vOC9keC9lOC8i+C9qOC9suC9k+C8jSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI2MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisicGFja2FnZSAlLjI1MHMgaXMgbm90IHJlYWR5IGZvciBjb25maWd1cmF0aW9uXG4iCisiIGNhbm5vdCBjb25maWd1cmUgKGN1cnJlbnQgc3RhdHVzIGAlLjI1MHMnKSIKK21zZ3N0ciAiIgorIuC9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8iyAlLjI1MHMg4L2g4L2R4L2y4LyL4L2i4L2y4L2Y4LyL4L2m4L6S4L6y4L2y4L2C4LyL4L2C4L2y4LyL4L2R4L284L2T4LyL4L2j4L204LyL4L2C4L6y4LyL4L2m4L6S4L6y4L2y4L2C4LyL4L2Y4L264L2R4LyNXG4iCisiIOC9ouC9suC9mOC8i+C9puC+kuC+suC9suC9guC8i+C9oOC9luC9keC8i+C9mOC9suC8i+C9muC9tOC9guC9puC8iyjgvZHgvIvgvaPgvp/gvaDgvbLgvIvgvYLgvZPgvabgvIvgvZrgvZHgvIsgYCUuMjUwcycpIgorCisjOiBzcmMvY29uZmlndXJlLmM6Mjk0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBkZXBlbmRlbmN5IHByb2JsZW1zIHByZXZlbnQgY29uZmlndXJhdGlvbiBvZiAlczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6IOC9ouC+n+C9uuC9k+C8i+C9oOC9luC+suC9uuC9o+C8i+C9guC+seC9suC8i+C9keC9gOC9oOC8i+C9hOC9o+C8i+C9guC+seC9suC9puC8iyAlcyDgvYLgvbLgvIvgvaLgvbLgvZjgvIvgvabgvpLgvrLgvbLgvYLgvIvgvabgvpTgvbzgvZPgvIvgvZbgvYDgvYLgvIvgvaDgvZbgvZHgvZ3gvIvgvajgvbLgvZPgvI06XG4iCisiJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoyOTcKK21zZ2lkICJkZXBlbmRlbmN5IHByb2JsZW1zIC0gbGVhdmluZyB1bmNvbmZpZ3VyZWQiCittc2dzdHIgIuC9ouC+n+C9uuC9k+C8i+C9oOC9luC+suC9uuC9o+C8i+C9guC+seC9suC8i+C9keC9gOC9oOC8i+C9hOC9o+C8i+C9muC9tOC8iyAtIOC9ouC9suC9mOC8i+C9puC+kuC+suC9suC9guC8i+C9mOC8i+C9oOC9luC9keC8i+C9luC9ouC8i+C9luC9nuC9guC8i+C9keC9vOC8jSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjMwMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogJXM6IGRlcGVuZGVuY3kgcHJvYmxlbXMsIGJ1dCBjb25maWd1cmluZyBhbnl3YXkgYXMgeW91IHJlcXVlc3RlZDpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiDgvaLgvp/gvbrgvZPgvIvgvaDgvZbgvrLgvbrgvaPgvIvgvYLgvrHgvbLgvIvgvZHgvYDgvaDgvIvgvYTgvaPgvIvgvZrgvbTgvIsg4L2R4L264LyL4L2g4L2W4L2R4L2d4LyL4L2R4LyLIOC9geC+seC9vOC9keC8i+C9gOC+seC9suC9puC8i+C9nuC9tOC8i+C9luC8i+C9oOC9luC9keC8i+C9keC9vOC8i+C9luC9n+C9tOC9mOC8i+C9puC+puC9uuC8i+C9ouC9suC9mOC8i+C9puC+kuC+suC9suC9guC8i+C9oOC9luC9keC8i+C9keC9vOC8izpcbiIKKyIlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjMwOQorbXNnaWQgIiIKKyJQYWNrYWdlIGlzIGluIGEgdmVyeSBiYWQgaW5jb25zaXN0ZW50IHN0YXRlIC0geW91IHNob3VsZFxuIgorIiByZWluc3RhbGwgaXQgYmVmb3JlIGF0dGVtcHRpbmcgY29uZmlndXJhdGlvbi4iCittc2dzdHIgIiIKKyLgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIvgvaDgvZHgvbLgvIvgvYLgvZPgvZjgvIvgvZjgvbrgvZHgvIvgvabgvIvgvZjgvbrgvZHgvIvgvaLgvbLgvZjgvIvgvZjgvZDgvbTgvZPgvIvgvZjgvbrgvZHgvIvgvZTgvaDgvbLgvIvgvYLgvZPgvabgvIvgvaPgvbTgvYLgvabgvIvgvZPgvYTgvIvgvaPgvbTgvIvgvajgvbLgvZPgvIvgvZjgvabgvIsgLSDgvYHgvrHgvbzgvZHgvIvgvYDgvrHgvbLgvabgvItcbiIKKyIg4L2i4L2y4L2Y4LyL4L2m4L6S4L6y4L2y4L2C4LyL4L2g4L2W4L2R4LyL4L2T4L2y4L2g4L2y4LyL4L2R4L2U4L2g4LyL4L2Y4LyL4L2W4L2F4L2Y4LyL4L2U4L2g4L2y4LyL4L2n4L264LyL4L2Y4LyL4L2j4L284L2C4LyL4L2g4L2C4L284LyL4L2W4L2Z4L204L2C4L2m4LyL4L2R4L2C4L28IgorCisjOiBzcmMvY29uZmlndXJlLmM6MzEyCisjLCBjLWZvcm1hdAorbXNnaWQgIlNldHRpbmcgdXAgJXMgKCVzKSAuLi5cbiIKK21zZ3N0ciAiJXMgKCVzKSDgvYLgvZ7gvbLgvIvgvabgvpLgvrLgvbLgvYLgvIvgvaDgvZbgvZHgvIvgvZHgvbzgvIsuLi5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjM5NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiB1bmFibGUgdG8gc3RhdCBjb25maWcgZmlsZSAnJXMnXG4iCisiICg9ICclcycpOiAlcyIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiDgvYngvbrgvZPgvIvgvZbgvaLgvqHgvIsgLSDgvaLgvbLgvZjgvIvgvabgvpLgvrLgvbLgvYLgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIsgYCVzJyDgvabgvbLgvIvgvYrgvbrgvYrgvbLgvIvgvaDgvZbgvZHgvIvgvZjgvIvgvZrgvbTgvYLgvabgvI1cbiIKKyIgKD0gYCVzJyk6ICVzXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo0MDkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogY29uZmlnIGZpbGUgJyVzJyBpcyBhIGNpcmN1bGFyIGxpbmtcbiIKKyIgKD0gJyVzJykiCittc2dzdHIgIiIKKyJkcGtnOiAlczog4L2J4L264L2T4LyL4L2W4L2i4L6h4LyLIC0g4L2i4L2y4L2Y4LyL4L2m4L6S4L6y4L2y4L2C4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyLIGAlcycg4L2g4L2R4L2y4LyL4L2Q4L2R4LyL4L2m4L6S4L284L2i4L2Y4LyL4L2g4L2W4L6y4L264L2j4LyL4L2j4L2Y4LyL4L2F4L2y4L2C4LyL4L2o4L2y4L2T4LyLXG4iCisiICg9IGAlcycpXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo0MTgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogdW5hYmxlIHRvIHJlYWRsaW5rIGNvbmZmaWxlICclcydcbiIKKyIgKD0gJyVzJyk6ICVzIgorbXNnc3RyICIiCisiZHBrZzogJXM6IOC9ieC9uuC9k+C8i+C9luC9ouC+oeC8iyAtIOC9ouC9suC9mOC8i+C9puC+kuC+suC9suC9guC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8iyBgJXMnIOC9o+C+t+C9guC8i+C9k+C9suC9oOC9suC8i+C9oOC9luC+suC9uuC9o+C8i+C9o+C9mOC8i+C9n+C9luC9vOC8i+C9mOC8i+C9muC9tOC9guC9puC8jVxuIgorIiAoPSBgJXMnKTogJXNcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQ0NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBjb25mZmlsZSAnJS4yNTBzJyByZXNvbHZlcyB0byBkZWdlbmVyYXRlIGZpbGVuYW1lXG4iCisiICgnJXMnIGlzIGEgc3ltbGluayB0byAnJXMnKSIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiDgvYngvbrgvZPgvIvgvZbgvaLgvqHgvIsgLSDgvaLgvbLgvZjgvIvgvabgvpLgvrLgvbLgvYLgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIsgYCUuMjUwcycg4L2C4L2y4L2m4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2Y4L2y4L2E4LyL4L2W4L2f4L284LyL4L2W4L2P4L284L2T4LyL4L2Y4L2y4LyL4L2g4L2W4L2R4LyL4L2T4L2y4LyL4L2j4L204LyL4L2Y4L284L2m4LyL4L2Y4L2Q4L204L2T4LyLIgorIuC9oOC9luC9keC9neC8i+C9qOC9suC9k+C8jVxuIgorIiAoYCVzJyDgvaDgvZHgvbLgvIsgIGAlcycg4L2j4L204LyL4L2W4L2i4L6h4LyL4L2Y4L2a4L284L2T4LyL4L2g4L2W4L6y4L264L2j4LyL4L2j4L2Y4LyL4L2o4L2y4L2T4LyLKVxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDYwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogY29uZmZpbGUgJyUuMjUwcycgaXMgbm90IGEgcGxhaW4gZmlsZSBvciBzeW1saW5rICg9ICclcycpIgorbXNnc3RyICIiCisiZHBrZzogJXM6IOC9ieC9uuC9k+C8i+C9luC9ouC+oeC8iyAtIOC9ouC9suC9mOC8i+C9puC+kuC+suC9suC9guC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8iyBgJS4yNTBzJyDgvaDgvZHgvbLgvIvgvYngvYLgvIvgvaLgvpDgvrHgvYTgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIvgvaHgvYTgvIvgvZPgvIvgvZbgvaLgvqHgvIvgvZHgvbzgvZPgvIsgKD0gYCVzJykiCisi4L2o4L2y4L2T4LyNXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo0ODYKK21zZ2lkICJtZDVoYXNoIgorbXNnc3RyICLgvajgvbrgvZjgvIvgvYzgvbLgvIvgvKXgvZHgvrLgvq3gvIvgvaLgvp/gvYLgvabgvI0iCisKKyM6IHNyYy9jb25maWd1cmUuYzo0OTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiB1bmFibGUgdG8gb3BlbiBjb25mZmlsZSAlcyBmb3IgaGFzaDogJXMiCittc2dzdHIgImRwa2c6ICVzOiDgvYngvbrgvZPgvIvgvZbgvaLgvqHgvIsgLSDgvZHgvrLgvq3gvIvgvaLgvp/gvYLgvabgvIsg4L2A4L6x4L2y4LyL4L2R4L284L2T4LyL4L2j4L204LyL4L2i4L2y4L2Y4LyL4L2m4L6S4L6y4L2y4L2C4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyLICVzIOC9geC8i+C9leC+seC9uuC8i+C9mOC8i+C9muC9tOC9guC9pjogJXNcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjUyMiBzcmMvY29uZmlndXJlLmM6NTI2Cittc2dpZCAiY29uZmZpbGUgZGlmZmVyZW5jZSB2aXN1YWxpemVyIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo1NDMKK21zZ2lkICJUeXBlIGBleGl0JyB3aGVuIHlvdSdyZSBkb25lLlxuIgorbXNnc3RyICLgvYHgvrHgvbzgvZHgvIvgvaDgvZbgvZHgvIvgvZrgvaLgvIvgvZbgvaDgvbLgvIvgvabgvpDgvZbgvabgvIsgYGV4aXQnIOC9oeC9suC9guC8i+C9keC9lOC9ouC8i+C9ouC+kOC+seC9luC9puC8jVxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NTUyIHNyYy9jb25maWd1cmUuYzo1NTYKK21zZ2lkICJjb25mZmlsZSBzaGVsbCIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjAyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJDb25maWd1cmF0aW9uIGZpbGUgYCVzJyIKK21zZ3N0ciAiIgorIlxuIgorIuC9ouC9suC9mOC8i+C9puC+kuC+suC9suC9guC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8iyBgJXMnIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjA0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAoYWN0dWFsbHkgYCVzJykiCittc2dzdHIgIiAo4L2E4L284LyL4L2Y4LyL4L2g4L2W4L2R4LyL4L2W4LyL4L2F4L2y4L2T4LyLIGAlcycpIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjA4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgPT0+IEZpbGUgb24gc3lzdGVtIGNyZWF0ZWQgYnkgeW91IG9yIGJ5IGEgc2NyaXB0LlxuIgorIiA9PT4gRmlsZSBhbHNvIGluIHBhY2thZ2UgcHJvdmlkZWQgYnkgcGFja2FnZSBtYWludGFpbmVyLlxuIgorbXNnc3RyICIiCisiXG4iCisiID09PiDgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIvgvYLgvbTgvaDgvbLgvIvgvaLgvbLgvZjgvIvgvaPgvbTgvYLgvabgvIvgvaDgvZHgvbLgvIvgvYHgvrHgvbzgvZHgvIvgvYDgvrHgvbLgvabgvIvgvaHgvYTgvIvgvZPgvIvgvaHgvbLgvYLgvIvgvZrgvbTgvYLgvabgvIvgvYDgvrHgvbLgvabgvIvgvYLgvabgvaLgvIvgvZbgvabgvpDgvrLgvbTgvZPgvIvgvaDgvZbgvZHgvIvgvaHgvbzgvZHgvI1cbiIKKyIgPT0+IOC9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9oeC9hOC8i+C9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8i+C9oOC9m+C9suC9k+C8i+C9puC+kOC+seC9vOC9hOC8i+C9lOC8i+C9guC9suC9puC8i+C9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8i+C9luC+seC9suC9k+C8i+C9oeC9vOC9keC9lOC8jVxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjEzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgICAgIE5vdCBtb2RpZmllZCBzaW5jZSBpbnN0YWxsYXRpb24uXG4iCittc2dzdHIgIiIKKyJcbiIKKyIgICAgIOC9guC9nuC9suC8i+C9luC9meC9tOC9guC9puC8i+C9oOC9luC9keC8i+C9nuC9suC9k+C9mOC8i+C9o+C9puC8i+C9o+C9uuC9guC9puC8i+C9luC9heC9vOC9puC8i+C9mOC8i+C9oOC9luC9keC8i+C9luC9puC8jVxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjE1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgPT0+IE1vZGlmaWVkIChieSB5b3Ugb3IgYnkgYSBzY3JpcHQpIHNpbmNlIGluc3RhbGxhdGlvbi5cbiIKK21zZ3N0ciAiIgorIlxuIgorIiA9PT4gKOC9geC+seC9vOC9keC8i+C9gOC+seC9suC9puC8i+C9oeC9hOC8i+C9k+C8i+C9oeC9suC9guC8i+C9muC9tOC9guC9puC8i+C9gOC+seC9suC9puC8iyngvYLgvZ7gvbLgvIvgvZbgvZngvbTgvYLgvabgvIvgvabgvpDgvZbgvabgvIvgvaPgvabgvIvgvaPgvbrgvYLgvabgvIvgvZbgvYXgvbzgvabgvIvgvaDgvZbgvZHgvIvgvaHgvbzgvZHgvI1cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYxNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiID09PiBEZWxldGVkIChieSB5b3Ugb3IgYnkgYSBzY3JpcHQpIHNpbmNlIGluc3RhbGxhdGlvbi5cbiIKK21zZ3N0ciAiIgorIlxuIgorIiA9PT4gKOC9geC+seC9vOC9keC8i+C9gOC+seC9suC9puC8i+C9oeC9hOC8i+C9k+C8i+C9oeC9suC9guC8i+C9muC9tOC9guC9puC8i+C9guC9heC9suC9guC8i+C9guC9suC9puC8iyngvYLgvZ7gvbLgvIvgvZbgvZngvbTgvYLgvabgvIvgvabgvpDgvZbgvabgvIvgvaPgvabgvIvgvZbgvY/gvbzgvZPgvIvgvYLgvY/gvYTgvIvgvaHgvbzgvZHgvZTgvI1cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYxOQorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IFBhY2thZ2UgZGlzdHJpYnV0b3IgaGFzIHNoaXBwZWQgYW4gdXBkYXRlZCB2ZXJzaW9uLlxuIgorbXNnc3RyICIgPT0+IOC9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8i+C9luC9guC9vOC8i+C9oOC9guC+suC9uuC9mOC8i+C9lOC8i+C9guC9suC9puC8i+C9keC9tOC9puC8i+C9mOC9kOC9tOC9k+C8i+C9luC9n+C9vOC8i+C9oeC9vOC9keC8i+C9lOC9oOC9suC8i+C9kOC9vOC9k+C8i+C9ouC9suC9mOC8i+C9heC9suC9guC8i+C9puC+kOC+seC9uuC9o+C8i+C9oOC9keC+suC9uuC9k+C8i+C9oOC9luC9keC8i+C9k+C9tOC9glxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjIwCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgICAgVmVyc2lvbiBpbiBwYWNrYWdlIGlzIHRoZSBzYW1lIGFzIGF0IGxhc3QgaW5zdGFsbGF0aW9uLlxuIgorbXNnc3RyICIgICAgIOC9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8i+C9k+C9hOC8i+C9guC9suC8i+C9kOC9vOC9k+C8i+C9ouC9suC9mOC8i+C9oOC9keC9suC8i+C9mOC9h+C9tOC9guC8i+C9o+C9tOC8i+C9guC9nuC9suC8i+C9luC9meC9tOC9guC9puC8i+C9oOC9luC9keC8i+C9oeC9vOC9keC8i+C9mOC9suC8i+C9keC9hOC8i+C9guC9heC9suC9guC8i+C9lOC8i+C9qOC9suC9k+C8jVxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjI4CisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gVXNpbmcgbmV3IGZpbGUgYXMgeW91IHJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiID09PiDgvYHgvrHgvbzgvZHgvIvgvYDgvrHgvbLgvIvgvZ7gvbTgvIvgvZbgvIvgvaDgvZbgvZHgvIvgvZHgvbzgvIvgvZbgvZ/gvbTgvZjgvIvgvabgvqbgvbrgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIvgvYLgvabgvaLgvZTgvIvgvaPgvYLgvIvgvaPgvbrgvZPgvIvgvaDgvZDgvZbgvIvgvZHgvbzgvI1cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYzMgorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IFVzaW5nIGN1cnJlbnQgb2xkIGZpbGUgYXMgeW91IHJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiID09PiDgvYHgvrHgvbzgvZHgvIvgvYDgvrHgvbLgvIvgvZ7gvbTgvIvgvZbgvIvgvaDgvZbgvZHgvIvgvZHgvbzgvIvgvZbgvZ/gvbTgvZjgvIvgvabgvqbgvbrgvIsg4L2R4LyL4L2j4L6f4L284L2g4L2y4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2i4L6Z4L2y4L2E4L2Y4LyL4L2j4L2C4LyL4L2j4L264L2T4LyL4L2g4L2Q4L2W4LyL4L2R4L284LyNXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBLZWVwaW5nIG9sZCBjb25maWcgZmlsZSBhcyBkZWZhdWx0LlxuIgorbXNnc3RyICIgPT0+IOC9ouC9suC9mOC8i+C9puC+kuC+suC9suC9guC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9ouC+meC9suC9hOC9mOC8i+C9oOC9keC9suC8i+C9puC+lOC9vOC9k+C8i+C9puC+kuC+suC9suC9guC8i+C9puC+puC9uuC8i+C9luC9nuC9guC8i+C9keC9vOC8jVxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gVXNpbmcgbmV3IGNvbmZpZyBmaWxlIGFzIGRlZmF1bHQuXG4iCittc2dzdHIgIiA9PT4g4L2i4L2y4L2Y4LyL4L2m4L6S4L6y4L2y4L2C4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2g4L2R4L2y4LyL4L2m4L6U4L284L2T4LyL4L2m4L6S4L6y4L2y4L2C4LyL4L2m4L6m4L264LyL4L2j4L2C4LyL4L2j4L264L2T4LyL4L2g4L2Q4L2W4LyL4L2R4L284LyNXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyIgICBXaGF0IHdvdWxkIHlvdSBsaWtlIHRvIGRvIGFib3V0IGl0ID8gIFlvdXIgb3B0aW9ucyBhcmU6XG4iCisiICAgIFkgb3IgSSAgOiBpbnN0YWxsIHRoZSBwYWNrYWdlIG1haW50YWluZXIncyB2ZXJzaW9uXG4iCisiICAgIE4gb3IgTyAgOiBrZWVwIHlvdXIgY3VycmVudGx5LWluc3RhbGxlZCB2ZXJzaW9uXG4iCisiICAgICAgRCAgICAgOiBzaG93IHRoZSBkaWZmZXJlbmNlcyBiZXR3ZWVuIHRoZSB2ZXJzaW9uc1xuIgorIiAgICAgIFogICAgIDogc3RhcnQgYSBzaGVsbCB0byBleGFtaW5lIHRoZSBzaXR1YXRpb25cbiIKK21zZ3N0ciAiIgorIiAgIOC9oOC9keC9suC8i+C9guC9suC8i+C9puC+kOC9vOC9ouC8i+C9o+C9puC8i+C9geC+seC9vOC9keC8i+C9gOC+seC9suC9puC8i+C9guC8i+C9heC9suC8i+C9oOC9luC9keC8i+C9k+C9suC8i+C9puC+qOC9vD8g4L2B4L6x4L284L2R4LyL4L2A4L6x4L2y4LyL4L2C4L2R4L2Y4LyL4L2B4LyL4L2a4L204LyLOlxuIgorIiAgICBZIG9yIEkgIDog4L2Q4L204L2Y4LyL4L2m4L6S4L6y4L2y4L2j4LyL4L2g4L2b4L2y4L2T4LyL4L2m4L6Q4L6x4L284L2E4LyL4L2U4LyL4L2C4L6x4L2y4LyL4L2Q4L284L2T4LyL4L2i4L2y4L2Y4LyL4L2g4L2R4L2y4LyL4L2C4L2e4L2y4LyL4L2W4L2Z4L204L2C4L2m4LyL4L2g4L2W4L2R4LyNXG4iCisiICAgIE4gb3IgTyAgOiDgvYHgvrHgvbzgvZHgvIvgvYDgvrHgvbLgvIvgvZHgvIvgvaPgvp/gvbzgvIst4L2C4L2e4L2y4LyL4L2W4L2Z4L204L2C4L2m4LyL4L2g4L2W4L2R4LyL4L2h4L284L2R4LyL4L2U4L2g4L2y4LyL4L2Q4L284L2T4LyL4L2i4L2y4L2Y4LyL4L2g4L2R4L2y4LyL4L2W4L2e4L2CXG4iCisiICAgICAgRCAgICAgOiDgvZDgvbzgvZPgvIvgvaLgvbLgvZjgvIvgvZrgvbTgvaDgvbLgvIvgvZbgvaLgvIvgvYLgvrHgvbLgvIvgvYHgvrHgvZHgvIvgvZTgvaLgvIvgvZrgvbTgvIvgvabgvp/gvbzgvZPgvI1cbiIKKyIgICAgICBaICAgICA6IOC9keC9tOC9puC8i+C9puC+kOC9luC9puC8i+C9oOC9keC9suC8i+C9luC9ouC+n+C9guC8i+C9keC9lOC+seC9keC8i+C9oOC9luC9keC8i+C9k+C9suC9oOC9suC8i+C9keC9vOC9k+C8i+C9o+C9puC8i+C9o+C9puC8i+C9puC+puC+seC9vOC9ouC8i+C9oOC9keC9suC8i+C9ouC+kuC+seC9luC8i+C9guC9nuC9suC8i+C9luC9n+C9vOC8jVxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjU5CisjLCBjLWZvcm1hdAorbXNnaWQgIiBUaGUgZGVmYXVsdCBhY3Rpb24gaXMgdG8ga2VlcCB5b3VyIGN1cnJlbnQgdmVyc2lvbi5cbiIKK21zZ3N0ciAi4L2m4L6U4L284L2T4LyL4L2m4L6S4L6y4L2y4L2C4LyL4L2C4L2y4LyL4L2W4L6x4LyL4L2W4LyL4L2g4L2R4L2y4LyL4L2B4L6x4L284L2R4LyL4L2A4L6x4L2y4LyL4L2R4LyL4L2j4L6f4L284L2g4L2y4LyL4L2Q4L284L2T4LyL4L2i4L2y4L2Y4LyL4L2W4L2e4L2C4LyL4L2T4L2y4LyL4L2g4L2R4L2y4LyL4L2o4L2y4L2T4LyNXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIFRoZSBkZWZhdWx0IGFjdGlvbiBpcyB0byBpbnN0YWxsIHRoZSBuZXcgdmVyc2lvbi5cbiIKK21zZ3N0ciAi4L2m4L6U4L284L2T4LyL4L2m4L6S4L6y4L2y4L2C4LyL4L2C4L2y4LyL4L2W4L6x4LyL4L2W4LyL4L2g4L2R4L2y4LyL4L2Q4L284L2T4LyL4L2i4L2y4L2Y4LyL4L2C4L2m4L2i4L2U4LyL4L2C4L2e4L2y4LyL4L2W4L2Z4L204L2C4L2m4LyL4L2g4L2W4L2R4LyL4L2T4L2y4LyL4L2g4L2R4L2y4LyL4L2o4L2y4L2T4LyNXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NjYKK21zZ2lkICJbZGVmYXVsdD1OXSIKK21zZ3N0ciAiW+C9puC+lOC9vOC9k+C8i+C9puC+kuC+suC9suC9guC8iz3gvajgvbrgvZPgvItdIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjY3Cittc2dpZCAiW2RlZmF1bHQ9WV0iCittc2dzdHIgIlvgvabgvpTgvbzgvZPgvIvgvabgvpLgvrLgvbLgvYLgvIs94L2d4L2g4L2yXSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY2OAorbXNnaWQgIltubyBkZWZhdWx0XSIKK21zZ3N0ciAiW+C9puC+lOC9vOC9k+C8i+C9puC+kuC+suC9suC9guC8i+C9mOC9uuC9kV0iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NzEKK21zZ2lkICJlcnJvciB3cml0aW5nIHRvIHN0ZGVyciwgZGlzY292ZXJlZCBiZWZvcmUgY29uZmZpbGUgcHJvbXB0IgorbXNnc3RyICLgvajgvbrgvabgvbLgvIvgvYrgvbLgvIvgvYzgvbLgvIvgvajgvbLgvIvgvajgvaLgvIvgvajgvaLgvIvgvaPgvbTgvIvgvaDgvZbgvrLgvbLgvZ3gvIvgvZHgvIvgvaDgvZvgvbzgvaPgvIvgvZbgvI0g4L2i4L2y4L2Y4LyL4L2m4L6S4L6y4L2y4L2C4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2T4L204L2m4LyL4L2m4L6k4L264L2j4LyL4L2C4L6x4L2y4LyL4L2n4L264LyL4L2Y4LyL4L2C4L2m4L2i4LyL4L2i4L6Z4L264L2R4LyL4L2g4L2W4L2R4LyL4L2h4L284L2R4L2U4LyNIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjgwCittc2dpZCAicmVhZCBlcnJvciBvbiBzdGRpbiBhdCBjb25mZmlsZSBwcm9tcHQiCittc2dzdHIgIuC9ouC9suC9mOC8i+C9puC+kuC+suC9suC9guC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9k+C9tOC9puC8i+C9puC+pOC9uuC9o+C8i+C9o+C9tOC8i+C9qOC9uuC9puC9suC8i+C9iuC9suC8i+C9jOC9suC8i+C9qOC9suC9k+C8i+C9guC9tOC8i+C9o+C+t+C9guC8i+C9lOC9oOC9suC8i+C9oOC9m+C9vOC9o+C8i+C9luC8jSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY4MQorbXNnaWQgIkVPRiBvbiBzdGRpbiBhdCBjb25mZmlsZSBwcm9tcHQiCittc2dzdHIgIuC9ouC9suC9mOC8i+C9puC+kuC+suC9suC9guC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9k+C9tOC9puC8i+C9puC+pOC9uuC9o+C8i+C9o+C9tOC9oOC9suC8i+C9qOC9uuC9puC9suC8i+C9iuC9suC8i+C9jOC9suC8i+C9qOC9suC9k+C8i+C9guC9tOC8i+C9qOC9suC8i+C9qOC9vOC8i+C9qOC9uuC9leC8jSIKKworIzogc3JjL2RlcGNvbi5jOjE3NQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBkZXBlbmRzIG9uICVzIgorbXNnc3RyICIlcyDgvaPgvbTgvIvgvaLgvp/gvbrgvZPgvZjgvIvgvajgvbLgvZMgJXMiCisKKyM6IHNyYy9kZXBjb24uYzoxNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcHJlLWRlcGVuZHMgb24gJXMiCittc2dzdHIgIiVzIOC9o+C9tOC8i+C9guC9tOC8i+C9puC+lOC9vOC9k+C8iy3gvaLgvp/gvbrgvZPgvZjgvIvgvajgvbLgvZMgJXMiCisKKyM6IHNyYy9kZXBjb24uYzoxODEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcmVjb21tZW5kcyAlcyIKK21zZ3N0ciAiJXPgvaDgvbzgvabgvIvgvabgvqbgvrHgvbzgvaLgvIvgvaDgvZbgvZHgvZ3gvIvgvajgvbLgvZMgJXMiCisKKyM6IHNyYy9kZXBjb24uYzoxODQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgc3VnZ2VzdHMgJXMiCittc2dzdHIgIiVzIOC9luC9puC9mOC8i+C9oOC9huC9ouC8i+C9luC9gOC9vOC9keC9lOC8i+C9qOC9suC9kyAlcyIKKworIzogc3JjL2RlcGNvbi5jOjE4NworIywgYy1mb3JtYXQKK21zZ2lkICIlcyBicmVha3MgJXMiCittc2dzdHIgIiVzIOC9luC9ouC8i+C9mOC9muC9mOC9puC8i+C9muC9tCAlcyIKKworIzogc3JjL2RlcGNvbi5jOjE5MAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBjb25mbGljdHMgd2l0aCAlcyIKK21zZ3N0ciAiJXMg4L2R4L2E4LyL4L2C4L2F4L2y4L2C4LyL4L2B4L2i4LyL4L2Y4L2y4LyL4L2Y4L2Q4L204L2T4L2Y4LyL4L2o4L2y4L2TICVzIgorCisjOiBzcmMvZGVwY29uLmM6MTkzCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGVuaGFuY2VzICVzIgorbXNnc3RyICIgJXMg4L2C4L284L2E4LyL4L2m4L6k4L264L2j4LyL4L2a4L20ICVzIgorCisjOiBzcmMvZGVwY29uLmM6Mjk2CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHRvIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIOC9oOC9keC9suC8i+C9ouC+qeC8i+C9luC9puC+kOC+suC9keC8i+C9guC9j+C9hOC8i+C9keC9guC9vOC9lOC8i+C9qOC9suC9k+C8jVxuIgorCisjOiBzcmMvZGVwY29uLmM6Mjk5CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHRvIGJlIGRlY29uZmlndXJlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMg4L2g4L2R4L2y4LyL4L2i4L2y4L2Y4LyL4L2m4L6S4L6y4L2y4L2C4LyL4L2Y4LyL4L2g4L2W4L2R4LyL4L2W4L2i4LyL4L2W4L2e4L2C4LyL4L2R4L2C4L284L2U4LyL4L2o4L2y4L2T4LyNXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdG8gYmUgaW5zdGFsbGVkLCBidXQgaXMgdmVyc2lvbiAlLjI1MHMuXG4iCittc2dzdHIgIiAgJS4yNTBzIOC9oOC9keC9suC8i+C9guC9nuC9suC8i+C9luC9meC9tOC9guC9puC8i+C9oOC9luC9keC8i+C9keC9guC9vOC9lOC8i+C9qOC9suC9k+C8i+C8jSDgvZHgvbrgvIvgvaDgvZbgvZHgvZ3gvIvgvZHgvIvgvaDgvZHgvbLgvIvgvZDgvbzgvZPgvIvgvaLgvbLgvZjgvIsgJS4yNTBzIOC9qOC9suC9k+C8jVxuIgorCisjOiBzcmMvZGVwY29uLmM6MzE0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIGluc3RhbGxlZCwgYnV0IGlzIHZlcnNpb24gJS4yNTBzLlxuIgorbXNnc3RyICIgICUuMjUwcyDgvaDgvZHgvbLgvIvgvZbgvaTgvbTgvZbgvIvgvaHgvbzgvZHgvI0g4L2R4L264LyL4L2g4L2W4L2R4L2d4LyL4L2R4LyL4L2g4L2R4L2y4LyL4L2Q4L284L2T4LyL4L2i4L2y4L2Y4LyLICUuMjUwcyDgvajgvbLgvZPgvI1cbiIKKworIzogc3JjL2RlcGNvbi5jOjMzMworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB1bnBhY2tlZCwgYnV0IGhhcyBuZXZlciBiZWVuIGNvbmZpZ3VyZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIOC9oOC9keC9suC8i+C9luC9pOC9tOC9luC8i+C9oeC9vOC9keC8jSDgvZHgvbrgvIvgvaDgvZbgvZHgvZ3gvIvgvZHgvIvgvaDgvZHgvbLgvIvgvZPgvZjgvIvgvaHgvYTgvIvgvaLgvbLgvZjgvIvgvabgvpLgvrLgvbLgvYLgvIvgvZjgvIvgvaDgvZbgvZHgvIvgvZbgvabgvI1cbiIKKworIzogc3JjL2RlcGNvbi5jOjMzNworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB1bnBhY2tlZCwgYnV0IGlzIHZlcnNpb24gJS4yNTBzLlxuIgorbXNnc3RyICIgICUuMjUwcyDgvaDgvZHgvbLgvIvgvZbgvaTgvbTgvZbgvIvgvaHgvbzgvZHgvI0g4L2R4L264LyL4L2g4L2W4L2R4L2d4LyL4L2R4LyL4L2g4L2R4L2y4LyL4L2Q4L284L2T4LyL4L2i4L2y4L2Y4LyLICUuMjUwcyDgvajgvbLgvZPgvI1cbiIKKworIzogc3JjL2RlcGNvbi5jOjM0MworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBsYXRlc3QgY29uZmlndXJlZCB2ZXJzaW9uIGlzICUuMjUwcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMg4L2C4L2y4L2m4LyL4L2Y4L2Q4L2g4LyL4L2Y4L2H4L204L2C4LyL4L2i4L2y4L2Y4LyL4L2m4L6S4L6y4L2y4L2C4LyL4L2g4L2W4L2R4LyL4L2Y4L2y4LyL4L2Q4L284L2T4LyL4L2i4L2y4L2Y4LyL4L2g4L2R4L2y4LyLICUuMjUwcyDgvajgvbLgvZPgvI1cbiIKKworIzogc3JjL2RlcGNvbi5jOjM1MworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyAlcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMg4L2g4L2R4L2y4LyLICVzIOC9qOC9suC9k+C8jVxuIgorCisjOiBzcmMvZGVwY29uLmM6Mzg4CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBidXQgaXMgdG8gYmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMg4L2C4L2y4L2m4LyLICUuMjUwcyDgvZbgvrHgvbLgvZPgvZjgvIvgvajgvbLgvZPgvIsg4L2R4L264LyL4L2g4L2W4L2R4L2d4LyL4L2R4LyL4L2g4L2R4L2y4LyL4L2i4L6p4LyL4L2W4L2m4L6Q4L6y4L2R4LyL4L2C4L2P4L2E4LyL4L2R4L2C4L284L2U4LyL4L2o4L2y4L2T4LyNXG4iCisKKyM6IHNyYy9kZXBjb24uYzozOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGJ1dCBpcyB0byBiZSBkZWNvbmZpZ3VyZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIOC9guC9suC9puC8iyAlLjI1MHMg4L2W4L6x4L2y4L2T4L2Y4LyL4L2o4L2y4L2T4LyLIOC9keC9uuC8i+C9oOC9luC9keC9neC8i+C9keC8i+C9oOC9keC9suC8i+C9ouC9suC9mOC8i+C9puC+kuC+suC9suC9guC8i+C9mOC8i+C9oOC9luC9keC8i+C9luC9ouC8i+C9luC9nuC9guC8i+C9keC9guC9vOC9lOC8i+C9qOC9suC9k+C8jVxuIgorCisjOiBzcmMvZGVwY29uLmM6NDAxCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBidXQgaXMgJXMuXG4iCittc2dzdHIgIiAgJS4yNTBzIOC9guC9suC9puC8iyAlLjI1MHMg4L2W4L6x4L2y4L2T4L2Y4LyL4L2o4L2y4L2T4LyLIOC9keC9uuC8i+C9oOC9luC9keC9neC8i+C9keC8i+C9oOC9keC9suC8iyAlcyDgvajgvbLgvZPgvI1cbiIKKworIzogc3JjL2RlcGNvbi5jOjQxNQorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIgICUuMjUwcyDgvaDgvZHgvbLgvIvgvYLgvZ7gvbTgvIvgvZbgvZngvbTgvYLgvabgvIvgvZjgvIvgvaDgvZbgvZHgvIvgvZbgvabgvI1cbiIKKworIzogc3JjL2RlcGNvbi5jOjQ0MworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyAodmVyc2lvbiAlLjI1MHMpIGlzIHRvIGJlIGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMgKOC9kOC9vOC9k+C8i+C9ouC9suC9mOC8iyAlLjI1MHMpIOC9oOC9keC9suC8i+C9guC9nuC9suC8i+C9luC9meC9tOC9guC9puC8i+C9oOC9luC9keC8i+C9keC9guC9vOC9lOC8i+C9qOC9suC9k+C8jVxuIgorCisjOiBzcmMvZGVwY29uLmM6NDY4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyAodmVyc2lvbiAlLjI1MHMpIGlzIHByZXNlbnQgYW5kICVzLlxuIgorbXNnc3RyICIgICUuMjUwcyAo4L2Q4L284L2T4LyL4L2i4L2y4L2Y4LyLICUuMjUwcykg4L2g4L2R4L2y4LyLICVz4L2o4L2y4L2T4LyNXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGFuZCBpcyB0byBiZSBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIOC9guC9suC9puC8iyAgICUuMjUwcyDgvZbgvrHgvbLgvZPgvZjgvIvgvajgvbLgvZPgvIsg4L2R4L264LyL4L2j4L2m4LyL4L2g4L2R4L2y4LyL4L2C4L2e4L2y4LyL4L2W4L2Z4L204L2C4L2m4LyL4L2g4L2W4L2R4LyL4L2R4L2C4L284LyL4L2o4L2y4L2T4LyNXG4iCisKKyM6IHNyYy9kZXBjb24uYzo1MzcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBhbmQgaXMgcHJlc2VudCBhbmQgJXMuXG4iCittc2dzdHIgIiUuMjUwcyDgvYLgvbLgvabgvIsgJS4yNTBzIOC9luC+seC9suC9k+C9mOC8i+C9qOC9suC9k+C8iyDgvZHgvbrgvIvgvaPgvabgvIvgvaDgvZHgvbLgvIsgJXMg4L2o4L2y4L2T4LyNXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MAorIywgZnV6enkKK21zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IGRpdmVydGluZyBmaWxlcy4iCittc2dzdHIgIuC9keC9luC+seC9uuC8i+C9luC8iyDgvYzgvbLgvIvgvZTgvbLgvIvgvYDgvbrgvIvgvYfgvbLgvIst4L2W4L2k4L2C4LyLIC0t4L2C4L6y4L284L2C4L2m4LyL4L2i4L2Y4LyL4L2C4L6x4L2y4LyL4L2R4L284L2T4LyL4L2j4L204LyL4L2C4L6y4L284L2C4L2m4LyL4L2i4L2Y4LyNIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjYgc3JjL3N0YXRjbWQuYzo1NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuICVzIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIuC9jOC9uuC8i+C9luC9suC8i+C9oeC9seC9k+C8iyAlcyDgvZDgvbzgvZPgvIvgvaLgvbLgvZjgvIsgJXNcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjcwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiXG4iCisjfCAiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorI3wgIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uIgorbXNnaWQgIiIKKyJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMTAgR3VpbGxlbSBKb3Zlci5cbiIKK21zZ3N0ciAiIgorIlxuIgorIuC9oOC9keC+suC8i+C9luC9pOC9tOC9puC8i+C9keC9luC9hOC8i+C9huC8iyAoQykg4Lyh4Lyp4Lyp4LylIOC9qOC9suC8i+C9oeC9k+C8iyDgvYfgvbrgvYDgvIvgvaTgvZPgvI1cbiIKKyLgvaDgvZHgvrLgvIvgvZbgvaTgvbTgvabgvIvgvZHgvZbgvYTgvIvgvYbgvIsgKEMpIOC8ouC8oOC8oOC8oCDgvKLgvKDgvKDgvKEg4L2d4L2y4LyL4L2F4L2i4L2K4L2y4LyLIOC9qOC9gOC8i+C9gOC9ouC8i+C9mOC9seC9k+C8jSIKKworIzogc3JjL2RpdmVydGNtZC5jOjc1IHNyYy9tYWluLmM6NjMgc3JjL3F1ZXJ5Y21kLmM6NjAzIHNyYy9zdGF0Y21kLmM6NjUKKyM6IHNyYy90cmlnY21kLmM6NTUgZHBrZy1kZWIvbWFpbi5jOjU3IGRwa2ctc3BsaXQvbWFpbi5jOjUxCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6ODkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAyIG9yXG4iCisibGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuXG4iCittc2dzdHIgIiIKKyJcbiIKKyLgvaDgvIvgvZPgvbLgvIvgvaDgvZHgvbLgvIvgvaLgvYTgvIvgvZHgvZbgvYTgvIvgvZjgvYngvbrgvZPgvIvgvYbgvabgvIvgvajgvbLgvZPgvI0g4L2H4L2y4LyL4L2o4L264L2T4LyL4L2h4L204LyLIOC9oeC9vOC9hOC9puC8i+C9geC+seC9luC8i+C9mOC9suC8i+C9mOC9hOC8i+C9huC9vOC9guC8i+C9kOC9mOC8i+C9kOC9vOC9k+C8i+C9ouC9suC9mOC8iyDgvKIg4L2h4L2E4LyL4L2T4LyLXG4iCisi4L2k4L204L2j4LyL4L2Y4L2Y4LyL4L2g4L2R4L2y4LyLIOC9guC9k+C9puC8i+C9puC+n+C9hOC9puC8i+C9muC9tOC8i+C9oOC9keC+suC8i+C9luC9pOC9tOC9puC8i+C9ouC+kOC+seC9luC9puC8i+C9k+C9suC9oOC9suC8i+C9keC9vOC9k+C8i+C9o+C9tOC8iyDgvZbgvaPgvp/gvI0g4L2J4L264L2T4LyL4L2j4L264L2T4LyL4L2C4LyL4L2T4L2y4LyL4L2h4L2E4LyL4L2Y4L264L2R4LyNXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo4NyBzcmMvbWFpbi5jOjgxIHNyYy9xdWVyeWNtZC5jOjYxNSBzcmMvc3RhdGNtZC5jOjc3CisjOiBkcGtnLWRlYi9tYWluLmM6NjkgZHBrZy1zcGxpdC9tYWluLmM6NjMgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjk3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gPGNvbW1hbmQ+XG4iCisiXG4iCittc2dzdHIgIiIKKyLgvaPgvYLgvIvgvaPgvbrgvZPgvIs6ICVzIFs8b3B0aW9uPiAuLi5dIDxjb21tYW5kPlxuIgorIlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6OTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgWy0tYWRkXSA8ZmlsZT4gICAgICAgICAgIGFkZCBhIGRpdmVyc2lvbi5cbiIKKyIgIC0tcmVtb3ZlIDxmaWxlPiAgICAgICAgICByZW1vdmUgdGhlIGRpdmVyc2lvbi5cbiIKKyIgIC0tbGlzdCBbPGdsb2ItcGF0dGVybj5dICBzaG93IGZpbGUgZGl2ZXJzaW9ucy5cbiIKKyIgIC0tbGlzdHBhY2thZ2UgPGZpbGU+ICAgICBzaG93IHdoYXQgcGFja2FnZSBkaXZlcnRzIHRoZSBmaWxlLlxuIgorIiAgLS10cnVlbmFtZSA8ZmlsZT4gICAgICAgIHJldHVybiB0aGUgZGl2ZXJ0ZWQgZmlsZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MTAwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tcGFja2FnZSA8cGFja2FnZT4gICAgICBuYW1lIG9mIHRoZSBwYWNrYWdlIHdob3NlIGNvcHkgb2YgPGZpbGU+IHdpbGwgIgorIm5vdFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmUgZGl2ZXJ0ZWQuXG4iCisiICAtLWxvY2FsICAgICAgICAgICAgICAgICAgYWxsIHBhY2thZ2VzJyB2ZXJzaW9ucyBhcmUgZGl2ZXJ0ZWQuXG4iCisiICAtLWRpdmVydCA8ZGl2ZXJ0LXRvPiAgICAgdGhlIG5hbWUgdXNlZCBieSBvdGhlciBwYWNrYWdlcycgdmVyc2lvbnMuXG4iCisiICAtLXJlbmFtZSAgICAgICAgICAgICAgICAgYWN0dWFsbHkgbW92ZSB0aGUgZmlsZSBhc2lkZSAob3IgYmFjaykuXG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgc2V0IHRoZSBkaXJlY3Rvcnkgd2l0aCB0aGUgZGl2ZXJzaW9ucyBmaWxlLlxuIgorIiAgLS10ZXN0ICAgICAgICAgICAgICAgICAgIGRvbid0IGRvIGFueXRoaW5nLCBqdXN0IGRlbW9uc3RyYXRlLlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHF1aWV0IG9wZXJhdGlvbiwgbWluaW1hbCBvdXRwdXQuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorbXNnc3RyICIiCisi4L2j4L2C4LyL4L2j4L264L2T4LyLOiAlcyBbPG9wdGlvbj4gLi4uXSA8Y29tbWFuZD5cbiIKKyJcbiIKKyLgvZbgvaLgvqHgvIvgvZbgvYDgvbzgvZHgvIvgvZrgvbTgvIs6XG4iCisiICBbLS3gvYHgvIvgvabgvpDgvbzgvYTgvIvgvaLgvpDgvrHgvZbgvabgvItdIDxmaWxlPiAgICAgICAgICAg4L2B4LyL4L2m4L6S4L6x4L204L2i4LyL4L2C4L2F4L2y4L2C4LyL4L2B4LyL4L2m4L6Q4L284L2E4LyL4L2i4L6Q4L6x4L2W4L2m4LyNXG4iCisiICAtLeC9ouC+qeC8i+C9luC9puC+kOC+suC9keC8i+C9guC9j+C9hOC8iyA8ZmlsZT4gICAgICAgICAg4L2B4LyL4L2m4L6S4L6x4L204L2i4LyL4L2g4L2R4L2y4LyL4L2i4L6p4LyL4L2W4L2m4L6Q4L6y4L2R4LyL4L2C4L2P4L2E4LyL4LyNXG4iCisiICAtLeC9kOC9vOC8i+C9oeC9suC9guC8iyBbPGdsb2ItcGF0dGVybj5dICDgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIvgvYHgvIvgvabgvpLgvrHgvbTgvaLgvIvgvZrgvbTgvIvgvabgvp/gvbzgvZPgvI1cbiIKKyIgIC0t4L2W4L2R4L264L2T4LyL4L2U4L2g4L2y4LyL4L2Y4L2y4L2E4LyLIDxmaWxlPiAgICAgICAg4L2B4LyL4L2V4L6x4L284L2C4L2m4LyL4L2m4L6S4L6x4L204L2i4LyL4L2h4L284L2R4LyL4L2U4L2g4L2y4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2g4L2R4L2y4LyL4L2m4L6z4L2i4LyL4L2j4L284L2C4LyL4L2g4L2W4L2R4LyNXG4iCisiXG4iCisi4L2C4L2R4L2Y4LyL4L2B4LyL4L2a4L204LyLOlxuIgorIiAgLS3gvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIsgPHBhY2thZ2U+ICAgICAg4L2Q4L204L2Y4LyL4L2m4L6S4L6y4L2y4L2j4LyL4L2C4L6x4L2y4LyL4L2Y4L2y4L2E4LyLIDxmaWxlPiDgvYLgvbLgvIvgvaDgvZHgvrLgvIvgvZbgvaTgvbTgvabgvIvgvajgvbLgvZPgvIvgvZjgvbLgvIvgvaDgvZHgvbLgvItcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIOC9geC8i+C9leC+seC9vOC9guC9puC8i+C9mOC9suC8i+C9puC+kuC+seC9tOC9ouC8i1xuIgorIiAgLS3gvYngvbrgvIvgvYLgvZPgvabgvIsgICAgICAgICAgICAgICAgICDgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIvgvYLgvrHgvbLgvIvgvZDgvbzgvZPgvIvgvaLgvbLgvZjgvIvgvZrgvbTgvIvgvYLgvbrgvIvgvaLgvIvgvYHgvIvgvZXgvrHgvbzgvYLgvabgvIvgvabgvpLgvrHgvbTgvaLgvIvgvaHgvbzgvZHgvI1cbiIKKyIgIC0t4L2B4LyL4L2V4L6x4L284L2C4L2m4LyL4L2m4L6S4L6x4L204L2i4LyLIDxkaXZlcnQtdG8+ICAgICDgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIvgvYLgvrHgvbLgvIvgvZDgvbzgvZPgvIvgvaLgvbLgvZjgvIvgvYLgvZ7gvZPgvIvgvZjgvbLgvIvgvZrgvbTgvIvgvYLgvbLgvabgvIvgvaPgvYLgvIvgvaPgvbrgvZPgvIvgvaDgvZDgvZbgvIvgvaHgvbzgvZHgvIvgvZjgvbLgvIvgvZjgvbLgvYTgvIvgvZrgvbTgvItcbiIKKyIgIC0t4L2W4L2m4L6Q4L6x4L2i4LyL4L2Y4L2y4L2E4LyL4L2W4L2P4L2C4L2m4LyLICAgICAgICAgICAgICAgICDgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIvgvaDgvZHgvbLgvIvgvZ/gvbTgvaLgvIvgvYHgvIvgvabgvqTgvbzgvIsgKOC9oeC9hOC8i+C9k+C8i+C9ouC+kuC+seC9luC8i+C9geC8iylcbiIKKyIgIC0t4L2W4L2R4L2C4LyL4L2m4L6Q4L6x4L284L2E4LyL4L2m4L6j4L284L2R4LyL4L2Q4L284LyLIDxkaXJlY3Rvcnk+ICAg4L2B4LyL4L2m4L6S4L6x4L204L2i4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2R4L2E4LyL4L2F4L2y4L2C4LyL4L2B4L2i4LyL4L2m4L6j4L284L2R4LyL4L2Q4L284LyL4L2g4L2R4L2y4LyL4L2C4L2e4L2y4LyL4L2m4L6S4L6y4L2y4L2C4LyL4L2g4L2W4L2R4LyNXG4iCisiICAtLeC9luC9ouC+n+C9guC8i+C9nuC9suC9luC8iyAgICAgICAgICAgICAgICAgICDgvYLgvIvgvZPgvbLgvIvgvaHgvYTgvIvgvZjgvIvgvaDgvZbgvZHgvIvgvZbgvaLgvIsg4L2g4L2C4L6y4L264L2Y4L2m4LyL4L2m4L6f4L284L2T4LyL4L2i4L6Q4L6x4L2E4L2Y4LyL4L2F4L2y4L2C4LyL4L2g4L2W4L2R4LyNXG4iCisiICAtLeC9geC9tOC8i+C9puC9suC9mOC8i+C9puC9suC9mOC8iyAgICAgICAgICAgICAgICAgIOC9geC9tOC8i+C9puC9suC9mOC8i+C9puC9suC9mOC8i+C9luC9gOC9vOC9o+C8i+C9puC+pOC+seC9vOC9keC8i+C9lOC8iyDgvajgvaDgvbTgvYrgvbLgvIvgvZTgvbTgvYrgvbLgvIvgvYbgvbTgvYTgvIvgvYDgvbRcbiIKKyIgIC0t4L2C4L6y4L284L2C4L2m4LyL4L2i4L2Y4LyLICAgICAgICAgICAgICAgICAgIOC9oOC8i+C9k+C9suC8i+C9guC+suC9vOC9guC9puC8i+C9oOC9leC+suC9suC9k+C8i+C9keC9vOC9k+C8i+C9puC+n+C9vOC9k+C8jVxuIgorIiAgLS3gvZDgvbzgvZPgvIvgvaLgvbLgvZjgvIsgICAgICAgICAgICAgICAg4L2Q4L284L2T4LyL4L2i4L2y4L2Y4LyL4L2g4L2R4L2y4LyL4L2m4L6f4L284L2T4LyNXG4iCisiXG4iCisi4L2B4LyL4L2m4L6Q4L284L2E4LyL4L2i4L6Q4L6x4L2W4L2m4LyL4L2U4L2g4L2y4LyL4L2m4L6Q4L2W4L2m4LyLIOC9puC+lOC9vOC9k+C8i+C9puC+kuC+suC9suC9guC8i+C9oOC9keC9suC8iyAtLeC9ieC9uuC8i+C9guC9k+C9puC8i+C9keC9hOC8iyAtLeC9geC8i+C9leC+seC9vOC9guC9puC8i+C9puC+kuC+seC9tOC9ouC8i+C9luC8i+C9qOC9suC9k+C8jSA8b3JpZ2luYWw+LuC9luC9guC9vOC8i+C9luC9gOC+suC9mOC8iyIKKyLgvaDgvZbgvZHgvI1cbiIKKyLgvaLgvqngvIvgvZbgvabgvpDgvrLgvZHgvIvgvYLgvY/gvYTgvIvgvZTgvaDgvbLgvIvgvabgvpDgvZbgvabgvIsgLS3gvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIvgvaHgvYTgvIvgvZPgvIsgLS3gvYngvbrgvIvgvYLgvZPgvabgvIvgvZHgvYTgvIsgLS3gvYHgvIvgvZXgvrHgvbzgvYLgvabgvIvgvabgvpLgvrHgvbTgvaLgvIvgvZbgvIvgvaDgvZHgvbLgvIsg4L2C4L2m4L2j4LyL4L2W4L2A4L284L2R4LyL4L2g4L2W4L2R4LyL4L2h4L284L2R4L2U4LyLIgorIuC9qOC9suC9k+C8i+C9lOC8i+C9heC9suC9k+C8iyDgvZjgvZDgvbTgvZPgvIvgvZHgvYLgvbxcbiIKKyLgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIsg4L2U4L2y4LyL4L2i4L2y4L2T4L2m4L2y4L2K4L2y4LyLL+C9lOC9vOC9puC9suC8i+C9iuC9suC9ouC9mOC8iyDgvaHgvbLgvYLgvIvgvZrgvbTgvYLgvabgvIvgvZrgvbTgvIvgvYLgvbLgvabgvIvgvajgvIvgvaLgvp/gvYLgvIvgvaLgvYTgvIsgLS3gvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIvgvZHgvYTgvIsgYW5kIC0t4L2B4LyL4L2V4L6x4L284L2C4L2m4LyL4L2m4L6S4L6x4L204L2i4LyL4L2W4LyLICIKKyLgvYLgvabgvaPgvIvgvZbgvYDgvbzgvZHgvIvgvaDgvZbgvZHgvIvgvZHgvYLgvbzgvI1cbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiV2hlbiBhZGRpbmcsIGRlZmF1bHQgaXMgLS1sb2NhbCBhbmQgLS1kaXZlcnQgPG9yaWdpbmFsPi5kaXN0cmliLlxuIgorIldoZW4gcmVtb3ZpbmcsIC0tcGFja2FnZSBvciAtLWxvY2FsIGFuZCAtLWRpdmVydCBtdXN0IG1hdGNoIGlmIHNwZWNpZmllZC5cbiIKKyJQYWNrYWdlIHByZWluc3QvcG9zdHJtIHNjcmlwdHMgc2hvdWxkIGFsd2F5cyBzcGVjaWZ5IC0tcGFja2FnZSBhbmQgLS0iCisiZGl2ZXJ0LlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoxNjgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImVycm9yIGNoZWNraW5nIGAlcyc6ICVzIgorbXNnaWQgImVycm9yIGNoZWNraW5nICclcyciCittc2dzdHIgImAlcycg4L2e4L2y4L2W4LyL4L2R4L2U4L6x4L2R4LyL4L2g4L2W4L2R4LyL4L2T4L2y4L2g4L2y4LyL4L2g4L2b4L284L2j4LyL4L2WOiAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjIwMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisicmVuYW1lIGludm9sdmVzIG92ZXJ3cml0aW5nIGAlcycgd2l0aFxuIgorIiAgZGlmZmVyZW50IGZpbGUgYCVzJywgbm90IGFsbG93ZWQiCittc2dzdHIgIiIKKyLgvZbgvabgvpDgvrHgvaLgvIvgvZjgvbLgvYTgvIvgvZbgvY/gvYLgvabgvIvgvZPgvbLgvIvgvaDgvZHgvbLgvIsgYCVzJyBcbiIKKyIgIOC9oeC9suC9guC8i+C9puC+o+C9vOC9keC8iyBgJXMnIOC9puC9vOC8i+C9puC9vOC8i+C9keC9hOC8i+C9keC9hOC8i+C9heC9suC9guC8i+C9geC9ouC8i+C9muC9luC8i+C9puC+suC9tOC9hOC8i+C9oOC9luC9keC8i+C9k+C9suC8i+C9keC9hOC8i+C9oOC9luC+suC9uuC9o+C8i+C9luC8i+C9oOC9luC9keC9neC8i+C9qOC9suC9k+C8jSDgvaDgvZbgvZHgvIvgvZjgvbLgvIvgvYbgvbzgvYIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyMjMgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzNzMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgZmlsZSAnJXMnIgorbXNnc3RyICLgvaDgvZbgvrHgvbTgvYTgvIvgvYHgvbTgvYTgvabgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIsgYCUuMjUwcycg4L2B4LyL4L2V4L6x4L264LyL4L2Y4LyL4L2a4L204L2C4L2m4LyNIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjI3Cittc2dpZCAiZmlsZSBjb3B5IgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyMzkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImNhbm5vdCBzdGF0IG5ldyBuYW1lIGAlcyc6ICVzIgorbXNnaWQgImNhbm5vdCByZW5hbWUgJyVzJyB0byAnJXMnIgorbXNnc3RyICLgvZjgvbLgvYTgvIvgvYLgvabgvaLgvZTgvIsgYCVzJyDgvabgvbLgvIvgvYrgvbrgvYrgvbLgvIvgvaDgvZbgvZHgvIvgvZjgvIvgvZrgvbTgvYLgvaY6ICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjUyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJyZW5hbWU6IHJlbW92ZSBkdXBsaWNhdGUgb2xkIGxpbmsgYCVzJzogJXMiCittc2dpZCAicmVuYW1lOiByZW1vdmUgZHVwbGljYXRlIG9sZCBsaW5rICclcyciCittc2dzdHIgIuC9luC9puC+kOC+seC9ouC8i+C9mOC9suC9hOC8i+C9luC9j+C9guC9puC8izog4L2g4L2W4L6y4L264L2j4LyL4L2j4L2Y4LyLIGAlcycg4L2i4L6Z4L2y4L2E4L2Y4LyL4L2i4L6r4L204L2T4LyL4L2Y4LyL4L2i4L6p4LyL4L2W4L2m4L6Q4L6y4L2R4LyL4L2C4L2P4L2E4LyLOiAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjI2MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIG9wZW4gc291cmNlIGZpbGUgYCUuMjUwcyciCittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBjb3BpZWQgc291cmNlIGZpbGUgJyVzJyIKK21zZ3N0ciAi4L2g4L2W4L6x4L204L2E4LyL4L2B4L204L2E4L2m4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyLIGAlLjI1MHMnIOC9geC8i+C9leC+seC9uuC8i+C9mOC8i+C9muC9tOC9guC9puC8jSIKKworIzogc3JjL2RpdmVydGNtZC5jOjI4NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAibG9jYWwgZGl2ZXJzaW9uIG9mICVzIgorbXNnc3RyICLgvYngvbrgvIvgvYLgvZPgvabgvIvgvabgvqbgvbrgvIsgOiAlcyDgvaPgvbTgvIvgvYHgvIvgvZXgvrHgvbzgvYLgvabgvIvgvabgvpLgvrHgvbTgvaLgvIvgvaHgvbzgvZHgvI1cbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjI4NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAibG9jYWwgZGl2ZXJzaW9uIG9mICVzIHRvICVzIgorbXNnc3RyICLgvYngvbrgvIvgvYLgvZPgvabgvIvgvabgvqbgvbrgvIsgOiAlcyDgvaPgvbTgvIvgvYHgvIvgvZXgvrHgvbzgvYLgvabgvIvgvabgvpLgvrHgvbTgvaLgvIvgvaHgvbzgvZHgvI1cbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjI5MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZGl2ZXJzaW9uIGJ5ICVzIgorbXNnaWQgImRpdmVyc2lvbiBvZiAlcyBieSAlcyIKK21zZ3N0ciAiJXMg4L2C4L2y4L2m4LyL4L2B4LyL4L2m4L6S4L6x4L204L2i4LyNIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjkzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnNpb24gb2YgJXMgdG8gJXMgYnkgJXMiCittc2dzdHIgIiVzIOC9guC9suC9puC8iyA6ICVzIOC9o+C9tOC8i+C9geC8i+C9leC+seC9vOC9guC9puC8i+C9puC+kuC+seC9tOC9ouC8i+C9oeC9vOC9keC9lOC8i1xuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MzA5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJkaXZlcnNpb24gYnkgJXMiCittc2dpZCAiYW55IGRpdmVyc2lvbiBvZiAlcyIKK21zZ3N0ciAiJXMg4L2C4L2y4L2m4LyL4L2B4LyL4L2m4L6S4L6x4L204L2i4LyNIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MzExCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJhbnkgZGl2ZXJzaW9uIG9mICVzIHRvICVzIgorbXNnc3RyICIlcyDgvYLgvbLgvabgvIsgOiAlcyDgvaPgvbTgvIvgvYHgvIvgvZXgvrHgvbzgvYLgvabgvIvgvabgvpLgvrHgvbTgvaLgvIvgvaHgvbzgvZHgvZTgvItcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjM1NworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiY2Fubm90IG9wZW4gR1BMIGZpbGUiCittc2dpZCAiY2Fubm90IGNyZWF0ZSBuZXcgJXMgZmlsZSIKK21zZ3N0ciAi4L2H4L2y4LyL4L2U4L2y4LyL4L2o4L264L2j4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2B4LyL4L2V4L6x4L264LyL4L2Y4L2y4LyL4L2a4L204L2C4L2m4LyNIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mzc1IHNyYy9zdGF0Y21kLmM6MjE1IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNDA0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggZmlsZSAnJXMnIgorbXNnc3RyICJ2c25wcmludGYg4L2T4L2E4LyLIOC9hOC9vOC9puC8i+C9puC+meC9vOC9mOC8i+C9mOC8i+C9muC9tOC9guC9puC8jSIKKworIzogc3JjL2RpdmVydGNtZC5jOjM4MgorIywgZnV6enkKKyN8IG1zZ2lkICJyZW1vdmUgb2xkIGRpdmVyc2lvbnMtb2xkOiAlcyIKK21zZ2lkICJlcnJvciByZW1vdmluZyBvbGQgZGl2ZXJzaW9ucy1vbGQiCittc2dzdHIgIuC9geC8i+C9puC+kuC+seC9tOC9ouC8i+C9ouC+meC9suC9hOC9mOC8iy3gvaLgvpngvbLgvYTgvZjgvIsg4L2i4L6p4LyL4L2W4L2m4L6Q4L6y4L2R4LyL4L2C4L2P4L2E4LyLOiAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjM4NAorIywgZnV6enkKK21zZ2lkICJlcnJvciBjcmVhdGluZyBuZXcgZGl2ZXJzaW9ucy1vbGQiCittc2dzdHIgIuC9puC9suC8i+C9iuC9uuC9iuC9suC8i+C9n+C9tOC9ouC8i+C9luC9nuC9guC8iy3gvaLgvpngvbLgvYTgvZjgvIsg4L2C4L2m4L2i4L2U4LyL4L2C4L2m4L2i4LyL4L2W4L2m4L6Q4L6y4L204L2T4LyL4L2g4L2W4L2R4L2d4LyL4L2R4LyL4L2g4L2b4L284L2j4LyL4L2W4LyLOiAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjM4NgorIywgZnV6enkKK21zZ2lkICJlcnJvciBpbnN0YWxsaW5nIG5ldyBkaXZlcnNpb25zIgorbXNnc3RyICLgvabgvbLgvIvgvYrgvbrgvYrgvbLgvIvgvZ/gvbTgvaLgvIvgvZbgvZ7gvYLgvIvgvYLgvabgvaLgvZTgvIvgvYLgvZ7gvbLgvIvgvZbgvZngvbTgvYLgvabgvIvgvaDgvZbgvZHgvZ3gvIvgvZHgvIvgvaDgvZvgvbzgvaPgvIvgvZbgvIs6ICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDA2IHNyYy9kaXZlcnRjbWQuYzo1MDMgc3JjL2RpdmVydGNtZC5jOjYxMAorIzogc3JjL2RpdmVydGNtZC5jOjYzMCBzcmMvc3RhdGNtZC5jOjI5MAorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGEgc2luZ2xlIGFyZ3VtZW50IgorbXNnc3RyICItLSVz4LyL4L2j4L204LyL4L2m4L6S4L6y4L204L2W4LyL4L2i4L6f4L2C4L2m4LyL4L2i4L6Q4L6x4L2E4LyL4L2U4LyL4L2F4L2y4L2C4LyL4L2R4L2C4L284L2U4LyL4L2g4L2R4L204L2CIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDA5IHNyYy9kaXZlcnRjbWQuYzo0MzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZW5hbWUgXCIlc1wiIGlzIG5vdCBhYnNvbHV0ZSIKK21zZ3N0ciAi4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2Y4L2y4L2E4LyLIFwiJXNcIiDgvaDgvZHgvbLgvIvgvaHgvYTgvIvgvZHgvYLgvIvgvZjgvbrgvZPgvI0iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MTEgc3JjL3N0YXRjbWQuYzoyNDkKK21zZ2lkICJmaWxlIG1heSBub3QgY29udGFpbiBuZXdsaW5lcyIKK21zZ3N0ciAi4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2a4L204LyL4L2T4L2E4LyL4L2C4L6y4L2j4LyL4L2Q4L2y4L2C4LyL4L2C4L2m4L2i4L2U4LyL4L2a4L204LyL4L2Y4L264L2R4L2U4LyL4L2g4L284L2E4LyL4LyNIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDE4Cittc2dpZCAiQ2Fubm90IGRpdmVydCBkaXJlY3RvcmllcyIKK21zZ3N0ciAi4L2m4L6j4L284L2R4LyL4L2Q4L284LyL4L2a4L204LyL4L2B4LyL4L2V4L6x4L284L2C4L2m4LyL4L2m4L6S4L6x4L204L2i4LyL4L2Y4L2y4LyL4L2a4L204L2C4L2m4LyNIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDMzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgZGl2ZXJ0IGZpbGUgJyVzJyB0byBpdHNlbGYiCittc2dzdHIgIuC9puC+o+C9vOC9keC8i+C9kOC9vOC8i+C9muC9tOC8i+C9geC8i+C9leC+seC9vOC9guC9puC8i+C9puC+kuC+seC9tOC9ouC8i+C9mOC9suC8i+C9muC9tOC9guC9puC8jSIKKworIzogc3JjL2RpdmVydGNtZC5jOjQ1MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiTGVhdmluZyBgJXMnIgorbXNnaWQgIkxlYXZpbmcgJyVzJ1xuIgorbXNnc3RyICJgJXMnIOC9luC9gOC9vOC9guC8i+C9luC9nuC9guC8i+C9keC9vOC8jSIKKworIzogc3JjL2RpdmVydGNtZC5jOjQ1OAorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGNsYXNoZXMgd2l0aCBgJXMnIgorbXNnc3RyICJgJXMnIOC9oOC9keC9suC8iyBgJXMnIOC9keC9hOC8i+C9heC9suC9guC8i+C9geC9ouC8i+C9ouC+oeC9luC8i+C9oOC9geC+suC9tOC9guC8i+C9luC+seC9tOC9hOC9mOC8i+C9qOC9suC9k+C8jSIKKworIzogc3JjL2RpdmVydGNtZC5jOjQ4MQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiQWRkaW5nIGAlcyciCittc2dpZCAiQWRkaW5nICclcydcbiIKK21zZ3N0ciAiYCVzJyDgvYHgvIvgvabgvpDgvbzgvYTgvIvgvaLgvpDgvrHgvZbgvabgvIvgvZHgvbzgvI0iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MTAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIk5vIGRpdmVyc2lvbiBgJXMnLCBub25lIHJlbW92ZWQiCittc2dpZCAiTm8gZGl2ZXJzaW9uICclcycsIG5vbmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAi4L2B4LyL4L2m4L6S4L6x4L204L2i4LyLIGAlcycg4L2Y4L264L2R4LyNIOC9guC9heC9suC9guC8i+C9oeC9hOC8i+C9ouC+qeC8i+C9luC9puC+kOC+suC9keC8i+C9mOC8i+C9guC9j+C9hOC8i+C8jSIKKworIzogc3JjL2RpdmVydGNtZC5jOjUyNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisibWlzbWF0Y2ggb24gZGl2ZXJ0LXRvXG4iCisiICB3aGVuIHJlbW92aW5nIGAlcydcbiIKKyIgIGZvdW5kIGAlcyciCittc2dzdHIgIiIKKyLgvaPgvbTgvIst4L2B4LyL4L2V4L6x4L284L2C4L2m4LyL4L2m4L6S4L6x4L204L2i4LyL4L2R4LyL4L2Y4LyL4L2Y4L2Q4L204L2T4L2Y4LyLXG4iCisiICAgYCVzJ+C9ouC+qeC8i+C9luC9puC+kOC+suC9keC8i+C9guC9j+C9hOC8i+C9lOC9oOC9suC8i+C9puC+kOC9luC9puC8i1xuIgorIiAgIGAlcycg4L2g4L2Q4L284L2W4LyL4L2h4L284L2R4LyNIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJtaXNtYXRjaCBvbiBwYWNrYWdlXG4iCisiICB3aGVuIHJlbW92aW5nIGAlcydcbiIKKyIgIGZvdW5kIGAlcyciCittc2dzdHIgIiIKKyLgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIvgvYLgvbTgvIvgvaPgvbTgvIvgvZjgvIvgvZjgvZDgvbTgvZPgvZjgvItcbiIKKyIgIGAlcycg4L2i4L6p4LyL4L2W4L2m4L6Q4L6y4L2R4LyL4L2C4L2P4L2E4LyL4L2U4L2g4L2y4LyL4L2m4L6Q4L2W4L2m4LyLXG4iCisiICBgJXMnIOC9oOC9kOC9vOC9luC8i+C9oeC9vOC9keC8jSIKKworIzogc3JjL2RpdmVydGNtZC5jOjUzOQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiUmVtb3ZpbmcgYCVzJyIKK21zZ2lkICJSZW1vdmluZyAnJXMnXG4iCittc2dzdHIgImAlcycg4L2i4L6p4LyL4L2W4L2m4L6Q4L6y4L2R4LyL4L2C4L2P4L2E4LyL4L2R4L284LyNIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjU3Cittc2dpZCAicGFja2FnZSBtYXkgbm90IGNvbnRhaW4gbmV3bGluZXMiCittc2dzdHIgIuC9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8i+C9o+C9tOC8i+C9guC+suC9o+C8i+C9kOC9suC9guC8i+C9guC9puC9ouC9lOC8i+C9mOC9uuC9keC9lOC8i+C9oOC9vOC9hOC8i+C8jSIKKworIzogc3JjL2RpdmVydGNtZC5jOjY2NgorbXNnaWQgImRpdmVydC10byBtYXkgbm90IGNvbnRhaW4gbmV3bGluZXMiCittc2dzdHIgIuC9o+C9tOC8iy3gvYHgvIvgvZXgvrHgvbzgvYLgvabgvIvgvabgvpLgvrHgvbTgvaLgvIvgvZbgvIvgvaDgvZHgvbLgvIvgvZPgvYTgvIvgvaPgvbTgvIvgvYLgvrLgvaPgvIvgvZDgvbLgvYLgvIvgvYLgvabgvaLgvZTgvIvgvZrgvbTgvIvgvZjgvbrgvZHgvZTgvIvgvaDgvbzgvYTgvIvgvI0iCisKKyM6IHNyYy9kaXZlcnRkYi5jOjY0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gZGl2ZXJzaW9ucyBmaWxlIgorbXNnc3RyICLgvYHgvIvgvabgvpLgvrHgvbTgvaLgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIvgvYHgvIvgvZXgvrHgvbrgvIvgvZPgvbLgvIvgvaDgvZDgvbTgvabgvIvgvaTgvbzgvaLgvIvgvZbgvrHgvbTgvYTgvIvgvaHgvbzgvZHgvI0iCisKKyM6IHNyYy9kaXZlcnRkYi5jOjcxCittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IHByZXZpb3VzIGRpdmVyc2lvbnMgZmlsZSIKK21zZ3N0ciAi4L2n4L264LyL4L2Y4L2g4L2y4LyL4L2B4LyL4L2m4L6S4L6x4L204L2i4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2o4L264L2V4LyL4L2m4L2y4LyL4L2K4L264L2K4L2y4LyL4L2g4L2W4L2R4LyL4L2T4L2y4LyL4L2g4L2Q4L204L2m4LyL4L2k4L284L2i4LyL4L2W4L6x4L204L2E4LyL4L2h4L284L2R4LyNIgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzo3MworbXNnaWQgImZhaWxlZCB0byBmc3RhdCBkaXZlcnNpb25zIGZpbGUiCittc2dzdHIgIuC9geC8i+C9puC+kuC+seC9tOC9ouC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9qOC9uuC9leC8i+C9puC9suC8i+C9iuC9uuC9iuC9suC8i+C9oOC9luC9keC8i+C9k+C9suC8i+C9o+C9tOC8i+C9oOC9kOC9tOC9puC8i+C9pOC9vOC9ouC8i+C9luC+seC9tOC9hOC8i+C9oeC9vOC9keC8jSIKKworIzogc3JjL2RpdmVydGRiLmM6MTEzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZsaWN0aW5nIGRpdmVyc2lvbnMgaW52b2x2aW5nIGAlLjI1MHMnIG9yIGAlLjI1MHMnIgorbXNnc3RyICJgJS4yNTBzJyDgvaHgvYTgvIvgvZPgvIsgYCUuMjUwcycg4L2g4L2W4L6y4L264L2j4LyL4L2W4LyL4L2h4L284L2R4LyL4L2Y4L2y4LyL4L2Y4L2y4LyL4L2Y4L2Q4L204L2T4LyL4L2U4L2g4L2y4LyL4L2B4LyL4L2m4L6S4L6x4L204L2i4LyL4L2a4L204LyNIgorCisjOiBzcmMvZW5xdWlyeS5jOjczCittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgYXJlIGluIGEgbWVzcyBkdWUgdG8gc2VyaW91cyBwcm9ibGVtcyBkdXJpbmdcbiIKKyJpbnN0YWxsYXRpb24uICBUaGV5IG11c3QgYmUgcmVpbnN0YWxsZWQgZm9yIHRoZW0gKGFuZCBhbnkgcGFja2FnZXNcbiIKKyJ0aGF0IGRlcGVuZCBvbiB0aGVtKSB0byBmdW5jdGlvbiBwcm9wZXJseTpcbiIKK21zZ3N0ciAiIgorIuC9oOC9vOC9guC8i+C9guC9suC8i+C9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8i+C9muC9tOC8i+C9guC9nuC9suC8i+C9luC9meC9tOC9guC9puC8i+C9gOC+seC9suC8i+C9puC+kOC9luC9puC8i+C9oOC9muC9tOC9luC8i+C9heC9k+C8i+C9keC9gOC9oOC8i+C9o+C9tOC8i+C9ouC+n+C9uuC9uuC9k+C8i+C9j+C9uuC8i+C9geC9mOC8i+C9o+C9vOC9guC8i+C9puC9suC8i+C9puC9suC8i+C9qOC9suC9k+C8i+C9lOC9puC8jVxuIgorIuC9keC9uuC8i+C9muC9tOC8i+C9guC9suC8i+C9keC9vOC9k+C8i+C9o+C9tOC8i+C9o+C9vOC9guC8i+C9oOC9guC9vOC8i+C9luC9meC9tOC9guC9puC8i+C9keC9guC9vOC8iyjgvZHgvbrgvIvgvaPgvabgvIvgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIvgvZrgvbTgvItcbiIKKyLgvYHgvbzgvYTgvIvgvaPgvbTgvIvgvZbgvaLgvp/gvbrgvZPgvIvgvZjgvbLgvIsp4L2j4L264LyL4L2k4L284L2Y4LyL4L2m4L6m4L264LyL4L2j4L2m4LyL4L2g4L2C4L2T4LyL4L2C4L6y4L204L2W4LyL4L2T4L2y4L2g4L2y4LyL4L2R4L284L2T4LyL4L2j4L204LyLOlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjgwCittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgaGF2ZSBiZWVuIHVucGFja2VkIGJ1dCBub3QgeWV0IGNvbmZpZ3VyZWQuXG4iCisiVGhleSBtdXN0IGJlIGNvbmZpZ3VyZWQgdXNpbmcgZHBrZyAtLWNvbmZpZ3VyZSBvciB0aGUgY29uZmlndXJlXG4iCisibWVudSBvcHRpb24gaW4gZHNlbGVjdCBmb3IgdGhlbSB0byB3b3JrOlxuIgorbXNnc3RyICIiCisi4L2g4L284L2C4LyL4L2C4L2y4LyL4L2Q4L204L2Y4LyL4L2m4L6S4L6y4L2y4L2j4LyL4L2a4L204LyL4L2W4L2k4L204L2W4LyL4L2m4L6f4L264LyL4L2h4L284L2R4LyLIOC9keC9uuC8i+C9oOC9luC9keC9neC8i+C9keC8i+C9keC8i+C9muC9tOC9k+C8i+C9ouC9suC9mOC8i+C9puC+kuC+suC9suC9guC8i+C9mOC8i+C9oOC9luC9keC8i+C9luC9puC8jVxuIgorIuC9oOC9keC9suC8i+C9muC9tOC8iyDgvYHgvbzgvYTgvIvgvZrgvbTgvaDgvbLgvIvgvZHgvbzgvZPgvIvgvaPgvbTgvIvgvaPgvbHgvIvgvaDgvZbgvZHgvIvgvZbgvYXgvbTgvYLgvIvgvZPgvbLgvaDgvbLgvIvgvZHgvbzgvZPgvIvgvaPgvbTgvIsgXG4iCisiZHBrZyAtLWNvbmZpZ3VyZSDgvaHgvYTgvIvgvZPgvIsg4L2m4L264L2j4LyL4L2g4L2Q4L204LyL4L2Y4L2y4LyL4L2g4L2W4L2R4LyL4L2T4L2y4LyL4L2T4L2E4LyL4L2C4L2y4LyL4L2i4L2y4L2Y4LyL4L2m4L6S4L6y4L2y4L2C4LyL4L2R4L2A4L2i4LyL4L2G4LyL4L2C4L2R4L2Y4LyL4L2B4LyLIOC9o+C9guC8i+C9o+C9uuC9k+C8i+C9kOC9oOC9luC8i+C9kOC9vOC9guC8i+C9ouC9suC9mOC8iyIKKyLgvabgvpLgvrLgvbLgvYLgvIvgvaDgvZbgvZHgvIvgvZHgvYLgvbw6XG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6ODcKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgb25seSBoYWxmIGNvbmZpZ3VyZWQsIHByb2JhYmx5IGR1ZSB0byBwcm9ibGVtc1xuIgorImNvbmZpZ3VyaW5nIHRoZW0gdGhlIGZpcnN0IHRpbWUuICBUaGUgY29uZmlndXJhdGlvbiBzaG91bGQgYmUgcmV0cmllZCB1c2luZ1xuIgorImRwa2cgLS1jb25maWd1cmUgPHBhY2thZ2U+IG9yIHRoZSBjb25maWd1cmUgbWVudSBvcHRpb24gaW4gZHNlbGVjdDpcbiIKK21zZ3N0ciAiIgorIuC9oOC9vOC9guC8i+C9guC9suC8i+C9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8i+C9muC9tOC8i+C9leC+seC9uuC9keC8i+C9gOC8i+C9ouC+kOC+seC9hOC9mOC8i+C9heC9suC9guC8i+C9ouC9suC9mOC8i+C9puC+kuC+suC9suC9guC8i+C9oOC9luC9keC8i+C9oeC9vOC9keC8iyDgvZHgvbrgvIvgvaHgvYTgvItcbiIKKyLgvaDgvZHgvbLgvIvgvZrgvbTgvIvgvaDgvYLgvbzgvIvgvZHgvYTgvIvgvZTgvIvgvaLgvbLgvZjgvIvgvabgvpLgvrLgvbLgvYLgvIvgvaDgvZbgvZHgvIvgvZbgvaDgvbLgvIvgvZHgvYDgvaDgvIvgvYTgvaPgvIvgvaPgvbTgvIvgvZbgvaLgvp/gvbrgvZPgvIvgvajgvbLgvZPgvZjgvIvgvaDgvbzgvYTgvIvgvI0g4L2i4L2y4L2Y4LyL4L2m4L6S4L6y4L2y4L2C4LyL4L2g4L2R4L2y4LyLIFxuIgorImRwa2cgLS1jb25maWd1cmUgPOC9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8iz4g4L2h4L2E4LyL4L2T4LyLIOC9puC9uuC9o+C8i+C9oOC9kOC9tOC8i+C9mOC9suC8i+C9oOC9luC9keC8i+C9k+C9suC8i+C9k+C9hOC8i+C9guC9suC8i+C9ouC9suC9mOC8i+C9puC+kuC+suC9suC9guC8i+C9keC9gOC9ouC8i+C9huC9guC8i+C9guC9keC9mOC8i+C9geC8i+C9oOC9keC9suC8i+C9o+C9guC8iyIKKyLgvaPgvbrgvZPgvIvgvaDgvZDgvZbgvIvgvZDgvbzgvYLgvIvgvaPgvbzgvYLgvIvgvaDgvZbgvZHgvIvgvaLgvqngvbzgvaPgvIvgvZbgvabgvpDgvrHgvbrgvZHgvIvgvZHgvYLgvbw6XG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6OTQKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgb25seSBoYWxmIGluc3RhbGxlZCwgZHVlIHRvIHByb2JsZW1zIGR1cmluZ1xuIgorImluc3RhbGxhdGlvbi4gIFRoZSBpbnN0YWxsYXRpb24gY2FuIHByb2JhYmx5IGJlIGNvbXBsZXRlZCBieSByZXRyeWluZyBpdDtcbiIKKyJ0aGUgcGFja2FnZXMgY2FuIGJlIHJlbW92ZWQgdXNpbmcgZHNlbGVjdCBvciBkcGtnIC0tcmVtb3ZlOlxuIgorbXNnc3RyICIiCisi4L2g4L284L2C4LyL4L2C4L2y4LyL4L2Q4L204L2Y4LyL4L2m4L6S4L6y4L2y4L2j4LyL4L2a4L204LyL4L2V4L6x4L264L2R4LyL4L2A4LyL4L2i4L6Q4L6x4L2E4L2Y4LyL4L2F4L2y4L2C4LyL4L2C4L2e4L2y4LyL4L2W4L2Z4L204L2C4L2m4LyL4L2g4L2W4L2R4LyL4L2h4L284L2R4L2U4LyL4L2o4L2y4L2T4LyLIOC9oOC9keC9suC8i+C9oeC9hOC8i+C9guC9nuC9suC8i+C9luC9meC9tOC9guC9puC8i+C9oOC9luC9keC8i+C9luC9oOC9suC8i+C9puC+kOC9luC9puC8i+C9gOC+seC9suC8i+C9keC9gOC9oOC8iyIKKyLgvYTgvaPgvIvgvZrgvbTgvIvgvaPgvbTgvIvgvZbgvaLgvp/gvbrgvZPgvI1cbiIKKyLgvYLgvZ7gvbLgvIvgvZbgvZngvbTgvYLgvabgvIvgvaDgvZHgvbLgvIvgvaPgvbzgvYLgvIvgvaDgvZbgvZHgvIvgvaLgvqngvbzgvaPgvIvgvZbgvabgvpDgvrHgvbrgvZHgvIvgvZDgvbzgvYLgvIvgvaPgvabgvIvgvYLgvZ7gvbLgvIvgvZbgvZngvbTgvYLgvabgvIvgvaDgvZbgvZHgvIvgvZrgvbTgvYLgvabgvI1cbiIKKyLgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIvgvZrgvbTgvIvgvabgvbrgvaPgvIvgvaDgvZDgvbTgvIvgvZjgvbLgvIvgvaDgvZbgvZHgvIvgvZPgvbLgvIvgvaHgvYTgvIvgvZPgvItkcGtnIC0tcmVtb3ZlIOC9o+C9guC8i+C9o+C9uuC9k+C8i+C9oOC9kOC9luC8i+C9kOC9vOC9guC8i+C9ouC+qeC8i+C9luC9puC+kOC+suC9keC8i+C9guC9j+C9hOC8i+C9muC9tOC9guC9puC8izpcbiIKKworIzogc3JjL2VucXVpcnkuYzoxMDEKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgYXdhaXRpbmcgcHJvY2Vzc2luZyBvZiB0cmlnZ2VycyB0aGF0IHRoZXlcbiIKKyJoYXZlIGFjdGl2YXRlZCBpbiBvdGhlciBwYWNrYWdlcy4gIFRoaXMgcHJvY2Vzc2luZyBjYW4gYmUgcmVxdWVzdGVkIHVzaW5nXG4iCisiZHNlbGVjdCBvciBkcGtnIC0tY29uZmlndXJlIC0tcGVuZGluZyAob3IgZHBrZyAtLXRyaWdnZXJzLW9ubHkpOlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTA4Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgaGF2ZSBiZWVuIHRyaWdnZXJlZCwgYnV0IHRoZSB0cmlnZ2VyIHByb2Nlc3NpbmdcbiIKKyJoYXMgbm90IHlldCBiZWVuIGRvbmUuICBUcmlnZ2VyIHByb2Nlc3NpbmcgY2FuIGJlIHJlcXVlc3RlZCB1c2luZ1xuIgorImRzZWxlY3Qgb3IgZHBrZyAtLWNvbmZpZ3VyZSAtLXBlbmRpbmcgKG9yIGRwa2cgLS10cmlnZ2Vycy1vbmx5KTpcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZW5xdWlyeS5jOjEzNyBzcmMvZW5xdWlyeS5jOjIxMSBzcmMvZW5xdWlyeS5jOjI5MiBzcmMvZW5xdWlyeS5jOjM3MworIzogc3JjL2VucXVpcnkuYzo0NjAgc3JjL3NlbGVjdC5jOjk4IHNyYy9zZWxlY3QuYzoxNjQgc3JjL3RyaWdjbWQuYzoxOTkKKyM6IHNyYy91cGRhdGUuYzo0OCBzcmMvdXBkYXRlLmM6MTEzIGRwa2ctc3BsaXQvcXVldWUuYzoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyB0YWtlcyBubyBhcmd1bWVudHMiCittc2dzdHIgIi0tJXMg4L2C4L2y4LyL4L2m4L6S4L6y4L204L2W4LyL4L2i4L6f4L2C4L2m4LyL4L2C4L2F4L2y4L2C4LyL4L2h4L2E4LyL4L2Y4L2y4LyL4L2g4L2W4L2CIgorCisjOiBzcmMvZW5xdWlyeS5jOjE1MgorbXNnaWQgIiIKKyJBbm90aGVyIHByb2Nlc3MgaGFzIGxvY2tlZCB0aGUgZGF0YWJhc2UgZm9yIHdyaXRpbmcsIGFuZCBtaWdodCBjdXJyZW50bHkgYmVcbiIKKyJtb2RpZnlpbmcgaXQsIHNvbWUgb2YgdGhlIGZvbGxvd2luZyBwcm9ibGVtcyBtaWdodCBqdXN0IGJlIGR1ZSB0byB0aGF0LlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTkxCisjLCBmdXp6eQorI3wgbXNnaWQgIjx1bmtub3duPiIKK21zZ2N0eHQgInNlY3Rpb24iCittc2dpZCAiPHVua25vd24+IgorbXNnc3RyICI84L2Y4LyL4L2k4L264L2m4L2U4LyLPiIKKworIzogc3JjL2VucXVpcnkuYzoyNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiICVkIGluICVzOiAiCittc2dzdHIgIiAlZCAgJXMg4L2T4L2E4LyLOiAiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MjY2CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIgJWQgcGFja2FnZXMsIGZyb20gdGhlIGZvbGxvd2luZyBzZWN0aW9uczoiCittc2dpZCAiICVkIHBhY2thZ2UsIGZyb20gdGhlIGZvbGxvd2luZyBzZWN0aW9uOiIKK21zZ2lkX3BsdXJhbCAiICVkIHBhY2thZ2VzLCBmcm9tIHRoZSBmb2xsb3dpbmcgc2VjdGlvbnM6IgorbXNnc3RyWzBdICIgJWQg4L2Q4L204L2Y4LyL4L2m4L6S4L6y4L2y4L2j4LyL4L2a4L204LyLIOC9oOC9vOC9guC8i+C9guC9suC8i+C9keC9luC+seC9uuC8i+C9muC9k+C8i+C9muC9tOC8i+C9o+C9puC8izoiCittc2dzdHJbMV0gIiAlZCDgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIvgvZrgvbTgvIsg4L2g4L284L2C4LyL4L2C4L2y4LyL4L2R4L2W4L6x4L264LyL4L2a4L2T4LyL4L2a4L204LyL4L2j4L2m4LyLOiIKKworIzogc3JjL2VucXVpcnkuYzozMDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJWZXJzaW9uIG9mIGRwa2cgd2l0aCB3b3JraW5nICVzIHN1cHBvcnQgbm90IHlldCBjb25maWd1cmVkLlxuIgorIiBQbGVhc2UgdXNlICdkcGtnIC0tY29uZmlndXJlIGRwa2cnLCBhbmQgdGhlbiB0cnkgYWdhaW4uXG4iCittc2dzdHIgIiIKKyJkcGtnIOC9guC9suC8i+C9kOC9vOC9k+C8i+C9ouC9suC9mOC8i+C9qOC9suC8i+C9lOC9vOC9heC8i+C9ouC+kuC+seC9luC8i+C9puC+kOC+seC9vOC9ouC8i+C9keC9hOC8i+C9guC9heC9suC9guC8i+C9geC9ouC8i+C9o+C9seC8i+C9oOC9luC9keC8i+C9mOC9suC8i+C9keC9uuC8i+C9keC8i+C9o+C+n+C9vOC8i+C9oeC9hOC8i+C9ouC9suC9mOC8i+C9puC+kuC+suC9suC9guC8i+C9mOC8i+C9oOC9luC9keC8i+C9luC9puC8jVxuIgorImBkcGtnIC0tY29uZmlndXJlIGRwa2cnIOC9o+C9guC8i+C9o+C9uuC9k+C8i+C9oOC9kOC9luC8i+C9nuC9suC9k+C9mOC8i+C9o+C9puC8iyDgvaPgvbzgvYLgvIvgvaDgvZbgvZHgvIvgvaLgvqngvbzgvaPgvIvgvZbgvabgvpDgvrHgvbrgvZHgvIvgvYLgvZPgvYTgvIvgvI1cbiIKKworIzogc3JjL2VucXVpcnkuYzozMTAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImRwa2cgbm90IHJlY29yZGVkIGFzIGluc3RhbGxlZCwgY2Fubm90IGNoZWNrIGZvciAlcyBzdXBwb3J0IVxuIgorbXNnc3RyICIiCisiZHBrZyDgvaDgvZHgvbLgvIvgvYLgvZ7gvbLgvIvgvZbgvZngvbTgvYLgvabgvIvgvaDgvZbgvZHgvIvgvaHgvbzgvZHgvZTgvIvgvabgvqbgvbrgvIvgvZHgvrLgvZPgvIvgvZDgvbzgvIvgvZjgvIvgvZbgvYDgvbzgvZHgvIsg4L2o4L2y4LyL4L2U4L284L2F4LyL4L2i4L6S4L6x4L2W4LyL4L2m4L6Q4L6x4L284L2i4LyL4L2i4L264LyL4L2i4L264L2g4L2y4LyL4L2R4L284L2T4LyL4L2j4L204LyL4L2e4L2y4L2W4LyL4L2R4L2U4L6x4L2R4LyL4L2g4L2W4L2R4LyL4L2Y4L2y4LyLIgorIuC9muC9tOC9guC9piAhXG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzIxCittc2dpZCAiUHJlLURlcGVuZHMgZmllbGQiCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzozMjkKK21zZ2lkICJlcG9jaCIKK21zZ3N0ciAiIgorCisjOiBzcmMvZW5xdWlyeS5jOjMzNworbXNnaWQgImxvbmcgZmlsZW5hbWVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzQ2Cittc2dpZCAibXVsdGlwbGUgQ29uZmxpY3RzIGFuZCBSZXBsYWNlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZW5xdWlyeS5jOjQzNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogY2Fubm90IHNlZSBob3cgdG8gc2F0aXNmeSBwcmUtZGVwZW5kZW5jeTpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorImRwa2c6IOC9puC+lOC9vOC9k+C8iy3gvaLgvp/gvbrgvZPgvIvgvaDgvZbgvrLgvbrgvaPgvIvgvYLgvIvgvZHgvbrgvIvgvabgvqbgvbrgvIvgvYTgvaPgvIvgvaLgvYTgvabgvIvgvZPgvbLgvIvgvajgvbLgvZPgvIvgvZPgvIvgvZbgvaPgvp/gvIvgvZjgvbLgvIvgvZrgvbTgvYLgvabgvI1cbiIKKyIgJXNcbiIKKworIzogc3JjL2VucXVpcnkuYzo0MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHNhdGlzZnkgcHJlLWRlcGVuZGVuY2llcyBmb3IgJS4yNTBzICh3YW50ZWQgZHVlIHRvICUuMjUwcykiCittc2dzdHIgIiUuMjUwcyDgvYLgvbLgvIvgvZHgvbzgvZPgvIvgvaPgvbTgvIvgvabgvpTgvbzgvZPgvIst4L2i4L6f4L264L2T4LyL4L2g4L2W4L6y4L264L2j4LyL4L2E4L2j4LyL4L2i4L2E4L2m4LyL4L2Y4L2y4LyL4L2a4L204L2C4L2m4LyLKCUuMjUwcyDgvYLgvbLgvIvgvZHgvbzgvZPgvIvgvaPgvabgvIvgvZHgvYLgvbzgvZTgvIspIgorCisjOiBzcmMvZW5xdWlyeS5jOjQ3MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAib2Jzb2xldGUgb3B0aW9uICctLSVzJywgcGxlYXNlIHVzZSAnLS0lcycgaW5zdGVhZC4iCittc2dzdHIgIuC9ieC9uuC9k+C8i+C9luC9ouC+oeC8izrgvZXgvZPgvIvgvZjgvbrgvZHgvIvgvYLgvZHgvZjgvIvgvYHgvIsgYC0tJXMnXG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6NTE5Cittc2dpZCAiIgorIi0tY29tcGFyZS12ZXJzaW9ucyB0YWtlcyB0aHJlZSBhcmd1bWVudHM6IDx2ZXJzaW9uPiA8cmVsYXRpb24+IDx2ZXJzaW9uPiIKK21zZ3N0ciAiIgorIi0tY29tcGFyZS12ZXJzaW9ucyDgvYLgvbLgvabgvIvgvabgvpLgvrLgvbTgvZbgvIvgvaLgvp/gvYLgvabgvIvgvYLgvabgvbTgvZjgvIvgvaDgvZbgvYLgvZTgvIvgvajgvbLgvZPgvIs6IDzgvZDgvbzgvZPgvIvgvaLgvbLgvZjgvIs+IDzgvZjgvZDgvbTgvZPgvIvgvaDgvZbgvrLgvbrgvaPgvIs+IDzgvZDgvbzgvZPgvIvgvaLgvbLgvZjgvIs+IgorCisjOiBzcmMvZW5xdWlyeS5jOjUyNAorbXNnaWQgIi0tY29tcGFyZS12ZXJzaW9ucyBiYWQgcmVsYXRpb24iCittc2dzdHIgIi0tY29tcGFyZS12ZXJzaW9ucyDgvZbgvrHgvYTgvIvgvYngvbrgvabgvIvgvZjgvZDgvbTgvZPgvIvgvaDgvZbgvrLgvbrgvaPgvI0iCisKKyM6IHNyYy9lbnF1aXJ5LmM6NTI5IHNyYy9lbnF1aXJ5LmM6NTMxIHNyYy9lbnF1aXJ5LmM6NTQwIHNyYy9lbnF1aXJ5LmM6NTQyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ2ZXJzaW9uICclcycgaGFzIGJhZCBzeW50YXg6ICVzIgorbXNnc3RyICLgvZDgvbzgvZPgvIvgvaLgvbLgvZjgvIsg4L2o4L264LyLIOC9o+C9tOC8i+C9muC9suC9guC8i+C9puC+puC+seC9vOC9ouC8i+C9luC+seC9hOC8i+C9ieC9uuC9puC8i+C9oOC9keC9tOC9guC8izogJXNcbiIKKworIzogc3JjL2Vycm9ycy5jOjYwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogZXJyb3IgcHJvY2Vzc2luZyAlcyAoLS0lcyk6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKyIlczogJXMgKC0tJXMpIOC9o+C9puC8i+C9puC+puC+seC9vOC9ouC8i+C9oOC9luC9keC9neC8i+C9keC8i+C9oOC9m+C9vOC9o+C8i+C9luC8izpcbiIKKyIgJXNcbiIKKworIzogc3JjL2Vycm9ycy5jOjY4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiZHBrZzogZmFpbGVkIHRvIGFsbG9jYXRlIG1lbW9yeSBmb3IgbmV3IGVudHJ5IGluIGxpc3Qgb2YgZmFpbGVkIHBhY2thZ2VzLiIKK21zZ2lkICIiCisiJXM6IGZhaWxlZCB0byBhbGxvY2F0ZSBtZW1vcnkgZm9yIG5ldyBlbnRyeSBpbiBsaXN0IG9mIGZhaWxlZCBwYWNrYWdlczogJXMiCittc2dzdHIgIiIKKyJkcGtnOiDgvaDgvZDgvbTgvabgvIvgvaTgvbzgvaLgvIvgvZbgvrHgvbTgvYTgvIvgvaHgvbzgvZHgvIvgvZjgvbLgvIvgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIvgvZrgvbTgvaDgvbLgvIvgvZDgvbzgvIvgvaHgvbLgvYLgvIvgvZPgvYTgvIvgvYLgvbLgvIvgvZDgvbzgvIvgvZbgvYDgvbzgvZHgvIvgvYLgvabgvaLgvZTgvIvgvYLgvrHgvbLgvIvgvZHgvbzgvZPgvIvgvaPgvbTgvIvgvZHgvrLgvZPgvIvgvZrgvZHgvIvgvabgvqTgvrLgvbzgvZHgvIvgvZPgvbLgvIvgvaDgvZDgvbTgvabgvIvgvaTgvbzgvaLgvIsiCisi4L2W4L6x4L204L2E4LyL4L2h4L284L2R4LyNIgorCisjOiBzcmMvZXJyb3JzLmM6NzkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImRwa2c6IHRvbyBtYW55IGVycm9ycywgc3RvcHBpbmdcbiIKK21zZ2lkICIlczogdG9vIG1hbnkgZXJyb3JzLCBzdG9wcGluZ1xuIgorbXNnc3RyICJkcGtnOiDgvaDgvZvgvbzgvaPgvIvgvZbgvIvgvaPgvbrgvIvgvaTgvIsg4L2W4L2A4L2C4LyL4L2R4L28XG4iCisKKyM6IHNyYy9lcnJvcnMuYzo4NworbXNnaWQgIkVycm9ycyB3ZXJlIGVuY291bnRlcmVkIHdoaWxlIHByb2Nlc3Npbmc6XG4iCittc2dzdHIgIuC9o+C9puC8i+C9puC+puC+seC9vOC9ouC8i+C9oOC9luC9keC8i+C9luC9oOC9suC8i+C9puC+kOC9luC9puC8i+C9o+C9m+C9vOC9o+C8i+C9luC8i+C9muC9tOC8i+C9guC9keC9vOC9hOC8i+C9kOC9tOC9guC8i+C9luC+seC9tOC9hOC8i+C9oeC9vOC9keC9lOC8izpcbiIKKworIzogc3JjL2Vycm9ycy5jOjk0Cittc2dpZCAiUHJvY2Vzc2luZyB3YXMgaGFsdGVkIGJlY2F1c2UgdGhlcmUgd2VyZSB0b28gbWFueSBlcnJvcnMuXG4iCittc2dzdHIgIuC9o+C9puC8i+C9puC+puC+seC9vOC9ouC8i+C9oOC9luC9keC8i+C9k+C9suC8i+C9oOC9keC9suC8i+C9luC9ouC8i+C9kOC9uuC9mOC8i+C9o+C9tOC9puC8i+C9oeC9vOC9keC8iyDgvYLgvIvgvYXgvbLgvIvgvabgvqbgvbrgvIvgvZ/gvbrgvaLgvIvgvZbgvIvgvYXgvbLgvZPgvIsg4L2R4L264LyL4L2T4L2E4LyL4L2j4L204LyL4L2g4L2b4L284L2j4LyL4L2W4LyL4L2j4L264LyL4L2k4LyL4L2g4L2R4L204L2CXG4iCisKKyM6IHNyYy9lcnJvcnMuYzoxMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSAlcyB3YXMgb24gaG9sZCwgcHJvY2Vzc2luZyBpdCBhbnl3YXkgYXMgeW91IHJlcXVlc3RlZFxuIgorbXNnc3RyICLgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIsgJXMg4L2g4L2R4L2y4LyL4L2g4L2G4L2E4LyL4L2m4L6f4L264LyL4L2h4L284L2R4LyLIOC9oOC9keC9suC8i+C9geC+seC9vOC9keC8i+C9ouC9hOC8i+C9guC9suC9puC8i+C9nuC9tOC8i+C9luC8i+C9oOC9luC9keC8i+C9keC9vOC8i+C9luC9n+C9tOC9mOC8i+C9o+C9puC8i+C9puC+puC+seC9vOC9ouC8i+C9oOC9luC9keC8i+C9keC9vOC8jVxuIgorCisjOiBzcmMvZXJyb3JzLmM6MTA5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJQYWNrYWdlICVzIGlzIG9uIGhvbGQsIG5vdCB0b3VjaGluZyBpdC4gIFVzZSAtLWZvcmNlLWhvbGQgdG8gb3ZlcnJpZGUuXG4iCittc2dzdHIgIiIKKyLgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIsgJXMg4L2g4L2R4L2y4LyL4L2g4L2G4L2E4LyL4L2g4L2R4L2y4LyL4L2h4L284L2R4L2U4LyL4L2o4L2y4L2T4LyLICDgvZjgvIvgvabgvqTgvrLgvbzgvYLgvIvgvZTgvaLgvIvgvZbgvZ7gvYLgvIvgvZHgvbzgvI0g4L2f4L204L2i4LyL4L2W4L2e4L2C4LyL4L2g4L2W4L2R4LyL4L2T4L2y4L2g4L2y4LyL4L2R4L284L2T4LyL4L2j4L204LyLIC0tZm9yY2UtaG9sZCAiCisi4L2j4L2C4LyL4L2j4L264L2T4LyL4L2g4L2Q4L2W4LyNXG4iCisKKyM6IHNyYy9lcnJvcnMuYzoxMTkKKyMsIGZ1enp5Cittc2dpZCAib3ZlcnJpZGluZyBwcm9ibGVtIGJlY2F1c2UgLS1mb3JjZSBlbmFibGVkOiIKK21zZ3N0ciAiIgorImRwa2cgLeC9guC9suC8i+C9ieC9uuC9k+C8i+C9luC9ouC+oeC8iyDgvZHgvYDgvaDgvIvgvYTgvaPgvIvgvaDgvZHgvbLgvIvgvZ7gvbTgvaLgvIvgvZbgvZ7gvYLgvIvgvaDgvZbgvZHgvIvgvZHgvbzgvIsg4L2C4LyL4L2F4L2y4LyL4L2m4L6m4L264LyL4L2f4L264L2i4LyL4L2W4LyL4L2F4L2y4L2T4LyLIC0tZm9yY2XgvaDgvZHgvbLgvIvgvaPgvpXgvbzgvYLgvabgvIvgvYXgvZPgvIvgvZbgvZ/gvbzgvIsiCisi4L2T4L204L2COlxuIgorIiAiCisKKyM6IHNyYy9maWxlc2RiLmM6MzA3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSBgJS4yNTBzJyIKK21zZ3N0ciAi4L2Q4L204L2Y4LyL4L2m4L6S4L6y4L2y4L2j4LyLIGAlLjI1MHMnIOC9guC9suC8i+C9keC9vOC9k+C8i+C9o+C9tOC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9muC9tOC9oOC9suC8i+C9kOC9vOC8i+C9oeC9suC9guC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9geC8i+C9leC+seC9uuC8i+C9mOC8i+C9muC9tOC9guC9puC8jSIKKworIzogc3JjL2ZpbGVzZGIuYzozMTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcycgbWlzc2luZywgYXNzdW1pbmcgcGFja2FnZSBoYXMgbm8gZmlsZXMgIgorImN1cnJlbnRseSBpbnN0YWxsZWQuIgorbXNnc3RyICIiCisiZHBrZzog4L2g4L2a4L204L2W4LyL4L2F4L2T4LyL4L2J4L264L2T4LyL4L2W4L2i4L6h4LyLOiDgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIsgYCUuMjUwcycg4L2C4L2y4LyL4L2R4L284L2T4LyL4L2j4L204LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2a4L204L2g4L2y4LyL4L2Q4L284LyL4L2h4L2y4L2C4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2W4L2i4L6z4L2C4LyL4L2m4L6f4L284L2i4LyL4L2e4L204L2C4L2m4LyLIgorIuC9k+C9tOC9guC8iyDgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIvgvaPgvbTgvIvgvZHgvIvgvaPgvp/gvbzgvIvgvYLgvZ7gvbLgvIvgvZbgvZngvbTgvYLgvabgvIvgvaDgvZbgvZHgvIvgvZjgvbLgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIvgvZrgvbTgvIvgvZjgvbrgvZHgvZTgvIvgvabgvqbgvbrgvIvgvZrgvbzgvZHgvIvgvZHgvZTgvYLgvIvgvabgvp/gvbrgvI1cbiIKKworIzogc3JjL2ZpbGVzZGIuYzozMjIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAnJS4yNTBzJyIKK21zZ3N0ciAi4L2Q4L204L2Y4LyL4L2m4L6S4L6y4L2y4L2j4LyLIGAlLjI1MHMnIOC9guC9suC8i+C9keC9vOC9k+C8i+C9o+C9tOC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9muC9tOC9oOC9suC8i+C9kOC9vOC8i+C9oeC9suC9guC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9geC8i+C9leC+seC9uuC8i+C9mOC8i+C9muC9tOC9guC9puC8jSIKKworIzogc3JjL2ZpbGVzZGIuYzozMzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGVzIGxpc3QgZm9yIHBhY2thZ2UgYCUuMjUwcyciCittc2dpZCAicmVhZGluZyBmaWxlcyBsaXN0IGZvciBwYWNrYWdlICclLjI1MHMnIgorbXNnc3RyICLgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIsgYCUuMjUwcycg4L2C4L2y4LyL4L2R4L284L2T4LyL4L2j4L204LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2a4L204L2g4L2y4LyL4L2Q4L284LyL4L2h4L2y4L2CIgorCisjOiBzcmMvZmlsZXNkYi5jOjMzNgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICclLjI1MHMnIGlzIG1pc3NpbmcgZmluYWwgbmV3bGluZSIKK21zZ3N0ciAi4L2Q4L204L2Y4LyL4L2m4L6S4L6y4L2y4L2j4LyLIGAlLjI1MHMnIOC9guC9suC8i+C9keC9vOC9k+C8i+C9o+C9tOC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9muC9tOC9oOC9suC8i+C9kOC9vOC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9gOC+seC9suC8i+C9k+C9hOC8i+C9k+C8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9mOC9suC9hOC8i+C9puC+n+C9vOC9hOC9mOC8i+C9oOC9keC9tOC9giIKKworIzogc3JjL2ZpbGVzZGIuYzozNDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlIGAlLjI1MHMnIGNvbnRhaW5zIGVtcHR5IGZpbGVuYW1lIgorbXNnc3RyICLgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIsgYCUuMjUwcycg4L2C4L2y4LyL4L2R4L284L2T4LyL4L2j4L204LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2a4L204L2g4L2y4LyL4L2Q4L284LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2A4L6x4L2y4LyL4L2T4L2E4LyL4L2T4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2Y4L2y4L2E4LyL4L2m4L6f4L284L2E4L2Y4LyL4L2g4L2R4L204L2CIgorCisjOiBzcmMvZmlsZXNkYi5jOjM1MgorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSBgJS4yNTBzJyIKK21zZ3N0ciAi4L2Q4L204L2Y4LyL4L2m4L6S4L6y4L2y4L2j4LyLIGAlLjI1MHMnIOC9guC9suC8i+C9keC9vOC9k+C8i+C9o+C9tOC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9muC9tOC9oOC9suC8i+C9kOC9vOC8i+C9oeC9suC9guC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9geC8i+C9luC9puC+oeC9mOC8i+C9keC8i+C9oOC9m+C9vOC9o+C8i+C9luC8jSIKKworIzogc3JjL2ZpbGVzZGIuYzo0NjIKK21zZ2lkICIoUmVhZGluZyBkYXRhYmFzZSAuLi4gIgorbXNnc3RyICIo4L2C4L2T4L2R4LyL4L2m4L6h4L204L2R4LyL4L2C4L2e4L2y4LyL4L2i4L6f4L264L2T4LyL4L2j4L634L2C4LyL4L2R4L284LyLLi4uIgorCisjOiBzcmMvZmlsZXNkYi5jOjQ4MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiJWQgZmlsZXMgYW5kIGRpcmVjdG9yaWVzIGN1cnJlbnRseSBpbnN0YWxsZWQuKVxuIgorbXNnaWQgIiVkIGZpbGUgb3IgZGlyZWN0b3J5IGN1cnJlbnRseSBpbnN0YWxsZWQuKVxuIgorbXNnaWRfcGx1cmFsICIlZCBmaWxlcyBhbmQgZGlyZWN0b3JpZXMgY3VycmVudGx5IGluc3RhbGxlZC4pXG4iCittc2dzdHJbMF0gIiVkIOC9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9muC9tOC8i+C9keC9hOC8i+C9puC+o+C9vOC9keC8i+C9kOC9vOC8i+C9muC9tOC8i+C9keC8i+C9o+C+n+C9vOC8i+C9guC9nuC9suC8i+C9luC9meC9tOC9guC9puC8i+C9oOC9luC9keC8i+C9oeC9vOC9keC8jSlcbiIKK21zZ3N0clsxXSAiJWQg4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2a4L204LyL4L2R4L2E4LyL4L2m4L6j4L284L2R4LyL4L2Q4L284LyL4L2a4L204LyL4L2R4LyL4L2j4L6f4L284LyL4L2C4L2e4L2y4LyL4L2W4L2Z4L204L2C4L2m4LyL4L2g4L2W4L2R4LyL4L2h4L284L2R4LyNKVxuIgorCisjOiBzcmMvZmlsZXNkYi5jOjUxNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICIiCisi4L2Q4L204L2Y4LyL4L2m4L6S4L6y4L2y4L2j4LyLICVzIOC9guC9suC8i+C9keC9vOC9k+C8i+C9o+C9tOC8i+C9keC9tOC9puC8i+C9mOC9kOC9tOC9k+C8i+C9luC9n+C9vOC8i+C9oeC9vOC9keC8i+C9lOC9oOC9suC8i+C9kOC9vOC8i+C9oeC9suC9guC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9guC9puC9ouC8i+C9luC9puC+kOC+suC9tOC9k+C8i+C9oOC9luC9keC8i+C9k+C9suC8i+C9oOC9kOC9tOC9puC8i+C9pOC9vOC9ouC8i+C9luC+seC9tOC9hOC8i+C9oeC9vOC9keC8jSIKKworIzogc3JjL2ZpbGVzZGIuYzo1MjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIHRvIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICLgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIsgJXMg4L2C4L2y4LyL4L2R4L284L2T4LyL4L2j4L204LyL4L2R4L204L2m4LyL4L2Y4L2Q4L204L2T4LyL4L2W4L2f4L284LyL4L2h4L284L2R4LyL4L2U4L2g4L2y4LyL4L2Q4L284LyL4L2h4L2y4L2C4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2j4L204LyL4L2g4L2W4L6y4L2y4LyL4L2T4L2y4LyL4L2g4L2Q4L204L2m4LyL4L2k4L284L2i4LyL4L2W4L6x4L204L2E4LyL4L2h4L284L2R4LyNIgorCisjOiBzcmMvZmlsZXNkYi5jOjUyOAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZmx1c2ggdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIuC9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8iyAlcyDgvYLgvbLgvIvgvZHgvbzgvZPgvIvgvaPgvbTgvIvgvZHgvbTgvabgvIvgvZjgvZDgvbTgvZPgvIvgvZbgvZ/gvbzgvIvgvaHgvbzgvZHgvIvgvZTgvaDgvbLgvIvgvZDgvbzgvIvgvaHgvbLgvYLgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIsg4L2W4L2k4L2j4LyL4L2T4L2y4LyL4L2g4L2Q4L204L2m4LyL4L2k4L284L2i4LyL4L2W4L6x4L204L2E4LyL4L2h4L284L2R4LyNIgorCisjOiBzcmMvZmlsZXNkYi5jOjUzMAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gc3luYyB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAiIgorIuC9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8iyAlcyDgvYLgvbLgvIvgvZHgvbzgvZPgvIvgvaPgvbTgvIvgvZHgvbTgvabgvIvgvZjgvZDgvbTgvZPgvIvgvZbgvZ/gvbzgvIvgvaHgvbzgvZHgvIvgvZTgvaDgvbLgvIvgvZDgvbzgvIvgvaHgvbLgvYLgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIsg4L2Y4L2J4L2Y4LyL4L2W4L6x4L204L2E4LyL4L2g4L2W4L2R4LyL4L2T4L2y4LyL4L2g4L2Q4L204L2m4LyL4L2k4L284L2i4LyL4L2W4L6x4L204L2E4LyL4L2h4L284L2R4L2U4LyNIgorCisjOiBzcmMvZmlsZXNkYi5jOjUzMworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2xvc2UgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIuC9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8iyAlcyDgvYLgvbLgvIvgvZHgvbzgvZPgvIvgvaPgvbTgvIvgvZHgvbTgvabgvIvgvZjgvZDgvbTgvZPgvIvgvZbgvZ/gvbzgvIvgvaHgvbzgvZHgvIvgvZTgvaDgvbLgvIvgvZDgvbzgvIvgvaHgvbLgvYLgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIvgvYHgvIvgvZbgvabgvqHgvZjgvIvgvZPgvbLgvIvgvaPgvbTgvIvgvaDgvZDgvbTgvabgvIvgvaTgvbzgvaLgvZbgvrHgvbTgvYTgvIvgvaHgvbzgvZHgvI0iCisKKyM6IHNyYy9maWxlc2RiLmM6NTM1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBpbnN0YWxsIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICIiCisi4L2Q4L204L2Y4LyL4L2m4L6S4L6y4L2y4L2j4LyLICVzIOC9guC9suC8i+C9keC9vOC9k+C8i+C9o+C9tOC8i+C9keC9tOC9puC8i+C9mOC9kOC9tOC9k+C8i+C9luC9n+C9vOC8i+C9oeC9vOC9keC8i+C9lOC9oOC9suC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9muC9tOC9oOC9suC8i+C9kOC9vOC8i+C9oeC9suC9guC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9guC9nuC9suC8i+C9luC9meC9tOC9guC9puC8i+C9oOC9luC9keC8i+C9k+C9suC8i+C9o+C9tOC8i+C9oOC9kOC9tOC9puC8i+C9pOC9vOC9ouC8iyIKKyLgvZbgvrHgvbTgvYTgvIvgvaHgvZHgvbzgvI0iCisKKyM6IHNyYy9oZWxwLmM6NDgKK21zZ2lkICJub3QgaW5zdGFsbGVkIgorbXNnc3RyICLgvYLgvZ7gvbLgvIvgvZbgvZngvbTgvYLgvabgvIvgvZjgvIvgvaDgvZbgvZHgvIvgvZbgvabgvI0iCisKKyM6IHNyYy9oZWxwLmM6NDkKK21zZ2lkICJub3QgaW5zdGFsbGVkIGJ1dCBjb25maWdzIHJlbWFpbiIKK21zZ3N0ciAi4L2C4L2e4L2y4LyL4L2W4L2Z4L204L2C4L2m4LyL4L2Y4LyL4L2g4L2W4L2R4LyL4L2W4L2m4LyLIOC9keC9uuC8i+C9oOC9luC9keC9neC8i+C9keC8i+C9ouC9suC9mOC8i+C9puC+kuC+suC9suC9guC8i+C9puC+oeC9vOC9keC9lOC8i+C9qOC9suC9k+C8jSIKKworIzogc3JjL2hlbHAuYzo1MAorIywgZnV6enkKK21zZ2lkICJicm9rZW4gZHVlIHRvIGZhaWxlZCByZW1vdmFsIG9yIGluc3RhbGxhdGlvbiIKK21zZ3N0ciAi4L2i4L6p4LyL4L2W4L2m4L6Q4L6y4L2R4LyL4L2g4L2Q4L204L2m4LyL4L2k4L284L2i4LyL4L2j4L204LyL4L2i4L6f4L264L2T4LyL4L2G4L2R4LyL4L2h4L284L2R4L2U4LyNIgorCisjOiBzcmMvaGVscC5jOjUxCittc2dpZCAidW5wYWNrZWQgYnV0IG5vdCBjb25maWd1cmVkIgorbXNnc3RyICLgvZbgvaTgvbTgvZbgvIvgvaHgvbzgvZHgvIsg4L2R4L264LyL4L2g4L2W4L2R4L2d4LyL4L2R4LyL4L2i4L2y4L2Y4LyL4L2m4L6S4L6y4L2y4L2C4LyL4L2Y4LyL4L2g4L2W4L2R4LyL4L2W4L2m4LyNIgorCisjOiBzcmMvaGVscC5jOjUyCittc2dpZCAiYnJva2VuIGR1ZSB0byBwb3N0aW5zdCBmYWlsdXJlIgorbXNnc3RyICLgvZTgvbzgvabgvbLgvYrgvbLgvIvgvajgvbLgvZPgvabgvbLgvYrgvbLgvIvgvaDgvZDgvbTgvabgvIvgvaTgvbzgvaLgvIvgvaPgvbTgvIvgvaLgvp/gvbrgvZPgvIvgvYbgvZHgvIvgvaHgvbzgvZHgvZTgvI0iCisKKyM6IHNyYy9oZWxwLmM6NTMKK21zZ2lkICJhd2FpdGluZyB0cmlnZ2VyIHByb2Nlc3NpbmcgYnkgYW5vdGhlciBwYWNrYWdlIgorbXNnc3RyICIiCisKKyM6IHNyYy9oZWxwLmM6NTQKK21zZ2lkICJ0cmlnZ2VyZWQiCittc2dzdHIgIiIKKworIzogc3JjL2hlbHAuYzo1NQorbXNnaWQgImluc3RhbGxlZCIKK21zZ3N0ciAi4L2C4L2e4L2y4LyL4L2W4L2Z4L204L2C4L2m4LyL4L2g4L2W4L2R4LyL4L2h4L284L2R4L2U4LyNIgorCisjOiBzcmMvaGVscC5jOjEwNworIywgZnV6enkKK21zZ2lkICJQQVRIIGlzIG5vdCBzZXQuIgorbXNnc3RyICJkcGtnIC0g4L2g4L2b4L284L2j4LyL4L2WOiDgvaDgvYLgvrLgvbTgvaPgvIvgvaPgvZjgvIvgvaDgvZHgvbLgvIvgvYLgvZ7gvbLgvIvgvabgvpLgvrLgvbLgvYLgvIvgvZjgvIvgvaDgvZbgvZHgvIvgvZbgvabgvI1cbiIKKworIzogc3JjL2hlbHAuYzoxMjkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiclcycgbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuIgorbXNnc3RyICJkcGtnOiBgJXMnIOC9oOC9keC9suC8i+C9oOC9guC+suC9tOC9o+C8i+C9o+C9mOC8i+C9guC9tOC8i+C9mOC8i+C9oOC9kOC9vOC9luC8jVxuIgorCisjOiBzcmMvaGVscC5jOjEzOAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIiVkIGV4cGVjdGVkIHByb2dyYW0gbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuXG4iCisiJXMiCittc2dpZF9wbHVyYWwgIiIKKyIlZCBleHBlY3RlZCBwcm9ncmFtcyBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS5cbiIKKyIlcyIKK21zZ3N0clswXSAiZHBrZzogYCVzJyDgvaDgvZHgvbLgvIvgvaDgvYLgvrLgvbTgvaPgvIvgvaPgvZjgvIvgvYLgvbTgvIvgvZjgvIvgvaDgvZDgvbzgvZbgvI1cbiIKK21zZ3N0clsxXSAiZHBrZzogYCVzJyDgvaDgvZHgvbLgvIvgvaDgvYLgvrLgvbTgvaPgvIvgvaPgvZjgvIvgvYLgvbTgvIvgvZjgvIvgvaDgvZDgvbzgvZbgvI1cbiIKKworIzogc3JjL2hlbHAuYzoxNDEKKyMsIGZ1enp5Cittc2dpZCAiIgorIk5vdGU6IHJvb3QncyBQQVRIIHNob3VsZCB1c3VhbGx5IGNvbnRhaW4gL3Vzci9sb2NhbC9zYmluLCAvdXNyL3NiaW4gYW5kIC8iCisic2Jpbi4iCittc2dzdHIgIiIKKyIlZCDgvYLgvbLgvabgvIvgvaDgvYLgvrLgvbTgvaPgvIvgvaPgvZjgvIvgvYLgvbTgvIvgvZjgvIvgvaDgvZDgvbzgvZbgvIvgvZjgvbLgvIvgvaPgvabgvIvgvaLgvbLgvZjgvIso4L2a4L204LyLKeC9ouC9uuC8i+C9luC8i+C9luC9puC+kOC+seC9uuC9keC8i+C9k+C9tOC9glxuIgorIuC9qOC9uuC9k+C8i+C9luC9sjog4L2i4L6p4LyL4L2W4L2g4L2y4LyL4L2g4L2C4L6y4L204L2j4LyL4L2j4L2Y4LyL4L2g4L2R4L2y4LyL4L2C4L2y4LyL4L2T4L2E4LyL4L2T4LyLL3Vzci9sb2NhbC9zYmluLCAvdXNyL3NiaW4g4L2R4L2E4LyLIC9zYmluIOC9oOC9vOC9hOC8i+C9keC9guC9vCIKKworIzogc3JjL2hlbHAuYzoxODgKK21zZ2lkICJhZG1pbmRpciBtdXN0IGJlIGluc2lkZSBpbnN0ZGlyIGZvciBkcGtnIHRvIHdvcmsgcHJvcGVybHkiCittc2dzdHIgIiIKKworIzogc3JjL2hlbHAuYzoxOTAgc3JjL21haW4uYzo3NDcKKyMsIGZ1enp5Cittc2dpZCAidW5hYmxlIHRvIHNldGVudiBmb3Igc3VicHJvY2Vzc2VzIgorbXNnc3RyICJ2c25wcmludGYg4L2m4L2y4LyL4L2K4L264L2K4L2y4LyL4L2g4L2W4L2R4LyL4L2Y4LyL4L2a4L204L2C4L2m4LyNIgorCisjOiBzcmMvaGVscC5jOjE5MgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2hyb290IHRvIGAlLjI1MHMnIgorbXNnc3RyICJgJS4yNTBzJyDgvaPgvbTgvIvgvabgvbLgvIvgvajgvbrgvYbgvIvgvaLgvbTgvYrgvbLgvIsg4L2g4L2W4L2R4LyL4L2T4L2y4LyL4L2g4L2Q4L204L2m4LyL4L2k4L284L2i4LyL4L2W4L6x4L204L2E4LyL4L2h4L284L2R4LyNIgorCisjOiBzcmMvaGVscC5jOjE5NCBkcGtnLWRlYi9idWlsZC5jOjQ1NSBkcGtnLWRlYi9idWlsZC5jOjQ1NworIzogZHBrZy1kZWIvYnVpbGQuYzo1MzYgZHBrZy1kZWIvYnVpbGQuYzo1NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIGAlLjI1NXMnIgorbXNnc3RyICJgJS4yNTVzJyDgvaPgvbTgvIvgvabgvbLgvIvgvajgvbrgvYbgvIvgvYzgvbLgvIvgvajgvaDgvbLgvIvgvajgvaLgvIvgvaDgvZbgvZHgvIvgvZPgvbLgvIvgvaDgvZDgvbTgvabgvIvgvaTgvbzgvaLgvIvgvZbgvrHgvbTgvYTgvIvgvaHgvbzgvZHgvI0iCisKKyM6IHNyYy9oZWxwLmM6MjU2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgZXhlY3V0ZSBwZXJtaXNzaW9ucyBvbiBgJS4yNTBzJyIKK21zZ3N0ciAiYCUuMjUwcycg4L2C4L204LyL4L2j4L204LyL4L2j4L2C4LyL4L2j4L264L2T4LyL4L2g4L2Q4L2W4LyL4L2U4L2g4L2y4LyL4L2C4L2T4L2E4LyL4L2W4LyL4L2C4L2e4L2y4LyL4L2m4L6S4L6y4L2y4L2C4LyL4L2g4L2W4L2R4LyL4L2Y4LyL4L2a4L204L2C4L2m4LyNIgorCisjOiBzcmMvaGVscC5jOjI3NgorIywgZnV6enkKK21zZ2lkICJ1bmFibGUgdG8gc2V0ZW52IGZvciBtYWludGFpbmVyIHNjcmlwdCIKK21zZ3N0ciAidnNucHJpbnRmIOC9puC9suC8i+C9iuC9uuC9iuC9suC8i+C9oOC9luC9keC8i+C9mOC8i+C9muC9tOC9guC9puC8jSIKKworIzogc3JjL2hlbHAuYzozMDAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImluc3RhbGxlZCAlcyBzY3JpcHQiCittc2dzdHIgIiVzIOC9oeC9suC9guC8i+C9muC9tOC9guC9puC8i+C9ouC+meC9suC9hOC9mOC8jSIKKworIzogc3JjL2hlbHAuYzozMTMgc3JjL2hlbHAuYzozODIgc3JjL2hlbHAuYzo0NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgJXMgYCUuMjUwcyciCittc2dzdHIgIiVzIGAlLjI1MHMnIOC9puC9suC8i+C9iuC9uuC9iuC9suC8i+C9oOC9luC9keC8i+C9k+C9suC8i+C9oOC9kOC9tOC9puC8i+C9pOC9vOC9ouC8i+C9luC+seC9tOC9hOC8i+C9oeC9vOC9keC8jSIKKworIzogc3JjL2hlbHAuYzozNjggc3JjL2hlbHAuYzo0MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAibmV3ICVzIHNjcmlwdCIKK21zZ3N0ciAiJXMg4L2h4L2y4L2C4LyL4L2a4L204L2C4L2m4LyL4L2C4L2m4L2i4L2U4LyNIgorCisjOiBzcmMvaGVscC5jOjQwMgorIywgYy1mb3JtYXQKK21zZ2lkICJvbGQgJXMgc2NyaXB0IgorbXNnc3RyICIlcyDgvaHgvbLgvYLgvIvgvZrgvbTgvYLgvabgvIvgvaLgvpngvbLgvYTgvZjgvI0iCisKKyM6IHNyYy9oZWxwLmM6NDE2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCAlcyAnJS4yNTBzJzogJXMiCittc2dzdHIgIiVzIGAlLjI1MHMnIOC9puC9suC8i+C9iuC9uuC9iuC9suC8i+C9oOC9luC9keC8i+C9k+C9suC8i+C9oOC9kOC9tOC9puC8i+C9pOC9vOC9ouC8i+C9luC+seC9tOC9hOC8i+C9oeC9vOC9keC8jSIKKworIzogc3JjL2hlbHAuYzo0MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZyAtIHRyeWluZyBzY3JpcHQgZnJvbSB0aGUgbmV3IHBhY2thZ2UgaW5zdGVhZCAuLi5cbiIKK21zZ3N0ciAiZHBrZyAtIOC9muC9luC8i+C9o+C9tOC8i+C9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8i+C9guC9puC9ouC9lOC8i+C9oOC9keC9suC8i+C9o+C9puC8i+C9oeC9suC9guC8i+C9muC9tOC9guC9puC8i+C9oOC9luC9keC8i+C9ouC+qeC9vOC9o+C8i+C9luC9puC+kOC+seC9uuC9keC8i+C9keC9vOC8iy4uLlxuIgorCisjOiBzcmMvaGVscC5jOjQzOQorbXNnaWQgInRoZXJlIGlzIG5vIHNjcmlwdCBpbiB0aGUgbmV3IHZlcnNpb24gb2YgdGhlIHBhY2thZ2UgLSBnaXZpbmcgdXAiCittc2dzdHIgIuC9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8i+C9guC+seC9suC8i+C9kOC9vOC9k+C8i+C9ouC9suC9mOC8i+C9guC9puC9ouC9lOC8i+C9oOC9keC9suC8i+C9k+C9hOC8i+C9o+C9tOC8i+C9oeC9suC9guC8i+C9muC9tOC9guC9puC8i+C9mOC9uuC9keC8jS3gvZbgvYDgvbzgvYLgvIvgvZbgvZ7gvYLgvIvgvZHgvbzgvI0iCisKKyM6IHNyYy9oZWxwLmM6NDQ1CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IC4uLiBpdCBsb29rcyBsaWtlIHRoYXQgd2VudCBPSy5cbiIKK21zZ3N0ciAiZHBrZzogLi4uIOC9oOC9keC9suC8i+C9luC9j+C9tOC9luC8i+C9oeC9ouC8i+C9puC9vOC9hOC9mOC8i+C9luC9n+C9tOC9mOC8i+C9mOC9kOC9vOC9hOC9mOC8i+C9mOC9puC8jVxuIgorCisjOiBzcmMvaGVscC5jOjYxNgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNlY3VyZWx5IHJlbW92ZSAnJS4yNTVzJyIKK21zZ3N0ciAiYCUuMjU1cycg4L2C4L2m4L2i4LyL4L2W4L2m4L6Q4L6y4L204L2T4LyL4L2g4L2W4L2R4LyL4L2Y4LyL4L2a4L204L2C4L2m4LyNIgorCisjOiBzcmMvaGVscC5jOjYyMSBkcGtnLWRlYi9pbmZvLmM6NjUgZHBrZy1kZWIvaW5mby5jOjY3Cittc2dpZCAicm0gY29tbWFuZCBmb3IgY2xlYW51cCIKK21zZ3N0ciAiIgorCisjOiBzcmMvaW5mb2RiLmM6NTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoZWNrIGV4aXN0ZW5jZSBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiYCUuMjUwcycg4L2C4L2y4LyL4L2C4L2T4L2m4LyL4L2m4LyL4L2e4L2y4L2W4LyL4L2R4L2U4L6x4L2R4LyL4L2g4L2W4L2R4LyL4L2Y4LyL4L2a4L204L2C4L2m4LyNIgorCisjOiBzcmMvaW5mb2RiLmM6NzAKK21zZ2lkICJjYW5ub3QgcmVhZCBpbmZvIGRpcmVjdG9yeSIKK21zZ3N0ciAi4L2W4L2i4L6h4LyL4L2R4L284L2T4LyL4L2m4L6j4L284L2R4LyL4L2Q4L284LyL4L2j4L634L2C4LyL4L2Y4L2y4LyL4L2a4L204L2C4L2m4LyNIgorCisjOiBzcmMvbWFpbi5jOjYwCisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiBgJXMnIHBhY2thZ2UgbWFuYWdlbWVudCBwcm9ncmFtIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIuC9jOC9suC8i+C9luC9suC8i+C9oeC9seC9k+C8iyBgJXMnIOC9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8i+C9oOC9m+C9suC9k+C8i+C9puC+kOC+seC9vOC9hOC8i+C9lOC9oOC9suC8i+C9o+C9puC8i+C9ouC9suC9mOC8i+C9guC+seC9suC8i+C9kOC9vOC9k+C8i+C9ouC9suC9mOC8iyAlc1xuIgorCisjOiBzcmMvbWFpbi5jOjg1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtaXwtLWluc3RhbGwgICAgICAgPC5kZWIgZmlsZSBuYW1lPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyZWN0b3J5PiAuLi5cbiIKKyIgIC0tdW5wYWNrICAgICAgICAgICA8LmRlYiBmaWxlIG5hbWU+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXJlY3Rvcnk+IC4uLlxuIgorIiAgLUF8LS1yZWNvcmQtYXZhaWwgIDwuZGViIGZpbGUgbmFtZT4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRpcmVjdG9yeT4gLi4uXG4iCisiICAtLWNvbmZpZ3VyZSAgICAgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLS10cmlnZ2Vycy1vbmx5ICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC1yfC0tcmVtb3ZlICAgICAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtUHwtLXB1cmdlICAgICAgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLS1nZXQtc2VsZWN0aW9ucyBbPHBhdHRlcm4+IC4uLl0gR2V0IGxpc3Qgb2Ygc2VsZWN0aW9ucyB0byBzdGRvdXQuXG4iCisiICAtLXNldC1zZWxlY3Rpb25zICAgICAgICAgICAgICAgICBTZXQgcGFja2FnZSBzZWxlY3Rpb25zIGZyb20gc3RkaW4uXG4iCisiICAtLWNsZWFyLXNlbGVjdGlvbnMgICAgICAgICAgICAgICBEZXNlbGVjdCBldmVyeSBub24tZXNzZW50aWFsIHBhY2thZ2UuXG4iCisiICAtLXVwZGF0ZS1hdmFpbCA8UGFja2FnZXMtZmlsZT4gICBSZXBsYWNlIGF2YWlsYWJsZSBwYWNrYWdlcyBpbmZvLlxuIgorIiAgLS1tZXJnZS1hdmFpbCA8UGFja2FnZXMtZmlsZT4gICAgTWVyZ2Ugd2l0aCBpbmZvIGZyb20gZmlsZS5cbiIKKyIgIC0tY2xlYXItYXZhaWwgICAgICAgICAgICAgICAgICAgIEVyYXNlIGV4aXN0aW5nIGF2YWlsYWJsZSBpbmZvLlxuIgorIiAgLS1mb3JnZXQtb2xkLXVuYXZhaWwgICAgICAgICAgICAgRm9yZ2V0IHVuaW5zdGFsbGVkIHVuYXZhaWxhYmxlIHBrZ3MuXG4iCisiICAtc3wtLXN0YXR1cyA8cGFja2FnZT4gLi4uICAgICAgICBEaXNwbGF5IHBhY2thZ2Ugc3RhdHVzIGRldGFpbHMuXG4iCisiICAtcHwtLXByaW50LWF2YWlsIDxwYWNrYWdlPiAuLi4gICBEaXNwbGF5IGF2YWlsYWJsZSB2ZXJzaW9uIGRldGFpbHMuXG4iCisiICAtTHwtLWxpc3RmaWxlcyA8cGFja2FnZT4gLi4uICAgICBMaXN0IGZpbGVzIGBvd25lZCcgYnkgcGFja2FnZShzKS5cbiIKKyIgIC1sfC0tbGlzdCBbPHBhdHRlcm4+IC4uLl0gICAgICAgIExpc3QgcGFja2FnZXMgY29uY2lzZWx5LlxuIgorIiAgLVN8LS1zZWFyY2ggPHBhdHRlcm4+IC4uLiAgICAgICAgRmluZCBwYWNrYWdlKHMpIG93bmluZyBmaWxlKHMpLlxuIgorIiAgLUN8LS1hdWRpdCAgICAgICAgICAgICAgICAgICAgICAgQ2hlY2sgZm9yIGJyb2tlbiBwYWNrYWdlKHMpLlxuIgorIiAgLS1wcmludC1hcmNoaXRlY3R1cmUgICAgICAgICAgICAgUHJpbnQgZHBrZyBhcmNoaXRlY3R1cmUuXG4iCisiICAtLWNvbXBhcmUtdmVyc2lvbnMgPGE+IDxvcD4gPGI+ICBDb21wYXJlIHZlcnNpb24gbnVtYmVycyAtIHNlZSBiZWxvdy5cbiIKKyIgIC0tZm9yY2UtaGVscCAgICAgICAgICAgICAgICAgICAgIFNob3cgaGVscCBvbiBmb3JjaW5nLlxuIgorIiAgLURofC0tZGVidWc9aGVscCAgICAgICAgICAgICAgICAgU2hvdyBoZWxwIG9uIGRlYnVnZ2luZy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIuC9luC9ouC+oeC8i+C9luC9gOC9vOC9keC8i+C9muC9tOC8izpcbiIKKyIgIC1pfC0taW5zdGFsbCAgICAgICA8LmRlYiBmaWxlIG5hbWU+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXJlY3Rvcnk+IC4uLlxuIgorIiAgLS11bnBhY2sgICAgICAgICAgIDwuZGViIGZpbGUgbmFtZT4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRpcmVjdG9yeT4gLi4uXG4iCisiICAtQXwtLXJlY29yZC1hdmFpbCAgPC5kZWIgZmlsZSBuYW1lPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyZWN0b3J5PiAuLi5cbiIKKyIgIC0tY29uZmlndXJlICAgICAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtcnwtLXJlbW92ZSAgICAgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLVB8LS1wdXJnZSAgICAgICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC0tZ2V0LXNlbGVjdGlvbnMgWzxwYXR0ZXJuPiAuLi5dIOC9qOC9uuC9puC9suC8i+C9iuC9suC8i+C9jOC9suC8i+C9qOC9oOC9tOC9iuC9suC8i+C9o+C9tOC8i+C9puC9uuC9o+C8i+C9oOC9kOC9tOC9oOC9suC8i+C9kOC9vOC8i+C9oeC9suC9guC8i+C9o+C9uuC9k+C8jVxuIgorIiAgLS1zZXQtc2VsZWN0aW9ucyAgICAgICAgICAgICAgICAg4L2o4L264L2m4L2y4LyL4L2K4L2y4LyL4L2M4L2y4LyL4L2o4L2y4L2T4LyL4L2j4L2m4LyL4L2Q4L204L2Y4LyL4L2m4L6S4L6y4L2y4L2j4LyL4L2m4L264L2j4LyL4L2g4L2Q4L204LyL4L2a4L204LyL4L2C4L2e4L2y4LyL4L2m4L6S4L6y4L2y4L2C4LyL4L2g4L2W4L2R4LyNXG4iCisiICAtLWNsZWFyLXNlbGVjdGlvbnMgICAgICAgICAgICAgICDgvZjgvYHgvbzgvIvgvZjgvbrgvZHgvIvgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIvgvYLgvbrgvIvgvaLgvIvgvabgvbrgvaPgvIvgvaDgvZDgvbTgvIvgvZjgvIvgvaDgvZbgvZHgvI1cbiIKKyIgIC0tdXBkYXRlLWF2YWlsIDxQYWNrYWdlcy1maWxlPiAgIOC9oOC9kOC9vOC9luC8i+C9muC9tOC9guC9puC8i+C9lOC9oOC9suC8i+C9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8i+C9guC+seC9suC8i+C9luC9ouC+oeC8i+C9keC9vOC9k+C8i+C9muC9luC8i+C9luC9meC9tOC9guC9puC8jVxuIgorIiAgLS1tZXJnZS1hdmFpbCA8UGFja2FnZXMtZmlsZT4gICAg4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2j4L2m4LyL4L2W4L2i4L6h4LyL4L2R4L284L2T4LyL4L2R4L2E4LyL4L2C4L2F4L2y4L2C4LyL4L2B4L2i4LyL4L2Y4L2J4L2Y4LyL4L2W4L2m4L6h4L284L2Y4L2m4LyL4L2g4L2W4L2R4LyNXG4iCisiICAtLWNsZWFyLWF2YWlsICAgICAgICAgICAgICAgICAgICDgvaHgvbzgvZHgvIvgvZ7gvbLgvZPgvIvgvZTgvaDgvbLgvIvgvaDgvZDgvbzgvZbgvIvgvZrgvbTgvYLgvabgvIvgvZTgvaDgvbLgvIvgvZbgvaLgvqHgvIvgvZHgvbzgvZPgvIvgvYDgvrLgvbrgvYLgvIvgvYLgvY/gvYTgvIvgvI1cbiIKKyIgIC0tZm9yZ2V0LW9sZC11bmF2YWlsICAgICAgICAgICAgIOC9guC9nuC9suC8i+C9luC9meC9tOC9guC9puC8i+C9mOC8i+C9oOC9luC9keC8i+C9luC9oOC9suC8i+C9oOC9kOC9vOC9luC8i+C9muC9tOC9guC9puC9lOC8i+C9mOC9uuC9keC8i+C9lOC9oOC9suC8i+C9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8i+C9muC9tOC8iyIKKyLgvZbgvaLgvpfgvbrgvZHgvI1cbiIKKyIgIC1zfC0tc3RhdHVzIDxwYWNrYWdlPiAuLi4gICAgICAgIOC9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8i+C9guC9k+C9puC8i+C9muC9keC8i+C9gOC+seC9suC8i+C9ouC+kuC+seC9puC8i+C9luC9pOC9keC8i+C9muC9tOC8i+C9luC9gOC+suC9mOC8i+C9puC+n+C9vOC9k+C8i+C9oOC9luC9keC8jVxuIgorIiAgLXB8LS1wcmludC1hdmFpbCA8cGFja2FnZT4gLi4uICAg4L2g4L2Q4L284L2W4LyL4L2a4L204L2C4L2m4LyL4L2U4L2g4L2y4LyL4L2Q4L284L2T4LyL4L2i4L2y4L2Y4LyL4L2C4L6x4L2y4LyL4L2i4L6S4L6x4L2m4LyL4L2W4L2k4L2R4LyL4L2a4L204LyL4L2W4L2A4L6y4L2Y4LyL4L2m4L6f4L284L2T4LyL4L2g4L2W4L2R4LyNXG4iCisiICAtTHwtLWxpc3RmaWxlcyA8cGFja2FnZT4gLi4uICAgICDgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIso4L2a4L204LyLKeC9guC+seC9suC9puC8iyBgb3duZWQnIOC9oOC9luC9keC8i+C9mOC9suC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9muC9tOC8i+C9kOC9vOC8i+C9luC9gOC9vOC9keC8iyIKKyLgvaDgvZbgvZHgvI1cbiIKKyIgIC1sfC0tbGlzdCBbPHBhdHRlcm4+IC4uLl0gICAgICAgIOC9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8i+C9muC9tOC8i+C9luC9puC+oeC9tOC9puC8i+C9lOC8i+C9puC+puC9uuC8i+C9kOC9vOC8i+C9luC9gOC9vOC9keC8i+C9oOC9luC9keC8jVxuIgorIiAgLVN8LS1zZWFyY2ggPHBhdHRlcm4+IC4uLiAgICAgICAg4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyLKOC9muC9tOC8iyngvZbgvZHgvYLgvIvgvZHgvZbgvYTgvIvgvZbgvZ/gvbTgvYTgvIvgvZjgvbLgvIvgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIso4L2a4L204LyLKeC9oOC9muC9vOC9o+C8jVxuIgorIiAgLUN8LS1hdWRpdCAgICAgICAgICAgICAgICAgICAgICAg4L2G4L2R4LyL4L2h4L284L2R4LyL4L2U4L2g4L2y4LyL4L2Q4L204L2Y4LyL4L2m4L6S4L6y4L2y4L2j4LyLKOC9muC9tOC8iyngvYLgvbLgvIvgvZHgvbzgvZPgvIvgvaPgvbTgvIvgvZ7gvbLgvZbgvIvgvZHgvZTgvrHgvZHgvIvgvaDgvZbgvZHgvI1cbiIKKyIgIC0tcHJpbnQtYXJjaGl0ZWN0dXJlICAgICAgICAgICAgIGRwa2cg4L2W4L2f4L284LyL4L2W4L2A4L284L2R4LyL4L2R4L2U4L2i4LyL4L2W4L2m4L6Q4L6y4L204L2T4LyL4L2g4L2W4L2R4LyNXG4iCisiICAtLWNvbXBhcmUtdmVyc2lvbnMgPGE+IDxvcD4gPGI+ICDgvZDgvbzgvZPgvIvgvaLgvbLgvZjgvIvgvajgvYTgvIvgvZrgvbTgvIvgvYLgvIvgvZbgvabgvqHgvbTgvaLgvIvgvaLgvpDgvrHgvZbgvabgvIsgLSDgvaDgvbzgvYLgvIvgvaPgvbTgvIvgvZbgvrPgvY/gvI1cbiIKKyIgIC0tZm9yY2UtaGVscCAgICAgICAgICAgICAgICAgICAgIOC9luC9hOC8i+C9luC9meC9vOC9hOC8i+C9k+C9suC8i+C9guC9tOC8i+C9o+C9tOC8i+C9guC+suC9vOC9guC9puC8i+C9ouC9mOC8i+C9puC+n+C9vOC9k+C8jVxuIgorIiAgLURofC0tZGVidWc9aGVscCAgICAgICAgICAgICAgICAg4L2i4L6Q4L6x4L284L2T4LyL4L2m4L264L2j4LyL4L2g4L2W4L2R4LyL4L2T4L2y4LyL4L2C4L204LyL4L2j4L204LyL4L2C4L6y4L284L2C4L2m4LyL4L2i4L2Y4LyL4L2m4L6f4L284L2T4LyNXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTEzIHNyYy9xdWVyeWNtZC5jOjYzMSBzcmMvdHJpZ2NtZC5jOjc3IGRwa2ctZGViL21haW4uYzo4OAorIzogZHBrZy1zcGxpdC9tYWluLmM6NzcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyIgIC1ofC0taGVscCAgICAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgICAgICAgICBTaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorbXNnc3RyICIiCisiICAtaHwtLeC9guC+suC9vOC9guC9puC8i+C9ouC9mOC8iyAgICAgICAgICAgICAgICAgICAgICAgIOC9oOC8i+C9k+C9suC8i+C9guC+suC9vOC9guC9puC8i+C9ouC9mOC8i+C9oOC9leC+suC9suC9k+C8i+C9keC9vOC9k+C8i+C9oOC9keC9suC8i+C9puC+n+C9vOC9k+C8jVxuIgorIiAgLS3gvZDgvbzgvZPgvIvgvaLgvbLgvZjgvIsgICAgICAgICAgICAgICAgICAgICAgICDgvZDgvbzgvZPgvIvgvaLgvbLgvZjgvIvgvaDgvZHgvbLgvIvgvabgvp/gvbzgvZPgvI1cbiIKKyIgIC0t4L2G4L284L2C4LyL4L2Q4L2YfC0t4L2G4L284L2C4LyL4L2Q4L2Y4LyLICAgICAgICAgICAgICDgvaDgvZHgvrLgvIvgvZbgvaTgvbTgvabgvIvgvZHgvZbgvYTgvIvgvYbgvIvgvYbgvbzgvYLgvIvgvZDgvZjgvIvgvYLgvrHgvbLgvIvgvZDgvIvgvabgvpngvZHgvIvgvaDgvZHgvbLgvIvgvZrgvbTgvIvgvabgvp/gvbzgvZPgvI1cbiIKKyJcbiIKKworIzogc3JjL21haW4uYzoxMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlVzZSBkcGtnIC1ifC0tYnVpbGR8LWN8LS1jb250ZW50c3wtZXwtLWNvbnRyb2x8LUl8LS1pbmZvfC1mfC0tZmllbGR8XG4iCisiIC14fC0tZXh0cmFjdHwtWHwtLXZleHRyYWN0fC0tZnN5cy10YXJmaWxlICBvbiBhcmNoaXZlcyAodHlwZSAlcyAtLWhlbHApLlxuIgorIlxuIgorbXNnc3RyICIiCisiZHBrZyAtYnwtLWJ1aWxkfC1jfC0tY29udGVudHN8LWV8LS1jb250cm9sfC1JfC0taW5mb3wtZnwtLWZpZWxkfFxuIgorIiAteHwtLWV4dHJhY3R8LVh8LS12ZXh0cmFjdHwtLWZzeXMtdGFyZmlsZSAg4L2h4L2y4L2C4LyL4L2Y4L2b4L284L2R4LyL4L2C4L204LyL4L2j4L204LyL4L2j4L2C4LyL4L2j4L264L2T4LyL4L2g4L2Q4L2W4LyLICh0eXBlICVzIC0tIgorImhlbHApLlxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjEyMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiRm9yIGludGVybmFsIHVzZTogZHBrZyAtLWFzc2VydC1zdXBwb3J0LXByZWRlcGVuZHMgfCAtLXByZWRlcC1wYWNrYWdlIHxcbiIKKyIgIC0tYXNzZXJ0LXdvcmtpbmctZXBvY2ggfCAtLWFzc2VydC1sb25nLWZpbGVuYW1lcyB8IC0tYXNzZXJ0LW11bHRpLWNvbnJlcC5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIuC9k+C9hOC8i+C9oOC9geC9vOC9keC8i+C9o+C9guC8i+C9o+C9uuC9k+C8i+C9guC+seC9suC8i+C9keC9vOC9k+C8i+C9o+C9tOC8izogZHBrZyAtLWFzc2VydC1zdXBwb3J0LXByZWRlcGVuZHMgfCAtLXByZWRlcC1wYWNrYWdlIHxcbiIKKyIgIC0tYXNzZXJ0LXdvcmtpbmctZXBvY2ggfCAtLWFzc2VydC1sb25nLWZpbGVuYW1lcyB8IC0tYXNzZXJ0LW11bHRpLWNvbnJlcC5cbiIKKyJcbiIKKworIzogc3JjL21haW4uYzoxMjgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hZG1pbmRpcj08ZGlyZWN0b3J5PiAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMuXG4iCisiICAtLXJvb3Q9PGRpcmVjdG9yeT4gICAgICAgICBJbnN0YWxsIG9uIGEgZGlmZmVyZW50IHJvb3QgZGlyZWN0b3J5LlxuIgorIiAgLS1pbnN0ZGlyPTxkaXJlY3Rvcnk+ICAgICAgQ2hhbmdlIGluc3RhbGxhdGlvbiBkaXIgd2l0aG91dCBjaGFuZ2luZyBhZG1pbiAiCisiZGlyLlxuIgorIiAgLS1wYXRoLWV4Y2x1ZGU9PHBhdHRlcm4+ICAgRG8gbm90IGluc3RhbGwgcGF0aHMgd2hpY2ggbWF0Y2ggYSBzaGVsbCAiCisicGF0dGVybi5cbiIKKyIgIC0tcGF0aC1pbmNsdWRlPTxwYXR0ZXJuPiAgIFJlLWluY2x1ZGUgYSBwYXR0ZXJuIGFmdGVyIGEgcHJldmlvdXMgIgorImV4Y2x1c2lvbi5cbiIKKyIgIC1PfC0tc2VsZWN0ZWQtb25seSAgICAgICAgIFNraXAgcGFja2FnZXMgbm90IHNlbGVjdGVkIGZvciBpbnN0YWxsLyIKKyJ1cGdyYWRlLlxuIgorIiAgLUV8LS1za2lwLXNhbWUtdmVyc2lvbiAgICAgU2tpcCBwYWNrYWdlcyB3aG9zZSBzYW1lIHZlcnNpb24gaXMgaW5zdGFsbGVkLlxuIgorIiAgLUd8LS1yZWZ1c2UtZG93bmdyYWRlICAgICAgU2tpcCBwYWNrYWdlcyB3aXRoIGVhcmxpZXIgdmVyc2lvbiB0aGFuICIKKyJpbnN0YWxsZWQuXG4iCisiICAtQnwtLWF1dG8tZGVjb25maWd1cmUgICAgICBJbnN0YWxsIGV2ZW4gaWYgaXQgd291bGQgYnJlYWsgc29tZSBvdGhlciAiCisicGFja2FnZS5cbiIKKyIgIC0tW25vLV10cmlnZ2VycyAgICAgICAgICAgIFNraXAgb3IgZm9yY2UgY29uc2VxdWVudGlhbCB0cmlnZ2VyICIKKyJwcm9jZXNzaW5nLlxuIgorIiAgLS1uby1kZWJzaWcgICAgICAgICAgICAgICAgRG8gbm90IHRyeSB0byB2ZXJpZnkgcGFja2FnZSBzaWduYXR1cmVzLlxuIgorIiAgLS1uby1hY3R8LS1kcnktcnVufC0tc2ltdWxhdGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEp1c3Qgc2F5IHdoYXQgd2Ugd291bGQgZG8gLSBkb24ndCBkbyBpdC5cbiIKKyIgIC1EfC0tZGVidWc9PG9jdGFsPiAgICAgICAgIEVuYWJsZSBkZWJ1Z2dpbmcgKHNlZSAtRGhlbHAgb3IgLS1kZWJ1Zz1oZWxwKS5cbiIKKyIgIC0tc3RhdHVzLWZkIDxuPiAgICAgICAgICAgIFNlbmQgc3RhdHVzIGNoYW5nZSB1cGRhdGVzIHRvIGZpbGUgZGVzY3JpcHRvciAiCisiPG4+LlxuIgorIiAgLS1sb2c9PGZpbGVuYW1lPiAgICAgICAgICAgTG9nIHN0YXR1cyBjaGFuZ2VzIGFuZCBhY3Rpb25zIHRvIDxmaWxlbmFtZT4uXG4iCisiICAtLWlnbm9yZS1kZXBlbmRzPTxwYWNrYWdlPiwuLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIElnbm9yZSBkZXBlbmRlbmNpZXMgaW52b2x2aW5nIDxwYWNrYWdlPi5cbiIKKyIgIC0tZm9yY2UtLi4uICAgICAgICAgICAgICAgIE92ZXJyaWRlIHByb2JsZW1zIChzZWUgLS1mb3JjZS1oZWxwKS5cbiIKKyIgIC0tbm8tZm9yY2UtLi4ufC0tcmVmdXNlLS4uLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcCB3aGVuIHByb2JsZW1zIGVuY291bnRlcmVkLlxuIgorIiAgLS1hYm9ydC1hZnRlciA8bj4gICAgICAgICAgQWJvcnQgYWZ0ZXIgZW5jb3VudGVyaW5nIDxuPiBlcnJvcnMuXG4iCisiXG4iCittc2dzdHIgIiIKKyLgvYLgvZHgvZjgvIvgvYHgvIvgvZrgvbTgvIs6XG4iCisiICAtLWFkbWluZGlyPTzgvabgvqPgvbzgvZHgvIvgvZDgvbzgvIs+ICAgICA84L2m4L6j4L284L2R4LyL4L2Q4L284LyLPiDgvaDgvZHgvbLgvIsgJXMg4L2C4L2y4LyL4L2a4L2W4LyL4L2j4L204LyL4L2j4L2C4LyL4L2j4L264L2T4LyL4L2g4L2Q4L2W4LyNXG4iCisiICAtLXJvb3Q9POC9puC+o+C9vOC9keC8i+C9kOC9vOC8iz4gICAgICAgICDgvaLgvqngvIvgvZbgvaDgvbLgvIvgvabgvqPgvbzgvZHgvIvgvZDgvbzgvIvgvabgvbzgvIvgvabgvbzgvIvgvaPgvbTgvIvgvYLgvZ7gvbLgvIvgvZbgvZngvbTgvYLgvabgvIvgvaDgvZbgvZHgvI1cbiIKKyIgIC0taW5zdGRpcj084L2m4L6j4L284L2R4LyL4L2Q4L284LyLPiAgICAgIOC9luC9keC9guC8i+C9puC+kOC+seC9vOC9hOC8i+C9puC+o+C9vOC9keC8i+C9kOC9vOC8i+C9luC9puC+kuC+seC9tOC9ouC8i+C9luC9heC9vOC9puC8i+C9mOC8i+C9oOC9luC9keC8i+C9luC9ouC8i+C9guC9nuC9suC8i+C9luC9meC9tOC9guC9puC8i+C9oOC9luC9keC8i+C9k+C9suC9oOC9suC8i+C9puC+o+C9vOC9keC8i+C9kOC9vOC8iyIKKyLgvZbgvabgvpLgvrHgvbTgvaLgvIvgvZbgvYXgvbzgvabgvIvgvaDgvZbgvZHgvI1cbiIKKyIgIC1PfC0tc2VsZWN0ZWQtb25seSAgICAgICAgIOC9guC9nuC9suC8i+C9luC9meC9tOC9guC9puC8iy/gvaHgvaLgvIvgvZbgvabgvpDgvrHgvbrgvZHgvIvgvYDgvrHgvbLgvIvgvZHgvbzgvZPgvIvgvaPgvbTgvIvgvabgvbrgvaPgvIvgvaDgvZDgvbTgvIvgvZjgvIvgvaDgvZbgvZHgvIvgvZjgvbLgvIvgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIvgvZrgvbTgvIvgvYLgvbzgvZjgvIsiCisi4L2g4L2C4L6x4L284LyNXG4iCisiICAtRXwtLXNraXAtc2FtZS12ZXJzaW9uICAgICDgvZDgvbzgvZPgvIvgvaLgvbLgvZjgvIvgvYLgvYXgvbLgvYLgvIvgvZTgvIvgvYLgvZ7gvbLgvIvgvZbgvZngvbTgvYLgvabgvIvgvaDgvZbgvZHgvIvgvaHgvbzgvZHgvIvgvZjgvbLgvIvgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIvgvZrgvbTgvIvgvYLgvbzgvZjgvIvgvaDgvYLgvrHgvbzgvI1cbiIKKyIgIC1HfC0tcmVmdXNlLWRvd25ncmFkZSAgICAgIOC9guC9nuC9suC8i+C9luC9meC9tOC9guC9puC8i+C9oOC9luC9keC8i+C9oeC9vOC9keC9mOC9suC8i+C9o+C9puC8i+C9p+C9uuC8i+C9mOC9oOC9suC8i+C9kOC9vOC9k+C8i+C9ouC9suC9mOC8i+C9keC9hOC8i+C9guC9heC9suC9guC8i+C9geC9ouC8i+C9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8i+C9muC9tOC8iyIKKyLgvYLgvbzgvZjgvIvgvaDgvYLgvrHgvbzgvI1cbiIKKyIgIC1CfC0tYXV0by1kZWNvbmZpZ3VyZSAgICAgIOC9guC9nuC9k+C8i+C9mOC9suC8i+C9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8i+C9muC9tOC8i+C9huC9keC8i+C9ouC9tOC9hOC8i+C9oeC9hOC8i+C9guC9nuC9suC8i+C9luC9meC9tOC9guC9puC8i+C9oOC9luC9keC8jVxuIgorIiAgLS1uby1kZWJzaWcgICAgICAgICAgICAgICAg4L2Q4L204L2Y4LyL4L2m4L6S4L6y4L2y4L2j4LyL4L2C4L6x4L2y4LyL4L2Y4L2y4L2E4LyL4L2i4L6f4L2C4L2m4LyL4L2a4L204LyL4L2W4L2R4L264L2T4LyL4L2m4L6m4L6x4L284L2i4LyL4L2g4L2W4L2R4LyL4L2T4L2y4L2g4L2y4LyL4L2g4L2W4L2R4LyL4L2i4L6p4L284L2j4LyL4L2Y4LyL4L2W4L2m4L6Q4L6x4L264L2R4LyNXG4iCisiICAtLW5vLWFjdHwtLWRyeS1ydW58LS1zaW11bGF0ZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg4L2C4LyL4L2F4L2y4LyL4L2g4L2W4L2R4LyL4L2T4L2y4LyL4L2o4L2y4L2T4LyL4L2i4L6Q4L6x4L2E4L2Y4LyL4L2F4L2y4L2C4LyL4L2m4L6z4L2W4LyLIC0g4L2g4L2R4L2y4LyL4L2Y4LyL4L2g4L2W4L2R4LyNXG4iCisiICAtRHwtLWRlYnVnPTxvY3RhbD4gICAgICAgICDgvaLgvpDgvrHgvbrgvZPgvIvgvabgvbrgvaPgvIvgvaPgvpXgvbzgvYLgvabgvIvgvYXgvZPgvIvgvZbgvZ/gvbzgvIsoIC1EaGVscCDgvaHgvYTgvIvgvZPgvIsgLS1kZWJ1Zz1oZWxwICIKKyLgvZbgvaPgvp/gvIspLlxuIgorIiAgLS1zdGF0dXMtZmQgPG4+ICAgICAgICAgICAg4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2g4L2C4L6y4L264L2j4LyL4L2W4L2k4L2R4L2U4LyL4L2j4L204LyL4L2C4L2T4L2m4LyL4L2a4L2R4LyL4L2W4L2m4L6S4L6x4L204L2i4LyL4L2W4L2F4L284L2m4LyL4L2R4L204L2m4LyL4L2Y4L2Q4L204L2T4LyL4L2a4L204LyL4L2C4L2P4L2E4LyLICIKKyI8bj4uXG4iCisiICAtLWxvZz08ZmlsZW5hbWU+ICAgICAgICAgICA84L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2Y4L2y4L2E4LyLPiDgvaPgvbTgvIvgvYLgvZPgvabgvIvgvZbgvabgvpLgvrHgvbTgvaLgvIvgvZbgvYXgvbzgvabgvIvgvZrgvbTgvIvgvZHgvYTgvIvgvZbgvrHgvIvgvZbgvIvgvZrgvbTgvIvgvaPgvbzgvYLgvIvgvaDgvZbgvZHgvI1cbiIKKyIgIC0taWdub3JlLWRlcGVuZHM9PHBhY2thZ2U+LC4uLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPOC9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8iz7gvaDgvZbgvrLgvbrgvaPgvIvgvZbgvIvgvaHgvbzgvZHgvIvgvZjgvbLgvIsg4L2i4L6f4L264L2T4LyL4L2g4L2W4L6y4L264L2j4LyL4L2a4L204LyL4L2m4L6j4L2E4LyL4L2Y4L264L2R4LyL4L2W4L2e4L2CXG4iCisiICAtLWZvcmNlLS4uLiAgICAgICAgICAgICAgICDgvZ/gvbTgvaLgvIvgvZbgvZ7gvYLgvIvgvYLgvbLgvIvgvZHgvYDgvaDgvIvgvYTgvaPgvIvgvZrgvbTgvIsoLS1mb3JjZS1oZWxwIOC9luC9o+C+n+C8jSlcbiIKKyIgIC0tbm8tZm9yY2UtLi4ufC0tcmVmdXNlLS4uLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg4L2R4L2A4L2g4LyL4L2E4L2j4LyL4L2a4L204LyL4L2C4L2R4L284L2E4LyL4L2Q4L204L2C4LyL4L2W4L6x4L204L2E4LyL4L2h4L284L2R4L2U4LyL4L2R4LyLIOC9luC9gOC9glxuIgorIiAgLS1hYm9ydC1hZnRlciA8bj4gICAgICAgICAgPG4+IOC9oOC9m+C9vOC9o+C8i+C9luC8i+C9muC9tOC8i+C9guC9keC9vOC9hOC8i+C9kOC9tOC9guC8i+C9luC+seC9tOC9hOC8i+C9lOC9oOC9suC8i+C9puC+kOC9luC9puC8i+C9luC9ouC8i+C9luC9pOC9vOC9o+C8i+C9oOC9luC9keC8jVxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjE1NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tcGFyaXNvbiBvcGVyYXRvcnMgZm9yIC0tY29tcGFyZS12ZXJzaW9ucyBhcmU6XG4iCisiICBsdCBsZSBlcSBuZSBnZSBndCAgICAgICAodHJlYXQgZW1wdHkgdmVyc2lvbiBhcyBlYXJsaWVyIHRoYW4gYW55ICIKKyJ2ZXJzaW9uKTtcbiIKKyIgIGx0LW5sIGxlLW5sIGdlLW5sIGd0LW5sICh0cmVhdCBlbXB0eSB2ZXJzaW9uIGFzIGxhdGVyIHRoYW4gYW55IHZlcnNpb24pO1xuIgorIiAgPCA8PCA8PSA9ID49ID4+ID4gICAgICAgKG9ubHkgZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBjb250cm9sIGZpbGUgIgorInN5bnRheCkuXG4iCisiXG4iCittc2dzdHIgIiIKKyIgLS1jb21wYXJlLXZlcnNpb25zIOC9guC+seC9suC8i+C9keC9vOC9k+C8i+C9o+C9tOC8i+C9guC8i+C9luC9puC+oeC9tOC9ouC8i+C9ouC+kOC+seC9luC9puC8i+C9k+C9suC9oOC9suC8i+C9luC9gOC9vOC9o+C8i+C9puC+pOC+seC9vOC9keC8i+C9lOC8i+C9muC9tOC8izpcbiIKKyIgIGx0IGxlIGVxIG5lIGdlIGd0ICAgICAgICjgvZDgvbzgvZPgvIvgvaLgvbLgvZjgvIvgvYLgvIvgvaPgvabgvIvgvaHgvYTgvIvgvZDgvbzgvZPgvIvgvaLgvbLgvZjgvIvgvabgvp/gvbzgvYTgvZjgvIvgvaDgvZHgvbLgvIvgvafgvbrgvIvgvZjgvaDgvbLgvIvgvZbgvZ/gvbTgvZjgvIvgvabgvqbgvbrgvIvgvZbgvaLgvqngvbLgvIvgvaDgvYfgvbzgvYLgvIsiCisi4L2g4L2W4L2R4LyNKVxuIgorIiAgbHQtbmwgbGUtbmwgZ2UtbmwgZ3QtbmwgKOC9kOC9vOC9k+C8i+C9ouC9suC9mOC8i+C9guC8i+C9o+C9puC8i+C9oeC9hOC8i+C9kOC9vOC9k+C8i+C9ouC9suC9o+C8i+C9puC+n+C9vOC9hOC9mOC8i+C9oOC9keC9suC8i+C9pOC9tOC9o+C8i+C9mOC9oOC9suC8i+C9luC9n+C9tOC9mOC8i+C9puC+puC9uuC8i+C9luC9ouC+qeC9suC8i+C9oOC9h+C9vOC9guC8iyIKKyLgvaDgvZbgvZHgvI0pXG4iCisiICA8IDw8IDw9ID0gPj0gPj4gPiAgICAgICAo4L2a4L2R4LyL4L2g4L2b4L2y4L2T4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2a4L2y4L2C4LyL4L2m4L6m4L6x4L284L2i4LyL4L2R4L2E4LyL4L2C4L2F4L2y4L2C4LyL4L2B4L2i4LyL4L2C4LyL4L2W4L2m4L6h4L204L2i4LyL4L2i4L6Q4L6x4L2W4L2m4LyL4L2W4L2P4L204L2W4LyL4L2Y4L2y4L2g4L2y4LyL4L2R4L284L2T4LyLIgorIuC9o+C9tOC8i+C9ouC+kOC+seC9hOC9mOC8i+C9heC9suC9gilcbiIKKyJcbiIKKworIzogc3JjL21haW4uYzoxNjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiVXNlIGBkc2VsZWN0JyBvciBgYXB0aXR1ZGUnIGZvciB1c2VyLWZyaWVuZGx5IHBhY2thZ2UgbWFuYWdlbWVudC5cbiIKK21zZ3N0ciAiIgorIuC9o+C9guC8i+C9o+C9uuC9k+C8i+C9lOC8iy3gvZjgvZvgvaDgvIvgvYLgvrLgvbzgvYLgvabgvIvgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIvgvaDgvZvgvbLgvZPgvIvgvabgvpDgvrHgvbzgvYTgvIvgvZTgvaDgvbLgvIvgvZHgvbzgvZPgvIvgvaPgvbTgvItgZHNlbGVjdCcg4L2h4L2E4LyL4L2T4LyLIGBhcHRpdHVkZScg4L2j4L2C4LyL4L2j4L264L2T4LyL4L2g4L2Q4L2W4LyNXG4iCisKKyM6IHNyYy9tYWluLmM6MTcwCisjLCBmdXp6eQorbXNnaWQgIiIKKyJUeXBlIGRwa2cgLS1oZWxwIGZvciBoZWxwIGFib3V0IGluc3RhbGxpbmcgYW5kIGRlaW5zdGFsbGluZyBwYWNrYWdlcyBbKl07XG4iCisiVXNlIGBkc2VsZWN0JyBvciBgYXB0aXR1ZGUnIGZvciB1c2VyLWZyaWVuZGx5IHBhY2thZ2UgbWFuYWdlbWVudDtcbiIKKyJUeXBlIGRwa2cgLURoZWxwIGZvciBhIGxpc3Qgb2YgZHBrZyBkZWJ1ZyBmbGFnIHZhbHVlcztcbiIKKyJUeXBlIGRwa2cgLS1mb3JjZS1oZWxwIGZvciBhIGxpc3Qgb2YgZm9yY2luZyBvcHRpb25zO1xuIgorIlR5cGUgZHBrZy1kZWIgLS1oZWxwIGZvciBoZWxwIGFib3V0IG1hbmlwdWxhdGluZyAqLmRlYiBmaWxlcztcbiIKKyJcbiIKKyJPcHRpb25zIG1hcmtlZCBbKl0gcHJvZHVjZSBhIGxvdCBvZiBvdXRwdXQgLSBwaXBlIGl0IHRocm91Z2ggYGxlc3MnIG9yICIKKyJgbW9yZScgISIKK21zZ3N0ciAiIgorIuC9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8iyAgWypdIOC9muC9tOC8i+C9guC9nuC9suC8i+C9luC9meC9tOC9guC9puC8i+C9oOC9luC9keC8i+C9k+C9suC8i+C9keC9hOC8i+C9guC9nuC9suC8i+C9luC9meC9tOC9guC9puC8i+C9mOC9suC8i+C9oOC9luC9keC8i+C9k+C9suC9oOC9suC8i+C9keC9vOC9k+C8i+C9o+C9tOC8iyDgvZHgvZbgvrHgvbrgvIvgvZbgvIsgZHBrZyAtLWhlbHAgXG4iCisi4L2j4L2C4LyL4L2j4L264L2T4LyL4L2ULeC9mOC9kOC9tOC9k+C8i+C9mOC9suC8i+C9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8i+C9oOC9m+C9suC9k+C8i+C9puC+kOC+seC9vOC9hOC8i+C9lOC8i+C9guC9suC8i+C9keC9vOC9k+C8i+C9o+C9tOC8iyBgZHNlbGVjdCcg4L2h4L2E4LyL4L2T4LyLIGBhcHRpdHVkZScg4L2j4L2C4LyL4L2j4L264L2T4LyL4L2g4L2Q4L2W4LyNXG4iCisiZHBrZyDgvaLgvpDgvrHgvbrgvZPgvIvgvabgvbrgvaPgvIvgvZ/gvbTgvaLgvIvgvaLgvp/gvYLgvabgvIvgvYLgvZPgvabgvIvgvYLgvbzgvYTgvIvgvZrgvbTgvaDgvbLgvIvgvZDgvbzgvIvgvaHgvbLgvYLgvIvgvYLgvbLgvIvgvZHgvbzgvZPgvIvgvaPgvbTgvIsg4L2R4L2W4L6x4L264LyL4L2W4LyLIGRwa2cgLURoZWxwIFxuIgorIuC9luC9hOC8i+C9luC9meC9vOC9hOC8i+C9k+C9suC9oOC9suC8i+C9guC9keC9mOC8i+C9geC8i+C9muC9tOC9oOC9suC8i+C9kOC9vOC8i+C9oeC9suC9guC8i+C9guC9suC8i+C9keC9vOC9k+C8i+C9o+C9tOC8iyDgvZHgvZbgvrHgvbrgvIvgvZbgvIsgZHBrZyAtLWZvcmNlLWhlbHAgXG4iCisiKi5kZWIg4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2a4L204LyL4L2Y4L6x4L284L2E4LyL4L2g4L2R4L6y4L2y4L2m4LyL4L2A4L6x4L2y4L2m4LyL4L2j4L2C4LyL4L2j4L264L2T4LyL4L2g4L2Q4L2W4LyL4L2m4L6Q4L284L2i4LyL4L2C4L6y4L284L2C4L2m4LyL4L2i4L2Y4LyL4L2C4L6x4L2y4LyL4L2R4L284L2T4LyL4L2j4L204LyLIOC9keC9luC+seC9uuC8i+C9luC8iyBkcGtnLWRlYiAtLWhlbHAgXG4iCisi4L2g4L2R4L6y4LyL4L2W4L2k4L204L2m4LyL4L2R4L2W4L2E4LyL4L2G4LyL4L2G4L284L2C4LyL4L2Q4L2Y4LyL4L2R4L2E4LyL4L2J4L264L2T4LyL4L2j4L264L2T4LyL4L2Y4L264L2R4L2U4LyLICjgvYfgvbLgvIvgvajgvbrgvZPgvIvgvaHgvbTgvIsg4L2H4L2y4LyL4L2U4L2y4LyL4L2o4L264L2j4LyLKSBbKl0g4L2C4L2y4LyL4L2R4L284L2T4LyL4L2j4L204LyLIOC9keC9luC+seC9uuC8i+C9luC8iyBkcGtnIC0tIgorImxpY2Vuc2UgXG4iCisiXG4iCisi4L2C4L2R4L2Y4LyL4L2B4LyL4L2a4L204LyLIFsqXSDgvabgvqbgvbrgvIvgvaLgvp/gvYLgvabgvIvgvZbgvYDgvaPgvIvgvaHgvbzgvZHgvIvgvZjgvbLgvIvgvYLgvbLgvabgvIsg4L2o4L2g4L204L2K4L2y4LyL4L2U4L204L2K4L2y4LyL4L2j4L264LyL4L2k4LyL4L2W4L2f4L284LyL4L2m4L6f4L284L2T4LyL4L2g4L2W4L2R4L2d4LyL4L2o4L2y4L2T4LyLIC0g4L2g4L2R4L2y4LyLIGBsZXNzJyDgvaHgvYTgvIvgvZPgvIsgIgorImBtb3JlJyDgvZbgvaLgvpLgvrHgvbTgvZHgvIvgvZHgvbrgvIvgvaLgvpLgvrHgvbTgvZHgvIvgvZHgvbTgvYTgvIvgvZbgvZ/gvbwgISIKKworIzogc3JjL21haW4uYzoyMTkKK21zZ2lkICJTZXQgYWxsIGZvcmNlIG9wdGlvbnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjEKK21zZ2lkICJSZXBsYWNlIGEgcGFja2FnZSB3aXRoIGEgbG93ZXIgdmVyc2lvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIyMworbXNnaWQgIkNvbmZpZ3VyZSBhbnkgcGFja2FnZSB3aGljaCBtYXkgaGVscCB0aGlzIG9uZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIyNQorbXNnaWQgIlByb2Nlc3MgaW5jaWRlbnRhbCBwYWNrYWdlcyBldmVuIHdoZW4gb24gaG9sZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIyNworbXNnaWQgIlRyeSB0byAoZGUpaW5zdGFsbCB0aGluZ3MgZXZlbiB3aGVuIG5vdCByb290IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjI5Cittc2dpZCAiUEFUSCBpcyBtaXNzaW5nIGltcG9ydGFudCBwcm9ncmFtcywgcHJvYmxlbXMgbGlrZWx5IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjMxCittc2dpZCAiSW5zdGFsbCBhIHBhY2thZ2UgZXZlbiBpZiBpdCBmYWlscyBhdXRoZW50aWNpdHkgY2hlY2siCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzMKK21zZ2lkICJQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyB2ZXJzaW9ucyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzNQorbXNnaWQgIk92ZXJ3cml0ZSBhIGZpbGUgZnJvbSBvbmUgcGFja2FnZSB3aXRoIGFub3RoZXIiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzcKK21zZ2lkICJPdmVyd3JpdGUgYSBkaXZlcnRlZCBmaWxlIHdpdGggYW4gdW5kaXZlcnRlZCB2ZXJzaW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjM5Cittc2dpZCAiT3ZlcndyaXRlIG9uZSBwYWNrYWdlJ3MgZGlyZWN0b3J5IHdpdGggYW5vdGhlcidzIGZpbGUiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDEKK21zZ2lkICJEbyBub3QgcGVyZm9ybSBzYWZlIEkvTyBvcGVyYXRpb25zIHdoZW4gdW5wYWNraW5nIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjQzCittc2dpZCAiQWx3YXlzIHVzZSB0aGUgbmV3IGNvbmZpZyBmaWxlcywgZG9uJ3QgcHJvbXB0IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjQ1Cittc2dpZCAiQWx3YXlzIHVzZSB0aGUgb2xkIGNvbmZpZyBmaWxlcywgZG9uJ3QgcHJvbXB0IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjQ4Cittc2dpZCAiIgorIlVzZSB0aGUgZGVmYXVsdCBvcHRpb24gZm9yIG5ldyBjb25maWcgZmlsZXMgaWYgb25lXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgIGlzIGF2YWlsYWJsZSwgZG9uJ3QgcHJvbXB0LiBJZiBubyBkZWZhdWx0IGNhbiBiZSAiCisiZm91bmQsXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgIHlvdSB3aWxsIGJlIHByb21wdGVkIHVubGVzcyBvbmUgb2YgdGhlIGNvbmZvbGQgb3JcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgY29uZm5ldyBvcHRpb25zIGlzIGFsc28gZ2l2ZW4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNTMKK21zZ2lkICJBbHdheXMgaW5zdGFsbCBtaXNzaW5nIGNvbmZpZyBmaWxlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI1NQorbXNnaWQgIk9mZmVyIHRvIHJlcGxhY2UgY29uZmlnIGZpbGVzIHdpdGggbm8gbmV3IHZlcnNpb25zIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjU3Cittc2dpZCAiUHJvY2VzcyBldmVuIHBhY2thZ2VzIHdpdGggd3Jvbmcgb3Igbm8gYXJjaGl0ZWN0dXJlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjU5Cittc2dpZCAiSW5zdGFsbCBldmVuIGlmIGl0IHdvdWxkIGJyZWFrIGFub3RoZXIgcGFja2FnZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI2MQorbXNnaWQgIkFsbG93IGluc3RhbGxhdGlvbiBvZiBjb25mbGljdGluZyBwYWNrYWdlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI2MworIywgZnV6enkKKyN8IG1zZ2lkICJkZXBlbmRlbmN5IHByb2JsZW1zIC0gbm90IHJlbW92aW5nIgorbXNnaWQgIlR1cm4gYWxsIGRlcGVuZGVuY3kgcHJvYmxlbXMgaW50byB3YXJuaW5ncyIKK21zZ3N0ciAi4L2i4L6f4L264L2T4LyL4L2g4L2W4L2Y4L6y4L264L2j4LyL4L2C4L6x4L6x4L2y4LyL4L2R4L2A4L2g4LyL4L2E4L2j4LyL4L2a4L204LyLIC0g4L2i4L6p4LyL4L2W4L2m4L6Q4L6y4L2R4LyL4L2Y4L2y4LyL4L2C4L2P4L2E4LyL4LyNIgorCisjOiBzcmMvbWFpbi5jOjI2NQorIywgZnV6enkKKyN8IG1zZ2lkICJkZXBlbmRlbmN5IHByb2JsZW1zIC0gbm90IHJlbW92aW5nIgorbXNnaWQgIlR1cm4gZGVwZW5kZW5jeSB2ZXJzaW9uIHByb2JsZW1zIGludG8gd2FybmluZ3MiCittc2dzdHIgIuC9ouC+n+C9uuC9k+C8i+C9oOC9luC9mOC+suC9uuC9o+C8i+C9guC+seC+seC9suC8i+C9keC9gOC9oOC8i+C9hOC9o+C8i+C9muC9tOC8iyAtIOC9ouC+qeC8i+C9luC9puC+kOC+suC9keC8i+C9mOC9suC8i+C9guC9j+C9hOC8i+C8jSIKKworIzogc3JjL21haW4uYzoyNjcKK21zZ2lkICJSZW1vdmUgcGFja2FnZXMgd2hpY2ggcmVxdWlyZSBpbnN0YWxsYXRpb24iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNjkKK21zZ2lkICJSZW1vdmUgYW4gZXNzZW50aWFsIHBhY2thZ2UiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODEKK21zZ2lkICJHZW5lcmFsbHkgaGVscGZ1bCBwcm9ncmVzcyBpbmZvcm1hdGlvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4MgorIywgZnV6enkKK21zZ2lkICJJbnZvY2F0aW9uIGFuZCBzdGF0dXMgb2YgbWFpbnRhaW5lciBzY3JpcHRzIgorbXNnc3RyICJ2c25wcmludGYg4L2m4L2y4LyL4L2K4L264L2K4L2y4LyL4L2g4L2W4L2R4LyL4L2Y4LyL4L2a4L204L2C4L2m4LyNIgorCisjOiBzcmMvbWFpbi5jOjI4MworbXNnaWQgIk91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4NAorbXNnaWQgIkxvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg1CisjLCBmdXp6eQorI3wgbXNnaWQgInJlYWQgZXJyb3IgaW4gY29uZmlndXJhdGlvbiBmaWxlIGAlLjI1NXMnIgorbXNnaWQgIk91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGUiCittc2dzdHIgIuC9ouC9suC9mOC8i+C9puC+kuC+suC9suC9guC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8iyBgJS4yNTVzJyDgvZPgvYTgvIvgvaPgvbTgvIvgvaPgvrfgvYLgvIvgvZTgvaDgvbLgvIvgvaDgvZvgvbzgvaPgvIvgvZbgvI0iCisKKyM6IHNyYy9tYWluLmM6Mjg2Cittc2dpZCAiTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggY29uZmlndXJhdGlvbiBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg3Cittc2dpZCAiRGVwZW5kZW5jaWVzIGFuZCBjb25mbGljdHMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODgKK21zZ2lkICJMb3RzIG9mIGRlcGVuZGVuY2llcy9jb25mbGljdHMgb3V0cHV0IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg5Cittc2dpZCAiVHJpZ2dlciBhY3RpdmF0aW9uIGFuZCBwcm9jZXNzaW5nIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjkwCittc2dpZCAiTG90cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjkxCittc2dpZCAiU2lsbHkgYW1vdW50cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjkyCittc2dpZCAiTG90cyBvZiBkcml2ZWwgYWJvdXQgZWcgdGhlIGRwa2cvaW5mbyBkaXJlY3RvcnkiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyOTMKK21zZ2lkICJJbnNhbmUgYW1vdW50cyBvZiBkcml2ZWwiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzozMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzIGRlYnVnZ2luZyBvcHRpb24sIC0tZGVidWc9PG9jdGFsPiBvciAtRDxvY3RhbD46XG4iCisiXG4iCisiIE51bWJlciAgUmVmLiBpbiBzb3VyY2UgICBEZXNjcmlwdGlvblxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MzExCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJEZWJ1Z2dpbmcgb3B0aW9ucyBjYW4gYmUgbWl4ZWQgdXNpbmcgYml0d2lzZS1vci5cbiIKKyJOb3RlIHRoYXQgdGhlIG1lYW5pbmdzIGFuZCB2YWx1ZXMgYXJlIHN1YmplY3QgdG8gY2hhbmdlLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MzE5Cittc2dpZCAiLS1kZWJ1ZyByZXF1aXJlcyBhbiBvY3RhbCBhcmd1bWVudCIKK21zZ3N0ciAiLS3gvaLgvpDgvrHgvbrgvZPgvIvgvabgvbrgvaPgvIvgvaPgvbTgvIvgvajgvbzgvYDgvIvgvYrgvbHgvaPgvIvgvabgvpLgvrLgvbTgvZbgvIvgvaLgvp/gvYLgvabgvIvgvYLgvYXgvbLgvYLgvIvgvZHgvYLgvbwiCisKKyM6IHNyYy9tYWluLmM6MzQ4CisjLCBjLWZvcm1hdAorbXNnaWQgIm51bGwgcGFja2FnZSBuYW1lIGluIC0taWdub3JlLWRlcGVuZHMgY29tbWEtc2VwYXJhdGVkIGxpc3QgYCUuMjUwcyciCittc2dzdHIgIiIKKyLgvabgvp/gvbzgvYTgvIvgvYbgvIvgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIvgvZjgvbLgvYTgvIvgvaDgvZHgvbLgvIsgLS3gvabgvqPgvYTgvIvgvZjgvbrgvZHgvIst4L2i4L6f4L264L2T4LyL4L2g4L2W4L6y4L264L2j4LyL4L2C4L6x4L2y4LyLIOC9o+C+t+C9vOC9keC8i+C9ouC+n+C9guC9puC8iy3gvabgvbzgvIvgvabgvbzgvIvgvaDgvZXgvrHgvaPgvIvgvaDgvZXgvrHgvaPgvZ3gvIvgvZDgvbzgvIvgvaHgvbLgvYLgvIsgYCUuMjUwcycg4L2T4L2E4LyL4LyNIgorCisjOiBzcmMvbWFpbi5jOjM1NAorIywgYy1mb3JtYXQKK21zZ2lkICItLWlnbm9yZS1kZXBlbmRzIHJlcXVpcmVzIGEgbGVnYWwgcGFja2FnZSBuYW1lLiBgJS4yNTBzJyBpcyBub3Q7ICVzIgorbXNnc3RyICItLeC9puC+o+C9hOC8i+C9mOC9uuC9keC8i+C9luC9nuC9guC8iy0g4L2i4L6f4L264L2T4LyL4L2g4L2W4L6y4L264L2j4LyL4L2j4L204LyL4L2B4L6y4L2y4L2Y4L2m4LyL4L2j4L6h4L2T4LyL4L2Q4L204L2Y4LyL4L2m4L6S4L6y4L2y4L2j4LyL4L2Y4L2y4L2E4LyL4L2C4L2F4L2y4L2C4LyL4L2R4L2C4L28IGAlLjI1MHMnIGngvaDgvZHgvbLgvIs7ICVz4L2Y4L264L2T4LyNIgorCisjOiBzcmMvbWFpbi5jOjM3MSBzcmMvbWFpbi5jOjM4MSBzcmMvbWFpbi5jOjY0OSBkcGtnLXNwbGl0L21haW4uYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBpbnRlZ2VyIGZvciAtLSVzOiBgJS4yNTBzJyIKK21zZ3N0ciAiLS0lczogYCUuMjUwcycg4L2C4L2y4LyL4L2R4L284L2T4LyL4L2j4L204LyL4L2T4L204L2m4LyL4L2Y4L264L2R4LyL4L2n4L6y4L2y4L2j4LyL4L2o4L2E4LyL4LyNIgorCisjOiBzcmMvbWFpbi5jOjQzOAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBleGVjdXRpbmcgaG9vayAnJXMnLCBleGl0IGNvZGUgJWQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzo0NjUKK21zZ2lkICJzdGF0dXMgbG9nZ2VyIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6NDgwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlcyBmb3JjaW5nIG9wdGlvbnMgLSBjb250cm9sIGJlaGF2aW91ciB3aGVuIHByb2JsZW1zIGZvdW5kOlxuIgorIiAgd2FybiBidXQgY29udGludWU6ICAtLWZvcmNlLTx0aGluZz4sPHRoaW5nPiwuLi5cbiIKKyIgIHN0b3Agd2l0aCBlcnJvcjogICAgLS1yZWZ1c2UtPHRoaW5nPiw8dGhpbmc+LC4uLiB8IC0tbm8tZm9yY2UtPHRoaW5nPiwuLi5cbiIKKyIgRm9yY2luZyB0aGluZ3M6XG4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzo0OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIldBUk5JTkcgLSB1c2Ugb2Ygb3B0aW9ucyBtYXJrZWQgWyFdIGNhbiBzZXJpb3VzbHkgZGFtYWdlIHlvdXIgaW5zdGFsbGF0aW9uLlxuIgorIkZvcmNpbmcgb3B0aW9ucyBtYXJrZWQgWypdIGFyZSBlbmFibGVkIGJ5IGRlZmF1bHQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzo1MDQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBmb3JjZS9yZWZ1c2Ugb3B0aW9uIGAlLipzJyIKK21zZ3N0ciAi4L2Y4LyL4L2k4L264L2m4LyL4L2U4L2g4L2y4LyL4L2W4L2E4LyL4L2W4L2Z4L284L2E4LyL4L2T4L2y4LyLL+C9hOC9vOC9puC8i+C9o+C9uuC9k+C8i+C9mOC9suC8i+C9oOC9luC9keC8i+C9k+C9suC9oOC9suC8i+C9guC9keC9mOC8i+C9geC8iyBgJS4qcyciCisKKyM6IHNyYy9tYWluLmM6NTEzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJvYnNvbGV0ZSBmb3JjZS9yZWZ1c2Ugb3B0aW9uICclcydcbiIKK21zZ3N0ciAi4L2J4L264L2T4LyL4L2W4L2i4L6h4LyLOiDgvZXgvZPgvIvgvZjgvbrgvZHgvIvgvZbgvYTgvIvgvZbgvZngvbzgvYTgvIvgvZPgvbLgvIsv4L2E4L284L2m4LyL4L2j4L264L2T4LyL4L2Y4L2y4LyL4L2g4L2W4L2R4LyL4L2T4L2y4LyL4L2C4L2R4L2Y4LyL4L2B4LyLIGAlcydcbiIKKworIzogc3JjL21haW4uYzo2NDMKK21zZ2lkICItLWNvbW1hbmQtZmQgdGFrZXMgb25lIGFyZ3VtZW50LCBub3QgemVybyIKK21zZ3N0ciAiLS1jb21tYW5kLWZkIOC9guC9suC9puC8i+C9puC+kuC+suC9tOC9luC8i+C9ouC+n+C9guC9puC8i+C9guC9heC9suC9guC8i+C9oOC9luC9guC9lOC8i+C9qOC9suC9k+C8iyDgvYDgvrPgvZHgvIvgvYDgvbzgvaLgvIvgvZjgvbrgvZPgvI0iCisKKyM6IHNyYy9tYWluLmM6NjQ1Cittc2dpZCAiLS1jb21tYW5kLWZkIG9ubHkgdGFrZXMgb25lIGFyZ3VtZW50IgorbXNnc3RyICItLWNvbW1hbmQtZmQg4L2C4L2y4L2m4LyL4L2m4L6S4L6y4L204L2W4LyL4L2i4L6f4L2C4L2m4LyL4L2C4L2F4L2y4L2C4LyL4L2i4L6Q4L6x4L2E4L2Y4LyL4L2F4L2y4L2C4LyL4L2g4L2W4L2C4L2U4LyL4L2o4L2y4L2T4LyNIgorCisjOiBzcmMvbWFpbi5jOjY1MQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBvcGVuIGAlaScgZm9yIHN0cmVhbSIKK21zZ3N0ciAi4L2i4L6S4L6x4L204L2T4LyL4L2i4L2y4L2Y4LyL4L2C4L6x4L2y4LyL4L2R4L284L2T4LyL4L2j4L204LyLIGAlaScg4L2B4LyL4L2V4L6x4L264LyL4L2Y4LyL4L2a4L204L2C4L2m4LyNIgorCisjOiBzcmMvbWFpbi5jOjY3NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVvZiBiZWZvcmUgZW5kIG9mIGxpbmUgJWQiCittc2dzdHIgIuC9guC+suC9o+C8i+C9kOC9suC9guC8iyAlZCDgvYLgvbLgvIvgvZjgvYfgvbTgvYLgvIvgvYLgvbLgvIvgvafgvbrgvIvgvZjgvIvgvaLgvbrgvIvgvZbgvIvgvZjgvbrgvZHgvIvgvZTgvaDgvbLgvIvgvajgvbLgvIvgvajgvbzgvIvgvajgvbrgvZXgvI0iCisKKyM6IHNyYy9tYWluLmM6NzE5IHNyYy9tYWluLmM6NzQxIHNyYy9xdWVyeWNtZC5jOjY5MiBzcmMvc3RhdGNtZC5jOjM3OQorIzogZHBrZy1kZWIvbWFpbi5jOjIwMSBkcGtnLXNwbGl0L21haW4uYzoxNjMKK21zZ2lkICJuZWVkIGFuIGFjdGlvbiBvcHRpb24iCittc2dzdHIgIuC9luC+seC8i+C9luC9oOC9suC8i+C9guC9keC9mOC8i+C9geC8i+C9guC9heC9suC9guC8i+C9keC9guC9vCIKKworIzogc3JjL3BhY2thZ2VzLmM6MTEzCittc2dpZCAiIgorInlvdSBtdXN0IHNwZWNpZnkgcGFja2FnZXMgYnkgdGhlaXIgb3duIG5hbWVzLCBub3QgYnkgcXVvdGluZyB0aGUgbmFtZXMgb2YgIgorInRoZSBmaWxlcyB0aGV5IGNvbWUgaW4iCittc2dzdHIgIiIKKyLgvYHgvrHgvbzgvZHgvIvgvYDgvrHgvbLgvabgvIvgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIvgvZrgvbTgvIsg4L2R4L264LyL4L2a4L204LyL4L2g4L284L2E4LyL4L2Y4L2y4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L294L2R4LyL4L2a4L204L2g4L2y4LyL4L2Y4L2y4L2E4LyL4L2a4L204LyL4L2g4L2R4L6y4L264L2T4LyL4L2a4L2y4L2C4LyL4L2W4L2A4L284L2R4LyL4L2R4L264LyL4L2Y4L264L2T4LyL4L2U4L2i4LyLIOC9geC9vOC9hOC8i+C9ouC9oOC9suC8i+C9mOC9suC9hOC8i+C9guC9suC9puC8i+C9puC+puC9uuC8i+C9guC9puC9o+C8iyIKKyLgvZbgvYDgvbzgvZHgvIvgvaDgvZbgvZHgvIvgvZHgvYLgvbwgIgorCisjOiBzcmMvcGFja2FnZXMuYzoxMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyAtLXBlbmRpbmcgZG9lcyBub3QgdGFrZSBhbnkgbm9uLW9wdGlvbiBhcmd1bWVudHMiCittc2dzdHIgIi0tJXMgLS3gvZbgvabgvqPgvaLgvIvgvZPgvbLgvIvgvaDgvZHgvbLgvIvgvYLgvbLgvabgvIvgvYLgvZHgvZjgvIvgvYHgvIst4L2Y4L2y4L2T4LyL4L2U4L2g4L2y4LyL4L2m4L6S4L6y4L204L2W4LyL4L2i4L6f4L2C4L2m4LyL4L2C4LyL4L2T4L2y4LyL4L2h4L2E4LyL4L2Y4L2y4LyL4L2g4L2W4L2CIgorCisjOiBzcmMvcGFja2FnZXMuYzoxMzggc3JjL3F1ZXJ5Y21kLmM6Mzc1IHNyYy9xdWVyeWNtZC5jOjU2NQorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGF0IGxlYXN0IG9uZSBwYWNrYWdlIG5hbWUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMg4L2j4L204LyL4L2J4L204L2E4LyL4L2Y4L2Q4L2g4LyL4L2Q4L204L2Y4LyL4L2m4L6S4L6y4L2y4L2j4LyL4L2Y4L2y4L2E4LyL4L2C4L2y4LyL4L2m4L6S4L6y4L204L2W4LyL4L2i4L6f4L2C4L2m4LyL4L2C4L2F4L2y4L2C4LyL4L2R4L2C4L28IgorCisjOiBzcmMvcGFja2FnZXMuYzoxNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSAlcyBsaXN0ZWQgbW9yZSB0aGFuIG9uY2UsIG9ubHkgcHJvY2Vzc2luZyBvbmNlLlxuIgorbXNnc3RyICIiCisi4L2Q4L204L2Y4LyL4L2m4L6S4L6y4L2y4L2j4LyLICVzIOC9guC9suC9puC8i+C9muC9ouC8i+C9guC9heC9suC9guC8i+C9o+C9puC8i+C9o+C+t+C9guC8i+C9puC+n+C9uuC8i+C9kOC9vOC8i+C9luC9gOC9vOC9keC8i+C9oOC9luC9keC8i+C9k+C9tOC9giAgIOC9o+C9puC8i+C9puC+puC+seC9vOC9ouC8i+C9muC9ouC8i+C9guC9heC9suC9guC8i+C9ouC+kOC+seC9hOC9mOC8i+C9heC9suC9guC8i+C9oOC9luC9keC9neC8i+C9qOC9suC9k+C8jVxuIgorCisjOiBzcmMvcGFja2FnZXMuYzoxODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk1vcmUgdGhhbiBvbmUgY29weSBvZiBwYWNrYWdlICVzIGhhcyBiZWVuIHVucGFja2VkXG4iCisiIGluIHRoaXMgcnVuICEgIE9ubHkgY29uZmlndXJpbmcgaXQgb25jZS5cbiIKK21zZ3N0ciAiIgorIuC9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8iyAlcyDgvYLgvbLgvIvgvaDgvZHgvrLgvIvgvZbgvaTgvbTgvabgvIvgvYLgvYXgvbLgvYLgvIvgvaPgvabgvIvgvaPgvrfgvYLgvIvgvabgvp/gvbrgvIsg4L2W4L2k4L204L2W4LyL4L2h4L284L2R4LyLXG4iCisi4L2g4LyL4L2T4L2y4LyL4L2C4L2h4L284L2C4LyL4L2W4L2A4L284L2j4LyL4L2T4L2E4LyL4L2j4L204LyLISDgvZrgvaLgvIvgvYLgvYXgvbLgvYLgvIvgvaLgvpDgvrHgvYTgvZjgvIvgvYXgvbLgvYLgvIvgvaLgvbLgvZjgvIvgvabgvpLgvrLgvbLgvYLgvIvgvaDgvZbgvZHgvIvgvZHgvbzgvI1cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MjMyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisicGFja2FnZSAlLjI1MHMgaXMgbm90IHJlYWR5IGZvciB0cmlnZ2VyIHByb2Nlc3NpbmdcbiIKKyIgKGN1cnJlbnQgc3RhdHVzIGAlLjI1MHMnIHdpdGggbm8gcGVuZGluZyB0cmlnZ2VycykiCittc2dzdHIgIiIKKyLgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIsgJS4yNTBzIOC9oOC9keC9suC8i+C9ouC9suC9mOC8i+C9puC+kuC+suC9suC9guC8i+C9guC9suC8i+C9keC9vOC9k+C8i+C9o+C9tOC8i+C9guC+suC8i+C9puC+kuC+suC9suC9guC8i+C9mOC9uuC9keC8jVxuIgorIiDgvaLgvbLgvZjgvIvgvabgvpLgvrLgvbLgvYLgvIvgvaDgvZbgvZHgvIvgvZjgvbLgvIvgvZrgvbTgvYLgvabgvIso4L2R4LyL4L2j4L6f4L2g4L2y4LyL4L2C4L2T4L2m4LyL4L2a4L2R4LyLIGAlLjI1MHMnKSIKKworIzogc3JjL3BhY2thZ2VzLmM6MzM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyB3aGljaCBwcm92aWRlcyAlcyBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIgICVzIOC9luC+seC9suC9k+C8i+C9mOC9suC8iyDgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIsgJXMg4L2g4L2R4L2y4LyL4L2i4L6p4LyL4L2W4L2m4L6Q4L6y4L2R4LyL4L2C4L2P4L2E4LyL4L2T4L2y4LyL4L2o4L2y4L2T4LyNXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjMzNworIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgaXMgdG8gYmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAi4L2Q4L204L2Y4LyL4L2m4L6S4L6y4L2y4L2j4LyLICVzIOC9oOC9keC9suC8i+C9ouC+qeC8i+C9luC9puC+kOC+suC9keC8i+C9guC9j+C9hOC8i+C9k+C9suC8i+C9qOC9suC9k+C8jVxuIgorCisjOiBzcmMvcGFja2FnZXMuYzozNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBWZXJzaW9uIG9mICVzIG9uIHN5c3RlbSBpcyAlcy5cbiIKK21zZ3N0ciAiICDgvaLgvbLgvZjgvIvgvaPgvbTgvYLgvabgvIvgvYLgvbTgvaDgvbLgvIsgJXMg4L2C4L2y4LyL4L2Q4L284L2T4LyL4L2i4L2y4L2Y4LyL4L2g4L2R4L2y4LyLICVzIOC9qOC9suC9k+C8jVxuIgorCisjOiBzcmMvcGFja2FnZXMuYzozNzYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyB3aGljaCBwcm92aWRlcyAlcyBhd2FpdHMgdHJpZ2dlciBwcm9jZXNzaW5nLlxuIgorbXNnc3RyICIgICVzIOC9luC+seC9suC9k+C8i+C9mOC9suC8iyDgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIsgJXMg4L2g4L2R4L2y4LyL4L2i4L6p4LyL4L2W4L2m4L6Q4L6y4L2R4LyL4L2C4L2P4L2E4LyL4L2T4L2y4LyL4L2o4L2y4L2T4LyNXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjM4MAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIGF3YWl0cyB0cmlnZ2VyIHByb2Nlc3NpbmcuXG4iCittc2dzdHIgIuC9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8iyAlcyDgvaDgvZHgvbLgvIvgvaLgvqngvIvgvZbgvabgvpDgvrLgvZHgvIvgvYLgvY/gvYTgvIvgvZPgvbLgvIvgvajgvbLgvZPgvI1cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDEwCisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IGFsc28gY29uZmlndXJpbmcgYCVzJyAocmVxdWlyZWQgYnkgYCVzJylcbiIKK21zZ3N0ciAiZHBrZzogIGAlcycg4L2i4L2y4L2Y4LyL4L2m4L6S4L6y4L2y4L2C4LyL4L2h4L2E4LyL4L2g4L2W4L2R4LyL4L2R4L284LyLKGAlcycg4L2C4L2y4LyL4L2R4L2C4L284L2U4LyL4L2o4L2y4L2T4LyNKVxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIHdoaWNoIHByb3ZpZGVzICVzIGlzIG5vdCBjb25maWd1cmVkIHlldC5cbiIKK21zZ3N0ciAiJXMg4L2W4L6x4L2y4L2T4LyL4L2Y4L2y4LyL4L2Q4L204L2Y4LyL4L2m4L6S4L6y4L2y4L2j4LyLICVzIOC9oOC9keC9suC8i+C9keC8i+C9muC9tOC9k+C8i+C9ouC9suC9mOC8i+C9puC+kuC+suC9suC9guC8i+C9mOC8i+C9oOC9luC9keC8i+C9luC9puC8jVxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIGlzIG5vdCBjb25maWd1cmVkIHlldC5cbiIKK21zZ3N0ciAi4L2Q4L204L2Y4LyL4L2m4L6S4L6y4L2y4L2j4LyLICVzIOC9oOC9keC9suC8i+C9keC8i+C9muC9tOC9k+C8i+C9ouC9suC9mOC8i+C9puC+kuC+suC9suC9guC8i+C9mOC8i+C9oOC9luC9keC8i+C9luC9puC8jVxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIHdoaWNoIHByb3ZpZGVzICVzIGlzIG5vdCBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiVzIOC9luC+seC9suC9k+C8i+C9mOC9suC8i+C9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8iyAlcyDgvaDgvZHgvbLgvIvgvYLgvZ7gvbLgvIvgvZbgvZngvbTgvYLgvabgvIvgvZjgvIvgvaDgvZbgvZHgvIvgvZbgvabgvI1cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDM1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICLgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIsgJXMg4L2g4L2R4L2y4LyL4L2C4L2e4L2y4LyL4L2W4L2Z4L204L2C4L2m4LyL4L2Y4LyL4L2g4L2W4L2R4LyL4L2W4L2m4LyNXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQ3MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiICVzICglcykgYnJlYWtzICVzIGFuZCBpcyAlcy5cbiIKK21zZ3N0ciAiJS4yNTBzIOC9guC9suC9puC8iyAlLjI1MHMg4L2W4L6x4L2y4L2T4L2Y4LyL4L2o4L2y4L2T4LyLIOC9keC9uuC8i+C9o+C9puC8i+C9oOC9keC9suC8iyAlcyDgvajgvbLgvZPgvI1cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDc4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIgICVzICglcykgcHJvdmlkZXMgJXMuXG4iCittc2dzdHIgIiVzICjgvaPgvabgvIvgvabgvqbgvrHgvbzgvaLgvIvgvaHgvZPgvIvgvaPgvYIpOiAlc1xuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0ODIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiAgVmVyc2lvbiBvZiAlcyB0byBiZSBjb25maWd1cmVkIGlzICVzLlxuIgorbXNnc3RyICIgIOC9ouC9suC9mOC8i+C9o+C9tOC9guC9puC8i+C9guC9tOC9oOC9suC8iyAlcyDgvYLgvbLgvIvgvZDgvbzgvZPgvIvgvaLgvbLgvZjgvIvgvaDgvZHgvbLgvIsgJXMg4L2o4L2y4L2T4LyNXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjU5NgorbXNnaWQgIiBkZXBlbmRzIG9uICIKK21zZ3N0ciAi4L2j4L204LyL4L2i4L6f4L264L2T4L2Y4LyL4L2o4L2y4L2T4LyNIgorCisjOiBzcmMvcGFja2FnZXMuYzo2MDIKK21zZ2lkICI7IGhvd2V2ZXI6XG4iCittc2dzdHIgIuC9guC9hOC8i+C9o+C+n+C9ouC8i+C9oeC9hOC8izpcbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo3MQorIywgYy1mb3JtYXQKK21zZ2lkICIuLi4vJXMiCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5MQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBlbnN1cmluZyBgJS4yNTBzJyBkb2Vzbid0IGV4aXN0IgorbXNnc3RyICJgJS4yNTBzJyDgvZjgvbrgvZHgvZTgvIvgvYTgvbrgvabgvIvgvZbgvZHgvbrgvZPgvIvgvZbgvZ/gvbzgvZ3gvIvgvZHgvIvgvaDgvZvgvbzgvaPgvIvgvZbgvI0iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTkKK21zZ2lkICJzcGxpdCBwYWNrYWdlIHJlYXNzZW1ibHkiCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxMDgKK21zZ2lkICJyZWFzc2VtYmxlZCBwYWNrYWdlIGZpbGUiCittc2dzdHIgIuC9o+C9vOC9guC8i+C9oOC9m+C9vOC9mOC9puC8i+C9oeC9vOC9keC8i+C9lOC9oOC9suC8i+C9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8jSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiQXV0aGVudGljYXRpbmcgJXMgLi4uXG4iCittc2dzdHIgIiVzIOC9luC9keC9uuC9k+C8i+C9luC9pOC9keC8i+C9oOC9luC9keC8i+C9keC9vC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEzOQorbXNnaWQgInBhY2thZ2Ugc2lnbmF0dXJlIHZlcmlmaWNhdGlvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE0NgorIywgYy1mb3JtYXQKK21zZ2lkICJWZXJpZmljYXRpb24gb24gcGFja2FnZSAlcyBmYWlsZWQhIgorbXNnc3RyICLgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIsgJXMg4L2C4L204LyL4L2j4L204LyL4L2W4L2R4L264L2T4LyL4L2m4L6m4L6x4L284L2i4LyL4L2g4L2W4L2R4LyL4L2T4L2y4LyL4L2g4L2Q4L204L2m4LyL4L2k4L284L2i4LyL4L2W4L6x4L204L2E4LyL4L2h4L284L2R4L2UISIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlZlcmlmaWNhdGlvbiBvbiBwYWNrYWdlICVzIGZhaWxlZCxcbiIKKyJidXQgaW5zdGFsbGluZyBhbnl3YXkgYXMgeW91IHJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiIgorIuC9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8iyAlcyDgvYLgvbTgvIvgvaPgvbTgvIvgvZbgvZHgvbrgvZPgvIvgvabgvqbgvrHgvbzgvaLgvIvgvaDgvZbgvZHgvIvgvZPgvbLgvIvgvaDgvZDgvbTgvabgvIvgvaTgvbzgvaLgvIvgvZbgvrHgvbTgvYTgvIvgvaHgvbzgvZHgvZTgvI1cbiIKKyLgvZHgvbrgvIvgvaDgvZbgvZHgvZ3gvIvgvZHgvIvgvYHgvrHgvbzgvZHgvIvgvYDgvrHgvbLgvIvgvZ7gvbTgvIvgvZbgvIvgvaDgvZbgvZHgvIvgvZHgvbzgvIvgvZbgvZ/gvbTgvZjgvIvgvabgvqbgvbrgvIvgvYLgvZ7gvbLgvIvgvZbgvZngvbTgvYLgvabgvIvgvaDgvZbgvZHgvIvgvZHgvbzgvI1cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFzc2VkXG4iCittc2dzdHIgIuC9ouC+qeC9suC9puC8i+C9puC+pOC+suC9vOC9keC8i+C9oOC9luC9keC8i+C9oeC9vOC9keC9lOC8jVxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE2NSBkcGtnLWRlYi9pbmZvLmM6ODEKKyMsIGZ1enp5Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSB0ZW1wb3JhcnkgZGlyZWN0b3J5IgorbXNnc3RyICLgvYLgvZPgvabgvIvgvabgvpDgvZbgvabgvIvgvabgvqPgvbzgvZHgvIvgvZDgvbzgvIvgvZjgvbLgvYTgvIvgvZbgvZ/gvbzgvIvgvZPgvbLgvIvgvaPgvbTgvIvgvaDgvZDgvbTgvabgvIvgvaTgvbzgvaLgvIvgvZbgvrHgvbTgvYTgvIvgvaHgvbzgvZHgvZTgvI0iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MjA1CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgJXMgaGFzIHRvbyBtYW55IENvbmZsaWN0cy9SZXBsYWNlcyBwYWlycyIKK21zZ3N0ciAi4L2Q4L204L2T4LyL4L2m4L6S4L6y4L2y4L2j4LyLJXPgvIvgvaPgvbTgvIvgvZjgvZDgvbTgvZPgvIvgvZTgvIvgvaPgvbrgvIvgvaQv4L2a4L2W4LyL4L2W4L2Z4L204L2C4L2m4LyL4L2f4L204L2EIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjI0MworIywgYy1mb3JtYXQKK21zZ2lkICJvbGQgdmVyc2lvbiBvZiBwYWNrYWdlIGhhcyBvdmVybHktbG9uZyBpbmZvIGZpbGUgbmFtZSBzdGFydGluZyBgJS4yNTBzJyIKK21zZ3N0ciAiIgorImAlLjI1MHMnIOC9oOC9guC9vOC8i+C9luC9meC9tOC9guC9puC8i+C9lOC9oOC9suC8i+C9puC+kOC9luC9puC8iyDgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIvgvYLgvbLgvIvgvZDgvbzgvZPgvIvgvaLgvbLgvZjgvIvgvaLgvpngvbLgvYTgvZjgvIvgvaDgvZHgvbLgvIvgvaPgvbTgvIvgvYLgvZPgvZjgvIvgvZjgvbrgvZHgvIvgvabgvIvgvZjgvbrgvZHgvIvgvaLgvbLgvYTgvZjgvIvgvZbgvaLgvqHgvIvgvZHgvbzgvZPgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIsiCisi4L2Y4L2y4L2E4LyL4L2g4L2R4L204L2CIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjI4MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIG9ic29sZXRlIGluZm8gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4L2V4L2T4LyL4L2Y4L264L2R4LyL4L2W4L2i4L6h4LyL4L2R4L284L2T4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyLYCUuNTBzJ+C9ouC+qeC8i+C9luC9puC+kOC+suC9keC8i+C9guC9j+C9hOC8i+C9mOC8i+C9muC9tOC9guC9puC8jSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyODYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgKHN1cHBvc2VkKSBuZXcgaW5mbyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLgvZbgvaLgvqHgvIvgvZHgvbzgvZPgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvItgJS41MHMn4L2C4L2m4L2i4L2U4LyL4L2C4L2e4L2y4LyL4L2W4L2Z4L204L2C4L2m4LyL4L2g4L2W4L2R4LyL4L2Y4LyL4L2a4L204L2C4L2m4LyNIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjI5NgorbXNnaWQgInVuYWJsZSB0byBvcGVuIHRlbXAgY29udHJvbCBkaXJlY3RvcnkiCittc2dzdHIgIuC9guC9k+C9puC8i+C9puC+kOC9luC9puC8i+C9muC9keC8i+C9oOC9m+C9suC9k+C8i+C9puC+o+C9vOC9keC8i+C9kOC9vOC8i+C9geC8i+C9leC+seC9uuC8i+C9mOC8i+C9muC9tOC9guC9puC8jSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMDcKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBjb250YWlucyBvdmVybHktbG9uZyBjb250cm9sIGluZm8gZmlsZSBuYW1lIChzdGFydGluZyBgJS41MHMnKSIKK21zZ3N0ciAiIgorIuC9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8i+C9guC+seC9suC8i+C9k+C9hOC8i+C9k+C8iyDgvYLgvZPgvZjgvIvgvZjgvbrgvZHgvIvgvabgvIvgvZjgvbrgvZHgvIvgvaLgvbLgvYTgvZjgvIvgvZrgvZHgvIvgvaDgvZvgvbLgvZPgvIvgvZbgvaLgvqHgvIvgvZHgvbzgvZPgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIvgvZjgvbLgvYTgvIvgvaDgvZHgvbTgvYLgvIsoYCUuNTBzJyDgvaDgvYLgvbzgvIvgvZbgvZngvbTgvYLgvabgvIvgvZHgvbzgvI0pIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMxNAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGNvbnRyb2wgaW5mbyBjb250YWluZWQgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICLgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIvgvZrgvZHgvIvgvaDgvZvgvbLgvZPgvIvgvZbgvaLgvqHgvIvgvZHgvbzgvZPgvIvgvYLgvrHgvbLgvIvgvZPgvYTgvIvgvZPgvIvgvabgvqPgvbzgvZHgvIvgvZDgvbzgvIsgYCUuMjUwcycg4L2g4L2R4L204L2CIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMxNgorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGNvbnRyb2wgaW5mbyBybWRpciBvZiBgJS4yNTBzJyBkaWRuJ3Qgc2F5IG5vdCBhIGRpciIKK21zZ3N0ciAiYCUuMjUwcycg4L2C4L2y4LyL4L2Q4L204L2Y4LyL4L2m4L6S4L6y4L2y4L2j4LyL4L2a4L2R4LyL4L2g4L2b4L2y4L2T4LyL4L2W4L2i4L6h4LyL4L2R4L284L2T4LyL4L2o4L2i4LyL4L2o4L264L2Y4LyL4L2m4L6j4L284L2R4LyL4L2Q4L284LyL4L2C4L2y4L2m4LyL4L2m4L6j4L284L2R4LyL4L2Q4L284LyL4L2Y4L264L2T4LyL4L2f4L264L2i4LyL4L2Y4LyL4L2m4L6z4L2W4LyNIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMyNgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlcyBjb250YWluZWQgbGlzdCBhcyBpbmZvIGZpbGUiCittc2dzdHIgImRwa2c6IOC9ieC9uuC9k+C8i+C9luC9ouC+oeC8iyAtIOC9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8iyAlcyDgvZPgvYTgvIvgvaPgvbTgvIvgvZDgvbzgvIvgvaHgvbLgvYLgvIsg4L2W4L2i4L6h4LyL4L2R4L284L2T4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2m4L6m4L264LyLIOC9oOC9keC9tOC9giIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IGluZm8gZmlsZSBgJS4yNTBzJyBhcyBgJS4yNTBzJyIKK21zZ3N0ciAi4L2W4L2i4L6h4LyL4L2R4L284L2T4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyLIGAlLjI1MHMnIOC9oOC9keC9suC8iyBgJS4yNTBzJyDgvabgvqbgvbrgvIvgvYLgvZ7gvbLgvIvgvZbgvZngvbTgvYLgvabgvIvgvaDgvZbgvZHgvIvgvZjgvIvgvZrgvbTgvYLgvabgvI0iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzQ5IHNyYy9yZW1vdmUuYzoxOTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSBjb250cm9sIGluZm8gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4L2a4L2R4LyL4L2g4L2b4L2y4L2T4LyL4L2W4L2i4L6hIOC9keC9vOC9k+C8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8iyBgJS4yNTBzJyDgvZbgvY/gvbzgvZPgvIvgvYLgvY/gvYTgvIvgvZjgvIvgvZrgvbTgvYLgvabgvI0iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDExCittc2dpZCAiY2Fubm90IGFjY2VzcyBhcmNoaXZlIgorbXNnc3RyICLgvaHgvbLgvYLgvIvgvZjgvZvgvbzgvZHgvIvgvaDgvZvgvbTgvaPgvIvgvabgvqTgvrHgvbzgvZHgvIvgvaDgvZbgvZHgvIvgvZjgvbLgvIvgvZrgvbTgvYLgvabgvI0iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDMzCisjLCBmdXp6eQorI3wgbXNnaWQgImNvbnRyb2wgaW5mb3JtYXRpb24gbGVuZ3RoIgorbXNnaWQgInBhY2thZ2UgY29udHJvbCBpbmZvcm1hdGlvbiBleHRyYWN0aW9uIgorbXNnc3RyICLgvZrgvZHgvIvgvaDgvZvgvbLgvZPgvIvgvZbgvaLgvqHgvIvgvZHgvbzgvZPgvIvgvaLgvbLgvYTgvIvgvZrgvZHgvI0iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDYwCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlY29yZGVkIGluZm8gYWJvdXQgJXMgZnJvbSAlcy5cbiIKK21zZ3N0ciAiJXMg4L2C4L2y4LyL4L2m4L6Q4L284L2i4LyL4L2j4L2m4LyL4L2W4L2i4L6h4LyL4L2R4L284L2T4LyL4L2g4L2R4L2y4LyLICVzIOC9o+C9puC8i+C9keC+suC9k+C8i+C9kOC9vOC8i+C9luC9gOC9vOC9keC8i+C9oeC9vOC9keC8jVxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjQ2OAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGFyY2hpdGVjdHVyZSAoJXMpIGRvZXMgbm90IG1hdGNoIHN5c3RlbSAoJXMpIgorbXNnc3RyICLgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIvgvYLgvrHgvbLgvIvgvZbgvZ/gvbzgvIvgvZbgvYDgvbzgvZEoJXMp4L2g4L2R4L2y4LyL4L2i4L2y4L2Y4LyL4L2j4L204L2C4L2m4LyLKCVzKeC9keC9hOC8i+C9mOC9suC8i+C9mOC9kOC9tOC9k+C8i+C9lOC9puC8jSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1MjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IHJlZ2FyZGluZyAlcyBjb250YWluaW5nICVzLCBwcmUtZGVwZW5kZW5jeSBwcm9ibGVtOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogJXMg4L2T4L2E4LyL4L2T4LyLICVzIOC9oeC9vOC9keC8i+C9mOC9suC9oOC9suC8i+C9puC+kOC9vOC9ouC8i+C9o+C9puC8iyDgvabgvpTgvbzgvZPgvIst4L2i4L6f4L264L2T4LyL4L2g4L2W4L6y4L264L2j4LyL4L2C4L6x4L2y4LyL4L2R4L2A4L2g4LyL4L2E4L2j4LyLOlxuIgorIiVzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjUyNgorIywgYy1mb3JtYXQKK21zZ2lkICJwcmUtZGVwZW5kZW5jeSBwcm9ibGVtIC0gbm90IGluc3RhbGxpbmcgJS4yNTBzIgorbXNnc3RyICLgvabgvpTgvbzgvZPgvIst4L2i4L6f4L264L2T4LyL4L2g4L2W4L6y4L264L2j4LyL4L2C4L6x4L2y4LyL4L2R4L2A4L2g4LyL4L2E4L2j4LyLLSAgJS4yNTBzIOC9guC9nuC9suC8i+C9luC9meC9tOC9guC9puC8i+C9mOC9suC8i+C9oOC9luC8i+C9keC9luC9puC8jSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1MjcKKyMsIGZ1enp5Cittc2dpZCAiaWdub3JpbmcgcHJlLWRlcGVuZGVuY3kgcHJvYmxlbSEiCittc2dzdHIgImRwa2c6IOC9ieC9uuC9k+C8i+C9luC9ouC+oeC8iyAtIOC9puC+lOC9vOC9k+C8iy3gvaLgvp/gvbrgvZPgvIvgvaDgvZbgvrLgvbrgvaPgvIvgvYLgvrHgvbLgvIvgvZHgvYDgvaDgvIvgvYTgvaPgvIvgvabgvqPgvYTgvIvgvZjgvbrgvZHgvIvgvZbgvZ7gvYLgvIvgvZHgvbwhXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTQzCisjLCBjLWZvcm1hdAorbXNnaWQgIlByZXBhcmluZyB0byByZXBsYWNlICVzICVzICh1c2luZyAlcykgLi4uXG4iCittc2dzdHIgIiVzICVzIOC9muC9luC8i+C9luC9meC9tOC9guC9puC8i+C9k+C9suC8i+C9o+C9tOC8i+C9guC+suC8i+C9puC+kuC+suC9suC9guC8i+C9oOC9luC9keC8i+C9keC9vOC8iyglcyDgvaPgvYLgvIvgvaPgvbrgvZPgvIvgvaDgvZDgvZbgvIvgvZDgvbzgvYLgvIspLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIlVucGFja2luZyAlcyAoZnJvbSAlcykgLi4uXG4iCittc2dzdHIgIiVzIOC9luC9pOC9tOC9luC8i+C9keC9vOC8iyglcyDgvaPgvabgvIspLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTgwCisjLCBjLWZvcm1hdAorbXNnaWQgIm5hbWUgb2YgY29uZmZpbGUgKHN0YXJ0aW5nIGAlLjI1MHMnKSBpcyB0b28gbG9uZyAoPiVkIGNoYXJhY3RlcnMpIgorbXNnc3RyICIiCisi4L2i4L2y4L2Y4LyL4L2m4L6S4L6y4L2y4L2C4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2A4L6x4L2y4LyL4L2Y4L2y4L2E4LyLKGAlLjI1MHMnIOC9oOC9guC9vOC8i+C9luC9meC9tOC9guC9puC8i+C9keC9vOC8iykg4L2g4L2R4L2y4LyL4L2C4L2T4L2Y4LyL4L2Y4L264L2R4LyL4L2m4LyL4L2Y4L264L2R4LyL4L2i4L2y4L2E4L2Y4LyL4L2o4L2y4L2T4LyL4L2U4L2m4LyLKD4lZCDgvaHgvbLgvYLgvIvgvaDgvZbgvrLgvbQpIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjYzMyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA3MQorIywgYy1mb3JtYXQKK21zZ2lkICJyZWFkIGVycm9yIGluICUuMjUwcyIKK21zZ3N0ciAiJS4yNTBzIOC9k+C9hOC8i+C9o+C+t+C9guC8i+C9lOC9oOC9suC8i+C9oOC9m+C9vOC9o+C8i+C9luC8jSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyAlLjI1MHMiCittc2dzdHIgIiUuMjUwcyDgvYHgvIvgvZbgvabgvqHgvZjgvIvgvZHgvIvgvaDgvZvgvbzgvaPgvIvgvZbgvI0iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjM3CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHRyeWluZyB0byBvcGVuICUuMjUwcyIKK21zZ3N0ciAiJS4yNTBzIOC9geC8i+C9leC+seC9uuC8i+C9k+C9suC9oOC8i+C9oOC9luC9keC8i+C9ouC+qeC9vOC9o+C8i+C9luC9puC+kOC+seC9uuC9keC9lOC8i+C9keC8i+C9oOC9m+C9vOC9o+C8i+C9luC8jSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2NzgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIkRlLWNvbmZpZ3VyaW5nICVzLCB0byBhbGxvdyByZW1vdmFsIG9mICVzIC4uLlxuIgorbXNnc3RyICIlcyDgvaLgvbLgvZjgvIvgvabgvpLgvrLgvbLgvYLgvIvgvZjgvIvgvZbgvZ/gvbzgvIsgICVzIOC9ouC+qeC8i+C9luC9puC+kOC+suC9keC8i+C9guC9j+C9hOC8i+C9muC9tOC9guC9puC8i+C9k+C9suC9oOC9suC8i+C9keC9vOC9k+C8i+C9o+C9tOC8iy4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjY4MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiRGUtY29uZmlndXJpbmcgJXMgLi4uXG4iCittc2dzdHIgIiVzIOC9ouC+qeC8i+C9luC9puC+kOC+suC9keC8i+C9guC9j+C9hOC8i+C9keC9vOC8iy4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjc1NQorIywgYy1mb3JtYXQKK21zZ2lkICJVbnBhY2tpbmcgcmVwbGFjZW1lbnQgJS4yNTBzIC4uLlxuIgorbXNnc3RyICLgvZrgvZbgvIvgvZjgvIsgJS4yNTBzIOC9luC9pOC9tOC9luC8i+C9keC9vC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjg0MAorbXNnaWQgInBhY2thZ2UgZmlsZXN5c3RlbSBhcmNoaXZlIGV4dHJhY3Rpb24iCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NTQKK21zZ2lkICJlcnJvciByZWFkaW5nIGRwa2ctZGViIHRhciBvdXRwdXQiCittc2dzdHIgImRwa2ctZGViIOC9iuC9ouC8i+C9qOC9oOC9tOC9iuC9suC8i+C9lOC9tOC9j+C9suC8iyDgvaPgvrfgvYLgvIvgvZTgvaDgvbLgvIvgvabgvpDgvZbgvabgvIvgvaDgvZvgvbzgvaPgvIvgvZbgvI0iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6ODU2Cittc2dpZCAiY29ycnVwdGVkIGZpbGVzeXN0ZW0gdGFyZmlsZSAtIGNvcnJ1cHRlZCBwYWNrYWdlIGFyY2hpdmUiCittc2dzdHIgIuC9hOC9k+C8i+C9heC9k+C8i+C9luC9n+C9vOC8i+C9oeC9vOC9keC8i+C9lOC9oOC9suC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9ouC9suC9mOC8i+C9o+C9tOC9guC9puC8i+C9iuC9ouC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8iyAtIOC9hOC9k+C8i+C9heC9k+C8i+C9luC9n+C9vOC8i+C9oeC9vOC9keC8i+C9lOC9oOC9suC8i+C9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8i+C9oeC9suC9guC8i+C9mOC9m+C9vOC9keC8jSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NTkKK21zZ2lkICJkcGtnLWRlYjogemFwIHBvc3NpYmxlIHRyYWlsaW5nIHplcm9zIgorbXNnc3RyICJkcGtnLWRlYjog4L2m4L6y4L2y4L2R4LyL4L2U4L2g4L2y4LyL4L2i4L6S4L6x4L2W4LyL4L2j4L204L2m4LyL4L2A4L6z4L2R4LyL4L2A4L284L2i4LyL4L2a4L204LyL4L2b4L2U4LyL4L2g4L2W4L2R4LyNIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjkxOQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHN0YXQgb2xkIGZpbGUgJyUuMjUwcycgc28gbm90IGRlbGV0aW5nIGl0OiAlcyIKK21zZ3N0ciAiIgorImRwa2c6IOC9ieC9uuC9k+C8i+C9luC9ouC+oeC8iyAtIOC9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9ouC+meC9suC9hOC9mOC8iyBgJS4yNTBzJyDgvabgvbLgvIvgvYrgvbrgvYrgvbLgvIvgvaDgvZbgvZHgvIvgvZjgvIvgvZrgvbTgvYLgvabgvZTgvIvgvaPgvabgvIsg4L2g4L2R4L2y4LyL4L2W4L2P4L284L2T4LyL4L2Y4L2y4LyL4L2C4L2P4L2E4LyLOiAlcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5MjUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkZWxldGUgb2xkIGRpcmVjdG9yeSAnJS4yNTBzJzogJXMiCittc2dzdHIgImRwa2c6IOC9ieC9uuC9k+C8i+C9luC9ouC+oeC8iyAtIOC9puC+o+C9vOC9keC8i+C9kOC9vOC8i+C9ouC+meC9suC9hOC9mOC8iyBgJS4yNTBzJzogJXMg4L2W4L2P4L284L2T4LyL4L2C4L2P4L2E4LyL4L2Y4LyL4L2a4L204L2C4L2m4LyNXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTI4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJvbGQgY29uZmZpbGUgJyUuMjUwcycgd2FzIGFuIGVtcHR5IGRpcmVjdG9yeSAoYW5kIGhhcyBub3cgYmVlbiBkZWxldGVkKSIKK21zZ3N0ciAiIgorImRwa2c6IOC9ieC9uuC9k+C8i+C9luC9ouC+oeC8iyAtIOC9ouC9suC9mOC8i+C9puC+kuC+suC9suC9guC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9ouC+meC9suC9hOC9mOC8iyBgJS4yNTBzJyDgvaDgvZHgvbLgvIvgvabgvqPgvbzgvZHgvIvgvZDgvbzgvIvgvabgvp/gvbzgvYTgvZjgvIvgvYXgvbLgvYLgvIvgvajgvbLgvZPgvIso4L2R4L264LyL4L2j4L2m4LyL4L2g4L2R4L2y4LyL4L2W4L2P4L284L2T4LyL4L2C4L2P4L2E4LyLIgorIuC9oeC9vOC9keC8jSlcbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgb3RoZXIgbmV3IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuC9guC9nuC9k+C8i+C9mOC9suC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9guC9puC9ouC9lOC8iyBgJS4yNTBzJyDgvabgvbLgvIvgvYrgvbrgvYrgvbLgvIvgvaDgvZbgvZHgvIvgvZjgvIvgvZrgvbTgvYLgvabgvI0iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTg2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisib2xkIGZpbGUgJyUuMjUwcycgaXMgdGhlIHNhbWUgYXMgc2V2ZXJhbCBuZXcgZmlsZXMhIChib3RoICclLjI1MHMnIGFuZCAiCisiJyUuMjUwcycpIgorbXNnc3RyICIiCisiZHBrZzog4L2J4L264L2T4LyL4L2W4L2i4L6h4LyLIC0g4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2i4L6Z4L2y4L2E4L2Y4LyLIGAlLjI1MHMnIOC9oOC9keC9suC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9guC9puC9ouC9lOC8i+C9o+C9uuC8i+C9pOC8i+C9heC9suC9guC8i+C9keC9hOC8i+C9guC9heC9suC9keC8i+C9lOC8i+C9qOC9suC9k+C8i+C9lOC9puC8iyEgKGAiCisiJS4yNTBzJyDgvZHgvYQgYCUuMjUwcycg4L2C4L2J4L2y4L2m4LyL4L2G4LyL4L2i4L2E4LyLKVxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEwMjUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWN1cmVseSByZW1vdmUgb2xkIGZpbGUgJyUuMjUwcyc6ICVzIgorbXNnc3RyICJkcGtnOiDgvYngvbrgvZPgvIvgvZbgvaLgvqHgvIsgLSDgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIvgvaLgvpngvbLgvYTgvZjgvIsgYCUlLjI1MHMnOiAlJXMgICAlcyDgvaDgvZbgvZHgvIvgvZjgvIvgvZrgvbTgvYLgvabgvI1cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxMjA2CisjLCBjLWZvcm1hdAorbXNnaWQgIihOb3RpbmcgZGlzYXBwZWFyYW5jZSBvZiAlcywgd2hpY2ggaGFzIGJlZW4gY29tcGxldGVseSByZXBsYWNlZC4pXG4iCittc2dzdHIgIiglcyDgvYLgvbLgvIvgvaHgvaPgvIvgvZjgvbLgvIsg4L2G4LyL4L2a4L2E4LyL4L2m4L6m4L264LyL4L2a4L2W4LyL4L2W4L2Z4L204L2C4L2m4LyL4L2h4L284L2R4LyL4L2Y4L2y4LyLIOC9guC8i+C9heC9suC8i+C9oeC9hOC8i+C9mOC9uuC9keC8jSlcbiIKKworIy4gVFJBTlNMQVRPUlM6IFRoaXMgaXMgdGhlIGhlYWRlciB0aGF0IGFwcGVhcnMgb24gJ2Rwa2ctcXVlcnkgLWwnLiBUaGUKKyMuICogc3RyaW5nIHNob3VsZCByZW1haW4gdW5kZXIgODAgY2hhcmFjdGVycy4gVGhlIHVwcGVyY2FzZSBsZXR0ZXJzIGluCisjLiAqIHRoZSBzdGF0ZSB2YWx1ZXMgZGVub3RlIHRoZSBhYmJyZXZpYXRlZCBsZXR0ZXIgdGhhdCB3aWxsIGFwcGVhciBvbgorIy4gKiB0aGUgZmlyc3QgdGhyZWUgY29sdW1ucywgd2hpY2ggc2hvdWxkIGlkZWFsbHkgbWF0Y2ggdGhlIEVuZ2xpc2ggb25lCisjLiAqIChlLmcuIFJlbW92ZSDihpIgc3VwUmltZWl4KSwgc2VlIGRwa2ctcXVlcnkoMSkgZm9yIGZ1cnRoZXIgZGV0YWlscy4gVGhlCisjLiAqIHRyYW5zbGF0ZWQgbWVzc2FnZSBjYW4gdXNlIGFkZGl0aW9uYWwgbGluZXMgaWYgbmVlZGVkLgorIzogc3JjL3F1ZXJ5Y21kLmM6MTQ5CisjLCBmdXp6eQorbXNnaWQgIiIKKyJEZXNpcmVkPVVua25vd24vSW5zdGFsbC9SZW1vdmUvUHVyZ2UvSG9sZFxuIgorInwgU3RhdHVzPU5vdC9JbnN0L0NvbmYtZmlsZXMvVW5wYWNrZWQvaGFsRi1jb25mL0hhbGYtaW5zdC90cmlnLWFXYWl0L1RyaWctIgorInBlbmRcbiIKKyJ8LyBFcnI/PShub25lKS9SZWluc3QtcmVxdWlyZWQgKFN0YXR1cyxFcnI6IHVwcGVyY2FzZT1iYWQpXG4iCittc2dzdHIgIiIKKyLgvaLgvbrgvIvgvaDgvZHgvbTgvZPgvIvgvaHgvbzgvZHgvZTgvIs94L2Y4LyL4L2k4L264L2m4L2U4LyLL+C9guC9nuC9suC8i+C9luC9meC9tOC9guC9puC8iy/gvaLgvqngvIvgvZbgvabgvpDgvrLgvZHgvIsv4L2V4L6x4L2y4L2i4LyL4L2W4L2m4L6Q4L6y4L2R4LyLL+C9oOC9huC9hOC8i1xuIgorInwg4L2C4L2T4L2m4LyL4L2a4L2R4LyLPeC9mOC9uuC9k+C8iy/gvYLgvZ7gvbLgvIvgvZbgvZngvbTgvYLgvabgvIvgvaDgvZbgvZHgvIvgvaHgvbzgvZHgvZTgvIsv4L2i4L2y4L2Y4LyL4L2m4L6S4L6y4L2y4L2C4LyLLeC9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9muC9tOC8iy/gvZbgvaTgvbTgvZbgvIvgvaHgvbzgvZHgvZTgvIsv4L2g4L2Q4L204L2m4LyL4L2k4L284L2i4LyL4L2W4L6x4L204L2E4LyL4L2Y4L2y4LyLLeC9ouC9suC9mOC8i+C9puC+kuC+suC9suC9guC8iy8iCisi4L2V4L6x4L264L2R4LyL4L2A4LyLLeC9guC9nuC9suC8i+C9luC9meC9tOC9guC9puC8i+C9oOC9luC9keC8i+C9oeC9vOC9keC9lFxuIgorInwvIEVycj89KOC9heC9suC8i+C9mOC9uuC9keC8iykv4L2g4L2G4L2E4LyLL+C9o+C9vOC9guC8i+C9guC9nuC9suC8i+C9luC9meC9tOC9guC9puC8iy/gvZHgvYLgvbzgvIvgvZjgvbLgvIsvWD3gvYLgvYngvbLgvabgvIvgvYbgvIvgvaLgvIst4L2R4L2A4L2g4LyL4L2E4L2j4LyLKOC9guC9k+C9puC8i+C9muC9keC8iyDgvajgvbLgvIvgvajgvaLgvIvgvajgvaLgvIs6IgorIuC9muC9tOC9guC9puC8i+C9oeC9suC9guC8iy3gvZbgvrHgvYTgvIvgvYngvbrgvabgvIspXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjE1MworbXNnaWQgIk5hbWUiCittc2dzdHIgIuC9mOC9suC9hOC8i+C8jSIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MTUzCittc2dpZCAiVmVyc2lvbiIKK21zZ3N0ciAi4L2Q4L284L2T4LyL4L2i4L2y4L2Y4LyNIgorCisjOiBzcmMvcXVlcnljbWQuYzoxNTQKK21zZ2lkICJEZXNjcmlwdGlvbiIKK21zZ3N0ciAi4L2g4L2C4L6y4L264L2j4LyL4L2W4L2k4L2R4LyNIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNDYgc3JjL3F1ZXJ5Y21kLmM6NTExIHNyYy9zZWxlY3QuYzo3NQorIywgYy1mb3JtYXQKK21zZ2lkICJObyBwYWNrYWdlcyBmb3VuZCBtYXRjaGluZyAlcy5cbiIKK21zZ3N0ciAiJXMg4L2j4L204LyL4L2Y4L2Q4L204L2T4LyL4L2Y4L2y4LyL4L2Q4L204L2Y4LyL4L2m4L6S4L6y4L2y4L2j4LyL4L2a4L204LyL4L2Y4LyL4L2g4L2Q4L284L2W4LyNXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI3MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJzaW9uIGJ5ICVzIGZyb206ICVzXG4iCittc2dzdHIgIiVzIOC9guC9suC9puC8iyA6ICVzIOC9o+C9tOC8i+C9geC8i+C9leC+seC9vOC9guC9puC8i+C9puC+kuC+seC9tOC9ouC8i+C9oeC9vOC9keC9lOC8i1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNzUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImRpdmVyc2lvbiBieSAlcyB0bzogJXNcbiIKK21zZ3N0ciAiJXMg4L2C4L2y4L2m4LyLIDogJXMg4L2j4L204LyL4L2B4LyL4L2V4L6x4L284L2C4L2m4LyL4L2m4L6S4L6x4L204L2i4LyL4L2h4L284L2R4L2U4LyLXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI3OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAibG9jYWwgZGl2ZXJzaW9uIGZyb206ICVzXG4iCittc2dzdHIgIuC9ieC9uuC8i+C9guC9k+C9puC8i+C9geC8i+C9puC+kuC+seC9tOC9ouC8jSIKKworIzogc3JjL3F1ZXJ5Y21kLmM6Mjc5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJsb2NhbCBkaXZlcnNpb24gdG86ICVzXG4iCittc2dzdHIgIuC9ieC9uuC8i+C9guC9k+C9puC8i+C9puC+puC9uuC8iyA6ICVzIOC9o+C9tOC8i+C9geC8i+C9leC+seC9vOC9guC9puC8i+C9puC+kuC+seC9tOC9ouC8i+C9oeC9vOC9keC8jVxuIgorCisjOiBzcmMvcXVlcnljbWQuYzozMDkKK21zZ2lkICItLXNlYXJjaCBuZWVkcyBhdCBsZWFzdCBvbmUgZmlsZSBuYW1lIHBhdHRlcm4gYXJndW1lbnQiCittc2dzdHIgIi0t4L2g4L2a4L284L2j4LyL4L2e4L2y4L2W4LyL4L2j4L204LyLIOC9ieC9tOC9hOC8i+C9mOC9kOC9oOC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9mOC9suC9hOC8i+C9guC9suC8i+C9keC9lOC9uuC8i+C9guC9nuC9suC9oOC9suC8i+C9puC+kuC+suC9tOC9luC8i+C9ouC+n+C9guC9puC8i+C9guC9heC9suC9guC8i+C9keC9guC9vCIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MzUwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJObyBwYWNrYWdlcyBmb3VuZCBtYXRjaGluZyAlcy5cbiIKK21zZ2lkICIlczogbm8gcGF0aCBmb3VuZCBtYXRjaGluZyBwYXR0ZXJuICVzLlxuIgorbXNnc3RyICIlcyDgvaPgvbTgvIvgvZjgvZDgvbTgvZPgvIvgvZjgvbLgvIvgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIvgvZrgvbTgvIvgvZjgvIvgvaDgvZDgvbzgvZbgvI1cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MzkzCisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgYCVzJyBpcyBub3QgaW5zdGFsbGVkIGFuZCBubyBpbmZvIGlzIGF2YWlsYWJsZS5cbiIKK21zZ3N0ciAi4L2Q4L204L2Y4LyL4L2m4L6S4L6y4L2y4L2j4LyLIGAlcycg4L2g4L2R4L2y4LyL4L2C4L2e4L2y4LyL4L2W4L2Z4L204L2C4L2m4LyL4L2Y4LyL4L2g4L2W4L2R4LyL4L2W4L2m4LyLIOC9keC9uuC8i+C9o+C9puC8iyDgvZbgvaLgvqHgvIvgvZHgvbzgvZPgvIvgvZrgvbTgvIvgvaDgvZDgvbzgvZbgvIvgvZrgvbTgvYLgvabgvZTgvIvgvZjgvbrgvZHgvI1cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDAxCisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgYCVzJyBpcyBub3QgYXZhaWxhYmxlLlxuIgorbXNnc3RyICLgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIsgYCVzJyDgvaDgvZHgvbLgvIvgvaDgvZDgvbzgvZbgvIvgvZrgvbTgvYLgvabgvZTgvIvgvZjgvbrgvZHgvI1cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDEwIHNyYy9xdWVyeWNtZC5jOjU4NQorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlIGAlcycgaXMgbm90IGluc3RhbGxlZC5cbiIKK21zZ3N0ciAi4L2Q4L204L2Y4LyL4L2m4L6S4L6y4L2y4L2j4LyLIGAlcycg4L2g4L2R4L2y4LyL4L2C4L2e4L2y4LyL4L2W4L2Z4L204L2C4L2m4LyL4L2Y4LyL4L2g4L2W4L2R4LyL4L2W4L2m4LyNXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQxOAorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlIGAlcycgZG9lcyBub3QgY29udGFpbiBhbnkgZmlsZXMgKCEpXG4iCittc2dzdHIgIuC9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8iyBgJXMnIOC9guC9suC8i+C9k+C9hOC8i+C9k+C8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9guC8i+C9k+C9suC8i+C9oeC9hOC8i+C9mOC9uuC9keC8iyghKVxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9jYWxseSBkaXZlcnRlZCB0bzogJXNcbiIKK21zZ3N0ciAi4L2J4L264LyL4L2C4L2T4L2m4LyL4L2m4L6m4L264LyLIDogJXMg4L2j4L204LyL4L2B4LyL4L2V4L6x4L284L2C4L2m4LyL4L2m4L6S4L6x4L204L2i4LyL4L2h4L284L2R4LyNXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQyOAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGRpdmVydHMgb3RoZXJzIHRvOiAlc1xuIgorbXNnc3RyICLgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIvgvYLgvrHgvbLgvabgvIvgvYLgvZ7gvZPgvIvgvZjgvbLgvIvgvZrgvbTgvIs6ICVzIOC9o+C9tOC8i+C9geC8i+C9leC+seC9vOC9guC9puC8i+C9puC+kuC+seC9tOC9ouC9neC8i+C9qOC9suC9k+C8jVxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJ0ZWQgYnkgJXMgdG86ICVzXG4iCittc2dzdHIgIiVzIOC9guC9suC9puC8iyA6ICVzIOC9o+C9tOC8i+C9geC8i+C9leC+seC9vOC9guC9puC8i+C9puC+kuC+seC9tOC9ouC8i+C9oeC9vOC9keC9lOC8i1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0NTIKK21zZ2lkICIiCisiVXNlIGRwa2cgLS1pbmZvICg9IGRwa2ctZGViIC0taW5mbykgdG8gZXhhbWluZSBhcmNoaXZlIGZpbGVzLFxuIgorImFuZCBkcGtnIC0tY29udGVudHMgKD0gZHBrZy1kZWIgLS1jb250ZW50cykgdG8gbGlzdCB0aGVpciBjb250ZW50cy5cbiIKK21zZ3N0ciAiIgorImRwa2cgLS3gvZbgvaLgvqHgvIvgvZHgvbzgvZPgvIsoPSBkcGtnLWRlYiAtLeC9luC9ouC+oeC8i+C9keC9vOC9k+C8iykg4L2g4L2R4L2y4LyLIOC9oeC9suC9guC8i+C9mOC9m+C9vOC9keC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9muC9tOC8i+C9luC9ouC+n+C9guC8i+C9keC9lOC+seC9keC8i+C9oOC9luC9keC8i+C9k+C9suC9oOC9suC8i+C9keC9vOC9k+C8i+C9o+C9puC8iyIKKyLgvaPgvYLgvIvgvaPgvbrgvZPgvIvgvaDgvZDgvZbgvI1cbiIKKyLgvZHgvbrgvIvgvaPgvabgvIsgIGRwa2cgLS0g4L2T4L2E4LyL4L2R4L284L2T4LyL4L2a4L204LyLICg9IGRwa2ctZGViIC0t4L2T4L2E4LyL4L2R4L284L2T4LyL4L2a4L204LyLKSDgvaDgvZHgvbLgvIvgvZHgvbrgvaDgvbLgvIvgvZPgvYTgvIvgvZHgvbzgvZPgvIvgvZvgvZrgvbTgvIvgvZDgvbzgvIvgvZbgvYDgvbzgvZHgvIvgvaDgvZbgvZHgvIvgvZPgvbLgvaDgvbLgvIsiCisi4L2R4L284L2T4LyL4L2j4L2m4LyL4L2Q4L284LyL4L2W4L2A4L284L2R4LyL4L2g4L2W4L2R4LyNXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjU3MAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiLS0lcyB0YWtlcyBhdCBtb3N0IHR3byBhcmd1bWVudHMiCittc2dzdHIgIi0t4L2W4L2f4L284LyL4L2W4L2i4L6p4L2y4L2C4L2m4LyL4L2g4L2R4L2y4LyL4L2C4L2y4L2m4LyL4L2Y4L2E4LyL4L2Y4L2Q4L2g4LyL4L2m4L6S4L6y4L204L2W4LyL4L2i4L6f4L2C4L2m4LyL4L2C4L2J4L2y4L2m4LyL4L2g4L2W4L2C4L2U4LyL4L2o4L2y4L2T4LyNIgorCisjOiBzcmMvcXVlcnljbWQuYzo1NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29udHJvbCBmaWxlIGNvbnRhaW5zICVjIgorbXNnc3RyICIiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjYwMAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuICVzIHBhY2thZ2UgbWFuYWdlbWVudCBwcm9ncmFtIHF1ZXJ5IHRvb2wgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAi4L2M4L2y4LyL4L2W4L2y4LyL4L2h4L2x4L2T4LyLIGAlcycg4L2Q4L204L2Y4LyL4L2m4L6S4L6y4L2y4L2j4LyL4L2g4L2b4L2y4L2T4LyL4L2m4L6Q4L6x4L284L2E4LyL4L2U4L2g4L2y4LyL4L2j4L2m4LyL4L2i4L2y4L2Y4LyL4L2C4L6x4L2y4LyL4L2Q4L284L2T4LyL4L2i4L2y4L2Y4LyLICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjYxOQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLXN8LS1zdGF0dXMgPHBhY2thZ2U+IC4uLiAgICAgICAgRGlzcGxheSBwYWNrYWdlIHN0YXR1cyBkZXRhaWxzLlxuIgorIiAgLXB8LS1wcmludC1hdmFpbCA8cGFja2FnZT4gLi4uICAgRGlzcGxheSBhdmFpbGFibGUgdmVyc2lvbiBkZXRhaWxzLlxuIgorIiAgLUx8LS1saXN0ZmlsZXMgPHBhY2thZ2U+IC4uLiAgICAgTGlzdCBmaWxlcyBgb3duZWQnIGJ5IHBhY2thZ2UocykuXG4iCisiICAtbHwtLWxpc3QgWzxwYXR0ZXJuPiAuLi5dICAgICAgICBMaXN0IHBhY2thZ2VzIGNvbmNpc2VseS5cbiIKKyIgIC1XfC0tc2hvdyBbPHBhdHRlcm4+IC4uLl0gICAgICAgIFNob3cgaW5mb3JtYXRpb24gb24gcGFja2FnZShzKS5cbiIKKyIgIC1TfC0tc2VhcmNoIDxwYXR0ZXJuPiAuLi4gICAgICAgIEZpbmQgcGFja2FnZShzKSBvd25pbmcgZmlsZShzKS5cbiIKKyIgIC1jfC0tY29udHJvbC1wYXRoIDxwYWNrYWdlPiBbPGZpbGU+XVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHJpbnQgcGF0aCBmb3IgcGFja2FnZSBjb250cm9sIGZpbGUuXG4iCisiXG4iCittc2dzdHIgIiIKKyLgvZbgvaLgvqHgvIvgvZbgvYDgvbzgvZHgvIvgvZrgvbTgvIs6XG4iCisiICAtc3wtLeC9guC9k+C9puC8i+C9muC9keC8iyA8cGFja2FnZT4gLi4uICAgICAgICDgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIvgvYLgvZPgvabgvIvgvZrgvZHgvIvgvYDgvrHgvbLgvIvgvaLgvpLgvrHgvabgvIvgvZbgvaTgvZHgvIvgvZrgvbTgvIvgvZbgvYDgvrLgvZjgvIvgvabgvp/gvbzgvZPgvIvgvaDgvZbgvZHgvI1cbiIKKyIgIC1wfC0t4L2R4L2U4L2i4LyL4L2W4L2m4L6Q4L6y4L204L2T4LyLLeC9oOC9kOC9vOC9luC8i+C9muC9tOC9guC9puC9lOC8iyA8cGFja2FnZT4gLi4uICAg4L2g4L2Q4L284L2W4LyL4L2a4L204L2C4L2m4L2U4LyL4L2Q4L284L2T4LyL4L2i4L2y4L2Y4LyL4L2C4L6x4L2y4LyL4L2i4L6S4L6x4L2m4LyL4L2W4L2k4L2R4LyL4L2a4L204LyL4L2W4L2A4L6y4L2Y4LyL4L2m4L6f4L284L2T4LyLIgorIuC9oOC9luC9keC8jVxuIgorIiAgLUx8LS3gvZDgvbzgvIvgvaHgvbLgvYLgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIvgvZrgvbTgvIsgPHBhY2thZ2U+IC4uLiAgICAg4L2Q4L284LyL4L2h4L2y4L2C4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2a4L204LyLICDgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIso4L2a4L204LyLKeC9guC9suC9puC8iyBgb3duZWQnICIKKyLgvaDgvZbgvZHgvIvgvaHgvbzgvZHgvI1cbiIKKyIgIC1sfC0t4L2Q4L284LyL4L2h4L2y4L2C4LyLIFs8cGF0dGVybj4gLi4uXSAgICAgICAg4L2Q4L204L2Y4LyL4L2m4L6S4L6y4L2y4L2j4LyL4L2a4L204LyL4L2m4L6Z4L2y4L2E4LyL4L2W4L2m4L6h4L204L2m4LyL4L2m4L6m4L264LyL4L2Q4L284LyL4L2W4L2A4L284L2R4LyL4L2g4L2W4L2R4LyNXG4iCisiICAtV3wtLeC9puC+n+C9vOC9k+C8iyA8cGF0dGVybj4gLi4uICAgICAgICAgIOC9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8iyjgvZrgvbTgvIsp4L2C4L204LyL4L2W4L2i4L6h4LyL4L2R4L284L2T4LyL4L2m4L6f4L284L2T4LyNXG4iCisiICAtU3wtLeC9oOC9muC9vOC9o+C8i+C9nuC9suC9luC8iyA8cGF0dGVybj4gLi4uICAgICAgICDgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIso4L2a4L204LyLKeC9luC9keC9guC8i+C9keC9luC9hOC8i+C9luC9n+C9tOC9hOC8i+C9mOC9suC8i+C9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8iyjgvZrgvbTgvIsp4L2g4L2a4L284L2j4LyNXG4iCisiXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjYzNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorIiAgLWZ8LS1zaG93Zm9ybWF0PTxmb3JtYXQ+ICAgICAgICAgVXNlIGFsdGVybmF0aXZlIGZvcm1hdCBmb3IgLS1zaG93LlxuIgorIlxuIgorbXNnc3RyICIiCisi4L2C4L2R4L2Y4LyL4L2B4LyL4L2a4L204LyLOlxuIgorIiAgLS3gvZbgvZHgvYLgvIvgvabgvpDgvrHgvbzgvYTgvIvgvabgvqPgvbzgvZHgvIvgvZDgvbzgvIs9PGRpcmVjdG9yeT4gICAgICAgICAgIDxkaXJlY3Rvcnk+IOC9oOC9keC9suC8iyAlcyDgvYLgvbLgvIvgvZrgvZbgvIvgvaPgvbTgvIvgvaPgvYLgvIvgvaPgvbrgvZPgvIvgvaDgvZDgvZbgvI1cbiIKKyIgIC1mfC0t4L2i4L6p4LyL4L2m4L6S4L6y4L2y4L2C4LyL4L2m4L6f4L284L2T4LyLPTxmb3JtYXQ+ICAgICAgICAgLS3gvabgvp/gvbzgvZPgvIsg4L2T4L2y4L2g4L2y4LyL4L2R4L284L2T4LyL4L2j4L204LyL4L2i4L6p4LyL4L2m4L6S4L6y4L2y4L2C4LyL4L2m4L6k4L264L2j4LyL4L2Y4LyL4L2j4L2C4LyL4L2j4L264L2T4LyL4L2g4L2Q4L2W4LyNXG4iCisiXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjY0MiBkcGtnLWRlYi9tYWluLmM6MTEyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJGb3JtYXQgc3ludGF4OlxuIgorIiAgQSBmb3JtYXQgaXMgYSBzdHJpbmcgdGhhdCB3aWxsIGJlIG91dHB1dCBmb3IgZWFjaCBwYWNrYWdlLiBUaGUgZm9ybWF0XG4iCisiICBjYW4gaW5jbHVkZSB0aGUgc3RhbmRhcmQgZXNjYXBlIHNlcXVlbmNlcyBcXG4gKG5ld2xpbmUpLCBcXHIgKGNhcnJpYWdlXG4iCisiICByZXR1cm4pIG9yIFxcXFwgKHBsYWluIGJhY2tzbGFzaCkuIFBhY2thZ2UgaW5mb3JtYXRpb24gY2FuIGJlIGluY2x1ZGVkXG4iCisiICBieSBpbnNlcnRpbmcgdmFyaWFibGUgcmVmZXJlbmNlcyB0byBwYWNrYWdlIGZpZWxkcyB1c2luZyB0aGUgJHt2YXJbOyIKKyJ3aWR0aF19XG4iCisiICBzeW50YXguIEZpZWxkcyB3aWxsIGJlIHJpZ2h0LWFsaWduZWQgdW5sZXNzIHRoZSB3aWR0aCBpcyBuZWdhdGl2ZSBpbiAiCisid2hpY2hcbiIKKyIgIGNhc2UgbGVmdCBhbGlnbm1lbnQgd2lsbCBiZSB1c2VkLlxuIgorbXNnc3RyICIiCisi4L2i4L6p4LyL4L2m4L6S4L6y4L2y4L2C4LyL4L2a4L2y4L2C4LyL4L2m4L6m4L6x4L284L2i4LyLOlxuIgorIiAg4L2i4L6p4LyL4L2m4L6S4L6y4L2y4L2C4LyL4L2g4L2R4L2y4LyLIOC9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8i+C9ouC9uuC9oOC9suC8i+C9keC9vOC9k+C8i+C9o+C9tOC8i+C9qOC9oOC9tOC9iuC9suC8i+C9lOC9tOC9iuC9suC8iyDgvajgvbLgvZPgvIvgvZjgvbLgvIvgvaHgvbLgvYLgvIvgvaLgvpLgvrHgvbTgvZPgvIvgvYXgvbLgvYLgvIvgvajgvbLgvZPgvI0g4L2i4L6p4LyL4L2m4L6S4L6y4L2y4L2C4LyL4L2g4L2R4L2y4LyL4L2C4L2y4L2m4LyLXG4iCisiICDgvZrgvZHgvIvgvaPgvqHgvZPgvIvgvZDgvaLgvIvgvaDgvZbgvrHgvbTgvYTgvIvgvaLgvbLgvZjgvIvgvZrgvbTgvIsg4L2C4L6y4L2E4L2m4LyL4L2m4L204LyL4L2W4L2Z4L204L2C4L2m4LyL4L2g4L284L2E4LyLIFxcbiAo4L2C4L6y4L2j4LyL4L2Q4L2y4L2C4LyL4L2C4L2m4L2i4L2U4LyLKSwgXFxyICjgvabgvpDgvrHgvbrgvaPgvIvgvaDgvZHgvrLgvbrgvZPgvItcbiIKKyIgIOC9puC+s+C9ouC8i+C9o+C9vOC9guC8iykg4L2h4L2E4LyL4L2T4LyLIFxcXFwgKOC9ieC9guC8i+C9ouC+kOC+seC9hOC8i+C9guC9oeC9vOC8i+C9pOC9keC8i+C9o+C9vOC9guC8i+C9lOC8iyngvI0g4L2Q4L204L2Y4LyL4L2m4L6S4L6y4L2y4L2j4LyL4L2W4L2i4L6h4LyL4L2R4L284L2T4LyL4L2g4L2R4L2y4LyLXG4iCisiICAke3Zhcls7d2lkdGhdfeC9muC9suC9guC8i+C9puC+puC+seC9vOC9ouC8i+C9o+C9guC8i+C9o+C9uuC9k+C8i+C9oOC9kOC9luC8iyDgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIvgvYLgvrHgvbLgvIvgvabgvIvgvabgvpLgvbzgvIvgvZrgvbTgvIvgvaPgvbTgvIsg4L2g4L2C4L6x4L204L2i4LyL4L2F4L2T4LyL4L2C4L2e4L2y4LyL4L2W4L2m4L6f4L204L2T4LyL4L2a4L204LyL4L2W4L2Z4L204L2C4L2m4LyL4L2e4L2y4L2T4L2Y4LyLIgorIuC9o+C9puC8i+C9guC+suC9hOC9puC8i+C9puC9tOC8i+C9luC9meC9tOC9guC9puC8i+C9muC9tOC9guC9puC8jVxuIgorIiAg4L2i4L6S4L6x4LyL4L2a4L2R4LyL4L2g4L2R4L2y4LyL4L2Y4L264L2R4LyL4L2G4LyL4L2Y4L264L2T4LyL4L2a4L204L2T4LyL4L2m4LyL4L2m4L6S4L284LyL4L2g4L2R4L2y4LyLIOC9guC9oeC9puC8iy3gvZXgvrLgvYTgvIvgvaDgvZbgvZHgvIvgvaDgvbzgvYTgvItcbiIKKyIgIOC9guC9oeC9vOC9k+C8i+C9leC+suC9hOC8i+C9puC+kuC+suC9suC9guC8i+C9o+C9guC8i+C9o+C9uuC9k+C8i+C9oOC9kOC9luC8i+C9mOC9suC8i+C9guC9k+C9keC8i+C9keC9vOC9k+C8i+C9k+C9hOC8i+C9o+C9tOC8jVxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo2NTYKK21zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IHF1ZXJ5aW5nIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcmVtb3ZlLmM6ODgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nIHJlcXVlc3QgdG8gcmVtb3ZlICUuMjUwcyB3aGljaCBpc24ndCBpbnN0YWxsZWQuIgorbXNnc3RyICIiCisiZHBrZyAtIOC9ieC9uuC9k+C8i+C9luC9ouC+oeC8izog4L2C4L2e4L2y4LyL4L2W4L2Z4L204L2C4L2m4LyL4L2Y4LyL4L2g4L2W4L2R4LyL4L2W4L2i4LyL4L2h4L284L2R4LyL4L2Y4L2y4LyLICUuMjUwcyDgvaLgvqkg4L2W4L2m4L6Q4L6y4L2R4LyL4L2C4L2P4L2E4LyL4L2T4L2y4L2g4L2y4LyL4L2e4L204LyL4L2W4LyL4L2g4L2R4L2y4LyL4L2m4L6j4L2E4LyL4L2Y4L264L2R4LyL4L2W4L2e4L2C4LyLIgorIuC9keC9vOC8jVxuIgorCisjOiBzcmMvcmVtb3ZlLmM6OTUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpZ25vcmluZyByZXF1ZXN0IHRvIHJlbW92ZSAlLjI1MHMsIG9ubHkgdGhlIGNvbmZpZ1xuIgorIiBmaWxlcyBvZiB3aGljaCBhcmUgb24gdGhlIHN5c3RlbS4gVXNlIC0tcHVyZ2UgdG8gcmVtb3ZlIHRoZW0gdG9vLiIKK21zZ3N0ciAiIgorImRwa2cgLSDgvYngvbrgvZPgvIvgvZbgvaLgvqHgvIs6ICAlLjI1MHMg4L2i4L6pIOC9luC9puC+kOC+suC9keC8i+C9guC9j+C9hOC8i+C9k+C9suC9oOC9suC8i+C9nuC9tOC8i+C9luC8i+C9oOC9keC9suC8i+C9puC+o+C9hOC8i+C9mOC9uuC9keC8i+C9luC9nuC9guC8i+C9keC9vOC8iyAgIOC9ouC9suC9mOC8i+C9puC+kuC+suC9suC9guC8i1xuIgorIuC9oeC9suC9guC8i+C9puC+o+C9vOC9keC8iyDgvaLgvbLgvZjgvIvgvaPgvbTgvYLgvabgvIvgvaPgvbTgvYLgvabgvIvgvYLgvbTgvIvgvaPgvbTgvIvgvaHgvbzgvZHgvIvgvZjgvbLgvIvgvaLgvpDgvrHgvYTgvZjgvIvgvYXgvbLgvYIgICAtLeC9keC9uuC8i+C9muC9tOC8i+C9ouC+qeC8i+C9luC9puC+kOC+suC9keC8i+C9guC9j+C9hOC8i+C9k+C9suC9oOC9suC8i+C9keC9vOC9k+C8i+C9o+C9puC8iy0t4L2V4L6x4L2y4L2i4LyL4L2W4L2m4L6Q4L6y4L2R4LyLIOC9o+C9guC8i+C9o+C9uuC9k+C8iyIKKyLgvaDgvZDgvZbgvI1cbiIKKworIzogc3JjL3JlbW92ZS5jOjEwMworbXNnaWQgIlRoaXMgaXMgYW4gZXNzZW50aWFsIHBhY2thZ2UgLSBpdCBzaG91bGQgbm90IGJlIHJlbW92ZWQuIgorbXNnc3RyICLgvaDgvIvgvZPgvbLgvIvgvaDgvZHgvbLgvIvgvZjgvbrgvZHgvIvgvZDgvZbgvabgvIvgvZjgvbrgvZHgvIvgvZTgvaDgvbLgvIvgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvYLgvIvgvYXgvbLgvYLgvIvgvajgvbLgvZPgvIsgLSDgvaDgvZHgvbLgvIvgvaLgvqngvIvgvZbgvabgvpDgvrLgvZHgvIvgvZjgvIvgvYLgvY/gvYTgvIvgvZTgvaLgvIvgvZbgvZ7gvYLgvIvgvZHgvYLgvbwiCisKKyM6IHNyYy9yZW1vdmUuYzoxMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IGRlcGVuZGVuY3kgcHJvYmxlbXMgcHJldmVudCByZW1vdmFsIG9mICVzOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzog4L2i4L6f4L264L2T4LyL4L2g4L2W4L6y4L264L2j4LyL4L2C4L6x4L2y4LyL4L2R4L2A4L2g4LyL4L2E4L2j4LyL4L2C4L6x4L2y4L2m4LyLICVzIOC9ouC+qeC8i+C9luC9puC+kOC+suC9keC8i+C9guC9j+C9hOC8i+C9k+C9suC8i+C9oOC9keC9suC8i+C9puC+lOC9vOC9k+C8i+C9luC9gOC9guC8i+C9oOC9luC9keC9neC8i+C9qOC9suC9kzpcbiIKKyIlcyIKKworIzogc3JjL3JlbW92ZS5jOjEzMAorbXNnaWQgImRlcGVuZGVuY3kgcHJvYmxlbXMgLSBub3QgcmVtb3ZpbmciCittc2dzdHIgIuC9ouC+n+C9uuC9k+C8i+C9oOC9luC9mOC+suC9uuC9o+C8i+C9guC+seC+seC9suC8i+C9keC9gOC9oOC8i+C9hOC9o+C8i+C9muC9tOC8iyAtIOC9ouC+qeC8i+C9luC9puC+kOC+suC9keC8i+C9mOC9suC8i+C9guC9j+C9hOC8i+C8jSIKKworIzogc3JjL3JlbW92ZS5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogJXM6IGRlcGVuZGVuY3kgcHJvYmxlbXMsIGJ1dCByZW1vdmluZyBhbnl3YXkgYXMgeW91IHJlcXVlc3RlZDpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiDgvaLgvp/gvbrgvZPgvIvgvaDgvZbgvrLgvbrgvaPgvIvgvYLgvrHgvbLgvIvgvZHgvYDgvaDgvIvgvYTgvaPgvIvgvZrgvbTgvIsg4L2R4L264LyL4L2g4L2W4L2R4L2d4LyL4L2R4LyLIOC9geC+seC9vOC9keC8i+C9gOC+seC9suC8i+C9nuC9tOC8i+C9luC8i+C9oOC9luC9keC8i+C9keC9vOC8i+C9luC9n+C9tOC9mOC8i+C9puC+puC9uuC8i+C9ouC+qSDgvZbgvabgvpDgvrLgvZHgvIvgvYLgvY/gvYTgvIvgvZHgvbw6XG4iCisiJXMiCisKKyM6IHNyYy9yZW1vdmUuYzoxNDIKK21zZ2lkICIiCisiUGFja2FnZSBpcyBpbiBhIHZlcnkgYmFkIGluY29uc2lzdGVudCBzdGF0ZSAtIHlvdSBzaG91bGRcbiIKKyIgcmVpbnN0YWxsIGl0IGJlZm9yZSBhdHRlbXB0aW5nIGEgcmVtb3ZhbC4iCittc2dzdHIgIiIKKyLgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIvgvaDgvZHgvbLgvIvgvaLgvbLgvZjgvIvgvZjgvZDgvbTgvZHgvIvgvZjgvbrgvZPgvIvgvZTgvaDgvbLgvIvgvYLgvZPgvabgvIvgvaPgvbTgvYLgvabgvIvgvZbgvrHgvYTgvIvgvYngvbrgvabgvIvgvZPgvYTgvIvgvaPgvbTgvIvgvajgvbLgvZPgvIvgvZjgvabgvIsgLSDgvYHgvrHgvbzgvZHgvIvgvYDgvrHgvbLgvabgvItcbiIKKyLgvaDgvZHgvbLgvIvgvaLgvqkg4L2W4L2m4L6Q4L6y4L2R4LyL4L2C4L2P4L2E4LyL4L2T4L2y4L2g4L2y4LyL4L2R4L2U4L2g4LyL4L2Y4LyL4L2W4L2F4L2Y4LyL4L2U4L2g4L2y4LyL4L2n4L264LyL4L2Y4LyLIOC9o+C9vOC9guC8i+C9guC9nuC9suC8i+C9luC9meC9tOC9guC9puC8i+C9oOC9luC9keC8i+C9keC9guC9vCIKKworIzogc3JjL3JlbW92ZS5jOjE0OQorIywgYy1mb3JtYXQKK21zZ2lkICJXb3VsZCByZW1vdmUgb3IgcHVyZ2UgJXMgLi4uXG4iCittc2dzdHIgIiVzIOC9ouC+qeC8i+C9luC9puC+kOC+suC9keC8i+C9oeC9hOC8i+C9k+C8i+C9leC+seC9suC9ouC8i+C9luC9puC+kOC+suC9keC8i+C9guC9j+C9hOC8i+C9oOC9vOC9hOC8iy4uLlxuIgorCisjOiBzcmMvcmVtb3ZlLmM6MTU3CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlbW92aW5nICVzIC4uLlxuIgorbXNnc3RyICIlcyDgvaLgvqngvIvgvZbgvabgvpDgvrLgvZHgvIvgvYLgvY/gvYTgvIvgvZHgvbzgvIsuLi5cbiIKKworIzogc3JjL3JlbW92ZS5jOjI3NSBzcmMvcmVtb3ZlLmM6MzY2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisid2hpbGUgcmVtb3ZpbmcgJS4yNTBzLCB1bmFibGUgdG8gcmVtb3ZlIGRpcmVjdG9yeSAnJS4yNTBzJzogJXMgLSBkaXJlY3RvcnkgIgorIm1heSBiZSBhIG1vdW50IHBvaW50PyIKK21zZ3N0ciAiIgorIuC9jOC9suC8i+C9lOC9suC8i+C9gOC9uuC8i+C9h+C9suC8iyAtIOC9ieC9uuC9k+C8i+C9luC9ouC+oeC8izogICUuMjUwcyDgvaLgvqngvIvgvZbgvabgvpDgvrLgvZHgvIvgvYLgvY/gvYTgvIvgvZTgvaDgvbLgvIvgvabgvpDgvZbgvabgvIsgIOC9puC+o+C9vOC9keC8i+C9kOC9vOC8iyBgJS4yNTBzJyDgvaLgvqngvIvgvZbgvabgvpDgvrLgvZHgvIvgvYLgvY/gvYTgvIvgvZjgvIsiCisi4L2a4L204L2C4L2m4LyLOiAlcyAtIOC9puC+o+C9vOC9keC8i+C9kOC9vOC8i+C9oOC9keC9suC8i+C9puC+puC+seC9ouC8i+C9luC9ouC+qeC9uuC9guC9puC8i+C9gOC+seC9suC8i+C9puC8i+C9muC9suC9guC9puC8i+C9heC9suC9guC8i+C9qOC9suC9k+C9mOC8i+C9oOC9vOC9hOC8iz9cbiIKKworIzogc3JjL3JlbW92ZS5jOjI4OQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNlY3VyZWx5IHJlbW92ZSAnJS4yNTBzJyIKK21zZ3N0ciAiJS4yNTBzIOC9guC9puC9ouC8i+C9luC9puC+kOC+suC9tOC9k+C8i+C9oOC9luC9keC8i+C9mOC8i+C9muC9tOC9guC9puC8jSIKKworIzogc3JjL3JlbW92ZS5jOjM2MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAid2hpbGUgcmVtb3ZpbmcgJS4yNTBzLCBkaXJlY3RvcnkgJyUuMjUwcycgbm90IGVtcHR5IHNvIG5vdCByZW1vdmVkLiIKK21zZ3N0ciAiIgorIuC9jOC9suC8i+C9lOC9suC8i+C9gOC9uuC8i+C9h+C9suC8iyAtIOC9ieC9uuC9k+C8i+C9luC9ouC+oeC8izogJS4yNTBzIOC9ouC+qeC8i+C9luC9puC+kOC+suC9keC8i+C9guC9j+C9hOC8i+C9lOC9oOC9suC8i+C9puC+kOC9luC9puC8iyDgvabgvqPgvbzgvZHgvIvgvZDgvbzgvIsgYCUuMjUwcycg4L2m4L6f4L284L2E4L2Y4LyL4L2Y4L264L2T4L2Y4LyL4L2j4L2m4LyL4L2i4L6p4LyL4L2W4L2m4L6Q4L6y4L2R4LyLIgorIuC9mOC8i+C9guC9j+C9hOC8i+C8jVxuIgorCisjOiBzcmMvcmVtb3ZlLmM6MzgzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW5ub3QgcmVtb3ZlIGAlLjI1MHMnIgorbXNnaWQgImNhbm5vdCByZW1vdmUgJyUuMjUwcyciCittc2dzdHIgImAlLjI1MHMnIOC9ouC+qeC8i+C9luC9puC+kOC+suC9keC8i+C9guC9j+C9hOC8i+C9mOC9suC8i+C9muC9tOC9guC9puC8jSIKKworIzogc3JjL3JlbW92ZS5jOjQwOQorIywgYy1mb3JtYXQKK21zZ2lkICJQdXJnaW5nIGNvbmZpZ3VyYXRpb24gZmlsZXMgZm9yICVzIC4uLlxuIgorbXNnc3RyICIlcyDgvYLgvbLgvIvgvZHgvbzgvZPgvIvgvaPgvbTgvIvgvaLgvbLgvZjgvIvgvabgvpLgvrLgvbLgvYLgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIvgvZXgvrHgvbLgvaLgvIvgvZbgvabgvpDgvrLgvZHgvIvgvYLgvY/gvYTgvIvgvZHgvbzgvIsuLi5cbiIKKworIzogc3JjL3JlbW92ZS5jOjQ1OQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVtb3ZlIG9sZCBjb25maWcgZmlsZSBgJS4yNTBzJyAoPSBgJS4yNTBzJykiCittc2dzdHIgIuC9ouC9suC9mOC8i+C9puC+kuC+suC9suC9guC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i2AlLjI1MHMnKD3gvItgJS4yNTBzJykg4L2i4L6Z4L2y4L2E4L2Y4LyLIOC9ouC+qeC8i+C9luC9puC+kOC+suC9keC8i+C9guC9j+C9hOC8i+C9mOC8i+C9muC9tOC9guC9puC8jSIKKworIzogc3JjL3JlbW92ZS5jOjQ3NAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVhZCBjb25maWcgZmlsZSBkaXIgYCUuMjUwcycgKGZyb20gYCUuMjUwcycpIgorbXNnc3RyICLgvaLgvbLgvZjgvIvgvabgvpLgvrLgvbLgvYLgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIsg4L2m4L6j4L284L2R4LyL4L2Q4L284LyLYCUuMjUwcycoYCUuMjUwcycg4L2j4L2m4LyLKeC9o+C+t+C9guC8i+C9mOC8i+C9muC9tOC9guC9puC8jSIKKworIzogc3JjL3JlbW92ZS5jOjUxMAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVtb3ZlIG9sZCBiYWNrdXAgY29uZmlnIGZpbGUgYCUuMjUwcycgKG9mIGAlLjI1MHMnKSIKK21zZ3N0ciAi4L2i4L6S4L6x4L2W4LyL4L2Q4L2C4LyL4L2i4L2y4L2Y4LyL4L2m4L6S4L6y4L2y4L2C4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyLYCUuMjUwcycgKGAlLjI1MHMnIOC9guC9suC8iykg4L2i4L6Z4L2y4L2E4L2Y4LyL4L2i4L6p4LyL4L2W4L2m4L6Q4L6y4L2R4LyL4L2C4L2P4L2E4LyL4L2Y4LyL4L2a4L204L2C4L2m4LyNIgorCisjOiBzcmMvcmVtb3ZlLmM6NTY4Cittc2dpZCAiY2Fubm90IHJlbW92ZSBvbGQgZmlsZXMgbGlzdCIKK21zZ3N0ciAi4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2A4L6x4L2y4LyL4L2Q4L284LyL4L2h4L2y4L2C4LyL4L2i4L6Z4L2y4L2E4L2Y4LyL4L2i4L6p4LyL4L2W4L2m4L6Q4L6y4L2R4LyL4L2C4L2P4L2E4LyL4L2Y4L2y4LyL4L2a4L204L2C4L2m4LyNIgorCisjOiBzcmMvcmVtb3ZlLmM6NTc0Cittc2dpZCAiY2FuJ3QgcmVtb3ZlIG9sZCBwb3N0cm0gc2NyaXB0IgorbXNnc3RyICLgvZTgvbzgvabgvbLgvYrgvbLgvIvgvaLgvbLgvZjgvIsg4L2h4L2y4L2C4LyL4L2a4L204L2C4L2m4LyL4L2i4L6p4LyL4L2W4L2m4L6Q4L6y4L2R4LyL4L2C4L2P4L2E4LyL4L2Y4L2y4LyL4L2a4L204L2C4L2m4LyNIgorCisjOiBzcmMvc2VsZWN0LmM6MTE1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW9mIGluIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICLgvYLgvrLgvaPgvIvgvZDgvbLgvYLgvIsgJWQg4L2C4L204LyL4L2Q4L204L2Y4LyL4L2m4L6S4L6y4L2y4L2j4LyL4L2Y4L2y4L2E4LyL4L2T4L2E4LyL4L2j4L204LyL4L2i4L264L2W4LyL4L2Y4L264L2R4LyL4L2U4L2g4L2y4LyL4L2o4L2y4LyL4L2o4L284LyL4L2o4L264L2V4LyNIgorCisjOiBzcmMvc2VsZWN0LmM6MTE2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGxpbmUgaW4gcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQiCittc2dzdHIgIuC9guC+suC9o+C8i+C9kOC9suC9guC8iyAlZCDgvYLgvbTgvIvgvaPgvbTgvIvgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIvgvZjgvbLgvYTgvIvgvZPgvYTgvIvgvaPgvbTgvIvgvaLgvbrgvIvgvZbgvIvgvZjgvbrgvZHgvIvgvZTgvaDgvbLgvIvgvYLgvrLgvaPgvIvgvZDgvbLgvYLgvIvgvYLgvbLgvIvgvZjgvYfgvbTgvYIiCisKKyM6IHNyYy9zZWxlY3QuYzoxMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgYWZ0ZXIgcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQiCittc2dzdHIgIuC9guC+suC9o+C8i+C9kOC9suC9guC8iyAlZCDgvYLgvbTgvIvgvaPgvbTgvIvgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIvgvZjgvbLgvYTgvIvgvYLgvbLgvIvgvaTgvbTgvaPgvIvgvaPgvabgvIvgvaLgvbrgvIvgvZbgvIvgvZjgvbrgvZHgvIvgvZTgvaDgvbLgvIvgvajgvbLgvIvgvajgvbzgvIvgvajgvbrgvZXgvI0iCisKKyM6IHNyYy9zZWxlY3QuYzoxMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgbGluZSBhZnRlciBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZCIKK21zZ3N0ciAi4L2C4L6y4L2j4LyL4L2Q4L2y4L2C4LyLICVkIOC9guC9tOC8i+C9o+C9tOC8i+C9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8i+C9mOC9suC9hOC8i+C9guC9suC8i+C9pOC9tOC9o+C8i+C9o+C9puC8i+C9ouC9uuC8i+C9luC8i+C9mOC9uuC9keC8i+C9lOC9oOC9suC8i+C9guC+suC9o+C8i+C9kOC9suC9guC8i+C9guC9suC8i+C9mOC9h+C9tOC9giIKKworIzogc3JjL3NlbGVjdC5jOjEzNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGRhdGEgYWZ0ZXIgcGFja2FnZSBhbmQgc2VsZWN0aW9uIGF0IGxpbmUgJWQiCittc2dzdHIgIuC9guC+suC9o+C8i+C9kOC9suC9guC8iyAlZCDgvYLgvbTgvIvgvaPgvbTgvIsg4L2Q4L204L2Y4LyL4L2m4L6S4L6y4L2y4L2j4LyL4L2R4L2E4LyL4L2m4L264L2j4LyL4L2g4L2Q4L204LyL4L2C4L2y4LyL4L2k4L204L2j4LyL4L2j4L2m4LyL4L2i4L264LyL4L2W4LyL4L2Y4L264L2R4LyL4L2U4L2g4L2y4LyL4L2C4L2T4L2R4LyL4L2m4L6h4L204L2R4LyNIgorCisjOiBzcmMvc2VsZWN0LmM6MTM5CisjLCBjLWZvcm1hdAorbXNnaWQgImlsbGVnYWwgcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQ6ICUuMjUwcyIKK21zZ3N0ciAi4L2C4L6y4L2j4LyL4L2Q4L2y4L2C4LyLICVkIOC9guC9tOC8i+C9o+C9tOC8i+C9geC+suC9suC9mOC9puC8i+C9oOC9guC9o+C8i+C9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8i+C9mOC9suC9hOC8izogJS4yNTBzIgorCisjOiBzcmMvc2VsZWN0LmM6MTQzCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gd2FudGVkIHN0YXR1cyBhdCBsaW5lICVkOiAlLjI1MHMiCittc2dzdHIgIuC9guC+suC9o+C8i+C9kOC9suC9guC8iyAlZCDgvYLgvbTgvIvgvaPgvbTgvIvgvZjgvIvgvaTgvbrgvabgvZTgvIvgvZHgvYLgvbzgvIvgvZTgvaDgvbLgvIvgvYLgvZPgvabgvIvgvZrgvZHgvIs6ICUuMjUwcyIKKworIzogc3JjL3NlbGVjdC5jOjE0OQorbXNnaWQgInJlYWQgZXJyb3Igb24gc3RhbmRhcmQgaW5wdXQiCittc2dzdHIgIuC9muC9keC8i+C9o+C+oeC9k+C8i+C9qOC9suC9k+C8i+C9lOC9tOC9iuC9suC8i+C9guC9tOC8i+C9o+C9tOC8i+C9o+C+t+C9guC8i+C9lOC9oOC9suC8i+C9oOC9m+C9vOC9o+C8i+C9luC8jSIKKworIzogc3JjL3N0YXRjbWQuYzo1MgorbXNnaWQgIlVzZSAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgb3ZlcnJpZGluZyBmaWxlIHN0YXQgaW5mb3JtYXRpb24uIgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0Y21kLmM6NjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsIDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDYtMjAwOSBHdWlsbGVtIEpvdmVyLlxuIgorbXNnc3RyICIiCisiXG4iCisi4L2g4L2R4L6y4LyL4L2W4L2k4L204L2m4LyL4L2R4L2W4L2E4LyL4L2G4LyLwqkg4Lyh4Lyp4Lyp4LylIOC9qOC9suC9oeC9k+C8iyDgvYfgvbrgvYDgvIvgvaTgvZPgvI1cbiIKKyLgvaDgvZHgvrLgvIvgvZbgvaTgvbTgvabgvIvgvZHgvZbgvYTgvIvgvYbgvIvCqSDgvKLgvKDgvKDgvKAt4Lyi4Lyg4Lyg4LyiIOC9neC9suC8i+C9heC9ouC9iuC9suC8i+C9qOC9gOC8i+C9gOC9ouC8i+C9mOC9k+C8jSIKKworIzogc3JjL3N0YXRjbWQuYzo4MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtLWFkZCA8b3duZXI+IDxncm91cD4gPG1vZGU+IDxmaWxlPlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGFkZCBhIG5ldyBlbnRyeSBpbnRvIHRoZSBkYXRhYmFzZS5cbiIKKyIgIC0tcmVtb3ZlIDxmaWxlPiAgICAgICAgICByZW1vdmUgZmlsZSBmcm9tIHRoZSBkYXRhYmFzZS5cbiIKKyIgIC0tbGlzdCBbPGdsb2ItcGF0dGVybj5dICBsaXN0IGN1cnJlbnQgb3ZlcnJpZGVzIGluIHRoZSBkYXRhYmFzZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGNtZC5jOjg5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICBzZXQgdGhlIGRpcmVjdG9yeSB3aXRoIHRoZSBzdGF0b3ZlcnJpZGUgZmlsZS5cbiIKKyIgIC0tdXBkYXRlICAgICAgICAgICAgICAgICBpbW1lZGlhdGVseSB1cGRhdGUgZmlsZSBwZXJtaXNzaW9ucy5cbiIKKyIgIC0tZm9yY2UgICAgICAgICAgICAgICAgICBmb3JjZSBhbiBhY3Rpb24gZXZlbiBpZiBhIHNhbml0eSBjaGVjayBmYWlscy5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBxdWlldCBvcGVyYXRpb24sIG1pbmltYWwgb3V0cHV0LlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIuC9o+C9guC8i+C9o+C9uuC9k+C8izogOiAlcyBbPG9wdGlvbj4gLi4uXSA8Y29tbWFuZD5cbiIKKyJcbiIKKyLgvZbgvaLgvqHgvIvgvZbgvYDgvbzgvZHgvIvgvZrgvbTgvIs6XG4iCisiICAtLSA8b3duZXI+IDxncm91cD4gPG1vZGU+IDxmaWxlPlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIOC9guC9k+C9keC8i+C9puC+oeC9tOC9keC8i+C9guC9nuC9suC8i+C9ouC+n+C9uuC9k+C8i+C9k+C9hOC8i+C9o+C9tOC8i+C9kOC9vOC8i+C9luC9gOC9vOC9keC8i+C9guC9puC9ouC9lOC8i+C9heC9suC9guC8i+C9geC8i+C9puC+kOC9vOC9hOC8i+C9ouC+kOC+seC9luC9puC8jVxuIgorIiAgLS3gvaLgvqngvIvgvZbgvabgvpDgvrLgvZHgvIvgvYLgvY/gvYTgvIsgPGZpbGU+ICAgICAgICAgIOC9guC9k+C9keC8i+C9puC+oeC9tOC9keC8i+C9guC9nuC9suC8i+C9ouC+n+C9uuC9k+C8i+C9o+C9puC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9ouC+qSDgvZbgvabgvpDgvrLgvZHgvIvgvYLgvY/gvYTgvIvgvI1cbiIKKyIgIC0t4L2Q4L284LyL4L2h4L2y4L2C4LyLIFs8Z2xvYi1wYXR0ZXJuPl0gIOC9guC9k+C9keC8i+C9puC+oeC9tOC9keC8i+C9guC9nuC9suC8i+C9ouC+n+C9uuC9k+C8i+C9keC9uuC8i+C9k+C9hOC8i+C9keC8i+C9o+C+n+C9vOC9oOC9suC8i+C9kOC9vOC8i+C9oeC9suC9guC8i+C9guC9suC9puC8i+C9n+C9tOC9ouC8i+C9luC9nuC9guC8i+C9oOC9luC9keC9neC8i+C9qOC9suC9k+C8jVxuIgorIlxuIgorIuC9guC9keC9mOC8i+C9geC8i+C9muC9tDpcbiIKKyIgIC0t4L2W4L2R4L2C4LyL4L2m4L6Q4L6x4L284L2E4LyL4L2m4L6j4L284L2R4LyL4L2Q4L284LyLIDxkaXJlY3Rvcnk+ICAg4L2m4L2y4LyL4L2K4L264L2K4L2y4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2R4L2E4LyL4L2F4L2y4L2C4LyL4L2B4L2i4LyL4L2m4L6j4L284L2R4LyL4L2Q4L284LyL4L2C4L2e4L2y4LyL4L2m4L6S4L6y4L2y4L2C4LyL4L2g4L2W4L2R4LyNXG4iCisiICAtLeC9keC9tOC9puC8i+C9mOC9kOC9tOC9k+C8i+C9luC9n+C9vOC8i+C9k+C9suC8iyAgICAgICAgICAgICAgIOC9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9guC9k+C9hOC8i+C9luC8i+C9muC9tOC8i+C9keC9uuC8i+C9oOC9leC+suC9o+C8i+C9o+C9puC8i+C9keC9tOC9puC8i+C9mOC9kOC9tOC9k+C8i+C9luC9n+C9vOC8jVxuIgorIiAgLS3gvZbgvYTgvIvgvZbgvZngvbzgvYTgvIvgvZPgvbLgvIsgICAgICAgICAgICAgICAgICDgvZHgvrLgvZPgvIvgvaTgvbrgvabgvIvgvYDgvrHgvbLgvIvgvZ7gvbLgvZbgvIvgvZHgvZTgvrHgvZHgvIvgvaDgvZDgvbTgvabgvIvgvaTgvbzgvaLgvIvgvZbgvrHgvbTgvYTgvIvgvaLgvbTgvYTgvIvgvaHgvYTgvIsg4L2W4L6x4LyL4L2W4LyL4L2C4L2F4L2y4L2C4LyL4L2W4L2E4LyLIgorIuC9luC9meC9vOC9hOC8i+C8jVxuIgorIiAgLS3gvYHgvbTgvIvgvabgvbLgvZjgvIvgvabgvbLgvZjgvIsgICAgICAgICAgICAgICAgICDgvZbgvYDgvbzgvaPgvIvgvabgvqTgvrHgvbzgvZHgvIvgvZTgvIvgvYHgvbTgvIvgvabgvbLgvZjgvIvgvabgvbLgvZjgvI0g4L2o4L2g4L204L2K4L2y4LyL4L2U4L204L2K4L2y4LyL4L2G4L204L2E4LyL4L2A4L204LyNXG4iCisiICAtLeC9guC+suC9vOC9guC9puC8i+C9ouC9mOC8iyAgICAgICAgICAgICAgICAgICDgvaDgvIvgvZPgvbLgvIvgvYLgvrLgvbzgvYLgvabgvIvgvaLgvZjgvIvgvaDgvZXgvrLgvbLgvZPgvIvgvZHgvbzgvZPgvIvgvaDgvZHgvbLgvIvgvabgvp/gvbzgvZPgvI1cbiIKKyIgIC0t4L2Q4L284L2T4LyL4L2i4L2y4L2Y4LyLICAgICAgICAgICAgICAgIOC9kOC9vOC9k+C8i+C9ouC9suC9mOC8i+C9oOC9keC9suC8i+C9puC+n+C9vOC9k+C8jVxuIgorCisjOiBzcmMvc3RhdGNtZC5jOjExNgorbXNnaWQgInN0cmlwcGluZyB0cmFpbGluZyAvIgorbXNnc3RyICLgvZbgvaTgvbTgvZbgvIvgvZPgvbLgvIvgvaLgvpLgvrHgvZbgvIvgvaPgvbTgvabgvIsvIgorCisjOiBzcmMvc3RhdGNtZC5jOjIwNworIywgZnV6enkKK21zZ2lkICJjYW5ub3Qgb3BlbiBuZXcgc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIuC9puC9suC8i+C9iuC9uuC9iuC9suC8i+C9n+C9tOC9ouC8i+C9luC9nuC9guC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9guC9puC9ouC9lOC8i+C9geC8i+C9leC+seC9uuC8i+C9mOC8i+C9muC9tOC9guC9puC8izogJXMiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjIyCisjLCBmdXp6eQorbXNnaWQgImVycm9yIHJlbW92aW5nIHN0YXRvdmVycmlkZS1vbGQiCittc2dzdHIgIuC9puC9suC8i+C9iuC9uuC9iuC9suC8i+C9n+C9tOC9ouC8i+C9luC9nuC9guC8iy3gvaLgvpngvbLgvYTgvZjgvIvgvaLgvqngvIvgvZbgvabgvpDgvrLgvZHgvIvgvYLgvY/gvYTgvZjgvIvgvZHgvIvgvaDgvZvgvbzgvaPgvIvgvZbgvIs6ICVzIgorCisjOiBzcmMvc3RhdGNtZC5jOjIyNAorIywgZnV6enkKK21zZ2lkICJlcnJvciBjcmVhdGluZyBuZXcgc3RhdG92ZXJyaWRlLW9sZCIKK21zZ3N0ciAi4L2m4L2y4LyL4L2K4L264L2K4L2y4LyL4L2f4L204L2i4LyL4L2W4L2e4L2C4LyLLeC9ouC+meC9suC9hOC9mOC8iyDgvYLgvabgvaLgvZTgvIvgvYLgvabgvaLgvIvgvZbgvabgvpDgvrLgvbTgvZPgvIvgvaDgvZbgvZHgvZ3gvIvgvZHgvIvgvaDgvZvgvbzgvaPgvIvgvZbgvIs6ICVzIgorCisjOiBzcmMvc3RhdGNtZC5jOjIyNgorIywgZnV6enkKK21zZ2lkICJlcnJvciBpbnN0YWxsaW5nIG5ldyBzdGF0b3ZlcnJpZGUiCittc2dzdHIgIuC9puC9suC8i+C9iuC9uuC9iuC9suC8i+C9n+C9tOC9ouC8i+C9luC9nuC9guC8i+C9guC9puC9ouC9lOC8i+C9guC9nuC9suC8i+C9luC9meC9tOC9guC9puC8i+C9oOC9luC9keC9neC8i+C9keC8i+C9oOC9m+C9vOC9o+C8i+C9luC8izogJXMiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjQ2Cittc2dpZCAiLS1hZGQgbmVlZHMgZm91ciBhcmd1bWVudHMiCittc2dzdHIgIi0t4L2B4LyL4L2m4L6Q4L284L2E4LyL4L2i4L6Q4L6x4L2W4L2m4LyL4L2T4L2y4LyL4L2j4L204LyLIOC9puC+kuC+suC9tOC9luC8i+C9ouC+n+C9guC9puC8i+C9luC9nuC9suC8i+C9keC9guC9vCIKKworIzogc3JjL3N0YXRjbWQuYzoyNTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJBbiBvdmVycmlkZSBmb3IgJyVzJyBhbHJlYWR5IGV4aXN0cywgYnV0IC0tZm9yY2Ugc3BlY2lmaWVkIHNvIHdpbGwgYmUgIgorImlnbm9yZWQuIgorbXNnc3RyICLgvZHgvbrgvIvgvaDgvZbgvZHgvZ3gvIvgvZHgvIsgLS3gvZbgvYTgvIvgvZbgvZngvbzgvYTgvIvgvaDgvZHgvbLgvIvgvYLgvabgvaPgvIvgvZbgvYDgvbzgvZHgvIvgvaDgvZbgvZHgvIvgvaHgvbzgvZHgvZTgvIvgvaPgvabgvIsg4L2m4L6j4L2E4LyL4L2Y4L264L2R4LyL4L2W4L2e4L2C4LyL4L2g4L284L2E4LyL4LyNIgorCisjOiBzcmMvc3RhdGNtZC5jOjI2MAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiQW4gb3ZlcnJpZGUgZm9yICclcycgYWxyZWFkeSBleGlzdHMsIGFib3J0aW5nLiIKK21zZ3N0ciAiXCIlc1wiIOC9guC9suC8i+C9keC9vOC9k+C8i+C9o+C9tOC8i+C9n+C9tOC9ouC8i+C9luC9nuC9guC8i+C9oOC9keC8i+C9p+C9uuC8i+C9mOC8i+C9o+C9puC8i+C9ouC9hOC8i+C9oeC9vOC9keC9lOC8i+C9qOC9suC9k+C8jSIKKworIzogc3JjL3N0YXRjbWQuYzoyNzIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIi0tdXBkYXRlIGdpdmVuIGJ1dCAlcyBkb2VzIG5vdCBleGlzdCIKK21zZ3N0ciAi4L2J4L264L2T4LyL4L2W4L2i4L6h4LyLOiAtLeC9keC9tOC9puC8i+C9mOC9kOC9tOC9k+C8i+C9luC+seC9suC9k+C8i+C9oeC9vOC9keC8iyDgvZHgvbrgvIvgvaDgvZbgvZHgvZ3gvIvgvZHgvIsgICVzIOC9oOC9keC9suC8i+C9mOC9uuC9keC8jSIKKworIzogc3JjL3N0YXRjbWQuYzoyOTYKK21zZ2lkICJObyBvdmVycmlkZSBwcmVzZW50LiIKK21zZ3N0ciAi4L2f4L204L2i4LyL4L2W4L2e4L2C4LyL4L2C4L2F4L2y4L2C4LyL4L2h4L2E4LyL4L2Y4L264L2R4LyNIgorCisjOiBzcmMvc3RhdGNtZC5jOjMwNAorIywgZnV6enkKK21zZ2lkICItLXVwZGF0ZSBpcyB1c2VsZXNzIGZvciAtLXJlbW92ZSIKK21zZ3N0ciAi4L2J4L264L2T4LyL4L2W4L2i4L6hOiAtLeC9keC9tOC9puC8i+C9mOC9kOC9tOC9k+C8i+C9oOC9keC9suC8iyAtLeC9ouC+qeC8i+C9luC9puC+kOC+suC9keC8i+C9gOC+seC9suC8i+C9keC9vOC9k+C8i+C9o+C9tOC8i+C9geC9tOC9hOC9puC8i+C9mOC9uuC9keC9lOC8i+C9qOC9suC9k+C8jSIKKworIzogc3JjL3N0YXRkYi5jOjU5CisjLCBmdXp6eQorbXNnaWQgInN5bnRheCBlcnJvcjogaW52YWxpZCB1aWQgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIuC9puC9suC8i+C9iuC9uuC9iuC9suC8i+C9n+C9tOC9ouC8i+C9luC9nuC9guC8i+C9guC9puC9ouC9lOC8i+C9guC9nuC9suC8i+C9luC9meC9tOC9guC9puC8i+C9oOC9luC9keC9neC8i+C9keC8i+C9oOC9m+C9vOC9o+C8i+C9luC8izogJXMiCisKKyM6IHNyYy9zdGF0ZGIuYzo2NAorIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3I6IHVua25vd24gdXNlciAnJXMnIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0ZGIuYzo4MworIywgZnV6enkKK21zZ2lkICJzeW50YXggZXJyb3I6IGludmFsaWQgZ2lkIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICLgvabgvbLgvIvgvYrgvbrgvYrgvbLgvIvgvZ/gvbTgvaLgvIvgvZbgvZ7gvYLgvIvgvYLgvabgvaLgvZTgvIvgvYLgvZ7gvbLgvIvgvZbgvZngvbTgvYLgvabgvIvgvaDgvZbgvZHgvZ3gvIvgvZHgvIvgvaDgvZvgvbzgvaPgvIvgvZbgvIs6ICVzIgorCisjOiBzcmMvc3RhdGRiLmM6ODgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInN5bnRheCBlcnJvcjogdW5rbm93biBncm91cCAnJXMnIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICLgvabgvbLgvIvgvYrgvbrgvYrgvbLgvIvgvZ/gvbTgvaLgvIvgvZbgvZ7gvYLgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIvgvYHgvIvgvZXgvrHgvbrgvIvgvZPgvbLgvIvgvaDgvZDgvbTgvabgvIvgvaTgvbzgvaLgvIvgvZbgvrHgvbTgvYTgvIvgvaHgvbzgvZHgvI0iCisKKyM6IHNyYy9zdGF0ZGIuYzoxMDQKKyMsIGZ1enp5Cittc2dpZCAic3ludGF4IGVycm9yOiBpbnZhbGlkIG1vZGUgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIuC9puC9suC8i+C9iuC9uuC9iuC9suC8i+C9n+C9tOC9ouC8i+C9luC9nuC9guC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9geC8i+C9leC+seC9uuC8i+C9k+C9suC8i+C9oOC9kOC9tOC9puC8i+C9pOC9vOC9ouC8i+C9luC+seC9tOC9hOC8i+C9oeC9vOC9keC8jSIKKworIzogc3JjL3N0YXRkYi5jOjEyNworbXNnaWQgImZhaWxlZCB0byBvcGVuIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICLgvabgvbLgvIvgvYrgvbrgvYrgvbLgvIvgvZ/gvbTgvaLgvIvgvZbgvZ7gvYLgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIvgvYHgvIvgvZXgvrHgvbrgvIvgvZPgvbLgvIvgvaDgvZDgvbTgvabgvIvgvaTgvbzgvaLgvIvgvZbgvrHgvbTgvYTgvIvgvaHgvbzgvZHgvI0iCisKKyM6IHNyYy9zdGF0ZGIuYzoxMzQKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIuC9puC9suC8i+C9iuC9uuC9iuC9suC8i+C9n+C9tOC9ouC8i+C9luC9nuC9guC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9qOC9uuC9leC8i+C9puC9suC8i+C9iuC9uuC9iuC9suC8i+C9oOC9luC9keC8i+C9k+C9suC8i+C9o+C9tOC8i+C9oOC9kOC9tOC9puC8i+C9pOC9vOC9ouC8i+C9luC+seC9tOC9hOC8i+C9oeC9vOC9keC8jSIKKworIzogc3JjL3N0YXRkYi5jOjEzNworbXNnaWQgImZhaWxlZCB0byBmc3RhdCBwcmV2aW91cyBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAi4L2n4L264LyL4L2Y4L2g4L2y4LyL4L2m4L2y4LyL4L2K4L264L2K4L2y4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2o4L264L2V4LyL4L2m4L2y4LyL4L2K4L264L2K4L2y4LyL4L2g4L2W4L2R4LyL4L2T4L2y4LyL4L2j4L204LyL4L2g4L2Q4L204L2m4LyL4L2k4L284L2i4LyL4L2W4L6x4L204L2E4LyL4L2h4L284L2R4LyNIgorCisjOiBzcmMvc3RhdGRiLmM6MTYyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJzdGF0b3ZlcnJpZGUgZmlsZSBgJS4yNTBzJyIKK21zZ2lkICJyZWFkaW5nIHN0YXRvdmVycmlkZSBmaWxlICclLjI1MHMnIgorbXNnc3RyICLgvabgvbLgvIvgvYrgvbrgvYrgvbLgvIvgvZ/gvbTgvaLgvIvgvZbgvZ7gvYLgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIsgYCUuMjUwcyciCisKKyM6IHNyYy9zdGF0ZGIuYzoxNjkKKyMsIGZ1enp5Cittc2dpZCAic3RhdG92ZXJyaWRlIGZpbGUgaXMgbWlzc2luZyBmaW5hbCBuZXdsaW5lIgorbXNnc3RyICLgvabgvbLgvIvgvYrgvbrgvYrgvbLgvIvgvZ/gvbTgvaLgvIvgvZbgvZ7gvYLgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIvgvYDgvrHgvbLgvIvgvZPgvYTgvIvgvZPgvIvgvYLgvrLgvaPgvIvgvZDgvbLgvYLgvIvgvabgvp/gvbzgvYTgvZjgvIvgvaDgvZHgvbTgvYIiCisKKyM6IHNyYy9zdGF0ZGIuYzoxNzMKK21zZ2lkICJzdGF0b3ZlcnJpZGUgZmlsZSBjb250YWlucyBlbXB0eSBsaW5lIgorbXNnc3RyICLgvabgvbLgvIvgvYrgvbrgvYrgvbLgvIvgvZ/gvbTgvaLgvIvgvZbgvZ7gvYLgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIvgvYDgvrHgvbLgvIvgvZPgvYTgvIvgvZPgvIvgvYLgvrLgvaPgvIvgvZDgvbLgvYLgvIvgvabgvp/gvbzgvYTgvZjgvIvgvaDgvZHgvbTgvYIiCisKKyM6IHNyYy9zdGF0ZGIuYzoxNzggc3JjL3N0YXRkYi5jOjE5MCBzcmMvc3RhdGRiLmM6MjAyCisjLCBmdXp6eQorbXNnaWQgInN5bnRheCBlcnJvciBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAi4L2m4L2y4LyL4L2K4L264L2K4L2y4LyL4L2f4L204L2i4LyL4L2W4L2e4L2C4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2B4LyL4L2V4L6x4L264LyL4L2T4L2y4LyL4L2g4L2Q4L204L2m4LyL4L2k4L284L2i4LyL4L2W4L6x4L204L2E4LyL4L2h4L284L2R4LyNIgorCisjOiBzcmMvc3RhdGRiLmM6MTg2IHNyYy9zdGF0ZGIuYzoxOTggc3JjL3N0YXRkYi5jOjIxMAorIywgZnV6enkKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBsaW5lIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICLgvYLgvrLgvaPgvIvgvZDgvbLgvYLgvIsgJWQg4L2C4L204LyL4L2j4L204LyL4L2Q4L204L2Y4LyL4L2m4L6S4L6y4L2y4L2j4LyL4L2Y4L2y4L2E4LyL4L2T4L2E4LyL4L2j4L204LyL4L2i4L264LyL4L2W4LyL4L2Y4L264L2R4LyL4L2U4L2g4L2y4LyL4L2C4L6y4L2j4LyL4L2Q4L2y4L2C4LyL4L2C4L2y4LyL4L2Y4L2H4L204L2CIgorCisjOiBzcmMvc3RhdGRiLmM6MjE0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJtdWx0aXBsZSBzdGF0dXNvdmVycmlkZXMgcHJlc2VudCBmb3IgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAi4L2m4L2y4LyL4L2K4L264L2K4L2y4LyL4L2f4L204L2i4LyL4L2W4L2e4L2C4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyLIGAlLjI1MHMnIgorCisjOiBzcmMvdHJpZ2NtZC5jOjQ2CisjLCBmdXp6eQorbXNnaWQgIlR5cGUgZHBrZy10cmlnZ2VyIC0taGVscCBmb3IgaGVscCBhYm91dCB0aGlzIHV0aWxpdHkuIgorbXNnc3RyICLgvZHgvZbgvrHgvbrgvIvgvZbgvIsg4L2M4L2y4LyL4L2U4L2y4LyL4L2A4L264LyL4L2H4L2y4LyLLeC9luC9pOC9guC8iyAtLeC9guC+suC9vOC9guC9puC8i+C9ouC9mOC8i+C9guC+seC9suC8i+C9keC9vOC9k+C8i+C9o+C9tOC8i+C9guC+suC9vOC9guC9puC8i+C9ouC9mOC8jSIKKworIzogc3JjL3RyaWdjbWQuYzo1MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuICVzIHBhY2thZ2UgdHJpZ2dlciB1dGlsaXR5IHZlcnNpb24gJXMuXG4iCittc2dzdHIgIuC9jOC9suC8i+C9luC9suC8i+C9oeC9seC9k+C8iyBgJXMnIOC9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8i+C9oOC9m+C9suC9k+C8i+C9puC+kOC+seC9vOC9hOC8i+C9lOC9oOC9suC8i+C9o+C9puC8i+C9ouC9suC9mOC8i+C9oOC9keC+suC9suC8i+C9keC9lOC+seC9keC8i+C9o+C9guC8i+C9huC9puC8jVxuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjY3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9ucz4gLi4uXSA8dHJpZ2dlci1uYW1lPlxuIgorIiAgICAgICAlcyBbPG9wdGlvbnM+IC4uLl0gPGNvbW1hbmQ+XG4iCisiXG4iCittc2dzdHIgIiIKKyLgvaPgvYLgvIvgvaPgvbrgvZPgvIs6ICVzIFs8b3B0aW9uPiAuLi5dIDxjb21tYW5kPlxuIgorIlxuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC0tY2hlY2stc3VwcG9ydGVkICAgICAgICAgICAgICAgIENoZWNrIGlmIHRoZSBydW5uaW5nIGRwa2cgc3VwcG9ydHMgIgorInRyaWdnZXJzLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy90cmlnY21kLmM6ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgICAgICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyIgIC0tYnktcGFja2FnZT08cGFja2FnZT4gICAgICAgICAgIE92ZXJyaWRlIHRyaWdnZXIgYXdhaXRlciAobm9ybWFsbHkgc2V0XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ5IGRwa2cpLlxuIgorIiAgLS1uby1hd2FpdCAgICAgICAgICAgICAgICAgICAgICAgTm8gcGFja2FnZSBuZWVkcyB0byBhd2FpdCB0aGUgIgorInByb2Nlc3NpbmcuXG4iCisiICAtLW5vLWFjdCAgICAgICAgICAgICAgICAgICAgICAgICBKdXN0IHRlc3QgLSBkb24ndCBhY3R1YWxseSBjaGFuZ2UgIgorImFueXRoaW5nLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy90cmlnY21kLmM6MTUyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB0cmlnZ2VycyBkYXRhIGRpcmVjdG9yeSBub3QgeWV0IGNyZWF0ZWRcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvdHJpZ2NtZC5jOjE1NgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogdHJpZ2dlciByZWNvcmRzIG5vdCB5ZXQgaW4gZXhpc3RlbmNlXG4iCittc2dzdHIgIiIKKworIzogc3JjL3RyaWdjbWQuYzoyMDUKKyMsIGZ1enp5Cittc2dpZCAidGFrZXMgb25lIGFyZ3VtZW50LCB0aGUgdHJpZ2dlciBuYW1lIgorbXNnc3RyICItLSVzIOC9guC9suC9puC8i+C9puC+kuC+suC9tOC9luC8i+C9ouC+n+C9guC9puC8i+C9guC9heC9suC9guC8i+C9ouC+kOC+seC9hOC9mOC8i+C9heC9suC9guC8i+C9oOC9luC9guC9lOC8i+C9qOC9suC9k+C8jSguZGViIOC9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9mOC9suC9hOC8iykiCisKKyM6IHNyYy90cmlnY21kLmM6MjEwCittc2dpZCAibXVzdCBiZSBjYWxsZWQgZnJvbSBhIG1haW50YWluZXIgc2NyaXB0IChvciB3aXRoIGEgLS1ieS1wYWNrYWdlIG9wdGlvbikiCittc2dzdHIgIiIKKworIzogc3JjL3RyaWdjbWQuYzoyMTUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImlsbGVnYWwgYXdhaXRlZCBwYWNrYWdlIG5hbWUgJyUuMjUwcyc6ICUuMjUwcyIKK21zZ3N0ciAiYCVzJyDgvabgvIvgvabgvpLgvbzgvIsg4L2T4L204L2m4LyL4L2Y4L264L2R4LyL4L2Q4L204L2Y4LyL4L2m4L6S4L6y4L2y4L2j4LyL4L2Y4L2y4L2E4LyLIGAlLjI1NXMnOiAlcyIKKworIzogc3JjL3RyaWdjbWQuYzoyMjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgdHJpZ2dlciBuYW1lIGAlLjI1MHMnOiAlLjI1MHMiCittc2dzdHIgImAlcycg4L2m4LyL4L2m4L6S4L284LyLIOC9k+C9tOC9puC8i+C9mOC9uuC9keC8i+C9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8i+C9mOC9suC9hOC8iyBgJS4yNTVzJzogJXMiCisKKyM6IHNyYy90cmlncHJvYy5jOjI1MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IGN5Y2xlIGZvdW5kIHdoaWxlIHByb2Nlc3NpbmcgdHJpZ2dlcnM6XG4iCisiIGNoYWluIG9mIHBhY2thZ2VzIHdob3NlIHRyaWdnZXJzIGFyZSBvciBtYXkgYmUgcmVzcG9uc2libGU6XG4iCittc2dzdHIgIiIKKworIzogc3JjL3RyaWdwcm9jLmM6MjU4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgcGFja2FnZXMnIHBlbmRpbmcgdHJpZ2dlcnMgd2hpY2ggYXJlIG9yIG1heSBiZSB1bnJlc29sdmFibGU6XG4iCittc2dzdHIgIiIKKworIzogc3JjL3RyaWdwcm9jLmM6MjgxCittc2dpZCAidHJpZ2dlcnMgbG9vcGluZywgYWJhbmRvbmVkIgorbXNnc3RyICIiCisKKyM6IHNyYy90cmlncHJvYy5jOjMxMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiUHJvY2Vzc2luZyB0cmlnZ2VycyBmb3IgJXMgLi4uXG4iCittc2dzdHIgIiVzIOC9guC9suC8i+C9keC9vOC9k+C8i+C9o+C9tOC8i+C9ouC9suC9mOC8i+C9puC+kuC+suC9suC9guC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9leC+seC9suC9ouC8i+C9luC9puC+kOC+suC9keC8i+C9guC9j+C9hOC8i+C9keC9vOC8iy4uLlxuIgorCisjOiBzcmMvdXBkYXRlLmM6NTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIi0tJXMgbmVlZHMgZXhhY3RseSBvbmUgUGFja2FnZXMgZmlsZSBhcmd1bWVudCIKK21zZ2lkICItLSVzIG5lZWRzIGV4YWN0bHkgb25lIFBhY2thZ2VzLWZpbGUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMg4L2j4L204LyL4L2Q4L204L2Y4LyL4L2m4L6S4L6y4L2y4L2j4LyL4L2C4L6x4L2y4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2m4L6S4L6y4L204L2W4LyL4L2i4L6f4L2C4L2m4LyL4L2C4L2F4L2y4L2C4LyL4L2P4L2C4LyL4L2P4L2C4LyL4L2R4L2C4L284L2U4LyL4L2o4L2y4L2T4LyNIgorCisjOiBzcmMvdXBkYXRlLmM6NjIKK21zZ2lkICJ1bmFibGUgdG8gYWNjZXNzIGRwa2cgc3RhdHVzIGFyZWEgZm9yIGJ1bGsgYXZhaWxhYmxlIHVwZGF0ZSIKK21zZ3N0ciAiIgorIuC9puC+puC9tOC9hOC8i+C9muC9keC8i+C9heC9k+C8i+C9oOC9kOC9vOC9luC8i+C9muC9tOC9guC9puC9lOC8i+C9oeC9vOC9keC8i+C9mOC9suC8i+C9keC9tOC9puC8i+C9mOC9kOC9tOC9k+C8i+C9luC9n+C9vOC8i+C9oeC9vOC9keC8i+C9mOC9suC8i+C9oOC9keC9suC8i+C9guC9suC8i+C9keC9vOC9k+C8i+C9o+C9tOC8iyDgvYzgvbLgvIvgvZTgvbLgvIvgvYDgvbrgvIvgvYfgvbLgvIvgvYLgvZPgvabgvIvgvZrgvZHgvIvgvZjgvYTgvaDgvIvgvYHgvbzgvYTgvabgvIsg4L2g4L2b4L204L2j4LyLIgorIuC9puC+pOC+seC9vOC9keC8i+C9oOC9luC9keC8i+C9mOC8i+C9muC9tOC9guC9puC8jSIKKworIzogc3JjL3VwZGF0ZS5jOjY0Cittc2dpZCAiYnVsayBhdmFpbGFibGUgdXBkYXRlIHJlcXVpcmVzIHdyaXRlIGFjY2VzcyB0byBkcGtnIHN0YXR1cyBhcmVhIgorbXNnc3RyICIiCisi4L2m4L6m4L204L2E4LyL4L2a4L2R4LyL4L2F4L2T4LyL4L2g4L2Q4L284L2W4LyL4L2a4L204L2C4L2m4L2U4LyL4L2h4L284L2R4LyL4L2Y4L2y4LyL4L2R4L204L2m4LyL4L2Y4L2Q4L204L2T4LyL4L2W4L2f4L284LyL4L2h4L284L2R4LyL4L2Y4L2y4LyL4L2g4L2R4L2y4LyL4L2j4L204LyLIOC9jOC9suC8i+C9lOC9suC8i+C9gOC9uuC8i+C9h+C9suC8iyDgvYLgvZPgvabgvIvgvZrgvZHgvIvgvZjgvYTgvaDgvIvgvYHgvbzgvYTgvabgvIvgvaPgvbTgvIvgvaDgvZbgvrLgvbLgvIvgvZPgvbLgvaDgvbLgvIsiCisi4L2g4L2b4L204L2j4LyL4L2m4L6k4L6x4L284L2R4LyL4L2R4L2C4L284L2U4LyL4L2o4L2y4L2T4LyNIgorCisjOiBzcmMvdXBkYXRlLmM6NzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVwbGFjaW5nIGF2YWlsYWJsZSBwYWNrYWdlcyBpbmZvLCB1c2luZyAlcy5cbiIKK21zZ3N0ciAiJXMg4L2j4L2C4LyL4L2j4L264L2T4LyL4L2g4L2Q4L2W4LyL4L2Q4L284L2C4LyLIOC9oOC9kOC9vOC9luC8i+C9muC9tOC9guC9puC8i+C9lOC9oOC9suC8i+C9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8i+C9guC+seC9suC8i+C9luC9ouC+oeC8i+C9keC9vOC9k+C8iyDgvZrgvZbgvIvgvZbgvZngvbTgvYLgvabgvIvgvZHgvbzgvI1cbiIKKworIzogc3JjL3VwZGF0ZS5jOjc0CisjLCBjLWZvcm1hdAorbXNnaWQgIlVwZGF0aW5nIGF2YWlsYWJsZSBwYWNrYWdlcyBpbmZvLCB1c2luZyAlcy5cbiIKK21zZ3N0ciAiJXMg4L2j4L2C4LyL4L2j4L264L2T4LyL4L2g4L2Q4L2W4LyL4L2Q4L284L2C4LyLIOC9oOC9kOC9vOC9luC8i+C9muC9tOC9guC9puC8i+C9lOC9oOC9suC8i+C9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8i+C9muC9tOC8i+C9keC9tOC9puC8i+C9mOC9kOC9tOC9k+C8i+C9luC9n+C9vOC8i+C9keC9vOC8jVxuIgorCisjOiBzcmMvdXBkYXRlLmM6MTAxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJJbmZvcm1hdGlvbiBhYm91dCAlZCBwYWNrYWdlKHMpIHdhcyB1cGRhdGVkLlxuIgorbXNnaWQgIkluZm9ybWF0aW9uIGFib3V0ICVkIHBhY2thZ2Ugd2FzIHVwZGF0ZWQuXG4iCittc2dpZF9wbHVyYWwgIkluZm9ybWF0aW9uIGFib3V0ICVkIHBhY2thZ2VzIHdhcyB1cGRhdGVkLlxuIgorbXNnc3RyWzBdICIlZCDgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIso4L2a4L204LyLKeC9guC9suC8i+C9puC+kOC9vOC9ouC8i+C9o+C9puC8i+C9luC9ouC+oeC8i+C9keC9vOC9k+C8i+C9oOC9keC9suC8i+C9keC9tOC9puC8i+C9mOC9kOC9tOC9k+C8i+C9luC9n+C9vOC8i+C9oeC9vOC9keC8jVxuIgorbXNnc3RyWzFdICIlZCDgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIso4L2a4L204LyLKeC9guC9suC8i+C9puC+kOC9vOC9ouC8i+C9o+C9puC8i+C9luC9ouC+oeC8i+C9keC9vOC9k+C8i+C9oOC9keC9suC8i+C9keC9tOC9puC8i+C9mOC9kOC9tOC9k+C8i+C9luC9n+C9vOC8i+C9oeC9vOC9keC8jVxuIgorCisjOiBzcmMvdXBkYXRlLmM6MTE1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJvYnNvbGV0ZSAnLS0lcycgb3B0aW9uLCB1bmF2YWlsYWJsZSBwYWNrYWdlcyBhcmUgYXV0b21hdGljYWxseSBjbGVhbmVkIHVwLiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIG5hbWUgJyUuNTBzLi4uJyBpcyB0b28gbG9uZyIKK21zZ3N0ciAi4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2A4L6x4L2y4LyL4L2Y4L2y4L2EICclLjUwcy4uLifgvYLgvZPgvZjgvIvgvZjgvbrgvZHgvIvgvabgvIvgvZjgvbrgvZHgvIvgvaLgvbLgvYTgvZgiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTI5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBmaWxlIG5hbWUgJyUuMjUwcyciCittc2dzdHIgIuC9oOC9luC+seC9tOC9hOC8i+C9geC9tOC9hOC9puC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8iyBgJS4yNTBzJyDgvYHgvIvgvZXgvrHgvbrgvIvgvZjgvIvgvZrgvbTgvYLgvabgvI0iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTg5CisjLCBmdXp6eQorbXNnaWQgInVuYWJsZSB0byBzdGF0IGNvbnRyb2wgZGlyZWN0b3J5IgorbXNnc3RyICLgvYLgvZPgvabgvIvgvabgvpDgvZbgvabgvIvgvZrgvZHgvIvgvaDgvZvgvbLgvZPgvIvgvabgvqPgvbzgvZHgvIvgvZDgvbzgvIvgvYHgvIvgvZXgvrHgvbrgvIvgvZjgvIvgvZrgvbTgvYLgvabgvI0iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTkxCisjLCBmdXp6eQorbXNnaWQgImNvbnRyb2wgZGlyZWN0b3J5IGlzIG5vdCBhIGRpcmVjdG9yeSIKK21zZ3N0ciAi4L2W4L2i4L6h4LyL4L2R4L284L2T4LyL4L2m4L6j4L284L2R4LyL4L2Q4L284LyL4L2j4L634L2C4LyL4L2Y4L2y4LyL4L2a4L204L2C4L2m4LyNIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjE5MworIywgYy1mb3JtYXQKK21zZ2lkICJjb250cm9sIGRpcmVjdG9yeSBoYXMgYmFkIHBlcm1pc3Npb25zICUwM2xvIChtdXN0IGJlID49MDc1NSBhbmQgPD0wNzc1KSIKK21zZ3N0ciAi4L2a4L2R4LyL4L2g4L2b4L2y4L2T4LyL4L2m4L6j4L284L2R4LyL4L2Q4L284LyL4L2j4L204LyL4L2W4L6x4L2E4LyL4L2J4L264L2m4LyL4L2C4L2T4L2E4LyL4L2W4LyLICUwM2xvICg+PTA3NTUg4L2R4L2E4LyLIDw9MDc3NSDgvajgvbLgvZPgvIvgvZHgvYLgvbzgvIspIOC9oOC9keC9tOC9giIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAibWFpbnRhaW5lciBzY3JpcHQgYCUuNTBzJyBpcyBub3QgYSBwbGFpbiBmaWxlIG9yIHN5bWxpbmsiCittc2dzdHIgIuC9ouC+kuC+seC9tOC9k+C8i+C9puC+kOC+seC9vOC9hOC8i+C9lOC9oOC9suC8i+C9oeC9suC9guC8i+C9muC9tOC9guC9puC8iyBgJS41MHMnIOC9oOC9keC9suC8i+C9ieC9guC8i+C9ouC+kOC+seC9hOC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9oeC9hOC8i+C9k+C8i+C9luC9ouC+oeC8i+C9mOC9muC9vOC9k+C8i+C9oOC9luC+suC9uuC9o+C8i+C9o+C9mOC8i+C9mOC9uuC9k+C8jSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyMDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm1haW50YWluZXIgc2NyaXB0IGAlLjUwcycgaGFzIGJhZCBwZXJtaXNzaW9ucyAlMDNsbyAobXVzdCBiZSA+PTA1NTUgYW5kICIKKyI8PTA3NzUpIgorbXNnc3RyICIiCisi4L2i4L6S4L6x4L204L2T4LyL4L2m4L6Q4L6x4L284L2E4LyL4L2U4L2g4L2y4LyL4L2h4L2y4L2C4LyL4L2a4L204L2C4L2m4LyLIGAlLjUwcycg4L2j4L204LyL4L2W4L6x4L2E4LyL4L2J4L264L2m4LyL4L2C4L2T4L2E4LyL4L2W4LyLICUwM2xvICggPj0wNTU1IOC9keC9hOC8iyA8PTA3NzUg4L2o4L2y4L2T4LyL4L2R4L2C4L284LyLKSDgvaDgvZHgvbTgvYIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjExCisjLCBjLWZvcm1hdAorbXNnaWQgIm1haW50YWluZXIgc2NyaXB0IGAlLjUwcycgaXMgbm90IHN0YXR0YWJsZSIKK21zZ3N0ciAi4L2i4L6S4L6x4L204L2T4LyL4L2m4L6Q4L6x4L284L2E4LyL4L2U4L2g4L2y4LyL4L2h4L2y4L2C4LyL4L2a4L204L2C4L2m4LyLIGAlLjUwcycg4L2g4L2R4L2y4LyL4L2m4L2y4LyL4L2K4L264L2K4L2y4LyL4L2g4L2W4L2R4LyL4L2W4L2P4L204L2W4LyL4L2Y4L264L2T4LyNIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjIzNworbXNnaWQgImVycm9yIG9wZW5pbmcgY29uZmZpbGVzIGZpbGUiCittc2dzdHIgIuC9gOC9seC9vOC9k+C9leC8i+C9leC8i+C9oeC9suC9o+C9puC9suC8iyDgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIvgvYHgvIvgvZXgvrHgvbrgvZ3gvIvgvZHgvIvgvaDgvZvgvbzgvaPgvIvgvZbgvI0iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjQ2Cittc2dpZCAiZW1wdHkgc3RyaW5nIGZyb20gZmdldHMgcmVhZGluZyBjb25mZmlsZXMiCittc2dzdHIgIuC9qOC9uuC9leC8i+C9guC9uuC9iuC9suC9puC9suC8i+C9o+C+t+C9guC8i+C9k+C9suC9oOC9suC8i+C9gOC9seC9vOC9k+C8i+C9leC8i+C9oeC9suC9o+C9puC9suC8i+C9o+C9puC8i+C9oeC9suC9guC8i+C9ouC+kuC+seC9tOC9k+C8i+C9puC+n+C9vOC9hOC9mOC8jSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIG5hbWUgJyUuNTBzLi4uJyBpcyB0b28gbG9uZywgb3IgbWlzc2luZyBmaW5hbCBuZXdsaW5lIgorbXNnc3RyICIiCisi4L2J4L264L2T4LyL4L2W4L2i4L6h4LyLICDgvYDgvbHgvbzgvZPgvIvgvZXgvIvgvaHgvbLgvaPgvIvgvZjgvbLgvYTgvIsgYCUuNTBzLi4uJyDgvaDgvZHgvbLgvIvgvabgvqPgvIvgvZjgvbrgvZHgvIvgvabgvIvgvZjgvbrgvZHgvIvgvaLgvbLgvYTgvZjgvbzgvIvgvajgvbLgvZPgvIvgvZTgvabgvIsg4L2h4L2E4LyL4L2T4LyL4L2Y4L2Q4L2g4LyL4L2Y4L2H4L204L2C4LyL4L2C4L2y4LyL4L2C4L6y4L2j4LyL4L2Q4L2y4L2C4LyLIgorIuC9guC9puC9ouC9lOC8i+C9luC9ouC+s+C9guC8i+C9puC+n+C9vOC9ouC8i+C9nuC9tOC9guC9puC8i+C9k+C9tOC9glxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI2NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgZmlsZW5hbWUgJyVzJyBjb250YWlucyB0cmFpbGluZyB3aGl0ZSBzcGFjZXMiCittc2dzdHIgIuC9ieC9uuC9k+C8i+C9luC9ouC+oeC8iyAg4L2A4L2x4L284L2T4LyL4L2V4LyL4L2h4L2y4L2j4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2Y4L2y4L2E4LyLIGAlcycg4L2C4L2y4LyL4L2T4L2E4LyL4L2T4LyLIOC9ouC+kuC+seC9luC8i+C9o+C9tOC9puC8i+C9luC9ouC8i+C9puC+n+C9vOC9hOC8i+C9keC9gOC9ouC9lOC9vOC8i+C9oOC9keC9tOC9glxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI2NgorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBgJS4yNTBzJyBkb2VzIG5vdCBhcHBlYXIgaW4gcGFja2FnZSIKK21zZ3N0ciAi4L2A4L2x4L284L2T4LyL4L2V4LyL4L2h4L2y4L2j4LyLYCUuMjUwcycg4L2g4L2R4L2y4LyLIOC9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8i+C9k+C9hOC8i+C9mOC9suC8i+C9oOC9luC+seC9tOC9hOC8i+C8jSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgYCUuMjUwcycgaXMgbm90IHN0YXR0YWJsZSIKK21zZ3N0ciAi4L2A4L2x4L284L2T4LyL4L2V4L2h4L2y4L2j4LyLIGAlLjI1MHMnIOC9oOC9keC9suC8i+C9puC9suC8i+C9iuC9uuC9iuC9suC8i+C9oOC9luC9keC8i+C9luC9j+C9tOC9luC8i+C9mOC9uuC9k+C8jSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlICclcycgaXMgbm90IGEgcGxhaW4gZmlsZSIKK21zZ3N0ciAi4L2J4L264L2T4LyL4L2W4L2i4L6h4LyLIOC9gOC9seC9vOC9k+C9leC8i+C9leC8i+C9oeC9suC9o+C8iyBgJXMnIOC9oOC9keC9suC8i+C9ieC9guC8i+C9ouC+kOC+seC9hOC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9mOC9uuC9k+C8jVxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI3NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgbmFtZSAnJXMnIGlzIGR1cGxpY2F0ZWQiCittc2dzdHIgIuC9luC+suC9k+C8i+C9guC9oeC9vOC9guC8i+C9mOC9suC9hOC8iyAlcyDgvaLgvqvgvbTgvZPgvIvgvZjgvIvgvZbgvZ/gvbzgvIvgvaHgvbzgvZHgvZTgvI0iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6Mjg3Cittc2dpZCAiZXJyb3IgcmVhZGluZyBjb25mZmlsZXMgZmlsZSIKK21zZ3N0ciAi4L2A4L2x4L284L2T4L2V4LyL4L2V4LyL4L2h4L2y4L2j4L2m4L2y4LyLIOC9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9o+C+t+C9guC9lOC8i+C9keC8i+C9oOC9m+C9vOC9o+C8i+C9luC8jSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzozMzkKK21zZ2lkICJwYWNrYWdlIG5hbWUgaGFzIGNoYXJhY3RlcnMgdGhhdCBhcmVuJ3QgbG93ZXJjYXNlIGFscGhhbnVtcyBvciBgLSsuJyIKK21zZ3N0ciAi4L2Q4L204L2Y4LyL4L2m4L6S4L6y4L2y4L2j4LyL4L2C4L6x4L2y4LyL4L2Y4L2y4L2E4LyL4L2g4L2R4L2y4LyL4L2j4L204LyLIOC9mOC9guC+seC9vOC9guC9puC8i+C9oeC9suC9guC8i+C9gOC8i+C9geC9oOC9suC8i+C9qOC9hOC8i+C9oeC9suC9guC8i+C9oeC9hOC8i+C9k+C8iyBgLSsuJyDgvZjgvbrgvZPgvIvgvZjgvbLgvIvgvaHgvbLgvYLgvIvgvaDgvZbgvrLgvbTgvIvgvZrgvbTgvIvgvaHgvbzgvZHgvI0iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MzQxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICInJXMnIGNvbnRhaW5zIHVzZXItZGVmaW5lZCBQcmlvcml0eSB2YWx1ZSAnJXMnIgorbXNnc3RyICIiCisi4L2J4L264L2T4LyL4L2W4L2i4L6h4LyLICBgJXMnIOC9guC9suC8i+C9k+C9hOC8i+C9k+C8iyDgvaPgvYLgvIvgvaPgvbrgvZPgvIvgvZTgvIst4L2E4L264L2m4LyL4L2g4L2b4L2y4L2T4LyL4L2g4L2W4L2R4LyL4L2h4L284L2R4LyL4L2U4L2g4L2y4LyL4L2C4L2Z4L284LyL4L2i4L2y4L2Y4LyL4L2C4L2T4L2m4LyL4L2C4L284L2E4LyLIGAlcycg4L2h4L284L2R4LyNXG4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MzQ3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICInJXMnIGNvbnRhaW5zIHVzZXItZGVmaW5lZCBmaWVsZCAnJXMnIgorbXNnc3RyICLgvYngvbrgvZPgvIvgvZbgvaLgvqHgvIsgIGAlcycg4L2C4L2y4LyL4L2T4L2E4LyL4L2T4LyL4L2j4L2C4LyL4L2j4L264L2T4LyL4L2U4LyLLeC9hOC9uuC9puC8i+C9oOC9m+C9suC9k+C8i+C9oOC9luC9keC8i+C9oeC9vOC9keC8i+C9lOC9oOC9suC8i+C9puC8i+C9puC+kuC9vOC8iyBgJXMnIOC9oeC9vOC9keC8jVxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjM1OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgJWQgd2FybmluZyBhYm91dCB0aGUgY29udHJvbCBmaWxlKHMpXG4iCittc2dpZF9wbHVyYWwgImlnbm9yaW5nICVkIHdhcm5pbmdzIGFib3V0IHRoZSBjb250cm9sIGZpbGUocylcbiIKK21zZ3N0clswXSAi4L2M4L2y4LyL4L2U4L2y4LyL4L2A4L264LyL4L2H4L2y4LyLLeC9jOC9uuC9luC8izog4L2a4L2R4LyL4L2g4L2b4L2y4L2T4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyLKOC9muC9tOC8iyngvYLgvbLgvIvgvabgvpDgvbzgvaLgvIvgvaPgvabgvIsgJWQg4L2J4L264L2T4LyL4L2W4L2i4L6h4LyL4L2a4L204LyL4L2m4L6j4L2E4LyL4L2Y4L264L2R4LyL4L2W4L2e4L2C4LyL4L2R4L284LyNXG4iCittc2dzdHJbMV0gIuC9jOC9suC8i+C9lOC9suC8i+C9gOC9uuC8i+C9h+C9suC8iy3gvYzgvbrgvZbgvIs6IOC9muC9keC8i+C9oOC9m+C9suC9k+C8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8iyjgvZrgvbTgvIsp4L2C4L2y4LyL4L2m4L6Q4L284L2i4LyL4L2j4L2m4LyLICVkIOC9ieC9uuC9k+C8i+C9luC9ouC+oeC8i+C9muC9tOC8i+C9puC+o+C9hOC8i+C9mOC9uuC9keC8i+C9luC9nuC9guC8i+C9keC9vOC8jVxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQwMyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQyOQorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhIDxkaXJlY3Rvcnk+IGFyZ3VtZW50IgorbXNnc3RyICItLSVzIOC8i+C9o+C9tOC8iyA84L2m4L6j4L284L2R4LyL4L2Q4L284LyLPiDgvabgvpLgvrLgvbTgvZbgvIvgvaLgvp/gvYLgvabgvIvgvYXgvbLgvYLgvIvgvZHgvYLgvbzgvZTgvIvgvaDgvZHgvbTgvYIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDA5Cittc2dpZCAiLS1idWlsZCB0YWtlcyBhdCBtb3N0IHR3byBhcmd1bWVudHMiCittc2dzdHIgIi0t4L2W4L2f4L284LyL4L2W4L2i4L6p4L2y4L2C4L2m4LyL4L2g4L2R4L2y4LyL4L2C4L2y4L2m4LyL4L2Y4L2E4LyL4L2Y4L2Q4L2g4LyL4L2m4L6S4L6y4L204L2W4LyL4L2i4L6f4L2C4L2m4LyL4L2C4L2J4L2y4L2m4LyL4L2g4L2W4L2C4L2U4LyL4L2o4L2y4L2T4LyNIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQxMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hlY2sgZm9yIGV4aXN0ZW5jZSBvZiBhcmNoaXZlIGAlLjI1MHMnIgorbXNnc3RyICLgvaHgvbLgvYLgvIvgvZjgvZvgvbzgvZHgvIsgYCUuMjUwcycg4L2C4L2y4LyL4L2C4L2T4L2m4LyL4L2m4L2g4L2y4LyL4L2R4L284L2T4LyL4L2j4L204LyL4L2e4L2y4L2W4LyL4L2R4L2U4L6x4L2R4LyL4L2g4L2W4L2R4LyL4L2Y4LyL4L2a4L204L2C4L2m4LyNIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQzMAorbXNnaWQgInRhcmdldCBpcyBkaXJlY3RvcnkgLSBjYW5ub3Qgc2tpcCBjb250cm9sIGZpbGUgY2hlY2siCittc2dzdHIgIuC9keC9mOC9suC9guC9puC8i+C9guC9j+C9keC8i+C9oOC9keC9suC8i+C9puC+o+C9vOC9keC8i+C9kOC9vOC8i+C9qOC9suC9k+C8iyAtIOC9muC9keC8i+C9oOC9m+C9suC9k+C8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9nuC9suC9luC8i+C9keC9lOC+seC9keC8iyDgvYLgvbzgvZjgvIvgvaDgvYLgvrHgvbzgvIvgvZjgvbLgvIvgvZrgvbTgvYLgvabgvI0iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDMxCittc2dpZCAibm90IGNoZWNraW5nIGNvbnRlbnRzIG9mIGNvbnRyb2wgYXJlYS4iCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImRwa2ctZGViOiBidWlsZGluZyBhbiB1bmtub3duIHBhY2thZ2UgaW4gJyVzJy5cbiIKK21zZ3N0ciAi4L2M4L2y4LyL4L2U4L2y4LyL4L2A4L264LyL4L2H4L2y4LyLLeC9jOC9uuC9luC8izogYCVzJyDgvZPgvYTgvIvgvaPgvbTgvIvgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIsgYCVzJyDgvZbgvZ/gvbzgvIvgvZbgvaLgvqngvbLgvYLgvabgvIvgvaDgvZbgvZHgvIvgvZHgvbzgvI1cbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZy1kZWI6IGJ1aWxkaW5nIHBhY2thZ2UgYCVzJyBpbiBgJXMnLlxuIgorbXNnc3RyICLgvYzgvbLgvIvgvZTgvbLgvIvgvYDgvbrgvIvgvYfgvbLgvIst4L2M4L264L2W4LyLOiBgJXMnIOC9k+C9hOC8i+C9o+C9tOC8i+C9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8iyBgJXMnIOC9luC9n+C9vOC8i+C9luC9ouC+qeC9suC9guC9puC8i+C9oOC9luC9keC8i+C9keC9vOC8jVxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ2NyBkcGtnLWRlYi9idWlsZC5jOjUyMQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIG1ha2UgdG1wZmlsZSAoZGF0YSkiCittc2dpZCAiZmFpbGVkIHRvIG1ha2UgdGVtcG9yYXJ5IGZpbGUgKCVzKSIKK21zZ3N0ciAi4L2C4L2T4L2m4LyL4L2m4L6Q4L2W4L2m4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2W4L2f4L284LyL4L2T4L2y4LyL4L2g4L2Q4L204L2m4LyL4L2k4L284L2i4LyL4L2W4L6x4L204L2E4LyL4L2h4L284L2R4LyLKOC9guC9k+C9keC8i+C9puC+oeC9tOC9keC8iykiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDY3IGRwa2ctZGViL2J1aWxkLmM6NDcwIGRwa2ctZGViL2J1aWxkLmM6NDc3CisjOiBkcGtnLWRlYi9idWlsZC5jOjQ4NSBkcGtnLWRlYi9idWlsZC5jOjQ5NCBkcGtnLWRlYi9idWlsZC5jOjQ5OQorIywgZnV6enkKKyN8IG1zZ2lkICJjb250cm9sIGFyZWEiCittc2dpZCAiY29udHJvbCBtZW1iZXIiCittc2dzdHIgIuC9muC9keC8i+C9oOC9m+C9suC9k+C8i+C9mOC9hOC9oOC8i+C9geC9vOC9hOC9puC8jSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0NzAgZHBrZy1kZWIvYnVpbGQuYzo1MjQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byB1bmxpbmsgdG1wZmlsZSAoZGF0YSksICVzIgorbXNnaWQgImZhaWxlZCB0byB1bmxpbmsgdGVtcG9yYXJ5IGZpbGUgKCVzKSwgJXMiCittc2dzdHIgIuC9guC9k+C9puC8i+C9puC+kOC9luC9puC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9o+C9tOC8i+C9oOC9luC+suC9uuC9o+C8i+C9mOC9kOC9tOC9keC8i+C9oOC9luC9keC8i+C9k+C9suC8i+C9oOC9kOC9tOC9puC8i+C9pOC9vOC9ouC8i+C9luC+seC9tOC9hOC8i+C9oeC9vOC9keC8iyjgvYLgvZPgvZHgvIvgvabgvqHgvbTgvZHgvIspICAgJXMiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDg1IGRwa2ctZGViL2J1aWxkLmM6NTkzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gcmV3aW5kIHRtcGZpbGUgKGRhdGEpIgorbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdGVtcG9yYXJ5IGZpbGUgKCVzKSIKK21zZ3N0ciAi4L2C4L2T4L2m4LyL4L2m4L6Q4L2W4L2m4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2j4L284L2C4LyL4L2W4L2m4L6S4L6x4L2y4L2i4LyL4L2T4L2y4LyL4L2g4L2Q4L204L2m4LyL4L2k4L284L2i4LyL4L2W4L6x4L204L2E4LyL4L2h4L284L2R4L2U4LyLKOC9guC9k+C9keC8i+C9puC+oeC9tOC9keC8iykiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDk0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gc3RhdCB0ZW1wb3JhcnkgZmlsZSAoJXMpIgorbXNnc3RyICLgvYLgvZPgvabgvIvgvabgvpDgvZbgvabgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIvgvZbgvZ/gvbzgvIvgvZPgvbLgvIvgvaDgvZDgvbTgvabgvIvgvaTgvbzgvaLgvIvgvZbgvrHgvbTgvYTgvIvgvaHgvbzgvZHgvIso4L2C4L2T4L2R4LyL4L2m4L6h4L204L2R4LyLKSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0OTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igd3JpdGluZyBgJXMnIgorbXNnc3RyICJgJXMnIOC9oOC9luC+suC9suC9neC8i+C9keC8i+C9oOC9m+C9vOC9o+C8i+C9luC8jSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo1MjEgZHBrZy1kZWIvYnVpbGQuYzo1MjQgZHBrZy1kZWIvYnVpbGQuYzo1NDYKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTcyIGRwa2ctZGViL2J1aWxkLmM6NTgwIGRwa2ctZGViL2J1aWxkLmM6NTkzCisjLCBmdXp6eQorI3wgbXNnaWQgImJldHdlZW4gbWVtYmVycyIKK21zZ2lkICJkYXRhIG1lbWJlciIKK21zZ3N0ciAi4L2g4L2Q4L204L2m4LyL4L2Y4L2y4LyL4L2a4L204L2g4L2y4LyL4L2W4L2i4LyL4L2T4LyNIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjU3MSBkcGtnLWRlYi9idWlsZC5jOjU4MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIHdyaXRlIGZpbGVuYW1lIHRvIHRhciBwaXBlIChkYXRhKSIKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgZmlsZW5hbWUgdG8gdGFyIHBpcGUgKCVzKSIKK21zZ3N0ciAi4L2K4L2i4LyL4L2i4L6S4L6x4L204L2R4LyL4L2R4L204L2E4LyL4L2j4L204LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2Y4L2y4L2E4LyL4L2g4L2W4L6y4L2y4LyL4L2T4L2y4LyL4L2g4L2Q4L204L2m4LyL4L2k4L284L2i4LyL4L2W4L6x4L204L2E4LyL4L2h4L284L2R4L2U4LyLKOC9guC9k+C9keC8i+C9puC+oeC9tOC9kSkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTg0Cittc2dpZCAiPGNvbXByZXNzPiBmcm9tIHRhciAtY2YiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjYxIGRwa2ctZGViL2V4dHJhY3QuYzo2MworbXNnaWQgInNoZWxsIGNvbW1hbmQgdG8gbW92ZSBmaWxlcyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6NzAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgZmlsZSBpbiAlcyBpbiAlLjI1NXMiCittc2dzdHIgIiUuMjU1cyDgvZPgvYTgvIvgvYLgvbLgvIsgJXMg4L2T4L2E4LyL4L2j4L204LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2A4L6x4L2y4LyL4L2i4L264LyL4L2W4LyL4L2Y4L264L2R4LyL4L2U4L2g4L2y4LyL4L2Y4L2H4L204L2CIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcmVhZGluZyAlcyBmcm9tIGZpbGUgJS4yNTVzIgorbXNnc3RyICLgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIsgJS4yNTVzIOC9o+C9puC8iyAlcyDgvaPgvrfgvYLgvZTgvIvgvZHgvIvgvaDgvZvgvbzgvaPgvIvgvZbgvI0iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxMjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgYXJjaGl2ZSBgJS4yNTVzJyIKK21zZ3N0ciAi4L2h4L2y4L2C4LyL4L2Y4L2b4L284L2R4LyLIGAlLjI1MHMnIOC9o+C+t+C9guC8i+C9k+C9suC8i+C9o+C9tOC8i+C9oOC9kOC9tOC9puC8i+C9pOC9vOC9ouC8i+C9luC+seC9tOC9hOC8i+C9oeC9vOC9keC9lOC8jSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjEyNworbXNnaWQgImZhaWxlZCB0byBmc3RhdCBhcmNoaXZlIgorbXNnc3RyICLgvajgvbrgvZXgvIvgvabgvbLgvIvgvYrgvbrgvYrgvbLgvIvgvaHgvbLgvYLgvIvgvZjgvZvgvbzgvZHgvIvgvaDgvZbgvZHgvIvgvZPgvbLgvIvgvaPgvbTgvIvgvZDgvbTgvabgvIvgvaTgvbzgvaLgvIvgvZbgvrHgvbTgvYTgvIvgvaHgvbzgvZHgvZTgvI0iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxMzEKKyMsIGZ1enp5CisjfCBtc2dpZCAiYXJjaGl2ZSBoYXMgbm8gZG90IGluIHZlcnNpb24gbnVtYmVyIgorbXNnaWQgImFyY2hpdmUgbWFnaWMgdmVyc2lvbiBudW1iZXIiCittc2dzdHIgIuC9oeC9suC9guC8i+C9mOC9m+C9vOC9keC8i+C9o+C9tOC8i+C9kOC9vOC9k+C8i+C9ouC9suC9mOC8i+C9qOC9hOC8i+C9k+C9hOC8i+C9muC9guC8i+C9mOC9uuC9keC8jSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE0MworIywgZnV6enkKKyN8IG1zZ2lkICJhcmNoaXZlIGhhcyBubyBuZXdsaW5lcyBpbiBoZWFkZXIiCittc2dpZCAiYXJjaGl2ZSBtZW1iZXIgaGVhZGVyIgorbXNnc3RyICLgvaHgvbLgvYLgvIvgvZjgvZvgvbzgvZHgvIvgvaPgvbTgvIvgvZjgvYLgvbzgvIvgvaHgvbLgvYLgvIvgvZPgvYTgvIvgvYLgvrLgvaPgvIvgvZDgvbLgvYLgvIvgvYLgvabgvaLgvZTgvIvgvZrgvbTgvIvgvZjgvbrgvZHgvI0iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNDgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBwYXJ0IG51bWJlciIKK21zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgYXJjaGl2ZSBoZWFkZXIgbWFnaWMiCittc2dzdHIgIuC9oeC9suC9guC8i+C9puC+o+C9vOC9keC8iyBgJS4yNTBzJyDgvaDgvZHgvbLgvIvgvYTgvZPgvIvgvYXgvZPgvIvgvajgvbLgvZPgvIsgLSDgvaHgvZPgvIvgvaPgvYLgvIvgvajgvYTgvIvgvZbgvrHgvYTgvIvgvYngvbrgvabgvI0iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBub3QgYSBkZWJpYW4gYmluYXJ5IGFyY2hpdmUgKHRyeSBkcGtnLXNwbGl0PykiCittc2dzdHIgIuC9oeC9suC9guC8i+C9puC+o+C9vOC9keC8iyAlLjI1MHMg4L2g4L2R4L2y4LyLIOC9jOC9suC8i+C9luC9suC8i+C9oeC9seC9k+C8i+C9n+C9tOC9hOC8i+C9o+C+oeC9k+C8i+C9oeC9suC9guC8i+C9mOC9m+C9vOC9keC8i+C9mOC9uuC9k+C8iyjgvYzgvbLgvIvgvZTgvbLgvIvgvYDgvbrgvIvgvYfgvbLgvIst4L2W4L2k4L2C4LyL4L2T4L2y4LyL4L2g4L2W4L2R4LyL4L2i4L6p4L284L2j4LyL4L2W4L2m4L6Q4L6x4L264L2RPykiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNTkKKyMsIGZ1enp5CisjfCBtc2dpZCAiYXJjaGl2ZSBoYXMgbm8gZG90IGluIHZlcnNpb24gbnVtYmVyIgorbXNnaWQgImFyY2hpdmUgaW5mb3JtYXRpb24gaGVhZGVyIG1lbWJlciIKK21zZ3N0ciAi4L2h4L2y4L2C4LyL4L2Y4L2b4L284L2R4LyL4L2j4L204LyL4L2Q4L284L2T4LyL4L2i4L2y4L2Y4LyL4L2o4L2E4LyL4L2T4L2E4LyL4L2a4L2C4LyL4L2Y4L264L2R4LyNIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTYyCittc2dpZCAiYXJjaGl2ZSBoYXMgbm8gbmV3bGluZXMgaW4gaGVhZGVyIgorbXNnc3RyICLgvaHgvbLgvYLgvIvgvZjgvZvgvbzgvZHgvIvgvaPgvbTgvIvgvZjgvYLgvbzgvIvgvaHgvbLgvYLgvIvgvZPgvYTgvIvgvYLgvrLgvaPgvIvgvZDgvbLgvYLgvIvgvYLgvabgvaLgvZTgvIvgvZrgvbTgvIvgvZjgvbrgvZHgvI0iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNjUKK21zZ2lkICJhcmNoaXZlIGhhcyBubyBkb3QgaW4gdmVyc2lvbiBudW1iZXIiCittc2dzdHIgIuC9oeC9suC9guC8i+C9mOC9m+C9vOC9keC8i+C9o+C9tOC8i+C9kOC9vOC9k+C8i+C9ouC9suC9mOC8i+C9qOC9hOC8i+C9k+C9hOC8i+C9muC9guC8i+C9mOC9uuC9keC8jSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE2OAorIywgYy1mb3JtYXQKK21zZ2lkICJhcmNoaXZlIHZlcnNpb24gJS4yNTBzIG5vdCB1bmRlcnN0b29kLCBnZXQgbmV3ZXIgZHBrZy1kZWIiCittc2dzdHIgIuC9oeC9suC9guC8i+C9mOC9m+C9vOC9keC8i+C9kOC9vOC9k+C8i+C9ouC9suC9mOC8iyAlLjI1MHMg4L2n4LyL4L2Y4LyL4L2R4L2C4L284LyLICDgvYzgvbLgvIvgvZTgvbLgvIvgvYDgvbrgvIvgvYfgvbLgvIst4L2M4L264L2W4LyLIOC9guC9puC9ouC9lOC8i+C9o+C9uuC9k+C8jSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE3OSBkcGtnLWRlYi9leHRyYWN0LmM6MjA1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJza2lwcGVkIG1lbWJlciBkYXRhIGZyb20gJXMiCittc2dpZCAic2tpcHBlZCBhcmNoaXZlIG1lbWJlciBkYXRhIGZyb20gJXMiCittc2dzdHIgIiVzIOC9o+C9puC8i+C9guC9vOC9mOC8i+C9oOC9guC+seC9vOC8i+C9oeC9vOC9keC8i+C9lOC9oOC9suC8i+C9oOC9kOC9tOC9puC8i+C9mOC9suC8i+C9guC9k+C9keC8i+C9puC+oeC9tOC9keC8jSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE5NAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZSBgJS4yNTBzJyBjb250YWlucyB1bnVuZGVyc3Rvb2QgZGF0YSBtZW1iZXIgJS4qcywgZ2l2aW5nIHVwIgorbXNnaWQgImFyY2hpdmUgJyUuMjUwcycgY29udGFpbnMgbm90IHVuZGVyc3Rvb2QgZGF0YSBtZW1iZXIgJS4qcywgZ2l2aW5nIHVwIgorbXNnc3RyICLgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIsgYCUuMjUwcycg4L2C4L2y4LyL4L2T4L2E4LyL4L2T4LyL4L2n4LyL4L2Y4LyL4L2R4L2C4L284LyL4L2W4L2g4L2y4LyL4L2C4L2T4L2R4LyL4L2m4L6h4L204L2R4LyL4L2g4L2Q4L204L2m4LyL4L2Y4L2y4LyLICUuKnMg4L2g4L2R4L204L2C4LyLIOC9luC9gOC9vOC9guC8i+C9luC9gOC9guC8i+C9keC9vOC8iyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE5OQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZSBgJS4yNTBzJyBjb250YWlucyB0d28gY29udHJvbCBtZW1iZXJzLCBnaXZpbmcgdXAiCittc2dpZCAiYXJjaGl2ZSAnJS4yNTBzJyBjb250YWlucyB0d28gY29udHJvbCBtZW1iZXJzLCBnaXZpbmcgdXAiCittc2dzdHIgIuC9oeC9suC9guC8i+C9puC+o+C9vOC9keC8iyBgJS4yNTBzJyDgvZPgvYTgvIvgvZPgvIvgvZrgvZHgvIvgvaDgvZvgvbLgvZPgvIvgvYLgvrHgvbLgvIvgvaDgvZDgvbTgvabgvIvgvZjgvbLgvIvgvYLgvYngvbLgvabgvIvgvaDgvZHgvbTgvYLgvIsg4L2W4L2A4L284L2C4LyL4L2W4L2e4L2C4LyL4L2R4L284LyLIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjE0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiIG5ldyBkZWJpYW4gcGFja2FnZSwgdmVyc2lvbiAlcy5cbiIKKyN8ICIgc2l6ZSAlbGQgYnl0ZXM6IGNvbnRyb2wgYXJjaGl2ZT0gJXppIGJ5dGVzLlxuIgorbXNnaWQgIiIKKyIgbmV3IGRlYmlhbiBwYWNrYWdlLCB2ZXJzaW9uICVzLlxuIgorIiBzaXplICVqZCBieXRlczogY29udHJvbCBhcmNoaXZlPSAlamQgYnl0ZXMuXG4iCittc2dzdHIgIiIKKyLgvYzgvbLgvIvgvZbgvbLgvIvgvaHgvbHgvZPgvIvgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIvgvYLgvabgvaLgvZTgvIsg4L2Q4L284L2T4LyL4L2i4L2y4L2Y4LyLICVzXG4iCisi4L2a4L2R4LyLICVsZCDgvZbgvbHgvIvgvaDgvbLgvYrgvbLgvabgvbLgvIs6IOC9muC9keC8i+C9oOC9m+C9suC9k+C8i+C9oeC9suC9guC8i+C9mOC9m+C9vOC9keC8iz0gJXppIOC9luC9seC8i+C9oOC9suC9iuC9suC9puC9suC8jVxuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjMyCittc2dpZCAiYXJjaGl2ZSBjb250cm9sIG1lbWJlciBzaXplIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyMzUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImFyY2hpdmUgaGFzIG1hbGZvcm1hdHRlZCBjb250cm9sIGxlbmd0aCBgJXMnIgorbXNnaWQgImFyY2hpdmUgaGFzIG1hbGZvcm1hdHRlZCBjb250cm9sIG1lbWJlciBzaXplICclcyciCittc2dzdHIgIuC9oeC9suC9guC8i+C9mOC9m+C9vOC9keC8i+C9gOC+seC9suC9puC8i+C9muC9keC8i+C9oOC9m+C9suC9k+C8i+C9ouC9suC9hOC8i+C9muC9keC8iyBgJXMnIOC9luC9n+C9vOC8i+C9ieC9uuC9puC8i+C9guC+seC9tOC9ouC8i+C9oeC9vOC9keC9lOC8jSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI0MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic2tpcHBlZCBtZW1iZXIgZGF0YSBmcm9tICVzIgorbXNnaWQgInNraXBwZWQgYXJjaGl2ZSBjb250cm9sIG1lbWJlciBkYXRhIGZyb20gJXMiCittc2dzdHIgIiVzIOC9o+C9puC8i+C9guC9vOC9mOC8i+C9oOC9guC+seC9vOC8i+C9oeC9vOC9keC8i+C9lOC9oOC9suC8i+C9oOC9kOC9tOC9puC8i+C9mOC9suC8i+C9guC9k+C9keC8i+C9puC+oeC9tOC9keC8jSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI0NgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiBvbGQgZGViaWFuIHBhY2thZ2UsIHZlcnNpb24gJXMuXG4iCisjfCAiIHNpemUgJWxkIGJ5dGVzOiBjb250cm9sIGFyY2hpdmU9ICV6aSwgbWFpbiBhcmNoaXZlPSAlbGQuXG4iCittc2dpZCAiIgorIiBvbGQgZGViaWFuIHBhY2thZ2UsIHZlcnNpb24gJXMuXG4iCisiIHNpemUgJWpkIGJ5dGVzOiBjb250cm9sIGFyY2hpdmU9ICVqZCwgbWFpbiBhcmNoaXZlPSAlamQuXG4iCittc2dzdHIgIiIKKyLgvYzgvbLgvIvgvZbgvbLgvIvgvaHgvbHgvZPgvIvgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIvgvaLgvpngvbLgvYTgvZjgvIsg4L2Q4L284L2T4LyL4L2i4L2y4L2Y4LyLICVzLlxuIgorIuC9muC9keC8iyAlbGQg4L2W4L2x4LyL4L2g4L2y4L2K4L2y4L2m4L2y4LyLOiDgvZrgvZHgvIvgvaDgvZvgvbLgvZPgvIvgvaHgvbLgvYLgvIvgvZjgvZvgvbzgvZHgvIs9ICV6aSAg4L2h4L2y4L2C4LyL4L2Y4L2b4L284L2R4LyL4L2C4L2Z4L284LyL4L2W4L284LyLPSAlbGRcbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI1NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZy1kZWI6IGZpbGUgbG9va3MgbGlrZSBpdCBtaWdodCBiZSBhbiBhcmNoaXZlIHdoaWNoIGhhcyBiZWVuXG4iCisiZHBrZy1kZWI6ICAgIGNvcnJ1cHRlZCBieSBiZWluZyBkb3dubG9hZGVkIGluIEFTQ0lJIG1vZGVcbiIKK21zZ3N0ciAiIgorIuC9jOC9suC8i+C9lOC9suC8i+C9gOC9uuC8i+C9h+C9suC8iy3gvYzgvbrgvZY6IOC9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9oOC9keC9suC8iyDgvaHgvbLgvYLgvIvgvZjgvZvgvbzgvZHgvItcbiIKKyLgvYzgvbLgvIvgvZTgvbLgvIvgvYDgvbrgvIvgvYfgvbLgvIst4L2M4L264L2WOiAgIOC9qOC9uuC8i+C9qOC9uuC9puC9suC8i+C9puC9suC8i+C9qOC9oOC9suC8i+C9qOC9oOC9suC8i+C9kOC9luC9puC8i+C9o+C9mOC8i+C9k+C9hOC8i+C9leC9luC8i+C9o+C9uuC9k+C8i+C9oOC9luC9keC8i+C9oeC9vOC9keC8i+C9mOC9suC8i+C9guC9suC9puC8i+C9hOC9k+C8i+C9heC9k+C8i+C9luC9n+C9vOC8i+C9oeC9vOC9keC9lOC8i+C9luC9n+C9tOC9mOC8i+C9puC9luC9uuC8iyIKKyLgvZjgvZDgvbzgvYTgvZjgvIvgvZjgvabgvI1cbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI1OQorIywgYy1mb3JtYXQKK21zZ2lkICJgJS4yNTVzJyBpcyBub3QgYSBkZWJpYW4gZm9ybWF0IGFyY2hpdmUiCittc2dzdHIgImAlLjI1NXMnIOC9oOC9keC9suC8iyDgvYzgvbLgvIvgvZbgvbLgvIvgvaHgvbHgvZPgvIvgvaLgvqngvIvgvabgvpLgvrLgvbLgvYLgvIvgvaHgvbLgvYLgvIvgvZjgvZvgvbzgvZHgvIvgvZjgvbrgvZPgvIvgvZTgvabgvI0iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNjYKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgdG8gcGlwZSBpbiBjb3B5IgorbXNnc3RyICLgvaDgvZHgvrLgvIvgvZbgvaTgvbTgvabgvIvgvZPgvYTgvIvgvaPgvbTgvIvgvaLgvpLgvrHgvbTgvZHgvIvgvZHgvbTgvYTgvIvgvaDgvZbgvrLgvbLgvIvgvZPgvbLgvIvgvaPgvbTgvIvgvaDgvZDgvbTgvabgvIvgvaTgvbzgvaLgvIvgvZbgvrHgvbTgvYTgvIvgvaHgvbzgvZHgvZTgvI0iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNjgKK21zZ2lkICJmYWlsZWQgdG8gY2xvc2UgcGlwZSBpbiBjb3B5IgorbXNnc3RyICLgvaDgvZHgvrLgvIvgvZbgvaTgvbTgvabgvIvgvZPgvYTgvIvgvaPgvbTgvIvgvaLgvpLgvrHgvbTgvZHgvIvgvZHgvbTgvYTgvIvgvYHgvIvgvZbgvabgvqHgvZjgvIvgvZPgvbLgvIvgvaDgvZDgvbTgvabgvIvgvaTgvbzgvaLgvIvgvZbgvrHgvbTgvYTgvIvgvaHgvbzgvZHgvZTgvI0iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyODQKK21zZ2lkICJkYXRhIgorbXNnc3RyICLgvYLgvZPgvZHgvIvgvabgvqHgvbTgvZHgvI0iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozMDcKK21zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gZGlyZWN0b3J5IgorbXNnc3RyICLgvabgvqPgvbzgvZHgvIvgvZDgvbzgvIvgvaPgvbTgvIvgvabgvbLgvIvgvajgvbrgvYbgvIvgvYzgvbLgvIvgvajgvaDgvbLgvIvgvajgvaLgvIvgvaDgvZbgvZHgvIvgvZPgvbLgvIvgvaDgvZDgvbTgvabgvIvgvaTgvbzgvaLgvIvgvZbgvrHgvbTgvYTgvIvgvaHgvbzgvZHgvZTgvI0iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozMTAKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGRpcmVjdG9yeSIKK21zZ3N0ciAi4L2m4L6j4L284L2R4LyL4L2Q4L284LyL4L2C4L2m4L2i4LyL4L2W4L2m4L6Q4L6y4L204L2T4LyL4L2g4L2W4L2R4LyL4L2T4L2y4LyL4L2j4L204LyL4L2g4L2Q4L204L2m4LyL4L2k4L284L2i4LyL4L2W4L6x4L204L2E4LyL4L2h4L284L2R4L2U4LyNIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzEyCittc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIGRpcmVjdG9yeSBhZnRlciBjcmVhdGluZyBpdCIKK21zZ3N0ciAi4L2R4L264LyL4L2C4L2m4L2i4LyL4L2W4L2m4L6Q4L6y4L204L2T4LyL4L2g4L2W4L2R4LyL4L2W4L2g4L2y4LyL4L2k4L204L2j4LyL4L2j4L2m4LyL4L2m4L6j4L284L2R4LyL4L2Q4L284LyL4L2j4L204LyL4L2m4L2y4LyL4L2o4L264L2G4LyL4L2M4L2y4LyL4L2o4L2g4L2y4LyL4L2o4L2i4LyL4L2g4L2W4L2R4LyL4L2T4L2y4LyL4L2j4L204LyL4L2g4L2Q4L204L2m4LyL4L2k4L284L2i4LyL4L2W4L6x4L204L2E4LyL4L2h4L284L2R4L2U4LyNIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzIzCisjLCBmdXp6eQorbXNnaWQgIjxkZWNvbXByZXNzPiIKK21zZ3N0ciAiJXM6IOC9qOC9uuC9luC8i+C9luC9meC9tOC9guC9puC8i+C9luC9pOC9vOC9o+C8i+C9k+C9suC8jSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMyNQorIywgZnV6enkKK21zZ2lkICJwYXN0ZSIKK21zZ3N0ciAi4L2i4L6p4L2y4L2m4LyL4L2m4L6k4L6y4L284L2R4LyL4L2g4L2W4L2R4LyL4L2h4L284L2R4L2U4LyNXG4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozNDIgZHBrZy1kZWIvZXh0cmFjdC5jOjM2MyBkcGtnLWRlYi9leHRyYWN0LmM6NDAyCisjOiBkcGtnLWRlYi9pbmZvLmM6NzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhIC5kZWIgZmlsZW5hbWUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMg4L2j4L204LyLIC5kZWIg4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2Y4L2y4L2E4LyL4L2C4L2y4LyL4L2m4L6S4L6y4L204L2W4LyL4L2i4L6f4L2C4L2m4LyL4L2F4L2y4L2C4LyL4L2R4L2C4L284L2U4LyL4L2o4L2y4L2T4LyNIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzQ3IGRwa2ctZGViL2V4dHJhY3QuYzo0MDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIi0tJXMgbmVlZHMgYSB0YXJnZXQgZGlyZWN0b3J5LlxuIgorIlBlcmhhcHMgeW91IHNob3VsZCBiZSB1c2luZyBkcGtnIC0taW5zdGFsbCA/IgorbXNnc3RyICIiCisiLS0lcyDgvaPgvbTgvIvgvZHgvZjgvbLgvYLgvabgvIvgvYLgvY/gvZHgvIvgvYDgvrHgvbLgvIvgvabgvqPgvbzgvZHgvIvgvZDgvbzgvIvgvYXgvbLgvYLgvIvgvZHgvYLgvbxcbiIKKyLgvYHgvrHgvbzgvZHgvIvgvYDgvrHgvbLgvabgvIsg4L2M4L2y4LyL4L2U4L2y4LyL4L2A4L264LyL4L2H4L2y4LyLIC0t4L2C4L2e4L2y4LyL4L2W4L2Z4L204L2C4L2m4LyLIOC9o+C9guC8i+C9o+C9uuC9k+C8i+C9oOC9kOC9luC8i+C9keC9guC9vOC9lOC8i+C9oOC9vOC9hOC8iz8iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozNTAgZHBrZy1kZWIvZXh0cmFjdC5jOjQxMAorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIHRha2VzIGF0IG1vc3QgdHdvIGFyZ3VtZW50cyAoLmRlYiBhbmQgZGlyZWN0b3J5KSIKK21zZ3N0ciAiLS0lcyDgvYLgvbLgvabgvIvgvZjgvYTgvIvgvZjgvZDgvaDgvIvgvabgvpLgvrLgvbTgvZbgvIvgvaLgvp/gvYLgvabgvIvgvYLgvYngvbLgvabgvIvgvaDgvZbgvYLgvZTgvIvgvajgvbLgvZPgvI0oLmRlYiDgvZHgvYTgvIvgvabgvqPgvbzgvZHgvIvgvZDgvbzgvIspIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzY1CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgb25seSBvbmUgYXJndW1lbnQgKC5kZWIgZmlsZW5hbWUpIgorbXNnc3RyICItLSVzIOC9guC9suC9puC8i+C9puC+kuC+suC9tOC9luC8i+C9ouC+n+C9guC9puC8i+C9guC9heC9suC9guC8i+C9ouC+kOC+seC9hOC9mOC8i+C9heC9suC9guC8i+C9oOC9luC9guC9lOC8i+C9qOC9suC9k+C8jSguZGViIOC9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9mOC9suC9hOC8iykiCisKKyM6IGRwa2ctZGViL2luZm8uYzo2MworbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byBgLycgZm9yIGNsZWFudXAiCittc2dzdHIgIuC9guC9meC9hOC8i+C9keC9guC8i+C9luC9n+C9vOC8i+C9k+C9suC9oOC9suC8i+C9keC9vOC9k+C8i+C9o+C9tOC8iyDgvabgvbLgvIvgvajgvbrgvYbgvIvgvYzgvbLgvIvgvajgvaDgvbLgvIvgvajgvaLgvIvgvaDgvZHgvbLgvIsgYC8nIOC9oOC9luC9keC8i+C9k+C9suC8i+C9oOC9kOC9tOC9puC8i+C9pOC9vOC9ouC8i+C9luC+seC9tOC9hOC8i+C9oeC9vOC9keC9lOC8jSIKKworIzogZHBrZy1kZWIvaW5mby5jOjEwNgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiY2Fubm90IHN0YXQgb2xkIG5hbWUgYCVzJzogJXMiCittc2dpZCAiY29udHJvbCBmaWxlICclcyciCittc2dzdHIgIuC9mOC9suC9hOC8i+C9ouC+meC9suC9hOC9mOC8iyBgJXMnIOC9puC9suC8i+C9iuC9uuC9iuC9suC8i+C9oOC9luC9keC8i+C9mOC8i+C9muC9tOC9guC9pjogJXMiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZy1kZWI6IGAlLjI1NXMnIGNvbnRhaW5zIG5vIGNvbnRyb2wgY29tcG9uZW50IGAlLjI1NXMnXG4iCittc2dzdHIgIuC9jOC9suC8i+C9lOC9suC8i+C9gOC9uuC8i+C9h+C9suC8iy3gvYzgvbrgvZbgvIs6IGAlLjI1NXMnIOC9k+C9hOC8i+C9o+C9tOC8i+C9muC9keC8i+C9oOC9m+C9suC9k+C8i+C9huC8i+C9pOC9puC8iyBgJS4yNTVzJyDgvZjgvbrgvZHgvI1cbiIKKworIzogZHBrZy1kZWIvaW5mby5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICJvcGVuIGNvbXBvbmVudCBgJS4yNTVzJyAoaW4gJS4yNTVzKSBmYWlsZWQgaW4gYW4gdW5leHBlY3RlZCB3YXkiCittc2dzdHIgIiIKKyLgvYHgvIvgvZXgvrHgvbrgvIvgvaHgvbzgvZHgvIvgvZjgvbLgvIvgvYbgvIvgvaTgvabgvIsgYCUuMjU1cycgKCUuMjU1cyDgvZPgvYTgvIvgvaPgvbTgvIspIOC9oOC9keC9suC8iyDgvaLgvbrgvIvgvZbgvIvgvZjgvbrgvZHgvIvgvZTgvaDgvbLgvIvgvZDgvZbgvabgvIvgvaPgvZjgvIvgvYXgvbLgvYLgvIvgvZPgvYTgvIvgvaPgvbTgvIvgvaDgvZDgvbTgvabgvIvgvaTgvbzgvaLgvIsiCisi4L2g4L2W4L6x4L204L2E4LyL4L2h4L284L2R4L2U4LyNIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTIxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJPbmUgcmVxdWVzdGVkIGNvbnRyb2wgY29tcG9uZW50IGlzIG1pc3NpbmciCittc2dpZCAiJWQgcmVxdWVzdGVkIGNvbnRyb2wgY29tcG9uZW50IGlzIG1pc3NpbmciCittc2dpZF9wbHVyYWwgIiVkIHJlcXVlc3RlZCBjb250cm9sIGNvbXBvbmVudHMgYXJlIG1pc3NpbmciCittc2dzdHJbMF0gIuC9guC9heC9suC9guC8i+C9nuC9tOC8i+C9luC8i+C9oOC9luC9keC8i+C9mOC9suC8i+C9muC9keC8i+C9oOC9m+C9suC9k+C8i+C9huC8i+C9pOC9puC8i+C9oOC9keC9suC8i+C9luC9ouC+s+C9guC8i+C9puC+n+C9vOC9ouC8i+C9nuC9tOC9guC9puC8i+C9oeC9vOC9keC9lOC8jSIKK21zZ3N0clsxXSAi4L2C4L2F4L2y4L2C4LyL4L2e4L204LyL4L2W4LyL4L2g4L2W4L2R4LyL4L2Y4L2y4LyL4L2a4L2R4LyL4L2g4L2b4L2y4L2T4LyL4L2G4LyL4L2k4L2m4LyL4L2g4L2R4L2y4LyL4L2W4L2i4L6z4L2C4LyL4L2m4L6f4L284L2i4LyL4L2e4L204L2C4L2m4LyL4L2h4L284L2R4L2U4LyNIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTM5IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo0MjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHNjYW4gZGlyZWN0b3J5IGAlLjI1NXMnIgorbXNnc3RyICLgvabgvqPgvbzgvZHgvIvgvZDgvbzgvIsgYCUuMjU1cycg4L2e4L2y4L2W4LyL4L2j4L6f4LyL4L2g4L2W4L2R4LyL4L2Y4L2y4LyL4L2a4L204L2C4L2m4LyNIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTQ4CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzdGF0IGAlLjI1NXMnIChpbiBgJS4yNTVzJykiCittc2dzdHIgImNhbm5vdCBzdGF0IGAlLjI1NXMnIOC9puC9suC8i+C9iuC9uuC9iuC9suC8i+C9oOC9luC9keC8i+C9mOC9suC8i+C9muC9tOC9guC9puC8iyhgJS4yNTVzJyDgvZPgvYTgvIvgvaPgvbTgvIspIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTUyCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBvcGVuIGAlLjI1NXMnIChpbiBgJS4yNTVzJykiCittc2dzdHIgImAlLjI1NXMnIOC9geC8i+C9leC+seC9uuC8i+C9mOC9suC8i+C9muC9tOC9guC9puC8iyhgJS4yNTVzJyDgvZPgvYTgvIvgvaPgvbTgvIspIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTY3IGRwa2ctZGViL2luZm8uYzoxODUgZHBrZy1kZWIvaW5mby5jOjE5OQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCBgJS4yNTVzJyAoaW4gYCUuMjU1cycpIgorbXNnc3RyICJgJS4yNTVzJyDgvaPgvrfgvYLgvIvgvZPgvbLgvIvgvaPgvbTgvIvgvaDgvZDgvbTgvabgvIvgvaTgvbzgvaLgvIvgvaDgvZbgvrHgvbTgvYTgvIvgvaHgvbzgvZHgvIsoYCUuMjU1cycg4L2T4L2E4LyL4L2j4L204LyLKSIKKworIzogZHBrZy1kZWIvaW5mby5jOjE3MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiICU3bGQgYnl0ZXMsICU1ZCBsaW5lcyAgICVjICAlLTIwLjEyN3MgJS4xMjdzXG4iCittc2dpZCAiICU3amQgYnl0ZXMsICU1ZCBsaW5lcyAgICVjICAlLTIwLjEyN3MgJS4xMjdzXG4iCittc2dzdHIgIiAlN2xkIOC9luC9seC8i+C9oOC9suC9iuC9suC9puC9suC8iyAlNWQg4L2C4L6y4L2j4LyL4L2Q4L2y4L2C4LyL4L2a4L204LyLICAgJWMgICUtMjAuMTI3cyAlLjEyN3NcbiIKKworIzogZHBrZy1kZWIvaW5mby5jOjE3NAorIywgYy1mb3JtYXQKK21zZ2lkICIgICAgIG5vdCBhIHBsYWluIGZpbGUgICAgICAgICAgJS4yNTVzXG4iCittc2dzdHIgIiAgICAg4L2J4L2C4LyL4L2i4L6Q4L6x4L2E4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyLICAgICAgICAgICUuMjU1cyDgvZjgvbrgvZPgvIvgvZTgvaZcbiIKKworIzogZHBrZy1kZWIvaW5mby5jOjE4NgorbXNnaWQgIihubyBgY29udHJvbCcgZmlsZSBpbiBjb250cm9sIGFyY2hpdmUhKVxuIgorbXNnc3RyICIo4L2a4L2R4LyL4L2g4L2b4L2y4L2T4LyL4L2h4L2y4L2C4LyL4L2Y4L2b4L284L2R4LyL4L2T4L2E4LyL4L2j4L204LyLIGBjb250cm9sJyDgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIvgvZjgvbrgvZHgvIshKVxuIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MjIyCittc2dpZCAiY291bGQgbm90IG9wZW4gdGhlIGBjb250cm9sJyBjb21wb25lbnQiCittc2dzdHIgImBjb250cm9sJyDgvYbgvIvgvaTgvabgvIvgvaDgvZHgvbLgvIvgvYHgvIvgvZXgvrHgvbrgvIvgvZjgvIvgvZrgvbTgvYLgvabgvI0iCisKKyM6IGRwa2ctZGViL2luZm8uYzoyNjEKK21zZ2lkICJmYWlsZWQgZHVyaW5nIHJlYWQgb2YgYGNvbnRyb2wnIGNvbXBvbmVudCIKK21zZ3N0ciAiYGNvbnRyb2wnIOC9huC8i+C9pOC9puC8i+C9o+C+t+C9guC8i+C9lOC9oOC9suC8i+C9puC+kOC9luC9puC8i+C9oOC9kOC9tOC9puC8i+C9pOC9vOC9ouC8i+C9oOC9luC+seC9tOC9hOC8i+C9oeC9vOC9keC8jSIKKworIzogZHBrZy1kZWIvaW5mby5jOjI2MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyB0aGUgJyVzJyBjb21wb25lbnQiCittc2dzdHIgIuC9oOC9muC9vOC9o+C8i+C9k+C9suC9oOC9suC8i+C9ouC+kuC+seC9tOC9keC8i+C9keC9tOC9hOC8i+C9geC8i+C9luC9puC+oeC9mOC8i+C9k+C9suC9oOC9suC8i+C9oOC9m+C9vOC9o+C8i+C9luC8jSIKKworIzogZHBrZy1kZWIvaW5mby5jOjI3OAorbXNnaWQgIkVycm9yIGluIGZvcm1hdCIKK21zZ3N0ciAi4L2i4L6p4LyL4L2m4L6S4L6y4L2y4L2C4LyL4L2T4L2E4LyL4L2g4L2b4L284L2j4LyL4L2W4LyNIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MzI4Cittc2dpZCAiLS1jb250ZW50cyB0YWtlcyBleGFjdGx5IG9uZSBhcmd1bWVudCIKK21zZ3N0ciAiLS3gvZPgvYTgvIvgvZHgvbzgvZPgvIvgvYLgvrHgvbLgvabgvIvgvabgvpLgvrLgvbTgvZbgvIvgvaLgvp/gvYLgvabgvIvgvYLgvYXgvbLgvYLgvIvgvY/gvYLgvIvgvY/gvYLgvIvgvabgvqbgvbrgvIvgvaDgvZbgvYLgvZTgvIvgvajgvbLgvZPgvI0iCisKKyM6IGRwa2ctZGViL21haW4uYzo1NAorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIGFyY2hpdmUgYmFja2VuZCB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICLgvYzgvbLgvIvgvZbgvbLgvIvgvaHgvbHgvZPgvIsgYCVzJyDgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIvgvaHgvbLgvYLgvIvgvZjgvZvgvbzgvZHgvIvgvYDgvrHgvbLgvabgvIvgvZDgvbzgvZPgvIvgvaLgvbLgvZjgvIsgJXMg4L2i4L6S4L6x4L2W4LyL4L2Y4L2Q4L2g4LyL4L2g4L2W4L2R4LyL4L2h4L284L2R4LyNXG4iCisKKyM6IGRwa2ctZGViL21haW4uYzo3MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIkNvbW1hbmRzOlxuIgorI3wgIiAgLWJ8LS1idWlsZCA8ZGlyZWN0b3J5PiBbPGRlYj5dICAgQnVpbGQgYW4gYXJjaGl2ZS5cbiIKKyN8ICIgIC1jfC0tY29udGVudHMgPGRlYj4gICAgICAgICAgICAgIExpc3QgY29udGVudHMuXG4iCisjfCAiICAtSXwtLWluZm8gPGRlYj4gWzxjZmlsZT4gLi4uXSAgICBTaG93IGluZm8gdG8gc3Rkb3V0LlxuIgorI3wgIiAgLVd8LS1zaG93IDxkZWI+ICAgICAgICAgICAgICAgICAgU2hvdyBpbmZvcm1hdGlvbiBvbiBwYWNrYWdlKHMpXG4iCisjfCAiICAtZnwtLWZpZWxkIDxkZWI+IFs8Y2ZpZWxkPiAuLi5dICBTaG93IGZpZWxkKHMpIHRvIHN0ZG91dC5cbiIKKyN8ICIgIC1lfC0tY29udHJvbCA8ZGViPiBbPGRpcmVjdG9yeT5dIEV4dHJhY3QgY29udHJvbCBpbmZvLlxuIgorI3wgIiAgLXh8LS1leHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+ICAgRXh0cmFjdCBmaWxlcy5cbiIKKyN8ICIgIC1YfC0tdmV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gIEV4dHJhY3QgJiBsaXN0IGZpbGVzLlxuIgorI3wgIiAgLS1mc3lzLXRhcmZpbGUgPGRlYj4gICAgICAgICAgICAgT3V0cHV0IGZpbGVzeXN0ZW0gdGFyZmlsZS5cbiIKKyN8ICJcbiIKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtYnwtLWJ1aWxkIDxkaXJlY3Rvcnk+IFs8ZGViPl0gICBCdWlsZCBhbiBhcmNoaXZlLlxuIgorIiAgLWN8LS1jb250ZW50cyA8ZGViPiAgICAgICAgICAgICAgTGlzdCBjb250ZW50cy5cbiIKKyIgIC1JfC0taW5mbyA8ZGViPiBbPGNmaWxlPiAuLi5dICAgIFNob3cgaW5mbyB0byBzdGRvdXQuXG4iCisiICAtV3wtLXNob3cgPGRlYj4gICAgICAgICAgICAgICAgICBTaG93IGluZm9ybWF0aW9uIG9uIHBhY2thZ2UocylcbiIKKyIgIC1mfC0tZmllbGQgPGRlYj4gWzxjZmllbGQ+IC4uLl0gIFNob3cgZmllbGQocykgdG8gc3Rkb3V0LlxuIgorIiAgLWV8LS1jb250cm9sIDxkZWI+IFs8ZGlyZWN0b3J5Pl0gRXh0cmFjdCBjb250cm9sIGluZm8uXG4iCisiICAteHwtLWV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gICBFeHRyYWN0IGZpbGVzLlxuIgorIiAgLVh8LS12ZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PiAgRXh0cmFjdCAmIGxpc3QgZmlsZXMuXG4iCisiICAtUnwtLXJhdy1leHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFeHRyYWN0IGNvbnRyb2wgaW5mbyBhbmQgZmlsZXMuXG4iCisiICAtLWZzeXMtdGFyZmlsZSA8ZGViPiAgICAgICAgICAgICBPdXRwdXQgZmlsZXN5c3RlbSB0YXJmaWxlLlxuIgorIlxuIgorbXNnc3RyICIiCisi4L2W4L2i4L6h4LyL4L2W4L2A4L284L2R4LyL4L2a4L204LyLOlxuIgorIiAgLWJ8LS3gvZbgvZ/gvbzgvIvgvZbgvaLgvqngvbLgvYLgvabgvIvgvaDgvZbgvZHgvIsgPGRpcmVjdG9yeT4gWzxkZWI+XSAgIOC9oeC9suC9guC8i+C9mOC9m+C9vOC9keC8i+C9heC9suC9guC8i+C9luC9n+C9vOC8i+C9luC9ouC+qeC9suC9guC9puC8i+C9oOC9luC9keC8jVxuIgorIiAgLWN8LS3gvZPgvYTgvIvgvZHgvbzgvZPgvIvgvZrgvbTgvIsgPGRlYj4gICAgICAgICAgICAgIOC9kOC9vOC8i+C9oeC9suC9guC8i+C9k+C9hOC8i+C9keC9vOC9k+C8i+C9muC9tOC8jVxuIgorIiAgLUl8LS3gvZbgvaLgvqHgvIvgvZHgvbzgvZPgvIsgPGRlYj4gWzxjZmlsZT4gLi4uXSAgICDgvZbgvaLgvqHgvIvgvZHgvbzgvZPgvIvgvaDgvZHgvbLgvIvgvajgvbrgvabgvbLgvIvgvYrgvbLgvIvgvYzgvbLgvIvgvajgvbzgvIvgvaHgvbTgvIvgvYrgvbLgvIvgvaPgvbTgvIvgvabgvp/gvbzgvZPgvI1cbiIKKyIgIC1XfC0t4L2m4L6f4L284L2T4LyLIDxkZWI+ICAgICAgICAgICAgICAgICAg4L2W4L2i4L6h4LyL4L2R4L284L2T4LyL4L2g4L2R4L2y4LyL4L2Q4L204L2Y4LyL4L2m4L6S4L6y4L2y4L2j4LyLKOC9muC9tOC8iyngvYLgvbTgvIvgvaPgvbTgvIvgvabgvp/gvbzgvZPgvI1cbiIKKyIgIC1mfC0t4L2m4LyL4L2m4L6S4L284LyLIDxkZWI+IFs8Y2ZpZWxkPiAuLi5dICDgvabgvIvgvabgvpLgvbzgvIso4L2a4L204LyLKeC9qOC9uuC9puC9suC8i+C9iuC9suC8i+C9jOC9suC8i+C9qOC9vOC8i+C9oeC9tOC8i+C9iuC9suC8i+C9o+C9tOC8i+C9puC+n+C9vOC9k+C8jVxuIgorIiAgLWV8LS3gvZrgvZHgvIvgvaDgvZvgvbLgvZPgvIsgPGRlYj4gWzxkaXJlY3Rvcnk+XSDgvZrgvZHgvIvgvaDgvZvgvbLgvZPgvIvgvZbgvaLgvqHgvIvgvaDgvZHgvbzgvZPgvIvgvZXgvrHgvbLgvaLgvIvgvZHgvbzgvZPgvIvgvaDgvZbgvZHgvI1cbiIKKyIgIC14fC0t4L2V4L6x4L2y4L2i4LyL4L2g4L2R4L284L2T4LyL4L2g4L2W4L2R4LyLIDxkZWI+IDxkaXJlY3Rvcnk+ICAg4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2a4L204LyL4L2V4L6x4L2y4L2i4LyL4L2g4L2R4L284L2T4LyL4L2g4L2W4L2R4LyNXG4iCisiICAtWHwtLeC9neC9suC8i+C9leC+seC9suC9ouC8i+C9oOC9keC9vOC9k+C8i+C9oOC9luC9keC8jSA8ZGViPiA8ZGlyZWN0b3J5PiAg4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2a4L204LyLIOC9leC+seC9suC9ouC8i+C9oOC9keC9vOC9k+C8i+C9keC9hOC8i+C9kOC9vOC8i+C9luC9gOC9vOC9keC8i+C9oOC9luC9keC8jVxuIgorIiAgLS3gvajgvbrgvZXgvIvgvajgvbrgvabgvbLgvIvgvZ3gvaDgvbLgvIvgvajgvbrgvabgvbLgvIst4L2K4L2i4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyLIDxkZWI+ICAgICAgICAgICAgIOC9qOC9oOC9tOC9iuC9suC8i+C9lOC9tOC9iuC9suC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9ouC9suC9mOC8i+C9o+C9tOC9guC9puC8i+C9iuC9ouC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8jVxuIgorIlxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6OTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIjxkZWI+IGlzIHRoZSBmaWxlbmFtZSBvZiBhIERlYmlhbiBmb3JtYXQgYXJjaGl2ZS5cbiIKKyI8Y2ZpbGU+IGlzIHRoZSBuYW1lIG9mIGFuIGFkbWluaXN0cmF0aXZlIGZpbGUgY29tcG9uZW50LlxuIgorIjxjZmllbGQ+IGlzIHRoZSBuYW1lIG9mIGEgZmllbGQgaW4gdGhlIG1haW4gYGNvbnRyb2wnIGZpbGUuXG4iCisiXG4iCittc2dzdHIgIiIKKyI8ZGViPiDgvaDgvZHgvbLgvIvgvYzgvbLgvIvgvZbgvbLgvaHgvbHgvZPgvIvgvaLgvqngvIvgvabgvpLgvrLgvbLgvYLgvIvgvaHgvbLgvYLgvIvgvZjgvZvgvbzgvZHgvIvgvYDgvrHgvbLgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIvgvZjgvbLgvYTgvIvgvajgvbLgvZPgvI1cbiIKKyI8Y2ZpbGU+IOC9oOC9keC9suC8i+C9luC9keC9guC8i+C9puC+kOC+seC9vOC9hOC8i+C9oeC9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9huC8i+C9pOC9puC8i+C9gOC+seC9suC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9mOC9suC9hOC8i+C9qOC9suC9k+C8jVxuIgorIjxjZmllbGQ+IOC9oOC9keC9suC8i2Bjb250cm9sJyDgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIvgvYLgvZngvbzgvIvgvZbgvbzgvIvgvZHgvbrgvIvgvZPgvYTgvIvgvYLgvbLgvIvgvabgvIvgvabgvpLgvbzgvaDgvbLgvIvgvZjgvbLgvYTgvIvgvajgvbLgvZPgvI1cbiIKKyJcbiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjk5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tc2hvd2Zvcm1hdD08Zm9ybWF0PiAgICAgICAgICAgIFVzZSBhbHRlcm5hdGl2ZSBmb3JtYXQgZm9yIC0tc2hvdy5cbiIKKyIgIC12LCAtLXZlcmJvc2UgICAgICAgICAgICAgICAgICAgIEVuYWJsZSB2ZXJib3NlIG91dHB1dC5cbiIKKyIgIC1EICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVuYWJsZSBkZWJ1Z2dpbmcgb3V0cHV0LlxuIgorIiAgLS1vbGQsIC0tbmV3ICAgICAgICAgICAgICAgICAgICAgU2VsZWN0IGFyY2hpdmUgZm9ybWF0LlxuIgorIiAgLS1ub2NoZWNrICAgICAgICAgICAgICAgICAgICAgICAgU3VwcHJlc3MgY29udHJvbCBmaWxlIGNoZWNrIChidWlsZCBiYWRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFja2FnZXMpLlxuIgorIiAgLXojICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU2V0IHRoZSBjb21wcmVzc2lvbiBsZXZlbCB3aGVuIGJ1aWxkaW5nLlxuIgorIiAgLVo8dHlwZT4gICAgICAgICAgICAgICAgICAgICAgICAgU2V0IHRoZSBjb21wcmVzc2lvbiB0eXBlIHVzZWQgd2hlbiAiCisiYnVpbGRpbmcuXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFsbG93ZWQgdHlwZXM6IGd6aXAsIHh6LCBiemlwMiwgbHptYSwgIgorIm5vbmUuXG4iCisiXG4iCittc2dzdHIgIiIKKyLgvYLgvZHgvZjgvIvgvYHgvIvgvZrgvbTgvIs6XG4iCisiICAtLeC9ouC+qeC8i+C9puC+kuC+suC9suC9guC8i+C9puC+n+C9vOC9k+C8iz08Zm9ybWF0PiAgICAgICAgICAgIC0t4L2m4L6f4L284L2T4LyL4L2T4L2y4L2g4L2y4LyL4L2R4L284L2T4LyL4L2j4L204LyLIOC9puC+pOC9uuC9o+C8i+C9mOC8i+C9ouC+qSDgvabgvpLgvrLgvbLgvYLgvIvgvaPgvYLgvIvgvaPgvbrgvZPgvIvgvaDgvZDgvZbgvI1cbiIKKyIgIC1EICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIOC9ouC+kOC+seC9uuC9k+C8i+C9puC9uuC9o+C8i+C9oOC9luC9keC8i+C9k+C9suC9oOC9suC8i+C9qOC9oOC9tOC9iuC9suC8i+C9lOC9tOC9iuC9suC8i+C9o+C+leC9vOC9guC9puC8i+C9heC9k+C8i+C9luC9n+C9vOC8jVxuIgorIiAgLS3gvaLgvpngvbLgvYTgvZjgvI0gLS3gvYLgvabgvaLgvZQgICAgICAgICAgICAgICAgICAgICDgvaHgvbLgvYLgvIvgvZjgvZvgvbzgvZHgvIvgvaLgvqngvIvgvabgvpLgvrLgvbLgvYLgvIvgvabgvbrgvaPgvIvgvaDgvZDgvbTgvIvgvaDgvZbgvZHgvI1cbiIKKyIgIC0t4L2e4L2y4L2W4LyL4L2R4L2U4L6x4L2R4LyL4L2g4L2W4L2R4LyL4L2Y4L2y4LyL4L2Y4L264L2R4LyLICAgICAgICAgICAgICAgICAgICAgICDgvZrgvZHgvIvgvaDgvZvgvbLgvZPgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIvgvZ7gvbLgvZbgvIvgvZHgvZTgvrHgvZHgvIvgvZjgvaLgvIvgvZjgvZPgvbzgvZPgvIsgKOC9luC+seC9hOC8iyIKKyLgvYngvbrgvabgvIvgvaDgvZbgvZHgvIvgvZbgvZ/gvbzgvIvgvZbgvaLgvqngvbLgvYLgvabgvIvgvaDgvZbgvZHgvIvgvaHgvbzgvZHgvIvgvZTgvaDgvbLgvItcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg4L2Q4L204L2Y4LyL4L2m4L6S4L6y4L2y4L2j4LyL4L2a4L204LyLKeC8jVxuIgorIiAgLXojICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg4L2W4L2f4L284LyL4L2W4L2i4L6p4L2y4L2C4L2m4LyL4L2g4L2W4L2R4LyL4L2W4L2g4L2y4LyL4L2m4L6Q4L2W4L2m4LyLIOC9qOC9uuC9luC8i+C9luC9meC9tOC9guC9puC8i+C9gOC+seC9suC8i+C9guC9k+C9puC8i+C9ouC9suC9mOC8i+C9oOC9keC9suC8iyIKKyLgvYLgvZ7gvbLgvIvgvabgvpLgvrLgvbLgvYLgvIvgvaDgvZbgvZHgvI1cbiIKKyIgIC1aPHR5cGU+ICAgICAgICAgICAgICAgICAgICAgICAgIOC9luC9n+C9vOC8i+C9luC9ouC+qeC9suC9guC9puC8i+C9oOC9luC9keC8i+C9luC9oOC9suC8i+C9puC+kOC9luC9puC8i+C9o+C9guC8i+C9o+C9uuC9k+C8i+C9oOC9kOC9luC8i+C9oeC9vOC9keC8i+C9lOC9oOC9suC8i+C9qOC9uuC9luC8iyIKKyLgvZbgvZngvbTgvYLgvabgvIvgvYDgvrHgvbLgvIvgvZHgvZbgvrHgvbrgvIvgvZbgvIvgvaDgvZHgvbLgvIvgvYLgvZ7gvbLgvIvgvabgvpLgvrLgvbLgvYLgvIvgvaDgvZbgvZHgvI1cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg4L2g4L2W4L2R4LyL4L2G4L284L2C4LyL4L2U4L2g4L2y4LyL4L2C4L2T4L2m4LyL4L2C4L284L2E4LyL4L2a4L204LyLOiDgvYfgvbLgvIvgvZ/gvbLgvZTgvIsg4L2W4L2y4LyL4L2f4L2y4L2U4LyL4LyiIOC9heC9suC8iyIKKyLgvZjgvbrgvZHgvItcbiIKKyJcbiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjEyMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiVXNlIGBkcGtnJyB0byBpbnN0YWxsIGFuZCByZW1vdmUgcGFja2FnZXMgZnJvbSB5b3VyIHN5c3RlbSwgb3JcbiIKKyJgZHNlbGVjdCcgb3IgYGFwdGl0dWRlJyBmb3IgdXNlci1mcmllbmRseSBwYWNrYWdlIG1hbmFnZW1lbnQuICBQYWNrYWdlc1xuIgorInVucGFja2VkIHVzaW5nIGBkcGtnLWRlYiAtLWV4dHJhY3QnIHdpbGwgYmUgaW5jb3JyZWN0bHkgaW5zdGFsbGVkICFcbiIKK21zZ3N0ciAiIgorIlxuIgorImBkcGtnJyDgvaDgvZHgvbLgvIvgvYHgvrHgvbzgvZHgvIvgvaLgvaDgvbLgvIvgvaLgvbLgvZjgvIvgvaPgvbTgvYLgvabgvIvgvaPgvabgvIvgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIvgvZrgvbTgvIvgvYLgvZ7gvbLgvIvgvZbgvZngvbTgvYLgvabgvIvgvZHgvYTgvIvgvaLgvqngvIvgvZbgvabgvpDgvrLgvZHgvIvgvYLgvY/gvYTgvIvgvZPgvbLgvaDgvbLgvIvgvZHgvbzgvZPgvIvgvaPgvabgvIvgvaPgvYLgvIvgvaPgvbrgvZPgvIvgvaDgvZDgvZbgvIsgIgorIuC9oeC9hOC8i+C9k+C8i1xuIgorIuC9o+C9guC8i+C9o+C9uuC9k+C8i+C9lOC8iy3gvZjgvZDgvbTgvZPgvIvgvabgvpLgvrLgvbLgvYLgvIvgvYLgvbLgvIvgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIvgvaDgvZvgvbLgvZPgvIvgvabgvpDgvrHgvbzgvYTgvIvgvZTgvaDgvbLgvIvgvZHgvbzgvZPgvIvgvaPgvbTgvItgZHNlbGVjdCcg4L2h4L2E4LyL4L2T4LyLIGBhcHRpdHVkZScg4L2j4L2C4LyL4L2j4L264L2T4LyL4L2g4L2Q4L2W4LyNICIKKyLgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvItcbiIKKyLgvZbgvaTgvbTgvZbgvIvgvZPgvbLgvIvgvZrgvbTgvIsgIGBkcGtnLWRlYiAtLWV4dHJhY3QnIOC9o+C9guC8i+C9o+C9uuC9k+C8i+C9oOC9kOC9luC8i+C9kOC9vOC9guC8i+C9oOC9luC9keC8i+C9mOC9suC8i+C9oOC9keC9suC8i+C9guC9suC9puC8iyDgvZbgvZHgvbrgvZPgvIvgvZjgvbrgvZHgvIvgvabgvqbgvbrgvIvgvYLgvZ7gvbLgvIvgvZbgvZngvbTgvYLgvabgvIsiCisi4L2g4L2W4L2R4LyL4L2g4L284L2E4LyLIVxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTMyCittc2dpZCAiIgorIlR5cGUgZHBrZy1kZWIgLS1oZWxwIGZvciBoZWxwIGFib3V0IG1hbmlwdWxhdGluZyAqLmRlYiBmaWxlcztcbiIKKyJUeXBlIGRwa2cgLS1oZWxwIGZvciBoZWxwIGFib3V0IGluc3RhbGxpbmcgYW5kIGRlaW5zdGFsbGluZyBwYWNrYWdlcy4iCittc2dzdHIgIiIKKyLgvZHgvZbgvrHgvbrgvIvgvZbgvIsg4L2M4L2y4LyL4L2U4L2y4LyL4L2A4L264LyL4L2H4L2y4LyLIC0g4L2M4L264L2W4LyLLS3gvYLgvrLgvbzgvYLgvabgvIvgvaLgvZjgvIsg4L2g4L2R4L2y4LyLICouZGViIOC9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9muC9tOC8iyDgvabgvpLgvrHgvbTgvaLgvIvgvZbgvYXgvbzgvabgvIvgvYLgvY/gvYTgvIvgvZPgvbLgvaDgvbLgvIvgvabgvpDgvbzgvaLgvIvgvaPgvabgvIvgvYLgvrLgvbzgvYLgvabgvIvgvaLgvZjgvIsiCisi4L2C4L6x4L2y4LyL4L2R4L284L2T4LyL4L2j4L204LyNXG4iCisi4L2R4L2W4L6x4L264LyL4L2W4LyL4L2M4L2y4LyL4L2U4L2y4LyL4L2A4L264LyL4L2H4L2y4LyLLS3gvYLgvrLgvbzgvYLgvabgvIvgvaLgvZjgvIvgvaDgvZHgvbLgvIsg4L2Q4L204L2Y4LyL4L2m4L6S4L6y4L2y4L2j4LyL4L2a4L204LyL4L2C4L2e4L2y4LyL4L2W4L2Z4L204L2C4L2m4LyL4L2g4L2W4L2R4LyL4L2T4L2y4LyL4L2R4L2E4LyL4L2C4L2e4L2y4LyL4L2W4L2Z4L204L2C4L2m4LyL4L2Y4L2y4LyL4L2g4L2W4L2R4LyL4L2T4L2y4L2g4L2y4LyL4L2m4L6Q4L284L2i4LyL4L2j4L2m4LyLIgorIuC9guC+suC9vOC9guC9puC8i+C9ouC9mOC8i+C9guC+seC9suC8i+C9keC9vOC9k+C8i+C9o+C9tOC8jSIKKworIzogZHBrZy1kZWIvbWFpbi5jOjE0OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBpbnRlZ2VyIGZvciAtJWM6ICclLjI1MHMnIgorbXNnc3RyICItLSVzOiBgJS4yNTBzJyDgvYLgvbLgvIvgvZHgvbzgvZPgvIvgvaPgvbTgvIvgvZPgvbTgvabgvIvgvZjgvbrgvZHgvIvgvafgvrLgvbLgvaPgvIvgvajgvYTgvIvgvI0iCisKKyM6IGRwa2ctZGViL21haW4uYzoxNTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgY29tcHJlc3Npb24gbGV2ZWwgZm9yIC0lYzogJWxkJyIKK21zZ3N0ciAiLS0lczogYCUuMjUwcycg4L2C4L2y4LyL4L2R4L284L2T4LyL4L2j4L204LyL4L2T4L204L2m4LyL4L2Y4L264L2R4LyL4L2n4L6y4L2y4L2j4LyL4L2o4L2E4LyL4LyNIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTYxCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gY29tcHJlc3Npb24gdHlwZSBgJXMnISIKK21zZ3N0ciAi4L2Y4LyL4L2k4L264L2m4LyL4L2U4L2g4L2y4LyL4L2o4L264L2W4LyL4L2W4L2Z4L204L2C4L2m4LyL4L2A4L6x4L2y4LyL4L2R4L2W4L6x4L264LyL4L2W4LyLIGAlcychIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzo1MgorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgZGlnaXQgKGNvZGUgJWQpIGluICVzIgorbXNnc3RyICLgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIsgYCUuMjUwcycg4L2g4L2R4L2y4LyL4L2E4L2T4LyL4L2F4L2T4LyLIC0g4L2W4L6x4L2E4LyL4L2J4L264L2m4LyL4L2o4L2E4LyL4L2h4L2y4L2C4LyLKOC9qOC9hOC8i+C9ouC+n+C9guC9puC8iyAlZCkgJXMg4L2T4L2E4LyL4L2h4L284L2R4LyL4L2Y4L2y4LyL4L2g4L2R4L2y4LyL4L2o4L2y4L2T4LyNIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzo2MAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSAlLjI1MHMgbWlzc2luZyIKK21zZ3N0ciAi4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyLIGAlLjI1MHMnIOC9oOC9keC9suC8i+C9hOC9k+C8i+C9heC9k+C8i+C9qOC9suC9k+C8iyAtIGAlLjI1MHMnIOC9luC+suC9o+C9guC8i+C9puC+n+C9vOC9ouC8i+C9nuC9tOC9guC9puC8i+C9k+C9tOC9giIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gbWlzc2luZyBuZXdsaW5lIGFmdGVyICUuMjUwcyIKK21zZ3N0ciAiIgorIuC9oeC9suC9guC8i+C9puC+o+C9vOC9keC8iyBgJS4yNTBzJyDgvaDgvZHgvbLgvIvgvYTgvZPgvIvgvYXgvZPgvIvgvajgvbLgvZPgvIsgLSBgJS4yNTBzJyDgvYLgvbLgvIvgvaTgvbTgvaPgvIvgvaPgvabgvIvgvYLgvrLgvaPgvIvgvZDgvbLgvYLgvIvgvYLgvabgvaLgvZTgvIvgvZbgvaLgvrPgvYLgvIvgvabgvp/gvbzgvaLgvIvgvZ7gvbTgvYLgvabgvIvgvaHgvbzgvZHgvZTgvI0iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjg5IGRwa2ctc3BsaXQvbWFpbi5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciByZWFkaW5nICUuMjUwcyIKK21zZ3N0ciAiJS4yNTBzIOC9o+C+t+C9guC8i+C9lOC9oOC9suC8i+C9oOC9m+C9vOC9o+C8i+C9luC8jSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTAzCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBtYWdpYyBhdCBlbmQgb2YgZmlyc3QgaGVhZGVyIgorbXNnc3RyICIiCisi4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyLIGAlLjI1MHMnIOC9oOC9keC9suC8i+C9hOC9k+C8i+C9heC9k+C8iyAtIOC9luC+seC9hOC8i+C9ieC9uuC9puC8i+C9mOC9suC9guC8i+C9oOC9leC+suC9tOC9o+C8iyDgvZjgvYLgvbzgvIvgvaHgvbLgvYLgvIvgvYLgvbLgvIvgvZjgvYfgvbTgvYLgvIvgvaHgvYTgvIvgvZPgvIvgvZHgvYTgvIvgvZTgvIvgvaHgvbzgvZHgvIvgvZjgvbLgvIvgvaDgvZHgvbLgvIvgvajgvbLgvZPgvI0iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjExMworIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgcGFkZGluZyBjaGFyYWN0ZXIgKGNvZGUgJWQpIgorbXNnc3RyICLgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIsgYCUuMjUwcycg4L2g4L2R4L2y4LyL4L2E4L2T4LyL4L2F4L2T4LyL4L2o4L2y4L2T4LyLIC0g4L2W4L2i4LyL4L2k4L2W4L2m4LyL4L2h4L2y4L2C4LyL4L2g4L2W4L6y4L204LyL4L2W4L6x4L2E4LyL4L2J4L264L2m4LyLKOC9qOC9hOC8i+C9ouC+n+C9guC9puC8iyAlZCkiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjExNworIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBudWxscyBpbiBpbmZvIHNlY3Rpb24iCittc2dzdHIgIuC9oeC9suC9guC8i+C9puC+o+C9vOC9keC8iyBgJS4yNTBzJyDgvaDgvZHgvbLgvIvgvYTgvZPgvIvgvYXgvZPgvIvgvajgvbLgvZPgvIsgLSDgvZbgvaLgvqHgvIvgvZjgvZrgvbzgvZPgvIvgvZHgvZbgvrHgvbrgvIvgvZjgvZrgvZPgvIvgvZPgvYTgvIvgvabgvp/gvbzgvYTgvIvgvYbgvIvgvZrgvbTgvI0iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyMgorIywgZnV6enkKK21zZ2lkICJmb3JtYXQgdmVyc2lvbiBudW1iZXIiCittc2dzdHIgIuC9kOC9vOC9k+C8i+C9ouC9suC9mOC8i+C9qOC9hOC8i+C8jSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgZm9ybWF0IHZlcnNpb24gYCUuMjUwcycgLSB5b3UgbmVlZCBhIG5ld2VyIGRwa2ctc3BsaXQiCittc2dzdHIgIiIKKyLgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIsgIGAlLjI1MHMnIOC9oOC9keC9suC8i+C9ouC+qSDgvabgvpLgvrLgvbLgvYLgvIvgvZDgvbzgvZPgvIvgvaLgvbLgvZjgvIsgIGAlLjI1MHMnIOC9qOC9suC9k+C8iyAtIOC9geC+seC9vOC9keC8i+C9o+C9tOC8iyDgvYzgvbLgvIvgvZTgvbLgvIvgvYDgvbrgvIvgvYfgvbLgvIst4L2W4L2k4L2C4LyL4L2T4L2y4LyL4L2C4L2m4L2i4L2U4LyL4L2F4L2y4L2C4LyLIgorIuC9keC9guC9vCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTI3CisjLCBmdXp6eQorbXNnaWQgInBhY2thZ2UgbmFtZSIKK21zZ3N0ciAiKOC9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9ozoiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyOAorIywgZnV6enkKK21zZ2lkICJwYWNrYWdlIHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICLgvZDgvbzgvZPgvIvgvaLgvbLgvZjgvIvgvajgvYTgvIvgvI0iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyOQorbXNnaWQgInBhY2thZ2UgZmlsZSBNRDUgY2hlY2tzdW0iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTMyCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBNRDUgY2hlY2tzdW0gYCUuMjUwcyciCittc2dzdHIgIuC9oeC9suC9guC8i+C9puC+o+C9vOC9keC8iyBgJS4yNTBzJyDgvaDgvZHgvbLgvIvgvYTgvZPgvIvgvYXgvZPgvIvgvajgvbLgvZPgvIsgLSDgvZbgvrHgvYTgvIvgvYngvbrgvabgvIsg4L2o4L264L2Y4LyL4L2M4L2y4LyL4LylIOC9heC9uuC9guC8i+C9puC9mOC8iyAgYCUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEzNCBkcGtnLXNwbGl0L2luZm8uYzoxMzUKK21zZ2lkICJhcmNoaXZlIHRvdGFsIHNpemUiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTM2IGRwa2ctc3BsaXQvaW5mby5jOjEzNworbXNnaWQgImFyY2hpdmUgcGFydCBvZmZzZXQiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTM5CisjLCBmdXp6eQorbXNnaWQgImFyY2hpdmUgcGFydCBudW1iZXJzIgorbXNnc3RyICLgvZDgvbzgvZPgvIvgvaLgvbLgvZjgvIvgvajgvYTgvIvgvI0iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE0MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gbm8gc2xhc2ggYmV0d2VlbiBwYXJ0IG51bWJlcnMiCittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gbm8gc2xhc2ggYmV0d2VlbiBhcmNoaXZlIHBhcnQgbnVtYmVycyIKK21zZ3N0ciAi4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyLIGAlLjI1MHMnIOC9oOC9keC9suC8i+C9hOC9k+C8i+C9heC9k+C8i+C9qOC9suC9k+C8iyAtIOC9oeC9k+C8i+C9o+C9guC8i+C9qOC9hOC8i+C9muC9tOC9oOC9suC8i+C9luC9ouC8i+C9k+C8i+C9guC9oeC9vOC8i+C9pOC9keC8i+C9mOC9uuC9keC8jSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTQ1Cittc2dpZCAibnVtYmVyIG9mIGFyY2hpdmUgcGFydHMiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTQ3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgbnVtYmVyIG9mIGFyY2hpdmUgcGFydHMiCittc2dzdHIgIuC9oeC9suC9guC8i+C9puC+o+C9vOC9keC8iyBgJS4yNTBzJyDgvaDgvZHgvbLgvIvgvYTgvZPgvIvgvYXgvZPgvIvgvajgvbLgvZPgvIsgLSDgvaHgvZPgvIvgvaPgvYLgvIvgvajgvYTgvIvgvZbgvrHgvYTgvIvgvYngvbrgvabgvI0iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE0OQorIywgZnV6enkKK21zZ2lkICJhcmNoaXZlIHBhcnRzIG51bWJlciIKK21zZ3N0ciAi4L2Q4L284L2T4LyL4L2i4L2y4L2Y4LyL4L2o4L2E4LyL4LyNIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBwYXJ0IG51bWJlciIKK21zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgYXJjaGl2ZSBwYXJ0IG51bWJlciIKK21zZ3N0ciAi4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyLIGAlLjI1MHMnIOC9oOC9keC9suC8i+C9hOC9k+C8i+C9heC9k+C8i+C9qOC9suC9k+C8iyAtIOC9oeC9k+C8i+C9o+C9guC8i+C9qOC9hOC8i+C9luC+seC9hOC8i+C9ieC9uuC9puC8jSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTU3CisjLCBmdXp6eQorbXNnaWQgInBhY2thZ2UgYXJjaGl0ZWN0dXJlIgorbXNnc3RyICIo4L2Q4L204L2Y4LyL4L2m4L6S4L6y4L2y4L2jOiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTY2CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBtYWdpYyBhdCBlbmQgb2Ygc2Vjb25kIGhlYWRlciIKK21zZ3N0ciAi4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyLIGAlLjI1MHMnIOC9oOC9keC9suC8i+C9hOC9k+C8i+C9heC9k+C8i+C9qOC9suC9k+C8iyAtIOC9mOC9guC9vOC8i+C9oeC9suC9guC8i+C9guC9ieC9suC9puC8i+C9lOC9oOC9suC8i+C9mOC9h+C9tOC9guC8i+C9o+C9tOC8i+C9mOC9suC9hOC8i+C9oOC9leC+suC9tOC9o+C8i+C9luC+seC9hOC8i+C9ieC9uuC9puC8jSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTY4CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIHNlY29uZCBtZW1iZXIgaXMgbm90IGRhdGEgbWVtYmVyIgorbXNnc3RyICLgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIsgYCUuMjUwcycg4L2g4L2R4L2y4LyL4L2E4L2T4LyL4L2F4L2T4LyL4L2o4L2y4L2T4LyLIC0g4L2g4L2Q4L204L2m4LyL4L2Y4L2y4LyL4L2C4L2J4L2y4L2m4LyL4L2U4LyL4L2g4L2R4L2y4LyL4L2C4L2T4L2R4LyL4L2m4L6h4L204L2R4LyL4L2g4L2Q4L204L2m4LyL4L2Y4L2y4LyL4L2Y4L264L2T4LyNIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gd3JvbmcgbnVtYmVyIG9mIHBhcnRzIGZvciBxdW90ZWQgc2l6ZXMiCittc2dzdHIgIiIKKyLgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIsgYCUuMjUwcycg4L2g4L2R4L2y4LyL4L2E4L2T4LyL4L2F4L2T4LyL4L2o4L2y4L2T4LyLIC0g4L2g4L2R4L6y4L264L2T4LyL4L2i4L6f4L2C4L2m4LyL4L2T4L2E4LyL4L2W4L2Z4L204L2C4L2m4LyL4L2h4L284L2R4LyL4L2U4L2g4L2y4LyL4L2a4L2R4LyL4L2a4L204L2g4L2y4LyL4L2R4L284L2T4LyL4L2j4L204LyL4L2h4L2T4LyL4L2j4L2C4LyL4L2C4L2y4LyL4L2o4L2E4LyL4L2V4L6x4L2y4LyLIgorIuC9oOC9guC+seC9tOC9ouC8jSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTc4CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIHNpemUgaXMgd3JvbmcgZm9yIHF1b3RlZCBwYXJ0IG51bWJlciIKK21zZ3N0ciAiIgorIuC9oeC9suC9guC8i+C9puC+o+C9vOC9keC8iyBgJS4yNTBzJyDgvaDgvZHgvbLgvIvgvYTgvZPgvIvgvYXgvZPgvIvgvajgvbLgvZPgvIsgLSDgvZrgvZHgvIvgvaDgvZHgvbLgvIsg4L2g4L2R4L6y4L264L2T4LyL4L2i4L6f4L2C4L2m4LyL4L2T4L2E4LyL4L2W4L2Z4L204L2C4L2m4LyL4L2h4L284L2R4LyL4L2U4L2g4L2y4LyL4L2h4L2T4LyL4L2j4L2C4LyL4L2o4L2E4LyL4L2C4L2y4LyL4L2R4L284L2T4LyL4L2j4L204LyLIgorIuC9leC+seC9suC8i+C9oOC9guC+seC9tOC9ouC8i+C9qOC9suC9k+C8jSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTg0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmc3RhdCBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuC9oeC9k+C8i+C9o+C9guC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8iyBgJS4yNTBzJyDgvajgvbrgvZXgvIvgvabgvbLgvIvgvYrgvbrgvYrgvbLgvIvgvaDgvZbgvZHgvIvgvZjgvIvgvZrgvbTgvYLgvabgvI0iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE4OQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSB0b28gc2hvcnQiCittc2dzdHIgIuC9oeC9suC9guC8i+C9puC+o+C9vOC9keC8iyBgJS4yNTBzJyDgvaDgvZHgvbLgvIvgvYTgvZPgvIvgvYXgvZPgvIvgvajgvbLgvZPgvIvgvZTgvabgvIsgLeC9puC+o+C8i+C9mOC9uuC9keC8i+C9puC8i+C9mOC9uuC9keC8i+C9kOC9tOC9hOC8i+C9gOC9tOC8jSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjAyIGRwa2ctc3BsaXQvaW5mby5jOjI0OQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgb3BlbiBhcmNoaXZlIHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4L2h4L2y4L2C4LyL4L2Y4L2b4L284L2R4LyL4L2h4L2T4LyL4L2j4L2C4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyLIGAlLjI1MHMnICDgvYHgvIvgvZXgvrHgvbrgvIvgvZjgvbLgvIvgvZrgvbTgvYLgvabgvI0iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjIwNAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIG5vdCBhbiBhcmNoaXZlIHBhcnQiCittc2dzdHIgIuC9oeC9suC9guC8i+C9puC+o+C9vOC9keC8iyBgJS4yNTBzJyDgvaDgvZHgvbLgvIvgvaHgvbLgvYLgvIvgvZjgvZvgvbzgvZHgvIvgvaHgvZPgvIvgvaPgvYLgvIvgvZjgvbrgvZPgvI0iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjIwOQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiVzOlxuIgorI3wgIiAgICBQYXJ0IGZvcm1hdCB2ZXJzaW9uOiAgICAgICAgICAgICVzXG4iCisjfCAiICAgIFBhcnQgb2YgcGFja2FnZTogICAgICAgICAgICAgICAgJXNcbiIKKyN8ICIgICAgICAgIC4uLiB2ZXJzaW9uOiAgICAgICAgICAgICAgICAlc1xuIgorI3wgIiAgICAgICAgLi4uIE1ENSBjaGVja3N1bTogICAgICAgICAgICVzXG4iCisjfCAiICAgICAgICAuLi4gbGVuZ3RoOiAgICAgICAgICAgICAgICAgJWx1IGJ5dGVzXG4iCisjfCAiICAgICAgICAuLi4gc3BsaXQgZXZlcnk6ICAgICAgICAgICAgJWx1IGJ5dGVzXG4iCisjfCAiICAgIFBhcnQgbnVtYmVyOiAgICAgICAgICAgICAgICAgICAgJWQvJWRcbiIKKyN8ICIgICAgUGFydCBsZW5ndGg6ICAgICAgICAgICAgICAgICAgICAlemkgYnl0ZXNcbiIKKyN8ICIgICAgUGFydCBvZmZzZXQ6ICAgICAgICAgICAgICAgICAgICAlbHUgYnl0ZXNcbiIKKyN8ICIgICAgUGFydCBmaWxlIHNpemUgKHVzZWQgcG9ydGlvbik6ICAlbHUgYnl0ZXNcbiIKKyN8ICJcbiIKK21zZ2lkICIiCisiJXM6XG4iCisiICAgIFBhcnQgZm9ybWF0IHZlcnNpb246ICAgICAgICAgICAgJXNcbiIKKyIgICAgUGFydCBvZiBwYWNrYWdlOiAgICAgICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIHZlcnNpb246ICAgICAgICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gYXJjaGl0ZWN0dXJlOiAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiBNRDUgY2hlY2tzdW06ICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIGxlbmd0aDogICAgICAgICAgICAgICAgICVqZCBieXRlc1xuIgorIiAgICAgICAgLi4uIHNwbGl0IGV2ZXJ5OiAgICAgICAgICAgICVqZCBieXRlc1xuIgorIiAgICBQYXJ0IG51bWJlcjogICAgICAgICAgICAgICAgICAgICVkLyVkXG4iCisiICAgIFBhcnQgbGVuZ3RoOiAgICAgICAgICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgIFBhcnQgb2Zmc2V0OiAgICAgICAgICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgIFBhcnQgZmlsZSBzaXplICh1c2VkIHBvcnRpb24pOiAgJWpkIGJ5dGVzXG4iCisiXG4iCittc2dzdHIgIiIKKyIlczpcbiIKKyIgICAg4L2h4L2T4LyL4L2j4L2C4LyL4L2i4L6p4LyL4L2m4L6S4L6y4L2y4L2C4LyL4L2Q4L284L2T4LyL4L2i4L2y4L2Y4LyLOiAgICAgICAgICAgICVzXG4iCisiICAgIOC9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8i+C9guC+seC9suC8i+C9oeC9k+C8i+C9o+C9gjogICAgICAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiDgvZDgvbzgvZPgvIvgvaLgvbLgvZjgvIs6ICAgICAgICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4g4L2o4L264L2Y4LyL4L2M4L2y4LyL4LylIOC9heC9uuC9guC8i+C9puC9mOC8izogICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4g4L2i4L2y4L2E4LyL4L2a4L2ROiAgICAgICAgICAgICAgICAgJWx1IOC9luC9seC8i+C9oOC9suC9iuC9suC9puC9slxuIgorIiAgICAgICAgLi4uIOC9guC9uuC8i+C9ouC8i+C9luC9pOC9gjogICAgICAgICAgICAlbHUg4L2W4L2x4LyL4L2g4L2y4L2K4L2y4L2m4L2y4LyNXG4iCisiICAgIOC9oeC9k+C8i+C9o+C9guC8i+C9qOC9hOC8izogICAgICAgICAgICAgICAgICAgICVkLyVkXG4iCisiICAgIOC9oeC9k+C8i+C9o+C9guC8i+C9ouC9suC9hOC8i+C9muC9keC8izogICAgICAgICAgICAgICAgICAgICV6aSDgvZbgvbHgvIvgvaDgvbLgvYrgvbLgvabgvbLgvI1cbiIKKyIgICAg4L2h4L2T4LyL4L2j4L2C4LyL4L2U4L2i4LyL4L2j4L264L2T4LyLOiAgICAgICAgICAgICAgICAgICAgJWx1IOC9luC9seC8i+C9oOC9suC9iuC9suC9puC9suC8jVxuIgorIiAgIOC9oeC9k+C8i+C9o+C9guC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9muC9keC8iyAo4L2j4L2C4LyL4L2j4L264L2T4LyL4L2g4L2Q4L2W4LyL4L2h4L284L2R4LyL4L2U4L2g4L2y4LyL4L2G4LyL4L2k4L2m4LyLKTogICVsdSDgvZbgvbHgvIvgvaDgvbLgvYrgvbLgvabgvbLgvI1cbiIKKyJcbiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjI1CisjLCBmdXp6eQorI3wgbXNnaWQgIjx1bmtub3duPiIKK21zZ2N0eHQgImFyY2hpdGVjdHVyZSIKK21zZ2lkICI8dW5rbm93bj4iCittc2dzdHIgIjzgvZjgvIvgvaTgvbrgvabgvZTgvIs+IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyNDQgZHBrZy1zcGxpdC9qb2luLmM6MTA1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICItLSVzIHJlcXVpcmVzIG9uZSBvciBtb3JlIHBhcnQgZmlsZSBhcmd1bWVudHMiCittc2dzdHIgIi0t4L2W4L2i4L6h4LyL4L2R4L284L2T4LyL4L2j4L204LyLIOC9oeC9k+C8i+C9o+C9guC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9gOC+seC9suC8i+C9puC+kuC+suC9tOC9luC8i+C9ouC+n+C9guC9puC8i+C9guC9heC9suC9guC8i+C9oeC9hOC8i+C9k+C8i+C9o+C9uuC8i+C9pOC8i+C9heC9suC9guC8i+C9keC9guC9vOC9lOC8i+C9qOC9suC9k+C8jSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjU1CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCVzJyBpcyBub3QgYW4gYXJjaGl2ZSBwYXJ0XG4iCittc2dzdHIgIuC9oeC9suC9guC8i+C9puC+o+C9vOC9keC8iyBgJXMnIOC9oOC9keC9suC8i+C9oeC9suC9guC8i+C9mOC9m+C9vOC9keC8i+C9gOC+seC9suC8i+C9oeC9k+C8i+C9o+C9guC8i+C9heC9suC9guC8i+C9mOC9uuC9k+C8jVxuIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo0NAorIywgYy1mb3JtYXQKK21zZ2lkICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0OiAiCittc2dpZF9wbHVyYWwgIlB1dHRpbmcgcGFja2FnZSAlcyB0b2dldGhlciBmcm9tICVkIHBhcnRzOiAiCittc2dzdHJbMF0gIiIKK21zZ3N0clsxXSAiIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBvdXRwdXQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4L2o4L2g4L204L2K4L2y4LyL4L2U4L204L2P4L2y4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyLIGAlLjI1MHMnIOC9geC8i+C9leC+seC9uuC8i+C9mOC8i+C9muC9tOC9guC9puC8jSIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIChyZSlvcGVuIGlucHV0IHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4L2o4L2y4L2T4LyL4L2U4L204L2P4L2y4LyL4L2h4L2T4LyL4L2j4L2C4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyLIGAlLjI1MHMnICjgvaPgvbzgvYLgvIsp4L2B4LyL4L2V4L6x4L264LyL4L2Y4LyL4L2a4L204L2C4L2m4LyNIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1OAorIywgZnV6enkKKyN8IG1zZ2lkICJTa2lwcGluZyBkZXNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dpZCAic2tpcHBpbmcgc3BsaXQgcGFja2FnZSBoZWFkZXIiCittc2dzdHIgIuC9puC9uuC9o+C8i+C9oOC9kOC9tOC8i+C9mOC8i+C9oOC9luC9keC8i+C9luC9oOC9suC8i+C9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8iyAlcyDgvYLgvbzgvZjgvIvgvaDgvYLgvrHgvbzgvIvgvZHgvbzgvI1cbiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NTkKKyMsIGZ1enp5CisjfCBtc2dpZCAibWlzc2luZyBwYWNrYWdlIgorbXNnaWQgInNwbGl0IHBhY2thZ2UgcGFydCIKK21zZ3N0ciAi4L2W4L2i4L6z4L2C4LyL4L2m4L6f4L284L2i4LyL4L2e4L204L2C4L2m4LyL4L2h4L284L2R4LyL4L2U4L2g4L2y4LyL4L2Q4L204L2Y4LyL4L2m4L6S4L6y4L2y4L2j4LyNIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo2OSBkcGtnLXNwbGl0L3NwbGl0LmM6MjM3CisjLCBjLWZvcm1hdAorbXNnaWQgImRvbmVcbiIKK21zZ3N0ciAi4L2g4L2W4L2R4LyL4L2a4L2i4LyLXG4iCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjg1CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGVzIGAlLjI1MHMnIGFuZCBgJS4yNTBzJyBhcmUgbm90IHBhcnRzIG9mIHRoZSBzYW1lIGZpbGUiCittc2dzdHIgIuC9oeC9suC9guC8i+C9puC+o+C9vOC9keC8iyBgJS4yNTBzJyDgvZHgvYTgvIsgYCUuMjUwcycg4L2a4L204LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2C4L2F4L2y4L2C4LyL4L2U4LyL4L2C4L2y4LyL4L2h4L2T4LyL4L2j4L2C4LyL4L2Y4L264L2T4LyNIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo5MAorIywgYy1mb3JtYXQKK21zZ2lkICJ0aGVyZSBhcmUgc2V2ZXJhbCB2ZXJzaW9ucyBvZiBwYXJ0ICVkIC0gYXQgbGVhc3QgYCUuMjUwcycgYW5kIGAlLjI1MHMnIgorbXNnc3RyICLgvaDgvZHgvbLgvIvgvZPgvYTgvIvgvaPgvbTgvIvgvaHgvZPgvIvgvaPgvYLgvIsgJWQg4L2C4L2y4LyL4L2Q4L284L2T4LyL4L2i4L2y4L2Y4LyL4L2j4L264LyL4L2k4LyL4L2F4L2y4L2C4LyL4L2g4L2R4L204L2C4LyLIC0g4L2J4L204L2E4LyL4L2Y4L2Q4L2g4LyLIGAlLjI1MHMnIOC9keC9hOC8iyBgJS4yNTBzJyIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6MTI4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhcnQgJWQgaXMgbWlzc2luZyIKK21zZ3N0ciAi4L2h4L2T4LyL4L2j4L2C4LyLICVkIOC9oOC9keC9suC8i+C9luC9ouC+s+C9guC8i+C9puC+n+C9vOC9ouC8i+C9nuC9tOC9guC9puC8i+C9k+C9tOC9giIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6NDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuIGAlcycgcGFja2FnZSBzcGxpdC9qb2luIHRvb2w7IHZlcnNpb24gJXMuXG4iCittc2dzdHIgIuC9jOC9suC8i+C9luC9suC8i+C9oeC9seC9k+C8iyBgJXMnIOC9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8i+C9luC9pOC9guC8iy/gvZjgvZDgvbTgvZHgvIvgvZPgvbLgvaDgvbLgvIvgvaPgvYLgvIvgvYbgvabgvI0g4L2Q4L284L2T4LyL4L2i4L2y4L2Y4LyLICVzLlxuIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo0OQorIywgYy1mb3JtYXQKK21zZ2lkICJDb3B5cmlnaHQgKEMpIDE5OTQtMTk5NiBJYW4gSmFja3Nvbi5cbiIKK21zZ3N0ciAi4L2g4L2R4L6yIOC9luC9pOC9tOC9puC8i+C9keC9luC9hOC8i+C9huC8iyAoQykg4Lyh4Lyp4Lyp4LykLeC8oeC8qeC8qeC8piDgvajgvbLgvIvgvaHgvZPgvIsg4L2H4L264L2A4LyL4L2k4L2T4LyNXG4iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjY3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1zfC0tc3BsaXQgPGZpbGU+IFs8cHJlZml4Pl0gICAgIFNwbGl0IGFuIGFyY2hpdmUuXG4iCisiICAtanwtLWpvaW4gPHBhcnQ+IDxwYXJ0PiAuLi4gICAgICBKb2luIHBhcnRzIHRvZ2V0aGVyLlxuIgorIiAgLUl8LS1pbmZvIDxwYXJ0PiAuLi4gICAgICAgICAgICAgRGlzcGxheSBpbmZvIGFib3V0IGEgcGFydC5cbiIKKyIgIC1hfC0tYXV0byAtbyA8Y29tcGxldGU+IDxwYXJ0PiAgIEF1dG8tYWNjdW11bGF0ZSBwYXJ0cy5cbiIKKyIgIC1sfC0tbGlzdHEgICAgICAgICAgICAgICAgICAgICAgIExpc3QgdW5tYXRjaGVkIHBpZWNlcy5cbiIKKyIgIC1kfC0tZGlzY2FyZCBbPGZpbGVuYW1lPiAuLi5dICAgIERpc2NhcmQgdW5tYXRjaGVkIHBpZWNlcy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIuC9luC9ouC+oeC8i+C9luC9gOC9vOC9keC8i+C9muC9tOC8izpcbiIKKyIgIC1zfC0t4L2W4L2k4L2C4LyLIDxmaWxlPiBbPHByZWZpeD5dICAgICDgvaHgvbLgvYLgvIvgvZjgvZvgvbzgvZHgvIvgvYXgvbLgvYLgvIvgvZbgvaTgvYJcbiIKKyIgIC1qfC0t4L2Y4L2Q4L204L2R4LyLIDxwYXJ0PiA8cGFydD4gLi4uICAgICAg4L2h4L2T4LyL4L2j4L2C4LyL4L2a4L204LyL4L2C4L2F4L2y4L2C4LyL4L2B4L2i4LyL4L2Y4L2Q4L204L2R4LyNXG4iCisiICAtSXwtLeC9luC9ouC+oeC8i+C9keC9vOC9k+C8iyA8cGFydD4gLi4uICAgICAgICAgICAgIOC9oeC9guC8i+C9o+C9guC8i+C9guC9suC8i+C9puC+kOC9vOC9ouC8i+C9o+C9puC8i+C9luC9ouC+oeC8i+C9keC9vOC9k+C8i+C9luC9gOC+suC9mOC8i+C9puC+n+C9vOC9k+C8i+C9oOC9luC9keC8jVxuIgorIiAgLWF8LS3gvaLgvYTgvIvgvZbgvZ7gvbLgvZPgvIsgLW8gPGNvbXBsZXRlPiA8cGFydD4gICDgvaLgvYTgvIvgvZbgvZ7gvbLgvZPgvIst4L2m4L6k4L204L2E4LyL4L2W4L2g4L2y4LyL4L2h4L2T4LyL4L2j4L2C4LyL4L2a4L204LyNXG4iCisiICAtbHwtLeC9kOC9vOC8i+C9oeC9suC9guC8i+C9gOC9suC9oOC9tOC8iyAgICAgICAgICAgICAgICAgICAgICAg4L2Q4L284LyL4L2h4L2y4L2C4LyL4L2Y4LyL4L2Y4L2Q4L204L2T4LyL4L2Y4L2y4LyL4L2i4L6p4L264L2R4LyL4L2G4L2m4LyNXG4iCisiICAtZHwtLeC9luC9j+C9vOC9k+C8i+C9luC9gOC9vOC9guC8iyBbPGZpbGVuYW1lPiAuLi5dICAgIOC9mOC8i+C9mOC9kOC9tOC9k+C8i+C9lOC9oOC9suC8i+C9ouC+qeC9uuC9keC8i+C9huC9puC8i+C9luC9j+C9vOC9k+C8i+C9luC9gOC9vOC9glxuIgorIlxuIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo4MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIk9wdGlvbnM6XG4iCisjfCAiICAtLWRlcG90ZGlyIDxkaXJlY3Rvcnk+ICAgICAgICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy8lcy5cbiIKKyN8ICIgIC1TfC0tcGFydHNpemUgPHNpemU+ICAgICAgICAgICAgIEluIEtpQiwgZm9yIC1zIChkZWZhdWx0IGlzIDQ1MCkuXG4iCisjfCAiICAtb3wtLW91dHB1dCA8ZmlsZT4gICAgICAgICAgICAgICBGb3IgLWogKGRlZmF1bHQgaXMgPHBhY2thZ2U+LTx2ZXJzaW9uPi4iCisjfCAiZGViKS5cbiIKKyN8ICIgIC1RfC0tbnBxdWlldCAgICAgICAgICAgICAgICAgICAgIEJlIHF1aWV0IHdoZW4gLWEgaXMgbm90IGEgcGFydC5cbiIKKyN8ICIgIC0tbXNkb3MgICAgICAgICAgICAgICAgICAgICAgICAgIEdlbmVyYXRlIDguMyBmaWxlbmFtZXMuXG4iCisjfCAiXG4iCisjfCAiRXhpdCBzdGF0dXM6IDAgPSBPSzsgIDEgPSAtYSBpcyBub3QgYSBwYXJ0OyAgMiA9IHRyb3VibGUhXG4iCittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWRlcG90ZGlyIDxkaXJlY3Rvcnk+ICAgICAgICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy8lcy5cbiIKKyIgIC1TfC0tcGFydHNpemUgPHNpemU+ICAgICAgICAgICAgIEluIEtpQiwgZm9yIC1zIChkZWZhdWx0IGlzIDQ1MCkuXG4iCisiICAtb3wtLW91dHB1dCA8ZmlsZT4gICAgICAgICAgICAgICBGaWxlbmFtZSwgZm9yIC1qIChkZWZhdWx0IGlzXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYWNrYWdlPl88dmVyc2lvbj5fPGFyY2g+LmRlYikuXG4iCisiICAtUXwtLW5wcXVpZXQgICAgICAgICAgICAgICAgICAgICBCZSBxdWlldCB3aGVuIC1hIGlzIG5vdCBhIHBhcnQuXG4iCisiICAtLW1zZG9zICAgICAgICAgICAgICAgICAgICAgICAgICBHZW5lcmF0ZSA4LjMgZmlsZW5hbWVzLlxuIgorIlxuIgorbXNnc3RyICIiCisi4L2C4L2R4L2Y4LyL4L2B4LyL4L2a4L204LyLOlxuIgorIiAgLS3gvZHgvbzgvabgvIvgvYHgvYTgvIvgvabgvqPgvbzgvZHgvIvgvZDgvbzgvIsgPGRpcmVjdG9yeT4gICAgICAgICAgICA8ZGlyZWN0b3J5PiDgvaDgvZHgvbLgvIsgJXMvJXMg4L2C4L2y4LyL4L2a4L2W4LyL4L2j4L204LyL4L2j4L2C4LyL4L2j4L264L2T4LyLIgorIuC9oOC9kOC9luC8jVxuIgorIiAgLVN8LS3gvaHgvZPgvIvgvaPgvYLgvIvgvZrgvZHgvIsgPHNpemU+ICAgICAgICAgICAgIEtpQiDgvZPgvYTgvIsgIC1zICjgvabgvpTgvbzgvZPgvIvgvabgvpLgvrLgvbLgvYLgvIvgvaDgvZHgvbLgvIsg4Lyk4Lyl4LygIOC9qOC9suC9k+C8iyngvYLgvbLgvIvgvZHgvbzgvZPgvIvgvaPgvbTgvIsuXG4iCisiICAtb3wtLeC9qOC9oOC9tOC9j+C9suC8i+C9lOC9tOC9iuC9suC8iyA8ZmlsZT4gICAgICAgICAgICAgICAtaiAo4L2m4L6U4L284L2T4LyL4L2m4L6S4L6y4L2y4L2C4LyL4L2g4L2R4L2y4LyLIDxwYWNrYWdlPi08dmVyc2lvbj4uZGViICIKKyLgvajgvbLgvZPgvIsp4L2C4L2y4LyL4L2R4L284L2T4LyL4L2j4L204LyNXG4iCisiICAtUXwtLeC9qOC9uuC9k+C8i+C9lOC9suC8i+C9gOC9vOC9oeC9suC9iuC9suC8iyAgICAgICAgICAgICAgICAgICAgIC3gvajgvbrgvIvgvaDgvZHgvbLgvIvgvaHgvZPgvIvgvaPgvYLgvIvgvZjgvbrgvZPgvIvgvZTgvaDgvbLgvIvgvabgvpDgvZbgvabgvIsg4L2B4L204LyL4L2m4L2y4L2Y4LyL4L2m4L2y4L2Y4LyL4L2m4L6m4L264LyL4L2m4L6h4L284L2R4LyNXG4iCisiICAtLeC9qOC9uuC9mOC8i+C9qOC9uuC9puC9suC8i+C9jOC9vOC9puC9suC8iyAgICAgICAgICAgICAgICAgICAgICAgICAg4LyoLuC8oyDgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIvgvZjgvbLgvYTgvIvgvZrgvbTgvIsg4L2W4L2f4L284LyL4L2W4L2P4L284L2T4LyL4L2g4L2W4L2R4LyNXG4iCisiXG4iCisi4L2V4L6x4L2y4L2i4LyL4L2Q4L284L2T4LyL4L2C4L2T4L2m4LyL4L2a4L2R4LyLOiDgvKAgPSDgvZbgvY/gvbTgvZbgvI0gIOC8oSA9IC3gvajgvbrgvIvgvaDgvZHgvbLgvIvgvaHgvZPgvIvgvaPgvYLgvIvgvYXgvbLgvYLgvIvgvZjgvbrgvZPgvI0gIOC8oiA9IOC9keC9gOC9oOC8i+C9hOC9oyFcbiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6OTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkV4aXQgc3RhdHVzOlxuIgorIiAgMCA9IG9rXG4iCisiICAxID0gd2l0aCAtLWF1dG8sIGZpbGUgaXMgbm90IGEgcGFydFxuIgorIiAgMiA9IHRyb3VibGVcbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMDMKK21zZ2lkICJUeXBlIGRwa2ctc3BsaXQgLS1oZWxwIGZvciBoZWxwLiIKK21zZ3N0ciAi4L2R4L2W4L6x4L264LyL4L2W4LyLIOC9jOC9suC8i+C9lOC9suC8i+C9gOC9uuC8i+C9h+C9suC8iy3gvZbgvaTgvYLgvIsgLS3gvYLgvrLgvbzgvYLgvabgvIvgvaLgvZjgvIvgvYLgvrHgvbLgvIvgvZHgvbzgvZPgvIvgvaPgvbTgvIvgvYLgvrLgvbzgvYLgvabgvIvgvaLgvZjgvI0iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjExNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBmaWxlIGluICUuMjUwcyIKK21zZ3N0ciAiJS4yNTBzIOC9k+C9hOC8i+C9o+C9tOC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9gOC+seC9suC8i+C9ouC9uuC8i+C9luC8i+C9mOC9uuC9keC8i+C9lOC9oOC9suC8i+C9mOC9h+C9tOC9giIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6MTI2Cittc2dpZCAicGFydCBzaXplIGlzIGZhciB0b28gbGFyZ2Ugb3IgaXMgbm90IHBvc2l0aXZlIgorbXNnc3RyICLgvaHgvZPgvIvgvaPgvYLgvIvgvZrgvZHgvIvgvaDgvZHgvbLgvIvgvabgvqPgvIvgvZjgvbrgvZHgvIvgvabgvIvgvZjgvbrgvZHgvIvgvaLgvbLgvYTgvIvgvZbgvIvgvaHgvYTgvIvgvaDgvZHgvbLgvIvgvaHgvbzgvZHgvIvgvYbgvIvgvZjgvbrgvZPgvIvgvZTgvabgvI0iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjEzMAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAicGFydCBzaXplIG11c3QgYmUgYXQgbGVhc3QgJWQgS2lCICh0byBhbGxvdyBmb3IgaGVhZGVyKSIKK21zZ3N0ciAi4L2h4L2T4LyL4L2j4L2C4LyL4L2a4L2R4LyL4L2g4L2R4L2y4LyL4L2J4L204L2E4LyL4L2Y4L2Q4L2g4LyLICVkayDgvajgvbLgvZPgvIvgvZHgvYLgvbzgvIso4L2Y4L2C4L284LyL4L2h4L2y4L2C4LyL4L2C4L2y4LyL4L2R4L284L2T4LyL4L2j4L204LyL4L2g4L2W4L2R4LyL4L2W4L2F4L204L2C4LyL4L2T4L2y4L2g4L2y4LyL4L2R4L284L2T4LyL4L2j4L2m4LyLKSIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjkwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIGRlcG90IGRpcmVjdG9yeSBgJS4yNTBzJyIKK21zZ3N0ciAi4L2R4L284L2m4LyL4L2B4L2E4LyL4L2m4L6j4L284L2R4LyL4L2Q4L284LyLIGAlLjI1MHMnIOC9o+C+t+C9guC8i+C9mOC8i+C9muC9tOC9guC9puC8jSIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjEzNAorbXNnaWQgIi0tYXV0byByZXF1aXJlcyB0aGUgdXNlIG9mIHRoZSAtLW91dHB1dCBvcHRpb24iCittc2dzdHIgIi0t4L2i4L2E4LyL4L2W4L2e4L2y4L2T4LyL4L2j4L204LyLLS3gvajgvaDgvbTgvYrgvbLgvIvgvZTgvbTgvYrgvbLgvIvgvYLgvZHgvZjgvIvgvaDgvZHgvbLgvIvgvYLgvbLgvIvgvaPgvYLgvIvgvaPgvbrgvZPgvIvgvaDgvZHgvbLgvIvgvZHgvYLgvbzgvZTgvIvgvajgvbLgvZPgvI0iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxMzYKK21zZ2lkICItLWF1dG8gcmVxdWlyZXMgZXhhY3RseSBvbmUgcGFydCBmaWxlIGFyZ3VtZW50IgorbXNnc3RyICItLeC9ouC9hOC8i+C9luC9nuC9suC9k+C8i+C9o+C9tOC8i+C9oeC9k+C8i+C9o+C9guC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9gOC+seC9suC8i+C9puC+kuC+suC9tOC9luC8i+C9ouC+n+C9guC9puC8i+C9guC9heC9suC9guC8i+C9j+C9guC8i+C9j+C9guC8i+C9keC9guC9vCIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE0MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuC9oeC9k+C8i+C9o+C9guC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8iyBgJS4yNTBzJyDgvaPgvrfgvYLgvIvgvZjgvIvgvZrgvbTgvYLgvabgvI0iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxNDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiRmlsZSBgJS4yNTBzJyBpcyBub3QgcGFydCBvZiBhIG11bHRpcGFydCBhcmNoaXZlLlxuIgorbXNnc3RyICLgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIsgYCUuMjUwcycg4L2g4L2R4L2y4LyL4L2m4L6j4LyL4L2Y4L2E4LyL4L2h4L2T4LyL4L2j4L2C4LyL4L2h4L2y4L2C4LyL4L2Y4L2b4L284L2R4LyL4L2A4L6x4L2y4LyL4L2h4L2T4LyL4L2j4L2C4LyL4L2Y4L264L2T4LyNXG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlb3BlbiBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuC9oeC9k+C8i+C9o+C9guC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8iyBgJS4yNTBzJyDgvaPgvbzgvYLgvIvgvYHgvIvgvZXgvrHgvbrgvIvgvZjgvIvgvZrgvbTgvYLgvabgvI0iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxODIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gbmV3IGRlcG90IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuC9keC9vOC9puC8i+C9geC9hOC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9guC9puC9ouC9lOC8iyBgJS4yNTBzJyDgvYHgvIvgvZXgvrHgvbrgvIvgvZjgvIvgvZrgvbTgvYLgvabgvI0iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxODQKK21zZ2lkICJleHRyYWN0aW5nIHNwbGl0IHBhcnQiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE5MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVuYW1lIG5ldyBkZXBvdCBmaWxlIGAlLjI1MHMnIHRvIGAlLjI1MHMnIgorbXNnc3RyICLgvZHgvbzgvabgvIvgvYHgvYTgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIvgvYLgvabgvaLgvZTgvIsgYCUuMjUwcycg4L2g4L2R4L2y4LyLIGAlLjI1MHMnIOC9o+C9tOC8i+C9luC9puC+kOC+seC9ouC8i+C9mOC9suC9hOC8i+C9luC9j+C9guC9puC8i+C9mOC8i+C9muC9tOC9guC9puC8jSIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE5NgorIywgYy1mb3JtYXQKK21zZ2lkICJQYXJ0ICVkIG9mIHBhY2thZ2UgJXMgZmlsZWQgKHN0aWxsIHdhbnQgIgorbXNnc3RyICLgvaHgvZPgvIvgvaPgvYLgvIsgJWQg4L2Q4L204L2Y4LyL4L2m4L6S4L6y4L2y4L2j4LyLICVzIOC9o+C9puC8i+C9luC9meC9tOC9guC9puC8i+C9oeC9vOC9keC9lOC8iyjgvZHgvIvgvaPgvp/gvbzgvIvgvaHgvYTgvIvgvZHgvYLgvbzgvIvgvZPgvbLgvIsiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyMDAKK21zZ2lkICIgYW5kICIKK21zZ3N0ciAi4L2R4L2E4LyLIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjE0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkZWxldGUgdXNlZC11cCBkZXBvdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLgvaPgvYLgvIvgvaPgvbrgvZPgvIvgvaDgvZDgvZbgvIvgvaHgvbzgvZHgvIvgvZTgvaDgvbLgvIvgvZHgvbzgvabgvIvgvYHgvYTgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIsgYCUuMjUwcycg4L2W4L2P4L284L2T4LyL4L2C4L2P4L2E4LyL4L2Y4LyL4L2a4L204L2C4L2m4LyNIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjM1Cittc2dpZCAiSnVuayBmaWxlcyBsZWZ0IGFyb3VuZCBpbiB0aGUgZGVwb3QgZGlyZWN0b3J5OlxuIgorbXNnc3RyICLgvZHgvbzgvabgvIvgvYHgvYTgvIvgvabgvqPgvbzgvZHgvIvgvZDgvbzgvIvgvZPgvYTgvIvgvYLgvbLgvIvgvZjgvZDgvaDgvIvgvaDgvYHgvbzgvaLgvIvgvaPgvbTgvIvgvZbgvZ7gvYLgvIvgvZjgvbLgvIvgvZjgvYHgvbzgvIvgvZjgvbrgvZHgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIvgvZrgvbTgvIs6XG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNDAgZHBrZy1zcGxpdC9xdWV1ZS5jOjI2OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBgJS4yNTBzJyIKK21zZ3N0ciAiYCUuMjUwcycg4L2m4L2y4LyL4L2K4L264L2K4L2y4LyL4L2g4L2W4L2R4LyL4L2Y4LyL4L2a4L204L2C4L2m4LyNIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjQzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIgJXMgKCVsdSBieXRlcylcbiIKK21zZ2lkICIgJXMgKCVqZCBieXRlcylcbiIKK21zZ3N0ciAiICVzICglbHUg4L2W4LyL4L2g4L2y4L2K4L2y4L2m4L2y4LyNKVxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAlcyAobm90IGEgcGxhaW4gZmlsZSlcbiIKK21zZ3N0ciAiICVzICjgvYngvYLgvIvgvaLgvpDgvrHgvYTgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIvgvYXgvbLgvYLgvIvgvZjgvbrgvZPgvIspXG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNTAKK21zZ2lkICJQYWNrYWdlcyBub3QgeWV0IHJlYXNzZW1ibGVkOlxuIgorbXNnc3RyICLgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIvgvZrgvbTgvIvgvZHgvIvgvZrgvbTgvZPgvIvgvaPgvbzgvYLgvIvgvZjgvIvgvaDgvZvgvbzgvZjgvabgvIvgvZTgvaY6XG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIFBhY2thZ2UgJXM6IHBhcnQocykgIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFydCBmaWxlIGAlLjI1MHMnIGlzIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgIuC9oeC9k+C8i+C9o+C9guC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8iyBgJS4yNTBzJyDgvaDgvZHgvbLgvIvgvYngvYLgvIvgvaLgvpDgvrHgvYTgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIvgvYXgvbLgvYLgvIvgvZjgvbrgvZPgvI0iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNzgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIih0b3RhbCAlbHUgYnl0ZXMpXG4iCittc2dpZCAiKHRvdGFsICVqZCBieXRlcylcbiIKK21zZ3N0ciAiKCAlbHUg4L2W4L2g4L2y4L2K4L2y4L2m4L2y4LyL4L2W4L2m4L6h4L284L2Y4L2m4LyLKVxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MzA0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkaXNjYXJkIGAlLjI1MHMnIgorbXNnc3RyICJgJS4yNTBzJyDgvZbgvY/gvbzgvZPgvIvgvZbgvYDgvbzgvYLgvIvgvZjgvIvgvZrgvbTgvYLgvabgvI0iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzozMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGVsZXRlZCAlcy5cbiIKK21zZ3N0ciAiJXMg4L2W4L2P4L284L2T4LyL4L2C4L2P4L2E4LyL4L2h4L284L2R4L2U4LyNXG4iCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzo3MCBkcGtnLXNwbGl0L3NwbGl0LmM6NzYgZHBrZy1zcGxpdC9zcGxpdC5jOjgxCittc2dpZCAicGFja2FnZSBmaWVsZCB2YWx1ZSBleHRyYWN0aW9uIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxMzEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gc291cmNlIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuC9oOC9luC+seC9tOC9hOC8i+C9geC9tOC9hOC9puC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8iyBgJS4yNTBzJyDgvYHgvIvgvZXgvrHgvbrgvIvgvZjgvIvgvZrgvbTgvYLgvabgvI0iCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxMzMKK21zZ2lkICJ1bmFibGUgdG8gZnN0YXQgc291cmNlIGZpbGUiCittc2dzdHIgIuC9oOC9luC+seC9tOC9hOC8i+C9geC9tOC9hOC9puC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8iyDgvajgvbrgvZXgvIvgvabgvbLgvIvgvYrgvbrgvYrgvbLgvIvgvaDgvZbgvZHgvIvgvZjgvIvgvZrgvbTgvYLgvabgvI0iCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxMzUKKyMsIGMtZm9ybWF0Cittc2dpZCAic291cmNlIGZpbGUgYCUuMjUwcycgbm90IGEgcGxhaW4gZmlsZSIKK21zZ3N0ciAi4L2g4L2W4L6x4L204L2E4LyL4L2B4L204L2E4L2m4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyLIGAlLjI1MHMnIOC9oOC9keC9suC8i+C9ieC9guC8i+C9ouC+kOC+seC9hOC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9heC9suC9guC8i+C9mOC9uuC9k+C8jSIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjE1MworIywgYy1mb3JtYXQKK21zZ2lkICJTcGxpdHRpbmcgcGFja2FnZSAlcyBpbnRvICVkIHBhcnQ6ICIKK21zZ2lkX3BsdXJhbCAiU3BsaXR0aW5nIHBhY2thZ2UgJXMgaW50byAlZCBwYXJ0czogIgorbXNnc3RyWzBdICIiCittc2dzdHJbMV0gIiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjE5MworbXNnaWQgIiIKKyJIZWFkZXIgaXMgdG9vIGxvbmcsIG1ha2luZyBwYXJ0IHRvbyBsb25nLiBZb3VyIHBhY2thZ2UgbmFtZSBvciB2ZXJzaW9uXG4iCisibnVtYmVycyBtdXN0IGJlIGV4dHJhb3JkaW5hcmlseSBsb25nLCBvciBzb21ldGhpbmcuIEdpdmluZyB1cC5cbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MjQ5Cittc2dpZCAiLS1zcGxpdCBuZWVkcyBhIHNvdXJjZSBmaWxlbmFtZSBhcmd1bWVudCIKK21zZ3N0ciAiLS3gvZbgvaTgvYLgvIvgvZPgvbLgvIvgvaPgvbTgvIsg4L2g4L2W4L6x4L204L2E4LyL4L2B4L204L2E4L2m4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2Y4L2y4L2E4LyL4L2C4L2y4LyL4L2m4L6S4L6y4L204L2W4LyL4L2i4L6f4L2C4L2m4LyL4L2F4L2y4L2C4LyL4L2R4L2C4L284L2U4LyL4L2o4L2y4L2T4LyNIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MjUyCittc2dpZCAiLS1zcGxpdCB0YWtlcyBhdCBtb3N0IGEgc291cmNlIGZpbGVuYW1lIGFuZCBkZXN0aW5hdGlvbiBwcmVmaXgiCittc2dzdHIgIi0t4L2W4L2k4L2C4LyL4L2T4L2y4LyL4L2g4L2R4L2y4LyL4L2C4L2y4L2m4LyLIOC9oOC9luC+seC9tOC9hOC8i+C9geC9tOC9hOC9puC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9mOC9suC9hOC8i+C9keC9hOC8i+C9oOC9guC+suC9vOC8i+C9oeC9tOC9o+C8i+C9puC+lOC9vOC9k+C8i+C9muC9suC9guC8i+C9mOC9hOC8i+C9pOC9vOC9puC8i+C9oOC9luC9guC9lOC8i+C9qOC9suC9k+C8jSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjg0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiXG4iCisjfCAiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorI3wgIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uIgorbXNnaWQgIiIKKyJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLTIwMDIgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDktMjAxMCBSYXBoYWVsIEhlcnR6b2cuXG4iCittc2dzdHIgIiIKKyJcbiIKKyLgvaDgvZHgvrLgvIvgvZbgvaTgvbTgvabgvIvgvZHgvZbgvYTgvIvgvYbgvIsgKEMpIOC8oeC8qeC8qeC8pSDgvajgvbLgvIvgvaHgvZPgvIsg4L2H4L264L2A4LyL4L2k4L2T4LyNXG4iCisi4L2g4L2R4L6y4LyL4L2W4L2k4L204L2m4LyL4L2R4L2W4L2E4LyL4L2G4LyLIChDKSDgvKLgvKDgvKDgvKAg4Lyi4Lyg4Lyg4LyhIOC9neC9suC8i+C9heC9ouC9iuC9suC8iyDgvajgvYDgvIvgvYDgvaLgvIvgvZjgvbHgvZPgvI0iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMDEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC0taW5zdGFsbCA8bGluaz4gPG5hbWU+IDxwYXRoPiA8cHJpb3JpdHk+XG4iCisiICAgIFstLXNsYXZlIDxsaW5rPiA8bmFtZT4gPHBhdGg+XSAuLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBhZGQgYSBncm91cCBvZiBhbHRlcm5hdGl2ZXMgdG8gdGhlIHN5c3RlbS5cbiIKKyIgIC0tcmVtb3ZlIDxuYW1lPiA8cGF0aD4gICByZW1vdmUgPHBhdGg+IGZyb20gdGhlIDxuYW1lPiBncm91cCBhbHRlcm5hdGl2ZS5cbiIKKyIgIC0tcmVtb3ZlLWFsbCA8bmFtZT4gICAgICByZW1vdmUgPG5hbWU+IGdyb3VwIGZyb20gdGhlIGFsdGVybmF0aXZlcyAiCisic3lzdGVtLlxuIgorIiAgLS1hdXRvIDxuYW1lPiAgICAgICAgICAgIHN3aXRjaCB0aGUgbWFzdGVyIGxpbmsgPG5hbWU+IHRvIGF1dG9tYXRpYyBtb2RlLlxuIgorIiAgLS1kaXNwbGF5IDxuYW1lPiAgICAgICAgIGRpc3BsYXkgaW5mb3JtYXRpb24gYWJvdXQgdGhlIDxuYW1lPiBncm91cC5cbiIKKyIgIC0tcXVlcnkgPG5hbWU+ICAgICAgICAgICBtYWNoaW5lIHBhcnNlYWJsZSB2ZXJzaW9uIG9mIC0tZGlzcGxheSA8bmFtZT4uXG4iCisiICAtLWxpc3QgPG5hbWU+ICAgICAgICAgICAgZGlzcGxheSBhbGwgdGFyZ2V0cyBvZiB0aGUgPG5hbWU+IGdyb3VwLlxuIgorIiAgLS1nZXQtc2VsZWN0aW9ucyAgICAgICAgIGxpc3QgbWFzdGVyIGFsdGVybmF0aXZlIG5hbWVzIGFuZCB0aGVpciBzdGF0dXMuXG4iCisiICAtLXNldC1zZWxlY3Rpb25zICAgICAgICAgcmVhZCBhbHRlcm5hdGl2ZSBzdGF0dXMgZnJvbSBzdGFuZGFyZCBpbnB1dC5cbiIKKyIgIC0tY29uZmlnIDxuYW1lPiAgICAgICAgICBzaG93IGFsdGVybmF0aXZlcyBmb3IgdGhlIDxuYW1lPiBncm91cCBhbmQgYXNrICIKKyJ0aGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2VyIHRvIHNlbGVjdCB3aGljaCBvbmUgdG8gdXNlLlxuIgorIiAgLS1zZXQgPG5hbWU+IDxwYXRoPiAgICAgIHNldCA8cGF0aD4gYXMgYWx0ZXJuYXRpdmUgZm9yIDxuYW1lPi5cbiIKKyIgIC0tYWxsICAgICAgICAgICAgICAgICAgICBjYWxsIC0tY29uZmlnIG9uIGFsbCBhbHRlcm5hdGl2ZXMuXG4iCisiXG4iCittc2dzdHIgIiIKKyLgvaPgvYLgvIvgvaPgvbrgvZPgvIs6ICVzIFs8b3B0aW9uPiAuLi5dIDxjb21tYW5kPlxuIgorIlxuIgorIuC9luC9ouC+oeC8i+C9luC9gOC9vOC9keC8i+C9muC9tOC8izpcbiIKKyIgIC0taW5zdGFsbCA8bGluaz4gPG5hbWU+IDxwYXRoPiA8cHJpb3JpdHk+XG4iCisiICAgIFstLXNsYXZlIDxsaW5rPiA8bmFtZT4gPHBhdGg+XSAuLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICDgvaLgvbLgvZjgvIvgvaPgvbTgvYLgvabgvIvgvaPgvbTgvIvgvabgvqTgvbrgvaPgvIvgvZjgvIvgvZrgvbTgvaDgvbLgvIvgvabgvqHgvbrgvIvgvZrgvZPgvIvgvYXgvbLgvYLgvIvgvYHgvIvgvabgvpDgvbzgvYTgvIvgvaLgvpDgvrHgvZbgvabgvI1cbiIKKyIgIC0tcmVtb3ZlIDxuYW1lPiA8cGF0aD7gvaLgvqngvIvgvZbgvabgvpDgvrLgvZHgvIvgvYLgvY/gvYTgvIsgPHBhdGg+IOC9oOC9keC9suC8i+C9k+C9hOC8i+C9o+C9piA8bmFtZT4g4L2m4L6h4L264LyL4L2a4L2T4LyL4L2m4L6k4L264L2j4LyL4L2Y4LyL4L2g4L2R4L2y4LyL4L2j4L2m4LyL4L2i4L6p4LyLIgorIuC9luC9puC+kOC+suC9keC8i+C9guC9j+C9hOC8i+C8jVxuIgorIiAgLS1yZW1vdmUgPG5hbWU+ICAgIOC9ouC+qeC8i+C9luC9puC+kOC+suC9keC8i+C9guC9j+C9hCA8bmFtZT4g4L2m4L6h4L264LyL4L2a4L2T4LyL4L2g4L2R4L2y4LyLICDgvabgvqTgvbrgvaPgvIvgvZjgvIvgvZrgvbTgvaDgvbLgvIvgvaLgvbLgvZjgvIvgvaPgvbTgvYLgvabgvIvgvaPgvabgvIvgvaLgvqngvIvgvZbgvabgvpDgvrLgvZHgvIsiCisi4L2C4L2P4L2E4LyL4LyNXG4iCisiICAtLWF1dG8gPG5hbWU+ICAgICAgICAgICAg4L2g4L2W4L6y4L264L2j4LyL4L2j4L2Y4LyL4L2o4L2Y4LyLIDxuYW1lPiDgvaDgvZHgvbLgvIsg4L2i4L2E4LyL4L2W4L2e4L2y4L2T4LyL4L2C4L6x4L2y4LyL4L2Q4L2W4L2m4LyL4L2j4L2Y4LyL4L2j4L204LyL4L2m4L284L2i4LyL4L2W4L2m4L6S4L6x4L204L2i4LyLIgorIuC9oOC9luC9keC8jVxuIgorIiAgLS1kaXNwbGF5IDxuYW1lPiAgICAgICAgICA8bmFtZT4g4L2m4L6h4L264LyL4L2a4L2T4LyL4L2C4L6x4L2y4LyL4L2m4L6Q4L284L2i4LyL4L2j4L2m4LyL4L2W4L2i4L6h4LyL4L2R4L284L2T4LyL4L2W4L2A4L6y4L2Y4LyL4L2m4L6f4L284L2T4LyL4L2g4L2W4L2R4LyNXG4iCisiLS1saXN0IDxuYW1lPiAgICAgICAgICAgICA8bmFtZT4g4L2m4L6h4L264LyL4L2a4L2T4LyL4L2C4L6x4L2y4LyL4L2R4L2Y4L2y4L2C4L2m4LyL4L2C4L2P4L2R4LyL4L2C4L264LyL4L2i4LyL4L2i4L6p4LyL4L2W4L2m4L6Q4L6y4L2R4LyL4L2C4L2P4L2E4LyL4LyNXG4iCisiICAtLWNvbmZpZyA8bmFtZT4gICAgICAgICAgPG5hbWU+IOC9puC+oeC9uuC8i+C9muC9k+C8i+C9guC+seC9suC8i+C9keC9vOC9k+C8i+C9o+C9tOC8i+C9puC+pOC9uuC9o+C8i+C9mOC8i+C9muC9tOC8i+C9puC+n+C9vOC9k+C8iyDgvZHgvbrgvIvgvaPgvabgvItcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICDgvaPgvYLgvIvgvaPgvbrgvZPgvIvgvZTgvIvgvaPgvbTgvIvgvYLgvIvgvaDgvZHgvbLgvIvgvaPgvYLgvIvgvaPgvbrgvZPgvIvgvaDgvZDgvZbgvIvgvZPgvbLgvIvgvajgvbLgvZPgvIvgvZPgvIvgvabgvbrgvaPgvIvgvaDgvZDgvbTgvIvgvaDgvZbgvZHgvIvgvZ/gvbrgvaLgvIvgvabgvrPgvZbgvI1cbiIKKyIgIC0tc2V0IDxuYW1lPiA8cGF0aD4gICAgICAgPHBhdGg+IOC9oOC9keC9suC8iyDgvabgvqTgvbrgvaPgvIvgvZjgvIvgvabgvqbgvbrgvIsgPG5hbWU+IOC9guC9suC8i+C9keC9vOC9k+C8i+C9o+C9tOC8i+C9guC9nuC9suC8i+C9puC+kuC+suC9suC9guC8i+C9oOC9luC9keC8jVxuIgorIiAgLS1hbGwgICAgICAgICAgICAgICAgICAgICAtLWNvbmZpZyDgvaDgvZHgvbLgvIvgvabgvqTgvbrgvaPgvIvgvZjgvIvgvZrgvbTgvIvgvaPgvbTgvIvgvZbgvbzgvZHgvIvgvZbgvaLgvqHgvIvgvaDgvZbgvZHgvI1cbiIKKyJcbiIKKyI8bGluaz4gaXMgdGhlIHN5bWxpbmsgcG9pbnRpbmcgdG8gJXMvPG5hbWU+LlxuIgorIjxuYW1lPiDgvaDgvZHgvbLgvIsgL+C9o+C8i+C9puC9vOC9guC9puC8i+C9lOC8iy/gvabgvqTgvbrgvaPgvIvgvZjgvIvgvZrgvbTgvIvgvZPgvYTgvIvgvYLgvbLgvIvgvZjgvbLgvYTgvIvgvaDgvZHgvbLgvIvgvajgvbLgvZPgvI1cbiIKKyI8cGF0aD4g4L2g4L2R4L2y4LyLIOC9guC9nuC9suC8i+C9luC9puC+n+C9tOC9k+C8i+C9oOC9luC9keC8i+C9oeC9vOC9keC8i+C9lOC9oOC9suC8i+C9mOC9suC9hOC8i+C9oOC9keC9suC8i+C9qOC9suC9k+C8jVxuIgorIjxsaW5rPiDgvaDgvZHgvbLgvIsg4L2g4L2W4L6y4L264L2j4LyL4L2j4L2Y4LyLICAv4L2j4LyL4L2m4L284L2C4L2m4LyL4L2U4LyLL+C9puC+pOC9uuC9o+C8i+C9mOC8i+C9muC9tOC8iy88bmFtZT4g4L2j4L204LyL4L2R4L2U4L2C4LyL4L2Y4L2y4LyL4L2g4L2R4L2y4LyL4L2o4L2y4L2T4LyNXG4iCisiPHByaW9yaXR5PiDgvaDgvZHgvbLgvIvgvafgvrLgvbLgvaPgvIvgvajgvYTgvIvgvYXgvbLgvYLgvIvgvajgvbLgvZPgvI0g4L2o4L2E4LyL4L2C4L6y4L2E4L2m4LyL4L2Y4L2Q4L284LyL4L2k4L284L2m4LyL4L2R4L2E4LyL4L2F4L2y4L2C4LyL4L2B4L2i4LyL4L2g4L2W4L2R4LyL4L2Y4L2y4LyL4L2C4L2R4L2Y4LyL4L2B4LyL4L2a4L204LyL4L2C4L2R4L2Y4LyL4L2B4LyL4L2i4L6Q4L6x4L2W4L2m4LyLIgorIuC9qOC9suC9k+C8jVxuIgorIlxuIgorIuC9guC9keC9mOC8i+C9geC8izpcbiIKKyIgIC0t4L2C4L2R4L2Y4LyL4L2j4L6h4L264LyL4L2m4L6j4L284L2R4LyL4L2Q4L284LyLIDxkaXJlY3Rvcnk+ICAgICDgvabgvqTgvbrgvaPgvIvgvZjgvaDgvbLgvIvgvabgvqPgvbzgvZHgvIvgvZDgvbzgvIvgvaDgvZHgvbLgvIvgvZbgvabgvpLgvrHgvbTgvaLgvIvgvZbgvYXgvbzgvabgvIvgvaDgvZbgvZHgvI1cbiIKKyIgIC0t4L2W4L2R4L2C4LyL4L2m4L6Q4L6x4L284L2E4LyL4L2m4L6j4L284L2R4LyL4L2Q4L284LyLIDxkaXJlY3Rvcnk+ICAg4L2W4L2R4L2C4LyL4L2m4L6Q4L6x4L284L2E4LyL4L2m4L6j4L284L2R4LyL4L2Q4L284LyL4L2g4L2R4L2y4LyL4L2W4L2m4L6S4L6x4L204L2i4LyL4L2W4L2F4L284L2m4LyL4L2g4L2W4L2R4LyNXG4iCisiICAtLeC9luC9ouC+n+C9guC8i+C9nuC9suC9liAgICAgICAgICAgICAgICAgIOC9guC8i+C9heC9suC8i+C9oeC9hOC8i+C9mOC8i+C9oOC9luC9keC8iyAg4L2R4L2E4L284L2m4LyL4L2m4L204LyL4L2i4L6Q4L6x4L2E4L2Y4LyL4L2F4L2y4L2C4LyL4L2m4L6f4L284L2T4LyNXG4iCisiICAtLeC9muC9suC9guC8i+C9mOC9hOC8iyAgICAgICAgICAgICAgICDgvZrgvbLgvYLgvIvgvZjgvYTgvIvgvZbgvYDgvbzgvaPgvIvgvabgvqTgvrHgvbzgvZHgvIsgIOC9qOC9oOC9tOC9iuC9suC8i+C9lOC9tOC9iuC9suC8i+C9p+C9uuC9hOC8i+C9luC9gOC9o+C8jVxuIgorIiAgLS3gvYHgvbTgvIvgvabgvbLgvZjgvIvgvabgvbLgvZggICAgICAgICAgICAgICDgvZbgvYDgvbzgvaPgvIvgvabgvqTgvrHgvbzgvZHgvIvgvZTgvIvgvYHgvbTgvIvgvabgvbLgvZjgvIvgvabgvbLgvZjgvIsgIOC9qOC9oOC9tOC9iuC9suC8i+C9lOC9tOC9iuC9suC8i+C9huC9tOC9hOC8i+C9gOC9tOC8jVxuIgorIiAgLS3gvYLgvrLgvbzgvYLgvabgvIvgvaLgvZggICAgICAgICAgICAgICAgICDgvaDgvIvgvZPgvbLgvIvgvYLgvrLgvbzgvYLgvabgvIvgvaLgvZjgvIvgvaDgvZXgvrLgvbLgvZPgvIvgvZHgvbzgvZPgvIvgvaDgvZHgvbLgvIvgvabgvp/gvbzgvZPgvI1cbiIKKyIgIC0t4L2Q4L284L2T4LyL4L2i4L2y4L2Y4LyLICAgICAgICAgICAgICAgIOC9kOC9vOC9k+C8i+C9ouC9suC9mOC8i+C9oOC9keC9suC8i+C9puC+n+C9vOC9k+C8jVxuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyI8bGluaz4gaXMgdGhlIHN5bWxpbmsgcG9pbnRpbmcgdG8gJXMvPG5hbWU+LlxuIgorIiAgKGUuZy4gL3Vzci9iaW4vcGFnZXIpXG4iCisiPG5hbWU+IGlzIHRoZSBtYXN0ZXIgbmFtZSBmb3IgdGhpcyBsaW5rIGdyb3VwLlxuIgorIiAgKGUuZy4gcGFnZXIpXG4iCisiPHBhdGg+IGlzIHRoZSBsb2NhdGlvbiBvZiBvbmUgb2YgdGhlIGFsdGVybmF0aXZlIHRhcmdldCBmaWxlcy5cbiIKKyIgIChlLmcuIC91c3IvYmluL2xlc3MpXG4iCisiPHByaW9yaXR5PiBpcyBhbiBpbnRlZ2VyOyBvcHRpb25zIHdpdGggaGlnaGVyIG51bWJlcnMgaGF2ZSBoaWdoZXIgcHJpb3JpdHkgIgorImluXG4iCisiICBhdXRvbWF0aWMgbW9kZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTMxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWx0ZGlyIDxkaXJlY3Rvcnk+ICAgICBjaGFuZ2UgdGhlIGFsdGVybmF0aXZlcyBkaXJlY3RvcnkuXG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgY2hhbmdlIHRoZSBhZG1pbmlzdHJhdGl2ZSBkaXJlY3RvcnkuXG4iCisiICAtLWxvZyA8ZmlsZT4gICAgICAgICAgICAgY2hhbmdlIHRoZSBsb2cgZmlsZS5cbiIKKyIgIC0tZm9yY2UgICAgICAgICAgICAgICAgICBhbGxvdyByZXBsYWNpbmcgZmlsZXMgd2l0aCBhbHRlcm5hdGl2ZSBsaW5rcy5cbiIKKyIgIC0tc2tpcC1hdXRvICAgICAgICAgICAgICBza2lwIHByb21wdCBmb3IgYWx0ZXJuYXRpdmVzIGNvcnJlY3RseSAiCisiY29uZmlndXJlZFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGluIGF1dG9tYXRpYyBtb2RlIChyZWxldmFudCBmb3IgLS1jb25maWcgb25seSlcbiIKKyIgIC0tdmVyYm9zZSAgICAgICAgICAgICAgICB2ZXJib3NlIG9wZXJhdGlvbiwgbW9yZSBvdXRwdXQuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgcXVpZXQgb3BlcmF0aW9uLCBtaW5pbWFsIG91dHB1dC5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCittc2dzdHIgIiIKKyLgvaPgvYLgvIvgvaPgvbrgvZPgvIs6IDogJXMgWzxvcHRpb24+IC4uLl0gPGNvbW1hbmQ+XG4iCisiXG4iCisi4L2W4L2i4L6h4LyL4L2W4L2A4L284L2R4LyL4L2a4L204LyLOlxuIgorIiAgLS0gPG93bmVyPiA8Z3JvdXA+IDxtb2RlPiA8ZmlsZT5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICDgvYLgvZPgvZHgvIvgvabgvqHgvbTgvZHgvIvgvYLgvZ7gvbLgvIvgvaLgvp/gvbrgvZPgvIvgvZPgvYTgvIvgvaPgvbTgvIvgvZDgvbzgvIvgvZbgvYDgvbzgvZHgvIvgvYLgvabgvaLgvZTgvIvgvYXgvbLgvYLgvIvgvYHgvIvgvabgvpDgvbzgvYTgvIvgvaLgvpDgvrHgvZbgvabgvI1cbiIKKyIgIC0t4L2i4L6p4LyL4L2W4L2m4L6Q4L6y4L2R4LyL4L2C4L2P4L2E4LyLIDxmaWxlPiAgICAgICAgICDgvYLgvZPgvZHgvIvgvabgvqHgvbTgvZHgvIvgvYLgvZ7gvbLgvIvgvaLgvp/gvbrgvZPgvIvgvaPgvabgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIvgvaLgvqkg4L2W4L2m4L6Q4L6y4L2R4LyL4L2C4L2P4L2E4LyL4LyNXG4iCisiICAtLeC9kOC9vOC8i+C9oeC9suC9guC8iyBbPGdsb2ItcGF0dGVybj5dICDgvYLgvZPgvZHgvIvgvabgvqHgvbTgvZHgvIvgvYLgvZ7gvbLgvIvgvaLgvp/gvbrgvZPgvIvgvZHgvbrgvIvgvZPgvYTgvIvgvZHgvIvgvaPgvp/gvbzgvaDgvbLgvIvgvZDgvbzgvIvgvaHgvbLgvYLgvIvgvYLgvbLgvabgvIvgvZ/gvbTgvaLgvIvgvZbgvZ7gvYLgvIvgvaDgvZbgvZHgvZ3gvIvgvajgvbLgvZPgvI1cbiIKKyJcbiIKKyLgvYLgvZHgvZjgvIvgvYHgvIvgvZrgvbQ6XG4iCisiICAtLeC9luC9keC9guC8i+C9puC+kOC+seC9vOC9hOC8i+C9puC+o+C9vOC9keC8i+C9kOC9vOC8iyA8ZGlyZWN0b3J5PiAgIOC9puC9suC8i+C9iuC9uuC9iuC9suC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9keC9hOC8i+C9heC9suC9guC8i+C9geC9ouC8i+C9puC+o+C9vOC9keC8i+C9kOC9vOC8i+C9guC9nuC9suC8i+C9puC+kuC+suC9suC9guC8i+C9oOC9luC9keC8jVxuIgorIiAgLS3gvZHgvbTgvabgvIvgvZjgvZDgvbTgvZPgvIvgvZbgvZ/gvbzgvIvgvZPgvbLgvIsgICAgICAgICAgICAgICDgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIvgvYLgvZPgvYTgvIvgvZbgvIvgvZrgvbTgvIvgvZHgvbrgvIvgvaDgvZXgvrLgvaPgvIvgvaPgvabgvIvgvZHgvbTgvabgvIvgvZjgvZDgvbTgvZPgvIvgvZbgvZ/gvbzgvI1cbiIKKyIgIC0t4L2W4L2E4LyL4L2W4L2Z4L284L2E4LyL4L2T4L2y4LyLICAgICAgICAgICAgICAgICAg4L2R4L6y4L2T4LyL4L2k4L264L2m4LyL4L2A4L6x4L2y4LyL4L2e4L2y4L2W4LyL4L2R4L2U4L6x4L2R4LyL4L2g4L2Q4L204L2m4LyL4L2k4L284L2i4LyL4L2W4L6x4L204L2E4LyL4L2i4L204L2E4LyL4L2h4L2E4LyLIOC9luC+seC8i+C9luC8i+C9guC9heC9suC9guC8i+C9luC9hOC8iyIKKyLgvZbgvZngvbzgvYTgvIvgvI1cbiIKKyIgIC0t4L2B4L204LyL4L2m4L2y4L2Y4LyL4L2m4L2y4L2Y4LyLICAgICAgICAgICAgICAgICAg4L2W4L2A4L284L2j4LyL4L2m4L6k4L6x4L284L2R4LyL4L2U4LyL4L2B4L204LyL4L2m4L2y4L2Y4LyL4L2m4L2y4L2Y4LyNIOC9qOC9oOC9tOC9iuC9suC8i+C9lOC9tOC9iuC9suC8i+C9huC9tOC9hOC8i+C9gOC9tOC8jVxuIgorIiAgLS3gvYLgvrLgvbzgvYLgvabgvIvgvaLgvZjgvIsgICAgICAgICAgICAgICAgICAg4L2g4LyL4L2T4L2y4LyL4L2C4L6y4L284L2C4L2m4LyL4L2i4L2Y4LyL4L2g4L2V4L6y4L2y4L2T4LyL4L2R4L284L2T4LyL4L2g4L2R4L2y4LyL4L2m4L6f4L284L2T4LyNXG4iCisiICAtLeC9kOC9vOC9k+C8i+C9ouC9suC9mOC8iyAgICAgICAgICAgICAgICDgvZDgvbzgvZPgvIvgvaLgvbLgvZjgvIvgvaDgvZHgvbLgvIvgvabgvp/gvbzgvZPgvI1cbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTYzCisjLCBmdXp6eQorI3wgbXNnaWQgInBhcnNlIGVycm9yIgorbXNnaWQgImVycm9yIgorbXNnc3RyICLgvZjgvbLgvYTgvIvgvZHgvZTgvrHgvZHgvIvgvaDgvZbgvZHgvIvgvZPgvbLgvaDgvbLgvIvgvaDgvZvgvbzgvaPgvIvgvZbgvI0iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxOTMKK21zZ2lkICJ3YXJuaW5nIgorbXNnc3RyICLgvYngvbrgvZPgvIvgvZbgvaLgvqHgvI0iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzozNTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInR3byBjb21tYW5kcyBzcGVjaWZpZWQ6ICVzIGFuZCAtLSVzIgorbXNnaWQgInR3byBjb21tYW5kcyBzcGVjaWZpZWQ6IC0tJXMgYW5kIC0tJXMiCittc2dzdHIgIuC9luC9ouC+oeC8i+C9luC9gOC9vOC9keC8i+C9guC9ieC9suC9puC8i+C9guC9puC9o+C8i+C9luC9gOC9vOC9keC8i+C9oOC9luC9keC8i+C9oeC9vOC9keC9lDogJXMg4L2R4L2E4LyLIC0tJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzozODcKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiVzOiBjYW4ndCBvcGVuICVzOiAlcyIKK21zZ2lkICJjYW5ub3QgYXBwZW5kIHRvICclcyciCittc2dzdHIgIiVzOiAlcyDgvYHgvIvgvZXgvrHgvbrgvIvgvZjgvbLgvIvgvZrgvbTgvYLgvabgvIs6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NTU2CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlICVzOiAlcyIKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlICclcyciCittc2dzdHIgIiVzIOC9ouC+qeC8i+C9luC9puC+kOC+suC9keC8i+C9guC9j+C9hOC8i+C9mOC8i+C9muC9tOC9guC9pjogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTExCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBmaWxlIHdoaWxlIHRyeWluZyB0byByZWFkICVzIgorbXNnc3RyICIlLjI1NXMg4L2T4L2E4LyL4L2C4L2y4LyLICVzIOC9k+C9hOC8i+C9o+C9tOC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9gOC+seC9suC8i+C9ouC9uuC8i+C9luC8i+C9mOC9uuC9keC8i+C9lOC9oOC9suC8i+C9mOC9h+C9tOC9giIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMTMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIndoaWxlIHJlYWRpbmcgJXM6ICVzIgorbXNnc3RyICIlcyDgvaPgvrfgvYI6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTExOQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAibGluZSBub3QgdGVybWluYXRlZCB3aGlsZSB0cnlpbmcgdG8gcmVhZCAlcyIKK21zZ3N0ciAiJS4yNTVzIOC9k+C9hOC8i+C9guC9suC8iyAlcyDgvZPgvYTgvIvgvaPgvbTgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIvgvYDgvrHgvbLgvIvgvaLgvbrgvIvgvZbgvIvgvZjgvbrgvZHgvIvgvZTgvaDgvbLgvIvgvZjgvYfgvbTgvYIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTM3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlcyBjb3JydXB0OiAlcyIKK21zZ3N0ciAi4L2T4L2E4LyL4L2g4L2B4L284L2R4LyL4L2A4L6x4L2y4LyL4L2g4L2b4L284L2j4LyL4L2WOiAlcyDgvYTgvZPgvIvgvYXgvZPgvIvgvZbgvZ/gvbzgvIvgvZPgvbLgvIs6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE1MAorIywgYy1mb3JtYXQKK21zZ2lkICJuZXdsaW5lcyBwcm9oaWJpdGVkIGluIHVwZGF0ZS1hbHRlcm5hdGl2ZXMgZmlsZXMgKCVzKSIKK21zZ3N0ciAi4L2R4L204L2m4LyL4L2Y4L2Q4L204L2T4LyLLeC9puC+pOC9uuC9o+C8i+C9mOC9oOC9suC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9muC9tOC8iyAoJXMpIOC9k+C9hOC8i+C9o+C9tOC8i+C9guC+suC9o+C8i+C9kOC9suC9guC8i+C9guC9puC9ouC9lOC8i+C9muC9tOC8i+C9luC9gOC9guC8i+C9oeC9vOC9keC9lOC8jSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNjMKK21zZ2lkICJzbGF2ZSBuYW1lIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTcxIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDA1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJkdXBsaWNhdGUgc2xhdmUgJXMiCittc2dpZCAiZHVwbGljYXRlIHNsYXZlIG5hbWUgJXMiCittc2dzdHIgIuC9luC+suC9k+C8i+C9guC9oeC9vOC9guC8iyAlcyDgvaLgvqvgvbTgvZPgvIvgvZjgvI0iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTc0CisjLCBmdXp6eQorbXNnaWQgInNsYXZlIGxpbmsiCittc2dzdHIgIuC9luC+suC9k+C8i+C9guC9oeC9vOC9guC8i+C9oOC9luC+suC9uuC9o+C8i+C9o+C9mOC8iyAlcyDgvaLgvqvgvbTgvZPgvIvgvZjgvI0iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTc4CisjLCBjLWZvcm1hdAorbXNnaWQgInNsYXZlIGxpbmsgc2FtZSBhcyBtYWluIGxpbmsgJXMiCittc2dzdHIgIuC9oOC9luC+suC9k+C8i+C9guC9oeC9vOC9guC8i+C9oOC9luC+suC9uuC9o+C8i+C9o+C9mOC8i+C9oOC9keC9suC8i+C9oOC9luC+suC9uuC9o+C8i+C9o+C9mOC8i+C9guC9meC9vOC8i+C9luC9vOC8iyAlcyDgvZHgvYTgvIvgvaPgvpXgvbzgvYLgvabgvIvgvaLgvYTgvIvgvZDgvZHgvI0iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTg1IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDEyCisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBzbGF2ZSBsaW5rICVzIgorbXNnc3RyICLgvZbgvrLgvZPgvIvgvYLgvaHgvbzgvYLgvIvgvaDgvZbgvrLgvbrgvaPgvIvgvaPgvZjgvIsgJXMg4L2i4L6r4L204L2T4LyL4L2Y4LyNIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIwNAorbXNnaWQgIm1hc3RlciBmaWxlIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjEzCisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBwYXRoICVzIgorbXNnc3RyICLgvaDgvYLgvrLgvbTgvaPgvIvgvaPgvZjgvIvgvaLgvqvgvbTgvZPgvIvgvZjgvIsgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjI2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiYWx0ZXJuYXRpdmUgJXMgKHBhcnQgb2YgbGluayBncm91cCAlcykgZG9lc24ndCBleGlzdC4gUmVtb3ZpbmcgZnJvbSBsaXN0IG9mICIKKyJhbHRlcm5hdGl2ZXMuIgorbXNnc3RyICIiCisiJXMg4L2C4L2y4LyL4L2R4L284L2T4LyL4L2j4L204LyL4L2m4L6k4L264L2j4LyL4L2Y4LyL4L2C4L2y4L2m4LyLIOC9oOC9muC9vOC9o+C8i+C9mOC8i+C9oOC9kOC9vOC9luC8i+C9mOC9suC8iyAtICVzIOC9o+C9tOC8i+C9keC9lOC9guC9lOC8i+C9qOC9suC9k+C8jSDgvabgvqTgvbrgvaPgvIvgvZjgvIvgvZrgvbTgvaDgvbLgvIvgvZDgvbzgvIvgvaHgvbLgvYLgvIvgvaPgvabgvIvgvaLgvqngvIvgvZbgvabgvpDgvrLgvZHgvIvgvYLgvY/gvYTgvIvgvZHgvbzgvI0iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjI5IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjQwCisjLCBmdXp6eQorbXNnaWQgInByaW9yaXR5IgorbXNnc3RyICLgvYLgvZngvbzgvIvgvaLgvbLgvZjgvIsgJXMgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjMyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjQ5Cittc2dpZCAic2xhdmUgZmlsZSIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI0NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAicHJpb3JpdHkgb2YgJXM6ICVzIgorbXNnc3RyICLgvYLgvZngvbzgvIvgvaLgvbLgvZjgvIsgJXMgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjk3Cittc2dpZCAic3RhdHVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjk5CisjLCBmdXp6eQorbXNnaWQgImludmFsaWQgc3RhdHVzIgorbXNnc3RyICLgvZPgvbTgvabgvIvgvZjgvbrgvZHgvIvgvZHgvbTgvabgvIvgvZjgvZDgvbTgvZPgvZjgvIvgvZbgvZ/gvbzgvIvgvZPgvbLgvIvgvZDgvZbgvabgvIvgvaPgvZgiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzA0CisjLCBmdXp6eQorbXNnaWQgIm1hc3RlciBsaW5rIgorbXNnc3RyICLgvZbgvrLgvZPgvIvgvYLgvaHgvbzgvYLgvIvgvaDgvZbgvrLgvbrgvaPgvIvgvaPgvZjgvIsgJXMg4L2i4L6r4L204L2T4LyL4L2Y4LyNIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTM0OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZGlzY2FyZGluZyBvYnNvbGV0ZSBzbGF2ZSBsaW5rICVzICglcykuIgorbXNnc3RyICLgvZXgvZPgvIvgvZjgvbrgvZHgvIvgvZbgvrLgvZPgvIvgvYLgvaHgvbzgvYLgvIvgvaDgvZbgvrLgvbrgvaPgvIvgvaPgvZjgvIsgJXMgKCVzKSDgvZbgvY/gvbzgvZPgvIvgvZbgvYDgvbzgvYLgvIvgvZHgvbzgvI0iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTAyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTY5CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYzOAorbXNnaWQgImF1dG8gbW9kZSIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU3OAorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MzkKK21zZ2lkICJtYW51YWwgbW9kZSIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwNQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiICBsaW5rIGN1cnJlbnRseSBwb2ludHMgdG8gJXMiCittc2dzdHIgIuC9oOC9luC+suC9uuC9o+C8i+C9o+C9mOC8i+C9oOC9keC9suC8i+C9keC8i+C9o+C+n+C9vOC8iyAlcyDgvaPgvbTgvIvgvZHgvZTgvYLgvZTgvIvgvajgvbLgvZPgvI0iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTA4CisjLCBmdXp6eQorbXNnaWQgIiAgbGluayBjdXJyZW50bHkgYWJzZW50IgorbXNnc3RyICLgvaDgvZbgvrLgvbrgvaPgvIvgvaPgvZjgvIvgvaDgvZHgvbLgvIvgvZHgvIvgvaPgvp/gvbzgvIvgvYbgvZHgvIvgvajgvbLgvZPgvIvgvZTgvabgvI0iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTEyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIlcyAtIHByaW9yaXR5ICVzIgorbXNnaWQgIiVzIC0gcHJpb3JpdHkgJWQiCittc2dzdHIgIiVzIC0g4L2C4L2Z4L284LyL4L2i4L2y4L2Y4LyLICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUxNQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiICBzbGF2ZSAlczogJXMiCittc2dzdHIgIuC9luC+suC9k+C8i+C9guC9oeC9vOC9guC8iyAlczogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTIyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJDdXJyZW50ICdiZXN0JyB2ZXJzaW9uIGlzICclcycuIgorbXNnc3RyICLgvZHgvIvgvaPgvp/gvbzgvaDgvbLgvIvgvZDgvbzgvZPgvIvgvaLgvbLgvZjgvItg4L2R4L6y4L2C4LyL4L2k4L284L2m4LyLJ+C9oOC9keC9suC8iyAlcyDgvajgvbLgvZPgvI0iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTI0Cittc2dpZCAiTm8gdmVyc2lvbnMgYXZhaWxhYmxlLiIKK21zZ3N0ciAi4L2Q4L284L2T4LyL4L2i4L2y4L2Y4LyL4L2a4L204LyL4L2Q4L284L2W4LyL4L2a4L204L2C4L2m4L2U4LyL4L2Y4L264L2R4LyNIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU1MworIywgYy1mb3JtYXQKK21zZ2lkICJUaGVyZSBpcyAlZCBjaG9pY2UgZm9yIHRoZSBhbHRlcm5hdGl2ZSAlcyAocHJvdmlkaW5nICVzKS4iCittc2dpZF9wbHVyYWwgIlRoZXJlIGFyZSAlZCBjaG9pY2VzIGZvciB0aGUgYWx0ZXJuYXRpdmUgJXMgKHByb3ZpZGluZyAlcykuIgorbXNnc3RyWzBdICIiCittc2dzdHJbMV0gIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NjAKKyMsIGZ1enp5Cittc2dpZCAiU2VsZWN0aW9uIgorbXNnc3RyICLgvaDgvYLgvrLgvbrgvaPgvIvgvZbgvaTgvZHgvI0iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYxCittc2dpZCAiUGF0aCIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2MQorIywgZnV6enkKK21zZ2lkICJQcmlvcml0eSIKK21zZ3N0ciAi4L2C4L2Z4L284LyL4L2i4L2y4L2Y4LyLICVzICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2MQorbXNnaWQgIlN0YXR1cyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU4MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiUHJlc3MgZW50ZXIgdG8ga2VlcCB0aGUgY3VycmVudCBjaG9pY2VbKl0sIG9yIHR5cGUgc2VsZWN0aW9uIG51bWJlcjogIgorbXNnc3RyICLgvabgvpTgvbzgvZPgvIvgvabgvpLgvrLgvbLgvYLgvItbKl3gvZbgvZ7gvYLgvIvgvZPgvbLgvaDgvbLgvIvgvZHgvbzgvZPgvIvgvaPgvabgvIvgvaPgvbzgvYLgvIvgvaPgvqHgvbrgvIvgvajgvbrgvZbgvIsg4L2h4L2E4LyL4L2T4LyL4L2m4L264L2j4LyL4L2g4L2Q4L204L2g4L2y4LyL4L2o4L2E4LyL4L2h4L2y4L2C4LyL4L2R4L2U4L2i4LyL4L2i4L6Q4L6x4L2W4L2mOiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3MjEKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IHJlcGxhY2luZyAlcyB3aXRoIGEgbGluay4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3NjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2FuJ3QgaW5zdGFsbCB1bmtub3duIGNob2ljZSAlcyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTc4MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisic2tpcCBjcmVhdGlvbiBvZiAlcyBiZWNhdXNlIGFzc29jaWF0ZWQgZmlsZSAlcyAob2YgbGluayBncm91cCAlcykgZG9lc24ndCAiCisiZXhpc3QuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNzkwCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vdCByZW1vdmluZyAlcyBzaW5jZSBpdCdzIG5vdCBhIHN5bWxpbmsuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDQxIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDQ3CisjLCBjLWZvcm1hdAorbXNnaWQgIkNhbGwgJXMuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDUxCisjLCBjLWZvcm1hdAorbXNnaWQgIkFsdGVybmF0aXZlICVzIHVuY2hhbmdlZCBiZWNhdXNlIGNob2ljZSAlcyBpcyBub3QgYXZhaWxhYmxlLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA1NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiU2tpcCB1bmtub3duIGFsdGVybmF0aXZlICVzLiIKK21zZ3N0ciAi4L2m4L6k4L264L2j4LyL4L2Y4LyLIGAlcycg4L2g4L2a4L284L2j4LyL4L2Y4LyL4L2g4L2Q4L284L2W4LyNIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA3NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAibGluZSB0b28gbG9uZyBvciBub3QgdGVybWluYXRlZCB3aGlsZSB0cnlpbmcgdG8gcmVhZCAlcyIKK21zZ3N0ciAiJS4yNTVzIOC9k+C9hOC8i+C9guC9suC8iyAlcyDgvZPgvYTgvIvgvaPgvbTgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIvgvYDgvrHgvbLgvIvgvaLgvbrgvIvgvZbgvIvgvZjgvbrgvZHgvIvgvZTgvaDgvbLgvIvgvZjgvYfgvbTgvYIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDkwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTAzCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjExMworIywgYy1mb3JtYXQKK21zZ2lkICJTa2lwIGludmFsaWQgbGluZTogJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxMzIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInJlbmFtaW5nICVzIGxpbmsgZnJvbSAlcyB0byAlcy4iCittc2dzdHIgIiVzIOC9oOC9luC+suC9uuC9o+C8i+C9o+C9mOC8i+C9oOC9keC9suC8iyAlcyDgvaPgvabgvIsgJXMg4L2j4L204LyL4L2W4L2m4L6Q4L6x4L2i4LyL4L2Y4L2y4L2E4LyL4L2W4L2P4L2C4L2m4LyL4L2R4L284LyNIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE3MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAicmVuYW1pbmcgJXMgc2xhdmUgbGluayBmcm9tICVzIHRvICVzLiIKK21zZ3N0ciAiJXMg4L2W4L6y4L2T4LyL4L2C4L2h4L284L2C4LyL4L2W4L6y4L2T4LyL4L2j4L2Y4LyL4L2g4L2R4L2y4LyLICVzIOC9o+C9puC8iyAlcyDgvaPgvbTgvIvgvZbgvabgvpDgvrHgvaLgvIvgvZjgvbLgvYTgvIvgvZbgvY/gvYLgvabgvIvgvZHgvbzgvI0iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTg5CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIG5hbWUgKCVzKSBtdXN0IG5vdCBjb250YWluICcvJyBhbmQgc3BhY2VzLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE5MworIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBsaW5rIGlzIG5vdCBhYnNvbHV0ZSBhcyBpdCBzaG91bGQgYmU6ICVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTk3CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIHBhdGggaXMgbm90IGFic29sdXRlIGFzIGl0IHNob3VsZCBiZTogJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyMjQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlICVzIGNhbid0IGJlIG1hc3RlcjogaXQgaXMgYSBzbGF2ZSBvZiAlcyIKK21zZ3N0ciAiJXM6ICAlcyDgvYLgvabgvaLgvIvgvZbgvabgvpDgvrLgvbTgvZPgvIvgvaDgvZbgvZHgvIvgvZjgvbLgvIvgvZrgvbTgvYLgvabgvIs6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjIzMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI2NworIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBsaW5rICVzIGlzIGFscmVhZHkgbWFuYWdlZCBieSAlcy4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNDEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIHBhdGggJXMgZG9lc24ndCBleGlzdC4iCittc2dzdHIgIuC9ieC9uuC9k+C8i+C9luC9ouC+oeC8izogLS3gvZHgvbTgvabgvIvgvZjgvZDgvbTgvZPgvIvgvZbgvrHgvbLgvZPgvIvgvaHgvbzgvZHgvIsg4L2R4L264LyL4L2g4L2W4L2R4L2d4LyL4L2R4LyLICAlcyDgvaDgvZHgvbLgvIvgvZjgvbrgvZHgvI0iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjU0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBzbGF2ZSBvZiAlczogaXQgaXMgYSBtYXN0ZXIgYWx0ZXJuYXRpdmUuIgorbXNnc3RyICIlczogICVzIOC9guC9puC9ouC8i+C9luC9puC+kOC+suC9tOC9k+C8i+C9oOC9luC9keC8i+C9mOC9suC8i+C9muC9tOC9guC9puC8izogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjU4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBzbGF2ZSBvZiAlczogaXQgaXMgYSBzbGF2ZSBvZiAlcyIKK21zZ3N0ciAiJXM6ICAlcyDgvYLgvabgvaLgvIvgvZbgvabgvpDgvrLgvbTgvZPgvIvgvaDgvZbgvZHgvIvgvZjgvbLgvIvgvZrgvbTgvYLgvabgvIs6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI3OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgbGluayAlcyBpcyBhbHJlYWR5IG1hbmFnZWQgYnkgJXMgKHNsYXZlIG9mICVzKS4iCittc2dzdHIgIiVzOiAgJXMg4L2C4L2m4L2i4LyL4L2W4L2m4L6Q4L6y4L204L2T4LyL4L2g4L2W4L2R4LyL4L2Y4L2y4LyL4L2a4L204L2C4L2m4LyLOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBhcmd1bWVudCBgJXMnIgorbXNnc3RyICLgvZjgvIvgvaTgvbrgvabgvIvgvZTgvaDgvbLgvIvgvabgvpLgvrLgvbTgvZbgvIvgvaLgvp/gvYLgvabgvIsgYCVzJyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNDMKK21zZ2lkICItLWluc3RhbGwgbmVlZHMgPGxpbms+IDxuYW1lPiA8cGF0aD4gPHByaW9yaXR5PiIKK21zZ3N0ciAiLS3gvYLgvZ7gvbLgvIvgvZbgvZngvbTgvYLgvabgvIvgvaPgvbTgvIsgPGxpbms+IDxuYW1lPiA8cGF0aD4gPHByaW9yaXR5PiDgvZHgvYLgvbzgvZTgvIvgvajgvbLgvZPgvI0iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzQ2IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzk3Cittc2dpZCAiPGxpbms+IGFuZCA8cGF0aD4gY2FuJ3QgYmUgdGhlIHNhbWUiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNDkKK21zZ2lkICJwcmlvcml0eSBtdXN0IGJlIGFuIGludGVnZXIiCittc2dzdHIgIuC9guC9meC9vOC8i+C9ouC9suC9mOC8i+C9oOC9keC9suC8i+C9p+C+suC9suC9o+C8i+C9qOC9hOC8i+C9heC9suC9guC8i+C9qOC9suC9k+C8i+C9keC9guC9vCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyA8bmFtZT4gPHBhdGg+IgorbXNnc3RyICItLSVzIOC9o+C9tOC8iyA8bmFtZT4gPHBhdGg+IOC9keC9guC9vOC9lOC8i+C9qOC9suC9k+C8jSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyA8bmFtZT4iCittc2dzdHIgIi0tJXMg4L2j4L204LyLIDxuYW1lPiDgvZHgvYLgvbzgvZTgvIvgvajgvbLgvZPgvI0iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzg4Cittc2dpZCAiLS1zbGF2ZSBvbmx5IGFsbG93ZWQgd2l0aCAtLWluc3RhbGwiCittc2dzdHIgIi0t4L2W4L6y4L2T4LyL4L2C4L2h4L284L2C4LyL4L2g4L2R4L2y4LyLIC0t4L2C4L2e4L2y4LyL4L2W4L2Z4L204L2C4L2m4LyL4L2R4L2E4LyL4L2F4L2y4L2C4LyL4L2B4L2i4LyL4L2i4L6Q4L6x4L2E4L2Y4LyL4L2F4L2y4L2C4LyL4L2g4L2W4L2R4LyL4L2G4L284L2C4L2U4LyL4L2o4L2y4L2T4LyNIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM5MAorbXNnaWQgIi0tc2xhdmUgbmVlZHMgPGxpbms+IDxuYW1lPiA8cGF0aD4iCittc2dzdHIgIi0t4L2W4L6y4L2T4LyL4L2C4L2h4L284L2C4LyL4L2j4L204LyLIDxsaW5rPiA8bmFtZT4gPHBhdGg+IOC9keC9guC9vOC9lOC8i+C9qOC9suC9k+C8jSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzOTkKKyMsIGMtZm9ybWF0Cittc2dpZCAibmFtZSAlcyBpcyBib3RoIHByaW1hcnkgYW5kIHNsYXZlIgorbXNnc3RyICLgvZjgvbLgvYTgvIsgICVzIOC9oOC9keC9suC8i+C9guC9nuC9suC8i+C9ouC9suC9mOC8i+C9keC9hOC8i+C9luC+suC9k+C8i+C9guC9oeC9vOC9guC8i+C9guC9ieC9suC9puC8i+C9huC8i+C9ouC9hOC8i+C9qOC9suC9k+C8jSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAibGluayAlcyBpcyBib3RoIHByaW1hcnkgYW5kIHNsYXZlIgorbXNnc3RyICLgvaDgvZbgvrLgvbrgvaPgvIvgvaPgvZjgvIsgJXMg4L2g4L2R4L2y4LyLIOC9guC9nuC9suC8i+C9ouC9suC9mOC8i+C9keC9hOC8i+C9luC+suC9k+C8i+C9guC9oeC9vOC9guC8i+C9guC9ieC9suC9puC8i+C9huC8i+C9ouC9hOC8i+C9qOC9suC9k+C8jSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MjIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSA8ZmlsZT4gYXJndW1lbnQiCittc2dzdHIgIi0tJXPgvIvgvaPgvbTgvIvgvabgvpLgvrLgvbTgvZbgvIvgvaLgvp/gvYLgvabgvIvgvaLgvpDgvrHgvYTgvIvgvZTgvIvgvYXgvbLgvYLgvIvgvZHgvYLgvbzgvZTgvIvgvaDgvZHgvbTgvYIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDQ4CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gb3B0aW9uIGAlcyciCittc2dzdHIgIuC9mOC8i+C9pOC9uuC9puC8i+C9lOC9oOC9suC8i+C9guC9keC9mOC8i+C9geC8iyBgJXMnIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQ1MworIywgZnV6enkKK21zZ2lkICIiCisibmVlZCAtLWRpc3BsYXksIC0tcXVlcnksIC0tbGlzdCwgLS1nZXQtc2VsZWN0aW9ucywgLS1jb25maWcsIC0tc2V0LCAtLXNldC0iCisic2VsZWN0aW9ucywgLS1pbnN0YWxsLCAtLXJlbW92ZSwgLS1hbGwsIC0tcmVtb3ZlLWFsbCBvciAtLWF1dG8iCittc2dzdHIgIiIKKyItLeC9luC9gOC+suC9mOC8i+C9puC+n+C9vOC9k+C8iyAtLeC9ouC9suC9mOC8i+C9puC+kuC+suC9suC9guC8iyAtLeC9guC9nuC9suC8i+C9puC+kuC+suC9suC9guC8iyAtLeC9guC9nuC9suC8i+C9luC9meC9tOC9guC9puC8iyAtLeC9ouC+qeC8i+C9luC9puC+kOC+suC9keC8iyAtLeC9guC9uuC8i+C9ouC8iyAtLeC9guC9uuC8i+C9ouC8iy3gvaLgvqngvIvgvZbgvabgvpDgvrLgvZHgvIvgvYLgvY/gvYTgvIsg4L2h4L2E4LyLIgorIuC9k+C8iyAtLeC9ouC9hOC8i+C9luC9nuC9suC9k+C8iyDgvZHgvYLgvbzgvZTgvIvgvajgvbLgvZPgvI0iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDkwCisjLCBmdXp6eQorI3wgbXNnaWQgInJlYWQgZXJyb3Igb24gc3RhbmRhcmQgaW5wdXQiCittc2dpZCAiPHN0YW5kYXJkIGlucHV0PiIKK21zZ3N0ciAi4L2a4L2R4LyL4L2j4L6h4L2T4LyL4L2o4L2y4L2T4LyL4L2U4L204L2K4L2y4LyL4L2C4L204LyL4L2j4L204LyL4L2j4L634L2C4LyL4L2U4L2g4L2y4LyL4L2g4L2b4L284L2j4LyL4L2W4LyNIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUwMCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUwMworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAibm8gYWx0ZXJuYXRpdmVzIGZvciAlcy4iCittc2dzdHIgIiVzIOC9guC9suC8i+C9keC9vOC9k+C8i+C9o+C9tOC8i+C9puC+pOC9uuC9o+C8i+C9mOC8i+C9muC9tOC8i+C9mOC9uuC9keC8jSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMvJXMgaXMgZGFuZ2xpbmcsIGl0IHdpbGwgYmUgdXBkYXRlZCB3aXRoIGJlc3QgY2hvaWNlLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUzNAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzLyVzIGhhcyBiZWVuIGNoYW5nZWQgKG1hbnVhbGx5IG9yIGJ5IGEgc2NyaXB0KS4gU3dpdGNoaW5nIHRvIG1hbnVhbCAiCisidXBkYXRlcyBvbmx5LiIKK21zZ3N0ciAiIgorIiVzIOC9oOC9keC9suC8i+C9luC9puC+kOC+seC9tOC9ouC8i+C9luC9heC9vOC9puC8i+C9oOC9luC9keC8i+C9oeC9vOC9keC9lOC8i+C9qOC9suC9k+C8jSjgvaPgvYLgvIvgvZDgvbzgvYLgvIvgvaPgvabgvIvgvaHgvYTgvIvgvZPgvIvgvaHgvYLgvbLgvIvgvZrgvbTgvYLgvabgvIvgvYXgvbLgvYLgvIvgvYLgvbLgvabgvIvgvabgvqbgvbrgvIspXG4iCisi4L2j4L2C4LyL4L2R4L264L2W4LyL4L2A4L6x4L2y4LyL4L2R4L204L2m4LyL4L2Y4L2Q4L204L2T4LyL4L2a4L204LyL4L2j4L204LyL4L2i4L6Q4L6x4L2E4L2Y4LyL4L2F4L2y4L2C4LyL4L2m4L204LyL4L2h4L204LyL4L2F4L2y4L2E4LyL4L2g4L2W4L2R4LyL4L2R4L284LyNIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU0MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAic2V0dGluZyB1cCBhdXRvbWF0aWMgc2VsZWN0aW9uIG9mICVzLiIKK21zZ3N0ciAiJXMg4L2C4L2y4LyL4L2i4L2E4LyL4L2W4L2e4L2y4L2T4LyL4L2m4L264L2j4LyL4L2g4L2Q4L204LyL4L2C4L2e4L2y4LyL4L2m4L6S4L6y4L2y4L2C4LyL4L2g4L2W4L2R4LyL4L2R4L284LyNIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU1MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgZm9yICVzIG5vdCByZWdpc3RlcmVkLCBub3Qgc2V0dGluZy4iCittc2dzdHIgIiVzIOC9guC9suC8i+C9keC9vOC9k+C8i+C9o+C9tOC8i+C9puC+pOC9uuC9o+C8i+C9mOC8iyAlcyDgvaDgvZHgvbLgvIvgvZDgvbzgvIvgvZbgvYDgvbzgvZHgvIvgvZjgvIvgvaDgvZbgvZHgvIvgvZbgvabgvI0g4L2i4L6p4LyL4L2W4L2m4L6Q4L6y4L2R4LyL4L2Y4L2y4LyL4L2C4L2P4L2E4LyL4LyNIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU1NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU2MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiVGhlcmUgaXMgbm8gcHJvZ3JhbSB3aGljaCBwcm92aWRlcyAlcy4iCittc2dzdHIgIiIKKyIg4L2W4L6x4L2y4L2T4LyL4L2Y4L2y4LyL4L2j4L2m4LyL4L2i4L2y4L2Y4LyLICVz4L2g4L2R4L2y4LyL4L2Y4L264L2R4LyNXG4iCisiIOC9ouC9suC9mOC8i+C9puC+kuC+suC9suC9guC8i+C9oOC9luC9keC8i+C9k+C9suC8i+C9guC8i+C9heC9suC8i+C9oeC9hOC8i+C9mOC9uuC9keC8jVxuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU2NSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU3NQorbXNnaWQgIk5vdGhpbmcgdG8gY29uZmlndXJlLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU3MworIywgYy1mb3JtYXQKK21zZ2lkICJUaGVyZSBpcyBvbmx5IG9uZSBhbHRlcm5hdGl2ZSBpbiBsaW5rIGdyb3VwICVzOiAlcyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU4NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgZm9yICVzIG5vdCByZWdpc3RlcmVkLCBub3QgcmVtb3ZpbmcuIgorbXNnc3RyICIlcyDgvYLgvbLgvIvgvZHgvbzgvZPgvIvgvaPgvbTgvIvgvabgvqTgvbrgvaPgvIvgvZjgvIsgJXMg4L2g4L2R4L2y4LyL4L2Q4L284LyL4L2W4L2A4L284L2R4LyL4L2Y4LyL4L2g4L2W4L2R4LyL4L2W4L2m4LyNIOC9ouC+qeC8i+C9luC9puC+kOC+suC9keC8i+C9mOC9suC8i+C9guC9j+C9hOC8i+C8jSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1OTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInJlbW92aW5nIG1hbnVhbGx5IHNlbGVjdGVkIGFsdGVybmF0aXZlIC0gc3dpdGNoaW5nICVzIHRvIGF1dG8gbW9kZSIKK21zZ3N0ciAiIgorIuC9o+C9guC8i+C9kOC9vOC9guC8i+C9o+C9puC8i+C9puC9uuC9o+C8i+C9oOC9kOC9tOC8i+C9oOC9luC9keC8i+C9oeC9vOC9keC8i+C9lOC9oOC9suC8i+C9puC+pOC9uuC9o+C8i+C9mOC8iyAtIOC9puC9tOC8i+C9oeC9suC8i+C9heC9suC9hOC8i+C9oOC9keC9suC8i+C9ouC9hOC8i+C9luC9nuC9suC9k+C8i+C9kOC9luC9puC8i+C9o+C9mOC8i+C9o+C9tOC8i+C9ouC+qeC8i+C9luC9puC+kOC+suC9keC8i+C9guC9j+C9hOC8i+C9keC9vOC8jSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MTcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImF1dG9tYXRpYyB1cGRhdGVzIG9mICVzLyVzIGFyZSBkaXNhYmxlZCwgbGVhdmluZyBpdCBhbG9uZS4iCittc2dzdHIgIiVzIOC9guC9suC8i+C9ouC9hOC8i+C9luC9nuC9suC9k+C8i+C9keC9tOC9puC8i+C9mOC9kOC9tOC9k+C8i+C9muC9tOC8i+C9o+C+leC9vOC9guC9puC8i+C9mOC9suC9k+C8i+C9luC9n+C9vOC8i+C9oeC9vOC9keC8jSDgvYHgvbzgvIvgvaLgvYTgvIvgvaLgvpDgvrHgvYTgvZjgvIvgvYXgvbLgvYLgvIvgvZbgvZ7gvYLgvIvgvZTgvaDgvbLgvIvgvabgvpDgvZbgvabgvI0iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjE5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ0byByZXR1cm4gdG8gYXV0b21hdGljIHVwZGF0ZXMgdXNlICclcyAtLWF1dG8gJXMnLiIKK21zZ3N0ciAi4L2i4L2E4LyL4L2W4L2e4L2y4L2T4LyL4L2a4L204LyL4L2j4L204LyL4L2m4L6z4L2i4LyL4L2j4L284L2C4LyL4L2T4L2y4L2g4L2y4LyL4L2R4L284L2T4LyL4L2j4L2m4LyLICBg4L2R4L204L2m4LyL4L2Y4L2Q4L204L2T4LyLLeC9puC+pOC9uuC9o+C8i+C9mOC8iyAtLeC9ouC9hOC8i+C9luC9nuC9suC9kyAlcycg4L2j4L2C4LyL4L2j4L264L2T4LyL4L2g4L2Q4L2W4LyNIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYzNgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidXNpbmcgJXMgdG8gcHJvdmlkZSAlcyAoJXMpIGluICVzLiIKK21zZ3N0ciAiYCVzJyDgvZbgvrHgvbLgvZPgvIvgvZPgvbLgvaDgvbLgvIvgvZHgvbzgvZPgvIvgvaPgvabgvIsgYCVzJyDgvaPgvYLgvIvgvaPgvbrgvZPgvIvgvaDgvZDgvZbgvIvgvZHgvbzgvI0iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjQ0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmb3JjaW5nIHJlaW5zdGFsbGF0aW9uIG9mIGFsdGVybmF0aXZlICVzIGJlY2F1c2UgbGluayBncm91cCAlcyBpcyBicm9rZW4uIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjUxCisjLCBjLWZvcm1hdAorbXNnaWQgImN1cnJlbnQgYWx0ZXJuYXRpdmUgJXMgaXMgdW5rbm93biwgc3dpdGNoaW5nIHRvICVzIGZvciBsaW5rIGdyb3VwICVzLiIKK21zZ3N0ciAiIgorCisjLCBmdXp6eQorI34gbXNnaWQgIml0IGlzIGEgc2xhdmUgb2YgJXMiCisjfiBtc2dzdHIgIuC9luC+suC9k+C8i+C9guC9oeC9vOC9guC8iyAlczogJXMiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgImNhbm5vdCBzdGF0IG9sZCBuYW1lIGAlcyc6ICVzIgorI34gbXNnaWQgImNhbm5vdCBzdGF0ICVzOiAlcyIKKyN+IG1zZ3N0ciAi4L2Y4L2y4L2E4LyL4L2i4L6Z4L2y4L2E4L2Y4LyLIGAlcycg4L2m4L2y4LyL4L2K4L264L2K4L2y4LyL4L2g4L2W4L2R4LyL4L2Y4LyL4L2a4L204L2C4L2mOiAlcyIKKworIywgZnV6enkKKyN+fCBtc2dpZCAiJXM6IGNvcHlpbmcgJXMgdG8gJXMgZmFpbGVkLCBnaXZpbmcgdXA6ICVzIgorI34gbXNnaWQgInNjYW4gb2YgJXMgZmFpbGVkOiAlcyIKKyN+IG1zZ3N0ciAiJXM6ICVzIOC9oOC9keC9suC8iyAlcyDgvaPgvbTgvIvgvaDgvZHgvrLgvIvgvZbgvaTgvbTgvabgvIvgvaLgvpDgvrHgvZbgvabgvIvgvZPgvbLgvIvgvaDgvZDgvbTgvabgvIvgvaTgvbzgvaLgvIvgvaDgvZbgvrHgvbTgvYTgvIvgvaHgvbzgvZHgvI0g4L2W4L2A4L284L2C4LyL4L2W4L2e4L2C4LyL4L2R4L28OiAlcyAiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgImZhaWxlZCB0byBleGVjICVzIgorI34gbXNnaWQgImZhaWxlZCB0byBleGVjdXRlICVzOiAlcyIKKyN+IG1zZ3N0ciAiJXMg4L2j4L2C4LyL4L2j4L264L2T4LyL4L2g4L2Q4L2W4LyL4L2T4L2y4LyL4L2g4L2Q4L204L2m4LyL4L2k4L284L2i4LyL4L2W4L6x4L204L2E4LyL4L2h4L284L2R4L2U4LyNIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIG1ha2UgJXMgYSBzeW1saW5rIHRvICVzOiAlcyIKKyN+IG1zZ3N0ciAiJXMg4L2g4L2R4L2y4LyLICVzIOC9o+C9tOC8i+C9luC9ouC+oeC8i+C9mOC9muC9vOC9k+C8i+C9oOC9luC+suC9uuC9o+C8i+C9o+C9mOC8i+C9heC9suC9guC8i+C9luC9n+C9vOC8i+C9mOC8i+C9muC9tOC9guC9pjogJXMgIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgJXMgYXMgJXM6ICVzIgorI34gbXNnc3RyICIlcyDgvaDgvZHgvbLgvIsgJXMg4L2m4L6m4L264LyL4L2C4L2e4L2y4LyL4L2W4L2Z4L204L2C4L2m4LyL4L2g4L2W4L2R4LyL4L2Y4LyL4L2a4L204L2C4L2mOiAlcyAiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAid2hpbGUgd3JpdGluZyAlczogJXMiCisjfiBtc2dzdHIgIiVzOiAgJXMg4L2g4L2W4L6y4L2y4L2d4LyL4L2R4LyL4L2g4L2b4L284L2j4LyL4L2W4LyLOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byByZWFkICVzOiAlcyIKKyN+IG1zZ3N0ciAi4L2i4L6p4LyL4L2W4L2m4L6Q4L6y4L2R4LyL4L2C4L2P4L2E4LyL4L2Y4LyL4L2a4L204L2C4L2mICVzOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byBjbG9zZSAlczogJXMiCisjfiBtc2dzdHIgIiVzIOC9geC8i+C9luC9puC+oeC9mOC8i+C9mOC8i+C9muC9tOC9guC9puC8izogJXMiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgIndyaXRlICVzOiAlcyIKKyN+IG1zZ2lkICJjYW5ub3Qgd3JpdGUgJXM6ICVzIgorI34gbXNnc3RyICIlczogJXMg4L2g4L2W4L6y4L2y4LyNIgorCisjLCBmdXp6eQorI358IG1zZ2lkICJ1bmFibGUgdG8gcmVuYW1lICVzIHRvICVzOiAlcyIKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcmVuYW1lIGZpbGUgJyVzJyB0byAnJXMnIgorI34gbXNnc3RyICIlcyDgvaDgvZHgvbLgvIsgJXMg4L2j4L204LyL4L2W4L2m4L6Q4L6x4L2i4LyL4L2Y4L2y4L2E4LyL4L2W4L2P4L2C4L2m4LyL4L2Y4LyL4L2a4L204L2C4L2mOiAlcyAiCisKKyN+IG1zZ2lkICJtYWxsb2MgZmFpbGVkICglbGQgYnl0ZXMpIgorI34gbXNnc3RyICLgvZjgvbHgvaPgvIvgvaPgvbzgvYDgvIsg4L2g4L2Q4L204L2m4LyL4L2k4L284L2i4LyL4L2W4L6x4L204L2E4LyL4L2h4L284L2R4L2U4LyLICglbGQg4L2W4L2x4L2g4L2y4L2K4L2y4L2m4L2y4LyLKSIKKworI34gbXNnaWQgInJlYWxsb2MgZmFpbGVkICglbGQgYnl0ZXMpIgorI34gbXNnc3RyICLgvaLgvbLgvaDgvIvgvaPgvbzgvYDgvIsg4L2g4L2Q4L204L2m4LyL4L2k4L284L2i4LyL4L2W4L6x4L204L2E4LyL4L2h4L284L2R4L2U4LyLICglbGQg4L2W4L2x4LyL4L2g4L2y4L2K4L2y4L2m4L2yKSIKKworI34gbXNnaWQgInVuYWJsZSB0byB1bmJ1ZmZlciBgJS4yNTVzJyIKKyN+IG1zZ3N0ciAiYCUuMjU1cycg4L2C4L2T4L2m4LyL4L2B4L284L2E4L2m4LyL4L2Y4L2y4L2T4LyL4L2U4LyL4L2W4L2f4L284LyL4L2T4L2y4LyL4L2g4L2Q4L204L2m4LyL4L2k4L284L2i4LyL4L2W4L6x4L204L2E4LyL4L2h4L284L2R4LyNIgorCisjfiBtc2dpZCAicGFydCBmaWxlIGAlLjI1MHMnIGhhcyB0cmFpbGluZyBnYXJiYWdlIgorI34gbXNnc3RyICLgvaHgvZPgvIvgvaPgvYLgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIsgYCUuMjUwcycg4L2j4L204LyL4L2i4L6S4L6x4L2W4LyL4L2j4L204L2m4LyL4L2g4L2V4L6x4L2C4LyL4L2J4L2y4L2C4LyL4L2g4L2R4L204L2CIgorCisjfiBtc2dpZCAic2l6ZSAlN2Qgb2NjdXJzICU1ZCB0aW1lc1xuIgorI34gbXNnc3RyICLgvZrgvZHgvIsgJTdkIOC9oOC9keC9suC8iyDgvZDgvbrgvYTgvabgvIslNWQg4L2W4L6x4L204L2E4L2Y4LyL4L2o4L2y4L2T4LyNXG4iCisKKyN+IG1zZ2lkICJvdXQgb2YgbWVtb3J5IHB1c2hpbmcgZXJyb3IgaGFuZGxlcjogIgorI34gbXNnc3RyICLgvZHgvrLgvZPgvIvgvZrgvZHgvIvgvYDgvrHgvbLgvIvgvZXgvrHgvbLgvIvgvYHgvIvgvaDgvZXgvbTgvaPgvIvgvZPgvbLgvaDgvbLgvIvgvaDgvZvgvbzgvaPgvIvgvZbgvIvgvaPgvbrgvYLgvabgvIvgvabgvpDgvrHgvbzgvYTgvIvgvZQ6IgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHVubG9jayBkcGtnIHN0YXR1cyBkYXRhYmFzZSIKKyN+IG1zZ3N0ciAi4L2M4L2y4LyL4L2U4L2y4LyL4L2A4L264LyL4L2H4L2y4LyL4L2C4L2T4L2m4LyL4L2a4L2R4LyL4L2A4L6x4L2y4LyL4L2C4L2T4L2R4LyL4L2m4L6h4L204L2R4LyL4L2C4L2e4L2y4LyL4L2i4L6f4L264L2T4LyL4L2j4L6h4L264LyL4L2Y4L2y4L2C4LyL4L2V4L6x4L264LyL4L2Y4LyL4L2a4L204L2C4L2m4LyNIgorCisjfiBtc2dpZCAiY29weSBpbmZvIGZpbGUgYCUuMjU1cyciCisjfiBtc2dzdHIgIuC9luC9ouC+oeC8i+C9keC9vOC9k+C8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8iyBgJS4yNTVzJyDgvaDgvZHgvrIg4L2W4L2k4L204L2m4LyL4L2i4L6Q4L6x4L2W4L2m4LyNIgorCisjfiBtc2dpZCAicGFyc2UgZXJyb3IiCisjfiBtc2dzdHIgIuC9mOC9suC9hOC8i+C9keC9lOC+seC9keC8i+C9oOC9luC9keC8i+C9k+C9suC9oOC9suC8i+C9oOC9m+C9vOC9o+C8i+C9luC8jSIKKworI34gbXNnaWQgImZhaWxlZCB0byB3cml0ZSBwYXJzaW5nIHdhcm5pbmciCisjfiBtc2dzdHIgIuC9mOC9suC9hOC8i+C9keC9lOC+seC9keC8i+C9oOC9luC9keC8i+C9k+C9suC9oOC9suC8i+C9ieC9uuC9k+C8i+C9luC9ouC+oeC8i+C9oOC9luC+suC9suC8i+C9k+C9suC8i+C9o+C9tOC8i+C9oOC9kOC9tOC9puC8i+C9pOC9vOC9ouC8i+C9luC+seC9tOC9hOC8i+C9oeC9vOC9keC9lOC8jSIKKworI34gbXNnaWQgImZhaWxlZCB0byBydW4gJXMgKCUuMjUwcykiCisjfiBtc2dzdHIgIiVzICglLjI1MHMpIOC9guC9oeC9vOC9guC8i+C9luC9gOC9vOC9o+C8i+C9k+C9suC8i+C9oOC9kOC9tOC9puC8i+C9pOC9vOC9ouC8i+C9luC+seC9tOC9hOC8i+C9oeC9vOC9keC9lOC8jSIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIHNoZWxsICglLjI1MHMpIgorI34gbXNnc3RyICLgvaTgvaPgvIsgKCUuMjUwcykg4L2j4L2C4LyL4L2j4L264L2T4LyL4L2g4L2Q4L2W4LyL4L2T4L2y4LyL4L2g4L2Q4L204L2m4LyL4L2k4L284L2i4LyL4L2W4L6x4L204L2E4LyL4L2h4L284L2R4LyNIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGNoZWNrIGZvciBleGlzdGVuY2Ugb2YgYCUuMjUwcyciCisjfiBtc2dzdHIgImAlLjI1MHMnIOC9guC9suC8i+C9guC9k+C9puC8i+C9puC9oOC9suC8i+C9keC9vOC9k+C8i+C9o+C9tOC8i+C9nuC9suC9luC8i+C9keC9lOC+seC9keC8i+C9oOC9luC9keC8i+C9mOC8i+C9muC9tOC9guC9puC8jSIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIHJtIGZvciBjbGVhbnVwIgorI34gbXNnc3RyICLgvYLgvZngvYTgvIvgvZHgvYLgvIvgvZbgvZ/gvbzgvIvgvZPgvbLgvaDgvbLgvIvgvZHgvbzgvZPgvIvgvaPgvbTgvIvgvajgvaLgvIvgvajgvbrgvZjgvIvgvaPgvYLgvIvgvaPgvbrgvZPgvIvgvaDgvZDgvZbgvIvgvZPgvbLgvIvgvaDgvZDgvbTgvabgvIvgvaTgvbzgvaLgvIvgvaDgvZbgvrHgvbTgvYTgvIvgvaHgvbzgvZHgvI0iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiIgorI34gIiVzIGRlYnVnZ2luZyBvcHRpb24sIC0tZGVidWc9PG9jdGFsPiBvciAtRDxvY3RhbD46XG4iCisjfiAiXG4iCisjfiAiIG51bWJlciAgcmVmLiBpbiBzb3VyY2UgICBkZXNjcmlwdGlvblxuIgorI34gIiAgICAgIDEgICBnZW5lcmFsICAgICAgICAgICBHZW5lcmFsbHkgaGVscGZ1bCBwcm9ncmVzcyBpbmZvcm1hdGlvblxuIgorI34gIiAgICAgIDIgICBzY3JpcHRzICAgICAgICAgICBJbnZvY2F0aW9uIGFuZCBzdGF0dXMgb2YgbWFpbnRhaW5lciBzY3JpcHRzXG4iCisjfiAiICAgICAxMCAgIGVhY2hmaWxlICAgICAgICAgIE91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZFxuIgorI34gIiAgICAxMDAgICBlYWNoZmlsZWRldGFpbCAgICBMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZFxuIgorI34gIiAgICAgMjAgICBjb25mZiAgICAgICAgICAgICBPdXRwdXQgZm9yIGVhY2ggY29uZmlndXJhdGlvbiBmaWxlXG4iCisjfiAiICAgIDIwMCAgIGNvbmZmZGV0YWlsICAgICAgIExvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZVxuIgorI34gIiAgICAgNDAgICBkZXBjb24gICAgICAgICAgICBEZXBlbmRlbmNpZXMgYW5kIGNvbmZsaWN0c1xuIgorI34gIiAgICA0MDAgICBkZXBjb25kZXRhaWwgICAgICBMb3RzIG9mIGRlcGVuZGVuY2llcy9jb25mbGljdHMgb3V0cHV0XG4iCisjfiAiICAxMDAwMCAgIHRyaWdnZXJzICAgICAgICAgIFRyaWdnZXIgYWN0aXZhdGlvbiBhbmQgcHJvY2Vzc2luZ1xuIgorI34gIiAgMjAwMDAgICB0cmlnZ2Vyc2RldGFpbCAgICBMb3RzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnNcbiIKKyN+ICIgIDQwMDAwICAgdHJpZ2dlcnNzdHVwaWQgICAgU2lsbHkgYW1vdW50cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzXG4iCisjfiAiICAgMTAwMCAgIHZlcnl2ZXJib3NlICAgICAgIExvdHMgb2YgZHJpdmVsIGFib3V0IGVnIHRoZSBkcGtnL2luZm8gIgorI34gImRpcmVjdG9yeVxuIgorI34gIiAgIDIwMDAgICBzdHVwaWRseXZlcmJvc2UgICBJbnNhbmUgYW1vdW50cyBvZiBkcml2ZWxcbiIKKyN+ICJcbiIKKyN+ICJEZWJ1Z2dpbmcgb3B0aW9ucyBhcmUgYmUgbWl4ZWQgdXNpbmcgYml0d2lzZS1vci5cbiIKKyN+ICJOb3RlIHRoYXQgdGhlIG1lYW5pbmdzIGFuZCB2YWx1ZXMgYXJlIHN1YmplY3QgdG8gY2hhbmdlLlxuIgorI34gbXNnc3RyICIiCisjfiAiJXMg4L2i4L6Q4L6x4L264L2R4LyL4L2m4L264L2j4LyL4L2g4L2W4L2R4LyL4L2T4L2y4L2g4L2y4LyL4L2C4L2R4L2Y4LyL4L2B4LyL4L2a4L204LyLIC0t4L2i4L6Q4L6x4L264L2T4LyL4L2m4L264L2j4LyLPTxvY3RhbD4g4L2h4L2E4LyL4L2T4LyLIC1EPG9jdGFsPjpcbiIKKyN+ICJcbiIKKyN+ICIg4L2o4L2E4LyLICByZWYuIOC9oOC9luC+seC9tOC9hOC8i+C9geC9tOC9guC9puC8iyAg4L2g4L2C4L6y4L264L2j4LyL4L2W4L2k4L2R4LyL4L2T4L2E4LyL4L2j4L204LyLXG4iCisjfiAiICAgICAgMSAgIOC9oeC9vOC9hOC9puC8i+C9geC+seC9luC8iyAgICAgICAgICAg4L2m4L6k4L6x4L2y4L2i4LyL4L2W4L2P4L2E4LyL4L2j4L204LyL4L2V4L2T4LyL4L2Q4L284L2C4L2m4LyL4L2U4L2g4L2y4LyL4L2h4L2i4LyL4L2g4L2V4L264L2j4LyL4L2W4L2i4L6h4LyL4L2R4L284L2T4LyLXG4iCisjfiAiICAgICAgMiAgIOC9oeC9suC9guC8i+C9muC9tOC9guC9puC8iyAgICAgICAgICAg4L2i4L6S4L6x4L204L2T4LyL4L2m4L6Q4L6x4L284L2E4LyL4L2U4L2g4L2y4LyL4L2h4L2y4L2C4LyL4L2a4L204L2C4L2m4LyL4L2A4L6x4L2y4LyLIOC9o+C9puC8i+C9luC9gOC9vOC9o+C8i+C9keC9hOC8i+C9guC9k+C9puC8i+C9muC9keC8jVxuIgorI34gIiAgICAgMTAgICDgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIvgvaLgvbrgvIvgvaLgvbrgvIvgvZbgvZ7gvbLgvZPgvIsgICAgICAgICAg4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2i4L264LyL4L2i4L264L2g4L2y4LyL4L2R4L284L2T4LyL4L2j4L204LyL4L2o4L2g4L204L2K4L2y4LyL4L2U4L204L2K4L2y4LyLIOC9o+C9puC8i+C9puC+puC+seC9vOC9ouC8i+C9oOC9luC9keC8i+C9oeC9vOC9keC8jVxuIgorI34gIiAgICAxMDAgICDgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIvgvaLgvbrgvIvgvaLgvbrgvaDgvbLgvIvgvaLgvpLgvrHgvabgvIvgvZbgvaTgvZHgvItsICAgIOC9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9ouC9uuC8i+C9ouC9uuC9oOC9suC8i+C9keC9vOC9k+C8i+C9o+C9tOC8i+C9qOC9oOC9tOC9iuC9suC8i+C9lOC9tOC9iuC9suC8i+C9o+C9uuC8i+C9pOC8i+C9o+C9puC8i+C9puC+puC+seC9vOC9ouC8i+C9oOC9luC9keC8iyIKKyN+ICLgvaHgvbzgvZHgvZTgvI1cbiIKKyN+ICIgICAgIDIwICAg4L2A4L284L2T4L2V4L2y4LyL4L2o4L264L2V4LyLICAgICAgICAgICAgIOC9ouC9suC9mOC8i+C9puC+kuC+suC9suC9guC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9ouC9uuC8i+C9ouC9uuC9oOC9suC8i+C9keC9vOC9k+C8i+C9o+C9tOC8i+C9qOC9oOC9tOC9iuC9suC8i+C9lOC9tOC9iuC9suC8jU91dHB1dCBmb3IgIgorI34gImVhY2ggY29uZmlndXJhdGlvbiBmaWxlXG4iCisjfiAiICAgIDIwMCAgIOC9gOC9vOC9k+C9leC9suC8i+C9qOC9uuC9leC8i+C9ouC+kuC+seC9puC8i+C9luC9pOC9kWwgICAgICAg4L2i4L2y4L2Y4LyL4L2m4L6S4L6y4L2y4L2C4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2i4L264LyL4L2i4L264L2g4L2y4LyL4L2R4L284L2T4LyL4L2j4L204LyL4L2o4L2g4L204L2K4L2y4LyL4L2U4L204L2K4L2y4LyL4L2j4L264LyL4L2kXG4iCisjfiAiICAgICA0MCAgIOC9jOC9uuC9lOC8i+C9gOC9vOC9k+C8iyAgICAgICAgICAgIOC9ouC+n+C9uuC9k+C8i+C9oOC9luC+suC9uuC9o+C8i+C9keC9hOC8i+C9mOC9suC8i+C9mOC9kOC9tOC9k+C8i+C9lOC8i+C9muC9tOC8jVxuIgorI34gIiAgICA0MDAgICDgvYzgvbrgvZTgvIvgvYDgvbzgvZPgvIvgvaLgvpLgvrHgvabgvIvgvZbgvaTgvZHgvIsgICAgICDgvaLgvp/gvbrgvZPgvIvgvaDgvZbgvrLgvbrgvaPgvIsv4L2Y4L2y4LyL4L2Y4L2Q4L204L2T4LyL4L2U4L2g4L2y4LyL4L2o4L2h4L204L2K4L2y4LyL4L2U4L204L2K4L2y4LyL4L2j4L264LyL4L2kXG4iCisjfiAiICAgMTAwMCAgIOC9p+C8i+C9heC9hOC8i+C9muC9suC9guC8i+C9mOC9hOC8iyAgICAgICDgvZHgvZTgvbrgvaLgvIvgvZPgvIsgZHBrZy/gvZbgvaLgvqHgvIvgvZHgvbzgvZPgvIvgvabgvqPgvbzgvZHgvIvgvZDgvbzgvIvgvabgvpDgvbzgvaLgvIvgvaPgvabgvIsg4L2C4L6z4L264L2T4LyL4L2C4L2P4L2Y4LyL4L2j4L264LyL4L2kXG4iCisjfiAiICAgMjAwMCAgIOC9guC+s+C9uuC9k+C8i+C9o+C+kOC9tOC9guC9puC8i+C9gOC+seC9suC8i+C9muC9suC9guC8i+C9mOC9hOC8iyAgIOC9guC+s+C9uuC9k+C8i+C9guC9j+C9mOC8i+C9guC+seC9suC8i+C9puC+qOC+seC9vOC9k+C8i+C9lOC9oOC9suC8i+C9luC9puC+oeC9vOC9mOC9puC8jVxuIgorI34gIlxuIgorI34gIuC9ouC+kOC+seC9uuC9k+C8i+C9puC9uuC9o+C8i+C9oOC9luC9keC8i+C9k+C9suC9oOC9suC8i+C9guC9keC9mOC8i+C9geC8i+C9muC9tOC8iyDgvZbgvbLgvYrgvbLgvIvgvZHgvYTgvIvgvaDgvYHgvrLgvbLgvaPgvIst4L2h4L2E4LyL4L2T4LyLIOC9o+C9guC8i+C9o+C9uuC9k+C8i+C9oOC9kOC9luC8i+C9kOC9vOC9guC8iyDgvabgvrPgvIvgvZbgvabgvrLgvbrgvIvgvaDgvbzgvYTgvIvgvI1cbiIKKyN+ICLgvZHgvbzgvZPgvIvgvZHgvYLgvIvgvZHgvYTgvIvgvYLgvZPgvabgvIvgvYLgvbzgvYTgvIvgvZrgvbTgvIvgvZbgvabgvpLgvrHgvbTgvaLgvIvgvZbgvYXgvbzgvabgvIvgvaDgvZbgvZHgvIvgvZPgvbLgvaDgvbLgvIvgvaDgvbzgvYLgvIvgvaPgvbTgvIvgvZrgvbTgvZHgvZTgvIvgvajgvbLgvZPgvIvgvZHgvrLgvZPgvIvgvZHgvYLgvbxcbiIKKworIywgZnV6enkKKyN+IG1zZ2lkICIiCisjfiAiJXMgZm9yY2luZyBvcHRpb25zIC0gY29udHJvbCBiZWhhdmlvdXIgd2hlbiBwcm9ibGVtcyBmb3VuZDpcbiIKKyN+ICIgIHdhcm4gYnV0IGNvbnRpbnVlOiAgLS1mb3JjZS08dGhpbmc+LDx0aGluZz4sLi4uXG4iCisjfiAiICBzdG9wIHdpdGggZXJyb3I6ICAgIC0tcmVmdXNlLTx0aGluZz4sPHRoaW5nPiwuLi4gfCAtLW5vLWZvcmNlLSIKKyN+ICI8dGhpbmc+LC4uLlxuIgorI34gIiBGb3JjaW5nIHRoaW5nczpcbiIKKyN+ICIgIGFsbCBbIV0gICAgICAgICAgICAgICAgU2V0IGFsbCBmb3JjZSBvcHRpb25zXG4iCisjfiAiICBkb3duZ3JhZGUgWypdICAgICAgICAgIFJlcGxhY2UgYSBwYWNrYWdlIHdpdGggYSBsb3dlciB2ZXJzaW9uXG4iCisjfiAiICBjb25maWd1cmUtYW55ICAgICAgICAgIENvbmZpZ3VyZSBhbnkgcGFja2FnZSB3aGljaCBtYXkgaGVscCB0aGlzIG9uZVxuIgorI34gIiAgaG9sZCAgICAgICAgICAgICAgICAgICBQcm9jZXNzIGluY2lkZW50YWwgcGFja2FnZXMgZXZlbiB3aGVuIG9uIGhvbGRcbiIKKyN+ICIgIGJhZC1wYXRoICAgICAgICAgICAgICAgUEFUSCBpcyBtaXNzaW5nIGltcG9ydGFudCBwcm9ncmFtcywgcHJvYmxlbXMgIgorI34gImxpa2VseVxuIgorI34gIiAgbm90LXJvb3QgICAgICAgICAgICAgICBUcnkgdG8gKGRlKWluc3RhbGwgdGhpbmdzIGV2ZW4gd2hlbiBub3Qgcm9vdFxuIgorI34gIiAgb3ZlcndyaXRlICAgICAgICAgICAgICBPdmVyd3JpdGUgYSBmaWxlIGZyb20gb25lIHBhY2thZ2Ugd2l0aCBhbm90aGVyXG4iCisjfiAiICBvdmVyd3JpdGUtZGl2ZXJ0ZWQgICAgIE92ZXJ3cml0ZSBhIGRpdmVydGVkIGZpbGUgd2l0aCBhbiB1bmRpdmVydGVkICIKKyN+ICJ2ZXJzaW9uXG4iCisjfiAiICBiYWQtdmVyaWZ5ICAgICAgICAgICAgIEluc3RhbGwgYSBwYWNrYWdlIGV2ZW4gaWYgaXQgZmFpbHMgYXV0aGVudGljaXR5ICIKKyN+ICJjaGVja1xuIgorI34gIiAgZGVwZW5kcy12ZXJzaW9uIFshXSAgICBUdXJuIGRlcGVuZGVuY3kgdmVyc2lvbiBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzXG4iCisjfiAiICBkZXBlbmRzIFshXSAgICAgICAgICAgIFR1cm4gYWxsIGRlcGVuZGVuY3kgcHJvYmxlbXMgaW50byB3YXJuaW5nc1xuIgorI34gIiAgY29uZm5ldyBbIV0gICAgICAgICAgICBBbHdheXMgdXNlIHRoZSBuZXcgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHRcbiIKKyN+ICIgIGNvbmZvbGQgWyFdICAgICAgICAgICAgQWx3YXlzIHVzZSB0aGUgb2xkIGNvbmZpZyBmaWxlcywgZG9uJ3QgcHJvbXB0XG4iCisjfiAiICBjb25mZGVmIFshXSAgICAgICAgICAgIFVzZSB0aGUgZGVmYXVsdCBvcHRpb24gZm9yIG5ldyBjb25maWcgZmlsZXMgaWYgIgorI34gIm9uZVxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICBpcyBhdmFpbGFibGUsIGRvbid0IHByb21wdC4gSWYgbm8gZGVmYXVsdCBjYW4gYmUgIgorI34gImZvdW5kLFxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICB5b3Ugd2lsbCBiZSBwcm9tcHRlZCB1bmxlc3Mgb25lIG9mIHRoZSBjb25mb2xkICIKKyN+ICJvclxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICBjb25mbmV3IG9wdGlvbnMgaXMgYWxzbyBnaXZlblxuIgorI34gIiAgY29uZm1pc3MgWyFdICAgICAgICAgICBBbHdheXMgaW5zdGFsbCBtaXNzaW5nIGNvbmZpZyBmaWxlc1xuIgorI34gIiAgY29uZmFzayBbIV0gICAgICAgICAgICBPZmZlciB0byByZXBsYWNlIGNvbmZpZyBmaWxlcyB3aXRoIG5vIG5ldyAiCisjfiAidmVyc2lvbnNcbiIKKyN+ICIgIGJyZWFrcyBbIV0gICAgICAgICAgICAgSW5zdGFsbCBldmVuIGlmIGl0IHdvdWxkIGJyZWFrIGFub3RoZXIgcGFja2FnZVxuIgorI34gIiAgY29uZmxpY3RzIFshXSAgICAgICAgICBBbGxvdyBpbnN0YWxsYXRpb24gb2YgY29uZmxpY3RpbmcgcGFja2FnZXNcbiIKKyN+ICIgIGFyY2hpdGVjdHVyZSBbIV0gICAgICAgUHJvY2VzcyBldmVuIHBhY2thZ2VzIHdpdGggd3JvbmcgYXJjaGl0ZWN0dXJlXG4iCisjfiAiICBvdmVyd3JpdGUtZGlyIFshXSAgICAgIE92ZXJ3cml0ZSBvbmUgcGFja2FnZSdzIGRpcmVjdG9yeSB3aXRoIGFub3RoZXIncyAiCisjfiAiZmlsZVxuIgorI34gIiAgdW5zYWZlLWlvIFshXSAgICAgICAgICBEbyBub3QgcGVyZm9ybSBzYWZlIEkvTyBvcGVyYXRpb25zIHdoZW4gIgorI34gInVucGFja2luZ1xuIgorI34gIiAgcmVtb3ZlLXJlaW5zdHJlcSBbIV0gICBSZW1vdmUgcGFja2FnZXMgd2hpY2ggcmVxdWlyZSBpbnN0YWxsYXRpb25cbiIKKyN+ICIgIHJlbW92ZS1lc3NlbnRpYWwgWyFdICAgUmVtb3ZlIGFuIGVzc2VudGlhbCBwYWNrYWdlXG4iCisjfiAiXG4iCisjfiAiV0FSTklORyAtIHVzZSBvZiBvcHRpb25zIG1hcmtlZCBbIV0gY2FuIHNlcmlvdXNseSBkYW1hZ2UgeW91ciAiCisjfiAiaW5zdGFsbGF0aW9uLlxuIgorI34gIkZvcmNpbmcgb3B0aW9ucyBtYXJrZWQgWypdIGFyZSBlbmFibGVkIGJ5IGRlZmF1bHQuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICIlcyDgvZbgvYTgvIvgvZbgvZngvbzgvYTgvIvgvZPgvbLgvaDgvbLgvIvgvYLgvZHgvZjgvIvgvYHgvIvgvZrgvbTgvIsgLSDgvZHgvYDgvaDgvIvgvYTgvaPgvIvgvZrgvbTgvIvgvaDgvZDgvbzgvZbgvIvgvZTgvaDgvbLgvIvgvabgvpDgvZbgvabgvIsg4L2m4L6k4L6x4L284L2R4LyL4L2j4L2Y4LyL4L2a4L2R4LyL4L2g4L2b4L2y4L2T4LyL4L2g4L2W4L2R4LyLOlxuIgorI34gIiAg4L2J4L264L2T4LyL4L2W4L2i4L6h4LyL4L2g4L2W4L2R4LyLIOC9keC9uuC8i+C9oOC9luC9keC9neC8i+C9keC8i+C9oOC9leC+suC9vOC8i+C9mOC9kOC9tOC9keC8izogIC0t4L2W4L2E4LyL4L2W4L2Z4L284L2E4LyL4L2T4L2y4LyLLTx0aGluZz4sPHRoaW5nPiwuLi5cbiIKKyN+ICIgIOC9oOC9m+C9vOC9o+C9luC8i+C9keC9hOC8i+C9guC9heC9suC9guC8i+C9geC9ouC8i+C9luC9gOC9gjogICAgLS3gvYTgvbzgvabgvIvgvaPgvbrgvZPgvIvgvZjgvbLgvIvgvaDgvZbgvZHgvIvgvZPgvbLgvIstPHRoaW5nPiw8dGhpbmc+LC4uLiB8IC0t4L2W4L2E4LyL4L2W4L2Z4L284L2E4LyLIgorI34gIuC9k+C9suC8iy3gvZjgvbrgvZHgvIstPHRoaW5nPiwuLi5cbiIKKyN+ICIg4L2W4L2E4LyL4L2W4L2Z4L284L2E4LyL4L2T4L2y4L2g4L2y4LyL4L2F4LyL4L2j4LyL4L2a4L204LyLOlxuIgorI34gIiAg4L2C4L264LyL4L2i4LyLIFshXSAgICAgICAgICAgICAgIOC9luC9hOC8i+C9luC9meC9vOC9hOC8i+C9k+C9suC9oOC9suC8i+C9guC9keC9mOC8i+C9geC8i+C9guC9uuC8i+C9ouC8i+C9guC9nuC9suC8i+C9puC+kuC+suC9suC9guC8i+C9oOC9luC9keC8i1xuIgorI34gIiAg4L2R4L2Y4L2g4LyL4L2i4L2y4L2Y4LyLIFsqXSAgICAgICAgICDgvZHgvZjgvaDgvIvgvZjgvbLgvIvgvZDgvbzgvZPgvIvgvaLgvbLgvZjgvIvgvZHgvYTgvIvgvYLgvYXgvbLgvYLgvIvgvYHgvaLgvIvgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIvgvYLgvYXgvbLgvYLgvIvgvZrgvZbgvIvgvZbgvZngvbTgvYLgvabgvI1cbiIKKyN+ICIgIOC9guC8i+C9puC+puC9uuC8i+C9ouC9tOC9hOC8iy3gvaLgvbLgvZjgvIvgvabgvpLgvrLgvbLgvYLgvIvgvaDgvZbgvZHgvIsgICAgICAgICAg4L2g4LyL4L2T4L2y4LyL4L2g4L2R4L2y4LyL4L2j4L204LyL4L2V4L2T4LyL4L2Q4L284L2C4LyL4L2T4L2y4LyL4L2o4L2y4L2T4LyL4L2Y4L2y4LyL4L2Q4L204L2Y4LyL4L2m4L6S4L6y4L2y4L2j4LyL4L2C4LyL4L2m4L6m4L264LyL4L2i4L204L2E4LyL4L2i4L2y4L2Y4LyL4L2m4L6S4L6y4L2y4L2C4LyLIgorI34gIuC9oOC9luC9keC8jVxuIgorI34gIiAg4L2g4L2G4L2E4LyLICAgICAgICAgICAgICAgICAgIOC9hOC9uuC9puC8i+C9mOC9uuC9keC8i+C9keC9tOC8i+C9oOC9luC+seC9tOC9hOC8i+C9luC9oOC9suC8i+C9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8i+C9muC9tOC8i+C9oOC9huC9hOC8i+C9puC+n+C9uuC8i+C9oeC9vOC9keC8i+C9lOC9oOC9suC8i+C9puC+kOC9luC9puC8i+C9oeC9hOC8i+C9o+C9puC8i+C9puC+puC+seC9vOC9ouC8iyIKKyN+ICLgvaDgvZbgvZHgvI1cbiIKKyN+ICIgIOC9oOC9guC+suC9tOC9o+C8i+C9o+C9mOC8iy3gvZbgvrHgvYTgvIvgvYngvbrgvabgvIsgICAgICAgICAgICAgICDgvaDgvYLgvrLgvbTgvaPgvIvgvaPgvZjgvIvgvaDgvZHgvbLgvIvgvYLgvbLgvabgvIvgvYLgvaPgvIvgvYXgvZPgvIvgvaPgvabgvIvgvaLgvbLgvZjgvIvgvZrgvbTgvIvgvZbgvaLgvrPgvYLgvIvgvabgvp/gvbzgvaLgvIvgvZ7gvbTgvYLgvabgvIvgvZPgvbTgvYIgIgorI34gIuC9keC9gOC9oOC8i+C9hOC9o+C8i+C9muC9tOC8i1xuIgorI34gIiAg4L2i4L6p4LyL4L2W4LyLLeC9mOC9uuC9k+C8i+C9mOC9suC8iyAgICAgICAgICAgICAgIOC9heC8i+C9o+C8i+C9muC9tOC8i+C9ouC+qeC8i+C9luC8i+C9mOC9uuC9k+C8i+C9lOC9oOC9suC8i+C9puC+kOC9luC9puC8i+C9oeC9hOC8i+C9guC9nuC9suC8i+C9luC9meC9tOC9guC9puC8iyjgvZjgvbLgvIsp4L2g4L2W4L2R4LyL4L2T4L2y4L2g4L2y4LyL4L2g4L2W4L2R4LyLIgorI34gIuC9ouC+qeC9vOC9o+C8i+C9luC9puC+kOC+seC9uuC9keC8jVxuIgorI34gIiAg4L2f4L204L2i4LyL4L2W4L2e4L2C4LyLICAgICAgICAgICAgICDgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIvgvYXgvbLgvYLgvIvgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIvgvYLgvYXgvbLgvYLgvIvgvaPgvabgvIvgvYLgvZ7gvZPgvIvgvZjgvbLgvIvgvYLgvYXgvbLgvYLgvIvgvZHgvYTgvIvgvYLgvYXgvbLgvYLgvIvgvYHgvaLgvIvgvZ7gvbTgvaLgvIvgvZbgvZ7gvYLgvIsiCisjfiAi4L2g4L2W4L2R4LyNXG4iCisjfiAiICDgvZ/gvbTgvaLgvIvgvZbgvZ7gvYLgvIst4L2B4LyL4L2V4L6x4L284L2C4L2m4LyL4L2m4L6S4L6x4L204L2i4LyL4L2h4L284L2R4L2U4LyLICAgICDgvYHgvIvgvZXgvrHgvbzgvYLgvabgvIvgvabgvpLgvrHgvbTgvaLgvIvgvaHgvbzgvZHgvIvgvZTgvaDgvbLgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIvgvYXgvbLgvYLgvIvgvYHgvIvgvZXgvrHgvbzgvYLgvabgvIvgvZjgvIvgvabgvpLgvrHgvbTgvaLgvIvgvZbgvaLgvIvgvaHgvbzgvZHgvIvgvZTgvaDgvbLgvIsiCisjfiAi4L2Q4L284L2T4LyL4L2i4L2y4L2Y4LyL4L2R4L2E4LyL4L2C4L2F4L2y4L2C4LyL4L2B4L2i4LyL4L2f4L204L2i4LyL4L2W4L2e4L2C4LyL4L2g4L2W4L2R4LyNXG4iCisjfiAiICDgvZbgvZHgvbrgvZPgvIvgvabgvqbgvrHgvbzgvaLgvIst4L2W4L6x4L2E4LyL4L2J4L264L2m4LyLICAgICAgICAgICAgIOC9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8i+C9oOC9keC9suC8iyDgvZbgvZHgvbrgvZPgvIvgvZbgvaTgvZHgvIvgvYDgvrHgvbLgvIvgvZ7gvbLgvZbgvIvgvZHgvZTgvrHgvZHgvIvgvaDgvZDgvbTgvabgvIvgvaTgvbzgvaLgvIvgvZbgvrHgvbTgvYTgvIvgvaLgvbTgvYTgvIvgvaHgvYTgvIsiCisjfiAi4L2C4L2e4L2y4LyL4L2W4L2Z4L204L2C4L2m4LyL4L2g4L2W4L2R4LyNXG4iCisjfiAiICDgvaLgvp/gvbrgvZPgvIvgvaDgvZbgvrLgvbrgvaPgvIvgvYLgvrHgvbLgvIst4L2Q4L284L2T4LyL4L2i4L2y4L2Y4LyLIFshXSAgICDgvaLgvp/gvbrgvZPgvIvgvaDgvZbgvrLgvbrgvaPgvIvgvZDgvbzgvZPgvIvgvaLgvbLgvZjgvIvgvYLgvrHgvbLgvIvgvZHgvYDgvaDgvIvgvYTgvaPgvIvgvZrgvbTgvIvgvYngvbrgvZPgvIvgvZbgvaLgvqHgvIvgvZPgvYTgvIvgvaPgvbTgvIvgvZbgvabgvpLgvrHgvbLgvaLgvI1cbiIKKyN+ICIgIOC9ouC+n+C9uuC9k+C8i+C9oOC9luC+suC9uuC9o+C8i+C9muC9tOC8iyBbIV0gICAgICAgICAgICDgvaLgvp/gvbrgvZPgvIvgvaDgvZbgvrLgvbrgvaPgvIvgvYLgvrHgvbLgvIvgvZHgvYDgvaDgvIvgvYTgvaPgvIvgvZrgvbTgvIvgvYngvbrgvZPgvIvgvZbgvaLgvqHgvIvgvZPgvYTgvIvgvaPgvbTgvIvgvZbgvabgvpLgvrHgvbLgvaLgvI1cbiIKKyN+ICIgIOC9gOC9seC9vOC9k+C9leC8i+C9k+C9suC9oOC9tOC8iyBbIV0gICAgICAgICAgICDgvajgvIvgvaLgvp/gvYLgvIvgvaLgvYTgvIvgvaLgvbLgvZjgvIvgvabgvpLgvrLgvbLgvYLgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIvgvYLgvabgvaLgvZTgvIvgvaPgvYLgvIvgvaPgvbrgvZPgvIvgvaDgvZDgvZbgvIsg4L2T4L204L2m4LyL4L2m4L6k4L264L2j4LyL4L2Y4LyLIgorI34gIuC9oOC9luC9keC8jVxuIgorI34gIiAg4L2A4L2x4L284L2T4L2V4LyL4L2o4L284L2j4L2M4L2y4LyLIFshXSAgICAgICAgICAgIOC9qOC8i+C9ouC+n+C9guC8i+C9ouC9hOC8i+C9ouC9suC9mOC8i+C9puC+kuC+suC9suC9guC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9ouC+meC9suC9hOC9mOC8i+C9muC9tOC8i+C9o+C9guC8i+C9o+C9uuC9k+C8i+C9oOC9kOC9luC8iyDgvZPgvbTgvabgvIvgvabgvqTgvbrgvaPgvIvgvZjgvIsiCisjfiAi4L2g4L2W4L2R4LyNXG4iCisjfiAiICDgvYDgvbHgvbzgvZPgvZXgvIvgvYzgvbrgvZXgvIsgWyFdICAgICAgICAgICAg4L2i4L2y4L2Y4LyL4L2m4L6S4L6y4L2y4L2C4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2C4L2m4L2i4L2U4LyL4L2a4L204L2g4L2y4LyL4L2R4L284L2T4LyL4L2j4L204LyL4L2m4L6U4L284L2T4LyL4L2m4L6S4L6y4L2y4L2C4LyL4L2g4L2R4L2y4LyL4L2j4L2C4LyL4L2j4L264L2T4LyL4L2g4L2Q4L2W4LyLIOC9guC8iyIKKyN+ICLgvZHgvbrgvZjgvIvgvYXgvYbgvbLgvYLgvIvgvabgvqbgvbrgvIsg4L2C4L2F4L2y4L2C4LyLXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIOC9oOC9kOC9vOC9luC8i+C9muC9tOC9guC9puC9lOC8i+C9oeC9vOC9keC9lOC8i+C9qOC9suC9k+C8i+C9lOC8i+C9heC9suC9k+C8iyDgvZPgvbTgvabgvIvgvabgvqTgvbrgvaPgvIvgvZjgvIvgvaDgvZbgvZHgvI0uIOC9puC+lOC9vOC9k+C8i+C9puC+kuC+suC9suC9guC8i+C9guC9heC9suC9guC8i+C9oeC9hOC8iyIKKyN+ICLgvZjgvIvgvaDgvZDgvbzgvZbgvIvgvajgvbLgvZPgvIvgvZTgvIvgvYXgvbLgvZPgvItcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAg4L2B4L6x4L284L2R4LyL4L2j4L204LyLIOC9k+C9tOC9puC8i+C9puC+pOC9uuC9o+C8i+C9oOC9luC9keC8i+C9oOC9vOC9hOC8iyDgvYDgvbHgvbzgvZPgvZXgvIvgvajgvbzgvaPgvYzgvbLgvIsg4L2h4L2E4LyL4L2TXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIOC9gOC9seC9vOC9k+C9leC8i+C9k+C9suC9oOC9tOC8iyDgvYLgvZHgvZjgvIvgvYHgvIvgvZrgvbTgvIvgvaHgvYTgvIvgvZjgvIvgvZbgvrHgvbLgvZPgvIvgvZrgvbTgvZPgvI1cbiIKKyN+ICIgIOC9gOC9seC9vOC9k+C9leC8i+C9mOC9suC9puC9suC8iyBbIV0gICAgICAgICAgIOC9qOC8i+C9ouC+n+C9guC8i+C9ouC9hOC8i+C9luC9ouC+s+C9guC8i+C9puC+n+C9vOC9ouC8i+C9nuC9tOC9guC9puC8i+C9oeC9vOC9keC8i+C9lOC9oOC9suC8i+C9ouC9suC9mOC8i+C9puC+kuC+suC9suC9guC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9muC9tOC8i+C9guC9nuC9suC8i+C9luC9meC9tOC9guC9puC8iyIKKyN+ICLgvaDgvZbgvZHgvI1cbiIKKyN+ICIgIOC9mOC9suC8i+C9mOC9kOC9tOC9k+C8i+C9lOC8iyBbIV0gICAgICAgICAg4L2Y4L2y4LyL4L2Y4L2Q4L204L2T4LyL4L2U4L2g4L2y4LyL4L2Q4L204L2Y4LyL4L2m4L6S4L6y4L2y4L2j4LyL4L2a4L204L2g4L2y4LyL4L2C4L2e4L2y4LyL4L2W4L2Z4L204L2C4L2m4LyL4L2g4L2W4L2R4LyL4L2T4L2y4LyL4L2g4L2W4L2R4LyL4L2W4L2F4L204L2CXG4iCisjfiAiICDgvZbgvZ/gvbzgvIvgvZbgvYDgvbzgvZHgvIsgWyFdICAgICAgIOC9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8i+C9muC9tOC8i+C9luC9n+C9vOC8i+C9luC9gOC9vOC9keC8i+C9ouC+q+C9tOC9k+C8i+C9mOC8i+C9keC9hOC8i+C9guC9heC9suC9guC8i+C9geC9ouC8i+C9oOC9luC9keC8i+C9luC9oOC9suC8i+C9puC+kOC9luC9puC8i+C9oeC9hOC8i+C9o+C9puC8i+C9puC+puC+seC9vOC9ouC8iyIKKyN+ICLgvaDgvZbgvZHgvI1cbiIKKyN+ICIgIOC9n+C9tOC9ouC8i+C9luC9nuC9guC8iy3gvabgvqPgvbzgvZHgvIvgvZDgvbzgvIsgWyFdICAgICAg4L2Q4L204L2Y4LyL4L2m4L6S4L6y4L2y4L2j4LyL4L2C4L6x4L2y4LyL4L2m4L6j4L284L2R4LyL4L2Q4L284LyL4L2C4L2F4L2y4L2C4LyL4L2C4L2e4L2T4LyL4L2Y4L2y4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2R4L2E4LyL4L2C4L2F4L2y4L2C4LyL4L2B4L2i4LyL4L2f4L204L2i4LyL4L2W4L2e4L2C4LyLIgorI34gIuC9oOC9luC9keC8jVxuIgorI34gIiAg4L2i4L6p4LyL4L2W4L2m4L6Q4L6y4L2R4LyL4L2C4L2P4L2E4LyLLeC9ouC9suC8i+C9qOC9suC9k+C9puC9suC9iuC9suC8i+C9ouC9uuC9gCBbIV0gICDgvYLgvZ7gvbLgvIvgvZbgvZngvbTgvYLgvabgvIvgvZHgvYLgvbzgvabgvIvgvZjgvYHgvbzgvIvgvaHgvbzgvZHgvIvgvZjgvbLgvIvgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIvgvZrgvbTgvIvgvYLgvZ7gvbLgvIvgvZbgvZngvbTgvYLgvabgvIvgvaDgvZbgvZHgvI1cbiIKKyN+ICIgIOC9ouC+qeC8i+C9luC9puC+kOC+suC9keC8i+C9guC9j+C9hOC8iy3gvYHgvYLgvIvgvYbgvbrgvIvgvZjgvbLgvIsgWyFdICAg4L2B4L2C4LyL4L2F4L264LyL4L2W4L2g4L2y4LyL4L2Q4L204L2Y4LyL4L2m4L6S4L6y4L2y4L2j4LyL4L2C4L2F4L2y4L2C4LyL4L2i4L6p4LyL4L2W4L2m4L6Q4L6y4L2R4LyL4L2C4L2P4L2E4LyL4LyNXG4iCisjfiAiXG4iCisjfiAi4L2J4L264L2T4LyL4L2W4L2i4L6h4LyLIC0gWyFdIOC9ouC+n+C9guC9puC8i+C9luC9gOC9o+C8i+C9oeC9vOC9keC8i+C9lOC9oOC9suC8i+C9guC9keC9mOC8i+C9geC9oOC9suC8i+C9o+C9guC8i+C9o+C9uuC9k+C8i+C9guC+seC9suC9puC8iyDgvYHgvrHgvbzgvZHgvIvgvaLgvaDgvbLgvIvgvYLgvZ7gvbLgvIvgvZbgvZngvbTgvYLgvabgvIsg4L2g4L2a4L204L2W4LyL4L2F4L2T4LyL4L2m4L6m4L264LyL4L2Y4L264L2R4L2U4LyLIgorI34gIuC9guC9j+C9hOC8i+C9oOC9vOC9hOC8i+C8jVxuIgorI34gIuC9luC9hOC8i+C9luC9meC9vOC9hOC8i+C9k+C9suC9oOC9suC8i+C9guC9keC9mOC8i+C9geC8iyBbKl0g4L2i4L6f4L2C4L2m4LyL4L2W4L2A4L2j4LyL4L2h4L284L2R4LyL4L2Y4L2y4LyL4L2a4L204LyLIOC9puC+lOC9vOC9k+C8i+C9puC+kuC+suC9suC9guC8i+C9guC9suC9puC8i+C9puC+puC9uuC8i+C9o+C+leC9vOC9guC9puC8i+C9heC9k+C8i+C9luC9n+C9vOC8jVxuIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgZHBrZy1zcGxpdCB0byBzZWUgaWYgaXQncyBwYXJ0IG9mIGEgbXVsdGlwYXJ0ZXIiCisjfiBtc2dzdHIgIiIKKyN+ICLgvabgvqPgvIvgvZjgvYTgvIvgvZbgvYLgvbzgvIvgvZjgvbLgvIvgvYXgvbLgvYLgvIvgvYLgvbLgvIvgvaHgvZPgvIvgvaPgvYLgvIvgvajgvbLgvZPgvIvgvZjgvbrgvZPgvIvgvZbgvaPgvp8g4L2T4L2y4L2g4L2y4LyL4L2R4L284L2T4LyL4L2j4L2m4LyLZHBrZy3gvZbgvaTgvYLgvIvgvZPgvbLgvIvgvaPgvYLgvIvgvaPgvbrgvZPgvIvgvaDgvZDgvZbgvIvgvZPgvbLgvIvgvaPgvbTgvIvgvaDgvZDgvbTgvabgvIvgvaTgvbzgvaLgvIvgvZbgvrHgvbTgvYTgvIsiCisjfiAi4L2h4L284L2R4LyNIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWNsIGRlYnNpZy12ZXJpZnkiCisjfiBtc2dzdHIgIuC9jOC9uuC9luC8i+C9puC9suC9guC8iy3gvZbgvZHgvbrgvZPgvIvgvabgvqbgvrHgvbzgvaLgvIsg4L2j4L2C4LyL4L2j4L264L2T4LyL4L2g4L2Q4L2W4LyL4L2T4L2y4LyL4L2g4L2Q4L204L2m4LyL4L2k4L284L2i4LyL4L2W4L6x4L204L2E4LyL4L2h4L284L2R4L2U4LyNIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgZHBrZy1kZWIgdG8gZXh0cmFjdCBjb250cm9sIGluZm9ybWF0aW9uIgorI34gbXNnc3RyICIiCisjfiAi4L2a4L2R4LyL4L2g4L2b4L2y4L2T4LyL4L2W4L2i4L6h4LyL4L2R4L284L2T4LyL4L2V4L6x4L2y4L2i4LyL4L2g4L2R4L284L2T4LyL4L2g4L2W4L2R4LyL4L2T4L2y4L2g4L2y4LyL4L2R4L284L2T4LyL4L2j4L2m4LyLIGRwa2ctZGViIOC9o+C9guC8i+C9o+C9uuC9k+C8i+C9oOC9kOC9luC8i+C9k+C9suC8i+C9o+C9tOC8i+C9oOC9kOC9tOC9puC8i+C9pOC9vOC9ouC8i+C9oOC9luC+seC9tOC9hOC8i+C9oeC9vOC9keC8jSIKKworI34gbXNnaWQgInVuYWJsZSB0byBleGVjIGRwa2ctZGViIHRvIGdldCBmaWxlc3lzdGVtIGFyY2hpdmUiCisjfiBtc2dzdHIgIiIKKyN+ICLgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIvgvaLgvbLgvZjgvIvgvaPgvbTgvYLgvabgvIvgvaHgvbLgvYLgvIvgvZjgvZvgvbzgvZHgvIvgvaPgvbrgvZPgvIvgvZPgvbLgvaDgvbLgvIvgvZHgvbzgvZPgvIvgvaPgvabgvIsgZHBrZy1kZWIg4L2j4L2C4LyL4L2j4L264L2T4LyL4L2g4L2Q4L2W4LyL4L2T4L2y4LyL4L2j4L204LyL4L2g4L2Q4L204L2m4LyL4L2k4L284L2i4LyL4L2W4L6x4L204L2E4LyL4L2h4L284L2R4LyNIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSBkaXNhcHBlYXJpbmcgY29udHJvbCBpbmZvIGZpbGUgYCUuMjUwcyciCisjfiBtc2dzdHIgIuC9oeC9o+C8i+C9oOC9guC+seC9vOC8i+C9mOC9suC8i+C9muC9keC8i+C9oOC9m+C9suC9k+C8i+C9luC9ouC+oeC8i+C9keC9vOC9k+C8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8iyBgJS4yNTBzJyDgvZbgvY/gvbzgvZPgvIvgvYLgvY/gvYTgvIvgvZjgvIvgvZrgvbTgvYLgvabgvI0iCisKKyN+IG1zZ2lkICJkcGtnOiAlcyBub3QgZm91bmQuXG4iCisjfiBtc2dzdHIgImRwa2c6ICVzIOC9oOC9muC9vOC9o+C8i+C9mOC8i+C9oOC9kOC9vOC9luC8jVxuIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIC4uLi9ERUJJQU4iCisjfiBtc2dzdHIgIi4uLi9ERUJJQU4g4L2j4L204LyL4L2m4L2y4LyL4L2o4L264L2G4LyL4L2M4L2y4LyL4L2o4L2g4L2y4LyL4L2o4L2i4LyL4L2g4L2W4L2R4LyL4L2T4L2y4LyL4L2g4L2Q4L204L2m4LyL4L2k4L284L2i4LyL4L2W4L6x4L204L2E4LyL4L2h4L284L2R4LyNIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgdGFyIC1jZiIKKyN+IG1zZ3N0ciAi4L2K4L2i4LyLIC3gvabgvbLgvIvgvajgvbrgvZXgvIsg4L2j4L2C4LyL4L2j4L264L2T4LyL4L2g4L2Q4L2W4LyL4L2T4L2y4LyL4L2Q4L204L2m4LyL4L2k4L284L2i4LyL4L2W4L6x4L204L2E4LyL4L2h4L284L2R4LyNIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIG1ha2UgdG1wZmlsZSAoY29udHJvbCkiCisjfiBtc2dzdHIgIuC9guC9k+C9puC8i+C9puC+kOC9luC9puC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9luC9n+C9vOC8i+C9k+C9suC8i+C9oOC9kOC9tOC9puC8i+C9pOC9vOC9ouC8i+C9luC+seC9tOC9hOC8i+C9oeC9vOC9keC8iyjgvZrgvZHgvIvgvaDgvZvgvbLgvZPgvIspIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHVubGluayB0bXBmaWxlIChjb250cm9sKSwgJXMiCisjfiBtc2dzdHIgIuC9guC9k+C9puC8i+C9puC+kOC9luC9puC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9oOC9luC+suC9uuC9o+C8i+C9mOC9kOC9tOC9keC8i+C9oOC9luC9keC8i+C9k+C9suC8i+C9oOC9kOC9tOC9puC8i+C9pOC9vOC9ouC8i+C9luC+seC9tOC9hOC8i+C9oeC9vOC9keC8iyjgvZrgvZHgvIvgvaDgvZvgvbLgvZPgvIspICAlcyIKKworI34gbXNnaWQgImNvbnRyb2wiCisjfiBtc2dzdHIgIuC9muC9keC8i+C9oOC9m+C9suC9k+C8jSIKKworI34gbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdG1wZmlsZSAoY29udHJvbCkiCisjfiBtc2dzdHIgIuC9guC9k+C9puC8i+C9puC+kOC9luC9puC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9o+C9vOC9guC8i+C9luC9puC+kuC+seC9suC9ouC8i+C9k+C9suC8i+C9oOC9kOC9tOC9puC8i+C9pOC9vOC9ouC8i+C9luC+seC9tOC9hOC8i+C9oeC9vOC9keC8iyjgvZrgvZHgvIvgvaDgvZvgvbLgvZPgvIspIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGZzdGF0IHRtcGZpbGUgKGNvbnRyb2wpIgorI34gbXNnc3RyICLgvYLgvZPgvabgvIvgvabgvpDgvZbgvabgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIvgvajgvbrgvZXgvIvgvabgvbLgvIvgvYrgvbrgvYrgvbLgvIvgvaDgvZbgvZHgvIvgvZPgvbLgvIvgvaDgvZDgvbTgvabgvIvgvaTgvbzgvaLgvIvgvZbgvrHgvbTgvYTgvIvgvaHgvbzgvZHgvIso4L2a4L2R4LyL4L2g4L2b4L2y4L2T4LyLKSIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIGZpbmQiCisjfiBtc2dzdHIgIuC9oOC9muC9vOC9o+C8i+C9k+C9suC8i+C9o+C9guC8i+C9o+C9uuC9k+C8i+C9oOC9kOC9luC8i+C9k+C9suC8i+C9o+C9tOC8i+C9oOC9kOC9tOC9puC8i+C9pOC9vOC9ouC8i+C9luC+seC9tOC9hOC8i+C9oeC9vOC9keC9lOC8jSIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIHNoIC1jIG12IGZvby8qICZjIgorI34gbXNnc3RyICJzaCAtYyBtdiBmb28vKiAmYyDgvaPgvYLgvIvgvaPgvbrgvZPgvIvgvaDgvZDgvZbgvIvgvZPgvbLgvIvgvaPgvbTgvIvgvaDgvZDgvbTgvabgvIvgvaTgvbzgvaLgvIvgvaDgvZbgvrHgvbTgvYTgvIvgvaHgvbzgvZHgvZTgvI0iCisKKyN+IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSAlLjI1MHMgbGVuZ3RoIGNvbnRhaW5zIG51bGxzIgorI34gbXNnc3RyICLgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIsgYCUuMjUwcycg4L2g4L2R4L2y4LyL4L2E4L2T4LyL4L2F4L2T4LyL4L2o4L2y4L2T4LyLIC0gIGAlLjI1MHMnIOC9ouC9suC9hOC8i+C9muC9keC8i+C9gOC+seC9suC8i+C9k+C9hOC8i+C9k+C8i+C9puC+n+C9vOC9hOC8i+C9huC8i+C9muC9tOC8i+C9oeC9vOC9keC8jSIKKworI34gbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIG5lZ2F0aXZlIG1lbWJlciBsZW5ndGggJXppIgorI34gbXNnc3RyICLgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIsgJS4yNTBzIOC9oOC9keC9suC8i+C9hOC9k+C8i+C9heC9k+C8iyAtIOC9mOC9uuC9keC8i+C9huC8i+C9oOC9kOC9tOC9puC8i+C9mOC9suC9oOC9suC8i+C9ouC9suC9hOC8i+C9muC9keC8iyAlemkg4L2o4L2y4L2T4LyNIgorCisjfiBtc2dpZCAiZmFpbGVkIGdldHRpbmcgdGhlIGN1cnJlbnQgZmlsZSBwb3NpdGlvbiIKKyN+IG1zZ3N0ciAi4L2R4LyL4L2j4L6f4L284L2g4L2y4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2C4L2T4L2m4LyL4L2m4LyL4L2j4L264L2T4L2Y4LyL4L2R4LyL4L2g4L2Q4L204L2m4LyL4L2k4L284L2i4LyL4L2W4L6x4L204L2E4LyL4L2h4L284L2R4L2U4LyNIgorCisjfiBtc2dpZCAiZmFpbGVkIHNldHRpbmcgdGhlIGN1cnJlbnQgZmlsZSBwb3NpdGlvbiIKKyN+IG1zZ3N0ciAi4L2R4LyL4L2j4L6f4L284L2g4L2y4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2A4L6x4L2y4LyL4L2C4L2T4L2m4LyL4L2m4LyL4L2C4L2e4L2y4LyL4L2m4L6S4L6y4L2y4L2C4LyL4L2g4L2W4L2R4L2d4LyL4L2R4LyL4L2g4L2Q4L204L2m4LyL4L2k4L284L2i4LyL4L2W4L6x4L204L2E4LyL4L2h4L284L2R4L2U4LyNIgorCisjfiBtc2dpZCAidmVyc2lvbiBudW1iZXIiCisjfiBtc2dzdHIgIuC9kOC9vOC9k+C8i+C9ouC9suC9mOC8i+C9qOC9hOC8i+C8jSIKKworI34gbXNnaWQgImhlYWRlciBpbmZvIG1lbWJlciIKKyN+IG1zZ3N0ciAi4L2Y4L2C4L284LyL4L2h4L2y4L2C4LyL4L2W4L2i4L6h4LyL4L2R4L284L2T4LyL4L2g4L2Q4L204L2m4LyL4L2Y4L2y4LyNIgorCisjLCBmdXp6eQorI358IG1zZ2lkICJza2lwcGVkIG1lbWJlciBkYXRhIGZyb20gJXMiCisjfiBtc2dpZCAic2tpcHBlZCBjb250cm9sIGFyZWEgZnJvbSAlcyIKKyN+IG1zZ3N0ciAiJXMg4L2j4L2m4LyL4L2C4L284L2Y4LyL4L2g4L2C4L6x4L284LyL4L2h4L284L2R4LyL4L2U4L2g4L2y4LyL4L2g4L2Q4L204L2m4LyL4L2Y4L2y4LyL4L2C4L2T4L2R4LyL4L2m4L6h4L204L2R4LyNIgorCisjLCBmdXp6eQorI34gbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgdGVtcG9yYXJ5IGRpcmVjdG9yeSIKKyN+IG1zZ3N0ciAi4L2C4L2T4L2m4LyL4L2m4L6Q4L2W4L2m4LyL4L2m4L6j4L284L2R4LyL4L2Q4L284LyL4L2Y4L2y4L2E4LyL4L2W4L2f4L284LyL4L2T4L2y4LyL4L2j4L204LyL4L2g4L2Q4L204L2m4LyL4L2k4L284L2i4LyL4L2W4L6x4L204L2E4LyL4L2h4L284L2R4L2U4LyNIgorCisjfiBtc2dpZCAiaW5mb19zcGV3IgorI34gbXNnc3RyICLgvZbgvaLgvqHgvIvgvZHgvbzgvZPgvIvgvabgvpDgvrHgvbTgvYLgvabgvIvgvZTgvI0oX3MpIgorCisjLCBmdXp6eQorI358IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBkcGtnLWRlYiB0byBleHRyYWN0IGNvbnRyb2wgaW5mb3JtYXRpb24iCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgZHBrZy1kZWIgdG8gZXh0cmFjdCBmaWVsZCB2YWx1ZSIKKyN+IG1zZ3N0ciAiIgorI34gIuC9muC9keC8i+C9oOC9m+C9suC9k+C8i+C9luC9ouC+oeC8i+C9keC9vOC9k+C8i+C9leC+seC9suC9ouC8i+C9oOC9keC9vOC9k+C8i+C9oOC9luC9keC8i+C9k+C9suC9oOC9suC8i+C9keC9vOC9k+C8i+C9o+C9puC8iyBkcGtnLWRlYiDgvaPgvYLgvIvgvaPgvbrgvZPgvIvgvaDgvZDgvZbgvIvgvZPgvbLgvIvgvaPgvbTgvIvgvaDgvZDgvbTgvabgvIvgvaTgvbzgvaLgvIvgvaDgvZbgvrHgvbTgvYTgvIvgvaHgvbzgvZHgvI0iCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgJXM6ICVzIgorI34gbXNnaWQgInVuYWJsZSB0byBzdGF0ICVzOiAlcyIKKyN+IG1zZ3N0ciAi4L2i4L6p4LyL4L2W4L2m4L6Q4L6y4L2R4LyL4L2C4L2P4L2E4LyL4L2Y4LyL4L2a4L204L2C4L2mOiVzOiAlcyIKKworI34gbXNnaWQgInNsYXZlIG5hbWUgJXMgZHVwbGljYXRlZCIKKyN+IG1zZ3N0ciAi4L2W4L6y4L2T4LyL4L2C4L2h4L284L2C4LyL4L2Y4L2y4L2E4LyLICVzIOC9ouC+q+C9tOC9k+C8i+C9mOC8i+C9luC9n+C9vOC8i+C9oeC9vOC9keC9lOC8jSIKKworI34gbXNnaWQgInNsYXZlIGxpbmsgJXMgZHVwbGljYXRlZCIKKyN+IG1zZ3N0ciAi4L2W4L6y4L2T4LyL4L2C4L2h4L284L2C4LyL4L2g4L2W4L6y4L264L2j4LyL4L2j4L2Y4LyLICVzIOC9ouC+q+C9tOC9k+C8i+C9mOC8i+C9luC9n+C9vOC8i+C9oeC9vOC9keC9lOC8jSIKKworI34gbXNnaWQgIiVkIHJlcXVlc3RlZCBjb250cm9sIGNvbXBvbmVudHMgYXJlIG1pc3NpbmciCisjfiBtc2dzdHIgIiVkIOC9guC9suC9puC8i+C9nuC9tOC8i+C9luC8i+C9oOC9luC9keC8i+C9oeC9vOC9keC9mOC9suC8i+C9muC9keC8i+C9oOC9m+C9suC9k+C8i+C9huC8i+C9pOC9puC8i+C9muC9tOC8i+C9luC9ouC+s+C9guC8i+C9puC+n+C9vOC9ouC8i+C9nuC9tOC9guC9puC8i+C9oeC9vOC9keC9lOC8jSIKKworI34gbXNnaWQgImNhdCAoZGF0YSkiCisjfiBtc2dzdHIgIuC9gOC9uuC9iuC9suC8iyjgvYLgvZPgvZHgvIvgvabgvqHgvbTgvZHgvIspIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIG9wZW4gcGlwZSBkZXNjcmlwdG9yIGAxJyBpbiBwYXN0ZSIKKyN+IG1zZ3N0ciAi4L2m4L6m4L6x4L2i4LyL4L2T4L2y4LyL4L2T4L2E4LyL4L2i4L6S4L6x4L204L2R4LyL4L2R4L204L2E4LyL4L2g4L2C4L6y4L264L2j4LyL4L2W4L2k4L2R4L2U4LyLIGAxJyDgvYHgvIvgvZXgvrHgvbrgvIvgvZPgvbLgvIvgvaDgvZDgvbTgvabgvIvgvaTgvbzgvaLgvIvgvZbgvrHgvbTgvYTgvIvgvaHgvZHgvbzgvZTgvI0iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gd3JpdGUgdG8gZ3ppcCAtZGMiCisjfiBtc2dzdHIgIuC9h+C9suC8i+C9n+C9suC9lOC8iyAt4L2M4L2y4LyL4L2m4L2y4LyLIOC9o+C9tOC8i+C9oOC9luC+suC9suC8i+C9k+C9suC8i+C9oOC9kOC9tOC9puC8i+C9pOC9vOC9ouC8i+C9luC+seC9tOC9hOC8i+C9oeC9vOC9keC9lOC8jSIKKworI34gbXNnaWQgImZhaWxlZCB0byBjbG9zZSBnemlwIC1kYyIKKyN+IG1zZ3N0ciAi4L2H4L2y4LyL4L2f4L2y4L2U4LyLIC3gvYzgvbLgvIvgvabgvbLgvIsg4L2B4LyL4L2W4L2m4L6h4L2Y4LyL4L2T4L2y4LyL4L2j4L204LyL4L2g4L2Q4L204L2m4LyL4L2k4L284L2i4LyL4L2W4L6x4L2y4L2E4LyL4L2h4L284L2R4L2U4LyNIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHN5c2NhbGwgbHNlZWsgdG8gZmlsZXMgYXJjaGl2ZSBwb3J0aW9uIgorI34gbXNnc3RyICLgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIvgvZrgvbTgvaDgvbLgvIvgvaHgvbLgvYLgvIvgvZjgvZvgvbzgvZHgvIvgvYbgvIvgvaTgvabgvIvgvaPgvbTgvIvgvIvgvajgvbrgvabgvbLgvIvgvZ3gvaDgvbLgvIvgvajgvbrgvabgvbLgvIvgvZbgvbzgvZHgvIvgvZbgvaLgvqHgvIsg4L2o4L264L2j4LyL4L2g4L2a4L284L2j4LyL4L2T4L2y4LyL4L2j4L204LyL4L2g4L2Q4L204L2m4LyL4L2k4L284L2i4LyL4L2W4L6x4L204L2E4LyL4L2h4L284L2R4L2U4LyNIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGV4ZWMgbWtzcGxpdCIKKyN+IG1zZ3N0ciAi4L2o4L264L2Y4LyL4L2A4L264LyL4L2m4L2y4LyL4L2U4L2y4LyL4L2j4L2y4L2K4L2y4LyL4L2j4L2C4LyL4L2j4L264L2T4LyL4L2g4L2Q4L2W4LyL4L2Y4LyL4L2a4L204L2C4L2m4LyNIgorCisjfiBtc2dpZCAiIgorI34gIlxuIgorI34gIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLiIKKyN+IG1zZ3N0ciAiIgorI34gIlxuIgorI34gIuC9oOC9keC+suC8i+C9luC9pOC9tOC9puC8i+C9keC9luC9hOC8i+C9huC8iyAoQykg4Lyh4Lyp4Lyp4LylIOC9qOC9suC8i+C9oeC9k+C8iyDgvYfgvbrgvYDgvIvgvaTgvZPgvI1cbiIKKyN+ICLgvaDgvZHgvrLgvIvgvZbgvaTgvbTgvabgvIvgvZHgvZbgvYTgvIvgvYbgvIsgKEMpIOC8ouC8oOC8oOC8oCDgvKLgvKDgvKDgvKEg4L2d4L2y4LyL4L2F4L2i4L2K4L2y4LyLIOC9qOC9gOC8i+C9gOC9ouC8i+C9mOC9seC9k+C8jSIKKworI34gbXNnaWQgInR3byBjb21tYW5kcyBzcGVjaWZpZWQ6ICVzIGFuZCAtLSVzIgorI34gbXNnc3RyICLgvZbgvaLgvqHgvIvgvZbgvYDgvbzgvZHgvIvgvYLgvYngvbLgvabgvIvgvYLgvabgvaPgvIvgvZbgvYDgvbzgvZHgvIvgvaDgvZbgvZHgvIvgvaHgvbzgvZHgvZQ6ICVzIOC9keC9hOC8iyAtLSVzIgorCisjfiBtc2dpZCAiLS0lcyBuZWVkcyBhIGRpdmVydC10byBhcmd1bWVudCIKKyN+IG1zZ3N0ciAi4L2m4L6S4L6y4L204L2W4LyL4L2i4L6f4L2C4L2m4LyL4L2m4L6f4L284L2T4LyL4L2T4L2y4LyL4L2j4L204LyLLS0lcyDgvaPgvbTgvIvgvYHgvIvgvZXgvrHgvbzgvYLgvabgvIvgvZbgvabgvpLgvrHgvbTgvaLgvIvgvZbgvIvgvYXgvbLgvYLgvIvgvZHgvYLgvbzgvZTgvIvgvajgvbLgvZPgvI0iCisKKyN+IG1zZ2lkICItLSVzIG5lZWRzIGEgPHBhY2thZ2U+IGFyZ3VtZW50IgorI34gbXNnc3RyICItLSVz4LyL4L2j4L204LyLIDzgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIs+4L2m4L6S4L6y4L204L2W4LyL4L2i4L6f4L2C4L2m4LyL4L2F4L2y4L2C4LyL4L2R4L2C4L284L2U4LyL4L2g4L2R4L204L2CIgorCisjfiBtc2dpZCAiY2Fubm90IG9wZW4gZGl2ZXJzaW9uczogJXMiCisjfiBtc2dzdHIgIuC9geC8i+C9puC+kuC+seC9tOC9ouC8i+C9geC8i+C9leC+seC9uuC8i+C9mOC8i+C9muC9tOC9guC9pjogJXMiCisKKyN+IG1zZ2lkICJtaXNzaW5nIGFsdG5hbWUiCisjfiBtc2dzdHIgIuC9luC9ouC+s+C9guC8i+C9puC+n+C9vOC9ouC8i+C9nuC9tOC9guC9puC8i+C9oeC9vOC9keC8i+C9lOC9oOC9suC8i+C9guC9keC9mOC8i+C9o+C+oeC9uuC8i+C9mOC9suC9hOC8i+C8jSIKKworI34gbXNnaWQgImludGVybmFsIGVycm9yIC0gYmFkIG1vZGUgYCVzJyIKKyN+IG1zZ3N0ciAi4L2T4L2E4LyL4L2g4L2B4L284L2R4LyL4L2g4L2b4L284L2j4LyL4L2W4LyLIC0g4L2Q4L2W4L2m4LyL4L2j4L2Y4LyL4L2W4L6x4L2E4LyL4L2J4L264L2m4LyLIGAlcyciCisKKyN+IG1zZ2lkICJjYW5ub3Qgc3RhdCBvbGQgbmFtZSBgJXMnOiAlcyIKKyN+IG1zZ3N0ciAi4L2Y4L2y4L2E4LyL4L2i4L6Z4L2y4L2E4L2Y4LyLIGAlcycg4L2m4L2y4LyL4L2K4L264L2K4L2y4LyL4L2g4L2W4L2R4LyL4L2Y4LyL4L2a4L204L2C4L2mOiAlcyIKKworI34gbXNnaWQgInJlbmFtZTogcmVuYW1lIGAlcycgdG8gYCVzJzogJXMiCisjfiBtc2dzdHIgIuC9luC9puC+kOC+seC9ouC8i+C9mOC9suC9hOC8i+C9luC9j+C9guC9puC8izogIGAlcycg4L2g4L2R4L2y4LyLIGAlcycg4L2j4L204LyL4L2W4L2m4L6Q4L6x4L2i4LyL4L2Y4L2y4L2E4LyL4L2W4L2P4L2C4L2m4LyLOiAlcyIKKworI34gbXNnaWQgImNyZWF0ZSBkaXZlcnNpb25zLW5ldzogJXMiCisjfiBtc2dzdHIgIuC9geC8i+C9puC+kuC+seC9tOC9ouC8iy3gvYLgvabgvaLgvZTgvIvgvYLgvabgvaLgvIvgvZbgvabgvpDgvrLgvbTgvZPgvIvgvaDgvZbgvZE6ICVzIgorCisjfiBtc2dpZCAid3JpdGUgZGl2ZXJzaW9ucy1uZXc6ICVzIgorI34gbXNnc3RyICLgvYHgvIvgvabgvpLgvrHgvbTgvaLgvIst4L2C4L2m4L2i4L2U4LyL4L2g4L2W4L6y4L2yOiAlcyIKKworI34gbXNnaWQgImNsb3NlIGRpdmVyc2lvbnMtbmV3OiAlcyIKKyN+IG1zZ3N0ciAi4L2B4LyL4L2m4L6S4L6x4L204L2i4LyLLeC9guC9puC9ouC9lOC8i+C9geC8i+C9luC9puC+oeC9mDogJXMiCisKKyN+IG1zZ2lkICJjcmVhdGUgbmV3IGRpdmVyc2lvbnMtb2xkOiAlcyIKKyN+IG1zZ3N0ciAi4L2B4LyL4L2m4L6S4L6x4L204L2i4LyL4L2C4L2m4L2i4L2U4LyLLeC9ouC+meC9suC9hOC9mOC8i+C9guC9puC9ouC8i+C9luC9puC+kOC+suC9tOC9k+C8i+C9oOC9luC9kTogJXMiCisKKyN+IG1zZ2lkICJpbnN0YWxsIG5ldyBkaXZlcnNpb25zOiAlcyIKKyN+IG1zZ3N0ciAi4L2B4LyL4L2m4L6S4L6x4L204L2i4LyL4L2C4L2m4L2i4L2U4LyL4L2C4L2e4L2y4LyL4L2W4L2Z4L204L2C4L2m4LyL4L2g4L2W4L2ROiAlcyIKKworI34gbXNnaWQgImludGVybmFsIGVycm9yOiAlcyBjb3JydXB0OiAlcyIKKyN+IG1zZ3N0ciAi4L2T4L2E4LyL4L2g4L2B4L284L2R4LyL4L2A4L6x4L2y4LyL4L2g4L2b4L284L2j4LyL4L2WOiAlcyDgvYTgvZPgvIvgvYXgvZPgvIvgvZbgvZ/gvbzgvIvgvZPgvbLgvIs6ICVzIgorCisjfiBtc2dpZCAiZHBrZy1kZWIgLSBlcnJvcjogJXMgKGAlcycpIGRvZXNuJ3QgY29udGFpbiBhbnkgZGlnaXRzXG4iCisjfiBtc2dzdHIgIuC9jOC9suC8i+C9lOC9suC8i+C9gOC9uuC8i+C9h+C9suC8iy3gvYzgvbrgvZbgvIsgLSDgvaDgvZvgvbzgvaPgvIvgvZbgvIs6ICVzIChgJXMnKSDgvYLgvbLgvIvgvZPgvYTgvIvgvZPgvIvgvajgvYTgvIvgvaHgvbLgvYLgvIvgvYLgvIvgvZPgvbLgvIvgvaHgvYTgvIvgvZjgvbrgvZHgvI1cbiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJEZWJpYW4gcmV2aXNpb24iCisjfiBtc2dzdHIgIuC9jOC9uuC8i+C9luC9suC8i+C9oeC9seC9k+C8iyAlcyDgvZDgvbzgvZPgvIvgvaLgvbLgvZjgvIsgJXNcbiIKKworI34gbXNnaWQgIiVkIGVycm9ycyBpbiBjb250cm9sIGZpbGUiCisjfiBtc2dzdHIgIuC9muC9keC8i+C9oOC9m+C9suC9k+C8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9k+C9hOC8iyAlZCDgvaDgvZvgvbzgvaPgvIvgvZbgvIvgvZrgvbTgvI0iCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgIiVzOiByZWFkICVzOiAlcyIKKyN+IG1zZ2lkICJjYW4ndCByZWFkZGlyICVzOiAlcyIKKyN+IG1zZ3N0ciAiJXM6ICVzIOC9o+C+t+C9gjogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gd3JpdGUgJXM6ICVzIgorI34gbXNnc3RyICLgvaLgvqngvIvgvZbgvabgvpDgvrLgvZHgvIvgvYLgvY/gvYTgvIvgvZjgvIvgvZrgvbTgvYLgvaYgJXM6ICVzICIKKworI34gbXNnaWQgImZhaWxlZCBpbiBidWZmZXJfd3JpdGUoZmQpICglaSwgcmV0PSVsaSk6ICVzIgorI34gbXNnc3RyICLgvYLgvZPgvabgvIvgvYHgvbzgvYTgvabgvIvgvaDgvZbgvrLgvbLgvIvgvZPgvbLgvIso4L2o4L264L2V4LyL4L2M4L2y4LyLKSAoJWksIOC9ouC9uuC9iuC9suC8iz0lbGkpIOC9k+C9hOC8i+C9oOC9kOC9tOC9puC8i+C9pOC9vOC9ouC8i+C9luC9mOC+seC9tOC9hOC8i+C9oeC9vOC9keC9lDogJXMoX3cpIgorCisjfiBtc2dpZCAiZW9mIGluIGJ1ZmZlcl93cml0ZShzdHJlYW0pOiAlcyIKKyN+IG1zZ3N0ciAi4L2C4L2T4L2m4LyL4L2B4L284L2E4L2m4LyL4L2g4L2W4L6y4L2y4LyL4L2T4L2y4LyLKOC9ouC+kuC+seC9tOC9k+C8i+C9ouC9suC9mOC8iyngvZPgvYTgvIvgvajgvbLgvIvgvajgvbzgvIvgvajgvbrgvZU6ICVzKF93KSIKKworI34gbXNnaWQgImVycm9yIGluIGJ1ZmZlcl93cml0ZShzdHJlYW0pOiAlcyIKKyN+IG1zZ3N0ciAi4L2C4L2T4L2m4LyL4L2B4L284L2E4L2m4LyL4L2g4L2W4L6y4L2y4LyL4L2T4L2y4LyLKOC9ouC+kuC+seC9tOC9k+C8i+C9ouC9suC9mOC8iyngvZPgvYTgvIvgvaDgvZvgvbzgvaPgvIvgvZY6ICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIGluIGJ1ZmZlcl9yZWFkKGZkKTogJXMiCisjfiBtc2dzdHIgIuC9guC9k+C9puC8i+C9geC9vOC9hOC9puC8i+C9o+C+t+C9guC8i+C9k+C9suC8iyjgvajgvbrgvZXgvIvgvYzgvbLgvIsp4L2T4L2E4LyL4L2g4L2Q4L204L2m4LyL4L2k4L284L2i4LyL4L2W4L6x4L204L2E4LyL4L2h4L284L2R4L2UOiAlcyhfdykiCisKKyN+IG1zZ2lkICJlcnJvciBpbiBidWZmZXJfcmVhZChzdHJlYW0pOiAlcyIKKyN+IG1zZ3N0ciAi4L2C4L2T4L2m4LyL4L2B4L284L2E4L2m4LyL4L2j4L634L2C4LyL4L2T4L2y4LyLKOC9ouC+kuC+seC9tOC9k+C8i+C9ouC9suC9mOC8iyngvZPgvYTgvIvgvaDgvZvgvbzgvaPgvIvgvZY6ICVzIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiVzIHJldHVybmVkIGVycm9yIGV4aXQgc3RhdHVzICVkIgorI34gbXNnc3RyICLgvaPgvabgvIvgvabgvqbgvrHgvbzgvaLgvIvgvaHgvZPgvIvgvaPgvYLgvIsgJXMg4L2m4L6z4L2i4LyL4L2j4L284L2C4LyL4L2h4L284L2R4LyL4L2U4L2g4L2y4LyL4L2g4L2b4L284L2j4LyL4L2W4LyLIOC9guC9k+C9puC8i+C9muC9keC8iyAlZCDgvZXgvrHgvbLgvaLgvIvgvZDgvbzgvZPgvIvgvaDgvZbgvZHgvZ3gvIvgvajgvbLgvZPgvI0iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiJXMga2lsbGVkIGJ5IHNpZ25hbCAoJXMpJXMiCisjfiBtc2dzdHIgIuC9o+C9puC8i+C9puC+puC+seC9vOC9ouC8i+C9oeC9k+C8i+C9o+C9guC8iyAlcyDgvaDgvZHgvbLgvIvgvZbgvaLgvqHgvIvgvaLgvp/gvYLgvabgvIsgKCVzKSVzIOC9guC9suC9puC8i+C9guC9puC9keC8i+C9oeC9vOC9keC9lOC8jSIKKworIywgZnV6enkKKyN+IG1zZ2lkICIiCisjfiAiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbmNlIHZlcnNpb24gMiBvclxuIgorI34gImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LlxuIgorI34gbXNnc3RyICIiCisjfiAiXG4iCisjfiAi4L2g4LyL4L2T4L2y4LyL4L2g4L2R4L2y4LyL4L2i4L2E4LyL4L2R4L2W4L2E4LyL4L2Y4L2J4L264L2T4LyL4L2G4L2m4LyL4L2o4L2y4L2T4LyNIOC9h+C9suC8i+C9qOC9uuC9k+C8i+C9oeC9tOC8iyDgvaHgvbzgvYTgvabgvIvgvYHgvrHgvZbgvIvgvZjgvbLgvIvgvZjgvYTgvIvgvYbgvbzgvYLgvIvgvZDgvZjgvIvgvZDgvbzgvZPgvIvgvaLgvbLgvZjgvIsg4LyiIOC9oeC9hOC8i+C9k+C8i1xuIgorI34gIuC9pOC9tOC9o+C8i+C9mOC9mOC8i+C9oOC9keC9suC8iyDgvYLgvZPgvabgvIvgvabgvp/gvYTgvabgvIvgvZrgvbTgvIvgvaDgvZHgvrLgvIvgvZbgvaTgvbTgvabgvIvgvaLgvpDgvrHgvZbgvabgvIvgvZPgvbLgvaDgvbLgvIvgvZHgvbzgvZPgvIvgvaPgvbTgvIsg4L2W4L2j4L6f4LyNIOC9ieC9uuC9k+C8i+C9o+C9uuC9k+C8i+C9guC8i+C9k+C9suC8i+C9oeC9hOC8i+C9mOC9uuC9keC8jVxuIgorCisjfiBtc2dpZCAiIgorI34gIlxuIgorI34gIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSB2ZXJzaW9uIDIgb3JcbiIKKyN+ICJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIlxuIgorI34gIuC9oOC8i+C9k+C9suC8i+C9oOC9keC9suC8i+C9ouC9hOC8i+C9keC9luC9hOC8i+C9mOC9ieC9uuC9k+C8i+C9huC9puC8i+C9qOC9suC9k+C8jSDgvYfgvbLgvIvgvajgvbrgvZPgvIvgvaHgvbTgvIsg4L2h4L284L2E4L2m4LyL4L2B4L6x4L2W4LyL4L2Y4L2y4LyL4L2Y4L2E4LyL4L2G4L284L2C4LyL4L2Q4L2Y4LyL4L2Q4L284L2T4LyL4L2i4L2y4L2Y4LyLIOC8oiDgvaHgvYTgvIvgvZPgvItcbiIKKyN+ICLgvaTgvbTgvaPgvIvgvZjgvZjgvIvgvaDgvZHgvbLgvIsg4L2C4L2T4L2m4LyL4L2m4L6f4L2E4L2m4LyL4L2a4L204LyL4L2g4L2R4L6y4LyL4L2W4L2k4L204L2m4LyL4L2i4L6Q4L6x4L2W4L2m4LyL4L2T4L2y4L2g4L2y4LyL4L2R4L284L2T4LyL4L2j4L204LyLIOC9luC9o+C+n+C8jSDgvYngvbrgvZPgvIvgvaPgvbrgvZPgvIvgvYLgvIvgvZPgvbLgvIvgvaHgvYTgvIvgvZjgvbrgvZHgvI1cbiIKKworI34gbXNnaWQgIiVzOiBmYWlsZWQgdG8gZXhlYyAnJXMgJXMnIgorI34gbXNnc3RyICIlczrgvaPgvYLgvIvgvaPgvbrgvZPgvIvgvaDgvZDgvZbgvIvgvZPgvbLgvIvgvaDgvZDgvbTgvabgvIvgvaTgvbzgvaLgvIvgvZbgvrHgvbTgvYTgvIvgvaHgvbzgvZHgvZQgICclcyAlcyciCisKKyN+IG1zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCBlcnJvcjogcmVhZDogYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IOC9k+C9hOC8i+C9oOC9geC9vOC9keC8iyBnemlwIOC9oOC9m+C9vOC9o+C8i+C9ljog4L2j4L634L2COiBgJXMnIgorCisjfiBtc2dpZCAiJXM6IGludGVybmFsIGd6aXAgZXJyb3I6IHdyaXRlOiBgJXMnIgorI34gbXNnc3RyICIlczog4L2T4L2E4LyL4L2g4L2B4L284L2R4LyLIGd6aXAg4L2g4L2b4L284L2j4LyL4L2WOiDgvaDgvZbgvrLgvbLgvIs6IGAlcyciCisKKyN+IG1zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCBlcnJvcjogcmVhZCglaSkgIT0gd3JpdGUoJWkpIgorI34gbXNnc3RyICIlczog4L2T4L2E4LyL4L2g4L2B4L284L2R4LyLIGd6aXAg4L2g4L2b4L284L2j4LyL4L2W4LyLOiDgvaPgvrfgvYLgvIsoJWkpICE9IOC9oOC9luC+suC9suC8iyglaSkiCisKKyN+IG1zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgZXJyb3I6IHJlYWQ6IGAlcyciCisjfiBtc2dzdHIgIiVzOiDgvZPgvYTgvIvgvaDgvYHgvbzgvZHgvIsgYnppcDIg4L2g4L2b4L284L2j4LyL4L2WOiDgvaPgvrfgvYI6IGAlcyciCisKKyN+IG1zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgZXJyb3I6IHdyaXRlOiBgJXMnIgorI34gbXNnc3RyICIlczog4L2T4L2E4LyL4L2g4L2B4L284L2R4LyLIGJ6aXAyIOC9oOC9m+C9vOC9o+C8i+C9ljog4L2g4L2W4L6y4L2y4LyLOiBgJXMnIgorCisjfiBtc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIGVycm9yOiByZWFkKCVpKSAhPSB3cml0ZSglaSkiCisjfiBtc2dzdHIgIiVzOiDgvZPgvYTgvIvgvaDgvYHgvbzgvZHgvIsgYnppcDIg4L2g4L2b4L264L284L2j4LyL4L2WOiDgvaPgvrfgvYIoJWkpICE9IOC9oOC9luC+suC9suC8iyglaSkiCisKKyN+IG1zZ2lkICJEb24ndCBmb3JnZXQgdG8gZm9yZWdyb3VuZCAoYGZnJykgdGhpcyBwcm9jZXNzIHdoZW4geW91J3JlIGRvbmUgIVxuIgorI34gbXNnc3RyICLgvYHgvrHgvbzgvZHgvIvgvaDgvZbgvZHgvIvgvZrgvaLgvIvgvZbgvaDgvbLgvIvgvabgvpDgvZbgvabgvIsg4L2g4LyL4L2T4L2y4LyL4L2j4L2m4LyL4L2m4L6m4L6x4L284L2i4LyL4L2g4L2R4L2y4LyL4L2C4L2R4L284L2E4LyL4L2C4L2e4L2y4LyLIChgZmcnKSDgvaDgvZbgvZHgvIvgvZPgvbLgvIvgvZjgvIvgvZbgvaLgvpfgvbrgvZEgIVxuIgorCisjfiBtc2dpZCAiIgorI34gIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgb3JcbiIKKyN+ICJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKKyN+ICJTZWUgJXMgLS1saWNlbnNlIGZvciBjb3B5cmlnaHQgYW5kIGxpY2Vuc2UgZGV0YWlscy5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIuC9oOC8i+C9k+C9suC8i+C9oOC9keC9suC8iyDgvaLgvYTgvIvgvZHgvZbgvYTgvIvgvZjgvYngvbrgvZPgvIvgvYbgvabgvIvgvajgvbLgvZPgvI0g4L2H4L2y4LyL4L2o4L264L2T4LyL4L2h4L204LyLIOC9oeC9vOC9hOC9puC8i+C9geC+seC9luC8i+C9mOC9suC8i+C9mOC9hOC8i+C9huC9vOC9guC8i+C9kOC9mOC8i+C9guC+seC9suC8i+C9kOC9vOC9k+C8i+C9ouC9suC9mOC8iyDgvKIg4L2U4LyLIOC9oeC9hOC8i+C9k+C8i1xuIgorI34gIuC9pOC9tOC9o+C8i+C9o+C9puC8i+C9gOC+seC9suC8iyDgvYLgvZPgvabgvIvgvabgvp/gvYTgvabgvIvgvaDgvZHgvrLgvIvgvZbgvaTgvbTgvabgvIvgvaLgvpDgvrHgvZbgvabgvIvgvZPgvbLgvaDgvbLgvIvgvZHgvbzgvZPgvIvgvaPgvbTgvIsg4L2W4L2j4L6f4LyNIOC9keC9uuC8i+C9k+C9hOC8i+C9o+C9tOC8i+C9ieC9uuC9k+C8i+C9o+C9uuC9k+C8i+C9guC8i+C9k+C9suC8i+C9oeC9hOC8i+C9mOC9uuC9keC8jVxuIgorI34gIuC9oOC9keC+suC8i+C9luC9pOC9tOC9puC8i+C9keC9luC9hOC8i+C9huC8i+C9keC9hOC8i+C9huC9vOC9guC8i+C9kOC9mOC8i+C9ouC+kuC+seC9puC8i+C9luC9pOC9keC8i+C9muC9tOC9oOC9suC8i+C9keC9vOC9k+C8i+C9o+C9tOC8iyAlcyAtLWxpY2Vuc2Ug4L2W4L2j4L6f4LyNXG4iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gZ2V0IHVuaXF1ZSBmaWxlbmFtZSBmb3IgY29udHJvbCBpbmZvIgorI34gbXNnc3RyICLgvZrgvZHgvIvgvaDgvZvgvbLgvZPgvIvgvZbgvaLgvqHgvIvgvZHgvbzgvZPgvIvgvYLgvrHgvbLgvIvgvZHgvbzgvZPgvIvgvaPgvbTgvIvgvZjgvZDgvbTgvZPgvIvgvZjgvbzgvYTgvIvgvZjgvIvgvaHgvbLgvZPgvIvgvZTgvaDgvbLgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIvgvZjgvbLgvYTgvIvgvaPgvbrgvZPgvIvgvZjgvIvgvZrgvbTgvYLgvabgvI0iCisKKyN+IG1zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIG1hbmFnZW1lbnQgcHJvZ3JhbSBxdWVyeSB0b29sXG4iCisjfiBtc2dzdHIgIuC9jOC9suC8i+C9luC9suC8i+C9oeC9seC9k+C8iyBgJXMnIOC9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8i+C9oOC9m+C9suC9k+C8i+C9puC+kOC+seC9vOC9hOC8i+C9lOC9oOC9suC8i+C9o+C9puC8i+C9ouC9suC9mOC8i+C9oOC9keC+suC9suC8i+C9keC9lOC+seC9keC8i+C9o+C9guC8i+C9huC9puC8jVxuIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IHF1ZXJ5aW5nIHBhY2thZ2VzO1xuIgorI34gIlVzZSAtLWxpY2Vuc2UgZm9yIGNvcHlyaWdodCBsaWNlbnNlIGFuZCBsYWNrIG9mIHdhcnJhbnR5IChHTlUgR1BMKS4iCisjfiBtc2dzdHIgIiIKKyN+ICLgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIvgvZrgvbTgvIvgvaDgvZHgvrLgvbLgvIvgvZHgvZTgvrHgvZHgvIvgvaDgvZbgvZHgvIvgvZPgvbLgvaDgvbLgvIvgvabgvpDgvbzgvaLgvIvgvaPgvabgvIvgvYLgvrLgvbzgvYLgvabgvIvgvaLgvZjgvIvgvYLgvrHgvbLgvIvgvZHgvbzgvZPgvIvgvaPgvbTgvIsgLS3gvYLgvrLgvbzgvYLgvabgvIvgvaLgvZjgvIsg4L2j4L2C4LyL4L2j4L264L2T4LyL4L2g4L2Q4L2W4LyNXG4iCisjfiAi4L2g4L2R4L6y4LyL4L2W4L2k4L204L2m4LyL4L2R4L2W4L2E4LyL4L2G4L2g4L2y4LyL4L2G4L284L2C4LyL4L2Q4L2Y4LyL4L2R4L2E4LyL4L2J4L264L2T4LyL4L2j4L264L2T4LyL4L2Y4L264L2R4LyL4L2Y4L2y4LyLKOC9h+C9suC8i+C9qOC9uuC9k+C8i+C9oeC9tOC8iyDgvYfgvbLgvIvgvZTgvbLgvIvgvajgvbrgvaPgvIsp4L2C4L2y4LyL4L2R4L284L2T4LyL4L2j4L204LyLIC3gvYbgvbzgvYLgvIvgvZDgvZjgvIsg4L2j4L2C4LyL4L2j4L264L2T4LyLIgorI34gIuC9oOC9kOC9luC8jVxuIgorI34gIlxuIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGNob3duICVzOiAlcyIKKyN+IG1zZ3N0ciAiJXMg4L2m4L2y4LyL4L2o4L264L2G4LyL4L2o4L284L2T4LyL4L2g4L2W4L2R4LyL4L2T4L2y4LyL4L2j4L204LyL4L2g4L2Q4L204L2m4LyL4L2k4L284L2i4LyL4L2W4L6x4L204L2E4LyL4L2h4L284L2R4LyLOuC8iyVzIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGNobW9kICVzOiAlcyIKKyN+IG1zZ3N0ciAiJXMg4L2m4L2y4LyL4L2o4L264L2G4LyL4L2Y4L284L2M4L2y4LyL4L2g4L2W4L2R4LyL4L2T4L2y4LyL4L2j4L204LyL4L2g4L2Q4L204L2m4LyL4L2k4L284L2i4LyL4L2W4L6x4L204L2E4LyL4L2h4L284L2R4LyLOiAlcyIKKworI34gbXNnaWQgImZhaWxlZCB0byBmb3JrIGZvciBjbGVhbnVwIgorI34gbXNnc3RyICLgvYLgvZngvYTgvIvgvZHgvYLgvIvgvZbgvZ/gvbzgvIvgvZPgvbLgvaDgvbLgvIvgvZHgvbzgvZPgvIvgvaPgvbTgvIvgvYHgvIvgvabgvqTgvbrgvaPgvIvgvZPgvbLgvIvgvaPgvbTgvIvgvaDgvZDgvbTgvabgvIvgvaTgvbzgvaLgvIvgvZbgvrHgvbTgvYTgvIvgvaHgvbzgvZHgvZTgvI0iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gd2FpdCBmb3Igcm0gY2xlYW51cCIKKyN+IG1zZ3N0ciAi4L2o4L2i4LyL4L2o4L264L2Y4LyL4L2C4L2Z4L2E4LyL4L2R4L2C4LyL4L2W4L2f4L284LyL4L2T4L2y4L2g4L2y4LyL4L2R4L284L2T4LyL4L2j4L204LyL4L2W4L2m4L6S4L204L2C4LyL4L2T4L2y4LyL4L2j4L204LyL4L2g4L2Q4L204L2m4LyL4L2k4L284L2i4LyL4L2W4L6x4L204L2E4LyL4L2h4L284L2R4L2U4LyNIgorCisjfiBtc2dpZCAicm0gY2xlYW51cCBmYWlsZWQsIGNvZGUgJWRcbiIKKyN+IG1zZ3N0ciAi4L2o4L2i4LyL4L2o4L264L2Y4LyL4L2C4L2Z4L2E4LyL4L2R4L2C4LyL4L2W4L2f4L284LyL4L2T4L2y4LyL4L2g4L2Q4L204L2m4LyL4L2k4L284L2i4LyL4L2W4L6x4L204L2E4LyL4L2h4L284L2R4LyLIOC9qOC9hOC8i+C9ouC+n+C9guC9puC8iyAlZFxuIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgcm0gLXJmIgorI34gbXNnc3RyICLgvajgvaLgvIvgvajgvbrgvZjgvIsgLeC9qOC9ouC8i+C9qOC9uuC9leC8iyDgvaPgvYLgvIvgvaPgvbrgvZPgvIvgvaDgvZDgvZbgvIvgvZPgvbLgvIvgvaDgvZDgvbTgvabgvIvgvaTgvbzgvaLgvIvgvZbgvrHgvbTgvYTgvIvgvaHgvbzgvZHgvZTgvI0iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gcmVhZCBgY29udHJvbCcgKGluIGAlLjI1NXMnKSIKKyN+IG1zZ3N0ciAiYGNvbnRyb2wnIOC9o+C+t+C9guC8i+C9k+C9suC8i+C9oOC9kOC9tOC9puC8i+C9pOC9vOC9ouC8i+C9luC+seC9tOC9hOC8i+C9oeC9vOC9keC8iyhgJS4yNTVzJyDgvZPgvYTgvIvgvaPgvbTgvIspIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHNlZWsgYmFjayIKKyN+IG1zZ3N0ciAi4L2i4L6S4L6x4L2W4LyL4L2j4L284L2C4LyL4L2g4L2a4L284L2j4LyL4L2Y4LyL4L2a4L204L2C4L2m4LyNIgorCisjfiBtc2dpZCAidW5rbm93biBkYXRhIHR5cGUgYCVpJyBpbiBidWZmZXJfd3JpdGVcbiIKKyN+IG1zZ3N0ciAi4L2Y4LyL4L2k4L264L2m4LyL4L2U4L2g4L2y4LyL4L2a4L264L2m4LyL4L2C4L6y4L2E4L2m4LyL4L2A4L6x4L2y4LyL4L2R4L2W4L6x4L264LyL4L2W4LyLIGAlaScgIOC9guC9k+C9puC8i+C9geC9vOC9hOC9puC8i+C9oOC9luC+suC9suC8i+C9k+C9suC8i+C9k+C9hOC8i+C8jShfdylcbiIKKworI34gbXNnaWQgInVua25vd24gZGF0YSB0eXBlIGAlaScgaW4gYnVmZmVyX3JlYWRcbiIKKyN+IG1zZ3N0ciAi4L2Y4LyL4L2k4L264L2m4LyL4L2U4L2g4L2y4LyL4L2a4L264L2m4LyL4L2C4L6y4L2E4L2m4LyL4L2A4L6x4L2y4LyL4L2R4L2W4L6x4L264LyL4L2W4LyLIGAlaScg4L2C4L2T4L2m4LyL4L2B4L284L2E4L2m4LyL4L2j4L634L2C4LyL4L2T4L2y4LyL4L2T4L2E4LyL4LyNKF9yKVxuIgorCisjfiBtc2dpZCAid2FpdCBmb3Igc2hlbGwgZmFpbGVkIgorI34gbXNnc3RyICLgvaTgvaPgvIvgvaDgvZDgvbTgvabgvIvgvaTgvbzgvaLgvIvgvZbgvrHgvbTgvYTgvIvgvZjgvbLgvaDgvbLgvIvgvZHgvbzgvZPgvIvgvaPgvbTgvIvgvZbgvabgvpLgvbTgvYIiCisKKyN+IG1zZ2lkICJyZWFkIGVycm9yIGluIGRpdmVyc2lvbnMgW2ldIgorI34gbXNnc3RyICLgvYHgvIvgvabgvpLgvrHgvbTgvaLgvIvgvZPgvYTgvIvgvaPgvbTgvIvgvaPgvrfgvYLgvIvgvZTgvaDgvbLgvIvgvaDgvZvgvbzgvaPgvIvgvZbgvIsgW2ldIgorCisjfiBtc2dpZCAidW5saW5rIgorI34gbXNnc3RyICLgvaDgvZbgvrLgvbrgvaPgvIvgvZjgvZDgvbTgvZHgvIvgvZjgvIvgvaDgvZbgvZHgvI0iCisKKyN+IG1zZ2lkICJjaG1vZCIKKyN+IG1zZ3N0ciAiY2htb2QiCisKKyN+IG1zZ2lkICJkZWxldGUiCisjfiBtc2dzdHIgIuC9luC9j+C9vOC9k+C8i+C9guC9j+C9hOC8i+C8jSIKKworIywgZnV6enkKKyN+IG1zZ2lkICJmYWlsZWQgdG8gJXMgJyUuMjU1cyciCisjfiBtc2dzdHIgIiVzIGAlJS4yNTVzJyDgvaDgvZbgvZHgvIvgvZPgvbLgvIvgvaPgvbTgvIvgvaDgvZDgvbTgvabgvIvgvaTgvbzgvaLgvIvgvZbgvrHgvbTgvYTgvIvgvaHgvbzgvZHgvI0iCisKKyN+IG1zZ2lkICJ3YWl0IGZvciBkcGtnLXNwbGl0IGZhaWxlZCIKKyN+IG1zZ3N0ciAiZHBrZy3gvZbgvaTgvYLgvIvgvZPgvbLgvaDgvbLgvIvgvZHgvbzgvZPgvIvgvaPgvbTgvIvgvZbgvabgvpLgvbTgvYLgvIvgvZjgvbLgvIvgvaDgvZHgvbLgvIvgvaDgvZDgvbTgvabgvIvgvaTgvbzgvaLgvIvgvZbgvrHgvbTgvYTgvIvgvaHgvbzgvZHgvZTgvI0iCisKKyN+IG1zZ2lkICJjYW5ub3QgcmVtb3ZlIGZpbGUgYCUuMjUwcyciCisjfiBtc2dzdHIgIuC9oeC9suC9guC8i+C9puC+o+C9vOC9keC8iyBgJS4yNTBzJyDgvaLgvqngvIvgvZbgvabgvpDgvrLgvZHgvIvgvYLgvY/gvYTgvIvgvZjgvbLgvIvgvZrgvbTgvYLgvabgvI0iCisKKyN+IG1zZ2lkICIiCisjfiAiXG4iCisjfiAiQ29weXJpZ2h0IChDKSAyMDAwIFdpY2hlcnQgQWtrZXJtYW4uIgorI34gbXNnc3RyICIiCisjfiAiXG4iCisjfiAi4L2g4L2R4L6y4LyL4L2W4L2k4L204L2m4LyL4L2R4L2W4L2E4LyL4L2G4LyLwqkg4Lyi4Lyg4Lyg4LygIOC9neC9suC8i+C9heC9ouC9iuC9suC8iyDgvajgvYDgvIvgvYDgvaLgvIvgvZjgvbHgvZPgvI0iCisKKyN+IG1zZ2lkICJubyBtb2RlIHNwZWNpZmllZCIKKyN+IG1zZ3N0ciAi4L2Q4L2W4L2m4LyL4L2j4L2Y4LyL4L2C4L2F4L2y4L2C4LyL4L2h4L2E4LyL4L2C4L2m4L2j4LyL4L2W4L2A4L284L2R4LyL4L2Y4LyL4L2g4L2W4L2R4LyL4L2W4L2m4LyNIgorCisjfiBtc2dpZCAiaWxsZWdhbCB1c2VyICVzIgorI34gbXNnc3RyICLgvYHgvrLgvbLgvZjgvabgvIvgvaDgvYLgvaPgvIvgvaPgvYLgvIvgvaPgvbrgvZPgvIvgvZTgvIsgJXMiCisKKyN+IG1zZ2lkICJub24tZXhpc3RpbmcgdXNlciAlcyIKKyN+IG1zZ3N0ciAi4L2C4L2T4L2m4LyL4L2U4LyL4L2Y4L2y4L2T4LyL4L2U4L2g4L2y4LyL4L2j4L2C4LyL4L2j4L264L2T4LyL4L2U4LyLICVzIgorCisjfiBtc2dpZCAiaWxsZWdhbCBncm91cCAlcyIKKyN+IG1zZ3N0ciAi4L2B4L6y4L2y4L2Y4L2m4LyL4L2g4L2C4L2j4LyL4L2m4L6h4L264LyL4L2a4L2T4LyLICVzIgorCisjfiBtc2dpZCAibm9uLWV4aXN0aW5nIGdyb3VwICVzIgorI34gbXNnc3RyICLgvYLgvZPgvabgvIvgvZTgvIvgvZjgvbLgvZPgvIvgvZTgvaDgvbLgvIvgvabgvqHgvbrgvIvgvZrgvZPgvIsgJXMiCisKKyN+IG1zZ2lkICJpbGxlZ2FsIG1vZGUgJXMiCisjfiBtc2dzdHIgIuC9geC+suC9suC9mOC9puC8i+C9oOC9guC9o+C8i+C9kOC9luC9puC8i+C9o+C9mOC8iyAlcyIKKworI34gbXNnaWQgImFib3J0aW5nIgorI34gbXNnc3RyICLgvZbgvaLgvIvgvZbgvaTgvbzgvaPgvIvgvaDgvZbgvZHgvIvgvZHgvbzgvI0iCisKKyN+IG1zZ2lkICJjYW5ub3Qgb3BlbiBzdGF0b3ZlcnJpZGU6ICVzIgorI34gbXNnc3RyICLgvabgvbLgvIvgvYrgvbrgvYrgvbLgvIvgvZ/gvbTgvaLgvIvgvZbgvZ7gvYLgvIvgvYHgvIvgvZXgvrHgvbrgvIvgvZjgvIvgvZrgvbTgvYLgvaY6ICVzIgorCisjfiBtc2dpZCAiTXVsdGlwbGUgb3ZlcnJpZGVzIGZvciBcIiVzXCIsIGFib3J0aW5nIgorI34gbXNnc3RyICJcIiVzXCIg4L2C4L2y4LyL4L2R4L284L2T4LyL4L2j4L204LyL4L2m4L6j4LyL4L2Y4L2E4LyL4L2f4L204L2i4LyL4L2W4L2e4L2C4LyL4L2a4L204LyLIOC9luC9ouC8i+C9luC9pOC9vOC9o+C8i+C9oOC9luC9keC8i+C9keC9vOC8jSIKKworI34gbXNnaWQgImZhaWxlZCB3cml0ZSBkdXJpbmcgaGFzaHJlcG9ydCIKKyN+IG1zZ3N0ciAi4L2R4L6y4L6t4LyL4L2i4L6f4L2C4L2m4LyL4L2m4L6Z4L2T4LyL4L2e4L204L2g4L2y4LyL4L2m4L6Q4L2W4L2m4LyL4L2g4L2W4L6y4L2y4LyL4L2T4L2y4LyL4L2g4L2Q4L204L2m4LyL4L2k4L284L2i4LyL4L2W4L6x4L204L2E4LyL4L2h4L284L2R4L2U4LyNIgorCisjfiBtc2dpZCAiY29uZmlndXJhdGlvbiBlcnJvcjogdW5rbm93biBvcHRpb24gJXMiCisjfiBtc2dzdHIgIuC9ouC9suC9mOC8i+C9puC+kuC+suC9suC9guC8i+C9oOC9m+C9vOC9o+C8i+C9luC8izrgvZjgvIvgvaTgvbrgvabgvIvgvZTgvaDgvbLgvIvgvYLgvZHgvZjgvIvgvYHgvIsgJXMiCisKKyN+IG1zZ2lkICJjb25maWd1cmF0aW9uIGVycm9yOiAlcyBkb2VzIG5vdCB0YWtlIGEgdmFsdWUiCisjfiBtc2dzdHIgIuC9ouC9suC9mOC8i+C9puC+kuC+suC9suC9guC8i+C9oOC9m+C9vOC9o+C8i+C9ljogICVzIOC9guC9suC9puC8i+C9guC9k+C9puC8i+C9guC9vOC9hOC8i+C9heC9suC9guC8i+C9mOC9suC8i+C9oOC9luC9giIKKworI34gbXNnaWQgImRwa2c6IHZlcnNpb24gJyVzJyBoYXMgYmFkIHN5bnRheDogJXNcbiIKKyN+IG1zZ3N0ciAiZHBrZzog4L2Q4L284L2T4LyL4L2i4L2y4L2Y4LyLJyVzJ+C9o+C9tOC8i+C9muC9suC9guC8i+C9puC+puC+seC9vOC9ouC8i+C9luC+seC9hOC8i+C9ieC9uuC9puC8i+C9oOC9keC9tOC9guC8izogJXNcbiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJ1bmV4ZWNwdGVkIGVuZCBvZiBsaW5lIGluIHN0YXRvdmVycmlkZSBmaWxlIgorI34gbXNnc3RyICLgvYLgvrLgvaPgvIvgvZDgvbLgvYLgvIsgJWQg4L2C4L204LyL4L2j4L204LyL4L2Q4L204L2Y4LyL4L2m4L6S4L6y4L2y4L2j4LyL4L2Y4L2y4L2E4LyL4L2T4L2E4LyL4L2j4L204LyL4L2i4L264LyL4L2W4LyL4L2Y4L264L2R4LyL4L2U4L2g4L2y4LyL4L2C4L6y4L2j4LyL4L2Q4L2y4L2C4LyL4L2C4L2y4LyL4L2Y4L2H4L204L2CIgorCisjLCBmdXp6eQorI34gbXNnaWQgIi0tY2hlY2stc3VwcG9ydGVkIHRha2VzIG5vIGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiLS0lcyDgvYLgvbLgvIvgvabgvpLgvrLgvbTgvZbgvIvgvaLgvp/gvYLgvabgvIvgvYLgvYXgvbLgvYLgvIvgvaHgvYTgvIvgvZjgvbLgvIvgvaDgvZbgvYIiCisKKyN+IG1zZ2lkICItLWZvcmdldC1vbGQtdW5hdmFpbCB0YWtlcyBubyBhcmd1bWVudHMiCisjfiBtc2dzdHIgIi0t4L2W4L2i4L6X4L264L2R4LyL4L2T4L2y4LyLLeC9ouC+meC9suC9hOC9mOC8iy3gvZjgvbLgvIvgvaDgvZDgvbzgvZbgvIvgvZTgvIsg4L2C4L2y4L2m4LyL4L2m4L6S4L6y4L204L2W4LyL4L2i4L6f4L2C4L2m4LyL4L2C4L2F4L2y4L2C4LyL4L2h4L2E4LyL4L2Y4L2y4LyL4L2g4L2W4L2CIgorCisjfiBtc2dpZCAiIgorI34gIlxuIgorI34gIkNvcHlyaWdodCAoQykgMTk5NCwxOTk1IElhbiBKYWNrc29uLiIKKyN+IG1zZ3N0ciAiIgorI34gIlxuIgorI34gIuC9oOC9keC+suC8i+C9luC9pOC9tOC9puC8i+C9keC9luC9hOC8i+C9huC8iyAoQykg4Lyh4Lyp4Lyp4LykICDgvKHgvKngvKngvKUg4L2o4L2g4L2y4LyL4L2h4L2T4LyLIOC9h+C9uuC9gOC8i+C9pOC9k+C8jSIKKworI34gbXNnaWQgIiIKKyN+ICJVc2FnZTogJXMgWzxvcHRpb25zPiAuLi5dIFstLV0gPGZpbGVuYW1lPlxuIgorI34gIlxuIgorI34gIk9wdGlvbnM6XG4iCisjfiAiICAtLXNlY3Rpb24gPHJlZ2V4cD4gPHRpdGxlPlxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHB1dCB0aGUgbmV3IGVudHJ5IGluIHRoZSA8cmVnZXg+IG1hdGNoZWQgIgorI34gInNlY3Rpb25cbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICBvciBjcmVhdGUgYSBuZXcgb25lIHdpdGggPHRpdGxlPiBpZiBub24tIgorI34gImV4aXN0ZW50LlxuIgorI34gIiAgLS1tZW51ZW50cnk9PHRleHQ+ICAgICAgIHNldCB0aGUgbWVudSBlbnRyeS5cbiIKKyN+ICIgIC0tZGVzY3JpcHRpb249PHRleHQ+ICAgICBzZXQgdGhlIGRlc2NyaXB0aW9uIHRvIGJlIHVzZWQgaW4gdGhlIG1lbnUgIgorI34gImVudHJ5LlxuIgorI34gIiAgLS1pbmZvLWZpbGU9PHBhdGg+ICAgICAgIHNwZWNpZnkgaW5mbyBmaWxlIHRvIGluc3RhbGwgaW4gdGhlICIKKyN+ICJkaXJlY3RvcnkuXG4iCisjfiAiICAtLWRpci1maWxlPTxwYXRoPiAgICAgICAgc3BlY2lmeSBmaWxlIG5hbWUgb2YgaW5mbyBkaXJlY3RvcnkgZmlsZS5cbiIKKyN+ICIgIC0taW5mb2Rpcj08ZGlyZWN0b3J5PiAgICBzYW1lIGFzICctLWRpci1maWxlPTxkaXJlY3Rvcnk+L2RpcicuXG4iCisjfiAiICAtLWluZm8tZGlyPTxkaXJlY3Rvcnk+ICAgbGlrZXdpc2UuXG4iCisjfiAiICAtLWtlZXAtb2xkICAgICAgICAgICAgICAgZG8gbm90IHJlcGxhY2UgZW50cmllcyBub3IgcmVtb3ZlIGVtcHR5IG9uZXMuXG4iCisjfiAiICAtLXJlbW92ZSAgICAgICAgICAgICAgICAgcmVtb3ZlIHRoZSBlbnRyeSBzcGVjaWZpZWQgYnkgPGZpbGVuYW1lPiAiCisjfiAiYmFzZW5hbWUuXG4iCisjfiAiICAtLXJlbW92ZS1leGFjdGx5ICAgICAgICAgcmVtb3ZlIHRoZSBleGFjdCA8ZmlsZW5hbWU+IGVudHJ5LlxuIgorI34gIiAgLS10ZXN0ICAgICAgICAgICAgICAgICAgIGVuYWJsZXMgdGVzdCBtb2RlIChubyBhY3Rpb25zIHRha2VuKS5cbiIKKyN+ICIgIC0tZGVidWcgICAgICAgICAgICAgICAgICBlbmFibGVzIGRlYnVnIG1vZGUgKHNob3cgbW9yZSBpbmZvcm1hdGlvbikuXG4iCisjfiAiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgZG8gbm90IHNob3cgb3V0cHV0IG1lc3NhZ2VzLlxuIgorI34gIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisjfiAiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIuC9o+C9guC8i+C9o+C9uuC9k+C8izogJXMgWzxvcHRpb25zPiAuLi5dIFstLV0gPGZpbGVuYW1lPlxuIgorI34gIlxuIgorI34gIuC9guC9keC9mOC8i+C9geC8i+C9muC9tOC8izpcbiIKKyN+ICIgIC0t4L2R4L2W4L6x4L264LyL4L2a4L2T4LyLIDxyZWdleHA+IDx0aXRsZT5cbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICDgvZDgvbzgvIvgvZbgvYDgvbzgvZHgvIvgvYLgvabgvaLgvZTgvIvgvaDgvZHgvbLgvIsgPHJlZ2V4PiDgvZjgvZDgvbTgvZPgvIvgvZjgvbLgvIvgvZHgvZbgvrHgvbrgvIvgvZrgvZPgvIvgvZPgvYTgvIvgvaPgvbTgvIvgvZbgvZngvbTgvYLgvabgvItcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICDgvaHgvYTgvIvgvZPgvIvgvYLgvabgvaLgvZTgvIvgvYXgvbLgvYLgvIsg4L2C4L2T4L2m4LyL4L2U4LyLLeC9mOC9uuC9k+C9mOC8i+C9qOC9suC9k+C8i+C9lOC8i+C9heC9suC9k+C8iyA8dGl0bGU+IOC9keC9hOC8iyIKKyN+ICLgvYXgvbLgvYLgvIvgvYHgvaLgvIvgvYLgvabgvaLgvIvgvZbgvabgvpDgvrLgvbTgvZPgvIvgvaDgvZbgvZHgvI1cbiIKKyN+ICIgIC0t4L2R4L2A4L2i4LyL4L2G4L2C4LyL4L2Q4L284LyL4L2W4L2A4L284L2R4LyLPTx0ZXh0PiAgICAgICDgvZHgvYDgvaLgvIvgvYbgvYLgvIvgvZDgvbzgvIvgvZbgvYDgvbzgvZHgvIvgvaDgvZHgvbLgvIvgvYLgvZ7gvbLgvIvgvabgvpLgvrLgvbLgvYLgvIvgvaDgvZbgvZHgvI1cbiIKKyN+ICIgIC0t4L2g4L2C4L6y4L264L2j4LyL4L2W4L2k4L2R4LyLPTx0ZXh0PiAgICAg4L2R4L2A4L2i4LyL4L2G4L2C4LyL4L2Q4L284LyL4L2W4L2A4L284L2R4LyL4L2T4L2E4LyL4L2j4L204LyL4L2j4L2C4LyL4L2j4L264L2T4LyL4L2g4L2Q4L2W4LyL4L2T4L2y4LyL4L2o4L2y4L2T4LyL4L2Y4L2y4LyL4L2g4L2C4L6y4L264L2j4LyL4L2W4L2k4L2R4LyL4L2g4L2R4L2y4LyL4L2C4L2e4L2y4LyLIgorI34gIuC9puC+kuC+suC9suC9guC8i+C9oOC9luC9keC8jVxuIgorI34gIiAgLS3gvZbgvaLgvqHgvIvgvZHgvbzgvZPgvIst4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyLPTxwYXRoPiAgICAgICDgvabgvqPgvbzgvZHgvIvgvZDgvbzgvIvgvZPgvYTgvIvgvYLgvZ7gvbLgvIvgvZbgvZngvbTgvYLgvabgvIvgvaDgvZbgvZHgvIvgvZPgvbLgvaDgvbLgvIvgvZHgvbzgvZPgvIvgvaPgvabgvIvgvZbgvaLgvqHgvIvgvZHgvbzgvZPgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIsiCisjfiAi4L2C4L2m4L2j4LyL4L2W4L2A4L284L2R4LyL4L2g4L2W4L2R4LyNXG4iCisjfiAiICAtLeC9puC+o+C9vOC9keC8i+C9kOC9vOC8iy3gvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIs9PHBhdGg+ICAgICAgICDgvZbgvaLgvqHgvIvgvZHgvbzgvZPgvIvgvabgvqPgvbzgvZHgvIvgvZDgvbzgvaDgvbLgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIvgvYDgvrHgvbLgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIvgvZjgvbLgvYTgvIvgvYLgvabgvaPgvIvgvZbgvYDgvbzgvZHgvIvgvaDgvZbgvZHgvI1cbiIKKyN+ICIgIC0t4L2W4L2i4L6h4LyL4L2R4L284L2T4LyL4L2m4L6j4L284L2R4LyL4L2Q4L284LyLPTxkaXJlY3Rvcnk+ICAgICAnLS1kaXItZmlsZT08ZGlyZWN0b3J5Pi9kaXInIOC9keC9hOC8i+C9guC9heC9suC9guC8i+C9lOC8i1xuIgorI34gIiAgLS3gvZbgvaLgvqHgvIvgvZHgvbzgvZPgvIst4L2m4L6j4L284L2R4LyL4L2Q4L284LyLPTxkaXJlY3Rvcnk+ICAg4L2W4L2f4L204L2Y4LyL4L2m4L6m4L264LyLXG4iCisjfiAiICAtLeC9ouC+meC9suC9hOC9mOC8iy3gvZbgvZ7gvYLgvIsgICAgICAgICAgICAgICDgvZDgvbzgvIvgvZbgvYDgvbzgvZHgvIvgvZrgvbTgvIvgvZrgvZbgvIvgvZjgvIvgvZbgvZngvbTgvYLgvabgvIsg4L2h4L2E4LyL4L2T4LyL4L2m4L6f4L284L2E4L2Y4LyL4L2g4L2R4L2y4LyL4L2a4L204LyL4L2i4L6p4LyL4L2W4L2m4L6Q4L6y4L2R4LyL4L2Y4LyLIgorI34gIuC9guC9j+C9hOC8i+C8jVxuIgorI34gIiAgLS3gvaLgvqngvIvgvZbgvabgvpDgvrLgvZHgvIvgvYLgvY/gvYTgvIsgICAgICAgICAgICAgICAgIDxmaWxlbmFtZT4g4L2C4L2e4L2y4LyL4L2i4L6f4L264L2T4LyL4L2Y4L2y4L2E4LyL4L2C4L2y4L2m4LyL4L2C4L2m4L2j4LyL4L2W4L2A4L284L2R4LyL4L2g4L2W4L2R4LyL4L2Y4L2y4LyL4L2Q4L284LyL4L2W4L2A4L284L2R4LyLIgorI34gIuC9oOC9keC9suC8i+C9ouC+qeC8i+C9luC9puC+kOC+suC9keC8i+C9guC9j+C9hOC8i+C8jVxuIgorI34gIiAgLS3gvaLgvqYg4L2W4L2m4L6Q4L6y4L2R4LyL4L2C4L2P4L2E4LyLLeC9j+C9guC8i+C9j+C9guC8i+C9oOC9luC9keC8iyAgICAgICAgIDxmaWxlbmFtZT4g4L2Q4L284LyL4L2W4L2A4L284L2R4LyL4L2P4L2C4LyL4L2P4L2C4LyL4L2g4L2R4L2y4LyL4L2i4L6p4LyL4L2W4L2m4L6Q4L6y4L2R4LyL4L2C4L2P4L2E4LyL4LyNXG4iCisjfiAiICAtLeC9luC9ouC+n+C9guC8i+C9nuC9suC9luC8iyAgICAgICAgICAgICAgICAgICDgvZrgvbLgvYLgvIvgvaHgvbLgvYLgvIvgvZDgvZbgvabgvIvgvaPgvZjgvIvgvaPgvpXgvbzgvYLgvabgvIvgvYXgvZPgvIvgvZbgvZ/gvbzgvZ3gvIvgvajgvbLgvZPgvIsgKOC9luC+seC8i+C9luC8i+C9guC8i+C9heC9suC8i+C9oeC9hOC8i+C9mOC8iyIKKyN+ICLgvaDgvZbgvZHgvIspXG4iCisjfiAiICAtLeC9ouC+kOC+seC9uuC9k+C8i+C9puC9uuC9o+C8jSAgICAgICAgICAgICAgICAgIOC9ouC+kOC+seC9uuC9k+C8i+C9puC9uuC9o+C8i+C9guC+seC9suC8i+C9kOC9luC9puC8i+C9o+C9mOC8i+C9o+C+leC9vOC9guC9puC8i+C9heC9k+C8i+C9luC9n+C9vOC9neC8i+C9qOC9suC9k+C8iyAo4L2W4L2i4L6h4LyL4L2R4L284L2T4LyL4L2n4L264L2E4LyL4L2W4L2A4L2j4LyLIgorI34gIuC9puC+n+C9vOC9k+C8iylcbiIKKyN+ICIgIC0t4L2B4L204LyL4L2m4L2y4L2Y4LyL4L2m4L2y4L2Y4LyLICAgICAgICAgICAgICAgICAg4L2o4L2g4L204L2K4L2y4LyL4L2U4L204L2K4L2y4LyL4L2g4L2V4L6y4L2y4L2T4LyL4L2R4L284L2T4LyL4L2a4L204LyL4L2Y4LyL4L2m4L6f4L284L2T4LyLXG4iCisjfiAiICAtLeC9guC+suC9vOC9guC9puC8i+C9ouC9mCAgICAgICAgICAgICAgICAgICDgvaDgvIvgvZPgvbLgvIvgvYLgvrLgvbzgvYLgvabgvIvgvaLgvZjgvIvgvaDgvZXgvrLgvbLgvZPgvIvgvZHgvbzgvZPgvIvgvaDgvZHgvbLgvIvgvabgvp/gvbzgvZPgvI1cbiIKKyN+ICIgIC0t4L2Q4L284L2T4LyL4L2i4L2y4L2Y4LyLICAgICAgICAgICAgICAgIOC9kOC9vOC9k+C8i+C9ouC9suC9mOC8i+C9oOC9keC9suC8i+C9puC+n+C9vOC9k+C8jVxuIgorCisjfiBtc2dpZCAiY291bGQgbm90IG9wZW4gc3RkZXJyIGZvciBvdXRwdXQhICVzIgorI34gbXNnc3RyICLgvajgvaDgvbTgvYrgvbLgvIvgvZTgvbTgvYrgvbLgvIshICVzIOC9guC9suC8i+C9keC9vOC9k+C8i+C9o+C9tOC8iyBzdGRlcnIg4L2g4L2R4L2y4LyL4L2B4LyL4L2V4L6x4L264LyL4L2Y4LyL4L2a4L204L2C4L2m4LyNIgorCisjfiBtc2dpZCAiJXM6IC0tc2VjdGlvbiBuZWVkcyB0d28gbW9yZSBhcmdzIgorI34gbXNnc3RyICIlczogLS3gvZHgvZbgvrHgvbrgvIvgvZrgvZPgvIvgvaPgvbTgvIvgvajgvbrgvIvgvajgvaLgvIvgvYfgvbLgvIvgvajgvbrgvabgvbLgvIvgvafgvbrgvYTgvIvgvZbgvYDgvaPgvIvgvYLgvYngvbLgvabgvIvgvZHgvYLgvbzgvZTgvIvgvajgvbLgvZPgvI0iCisKKyN+IG1zZ2lkICIlczogb3B0aW9uIC0tJXMgaXMgZGVwcmVjYXRlZCAoaWdub3JlZCkiCisjfiBtc2dzdHIgIiVzOiDgvYLgvZHgvZjgvIvgvYHgvIsgLS0lcyAg4L2E4L284L2m4LyL4L2j4L264L2T4LyL4L2Y4L264L2R4LyL4L2U4LyL4L2m4L6m4L264LyL4L2W4L2e4L2C4LyL4L2h4L2y4LyNKOC9puC+o+C9hOC8i+C9mOC9uuC9keC8i+C9luC9nuC9guC8i+C9oeC9vOC9keC8jSkiCisKKyN+IG1zZ2lkICIlczogdW5rbm93biBvcHRpb24gYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IOC9mOC8i+C9pOC9uuC9puC8i+C9lOC9oOC9suC8i+C9guC9keC9mOC8i+C9geC8iyBgJXMnIgorCisjfiBtc2dpZCAiJXM6IHRvbyBtYW55IGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiJXM6IOC9puC+kuC+suC9tOC9luC8i+C9ouC+n+C9guC9puC8i+C9o+C9uuC8i+C9pOC8jSIKKworI34gbXNnaWQgIiVzOiAtLXNlY3Rpb24gaWdub3JlZCB3aXRoIC0tcmVtb3ZlIgorI34gbXNnc3RyICIlczogLS3gvZHgvZbgvrHgvbrgvIvgvZrgvZPgvIvgvaDgvZHgvbLgvIsgIC0t4L2i4L6p4LyL4L2W4L2m4L6Q4L6y4L2R4LyLIOC9keC9hOC8i+C9heC9suC9guC8i+C9geC9ouC8i+C9puC+o+C9hOC8i+C9mOC9uuC9keC8i+C9luC9nuC9guC8i+C9oeC9vOC9keC8jSIKKworI34gbXNnaWQgIiVzOiAtLWRlc2NyaXB0aW9uIGlnbm9yZWQgd2l0aCAtLXJlbW92ZSIKKyN+IG1zZ3N0ciAiJXM6IC0t4L2g4L2C4L6y4L264L2j4LyL4L2W4L2k4L2R4LyL4L2g4L2R4L2y4LyLIC0t4L2i4L6p4LyL4L2W4L2m4L6Q4L6y4L2R4LyLIOC9keC9hOC8i+C9heC9suC9guC8i+C9geC9ouC8i+C9puC+o+C9hOC8i+C9mOC9uuC9keC8i+C9luC9nuC9guC8i+C9oeC9vOC9keC8jSIKKworI34gbXNnaWQgIiVzOiB0ZXN0IG1vZGUgLSBkaXIgZmlsZSB3aWxsIG5vdCBiZSB1cGRhdGVkIgorI34gbXNnc3RyICIlczog4L2W4L2i4L6f4L2C4LyL4L2e4L2y4L2W4LyL4L2Q4L2W4L2m4LyL4L2j4L2Y4LyLIC0g4L2m4L6j4L284L2R4LyL4L2Q4L284LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2g4L2R4L2y4LyL4L2R4L204L2m4LyL4L2Y4L2Q4L204L2T4LyL4L2Y4L2y4LyL4L2W4L2f4L284LyNIgorCisjfiBtc2dpZCAiJXM6IHdhcm5pbmcsIGlnbm9yaW5nIGNvbmZ1c2luZyBJTkZPLURJUi1FTlRSWSBpbiBmaWxlLiIKKyN+IG1zZ3N0ciAiJXM6IOC9ieC9uuC9k+C8i+C9luC9ouC+oeC8iyAgIOC9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9k+C9hOC8i+C9guC9suC8i+C9mOC9guC9vOC8i+C9ouC+meC9vOC9guC8i+C9keC+suC9guC8iyDgvZbgvaLgvqHgvIvgvZHgvbzgvZPgvIst4L2m4L6j4L284L2R4LyL4L2Q4L284LyLLeC9kOC9vOC8i+C9luC9gOC9vOC9keC8iyDgvabgvqPgvYTgvIvgvZjgvbrgvZHgvIvgvZbgvZ7gvYLgvIvgvZHgvbzgvI0iCisKKyN+IG1zZ2lkICJpbnZhbGlkIGluZm8gZW50cnkiCisjfiBtc2dzdHIgIuC9k+C9tOC9puC8i+C9mOC9uuC9keC8i+C9luC9ouC+oeC8i+C9keC9vOC9k+C8i+C9kOC9vOC8i+C9luC9gOC9vOC9keC8jSIKKworI34gbXNnaWQgIiIKKyN+ICJcbiIKKyN+ICJObyBgU1RBUlQtSU5GTy1ESVItRU5UUlknIGFuZCBubyBgVGhpcyBmaWxlIGRvY3VtZW50cycuXG4iCisjfiAiJXM6IHVuYWJsZSB0byBkZXRlcm1pbmUgZGVzY3JpcHRpb24gZm9yIGBkaXInIGVudHJ5IC0gZ2l2aW5nIHVwXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJcbiIKKyN+ICJgU1RBUlQtSU5GTy1ESVItRU5UUlknIOC9keC9hOC8iyBgVGhpcyBmaWxlIGRvY3VtZW50cycg4L2a4L204LyL4L2Y4L264L2R4LyNXG4iCisjfiAiJXM6IGBkaXInIOC9kOC8i+C9luC9gOC9vOC9keC8iyAtIOC9luC9gOC9vOC9guC8i+C9luC9nuC9guC8i+C9k+C9suC9oOC9suC8i+C9keC9vOC9k+C8i+C9o+C9tOC8i+C9oOC9guC+suC9uuC9o+C8i+C9luC9pOC9keC8i+C9guC9j+C9k+C8i+C9oOC9luC9uuC9luC9puC8i+C9luC9n+C9vOC8i+C9mOC8i+C9muC9tOC9guC9puC8jVxuIgorCisjfiBtc2dpZCAiJXM6IG5vIGZpbGUgJXMsIHJldHJpZXZpbmcgYmFja3VwIGZpbGUgJXMuIgorI34gbXNnc3RyICIlczog4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyLICVzIOC9mOC9uuC9keC8jSDgvaLgvpLgvrHgvZbgvIvgvZDgvYLgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIsgJXMg4L2m4L6z4L2i4LyL4L2g4L2R4L6y4L264L2T4LyL4L2g4L2W4L2R4LyL4L2R4L284LyNIgorCisjfiBtc2dpZCAiJXM6IG5vIGJhY2t1cCBmaWxlICVzIGF2YWlsYWJsZSwgcmV0cmlldmluZyBkZWZhdWx0IGZpbGUuIgorI34gbXNnc3RyICIlczog4L2i4L6S4L6x4L2W4LyL4L2Q4L2C4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyLICVzIOC9oOC9kOC9vOC9luC8i+C9muC9tOC9guC9puC9lOC8i+C9mOC9uuC9keC8jSDgvabgvpTgvbzgvZPgvIvgvabgvpLgvrLgvbLgvYLgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIvgvabgvrPgvaLgvIvgvaDgvZHgvrLgvbrgvZPgvIvgvaDgvZbgvZHgvIvgvZHgvbzgvI0iCisKKyN+IG1zZ2lkICIlczogbm8gYmFja3VwIGZpbGUgJXMgYXZhaWxhYmxlLiIKKyN+IG1zZ3N0ciAiJXM6IOC9ouC+kuC+seC9luC8i+C9kOC9guC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8iyAlcyDgvaDgvZDgvbzgvZbgvIvgvZrgvbTgvYLgvabgvZTgvIvgvZjgvbrgvZHgvI0iCisKKyN+IG1zZ2lkICIlczogbm8gZGVmYXVsdCBmaWxlICVzIGF2YWlsYWJsZSwgZ2l2aW5nIHVwLiIKKyN+IG1zZ3N0ciAiJXM6IOC9puC+lOC9vOC9k+C8i+C9puC+kuC+suC9suC9guC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8iyAlcyDgvaDgvZDgvbzgvZbgvIvgvZrgvbTgvYLgvabgvZTgvIvgvZjgvbrgvZHgvI0g4L2W4L2A4L284L2C4LyL4L2W4L2e4L2C4LyL4L2R4L284LyNIgorCisjfiBtc2dpZCAiJXM6IGZhaWxlZCB0byBsb2NrIGRpciBmb3IgZWRpdGluZyEgJXMiCisjfiBtc2dzdHIgIiVzOiAlcyDgvZ7gvbTgvZPgvIvgvZHgvYLgvIvgvaDgvZbgvZHgvIvgvZPgvbLgvaDgvbLgvIshIOC9keC9vOC9k+C8i+C9o+C9tOC8i+C9puC+o+C9vOC9keC8i+C9kOC9vOC8i+C9o+C+oeC9uuC8i+C9mOC9suC9guC8i+C9ouC+kOC+seC9luC9puC8i+C9k+C9suC8i+C9o+C9tOC8i+C9oOC9kOC9tOC9puC8i+C9pOC9vOC9ouC8i+C9luC+seC9tOC9hOC8i+C9oeC9vOC9keC8jSIKKworI34gbXNnaWQgInRyeSBkZWxldGluZyAlcz8iCisjfiBtc2dzdHIgIiVzIOC9luC9j+C9vOC9k+C8i+C9guC9j+C9hOC8i+C9k+C9suC9oOC9suC8i+C9oOC9luC9keC8i+C9ouC+qeC9vOC9o+C8i+C9luC9puC+kOC+seC9uuC9kT8iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gb3BlbiAlczogJXMiCisjfiBtc2dzdHIgIuC9geC8i+C9luC9puC+oeC9mOC8i+C9mOC8i+C9muC9tOC9guC9puC8iyAlczogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gY2xvc2UgJXMgYWZ0ZXIgcmVhZDogJXMiCisjfiBtc2dzdHIgIiAlc+C9o+C+t+C9guC8i+C9muC9ouC8i+C9luC9oOC9suC8i+C9pOC9tOC9o+C8i+C9mOC8iyAlcyDgvYHgvIvgvZbgvabgvqHgvZjgvabgvIvgvZjgvIvgvZrgvbTgvYLgvabgvI0iCisKKyN+IG1zZ2lkICIlczogZXhpc3RpbmcgZW50cnkgZm9yIGAlcycgbm90IHJlcGxhY2VkIgorI34gbXNnc3RyICIlczogIGAlcycg4L2C4L2y4LyL4L2R4L284L2T4LyL4L2j4L204LyL4L2h4L284L2R4LyL4L2W4L2e4L2y4L2T4LyL4L2U4L2g4L2y4LyL4L2Q4L284LyL4L2W4L2A4L284L2R4LyL4L2a4L2W4LyL4L2Y4LyL4L2W4L2Z4L204L2C4L2m4LyL4L2U4L2m4LyNIgorCisjfiBtc2dpZCAiJXM6IHJlcGxhY2luZyBleGlzdGluZyBkaXIgZW50cnkgZm9yIGAlcyciCisjfiBtc2dzdHIgIiVzOiAgYCVzJ+C9guC9suC8i+C9keC9vOC9k+C8i+C9o+C9tOC8i+C9oeC9vOC9keC8i+C9luC9nuC9suC9k+C8i+C9lOC9oOC9suC8i+C9puC+o+C9vOC9keC8i+C9kOC9vOC8i+C9kOC9vOC8i+C9luC9gOC9vOC9keC8i+C9muC9luC8i+C9luC9meC9tOC9guC9puC8i+C9keC9vOC8jSIKKworI34gbXNnaWQgIiVzOiBjcmVhdGluZyBuZXcgc2VjdGlvbiBgJXMnIgorI34gbXNnc3RyICIlczog4L2R4L2W4L6x4L264LyL4L2a4L2T4LyLIGAlcycg4L2C4L2m4L2i4L2U4LyL4L2C4L2m4L2i4LyL4L2W4L2m4L6Q4L6y4L204L2T4LyL4L2g4L2W4L2R4LyL4L2R4L284LyNIgorCisjfiBtc2dpZCAiJXM6IG5vIHNlY3Rpb25zIHlldCwgY3JlYXRpbmcgTWlzY2VsbGFuZW91cyBzZWN0aW9uIHRvby4iCisjfiBtc2dzdHIgIiVzOiDgvZHgvIvgvZrgvbTgvZPgvIvgvZHgvZbgvrHgvbrgvIvgvZrgvZPgvIvgvZrgvbTgvIvgvZjgvbrgvZHgvI0g4L2m4L6j4LyL4L2a4L284L2C4L2m4LyL4L2R4L2W4L6x4L264LyL4L2a4L2T4LyL4L2a4L204LyL4L2C4L2m4L2i4LyL4L2W4L2m4L6Q4L6y4L204L2T4LyL4L2g4L2W4L2R4LyL4L2R4L284LyNIgorCisjfiBtc2dpZCAiJXM6IG5vIHNlY3Rpb24gc3BlY2lmaWVkIGZvciBuZXcgZW50cnksIHBsYWNpbmcgYXQgZW5kIgorI34gbXNnc3RyICIlczog4L2Q4L284LyL4L2W4L2A4L284L2R4LyL4L2C4L2m4L2i4L2U4LyL4L2C4L2y4LyL4L2R4L284L2T4LyL4L2j4L204LyL4L2R4L2W4L6x4L264LyL4L2a4L2T4LyL4L2C4L2m4L2j4LyL4L2W4L2A4L284L2R4LyL4L2Y4LyL4L2g4L2W4L2R4LyL4L2W4L2m4LyNIOC9mOC9h+C9tOC9guC8i+C9o+C9tOC8i+C9luC9nuC9guC8i+C9keC9vOC8jSIKKworI34gbXNnaWQgIiVzOiBkZWxldGluZyBlbnRyeSBgJXMgLi4uJyIKKyN+IG1zZ3N0ciAiJXM6IOC9kOC9vOC8i+C9luC9gOC9vOC9keC8iyBgJXMgLi4uJyDgvZbgvY/gvbzgvZPgvIvgvYLgvY/gvYTgvIvgvZHgvbzgvI0iCisKKyN+IG1zZ2lkICIlczogZW1wdHkgc2VjdGlvbiBgJXMnIG5vdCByZW1vdmVkIgorI34gbXNnc3RyICIlczog4L2R4L2W4L6x4L264LyL4L2a4L2T4LyLIGAlcycg4L2m4L6f4L284L2E4L2Y4LyL4L2W4L2P4L284L2T4LyL4L2Y4LyL4L2C4L2P4L2E4LyL4L2U4L2m4LyNIgorCisjfiBtc2dpZCAiJXM6IGRlbGV0aW5nIGVtcHR5IHNlY3Rpb24gYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IOC9keC9luC+seC9uuC8i+C9muC9k+C8iyBgJXMnIOC9puC+n+C9vOC9hOC9mOC8i+C9luC9j+C9vOC9k+C8i+C9guC9j+C9hOC8i+C9keC9vOC8jSIKKworI34gbXNnaWQgIiVzOiBubyBlbnRyeSBmb3IgZmlsZSBgJXMnIGFuZCBtZW51IGVudHJ5IGAlcyciCisjfiBtc2dzdHIgIiVzOiDgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIsgYCVzJyDgvZHgvYTgvIvgvZHgvYDgvaLgvIvgvYbgvYLgvIvgvZDgvbzgvIvgvZbgvYDgvbzgvZHgvIsgYCVzJyDgvYLgvbLgvIvgvZHgvbzgvZPgvIvgvaPgvbTgvIvgvZDgvbzgvIvgvZbgvYDgvbzgvZHgvIvgvZjgvbrgvZHgvI0iCisKKyN+IG1zZ2lkICIlczogbm8gZW50cnkgZm9yIGZpbGUgYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IOC9oeC9suC9guC8i+C9puC+o+C9vOC9keC8iyBgJXMnIOC9guC9suC8i+C9keC9vOC9k+C8i+C9o+C9tOC8i+C9kOC9vOC8i+C9luC9gOC9vOC9keC8i+C9mOC9uuC9keC8jSIKKworI34gbXNnaWQgInVuYWJsZSB0byBiYWNrdXAgb2xkICVzLCBnaXZpbmcgdXA6ICVzIgorI34gbXNnc3RyICIlc+C8iyDgvaLgvpngvbLgvYTgvZjgvIvgvaLgvpLgvrHgvZbgvIvgvZDgvYLgvIvgvaDgvZbgvZHgvIvgvZjgvIvgvZrgvbTgvYLgvabgvIsg4L2W4L2A4L284L2C4LyL4L2W4L2e4L2C4LyL4L2R4L284LyLOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyAlczogJXMiCisjfiBtc2dzdHIgIiAlczogJXPgvaDgvZHgvbLgvIvgvIvgvYLgvZ7gvbLgvIvgvZbgvZngvbTgvYLgvabgvIvgvaDgvZbgvZHgvIvgvZjgvIvgvZrgvbTgvYLgvabgvI0gIgorCisjfiBtc2dpZCAiJXM6IGNvdWxkIG5vdCBiYWNrdXAgJXMgaW4gJXM6ICVzIgorI34gbXNnc3RyICIlc+C9guC9suC8iyAlcyDgvaPgvbTgvIvgvaLgvpLgvrHgvZbgvIvgvZDgvYLgvIvgvaDgvZbgvZHgvIvgvZjgvIvgvZrgvbTgvYLgvabgvIsgJXM6ICVz4LyL4L2C4L2y4LyL4L2T4L2E4LyL4LyNIgorCisjfiBtc2dpZCAiJXM6IHdhcm5pbmcgLSB1bmFibGUgdG8gdW5sb2NrICVzOiAlcyIKKyN+IG1zZ3N0ciAiJXM6IOC9ieC9uuC9k+C8i+C9luC9ouC+oeC8iyAtICVzIOC9o+C+oeC9uuC8i+C9mOC9suC9guC8i+C9leC+seC9uuC8i+C9mOC8i+C9muC9tOC9guC9puC8izogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcmVhZCAlczogJWQiCisjfiBtc2dzdHIgIiVzOiAlZOC8i+C9oOC9keC9suC8i+C9ouC+qeC8i+C9luC9puC+kOC+suC9keC8i+C9guC9j+C9hOC8i+C9mOC8i+C9muC9tOC9guC9puC8jSIKKworI34gbXNnaWQgImRiZzogJXMiCisjfiBtc2dzdHIgIuC9jOC9suC8i+C9luC9suC8i+C9h+C9sjogJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gb3BlbiB0bXBmaWxlIChjb250cm9sKSwgJXMiCisjfiBtc2dzdHIgIuC9guC9k+C9puC8i+C9puC+kOC9luC9puC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9geC8i+C9leC+seC9uuC8i+C9k+C9suC8i+C9oOC9kOC9tOC9puC8i+C9pOC9vOC9ouC8i+C9luC+seC9tOC9hOC8i+C9oeC9vOC9keC8iyjgvZrgvZHgvIvgvaDgvZvgvbLgvZPgvIspICAgJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gb3BlbiB0bXBmaWxlIChkYXRhKSwgJXMiCisjfiBtc2dzdHIgIuC9guC9k+C9puC8i+C9puC+kOC9luC9puC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9geC8i+C9leC+seC9uuC8i+C9k+C9suC8i+C9oOC9kOC9tOC9puC8i+C9pOC9vOC9ouC8i+C9luC+seC9tOC9hOC8i+C9oeC9vOC9keC8iyjgvYLgvZPgvZHgvIvgvabgvqHgvbTgvZHgvIspICAgJXMiCisKKyN+IG1zZ2lkICJpbnZhbGlkIG51bWJlciBmb3IgLS1jb21tYW5kLWZkIgorI34gbXNnc3RyICItLWNvbW1hbmQtZmQg4L2C4L2y4LyL4L2R4L284L2T4LyL4L2j4L204LyL4L2T4L204L2m4LyL4L2Y4L264L2R4LyL4L2o4L2E4LyL4L2C4L6y4L2E4L2m4LyNIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHJld2luZCBhdCBzdGFydCBvZiB2c25wcmludGYiCisjfiBtc2dzdHIgInZzbnByaW50ZiDgvaDgvYLgvbzgvIvgvZbgvZngvbTgvYLgvabgvIvgvaPgvbTgvIvgvaPgvbzgvYLgvIvgvZbgvabgvpLgvrHgvbLgvaLgvIvgvZjgvIvgvZrgvbTgvYLgvabgvI0iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gdHJ1bmNhdGUgaW4gdnNucHJpbnRmIgorI34gbXNnc3RyICJ2c25wcmludGYg4L2T4L2E4LyL4L2G4L204L2E4LyL4L2A4L204LyL4L2W4L2f4L284LyL4L2Y4LyL4L2a4L204L2C4L2m4LyNIgorCisjfiBtc2dpZCAid3JpdGUgZXJyb3IgaW4gdnNucHJpbnRmIgorI34gbXNnc3RyICJ2c25wcmludGYg4L2T4L2E4LyL4L2g4L2W4L6y4L204LyL4L2T4L2y4L2g4L2y4LyL4L2g4L2b4L284L2j4LyL4L2W4LyNIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHN0YXQgaW4gdnNucHJpbnRmIgorI34gbXNnc3RyICJ2c25wcmludGYg4L2m4L2y4LyL4L2K4L264L2K4L2y4LyL4L2g4L2W4L2R4LyL4L2Y4LyL4L2a4L204L2C4L2m4LyNIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHJld2luZCBpbiB2c25wcmludGYiCisjfiBtc2dzdHIgInZzbnByaW50ZiDgvZPgvYTgvIvgvaPgvbzgvYLgvIvgvZbgvabgvpLgvrHgvbLgvaLgvIvgvZjgvIvgvZrgvbTgvYLgvabgvI0iCisKKyN+IG1zZ2lkICJyZWFkIGVycm9yIGluIHZzbnByaW50ZiB0cnVuY2F0ZWQiCisjfiBtc2dzdHIgInZzbnByaW50ZiDgvYbgvbTgvYTgvIvgvYDgvbTgvIvgvZbgvZ/gvbzgvIvgvaHgvbzgvZHgvIvgvZjgvbLgvIvgvZPgvYTgvIvgvaPgvrfgvYLgvIvgvZTgvaDgvbLgvIvgvaDgvZvgvbzgvaPgvIvgvZbgvI0iCisKKyN+IG1zZ2lkICJTeXN0ZW0gZXJyb3Igbm8uJWQiCisjfiBtc2dzdHIgIuC9ouC9suC9mOC8i+C9o+C9tOC9guC9puC8i+C9oOC9m+C9vOC9o+C8i+C9luC9oOC9suC8i+C9qOC9hOC8iyAlZCIKKworI34gbXNnaWQgIlNpZ25hbCBuby4lZCIKKyN+IG1zZ3N0ciAi4L2W4L2i4L6h4LyL4L2i4L6f4L2C4L2m4LyL4L2o4L2E4LyLICVkIgorCisjfiBtc2dpZCAiZHBrZzogd2FybmluZyAtICVzIHJldHVybmVkIGVycm9yIGV4aXQgc3RhdHVzICVkXG4iCisjfiBtc2dzdHIgImRwa2c64L2J4L264L2T4LyL4L2W4L2i4L6h4LyLIC0gJXMg4L2m4L6z4L2i4LyL4L2j4L284L2C4LyL4L2h4L284L2R4LyL4L2U4L2g4L2y4LyL4L2g4L2b4L284L2j4LyL4L2W4LyLIOC9guC9k+C9puC8i+C9muC9keC8iyAlZCDgvZXgvrHgvbLgvaLgvIvgvZDgvbzgvZPgvIvgvaDgvZbgvZHgvZ3gvIvgvajgvbLgvZPgvI1cbiIKKworI34gbXNnaWQgImRwa2c6IHdhcm5pbmcgLSAlcyBraWxsZWQgYnkgc2lnbmFsICglcyklc1xuIgorI34gbXNnc3RyICJkcGtnOuC9ieC9uuC9k+C8i+C9luC9ouC+oTogLSAgJXMg4L2g4L2R4L2y4LyLIOC9luC9ouC+oeC8i+C9ouC+n+C9guC9puC8iyAoJXMpJXMg4L2C4L2y4L2m4LyL4L2C4L2m4L2R4LyL4L2h4L284L2R4L2U4LyNXG4iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gcmVhZCBgJXMnIGF0IGxpbmUgJWQiCisjfiBtc2dzdHIgImAlcycg4L2g4L2R4L2y4LyL4L2C4L6y4L2j4LyL4L2Q4L2y4L2C4LyLICVkIOC9o+C9tOC8i+C9o+C+t+C9guC8i+C9k+C9suC8i+C9oOC9kOC9tOC9puC8i+C9pOC9vOC9ouC8i+C9luC+seC9tOC9hOC8i+C9oeC9vOC9keC9lOC8jSIKKworIywgZnV6enkKKyN+IG1zZ2lkICJwYXJzZSBlcnJvciwgaW4gZmlsZSBgJS4yNTVzJyBuZWFyIGxpbmUgJWQiCisjfiBtc2dzdHIgIiVzICDgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIsgYCUuMjU1cycg4L2T4L2E4LyLIOC9guC+suC9o+C8i+C9kOC9suC9guC8iyAlZCDgvYLgvbLgvIvgvaLgvqngvIvgvZbgvI0iCisKKyN+IG1zZ2lkICIgcGFja2FnZSBgJS4yNTVzJyIKKyN+IG1zZ3N0ciAi4L2Q4L204L2Y4LyL4L2m4L6S4L6y4L2y4L2j4LyLIGAlLjI1NXMnIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHJlYWxsb2MgZm9yIHZhcmlhYmxlIGJ1ZmZlciIKKyN+IG1zZ3N0ciAi4L2g4L2C4L6x4L204L2i4LyL4L2F4L2T4LyL4L2C4L2T4L2m4LyL4L2B4L284L2E4L2m4LyL4L2A4L6x4L2y4LyL4L2R4L284L2T4LyL4L2j4L204LyL4L2i4L2y4LyL4L2o4LyL4L2j4L284L2A4LyL4LyL4L2g4L2Q4L204L2m4LyL4L2k4L284L2i4LyL4L2W4L6x4L204L2E4LyL4L2h4L284L2R4L2U4LyNIgorCisjfiBtc2dpZCAicHJvY2Vzc19hcmNoaXZlIC4uLiAgYWxyZWFkeSBkaXNhcHBlYXJlZCAhIgorI34gbXNnc3RyICLgvaPgvabgvIvgvabgvqbgvrHgvbzgvaLgvIvgvaHgvbLgvYLgvIvgvZjgvZvgvbzgvZHgvIsuLi4g4L2n4L264LyL4L2Y4LyL4L2j4L2m4LyL4L2h4L2j4LyL4L2h4L284L2R4L2UICEoX2EpIgorCisjfiBtc2dpZCAiZ29iYmxlIHJlcGxhY2VkIGZpbGUgYCUuMjU1cyciCisjfiBtc2dzdHIgIuC9guC9vOC8i+C9luC9seC9o+C8i+C9guC+seC9suC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8iyBgJS4yNTVzJyDgvZrgvZbgvIvgvZbgvZngvbTgvYLgvabgvIvgvaHgvbzgvZHgvI0iCisKKyN+IG1zZ2lkICJkcGtnOiAlczogd2FybmluZyAtIGZhaWxlZCB0byByZW1vdmUgYCUuMjUwcyc6ICVzXG4iCisjfiBtc2dzdHIgImRwa2c6ICVzOiDgvYngvbrgvZPgvIvgvZbgvaLgvqHgvIsgLSAgYCUuMjUwcycg4L2i4L6p4LyL4L2W4L2m4L6Q4L6y4L2R4LyL4L2C4L2P4L2E4LyL4L2T4L2y4LyL4L2g4L2Q4L204L2m4LyL4L2k4L284L2i4LyL4L2W4L6x4L204L2E4LyL4L2h4L284L2R4LyLOiAlc1xuIgorCisjfiBtc2dpZCAiLS1hdWRpdCBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudHMiCisjfiBtc2dzdHIgIi0tYXVkaXQg4L2C4L2y4L2m4LyL4L2m4L6S4L6y4L204L2W4LyL4L2i4L6f4L2C4L2m4LyL4L2C4LyL4L2T4L2y4LyL4L2h4L2E4LyL4L2Y4L2y4LyL4L2g4L2W4L2CIgorCisjfiBtc2dpZCAiLS15ZXQtdG8tdW5wYWNrIGRvZXMgbm90IHRha2UgYW55IGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiLS15ZXQtdG8tdW5wYWNrIOC9guC9suC9puC8i+C9puC+kuC+suC9tOC9luC8i+C9ouC+n+C9guC9puC8i+C9guC8i+C9k+C9suC8i+C9oeC9hOC8i+C9mOC9suC8i+C9oOC9luC9giIKKworI34gbXNnaWQgIi0tYXNzZXJ0LSogZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnRzIgorI34gbXNnc3RyICItLWFzc2VydC0qIOC9guC9suC9puC8i+C9puC+kuC+suC9tOC9luC8i+C9ouC+n+C9guC9puC8i+C9guC8i+C9k+C9suC8i+C9oeC9hOC8i+C9mOC9suC8i+C9oOC9luC9giIKKworI34gbXNnaWQgIi0tcHJlZGVwLXBhY2thZ2UgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tcHJlZGVwLXBhY2thZ2Ug4L2Q4L204L2Y4LyL4L2m4L6S4L6y4L2y4L2j4LyL4L2C4L6x4L2y4L2m4LyL4L2m4L6S4L6y4L204L2W4LyL4L2i4L6f4L2C4L2m4LyL4L2C4LyL4L2T4L2y4LyL4L2h4L2E4LyL4L2Y4L2y4LyL4L2g4L2W4L2CIgorCisjfiBtc2dpZCAiLS1wcmludC1hcmNoaXRlY3R1cmUgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tcHJpbnQtYXJjaGl0ZWN0dXJlIOC9guC9suC9puC8i+C9puC+kuC+suC9tOC9luC8i+C9ouC+n+C9guC9puC8i+C9guC8i+C9k+C9suC8i+C9oeC9hOC8i+C9mOC9suC8i+C9oOC9luC9giIKKworI34gbXNnaWQgInVuYWJsZSB0byBzdGF0IGluc3RhbGxlZCAlcyBzY3JpcHQgYCUuMjUwcyciCisjfiBtc2dzdHIgIiVzIOC9oeC9suC9guC8i+C9muC9tOC9guC9puC8iyBgJS4yNTBzJyDgvYLgvZ7gvbLgvIvgvZbgvZngvbTgvYLgvabgvIvgvaDgvZbgvZHgvIvgvaHgvbzgvZHgvIvgvZjgvbLgvIsg4L2m4L2y4LyL4L2K4L264L2K4L2y4LyL4L2g4L2W4L2R4LyL4L2Y4LyL4L2a4L204L2C4L2m4LyNIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHN0YXQgbmV3ICVzIHNjcmlwdCBgJS4yNTBzJyIKKyN+IG1zZ3N0ciAiJXMg4L2h4L2y4L2C4LyL4L2a4L204L2C4L2m4LyLIGAlLjI1MHMnIOC9guC9puC9ouC9lOC8i+C9puC9suC8i+C9iuC9uuC9iuC9suC8i+C9oOC9luC9keC8i+C9mOC8i+C9muC9tOC9guC9puC8jSIKKworI34gbXNnaWQgInVuYWJsZSB0byBleGVjdXRlIG5ldyAlcyIKKyN+IG1zZ3N0ciAiJXMg4L2C4L2m4L2i4L2U4LyL4L2j4L2C4LyL4L2j4L264L2T4LyL4L2g4L2Q4L2W4LyL4L2Y4LyL4L2a4L204L2C4L2m4LyNIgorCisjfiBtc2dpZCAiZHBrZzogd2FybmluZyAtIHVuYWJsZSB0byBzdGF0ICVzIGAlLjI1MHMnOiAlc1xuIgorI34gbXNnc3RyICJkcGtnOiDgvYngvbrgvZPgvIvgvZbgvaLgvqHgvIsgLSVzIGAlLjI1MHMnOiAlcyDgvabgvbLgvIvgvYrgvbrgvYrgvbLgvIvgvaDgvZbgvZHgvIvgvZjgvIvgvZrgvbTgvYLgvabgvI1cbiIKKworI34gbXNnaWQgIi0tc2V0LXNlbGVjdGlvbnMgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnQiCisjfiBtc2dzdHIgIi0t4L2C4L2e4L2y4LyL4L2m4L6S4L6y4L2y4L2C4LyLLeC9puC9uuC9o+C8i+C9oOC9kOC9tOC8i+C9muC9tOC8i+C9guC9suC9puC8i+C9puC+kuC+suC9tOC9luC8i+C9ouC+n+C9guC9puC8i+C9guC8i+C9k+C9suC8i+C9oeC9hOC8i+C9mOC9suC8i+C9oOC9luC9giIKKworI34gbXNnaWQgIi0tY2xlYXItc2VsZWN0aW9ucyBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudCIKKyN+IG1zZ3N0ciAiLS3gvZbgvabgvaPgvIst4L2m4L264L2j4LyL4L2g4L2Q4L204LyL4L2C4L2y4L2m4LyL4L2m4L6S4L6y4L204L2W4LyL4L2i4L6f4L2C4L2m4LyL4L2C4LyL4L2T4L2y4LyL4L2h4L2E4LyL4L2Y4L2y4LyL4L2g4L2W4L2CIgorCisjfiBtc2dpZCAiLS1idWlsZCBuZWVkcyBhIGRpcmVjdG9yeSBhcmd1bWVudCIKKyN+IG1zZ3N0ciAiLS3gvZbgvZ/gvbzgvIvgvZbgvaLgvqngvbLgvYLgvabgvIvgvaPgvbTgvIvgvabgvqPgvbzgvZHgvIvgvZDgvbzgvaDgvbLgvIvgvabgvpLgvrLgvbTgvZbgvIvgvaLgvp/gvYLgvabgvIvgvYLgvYXgvbLgvYLgvIvgvZHgvYLgvbzgvZTgvIvgvajgvbLgvZPgvI0iCisKKyN+IG1zZ2lkICIiCisjfiAiZHBrZy1kZWI6IHdhcm5pbmcsIG5vdCBjaGVja2luZyBjb250ZW50cyBvZiBjb250cm9sIGFyZWEuXG4iCisjfiAiZHBrZy1kZWI6IGJ1aWxkaW5nIGFuIHVua25vd24gcGFja2FnZSBpbiBgJXMnLlxuIgorI34gbXNnc3RyICIiCisjfiAi4L2M4L2y4LyL4L2U4L2y4LyL4L2A4L264LyL4L2H4L2y4LyLLeC9jOC9uuC9luC8izog4L2J4L264L2T4LyL4L2W4L2i4L6h4LyLIOC9muC9keC8i+C9oOC9m+C9suC9k+C8i+C9mOC9hOC9oOC8i+C9geC9vOC9hOC9puC8i+C9gOC+seC9suC8i+C9k+C9hOC8i+C9keC9vOC9k+C8i+C9muC9tOC8i+C9nuC9suC9luC8i+C9keC9lOC+seC9keC8i+C9mOC9suC8i+C9oOC9luC9keC8i+C9luC9puC8jVxuIgorI34gIuC9jOC9suC8i+C9lOC9suC8i+C9gOC9uuC8i+C9h+C9suC8iy3gvYzgvbrgvZbgvIs6IGAlcycg4L2T4L2E4LyL4L2j4L204LyL4L2Y4LyL4L2k4L264L2m4LyL4L2U4L2g4L2y4LyL4L2Q4L204L2Y4LyL4L2m4L6S4L6y4L2y4L2j4LyL4L2C4L2F4L2y4L2C4LyL4L2W4L2f4L284LyL4L2W4L2i4L6p4L2y4L2C4L2m4LyL4L2g4L2W4L2R4LyL4L2R4L284LyNXG4iCisKKyN+IG1zZ2lkICJJbnRlcm5hbCBlcnJvciwgY29tcHJlc3NfdHlwZSBgJWknIHVua25vd24hIgorI34gbXNnc3RyICLgvZPgvYTgvIvgvaDgvYHgvbzgvZHgvIvgvZ/gvZvgvbzgvaPgvIvgvZbgvIsg4L2o4L264L2W4LyL4L2W4L2Z4L204L2C4L2m4LyL4L2R4L2W4L6x4L264LyL4L2W4LyLIGAlaScg4L2Y4LyL4L2k4L264L2m4L2U4LyLISIKKworI34gbXNnaWQgIi0tam9pbiByZXF1aXJlcyBvbmUgb3IgbW9yZSBwYXJ0IGZpbGUgYXJndW1lbnRzIgorI34gbXNnc3RyICItLeC9mOC9kOC9tOC9keC8i+C9mOC9muC9mOC9puC8i+C9o+C9tOC8i+C9oeC9k+C8i+C9o+C9guC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9gOC+seC9suC8i+C9puC+kuC+suC9tOC9luC8i+C9ouC+n+C9guC9puC8i+C9guC9heC9suC9guC8i+C9oeC9hOC8i+C9k+C8i+C9o+C9uuC8i+C9pOC8i+C9keC9guC9vOC9lOC8i+C9qOC9suC9k+C8jSIKKworI34gbXNnaWQgIi0tbGlzdHEgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnRzIgorI34gbXNnc3RyICItLeC9kOC9vOC8i+C9oeC9suC9guC8i+C9gOC9suC9oOC9tOC8i+C9o+C9tOC8i+C9puC+kuC+suC9tOC9luC8i+C9ouC+n+C9guC9puC8i+C9guC8i+C9k+C9suC8i+C9oeC9hOC8i+C9mOC9suC8i+C9keC9guC9vCIKKworI34gbXNnaWQgIiIKKyN+ICJcbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDE5OTYgS2ltLU1pbmggS2FwbGFuLiIKKyN+IG1zZ3N0ciAiIgorI34gIlxuIgorI34gIuC9oOC9keC+suC8i+C9luC9pOC9tOC9puC8i+C9keC9luC9hOC8i+C9huC8iyAoQykg4Lyh4Lyp4Lyp4LymIOC9gOC9suC9mOC8iy3gvZjgvbLgvZPgvIsg4L2A4LyL4L2U4LyL4L2j4L2x4L2T4LyNIgorCisjfiBtc2dpZCAiIgorI34gIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSBbLS1dIFs8ZGlybmFtZT5dXG4iCisjfiAiXG4iCisjfiAiT3B0aW9uczpcbiIKKyN+ICIgIC0tdW5zYWZlICAgICBzZXQgc29tZSBhZGRpdGlvbmFsIHBvc3NpYmx5IHVzZWZ1bCBvcHRpb25zLlxuIgorI34gIiAgICAgICAgICAgICAgIHdhcm5pbmc6IHRoaXMgb3B0aW9uIG1heSBnYXJibGUgYW4gb3RoZXJ3aXNlIGNvcnJlY3QgIgorI34gImZpbGUuXG4iCisjfiAiICAtLWhlbHAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyN+ICIgIC0tdmVyc2lvbiAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorI34gbXNnc3RyICIiCisjfiAi4L2j4L2C4LyL4L2j4L264L2T4LyLOiAlcyBbPG9wdGlvbj4gLi4uXSBbLS1dIFs8ZGlybmFtZT5dXG4iCisjfiAiXG4iCisjfiAi4L2C4L2R4L2Y4LyL4L2B4LyL4L2a4L204LyLOlxuIgorI34gIiAgLS3gvYngvbrgvZPgvIvgvYXgvZPgvIsgICAgIOC9leC9k+C8i+C9kOC9vOC9guC9puC8i+C9heC9keC8i+C9qOC9suC9k+C9mOC8i+C9puC+suC9suC9keC8i+C9lOC9oOC9suC8i+C9guC9keC9mOC8i+C9geC8iyDgvYHgvIvgvabgvpDgvbzgvYTgvIvgvaPgvIvgvaPgvbTgvIvgvYLgvZ7gvbLgvIvgvabgvpLgvrLgvbLgvYLgvIvgvaDgvZbgvZHgvI1cbiIKKyN+ICIgICAgICAgICAgICAgICDgvYngvbrgvZPgvIvgvZbgvaLgvqHgvIs6IOC9oOC8i+C9k+C9suC8i+C9guC9keC9mOC8i+C9geC8i+C9oOC9keC9suC8i+C9guC9suC9puC8iyDgvaHgvYTgvIvgvYXgvbLgvZPgvIvgvYTgvbrgvabgvIvgvZbgvZHgvbrgvZPgvIvgvajgvbLgvZPgvIvgvZjgvbLgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIvgvYXgvbLgvYLgvIsg4L2C4L284LyL4L2W4LyL4L2V4L6x4L2y4LyLIgorI34gIuC9oOC9guC+seC9tOC9ouC8i+C9oOC9luC9keC8i+C9o+C9uuC9k+C8i+C9oOC9vOC9hOC8i+C8jSBcbiIKKyN+ICIgIC0t4L2C4L6y4L284L2C4L2m4LyL4L2i4L2Y4LyLICAgICAgIOC9oOC8i+C9k+C9suC8i+C9guC+suC9vOC9guC9puC8i+C9ouC9mOC8i+C9oOC9leC+suC9suC9k+C8i+C9keC9vOC9k+C8i+C9puC+n+C9vOC9k+C8jVxuIgorI34gIiAgLS3gvZDgvbzgvZPgvIvgvaLgvbLgvZjgvIsgICAg4L2Q4L284L2T4LyL4L2i4L2y4L2Y4LyL4L2g4L2R4L2y4LyL4L2m4L6f4L284L2T4LyNXG4iCisKKyN+IG1zZ2lkICJ0cnkgZGVsZXRpbmcgJXMiCisjfiBtc2dzdHIgIiVzIOC9luC9j+C9vOC9k+C8i+C9guC9j+C9hOC8i+C9k+C9suC9oOC9suC8i+C9oOC9luC9keC8i+C9ouC+qeC9vOC9o+C8i+C9luC9puC+kOC+seC9uuC9keC8jSIKKworI34gbXNnaWQgImZhaWxlZCB0byBpbnN0YWxsICVzOyBpdCB3aWxsIGJlIGxlZnQgYXMgJXM6ICVzIgorI34gbXNnc3RyICIlcyDgvYLgvZ7gvbLgvIvgvZbgvZngvbTgvYLgvabgvIvgvaDgvZbgvZHgvIvgvZPgvbLgvIvgvaPgvbTgvIvgvaDgvZDgvbTgvabgvIvgvaTgvbzgvaLgvIvgvZbgvrHgvbTgvYTgvIvgvaHgvbzgvZEg4L2g4L2R4L2y4LyLICVzOiAlc+C8i+C9puC+puC9uuC8i+C9o+C9tOC9puC8i+C9oOC9vOC9hOC8i+C8jSIKKworI34gbXNnaWQgIiVzOiB1bmFibGUgdG8gdW5sb2NrICVzOiAlcyIKKyN+IG1zZ3N0ciAiJXM6ICDgvaPgvqHgvbrgvIvgvZjgvbLgvYLgvIvgvZXgvrHgvbrgvIvgvZPgvbLgvIvgvaDgvZDgvbTgvabgvIvgvaTgvbzgvaLgvIvgvZbgvrHgvbTgvYTgvIvgvaHgvbzgvZHgvI0lczogJXMiCisKKyN+IG1zZ2lkICIlcyAtIHN0YXR1cyBpcyAlcy4iCisjfiBtc2dzdHIgIiVzIC0g4L2C4L2T4L2m4LyL4L2a4L2R4LyL4L2g4L2R4L2y4LyLICVzIOC9qOC9suC9k+C8jSIKKworI34gbXNnaWQgIiBsaW5rIHVucmVhZGFibGUgLSAlcyIKKyN+IG1zZ3N0ciAi4L2g4L2W4L6y4L264L2j4LyL4L2j4L2Y4LyL4L2j4L634L2C4LyL4L2Y4LyL4L2W4L2P4L204L2W4LyLIC0gJXMiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiIgorI34gIndhcm5pbmc6ICVzIGlzIHN1cHBvc2VkIHRvIGJlIGEgc3ltbGluayB0byAlcywgXG4iCisjfiAib3Igbm9uZXhpc3RlbnQ7IGhvd2V2ZXIsIHJlYWRsaW5rIGZhaWxlZDogJXMiCisjfiBtc2dzdHIgIiIKKyN+ICLgvYngvbrgvZPgvIvgvZbgvaLgvqHgvIs6ICVzIOC9oOC9keC9suC8iyAlcyDgvaPgvbTgvIvgvZbgvaLgvqHgvIvgvZjgvZrgvbzgvZPgvIvgvaDgvZbgvrLgvbrgvaPgvIvgvaPgvZjgvIvgvYXgvbLgvYLgvIvgvajgvbLgvZPgvIvgvZHgvYLgvbzgvZTgvIvgvajgvbLgvZPgvItcbiIKKyN+ICIo4L2h4L2E4LyL4L2T4LyL4L2C4L2T4L2m4LyL4L2U4LyL4L2Y4L2y4L2T4LyL4L2U4LyLKSDgvYLgvYTgvIvgvaPgvp/gvaLgvIvgvaHgvYTgvIsg4L2i4L2y4L2M4L2y4LyL4L2j4L2y4L2E4L2A4LyLIOC9oOC9kOC9tOC9puC8i+C9pOC9vOC9ouC8i+C9oOC9luC+seC9tOC9hOC8i+C9oeC9vOC9keC9lDogJXMiCisKKyN+IG1zZ2lkICJMZWF2aW5nICVzICglcykgcG9pbnRpbmcgdG8gJXMuIgorI34gbXNnc3RyICIlcyDgvaPgvbTgvIvgvZHgvZTgvYLgvIvgvZjgvbLgvIsgJXMgKCVzKSDgvaDgvZHgvbLgvIvgvZbgvYDgvbzgvYLgvIvgvZbgvZ7gvYLgvIvgvZHgvbzgvI0iCisKKyN+IG1zZ2lkICJVcGRhdGluZyAlcyAoJXMpIHRvIHBvaW50IHRvICVzLiIKKyN+IG1zZ3N0ciAiJXMgKCVzKSDgvaDgvZHgvbLgvIsgJXMg4L2j4L204LyL4L2R4L2U4L2C4LyL4L2T4L2y4L2g4L2y4LyL4L2R4L284L2T4LyL4L2j4L2m4LyL4L2R4L204L2m4LyL4L2Y4L2Q4L204L2T4LyL4L2W4L2f4L284LyL4L2R4L284LyNIgorCisjfiBtc2dpZCAiUmVtb3ZpbmcgJXMgKCVzKSwgbm90IGFwcHJvcHJpYXRlIHdpdGggJXMuIgorI34gbXNnc3RyICIlcyAoJXMpICAgICVzIOC9keC9hOC8i+C9heC9suC9guC8i+C9geC9ouC8i+C9oOC9vOC9puC8i+C9o+C+oeC9k+C8i+C9mOC9uuC9k+C8i+C9mOC9suC8iyDgvaLgvqngvIvgvZbgvabgvpDgvrLgvZHgvIvgvYLgvY/gvYTgvIvgvZHgvbzgvI0iCisKKyN+IG1zZ2lkICIiCisjfiAiQ2hlY2tpbmcgYXZhaWxhYmxlIHZlcnNpb25zIG9mICVzLCB1cGRhdGluZyBsaW5rcyBpbiAlcyAuLi5cbiIKKyN+ICIoWW91IG1heSBtb2RpZnkgdGhlIHN5bWxpbmtzIHRoZXJlIHlvdXJzZWxmIGlmIGRlc2lyZWQgLSBzZWUgYG1hbiBsbicuKSIKKyN+IG1zZ3N0ciAiIgorI34gIiVzIOC9guC9suC8i+C9kOC9vOC9luC8i+C9muC9tOC9guC9puC8i+C9lOC9oOC9suC8i+C9kOC9vOC9k+C8i+C9ouC9suC9mOC8i+C9muC9tOC8i+C9nuC9suC9luC8i+C9keC9lOC+seC9keC8i+C9oOC9luC9keC8i+C9keC9vOC8iyAgJXMg4L2T4L2E4LyL4L2C4L2y4LyL4L2g4L2W4L6y4L264L2j4LyL4L2j4L2Y4LyL4L2a4L204LyL4L2R4L204L2m4LyL4L2Y4L2Q4L204L2T4LyL4L2W4L2f4L284LyL4L2R4L28Li4uXG4iCisjfiAiKOC9ouC9uuC8i+C9oOC9keC9vOC9keC8i+C9oeC9vOC9keC9lOC8i+C9qOC9suC9k+C8i+C9lOC8i+C9heC9suC9k+C8iyDgvYHgvrHgvbzgvZHgvIvgvYDgvrHgvbLgvabgvIvgvYHgvrHgvbzgvZHgvIvgvaLgvYTgvIvgvYLgvbLgvabgvIvgvZXgvbLgvIvgvZPgvYTgvIvgvaPgvbTgvIvgvZbgvaLgvqHgvIvgvZjgvZrgvbzgvZPgvIvgvaDgvZbgvrLgvbrgvaPgvIvgvaPgvZjgvIvgvZrgvbTgvIvgvaPgvbrgvYLgvabgvIvgvZbgvYXgvbzgvabgvIvgvaDgvZbgvZHgvIsiCisjfiAi4L2a4L204L2C4L2m4LyNIC1gbWFuIGxuJyDgvZbgvaPgvp/gvI0pIgorCisjfiBtc2dpZCAic2xhdmUgbGluayBuYW1lICVzIGR1cGxpY2F0ZWQiCisjfiBtc2dzdHIgIuC9luC+suC9k+C8i+C9guC9oeC9vOC9guC8i+C9oOC9luC+suC9uuC9o+C8i+C9o+C9mOC8i+C9mOC9suC9hOC8iyAlcyDgvaDgvZHgvbLgvIvgvaLgvqvgvbTgvZPgvIvgvZjgvIvgvZbgvZ/gvbzgvIvgvaHgvbzgvZHgvZTgvI0iCisKKyN+IG1zZ2lkICJSZWNvdmVyaW5nIGZyb20gcHJldmlvdXMgZmFpbGVkIHVwZGF0ZSBvZiAlcyAuLi4iCisjfiBtc2dzdHIgIuC9p+C9uuC8i+C9mOC9oOC9suC8iyAlcyDgvYLgvbLgvIvgvaDgvZDgvbTgvabgvIvgvaTgvbzgvaLgvIvgvaDgvZbgvrHgvbTgvYTgvIvgvZjgvbLgvIvgvZHgvbTgvabgvIvgvZjgvZDgvbTgvZPgvIvgvaPgvabgvIvgvabgvrPgvaLgvIvgvYLgvabgvbzgvIvgvaDgvZbgvZHgvIvgvZHgvbwuLi4iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gb3BlbiAlcyBmb3Igd3JpdGU6ICVzIgorI34gbXNnc3RyICLgvaDgvZbgvrLgvbLgvIvgvZPgvbLgvaDgvbLgvIvgvZHgvbzgvZPgvIvgvaPgvbTgvIsgJXMg4L2B4LyL4L2V4L6x4L264LyL4L2Y4LyL4L2a4L204L2C4L2mOiAlcyIKKworI34gbXNnaWQgIkxhc3QgcGFja2FnZSBwcm92aWRpbmcgJXMgKCVzKSByZW1vdmVkLCBkZWxldGluZyBpdC4iCisjfiBtc2dzdHIgIuC9mOC9h+C9tOC9guC8i+C9guC9suC8i+C9kOC9tOC9mOC8i+C9puC+kuC+suC9suC9o+C8iyAlcyAoJXMpIOC9luC+seC9suC9k+C8i+C9mOC9suC9oOC9keC9suC8i+C9ouC+qeC8i+C9meC9puC+kOC+suC9keC8i+C9guC9j+C9hOC8i+C9oeC9vOC9keC9lOC8iyDgvZHgvbrgvIvgvZbgvY/gvbzgvZPgvIvgvYLgvY/gvYTgvZjgvIvgvZHgvIvgvaPgvbTgvI0iCisKKyN+IG1zZ2lkICIiCisjfiAiVGhlcmUgaXMgb25seSAxIHByb2dyYW0gd2hpY2ggcHJvdmlkZXMgJXNcbiIKKyN+ICIoJXMpLiBOb3RoaW5nIHRvIGNvbmZpZ3VyZS5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIiVzIOC9luC+seC9suC9k+C8i+C9mOC9suC8i+C9o+C9puC8i+C9ouC9suC9mOC8iyDgvKEg4L2i4L6Q4L6x4L2E4L2Y4LyL4L2F4L2y4L2C4LyL4L2h4L284L2R4LyNXG4iCisjfiAiKCVzKeC8jSDgvaLgvbLgvZjgvIvgvabgvpLgvrLgvbLgvYLgvIvgvaDgvZbgvZHgvIvgvZPgvbLgvIvgvYLgvIvgvYXgvbLgvIvgvaHgvYTgvIvgvZjgvbrgvZHgvI1cbiIKKworI34gbXNnaWQgIiIKKyN+ICJUaGVyZSBhcmUgJXMgYWx0ZXJuYXRpdmVzIHdoaWNoIHByb3ZpZGUgYCVzJy5cbiIKKyN+ICJcbiIKKyN+ICIgIFNlbGVjdGlvbiAgICBBbHRlcm5hdGl2ZVxuIgorI34gIi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4iCisjfiBtc2dzdHIgIiIKKyN+ICLgvaDgvZHgvbLgvIvgvZPgvYTgvIvgvaPgvbTgvIsgYCVzJyDgvZbgvrHgvbLgvZPgvIvgvZjgvbLgvIsgJXMg4L2m4L6k4L264L2j4LyL4L2Y4LyL4L2a4L204LyL4L2h4L284L2R4LyNXG4iCisjfiAiXG4iCisjfiAiICAg4L2m4L264L2j4LyL4L2g4L2Q4L204LyLICAg4L2m4L6k4L264L2j4LyL4L2YXG4iCisjfiAiLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiIKKworI34gbXNnaWQgImVycm9yIHdyaXRpbmcgc3Rkb3V0OiAlcyIKKyN+IG1zZ3N0ciAic3Rkb3V0IOC9oOC9luC+suC9suC9neC8i+C9keC8i+C9oOC9m+C9vOC9o+C8i+C9ljogJXMiCisKKyN+IG1zZ2lkICJlcnJvciBvciBlb2YgcmVhZGluZyAlcyBmb3IgJXMgKCVzKSIKKyN+IG1zZ3N0ciAiJXMgKCVzKSDgvYLgvbLgvIvgvZHgvbzgvZPgvIvgvaPgvbTgvIsgJXMg4L2j4L634L2C4L2U4LyL4L2R4LyL4L2g4L2b4L284L2j4LyL4L2W4LyL4L2h4L2E4LyL4L2T4LyL4L2o4L2y4LyL4L2o4L284LyL4L2o4L264L2V4LyNIgorCisjfiBtc2dpZCAibWlzc2luZyBuZXdsaW5lIGFmdGVyICVzIgorI34gbXNnc3RyICIlcyDgvYLgvbLgvIvgvaTgvbTgvaPgvIvgvaPgvabgvIvgvYLgvrLgvaPgvIvgvZDgvbLgvYLgvIvgvYLgvabgvaLgvZTgvIvgvZbgvaLgvrPgvYLgvIvgvabgvp/gvbzgvaLgvIvgvZ7gvbTgvYLgvabgvIvgvaHgvbzgvZHgvZTgvI0iCisKKyN+IG1zZ2lkICJTZXJpb3VzIHByb2JsZW06ICVzIgorI34gbXNnc3RyICLgvaDgvZrgvbTgvZbgvIvgvYXgvZPgvIvgvZHgvYDgvaDgvIvgvYTgvaM6ICVzIgorCisjfiBtc2dpZCAiY291bGRuJ3QgYWxsb2NhdGUgbWVtb3J5IGZvciBzdHJkdXAgaW4gZmluZHBhY2thZ2UoJXMpIgorI34gbXNnc3RyICLgvaDgvZrgvbzgvaPgvIvgvZPgvbLgvaDgvbLgvIvgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIsoJXMp4L2T4L2E4LyLIHN0cmR1cCDgvYLgvbLgvIvgvZHgvbzgvZPgvIvgvaPgvbTgvIvgvZHgvrLgvZPgvIvgvZrgvZHgvIvgvabgvqTgvrLgvbzgvZHgvIvgvZjgvIvgvZrgvbTgvYLgvabgvI0iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gYWxsb2NhdGUgYnVmZmVyIGluIGJ1ZmZlcl9jb3B5ICglcykiCisjfiBtc2dzdHIgIuC9guC9k+C9puC8i+C9geC9vOC9hOC9puC8i+C9oOC9keC9suC8i+C9guC9k+C9puC8i+C9geC9vOC9hOC9puC8i+C9oOC9keC+suC8i+C9luC9pOC9tOC9puC8iyAoJXMpIOC9k+C9hOC8i+C9o+C9tOC8i+C9puC+pOC+suC9vOC9keC8i+C9k+C9suC8i+C9oOC9kOC9tOC9puC8i+C9pOC9vOC9ouC8i+C9luC+seC9tOC9hOC8i+C9oeC9vOC9keC8jShfYykiCisKKyN+IG1zZ2lkICJFcnJvciBhbGxvY2F0aW5nIG1lbW9yeSBmb3IgY2ZnZmlsZW5hbWUiCisjfiBtc2dzdHIgIuC9puC9suC8i+C9qOC9uuC9leC8i+C9h+C9suC8i+C9oeC9suC9guC8i+C9puC+o+C9vOC9keC8i+C9mOC9suC9hOC8i+C9guC9suC8i+C9keC9vOC9k+C8i+C9o+C9tOC8i+C9keC+suC9k+C8i+C9muC9keC8i+C9puC+pOC+suC9vOC9keC8i+C9luC9nuC9guC8i+C9k+C9suC9oOC9suC8i+C9oOC9m+C9vOC9o+C8i+C9luC8jSIKKworI34gbXNnaWQgImZhaWxlZCB0byBtYWxsb2MgZm9yIGluZm8gZmlsZSBgJS4yNTVzJyIKKyN+IG1zZ3N0ciAi4L2W4L2i4L6h4LyL4L2R4L284L2T4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyLIGAlLjI1NXMnIOC9guC9suC8i+C9keC9vOC9k+C8i+C9o+C9tOC8i+C9mOC9seC9o+C8i+C9o+C9vOC9gOC8i+C9oOC9luC9keC8i+C9k+C9suC8i+C9oOC9kOC9tOC9puC8i+C9pOC9vOC9ouC8i+C9luC+seC9tOC9hOC8i+C9oeC9vOC9keC9lOC8jSIKKworI34gbXNnaWQgImRpdmVyc2lvbnMgZmlsZSBoYXMgdG9vLWxvbmcgbGluZSBvciBFT0YgW2ldIgorI34gbXNnc3RyICLgvYHgvIvgvabgvpLgvrHgvbTgvaLgvIvgvaHgvbLgvYLgvIvgvabgvqPgvbzgvZHgvIvgvaPgvbTgvIvgvYLgvZPgvZjgvIvgvZjgvbrgvZHgvIvgvabgvIvgvZjgvbrgvZHgvIvgvaLgvbLgvYTgvZjgvIvgvYLgvrLgvaPgvIvgvZDgvbLgvYLgvIvgvaHgvYTgvIvgvZPgvIvgvajgvbLgvIvgvajgvbzgvIvgvajgvbrgvZXgvIvgvaDgvZHgvbTgvYIgW2ldIgorCisjfiBtc2dpZCAicmVhZCBlcnJvciBpbiBkaXZlcnNpb25zIFtpaV0iCisjfiBtc2dzdHIgIuC9geC8i+C9puC+kuC+seC9tOC9ouC8i+C9k+C9hOC8i+C9o+C9tOC8i+C9o+C+t+C9guC8i+C9lOC9oOC9suC8i+C9oOC9m+C9vOC9o+C8i+C9luC8iyBbaWldIgorCisjfiBtc2dpZCAidW5leHBlY3RlZCBFT0YgaW4gZGl2ZXJzaW9ucyBbaWldIgorI34gbXNnc3RyICLgvYHgvIvgvabgvpLgvrHgvbTgvaLgvIvgvZPgvYTgvIvgvaPgvbTgvIvgvaLgvbrgvIvgvZbgvIvgvZjgvbrgvZHgvIvgvZTgvaDgvbLgvIvgvajgvbLgvIvgvajgvbzgvIvgvajgvbrgvZXgvIsgW2lpXSIKKworI34gbXNnaWQgImZnZXRzIGdhdmUgYW4gZW1wdHkgc3RyaW5nIGZyb20gZGl2ZXJzaW9ucyBbaWldIgorI34gbXNnc3RyICLgvajgvbrgvZXgvIvgvYLgvbrgvYrgvbLgvabgvbLgvIvgvYLgvbLgvabgvIvgvYHgvIvgvabgvpLgvrHgvbTgvaLgvIvgvaPgvabgvIvgvaHgvbLgvYLgvIvgvaLgvpLgvrHgvbTgvZPgvIvgvabgvp/gvbzgvYTgvZjgvIvgvYXgvbLgvYLgvIvgvZbgvrHgvbLgvZPgvIvgvZPgvbTgvYIgW2lpXSIKKworI34gbXNnaWQgImRpdmVyc2lvbnMgZmlsZSBoYXMgdG9vLWxvbmcgbGluZSBvciBFT0YgW2lpXSIKKyN+IG1zZ3N0ciAi4L2B4LyL4L2m4L6S4L6x4L204L2i4LyL4L2h4L2y4L2C4LyL4L2m4L6j4L284L2R4LyL4L2j4L204LyL4L2C4L2T4L2Y4LyL4L2Y4L264L2R4LyL4L2m4LyL4L2Y4L264L2R4LyL4L2i4L2y4L2E4L2Y4LyL4L2C4L6y4L2j4LyL4L2Q4L2y4L2C4LyL4L2h4L2E4LyL4L2T4LyL4L2o4L2y4LyL4L2o4L284LyL4L2o4L264L2V4LyL4L2g4L2R4L204L2CIFtpaV0iCisKKyN+IG1zZ2lkICJyZWFkIGVycm9yIGluIGRpdmVyc2lvbnMgW2lpaV0iCisjfiBtc2dzdHIgIuC9geC8i+C9puC+kuC+seC9tOC9ouC8i+C9k+C9hOC8i+C9o+C9tOC8i+C9o+C+t+C9guC8i+C9lOC9oOC9suC8i+C9oOC9m+C9vOC9o+C8i+C9luC8iyBbaWlpXSIKKworI34gbXNnaWQgInVuZXhwZWN0ZWQgRU9GIGluIGRpdmVyc2lvbnMgW2lpaV0iCisjfiBtc2dzdHIgIuC9geC8i+C9puC+kuC+seC9tOC9ouC8i+C9k+C9hOC8i+C9o+C9tOC8i+C9ouC9uuC8i+C9luC8i+C9mOC9uuC9keC8i+C9lOC9oOC9suC8i+C9qOC9suC8i+C9qOC9uuC8i+C9qOC9uuC9leC8iyBbaWlpXSIKKworI34gbXNnaWQgImZnZXRzIGdhdmUgYW4gZW1wdHkgc3RyaW5nIGZyb20gZGl2ZXJzaW9ucyBbaWlpXSIKKyN+IG1zZ3N0ciAi4L2o4L264L2V4LyL4L2C4L264L2K4L2y4L2m4L2y4LyL4L2C4L2y4LyL4L2B4LyL4L2m4L6S4L6x4L204L2i4LyL4L2j4L2m4LyL4L2h4L2y4L2C4LyL4L2i4L6S4L6x4L204L2T4LyL4L2m4L6f4L284L2E4L2Y4LyL4L2F4L2y4L2C4LyL4L2W4L6x4L2y4L2T4LyL4L2h4L284L2R4LyLW2lpaV0iCisKKyN+IG1zZ2lkICJjb3VsZG4ndCBtYWxsb2MgaW4gZXhlY2JhY2tlbmQiCisjfiBtc2dzdHIgIuC9o+C9guC8i+C9o+C9uuC9k+C8i+C9oOC9kOC9luC8i+C9k+C9suC9oOC9suC8i+C9ouC+kuC+seC9luC8i+C9kOC9guC8i+C9k+C9hOC8i+C9o+C9tOC8i+C9mOC9o+C8i+C9o+C9vOC9gOC8i+C9oOC9luC9keC8i+C9mOC8i+C9muC9tOC9guC9puC8jSIKKworI34gbXNnaWQgImNvdWxkbid0IHN0cmR1cCBpbiBleGVjYmFja2VuZCIKKyN+IG1zZ3N0ciAi4L2j4L2C4LyL4L2j4L264L2T4LyL4L2g4L2Q4L2W4LyL4L2T4L2y4L2g4L2y4LyL4L2i4L6S4L6x4L2W4LyL4L2Q4L2C4LyL4L2T4L2E4LyL4L2j4L204LyL4L2m4L2y4LyL4L2K4L2i4L2M4L2y4LyL4LyL4L2o4L2U4LyL4L2g4L2W4L2R4LyL4L2Y4LyL4L2a4L204L2C4L2m4LyNIgorCisjfiBtc2dpZCAiZmFpbGVkIGFsbG9jYXRpbmcgbWVtb3J5IGZvciB2YXJpYWJsZSBgY3RybGFyZWEnIgorI34gbXNnc3RyICLgvaDgvYLgvrHgvbTgvaLgvIvgvYXgvZPgvIsgYGN0cmxhcmVhJyDgvZHgvbzgvZPgvIvgvaPgvbTgvIvgvZHgvrLgvZPgvIvgvZrgvZHgvIvgvabgvqTgvrLgvbzgvZHgvZTgvIvgvZHgvIvgvaDgvZDgvbTgvabgvIvgvaTgvbzgvaLgvIvgvZbgvrHgvbTgvYTgvIvgvaHgvbzgvZHgvZTgvI0iCisKKyN+IG1zZ2lkICJDYW5ub3QgZ2V0IEVOT0VOVCB2YWx1ZSBmcm9tICVzOiAlcyIKKyN+IG1zZ3N0ciAi4L2o4L2y4LyL4L2o4L264L2T4LyL4L2o4L284LyL4L2o4L2y4LyL4L2o4L264L2T4LyL4L2K4L2y4LyLIOC9guC9k+C9puC8i+C9guC9vOC9hOC8i+C9oOC9keC9suC8iyAlcyDgvaPgvabgvIvgvaPgvbrgvZPgvIvgvZjgvbLgvIvgvZrgvbTgvYLgvabgvIs6ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGVuc3VyZSAlcyBub25leGlzdGVudDogJXMiCisjfiBtc2dzdHIgIiVzIOC9oOC9keC9suC8i+C9guC9k+C9puC8i+C9lOC8i+C9mOC9uuC9k+C9mOC8i+C9puC+puC9uuC8i+C9hOC9uuC9puC8i+C9j+C9suC9guC8i+C9luC9n+C9vOC8i+C9mOC8i+C9muC9tOC9guC9pjogJXMiCisKKyN+IG1zZ2lkICIiCisjfiAid2FybmluZzogJXMgaXMgc3VwcG9zZWQgdG8gYmUgYSBzbGF2ZSBzeW1saW5rIHRvXG4iCisjfiAiICVzLCBvciBub25leGlzdGVudDsgaG93ZXZlciwgcmVhZGxpbmsgZmFpbGVkOiAlcyIKKyN+IG1zZ3N0ciAiIgorI34gIuC9ieC9uuC9k+C8i+C9luC9ouC+oTogICVzIOC9oOC9keC9suC8iyBcbiIKKyN+ICIlcyDgvaHgvYTgvIvgvZMg4L2C4L2T4L2m4LyL4L2U4LyL4L2Y4L2y4L2T4LyL4L2U4LyLIOC9guC9suC8i+C9luC+suC9k+C8i+C9guC9oeC9vOC9guC8i+C9luC9ouC+oeC8i+C9mOC9muC9vOC9k+C8i+C9oOC9luC+suC9uuC9o+C8i+C9o+C9mOC8i+C9qOC9suC9k+C8i+C9keC9guC9vOC8iyDgvYLgvYTgvIvgvaPgvp/gvaLgvIvgvaHgvYTgvIsg4L2j4L634L2C4LyL4L2T4L2y4L2g4L2y4LyL4L2g4L2W4L6y4L264L2j4LyL4L2j4L2Y4LyLIgorI34gIuC9oOC9kOC9tOC9puC8i+C9pOC9vOC9ouC8i+C9oOC9luC+seC9vOC9hOC8i+C9oeC9vOC9keC9lDogJXMiCisKKyN+IG1zZ2lkICIiCisjfiAiZHBrZzogcmVnYXJkaW5nICVzIGNvbnRhaW5pbmcgJXM6XG4iCisjfiAiIHBhY2thZ2UgdXNlcyBCcmVha3M7IG5vdCBzdXBwb3J0ZWQgaW4gdGhpcyBkcGtnXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJkcGtnOiAlcyDgvZPgvYTgvIvgvZPgvIsgJXMg4L2h4L284L2R4LyL4L2Y4L2y4L2g4L2y4LyL4L2m4L6Q4L284L2i4LyL4L2j4L2m4LyLOlxuIgorI34gIiDgvZDgvbTgvZjgvIvgvabgvpLgvrLgvbLgvaPgvIvgvYLgvrHgvbLgvabgvIvgvZbgvaLgvIvgvZjgvZrgvZjgvabgvIvgvZrgvbTgvIvgvaPgvYLgvIvgvaPgvbrgvZPgvIvgvaDgvZDgvZbgvIvgvajgvbLgvZPgvIsgIOC9oOC8i+C9k+C9suC8iyBkcGtnIOC9k+C9hOC8i+C9o+C9tOC8i+C9ouC+kuC+seC9luC8i+C9puC+kOC+seC9vOC9ouC8i+C9mOC8i+C9oOC9luC9keC8i+C9mOC9suC8i1xuIgorCisjfiBtc2dpZCAidW5zdXBwb3J0ZWQgZGVwZW5kZW5jeSBwcm9ibGVtIC0gbm90IGluc3RhbGxpbmcgJS4yNTBzIgorI34gbXNnc3RyICIlLjI1MHMg4L2C4L2e4L2y4LyL4L2W4L2Z4L204L2C4L2m4LyL4L2Y4L2y4LyL4L2g4L2W4L2R4L2d4LyL4L2j4L2m4LyLIC0g4L2i4L6S4L6x4L2W4LyL4L2m4L6Q4L6x4L284L2i4LyL4L2Y4LyL4L2g4L2W4L2R4LyL4L2W4L2g4L2y4LyL4L2i4L6f4L264L2T4LyL4L2g4L2W4L6y4L264L2j4LyL4L2C4L6x4L2y4LyL4L2R4L2A4L2g4LyL4L2E4L2j4LyLIOC8jSIKKworI34gbXNnaWQgImRwa2c6IHdhcm5pbmcgLSBpZ25vcmluZyBCcmVha3MgIVxuIgorI34gbXNnc3RyICJkcGtnOiDgvYngvbrgvZPgvIvgvZbgvaLgvqHgvIsgLSDgvZbgvaLgvIvgvZjgvZrgvZjgvabgvIvgvZrgvbTgvIvgvabgvqPgvYTgvIvgvZjgvbrgvZHgvIvgvZbgvZ7gvYLgvIvgvZHgvbzgvIsgIVxuIgorCisjfiBtc2dpZCAidG8iCisjfiBtc2dzdHIgIuC9o+C9tOC8iyIKKworI34gbXNnaWQgImZyb20iCisjfiBtc2dzdHIgIuC9o+C9puC8iyIKKworI34gbXNnaWQgImVycm9yIHJlYWRpbmcgJXMiCisjfiBtc2dzdHIgIiVzIOC9o+C+t+C9guC8i+C9lOC9oOC9suC8i+C9oOC9m+C9vOC9o+C8i+C9luC8jSIKKworI34gbXNnaWQgIiVzOiBmYWlsZWQgdG8gZXhlYyBnemlwIC1kYyIKKyN+IG1zZ3N0ciAiJXM6IGd6aXAgLWRjIOC9o+C9guC8i+C9o+C9uuC9k+C8i+C9oOC9kOC9luC8i+C9k+C9suC8i+C9oOC9kOC9tOC9puC8i+C9pOC9vOC9ouC8i+C9luC+seC9tOC9hOC8i+C9oeC9vOC9keC9lOC8jSIKKworI34gbXNnaWQgIiVzOiBmYWlsZWQgdG8gZXhlYyBiemlwMiAtZGMiCisjfiBtc2dzdHIgIiVzOiBiemlwMiAtZGMg4L2j4L2C4LyL4L2j4L264L2T4LyL4L2g4L2Q4L2W4LyL4L2T4L2y4LyL4L2j4L204LyL4L2g4L2Q4L204L2m4LyL4L2k4L284L2i4LyL4L2W4L6x4L204L2E4LyL4L2h4L284L2R4L2U4LyNIgorCisjfiBtc2dpZCAiJXM6IGZhaWxlZCB0byBleGVjIGJ6aXAyICVzIgorI34gbXNnc3RyICIlczogYnppcDIgJXMg4L2j4L2C4LyL4L2j4L264L2T4LyL4L2g4L2Q4L2W4LyL4L2T4L2y4LyL4L2j4L204LyL4L2g4L2Q4L204L2m4LyL4L2k4L284L2i4LyL4L2W4L6x4L204L2E4LyL4L2h4L284L2R4L2U4LyNIgorCisjfiBtc2dpZCAibWFuZmxhZyIKKyN+IG1zZ3N0ciAi4L2j4L2C4LyL4L2Q4L284L2C4LyL4L2f4L204L2i4LyL4L2i4L6f4L2C4L2m4LyNIgorCisjfiBtc2dpZCAiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOiB2ZXJzaW9uIGNvbnRhaW5zIGAgJyIKKyN+IG1zZ3N0ciAiYCVzJyDgvabgvIvgvabgvpLgvbzgvIsg4L2C4L2e4L2y4LyL4L2W4L2m4L6f4L204L2T4LyLIGAlLjI1NXMnIOC9o+C9tOC8izog4L2Q4L284L2T4LyL4L2i4L2y4L2Y4LyL4L2T4L2E4LyL4L2T4LyLIGAgJyDgvaHgvbzgvZHgvI0iCisKKyN+IG1zZ2lkICIlczogY2xvc2UgJXMgYWZ0ZXIgcmVhZDogJXMiCisjfiBtc2dzdHIgIiVzOiDgvaPgvrfgvYLgvIvgvZTgvaDgvbLgvIvgvaTgvbTgvaPgvIvgvZjgvIsgJXMg4L2B4LyL4L2W4L2m4L6h4L2Y4LyLOiAlcyIKKworI34gbXNnaWQgIiVzOiBjYW4ndCBiYWNrdXAgb2xkICVzLCBnaXZpbmcgdXA6ICVzIgorI34gbXNnc3RyICIlczogJXMg4L2i4L6Z4L2y4L2E4L2Y4LyL4L2i4L6S4L6x4L2W4LyL4L2Q4L2C4LyL4L2g4L2W4L2R4LyL4L2Y4L2y4LyL4L2a4L204L2C4L2m4LyNIOC9luC9gOC9vOC9guC8i+C9luC9nuC9guC8i+C9keC9vOC8izogJXMiCisKKyN+IG1zZ2lkICItLWFkbWluZGlyIG5lZWRzIGEgZGlyZWN0b3J5IGFyZ3VtZW50IgorI34gbXNnc3RyICItLeC9luC9keC9guC8i+C9puC+kOC+seC9vOC9hOC8i+C9puC+o+C9vOC9keC8i+C9kOC9vOC8i+C9o+C9tOC8i+C9puC+o+C9vOC9keC8i+C9kOC9vOC9oOC9suC8i+C9puC+kuC+suC9tOC9luC8i+C9ouC+n+C9guC9puC8i+C9heC9suC9guC8i+C9keC9guC9vCIKKworI34gbXNnaWQgIi0tcmVtb3ZlIG5lZWRzIGEgc2luZ2xlIGFyZ3VtZW50IgorI34gbXNnc3RyICItLSDgvaLgvqngvIvgvZbgvabgvpDgvrLgvZHgvIvgvYLgvY/gvYTgvIvgvZPgvbLgvIvgvaPgvbTgvIvgvabgvpLgvrLgvbTgvZbgvIvgvaLgvp/gvYLgvabgvIvgvaLgvpDgvrHgvYTgvIvgvZTgvIvgvYXgvbLgvYLgvIvgvZHgvYLgvbzgvZTgvIvgvajgvbLgvZPgvI0iCisKKyN+IG1zZ2lkICItLXRydWVuYW1lIG5lZWRzIGEgc2luZ2xlIGFyZ3VtZW50IgorI34gbXNnc3RyICItLeC9mOC9suC9hOC8i+C9luC9keC9uuC9k+C8i+C9lOC8i+C9o+C9tOC8iyDgvabgvpLgvrLgvbTgvZbgvIvgvaLgvp/gvYLgvabgvIvgvaLgvpDgvrHgvYTgvIvgvZTgvIvgvYXgvbLgvYLgvIvgvZHgvYLgvbwiCisKKyN+IG1zZ2lkICJkcGtnLWRpdmVydDogJXMiCisjfiBtc2dzdHIgIuC9jOC9suC8i+C9lOC9suC8i+C9gOC9uuC8i+C9h+C9suC8iy3gvYHgvIvgvZXgvrHgvbzgvYLgvabgvIvgvabgvpLgvrHgvbTgvaLgvIvgvZY6ICVzIgorCisjfiBtc2dpZCAiWW91IG5lZWQgLS1oZWxwIgorI34gbXNnc3RyICLgvYHgvrHgvbzgvZHgvIvgvaPgvbTgvIstLeC9guC+suC9vOC9guC9puC8i+C9ouC9mOC8i+C9keC9guC9vCIKKworI34gbXNnaWQgIi0tcmVtb3ZlIG5lZWRzIG9uZSBhcmd1bWVudHMiCisjfiBtc2dzdHIgIi0t4L2i4L6p4LyL4L2W4L2m4L6Q4L6y4L2R4LyL4L2C4L2P4L2E4LyL4L2T4L2y4LyL4L2j4L204LyL4L2m4L6S4L6y4L204L2W4LyL4L2i4L6f4L2C4L2m4LyL4L2C4L2F4L2y4L2C4LyL4L2R4L2C4L28IgorCisjfiBtc2dpZCAiZHBrZy1zdGF0b3ZlcnJpZGU6ICVzIgorI34gbXNnc3RyICLgvYzgvbLgvIvgvZTgvbLgvIvgvYDgvbrgvIvgvYfgvbLgvIst4L2m4L2y4LyL4L2K4L264L2K4L2y4LyL4L2f4L204L2i4LyL4L2W4L2e4L2COiAlcyIKKworI34gbXNnaWQgIllvdSBuZWVkIC0taGVscC4iCisjfiBtc2dzdHIgIuC9geC+seC9vOC9keC8i+C9o+C9tOC8iy0t4L2C4L6y4L284L2C4L2m4LyL4L2i4L2Y4LyL4L2R4L2C4L28IgorCisjfiBtc2dpZCAib3BlbiAlczogJXMiCisjfiBtc2dzdHIgIiVzIOC9geC8i+C9leC+seC9ujogJXMiCisKKyN+IG1zZ2lkICJjcmVhdGUgJXM6ICVzIgorI34gbXNnc3RyICIlczogJXMg4L2C4L2m4L2i4LyL4L2W4L2m4L6Q4L6y4L204L2T4LyL4L2g4L2W4L2R4LyNIgorCisjfiBtc2dpZCAiY2xvc2UgJXM6ICVzIgorI34gbXNnc3RyICIlcyDgvYHgvIvgvZbgvabgvqHgvZjgvIvgvZHgvbw6ICVzIgorCisjfiBtc2dpZCAiaW5zdGFsbCBuZXcgJXM6ICVzIgorI34gbXNnc3RyICIlcyDgvYLgvabgvaLgvZTgvIvgvYLgvZ7gvbLgvIvgvZbgvZngvbTgvYLgvabgvIvgvaDgvZbgvZHgvIs6ICVzIgorCisjfiBtc2dpZCAiJXM6IHVubG9jayAlczogJXMiCisjfiBtc2dzdHIgIiVzOiAgJXMg4L2j4L6h4L264LyL4L2Y4L2y4L2C4LyL4L2V4L6x4L264LyLOiAlcyIKKworI34gbXNnaWQgIiVzOiByZWFkICVzOiAlZCIKKyN+IG1zZ3N0ciAiJXM6IOC9o+C+t+C9guC8iyAlczogJWQiCisKKyN+IG1zZ2lkICJ1cGRhdGUtYWx0ZXJuYXRpdmVzOiAlcyIKKyN+IG1zZ3N0ciAi4L2R4L204L2m4LyL4L2Y4L2Q4L204L2T4LyL4L2W4L2f4L284LyL4L2T4L2y4L2g4L2y4LyLLeC9puC+pOC9uuC9o+C8i+C9mOC8i+C9muC9tDogJXMiCisKKyN+IG1zZ2lkICItLWFkbWluZGlyIG5lZWRzIGEgPGRpcmVjdG9yeT4gYXJndW1lbnQiCisjfiBtc2dzdHIgIi0t4L2W4L2R4L2C4LyL4L2m4L6Q4L6x4L284L2E4LyL4L2m4L6j4L284L2R4LyL4L2Q4L284LyL4L2j4L204LyLICA8ZGlyZWN0b3J5PiAg4L2m4L6S4L6y4L204L2W4LyL4L2i4L6f4L2C4L2m4LyL4L2F4L2y4L2C4LyL4L2R4L2C4L284L2U4LyL4L2o4L2y4L2T4LyNIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIG9wZW4gJXM6ICVzIgorI34gbXNnc3RyICIlcyDgvYHgvIvgvZXgvrHgvbrgvIvgvZPgvbLgvIvgvaDgvZDgvbTgvabgvIvgvaTgvbzgvaLgvIvgvaDgvZbgvrHgvbTgvYTgvIvgvaHgvbzgvZE6ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgJXMgYXMgJXMiCisjfiBtc2dzdHIgIiVzIOC9oOC9keC9suC8iyAlcyDgvabgvqbgvbrgvIvgvYLgvZ7gvbLgvIvgvZbgvZngvbTgvYLgvabgvIvgvaDgvZbgvZHgvIvgvZjgvIvgvZrgvbTgvYLgvabgvI0iCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3BvL2VsLmdtbyBiL2Rwa2ctMS4xNi4xLjEvcG8vZWwuZ21vCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQzYWIxY2QKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3BvL2VsLmdtbwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3BvL2VsLnBvIGIvZHBrZy0xLjE2LjEuMS9wby9lbC5wbwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44ZTEyMjhiCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9wby9lbC5wbwpAQCAtMCwwICsxLDc0NjcgQEAKKyMgdHJhbnNsYXRpb24gb2YgZHBrZ19wb19lbC5wbyB0byBHcmVlaworIyBUaGlzIGZpbGUgaXMgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIHNhbWUgbGljZW5zZSBhcyB0aGUgUEFDS0FHRSBwYWNrYWdlLgorIyBDb3B5cmlnaHQgKEMpIFlFQVIgVEhFIFBBQ0tBR0UnUyBDT1BZUklHSFQgSE9MREVSLgorIworIyBLb25zdGFudGlub3MgTWFyZ2FyaXRpcyA8bWFya29zQGRlYmlhbi5vcmc+LCAyMDAzLgorIyBHZW9yZ2UgUGFwYW1pY2hlbGFraXMgPGdlb3JnZUBzdGVwLmdyPiwgMjAwNC4KKyMgR2VvcmdlIFBhcGFtaWNoZWxha2lzIDxkZWJpYW4tbDEwbi1ncmVla0BsaXN0cy5kZWJpYW4ub3JnPiwgMjAwNC4KKyMgR3JlZWsgVHJhbnNsYXRpb24gVGVhbSA8ZGViaWFuLWwxMG4tZ3JlZWtAbGlzdHMuZGViaWFuLm9yZz4sIDIwMDUuCisjIHF1YWQtbnJnLm5ldCA8Z2FsYXhpY29AcXVhZC1ucmcubmV0PiwgMjAwNS4KKyMgcXVhZC1ucmcubmV0IDx5b2Rlc3lAcXVhZC1ucmcubmV0PiwgMjAwOC4KK21zZ2lkICIiCittc2dzdHIgIiIKKyJQcm9qZWN0LUlkLVZlcnNpb246IGRwa2dfcG9fZWxcbiIKKyJSZXBvcnQtTXNnaWQtQnVncy1UbzogZGViaWFuLWRwa2dAbGlzdHMuZGViaWFuLm9yZ1xuIgorIlBPVC1DcmVhdGlvbi1EYXRlOiAyMDExLTEwLTE0IDA3OjExKzAyMDBcbiIKKyJQTy1SZXZpc2lvbi1EYXRlOiAyMDA4LTA4LTMxIDIxOjA5KzAzMDBcbiIKKyJMYXN0LVRyYW5zbGF0b3I6IHF1YWQtbnJnLm5ldCA8eW9kZXN5QHF1YWQtbnJnLm5ldD5cbiIKKyJMYW5ndWFnZS1UZWFtOiBHcmVlayA8ZGViaWFuLWwxMG4tZ3JlZWtAbGlzdHMuZGViaWFuLm9yZz5cbiIKKyJMYW5ndWFnZTogZWxcbiIKKyJNSU1FLVZlcnNpb246IDEuMFxuIgorIkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD1VVEYtOFxuIgorIkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXRcbiIKKyJvcmc+XG4iCisib3JnPlxuIgorIlgtR2VuZXJhdG9yOiBLQmFiZWwgMS4xMS40XG4iCisiUGx1cmFsLUZvcm1zOiAgbnBsdXJhbHM9MjsgcGx1cmFsPShuICE9IDEpO1xuIgorIlxuIgorCisjOiBsaWIvZHBrZy9hci5jOjY2CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgY2hhcmFjdGVyICclYycgaW4gYXJjaGl2ZSAnJS4yNTBzJyBtZW1iZXIgJyUuMTZzJyBzaXplIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2FyLmM6ODEgbGliL2Rwa2cvYXIuYzo5NyBsaWIvZHBrZy9hci5jOjEwOCBsaWIvZHBrZy9hci5jOjExMgorIzogbGliL2Rwa2cvYXIuYzoxMzQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBmaWxlICclcyciCittc2dzdHIgIs6xzrTPjc69zrHPhM6/IM+Ezr8gzqzOvc6/zrnOs868zrEgz4TOv8+FIM6xz4HPh861zq/Ov8+FIM+AzrfOs86uz4IgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2FyLmM6OTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZ2VuZXJhdGVkIGNvcnJ1cHQgYXIgaGVhZGVyIGZvciAnJXMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2FyLmM6MTIzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgYXIgbWVtYmVyIGZpbGUgKCVzKSIKK21zZ3N0ciAizrHPgM6tz4TPhc+HzrUgzrcgzrTOt868zrnOv8+Fz4HOs86vzrEgz4TOv8+FIM+Az4HOv8+Dz4nPgc65zr3Ov8+NIM6xz4HPh861zq/Ov8+FIHRtcGZpbGUgKGRhdGEpIgorCisjOiBsaWIvZHBrZy9hci5jOjEzMAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiYXIgbWVtYmVyIGZpbGUgKCVzKSIKK21zZ3N0ciAizrHPgM6tz4TPhc+HzrUgzrcgzrTOt868zrnOv8+Fz4HOs86vzrEgz4TOv8+FIM+Az4HOv8+Dz4nPgc65zr3Ov8+NIM6xz4HPh861zq/Ov8+FIHRtcGZpbGUgKGRhdGEpIgorCisjOiBsaWIvZHBrZy9idWZmZXIuYzoxOTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZWFkIG9uIGJ1ZmZlciBjb3B5IGZvciAlcyIKK21zZ3N0ciAizrHPgM6/z4TPhc+Hzq/OsSDPg8+Ezr8gYnVmZmVyX2NvcHkgKCVzKSIKKworIzogbGliL2Rwa2cvYnVmZmVyLmM6MjEyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgaW4gd3JpdGUgb24gYnVmZmVyIGNvcHkgZm9yICVzIgorbXNnc3RyICLOsc+Azr/PhM+Fz4fOr86xIM+Dz4TOvyBidWZmZXJfY29weSAoJXMpIgorCisjOiBsaWIvZHBrZy9idWZmZXIuYzoyMjAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInNob3J0IHJlYWQgb24gYnVmZmVyIGNvcHkgZm9yICVzIgorbXNnc3RyICLOss+BzrHPh861zq/OsSDOsc69zqzOs869z4nPg863IM+Dz4TOt869IGJ1ZmZlcl9jb3B5ICglcykiCisKKyM6IGxpYi9kcGtnL2J1ZmZlci5jOjI4OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgdGFyIgorbXNnaWQgImZhaWxlZCB0byBzZWVrICVzIgorbXNnc3RyICLOsc+Azq3PhM+Fz4fOtSDOtyDOtc66z4TOrc67zrXPg863IM+EzrfPgiB0YXIiCisKKyM6IGxpYi9kcGtnL2NvbW1hbmQuYzoxNzggbGliL2Rwa2cvY29tbWFuZC5jOjIwNCBzcmMvaGVscC5jOjYyMQorIzogc3JjL3Byb2Nlc3NhcmMuYzo5OCBzcmMvcHJvY2Vzc2FyYy5jOjEzOCBzcmMvcHJvY2Vzc2FyYy5jOjQzMgorIzogc3JjL3Byb2Nlc3NhcmMuYzo4MzkgZHBrZy1kZWIvYnVpbGQuYzo0NTkgZHBrZy1kZWIvYnVpbGQuYzo1MzgKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTYxIGRwa2ctZGViL2V4dHJhY3QuYzozMTcgZHBrZy1kZWIvaW5mby5jOjY1CisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6NjkgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQ1NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGV4ZWN1dGUgJXMgKCVzKSIKK21zZ3N0ciAizrHOtM+Nzr3Osc+EzrcgzrcgzrXOus+Ezq3Ou861z4POtyAlcyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzo4MworIywgYy1mb3JtYXQKK21zZ2lkICIlczogZGVjb21wcmVzc2lvbiIKK21zZ3N0ciAiJXM6IM6xz4DOv8+Dz4XOvM+Azq/Otc+DzrciCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6ODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGNvbXByZXNzaW9uIgorbXNnc3RyICIlczogz4PPhc68z4DOr861z4POtyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yIGJpbmRpbmcgaW5wdXQgdG8gZ3ppcCBzdHJlYW0iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxMjQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHJlYWQgZXJyb3I6ICclcyciCittc2dzdHIgIiVzOiDOtc+Dz4nPhM61z4HOuc66z4wgz4PPhs6szrvOvM6xIGd6aXA6IGAlcyciCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTMyIGxpYi9kcGtnL2NvbXByZXNzLmM6MTM2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCB3cml0ZSBlcnJvciIKK21zZ3N0ciAiJXM6IM61z4PPic+EzrXPgc65zrrPjCDPg8+GzqzOu868zrEgZ3ppcDogYCVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yIGJpbmRpbmcgb3V0cHV0IHRvIGd6aXAgc3RyZWFtIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTU3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCByZWFkIGVycm9yIgorbXNnc3RyICIlczogzrXPg8+Jz4TOtc+BzrnOus+MIM+Dz4bOrM67zrzOsSBnemlwOiBgJXMnIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE2NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgd3JpdGUgZXJyb3I6ICclcyciCittc2dzdHIgIiVzOiDOtc+Dz4nPhM61z4HOuc66z4wgz4PPhs6szrvOvM6xIGd6aXA6IGAlcyciCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTgwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCB3cml0ZSBlcnJvcjogJXMiCittc2dzdHIgIiVzOiDOtc+Dz4nPhM61z4HOuc66z4wgz4PPhs6szrvOvM6xIGd6aXA6IGAlcyciCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjIwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvciBiaW5kaW5nIGlucHV0IHRvIGJ6aXAyIHN0cmVhbSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjIzMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIHJlYWQgZXJyb3I6ICclcyciCittc2dzdHIgIiVzOiDOtc+Dz4nPhM61z4HOuc66z4wgz4PPhs6szrvOvM6xIGJ6aXAyOiBgJXMnIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI0MCBsaWIvZHBrZy9jb21wcmVzcy5jOjI0NCBsaWIvZHBrZy9jb21wcmVzcy5jOjI5NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIHdyaXRlIGVycm9yIgorbXNnc3RyICIlczogzrXPg8+Jz4TOtc+BzrnOus+MIM+Dz4bOrM67zrzOsSBiemlwMjogYCVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yIGJpbmRpbmcgb3V0cHV0IHRvIGJ6aXAyIHN0cmVhbSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI2NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIHJlYWQgZXJyb3IiCittc2dzdHIgIiVzOiDOtc+Dz4nPhM61z4HOuc66z4wgz4PPhs6szrvOvM6xIGJ6aXAyOiBgJXMnIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI3NSBsaWIvZHBrZy9jb21wcmVzcy5jOjI4NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIHdyaXRlIGVycm9yOiAnJXMnIgorbXNnc3RyICIlczogzrXPg8+Jz4TOtc+BzrnOus+MIM+Dz4bOrM67zrzOsSBiemlwMjogYCVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyODIKK21zZ2lkICJ1bmV4cGVjdGVkIGJ6aXAyIGVycm9yIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVwZGF0ZXMgZGlyZWN0b3J5IGNvbnRhaW5zIGZpbGUgYCUuMjUwcycgd2hvc2UgbmFtZSBpcyB0b28gbG9uZyAobGVuZ3RoPSVkLCAiCisibWF4PSVkKSIKK21zZ3N0ciAiIgorIs6/IM66zrHPhM6szrvOv86zzr/PgiDOtc69zrfOvM61z4HPjs+DzrXPic69IM+AzrXPgc65zq3Ph861zrkgz4TOvyDOsc+Bz4fOtc6vzr8gYCUuMjUwcycgz4TOvyDPjM69zr/OvM6xIM+Ezr/PhSDOv8+Azr/Or86/z4UgIgorIs61zq/Ovc6xzrkgz4DOv867z40gzrzOsc66z4HPjSAozrzOrc6zzrXOuM6/z4I9JWQsIM68zrXOsz0lZCkiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVwZGF0ZXMgZGlyZWN0b3J5IGNvbnRhaW5zIGZpbGVzIHdpdGggZGlmZmVyZW50IGxlbmd0aCBuYW1lcyAoYm90aCAlZCBhbmQgJWQpIgorbXNnc3RyICIiCisizr8gzrrOsc+EzqzOu86/zrPOv8+CIM61zr3Ot868zrXPgc+Oz4POtc+Jzr0gz4DOtc+BzrnOrc+HzrXOuSDOsc+Bz4fOtc6vzrEgzrzOtSDOtM65zrHPhs6/z4HOtc+EzrnOus6sIM68zrXOs86tzrjOtyDOv869zr/OvM6sz4TPic69ICjOus6xzrkgIgorIiVkIM66zrHOuSAlZCkiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHNjYW4gdXBkYXRlcyBkaXJlY3RvcnkgYCUuMjU1cyciCittc2dzdHIgIs6xzrTPjc69zrHPhM63IM63IM+DzqzPgc+Jz4POtyDPhM6/z4UgzrrOsc+EzrHOu8+MzrPOv8+FIM61zr3Ot868zrXPgc+Oz4POtc+Jzr0gYCUuMjU1cyciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZW1vdmUgaW5jb3Jwb3JhdGVkIHVwZGF0ZSBmaWxlICUuMjU1cyIKK21zZ3N0ciAizrHPgM6/z4TPhc+Hzq/OsSDOsc+GzrHOr8+BzrXPg863z4Igz4TOv8+FIM+Dz4XOs8+Hz4nOvc61z4XOvM6tzr3Ov8+FIM6xz4HPh861zq/Ov8+FIM61zr3Ot868zq3Pgc+Jz4POt8+CICUuMjU1cyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxMjEgZHBrZy1kZWIvYnVpbGQuYzo0NDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBgJS4yNTVzJyIKK21zZ3N0ciAizrHOtM+Nzr3Osc+EzrcgzrcgzrTOt868zrnOv8+Fz4HOs86vzrEgYCUuMjU1cyciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTI1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmaWxsICUuMjUwcyB3aXRoIHBhZGRpbmciCittc2dzdHIgIs6xzrTPjc69zrHPhM6/IM+Ezr8gzrPOrc68zrnPg868zrEgJS4yNTBzIM68zrUgz4DOsc+BzrHOs86tzrzOuc+DzrciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTI3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCAlLjI1MHMgYWZ0ZXIgcGFkZGluZyIKK21zZ3N0ciAizrHOtM+Nzr3Osc+Ezr8gz4TOvyDOus6xzrjOrM+BzrnPg868zrEgJS4yNTBzIM68zrXPhM6sIM6xz4DPjCDPgM6xz4HOsc6zzq3OvM65z4POtyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxMjkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNlZWsgdG8gc3RhcnQgb2YgJS4yNTBzIGFmdGVyIHBhZGRpbmciCittc2dzdHIgIs6xzrTPjc69zrHPhM6/IM69zrEgz4jOrM6+z4kgz4TOt869IM6xz4HPh86uIM+Ezr/PhSAlLjI1MHMgzrzOtc+Ezqwgz4TOvyBwYWRkaW5nIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjE5NQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIG9wZW4gdG1wZmlsZSBmb3IgdnNucHJpbnRmIgorbXNnaWQgInVuYWJsZSB0byBvcGVuIGxvY2sgZmlsZSAlcyBmb3IgdGVzdGluZyIKK21zZ3N0ciAizrHOtM+Nzr3Osc+Ezr8gz4TOvyDOrM69zr/Ouc6zzrzOsSDPhM6/z4UgdG1wZmlsZSDOs865zrEgdnNucHJpbnRmIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjIyMQorbXNnaWQgInVuYWJsZSB0byBvcGVuL2NyZWF0ZSBzdGF0dXMgZGF0YWJhc2UgbG9ja2ZpbGUiCittc2dzdHIgIs6xzrTPjc69zrHPhM63IM+Ezr8gzqzOvc6/zrnOs868zrEgzq4gzrcgzrTOt868zrnOv8+Fz4HOs86vzrEgz4TOv8+FIM66zrvOtc65zrTPjs68zrHPhM6/z4Igz4TOt8+CIM6yzqzPg863z4IgzrrOsc+EzqzPg8+EzrHPg863z4IiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjMxCittc2dpZCAieW91IGRvIG5vdCBoYXZlIHBlcm1pc3Npb24gdG8gbG9jayB0aGUgZHBrZyBzdGF0dXMgZGF0YWJhc2UiCittc2dzdHIgIiIKKyLOtM61zr0gzq3Ph861z4TOtSDPhM63zr0gzqzOtM61zrnOsSDOs865zrEgzr3OsSDOvs61zrrOu861zrnOtM+Oz4POtc+EzrUgz4TOtyDOss6sz4POtyDOtM61zrTOv868zq3Ovc+Jzr0gzrrOsc+EzqzPg8+EzrHPg863z4IgZHBrZyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyMzMKKyMsIGZ1enp5CisjfCBtc2dpZCAidW5hYmxlIHRvIGxvY2sgZHBrZyBzdGF0dXMgZGF0YWJhc2UiCittc2dpZCAiZHBrZyBzdGF0dXMgZGF0YWJhc2UiCittc2dzdHIgIs6xzrTPhc69zrHOvM6vzrEgzrrOu861zrnOtM+OzrzOsc+Ezr/PgiDOss6sz4POt8+CIM60zrXOtM6/zrzOrc69z4nOvSDOus6xz4TOrM+Dz4TOsc+DzrfPgiBkcGtnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjI1NworbXNnaWQgInJlcXVlc3RlZCBvcGVyYXRpb24gcmVxdWlyZXMgc3VwZXJ1c2VyIHByaXZpbGVnZSIKK21zZ3N0ciAizrcgzrbOt8+Ezr/Pjc68zrXOvc63IM61zr3Orc+BzrPOtc65zrEgzrHPgM6xzrnPhM61zq8gz4DPgc6/zr3PjM68zrnOsSDPhc+AzrXPgc+Hz4HOrs+Dz4TOtyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyNjIKK21zZ2lkICJ1bmFibGUgdG8gYWNjZXNzIGRwa2cgc3RhdHVzIGFyZWEiCittc2dzdHIgIs6xzrTPjc69zrHPhM63IM63IM+Az4HPjM+DzrLOsc+Dzrcgz4PPhM63zr0gz4DOtc+BzrnOv8+Hzq4gzrrOsc+EzqzPg8+EzrHPg863z4IgZHBrZyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyNjQKK21zZ2lkICJvcGVyYXRpb24gcmVxdWlyZXMgcmVhZC93cml0ZSBhY2Nlc3MgdG8gZHBrZyBzdGF0dXMgYXJlYSIKK21zZ3N0ciAiIgorIs63IM61zr3Orc+BzrPOtc65zrEgzrHPhc+Ezq4gzrHPgM6xzrnPhM61zq8gz4DPgc+Mz4POss6xz4POtyDOsc69zqzOs869z4nPg863z4IvzrXOs86zz4HOsc+Gzq7PgiDPg8+EzrfOvSDPgM61z4HOuc6/z4fOriDOus6xz4TOrM+Dz4TOsc+DzrfPgiAiCisiZHBrZyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozMDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlbW92ZSBteSBvd24gdXBkYXRlIGZpbGUgJS4yNTVzIgorbXNnc3RyICLOsc+Azr/PhM+Fz4fOr86xIM6xz4bOsc6vz4HOtc+DzrfPgiDPhM6/IM60zrnOus+MIM68zr/PhSDOtc69zrfOvM61z4HPic+EzrnOus+MIM6xz4HPh861zq/OvyAlLjI1NXMiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzQ3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAizrHOtM+Fzr3Osc68zq/OsSDOtc6zzrPPgc6xz4bOrs+CIM+EzrfPgiDOtc69zrfOvM61z4HPic68zq3Ovc63z4IgzrrOsc+EzqzPg8+EzrHPg863z4Igz4TOv8+FIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM0OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgIs6xzrTPhc69zrHOvM6vzrEgzrrOsc64zrHPgc65z4POvM6/z40gz4TOt8+CIM61zr3Ot868zrXPgc+JzrzOrc69zrfPgiDOus6xz4TOrM+Dz4TOsc+DzrfPgiDPhM6/z4UgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzUxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB0cnVuY2F0ZSBmb3IgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgIs6xzrTPjc69zrHPhM6/z4Igzr8gz4jOsc67zrnOtM65z4POvM+Mz4Igz4TOt8+CIM6xzr3Osc69zrXPic68zq3Ovc63z4IgzrrOsc+EzqzPg8+EzrHPg863z4Igz4TOv8+FIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM1MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZnN5bmMgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgIiIKKyLOsc60z43Ovc6xz4TOv8+CIM6/IM+Dz4XOs8+Hz4HOv869zrnPg868z4zPgiAoZnN5bmMpIM+EzrfPgiDOsc69zrHOvc61z4nOvM6tzr3Ot8+CIM66zrHPhM6sz4PPhM6xz4POt8+CIM+Ezr/PhSBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICLOsc60z4XOvc6xzrzOr86xIM66zrvOtc65z4POr868zrHPhM6/z4Igz4TOt8+CIM61zr3Ot868zrXPgc+JzrzOrc69zrfPgiDOus6xz4TOrM+Dz4TOsc+DzrfPgiDPhM6/z4UgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzU4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICLOsc60z43Ovc6xz4TOtyDOtyDOtc6zzrrOsc+EzqzPg8+EzrHPg863IM+EzrfPgiDOtc69zrfOvM61z4HPic68zq3Ovc63z4IgzrrOsc+EzqzPg8+EzrHPg863z4Igz4TOv8+FIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy9kaXIuYzo1MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHJlYWQgZmlsZWRlc2NyaXB0b3IgZmxhZ3MgZm9yICUuMjUwcyIKK21zZ2lkICJ1bmFibGUgdG8gZ2V0IGZpbGUgZGVzY3JpcHRvciBmb3IgZGlyZWN0b3J5ICclcyciCittc2dzdHIgIs6xzrTPjc69zrHPhM63IM63IM6xzr3OrM6zzr3Pic+Dzrcgz4TPic69IM+DzrfOvM6szr3Pg861z4nOvSDPgM61z4HOuc6zz4HOsc+Gzq3OsSDOsc+Bz4fOtc6vzr/PhSDPhM6/z4UgJS4yNTBzIgorCisjOiBsaWIvZHBrZy9kaXIuYzo1NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgZGlyZWN0b3J5ICclcyciCittc2dzdHIgIs6xzrTPjc69zrHPhM6/IM+Ezr8gzqzOvc6/zrnOs868zrEgz4TOv8+FIM6xz4HPh861zq/Ov8+FIM+AzrfOs86uz4IgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2Rpci5jOjY5IGxpYi9kcGtnL2Rpci5jOjEzMQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gZGlyZWN0b3J5ICclcyciCittc2dzdHIgIs6xzrTPjc69zrHPhM6/IM+Ezr8gzqzOvc6/zrnOs868zrEgz4TOv8+FIM6xz4HPh861zq/Ov8+FIM+AzrfOs86uz4IgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2Rpci5jOjEwOSBzcmMvZGl2ZXJ0Y21kLmM6MjE4IGRwa2ctc3BsaXQvc3BsaXQuYzoyMDIKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjkzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBmaWxlICclcyciCittc2dzdHIgIs6xzrTPjc69zrHPhM6/IM+Ezr8gzqzOvc6/zrnOs868zrEgz4TOv8+FIM6xz4HPh861zq/Ov8+FIM+AzrfOs86uz4IgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2Rpci5jOjExMSBzcmMvZGl2ZXJ0Y21kLmM6MjMyIHNyYy9kaXZlcnRjbWQuYzozNzcKKyM6IHNyYy9zdGF0Y21kLmM6MjE3IGRwa2ctZGViL2J1aWxkLmM6NTk4IGRwa2ctc3BsaXQvam9pbi5jOjY1CisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTg3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNDA2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBmaWxlICclcyciCittc2dzdHIgIs6xzrTPjc69zrHPhM6/IM+Ezr8gzqzOvc6/zrnOs868zrEgz4TOv8+FIM6xz4HPh861zq/Ov8+FIM+AzrfOs86uz4IgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2Rpci5jOjExMyBzcmMvZGl2ZXJ0Y21kLmM6MjM0IHNyYy9kaXZlcnRjbWQuYzozNzkKKyM6IGRwa2ctZGViL2J1aWxkLmM6NjAwIGRwa2ctc3BsaXQvam9pbi5jOjY3IGRwa2ctc3BsaXQvcXVldWUuYzoxODkKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzE0IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNDA4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgZmlsZSAnJXMnIgorbXNnc3RyICLOsc60z43Ovc6xz4TOtyDOtyDOtc66zrrOrc69z4nPg863IM+Dz4TOvyB2bnNwcmludGYiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzozOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIGRldGFpbHMgb2YgYCUuNTBzJyB0byBgJS4yNTBzJyIKK21zZ3N0ciAizrHPgM6/z4TPhc+Hzq/OsSDOtc6zzrPPgc6xz4bOrs+CIM67zrXPgM+Ezr/OvM61z4HOtc65z47OvSDPhM6/z4UgYCUuNTBzJyDPg8+Ezr8gYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0MjMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuICclcycgZm9yIHdyaXRpbmcgJXMgZGF0YWJhc2UiCittc2dzdHIgIs6xz4DOv8+Ez4XPh86vzrEgzrHOvc6/zq/Os868zrHPhM6/z4Igz4TOv8+FIGAlcycgzrPOuc6xIM61zrPOs8+BzrHPhs6uICVzIM+AzrvOt8+Bzr/Phs6/z4HOuc+Ozr0iCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0MjYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgYnVmZmVyaW5nIG9uICVzIGRhdGFiYXNlIGZpbGUiCittc2dzdHIgIs6xzrTPjc69zrHPhM6/z4Igzr8gzr/Pgc65z4POvM+Mz4Igz4TOv8+FIGJ1ZmZlcmluZyDPg8+Ezr8gzrHPgc+HzrXOr86/IM66zrHPhM6sz4PPhM6xz4POt8+CIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDM4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgJXMgZGF0YWJhc2UgcmVjb3JkIGFib3V0ICclLjUwcycgdG8gJyUuMjUwcyciCittc2dzdHIgIs6xz4DOv8+Ez4XPh86vzrEgzrXOs86zz4HOsc+Gzq7PgiAlcyDOus6xz4TOsc+Hz47Pgc63z4POt8+CIM+Dz4fOtc+EzrnOus6sIM68zrUgYCUuNTBzJyDPg8+Ezr8gYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NDYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBmbHVzaCAlcyBkYXRhYmFzZSB0byAnJS4yNTBzJyIKK21zZ3N0ciAizrHPgM6/z4TPhc+Hzq/OsSDOus6xzrjOsc+BzrnPg868zr/PjSDPgM67zrfPgc6/z4bOv8+BzrnPjs69ICVzIM+Dz4TOvyBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ0OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZzeW5jICVzIGRhdGFiYXNlIHRvICclLjI1MHMnIgorbXNnc3RyICLOsc+Azr/PhM+Fz4fOr86xIM+Dz4XOs8+Hz4HOv869zrnPg868zr/PjSAlcyDPgM67zrfPgc6/z4bOv8+BzrnPjs69IM+Dz4TOvyBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ1MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNsb3NlICclLjI1MHMnIGFmdGVyIHdyaXRpbmcgJXMgZGF0YWJhc2UiCittc2dzdHIgIs6xz4DOv8+Ez4XPh86vzrEgzrrOu861zrnPg86vzrzOsc+Ezr/PgiDPhM6/z4UgYCUuMjUwcycgzrzOtc+Ezqwgz4TOt869IM61zrPOs8+BzrHPhs6uIM+AzrvOt8+Bzr/Phs6/z4HOuc+Ozr0gJXMiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NTUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBsaW5rICclLjI1MHMnIHRvICclLjI1MHMnIGZvciBiYWNrdXAgb2YgJXMgZGF0YWJhc2UiCittc2dzdHIgIiIKKyLOsc+Azq3PhM+Fz4fOtSDOvyDOtM61z4POvM+Mz4Igz4TOv8+FIGAlLjI1MHMnIM+Dz4TOvyBgJS4yNTBzJyDOs865zrEgzrHOvc+Ezq/Os8+BzrHPhs6/IM+Ez4nOvSDPgM67zrfPgc6/z4bOv8+BzrnPjs69IM+Ezr/PhSAiCisiJXMiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NTgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBpbnN0YWxsICclLjI1MHMnIGFzICclLjI1MHMnIGNvbnRhaW5pbmcgJXMgZGF0YWJhc2UiCittc2dzdHIgIiIKKyLOsc+Azr/PhM+Fz4fOr86xIM61zrPOus6xz4TOrM+Dz4TOsc+DzrfPgiDPhM6/z4UgYCUuMjUwcycgz4nPgiBgJS4yNTBzJyDPgM6/z4Ugz4DOtc+BzrnOrc+HzrXOuSDPgM67zrfPgc6/z4bOv8+Bzq/Otc+CICVzIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6OTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiB1bnJlY292ZXJhYmxlIGZhdGFsIGVycm9yLCBhYm9ydGluZzpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MTAwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogb3V0c2lkZSBlcnJvciBjb250ZXh0LCBhYm9ydGluZzpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MTIwCisjLCBmdXp6eQorI3wgbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBjbGVhbnVwIGVudHJ5IgorbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBlcnJvciBjb250ZXh0IgorbXNnc3RyICLOtyDOvc6tzrEgzrXOus66zrHOuM6xz4HOuc+Dz4TOuc66zq4gzrrOsc+EzrHPh8+Oz4HOt8+DzrcgzrLPgc6tzrjOt866zrUgzrXOus+Ez4zPgiDOvM69zq7OvM63z4IiCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoxODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBlcnJvciB3aGlsZSBjbGVhbmluZyB1cDpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorIiVzOiDPg8+GzqzOu868zrEgzrrOsc+Ezqwgz4TOv869IM66zrHOuM6xz4HOuc+DzrzPjDpcbiIKKyIgJXNcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjIwMQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZHBrZzogdG9vIG1hbnkgbmVzdGVkIGVycm9ycyBkdXJpbmcgZXJyb3IgcmVjb3ZlcnkgISFcbiIKK21zZ2lkICIlczogdG9vIG1hbnkgbmVzdGVkIGVycm9ycyBkdXJpbmcgZXJyb3IgcmVjb3ZlcnkhIVxuIgorbXNnc3RyICJkcGtnOiDPgM6sz4HOsSDPgM6/zrvOu86sIM+Gz4nOu865zrHPg868zq3Ovc6xIM+Dz4bOrM67zrzOsc+EzrEgzrrOsc+Ezqwgz4TOt869IM6xzr3OrM66z4TOt8+Dzrcgz4PPhs6xzrvOvM6sz4TPic69ICEhXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoyNjggbGliL2Rwa2cvZWhhbmRsZS5jOjMwNworbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBjbGVhbnVwIGVudHJ5IgorbXNnc3RyICLOtyDOvc6tzrEgzrXOus66zrHOuM6xz4HOuc+Dz4TOuc66zq4gzrrOsc+EzrHPh8+Oz4HOt8+DzrcgzrLPgc6tzrjOt866zrUgzrXOus+Ez4zPgiDOvM69zq7OvM63z4IiCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoyOTEKK21zZ2lkICJvdXQgb2YgbWVtb3J5IGZvciBuZXcgY2xlYW51cCBlbnRyeSB3aXRoIG1hbnkgYXJndW1lbnRzIgorbXNnc3RyICLOtyDOvc6tzrEgzrXOus66zrHOuM6xz4HOuc+Dz4TOuc66zq4gzrrOsc+EzrHPh8+Oz4HOt8+DzrcgzrzOtSDOsc+BzrrOtc+Ezqwgzr/Pgc6vz4POvM6xz4TOsSDOss+Bzq3OuM63zrrOtSDOtc66z4TPjM+CIM68zr3Ors68zrfPgiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjM1MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yOiAlc1xuIgorbXNnc3RyICIiCisiJXM6IM+Dz4bOrM67zrzOsSDOus6xz4TOrCDPhM6/zr0gzrrOsc64zrHPgc65z4POvM+MOlxuIgorIiAlc1xuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MzkzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogd2FybmluZzogJXNcbiIKK21zZ3N0ciAiIgorIiVzOiDPg8+GzqzOu868zrEgzrrOsc+Ezqwgz4TOv869IM66zrHOuM6xz4HOuc+DzrzPjDpcbiIKKyIgJXNcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjQxNgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6JXM6JWQ6IGludGVybmFsIGVycm9yOiAlc1xuIgorbXNnc3RyICIlczolZDogzrXPg8+Jz4TOtc+BzrnOus+MIM+Dz4bOrM67zrzOsSBgJXMnXG4iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGlzIG1pc3NpbmciCittc2dzdHIgIiVzIM67zrXOr8+AzrXOuSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImAlLipzJyBpcyBub3QgYWxsb3dlZCBmb3IgJXMiCittc2dpZCAiJyUuNTBzJyBpcyBub3QgYWxsb3dlZCBmb3IgJXMiCittc2dzdHIgImAlLipzJyDOtM61zr0gzrXPgM65z4TPgc6tz4DOtc+EzrHOuSDOs865zrEgJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjczCisjLCBjLWZvcm1hdAorbXNnaWQgImp1bmsgYWZ0ZXIgJXMiCittc2dzdHIgIs+DzrrOv8+Fz4DOr860zrnOsSDOvM61z4TOrCDOsc+Az4wgJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjg3CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgcGFja2FnZSBuYW1lICglLjI1MHMpIgorbXNnc3RyICLOvM63IM6tzrPOus+Fz4HOvyDPjM69zr/OvM6xIM+AzrHOus6tz4TOv8+FICglLjI1MHMpIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZW1wdHkgZmlsZSBkZXRhaWxzIGZpZWxkIGAlcyciCittc2dzdHIgIs+AzrXOtM6vzr8gYCVzJyDOu861z4DPhM6/zrzOtc+BzrXOuc+Ozr0gzrrOtc69zr/PjSDOsc+Bz4fOtc6vzr/PhSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTA1CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgZGV0YWlscyBmaWVsZCBgJXMnIG5vdCBhbGxvd2VkIGluIHN0YXR1cyBmaWxlIgorbXNnc3RyICIiCisiz4TOvyDPgM61zrTOr86/IGAlcycgzrvOtc+Az4TOv868zrXPgc61zrnPjs69IM6xz4HPh861zq/Ov8+FIM60zrXOvSDOtc+AzrnPhM+Bzq3PgM61z4TOsc65IM+Dz4TOvyDOsc+Bz4fOtc6vzr8gzrrOsc+EzqzPg8+EzrHPg863z4IiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjExOAorIywgYy1mb3JtYXQKK21zZ2lkICJ0b28gbWFueSB2YWx1ZXMgaW4gZmlsZSBkZXRhaWxzIGZpZWxkIGAlcycgKGNvbXBhcmVkIHRvIG90aGVycykiCittc2dzdHIgIiIKKyLPgM6sz4HOsSDPgM6/zrvOu86tz4Igz4TOuc68zq3PgiDPg8+Ezr8gz4DOtc60zq/OvyBgJXMnIM6xz4HPh861zq/Ov8+FIM67zrXPgM+Ezr/OvM61z4HOtc65z47OvSAoz4POtSDPg8+NzrPOus+BzrnPg863IM68zrUgzqzOu867zrEpIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAidG9vIGZldyB2YWx1ZXMgaW4gZmlsZSBkZXRhaWxzIGZpZWxkIGAlcycgKGNvbXBhcmVkIHRvIG90aGVycykiCittc2dzdHIgIiIKKyLPgM6/zrvPjSDOu86vzrPOtc+CIM+EzrnOvM6tz4Igz4PPhM6/IM+AzrXOtM6vzr8gYCVzJyDOsc+Bz4fOtc6vzr/PhSDOu861z4DPhM6/zrzOtc+BzrXOuc+Ozr0gKM+DzrUgz4PPjc6zzrrPgc65z4POtyDOvM61IM6szrvOu86xKSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTU0Cittc2dpZCAieWVzL25vIGluIGJvb2xlYW4gZmllbGQiCittc2dzdHIgIs69zrHOuS/PjM+Hzrkgz4PPhM6/IM+AzrXOtM6vzr8gYm9vbGVhbiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTc0Cittc2dpZCAid29yZCBpbiBgcHJpb3JpdHknIGZpZWxkIgorbXNnc3RyICLOu86tzr7OtyDPg8+Ezr8gz4DOtc60zq/OvyBgz4DPgc6/z4TOtc+BzrHOuc+Mz4TOt8+EzrEnICIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTg2Cittc2dpZCAidmFsdWUgZm9yIGBzdGF0dXMnIGZpZWxkIG5vdCBhbGxvd2VkIGluIHRoaXMgY29udGV4dCIKK21zZ3N0ciAiIgorIs63IM+EzrnOvM6uIM6zzrnOsSDPhM6/IM+AzrXOtM6vzr8gYM66zrHPhM6sz4PPhM6xz4POt8+CJyDOtM61zr0gzrXPgM65z4TPgc6tz4DOtc+EzrHOuSDPg861IM6xz4XPhM6sIM+EzrEgz4PPhc68z4bPgc6xzrbPjM68zrXOvc6xIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxOTEKK21zZ2lkICJmaXJzdCAod2FudCkgd29yZCBpbiBgc3RhdHVzJyBmaWVsZCIKK21zZ3N0ciAiz4DPgc+Oz4TOtyAod2FudCkgzrvOrc6+zrcgz4POtSDPgM61zrTOr86/IGDOus6xz4TOrM+Dz4TOsc+DzrfPgiciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE5NAorbXNnaWQgInNlY29uZCAoZXJyb3IpIHdvcmQgaW4gYHN0YXR1cycgZmllbGQiCittc2dzdHIgIs60zrXPjc+EzrXPgc63IChlcnJvcikgzrvOrc6+zrcgz4POtSDPgM61zrTOr86/IGDOus6xz4TOrM+Dz4TOsc+DzrfPgiciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE5NworbXNnaWQgInRoaXJkIChzdGF0dXMpIHdvcmQgaW4gYHN0YXR1cycgZmllbGQiCittc2dzdHIgIs+Ez4HOr8+EzrcgzrvOrc6+zrcgKM66zrHPhM6sz4PPhM6xz4POt8+CKSDPg861IM+AzrXOtM6vzr8gYM66zrHPhM6sz4PPhM6xz4POt8+CJyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjA3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJlcnJvciBpbiBWZXJzaW9uIHN0cmluZyBgJS4yNTBzJzogJS4yNTBzIgorbXNnaWQgImVycm9yIGluIFZlcnNpb24gc3RyaW5nICclLjI1MHMnIgorbXNnc3RyICLPg8+GzqzOu868zrEgz4PPhM6/IM6xzrvPhs6xz4HOuc64zrzOt8+EzrnOus+MIM6IzrrOtM6/z4POtyBgJS4yNTBzJzogJS4yNTBzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyMTgKK21zZ2lkICJvYnNvbGV0ZSBgUmV2aXNpb24nIG9yIGBQYWNrYWdlLVJldmlzaW9uJyBmaWVsZCB1c2VkIgorbXNnc3RyICLPh8+BzrfPg865zrzOv8+Azr/Ouc6uzrjOt866zrUgz4DOsc+Bz4nPh863zrzOrc69zr8gz4DOtc60zq/OvyBgUmV2aXNpb24nIM6uIGBQYWNrYWdlLVJldmlzaW9uJyAiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjIzNQorbXNnaWQgInZhbHVlIGZvciBgY29uZmlnLXZlcnNpb24nIGZpZWxkIG5vdCBhbGxvd2VkIGluIHRoaXMgY29udGV4dCIKK21zZ3N0ciAiIgorIs63IM+EzrnOvM6uIM6zzrnOsSDPhM6/IM+AzrXOtM6vzr8gYGNvbmZpZy12ZXJzaW9uJyDOtM61zr0gzrXPgM65z4TPgc6tz4DOtc+EzrHOuSDPg861IM6xz4XPhM6sIM+EzrEgz4PPhc68z4bPgc6xzrbPjM68zrXOvc6xIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyNDAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImVycm9yIGluIENvbmZpZy1WZXJzaW9uIHN0cmluZyBgJS4yNTBzJzogJS4yNTBzIgorbXNnaWQgImVycm9yIGluIENvbmZpZy1WZXJzaW9uIHN0cmluZyAnJS4yNTBzJyIKK21zZ3N0ciAiz4PPhs6szrvOvM6xIM+Dz4TOtyDPg8+FzrzOss6/zrvOv8+DzrXOuc+BzqwgQ29uZmlnLVZlcnNpb24gYCUuMjUwcyc6ICUuMjUwcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjY2CisjLCBjLWZvcm1hdAorbXNnaWQgInZhbHVlIGZvciBgY29uZmZpbGVzJyBoYXMgbWFsZm9ybWF0dGVkIGxpbmUgYCUuKnMnIgorbXNnc3RyICLOtyDPhM65zrzOriDOs865zrEgz4TOvyBgY29uZmZpbGVzJyDPgM61z4HOuc6tz4fOtc65IM66zrHOus6/zrTOuc6xzrzOv8+Bz4bPic68zq3Ovc63IM6zz4HOsc68zrzOriBgJS4qcyciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjI4NworIywgYy1mb3JtYXQKK21zZ2lkICJ2YWx1ZSBmb3IgYGNvbmZmaWxlcycgaGFzIGxpbmUgc3RhcnRpbmcgd2l0aCBub24tc3BhY2UgYCVjJyIKK21zZ3N0ciAizrcgz4TOuc68zq4gzrPOuc6xIM+Ezr8gYGNvbmZmaWxlcycgz4DOtc+BzrnOrc+HzrXOuSDOs8+BzrHOvM68zq4gz4DOv8+FIM6+zrXOus65zr3OrCDPh8+Jz4HOr8+CIM66zrXOvc+MIGAlYyciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjMwNAorbXNnaWQgInJvb3Qgb3IgbnVsbCBkaXJlY3RvcnkgaXMgbGlzdGVkIGFzIGEgY29uZmZpbGUiCittc2dzdHIgInJvb3Qgzq4gbnVsbCDOus6xz4TOrM67zr/Os86/z4IgzrXOvM+GzrHOvc6vzrbOtc+EzrHOuSDPic+CIGNvbmZmaWxlIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzozNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIG1pc3NpbmcgcGFja2FnZSBuYW1lLCBvciBnYXJiYWdlIHdoZXJlIHBhY2thZ2UgbmFtZSBleHBlY3RlZCIKK21zZ3N0ciAiIgorImDPgM61zrTOr86/ICVzJywgzrvOtc6vz4DOtc65IM+Ezr8gz4zOvc6/zrzOsSDPgM6xzrrOrc+Ezr/PhSwgzq4gz4POus6/z4XPgM6vzrTOuc6xIM61zrrOtc6vIM+Azr/PhSDOsc69zrHOvM6tzr3Ov869z4TOsc69IM+Ezr8gIgorIs+Mzr3Ov868zrEgz4DOsc66zq3PhM6/z4UiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjM3MAorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGZpZWxkLCBpbnZhbGlkIHBhY2thZ2UgbmFtZSBgJS4yNTVzJzogJXMiCittc2dzdHIgIs+AzrXOtM6vzr8gYCVzJywgzrzOtyDOrc6zzrrPhc+Bzr8gz4zOvc6/zrzOsSDPgM6xzrrOrc+Ezr/PhSBgJS4yNTVzJzogJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQwNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOlxuIgorIiBiYWQgdmVyc2lvbiByZWxhdGlvbnNoaXAgJWMlYyIKK21zZ3N0ciAiIgorIs+AzrXOtM6vzr8gYCVzJywgzrHOvc6xz4bOv8+Bzqwgz4POtSBgJS4yNTVzJzpcbiIKKyIgzrrOsc66zq4gz4PPh86tz4POtyDOrc66zrTOv8+DzrfPgiAlYyVjIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgYCVjJyBpcyBvYnNvbGV0ZSwgdXNlIGAlYz0nIG9yIGAlYyVjJyBpbnN0ZWFkIgorbXNnc3RyICIiCisiz4TOvyDPgM61zrTOr86/IGAlcycsIM6xzr3Osc+Gzr/Pgc6sIM+DzrUgYCUuMjU1cyc6XG4iCisiIGAlYycgzrXOr869zrHOuSDOtc66z4TPjM+CIM+Hz4HOrs+DzrfPgiwgz4fPgc63z4POuc68zr/PgM6/zrnOtc6vz4PPhM61IGAlYz0nIM6uIGAlYyVjJyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDIyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6XG4iCisiIGltcGxpY2l0IGV4YWN0IG1hdGNoIG9uIHZlcnNpb24gbnVtYmVyLCBzdWdnZXN0IHVzaW5nIGA9JyBpbnN0ZWFkIgorbXNnc3RyICIiCisiz4DOtc60zq/OvyBgJXMnLCDOsc69zrHPhs6/z4HOrCDPg861IGAlLjI1NXMnOlxuIgorIiDOsc+Az4zOu8+Fz4TOvyDPhM6xzq/Pgc65zrHPg868zrEgz4PPhM6/zr0gzrHPgc65zrjOvM+MIM6tzrrOtM6/z4POt8+CLCDPgM+Bzr/PhM61zq/Ovc61z4TOsc65IM63IM+Hz4HOrs+DzrcgYD0nIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MzAKK21zZ2lkICJPbmx5IGV4YWN0IHZlcnNpb25zIG1heSBiZSB1c2VkIGZvciBQcm92aWRlcyIKK21zZ3N0ciAizpzPjM69zr8gzrHPgM+MzrvPhc+EzrXPgiDOtc66zrTPjM+DzrXOuc+CIM68z4DOv8+Bzr/Pjc69IM69zrEgz4fPgc63z4POuc68zr/PgM6/zrnOt864zr/Pjc69IM6zzrnOsSDPhM6/IM6gzrHPgc6tz4fOtc65IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgdmVyc2lvbiB2YWx1ZSBzdGFydHMgd2l0aCBub24tYWxwaGFudW1lcmljLCBzdWdnZXN0IGFkZGluZyBhIHNwYWNlIgorbXNnc3RyICIiCisiz4DOtc60zq/OvyBgJXMnLCDOsc69zrHPhs6/z4HOrCDPg861IGAlLjI1NXMnOlxuIgorIiDOtyDPhM65zrzOriDOrc66zrTOv8+DzrfPgiDOvs61zrrOuc69zqwgzrzOtSDOvM63IM6xzrvPhs6xz4HOuc64zrzOt8+EzrnOus+MLCDPgM+Bz4zPhM6xz4POtyDPgM+Bzr/Pg864zq7Ous63z4IgzrrOtc69zr/PjSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDUxIGxpYi9kcGtnL2ZpZWxkcy5jOjQ1NQorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6IHZlcnNpb24gY29udGFpbnMgYCVjJyIKK21zZ3N0ciAiz4DOtc60zq/OvyBgJXMnLCDOsc69zrHPhs6/z4HOrCDPg8+Ezr8gYCUuMjU1cyc6IM63IM6tzrrOtM6/z4POtyDPgM61z4HOuc6tz4fOtc65IGAlYyciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ1OQorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6IHZlcnNpb24gdW50ZXJtaW5hdGVkIgorbXNnc3RyICLPgM61zrTOr86/IGAlcycgZmllbGQsIM6xzr3Osc+Gzr/Pgc6sIM+DzrUgYCUuMjU1cyc6IM63IM6tzrrOtM6/z4POtyDOtc6vzr3Osc65IM68zrcgz4TOtc+BzrzOsc+EzrnPg868zq3Ovc63IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NjUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzogZXJyb3IgaW4gdmVyc2lvbjogJS4yNTVzIgorbXNnaWQgIiclcycgZmllbGQsIHJlZmVyZW5jZSB0byAnJS4yNTVzJzogZXJyb3IgaW4gdmVyc2lvbiIKK21zZ3N0ciAiz4DOtc60zq/OvyBgJXMnLCDOsc69zrHPhs6/z4HOrCDPg8+Ezr8gYCUuMjU1cyc6IM+Dz4bOrM67zrzOsSDPg8+EzrfOvSDOrc66zrTOv8+Dzrc6ICUuMjU1cyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDc1CisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgZmllbGQsIHN5bnRheCBlcnJvciBhZnRlciByZWZlcmVuY2UgdG8gcGFja2FnZSBgJS4yNTVzJyIKK21zZ3N0ciAiz4DOtc60zq/OvyBgJXMnLCDPg8+Fzr3PhM6xzrrPhM65zrrPjCDPg8+GzqzOu868zrEgzrzOtc+Ezqwgz4TOt869IM6xzr3Osc+Gzr/Pgc6sIM+Dz4TOvyDPgM6xzrrOrc+Ezr8gYCUuMjU1cyciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ4MgorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZXMgKGB8Jykgbm90IGFsbG93ZWQgaW4gJXMgZmllbGQiCittc2dzdHIgIs61zr3Osc67zrvOsc66z4TOuc66zqwgKGB8JykgzrTOtc69IM61z4DOuc+Ez4HOrc+Azr/Ovc+EzrHOuSDPg8+Ezr8gz4DOtc60zq/OvyAlcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTM2Cittc2dpZCAidmFsdWUgZm9yIGB0cmlnZ2Vycy1wZW5kaW5nJyBmaWVsZCBub3QgYWxsb3dlZCBpbiB0aGlzIGNvbnRleHQiCittc2dzdHIgIiIKKyLOtyDPhM65zrzOriDOs865zrEgz4TOvyDPgM61zrTOr86/IGB0cmlnZ2Vycy1wZW5kaW5nJyDOtM61zr0gzrXPgM65z4TPgc6tz4DOtc+EzrHOuSDPgycgzrHPhc+Ez4wgz4TOvyDPgM67zrHOr8+DzrnOvyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTQzCisjLCBjLWZvcm1hdAorbXNnaWQgImlsbGVnYWwgcGVuZGluZyB0cmlnZ2VyIG5hbWUgYCUuMjU1cyc6ICVzIgorbXNnc3RyICLOvM63IM6tzrPOus+Fz4HOvyDPjM69zr/OvM6xIHRyaWdnZXIgz4POtSDOtc66zrrPgc61zrzPjM+EzrfPhM6xIGAlLjI1NXMnOiAlcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTQ3CisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBwZW5kaW5nIHRyaWdnZXIgYCUuMjU1cyciCittc2dzdHIgIs60zrnPgM67z4zPgiDOtc66zrrPgc61zrzOrs+CIHRyaWdnZXIgIGAlLjI1NXMnIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NjEKK21zZ2lkICJ2YWx1ZSBmb3IgYHRyaWdnZXJzLWF3YWl0ZWQnIGZpZWxkIG5vdCBhbGxvd2VkIGluIHRoaXMgY29udGV4dCIKK21zZ3N0ciAiIgorIs63IM+EzrnOvM6uIM6zzrnOsSDPhM6/IM+AzrXOtM6vzr8gYHRyaWdnZXJzLWF3YWl0ZWQnIM60zrXOvSDOtc+AzrnPhM+Bzq3PgM61z4TOsc65IM+Dz4TOvyDPgM67zrHOr8+DzrnOvyDOsc+Fz4TPjCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTY4CisjLCBjLWZvcm1hdAorbXNnaWQgImlsbGVnYWwgcGFja2FnZSBuYW1lIGluIGF3YWl0ZWQgdHJpZ2dlciBgJS4yNTVzJzogJXMiCittc2dzdHIgIs68zrcgzq3Os866z4XPgc6/IM+Mzr3Ov868zrEgz4DOsc66zq3PhM6/z4UgzrPOuc6xIM+Ezr/OvSDOsc69zrHOvM61zr3PjM68zrXOvc6/IHRyaWdnZXIgYCUuMjU1cyc6ICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIGF3YWl0ZWQgdHJpZ2dlciBwYWNrYWdlIGAlLjI1NXMnIgorbXNnc3RyICLOtc+AzrHOvc6xzrvOss6xzr3PjM68zrXOvc6/IM+AzrHOus6tz4TOvyDOvM61IHRyaWdnZXIgz4POtSDOsc69zrHOvM6/zr3OriBgJS4yNTVzJyIKKworIzogbGliL2Rwa2cvZmlsZS5jOjUxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBzb3VyY2UgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAizrHOtM+Nzr3Osc+Ezr8gz4TOvyDOrM69zr/Ouc6zzrzOsSDPhM6/z4UgzrHPgc+HzrXOr86/z4Ugz4DOt86zzq7PgiBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZmlsZS5jOjU1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hhbmdlIG93bmVyc2hpcCBvZiB0YXJnZXQgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAizrHOtM+Nzr3Osc+EzrcgzrcgzrHOu867zrHOs86uIM65zrTOuc6/zrrPhM63z4POr86xz4Igz4TOv8+FIM69zq3Ov8+FIM6xz4HPh861zq/Ov8+FIM+Bz4XOuM68zq/Pg861z4nOvSBkaXN0IGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy9maWxlLmM6NTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgbW9kZSBvZiB0YXJnZXQgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAizrHOtM+Nzr3Osc+Ezr/PgiDOvyDOv8+BzrnPg868z4zPgiDOus6xz4TOrM+Dz4TOsc+DzrfPgiDPhM6/z4Ugzr3Orc6/z4UgzrHPgc+HzrXOr86/z4Ugz4HPhc64zrzOr8+DzrXPic69IGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy9maWxlLmM6ODUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byB1bmxvY2sgJXM6ICVzIgorbXNnaWQgInVuYWJsZSB0byB1bmxvY2sgJXMiCittc2dzdHIgIs6xzrTPjc69zrHPhM6/IM+Ezr8gzr7Otc66zrvOtc6vzrTPic68zrEgz4TOv8+FICVzOiAlcyIKKworIzogbGliL2Rwa2cvZmlsZS5jOjExMQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoZWNrIGZpbGUgJyVzJyBsb2NrIHN0YXR1cyIKK21zZ3N0ciAizrHOtM+Nzr3Osc+Ezr8gz4TOvyDOrM69zr/Ouc6zzrzOsSDPhM6/z4UgzrHPgc+HzrXOr86/z4Ugz4DOt86zzq7PgiBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZmlsZS5jOjE0NgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic3RhdHVzIGRhdGFiYXNlIGFyZWEgaXMgbG9ja2VkIGJ5IGFub3RoZXIgcHJvY2VzcyIKK21zZ2lkICIlcyBpcyBsb2NrZWQgYnkgYW5vdGhlciBwcm9jZXNzIgorbXNnc3RyICIiCisizrcgz4DOtc+BzrnOv8+Hzq4gz4TOt8+CIM6yzqzPg863z4IgzrTOtc60zr/OvM6tzr3Pic69IM66zrHPhM6sz4PPhM6xz4POt8+CIM61zq/Ovc6xzrkgzrrOu861zrnOtM+JzrzOrc69zrcgzrHPgM+MIM6szrvOu863IM60zrnOtc+BzrPOsc+Dzq/OsSIKKworIzogbGliL2Rwa2cvZmlsZS5jOjE0OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHVubG9jayAlczogJXMiCittc2dpZCAidW5hYmxlIHRvIGxvY2sgJXMiCittc2dzdHIgIs6xzrTPjc69zrHPhM6/IM+Ezr8gzr7Otc66zrvOtc6vzrTPic68zrEgz4TOv8+FICVzOiAlcyIKKworIzogbGliL2Rwa2cvbG9nLmM6NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGRuJ3Qgb3BlbiBsb2cgYCVzJzogJXNcbiIKK21zZ3N0ciAizrHOtM+Nzr3Osc+Ezr8gz4TOvyDOrM69zr/Ouc6zzrzOsSDPhM6/z4UgzrHPgc+HzrXOr86/z4UgzrrOsc+EzrHOs8+BzrHPhs6uz4IgJyVzJzogJXNcbiIKKworIzogbGliL2Rwa2cvbG9nLmM6ODUKK21zZ2lkICI8cGFja2FnZSBzdGF0dXMgYW5kIHByb2dyZXNzIGZpbGUgZGVzY3JpcHRvcj4iCittc2dzdHIgIjxwYWNrYWdlIHN0YXR1cyBhbmQgcHJvZ3Jlc3MgZmlsZSBkZXNjcmlwdG9yPiIKKworIzogbGliL2Rwa2cvbG9nLmM6MTE0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgdG8gc3RhdHVzIGZkICVkIgorbXNnc3RyICLOsc60z4XOvc6xzrzOr86xIM61zrPOs8+BzrHPhs6uz4Igz4TOt8+CIM61zr3Ot868zrXPgc+JzrzOrc69zrfPgiDOus6xz4TOrM+Dz4TOsc+DzrfPgiDPhM6/z4UgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL21saWIuYzo0NCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJyZWFsbG9jIGZhaWxlZCAoJXp1IGJ5dGVzKSIKK21zZ2lkICJtYWxsb2MgZmFpbGVkICglenUgYnl0ZXMpIgorbXNnc3RyICLOtyByZWFsbG9jIM6xz4DOrc+Ez4XPh861ICglenUgYnl0ZXMpIgorCisjOiBsaWIvZHBrZy9tbGliLmM6NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVhbGxvYyBmYWlsZWQgKCV6dSBieXRlcykiCittc2dzdHIgIs63IHJlYWxsb2MgzrHPgM6tz4TPhc+HzrUgKCV6dSBieXRlcykiCisKKyM6IGxpYi9kcGtnL21saWIuYzo3MiBsaWIvZHBrZy9tbGliLmM6OTAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI3NworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjMzNCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTEwNworbXNnaWQgImZhaWxlZCB0byBhbGxvY2F0ZSBtZW1vcnkiCittc2dzdHIgIs6xz4DOv8+Ez4XPh86vzrEgzrHOvc6szrjOtc+DzrfPgiDOvM69zq7OvM63z4IiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGR1cCBmb3Igc3RkJXMiCittc2dzdHIgIs6xz4DOv8+Ez4XPh86vzrEgzrHOvc+EzrnOs8+BzrHPhs6uz4IgzrPOuc6xIM+Ezr8gc3RkJXMiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGR1cCBmb3IgZmQgJWQiCittc2dzdHIgIs6xz4DOv8+Ez4XPh86vzrEgzrHOvc+EzrnOs8+BzrHPhs6uz4IgzrPOuc6xIM+Ezr8gZmQlZCIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEwOQorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgcGlwZSIKK21zZ3N0ciAizrHPgM6/z4TPhc+Hzq/OsSDOtM63zrzOuc6/z4XPgc6zzq/Osc+CIM+Dz4nOu86uzr3Pic+DzrfPgiIKKworIzogbGliL2Rwa2cvbWxpYi5jOjExNworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igd3JpdGluZyB0byAnJXMnIgorbXNnc3RyICLPg8+GzqzOu868zrEgzrrOsc+Ezqwgz4TOt869IM61zrPOs8+BzrHPhs6uIGAlcyciCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgZmlsZWRlc2NyaXB0b3IgZmxhZ3MgZm9yICUuMjUwcyIKK21zZ3N0ciAizrHOtM+Nzr3Osc+EzrcgzrcgzrHOvc6szrPOvc+Jz4POtyDPhM+Jzr0gz4POt868zqzOvc+DzrXPic69IM+AzrXPgc65zrPPgc6xz4bOrc6xIM6xz4HPh861zq/Ov8+FIM+Ezr/PhSAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMjYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNldCBjbG9zZS1vbi1leGVjIGZsYWcgZm9yICUuMjUwcyIKK21zZ3N0ciAizrHOtM+Nzr3Osc+Ezr8gzr3OsSDPhM61zrjOtc6vIM63IM+Dzq7OvM6xzr3Pg863IGNsb3NlLW9uLWV4ZWMgzrPOuc6xIM+Ezr8gJS4yNTBzIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6NjMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImNvbmZpZ3VyYXRpb24gZXJyb3I6ICVzOiVkOiAlcyIKK21zZ3N0ciAiz4PPhs6szrvOvM6xIM+Bz4XOuM68zq/Pg861z4nOvTogz4TOvyAlcyDPh8+BzrXOuc6szrbOtc+EzrHOuSDOvM65zrEgz4TOuc68zq4iCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzo3NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gY29uZmlndXJhdGlvbiBmaWxlICclLjI1NXMnIGZvciByZWFkaW5nOiAlcyIKK21zZ3N0ciAizrHPgM6/z4TPhc+Hzq/OsSDOsc69zr/Or86zzrzOsc+Ezr/PgiDOsc+Bz4fOtc6vzr/PhSDPgc+FzrjOvM6vz4POtc+Jzr0gYCUuMjU1cycgzrPOuc6xIM6xzr3OrM6zzr3Pic+DzrciCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5iYWxhbmNlZCBxdW90ZXMgaW4gJyVzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTE3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiAnJXMnIgorbXNnc3RyICLOrM6zzr3Pic+Dz4TOtyDOtc+AzrnOu86/zrPOriBgJXMnIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTIxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICInJXMnIG5lZWRzIGEgdmFsdWUiCittc2dzdHIgIi0tJXMgzrXPgM65zrvOv86zzq4gz4DOsc6vz4HOvc61zrkgzrzOuc6xIM+EzrnOvM6uIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTI3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICInJXMnIGRvZXMgbm90IHRha2UgYSB2YWx1ZSIKK21zZ3N0ciAiLS0lcyDOtc+AzrnOu86/zrPOriDOtM61zr0gz4DOsc6vz4HOvc61zrkgz4TOuc68zq4iCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVhZCBlcnJvciBpbiBjb25maWd1cmF0aW9uIGZpbGUgYCUuMjU1cyciCittc2dzdHIgIs+Dz4bOrM67zrzOsSDOsc69zqzOs869z4nPg863z4Igz4PPhM6/IM6xz4HPh861zq/OvyDPgc+FzrjOvM6vz4POtc+Jzr0gYCUuMjU1cyciCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyBjb25maWd1cmF0aW9uIGZpbGUgYCUuMjU1cyciCittc2dzdHIgIs+Dz4bOrM67zrzOsSDOus67zrXOuc+Dzq/OvM6xz4TOv8+CIM6xz4HPh861zq/Ov8+FIM+Bz4XOuM68zq/Pg861z4nOvSBgJS4yNTVzJyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjE3MAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igb3BlbmluZyBjb25maWd1cmF0aW9uIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICLPg8+GzqzOu868zrEgzrrOu861zrnPg86vzrzOsc+Ezr/PgiDOsc+Bz4fOtc6vzr/PhSDPgc+FzrjOvM6vz4POtc+Jzr0gYCUuMjU1cyciCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gLS0lcyIKK21zZ3N0ciAizqzOs869z4nPg8+EzrcgzrXPgM65zrvOv86zzq4gLS0lcyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjIzMgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG9wdGlvbiB0YWtlcyBhIHZhbHVlIgorbXNnc3RyICItLSVzIM61z4DOuc67zr/Os86uIM+AzrHOr8+Bzr3Otc65IM68zrnOsSDPhM65zrzOriIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjIzNworIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG9wdGlvbiBkb2VzIG5vdCB0YWtlIGEgdmFsdWUiCittc2dzdHIgIi0tJXMgzrXPgM65zrvOv86zzq4gzrTOtc69IM+AzrHOr8+Bzr3Otc65IM+EzrnOvM6uIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gb3B0aW9uIC0lYyIKK21zZ3N0ciAizqzOs869z4nPg8+EzrcgzrXPgM65zrvOv86zzq4gLSVjIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjUwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0lYyBvcHRpb24gdGFrZXMgYSB2YWx1ZSIKK21zZ3N0ciAiLSVjIM61z4DOuc67zr/Os86uIM+AzrHOr8+Bzr3Otc65IM68zrnOsSDPhM65zrzOriIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI1OAorIywgYy1mb3JtYXQKK21zZ2lkICItJWMgb3B0aW9uIGRvZXMgbm90IHRha2UgYSB2YWx1ZSIKK21zZ3N0ciAiLSVjIM61z4DOuc67zr/Os86uIM60zrXOvSDPgM6xzq/Pgc69zrXOuSDPhM65zrzOriIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI3MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAib2Jzb2xldGUgb3B0aW9uICctLSVzJ1xuIgorbXNnc3RyICLOoM+Bzr/Otc65zrTOv8+Azr/Or863z4POtzogzrXPgM65zrvOv86zzq4gzrXOus+Ez4zPgiDPh8+Bzq7Pg863z4IgYC0tJXMnXG4iCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmxpY3RpbmcgYWN0aW9ucyAtJWMgKC0tJXMpIGFuZCAtJWMgKC0tJXMpIgorbXNnc3RyICLPg8+FzrPOus+Bzr/Phc+MzrzOtc69zrXPgiDOtc69zq3Pgc6zzrXOuc61z4IgLSVjICgtLSVzKSBhbmQgLSVjICgtLSVzKSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHZhbHVlIGZvciBgJXMnIGZpZWxkIgorbXNnc3RyICLOtM65z4DOu86uIM+EzrnOvM6uIM6zzrnOsSDPhM6/IM+AzrXOtM6vzr8gYCVzJyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoxNDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidXNlci1kZWZpbmVkIGZpZWxkIG5hbWUgYCUuKnMnIHRvbyBzaG9ydCIKK21zZ3N0ciAiz4TOvyDPgM+Bzr/Pg860zrnOv8+BzrnPg868zq3Ovc6/IM6xz4DPjCDPhM6/IM+Hz4HOrs+Dz4TOtyDPjM69zr/OvM6xIM+AzrXOtM6vzr/PhSBgJS4qcycgzrXOr869zrHOuSDPgM6/zrvPjSDOvM65zrrPgc+MIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgdmFsdWUgZm9yIHVzZXItZGVmaW5lZCBmaWVsZCBgJS4qcyciCittc2dzdHIgIs60zrnPgM67zrHPg865zrHPg868z4zPgiDPhM6/z4UgzrrOsc64zr/Pgc65zrbPjM68zrXOvc6/z4UgzrHPgM+MIM+Ezr8gz4fPgc6uz4PPhM63IM+AzrXOtM6vzr8gYCUuKnMnIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjIwNworbXNnaWQgIkNvbmZpZ3VyZWQtVmVyc2lvbiBmb3IgcGFja2FnZSB3aXRoIGluYXBwcm9wcmlhdGUgU3RhdHVzIgorbXNnc3RyICLOoc+FzrjOvM65z4POvM6tzr3Oty3OiM66zrTOv8+DzrcgzrPOuc6xIM+AzrHOus6tz4TOvyDOvM61IM6xzrrOsc+EzqzOu867zrfOu863IM6azrHPhM6sz4PPhM6xz4POtyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzICVzIGJ1dCB0cmlnZ2VycyBhcmUgYXdhaXRlZCIKK21zZ3N0ciAiz4TOvyDPgM6xzrrOrc+Ezr8gzq3Ph861zrkgzrrOsc+EzqzPg8+EzrHPg863ICVzIM6xzrvOu86sIM6xzr3Osc68zq3Ovc6/zr3PhM6xzrkgzrHOus+MzrzOsSB0cmlnZ2VycyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMjIKK21zZ2lkICJwYWNrYWdlIGhhcyBzdGF0dXMgdHJpZ2dlcnMtYXdhaXRlZCBidXQgbm8gdHJpZ2dlcnMgYXdhaXRlZCIKK21zZ3N0ciAiIgorIs+Ezr8gz4DOsc66zq3PhM6/IM6tz4fOtc65IM66zrHPhM6sz4PPhM6xz4POtyB0cmlnZ2Vycy3Pg861Lc6xzr3Osc68zr/Ovc6uLCDOsc67zrvOrCDOtM61zr0gz4XPgM6sz4HPh86/z4XOvSDPhM6tz4TOv865zr/OuSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzICVzIGJ1dCB0cmlnZ2VycyBhcmUgcGVuZGluZyIKK21zZ3N0ciAiz4TOvyDPgM6xzrrOrc+Ezr8gzq3Ph861zrkgzrrOsc64zrXPg8+Ez47PgiAlcyDOsc67zrvOrCDOtc66zrrPgc61zrzOv8+Nzr0gdHJpZ2dlcnMiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjMyCittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzIHRyaWdnZXJzLXBlbmRpbmcgYnV0IG5vIHRyaWdnZXJzIHBlbmRpbmciCittc2dzdHIgIiIKKyLPhM6/IM+AzrHOus6tz4TOvyDOrc+HzrXOuSDOus6xz4TOrM+Dz4TOsc+DzrcgdHJpZ2dlcnMtz4POtS3Otc66zrrPgc61zrzPjM+EzrfPhM6xIM6xzrvOu86sIM+Mz4fOuSDOtM61zr0gz4XPgM6sz4HPh86/z4XOvSAiCisiz4TOrc+Ezr/Ouc6/zrkiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjQyCittc2dpZCAiUGFja2FnZSB3aGljaCBpbiBzdGF0ZSBub3QtaW5zdGFsbGVkIGhhcyBjb25mZmlsZXMsIGZvcmdldHRpbmcgdGhlbSIKK21zZ3N0ciAiIgorIs6gzrHOus6tz4TOvyDPhM6/IM6/z4DOv86vzr8gz4PPhM63zr0gzrrOsc+EzqzPg8+EzrHPg863IM68zrcgzrXOs866zrHPhM61z4PPhM63zrzOrc69zr8gzq3Ph861zrkgz4HPhc64zrzOr8+DzrXOuc+CLCDOvs6tz4fOsc+Dzq0gz4TOvyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozMzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gcGFja2FnZSBpbmZvIGZpbGUgYCUuMjU1cycgZm9yIHJlYWRpbmciCittc2dzdHIgIs6xz4DOv8+Ez4XPh86vzrEgzrHOvc6/zq/Os868zrHPhM6/z4IgzrHPgc+HzrXOr86/z4Ugz4DOu863z4HOv8+Gzr/Pgc65z47OvSDPgM6xzrrOrc+Ezr/PhSBgJS4yNTVzJyDOs865zrEgzrHOvc6szrPOvc+Jz4POtyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozNDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2FuJ3Qgc3RhdCBwYWNrYWdlIGluZm8gZmlsZSBgJS4yNTVzJyIKK21zZ3N0ciAizrHOtM+Nzr3Osc+EzrcgzrcgzrXPjc+BzrXPg863IM66zrHPhM6sz4PPhM6xz4POt8+CIM+Ezr/PhSDOsc+Bz4fOtc6vzr/PhSDPgM67zrfPgc6/z4bOv8+BzrnPjs69IM+AzrHOus6tz4TPic69IGAlLjI1NXMnIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjM0NworIywgYy1mb3JtYXQKK21zZ2lkICJjYW4ndCBtbWFwIHBhY2thZ2UgaW5mbyBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICIiCisizrHOtM+Nzr3Osc+EzrcgzrcgzrHPgM61zrnOus+Mzr3Ouc+Dzrcgz4PPhM63IM68zr3Ors68zrcgKG1tYXApIM+Ezr/PhSDOsc+Bz4fOtc6vzr/PhSDPgM67zrfPgc6/z4bOv8+BzrnPjs69IM+Ez4nOvSDPgM6xzrrOrc+Ez4nOvSBgIgorIiUuMjU1cyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzUyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW4ndCBzdGF0IHBhY2thZ2UgaW5mbyBmaWxlIGAlLjI1NXMnIgorbXNnaWQgInJlYWRpbmcgcGFja2FnZSBpbmZvIGZpbGUgJyUuMjU1cyciCittc2dzdHIgIs6xzrTPjc69zrHPhM63IM63IM61z43Pgc61z4POtyDOus6xz4TOrM+Dz4TOsc+DzrfPgiDPhM6/z4UgzrHPgc+HzrXOr86/z4Ugz4DOu863z4HOv8+Gzr/Pgc65z47OvSDPgM6xzrrOrc+Ez4nOvSBgJS4yNTVzJyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNsb3NlIGFmdGVyIHJlYWQ6IGAlLjI1NXMnIgorbXNnc3RyICLOsc+Azr/PhM+Fz4fOr86xIM66zrvOtc65z4POr868zrHPhM6/z4IgzrzOtc+Ezqwgz4TOt869IM6xzr3OrM6zzr3Pic+Dzrc6IGAlLjI1NXMnIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQwNAorIywgYy1mb3JtYXQKK21zZ2lkICJFT0YgYWZ0ZXIgZmllbGQgbmFtZSBgJS4qcyciCittc2dzdHIgIs6kzr8gRU9GIM68zrXPhM6sIM+Ezr8gz4zOvc6/zrzOsSDPgM61zrTOr86/z4UgYCUuKnMnIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQwNworIywgYy1mb3JtYXQKK21zZ2lkICJuZXdsaW5lIGluIGZpZWxkIG5hbWUgYCUuKnMnIgorbXNnc3RyICLOvc6tzrEgzrPPgc6xzrzOvM6uIM+Dz4TOvyDPjM69zr/OvM6xIM+AzrXOtM6vzr/PhSBgJS4qcyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDEwCisjLCBjLWZvcm1hdAorbXNnaWQgIk1TRE9TIEVPRiAoXlopIGluIGZpZWxkIG5hbWUgYCUuKnMnIgorbXNnc3RyICJNU0RPUyBFT0YgKF5aKSDPg8+Ezr8gz4zOvc6/zrzOsSDPgM61zrTOr86/z4UgYCUuKnMnIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQxNAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWVsZCBuYW1lIGAlLipzJyBtdXN0IGJlIGZvbGxvd2VkIGJ5IGNvbG9uIgorbXNnc3RyICLPhM6/IM+Mzr3Ov868zrEgz4DOtc60zq/Ov8+FIGAlLipzJyDPgM+Bzq3PgM61zrkgzr3OsSDOsc66zr/Ou86/z4XOuM61zq/PhM6xzrkgzrHPgM+MIM6szr3PiS/Ous6sz4TPiSDPhM61zrvOtc6vzrEiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDI1CisjLCBjLWZvcm1hdAorbXNnaWQgIkVPRiBiZWZvcmUgdmFsdWUgb2YgZmllbGQgYCUuKnMnIChtaXNzaW5nIGZpbmFsIG5ld2xpbmUpIgorbXNnc3RyICJFT0Ygz4DPgc65zr0gzrHPgM+MIM+EzrfOvSDPhM65zrzOriDPhM6/z4Ugz4DOtc60zq/Ov8+FIGAlLipzJyAozrvOtc6vz4DOtc65IM63IM+EzrXOu865zrrOriDOvc6tzrEgzrPPgc6xzrzOvM6uKSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiTVNET1MgRU9GIGNoYXIgaW4gdmFsdWUgb2YgZmllbGQgYCUuKnMnIChtaXNzaW5nIG5ld2xpbmU/KSIKK21zZ3N0ciAiIgorIs+HzrHPgc6xzrrPhM6uz4HOsc+CIE1TRE9TIEVPRiDPg8+EzrfOvSDPhM65zrzOriDPhM6/z4Ugz4DOtc60zq/Ov8+FIGAlLipzJyAozrvOtc6vz4DOtc65IM63IM69zq3OsSDOs8+BzrHOvM68zq47KSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0NDAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIm5ld2xpbmUgaW4gZmllbGQgbmFtZSBgJS4qcyciCittc2dpZCAiYmxhbmsgbGluZSBpbiB2YWx1ZSBvZiBmaWVsZCAnJS4qcyciCittc2dzdHIgIs69zq3OsSDOs8+BzrHOvM68zq4gz4PPhM6/IM+Mzr3Ov868zrEgz4DOtc60zq/Ov8+FIGAlLipzJyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiRU9GIGR1cmluZyB2YWx1ZSBvZiBmaWVsZCBgJS4qcycgKG1pc3NpbmcgZmluYWwgbmV3bGluZSkiCittc2dzdHIgIkVPRiDPg8+Ezrcgz4TOuc68zq4gz4TOv8+FIM+AzrXOtM6vzr/PhSBgJS4qcycgKM67zrXOr8+AzrXOuSDOtyDPhM61zrvOuc66zq4gzr3Orc6xIM6zz4HOsc68zrzOrikiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NTQ2Cittc2dpZCAic2V2ZXJhbCBwYWNrYWdlIGluZm8gZW50cmllcyBmb3VuZCwgb25seSBvbmUgYWxsb3dlZCIKK21zZ3N0ciAizrLPgc6tzrjOt866zrHOvSDOsc+BzrrOtc+Ezq3PgiDOtc65z4POsc6zz4nOs86tz4Igz4DOu863z4HOv8+Gzr/Pgc65z47OvSDPgM6xzrrOrc+Ezr/PhSwgzrzPjM69zr8gzrzOr86xIM61z4DOuc+Ez4HOrc+AzrXPhM6xzrkiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NTcyCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHBhY2thZ2UgaW5mb3JtYXRpb24gaW4gYCUuMjU1cyciCittc2dzdHIgIs66zrHOvM6vzrEgz4DOu863z4HOv8+Gzr/Pgc6vzrEgz4DOsc66zq3PhM6/z4Ugz4PPhM6/ICBgJS4yNTVzJyIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6NDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJwYXJzaW5nIGZpbGUgJyUuMjU1cycgbmVhciBsaW5lICVkIHBhY2thZ2UgJyUuMjU1cyc6XG4iCisiICUuMjU1cyIKK21zZ3N0ciAiz4DPgc6/zrXOuc60zr/PgM6/zq/Ot8+DzrcsIM+Dz4TOvyDOsc+Bz4fOtc6vzr8gYCUuMjU1cycgzrrOv869z4TOrCDPg8+EzrcgzrPPgc6xzrzOvM6uICVkIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzo0OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorInBhcnNpbmcgZmlsZSAnJS4yNTVzJyBuZWFyIGxpbmUgJWQ6XG4iCisiICUuMjU1cyIKK21zZ3N0ciAiz4DPgc6/zrXOuc60zr/PgM6/zq/Ot8+DzrcsIM+Dz4TOvyDOsc+Bz4fOtc6vzr8gYCUuMjU1cycgzrrOv869z4TOrCDPg8+EzrcgzrPPgc6xzrzOvM6uICVkIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoxMjUKK21zZ2lkICJtYXkgbm90IGJlIGVtcHR5IHN0cmluZyIKK21zZ3N0ciAizrzPgM6/z4HOtc6vIM69zrEgzrzOt869IM61zq/Ovc6xzrkgzrrOtc69z4wgzrHOu8+GzrHPgc65zrjOvM63z4TOuc66z4wiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjEyNworIywgZnV6enkKKyN8IG1zZ2lkICJtdXN0IHN0YXJ0IHdpdGggYW4gYWxwaGFudW1lcmljIgorbXNnaWQgIm11c3Qgc3RhcnQgd2l0aCBhbiBhbHBoYW51bWVyaWMgY2hhcmFjdGVyIgorbXNnc3RyICLPgM+Bzq3PgM61zrkgzr3OsSDOvs61zrrOuc69zqwgzrzOtSDOsc67z4bOsc+BzrnOuM68zrfPhM65zrrPjCIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MTM2CisjLCBjLWZvcm1hdAorbXNnaWQgImNoYXJhY3RlciBgJWMnIG5vdCBhbGxvd2VkIChvbmx5IGxldHRlcnMsIGRpZ2l0cyBhbmQgY2hhcmFjdGVycyBgJXMnKSIKK21zZ3N0ciAiIgorIs6/IM+HzrHPgc6xzrrPhM6uz4HOsc+CIGAlYycgzrTOtc69IM61z4DOuc+Ez4HOrc+AzrXPhM6xzrkgKM61z4DOuc+Ez4HOrc+Azr/Ovc+EzrHOuSDOvM+Mzr3OvyDOs8+BzqzOvM68zrHPhM6xLCDPiM63z4bOr86xIM66zrHOuSAiCisiz4fOsc+BzrHOus+Ezq7Pgc61z4IgYCVzJykiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjE3OAorIywgZnV6enkKKyN8IG1zZ2lkICI8bm9uZT4iCittc2djdHh0ICJ2ZXJzaW9uIgorbXNnaWQgIjxub25lPiIKK21zZ3N0ciAiPM66zrHOvc6tzr3OsT4iCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjIwOQorbXNnaWQgInZlcnNpb24gc3RyaW5nIGlzIGVtcHR5IgorbXNnc3RyICLPhM6/IM6xzrvPhs6xz4HOuc64zrzOt8+EzrnOus+MIM+EzrfPgiDOrc66zrTOv8+DzrfPgiDOtc6vzr3Osc65IM66zrXOvc+MIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyMjQKK21zZ2lkICJ2ZXJzaW9uIHN0cmluZyBoYXMgZW1iZWRkZWQgc3BhY2VzIgorbXNnc3RyICLOtyDPg8+FzrzOss6/zrvOv8+DzrXOuc+Bzqwgzq3Ous60zr/Pg863z4Igz4DOtc+BzrnOrc+HzrXOuSDOtc69z4PPic68zrHPhM+JzrzOrc69zrEgzrrOtc69zqwiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjIzMAorbXNnaWQgImVwb2NoIGluIHZlcnNpb24gaXMgbm90IG51bWJlciIKK21zZ3N0ciAizrcgzrXPgM6/z4fOriDPg8+EzrfOvSDOrc66zrTOv8+DzrcgzrTOtc69IM61zq/Ovc6xzrkgzrHPgc65zrjOvM+Mz4IiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjIzMgorbXNnaWQgIm5vdGhpbmcgYWZ0ZXIgY29sb24gaW4gdmVyc2lvbiBudW1iZXIiCittc2dzdHIgIs60zrXOvSDPhc+AzqzPgc+HzrXOuSDPhM6vz4DOv8+EzrEgzrzOtc+Ezqwgz4TOvyDOus+OzrvOv869ICg6KSDPg8+Ezr/OvSDOsc+BzrnOuM68z4wgzq3Ous60zr/Pg863z4IiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjI0NworbXNnaWQgInZlcnNpb24gbnVtYmVyIGRvZXMgbm90IHN0YXJ0IHdpdGggZGlnaXQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjUwCisjLCBmdXp6eQorI3wgbXNnaWQgIm5vdGhpbmcgYWZ0ZXIgY29sb24gaW4gdmVyc2lvbiBudW1iZXIiCittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgaW4gdmVyc2lvbiBudW1iZXIiCittc2dzdHIgIs60zrXOvSDPhc+AzqzPgc+HzrXOuSDPhM6vz4DOv8+EzrEgzrzOtc+Ezqwgz4TOvyDOus+OzrvOv869ICg6KSDPg8+Ezr/OvSDOsc+BzrnOuM68z4wgzq3Ous60zr/Pg863z4IiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjI1NAorIywgZnV6enkKKyN8IG1zZ2lkICJub3RoaW5nIGFmdGVyIGNvbG9uIGluIHZlcnNpb24gbnVtYmVyIgorbXNnaWQgImludmFsaWQgY2hhcmFjdGVyIGluIHJldmlzaW9uIG51bWJlciIKK21zZ3N0ciAizrTOtc69IM+Fz4DOrM+Bz4fOtc65IM+Ezq/PgM6/z4TOsSDOvM61z4TOrCDPhM6/IM66z47Ou86/zr0gKDopIM+Dz4TOv869IM6xz4HOuc64zrzPjCDOrc66zrTOv8+DzrfPgiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6Mjk5IGxpYi9kcGtnL3BhcnNlaGVscC5jOjMxMQorIywgYy1mb3JtYXQKK21zZ2lkICJtaXNzaW5nICVzIgorbXNnc3RyICLOu861zq/PgM61zrkgJXMiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjMwMSBsaWIvZHBrZy9wYXJzZWhlbHAuYzozMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZW1wdHkgdmFsdWUgZm9yICVzIgorbXNnc3RyICLOus61zr3OriDPhM65zrzOriDOs865zrEgz4TOvyAlcyIKKworIzogbGliL2Rwa2cvcGtnLWZvcm1hdC5jOjgwCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgY2hhcmFjdGVyIGAlYycgaW4gZmllbGQgd2lkdGhcbiIKK21zZ3N0ciAizrzOtyDOrc6zzrrPhc+Bzr/PgiDPh86xz4HOsc66z4TOrs+BzrHPgiBgJWMnIM+Dz4TOvyDPgM67zqzPhM6/z4Igz4DOtc60zq/Ov8+FXG4iCisKKyM6IGxpYi9kcGtnL3BrZy1mb3JtYXQuYzoxNzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2xvc2luZyBicmFjZSBtaXNzaW5nIGluIGZvcm1hdFxuIgorbXNnc3RyICLOm861zq/PgM61zrkgzrcgz4DOsc+Bzq3Ovc64zrXPg863IM+EzrXPgc68zrHPhM65z4POvM6/z40gzrHPgM+MIM+EzrcgzrTOuc6xzrzPjM+Bz4bPic+DzrdcbiIKKworIzogbGliL2Rwa2cvcGtnLXNob3cuYzo0MAorbXNnaWQgIihubyBkZXNjcmlwdGlvbiBhdmFpbGFibGUpIgorbXNnc3RyICIoz4fPic+Bzq/PgiDOtM65zrHOuM6tz4POuc68zrcgz4DOtc+BzrnOs8+BzrHPhs6uKSIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjU1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaWdub3JlIHNpZ25hbCAlcyBiZWZvcmUgcnVubmluZyAlLjI1MHMiCittc2dzdHIgIs6xzrTPjc69zrHPhM63IM63IM+AzrHPgc6szrvOtc65z4jOtyDPhM6/z4UgJXMgz4DPgc65zr0gz4TOt869IM61zrrPhM6tzrvOtc+Dzrcgz4TOv8+FIM+DzrXOvc6xz4HOr86/z4UiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzo2OAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciB1bi1jYXRjaGluZyBzaWduYWwgJXM6ICVzXG4iCittc2dzdHIgIs+Dz4bOrM67zrzOsSDOus6xz4TOrCDPhM63zr0gzrHPgM61zrvOtc+FzrjOrc+Bz4nPg863IM+Ezr/PhSDPg86uzrzOsc+Ezr/PgiAlczogJXNcbiIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjc4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIChzdWJwcm9jZXNzKTogJXNcbiIKK21zZ3N0ciAiJXMgKM+Fz4DOv860zrnOtc+BzrPOsc+Dzq/OsSk6ICVzXG4iCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzo4OSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NDU0Cittc2dpZCAiZm9yayBmYWlsZWQiCittc2dzdHIgIs6xz4DOv8+Ez4XPh86vzrEgzrTOuc+HzqzOu8+Jz4POt8+CIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTE5CisjLCBjLWZvcm1hdAorbXNnaWQgInN1YnByb2Nlc3MgJXMgcmV0dXJuZWQgZXJyb3IgZXhpdCBzdGF0dXMgJWQiCittc2dzdHIgIs63IM+Fz4DOv860zrnOtc+BzrPOsc+Dzq/OsSAlcyDOtc+Azq3Pg8+Ez4HOtc+IzrUgzrrOsc+EzqzPg8+EzrHPg863IM67zqzOuM6/z4XPgiAlZCIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEyOAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAic3VicHJvY2VzcyAlcyB3YXMgaW50ZXJydXB0ZWQiCittc2dzdHIgIs63IM6xzr3Osc68zr/Ovc6uIM6zzrnOsSAlcyDOsc+Azq3PhM+Fz4fOtSIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEzMAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic3VicHJvY2VzcyAlcyBraWxsZWQgYnkgc2lnbmFsICglcyklcyIKK21zZ2lkICJzdWJwcm9jZXNzICVzIHdhcyBraWxsZWQgYnkgc2lnbmFsICglcyklcyIKK21zZ3N0ciAizrcgz4XPgM6/zrTOuc61z4HOs86xz4POr86xICVzIM+DzrrOv8+Ez47OuM63zrrOtSDOsc+Az4wgz4TOvyDPg86uzrzOsSAoJXMpJXMiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMzIKK21zZ2lkICIsIGNvcmUgZHVtcGVkIgorbXNnc3RyICIsIGNvcmUgZHVtcGVkIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgInN1YnByb2Nlc3MgJXMgZmFpbGVkIHdpdGggd2FpdCBzdGF0dXMgY29kZSAlZCIKK21zZ3N0ciAizrcgz4XPgM6/zrTOuc61z4HOs86xz4POr86xICVzIM6xz4DOrc+Ez4XPh861IM68zrUgzrrPic60zrnOus+MIM66zrHPhM6sz4PPhM6xz4POt8+CIM6xzr3Osc68zr/Ovc6uz4IgJWQiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxNTEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQ2MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAid2FpdCBmb3Igc3VicHJvY2VzcyAlcyBmYWlsZWQiCittc2dzdHIgIs63IM6xzr3Osc68zr/Ovc6uIM6zzrnOsSAlcyDOsc+Azq3PhM+Fz4fOtSIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBwYWNrYWdlIG5hbWUgYCUuMjUwcycgaW4gdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorIs68zrcgzq3Os866z4XPgc6/IM+Mzr3Ov868zrEgz4DOsc66zq3PhM6/z4UgYCUuMjUwcycgz4PPhM6/z4XPgiB0cmlnZ2VycyDOus6xzrjPhc+Dz4TOtc+BzrXOryDPhM6/IM6xz4HPh861zq/OvyBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJ1bmNhdGVkIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIlwizrrOv8+Fz4TPg86/z4XPgc61zrzOrc69zr/OuVwiIHRyaWdnZXJzIM6xzr3Orc+Dz4TOtc65zrvOu86xzr0gz4TOvyDOsc+Bz4fOtc6vzr8gYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjg1CisjLCBjLWZvcm1hdAorbXNnaWQgInN5bnRheCBlcnJvciBpbiB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIGF0IGNoYXJhY3RlciBgJXMnJXMiCittc2dzdHIgIiIKKyLPg8+GzqzOu868zrEgz4PPjc69z4TOsc6+zrfPgiDPg8+Ezr/Phc+CIHRyaWdnZXJzIM66zrHOuM+Fz4PPhM61z4HOtc6vIM+Ezr8gzrHPgc+HzrXOr86/IGAlLjI1MHMnIM+Dz4TOv869IM+HzrHPgc6xzrrPhM6uz4HOsSBgIgorIiVzJyVzIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4vY3JlYXRlIHRyaWdnZXJzIGxvY2tmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisizrHOtM+Nzr3Osc68zq/OsSDOsc69zr/Or86zzrzOsc+Ezr/Pgi/OtM63zrzOuc6/z4XPgc6zzq/Osc+CIM+Ezr/PhSDOsc+Bz4fOtc6vzr/PhSDOus67zrXOuc60z47OvM6xz4TOv8+CIM+Ez4nOvSB0cmlnZ2VyIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNDEKKyMsIGZ1enp5CisjfCBtc2dpZCAidHJpZ2dlcmVkIgorbXNnaWQgInRyaWdnZXJzIGFyZWEiCittc2dzdHIgInRyaWdnZXJlZCIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MTUxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKyLOsc60z43Ovc6xz4TOv8+CIM6/IM+Az4HOv8+DzrTOuc6/z4HOuc+DzrzPjM+CIM66zrHPhM6sz4PPhM6xz4POt8+CIM+Ezr/PhSDOsc+Bz4fOtc6vzr/PhSDPg861IM6xzr3Osc+Dz4TOv867zq4gzrvPjM6zz4kgdHJpZ2dlciBgIgorIiUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjE2NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLOsc60z43Ovc6xz4TOvyDPhM6/IM6szr3Ov865zrPOvM6xIM+Ezr/PhSDOsc+Bz4fOtc6vzr/PhSDPg861IM6xzr3Osc+Dz4TOv867zq4gzrvPjM6zz4kgdHJpZ2dlciBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MTc5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuL2NyZWF0ZSBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorIs6xzrTPjc69zrHPhG8gz4TOvyDOrM69zr/Ouc6zzrzOsS/OtM63zrzOuc6/z4XPgc6zzq/OsSDOvc6tzr/PhSDOsc+Bz4fOtc6vzr/PhSDPg861IM6xzr3Osc+Dz4TOv867zq4gzrvPjM6zz4kgdHJpZ2dlciBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MjE1CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHJlYWRpbmcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiz4PPhs6szrvOvM6xIM6xzr3OrM6zzr3Pic+DzrfPgiDPhM6/z4UgzrHPgc+HzrXOr86/z4Ugz4POtSDOsc69zrHPg8+Ezr/Ou86uIM67z4zOs8+JIHRyaWdnZXIgYCUgMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjIyMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIs6xzrTPjc69zrHPhM63IM63IM61zrPOs8+BzrHPhs6uIM+Ezr/PhSDOvc6tzr/PhSDPg861IM6xzr3Osc+Dz4TOv867zq4gzrvPjM6zz4kgdHJpZ2dlciDOsc+Bz4fOtc6vzr/PhSAgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjIyOAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIs6xzrTPjc69zrHPhM6/IM+Ezr8gzrrOu861zq/Pg865zrzOvyDPhM6/z4Ugzr3Orc6/z4Ugz4POtSDOsc69zrHPg8+Ezr/Ou86uIM67z4zOs8+JIHRyaWdnZXIgzrHPgc+HzrXOr86/z4UgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjIzMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorIs6xzrTPjc69zrHPhM63IM63IM61zrPOus6xz4TOrM+Dz4TOsc+Dzrcgz4TOv8+FIM69zq3Ov8+FIM+DzrUgzrHOvc6xz4PPhM6/zrvOriDOu8+MzrPPiSB0cmlnZ2VyIM6xz4HPh861zq/Ov8+FIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MjIyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpbnZhbGlkIG9yIHVua25vd24gc3ludGF4IGluIHRyaWdnZXIgbmFtZSBgJS4yNTBzJyAoaW4gdHJpZ2dlciBpbnRlcmVzdHMgZm9yICIKKyJwYWNrYWdlIGAlLjI1MHMnKSIKK21zZ3N0ciAiIgorIs68zrcgzq3Os866z4XPgc63IM6uIM6szrPOvc+Jz4PPhM63IM+Dz43Ovc+EzrHOvs63IM+Dz4TOvyDPjM69zr/OvM6xIM+Ezr/PhSB0cmlnZ2VyIGAlLjI1MHMnICjPg8+Ezr/OvSB0cmlnZ2VyICIKKyJpbnRlcmVzdHMgzrPOuc6xIM+Ezr8gz4DOsc66zq3PhM6/IGAlLjI1MHMnKSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjI2MworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiB0cmlnZ2VyIGludGVyZXN0IGxpc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAizrHOtM+Nzr3Osc+Ezr8gz4TOvyDOrM69zr/Ouc6zzrzOsSDOsc+Bz4fOtc6vzr/PhSDOu86vz4PPhM6xz4IgaW50ZXJlc3QgdHJpZ2dlciBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjI5MgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmV3aW5kIHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAizrHOtM+Nzr3Osc+EzrcgzrcgzrXPgM6xzr3Osc+Ez43Ou865zr7OtyDOsc+Bz4fOtc6vzr/PhSBpbnRlcmVzdCB0cmlnZ2VyIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzA1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcycgc3ludGF4IGVycm9yOyBpbGxlZ2FsIHBhY2thZ2UgbmFtZSBgJS4yNTBzJzogIgorIiUuMjUwcyIKK21zZ3N0ciAiIgorIs+Dz4bOrM67zrzOsSDPg8+Nzr3PhM6xzr7Ot8+CIM+Dz4TOv869IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJy4gzpzOtyDOvc+MzrzOuc68zr8gz4zOvc6/zrzOsSDPgM6xzrrOrc+Ezr/PhSAiCisiYCUgMjUwcyc6ICUgMjUwcyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMxOAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAizrHOtM+Nzr3Osc+EzrcgzrcgzrXOs86zz4HOsc+Gzq4gzr3Orc6/z4UgzrHPgc+HzrXOr86/z4UgdHJpZ2dlciBpbnRlcmVzdCBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMyMQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgIs6xzrTPjc69zrHPhM63IM63IM60zrfOvM65zr/Phc+BzrPOr86xIM69zq3Ov8+FIM6xz4HPh861zq/Ov8+FIGludGVyZXN0IHRyaWdnZXIgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMjQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzeW5jIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgIs6xzrTPjc69zrHPhM63IM63IM60zrfOvM65zr/Phc+BzrPOr86xIM69zq3Ov8+FIM6xz4HPh861zq/Ov8+FIGludGVyZXN0IHRyaWdnZXIgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAizrHOtM+Nzr3Osc+EzrcgzrcgzrXOs866zrHPhM6sz4PPhM6xz4POtyDOvc6tzr/PhSDOsc+Bz4fOtc6vzr/PhSB0cmlnZ2VyIGludGVyZXN0IGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzQwIGxpYi9kcGtnL3RyaWdsaWIuYzozNDIgbGliL2Rwa2cvdHJpZ2xpYi5jOjQ3MgorIzogc3JjL3JlbW92ZS5jOjI4NiBzcmMvcmVtb3ZlLmM6Mzc3CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZW1vdmUgYCUuMjUwcyciCittc2dzdHIgIs6xzrTPjc69zrHPhM63IM63IM6xz4bOsc6vz4HOtc+Dzrcgz4TOv8+FIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzYwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAizrHOtM+Nzr3Osc+EzrcgzrcgzrTOt868zrnOv8+Fz4HOs86vzrEgzr3Orc6/z4UgzrHPgc+HzrXOr86/z4UgaW50ZXJlc3QgdHJpZ2dlciBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjM4MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIs6xzrTPjc69zrHPhM63IM63IM60zrfOvM65zr/Phc+BzrPOr86xIM69zq3Ov8+FIM6xz4HPh861zq/Ov8+FIGludGVyZXN0IHRyaWdnZXIgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0NTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImR1cGxpY2F0ZSBmaWxlIHRyaWdnZXIgaW50ZXJlc3QgZm9yIGZpbGVuYW1lIGAlLjI1MHMnIGFuZCBwYWNrYWdlIGAlLjI1MHMnIgorbXNnc3RyICIiCisizrXPgM6xzr3Osc67zrHOvM6yzrHOvc+MzrzOtc69zr8gzrHPgc+HzrXOr86/IHRyaWdnZXIgaW50ZXJlc3QgzrPOuc6xIM+Ezr8gz4zOvc6/zrzOsSDOsc+Bz4fOtc6vzr/PhSBgJS4yNTBzJyDOus6xzrkgIgorIs+Ezr8gz4DOsc66zq3PhM6/IGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDgzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAizrHOtM+Nzr3Osc+EzrcgzrcgzrTOt868zrnOv8+Fz4HOs86vzrEgzr3Orc6/z4UgzrHPgc+HzrXOr86/z4UgdHJpZ2dlciBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ5MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAizrHOtM+Nzr3Osc+EzrcgzrcgzrXOs86zz4HOsc+Gzq4gzr3Orc6/z4UgzrHPgc+HzrXOr86/z4UgdHJpZ2dlciBmaWxlIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDk2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAizrHOtM+Nzr3Osc+EzrcgzrcgzrTOt868zrnOv8+Fz4HOs86vzrEgzr3Orc6/z4UgzrHPgc+HzrXOr86/z4UgdHJpZ2dlciBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ5OQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAizrHOtM+Nzr3Osc+EzrcgzrcgzrTOt868zrnOv8+Fz4HOs86vzrEgzr3Orc6/z4UgzrHPgc+HzrXOr86/z4UgdHJpZ2dlciBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjUwMworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIs6xzrTPjc69zrHPhM63IM63IM60zrfOvM65zr/Phc+BzrPOr86xIM69zq3Ov8+FIM6xz4HPh861zq/Ov8+FIHRyaWdnZXIgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1MDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSBhcyBgJS4yNTBzJyIKK21zZ3N0ciAizrHOtM+Nzr3Osc+EzrcgzrcgzrXOs866zrHPhM6sz4PPhM6xz4POtyDOvc6tzr/PhSDOsc+Bz4fOtc6vzr/PhSB0cmlnZ2VyIGZpbGUgz4nPgiBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjU0MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIs6xzrTPjc69zrHPhM63IM63IM6xzr3OrM6zzr3Pic+Dzrcgz4TOv8+FIM6xz4HPh861zq/Ov8+FIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1NTIKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yIGluIGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiz4PPhs6szrvOvM6xIM6xzr3OrM6zzr3Pic+DzrfPgiDPg8+Ezr8gzrHPgc+HzrXOr86/IM+Ez4nOvSB0cmlnZ2VyIM6xz4HPh861zq/Ov8+FIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTYzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmaWxlIHRyaWdnZXJzIHJlY29yZCBtZW50aW9ucyBpbGxlZ2FsIHBhY2thZ2UgbmFtZSBgJS4yNTBzJyAoZm9yIGludGVyZXN0IGluICIKKyJmaWxlIGAlLjI1MHMnKTogJS4yNTBzIgorbXNnc3RyICIiCisiz4TOvyByZWNvcmQgz4TPic69IHRyaWdnZXIgzrHPgc+HzrXOr86/z4UgzrHOvc6xz4bOrc+BzrXOuSDOsc64zq3OvM65z4TOvyDPjM69zr/OvM6xIM+AzrHOus6tz4TOv8+FIGAlLjI1MHMnICjOs865zrEgIgorImludGVyZXN0IM+Dz4TOvyDOsc+Bz4fOtc6vzr8gYCUuMjUwcycpOiAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo2NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInRyaWdnZXJzIGNpIGZpbGUgYCUuMjUwcycgY29udGFpbnMgaWxsZWdhbCB0cmlnZ2VyIHN5bnRheCBpbiB0cmlnZ2VyIG5hbWUgYCIKKyIlLjI1MHMnOiAlLjI1MHMiCittc2dzdHIgIiIKKyLPhM6/IM6xz4HPh861zq/OvyDPhM+Jzr0gdHJpZ2dlcnMgY2kgYCUuMjUwcycgz4DOtc+BzrnOrc+HzrXOuSDOvM63IM64zrXOvM65z4TOriDPg8+Nzr3PhM6xzr7OtyB0cmlnZ2VyIM+Dz4TOvyAiCisiz4zOvc6/zrzOsSDPhM6/z4UgdHJpZ2dlciBgJS4yNTBzJzogJS4yNTBzIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Njg0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIHRyaWdnZXJzIGNpIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIs6xzrTPjc69zrHPhM6/IM+Ezr8gzqzOvc6/zrnOs868zrEgz4TOv8+FIM6xz4HPh861zq/Ov8+FIHRyaWdnZXJzIGNpIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Njk5Cittc2dpZCAidHJpZ2dlcnMgY2kgZmlsZSBjb250YWlucyB1bmtub3duIGRpcmVjdGl2ZSBzeW50YXgiCittc2dzdHIgIs+Ezr8gzrHPgc+HzrXOr86/IM+Ez4nOvSB0cmlnZ2VycyBjaSDPgM61z4HOuc6tz4fOtc65IM6szrPOvc+Jz4PPhM63IM+Dz43Ovc+EzrHOvs63IM69z4TOuc+BzrXOus+Ezq/Oss6xz4IiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo3MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJpZ2dlcnMgY2kgZmlsZSBjb250YWlucyB1bmtub3duIGRpcmVjdGl2ZSBgJS4yNTBzJyIKK21zZ3N0ciAidHJpZ2dlcnMgY2kgZmlsZSDPgM61z4HOuc6tz4fOtc65IM6szrPOvc+Jz4PPhM63IM69z4TOuc+BzrXOus+Ezq/Oss6xIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Nzc2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdHJpZ2dlcnMgc3RhdGUgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICLOsc60z43Ovc6xz4TOtyDOtyDOtM63zrzOuc6/z4XPgc6zzq/OsSDOus6xz4TOsc67z4zOs86/z4UgzrrOsc+EzqzPg8+EzrHPg863z4IgdHJpZ2dlciBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjc3OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IG93bmVyc2hpcCBvZiB0cmlnZ2VycyBzdGF0ZSBkaXJlY3RvcnkgYCUuMjUwcyciCittc2dzdHIgIiIKKyLOsc60z43Ovc6xz4TOv8+CIM6/IM66zrHOuM6/z4HOuc+DzrzPjM+CIM+EzrfPgiDOuc60zrnOv866z4TOt8+Dzq/Osc+CIM+Ezr/PhSDOus6xz4TOsc67z4zOs86/z4UgzrrOsc+EzqzPg8+EzrHPg863z4IgdHJpZ2dlciBgIgorIiUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWduYW1lLmM6MzQKK21zZ2lkICJlbXB0eSB0cmlnZ2VyIG5hbWVzIGFyZSBub3QgcGVybWl0dGVkIgorbXNnc3RyICLOtM61zr0gzrXPgM65z4TPgc6tz4DOv869z4TOsc65IM66zrXOvc6sIM6/zr3PjM68zrHPhM6xIHRyaWdnZXIiCisKKyM6IGxpYi9kcGtnL3RyaWduYW1lLmM6MzgKK21zZ2lkICJ0cmlnZ2VyIG5hbWUgY29udGFpbnMgaW52YWxpZCBjaGFyYWN0ZXIiCittc2dzdHIgIs+Ezr8gz4zOvc6/zrzOsSDPhM6/z4UgdHJpZ2dlciDPgM61z4HOuc6tz4fOtc65IM68zrcgzq3Os866z4XPgc6/IM+HzrHPgc6xzrrPhM6uz4HOsSIKKworIzogbGliL2Rwa2cvdXRpbHMuYzo1NgorIywgYy1mb3JtYXQKK21zZ2lkICJyZWFkIGVycm9yIGluIGAlLjI1MHMnIgorbXNnc3RyICLPg8+GzqzOu868zrEgzrHOvc6szrPOvc+Jz4POt8+CIM+Dz4TOvyBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdXRpbHMuYzo2MQorIywgYy1mb3JtYXQKK21zZ2lkICJmZ2V0cyBnYXZlIGFuIGVtcHR5IHN0cmluZyBmcm9tIGAlLjI1MHMnIgorbXNnc3RyICLOtyBmZ2V0cyDOtc+Azq3Pg8+Ez4HOtc+IzrUgzrzOuc6xIM66zrXOvc6uIM+Dz4XOvM6yzr/Ou86/z4POtc65z4HOrCDOsc+Az4wgz4TOvyBgJSAyNTBzJyIKKworIzogbGliL2Rwa2cvdXRpbHMuYzo2MworIywgYy1mb3JtYXQKK21zZ2lkICJ0b28tbG9uZyBsaW5lIG9yIG1pc3NpbmcgbmV3bGluZSBpbiBgJS4yNTBzJyIKK21zZ3N0ciAiz4DOv867z40gzrzOtc6zzqzOu86/z4UgzrzOrs66zr/Phc+CIM6uIM6xz4DOv8+Nz4POsSBuZXdsaW5lIM+Dz4TOvyBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdXRpbHMuYzo3NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVvZiByZWFkaW5nIGAlLjI1MHMnIgorbXNnc3RyICLOvM63IM6xzr3Osc68zrXOvc+MzrzOtc69zr8gz4TOrc67zr/PgiDOsc+Bz4fOtc6vzr/PhSAoZW9mKSDOus6xz4TOrCDPhM63zr0gzrHOvc6szrPOvc+Jz4POtyDPhM6/z4UgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3ZhcmJ1Zi5jOjgyIGxpYi9kcGtnL3ZhcmJ1Zi5jOjg4Cittc2dpZCAiZXJyb3IgZm9ybWF0dGluZyBzdHJpbmcgaW50byB2YXJidWYgdmFyaWFibGUiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTc5IHNyYy9hcmNoaXZlcy5jOjIwMCBzcmMvYXJjaGl2ZXMuYzo3MjQKK21zZ2lkICJlcnJvciByZWFkaW5nIGZyb20gZHBrZy1kZWIgcGlwZSIKK21zZ3N0ciAiz4PPhs6szrvOvM6xIM6xz4DPjCDPhM63zr0gzrHOvc6szrPOvc+Jz4POtyDPhM63z4Igz4PPic67zq7Ovc+Jz4POt8+CIM+Ezr/PhSBkcGtnLWRlYiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTk1CisjLCBjLWZvcm1hdAorbXNnaWQgInNraXBwZWQgdW5wYWNraW5nIGZpbGUgJyUuMjU1cycgKHJlcGxhY2VkIG9yIGV4Y2x1ZGVkPykiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MjQ2IHNyYy9hcmNoaXZlcy5jOjI1MAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIHRpbWVzdGFtcHMgb2YgYCUuMjU1cyciCittc2dzdHIgIs+Dz4bOrM67zrzOsSDOv8+BzrnPg868zr/PjSDPhM63z4Igz4fPgc6/zr3Ov8+Dzq7OvM6xzr3Pg863z4Igz4TOv8+FIGAlLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoyNjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igc2V0dGluZyBvd25lcnNoaXAgb2Ygc3ltbGluayBgJS4yNTVzJyIKK21zZ3N0ciAiz4PPhs6szrvOvM6xIM+Bz43OuM68zrnPg863z4IgzrnOtM65zr/Ous+EzrfPg86vzrHPgiDPhM6/z4UgYCUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjI2NSBzcmMvYXJjaGl2ZXMuYzo3MzQgc3JjL3N0YXRjbWQuYzoxNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igc2V0dGluZyBvd25lcnNoaXAgb2YgYCUuMjU1cyciCittc2dzdHIgIs+Dz4bOrM67zrzOsSDPgc+NzrjOvM65z4POt8+CIM65zrTOuc6/zrrPhM63z4POr86xz4Igz4TOv8+FIGAlLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoyNjcgc3JjL2FyY2hpdmVzLmM6NzM2IHNyYy9zdGF0Y21kLmM6MTY1CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHNldHRpbmcgcGVybWlzc2lvbnMgb2YgYCUuMjU1cyciCittc2dzdHIgIs+Dz4bOrM67zrzOsSDOv8+BzrnPg868zr/PjSAgz4TPic69IM60zrnOus6xzrnPic68zqzPhM+Jzr0gz4TOv8+FIGAlLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzozOTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHN0YXQgKGRlcmVmZXJlbmNlKSBleGlzdGluZyBzeW1saW5rIGAlLjI1MHMnIgorbXNnc3RyICIiCisizrHPgM6/z4TPhc+Hzq/OsSDOus6xzrjOv8+BzrnPg868zr/PjSDOus6xz4TOrM+Dz4TOsc+DzrfPgiAoZGVyZWZlcm5jZSkgz4TOv8+FIM+Fz4DOrM+Bz4fOv869z4TOv8+CIM+Dz4XOvM6yzr/Ou865zrrOv8+NICIKKyLPg8+Fzr3OtM6tz4POvM6/z4UgYCUuMjUwcyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjQxNworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZmFpbGVkIHRvIHN0YXQgKGRlcmVmZXJlbmNlKSBwcm9wb3NlZCBuZXcgc3ltbGluayB0YXJnZXQgYCUuMjUwcycgZm9yICIKKyJzeW1saW5rIGAlLjI1MHMnIgorbXNnc3RyICIiCisizrHPgM6/z4TPhc+Hzq/OsSDOsc+Az4zOtM6/z4POt8+CIM66zrHPhM6sz4PPhM6xz4POt8+CIChkZXJlZmVybmNlKSDPhM6/z4Ugz4DPgc6/z4TOtc65zr3PjM68zrXOvc6/z4Ugz4PPhM+Mz4fOv8+FIM+Ezr/PhSAiCisiz4PPhc68zrLOv867zrnOus6/z40gz4PPhc69zrTOrc+DzrzOv8+FIGAlLjI1MHMnIM6zzrnOsSDPhM6/zr0gz4PPhc68zrLOv867zrnOus+MIM+Dz43Ovc60zrXPg868zr8gYCUuMjUwcyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjQ3NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidHJ5aW5nIHRvIG92ZXJ3cml0ZSBgJS4yNTBzJywgd2hpY2ggaXMgdGhlIGRpdmVydGVkIHZlcnNpb24gb2YgYCIKKyIlLjI1MHMnIChwYWNrYWdlOiAlLjEwMHMpIgorbXNnc3RyICIiCisiz4DPgc6/z4PPgM6szrjOtc65zrEgz4XPgM61z4HOtc6zzrPPgc6xz4bOrs+CIM+Ezr/PhSBgJS4yNTBzJywgz4DOv8+FIM61zq/Ovc6xzrkgzrcgzrXOus+Ez4HOsc+AzrXOr8+DzrEgzq3Ous60zr/Pg863IM+Ezr/PhSBgIgorIiUuMjUwcycgKM+AzrHOus6tz4TOvzogJS4xMDBzKSIKKworIzogc3JjL2FyY2hpdmVzLmM6NDgxCisjLCBjLWZvcm1hdAorbXNnaWQgInRyeWluZyB0byBvdmVyd3JpdGUgYCUuMjUwcycsIHdoaWNoIGlzIHRoZSBkaXZlcnRlZCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICIiCisiz4DPgc6/z4PPgM6szrjOtc65zrEgz4XPgM61z4HOtc6zzrPPgc6xz4bOrs+CIM+Ezr/PhSBgJS4yNTBzJywgz4DOv8+FIM61zq/Ovc6xzrkgzrXOus+Ez4HOsc+AzrXOr8+DzrEgzq3Ous60zr/Pg863IM+Ezr/PhSBgIgorIiUuMjUwcyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjUxMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBgJS4yNTVzJyAod2hpY2ggSSB3YXMgYWJvdXQgdG8gaW5zdGFsbCkiCittc2dzdHIgIiIKKyLOsc60z43Ovc6xz4TOtyDOtyDOtc+Nz4HOtc+DzrcgzrrOsc+EzqzPg8+EzrHPg863z4Igz4TOv8+FIGAlLjI1NXMnICjPgM6/z4Ugz4DPgc6/z4PPgM6szrjOt8+DzrEgzr3OsSDOtc6zzrrOsc+EzrHPg8+Ezq7Pg8+JKSIKKworIzogc3JjL2FyY2hpdmVzLmM6NTE5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1bmFibGUgdG8gY2xlYW4gdXAgbWVzcyBzdXJyb3VuZGluZyBgJS4yNTVzJyBiZWZvcmUgaW5zdGFsbGluZyBhbm90aGVyICIKKyJ2ZXJzaW9uIgorbXNnc3RyICIiCisizrHOtM+Nzr3Osc+Ezr/PgiDOvyDOus6xzrjOsc+BzrnPg868z4zPgiDPhM63z4Igz4POsc6yzr/Pjc+BzrHPgiDOs8+Nz4HPiSDOsc+Az4wgz4TOvyBgJS4yNTVzJyDPgM+BzrnOvSDPhM63zr0gzrXOs866zrHPhM6sz4PPhM6xz4POtyAiCisizqzOu867zrfPgiDOrc66zrTOv8+DzrfPgiIKKworIzogc3JjL2FyY2hpdmVzLmM6NTI1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IHJlc3RvcmVkIGAlLjI1NXMnIGJlZm9yZSBpbnN0YWxsaW5nIGFub3RoZXIgdmVyc2lvbiIKK21zZ3N0ciAiIgorIs6xzrTPjc69zrHPhM63IM63IM61z43Pgc61z4POtyDOus6xz4TOrM+Dz4TOsc+DzrfPgiDPhM6/z4UgzrXPgM6xzr3Osc+GzrXPgc64zq3Ovc+Ezr/PgiBgJS4yNTVzJyDPgM+Bzr/PhM6/z40gzrXOs866zrHPhM6xz4PPhM6xzrjOtc6vICIKKyLOvc6tzrEgzq3Ous60zr/Pg863IgorCisjOiBzcmMvYXJjaGl2ZXMuYzo1NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiYXJjaGl2ZSBjb250YWluZWQgb2JqZWN0IGAlLjI1NXMnIG9mIHVua25vd24gdHlwZSAweCV4IgorbXNnc3RyICLPhM6/IM6xz4HPh861zq/OvyDPgM61z4HOuc61zq/Ph861IM+Ezr8gzrHOvc+EzrnOus61zq/OvM61zr3OvyBgJS4yNTVzJyDOrM6zzr3Pic+Dz4TOv8+FIM+Ez43PgM6/z4UgMHgleCIKKworIzogc3JjL2FyY2hpdmVzLmM6NjI2IHNyYy9kaXZlcnRjbWQuYzoxNTAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjY4MgorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMjIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyODQKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNDQxIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNjgwCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE2NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI0NAorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MjcKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImNhbm5vdCBzdGF0IG9sZCBuYW1lIGAlcyc6ICVzIgorbXNnaWQgImNhbm5vdCBzdGF0IGZpbGUgJyVzJyIKK21zZ3N0ciAizrHOtM+Fzr3Osc68zq/OsSDPgM+Bzr/Pg860zrnOv8+BzrnPg868zr/PjSDOus6xz4TOrM+Dz4TOsc+DzrfPgiDPhM6/z4Ugz4DOsc67zrnOv8+NIM6/zr3PjM68zrHPhM6/z4IgYCVzJzogJXMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjY0MQorIywgYy1mb3JtYXQKK21zZ2lkICJSZXBsYWNpbmcgZmlsZXMgaW4gb2xkIHBhY2thZ2UgJXMgLi4uXG4iCittc2dzdHIgIs6Rzr3PhM65zrrOsc+EzqzPg8+EzrHPg863IM6xz4HPh861zq/Pic69IM+Dz4TOvyDPgM6xzrvOuc+MIM+AzrHOus6tz4TOvyAlcyAuLi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6NjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlcGxhY2VkIGJ5IGZpbGVzIGluIGluc3RhbGxlZCBwYWNrYWdlICVzIC4uLlxuIgorbXNnc3RyICLOkc69z4TOuc66zrHPhM6sz4PPhM6xz4POtyDOsc+Az4wgzrHPgc+HzrXOr86xIM+Dz4TOvyDOtc6zzrrOsc+EzrXPg8+EzrfOvM6tzr3OvyDPgM6xzrrOrc+Ezr8gJXMgLi4uXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjY1NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorInRyeWluZyB0byBvdmVyd3JpdGUgZGlyZWN0b3J5ICclLjI1MHMnIGluIHBhY2thZ2UgJS4yNTBzICUuMjUwcyB3aXRoICIKKyJub25kaXJlY3RvcnkiCittc2dzdHIgIiIKKyLPgM+Bzr/Pg8+AzqzOuM61zrnOsSDOsc69z4TOuc66zrHPhM6sz4PPhM6xz4POt8+CIM+Ezr/PhSDOus6xz4TOsc67z4zOs86/z4UgYCUuMjUwcycgz4PPhM6/IM+AzrHOus6tz4TOvyAlLjI1MHMgzrzOtSDOvM63ICIKKyLOus6xz4TOrM67zr/Os86/IgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInRyeWluZyB0byBvdmVyd3JpdGUgJyUuMjUwcycsIHdoaWNoIGlzIGFsc28gaW4gcGFja2FnZSAlLjI1MHMgJS4yNTBzIgorbXNnc3RyICIiCisiz4DPgc6/z4PPgM6szrjOtc65zrEgzrHOvc+EzrnOus6xz4TOrM+Dz4TOsc+DzrfPgiDPhM6/z4UgYCUuMjUwcycsIM+Azr/PhSDOtc6vzr3Osc65IM61z4DOr8+DzrfPgiDPg8+Ezr8gz4DOsc66zq3PhM6/ICUuMjUwcyIKKworIzogc3JjL2FyY2hpdmVzLmM6NzExCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGAlLjI1NXMnICh3aGlsZSBwcm9jZXNzaW5nIGAlLjI1NXMnKSIKK21zZ3N0ciAizrHPgM6tz4TPhc+HzrUgzrcgzrHOvc6szrPOvc+Jz4POtyBgJS4yNTVzJyAoz4PPhM6/IGAlLjI1NXMnKSIKKworIzogc3JjL2FyY2hpdmVzLmM6NzE4CisjLCBjLWZvcm1hdAorbXNnaWQgImJhY2tlbmQgZHBrZy1kZWIgZHVyaW5nIGAlLjI1NXMnIgorbXNnc3RyICJiYWNrZW5kIGRwa2ctZGViIM66zrHPhM6sIM+Ezr8gYCUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc0NCBzcmMvYXJjaGl2ZXMuYzo5MDggc3JjL2FyY2hpdmVzLmM6OTQ5CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3Npbmcvd3JpdGluZyBgJS4yNTVzJyIKK21zZ3N0ciAiz4PPhs6szrvOvM6xIM66zrvOtc65z4POr868zrHPhM6/z4IvzrXOs86zz4HOsc+Gzq7PgiBgJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6NzQ4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIHBpcGUgYCUuMjU1cyciCittc2dzdHIgIs+Dz4bOrM67zrzOsSDOtM63zrzOuc6/z4XPgc6zzq/Osc+CIM+Dz4nOu86uzr3Pic+DzrfPgiBgJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6NzUzIHNyYy9hcmNoaXZlcy5jOjc1OAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBkZXZpY2UgYCUuMjU1cyciCittc2dzdHIgIs+Dz4bOrM67zrzOsSDOus6xz4TOrCDPhM63IM60zrfOvM65zr/Phc+BzrPOr86xIM+Dz4XPg866zrXPhc6uz4IgYCUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc3MQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBoYXJkIGxpbmsgYCUuMjU1cyciCittc2dzdHIgIs+Dz4bOrM67zrzOsSDOtM63zrzOuc6/z4XPgc6zzq/Osc+CIM+Dz4XOvc60zq3Pg868zr/PhSBgJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6Nzc3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo1MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgc3ltYm9saWMgbGluayBgJS4yNTVzJyIKK21zZ3N0ciAiz4PPhs6szrvOvM6xIM60zrfOvM65zr/Phc+BzrPOr86xz4Igz4PPhc68zrLOv867zrnOus6/z40gzrTOtc+DzrzOv8+NIGAlLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgZGlyZWN0b3J5IGAlLjI1NXMnIgorbXNnc3RyICLPg8+GzqzOu868zrEgzrrOsc+Ezqwgz4TOtyDOtM63zrzOuc6/z4XPgc6zzq/OsSDOus6xz4TOsc67z4zOs86/z4UgYCUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjgyMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gbW92ZSBhc2lkZSBgJS4yNTVzJyB0byBpbnN0YWxsIG5ldyB2ZXJzaW9uIgorbXNnc3RyICIiCisizrHOtM+Nzr3Osc+EzrcgzrcgzrzOtc+EzrHOus6vzr3Ot8+Dzrcgz4TOv8+FIGAlLjI1NXMnIM66zrHPhM6sIM68zq3Pgc6/z4XPgiDOs865zrEgzrXOs866zrHPhM6sz4PPhM6xz4POtyDOvc6tzrHPgiDOrc66zrTOv8+DzrfPgiIKKworIzogc3JjL2FyY2hpdmVzLmM6ODMyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzozMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgbGluayBgJS4yNTVzJyIKK21zZ3N0ciAizrHOtM+Nzr3Osc+EzrcgzrcgzrHOvc6szrPOvc+Jz4POtyDOtM61z4POvM6/z40gYCUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjgzNCBzcmMvY29uZmlndXJlLmM6NDIzCisjLCBjLWZvcm1hdAorbXNnaWQgInN5bWJvbGljIGxpbmsgJyUuMjUwcycgc2l6ZSBoYXMgY2hhbmdlZCBmcm9tICVqZCB0byAlemQiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6ODM5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBtYWtlIGJhY2t1cCBzeW1saW5rIGZvciBgJS4yNTVzJyIKK21zZ3N0ciAizrHOtM+Fzr3Osc68zq/OsSDOtM63zrzOuc6/z4XPgc6zzq/Osc+CIM61z4bOtc60z4HOuc66zr/PjSDOtM61z4POvM6/z40gzrPOuc6xIGAlLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNob3duIGJhY2t1cCBzeW1saW5rIGZvciBgJS4yNTVzJyIKK21zZ3N0ciAizrHOtM+Nzr3Osc+EzrcgzrcgzrHOu867zrHOs86uIM65zrTOuc6/zrrPhM6uz4TOtyDPhM6/z4UgzrXPhs61zrTPgc65zrrOv8+NIM60zrXPg868zr/PjSDOs865zrEgz4TOvyBgJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6ODQ2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBtYWtlIGJhY2t1cCBsaW5rIG9mIGAlLjI1NXMnIGJlZm9yZSBpbnN0YWxsaW5nIG5ldyB2ZXJzaW9uIgorbXNnc3RyICIiCisizrHOtM+Fzr3Osc68zq/OsSDOtM63zrzOuc6/z4XPgc6zzq/Osc+CIM61z4bOtc60z4HOuc66zr/PjSDOtM61z4POvM6/z40gz4TOv8+FIGAlLjI1NXMnIM+Az4HOuc69IM+EzrfOvSDOtc6zzrrOsc+EzqzPg8+EzrHPg863IM69zq3Osc+CICIKKyLOrc66zrTOv8+DzrfPgiIKKworIzogc3JjL2FyY2hpdmVzLmM6ODYzIHNyYy9hcmNoaXZlcy5jOjk1NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgdmVyc2lvbiBvZiBgJS4yNTVzJyIKK21zZ3N0ciAizrHOtM+Nzr3Osc+EzrcgzrcgzrXOs866zrHPhM6sz4PPhM6xz4POtyDPhM63z4Igzr3Orc6xz4Igzq3Ous60zr/Pg863z4Igz4TOv8+FIGAlLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo5MDIgc3JjL2FyY2hpdmVzLmM6OTQ1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiAnJS4yNTVzJyIKK21zZ3N0ciAizrHOtM+Nzr3Osc+EzrcgzrcgzrTOt868zrnOv8+Fz4HOs86vzrEgYCUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjk0NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgZmlsZSAnJS4yNTVzJyIKK21zZ3N0ciAizrHOtM+Nzr3Osc+EzrcgzrcgzrHPgM6/zrTOrc+DzrzOtc+Fz4POtyBgJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAwMAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorImlnbm9yaW5nIGRlcGVuZGVuY3kgcHJvYmxlbSB3aXRoICVzOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogz4DPgc6/zrXOuc60zr/PgM6/zq/Ot8+DzrcgLSDOsc6zzr3Ov861zq/PhM6xzrkgz4TOvyDPgM+Bz4zOss67zrfOvM6xIM61zr7OrM+Bz4TOt8+DzrfPgiDOvM61IM+Ezr8gJXM6IFxuIgorIiVzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDA1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiY29uc2lkZXJpbmcgZGVjb25maWd1cmF0aW9uIG9mIGVzc2VudGlhbFxuIgorIiBwYWNrYWdlICVzLCB0byBlbmFibGUgJXMuIgorbXNnc3RyICIiCisiZHBrZzogz4DPgc6/zrXOuc60zr/PgM6/zq/Ot8+DzrcgLSDOuM61z47Pgc63z4POtyDPhM63z4IgzrHPgM6/z4HPgc+NzrjOvM65z4POt8+CIM+Ezr/PhSDOv8+Fz4POuc+OzrTOv8+Fz4JcbiIKKyIgz4DOsc66zq3PhM6/z4UgJXMsIM6zzrnOsSDOtc69zrXPgc6zzr/PgM6/zq/Ot8+Dzrcgz4TOv8+FICVzLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDA4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBubywgJXMgaXMgZXNzZW50aWFsLCB3aWxsIG5vdCBkZWNvbmZpZ3VyZVxuIgorIiBpdCBpbiBvcmRlciB0byBlbmFibGUgJXMuXG4iCittc2dzdHIgIiIKKyJkcGtnOiDPjM+Hzrksz4TOvyAlcyDOtc6vzr3Osc65IM6/z4XPg865z47OtM61z4IsIM60zrUgzrjOsSDOsc+Azr/Pgc+Bz4XOuM68zrnPg8+EzrXOr1xuIgorIiDOs865zrEgzr3OsSDOtc69zrXPgc6zzr/PgM6/zrnOt864zrXOryDPhM6/ICVzLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDIyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBubywgY2Fubm90IHByb2NlZWQgd2l0aCAlcyAoLS1hdXRvLWRlY29uZmlndXJlIHdpbGwgaGVscCk6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiDPjM+HzrksIM60zrXOvSDOvM+Azr/Pgc+OIM69zrEgz4DPgc6/z4fPic+Bzq7Pg8+JIM68zrUgz4TOvyAlcyAoz4TOvyAtLWF1dG8tZGVjb25maWd1cmUgzrjOsSAiCisizrLOv863zrjOrs+DzrXOuSk6XG4iCisiJXMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVtb3ZhbCBvZiAlLjI1MHMiCittc2dzdHIgIs6xz4bOsc6vz4HOtc+Dzrcgz4TOv8+FICAlLjI1MHMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW5zdGFsbGF0aW9uIG9mICUuMjUwcyIKK21zZ3N0ciAizrXOs866zrHPhM6sz4PPhM6xz4POtyDPhM6/z4UgJS4yNTBzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDU4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBjb25zaWRlcmluZyBkZWNvbmZpZ3VyYXRpb24gb2YgJXMsIHdoaWNoIHdvdWxkIGJlIGJyb2tlbiBieSAlcyAuLi5cbiIKK21zZ3N0ciAiIgorImRwa2c6IM61zr7Otc+EzqzOts+JIM+EzrfOvSDOsc+Azr/Pgc+NzrjOvM65z4POtyDPhM6/z4UgJXMsIM+Ezr8gzr/PgM6/zq/OvyDOuM6xIFwizq3Pg8+AzrHOs861XCIgzrXOvs6xzrnPhM6vzrHPgiDPhM6/z4UgIgorIiVzIC4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDY1CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IHllcywgd2lsbCBkZWNvbmZpZ3VyZSAlcyAoYnJva2VuIGJ5ICVzKS5cbiIKK21zZ3N0ciAiZHBrZzogzr3Osc65LCDOuM6xIM6xz4DOv8+Bz4XOuM68zq/Pg8+JIM+Ezr8gJXMgKM6tz4fOtc65IFwiz4PPgM6sz4POtc65XCIgzrXOvs6xzrnPhM6vzrHPgiDPhM6/z4UgJXMpLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDY5IHNyYy9hcmNoaXZlcy5jOjExODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IHJlZ2FyZGluZyAlcyBjb250YWluaW5nICVzOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogz4PPh861z4TOuc66zqwgzrzOtSDPhM6/ICVzIM+Azr/PhSDPgM61z4HOuc6tz4fOtc65IM+Ezr8gJXM6XG4iCisiJXMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNzcKKyMsIGZ1enp5Cittc2dpZCAiaWdub3JpbmcgYnJlYWthZ2UsIG1heSBwcm9jZWVkIGFueXdheSEiCittc2dzdHIgIiIKKyJkcGtnOiDPgM+Bzr/Otc65zrTOv8+Azr/Or863z4POtyAtIM64zrEgzrHOs869zr/Ot864zrXOryDOtyDPg8+NzrPOus+Bzr/Phc+DzrcsIM68z4DOv8+BzrXOryDOvc6xIM+Dz4XOvc61z4fOr8+DzrXOuSDOrc+Ez4POuSDOus65ICIKKyLOsc67zrvOuc+Oz4IgIVxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDgyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpbnN0YWxsaW5nICUuMjUwcyB3b3VsZCBicmVhayAlLjI1MHMsIGFuZFxuIgorIiBkZWNvbmZpZ3VyYXRpb24gaXMgbm90IHBlcm1pdHRlZCAoLS1hdXRvLWRlY29uZmlndXJlIG1pZ2h0IGhlbHApIgorbXNnc3RyICIiCisizrcgzrXOs866zrHPhM6sz4PPhM6xz4POtyDPhM6/z4UgJS4yNTBzIM64zrEgXCLOrc+Dz4DOsc62zrVcIiDPhM6/ICUuMjUwcywgzrrOsc65XG4iCisiIM60zrXOvSDOtc+AzrnPhM+Bzq3PgM61z4TOsc65IM63IM6xz4DOv8+Bz43OuM68zrnPg863ICjPhM6/IM+Mz4HOuc+DzrzOsSAtLWF1dG8tZGVjb25maWd1cmUgz4DOuc64zrHOvc6sIM69zrEgIgorIs6yzr/Ot864zq7Pg861zrkpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDg2CisjLCBjLWZvcm1hdAorbXNnaWQgImluc3RhbGxpbmcgJS4yNTBzIHdvdWxkIGJyZWFrIGV4aXN0aW5nIHNvZnR3YXJlIgorbXNnc3RyICLOtyDOtc6zzrrOsc+EzqzPg8+EzrHPg863IM+Ezr/PhSAgJS4yNTBzIM64zrEgXCLOrc+Dz4DOsc6zzrVcIiDPhc+AzqzPgc+Hzr/OvSDOu86/zrPOuc+DzrzOuc66z4wiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExMTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogY29uc2lkZXJpbmcgcmVtb3ZpbmcgJXMgaW4gZmF2b3VyIG9mICVzIC4uLlxuIgorbXNnc3RyICJkcGtnOiDOuM61z4nPgc+Ozr3PhM6xz4Igz4TOt869IM6xz4bOsc6vz4HOtc+Dzrcgz4TOv8+FICVzIM6zzrnOsSDPh86sz4HOtyDPhM6/z4UgJXMgLi4uXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgaXMgbm90IHByb3Blcmx5IGluc3RhbGxlZCAtIGlnbm9yaW5nIGFueSBkZXBlbmRlbmNpZXMgb24gaXQuXG4iCittc2dzdHIgIiIKKyLPhM6/ICVzIM60zrXOvSDOtc6vzr3Osc65IM66zrHPhM6szrvOu863zrvOsSDOtc6zzrrOsc+EzrXPg8+EzrfOvM6tzr3OvyAtIM6xzrPOvc6/z47Ovc+EzrHPgiDPjM67zrXPgiDPhM65z4IgzrXOvs6xz4HPhM6uz4POtc65z4IgIgorIs+Ezr/PhS5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE1MQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiBtYXkgaGF2ZSB0cm91YmxlIHJlbW92aW5nICVzLCBhcyBpdCBwcm92aWRlcyAlcyAuLi5cbiIKK21zZ3N0ciAiIgorImRwa2c6IM63IM6xz4bOsc6vz4HOtc+Dzrcgz4TOv8+FICVzIM68z4DOv8+BzrXOryDOvc6xIM60zrfOvM65zr/Phc+BzrPOrs+DzrXOuSDPgM+Bzr/Oss67zq7OvM6xz4TOsSDOus6xzrjPjs+CIM+AzrHPgc6tz4fOtc65ICIKKyIlcyAuLi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE2NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IHBhY2thZ2UgJXMgcmVxdWlyZXMgcmVpbnN0YWxsYXRpb24sIGJ1dCB3aWxsIHJlbW92ZSBhbnl3YXkgYXMgeW91ICIKKyJyZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiIKKyJkcGtnOiDPhM6/IM+AzrHOus6tz4TOvyAlcyDOsc+AzrHOuc+EzrXOryDOtc+AzrHOvc61zrPOus6xz4TOrM+Dz4TOsc+DzrcgzrHOu867zqwgzrjOsSDOsc+GzrHOuc+BzrXOuM61zq8gz4zPgM+Jz4IgzrbOt8+Ezq7Pg86xz4TOtS5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE2OQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiBwYWNrYWdlICVzIHJlcXVpcmVzIHJlaW5zdGFsbGF0aW9uLCB3aWxsIG5vdCByZW1vdmUuXG4iCittc2dzdHIgImRwa2c6IM+Ezr8gz4DOsc66zq3PhM6/ICVzIM6xz4DOsc65z4TOtc6vIM61z4DOsc69zrXOs866zrHPhM6sz4PPhM6xz4POtywgzrTOtSDOuM6xIM6xz4bOsc65z4HOtc64zrXOry5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE3OAorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiB5ZXMsIHdpbGwgcmVtb3ZlICVzIGluIGZhdm91ciBvZiAlcy5cbiIKK21zZ3N0ciAiZHBrZzogzrjOsSDOvM61z4TOsc66zrnOvc63zrjOtc6vIM+Ezr8gJXMgzrPOuc6xIM+HzqzPgc63IM+Ezr/PhSAlcy5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE5MAorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mbGljdGluZyBwYWNrYWdlcyAtIG5vdCBpbnN0YWxsaW5nICUuMjUwcyIKK21zZ3N0ciAiz4PPhc6zzrrPgc6/z4XPjM68zrXOvc6xIM+AzrHOus6tz4TOsSAtIM60zrUgzrPOr869zrXPhM6xzrkgzrXOs866zrHPhM6sz4PPhM6xz4POtyAlLjI1MHMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExOTEKKyMsIGZ1enp5Cittc2dpZCAiaWdub3JpbmcgY29uZmxpY3QsIG1heSBwcm9jZWVkIGFueXdheSEiCittc2dzdHIgImRwa2c6IM+Az4HOv861zrnOtM6/z4DOv86vzrfPg863IC0gzrjOsSDOsc6zzr3Ov863zrjOtc6vIM63IM+Dz43Os866z4HOv8+Fz4POtywgzrzPgM6/z4HOtc6vIM69zrEgz4PPhc69zrXPh86vz4POtc65ICFcbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTIzNQorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIC0tcmVjdXJzaXZlIG5lZWRzIGF0IGxlYXN0IG9uZSBwYXRoIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIC0tcmVjdXJzaXZlIM+Hz4HOtc65zqzOts61z4TOsc65IM+Ezr/Phc67zqzPh865z4PPhM6/zr0gzq3Ovc6xIM+Mz4HOuc+DzrzOsSDOvM6/zr3Ov8+AzrHPhM65zr/PjSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI0NQorIywgZnV6enkKK21zZ2lkICJmaW5kIGZvciBkcGtnIC0tcmVjdXJzaXZlIgorbXNnc3RyICLOsc60z43Ovc6xz4TOtyDOtyDOtc66z4TOrc67zrXPg863IM+EzrfPgiBmaW5kIM68zrUgLS1yZWN1cnNpdmUiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNjYKK21zZ2lkICJmYWlsZWQgdG8gZmRvcGVuIGZpbmQncyBwaXBlIgorbXNnc3RyICLOsc60z43Ovc6xz4TOvyDPhM6/IM6szr3Ov865zrPOvM6xIM+EzrfPgiDPg8+JzrvOrs69z4nPg863z4Igz4TOt8+CIGZpbmQiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNzIKK21zZ2lkICJlcnJvciByZWFkaW5nIGZpbmQncyBwaXBlIgorbXNnc3RyICLOsc60z43Ovc6xz4TOtyDOtyDOsc69zqzOs869z4nPg863IM6xz4DPjCDPhM63IM+Dz4nOu86uzr3Pic+Dzrcgz4TOt8+CIGZpbmQiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNzMKK21zZ2lkICJlcnJvciBjbG9zaW5nIGZpbmQncyBwaXBlIgorbXNnc3RyICLOsc60z43Ovc6xz4TOvyDPhM6/IM66zrvOtc6vz4POuc68zr8gz4TOt8+CIM+Dz4nOu86uzr3Pic+DzrfPgiDPhM63z4IgZmluZCIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3NgorIywgYy1mb3JtYXQKK21zZ2lkICJmaW5kIGZvciAtLXJlY3Vyc2l2ZSByZXR1cm5lZCB1bmhhbmRsZWQgZXJyb3IgJWkiCittc2dzdHIgIs63IM61zrrPhM6tzrvOtc+Dzrcgz4TOt8+CIGZpbmQgzrzOtSAtLXJlY3Vyc2l2ZSDOtc+Azq3Pg8+Ez4HOtc+IzrUgzrHPgM+Bz4zPg868zrXOvc6/IM+Dz4bOrM67zrzOsSAlaSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3OQorbXNnaWQgInNlYXJjaGVkLCBidXQgZm91bmQgbm8gcGFja2FnZXMgKGZpbGVzIG1hdGNoaW5nICouZGViKSIKK21zZ3N0ciAiIgorIs6tzrPOuc69zrUgzrHOvc6xzrbOrs+EzrfPg863LCDOtM61IM6yz4HOrc64zrfOus61IM66zrHOvc6tzr3OsSDPgM6xzrrOrc+EzrEgKM6xz4HPh861zq/OsSDPgM6/z4Ugz4TOsc65z4HOuc6szrbOv8+Fzr0gKi5kZWIpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjkwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYXQgbGVhc3Qgb25lIHBhY2thZ2UgYXJjaGl2ZSBmaWxlIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIM+Hz4HOtc65zqzOts61z4TOsc65IM+Ezr/Phc67zqzPh865z4PPhM6/zr0gzq3Ovc6xIM6xz4HPh861zq/OvyDPgM6xzrrOrc+Ezr/PhSDPic+CIM+AzrHPgc6szrzOtc+Ez4HOvyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTMyNSBzcmMvZGl2ZXJ0Y21kLmM6Nzggc3JjL2RpdmVydGNtZC5jOjExOAorIzogc3JjL2VucXVpcnkuYzoxNjYgc3JjL2VucXVpcnkuYzoyNzkgc3JjL2VucXVpcnkuYzo0NDkgc3JjL2VucXVpcnkuYzo0NTEKKyM6IHNyYy9lbnF1aXJ5LmM6NDY0IHNyYy9tYWluLmM6NjYgc3JjL21haW4uYzoxNjMgc3JjL21haW4uYzozMTQKKyM6IHNyYy9tYWluLmM6NDkzIHNyYy9wYWNrYWdlcy5jOjI1NCBzcmMvcXVlcnljbWQuYzoyNTIgc3JjL3F1ZXJ5Y21kLmM6MzU1CisjOiBzcmMvcXVlcnljbWQuYzozOTYgc3JjL3F1ZXJ5Y21kLmM6NDA0IHNyYy9xdWVyeWNtZC5jOjQ0OCBzcmMvcXVlcnljbWQuYzo1MTcKKyM6IHNyYy9xdWVyeWNtZC5jOjYwNiBzcmMvcXVlcnljbWQuYzo2NTAgc3JjL3NlbGVjdC5jOjc5IHNyYy9zdGF0Y21kLmM6NjgKKyM6IHNyYy9zdGF0Y21kLmM6OTggc3JjL3RyaWdjbWQuYzo1OCBzcmMvdHJpZ2NtZC5jOjkwIGRwa2ctZGViL2J1aWxkLmM6NDQxCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjE3IGRwa2ctZGViL2V4dHJhY3QuYzoyNTAgZHBrZy1kZWIvaW5mby5jOjIwMworIzogZHBrZy1kZWIvaW5mby5jOjI2NSBkcGtnLWRlYi9tYWluLmM6NjAgZHBrZy1kZWIvbWFpbi5jOjEyNgorIzogZHBrZy1zcGxpdC9pbmZvLmM6MjU3IGRwa2ctc3BsaXQvbWFpbi5jOjU0IGRwa2ctc3BsaXQvbWFpbi5jOjk4CisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTQ0IGRwa2ctc3BsaXQvcXVldWUuYzoyODAKK21zZ2lkICI8c3RhbmRhcmQgb3V0cHV0PiIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzI2IHNyYy9wYWNrYWdlcy5jOjI1NSBzcmMvcXVlcnljbWQuYzoyNTMKKyM6IHNyYy9xdWVyeWNtZC5jOjM1MyBzcmMvcXVlcnljbWQuYzo0NTQgc3JjL3F1ZXJ5Y21kLmM6NTE4IHNyYy9zZWxlY3QuYzo4MAorIzogZHBrZy1zcGxpdC9tYWluLmM6MTY5IGRwa2ctc3BsaXQvcXVldWUuYzoyMTgKK21zZ2lkICI8c3RhbmRhcmQgZXJyb3I+IgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzNjcKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIlNlbGVjdGluZyBwcmV2aW91c2x5IGRlc2VsZWN0ZWQgcGFja2FnZSAlcy5cbiIKK21zZ2lkICJTZWxlY3RpbmcgcHJldmlvdXNseSB1bnNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dzdHIgIs6Vz4DOuc67zr/Os86uIM+Az4HOv863zrPOv8+NzrzOtc69zr/PhSDOsc+AzrXPgM65zrvOtc6zzrzOrc69zr/PhSDPgM6xzrrOrc+Ezr/PhSAlcy5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTM3MQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiU2tpcHBpbmcgZGVzZWxlY3RlZCBwYWNrYWdlICVzLlxuIgorbXNnaWQgIlNraXBwaW5nIHVuc2VsZWN0ZWQgcGFja2FnZSAlcy5cbiIKK21zZ3N0ciAizqDOsc+BzqzOu861zrnPiM63IM6xz4DPjM61z4DOuc67zrXOs868zq3Ovc6/z4Ugz4DOsc66zq3PhM6/z4UgJXMuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiVmVyc2lvbiAlLjI1MHMgb2YgJS4yNTBzIGFscmVhZHkgaW5zdGFsbGVkLCBza2lwcGluZy5cbiIKK21zZ3N0ciAizojOus60zr/Pg863ICUuMjUwcyDPhM6/z4UgJS4yNTBzIM61zq/Ovc6xzrkgzq7OtM63IM61zrPOus6xz4TOtc+Dz4TOt868zq3Ovc63LCDPgM6xz4HOrM6yzrvOtc+IzrcuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzOTcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImRvd25ncmFkaW5nICUuMjUwcyBmcm9tICUuMjUwcyB0byAlLjI1MHMuIgorbXNnc3RyICIlcyAtIM+Az4HOv861zrnOtM6/z4DOv86vzrfPg863OiDPhc+Azr/Oss6szrjOvM65z4POtyDPhM6/z4UgJS4yNTBzIM6xz4DPjCAlLjI1MHMgz4POtSAlLjI1MHMuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjE0MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiV2lsbCBub3QgZG93bmdyYWRlICUuMjUwcyBmcm9tIHZlcnNpb24gJS4yNTBzIHRvICUuMjUwcywgc2tpcHBpbmcuXG4iCittc2dzdHIgIiIKKyLOlM61IM64zrEgz4XPgM6/zrLOsc64zrzOuc+Dz4TOtc6vIM+Ezr8gJS4yNTBzIM6xz4DPjCDPhM63zr0gzq3Ous60zr/Pg863ICUuMjUwcyDPg8+EzrfOvSAlLjI1MHMsIM+AzrHPgc6szrvOtc65z4jOty5cbiIKKworIzogc3JjL2NsZWFudXAuYzo4NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidW5hYmxlIHRvIHJlbW92ZSBuZXdseS1pbnN0YWxsZWQgdmVyc2lvbiBvZiBgJS4yNTBzJyB0byBhbGxvdyByZWluc3RhbGxhdGlvbiAiCisib2YgYmFja3VwIGNvcHkiCittc2dzdHIgIiIKKyLOsc60z43Ovc6xz4TOtyDOtyDOsc+GzrHOr8+BzrXPg863IM+EzrfPgiDOvc61zr/Otc6zzrrOsc+EzrXPg8+EzrfOvM6tzr3Ot8+CIM6tzrrOtM6/z4POt8+CIM+Ezr/PhSBgJS4yNTBzJyDOs865zrEgzr3OsSAiCisizrXPgM6xzr3Otc6zzrrOsc+EzrHPg8+EzrHOuM61zq8gzq3Ovc6xIM61z4bOtc60z4HOuc66z4wgzrHOvc+Ezq/Os8+BzrHPhs6/IgorCisjOiBzcmMvY2xlYW51cC5jOjkzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZXN0b3JlIGJhY2t1cCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICLOsc60z43Ovc6xz4TOtyDOtyDOsc69zqzOus+EzrfPg863IM+EzrfPgiDOtc+GzrXOtM+BzrnOus6uz4Igzq3Ous60zr/Pg863z4Igz4TOv8+FIGAlLjI1MHMnIgorCisjOiBzcmMvY2xlYW51cC5jOjk3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gcmVzdG9yZSBiYWNrdXAgdmVyc2lvbiBvZiBgJS4yNTBzJyIKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIGJhY2t1cCBjb3B5IG9mICclLjI1MHMnIgorbXNnc3RyICLOsc60z43Ovc6xz4TOtyDOtyDOsc69zqzOus+EzrfPg863IM+EzrfPgiDOtc+GzrXOtM+BzrnOus6uz4Igzq3Ous60zr/Pg863z4Igz4TOv8+FIGAlLjI1MHMnIgorCisjOiBzcmMvY2xlYW51cC5jOjEwMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIG5ld2x5LWluc3RhbGxlZCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICLOsc60z4XOvc6xzrzOr86xIM6xz4bOsc6vz4HOtc+DzrfPgiDPhM63z4Igzr3Otc6/Lc61zrPOus6xz4TOtc+Dz4TOt868zq3Ovc63z4Igzq3Ous60zr/Pg863z4Igz4TOv8+FYCUuMjUwcyciCisKKyM6IHNyYy9jbGVhbnVwLmM6MTA4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgbmV3bHktZXh0cmFjdGVkIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dzdHIgIs6xzrTPjc69zrHPhM63IM63IM6xz4bOsc6vz4HOtc+Dzrcgz4TOt8+CIM69zrXOv861zr7Osc+HzrjOtc6vz4POsc+CIM6tzrrOtM6/z4POt8+CIM+Ezr/PhWAlLjI1MHMnIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTA0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gc3RhdCBuZXcgZGlzdCBjb25mZmlsZSBgJS4yNTBzJyIKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBuZXcgZGlzdHJpYnV0ZWQgY29uZmZpbGUgJyUuMjUwcyciCittc2dzdHIgIs6xzrTPjc69zrHPhM63IM63IM61z43Pgc61z4POtyDOus6xz4TOrM+Dz4TOsc+DzrfPgiDPhM6/z4Ugzr3Orc6/z4UgzrHPgc+HzrXOr86/z4Ugz4HPhc64zrzOr8+DzrXPic69IGAlLjI1MHMnIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGN1cnJlbnQgaW5zdGFsbGVkIGNvbmZmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLOsc60z43Ovc6xz4TOtyDOtyDOtc+Nz4HOtc+DzrcgzrrOsc+EzqzPg8+EzrHPg863z4Igz4TOv8+FIM+Ez4HOrc+Hzr/Ovc+Ezr/PgiDOsc+Bz4fOtc6vzr/PhSDPgc+FzrjOvM6vz4POtc+Jzr1gJS4yNTBzJyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjEyNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiQ29uZmlndXJhdGlvbiBmaWxlIGAlcycsIGRvZXMgbm90IGV4aXN0IG9uIHN5c3RlbS5cbiIKKyJJbnN0YWxsaW5nIG5ldyBjb25maWcgZmlsZSBhcyB5b3UgcmVxdWVzdGVkLlxuIgorbXNnc3RyICIiCisiXG4iCisizqTOvyDOsc+Bz4fOtc6vzr8gz4HPhc64zrzOr8+DzrXPic69IGAlcycsIM60zrXOvSDPhc+AzqzPgc+HzrXOuSDPg8+Ezr8gz4PPjc+Dz4TOt868zrEuXG4iCisizpXOs866zrHPhM6sz4PPhM6xz4POtyDOvc6tzr/PhSDOsc+Bz4fOtc6vzr/PhSBjb25maWcgz4zPgM+Jz4IgzrbOt8+Ezq7Pg86xz4TOtS5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE2OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW1vdmUgb2xkIGJhY2t1cCAnJS4yNTBzJzogJXMiCittc2dzdHIgIiIKKyJkcGtnOiAlczogz4DPgc6/zrXOuc60zr/PgM6/zq/Ot8+DzrcgLSDOsc+Azr/PhM+Fz4fOr86xIM6xz4bOsc6vz4HOtc+DzrfPgiDPhM6/z4Ugz4DOsc67zrnOv8+NIM61z4bOtc60z4HOuc66zr/PjSDOsc+Bz4fOtc6vzr/PhSBgIgorIiUuMjUwcyc6ICVzXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzoxNzYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVuYW1lICclLjI1MHMnIHRvICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiDPgM+Bzr/Otc65zrTOv8+Azr/Or863z4POtyAtIM6xz4DOv8+Ez4XPh86vzrEgzrzOtc+Ezr/Ovc6/zrzOsc+Dzq/Osc+CIM+Ezr/PhSBgJS4yNTBzJyDPg861IGAlLjI1MHMnOiAiCisiJXNcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE4MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW1vdmUgJyUuMjUwcyc6ICVzIgorbXNnc3RyICIlczogzrHPgM6/z4TPhc+Hzq/OsSDOtc66z4TOrc67zrXPg863z4IgJyVzICVzJyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE4OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW1vdmUgb2xkIGRpc3RyaWJ1dGVkIHZlcnNpb24gJyUuMjUwcyc6ICVzIgorbXNnc3RyICIiCisiZHBrZzogJXM6IM+Az4HOv861zrnOtM6/z4DOv86vzrfPg863IC0gzrHPgM6/z4TPhc+Hzq/OsSDOsc+GzrHOr8+BzrXPg863z4Igz4DOsc67zrnOrM+CIM6tzrrOtM6/z4POt8+CIGAlLjI1MHMnOiAlc1xuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTkyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIHJlbW92ZSAnJS4yNTBzJyAoYmVmb3JlIG92ZXJ3cml0ZSk6ICVzIgorbXNnc3RyICIiCisiZHBrZzogJXM6IM+Az4HOv861zrnOtM6/z4DOv86vzrfPg863IC0gzrHPgM6/z4TPhc+Hzq/OsSDOsc+GzrHOr8+BzrXPg863z4Igz4TOv8+FIGAlLjI1MHMnICjPgM+BzrnOvSDPhM63zr0gIgorIs6xzr3PhM65zrrOsc+EzqzPg8+EzrHPg863KTogJXNcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE5NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byBsaW5rICclLjI1MHMnIHRvICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiDPgM+Bzr/Otc65zrTOv8+Azr/Or863z4POtyAtIM6xz4DOv8+Ez4XPh86vzrEgzrTOt868zrnOv8+Fz4HOs86vzrHPgiDOtM61z4POvM6/z40gYCUuMjUwcycgz4DPgc6/z4IgYCIKKyIlLjI1MHMnOiAlc1xuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjAwCisjLCBjLWZvcm1hdAorbXNnaWQgIkluc3RhbGxpbmcgbmV3IHZlcnNpb24gb2YgY29uZmlnIGZpbGUgJXMgLi4uXG4iCittc2dzdHIgIs6VzrPOus6xz4TOrM+Dz4TOsc+Dzrcgzr3Orc6xz4Igzq3Ous60zr/Pg863z4Igz4TOv8+FIM6xz4HPh861zq/Ov8+FIM+Bz4XOuM68zq/Pg861z4nOvSAlcyAuLi5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjIwNiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NTQ2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIGAlLjI1MHMnIGFzIGAlLjI1MHMnIgorbXNnc3RyICLOsc60z43Ovc6xz4TOtyDOtyDOtc6zzrrOsc+EzqzPg8+EzrHPg863IGAlLjI1MHMnIM+Jz4IgYCUuMjUwcyciCisKKyM6IHNyYy9jb25maWd1cmUuYzoyNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gcGFja2FnZSBuYW1lZCBgJXMnIGlzIGluc3RhbGxlZCwgY2Fubm90IGNvbmZpZ3VyZSIKK21zZ3N0ciAiIgorIs60zrXOvSDOtc6vzr3Osc65IM61zrPOus6xz4TOtc+Dz4TOt868zq3Ovc6/IM66zrHOvc6tzr3OsSDPgM6xzrrOrc+Ezr8gzrzOtSDPjM69zr/OvM6xIGAlcycsIM60zrUgzrPOr869zrXPhM6xzrkgz4HPjc64zrzOuc+DzrciCisKKyM6IHNyYy9jb25maWd1cmUuYzoyNjAKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlLjI1MHMgaXMgYWxyZWFkeSBpbnN0YWxsZWQgYW5kIGNvbmZpZ3VyZWQiCittc2dzdHIgIs+Ezr8gz4DOsc66zq3PhM6/ICUuMjUwcyDOrc+HzrXOuSDOrs60zrcgzrXOs866zrHPhM61z4PPhM6xzrjOtc6vIM66zrHOuSDPgc+FzrjOvM65z4PPhM61zq8iCisKKyM6IHNyYy9jb25maWd1cmUuYzoyNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInBhY2thZ2UgJS4yNTBzIGlzIG5vdCByZWFkeSBmb3IgY29uZmlndXJhdGlvblxuIgorIiBjYW5ub3QgY29uZmlndXJlIChjdXJyZW50IHN0YXR1cyBgJS4yNTBzJykiCittc2dzdHIgIiIKKyLPhM6/IM+AzrHOus6tz4TOvyAlLjI1MHMgzrTOtc69IM61zq/Ovc6xzrkgzq3PhM6/zrnOvM6/IM6zzrnOsSDPgc+FzrjOvM6vz4POtc65z4JcbiIKKyIgzrHOtM+Nzr3Osc+Ezrcgzrcgz4HPjc64zrzOuc+DzrcgKM+Ez4nPgc65zr3OriDOus6xz4TOrM+Dz4TOsc+DzrcgYCUuMjUwcycpIgorCisjOiBzcmMvY29uZmlndXJlLmM6Mjk0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBkZXBlbmRlbmN5IHByb2JsZW1zIHByZXZlbnQgY29uZmlndXJhdGlvbiBvZiAlczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6IM+Az4HOv86yzrvOrs68zrHPhM6xIM61zr7Osc+Bz4TOrs+DzrXPic69IM61zrzPgM6/zrTOr862zr/Phc69IM+Ezrcgz4HPjc64zrzOuc+Dzrcgz4TOv8+FICVzOlxuIgorIiVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6Mjk3Cittc2dpZCAiZGVwZW5kZW5jeSBwcm9ibGVtcyAtIGxlYXZpbmcgdW5jb25maWd1cmVkIgorbXNnc3RyICLPgM+Bzr/Oss67zq7OvM6xz4TOsSDOtc6+zqzPgc+EzrfPg863z4IgLSDOsc+Gzq7Ovc61z4TOsc65IM68zrcgz4HPhc64zrzOuc+DzrzOrc69zr8iCisKKyM6IHNyYy9jb25maWd1cmUuYzozMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6ICVzOiBkZXBlbmRlbmN5IHByb2JsZW1zLCBidXQgY29uZmlndXJpbmcgYW55d2F5IGFzIHlvdSByZXF1ZXN0ZWQ6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiAlczogz4DPgc6/zrLOu86uzrzOsc+EzrEgzrXOvs6xz4HPhM6uz4POtc+Jzr0gzrHOu867zqwgzrjOsSDOs86vzr3Otc65IM+Bz43OuM68zrnPg863IM+Mz4DPic+CIM62zrfPhM6uz4POsc+EzrU6XG4iCisiJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzozMDkKK21zZ2lkICIiCisiUGFja2FnZSBpcyBpbiBhIHZlcnkgYmFkIGluY29uc2lzdGVudCBzdGF0ZSAtIHlvdSBzaG91bGRcbiIKKyIgcmVpbnN0YWxsIGl0IGJlZm9yZSBhdHRlbXB0aW5nIGNvbmZpZ3VyYXRpb24uIgorbXNnc3RyICIiCisizqTOvyDPgM6xzrrOrc+Ezr8gzrLPgc6vz4POus61z4TOsc65IM+DzrUgz4DOv867z40gzrrOsc66zq4gzrrOsc65IM6xz4PPhc69zrXPgM6uIM66zrHPhM6sz4PPhM6xz4POtyAtIM64zrEgz4DPgc6tz4DOtc65IM69zrEgz4TOvyAiCisizrXPgM6xzr3Otc6zzrrOsc+EzrHPg8+Ezq7Pg861z4TOtSDPgM+BzrnOvSDPgM+Bzr/Ph8+Jz4HOrs+DzrXPhM61IM+Dz4TOtyDPgc+NzrjOvM65z4POriDPhM6/z4UuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MzEyCisjLCBjLWZvcm1hdAorbXNnaWQgIlNldHRpbmcgdXAgJXMgKCVzKSAuLi5cbiIKK21zZ3N0ciAizpPOr869zrXPhM6xzrkgzrXOs866zrHPhM6sz4PPhM6xz4POtyAlcyAoJXMpIC4uLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6Mzk2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IHVuYWJsZSB0byBzdGF0IGNvbmZpZyBmaWxlICclcydcbiIKKyIgKD0gJyVzJyk6ICVzIgorbXNnc3RyICIiCisiZHBrZzogJXM6IM+Az4HOv861zrnOtM6/z4DOv86vzrfPg863IC0gzrHOtM+Nzr3Osc+Ezrcgzrcgc3RhdCDPhM6/z4UgzrHPgc+HzrXOr86/z4Ugz4HPhc64zrzOr8+DzrXPic69IGAlcydcbiIKKyIgKD0gYCVzJyk6ICVzXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo0MDkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogY29uZmlnIGZpbGUgJyVzJyBpcyBhIGNpcmN1bGFyIGxpbmtcbiIKKyIgKD0gJyVzJykiCittc2dzdHIgIiIKKyJkcGtnOiAlczogz4DPgc6/zrXOuc60zr/PgM6/zq/Ot8+DzrcgLSDPhM6/IM6xz4HPh861zq/OvyDPgc+FzrjOvM6vz4POtc+Jzr0gYCVzJyDOtc6vzr3Osc65IM66z4XOus67zrnOus+Mz4IgzrTOtc+DzrzPjM+CXG4iCisiICg9IGAlcycpXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo0MTgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogdW5hYmxlIHRvIHJlYWRsaW5rIGNvbmZmaWxlICclcydcbiIKKyIgKD0gJyVzJyk6ICVzIgorbXNnc3RyICIiCisiZHBrZzogJXM6IM+Az4HOv861zrnOtM6/z4DOv86vzrfPg863IC0gzrHOtM+Nzr3Osc+EzrcgzrcgzrHOvc6szrPOvc+Jz4POtyDPhM6/z4UgYCVzJ1xuIgorIiAoPSBgJXMnKTogJXNcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQ0NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBjb25mZmlsZSAnJS4yNTBzJyByZXNvbHZlcyB0byBkZWdlbmVyYXRlIGZpbGVuYW1lXG4iCisiICgnJXMnIGlzIGEgc3ltbGluayB0byAnJXMnKSIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiDPgM+Bzr/Otc65zrTOv8+Azr/Or863z4POtyAtIM+Ezr8gzrHPgc+HzrXOr86/IM+Bz4XOuM68zq/Pg861z4nOvSBgJS4yNTBzJyDOus6xz4TOsc67zq7Os861zrkgz4POtSAiCisizrXOus+Gz4XOu865z4POvM6tzr3OvyDPjM69zr/OvM6xXG4iCisiICjPhM6/IGAlcycgzrXOr869zrHOuSDOtM61z4POvM+Mz4Igz4PPhM6/IGAlcycpXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo0NjAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBjb25mZmlsZSAnJS4yNTBzJyBpcyBub3QgYSBwbGFpbiBmaWxlIG9yIHN5bWxpbmsgKD0gJyVzJykiCittc2dzdHIgIiIKKyJkcGtnOiAlczogz4DPgc6/zrXOuc60zr/PgM6/zq/Ot8+DzrcgLSDPhM6/IM6xz4HPh861zq/OvyDPgc+FzrjOvM6vz4POtc+Jzr0gYCUuMjUwcycgzrTOtc69IM61zq/Ovc6xzrkgzrrOv865zr3PjCAiCisizrHPgc+HzrXOr86/IM6uIM60zrXPg868z4zPgiAoPSBgJXMnKVxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDg2Cittc2dpZCAibWQ1aGFzaCIKK21zZ3N0ciAibWQ1aGFzaCIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQ5MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IHVuYWJsZSB0byBvcGVuIGNvbmZmaWxlICVzIGZvciBoYXNoOiAlcyIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiDPgM+Bzr/Otc65zrTOv8+Azr/Or863z4POtyAtIM6xzrTPjc69zrHPhM63IM+Ezr8gzqzOvc6/zrnOs868zrEgz4TOv8+FIM6xz4HPh861zq/Ov8+FIM+Bz4XOuM68zq/Pg861z4nOvSAlcyDOs865zrEgIgorImhhc2g6ICVzXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo1MjIgc3JjL2NvbmZpZ3VyZS5jOjUyNgorbXNnaWQgImNvbmZmaWxlIGRpZmZlcmVuY2UgdmlzdWFsaXplciIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NTQzCittc2dpZCAiVHlwZSBgZXhpdCcgd2hlbiB5b3UncmUgZG9uZS5cbiIKK21zZ3N0ciAizqDOu863zrrPhM+Bzr/Ou86/zrPOrs+Dz4TOtSBgZXhpdCcgz4zPhM6xzr0gz4TOtc67zrXOuc+Oz4POtc+EzrUuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo1NTIgc3JjL2NvbmZpZ3VyZS5jOjU1NgorbXNnaWQgImNvbmZmaWxlIHNoZWxsIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIkNvbmZpZ3VyYXRpb24gZmlsZSBgJXMnIgorbXNnc3RyICIiCisiXG4iCisizpHPgc+HzrXOr86/IM+Bz4XOuM68zq/Pg861z4nOvSBgJXMnIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjA0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAoYWN0dWFsbHkgYCVzJykiCittc2dzdHIgIiAoz4PPhM63zr0gz4DPgc6xzrPOvM6xz4TOuc66z4zPhM63z4TOsSBgJXMnKSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYwOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiID09PiBGaWxlIG9uIHN5c3RlbSBjcmVhdGVkIGJ5IHlvdSBvciBieSBhIHNjcmlwdC5cbiIKKyIgPT0+IEZpbGUgYWxzbyBpbiBwYWNrYWdlIHByb3ZpZGVkIGJ5IHBhY2thZ2UgbWFpbnRhaW5lci5cbiIKK21zZ3N0ciAiIgorIlxuIgorIiA9PT4gzqTOvyDOsc+Bz4fOtc6vzr8gz4PPhM6/IM+Dz43Pg8+EzrfOvM6xIM60zrfOvM65zr/Phc+BzrPOrs64zrfOus61IM6xz4DPjCDOtc+DzqzPgiDOriDOsc+Az4wgz4POtc69zqzPgc65zr8uXG4iCisiID09PiDOpM6/IM6xz4HPh861zq/OvyDOtc+Azq/Pg863z4Igz4PPhM6/IM+AzrHOus6tz4TOvyDPh86/z4HOt86zzq7OuM63zrrOtSDOsc+Az4wgz4TOvyDPg8+Fzr3PhM63z4HOt8+Ezq4gz4DOsc66zq3PhM6/z4UuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiAgICAgTm90IG1vZGlmaWVkIHNpbmNlIGluc3RhbGxhdGlvbi5cbiIKK21zZ3N0ciAiIgorIlxuIgorIiAgICAgzpTOtc69IM+Ez4HOv8+Azr/PgM6/zrnOrs64zrfOus61IM68zrXPhM6sIM+EzrfOvSDOtc6zzrrOsc+EzqzPg8+EzrHPg863LlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjE1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgPT0+IE1vZGlmaWVkIChieSB5b3Ugb3IgYnkgYSBzY3JpcHQpIHNpbmNlIGluc3RhbGxhdGlvbi5cbiIKK21zZ3N0ciAiIgorIlxuIgorIiA9PT4gzqTPgc6/z4DOv8+Azr/Ouc6uzrjOt866zrUgKM6xz4DPjCDOtc+DzqzPgiDOriDOsc+Az4wgz4POtc69zqzPgc65zr8pIM68zrXPhM6sIM+EzrfOvSDOtc6zzrrOsc+EzqzPg8+EzrHPg863LlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjE2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgPT0+IERlbGV0ZWQgKGJ5IHlvdSBvciBieSBhIHNjcmlwdCkgc2luY2UgaW5zdGFsbGF0aW9uLlxuIgorbXNnc3RyICIiCisiXG4iCisiID09PiDOlM65zrHOs8+BzqzPhs63zrrOtSAozrHPgM+MIM61z4POrM+CIM6uIM6xz4DPjCDOus6sz4DOv865zr8gz4POtc69zqzPgc65zr8pIM68zrXPhM6sIM+EzrfOvSDOtc6zzrrOsc+EzqzPg8+EzrHPg863LlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjE5CisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gUGFja2FnZSBkaXN0cmlidXRvciBoYXMgc2hpcHBlZCBhbiB1cGRhdGVkIHZlcnNpb24uXG4iCittc2dzdHIgIiIKKyIgPT0+IM6fIM60zrnOsc69zr/OvM6tzrHPgiDPhM6/z4Ugz4DOsc66zq3PhM6/z4Ugzq3Ph861zrkgzrrPhc66zrvOv8+Gzr/Pgc6uz4POtc65IM68zrnOsSDOsc69zrHOvc61z4nOvM6tzr3OtyDOrc66zrTOv8+DzrcuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAgICBWZXJzaW9uIGluIHBhY2thZ2UgaXMgdGhlIHNhbWUgYXMgYXQgbGFzdCBpbnN0YWxsYXRpb24uXG4iCittc2dzdHIgIiIKKyIgICAgIM6XIM6tzrrOtM6/z4POtyDPg8+Ezr8gz4DOsc66zq3PhM6/IM61zq/Ovc6xzrkgzrcgzq/OtM65zrEgzrzOtSDPhM63z4Igz4TOtc67zrXPhc+EzrHOr86xz4IgzrXOs866zrHPhM6sz4PPhM6xz4POt8+CLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjI4CisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gVXNpbmcgbmV3IGZpbGUgYXMgeW91IHJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiID09PiDOk86vzr3Otc+EzrHOuSDPh8+Bzq7Pg863IM69zq3Ov8+FIM6xz4HPh861zq/Ov8+FIM+Mz4DPic+CIM62zrfPhM6uz4POsc+EzrUuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBVc2luZyBjdXJyZW50IG9sZCBmaWxlIGFzIHlvdSByZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiA9PT4gzpPOr869zrXPhM6xzrkgz4fPgc6uz4POtyDPhM6/z4Ugz4TPic+BzrnOvc6/z40gz4DOsc67zrnOv8+NIM6xz4HPh861zq/Ov8+FIM+Mz4DPic+CIM62zrfPhM6uz4POsc+EzrUuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBLZWVwaW5nIG9sZCBjb25maWcgZmlsZSBhcyBkZWZhdWx0LlxuIgorbXNnc3RyICIgPT0+IM6UzrnOsc+Ezq7Pgc63z4POtyDPgM6xzrvOuc6/z40gzrHPgc+HzrXOr86/z4Ugz4HPhc64zrzOr8+DzrXPic69IM+Jz4Igz4DPgc6/zrXPgM65zrvOv86zzq4uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBVc2luZyBuZXcgY29uZmlnIGZpbGUgYXMgZGVmYXVsdC5cbiIKK21zZ3N0ciAiID09PiDOp8+Bzq7Pg863IM+Ezr/PhSDOvc6tzr/PhSDOsc+Bz4fOtc6vzr/PhSDPgc+FzrjOvM6vz4POtc+Jzr0gz4nPgiDPgM+Bzr/Otc+AzrnOu86/zrPOri5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY1MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIiAgIFdoYXQgd291bGQgeW91IGxpa2UgdG8gZG8gYWJvdXQgaXQgPyAgWW91ciBvcHRpb25zIGFyZTpcbiIKKyIgICAgWSBvciBJICA6IGluc3RhbGwgdGhlIHBhY2thZ2UgbWFpbnRhaW5lcidzIHZlcnNpb25cbiIKKyIgICAgTiBvciBPICA6IGtlZXAgeW91ciBjdXJyZW50bHktaW5zdGFsbGVkIHZlcnNpb25cbiIKKyIgICAgICBEICAgICA6IHNob3cgdGhlIGRpZmZlcmVuY2VzIGJldHdlZW4gdGhlIHZlcnNpb25zXG4iCisiICAgICAgWiAgICAgOiBzdGFydCBhIHNoZWxsIHRvIGV4YW1pbmUgdGhlIHNpdHVhdGlvblxuIgorbXNnc3RyICIiCisiICAgzqTOuSDOuM6xIM64zq3Ou86xz4TOtSDOvc6xIM6zzq/Ovc61zrk7IM6fzrkgzrXPgM65zrvOv86zzq3PgiDPg86xz4IgzrXOr869zrHOuTpcbiIKKyIgICAgWSDOriBJICA6IM61zrPOus6xz4TOrM+Dz4TOsc+Dzrcgz4TOv8+FIM+AzrHOus6tz4TOv8+FIM6tzrrOtM6/z4POt8+CIM+Dz4XOvc+EzrfPgc63z4TOrlxuIgorIiAgICBOIM6uIE8gIDogzrrPgc6xz4TOrs+Dz4TOtSDPhM63zr0gz4DPgc6/z4Igz4TOvyDPgM6xz4HPjM69IM61zrPOus6xz4TOtc+Dz4TOt868zq3Ovc63IM6tzrrOtM6/z4POt1xuIgorIiAgICAgIEQgICAgIDogzrXOvM+GzqzOvc65z4POtyDPhM+Jzr0gzrTOuc6xz4bOv8+Bz47OvSDOvM61z4TOsc6+z40gz4TPic69IM61zrrOtM+Mz4POtc+Jzr1cbiIKKyIgICAgICBaICAgICA6IM63IM60zrnOtc+BzrPOsc+Dzq/OsSDOtc6+zq3PhM6xz4POt8+CIM+EzrfPgiDOus6xz4TOrM+Dz4TOsc+DzrfPgiDOvc6xIM+EzrXOuM61zq8gz4PPhM6/IM+AzrHPgc6xz4POus6uzr3Ouc6/IFxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjU5CisjLCBjLWZvcm1hdAorbXNnaWQgIiBUaGUgZGVmYXVsdCBhY3Rpb24gaXMgdG8ga2VlcCB5b3VyIGN1cnJlbnQgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIM6XIM+Az4HOv861z4DOuc67zrXOs868zq3Ovc63IM61zr3Orc+BzrPOtc65zrEgzrXOr869zrHOuSDOvc6xIM66z4HOsc+Ezq7Pg861z4TOtSDPhM63zr0gz4TPic+BzrnOvc6uIM6tzrrOtM6/z4POty5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY2MQorIywgYy1mb3JtYXQKK21zZ2lkICIgVGhlIGRlZmF1bHQgYWN0aW9uIGlzIHRvIGluc3RhbGwgdGhlIG5ldyB2ZXJzaW9uLlxuIgorbXNnc3RyICIgzpcgz4DPgc6/zrXPgM65zrvOtc6zzrzOrc69zrcgzrXOvc6tz4HOs861zrnOsSDOtc6vzr3Osc65IM69zrEgzrXOs866zrHPhM6xz4PPhM6xzrjOtc6vIM63IM69zq3OsSDOrc66zrTOv8+DzrcuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NjYKK21zZ2lkICJbZGVmYXVsdD1OXSIKK21zZ3N0ciAiW8+Az4HOv861z4DOuc67zr/Os86uPc6fXSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY2NworbXNnaWQgIltkZWZhdWx0PVldIgorbXNnc3RyICJbz4DPgc6/zrXPgM65zrvOv86zzq49zp1dIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjY4Cittc2dpZCAiW25vIGRlZmF1bHRdIgorbXNnc3RyICJbzrrOsc68zq/OsSDPgM+Bzr/Otc+AzrnOu86/zrPOrl0iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NzEKK21zZ2lkICJlcnJvciB3cml0aW5nIHRvIHN0ZGVyciwgZGlzY292ZXJlZCBiZWZvcmUgY29uZmZpbGUgcHJvbXB0IgorbXNnc3RyICIiCisiz4PPhs6szrvOvM6xIM66zrHPhM6sIM+EzrfOvSDOtc6zzrPPgc6xz4bOriDPg8+EzrfOvSBzdGRlcnIsIM6xzr3Ouc+Hzr3Otc+NzrjOt866zrUgz4DPgc65zr0gz4TOt869IM+Az4HOv8+Ez4HOv8+Azq4gzrPOuc6xIM+Ezr8gIgorIs6xz4HPh861zq/OvyDPgc+FzrjOvM6vz4POtc+Jzr0iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2ODAKK21zZ2lkICJyZWFkIGVycm9yIG9uIHN0ZGluIGF0IGNvbmZmaWxlIHByb21wdCIKK21zZ3N0ciAiz4PPhs6szrvOvM6xIM6xzr3OrM6zzr3Pic+DzrfPgiDPhM63z4Igc3RkaW4gzrrOsc+Ezqwgz4TOt869IM+Az4HOv8+Ez4HOv8+Azq4gzrPOuc6xIM+Ezr8gzrHPgc+HzrXOr86/IM+Bz4XOuM68zq/Pg861z4nOvSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY4MQorbXNnaWQgIkVPRiBvbiBzdGRpbiBhdCBjb25mZmlsZSBwcm9tcHQiCittc2dzdHIgIs6kzq3Ou86/z4IgzrHPgc+HzrXOr86/z4Ugz4PPhM63zr0gc3RkaW4gzrrOsc+Ezqwgz4TOt869IM+Az4HOv8+Ez4HOv8+Azq4gzrPOuc6xIM+Ezr8gzrHPgc+HzrXOr86/IM+Bz4XOuM68zq/Pg861z4nOvSIKKworIzogc3JjL2RlcGNvbi5jOjE3NQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBkZXBlbmRzIG9uICVzIgorbXNnc3RyICIlcyDOtc6+zrHPgc+EzqzPhM6xzrkgzrHPgM+MICVzIgorCisjOiBzcmMvZGVwY29uLmM6MTc4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHByZS1kZXBlbmRzIG9uICVzIgorbXNnc3RyICIlcyDPgM+Bzr/Otc6+zrHPgc+EzqzPhM6xzrkgzrHPgM+MICVzIgorCisjOiBzcmMvZGVwY29uLmM6MTgxCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHJlY29tbWVuZHMgJXMiCittc2dzdHIgIiVzIM+Dz4XOvc65z4PPhM6sIM+Ezr8gJXMiCisKKyM6IHNyYy9kZXBjb24uYzoxODQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgc3VnZ2VzdHMgJXMiCittc2dzdHIgIiVzIM+Az4HOv8+EzrXOr869zrXOuSAlcyIKKworIzogc3JjL2RlcGNvbi5jOjE4NworIywgYy1mb3JtYXQKK21zZ2lkICIlcyBicmVha3MgJXMiCittc2dzdHIgIiVzIFwiz4PPgM6szrXOuVwiIM+Ezr8gJXMiCisKKyM6IHNyYy9kZXBjb24uYzoxOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgY29uZmxpY3RzIHdpdGggJXMiCittc2dzdHIgIiVzIM+Dz4XOs866z4HOv8+NzrXPhM6xzrkgzrzOtSAlcyIKKworIzogc3JjL2RlcGNvbi5jOjE5MworIywgYy1mb3JtYXQKK21zZ2lkICIlcyBlbmhhbmNlcyAlcyIKK21zZ3N0ciAiJXMgzrLOtc67z4TOuc+Ozr3Otc65ICVzIgorCisjOiBzcmMvZGVwY29uLmM6Mjk2CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHRvIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIM+Az4HPjM66zrXOuc+EzrHOuSDOvc6xIM6xz4bOsc65z4HOtc64zrXOry5cbiIKKworIzogc3JjL2RlcGNvbi5jOjI5OQorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB0byBiZSBkZWNvbmZpZ3VyZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIM+Az4HPjM66zrXOuc+EzrHOuSDOvc6xIM6xz4DOv8+Bz4HPhc64zrzOuc+Dz4TOtc6vLlxuIgorCisjOiBzcmMvZGVwY29uLmM6MzA0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHRvIGJlIGluc3RhbGxlZCwgYnV0IGlzIHZlcnNpb24gJS4yNTBzLlxuIgorbXNnc3RyICIgICUuMjUwcyDPgM+Bz4zOus61zrnPhM6xzrkgzr3OsSDOtc6zzrrOsc+EzrHPg8+EzrHOuM61zq8sIM6xzrvOu86sIM61zq/Ovc6xzrkgzq3Ous60zr/Pg863ICUuMjUwcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjMxNAorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyBpbnN0YWxsZWQsIGJ1dCBpcyB2ZXJzaW9uICUuMjUwcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgzrXOr869zrHOuSDOtc6zzrrOsc+EzrXPg8+EzrfOvM6tzr3OvywgzrHOu867zqwgzrXOr869zrHOuSDOrc66zrTOv8+DzrcgJS4yNTBzLlxuIgorCisjOiBzcmMvZGVwY29uLmM6MzMzCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHVucGFja2VkLCBidXQgaGFzIG5ldmVyIGJlZW4gY29uZmlndXJlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMgzrXOr869zrHOuSDOsc+Azr/Pg8+FzrzPgM65zrXPg868zq3Ovc6/IM6xzrvOu86sIM60zrXOvSDOrc+HzrXOuSDPgc+FzrjOvM65z4PPhM61zq8uXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdW5wYWNrZWQsIGJ1dCBpcyB2ZXJzaW9uICUuMjUwcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgzrXOr869zrHOuSDOsc+Azr/Pg8+FzrzPgM65zrXPg868zq3Ovc6/IM6xzrvOu86sIM61zq/Ovc6xzrkgzq3Ous60zr/Pg863ICUuMjUwcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjM0MworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBsYXRlc3QgY29uZmlndXJlZCB2ZXJzaW9uIGlzICUuMjUwcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgz4TOtc67zrXPhc+EzrHOr86xIM+Bz4XOuM68zrnPg868zq3Ovc63IM6tzrrOtM6/z4POtyDOtc6vzr3Osc65ICUuMjUwcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjM1MworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyAlcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgzrXOr869zrHOuSAlcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjM4OAorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYnV0IGlzIHRvIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIM+AzrHPgc6tz4fOtc65ICUuMjUwcyDOsc67zrvOrCDPgM+Bz4zOus61zrnPhM6xzrkgzr3OsSDOsc+GzrHOuc+BzrXOuM61zq8uXG4iCisKKyM6IHNyYy9kZXBjb24uYzozOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGJ1dCBpcyB0byBiZSBkZWNvbmZpZ3VyZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIM+AzrHPgc6tz4fOtc65ICUuMjUwcyDOsc67zrvOrCDPgM+Bz4zOus61zrnPhM6xzrkgzr3OsSDOsc+Azr/Pgc+Bz4XOuM68zrnPg8+EzrXOry5cbiIKKworIzogc3JjL2RlcGNvbi5jOjQwMQorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYnV0IGlzICVzLlxuIgorbXNnc3RyICIgICUuMjUwcyDPgM6xz4HOrc+HzrXOuSAlLjI1MHMgzrHOu867zqwgzrXOr869zrHOuSAlcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjQxNQorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIgICUuMjUwcyDOtM61zr0gzq3Ph861zrkgzrXOs866zrHPhM6xz4PPhM6xzrjOtc6vLlxuIgorCisjOiBzcmMvZGVwY29uLmM6NDQzCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzICh2ZXJzaW9uICUuMjUwcykgaXMgdG8gYmUgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIgICUuMjUwcyAozq3Ous60zr/Pg863ICUuMjUwcykgz4DPgc+MzrrOtc65z4TOsc65IM69zrEgzrXOs866zrHPhM6xz4PPhM6xzrjOtc6vLlxuIgorCisjOiBzcmMvZGVwY29uLmM6NDY4CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzICh2ZXJzaW9uICUuMjUwcykgaXMgcHJlc2VudCBhbmQgJXMuXG4iCittc2dzdHIgIiAgJS4yNTBzICjOrc66zrTOv8+DzrcgJS4yNTBzKSDOtc6vzr3Osc65IM+AzrHPgc+Mzr0gzrrOsc65ICVzLlxuIgorCisjOiBzcmMvZGVwY29uLmM6NDk1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBhbmQgaXMgdG8gYmUgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIgICUuMjUwcyDPgM6xz4HOrc+HzrXOuSAlLjI1MHMgzrrOsc65IM61zq/Ovc6xzrkgz4DPgc6/z4IgzrXOs866zrHPhM6sz4PPhM6xz4POty5cbiIKKworIzogc3JjL2RlcGNvbi5jOjUzNworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYW5kIGlzIHByZXNlbnQgYW5kICVzLlxuIgorbXNnc3RyICIgICAlLjI1MHMgz4DOsc+Bzq3Ph861zrkgJS4yNTBzIM66zrHOuSDOtc6vzr3Osc65IM+AzrHPgc+Mzr0gzrrOsc65ICVzLlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTAKKyMsIGZ1enp5CisjfCBtc2dpZCAiVHlwZSBkcGtnLXRyaWdnZXIgLS1oZWxwIGZvciBoZWxwIGFib3V0IHRoaXMgdXRpbGl0eS4iCittc2dpZCAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBkaXZlcnRpbmcgZmlsZXMuIgorbXNnc3RyICIiCisizqDOu863zrrPhM+Bzr/Ou86/zrPOrs+Dz4TOtSBkcGtnLXRyaWdnZXIgLS1oZWxwIM6zzrnOsSDOss6/zq7OuM61zrnOsSDPg8+HzrXPhM65zrrOrCDOvM61IM6xz4XPhM+MIM+Ezr8gzrLOv863zrjOt8+EzrnOus+MICIKKyLPgM+Bz4zOs8+BzrHOvM68zrEuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjYgc3JjL3N0YXRjbWQuYzo1NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuICVzIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkRlYmlhbiAlcyDOrc66zrTOv8+DzrcgJXMuXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo3MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIlxuIgorI3wgIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyN8ICJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLiIKK21zZ2lkICIiCisiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDEwIEd1aWxsZW0gSm92ZXIuXG4iCittc2dzdHIgIiIKKyJcbiIKKyJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo3NSBzcmMvbWFpbi5jOjYzIHNyYy9xdWVyeWNtZC5jOjYwMyBzcmMvc3RhdGNtZC5jOjY1CisjOiBzcmMvdHJpZ2NtZC5jOjU1IGRwa2ctZGViL21haW4uYzo1NyBkcGtnLXNwbGl0L21haW4uYzo1MQorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjg5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvclxuIgorImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LlxuIgorbXNnc3RyICIiCisiXG4iCisizpHPhc+Ez4wgzrXOr869zrHOuSDOtc67zrXPjc64zrXPgc6/IM67zr/Os865z4POvM65zrrPjC4gzpTOtc6vz4TOtSDPhM63zr0gR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2Ugzq3Ous60zr/Pg863IDIgIgorIs6uXG4iCisizrzOtc+EzrHOs861zr3Orc+Dz4TOtc+BzrcgzrPOuc6xIM+Dz4XOvc64zq7Ous61z4IgzrHOvc+EzrnOs8+BzrHPhs6uz4IuIM6UzrXOvSDPhc+AzqzPgc+HzrXOuSDOms6RzpzOmc6RIM61zrPOs8+NzrfPg863LlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6ODcgc3JjL21haW4uYzo4MSBzcmMvcXVlcnljbWQuYzo2MTUgc3JjL3N0YXRjbWQuYzo3NworIzogZHBrZy1kZWIvbWFpbi5jOjY5IGRwa2ctc3BsaXQvbWFpbi5jOjYzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo5NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIDxjb21tYW5kPlxuIgorIlxuIgorbXNnc3RyICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIDxjb21tYW5kPlxuIgorIlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6OTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgWy0tYWRkXSA8ZmlsZT4gICAgICAgICAgIGFkZCBhIGRpdmVyc2lvbi5cbiIKKyIgIC0tcmVtb3ZlIDxmaWxlPiAgICAgICAgICByZW1vdmUgdGhlIGRpdmVyc2lvbi5cbiIKKyIgIC0tbGlzdCBbPGdsb2ItcGF0dGVybj5dICBzaG93IGZpbGUgZGl2ZXJzaW9ucy5cbiIKKyIgIC0tbGlzdHBhY2thZ2UgPGZpbGU+ICAgICBzaG93IHdoYXQgcGFja2FnZSBkaXZlcnRzIHRoZSBmaWxlLlxuIgorIiAgLS10cnVlbmFtZSA8ZmlsZT4gICAgICAgIHJldHVybiB0aGUgZGl2ZXJ0ZWQgZmlsZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MTAwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tcGFja2FnZSA8cGFja2FnZT4gICAgICBuYW1lIG9mIHRoZSBwYWNrYWdlIHdob3NlIGNvcHkgb2YgPGZpbGU+IHdpbGwgIgorIm5vdFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmUgZGl2ZXJ0ZWQuXG4iCisiICAtLWxvY2FsICAgICAgICAgICAgICAgICAgYWxsIHBhY2thZ2VzJyB2ZXJzaW9ucyBhcmUgZGl2ZXJ0ZWQuXG4iCisiICAtLWRpdmVydCA8ZGl2ZXJ0LXRvPiAgICAgdGhlIG5hbWUgdXNlZCBieSBvdGhlciBwYWNrYWdlcycgdmVyc2lvbnMuXG4iCisiICAtLXJlbmFtZSAgICAgICAgICAgICAgICAgYWN0dWFsbHkgbW92ZSB0aGUgZmlsZSBhc2lkZSAob3IgYmFjaykuXG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgc2V0IHRoZSBkaXJlY3Rvcnkgd2l0aCB0aGUgZGl2ZXJzaW9ucyBmaWxlLlxuIgorIiAgLS10ZXN0ICAgICAgICAgICAgICAgICAgIGRvbid0IGRvIGFueXRoaW5nLCBqdXN0IGRlbW9uc3RyYXRlLlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHF1aWV0IG9wZXJhdGlvbiwgbWluaW1hbCBvdXRwdXQuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorbXNnc3RyICIiCisizqfPgc6uz4POtzogJXMgWzxvcHRpb24+IC4uLl0gPGNvbW1hbmQ+XG4iCisiXG4iCisizpXOvc+Ezr/Ou86tz4I6XG4iCisiICBbLS1hZGRdIDxmaWxlPiAgICAgICAgICAgz4DPgc6/z4POuM6uzrrOtyDOtc66z4TPgc6/z4DOrs+CLlxuIgorIiAgLS1yZW1vdmUgPGZpbGU+ICAgICAgICAgIM6xz4bOsc6vz4HOtc+DzrcgzrXOus+Ez4HOv8+Azq7Pgi5cbiIKKyIgIC0tbGlzdCBbPGdsb2ItcGF0dGVybj5dICDOtc68z4bOrM69zrnPg863IM61zrrPhM+Bzr/PgM+Ozr0gzrHPgc+HzrXOr86/z4UuXG4iCisiICAtLXRydWVuYW1lIDxmaWxlPiAgICAgICAgzrXPgM65z4PPhM+Bzr/Phs6uIM+Ezr/PhSDOtc66z4TPgc6xz4DOrc69z4TOv8+CIM6xz4HPh861zq/Ov8+FLlxuIgorIlxuIgorIk9wdGlvbnM6XG4iCisiICAtLXBhY2thZ2UgPHBhY2thZ2U+ICAgICAgz4zOvc6/zrzOsSDPhM6/z4Ugz4DOsc66zq3PhM6/z4Ugz4TOv8+FIM6/z4DOv86vzr/PhSDPhM6/IM6xzr3PhM6vzrPPgc6xz4bOvyDPhM6/z4UgIgorIs6xz4HPh861zq/Ov8+FIDxmaWxlPiDOtM61zr0gzrjOsVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgzrXOus+Ez4HOsc+AzrXOry5cbiIKKyIgIC0tbG9jYWwgICAgICAgICAgICAgICAgICDPjM67zrXPgiDOv865IM61zrrOtM+Mz4POtc65z4Igz4TPic69IM+AzrHOus6tz4TPic69IM6tz4fOv8+Fzr0gzrXOus+Ez4HOsc+AzrXOry5cbiIKKyIgIC0tZGl2ZXJ0IDxkaXZlcnQtdG8+ICAgICDPhM6/IM+Mzr3Ov868zrEgz4DOv8+FIM+Hz4HOt8+DzrnOvM6/z4DOv865zrXOr8+EzrHOuSDOsc+Az4wgzqzOu867zrXPgiDOtc66zrTPjM+DzrXOuc+CICIKKyLPhM+Jzr0gz4DOsc66zq3PhM+Jzr0uXG4iCisiICAtLXJlbmFtZSAgICAgICAgICAgICAgICAgz4PPhM63zr0gz4DPgc6xzrPOvM6xz4TOuc66z4zPhM63z4TOsSDOvM61z4TOsc66zq/Ovc63z4POtSDPhM6/IM6xz4HPh861zq/OvyDPg8+EzrfOvSAiCisizqzOus+BzrcgKM6uIM+Azq/Pg8+JKS5cbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICDOus6xzrjOv8+BzrnPg868z4zPgiDPhM6/z4UgzrrOsc+EzrHOu8+MzrPOv8+FIM68zrUgz4TOvyDOsc+Bz4fOtc6vzr8gz4TPic69ICIKKyLOtc66z4TPgc6/z4DPjs69LlxuIgorIiAgLS10ZXN0ICAgICAgICAgICAgICAgICAgIM68zrfOvSDOus6szr3Otc65z4Igz4TOr8+Azr/PhM6xLCDOsc+AzrvOriDOtc+Azq/OtM61zrnOvs63LlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIM6xzrjPjM+Bz4XOss63IM67zrXOuc+Ezr/Phc+BzrPOr86xLCDOtc67zqzPh865z4PPhM63IM+AzrHPgc6xzrPPjs68zrXOvc63IM6tzr7Ov860zr/Pgi5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICDOtc68z4bOrM69zrnPg863IM+Ezr/PhSDPgM6xz4HPjM69z4TOv8+CIM68zrfOvc+NzrzOsc+Ezr/PgiDOss6/zq7OuM61zrnOsc+CLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIM61zrzPhs6szr3Ouc+Dzrcgz4TOt8+CIM6tzrrOtM6/z4POt8+CLlxuIgorIlxuIgorIs6jz4TOt869IM+Az4HOv8+DzrjOrs66zrcsIM63IM+Az4HOv861z4DOuc67zr/Os86uIM61zq/Ovc6xzrkgLS1sb2NhbCDOus6xzrkgLS1kaXZlcnQgPG9yaWdpbmFsPi5kaXN0cmliLlxuIgorIs6jz4TOt869IM6xz4bOsc6vz4HOtc+DzrcsIM+EzrEgLS1wYWNrYWdlIM6uIC0tbG9jYWwgzrrOsc65IC0tZGl2ZXJ0IM64zrEgz4DPgc6tz4DOtc65IM6xzr0gzrXOr869zrHOuSAiCisiz4DPgc6/z4POtM65zr/Pgc65z4POvM6tzr3OsSDOvc6xIM+EzrHOuc+BzrnOrM62zr/Phc69LlxuIgorIs6kzrEgz4POtc69zqzPgc65zrEgcHJlaW5zdC9wb3N0cm0gz4TPic69IM+AzrHOus6tz4TPic69IM64zrEgz4DPgc6tz4DOtc65IM+AzqzOvc+EzrEgzr3OsSDPgM+Bzr/Pg860zrnOv8+Bzq/Ots6/z4XOvSDPhM6xIC0tIgorInBhY2thZ2UgzrrOsc65IC0tZGl2ZXJ0LlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJXaGVuIGFkZGluZywgZGVmYXVsdCBpcyAtLWxvY2FsIGFuZCAtLWRpdmVydCA8b3JpZ2luYWw+LmRpc3RyaWIuXG4iCisiV2hlbiByZW1vdmluZywgLS1wYWNrYWdlIG9yIC0tbG9jYWwgYW5kIC0tZGl2ZXJ0IG11c3QgbWF0Y2ggaWYgc3BlY2lmaWVkLlxuIgorIlBhY2thZ2UgcHJlaW5zdC9wb3N0cm0gc2NyaXB0cyBzaG91bGQgYWx3YXlzIHNwZWNpZnkgLS1wYWNrYWdlIGFuZCAtLSIKKyJkaXZlcnQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjE2OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZXJyb3IgY2hlY2tpbmcgYCVzJzogJXMiCittc2dpZCAiZXJyb3IgY2hlY2tpbmcgJyVzJyIKK21zZ3N0ciAiz4PPhs6szrvOvM6xIM66zrHPhM6sIM+Ezr/OvSDOrc67zrXOs8+Hzr8gYCVzJzogJXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInJlbmFtZSBpbnZvbHZlcyBvdmVyd3JpdGluZyBgJXMnIHdpdGhcbiIKKyIgIGRpZmZlcmVudCBmaWxlIGAlcycsIG5vdCBhbGxvd2VkIgorbXNnc3RyICIiCisizrcgzrHOu867zrHOs86uIM6/zr3PjM68zrHPhM6/z4Igz4DOtc+BzrnOu86xzrzOss6szr3Otc65IM+EzrfOvSDPhc+AzrXPgc6zz4HOsc+Gzq4gz4TOv8+FIGAlcycgzrzOtVxuIgorIiAgz4TOvyDOtM65zrHPhs6/z4HOtc+EzrnOus+MIM6xz4HPh861zq/OvyBgJXMnLCDPgM6/z4UgzrTOtc69IM61z4DOuc+Ez4HOrc+AzrXPhM6xzrkiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyMjMgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzNzMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgZmlsZSAnJXMnIgorbXNnc3RyICLOsc60z43Ovc6xz4TOvyDPhM6/IM6szr3Ov865zrPOvM6xIM+Ezr/PhSDOsc+Bz4fOtc6vzr/PhSDPgM63zrPOrs+CIGAlLjI1MHMnIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjI3Cittc2dpZCAiZmlsZSBjb3B5IgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyMzkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImNhbm5vdCBzdGF0IG5ldyBuYW1lIGAlcyc6ICVzIgorbXNnaWQgImNhbm5vdCByZW5hbWUgJyVzJyB0byAnJXMnIgorbXNnc3RyICLOsc60z43Ovc6xz4TOv8+CIM6/IM+Az4HOv8+DzrTOuc6/z4HOuc+DzrzPjM+CIM66zrHPhM6sz4PPhM6xz4POt8+CIM+Ezr/PhSDOvc6tzr/PhSDOv869z4zOvM6xz4TOv8+CIGAlcyc6ICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjUyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJyZW5hbWU6IHJlbW92ZSBkdXBsaWNhdGUgb2xkIGxpbmsgYCVzJzogJXMiCittc2dpZCAicmVuYW1lOiByZW1vdmUgZHVwbGljYXRlIG9sZCBsaW5rICclcyciCittc2dzdHIgIs6xzrvOu86xzrPOriDOv869zr/OvM6xz4POr86xz4I6IM6xz4DOv868zqzOus+Bz4XOvc+Dzrcgz4TOv8+FIM60zrnPgM67zr/PjSDPgM6xzrvOsc65zr/PjSDPg8+Fzr3OtM6tz4POvM6/z4UgYCVzJzogJXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyNjIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byBvcGVuIHNvdXJjZSBmaWxlIGAlLjI1MHMnIgorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgY29waWVkIHNvdXJjZSBmaWxlICclcyciCittc2dzdHIgIs6xzrTPjc69zrHPhM6/IM+Ezr8gzqzOvc6/zrnOs868zrEgz4TOv8+FIM6xz4HPh861zq/Ov8+FIM+AzrfOs86uz4IgYCUuMjUwcyciCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyODQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImxvY2FsIGRpdmVyc2lvbiB0bzogJXNcbiIKK21zZ2lkICJsb2NhbCBkaXZlcnNpb24gb2YgJXMiCittc2dzdHIgIs+Ezr/PgM65zrrOriDOtc66z4TPgc6/z4DOriDPg861OiAlc1xuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mjg2CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJsb2NhbCBkaXZlcnNpb24gdG86ICVzXG4iCittc2dpZCAibG9jYWwgZGl2ZXJzaW9uIG9mICVzIHRvICVzIgorbXNnc3RyICLPhM6/z4DOuc66zq4gzrXOus+Ez4HOv8+Azq4gz4POtTogJXNcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjI5MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZGl2ZXJzaW9uIGJ5ICVzIHRvOiAlc1xuIgorbXNnaWQgImRpdmVyc2lvbiBvZiAlcyBieSAlcyIKK21zZ3N0ciAizrXOus+Ez4HOv8+Azq4gzrHPgM+MICVzIM+DzrU6ICVzXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyOTMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImRpdmVyc2lvbiBieSAlcyB0bzogJXNcbiIKK21zZ2lkICJkaXZlcnNpb24gb2YgJXMgdG8gJXMgYnkgJXMiCittc2dzdHIgIs61zrrPhM+Bzr/PgM6uIM6xz4DPjCAlcyDPg861OiAlc1xuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MzA5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJsb2NhbCBkaXZlcnNpb24gdG86ICVzXG4iCittc2dpZCAiYW55IGRpdmVyc2lvbiBvZiAlcyIKK21zZ3N0ciAiz4TOv8+AzrnOus6uIM61zrrPhM+Bzr/PgM6uIM+DzrU6ICVzXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozMTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImRpdmVyc2lvbiBieSAlcyB0bzogJXNcbiIKK21zZ2lkICJhbnkgZGl2ZXJzaW9uIG9mICVzIHRvICVzIgorbXNnc3RyICLOtc66z4TPgc6/z4DOriDOsc+Az4wgJXMgz4POtTogJXNcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjM1NworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiY2Fubm90IG9wZW4gR1BMIGZpbGUiCittc2dpZCAiY2Fubm90IGNyZWF0ZSBuZXcgJXMgZmlsZSIKK21zZ3N0ciAizrHOtM+Fzr3Osc68zq/OsSDOsc69zr/Or86zzrzOsc+Ezr/PgiDOsc+Bz4fOtc6vzr/PhSBHUEwiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozNzUgc3JjL3N0YXRjbWQuYzoyMTUgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE0MDQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCBmaWxlICclcyciCittc2dzdHIgIs6xzrTPjc69zrHPhM63IM63IM61zrrOus6tzr3Pic+Dzrcgz4PPhM6/IHZuc3ByaW50ZiIKKworIzogc3JjL2RpdmVydGNtZC5jOjM4MgorIywgZnV6enkKKyN8IG1zZ2lkICJyZW1vdmUgb2xkIGRpdmVyc2lvbnMtb2xkOiAlcyIKK21zZ2lkICJlcnJvciByZW1vdmluZyBvbGQgZGl2ZXJzaW9ucy1vbGQiCittc2dzdHIgIs6xz4DOv868zqzOus+Bz4XOvc+DzrcgIM+AzrHOu865z47OvSBkaXZlcnNpb25zLW9sZDogJXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozODQKKyMsIGZ1enp5Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgbmV3IGRpdmVyc2lvbnMtb2xkIgorbXNnc3RyICLPg8+GzqzOu868zrEgz4PPhM63IM60zrfOvM65zr/Phc+BzrPOr86xIM69zq3Ov8+FIM6xz4HPh861zq/Ov8+FIHN0YXRvdmVycmlkZS1vbGQ6ICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mzg2CisjLCBmdXp6eQorbXNnaWQgImVycm9yIGluc3RhbGxpbmcgbmV3IGRpdmVyc2lvbnMiCittc2dzdHIgIs+Dz4bOrM67zrzOsSDPg8+EzrfOvSDOtc6zzrrOsc+EzqzPg8+EzrHPg863IM+Ezr/PhSDOvc6tzr/PhSBzdGF0b3ZlcnJpZGU6ICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDA2IHNyYy9kaXZlcnRjbWQuYzo1MDMgc3JjL2RpdmVydGNtZC5jOjYxMAorIzogc3JjL2RpdmVydGNtZC5jOjYzMCBzcmMvc3RhdGNtZC5jOjI5MAorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGEgc2luZ2xlIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIM+Hz4HOtc65zqzOts61z4TOsc65IM68z4zOvc6/IM6tzr3OsSDPjM+BzrnPg868zrEiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MDkgc3JjL2RpdmVydGNtZC5jOjQzMAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlbmFtZSBcIiVzXCIgaXMgbm90IGFic29sdXRlIgorbXNnc3RyICLPhM6/IM+Mzr3Ov868zrEgzrHPgc+HzrXOr86/z4UgXCIlc1wiIM60zrXOvSDOtc6vzr3Osc65IM6xz4DPjM67z4XPhM6/IgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDExIHNyYy9zdGF0Y21kLmM6MjQ5Cittc2dpZCAiZmlsZSBtYXkgbm90IGNvbnRhaW4gbmV3bGluZXMiCittc2dzdHIgIs+Ezr8gzrHPgc+HzrXOr86/IM60zrXOvSDOuM6xIM+Az4HOrc+AzrXOuSDOvc6xIM+AzrXPgc65zq3Ph861zrkgzrrOsc65zr3Ov8+Nz4HOuc61z4IgzrPPgc6xzrzOvM6tz4IiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MTgKK21zZ2lkICJDYW5ub3QgZGl2ZXJ0IGRpcmVjdG9yaWVzIgorbXNnc3RyICLOsc60z43Ovc6xz4TOtyDOtyDOtc66z4TPgc6/z4DOriDPhM+Jzr0gzrrOsc+EzrHOu8+MzrPPic69IgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDMzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgZGl2ZXJ0IGZpbGUgJyVzJyB0byBpdHNlbGYiCittc2dzdHIgIs6xzrTPjc69zrHPhM63IM63IM61zrrPhM+Bzr/PgM6uIM+Ez4nOvSDOus6xz4TOsc67z4zOs8+Jzr0iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0NTMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIkxlYXZpbmcgYCVzJyIKK21zZ2lkICJMZWF2aW5nICclcydcbiIKK21zZ3N0ciAizpHPhs6uzr3PiSDPhM6/IGAlcyciCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBjbGFzaGVzIHdpdGggYCVzJyIKK21zZ3N0ciAiYCVzJyDPg8+FzrPOus+Bzr/Pjc61z4TOsc65IM68zrUgYCVzJyIKKworIzogc3JjL2RpdmVydGNtZC5jOjQ4MQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiQWRkaW5nIGAlcyciCittc2dpZCAiQWRkaW5nICclcydcbiIKK21zZ3N0ciAizqDPgc6/z4POuM6uzrrOtyDPhM6/z4UgYCVzJyIKKworIzogc3JjL2RpdmVydGNtZC5jOjUxMAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiTm8gZGl2ZXJzaW9uIGAlcycsIG5vbmUgcmVtb3ZlZCIKK21zZ2lkICJObyBkaXZlcnNpb24gJyVzJywgbm9uZSByZW1vdmVkLlxuIgorbXNnc3RyICLOms6xzrzOvM6vzrEgzrXOus+Ez4HOv8+Azq4gz4TOv8+FIGAlcycsIM66zrHOvc6tzr3OsSDOtM61zr0gzrHPgM6/zrzOsc66z4HPjc69zrjOt866zrUiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm1pc21hdGNoIG9uIGRpdmVydC10b1xuIgorIiAgd2hlbiByZW1vdmluZyBgJXMnXG4iCisiICBmb3VuZCBgJXMnIgorbXNnc3RyICIiCisizrHPg8+FzrzPhs+Jzr3Or86xIM66zrHPhM6sIM+Ezr8gZGl2ZXJ0LXRvXG4iCisiICDOsc+Azr/OvM6xzrrPgc+Nzr3Ov869z4TOsc+CIM+Ezr8gYCVzJ1xuIgorIiAgzrLPgc6tzrjOt866zrUgz4TOv2AlcyciCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm1pc21hdGNoIG9uIHBhY2thZ2VcbiIKKyIgIHdoZW4gcmVtb3ZpbmcgYCVzJ1xuIgorIiAgZm91bmQgYCVzJyIKK21zZ3N0ciAiIgorIs6xz4PPhc68z4bPic69zq/OsSDPg8+Ezr8gz4DOsc66zq3PhM6/XG4iCisiICDOsc+Azr/OvM6xzrrPgc+Nzr3Ov869z4TOsc+CIM+Ezr8gYCVzJ1xuIgorIiAgzrLPgc6tzrjOt866zrUgz4TOvyBgJXMnIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTM5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJSZW1vdmluZyBgJXMnIgorbXNnaWQgIlJlbW92aW5nICclcydcbiIKK21zZ3N0ciAizpHPhs6xzq/Pgc61z4POtyDPhM6/z4UgYCVzJyIKKworIzogc3JjL2RpdmVydGNtZC5jOjY1NworbXNnaWQgInBhY2thZ2UgbWF5IG5vdCBjb250YWluIG5ld2xpbmVzIgorbXNnc3RyICLPhM6/IM+AzrHOus6tz4TOvyDOtM61zr0gzrjOsSDPgM+Bzq3PgM61zrkgzr3OsSDPgM61z4HOuc6tz4fOtc65IG5ld2xpbmVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjY2Cittc2dpZCAiZGl2ZXJ0LXRvIG1heSBub3QgY29udGFpbiBuZXdsaW5lcyIKK21zZ3N0ciAiZGl2ZXJ0LXRvIM60zrXOvSDOuM6xIM+Az4HOrc+AzrXOuSDOvc6xIM+AzrXPgc65zq3Ph861zrkgzrrOsc65zr3Ov8+Nz4HOuc61z4IgzrPPgc6xzrzOvM6tz4IiCisKKyM6IHNyYy9kaXZlcnRkYi5jOjY0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gZGl2ZXJzaW9ucyBmaWxlIgorbXNnc3RyICLOsc+Azr/PhM+Fz4fOr86xIM66zrHPhM6sIM+Ezr8gzqzOvc6/zrnOs868zrEgz4TOv8+FIM6xz4HPh861zq/Ov8+FIGRpdmVyc2lvbnMiCisKKyM6IHNyYy9kaXZlcnRkYi5jOjcxCittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IHByZXZpb3VzIGRpdmVyc2lvbnMgZmlsZSIKK21zZ3N0ciAizrHPgM6/z4TPhc+Hzq/OsSDOus6xz4TOrCDPhM63zr0gzrXOus+Ezq3Ou861z4POtyDPhM63z4IgZnN0YXQgz4PPhM6/IM+Az4HOv863zrPOv8+NzrzOtc69zr8gzrHPgc+HzrXOr86/IGRpdmVyc2lvbnMiCisKKyM6IHNyYy9kaXZlcnRkYi5jOjczCittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGRpdmVyc2lvbnMgZmlsZSIKK21zZ3N0ciAizrHPgM6/z4TPhc+Hzq/OsSDOus6xz4TOrCDPhM63zr0gzrXOus+Ezq3Ou861z4POtyDPhM63z4IgZnN0YXQgz4PPhM6/IM6xz4HPh861zq/OvyBkaXZlcnNpb25zIgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzoxMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmxpY3RpbmcgZGl2ZXJzaW9ucyBpbnZvbHZpbmcgYCUuMjUwcycgb3IgYCUuMjUwcyciCittc2dzdHIgIs+Dz4XOs866z4HOv8+Fz4zOvM61zr3Otc+CIM6xz4DOv866zrvOr8+DzrXOuc+CIM6xzr3OrM68zrXPg86xIM+DzrUgYCUuMjUwcycgzq4gYCUuMjUwcyciCisKKyM6IHNyYy9lbnF1aXJ5LmM6NzMKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgaW4gYSBtZXNzIGR1ZSB0byBzZXJpb3VzIHByb2JsZW1zIGR1cmluZ1xuIgorImluc3RhbGxhdGlvbi4gIFRoZXkgbXVzdCBiZSByZWluc3RhbGxlZCBmb3IgdGhlbSAoYW5kIGFueSBwYWNrYWdlc1xuIgorInRoYXQgZGVwZW5kIG9uIHRoZW0pIHRvIGZ1bmN0aW9uIHByb3Blcmx5OlxuIgorbXNnc3RyICIiCisizqTOsSDOsc66z4zOu86/z4XOuM6xIM+AzrHOus6tz4TOsSDOtc6vzr3Osc65IM+HzqzOu865zrEgzrvPjM6zz4kgz4POv86yzrHPgc+Ozr0gz4DPgc6/zrLOu863zrzOrM+Ez4nOvSDOus6xz4TOrCDPhM63zr1cbiIKKyLOtc6zzrrOsc+EzqzPg8+EzrHPg863LiDOoM+Bzq3PgM61zrkgzr3OsSDOtc+AzrHOvc61zrPOus6xz4TOsc+Dz4TOsc64zr/Pjc69ICjOus6xzrkgz4zPg86xIM+AzrHOus6tz4TOsVxuIgorIs61zr7Osc+Bz4TPjs69z4TOsc65IM6xz4DPjCDOsc+Fz4TOrCkgzrPOuc6xIM69zrEgzrvOtc65z4TOv8+Fz4HOs86uz4POv8+Fzr0gzrrOsc+EzqzOu867zrfOu86xOlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjgwCittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgaGF2ZSBiZWVuIHVucGFja2VkIGJ1dCBub3QgeWV0IGNvbmZpZ3VyZWQuXG4iCisiVGhleSBtdXN0IGJlIGNvbmZpZ3VyZWQgdXNpbmcgZHBrZyAtLWNvbmZpZ3VyZSBvciB0aGUgY29uZmlndXJlXG4iCisibWVudSBvcHRpb24gaW4gZHNlbGVjdCBmb3IgdGhlbSB0byB3b3JrOlxuIgorbXNnc3RyICIiCisizqTOsSDOsc66z4zOu86/z4XOuM6xIM+AzrHOus6tz4TOsSDOrc+Hzr/Phc69IM6xz4DOv8+Dz4XOvM+AzrnOtc+Dz4TOtc6vIM6xzrvOu86sIM60zrXOvSDOrc+Hzr/Phc69IM+Bz4XOuM68zrnPg8+EzrXOry5cbiIKKyLOk865zrEgzr3OsSDOu861zrnPhM6/z4XPgc6zzq7Pg86/z4XOvSDPgM+Bzq3PgM61zrkgzr3OsSDPgc+FzrjOvM65z4PPhM6/z43OvSDOvM61IM+Ezr8gZHBrZyAtLWNvbmZpZ3VyZVxuIgorIs6uIM68zrUgz4TOt869IM61z4DOuc67zr/Os86uIM68zrXOvc6/z40gzqHPjc64zrzOuc+Dzrcgz4PPhM6/IGRzZWxlY3Q6XG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6ODcKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgb25seSBoYWxmIGNvbmZpZ3VyZWQsIHByb2JhYmx5IGR1ZSB0byBwcm9ibGVtc1xuIgorImNvbmZpZ3VyaW5nIHRoZW0gdGhlIGZpcnN0IHRpbWUuICBUaGUgY29uZmlndXJhdGlvbiBzaG91bGQgYmUgcmV0cmllZCB1c2luZ1xuIgorImRwa2cgLS1jb25maWd1cmUgPHBhY2thZ2U+IG9yIHRoZSBjb25maWd1cmUgbWVudSBvcHRpb24gaW4gZHNlbGVjdDpcbiIKK21zZ3N0ciAiIgorIs6kzrEgzrHOus+MzrvOv8+FzrjOsSDPgM6xzrrOrc+EzrEgzrXOr869zrHOuSDOvM65z4POv8+Bz4XOuM68zrnPg868zq3Ovc6xLCDOu8+MzrPPiSDPgM+Bzr/Oss67zrfOvM6sz4TPic69XG4iCisizrHPgc+HzrnOus6uz4Igz4HPjc64zrzOuc+DzrfPgi4gIM6gz4HOrc+AzrXOuSDOvc6xIM6+zrHOvc6xzrPOr869zrXOuSDPgM+Bzr/Pg8+AzqzOuM61zrnOsSDPgc+NzrjOvM65z4POt8+CIM68zrVcbiIKKyLPhM6/IGRwa2cgLS1jb25maWd1cmUgPM+AzrHOus6tz4TOvz4gzq4gzrzOtSDPhM63zr0gzrXPgM65zrvOv86zzq4gzrzOtc69zr/PjSDPgc+NzrjOvM65z4POtyDPg8+Ezr8gZHNlbGVjdDpcbiIKKworIzogc3JjL2VucXVpcnkuYzo5NAorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBvbmx5IGhhbGYgaW5zdGFsbGVkLCBkdWUgdG8gcHJvYmxlbXMgZHVyaW5nXG4iCisiaW5zdGFsbGF0aW9uLiAgVGhlIGluc3RhbGxhdGlvbiBjYW4gcHJvYmFibHkgYmUgY29tcGxldGVkIGJ5IHJldHJ5aW5nIGl0O1xuIgorInRoZSBwYWNrYWdlcyBjYW4gYmUgcmVtb3ZlZCB1c2luZyBkc2VsZWN0IG9yIGRwa2cgLS1yZW1vdmU6XG4iCittc2dzdHIgIiIKKyLOpM6xIM6xzrrPjM67zr/Phc64zrEgz4DOsc66zq3PhM6xIM61zq/Ovc6xzrkgzrzOuc+Dzr/Otc6zzrrOsc+EzrXPg8+EzrfOvM6tzr3OsSwgzrvPjM6zz4kgz4DPgc6/zrLOu863zrzOrM+Ez4nOvSDPg8+EzrfOvVxuIgorIs6xz4HPh865zrrOriDOtc6zzrrOsc+EzqzPg8+EzrHPg863LiDOlyDOtc6zzrrOsc+EzqzPg8+EzrHPg863IM6vz4PPic+CIM+Dz4XOvM+AzrvOt8+Bz4nOuM61zq8gz4DPgc6/z4PPgM6xzrjPjs69z4TOsc+CIM6+zrHOvc6sLlxuIgorIs6kzrEgz4DOsc66zq3PhM6xIM68z4DOv8+Bzr/Pjc69IM69zrEgzrHPhs6xzrnPgc61zrjOv8+Nzr0gzrzOtSDPhM6/IGRzZWxlY3Qgzq4gZHBrZyAtLXJlbW92ZTpcbiIKKworIzogc3JjL2VucXVpcnkuYzoxMDEKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgYXdhaXRpbmcgcHJvY2Vzc2luZyBvZiB0cmlnZ2VycyB0aGF0IHRoZXlcbiIKKyJoYXZlIGFjdGl2YXRlZCBpbiBvdGhlciBwYWNrYWdlcy4gIFRoaXMgcHJvY2Vzc2luZyBjYW4gYmUgcmVxdWVzdGVkIHVzaW5nXG4iCisiZHNlbGVjdCBvciBkcGtnIC0tY29uZmlndXJlIC0tcGVuZGluZyAob3IgZHBrZyAtLXRyaWdnZXJzLW9ubHkpOlxuIgorbXNnc3RyICIiCisizqTOsSDPgM6xz4HOsc66zqzPhM+JIM+AzrHOus6tz4TOsSDPgM61z4HOuc68zq3Ovc6/z4XOvSDPhM63zr0gzrXPgM61zr7Otc+BzrPOsc+Dzq/OsSDPhM+Jzr0gdHJpZ2dlciDPgM6/z4Ugzq3Ph86/z4XOvVxuIgorIs61zr3Otc+BzrPOv8+Azr/Ouc6uz4POtc65IM+DzrUgzqzOu867zrEgz4DOsc66zq3PhM6xLiAgzpcgzrXPgM61zr7Otc+BzrPOsc+Dzq/OsSDOsc+Fz4TOriDOvM+Azr/Pgc61zq8gzr3OsSDOts63z4TOt864zrXOryAiCisiz4fPgc63z4POuc68zr/PgM6/zrnPjs69z4TOsc+CXG4iCisiz4TOsSBkc2VsZWN0IM6uIGRwa2cgLS1jb25maWd1cmUgLS1wZW5kaW5nICjOriBkcGtnIC0tdHJpZ2dlcnMtb25seSk6XG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTA4Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgaGF2ZSBiZWVuIHRyaWdnZXJlZCwgYnV0IHRoZSB0cmlnZ2VyIHByb2Nlc3NpbmdcbiIKKyJoYXMgbm90IHlldCBiZWVuIGRvbmUuICBUcmlnZ2VyIHByb2Nlc3NpbmcgY2FuIGJlIHJlcXVlc3RlZCB1c2luZ1xuIgorImRzZWxlY3Qgb3IgZHBrZyAtLWNvbmZpZ3VyZSAtLXBlbmRpbmcgKG9yIGRwa2cgLS10cmlnZ2Vycy1vbmx5KTpcbiIKK21zZ3N0ciAiIgorIs6kzrEgzrHOus+MzrvOv8+FzrjOsSDPgM6xzrrOrc+EzrEgzq3Ph86/z4XOvSBcIs61zr3Otc+BzrPOv8+Azr/Ouc63zrjOtc6vXCIsIM6xzrvOu86sIM63IM61z4DOtc6+zrXPgc6zzrHPg86vzrEgz4TPic69IHRyaWdnZXIgXG4iCisizrTOtc69IM6tz4fOtc65IM6zzq/Ovc61zrkgzrHOus+MzrzOsS4gIM6XIM61z4DOtc6+zrXPgc6zzrHPg86vzrEgzrHPhc+Ezq4gzrzPgM6/z4HOtc6vIM69zrEgzrbOt8+EzrfOuM61zq8gz4fPgc63z4POuc68zr/PgM6/zrnPjs69z4TOsc+CXG4iCisiZHNlbGVjdCDOriBkcGtnIC0tY29uZmlndXJlIC0tcGVuZGluZyAozq4gZHBrZyAtLXRyaWdnZXJzLW9ubHkpOlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjEzNyBzcmMvZW5xdWlyeS5jOjIxMSBzcmMvZW5xdWlyeS5jOjI5MiBzcmMvZW5xdWlyeS5jOjM3MworIzogc3JjL2VucXVpcnkuYzo0NjAgc3JjL3NlbGVjdC5jOjk4IHNyYy9zZWxlY3QuYzoxNjQgc3JjL3RyaWdjbWQuYzoxOTkKKyM6IHNyYy91cGRhdGUuYzo0OCBzcmMvdXBkYXRlLmM6MTEzIGRwa2ctc3BsaXQvcXVldWUuYzoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyB0YWtlcyBubyBhcmd1bWVudHMiCittc2dzdHIgIs63IC0tJXMgzrTOtc69IM+AzrHOr8+Bzr3Otc65IM6/z4HOr8+DzrzOsc+EzrEiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTUyCittc2dpZCAiIgorIkFub3RoZXIgcHJvY2VzcyBoYXMgbG9ja2VkIHRoZSBkYXRhYmFzZSBmb3Igd3JpdGluZywgYW5kIG1pZ2h0IGN1cnJlbnRseSBiZVxuIgorIm1vZGlmeWluZyBpdCwgc29tZSBvZiB0aGUgZm9sbG93aW5nIHByb2JsZW1zIG1pZ2h0IGp1c3QgYmUgZHVlIHRvIHRoYXQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzoxOTEKKyMsIGZ1enp5CisjfCBtc2dpZCAiPHVua25vd24+IgorbXNnY3R4dCAic2VjdGlvbiIKK21zZ2lkICI8dW5rbm93bj4iCittc2dzdHIgIjzOrM6zzr3Pic+Dz4TOvz4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MjUxCisjLCBjLWZvcm1hdAorbXNnaWQgIiAlZCBpbiAlczogIgorbXNnc3RyICIgJWQgz4POtSAlczogIgorCisjOiBzcmMvZW5xdWlyeS5jOjI2NgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiICVkIHBhY2thZ2VzLCBmcm9tIHRoZSBmb2xsb3dpbmcgc2VjdGlvbnM6IgorbXNnaWQgIiAlZCBwYWNrYWdlLCBmcm9tIHRoZSBmb2xsb3dpbmcgc2VjdGlvbjoiCittc2dpZF9wbHVyYWwgIiAlZCBwYWNrYWdlcywgZnJvbSB0aGUgZm9sbG93aW5nIHNlY3Rpb25zOiIKK21zZ3N0clswXSAiICVkIM+AzrHOus6tz4TOsSwgzrHPgM+MIM+EzrEgz4DOsc+BzrHOus6sz4TPiSDPhM68zq7OvM6xz4TOsToiCittc2dzdHJbMV0gIiAlZCDPgM6xzrrOrc+EzrEsIM6xz4DPjCDPhM6xIM+AzrHPgc6xzrrOrM+Ez4kgz4TOvM6uzrzOsc+EzrE6IgorCisjOiBzcmMvZW5xdWlyeS5jOjMwNQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIlZlcnNpb24gb2YgZHBrZyB3aXRoIHdvcmtpbmcgJXMgc3VwcG9ydCBub3QgeWV0IGNvbmZpZ3VyZWQuXG4iCisiIFBsZWFzZSB1c2UgJ2Rwa2cgLS1jb25maWd1cmUgZHBrZycsIGFuZCB0aGVuIHRyeSBhZ2Fpbi5cbiIKK21zZ3N0ciAiIgorIs6XIM6tzrrOtM6/z4POtyDPhM6/z4UgZHBrZyDOvM61IM67zrXOuc+Ezr/Phc+BzrPOuc66zq4gz4TOt869IM+Fz4DOv8+Dz4TOrs+BzrnOvs63IM6zzrnOsSBlcG9jaHMgzrTOtc69IM6tz4fOtc65XG4iCisiz4HPhc64zrzOuc+Dz4TOtc6vIM6xzrrPjM68zrcuIM6gzrHPgc6xzrrOsc67z44gz4fPgc63z4POuc68zr/PgM6/zrnOrs+Dz4TOtSBgZHBrZyAtLWNvbmZpZ3VyZSBkcGtnJywgzrrOsc65XG4iCisizr7Osc69zrHOtM6/zrrOuc68zqzPg8+EzrUuXG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzEwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJkcGtnIG5vdCByZWNvcmRlZCBhcyBpbnN0YWxsZWQsIGNhbm5vdCBjaGVjayBmb3IgJXMgc3VwcG9ydCFcbiIKK21zZ3N0ciAiIgorIs+Ezr8gZHBrZyDOtM61IM6yz4HOrc64zrfOus61IM+Jz4IgzrXOs866zrHPhM61z4PPhM63zrzOrc69zr8sIM60zrXOvSDOtc6vzr3Osc65IM60z4XOvc6xz4TPjM+CIM6/IM6tzrvOtc6zz4fOv8+CXG4iCisiz4XPgM6/z4PPhM6uz4HOuc6+zrfPgiDPhM6/z4UgZXBvY2ghXG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzIxCittc2dpZCAiUHJlLURlcGVuZHMgZmllbGQiCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzozMjkKK21zZ2lkICJlcG9jaCIKK21zZ3N0ciAiIgorCisjOiBzcmMvZW5xdWlyeS5jOjMzNworbXNnaWQgImxvbmcgZmlsZW5hbWVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzQ2Cittc2dpZCAibXVsdGlwbGUgQ29uZmxpY3RzIGFuZCBSZXBsYWNlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZW5xdWlyeS5jOjQzNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogY2Fubm90IHNlZSBob3cgdG8gc2F0aXNmeSBwcmUtZGVwZW5kZW5jeTpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorImRwa2c6IM6xzrTOuc6tzr7Ov860zr8gzrcgzrnOus6xzr3Ov8+Azr/Or863z4POtyDPhM63z4Igz4DPgc6/zrXOvs6sz4HPhM63z4POt8+COlxuIgorIiAlc1xuIgorCisjOiBzcmMvZW5xdWlyeS5jOjQzNQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc2F0aXNmeSBwcmUtZGVwZW5kZW5jaWVzIGZvciAlLjI1MHMgKHdhbnRlZCBkdWUgdG8gJS4yNTBzKSIKK21zZ3N0ciAiIgorIs6xzrTOuc6tzr7Ov860zr8gzrcgzrnOus6xzr3Ov8+Azr/Or863z4POtyDPhM+Jzr0gz4DPgc6/zrXOvs6xz4HPhM6uz4POtc+Jzr0gzrPOuc6xIM+Ezr8gJS4yNTBzICjOts63z4TOrs64zrfOus61IM67z4zOs8+JIM+Ezr/PhSAiCisiJS4yNTBzKSIKKworIzogc3JjL2VucXVpcnkuYzo0NzIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIm9ic29sZXRlIG9wdGlvbiAnLS0lcycsIHBsZWFzZSB1c2UgJy0tJXMnIGluc3RlYWQuIgorbXNnc3RyICLOoM+Bzr/Otc65zrTOv8+Azr/Or863z4POtzogzrXPgM65zrvOv86zzq4gzrXOus+Ez4zPgiDPh8+Bzq7Pg863z4IgYC0tJXMnXG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6NTE5Cittc2dpZCAiIgorIi0tY29tcGFyZS12ZXJzaW9ucyB0YWtlcyB0aHJlZSBhcmd1bWVudHM6IDx2ZXJzaW9uPiA8cmVsYXRpb24+IDx2ZXJzaW9uPiIKK21zZ3N0ciAiLS1jb21wYXJlLXZlcnNpb25zIM+AzrHOr8+Bzr3Otc65IM+Ez4HOr86xIM6/z4HOr8+DzrzOsc+EzrE6IDzOrc66zrTOv8+Dzrc+IDzPg8+Hzq3Pg863PiA8zq3Ous60zr/Pg863PiIKKworIzogc3JjL2VucXVpcnkuYzo1MjQKK21zZ2lkICItLWNvbXBhcmUtdmVyc2lvbnMgYmFkIHJlbGF0aW9uIgorbXNnc3RyICItLWNvbXBhcmUtdmVyc2lvbnMgzrrOsc66zq4gz4PPhc+Dz4fOrc+EzrnPg863IgorCisjOiBzcmMvZW5xdWlyeS5jOjUyOSBzcmMvZW5xdWlyeS5jOjUzMSBzcmMvZW5xdWlyeS5jOjU0MCBzcmMvZW5xdWlyeS5jOjU0MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidmVyc2lvbiAnJXMnIGhhcyBiYWQgc3ludGF4OiAlcyIKK21zZ3N0ciAiZHBrZzogzrcgzq3Ous60zr/Pg863ICclcycgzq3Ph861zrkgzrrOsc66zq4gz4PPjc69z4TOsc6+zrc6ICVzXG4iCisKKyM6IHNyYy9lcnJvcnMuYzo2MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IGVycm9yIHByb2Nlc3NpbmcgJXMgKC0tJXMpOlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisiJXM6IM+Dz4bOrM67zrzOsSDPg8+EzrfOvSDOtc+AzrXOvs61z4HOs86xz4POr86xIM+Ezr/PhSAlcyAoLS0lcyk6XG4iCisiICVzXG4iCisKKyM6IHNyYy9lcnJvcnMuYzo2OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgImRwa2c6IGZhaWxlZCB0byBhbGxvY2F0ZSBtZW1vcnkgZm9yIG5ldyBlbnRyeSBpbiBsaXN0IG9mIGZhaWxlZCBwYWNrYWdlcy4iCittc2dpZCAiIgorIiVzOiBmYWlsZWQgdG8gYWxsb2NhdGUgbWVtb3J5IGZvciBuZXcgZW50cnkgaW4gbGlzdCBvZiBmYWlsZWQgcGFja2FnZXM6ICVzIgorbXNnc3RyICIiCisiZHBrZzogzrHPgM6/z4TPhc+Hzq/OsSDOus6xz4TOrCDPhM63IM60zq3Pg868zrXPhc+DzrcgzrzOvc6uzrzOt8+CIM6zzrnOsSDOvc6tzrEgzrrOsc+EzrHPh8+Oz4HOuc+Dzrcgz4PPhM63IM67zq/Pg8+EzrEgz4TPic69ICIKKyLOsc+Azr/PhM+Fz4fPjM69z4TPic69IM+AzrHOus6tz4TPic69LiIKKworIzogc3JjL2Vycm9ycy5jOjc5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJkcGtnOiB0b28gbWFueSBlcnJvcnMsIHN0b3BwaW5nXG4iCittc2dpZCAiJXM6IHRvbyBtYW55IGVycm9ycywgc3RvcHBpbmdcbiIKK21zZ3N0ciAiZHBrZzogz4DOrM+BzrEgz4DOv867zrvOrCDPg8+GzqzOu868zrHPhM6xLCDOtM65zrHOus6/z4DOriDOu861zrnPhM6/z4XPgc6zzq/Osc+CXG4iCisKKyM6IHNyYy9lcnJvcnMuYzo4NworbXNnaWQgIkVycm9ycyB3ZXJlIGVuY291bnRlcmVkIHdoaWxlIHByb2Nlc3Npbmc6XG4iCittc2dzdHIgIs6gz4HOv86tzrrPhc+IzrHOvSDPg8+GzqzOu868zrHPhM6xIM66zrHPhM6sIM+EzrfOvSDOtc+AzrXOvs61z4HOs86xz4POr86xIM+Ezr/PhTpcbiIKKworIzogc3JjL2Vycm9ycy5jOjk0Cittc2dpZCAiUHJvY2Vzc2luZyB3YXMgaGFsdGVkIGJlY2F1c2UgdGhlcmUgd2VyZSB0b28gbWFueSBlcnJvcnMuXG4iCittc2dzdHIgIs6XIM61z4DOtc6+zrXPgc6zzrHPg86vzrEgz4PPhM6xzrzOrM+EzrfPg861IM6zzrnOsc+Ezq8gz4DPgc6/zq3Ous+Fz4jOsc69IM+AzqzPgc6xIM+Azr/Ou867zqwgz4PPhs6szrvOvM6xz4TOsS5cbiIKKworIzogc3JjL2Vycm9ycy5jOjEwNQorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlICVzIHdhcyBvbiBob2xkLCBwcm9jZXNzaW5nIGl0IGFueXdheSBhcyB5b3UgcmVxdWVzdGVkXG4iCittc2dzdHIgIiIKKyLOpM6/IM+AzrHOus6tz4TOvyAlcyDOrs+EzrHOvSDPg861IM+Dz4XOs866z4HOrM+EzrfPg863LCDOuM6xIM61z4DOtc6+zrXPgc6zzrHPg8+EzrXOryDOus6xz4TOrCDPhM63zr0gzrXPgM65zrjPhc68zq/OsSDPg86xz4JcbiIKKworIzogc3JjL2Vycm9ycy5jOjEwOQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiUGFja2FnZSAlcyBpcyBvbiBob2xkLCBub3QgdG91Y2hpbmcgaXQuICBVc2UgLS1mb3JjZS1ob2xkIHRvIG92ZXJyaWRlLlxuIgorbXNnc3RyICIiCisizqTOvyDPgM6xzrrOrc+Ezr8gJXMgzrXOr869zrHOuSDPg861IM+Dz4XOs866z4HOrM+EzrfPg863LCDOtM61zr0gzrjOsSDOtc+AzrXOvs61z4HOs86xz4PPhM61zq8uICDOp8+BzrfPg865zrzOv8+Azr/Ouc6uz4PPhM61IM+Ezr8gLS0iCisiZm9yY2UtaG9sZCDOs865zrEgzr3OsSDPgM6xz4HOsc66zqzOvM+IzrXPhM61LlxuIgorCisjOiBzcmMvZXJyb3JzLmM6MTE5CisjLCBmdXp6eQorbXNnaWQgIm92ZXJyaWRpbmcgcHJvYmxlbSBiZWNhdXNlIC0tZm9yY2UgZW5hYmxlZDoiCittc2dzdHIgIiIKKyJkcGtnIC0gz4DPgc6/zrXOuc60zr/PgM6/zq/Ot8+DzrcsIM+Ezr8gz4DPgc+MzrLOu863zrzOsSDPgM6xz4HOsc66zqzOvM+Az4TOtc+EzrHOuSDOu8+MzrPPiSDPhM6/z4UgLS1mb3JjZSBlbmFibGVkOlxuIgorIiAiCisKKyM6IHNyYy9maWxlc2RiLmM6MzA3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSBgJS4yNTBzJyIKK21zZ3N0ciAizrHOtM+Nzr3Osc+Ezr8gz4TOvyDOrM69zr/Ouc6zzrzOsSDPhM63z4IgzrvOr8+Dz4TOsc+CIM6xz4HPh861zq/Pic69IM6zzrnOsSDPhM6/IM+AzrHOus6tz4TOvyBgJS4yNTBzJyIKKworIzogc3JjL2ZpbGVzZGIuYzozMTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcycgbWlzc2luZywgYXNzdW1pbmcgcGFja2FnZSBoYXMgbm8gZmlsZXMgIgorImN1cnJlbnRseSBpbnN0YWxsZWQuIgorbXNnc3RyICIiCisiZHBrZzogz4POv86yzrHPgc6uIM+Az4HOv861zrnOtM6/z4DOv86vzrfPg863OiDPhM6/IM6xz4HPh861zq/OvyDPhM63z4IgzrvOr8+Dz4TOsc+CIM6xz4HPh861zq/Pic69IM6zzrnOsSDPhM6/IM+AzrHOus6tz4TOv1xuIgorImAlLjI1MHMnIM60zrXOvSDPhc+AzqzPgc+HzrXOuSwgzrjOsSDPhc+Azr/OuM6tz4POv8+FzrzOtSDPjM+Ezrkgz4TOvyDPgM6xzrrOrc+Ezr8gzrTOtc69IM6tz4fOtc65IM61zrPOus6xz4TOtc+Dz4TOt868zq3Ovc6xXG4iCisizrHPgc+HzrXOr86xLlxuIgorCisjOiBzcmMvZmlsZXNkYi5jOjMyMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICclLjI1MHMnIgorbXNnc3RyICLOsc60z43Ovc6xz4TOvyDPhM6/IM6szr3Ov865zrPOvM6xIM+EzrfPgiDOu86vz4PPhM6xz4IgzrHPgc+HzrXOr8+Jzr0gzrPOuc6xIM+Ezr8gz4DOsc66zq3PhM6/IGAlLjI1MHMnIgorCisjOiBzcmMvZmlsZXNkYi5jOjMzMAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZXMgbGlzdCBmb3IgcGFja2FnZSBgJS4yNTBzJyIKK21zZ2lkICJyZWFkaW5nIGZpbGVzIGxpc3QgZm9yIHBhY2thZ2UgJyUuMjUwcyciCittc2dzdHIgIs67zq/Pg8+EzrEgzrHPgc+HzrXOr8+Jzr0gzrPOuc6xIM+Ezr8gz4DOsc66zq3PhM6/IGAlLjI1MHMnIgorCisjOiBzcmMvZmlsZXNkYi5jOjMzNgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICclLjI1MHMnIGlzIG1pc3NpbmcgZmluYWwgbmV3bGluZSIKK21zZ3N0ciAiIgorIs+Ezr8gzrHPgc+HzrXOr86/IM67zq/Pg8+EzrHPgiDOsc+Bz4fOtc6vz4nOvSDOs865zrEgz4TOvyDPgM6xzrrOrc+Ezr8gYCUuMjUwcycgz4DOtc+BzrnOrc+HzrXOuSDOus61zr3PjCDPjM69zr/OvM6xIM6xz4HPh861zq/Ov8+FIgorCisjOiBzcmMvZmlsZXNkYi5jOjM0NAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcycgY29udGFpbnMgZW1wdHkgZmlsZW5hbWUiCittc2dzdHIgIiIKKyLPhM6/IM6xz4HPh861zq/OvyDOu86vz4PPhM6xz4IgzrHPgc+HzrXOr8+Jzr0gzrPOuc6xIM+Ezr8gz4DOsc66zq3PhM6/IGAlLjI1MHMnIM+AzrXPgc65zq3Ph861zrkgzrrOtc69z4wgz4zOvc6/zrzOsSDOsc+Bz4fOtc6vzr/PhSIKKworIzogc3JjL2ZpbGVzZGIuYzozNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcyciCittc2dzdHIgIs+Dz4bOrM67zrzOsSDOus67zrXOuc+Dzq/OvM6xz4TOv8+CIM6xz4HPh861zq/Ov8+FIM67zq/Pg8+EzrHPgiDOsc+Bz4fOtc6vz4nOvSDOs865zrEgz4TOvyDPgM6xzrrOrc+Ezr8gYCUuMjUwcyciCisKKyM6IHNyYy9maWxlc2RiLmM6NDYyCittc2dpZCAiKFJlYWRpbmcgZGF0YWJhc2UgLi4uICIKK21zZ3N0ciAiKM6Rzr3OrM6zzr3Pic+DzrcgzrLOrM+DzrfPgiDOtM61zrTOv868zq3Ovc+Jzr0gLi4uICIKKworIzogc3JjL2ZpbGVzZGIuYzo0ODMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiVkIGZpbGVzIGFuZCBkaXJlY3RvcmllcyBjdXJyZW50bHkgaW5zdGFsbGVkLilcbiIKK21zZ2lkICIlZCBmaWxlIG9yIGRpcmVjdG9yeSBjdXJyZW50bHkgaW5zdGFsbGVkLilcbiIKK21zZ2lkX3BsdXJhbCAiJWQgZmlsZXMgYW5kIGRpcmVjdG9yaWVzIGN1cnJlbnRseSBpbnN0YWxsZWQuKVxuIgorbXNnc3RyWzBdICLPgM+Bzr/PgiDPhM6/IM+AzrHPgc+Mzr0gzrXOs866zrHPhM6xz4PPhM6szrjOt866zrHOvSAlZCDOsc+Bz4fOtc6vzrEgzrrOsc65IM66zrHPhM6szrvOv86zzr/OuS4pXG4iCittc2dzdHJbMV0gIs+Az4HOv8+CIM+Ezr8gz4DOsc+Bz4zOvSDOtc6zzrrOsc+EzrHPg8+EzqzOuM63zrrOsc69ICVkIM6xz4HPh861zq/OsSDOus6xzrkgzrrOsc+EzqzOu86/zrPOv865LilcbiIKKworIzogc3JjL2ZpbGVzZGIuYzo1MTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAizrHOtM+Nzr3Osc+EzrcgzrcgzrTOt868zrnOv8+Fz4HOs86vzrEgzrHOvc6xzr3Orc+JzrzOrc69zrfPgiDOu86vz4PPhM6xz4IgzrHPgc+HzrXOr8+Jzr0gzrPOuc6xIM+Ezr8gz4DOsc66zq3PhM6/ICVzIgorCisjOiBzcmMvZmlsZXNkYi5jOjUyNgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgdG8gdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIs6xz4DOv8+Ez4XPh86vzrEgzrXOs86zz4HOsc+Gzq7PgiDPhM63z4IgzrHOvc6xzr3Otc+JzrzOrc69zrfPgiDOu86vz4PPhM6xz4IgzrHPgc+HzrXOr8+Jzr0gzrPOuc6xIM+Ezr8gz4DOsc66zq3PhM6/ICVzIgorCisjOiBzcmMvZmlsZXNkYi5jOjUyOAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZmx1c2ggdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIs6xz4DOv8+Ez4XPh86vzrEgzrHPgM+Mz4HPgc65z4jOt8+CIM+EzrfPgiDOsc69zrHOvc61z4nOvM6tzr3Ot8+CIM67zq/Pg8+EzrHPgiDOsc+Bz4fOtc6vz4nOvSDOs865zrEgz4TOvyDPgM6xzrrOrc+Ezr8gJXMiCisKKyM6IHNyYy9maWxlc2RiLmM6NTMwCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBzeW5jIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICLOsc+Azr/PhM+Fz4fOr86xIM+Dz4XOs8+Hz4HOv869zrnPg868zr/PjSDPhM63z4IgzrHOvc6xzr3Otc+JzrzOrc69zrfPgiDOu86vz4PPhM6xz4IgzrHPgc+HzrXOr8+Jzr0gzrPOuc6xIM+Ezr8gz4DOsc66zq3PhM6/ICVzIgorCisjOiBzcmMvZmlsZXNkYi5jOjUzMworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2xvc2UgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIs6xz4DOv8+Ez4XPh86vzrEgzrrOu861zrnPg86vzrzOsc+Ezr/PgiDPhM63z4IgzrHOvc6xzr3Otc+JzrzOrc69zrfPgiDOu86vz4PPhM6xz4IgzrHPgc+HzrXOr8+Jzr0gzrPOuc6xIM+Ezr8gz4DOsc66zq3PhM6/ICVzIgorCisjOiBzcmMvZmlsZXNkYi5jOjUzNQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gaW5zdGFsbCB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAizrHPgM6/z4TPhc+Hzq/OsSDOtc6zzrrOsc+EzqzPg8+EzrHPg863z4Igz4TOt8+CIM6xzr3Osc69zrXPic68zq3Ovc63z4IgzrvOr8+Dz4TOsc+CIM6xz4HPh861zq/Pic69IM6zzrnOsSDPhM6/IM+AzrHOus6tz4TOvyAlcyIKKworIzogc3JjL2hlbHAuYzo0OAorbXNnaWQgIm5vdCBpbnN0YWxsZWQiCittc2dzdHIgIs60zrXOvSDOtc6vzr3Osc65IM61zrPOus6xz4TOtc+Dz4TOt868zq3Ovc6/IgorCisjOiBzcmMvaGVscC5jOjQ5Cittc2dpZCAibm90IGluc3RhbGxlZCBidXQgY29uZmlncyByZW1haW4iCittc2dzdHIgIs+Mz4fOuSDOtc6zzrrOsc+EzrXPg8+EzrfOvM6tzr3OvyDOsc67zrvOrCDPgM6xz4HOsc68zq3Ovc6/z4XOvSDOv865IM+Bz4XOuM68zq/Pg861zrnPgiIKKworIzogc3JjL2hlbHAuYzo1MAorbXNnaWQgImJyb2tlbiBkdWUgdG8gZmFpbGVkIHJlbW92YWwgb3IgaW5zdGFsbGF0aW9uIgorbXNnc3RyICLOus6xz4TOtc+Dz4TPgc6xzrzOvM6tzr3OvyDOu8+MzrPPiSDOsc+Azr/PhM+Fz4fOt868zq3Ovc63z4IgzrHPhs6xzq/Pgc61z4POt8+CIM6uIM61zrPOus6xz4TOrM+Dz4TOsc+DzrfPgiIKKworIzogc3JjL2hlbHAuYzo1MQorbXNnaWQgInVucGFja2VkIGJ1dCBub3QgY29uZmlndXJlZCIKK21zZ3N0ciAizrHPgM6/z4PPhc68z4DOuc61z4POvM6tzr3OvyDOsc67zrvOrCDPjM+Hzrkgz4HPhc64zrzOuc+DzrzOrc69zr8iCisKKyM6IHNyYy9oZWxwLmM6NTIKK21zZ2lkICJicm9rZW4gZHVlIHRvIHBvc3RpbnN0IGZhaWx1cmUiCittc2dzdHIgIs66zrHPhM61z4PPhM+BzrHOvM68zq3Ovc6/IM67z4zOs8+JIM+Dz4bOrM67zrzOsc+Ezr/PgiDOvM61z4TOrCDPhM63zr0gzrXOs866zrHPhM6sz4PPhM6xz4POtyAocG9zdGluc3QpIgorCisjOiBzcmMvaGVscC5jOjUzCittc2dpZCAiYXdhaXRpbmcgdHJpZ2dlciBwcm9jZXNzaW5nIGJ5IGFub3RoZXIgcGFja2FnZSIKK21zZ3N0ciAizrHOvc6xzrzOv869zq4gz4TOt8+CIM61z4DOtc6+zrXPgc6zzrHPg86vzrHPgiB0cmlnZ2VyIM6xz4DPjCDOrM67zrvOvyDPgM6xzrrOrc+Ezr8iCisKKyM6IHNyYy9oZWxwLmM6NTQKK21zZ2lkICJ0cmlnZ2VyZWQiCittc2dzdHIgInRyaWdnZXJlZCIKKworIzogc3JjL2hlbHAuYzo1NQorbXNnaWQgImluc3RhbGxlZCIKK21zZ3N0ciAizrXOs866zrHPhM61z4PPhM63zrzOrc69zr8iCisKKyM6IHNyYy9oZWxwLmM6MTA3CisjLCBmdXp6eQorbXNnaWQgIlBBVEggaXMgbm90IHNldC4iCittc2dzdHIgImRwa2cgLSDPg8+GzqzOu868zrE6IM+Ezr8gUEFUSCDOtM61zr0gzq3Ph861zrkgzr/Pgc65z4PPhM61zq8uXG4iCisKKyM6IHNyYy9oZWxwLmM6MTI5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICInJXMnIG5vdCBmb3VuZCBpbiBQQVRIIG9yIG5vdCBleGVjdXRhYmxlLiIKK21zZ3N0ciAiZHBrZzogz4TOvyBgJXMnIM60zrUgzrLPgc6tzrjOt866zrUgz4PPhM6/IFBBVEguXG4iCisKKyM6IHNyYy9oZWxwLmM6MTM4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiJWQgZXhwZWN0ZWQgcHJvZ3JhbSBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS5cbiIKKyIlcyIKK21zZ2lkX3BsdXJhbCAiIgorIiVkIGV4cGVjdGVkIHByb2dyYW1zIG5vdCBmb3VuZCBpbiBQQVRIIG9yIG5vdCBleGVjdXRhYmxlLlxuIgorIiVzIgorbXNnc3RyWzBdICJkcGtnOiDPhM6/IGAlcycgzrTOtSDOss+Bzq3OuM63zrrOtSDPg8+Ezr8gUEFUSC5cbiIKK21zZ3N0clsxXSAiZHBrZzogz4TOvyBgJXMnIM60zrUgzrLPgc6tzrjOt866zrUgz4PPhM6/IFBBVEguXG4iCisKKyM6IHNyYy9oZWxwLmM6MTQxCisjLCBmdXp6eQorbXNnaWQgIiIKKyJOb3RlOiByb290J3MgUEFUSCBzaG91bGQgdXN1YWxseSBjb250YWluIC91c3IvbG9jYWwvc2JpbiwgL3Vzci9zYmluIGFuZCAvIgorInNiaW4uIgorbXNnc3RyICIiCisiJWQgzrHOvc6xzrzOtc69z4zOvM61zr3OsSDPgM+Bzr/Os8+BzqzOvM68zrEgzrTOtSDOss+Bzq3OuM63zrrOsc69IM+Dz4TOvyBQQVRILlxuIgorIs6jzrfOvC46IM+Ezr8gUEFUSCDPhM6/z4Ugcm9vdCDPhM+Fz4DOuc66zqwgz4DOtc+BzrnOrc+HzrXOuSAvdXNyL2xvY2FsL3NiaW4sIC91c3Ivc2JpbiBhbmQgL3NiaW4uIgorCisjOiBzcmMvaGVscC5jOjE4OAorbXNnaWQgImFkbWluZGlyIG11c3QgYmUgaW5zaWRlIGluc3RkaXIgZm9yIGRwa2cgdG8gd29yayBwcm9wZXJseSIKK21zZ3N0ciAiIgorCisjOiBzcmMvaGVscC5jOjE5MCBzcmMvbWFpbi5jOjc0NworIywgZnV6enkKK21zZ2lkICJ1bmFibGUgdG8gc2V0ZW52IGZvciBzdWJwcm9jZXNzZXMiCittc2dzdHIgIs6xzrTPjc69zrHPhM6/z4Igzr8gzr/Pgc65z4POvM+Mz4Igz4TOv8+FIHNldGVudiDOs865zrEgz4TOvyDPg861zr3OrM+BzrnOvyDPg8+Fzr3PhM6uz4HOt8+DzrfPgiAobWFpbnQgc2NyaXB0KSIKKworIzogc3JjL2hlbHAuYzoxOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNocm9vdCB0byBgJS4yNTBzJyIKK21zZ3N0ciAizrHPgM6/z4TPhc+Hzq/OsSDOus6xz4TOrCDPhM6/IGNocm9vdCDPg8+Ezr8gYCUuMjUwcyciCisKKyM6IHNyYy9oZWxwLmM6MTk0IGRwa2ctZGViL2J1aWxkLmM6NDU1IGRwa2ctZGViL2J1aWxkLmM6NDU3CisjOiBkcGtnLWRlYi9idWlsZC5jOjUzNiBkcGtnLWRlYi9idWlsZC5jOjU1OAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gYCUuMjU1cyciCittc2dzdHIgIs6xz4DOv8+Ez4XPh86vzrEgzrHOu867zrHOs86uz4IgzrrOsc+EzrHOu8+MzrPOv8+FIChjaGRpcikgz4PPhM6/IGAlLjI1NXMnIgorCisjOiBzcmMvaGVscC5jOjI1NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IGV4ZWN1dGUgcGVybWlzc2lvbnMgb24gYCUuMjUwcyciCittc2dzdHIgIs6xzrTPjc69zrHPhM6/z4Igzr8gzr/Pgc65z4POvM+Mz4IgzqzOtM61zrnOsc+CIM61zrrPhM6tzrvOtc+DzrfPgiDPg8+Ezr8gYCUuMjUwcyciCisKKyM6IHNyYy9oZWxwLmM6Mjc2CisjLCBmdXp6eQorbXNnaWQgInVuYWJsZSB0byBzZXRlbnYgZm9yIG1haW50YWluZXIgc2NyaXB0IgorbXNnc3RyICLOsc60z43Ovc6xz4TOv8+CIM6/IM6/z4HOuc+DzrzPjM+CIM+Ezr/PhSBzZXRlbnYgzrPOuc6xIM+Ezr8gz4POtc69zqzPgc65zr8gz4PPhc69z4TOrs+BzrfPg863z4IgKG1haW50IHNjcmlwdCkiCisKKyM6IHNyYy9oZWxwLmM6MzAwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJpbnN0YWxsZWQgJXMgc2NyaXB0IgorbXNnc3RyICLPgM6xzrvOuc+MIM+DzrXOvc6sz4HOuc6/ICVzIgorCisjOiBzcmMvaGVscC5jOjMxMyBzcmMvaGVscC5jOjM4MiBzcmMvaGVscC5jOjQ0MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCAlcyBgJS4yNTBzJyIKK21zZ3N0ciAizrHOtM+Nzr3Osc+EzrcgzrcgzrXPjc+BzrXPg863IM66zrHPhM6sz4PPhM6xz4POt8+CIM+Ezr/PhSAlcyBgJS4yNTBzJyIKKworIzogc3JjL2hlbHAuYzozNjggc3JjL2hlbHAuYzo0MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAibmV3ICVzIHNjcmlwdCIKK21zZ3N0ciAizr3Orc6/IM+DzrXOvc6sz4HOuc6/ICVzICIKKworIzogc3JjL2hlbHAuYzo0MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAib2xkICVzIHNjcmlwdCIKK21zZ3N0ciAiz4DOsc67zrnPjCDPg861zr3OrM+BzrnOvyAlcyIKKworIzogc3JjL2hlbHAuYzo0MTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0ICVzICclLjI1MHMnOiAlcyIKK21zZ3N0ciAizrHOtM+Nzr3Osc+EzrcgzrcgzrXPjc+BzrXPg863IM66zrHPhM6sz4PPhM6xz4POt8+CIM+Ezr/PhSAlcyBgJS4yNTBzJyIKKworIzogc3JjL2hlbHAuYzo0MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZyAtIHRyeWluZyBzY3JpcHQgZnJvbSB0aGUgbmV3IHBhY2thZ2UgaW5zdGVhZCAuLi5cbiIKK21zZ3N0ciAiZHBrZyAtIM60zr/Ous65zrzOrM62zrXPhM6xzrkgzrXOvc6xzrvOu86xzrrPhM65zrrOrCDPhM6/IM+DzrXOvc6sz4HOuc6/IM6xz4DPjCDPhM6/IM69zq3OvyDPgM6xzrrOrc+Ezr8gLi4uXG4iCisKKyM6IHNyYy9oZWxwLmM6NDM5Cittc2dpZCAidGhlcmUgaXMgbm8gc2NyaXB0IGluIHRoZSBuZXcgdmVyc2lvbiBvZiB0aGUgcGFja2FnZSAtIGdpdmluZyB1cCIKK21zZ3N0ciAizrTOtc69IM+Fz4DOrM+Bz4fOtc65IM+DzrXOvc6sz4HOuc6/IM+Dz4TOtyDOvc6tzrEgzq3Ous60zr/Pg863IM+Ezr/PhSDPgM6xzrrOrc+Ezr/PhSAtIM61zrPOus6xz4TOrM67zrXOuc+IzrciCisKKyM6IHNyYy9oZWxwLmM6NDQ1CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IC4uLiBpdCBsb29rcyBsaWtlIHRoYXQgd2VudCBPSy5cbiIKK21zZ3N0ciAiZHBrZzogLi4uIM68zqzOu867zr/OvSDOtc+AzrnPhM+Fz4fOrs+CLi5cbiIKKworIzogc3JjL2hlbHAuYzo2MTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWN1cmVseSByZW1vdmUgJyUuMjU1cyciCittc2dzdHIgIs6xzrTPjc69zrHPhM63IM63IM60zrfOvM65zr/Phc+BzrPOr86xIGAlLjI1NXMnIgorCisjOiBzcmMvaGVscC5jOjYyMSBkcGtnLWRlYi9pbmZvLmM6NjUgZHBrZy1kZWIvaW5mby5jOjY3Cittc2dpZCAicm0gY29tbWFuZCBmb3IgY2xlYW51cCIKK21zZ3N0ciAiIgorCisjOiBzcmMvaW5mb2RiLmM6NTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoZWNrIGV4aXN0ZW5jZSBvZiBgJS4yNTBzJyIKK21zZ3N0ciAizrHOtM+Nzr3Osc+Ezr/PgiDOvyDOrc67zrXOs8+Hzr/PgiDPjc+AzrHPgc6+zrfPgiDOs865zrEgz4TOvyBgJS4yNTBzJyIKKworIzogc3JjL2luZm9kYi5jOjcwCittc2dpZCAiY2Fubm90IHJlYWQgaW5mbyBkaXJlY3RvcnkiCittc2dzdHIgIs6xzrTPjc69zrHPhM63IM63IM6xzr3OrM6zzr3Pic+Dzrcgz4DOu863z4HOv8+Gzr/Pgc65z47OvSDOus6xz4TOsc67z4zOs86/z4UiCisKKyM6IHNyYy9tYWluLmM6NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuIGAlcycgcGFja2FnZSBtYW5hZ2VtZW50IHByb2dyYW0gdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAizqDPgc+MzrPPgc6xzrzOvM6xIM60zrnOsc+HzrXOr8+BzrnPg863z4Igz4DOsc66zq3PhM+Jzr0gz4TOv8+FIERlYmlhbiBgJXMnIM6tzrrOtM6/z4POtyAlcy5cbiIKKworIzogc3JjL21haW4uYzo4NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtaXwtLWluc3RhbGwgICAgICAgPC5kZWIgZmlsZSBuYW1lPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyZWN0b3J5PiAuLi5cbiIKKyIgIC0tdW5wYWNrICAgICAgICAgICA8LmRlYiBmaWxlIG5hbWU+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXJlY3Rvcnk+IC4uLlxuIgorIiAgLUF8LS1yZWNvcmQtYXZhaWwgIDwuZGViIGZpbGUgbmFtZT4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRpcmVjdG9yeT4gLi4uXG4iCisiICAtLWNvbmZpZ3VyZSAgICAgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLS10cmlnZ2Vycy1vbmx5ICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC1yfC0tcmVtb3ZlICAgICAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtUHwtLXB1cmdlICAgICAgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLS1nZXQtc2VsZWN0aW9ucyBbPHBhdHRlcm4+IC4uLl0gR2V0IGxpc3Qgb2Ygc2VsZWN0aW9ucyB0byBzdGRvdXQuXG4iCisiICAtLXNldC1zZWxlY3Rpb25zICAgICAgICAgICAgICAgICBTZXQgcGFja2FnZSBzZWxlY3Rpb25zIGZyb20gc3RkaW4uXG4iCisiICAtLWNsZWFyLXNlbGVjdGlvbnMgICAgICAgICAgICAgICBEZXNlbGVjdCBldmVyeSBub24tZXNzZW50aWFsIHBhY2thZ2UuXG4iCisiICAtLXVwZGF0ZS1hdmFpbCA8UGFja2FnZXMtZmlsZT4gICBSZXBsYWNlIGF2YWlsYWJsZSBwYWNrYWdlcyBpbmZvLlxuIgorIiAgLS1tZXJnZS1hdmFpbCA8UGFja2FnZXMtZmlsZT4gICAgTWVyZ2Ugd2l0aCBpbmZvIGZyb20gZmlsZS5cbiIKKyIgIC0tY2xlYXItYXZhaWwgICAgICAgICAgICAgICAgICAgIEVyYXNlIGV4aXN0aW5nIGF2YWlsYWJsZSBpbmZvLlxuIgorIiAgLS1mb3JnZXQtb2xkLXVuYXZhaWwgICAgICAgICAgICAgRm9yZ2V0IHVuaW5zdGFsbGVkIHVuYXZhaWxhYmxlIHBrZ3MuXG4iCisiICAtc3wtLXN0YXR1cyA8cGFja2FnZT4gLi4uICAgICAgICBEaXNwbGF5IHBhY2thZ2Ugc3RhdHVzIGRldGFpbHMuXG4iCisiICAtcHwtLXByaW50LWF2YWlsIDxwYWNrYWdlPiAuLi4gICBEaXNwbGF5IGF2YWlsYWJsZSB2ZXJzaW9uIGRldGFpbHMuXG4iCisiICAtTHwtLWxpc3RmaWxlcyA8cGFja2FnZT4gLi4uICAgICBMaXN0IGZpbGVzIGBvd25lZCcgYnkgcGFja2FnZShzKS5cbiIKKyIgIC1sfC0tbGlzdCBbPHBhdHRlcm4+IC4uLl0gICAgICAgIExpc3QgcGFja2FnZXMgY29uY2lzZWx5LlxuIgorIiAgLVN8LS1zZWFyY2ggPHBhdHRlcm4+IC4uLiAgICAgICAgRmluZCBwYWNrYWdlKHMpIG93bmluZyBmaWxlKHMpLlxuIgorIiAgLUN8LS1hdWRpdCAgICAgICAgICAgICAgICAgICAgICAgQ2hlY2sgZm9yIGJyb2tlbiBwYWNrYWdlKHMpLlxuIgorIiAgLS1wcmludC1hcmNoaXRlY3R1cmUgICAgICAgICAgICAgUHJpbnQgZHBrZyBhcmNoaXRlY3R1cmUuXG4iCisiICAtLWNvbXBhcmUtdmVyc2lvbnMgPGE+IDxvcD4gPGI+ICBDb21wYXJlIHZlcnNpb24gbnVtYmVycyAtIHNlZSBiZWxvdy5cbiIKKyIgIC0tZm9yY2UtaGVscCAgICAgICAgICAgICAgICAgICAgIFNob3cgaGVscCBvbiBmb3JjaW5nLlxuIgorIiAgLURofC0tZGVidWc9aGVscCAgICAgICAgICAgICAgICAgU2hvdyBoZWxwIG9uIGRlYnVnZ2luZy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIs6Vzr3PhM6/zrvOrc+COlxuIgorIiAgLWl8LS1pbnN0YWxsICAgICAgIDwuZGViIGZpbGUgbmFtZT4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRpcmVjdG9yeT4gLi4uXG4iCisiICAtLXVucGFjayAgICAgICAgICAgPC5kZWIgZmlsZSBuYW1lPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyZWN0b3J5PiAuLi5cbiIKKyIgIC1BfC0tcmVjb3JkLWF2YWlsICA8LmRlYiBmaWxlIG5hbWU+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXJlY3Rvcnk+IC4uLlxuIgorIiAgLS1jb25maWd1cmUgICAgICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC0tdHJpZ2dlcnMtb25seSAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtcnwtLXJlbW92ZSAgICAgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLVB8LS1wdXJnZSAgICAgICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC0tZ2V0LXNlbGVjdGlvbnMgWzxwYXR0ZXJuPiAuLi5dIM6bzq7PiM63IM67zq/Pg8+EzrHPgiDOtc+AzrnOu86/zrPPjs69IM+Dz4TOvyBzdGRvdXQuXG4iCisiICAtLXNldC1zZWxlY3Rpb25zICAgICAgICAgICAgICAgICDOms6xzrjOv8+BzrnPg868z4zPgiDOtc+AzrnOu86/zrPOrs+CIM+AzrHOus6tz4TPic69IM6xz4DPjCDPhM6/ICIKKyJzdGRpbi5cbiIKKyIgIC0tY2xlYXItc2VsZWN0aW9ucyAgICAgICAgICAgICAgIM6Rz4DOv861z4DOuc67zr/Os86uIM66zqzOuM61IM68zrctzr/Phc+DzrnPjs60zr/Phc+CIM+AzrHOus6tz4TOv8+FLlxuIgorIiAgLS11cGRhdGUtYXZhaWwgPFBhY2thZ2VzLWZpbGU+ICAgzpHOvc+EzrnOus6xz4TOrM+Dz4TOsc+Dzrcgz4TOt8+CIM+AzrvOt8+Bzr/Phs6/z4HOr86xz4IgzrPOuc6xIM+EzrEgIgorIs60zrnOsc64zq3Pg865zrzOsSDPgM6xzrrOrc+EzrEuXG4iCisiICAtLW1lcmdlLWF2YWlsIDxQYWNrYWdlcy1maWxlPiAgICDOo8+FzrPPh8+Ozr3Otc+Fz4POtyDOvM61IM+AzrvOt8+Bzr/Phs6/z4HOr86xIM6xz4DPjCDOsc+Bz4fOtc6vzr8uXG4iCisiICAtLWNsZWFyLWF2YWlsICAgICAgICAgICAgICAgICAgICDOlM65zrHOs8+BzrHPhs6uIM+EzrfPgiDPhc+AzqzPgc+Hzr/Phc+DzrHPgiDPgM67zrfPgc6/z4bOv8+Bzq/Osc+CIM6zzrnOsSAiCisiz4TOsSDOtM65zrHOuM6tz4POuc68zrEgz4DOsc66zq3PhM6xLlxuIgorIiAgLS1mb3JnZXQtb2xkLXVuYXZhaWwgICAgICAgICAgICAgzp7Orc+HzrHPg861IM+EzrEgzrzOtyDOtc6zzrrOsc+EzrXPg8+EzrfOvM6tzr3OsSDOvM63Lc60zrnOsc64zq3Pg865zrzOsSAiCisiz4DOsc66zq3PhM6xLlxuIgorIiAgLXN8LS1zdGF0dXMgPHBhY2thZ2U+IC4uLiAgICAgICAgzpXOvM+GzqzOvc65z4POtyDOu861z4DPhM6/zrzOtc+BzrXOuc+Ozr0gzrrOsc+EzqzPg8+EzrHPg863z4IgIgorIs+AzrHOus6tz4TOv8+FLlxuIgorIiAgLXB8LS1wcmludC1hdmFpbCA8cGFja2FnZT4gLi4uICAgzpXOvM+GzqzOvc65z4POtyDOu861z4DPhM6/zrzOtc+BzrXOuc+Ozr0gzrTOuc6xzrjOrc+DzrnOvM+Jzr0gIgorIs61zrrOtM+Mz4POtc+Jzr0uXG4iCisiICAtTHwtLWxpc3RmaWxlcyA8cGFja2FnZT4gLi4uICAgICDOoM6xz4HOrM64zrXPg863IM6xz4HPh861zq/Pic69IGDOuc60zrnOv866z4TOt8+Dzq/Osc+CJyDPhM6/z4Uoz4TPic69KSAiCisiz4DOsc66zq3PhM6/z4Uoz4nOvSkuXG4iCisiICAtbHwtLWxpc3QgWzxwYXR0ZXJuPiAuLi5dICAgICAgICDOo8+FzrzPgM+Ez4XOs868zq3Ovc63IM+AzrHPgc6szrjOtc+Dzrcgz4DOsc66zq3PhM+Jzr0uXG4iCisiICAtU3wtLXNlYXJjaCA8cGF0dGVybj4gLi4uICAgICAgICDOlc+Nz4HOtc+Dzrcgz4DOsc66zq3PhM6/z4Uoz4nOvSkgz4PPhM6xIM6/z4DOv86vzrEgzrHOvc6uzrrOv8+Fzr0gz4TOsSAiCisizrHPgc+HzrXOr86xLlxuIgorIiAgLUN8LS1hdWRpdCAgICAgICAgICAgICAgICAgICAgICAgzojOu861zrPPh86/z4IgzrPOuc6xIM+Dz4DOsc+DzrzOrc69zrEgz4DOsc66zq3PhM6xLlxuIgorIiAgLS1wcmludC1hcmNoaXRlY3R1cmUgICAgICAgICAgICAgzpXOus+Ez43PgM+Jz4POtyDPhM63z4IgzrHPgc+HzrnPhM61zrrPhM6/zr3Ouc66zq7PgiDPhM6/z4UgZHBrZy5cbiIKKyIgIC0tY29tcGFyZS12ZXJzaW9ucyA8YT4gPG9wPiA8Yj4gIM6jz43Os866z4HOuc+Dzrcgz4TPic69IM6xz4HOuc64zrzPjs69IM61zrrOtM+Mz4POtc+Jzr0gIC0gzrTOtc6vz4TOtSAiCisiz4DOsc+BzrHOus6sz4TPiS5cbiIKKyIgIC0tZm9yY2UtaGVscCAgICAgICAgICAgICAgICAgICAgIM6VzrzPhs6szr3Ouc+DzrcgzrLOv86uzrjOtc65zrHPgiDOs865zrEgz4TOuc+CIM61z4DOuc67zr/Os86tz4IgIgorImZvcmNpbmcuXG4iCisiICAtRGh8LS1kZWJ1Zz1oZWxwICAgICAgICAgICAgICAgICDOlc68z4bOrM69zrnPg863IM6yzr/Ors64zrXOuc6xz4IgzrPOuc6xIM+EzrfOvSDOsc+Azr/Pg8+GzrHOu868zqzPhM+Jz4POty5cbiIKKyJcbiIKKworIzogc3JjL21haW4uYzoxMTMgc3JjL3F1ZXJ5Y21kLmM6NjMxIHNyYy90cmlnY21kLmM6NzcgZHBrZy1kZWIvbWFpbi5jOjg4CisjOiBkcGtnLXNwbGl0L21haW4uYzo3NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIiAgLWh8LS1oZWxwICAgICAgICAgICAgICAgICAgICAgICAgU2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCittc2dzdHIgIiIKKyIgIC1ofC0taGVscCAgICAgICAgICAgICAgICAgICAgICAgIM6VzrzPhs6szr3Ouc+DzrcgzrHPhc+Ezr/PjSDPhM6/z4UgzrzOt869z43OvM6xz4TOv8+CIM6yzr/Ors64zrXOuc6xz4IuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgICAgICAgICDOlc68z4bOrM69zrnPg863IM+EzrfPgiDOrc66zrTOv8+DzrfPgi5cbiIKKyIgIC0tbGljZW5zZXwtLWxpY2VuY2UgICAgICAgICAgICAgIM6VzrzPhs6szr3Ouc+Dzrcgz4TPic69IM+Mz4HPic69IM60zrnOus6xzrnPic68zqzPhM+Jzr0gIgorIs6xzrTOtc65zr/OtM+Mz4TOt8+DzrfPgi5cbiIKKyJcbiIKKworIzogc3JjL21haW4uYzoxMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlVzZSBkcGtnIC1ifC0tYnVpbGR8LWN8LS1jb250ZW50c3wtZXwtLWNvbnRyb2x8LUl8LS1pbmZvfC1mfC0tZmllbGR8XG4iCisiIC14fC0tZXh0cmFjdHwtWHwtLXZleHRyYWN0fC0tZnN5cy10YXJmaWxlICBvbiBhcmNoaXZlcyAodHlwZSAlcyAtLWhlbHApLlxuIgorIlxuIgorbXNnc3RyICIiCisizqfPgc63z4POuc68zr/PgM6/zq/Ot8+DzrcgZHBrZyAtYnwtLWJ1aWxkfC1jfC0tY29udGVudHN8LWV8LS1jb250cm9sfC1JfC0taW5mb3wtZnwtLSIKKyJmaWVsZHxcbiIKKyIgLXh8LS1leHRyYWN0fC1YfC0tdmV4dHJhY3R8LS1mc3lzLXRhcmZpbGUgIM+Dz4TOsSDOsc+Bz4fOtc6vzrEgKM+AzrvOt866z4TPgc6/zrvOv86zzq7Pg8+EzrUgJXMgLS0iCisiaGVscCkuXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTIzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJGb3IgaW50ZXJuYWwgdXNlOiBkcGtnIC0tYXNzZXJ0LXN1cHBvcnQtcHJlZGVwZW5kcyB8IC0tcHJlZGVwLXBhY2thZ2UgfFxuIgorIiAgLS1hc3NlcnQtd29ya2luZy1lcG9jaCB8IC0tYXNzZXJ0LWxvbmctZmlsZW5hbWVzIHwgLS1hc3NlcnQtbXVsdGktY29ucmVwLlxuIgorIlxuIgorbXNnc3RyICIiCisizpPOuc6xIM61z4PPic+EzrXPgc65zrrOriDPh8+Bzq7Pg863OiBkcGtnIC0tYXNzZXJ0LXN1cHBvcnQtcHJlZGVwZW5kcyB8IC0tcHJlZGVwLXBhY2thZ2UgfFxuIgorIiAgLS1hc3NlcnQtd29ya2luZy1lcG9jaCB8IC0tYXNzZXJ0LWxvbmctZmlsZW5hbWVzIHwgLS1hc3NlcnQtbXVsdGktY29ucmVwLlxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjEyOAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIk9wdGlvbnM6XG4iCisjfCAiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyN8ICIgIC0tcm9vdD08ZGlyZWN0b3J5PiAgICAgICAgIEluc3RhbGwgb24gYSBkaWZmZXJlbnQgcm9vdCBkaXJlY3RvcnkuXG4iCisjfCAiICAtLWluc3RkaXI9PGRpcmVjdG9yeT4gICAgICBDaGFuZ2UgaW5zdGFsbGF0aW9uIGRpciB3aXRob3V0IGNoYW5naW5nICIKKyN8ICJhZG1pbiBkaXIuXG4iCisjfCAiICAtT3wtLXNlbGVjdGVkLW9ubHkgICAgICAgICBTa2lwIHBhY2thZ2VzIG5vdCBzZWxlY3RlZCBmb3IgaW5zdGFsbC8iCisjfCAidXBncmFkZS5cbiIKKyN8ICIgIC1FfC0tc2tpcC1zYW1lLXZlcnNpb24gICAgIFNraXAgcGFja2FnZXMgd2hvc2Ugc2FtZSB2ZXJzaW9uIGlzICIKKyN8ICJpbnN0YWxsZWQuXG4iCisjfCAiICAtR3wtLXJlZnVzZS1kb3duZ3JhZGUgICAgICBTa2lwIHBhY2thZ2VzIHdpdGggZWFybGllciB2ZXJzaW9uIHRoYW4gIgorI3wgImluc3RhbGxlZC5cbiIKKyN8ICIgIC1CfC0tYXV0by1kZWNvbmZpZ3VyZSAgICAgIEluc3RhbGwgZXZlbiBpZiBpdCB3b3VsZCBicmVhayBzb21lIG90aGVyICIKKyN8ICJwYWNrYWdlLlxuIgorI3wgIiAgLS1bbm8tXXRyaWdnZXJzICAgICAgICAgICAgU2tpcCBvciBmb3JjZSBjb25zZXF1ZW50aWFsIHRyaWdnZXIgIgorI3wgInByb2Nlc3NpbmcuXG4iCisjfCAiICAtLW5vLWRlYnNpZyAgICAgICAgICAgICAgICBEbyBub3QgdHJ5IHRvIHZlcmlmeSBwYWNrYWdlIHNpZ25hdHVyZXMuXG4iCisjfCAiICAtLW5vLWFjdHwtLWRyeS1ydW58LS1zaW11bGF0ZVxuIgorI3wgIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSnVzdCBzYXkgd2hhdCB3ZSB3b3VsZCBkbyAtIGRvbid0IGRvIGl0LlxuIgorI3wgIiAgLUR8LS1kZWJ1Zz08b2N0YWw+ICAgICAgICAgRW5hYmxlIGRlYnVnZ2luZyAoc2VlIC1EaGVscCBvciAtLSIKKyN8ICJkZWJ1Zz1oZWxwKS5cbiIKKyN8ICIgIC0tc3RhdHVzLWZkIDxuPiAgICAgICAgICAgIFNlbmQgc3RhdHVzIGNoYW5nZSB1cGRhdGVzIHRvIGZpbGUgIgorI3wgImRlc2NyaXB0b3IgPG4+LlxuIgorI3wgIiAgLS1sb2c9PGZpbGVuYW1lPiAgICAgICAgICAgTG9nIHN0YXR1cyBjaGFuZ2VzIGFuZCBhY3Rpb25zIHRvICIKKyN8ICI8ZmlsZW5hbWU+LlxuIgorI3wgIiAgLS1pZ25vcmUtZGVwZW5kcz08cGFja2FnZT4sLi4uXG4iCisjfCAiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZ25vcmUgZGVwZW5kZW5jaWVzIGludm9sdmluZyA8cGFja2FnZT4uXG4iCisjfCAiICAtLWZvcmNlLS4uLiAgICAgICAgICAgICAgICBPdmVycmlkZSBwcm9ibGVtcyAoc2VlIC0tZm9yY2UtaGVscCkuXG4iCisjfCAiICAtLW5vLWZvcmNlLS4uLnwtLXJlZnVzZS0uLi5cbiIKKyN8ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3Agd2hlbiBwcm9ibGVtcyBlbmNvdW50ZXJlZC5cbiIKKyN8ICIgIC0tYWJvcnQtYWZ0ZXIgPG4+ICAgICAgICAgIEFib3J0IGFmdGVyIGVuY291bnRlcmluZyA8bj4gZXJyb3JzLlxuIgorI3wgIlxuIgorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hZG1pbmRpcj08ZGlyZWN0b3J5PiAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMuXG4iCisiICAtLXJvb3Q9PGRpcmVjdG9yeT4gICAgICAgICBJbnN0YWxsIG9uIGEgZGlmZmVyZW50IHJvb3QgZGlyZWN0b3J5LlxuIgorIiAgLS1pbnN0ZGlyPTxkaXJlY3Rvcnk+ICAgICAgQ2hhbmdlIGluc3RhbGxhdGlvbiBkaXIgd2l0aG91dCBjaGFuZ2luZyBhZG1pbiAiCisiZGlyLlxuIgorIiAgLS1wYXRoLWV4Y2x1ZGU9PHBhdHRlcm4+ICAgRG8gbm90IGluc3RhbGwgcGF0aHMgd2hpY2ggbWF0Y2ggYSBzaGVsbCAiCisicGF0dGVybi5cbiIKKyIgIC0tcGF0aC1pbmNsdWRlPTxwYXR0ZXJuPiAgIFJlLWluY2x1ZGUgYSBwYXR0ZXJuIGFmdGVyIGEgcHJldmlvdXMgIgorImV4Y2x1c2lvbi5cbiIKKyIgIC1PfC0tc2VsZWN0ZWQtb25seSAgICAgICAgIFNraXAgcGFja2FnZXMgbm90IHNlbGVjdGVkIGZvciBpbnN0YWxsLyIKKyJ1cGdyYWRlLlxuIgorIiAgLUV8LS1za2lwLXNhbWUtdmVyc2lvbiAgICAgU2tpcCBwYWNrYWdlcyB3aG9zZSBzYW1lIHZlcnNpb24gaXMgaW5zdGFsbGVkLlxuIgorIiAgLUd8LS1yZWZ1c2UtZG93bmdyYWRlICAgICAgU2tpcCBwYWNrYWdlcyB3aXRoIGVhcmxpZXIgdmVyc2lvbiB0aGFuICIKKyJpbnN0YWxsZWQuXG4iCisiICAtQnwtLWF1dG8tZGVjb25maWd1cmUgICAgICBJbnN0YWxsIGV2ZW4gaWYgaXQgd291bGQgYnJlYWsgc29tZSBvdGhlciAiCisicGFja2FnZS5cbiIKKyIgIC0tW25vLV10cmlnZ2VycyAgICAgICAgICAgIFNraXAgb3IgZm9yY2UgY29uc2VxdWVudGlhbCB0cmlnZ2VyICIKKyJwcm9jZXNzaW5nLlxuIgorIiAgLS1uby1kZWJzaWcgICAgICAgICAgICAgICAgRG8gbm90IHRyeSB0byB2ZXJpZnkgcGFja2FnZSBzaWduYXR1cmVzLlxuIgorIiAgLS1uby1hY3R8LS1kcnktcnVufC0tc2ltdWxhdGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEp1c3Qgc2F5IHdoYXQgd2Ugd291bGQgZG8gLSBkb24ndCBkbyBpdC5cbiIKKyIgIC1EfC0tZGVidWc9PG9jdGFsPiAgICAgICAgIEVuYWJsZSBkZWJ1Z2dpbmcgKHNlZSAtRGhlbHAgb3IgLS1kZWJ1Zz1oZWxwKS5cbiIKKyIgIC0tc3RhdHVzLWZkIDxuPiAgICAgICAgICAgIFNlbmQgc3RhdHVzIGNoYW5nZSB1cGRhdGVzIHRvIGZpbGUgZGVzY3JpcHRvciAiCisiPG4+LlxuIgorIiAgLS1sb2c9PGZpbGVuYW1lPiAgICAgICAgICAgTG9nIHN0YXR1cyBjaGFuZ2VzIGFuZCBhY3Rpb25zIHRvIDxmaWxlbmFtZT4uXG4iCisiICAtLWlnbm9yZS1kZXBlbmRzPTxwYWNrYWdlPiwuLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIElnbm9yZSBkZXBlbmRlbmNpZXMgaW52b2x2aW5nIDxwYWNrYWdlPi5cbiIKKyIgIC0tZm9yY2UtLi4uICAgICAgICAgICAgICAgIE92ZXJyaWRlIHByb2JsZW1zIChzZWUgLS1mb3JjZS1oZWxwKS5cbiIKKyIgIC0tbm8tZm9yY2UtLi4ufC0tcmVmdXNlLS4uLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcCB3aGVuIHByb2JsZW1zIGVuY291bnRlcmVkLlxuIgorIiAgLS1hYm9ydC1hZnRlciA8bj4gICAgICAgICAgQWJvcnQgYWZ0ZXIgZW5jb3VudGVyaW5nIDxuPiBlcnJvcnMuXG4iCisiXG4iCittc2dzdHIgIiIKKyLOlc+AzrnOu86/zrPOrc+COlxuIgorIiAgLS1hZG1pbmRpcj08ZGlyZWN0b3J5PiAgICAgzqfPgc6uz4POtyDPhM6/z4UgPGRpcmVjdG9yeT4gzrHOvc+Ezq8gz4TOv8+FICVzLlxuIgorIiAgLS1yb290PTxkaXJlY3Rvcnk+ICAgICAgICAgzrXOs866zrHPhM6sz4PPhM6xz4POtyDPg861IM6tzr3Osc69IM60zrnOsc+Gzr/Pgc61z4TOuc66z4wgz4HOuc62zrnOus+MICIKKyLOus6xz4TOrM67zr/Os86/LlxuIgorIiAgLS1pbnN0ZGlyPTxkaXJlY3Rvcnk+ICAgICAgzpHOu867zrHOs86uIM66zrHPhM6xzrvPjM6zzr/PhSDOtc6zzrrOsc+EzqzPg8+EzrHPg863z4Igz4fPic+Bzq/PgiDOsc67zrvOsc6zzq4gz4TOv8+FICIKKyLOtM65zrHPh861zrnPgc65z4PPhM65zrrOv8+NIM66zrHPhM6xzrvPjM6zzr/PhS5cbiIKKyIgIC1PfC0tc2VsZWN0ZWQtb25seSAgICAgICAgIM6gzrHPgc6szrvOtc65z4jOtyDPgM6xzrrOrc+Ez4nOvSDPgM6/z4UgzrTOtc69IM6tz4fOv8+Fzr0gzrXPgM65zrvOtc6zzrXOryDOs865zrEgIgorIs61zrPOus6xz4TOrM+Dz4TOsc+DzrcvzrHOvc6xzrLOrM64zrzOuc+DzrcuXG4iCisiICAtRXwtLXNraXAtc2FtZS12ZXJzaW9uICAgICDOoM6xz4HOrM67zrXOuc+Izrcgz4DOsc66zq3PhM+Jzr0gzrzOtSDOtc6zzrrOsc+EzrXPg8+EzrfOvM6tzr3OtyDPhM63zr0gzq/OtM65zrEgIgorIs6tzrrOtM6/z4POty5cbiIKKyIgIC1HfC0tcmVmdXNlLWRvd25ncmFkZSAgICAgIM6gzrHPgc6szrvOtc65z4jOtyDPgM6xzrrOrc+Ez4nOvSDOvM61IM6tzrrOtM6/z4POtyDPgM+Bzr/Os861zr3Orc+Dz4TOtc+Bzrcgz4TOt8+CICIKKyLOtc6zzrrOsc+EzrXPg8+EzrfOvM6tzr3Ot8+CLlxuIgorIiAgLUJ8LS1hdXRvLWRlY29uZmlndXJlICAgICAgzrXOs866zrHPhM6sz4PPhM6xz4POtyDOsc66z4zOvM6xIM66zrkgzrHOvSDOsc+Fz4TPjCDOus6xz4TOsc67z43Otc65IM66zqzPgM6/zrnOvyAiCisizqzOu867zr8gz4DOsc66zq3PhM6/LlxuIgorIiAgLS1bbm8tXXRyaWdnZXJzICAgICAgICAgICAgzqDOsc+BzqzOu861zrnPiM63IM6uIM61z4DOuc6yzr/Ou86uIM6xzrrOv867zr/Phc64zrnOsc66zq7PgiDOtc+AzrXOvs61z4HOs86xz4POr86xz4IgIgorIs+Ez4nOvSB0cmlnZ2VyLlxuIgorIiAgLS1uby1kZWJzaWcgICAgICAgICAgICAgICAgzp3OsSDOvM63zr0gzrPOr869zrXOuSDPgM+Bzr/Pg8+AzqzOuM61zrnOsSDOtc+AzrHOu86uzrjOtc+Fz4POt8+CIM+Ez4nOvSAiCisiz4XPgM6/zrPPgc6xz4bPjs69IM+Ez4nOvSDPgM6xzrrOrc+Ez4nOvS5cbiIKKyIgIC0tbm8tYWN0fC0tZHJ5LXJ1bnwtLXNpbXVsYXRlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICDOkc+AzrvOrCDPgM61z4Igz4TOuSDOuM6xIM6zzrnOvc+Mz4TOsc69IC0gzrzOt869IM+Ezr8gzrrOrM69zrXOuc+CLlxuIgorIiAgLUR8LS1kZWJ1Zz08b2N0YWw+ICAgICAgICAgzpXOvc61z4HOs86/z4DOv86vzrfPg863IM6xz4DOv8+Dz4bOsc67zrzOrM+Ez4nPg863z4IgKM60zrXPgiAtRGhlbHAgzq4gLS0iCisiZGVidWc9aGVscCkuXG4iCisiICAtLXN0YXR1cy1mZCA8bj4gICAgICAgICAgICDOkc+Azr/Pg8+Ezr/Ou86uIM+EzrfPgiDOtc69zrfOvM6tz4HPic+DzrfPgiDOsc67zrvOsc6zz47OvSDOus6xz4TOrM+Dz4TOsc+DzrfPgiDPg8+Ezr8gIgorImZpbGUgZGVzY3JpcHRvciA8bj4uXG4iCisiICAtLWxvZz08ZmlsZW5hbWU+ICAgICAgICAgICDOms6xz4TOsc6zz4HOsc+Gzq4gzrHOu867zrHOs8+Ozr0gzrrOsc+EzqzPg8+EzrHPg863z4IgzrrOsc65IM61zr3Otc+BzrPOtc65z47OvSDPg8+Ezr8gIgorIs6xz4HPh861zq/OvyA8ZmlsZW5hbWU+LlxuIgorIiAgLS1pZ25vcmUtZGVwZW5kcz08cGFja2FnZT4sLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICDOkc6zzr3PjM63z4POtSDPhM65z4IgzrXOvs6xz4HPhM6uz4POtc65z4Igz4DOv8+FIM+AzrXPgc65zrvOsc68zrLOrM69zr/Phc69IM+Ezr8gIgorIs+AzrHOus6tz4TOvyAgPHBhY2thZ2U+LlxuIgorIiAgLS1mb3JjZS0uLi4gICAgICAgICAgICAgICAgzqXPgM61z4HPg866zq3Ou865z4POtSDPhM6xIM+Az4HOv86yzrvOrs68zrHPhM6xICjOtM61z4IgLS1mb3JjZS1oZWxwKS5cbiIKKyIgIC0tbm8tZm9yY2UtLi4ufC0tcmVmdXNlLS4uLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgzqTOtc+BzrzOsc+EzrnPg868z4zPgiDPjM+Azr/PhM61IM+Az4HOv866z43PgM+Ezr/Phc69IM+Az4HOv86yzrvOrs68zrHPhM6xLlxuIgorIiAgLS1hYm9ydC1hZnRlciA8bj4gICAgICAgICAgzqTOtc+BzrzOsc+EzrnPg868z4zPgiDOvM61z4TOrCDPhM63zr0gzrHOvc+EzrnOvM61z4TPjs+AzrnPg863IDxuPiAiCisiz4PPhs6xzrvOvM6sz4TPic69LlxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjE1NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tcGFyaXNvbiBvcGVyYXRvcnMgZm9yIC0tY29tcGFyZS12ZXJzaW9ucyBhcmU6XG4iCisiICBsdCBsZSBlcSBuZSBnZSBndCAgICAgICAodHJlYXQgZW1wdHkgdmVyc2lvbiBhcyBlYXJsaWVyIHRoYW4gYW55ICIKKyJ2ZXJzaW9uKTtcbiIKKyIgIGx0LW5sIGxlLW5sIGdlLW5sIGd0LW5sICh0cmVhdCBlbXB0eSB2ZXJzaW9uIGFzIGxhdGVyIHRoYW4gYW55IHZlcnNpb24pO1xuIgorIiAgPCA8PCA8PSA9ID49ID4+ID4gICAgICAgKG9ubHkgZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBjb250cm9sIGZpbGUgIgorInN5bnRheCkuXG4iCisiXG4iCittc2dzdHIgIiIKKyLOpM61zrvOtc+Dz4TOrc+CIM+Dz43Os866z4HOuc+DzrfPgiDOs865zrEgz4TOt869IM61z4DOuc67zr/Os86uIC0tY29tcGFyZS12ZXJzaW9ucyDOtc6vzr3Osc65OlxuIgorIiAgbHQgbGUgZXEgbmUgZ2UgZ3QgICAgICAgKM6xzr3PhM65zrzOtc+Ez47PgM65z4POtSDPhM63zr0gzrrOtc69zq4gzq3Ous60zr/Pg863IM+DzrHOvSDPgM+Bzr/Os861zr3Orc+Dz4TOtc+BzrcgzrHPgM+MICIKKyLOv8+Azr/Ouc6xzrTOrs+Azr/PhM61IM6szrvOu863KTtcbiIKKyIgIGx0LW5sIGxlLW5sIGdlLW5sIGd0LW5sICjOsc69z4TOuc68zrXPhM+Oz4DOuc+DzrUgz4TOt869IM66zrXOvc6uIM6tzrrOtM6/z4POtyDPg86xzr0gzrzOtc+EzrHOs861zr3Orc+Dz4TOtc+BzrcgIgorIs6xz4DPjCDOv8+Azr/Ouc6xzrTOrs+Azr/PhM61IM6szrvOu863KTtcbiIKKyIgIDwgPDwgPD0gPSA+PSA+PiA+ICAgICAgICjOvM+Mzr3OvyDOs865zrEgz4PPhc68zrLOsc+Ez4zPhM63z4TOsSDOvM61IM+EzrfOvSDPg8+Nzr3PhM6xzr7OtyDPhM6/z4UgzrHPgc+HzrXOr86/z4UgIgorIs61zrvOrc6zz4fOv8+FKS5cbiIKKyJcbiIKKworIzogc3JjL21haW4uYzoxNjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiVXNlIGBkc2VsZWN0JyBvciBgYXB0aXR1ZGUnIGZvciB1c2VyLWZyaWVuZGx5IHBhY2thZ2UgbWFuYWdlbWVudC5cbiIKK21zZ3N0ciAiIgorIs6nz4HOt8+DzrnOvM6/z4DOv865zq7Pg8+EzrUgz4TOsSBgZHNlbGVjdCcgzq4gYGFwdGl0dWRlJyDOs865zrEgz4bOuc67zrnOus6uIM+Az4HOv8+CIM+Ezr/OvSDPh8+Bzq7Pg8+EzrcgIgorIs60zrnOsc+HzrXOr8+BzrnPg863IM+AzrHOus6tz4TPic69LlxuIgorCisjOiBzcmMvbWFpbi5jOjE3MAorIywgZnV6enkKK21zZ2lkICIiCisiVHlwZSBkcGtnIC0taGVscCBmb3IgaGVscCBhYm91dCBpbnN0YWxsaW5nIGFuZCBkZWluc3RhbGxpbmcgcGFja2FnZXMgWypdO1xuIgorIlVzZSBgZHNlbGVjdCcgb3IgYGFwdGl0dWRlJyBmb3IgdXNlci1mcmllbmRseSBwYWNrYWdlIG1hbmFnZW1lbnQ7XG4iCisiVHlwZSBkcGtnIC1EaGVscCBmb3IgYSBsaXN0IG9mIGRwa2cgZGVidWcgZmxhZyB2YWx1ZXM7XG4iCisiVHlwZSBkcGtnIC0tZm9yY2UtaGVscCBmb3IgYSBsaXN0IG9mIGZvcmNpbmcgb3B0aW9ucztcbiIKKyJUeXBlIGRwa2ctZGViIC0taGVscCBmb3IgaGVscCBhYm91dCBtYW5pcHVsYXRpbmcgKi5kZWIgZmlsZXM7XG4iCisiXG4iCisiT3B0aW9ucyBtYXJrZWQgWypdIHByb2R1Y2UgYSBsb3Qgb2Ygb3V0cHV0IC0gcGlwZSBpdCB0aHJvdWdoIGBsZXNzJyBvciAiCisiYG1vcmUnICEiCittc2dzdHIgIiIKKyLOoM67zrfOus+Ez4HOv867zr/Os86uz4PPhM61IGRwa2cgLS1oZWxwIM6zzrnOsSDOss6/zq7OuM61zrnOsSDPg8+HzrXPhM65zrrOrCDOvM61IM+EzrfOvSAgzrXOs866zrHPhM6sz4PPhM6xz4POtyDOus6xzrkgIgorIs6xz4DOtc6zzrrOsc+EzqzPg8+EzrHPg863IM+AzrHOus6tz4TPic69IFsqXTtcbiIKKyLOp8+BzrfPg865zrzOv8+Azr/Ouc6uz4PPhM61IGBkc2VsZWN0JyDOriBgYXB0aXR1ZGUnIM6zzrnOsSDPhs65zrvOuc66zq4gz4DPgc6/z4Igz4TOv869IM+Hz4HOrs+Dz4TOtyDOtM65zrHPh861zq/Pgc65z4POtyAiCisiz4DOsc66zq3PhM+Jzr07XG4iCisizqDOu863zrrPhM+Bzr/Ou86/zrPOrs+Dz4TOtSBkcGtnIC1EaGVscCDOs865zrEgzrzOuc6xIM67zq/Pg8+EzrEgz4TPic69IM+EzrnOvM+Ozr0gz4POrs68zrHOvc+DzrfPgiDOtc66z4PPhs6xzrvOvM6sz4TPic+DzrfPgiAiCisiz4TOv8+FIGRwa2c7XG4iCisizqDOu863zrrPhM+Bzr/Ou86/zrPOrs+Dz4TOtSBkcGtnIC0tZm9yY2UtaGVscCDOs865zrEgzrzOuc6xIM67zq/Pg8+EzrEgz4TPic69IM61z4DOuc67zr/Os8+Ozr0gzrXOvs6xzr3Osc6zzrrOsc+DzrzOv8+NICIKKyIoZm9yY2luZyk7XG4iCisizqDOu863zrrPhM+Bzr/Ou86/zrPOrs+Dz4TOtSBkcGtnLWRlYiAtLWhlbHAgzrPOuc6xIM6yzr/Ors64zrXOuc6xIM+Dz4fOtc+EzrnOus6sIM68zrUgz4TOv869IM+HzrXOuc+BzrnPg868z4wgzrHPgc+Hzq3Ouc+Jzr0gKi4iCisiZGViO1xuIgorIs6gzrvOt866z4TPgc6/zrvOv86zzq7Pg8+EzrUgZHBrZyAtLWxpY2VuY2UgzrPOuc6xIM6szrTOtc65zrEgz4fPgc6uz4POt8+CIM66zrHOuSDPhM63zr0gzrHPgM6/z4XPg86vzrEgzrXOs86zz43Ot8+DzrfPgiAoR05VICIKKyJHUEwpIFsqXS5cbiIKKyJcbiIKKyLOn865IM61z4DOuc67zr/Os86tz4IgzrzOtSDPg86uzrzOsc69z4POtyBbKl0gz4DOsc+BzqzOs86/z4XOvSDOsc+BzrrOtc+Ez4wgz4DOtc+BzrnOtc+Hz4zOvM61zr3OvyAtIM+Hz4HOt8+DzrnOvM6/z4DOv865zq7Pg8+EzrUgzrzOuc6xICIKKyLPg8+JzrvOrs69z4nPg863IM68zrUgz4TOuc+CIGBsZXNzJyDOriBgbW9yZScgISIKKworIzogc3JjL21haW4uYzoyMTkKK21zZ2lkICJTZXQgYWxsIGZvcmNlIG9wdGlvbnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjEKK21zZ2lkICJSZXBsYWNlIGEgcGFja2FnZSB3aXRoIGEgbG93ZXIgdmVyc2lvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIyMworbXNnaWQgIkNvbmZpZ3VyZSBhbnkgcGFja2FnZSB3aGljaCBtYXkgaGVscCB0aGlzIG9uZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIyNQorbXNnaWQgIlByb2Nlc3MgaW5jaWRlbnRhbCBwYWNrYWdlcyBldmVuIHdoZW4gb24gaG9sZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIyNworbXNnaWQgIlRyeSB0byAoZGUpaW5zdGFsbCB0aGluZ3MgZXZlbiB3aGVuIG5vdCByb290IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjI5Cittc2dpZCAiUEFUSCBpcyBtaXNzaW5nIGltcG9ydGFudCBwcm9ncmFtcywgcHJvYmxlbXMgbGlrZWx5IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjMxCittc2dpZCAiSW5zdGFsbCBhIHBhY2thZ2UgZXZlbiBpZiBpdCBmYWlscyBhdXRoZW50aWNpdHkgY2hlY2siCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzMKK21zZ2lkICJQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyB2ZXJzaW9ucyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzNQorbXNnaWQgIk92ZXJ3cml0ZSBhIGZpbGUgZnJvbSBvbmUgcGFja2FnZSB3aXRoIGFub3RoZXIiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzcKK21zZ2lkICJPdmVyd3JpdGUgYSBkaXZlcnRlZCBmaWxlIHdpdGggYW4gdW5kaXZlcnRlZCB2ZXJzaW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjM5Cittc2dpZCAiT3ZlcndyaXRlIG9uZSBwYWNrYWdlJ3MgZGlyZWN0b3J5IHdpdGggYW5vdGhlcidzIGZpbGUiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDEKK21zZ2lkICJEbyBub3QgcGVyZm9ybSBzYWZlIEkvTyBvcGVyYXRpb25zIHdoZW4gdW5wYWNraW5nIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjQzCittc2dpZCAiQWx3YXlzIHVzZSB0aGUgbmV3IGNvbmZpZyBmaWxlcywgZG9uJ3QgcHJvbXB0IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjQ1Cittc2dpZCAiQWx3YXlzIHVzZSB0aGUgb2xkIGNvbmZpZyBmaWxlcywgZG9uJ3QgcHJvbXB0IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjQ4Cittc2dpZCAiIgorIlVzZSB0aGUgZGVmYXVsdCBvcHRpb24gZm9yIG5ldyBjb25maWcgZmlsZXMgaWYgb25lXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgIGlzIGF2YWlsYWJsZSwgZG9uJ3QgcHJvbXB0LiBJZiBubyBkZWZhdWx0IGNhbiBiZSAiCisiZm91bmQsXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgIHlvdSB3aWxsIGJlIHByb21wdGVkIHVubGVzcyBvbmUgb2YgdGhlIGNvbmZvbGQgb3JcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgY29uZm5ldyBvcHRpb25zIGlzIGFsc28gZ2l2ZW4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNTMKK21zZ2lkICJBbHdheXMgaW5zdGFsbCBtaXNzaW5nIGNvbmZpZyBmaWxlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI1NQorbXNnaWQgIk9mZmVyIHRvIHJlcGxhY2UgY29uZmlnIGZpbGVzIHdpdGggbm8gbmV3IHZlcnNpb25zIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjU3Cittc2dpZCAiUHJvY2VzcyBldmVuIHBhY2thZ2VzIHdpdGggd3Jvbmcgb3Igbm8gYXJjaGl0ZWN0dXJlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjU5Cittc2dpZCAiSW5zdGFsbCBldmVuIGlmIGl0IHdvdWxkIGJyZWFrIGFub3RoZXIgcGFja2FnZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI2MQorbXNnaWQgIkFsbG93IGluc3RhbGxhdGlvbiBvZiBjb25mbGljdGluZyBwYWNrYWdlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI2MworIywgZnV6enkKKyN8IG1zZ2lkICJkZXBlbmRlbmN5IHByb2JsZW1zIC0gbm90IHJlbW92aW5nIgorbXNnaWQgIlR1cm4gYWxsIGRlcGVuZGVuY3kgcHJvYmxlbXMgaW50byB3YXJuaW5ncyIKK21zZ3N0ciAiz4DPgc6/zrLOu86uzrzOsc+EzrEgzrXOvs6sz4HPhM63z4POt8+CIC0gzrTOtSDOs86vzr3Otc+EzrHOuSDOsc+GzrHOr8+BzrXPg863IgorCisjOiBzcmMvbWFpbi5jOjI2NQorIywgZnV6enkKKyN8IG1zZ2lkICJkZXBlbmRlbmN5IHByb2JsZW1zIC0gbm90IHJlbW92aW5nIgorbXNnaWQgIlR1cm4gZGVwZW5kZW5jeSB2ZXJzaW9uIHByb2JsZW1zIGludG8gd2FybmluZ3MiCittc2dzdHIgIs+Az4HOv86yzrvOrs68zrHPhM6xIM61zr7OrM+Bz4TOt8+DzrfPgiAtIM60zrUgzrPOr869zrXPhM6xzrkgzrHPhs6xzq/Pgc61z4POtyIKKworIzogc3JjL21haW4uYzoyNjcKK21zZ2lkICJSZW1vdmUgcGFja2FnZXMgd2hpY2ggcmVxdWlyZSBpbnN0YWxsYXRpb24iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNjkKK21zZ2lkICJSZW1vdmUgYW4gZXNzZW50aWFsIHBhY2thZ2UiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODEKK21zZ2lkICJHZW5lcmFsbHkgaGVscGZ1bCBwcm9ncmVzcyBpbmZvcm1hdGlvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4MgorIywgZnV6enkKK21zZ2lkICJJbnZvY2F0aW9uIGFuZCBzdGF0dXMgb2YgbWFpbnRhaW5lciBzY3JpcHRzIgorbXNnc3RyICLOsc60z43Ovc6xz4TOv8+CIM6/IM6/z4HOuc+DzrzPjM+CIM+Ezr/PhSBzZXRlbnYgzrPOuc6xIM+Ezr8gz4POtc69zqzPgc65zr8gz4PPhc69z4TOrs+BzrfPg863z4IgKG1haW50IHNjcmlwdCkiCisKKyM6IHNyYy9tYWluLmM6MjgzCittc2dpZCAiT3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg0Cittc2dpZCAiTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODUKKyMsIGZ1enp5CisjfCBtc2dpZCAicmVhZCBlcnJvciBpbiBjb25maWd1cmF0aW9uIGZpbGUgYCUuMjU1cyciCittc2dpZCAiT3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZSIKK21zZ3N0ciAiz4PPhs6szrvOvM6xIM6xzr3OrM6zzr3Pic+DzrfPgiDPg8+Ezr8gzrHPgc+HzrXOr86/IM+Bz4XOuM68zq/Pg861z4nOvSBgJS4yNTVzJyIKKworIzogc3JjL21haW4uYzoyODYKK21zZ2lkICJMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGUiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODcKK21zZ2lkICJEZXBlbmRlbmNpZXMgYW5kIGNvbmZsaWN0cyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4OAorbXNnaWQgIkxvdHMgb2YgZGVwZW5kZW5jaWVzL2NvbmZsaWN0cyBvdXRwdXQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODkKK21zZ2lkICJUcmlnZ2VyIGFjdGl2YXRpb24gYW5kIHByb2Nlc3NpbmciCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyOTAKK21zZ2lkICJMb3RzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyOTEKK21zZ2lkICJTaWxseSBhbW91bnRzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyOTIKK21zZ2lkICJMb3RzIG9mIGRyaXZlbCBhYm91dCBlZyB0aGUgZHBrZy9pbmZvIGRpcmVjdG9yeSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MworbXNnaWQgIkluc2FuZSBhbW91bnRzIG9mIGRyaXZlbCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjMwNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXMgZGVidWdnaW5nIG9wdGlvbiwgLS1kZWJ1Zz08b2N0YWw+IG9yIC1EPG9jdGFsPjpcbiIKKyJcbiIKKyIgTnVtYmVyICBSZWYuIGluIHNvdXJjZSAgIERlc2NyaXB0aW9uXG4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzozMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIkRlYnVnZ2luZyBvcHRpb25zIGNhbiBiZSBtaXhlZCB1c2luZyBiaXR3aXNlLW9yLlxuIgorIk5vdGUgdGhhdCB0aGUgbWVhbmluZ3MgYW5kIHZhbHVlcyBhcmUgc3ViamVjdCB0byBjaGFuZ2UuXG4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzozMTkKK21zZ2lkICItLWRlYnVnIHJlcXVpcmVzIGFuIG9jdGFsIGFyZ3VtZW50IgorbXNnc3RyICItLWRlYnVnIM6xz4DOsc65z4TOtc6vIM6tzr3OsSDOv866z4TOsc60zrnOus+MIM+Mz4HOuc+DzrzOsSIKKworIzogc3JjL21haW4uYzozNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAibnVsbCBwYWNrYWdlIG5hbWUgaW4gLS1pZ25vcmUtZGVwZW5kcyBjb21tYS1zZXBhcmF0ZWQgbGlzdCBgJS4yNTBzJyIKK21zZ3N0ciAiIgorIs68zrcgzr/Pgc65z4POvM6tzr3OvyDPjM69zr/OvM6xIM+AzrHOus6tz4TOv8+FIM+Dz4TOt869IM+Hz4nPgc65z4POvM6tzr3OtyDOvM61IM66z4zOvM68zrEgzrvOr8+Dz4TOsSDPhM63z4IgLS1pZ25vcmUtIgorImRlcGVuZHMgIGAlLjI1MHMnIgorCisjOiBzcmMvbWFpbi5jOjM1NAorIywgYy1mb3JtYXQKK21zZ2lkICItLWlnbm9yZS1kZXBlbmRzIHJlcXVpcmVzIGEgbGVnYWwgcGFja2FnZSBuYW1lLiBgJS4yNTBzJyBpcyBub3Q7ICVzIgorbXNnc3RyICIiCisizrcgLS1pZ25vcmUtZGVwZW5kcyDOsc+AzrHOuc+EzrXOryDOrc69zrEgzq3Os866z4XPgc6/IM+Mzr3Ov868zrEgz4DOsc66zq3PhM6/z4UuIM6kzr8gYCUuMjUwcycgzrTOtc69IM61zq/Ovc6xzrkuICIKKyIlcyIKKworIzogc3JjL21haW4uYzozNzEgc3JjL21haW4uYzozODEgc3JjL21haW4uYzo2NDkgZHBrZy1zcGxpdC9tYWluLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgaW50ZWdlciBmb3IgLS0lczogYCUuMjUwcyciCittc2dzdHIgIs68zrcgzq3Os866z4XPgc6/z4IgzrHOus6tz4HOsc65zr/PgiDOs865zrEgLS0lczogYCUuMjUwcyciCisKKyM6IHNyYy9tYWluLmM6NDM4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGV4ZWN1dGluZyBob29rICclcycsIGV4aXQgY29kZSAlZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjQ2NQorbXNnaWQgInN0YXR1cyBsb2dnZXIiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzo0ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzIGZvcmNpbmcgb3B0aW9ucyAtIGNvbnRyb2wgYmVoYXZpb3VyIHdoZW4gcHJvYmxlbXMgZm91bmQ6XG4iCisiICB3YXJuIGJ1dCBjb250aW51ZTogIC0tZm9yY2UtPHRoaW5nPiw8dGhpbmc+LC4uLlxuIgorIiAgc3RvcCB3aXRoIGVycm9yOiAgICAtLXJlZnVzZS08dGhpbmc+LDx0aGluZz4sLi4uIHwgLS1uby1mb3JjZS08dGhpbmc+LC4uLlxuIgorIiBGb3JjaW5nIHRoaW5nczpcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjQ5MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiV0FSTklORyAtIHVzZSBvZiBvcHRpb25zIG1hcmtlZCBbIV0gY2FuIHNlcmlvdXNseSBkYW1hZ2UgeW91ciBpbnN0YWxsYXRpb24uXG4iCisiRm9yY2luZyBvcHRpb25zIG1hcmtlZCBbKl0gYXJlIGVuYWJsZWQgYnkgZGVmYXVsdC5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjUwNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGZvcmNlL3JlZnVzZSBvcHRpb24gYCUuKnMnIgorbXNnc3RyICLOrM6zzr3Pic+Dz4TOtyDOtc+AzrnOu86/zrPOriBmb3JjZS9yZWZ1c2UgYCUuKnMnIgorCisjOiBzcmMvbWFpbi5jOjUxMworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAib2Jzb2xldGUgZm9yY2UvcmVmdXNlIG9wdGlvbiAnJXMnXG4iCittc2dzdHIgIs6gz4HOv861zrnOtM6/z4DOv86vzrfPg863OiDPgM6xz4HPic+HzrfOvM6tzr3OtyDOtc+AzrnOu86/zrPOriBmb3JjZS9yZWZ1c2UgYCVzJ1xuIgorCisjOiBzcmMvbWFpbi5jOjY0MworbXNnaWQgIi0tY29tbWFuZC1mZCB0YWtlcyBvbmUgYXJndW1lbnQsIG5vdCB6ZXJvIgorbXNnc3RyICLOtyDOtc69z4TOv867zq4gLS1jb21tYW5kLWZkIM+AzrHOr8+Bzr3Otc65IM6tzr3OsSDPjM+BzrnPg868zrEsIM+Mz4fOuSDOus6xzr3Orc69zrEiCisKKyM6IHNyYy9tYWluLmM6NjQ1Cittc2dpZCAiLS1jb21tYW5kLWZkIG9ubHkgdGFrZXMgb25lIGFyZ3VtZW50IgorbXNnc3RyICLOtyDOtc69z4TOv867zq4gLS1jb21tYW5kLWZkIM+AzrHOr8+Bzr3Otc65IM68z4zOvc6/IM6tzr3OsSDPjM+BzrnPg868zrEiCisKKyM6IHNyYy9tYWluLmM6NjUxCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkbid0IG9wZW4gYCVpJyBmb3Igc3RyZWFtIgorbXNnc3RyICLOsc60z43Ovc6xz4TOvyDPhM6/IM6szr3Ov865zrPOvM6xIM+Ezr/PhSBgJWknIM+Jz4Igz4HOv86uIChzdHJlYW0pIgorCisjOiBzcmMvbWFpbi5jOjY3NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVvZiBiZWZvcmUgZW5kIG9mIGxpbmUgJWQiCittc2dzdHIgIs6xz4DPgc+Mz4POvM61zr3OvyBlb2Ygz4DPgc65zr0gz4TOvyDPhM6tzrvOv8+CIM+EzrfPgiDOs8+BzrHOvM68zq7PgiAlZCIKKworIzogc3JjL21haW4uYzo3MTkgc3JjL21haW4uYzo3NDEgc3JjL3F1ZXJ5Y21kLmM6NjkyIHNyYy9zdGF0Y21kLmM6Mzc5CisjOiBkcGtnLWRlYi9tYWluLmM6MjAxIGRwa2ctc3BsaXQvbWFpbi5jOjE2MworbXNnaWQgIm5lZWQgYW4gYWN0aW9uIG9wdGlvbiIKK21zZ3N0ciAiz4fPgc61zrnOrM62zrXPhM6xzrkgzrzOuc6xIM61z4DOuc67zr/Os86uIM61zr3Orc+BzrPOtc65zrHPgiIKKworIzogc3JjL3BhY2thZ2VzLmM6MTEzCittc2dpZCAiIgorInlvdSBtdXN0IHNwZWNpZnkgcGFja2FnZXMgYnkgdGhlaXIgb3duIG5hbWVzLCBub3QgYnkgcXVvdGluZyB0aGUgbmFtZXMgb2YgIgorInRoZSBmaWxlcyB0aGV5IGNvbWUgaW4iCittc2dzdHIgIiIKKyLOmM6xIM+Az4HOrc+AzrXOuSDOvc6xIM6/z4HOr8+DzrXPhM61IM+EzrEgz4DOsc66zq3PhM6xIM68zrUgz4TOvyDPjM69zr/OvM6sIM+Ezr/Phc+CIM66zrHOuSDPjM+HzrkgzrzOtSDPhM6/IM+Mzr3Ov868zrEgz4TPic69ICIKKyLOsc+Bz4fOtc6vz4nOvSDPhM6/z4XPgiIKKworIzogc3JjL3BhY2thZ2VzLmM6MTMzCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgLS1wZW5kaW5nIGRvZXMgbm90IHRha2UgYW55IG5vbi1vcHRpb24gYXJndW1lbnRzIgorbXNnc3RyICItLSVzIC0tcGVuZGluZyDOtM61zr0gz4DOsc6vz4HOvc61zrkgzrrOsc69zq3Ovc6xIM+Mz4HOuc+DzrzOsSDOvM63IM61z4DOuc67zr/Os86uz4IiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjEzOCBzcmMvcXVlcnljbWQuYzozNzUgc3JjL3F1ZXJ5Y21kLmM6NTY1CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYXQgbGVhc3Qgb25lIHBhY2thZ2UgbmFtZSBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyDPh8+BzrXOuc6szrbOtc+EzrHOuSDPhM6/z4XOu86sz4fOuc+Dz4TOv869IM6tzr3OsSDPjM+BzrnPg868zrEgzr/Ovc+MzrzOsc+Ezr/PgiDPgM6xzrrOrc+Ezr/PhSIKKworIzogc3JjL3BhY2thZ2VzLmM6MTc5CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgJXMgbGlzdGVkIG1vcmUgdGhhbiBvbmNlLCBvbmx5IHByb2Nlc3Npbmcgb25jZS5cbiIKK21zZ3N0ciAiIgorIs6kzr8gz4DOsc66zq3PhM6/ICVzIM60z4zOuM63zrrOtSDPgM61z4HOuc+Dz4PPjM+EzrXPgc61z4IgzrHPgM+MIM68zq/OsSDPhs6/z4HOrc+CLCDOtyDOtc+AzrXOvs61z4HOs86xz4POr86xIM64zrEgzrPOr869zrXOuSDOvM+Mzr3OvyAiCisizrzOr86xIM+Gzr/Pgc6sLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzoxODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk1vcmUgdGhhbiBvbmUgY29weSBvZiBwYWNrYWdlICVzIGhhcyBiZWVuIHVucGFja2VkXG4iCisiIGluIHRoaXMgcnVuICEgIE9ubHkgY29uZmlndXJpbmcgaXQgb25jZS5cbiIKK21zZ3N0ciAiIgorIs6Iz4fOv8+Fzr0gzrHPgM6/z4PPhc68z4DOuc61z4PPhM61zq8gz4DOtc+BzrnPg8+Dz4zPhM61z4HOsSDOsc+Az4wgzq3Ovc6xIM6xzr3PhM6vzrPPgc6xz4bOsVxuIgorIs+Ezr/PhSDPgM6xzrrOrc+Ezr/PhSAlcyAhIM6YzrEgz4HPhc64zrzOuc+Dz4TOtc6vIM68z4zOvc6/IM68zrnOsSDPhs6/z4HOrC5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJwYWNrYWdlICUuMjUwcyBpcyBub3QgcmVhZHkgZm9yIHRyaWdnZXIgcHJvY2Vzc2luZ1xuIgorIiAoY3VycmVudCBzdGF0dXMgYCUuMjUwcycgd2l0aCBubyBwZW5kaW5nIHRyaWdnZXJzKSIKK21zZ3N0ciAiIgorIs+Ezr8gz4DOsc66zq3PhM6/ICUuMjUwcyDOtM61zr0gzrXOr869zrHOuSDOrc+Ezr/Ouc68zr8gzrPOuc6xIM61z4DOtc6+zrXPgc6zzrHPg86vzrEgdHJpZ2dlclxuIgorIiAoz4TPic+BzrnOvc6uIM66zrHPhM6sz4PPhM6xz4POtyBgJS4yNTBzJyDPh8+Jz4HOr8+CIHRyaWdnZXIgz4POtSDOtc66zrrPgc61zrzPjM+EzrfPhM6xKSIKKworIzogc3JjL3BhY2thZ2VzLmM6MzM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyB3aGljaCBwcm92aWRlcyAlcyBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIgIM6kzr8gz4DOsc66zq3PhM6/ICVzIM+Azr/PhSDPgM6xz4HOrc+HzrXOuSDPhM6/ICVzIM+Az4HPjM66zrXOuc+EzrHOuSDOvc6xIM6xz4bOsc65z4HOtc64zrXOry5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MzM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIgIM6kzr8gz4DOsc66zq3PhM6/ICVzIM+Az4HPjM66zrXOuc+EzrHOuSDOvc6xIM6xz4bOsc65z4HOtc64zrXOry5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MzU0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgVmVyc2lvbiBvZiAlcyBvbiBzeXN0ZW0gaXMgJXMuXG4iCittc2dzdHIgIiAgzpcgzq3Ous60zr/Pg863IM+Ezr/PhSAlcyDPg8+Ezr8gz4PPjc+Dz4TOt868zrEgzrXOr869zrHOuSAlcy5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6Mzc2CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyB3aGljaCBwcm92aWRlcyAlcyBhd2FpdHMgdHJpZ2dlciBwcm9jZXNzaW5nLlxuIgorbXNnc3RyICIiCisiICDOpM6/IM+AzrHOus6tz4TOvyAlcyDPgM6/z4Ugz4DOsc+Bzq3Ph861zrkgz4TOvyAlcyDPgM61z4HOuc68zq3Ovc61zrkgz4TOt869IM61z4DOtc6+zrXPgc6zzrHPg86vzrEgz4TPic69IHRyaWdnZXIuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjM4MAorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgYXdhaXRzIHRyaWdnZXIgcHJvY2Vzc2luZy5cbiIKK21zZ3N0ciAiICDOpM6/IM+AzrHOus6tz4TOvyAlcyDPgM61z4HOuc68zq3Ovc61zrkgz4TOt869IM61z4DOtc6+zrXPgc6zzrHPg86vzrEgz4TPic69IHRyaWdnZXIuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQxMAorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiBhbHNvIGNvbmZpZ3VyaW5nIGAlcycgKHJlcXVpcmVkIGJ5IGAlcycpXG4iCittc2dzdHIgImRwa2c6IM+Bz4XOuM68zq/Ots61z4TOsc65IM61z4DOr8+DzrfPgiDPhM6/IGAlcycgKM6xz4DOsc65z4TOtc6vz4TOsc65IM6xz4DPjCBgJXMnKVxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIHdoaWNoIHByb3ZpZGVzICVzIGlzIG5vdCBjb25maWd1cmVkIHlldC5cbiIKK21zZ3N0ciAiICDOpM6/IM+AzrHOus6tz4TOvyAlcyDPgM6/z4Ugz4DOsc+Bzq3Ph861zrkgz4TOvyAlcyDOtM61zr0gzq3Ph861zrkgzrHOus+MzrzOsSDPgc+FzrjOvM65z4PPhM61zq8uXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQyMQorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgaXMgbm90IGNvbmZpZ3VyZWQgeWV0LlxuIgorbXNnc3RyICIgIM6kzr8gz4DOsc66zq3PhM6/ICVzIM60zrXOvSDOrc+HzrXOuSDPgc+FzrjOvM65z4PPhM61zq8gzrHOus+MzrzOty5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyB3aGljaCBwcm92aWRlcyAlcyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIgIM6kzr8gz4DOsc66zq3PhM6/ICVzIM+Azr/PhSDPgM6xz4HOrc+HzrXOuSDPhM6/ICVzIM60zrXOvSDOtc6vzr3Osc65IM61zrPOus6xz4TOtc+Dz4TOt868zq3Ovc6/LlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIGlzIG5vdCBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgzqTOvyDPgM6xzrrOrc+Ezr8gJXMgzrTOtc69IM61zq/Ovc6xzrkgzrXOs866zrHPhM61z4PPhM63zrzOrc69zr8uXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQ3MgorIywgYy1mb3JtYXQKK21zZ2lkICIgJXMgKCVzKSBicmVha3MgJXMgYW5kIGlzICVzLlxuIgorbXNnc3RyICIgJXMgKCVzKSBcIs+Dz4DOrM61zrlcIiDPhM6/ICVzIM66zrHOuSDOtc6vzr3Osc65ICVzLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlcyAoJXMpIHByb3ZpZGVzICVzLlxuIgorbXNnc3RyICIgICVzICglcykgz4DOsc+Bzq3Ph861zrkgJXMuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQ4MgorIywgYy1mb3JtYXQKK21zZ2lkICIgIFZlcnNpb24gb2YgJXMgdG8gYmUgY29uZmlndXJlZCBpcyAlcy5cbiIKK21zZ3N0ciAiICDOlyDOrc66zrTOv8+Dzrcgz4TOv8+FICVzIM+Azr/PhSDPgM+Bz4zOus61zrnPhM6xzrkgzr3OsSDPgc+FzrjOvM65z4PPhM61zq8gzrXOr869zrHOuSAlcy5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NTk2Cittc2dpZCAiIGRlcGVuZHMgb24gIgorbXNnc3RyICIgzrXOvs6xz4HPhM6sz4TOsc65IM6xz4DPjCAiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjYwMgorbXNnaWQgIjsgaG93ZXZlcjpcbiIKK21zZ3N0ciAiLiDOqc+Dz4TPjM+Dzr86XG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiLi4uLyVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgZW5zdXJpbmcgYCUuMjUwcycgZG9lc24ndCBleGlzdCIKK21zZ3N0ciAiz4PPhs6szrvOvM6xIM66zrHPhM6sIM+EzrfOvSDOtc+AzrnOss61zrLOsc6vz4nPg863IM+Mz4TOuSDPhM6/IGAlLjI1MHMnIM60zrXOvSDPhc+AzqzPgc+HzrXOuSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5OQorbXNnaWQgInNwbGl0IHBhY2thZ2UgcmVhc3NlbWJseSIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEwOAorbXNnaWQgInJlYXNzZW1ibGVkIHBhY2thZ2UgZmlsZSIKK21zZ3N0ciAizrHOvc6xz4PPhc6zzrrPgc+Mz4TOt8+DzrcgzrHPgc+HzrXOr86/z4Ugz4DOsc66zq3PhM6/z4UiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTMzCisjLCBjLWZvcm1hdAorbXNnaWQgIkF1dGhlbnRpY2F0aW5nICVzIC4uLlxuIgorbXNnc3RyICLOk86vzr3Otc+EzrHOuSDPgM65z4PPhM6/z4DOv86vzrfPg863ICVzIC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEzOQorbXNnaWQgInBhY2thZ2Ugc2lnbmF0dXJlIHZlcmlmaWNhdGlvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE0NgorIywgYy1mb3JtYXQKK21zZ2lkICJWZXJpZmljYXRpb24gb24gcGFja2FnZSAlcyBmYWlsZWQhIgorbXNnc3RyICLOlyDOtc+AzrHOu86uzrjOtc+Fz4POtyDPhM6/z4Ugz4DOsc66zq3PhM6/z4UgJXMgzrHPgM6tz4TPhc+HzrUhIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE0OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVmVyaWZpY2F0aW9uIG9uIHBhY2thZ2UgJXMgZmFpbGVkLFxuIgorImJ1dCBpbnN0YWxsaW5nIGFueXdheSBhcyB5b3UgcmVxdWVzdGVkLlxuIgorbXNnc3RyICIiCisizpcgzrXPgM6xzrvOrs64zrXPhc+Dzrcgz4TOv8+FIM+AzrHOus6tz4TOv8+FICVzIM6xz4DOrc+Ez4XPh861LFxuIgorIs6xzrvOu86sIM64zrEgzrXOs866zrHPhM6xz4PPhM6xzrjOtc6vIM+Mz4DPic+CIM62zrfPhM6uz4POsc+EzrUuXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTUyCisjLCBjLWZvcm1hdAorbXNnaWQgInBhc3NlZFxuIgorbXNnc3RyICLOtc+AzrnPhM+Fz4fOrs+CXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTY1IGRwa2ctZGViL2luZm8uYzo4MQorIywgZnV6enkKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHRlbXBvcmFyeSBkaXJlY3RvcnkiCittc2dzdHIgIs6xz4DOrc+Ez4XPh861IM63IM60zrfOvM65zr/Phc+BzrPOr86xIM6/zr3PjM68zrHPhM6/z4Igz4DPgc6/z4PPic+BzrnOvc6/z40gzrrOsc+EzrHOu8+MzrPOv8+FICIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlcyBoYXMgdG9vIG1hbnkgQ29uZmxpY3RzL1JlcGxhY2VzIHBhaXJzIgorbXNnc3RyICLPhM6/IM+AzrHOus6tz4TOvyAlcyDOrc+HzrXOuSDPhc+AzrXPgc6yzr/Ou865zrrOrCDPgM6/zrvOu86sIM62zrXPjc6zzrcgQ29uZmxpY3RzL1JlcGxhY2VzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjI0MworIywgYy1mb3JtYXQKK21zZ2lkICJvbGQgdmVyc2lvbiBvZiBwYWNrYWdlIGhhcyBvdmVybHktbG9uZyBpbmZvIGZpbGUgbmFtZSBzdGFydGluZyBgJS4yNTBzJyIKK21zZ3N0ciAiIgorIs63IM+AzrHOu865zqwgzq3Ous60zr/Pg863IM+Ezr/PhSDPgM6xzrrOrc+Ezr/PhSDOrc+HzrXOuSDPhc+AzrXPgc6yzr/Ou865zrrOrCDOvM61zrPOrM67zr8gzrzOrs66zr/PgiDOv869z4zOvM6xz4TOv8+CIM6xz4HPh861zq/Ov8+FICIKKyLPgM67zrfPgc6/z4bOv8+BzrnPjs69YCUuMjUwcyciCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MjgxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgb2Jzb2xldGUgaW5mbyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLOsc60z43Ovc6xz4TOtyDOtyDOtM65zrHOs8+BzrHPhs6uIM+Ezr/PhSDPgM6xz4HPic+HzrfOvM6tzr3Ov8+FIM6xz4HPh861zq/Ov8+FIM+AzrvOt8+Bzr/Phs6/z4HOuc+Ozr0gYCUuMjUwcyciCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6Mjg2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIChzdXBwb3NlZCkgbmV3IGluZm8gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAizrHOtM+Nzr3Osc+EzrcgzrcgzrXOs866zrHPhM6sz4PPhM6xz4POtyAoz4XPgM6/z4TOuc64zq3OvM61zr3Ov8+FKSDOvc6tzr/PhSDOsc+Bz4fOtc6vzr/PhSDPgM67zrfPgc6/z4bOv8+BzrnPjs69IGAlLjI1MHMnIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjI5NgorbXNnaWQgInVuYWJsZSB0byBvcGVuIHRlbXAgY29udHJvbCBkaXJlY3RvcnkiCittc2dzdHIgIs6xzrTPjc69zrHPhM6/IM+Ezr8gzqzOvc6/zrnOs868zrEgz4DPgc6/z4PPic+BzrnOvc6/z40gzrrOsc+EzrHOu8+MzrPOv8+FIM61zrvOrc6zz4fOv8+FIChjb250cm9sKSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMDcKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBjb250YWlucyBvdmVybHktbG9uZyBjb250cm9sIGluZm8gZmlsZSBuYW1lIChzdGFydGluZyBgJS41MHMnKSIKK21zZ3N0ciAiIgorIs+Ezr8gz4DOsc66zq3PhM6/IM6tz4fOtc65IM+Fz4DOtc+BzrLOv867zrnOus6sIM68zrXOs86szrvOvyDOvM6uzrrOv8+CIM6/zr3PjM68zrHPhM6/z4IgzrHPgc+HzrXOr86/z4UgzrXOu86tzrPPh86/z4UgYCUuMjUwcyciCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzE0CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgY29udHJvbCBpbmZvIGNvbnRhaW5lZCBkaXJlY3RvcnkgYCUuMjUwcyciCittc2dzdHIgIs6/zrkgz4DOu863z4HOv8+Gzr/Pgc6vzrXPgiDOtc67zq3Os8+Hzr/PhSDPhM6/z4Ugz4DOsc66zq3PhM6/z4Ugz4DOtc+BzrnOtc6vz4fOsc69IM+Ezr/OvSDOus6xz4TOrM67zr/Os86/IGAlLjI1MHMnIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMxNgorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGNvbnRyb2wgaW5mbyBybWRpciBvZiBgJS4yNTBzJyBkaWRuJ3Qgc2F5IG5vdCBhIGRpciIKK21zZ3N0ciAizrTPjM64zrfOus61IHJtZGlyIM+Ezr/PhSBgJS4yNTBzJyDOsc67zrvOrCDOtM61zr0gzrTOt867z47OuM63zrrOtSDPic+CIM68zrcgzrrOsc+EzqzOu86/zrPOv8+CIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMyNgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlcyBjb250YWluZWQgbGlzdCBhcyBpbmZvIGZpbGUiCittc2dzdHIgIiIKKyI7ZHBrZzogz4DPgc6/zrXOuc60zr/PgM6/zq/Ot8+DzrcgLSDPhM6/IM+AzrHOus6tz4TOvyAlcyDPgM61z4HOuc61zq/Ph861IM67zq/Pg8+EzrEgz4nPgiDOsc+Bz4fOtc6vzr8gz4DOu863z4HOv8+Gzr/Pgc65z47OvSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IGluZm8gZmlsZSBgJS4yNTBzJyBhcyBgJS4yNTBzJyIKK21zZ3N0ciAizrHOtM+Nzr3Osc+EzrcgzrcgzrXOs866zrHPhM6sz4PPhM6xz4POtyDOvc6tzr/PhSDOsc+Bz4fOtc6vzr/PhSDPgM67zrfPgc6/z4bOv8+BzrnPjs69IGAlLjI1MHMnIM+Jz4IgYCUuMjUwcyciCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzQ5IHNyYy9yZW1vdmUuYzoxOTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSBjb250cm9sIGluZm8gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAizrHOtM+Nzr3Osc+EzrcgzrcgzrTOuc6xzrPPgc6xz4bOriDPhM6/z4UgzrHPgc+HzrXOr86/z4UgzrXOu86tzrPPh86/z4UgYCUuMjUwcyciCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDExCittc2dpZCAiY2Fubm90IGFjY2VzcyBhcmNoaXZlIgorbXNnc3RyICLOsc60z43Ovc6xz4TOtyDOtyDPgM+Bz4zPg86yzrHPg863IM+Dz4TOt869IM6xz4HPh861zrnOv864zq7Ous63IgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjQzMworIywgZnV6enkKKyN8IG1zZ2lkICJjb250cm9sIGluZm9ybWF0aW9uIGxlbmd0aCIKK21zZ2lkICJwYWNrYWdlIGNvbnRyb2wgaW5mb3JtYXRpb24gZXh0cmFjdGlvbiIKK21zZ3N0ciAizq3Ou861z4fOs86/z4IgzrzOrs66zr/Phc+CIM+AzrvOt8+Bzr/Phs6/z4HOuc+Ozr0iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDYwCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlY29yZGVkIGluZm8gYWJvdXQgJXMgZnJvbSAlcy5cbiIKK21zZ3N0ciAizprOsc+EzrHOs8+BzqzPhs+EzrfOus6xzr0gz4DOu863z4HOv8+Gzr/Pgc6vzrXPgiDOtc67zq3Os8+Hzr/PhSDOs865zrEgz4TOvyAlcyDOsc+Az4wgJXMuXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDY4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgYXJjaGl0ZWN0dXJlICglcykgZG9lcyBub3QgbWF0Y2ggc3lzdGVtICglcykiCittc2dzdHIgIiIKKyLOtyDOsc+Bz4fOuc+EzrXOus+Ezr/Ovc65zrrOriDPhM6/z4Ugz4DOsc66zq3PhM6/z4UgKCVzKSDOtM61zr0gz4TOsc65z4HOuc6szrbOtc65IM68zrUgzrHPhc+Ezq4gz4TOv8+FIM+Dz4XPg8+Ezq7OvM6xz4TOv8+CICglcykiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTIzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiByZWdhcmRpbmcgJXMgY29udGFpbmluZyAlcywgcHJlLWRlcGVuZGVuY3kgcHJvYmxlbTpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6IM+Dz4fOtc+EzrnOus6sIM68zrUgz4TOvyAlcyDPgM6/z4Ugz4DOtc+BzrnOrc+HzrXOuSAlcywgz4DPgc+MzrLOu863zrzOsSDPgM+Bzr/Otc6+zqzPgc+EzrfPg863z4I6XG4iCisiJXMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTI2CisjLCBjLWZvcm1hdAorbXNnaWQgInByZS1kZXBlbmRlbmN5IHByb2JsZW0gLSBub3QgaW5zdGFsbGluZyAlLjI1MHMiCittc2dzdHIgIs+Az4HPjM6yzrvOt868zrEgz4DPgc6/zrXOvs6sz4HPhM63z4POt8+CIC0gzrTOtSDOuM6xIM61zrPOus6xz4TOsc+Dz4TOsc64zrXOryAlLjI1MHMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTI3CisjLCBmdXp6eQorbXNnaWQgImlnbm9yaW5nIHByZS1kZXBlbmRlbmN5IHByb2JsZW0hIgorbXNnc3RyICJkcGtnOiDPgM+Bzr/Otc65zrTOv8+Azr/Or863z4POtyAtIM6xzrPOvc6/zrXOr8+EzrHOuSDPhM6/IM+Az4HPjM6yzrvOt868zrEgz4DPgc6/zrXOvs6sz4HPhM63z4POt8+CICFcbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHJlcGFyaW5nIHRvIHJlcGxhY2UgJXMgJXMgKHVzaW5nICVzKSAuLi5cbiIKK21zZ3N0ciAizqDPgc6/zrXPhM6/zrnOvM6xz4POr86xIM6zzrnOsSDOsc69z4TOuc66zrHPhM6sz4PPhM6xz4POtyAlcyAlcyAoz4fPgc63z4POuc68zr/PgM6/zrnPjs69z4TOsc+CIM+Ezr8gJXMpIC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjU0OQorIywgYy1mb3JtYXQKK21zZ2lkICJVbnBhY2tpbmcgJXMgKGZyb20gJXMpIC4uLlxuIgorbXNnc3RyICLOk86vzr3Otc+EzrHOuSDOsc+Azr/Pg8+FzrzPgM6vzrXPg863ICVzICjOsc+Az4wgJXMpIC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjU4MAorIywgYy1mb3JtYXQKK21zZ2lkICJuYW1lIG9mIGNvbmZmaWxlIChzdGFydGluZyBgJS4yNTBzJykgaXMgdG9vIGxvbmcgKD4lZCBjaGFyYWN0ZXJzKSIKK21zZ3N0ciAiIgorIs+Ezr8gz4zOvc6/zrzOsSDPhM6/z4UgzrHPgc+HzrXOr86/z4Ugz4HPhc64zrzOr8+DzrXPic69ICjOsc+Az4wgYCUuMjUwcycpIM61zq/Ovc6xzrkgz4DOv867z40gzrzOtc6zzqzOu86/ICg+JWQgIgorIs+HzrHPgc6xzrrPhM6uz4HOtc+CKSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2MzMgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVhZCBlcnJvciBpbiAlLjI1MHMiCittc2dzdHIgIs+Dz4bOrM67zrzOsSDOsc69zqzOs869z4nPg863z4Igz4PPhM6/ICUuMjUwcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyAlLjI1MHMiCittc2dzdHIgIs+Dz4bOrM67zrzOsSDOus67zrXOuc+Dzq/OvM6xz4TOv8+CICUuMjUwcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2MzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgdHJ5aW5nIHRvIG9wZW4gJS4yNTBzIgorbXNnc3RyICLPg8+GzqzOu868zrEgzrrOsc+Ezqwgz4TOvyDOrM69zr/Ouc6zzrzOsSDPhM6/z4UgJS4yNTBzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjY3OAorIywgYy1mb3JtYXQKK21zZ2lkICJEZS1jb25maWd1cmluZyAlcywgdG8gYWxsb3cgcmVtb3ZhbCBvZiAlcyAuLi5cbiIKK21zZ3N0ciAizpHPgM6/z4HPgc+NzrjOvM65z4POtyDPhM6/z4UgJXMsIM6zzrnOsSDOvc6xIM61z4DOuc+Ez4HOsc+AzrXOryDOtyDOsc+GzrHOr8+BzrXPg863IM+Ezr/PhSAlcyAuLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGUtY29uZmlndXJpbmcgJXMgLi4uXG4iCittc2dzdHIgIs6Rz4DOv8+Bz4HPjc64zrzOuc+Dzrcgz4TOv8+FICVzIC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjc1NQorIywgYy1mb3JtYXQKK21zZ2lkICJVbnBhY2tpbmcgcmVwbGFjZW1lbnQgJS4yNTBzIC4uLlxuIgorbXNnc3RyICLOkc+Azr/Pg8+FzrzPgM6vzrXPg863IM+Ezr/PhSDOsc69z4TOuc66zrHPhM6xz4PPhM6sz4TOtyAlLjI1MHMgLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6ODQwCittc2dpZCAicGFja2FnZSBmaWxlc3lzdGVtIGFyY2hpdmUgZXh0cmFjdGlvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjg1NAorbXNnaWQgImVycm9yIHJlYWRpbmcgZHBrZy1kZWIgdGFyIG91dHB1dCIKK21zZ3N0ciAiz4PPhs6szrvOvM6xIM66zrHPhM6sIM+EzrfOvSDOsc69zqzOs869z4nPg863IM+EzrfPgiDOtc6+z4zOtM6/z4Ugz4TOt8+CIHRhciDOsc+Az4wgz4TOvyBkcGtnLWRlYiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NTYKK21zZ2lkICJjb3JydXB0ZWQgZmlsZXN5c3RlbSB0YXJmaWxlIC0gY29ycnVwdGVkIHBhY2thZ2UgYXJjaGl2ZSIKK21zZ3N0ciAizrrOsc+EzrXPg8+Ez4HOsc68zrzOrc69zrcgzrHPgc+HzrXOuc6/zrjOrs66zrcgdGFyIC0gzrrOsc+EzrXPg8+Ez4HOsc68zrzOrc69zrcgzrHPgc+HzrXOuc6/zrjOrs66zrcgz4DOsc66zq3PhM6/z4UiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6ODU5Cittc2dpZCAiZHBrZy1kZWI6IHphcCBwb3NzaWJsZSB0cmFpbGluZyB6ZXJvcyIKK21zZ3N0ciAiZHBrZy1kZWI6IM60zrnOsc6zz4HOsc+Gzq4gz4DOuc64zrHOvc+Ozr0gzrzOt860zrXOvc65zrrPjs69IM+Dz4TOvyDPhM6tzrvOv8+CIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjkxOQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHN0YXQgb2xkIGZpbGUgJyUuMjUwcycgc28gbm90IGRlbGV0aW5nIGl0OiAlcyIKK21zZ3N0ciAiIgorImRwa2c6IM+Az4HOv861zrnOtM6/z4DOv86vzrfPg863IC0gzrHOtM+Nzr3Osc+Ezr/PgiDOvyDPgM+Bzr/Pg860zrnOv8+BzrnPg868z4zPgiDPhM63z4IgzrrOsc+EzqzPg8+EzrHPg863z4Igz4TOv8+FIM+AzrHOu865zr/PjSAiCisizrHPgc+HzrXOr86/z4UgYCUuMjUwcycgz4PPhc69zrXPgM+Oz4IgzrTOtc69IM60zrnOsc6zz4HOrM+GzrXPhM6xzrk6ICVzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjkyNQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSBvbGQgZGlyZWN0b3J5ICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiIgorImRwa2c6IM+Az4HOv861zrnOtM6/z4DOv86vzrfPg863IC0gzrHOtM+Nzr3Osc+EzrcgzrcgzrTOuc6xzrPPgc6xz4bOriDPhM6/z4Ugz4DOsc67zrnOv8+NIM66zrHPhM6xzrvPjM6zzr/PhSBgJS4yNTBzJzogJXNcbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5MjgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIm9sZCBjb25mZmlsZSAnJS4yNTBzJyB3YXMgYW4gZW1wdHkgZGlyZWN0b3J5IChhbmQgaGFzIG5vdyBiZWVuIGRlbGV0ZWQpIgorbXNnc3RyICIiCisiZHBrZzogz4DPgc6/zrXOuc60zr/PgM6/zq/Ot8+DzrcgLSDPhM6/IM+AzrHOu865z4wgY29uZmZpbGUgYCUuMjUwcycgzq7PhM6xzr0gzq3Ovc6xz4IgzrrOtc69z4zPgiDOus6xz4TOrM67zr/Os86/z4IgIgorIijOus6xzrkgz4TPjs+BzrEgzq3Ph861zrkgzrTOuc6xzrPPgc6xz4bOtc6vKVxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjk3NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBvdGhlciBuZXcgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAizrHOtM+Nzr3Osc+Ezr/PgiDOvyDPgM+Bzr/Pg860zrnOv8+BzrnPg868z4zPgiDOus6xz4TOrM+Dz4TOsc+DzrfPgiDOrM67zrvOv8+FIM66zrHOuc69zr/Pjc+BzrnOv8+FIM6xz4HPh861zq/Ov8+FIGAlLjI1MHMnIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjk4NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIm9sZCBmaWxlICclLjI1MHMnIGlzIHRoZSBzYW1lIGFzIHNldmVyYWwgbmV3IGZpbGVzISAoYm90aCAnJS4yNTBzJyBhbmQgIgorIiclLjI1MHMnKSIKK21zZ3N0ciAiIgorImRwa2c6IM+Az4HOv861zrnOtM6/z4DOv86vzrfPg863IC0gz4TOvyDPgM6xzrvOuc+MIM6xz4HPh861zq/OvyBgJS4yNTBzJyDOtc6vzr3Osc65IM+Ezr8gzq/OtM65zr8gzrzOtSDOsc+BzrrOtc+EzqwgIgorIs66zrHOuc69zr/Pjc+BzrnOsSDOsc+Bz4fOtc6vzrEhICjPhM+Mz4POvyDPhM6xIGAlIDI1MHMnIM+Mz4POvyDOus6xzrkgz4TOsSBgJSAyNTBzJylcbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxMDI1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2VjdXJlbHkgcmVtb3ZlIG9sZCBmaWxlICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiZHBrZzogz4DPgc6/zrXOuc60zr/PgM6/zq/Ot8+DzrcgLSDOsc60z43Ovc6xz4TOv869IM69zrEgJXMgz4TOvyDPgM6xzrvOuc+MIM6xz4HPh861zq/OvyBgJSUuMjUwcyc6JSVzXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTIwNgorIywgYy1mb3JtYXQKK21zZ2lkICIoTm90aW5nIGRpc2FwcGVhcmFuY2Ugb2YgJXMsIHdoaWNoIGhhcyBiZWVuIGNvbXBsZXRlbHkgcmVwbGFjZWQuKVxuIgorbXNnc3RyICIiCisiKM6jzrfOvM61zrnPjs69zrXPhM6xzrkgzrcgzrXOvs6xz4bOrM69zrnPg863IM+Ezr/PhSAlcywgz4TOvyDOv8+Azr/Or86/IM6tz4fOtc65IM6xzr3PhM65zrrOsc+EzrHPg8+EzrHOuM61zq8gz4DOu86uz4HPic+CKVxuIgorCisjLiBUUkFOU0xBVE9SUzogVGhpcyBpcyB0aGUgaGVhZGVyIHRoYXQgYXBwZWFycyBvbiAnZHBrZy1xdWVyeSAtbCcuIFRoZQorIy4gKiBzdHJpbmcgc2hvdWxkIHJlbWFpbiB1bmRlciA4MCBjaGFyYWN0ZXJzLiBUaGUgdXBwZXJjYXNlIGxldHRlcnMgaW4KKyMuICogdGhlIHN0YXRlIHZhbHVlcyBkZW5vdGUgdGhlIGFiYnJldmlhdGVkIGxldHRlciB0aGF0IHdpbGwgYXBwZWFyIG9uCisjLiAqIHRoZSBmaXJzdCB0aHJlZSBjb2x1bW5zLCB3aGljaCBzaG91bGQgaWRlYWxseSBtYXRjaCB0aGUgRW5nbGlzaCBvbmUKKyMuICogKGUuZy4gUmVtb3ZlIOKGkiBzdXBSaW1laXgpLCBzZWUgZHBrZy1xdWVyeSgxKSBmb3IgZnVydGhlciBkZXRhaWxzLiBUaGUKKyMuICogdHJhbnNsYXRlZCBtZXNzYWdlIGNhbiB1c2UgYWRkaXRpb25hbCBsaW5lcyBpZiBuZWVkZWQuCisjOiBzcmMvcXVlcnljbWQuYzoxNDkKKyMsIGZ1enp5Cittc2dpZCAiIgorIkRlc2lyZWQ9VW5rbm93bi9JbnN0YWxsL1JlbW92ZS9QdXJnZS9Ib2xkXG4iCisifCBTdGF0dXM9Tm90L0luc3QvQ29uZi1maWxlcy9VbnBhY2tlZC9oYWxGLWNvbmYvSGFsZi1pbnN0L3RyaWctYVdhaXQvVHJpZy0iCisicGVuZFxuIgorInwvIEVycj89KG5vbmUpL1JlaW5zdC1yZXF1aXJlZCAoU3RhdHVzLEVycjogdXBwZXJjYXNlPWJhZClcbiIKK21zZ3N0ciAiIgorIkRlc2lyZWQ9VW5rbm93bi9JbnN0YWxsL1JlbW92ZS9QdXJnZS9Ib2xkXG4iCisifCBTdGF0dXM9Tm90L0luc3QvQ2ZnLWZpbGVzL1VucGFja2VkL0ZhaWxlZC1jZmcvSGFsZi1pbnN0L3RyaWctYVdhaXQvVHJpZy0iCisicGVuZFxuIgorInwvIEVycj89KG5vbmUpL0hvbGQvUmVpbnN0LXJlcXVpcmVkL1g9Ym90aC1wcm9ibGVtcyAoU3RhdHVzLEVycjogIgorInVwcGVyY2FzZT1iYWQpXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjE1MworbXNnaWQgIk5hbWUiCittc2dzdHIgIs6Mzr3Ov868zrEiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjE1MworbXNnaWQgIlZlcnNpb24iCittc2dzdHIgIs6IzrrOtM6/z4POtyIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MTU0Cittc2dpZCAiRGVzY3JpcHRpb24iCittc2dzdHIgIs6gzrXPgc65zrPPgc6xz4bOriIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MjQ2IHNyYy9xdWVyeWNtZC5jOjUxMSBzcmMvc2VsZWN0LmM6NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiTm8gcGFja2FnZXMgZm91bmQgbWF0Y2hpbmcgJXMuXG4iCittc2dzdHIgIs6UzrUgzrLPgc6tzrjOt866zrHOvSDPgM6xzrrOrc+EzrEgz4DOv8+FIM69zrEgz4TOsc65z4HOuc6szrbOv8+Fzr0gzrzOtSAlcy5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MjczCisjLCBjLWZvcm1hdAorbXNnaWQgImRpdmVyc2lvbiBieSAlcyBmcm9tOiAlc1xuIgorbXNnc3RyICLOtc66z4TPgc6/z4DOriDOsc+Az4wgJXMgz4POtTogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6Mjc1CisjLCBjLWZvcm1hdAorbXNnaWQgImRpdmVyc2lvbiBieSAlcyB0bzogJXNcbiIKK21zZ3N0ciAizrXOus+Ez4HOv8+Azq4gzrHPgM+MICVzIM+DzrU6ICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI3OAorIywgYy1mb3JtYXQKK21zZ2lkICJsb2NhbCBkaXZlcnNpb24gZnJvbTogJXNcbiIKK21zZ3N0ciAiz4TOv8+AzrnOus6uIM61zrrPhM+Bzr/PgM6uIM6xz4DPjDogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6Mjc5CisjLCBjLWZvcm1hdAorbXNnaWQgImxvY2FsIGRpdmVyc2lvbiB0bzogJXNcbiIKK21zZ3N0ciAiz4TOv8+AzrnOus6uIM61zrrPhM+Bzr/PgM6uIM+DzrU6ICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjMwOQorbXNnaWQgIi0tc2VhcmNoIG5lZWRzIGF0IGxlYXN0IG9uZSBmaWxlIG5hbWUgcGF0dGVybiBhcmd1bWVudCIKK21zZ3N0ciAiIgorIs63IC0tc2VhcmNoIM+Hz4HOtc65zqzOts61z4TOsc65IM+Ezr/Phc67zqzPh865z4PPhM6/zr0gzrzOuc6xIM+AzrHPgc6sz4PPhM6xz4POtyDOv869zr/OvM6sz4TPic69IM6xz4HPh861zq/Pic69IM+Jz4Igz4DOsc+BzqzOvM61z4TPgc6/IgorCisjOiBzcmMvcXVlcnljbWQuYzozNTAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIk5vIHBhY2thZ2VzIGZvdW5kIG1hdGNoaW5nICVzLlxuIgorbXNnaWQgIiVzOiBubyBwYXRoIGZvdW5kIG1hdGNoaW5nIHBhdHRlcm4gJXMuXG4iCittc2dzdHIgIs6UzrUgzrLPgc6tzrjOt866zrHOvSDPgM6xzrrOrc+EzrEgz4DOv8+FIM69zrEgz4TOsc65z4HOuc6szrbOv8+Fzr0gzrzOtSAlcy5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MzkzCisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgYCVzJyBpcyBub3QgaW5zdGFsbGVkIGFuZCBubyBpbmZvIGlzIGF2YWlsYWJsZS5cbiIKK21zZ3N0ciAiIgorIs6kzr8gz4DOsc66zq3PhM6/IGAlcycgzrTOtc69IM61zq/Ovc6xzrkgzrXOs866zrHPhM61z4PPhM63zrzOrc69zr8gzrrOsc65IM60zrXOvSDPhc+AzqzPgc+Hzr/Phc69IM60zrnOsc64zq3Pg865zrzOtc+CICIKKyLPgM67zrfPgc6/z4bOv8+Bzq/Otc+CLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSBgJXMnIGlzIG5vdCBhdmFpbGFibGUuXG4iCittc2dzdHIgIs6kzr8gz4DOsc66zq3PhM6/IGAlcycgzrTOtc69IM61zq/Ovc6xzrkgzrTOuc6xzrjOrc+DzrnOvM6/LlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MTAgc3JjL3F1ZXJ5Y21kLmM6NTg1CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgYCVzJyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICLOpM6/IM+AzrHOus6tz4TOvyBgJXMnIM60zrXOvSDOtc6vzr3Osc65IM61zrPOus6xz4TOtc+Dz4TOt868zq3Ovc6/LlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSBgJXMnIGRvZXMgbm90IGNvbnRhaW4gYW55IGZpbGVzICghKVxuIgorbXNnc3RyICLOpM6/IM+AzrHOus6tz4TOvyBgJXMnIM60zrXOvSDPgM61z4HOuc6tz4fOtc65IM66zrHOvc6tzr3OsSDOsc+Bz4fOtc6vzr8gKCEpXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQyNQorIywgYy1mb3JtYXQKK21zZ2lkICJsb2NhbGx5IGRpdmVydGVkIHRvOiAlc1xuIgorbXNnc3RyICLPhM6/z4DOuc66zq4gzrXOus+Ez4HOv8+Azq4gz4POtTogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDI4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgZGl2ZXJ0cyBvdGhlcnMgdG86ICVzXG4iCittc2dzdHIgIs+Ezr8gz4DOsc66zq3PhM6/IM61zrrPhM+Bzq3PgM61zrkgzqzOu867zrEgz4POtTogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDMxCisjLCBjLWZvcm1hdAorbXNnaWQgImRpdmVydGVkIGJ5ICVzIHRvOiAlc1xuIgorbXNnc3RyICLOtc66z4TPgc6sz4DOt866zrUgzrHPgM+MICVzIM+DzrU6ICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQ1MgorbXNnaWQgIiIKKyJVc2UgZHBrZyAtLWluZm8gKD0gZHBrZy1kZWIgLS1pbmZvKSB0byBleGFtaW5lIGFyY2hpdmUgZmlsZXMsXG4iCisiYW5kIGRwa2cgLS1jb250ZW50cyAoPSBkcGtnLWRlYiAtLWNvbnRlbnRzKSB0byBsaXN0IHRoZWlyIGNvbnRlbnRzLlxuIgorbXNnc3RyICIiCisizqfPgc63z4POuc68zr/PgM6/zrnOrs+Dz4TOtSDPhM6/IGRwa2cgLS1pbmZvICg9IGRwa2ctZGViIC0taW5mbykgzrPOuc6xIM61z4DOtc6+zrXPgc6zzrHPg86vzrEgIgorIs6xz4HPh861zrnOv864zrfOus+Ozr0sXG4iCisizrrOsc65IGRwa2cgLS1jb250ZW50cyAoPSBkcGtnLWRlYiAtLWNvbnRlbnRzKSDOs865zrEgz4DPgc6/zrLOv867zq4gz4TPic69IM+AzrXPgc65zrXPh86/zrzOrc69z4nOvSAiCisiz4TOv8+Fz4IuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjU3MAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiLS0lcyB0YWtlcyBhdCBtb3N0IHR3byBhcmd1bWVudHMiCittc2dzdHIgIs63IC0tYnVpbGQgz4DOsc6vz4HOvc61zrkgz4TOvyDPgM6/zrvPjSDOtM+Nzr8gzr/Pgc6vz4POvM6xz4TOsSIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NTc4CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbnRyb2wgZmlsZSBjb250YWlucyAlYyIKK21zZ3N0ciAiIgorCisjOiBzcmMvcXVlcnljbWQuYzo2MDAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiAlcyBwYWNrYWdlIG1hbmFnZW1lbnQgcHJvZ3JhbSBxdWVyeSB0b29sIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIs6gz4HPjM6zz4HOsc68zrzOsSDOtM65zrHPh861zq/Pgc65z4POt8+CIM+AzrHOus6tz4TPic69IM+Ezr/PhSBEZWJpYW4gYCVzJyDOrc66zrTOv8+DzrcgJXMuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjYxOQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLXN8LS1zdGF0dXMgPHBhY2thZ2U+IC4uLiAgICAgICAgRGlzcGxheSBwYWNrYWdlIHN0YXR1cyBkZXRhaWxzLlxuIgorIiAgLXB8LS1wcmludC1hdmFpbCA8cGFja2FnZT4gLi4uICAgRGlzcGxheSBhdmFpbGFibGUgdmVyc2lvbiBkZXRhaWxzLlxuIgorIiAgLUx8LS1saXN0ZmlsZXMgPHBhY2thZ2U+IC4uLiAgICAgTGlzdCBmaWxlcyBgb3duZWQnIGJ5IHBhY2thZ2UocykuXG4iCisiICAtbHwtLWxpc3QgWzxwYXR0ZXJuPiAuLi5dICAgICAgICBMaXN0IHBhY2thZ2VzIGNvbmNpc2VseS5cbiIKKyIgIC1XfC0tc2hvdyBbPHBhdHRlcm4+IC4uLl0gICAgICAgIFNob3cgaW5mb3JtYXRpb24gb24gcGFja2FnZShzKS5cbiIKKyIgIC1TfC0tc2VhcmNoIDxwYXR0ZXJuPiAuLi4gICAgICAgIEZpbmQgcGFja2FnZShzKSBvd25pbmcgZmlsZShzKS5cbiIKKyIgIC1jfC0tY29udHJvbC1wYXRoIDxwYWNrYWdlPiBbPGZpbGU+XVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHJpbnQgcGF0aCBmb3IgcGFja2FnZSBjb250cm9sIGZpbGUuXG4iCisiXG4iCittc2dzdHIgIiIKKyLOlc69z4TOv867zq3PgjpcbiIKKyIgIC1zfC0tc3RhdHVzIDxwYWNrYWdlLW5hbWU+IC4uLiAgICAgIM+Az4HOv86yzr/Ou86uIM67zrXPgM+Ezr/OvM61z4HOtc65z47OvSDOus6xz4TOrM+Dz4TOsc+DzrfPgiAiCisiz4DOsc66zq3PhM6/z4UuXG4iCisiICAtcHwtLXByaW50LWF2YWlsIDxwYWNrYWdlLW5hbWU+IC4uLiDPgM+Bzr/Oss6/zrvOriDOu861z4DPhM6/zrzOtc+BzrXOuc+Ozr0gz4TPic69IM60zrnOsc64zq3Pg865zrzPic69ICIKKyLOtc66zrTPjM+DzrXPic69LlxuIgorIiAgLUx8LS1saXN0ZmlsZXMgPHBhY2thZ2UtbmFtZT4gLi4uICAgzrvOr8+Dz4TOsSDOsc+Bz4fOtc6vz4nOvSDPgM6/z4UgzrHOvc6uzrrOv8+Fzr0gz4PPhM6/IM+AzrHOus6tz4TOvyIKKyIozrEpLlxuIgorIiAgLWx8LS1saXN0IFs8cGF0dGVybj4gLi4uXSAgICAgICAgICAgz4PPhc69zr/PgM+EzrnOus6uIM67zq/Pg8+EzrEgz4DOsc66zq3PhM+Jzr0uXG4iCisiICAtV3wtLXNob3cgPHBhdHRlcm4+IC4uLiAgICAgICAgICAgICDPgM+Bzr/Oss6/zrvOriDPgM67zrfPgc6/z4bOv8+BzrnPjs69IM6zzrnOsSDPhM6/L8+EzrEgz4DOsc66zq3PhM6/IgorIijOsSkuXG4iCisiICAtU3wtLXNlYXJjaCA8cGF0dGVybj4gLi4uICAgICAgICAgICDOlc+Nz4HOtc+Dzrcgz4DOsc66zq3PhM+Jzr0gz4PPhM6xIM6/z4DOv86vzrEgzrHOvc6uzrrOv8+Fzr0gz4TOsSAiCisizrHPgc+HzrXOr86xLlxuIgorIlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo2MzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgICAgICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyIgIC1mfC0tc2hvd2Zvcm1hdD08Zm9ybWF0PiAgICAgICAgIFVzZSBhbHRlcm5hdGl2ZSBmb3JtYXQgZm9yIC0tc2hvdy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIs6Vz4DOuc67zr/Os86tz4I6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgICAgICAgICDOp8+Bzq7Pg863IM+Ezr/PhSDOus6xz4TOsc67z4zOs86/z4UgPGRpcmVjdG9yeT4gzrHOvc+Ezq8gz4TOv8+FICIKKyIlcy5cbiIKKyIgIC1mfC0tc2hvd2Zvcm1hdD08Zm9ybWF0PiAgICAgICAgIM6nz4HOrs+DzrcgzrXOvc6xzrvOu86xzrrPhM65zrrOrs+CIM60zrnOsc68z4zPgc+Gz4nPg863z4IgzrPOuc6xIM+EzrfOvSAiCisizrXPgM65zrvOv86zzq4gLS1zaG93LlxuIgorIlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo2NDIgZHBrZy1kZWIvbWFpbi5jOjExMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiRm9ybWF0IHN5bnRheDpcbiIKKyIgIEEgZm9ybWF0IGlzIGEgc3RyaW5nIHRoYXQgd2lsbCBiZSBvdXRwdXQgZm9yIGVhY2ggcGFja2FnZS4gVGhlIGZvcm1hdFxuIgorIiAgY2FuIGluY2x1ZGUgdGhlIHN0YW5kYXJkIGVzY2FwZSBzZXF1ZW5jZXMgXFxuIChuZXdsaW5lKSwgXFxyIChjYXJyaWFnZVxuIgorIiAgcmV0dXJuKSBvciBcXFxcIChwbGFpbiBiYWNrc2xhc2gpLiBQYWNrYWdlIGluZm9ybWF0aW9uIGNhbiBiZSBpbmNsdWRlZFxuIgorIiAgYnkgaW5zZXJ0aW5nIHZhcmlhYmxlIHJlZmVyZW5jZXMgdG8gcGFja2FnZSBmaWVsZHMgdXNpbmcgdGhlICR7dmFyWzsiCisid2lkdGhdfVxuIgorIiAgc3ludGF4LiBGaWVsZHMgd2lsbCBiZSByaWdodC1hbGlnbmVkIHVubGVzcyB0aGUgd2lkdGggaXMgbmVnYXRpdmUgaW4gIgorIndoaWNoXG4iCisiICBjYXNlIGxlZnQgYWxpZ25tZW50IHdpbGwgYmUgdXNlZC5cbiIKK21zZ3N0ciAiIgorIs6jz43Ovc+EzrHOvs63IM60zrnOsc68z4zPgc+Gz4nPg863z4I6XG4iCisiICDOnM65zrEgzrTOuc6xzrzPjM+Bz4bPic+DzrcgzrXOr869zrHOuSDOvM65zrEgzrHOus6/zrvOv8+FzrjOr86xIM+HzrHPgc6xzrrPhM6uz4HPic69IM+Azr/PhSDOuM6xIM+AzrHPgc6szrPOtc+EzrHOuSDPg86xzr0gzq3Ovs6/zrTOv8+CICIKKyLOs865zrEgzrrOrM64zrUgz4DOsc66zq3PhM6/LiDOlyDOtM65zrHOvM+Mz4HPhs+Jz4POt1xuIgorIiAgzrzPgM6/z4HOtc6vIM69zrEgz4DOtc+BzrnOrc+HzrXOuSDPhM65z4Igz4PPhc69zq7OuM61zrnPgiDOsc66zr/Ou86/z4XOuM6vzrXPgiDOtM65zrHPhs+FzrPOrs+CIFxcbiAobmV3bGluZSksIFxcciAiCisiKGNhcnJpYWdlXG4iCisiICByZXR1cm4pIM6uIFxcXFwgKM6xz4DOu8+MIGJhY2tzbGFzaCkuIM6gzrvOt8+Bzr/Phs6/z4HOr86xIM6zzrnOsSDPhM6/IM+AzrHOus6tz4TOvyDOvM+Azr/Pgc61zq8gzr3OsSAiCisiz4DOtc+BzrnOu86xzrzOss6szr3Otc+EzrHOuSBcbiIKKyIgIM61zrnPg86szrPOv869z4TOsc+CIM6xzr3Osc+Gzr/Pgc6tz4IgzrzOtc+EzrHOss67zrfPhM+Ozr0gz4PPhM6xIM+AzrXOtM6vzrEgz4TPic69IM+AzrHOus6tz4TPic69IM+Hz4HOt8+DzrnOvM6/z4DOv865z47Ovc+EzrHPgiDPhM63zr0gIgorIs+Dz43Ovc+EzrHOvs63ICR7dmFyWzt3aWR0aF19XG4iCisiICDOpM6xIM+AzrXOtM6vzrEgz4PPhM6/zrnPh86vzrbOv869z4TOsc65IM+Dz4TOsSDOtM61zr7Ouc6sIM61zrrPhM+Mz4IgzrHOvSDPhM6/IM+AzrvOrM+Ezr/PgiDOtc6vzr3Osc65IM6xz4HOvc63z4TOuc66z4wgz4PPhM63zr0gIgorIs6/z4DOv86vzrFcbiIKKyIgIM+AzrXPgc6vz4DPhM+Jz4POtyDOuM6xIM+Hz4HOt8+DzrnOvM6/z4DOv865zrfOuM61zq8gz4PPhM6/zq/Ph865z4POtyDPg8+EzrEgzrHPgc65z4PPhM61z4HOrC5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjU2Cittc2dpZCAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBxdWVyeWluZyBwYWNrYWdlcy4iCittc2dzdHIgIiIKKworIzogc3JjL3JlbW92ZS5jOjg4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJpZ25vcmluZyByZXF1ZXN0IHRvIHJlbW92ZSAlLjI1MHMgd2hpY2ggaXNuJ3QgaW5zdGFsbGVkLiIKK21zZ3N0ciAiIgorImRwa2cgLSDPgM+Bzr/Otc65zrTOv8+Azr/Or863z4POtzogzrHOs869zr/Otc6vz4TOsc65IM+Ezr8gzrHOr8+EzrfOvM6xIM6xz4bOsc6vz4HOtc+DzrfPgiDPhM6/z4UgJS4yNTBzIM+Azr/PhSDOtM61zr0gIgorIs6tz4fOtc65IFxuIgorIiDOtc6zzrrOsc+EzrHPg8+EzrHOuM61zq8uXG4iCisKKyM6IHNyYy9yZW1vdmUuYzo5NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorImlnbm9yaW5nIHJlcXVlc3QgdG8gcmVtb3ZlICUuMjUwcywgb25seSB0aGUgY29uZmlnXG4iCisiIGZpbGVzIG9mIHdoaWNoIGFyZSBvbiB0aGUgc3lzdGVtLiBVc2UgLS1wdXJnZSB0byByZW1vdmUgdGhlbSB0b28uIgorbXNnc3RyICIiCisiZHBrZyAtIM+Az4HOv861zrnOtM6/z4DOv86vzrfPg863OiDOsc6zzr3Ov861zq/PhM6xzrkgz4TOvyDOsc6vz4TOt868zrEgzrHPhs6xzq/Pgc61z4POt8+CIM+Ezr/PhSAlLjI1MHMsIM68z4zOvc6/IM+EzrFcbiIKKyIgzrHPgc+HzrXOr86xIM+Bz4XOuM68zq/Pg861z4nOvSDPhM6xIM6/z4DOv86vzrEgzrLPgc6vz4POus6/zr3PhM6xzrkgz4PPhM6/IM+Dz43Pg8+EzrfOvM6xLiDOp8+BzrfPg865zrzOv8+Azr/Ouc6uz4PPhM61IC0tcHVyZ2VcbiIKKyIgzrPOuc6xIM69zrEgz4TOsSDOtM65zrHOs8+BzqzPiM61z4TOtSDOus6xzrkgzrHPhc+EzqwuXG4iCisKKyM6IHNyYy9yZW1vdmUuYzoxMDMKK21zZ2lkICJUaGlzIGlzIGFuIGVzc2VudGlhbCBwYWNrYWdlIC0gaXQgc2hvdWxkIG5vdCBiZSByZW1vdmVkLiIKK21zZ3N0ciAizpHPhc+Ez4wgzrXOr869zrHOuSDOrc69zrEgzrLOsc+DzrnOus+MIM+AzrHOus6tz4TOvyAtIM60zrXOvSDPgM+Bzq3PgM61zrkgzr3OsSDOsc+GzrHOuc+BzrXOuM61zq8uIgorCisjOiBzcmMvcmVtb3ZlLmM6MTI4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBkZXBlbmRlbmN5IHByb2JsZW1zIHByZXZlbnQgcmVtb3ZhbCBvZiAlczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6IM+Az4HOv86yzrvOrs68zrHPhM6xIM61zr7OrM+Bz4TOt8+DzrfPgiDOtc68z4DOv860zq/Ots6/z4XOvSDPhM63zr0gzrHPhs6xzq/Pgc61z4POtyDPhM6/z4UgJXM6XG4iCisiJXMiCisKKyM6IHNyYy9yZW1vdmUuYzoxMzAKK21zZ2lkICJkZXBlbmRlbmN5IHByb2JsZW1zIC0gbm90IHJlbW92aW5nIgorbXNnc3RyICLPgM+Bzr/Oss67zq7OvM6xz4TOsSDOtc6+zqzPgc+EzrfPg863z4IgLSDOtM61IM6zzq/Ovc61z4TOsc65IM6xz4bOsc6vz4HOtc+DzrciCisKKyM6IHNyYy9yZW1vdmUuYzoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6ICVzOiBkZXBlbmRlbmN5IHByb2JsZW1zLCBidXQgcmVtb3ZpbmcgYW55d2F5IGFzIHlvdSByZXF1ZXN0ZWQ6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiAlczogz4DPgc6/zrLOu86uzrzOsc+EzrEgzrXOvs6sz4HPhM63z4POt8+CLCDOsc67zrvOrCDOs86vzr3Otc+EzrHOuSDOsc+GzrHOr8+BzrXPg863IM+Mz4DPic+CIM62zrfPhM6uz4POsc+EzrU6XG4iCisiJXMiCisKKyM6IHNyYy9yZW1vdmUuYzoxNDIKK21zZ2lkICIiCisiUGFja2FnZSBpcyBpbiBhIHZlcnkgYmFkIGluY29uc2lzdGVudCBzdGF0ZSAtIHlvdSBzaG91bGRcbiIKKyIgcmVpbnN0YWxsIGl0IGJlZm9yZSBhdHRlbXB0aW5nIGEgcmVtb3ZhbC4iCittc2dzdHIgIiIKKyLOpM6/IM+AzrHOus6tz4TOvyDOtc6vzr3Osc65IM+DzrUgz4DOv867z40gzrrOsc66zq4gzrrOsc+EzqzPg8+EzrHPg863IC0gzrjOsSDPgM+Bzq3PgM61zrkgzr3OsSDPhM6/IM61z4DOsc69zrXOs866zrHPhM6xz4PPhM6uz4POtc+EzrVcbiIKKyIgz4DPgc65zr0gz4DPgc6/z4PPgM6xzrjOrs+DzrXPhM61IM+EzrfOvSDOsc+GzrHOr8+BzrXPg86uIM+Ezr/PhS4iCisKKyM6IHNyYy9yZW1vdmUuYzoxNDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiV291bGQgcmVtb3ZlIG9yIHB1cmdlICVzIC4uLlxuIgorbXNnc3RyICLOmM6xIM6zzrnOvc+Mz4TOsc69IM6xz4bOsc6vz4HOtc+Dzrcgzq4gzrTOuc6xzrPPgc6xz4bOriDPhM6/z4UgJXMgLi4uXG4iCisKKyM6IHNyYy9yZW1vdmUuYzoxNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVtb3ZpbmcgJXMgLi4uXG4iCittc2dzdHIgIs6Rz4bOsc6vz4HOtc+Dzrcgz4TOv8+FICVzIC4uLlxuIgorCisjOiBzcmMvcmVtb3ZlLmM6Mjc1IHNyYy9yZW1vdmUuYzozNjYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ3aGlsZSByZW1vdmluZyAlLjI1MHMsIHVuYWJsZSB0byByZW1vdmUgZGlyZWN0b3J5ICclLjI1MHMnOiAlcyAtIGRpcmVjdG9yeSAiCisibWF5IGJlIGEgbW91bnQgcG9pbnQ/IgorbXNnc3RyICIiCisiZHBrZyAtIM+Az4HOv861zrnOtM6/z4DOv86vzrfPg863OiDOus6xz4TOrCDPhM63zr0gzrHPhs6xzq/Pgc61z4POtyDPhM6/z4UgJS4yNTBzLCDOrs+EzrHOvSDOsc60z43Ovc6xz4TOtyDOtyDOsc+GzrHOr8+BzrXPg863ICIKKyLPhM6/z4UgzrrOsc+EzrHOu8+MzrPOv8+FIGAlLjI1MHMnOiAlcyAtIM68zq7PgM+Jz4Igzr8gzrrOsc+EzqzOu86/zrPOv8+CIM61zq/Ovc6xzrkgz4POt868zrXOr86/IM61z4DOsc+Gzq7PgjtcbiIKKworIzogc3JjL3JlbW92ZS5jOjI4OQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNlY3VyZWx5IHJlbW92ZSAnJS4yNTBzJyIKK21zZ3N0ciAizrHOtM+Nzr3Osc+EzrcgzrcgzrTOt868zrnOv8+Fz4HOs86vzrEgYCUuMjU1cyciCisKKyM6IHNyYy9yZW1vdmUuYzozNjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIndoaWxlIHJlbW92aW5nICUuMjUwcywgZGlyZWN0b3J5ICclLjI1MHMnIG5vdCBlbXB0eSBzbyBub3QgcmVtb3ZlZC4iCittc2dzdHIgIiIKKyJkcGtnIC0gz4DPgc6/zrXOuc60zr/PgM6/zq/Ot8+Dzrc6IM66zrHPhM6sIM+EzrfOvSDOsc+GzrHOr8+BzrXPg863IM+Ezr/PhSAlLjI1MHMsIM6/IM66zrHPhM6szrvOv86zzr/PgiBgJS4yNTBzJyDOtM61zr0gIgorIs61zq/Ovc6xzrkgzqzOtM61zrnOv8+CIM6/z4DPjM+EzrUgzrTOtc69IM6xz4bOsc65z4HOrc64zrfOus61LlxuIgorCisjOiBzcmMvcmVtb3ZlLmM6MzgzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW5ub3QgcmVtb3ZlIGAlLjI1MHMnIgorbXNnaWQgImNhbm5vdCByZW1vdmUgJyUuMjUwcyciCittc2dzdHIgIs6xzrTPjc69zrHPhM63IM63IM6xz4bOsc6vz4HOtc+Dzrcgz4TOv8+FIGAlLjI1MHMnIgorCisjOiBzcmMvcmVtb3ZlLmM6NDA5CisjLCBjLWZvcm1hdAorbXNnaWQgIlB1cmdpbmcgY29uZmlndXJhdGlvbiBmaWxlcyBmb3IgJXMgLi4uXG4iCittc2dzdHIgIs6UzrnOsc6zz4HOsc+Gzq4gz4TPic69IM6xz4HPh861zq/Pic69IM+Bz4XOuM68zq/Pg861z4nOvSDPhM6/z4UgJXMgLi4uXG4iCisKKyM6IHNyYy9yZW1vdmUuYzo0NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlbW92ZSBvbGQgY29uZmlnIGZpbGUgYCUuMjUwcycgKD0gYCUuMjUwcycpIgorbXNnc3RyICLOsc60z43Ovc6xz4TOtyDOtyDOtM65zrHOs8+BzrHPhs6uIM+AzrHOu865zr/PjSDOsc+Bz4fOtc6vzr/PhSDPgc+FzrjOvM6vz4POtc+Jzr0gz4TOv8+FIGAlLjI1MHMnICg9IGAlLjI1MHMnKSIKKworIzogc3JjL3JlbW92ZS5jOjQ3NAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVhZCBjb25maWcgZmlsZSBkaXIgYCUuMjUwcycgKGZyb20gYCUuMjUwcycpIgorbXNnc3RyICIiCisizrHOtM+Nzr3Osc+EzrcgzrcgzrHOvc6szrPOvc+Jz4POtyDPhM6/z4UgzrrOsc+EzrHOu8+MzrPOv8+FIM+Ez4nOvSDOsc+Bz4fOtc6vz4nOvSDPgc+FzrjOvM6vz4POtc+Jzr0gz4TOv8+FIGAlLjI1MHMnICjOsc+Az4wgYCIKKyIlLjI1MHMnKSIKKworIzogc3JjL3JlbW92ZS5jOjUxMAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVtb3ZlIG9sZCBiYWNrdXAgY29uZmlnIGZpbGUgYCUuMjUwcycgKG9mIGAlLjI1MHMnKSIKK21zZ3N0ciAiIgorIs6xzrTPjc69zrHPhM63IM63IM60zrnOsc6zz4HOsc+Gzq4gz4TOv8+FIM+AzrHOu865zr/PjSDOsc69z4TOuc6zz4HOrM+Gzr/PhSDOsc+Bz4fOtc6vzr/PhSDPgc+FzrjOvM6vz4POtc+Jzr0gz4TOv8+FIGAlLjI1MHMnICjOsc+Az4wgIgorImAlLjI1MHMnKSIKKworIzogc3JjL3JlbW92ZS5jOjU2OAorbXNnaWQgImNhbm5vdCByZW1vdmUgb2xkIGZpbGVzIGxpc3QiCittc2dzdHIgIs6xzrTPjc69zrHPhM63IM63IM60zrnOsc6zz4HOsc+Gzq4gz4TOt8+CIM67zq/Pg8+EzrHPgiDPhM+Jzr0gz4DOsc67zrnPjs69IM6xz4HPh861zq/Pic69IgorCisjOiBzcmMvcmVtb3ZlLmM6NTc0Cittc2dpZCAiY2FuJ3QgcmVtb3ZlIG9sZCBwb3N0cm0gc2NyaXB0IgorbXNnc3RyICLOsc60z43Ovc6xz4TOtyDOtyDOtM65zrHOs8+BzrHPhs6uIM+Ezr/PhSDPgM6xzrvOuc6/z40gz4POtc69zrHPgc6vzr/PhSBwb3N0cm0iCisKKyM6IHNyYy9zZWxlY3QuYzoxMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgaW4gcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQiCittc2dzdHIgIs6xz4DPgc+Mz4POvM61zr3OvyBlb2Ygz4PPhM6/IM+Mzr3Ov868zrEgz4DOsc66zq3PhM6/z4Ugz4PPhM63IM6zz4HOsc68zrzOriAlZCIKKworIzogc3JjL3NlbGVjdC5jOjExNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBsaW5lIGluIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICLOsc+Az4HPjM+DzrzOtc69zr8gz4TOrc67zr/PgiDPhM63z4IgzrPPgc6xzrzOvM6uz4Igz4PPhM6/IM+Mzr3Ov868zrEgz4DOsc66zq3PhM6/z4Ugz4PPhM63IM6zz4HOsc68zrzOriAlZCIKKworIzogc3JjL3NlbGVjdC5jOjEyMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVvZiBhZnRlciBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZCIKK21zZ3N0ciAizrHPgM+Bz4zPg868zrXOvc6/IGVvZiDOvM61z4TOrCDPhM6/IM+Mzr3Ov868zrEgz4DOsc66zq3PhM6/z4Ugz4PPhM63ICDOs8+BzrHOvM68zq4gJWQiCisKKyM6IHNyYy9zZWxlY3QuYzoxMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgbGluZSBhZnRlciBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZCIKK21zZ3N0ciAizrHPgM+Bz4zPg868zrXOvc6/IM+Ezq3Ou86/z4Igz4TOt8+CIM6zz4HOsc68zrzOrs+CIM68zrXPhM6sIM+Ezr8gz4zOvc6/zrzOsSDPgM6xzrrOrc+Ezr/PhSDPg8+EzrcgzrPPgc6xzrzOvM6uICVkIgorCisjOiBzcmMvc2VsZWN0LmM6MTM2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZGF0YSBhZnRlciBwYWNrYWdlIGFuZCBzZWxlY3Rpb24gYXQgbGluZSAlZCIKK21zZ3N0ciAizrHPgM+Bz4zPg868zrXOvc6xIM60zrXOtM6/zrzOrc69zrEgzrzOtc+Ezqwgz4TOvyDPgM6xzrrOrc+Ezr8gzrrOsc65IM+EzrfOvSDOtc+AzrnOu86/zrPOriDPg8+EzrcgzrPPgc6xzrzOvM6uICVkIgorCisjOiBzcmMvc2VsZWN0LmM6MTM5CisjLCBjLWZvcm1hdAorbXNnaWQgImlsbGVnYWwgcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQ6ICUuMjUwcyIKK21zZ3N0ciAizrzOtyDOsc+Azr/OtM61zrrPhM+MIM+Mzr3Ov868zrEgz4DOsc66zq3PhM6/z4Ugz4PPhM63IM6zz4HOsc68zrzOriAlZDogJS4yNTBzIgorCisjOiBzcmMvc2VsZWN0LmM6MTQzCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gd2FudGVkIHN0YXR1cyBhdCBsaW5lICVkOiAlLjI1MHMiCittc2dzdHIgIs6szrPOvc+Jz4PPhM63IM62zrfPhM6/z43OvM61zr3OtyDOus6xz4TOrM+Dz4TOsc+Dzrcgz4PPhM63IM6zz4HOsc68zrzOriAlZDogJS4yNTBzIgorCisjOiBzcmMvc2VsZWN0LmM6MTQ5Cittc2dpZCAicmVhZCBlcnJvciBvbiBzdGFuZGFyZCBpbnB1dCIKK21zZ3N0ciAiz4PPhs6szrvOvM6xIM6xzr3OrM6zzr3Pic+DzrfPgiDPg8+EzrfOvSDPgM+Bz4zPhM+Fz4DOtyDOtc6vz4POv860zr8gKHN0ZGluKSIKKworIzogc3JjL3N0YXRjbWQuYzo1MgorbXNnaWQgIlVzZSAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgb3ZlcnJpZGluZyBmaWxlIHN0YXQgaW5mb3JtYXRpb24uIgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0Y21kLmM6NjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsIDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDYtMjAwOSBHdWlsbGVtIEpvdmVyLlxuIgorbXNnc3RyICIiCisiXG4iCisiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMC0yMDAyIFdpY2hlcnQgQWtrZXJtYW4uIgorCisjOiBzcmMvc3RhdGNtZC5jOjgxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC0tYWRkIDxvd25lcj4gPGdyb3VwPiA8bW9kZT4gPGZpbGU+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkIGEgbmV3IGVudHJ5IGludG8gdGhlIGRhdGFiYXNlLlxuIgorIiAgLS1yZW1vdmUgPGZpbGU+ICAgICAgICAgIHJlbW92ZSBmaWxlIGZyb20gdGhlIGRhdGFiYXNlLlxuIgorIiAgLS1saXN0IFs8Z2xvYi1wYXR0ZXJuPl0gIGxpc3QgY3VycmVudCBvdmVycmlkZXMgaW4gdGhlIGRhdGFiYXNlLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0Y21kLmM6ODkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIHNldCB0aGUgZGlyZWN0b3J5IHdpdGggdGhlIHN0YXRvdmVycmlkZSBmaWxlLlxuIgorIiAgLS11cGRhdGUgICAgICAgICAgICAgICAgIGltbWVkaWF0ZWx5IHVwZGF0ZSBmaWxlIHBlcm1pc3Npb25zLlxuIgorIiAgLS1mb3JjZSAgICAgICAgICAgICAgICAgIGZvcmNlIGFuIGFjdGlvbiBldmVuIGlmIGEgc2FuaXR5IGNoZWNrIGZhaWxzLlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHF1aWV0IG9wZXJhdGlvbiwgbWluaW1hbCBvdXRwdXQuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorbXNnc3RyICIiCisizqfPgc6uz4POtzogJXMgWzxvcHRpb24+IC4uLl0gPGNvbW1hbmQ+XG4iCisiXG4iCisizpXOvc+Ezr/Ou86tz4I6XG4iCisiICAtLWFkZCA8b3duZXI+IDxncm91cD4gPG1vZGU+IDxmaWxlPlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIM+Az4HOv8+DzrjOrs66zrcgzrzOuc6xz4IgzrrOsc65zr3Ov8+Nz4HOuc6xz4IgzrXOuc+Dz4zOtM6/z4Ugz4PPhM63zr0gzrLOrM+DzrcgIgorIs60zrXOtM6/zrzOrc69z4nOvS5cbiIKKyIgIC0tcmVtb3ZlIDxmaWxlPiAgICAgICAgICDOsc+GzrHOr8+BzrXPg863IM6xz4HPh861zq/Pic69IM6xz4DPjCDPhM63zr0gzrLOrM+DzrcgzrTOtc60zr/OvM6tzr3Pic69LlxuIgorIiAgLS1saXN0IFs8Z2xvYi1wYXR0ZXJuPl0gIM+AzrHPgc6szrjOtc+Dzrcgz4TPic69IM+Ez4HOtc+Hz4zOvc+Ez4nOvSBvdmVycmlkZXMgz4PPhM63zr0gzrLOrM+DzrcgIgorIs60zrXOtM6/zrzOrc69z4nOvS5cbiIKKyJcbiIKKyJPcHRpb25zOlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIM66zrHOuM6/z4HOuc+DzrzPjM+CIM+Ezr/PhSDOus6xz4TOsc67z4zOs86/z4UgzrzOtSDPhM6/IM6xz4HPh861zq/OvyAiCisic3RhdG92ZXJyaWRlLlxuIgorIiAgLS11cGRhdGUgICAgICAgICAgICAgICAgIM6szrzOtc+DzrcgzrXOvc63zrzOrc+Bz4nPg863IM+Ez4nOvSDOtM65zrrOsc65z4nOvM6sz4TPic69IM+Ez4nOvSDOsc+Bz4fOtc6vz4nOvS5cbiIKKyIgIC0tZm9yY2UgICAgICAgICAgICAgICAgICDOtc+AzrnOss6/zrvOriDOvM65zrHPgiDOtc69zq3Pgc6zzrXOuc6xz4IgzrHOus+MzrzOsSDOus65IM6xzr0gzr8gzq3Ou861zrPPh86/z4IgIgorIlwiz4XOs861zq/Osc+CXCIgzrHPgM6/z4TPjc+HzrXOuS5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICDOsc64z4zPgc+FzrLOtyDOu861zrnPhM6/z4XPgc6zzq/OsSwgz4DOsc+BzrHOs8+JzrPOriDOtc67zqzPh865z4PPhM63z4IgzrXOvs+MzrTOv8+FLlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIM61zrzPhs6szr3Ouc+DzrcgzrHPhc+Ezr/PjSDPhM6/z4UgzrzOt869z43OvM6xz4TOv8+CIM6yzr/Ors64zrXOuc6xz4IuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgzrXOvM+GzqzOvc65z4POtyDPhM63z4Igzq3Ous60zr/Pg863z4IuXG4iCisKKyM6IHNyYy9zdGF0Y21kLmM6MTE2Cittc2dpZCAic3RyaXBwaW5nIHRyYWlsaW5nIC8iCittc2dzdHIgIs6xz4bOsc6vz4HOtc+Dzrcgz4TPic69IM+AzrXPgc65z4PPg861z4XOv8+NzrzOtc69z4nOvSAvIgorCisjOiBzcmMvc3RhdGNtZC5jOjIwNworIywgZnV6enkKK21zZ2lkICJjYW5ub3Qgb3BlbiBuZXcgc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIs6xzrTPhc69zrHOvM6vzrEgzqzOvc6/zrnOs868zrHPhM6/z4Igzr3Orc6/z4UgzrHPgc+HzrXOr86/z4Ugc3RhdG92ZXJyaWRlOiAlcyIKKworIzogc3JjL3N0YXRjbWQuYzoyMjIKKyMsIGZ1enp5Cittc2dpZCAiZXJyb3IgcmVtb3Zpbmcgc3RhdG92ZXJyaWRlLW9sZCIKK21zZ3N0ciAiz4PPhs6szrvOvM6xIM+Dz4TOt869IM6xz4bOsc6vz4HOtc+Dzrcgz4TOv8+FIHN0YXRvdmVycmlkZS1vbGQ6ICVzIgorCisjOiBzcmMvc3RhdGNtZC5jOjIyNAorIywgZnV6enkKK21zZ2lkICJlcnJvciBjcmVhdGluZyBuZXcgc3RhdG92ZXJyaWRlLW9sZCIKK21zZ3N0ciAiz4PPhs6szrvOvM6xIM+Dz4TOtyDOtM63zrzOuc6/z4XPgc6zzq/OsSDOvc6tzr/PhSDOsc+Bz4fOtc6vzr/PhSBzdGF0b3ZlcnJpZGUtb2xkOiAlcyIKKworIzogc3JjL3N0YXRjbWQuYzoyMjYKKyMsIGZ1enp5Cittc2dpZCAiZXJyb3IgaW5zdGFsbGluZyBuZXcgc3RhdG92ZXJyaWRlIgorbXNnc3RyICLPg8+GzqzOu868zrEgz4PPhM63zr0gzrXOs866zrHPhM6sz4PPhM6xz4POtyDPhM6/z4Ugzr3Orc6/z4Ugc3RhdG92ZXJyaWRlOiAlcyIKKworIzogc3JjL3N0YXRjbWQuYzoyNDYKK21zZ2lkICItLWFkZCBuZWVkcyBmb3VyIGFyZ3VtZW50cyIKK21zZ3N0ciAizrcgzrXOvc+Ezr/Ou86uIC0tYWRkIM+Hz4HOtc65zqzOts61z4TOsc65IM+Ezq3Pg8+DzrXPgc6xIM6/z4HOr8+DzrzOsc+EzrEiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjU2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiQW4gb3ZlcnJpZGUgZm9yICclcycgYWxyZWFkeSBleGlzdHMsIGJ1dCAtLWZvcmNlIHNwZWNpZmllZCBzbyB3aWxsIGJlICIKKyJpZ25vcmVkLiIKK21zZ3N0ciAizrHOu867zqwgzq3Ph861zrkgzrTOv864zrXOryDOtyDOtc+AzrnOu86/zrPOriAtLWZvcmNlIM6/z4DPjM+EzrUgzrjOsSDOsc6zzr3Ov863zrjOtc6vLiIKKworIzogc3JjL3N0YXRjbWQuYzoyNjAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIkFuIG92ZXJyaWRlIGZvciAnJXMnIGFscmVhZHkgZXhpc3RzLCBhYm9ydGluZy4iCittc2dzdHIgIs6lz4DOrM+Bz4fOtc65IM6uzrTOtyBvdmVycmlkZSDOs865zrEgz4TOvyBcIiVzXCIsIgorCisjOiBzcmMvc3RhdGNtZC5jOjI3MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiLS11cGRhdGUgZ2l2ZW4gYnV0ICVzIGRvZXMgbm90IGV4aXN0IgorbXNnc3RyICLPgM+Bzr/Otc65zrTOv8+Azr/Or863z4POtzogzrTPjM64zrfOus61IC0tdXBkYXRlIM6xzrvOu86sIM+Ezr8gJXMgzrTOtc69IM+Fz4DOrM+Bz4fOtc65IgorCisjOiBzcmMvc3RhdGNtZC5jOjI5NgorbXNnaWQgIk5vIG92ZXJyaWRlIHByZXNlbnQuIgorbXNnc3RyICLOlM61zr0gz4XPgM6sz4HPh861zrkgb3ZlcnJpZGUuIgorCisjOiBzcmMvc3RhdGNtZC5jOjMwNAorIywgZnV6enkKK21zZ2lkICItLXVwZGF0ZSBpcyB1c2VsZXNzIGZvciAtLXJlbW92ZSIKK21zZ3N0ciAiz4DPgc6/zrXOuc60zr/PgM6/zq/Ot8+Dzrc6IM+Ezr8gLS11cGRhdGUgzrXOr869zrHOuSDOrM+Hz4HOt8+Dz4TOvyDOs865zrEgz4TOvyAtLXJlbW92ZSIKKworIzogc3JjL3N0YXRkYi5jOjU5CisjLCBmdXp6eQorbXNnaWQgInN5bnRheCBlcnJvcjogaW52YWxpZCB1aWQgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIs+Dz4bOrM67zrzOsSDPg8+EzrfOvSDOtc6zzrrOsc+EzqzPg8+EzrHPg863IM+Ezr/PhSDOvc6tzr/PhSBzdGF0b3ZlcnJpZGU6ICVzIgorCisjOiBzcmMvc3RhdGRiLmM6NjQKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yOiB1bmtub3duIHVzZXIgJyVzJyBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGRiLmM6ODMKKyMsIGZ1enp5Cittc2dpZCAic3ludGF4IGVycm9yOiBpbnZhbGlkIGdpZCBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiz4PPhs6szrvOvM6xIM+Dz4TOt869IM61zrPOus6xz4TOrM+Dz4TOsc+Dzrcgz4TOv8+FIM69zq3Ov8+FIHN0YXRvdmVycmlkZTogJXMiCisKKyM6IHNyYy9zdGF0ZGIuYzo4OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yOiB1bmtub3duIGdyb3VwICclcycgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIs6xz4DOv8+Ez4XPh86vzrEgzrrOsc+Ezqwgz4TOvyDOrM69zr/Ouc6zzrzOsSDPhM6/z4UgzrHPgc+HzrXOr86/z4Ugc3RhdG92ZXJyaWRlIgorCisjOiBzcmMvc3RhdGRiLmM6MTA0CisjLCBmdXp6eQorbXNnaWQgInN5bnRheCBlcnJvcjogaW52YWxpZCBtb2RlIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICLOsc+Azr/PhM+Fz4fOr86xIM66zrHPhM6sIM+Ezr8gzqzOvc6/zrnOs868zrEgz4TOv8+FIM6xz4HPh861zq/Ov8+FIHN0YXRvdmVycmlkZSIKKworIzogc3JjL3N0YXRkYi5jOjEyNworbXNnaWQgImZhaWxlZCB0byBvcGVuIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICLOsc+Azr/PhM+Fz4fOr86xIM66zrHPhM6sIM+Ezr8gzqzOvc6/zrnOs868zrEgz4TOv8+FIM6xz4HPh861zq/Ov8+FIHN0YXRvdmVycmlkZSIKKworIzogc3JjL3N0YXRkYi5jOjEzNAorbXNnaWQgImZhaWxlZCB0byBmc3RhdCBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAizrHPgM6/z4TPhc+Hzq/OsSDOus6xz4TOrCDPhM63zr0gzrXOus+Ezq3Ou861z4POtyDPhM63z4IgZnN0YXQgz4PPhM6/IM6xz4HPh861zq/OvyBzdGF0b3ZlcnJpZGUiCisKKyM6IHNyYy9zdGF0ZGIuYzoxMzcKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgcHJldmlvdXMgc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIiIKKyLOsc+Azr/PhM+Fz4fOr86xIM66zrHPhM6sIM+EzrfOvSDOtc66z4TOrc67zrXPg863IM+EzrfPgiBmc3RhdCDPg8+Ezr8gz4DPgc6/zrfOs86/z43OvM61zr3OvyDOsc+Bz4fOtc6vzr8gc3RhdG92ZXJyaWRlIgorCisjOiBzcmMvc3RhdGRiLmM6MTYyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJzdGF0b3ZlcnJpZGUgZmlsZSBgJS4yNTBzJyIKK21zZ2lkICJyZWFkaW5nIHN0YXRvdmVycmlkZSBmaWxlICclLjI1MHMnIgorbXNnc3RyICLOsc+Bz4fOtc6vzr8gc3RhdG92ZXJyaWRlIGAlLjI1MHMnIgorCisjOiBzcmMvc3RhdGRiLmM6MTY5CisjLCBmdXp6eQorbXNnaWQgInN0YXRvdmVycmlkZSBmaWxlIGlzIG1pc3NpbmcgZmluYWwgbmV3bGluZSIKK21zZ3N0ciAiz4TOvyDOsc+Bz4fOtc6vzr8gc3RhdG92ZXJyaWRlIM+AzrXPgc65zq3Ph861zrkgzrzOuc6xIM66zrXOvc6uIM6zz4HOsc68zrzOriIKKworIzogc3JjL3N0YXRkYi5jOjE3MworbXNnaWQgInN0YXRvdmVycmlkZSBmaWxlIGNvbnRhaW5zIGVtcHR5IGxpbmUiCittc2dzdHIgIs+Ezr8gzrHPgc+HzrXOr86/IHN0YXRvdmVycmlkZSDPgM61z4HOuc6tz4fOtc65IM68zrnOsSDOus61zr3OriDOs8+BzrHOvM68zq4iCisKKyM6IHNyYy9zdGF0ZGIuYzoxNzggc3JjL3N0YXRkYi5jOjE5MCBzcmMvc3RhdGRiLmM6MjAyCisjLCBmdXp6eQorbXNnaWQgInN5bnRheCBlcnJvciBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAizrHPgM6/z4TPhc+Hzq/OsSDOus6xz4TOrCDPhM6/IM6szr3Ov865zrPOvM6xIM+Ezr/PhSDOsc+Bz4fOtc6vzr/PhSBzdGF0b3ZlcnJpZGUiCisKKyM6IHNyYy9zdGF0ZGIuYzoxODYgc3JjL3N0YXRkYi5jOjE5OCBzcmMvc3RhdGRiLmM6MjEwCisjLCBmdXp6eQorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGxpbmUgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIs6xz4DPgc+Mz4POvM61zr3OvyDPhM6tzrvOv8+CIM+EzrfPgiDOs8+BzrHOvM68zq7PgiDPg8+Ezr8gz4zOvc6/zrzOsSDPgM6xzrrOrc+Ezr/PhSDPg8+EzrcgzrPPgc6xzrzOvM6uICVkIgorCisjOiBzcmMvc3RhdGRiLmM6MjE0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJtdWx0aXBsZSBzdGF0dXNvdmVycmlkZXMgcHJlc2VudCBmb3IgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAizrHPgc+HzrXOr86/IHN0YXRvdmVycmlkZSBgJS4yNTBzJyIKKworIzogc3JjL3RyaWdjbWQuYzo0NgorbXNnaWQgIlR5cGUgZHBrZy10cmlnZ2VyIC0taGVscCBmb3IgaGVscCBhYm91dCB0aGlzIHV0aWxpdHkuIgorbXNnc3RyICIiCisizqDOu863zrrPhM+Bzr/Ou86/zrPOrs+Dz4TOtSBkcGtnLXRyaWdnZXIgLS1oZWxwIM6zzrnOsSDOss6/zq7OuM61zrnOsSDPg8+HzrXPhM65zrrOrCDOvM61IM6xz4XPhM+MIM+Ezr8gzrLOv863zrjOt8+EzrnOus+MICIKKyLPgM+Bz4zOs8+BzrHOvM68zrEuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjUxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gJXMgcGFja2FnZSB0cmlnZ2VyIHV0aWxpdHkgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAizpLOv863zrjOt8+EzrnOus+MIM61z4HOs86xzrvOtc6vzr8gzrPOuc6xIM+Ezr/Phc+CIHRyaWdnZXIgz4DOsc66zq3PhM+Jzr0gz4TOv8+FIERlYmlhbiAlcy5cbiIKKworIzogc3JjL3RyaWdjbWQuYzo2NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9ucz4gLi4uXSA8dHJpZ2dlci1uYW1lPlxuIgorIiAgICAgICAlcyBbPG9wdGlvbnM+IC4uLl0gPGNvbW1hbmQ+XG4iCisiXG4iCittc2dzdHIgIiIKKyLOp8+Bzq7Pg863OiAlcyBbPG9wdGlvbnM+IC4uLl0gPHRyaWdnZXItbmFtZT5cbiIKKyIgICAgICAgJXMgWzxvcHRpb25zPiAuLi5dIDxjb21tYW5kPlxuIgorIlxuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC0tY2hlY2stc3VwcG9ydGVkICAgICAgICAgICAgICAgIENoZWNrIGlmIHRoZSBydW5uaW5nIGRwa2cgc3VwcG9ydHMgIgorInRyaWdnZXJzLlxuIgorIlxuIgorbXNnc3RyICIiCisizpXOvc+Ezr/Ou86tz4I6XG4iCisiICAtLWNoZWNrLXN1cHBvcnRlZCAgICAgICAgICAgICAgICDOiM67zrXOs86+zrUgzrHOvSDPhM6/IGRwa2cgz4DOv8+FIM61zrrPhM61zrvOtc6vz4TOsc65ICIKKyLPhc+Azr/Pg8+EzrfPgc6vzrbOtc65IHRyaWdnZXJzLlxuIgorIlxuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjgyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hZG1pbmRpcj08ZGlyZWN0b3J5PiAgICAgICAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMuXG4iCisiICAtLWJ5LXBhY2thZ2U9PHBhY2thZ2U+ICAgICAgICAgICBPdmVycmlkZSB0cmlnZ2VyIGF3YWl0ZXIgKG5vcm1hbGx5IHNldFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBieSBkcGtnKS5cbiIKKyIgIC0tbm8tYXdhaXQgICAgICAgICAgICAgICAgICAgICAgIE5vIHBhY2thZ2UgbmVlZHMgdG8gYXdhaXQgdGhlICIKKyJwcm9jZXNzaW5nLlxuIgorIiAgLS1uby1hY3QgICAgICAgICAgICAgICAgICAgICAgICAgSnVzdCB0ZXN0IC0gZG9uJ3QgYWN0dWFsbHkgY2hhbmdlICIKKyJhbnl0aGluZy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIs6Vz4DOuc67zr/Os86tz4I6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgICAgICAgICDOp8+Bzq7Pg863IM+Ezr/PhSDOus6xz4TOsc67z4zOs86/z4UgPGRpcmVjdG9yeT4gzrHOvc+Ezq8gz4TOv8+FICIKKyIlcy5cbiIKKyIgIC0tYnktcGFja2FnZT08cGFja2FnZT4gICAgICAgICAgIM6lz4DOtc+Bz4POus6tzrvOuc+Dzrcgz4TOv8+FIM6xzr3Osc68zr/Ovc6tzrEgdHJpZ2dlciAoz4PPhc69zq7OuM+Jz4IgIgorIs66zrHOuM6/z4HOr862zrXPhM6xzrlcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgzrHPgM+MIM+Ezr8gZHBrZykuXG4iCisiICAtLW5vLWF3YWl0ICAgICAgICAgICAgICAgICAgICAgICDOms6xzr3Orc69zrEgz4DOsc66zq3PhM6/IM60zrXOvSDPh8+BzrXOuc6szrbOtc+EzrHOuSDOvc6xIM+AzrXPgc65zrzOrc69zrXOuSAiCisiz4TOt869IM61z4DOtc6+zrXPgc6zzrHPg86vzrEuXG4iCisiICAtLW5vLWFjdCAgICAgICAgICAgICAgICAgICAgICAgICDOkc+AzrvOrCDOtM6/zrrOr868zrHPg861IC0gzrzOt869IM6xzrvOu86szr7Otc65z4Igz4PPhM63zr0gIgorIs+Az4HOsc6zzrzOsc+EzrnOus+Mz4TOt8+EzrEgz4TOr8+Azr/PhM6xLlxuIgorIlxuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogdHJpZ2dlcnMgZGF0YSBkaXJlY3Rvcnkgbm90IHlldCBjcmVhdGVkXG4iCittc2dzdHIgIiVzOiDOvyDOus6xz4TOrM67zr/Os86/z4IgzrTOtc60zr/OvM6tzr3Pic69IM+Ez4nOvSB0cmlnZ2VycyDOtM61zr0gzq3Ph861zrkgzrHOus+MzrzOsSDOtM63zrzOuc6/z4XPgc6zzrfOuM61zq9cbiIKKworIzogc3JjL3RyaWdjbWQuYzoxNTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IHRyaWdnZXIgcmVjb3JkcyBub3QgeWV0IGluIGV4aXN0ZW5jZVxuIgorbXNnc3RyICIlczogzrHPgc+HzrXOr86xIM+Ez4nOvSB0cmlnZ2VyIM60zrXOvSDPhc+AzqzPgc+Hzr/Phc69IM6xzrrPjM68zrFcbiIKKworIzogc3JjL3RyaWdjbWQuYzoyMDUKKyMsIGZ1enp5Cittc2dpZCAidGFrZXMgb25lIGFyZ3VtZW50LCB0aGUgdHJpZ2dlciBuYW1lIgorbXNnc3RyICJkcGtnLXRyaWdnZXIgz4DOsc6vz4HOvc61zrkgzq3Ovc6xIM+Mz4HOuc+DzrzOsSwgz4TOvyDPjM69zr/OvM6xIM+Ezr/PhSB0cmlnZ2VyIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIxMAorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiZHBrZy10cmlnZ2VyIG11c3QgYmUgY2FsbGVkIGZyb20gYSBtYWludGFpbmVyIHNjcmlwdCAob3Igd2l0aCBhIC0tYnktIgorI3wgInBhY2thZ2Ugb3B0aW9uKSIKK21zZ2lkICJtdXN0IGJlIGNhbGxlZCBmcm9tIGEgbWFpbnRhaW5lciBzY3JpcHQgKG9yIHdpdGggYSAtLWJ5LXBhY2thZ2Ugb3B0aW9uKSIKK21zZ3N0ciAiIgorIs+Ezr8gZHBrZy10cmlnZ2VyIM+Az4HOrc+AzrXOuSDOvc6xIM66zrvOt864zrXOryDOsc+Az4wgzq3Ovc6xIM+DzrXOvc6sz4HOuc6/IM+Dz4XOvc+EzrfPgc63z4TOriAozq4gzrzOtSDPhM63zr0gzrXPgM65zrvOv86zzq4gIgorIi0tYnktcGFja2FnZSkiCisKKyM6IHNyYy90cmlnY21kLmM6MjE1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJkcGtnLXRyaWdnZXI6IGlsbGVnYWwgYXdhaXRlZCBwYWNrYWdlIG5hbWUgYCUuMjUwcyc6ICUuMjUwcyIKK21zZ2lkICJpbGxlZ2FsIGF3YWl0ZWQgcGFja2FnZSBuYW1lICclLjI1MHMnOiAlLjI1MHMiCittc2dzdHIgImRwa2ctdHJpZ2dlcjogzrzOtyDOuM61zrzOuc+Ez4wgz4zOvc6/zrzOsSDPgM6xzrrOrc+Ezr/PhSDPg861IM6xzr3Osc68zr/Ovc6uICBgJS4yNTBzJzogJS4yNTBzIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIyMQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCB0cmlnZ2VyIG5hbWUgYCUuMjUwcyc6ICUuMjUwcyIKK21zZ3N0ciAiZHBrZy10cmlnZ2VyOiDOvM63IM6tzrPOus+Fz4HOvyDPjM69zr/OvM6xIHRyaWdnZXIgYCUuMjUwcyc6ICUuMjUwcyIKKworIzogc3JjL3RyaWdwcm9jLmM6MjUwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogY3ljbGUgZm91bmQgd2hpbGUgcHJvY2Vzc2luZyB0cmlnZ2VyczpcbiIKKyIgY2hhaW4gb2YgcGFja2FnZXMgd2hvc2UgdHJpZ2dlcnMgYXJlIG9yIG1heSBiZSByZXNwb25zaWJsZTpcbiIKK21zZ3N0ciAiIgorIiVzOiDOss+Bzq3OuM63zrrOtSDOrc69zrHPgiDOus+NzrrOu86/z4IgzrrOsc+Ezqwgz4TOt869IM61z4DOtc6+zrXPgc6zzrHPg86vzrEgz4TPic69IHRyaWdnZXJzOlxuIgorIiDOsc67z4XPg86vzrTOsSDPhM+Jzr0gz4DOsc66zq3PhM+Jzr0gz4DOv8+FIM6/zrkgdHJpZ2dlciDPhM6/z4XPgiDOtc6vzr3Osc65IM6uIM+AzrnOuM6xzr3PjM69IM69zrEgzrXOr869zrHOuSAiCisiz4XPgM61z43OuM+Fzr3Ov865OlxuIgorCisjOiBzcmMvdHJpZ3Byb2MuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiBwYWNrYWdlcycgcGVuZGluZyB0cmlnZ2VycyB3aGljaCBhcmUgb3IgbWF5IGJlIHVucmVzb2x2YWJsZTpcbiIKK21zZ3N0ciAiIgorIlxuIgorIiB0cmlnZ2VyIM61zrrOus+BzrXOvM+Ozr0gz4DOsc66zq3PhM+Jzr0gz4DOv8+FIM61zq/Ovc6xzrkgzq4gz4DOuc64zrHOvc+Mzr0gzr3OsSDOtc6vzr3Osc65IM6xzr3Otc+Azq/Ou8+Fz4TOv865OlxuIgorCisjOiBzcmMvdHJpZ3Byb2MuYzoyODEKK21zZ2lkICJ0cmlnZ2VycyBsb29waW5nLCBhYmFuZG9uZWQiCittc2dzdHIgIs6/zrkgdHJpZ2dlciDOtc6vzr3Osc65IM+DzrUgbG9vcCwgz4TOtc+BzrzOsc+EzrnPg868z4zPgiIKKworIzogc3JjL3RyaWdwcm9jLmM6MzEyCisjLCBjLWZvcm1hdAorbXNnaWQgIlByb2Nlc3NpbmcgdHJpZ2dlcnMgZm9yICVzIC4uLlxuIgorbXNnc3RyICLOlc+AzrXOvs61z4HOs86xz4POr86xIM+Ez4nOvSB0cmlnZ2VyIM6zzrnOsSAlcyAuLi5cbiIKKworIzogc3JjL3VwZGF0ZS5jOjUyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICItLSVzIG5lZWRzIGV4YWN0bHkgb25lIFBhY2thZ2VzIGZpbGUgYXJndW1lbnQiCittc2dpZCAiLS0lcyBuZWVkcyBleGFjdGx5IG9uZSBQYWNrYWdlcy1maWxlIGFyZ3VtZW50IgorbXNnc3RyICLOtyAtLSVzIM6xz4DOsc65z4TOtc6vIM6xzrrPgc65zrLPjs+CIM68zq/OsSDPgM6xz4HOrM68zrXPhM+Bzr8gzq3Ovc6xIM6xz4HPh861zq/OvyBQYWNrYWdlcyIKKworIzogc3JjL3VwZGF0ZS5jOjYyCittc2dpZCAidW5hYmxlIHRvIGFjY2VzcyBkcGtnIHN0YXR1cyBhcmVhIGZvciBidWxrIGF2YWlsYWJsZSB1cGRhdGUiCittc2dzdHIgIiIKKyLOsc60z43Ovc6xz4TOtyDOtyDPgM+Bz4zPg86yzrHPg863IM+Dz4TOvyDOsc+Bz4fOtc6vzr8gzrrOsc+EzqzPg8+EzrHPg863z4Igz4TOv8+FIGRwa2cgzrPOuc6xIM68zrHOts65zrrOrc+CIM6xzr3Osc69zrXPjs+DzrXOuc+CICIKKyLOtM65zrHOuM61z4POuc68z4zPhM63z4TOsc+CIgorCisjOiBzcmMvdXBkYXRlLmM6NjQKK21zZ2lkICJidWxrIGF2YWlsYWJsZSB1cGRhdGUgcmVxdWlyZXMgd3JpdGUgYWNjZXNzIHRvIGRwa2cgc3RhdHVzIGFyZWEiCittc2dzdHIgIiIKKyLOv865IM68zrHOts65zrrOrc+CIM6xzr3Osc69zrXPjs+DzrXOuc+CIM60zrnOsc64zrXPg865zrzPjM+EzrfPhM6xz4IgzrHPgM6xzrnPhM6/z43OvSDOrM60zrXOuc6xIM61zrPOs8+BzrHPhs6uz4Igz4PPhM6/IM6xz4HPh861zq/OvyAiCisizrrOsc+EzqzPg8+EzrHPg863z4IiCisKKyM6IHNyYy91cGRhdGUuYzo3MQorIywgYy1mb3JtYXQKK21zZ2lkICJSZXBsYWNpbmcgYXZhaWxhYmxlIHBhY2thZ2VzIGluZm8sIHVzaW5nICVzLlxuIgorbXNnc3RyICLOkc69z4TOuc66zrHPhM6sz4PPhM6xz4POtyDPgM67zrfPgc6/z4bOv8+BzrnPjs69IM60zrnOsc64zq3Pg865zrzPic69IM+AzrHOus6tz4TPic69LCDOvM61IM+Hz4HOrs+Dzrcgz4TOv8+FICVzLlxuIgorCisjOiBzcmMvdXBkYXRlLmM6NzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiVXBkYXRpbmcgYXZhaWxhYmxlIHBhY2thZ2VzIGluZm8sIHVzaW5nICVzLlxuIgorbXNnc3RyICLOkc69zrHOvc6tz4nPg863IM+AzrvOt8+Bzr/Phs6/z4HOuc+Ozr0gzrTOuc6xzrjOrc+DzrnOvM+Jzr0gz4DOsc66zq3PhM+Jzr0sIM68zrUgz4fPgc6uz4POtyDPhM6/z4UgJXMuXG4iCisKKyM6IHNyYy91cGRhdGUuYzoxMDEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIkluZm9ybWF0aW9uIGFib3V0ICVkIHBhY2thZ2Uocykgd2FzIHVwZGF0ZWQuXG4iCittc2dpZCAiSW5mb3JtYXRpb24gYWJvdXQgJWQgcGFja2FnZSB3YXMgdXBkYXRlZC5cbiIKK21zZ2lkX3BsdXJhbCAiSW5mb3JtYXRpb24gYWJvdXQgJWQgcGFja2FnZXMgd2FzIHVwZGF0ZWQuXG4iCittc2dzdHJbMF0gIs6Rzr3Osc69zrXPjs64zrfOus6xzr0gzr/OuSDPgM67zrfPgc6/z4bOv8+Bzq/Otc+CIM6zzrnOsSAlZCDPgM6xzrrOrc+EzrEuXG4iCittc2dzdHJbMV0gIs6Rzr3Osc69zrXPjs64zrfOus6xzr0gzr/OuSDPgM67zrfPgc6/z4bOv8+Bzq/Otc+CIM6zzrnOsSAlZCDPgM6xzrrOrc+EzrEuXG4iCisKKyM6IHNyYy91cGRhdGUuYzoxMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm9ic29sZXRlICctLSVzJyBvcHRpb24sIHVuYXZhaWxhYmxlIHBhY2thZ2VzIGFyZSBhdXRvbWF0aWNhbGx5IGNsZWFuZWQgdXAuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgbmFtZSAnJS41MHMuLi4nIGlzIHRvbyBsb25nIgorbXNnc3RyICLPhM6/IM+Mzr3Ov868zrEgz4TOv8+FIM6xz4HPh861zq/Ov8+FICclLjUwcy4uLicgzrXOr869zrHOuSDPgM6/zrvPjSDOvM61zrPOrM67zr8iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTI5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBmaWxlIG5hbWUgJyUuMjUwcyciCittc2dzdHIgIs6xzrTPjc69zrHPhM6/IM+Ezr8gzqzOvc6/zrnOs868zrEgz4TOv8+FIM6xz4HPh861zq/Ov8+FIM+AzrfOs86uz4IgYCUuMjUwcyciCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTg5CisjLCBmdXp6eQorbXNnaWQgInVuYWJsZSB0byBzdGF0IGNvbnRyb2wgZGlyZWN0b3J5IgorbXNnc3RyICLOsc60z43Ovc6xz4TOvyDPhM6/IM6szr3Ov865zrPOvM6xIM+Az4HOv8+Dz4nPgc65zr3Ov8+NIM66zrHPhM6xzrvPjM6zzr/PhSDOtc67zq3Os8+Hzr/PhSAoY29udHJvbCkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTkxCisjLCBmdXp6eQorbXNnaWQgImNvbnRyb2wgZGlyZWN0b3J5IGlzIG5vdCBhIGRpcmVjdG9yeSIKK21zZ3N0ciAizrHOtM+Nzr3Osc+EzrcgzrcgzrHOvc6szrPOvc+Jz4POtyDPgM67zrfPgc6/z4bOv8+BzrnPjs69IM66zrHPhM6xzrvPjM6zzr/PhSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoxOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29udHJvbCBkaXJlY3RvcnkgaGFzIGJhZCBwZXJtaXNzaW9ucyAlMDNsbyAobXVzdCBiZSA+PTA3NTUgYW5kIDw9MDc3NSkiCittc2dzdHIgIiIKKyLOvyDOus6xz4TOrM67zr/Os86/z4IgY29udHJvbCDOrc+HzrXOuSDOu86szrjOv8+CIM6szrTOtc65zrXPgiAlMDNsbyAoz4fPgc61zrnOrM62zrXPhM6xzrkgPj0wNzU1IM66zrHOuSA8PTA3NzUpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjIwNAorIywgYy1mb3JtYXQKK21zZ2lkICJtYWludGFpbmVyIHNjcmlwdCBgJS41MHMnIGlzIG5vdCBhIHBsYWluIGZpbGUgb3Igc3ltbGluayIKK21zZ3N0ciAiz4TOvyDPg861zr3OrM+BzrnOvyBgJS41MHMnIM60zrXOvSDOtc6vzr3Osc65IM6xz4DOu8+MIM6xz4HPh861zq/OvyDOriDOtM61z4POvM+Mz4IiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjA3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJtYWludGFpbmVyIHNjcmlwdCBgJS41MHMnIGhhcyBiYWQgcGVybWlzc2lvbnMgJTAzbG8gKG11c3QgYmUgPj0wNTU1IGFuZCAiCisiPD0wNzc1KSIKK21zZ3N0ciAiIgorIs+Ezr8gz4POtc69zqzPgc65zr8gYCUuNTBzJyDOrc+HzrXOuSDOu86szrjOv8+CIM6szrTOtc65zrXPgiAlMDNsbyAoz4fPgc61zrnOrM62zrXPhM6xzrkgPj0wNzU1IM66zrHOuSA8PTA3NzUpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjIxMQorIywgYy1mb3JtYXQKK21zZ2lkICJtYWludGFpbmVyIHNjcmlwdCBgJS41MHMnIGlzIG5vdCBzdGF0dGFibGUiCittc2dzdHIgIs6xzrTPjc69zrHPhM63IM63IM61z43Pgc61z4POtyDPhM63z4IgzrrOsc+EzqzPg8+EzrHPg863z4IgKHN0YXQpIM+Ezr/PhSDPg861zr3Osc+Bzq/Ov8+FIGAlLjUwcyciCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjM3Cittc2dpZCAiZXJyb3Igb3BlbmluZyBjb25mZmlsZXMgZmlsZSIKK21zZ3N0ciAiz4PPhs6szrvOvM6xIM6xzr3Ov86vzrPOvM6xz4TOv8+CIM6xz4HPh861zq/Ov8+FIGNvbmZmaWxlcyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNDYKK21zZ2lkICJlbXB0eSBzdHJpbmcgZnJvbSBmZ2V0cyByZWFkaW5nIGNvbmZmaWxlcyIKK21zZ3N0ciAizrrOtc69zq4gz4PPhc68zrLOv867zr/Pg861zrnPgc6sIM6xz4DPjCDPhM63zr0gZmdldHMgzrrOsc+Ezqwgz4TOt869IM6xzr3OrM6zzr3Pic+DzrcgzrHPgc+HzrXOr8+Jzr0gz4HPhc64zrzOr8+DzrXPic69IgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI1MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgbmFtZSAnJS41MHMuLi4nIGlzIHRvbyBsb25nLCBvciBtaXNzaW5nIGZpbmFsIG5ld2xpbmUiCittc2dzdHIgIiIKKyLPgM+Bzr/Otc65zrTOv8+Azr/Or863z4POtywgz4TOvyDPjM69zr/OvM6xIM+Ezr/PhSDOsc+Bz4fOtc6vzr/PhSDPgc+FzrjOvM6vz4POtc+Jzr0gYCUuNTBzLi4uJyDOtc6vzr3Osc65IM+Azr/Ou8+NIM68zrXOs86szrvOvyxcbiIKKyIgzq4gzrvOtc6vz4DOtc65IM6/IM+EzrXOu865zrrPjM+CIM+HzrHPgc6xzrrPhM6uz4HOsc+CIG5ld2xpbmVcbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNjQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIGZpbGVuYW1lICclcycgY29udGFpbnMgdHJhaWxpbmcgd2hpdGUgc3BhY2VzIgorbXNnc3RyICIiCisiz4DPgc6/zrXOuc60zr/PgM6/zq/Ot8+DzrcsIM+Ezr8gzrHPgc+HzrXOr86/IM+Bz4XOuM68zq/Pg861z4nOvSBgJXMnIM+AzrXPgc65zq3Ph861zrkgdHJhaWxpbmcgzrrOtc69zqwgzrTOuc6xz4PPhM6uzrzOsc+EzrFcbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgYCUuMjUwcycgZG9lcyBub3QgYXBwZWFyIGluIHBhY2thZ2UiCittc2dzdHIgIs+Ezr8gY29uZmZpbGUgYCUuMjUwcycgzrTOtc69IM61zrzPhs6xzr3Or862zrXPhM6xzrkgz4PPhM6/IM+AzrHOus6tz4TOvyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgYCUuMjUwcycgaXMgbm90IHN0YXR0YWJsZSIKK21zZ3N0ciAizrHOtM+Nzr3Osc+EzrcgzrcgzrXPjc+BzrXPg863IM+EzrfPgiDOus6xz4TOrM+Dz4TOsc+DzrfPgiAoc3RhdCkgz4TOv8+FIM6xz4HPh861zq/Ov8+FIM+Bz4XOuM68zq/Pg861z4nOvSBgJS41MHMnIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI3MAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgJyVzJyBpcyBub3QgYSBwbGFpbiBmaWxlIgorbXNnc3RyICLPgM+Bzr/Otc65zrTOv8+Azr/Or863z4POtywgz4TOvyDOsc+Bz4fOtc6vzr8gz4HPhc64zrzOr8+DzrXPic69IGAlcycgzrTOtc69IM61zq/Ovc6xzrkgzrrOv865zr3PjCDOsc+Bz4fOtc6vzr9cbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNzQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIG5hbWUgJyVzJyBpcyBkdXBsaWNhdGVkIgorbXNnc3RyICLOtc+AzrHOvc6szrvOt8+Izrcgzr/Ovc+MzrzOsc+Ezr/PgiDPhM6/z4UgzrTOtc+Fz4TOtc+BzrXPjc6/zr3PhM6/z4Igz4PPhc69zrTOrc+DzrzOv8+FICVzIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI4NworbXNnaWQgImVycm9yIHJlYWRpbmcgY29uZmZpbGVzIGZpbGUiCittc2dzdHIgIs+Dz4bOrM67zrzOsSDOsc69zqzOs869z4nPg863z4IgzrHPgc+HzrXOr86/z4UgY29uZmZpbGVzIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjMzOQorbXNnaWQgInBhY2thZ2UgbmFtZSBoYXMgY2hhcmFjdGVycyB0aGF0IGFyZW4ndCBsb3dlcmNhc2UgYWxwaGFudW1zIG9yIGAtKy4nIgorbXNnc3RyICIiCisiz4TOvyDPjM69zr/OvM6xIM+Ezr/PhSDOsc+Bz4fOtc6vzr/PhSDPgM61z4HOuc6tz4fOtc65IM+HzrHPgc6xzrrPhM6uz4HOtc+CIM+Azr/PhSDOtM61zr0gzrXOr869zrHOuSDPgM61zrbOv86vIM6xzrvPhs6xz4HOuc64zrzOt8+EzrnOus6/zq8gIgorIs6uIGAtKycuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjM0MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBjb250YWlucyB1c2VyLWRlZmluZWQgUHJpb3JpdHkgdmFsdWUgJyVzJyIKK21zZ3N0ciAiIgorIs+Az4HOv861zrnOtM6/z4DOv86vzrfPg863LCDPhM6/IGAlcycgz4DOtc+BzrnOrc+HzrXOuSDOv8+BzrnPg868zq3Ovc63IM6xz4DPjCDPhM6/IM+Hz4HOrs+Dz4TOtyDPhM65zrzOriBQcmlvcml0eSBgJXMnXG4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MzQ3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICInJXMnIGNvbnRhaW5zIHVzZXItZGVmaW5lZCBmaWVsZCAnJXMnIgorbXNnc3RyICLPgM+Bzr/Otc65zrTOv8+Azr/Or863z4POtywgz4TOvyBgJXMnIM+AzrXPgc65zq3Ph861zrkgzr/Pgc65z4POvM6tzr3OvyDOsc+Az4wgz4TOvyDPh8+Bzq7Pg8+Ezrcgz4DOtc60zq/OvyBgJXMnXG4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MzU4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJpZ25vcmluZyAlZCB3YXJuaW5nIGFib3V0IHRoZSBjb250cm9sIGZpbGUocylcbiIKK21zZ2lkX3BsdXJhbCAiaWdub3JpbmcgJWQgd2FybmluZ3MgYWJvdXQgdGhlIGNvbnRyb2wgZmlsZShzKVxuIgorbXNnc3RyWzBdICIiCisiZHBrZy1kZWI6IM+AzrHPgc6xzrvOtc6vz4DOv869z4TOsc65ICVkIM+Az4HOv861zrnOtM6/z4DOv865zrfPhM65zrrOrCDOvM63zr3Pjc68zrHPhM6xIM6zzrnOsSDPhM6xIM6xz4HPh861zq/OsSBjb250cm9sXG4iCittc2dzdHJbMV0gIiIKKyJkcGtnLWRlYjogz4DOsc+BzrHOu861zq/PgM6/zr3PhM6xzrkgJWQgz4DPgc6/zrXOuc60zr/PgM6/zrnOt8+EzrnOus6sIM68zrfOvc+NzrzOsc+EzrEgzrPOuc6xIM+EzrEgzrHPgc+HzrXOr86xIGNvbnRyb2xcbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MDMgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MjkKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDM2CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSA8ZGlyZWN0b3J5PiBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyDPh8+BzrXOuc6szrbOtc+EzrHOuSDOrc69zrEgz4zPgc65z4POvM6xIDxkaXJlY3Rvcnk+IgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQwOQorbXNnaWQgIi0tYnVpbGQgdGFrZXMgYXQgbW9zdCB0d28gYXJndW1lbnRzIgorbXNnc3RyICLOtyAtLWJ1aWxkIM+AzrHOr8+Bzr3Otc65IM+Ezr8gz4DOv867z40gzrTPjc6/IM6/z4HOr8+DzrzOsc+EzrEiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDEzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGVjayBmb3IgZXhpc3RlbmNlIG9mIGFyY2hpdmUgYCUuMjUwcyciCittc2dzdHIgIs6xzrTPjc69zrHPhM6/z4Igzr8gzq3Ou861zrPPh86/z4Igz43PgM6xz4HOvs63z4Igz4TOt8+CIM6xz4HPh861zrnOv864zq7Ous63z4IgYCUuMjUwcyciCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDMwCittc2dpZCAidGFyZ2V0IGlzIGRpcmVjdG9yeSAtIGNhbm5vdCBza2lwIGNvbnRyb2wgZmlsZSBjaGVjayIKK21zZ3N0ciAiIgorIs6/IM+Az4HOv86/z4HOuc+DzrzPjM+CIM61zq/Ovc6xzrkgzrrOsc+EzqzOu86/zrPOv8+CIC0gzrHOtM+Nzr3Osc+Ezrcgzrcgz4DOsc+BzqzOu861zrnPiM63IM61zrvOrc6zz4fOv8+FIM6xz4HPh861zq/Ov8+FIGNvbnRyb2wiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDMxCittc2dpZCAibm90IGNoZWNraW5nIGNvbnRlbnRzIG9mIGNvbnRyb2wgYXJlYS4iCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImRwa2ctZGViOiBidWlsZGluZyBhbiB1bmtub3duIHBhY2thZ2UgaW4gJyVzJy5cbiIKK21zZ3N0ciAiZHBrZy1kZWI6IM60zrfOvM65zr/Phc+BzrPOr86xIM+AzrHOus6tz4TOv8+FIGAlcycgz4PPhM6/IGAlcycuXG4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDM5CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2ctZGViOiBidWlsZGluZyBwYWNrYWdlIGAlcycgaW4gYCVzJy5cbiIKK21zZ3N0ciAiZHBrZy1kZWI6IM60zrfOvM65zr/Phc+BzrPOr86xIM+AzrHOus6tz4TOv8+FIGAlcycgz4PPhM6/IGAlcycuXG4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDY3IGRwa2ctZGViL2J1aWxkLmM6NTIxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gbWFrZSB0bXBmaWxlIChkYXRhKSIKK21zZ2lkICJmYWlsZWQgdG8gbWFrZSB0ZW1wb3JhcnkgZmlsZSAoJXMpIgorbXNnc3RyICLOsc+Azq3PhM+Fz4fOtSDOtyDOtM63zrzOuc6/z4XPgc6zzq/OsSDPhM6/z4Ugz4DPgc6/z4PPic+BzrnOvc6/z40gzrHPgc+HzrXOr86/z4UgdG1wZmlsZSAoZGF0YSkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDY3IGRwa2ctZGViL2J1aWxkLmM6NDcwIGRwa2ctZGViL2J1aWxkLmM6NDc3CisjOiBkcGtnLWRlYi9idWlsZC5jOjQ4NSBkcGtnLWRlYi9idWlsZC5jOjQ5NCBkcGtnLWRlYi9idWlsZC5jOjQ5OQorIywgZnV6enkKKyN8IG1zZ2lkICJjb250cm9sIGFyZWEiCittc2dpZCAiY29udHJvbCBtZW1iZXIiCittc2dzdHIgIs6tzrvOtc6zz4fOv8+CIM+AzrXPgc65zr/Ph86uz4IiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDcwIGRwa2ctZGViL2J1aWxkLmM6NTI0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gdW5saW5rIHRtcGZpbGUgKGRhdGEpLCAlcyIKK21zZ2lkICJmYWlsZWQgdG8gdW5saW5rIHRlbXBvcmFyeSBmaWxlICglcyksICVzIgorbXNnc3RyICLOsc+Azq3PhM+Fz4fOtSDOtyDOtM65zrHOs8+BzrHPhs6uIM+Ezr/PhSDPgM+Bzr/Pg8+Jz4HOuc69zr/PjSDOsc+Bz4fOtc6vzr/PhSB0bXBmaWxlIChkYXRhKSwgJXMiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDg1IGRwa2ctZGViL2J1aWxkLmM6NTkzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gcmV3aW5kIHRtcGZpbGUgKGRhdGEpIgorbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdGVtcG9yYXJ5IGZpbGUgKCVzKSIKK21zZ3N0ciAizrHPgM6tz4TPhc+HzrUgzrcgzrXPgM6xzr3Osc+Gzr/Pgc6sIM+Dz4TOt869IM6xz4HPh86uIM+Dz4TOvyDPgM+Bzr/Pg8+Jz4HOuc69z4wgzrHPgc+HzrXOr86/IHRtcGZpbGUgKGRhdGEpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ5NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHN0YXQgdGVtcG9yYXJ5IGZpbGUgKCVzKSIKK21zZ3N0ciAizrHPgM6tz4TPhc+HzrUgzrcgzrTOt868zrnOv8+Fz4HOs86vzrEgz4TOv8+FIM+Az4HOv8+Dz4nPgc65zr3Ov8+NIM6xz4HPh861zq/Ov8+FIHRtcGZpbGUgKGRhdGEpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ5OAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciB3cml0aW5nIGAlcyciCittc2dzdHIgIs+Dz4bOrM67zrzOsSDOus6xz4TOrCDPhM63zr0gzrXOs86zz4HOsc+Gzq4gYCVzJyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo1MjEgZHBrZy1kZWIvYnVpbGQuYzo1MjQgZHBrZy1kZWIvYnVpbGQuYzo1NDYKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTcyIGRwa2ctZGViL2J1aWxkLmM6NTgwIGRwa2ctZGViL2J1aWxkLmM6NTkzCisjLCBmdXp6eQorI3wgbXNnaWQgImJldHdlZW4gbWVtYmVycyIKK21zZ2lkICJkYXRhIG1lbWJlciIKK21zZ3N0ciAizrHOvc6szrzOtc+DzrEgz4PPhM6xIM68zq3Ou863IgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjU3MSBkcGtnLWRlYi9idWlsZC5jOjU4MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIHdyaXRlIGZpbGVuYW1lIHRvIHRhciBwaXBlIChkYXRhKSIKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgZmlsZW5hbWUgdG8gdGFyIHBpcGUgKCVzKSIKK21zZ3N0ciAizrHPgM6tz4TPhc+HzrUgzrcgzrXOs86zz4HOsc+Gzq4gz4TOv8+FIM6/zr3PjM68zrHPhM6/z4IgzrHPgc+HzrXOr86/z4Ugz4PPhM63IM+Dz4nOu86uzr3Pic+Dzrcgz4TOt8+CIHRhciAoZGF0YSkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTg0Cittc2dpZCAiPGNvbXByZXNzPiBmcm9tIHRhciAtY2YiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjYxIGRwa2ctZGViL2V4dHJhY3QuYzo2MworbXNnaWQgInNoZWxsIGNvbW1hbmQgdG8gbW92ZSBmaWxlcyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6NzAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgZmlsZSBpbiAlcyBpbiAlLjI1NXMiCittc2dzdHIgIs6xz4DPgc+Mz4POvM61zr3OvyDPhM6tzrvOv8+CIM6xz4HPh861zq/Ov8+FIM+Ezr/PhSAlcyDPg8+Ezr8gJS4yNTVzIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcmVhZGluZyAlcyBmcm9tIGZpbGUgJS4yNTVzIgorbXNnc3RyICLPg8+GzqzOu868zrEgzrHOvc6szrPOvc+Jz4POt8+CIM+Ezr/PhSAlcyDOsc+Az4wgz4TOvyDOsc+Bz4fOtc6vzr8gJS4yNTVzIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTI1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZWFkIGFyY2hpdmUgYCUuMjU1cyciCittc2dzdHIgIs6xzrTPjc69zrHPhM6/IM+Ezr8gzqzOvc6/zrnOs868zrEgz4TOt8+CIM6xz4HPh861zrnOv864zq7Ous63z4IgYCUuMjU1cyciCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxMjcKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgYXJjaGl2ZSIKK21zZ3N0ciAizrHPgM6tz4TPhc+HzrUgzrcgZnN0YXQgz4PPhM63zr0gzrHPgc+HzrXOuc6/zrjOrs66zrciCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxMzEKKyMsIGZ1enp5CisjfCBtc2dpZCAiYXJjaGl2ZSBoYXMgbm8gZG90IGluIHZlcnNpb24gbnVtYmVyIgorbXNnaWQgImFyY2hpdmUgbWFnaWMgdmVyc2lvbiBudW1iZXIiCittc2dzdHIgIs63IM6xz4HPh861zrnOv864zq7Ous63IM60zrXOvSDOrc+HzrXOuSDPhM61zrvOtc6vzrEgz4PPhM6/zr0gzrHPgc65zrjOvM+MIM6tzrrOtM6/z4POt8+CIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTQzCisjLCBmdXp6eQorI3wgbXNnaWQgImFyY2hpdmUgaGFzIG5vIG5ld2xpbmVzIGluIGhlYWRlciIKK21zZ2lkICJhcmNoaXZlIG1lbWJlciBoZWFkZXIiCittc2dzdHIgIs63IM6xz4HPh861zrnOv864zq7Ous63IM60zrXOvSDOrc+HzrXOuSDPh86xz4HOsc66z4TOrs+BzrXPgiBuZXdsaW5lIM+Dz4TOt869IM66zrXPhs6xzrvOr860zrEiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNDgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBwYXJ0IG51bWJlciIKK21zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgYXJjaGl2ZSBoZWFkZXIgbWFnaWMiCittc2dzdHIgIs+Ezr8gzrHPgc+HzrXOr86/IGAlLjI1MHMnIM61zq/Ovc6xzrkgzrrOsc+EzrXPg8+Ez4HOsc68zrzOrc69zr8gLSDOu86szrjOv8+CIM6xz4HOuc64zrzPjM+CIM+EzrzOrs68zrHPhM6/z4IiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBub3QgYSBkZWJpYW4gYmluYXJ5IGFyY2hpdmUgKHRyeSBkcGtnLXNwbGl0PykiCittc2dzdHIgIiIKKyLPhM6/IM6xz4HPh861zq/OvyBgJS4yNTBzJyDOtM61zr0gzrXOr869zrHOuSDOsc+Bz4fOtc65zr/OuM6uzrrOtyDPgM6xzrrOrc+Ezr/PhSBkZWJpYW4gKM60zr/Ous65zrzOrM+Dz4TOtSBkcGtnLSIKKyJzcGxpdDspIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTU5CisjLCBmdXp6eQorI3wgbXNnaWQgImFyY2hpdmUgaGFzIG5vIGRvdCBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ2lkICJhcmNoaXZlIGluZm9ybWF0aW9uIGhlYWRlciBtZW1iZXIiCittc2dzdHIgIs63IM6xz4HPh861zrnOv864zq7Ous63IM60zrXOvSDOrc+HzrXOuSDPhM61zrvOtc6vzrEgz4PPhM6/zr0gzrHPgc65zrjOvM+MIM6tzrrOtM6/z4POt8+CIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTYyCittc2dpZCAiYXJjaGl2ZSBoYXMgbm8gbmV3bGluZXMgaW4gaGVhZGVyIgorbXNnc3RyICLOtyDOsc+Bz4fOtc65zr/OuM6uzrrOtyDOtM61zr0gzq3Ph861zrkgz4fOsc+BzrHOus+Ezq7Pgc61z4IgbmV3bGluZSDPg8+EzrfOvSDOus61z4bOsc67zq/OtM6xIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTY1Cittc2dpZCAiYXJjaGl2ZSBoYXMgbm8gZG90IGluIHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICLOtyDOsc+Bz4fOtc65zr/OuM6uzrrOtyDOtM61zr0gzq3Ph861zrkgz4TOtc67zrXOr86xIM+Dz4TOv869IM6xz4HOuc64zrzPjCDOrc66zrTOv8+DzrfPgiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE2OAorIywgYy1mb3JtYXQKK21zZ2lkICJhcmNoaXZlIHZlcnNpb24gJS4yNTBzIG5vdCB1bmRlcnN0b29kLCBnZXQgbmV3ZXIgZHBrZy1kZWIiCittc2dzdHIgIiIKKyLOvM63IM66zrHPhM6xzr3Ov863z4TOriDOtyDOrc66zrTOv8+Dzrcgz4TOt8+CIM6xz4HPh861zrnOv864zq7Ous63z4IgJS4yNTBzLCDPh8+BzrXOuc6szrbOtc+Dz4TOtSDOvc61z47PhM61z4HOvyBkcGtnLWRlYiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE3OSBkcGtnLWRlYi9leHRyYWN0LmM6MjA1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJza2lwcGVkIG1lbWJlciBkYXRhIGZyb20gJXMiCittc2dpZCAic2tpcHBlZCBhcmNoaXZlIG1lbWJlciBkYXRhIGZyb20gJXMiCittc2dzdHIgIs+AzrHPgc6xzrvOtc6vz4bOuM63zrrOtSDOvM6tzrvOv8+CIM60zrXOtM6/zrzOrc69z4nOvSDOsc+Az4wgJXMiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxOTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgY29udGFpbnMgdW51bmRlcnN0b29kIGRhdGEgbWVtYmVyICUuKnMsIGdpdmluZyB1cCIKK21zZ2lkICJhcmNoaXZlICclLjI1MHMnIGNvbnRhaW5zIG5vdCB1bmRlcnN0b29kIGRhdGEgbWVtYmVyICUuKnMsIGdpdmluZyB1cCIKK21zZ3N0ciAiz4TOvyDOsc+Bz4fOtc6vzr8gYCUuMjUwcycgz4DOtc+BzrnOrc+HzrXOuSDOvM63IM66zrHPhM6xzr3Ov863z4TOrCDOtM61zrTOv868zq3Ovc6xICUuKnMsIM61zrPOus6xz4TOrM67zrXOuc+IzrciCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxOTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgY29udGFpbnMgdHdvIGNvbnRyb2wgbWVtYmVycywgZ2l2aW5nIHVwIgorbXNnaWQgImFyY2hpdmUgJyUuMjUwcycgY29udGFpbnMgdHdvIGNvbnRyb2wgbWVtYmVycywgZ2l2aW5nIHVwIgorbXNnc3RyICLPhM6/IM6xz4HPh861zq/OvyBgJS4yNTBzJyDPgM61z4HOuc6tz4fOtc65IM60z43OvyDOvM6tzrvOtyBjb250cm9sLCDOtc6zzrrOsc+EzqzOu861zrnPiM63IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjE0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiIG5ldyBkZWJpYW4gcGFja2FnZSwgdmVyc2lvbiAlcy5cbiIKKyN8ICIgc2l6ZSAlbGQgYnl0ZXM6IGNvbnRyb2wgYXJjaGl2ZT0gJXppIGJ5dGVzLlxuIgorbXNnaWQgIiIKKyIgbmV3IGRlYmlhbiBwYWNrYWdlLCB2ZXJzaW9uICVzLlxuIgorIiBzaXplICVqZCBieXRlczogY29udHJvbCBhcmNoaXZlPSAlamQgYnl0ZXMuXG4iCittc2dzdHIgIiIKKyIgzr3Orc6/IM+AzrHOus6tz4TOvyBkZWJpYW4sIM6tzrrOtM6/z4POtyAlcy5cbiIKKyIgzrzOrc6zzrXOuM6/z4IgJWxkIGJ5dGVzOiDOsc+Bz4fOtc65zr/OuM6uzrrOtyBjb250cm9sID0gJXppIGJ5dGVzLlxuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjMyCittc2dpZCAiYXJjaGl2ZSBjb250cm9sIG1lbWJlciBzaXplIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyMzUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImFyY2hpdmUgaGFzIG1hbGZvcm1hdHRlZCBjb250cm9sIGxlbmd0aCBgJXMnIgorbXNnaWQgImFyY2hpdmUgaGFzIG1hbGZvcm1hdHRlZCBjb250cm9sIG1lbWJlciBzaXplICclcyciCittc2dzdHIgIs63IM6xz4HPh861zrnOv864zq7Ous63IM6tz4fOtc65IM66zrHOus6/zrTOuc6xzrzOv8+Bz4bPic68zq3Ovc6/IM6tzrvOtc6zz4fOvyDOvM6uzrrOv8+Fz4IgYCVzJyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI0MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic2tpcHBlZCBtZW1iZXIgZGF0YSBmcm9tICVzIgorbXNnaWQgInNraXBwZWQgYXJjaGl2ZSBjb250cm9sIG1lbWJlciBkYXRhIGZyb20gJXMiCittc2dzdHIgIs+AzrHPgc6xzrvOtc6vz4bOuM63zrrOtSDOvM6tzrvOv8+CIM60zrXOtM6/zrzOrc69z4nOvSDOsc+Az4wgJXMiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNDYKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIgb2xkIGRlYmlhbiBwYWNrYWdlLCB2ZXJzaW9uICVzLlxuIgorI3wgIiBzaXplICVsZCBieXRlczogY29udHJvbCBhcmNoaXZlPSAlemksIG1haW4gYXJjaGl2ZT0gJWxkLlxuIgorbXNnaWQgIiIKKyIgb2xkIGRlYmlhbiBwYWNrYWdlLCB2ZXJzaW9uICVzLlxuIgorIiBzaXplICVqZCBieXRlczogY29udHJvbCBhcmNoaXZlPSAlamQsIG1haW4gYXJjaGl2ZT0gJWpkLlxuIgorbXNnc3RyICIiCisiIM+AzrHOu865z4wgz4DOsc66zq3PhM6/IGRlYmlhbiwgzq3Ous60zr/Pg863ICVzLlxuIgorIiDOvM6tzrPOtc64zr/PgiAlbGQgYnl0ZXM6IM6xz4HPh861zrnOv864zq7Ous63IGNvbnRyb2wgPSAlemkgYnl0ZXMsIM66z4XPgc6vz4nPgiDOsc+Bz4fOtc65zr/OuM6uzrrOtz0gJWxkLlxuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjU1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnLWRlYjogZmlsZSBsb29rcyBsaWtlIGl0IG1pZ2h0IGJlIGFuIGFyY2hpdmUgd2hpY2ggaGFzIGJlZW5cbiIKKyJkcGtnLWRlYjogICAgY29ycnVwdGVkIGJ5IGJlaW5nIGRvd25sb2FkZWQgaW4gQVNDSUkgbW9kZVxuIgorbXNnc3RyICIiCisiZHBrZy1kZWI6IM+Ezr8gzrHPgc+HzrXOr86/IM+GzrHOr869zrXPhM6xzrkgz4nPgiDOsc+Bz4fOtc65zr/OuM6uzrrOtyDPgM6/z4Ugz4DOuc64zrHOvc+Mzr0gzr3OsSDOrc+HzrXOuSDOus6xz4TOsc+Dz4TPgc6xz4bOtc6vXG4iCisiZHBrZy1kZWI6ICAgIM6xz4DPjCDOvM61z4TOsc+Gz4zPgc+Ez4nPg863IM+DzrUgzrrOsc+EzqzPg8+EzrHPg863IEFTQ0lJXG4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCUuMjU1cycgaXMgbm90IGEgZGViaWFuIGZvcm1hdCBhcmNoaXZlIgorbXNnc3RyICLPhM6/IGAlLjI1NXMnIM60zrXOvSDOtc6vzr3Osc65IM68zrnOsSDOsc+Bz4fOtc65zr/OuM6uzrrOtyBkZWJpYW4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNjYKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgdG8gcGlwZSBpbiBjb3B5IgorbXNnc3RyICLOsc+Azq3PhM+Fz4fOtSDOtyDOtc6zzrPPgc6xz4bOriDPg8+Ezrcgz4PPic67zq7Ovc+Jz4POtyDPhM63z4IgY29weSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI2OAorbXNnaWQgImZhaWxlZCB0byBjbG9zZSBwaXBlIGluIGNvcHkiCittc2dzdHIgIs6xz4DOrc+Ez4XPh861IM+Ezr8gzrrOu861zq/Pg865zrzOvyDPhM63z4Igz4PPic67zq7Ovc+Jz4POt8+CIM+EzrfPgiBjb3B5IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6Mjg0Cittc2dpZCAiZGF0YSIKK21zZ3N0ciAizrTOtc60zr/OvM6tzr3OsSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMwNworbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byBkaXJlY3RvcnkiCittc2dzdHIgIs6xz4DOrc+Ez4XPh861IM63IM6xzrvOu86xzrPOriDOus6xz4TOsc67z4zOs86/z4UgKGNoZGlyKSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMxMAorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgZGlyZWN0b3J5IgorbXNnc3RyICLOsc+Azq3PhM+Fz4fOtSDOtyDOtM63zrzOuc6/z4XPgc6zzq/OsSDOus6xz4TOsc67z4zOs86/z4UiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozMTIKK21zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gZGlyZWN0b3J5IGFmdGVyIGNyZWF0aW5nIGl0IgorbXNnc3RyICLOsc+Azq3PhM+Fz4fOtSDOtyDOsc67zrvOsc6zzq4gzrrOsc+EzrHOu8+MzrPOv8+FIChjaGRpcikgzrzOtc+Ezqwgz4TOtyDOtM63zrzOuc6/z4XPgc6zzq/OsSDPhM6/z4UiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozMjMKKyMsIGZ1enp5Cittc2dpZCAiPGRlY29tcHJlc3M+IgorbXNnc3RyICIlczogzrHPgM6/z4PPhc68z4DOr861z4POtyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMyNQorIywgZnV6enkKK21zZ2lkICJwYXN0ZSIKK21zZ3N0ciAizrXPgM65z4TPhc+Hzq7PglxuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzQyIGRwa2ctZGViL2V4dHJhY3QuYzozNjMgZHBrZy1kZWIvZXh0cmFjdC5jOjQwMgorIzogZHBrZy1kZWIvaW5mby5jOjc3CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSAuZGViIGZpbGVuYW1lIGFyZ3VtZW50IgorbXNnc3RyICLOtyAtLSVzIM+Hz4HOtc65zqzOts61z4TOsc65IM6tzr3OsSDPjM+BzrnPg868zrEgzr/Ovc+MzrzOsc+Ezr/PgiDOsc+Bz4fOtc6vzr/PhSAuZGViIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzQ3IGRwa2ctZGViL2V4dHJhY3QuYzo0MDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIi0tJXMgbmVlZHMgYSB0YXJnZXQgZGlyZWN0b3J5LlxuIgorIlBlcmhhcHMgeW91IHNob3VsZCBiZSB1c2luZyBkcGtnIC0taW5zdGFsbCA/IgorbXNnc3RyICIiCisizrcgLS0lcyDPh8+BzrXOuc6szrbOtc+EzrHOuSDOrc69zrHOvSDOus6xz4TOrM67zr/Os86/IM+Dz4TPjM+Hzr8uXG4iCisizorPg8+Jz4Igz4DPgc6tz4DOtc65IM69zrEgz4fPgc63z4POuc68zr/PgM6/zrnOrs+DzrXPhM61IGRwa2cgLS1pbnN0YWxsIDsiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozNTAgZHBrZy1kZWIvZXh0cmFjdC5jOjQxMAorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIHRha2VzIGF0IG1vc3QgdHdvIGFyZ3VtZW50cyAoLmRlYiBhbmQgZGlyZWN0b3J5KSIKK21zZ3N0ciAizrcgLS0lcyDPgM6xzq/Pgc69zrXOuSDPhM6/IM+Azr/Ou8+NIM60z43OvyDOv8+Bzq/Pg868zrHPhM6xICguZGViIM66zrHOuSDOus6xz4TOrM67zr/Os86/KSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjM2NQorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIHRha2VzIG9ubHkgb25lIGFyZ3VtZW50ICguZGViIGZpbGVuYW1lKSIKK21zZ3N0ciAizrcgLS0lcyDPgM6xzq/Pgc69zrXOuSDOvM+Mzr3OvyDOrc69zrEgz4zPgc65z4POvM6xICjPjM69zr/OvM6xIM6xz4HPh861zq/Ov8+FIC5kZWIpIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6NjMKK21zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gYC8nIGZvciBjbGVhbnVwIgorbXNnc3RyICLOsc+Azq3PhM+Fz4fOtSDOtyDOsc67zrvOsc6zzq4gzrrOsc+EzrHOu8+MzrPOv8+FIM+Dz4TOv869ICcvJyDOs865zrEgz4TOtc+BzrzOsc+EzrnPg868z4wiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMDYKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImNhbm5vdCBzdGF0IG9sZCBuYW1lIGAlcyc6ICVzIgorbXNnaWQgImNvbnRyb2wgZmlsZSAnJXMnIgorbXNnc3RyICLOsc60z4XOvc6xzrzOr86xIM+Az4HOv8+DzrTOuc6/z4HOuc+DzrzOv8+NIM66zrHPhM6sz4PPhM6xz4POt8+CIM+Ezr/PhSDPgM6xzrvOuc6/z40gzr/Ovc+MzrzOsc+Ezr/PgiBgJXMnOiAlcyIKKworIzogZHBrZy1kZWIvaW5mby5jOjExMAorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnLWRlYjogYCUuMjU1cycgY29udGFpbnMgbm8gY29udHJvbCBjb21wb25lbnQgYCUuMjU1cydcbiIKK21zZ3N0ciAiZHBrZy1kZWI6IM+Ezr8gYCUuMjU1cycgzrTOtc69IM+AzrXPgc65zq3Ph861zrkgz4TOvM6uzrzOsSDOtc67zq3Os8+Hzr/PhSBgJS4yNTVzJ1xuIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgIm9wZW4gY29tcG9uZW50IGAlLjI1NXMnIChpbiAlLjI1NXMpIGZhaWxlZCBpbiBhbiB1bmV4cGVjdGVkIHdheSIKK21zZ3N0ciAiIgorIs+Ezr8gzqzOvc6/zrnOs868zrEgz4TOv8+FIM+EzrzOrs68zrHPhM6/z4IgYCUuMjU1cycgKM+Dz4TOvyAlLjI1NXMpIM6xz4DOrc+Ez4XPh861IM68zrUgzrHPgM+Bz4zPg868zrXOvc6/IM+Ez4HPjM+Azr8iCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIk9uZSByZXF1ZXN0ZWQgY29udHJvbCBjb21wb25lbnQgaXMgbWlzc2luZyIKK21zZ2lkICIlZCByZXF1ZXN0ZWQgY29udHJvbCBjb21wb25lbnQgaXMgbWlzc2luZyIKK21zZ2lkX3BsdXJhbCAiJWQgcmVxdWVzdGVkIGNvbnRyb2wgY29tcG9uZW50cyBhcmUgbWlzc2luZyIKK21zZ3N0clswXSAizpTOtc69IM+Fz4DOrM+Bz4fOtc65IM6tzr3OsSDPhM68zq7OvM6xIM61zrvOrc6zz4fOv8+FIM+Azr/PhSDOts63z4TOrs64zrfOus61IgorbXNnc3RyWzFdICLOlM61zr0gz4XPgM6sz4HPh861zrkgzq3Ovc6xIM+EzrzOrs68zrEgzrXOu86tzrPPh86/z4Ugz4DOv8+FIM62zrfPhM6uzrjOt866zrUiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMzkgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQyNAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc2NhbiBkaXJlY3RvcnkgYCUuMjU1cyciCittc2dzdHIgIs6xzrTPjc69zrHPhM63IM63IM6xzr3Or8+Hzr3Otc+Fz4POtyDPhM6/z4UgzrrOsc+EzrHOu8+MzrPOv8+FIGAlLjI1NXMnIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTQ4CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzdGF0IGAlLjI1NXMnIChpbiBgJS4yNTVzJykiCittc2dzdHIgIs6xzrTPjc69zrHPhM63IM63IM61z43Pgc61z4POtyDOus6xz4TOrM+Dz4TOsc+DzrfPgiAoc3RhdCkgz4TOv8+FIGAlLjI1NXMnICjPg8+Ezr8gYCUuMjU1cycpIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTUyCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBvcGVuIGAlLjI1NXMnIChpbiBgJS4yNTVzJykiCittc2dzdHIgIs6xzrTPjc69zrHPhM6/IM+Ezr8gzqzOvc6/zrnOs868zrEgz4TOv8+FIGAlLjI1NXMnICjPg8+Ezr8gYCUuMjU1cycpIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTY3IGRwa2ctZGViL2luZm8uYzoxODUgZHBrZy1kZWIvaW5mby5jOjE5OQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCBgJS4yNTVzJyAoaW4gYCUuMjU1cycpIgorbXNnc3RyICLOsc+Azq3PhM+Fz4fOtSDOtyDOsc69zqzOs869z4nPg863IGAlLjI1NXMnICjPg8+Ezr8gYCUuMjU1cycpIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTcwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIgJTdsZCBieXRlcywgJTVkIGxpbmVzICAgJWMgICUtMjAuMTI3cyAlLjEyN3NcbiIKK21zZ2lkICIgJTdqZCBieXRlcywgJTVkIGxpbmVzICAgJWMgICUtMjAuMTI3cyAlLjEyN3NcbiIKK21zZ3N0ciAiICU3bGQgYnl0ZXMsICU1ZCDOs8+BzrHOvM68zq3PgiAgICVjICAlLTIwLjEyN3MgJS4xMjdzXG4iCisKKyM6IGRwa2ctZGViL2luZm8uYzoxNzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAgICBub3QgYSBwbGFpbiBmaWxlICAgICAgICAgICUuMjU1c1xuIgorbXNnc3RyICIgICAgIM+Mz4fOuSDOsc+AzrvPjCDOsc+Bz4fOtc6vzr8gICAgICAgICAgICUuMjU1c1xuIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTg2Cittc2dpZCAiKG5vIGBjb250cm9sJyBmaWxlIGluIGNvbnRyb2wgYXJjaGl2ZSEpXG4iCittc2dzdHIgIijOtM61zr0gz4XPgM6sz4HPh861zrkgzrHPgc+HzrXOr86/IGBjb250cm9sJyDPg8+EzrfOvSDOsc+Bz4fOtc65zr/OuM6uzrrOtyDOtc67zq3Os8+Hzr/PhSlcbiIKKworIzogZHBrZy1kZWIvaW5mby5jOjIyMgorbXNnaWQgImNvdWxkIG5vdCBvcGVuIHRoZSBgY29udHJvbCcgY29tcG9uZW50IgorbXNnc3RyICLOsc60z43Ovc6xz4TOvyDPhM6/IM6szr3Ov865zrPOvM6xIM+Ezr/PhSDPhM68zq7OvM6xz4TOv8+CIGBjb250cm9sJyIKKworIzogZHBrZy1kZWIvaW5mby5jOjI2MQorbXNnaWQgImZhaWxlZCBkdXJpbmcgcmVhZCBvZiBgY29udHJvbCcgY29tcG9uZW50IgorbXNnc3RyICLPg8+GzqzOu868zrEgzrrOsc+Ezqwgz4TOt869IM6xzr3OrM6zzr3Pic+DzrcgzrHPgM+MIM+Ezr8gz4TOvM6uzrzOsSBgY29udHJvbCciCisKKyM6IGRwa2ctZGViL2luZm8uYzoyNjMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgdGhlICclcycgY29tcG9uZW50IgorbXNnc3RyICLOsc60z43Ovc6xz4TOvyDPhM6/IM66zrvOtc6vz4POuc68zr8gz4TOt8+CIM+Dz4nOu86uzr3Pic+DzrfPgiDPhM63z4IgZmluZCIKKworIzogZHBrZy1kZWIvaW5mby5jOjI3OAorbXNnaWQgIkVycm9yIGluIGZvcm1hdCIKK21zZ3N0ciAizqPPhs6szrvOvM6xIM+Dz4TOtyDOvM6/z4HPhs6/z4DOv86vzrfPg863IgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MzI4Cittc2dpZCAiLS1jb250ZW50cyB0YWtlcyBleGFjdGx5IG9uZSBhcmd1bWVudCIKK21zZ3N0ciAizrcgLS1jb250ZW50cyDPgM6xzq/Pgc69zrXOuSDOvM+Mzr3OvyDOrc69zrEgz4zPgc65z4POvM6xIgorCisjOiBkcGtnLWRlYi9tYWluLmM6NTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuIGAlcycgcGFja2FnZSBhcmNoaXZlIGJhY2tlbmQgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiQmFja2VuZCDOrc66zrTOv8+DzrcgJXMgz4TOv8+FIM6xz4HPh861zq/Ov8+FIM+AzrHOus6tz4TOv8+FIM+Ezr/PhSBEZWJpYW4gYCVzJy5cbiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjczCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiQ29tbWFuZHM6XG4iCisjfCAiICAtYnwtLWJ1aWxkIDxkaXJlY3Rvcnk+IFs8ZGViPl0gICBCdWlsZCBhbiBhcmNoaXZlLlxuIgorI3wgIiAgLWN8LS1jb250ZW50cyA8ZGViPiAgICAgICAgICAgICAgTGlzdCBjb250ZW50cy5cbiIKKyN8ICIgIC1JfC0taW5mbyA8ZGViPiBbPGNmaWxlPiAuLi5dICAgIFNob3cgaW5mbyB0byBzdGRvdXQuXG4iCisjfCAiICAtV3wtLXNob3cgPGRlYj4gICAgICAgICAgICAgICAgICBTaG93IGluZm9ybWF0aW9uIG9uIHBhY2thZ2UocylcbiIKKyN8ICIgIC1mfC0tZmllbGQgPGRlYj4gWzxjZmllbGQ+IC4uLl0gIFNob3cgZmllbGQocykgdG8gc3Rkb3V0LlxuIgorI3wgIiAgLWV8LS1jb250cm9sIDxkZWI+IFs8ZGlyZWN0b3J5Pl0gRXh0cmFjdCBjb250cm9sIGluZm8uXG4iCisjfCAiICAteHwtLWV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gICBFeHRyYWN0IGZpbGVzLlxuIgorI3wgIiAgLVh8LS12ZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PiAgRXh0cmFjdCAmIGxpc3QgZmlsZXMuXG4iCisjfCAiICAtLWZzeXMtdGFyZmlsZSA8ZGViPiAgICAgICAgICAgICBPdXRwdXQgZmlsZXN5c3RlbSB0YXJmaWxlLlxuIgorI3wgIlxuIgorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1ifC0tYnVpbGQgPGRpcmVjdG9yeT4gWzxkZWI+XSAgIEJ1aWxkIGFuIGFyY2hpdmUuXG4iCisiICAtY3wtLWNvbnRlbnRzIDxkZWI+ICAgICAgICAgICAgICBMaXN0IGNvbnRlbnRzLlxuIgorIiAgLUl8LS1pbmZvIDxkZWI+IFs8Y2ZpbGU+IC4uLl0gICAgU2hvdyBpbmZvIHRvIHN0ZG91dC5cbiIKKyIgIC1XfC0tc2hvdyA8ZGViPiAgICAgICAgICAgICAgICAgIFNob3cgaW5mb3JtYXRpb24gb24gcGFja2FnZShzKVxuIgorIiAgLWZ8LS1maWVsZCA8ZGViPiBbPGNmaWVsZD4gLi4uXSAgU2hvdyBmaWVsZChzKSB0byBzdGRvdXQuXG4iCisiICAtZXwtLWNvbnRyb2wgPGRlYj4gWzxkaXJlY3Rvcnk+XSBFeHRyYWN0IGNvbnRyb2wgaW5mby5cbiIKKyIgIC14fC0tZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PiAgIEV4dHJhY3QgZmlsZXMuXG4iCisiICAtWHwtLXZleHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+ICBFeHRyYWN0ICYgbGlzdCBmaWxlcy5cbiIKKyIgIC1SfC0tcmF3LWV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEV4dHJhY3QgY29udHJvbCBpbmZvIGFuZCBmaWxlcy5cbiIKKyIgIC0tZnN5cy10YXJmaWxlIDxkZWI+ICAgICAgICAgICAgIE91dHB1dCBmaWxlc3lzdGVtIHRhcmZpbGUuXG4iCisiXG4iCittc2dzdHIgIiIKKyLOlc69z4TOv867zq3PgjpcbiIKKyIgIC1ifC0tYnVpbGQgPGRpcmVjdG9yeT4gWzxkZWI+XSAgIM6UzrfOvM65zr/Phc+BzrPOr86xIM61zr3PjM+CIM6xz4HPh861zq/Ov8+FLlxuIgorIiAgLWN8LS1jb250ZW50cyA8ZGViPiAgICAgICAgICAgICAgzqDOsc+BzqzOuM61z4POtyDPgM61z4HOuc61z4fOv868zq3Ovc+Jzr0uXG4iCisiICAtSXwtLWluZm8gPGRlYj4gWzxjZmlsZT4gLi4uXSAgICDOlc68z4bOrM69zrnPg863IM+AzrvOt8+Bzr/Phs6/z4HOr86xz4Igz4PPhM6/IHN0ZG91dC5cbiIKKyIgIC1XfC0tc2hvdyA8ZGViPiAgICAgICAgICAgICAgICAgIM6VzrzPhs6szr3Ouc+Dzrcgz4DOu863z4HOv8+Gzr/Pgc6vzrHPgiDOs865zrEgz4TOvy/PhM6xIM+AzrHOus6tz4TOvyIKKyIozrEpLlxuIgorIiAgLWZ8LS1maWVsZCA8ZGViPiBbPGNmaWVsZD4gLi4uXSAgzpXOvM+GzqzOvc65z4POtyDPgM61zrTOr86/z4Uoz4nOvSkgz4PPhM6/IHN0ZG91dC5cbiIKKyIgIC1lfC0tY29udHJvbCA8ZGViPiBbPGRpcmVjdG9yeT5dIM6Vzr7Osc6zz4nOs86uIM+AzrvOt8+Bzr/Phs6/z4HOr86xz4IgzrXOu86tzrPPh86/z4UuXG4iCisiICAteHwtLWV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gICDOlc6+zrHOs8+JzrPOriDOsc+Bz4fOtc6vz4nOvS5cbiIKKyIgIC1YfC0tdmV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gIM6Vzr7Osc6zz4nOs86uIM66zrHOuSDPgM6xz4HOrM64zrXPg863IM6xz4HPh861zq/Pic69LlxuIgorIiAgLS1mc3lzLXRhcmZpbGUgPGRlYj4gICAgICAgICAgICAgT3V0cHV0IGZpbGVzeXN0ZW0gdGFyZmlsZS5cbiIKKyJcbiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjkzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyI8ZGViPiBpcyB0aGUgZmlsZW5hbWUgb2YgYSBEZWJpYW4gZm9ybWF0IGFyY2hpdmUuXG4iCisiPGNmaWxlPiBpcyB0aGUgbmFtZSBvZiBhbiBhZG1pbmlzdHJhdGl2ZSBmaWxlIGNvbXBvbmVudC5cbiIKKyI8Y2ZpZWxkPiBpcyB0aGUgbmFtZSBvZiBhIGZpZWxkIGluIHRoZSBtYWluIGBjb250cm9sJyBmaWxlLlxuIgorIlxuIgorbXNnc3RyICIiCisiPGRlYj4gzrXOr869zrHOuSDPhM6/IM+Mzr3Ov868zrEgzrHPgc+HzrXOr86/z4UgzrXOvc+Mz4Igz4DOsc66zq3PhM6/z4UgzrzOtSDOvM6/z4HPhs6uIERlYmlhbi5cbiIKKyI8Y2ZpbGU+IM61zq/Ovc6xzrkgz4TOvyDPjM69zr/OvM6xIM68zrnOsc+CIM+Dz4XOvc65z4PPhM+Oz4POsc+CIM61zr3PjM+CIM60zrnOsc+HzrXOuc+BzrnPg8+EzrnOus6/z40gzrHPgc+HzrXOr86/z4UuXG4iCisiPGNmaWVsZD4gzrXOr869zrHOuSDPhM6/IM+Mzr3Ov868zrEgzrXOvc+Mz4Igz4DOtc60zq/Ov8+FIM+Dz4TOvyDOus+Nz4HOuc6/IM6xz4HPh861zq/OvyBgzrXOu86tzrPPh86/z4UnLlxuIgorIlxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6OTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1zaG93Zm9ybWF0PTxmb3JtYXQ+ICAgICAgICAgICAgVXNlIGFsdGVybmF0aXZlIGZvcm1hdCBmb3IgLS1zaG93LlxuIgorIiAgLXYsIC0tdmVyYm9zZSAgICAgICAgICAgICAgICAgICAgRW5hYmxlIHZlcmJvc2Ugb3V0cHV0LlxuIgorIiAgLUQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRW5hYmxlIGRlYnVnZ2luZyBvdXRwdXQuXG4iCisiICAtLW9sZCwgLS1uZXcgICAgICAgICAgICAgICAgICAgICBTZWxlY3QgYXJjaGl2ZSBmb3JtYXQuXG4iCisiICAtLW5vY2hlY2sgICAgICAgICAgICAgICAgICAgICAgICBTdXBwcmVzcyBjb250cm9sIGZpbGUgY2hlY2sgKGJ1aWxkIGJhZFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWNrYWdlcykuXG4iCisiICAteiMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTZXQgdGhlIGNvbXByZXNzaW9uIGxldmVsIHdoZW4gYnVpbGRpbmcuXG4iCisiICAtWjx0eXBlPiAgICAgICAgICAgICAgICAgICAgICAgICBTZXQgdGhlIGNvbXByZXNzaW9uIHR5cGUgdXNlZCB3aGVuICIKKyJidWlsZGluZy5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWxsb3dlZCB0eXBlczogZ3ppcCwgeHosIGJ6aXAyLCBsem1hLCAiCisibm9uZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIs6Vz4DOuc67zr/Os86tz4I6XG4iCisiICAtLXNob3dmb3JtYXQ9PGZvcm1hdD4gICAgICAgICAgICDOp8+Bzq7Pg863IM61zr3Osc67zrvOsc66z4TOuc66zq7PgiDOvM6/z4HPhs6uz4IgzrPOuc6xIM+Ezr8gLS1zaG93LlxuIgorIiAgLUQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgzpXOvc61z4HOs86/z4DOv86vzrfPg863IM61zr7PjM60zr/PhSDOtc66z4PPhs6xzrvOvM6sz4TPic+DzrfPgi5cbiIKKyIgIC0tb2xkLCAtLW5ldyAgICAgICAgICAgICAgICAgICAgIM6Vz4DOuc67zr/Os86uIM68zr/Pgc+Gzq7PgiDPgM6xzrrOrc+Ezr/PhS5cbiIKKyIgIC0tbm9jaGVjayAgICAgICAgICAgICAgICAgICAgICAgIM6Rzr3Osc+Dz4TOv867zq4gzrXOu86tzrPPh86/z4UgzrHPgc+HzrXOr86/z4UgzrXOu86tzrPPh86/z4UgIgorIijOtM63zrzOuc6/z4XPgc6zzq/OsVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwizrrOsc66z47OvVwiIM+AzrHOus6tz4TPic69KS5cbiIKKyIgIC16IyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIM6azrHOuM6/z4HOuc+DzrzPjM+CIM+Ezr/PhSDOtc+AzrnPgM6tzrTOv8+FIM+Dz4XOvM+Azq/Otc+DzrfPgiDOus6xz4TOrCDPhM63ICIKKyLOtM63zrzOuc6/z4XPgc6zzq/OsSDPhM6/z4Ugz4DOsc66zq3PhM6/z4UuXG4iCisiICAtWjx0eXBlPiAgICAgICAgICAgICAgICAgICAgICAgICDOms6xzrjOv8+BzrnPg868z4zPgiDPhM6/z4Ugz4TPjc+Azr/PhSDPg8+FzrzPgM6vzrXPg863z4Igz4DOv8+FICIKKyLPh8+BzrfPg865zrzOv8+Azr/Ouc61zq/PhM6xzrkgzrrOsc+Ezqwgz4TOtyDOtM63zrzOuc6/z4XPgc6zzq/OsSDPhM6/z4Ugz4DOsc66zq3PhM6/z4UuXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIM6Vz4DOuc+Ez4HOtc+Az4zOvM61zr3Otc+CIM+EzrnOvM6tz4IgzrXOr869zrHOuTogZ3ppcCwgYnppcDIsICIKKyJsem1hLCDOus6xzrzOvM6vzrEuXG4iCisiXG4iCisKKyM6IGRwa2ctZGViL21haW4uYzoxMjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIlVzZSBgZHBrZycgdG8gaW5zdGFsbCBhbmQgcmVtb3ZlIHBhY2thZ2VzIGZyb20geW91ciBzeXN0ZW0sIG9yXG4iCisiYGRzZWxlY3QnIG9yIGBhcHRpdHVkZScgZm9yIHVzZXItZnJpZW5kbHkgcGFja2FnZSBtYW5hZ2VtZW50LiAgUGFja2FnZXNcbiIKKyJ1bnBhY2tlZCB1c2luZyBgZHBrZy1kZWIgLS1leHRyYWN0JyB3aWxsIGJlIGluY29ycmVjdGx5IGluc3RhbGxlZCAhXG4iCittc2dzdHIgIiIKKyJcbiIKKyLOp8+BzrfPg865zrzOv8+Azr/Ouc6uz4PPhM61IM+Ezr8gYGRwa2cnIM6zzrnOsSDOvc6xIM61zrPOus6xz4TOsc+Dz4TOrs+DzrXPhM61IM66zrHOuSDOvc6xIM6xz4bOsc65z4HOrc+DzrXPhM61IM+AzrHOus6tz4TOsSDOsc+Az4wgIgorIs+Ezr8gz4PPjc+Dz4TOt868zqwgz4POsc+CLCDOrlxuIgorIs+Ezr8gYGRzZWxlY3QnIM6uIM+Ezr8gYGFwdGl0dWRlJyDOs865zrEgz4bOuc67zrnOus6uIM+Az4HOv8+CIM+Ezr/OvSDPh8+Bzq7Pg8+EzrcgzrTOuc6xz4fOtc6vz4HOuc+Dzrcgz4DOsc66zq3PhM+Jzr0uICAiCisizqDOsc66zq3PhM6xXG4iCisiz4DOv8+FIM6xz4DOv8+Dz4XOvM+AzrnOrc62zr/Ovc+EzrHOuSDOvM61IM+Hz4HOrs+Dzrcgz4TOv8+FIGBkcGtnLWRlYiAtLWV4dHJhY3QnIM60zrXOvSDOuM6xIM61zrPOus6xz4TOsc+Dz4TOsc64zr/Pjc69ICAiCisiz4PPic+Dz4TOrCFcbiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjEzMgorbXNnaWQgIiIKKyJUeXBlIGRwa2ctZGViIC0taGVscCBmb3IgaGVscCBhYm91dCBtYW5pcHVsYXRpbmcgKi5kZWIgZmlsZXM7XG4iCisiVHlwZSBkcGtnIC0taGVscCBmb3IgaGVscCBhYm91dCBpbnN0YWxsaW5nIGFuZCBkZWluc3RhbGxpbmcgcGFja2FnZXMuIgorbXNnc3RyICIiCisizqDOu863zrrPhM+Bzr/Ou86/zrPOrs+Dz4TOtSBkcGtnLWRlYiAtLWhlbHAgzrPOuc6xIM6yzr/Ors64zrXOuc6xIM+Dz4fOtc+EzrnOus6sIM68zrUgzrTOuc6xz4fOtc6vz4HOuc+DzrcgzrHPgc+HzrXOr8+Jzr1cbiIKKyIqLmRlYi4gzqDOu863zrrPhM+Bzr/Ou86/zrPOrs+Dz4TOtSBkcGtnIC0taGVscCDOs865zrEgzrLOv86uzrjOtc65zrEgz4PPh861z4TOuc66zqwgzrzOtSDOtc6zzrrOsc+EzqzPg8+EzrHPg863IM66zrHOuVxuIgorIs6xz4DOtc6zzrrOsc+EzqzPg8+EzrHPg863IM+AzrHOus6tz4TPic69LiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjE0OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBpbnRlZ2VyIGZvciAtJWM6ICclLjI1MHMnIgorbXNnc3RyICLOvM63IM6tzrPOus+Fz4HOv8+CIM6xzrrOrc+BzrHOuc6/z4IgzrPOuc6xIC0tJXM6IGAlLjI1MHMnIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTUxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGNvbXByZXNzaW9uIGxldmVsIGZvciAtJWM6ICVsZCciCittc2dzdHIgIs68zrcgzq3Os866z4XPgc6/z4IgzrHOus6tz4HOsc65zr/PgiDOs865zrEgLS0lczogYCUuMjUwcyciCisKKyM6IGRwa2ctZGViL21haW4uYzoxNjEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBjb21wcmVzc2lvbiB0eXBlIGAlcychIgorbXNnc3RyICLOrM6zzr3Pic+Dz4TOv8+CIM+Ez43PgM6/z4Igz4PPhc68z4DOr861z4POt8+CICclcychIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzo1MgorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgZGlnaXQgKGNvZGUgJWQpIGluICVzIgorbXNnc3RyICIiCisiz4TOvyDOsc+Bz4fOtc6vzr8gYCUuMjUwcycgzrXOr869zrHOuSDOus6xz4TOtc+Dz4TPgc6xzrzOvM6tzr3OvyAtIM67zqzOuM6/z4Igz4jOt8+Gzq/OvyAozrrPic60zrnOus+Mz4IgJWQpIM+Dz4TOvyAlcyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gJS4yNTBzIG1pc3NpbmciCittc2dzdHIgIs+Ezr8gzrHPgc+HzrXOr86/IGAlLjI1MHMnIM61zq/Ovc6xzrkgzrrOsc+EzrXPg8+Ez4HOsc68zrzOrc69zr8gLSDPhM6/ICUuMjUwcyDOsc6zzr3Ov861zrnOr8+EzrHOuSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gbWlzc2luZyBuZXdsaW5lIGFmdGVyICUuMjUwcyIKK21zZ3N0ciAiIgorIs+Ezr8gzrHPgc+HzrXOr86/IGAlLjI1MHMnIM61zq/Ovc6xzrkgzrrOsc+EzrXPg8+Ez4HOsc68zrzOrc69zr8gLSDOsc6zzr3Ov861zq/PhM6xzrkgbmV3bGluZSDOvM61z4TOrCDPhM6/ICUuMjUwcyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6ODkgZHBrZy1zcGxpdC9tYWluLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHJlYWRpbmcgJS4yNTBzIgorbXNnc3RyICLPg8+GzqzOu868zrEgzrrOsc+Ezqwgz4TOt869IM6xzr3OrM6zzr3Pic+DzrcgJS4yNTBzIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIG1hZ2ljIGF0IGVuZCBvZiBmaXJzdCBoZWFkZXIiCittc2dzdHIgIiIKKyLPhM6/IM6xz4HPh861zq/OvyBgJS4yNTBzJyDOtc6vzr3Osc65IM66zrHPhM61z4PPhM+BzrHOvM68zq3Ovc6/IC0gzrvOrM64zr/PgiDOus+JzrTOuc66z4zPgiDPg8+Ezr8gz4TOrc67zr/PgiDPhM63z4Igz4DPgc+Oz4TOt8+CICIKKyLOus61z4bOsc67zq/OtM6xz4IiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjExMworIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgcGFkZGluZyBjaGFyYWN0ZXIgKGNvZGUgJWQpIgorbXNnc3RyICIiCisiz4TOvyDOsc+Bz4fOtc6vzr8gYCUuMjUwcycgzrXOr869zrHOuSDOus6xz4TOtc+Dz4TPgc6xzrzOvM6tzr3OvyAtIM67zqzOuM6/z4Igz4fOsc+BzrHOus+Ezq7Pgc6xz4IgcGFkICjOus+JzrTOuc66z4zPgiAlZCkiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjExNworIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBudWxscyBpbiBpbmZvIHNlY3Rpb24iCittc2dzdHIgIs+Ezr8gzrHPgc+HzrXOr86/IGAlLjI1MHMnIM61zq/Ovc6xzrkgzrrOsc+EzrXPg8+Ez4HOsc68zrzOrc69zr8gLSDOus61zr3OrCDPg8+EzrfOvSDOtc69z4zPhM63z4TOsSDPgM67zrfPgc6/z4bOv8+BzrnPjs69IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMjIKKyMsIGZ1enp5Cittc2dpZCAiZm9ybWF0IHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICLOsc+BzrnOuM68z4zPgiDOrc66zrTOv8+DzrfPgiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgZm9ybWF0IHZlcnNpb24gYCUuMjUwcycgLSB5b3UgbmVlZCBhIG5ld2VyIGRwa2ctc3BsaXQiCittc2dzdHIgIiIKKyLOtyDOvM6/z4HPhs6uIM+Ezr/PhSDOsc+Bz4fOtc6vzr/PhSBgJS4yNTBzJyDOtc6vzr3Osc65IM+EzrfPgiDOrc66zrTOv8+DzrfPgiBgJS4yNTBzJyAtIM+Hz4HOtc65zqzOts61z4PPhM61IM6tzr3OsSAiCisizr3Otc+Oz4TOtc+Bzr8gZHBrZy1zcGxpdCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTI3Cittc2dpZCAicGFja2FnZSBuYW1lIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyOAorIywgZnV6enkKK21zZ2lkICJwYWNrYWdlIHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICLOsc+BzrnOuM68z4zPgiDOrc66zrTOv8+DzrfPgiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTI5Cittc2dpZCAicGFja2FnZSBmaWxlIE1ENSBjaGVja3N1bSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIE1ENSBjaGVja3N1bSBgJS4yNTBzJyIKK21zZ3N0ciAiz4TOvyDOsc+Bz4fOtc6vzr8gYCUuMjUwcycgzrXOr869zrHOuSDOus6xz4TOtc+Dz4TPgc6xzrzOvM6tzr3OvyAtIM67zqzOuM6/z4IgzqzOuM+Bzr/Ouc+DzrzOrCBNRDUgYCUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEzNCBkcGtnLXNwbGl0L2luZm8uYzoxMzUKK21zZ2lkICJhcmNoaXZlIHRvdGFsIHNpemUiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTM2IGRwa2ctc3BsaXQvaW5mby5jOjEzNworbXNnaWQgImFyY2hpdmUgcGFydCBvZmZzZXQiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTM5CisjLCBmdXp6eQorbXNnaWQgImFyY2hpdmUgcGFydCBudW1iZXJzIgorbXNnc3RyICLOsc+BzrnOuM68z4zPgiDOrc66zrTOv8+DzrfPgiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTQyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBubyBzbGFzaCBiZXR3ZWVuIHBhcnQgbnVtYmVycyIKK21zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBubyBzbGFzaCBiZXR3ZWVuIGFyY2hpdmUgcGFydCBudW1iZXJzIgorbXNnc3RyICIiCisiz4TOvyDOsc+Bz4fOtc6vzr8gYCUuMjUwcycgzrXOr869zrHOuSDOus6xz4TOtc+Dz4TPgc6xzrzOvM6tzr3OvyAtIM6/zrkgzrHPgc65zrjOvM6/zq8gz4TOvM63zrzOrM+Ez4nOvSDOtM61zr0gz4fPic+Bzq/Ots6/zr3PhM6xzrkgIgorIs68zrUgJy8nIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDUKK21zZ2lkICJudW1iZXIgb2YgYXJjaGl2ZSBwYXJ0cyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBudW1iZXIgb2YgYXJjaGl2ZSBwYXJ0cyIKK21zZ3N0ciAiz4TOvyDOsc+Bz4fOtc6vzr8gYCUuMjUwcycgzrXOr869zrHOuSDOus6xz4TOtc+Dz4TPgc6xzrzOvM6tzr3OvyAtIM67zqzOuM6/z4IgzrHPgc65zrjOvM+Mz4Igz4TOvM6uzrzOsc+Ezr/PgiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTQ5CisjLCBmdXp6eQorbXNnaWQgImFyY2hpdmUgcGFydHMgbnVtYmVyIgorbXNnc3RyICLOsc+BzrnOuM68z4zPgiDOrc66zrTOv8+DzrfPgiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTUxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgcGFydCBudW1iZXIiCittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIGFyY2hpdmUgcGFydCBudW1iZXIiCittc2dzdHIgIs+Ezr8gzrHPgc+HzrXOr86/IGAlLjI1MHMnIM61zq/Ovc6xzrkgzrrOsc+EzrXPg8+Ez4HOsc68zrzOrc69zr8gLSDOu86szrjOv8+CIM6xz4HOuc64zrzPjM+CIM+EzrzOrs68zrHPhM6/z4IiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE1NworbXNnaWQgInBhY2thZ2UgYXJjaGl0ZWN0dXJlIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE2NgorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgbWFnaWMgYXQgZW5kIG9mIHNlY29uZCBoZWFkZXIiCittc2dzdHIgIiIKKyLPhM6/IM6xz4HPh861zq/OvyBgJS4yNTBzJyDOtc6vzr3Osc65IM66zrHPhM61z4PPhM+BzrHOvM68zq3Ovc6/IC0gzrvOrM64zr/PgiDOus+JzrTOuc66z4zPgiBtYWdpYyDPg8+Ezr8gz4TOrc67zr/PgiDPhM63z4IgIgorIjLOt8+CIM66zrXPhs6xzrvOr860zrHPgiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTY4CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIHNlY29uZCBtZW1iZXIgaXMgbm90IGRhdGEgbWVtYmVyIgorbXNnc3RyICIiCisiz4TOvyDOsc+Bz4fOtc6vzr8gYCUuMjUwcycgzrXOr869zrHOuSDOus6xz4TOtc+Dz4TPgc6xzrzOvM6tzr3OvyAtIM+Ezr8gMs6/IM68zq3Ou86/z4IgzrTOtc69IM61zq/Ovc6xzrkgzrzOrc67zr/PgiAiCisizrTOtc60zr/OvM6tzr3Pic69IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gd3JvbmcgbnVtYmVyIG9mIHBhcnRzIGZvciBxdW90ZWQgc2l6ZXMiCittc2dzdHIgIiIKKyLPhM6/IM6xz4HPh861zq/OvyBgJS4yNTBzJyDOtc6vzr3Osc65IM66zrHPhM61z4PPhM+BzrHOvM68zq3Ovc6/IC0gzrvOrM64zr/PgiDOsc+BzrnOuM68z4zPgiDPhM68zrfOvM6sz4TPic69IM6zzrnOsSDPhM6xICIKKyLOtM6/z4POvM6tzr3OsSDOvM61zrPOrc64zrciCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE3OAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBzaXplIGlzIHdyb25nIGZvciBxdW90ZWQgcGFydCBudW1iZXIiCittc2dzdHIgIiIKKyLPhM6/IM6xz4HPh861zq/OvyBgJS4yNTBzJyDOtc6vzr3Osc65IM66zrHPhM61z4PPhM+BzrHOvM68zq3Ovc6/IC0gzrvOrM64zr/PgiDOvM6tzrPOtc64zr/PgiDOs865zrEgz4PPhc6zzrrOtc66z4HOuc68zq3Ovc6/ICIKKyLOsc+BzrnOuM68z4wgz4TOvM6uzrzOsc+Ezr/PgiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTg0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmc3RhdCBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIs6xzrTPjc69zrHPhM63IM63IM61zrrPhM6tzrvOtc+Dzrcgz4TOt8+CIGZzdGF0IM+Dz4TOvyDOsc+Bz4fOtc6vzr8gz4TOvM6uzrzOsc+Ezr/PgiBgJS4yNTBzJyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTg5CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIHRvbyBzaG9ydCIKK21zZ3N0ciAiz4TOvyDOsc+Bz4fOtc6vzr8gYCUuMjUwcycgzrXOr869zrHOuSDOsc67zrvOv865z4nOvM6tzr3OvyAtIM+Azr/Ou8+NIM6yz4HOsc+Hz40iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjIwMiBkcGtnLXNwbGl0L2luZm8uYzoyNDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IG9wZW4gYXJjaGl2ZSBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIs6xzrTPjc69zrHPhM6/IM+Ezr8gzqzOvc6/zrnOs868zrEgz4TOv8+FIM6xz4HPh861zq/Ov8+FIM+EzrzOrs68zrHPhM6/z4Igz4TOt8+CIM6xz4HPh861zrnOv864zq7Ous63z4IgYCUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjIwNAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIG5vdCBhbiBhcmNoaXZlIHBhcnQiCittc2dzdHIgIs+Ezr8gzrHPgc+HzrXOr86/IGAlLjI1MHMnIM60zrXOvSDOtc6vzr3Osc65IM+EzrzOrs68zrEgz4TOt8+CIM6xz4HPh861zrnOv864zq7Ous63z4IiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjIwOQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiVzOlxuIgorI3wgIiAgICBQYXJ0IGZvcm1hdCB2ZXJzaW9uOiAgICAgICAgICAgICVzXG4iCisjfCAiICAgIFBhcnQgb2YgcGFja2FnZTogICAgICAgICAgICAgICAgJXNcbiIKKyN8ICIgICAgICAgIC4uLiB2ZXJzaW9uOiAgICAgICAgICAgICAgICAlc1xuIgorI3wgIiAgICAgICAgLi4uIE1ENSBjaGVja3N1bTogICAgICAgICAgICVzXG4iCisjfCAiICAgICAgICAuLi4gbGVuZ3RoOiAgICAgICAgICAgICAgICAgJWx1IGJ5dGVzXG4iCisjfCAiICAgICAgICAuLi4gc3BsaXQgZXZlcnk6ICAgICAgICAgICAgJWx1IGJ5dGVzXG4iCisjfCAiICAgIFBhcnQgbnVtYmVyOiAgICAgICAgICAgICAgICAgICAgJWQvJWRcbiIKKyN8ICIgICAgUGFydCBsZW5ndGg6ICAgICAgICAgICAgICAgICAgICAlemkgYnl0ZXNcbiIKKyN8ICIgICAgUGFydCBvZmZzZXQ6ICAgICAgICAgICAgICAgICAgICAlbHUgYnl0ZXNcbiIKKyN8ICIgICAgUGFydCBmaWxlIHNpemUgKHVzZWQgcG9ydGlvbik6ICAlbHUgYnl0ZXNcbiIKKyN8ICJcbiIKK21zZ2lkICIiCisiJXM6XG4iCisiICAgIFBhcnQgZm9ybWF0IHZlcnNpb246ICAgICAgICAgICAgJXNcbiIKKyIgICAgUGFydCBvZiBwYWNrYWdlOiAgICAgICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIHZlcnNpb246ICAgICAgICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gYXJjaGl0ZWN0dXJlOiAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiBNRDUgY2hlY2tzdW06ICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIGxlbmd0aDogICAgICAgICAgICAgICAgICVqZCBieXRlc1xuIgorIiAgICAgICAgLi4uIHNwbGl0IGV2ZXJ5OiAgICAgICAgICAgICVqZCBieXRlc1xuIgorIiAgICBQYXJ0IG51bWJlcjogICAgICAgICAgICAgICAgICAgICVkLyVkXG4iCisiICAgIFBhcnQgbGVuZ3RoOiAgICAgICAgICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgIFBhcnQgb2Zmc2V0OiAgICAgICAgICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgIFBhcnQgZmlsZSBzaXplICh1c2VkIHBvcnRpb24pOiAgJWpkIGJ5dGVzXG4iCisiXG4iCittc2dzdHIgIiIKKyIlczpcbiIKKyIgICAgzojOus60zr/Pg863IM68zr/Pgc+Gzq7PgiDPhM68zq7OvM6xz4TOv8+COiAgICAgICAgICAgICAgICVzXG4iCisiICAgIM6kzrzOrs68zrEgz4DOsc66zq3PhM6/z4U6ICAgICAgICAgICAgICAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiDOrc66zrTOv8+Dzrc6ICAgICAgICAgICAgICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIE1ENSBjaGVja3N1bTogICAgICAgICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gzrzOrc6zzrXOuM6/z4I6ICAgICAgICAgICAgICAgICAgICAgICVsdSBieXRlc1xuIgorIiAgICAgICAgLi4uIM60zrnOsc+Hz4nPgc65z4POvM+Mz4IgzrrOrM64zrU6ICAgICAgICAgICAgICVsdSBieXRlc1xuIgorIiAgICDOkc+BzrnOuM68z4zPgiDPhM68zq7OvM6xz4TOv8+COiAgICAgICAgICAgICAgICAgICAgICVkLyVkXG4iCisiICAgIM6czq3Os861zrjOv8+CIM+EzrzOrs68zrHPhM6/z4I6ICAgICAgICAgICAgICAgICAgICAgJXppIGJ5dGVzXG4iCisiICAgIM6Rz4HPh86uIM+EzrzOrs68zrHPhM6/z4I6ICAgICAgICAgICAgICAgICAgICAgICAgJWx1IGJ5dGVzXG4iCisiICAgIM6czq3Os861zrjOv8+CIM6xz4HPh861zq/Ov8+FIM+EzrzOrs68zrHPhM6/z4IgKM+DzrUgz4fPgc6uz4POtyk6ICAlbHUgYnl0ZXNcbiIKKyJcbiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjI1CisjLCBmdXp6eQorI3wgbXNnaWQgIjx1bmtub3duPiIKK21zZ2N0eHQgImFyY2hpdGVjdHVyZSIKK21zZ2lkICI8dW5rbm93bj4iCittc2dzdHIgIjzOrM6zzr3Pic+Dz4TOvz4iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjI0NCBkcGtnLXNwbGl0L2pvaW4uYzoxMDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgcmVxdWlyZXMgb25lIG9yIG1vcmUgcGFydCBmaWxlIGFyZ3VtZW50cyIKK21zZ3N0ciAizrcgLS1pbmZvIM6xz4DOsc65z4TOtc6vIM6tzr3OsSDOriDPgM61z4HOuc+Dz4PPjM+EzrXPgc6xIM6xz4HPh861zq/OsSDPhM68zq7OvM6xz4TOv8+CIM+Jz4Igz4DOsc+BzrHOvM6tz4TPgc6/z4XPgiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjU1CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCVzJyBpcyBub3QgYW4gYXJjaGl2ZSBwYXJ0XG4iCittc2dzdHIgIs+Ezr8gzrHPgc+HzrXOr86/IGAlcycgzrTOtc69IM61zq/Ovc6xzrkgz4TOvM6uzrzOsSDPhM63z4IgzrHPgc+HzrXOuc6/zrjOrs66zrfPglxuIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo0NAorIywgYy1mb3JtYXQKK21zZ2lkICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0OiAiCittc2dpZF9wbHVyYWwgIlB1dHRpbmcgcGFja2FnZSAlcyB0b2dldGhlciBmcm9tICVkIHBhcnRzOiAiCittc2dzdHJbMF0gIiIKK21zZ3N0clsxXSAiIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBvdXRwdXQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAizrHOtM+Nzr3Osc+Ezr8gz4TOvyDOrM69zr/Ouc6zzrzOsSDPhM6/z4UgzrHPgc+HzrXOr86/z4UgzrXOvs+MzrTOv8+FIGAlLjI1MHMnIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gKHJlKW9wZW4gaW5wdXQgcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLOsc60z43Ovc6xz4TOvyDPhM6/IM6szr3Ov865zrPOvM6xIM6zzrnOsSDOtc6vz4POv860zr8gz4TOv8+FIM6xz4HPh861zq/Ov8+FIM+EzrzOrs68zrHPhM6/z4IgYCUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjU4CisjLCBmdXp6eQorI3wgbXNnaWQgIlNraXBwaW5nIGRlc2VsZWN0ZWQgcGFja2FnZSAlcy5cbiIKK21zZ2lkICJza2lwcGluZyBzcGxpdCBwYWNrYWdlIGhlYWRlciIKK21zZ3N0ciAizqDOsc+BzqzOu861zrnPiM63IM6xz4DPjM61z4DOuc67zrXOs868zq3Ovc6/z4Ugz4DOsc66zq3PhM6/z4UgJXMuXG4iCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjU5CisjLCBmdXp6eQorI3wgbXNnaWQgIm1pc3NpbmcgcGFja2FnZSIKK21zZ2lkICJzcGxpdCBwYWNrYWdlIHBhcnQiCittc2dzdHIgIs67zrXOr8+AzrXOuSDPhM6/IM+AzrHOus6tz4TOvyIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NjkgZHBrZy1zcGxpdC9zcGxpdC5jOjIzNworIywgYy1mb3JtYXQKK21zZ2lkICJkb25lXG4iCittc2dzdHIgIs6tzrPOuc69zrVcbiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZXMgYCUuMjUwcycgYW5kIGAlLjI1MHMnIGFyZSBub3QgcGFydHMgb2YgdGhlIHNhbWUgZmlsZSIKK21zZ3N0ciAiz4TOsSDOsc+Bz4fOtc6vzrEgYCUuMjUwcycgzrrOsc65IGAlLjI1MHMnIM60zrXOvSDOtc6vzr3Osc65IM66zr/OvM68zqzPhM65zrEgz4TOv8+FIM6vzrTOuc6/z4UgzrHPgc+HzrXOr86/z4UiCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjkwCisjLCBjLWZvcm1hdAorbXNnaWQgInRoZXJlIGFyZSBzZXZlcmFsIHZlcnNpb25zIG9mIHBhcnQgJWQgLSBhdCBsZWFzdCBgJS4yNTBzJyBhbmQgYCUuMjUwcyciCittc2dzdHIgIiIKKyLPhc+AzqzPgc+Hzr/Phc69IM6xz4HOus61z4TOrc+CIM61zrrOtM+Mz4POtc65z4Igz4TOv8+FIM6xz4HPh861zq/Ov8+FIM+EzrzOrs68zrHPhM6/z4IgJWQgLSDPhM6/z4XOuy4gzrcgYCUuMjUwcycgzrrOsc65IM63IGAiCisiJS4yNTBzJyIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6MTI4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhcnQgJWQgaXMgbWlzc2luZyIKK21zZ3N0ciAizrvOtc6vz4DOtc65IM+Ezr8gzrrOv868zrzOrM+EzrkgJWQiCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjQ3CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiBgJXMnIHBhY2thZ2Ugc3BsaXQvam9pbiB0b29sOyB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICLOlc+BzrPOsc67zrXOr86/IHNwbGl0L2pvaW4gz4DOsc66zq3PhM+Jzr0gz4TOv8+FIERlYmlhbiBgJXMnOyDOrc66zrTOv8+DzrcgJXMuXG4iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIkNvcHlyaWdodCAoQykgMTk5NC0xOTk2IElhbiBKYWNrc29uLlxuIgorbXNnc3RyICJDb3B5cmlnaHQgKEMpIDE5OTQtMTk5NiBJYW4gSmFja3Nvbi5cbiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6NjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLXN8LS1zcGxpdCA8ZmlsZT4gWzxwcmVmaXg+XSAgICAgU3BsaXQgYW4gYXJjaGl2ZS5cbiIKKyIgIC1qfC0tam9pbiA8cGFydD4gPHBhcnQ+IC4uLiAgICAgIEpvaW4gcGFydHMgdG9nZXRoZXIuXG4iCisiICAtSXwtLWluZm8gPHBhcnQ+IC4uLiAgICAgICAgICAgICBEaXNwbGF5IGluZm8gYWJvdXQgYSBwYXJ0LlxuIgorIiAgLWF8LS1hdXRvIC1vIDxjb21wbGV0ZT4gPHBhcnQ+ICAgQXV0by1hY2N1bXVsYXRlIHBhcnRzLlxuIgorIiAgLWx8LS1saXN0cSAgICAgICAgICAgICAgICAgICAgICAgTGlzdCB1bm1hdGNoZWQgcGllY2VzLlxuIgorIiAgLWR8LS1kaXNjYXJkIFs8ZmlsZW5hbWU+IC4uLl0gICAgRGlzY2FyZCB1bm1hdGNoZWQgcGllY2VzLlxuIgorIlxuIgorbXNnc3RyICIiCisizpXOvc+Ezr/Ou86tz4I6XG4iCisiICAtc3wtLXNwbGl0IDxmaWxlPiBbPHByZWZpeD5dICAgICDOlM65zqzPg8+AzrHPg863IM61zr3PjM+CIM+AzrHOus6tz4TOv8+FLlxuIgorIiAgLWp8LS1qb2luIDxwYXJ0PiA8cGFydD4gLi4uICAgICDOo8+Fzr3Orc69z4nPg863IM66zr/OvM68zrHPhM65z47OvS5cbiIKKyIgIC1JfC0taW5mbyA8cGFydD4gLi4uICAgICAgICAgICAgIM6VzrzPhs6szr3Ouc+Dzrcgz4DOu863z4HOv8+Gzr/Pgc6vzrHPgiDOs865zrEgzq3Ovc6xIM66zr/OvM68zqzPhM65LlxuIgorIiAgLWF8LS1hdXRvIC1vIDxjb21wbGV0ZT4gPHBhcnQ+ICAgzpHPhc+Ez4zOvM6xz4TOty3Pg8+Fz4PPg8+Oz4HOtc+Fz4POtyDOus6/zrzOvM6xz4TOuc+Ozr0uXG4iCisiICAtbHwtLWxpc3RxICAgICAgICAgICAgICAgICAgICAgICDOoM6xz4HOrM64zrXPg863IM66zr/OvM68zrHPhM65z47OvSDPgM6/z4UgzrTOtc69IM+EzrHOuc+BzrnOrM62zr/Phc69LlxuIgorIiAgLWR8LS1kaXNjYXJkIFs8ZmlsZW5hbWU+IC4uLl0gICAgzpHOs869z4zOt8+DzrUgzrrOv868zrzOrM+EzrnOsSDPgM6/z4UgzrTOtc69IM+EzrHOuc+BzrnOrM62zr/Phc69LlxuIgorIlxuIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo4MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIk9wdGlvbnM6XG4iCisjfCAiICAtLWRlcG90ZGlyIDxkaXJlY3Rvcnk+ICAgICAgICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy8lcy5cbiIKKyN8ICIgIC1TfC0tcGFydHNpemUgPHNpemU+ICAgICAgICAgICAgIEluIEtpQiwgZm9yIC1zIChkZWZhdWx0IGlzIDQ1MCkuXG4iCisjfCAiICAtb3wtLW91dHB1dCA8ZmlsZT4gICAgICAgICAgICAgICBGb3IgLWogKGRlZmF1bHQgaXMgPHBhY2thZ2U+LTx2ZXJzaW9uPi4iCisjfCAiZGViKS5cbiIKKyN8ICIgIC1RfC0tbnBxdWlldCAgICAgICAgICAgICAgICAgICAgIEJlIHF1aWV0IHdoZW4gLWEgaXMgbm90IGEgcGFydC5cbiIKKyN8ICIgIC0tbXNkb3MgICAgICAgICAgICAgICAgICAgICAgICAgIEdlbmVyYXRlIDguMyBmaWxlbmFtZXMuXG4iCisjfCAiXG4iCisjfCAiRXhpdCBzdGF0dXM6IDAgPSBPSzsgIDEgPSAtYSBpcyBub3QgYSBwYXJ0OyAgMiA9IHRyb3VibGUhXG4iCittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWRlcG90ZGlyIDxkaXJlY3Rvcnk+ICAgICAgICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy8lcy5cbiIKKyIgIC1TfC0tcGFydHNpemUgPHNpemU+ICAgICAgICAgICAgIEluIEtpQiwgZm9yIC1zIChkZWZhdWx0IGlzIDQ1MCkuXG4iCisiICAtb3wtLW91dHB1dCA8ZmlsZT4gICAgICAgICAgICAgICBGaWxlbmFtZSwgZm9yIC1qIChkZWZhdWx0IGlzXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYWNrYWdlPl88dmVyc2lvbj5fPGFyY2g+LmRlYikuXG4iCisiICAtUXwtLW5wcXVpZXQgICAgICAgICAgICAgICAgICAgICBCZSBxdWlldCB3aGVuIC1hIGlzIG5vdCBhIHBhcnQuXG4iCisiICAtLW1zZG9zICAgICAgICAgICAgICAgICAgICAgICAgICBHZW5lcmF0ZSA4LjMgZmlsZW5hbWVzLlxuIgorIlxuIgorbXNnc3RyICIiCisizpXPgM65zrvOv86zzq3PgjpcbiIKKyIgIC0tZGVwb3RkaXIgPGRpcmVjdG9yeT4gICAgICAgICAgIM6nz4HOrs+Dzrcgz4TOv8+FIM66zrHPhM6xzrvPjM6zzr/PhSA8ZGlyZWN0b3J5PiDOsc69z4TOryDPhM6/z4UgIgorIiVzLyVzLlxuIgorIiAgLVN8LS1wYXJ0c2l6ZSA8c2l6ZT4gICAgICAgICAgICAgz4POtSBLaUIsIM6zzrnOsSAtcyAoz4DPgc6/zrrOsc64zr/Pgc65z4POvM6tzr3OtyDPhM65zrzOriAiCisiNDUwKS5cbiIKKyIgIC1vfC0tb3V0cHV0IDxmaWxlPiAgICAgICAgICAgICAgIM6TzrnOsSAtaiAoz4DPgc6/zrrOsc64zr/Pgc65z4POvM6tzr3OvyDOtc6vzr3Osc65IDxwYWNrYWdlPi0iCisiPHZlcnNpb24+LmRlYikuXG4iCisiICAtUXwtLW5wcXVpZXQgICAgICAgICAgICAgICAgICAgICDOoM6xz4HOrM68zrXOuc69zrUgzrHOuM+Mz4HPhc6yzr8gzrHOvSDPhM6/IC1hIM60zrXOvSDOtc6vzr3Osc65IM6tzr3OsSAiCisizrrOv868zrzOrM+EzrkuXG4iCisiICAtLW1zZG9zICAgICAgICAgICAgICAgICAgICAgICAgICDOoM6xz4HOsc6zz4nOs86uIM6/zr3Ov868zqzPhM+Jzr0gzrHPgc+HzrXOr8+Jzr0gz4TPjc+Azr/PhSA4LjMuXG4iCisiXG4iCisizprOsc+EzqzPg8+EzrHPg863IM61zr7PjM60zr/PhTogMCA9IE9LOyAgMSA9IC1hIM60zrXOvSDOtc6vzr3Osc65IM6tzr3OsSDOus6/zrzOvM6sz4TOuTsgIDIgPSDPgM+Bz4zOss67zrfOvM6xIVxuIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo5MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiRXhpdCBzdGF0dXM6XG4iCisiICAwID0gb2tcbiIKKyIgIDEgPSB3aXRoIC0tYXV0bywgZmlsZSBpcyBub3QgYSBwYXJ0XG4iCisiICAyID0gdHJvdWJsZVxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjEwMworbXNnaWQgIlR5cGUgZHBrZy1zcGxpdCAtLWhlbHAgZm9yIGhlbHAuIgorbXNnc3RyICLOlM+Oz4PPhM61IGRwa2ctc3BsaXQgLS1oZWxwIM6zzrnOsSDOss6/zq7OuM61zrnOsS4iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjExNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBmaWxlIGluICUuMjUwcyIKK21zZ3N0ciAizrHPgM+Bz4zPg868zrXOvc6/IM+Ezq3Ou86/z4IgzrHPgc+HzrXOr86/z4Ugz4PPhM6/ICUuMjUwcyIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6MTI2Cittc2dpZCAicGFydCBzaXplIGlzIGZhciB0b28gbGFyZ2Ugb3IgaXMgbm90IHBvc2l0aXZlIgorbXNnc3RyICLPhM6/IM68zq3Os861zrjOv8+CIM+Ezr/PhSDPhM68zq7OvM6xz4TOv8+CIM61zq/Ovc6xzrkgz4DOv867z40gzrzOtc6zzqzOu86/IM6uIM68zrcgzrjOtc+EzrnOus+MIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInBhcnQgc2l6ZSBtdXN0IGJlIGF0IGxlYXN0ICVkIEtpQiAodG8gYWxsb3cgZm9yIGhlYWRlcikiCittc2dzdHIgIiIKKyLPhM6/IM68zq3Os861zrjOv8+CIM+Ezr/PhSDPhM68zq7OvM6xz4TOv8+CIM+Az4HOrc+AzrXOuSDOvc6xIM61zq/Ovc6xzrkgz4TOv8+FzrvOrM+HzrnPg8+Ezr/OvSAlZGsgKM6zzrnOsSDPhM63zr0gzrrOtc+GzrHOu86vzrTOsSkiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzo5MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBkZXBvdCBkaXJlY3RvcnkgYCUuMjUwcyciCittc2dzdHIgIs6xzrTPjc69zrHPhM63IM63IM6xzr3OrM6zzr3Pic+Dzrcgz4TOv8+FIM66zrHPhM6xzrvPjM6zzr/PhSBkZXBvdCBgJS4yNTBzJyIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjEzNAorbXNnaWQgIi0tYXV0byByZXF1aXJlcyB0aGUgdXNlIG9mIHRoZSAtLW91dHB1dCBvcHRpb24iCittc2dzdHIgIs63IC0tYXV0byDOsc+AzrHOuc+EzrXOryDPhM63IM+Hz4HOrs+Dzrcgz4TOt8+CIM61z4DOuc67zr/Os86uz4IgLS1vdXRwdXQiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxMzYKK21zZ2lkICItLWF1dG8gcmVxdWlyZXMgZXhhY3RseSBvbmUgcGFydCBmaWxlIGFyZ3VtZW50IgorbXNnc3RyICLOtyAtLWF1dG8gzrHPgM6xzrnPhM61zq8gzrHOus+BzrnOss+Oz4Igzq3Ovc6xIM6xz4HPh861zq/OvyDPhM68zq7OvM6xz4TOv8+CIM+Jz4Igz4DOsc+BzqzOvM61z4TPgc6/IgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTQwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAizrHOtM+Nzr3Osc+EzrcgzrcgzrHOvc6szrPOvc+Jz4POtyDOsc+Bz4fOtc6vzr/PhSDPhM68zq7OvM6xz4TOv8+CIGAlLjI1MHMnIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTQzCisjLCBjLWZvcm1hdAorbXNnaWQgIkZpbGUgYCUuMjUwcycgaXMgbm90IHBhcnQgb2YgYSBtdWx0aXBhcnQgYXJjaGl2ZS5cbiIKK21zZ3N0ciAizqTOvyDOsc+Bz4fOtc6vzr8gYCUuMjUwcycgzrTOtc69IM61zq/Ovc6xzrkgzrzOrc+Bzr/PgiDOvM65zrHPgiDPgM6/zrvPhc+EzrzOt868zrHPhM65zrrOrs+CIM6xz4HPh861zrnOv864zq7Ous63z4IuXG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlb3BlbiBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIs6xzrTPjc69zrHPhM6/IM+Ezr8gzrXPgM6xzr3OrM69zr/Ouc6zzrzOsSDPhM6/z4UgzrHPgc+HzrXOr86/z4Ugz4TOvM6uzrzOsc+Ezr/PgiBgJS4yNTBzJyIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE4MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBuZXcgZGVwb3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAizrHOtM+Nzr3Osc+Ezr8gz4TOvyDOrM69zr/Ouc6zzrzOsSDOvc6tzr/PhSDOsc+Bz4fOtc6vzr/PhSBkZXBvdCBgJS4yNTBzJyIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE4NAorbXNnaWQgImV4dHJhY3Rpbmcgc3BsaXQgcGFydCIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTkyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW5hbWUgbmV3IGRlcG90IGZpbGUgYCUuMjUwcycgdG8gYCUuMjUwcyciCittc2dzdHIgIs6xzrTPjc69zrHPhM63IM63IM68zrXPhM6/zr3Ov868zrHPg86vzrEgz4TOv8+FIM69zq3Ov8+FIM6xz4HPh861zq/Ov8+FIGRlcG90IGAlLjI1MHMnIM+Dz4TOvyBgJS4yNTBzJyIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE5NgorIywgYy1mb3JtYXQKK21zZ2lkICJQYXJ0ICVkIG9mIHBhY2thZ2UgJXMgZmlsZWQgKHN0aWxsIHdhbnQgIgorbXNnc3RyICLOpM6/IM+EzrzOrs68zrEgJWQgz4TOv8+FIM+AzrHOus6tz4TOv8+FICVzIM6xz4HPh861zrnOv864zrXPhM6uzrjOt866zrUgKM6xzrrPjM68zrcgzrjOrc67zrXOuSAiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyMDAKK21zZ2lkICIgYW5kICIKK21zZ3N0ciAiIM66zrHOuSAiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSB1c2VkLXVwIGRlcG90IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIs6xzrTPjc69zrHPhM63IM63IM60zrnOsc6zz4HOsc+Gzq4gz4fPgc63z4POuc68zr/PgM6/zrnOt868zq3Ovc6/z4UgzrHPgc+HzrXOr86/z4UgZGVwb3QgYCUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyMzUKK21zZ2lkICJKdW5rIGZpbGVzIGxlZnQgYXJvdW5kIGluIHRoZSBkZXBvdCBkaXJlY3Rvcnk6XG4iCittc2dzdHIgIs6Sz4HOrc64zrfOus6xzr0gzrHPgc+HzrXOr86xIM+DzrrOv8+Fz4DOr860zrnOsSDPg8+Ezr/OvSDOus6xz4TOrM67zr/Os86/IGRlcG90OlxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjQwIGRwa2ctc3BsaXQvcXVldWUuYzoyNjkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgYCUuMjUwcyciCittc2dzdHIgIs6xzrTPjc69zrHPhM63IM63IM61z43Pgc61z4POtyDOus6xz4TOrM+Dz4TOsc+DzrfPgiDPhM6/z4UgYCUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNDMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiAlcyAoJWx1IGJ5dGVzKVxuIgorbXNnaWQgIiAlcyAoJWpkIGJ5dGVzKVxuIgorbXNnc3RyICIgJXMgKCVsdSBieXRlcylcbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI0NQorIywgYy1mb3JtYXQKK21zZ2lkICIgJXMgKG5vdCBhIHBsYWluIGZpbGUpXG4iCittc2dzdHIgIiDPhM6/ICVzICjPjM+HzrkgzrrOv865zr3PjCDOsc+Bz4fOtc6vzr8pXG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNTAKK21zZ2lkICJQYWNrYWdlcyBub3QgeWV0IHJlYXNzZW1ibGVkOlxuIgorbXNnc3RyICLOpM6xIM+AzrHOus6tz4TOsSDOtM61zr0gzq3Ph86/z4XOvSDOtc+AzrHOvc6xz4PPhc69zrHPgc68zr/Ou86/zrPOt864zrXOrzpcbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI1OAorIywgYy1mb3JtYXQKK21zZ2lkICIgUGFja2FnZSAlczogcGFydChzKSAiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI3MQorIywgYy1mb3JtYXQKK21zZ2lkICJwYXJ0IGZpbGUgYCUuMjUwcycgaXMgbm90IGEgcGxhaW4gZmlsZSIKK21zZ3N0ciAiz4TOvyDOsc+Bz4fOtc6vzr8gz4TOvM6uzrzOsc+Ezr/PgiBgJS4yNTBzJyDOtM61zr0gzrXOr869zrHOuSDOus6/zrnOvc+MIM6xz4HPh861zq/OvyIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI3OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiKHRvdGFsICVsdSBieXRlcylcbiIKK21zZ2lkICIodG90YWwgJWpkIGJ5dGVzKVxuIgorbXNnc3RyICIoz4PPjc69zr/Ou86/ICVsdSBieXRlcylcbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjMwNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGlzY2FyZCBgJS4yNTBzJyIKK21zZ3N0ciAizrHOtM+Nzr3Osc+EzrcgzrcgzrrOsc+EzrHPg8+Ez4HOv8+Gzq4gz4TOv8+FIGAlLjI1MHMnIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MzA1CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlbGV0ZWQgJXMuXG4iCittc2dzdHIgIs6UzrnOtc6zz4HOrM+Gzrcgz4TOvyAlcy5cbiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjcwIGRwa2ctc3BsaXQvc3BsaXQuYzo3NiBkcGtnLXNwbGl0L3NwbGl0LmM6ODEKK21zZ2lkICJwYWNrYWdlIGZpZWxkIHZhbHVlIGV4dHJhY3Rpb24iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjEzMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBzb3VyY2UgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAizrHOtM+Nzr3Osc+Ezr8gz4TOvyDOrM69zr/Ouc6zzrzOsSDPhM6/z4UgzrHPgc+HzrXOr86/z4Ugz4DOt86zzq7PgiBgJS4yNTBzJyIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjEzMworbXNnaWQgInVuYWJsZSB0byBmc3RhdCBzb3VyY2UgZmlsZSIKK21zZ3N0ciAizrHOtM+Nzr3Osc+Ezr8gzrcgzrXPjc+BzrXPg863IM66zrHPhM6sz4PPhM6xz4POt8+CIM+Ezr/PhSDOsc+Bz4fOtc6vzr/PhSDPgM63zrPOrs+CIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTM1CisjLCBjLWZvcm1hdAorbXNnaWQgInNvdXJjZSBmaWxlIGAlLjI1MHMnIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgIs+Ezr8gzrHPgc+HzrXOr86/IM+AzrfOs86uz4IgYCUuMjUwcycgzrTOtc69IM61zq/Ovc6xzrkgzrrOv865zr3PjCDOsc+Bz4fOtc6vzr8iCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxNTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiU3BsaXR0aW5nIHBhY2thZ2UgJXMgaW50byAlZCBwYXJ0OiAiCittc2dpZF9wbHVyYWwgIlNwbGl0dGluZyBwYWNrYWdlICVzIGludG8gJWQgcGFydHM6ICIKK21zZ3N0clswXSAiIgorbXNnc3RyWzFdICIiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxOTMKK21zZ2lkICIiCisiSGVhZGVyIGlzIHRvbyBsb25nLCBtYWtpbmcgcGFydCB0b28gbG9uZy4gWW91ciBwYWNrYWdlIG5hbWUgb3IgdmVyc2lvblxuIgorIm51bWJlcnMgbXVzdCBiZSBleHRyYW9yZGluYXJpbHkgbG9uZywgb3Igc29tZXRoaW5nLiBHaXZpbmcgdXAuXG4iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjI0OQorbXNnaWQgIi0tc3BsaXQgbmVlZHMgYSBzb3VyY2UgZmlsZW5hbWUgYXJndW1lbnQiCittc2dzdHIgIs63IC0tc3BsaXQgz4fPgc61zrnOrM62zrXPhM6xzrkgzq3Ovc6xIM+Mz4HOuc+DzrzOsSDPgM63zrPOsc6vzr/PhSDOv869z4zOvM6xz4TOv8+CIM6xz4HPh861zq/Ov8+FIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MjUyCittc2dpZCAiLS1zcGxpdCB0YWtlcyBhdCBtb3N0IGEgc291cmNlIGZpbGVuYW1lIGFuZCBkZXN0aW5hdGlvbiBwcmVmaXgiCittc2dzdHIgIiIKKyLOtyAtLXNwbGl0IM60zq3Ph861z4TOsc65IM+Ezr8gz4DOv867z40gzq3Ovc6xIM+Mzr3Ov868zrEgzrHPgc+HzrXOr86/z4Ugz4DOt86zzq7PgiDOus6xzrkgzq3Ovc6xIM+Az4HPjM64zrXOvM6xIM+Az4HOv86/z4HOuc+DzrzOv8+NIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6ODQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJcbiIKKyN8ICJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisjfCAiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi4iCittc2dpZCAiIgorIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAtMjAwMiBXaWNoZXJ0IEFra2VybWFuLlxuIgorIkNvcHlyaWdodCAoQykgMjAwOS0yMDEwIFJhcGhhZWwgSGVydHpvZy5cbiIKK21zZ3N0ciAiIgorIlxuIgorIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEwMQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSA8Y29tbWFuZD5cbiIKKyN8ICJcbiIKKyN8ICJDb21tYW5kczpcbiIKKyN8ICIgIC0taW5zdGFsbCA8bGluaz4gPG5hbWU+IDxwYXRoPiA8cHJpb3JpdHk+XG4iCisjfCAiICAgIFstLXNsYXZlIDxsaW5rPiA8bmFtZT4gPHBhdGg+XSAuLi5cbiIKKyN8ICIgICAgICAgICAgICAgICAgICAgICAgICAgICBhZGQgYSBncm91cCBvZiBhbHRlcm5hdGl2ZXMgdG8gdGhlIHN5c3RlbS5cbiIKKyN8ICIgIC0tcmVtb3ZlIDxuYW1lPiA8cGF0aD4gICByZW1vdmUgPHBhdGg+IGZyb20gdGhlIDxuYW1lPiBncm91cCAiCisjfCAiYWx0ZXJuYXRpdmUuXG4iCisjfCAiICAtLXJlbW92ZS1hbGwgPG5hbWU+ICAgICAgcmVtb3ZlIDxuYW1lPiBncm91cCBmcm9tIHRoZSBhbHRlcm5hdGl2ZXMgIgorI3wgInN5c3RlbS5cbiIKKyN8ICIgIC0tYXV0byA8bmFtZT4gICAgICAgICAgICBzd2l0Y2ggdGhlIG1hc3RlciBsaW5rIDxuYW1lPiB0byBhdXRvbWF0aWMgIgorI3wgIm1vZGUuXG4iCisjfCAiICAtLWRpc3BsYXkgPG5hbWU+ICAgICAgICAgZGlzcGxheSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgPG5hbWU+IGdyb3VwLlxuIgorI3wgIiAgLS1saXN0IDxuYW1lPiAgICAgICAgICAgIGRpc3BsYXkgYWxsIHRhcmdldHMgb2YgdGhlIDxuYW1lPiBncm91cC5cbiIKKyN8ICIgIC0tY29uZmlnIDxuYW1lPiAgICAgICAgICBzaG93IGFsdGVybmF0aXZlcyBmb3IgdGhlIDxuYW1lPiBncm91cCBhbmQgYXNrICIKKyN8ICJ0aGVcbiIKKyN8ICIgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2VyIHRvIHNlbGVjdCB3aGljaCBvbmUgdG8gdXNlLlxuIgorI3wgIiAgLS1zZXQgPG5hbWU+IDxwYXRoPiAgICAgIHNldCA8cGF0aD4gYXMgYWx0ZXJuYXRpdmUgZm9yIDxuYW1lPi5cbiIKKyN8ICIgIC0tYWxsICAgICAgICAgICAgICAgICAgICBjYWxsIC0tY29uZmlnIG9uIGFsbCBhbHRlcm5hdGl2ZXMuXG4iCisjfCAiXG4iCisjfCAiPGxpbms+IGlzIHRoZSBzeW1saW5rIHBvaW50aW5nIHRvICVzLzxuYW1lPi5cbiIKKyN8ICIgIChlLmcuIC91c3IvYmluL3BhZ2VyKVxuIgorI3wgIjxuYW1lPiBpcyB0aGUgbWFzdGVyIG5hbWUgZm9yIHRoaXMgbGluayBncm91cC5cbiIKKyN8ICIgIChlLmcuIHBhZ2VyKVxuIgorI3wgIjxwYXRoPiBpcyB0aGUgbG9jYXRpb24gb2Ygb25lIG9mIHRoZSBhbHRlcm5hdGl2ZSB0YXJnZXQgZmlsZXMuXG4iCisjfCAiICAoZS5nLiAvdXNyL2Jpbi9sZXNzKVxuIgorI3wgIjxwcmlvcml0eT4gaXMgYW4gaW50ZWdlcjsgb3B0aW9ucyB3aXRoIGhpZ2hlciBudW1iZXJzIGhhdmUgaGlnaGVyICIKKyN8ICJwcmlvcml0eSBpblxuIgorI3wgIiAgYXV0b21hdGljIG1vZGUuXG4iCisjfCAiXG4iCisjfCAiT3B0aW9uczpcbiIKKyN8ICIgIC0tYWx0ZGlyIDxkaXJlY3Rvcnk+ICAgICBjaGFuZ2UgdGhlIGFsdGVybmF0aXZlcyBkaXJlY3RvcnkuXG4iCisjfCAiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgY2hhbmdlIHRoZSBhZG1pbmlzdHJhdGl2ZSBkaXJlY3RvcnkuXG4iCisjfCAiICAtLXZlcmJvc2UgICAgICAgICAgICAgICAgdmVyYm9zZSBvcGVyYXRpb24sIG1vcmUgb3V0cHV0LlxuIgorI3wgIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHF1aWV0IG9wZXJhdGlvbiwgbWluaW1hbCBvdXRwdXQuXG4iCisjfCAiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyN8ICIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC0taW5zdGFsbCA8bGluaz4gPG5hbWU+IDxwYXRoPiA8cHJpb3JpdHk+XG4iCisiICAgIFstLXNsYXZlIDxsaW5rPiA8bmFtZT4gPHBhdGg+XSAuLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBhZGQgYSBncm91cCBvZiBhbHRlcm5hdGl2ZXMgdG8gdGhlIHN5c3RlbS5cbiIKKyIgIC0tcmVtb3ZlIDxuYW1lPiA8cGF0aD4gICByZW1vdmUgPHBhdGg+IGZyb20gdGhlIDxuYW1lPiBncm91cCBhbHRlcm5hdGl2ZS5cbiIKKyIgIC0tcmVtb3ZlLWFsbCA8bmFtZT4gICAgICByZW1vdmUgPG5hbWU+IGdyb3VwIGZyb20gdGhlIGFsdGVybmF0aXZlcyAiCisic3lzdGVtLlxuIgorIiAgLS1hdXRvIDxuYW1lPiAgICAgICAgICAgIHN3aXRjaCB0aGUgbWFzdGVyIGxpbmsgPG5hbWU+IHRvIGF1dG9tYXRpYyBtb2RlLlxuIgorIiAgLS1kaXNwbGF5IDxuYW1lPiAgICAgICAgIGRpc3BsYXkgaW5mb3JtYXRpb24gYWJvdXQgdGhlIDxuYW1lPiBncm91cC5cbiIKKyIgIC0tcXVlcnkgPG5hbWU+ICAgICAgICAgICBtYWNoaW5lIHBhcnNlYWJsZSB2ZXJzaW9uIG9mIC0tZGlzcGxheSA8bmFtZT4uXG4iCisiICAtLWxpc3QgPG5hbWU+ICAgICAgICAgICAgZGlzcGxheSBhbGwgdGFyZ2V0cyBvZiB0aGUgPG5hbWU+IGdyb3VwLlxuIgorIiAgLS1nZXQtc2VsZWN0aW9ucyAgICAgICAgIGxpc3QgbWFzdGVyIGFsdGVybmF0aXZlIG5hbWVzIGFuZCB0aGVpciBzdGF0dXMuXG4iCisiICAtLXNldC1zZWxlY3Rpb25zICAgICAgICAgcmVhZCBhbHRlcm5hdGl2ZSBzdGF0dXMgZnJvbSBzdGFuZGFyZCBpbnB1dC5cbiIKKyIgIC0tY29uZmlnIDxuYW1lPiAgICAgICAgICBzaG93IGFsdGVybmF0aXZlcyBmb3IgdGhlIDxuYW1lPiBncm91cCBhbmQgYXNrICIKKyJ0aGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2VyIHRvIHNlbGVjdCB3aGljaCBvbmUgdG8gdXNlLlxuIgorIiAgLS1zZXQgPG5hbWU+IDxwYXRoPiAgICAgIHNldCA8cGF0aD4gYXMgYWx0ZXJuYXRpdmUgZm9yIDxuYW1lPi5cbiIKKyIgIC0tYWxsICAgICAgICAgICAgICAgICAgICBjYWxsIC0tY29uZmlnIG9uIGFsbCBhbHRlcm5hdGl2ZXMuXG4iCisiXG4iCittc2dzdHIgIiIKKyLOp8+Bzq7Pg863OiAlcyBbPG9wdGlvbj4gLi4uXSA8Y29tbWFuZD5cbiIKKyJcbiIKKyLOlc69z4TOv867zq3PgjpcbiIKKyIgIC0taW5zdGFsbCA8bGluaz4gPG5hbWU+IDxwYXRoPiA8cHJpb3JpdHk+XG4iCisiICAgIFstLXNsYXZlIDxsaW5rPiA8bmFtZT4gPHBhdGg+XSAuLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICDPgM+Bzr/Pg864zq7Ous63IM6/zrzOrM60zrHPgiDOtc69zrHOu867zrHOus+EzrnOus+Ozr0gz4PPhM6/IM+Dz43Pg8+EzrfOvM6xLlxuIgorIiAgLS1yZW1vdmUgPG5hbWU+IDxwYXRoPiAgIM6xz4bOsc6vz4HOtc+Dzrcgz4TOv8+FIDxwYXRoPiDOsc+Az4wgz4TOt869IM6/zrzOrM60zrEgzrXOvc6xzrvOu86xzrrPhM65zrrPjs69ICIKKyI8bmFtZT4uXG4iCisiICAtLXJlbW92ZS1hbGwgPG5hbWU+ICAgICAgzrHPhs6xzq/Pgc61z4POtyDPhM63zr0gzr/OvM6szrTOsc+CIDxuYW1lPiDOsc+Az4wgz4TOuc+CIM61zr3Osc67zrvOsc66z4TOuc66zq3PgiAiCisiz4TOv8+FIM+Dz4XPg8+Ezq7OvM6xz4TOv8+CLlxuIgorIiAgLS1hdXRvIDxuYW1lPiAgICAgICAgICAgIM6xzrvOu86xzrPOriDPhM6/z4UgzrrPjc+BzrnOv8+FIM+Dz4XOvc60zq3Pg868zr/PhSA8bmFtZT4gz4PPhM63zr0gzrHPhc+Ez4zOvM6xz4TOtyAiCisizrrOsc+EzqzPg8+EzrHPg863LlxuIgorIiAgLS1kaXNwbGF5IDxuYW1lPiAgICAgICAgIM61zrzPhs6szr3Ouc+Dzrcgz4DOu863z4HOv8+Gzr/Pgc65z47OvSDPg8+HzrXPhM65zrrOrCDOvM61IM+EzrfOvSDOv868zqzOtM6xICIKKyI8bmFtZT4uXG4iCisiICAtLWxpc3QgPG5hbWU+ICAgICAgICAgICAgzrXOvM+GzqzOvc65z4POtyDPjM67z4nOvSDPhM+Jzr0gz4PPhM+Mz4fPic69IM6zzrnOsSDPhM63zr0gzr/OvM6szrTOsSA8bmFtZT4uXG4iCisiICAtLWNvbmZpZyA8bmFtZT4gICAgICAgICAgzrXOvM+GzqzOvc65z4POtSDPhM65z4IgzrXOvc6xzrvOu86xzrrPhM65zrrOrc+CIM6zzrnOsSDPhM63zr0gzr/OvM6szrTOsSA8bmFtZT4gIgorIs66zrHOuSDPgc+Oz4TOt8+DzrUgz4TOv869XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgz4fPgc6uz4PPhM63IM69zrEgzrXPgM65zrvOrc6+zrXOuSDPgM6/zrnOsSDOuM6tzrvOtc65IM69zrEgz4fPgc63z4POuc68zr/PgM6/zrnOrs+DzrXOuS5cbiIKKyIgIC0tc2V0IDxuYW1lPiA8cGF0aD4gICAgICDOv8+BzrnPg868z4zPgiDPhM6/z4UgPHBhdGg+IM+DzrHOvSDOtc69zrHOu867zrHOus+EzrnOus6uz4IgzrPOuc6xIM+Ezr8gIgorIjxuYW1lPi5cbiIKKyIgIC0tYWxsICAgICAgICAgICAgICAgICAgICDOus67zq7Pg863IM+EzrfPgiDOtc+AzrnOu86/zrPOrs+CIC0tY29uZmlnIM6zzrnOsSDPjM67zrXPgiDPhM65z4Igzr/OvM6szrTOtc+CICIKKyLOtc69zrHOu867zrHOus+EzrnOus+Ozr0uXG4iCisiXG4iCisiPGxpbms+IM61zq/Ovc6xzrkgzr8gz4PPhc68zrLOv867zrnOus+Mz4Igz4PPjc69zrTOtc+DzrzOv8+CIM+Azr/PhSDOtM61zq/Ph869zrXOuSDPg8+Ezr8gJXMvPG5hbWU+LlxuIgorIiAgKM+Az4cuIC91c3IvYmluL3BhZ2VyKVxuIgorIjxuYW1lPiDOtc6vzr3Osc65IM+Ezr8gz4DPgc+Jz4TOtc+Nzr/OvSDPjM69zr/OvM6xIM6zzrnOsSDOsc+Fz4TOriDPhM63zr0gzr/OvM6szrTOsSDPg8+Fzr3OtM6tz4POvM+Jzr0uXG4iCisiICAoz4DPhy4gcGFnZXIpXG4iCisiPHBhdGg+IM61zq/Ovc6xzrkgzrcgz4TOv8+Azr/OuM61z4POr86xIM61zr3PjM+CIM6xz4DPjCDPhM6xIM61zr3Osc67zrvOsc66z4TOuc66zqwgzrHPgc+HzrXOr86xIM+Dz4TPjM+Hzr/OuS5cbiIKKyIgICjPgM+HLiAvdXNyL2Jpbi9sZXNzKVxuIgorIjxwcmlvcml0eT4gzrXOr869zrHOuSDOrc69zrHPgiDOsc66zq3Pgc6xzrnOv8+COyDOtc+AzrnOu86/zrPOrc+CIM68zrUgzrzOtc6zzrHOu8+Nz4TOtc+Bzr8gzrHPgc65zrjOvM+MIM6tz4fOv8+Fzr0gIgorIs+Fz4jOt867z4zPhM61z4HOtyDPgM+Bzr/PhM61z4HOsc65z4zPhM63z4TOsSDPg8+EzrfOvVxuIgorIiAgzrHPhc+Ez4zOvM6xz4TOtyDOus6xz4TOrM+Dz4TOsc+DzrcuXG4iCisiXG4iCisizpXPgM65zrvOv86zzq3PgjpcbiIKKyIgIC0tYWx0ZGlyIDxkaXJlY3Rvcnk+ICAgICDOsc67zrvOsc6zzq4gz4TOv8+FIM66zrHPhM6xzrvPjM6zzr/PhSDOtc69zrHOu867zrHOus+EzrnOus+Ozr0uXG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgzrHOu867zrHOs86uIM+Ezr/PhSDOtM65zrHPh861zrnPgc65z4PPhM65zrrOv8+NIM66zrHPhM6xzrvPjM6zzr/PhS5cbiIKKyIgIC0tdmVyYm9zZSAgICAgICAgICAgICAgICDOu861zrnPhM6/z4XPgc6zzq/OsSBcIs6xz4XPhM6/zrvOtc6+zrXOr1wiLCDPgM67zr/Phc+DzrnPjM+EzrXPgc63IM6tzr7Ov860zr/Pgi5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICDOsc64z4zPgc+FzrLOtyDOu861zrnPhM6/z4XPgc6zzq/OsSwgzrXOu86sz4fOuc+Dz4TOtyDOrc6+zr/OtM6/z4IuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgzrXOvM+GzqzOvc65z4POtyDOsc+Fz4TOv8+NIM+Ezr/PhSDOvM63zr3Pjc68zrHPhM6/z4IgzrLOv86uzrjOtc65zrHPgi5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICDOtc68z4bOrM69zrnPg863IM+EzrfPgiDOrc66zrTOv8+DzrfPgi5cbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiPGxpbms+IGlzIHRoZSBzeW1saW5rIHBvaW50aW5nIHRvICVzLzxuYW1lPi5cbiIKKyIgIChlLmcuIC91c3IvYmluL3BhZ2VyKVxuIgorIjxuYW1lPiBpcyB0aGUgbWFzdGVyIG5hbWUgZm9yIHRoaXMgbGluayBncm91cC5cbiIKKyIgIChlLmcuIHBhZ2VyKVxuIgorIjxwYXRoPiBpcyB0aGUgbG9jYXRpb24gb2Ygb25lIG9mIHRoZSBhbHRlcm5hdGl2ZSB0YXJnZXQgZmlsZXMuXG4iCisiICAoZS5nLiAvdXNyL2Jpbi9sZXNzKVxuIgorIjxwcmlvcml0eT4gaXMgYW4gaW50ZWdlcjsgb3B0aW9ucyB3aXRoIGhpZ2hlciBudW1iZXJzIGhhdmUgaGlnaGVyIHByaW9yaXR5ICIKKyJpblxuIgorIiAgYXV0b21hdGljIG1vZGUuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzMQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFsdGRpciA8ZGlyZWN0b3J5PiAgICAgY2hhbmdlIHRoZSBhbHRlcm5hdGl2ZXMgZGlyZWN0b3J5LlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIGNoYW5nZSB0aGUgYWRtaW5pc3RyYXRpdmUgZGlyZWN0b3J5LlxuIgorIiAgLS1sb2cgPGZpbGU+ICAgICAgICAgICAgIGNoYW5nZSB0aGUgbG9nIGZpbGUuXG4iCisiICAtLWZvcmNlICAgICAgICAgICAgICAgICAgYWxsb3cgcmVwbGFjaW5nIGZpbGVzIHdpdGggYWx0ZXJuYXRpdmUgbGlua3MuXG4iCisiICAtLXNraXAtYXV0byAgICAgICAgICAgICAgc2tpcCBwcm9tcHQgZm9yIGFsdGVybmF0aXZlcyBjb3JyZWN0bHkgIgorImNvbmZpZ3VyZWRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBhdXRvbWF0aWMgbW9kZSAocmVsZXZhbnQgZm9yIC0tY29uZmlnIG9ubHkpXG4iCisiICAtLXZlcmJvc2UgICAgICAgICAgICAgICAgdmVyYm9zZSBvcGVyYXRpb24sIG1vcmUgb3V0cHV0LlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHF1aWV0IG9wZXJhdGlvbiwgbWluaW1hbCBvdXRwdXQuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorbXNnc3RyICIiCisizqfPgc6uz4POtzogJXMgWzxvcHRpb24+IC4uLl0gPGNvbW1hbmQ+XG4iCisiXG4iCisizpXOvc+Ezr/Ou86tz4I6XG4iCisiICAtLWFkZCA8b3duZXI+IDxncm91cD4gPG1vZGU+IDxmaWxlPlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIM+Az4HOv8+DzrjOrs66zrcgzrzOuc6xz4IgzrrOsc65zr3Ov8+Nz4HOuc6xz4IgzrXOuc+Dz4zOtM6/z4Ugz4PPhM63zr0gzrLOrM+DzrcgIgorIs60zrXOtM6/zrzOrc69z4nOvS5cbiIKKyIgIC0tcmVtb3ZlIDxmaWxlPiAgICAgICAgICDOsc+GzrHOr8+BzrXPg863IM6xz4HPh861zq/Pic69IM6xz4DPjCDPhM63zr0gzrLOrM+DzrcgzrTOtc60zr/OvM6tzr3Pic69LlxuIgorIiAgLS1saXN0IFs8Z2xvYi1wYXR0ZXJuPl0gIM+AzrHPgc6szrjOtc+Dzrcgz4TPic69IM+Ez4HOtc+Hz4zOvc+Ez4nOvSBvdmVycmlkZXMgz4PPhM63zr0gzrLOrM+DzrcgIgorIs60zrXOtM6/zrzOrc69z4nOvS5cbiIKKyJcbiIKKyJPcHRpb25zOlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIM66zrHOuM6/z4HOuc+DzrzPjM+CIM+Ezr/PhSDOus6xz4TOsc67z4zOs86/z4UgzrzOtSDPhM6/IM6xz4HPh861zq/OvyAiCisic3RhdG92ZXJyaWRlLlxuIgorIiAgLS11cGRhdGUgICAgICAgICAgICAgICAgIM6szrzOtc+DzrcgzrXOvc63zrzOrc+Bz4nPg863IM+Ez4nOvSDOtM65zrrOsc65z4nOvM6sz4TPic69IM+Ez4nOvSDOsc+Bz4fOtc6vz4nOvS5cbiIKKyIgIC0tZm9yY2UgICAgICAgICAgICAgICAgICDOtc+AzrnOss6/zrvOriDOvM65zrHPgiDOtc69zq3Pgc6zzrXOuc6xz4IgzrHOus+MzrzOsSDOus65IM6xzr0gzr8gzq3Ou861zrPPh86/z4IgIgorIlwiz4XOs861zq/Osc+CXCIgzrHPgM6/z4TPjc+HzrXOuS5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICDOsc64z4zPgc+FzrLOtyDOu861zrnPhM6/z4XPgc6zzq/OsSwgz4DOsc+BzrHOs8+JzrPOriDOtc67zqzPh865z4PPhM63z4IgzrXOvs+MzrTOv8+FLlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIM61zrzPhs6szr3Ouc+DzrcgzrHPhc+Ezr/PjSDPhM6/z4UgzrzOt869z43OvM6xz4TOv8+CIM6yzr/Ors64zrXOuc6xz4IuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgzrXOvM+GzqzOvc65z4POtyDPhM63z4Igzq3Ous60zr/Pg863z4IuXG4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE2MworbXNnaWQgImVycm9yIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxOTMKKyMsIGZ1enp5Cittc2dpZCAid2FybmluZyIKK21zZ3N0ciAizrXOs866zrHPhM6szrvOtc65z4jOtyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjM1NgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidHdvIGNvbW1hbmRzIHNwZWNpZmllZDogJXMgYW5kIC0tJXMiCittc2dpZCAidHdvIGNvbW1hbmRzIHNwZWNpZmllZDogLS0lcyBhbmQgLS0lcyIKK21zZ3N0ciAizq3Ph86/z4XOvSDPgM+Bzr/Pg860zrnOv8+BzrnPg8+EzrXOryDOtM+Nzr8gzrXOvc+Ezr/Ou86tz4I6ICVzIM66zrHOuSAtLSVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6Mzg3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW5ub3Qgb3BlbiBkaXZlcnNpb25zOiAlcyIKK21zZ2lkICJjYW5ub3QgYXBwZW5kIHRvICclcyciCittc2dzdHIgIs6xzrTPhc69zrHOvM6vzrEgzrHOvc6/zq/Os868zrHPhM6/z4IgzrXOus+Ez4HOv8+Az47OvTogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo1NTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byByZW1vdmUgJXM6ICVzIgorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgJyVzJyIKK21zZ3N0ciAizrHOtM+Nzr3Osc+EzrcgzrcgzrHPhs6xzq/Pgc61z4POtyDPhM6/z4UgICVzOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGZpbGUgd2hpbGUgdHJ5aW5nIHRvIHJlYWQgJXMiCittc2dzdHIgIs6xz4DPgc+Mz4POvM61zr3OvyDPhM6tzrvOv8+CIM6xz4HPh861zq/Ov8+FIM+Ezr/PhSAlcyDPg8+Ezr8gJS4yNTVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTExMworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAid2hpbGUgcmVhZGluZyAlczogJXMiCittc2dzdHIgIs6xzrTPjc69zrHPhM63IM63IM6xzr3OrM6zzr3Pic+Dzrcgz4TOv8+FICVzOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImxpbmUgbm90IHRlcm1pbmF0ZWQgd2hpbGUgdHJ5aW5nIHRvIHJlYWQgJXMiCittc2dzdHIgIs6xz4DPgc+Mz4POvM61zr3OvyDPhM6tzrvOv8+CIM6xz4HPh861zq/Ov8+FIM+Ezr/PhSAlcyDPg8+Ezr8gJS4yNTVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTEzNworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXMgY29ycnVwdDogJXMiCittc2dzdHIgIs61z4PPic+EzrXPgc65zrrPjCDPg8+GzqzOu868zrE6ICVzIGNvcnJ1cHQ6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE1MAorIywgYy1mb3JtYXQKK21zZ2lkICJuZXdsaW5lcyBwcm9oaWJpdGVkIGluIHVwZGF0ZS1hbHRlcm5hdGl2ZXMgZmlsZXMgKCVzKSIKK21zZ3N0ciAizrHPgM6xzrPOv8+BzrXPjc6/zr3PhM6xzrkgbmV3bGluZXMgz4PPhM6xIM6xz4HPh861zq/OsSAoJXMpIM+Ezr/PhSB1cGRhdGUtYWx0ZXJuYXRpdmVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNjMKK21zZ2lkICJzbGF2ZSBuYW1lIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTcxIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDA1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJkdXBsaWNhdGUgc2xhdmUgJXMiCittc2dpZCAiZHVwbGljYXRlIHNsYXZlIG5hbWUgJXMiCittc2dzdHIgIs61z4DOsc69zrHOu86xzrzOss6xzr3PjM68zrXOvc6/z4IgzrTOtc+Fz4TOtc+BzrXPjc+Jzr0gz4PPjc69zrTOtc+DzrzOv8+CICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE3NAorIywgZnV6enkKK21zZ2lkICJzbGF2ZSBsaW5rIgorbXNnc3RyICLOtc+AzrHOvc6xzrvOsc68zrLOsc69z4zOvM61zr3Ov8+CIM60zrXPhc+EzrXPgc61z43Pic69IM+Dz43Ovc60zrXPg868zr/PgiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAic2xhdmUgbGluayBzYW1lIGFzIG1haW4gbGluayAlcyIKK21zZ3N0ciAizr8gzrTOtc+Fz4TOtc+BzrXPjc+Jzr0gz4PPjc69zrTOtc+DzrzOv8+CIM61zq/Ovc6xzrkgzr8gzq/OtM65zr/PgiDOvM61IM+Ezr/OvSDPgM+Bz4nPhM61z43Ov869z4TOsSAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExODUgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHNsYXZlIGxpbmsgJXMiCittc2dzdHIgIs61z4DOsc69zrHOu86xzrzOss6xzr3PjM68zrXOvc6/z4IgzrTOtc+Fz4TOtc+BzrXPjc+Jzr0gz4PPjc69zrTOtc+DzrzOv8+CICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIwNAorbXNnaWQgIm1hc3RlciBmaWxlIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjEzCisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBwYXRoICVzIgorbXNnc3RyICLOtc+AzrHOvc6xzrvOsc68zrLOsc69z4zOvM61zr3OtyDOtM65zrHOtM+Bzr/OvM6uICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIyNgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorImFsdGVybmF0aXZlICVzIChwYXJ0IG9mIGxpbmsgZ3JvdXAgJXMpIGRvZXNuJ3QgZXhpc3QuIFJlbW92aW5nIGZyb20gbGlzdCBvZiAiCisiYWx0ZXJuYXRpdmVzLiIKK21zZ3N0ciAiIgorIs6XIM61zr3Osc67zrvOsc66z4TOuc66zq4gzrPOuc6xIM+Ezr8gJXMgz4DOsc+BzrHPgM6tzrzPgM61zrkgz4PPhM6/ICVzIC0gz4DOv8+FIM60zrXOvSDOss+Bzq3OuM63zrrOtS4gIM6Rz4bOsc6vz4HOtc+DzrcgzrHPgM+MICIKKyLPhM63zr0gzrvOr8+Dz4TOsSDPhM+Jzr0gzrXOvc6xzrvOu86xzrrPhM65zrrPjs69LiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMjkgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyNDAKKyMsIGZ1enp5Cittc2dpZCAicHJpb3JpdHkiCittc2dzdHIgIs+Az4HOv8+EzrXPgc6xzrnPjM+EzrfPhM6xICVzICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIzMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI0OQorbXNnaWQgInNsYXZlIGZpbGUiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyNDQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInByaW9yaXR5IG9mICVzOiAlcyIKK21zZ3N0ciAiz4DPgc6/z4TOtc+BzrHOuc+Mz4TOt8+EzrEgJXMgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjk3Cittc2dpZCAic3RhdHVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjk5CisjLCBmdXp6eQorbXNnaWQgImludmFsaWQgc3RhdHVzIgorbXNnc3RyICLOvM63IM6tzrPOus+Fz4HOtyDOus6xz4TOrM+Dz4TOsc+DzrcgzrXOvc63zrzOrc+Bz4nPg863z4IiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzA0CisjLCBmdXp6eQorbXNnaWQgIm1hc3RlciBsaW5rIgorbXNnc3RyICLOtc+AzrHOvc6xzrvOsc68zrLOsc69z4zOvM61zr3Ov8+CIM60zrXPhc+EzrXPgc61z43Pic69IM+Dz43Ovc60zrXPg868zr/PgiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzNDgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImRpc2NhcmRpbmcgb2Jzb2xldGUgc2xhdmUgbGluayAlcyAoJXMpLiIKK21zZ3N0ciAizpHPhs6xzq/Pgc61z4POtyDPhM6/z4Ugz4DOsc+Bz4nPh863zrzOrc69zr/PhSDOtM61z4XPhM61z4HOtc+Nzr/Ovc+Ezr/PgiDPg8+FzrzOss6/zrvOuc66zr/PjSDPg8+Fzr3OtM6tz4POvM6/z4UgJXMgKCVzKS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTAyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTY5CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYzOAorbXNnaWQgImF1dG8gbW9kZSIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU3OAorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MzkKK21zZ2lkICJtYW51YWwgbW9kZSIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwNQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiICBsaW5rIGN1cnJlbnRseSBwb2ludHMgdG8gJXMiCittc2dzdHIgIiDOvyDPg8+Nzr3OtM61z4POvM6/z4Igz4DOsc+BzrHPgM6tzrzPgM61zrkgzrHPhc+Ezq4gz4TOtyDPg8+EzrnOs868zq4gz4PPhM6/ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwOAorIywgZnV6enkKK21zZ2lkICIgIGxpbmsgY3VycmVudGx5IGFic2VudCIKK21zZ3N0ciAiIM6/IM+Dz43Ovc60zrXPg868zr/PgiDOsc+Azr/Phc+DzrnOrM62zrXOuSDOsc+Fz4TOriDPhM63IM+Dz4TOuc6zzrzOriIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiVzIC0gcHJpb3JpdHkgJXMiCittc2dpZCAiJXMgLSBwcmlvcml0eSAlZCIKK21zZ3N0ciAiJXMgLSDPgM+Bzr/PhM61z4HOsc65z4zPhM63z4TOsSAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MTUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiAgc2xhdmUgJXM6ICVzIgorbXNnc3RyICIgzrTOtc+Fz4TOtc+BzrXPjc+Jzr0gJXM6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUyMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiQ3VycmVudCAnYmVzdCcgdmVyc2lvbiBpcyAnJXMnLiIKK21zZ3N0ciAizpcgz4TPgc6tz4fOv8+Fz4POsSBgzrLOrc67z4TOuc+Dz4TOtycgzq3Ous60zr/Pg863IM61zq/Ovc6xzrkgJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUyNAorbXNnaWQgIk5vIHZlcnNpb25zIGF2YWlsYWJsZS4iCittc2dzdHIgIs6UzrXOvSDPhc+AzqzPgc+Hzr/Phc69IM60zrnOsc64zq3Pg865zrzOtc+CIM61zrrOtM+Mz4POtc65z4IuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU1MworIywgYy1mb3JtYXQKK21zZ2lkICJUaGVyZSBpcyAlZCBjaG9pY2UgZm9yIHRoZSBhbHRlcm5hdGl2ZSAlcyAocHJvdmlkaW5nICVzKS4iCittc2dpZF9wbHVyYWwgIlRoZXJlIGFyZSAlZCBjaG9pY2VzIGZvciB0aGUgYWx0ZXJuYXRpdmUgJXMgKHByb3ZpZGluZyAlcykuIgorbXNnc3RyWzBdICIiCittc2dzdHJbMV0gIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NjAKKyMsIGZ1enp5Cittc2dpZCAiU2VsZWN0aW9uIgorbXNnc3RyICLOoM61z4HOuc6zz4HOsc+Gzq4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYxCittc2dpZCAiUGF0aCIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2MQorIywgZnV6enkKK21zZ2lkICJQcmlvcml0eSIKK21zZ3N0ciAiz4DPgc6/z4TOtc+BzrHOuc+Mz4TOt8+EzrEgJXMgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYxCittc2dpZCAiU3RhdHVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTgyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJQcmVzcyBlbnRlciB0byBrZWVwIHRoZSBjdXJyZW50IGNob2ljZVsqXSwgb3IgdHlwZSBzZWxlY3Rpb24gbnVtYmVyOiAiCittc2dzdHIgIiIKKyLOoM6xz4TOrs+Dz4TOtSBlbnRlciDOs865zrEgzr3OsSDOus+BzrHPhM6uz4POtc+EzrUgz4TOt869IM+Az4HOv866zrHOuM6/z4HOuc+DzrzOrc69zrdbKl0sIM6uIM+AzrvOt866z4TPgc6/zrvOv86zzq7Pg8+EzrUgz4TOv869ICIKKyLOsc+BzrnOuM68z4wgz4TOt8+CIM61z4DOuc67zr/Os86uz4Igz4POsc+COiAiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNzIxCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vdCByZXBsYWNpbmcgJXMgd2l0aCBhIGxpbmsuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNzYyCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbid0IGluc3RhbGwgdW5rbm93biBjaG9pY2UgJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInNraXAgY3JlYXRpb24gb2YgJXMgYmVjYXVzZSBhc3NvY2lhdGVkIGZpbGUgJXMgKG9mIGxpbmsgZ3JvdXAgJXMpIGRvZXNuJ3QgIgorImV4aXN0LiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTc5MAorIywgYy1mb3JtYXQKK21zZ2lkICJub3QgcmVtb3ZpbmcgJXMgc2luY2UgaXQncyBub3QgYSBzeW1saW5rLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA0MSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA0NworIywgYy1mb3JtYXQKK21zZ2lkICJDYWxsICVzLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA1MQorIywgYy1mb3JtYXQKK21zZ2lkICJBbHRlcm5hdGl2ZSAlcyB1bmNoYW5nZWQgYmVjYXVzZSBjaG9pY2UgJXMgaXMgbm90IGF2YWlsYWJsZS4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNTUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIlNraXAgdW5rbm93biBhbHRlcm5hdGl2ZSAlcy4iCittc2dzdHIgIs6UzrXOvSDOvM+Azr/Pgc+OIM69zrEgzrLPgc+JIM+EzrfOvSDOtc69zrHOu867zrrPhM65zrrOriBgJXMnLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNzcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImxpbmUgdG9vIGxvbmcgb3Igbm90IHRlcm1pbmF0ZWQgd2hpbGUgdHJ5aW5nIHRvIHJlYWQgJXMiCittc2dzdHIgIs6xz4DPgc+Mz4POvM61zr3OvyDPhM6tzrvOv8+CIM6xz4HPh861zq/Ov8+FIM+Ezr/PhSAlcyDPg8+Ezr8gJS4yNTVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA5MCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjEwMworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2tpcCBpbnZhbGlkIGxpbmU6ICVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTMyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJyZW5hbWluZyAlcyBsaW5rIGZyb20gJXMgdG8gJXMuIgorbXNnc3RyICLOnM61z4TOv869zr/OvM6xz4POr86xICVzIM+Dz4XOvc60zq3Pg868zr/PhSDOsc+Az4wgJXMgz4POtSAlcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTczCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJyZW5hbWluZyAlcyBzbGF2ZSBsaW5rIGZyb20gJXMgdG8gJXMuIgorbXNnc3RyICIiCisizpHOu867zrHOs86uIM+EzrfPgiDOv869zr/OvM6xz4POr86xz4Igz4TOv8+FIM60zrXPhc+EzrXPgc61z43Ov869z4TOv8+CIM+Dz4XOvM6yzr/Ou865zrrOv8+NIM+Dz4XOvc60zq3Pg868zr/PhSAlcyDOsc+Az4wgJXMgz4POtSAlcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTg5CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIG5hbWUgKCVzKSBtdXN0IG5vdCBjb250YWluICcvJyBhbmQgc3BhY2VzLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE5MworIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBsaW5rIGlzIG5vdCBhYnNvbHV0ZSBhcyBpdCBzaG91bGQgYmU6ICVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTk3CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIHBhdGggaXMgbm90IGFic29sdXRlIGFzIGl0IHNob3VsZCBiZTogJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgbWFzdGVyOiBpdCBpcyBhIHNsYXZlIG9mICVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjMyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjY3CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIGxpbmsgJXMgaXMgYWxyZWFkeSBtYW5hZ2VkIGJ5ICVzLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI0MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgcGF0aCAlcyBkb2Vzbid0IGV4aXN0LiIKK21zZ3N0ciAiz4DPgc6/zrXOuc60zr/PgM6/zq/Ot8+Dzrc6IM60z4zOuM63zrrOtSAtLXVwZGF0ZSDOsc67zrvOrCDPhM6/ICVzIM60zrXOvSDPhc+AzqzPgc+HzrXOuSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlICVzIGNhbid0IGJlIHNsYXZlIG9mICVzOiBpdCBpcyBhIG1hc3RlciBhbHRlcm5hdGl2ZS4iCittc2dzdHIgIiIKKyLOlyDOtc69zrHOu867zrHOus+EzrnOus6uIM6zzrnOsSDPhM6/ICVzIM+AzrHPgc6xz4DOrc68z4DOtc65IM+Dz4TOvyAlcyAtIM+Azr/PhSDOtM61zr0gzrLPgc6tzrjOt866zrUuICDOkc+GzrHOr8+BzrXPg863IM6xz4DPjCAiCisiz4TOt869IM67zq/Pg8+EzrEgz4TPic69IM61zr3Osc67zrvOsc66z4TOuc66z47OvS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjU4CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlICVzIGNhbid0IGJlIHNsYXZlIG9mICVzOiBpdCBpcyBhIHNsYXZlIG9mICVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjc4CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIGxpbmsgJXMgaXMgYWxyZWFkeSBtYW5hZ2VkIGJ5ICVzIChzbGF2ZSBvZiAlcykuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzI0CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gYXJndW1lbnQgYCVzJyIKK21zZ3N0ciAizqzOs869z4nPg8+Ezr/PgiDPjM+BzrnPg868zrEgYCVzJyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNDMKK21zZ2lkICItLWluc3RhbGwgbmVlZHMgPGxpbms+IDxuYW1lPiA8cGF0aD4gPHByaW9yaXR5PiIKK21zZ3N0ciAizrcgzrXOvc+Ezr/Ou86uIC0taW5zdGFsbCDPh8+BzrXOuc6szrbOtc+EzrHOuSA8bGluaz4gPG5hbWU+IDxwYXRoPiA8cHJpb3JpdHk+IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM0NiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM5NworbXNnaWQgIjxsaW5rPiBhbmQgPHBhdGg+IGNhbid0IGJlIHRoZSBzYW1lIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzQ5Cittc2dpZCAicHJpb3JpdHkgbXVzdCBiZSBhbiBpbnRlZ2VyIgorbXNnc3RyICLOtyDPgM+Bzr/PhM61z4HOsc65z4zPhM63z4TOsSDPgM+Bzq3PgM61zrkgzr3OsSDOtc6vzr3Osc65IM6tzr3Osc+CIM6xzrrOrc+BzrHOuc6/z4IgzrHPgc65zrjOvM+Mz4IiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzYyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgPG5hbWU+IDxwYXRoPiIKK21zZ3N0ciAiLS0lcyDPh8+BzrXOuc6szrbOtc+EzrHOuSA8bmFtZT4gPHBhdGg+IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM3NgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIDxuYW1lPiIKK21zZ3N0ciAiLS0lcyDPh8+BzrXOuc6szrbOtc+EzrHOuSA8bmFtZT4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzg4Cittc2dpZCAiLS1zbGF2ZSBvbmx5IGFsbG93ZWQgd2l0aCAtLWluc3RhbGwiCittc2dzdHIgIs63IM61zr3PhM6/zrvOriAtLXNsYXZlIM61z4DOuc+Ez4HOrc+AzrXPhM6xzrkgzrzPjM69zr8gzrzOtSDPhM63zr0gLS1pbnN0YWxsIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM5MAorbXNnaWQgIi0tc2xhdmUgbmVlZHMgPGxpbms+IDxuYW1lPiA8cGF0aD4iCittc2dzdHIgIs63IM61zr3PhM6/zrvOriAtLXNsYXZlIM+Hz4HOtc65zqzOts61z4TOsc65IDxsaW5rPiA8bmFtZT4gPHBhdGg+IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM5OQorIywgYy1mb3JtYXQKK21zZ2lkICJuYW1lICVzIGlzIGJvdGggcHJpbWFyeSBhbmQgc2xhdmUiCittc2dzdHIgIs+Ezr8gz4zOvc6/zrzOsSAlcyDOtc6vzr3Osc65IM+EzrHPhc+Ez4zPh8+Bzr/Ovc6xIM66zrHOuSDPgM+Bz4nPhM61z43Ov869IM66zrHOuSDOtM61z4XPhM61z4HOtc+Nzr/OvSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAibGluayAlcyBpcyBib3RoIHByaW1hcnkgYW5kIHNsYXZlIgorbXNnc3RyICLOvyDPg8+Nzr3OtM61z4POvM6/z4IgJXMgzrXOr869zrHOuSDPhM6xz4XPhM+Mz4fPgc6/zr3OsSDOus6xzrkgz4DPgc+Jz4TOtc+Nz4nOvSDOus6xzrkgzrTOtc+Fz4TOtc+BzrXPjc+Jzr0iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDIyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGEgPGZpbGU+IGFyZ3VtZW50IgorbXNnc3RyICItLSVzIM+Hz4HOtc65zqzOts61z4TOsc65IM68z4zOvc6/IM6tzr3OsSDPjM+BzrnPg868zrEiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDQ4CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gb3B0aW9uIGAlcyciCittc2dzdHIgIs6szrPOvc+Jz4PPhM63IM61z4DOuc67zr/Os86uIGAlcyciCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDUzCisjLCBmdXp6eQorbXNnaWQgIiIKKyJuZWVkIC0tZGlzcGxheSwgLS1xdWVyeSwgLS1saXN0LCAtLWdldC1zZWxlY3Rpb25zLCAtLWNvbmZpZywgLS1zZXQsIC0tc2V0LSIKKyJzZWxlY3Rpb25zLCAtLWluc3RhbGwsIC0tcmVtb3ZlLCAtLWFsbCwgLS1yZW1vdmUtYWxsIG9yIC0tYXV0byIKK21zZ3N0ciAiIgorIs+Hz4HOtc65zqzOts61z4TOsc65IM68zq/OsSDOsc+Az4wgz4TOuc+CIC0tZGlzcGxheSwgLS1jb25maWcsIC0tc2V0LCAtLWluc3RhbGwsIC0tcmVtb3ZlLCAtLSIKKyJhbGwsIC0tcmVtb3ZlLWFsbCAgzq4gLS1hdXRvIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQ5MAorIywgZnV6enkKKyN8IG1zZ2lkICJyZWFkIGVycm9yIG9uIHN0YW5kYXJkIGlucHV0IgorbXNnaWQgIjxzdGFuZGFyZCBpbnB1dD4iCittc2dzdHIgIs+Dz4bOrM67zrzOsSDOsc69zqzOs869z4nPg863z4Igz4PPhM63zr0gz4DPgc+Mz4TPhc+AzrcgzrXOr8+Dzr/OtM6/IChzdGRpbikiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTAwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTAzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJubyBhbHRlcm5hdGl2ZXMgZm9yICVzLiIKK21zZ3N0ciAizpTOtc69IM+Fz4DOrM+Bz4fOv8+Fzr0gzrXOvc6xzrvOu86xzrrPhM65zrrOrc+CIM6zzrnOsSDPhM6/ICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMvJXMgaXMgZGFuZ2xpbmcsIGl0IHdpbGwgYmUgdXBkYXRlZCB3aXRoIGJlc3QgY2hvaWNlLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUzNAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzLyVzIGhhcyBiZWVuIGNoYW5nZWQgKG1hbnVhbGx5IG9yIGJ5IGEgc2NyaXB0KS4gU3dpdGNoaW5nIHRvIG1hbnVhbCAiCisidXBkYXRlcyBvbmx5LiIKK21zZ3N0ciAiIgorIs6kzr8gJXMgzq3Ph861zrkgzrzOtc+EzrHOss67zrfOuM61zq8gKM61zq/PhM61IM68zrUgz4TOvyDPh86tz4HOuSDOtc6vz4TOtSDOsc+Az4wgzrrOrM+Azr/Ouc6/IM+DzrXOvc6sz4HOuc6/KS5cbiIKKyLOkc67zrvOsc6zzq4gz4POtSDOtc69zrfOvM61z4HPjs+DzrXOuc+CIM68z4zOvc6/IM68zrUgz4TOvyDPh86tz4HOuS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTQyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJzZXR0aW5nIHVwIGF1dG9tYXRpYyBzZWxlY3Rpb24gb2YgJXMuIgorbXNnc3RyICLOms6xzrjOv8+BzrnPg868z4zPgiDOsc+Fz4TPjM68zrHPhM63z4IgzrXPgM65zrvOv86zzq7PgiDOs865zrEgz4TOvyAlcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTUxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBmb3IgJXMgbm90IHJlZ2lzdGVyZWQsIG5vdCBzZXR0aW5nLiIKK21zZ3N0ciAizpcgzrXOvc6xzrvOu86xzrrPhM65zrrOriAlcyDOs865zrEgz4TOvyAlcyDOtM61zr0gzrXOr869zrHOuSDOus6xz4TOsc6zzrXOs8+BzrHOvM68zq3Ovc63LCDOtM61zr0gzrHPhs6xzrnPgc61zq/PhM6xzrkuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU1NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU2MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiVGhlcmUgaXMgbm8gcHJvZ3JhbSB3aGljaCBwcm92aWRlcyAlcy4iCittc2dzdHIgIiIKKyLOlM61zr0gz4XPgM6sz4HPh861zrkgz4DPgc+MzrPPgc6xzrzOvM6xIM+Azr/PhSDOvc6xIM+AzrHPgc6tz4fOtc65IM+Ezr8gJXMuXG4iCisizqTOr8+Azr/PhM6xIM+Az4HOv8+CIM+Bz43OuM68zrnPg863LlxuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU2NSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU3NQorbXNnaWQgIk5vdGhpbmcgdG8gY29uZmlndXJlLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU3MworIywgYy1mb3JtYXQKK21zZ2lkICJUaGVyZSBpcyBvbmx5IG9uZSBhbHRlcm5hdGl2ZSBpbiBsaW5rIGdyb3VwICVzOiAlcyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU4NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgZm9yICVzIG5vdCByZWdpc3RlcmVkLCBub3QgcmVtb3ZpbmcuIgorbXNnc3RyICLOlyDOtc69zrHOu867zrHOus+EzrnOus6uICVzIM6zzrnOsSDPhM6/ICVzIM60zrXOvSDOtc6vzr3Osc65IM66zrHPhM6xzrPOtc6zz4HOsc68zrzOrc69zrcsIM60zrXOvSDOsc+GzrHOuc+BzrXOr8+EzrHOuS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTkyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJyZW1vdmluZyBtYW51YWxseSBzZWxlY3RlZCBhbHRlcm5hdGl2ZSAtIHN3aXRjaGluZyAlcyB0byBhdXRvIG1vZGUiCittc2dzdHIgIiIKKyLOkc+GzrHOr8+BzrXPg863IM+EzrfPgiDOtc+AzrnOu861zrPOvM6tzr3Ot8+CIM68zrUgz4TOvyDPh86tz4HOuSDOtc69zrHOu867zrHOus+EzrnOus6uz4IgLSDOsc67zrvOsc6zzq4gz4PPhM63zr0gzrHPhc+Ez4zOvM6xz4TOtyAiCisizrrOsc+EzqzPg8+EzrHPg863IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYxNworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiYXV0b21hdGljIHVwZGF0ZXMgb2YgJXMvJXMgYXJlIGRpc2FibGVkLCBsZWF2aW5nIGl0IGFsb25lLiIKK21zZ3N0ciAizp/OuSDOsc+Fz4TPjM68zrHPhM61z4IgzrXOvc63zrzOtc+Bz47Pg861zrnPgiDPhM6/z4UgJXMgzq3Ph86/z4XOvSDOsc+AzrXOvc61z4HOs86/z4DOv865zrfOuM61zq8sIM+Ezr8gzrHPhs6uzr3PiS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjE5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ0byByZXR1cm4gdG8gYXV0b21hdGljIHVwZGF0ZXMgdXNlICclcyAtLWF1dG8gJXMnLiIKK21zZ3N0ciAiIgorIs6TzrnOsSDOvc6xIM61z4DOuc+Dz4TPgc6tz4jOtc+EzrUgz4POtSDOsc+Fz4TPjM68zrHPhM61z4IgzrXOvc63zrzOtc+Bz47Pg861zrnPgiDPh8+BzrfPg865zrzOv8+Azr/Ouc6uz4PPhM61IM+EzrfOvSDOtc69z4TOv867zq4gIgorImB1cGRhdGUtYWx0ZXJuYXRpdmVzIC0tYXV0byAlcycuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYzNgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidXNpbmcgJXMgdG8gcHJvdmlkZSAlcyAoJXMpIGluICVzLiIKK21zZ3N0ciAizqfPgc6uz4POuc68zr/PgM6/zq/Ot8+Dzrcgz4TOv8+FICclcycgzrPOuc6xIM+AzrHPgc6/z4fOriDPhM6/z4UgJyVzJy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjQ0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmb3JjaW5nIHJlaW5zdGFsbGF0aW9uIG9mIGFsdGVybmF0aXZlICVzIGJlY2F1c2UgbGluayBncm91cCAlcyBpcyBicm9rZW4uIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjUxCisjLCBjLWZvcm1hdAorbXNnaWQgImN1cnJlbnQgYWx0ZXJuYXRpdmUgJXMgaXMgdW5rbm93biwgc3dpdGNoaW5nIHRvICVzIGZvciBsaW5rIGdyb3VwICVzLiIKK21zZ3N0ciAiIgorCisjLCBmdXp6eQorI34gbXNnaWQgIml0IGlzIGEgc2xhdmUgb2YgJXMiCisjfiBtc2dzdHIgIiDOtM61z4XPhM61z4HOtc+Nz4nOvSAlczogJXMiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgImNhbm5vdCBzdGF0IG9sZCBuYW1lIGAlcyc6ICVzIgorI34gbXNnaWQgImNhbm5vdCBzdGF0ICVzOiAlcyIKKyN+IG1zZ3N0ciAizrHOtM+Fzr3Osc68zq/OsSDPgM+Bzr/Pg860zrnOv8+BzrnPg868zr/PjSDOus6xz4TOrM+Dz4TOsc+DzrfPgiDPhM6/z4Ugz4DOsc67zrnOv8+NIM6/zr3PjM68zrHPhM6/z4IgYCVzJzogJXMiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgIiVzOiBjb3B5aW5nICVzIHRvICVzIGZhaWxlZCwgZ2l2aW5nIHVwOiAlcyIKKyN+IG1zZ2lkICJzY2FuIG9mICVzIGZhaWxlZDogJXMiCisjfiBtc2dzdHIgIiVzOiDOtyDOsc69z4TOuc6zz4HOsc6zzq4gz4TOvyAlcyDPg861ICVzIM6xz4DOrc+Ez4XPh861LCDOtc6zzrrOsc+EzrHOu861zq/PgM+JOiAlcyIKKworIywgZnV6enkKKyN+fCBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgJXMiCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWN1dGUgJXM6ICVzIgorI34gbXNnc3RyICLOsc60z43Ovc6xz4TOtyDOtyDOtc66z4TOrc67zrXPg863IM+Ezr/PhSAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byBtYWtlICVzIGEgc3ltbGluayB0byAlczogJXMiCisjfiBtc2dzdHIgIs6xzrTPjc69zrHPhM63IM63IM60zrfOvM65zr/Phc+BzrPOr86xICVzIM61zr3PjM+CIM+Dz4XOvM6yzr/Ou865zrrOv8+NIM60zrXPg868zr/PjSDPg8+Ezr8gJXM6ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgJXMgYXMgJXM6ICVzIgorI34gbXNnc3RyICLOsc60z43Ovc6xz4TOtyDOtyDOtc6zzrrOsc+EzqzPg8+EzrHPg863IM+Ezr/PhSAlcyDPic+CICVzOiAlcyIKKworIywgZnV6enkKKyN+IG1zZ2lkICJ3aGlsZSB3cml0aW5nICVzOiAlcyIKKyN+IG1zZ3N0ciAiz4PPhs6szrvOvM6xIM61zrPOs8+BzrHPhs6uz4Igz4PPhM6/IHN0ZG91dDogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcmVhZCAlczogJXMiCisjfiBtc2dzdHIgIs6xzrTPjc69zrHPhM63IM63IM6xzr3OrM6zzr3Pic+Dzrcgz4TOv8+FICVzOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byBjbG9zZSAlczogJXMiCisjfiBtc2dzdHIgIs6xzrTPjc69zrHPhM6/IM+Ezr8gzrrOu861zq/Pg865zrzOvyDPhM6/z4UgJXM6ICVzIgorCisjLCBmdXp6eQorI358IG1zZ2lkICJ1bmFibGUgdG8gd3JpdGUgJXM6ICVzIgorI34gbXNnaWQgImNhbm5vdCB3cml0ZSAlczogJXMiCisjfiBtc2dzdHIgIs6xzrTPjc69zrHPhM63IM63IM61zrPOs8+BzrHPhs6uIM+Ezr/PhSAlczogJXMiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgInVuYWJsZSB0byByZW5hbWUgJXMgdG8gJXM6ICVzIgorI34gbXNnaWQgInVuYWJsZSB0byByZW5hbWUgZmlsZSAnJXMnIHRvICclcyciCisjfiBtc2dzdHIgIs6RzrTPjc69zrHPhM63IM63IM68zrXPhM6/zr3Ov868zrHPg86vzrEgz4TOv8+FICVzIM+DzrUgJXM6ICVzIgorCisjfiBtc2dpZCAibWFsbG9jIGZhaWxlZCAoJWxkIGJ5dGVzKSIKKyN+IG1zZ3N0ciAizrcgbWFsbG9jIM6xz4DOrc+Ez4XPh861ICglbGQgYnl0ZXMpIgorCisjfiBtc2dpZCAicmVhbGxvYyBmYWlsZWQgKCVsZCBieXRlcykiCisjfiBtc2dzdHIgIs63IHJlYWxsb2MgzrHPgM6tz4TPhc+HzrUgKCVsZCBieXRlcykiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gdW5idWZmZXIgYCUuMjU1cyciCisjfiBtc2dzdHIgIs6xzrTPjc69zrHPhM63IM63IM6xz4DOv860zq3Pg868zrXPhc+DzrcgYCUuMjU1cyciCisKKyN+IG1zZ2lkICJwYXJ0IGZpbGUgYCUuMjUwcycgaGFzIHRyYWlsaW5nIGdhcmJhZ2UiCisjfiBtc2dzdHIgIs+Ezr8gzrHPgc+HzrXOr86/IM+EzrzOrs68zrHPhM6/z4IgYCUuMjUwcycgzq3Ph861zrkgz4POus6/z4XPgM6vzrTOuc6xIM+Dz4TOvyDPhM6tzrvOv8+CIgorCisjfiBtc2dpZCAic2l6ZSAlN2Qgb2NjdXJzICU1ZCB0aW1lc1xuIgorI34gbXNnc3RyICLPhM6/IM68zq3Os861zrjOv8+CICU3ZCDOu86xzrzOss6szr3Otc65IM+Hz47Pgc6xICU1ZCDPhs6/z4HOrc+CXG4iCisKKyN+IG1zZ2lkICJvdXQgb2YgbWVtb3J5IHB1c2hpbmcgZXJyb3IgaGFuZGxlcjogIgorI34gbXNnc3RyICLOvyDOtM61zq/Ous+EzrfPgiDPg8+GzqzOu868zrHPhM6/z4Igz4nOuM61zq/PhM6xzrkgzrXOus+Ez4zPgiDOvM69zq7OvM63z4I6ICIKKworI34gbXNnaWQgInVuYWJsZSB0byB1bmxvY2sgZHBrZyBzdGF0dXMgZGF0YWJhc2UiCisjfiBtc2dzdHIgIs6xzrTPjc69zrHPhM6/IM+Ezr8gzr7Otc66zrvOtc6vzrTPic68zrEgz4TOt8+CIM6yzqzPg863z4IgzrTOtc60zr/OvM6tzr3Pic69IM66zrHPhM6sz4PPhM6xz4POt8+CIGRwa2ciCisKKyN+IG1zZ2lkICJjb3B5IGluZm8gZmlsZSBgJS4yNTVzJyIKKyN+IG1zZ3N0ciAizrHOvc+EzrnOs8+BzrHPhs6uIM6xz4HPh861zq/Ov8+FIM+AzrvOt8+Bzr/Phs6/z4HOuc+Ozr0gYCUuMjU1cyciCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gd3JpdGUgcGFyc2luZyB3YXJuaW5nIgorI34gbXNnc3RyICLOsc+Azr/PhM+Fz4fOr86xIM61zrPOs8+BzrHPhs6uz4Igz4DPgc6/zrXOuc60zr/PgM6/zq/Ot8+DzrfPgiDOsc69zqzOu8+Fz4POt8+CIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGxvY2sgdHJpZ2dlcnMgYXJlYSIKKyN+IG1zZ3N0ciAizrHOtM+Fzr3Osc68zq/OsSDOus67zrXOuc60z47OvM6xz4TOv8+CIM+EzrfPgiDPgM61z4HOuc6/z4fOrs+CIM+Ez4nOvSB0cmlnZ2VyIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHJ1biAlcyAoJS4yNTBzKSIKKyN+IG1zZ3N0ciAizrHPgM6/z4TPhc+Hzq/OsSDOtc66z4TOrc67zrXPg863z4IgJXMgKCUuMjUwcykiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBzaGVsbCAoJS4yNTBzKSIKKyN+IG1zZ3N0ciAizrHPgM6tz4TPhc+HzrUgzrcgzrXOus66zq/Ovc63z4POtyDOus61zrvPjc+Gzr/Phc+CICglLjI1MHMpIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGNoZWNrIGZvciBleGlzdGVuY2Ugb2YgYCUuMjUwcyciCisjfiBtc2dzdHIgIs6xzrTPjc69zrHPhM6/z4Igzr8gzq3Ou861zrPPh86/z4Igz43PgM6xz4HOvs63z4Igz4TOv8+FIGAlLjI1MHMnIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgcm0gZm9yIGNsZWFudXAiCisjfiBtc2dzdHIgIs+Dz4bOrM67zrzOsSDOus6xz4TOrCDPhM63zr0gzrTOuc6xzrPPgc6xz4bOriDOus6xz4TOrCDPhM6/zr0gz4TOtc+BzrzOsc+EzrnPg868z4wiCisKKyN+IG1zZ2lkICIiCisjfiAiJXMgZGVidWdnaW5nIG9wdGlvbiwgLS1kZWJ1Zz08b2N0YWw+IG9yIC1EPG9jdGFsPjpcbiIKKyN+ICJcbiIKKyN+ICIgbnVtYmVyICByZWYuIGluIHNvdXJjZSAgIGRlc2NyaXB0aW9uXG4iCisjfiAiICAgICAgMSAgIGdlbmVyYWwgICAgICAgICAgIEdlbmVyYWxseSBoZWxwZnVsIHByb2dyZXNzIGluZm9ybWF0aW9uXG4iCisjfiAiICAgICAgMiAgIHNjcmlwdHMgICAgICAgICAgIEludm9jYXRpb24gYW5kIHN0YXR1cyBvZiBtYWludGFpbmVyIHNjcmlwdHNcbiIKKyN+ICIgICAgIDEwICAgZWFjaGZpbGUgICAgICAgICAgT3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkXG4iCisjfiAiICAgIDEwMCAgIGVhY2hmaWxlZGV0YWlsICAgIExvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkXG4iCisjfiAiICAgICAyMCAgIGNvbmZmICAgICAgICAgICAgIE91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGVcbiIKKyN+ICIgICAgMjAwICAgY29uZmZkZXRhaWwgICAgICAgTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggY29uZmlndXJhdGlvbiBmaWxlXG4iCisjfiAiICAgICA0MCAgIGRlcGNvbiAgICAgICAgICAgIERlcGVuZGVuY2llcyBhbmQgY29uZmxpY3RzXG4iCisjfiAiICAgIDQwMCAgIGRlcGNvbmRldGFpbCAgICAgIExvdHMgb2YgZGVwZW5kZW5jaWVzL2NvbmZsaWN0cyBvdXRwdXRcbiIKKyN+ICIgIDEwMDAwICAgdHJpZ2dlcnMgICAgICAgICAgVHJpZ2dlciBhY3RpdmF0aW9uIGFuZCBwcm9jZXNzaW5nXG4iCisjfiAiICAyMDAwMCAgIHRyaWdnZXJzZGV0YWlsICAgIExvdHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2Vyc1xuIgorI34gIiAgNDAwMDAgICB0cmlnZ2Vyc3N0dXBpZCAgICBTaWxseSBhbW91bnRzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnNcbiIKKyN+ICIgICAxMDAwICAgdmVyeXZlcmJvc2UgICAgICAgTG90cyBvZiBkcml2ZWwgYWJvdXQgZWcgdGhlIGRwa2cvaW5mbyAiCisjfiAiZGlyZWN0b3J5XG4iCisjfiAiICAgMjAwMCAgIHN0dXBpZGx5dmVyYm9zZSAgIEluc2FuZSBhbW91bnRzIG9mIGRyaXZlbFxuIgorI34gIlxuIgorI34gIkRlYnVnZ2luZyBvcHRpb25zIGFyZSBiZSBtaXhlZCB1c2luZyBiaXR3aXNlLW9yLlxuIgorI34gIk5vdGUgdGhhdCB0aGUgbWVhbmluZ3MgYW5kIHZhbHVlcyBhcmUgc3ViamVjdCB0byBjaGFuZ2UuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICIlcyDOtc+AzrnOu86/zrPOriDOtc66z4PPhs6xzrvOvM6sz4TPic+DzrfPgiwgLS1kZWJ1Zz08b2N0YWw+IM6uIC1EPG9jdGFsPjpcbiIKKyN+ICJcbiIKKyN+ICIgzrHPgc65zrjOvM+Mz4IgIM6xzr3Osc+GLs+DzrUgz4DOtc+BzrnOs8+BzrHPhs6uIM66z47OtM65zrrOsVxuIgorI34gIiAgICAgIDEgICBnZW5lcmFsICAgICAgICAgICDOk861zr3Ouc66zq4gzrLOv863zrjOt8+EzrnOus6uIM+AzrvOt8+Bzr/Phs6/z4HOr86xIM+Az4HOv8+MzrTOv8+FXG4iCisjfiAiICAgICAgMiAgIHNjcmlwdHMgICAgICAgICAgIM6azrvOrs+DzrcgzrrOsc65IM66zrHPhM6sz4PPhM6xz4POtyDPhM+Jzr0gz4POtc69zrHPgc6vz4nOvSDPg8+Fzr3PhM6uz4HOt8+DzrfPglxuIgorI34gIiAgICAgMTAgICBlYWNoZmlsZSAgICAgICAgICDOiM6+zr/OtM6/z4IgzrPOuc6xIM66zqzOuM61IM61z4DOtc6+zrXPgc6zzrHPg868zq3Ovc6/IM6xz4HPh861zq/Ov1xuIgorI34gIiAgICAxMDAgICBlYWNoZmlsZWRldGFpbCAgICDOkc69zrHOu8+Fz4TOuc66zq4gzq3Ovs6/zrTOv8+CIM6zzrnOsSDOus6szrjOtSDOtc+AzrXOvs61z4HOs86xz4POvM6tzr3OvyAiCisjfiAizrHPgc+HzrXOr86/XG4iCisjfiAiICAgICAyMCAgIGNvbmZmICAgICAgICAgICAgIM6Izr7Ov860zr/PgiDOs865zrEgzrrOrM64zrUgzrHPgc+HzrXOr86/IM+Bz4XOuM68zq/Pg861z4nOvVxuIgorI34gIiAgICAyMDAgICBjb25mZmRldGFpbCAgICAgICDOkc69zrHOu8+Fz4TOuc66zq4gzq3Ovs6/zrTOv8+CIM6zzrnOsSDOus6szrjOtSDOsc+Bz4fOtc6vzr8gz4HPhc64zrzOr8+DzrXPic69XG4iCisjfiAiICAgICA0MCAgIGRlcGNvbiAgICAgICAgICAgIM6Vzr7Osc+Bz4TOrs+DzrXOuc+CIM66zrHOuSDOsc+Dz4XOvM6yzrHPhM+Mz4TOt8+EzrXPglxuIgorI34gIiAgICA0MDAgICBkZXBjb25kZXRhaWwgICAgICDOkc69zrHOu8+Fz4TOuc66zq4gzq3Ovs6/zrTOv8+CIM6zzrnOsSDOtc6+zrHPgc+Ezq7Pg861zrnPgi8iCisjfiAizrHPg8+FzrzOss6xz4TPjM+EzrfPhM61z4JcbiIKKyN+ICIgIDEwMDAwICAgdHJpZ2dlcnMgICAgICAgICAgzpXOvc61z4HOs86/z4DOv86vzrfPg863IM66zrHOuSDOtc+AzrXOvs61z4HOs86xz4POr86xIHRyaWdnZXJcbiIKKyN+ICIgIDIwMDAwICAgdHJpZ2dlcnNkZXRhaWwgICAgzpHOvc6xzrvPhc+EzrnOus6uIM6tzr7Ov860zr/PgiDPg8+HzrXPhM65zrrOrCDOvM61IM+Ezr/Phc+CIFxuIgorI34gIiAgNDAwMDAgICB0cmlnZ2Vyc3N0dXBpZCAgICDOpc+AzrXPgc6yzr/Ou865zrrOrCDOsc69zrHOu8+Fz4TOuc66zq4gzq3Ovs6/zrTOv8+CIM+Dz4fOtc+EzrnOus6sIM68zrUgIgorI34gInRyaWdnZXJzXG4iCisjfiAiICAgMTAwMCAgIHZlcnl2ZXJib3NlICAgICAgIM6Rzr3Osc67z4XPhM65zrrOrc+CIM+AzrvOt8+Bzr/Phs6/z4HOr861z4Igz4DPhy4gzrPOuc6xIM+Ezr/OvSDOus6xz4TOrM67zr/Os86/ICIKKyN+ICJkcGtnL2luZm9cbiIKKyN+ICIgICAyMDAwICAgc3R1cGlkbHl2ZXJib3NlICAgzpXOvs+Jz4bPgc61zr3Ouc66zqwgz4DOv867zrvOrc+CIM+AzrvOt8+Bzr/Phs6/z4HOr861z4JcbiIKKyN+ICJcbiIKKyN+ICLOn865IM61z4DOuc67zr/Os86tz4IgzrXOus+Dz4bOsc67zrzOrM+Ez4nPg863z4IgzrzPgM6/z4HOv8+Nzr0gzr3OsSDPg8+Fzr3OtM+FzrHPg8+Ezr/Pjc69IM68zrUgz4fPgc6uz4POt863IM+Ezr/PhSBiaXR3aXNlLSIKKyN+ICJvci5cbiIKKyN+ICLOo863zrzOtc65z47Pg8+EzrUgz4zPhM65IM6/zrkgzrXOvs63zrPOrs+DzrXOuc+CIM66zrHOuSDOv865IM+EzrnOvM6tz4Igz4XPgM+MzrrOtc65zr3PhM6xzrkgz4POtSDOsc67zrvOsc6zzq3Pgi5cbiIKKworIywgZnV6enkKKyN+fCBtc2dpZCAiIgorI358ICIlcyBmb3JjaW5nIG9wdGlvbnMgLSBjb250cm9sIGJlaGF2aW91ciB3aGVuIHByb2JsZW1zIGZvdW5kOlxuIgorI358ICIgIHdhcm4gYnV0IGNvbnRpbnVlOiAgLS1mb3JjZS08dGhpbmc+LDx0aGluZz4sLi4uXG4iCisjfnwgIiAgc3RvcCB3aXRoIGVycm9yOiAgICAtLXJlZnVzZS08dGhpbmc+LDx0aGluZz4sLi4uIHwgLS1uby1mb3JjZS0iCisjfnwgIjx0aGluZz4sLi4uXG4iCisjfnwgIiBGb3JjaW5nIHRoaW5nczpcbiIKKyN+fCAiICBhbGwgWyFdICAgICAgICAgICAgICAgIFNldCBhbGwgZm9yY2Ugb3B0aW9uc1xuIgorI358ICIgIGRvd25ncmFkZSBbKl0gICAgICAgICAgUmVwbGFjZSBhIHBhY2thZ2Ugd2l0aCBhIGxvd2VyIHZlcnNpb25cbiIKKyN+fCAiICBjb25maWd1cmUtYW55ICAgICAgICAgIENvbmZpZ3VyZSBhbnkgcGFja2FnZSB3aGljaCBtYXkgaGVscCB0aGlzIG9uZVxuIgorI358ICIgIGhvbGQgICAgICAgICAgICAgICAgICAgUHJvY2VzcyBpbmNpZGVudGFsIHBhY2thZ2VzIGV2ZW4gd2hlbiBvbiBob2xkXG4iCisjfnwgIiAgYmFkLXBhdGggICAgICAgICAgICAgICBQQVRIIGlzIG1pc3NpbmcgaW1wb3J0YW50IHByb2dyYW1zLCBwcm9ibGVtcyAiCisjfnwgImxpa2VseVxuIgorI358ICIgIG5vdC1yb290ICAgICAgICAgICAgICAgVHJ5IHRvIChkZSlpbnN0YWxsIHRoaW5ncyBldmVuIHdoZW4gbm90IHJvb3RcbiIKKyN+fCAiICBvdmVyd3JpdGUgICAgICAgICAgICAgIE92ZXJ3cml0ZSBhIGZpbGUgZnJvbSBvbmUgcGFja2FnZSB3aXRoIGFub3RoZXJcbiIKKyN+fCAiICBvdmVyd3JpdGUtZGl2ZXJ0ZWQgICAgIE92ZXJ3cml0ZSBhIGRpdmVydGVkIGZpbGUgd2l0aCBhbiB1bmRpdmVydGVkICIKKyN+fCAidmVyc2lvblxuIgorI358ICIgIGJhZC12ZXJpZnkgICAgICAgICAgICAgSW5zdGFsbCBhIHBhY2thZ2UgZXZlbiBpZiBpdCBmYWlscyBhdXRoZW50aWNpdHkgIgorI358ICJjaGVja1xuIgorI358ICIgIGRlcGVuZHMtdmVyc2lvbiBbIV0gICAgVHVybiBkZXBlbmRlbmN5IHZlcnNpb24gcHJvYmxlbXMgaW50byB3YXJuaW5nc1xuIgorI358ICIgIGRlcGVuZHMgWyFdICAgICAgICAgICAgVHVybiBhbGwgZGVwZW5kZW5jeSBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzXG4iCisjfnwgIiAgY29uZm5ldyBbIV0gICAgICAgICAgICBBbHdheXMgdXNlIHRoZSBuZXcgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHRcbiIKKyN+fCAiICBjb25mb2xkIFshXSAgICAgICAgICAgIEFsd2F5cyB1c2UgdGhlIG9sZCBjb25maWcgZmlsZXMsIGRvbid0IHByb21wdFxuIgorI358ICIgIGNvbmZkZWYgWyFdICAgICAgICAgICAgVXNlIHRoZSBkZWZhdWx0IG9wdGlvbiBmb3IgbmV3IGNvbmZpZyBmaWxlcyBpZiAiCisjfnwgIm9uZVxuIgorI358ICIgICAgICAgICAgICAgICAgICAgICAgICAgaXMgYXZhaWxhYmxlLCBkb24ndCBwcm9tcHQuIElmIG5vIGRlZmF1bHQgY2FuICIKKyN+fCAiYmUgZm91bmQsXG4iCisjfnwgIiAgICAgICAgICAgICAgICAgICAgICAgICB5b3Ugd2lsbCBiZSBwcm9tcHRlZCB1bmxlc3Mgb25lIG9mIHRoZSBjb25mb2xkICIKKyN+fCAib3JcbiIKKyN+fCAiICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmZuZXcgb3B0aW9ucyBpcyBhbHNvIGdpdmVuXG4iCisjfnwgIiAgY29uZm1pc3MgWyFdICAgICAgICAgICBBbHdheXMgaW5zdGFsbCBtaXNzaW5nIGNvbmZpZyBmaWxlc1xuIgorI358ICIgIGJyZWFrcyBbIV0gICAgICAgICAgICAgSW5zdGFsbCBldmVuIGlmIGl0IHdvdWxkIGJyZWFrIGFub3RoZXIgcGFja2FnZVxuIgorI358ICIgIGNvbmZsaWN0cyBbIV0gICAgICAgICAgQWxsb3cgaW5zdGFsbGF0aW9uIG9mIGNvbmZsaWN0aW5nIHBhY2thZ2VzXG4iCisjfnwgIiAgYXJjaGl0ZWN0dXJlIFshXSAgICAgICBQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyBhcmNoaXRlY3R1cmVcbiIKKyN+fCAiICBvdmVyd3JpdGUtZGlyIFshXSAgICAgIE92ZXJ3cml0ZSBvbmUgcGFja2FnZSdzIGRpcmVjdG9yeSB3aXRoICIKKyN+fCAiYW5vdGhlcidzIGZpbGVcbiIKKyN+fCAiICByZW1vdmUtcmVpbnN0cmVxIFshXSAgIFJlbW92ZSBwYWNrYWdlcyB3aGljaCByZXF1aXJlIGluc3RhbGxhdGlvblxuIgorI358ICIgIHJlbW92ZS1lc3NlbnRpYWwgWyFdICAgUmVtb3ZlIGFuIGVzc2VudGlhbCBwYWNrYWdlXG4iCisjfnwgIlxuIgorI358ICJXQVJOSU5HIC0gdXNlIG9mIG9wdGlvbnMgbWFya2VkIFshXSBjYW4gc2VyaW91c2x5IGRhbWFnZSB5b3VyICIKKyN+fCAiaW5zdGFsbGF0aW9uLlxuIgorI358ICJGb3JjaW5nIG9wdGlvbnMgbWFya2VkIFsqXSBhcmUgZW5hYmxlZCBieSBkZWZhdWx0LlxuIgorI34gbXNnaWQgIiIKKyN+ICIlcyBmb3JjaW5nIG9wdGlvbnMgLSBjb250cm9sIGJlaGF2aW91ciB3aGVuIHByb2JsZW1zIGZvdW5kOlxuIgorI34gIiAgd2FybiBidXQgY29udGludWU6ICAtLWZvcmNlLTx0aGluZz4sPHRoaW5nPiwuLi5cbiIKKyN+ICIgIHN0b3Agd2l0aCBlcnJvcjogICAgLS1yZWZ1c2UtPHRoaW5nPiw8dGhpbmc+LC4uLiB8IC0tbm8tZm9yY2UtIgorI34gIjx0aGluZz4sLi4uXG4iCisjfiAiIEZvcmNpbmcgdGhpbmdzOlxuIgorI34gIiAgYWxsIFshXSAgICAgICAgICAgICAgICBTZXQgYWxsIGZvcmNlIG9wdGlvbnNcbiIKKyN+ICIgIGRvd25ncmFkZSBbKl0gICAgICAgICAgUmVwbGFjZSBhIHBhY2thZ2Ugd2l0aCBhIGxvd2VyIHZlcnNpb25cbiIKKyN+ICIgIGNvbmZpZ3VyZS1hbnkgICAgICAgICAgQ29uZmlndXJlIGFueSBwYWNrYWdlIHdoaWNoIG1heSBoZWxwIHRoaXMgb25lXG4iCisjfiAiICBob2xkICAgICAgICAgICAgICAgICAgIFByb2Nlc3MgaW5jaWRlbnRhbCBwYWNrYWdlcyBldmVuIHdoZW4gb24gaG9sZFxuIgorI34gIiAgYmFkLXBhdGggICAgICAgICAgICAgICBQQVRIIGlzIG1pc3NpbmcgaW1wb3J0YW50IHByb2dyYW1zLCBwcm9ibGVtcyAiCisjfiAibGlrZWx5XG4iCisjfiAiICBub3Qtcm9vdCAgICAgICAgICAgICAgIFRyeSB0byAoZGUpaW5zdGFsbCB0aGluZ3MgZXZlbiB3aGVuIG5vdCByb290XG4iCisjfiAiICBvdmVyd3JpdGUgICAgICAgICAgICAgIE92ZXJ3cml0ZSBhIGZpbGUgZnJvbSBvbmUgcGFja2FnZSB3aXRoIGFub3RoZXJcbiIKKyN+ICIgIG92ZXJ3cml0ZS1kaXZlcnRlZCAgICAgT3ZlcndyaXRlIGEgZGl2ZXJ0ZWQgZmlsZSB3aXRoIGFuIHVuZGl2ZXJ0ZWQgIgorI34gInZlcnNpb25cbiIKKyN+ICIgIGJhZC12ZXJpZnkgICAgICAgICAgICAgSW5zdGFsbCBhIHBhY2thZ2UgZXZlbiBpZiBpdCBmYWlscyBhdXRoZW50aWNpdHkgIgorI34gImNoZWNrXG4iCisjfiAiICBkZXBlbmRzLXZlcnNpb24gWyFdICAgIFR1cm4gZGVwZW5kZW5jeSB2ZXJzaW9uIHByb2JsZW1zIGludG8gd2FybmluZ3NcbiIKKyN+ICIgIGRlcGVuZHMgWyFdICAgICAgICAgICAgVHVybiBhbGwgZGVwZW5kZW5jeSBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzXG4iCisjfiAiICBjb25mbmV3IFshXSAgICAgICAgICAgIEFsd2F5cyB1c2UgdGhlIG5ldyBjb25maWcgZmlsZXMsIGRvbid0IHByb21wdFxuIgorI34gIiAgY29uZm9sZCBbIV0gICAgICAgICAgICBBbHdheXMgdXNlIHRoZSBvbGQgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHRcbiIKKyN+ICIgIGNvbmZkZWYgWyFdICAgICAgICAgICAgVXNlIHRoZSBkZWZhdWx0IG9wdGlvbiBmb3IgbmV3IGNvbmZpZyBmaWxlcyBpZiAiCisjfiAib25lXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIGlzIGF2YWlsYWJsZSwgZG9uJ3QgcHJvbXB0LiBJZiBubyBkZWZhdWx0IGNhbiBiZSAiCisjfiAiZm91bmQsXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIHlvdSB3aWxsIGJlIHByb21wdGVkIHVubGVzcyBvbmUgb2YgdGhlIGNvbmZvbGQgIgorI34gIm9yXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmZuZXcgb3B0aW9ucyBpcyBhbHNvIGdpdmVuXG4iCisjfiAiICBjb25mbWlzcyBbIV0gICAgICAgICAgIEFsd2F5cyBpbnN0YWxsIG1pc3NpbmcgY29uZmlnIGZpbGVzXG4iCisjfiAiICBjb25mYXNrIFshXSAgICAgICAgICAgIE9mZmVyIHRvIHJlcGxhY2UgY29uZmlnIGZpbGVzIHdpdGggbm8gbmV3ICIKKyN+ICJ2ZXJzaW9uc1xuIgorI34gIiAgYnJlYWtzIFshXSAgICAgICAgICAgICBJbnN0YWxsIGV2ZW4gaWYgaXQgd291bGQgYnJlYWsgYW5vdGhlciBwYWNrYWdlXG4iCisjfiAiICBjb25mbGljdHMgWyFdICAgICAgICAgIEFsbG93IGluc3RhbGxhdGlvbiBvZiBjb25mbGljdGluZyBwYWNrYWdlc1xuIgorI34gIiAgYXJjaGl0ZWN0dXJlIFshXSAgICAgICBQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyBhcmNoaXRlY3R1cmVcbiIKKyN+ICIgIG92ZXJ3cml0ZS1kaXIgWyFdICAgICAgT3ZlcndyaXRlIG9uZSBwYWNrYWdlJ3MgZGlyZWN0b3J5IHdpdGggYW5vdGhlcidzICIKKyN+ICJmaWxlXG4iCisjfiAiICB1bnNhZmUtaW8gWyFdICAgICAgICAgIERvIG5vdCBwZXJmb3JtIHNhZmUgSS9PIG9wZXJhdGlvbnMgd2hlbiAiCisjfiAidW5wYWNraW5nXG4iCisjfiAiICByZW1vdmUtcmVpbnN0cmVxIFshXSAgIFJlbW92ZSBwYWNrYWdlcyB3aGljaCByZXF1aXJlIGluc3RhbGxhdGlvblxuIgorI34gIiAgcmVtb3ZlLWVzc2VudGlhbCBbIV0gICBSZW1vdmUgYW4gZXNzZW50aWFsIHBhY2thZ2VcbiIKKyN+ICJcbiIKKyN+ICJXQVJOSU5HIC0gdXNlIG9mIG9wdGlvbnMgbWFya2VkIFshXSBjYW4gc2VyaW91c2x5IGRhbWFnZSB5b3VyICIKKyN+ICJpbnN0YWxsYXRpb24uXG4iCisjfiAiRm9yY2luZyBvcHRpb25zIG1hcmtlZCBbKl0gYXJlIGVuYWJsZWQgYnkgZGVmYXVsdC5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIiVzIM61z4DOuc67zr/Os86tz4IgzrXOvs6xzr3Osc6zzrrOsc+DzrzOv8+NIC0gzq3Ou861zrPPh86/z4IgzrvOtc65z4TOv8+Fz4HOs86vzrHPgiDPjM+EzrHOvSDPgM+Bzr/Ous+Nz4DPhM6/z4XOvSAiCisjfiAiz4DPgc6/zrLOu86uzrzOsc+EzrE6XG4iCisjfiAiICDPg8+Fzr3Orc+HzrXOuc6xIM68zrUgz4DPgc6/zrXOuc60zr/PgM6/zq/Ot8+Dzrc6ICAtLWZvcmNlLTx0aGluZz4sPHRoaW5nPiwuLi5cbiIKKyN+ICIgIM+EzrXPgc68zrHPhM65z4POvM+Mz4IgzrzOtSDPg8+GzqzOu868zrE6ICAgICAgLS1yZWZ1c2UtPHRoaW5nPiw8dGhpbmc+LC4uLiB8IC0tbm8tZm9yY2UtIgorI34gIjx0aGluZz4sLi4uXG4iCisjfiAiIM6Vz4DOuc67zr/Os86tz4IgzrXOvs6xzr3Osc6zzrrOsc+DzrzOv8+NIDpcbiIKKyN+ICIgIGFsbCAgICAgICAgICAgICAgICAgICAgzpXOvc61z4HOs86/z4DOv86vzrfPg863IM+MzrvPic69IM+Ez4nOvSDOtc+AzrnOu86/zrPPjs69IM61zr7Osc69zrHOs866zrHPg868zr/PjVxuIgorI34gIiAgZG93bmdyYWRlIFsqXSAgICAgICAgICDOkc69z4TOuc66zrHPhM6sz4PPhM6xz4POtyDPgM6xzrrOrc+Ezr/PhSDOvM61IM68zrnOus+Bz4zPhM61z4HOtyDOrc66zrTOv8+DzrdcbiIKKyN+ICIgIGNvbmZpZ3VyZS1hbnkgICAgICAgICAgzqHPjc64zrzOuc+DzrcgzrrOrM64zrUgz4DOsc66zq3PhM6/z4Ugz4DOv8+FIM+AzrnOuM6xzr3PjM69IM69zrEgzrLOv863zrjOrs+DzrXOuSAiCisjfiAizrHPhc+Ez4wgz4TOvyDPgM6xzrrOrc+Ezr9cbiIKKyN+ICIgIGhvbGQgICAgICAgICAgICAgICAgICAgzpXPgM61zr7Otc+BzrPOsc+Dzq/OsSDPhM+Jzr0gz4PPh861z4TOuc66z47OvSDPgM6xzrrOrc+Ez4nOvSDOsc66z4zOvM63IM66zrHOuSDOtc6vzr3Osc65ICIKKyN+ICLPg861IM6xzr3Osc68zr/Ovc6uXG4iCisjfiAiICBiYWQtcGF0aCAgICAgICAgICAgICAgIM67zrXOr8+Azr/Phc69IM+DzrfOvM6xzr3PhM65zrrOrCDPgM+Bzr/Os8+BzqzOvM68zrHPhM6xIM6xz4DPjCDPhM63IM60zrnOsc60z4HOv868zq4gIgorI34gIlBBVEgsIM+AzrnOuM6xzr3OrCDPgM+Bzr/Oss67zq7OvM6xz4TOsVxuIgorI34gIiAgbm90LXJvb3QgICAgICAgICAgICAgICDOoM+Bzr/Pg8+AzqzOuM61zrnOsSAozrHPgCnOtc6zzrrOsc+EzqzPg8+EzrHPg863z4IgzrHOus+MzrzOtyDOus6xzrkgzrHOvSDOtM61zr0gIgorI34gIs61zq/OvM6xzrkgcm9vdFxuIgorI34gIiAgb3ZlcndyaXRlICAgICAgICAgICAgICDOpc+AzrXPgc61zrPOs8+BzrHPhs6uIM61zr3PjM+CIM6xz4HPh861zq/Ov8+FIM6xz4DPjCDOrc69zrEgz4DOsc66zq3PhM6/IM68zrUgIgorI34gIs66zqzPgM6/zrnOvyDOrM67zrvOv1xuIgorI34gIiAgb3ZlcndyaXRlLWRpdmVydGVkICAgICDOpc+AzrXPgc61zrPOs8+BzrHPhs6uIM68zrnOsc+CIM61zrrPhM+Bzr/PgM6uz4IgzrHPgc+HzrXOr86/z4UgzrHPgM+MIM68zrnOsSDOrc66zrTOv8+DzrcgIgorI34gIs+Hz4nPgc6vz4IgzrXOus+Ez4HOv8+Azq5cbiIKKyN+ICIgIGJhZC12ZXJpZnkgICAgICAgICAgICAgzpXOs866zrHPhM6sz4PPhM6xz4POtyDOtc69z4zPgiDPgM6xzrrOrc+Ezr/PhSDOsc66z4zOvM6xIM66zrkgzrHOvSDOtM61zr0gzq3Ph861zrkgIgorI34gIs6xz4XOuM61zr3PhM65zrrOv8+Azr/Ouc63zrjOtc6vXG4iCisjfiAiICBkZXBlbmRzLXZlcnNpb24gWyFdICAgIM6czrXPhM6xz4TPgc6/z4DOriDPgM+Bzr/Oss67zrfOvM6sz4TPic69IM61zr7Osc+Bz4TOrs+DzrXPic69IM61zrrOtM+Mz4POtc+Jzr0gz4POtSAiCisjfiAiz4DPgc6/zrXOuc60zr/PgM6/zrnOrs+DzrXOuc+CXG4iCisjfiAiICBkZXBlbmRzIFshXSAgICAgICAgICAgIM6czrXPhM6xz4TPgc6/z4DOriDPjM67z4nOvSDPhM+Jzr0gz4DPgc6/zrLOu863zrzOrM+Ez4nOvSDOtc6+zrHPgc+Ezq7Pg861z4nOvSDPg861ICIKKyN+ICLPgM+Bzr/Otc65zrTOv8+Azr/Ouc6uz4POtc65z4JcbiIKKyN+ICIgIGNvbmZuZXcgWyFdICAgICAgICAgICAgzqDOrM69z4TOsSDPh8+Bzq7Pg863IM+Ez4nOvSDOvc6tz4nOvSDOsc+Bz4fOtc6vz4nOvSDPgc+FzrjOvM6vz4POtc+Jzr0sIM+Hz4nPgc6vz4IgIgorI34gIs+Az4HOv8+Ez4HOv8+Azq5cbiIKKyN+ICIgIGNvbmZvbGQgWyFdICAgICAgICAgICAgzqDOrM69z4TOsSDPh8+Bzq7Pg863IM+Ez4nOvSDPgM6xzrvOuc+Ozr0gzrHPgc+HzrXOr8+Jzr0gz4HPhc64zrzOr8+DzrXPic69LCDPh8+Jz4HOr8+CICIKKyN+ICLPgM+Bzr/PhM+Bzr/PgM6uXG4iCisjfiAiICBjb25mZGVmIFshXSAgICAgICAgICAgIM6nz4HOrs+Dzrcgz4TOt8+CIM+Az4HOv866zrHOuM6/z4HOuc+DzrzOrc69zrfPgiDOtc+AzrnOu86/zrPOrs+CIM6zzrnOsSDPhM6xIM69zq3OsSAiCisjfiAizrHPgc+HzrXOr86xXG4iCisjfiAiYCAgICAgICAgICAgICAgICAgICAgICAgICDPgc+FzrjOvM6vz4POtc+Jzr0gz4XPgM6sz4HPh861zrkgzrzOuc6xIM+Ezq3PhM6/zrnOsSDOtM65zrHOuM6tz4POuc68zrcsIM+Hz4nPgc6vz4IgIgorI34gIs+Az4HOv8+Ez4HOv8+Azq4uXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIM6Rzr0gzrTOtc69IM68z4DOv8+BzrXOryDOvc6xIM6yz4HOtc64zrXOryDPgM+Bzr/Ous6xzrjOv8+BzrnPg868zq3Ovc63IM61z4DOuc67zr/Os86uLCAiCisjfiAizrjOsVxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICDOtc+Bz4nPhM63zrjOtc6vz4TOtSDOtc66z4TPjM+CIM6xzr0gzq3Ph861zrkgzrTOv864zrXOryDOrs60zrcgzrzOr86xIM6xz4DPjCDPhM65z4IgIgorI34gIs61z4DOuc67zr/Os86tz4JcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgY29uZm9sZCDOriBjb25mbmV3XG4iCisjfiAiICBjb25mbWlzcyBbIV0gICAgICAgICAgIM6VzrPOus6xz4TOrM+Dz4TOsc+Dzrcgz4DOrM69z4TOsSDPhM+Jzr0gzrHPgc+HzrXOr8+Jzr0gz4HPhc64zrzOr8+DzrXPic69IM+Azr/PhSAiCisjfiAizrvOtc6vz4DOv8+Fzr1cbiIKKyN+ICIgIGJyZWFrcyBbIV0gICAgICAgICAgICAgzpXOs866zrHPhM6sz4PPhM6xz4POtyDOsc66z4zOvM6xIM66zrkgzrHOvSDOsc+Fz4TPjCBcIs+Dz4DOrM61zrlcIiDOus6sz4DOv865zr8gIgorI34gIs6szrvOu86/IM+AzrHOus6tz4TOv1xuIgorI34gIiAgY29uZmxpY3RzIFshXSAgICAgICAgICDOnc6xIM61z4DOuc+Ez4HOrc+AzrXPhM6xzrkgzrcgzrXOs866zrHPhM6sz4PPhM6xz4POtyDOsc67zrvOt867zr/Pg8+FzrPOus+Bzr/Phc+MzrzOtc69z4nOvSAiCisjfiAiz4DOsc66zq3PhM+Jzr1cbiIKKyN+ICIgIGFyY2hpdGVjdHVyZSBbIV0gICAgICAgzpXPgM61zr7Otc+BzrPOsc+Dzq/OsSDPgM6xzrrOrc+Ez4nOvSDOsc66z4zOvM63IM66zrHOuSDOvM61IM+EzrfOvSDOu86szrjOv8+CICIKKyN+ICLOsc+Bz4fOuc+EzrXOus+Ezr/Ovc65zrrOrlxuIgorI34gIiAgb3ZlcndyaXRlLWRpciBbIV0gICAgICDOpc+AzrXPgc61zrPOs8+BzrHPhs6uIM61zr3PjM+CIM66zrHPhM6xzrvPjM6zzr/PhSDOtc69z4zPgiDPgM6xzrrOrc+Ezr/PhSDOvM61IM+Ezr8gIgorI34gIs6xz4HPh861zq/OvyDOus6sz4DOv865zr/PhSDOrM67zrvOv8+FXG4iCisjfiAiICByZW1vdmUtcmVpbnN0cmVxIFshXSAgIM6Rz4bOsc6vz4HOtc+Dzrcgz4DOsc66zq3PhM+Jzr0gz4DOv8+FIM6xz4DOsc65z4TOv8+Nzr0gzrXOs866zrHPhM6sz4PPhM6xz4POt1xuIgorI34gIiAgcmVtb3ZlLWVzc2VudGlhbCBbIV0gICDOkc+GzrHOr8+BzrXPg863IM61zr3PjM+CIM6xz4DOsc+BzrHOuc+Ezq7PhM6/z4Ugz4DOsc66zq3PhM6/z4VcbiIKKyN+ICJcbiIKKyN+ICLOoM6hzp/Olc6ZzpTOn86gzp/Omc6XzqPOlyAtIM+Hz4HOrs+Dzrcgz4TPic69IM61z4DOuc67zr/Os8+Ozr0gzrzOtSDPg86uzrzOsc69z4POtyBbIV0gzrzPgM6/z4HOtc6vIM69zrEgz4DPgc6/zrrOsc67zq3Pg861zrkgIgorI34gIs+Dzr/Oss6xz4HOriDOts63zrzOuc6sIM+Dz4TOt869IM61zrPOus6xz4TOrM+Dz4TOsc+Dzq4gz4POsc+CLlxuIgorI34gIs6fzrkgzrXPgM65zrvOv86zzq3PgiDOtc6+zrHOvc6xzrPOus6xz4POvM6/z40gzrzOtSDPg86uzrzOsc69z4POtyBbKl0gzrXOr869zrHOuSDOtc6+JyDOv8+BzrnPg868zr/PjSAiCisjfiAizrXOvc61z4HOs86/z4DOv865zrfOvM6tzr3Otc+CLlxuIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgZHBrZy1zcGxpdCB0byBzZWUgaWYgaXQncyBwYXJ0IG9mIGEgbXVsdGlwYXJ0ZXIiCisjfiBtc2dzdHIgIiIKKyN+ICLOsc60z43Ovc6xz4TOtyDOtyDOtc66z4TOrc67zrXPg863IM+Ezr/PhSBkcGtnLXNwbGl0IM6zzrnOsSDOrc67zrXOs8+Hzr8gzrHOvSDOtc6vzr3Osc65IM+EzrzOrs68zrEgzrXOvc+Mz4IgIgorI34gIs+Azr/Ou8+Fz4TOvM63zrzOsc+EzrnOus6/z40gz4DOsc66zq3PhM6/z4UiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlY2wgZGVic2lnLXZlcmlmeSIKKyN+IG1zZ3N0ciAizrHOtM+Nzr3Osc+EzrcgzrcgzrXOus+Ezq3Ou861z4POtyDOvM61IGV4ZWNsIM+Ezr/PhSBkZWJzaWctdmVyaWZ5IgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgZHBrZy1kZWIgdG8gZXh0cmFjdCBjb250cm9sIGluZm9ybWF0aW9uIgorI34gbXNnc3RyICLOsc+Azq3PhM+Fz4fOtSDOtyDOtc66z4TOrc67zrXPg863IM+Ezr/PhSBkcGtnLWRlYiDOs865zrEgzrXOvs6xzrPPic6zzq4gz4DOu863z4HOv8+Gzr/Pgc65z47OvSDOtc67zq3Os8+Hzr/PhSIKKworI34gbXNnaWQgInVuYWJsZSB0byBleGVjIGRwa2ctZGViIHRvIGdldCBmaWxlc3lzdGVtIGFyY2hpdmUiCisjfiBtc2dzdHIgIs6xzrTPjc69zrHPhM63IM63IM61zrrPhM6tzrvOtc+Dzrcgz4TOv8+FIGRwa2ctZGViIM6zzrnOsSDPhM63IM67zq7PiM63IM+EzrfPgiDOsc+Bz4fOtc65zr/OuM6uzrrOt8+CIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSBkaXNhcHBlYXJpbmcgY29udHJvbCBpbmZvIGZpbGUgYCUuMjUwcyciCisjfiBtc2dzdHIgIs6xzrTPjc69zrHPhM63IM63IM60zrnOsc6zz4HOsc+Gzq4gz4TOv8+FIM+Az4HOv8+CIM61zr7Osc+GzqzOvc65z4POtyDOsc+Bz4fOtc6vzr/PhSDOtc67zq3Os8+Hzr/PhSBgJS4yNTBzJyIKKworI34gbXNnaWQgImRwa2c6ICVzIG5vdCBmb3VuZC5cbiIKKyN+IG1zZ3N0ciAiZHBrZzogzqTOvyAlcyDOtM61IM6yz4HOrc64zrfOus61LlxuIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIC4uLi9ERUJJQU4iCisjfiBtc2dzdHIgIs6xz4DOv8+Ez4XPh86vzrEgzrHOu867zrHOs86uz4IgzrrOsc+EzrHOu8+MzrPOv8+FIChjaGRpcikgz4PPhM6/IC4uLi9ERUJJQU4iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyB0YXIgLWNmIgorI34gbXNnc3RyICLOsc+Azq3PhM+Fz4fOtSDOtyDOtc66z4TOrc67zrXPg863IM+EzrfPgiDOtc69z4TOv867zq7PgiB0YXIgLWNmIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIG1ha2UgdG1wZmlsZSAoY29udHJvbCkiCisjfiBtc2dzdHIgIs6xz4DOrc+Ez4XPh861IM63IM60zrfOvM65zr/Phc+BzrPOr86xIM+Ezr/PhSDPgM+Bzr/Pg8+Jz4HOuc69zr/PjSDOsc+Bz4fOtc6vzr/PhSB0bXBmaWxlIChjb250cm9sKSIKKworI34gbXNnaWQgImZhaWxlZCB0byB1bmxpbmsgdG1wZmlsZSAoY29udHJvbCksICVzIgorI34gbXNnc3RyICLOsc+Azq3PhM+Fz4fOtSDOtyDOtM65zrHOs8+BzrHPhs6uIM+Ezr/PhSDPgM+Bzr/Pg8+Jz4HOuc69zr/PjSDOsc+Bz4fOtc6vzr/PhSB0bXBmaWxlIChjb250cm9sKSwgJXMiCisKKyN+IG1zZ2lkICJjb250cm9sIgorI34gbXNnc3RyICLOrc67zrXOs8+Hzr/PgiIKKworI34gbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdG1wZmlsZSAoY29udHJvbCkiCisjfiBtc2dzdHIgIiIKKyN+ICLOsc+Azq3PhM+Fz4fOtSDOtyDOtc+AzrHOvc6xz4bOv8+Bzqwgz4PPhM63zr0gzrHPgc+Hzq4gz4PPhM6/IM+Az4HOv8+Dz4nPgc65zr3PjCDOsc+Bz4fOtc6vzr8gdG1wZmlsZSAoY29udHJvbCkiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZnN0YXQgdG1wZmlsZSAoY29udHJvbCkiCisjfiBtc2dzdHIgIs6xz4DOrc+Ez4XPh861IM63IGZzdGF0IM+Dz4TOvyDPgM+Bzr/Pg8+Jz4HOuc69z4wgzrHPgc+HzrXOr86/IHRtcGZpbGUgKGNvbnRyb2wpIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgZmluZCIKKyN+IG1zZ3N0ciAizrHPgM6tz4TPhc+HzrUgzrcgzrXOus+Ezq3Ou861z4POtyDPhM63z4IgZmluZCIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIHNoIC1jIG12IGZvby8qICZjIgorI34gbXNnc3RyICLOsc+Azq3PhM+Fz4fOtSDOtyDOtc66z4TOrc67zrXPg863IM+EzrfPgiBzaCAtYyBtdiBmb28vKiAmYyIKKworI34gbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtICUuMjUwcyBsZW5ndGggY29udGFpbnMgbnVsbHMiCisjfiBtc2dzdHIgIiIKKyN+ICLPhM6/IM6xz4HPh861zq/OvyBgJS4yNTBzJyDOtc6vzr3Osc65IM66zrHPhM61z4PPhM+BzrHOvM68zq3Ovc6/IC0gz4TOvyAlLjI1MHMgzrzOrs66zr/PgiDPgM61z4HOuc6tz4fOtc65IM68zrfOtM61zr3Ouc66zqwiCisKKyN+IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBuZWdhdGl2ZSBtZW1iZXIgbGVuZ3RoICV6aSIKKyN+IG1zZ3N0ciAiIgorI34gIs+Ezr8gzrHPgc+HzrXOr86/IGAlLjI1MHMnIM61zq/Ovc6xzrkgzrrOsc+EzrXPg8+Ez4HOsc68zrzOrc69zr8gLSDOsc+Bzr3Ot8+EzrnOus+MIM68zq7Ous6/z4Igz4TOv8+FIM68zq3Ou86/z4XPgiAlemkiCisKKyN+IG1zZ2lkICJmYWlsZWQgZ2V0dGluZyB0aGUgY3VycmVudCBmaWxlIHBvc2l0aW9uIgorI34gbXNnc3RyICLOsc+Azr/PhM+Fz4fOr86xIM67zq7PiM63z4Igz4TOt8+CIM64zq3Pg863z4Igz4TOv8+FIM+AzrHPgc+Mzr3PhM6/z4IgzrHPgc+HzrXOr86/z4UiCisKKyN+IG1zZ2lkICJmYWlsZWQgc2V0dGluZyB0aGUgY3VycmVudCBmaWxlIHBvc2l0aW9uIgorI34gbXNnc3RyICLOsc+Azr/PhM+Fz4fOr86xIM66zrHOuM6/z4HOuc+DzrzOv8+NIM+EzrfPgiDOuM6tz4POt8+CIM+Ezr/PhSDPgM6xz4HPjM69z4TOv8+CIM6xz4HPh861zq/Ov8+FIgorCisjfiBtc2dpZCAidmVyc2lvbiBudW1iZXIiCisjfiBtc2dzdHIgIs6xz4HOuc64zrzPjM+CIM6tzrrOtM6/z4POt8+CIgorCisjfiBtc2dpZCAiaGVhZGVyIGluZm8gbWVtYmVyIgorI34gbXNnc3RyICLOvM6tzrvOv8+CIM+AzrvOt8+Bzr/Phs6/z4HOuc+Ozr0gzrrOtc+GzrHOu86vzrTOsc+CIgorCisjLCBmdXp6eQorI358IG1zZ2lkICJza2lwcGVkIG1lbWJlciBkYXRhIGZyb20gJXMiCisjfiBtc2dpZCAic2tpcHBlZCBjb250cm9sIGFyZWEgZnJvbSAlcyIKKyN+IG1zZ3N0ciAiz4DOsc+BzrHOu861zq/Phs64zrfOus61IM68zq3Ou86/z4IgzrTOtc60zr/OvM6tzr3Pic69IM6xz4DPjCAlcyIKKworIywgZnV6enkKKyN+IG1zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHRlbXBvcmFyeSBkaXJlY3RvcnkiCisjfiBtc2dzdHIgIs6xz4DOrc+Ez4XPh861IM63IM60zrfOvM65zr/Phc+BzrPOr86xIM6/zr3PjM68zrHPhM6/z4Igz4DPgc6/z4PPic+BzrnOvc6/z40gzrrOsc+EzrHOu8+MzrPOv8+FICIKKworI34gbXNnaWQgImluZm9fc3BldyIKKyN+IG1zZ3N0ciAiaW5mb19zcGV3IgorCisjLCBmdXp6eQorI358IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBkcGtnLWRlYiB0byBleHRyYWN0IGNvbnRyb2wgaW5mb3JtYXRpb24iCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgZHBrZy1kZWIgdG8gZXh0cmFjdCBmaWVsZCB2YWx1ZSIKKyN+IG1zZ3N0ciAizrHPgM6tz4TPhc+HzrUgzrcgzrXOus+Ezq3Ou861z4POtyDPhM6/z4UgZHBrZy1kZWIgzrPOuc6xIM61zr7Osc6zz4nOs86uIM+AzrvOt8+Bzr/Phs6/z4HOuc+Ozr0gzrXOu86tzrPPh86/z4UiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgJXM6ICVzIgorI34gbXNnaWQgInVuYWJsZSB0byBzdGF0ICVzOiAlcyIKKyN+IG1zZ3N0ciAizrXOsc60z43Ovc6xz4TOtyDOtyDOtM63zrzOuc6/z4XPgc6zzq/OsSDPhM6/z4UgJXM6ICVzIgorCisjfiBtc2dpZCAic2xhdmUgbmFtZSAlcyBkdXBsaWNhdGVkIgorI34gbXNnc3RyICLOtc+AzrHOvc6szrvOt8+Izrcgzr/Ovc+MzrzOsc+Ezr/PgiDPhM6/z4UgzrTOtc+Fz4TOtc+BzrXPjc6/zr3PhM6/z4Igz4PPhc69zrTOrc+DzrzOv8+FICVzIgorCisjfiBtc2dpZCAic2xhdmUgbGluayAlcyBkdXBsaWNhdGVkIgorI34gbXNnc3RyICLOtc+AzrHOvc6szrvOt8+IzrcgzrTOtc+Fz4TOtc+BzrXPjc6/zr3PhM6/z4Igz4PPhc69zrTOrc+DzrzOv8+FICVzIgorCisjfiBtc2dpZCAiJWQgcmVxdWVzdGVkIGNvbnRyb2wgY29tcG9uZW50cyBhcmUgbWlzc2luZyIKKyN+IG1zZ3N0ciAizpTOtc69IM+Fz4DOrM+Bz4fOv8+Fzr0gJWQgz4TOvM6uzrzOsc+EzrEgzrXOu86tzrPPh86/z4Ugz4DOv8+FIM62zrfPhM6uzrjOt866zrHOvSIKKworI34gbXNnaWQgImNhdCAoZGF0YSkiCisjfiBtc2dzdHIgImNhdCAozrTOtc60zr/OvM6tzr3OsSkiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gb3BlbiBwaXBlIGRlc2NyaXB0b3IgYDEnIGluIHBhc3RlIgorI34gbXNnc3RyICLOsc+Azr/PhM+Fz4fOr86xIM6xzr3Ov86vzrPOvM6xz4TOv8+CIM+AzrXPgc65zrPPgc6xz4bOrc6xIM+Dz4nOu86uzr3Pic+DzrfPgiBgMScgz4PPhM63zr0gzrXPgM65zrrPjM67zrvOt8+DzrciCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gd3JpdGUgdG8gZ3ppcCAtZGMiCisjfiBtc2dzdHIgIs6xz4DOrc+Ez4XPh861IM63IM61zrPOs8+BzrHPhs6uIM+Dz4TOvyBnemlwIC1kYyIKKworI34gbXNnaWQgImZhaWxlZCB0byBjbG9zZSBnemlwIC1kYyIKKyN+IG1zZ3N0ciAizrHPgM6tz4TPhc+HzrUgz4TOvyDOus67zrXOr8+DzrnOvM6/IM+Ezr/PhSBnemlwIC1kYyIKKworI34gbXNnaWQgImZhaWxlZCB0byBzeXNjYWxsIGxzZWVrIHRvIGZpbGVzIGFyY2hpdmUgcG9ydGlvbiIKKyN+IG1zZ3N0ciAizrHPgM6tz4TPhc+HzrUgzrcgzrrOu86uz4POtyDPg8+Fz4PPhM6uzrzOsc+Ezr/PgiDPhM63z4IgbHNlZWsgz4PPhM63zr0gzrHPgc+HzrXOuc6/zrjOrs66zrciCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gZXhlYyBta3NwbGl0IgorI34gbXNnc3RyICLOsc60z43Ovc6xz4TOtyDOtyDOtc66z4TOrc67zrXPg863IM+EzrfPgiBta3NwbGl0IgorCisjfiBtc2dpZCAiIgorI34gIlxuIgorI34gIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLiIKKyN+IG1zZ3N0ciAiIgorI34gIlxuIgorI34gIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLiIKKworI34gbXNnaWQgInR3byBjb21tYW5kcyBzcGVjaWZpZWQ6ICVzIGFuZCAtLSVzIgorI34gbXNnc3RyICLOrc+Hzr/Phc69IM+Az4HOv8+DzrTOuc6/z4HOuc+Dz4TOtc6vIM60z43OvyDOtc69z4TOv867zq3PgjogJXMgzrrOsc65IC0tJXMiCisKKyN+IG1zZ2lkICItLSVzIG5lZWRzIGEgZGl2ZXJ0LXRvIGFyZ3VtZW50IgorI34gbXNnc3RyICItLSVzIM+Hz4HOtc65zqzOts61z4TOsc65IM6tzr3OsSDPjM+BzrnPg868zrEgZGl2ZXJ0LXRvIgorCisjfiBtc2dpZCAiLS0lcyBuZWVkcyBhIDxwYWNrYWdlPiBhcmd1bWVudCIKKyN+IG1zZ3N0ciAiLS0lcyDPh8+BzrXOuc6szrbOtc+EzrHOuSDOrc69zrEgz4zPgc65z4POvM6xIDxwYWNrYWdlPiIKKworI34gbXNnaWQgImNhbm5vdCBvcGVuIGRpdmVyc2lvbnM6ICVzIgorI34gbXNnc3RyICLOsc60z4XOvc6xzrzOr86xIM6xzr3Ov86vzrPOvM6xz4TOv8+CIM61zrrPhM+Bzr/PgM+Ozr06ICVzIgorCisjfiBtc2dpZCAibWlzc2luZyBhbHRuYW1lIgorI34gbXNnc3RyICLOu861zq/PgM61zrkgYWx0bmFtZSIKKworI34gbXNnaWQgImludGVybmFsIGVycm9yIC0gYmFkIG1vZGUgYCVzJyIKKyN+IG1zZ3N0ciAizrXPg8+Jz4TOtc+BzrnOus+MIM+Dz4bOrM67zrzOsSAtIM6xzrrOsc+EzqzOu867zrfOu86/z4Igz4TPgc+Mz4DOv8+CIGAlcyciCisKKyN+IG1zZ2lkICJjYW5ub3Qgc3RhdCBvbGQgbmFtZSBgJXMnOiAlcyIKKyN+IG1zZ3N0ciAizrHOtM+Fzr3Osc68zq/OsSDPgM+Bzr/Pg860zrnOv8+BzrnPg868zr/PjSDOus6xz4TOrM+Dz4TOsc+DzrfPgiDPhM6/z4Ugz4DOsc67zrnOv8+NIM6/zr3PjM68zrHPhM6/z4IgYCVzJzogJXMiCisKKyN+IG1zZ2lkICJyZW5hbWU6IHJlbmFtZSBgJXMnIHRvIGAlcyc6ICVzIgorI34gbXNnc3RyICJyZW5hbWU6IM68zrXPhM6/zr3Ov868zrHPg86vzrEgz4TOv8+FIGAlcycgz4POtSBgJXMnOiAlcyIKKworI34gbXNnaWQgImNyZWF0ZSBkaXZlcnNpb25zLW5ldzogJXMiCisjfiBtc2dzdHIgIs60zrfOvM65zr/Phc+BzrPOr86xIGRpdmVyc2lvbnMtbmV3OiAlcyIKKworI34gbXNnaWQgIndyaXRlIGRpdmVyc2lvbnMtbmV3OiAlcyIKKyN+IG1zZ3N0ciAizrXOs86zz4HOsc+Gzq4gZGl2ZXJzaW9ucy1uZXc6ICVzIgorCisjfiBtc2dpZCAiY2xvc2UgZGl2ZXJzaW9ucy1uZXc6ICVzIgorI34gbXNnc3RyICLOus67zrXOr8+DzrnOvM6/IGRpdmVyc2lvbnMtbmV3OiAlcyIKKworI34gbXNnaWQgImNyZWF0ZSBuZXcgZGl2ZXJzaW9ucy1vbGQ6ICVzIgorI34gbXNnc3RyICLOtM63zrzOuc6/z4XPgc6zzq/OsSDOvc6tzr/PhSBkaXZlcnNpb25zLW9sZDogJXMiCisKKyN+IG1zZ2lkICJpbnN0YWxsIG5ldyBkaXZlcnNpb25zOiAlcyIKKyN+IG1zZ3N0ciAizrXOs866zrHPhM6sz4PPhM6xz4POtyDOvc6tz4nOvSDOtc66z4TPgc6/z4DPjs69OiAlcyIKKworI34gbXNnaWQgImludGVybmFsIGVycm9yOiAlcyBjb3JydXB0OiAlcyIKKyN+IG1zZ3N0ciAizrXPg8+Jz4TOtc+BzrnOus+MIM+Dz4bOrM67zrzOsTogJXMgY29ycnVwdDogJXMiCisKKyN+IG1zZ2lkICJkcGtnLWRlYiAtIGVycm9yOiAlcyAoYCVzJykgZG9lc24ndCBjb250YWluIGFueSBkaWdpdHNcbiIKKyN+IG1zZ3N0ciAiZHBrZy1kZWIgLSDPg8+GzqzOu868zrE6IM+Ezr8gJXMgKGAlcycpIM60zrXOvSDPgM61z4HOuc6tz4fOtc65IM+IzrfPhs6vzrFcbiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJEZWJpYW4gcmV2aXNpb24iCisjfiBtc2dzdHIgIkRlYmlhbiAlcyDOrc66zrTOv8+DzrcgJXMuXG4iCisKKyN+IG1zZ2lkICIlZCBlcnJvcnMgaW4gY29udHJvbCBmaWxlIgorI34gbXNnc3RyICIlZCDPg8+GzqzOu868zrHPhM6xIM+Dz4TOvyDOsc+Bz4fOtc6vzr8gzrXOu86tzrPPh86/z4UgKGNvbnRyb2wpIgorCisjLCBmdXp6eQorI358IG1zZ2lkICJ1bmFibGUgdG8gcmVhZCAlczogJXMiCisjfiBtc2dpZCAiY2FuJ3QgcmVhZGRpciAlczogJXMiCisjfiBtc2dzdHIgIs6xzrTPjc69zrHPhM63IM63IM6xzr3OrM6zzr3Pic+Dzrcgz4TOv8+FICVzOiAlcyIKKworI34gbXNnaWQgImZhaWxlZCBpbiBidWZmZXJfd3JpdGUoZmQpICglaSwgcmV0PSVsaSk6ICVzIgorI34gbXNnc3RyICLOsc+Azr/PhM+Fz4fOr86xIM+Dz4TOt869IGJ1ZmZlcl93cml0ZShmZCkgKCVpLCByZXQ9JWxpKTogJXMiCisKKyN+IG1zZ2lkICJlb2YgaW4gYnVmZmVyX3dyaXRlKHN0cmVhbSk6ICVzIgorI34gbXNnc3RyICJlb2Ygz4PPhM6/IGJ1ZmZlcl93cml0ZShzdHJlYW0pOiAlcyIKKworI34gbXNnaWQgImVycm9yIGluIGJ1ZmZlcl93cml0ZShzdHJlYW0pOiAlcyIKKyN+IG1zZ3N0ciAiz4PPhs6szrvOvM6xIM+Dz4TOvyBidWZmZXJfd3JpdGUoc3RyZWFtKTogJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgaW4gYnVmZmVyX3JlYWQoZmQpOiAlcyIKKyN+IG1zZ3N0ciAizrHPgM6/z4TPhc+Hzq/OsSDPg8+Ezr8gYnVmZmVyX3JlYWQoZmQpOiAlcyIKKworI34gbXNnaWQgImVycm9yIGluIGJ1ZmZlcl9yZWFkKHN0cmVhbSk6ICVzIgorI34gbXNnc3RyICLPg8+GzqzOu868zrEgz4PPhM6/IGJ1ZmZlcl9yZWFkKHN0cmVhbSk6ICVzIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiVzIHJldHVybmVkIGVycm9yIGV4aXQgc3RhdHVzICVkIgorI34gbXNnc3RyICLOtyDPhc+Azr/OtM65zrXPgc6zzrHPg86vzrEgJXMgzrXPgM6tz4PPhM+BzrXPiM61IM66zrHPhM6sz4PPhM6xz4POtyDOu86szrjOv8+Fz4IgJWQiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiJXMga2lsbGVkIGJ5IHNpZ25hbCAoJXMpJXMiCisjfiBtc2dzdHIgIs63IM+Fz4DOv860zrnOtc+BzrPOsc+Dzq/OsSAlcyDPg866zr/PhM+OzrjOt866zrUgzrHPgM+MIM+Ezr8gz4POrs68zrEgKCVzKSVzIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgdmVyc2lvbiAyIG9yXG4iCisjfiAibGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJcbiIKKyN+ICLOkc+Fz4TPjCDOtc6vzr3Osc65IM61zrvOtc+NzrjOtc+Bzr8gzrvOv86zzrnPg868zrnOus+MLiDOlM61zq/PhM61IM+EzrfOvSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSAiCisjfiAizq3Ous60zr/Pg863IDIgzq5cbiIKKyN+ICLOvM61z4TOsc6zzrXOvc6tz4PPhM61z4HOtyDOs865zrEgz4PPhc69zrjOrs66zrXPgiDOsc69z4TOuc6zz4HOsc+Gzq7Pgi4gzpTOtc69IM+Fz4DOrM+Bz4fOtc65IM6azpHOnM6ZzpEgzrXOs86zz43Ot8+DzrcuXG4iCisKKyN+IG1zZ2lkICIiCisjfiAiXG4iCisjfiAiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbmNlIHZlcnNpb24gMiBvclxuIgorI34gImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LlxuIgorI34gbXNnc3RyICIiCisjfiAiXG4iCisjfiAizpHPhc+Ez4wgzrXOr869zrHOuSDOtc67zrXPjc64zrXPgc6/IM67zr/Os865z4POvM65zrrPjC4gzpTOtc6vz4TOtSDPhM63zr0gR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgIgorI34gIs6tzrrOtM6/z4POtyAyIM6uXG4iCisjfiAizrzOtc+EzrHOs861zr3Orc+Dz4TOtc+BzrcgzrPOuc6xIM+Dz4XOvc64zq7Ous61z4IgzrHOvc+EzrnOs8+BzrHPhs6uz4IuIM6UzrXOvSDPhc+AzqzPgc+HzrXOuSDOms6RzpzOmc6RIM61zrPOs8+NzrfPg863LlxuIgorCisjfiBtc2dpZCAiJXM6IGZhaWxlZCB0byBleGVjICclcyAlcyciCisjfiBtc2dzdHIgIiVzOiDOsc+Azr/PhM+Fz4fOr86xIM61zrrPhM6tzrvOtc+DzrfPgiAnJXMgJXMnIgorCisjfiBtc2dpZCAiJXM6IGludGVybmFsIGd6aXAgZXJyb3I6IHJlYWQ6IGAlcyciCisjfiBtc2dzdHIgIiVzOiDOtc+Dz4nPhM61z4HOuc66z4wgz4PPhs6szrvOvM6xIGd6aXByOiDOsc69zqzOs869z4nPg863OiBgJXMnIgorCisjfiBtc2dpZCAiJXM6IGludGVybmFsIGd6aXAgZXJyb3I6IHdyaXRlOiBgJXMnIgorI34gbXNnc3RyICIlczogzrXPg8+Jz4TOtc+BzrnOus+MIM+Dz4bOrM67zrzOsSBnemlwOiDOtc6zzrPPgc6xz4bOrjogYCVzJyIKKworI34gbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIGVycm9yOiByZWFkKCVpKSAhPSB3cml0ZSglaSkiCisjfiBtc2dzdHIgIiVzOiDOtc+Dz4nPhM61z4HOuc66z4wgz4PPhs6szrvOvM6xIGd6aXA6IM6xzr3OrM6zzr3Pic+DzrcoJWkpICE9IM61zrPOs8+BzrHPhs6uKCVpKSIKKworI34gbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiBlcnJvcjogcmVhZDogYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IM61z4PPic+EzrXPgc65zrrPjCDPg8+GzqzOu868zrEgYnppcDI6IM6xzr3OrM6zzr3Pic+Dzrc6IGAlcyciCisKKyN+IG1zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgZXJyb3I6IHdyaXRlOiBgJXMnIgorI34gbXNnc3RyICIlczogzrXPg8+Jz4TOtc+BzrnOus+MIM+Dz4bOrM67zrzOsSBiemlwMjogzrXOs86zz4HOsc+Gzq46IGAlcyciCisKKyN+IG1zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgZXJyb3I6IHJlYWQoJWkpICE9IHdyaXRlKCVpKSIKKyN+IG1zZ3N0ciAiJXM6IM61z4PPic+EzrXPgc65zrrPjCDPg8+GzqzOu868zrEgYnppcDI6IM6xzr3OrM6zzr3Pic+DzrcoJWkpICE9IM61zrPOs8+BzrHPhs6uKCVpKSIKKworI34gbXNnaWQgIkRvbid0IGZvcmdldCB0byBmb3JlZ3JvdW5kIChgZmcnKSB0aGlzIHByb2Nlc3Mgd2hlbiB5b3UncmUgZG9uZSAhXG4iCisjfiBtc2dzdHIgIiIKKyN+ICLOnM63zr0gzr7Otc+HzqzPg861z4TOtSDOvc6xIM61z4DOsc69zrHPhs6tz4HOtc+EzrUgz4TOt869IM60zrnOsc60zrnOus6xz4POr86xIM6xz4XPhM6uIChgZmcnKSDPjM+EzrHOvSDPhM61zrvOtc65z47Pg861z4TOtSAhXG4iCisKKyN+IG1zZ2lkICIiCisjfiAiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvclxuIgorI34gImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LlxuIgorI34gIlNlZSAlcyAtLWxpY2Vuc2UgZm9yIGNvcHlyaWdodCBhbmQgbGljZW5zZSBkZXRhaWxzLlxuIgorI34gbXNnc3RyICIiCisjfiAizpHPhc+Ez4wgzrXOr869zrHOuSDOtc67zrXPjc64zrXPgc6/IM67zr/Os865z4POvM65zrrPjC4gzpTOtc6vz4TOtSDPhM63zr0gzpPOtc69zrnOus6uIM6UzrfOvM+Mz4POuc6xIM6GzrTOtc65zrEgzqfPgc6uz4POt8+CIEdOVSAiCisjfiAiR1BMIM6tzrrOtM6/z4POtyAyIM6uXG4iCisjfiAizrzOtc+EzrHOs861zr3Orc+Dz4TOtc+BzrfPgiDOs865zrEgz4zPgc6/z4XPgiDOsc69z4TOuc6zz4HOsc+Gzq7Pgi4gzpTOlc6dIM+Fz4DOrM+Bz4fOtc65IM6azpHOnM6ZzpEgzrXOs86zz43Ot8+DzrcuXG4iCisjfiAizpTOtc6vz4TOtSAlcyAtLWxpY2VuY2UgzrPOuc6xIM60zrnOus6xzrnPjs68zrHPhM6xIM+Hz4HOrs+DzrfPgiDOus6xzrkgzrvOtc+Az4TOv868zq3Pgc61zrnOtc+CIM6xzrTOtc65zr/OtM+Mz4TOt8+DzrfPgi5cbiIKKworI34gbXNnaWQgInVuYWJsZSB0byBnZXQgdW5pcXVlIGZpbGVuYW1lIGZvciBjb250cm9sIGluZm8iCisjfiBtc2dzdHIgIs6xzrTPjc69zrHPhM63IM63IM67zq7PiM63IM68zr/Ovc6xzrTOuc66zr/PjSDOv869z4zOvM6xz4TOv8+CIM6xz4HPh861zq/Ov8+FIM6zzrnOsSDPgM67zrfPgc6/z4bOv8+Bzq/Otc+CIM61zrvOrc6zz4fOv8+FICIKKworI34gbXNnaWQgIkRlYmlhbiBgJXMnIHBhY2thZ2UgbWFuYWdlbWVudCBwcm9ncmFtIHF1ZXJ5IHRvb2xcbiIKKyN+IG1zZ3N0ciAiIgorI34gIs6Vz4HOs86xzrvOtc6vzr8gzrHOvc6xzrbOrs+EzrfPg863z4Igz4TOv8+FIM+Az4HOv86zz4HOrM68zrzOsc+Ezr/PgiDOtM65zrHPh861zq/Pgc65z4POt8+CIM+AzrHOus6tz4TPic69IM+Ezr/PhSBEZWJpYW4gYCVzJ1xuIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IHF1ZXJ5aW5nIHBhY2thZ2VzO1xuIgorI34gIlVzZSAtLWxpY2Vuc2UgZm9yIGNvcHlyaWdodCBsaWNlbnNlIGFuZCBsYWNrIG9mIHdhcnJhbnR5IChHTlUgR1BMKS4iCisjfiBtc2dzdHIgIiIKKyN+ICLOp8+BzrfPg865zrzOv8+Azr/Ouc6uz4PPhM61IC0taGVscCDOs865zrEgzrLOv86uzrjOtc65zrEgz4PPh861z4TOuc66zqwgzrzOtSDPhM63zr0gzrTOuc61z4HOtc+Nzr3Ot8+DzrcgIM+AzrHOus6tz4TPic69O1xuIgorI34gIs6nz4HOt8+DzrnOvM6/z4DOv865zq7Pg8+EzrUgLS1saWNlbmNlIM6zzrnOsSDOrM60zrXOuc6xIM+Hz4HOrs+DzrfPgiDOus6xzrkgzrHPgM6/z4XPg86vzrEgzrXOs86zz43Ot8+DzrfPgiAoR05VICIKKyN+ICJHUEwpLlxuIgorI34gIlxuIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGNob3duICVzOiAlcyIKKyN+IG1zZ3N0ciAizrHPgM6/z4TPhc+Hzq/OsSDOtc66z4TOrc67zrXPg863z4IgY2hvd24gJXM6ICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGNobW9kICVzOiAlcyIKKyN+IG1zZ3N0ciAizrHPgM6/z4TPhc+Hzq/OsSDOtc66z4TOrc67zrXPg863z4IgY2htb2QgJXM6ICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGZvcmsgZm9yIGNsZWFudXAiCisjfiBtc2dzdHIgIs6xz4DOrc+Ez4XPh861IM63IM60zrnPh86szrvPic+DzrcgKGZvcmspIM6zzrnOsSDPhM61z4HOvM6xz4TOuc+DzrzPjCIKKworI34gbXNnaWQgImZhaWxlZCB0byB3YWl0IGZvciBybSBjbGVhbnVwIgorI34gbXNnc3RyICLOsc+Azq3PhM+Fz4fOtSDOtyDOsc69zrHOvM6/zr3OriDOs865zrEgzrrOsc64zrHPgc65z4POvM+MIM68zrUgz4TOt869IHJtIgorCisjfiBtc2dpZCAicm0gY2xlYW51cCBmYWlsZWQsIGNvZGUgJWRcbiIKKyN+IG1zZ3N0ciAizr8gzrrOsc64zrHPgc65z4POvM+Mz4IgzrzOtSDPhM63zr0gcm0gzrHPgM6tz4TPhc+HzrUsIM66z4nOtM65zrrPjM+CICVkXG4iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBybSAtcmYiCisjfiBtc2dzdHIgIs6xz4DOrc+Ez4XPh861IM63IM61zrrPhM6tzrvOtc+Dzrcgz4TOt8+CIHJtIC1yZiIKKworI34gbXNnaWQgImZhaWxlZCB0byByZWFkIGBjb250cm9sJyAoaW4gYCUuMjU1cycpIgorI34gbXNnc3RyICLOsc+Azq3PhM+Fz4fOtSDOtyDOsc69zqzOs869z4nPg863IM+Ezr/PhSBgY29udHJvbCcgKM+Dz4TOvyBgJS4yNTVzJykiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gc2VlayBiYWNrIgorI34gbXNnc3RyICLOsc60z43Ovc6xz4TOtyDOtyDOvM61z4TOsc66zq/Ovc63z4POtyDPgM6vz4PPiSIKKworI34gbXNnaWQgInVua25vd24gZGF0YSB0eXBlIGAlaScgaW4gYnVmZmVyX3dyaXRlXG4iCisjfiBtc2dzdHIgIs6szrPOvc+Jz4PPhM6/z4Igz4TPjc+Azr/PgiDOtM61zrTOv868zq3Ovc+Jzr0gYCVpJyDPg8+Ezr8gYnVmZmVyX3dyaXRlXG4iCisKKyN+IG1zZ2lkICJ1bmtub3duIGRhdGEgdHlwZSBgJWknIGluIGJ1ZmZlcl9yZWFkXG4iCisjfiBtc2dzdHIgIs6szrPOvc+Jz4PPhM6/z4Igz4TPjc+Azr/PgiDOtM61zrTOv868zq3Ovc+Jzr0gYCVpJyDPg8+Ezr8gYnVmZmVyX3JlYWRcbiIKKworI34gbXNnaWQgIndhaXQgZm9yIHNoZWxsIGZhaWxlZCIKKyN+IG1zZ3N0ciAizrHOvc6xzrzOv869zq4gzrPOuc6xIM66zq3Ou8+Fz4bOv8+CIM6xz4DOrc+Ez4XPh861IgorCisjfiBtc2dpZCAicmVhZCBlcnJvciBpbiBkaXZlcnNpb25zIFtpXSIKKyN+IG1zZ3N0ciAiz4PPhs6szrvOvM6xIM6xzr3OrM6zzr3Pic+DzrfPgiDPg8+Ezr8gzrHPgc+HzrXOr86/IGRpdmVyc2lvbnMgW2ldIgorCisjfiBtc2dpZCAidW5saW5rIgorI34gbXNnc3RyICJ1bmxpbmsiCisKKyN+IG1zZ2lkICJjaG1vZCIKKyN+IG1zZ3N0ciAiY2htb2QiCisKKyN+IG1zZ2lkICJkZWxldGUiCisjfiBtc2dzdHIgIs60zrnOsc6zz4HOsc+Gzq4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiZmFpbGVkIHRvICVzICclLjI1NXMnIgorI34gbXNnc3RyICLOsc+Azr/PhM+Fz4fOr86xIM69zrEgICVzIGAlJS4yNTVzJyIKKworI34gbXNnaWQgIndhaXQgZm9yIGRwa2ctc3BsaXQgZmFpbGVkIgorI34gbXNnc3RyICLOtyDOsc69zrHOvM6/zr3OriDOs865zrEgz4TOvyBkcGtnLXNwbGl0IM6xz4DOrc+Ez4XPh861IgorCisjfiBtc2dpZCAiY2Fubm90IHJlbW92ZSBmaWxlIGAlLjI1MHMnIgorI34gbXNnc3RyICLOsc60z43Ovc6xz4TOtyDOtyDOsc+GzrHOr8+BzrXPg863IM+Ezr/PhSDOsc+Bz4fOtc6vzr/PhSBgJS4yNTBzJyIKKworI34gbXNnaWQgIiIKKyN+ICJcbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDIwMDAgV2ljaGVydCBBa2tlcm1hbi4iCisjfiBtc2dzdHIgIiIKKyN+ICJcbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDIwMDAgV2ljaGVydCBBa2tlcm1hbi4iCisKKyN+IG1zZ2lkICJubyBtb2RlIHNwZWNpZmllZCIKKyN+IG1zZ3N0ciAizrTOtc69IM+Az4HOv8+DzrTOuc6/z4HOr8+Dz4TOt866zrUgzrrOsc+EzqzPg8+EzrHPg863IgorCisjfiBtc2dpZCAiaWxsZWdhbCB1c2VyICVzIgorI34gbXNnc3RyICLOvM63IM69z4zOvM65zrzOv8+CIM+Hz4HOrs+Dz4TOt8+CICVzIgorCisjfiBtc2dpZCAibm9uLWV4aXN0aW5nIHVzZXIgJXMiCisjfiBtc2dzdHIgIs68zrcgz4XPgM6xz4HOus+Ez4zPgiDPh8+Bzq7Pg8+EzrfPgiAlcyIKKworI34gbXNnaWQgImlsbGVnYWwgZ3JvdXAgJXMiCisjfiBtc2dzdHIgIs68zrcgzr3PjM68zrnOvM63IM6/zrzOrM60zrEgJXMiCisKKyN+IG1zZ2lkICJub24tZXhpc3RpbmcgZ3JvdXAgJXMiCisjfiBtc2dzdHIgIs68zrcgz4XPgM6sz4HPh86/z4XPg86xIM6/zrzOrM60zrEgJXMiCisKKyN+IG1zZ2lkICJpbGxlZ2FsIG1vZGUgJXMiCisjfiBtc2dzdHIgIs6xzrjOrc68zrnPhM6/z4Igz4TPgc+Mz4DOv8+CICVzIgorCisjfiBtc2dpZCAiYWJvcnRpbmciCisjfiBtc2dzdHIgIs61zrPOus6xz4TOrM67zrXOuc+IzrciCisKKyN+IG1zZ2lkICJjYW5ub3Qgb3BlbiBzdGF0b3ZlcnJpZGU6ICVzIgorI34gbXNnc3RyICLOsc60z4XOvc6xzrzOr86xIM6xzr3Ov86vzrPOvM6xz4TOv8+CIM+Ezr/PhSDOsc+Bz4fOtc6vzr/PhSBzdGF0b3ZlcnJpZGU6ICVzIgorCisjfiBtc2dpZCAiTXVsdGlwbGUgb3ZlcnJpZGVzIGZvciBcIiVzXCIsIGFib3J0aW5nIgorI34gbXNnc3RyICLOoM6/zrvOu86xz4DOu86sIG92ZXJyaWRlIM6zzrnOsSDPhM6/IFwiJXNcIiwgz4TOtc+BzrzOsc+EzrnPg868z4zPgiIKKworI34gbXNnaWQgImZhaWxlZCB3cml0ZSBkdXJpbmcgaGFzaHJlcG9ydCIKKyN+IG1zZ3N0ciAizrHPgM6/z4TPhc+Hzq/OsSDOtc6zzrPPgc6xz4bOrs+CIM66zrHPhM6sIM+Ezr8gaGFzaHJlcG9ydCIKKworI34gbXNnaWQgImNvbmZpZ3VyYXRpb24gZXJyb3I6IHVua25vd24gb3B0aW9uICVzIgorI34gbXNnc3RyICLPg8+GzqzOu868zrEgz4HPhc64zrzOr8+DzrXPic69OiDOrM6zzr3Pic+Dz4TOtyDOtc+AzrnOu86/zrPOriAlcyIKKworI34gbXNnaWQgImNvbmZpZ3VyYXRpb24gZXJyb3I6ICVzIGRvZXMgbm90IHRha2UgYSB2YWx1ZSIKKyN+IG1zZ3N0ciAiz4PPhs6szrvOvM6xIM+Bz4XOuM68zq/Pg861z4nOvTogz4TOvyAlcyDOtM61zr0gz4DOsc6vz4HOvc61zrkgz4TOuc68zq4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAidW5leGVjcHRlZCBlbmQgb2YgbGluZSBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKKyN+IG1zZ3N0ciAizrHPgM+Bz4zPg868zrXOvc6/IM+Ezq3Ou86/z4Igz4TOt8+CIM6zz4HOsc68zrzOrs+CIM+Dz4TOvyDPjM69zr/OvM6xIM+AzrHOus6tz4TOv8+FIM+Dz4TOtyDOs8+BzrHOvM68zq4gJWQiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiLS1jaGVjay1zdXBwb3J0ZWQgdGFrZXMgbm8gYXJndW1lbnRzIgorI34gbXNnc3RyICLPhM6/IGRwa2ctdHJpZ2dlciAtLWNoZWNrLXN1cHBvcnRlZCDOtM61zr0gz4DOsc6vz4HOvc61zrkgzr/Pgc6vz4POvM6xz4TOsSIKKworI34gbXNnaWQgIi0tZm9yZ2V0LW9sZC11bmF2YWlsIHRha2VzIG5vIGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAizrcgLS1mb3JnZXQtb2xkLXVuYXZhaWwgzrTOtc69IM+AzrHOr8+Bzr3Otc65IM6/z4HOr8+DzrzOsc+EzrEiCisKKyN+IG1zZ2lkICIiCisjfiAiXG4iCisjfiAiQ29weXJpZ2h0IChDKSAxOTk0LDE5OTUgSWFuIEphY2tzb24uIgorI34gbXNnc3RyICIiCisjfiAiXG4iCisjfiAiQ29weXJpZ2h0IChDKSAxOTk0LDE5OTUgSWFuIEphY2tzb24uIgorCisjfiBtc2dpZCAiIgorI34gIlVzYWdlOiAlcyBbPG9wdGlvbnM+IC4uLl0gWy0tXSA8ZmlsZW5hbWU+XG4iCisjfiAiXG4iCisjfiAiT3B0aW9uczpcbiIKKyN+ICIgIC0tc2VjdGlvbiA8cmVnZXhwPiA8dGl0bGU+XG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgcHV0IHRoZSBuZXcgZW50cnkgaW4gdGhlIDxyZWdleD4gbWF0Y2hlZCAiCisjfiAic2VjdGlvblxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgIG9yIGNyZWF0ZSBhIG5ldyBvbmUgd2l0aCA8dGl0bGU+IGlmIG5vbi0iCisjfiAiZXhpc3RlbnQuXG4iCisjfiAiICAtLW1lbnVlbnRyeT08dGV4dD4gICAgICAgc2V0IHRoZSBtZW51IGVudHJ5LlxuIgorI34gIiAgLS1kZXNjcmlwdGlvbj08dGV4dD4gICAgIHNldCB0aGUgZGVzY3JpcHRpb24gdG8gYmUgdXNlZCBpbiB0aGUgbWVudSAiCisjfiAiZW50cnkuXG4iCisjfiAiICAtLWluZm8tZmlsZT08cGF0aD4gICAgICAgc3BlY2lmeSBpbmZvIGZpbGUgdG8gaW5zdGFsbCBpbiB0aGUgIgorI34gImRpcmVjdG9yeS5cbiIKKyN+ICIgIC0tZGlyLWZpbGU9PHBhdGg+ICAgICAgICBzcGVjaWZ5IGZpbGUgbmFtZSBvZiBpbmZvIGRpcmVjdG9yeSBmaWxlLlxuIgorI34gIiAgLS1pbmZvZGlyPTxkaXJlY3Rvcnk+ICAgIHNhbWUgYXMgJy0tZGlyLWZpbGU9PGRpcmVjdG9yeT4vZGlyJy5cbiIKKyN+ICIgIC0taW5mby1kaXI9PGRpcmVjdG9yeT4gICBsaWtld2lzZS5cbiIKKyN+ICIgIC0ta2VlcC1vbGQgICAgICAgICAgICAgICBkbyBub3QgcmVwbGFjZSBlbnRyaWVzIG5vciByZW1vdmUgZW1wdHkgb25lcy5cbiIKKyN+ICIgIC0tcmVtb3ZlICAgICAgICAgICAgICAgICByZW1vdmUgdGhlIGVudHJ5IHNwZWNpZmllZCBieSA8ZmlsZW5hbWU+ICIKKyN+ICJiYXNlbmFtZS5cbiIKKyN+ICIgIC0tcmVtb3ZlLWV4YWN0bHkgICAgICAgICByZW1vdmUgdGhlIGV4YWN0IDxmaWxlbmFtZT4gZW50cnkuXG4iCisjfiAiICAtLXRlc3QgICAgICAgICAgICAgICAgICAgZW5hYmxlcyB0ZXN0IG1vZGUgKG5vIGFjdGlvbnMgdGFrZW4pLlxuIgorI34gIiAgLS1kZWJ1ZyAgICAgICAgICAgICAgICAgIGVuYWJsZXMgZGVidWcgbW9kZSAoc2hvdyBtb3JlIGluZm9ybWF0aW9uKS5cbiIKKyN+ICIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBkbyBub3Qgc2hvdyBvdXRwdXQgbWVzc2FnZXMuXG4iCisjfiAiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyN+ICIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorI34gbXNnc3RyICIiCisjfiAizqfPgc6uz4POtzogJXMgWzxvcHRpb25zPiAuLi5dIFstLV0gPGZpbGVuYW1lPlxuIgorI34gIlxuIgorI34gIs6Vz4DOuc67zr/Os86tz4I6XG4iCisjfiAiICAtLXNlY3Rpb24gPHJlZ2V4cD4gPHRpdGxlPlxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgIM6yzqzOu861IM+EzrfOvSDOvc6tzrEgzrXOr8+Dzr/OtM6/IM+Dz4TOt869IM+AzrXPgc65zr/Ph86uIM+Azr/PhSDPhM6xzrnPgc65zqzOts61zrkgIgorI34gIs68zrUgz4TOt869IM6tzrrPhs+BzrHPg863IDxyZWdleD5cbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICDOriDOtM63zrzOuc6/z43Pgc6zzrfPg861IM68zrnOsSDOus6xzrnOvc6/z43Pgc65zrEgzrzOtSDPhM6vz4TOu86/IDx0aXRsZT4gIgorI34gIs6xzr0gzrTOtc69IM+Fz4DOrM+Bz4fOtc65IM6uzrTOty5cbiIKKyN+ICIgIC0tbWVudWVudHJ5PTx0ZXh0PiAgICAgICDOus6xzrjOv8+BzrnPg868z4zPgiDPhM63z4IgzrXOuc+Dz4zOtM6/z4Ugz4PPhM6/IM68zrXOvc6/z40uXG4iCisjfiAiICAtLWRlc2NyaXB0aW9uPTx0ZXh0PiAgICAgzrrOsc64zr/Pgc65z4POvM+Mz4Igz4TOt8+CIM+AzrXPgc65zrPPgc6xz4bOrs+CIM+Azr/PhSDOuM6xICIKKyN+ICLPh8+BzrfPg865zrzOv8+Azr/Ouc63zrjOtc6vIM+Dz4TOt869IM61zq/Pg86/zrTOvyDOs865zrEgz4TOvyDOvM61zr3Ov8+NLlxuIgorI34gIiAgLS1pbmZvLWZpbGU9PHBhdGg+ICAgICAgIM+Az4HOv8+DzrTOuc6/z4HOuc+DzrzPjM+CIM+Ezr/PhSDOsc+Bz4fOtc6vzr/PhSDPgM67zrfPgc6/z4bOv8+BzrnPjs69IM6zzrnOsSAiCisjfiAizrXOs866zrHPhM6sz4PPhM6xz4POtyDPg8+Ezr/OvSDOus6xz4TOrM67zr/Os86/LlxuIgorI34gIiAgLS1kaXItZmlsZT08cGF0aD4gICAgICAgIM+Az4HOv8+DzrTOuc6/z4HOuc+DzrzPjM+CIM+Ezr/PhSDOv869z4zOvM6xz4TOv8+CIM6xz4HPh861zq/Ov8+FIM6zzrnOsSDPhM6/ICIKKyN+ICLOsc+Bz4fOtc6vzr8gz4DOu863z4HOv8+Gzr/Pgc65z47OvSDPhM6/z4UgzrrOsc+EzrHOu8+MzrPOv8+FLlxuIgorI34gIiAgLS1pbmZvZGlyPTxkaXJlY3Rvcnk+ICAgIM+Ezr8gzq/OtM65zr8gzrzOtSDPhM6/ICctLWRpci1maWxlPTxkaXJlY3Rvcnk+L2RpcicuXG4iCisjfiAiICAtLWluZm8tZGlyPTxkaXJlY3Rvcnk+ICAgz4DOsc+Bz4zOvM6/zrnOsS5cbiIKKyN+ICIgIC0ta2VlcC1vbGQgICAgICAgICAgICAgICDOvc6xIM68zrfOvSDOs86vzr3Otc65IM6xzr3PhM65zrrOsc+EzqzPg8+EzrHPg863IM+Ez4nOvSDOtc65z4PPjM60z4nOvSDOv8+Nz4TOtSAiCisjfiAizrHPhs6xzq/Pgc61z4POtyDPhM+Jzr0gzrrOtc69z47OvS5cbiIKKyN+ICIgIC0tcmVtb3ZlICAgICAgICAgICAgICAgICDOsc+GzrHOr8+BzrXPg863IM+EzrfPgiDOtc65z4PPjM60zr/PhSDPgM6/z4UgzrrOsc64zr/Pgc6vzrbOtc+EzrHOuSDOvM61IM+Ezr8gIgorI34gIs+Mzr3Ov868zrEgzrLOrM+DzrfPgiA8ZmlsZW5hbWU+LlxuIgorI34gIiAgLS1yZW1vdmUtZXhhY3RseSAgICAgICAgIM6xz4bOsc6vz4HOtc+Dzrcgz4TOt8+CIM6xzrrPgc65zrLOv8+Nz4IgPGZpbGVuYW1lPiDOtc65zrTPjM60zr/PhS5cbiIKKyN+ICIgIC0tdGVzdCAgICAgICAgICAgICAgICAgICDOtc69zrXPgc6zzr/PgM6/zrnOtc6vIM+EzrfOvSDOus6xz4TOrM+Dz4TOsc+DzrcgzrTOv866zrnOvM6uz4IgKM60zrXOvSAiCisjfiAizrPOr869zr/Ovc+EzrHOuSDOtc69zq3Pgc6zzrXOuc61z4IpLlxuIgorI34gIiAgLS1kZWJ1ZyAgICAgICAgICAgICAgICAgIM61zr3Otc+BzrPOv8+Azr/Or863z4POtyDPhM63z4IgzrrOsc+EzqzPg8+EzrHPg863z4IgzrXOus+Dz4bOsc67zrzOrM+Ez4nPg863z4IgIgorI34gIijOtc68z4bOrM69zrnPg863IM+AzrXPgc65z4PPg8+Mz4TOtc+Bz4nOvSDPgM67zrfPgc6/z4bOv8+BzrnPjs69KS5cbiIKKyN+ICIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICDOvM63IM61zrzPhs6szr3Ouc+DzrcgzrzOt869z4XOvM6sz4TPic69IM61zr7PjM60zr/PhS5cbiIKKyN+ICIgIC0taGVscCAgICAgICAgICAgICAgICAgICDOtc68z4bOrM69zrnPg863IM6xz4XPhM6/z40gz4TOv8+FIM68zrfOvc+NzrzOsc+Ezr/PgiDOss6/zq7OuM61zrnOsc+CLlxuIgorI34gIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgzrXOvM+GzqzOvc65z4POtyDPhM63z4Igzq3Ous60zr/Pg863z4IuXG4iCisKKyN+IG1zZ2lkICJjb3VsZCBub3Qgb3BlbiBzdGRlcnIgZm9yIG91dHB1dCEgJXMiCisjfiBtc2dzdHIgIs6xzrTPhc69zrHOvM6vzrEgzrHOvc6/zq/Os868zrHPhM6/z4Igc3RkZXJyIM6zzrnOsSDOrc6+zr/OtM6/ISAlcyIKKworI34gbXNnaWQgIiVzOiAtLXNlY3Rpb24gbmVlZHMgdHdvIG1vcmUgYXJncyIKKyN+IG1zZ3N0ciAiJXM6IC0tc2VjdGlvbiDPh8+BzrXOuc6szrbOtc+EzrHOuSDOrc69zrEgzq4gz4DOtc+BzrnPg8+Dz4zPhM61z4HOsSDOv8+Bzq/Pg868zrHPhM6xIgorCisjfiBtc2dpZCAiJXM6IG9wdGlvbiAtLSVzIGlzIGRlcHJlY2F0ZWQgKGlnbm9yZWQpIgorI34gbXNnc3RyICIlczogb3B0aW9uIC0tJXMgzrTOtc69IM+Hz4HOt8+DzrnOvM6/z4DOv865zrXOr8+EzrHOuSAozrHOs869zr/Otc6vz4TOsc65KSIKKworI34gbXNnaWQgIiVzOiB1bmtub3duIG9wdGlvbiBgJXMnIgorI34gbXNnc3RyICIlczogzqzOs869z4nPg8+EzrcgzrXPgM65zrvOv86zzq4gYCVzJyIKKworI34gbXNnaWQgIiVzOiB0b28gbWFueSBhcmd1bWVudHMiCisjfiBtc2dzdHIgIiVzOiDPgM6sz4HOsSDPgM6/zrvOu86sIM6/z4HOr8+DzrzOsc+EzrEiCisKKyN+IG1zZ2lkICIlczogLS1zZWN0aW9uIGlnbm9yZWQgd2l0aCAtLXJlbW92ZSIKKyN+IG1zZ3N0ciAiJXM6IC0tc2VjdGlvbiDOsc6zzr3Ov861zq/PhM6xzrkgz4POtSDPg8+Fzr3OtM+FzrHPg868z4wgzrzOtSAtLXJlbW92ZSIKKworI34gbXNnaWQgIiVzOiAtLWRlc2NyaXB0aW9uIGlnbm9yZWQgd2l0aCAtLXJlbW92ZSIKKyN+IG1zZ3N0ciAiJXM6IC0tZGVzY3JpcHRpb24gzrHOs869zr/Otc6vz4TOsc65IM+DzrUgz4PPhc69zrTPhc6xz4POvM+MIM68zrUgLS1yZW1vdmUiCisKKyN+IG1zZ2lkICIlczogdGVzdCBtb2RlIC0gZGlyIGZpbGUgd2lsbCBub3QgYmUgdXBkYXRlZCIKKyN+IG1zZ3N0ciAiJXM6IHRlc3QgbW9kZSAtIM+Ezr8gzrHPgc+HzrXOr86/IGRpciDOtM61zr0gzrjOsSDOtc69zrfOvM61z4HPic64zrXOryIKKworI34gbXNnaWQgIiVzOiB3YXJuaW5nLCBpZ25vcmluZyBjb25mdXNpbmcgSU5GTy1ESVItRU5UUlkgaW4gZmlsZS4iCisjfiBtc2dzdHIgIiIKKyN+ICIlczogz4DPgc6/zrXOuc60zr/PgM6/zq/Ot8+DzrcsIM63IM6xzrPOvc+MzrfPg863IM+Az4HOv866zrHOu861zq8gz4PPjc6zz4fPhc+Dzrcgz4PPhM63zr0gz4DOsc+BzqzOvM61z4TPgc6/IElORk8tRElSLSIKKyN+ICJFTlRSWSDPg8+Ezr8gzrHPgc+HzrXOr86/LiIKKworI34gbXNnaWQgImludmFsaWQgaW5mbyBlbnRyeSIKKyN+IG1zZ3N0ciAizrzOtyDOrc6zzrrPhc+BzrcgzrXOr8+Dzr/OtM6/z4Igz4DOu863z4HOv8+Gzr/Pgc6vzrHPgiIKKworI34gbXNnaWQgIiIKKyN+ICJcbiIKKyN+ICJObyBgU1RBUlQtSU5GTy1ESVItRU5UUlknIGFuZCBubyBgVGhpcyBmaWxlIGRvY3VtZW50cycuXG4iCisjfiAiJXM6IHVuYWJsZSB0byBkZXRlcm1pbmUgZGVzY3JpcHRpb24gZm9yIGBkaXInIGVudHJ5IC0gZ2l2aW5nIHVwXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJcbiIKKyN+ICLOlM61zr0gz4XPgM6sz4HPh861zrkgYFNUQVJULUlORk8tRElSLUVOVFJZJyDOv8+Nz4TOtSDPhM6/IGBUaGlzIGZpbGUgZG9jdW1lbnRzJy5cbiIKKyN+ICIlczogzrHOtM+Fzr3Osc68zq/OsSDPgM+Bzr/Pg860zrnOv8+BzrnPg868zr/PjSDPgM61z4HOuc6zz4HOsc+Gzq7PgiDOs865zrEgz4TOvyBgZGlyJyAtIM61zrPOus6xz4TOsc67zrXOr8+Az4lcbiIKKworI34gbXNnaWQgIiVzOiBubyBmaWxlICVzLCByZXRyaWV2aW5nIGJhY2t1cCBmaWxlICVzLiIKKyN+IG1zZ3N0ciAiJXM6IM6xz4DOv8+Fz4POr86xIM6xz4HPh861zq/Ov8+FICVzLCDOsc69zqzOus+EzrfPg863IM+Ezr/PhSDOsc69z4TOuc6zz4HOrM+Gzr/PhSDOsc+Dz4bOsc67zrXOr86xz4IgJXMuIgorCisjfiBtc2dpZCAiJXM6IG5vIGJhY2t1cCBmaWxlICVzIGF2YWlsYWJsZSwgcmV0cmlldmluZyBkZWZhdWx0IGZpbGUuIgorI34gbXNnc3RyICIiCisjfiAiJXM6IM60zrXOvSDPhc+AzqzPgc+HzrXOuSDOsc69z4TOr86zz4HOsc+Gzr8gzrHPg8+GzrHOu861zq/Osc+CIM+Ezr/PhSAlcyDOtM65zrHOuM6tz4POuc68zr8sIM6xzr3OrM66z4TOt8+Dzrcgz4TOv8+FICIKKyN+ICLPgM+Bzr/Ous6xzrjOv8+BzrnPg868zq3Ovc6/z4UgzrHPgc+HzrXOr86/z4UuIgorCisjfiBtc2dpZCAiJXM6IG5vIGJhY2t1cCBmaWxlICVzIGF2YWlsYWJsZS4iCisjfiBtc2dzdHIgIiVzOiDOtM61zr0gzrXOr869zrHOuSDOtM65zrHOuM6tz4POuc68zr8gzrHOvc+Ezq/Os8+BzrHPhs6/IM6xz4PPhs6xzrvOtc6vzrHPgiDPhM6/z4UgJXMuIgorCisjfiBtc2dpZCAiJXM6IG5vIGRlZmF1bHQgZmlsZSAlcyBhdmFpbGFibGUsIGdpdmluZyB1cC4iCisjfiBtc2dzdHIgIiIKKyN+ICIlczogzrTOtc69IM61zq/Ovc6xzrkgzrTOuc6xzrjOrc+DzrnOvM6/IM+Az4HOv866zrHOuM6/z4HOuc+DzrzOrc69zr8gzrHPgc+HzrXOr86/IM6zzrnOsSDPhM6/ICVzLCDOtc6zzrrOsc+EzrHOu861zq/PgM+JLiIKKworI34gbXNnaWQgIiVzOiBmYWlsZWQgdG8gbG9jayBkaXIgZm9yIGVkaXRpbmchICVzIgorI34gbXNnc3RyICIlczogzrHPgM6/z4TPhc+Hzq/OsSDOus67zrXOuc60z47OvM6xz4TOv8+CIM+Ezr/PhSDOus6xz4TOsc67z4zOs86/z4UgzrPOuc6xIM61z4DOtc6+zrXPgc6zzrHPg86vzrEhICVzIgorCisjfiBtc2dpZCAidHJ5IGRlbGV0aW5nICVzPyIKKyN+IG1zZ3N0ciAizr3OsSDOs86vzr3Otc65IM+Az4HOv8+Dz4DOrM64zrXOuc6xIM60zrnOsc6zz4HOsc+Gzq7PgiDPhM6/z4UgJXM7IgorCisjfiBtc2dpZCAidW5hYmxlIHRvIG9wZW4gJXM6ICVzIgorI34gbXNnc3RyICLOsc60z43Ovc6xz4TOtyDPhM6/IM6szr3Ov865zrPOvM6xIM+Ezr/PhSAlczogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gY2xvc2UgJXMgYWZ0ZXIgcmVhZDogJXMiCisjfiBtc2dzdHIgIs6xzrTPhc69zrHOvM6vzrEgzrrOu861zrnPg86vzrzOsc+Ezr/PgiDPhM6/z4UgJXMgzrzOtc+Ezqwgz4TOt869IM6xzr3OrM6zzr3Pic+Dzrc6ICVzIgorCisjfiBtc2dpZCAiJXM6IGV4aXN0aW5nIGVudHJ5IGZvciBgJXMnIG5vdCByZXBsYWNlZCIKKyN+IG1zZ3N0ciAiJXM6IM63IM+Fz4DOrM+Bz4fOv8+Fz4POsSDOtc6vz4POv860zr/PgiDOs865zrEgz4TOvyBgJXMnIM60zrXOvSDOsc69z4TOuc66zrHPhM6xz4PPhM6szrjOt866zrUiCisKKyN+IG1zZ2lkICIlczogcmVwbGFjaW5nIGV4aXN0aW5nIGRpciBlbnRyeSBmb3IgYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IM6xzr3PhM65zrrOsc+EzqzPg8+EzrHPg863IM+Fz4DOrM+Bz4fOv8+Fz4POsc+CIM61zrnPg8+MzrTOv8+FIM6zzrnOsSDPhM6/IGRpciDPhM6/z4UgYCVzJyIKKworI34gbXNnaWQgIiVzOiBjcmVhdGluZyBuZXcgc2VjdGlvbiBgJXMnIgorI34gbXNnc3RyICIlczogzrTOt868zrnOv8+Fz4HOs86vzrEgzr3Orc6xz4IgzrXOvc+Mz4TOt8+EzrHPgiBgJXMnIgorCisjfiBtc2dpZCAiJXM6IG5vIHNlY3Rpb25zIHlldCwgY3JlYXRpbmcgTWlzY2VsbGFuZW91cyBzZWN0aW9uIHRvby4iCisjfiBtc2dzdHIgIiIKKyN+ICIlczogzrTOtc69IM+Fz4DOrM+Bz4fOv8+Fzr0gzrHOus+MzrzOsSDOtc69z4zPhM63z4TOtc+CLCDOtM63zrzOuc6/z4XPgc6zzq/OsSDOtc+Azq/Pg863z4Igz4TOt8+CIM61zr3PjM+EzrfPhM6xz4IgzpTOuc6sz4bOv8+BzrEgIgorI34gIihNaXNjZWxsYW5lb3VzKS4iCisKKyN+IG1zZ2lkICIlczogbm8gc2VjdGlvbiBzcGVjaWZpZWQgZm9yIG5ldyBlbnRyeSwgcGxhY2luZyBhdCBlbmQiCisjfiBtc2dzdHIgIiIKKyN+ICIlczogzrTOtc69IM6tz4fOtc65IM6/z4HOuc+Dz4TOtc6vIM61zr3PjM+EzrfPhM6xIM6zzrnOsSDPhM63zr0gzrrOsc65zr3Ov8+Nz4HOuc6xIM61zq/Pg86/zrTOvywgz4TOv8+Azr/OuM6tz4TOt8+Dzrcgz4PPhM6/ICIKKyN+ICLPhM6tzrvOv8+CIgorCisjfiBtc2dpZCAiJXM6IGRlbGV0aW5nIGVudHJ5IGAlcyAuLi4nIgorI34gbXNnc3RyICIlczogzrTOuc6xzrPPgc6xz4bOriDOtc65z4PPjM60zr/PhSBgJXMgLi4uJyIKKworI34gbXNnaWQgIiVzOiBlbXB0eSBzZWN0aW9uIGAlcycgbm90IHJlbW92ZWQiCisjfiBtc2dzdHIgIiVzOiDOus61zr3OriDOtc69z4zPhM63z4TOsSBgJXMnIM60zrXOvSDOsc+GzrHOuc+Bzq3OuM63zrrOtSIKKworI34gbXNnaWQgIiVzOiBkZWxldGluZyBlbXB0eSBzZWN0aW9uIGAlcyciCisjfiBtc2dzdHIgIiVzOiDOtM65zrHOs8+BzrHPhs6uIM66zrXOvc6uz4IgzrXOvc+Mz4TOt8+EzrHPgiBgJXMnIgorCisjfiBtc2dpZCAiJXM6IG5vIGVudHJ5IGZvciBmaWxlIGAlcycgYW5kIG1lbnUgZW50cnkgYCVzJyIKKyN+IG1zZ3N0ciAiIgorI34gIiVzOiDOtM61zr0gz4XPgM6sz4HPh861zrkgzrXOr8+Dzr/OtM6/z4IgzrPOuc6xIM+Ezr8gzrHPgc+HzrXOr86/IGAlcycgzrrOsc65IM+EzrfOvSDOtc6vz4POv860zr8gz4TOv8+FIM68zrXOvc6/z40gYCVzJyIKKworI34gbXNnaWQgIiVzOiBubyBlbnRyeSBmb3IgZmlsZSBgJXMnIgorI34gbXNnc3RyICIlczogzrTOtc69IM+Fz4DOrM+Bz4fOtc65IM61zrnPg86xzrPPic6zzq4gzrPOuc6xIM+Ezr8gzrHPgc+HzrXOr86/IGAlcyciCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gYmFja3VwIG9sZCAlcywgZ2l2aW5nIHVwOiAlcyIKKyN+IG1zZ3N0ciAiIgorI34gIs6xzrTPjc69zrHPhM63IM63IM60zrfOvM65zr/Phc+BzrPOr86xIM6xzr3PhM65zrPPgc6sz4bOv8+FIM6xz4PPhs6xzrvOtc6vzrHPgiDPhM6/z4Ugz4DOsc67zrnOv8+NICVzLCDOtc6zzrrOsc+EzrHOu861zq/PgM+JOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyAlczogJXMiCisjfiBtc2dzdHIgIs6xzrTPjc69zrHPhM63IM63IM61zrPOus6xz4TOrM+Dz4TOsc+Dzrcgzr3Orc6/z4UgJXM6ICVzIgorCisjfiBtc2dpZCAiJXM6IGNvdWxkIG5vdCBiYWNrdXAgJXMgaW4gJXM6ICVzIgorI34gbXNnc3RyICIlczogzrHOtM+Fzr3Osc68zq/OsSDOtM63zrzOuc6/z4XPgc6zzq/OsSDOsc69z4TOuc6zz4HOrM+Gzr/PhSDOsc+Dz4bOsc67zrXOr86xz4Igz4TOv8+FICVzIM+DzrUgJXM6ICVzIgorCisjfiBtc2dpZCAiJXM6IHdhcm5pbmcgLSB1bmFibGUgdG8gdW5sb2NrICVzOiAlcyIKKyN+IG1zZ3N0ciAiJXM6IM+Az4HOv861zrnOtM6/z4DOv86vzrfPg863IC0gzrHOtM+Fzr3Osc68zq/OsSDOvs61zrrOu861zrnOtM+OzrzOsc+Ezr/PgiDPhM6/z4UgJXM6ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHJlYWQgJXM6ICVkIgorI34gbXNnc3RyICLOsc60z43Ovc6xz4TOtyDOtyDOsc69zqzOs869z4nPg863IM+Ezr/PhSAlczogJWQiCisKKyN+IG1zZ2lkICJkYmc6ICVzIgorI34gbXNnc3RyICJkYmc6ICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIG9wZW4gdG1wZmlsZSAoY29udHJvbCksICVzIgorI34gbXNnc3RyICLOsc+Azq3PhM+Fz4fOtSDPhM6/IM6szr3Ov865zrPOvM6xIM+Ezr/PhSDPgM+Bzr/Pg8+Jz4HOuc69zr/PjSDOsc+Bz4fOtc6vzr/PhSB0bXBmaWxlIChjb250cm9sKSwgJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gb3BlbiB0bXBmaWxlIChkYXRhKSwgJXMiCisjfiBtc2dzdHIgIs6xz4DOrc+Ez4XPh861IM+Ezr8gzqzOvc6/zrnOs868zrEgz4TOv8+FIM+Az4HOv8+Dz4nPgc65zr3Ov8+NIM6xz4HPh861zq/Ov8+FIHRtcGZpbGUgKGRhdGEpLCAlcyIKKworI34gbXNnaWQgImludmFsaWQgbnVtYmVyIGZvciAtLWNvbW1hbmQtZmQiCisjfiBtc2dzdHIgIs68zrcgzq3Os866z4XPgc6/z4IgzrHPgc65zrjOvM+Mz4IgzrPOuc6xIM+Ezr8gLS1jb21tYW5kLWZkIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHJld2luZCBhdCBzdGFydCBvZiB2c25wcmludGYiCisjfiBtc2dzdHIgIs6xzrTPjc69zrHPhM63IM63IM61z4DOuc+Dz4TPgc6/z4bOriDPg8+EzrfOvSDOsc+Bz4fOriDPhM6/z4Ugdm5zcHJpbnRmIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHRydW5jYXRlIGluIHZzbnByaW50ZiIKKyN+IG1zZ3N0ciAizrHOtM+Nzr3Osc+EzrcgzrcgzrHPgM6/zrrOv8+Azq4gz4PPhM6/IHZuc3ByaW50ZiIKKworI34gbXNnaWQgIndyaXRlIGVycm9yIGluIHZzbnByaW50ZiIKKyN+IG1zZ3N0ciAiz4PPhs6szrvOvM6xIM61zrPOs8+BzrHPhs6uz4Igz4PPhM6/IHZzbnByaW50ZiIKKworI34gbXNnaWQgInVuYWJsZSB0byBzdGF0IGluIHZzbnByaW50ZiIKKyN+IG1zZ3N0ciAizrHOtM+Nzr3Osc+EzrcgzrcgzrXOvs6xzrrPgc6vzrLPic+Dzrcgz4PPhM6/IHZzbnByaW50ZiIKKworI34gbXNnaWQgInVuYWJsZSB0byByZXdpbmQgaW4gdnNucHJpbnRmIgorI34gbXNnc3RyICLOsc60z43Ovc6xz4TOtyDOtyDOtc+AzrnPg8+Ez4HOv8+Gzq4gz4PPhM6/IHZuc3ByaW50ZiIKKworI34gbXNnaWQgInJlYWQgZXJyb3IgaW4gdnNucHJpbnRmIHRydW5jYXRlZCIKKyN+IG1zZ3N0ciAiz4PPhs6szrvOvM6xIM6xzr3OrM6zzr3Pic+DzrfPgiDPg8+Ezr8gzrrOv868zrzOrc69zr8gdm5zcHJpbnRmIgorCisjfiBtc2dpZCAiU3lzdGVtIGVycm9yIG5vLiVkIgorI34gbXNnc3RyICLOo8+GzqzOu868zrEgz4PPhc+Dz4TOrs68zrHPhM6/z4IgzrHPgS4lZCIKKworI34gbXNnaWQgIlNpZ25hbCBuby4lZCIKKyN+IG1zZ3N0ciAizqPOrs68zrEgzrHPgS4lZCIKKworI34gbXNnaWQgImRwa2c6IHdhcm5pbmcgLSAlcyByZXR1cm5lZCBlcnJvciBleGl0IHN0YXR1cyAlZFxuIgorI34gbXNnc3RyICJkcGtnOiDPgM+Bzr/Otc65zrTOv8+Azr/Or863z4POtyAtIM+Ezr8gJXMgzrXPgM6tz4PPhM+BzrXPiM61IM66zrHPhM6sz4PPhM6xz4POtyDOu86szrjOv8+Fz4IgJWRcbiIKKworI34gbXNnaWQgImRwa2c6IHdhcm5pbmcgLSAlcyBraWxsZWQgYnkgc2lnbmFsICglcyklc1xuIgorI34gbXNnc3RyICJkcGtnOiDPgM+Bzr/Otc65zrTOv8+Azr/Or863z4POtyAtIM+Ezr8gJXMgz4POus6/z4TPjs64zrfOus61IM6xz4DPjCDPg86uzrzOsSAoJXMpJXNcbiIKKworI34gbXNnaWQgImZhaWxlZCB0byByZWFkIGAlcycgYXQgbGluZSAlZCIKKyN+IG1zZ3N0ciAizrHPgM6/z4TPhc+Hzq/OsSDOsc69zqzOs869z4nPg863z4IgYCVzJyDPg8+EzrcgzrPPgc6xzrzOvM6uICVkIgorCisjfiBtc2dpZCAicGFyc2UgZXJyb3IsIGluIGZpbGUgYCUuMjU1cycgbmVhciBsaW5lICVkIgorI34gbXNnc3RyICLPg8+GzqzOu868zrEgcGFyc2UsIM+Dz4TOvyDOsc+Bz4fOtc6vzr8gYCUuMjU1cycgzrrOv869z4TOrCDPg8+EzrcgzrPPgc6xzrzOvM6uICVkIgorCisjfiBtc2dpZCAiIHBhY2thZ2UgYCUuMjU1cyciCisjfiBtc2dzdHIgIiDPgM6xzrrOrc+Ezr8gYCUuMjU1cyciCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gcmVhbGxvYyBmb3IgdmFyaWFibGUgYnVmZmVyIgorI34gbXNnc3RyICLOsc+Azr/PhM+Fz4fOr86xIM61z4DOsc69zrXOus+Hz47Pgc63z4POt8+CIM68zr3Ors68zrfPgiDOs865zrEgz4TOvyDOtc69zrTOuc6szrzOtc+Dzr8gzrzOtc+EzrHOss67zrfPhM+Ozr0iCisKKyN+IG1zZ2lkICJwcm9jZXNzX2FyY2hpdmUgLi4uICBhbHJlYWR5IGRpc2FwcGVhcmVkICEiCisjfiBtc2dzdHIgInByb2Nlc3NfYXJjaGl2ZSAuLi4gIM6uzrTOtyDOtc6+zrHPhs6xzr3Or8+Dz4TOt866zrUgISIKKworI34gbXNnaWQgImdvYmJsZSByZXBsYWNlZCBmaWxlIGAlLjI1NXMnIgorI34gbXNnc3RyICLOsc69zrHOs869z47Pg8+EzrfOus61IM66zrHOuSDOsc6zzr3Ov86uzrjOt866zrUgz4TOvyDOsc+Bz4fOtc6vzr8gYCUuMjUwcyciCisKKyN+IG1zZ2lkICJkcGtnOiAlczogd2FybmluZyAtIGZhaWxlZCB0byByZW1vdmUgYCUuMjUwcyc6ICVzXG4iCisjfiBtc2dzdHIgImRwa2c6ICVzOiDPgM+Bzr/Otc65zrTOv8+Azr/Or863z4POtyAtIM6xz4DOv8+Ez4XPh86vzrEgzrHPhs6xzq/Pgc61z4POt8+CIGAlLjI1MHMnOiAlc1xuIgorCisjfiBtc2dpZCAiLS1hdWRpdCBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudHMiCisjfiBtc2dzdHIgIi0tYXVkaXQgzrTOtc69IM+AzrHOr8+Bzr3Otc65IM66zrHOvc6tzr3OsSDPjM+BzrnPg868zrEiCisKKyN+IG1zZ2lkICItLXlldC10by11bnBhY2sgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnRzIgorI34gbXNnc3RyICItLXlldC10by11bnBhY2sgzrTOtc69IM+AzrHOr8+Bzr3Otc65IM66zrHOvc6tzr3OsSDPjM+BzrnPg868zrEiCisKKyN+IG1zZ2lkICItLWFzc2VydC0qIGRvZXMgbm90IHRha2UgYW55IGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiLS1hc3NlcnQtKiDOtM61zr0gz4DOsc6vz4HOvc61zrkgzrrOsc69zq3Ovc6xIM+Mz4HOuc+DzrzOsSIKKworI34gbXNnaWQgIi0tcHJlZGVwLXBhY2thZ2UgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tcHJlZGVwLXBhY2thZ2UgzrTOtc69IM+AzrHOr8+Bzr3Otc65IM66zrHOvc6tzr3OsSDPjM+BzrnPg868zrEiCisKKyN+IG1zZ2lkICItLXByaW50LWFyY2hpdGVjdHVyZSBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudCIKKyN+IG1zZ3N0ciAiLS1wcmludC1hcmNoaXRlY3R1cmUgzrTOtc69IM+AzrHOr8+Bzr3Otc65IM66zrHOvc6tzr3OsSDPjM+BzrnPg868zrEiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gc3RhdCBpbnN0YWxsZWQgJXMgc2NyaXB0IGAlLjI1MHMnIgorI34gbXNnc3RyICLOsc60z43Ovc6xz4TOtyDOtyDOtc+Nz4HOtc+DzrcgzrrOsc+EzqzPg8+EzrHPg863z4Igz4TOv8+FIM61zrPOus6xz4TOtc+Dz4TOt868zq3Ovc6/z4Ugz4POtc69zrHPgc6vzr/PhSAlcyBgJS4yNTBzJyIKKworI34gbXNnaWQgInVuYWJsZSB0byBzdGF0IG5ldyAlcyBzY3JpcHQgYCUuMjUwcyciCisjfiBtc2dzdHIgIs6xzrTPjc69zrHPhM63IM63IM61z43Pgc61z4POtyDOus6xz4TOrM+Dz4TOsc+DzrfPgiDOvc6tzr/PhSDPg861zr3Osc+Bzq/Ov8+FICVzIGAlLjI1MHMnIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGV4ZWN1dGUgbmV3ICVzIgorI34gbXNnc3RyICLOsc60z43Ovc6xz4TOtyDOtyDOtc66z4TOrc67zrXPg863IM69zq3Ov8+FICVzIgorCisjfiBtc2dpZCAiZHBrZzogd2FybmluZyAtIHVuYWJsZSB0byBzdGF0ICVzIGAlLjI1MHMnOiAlc1xuIgorI34gbXNnc3RyICIiCisjfiAiZHBrZzogz4DPgc6/zrXOuc60zr/PgM6/zq/Ot8+DzrcgLSDOsc60z43Ovc6xz4TOtyDOtyDOtc+Nz4HOtc+DzrcgzrrOsc+EzqzPg8+EzrHPg863z4Igz4TOv8+FICVzIGAlLjI1MHMnOiAlc1xuIgorCisjfiBtc2dpZCAiLS1zZXQtc2VsZWN0aW9ucyBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudCIKKyN+IG1zZ3N0ciAizrcgLS1zZXQtc2VsZWN0aW9ucyDOtM61zr0gz4DOsc6vz4HOvc61zrkgzrrOsc69zq3Ovc6xIM+Mz4HOuc+DzrzOsSIKKworI34gbXNnaWQgIi0tY2xlYXItc2VsZWN0aW9ucyBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudCIKKyN+IG1zZ3N0ciAizrcgzrXOvc+Ezr/Ou86uIC0tY2xlYXItc2VsZWN0aW9ucyDOtM61zr0gz4DOsc6vz4HOvc61zrkgzrrOsc69zq3Ovc6xIM+Mz4HOuc+DzrzOsSIKKworI34gbXNnaWQgIi0tYnVpbGQgbmVlZHMgYSBkaXJlY3RvcnkgYXJndW1lbnQiCisjfiBtc2dzdHIgIs63IC0tYnVpbGQgz4fPgc61zrnOrM62zrXPhM6xzrkgzq3Ovc6xIM+Mz4HOuc+DzrzOsSDOus6xz4TOsc67z4zOs86/z4UiCisKKyN+IG1zZ2lkICIiCisjfiAiZHBrZy1kZWI6IHdhcm5pbmcsIG5vdCBjaGVja2luZyBjb250ZW50cyBvZiBjb250cm9sIGFyZWEuXG4iCisjfiAiZHBrZy1kZWI6IGJ1aWxkaW5nIGFuIHVua25vd24gcGFja2FnZSBpbiBgJXMnLlxuIgorI34gbXNnc3RyICIiCisjfiAiZHBrZy1kZWI6IM+Az4HOv861zrnOtM6/z4DOv86vzrfPg863LCDOtM61IM64zrEgzrPOr869zrXOuSDOrc67zrXOs8+Hzr/PgiDPhM+Jzr0gz4DOtc+BzrnOtc+Hzr/OvM6tzr3Pic69IM+Ezr/PhSDOsc+Bz4fOtc6vzr/PhSAiCisjfiAiY29udHJvbC5cbiIKKyN+ICJkcGtnLWRlYjogzrrOsc+EzrHPg866zrXPhc6uIM6xzrPOvc+Oz4PPhM6/z4Ugz4DOsc66zq3PhM6/z4UgYCVzJy5cbiIKKworI34gbXNnaWQgIkludGVybmFsIGVycm9yLCBjb21wcmVzc190eXBlIGAlaScgdW5rbm93biEiCisjfiBtc2dzdHIgIs61z4PPic+EzrXPgc65zrrPjCDPg8+GzqzOu868zrEsIM6szrPOvc+Jz4PPhM6/IGNvbXByZXNzX3R5cGUgJyVpJyEiCisKKyN+IG1zZ2lkICItLWpvaW4gcmVxdWlyZXMgb25lIG9yIG1vcmUgcGFydCBmaWxlIGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAizrcgLS1qb2luIM6xz4DOsc65z4TOtc6vIM6tzr3OsSDOriDPgM61z4HOuc+Dz4PPjM+EzrXPgc6xIM6xz4HPh861zq/OsSDPhM68zrfOvM6sz4TPic69IM+Jz4Igz4DOsc+BzrHOvM6tz4TPgc6/z4XPgiIKKworI34gbXNnaWQgIi0tbGlzdHEgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnRzIgorI34gbXNnc3RyICLOtyAtLWxpc3RxIM60zrXOvSDPgM6xzq/Pgc69zrXOuSDOus6xzr3Orc69zrEgz4zPgc65z4POvM6xIgorCisjfiBtc2dpZCAiIgorI34gIlxuIgorI34gIkNvcHlyaWdodCAoQykgMTk5NiBLaW0tTWluaCBLYXBsYW4uIgorI34gbXNnc3RyICIiCisjfiAiXG4iCisjfiAiQ29weXJpZ2h0IChDKSAxOTk2IEtpbS1NaW5oIEthcGxhbi4iCisKKyN+IG1zZ2lkICIiCisjfiAiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIFstLV0gWzxkaXJuYW1lPl1cbiIKKyN+ICJcbiIKKyN+ICJPcHRpb25zOlxuIgorI34gIiAgLS11bnNhZmUgICAgIHNldCBzb21lIGFkZGl0aW9uYWwgcG9zc2libHkgdXNlZnVsIG9wdGlvbnMuXG4iCisjfiAiICAgICAgICAgICAgICAgd2FybmluZzogdGhpcyBvcHRpb24gbWF5IGdhcmJsZSBhbiBvdGhlcndpc2UgY29ycmVjdCAiCisjfiAiZmlsZS5cbiIKKyN+ICIgIC0taGVscCAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorI34gIiAgLS12ZXJzaW9uICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisjfiBtc2dzdHIgIiIKKyN+ICLOp8+Bzq7Pg863OiAlcyBbPG9wdGlvbj4gLi4uXSBbLS1dIFs8ZGlybmFtZT5dXG4iCisjfiAiXG4iCisjfiAizpXPgM65zrvOv86zzq3PgjpcbiIKKyN+ICIgIC0tdW5zYWZlICAgICDPgM+Bzr/Pg860zrnPjM+BzrnPg861IM68zrXPgc65zrrOrc+CIM61z4DOuc+AzrvOrc6/zr0gz4DOuc64zrHOvc+Mzr0gz4fPgc6uz4POuc68zrXPgiDOtc+AzrnOu86/zrPOrc+CLlxuIgorI34gIiAgICAgICAgICAgICAgIM+Az4HOv861zrnOtM6/z4DOv86vzrfPg863OiDOsc+Fz4TOriDOtyDOtc+AzrnOu86/zrPOriDOvM+Azr/Pgc61zq8gzr3OsSBnYXJibGUgzq3Ovc6xIM66zrHPhM6sIM+EzrEgIgorI34gIs6szrvOu86xIM+Dz4nPg8+Ez4wgzrHPgc+HzrXOr86/LlxuIgorI34gIiAgLS1oZWxwICAgICAgIM61zrzPhs6szr3Ouc+Dzrcgz4TOv8+FIM+AzrHPgc+Mzr3PhM6/z4IgzrzOt869z43OvM6xz4TOv8+CIM6yzr/Ors64zrXOuc6xz4IuXG4iCisjfiAiICAtLXZlcnNpb24gICAgzrXOvM+GzqzOvc65z4POtyDPhM63z4Igzq3Ous60zr/Pg863z4IuXG4iCisKKyN+IG1zZ2lkICJ0cnkgZGVsZXRpbmcgJXMiCisjfiBtc2dzdHIgIs+Az4HOv8+Dz4DOrM64zrXOuc6xIM60zrnOsc6zz4HOsc+Gzq7PgiDPhM6/z4UgJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gaW5zdGFsbCAlczsgaXQgd2lsbCBiZSBsZWZ0IGFzICVzOiAlcyIKKyN+IG1zZ3N0ciAizrHOtM+Nzr3Osc+EzrcgzrcgzrXOs866zrHPhM6sz4PPhM6xz4POtyDPhM6/z4UgJXM7IM64zrEgz4DOsc+BzrHOvM61zq/Ovc61zrkgz4nPgiAlczogJXMiCisKKyN+IG1zZ2lkICIlczogdW5hYmxlIHRvIHVubG9jayAlczogJXMiCisjfiBtc2dzdHIgIiVzOiDOsc60z43Ovc6xz4TOvyDPhM6/IM6+zrXOus67zrXOr860z4nOvM6xIM+Ezr/PhSAlczogJXMiCisKKyN+IG1zZ2lkICIlcyAtIHN0YXR1cyBpcyAlcy4iCisjfiBtc2dzdHIgIiVzIC0gzrcgzrrOsc+EzqzPg8+EzrHPg863IM61zq/Ovc6xzrkgJXMuIgorCisjfiBtc2dpZCAiIGxpbmsgdW5yZWFkYWJsZSAtICVzIgorI34gbXNnc3RyICLOvyDPg8+Nzr3OtM61z4POvM6/z4IgzrTOtc69IM61zq/Ovc6xzrkgzrHOvc6xzrPOvc+Oz4POuc68zr/PgiAtICVzIgorCisjfiBtc2dpZCAiIgorI34gIndhcm5pbmc6ICVzIGlzIHN1cHBvc2VkIHRvIGJlIGEgc3ltbGluayB0byAlcywgXG4iCisjfiAib3Igbm9uZXhpc3RlbnQ7IGhvd2V2ZXIsIHJlYWRsaW5rIGZhaWxlZDogJXMiCisjfiBtc2dzdHIgIiIKKyN+ICLPgM+Bzr/Otc65zrTOv8+Azr/Or863z4POtzogz4TOvyAlcyDPhc+Azr/PhM6vzrjOtc+EzrHOuSDPjM+EzrkgzrXOr869zrHOuSDOrc69zrHPgiDPg8+FzrzOss6/zrvOuc66z4zPgiDPg8+Nzr3OtM61z4POvM6/z4IgzrPOuc6xICIKKyN+ICLPhM6/ICVzLCBcbiIKKyN+ICLOriDOtM61zr0gz4XPgM6sz4HPh861zrkgz4zOvM+Jz4IsIM6xz4DOv8+Ez4XPh86vzrEgz4TOv8+FIHJlYWRsaW5rOiAlcyIKKworI34gbXNnaWQgIkxlYXZpbmcgJXMgKCVzKSBwb2ludGluZyB0byAlcy4iCisjfiBtc2dzdHIgIs6Rz4bOrs69z4kgz4TOvyAlcyAoJXMpIM69zrEgz4DOsc+BzrHPgM6tzrzPgM61zrkgz4PPhM6/ICVzLiIKKworI34gbXNnaWQgIlVwZGF0aW5nICVzICglcykgdG8gcG9pbnQgdG8gJXMuIgorI34gbXNnc3RyICLOlc69zrfOvM6tz4HPic+Dzrcgz4TOv8+FICVzICglcykgz47Pg8+EzrUgzr3OsSDPgM6xz4HOsc+Azq3OvM+AzrXOuSDPg8+Ezr8gJXMuIgorCisjfiBtc2dpZCAiUmVtb3ZpbmcgJXMgKCVzKSwgbm90IGFwcHJvcHJpYXRlIHdpdGggJXMuIgorI34gbXNnc3RyICLOlyDOsc+GzrHOr8+BzrXPg863IM+Ezr/PhSAlcyAoJXMpLCDOtM61zr0gzrXOr869zrHOuSDOus6xz4TOrM67zrvOt867zrcgzrzOtSDPhM6/ICVzLiIKKworI34gbXNnaWQgIiIKKyN+ICJDaGVja2luZyBhdmFpbGFibGUgdmVyc2lvbnMgb2YgJXMsIHVwZGF0aW5nIGxpbmtzIGluICVzIC4uLlxuIgorI34gIihZb3UgbWF5IG1vZGlmeSB0aGUgc3ltbGlua3MgdGhlcmUgeW91cnNlbGYgaWYgZGVzaXJlZCAtIHNlZSBgbWFuIGxuJy4pIgorI34gbXNnc3RyICIiCisjfiAizojOu861zrPPh86/z4IgzrTOuc6xzrjOrc+DzrnOvM+Jzr0gzrXOus60z4zPg861z4nOvSDPhM6/z4UgJXMsIM61zr3Ot868zq3Pgc+Jz4POtyDPg8+Fzr3OtM6tz4POvM+Jzr0gz4PPhM6/ICVzIC4uLlxuIgorI34gIijOnM+Azr/Pgc61zq/PhM61IM6xzr0gzrjOrc67zrXPhM61IM69zrEgz4TPgc6/z4DOv8+Azr/Ouc6uz4POtc+EzrUgzr/OuSDOr860zrnOv864IM+Ezr/Phc+CIM+Dz4XOvM6yzr/Ou865zrrOv8+Nz4Igz4PPhc69zrTOrc+DzrzOv8+Fz4IgIgorI34gIs61zrrOtc6vICAtIM60zrXOr8+EzrUgz4QgYG1hbiBsbicuKSIKKworI34gbXNnaWQgInNsYXZlIGxpbmsgbmFtZSAlcyBkdXBsaWNhdGVkIgorI34gbXNnc3RyICLPhM6/IM+Mzr3Ov868zrEgz4TOv8+FIM60zrXPhc+EzrXPgc61z43Ov869z4TOv8+CIM+Dz4XOvM6yzr/Ou865zrrOv8+NIM+Dz4XOvc60zq3Pg868zr/PhSAlcyDOtc+AzrHOvc6xzrvOsc68zrLOrM69zrXPhM6xzrkiCisKKyN+IG1zZ2lkICJSZWNvdmVyaW5nIGZyb20gcHJldmlvdXMgZmFpbGVkIHVwZGF0ZSBvZiAlcyAuLi4iCisjfiBtc2dzdHIgIs6Rzr3OrM66zrHOvM+IzrcgzrHPgM+MIM+Az4HOv863zrPOv8+NzrzOtc69zrcgzrHPgM6/z4TPhc+HzrfOvM6tzr3OtyDOtc69zrfOvM6tz4HPic+Dzrcgz4TOv8+FICVzIC4uLiIKKworI34gbXNnaWQgInVuYWJsZSB0byBvcGVuICVzIGZvciB3cml0ZTogJXMiCisjfiBtc2dzdHIgIs6xzrTPjc69zrHPhM6/IM+Ezr8gzqzOvc6/zrnOs868zrEgz4TOv8+FICVzIM6zzrnOsSDOtc6zzrPPgc6xz4bOrjogJXMiCisKKyN+IG1zZ2lkICJMYXN0IHBhY2thZ2UgcHJvdmlkaW5nICVzICglcykgcmVtb3ZlZCwgZGVsZXRpbmcgaXQuIgorI34gbXNnc3RyICLOpM6/IM+EzrXOu861z4XPhM6xzq/OvyDPgM6xzrrOrc+Ezr8gz4DOv8+FIM+AzrHPgc6tz4fOtc65IM+Ezr8gJXMgKCVzKSDOsc+GzrHOuc+Bzq3OuM63zrrOtSwgz4TOvyDOtM65zrHOs8+BzqzPhs+JLiIKKworI34gbXNnaWQgIiIKKyN+ICJUaGVyZSBpcyBvbmx5IDEgcHJvZ3JhbSB3aGljaCBwcm92aWRlcyAlc1xuIgorI34gIiglcykuIE5vdGhpbmcgdG8gY29uZmlndXJlLlxuIgorI34gbXNnc3RyICIiCisjfiAizqXPgM6sz4HPh861zrkgzrzPjM69zr8gMSDPgM+Bz4zOs8+BzrHOvM68zrEgz4DOv8+FIM+AzrHPgc6tz4fOtc65IM+Ezr8gJXNcbiIKKyN+ICIoJXMpLiDOlM61zr0gz4XPgM6sz4HPh861zrkgzrrOrM+EzrkgzrPOuc6xIM+Bz43OuM68zrnPg863LlxuIgorCisjfiBtc2dpZCAiIgorI34gIlRoZXJlIGFyZSAlcyBhbHRlcm5hdGl2ZXMgd2hpY2ggcHJvdmlkZSBgJXMnLlxuIgorI34gIlxuIgorI34gIiAgU2VsZWN0aW9uICAgIEFsdGVybmF0aXZlXG4iCisjfiAiLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiIKKyN+IG1zZ3N0ciAiIgorI34gIs6lz4DOrM+Bz4fOv8+FICVzIM61zr3Osc67zrvOsc66z4TOuc66zq3PgiDPgM6/z4Ugz4DOsc+Bzq3Ph86/z4XOvSDPhM6/IGAlcycuXG4iCisjfiAiXG4iCisjfiAiICDOlc+AzrnOu86/zrPOriAgICDOlc69zrHOu867zrHOus+EzrnOus6uXG4iCisjfiAiLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiIKKworI34gbXNnaWQgImVycm9yIG9yIGVvZiByZWFkaW5nICVzIGZvciAlcyAoJXMpIgorI34gbXNnc3RyICLPg8+GzqzOu868zrEgzq4gZW9mIM66zrHPhM6sIM+EzrfOvSDOsc69zqzOs869z4nPg863IM+Ezr/PhSAlcyDOs865zrEgJXMgKCVzKSIKKworI34gbXNnaWQgIm1pc3NpbmcgbmV3bGluZSBhZnRlciAlcyIKKyN+IG1zZ3N0ciAizrHPgM6/z4XPg86vzrEgbmV3bGluZSDOvM61z4TOrCDPhM6/ICVzIgorCisjfiBtc2dpZCAiU2VyaW91cyBwcm9ibGVtOiAlcyIKKyN+IG1zZ3N0ciAizqPOv86yzrHPgc+MIM+Az4HPjM6yzrvOt868zrE6ICVzIgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9wby9lbkBib2xkcXVvdC5oZWFkZXIgYi9kcGtnLTEuMTYuMS4xL3BvL2VuQGJvbGRxdW90LmhlYWRlcgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mZWRiNmEwCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9wby9lbkBib2xkcXVvdC5oZWFkZXIKQEAgLTAsMCArMSwyNSBAQAorIyBBbGwgdGhpcyBjYXRhbG9nICJ0cmFuc2xhdGVzIiBhcmUgcXVvdGF0aW9uIGNoYXJhY3RlcnMuCisjIFRoZSBtc2dpZHMgbXVzdCBiZSBBU0NJSSBhbmQgdGhlcmVmb3JlIGNhbm5vdCBjb250YWluIHJlYWwgcXVvdGF0aW9uCisjIGNoYXJhY3RlcnMsIG9ubHkgc3Vic3RpdHV0ZXMgbGlrZSBncmF2ZSBhY2NlbnQgKDB4NjApLCBhcG9zdHJvcGhlICgweDI3KQorIyBhbmQgZG91YmxlIHF1b3RlICgweDIyKS4gVGhlc2Ugc3Vic3RpdHV0ZXMgbG9vayBzdHJhbmdlOyBzZWUKKyMgaHR0cDovL3d3dy5jbC5jYW0uYWMudWsvfm1nazI1L3Vjcy9xdW90ZXMuaHRtbAorIworIyBUaGlzIGNhdGFsb2cgdHJhbnNsYXRlcyBncmF2ZSBhY2NlbnQgKDB4NjApIGFuZCBhcG9zdHJvcGhlICgweDI3KSB0bworIyBsZWZ0IHNpbmdsZSBxdW90YXRpb24gbWFyayAoVSsyMDE4KSBhbmQgcmlnaHQgc2luZ2xlIHF1b3RhdGlvbiBtYXJrIChVKzIwMTkpLgorIyBJdCBhbHNvIHRyYW5zbGF0ZXMgcGFpcnMgb2YgYXBvc3Ryb3BoZSAoMHgyNykgdG8KKyMgbGVmdCBzaW5nbGUgcXVvdGF0aW9uIG1hcmsgKFUrMjAxOCkgYW5kIHJpZ2h0IHNpbmdsZSBxdW90YXRpb24gbWFyayAoVSsyMDE5KQorIyBhbmQgcGFpcnMgb2YgcXVvdGF0aW9uIG1hcmsgKDB4MjIpIHRvCisjIGxlZnQgZG91YmxlIHF1b3RhdGlvbiBtYXJrIChVKzIwMUMpIGFuZCByaWdodCBkb3VibGUgcXVvdGF0aW9uIG1hcmsgKFUrMjAxRCkuCisjCisjIFdoZW4gb3V0cHV0IHRvIGFuIFVURi04IHRlcm1pbmFsLCB0aGUgcXVvdGF0aW9uIGNoYXJhY3RlcnMgYXBwZWFyIHBlcmZlY3RseS4KKyMgV2hlbiBvdXRwdXQgdG8gYW4gSVNPLTg4NTktMSB0ZXJtaW5hbCwgdGhlIHNpbmdsZSBxdW90YXRpb24gbWFya3MgYXJlCisjIHRyYW5zbGl0ZXJhdGVkIHRvIGFwb3N0cm9waGVzIChieSBpY29udiBpbiBnbGliYyAyLjIgb3IgbmV3ZXIpIG9yIHRvCisjIGdyYXZlL2FjdXRlIGFjY2VudCAoYnkgbGliaWNvbnYpLCBhbmQgdGhlIGRvdWJsZSBxdW90YXRpb24gbWFya3MgYXJlCisjIHRyYW5zbGl0ZXJhdGVkIHRvIDB4MjIuCisjIFdoZW4gb3V0cHV0IHRvIGFuIEFTQ0lJIHRlcm1pbmFsLCB0aGUgc2luZ2xlIHF1b3RhdGlvbiBtYXJrcyBhcmUKKyMgdHJhbnNsaXRlcmF0ZWQgdG8gYXBvc3Ryb3BoZXMsIGFuZCB0aGUgZG91YmxlIHF1b3RhdGlvbiBtYXJrcyBhcmUKKyMgdHJhbnNsaXRlcmF0ZWQgdG8gMHgyMi4KKyMKKyMgVGhpcyBjYXRhbG9nIGZ1cnRoZXJtb3JlIGRpc3BsYXlzIHRoZSB0ZXh0IGJldHdlZW4gdGhlIHF1b3RhdGlvbiBtYXJrcyBpbgorIyBib2xkIGZhY2UsIGFzc3VtaW5nIHRoZSBWVDEwMC9YVGVybSBlc2NhcGUgc2VxdWVuY2VzLgorIwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9wby9lbkBxdW90LmhlYWRlciBiL2Rwa2ctMS4xNi4xLjEvcG8vZW5AcXVvdC5oZWFkZXIKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTk2NDdmYwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvcG8vZW5AcXVvdC5oZWFkZXIKQEAgLTAsMCArMSwyMiBAQAorIyBBbGwgdGhpcyBjYXRhbG9nICJ0cmFuc2xhdGVzIiBhcmUgcXVvdGF0aW9uIGNoYXJhY3RlcnMuCisjIFRoZSBtc2dpZHMgbXVzdCBiZSBBU0NJSSBhbmQgdGhlcmVmb3JlIGNhbm5vdCBjb250YWluIHJlYWwgcXVvdGF0aW9uCisjIGNoYXJhY3RlcnMsIG9ubHkgc3Vic3RpdHV0ZXMgbGlrZSBncmF2ZSBhY2NlbnQgKDB4NjApLCBhcG9zdHJvcGhlICgweDI3KQorIyBhbmQgZG91YmxlIHF1b3RlICgweDIyKS4gVGhlc2Ugc3Vic3RpdHV0ZXMgbG9vayBzdHJhbmdlOyBzZWUKKyMgaHR0cDovL3d3dy5jbC5jYW0uYWMudWsvfm1nazI1L3Vjcy9xdW90ZXMuaHRtbAorIworIyBUaGlzIGNhdGFsb2cgdHJhbnNsYXRlcyBncmF2ZSBhY2NlbnQgKDB4NjApIGFuZCBhcG9zdHJvcGhlICgweDI3KSB0bworIyBsZWZ0IHNpbmdsZSBxdW90YXRpb24gbWFyayAoVSsyMDE4KSBhbmQgcmlnaHQgc2luZ2xlIHF1b3RhdGlvbiBtYXJrIChVKzIwMTkpLgorIyBJdCBhbHNvIHRyYW5zbGF0ZXMgcGFpcnMgb2YgYXBvc3Ryb3BoZSAoMHgyNykgdG8KKyMgbGVmdCBzaW5nbGUgcXVvdGF0aW9uIG1hcmsgKFUrMjAxOCkgYW5kIHJpZ2h0IHNpbmdsZSBxdW90YXRpb24gbWFyayAoVSsyMDE5KQorIyBhbmQgcGFpcnMgb2YgcXVvdGF0aW9uIG1hcmsgKDB4MjIpIHRvCisjIGxlZnQgZG91YmxlIHF1b3RhdGlvbiBtYXJrIChVKzIwMUMpIGFuZCByaWdodCBkb3VibGUgcXVvdGF0aW9uIG1hcmsgKFUrMjAxRCkuCisjCisjIFdoZW4gb3V0cHV0IHRvIGFuIFVURi04IHRlcm1pbmFsLCB0aGUgcXVvdGF0aW9uIGNoYXJhY3RlcnMgYXBwZWFyIHBlcmZlY3RseS4KKyMgV2hlbiBvdXRwdXQgdG8gYW4gSVNPLTg4NTktMSB0ZXJtaW5hbCwgdGhlIHNpbmdsZSBxdW90YXRpb24gbWFya3MgYXJlCisjIHRyYW5zbGl0ZXJhdGVkIHRvIGFwb3N0cm9waGVzIChieSBpY29udiBpbiBnbGliYyAyLjIgb3IgbmV3ZXIpIG9yIHRvCisjIGdyYXZlL2FjdXRlIGFjY2VudCAoYnkgbGliaWNvbnYpLCBhbmQgdGhlIGRvdWJsZSBxdW90YXRpb24gbWFya3MgYXJlCisjIHRyYW5zbGl0ZXJhdGVkIHRvIDB4MjIuCisjIFdoZW4gb3V0cHV0IHRvIGFuIEFTQ0lJIHRlcm1pbmFsLCB0aGUgc2luZ2xlIHF1b3RhdGlvbiBtYXJrcyBhcmUKKyMgdHJhbnNsaXRlcmF0ZWQgdG8gYXBvc3Ryb3BoZXMsIGFuZCB0aGUgZG91YmxlIHF1b3RhdGlvbiBtYXJrcyBhcmUKKyMgdHJhbnNsaXRlcmF0ZWQgdG8gMHgyMi4KKyMKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvcG8vZW8uZ21vIGIvZHBrZy0xLjE2LjEuMS9wby9lby5nbW8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzU0ODU2YgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvcG8vZW8uZ21vCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvcG8vZW8ucG8gYi9kcGtnLTEuMTYuMS4xL3BvL2VvLnBvCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjU4MGJlN2YKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3BvL2VvLnBvCkBAIC0wLDAgKzEsNjUwNyBAQAorIyBFc3BlcmFudG8gdHJhbnNsYXRpb24gb2YgZHBrZworIyBDb3B5cmlnaHQgKEMpIDIwMDksIDIwMTAgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uIEluYy4KKyMgVGhpcyBmaWxlIGlzIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBzYW1lIGxpY2Vuc2UgYXMgdGhlIGRwa2cgcGFja2FnZS4KKyMgRmVsaXBlIENhc3RybyA8ZmVmY2FzQGdtYWlsLmNvbT4sIDIwMDksIDIwMTAuCisjCittc2dpZCAiIgorbXNnc3RyICIiCisiUHJvamVjdC1JZC1WZXJzaW9uOiBkcGtnXG4iCisiUmVwb3J0LU1zZ2lkLUJ1Z3MtVG86IGRlYmlhbi1kcGtnQGxpc3RzLmRlYmlhbi5vcmdcbiIKKyJQT1QtQ3JlYXRpb24tRGF0ZTogMjAxMS0xMC0xNCAwNzoxMSswMjAwXG4iCisiUE8tUmV2aXNpb24tRGF0ZTogMjAxMC0xMi0yMCAwMTo0NyswMTAwXG4iCisiTGFzdC1UcmFuc2xhdG9yOiBGZWxpcGUgQ2FzdHJvIDxmZWZjYXNAZ21haWwuY29tPlxuIgorIkxhbmd1YWdlLVRlYW06IEVzcGVyYW50byA8ZGViaWFuLWwxMG4tZXNwZXJhbnRvQGxpc3RzLmRlYmlhbi5vcmc+XG4iCisiTGFuZ3VhZ2U6IGVvXG4iCisiTUlNRS1WZXJzaW9uOiAxLjBcbiIKKyJDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9VVRGLThcbiIKKyJDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiA4Yml0XG4iCisiUGx1cmFsLUZvcm1zOiBucGx1cmFscz0yOyBwbHVyYWw9KG4hPTEpO1xuIgorCisjOiBsaWIvZHBrZy9hci5jOjY2CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgY2hhcmFjdGVyICclYycgaW4gYXJjaGl2ZSAnJS4yNTBzJyBtZW1iZXIgJyUuMTZzJyBzaXplIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2FyLmM6ODEgbGliL2Rwa2cvYXIuYzo5NyBsaWIvZHBrZy9hci5jOjEwOCBsaWIvZHBrZy9hci5jOjExMgorIzogbGliL2Rwa2cvYXIuYzoxMzQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIGZpbGUgJyVzJyIKK21zZ3N0ciAibWFsZWJsYXMgc2tyaWJpIGRvc2llcm9uICclcyciCisKKyM6IGxpYi9kcGtnL2FyLmM6OTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZ2VuZXJhdGVkIGNvcnJ1cHQgYXIgaGVhZGVyIGZvciAnJXMnIgorbXNnc3RyICJrcmVpcyByb21waXRhbiBrYXBsaW5pb24gYXIgcG9yICclcyciCisKKyM6IGxpYi9kcGtnL2FyLmM6MTIzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBmc3RhdCBhciBtZW1iZXIgZmlsZSAoJXMpIgorbXNnc3RyICJtYWxzdWtjZXNpcyBhcGxpa2kgZnN0YXQgYWwgZG9zaWVybyBhbm8gZGUgYXIgKCVzKSIKKworIzogbGliL2Rwa2cvYXIuYzoxMzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byBmc3RhdCBhciBtZW1iZXIgZmlsZSAoJXMpIgorbXNnaWQgImFyIG1lbWJlciBmaWxlICglcykiCittc2dzdHIgIm1hbHN1a2Nlc2lzIGFwbGlraSBmc3RhdCBhbCBkb3NpZXJvIGFubyBkZSBhciAoJXMpIgorCisjOiBsaWIvZHBrZy9idWZmZXIuYzoxOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgb24gYnVmZmVyIGNvcHkgZm9yICVzIgorbXNnc3RyICJtYWxzdWtjZXNpcyBsZWdpIGJ1ZnJhbiBrb3Bpb24gcG9yICVzIgorCisjOiBsaWIvZHBrZy9idWZmZXIuYzoyMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIGluIHdyaXRlIG9uIGJ1ZmZlciBjb3B5IGZvciAlcyIKK21zZ3N0ciAibWFsc3VrY2VzaXMgc2tyaWJpIGJ1ZnJhbiBrb3Bpb24gcG9yICVzIgorCisjOiBsaWIvZHBrZy9idWZmZXIuYzoyMjAKKyMsIGMtZm9ybWF0Cittc2dpZCAic2hvcnQgcmVhZCBvbiBidWZmZXIgY29weSBmb3IgJXMiCittc2dzdHIgImJpdG9rbyBsZWdpdGEgZW4gYnVmcmEga29waW8gcG9yICVzIgorCisjOiBsaWIvZHBrZy9idWZmZXIuYzoyODgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byBleGVjIHRhciIKK21zZ2lkICJmYWlsZWQgdG8gc2VlayAlcyIKK21zZ3N0ciAibWFsc3VrY2VzbyBkdW0gbGFuxIlvIGRlIHRhciIKKworIzogbGliL2Rwa2cvY29tbWFuZC5jOjE3OCBsaWIvZHBrZy9jb21tYW5kLmM6MjA0IHNyYy9oZWxwLmM6NjIxCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjk4IHNyYy9wcm9jZXNzYXJjLmM6MTM4IHNyYy9wcm9jZXNzYXJjLmM6NDMyCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjgzOSBkcGtnLWRlYi9idWlsZC5jOjQ1OSBkcGtnLWRlYi9idWlsZC5jOjUzOAorIzogZHBrZy1kZWIvYnVpbGQuYzo1NjEgZHBrZy1kZWIvZXh0cmFjdC5jOjMxNyBkcGtnLWRlYi9pbmZvLmM6NjUKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzo2OSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NDU3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBleGVjdXRlICVzICglcykiCittc2dzdHIgIm1hbGVibGFzIGxhbsSJaSAlcyAoJXMpIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBkZWNvbXByZXNzaW9uIgorbXNnc3RyICIlczogbWFsa29tcGFrdGlnbyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzo4OQorIywgYy1mb3JtYXQKK21zZ2lkICIlczogY29tcHJlc3Npb24iCittc2dzdHIgIiVzOiBrb21wYWt0YWRvIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjExMgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZXJyb3IgYmluZGluZyBpbnB1dCB0byBnemlwIHN0cmVhbSIKK21zZ3N0ciAiJXM6IGVyYXJvIGR1bSBrdW5saWdhZG8gZGUgZW5pZ28gYWwgZ3ppcC1mbHVvIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCByZWFkIGVycm9yOiAnJXMnIgorbXNnc3RyICIlczogaW50ZXJuYSBsZWctZXJhcm8gZGUgZ3ppcDogJyVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxMzIgbGliL2Rwa2cvY29tcHJlc3MuYzoxMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgd3JpdGUgZXJyb3IiCittc2dzdHIgIiVzOiBpbnRlcm5hIHNrcmliLWVyYXJvIGRlIGd6aXAiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTUwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvciBiaW5kaW5nIG91dHB1dCB0byBnemlwIHN0cmVhbSIKK21zZ3N0ciAiJXM6IGVyYXJvIGR1bSBrdW5saWdhZG8gZGUgZWxpZ28gYWwgZ3ppcC1mbHVvIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE1NworIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCByZWFkIGVycm9yIgorbXNnc3RyICIlczogaW50ZXJuYSBsZWctZXJhcm8gZGUgZ3ppcCIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxNjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgd3JpdGUgZXJyb3I6ICclcyciCittc2dzdHIgIiVzOiBpbnRlcm5hIHNrcmliLWVyYXJvIGRlIGd6aXA6ICclcyciCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTgwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHdyaXRlIGVycm9yOiAlcyIKK21zZ3N0ciAiJXM6IGludGVybmEgc2tyaWItZXJhcm8gZGUgZ3ppcDogJXMiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjIwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvciBiaW5kaW5nIGlucHV0IHRvIGJ6aXAyIHN0cmVhbSIKK21zZ3N0ciAiJXM6IGVyYXJvIGR1bSBrdW5saWdhZG8gZGUgZW5pZ28gYWwgYnppcDItZmx1byIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIHJlYWQgZXJyb3I6ICclcyciCittc2dzdHIgIiVzOiBpbnRlcm5hIGxlZy1lcmFybyBkZSBiemlwMjogJyVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyNDAgbGliL2Rwa2cvY29tcHJlc3MuYzoyNDQgbGliL2Rwa2cvY29tcHJlc3MuYzoyOTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIHdyaXRlIGVycm9yIgorbXNnc3RyICIlczogaW50ZXJuYSBza3JpYi1lcmFybyBkZSBiemlwMiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yIGJpbmRpbmcgb3V0cHV0IHRvIGJ6aXAyIHN0cmVhbSIKK21zZ3N0ciAiJXM6IGVyYXJvIGR1bSBrdW5saWdhZG8gZGUgZWxpZ28gYWwgYnppcDItZmx1byIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIHJlYWQgZXJyb3IiCittc2dzdHIgIiVzOiBpbnRlcm5hIGxlZy1lcmFybyBkZSBiemlwMiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyNzUgbGliL2Rwa2cvY29tcHJlc3MuYzoyODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIHdyaXRlIGVycm9yOiAnJXMnIgorbXNnc3RyICIlczogaW50ZXJuYSBza3JpYi1lcmFybyBkZSBiemlwMjogJyVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyODIKK21zZ2lkICJ1bmV4cGVjdGVkIGJ6aXAyIGVycm9yIgorbXNnc3RyICJuZWF0ZW5kaXRhIGVyYXJvIGRlIGJ6aXAyIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjY4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1cGRhdGVzIGRpcmVjdG9yeSBjb250YWlucyBmaWxlIGAlLjI1MHMnIHdob3NlIG5hbWUgaXMgdG9vIGxvbmcgKGxlbmd0aD0lZCwgIgorIm1heD0lZCkiCittc2dzdHIgIiIKKyLEnWlzZGF0aWdhIGRvc2llcnVqbyBlbmhhdmFzIGxhIGRvc2llcm9uICclLjI1MHMnLCBraWVzIG5vbW8gZXN0YXMgdHJvIGxvbmdhICIKKyIobG9uZ2Vjbz0lZCwgbWFrcz0lZCkiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVwZGF0ZXMgZGlyZWN0b3J5IGNvbnRhaW5zIGZpbGVzIHdpdGggZGlmZmVyZW50IGxlbmd0aCBuYW1lcyAoYm90aCAlZCBhbmQgJWQpIgorbXNnc3RyICIiCisixJ1pc2RhdGlnYSBkb3NpZXJ1am8gZW5oYXZhcyBkb3NpZXJvam4ga3VuIG1hbHNhbWFqIGxvbmdlY29qIGRlIG5vbW9qIChrYWogJWQgIgorImthaiAlZCkiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHNjYW4gdXBkYXRlcyBkaXJlY3RvcnkgYCUuMjU1cyciCittc2dzdHIgIm5lIGVibGFzIHNrYW5pIGxhIMSdaXNkYXRpZ2FuIGRvc2llcnVqb24gJyUuMjU1cyciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZW1vdmUgaW5jb3Jwb3JhdGVkIHVwZGF0ZSBmaWxlICUuMjU1cyIKK21zZ3N0ciAibWFsc3VrY2VzaXMgZm9yaWdpIGVua29ycGlnaXRhbiDEnWlzZGF0aWdhbiBkb3NpZXJvbiAlLjI1NXMiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTIxIGRwa2ctZGViL2J1aWxkLmM6NDQ3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgYCUuMjU1cyciCittc2dzdHIgIm1hbGVibGFzIGtyZWkgJyUuMjU1cyciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTI1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmaWxsICUuMjUwcyB3aXRoIHBhZGRpbmciCittc2dzdHIgIm1hbGVibGFzIHBsZW5pZ2kgJS4yNTBzIHBlciDFnXRvcGFkbyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxMjcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoICUuMjUwcyBhZnRlciBwYWRkaW5nIgorbXNnc3RyICJtYWxlYmxhcyBlbGJ1ZnJpZ2kgJS4yNTBzIHBvc3QgxZ10b3BhZG8iCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTI5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWVrIHRvIHN0YXJ0IG9mICUuMjUwcyBhZnRlciBwYWRkaW5nIgorbXNnc3RyICJtYWxlYmxhcyByZXRyb2lyaSBhbCBsYSBrb21lbmNvIGRlICUuMjUwcyBwb3N0IMWddG9wYWRvIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjE5NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBsb2NrIGZpbGUgJXMgZm9yIHRlc3RpbmciCittc2dzdHIgIm1hbGVibGFzIG1hbGZlcm1pIMWdbG9zLWRvc2llcm9uICVzIHBvciB0ZXN0YWRvIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjIyMQorbXNnaWQgInVuYWJsZSB0byBvcGVuL2NyZWF0ZSBzdGF0dXMgZGF0YWJhc2UgbG9ja2ZpbGUiCittc2dzdHIgIm1hbGVibGFzIG1hbGZlcm1pL2tyZWkgxZ1sb3Nkb3NpZXJvbiBkZSBzdGF0by1kYXR1bWJhem8iCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjMxCittc2dpZCAieW91IGRvIG5vdCBoYXZlIHBlcm1pc3Npb24gdG8gbG9jayB0aGUgZHBrZyBzdGF0dXMgZGF0YWJhc2UiCittc2dzdHIgInZpIG5lIGhhdmFzIHBlcm1lc29uIHBvciBtYWzFnWxvc2kgbGEgc3RhdG8tZGF0dW1iYXpvbiBkZSBkcGtnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjIzMworIywgZnV6enkKKyN8IG1zZ2lkICJ1bmFibGUgdG8gbG9jayBkcGtnIHN0YXR1cyBkYXRhYmFzZSIKK21zZ2lkICJkcGtnIHN0YXR1cyBkYXRhYmFzZSIKK21zZ3N0ciAibWFsZWJsYXMgxZ1sb3NpIGxhIHN0YXRvLWRhdHVtYmF6b24gZGUgZHBrZyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyNTcKK21zZ2lkICJyZXF1ZXN0ZWQgb3BlcmF0aW9uIHJlcXVpcmVzIHN1cGVydXNlciBwcml2aWxlZ2UiCittc2dzdHIgImxhIHBldGl0YSBvcGVyYWNpbyBwb3N0dWxhcyBwcml2aWxlZ2lvbiBkZSBzdXBlcnV6YW50byIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyNjIKK21zZ2lkICJ1bmFibGUgdG8gYWNjZXNzIGRwa2cgc3RhdHVzIGFyZWEiCittc2dzdHIgIm1hbGVibGFzIGFsaXJpIHN0YXQtYXJlbyBkZSBkcGtnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjI2NAorbXNnaWQgIm9wZXJhdGlvbiByZXF1aXJlcyByZWFkL3dyaXRlIGFjY2VzcyB0byBkcGtnIHN0YXR1cyBhcmVhIgorbXNnc3RyICJsYSBvcGVyYWNpbyBwb3N0dWxhcyBsZWcvc2tyaWItYWxpcm9uIGFsIGxhIHN0YXQtYXJlbyBkZSBkcGtnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjMwOQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVtb3ZlIG15IG93biB1cGRhdGUgZmlsZSAlLjI1NXMiCittc2dzdHIgIm1hbHN1a2Nlc2lzIGZvcmlnaSBtaWFuIHByb3ByYW4gxJ1pc2RhdGlnYW4gZG9zaWVyb24gJS4yNTVzIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM0NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgIm1hbGVibGFzIHNrcmliaSDEnWlzZGF0aWdpdGFuIHN0YXRvbiBkZSAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNDkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJtYWxlYmxhcyBlbGJ1ZnJpZ2kgbGEgxJ1pc2RhdGlnaXRhbiBzdGF0b24gZGUgJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzUxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB0cnVuY2F0ZSBmb3IgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgIm1hbGVibGFzIGRpc3RyYW7EiWkgbGEgxJ1pc2RhdGlnaXRhbiBzdGF0b24gZGUgJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzUzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmc3luYyB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAibWFsZWJsYXMgYXBsaWtpICdmc3luYycgYWwgbGEgxJ1pc2RhdGlnaXRhbiBzdGF0b24gZGUgJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzU1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAibWFsZWJsYXMgZmVybWkgbGEgxJ1pc2RhdGlnaXRhbiBzdGF0b24gZGUgJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzU4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJtYWxlYmxhcyBpbnN0YWxpIGxhIMSdaXNkYXRpZ2l0YW4gc3RhdG9uIGRlICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy9kaXIuYzo1MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHJlYWQgZmlsZWRlc2NyaXB0b3IgZmxhZ3MgZm9yICUuMjUwcyIKK21zZ2lkICJ1bmFibGUgdG8gZ2V0IGZpbGUgZGVzY3JpcHRvciBmb3IgZGlyZWN0b3J5ICclcyciCittc2dzdHIgIm1hbGVibGFzIGxlZ2kgZG9zaWVyLXByaXNrcmliYWpuIChmZCkgZmxhZ29qbiBwb3IgJS4yNTBzIgorCisjOiBsaWIvZHBrZy9kaXIuYzo1NAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHN5bmMgZmlsZSAnJXMnIgorbXNnaWQgInVuYWJsZSB0byBzeW5jIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICJtYWxlYmxhcyBzaW5rcm9uaWdpIGRvc2llcm9uICclcyciCisKKyM6IGxpYi9kcGtnL2Rpci5jOjY5IGxpYi9kcGtnL2Rpci5jOjEzMQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIG9wZW4gZmlsZSAnJXMnIgorbXNnaWQgInVuYWJsZSB0byBvcGVuIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICJtYWxlYmxhcyBtYWxmZXJtaSBsYSBkb3NpZXJvbiAnJXMnIgorCisjOiBsaWIvZHBrZy9kaXIuYzoxMDkgc3JjL2RpdmVydGNtZC5jOjIxOCBkcGtnLXNwbGl0L3NwbGl0LmM6MjAyCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI5MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBmaWxlICclcyciCittc2dzdHIgIm1hbGVibGFzIG1hbGZlcm1pIGxhIGRvc2llcm9uICclcyciCisKKyM6IGxpYi9kcGtnL2Rpci5jOjExMSBzcmMvZGl2ZXJ0Y21kLmM6MjMyIHNyYy9kaXZlcnRjbWQuYzozNzcKKyM6IHNyYy9zdGF0Y21kLmM6MjE3IGRwa2ctZGViL2J1aWxkLmM6NTk4IGRwa2ctc3BsaXQvam9pbi5jOjY1CisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTg3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNDA2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzeW5jIGZpbGUgJyVzJyIKK21zZ3N0ciAibWFsZWJsYXMgc2lua3JvbmlnaSBkb3NpZXJvbiAnJXMnIgorCisjOiBsaWIvZHBrZy9kaXIuYzoxMTMgc3JjL2RpdmVydGNtZC5jOjIzNCBzcmMvZGl2ZXJ0Y21kLmM6Mzc5CisjOiBkcGtnLWRlYi9idWlsZC5jOjYwMCBkcGtnLXNwbGl0L2pvaW4uYzo2NyBkcGtnLXNwbGl0L3F1ZXVlLmM6MTg5CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTMxNCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTQwOAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgZmlsZSAnJXMnIgorbXNnc3RyICJtYWxlYmxhcyBmZXJtaSBkb3NpZXJvbiAnJXMnIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6Mzk2CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB3cml0ZSBkZXRhaWxzIG9mIGAlLjUwcycgdG8gYCUuMjUwcyciCittc2dzdHIgIm1hbHN1a2Nlc2lzIHNrcmliaSBsYSBkZXRhbG9qbiBkZSAnJS41MHMnIGFsICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDIzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuICclcycgZm9yIHdyaXRpbmcgJXMgZGF0YWJhc2UiCittc2dzdHIgIm1hbHN1a2Nlc2lzIG1hbGZlcm1pICclcycgcG9yIHNrcmliaSBkYXR1bWJhem9uICVzIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDI2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgYnVmZmVyaW5nIG9uICVzIGRhdGFiYXNlIGZpbGUiCittc2dzdHIgIm1hbGVibGFzIMWdYWx0aSBidWZyYWRvbiBwb3IgZGF0dW1iYXphIGRvc2llcm8gJXMiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0MzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlICVzIGRhdGFiYXNlIHJlY29yZCBhYm91dCAnJS41MHMnIHRvICclLjI1MHMnIgorbXNnc3RyICJtYWxzdWtjZXNpcyBza3JpYmkgZGF0dW1iYXphbiByZWdpc3Ryb24gJXMgamUgJyUuNTBzJyBhbCAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ0NgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZmx1c2ggJXMgZGF0YWJhc2UgdG8gJyUuMjUwcyciCittc2dzdHIgIm1hbHN1a2Nlc2lzIGVsYnVmcmlnaSBkYXR1bWJhem9uICVzIGFsICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDQ4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBmc3luYyAlcyBkYXRhYmFzZSB0byAnJS4yNTBzJyIKK21zZ3N0ciAibWFsc3VrY2VzaXMgJ2ZzeW5jJyBkYXR1bWJhem9uICVzIGFsICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDUxCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjbG9zZSAnJS4yNTBzJyBhZnRlciB3cml0aW5nICVzIGRhdGFiYXNlIgorbXNnc3RyICJtYWxzdWtjZXNpcyBmZXJtaSAnJS4yNTBzJyBwb3N0IHNrcmliYWRvIGRlIGRhdHVtYmF6byAlcyIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ1NQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gbGluayAnJS4yNTBzJyB0byAnJS4yNTBzJyBmb3IgYmFja3VwIG9mICVzIGRhdGFiYXNlIgorbXNnc3RyICJtYWxzdWtjZXNpcyBsaWdpICclLjI1MHMnIGFsICclLjI1MHMnIHBvciBzZWt1cmtvcGlpIGRhdHVtYmF6b24gJXMiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGluc3RhbGwgJyUuMjUwcycgYXMgJyUuMjUwcycgY29udGFpbmluZyAlcyBkYXRhYmFzZSIKK21zZ3N0ciAibWFsc3VrY2VzaXMgaW5zdGFsaSAnJS4yNTBzJyBraWVsICclLjI1MHMnIGVuaGF2YW50YW4gZGF0dW1iYXpvbiAlcyIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjk0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogdW5yZWNvdmVyYWJsZSBmYXRhbCBlcnJvciwgYWJvcnRpbmc6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKyIlczogbmVyZXN0YXJpZ2VibGEgZ3JhdmVnYSBlcmFybywgbmkgxIllc2FzOlxuIgorIiAlc1xuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MTAwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiJXM6IHVucmVjb3ZlcmFibGUgZmF0YWwgZXJyb3IsIGFib3J0aW5nOlxuIgorI3wgIiAlc1xuIgorbXNnaWQgIiIKKyIlczogb3V0c2lkZSBlcnJvciBjb250ZXh0LCBhYm9ydGluZzpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorIiVzOiBuZXJlc3RhcmlnZWJsYSBncmF2ZWdhIGVyYXJvLCBuaSDEiWVzYXM6XG4iCisiICVzXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoxMjAKKyMsIGZ1enp5CisjfCBtc2dpZCAib3V0IG9mIG1lbW9yeSBmb3IgbmV3IGNsZWFudXAgZW50cnkiCittc2dpZCAib3V0IG9mIG1lbW9yeSBmb3IgbmV3IGVycm9yIGNvbnRleHQiCittc2dzdHIgIm1hbmthcyBtZW1vcm8gcG9yIG5vdmEgcHVyaWdhIGVuaWdhxLVvIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MTgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogZXJyb3Igd2hpbGUgY2xlYW5pbmcgdXA6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKyIlczogZXJhcm8gZHVtIHB1cmlnYWRvIGRlIMSJaW86XG4iCisiICVzXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoyMDEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImRwa2c6IHRvbyBtYW55IG5lc3RlZCBlcnJvcnMgZHVyaW5nIGVycm9yIHJlY292ZXJ5ICEhXG4iCittc2dpZCAiJXM6IHRvbyBtYW55IG5lc3RlZCBlcnJvcnMgZHVyaW5nIGVycm9yIHJlY292ZXJ5ISFcbiIKK21zZ3N0ciAiZHBrZzogdHJvIG11bHRhaiBpbmdpdGFqIGVyYXJvaiBkdW0gcmVzdGHFrXJhZG8gZGUgZXJhcm9qICEhXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoyNjggbGliL2Rwa2cvZWhhbmRsZS5jOjMwNworbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBjbGVhbnVwIGVudHJ5IgorbXNnc3RyICJtYW5rYXMgbWVtb3JvIHBvciBub3ZhIHB1cmlnYSBlbmlnYcS1byIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjI5MQorbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBjbGVhbnVwIGVudHJ5IHdpdGggbWFueSBhcmd1bWVudHMiCittc2dzdHIgIm1hbmthcyBtZW1vcm8gcG9yIG5vdmEgcHVyaWdhIGVuaWdhxLVvIGt1biBtdWx0YWogYXJndW1lbnRvaiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjM1MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiJXM6IHdhcm5pbmc6ICVzXG4iCittc2dpZCAiJXM6IGVycm9yOiAlc1xuIgorbXNnc3RyICIlczogYXZlcnRvOiAlc1xuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MzkzCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB3YXJuaW5nOiAlc1xuIgorbXNnc3RyICIlczogYXZlcnRvOiAlc1xuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6NDE2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiVzOiVkOiBpbnRlcm5hbCBlcnJvcjogJXNcbiIKK21zZ3N0ciAiJXM6JXM6JWQ6IGludGVybmEgZXJhcm86ICVzXG4iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGlzIG1pc3NpbmciCittc2dzdHIgIm1hbmthcyAlcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImAlLipzJyBpcyBub3QgYWxsb3dlZCBmb3IgJXMiCittc2dpZCAiJyUuNTBzJyBpcyBub3QgYWxsb3dlZCBmb3IgJXMiCittc2dzdHIgIiclLipzJyBuZSBlc3RhcyBwZXJtZXNhdGEgcG9yICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo3MworIywgYy1mb3JtYXQKK21zZ2lkICJqdW5rIGFmdGVyICVzIgorbXNnc3RyICJydWJhxLVvIHBvc3QgJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjg3CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgcGFja2FnZSBuYW1lICglLjI1MHMpIgorbXNnc3RyICJtYWx2YWxpZGEgcGFrLW5vbW8gKCUuMjUwcykiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJlbXB0eSBmaWxlIGRldGFpbHMgZmllbGQgYCVzJyIKK21zZ3N0ciAibWFscGxlbmEga2FtcG8gZGUgZG9zaWVyLWRldGFsb2ogJyVzJyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTA1CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgZGV0YWlscyBmaWVsZCBgJXMnIG5vdCBhbGxvd2VkIGluIHN0YXR1cyBmaWxlIgorbXNnc3RyICJrYW1wbyBkZSBkb3NpZXItZGV0YWxvaiAnJXMnIG5lIGVzdGFzIHBlcm1lc2F0YSBlbiBzdGF0LWRvc2llcm8iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjExOAorIywgYy1mb3JtYXQKK21zZ2lkICJ0b28gbWFueSB2YWx1ZXMgaW4gZmlsZSBkZXRhaWxzIGZpZWxkIGAlcycgKGNvbXBhcmVkIHRvIG90aGVycykiCittc2dzdHIgInRybyBtdWx0YWogdmFsb3JvaiBlbiBrYW1wbyBkZSBkb3NpZXItZGV0YWxvaiAnJXMnIChrb21wYXJlIGFsIGFsaWFqKSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTMyCisjLCBjLWZvcm1hdAorbXNnaWQgInRvbyBmZXcgdmFsdWVzIGluIGZpbGUgZGV0YWlscyBmaWVsZCBgJXMnIChjb21wYXJlZCB0byBvdGhlcnMpIgorbXNnc3RyICIiCisidHJvIG1hbG11bHRhaiB2YWxvcm9qIGVuIGthbXBvIGRlIGRvc2llci1kZXRhbG9qICclcycgKGtvbXBhcmUgYWwgYWxpYWopIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxNTQKK21zZ2lkICJ5ZXMvbm8gaW4gYm9vbGVhbiBmaWVsZCIKK21zZ3N0ciAiamVzL25lIGVuIGJ1bGVhIGthbXBvIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxNzQKK21zZ2lkICJ3b3JkIGluIGBwcmlvcml0eScgZmllbGQiCittc2dzdHIgInZvcnRvIGVuIGthbXBvICdwcmlvcml0eSciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE4NgorbXNnaWQgInZhbHVlIGZvciBgc3RhdHVzJyBmaWVsZCBub3QgYWxsb3dlZCBpbiB0aGlzIGNvbnRleHQiCittc2dzdHIgInZhbG9ybyBwb3Iga2FtcG8gJ3N0YXR1cycgbmUgZXN0YXMgcGVybWVzYXRhIGVuIHRpdSDEiWkga3VudGVrc3RvIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxOTEKK21zZ2lkICJmaXJzdCAod2FudCkgd29yZCBpbiBgc3RhdHVzJyBmaWVsZCIKK21zZ3N0ciAidW51YSAodm9sYXMpIHZvcnRvIGVuIGthbXBvICdzdGF0dXMnIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxOTQKK21zZ2lkICJzZWNvbmQgKGVycm9yKSB3b3JkIGluIGBzdGF0dXMnIGZpZWxkIgorbXNnc3RyICJkdWEgKGVyYXJvKSB2b3J0byBlbiBrYW1wbyAnc3RhdHVzJyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTk3Cittc2dpZCAidGhpcmQgKHN0YXR1cykgd29yZCBpbiBgc3RhdHVzJyBmaWVsZCIKK21zZ3N0ciAidHJpYSAoc3RhdG8pIHZvcnRvIGVuIGthbXBvICdzdGF0dXMnIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyMDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgaW4gVmVyc2lvbiBzdHJpbmcgJyUuMjUwcyciCittc2dzdHIgImVyYXJvIGVuIMSJZW5vIFZlcnNpb24gJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjIxOAorbXNnaWQgIm9ic29sZXRlIGBSZXZpc2lvbicgb3IgYFBhY2thZ2UtUmV2aXNpb24nIGZpZWxkIHVzZWQiCittc2dzdHIgIm1hbGFrdHVhbGEga2FtcG8gJ1JldmlzaW9uJyBhxa0gJ1BhY2thZ2UtUmV2aXNpb24nIGVzdGlzIHV6aXRhIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyMzUKK21zZ2lkICJ2YWx1ZSBmb3IgYGNvbmZpZy12ZXJzaW9uJyBmaWVsZCBub3QgYWxsb3dlZCBpbiB0aGlzIGNvbnRleHQiCittc2dzdHIgIiIKKyJ2YWxvcm8gcG9yIGthbXBvICdjb25maWctdmVyc2lvbicgbmUgZXN0YXMgcGVybWVzYXRhIGVuIHRpdSDEiWkga3VudGVrc3RvIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyNDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgaW4gQ29uZmlnLVZlcnNpb24gc3RyaW5nICclLjI1MHMnIgorbXNnc3RyICJlcmFybyBlbiDEiWVubyBDb25maWctVmVyc2lvbiAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjY2CisjLCBjLWZvcm1hdAorbXNnaWQgInZhbHVlIGZvciBgY29uZmZpbGVzJyBoYXMgbWFsZm9ybWF0dGVkIGxpbmUgYCUuKnMnIgorbXNnc3RyICJ2YWxvcm8gcG9yIGNvbmZmaWxlcyBoYXZhcyBtaXNmb3JtaXRhbiBsaW5pb24gJyUuKnMnIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyODcKKyMsIGMtZm9ybWF0Cittc2dpZCAidmFsdWUgZm9yIGBjb25mZmlsZXMnIGhhcyBsaW5lIHN0YXJ0aW5nIHdpdGggbm9uLXNwYWNlIGAlYyciCittc2dzdHIgInZhbG9ybyBwb3IgY29uZmZpbGVzIGhhdmFzIGxpbmlvbiBrb21lbmNhbnRhbiBwZXIgbmUtc3BhY28gJyVjJyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MzA0Cittc2dpZCAicm9vdCBvciBudWxsIGRpcmVjdG9yeSBpcyBsaXN0ZWQgYXMgYSBjb25mZmlsZSIKK21zZ3N0ciAicmFkaWthIGHFrSBudWxhIGRvc2llcnVqbyBlc3RhcyBsaXN0aXRhIGtpZWwgJ2NvbmZmaWxlJyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MzY1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJgJXMnIGZpZWxkLCBtaXNzaW5nIHBhY2thZ2UgbmFtZSwgb3IgZ2FyYmFnZSB3aGVyZSBwYWNrYWdlIG5hbWUgZXhwZWN0ZWQiCittc2dzdHIgIiIKKyJrYW1wbyAnJXMnLCBtYW5rYW50YSBwYWstbm9tbywgYcWtIHJ1YmHEtW8gdGllLCBraWUgcGFrLW5vbW8gZXN0aXMgYXRlbmRpdGEiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjM3MAorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGZpZWxkLCBpbnZhbGlkIHBhY2thZ2UgbmFtZSBgJS4yNTVzJzogJXMiCittc2dzdHIgImthbXBvICclcycsIG1hbHZhbGlkYSBwYWstbm9tbyAnJS4yNTVzJzogJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQwNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOlxuIgorIiBiYWQgdmVyc2lvbiByZWxhdGlvbnNoaXAgJWMlYyIKK21zZ3N0ciAiIgorImthbXBvICclcycsIHJlZmVyZW5jbyBhbCAnJS4yNTVzJzpcbiIKKyIgbWFsxJ11c3RhIHZlcnNpby1yaWxhdG8gJWMlYyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDEyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6XG4iCisiIGAlYycgaXMgb2Jzb2xldGUsIHVzZSBgJWM9JyBvciBgJWMlYycgaW5zdGVhZCIKK21zZ3N0ciAiIgorImthbXBvIGAlcycsIHJlZmVyZW5jbyBhbCAnJS4yNTVzJzpcbiIKKyIgJyVjJyBlc3RhcyBtYWxha3R1YWxhLCB1enUgJyVjPScgYcWtICclYyVjJyBhbnN0YXRhxa1lIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgaW1wbGljaXQgZXhhY3QgbWF0Y2ggb24gdmVyc2lvbiBudW1iZXIsIHN1Z2dlc3QgdXNpbmcgYD0nIGluc3RlYWQiCittc2dzdHIgIiIKKyJrYW1wbyBgJXMnLCByZWZlcmVuY28gYWwgJyUuMjU1cyc6XG4iCisiIGltcGxpY2l0YSBla3pha3RhIGtvbmdydW8gYWwgdmVyc2ktbnVtZXJvLCBuaSBzdWdlc3RhcyB1em9uIGRlICc9JyBhbnN0YXRhxa1lIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MzAKK21zZ2lkICJPbmx5IGV4YWN0IHZlcnNpb25zIG1heSBiZSB1c2VkIGZvciBQcm92aWRlcyIKK21zZ3N0ciAiTnVyIGVremFrdGFqIHZlcnNpb2ogcG92YXMgZXN0aSB1emF0YWogcG9yIFByb3ZpemFzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgdmVyc2lvbiB2YWx1ZSBzdGFydHMgd2l0aCBub24tYWxwaGFudW1lcmljLCBzdWdnZXN0IGFkZGluZyBhIHNwYWNlIgorbXNnc3RyICIiCisia2FtcG8gYCVzJywgcmVmZXJlbmNvIGFsICclLjI1NXMnOlxuIgorIiB2ZXJzaW8tdmFsb3JvIGtvbWVuY2FzIHBlciBuZS1hbGZhbnVtZXJvLCBuaSBzdWdlc3RhcyBhbGRvbm9uIGRlIHNwYWNvIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NTEgbGliL2Rwa2cvZmllbGRzLmM6NDU1CisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzogdmVyc2lvbiBjb250YWlucyBgJWMnIgorbXNnc3RyICJrYW1wbyAnJXMnLCByZWZlcmVuY28gYWwgJyUuMjU1cyc6IGxhIHZlcnNpbyBlbmhhdmFzICclYyciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ1OQorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6IHZlcnNpb24gdW50ZXJtaW5hdGVkIgorbXNnc3RyICJrYW1wbyAnJXMnLCByZWZlcmVuY28gYWwgJyUuMjU1cyc6IHZlcnNpbyBuZSBmaW5pZ2l0YSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDY1CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgZmllbGQsIHJlZmVyZW5jZSB0byAnJS4yNTVzJzogZXJyb3IgaW4gdmVyc2lvbiIKK21zZ3N0ciAia2FtcG8gJyVzJywgcmVmZXJlbmNvIGFsICclLjI1NXMnOiBlcmFybyBlbiB2ZXJzaW8iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ3NQorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGZpZWxkLCBzeW50YXggZXJyb3IgYWZ0ZXIgcmVmZXJlbmNlIHRvIHBhY2thZ2UgYCUuMjU1cyciCittc2dzdHIgImthbXBvICclcycsIHNpbnRha3NhIGVyYXJvIHBvc3QgcmVmZXJlbmNvIGFsIHBha28gJyUuMjU1cyciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ4MgorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZXMgKGB8Jykgbm90IGFsbG93ZWQgaW4gJXMgZmllbGQiCittc2dzdHIgImFsdGVybmF0aXZvaiAoJ3wnKSBuZSBlc3RhcyBwZXJtZXNhdGFqIGVuIGthbXBvICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1MzYKK21zZ2lkICJ2YWx1ZSBmb3IgYHRyaWdnZXJzLXBlbmRpbmcnIGZpZWxkIG5vdCBhbGxvd2VkIGluIHRoaXMgY29udGV4dCIKK21zZ3N0ciAiIgorInZhbG9ybyBwb3Iga2FtcG8gJ3RyaWdnZXJzLXBlbmRpbmcnIG5lIGVzdGFzIHBlcm1lc2F0YSBlbiB0aXUgxIlpIGt1bnRla3N0byIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTQzCisjLCBjLWZvcm1hdAorbXNnaWQgImlsbGVnYWwgcGVuZGluZyB0cmlnZ2VyIG5hbWUgYCUuMjU1cyc6ICVzIgorbXNnc3RyICJtYWx2YWxpZGEgbm9tbyBkZSBwcml0cmFrdG90YSBla2lnaWxvICclLjI1NXMnOiAlcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTQ3CisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBwZW5kaW5nIHRyaWdnZXIgYCUuMjU1cyciCittc2dzdHIgInJpcGV0aXRhIHByaXRyYWt0b3RhIGVraWdpbG8gJyUuMjU1cyciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU2MQorbXNnaWQgInZhbHVlIGZvciBgdHJpZ2dlcnMtYXdhaXRlZCcgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICIiCisidmFsb3JvIHBvciBrYW1wbyAndHJpZ2dlcnMtYXdhaXRlZCcgbmUgZXN0YXMgcGVybWVzYXRhIGVuIHRpdSDEiWkga3VudGVrc3RvIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWxsZWdhbCBwYWNrYWdlIG5hbWUgaW4gYXdhaXRlZCB0cmlnZ2VyIGAlLjI1NXMnOiAlcyIKK21zZ3N0ciAibWFsdmFsaWRhIHBhay1ub21vIGVuIGF0ZW5kYXRhIGVraWdpbG8gJyUuMjU1cyc6ICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIGF3YWl0ZWQgdHJpZ2dlciBwYWNrYWdlIGAlLjI1NXMnIgorbXNnc3RyICJyaXBldGl0YSBhdGVuZGF0YSBla2lnYSBwYWtvICclLjI1NXMnIgorCisjOiBsaWIvZHBrZy9maWxlLmM6NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgc291cmNlIGZpbGUgJyUuMjUwcyciCittc2dzdHIgIm1hbGVibGFzICdzdGF0JyBsYSBmb250LWRvc2llcm9uICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy9maWxlLmM6NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoYW5nZSBvd25lcnNoaXAgb2YgdGFyZ2V0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgIm1hbGVibGFzIMWdYW7EnWkgcG9zZWRvbiBkZSBjZWwtZG9zaWVybyAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZmlsZS5jOjU5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgbW9kZSBvZiB0YXJnZXQgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAibWFsZWJsYXMgZGlmaW5pIHJlxJ1pbW9uIGRlIGNlbC1kb3NpZXJvICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy9maWxlLmM6ODUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byBjbG9zZSAlczogJXMiCittc2dpZCAidW5hYmxlIHRvIHVubG9jayAlcyIKK21zZ3N0ciAibmUgZWJsYXMgZmVybWkgJXM6ICVzIgorCisjOiBsaWIvZHBrZy9maWxlLmM6MTExCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGVjayBmaWxlICclcycgbG9jayBzdGF0dXMiCittc2dzdHIgIm1hbGVibGFzIGtvbnRyb2xpIMWdbG9zby1zdGF0b24gZGUgZG9zaWVybyAnJXMnIgorCisjOiBsaWIvZHBrZy9maWxlLmM6MTQ2CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJzdGF0dXMgZGF0YWJhc2UgYXJlYSBpcyBsb2NrZWQgYnkgYW5vdGhlciBwcm9jZXNzIgorbXNnaWQgIiVzIGlzIGxvY2tlZCBieSBhbm90aGVyIHByb2Nlc3MiCittc2dzdHIgImxhIGFyZW8gZGUgc3RhdG8tZGF0dW1iYXpvIGVzdGFzIMWdbG9zaXRhIGRlIGFsaWEgcHJvY2V6byIKKworIzogbGliL2Rwa2cvZmlsZS5jOjE0OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIGNsb3NlICVzOiAlcyIKK21zZ2lkICJ1bmFibGUgdG8gbG9jayAlcyIKK21zZ3N0ciAibmUgZWJsYXMgZmVybWkgJXM6ICVzIgorCisjOiBsaWIvZHBrZy9sb2cuYzo1MworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBvcGVuIGxvZyBgJXMnOiAlc1xuIgorbXNnc3RyICJuZSBlYmxpcyBtYWxmZXJtaSBsYSBwcm90b2tvbG9uICclcyc6ICVzXG4iCisKKyM6IGxpYi9kcGtnL2xvZy5jOjg1Cittc2dpZCAiPHBhY2thZ2Ugc3RhdHVzIGFuZCBwcm9ncmVzcyBmaWxlIGRlc2NyaXB0b3I+IgorbXNnc3RyICI8cGFrLXN0YXRvIGthaiBwcm9ncmVzYSBkb3NpZXItcHJpc2tyaWJpbG8+IgorCisjOiBsaWIvZHBrZy9sb2cuYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIHRvIHN0YXR1cyBmZCAlZCIKK21zZ3N0ciAibWFsZWJsYXMgc2tyaWJpIGFsIHN0YXRhIGZkICVkIgorCisjOiBsaWIvZHBrZy9tbGliLmM6NDQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAibWFsbG9jIGZhaWxlZCAoJWxkIGJ5dGVzKSIKK21zZ2lkICJtYWxsb2MgZmFpbGVkICglenUgYnl0ZXMpIgorbXNnc3RyICJtYWxsb2MgbWFsc3VrY2VzaXMgKCVsZCBiYWp0b2opIgorCisjOiBsaWIvZHBrZy9tbGliLmM6NTgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInJlYWxsb2MgZmFpbGVkICglbGQgYnl0ZXMpIgorbXNnaWQgInJlYWxsb2MgZmFpbGVkICglenUgYnl0ZXMpIgorbXNnc3RyICJyZWFsbG9jIG1hbHN1a2Nlc2lzICglbGQgYmFqdG9qKSIKKworIzogbGliL2Rwa2cvbWxpYi5jOjcyIGxpYi9kcGtnL21saWIuYzo5MCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6Mjc3CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MzM0IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTA3Cittc2dpZCAiZmFpbGVkIHRvIGFsbG9jYXRlIG1lbW9yeSIKK21zZ3N0ciAibWFsc3VrY2VzbyBkdW0gcHJvdm8gcmV6ZXJ2aSBtZW1vcm9uIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBkdXAgZm9yIHN0ZCVzIgorbXNnc3RyICJtYWxzdWtjZXNvIGRlICdkdXAnIHBvciBzdGQlcyIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEwMworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZHVwIGZvciBmZCAlZCIKK21zZ3N0ciAibWFsc3VrY2VzbyBkZSAnZHVwJyBwb3IgZmQgJWQiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMDkKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHBpcGUiCittc2dzdHIgIm1hbHN1a2Nlc28gZHVtIGtyZW8gZGUgZHVrdG8iCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igd3JpdGluZyB0byAnJXMnIgorbXNnc3RyICJlcmFybyBkdW0gc2tyaWJhZG8gYWwgJyVzJyIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBmaWxlZGVzY3JpcHRvciBmbGFncyBmb3IgJS4yNTBzIgorbXNnc3RyICJtYWxlYmxhcyBsZWdpIGRvc2llci1wcmlza3JpYmFqbiAoZmQpIGZsYWdvam4gcG9yICUuMjUwcyIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEyNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IGNsb3NlLW9uLWV4ZWMgZmxhZyBmb3IgJS4yNTBzIgorbXNnc3RyICJtYWxlYmxhcyDFnWFsdGkgZmxhZ29qbiAnY2xvc2Utb24tZXhlYycgKGZlcm1pLWplLXBsZW51bW8pIHBvciAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzo2MworIywgYy1mb3JtYXQKK21zZ2lkICJjb25maWd1cmF0aW9uIGVycm9yOiAlczolZDogJXMiCittc2dzdHIgImFnb3JkYSBlcmFybzogJXM6JWQ6ICVzIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gY29uZmlndXJhdGlvbiBmaWxlICclLjI1NXMnIGZvciByZWFkaW5nOiAlcyIKK21zZ3N0ciAibWFsc3VrY2VzbyBkdW0gbWFsZmVybW8gZGUgYWdvcmRvLWRvc2llcm8gJyUuMjU1cycgcG9yIGxlZ2k6ICVzIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYmFsYW5jZWQgcXVvdGVzIGluICclcyciCittc2dzdHIgIm5lIHNwZWd1bGl0YWogY2l0aWxvaiBlbiAnJXMnIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTE3CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gb3B0aW9uICclcyciCittc2dzdHIgIm5la29uYXRhIGVsZWt0ZWJsbyAnJXMnIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTIxCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgbmVlZHMgYSB2YWx1ZSIKK21zZ3N0ciAiJyVzJyBiZXpvbmFzIHZhbG9yb24iCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBkb2VzIG5vdCB0YWtlIGEgdmFsdWUiCittc2dzdHIgIiclcycgbmUgYWtjZXB0YXMgdmFsb3JvbiIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjEzMworIywgYy1mb3JtYXQKK21zZ2lkICJyZWFkIGVycm9yIGluIGNvbmZpZ3VyYXRpb24gZmlsZSBgJS4yNTVzJyIKK21zZ3N0ciAibGVnLWVyYXJvIGVuIGFnb3JkYSBkb3NpZXJvICclLjI1NXMnIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgY29uZmlndXJhdGlvbiBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICJlcmFybyBkdW0gZmVybW8gZGUgYWdvcmRvLWRvc2llcm8gJyUuMjU1cyciCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxNzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igb3BlbmluZyBjb25maWd1cmF0aW9uIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICJlcmFybyBkdW0gbWFsZmVybW8gZGUgYWdvcmRvLWRvc2llcnVqbyAnJXMnIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjI4CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gb3B0aW9uIC0tJXMiCittc2dzdHIgIm5la29uYXRhIGVsZWt0ZWJsbyAtLSVzIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgb3B0aW9uIHRha2VzIGEgdmFsdWUiCittc2dzdHIgImVsZWt0ZWJsbyAtLSVzIHBvc3R1bGFzIHZhbG9yb24iCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBvcHRpb24gZG9lcyBub3QgdGFrZSBhIHZhbHVlIgorbXNnc3RyICJlbGVrdGVibG8gLS0lcyBuZSBha2NlcHRhcyB2YWxvcm9uIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gb3B0aW9uIC0lYyIKK21zZ3N0ciAibmVrb25hdGEgZWxla3RlYmxvIC0lYyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI1MAorIywgYy1mb3JtYXQKK21zZ2lkICItJWMgb3B0aW9uIHRha2VzIGEgdmFsdWUiCittc2dzdHIgImVsZWt0ZWJsbyAtJWMgcG9zdHVsYXMgdmFsb3JvbiIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI1OAorIywgYy1mb3JtYXQKK21zZ2lkICItJWMgb3B0aW9uIGRvZXMgbm90IHRha2UgYSB2YWx1ZSIKK21zZ3N0ciAiZWxla3RlYmxvIC0lYyBuZSBha2NlcHRhcyB2YWxvcm9uIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjcxCisjLCBjLWZvcm1hdAorbXNnaWQgIm9ic29sZXRlIG9wdGlvbiAnLS0lcydcbiIKK21zZ3N0ciAibWFsYWt0dWFsYSBlbGVrdGVibG8gJy0tJXMnXG4iCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmxpY3RpbmcgYWN0aW9ucyAtJWMgKC0tJXMpIGFuZCAtJWMgKC0tJXMpIgorbXNnc3RyICJrb25mbGlrdGFudGFqIGFnb2ogLSVjICgtLSVzKSBrYWogLSVjICgtLSVzKSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHZhbHVlIGZvciBgJXMnIGZpZWxkIgorbXNnc3RyICJyaXBldGl0YSB2YWxvcm8gcG9yIGthbXBvICclcyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MTQ2CisjLCBjLWZvcm1hdAorbXNnaWQgInVzZXItZGVmaW5lZCBmaWVsZCBuYW1lIGAlLipzJyB0b28gc2hvcnQiCittc2dzdHIgImthbXAtbm9tbyBkaWZpbml0YSBkZSB1emFudG8gJyUuKnMnIHRybyBtYWxsb25nYSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoxNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHZhbHVlIGZvciB1c2VyLWRlZmluZWQgZmllbGQgYCUuKnMnIgorbXNnc3RyICJyaXBldGl0YSB2YWxvcm8gcG9yIGxhIGthbXBvIGRpZmluaXRhIGRlIHV6YW50byAnJS4qcyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjA3Cittc2dpZCAiQ29uZmlndXJlZC1WZXJzaW9uIGZvciBwYWNrYWdlIHdpdGggaW5hcHByb3ByaWF0ZSBTdGF0dXMiCittc2dzdHIgIidDb25maWd1cmVkLVZlcnNpb24nIHBvciBwYWtvIGt1biBtYWx0YcWtZ2EgJ1N0YXR1cyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjE4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgaGFzIHN0YXR1cyAlcyBidXQgdHJpZ2dlcnMgYXJlIGF3YWl0ZWQiCittc2dzdHIgInBha28gaGF2YXMgc3RhdG9uICVzIHNlZCBla2lnaWxvaiBlc3RhcyBhdGVuZGF0YWoiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjIyCittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzIHRyaWdnZXJzLWF3YWl0ZWQgYnV0IG5vIHRyaWdnZXJzIGF3YWl0ZWQiCittc2dzdHIgInBha28gaGF2YXMgc3RhdG9uICd0cmlnZ2Vycy1hd2FpdGVkJyBzZWQgbmVuaXVuIGF0ZW5kYXRhbiBla2lnaWxvbiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzICVzIGJ1dCB0cmlnZ2VycyBhcmUgcGVuZGluZyIKK21zZ3N0ciAicGFjbyBoYXZhcyBzdGF0b24gJXMgc2VkIGFua29yYcWtIGVzdGFzIGVraWdpbG9qIHByaXRyYWt0b3RhaiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMzIKK21zZ2lkICJwYWNrYWdlIGhhcyBzdGF0dXMgdHJpZ2dlcnMtcGVuZGluZyBidXQgbm8gdHJpZ2dlcnMgcGVuZGluZyIKK21zZ3N0ciAicGFrbyBoYXZhcyBzdGF0b24gJ3RyaWdnZXJzLXBlbmRpbmcnIHNlZCBuZW5pdW4gcHJpdHJha3RvdGFuIGVraWdpbG9uIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjI0MgorbXNnaWQgIlBhY2thZ2Ugd2hpY2ggaW4gc3RhdGUgbm90LWluc3RhbGxlZCBoYXMgY29uZmZpbGVzLCBmb3JnZXR0aW5nIHRoZW0iCittc2dzdHIgIlBha28ga2l1IGVzdGFzIGVuIHN0YXRvIG5lLWluc3RhbGl0ZSBoYXZhcyBjb25mZmlsZXMsIG5pIGZvcmxhc2FzIGlsaW4iCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzM1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuIHBhY2thZ2UgaW5mbyBmaWxlIGAlLjI1NXMnIGZvciByZWFkaW5nIgorbXNnc3RyICJtYWxzdWtjZXNvIGR1bSBtYWxmZXJtbyBkZSBwYWthIGluZm9ybS1kb3NpZXJvICclLjI1NXMnIHBvciBsZWdpIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjM0MQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW4ndCBzdGF0IHBhY2thZ2UgaW5mbyBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICJuZSBlYmxhcyBsZWdpIHN0YXRvbiBkZSBwYWthIGluZm9ybS1kb3NpZXJvICclLjI1NXMnIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjM0NworIywgYy1mb3JtYXQKK21zZ2lkICJjYW4ndCBtbWFwIHBhY2thZ2UgaW5mbyBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICJuZSBlYmxhcyBhcGxpa2kgJ21tYXAnIGplIHBha2EgaW5mb3JtLWRvc2llcm8gJyUuMjU1cyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzUyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW4ndCBzdGF0IHBhY2thZ2UgaW5mbyBmaWxlIGAlLjI1NXMnIgorbXNnaWQgInJlYWRpbmcgcGFja2FnZSBpbmZvIGZpbGUgJyUuMjU1cyciCittc2dzdHIgIm5lIGVibGFzIGxlZ2kgc3RhdG9uIGRlIHBha2EgaW5mb3JtLWRvc2llcm8gJyUuMjU1cyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzYzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjbG9zZSBhZnRlciByZWFkOiBgJS4yNTVzJyIKK21zZ3N0ciAibWFsc3VrY2VzbyBkdW0gbWFsZmVybW8gcG9zdCBsZWdvOiAnJS4yNTVzJyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiRU9GIGFmdGVyIGZpZWxkIG5hbWUgYCUuKnMnIgorbXNnc3RyICJFT0YgcG9zdCBrYW1wby1ub21vICclLipzJyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MDcKKyMsIGMtZm9ybWF0Cittc2dpZCAibmV3bGluZSBpbiBmaWVsZCBuYW1lIGAlLipzJyIKK21zZ3N0ciAibGluaS1maW5hIHNpZ25vIGVuIGthbXBvIG5vbW8gJyUuKnMnIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQxMAorIywgYy1mb3JtYXQKK21zZ2lkICJNU0RPUyBFT0YgKF5aKSBpbiBmaWVsZCBuYW1lIGAlLipzJyIKK21zZ3N0ciAiTVNET1MgRU9GICheWikgZW4ga2FtcG8gbm9tbyAnJS4qcyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDE0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpZWxkIG5hbWUgYCUuKnMnIG11c3QgYmUgZm9sbG93ZWQgYnkgY29sb24iCittc2dzdHIgImthbXBvIG5vbW8gJyUuKnMnIGRldmFzIGVzdGkgc2VrdmF0YSBkZSBkdXB1bmt0byIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiRU9GIGJlZm9yZSB2YWx1ZSBvZiBmaWVsZCBgJS4qcycgKG1pc3NpbmcgZmluYWwgbmV3bGluZSkiCittc2dzdHIgIkVPRiBhbnRhxa0gdmFsb3JvIGRlIGthbXBvICclLipzJyAobWFua2FzIGxpbmktZmluYSBzaWdubykiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDI5CisjLCBjLWZvcm1hdAorbXNnaWQgIk1TRE9TIEVPRiBjaGFyIGluIHZhbHVlIG9mIGZpZWxkIGAlLipzJyAobWlzc2luZyBuZXdsaW5lPykiCittc2dzdHIgInNpZ25vIE1TRE9TIEVPRiBlbiB2YWxvcm8gZGUga2FtcG8gJyUuKnMnICjEiXUgbWFua2FzIGxpbmktZmluYSBzaWdubz8pIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQ0MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAibmV3bGluZSBpbiBmaWVsZCBuYW1lIGAlLipzJyIKK21zZ2lkICJibGFuayBsaW5lIGluIHZhbHVlIG9mIGZpZWxkICclLipzJyIKK21zZ3N0ciAibGluaS1maW5hIHNpZ25vIGVuIGthbXBvIG5vbW8gJyUuKnMnIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQ2MQorIywgYy1mb3JtYXQKK21zZ2lkICJFT0YgZHVyaW5nIHZhbHVlIG9mIGZpZWxkIGAlLipzJyAobWlzc2luZyBmaW5hbCBuZXdsaW5lKSIKK21zZ3N0ciAiRU9GIGVuIHZhbG9ybyBkZSBrYW1wbyAnJS4qcycgKG1hbmthcyBsaW5pLWZpbmEgc2lnbm8pIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjU0NgorbXNnaWQgInNldmVyYWwgcGFja2FnZSBpbmZvIGVudHJpZXMgZm91bmQsIG9ubHkgb25lIGFsbG93ZWQiCittc2dzdHIgInBsdXJhaiBwYWstaW5mb3JtYWogZW5tZXRhxLVvaiBlc3RpcyB0cm92aXRhaiwgbnVyIHVudSBlc3RhcyBwZXJtZXNhdGUiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NTcyCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHBhY2thZ2UgaW5mb3JtYXRpb24gaW4gYCUuMjU1cyciCittc2dzdHIgIm5lbml1IHBhay1pbmZvbW8gZW4gJyUuMjU1cyciCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjQ1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiJXMsIGluIGZpbGUgJyUuMjU1cycgbmVhciBsaW5lICVkIHBhY2thZ2UgJyUuMjU1cyc6XG4iCisjfCAiICIKK21zZ2lkICIiCisicGFyc2luZyBmaWxlICclLjI1NXMnIG5lYXIgbGluZSAlZCBwYWNrYWdlICclLjI1NXMnOlxuIgorIiAlLjI1NXMiCittc2dzdHIgIiIKKyIlcywgZW4gZG9zaWVybyAnJS4yNTVzJyBwcm9rc2ltZSBkZSBsaW5pbyAlZCBwYWtvICclLjI1NXMnOlxuIgorIiAiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjQ4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiJXMsIGluIGZpbGUgJyUuMjU1cycgbmVhciBsaW5lICVkOlxuIgorI3wgIiAiCittc2dpZCAiIgorInBhcnNpbmcgZmlsZSAnJS4yNTVzJyBuZWFyIGxpbmUgJWQ6XG4iCisiICUuMjU1cyIKK21zZ3N0ciAiIgorIiVzLCBlbiBkb3NpZXJvICclLjI1NXMnIHByb2tzaW1lIGRlIGxpbmlvICVkOlxuIgorIiAiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjEyNQorbXNnaWQgIm1heSBub3QgYmUgZW1wdHkgc3RyaW5nIgorbXNnc3RyICJuZSBwb3ZhcyBlc3RpIG1hbHBsZW5hIMSJZW5vIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoxMjcKKyMsIGZ1enp5CisjfCBtc2dpZCAibXVzdCBzdGFydCB3aXRoIGFuIGFscGhhbnVtZXJpYyIKK21zZ2lkICJtdXN0IHN0YXJ0IHdpdGggYW4gYWxwaGFudW1lcmljIGNoYXJhY3RlciIKK21zZ3N0ciAiZGV2YXMga29tZW5jacSdaSBwZXIgYWxmYW51bWVyYSBzaWdubyIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MTM2CisjLCBjLWZvcm1hdAorbXNnaWQgImNoYXJhY3RlciBgJWMnIG5vdCBhbGxvd2VkIChvbmx5IGxldHRlcnMsIGRpZ2l0cyBhbmQgY2hhcmFjdGVycyBgJXMnKSIKK21zZ3N0ciAic2lnbm8gJyVjJyBuZSBlc3RhcyBwZXJtZXNhdGUgKG51ciBsaXRlcm9qLCBjaWZlcm9qIGthaiBzaWdub2ogJyVzJykiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjE3OAorIywgZnV6enkKKyN8IG1zZ2lkICI8bm9uZT4iCittc2djdHh0ICJ2ZXJzaW9uIgorbXNnaWQgIjxub25lPiIKK21zZ3N0ciAiPG5lbmlvPiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjA5Cittc2dpZCAidmVyc2lvbiBzdHJpbmcgaXMgZW1wdHkiCittc2dzdHIgInZlcnNpLcSJZW5vIGVzdGFzIG1hbHBsZW5hIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyMjQKK21zZ2lkICJ2ZXJzaW9uIHN0cmluZyBoYXMgZW1iZWRkZWQgc3BhY2VzIgorbXNnc3RyICJ2ZXJzaS3EiWVubyBoYXZhcyBlbmlnaXRham4gc3BhY29qbiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjMwCittc2dpZCAiZXBvY2ggaW4gdmVyc2lvbiBpcyBub3QgbnVtYmVyIgorbXNnc3RyICJQT1NJWC1kYXRvIChlcG9jaCkgZW4gdmVyc2lvIG5lIGVzdGFzIG51bWVybyIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjMyCittc2dpZCAibm90aGluZyBhZnRlciBjb2xvbiBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAibmVuaW8gcG9zdCBkdXB1bmt0byBlbiB2ZXJzaS1udW1lcm8iCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjI0NworbXNnaWQgInZlcnNpb24gbnVtYmVyIGRvZXMgbm90IHN0YXJ0IHdpdGggZGlnaXQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjUwCittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgaW4gdmVyc2lvbiBudW1iZXIiCittc2dzdHIgIm1hbHZhbGlkYSBzaWdubyBlbiB2ZXJzaS1udW1lcm8iCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjI1NAorbXNnaWQgImludmFsaWQgY2hhcmFjdGVyIGluIHJldmlzaW9uIG51bWJlciIKK21zZ3N0ciAibWFsdmFsaWRhIHNpZ25vIGVuIHJldml6aS1udW1lcm8iCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjI5OSBsaWIvZHBrZy9wYXJzZWhlbHAuYzozMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAibWlzc2luZyAlcyIKK21zZ3N0ciAibWFua2FzICVzIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzozMDEgbGliL2Rwa2cvcGFyc2VoZWxwLmM6MzE0CisjLCBjLWZvcm1hdAorbXNnaWQgImVtcHR5IHZhbHVlIGZvciAlcyIKK21zZ3N0ciAibWFscGxlbmEgdmFsb3JvIHBvciAlcyIKKworIzogbGliL2Rwa2cvcGtnLWZvcm1hdC5jOjgwCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgY2hhcmFjdGVyIGAlYycgaW4gZmllbGQgd2lkdGhcbiIKK21zZ3N0ciAibWFsdmFsaWRhIHNpZ25vICclYycgZW4ga2FtcG8gJ2xhcsSdZWNvJ1xuIgorCisjOiBsaWIvZHBrZy9wa2ctZm9ybWF0LmM6MTcyCisjLCBjLWZvcm1hdAorbXNnaWQgIkNsb3NpbmcgYnJhY2UgbWlzc2luZyBpbiBmb3JtYXRcbiIKK21zZ3N0ciAiRGVrc3RyYSBrdW5pZy1rcmFtcG8gbWFua2FzIGVuIGxhIGZvcm1hZG9cbiIKKworIzogbGliL2Rwa2cvcGtnLXNob3cuYzo0MAorbXNnaWQgIihubyBkZXNjcmlwdGlvbiBhdmFpbGFibGUpIgorbXNnc3RyICIobmVuaXUgcHJpc2tyaWJvIGRpc3BvbmVibGFzKSIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjU1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpZ25vcmUgc2lnbmFsICVzIGJlZm9yZSBydW5uaW5nICUuMjUwcyIKK21zZ3N0ciAibWFsZWJsYXMgaWdub3JpIGxhIHNpZ25hbG9uICVzIGFudGHFrSBvbCBwbGVudW1pICUuMjUwcyIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjY4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHVuLWNhdGNoaW5nIHNpZ25hbCAlczogJXNcbiIKK21zZ3N0ciAiZXJhcm8gZHVtIG1hbGthcHRhZG8gZGUgbGEgc2lnbmFsbyAlczogJXNcbiIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjc4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIChzdWJwcm9jZXNzKTogJXNcbiIKK21zZ3N0ciAiJXMgKHN1YnByb2Nlem8pOiAlc1xuIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6ODkgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQ1NAorbXNnaWQgImZvcmsgZmFpbGVkIgorbXNnc3RyICJkaXNicmFuxIlpZ28gbWFsc3VrY2VzaXMiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMTkKKyMsIGMtZm9ybWF0Cittc2dpZCAic3VicHJvY2VzcyAlcyByZXR1cm5lZCBlcnJvciBleGl0IHN0YXR1cyAlZCIKK21zZ3N0ciAibGEgc3VicHJvY2V6byAlcyBsaXZlcmlzIGVyYXJhbiBlbGlyLXN0YXRvbiAlZCIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEyOAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAid2FpdCBmb3Igc3VicHJvY2VzcyAlcyBmYWlsZWQiCittc2dpZCAic3VicHJvY2VzcyAlcyB3YXMgaW50ZXJydXB0ZWQiCittc2dzdHIgImF0ZW5kbyBqZSBzdWJwcm9jZXpvICVzIG1hbHN1a2Nlc2lzIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTMwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJzdWJwcm9jZXNzICVzIGtpbGxlZCBieSBzaWduYWwgKCVzKSVzIgorbXNnaWQgInN1YnByb2Nlc3MgJXMgd2FzIGtpbGxlZCBieSBzaWduYWwgKCVzKSVzIgorbXNnc3RyICJsYSBzdWJwcm9jZXpvICVzIGVzdGlzIMSJZXNpZ2l0YSBkZSBzaWduYWxvICglcyklcyIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEzMgorbXNnaWQgIiwgY29yZSBkdW1wZWQiCittc2dzdHIgIiwgbmVrcm9wc2lvIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgInN1YnByb2Nlc3MgJXMgZmFpbGVkIHdpdGggd2FpdCBzdGF0dXMgY29kZSAlZCIKK21zZ3N0ciAibGEgc3VicHJvY2V6byAlcyBtYWxzdWtjZXNpcyBrdW4gYXRlbmRhIHN0YXRvLWtvZG8gJWQiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxNTEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQ2MQorIywgYy1mb3JtYXQKK21zZ2lkICJ3YWl0IGZvciBzdWJwcm9jZXNzICVzIGZhaWxlZCIKK21zZ3N0ciAiYXRlbmRvIGplIHN1YnByb2Nlem8gJXMgbWFsc3VrY2VzaXMiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgcGFja2FnZSBuYW1lIGAlLjI1MHMnIGluIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKyJtYWx2YWxpZGEgcGFrbm9tbyAnJS4yNTBzJyBlbiBla2lnaWxvaiBwcm9rcmFzdGlnaXMgbGEgZG9zaWVyb24gJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjgxCisjLCBjLWZvcm1hdAorbXNnaWQgInRydW5jYXRlZCB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJtaXN0cmFuxIlpdGFqIGVraWdpbG9qIHByb2tyYXN0aWdpcyBsYSBkb3NpZXJvbiAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yIGluIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcycgYXQgY2hhcmFjdGVyIGAlcyclcyIKK21zZ3N0ciAiIgorInNpbnRha3MtZXJhcm8gZW4gZWtpZ2lsb2ogcHJva3Jhc3RpZ2lzIGxhIGRvc2llcm9uICclLjI1MHMnIMSJZSBzaWdubyAnJXMnJXMiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3Blbi9jcmVhdGUgdHJpZ2dlcnMgbG9ja2ZpbGUgYCUuMjUwcyciCittc2dzdHIgIm1hbGVibGFzIG1hbGZlcm1pL2tyZWkgxZ1sb3MtZG9zaWVyb24gZGUgZWtpZ2lsb2ogJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjE0MQorIywgZnV6enkKKyN8IG1zZ2lkICJ0cmlnZ2VyZWQiCittc2dpZCAidHJpZ2dlcnMgYXJlYSIKK21zZ3N0ciAiZWtpZ2l0YSIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MTUxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm1hbGVibGFzIGxlZ2kgc3RhdG9uIGRlIGRvc2llcm8gcHJva3Jhc3RpdGEgZGUgZWtpZ2lsb2ogJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjE2NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJtYWxlYmxhcyBtYWxmZXJtaSBkb3NpZXJvbiBwcm9rcmFzdGl0YW4gZGUgZWtpZ2lsb2ogJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjE3OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3Blbi9jcmVhdGUgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKyJtYWxlYmxhcyBtYWxmZXJtaS9rcmVpIG5vdmFuIGRvc2llcm9uIHByb2tyYXN0aXRhbiBkZSBla2lnaWxvaiAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MjE1CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHJlYWRpbmcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiZXJhcm8gZHVtIGxlZ28gZGUgZG9zaWVybyBwcm9rcmFzdGl0YSBkZSBla2lnaWxvaiAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MjIzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibWFsZWJsYXMgc2tyaWJpIG5vdmFuIGRvc2llcm9uIHByb2tyYXN0aXRhbiBkZSBla2lnaWxvaiAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MjI4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibWFsZWJsYXMgZmVybWkgbm92YW4gZG9zaWVyb24gcHJva3Jhc3RpdGFuIGRlIGVraWdpbG9qICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm1hbGVibGFzIGluc3RhbGkgbm92YW4gZG9zaWVyb24gcHJva3Jhc3RpdGFuIGRlIGVraWdpbG9qICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MjIyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpbnZhbGlkIG9yIHVua25vd24gc3ludGF4IGluIHRyaWdnZXIgbmFtZSBgJS4yNTBzJyAoaW4gdHJpZ2dlciBpbnRlcmVzdHMgZm9yICIKKyJwYWNrYWdlIGAlLjI1MHMnKSIKK21zZ3N0ciAiIgorIm1hbHZhbGlkYSBhxa0gbmVrb25hdGEgc2ludGFrc28gZW4gZWtpZ2lsby1ub21vICclLjI1MHMnIChlbiBla2lnaWxhaiAiCisiaW50ZXJlc29qIHBvciBsYSBwYWtvICclLjI1MHMnKSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjI2MworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiB0cmlnZ2VyIGludGVyZXN0IGxpc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibWFsc3VrY2VzbyBkdW0gbWFsZmVybW8gZGUgbGlzdGRvc2llcm8gZGUgZWtpZ2lsLWludGVyZXNvICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MjkyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJtYWxzdWtjZXNvIGR1bSByZXRyb2lnbyBkZSBkb3NpZXJvIGRlIGVraWdpbC1pbnRlcmVzbyAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMwNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIHN5bnRheCBlcnJvcjsgaWxsZWdhbCBwYWNrYWdlIG5hbWUgYCUuMjUwcyc6ICIKKyIlLjI1MHMiCittc2dzdHIgIiIKKyJzaW50YWtzYSBlcmFybyBlbiBkb3NpZXJvIGRlIGVraWdpbC1pbnRlcmVzbyAnJS4yNTBzJzsgbWFscGVybWVzYXRhIHBhay1ub21vICIKKyInJS4yNTBzJzogJS4yNTBzIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzE4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJtYWxlYmxhcyBza3JpYmkgbm92YW4gZG9zaWVyb24gZGUgZWtpZ2lsLWludGVyZXNvICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzIxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlICclLjI1MHMnIgorbXNnc3RyICJtYWxlYmxhcyBlbGJ1ZnJpZ2kgbm92YW4gZG9zaWVyb24gZGUgZWtpZ2lsLWludGVyZXNvICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzI0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzeW5jIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgIm1hbGVibGFzIHNpbmtyb25pZ2kgbm92YW4gZG9zaWVyb24gZGUgZWtpZ2lsLWludGVyZXNvICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzMyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm1hbGVibGFzIGluc3RhbGkgbm92YW4gZG9zaWVyb24gZGUgZWtpZ2lsLWludGVyZXNvICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzQwIGxpYi9kcGtnL3RyaWdsaWIuYzozNDIgbGliL2Rwa2cvdHJpZ2xpYi5jOjQ3MgorIzogc3JjL3JlbW92ZS5jOjI4NiBzcmMvcmVtb3ZlLmM6Mzc3CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZW1vdmUgYCUuMjUwcyciCittc2dzdHIgIm5lIGVibGFzIGZvcmlnaSAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjM2MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm1hbGVibGFzIGtyZWkgbm92YW4gZG9zaWVyb24gZGUgZWtpZ2lsLWludGVyZXNvICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzgzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJtYWxlYmxhcyBmZXJtaSBub3ZhbiBkb3NpZXJvbiBkZSBla2lnaWwtaW50ZXJlc28gJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0NTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImR1cGxpY2F0ZSBmaWxlIHRyaWdnZXIgaW50ZXJlc3QgZm9yIGZpbGVuYW1lIGAlLjI1MHMnIGFuZCBwYWNrYWdlIGAlLjI1MHMnIgorbXNnc3RyICIiCisicmlwZXRpdGEgZG9zaWVyYSBla2lnaWwtaW50ZXJlc28gcG9yIGRvc2llcm5vbW8gJyUuMjUwcycga2FqIHBha28gJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJtYWxlYmxhcyBrcmVpIG5vdmFuIGRvc2llci1la2lnaWxhbiBkb3NpZXJvbiAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ5MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibWFsZWJsYXMgc2tyaWJpIG5vdmFuIGRvc2llci1la2lnaWxhbiBkb3NpZXJvbiAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ5NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAibWFsZWJsYXMgZWxidWZyaWdpIG5vdmFuIGRvc2llci1la2lnaWxhbiBkb3NpZXJvbiAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ5OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlICclLjI1MHMnIgorbXNnc3RyICJtYWxlYmxhcyBzaW5rcm9uaWdpIG5vdmFuIGRvc2llci1la2lnaWxhbiBkb3NpZXJvbiAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjUwMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibWFsZWJsYXMgZmVybWkgbm92YW4gZG9zaWVyLWVraWdpbGFuIGRvc2llcm9uICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTA3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgYXMgYCUuMjUwcyciCittc2dzdHIgIm1hbGVibGFzIGluc3RhbGkgbm92YW4gZG9zaWVyLWVraWdpbGFuIGRvc2llcm9uIGtpZWwgJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1NDIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJtYWxlYmxhcyBsZWdpIGRvc2llci1la2lnaWxhbiBkb3NpZXJvbiAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjU1MgorIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJzaW50YWtzYSBlcmFybyBlbiBkb3NpZXItZWtpZ2lsYSBkb3NpZXJvICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTYzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmaWxlIHRyaWdnZXJzIHJlY29yZCBtZW50aW9ucyBpbGxlZ2FsIHBhY2thZ2UgbmFtZSBgJS4yNTBzJyAoZm9yIGludGVyZXN0IGluICIKKyJmaWxlIGAlLjI1MHMnKTogJS4yNTBzIgorbXNnc3RyICIiCisiZG9zaWVyLWVraWdpbGEgcmVnaXN0cmHEtW8gYWx1ZGFzIG1hbHBlcm1lc2F0YW4gcGFrLW5vbW9uICclLjI1MHMnIChwb3IgIgorImludGVyZXNvIGVuIGxhIGRvc2llcm8gJyUuMjUwcycpOiAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo2NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInRyaWdnZXJzIGNpIGZpbGUgYCUuMjUwcycgY29udGFpbnMgaWxsZWdhbCB0cmlnZ2VyIHN5bnRheCBpbiB0cmlnZ2VyIG5hbWUgYCIKKyIlLjI1MHMnOiAlLjI1MHMiCittc2dzdHIgIiIKKyJla2lnaWxhIGNpLWRvc2llcm8gJyUuMjUwcycgZW5oYXZhcyBtYWxwZXJtZXNhdGEgZWtpZ2lsYSBzaW50YWtzbyBlbiBla2lnaWxhICIKKyJub21vICclLjI1MHMnOiAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo2ODQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gdHJpZ2dlcnMgY2kgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibWFsZWJsYXMgbWFsZmVybWkgZWtpZ2lsLWNpLWRvc2llcm9uICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Njk5Cittc2dpZCAidHJpZ2dlcnMgY2kgZmlsZSBjb250YWlucyB1bmtub3duIGRpcmVjdGl2ZSBzeW50YXgiCittc2dzdHIgImVraWdpbC1jaS1kb3NpZXJvIGVuaGF2YXMgbmVrb25hdGFuIHNpbnRha3NvbiBkZSBndmlkbGluaW9qIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NzEyCisjLCBjLWZvcm1hdAorbXNnaWQgInRyaWdnZXJzIGNpIGZpbGUgY29udGFpbnMgdW5rbm93biBkaXJlY3RpdmUgYCUuMjUwcyciCittc2dzdHIgImVraWdpbC1jaS1kb3NpZXJvIGVuaGF2YXMgbmVrb25hdGFuIGd2aWRsaW5pb24gJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo3NzYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSB0cmlnZ2VycyBzdGF0ZSBkaXJlY3RvcnkgYCUuMjUwcyciCittc2dzdHIgIm1hbGVibGFzIGtyZWkgZWtpZ2lsLXN0YXRhbiBkb3NpZXJ1am9uICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Nzc5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgb3duZXJzaGlwIG9mIHRyaWdnZXJzIHN0YXRlIGRpcmVjdG9yeSBgJS4yNTBzJyIKK21zZ3N0ciAibWFsZWJsYXMgZGlmaW5pIHBvc2Vkb24gZGUgZWtpZ2lsLXN0YXRhIGRvc2llcnVqbyAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ25hbWUuYzozNAorbXNnaWQgImVtcHR5IHRyaWdnZXIgbmFtZXMgYXJlIG5vdCBwZXJtaXR0ZWQiCittc2dzdHIgIm1hbHBsZW5haiBla2lnaWxvLW5vbW9qIG5lIGVzdGFzIHBlcm1lc2F0YWoiCisKKyM6IGxpYi9kcGtnL3RyaWduYW1lLmM6MzgKK21zZ2lkICJ0cmlnZ2VyIG5hbWUgY29udGFpbnMgaW52YWxpZCBjaGFyYWN0ZXIiCittc2dzdHIgImVraWdpbG8tbm9tbyBlbmhhdmFzIG1hbHZhbGlkYW4gc2lnbm9uIgorCisjOiBsaWIvZHBrZy91dGlscy5jOjU2CisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWQgZXJyb3IgaW4gYCUuMjUwcyciCittc2dzdHIgImxlZy1lcmFybyBlbiAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdXRpbHMuYzo2MQorIywgYy1mb3JtYXQKK21zZ2lkICJmZ2V0cyBnYXZlIGFuIGVtcHR5IHN0cmluZyBmcm9tIGAlLjI1MHMnIgorbXNnc3RyICJmZ2V0cyBsaXZlcmlzIG1hbHBsZW5hbiDEiWVub24gZWwgJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3V0aWxzLmM6NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAidG9vLWxvbmcgbGluZSBvciBtaXNzaW5nIG5ld2xpbmUgaW4gYCUuMjUwcyciCittc2dzdHIgInRybyBsb25nYSBsaW5pbyBhxa0gbWFua2FzIG5vdmxpbmlhIHNpZ25vIGVuICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy91dGlscy5jOjc1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW9mIHJlYWRpbmcgYCUuMjUwcyciCittc2dzdHIgIm5lYXRlbmRhdGEgZG9zaWVyZmlubyBkdW0gbGVnYWRvIGRlICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy92YXJidWYuYzo4MiBsaWIvZHBrZy92YXJidWYuYzo4OAorbXNnaWQgImVycm9yIGZvcm1hdHRpbmcgc3RyaW5nIGludG8gdmFyYnVmIHZhcmlhYmxlIgorbXNnc3RyICJlcmFybyBkdW0gZm9ybWFkbyBkZSDEiWVubyBlbmVuIGRlIHZhcmlhYmxvIHZhcmJ1ZiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTc5IHNyYy9hcmNoaXZlcy5jOjIwMCBzcmMvYXJjaGl2ZXMuYzo3MjQKK21zZ2lkICJlcnJvciByZWFkaW5nIGZyb20gZHBrZy1kZWIgcGlwZSIKK21zZ3N0ciAiZXJhcm8gZHVtIGxlZ2FkbyBlbCBkdWt0byBkZSBkcGtnLWRlYiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTk1CisjLCBjLWZvcm1hdAorbXNnaWQgInNraXBwZWQgdW5wYWNraW5nIGZpbGUgJyUuMjU1cycgKHJlcGxhY2VkIG9yIGV4Y2x1ZGVkPykiCittc2dzdHIgIiIKKyJuaSBwcmV0ZXJwYXNpcyBlbHBha2lnb24gZGUgbGEgZG9zaWVybyAnJS4yNTVzJyAoYW5zdGF0YcWtaXRlIGHFrcKgZm9yaWdpdGU/KSIKKworIzogc3JjL2FyY2hpdmVzLmM6MjQ2IHNyYy9hcmNoaXZlcy5jOjI1MAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIHRpbWVzdGFtcHMgb2YgYCUuMjU1cyciCittc2dzdHIgImVyYXJvIGR1bSBkaWZpbm8gZGUgaG9yc3RhbXBvaiBkZSAnJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6MjYyCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHNldHRpbmcgb3duZXJzaGlwIG9mIHN5bWxpbmsgYCUuMjU1cyciCittc2dzdHIgImVyYXJvIGR1bSBkaWZpbm8gZGUgcG9zZWRvIGRlIHNpbWJvbGEgbGlnaWxvICclLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoyNjUgc3JjL2FyY2hpdmVzLmM6NzM0IHNyYy9zdGF0Y21kLmM6MTYzCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHNldHRpbmcgb3duZXJzaGlwIG9mIGAlLjI1NXMnIgorbXNnc3RyICJlcmFybyBkdW0gZGlmaW5vIGRlIHBvc2VkbyBkZSAnJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6MjY3IHNyYy9hcmNoaXZlcy5jOjczNiBzcmMvc3RhdGNtZC5jOjE2NQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIHBlcm1pc3Npb25zIG9mIGAlLjI1NXMnIgorbXNnc3RyICJlcmFybyBkdW0gZGlmaW5vIGRlIHBlcm1lc29qIGRlICclLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzozOTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHN0YXQgKGRlcmVmZXJlbmNlKSBleGlzdGluZyBzeW1saW5rIGAlLjI1MHMnIgorbXNnc3RyICJtYWxzdWtjZXNpcyBsZWdpIHN0YXRvbiAoZGVyZWZlcmVuY2UpIGRlIGVremlzdGFudGEgc3ltbGluayAnJS4yNTBzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6NDE3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmYWlsZWQgdG8gc3RhdCAoZGVyZWZlcmVuY2UpIHByb3Bvc2VkIG5ldyBzeW1saW5rIHRhcmdldCBgJS4yNTBzJyBmb3IgIgorInN5bWxpbmsgYCUuMjUwcyciCittc2dzdHIgIiIKKyJtYWxzdWtjZXNpcyBsZWdpIHN0YXRvbiAoZGVyZWZlcmVuY2UpIGRlIHByb3Bvbml0YSBub3ZhIGNlbG8gZGUgc3ltbGluayAiCisiJyUuMjUwcycgcG9yIHN5bWxpbmsgJyUuMjUwcyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjQ3NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidHJ5aW5nIHRvIG92ZXJ3cml0ZSBgJS4yNTBzJywgd2hpY2ggaXMgdGhlIGRpdmVydGVkIHZlcnNpb24gb2YgYCIKKyIlLjI1MHMnIChwYWNrYWdlOiAlLjEwMHMpIgorbXNnc3RyICIiCisicHJvdm8gYW5zdGF0YcWtaWdpICclLjI1MHMnLCBraXUgZXN0YXMgbGEgZGV0dXJuaXRhIHZlcnNpbyBkZSAnJS4yNTBzJyAocGFrbzogIgorIiUuMTAwcykiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjQ4MQorIywgYy1mb3JtYXQKK21zZ2lkICJ0cnlpbmcgdG8gb3ZlcndyaXRlIGAlLjI1MHMnLCB3aGljaCBpcyB0aGUgZGl2ZXJ0ZWQgdmVyc2lvbiBvZiBgJS4yNTBzJyIKK21zZ3N0ciAicHJvdm8gYW5zdGF0YcWtaWdpICclLjI1MHMnLCBraXUgZXN0YXMgbGEgZGV0dXJuaXRhIHZlcnNpbyBkZSAnJS4yNTBzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6NTExCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGAlLjI1NXMnICh3aGljaCBJIHdhcyBhYm91dCB0byBpbnN0YWxsKSIKK21zZ3N0ciAibWFsZWJsYXMgbGVnaSBzdGF0b24gZGUgJyUuMjU1cycgKGtpdW4gZXN0aXMgaW5zdGFsb3RhKSIKKworIzogc3JjL2FyY2hpdmVzLmM6NTE5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1bmFibGUgdG8gY2xlYW4gdXAgbWVzcyBzdXJyb3VuZGluZyBgJS4yNTVzJyBiZWZvcmUgaW5zdGFsbGluZyBhbm90aGVyICIKKyJ2ZXJzaW9uIgorbXNnc3RyICIiCisibWFsZWJsYXMgcHVyaWdpIG1hbG9yZG9uIMSJaXJrYcWtICclLjI1NXMnIGFudGHFrSBvbCBpbnN0YWxpIGFsaWFuIHZlcnNpb24iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjUyNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCByZXN0b3JlZCBgJS4yNTVzJyBiZWZvcmUgaW5zdGFsbGluZyBhbm90aGVyIHZlcnNpb24iCittc2dzdHIgIiIKKyJtYWxlYmxhcyBsZWdpIHN0YXRvbiBkZSBsYSByZXN0YXJpZ2l0YSAnJS4yNTVzJyBhbnRhxa0gb2wgaW5zdGFsaSBhbGlhbiAiCisidmVyc2lvbiIKKworIzogc3JjL2FyY2hpdmVzLmM6NTYxCisjLCBjLWZvcm1hdAorbXNnaWQgImFyY2hpdmUgY29udGFpbmVkIG9iamVjdCBgJS4yNTVzJyBvZiB1bmtub3duIHR5cGUgMHgleCIKK21zZ3N0ciAiYXJraXZvIGVuaGF2aXMgb2JqZWt0b24gJyUuMjU1cycgZWwgbmVrb25hdGEgdGlwbyAweCV4IgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2MjYgc3JjL2RpdmVydGNtZC5jOjE1MCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NjgyCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIyMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI4NAorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE0NDEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE2ODAKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTY3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjQ0CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUyNworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc3RhdCBmaWxlICclcyciCittc2dzdHIgIm5lIGVibGFzICdzdGF0JyBkb3NpZXJvbiAnJXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVwbGFjaW5nIGZpbGVzIGluIG9sZCBwYWNrYWdlICVzIC4uLlxuIgorbXNnc3RyICJBbnN0YXRhxa1pZ28gZGUgZG9zaWVyb2ogZW4gbGEgbWFsbm92YSBwYWtvICVzIC4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVwbGFjZWQgYnkgZmlsZXMgaW4gaW5zdGFsbGVkIHBhY2thZ2UgJXMgLi4uXG4iCittc2dzdHIgIkFuc3RhdGHFrWl0ZSBwZXIgZG9zaWVyb2ogZW4gbGEgaW5zdGFsaXRhIHBha28gJXMgLi4uXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjY1NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidHJ5aW5nIHRvIG92ZXJ3cml0ZSBkaXJlY3RvcnkgJyUuMjUwcycgaW4gcGFja2FnZSAlLjI1MHMgJS4yNTBzIHdpdGggIgorIm5vbmRpcmVjdG9yeSIKK21zZ3N0ciAiIgorInByb3ZvIGFuc3RhdGHFrWlnaSBsYSBkb3NpZXJ1am9uICclLjI1MHMnIGVuIGxhIHBha28gJS4yNTBzICUuMjUwcyBrdW4gbmUtIgorImRvc2llcnVqbyIKKworIzogc3JjL2FyY2hpdmVzLmM6NjYxCisjLCBjLWZvcm1hdAorbXNnaWQgInRyeWluZyB0byBvdmVyd3JpdGUgJyUuMjUwcycsIHdoaWNoIGlzIGFsc28gaW4gcGFja2FnZSAlLjI1MHMgJS4yNTBzIgorbXNnc3RyICJwcm92byBhbnN0YXRhxa1pZ2kgJyUuMjUwcycsIGtpdSBhbmthxa0gZXN0YXMgZW4gbGEgcGFrbyAlLjI1MHMgJS4yNTBzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3MTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBgJS4yNTVzJyAod2hpbGUgcHJvY2Vzc2luZyBgJS4yNTVzJykiCittc2dzdHIgIm1hbGVibGFzIGtyZWkgJyUuMjU1cycgKGR1bSBwcm9jZXphZG8gZGUgJyUuMjU1cycpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3MTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFja2VuZCBkcGtnLWRlYiBkdXJpbmcgYCUuMjU1cyciCittc2dzdHIgInN1YnRlbmkgZHBrZy1kZWIgZHVtICclLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NDQgc3JjL2FyY2hpdmVzLmM6OTA4IHNyYy9hcmNoaXZlcy5jOjk0OQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nL3dyaXRpbmcgYCUuMjU1cyciCittc2dzdHIgImVyYXJvIGR1bSBmZXJtby9za3JpYm8gZGUgJyUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc0OAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBwaXBlIGAlLjI1NXMnIgorbXNnc3RyICJlcmFybyBkdW0ga3JlbyBkZSBkdWt0byAnJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6NzUzIHNyYy9hcmNoaXZlcy5jOjc1OAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBkZXZpY2UgYCUuMjU1cyciCittc2dzdHIgImVyYXJvIGR1bSBrcmVvIGRlIGFwYXJhdG8gJyUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc3MQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBoYXJkIGxpbmsgYCUuMjU1cyciCittc2dzdHIgImVyYXJvIGR1bSBrcmVvIGRlIHJla3RhIGxpZ2lsbyAnJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6Nzc3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo1MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgc3ltYm9saWMgbGluayBgJS4yNTVzJyIKK21zZ3N0ciAiZXJhcm8gZHVtIGtyZW8gZGUgc2ltYm9sYSBsaWdpbG8gJyUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc4MworIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBkaXJlY3RvcnkgYCUuMjU1cyciCittc2dzdHIgImVyYXJvIGR1bSBrcmVvIGRlIGxhIGRvc2llcnVqbyAnJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6ODIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBtb3ZlIGFzaWRlIGAlLjI1NXMnIHRvIGluc3RhbGwgbmV3IHZlcnNpb24iCittc2dzdHIgIm1hbGVibGFzIHB1xZ1pIGFwYXJ0ZSAnJS4yNTVzJyBwb3IgaW5zdGFsaSBub3ZhbiB2ZXJzaW9uIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4MzIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjMyMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBsaW5rIGAlLjI1NXMnIgorbXNnc3RyICJtYWxlYmxhcyBsZWdpIGxpZ2lsb24gJyUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjgzNCBzcmMvY29uZmlndXJlLmM6NDIzCisjLCBjLWZvcm1hdAorbXNnaWQgInN5bWJvbGljIGxpbmsgJyUuMjUwcycgc2l6ZSBoYXMgY2hhbmdlZCBmcm9tICVqZCB0byAlemQiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6ODM5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBtYWtlIGJhY2t1cCBzeW1saW5rIGZvciBgJS4yNTVzJyIKK21zZ3N0ciAibWFsZWJsYXMgZmFyaSBzZWt1cmtvcGlhbiBzaW1ib2xhbiBsaWdpbG9uIHBvciAnJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6ODQxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaG93biBiYWNrdXAgc3ltbGluayBmb3IgYCUuMjU1cyciCittc2dzdHIgIm1hbGVibGFzIHV6aSAnY2h3b24nIGplIHNla3Vya29waWEgc2ltYm9sYSBsaWdpbG8gcG9yICclLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4NDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG1ha2UgYmFja3VwIGxpbmsgb2YgYCUuMjU1cycgYmVmb3JlIGluc3RhbGxpbmcgbmV3IHZlcnNpb24iCittc2dzdHIgIiIKKyJtYWxlYmxhcyBmYXJpIHNla3Vya29waWFuIGxpZ2lsb24gZGUgJyUuMjU1cycgYW50YcWtIG9sIGluc3RhbGkgbm92YW4gdmVyc2lvbiIKKworIzogc3JjL2FyY2hpdmVzLmM6ODYzIHNyYy9hcmNoaXZlcy5jOjk1NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgdmVyc2lvbiBvZiBgJS4yNTVzJyIKK21zZ3N0ciAibWFsZWJsYXMgaW5zdGFsaSBub3ZhbiB2ZXJzaW9uIGRlICclLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo5MDIgc3JjL2FyY2hpdmVzLmM6OTQ1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuICclLjI1NXMnIgorbXNnc3RyICJtYWxlYmxhcyBtYWxmZXJtaSAnJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6OTQ3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzeW5jIGZpbGUgJyUuMjU1cyciCittc2dzdHIgIm1hbGVibGFzIHNpbmtyb25pZ2kgZG9zaWVyb24gJyUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImlnbm9yaW5nIGRlcGVuZGVuY3kgcHJvYmxlbSB3aXRoICVzOlxuIgorIiVzIgorbXNnc3RyICIiCisibmkgaWdub3JhcyBkZXBlbmRlY2FuIHByb2JsZW1vbiBrdW4gJXM6XG4iCisiJXMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImNvbnNpZGVyaW5nIGRlY29uZmlndXJhdGlvbiBvZiBlc3NlbnRpYWxcbiIKKyIgcGFja2FnZSAlcywgdG8gZW5hYmxlICVzLiIKK21zZ3N0ciAiIgorIm5pIGtvbnNpZGVyYXMgbWFsYWtvbW9kYWRvbiBkZSBsYSBlc2VuY2FcbiIKKyIgcGFrbyAlcywgcG9yIGVibGlnaSAlcy4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IG5vLCAlcyBpcyBlc3NlbnRpYWwsIHdpbGwgbm90IGRlY29uZmlndXJlXG4iCisiIGl0IGluIG9yZGVyIHRvIGVuYWJsZSAlcy5cbiIKK21zZ3N0ciAiIgorImRwa2c6IG5lLCAlcyBlc3RhcyBlc2VuY2EsIMSdaSBuZSBlc3RvcyBtYWxha29tb2RpdGFcbiIKKyIgcG9yIGVibGlnaSAlcy5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAyMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogbm8sIGNhbm5vdCBwcm9jZWVkIHdpdGggJXMgKC0tYXV0by1kZWNvbmZpZ3VyZSB3aWxsIGhlbHApOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogbmUsIG5lIHBvdmFzIGRhxa1yaWdpIGt1biAlcyAoLS1hdXRvLWRlY29uZmlndXJlIGhlbHBvcyk6XG4iCisiJXMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVtb3ZhbCBvZiAlLjI1MHMiCittc2dzdHIgImZvcmlnbyBkZSAlLjI1MHMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW5zdGFsbGF0aW9uIG9mICUuMjUwcyIKK21zZ3N0ciAiaW5zdGFsbyBkZSAlLjI1MHMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IGNvbnNpZGVyaW5nIGRlY29uZmlndXJhdGlvbiBvZiAlcywgd2hpY2ggd291bGQgYmUgYnJva2VuIGJ5ICVzIC4uLlxuIgorbXNnc3RyICJkcGtnOiBuaSBrb25zaWRlcmFzIG1hbGFrb21vZGFkb24gZGUgJXMsIGtpdSBlc3R1cyByb21waXRhIGRlICVzIC4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDY1CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IHllcywgd2lsbCBkZWNvbmZpZ3VyZSAlcyAoYnJva2VuIGJ5ICVzKS5cbiIKK21zZ3N0ciAiZHBrZzogamVzLCBuaSBtYWxha29tb2RvcyAlcyAocm9tcGl0YSBkZSAlcykuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNjkgc3JjL2FyY2hpdmVzLmM6MTE4NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogcmVnYXJkaW5nICVzIGNvbnRhaW5pbmcgJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiBwcml6b3JnbyBkZSAlcyBlbmhhdmFudGEgJXM6XG4iCisiJXMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNzcKK21zZ2lkICJpZ25vcmluZyBicmVha2FnZSwgbWF5IHByb2NlZWQgYW55d2F5ISIKK21zZ3N0ciAibmkgaWdub3JhcyByb21wYcS1b24sIHBvdmFzIGRhxa1yaWdpIGllbCBham4hIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDgyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpbnN0YWxsaW5nICUuMjUwcyB3b3VsZCBicmVhayAlLjI1MHMsIGFuZFxuIgorIiBkZWNvbmZpZ3VyYXRpb24gaXMgbm90IHBlcm1pdHRlZCAoLS1hdXRvLWRlY29uZmlndXJlIG1pZ2h0IGhlbHApIgorbXNnc3RyICIiCisiaW5zdGFsYWRvIGRlICUuMjUwcyBwb3Z1cyByb21waSAlLjI1MHMsIGthalxuIgorIiBtYWxha29tb2RhZG8gbmUgZXN0YXMgcGVybWVzYXRhICgtLWF1dG8tZGVjb25maWd1cmUgcG92dXMgaGVscGkpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDg2CisjLCBjLWZvcm1hdAorbXNnaWQgImluc3RhbGxpbmcgJS4yNTBzIHdvdWxkIGJyZWFrIGV4aXN0aW5nIHNvZnR3YXJlIgorbXNnc3RyICJpbnN0YWxhZG8gZGUgJS4yNTBzIHJvbXB1cyBla3ppc3RhbnRhbiBwcm9ncmFtYXJvbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTExNgorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiBjb25zaWRlcmluZyByZW1vdmluZyAlcyBpbiBmYXZvdXIgb2YgJXMgLi4uXG4iCittc2dzdHIgImRwa2c6IG5pIGtvbnNpZGVyYXMgZm9yaWdpICVzIGZhdm9yZSBhbCAlcyAuLi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTEyMgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgcHJvcGVybHkgaW5zdGFsbGVkIC0gaWdub3JpbmcgYW55IGRlcGVuZGVuY2llcyBvbiBpdC5cbiIKK21zZ3N0ciAiJXMgbmUgZXN0YXMga29yZWt0ZSBpbnN0YWxpdGEgLSBuaSBpZ25vcmFzIGl1biBham4gZGVwZW5kZWNvIGplIMSdaS5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE1MQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiBtYXkgaGF2ZSB0cm91YmxlIHJlbW92aW5nICVzLCBhcyBpdCBwcm92aWRlcyAlcyAuLi5cbiIKK21zZ3N0ciAiZHBrZzogZWJsZSBva2F6b3MgcHJvYmxlbW8gZm9yaWdhbnRlICVzLCDEiWFyIMSdaSBwcm92aXphcyAlcyAuLi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE2NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogcGFja2FnZSAlcyByZXF1aXJlcyByZWluc3RhbGxhdGlvbiwgYnV0IHdpbGwgcmVtb3ZlIGFueXdheSBhcyB5b3UgIgorInJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiIgorImRwa2c6IGxhIHBha28gJXMgcG9zdHVsYXMgcmVpbnN0YWxvbiwgc2VkIGXEiSB0aWVsIG5pIGZvcmlnb3MgxJ1pbiBsYcWtIHZpYSAiCisicGV0by5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE2OQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiBwYWNrYWdlICVzIHJlcXVpcmVzIHJlaW5zdGFsbGF0aW9uLCB3aWxsIG5vdCByZW1vdmUuXG4iCittc2dzdHIgImRwa2c6IGxhIHBha28gJXMgcG9zdHVsYXMgcmVpbnN0YWxvbiwgbmkgbmUgZm9yaWdvcyDEnWluLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTc4CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IHllcywgd2lsbCByZW1vdmUgJXMgaW4gZmF2b3VyIG9mICVzLlxuIgorbXNnc3RyICJkcGtnOiBqZXMsIG5pIGZvcmlnb3MgJXMgZmF2b3JlIGFsICVzLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTkwCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZsaWN0aW5nIHBhY2thZ2VzIC0gbm90IGluc3RhbGxpbmcgJS4yNTBzIgorbXNnc3RyICJrb25mbGlrdGFudGFqIHBha29qIC0gbmkgbmUgaW5zdGFsb3MgJS4yNTBzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTkxCittc2dpZCAiaWdub3JpbmcgY29uZmxpY3QsIG1heSBwcm9jZWVkIGFueXdheSEiCittc2dzdHIgIm5pIGlnbm9yYXMga29uZmxpa3RvbiwgcG92YXMgZGHFrXJpZ2kgaWVsIGFqbiEiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyMzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyAtLXJlY3Vyc2l2ZSBuZWVkcyBhdCBsZWFzdCBvbmUgcGF0aCBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyAtLXJlY3Vyc2l2ZSBiZXpvbmFzIG1pbmltdW1lIHVudSB2b2otcGFyYW1ldHJvIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjQ1Cittc2dpZCAiZmluZCBmb3IgZHBrZyAtLXJlY3Vyc2l2ZSIKK21zZ3N0ciAiJ2ZpbmQnIHBvciBkcGtnIC0tcmVjdXJzaXZlIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjY2Cittc2dpZCAiZmFpbGVkIHRvIGZkb3BlbiBmaW5kJ3MgcGlwZSIKK21zZ3N0ciAibWFsc3VrY2VzbyBwb3IgdXppICdmZG9wZW4nIGplIGR1a3RvIGRlICdmaW5kJyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3MgorbXNnaWQgImVycm9yIHJlYWRpbmcgZmluZCdzIHBpcGUiCittc2dzdHIgImVyYXJvIGR1bSBsZWdhZG8gZGUgZHVrdG8gZGUgJ2ZpbmQnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjczCittc2dpZCAiZXJyb3IgY2xvc2luZyBmaW5kJ3MgcGlwZSIKK21zZ3N0ciAiZXJhcm8gZHVtIGZlcm1vIGRlIGR1a3RvIGRlICdmaW5kJyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3NgorIywgYy1mb3JtYXQKK21zZ2lkICJmaW5kIGZvciAtLXJlY3Vyc2l2ZSByZXR1cm5lZCB1bmhhbmRsZWQgZXJyb3IgJWkiCittc2dzdHIgIidmaW5kJyBwb3IgLS1yZWN1cnNpdmUgbGl2ZXJpcyBuZXRyYWt0aXRhbiBlcmFyb24gJWkiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNzkKK21zZ2lkICJzZWFyY2hlZCwgYnV0IGZvdW5kIG5vIHBhY2thZ2VzIChmaWxlcyBtYXRjaGluZyAqLmRlYikiCittc2dzdHIgIm5pIHNlcsSJaXMsIHNlZCB0cm92aXMgbmVuaXVuIHBha29uIChkb3NpZXJvam4ga29uZ3J1YW50YWpuIGFsICouZGViKSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI5MAorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGF0IGxlYXN0IG9uZSBwYWNrYWdlIGFyY2hpdmUgZmlsZSBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyBiZXpvbmFzIG1pbmltdW1lIHVudSBwYWthbiBhcmtpdmFuIGRvc2llcmFuIGFyZ3VtZW50b24iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzMjUgc3JjL2RpdmVydGNtZC5jOjc4IHNyYy9kaXZlcnRjbWQuYzoxMTgKKyM6IHNyYy9lbnF1aXJ5LmM6MTY2IHNyYy9lbnF1aXJ5LmM6Mjc5IHNyYy9lbnF1aXJ5LmM6NDQ5IHNyYy9lbnF1aXJ5LmM6NDUxCisjOiBzcmMvZW5xdWlyeS5jOjQ2NCBzcmMvbWFpbi5jOjY2IHNyYy9tYWluLmM6MTYzIHNyYy9tYWluLmM6MzE0CisjOiBzcmMvbWFpbi5jOjQ5MyBzcmMvcGFja2FnZXMuYzoyNTQgc3JjL3F1ZXJ5Y21kLmM6MjUyIHNyYy9xdWVyeWNtZC5jOjM1NQorIzogc3JjL3F1ZXJ5Y21kLmM6Mzk2IHNyYy9xdWVyeWNtZC5jOjQwNCBzcmMvcXVlcnljbWQuYzo0NDggc3JjL3F1ZXJ5Y21kLmM6NTE3CisjOiBzcmMvcXVlcnljbWQuYzo2MDYgc3JjL3F1ZXJ5Y21kLmM6NjUwIHNyYy9zZWxlY3QuYzo3OSBzcmMvc3RhdGNtZC5jOjY4CisjOiBzcmMvc3RhdGNtZC5jOjk4IHNyYy90cmlnY21kLmM6NTggc3JjL3RyaWdjbWQuYzo5MCBkcGtnLWRlYi9idWlsZC5jOjQ0MQorIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIxNyBkcGtnLWRlYi9leHRyYWN0LmM6MjUwIGRwa2ctZGViL2luZm8uYzoyMDMKKyM6IGRwa2ctZGViL2luZm8uYzoyNjUgZHBrZy1kZWIvbWFpbi5jOjYwIGRwa2ctZGViL21haW4uYzoxMjYKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjI1NyBkcGtnLXNwbGl0L21haW4uYzo1NCBkcGtnLXNwbGl0L21haW4uYzo5OAorIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE0NCBkcGtnLXNwbGl0L3F1ZXVlLmM6MjgwCittc2dpZCAiPHN0YW5kYXJkIG91dHB1dD4iCittc2dzdHIgIjxub3JtYSBlbGlnbz4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzMjYgc3JjL3BhY2thZ2VzLmM6MjU1IHNyYy9xdWVyeWNtZC5jOjI1MworIzogc3JjL3F1ZXJ5Y21kLmM6MzUzIHNyYy9xdWVyeWNtZC5jOjQ1NCBzcmMvcXVlcnljbWQuYzo1MTggc3JjL3NlbGVjdC5jOjgwCisjOiBkcGtnLXNwbGl0L21haW4uYzoxNjkgZHBrZy1zcGxpdC9xdWV1ZS5jOjIxOAorbXNnaWQgIjxzdGFuZGFyZCBlcnJvcj4iCittc2dzdHIgIjxub3JtYSBlcmFybz4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzNjcKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIlNlbGVjdGluZyBwcmV2aW91c2x5IGRlc2VsZWN0ZWQgcGFja2FnZSAlcy5cbiIKK21zZ2lkICJTZWxlY3RpbmcgcHJldmlvdXNseSB1bnNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dzdHIgIk5pIGVsZWt0YXMgbGEgYW50YcWtZSBtYWxlbGVrdGl0YW4gcGFrb24gJXMuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzNzEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIlNraXBwaW5nIGRlc2VsZWN0ZWQgcGFja2FnZSAlcy5cbiIKK21zZ2lkICJTa2lwcGluZyB1bnNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dzdHIgIk5pIHByZXRlcnBhc2FzIG1hbGVsZWt0aXRhbiBwYWtvbiAlcy5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTM4NworIywgYy1mb3JtYXQKK21zZ2lkICJWZXJzaW9uICUuMjUwcyBvZiAlLjI1MHMgYWxyZWFkeSBpbnN0YWxsZWQsIHNraXBwaW5nLlxuIgorbXNnc3RyICJWZXJzaW8gJS4yNTBzIGRlICUuMjUwcyBqYW0gZXN0YXMgaW5zdGFsaXRhLCBuaSBwcmV0ZXJwYXNhcy5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTM5NworIywgYy1mb3JtYXQKK21zZ2lkICJkb3duZ3JhZGluZyAlLjI1MHMgZnJvbSAlLjI1MHMgdG8gJS4yNTBzLiIKK21zZ3N0ciAibmkgcmV0cm9pZ2FzICUuMjUwcyBkZSAlLjI1MHMgYWwgJS4yNTBzLiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTQwMgorIywgYy1mb3JtYXQKK21zZ2lkICJXaWxsIG5vdCBkb3duZ3JhZGUgJS4yNTBzIGZyb20gdmVyc2lvbiAlLjI1MHMgdG8gJS4yNTBzLCBza2lwcGluZy5cbiIKK21zZ3N0ciAiTmkgbmUgcmV0cm9pZ29zICUuMjUwcyBkZSB2ZXJzaW8gJS4yNTBzIGFsICUuMjUwcywgbmkgcHJldGVycGFzYXMuXG4iCisKKyM6IHNyYy9jbGVhbnVwLmM6ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVuYWJsZSB0byByZW1vdmUgbmV3bHktaW5zdGFsbGVkIHZlcnNpb24gb2YgYCUuMjUwcycgdG8gYWxsb3cgcmVpbnN0YWxsYXRpb24gIgorIm9mIGJhY2t1cCBjb3B5IgorbXNnc3RyICIiCisibWFsZWJsYXMgZm9yaWdpIG5vdmUgaW5zdGFsaXRhbiB2ZXJzaW9uIGRlICclLjI1MHMnIHBvciBlYmxpZ2kgcmVpbnN0YWxvbiBkZSAiCisic2VrdXJrb3BpbyIKKworIzogc3JjL2NsZWFudXAuYzo5MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVzdG9yZSBiYWNrdXAgdmVyc2lvbiBvZiBgJS4yNTBzJyIKK21zZ3N0ciAibWFsZWJsYXMgcmVzdGFyaWdpIHNlcmt1cmtvcGlhbiB2ZXJzaW9uIGRlICclLjI1MHMnIgorCisjOiBzcmMvY2xlYW51cC5jOjk3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgYmFja3VwIGNvcHkgb2YgJyUuMjUwcyciCittc2dzdHIgIm1hbGVibGFzIGZvcmlnaSBzZXJrdXJrb3Bpb24gZGUgJyUuMjUwcyciCisKKyM6IHNyYy9jbGVhbnVwLmM6MTAxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgbmV3bHktaW5zdGFsbGVkIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dzdHIgIm1hbGVibGFzIGZvcmlnaSBub3ZlIGluc3RhbGl0YW4gdmVyc2lvbiBkZSAnJS4yNTBzJyIKKworIzogc3JjL2NsZWFudXAuYzoxMDgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBuZXdseS1leHRyYWN0ZWQgdmVyc2lvbiBvZiBgJS4yNTBzJyIKK21zZ3N0ciAibWFsZWJsYXMgZm9yaWdpIG5vdmUgZWx0aXJpdGFuIHZlcnNpb24gZGUgJyUuMjUwcyciCisKKyM6IHNyYy9jb25maWd1cmUuYzoxMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgbmV3IGRpc3RyaWJ1dGVkIGNvbmZmaWxlICclLjI1MHMnIgorbXNnc3RyICJtYWxlYmxhcyAnc3RhdCcgbm92YW4gZGlzaWdpdGFuIGNvbmZmaWxlICclLjI1MHMnIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGN1cnJlbnQgaW5zdGFsbGVkIGNvbmZmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJtYWxlYmxhcyBsZWdpIHN0YXRvbiBkZSBsYSBudW5lIGluc3RhbGl0YSBjb25mZmlsZSAnJS4yNTBzJyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjEyNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiQ29uZmlndXJhdGlvbiBmaWxlIGAlcycsIGRvZXMgbm90IGV4aXN0IG9uIHN5c3RlbS5cbiIKKyJJbnN0YWxsaW5nIG5ldyBjb25maWcgZmlsZSBhcyB5b3UgcmVxdWVzdGVkLlxuIgorbXNnc3RyICIiCisiXG4iCisiQWtvbW9kYSBkb3NpZXJvICclcycsIG5lIGVremlzdGEgZW4gbGEgc2lzdGVtby5cbiIKKyJOaSBpbnN0YWxhcyBub3ZhbiBha29tb2RhbiBkb3NpZXJvbiBsYcWtIHZpYSBwZXRvLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTY4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlIG9sZCBiYWNrdXAgJyUuMjUwcyc6ICVzIgorbXNnc3RyICIlczogbWFsc3VrY2VzbyBkdW0gZm9yaWdvIGRlIG1hbG5vdmEgc2VrdXJrb3BpbyAnJS4yNTBzJzogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW5hbWUgJyUuMjUwcycgdG8gJyUuMjUwcyc6ICVzIgorbXNnc3RyICIlczogbWFsc3VrY2VzbyBkdW0gcmVub21pZ28gZGUgJyUuMjUwcycgYWwgJyUuMjUwcyc6ICVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTgyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiJXM6IG1hbHN1a2Nlc28gZHVtIGZvcmlnbyBkZSAnJS4yNTBzJzogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxODgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW1vdmUgb2xkIGRpc3RyaWJ1dGVkIHZlcnNpb24gJyUuMjUwcyc6ICVzIgorbXNnc3RyICIlczogbWFsc3VrY2VzaXMgZm9yaWdpIG1hbG5vdmFuIGRpc3RyaWJ1aXRhbiB2ZXJzaW9uICclLjI1MHMnOiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE5MgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIHJlbW92ZSAnJS4yNTBzJyAoYmVmb3JlIG92ZXJ3cml0ZSk6ICVzIgorbXNnc3RyICIlczogbWFsc3VrY2VzbyBkdW0gZm9yaWdvIGRlICclLjI1MHMnIChhbnRhxa0gb2wgYW5zdGF0YcWtaWdpKTogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byBsaW5rICclLjI1MHMnIHRvICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiJXM6bWFsc3VrY2VzbyBkdW0gbGlnaWdvIGRlICclLjI1MHMnIGFsICclLjI1MHMnOiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjIwMAorIywgYy1mb3JtYXQKK21zZ2lkICJJbnN0YWxsaW5nIG5ldyB2ZXJzaW9uIG9mIGNvbmZpZyBmaWxlICVzIC4uLlxuIgorbXNnc3RyICJJbnN0YWxhZG8gZGUgbm92YSB2ZXJzaW8gZGUgYWtvbW9kYSBkb3NpZXJvICVzIC4uLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjA2IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo1NDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgYCUuMjUwcycgYXMgYCUuMjUwcyciCittc2dzdHIgIm1hbGVibGFzIGluc3RhbGkgJyUuMjUwcycga2llbCAnJS4yNTBzJyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI1NworIywgYy1mb3JtYXQKK21zZ2lkICJubyBwYWNrYWdlIG5hbWVkIGAlcycgaXMgaW5zdGFsbGVkLCBjYW5ub3QgY29uZmlndXJlIgorbXNnc3RyICJuZW5pdSBwYWtvIG5vbWF0YSAnJXMnIGVzdGFzIGluc3RhbGl0YSwgbmkgbmUgcG92YXMgYWtvbW9kaSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI2MAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlICUuMjUwcyBpcyBhbHJlYWR5IGluc3RhbGxlZCBhbmQgY29uZmlndXJlZCIKK21zZ3N0ciAibGEgcGFrbyAlLjI1MHMgamFtIGVzdGFzIGluc3RhbGl0YSBrYWogYWtvbW9kaXRhIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjYzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJwYWNrYWdlICUuMjUwcyBpcyBub3QgcmVhZHkgZm9yIGNvbmZpZ3VyYXRpb25cbiIKKyIgY2Fubm90IGNvbmZpZ3VyZSAoY3VycmVudCBzdGF0dXMgYCUuMjUwcycpIgorbXNnc3RyICIiCisibGEgcGFrbyAlLjI1MHMgbmUgZXN0YXMgcHJldGEgcG9yIGFrb21vZG9cbiIKKyIgbmkgbmUgcG92YXMgYWtvbW9kaSAobnVuYSBzdGF0byAnJS4yNTBzJykiCisKKyM6IHNyYy9jb25maWd1cmUuYzoyOTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IGRlcGVuZGVuY3kgcHJvYmxlbXMgcHJldmVudCBjb25maWd1cmF0aW9uIG9mICVzOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogZGVwZW5kZWNhaiBwcm9ibGVtb2ogbWFsZWJsaWdhcyBha29tb2RhZG9uIGRlICVzOlxuIgorIiVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6Mjk3Cittc2dpZCAiZGVwZW5kZW5jeSBwcm9ibGVtcyAtIGxlYXZpbmcgdW5jb25maWd1cmVkIgorbXNnc3RyICJkZXBlbmRlY2FqIHByb2JsZW1vaiAtIG5pIGxhc2FzIG1hbGFrb21vZGl0ZSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjMwMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogJXM6IGRlcGVuZGVuY3kgcHJvYmxlbXMsIGJ1dCBjb25maWd1cmluZyBhbnl3YXkgYXMgeW91IHJlcXVlc3RlZDpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiBkZXBlbmRlY2FqIHByb2JsZW1vaiwgdGFtZW4gbmkgYWtvbW9kYXMgaWVsIGFqbiBsYcWtIHZpYSBwZXRvOlxuIgorIiVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MzA5Cittc2dpZCAiIgorIlBhY2thZ2UgaXMgaW4gYSB2ZXJ5IGJhZCBpbmNvbnNpc3RlbnQgc3RhdGUgLSB5b3Ugc2hvdWxkXG4iCisiIHJlaW5zdGFsbCBpdCBiZWZvcmUgYXR0ZW1wdGluZyBjb25maWd1cmF0aW9uLiIKK21zZ3N0ciAiIgorIkxhIHBha28gZXN0YXMgZW4gdHJlIG1hbGJvbmEgbWFsa29oZXJhIHN0YXRvIC0gdmkgZGV2dXNcbiIKKyIgcmVpbnN0YWxpIMSdaW4gYW50YcWtIG9sIHByb3ZpIGFrb21vZGFkb24uIgorCisjOiBzcmMvY29uZmlndXJlLmM6MzEyCisjLCBjLWZvcm1hdAorbXNnaWQgIlNldHRpbmcgdXAgJXMgKCVzKSAuLi5cbiIKK21zZ3N0ciAiTmkgYWzEnXVzdGlnYXMgJXMgKCVzKSAuLi5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjM5NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IHVuYWJsZSB0byBzdGF0IGNvbmZpZyBmaWxlICclcydcbiIKKyIgKD0gJyVzJyk6ICVzIgorbXNnc3RyICIiCisiJXM6IG1hbGVibGFzIGxlZ2kgc3RhdG9uIGRlIGFrb21vZGEgZG9zaWVybyAnJXMnXG4iCisiICg9IGAlcycpOiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQwOQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IGNvbmZpZyBmaWxlICclcycgaXMgYSBjaXJjdWxhciBsaW5rXG4iCisiICg9ICclcycpIgorbXNnc3RyICIiCisiJXM6IGFrb21vZGEgZG9zaWVybyAnJXMnIGVzdGFzIHJpbmdhIChjaXJrbGEpIGxpZ2lsb1xuIgorIiAoPSBgJXMnKSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQxOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IHVuYWJsZSB0byByZWFkbGluayBjb25mZmlsZSAnJXMnXG4iCisiICg9ICclcycpOiAlcyIKK21zZ3N0ciAiIgorIiVzOiBtYWxlYmxhcyB1emkgcmVhZGxpbmsgamUgY29uZmZpbGUgJyVzJ1xuIgorIiAoPSBgJXMnKTogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzo0NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBjb25mZmlsZSAnJS4yNTBzJyByZXNvbHZlcyB0byBkZWdlbmVyYXRlIGZpbGVuYW1lXG4iCisiICgnJXMnIGlzIGEgc3ltbGluayB0byAnJXMnKSIKK21zZ3N0ciAiIgorIiVzOiBjb25mZmlsZSAnJS4yNTBzJyBzb2x2aWdhcyBhbCBkZWdlbmVyaXRhIGRvc2llcm5vbW9cbiIKKyIgKGAlcycgZXN0YXMgc2ltYm9sYSBsaWdvIGFsIGAlcycpIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDYwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBjb25mZmlsZSAnJS4yNTBzJyBpcyBub3QgYSBwbGFpbiBmaWxlIG9yIHN5bWxpbmsgKD0gJyVzJykiCittc2dzdHIgIiVzOiBjb25mZmlsZSAnJS4yNTBzJyBuZSBlc3RhcyBwbGF0YSBkb3NpZXJvIGHFrSBzaW1ib2xhIGxpZ28gKD0gJyVzJykiCisKKyM6IHNyYy9jb25maWd1cmUuYzo0ODYKK21zZ2lkICJtZDVoYXNoIgorbXNnc3RyICJtZDVoYXNoIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDkyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB1bmFibGUgdG8gb3BlbiBjb25mZmlsZSAlcyBmb3IgaGFzaDogJXMiCittc2dzdHIgIiVzOiBtYWxlYmxhcyBtYWxmZXJtaSBjb25mZmlsZSAlcyBwb3IgaGFrZXRpOiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjUyMiBzcmMvY29uZmlndXJlLmM6NTI2Cittc2dpZCAiY29uZmZpbGUgZGlmZmVyZW5jZSB2aXN1YWxpemVyIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo1NDMKK21zZ2lkICJUeXBlIGBleGl0JyB3aGVuIHlvdSdyZSBkb25lLlxuIgorbXNnc3RyICJUYWpwdSAnZXhpdCcga2lhbSB2aSBmaW5vcy5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjU1MiBzcmMvY29uZmlndXJlLmM6NTU2Cittc2dpZCAiY29uZmZpbGUgc2hlbGwiCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYwMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiQ29uZmlndXJhdGlvbiBmaWxlIGAlcyciCittc2dzdHIgIiIKKyJcbiIKKyJBa29tb2RhIGRvc2llcm8gYCVzJyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYwNAorIywgYy1mb3JtYXQKK21zZ2lkICIgKGFjdHVhbGx5IGAlcycpIgorbXNnc3RyICIgKG51bmUgJyVzJykiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiA9PT4gRmlsZSBvbiBzeXN0ZW0gY3JlYXRlZCBieSB5b3Ugb3IgYnkgYSBzY3JpcHQuXG4iCisiID09PiBGaWxlIGFsc28gaW4gcGFja2FnZSBwcm92aWRlZCBieSBwYWNrYWdlIG1haW50YWluZXIuXG4iCittc2dzdHIgIiIKKyJcbiIKKyIgPT0+IERvc2llcm8gZW4gc2lzdGVtbyBrcmVpdGEgZGUgdmkgYcWtIGRlIHNrcmlwdG8uXG4iCisiID09PiBEb3NpZXJvIGFua2HFrSBlbiBwYWtvIHByb3Zpeml0YSBkZSBsYSBwYWt6b3JnYW50by5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYxMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiICAgICBOb3QgbW9kaWZpZWQgc2luY2UgaW5zdGFsbGF0aW9uLlxuIgorbXNnc3RyICIiCisiXG4iCisiICAgICBOZSBtb2RpZml0ZSBla2RlIGxhIGluc3RhbG8uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiA9PT4gTW9kaWZpZWQgKGJ5IHlvdSBvciBieSBhIHNjcmlwdCkgc2luY2UgaW5zdGFsbGF0aW9uLlxuIgorbXNnc3RyICIiCisiXG4iCisiID09PiBNb2RpZml0ZSAoZGUgdmkgYcWtIGRlIHNrcmlwdG8pIGVrZGUgbGEgaW5zdGFsby5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYxNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiID09PiBEZWxldGVkIChieSB5b3Ugb3IgYnkgYSBzY3JpcHQpIHNpbmNlIGluc3RhbGxhdGlvbi5cbiIKK21zZ3N0ciAiIgorIlxuIgorIiA9PT4gRm9yaWdpdGUgKGRlIHZpIGHFrSBkZSBza3JpcHRvKSBla2RlIGxhIGluc3RhbG8uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBQYWNrYWdlIGRpc3RyaWJ1dG9yIGhhcyBzaGlwcGVkIGFuIHVwZGF0ZWQgdmVyc2lvbi5cbiIKK21zZ3N0ciAiID09PiBMYSBwYWstZGlzdHJpYnVhbnRvIGxhbsSJaXMgxJ1pc2RhdGFuIHZlcnNpb24uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAgICBWZXJzaW9uIGluIHBhY2thZ2UgaXMgdGhlIHNhbWUgYXMgYXQgbGFzdCBpbnN0YWxsYXRpb24uXG4iCittc2dzdHIgIiAgICAgVmVyc2lvIGVuIHBha28gZXN0YXMgc2FtYSBvbCB0aXUgZGUgbGEgbGFzdGEgaW5zdGFsby5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYyOAorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IFVzaW5nIG5ldyBmaWxlIGFzIHlvdSByZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiA9PT4gTmkgdXphcyBub3ZhbiBkb3NpZXJvbiBsYcWtIHZpYSBwZXRvLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gVXNpbmcgY3VycmVudCBvbGQgZmlsZSBhcyB5b3UgcmVxdWVzdGVkLlxuIgorbXNnc3RyICIgPT0+IE5pIHV6YXMgbnVuYW4gbWFsbm92YW4gZG9zaWVyb24gbGHFrSB2aWEgcGV0by5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY0MQorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IEtlZXBpbmcgb2xkIGNvbmZpZyBmaWxlIGFzIGRlZmF1bHQuXG4iCittc2dzdHIgIiA9PT4gTmkgdGVuYXMgbGEgbWFsbm92YW4gYWdvcmRvLWRvc2llcm9uIGtpZWwgaW1wbGljaXRhbi5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY0NQorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IFVzaW5nIG5ldyBjb25maWcgZmlsZSBhcyBkZWZhdWx0LlxuIgorbXNnc3RyICIgPT0+IE5pIHV6YXMgbm92YW4gYWdvcmRvLWRvc2llcm9uIGtpZWwgaW1wbGljaXRhbi5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY1MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiICAgV2hhdCB3b3VsZCB5b3UgbGlrZSB0byBkbyBhYm91dCBpdCA/ICBZb3VyIG9wdGlvbnMgYXJlOlxuIgorIiAgICBZIG9yIEkgIDogaW5zdGFsbCB0aGUgcGFja2FnZSBtYWludGFpbmVyJ3MgdmVyc2lvblxuIgorIiAgICBOIG9yIE8gIDoga2VlcCB5b3VyIGN1cnJlbnRseS1pbnN0YWxsZWQgdmVyc2lvblxuIgorIiAgICAgIEQgICAgIDogc2hvdyB0aGUgZGlmZmVyZW5jZXMgYmV0d2VlbiB0aGUgdmVyc2lvbnNcbiIKKyIgICAgICBaICAgICA6IHN0YXJ0IGEgc2hlbGwgdG8gZXhhbWluZSB0aGUgc2l0dWF0aW9uXG4iCittc2dzdHIgIiIKKyIgICBLaW9uIHZpIGRlemlydXMgZmFyaSBwcmkgxJ1pID8gIFZpYWogYWx0ZXJuYXRpdm9qIGVzdGFzOlxuIgorIiAgICBZIGHFrSBJICA6IGluc3RhbGkgbGEgdmVyc2lvbiBkZSBsYSBwYWt6b3JnYW50b1xuIgorIiAgICBOIGHFrSBPICA6IHRlbmkgdmlhbiBudW5lLWluc3RhbGl0YW4gdmVyc2lvblxuIgorIiAgICAgIEQgICAgIDogbW9udHJpIGxhIG1hbHNhbW9qbiBpbnRlciBsYSB2ZXJzaW9qXG4iCisiICAgICAgWiAgICAgOiBsYW7EiWkgxZ1lbG9uIHBvciBrb250cm9saSBsYSBzaXR1YWNpb25cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY1OQorIywgYy1mb3JtYXQKK21zZ2lkICIgVGhlIGRlZmF1bHQgYWN0aW9uIGlzIHRvIGtlZXAgeW91ciBjdXJyZW50IHZlcnNpb24uXG4iCittc2dzdHIgIiBMYSBpbXBsaWNpdGEgYWdvIGVzdGFzIHRlbmkgdmlhbiBudW5hbiB2ZXJzaW9uLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjYxCisjLCBjLWZvcm1hdAorbXNnaWQgIiBUaGUgZGVmYXVsdCBhY3Rpb24gaXMgdG8gaW5zdGFsbCB0aGUgbmV3IHZlcnNpb24uXG4iCittc2dzdHIgIiBMYSBpbXBsaWNpdGEgYWdvIGVzdGFzIGluc3RhbGkgbGEgbm92YW4gdmVyc2lvbi5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY2NgorbXNnaWQgIltkZWZhdWx0PU5dIgorbXNnc3RyICJbaW1wbGljaXRlPW5dIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjY3Cittc2dpZCAiW2RlZmF1bHQ9WV0iCittc2dzdHIgIltpbXBsaWNpdGU9WV0iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NjgKK21zZ2lkICJbbm8gZGVmYXVsdF0iCittc2dzdHIgIltuZW5pdSBpbXBsaWNpdGHEtW9dIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjcxCittc2dpZCAiZXJyb3Igd3JpdGluZyB0byBzdGRlcnIsIGRpc2NvdmVyZWQgYmVmb3JlIGNvbmZmaWxlIHByb21wdCIKK21zZ3N0ciAiIgorImVyYXJvIGR1bSBza3JpYm8gYWwgc3RkZXJyLCBtYWxrb3ZyaXRhIGFudGHFrSBvbCBrb21hbmRpbnZpdG8gZGUgY29uZmZpbGUiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2ODAKK21zZ2lkICJyZWFkIGVycm9yIG9uIHN0ZGluIGF0IGNvbmZmaWxlIHByb21wdCIKK21zZ3N0ciAibGVnLWVyYXJvIGVuIHN0ZGluIMSJZSBrb21hbmRpbnZpdG8gZGUgY29uZmZpbGUiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2ODEKK21zZ2lkICJFT0Ygb24gc3RkaW4gYXQgY29uZmZpbGUgcHJvbXB0IgorbXNnc3RyICJFT0YgZW4gc3RkaW4gxIllIGtvbWFuZGludml0byBkZSBjb25mZmlsZSIKKworIzogc3JjL2RlcGNvbi5jOjE3NQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBkZXBlbmRzIG9uICVzIgorbXNnc3RyICIlcyBkZXBlbmRhcyBqZSAlcyIKKworIzogc3JjL2RlcGNvbi5jOjE3OAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBwcmUtZGVwZW5kcyBvbiAlcyIKK21zZ3N0ciAiJXMgYW50YcWtZGVwZW5kYXMgamUgJXMiCisKKyM6IHNyYy9kZXBjb24uYzoxODEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcmVjb21tZW5kcyAlcyIKK21zZ3N0ciAiJXMgcmVrb21lbmRhcyAlcyIKKworIzogc3JjL2RlcGNvbi5jOjE4NAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBzdWdnZXN0cyAlcyIKK21zZ3N0ciAiJXMgc3VnZXN0YXMgJXMiCisKKyM6IHNyYy9kZXBjb24uYzoxODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgYnJlYWtzICVzIgorbXNnc3RyICIlcyByb21wYXMgJXMiCisKKyM6IHNyYy9kZXBjb24uYzoxOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgY29uZmxpY3RzIHdpdGggJXMiCittc2dzdHIgIiVzIGtvbmZsaWt0YXMga3VuICVzIgorCisjOiBzcmMvZGVwY29uLmM6MTkzCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGVuaGFuY2VzICVzIgorbXNnc3RyICIlcyBwbGlib25pZ2FzICVzIgorCisjOiBzcmMvZGVwY29uLmM6Mjk2CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHRvIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIGVzdGFzIGZvcmlnb3RhLlxuIgorCisjOiBzcmMvZGVwY29uLmM6Mjk5CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHRvIGJlIGRlY29uZmlndXJlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMgZXN0YXMgbWFsYWtvbW9kb3RhLlxuIgorCisjOiBzcmMvZGVwY29uLmM6MzA0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHRvIGJlIGluc3RhbGxlZCwgYnV0IGlzIHZlcnNpb24gJS4yNTBzLlxuIgorbXNnc3RyICIgICUuMjUwcyBlc3RhcyBpbnN0YWxvdGEsIHNlZCDEnWkgZXN0YXMgdmVyc2lvICUuMjUwcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjMxNAorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyBpbnN0YWxsZWQsIGJ1dCBpcyB2ZXJzaW9uICUuMjUwcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgZXN0YXMgaW5zdGFsaXRhLCBzZWQgxJ1pIGVzdGFzIHZlcnNpbyAlLjI1MHMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdW5wYWNrZWQsIGJ1dCBoYXMgbmV2ZXIgYmVlbiBjb25maWd1cmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyBlc3RhcyBtYWxwYWtpdGEsIHNlZCDEnWkgbmVuaWFtIGVzdGlzIGFrb21vZGF0YS5cbiIKKworIzogc3JjL2RlcGNvbi5jOjMzNworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB1bnBhY2tlZCwgYnV0IGlzIHZlcnNpb24gJS4yNTBzLlxuIgorbXNnc3RyICIgICUuMjUwcyBlc3RhcyBtYWxwYWtpdGEsIHNlZCDEnWkgZXN0YXMgdmVyc2lvICUuMjUwcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjM0MworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBsYXRlc3QgY29uZmlndXJlZCB2ZXJzaW9uIGlzICUuMjUwcy5cbiIKK21zZ3N0ciAiICBsYXN0YSBha29tb2RpdGEgdmVyc2lvIGRlICUuMjUwcyBlc3RhcyAlLjI1MHMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozNTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgJXMuXG4iCittc2dzdHIgIiAgJS4yNTBzIGVzdGFzICVzLlxuIgorCisjOiBzcmMvZGVwY29uLmM6Mzg4CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBidXQgaXMgdG8gYmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMgcHJvdml6YXMgJS4yNTBzIHNlZCDEnWkgZXN0YXMgZm9yaWdvdGEuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGJ1dCBpcyB0byBiZSBkZWNvbmZpZ3VyZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIHByb3ZpemFzICUuMjUwcyBzZWQgxJ1pIGVzdGFzIG1hbGFrb21vZG90YS5cbiIKKworIzogc3JjL2RlcGNvbi5jOjQwMQorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYnV0IGlzICVzLlxuIgorbXNnc3RyICIgICUuMjUwcyBwcm92aXphcyAlLjI1MHMgc2VkIMSdaSAlcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjQxNQorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIgICUuMjUwcyBuZSBlc3RhcyBpbnN0YWxpdGEuXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgKHZlcnNpb24gJS4yNTBzKSBpcyB0byBiZSBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzICh2ZXJzaW8gJS4yNTBzKSBlc3RhcyBpbnN0YWxvdGEuXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgKHZlcnNpb24gJS4yNTBzKSBpcyBwcmVzZW50IGFuZCAlcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgKHZlcnNpbyAlLjI1MHMpIMSJZWVzdGFzIGthaiBlc3RhcyAlcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjQ5NQorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYW5kIGlzIHRvIGJlIGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMgcHJvdml6YXMgJS4yNTBzIGthaiDEnWkgZXN0YXMgaW5zdGFsb3RhLlxuIgorCisjOiBzcmMvZGVwY29uLmM6NTM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBhbmQgaXMgcHJlc2VudCBhbmQgJXMuXG4iCittc2dzdHIgIiAgJS4yNTBzIHByb3ZpemFzICUuMjUwcyBrYWogxIllZXN0YXMga2FqICVzLlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTAKKyMsIGZ1enp5CisjfCBtc2dpZCAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBxdWVyeWluZyBwYWNrYWdlcy4iCittc2dpZCAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBkaXZlcnRpbmcgZmlsZXMuIgorbXNnc3RyICJVenUgLS1oZWxwIHBvciBoZWxwbyBwcmkgcG9zdHVsYW50YWogcGFrb2ouIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjYgc3JjL3N0YXRjbWQuYzo1NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuICVzIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkRlYmlhbiAlcyB2ZXJzaW8gJXMuXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo3MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDEwIEd1aWxsZW0gSm92ZXIuXG4iCittc2dzdHIgIiIKKyJLb3BpcmFqdG8gKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisiS29waXJhanRvIChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJLb3BpcmFqdG8gKEMpIDIwMTAgR3VpbGxlbSBKb3Zlci5cbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjc1IHNyYy9tYWluLmM6NjMgc3JjL3F1ZXJ5Y21kLmM6NjAzIHNyYy9zdGF0Y21kLmM6NjUKKyM6IHNyYy90cmlnY21kLmM6NTUgZHBrZy1kZWIvbWFpbi5jOjU3IGRwa2ctc3BsaXQvbWFpbi5jOjUxCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6ODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgb3JcbiIKKyJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKK21zZ3N0ciAiIgorIlRpbyDEiWkgZXN0YXMgbGliZXJhIHByb2dyYW1hcm87IGxlZ3UgbGEgxJxlbmVyYWxhbiBQdWJsaWthbiBQZXJtZXNvbiBkZSBHTlUgIgorInZlcnNpbyAyIGHFrVxuIgorInBvc3RhIHBvciBrb3BpLWtvbmRpxIlvai4gRXN0YXMgTkVOSVUgZ2FyYW50aW8uXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo4NyBzcmMvbWFpbi5jOjgxIHNyYy9xdWVyeWNtZC5jOjYxNSBzcmMvc3RhdGNtZC5jOjc3CisjOiBkcGtnLWRlYi9tYWluLmM6NjkgZHBrZy1zcGxpdC9tYWluLmM6NjMgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjk3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gPGNvbW1hbmQ+XG4iCisiXG4iCittc2dzdHIgIiIKKyJVemFkbzogJXMgWzxlbGVrdGVibG8+IC4uLl0gPGtvbWFuZG8+XG4iCisiXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo5MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICBbLS1hZGRdIDxmaWxlPiAgICAgICAgICAgYWRkIGEgZGl2ZXJzaW9uLlxuIgorIiAgLS1yZW1vdmUgPGZpbGU+ICAgICAgICAgIHJlbW92ZSB0aGUgZGl2ZXJzaW9uLlxuIgorIiAgLS1saXN0IFs8Z2xvYi1wYXR0ZXJuPl0gIHNob3cgZmlsZSBkaXZlcnNpb25zLlxuIgorIiAgLS1saXN0cGFja2FnZSA8ZmlsZT4gICAgIHNob3cgd2hhdCBwYWNrYWdlIGRpdmVydHMgdGhlIGZpbGUuXG4iCisiICAtLXRydWVuYW1lIDxmaWxlPiAgICAgICAgcmV0dXJuIHRoZSBkaXZlcnRlZCBmaWxlLlxuIgorIlxuIgorbXNnc3RyICIiCisiS29tYW5kb2o6XG4iCisiICBbLS1hZGRdIDxkb3NpZXJvPiAgICAgICAgYWxkb25pIGRldHVybm9uLlxuIgorIiAgLS1yZW1vdmUgPGRvc2llcm8+ICAgICAgIGZvcmlnaSBsYSBkZXR1cm5vam4uXG4iCisiICAtLWxpc3QgWzxnbG9iLcWdYWJsb25vPl0gIG1vbnRyaSBkb3NpZXItZGV0dXJub2puLlxuIgorIiAgLS1saXN0cGFja2FnZSA8ZG9zaWVybz4gIG1vbnRyaSBwYWtvbiBraXUgZGV0dXJuYXMgbGEgZG9zaWVyb24uXG4iCisiICAtLXRydWVuYW1lIDxkb3NpZXJvPiAgICAgbGl2ZXJpIGxhIGRldHVybml0YW4gZG9zaWVyb24uXG4iCisiXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoxMDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLXBhY2thZ2UgPHBhY2thZ2U+ICAgICAgbmFtZSBvZiB0aGUgcGFja2FnZSB3aG9zZSBjb3B5IG9mIDxmaWxlPiB3aWxsICIKKyJub3RcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJlIGRpdmVydGVkLlxuIgorIiAgLS1sb2NhbCAgICAgICAgICAgICAgICAgIGFsbCBwYWNrYWdlcycgdmVyc2lvbnMgYXJlIGRpdmVydGVkLlxuIgorIiAgLS1kaXZlcnQgPGRpdmVydC10bz4gICAgIHRoZSBuYW1lIHVzZWQgYnkgb3RoZXIgcGFja2FnZXMnIHZlcnNpb25zLlxuIgorIiAgLS1yZW5hbWUgICAgICAgICAgICAgICAgIGFjdHVhbGx5IG1vdmUgdGhlIGZpbGUgYXNpZGUgKG9yIGJhY2spLlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIHNldCB0aGUgZGlyZWN0b3J5IHdpdGggdGhlIGRpdmVyc2lvbnMgZmlsZS5cbiIKKyIgIC0tdGVzdCAgICAgICAgICAgICAgICAgICBkb24ndCBkbyBhbnl0aGluZywganVzdCBkZW1vbnN0cmF0ZS5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBxdWlldCBvcGVyYXRpb24sIG1pbmltYWwgb3V0cHV0LlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIkVsZWt0ZWJsb2o6XG4iCisiICAtLXBhY2thZ2UgPHBha28+ICAgICAgICAgIG5vbW8gZGUgbGEgcGFrbyBraWVzIGtvcGlvIGRlIDxkb3NpZXJvPiBuZSAiCisiZXN0b3NcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXR1cm5pdGEuXG4iCisiICAtLWxvY2FsICAgICAgICAgICAgICAgICAgIMSJaXVqIHZlcnNpb2ogZGUgcGFrb2ogZXN0b3MgZGV0dXJuaXRhai5cbiIKKyIgIC0tZGl2ZXJ0IDxkZXR1cm5pLWFsPiAgICAgbGEgbm9tbyB1emF0YSBkZSBhbGlhaiB2ZXJzaW9qIGRlIHBha29qLlxuIgorIiAgLS1yZW5hbWUgICAgICAgICAgICAgICAgICBqYSBkZcWdb3ZpIGxhIGRvc2llcm9uIChhxa3CoHJldHJvaXJlbikuXG4iCisiICAtLWFkbWluZGlyIDxkb3NpZXJ1am8+ICAgIGRpZmluaSBsYSBkb3NpZXJ1am9uIGt1biBsYSBkb3NpZXJvIGRlICIKKyJkZXR1cm5vai5cbiIKKyIgIC0tdGVzdCAgICAgICAgICAgICAgICAgICAgZmFyaSBuZW5pb24sIG51ciBlbG1vbnRyaS5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICAgc2lsZW50YSBwcm9jZXphZG8sIG1pbmltdW1hIGVsaWdvLlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgICBtb250cmkgdGl1biDEiWkgaGVscC1tZXNhxJ1vbi5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgbW9udHJpIGxhIHZlcnNpb24uXG4iCisiXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIldoZW4gYWRkaW5nLCBkZWZhdWx0IGlzIC0tbG9jYWwgYW5kIC0tZGl2ZXJ0IDxvcmlnaW5hbD4uZGlzdHJpYi5cbiIKKyJXaGVuIHJlbW92aW5nLCAtLXBhY2thZ2Ugb3IgLS1sb2NhbCBhbmQgLS1kaXZlcnQgbXVzdCBtYXRjaCBpZiBzcGVjaWZpZWQuXG4iCisiUGFja2FnZSBwcmVpbnN0L3Bvc3RybSBzY3JpcHRzIHNob3VsZCBhbHdheXMgc3BlY2lmeSAtLXBhY2thZ2UgYW5kIC0tIgorImRpdmVydC5cbiIKK21zZ3N0ciAiIgorIkR1bSBhbGRvbmFkbywgYXByaW9yZSBlc3RhcyAtLWxvY2FsIGthaiAtZGl2ZXJ0IDxvcmlnaW5hbD4uZGlzdHJpYi5cbiIKKyJEdW0gZm9yaWdhZG8sIC0tcGFja2FnZSBhxa0gLS1sb2NhbCBrYWogLS1kaXZlcnQgZGV2YXMga29uZ3J1aSBzZSBpbmRpa2l0ZS5cbiIKKyJTa3JpcHRvaiBwcmVpbnQvcG9zdHJtIGRlIGxhIHBha28gZGV2b3MgxIlpYW0gaW5kaWtpIC0tcGFja2FnZSBrYWogLS1kaXZlcnQuXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoxNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2hlY2tpbmcgJyVzJyIKK21zZ3N0ciAiZXJhcm8gZHVtIGtvbnRyb2xvIGRlICclcyciCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInJlbmFtZSBpbnZvbHZlcyBvdmVyd3JpdGluZyBgJXMnIHdpdGhcbiIKKyIgIGRpZmZlcmVudCBmaWxlIGAlcycsIG5vdCBhbGxvd2VkIgorbXNnc3RyICIiCisicmVub21pZ28gaW1wbGljYXMgYW5zdGF0YcWtaWdvbiBkZSAnJXMnIHBlclxuIgorIiAgbWFsc2FtYSBkb3NpZXJvICclcycsIG5lIHBlcm1lc2l0ZSIKKworIzogc3JjL2RpdmVydGNtZC5jOjIyMyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTM3MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHdyaXRlIGZpbGUgJyVzJyIKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGZpbGUgJyVzJyIKK21zZ3N0ciAibWFsZWJsYXMgc2tyaWJpIGRvc2llcm9uICclcyciCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyMjcKK21zZ2lkICJmaWxlIGNvcHkiCittc2dzdHIgImRvc2llci1rb3BpbyIKKworIzogc3JjL2RpdmVydGNtZC5jOjIzOQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVuYW1lICclcycgdG8gJyVzJyIKK21zZ3N0ciAibmUgcG92YXMgcmVub21pZ2kgJyVzJyBhbCAnJXMnIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjUyCisjLCBjLWZvcm1hdAorbXNnaWQgInJlbmFtZTogcmVtb3ZlIGR1cGxpY2F0ZSBvbGQgbGluayAnJXMnIgorbXNnc3RyICJyZW5vbWlnaTogZm9yaWdpIGR1b2JsaWdpdGFuIG1hbG5vdmFuIGxpZ29uICclcyciCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyNjIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byBvcGVuIHNvdXJjZSBmaWxlIGAlLjI1MHMnIgorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgY29waWVkIHNvdXJjZSBmaWxlICclcyciCittc2dzdHIgIm1hbGVibGFzIG1hbGZlcm1pIGxhIGZvbnQtZG9zaWVyb24gJyUuMjUwcyciCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyODQKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9jYWwgZGl2ZXJzaW9uIG9mICVzIgorbXNnc3RyICJsb2thIGRldHVybm8gZGU6ICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mjg2CisjLCBjLWZvcm1hdAorbXNnaWQgImxvY2FsIGRpdmVyc2lvbiBvZiAlcyB0byAlcyIKK21zZ3N0ciAibG9rYSBkZXR1cm5vIGRlOiAlcyBhbCAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjI5MAorIywgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnNpb24gb2YgJXMgYnkgJXMiCittc2dzdHIgImRldHVybm8gZGUgJXMgcHJvICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjkzCisjLCBjLWZvcm1hdAorbXNnaWQgImRpdmVyc2lvbiBvZiAlcyB0byAlcyBieSAlcyIKK21zZ3N0ciAiZGV0dXJubyBkZSAlcyBhbCAlcyBwcm8gJXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozMDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiYW55IGRpdmVyc2lvbiBvZiAlcyIKK21zZ3N0ciAiaXUgYWpuIGRldHVybm8gZGUgJXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiYW55IGRpdmVyc2lvbiBvZiAlcyB0byAlcyIKK21zZ3N0ciAiaXUgYWpuIGRldHVybm8gZGUgJXMgYWwgJXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGNyZWF0ZSBuZXcgJXMgZmlsZSIKK21zZ3N0ciAibmUgcG92YXMga3JlaSBub3ZhbiBkb3NpZXJvbiAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjM3NSBzcmMvc3RhdGNtZC5jOjIxNSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTQwNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggZmlsZSAnJXMnIgorbXNnc3RyICJtYWxlYmxhcyBlbGJ1ZnJpZ2kgZG9zaWVyb24gJyVzJyIKKworIzogc3JjL2RpdmVydGNtZC5jOjM4MgorbXNnaWQgImVycm9yIHJlbW92aW5nIG9sZCBkaXZlcnNpb25zLW9sZCIKK21zZ3N0ciAiZXJhcm8gZHVtIGZvcmlnbyBkZSBtYWxub3ZhIGRpdmVyc2lvbnMtb2xkIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mzg0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgbmV3IGRpdmVyc2lvbnMtb2xkIgorbXNnc3RyICJlcmFybyBkdW0ga3JlYWRvIGRlIG5vdmEgZGl2ZXJzaW9ucy1vbGQiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozODYKK21zZ2lkICJlcnJvciBpbnN0YWxsaW5nIG5ldyBkaXZlcnNpb25zIgorbXNnc3RyICJlcmFybyBkdW0gaW5zdGFsYWRvIGRlIG5vdmEgZGl2ZXJzaW9ucyIKKworIzogc3JjL2RpdmVydGNtZC5jOjQwNiBzcmMvZGl2ZXJ0Y21kLmM6NTAzIHNyYy9kaXZlcnRjbWQuYzo2MTAKKyM6IHNyYy9kaXZlcnRjbWQuYzo2MzAgc3JjL3N0YXRjbWQuYzoyOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhIHNpbmdsZSBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyBiZXpvbmFzIHVudW9wYW4gYXJndW1lbnRvbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjQwOSBzcmMvZGl2ZXJ0Y21kLmM6NDMwCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGVuYW1lIFwiJXNcIiBpcyBub3QgYWJzb2x1dGUiCittc2dzdHIgImxhIGRvc2llcm5vbW8gXCIlc1wiIG5lIGVzdGFzIGFic29sdXRhIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDExIHNyYy9zdGF0Y21kLmM6MjQ5Cittc2dpZCAiZmlsZSBtYXkgbm90IGNvbnRhaW4gbmV3bGluZXMiCittc2dzdHIgImRvc2llcm8gbmUgcG92YXMgZW5oYXZpIG5vdmxpbmktc2lnbm9qbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjQxOAorbXNnaWQgIkNhbm5vdCBkaXZlcnQgZGlyZWN0b3JpZXMiCittc2dzdHIgIk5lIGVibGFzIGRldHVybmkgZG9zaWVydWpvam4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGRpdmVydCBmaWxlICclcycgdG8gaXRzZWxmIgorbXNnc3RyICJOZSBlYmxhcyBkZXR1cm5pIGRvc2llcm9uICclcycgYWwgc2kgbWVtIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDUzCisjLCBjLWZvcm1hdAorbXNnaWQgIkxlYXZpbmcgJyVzJ1xuIgorbXNnc3RyICJOaSBsYXNhcyAnJXMnXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBjbGFzaGVzIHdpdGggYCVzJyIKK21zZ3N0ciAiJyVzJyBrb2xpemlhcyBrdW4gJyVzJyIKKworIzogc3JjL2RpdmVydGNtZC5jOjQ4MQorIywgYy1mb3JtYXQKK21zZ2lkICJBZGRpbmcgJyVzJ1xuIgorbXNnc3RyICJBbGRvbmFkbyBkZSAnJXMnXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiTm8gZGl2ZXJzaW9uICclcycsIG5vbmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiTmVuaXUgZGV0dXJubyAnJXMnLCBuZW5pdSBmb3JpZ2l0YS5cbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjUyNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisibWlzbWF0Y2ggb24gZGl2ZXJ0LXRvXG4iCisiICB3aGVuIHJlbW92aW5nIGAlcydcbiIKKyIgIGZvdW5kIGAlcyciCittc2dzdHIgIiIKKyJtYWxrb25ncnVvIGplIGRldHVybmktYWxcbiIKKyIgIGR1bSBmb3JpZ28gZGUgJyVzJ1xuIgorIiAgdHJvdml0ZSAnJXMnIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJtaXNtYXRjaCBvbiBwYWNrYWdlXG4iCisiICB3aGVuIHJlbW92aW5nIGAlcydcbiIKKyIgIGZvdW5kIGAlcyciCittc2dzdHIgIiIKKyJtYWxrb25ncnVvIGplIHBha29cbiIKKyIgIGR1bSBmb3JpZ28gZGUgJyVzJ1xuIgorIiAgdHJvdml0ZSAnJXMnIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTM5CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlbW92aW5nICclcydcbiIKK21zZ3N0ciAiRm9yaWdhZG8gZGUgJyVzJ1xuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjU3Cittc2dpZCAicGFja2FnZSBtYXkgbm90IGNvbnRhaW4gbmV3bGluZXMiCittc2dzdHIgInBha28gbmUgcG92YXMgZW5oYXZpIG5vdmxpbmktc2lnbm9qbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjY2NgorbXNnaWQgImRpdmVydC10byBtYXkgbm90IGNvbnRhaW4gbmV3bGluZXMiCittc2dzdHIgImRldHVybmktYWwgbmUgcG92YXMgZW5oYXZpIG5vdmxpbmktc2lnbm9qbiIKKworIzogc3JjL2RpdmVydGRiLmM6NjQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiBkaXZlcnNpb25zIGZpbGUiCittc2dzdHIgIm1hbHN1a2Nlc2lzIG1hbGZlcm1pIGRvc2llcm9uIGRpdmVyc2lvbnMiCisKKyM6IHNyYy9kaXZlcnRkYi5jOjcxCittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IHByZXZpb3VzIGRpdmVyc2lvbnMgZmlsZSIKK21zZ3N0ciAibWFsc3VrY2VzaXMgdXppICdmc3RhdCcgamUgYW50YcWtYSBkb3NpZXJvIGRpdmVyc2lvbnMiCisKKyM6IHNyYy9kaXZlcnRkYi5jOjczCittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGRpdmVyc2lvbnMgZmlsZSIKK21zZ3N0ciAibWFsc3VrY2VzaXMgdXppICdmc3RhdCcgamUgZG9zaWVybyBkaXZlcnNpb25zIgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzoxMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmxpY3RpbmcgZGl2ZXJzaW9ucyBpbnZvbHZpbmcgYCUuMjUwcycgb3IgYCUuMjUwcyciCittc2dzdHIgImtvbmZsaWt0YW50YWogZGl2ZXJzaW9ucyBlbnZvbHZhbnRhaiAnJS4yNTBzJyBhxa0gJyUuMjUwcyciCisKKyM6IHNyYy9lbnF1aXJ5LmM6NzMKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgaW4gYSBtZXNzIGR1ZSB0byBzZXJpb3VzIHByb2JsZW1zIGR1cmluZ1xuIgorImluc3RhbGxhdGlvbi4gIFRoZXkgbXVzdCBiZSByZWluc3RhbGxlZCBmb3IgdGhlbSAoYW5kIGFueSBwYWNrYWdlc1xuIgorInRoYXQgZGVwZW5kIG9uIHRoZW0pIHRvIGZ1bmN0aW9uIHByb3Blcmx5OlxuIgorbXNnc3RyICIiCisiTGEgamVuYWogcGFrb2ogZXN0YXMgbWFsb3JkaWdpdGFqIHBybyBncmF2YWogcHJvYmxlbW9qIG9rYXppbnRhaiBkdW1cbiIKKyJsYSBpbnN0YWxvLiAgSWxpIGRldmFzIGVzdGkgcmVpbnN0YWxhdGFqIHBvciBrZSBpbGkgKGthaiBpdSBham4gcGFrb1xuIgorImtpdSBkZXBlbmRhcyBqZSBpbGkpIGZ1bmtjaXUgxJ11c3RlOlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjgwCittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgaGF2ZSBiZWVuIHVucGFja2VkIGJ1dCBub3QgeWV0IGNvbmZpZ3VyZWQuXG4iCisiVGhleSBtdXN0IGJlIGNvbmZpZ3VyZWQgdXNpbmcgZHBrZyAtLWNvbmZpZ3VyZSBvciB0aGUgY29uZmlndXJlXG4iCisibWVudSBvcHRpb24gaW4gZHNlbGVjdCBmb3IgdGhlbSB0byB3b3JrOlxuIgorbXNnc3RyICIiCisiTGEgamVuYWogcGFrb2ogZXN0YXMgbWFscGFraXRhaiBzZWQgYW5rb3Jhxa0gbmUgYWtvbW9kaXRhai5cbiIKKyJJbGkgZGV2YXMgZXN0aSBha29tb2RhdGFqIHBlciAnZHBrZyAtLWNvbmZpZ3VyZScgYcWtIHBlciBsYVxuIgorImFrb21vZGEgbWVudWVybyBlbiBkc2VsZWN0IHBvciBrZSBpbGkgZnVua2NpdTpcbiIKKworIzogc3JjL2VucXVpcnkuYzo4NworbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBvbmx5IGhhbGYgY29uZmlndXJlZCwgcHJvYmFibHkgZHVlIHRvIHByb2JsZW1zXG4iCisiY29uZmlndXJpbmcgdGhlbSB0aGUgZmlyc3QgdGltZS4gIFRoZSBjb25maWd1cmF0aW9uIHNob3VsZCBiZSByZXRyaWVkIHVzaW5nXG4iCisiZHBrZyAtLWNvbmZpZ3VyZSA8cGFja2FnZT4gb3IgdGhlIGNvbmZpZ3VyZSBtZW51IG9wdGlvbiBpbiBkc2VsZWN0OlxuIgorbXNnc3RyICIiCisiTGEgamVuYWogcGFrb2ogZXN0YXMgbnVyIGR1b25lIGFrb21vZGl0YWosIHByb2JhYmxlIHBybyBwcm9ibGVtb2ogb2themludGFqXG4iCisiZHVtIHRpZXMgdW51YSBha29tb2RhZG8uICBMYSBha29tb2RhZG8gZGV2dXMgZXN0aSByZXByb3ZpdGEgcGVyIGxhIGtvbWFuZG9cbiIKKyInZHBrZyAtLWNvbmZpZ3VyZSA8cGFrbz4nIGHFrSBwZXIgbGEgYWtvbW9kYSBtZW51ZXJvIGVuIGRzZWxlY3Q6XG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6OTQKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgb25seSBoYWxmIGluc3RhbGxlZCwgZHVlIHRvIHByb2JsZW1zIGR1cmluZ1xuIgorImluc3RhbGxhdGlvbi4gIFRoZSBpbnN0YWxsYXRpb24gY2FuIHByb2JhYmx5IGJlIGNvbXBsZXRlZCBieSByZXRyeWluZyBpdDtcbiIKKyJ0aGUgcGFja2FnZXMgY2FuIGJlIHJlbW92ZWQgdXNpbmcgZHNlbGVjdCBvciBkcGtnIC0tcmVtb3ZlOlxuIgorbXNnc3RyICIiCisiTGEgamVuYWogcGFrb2ogZXN0YXMgbnVyIGR1b25lIGFrb21vZGl0YWosIHBybyBwcm9ibGVtb2ogb2themludGFqIGR1bVxuIgorImxhIGFrb21vZGFkby4gIExhIGluc3RhbGFkbyBwcm9iYWJsZSBwb3ZhcyBlc3RpIGtvbXBsZXRhdGEgcGVyIHJlcHJvdm87XG4iCisibGEgcGFrb2ogcG92YXMgZXN0aSBmb3JpZ2F0YWogcGVyIGRzZWxlY3QgYcWtIHBlciAnZHBrZyAtLXJlbW92ZSc6XG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTAxCittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgYXJlIGF3YWl0aW5nIHByb2Nlc3Npbmcgb2YgdHJpZ2dlcnMgdGhhdCB0aGV5XG4iCisiaGF2ZSBhY3RpdmF0ZWQgaW4gb3RoZXIgcGFja2FnZXMuICBUaGlzIHByb2Nlc3NpbmcgY2FuIGJlIHJlcXVlc3RlZCB1c2luZ1xuIgorImRzZWxlY3Qgb3IgZHBrZyAtLWNvbmZpZ3VyZSAtLXBlbmRpbmcgKG9yIGRwa2cgLS10cmlnZ2Vycy1vbmx5KTpcbiIKK21zZ3N0ciAiIgorIkxhIGplbmFqIHBha29qIGF0ZW5kYXMgcHJvY2V6YWRvbiBkZSBsYSBla2lnaWxvaiBraXVqbiBpbGkgYWt0aXZpZ2lzXG4iCisiZW4gYWxpYWogcGFrb2ouICBUaXUgcHJvY2V6YWRvIHBvdmFzIGVzdGkgcGV0YXRhIHV6YW50ZSBkc2VsZWN0IGHFrcKgbGFcbiIKKyJrb21hbmRvbiAnZHBrZyAtLWNvbmZpZ3VyZSAtLXBlbmRpbmcnIChhxa3CoCdkcGtnIC0tdHJpZ2dlcnMtb25seScpOlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjEwOAorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGhhdmUgYmVlbiB0cmlnZ2VyZWQsIGJ1dCB0aGUgdHJpZ2dlciBwcm9jZXNzaW5nXG4iCisiaGFzIG5vdCB5ZXQgYmVlbiBkb25lLiAgVHJpZ2dlciBwcm9jZXNzaW5nIGNhbiBiZSByZXF1ZXN0ZWQgdXNpbmdcbiIKKyJkc2VsZWN0IG9yIGRwa2cgLS1jb25maWd1cmUgLS1wZW5kaW5nIChvciBkcGtnIC0tdHJpZ2dlcnMtb25seSk6XG4iCittc2dzdHIgIiIKKyJMYSBqZW5haiBwYWtvaiBlc3RpcyBla2lnaXRhaiwgc2VkIGxhIGVraWdpbGEgcHJvY2V6YWRvIGFua29yYcWtXG4iCisibmUgZXN0YXMgcGxlbnVtaXRhLiAgRWtpZ2lsYSBwcm9jZXphZG8gcG92YXMgZXN0aSBwZXRhdGEgdXphbnRlXG4iCisiZHNlbGVjdCBhxa3CoCdkcGtnIC0tY29uZmlndXJlIC0tcGVuZGluZycgKGHFrSAnZHBrZyAtLXRyaWdnZXJzLW9ubHknKTpcbiIKKworIzogc3JjL2VucXVpcnkuYzoxMzcgc3JjL2VucXVpcnkuYzoyMTEgc3JjL2VucXVpcnkuYzoyOTIgc3JjL2VucXVpcnkuYzozNzMKKyM6IHNyYy9lbnF1aXJ5LmM6NDYwIHNyYy9zZWxlY3QuYzo5OCBzcmMvc2VsZWN0LmM6MTY0IHNyYy90cmlnY21kLmM6MTk5CisjOiBzcmMvdXBkYXRlLmM6NDggc3JjL3VwZGF0ZS5jOjExMyBkcGtnLXNwbGl0L3F1ZXVlLmM6MjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgbm8gYXJndW1lbnRzIgorbXNnc3RyICItLSVzIHBvc3R1bGFzIG5lbml1biBhcmd1bWVudG9uIgorCisjOiBzcmMvZW5xdWlyeS5jOjE1MgorbXNnaWQgIiIKKyJBbm90aGVyIHByb2Nlc3MgaGFzIGxvY2tlZCB0aGUgZGF0YWJhc2UgZm9yIHdyaXRpbmcsIGFuZCBtaWdodCBjdXJyZW50bHkgYmVcbiIKKyJtb2RpZnlpbmcgaXQsIHNvbWUgb2YgdGhlIGZvbGxvd2luZyBwcm9ibGVtcyBtaWdodCBqdXN0IGJlIGR1ZSB0byB0aGF0LlxuIgorbXNnc3RyICIiCisiQWxpYSBwcm9jZXpvIMWdbG9zaXMgbGEgZGF0dW1iYXpvbiBwb3Igc2tyaWJhZG8sIGthaiDEnWkgcG92b3MgZXN0aSBtb2RpZmFudGFcbiIKKyLEnWluIG51biwga2Vsa2FqIGVsIGxhIHNla3ZhaiBwcm9ibGVtb2ogcG92b3MgZXN0aSDEnXVzdGUgcHJvIHRpby5cbiIKKworIzogc3JjL2VucXVpcnkuYzoxOTEKKyMsIGZ1enp5CisjfCBtc2dpZCAiPHVua25vd24+IgorbXNnY3R4dCAic2VjdGlvbiIKK21zZ2lkICI8dW5rbm93bj4iCittc2dzdHIgIjxuZWtvbmF0ZT4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MjUxCisjLCBjLWZvcm1hdAorbXNnaWQgIiAlZCBpbiAlczogIgorbXNnc3RyICIlZCBlbiAlczogIgorCisjOiBzcmMvZW5xdWlyeS5jOjI2NgorIywgYy1mb3JtYXQKK21zZ2lkICIgJWQgcGFja2FnZSwgZnJvbSB0aGUgZm9sbG93aW5nIHNlY3Rpb246IgorbXNnaWRfcGx1cmFsICIgJWQgcGFja2FnZXMsIGZyb20gdGhlIGZvbGxvd2luZyBzZWN0aW9uczoiCittc2dzdHJbMF0gIiAlZCBwYWtvLCBlbCBsYSBqZW5hIHNla2NpbzoiCittc2dzdHJbMV0gIiAlZCBwYWtvaiwgZWwgbGEgamVuYWogc2VrY2lvajoiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzA1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJWZXJzaW9uIG9mIGRwa2cgd2l0aCB3b3JraW5nICVzIHN1cHBvcnQgbm90IHlldCBjb25maWd1cmVkLlxuIgorIiBQbGVhc2UgdXNlICdkcGtnIC0tY29uZmlndXJlIGRwa2cnLCBhbmQgdGhlbiB0cnkgYWdhaW4uXG4iCittc2dzdHIgIiIKKyJWZXJzaW8gZGUgZHBrZyBrdW4gZnVua2NpYW50YSBzdWJ0ZW5vIGFsICVzIGFua29yYcWtwqBuZSBlc3Rhc1xuIgorImFrb21vZGl0YS4gQm9udm9sdSB1emkgJ2Rwa2cgLS1jb25maWd1cmUgZHBrZycsIGthaiBwb3N0ZSByZXByb3Z1LlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjMxMAorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnIG5vdCByZWNvcmRlZCBhcyBpbnN0YWxsZWQsIGNhbm5vdCBjaGVjayBmb3IgJXMgc3VwcG9ydCFcbiIKK21zZ3N0ciAiIgorImRwa2cgbmUgZXN0YXMgcmVnaXN0cml0YSBraWVsIGluc3RhbGl0YW4sIG5lIGVibGFzIGtvbnRyb2xpIHN1YnRlbm9uIGFsICVzIVxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjMyMQorbXNnaWQgIlByZS1EZXBlbmRzIGZpZWxkIgorbXNnc3RyICJrYW1wbyBQcmUtRGVwZW5kcyIKKworIzogc3JjL2VucXVpcnkuYzozMjkKK21zZ2lkICJlcG9jaCIKK21zZ3N0ciAiUE9TSVgtZGF0byIKKworIzogc3JjL2VucXVpcnkuYzozMzcKK21zZ2lkICJsb25nIGZpbGVuYW1lcyIKK21zZ3N0ciAibG9uZ2FqIGRvc2llcm5vbW9qIgorCisjOiBzcmMvZW5xdWlyeS5jOjM0NgorbXNnaWQgIm11bHRpcGxlIENvbmZsaWN0cyBhbmQgUmVwbGFjZXMiCittc2dzdHIgIm11bHRvYmxhaiBLb25mbGlrdG9qIGthaiBBbnN0YXRhxa1vaiIKKworIzogc3JjL2VucXVpcnkuYzo0MzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IGNhbm5vdCBzZWUgaG93IHRvIHNhdGlzZnkgcHJlLWRlcGVuZGVuY3k6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKyJkcGtnOiBuZSBlYmxhcyBrb25qZWt0aSBraWVsIHBsZW51bWkgYW50YcWtZGVwZW5kZWNvbjpcbiIKKyIgJXNcbiIKKworIzogc3JjL2VucXVpcnkuYzo0MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHNhdGlzZnkgcHJlLWRlcGVuZGVuY2llcyBmb3IgJS4yNTBzICh3YW50ZWQgZHVlIHRvICUuMjUwcykiCittc2dzdHIgIm5lIGVibGFzIHBsZW51bWkgYW50YcWtZGVwZW5kZWNvaiBwb3IgJS4yNTBzIChwb3N0dWxhdGUgcHJvICUuMjUwcykiCisKKyM6IHNyYy9lbnF1aXJ5LmM6NDcyCisjLCBjLWZvcm1hdAorbXNnaWQgIm9ic29sZXRlIG9wdGlvbiAnLS0lcycsIHBsZWFzZSB1c2UgJy0tJXMnIGluc3RlYWQuIgorbXNnc3RyICJtYWxha3R1YWxhIGVsZWt0ZWJsbyAnLS0lcycsIGJvbnZvbHUgdXppICctLSVzJyBhbnN0YXRhxa1lLiIKKworIzogc3JjL2VucXVpcnkuYzo1MTkKK21zZ2lkICIiCisiLS1jb21wYXJlLXZlcnNpb25zIHRha2VzIHRocmVlIGFyZ3VtZW50czogPHZlcnNpb24+IDxyZWxhdGlvbj4gPHZlcnNpb24+IgorbXNnc3RyICIiCisiLS1jb21wYXJlLXZlcnNpb25zIHBvc3R1bGFzIHRyaSBhcmd1bWVudG9qbjogPHZlcnNpbz4gPHJpbGF0bz4gPHZlcnNpbz4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6NTI0Cittc2dpZCAiLS1jb21wYXJlLXZlcnNpb25zIGJhZCByZWxhdGlvbiIKK21zZ3N0ciAibWFsxJ11c3RhIHJpbGF0byBwb3IgLS1jb21wYXJlLXZlcnNpb25zIgorCisjOiBzcmMvZW5xdWlyeS5jOjUyOSBzcmMvZW5xdWlyeS5jOjUzMSBzcmMvZW5xdWlyeS5jOjU0MCBzcmMvZW5xdWlyeS5jOjU0MgorIywgYy1mb3JtYXQKK21zZ2lkICJ2ZXJzaW9uICclcycgaGFzIGJhZCBzeW50YXg6ICVzIgorbXNnc3RyICJ2ZXJzaW8gJyVzJyBoYXZhcyBtYWzEnXVzdGFuIHNpbnRha3NvbjogJXMiCisKKyM6IHNyYy9lcnJvcnMuYzo2MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IGVycm9yIHByb2Nlc3NpbmcgJXMgKC0tJXMpOlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisiJXM6IGVyYXJvIGR1bSBwcm9jZXphZG8gZGUgJXMgKC0tJXMpOlxuIgorIiAlc1xuIgorCisjOiBzcmMvZXJyb3JzLmM6NjgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJkcGtnOiBmYWlsZWQgdG8gYWxsb2NhdGUgbWVtb3J5IGZvciBuZXcgZW50cnkgaW4gbGlzdCBvZiBmYWlsZWQgcGFja2FnZXMuIgorbXNnaWQgIiIKKyIlczogZmFpbGVkIHRvIGFsbG9jYXRlIG1lbW9yeSBmb3IgbmV3IGVudHJ5IGluIGxpc3Qgb2YgZmFpbGVkIHBhY2thZ2VzOiAlcyIKK21zZ3N0ciAiIgorImRwa2c6IG1hbHN1a2Nlc2lzIHJlemVydmkgbWVtb3JvbiBwb3Igbm92YSBlcm8gZW4gbGlzdG8gZGUgbWFsc3VrY2VzaW50YWogIgorInBha29qLiIKKworIzogc3JjL2Vycm9ycy5jOjc5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJkcGtnOiB0b28gbWFueSBlcnJvcnMsIHN0b3BwaW5nXG4iCittc2dpZCAiJXM6IHRvbyBtYW55IGVycm9ycywgc3RvcHBpbmdcbiIKK21zZ3N0ciAiZHBrZzogdHJvIGRhIGVyYXJvaiwgbmkgaGFsdGFzXG4iCisKKyM6IHNyYy9lcnJvcnMuYzo4NworbXNnaWQgIkVycm9ycyB3ZXJlIGVuY291bnRlcmVkIHdoaWxlIHByb2Nlc3Npbmc6XG4iCittc2dzdHIgIkVyYXJvaiBhcGVyaXMgZHVtIHByb2NlemFkbyBkZTpcbiIKKworIzogc3JjL2Vycm9ycy5jOjk0Cittc2dpZCAiUHJvY2Vzc2luZyB3YXMgaGFsdGVkIGJlY2F1c2UgdGhlcmUgd2VyZSB0b28gbWFueSBlcnJvcnMuXG4iCittc2dzdHIgIlByb2NlemFkbyBlc3RpcyBoYWx0YXRhIMSJYXIgZXN0aXMgdHJvIGRhIGVyYXJvai5cbiIKKworIzogc3JjL2Vycm9ycy5jOjEwNQorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlICVzIHdhcyBvbiBob2xkLCBwcm9jZXNzaW5nIGl0IGFueXdheSBhcyB5b3UgcmVxdWVzdGVkXG4iCittc2dzdHIgIkxhIHBha28gJXMgZXN0aXMgamUgdGVuYWRvLCBuaSBwcm9jZXphcyDEnWluIGllbCBham4gbGHFrSB2aWEgcGV0b1xuIgorCisjOiBzcmMvZXJyb3JzLmM6MTA5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJQYWNrYWdlICVzIGlzIG9uIGhvbGQsIG5vdCB0b3VjaGluZyBpdC4gIFVzZSAtLWZvcmNlLWhvbGQgdG8gb3ZlcnJpZGUuXG4iCittc2dzdHIgIiIKKyJMYSBwYWtvICVzIGVzdGFzIGplIHRlbmFkbywgbmkgbmUgdHXFnWFzIMSdaW4uIFV6dSAtLWZvcmNlLWhvbGQgcG9yICIKKyJwcmV0ZXJwYXNpLlxuIgorCisjOiBzcmMvZXJyb3JzLmM6MTE5Cittc2dpZCAib3ZlcnJpZGluZyBwcm9ibGVtIGJlY2F1c2UgLS1mb3JjZSBlbmFibGVkOiIKK21zZ3N0ciAicHJldGVycGFzbyBkZSBwcm9ibGVtbyDEiWFyIC0tZm9yY2UgZWJsaWdpczoiCisKKyM6IHNyYy9maWxlc2RiLmM6MzA3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSBgJS4yNTBzJyIKK21zZ3N0ciAibWFsZWJsYXMgbWFsZmVybWkgZG9zaWVyLWxpc3RhIGRvc2llcm8gcG9yIGxhIHBha28gJyUuMjUwcyciCisKKyM6IHNyYy9maWxlc2RiLmM6MzExCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcycgbWlzc2luZywgYXNzdW1pbmcgcGFja2FnZSBoYXMgbm8gZmlsZXMgIgorImN1cnJlbnRseSBpbnN0YWxsZWQuIgorbXNnc3RyICIiCisiZG9zaWVyLWxpc3RhIGRvc2llcm8gcG9yIGxhIHBha28gJyUuMjUwcycgbWFua2FzLCBuaSBrb25qZWt0YXMga2UgbGEgcGFrbyAiCisiaGF2YXMgbmVuaXVuIGRvc2llcm9uIGFrdHVhbGUgaW5zdGFsaXRhLiIKKworIzogc3JjL2ZpbGVzZGIuYzozMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICclLjI1MHMnIgorbXNnc3RyICJtYWxlYmxhcyBsZWdpIHN0YXRvbiBkZSBkb3NpZXItbGlzdGEgZG9zaWVybyBwb3IgbGEgcGFrbyAnJS4yNTBzJyIKKworIzogc3JjL2ZpbGVzZGIuYzozMzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGVzIGxpc3QgZm9yIHBhY2thZ2UgYCUuMjUwcyciCittc2dpZCAicmVhZGluZyBmaWxlcyBsaXN0IGZvciBwYWNrYWdlICclLjI1MHMnIgorbXNnc3RyICJkb3NpZXJsaXN0byBwb3IgcGFrbyAnJS4yNTBzJyIKKworIzogc3JjL2ZpbGVzZGIuYzozMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICclLjI1MHMnIGlzIG1pc3NpbmcgZmluYWwgbmV3bGluZSIKK21zZ3N0ciAiZG9zaWVyLWxpc3RhIGRvc2llcm8gcG9yIGxhIHBha28gJyUuMjUwcycgbWFsaGF2YXMgbGFzdGFuIGxpbmlmaW5hxLVvbiIKKworIzogc3JjL2ZpbGVzZGIuYzozNDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlIGAlLjI1MHMnIGNvbnRhaW5zIGVtcHR5IGZpbGVuYW1lIgorbXNnc3RyICIiCisiZG9zaWVyLWxpc3RhIGRvc2llcm8gcG9yIGxhIHBha28gJyUuMjUwcycgZW5oYXZhcyBtYWxwbGVuYW4gZG9zaWVybm9tb24iCisKKyM6IHNyYy9maWxlc2RiLmM6MzUyCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlIGAlLjI1MHMnIgorbXNnc3RyICJlcmFybyBkdW0gZmVybW8gZGUgZG9zaWVyLWxpc3RhIGRvc2llcm8gcG9yIGxhIHBha28gJyUuMjUwcyciCisKKyM6IHNyYy9maWxlc2RiLmM6NDYyCittc2dpZCAiKFJlYWRpbmcgZGF0YWJhc2UgLi4uICIKK21zZ3N0ciAiKExlZ2FkbyBkZSBkYXR1bWJhem8gLi4uIgorCisjOiBzcmMvZmlsZXNkYi5jOjQ4MworIywgYy1mb3JtYXQKK21zZ2lkICIlZCBmaWxlIG9yIGRpcmVjdG9yeSBjdXJyZW50bHkgaW5zdGFsbGVkLilcbiIKK21zZ2lkX3BsdXJhbCAiJWQgZmlsZXMgYW5kIGRpcmVjdG9yaWVzIGN1cnJlbnRseSBpbnN0YWxsZWQuKVxuIgorbXNnc3RyWzBdICIlZCBkb3NpZXJvIGHFrSBkb3NpZXJ1am8gYWt0dWFsZSBpbnN0YWxpdGEuKVxuIgorbXNnc3RyWzFdICIlZCBkb3NpZXJvaiBrYWogZG9zaWVydWpvaiBha3R1YWxlIGluc3RhbGl0YWouKVxuIgorCisjOiBzcmMvZmlsZXNkYi5jOjUxNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICJtYWxlYmxhcyBrcmVpIMSdaXNkYXRhbiBkb3NpZXItbGlzdGEgZG9zaWVybyBwb3IgbGEgcGFrbyAlcyIKKworIzogc3JjL2ZpbGVzZGIuYzo1MjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIHRvIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICJtYWxzdWtjZXNpcyBza3JpYmkgxJ1pc2RhdGFuIGRvc2llci1saXN0YW4gZG9zaWVyb24gcG9yIGxhIHBha28gJXMiCisKKyM6IHNyYy9maWxlc2RiLmM6NTI4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBmbHVzaCB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAibWFsc3VrY2VzaXMgZWxidWZyaWdpIMSdaXNkYXRhbiBkb3NpZXItbGlzdGFuIGRvc2llcm9uIHBvciBsYSBwYWtvICVzICIKKworIzogc3JjL2ZpbGVzZGIuYzo1MzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHN5bmMgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIm1hbHN1a2Nlc2lzIHNpbmtyb25pZ2kgxJ1pc2RhdGFuIGRvc2llci1saXN0YW4gZG9zaWVyb24gcG9yIGxhIHBha28gJXMgIgorCisjOiBzcmMvZmlsZXNkYi5jOjUzMworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2xvc2UgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIm1hbHN1a2Nlc2lzIGZlcm1pIMSdaXNkYXRhbiBkb3NpZXItbGlzdGFuIGRvc2llcm9uIHBvciBsYSBwYWtvICVzICIKKworIzogc3JjL2ZpbGVzZGIuYzo1MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGluc3RhbGwgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIm1hbHN1a2Nlc2lzIGluc3RhbGkgxJ1pc2RhdGFuIGRvc2llci1saXN0YW4gZG9zaWVyb24gcG9yIGxhIHBha28gJXMgIgorCisjOiBzcmMvaGVscC5jOjQ4Cittc2dpZCAibm90IGluc3RhbGxlZCIKK21zZ3N0ciAibmUgaW5zdGFsaXRhIgorCisjOiBzcmMvaGVscC5jOjQ5Cittc2dpZCAibm90IGluc3RhbGxlZCBidXQgY29uZmlncyByZW1haW4iCittc2dzdHIgIm5lIGluc3RhbGl0YSBzZWQgcmVzdGFzIGFrb21vZG9qIgorCisjOiBzcmMvaGVscC5jOjUwCittc2dpZCAiYnJva2VuIGR1ZSB0byBmYWlsZWQgcmVtb3ZhbCBvciBpbnN0YWxsYXRpb24iCittc2dzdHIgImRpc3JvbXBpdGEgcHJvIG1hbHN1a2Nlc28gZGUgZm9yaWdvIGHFrSBkZSBpbnN0YWxvIgorCisjOiBzcmMvaGVscC5jOjUxCittc2dpZCAidW5wYWNrZWQgYnV0IG5vdCBjb25maWd1cmVkIgorbXNnc3RyICJtYWxwYWtpdGEgc2VkIG5lIGFrb21vZGl0ZSIKKworIzogc3JjL2hlbHAuYzo1MgorbXNnaWQgImJyb2tlbiBkdWUgdG8gcG9zdGluc3QgZmFpbHVyZSIKK21zZ3N0ciAiZGlzcm9tcGl0YSBwcm8gbWFsc3VrY2VzbyBkZSAncG9zdGluc3QnIgorCisjOiBzcmMvaGVscC5jOjUzCittc2dpZCAiYXdhaXRpbmcgdHJpZ2dlciBwcm9jZXNzaW5nIGJ5IGFub3RoZXIgcGFja2FnZSIKK21zZ3N0ciAibmkgYXRlbmRhcyBrZSBhbGlhIHBha28gcHJvY2V6dSBla2lnaWxvam4iCisKKyM6IHNyYy9oZWxwLmM6NTQKK21zZ2lkICJ0cmlnZ2VyZWQiCittc2dzdHIgImVraWdpdGEiCisKKyM6IHNyYy9oZWxwLmM6NTUKK21zZ2lkICJpbnN0YWxsZWQiCittc2dzdHIgImluc3RhbGl0YSIKKworIzogc3JjL2hlbHAuYzoxMDcKKyMsIGZ1enp5CisjfCBtc2dpZCAiZXJyb3I6IFBBVEggaXMgbm90IHNldC4iCittc2dpZCAiUEFUSCBpcyBub3Qgc2V0LiIKK21zZ3N0ciAiZXJhcm86IFBBVEggbmUgZXN0YXMgZGlmaW5pdGEuIgorCisjOiBzcmMvaGVscC5jOjEyOQorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIG5vdCBmb3VuZCBpbiBQQVRIIG9yIG5vdCBleGVjdXRhYmxlLiIKK21zZ3N0ciAiJyVzJyBuZSB0cm92aXRhIGVuIFBBVEggYcWtIG5lIGxhbsSJZWJsYS4iCisKKyM6IHNyYy9oZWxwLmM6MTM4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICInJXMnIG5vdCBmb3VuZCBpbiBQQVRIIG9yIG5vdCBleGVjdXRhYmxlLiIKK21zZ2lkICIiCisiJWQgZXhwZWN0ZWQgcHJvZ3JhbSBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS5cbiIKKyIlcyIKK21zZ2lkX3BsdXJhbCAiIgorIiVkIGV4cGVjdGVkIHByb2dyYW1zIG5vdCBmb3VuZCBpbiBQQVRIIG9yIG5vdCBleGVjdXRhYmxlLlxuIgorIiVzIgorbXNnc3RyWzBdICInJXMnIG5lIHRyb3ZpdGEgZW4gUEFUSCBhxa0gbmUgbGFuxIllYmxhLiIKK21zZ3N0clsxXSAiJyVzJyBuZSB0cm92aXRhIGVuIFBBVEggYcWtIG5lIGxhbsSJZWJsYS4iCisKKyM6IHNyYy9oZWxwLmM6MTQxCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICIlZCBleHBlY3RlZCBwcm9ncmFtIG5vdCBmb3VuZCBpbiBQQVRIIG9yIG5vdCBleGVjdXRhYmxlLlxuIgorI3wgIk5COiByb290J3MgUEFUSCBzaG91bGQgdXN1YWxseSBjb250YWluIC91c3IvbG9jYWwvc2JpbiwgL3Vzci9zYmluIGFuZCAvIgorI3wgInNiaW4uIgorI3wgbXNnaWRfcGx1cmFsICIiCisjfCAiJWQgZXhwZWN0ZWQgcHJvZ3JhbXMgbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuXG4iCisjfCAiTkI6IHJvb3QncyBQQVRIIHNob3VsZCB1c3VhbGx5IGNvbnRhaW4gL3Vzci9sb2NhbC9zYmluLCAvdXNyL3NiaW4gYW5kIC8iCisjfCAic2Jpbi4iCittc2dpZCAiIgorIk5vdGU6IHJvb3QncyBQQVRIIHNob3VsZCB1c3VhbGx5IGNvbnRhaW4gL3Vzci9sb2NhbC9zYmluLCAvdXNyL3NiaW4gYW5kIC8iCisic2Jpbi4iCittc2dzdHIgIiIKKyIlZCBhdGVuZGl0YSBwcm9ncmFtbyBuZSB0cm92acSdYXMgZW4gUEFUSCBhxa0gbmUgZXN0YXMgbGFuxIllYmxhLlxuIgorInJpbS46IFBBVEggcG9yICdyb290JyBkZXZhcyBvcmRpbmFyZSBlbmhhdmkgL3Vzci9sb2NhbC9zYmluLCAvdXNyL3NiaW4ga2FqIC8iCisic2Jpbi4iCisKKyM6IHNyYy9oZWxwLmM6MTg4Cittc2dpZCAiYWRtaW5kaXIgbXVzdCBiZSBpbnNpZGUgaW5zdGRpciBmb3IgZHBrZyB0byB3b3JrIHByb3Blcmx5IgorbXNnc3RyICIiCisKKyM6IHNyYy9oZWxwLmM6MTkwIHNyYy9tYWluLmM6NzQ3CisjLCBmdXp6eQorI3wgbXNnaWQgInVuYWJsZSB0byBzZXRlbnYgZm9yIG1haW50YWluZXIgc2NyaXB0IgorbXNnaWQgInVuYWJsZSB0byBzZXRlbnYgZm9yIHN1YnByb2Nlc3NlcyIKK21zZ3N0ciAibWFsZWJsYXMgdXppICdzZXRlbnYnIHBvciBsYSBza3JpcHRvIGRlIHBha3pvcmdhbnRvIgorCisjOiBzcmMvaGVscC5jOjE5MgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2hyb290IHRvIGAlLjI1MHMnIgorbXNnc3RyICJtYWxzdWtjZXNvIHBvciBhcGxpa2kgJ2Nocm9vdCcgYWwgJyUuMjUwcyciCisKKyM6IHNyYy9oZWxwLmM6MTk0IGRwa2ctZGViL2J1aWxkLmM6NDU1IGRwa2ctZGViL2J1aWxkLmM6NDU3CisjOiBkcGtnLWRlYi9idWlsZC5jOjUzNiBkcGtnLWRlYi9idWlsZC5jOjU1OAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gYCUuMjU1cyciCittc2dzdHIgIm1hbHN1a2Nlc2lzIHBlciBjaGRpciBhbDogJyUuMjU1cyciCisKKyM6IHNyYy9oZWxwLmM6MjU2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgZXhlY3V0ZSBwZXJtaXNzaW9ucyBvbiBgJS4yNTBzJyIKK21zZ3N0ciAibWFsZWJsYXMgZGlmaW5pIHBsZW51bS1wZXJtZXNvam4gcG9yICclLjI1MHMnIgorCisjOiBzcmMvaGVscC5jOjI3NgorbXNnaWQgInVuYWJsZSB0byBzZXRlbnYgZm9yIG1haW50YWluZXIgc2NyaXB0IgorbXNnc3RyICJtYWxlYmxhcyB1emkgJ3NldGVudicgcG9yIGxhIHNrcmlwdG8gZGUgcGFrem9yZ2FudG8iCisKKyM6IHNyYy9oZWxwLmM6MzAwCisjLCBjLWZvcm1hdAorbXNnaWQgImluc3RhbGxlZCAlcyBzY3JpcHQiCittc2dzdHIgImluc3RhbGlzIHNrcmlwdG9uICVzIgorCisjOiBzcmMvaGVscC5jOjMxMyBzcmMvaGVscC5jOjM4MiBzcmMvaGVscC5jOjQ0MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCAlcyBgJS4yNTBzJyIKK21zZ3N0ciAibWFsZWJsYXMgbGVnaSBzdGF0b24gZGUgJXMgJyUuMjUwcyciCisKKyM6IHNyYy9oZWxwLmM6MzY4IHNyYy9oZWxwLmM6NDI4CisjLCBjLWZvcm1hdAorbXNnaWQgIm5ldyAlcyBzY3JpcHQiCittc2dzdHIgIm5vdmEgc2tyaXB0byAlcyIKKworIzogc3JjL2hlbHAuYzo0MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAib2xkICVzIHNjcmlwdCIKK21zZ3N0ciAibWFsbm92YSBza3JpcHRvICVzIgorCisjOiBzcmMvaGVscC5jOjQxNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCAlcyAnJS4yNTBzJzogJXMiCittc2dzdHIgIm1hbGVibGFzIGxlZ2kgc3RhdG9uIGRlICVzICclLjI1MHMnOiAlcyIKKworIzogc3JjL2hlbHAuYzo0MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZyAtIHRyeWluZyBzY3JpcHQgZnJvbSB0aGUgbmV3IHBhY2thZ2UgaW5zdGVhZCAuLi5cbiIKK21zZ3N0ciAiZHBrZyAtIG5pIHByb3ZhcyBza3JpcHRvbiBlbCBsYSBub3ZhIHBha28gYW5zdGF0YcWtZSAuLi5cbiIKKworIzogc3JjL2hlbHAuYzo0MzkKK21zZ2lkICJ0aGVyZSBpcyBubyBzY3JpcHQgaW4gdGhlIG5ldyB2ZXJzaW9uIG9mIHRoZSBwYWNrYWdlIC0gZ2l2aW5nIHVwIgorbXNnc3RyICJlc3RhcyBuZW5pdSBza3JpcHRvIGVuIGxhIG5vdmEgdmVyc2lvIGRlIGxhIHBha28gLSBuaSByZXppZ25hcyIKKworIzogc3JjL2hlbHAuYzo0NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogLi4uIGl0IGxvb2tzIGxpa2UgdGhhdCB3ZW50IE9LLlxuIgorbXNnc3RyICJkcGtnOiAuLi4gxZ1ham5lIHN1a2Nlc2UuXG4iCisKKyM6IHNyYy9oZWxwLmM6NjE2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWN1cmVseSByZW1vdmUgJyUuMjU1cyciCittc2dzdHIgIm1hbGVibGFzIHNla3VyZSBmb3JpZ2kgJyUuMjU1cyciCisKKyM6IHNyYy9oZWxwLmM6NjIxIGRwa2ctZGViL2luZm8uYzo2NSBkcGtnLWRlYi9pbmZvLmM6NjcKK21zZ2lkICJybSBjb21tYW5kIGZvciBjbGVhbnVwIgorbXNnc3RyICIiCisKKyM6IHNyYy9pbmZvZGIuYzo1MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hlY2sgZXhpc3RlbmNlIG9mIGAlLjI1MHMnIgorbXNnc3RyICJtYWxlYmxhcyBrb250cm9saSBla3ppc3RvbiBkZSAnJS4yNTBzJyIKKworIzogc3JjL2luZm9kYi5jOjcwCittc2dpZCAiY2Fubm90IHJlYWQgaW5mbyBkaXJlY3RvcnkiCittc2dzdHIgIm5lIHBvdmFzIGxlZ2kgaW5mb3JtYW4gZG9zaWVydWpvbiIKKworIzogc3JjL21haW4uYzo2MAorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIG1hbmFnZW1lbnQgcHJvZ3JhbSB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICJEZWJpYW4gJyVzJywgcGFrLWFkbWluaXN0cmEgcHJvZ3JhbW8gdmVyc2lvICVzLlxuIgorCisjOiBzcmMvbWFpbi5jOjg1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1pfC0taW5zdGFsbCAgICAgICA8LmRlYiBmaWxlIG5hbWU+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXJlY3Rvcnk+IC4uLlxuIgorIiAgLS11bnBhY2sgICAgICAgICAgIDwuZGViIGZpbGUgbmFtZT4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRpcmVjdG9yeT4gLi4uXG4iCisiICAtQXwtLXJlY29yZC1hdmFpbCAgPC5kZWIgZmlsZSBuYW1lPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyZWN0b3J5PiAuLi5cbiIKKyIgIC0tY29uZmlndXJlICAgICAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtLXRyaWdnZXJzLW9ubHkgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLXJ8LS1yZW1vdmUgICAgICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC1QfC0tcHVyZ2UgICAgICAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtLWdldC1zZWxlY3Rpb25zIFs8cGF0dGVybj4gLi4uXSBHZXQgbGlzdCBvZiBzZWxlY3Rpb25zIHRvIHN0ZG91dC5cbiIKKyIgIC0tc2V0LXNlbGVjdGlvbnMgICAgICAgICAgICAgICAgIFNldCBwYWNrYWdlIHNlbGVjdGlvbnMgZnJvbSBzdGRpbi5cbiIKKyIgIC0tY2xlYXItc2VsZWN0aW9ucyAgICAgICAgICAgICAgIERlc2VsZWN0IGV2ZXJ5IG5vbi1lc3NlbnRpYWwgcGFja2FnZS5cbiIKKyIgIC0tdXBkYXRlLWF2YWlsIDxQYWNrYWdlcy1maWxlPiAgIFJlcGxhY2UgYXZhaWxhYmxlIHBhY2thZ2VzIGluZm8uXG4iCisiICAtLW1lcmdlLWF2YWlsIDxQYWNrYWdlcy1maWxlPiAgICBNZXJnZSB3aXRoIGluZm8gZnJvbSBmaWxlLlxuIgorIiAgLS1jbGVhci1hdmFpbCAgICAgICAgICAgICAgICAgICAgRXJhc2UgZXhpc3RpbmcgYXZhaWxhYmxlIGluZm8uXG4iCisiICAtLWZvcmdldC1vbGQtdW5hdmFpbCAgICAgICAgICAgICBGb3JnZXQgdW5pbnN0YWxsZWQgdW5hdmFpbGFibGUgcGtncy5cbiIKKyIgIC1zfC0tc3RhdHVzIDxwYWNrYWdlPiAuLi4gICAgICAgIERpc3BsYXkgcGFja2FnZSBzdGF0dXMgZGV0YWlscy5cbiIKKyIgIC1wfC0tcHJpbnQtYXZhaWwgPHBhY2thZ2U+IC4uLiAgIERpc3BsYXkgYXZhaWxhYmxlIHZlcnNpb24gZGV0YWlscy5cbiIKKyIgIC1MfC0tbGlzdGZpbGVzIDxwYWNrYWdlPiAuLi4gICAgIExpc3QgZmlsZXMgYG93bmVkJyBieSBwYWNrYWdlKHMpLlxuIgorIiAgLWx8LS1saXN0IFs8cGF0dGVybj4gLi4uXSAgICAgICAgTGlzdCBwYWNrYWdlcyBjb25jaXNlbHkuXG4iCisiICAtU3wtLXNlYXJjaCA8cGF0dGVybj4gLi4uICAgICAgICBGaW5kIHBhY2thZ2Uocykgb3duaW5nIGZpbGUocykuXG4iCisiICAtQ3wtLWF1ZGl0ICAgICAgICAgICAgICAgICAgICAgICBDaGVjayBmb3IgYnJva2VuIHBhY2thZ2UocykuXG4iCisiICAtLXByaW50LWFyY2hpdGVjdHVyZSAgICAgICAgICAgICBQcmludCBkcGtnIGFyY2hpdGVjdHVyZS5cbiIKKyIgIC0tY29tcGFyZS12ZXJzaW9ucyA8YT4gPG9wPiA8Yj4gIENvbXBhcmUgdmVyc2lvbiBudW1iZXJzIC0gc2VlIGJlbG93LlxuIgorIiAgLS1mb3JjZS1oZWxwICAgICAgICAgICAgICAgICAgICAgU2hvdyBoZWxwIG9uIGZvcmNpbmcuXG4iCisiICAtRGh8LS1kZWJ1Zz1oZWxwICAgICAgICAgICAgICAgICBTaG93IGhlbHAgb24gZGVidWdnaW5nLlxuIgorIlxuIgorbXNnc3RyICIiCisiS29tYW5kb2o6XG4iCisiICAtaXwtLWluc3RhbGwgICAgICAgPC5kZWIgZG9zaWVybm9tbz4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRvc2llcnVqbz4gLi4uXG4iCisiICAtLXVucGFjayAgICAgICAgICAgPC5kZWIgZG9zaWVybm9tbz4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRvc2llcnVqbz4gLi4uXG4iCisiICAtQXwtLXJlY29yZC1hdmFpbCAgPC5kZWIgZG9zaWVybm9tbz4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRvc2llcnVqbz4gLi4uXG4iCisiICAtLWNvbmZpZ3VyZSAgICAgICAgPHBha28+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLS10cmlnZ2Vycy1vbmx5ICAgIDxwYWtvPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC1yfC0tcmVtb3ZlICAgICAgICA8cGFrbz4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtUHwtLXB1cmdlICAgICAgICAgPHBha28+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLS1nZXQtc2VsZWN0aW9ucyBbPG1vZGVsbz4gLi4uXSBNZXRpIGxpc3RvbiBkZSBlbGVrdG9qIGFsIHN0ZG91dC5cbiIKKyIgIC0tc2V0LXNlbGVjdGlvbnMgICAgICAgICAgICAgICAgIERpZmluaSBwYWstZWxla3Rvam4gZWwgc3RkaW4uXG4iCisiICAtLWNsZWFyLXNlbGVjdGlvbnMgICAgICAgICAgICAgICBNYWxlbGVrdGkgxIlpdW4gbmUtZXNlbmNhbiBwYWtvbi5cbiIKKyIgIC0tdXBkYXRlLWF2YWlsIDxkb3NpZXJvIFBhY2thZ2VzPiAgIEFuc3RhdGHFrWkgZGlzcG9uZWJsYW4gaW5mb3Jtb24gcHJpICIKKyJwYWtvai5cbiIKKyIgIC0tbWVyZ2UtYXZhaWwgPGRvc2llcm8gUGFja2FnZXM+ICAgIE1pa3NpIGt1biBpbmZvcm1vIGVsIGRvc2llcm8uXG4iCisiICAtLWNsZWFyLWF2YWlsICAgICAgICAgICAgICAgICAgICBGb3JpZ2kgZWt6aXN0YW50YW4gZGlzcG9uZWJsYW4gaW5mb3Jtb24uXG4iCisiICAtLWZvcmdldC1vbGQtdW5hdmFpbCAgICAgICAgICAgICBGb3JnZXNpIG5laW5zdGFsaXRham4gbWFsZGlzcG9uZWJsYWpuICIKKyJwYWtvam4uXG4iCisiICAtc3wtLXN0YXR1cyA8cGFrbz4gLi4uICAgICAgICBNb250cmlnaSBkZXRhbG9qbiBwcmkgcGFrLXN0YXRvLlxuIgorIiAgLXB8LS1wcmludC1hdmFpbCA8cGFrbz4gLi4uICAgTW9udHJpZ2kgZGV0YWxvam4gcHJpIGRpc3BvbmVibGEgdmVyc2lvLlxuIgorIiAgLUx8LS1saXN0ZmlsZXMgPHBha28+IC4uLiAgICAgTGlzdGlnaSBkb3NpZXJvam4gJ3Bvc2VkYXRham4nIGRlIGxhIHBha28iCisiKGopLlxuIgorIiAgLWx8LS1saXN0IFs8cGFrbz4gLi4uXSAgICAgICAgTGlzdGlnaSBwYWtvam4gcmVzdW1lLlxuIgorIiAgLVN8LS1zZWFyY2ggPHBha28+IC4uLiAgICAgICAgVHJvdmkgcGFrbyhqKW4gcG9zZWRhbnRhKGopbiBkb3NpZXJvKGopbi5cbiIKKyIgIC1DfC0tYXVkaXQgICAgICAgICAgICAgICAgICAgICAgIEtvbnRyb2xpIHJvbXBpdGEoailuIHBha28oailuLlxuIgorIiAgLS1wcmludC1hcmNoaXRlY3R1cmUgICAgICAgICAgICAgUHJpbnRpIGFya2l0ZWt0dXJvIGRlIGRwa2cuXG4iCisiICAtLWNvbXBhcmUtdmVyc2lvbnMgPGE+IDxvcD4gPGI+ICBLb21wYXJpIHZlcnNpLW51bWVyb2puIC0gdmlkdSBzdWJlLlxuIgorIiAgLS1mb3JjZS1oZWxwICAgICAgICAgICAgICAgICAgICAgTW9udHJpIGhlbHBvbiBqZSBwZXJmb3J0by5cbiIKKyIgIC1EaHwtLWRlYnVnPWhlbHAgICAgICAgICAgICAgICAgIE1vbnRyaSBoZWxwb24gamUgc2VuZXJhcmlnby5cbiIKKyJcbiIKKworIzogc3JjL21haW4uYzoxMTMgc3JjL3F1ZXJ5Y21kLmM6NjMxIHNyYy90cmlnY21kLmM6NzcgZHBrZy1kZWIvbWFpbi5jOjg4CisjOiBkcGtnLXNwbGl0L21haW4uYzo3NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiICAtaHwtLWhlbHAgICAgICAgICAgICAgICAgICAgICAgICBTaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICAgICAgICAgU2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIiAgLWh8LS1oZWxwICAgICAgICAgICAgICAgICAgICAgICAgTW9udHJpIHRpdW4gxIlpIGhlbHAtbWVzYcSdb24uXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgICAgICAgICBNb250cmkgbGEgdmVyc2lvbi5cbiIKKyJcbiIKKworIzogc3JjL21haW4uYzoxMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlVzZSBkcGtnIC1ifC0tYnVpbGR8LWN8LS1jb250ZW50c3wtZXwtLWNvbnRyb2x8LUl8LS1pbmZvfC1mfC0tZmllbGR8XG4iCisiIC14fC0tZXh0cmFjdHwtWHwtLXZleHRyYWN0fC0tZnN5cy10YXJmaWxlICBvbiBhcmNoaXZlcyAodHlwZSAlcyAtLWhlbHApLlxuIgorIlxuIgorbXNnc3RyICIiCisiVXp1IGRwa2cgLWJ8LS1idWlsZHwtY3wtLWNvbnRlbnRzfC1lfC0tY29udHJvbHwtSXwtLWluZm98LWZ8LS1maWVsZHxcbiIKKyIgLXh8LS1leHRyYWN0fC1YfC0tdmV4dHJhY3R8LS1mc3lzLXRhcmZpbGUgIGplIGFya2l2b2ogKHRhanB1ICVzIC0taGVscCkuXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTIzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJGb3IgaW50ZXJuYWwgdXNlOiBkcGtnIC0tYXNzZXJ0LXN1cHBvcnQtcHJlZGVwZW5kcyB8IC0tcHJlZGVwLXBhY2thZ2UgfFxuIgorIiAgLS1hc3NlcnQtd29ya2luZy1lcG9jaCB8IC0tYXNzZXJ0LWxvbmctZmlsZW5hbWVzIHwgLS1hc3NlcnQtbXVsdGktY29ucmVwLlxuIgorIlxuIgorbXNnc3RyICIiCisiUG9yIGludGVybmEgdXpvOiBkcGtnIC0tYXNzZXJ0LXN1cHBvcnQtcHJlZGVwZW5kcyB8IC0tcHJlZGVwLXBhY2thZ2UgfFxuIgorIiAgLS1hc3NlcnQtd29ya2luZy1lcG9jaCB8IC0tYXNzZXJ0LWxvbmctZmlsZW5hbWVzIHwgLS1hc3NlcnQtbXVsdGktY29ucmVwLlxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjEyOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT4gICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorIiAgLS1yb290PTxkaXJlY3Rvcnk+ICAgICAgICAgSW5zdGFsbCBvbiBhIGRpZmZlcmVudCByb290IGRpcmVjdG9yeS5cbiIKKyIgIC0taW5zdGRpcj08ZGlyZWN0b3J5PiAgICAgIENoYW5nZSBpbnN0YWxsYXRpb24gZGlyIHdpdGhvdXQgY2hhbmdpbmcgYWRtaW4gIgorImRpci5cbiIKKyIgIC0tcGF0aC1leGNsdWRlPTxwYXR0ZXJuPiAgIERvIG5vdCBpbnN0YWxsIHBhdGhzIHdoaWNoIG1hdGNoIGEgc2hlbGwgIgorInBhdHRlcm4uXG4iCisiICAtLXBhdGgtaW5jbHVkZT08cGF0dGVybj4gICBSZS1pbmNsdWRlIGEgcGF0dGVybiBhZnRlciBhIHByZXZpb3VzICIKKyJleGNsdXNpb24uXG4iCisiICAtT3wtLXNlbGVjdGVkLW9ubHkgICAgICAgICBTa2lwIHBhY2thZ2VzIG5vdCBzZWxlY3RlZCBmb3IgaW5zdGFsbC8iCisidXBncmFkZS5cbiIKKyIgIC1FfC0tc2tpcC1zYW1lLXZlcnNpb24gICAgIFNraXAgcGFja2FnZXMgd2hvc2Ugc2FtZSB2ZXJzaW9uIGlzIGluc3RhbGxlZC5cbiIKKyIgIC1HfC0tcmVmdXNlLWRvd25ncmFkZSAgICAgIFNraXAgcGFja2FnZXMgd2l0aCBlYXJsaWVyIHZlcnNpb24gdGhhbiAiCisiaW5zdGFsbGVkLlxuIgorIiAgLUJ8LS1hdXRvLWRlY29uZmlndXJlICAgICAgSW5zdGFsbCBldmVuIGlmIGl0IHdvdWxkIGJyZWFrIHNvbWUgb3RoZXIgIgorInBhY2thZ2UuXG4iCisiICAtLVtuby1ddHJpZ2dlcnMgICAgICAgICAgICBTa2lwIG9yIGZvcmNlIGNvbnNlcXVlbnRpYWwgdHJpZ2dlciAiCisicHJvY2Vzc2luZy5cbiIKKyIgIC0tbm8tZGVic2lnICAgICAgICAgICAgICAgIERvIG5vdCB0cnkgdG8gdmVyaWZ5IHBhY2thZ2Ugc2lnbmF0dXJlcy5cbiIKKyIgIC0tbm8tYWN0fC0tZHJ5LXJ1bnwtLXNpbXVsYXRlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBKdXN0IHNheSB3aGF0IHdlIHdvdWxkIGRvIC0gZG9uJ3QgZG8gaXQuXG4iCisiICAtRHwtLWRlYnVnPTxvY3RhbD4gICAgICAgICBFbmFibGUgZGVidWdnaW5nIChzZWUgLURoZWxwIG9yIC0tZGVidWc9aGVscCkuXG4iCisiICAtLXN0YXR1cy1mZCA8bj4gICAgICAgICAgICBTZW5kIHN0YXR1cyBjaGFuZ2UgdXBkYXRlcyB0byBmaWxlIGRlc2NyaXB0b3IgIgorIjxuPi5cbiIKKyIgIC0tbG9nPTxmaWxlbmFtZT4gICAgICAgICAgIExvZyBzdGF0dXMgY2hhbmdlcyBhbmQgYWN0aW9ucyB0byA8ZmlsZW5hbWU+LlxuIgorIiAgLS1pZ25vcmUtZGVwZW5kcz08cGFja2FnZT4sLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZ25vcmUgZGVwZW5kZW5jaWVzIGludm9sdmluZyA8cGFja2FnZT4uXG4iCisiICAtLWZvcmNlLS4uLiAgICAgICAgICAgICAgICBPdmVycmlkZSBwcm9ibGVtcyAoc2VlIC0tZm9yY2UtaGVscCkuXG4iCisiICAtLW5vLWZvcmNlLS4uLnwtLXJlZnVzZS0uLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3Agd2hlbiBwcm9ibGVtcyBlbmNvdW50ZXJlZC5cbiIKKyIgIC0tYWJvcnQtYWZ0ZXIgPG4+ICAgICAgICAgIEFib3J0IGFmdGVyIGVuY291bnRlcmluZyA8bj4gZXJyb3JzLlxuIgorIlxuIgorbXNnc3RyICIiCisiRWxla3RlYmxvajpcbiIKKyIgIC0tYWRtaW5kaXI9PGRvc2llcnVqbz4gICAgIFV6aSA8ZG9zaWVydWpvPiBhbnN0YXRhxa0gJXMuXG4iCisiICAtLXJvb3Q9PGRvc2llcnVqbz4gICAgICAgICBJbnN0YWxpIGVuIG1hbHNhbWEgcmFkaWthIGRvc2llcnVqby5cbiIKKyIgIC0taW5zdGRpcj08ZG9zaWVydWpvPiAgICAgIMWcYW7EnWkgaW5zdGFsYW4gZG9zaWVydWpvbiBzZW4gxZ1hbsSdaSBhZG1pbmlzdHJhbiAiCisiZG9zaWVydWpvbi5cbiIKKyIgIC0tcGF0aC1leGNsdWRlPTzFnWFibG9ubz4gICBOZSBpbnN0YWxpIHZvam9qbiwga2l1aiBrb25ncnVhcyBhbCBsYSDFnWVsYSAiCisixZ1hYmxvbm8uXG4iCisiICAtLXBhdGgtaW5jbHVkZT08xZ1hYmxvbm8+ICAgUmUtaW5rbHV6aXZpZ2kgxZ1hYmxvbm9uIHBvc3QgxLV1c2FuIGZvcmlnb24uXG4iCisiICAtT3wtLXNlbGVjdGVkLW9ubHkgICAgICAgICBQcmV0ZXJwYXNpIHBha29qbiBuZSBlbGVrdGl0YWpuIHBvciBpbnN0YWxvLyIKKyJwcm9tb2Npby5cbiIKKyIgIC1FfC0tc2tpcC1zYW1lLXZlcnNpb24gICAgIFByZXRlcnBhc2kgcGFrb2puIGtpZXMgc2FtYSB2ZXJzaW8gZXN0dSAiCisiaW5zdGFsaXRhLlxuIgorIiAgLUd8LS1yZWZ1c2UtZG93bmdyYWRlICAgICAgUHJldGVycGFzaSBwYWtvam4ga3VuIHBsaSBtYWxub3ZhIHZlcnNpbyBvbCAiCisiaW5zdGFsaXRlLlxuIgorIiAgLUJ8LS1hdXRvLWRlY29uZmlndXJlICAgICAgSW5zdGFsaSBlxIkgc2UgdGlvIHJvbXB1cyBpdW4gYWxpYW4gcGFrb24uXG4iCisiICAtLVtuby1ddHJpZ2dlcnMgICAgICAgICAgICBQcmV0ZXJwYXNpIGHFrcKgcGVyZm9ydGkgc2VrdmFuIGVraWdpbGFuICIKKyJwcm9jZXphZG9uLlxuIgorIiAgLS1uby1kZWJzaWcgICAgICAgICAgICAgICAgTmUgcHJvdmkga29udHJvbGkgcGFrYWpuIHN1YnNrcmlib2puLlxuIgorIiAgLS1uby1hY3R8LS1kcnktcnVufC0tc2ltdWxhdGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNpbXBsZSBtb250cmkga2lvbiBvbmkgZmFydXMgLSBuZSBwbGVudW1pLlxuIgorIiAgLUR8LS1kZWJ1Zz08b2t1bW8+ICAgICAgICAgRWJsaWdpIHNlbmVyYXJpZ29uICh2aWR1IC1EaGVscCBhxa0gLS0iCisiZGVidWc9aGVscCkuXG4iCisiICAtLXN0YXR1cy1mZCA8bj4gICAgICAgICAgICBTZW5kaSDEnWlzZGF0aWdvam4gZGUgc3RhdC3FnWFuxJ1vaiBhbCBkb3NpZXItIgorInByaXNrcmliaWxvIDxuPi5cbiIKKyIgIC0tbG9nPTxkb3NpZXJub21vPiAgICAgICAgICAgUHJvdG9rb2xpIHN0YXQtxZ1hbsSdb2puIGthaiBhZ2Fkb24gYWwgIgorIjxkb3NpZXJub21vPi5cbiIKKyIgIC0taWdub3JlLWRlcGVuZHM9PHBha28+LC4uLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHJldGVyYXRlbnRpIGRlcGVuZG9qbiBrb25jZXJuYW50YWpuIDxwYWtvPi5cbiIKKyIgIC0tZm9yY2UtLi4uICAgICAgICAgICAgICAgIFByZXRlcnBhc2kgcHJvYmxlbW9qbiAodmlkdSAtLWZvcmNlLWhlbHApLlxuIgorIiAgLS1uby1mb3JjZS0uLi58LS1yZWZ1c2UtLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBIYWx0aSBraWFtIHByb2JsZW1vaiB0cm92acSdYXMuXG4iCisiICAtLWFib3J0LWFmdGVyIDxuPiAgICAgICAgICDEiGVzaSBwb3N0IHRyb3ZvIGRlIDxuPiBlcmFyb2ouXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTU0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21wYXJpc29uIG9wZXJhdG9ycyBmb3IgLS1jb21wYXJlLXZlcnNpb25zIGFyZTpcbiIKKyIgIGx0IGxlIGVxIG5lIGdlIGd0ICAgICAgICh0cmVhdCBlbXB0eSB2ZXJzaW9uIGFzIGVhcmxpZXIgdGhhbiBhbnkgIgorInZlcnNpb24pO1xuIgorIiAgbHQtbmwgbGUtbmwgZ2UtbmwgZ3QtbmwgKHRyZWF0IGVtcHR5IHZlcnNpb24gYXMgbGF0ZXIgdGhhbiBhbnkgdmVyc2lvbik7XG4iCisiICA8IDw8IDw9ID0gPj0gPj4gPiAgICAgICAob25seSBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIGNvbnRyb2wgZmlsZSAiCisic3ludGF4KS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIktvbXBhcmFqIG9wZXJhdG9yb2ogcG9yIC0tY29tcGFyZS12ZXJzaW9ucyBlc3RhczpcbiIKKyIgIGx0IGxlIGVxIG5lIGdlIGd0ICAgICAgIChrb25zaWRlcmkgbWFscGxlbmFuIHZlcnNpb24ga2llbCBwbGkgbWFsbm92YSBvbCAiCisiaXUgYWpuIHZlcnNpbyk7XG4iCisiICBsdC1ubCBsZS1ubCBnZS1ubCBndC1ubCAoa29uc2lkZXJpIG1hbHBsZW5hbiB2ZXJzaW9uIGtpZWwgcGxpIG5vdmEgb2wgaXUgIgorImFqbiB2ZXJzaW8pO1xuIgorIiAgPCA8PCA8PSA9ID49ID4+ID4gICAgICAgKG51ciBwb3Iga29uZ3J1ZWNvIGFsIHJlZy1kb3NpZXJhIHNpbnRha3NvKS5cbiIKKyJcbiIKKworIzogc3JjL21haW4uYzoxNjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiVXNlIGBkc2VsZWN0JyBvciBgYXB0aXR1ZGUnIGZvciB1c2VyLWZyaWVuZGx5IHBhY2thZ2UgbWFuYWdlbWVudC5cbiIKK21zZ3N0ciAiVXp1ICdkZXNlbGVjdCcgYcWtwqAnYXB0aXR1ZGUnIHBvciB1emFudC1mYWNpbGlnYSBwYWstYWRtaW5pc3RyYWRvLlxuIgorCisjOiBzcmMvbWFpbi5jOjE3MAorbXNnaWQgIiIKKyJUeXBlIGRwa2cgLS1oZWxwIGZvciBoZWxwIGFib3V0IGluc3RhbGxpbmcgYW5kIGRlaW5zdGFsbGluZyBwYWNrYWdlcyBbKl07XG4iCisiVXNlIGBkc2VsZWN0JyBvciBgYXB0aXR1ZGUnIGZvciB1c2VyLWZyaWVuZGx5IHBhY2thZ2UgbWFuYWdlbWVudDtcbiIKKyJUeXBlIGRwa2cgLURoZWxwIGZvciBhIGxpc3Qgb2YgZHBrZyBkZWJ1ZyBmbGFnIHZhbHVlcztcbiIKKyJUeXBlIGRwa2cgLS1mb3JjZS1oZWxwIGZvciBhIGxpc3Qgb2YgZm9yY2luZyBvcHRpb25zO1xuIgorIlR5cGUgZHBrZy1kZWIgLS1oZWxwIGZvciBoZWxwIGFib3V0IG1hbmlwdWxhdGluZyAqLmRlYiBmaWxlcztcbiIKKyJcbiIKKyJPcHRpb25zIG1hcmtlZCBbKl0gcHJvZHVjZSBhIGxvdCBvZiBvdXRwdXQgLSBwaXBlIGl0IHRocm91Z2ggYGxlc3MnIG9yICIKKyJgbW9yZScgISIKK21zZ3N0ciAiIgorIlRhanB1IGRwa2cgLS1oZWxwIHBvciBoZWxwbyBwcmkgaW5zdGFsYWRvIGthaiBtYWxpbnN0YWxhZG8gZGUgcGFrb2ogWypdO1xuIgorIlV6dSBgZHNlbGVjdCcgYcWtIGBhcHRpdHVkZScgcG9yIHV6YW50LWZhY2lsaWdhIGFkbWluaXN0cmFkbyBkZSBwYWtvajtcbiIKKyJUYWpwdSBkcGtnIC1EaGVscCBwb3IgbGlzdG8gZGUgc2VuZXJhcmlnYWogZmxhZy12YWxvcm9qIGRlIGRwa2c7XG4iCisiVGFqcHUgZHBrZyAtLWZvcmNlLWhlbHAgcG9yIGxpc3RvIGRlIHBlcmZvcnRpZ2FqIGVsZWt0ZWJsb2o7XG4iCisiVGFqcHUgZHBrZy1kZWIgLS1oZWxwIHBvciBoZWxwbyBwcmkgdHJha3RhZG8gZGUgZG9zaWVyb2ogKi5kZWI7XG4iCisiXG4iCisiRWxla3RlYmxvaiBtYXJraXRhaiBwZXIgWypdIHByb2R1a3RhcyBtdWx0YW4gZWxpZ29uIC0gZHVrdHUgxJ1pbiB0cmEgJ2xlc3MnICIKKyJhxa0gJ21vcmUnICEiCisKKyM6IHNyYy9tYWluLmM6MjE5Cittc2dpZCAiU2V0IGFsbCBmb3JjZSBvcHRpb25zIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjIxCittc2dpZCAiUmVwbGFjZSBhIHBhY2thZ2Ugd2l0aCBhIGxvd2VyIHZlcnNpb24iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjMKK21zZ2lkICJDb25maWd1cmUgYW55IHBhY2thZ2Ugd2hpY2ggbWF5IGhlbHAgdGhpcyBvbmUiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjUKK21zZ2lkICJQcm9jZXNzIGluY2lkZW50YWwgcGFja2FnZXMgZXZlbiB3aGVuIG9uIGhvbGQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjcKK21zZ2lkICJUcnkgdG8gKGRlKWluc3RhbGwgdGhpbmdzIGV2ZW4gd2hlbiBub3Qgcm9vdCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIyOQorbXNnaWQgIlBBVEggaXMgbWlzc2luZyBpbXBvcnRhbnQgcHJvZ3JhbXMsIHByb2JsZW1zIGxpa2VseSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzMQorbXNnaWQgIkluc3RhbGwgYSBwYWNrYWdlIGV2ZW4gaWYgaXQgZmFpbHMgYXV0aGVudGljaXR5IGNoZWNrIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjMzCittc2dpZCAiUHJvY2VzcyBldmVuIHBhY2thZ2VzIHdpdGggd3JvbmcgdmVyc2lvbnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzUKK21zZ2lkICJPdmVyd3JpdGUgYSBmaWxlIGZyb20gb25lIHBhY2thZ2Ugd2l0aCBhbm90aGVyIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjM3Cittc2dpZCAiT3ZlcndyaXRlIGEgZGl2ZXJ0ZWQgZmlsZSB3aXRoIGFuIHVuZGl2ZXJ0ZWQgdmVyc2lvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzOQorbXNnaWQgIk92ZXJ3cml0ZSBvbmUgcGFja2FnZSdzIGRpcmVjdG9yeSB3aXRoIGFub3RoZXIncyBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjQxCittc2dpZCAiRG8gbm90IHBlcmZvcm0gc2FmZSBJL08gb3BlcmF0aW9ucyB3aGVuIHVucGFja2luZyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI0MworbXNnaWQgIkFsd2F5cyB1c2UgdGhlIG5ldyBjb25maWcgZmlsZXMsIGRvbid0IHByb21wdCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI0NQorbXNnaWQgIkFsd2F5cyB1c2UgdGhlIG9sZCBjb25maWcgZmlsZXMsIGRvbid0IHByb21wdCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI0OAorbXNnaWQgIiIKKyJVc2UgdGhlIGRlZmF1bHQgb3B0aW9uIGZvciBuZXcgY29uZmlnIGZpbGVzIGlmIG9uZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICBpcyBhdmFpbGFibGUsIGRvbid0IHByb21wdC4gSWYgbm8gZGVmYXVsdCBjYW4gYmUgIgorImZvdW5kLFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICB5b3Ugd2lsbCBiZSBwcm9tcHRlZCB1bmxlc3Mgb25lIG9mIHRoZSBjb25mb2xkIG9yXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmZuZXcgb3B0aW9ucyBpcyBhbHNvIGdpdmVuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjUzCittc2dpZCAiQWx3YXlzIGluc3RhbGwgbWlzc2luZyBjb25maWcgZmlsZXMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNTUKK21zZ2lkICJPZmZlciB0byByZXBsYWNlIGNvbmZpZyBmaWxlcyB3aXRoIG5vIG5ldyB2ZXJzaW9ucyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI1NworbXNnaWQgIlByb2Nlc3MgZXZlbiBwYWNrYWdlcyB3aXRoIHdyb25nIG9yIG5vIGFyY2hpdGVjdHVyZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI1OQorbXNnaWQgIkluc3RhbGwgZXZlbiBpZiBpdCB3b3VsZCBicmVhayBhbm90aGVyIHBhY2thZ2UiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNjEKK21zZ2lkICJBbGxvdyBpbnN0YWxsYXRpb24gb2YgY29uZmxpY3RpbmcgcGFja2FnZXMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNjMKKyMsIGZ1enp5CisjfCBtc2dpZCAiZGVwZW5kZW5jeSBwcm9ibGVtcyAtIG5vdCByZW1vdmluZyIKK21zZ2lkICJUdXJuIGFsbCBkZXBlbmRlbmN5IHByb2JsZW1zIGludG8gd2FybmluZ3MiCittc2dzdHIgImRlcGVuZGVjYWogcHJvYmxlbW9qIC0gbmkgbmUgZm9yaWdhcyIKKworIzogc3JjL21haW4uYzoyNjUKKyMsIGZ1enp5CisjfCBtc2dpZCAiZGVwZW5kZW5jeSBwcm9ibGVtcyAtIG5vdCByZW1vdmluZyIKK21zZ2lkICJUdXJuIGRlcGVuZGVuY3kgdmVyc2lvbiBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzIgorbXNnc3RyICJkZXBlbmRlY2FqIHByb2JsZW1vaiAtIG5pIG5lIGZvcmlnYXMiCisKKyM6IHNyYy9tYWluLmM6MjY3Cittc2dpZCAiUmVtb3ZlIHBhY2thZ2VzIHdoaWNoIHJlcXVpcmUgaW5zdGFsbGF0aW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjY5Cittc2dpZCAiUmVtb3ZlIGFuIGVzc2VudGlhbCBwYWNrYWdlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjgxCittc2dpZCAiR2VuZXJhbGx5IGhlbHBmdWwgcHJvZ3Jlc3MgaW5mb3JtYXRpb24iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODIKKyMsIGZ1enp5CisjfCBtc2dpZCAidW5hYmxlIHRvIHNldGVudiBmb3IgbWFpbnRhaW5lciBzY3JpcHQiCittc2dpZCAiSW52b2NhdGlvbiBhbmQgc3RhdHVzIG9mIG1haW50YWluZXIgc2NyaXB0cyIKK21zZ3N0ciAibWFsZWJsYXMgdXppICdzZXRlbnYnIHBvciBsYSBza3JpcHRvIGRlIHBha3pvcmdhbnRvIgorCisjOiBzcmMvbWFpbi5jOjI4MworbXNnaWQgIk91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4NAorbXNnaWQgIkxvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg1CisjLCBmdXp6eQorI3wgbXNnaWQgInJlYWQgZXJyb3IgaW4gY29uZmlndXJhdGlvbiBmaWxlIGAlLjI1NXMnIgorbXNnaWQgIk91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGUiCittc2dzdHIgImxlZy1lcmFybyBlbiBhZ29yZGEgZG9zaWVybyAnJS4yNTVzJyIKKworIzogc3JjL21haW4uYzoyODYKK21zZ2lkICJMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGUiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODcKK21zZ2lkICJEZXBlbmRlbmNpZXMgYW5kIGNvbmZsaWN0cyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4OAorbXNnaWQgIkxvdHMgb2YgZGVwZW5kZW5jaWVzL2NvbmZsaWN0cyBvdXRwdXQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODkKK21zZ2lkICJUcmlnZ2VyIGFjdGl2YXRpb24gYW5kIHByb2Nlc3NpbmciCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyOTAKK21zZ2lkICJMb3RzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyOTEKK21zZ2lkICJTaWxseSBhbW91bnRzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyOTIKK21zZ2lkICJMb3RzIG9mIGRyaXZlbCBhYm91dCBlZyB0aGUgZHBrZy9pbmZvIGRpcmVjdG9yeSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MworbXNnaWQgIkluc2FuZSBhbW91bnRzIG9mIGRyaXZlbCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjMwNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXMgZGVidWdnaW5nIG9wdGlvbiwgLS1kZWJ1Zz08b2N0YWw+IG9yIC1EPG9jdGFsPjpcbiIKKyJcbiIKKyIgTnVtYmVyICBSZWYuIGluIHNvdXJjZSAgIERlc2NyaXB0aW9uXG4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzozMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIkRlYnVnZ2luZyBvcHRpb25zIGNhbiBiZSBtaXhlZCB1c2luZyBiaXR3aXNlLW9yLlxuIgorIk5vdGUgdGhhdCB0aGUgbWVhbmluZ3MgYW5kIHZhbHVlcyBhcmUgc3ViamVjdCB0byBjaGFuZ2UuXG4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzozMTkKK21zZ2lkICItLWRlYnVnIHJlcXVpcmVzIGFuIG9jdGFsIGFyZ3VtZW50IgorbXNnc3RyICItLWRlYnVnIHBvc3R1bGFzIG9rdW1hbiBhcmd1bWVudG9uIgorCisjOiBzcmMvbWFpbi5jOjM0OAorIywgYy1mb3JtYXQKK21zZ2lkICJudWxsIHBhY2thZ2UgbmFtZSBpbiAtLWlnbm9yZS1kZXBlbmRzIGNvbW1hLXNlcGFyYXRlZCBsaXN0IGAlLjI1MHMnIgorbXNnc3RyICJudWxhIHBhay1ub21vIGVuIGtvbW8tYXBhcnRpdGEgbGlzdG8gJyUuMjUwcycgcG9yIC0taWdub3JlLWRlcGVuZHMiCisKKyM6IHNyYy9tYWluLmM6MzU0CisjLCBjLWZvcm1hdAorbXNnaWQgIi0taWdub3JlLWRlcGVuZHMgcmVxdWlyZXMgYSBsZWdhbCBwYWNrYWdlIG5hbWUuIGAlLjI1MHMnIGlzIG5vdDsgJXMiCittc2dzdHIgIi0taWdub3JlLWRlcGVuZHMgcG9zdHVsYXMgdmFsaWRhbiBwYWstbm9tb24uICclLjI1MHMnIG5lIGVzdGFzOyAlcyIKKworIzogc3JjL21haW4uYzozNzEgc3JjL21haW4uYzozODEgc3JjL21haW4uYzo2NDkgZHBrZy1zcGxpdC9tYWluLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgaW50ZWdlciBmb3IgLS0lczogYCUuMjUwcyciCittc2dzdHIgIm1hbHZhbGlkYSBlbnRqZXJvIHBvciAtLSVzOiAnJS4yNTBzJyIKKworIzogc3JjL21haW4uYzo0MzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgZXhlY3V0aW5nIGhvb2sgJyVzJywgZXhpdCBjb2RlICVkIgorbXNnc3RyICJlcmFybyBkdW0gcnVsYWRvIGRlIGhva28gJyVzJywgZWxpci1rb2RvICVkIgorCisjOiBzcmMvbWFpbi5jOjQ2NQorIywgZnV6enkKKyN8IG1zZ2lkICJzdGF0dXMiCittc2dpZCAic3RhdHVzIGxvZ2dlciIKK21zZ3N0ciAic3RhdG8iCisKKyM6IHNyYy9tYWluLmM6NDgwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlcyBmb3JjaW5nIG9wdGlvbnMgLSBjb250cm9sIGJlaGF2aW91ciB3aGVuIHByb2JsZW1zIGZvdW5kOlxuIgorIiAgd2FybiBidXQgY29udGludWU6ICAtLWZvcmNlLTx0aGluZz4sPHRoaW5nPiwuLi5cbiIKKyIgIHN0b3Agd2l0aCBlcnJvcjogICAgLS1yZWZ1c2UtPHRoaW5nPiw8dGhpbmc+LC4uLiB8IC0tbm8tZm9yY2UtPHRoaW5nPiwuLi5cbiIKKyIgRm9yY2luZyB0aGluZ3M6XG4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzo0OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIldBUk5JTkcgLSB1c2Ugb2Ygb3B0aW9ucyBtYXJrZWQgWyFdIGNhbiBzZXJpb3VzbHkgZGFtYWdlIHlvdXIgaW5zdGFsbGF0aW9uLlxuIgorIkZvcmNpbmcgb3B0aW9ucyBtYXJrZWQgWypdIGFyZSBlbmFibGVkIGJ5IGRlZmF1bHQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzo1MDQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBmb3JjZS9yZWZ1c2Ugb3B0aW9uIGAlLipzJyIKK21zZ3N0ciAibmVrb25hdGEgcGVyZm9ydGEvcmlmdXphIGVsZWt0ZWJsbyAnJS4qcyciCisKKyM6IHNyYy9tYWluLmM6NTEzCisjLCBjLWZvcm1hdAorbXNnaWQgIm9ic29sZXRlIGZvcmNlL3JlZnVzZSBvcHRpb24gJyVzJ1xuIgorbXNnc3RyICJtYWxha3R1YWxhIHBlcmZvcnRhL3JpZnV6YSBlbGVrdGVibG8gJyVzJ1xuIgorCisjOiBzcmMvbWFpbi5jOjY0MworbXNnaWQgIi0tY29tbWFuZC1mZCB0YWtlcyBvbmUgYXJndW1lbnQsIG5vdCB6ZXJvIgorbXNnc3RyICItLWNvbW1hbmQtZmQgcHJlbmFzIHVudSBhcmd1bWVudG9uLCBuZSBudWxhbiIKKworIzogc3JjL21haW4uYzo2NDUKK21zZ2lkICItLWNvbW1hbmQtZmQgb25seSB0YWtlcyBvbmUgYXJndW1lbnQiCittc2dzdHIgIi0tY29tbWFuZC1mZCBwcmVuYXMgbnVyIHVudSBhcmd1bWVudG9uIgorCisjOiBzcmMvbWFpbi5jOjY1MQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBvcGVuIGAlaScgZm9yIHN0cmVhbSIKK21zZ3N0ciAibmUgZWJsaXMgbWFsZmVybWkgJyVpJyBwb3IgZWxzZW5kZmx1byIKKworIzogc3JjL21haW4uYzo2NzYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgYmVmb3JlIGVuZCBvZiBsaW5lICVkIgorbXNnc3RyICJuZSBhdGVuZGl0YSBkb3NpZXJmaW5vIGFudGHFrSBvbCBmaW5vIGRlIGxpbmlvICVkIgorCisjOiBzcmMvbWFpbi5jOjcxOSBzcmMvbWFpbi5jOjc0MSBzcmMvcXVlcnljbWQuYzo2OTIgc3JjL3N0YXRjbWQuYzozNzkKKyM6IGRwa2ctZGViL21haW4uYzoyMDEgZHBrZy1zcGxpdC9tYWluLmM6MTYzCittc2dpZCAibmVlZCBhbiBhY3Rpb24gb3B0aW9uIgorbXNnc3RyICJiZXpvbmFzIGFnYW4gZWxla3RlYmxvbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MTEzCittc2dpZCAiIgorInlvdSBtdXN0IHNwZWNpZnkgcGFja2FnZXMgYnkgdGhlaXIgb3duIG5hbWVzLCBub3QgYnkgcXVvdGluZyB0aGUgbmFtZXMgb2YgIgorInRoZSBmaWxlcyB0aGV5IGNvbWUgaW4iCittc2dzdHIgIiIKKyJ2aSBkZXZhcyBpbmRpa2kgcGFrb2puIHBlciBpbGlhaiBwcm9wcmFqIG5vbW9qLCBuZSBwZXIgY2l0YWRvIGRlIGxhIG5vbW9qIGRlICIKKyJsYSBkb3NpZXJvaiBlbiBraXVqIGlsaSB2ZW5hcyIKKworIzogc3JjL3BhY2thZ2VzLmM6MTMzCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgLS1wZW5kaW5nIGRvZXMgbm90IHRha2UgYW55IG5vbi1vcHRpb24gYXJndW1lbnRzIgorbXNnc3RyICItLSVzIC0tcGVuZGluZyBwcmVuYXMgbmVuaXVuIG5lLWVsZWt0ZWNhbiBhcmd1bWVudG9uIgorCisjOiBzcmMvcGFja2FnZXMuYzoxMzggc3JjL3F1ZXJ5Y21kLmM6Mzc1IHNyYy9xdWVyeWNtZC5jOjU2NQorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGF0IGxlYXN0IG9uZSBwYWNrYWdlIG5hbWUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMgYmV6b25hcyBtaW5pbXVtZSB1bnUgYXJndW1lbnRvbiBwb3IgcGFrLW5vbW8iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjE3OQorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlICVzIGxpc3RlZCBtb3JlIHRoYW4gb25jZSwgb25seSBwcm9jZXNzaW5nIG9uY2UuXG4iCittc2dzdHIgIkxhIHBha28gJXMgbGlzdGnEnWFzIHBsaSBvbCB1bnVmb2plLCBuaSBwcm9jZXphcyBudXIgdW51Zm9qZS5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MTgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJNb3JlIHRoYW4gb25lIGNvcHkgb2YgcGFja2FnZSAlcyBoYXMgYmVlbiB1bnBhY2tlZFxuIgorIiBpbiB0aGlzIHJ1biAhICBPbmx5IGNvbmZpZ3VyaW5nIGl0IG9uY2UuXG4iCittc2dzdHIgIiIKKyJQbGkgb2wgdW51IGtvcGlvIGRlIGxhIHBha28gJXMgZXN0aXMgZWxwYWthdGFcbiIKKyIgZW4gdGl1IMSJaSBwbGVudW1vICEgTmkgYWtvbW9kYXMgxJ1pbiBudXIgdW51Zm9qZS5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJwYWNrYWdlICUuMjUwcyBpcyBub3QgcmVhZHkgZm9yIHRyaWdnZXIgcHJvY2Vzc2luZ1xuIgorIiAoY3VycmVudCBzdGF0dXMgYCUuMjUwcycgd2l0aCBubyBwZW5kaW5nIHRyaWdnZXJzKSIKK21zZ3N0ciAiIgorImxhIHBha28gJS4yNTBzIG5lIHByZXRhcyBwb3IgcHJvY2V6YWRvIGRlIGVraWdpbG9qXG4iCisiIChudW5hIHN0YXRvICclLjI1MHMnIGt1biBuZW5pdSBwcml0cmFrdG90YSBla2lnaWxvKSIKKworIzogc3JjL3BhY2thZ2VzLmM6MzM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyB3aGljaCBwcm92aWRlcyAlcyBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIgIExhIHBha28gJXMsIGtpdSBwcm92aXphcyAlcywgZXN0YXMgZm9yaWdvdGEuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjMzNworIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgaXMgdG8gYmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiICBMYSBwYWtvICVzIGVzdGFzIGZvcmlnb3RhLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzozNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBWZXJzaW9uIG9mICVzIG9uIHN5c3RlbSBpcyAlcy5cbiIKK21zZ3N0ciAiICBWZXJzaW8gZGUgJXMgZW4gbGEgc2lzdGVtbyBlc3RhcyAlcy5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6Mzc2CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyB3aGljaCBwcm92aWRlcyAlcyBhd2FpdHMgdHJpZ2dlciBwcm9jZXNzaW5nLlxuIgorbXNnc3RyICIgIExhIHBha28gJXMsIGtpdSBwcm92aXphcyAlcywgYXRlbmRhcyBwcm9jZXphZG9uIGRlIGVraWdpbG8uXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjM4MAorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgYXdhaXRzIHRyaWdnZXIgcHJvY2Vzc2luZy5cbiIKK21zZ3N0ciAiICBMYSBwYWtvICVzIGF0ZW5kYXMgcHJvY2V6YWRvbiBkZSBla2lnaWxvLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogYWxzbyBjb25maWd1cmluZyBgJXMnIChyZXF1aXJlZCBieSBgJXMnKVxuIgorbXNnc3RyICJkcGtnOiBuaSBhbmthxa0gYWtvbW9kYXMgJyVzJyAocG9zdHVsYXRhIGRlICclcycpXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQxOAorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgd2hpY2ggcHJvdmlkZXMgJXMgaXMgbm90IGNvbmZpZ3VyZWQgeWV0LlxuIgorbXNnc3RyICIgIExhIHBha28gJXMsIGtpdSBwcm92aXphcyAlcywgYW5rb3Jhxa0gbmUgZXN0YXMgYWtvbW9kaXRhLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIGlzIG5vdCBjb25maWd1cmVkIHlldC5cbiIKK21zZ3N0ciAiICBMYSBwYWtvICVzIGFua29yYcWtIG5lIGVzdGFzIGFrb21vZGl0YS5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyB3aGljaCBwcm92aWRlcyAlcyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIgIExhIHBha28gJXMsIGtpdSBwcm92aXphcyAlcywgYW5rb3Jhxa0gbmUgZXN0YXMgaW5zdGFsaXRhLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIGlzIG5vdCBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgTGEgcGFrbyAlcyBuZSBlc3RhcyBpbnN0YWxpdGEuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQ3MgorIywgYy1mb3JtYXQKK21zZ2lkICIgJXMgKCVzKSBicmVha3MgJXMgYW5kIGlzICVzLlxuIgorbXNnc3RyICIgJXM6ICglcykgcm9tcGFzICVzIGthaiBlc3RhcyAlcy5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDc4CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJXMgKCVzKSBwcm92aWRlcyAlcy5cbiIKK21zZ3N0ciAiICAlcyAoJXMpIHByb3ZpemFzICVzLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBWZXJzaW9uIG9mICVzIHRvIGJlIGNvbmZpZ3VyZWQgaXMgJXMuXG4iCittc2dzdHIgIiAgVmVyc2lvIGRlICVzIHBvciBlc3RpIGFrb21vZGF0YSBlc3RhcyAlcy5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NTk2Cittc2dpZCAiIGRlcGVuZHMgb24gIgorbXNnc3RyICIgZGVwZW5kYXMgamUgIgorCisjOiBzcmMvcGFja2FnZXMuYzo2MDIKK21zZ2lkICI7IGhvd2V2ZXI6XG4iCittc2dzdHIgIjsgdGFtZW46XG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiLi4uLyVzIgorbXNnc3RyICIuLi4vJXMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgZW5zdXJpbmcgYCUuMjUwcycgZG9lc24ndCBleGlzdCIKK21zZ3N0ciAiZXJhcm8gZHVtIGNlcnRpZ28ga2UgJyUuMjUwcycgbmUgZWt6aXN0YXMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTkKK21zZ2lkICJzcGxpdCBwYWNrYWdlIHJlYXNzZW1ibHkiCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxMDgKK21zZ2lkICJyZWFzc2VtYmxlZCBwYWNrYWdlIGZpbGUiCittc2dzdHIgInJlLWt1bm1ldGl0YSBwYWstZG9zaWVybyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiQXV0aGVudGljYXRpbmcgJXMgLi4uXG4iCittc2dzdHIgIkHFrXRlbnRpa2lnYWRvIGRlICVzIC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEzOQorbXNnaWQgInBhY2thZ2Ugc2lnbmF0dXJlIHZlcmlmaWNhdGlvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE0NgorIywgYy1mb3JtYXQKK21zZ2lkICJWZXJpZmljYXRpb24gb24gcGFja2FnZSAlcyBmYWlsZWQhIgorbXNnc3RyICJLb250cm9sYWRvIGplIHBha28gJXMgbWFsc3VrY2VzaXMhIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE0OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVmVyaWZpY2F0aW9uIG9uIHBhY2thZ2UgJXMgZmFpbGVkLFxuIgorImJ1dCBpbnN0YWxsaW5nIGFueXdheSBhcyB5b3UgcmVxdWVzdGVkLlxuIgorbXNnc3RyICIiCisiS29udHJvbGFkbyBqZSBwYWtvICVzIG1hbHN1a2Nlc2lzLFxuIgorInNlZCBuaSBpbnN0YWxhcyBpZWwgYWpuLCBsYcWtIHZpYSBwZXRvLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICJwYXNzZWRcbiIKK21zZ3N0ciAicGFzaXNcbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxNjUgZHBrZy1kZWIvaW5mby5jOjgxCittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSB0ZW1wb3JhcnkgZGlyZWN0b3J5IgorbXNnc3RyICJtYWxzdWtjZXNvIGR1bSBrcmVvIGRlIHByb3Zpem9yYSBkb3NpZXJ1am8iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MjA1CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgJXMgaGFzIHRvbyBtYW55IENvbmZsaWN0cy9SZXBsYWNlcyBwYWlycyIKK21zZ3N0ciAibGEgcGFrbyAlcyBoYXZhcyB0cm8gbXVsdGFqbiBwYXJvam4gS29uZmxpa3Rvai9BbnN0YXRhxa1vaiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyNDMKKyMsIGMtZm9ybWF0Cittc2dpZCAib2xkIHZlcnNpb24gb2YgcGFja2FnZSBoYXMgb3Zlcmx5LWxvbmcgaW5mbyBmaWxlIG5hbWUgc3RhcnRpbmcgYCUuMjUwcyciCittc2dzdHIgIiIKKyJtYWxub3ZhIHZlcnNpbyBkZSBwYWtvIGhhdmFzIHRybyBsb25nYW4gaW5mb3JtYW4gZG9zaWVybm9tb24ga2l1IHN0YXJ0YXMgamUgIgorIiclLjI1MHMnIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjI4MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIG9ic29sZXRlIGluZm8gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibWFsZWJsYXMgZm9yaWdpIG1hbGFrdHVhbGFuIGluZm9ybS1kb3NpZXJvbiAnJS4yNTBzJyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyODYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgKHN1cHBvc2VkKSBuZXcgaW5mbyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJtYWxlYmxhcyBpbnN0YWxpIGxhIChzdXBvemUpIG5vdmFuIGluZm9ybS1kb3NpZXJvbiAnJS4yNTBzJyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyOTYKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiB0ZW1wIGNvbnRyb2wgZGlyZWN0b3J5IgorbXNnc3RyICJtYWxlYmxhcyBtYWxmZXJtaSBwcm92aXpvcmFuIHJlZy1kb3NpZXJ1am9uIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMwNworIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGNvbnRhaW5zIG92ZXJseS1sb25nIGNvbnRyb2wgaW5mbyBmaWxlIG5hbWUgKHN0YXJ0aW5nIGAlLjUwcycpIgorbXNnc3RyICIiCisibGEgcGFrbyBlbmhhdmFzIHRybyBsb25nYW4gcmVnLWluZm9ybWFuIGRvc2llcm5vbW9uIChraXUgc3RhcnRhcyBqZSAnJS41MHMnKSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBjb250cm9sIGluZm8gY29udGFpbmVkIGRpcmVjdG9yeSBgJS4yNTBzJyIKK21zZ3N0ciAibGEgcGFrLXJlZ2EgaW5mb3JtbyBlbmhhdmlzIGxhIGRvc2llcnVqb24gJyUuMjUwcyciCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzE2CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgY29udHJvbCBpbmZvIHJtZGlyIG9mIGAlLjI1MHMnIGRpZG4ndCBzYXkgbm90IGEgZGlyIgorbXNnc3RyICJybWRpciBkZSAnJS4yNTBzJyBwZXIgcGFrLXJlZ2EgaW5mb3JtbyBuZSBkaXJpcyBrZSBuZSBlc3RhcyBkb3NpZXJ1am8iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzI2CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgJXMgY29udGFpbmVkIGxpc3QgYXMgaW5mbyBmaWxlIgorbXNnc3RyICJsYSBwYWtvICVzIGVuaGF2aXMgbGlzdG9uIGtpZWwgaW5mb3JtLWRvc2llcm9uIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMzMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgaW5mbyBmaWxlIGAlLjI1MHMnIGFzIGAlLjI1MHMnIgorbXNnc3RyICJtYWxlYmxhcyBpbnN0YWxpIG5vdmFuIGluZm9ybS1kb3NpZXJvbiAnJS4yNTBzJyBraWVsICclLjI1MHMnIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjM0OSBzcmMvcmVtb3ZlLmM6MTk4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkZWxldGUgY29udHJvbCBpbmZvIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm1hbGVibGFzIGZvcmlnaSBsYSByZWctaW5mb3JtYW4gZG9zaWVyb24gJyUuMjUwcyciCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDExCittc2dpZCAiY2Fubm90IGFjY2VzcyBhcmNoaXZlIgorbXNnc3RyICJuZSBwb3ZhcyBhdGluZ2kgYXJraXZvbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo0MzMKKyMsIGZ1enp5CisjfCBtc2dpZCAiY29udHJvbCBpbmZvcm1hdGlvbiBsZW5ndGgiCittc2dpZCAicGFja2FnZSBjb250cm9sIGluZm9ybWF0aW9uIGV4dHJhY3Rpb24iCittc2dzdHIgImxvbmdlY28gZGUgcmVnLWluZm9ybWFybyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo0NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVjb3JkZWQgaW5mbyBhYm91dCAlcyBmcm9tICVzLlxuIgorbXNnc3RyICJSZWdpc3RyaXRhIGluZm9ybW8gcHJpICVzIGVsICVzLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjQ2OAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGFyY2hpdGVjdHVyZSAoJXMpIGRvZXMgbm90IG1hdGNoIHN5c3RlbSAoJXMpIgorbXNnc3RyICJsYSBwYWstYXJraXRla3R1cm8gKCVzKSBuZSBrb25ncnVhcyBhbCBsYSBzaXN0ZW1vICglcykiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTIzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiByZWdhcmRpbmcgJXMgY29udGFpbmluZyAlcywgcHJlLWRlcGVuZGVuY3kgcHJvYmxlbTpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6IGF0ZW50YXMgJXMsIGtpdSBlbmhhdmFzICVzLCBhbnRhxa1kZXBlbmRlY2EgcHJvYmxlbW86XG4iCisiJXMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTI2CisjLCBjLWZvcm1hdAorbXNnaWQgInByZS1kZXBlbmRlbmN5IHByb2JsZW0gLSBub3QgaW5zdGFsbGluZyAlLjI1MHMiCittc2dzdHIgImFudGHFrWRlcGVuZGVjYSBwcm9ibGVtbyAtIG5pIG5lIGluc3RhbG9zICUuMjUwcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1MjcKK21zZ2lkICJpZ25vcmluZyBwcmUtZGVwZW5kZW5jeSBwcm9ibGVtISIKK21zZ3N0ciAiaWdub3JvIGRlIGRlcGVuZGVjYSBwcm9ibGVtbyEiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTQzCisjLCBjLWZvcm1hdAorbXNnaWQgIlByZXBhcmluZyB0byByZXBsYWNlICVzICVzICh1c2luZyAlcykgLi4uXG4iCittc2dzdHIgIk5pIHByZXBhcmnEnWFzIHBvciBhbnN0YXRhxa1pICVzICVzICh1emFudGUgJXMpIC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjU0OQorIywgYy1mb3JtYXQKK21zZ2lkICJVbnBhY2tpbmcgJXMgKGZyb20gJXMpIC4uLlxuIgorbXNnc3RyICJFbHBha2FkbyBkZSAlcyAoZWwgJXMpIC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjU4MAorIywgYy1mb3JtYXQKK21zZ2lkICJuYW1lIG9mIGNvbmZmaWxlIChzdGFydGluZyBgJS4yNTBzJykgaXMgdG9vIGxvbmcgKD4lZCBjaGFyYWN0ZXJzKSIKK21zZ3N0ciAiIgorIm5vbW8gZGUgY29uZmZpbGUgKGtvbWVuY2FudGUgcGVyICclLjI1MHMnKSBlc3RhcyB0cm8gbG9uZ2EgKD4lZCBzaWdub2opIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjYzMyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA3MQorIywgYy1mb3JtYXQKK21zZ2lkICJyZWFkIGVycm9yIGluICUuMjUwcyIKK21zZ3N0ciAibGVnLWVyYXJvIGVuICUuMjUwcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyAlLjI1MHMiCittc2dzdHIgImVyYXJvIGR1bSBmZXJtbyBkZSAlLjI1MHMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjM3CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHRyeWluZyB0byBvcGVuICUuMjUwcyIKK21zZ3N0ciAiZXJhcm8gZHVtIHByb3ZvIG1hbGZlcm1pICUuMjUwcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGUtY29uZmlndXJpbmcgJXMsIHRvIGFsbG93IHJlbW92YWwgb2YgJXMgLi4uXG4iCittc2dzdHIgIk1hbGFrb21vZGFkbyBkZSAlcywgcG9yIGVibGlnaSBmb3JpZ29uIGRlICVzIC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjY4MQorIywgYy1mb3JtYXQKK21zZ2lkICJEZS1jb25maWd1cmluZyAlcyAuLi5cbiIKK21zZ3N0ciAiTWFsYWtvbW9kYWRvIGRlICVzIC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjc1NQorIywgYy1mb3JtYXQKK21zZ2lkICJVbnBhY2tpbmcgcmVwbGFjZW1lbnQgJS4yNTBzIC4uLlxuIgorbXNnc3RyICJFbHBha2FkbyBkZSBhbnN0YXRhxa1hbnRvICUuMjUwcyAuLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NDAKKyMsIGZ1enp5CisjfCBtc2dpZCAiZHBrZy1kZWIgZmllbGQgZXh0cmFjdGlvbiIKK21zZ2lkICJwYWNrYWdlIGZpbGVzeXN0ZW0gYXJjaGl2ZSBleHRyYWN0aW9uIgorbXNnc3RyICJrYW1wLWVscHJlbmFkbyBkZSBkcGtnLWRlYiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NTQKK21zZ2lkICJlcnJvciByZWFkaW5nIGRwa2ctZGViIHRhciBvdXRwdXQiCittc2dzdHIgImVyYXJvIGR1bSBsZWdhZG8gZGUgZWxpZ28gZGUgZHBrZy1kZWIgdGFyIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjg1NgorbXNnaWQgImNvcnJ1cHRlZCBmaWxlc3lzdGVtIHRhcmZpbGUgLSBjb3JydXB0ZWQgcGFja2FnZSBhcmNoaXZlIgorbXNnc3RyICJtaXNyb21waXRhIGRvc2llcnNpc3RlbWEgdGFyLWRvc2llcm8gLSBtaXNyb21waXRhIHBhay1hcmtpdm8iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6ODU5Cittc2dpZCAiZHBrZy1kZWI6IHphcCBwb3NzaWJsZSB0cmFpbGluZyB6ZXJvcyIKK21zZ3N0ciAiZHBrZy1kZWI6IGZvcmlnaSBlYmxham4gdm9zdGFqbiBudWxvam4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTE5CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBzdGF0IG9sZCBmaWxlICclLjI1MHMnIHNvIG5vdCBkZWxldGluZyBpdDogJXMiCittc2dzdHIgIiIKKyJuZSBlYmxpcyBsZWdpIGxhIHN0YXRvbiBkZSBsYSBtYWxub3ZhIGRvc2llcm8gJyUuMjUwcycsIGRvIG5pIGZvcmlnYXMgxJ1pbjogJXMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTI1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkZWxldGUgb2xkIGRpcmVjdG9yeSAnJS4yNTBzJzogJXMiCittc2dzdHIgIm1hbGVibGFzIGZvcmlnaSBsYSBtYWxub3ZhbiBkb3NpZXJ1am9uICclLjI1MHMnOiAlcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAib2xkIGNvbmZmaWxlICclLjI1MHMnIHdhcyBhbiBlbXB0eSBkaXJlY3RvcnkgKGFuZCBoYXMgbm93IGJlZW4gZGVsZXRlZCkiCittc2dzdHIgIiIKKyJsYSBtYWxub3ZhIGNvbmZmaWxlICclLjI1MHMnIGVzdGlzIG1hbHBsZW5hIGRvc2llcnVqbyAoa2FqIG51biBlc3RhcyAiCisiZm9yaWdpdGEpIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjk3NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBvdGhlciBuZXcgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibWFsZWJsYXMgbGVnaSBzdGF0b24gZGUgYWxpYSBub3ZhIGRvc2llcm8gJyUuMjUwcyciCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTg2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJvbGQgZmlsZSAnJS4yNTBzJyBpcyB0aGUgc2FtZSBhcyBzZXZlcmFsIG5ldyBmaWxlcyEgKGJvdGggJyUuMjUwcycgYW5kICIKKyInJS4yNTBzJykiCittc2dzdHIgIiIKKyJsYSBtYWxub3ZhIGRvc2llcm8gJyUuMjUwcycgZXN0YXMgbGEgc2FtYSBvbCBwbHVyYWogbm92YWogZG9zaWVyb2ohIChrYWogIgorIiclLjI1MHMnIGthaiAnJS4yNTBzJykiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTAyNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2VjdXJlbHkgcmVtb3ZlIG9sZCBmaWxlICclLjI1MHMnOiAlcyIKK21zZ3N0ciAibWFsZWJsYXMgc2VrdXJlIGZvcmlnaSBsYSBtYWxub3ZhbiBkb3NpZXJvbiAnJS4yNTBzJzogJXMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTIwNgorIywgYy1mb3JtYXQKK21zZ2lkICIoTm90aW5nIGRpc2FwcGVhcmFuY2Ugb2YgJXMsIHdoaWNoIGhhcyBiZWVuIGNvbXBsZXRlbHkgcmVwbGFjZWQuKVxuIgorbXNnc3RyICIoTmkgcmltYXJrYXMgbWFsYXBlcm9uIGRlICVzLCBraXUgZXN0YXMgZW50dXRlIGFuc3RhdGHFrWl0YS4pXG4iCisKKyMuIFRSQU5TTEFUT1JTOiBUaGlzIGlzIHRoZSBoZWFkZXIgdGhhdCBhcHBlYXJzIG9uICdkcGtnLXF1ZXJ5IC1sJy4gVGhlCisjLiAqIHN0cmluZyBzaG91bGQgcmVtYWluIHVuZGVyIDgwIGNoYXJhY3RlcnMuIFRoZSB1cHBlcmNhc2UgbGV0dGVycyBpbgorIy4gKiB0aGUgc3RhdGUgdmFsdWVzIGRlbm90ZSB0aGUgYWJicmV2aWF0ZWQgbGV0dGVyIHRoYXQgd2lsbCBhcHBlYXIgb24KKyMuICogdGhlIGZpcnN0IHRocmVlIGNvbHVtbnMsIHdoaWNoIHNob3VsZCBpZGVhbGx5IG1hdGNoIHRoZSBFbmdsaXNoIG9uZQorIy4gKiAoZS5nLiBSZW1vdmUg4oaSIHN1cFJpbWVpeCksIHNlZSBkcGtnLXF1ZXJ5KDEpIGZvciBmdXJ0aGVyIGRldGFpbHMuIFRoZQorIy4gKiB0cmFuc2xhdGVkIG1lc3NhZ2UgY2FuIHVzZSBhZGRpdGlvbmFsIGxpbmVzIGlmIG5lZWRlZC4KKyM6IHNyYy9xdWVyeWNtZC5jOjE0OQorbXNnaWQgIiIKKyJEZXNpcmVkPVVua25vd24vSW5zdGFsbC9SZW1vdmUvUHVyZ2UvSG9sZFxuIgorInwgU3RhdHVzPU5vdC9JbnN0L0NvbmYtZmlsZXMvVW5wYWNrZWQvaGFsRi1jb25mL0hhbGYtaW5zdC90cmlnLWFXYWl0L1RyaWctIgorInBlbmRcbiIKKyJ8LyBFcnI/PShub25lKS9SZWluc3QtcmVxdWlyZWQgKFN0YXR1cyxFcnI6IHVwcGVyY2FzZT1iYWQpXG4iCittc2dzdHIgIiIKKyJEZXppcmF0ZT1VLW5la29uYXRlL0luc3RhbGkvZm9SaWdpL1B1cmlnaS9ILXRlbmlcbiIKKyJ8IFN0YXRvPU5lL0luc3QvQy1ha21kLWRvc2llcm9qL1UtbWFscGFrL0YtZHVvbi1ha21kL0gtZHVvbi1pbnN0L1ctZWtpZ2lsLSIKKyJhdGVuZC9ULWVraWdpbC10cmFrdG90ZVxuIgorInwvIEVycj89KG5lbmlvKS9SZWluc3QtcG9zdHVsYXRlIChTdGF0byxFcnI6IG1hanVza2xlPW1hbGJvbmUpXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjE1MworbXNnaWQgIk5hbWUiCittc2dzdHIgIk5vbW8iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjE1MworbXNnaWQgIlZlcnNpb24iCittc2dzdHIgIlZlcnNpbyIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MTU0Cittc2dpZCAiRGVzY3JpcHRpb24iCittc2dzdHIgIlByaXNrcmlibyIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MjQ2IHNyYy9xdWVyeWNtZC5jOjUxMSBzcmMvc2VsZWN0LmM6NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiTm8gcGFja2FnZXMgZm91bmQgbWF0Y2hpbmcgJXMuXG4iCittc2dzdHIgIk5lbml1IHBha28ga29uZ3J1YW50YSBhbCAlcy5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MjczCisjLCBjLWZvcm1hdAorbXNnaWQgImRpdmVyc2lvbiBieSAlcyBmcm9tOiAlc1xuIgorbXNnc3RyICJkZXR1cm5vIGRlICVzIGVsOiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJzaW9uIGJ5ICVzIHRvOiAlc1xuIgorbXNnc3RyICJkZXR1cm5vIGRlICVzIGFsOiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9jYWwgZGl2ZXJzaW9uIGZyb206ICVzXG4iCittc2dzdHIgImxva2EgZGV0dXJubyBlbDogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6Mjc5CisjLCBjLWZvcm1hdAorbXNnaWQgImxvY2FsIGRpdmVyc2lvbiB0bzogJXNcbiIKK21zZ3N0ciAibG9rYSBkZXR1cm5vIGFsOiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzozMDkKK21zZ2lkICItLXNlYXJjaCBuZWVkcyBhdCBsZWFzdCBvbmUgZmlsZSBuYW1lIHBhdHRlcm4gYXJndW1lbnQiCittc2dzdHIgIi0tc2VhcmNoIGJlem9uYXMgbWluaW11bWUgdW51IG1vZGVsb24gZGUgZG9zaWVybm9tbyBraWVsIGFyZ3VtZW50b24iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjM1MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiTm8gcGFja2FnZXMgZm91bmQgbWF0Y2hpbmcgJXMuXG4iCittc2dpZCAiJXM6IG5vIHBhdGggZm91bmQgbWF0Y2hpbmcgcGF0dGVybiAlcy5cbiIKK21zZ3N0ciAiTmVuaXUgcGFrbyBrb25ncnVhbnRhIGFsICVzLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzozOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSBgJXMnIGlzIG5vdCBpbnN0YWxsZWQgYW5kIG5vIGluZm8gaXMgYXZhaWxhYmxlLlxuIgorbXNnc3RyICJMYSBwYWtvICclcycgbmUgZXN0YXMgaW5zdGFsaXRhIGthaiBuZW5pdSBpbmZvcm1vIGRpc3BvbmVibGFzLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSBgJXMnIGlzIG5vdCBhdmFpbGFibGUuXG4iCittc2dzdHIgIlBha286ICclcycgbmUgZGlzcG9uZWJsYXMuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQxMCBzcmMvcXVlcnljbWQuYzo1ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSBgJXMnIGlzIG5vdCBpbnN0YWxsZWQuXG4iCittc2dzdHIgIkxhIHBha28gJyVzJyBuZSBlc3RhcyBpbnN0YWxpdGEuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQxOAorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlIGAlcycgZG9lcyBub3QgY29udGFpbiBhbnkgZmlsZXMgKCEpXG4iCittc2dzdHIgIkxhIHBha28gJyVzJyBuZSBlbmhhdmFzIGl1biBham4gZG9zaWVyb24gKCEpXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQyNQorIywgYy1mb3JtYXQKK21zZ2lkICJsb2NhbGx5IGRpdmVydGVkIHRvOiAlc1xuIgorbXNnc3RyICJsb2tlIGRldHVybml0ZSBhbDogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDI4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgZGl2ZXJ0cyBvdGhlcnMgdG86ICVzXG4iCittc2dzdHIgImxhIHBha28gZGV0dXJuYXMgYWxpYWpuIGFsOiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJ0ZWQgYnkgJXMgdG86ICVzXG4iCittc2dzdHIgImRldHVybml0YSBkZSAlcyBhbDogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDUyCittc2dpZCAiIgorIlVzZSBkcGtnIC0taW5mbyAoPSBkcGtnLWRlYiAtLWluZm8pIHRvIGV4YW1pbmUgYXJjaGl2ZSBmaWxlcyxcbiIKKyJhbmQgZHBrZyAtLWNvbnRlbnRzICg9IGRwa2ctZGViIC0tY29udGVudHMpIHRvIGxpc3QgdGhlaXIgY29udGVudHMuXG4iCittc2dzdHIgIiIKKyJVenUgZHBrZyAtLWluZm8gKD0gZHBrZy1kZWIgLS1pbmZvKSBwb3IgZWt6YW1lbmkgYXJraXZham4gZG9zaWVyb2puLFxuIgorImthaiBkcGtnIC0tY29udGVudHMgKD0gZHBrZy1kZWIgLS1jb250ZW50cykgcG9yIGxpc3RpZ2kgaWxpYWpuIGVuaGF2b2puLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo1NzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyB0YWtlcyBhdCBtb3N0IHR3byBhcmd1bWVudHMiCittc2dzdHIgIi0tJXMgcHJlbmFzIG1ha3NpbXVtZSBkdSBhcmd1bWVudG9qbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NTc4CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbnRyb2wgZmlsZSBjb250YWlucyAlYyIKK21zZ3N0ciAicmVnLWRvc2llcm8gZW5oYXZhcyAlYyIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjAwCisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiAlcyBwYWNrYWdlIG1hbmFnZW1lbnQgcHJvZ3JhbSBxdWVyeSB0b29sIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkRlYmlhbmEgJXMgcGV0aWxvIGRlIHBhay1hZG1pbmlzdHJhIHByb2dyYW1vLCB2ZXJzaW8gJXMuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjYxOQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIkNvbW1hbmRzOlxuIgorI3wgIiAgLXN8LS1zdGF0dXMgPHBhY2thZ2U+IC4uLiAgICAgICAgRGlzcGxheSBwYWNrYWdlIHN0YXR1cyBkZXRhaWxzLlxuIgorI3wgIiAgLXB8LS1wcmludC1hdmFpbCA8cGFja2FnZT4gLi4uICAgRGlzcGxheSBhdmFpbGFibGUgdmVyc2lvbiBkZXRhaWxzLlxuIgorI3wgIiAgLUx8LS1saXN0ZmlsZXMgPHBhY2thZ2U+IC4uLiAgICAgTGlzdCBmaWxlcyBgb3duZWQnIGJ5IHBhY2thZ2UocykuXG4iCisjfCAiICAtbHwtLWxpc3QgWzxwYXR0ZXJuPiAuLi5dICAgICAgICBMaXN0IHBhY2thZ2VzIGNvbmNpc2VseS5cbiIKKyN8ICIgIC1XfC0tc2hvdyA8cGF0dGVybj4gLi4uICAgICAgICAgIFNob3cgaW5mb3JtYXRpb24gb24gcGFja2FnZShzKS5cbiIKKyN8ICIgIC1TfC0tc2VhcmNoIDxwYXR0ZXJuPiAuLi4gICAgICAgIEZpbmQgcGFja2FnZShzKSBvd25pbmcgZmlsZShzKS5cbiIKKyN8ICIgIC1jfC0tY29udHJvbC1wYXRoIDxwYWNrYWdlPiBbPGZpbGU+XVxuIgorI3wgIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHJpbnQgcGF0aCBmb3IgcGFja2FnZSBjb250cm9sIGZpbGUuXG4iCisjfCAiXG4iCittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLXN8LS1zdGF0dXMgPHBhY2thZ2U+IC4uLiAgICAgICAgRGlzcGxheSBwYWNrYWdlIHN0YXR1cyBkZXRhaWxzLlxuIgorIiAgLXB8LS1wcmludC1hdmFpbCA8cGFja2FnZT4gLi4uICAgRGlzcGxheSBhdmFpbGFibGUgdmVyc2lvbiBkZXRhaWxzLlxuIgorIiAgLUx8LS1saXN0ZmlsZXMgPHBhY2thZ2U+IC4uLiAgICAgTGlzdCBmaWxlcyBgb3duZWQnIGJ5IHBhY2thZ2UocykuXG4iCisiICAtbHwtLWxpc3QgWzxwYXR0ZXJuPiAuLi5dICAgICAgICBMaXN0IHBhY2thZ2VzIGNvbmNpc2VseS5cbiIKKyIgIC1XfC0tc2hvdyBbPHBhdHRlcm4+IC4uLl0gICAgICAgIFNob3cgaW5mb3JtYXRpb24gb24gcGFja2FnZShzKS5cbiIKKyIgIC1TfC0tc2VhcmNoIDxwYXR0ZXJuPiAuLi4gICAgICAgIEZpbmQgcGFja2FnZShzKSBvd25pbmcgZmlsZShzKS5cbiIKKyIgIC1jfC0tY29udHJvbC1wYXRoIDxwYWNrYWdlPiBbPGZpbGU+XVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHJpbnQgcGF0aCBmb3IgcGFja2FnZSBjb250cm9sIGZpbGUuXG4iCisiXG4iCittc2dzdHIgIiIKKyJLb21hbmRvajpcbiIKKyIgIC1zfC0tc3RhdHVzIDxwYWtvPiAuLi4gICAgICAgIE1vbnRyaWdpIGRldGFsb2puIHByaSBzdGF0byBkZSBsYSBwYWtvLlxuIgorIiAgLXB8LS1wcmludC1hdmFpbCA8cGFrbz4gLi4uICAgTW9udHJpZ2kgZGlzcG9uZWJsYWpuIHZlcnNpLWRldGFsb2puLlxuIgorIiAgLUx8LS1saXN0ZmlsZXMgPHBha28+IC4uLiAgICAgTGlzdGlnaSBkb3NpZXJvam4gJ3Bvc2VkYXRham4nIGRlIHBha28oaikuXG4iCisiICAtbHwtLWxpc3QgWzzFnWFibG9ubz4gLi4uXSAgICAgTGlzdGlnaSBwYWtvam4gcmVzdW1lLlxuIgorIiAgLVd8LS1zaG93IDzFnWFibG9ubz4gLi4uICAgICAgIE1vbnRyaSBpbmZvcm1vbiBwcmkgcGFrbyhqKS5cbiIKKyIgIC1TfC0tc2VhcmNoIDzFnWFibG9ubz4gLi4uICAgICBUcm92aSBwYWtvKGopbiBwb3NlZGFudGEoailuIGRvc2llcm8oailuLlxuIgorIiAgLWN8LS1jb250cm9sLXBhdGggPHBha28+IFs8ZG9zaWVybz5dXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQcmludGkgdm9qb24gcG9yIHBha2EgcmVnLWRvc2llcm8uXG4iCisiXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjYzNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorIiAgLWZ8LS1zaG93Zm9ybWF0PTxmb3JtYXQ+ICAgICAgICAgVXNlIGFsdGVybmF0aXZlIGZvcm1hdCBmb3IgLS1zaG93LlxuIgorIlxuIgorbXNnc3RyICIiCisiRWxla3RlYmxvajpcbiIKKyIgIC0tYWRtaW5kaXI9PGRvc2llcnVqbz4gICAgICAgICAgVXppIDxkb3NpZXJ1am8+IGFuc3RhdGHFrSAlcy5cbiIKKyIgIC1mfC0tc2hvd2Zvcm1hdD08Zm9ybW8+ICAgICAgICAgVXppIGFsdGVybmF0aXZhbiBmb3Jtb24gcG9yIC0tc2hvdy5cbiIKKyJcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjQyIGRwa2ctZGViL21haW4uYzoxMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkZvcm1hdCBzeW50YXg6XG4iCisiICBBIGZvcm1hdCBpcyBhIHN0cmluZyB0aGF0IHdpbGwgYmUgb3V0cHV0IGZvciBlYWNoIHBhY2thZ2UuIFRoZSBmb3JtYXRcbiIKKyIgIGNhbiBpbmNsdWRlIHRoZSBzdGFuZGFyZCBlc2NhcGUgc2VxdWVuY2VzIFxcbiAobmV3bGluZSksIFxcciAoY2FycmlhZ2VcbiIKKyIgIHJldHVybikgb3IgXFxcXCAocGxhaW4gYmFja3NsYXNoKS4gUGFja2FnZSBpbmZvcm1hdGlvbiBjYW4gYmUgaW5jbHVkZWRcbiIKKyIgIGJ5IGluc2VydGluZyB2YXJpYWJsZSByZWZlcmVuY2VzIHRvIHBhY2thZ2UgZmllbGRzIHVzaW5nIHRoZSAke3Zhcls7IgorIndpZHRoXX1cbiIKKyIgIHN5bnRheC4gRmllbGRzIHdpbGwgYmUgcmlnaHQtYWxpZ25lZCB1bmxlc3MgdGhlIHdpZHRoIGlzIG5lZ2F0aXZlIGluICIKKyJ3aGljaFxuIgorIiAgY2FzZSBsZWZ0IGFsaWdubWVudCB3aWxsIGJlIHVzZWQuXG4iCittc2dzdHIgIiIKKyJGb3Jtby1zaW50YWtzbzpcbiIKKyIgIEZvcm1vIGVzdGFzIMSJZW5vIGtpdSBlc3RvcyBlbGlnaXRhIHBvciDEiWl1IHBha28uIExhIGZvcm1vXG4iCisiICBwb3ZhcyBpbmtsdXppdmkgbGEgb3JkaW5hcmFqbiBlc2thcC1zZWt2b2puIFxcbiAobm92bGluaW8pLCBcXHIgKGxpbmktXG4iCisiICByZXRyb2lybykgYcWtIFxcXFwgKHNpbXBsYSByZXRyb2tsaW5hxLVvKS4gUGFrLWluZm9ybW8gcG92YXMgZXN0aSAiCisiaW5rbHV6aXZhdGFcbiIKKyIgIHBlciBlbm1ldG8gZGUgdmFyaWVibGFqIHJlZmVyZW5jb2ogYWwgcGFrLWthbXBvaiB1emFudGUgbGEgc2ludGFrc29uICR7dmFyIgorIls7d2lkdGhdfVxuIgorIiAgS2FtcG9qIGVzdG9zIGRla3N0cmlnYXRhaiwga3JvbSBzZSBsYSBsYXLEnWVjbyBlc3RvcyBuZWdhdGl2YTogdGlha29uZGnEiWUgIgorImVzdG9zXG4iCisiICB1emF0YSBtYWxkZWtzdHJpZ28uXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjY1NgorbXNnaWQgIlVzZSAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgcXVlcnlpbmcgcGFja2FnZXMuIgorbXNnc3RyICJVenUgLS1oZWxwIHBvciBoZWxwbyBwcmkgcG9zdHVsYW50YWogcGFrb2ouIgorCisjOiBzcmMvcmVtb3ZlLmM6ODgKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgcmVxdWVzdCB0byByZW1vdmUgJS4yNTBzIHdoaWNoIGlzbid0IGluc3RhbGxlZC4iCittc2dzdHIgIm5pIGlnbm9yYXMgcGV0b24gZm9yaWdpICUuMjUwcywga2l1IG5lIGVzdGFzIGluc3RhbGl0YS4iCisKKyM6IHNyYy9yZW1vdmUuYzo5NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiaWdub3JpbmcgcmVxdWVzdCB0byByZW1vdmUgJS4yNTBzLCBvbmx5IHRoZSBjb25maWdcbiIKKyIgZmlsZXMgb2Ygd2hpY2ggYXJlIG9uIHRoZSBzeXN0ZW0uIFVzZSAtLXB1cmdlIHRvIHJlbW92ZSB0aGVtIHRvby4iCittc2dzdHIgIiIKKyJuaSBpZ25vcmFzIHBldG9uIGZvcmlnaSAlLjI1MHMsIGtpZXMgbnVyIGFrb21vZGFqXG4iCisiIGRvc2llcm9qIGVzdGFzIGVuIGxhIHNpc3RlbW8uIFV6dSAtLXB1cmdlIHBvciBmb3JpZ2kgYW5rYcWtIGlsaW4uIgorCisjOiBzcmMvcmVtb3ZlLmM6MTAzCittc2dpZCAiVGhpcyBpcyBhbiBlc3NlbnRpYWwgcGFja2FnZSAtIGl0IHNob3VsZCBub3QgYmUgcmVtb3ZlZC4iCittc2dzdHIgIlRpbyDEiWkgZXN0YXMgZXNlbmNhIHBha28gLSDEnWkgbmUgZGV2b3MgZXN0aSBmb3JpZ2l0YS4iCisKKyM6IHNyYy9yZW1vdmUuYzoxMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IGRlcGVuZGVuY3kgcHJvYmxlbXMgcHJldmVudCByZW1vdmFsIG9mICVzOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogZGVwZW5kZWNhaiBwcm9ibGVtb2ogbWFsZWJsaWdhcyBmb3JpZ29uIGRlICVzOlxuIgorIiVzIgorCisjOiBzcmMvcmVtb3ZlLmM6MTMwCittc2dpZCAiZGVwZW5kZW5jeSBwcm9ibGVtcyAtIG5vdCByZW1vdmluZyIKK21zZ3N0ciAiZGVwZW5kZWNhaiBwcm9ibGVtb2ogLSBuaSBuZSBmb3JpZ2FzIgorCisjOiBzcmMvcmVtb3ZlLmM6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiAlczogZGVwZW5kZW5jeSBwcm9ibGVtcywgYnV0IHJlbW92aW5nIGFueXdheSBhcyB5b3UgcmVxdWVzdGVkOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogJXM6IGRlcGVuZGVjYWogcHJvYmxlbW9qLCB0YW1lbiBuaSBmb3JpZ2FzIGllbCBham4sIGxhxa3CoHZpYSBwZXRvOlxuIgorIiVzIgorCisjOiBzcmMvcmVtb3ZlLmM6MTQyCittc2dpZCAiIgorIlBhY2thZ2UgaXMgaW4gYSB2ZXJ5IGJhZCBpbmNvbnNpc3RlbnQgc3RhdGUgLSB5b3Ugc2hvdWxkXG4iCisiIHJlaW5zdGFsbCBpdCBiZWZvcmUgYXR0ZW1wdGluZyBhIHJlbW92YWwuIgorbXNnc3RyICIiCisiTGEgcGFrbyBlc3RhcyBlbiB0cmUgbWFsYm9uYSBuZWtvaGVyYSBzdGF0byAtIHZpIGRldm9zXG4iCisiIHJlaW5zdGFsaSDEnWluIGFudGHFrSBvbCBwcm92aSBmb3JpZ29uLiIKKworIzogc3JjL3JlbW92ZS5jOjE0OQorIywgYy1mb3JtYXQKK21zZ2lkICJXb3VsZCByZW1vdmUgb3IgcHVyZ2UgJXMgLi4uXG4iCittc2dzdHIgIkZvcmlndXMgYcWtIHB1cmlndXMgJXMgLi4uXG4iCisKKyM6IHNyYy9yZW1vdmUuYzoxNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVtb3ZpbmcgJXMgLi4uXG4iCittc2dzdHIgIkZvcmlnYWRvIGRlICVzIC4uLlxuIgorCisjOiBzcmMvcmVtb3ZlLmM6Mjc1IHNyYy9yZW1vdmUuYzozNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIndoaWxlIHJlbW92aW5nICUuMjUwcywgdW5hYmxlIHRvIHJlbW92ZSBkaXJlY3RvcnkgJyUuMjUwcyc6ICVzIC0gZGlyZWN0b3J5ICIKKyJtYXkgYmUgYSBtb3VudCBwb2ludD8iCittc2dzdHIgIiIKKyJkdW0gZm9yaWdvIGRlICUuMjUwcywgbWFsZWJsaXMgZm9yaWdpIGxhIGRvc2llcnVqb24gJyUuMjUwcyc6ICVzIC0gxIl1IGxhICIKKyJkb3NpZXJ1am8gcG92dXMgZXN0aSBtdW50LXB1bmt0bz8iCisKKyM6IHNyYy9yZW1vdmUuYzoyODkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNlY3VyZWx5IHJlbW92ZSAnJS4yNTBzJyIKK21zZ3N0ciAibWFsZWJsYXMgc2VrdXJlIGZvcmlnaSAnJS4yNTBzJyIKKworIzogc3JjL3JlbW92ZS5jOjM2MQorIywgYy1mb3JtYXQKK21zZ2lkICJ3aGlsZSByZW1vdmluZyAlLjI1MHMsIGRpcmVjdG9yeSAnJS4yNTBzJyBub3QgZW1wdHkgc28gbm90IHJlbW92ZWQuIgorbXNnc3RyICIiCisiZHVtIGZvcmlnbyBkZSAlLjI1MHMsIGxhIGRvc2llcnVqbyAnJS4yNTBzJyBuZSBtYWxwbGVuaXMsIGRvIMSdaSByZXN0aXMuIgorCisjOiBzcmMvcmVtb3ZlLmM6MzgzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW5ub3QgcmVtb3ZlIGAlLjI1MHMnIgorbXNnaWQgImNhbm5vdCByZW1vdmUgJyUuMjUwcyciCittc2dzdHIgIm5lIGVibGFzIGZvcmlnaSAnJS4yNTBzJyIKKworIzogc3JjL3JlbW92ZS5jOjQwOQorIywgYy1mb3JtYXQKK21zZ2lkICJQdXJnaW5nIGNvbmZpZ3VyYXRpb24gZmlsZXMgZm9yICVzIC4uLlxuIgorbXNnc3RyICJQdXJpZ2FkbyBkZSBha29tb2RhaiBkb3NpZXJvaiBwb3IgJXMuLi5cbiIKKworIzogc3JjL3JlbW92ZS5jOjQ1OQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVtb3ZlIG9sZCBjb25maWcgZmlsZSBgJS4yNTBzJyAoPSBgJS4yNTBzJykiCittc2dzdHIgIm5lIGVibGFzIGZvcmlnaSBsYSBtYWxub3ZhbiBha29tb2RhbiBkb3NpZXJvbiAnJS4yNTBzJyAoPSAnJS4yNTBzJykiCisKKyM6IHNyYy9yZW1vdmUuYzo0NzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlYWQgY29uZmlnIGZpbGUgZGlyIGAlLjI1MHMnIChmcm9tIGAlLjI1MHMnKSIKK21zZ3N0ciAibmUgZWJsYXMgbGVnaSBsYSB1am9uIGRlIGFrb21vZG8tZG9zaWVybyAnJS4yNTBzJyAoZWwgJyUuMjUwcycpIgorCisjOiBzcmMvcmVtb3ZlLmM6NTEwCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZW1vdmUgb2xkIGJhY2t1cCBjb25maWcgZmlsZSBgJS4yNTBzJyAob2YgYCUuMjUwcycpIgorbXNnc3RyICIiCisibmUgZWJsYXMgZm9yaWdpIGxhIG1hbG5vdmFuIHNla3Vya29waWFuIGFrb21vZG8tZG9zaWVyb24gJyUuMjUwcycgKGRlICIKKyInJS4yNTBzJykiCisKKyM6IHNyYy9yZW1vdmUuYzo1NjgKK21zZ2lkICJjYW5ub3QgcmVtb3ZlIG9sZCBmaWxlcyBsaXN0IgorbXNnc3RyICJuZSBlYmxhcyBmb3JpZ2kgbWFsbm92YW4gZG9zaWVyLWxpc3RvbiIKKworIzogc3JjL3JlbW92ZS5jOjU3NAorbXNnaWQgImNhbid0IHJlbW92ZSBvbGQgcG9zdHJtIHNjcmlwdCIKK21zZ3N0ciAibmUgZWJsYXMgZm9yaWdpIG1hbG5vdmFuIHNrcmlwdG9uIHBvc3RybSIKKworIzogc3JjL3NlbGVjdC5jOjExNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVvZiBpbiBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZCIKK21zZ3N0ciAibmVhdGVuZGF0YSBkb3NpZXJmaW5vIGVuIHBhay1ub21vIMSJZSBsaW5pbyAlZCIKKworIzogc3JjL3NlbGVjdC5jOjExNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBsaW5lIGluIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICJuZWF0ZW5kYXRhIGxpbmlmaW5vIGVuIHBhay1ub21vIMSJZSBsaW5pbyAlZCIKKworIzogc3JjL3NlbGVjdC5jOjEyMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVvZiBhZnRlciBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZCIKK21zZ3N0ciAibmVhdGVuZGF0YSBkb3NpZXJmaW5vIHBvc3QgcGFrLW5vbW8gxIllIGxpbmlvICVkIgorCisjOiBzcmMvc2VsZWN0LmM6MTIzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGxpbmUgYWZ0ZXIgcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQiCittc2dzdHIgIm5lYXRlbmRhdGEgbGluaWZpbm8gcG9zdCBwYWstbm9tbyDEiWUgbGluaW8gJWQiCisKKyM6IHNyYy9zZWxlY3QuYzoxMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBkYXRhIGFmdGVyIHBhY2thZ2UgYW5kIHNlbGVjdGlvbiBhdCBsaW5lICVkIgorbXNnc3RyICJuZWF0ZW5kYXRhIGRhdHVtYXJvIHBvc3QgcGFrbyBrYWogZWxla3RvIMSJZSBsaW5pbyAlZCIKKworIzogc3JjL3NlbGVjdC5jOjEzOQorIywgYy1mb3JtYXQKK21zZ2lkICJpbGxlZ2FsIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkOiAlLjI1MHMiCittc2dzdHIgIm1hbHZhbGlkYSBwYWstbm9tbyDEiWUgbGluaW8gJWQ6ICUuMjUwcyIKKworIzogc3JjL3NlbGVjdC5jOjE0MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIHdhbnRlZCBzdGF0dXMgYXQgbGluZSAlZDogJS4yNTBzIgorbXNnc3RyICJuZWtvbmF0YSBzdGF0byBkZSBkZXppcmF0YcS1byDEiWUgbGluaW8gJWQ6ICUuMjUwcyIKKworIzogc3JjL3NlbGVjdC5jOjE0OQorbXNnaWQgInJlYWQgZXJyb3Igb24gc3RhbmRhcmQgaW5wdXQiCittc2dzdHIgImxlZy1lcmFybyBlbiBsYSBub3JtYSBlbmlnbyIKKworIzogc3JjL3N0YXRjbWQuYzo1MgorIywgZnV6enkKKyN8IG1zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IHF1ZXJ5aW5nIHBhY2thZ2VzLiIKK21zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IG92ZXJyaWRpbmcgZmlsZSBzdGF0IGluZm9ybWF0aW9uLiIKK21zZ3N0ciAiVXp1IC0taGVscCBwb3IgaGVscG8gcHJpIHBvc3R1bGFudGFqIHBha29qLiIKKworIzogc3JjL3N0YXRjbWQuYzo2MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29weXJpZ2h0IChDKSAyMDAwLCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDA2LTIwMDkgR3VpbGxlbSBKb3Zlci5cbiIKK21zZ3N0ciAiIgorIktvcGlyYWp0byAoQykgMjAwMCwgMjAwMSBXaWNoZXJ0IEFra2VybWFuLlxuIgorIktvcGlyYWp0byAoQykgMjAwNi0yMDA5IEd1aWxsZW0gSm92ZXIuXG4iCisKKyM6IHNyYy9zdGF0Y21kLmM6ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLS1hZGQgPG93bmVyPiA8Z3JvdXA+IDxtb2RlPiA8ZmlsZT5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBhZGQgYSBuZXcgZW50cnkgaW50byB0aGUgZGF0YWJhc2UuXG4iCisiICAtLXJlbW92ZSA8ZmlsZT4gICAgICAgICAgcmVtb3ZlIGZpbGUgZnJvbSB0aGUgZGF0YWJhc2UuXG4iCisiICAtLWxpc3QgWzxnbG9iLXBhdHRlcm4+XSAgbGlzdCBjdXJyZW50IG92ZXJyaWRlcyBpbiB0aGUgZGF0YWJhc2UuXG4iCisiXG4iCittc2dzdHIgIiIKKyJLb21hbmRvanM6XG4iCisiICAtLWFkZCA8cG9zZWRhbnRvPiA8Z3J1cG8+IDxyZcSdaW1vPiA8ZG9zaWVybz5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBhbGRvbmkgbm92YW4gcmVnaXN0cm9uIGVuIGxhIGRhdHVtYmF6b24uXG4iCisiICAtLXJlbW92ZSA8ZG9zaWVybz4gICAgICAgZm9yaWdpIGRvc2llcm9uIGVsIGxhIGRhdHVtYmF6by5cbiIKKyIgIC0tbGlzdCBbPGdsb2ItxZ1hYmxvbm8+XSAgbGlzdGlnaSBudW5ham4gcHJldGVycGFzb2puIGVuIGxhIGRhdHVtYmF6by5cbiIKKyJcbiIKKworIzogc3JjL3N0YXRjbWQuYzo4OQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICBzZXQgdGhlIGRpcmVjdG9yeSB3aXRoIHRoZSBzdGF0b3ZlcnJpZGUgZmlsZS5cbiIKKyIgIC0tdXBkYXRlICAgICAgICAgICAgICAgICBpbW1lZGlhdGVseSB1cGRhdGUgZmlsZSBwZXJtaXNzaW9ucy5cbiIKKyIgIC0tZm9yY2UgICAgICAgICAgICAgICAgICBmb3JjZSBhbiBhY3Rpb24gZXZlbiBpZiBhIHNhbml0eSBjaGVjayBmYWlscy5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBxdWlldCBvcGVyYXRpb24sIG1pbmltYWwgb3V0cHV0LlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIkVsZWt0ZWJsb2o6XG4iCisiICAtLWFkbWluZGlyIDxkb3NpZXJ1am8+ICAgZGlmaW5pIGxhIGRvc2llcnVqb24gZW5oYXZhbnRhbiBsYSBkb3NpZXJvbiAiCisic3RhdG92ZXJyaWRlLlxuIgorIiAgLS11cGRhdGUgICAgICAgICAgICAgICAgIHR1aiDEnWlzZGF0aWdpIGRvc2llci1hbGlyZWJsZWNvam4uXG4iCisiICAtLWZvcmNlICAgICAgICAgICAgICAgICAgcGVyZm9ydGkgYWdvbiBlxIkgc2Uga29oZXJlYy1rb250cm9sbyAiCisibWFsc3VrY2VzYXMuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgc2lsZW50YSBwcm9jZXphZG8sIG1pbmltdW1hIGVsaWdvLlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIG1vbnRyaSB0aXVuIMSJaSBoZWxwLW1lc2HEnW9uLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIG1vbnRyaSBsYSB2ZXJzaW9uLlxuIgorCisjOiBzcmMvc3RhdGNtZC5jOjExNgorbXNnaWQgInN0cmlwcGluZyB0cmFpbGluZyAvIgorbXNnc3RyICJhcGFydGlnYWRvIGRlIHZvc3RhIC8iCisKKyM6IHNyYy9zdGF0Y21kLmM6MjA3Cittc2dpZCAiY2Fubm90IG9wZW4gbmV3IHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJuZSBwb3ZhcyBtYWxmZXJtaSBub3ZhbiBkb3NpZXJvbiBzdGF0b3ZlcnJpZGUiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjIyCittc2dpZCAiZXJyb3IgcmVtb3Zpbmcgc3RhdG92ZXJyaWRlLW9sZCIKK21zZ3N0ciAiZXJhcm8gZHVtIGZvcmlnbyBkZSBzdGF0b3ZlcnJpZGUtb2xkIgorCisjOiBzcmMvc3RhdGNtZC5jOjIyNAorbXNnaWQgImVycm9yIGNyZWF0aW5nIG5ldyBzdGF0b3ZlcnJpZGUtb2xkIgorbXNnc3RyICJlcmFybyBkdW0ga3JlYWRvIGRlIG5vdmEgc3RhdG92ZXJyaWRlLW9sZCIKKworIzogc3JjL3N0YXRjbWQuYzoyMjYKK21zZ2lkICJlcnJvciBpbnN0YWxsaW5nIG5ldyBzdGF0b3ZlcnJpZGUiCittc2dzdHIgImVyYXJvIGR1bSBpbnN0YWxhZG8gZGUgbm92YSBzdGF0b3ZlcnJpZGUiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjQ2Cittc2dpZCAiLS1hZGQgbmVlZHMgZm91ciBhcmd1bWVudHMiCittc2dzdHIgIi0tYWRkIGJlem9uYXMga3ZhciBhcmd1bWVudG9qbiIKKworIzogc3JjL3N0YXRjbWQuYzoyNTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkFuIG92ZXJyaWRlIGZvciAnJXMnIGFscmVhZHkgZXhpc3RzLCBidXQgLS1mb3JjZSBzcGVjaWZpZWQgc28gd2lsbCBiZSAiCisiaWdub3JlZC4iCittc2dzdHIgIiIKKyJQcmV0ZXJwYXNvIHBvciAnJXMnIGphbSBla3ppc3Rhcywgc2VkIC0tZm9yY2UgZXN0YXMgc3BlY2lmaXRhLCBkbyDEnWkgZXN0b3MgIgorInByZXRlcmF0ZW50aXRhLiIKKworIzogc3JjL3N0YXRjbWQuYzoyNjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiQW4gb3ZlcnJpZGUgZm9yICclcycgYWxyZWFkeSBleGlzdHMsIGFib3J0aW5nLiIKK21zZ3N0ciAiUHJldGVycGFzbyBwb3IgXCIlc1wiIGphbSBla3ppc3RhcywgbmkgxIllc2lnYXMuIgorCisjOiBzcmMvc3RhdGNtZC5jOjI3MgorIywgYy1mb3JtYXQKK21zZ2lkICItLXVwZGF0ZSBnaXZlbiBidXQgJXMgZG9lcyBub3QgZXhpc3QiCittc2dzdHIgIi0tdXBkYXRlIGluZGlraXRlIHNlZCAlcyBuZSBla3ppc3RhcyIKKworIzogc3JjL3N0YXRjbWQuYzoyOTYKK21zZ2lkICJObyBvdmVycmlkZSBwcmVzZW50LiIKK21zZ3N0ciAiTmVuaXUgcHJldGVycGFzbyDEiWVlc3Rhcy4iCisKKyM6IHNyYy9zdGF0Y21kLmM6MzA0Cittc2dpZCAiLS11cGRhdGUgaXMgdXNlbGVzcyBmb3IgLS1yZW1vdmUiCittc2dzdHIgIi0tdXBkYXRlIGVzdGFzIG5ldXRpbGEgcG9yIC0tcmVtb3ZlIgorCisjOiBzcmMvc3RhdGRiLmM6NTkKK21zZ2lkICJzeW50YXggZXJyb3I6IGludmFsaWQgdWlkIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJzaW50YWtzLWVyYXJvOiBtYWx2YWxpZGEgdWlkIGVuIGRvc2llcm8gc3RhdG92ZXJyaWRlIgorCisjOiBzcmMvc3RhdGRiLmM6NjQKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yOiB1bmtub3duIHVzZXIgJyVzJyBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAic2ludGFrcy1lcmFybzogbmVrb25hdGEgdXphbnRvICclcycgZW4gZG9zaWVybyBzdGF0b3ZlcnJpZGUiCisKKyM6IHNyYy9zdGF0ZGIuYzo4MworbXNnaWQgInN5bnRheCBlcnJvcjogaW52YWxpZCBnaWQgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgInNpbnRha3MtZXJhcm86IG1hbHZhbGlkYSBnaWQgZW4gZG9zaWVybyBzdGF0b3ZlcnJpZGUiCisKKyM6IHNyYy9zdGF0ZGIuYzo4OAorIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3I6IHVua25vd24gZ3JvdXAgJyVzJyBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAic2ludGFrcy1lcmFybzogbmVrb25hdGEgZ3J1cG8gJyVzJyBlbiBkb3NpZXJvIHN0YXRvdmVycmlkZSIKKworIzogc3JjL3N0YXRkYi5jOjEwNAorbXNnaWQgInN5bnRheCBlcnJvcjogaW52YWxpZCBtb2RlIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJzaW50YWtzLWVyYXJvOiBtYWx2YWxpZGEgcmXEnWltbyBlbiBkb3NpZXJvIHN0YXRvdmVycmlkZSIKKworIzogc3JjL3N0YXRkYi5jOjEyNworbXNnaWQgImZhaWxlZCB0byBvcGVuIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJtYWxzdWtjZXNpcyBtYWxmZXJtaSBkb3NpZXJvbiBzdGF0b3ZlcnJpZGUiCisKKyM6IHNyYy9zdGF0ZGIuYzoxMzQKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIm1hbHN1a2Nlc2lzIHV6aSBmc3RhdCBqZSBkb3NpZXJvICdzdGF0b3ZlcnJpZGUnIgorCisjOiBzcmMvc3RhdGRiLmM6MTM3Cittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IHByZXZpb3VzIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJtYWxzdWtjZXNpcyB1emkgZnN0YXQgamUgYW50YcWtYSBkb3NpZXJvICdzdGF0b3ZlcnJpZGUnIgorCisjOiBzcmMvc3RhdGRiLmM6MTYyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJzdGF0b3ZlcnJpZGUgZmlsZSBgJS4yNTBzJyIKK21zZ2lkICJyZWFkaW5nIHN0YXRvdmVycmlkZSBmaWxlICclLjI1MHMnIgorbXNnc3RyICJkb3NpZXJvIHN0YXRvdmVycmlkZSAnJS4yNTBzJyIKKworIzogc3JjL3N0YXRkYi5jOjE2OQorbXNnaWQgInN0YXRvdmVycmlkZSBmaWxlIGlzIG1pc3NpbmcgZmluYWwgbmV3bGluZSIKK21zZ3N0ciAiZG9zaWVybyBzdGF0b3ZlcnJpZGUgbWFsaGF2YXMgbGFzdGFuIGxpbmlmaW5hxLVvbiIKKworIzogc3JjL3N0YXRkYi5jOjE3MworbXNnaWQgInN0YXRvdmVycmlkZSBmaWxlIGNvbnRhaW5zIGVtcHR5IGxpbmUiCittc2dzdHIgImRvc2llcm8gc3RhdG92ZXJyaWRlIGVuaGF2YXMgbWFscGxlbmFuIGxpbmlvbiIKKworIzogc3JjL3N0YXRkYi5jOjE3OCBzcmMvc3RhdGRiLmM6MTkwIHNyYy9zdGF0ZGIuYzoyMDIKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgInNpbnRha3MtZXJhcm8gZW4gZG9zaWVybyBzdGF0b3ZlcnJpZGUiCisKKyM6IHNyYy9zdGF0ZGIuYzoxODYgc3JjL3N0YXRkYi5jOjE5OCBzcmMvc3RhdGRiLmM6MjEwCittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgbGluZSBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAibmVhdGVuZGF0YSBsaW5pZmlub24gZW4gZG9zaWVybyBzdGF0b3ZlcnJpZGUiCisKKyM6IHNyYy9zdGF0ZGIuYzoyMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAibXVsdGlwbGUgc3RhdHVzb3ZlcnJpZGVzIHByZXNlbnQgZm9yIGZpbGUgJyUuMjUwcyciCittc2dzdHIgIm11bHRvYmxhaiAnc3RhdHVzb3ZlcnJpZGUnIMSJZWVzdGFzIHBvciBsYSBkb3NpZXJvICclLjI1MHMnIgorCisjOiBzcmMvdHJpZ2NtZC5jOjQ2Cittc2dpZCAiVHlwZSBkcGtnLXRyaWdnZXIgLS1oZWxwIGZvciBoZWxwIGFib3V0IHRoaXMgdXRpbGl0eS4iCittc2dzdHIgIlRhanB1IGRwa2ctdHJpZ2dlciAtLWhlbHAgcG9yIGhlbHBvIHByaSB0aXUgxIlpIHV0aWxhxLVvLiIKKworIzogc3JjL3RyaWdjbWQuYzo1MQorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gJXMgcGFja2FnZSB0cmlnZ2VyIHV0aWxpdHkgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiRGViaWFuYSBwYWtvICVzIGVraWdpbGEgdXRpbGHEtW8sIHZlcnNpbyAlcy5cbiIKKworIzogc3JjL3RyaWdjbWQuYzo2NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9ucz4gLi4uXSA8dHJpZ2dlci1uYW1lPlxuIgorIiAgICAgICAlcyBbPG9wdGlvbnM+IC4uLl0gPGNvbW1hbmQ+XG4iCisiXG4iCittc2dzdHIgIiIKKyJVemFkbzogJXMgWzxlbGVrdGVibG9qPiAuLi5dIDxla2lnaWwtbm9tbz5cbiIKKyIgICAgICAgJXMgWzxlbGVrdGVibG9qPiAuLi5dIDxrb21hbmRvPlxuIgorIlxuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC0tY2hlY2stc3VwcG9ydGVkICAgICAgICAgICAgICAgIENoZWNrIGlmIHRoZSBydW5uaW5nIGRwa2cgc3VwcG9ydHMgIgorInRyaWdnZXJzLlxuIgorIlxuIgorbXNnc3RyICIiCisiS29tYW5kb2o6XG4iCisiICAtLWNoZWNrLXN1cHBvcnRlZCAgICAgICAgICAgICAgICBLb250cm9saSDEiXUgbGEgcGxlbnVtYXRhIGRwa2cgc3VidGVuYXMgIgorImVraWdpbG9qbi5cbiIKKyJcbiIKKworIzogc3JjL3RyaWdjbWQuYzo4MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorIiAgLS1ieS1wYWNrYWdlPTxwYWNrYWdlPiAgICAgICAgICAgT3ZlcnJpZGUgdHJpZ2dlciBhd2FpdGVyIChub3JtYWxseSBzZXRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnkgZHBrZykuXG4iCisiICAtLW5vLWF3YWl0ICAgICAgICAgICAgICAgICAgICAgICBObyBwYWNrYWdlIG5lZWRzIHRvIGF3YWl0IHRoZSAiCisicHJvY2Vzc2luZy5cbiIKKyIgIC0tbm8tYWN0ICAgICAgICAgICAgICAgICAgICAgICAgIEp1c3QgdGVzdCAtIGRvbid0IGFjdHVhbGx5IGNoYW5nZSAiCisiYW55dGhpbmcuXG4iCisiXG4iCittc2dzdHIgIiIKKyJFbGVrdGVibG9qOlxuIgorIiAgLS1hZG1pbmRpcj08ZG9zaWVydWpvPiAgICAgICAgICAgVXppIDxkb3NpZXJ1am9uPiBhbnN0YXRhxa0gJXMuXG4iCisiICAtLWJ5LXBhY2thZ2U9PHBha28+ICAgICAgICAgICAgICBQcmV0ZXJwYXNpIGVraWdpbC1hdGVuZGFudG9uIChvcmRpbmFyZSAiCisixZ1hbHRpdGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGUgZHBrZykuXG4iCisiICAtLW5vLWF3YWl0ICAgICAgICAgICAgICAgICAgICAgICBOZW5pdSBwYWtvIGJlem9uYXMgYXRlbmRpIGxhIHByb2NlemFkb24uXG4iCisiICAtLW5vLWFjdCAgICAgICAgICAgICAgICAgICAgICAgICBTaW1wbGUgdGVzdGkgLSBuZSDFnWFuxJ1pIGlvbiBham4gZmFrdGUuXG4iCisiXG4iCisKKyM6IHNyYy90cmlnY21kLmM6MTUyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB0cmlnZ2VycyBkYXRhIGRpcmVjdG9yeSBub3QgeWV0IGNyZWF0ZWRcbiIKK21zZ3N0ciAiJXM6IGRhdHVtYXJhIGRvc2llcnVqbyBkZSBla2lnaWxvaiBhbmtvcmHFrSBuZSBlc3RhcyBrcmVpdGFcbiIKKworIzogc3JjL3RyaWdjbWQuYzoxNTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IHRyaWdnZXIgcmVjb3JkcyBub3QgeWV0IGluIGV4aXN0ZW5jZVxuIgorbXNnc3RyICIlczogZWtpZ2lsYWogcmVnaXN0cmHEtW9qIGFua29yYcWtwqBuZSBla3ppc3Rhc1xuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIwNQorbXNnaWQgInRha2VzIG9uZSBhcmd1bWVudCwgdGhlIHRyaWdnZXIgbmFtZSIKK21zZ3N0ciAicHJlbmFzIHVudSBhcmd1bWVudG9uLCBsYSBla2lnaWwtbm9tb24iCisKKyM6IHNyYy90cmlnY21kLmM6MjEwCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJkcGtnLXRyaWdnZXIgbXVzdCBiZSBjYWxsZWQgZnJvbSBhIG1haW50YWluZXIgc2NyaXB0IChvciB3aXRoIGEgLS1ieS0iCisjfCAicGFja2FnZSBvcHRpb24pIgorbXNnaWQgIm11c3QgYmUgY2FsbGVkIGZyb20gYSBtYWludGFpbmVyIHNjcmlwdCAob3Igd2l0aCBhIC0tYnktcGFja2FnZSBvcHRpb24pIgorbXNnc3RyICIiCisiZHBrZy10cmlnZ2VyIGRldmFzIGVzdGkgbGFuxIlhdGEgZWwgc2tyaXB0byBkZSBwYWt6b3JnYW50byAoYcWtwqBrdW4gZWxla3RlYmxvICAiCisiLS1ieS1wYWNrYWdlKSIKKworIzogc3JjL3RyaWdjbWQuYzoyMTUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImRwa2ctdHJpZ2dlcjogaWxsZWdhbCBhd2FpdGVkIHBhY2thZ2UgbmFtZSBgJS4yNTBzJzogJS4yNTBzIgorbXNnaWQgImlsbGVnYWwgYXdhaXRlZCBwYWNrYWdlIG5hbWUgJyUuMjUwcyc6ICUuMjUwcyIKK21zZ3N0ciAiZHBrZy10cmlnZ2VyOiBtYWx2YWxpZGEgYXRlbmRhdGEgcGFrLW5vbW8gJyUuMjUwcyc6ICUuMjUwcyIKKworIzogc3JjL3RyaWdjbWQuYzoyMjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCB0cmlnZ2VyIG5hbWUgYCUuMjUwcyc6ICUuMjUwcyIKK21zZ3N0ciAibWFsdmFsaWRhIGVraWdpbGEgbm9tbyAnJS4yNTBzJzogJS4yNTBzIgorCisjOiBzcmMvdHJpZ3Byb2MuYzoyNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBjeWNsZSBmb3VuZCB3aGlsZSBwcm9jZXNzaW5nIHRyaWdnZXJzOlxuIgorIiBjaGFpbiBvZiBwYWNrYWdlcyB3aG9zZSB0cmlnZ2VycyBhcmUgb3IgbWF5IGJlIHJlc3BvbnNpYmxlOlxuIgorbXNnc3RyICIiCisiJXM6IGNpa2xvIGVzdGlzIHRyb3ZhdGEgZHVtIHByb2NlemFkbyBkZSBla2lnaWxvajpcbiIKKyIgxIllbm8gZGEgcGFrb2oga2llcyBla2lnaWxvaiBlc3RhcyBhxa0gcG92YXMgZXN0aSByZXNwb25kYWo6XG4iCisKKyM6IHNyYy90cmlncHJvYy5jOjI1OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiIHBhY2thZ2VzJyBwZW5kaW5nIHRyaWdnZXJzIHdoaWNoIGFyZSBvciBtYXkgYmUgdW5yZXNvbHZhYmxlOlxuIgorbXNnc3RyICIiCisiXG4iCisiIHRyYWt0b3RhaiBla2lnaWxvaiBkZSBwYWtvaiBraXVqIGVzdGFzIGHFrSBwb3ZhcyBlc3RpIG5lc29sdmVibGFqOlxuIgorCisjOiBzcmMvdHJpZ3Byb2MuYzoyODEKK21zZ2lkICJ0cmlnZ2VycyBsb29waW5nLCBhYmFuZG9uZWQiCittc2dzdHIgImVraWdpbG9qIGl0ZXJhY2lhZGFzLCBuaSBmb3JsYXNhcyIKKworIzogc3JjL3RyaWdwcm9jLmM6MzEyCisjLCBjLWZvcm1hdAorbXNnaWQgIlByb2Nlc3NpbmcgdHJpZ2dlcnMgZm9yICVzIC4uLlxuIgorbXNnc3RyICJQcm9jZXphZG8gZGUgZWtpZ2lsb2ogcG9yICVzIC4uLlxuIgorCisjOiBzcmMvdXBkYXRlLmM6NTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIi0tJXMgbmVlZHMgZXhhY3RseSBvbmUgUGFja2FnZXMgZmlsZSBhcmd1bWVudCIKK21zZ2lkICItLSVzIG5lZWRzIGV4YWN0bHkgb25lIFBhY2thZ2VzLWZpbGUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMgYmV6b25hcyBwcmVjaXplIHVudSBhcmd1bWVudG9uIHBvciBkb3NpZXJvIFBhY2thZ2VzIgorCisjOiBzcmMvdXBkYXRlLmM6NjIKK21zZ2lkICJ1bmFibGUgdG8gYWNjZXNzIGRwa2cgc3RhdHVzIGFyZWEgZm9yIGJ1bGsgYXZhaWxhYmxlIHVwZGF0ZSIKK21zZ3N0ciAibWFsZWJsYXMgYXRpbmdpIHN0YXQtYXJlb24gZGUgZHBrZyBwb3IgYW1wbGVrc2EgZGlzcG9uZWJsYSDEnWlzZGF0aWdvIgorCisjOiBzcmMvdXBkYXRlLmM6NjQKK21zZ2lkICJidWxrIGF2YWlsYWJsZSB1cGRhdGUgcmVxdWlyZXMgd3JpdGUgYWNjZXNzIHRvIGRwa2cgc3RhdHVzIGFyZWEiCittc2dzdHIgIiIKKyJhbXBsZWtzYSBkaXNwb25lYmxhIMSdaXNkYXRpZ28gcG9zdHVsYXMgc2tyaWItcmFqdG9uIGFsIGxhIHN0YXQtYXJlbyBkZSBkcGtnIgorCisjOiBzcmMvdXBkYXRlLmM6NzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVwbGFjaW5nIGF2YWlsYWJsZSBwYWNrYWdlcyBpbmZvLCB1c2luZyAlcy5cbiIKK21zZ3N0ciAiTmkgYW5zdGF0YcWtaWdhcyBkaXNwb25lYmxhbiBwYWstaW5mb3JtYXJvbiwgdXphbnRlICVzLlxuIgorCisjOiBzcmMvdXBkYXRlLmM6NzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiVXBkYXRpbmcgYXZhaWxhYmxlIHBhY2thZ2VzIGluZm8sIHVzaW5nICVzLlxuIgorbXNnc3RyICJOaSDEnWlzZGF0aWdhcyBkaXNwb25lYmxhbiBwYWstaW5mb3JtYXJvbiwgdXphbnRlICVzLlxuIgorCisjOiBzcmMvdXBkYXRlLmM6MTAxCisjLCBjLWZvcm1hdAorbXNnaWQgIkluZm9ybWF0aW9uIGFib3V0ICVkIHBhY2thZ2Ugd2FzIHVwZGF0ZWQuXG4iCittc2dpZF9wbHVyYWwgIkluZm9ybWF0aW9uIGFib3V0ICVkIHBhY2thZ2VzIHdhcyB1cGRhdGVkLlxuIgorbXNnc3RyWzBdICJJbmZvcm1hcm8gcHJpICVkIHBha28gZXN0aXMgxJ1pc2RhdGlnYXRhLlxuIgorbXNnc3RyWzFdICJJbmZvcm1hcm8gcHJpICVkIHBha29qIGVzdGlzIMSdaXNkYXRpZ2F0YS5cbiIKKworIzogc3JjL3VwZGF0ZS5jOjExNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisib2Jzb2xldGUgJy0tJXMnIG9wdGlvbiwgdW5hdmFpbGFibGUgcGFja2FnZXMgYXJlIGF1dG9tYXRpY2FsbHkgY2xlYW5lZCB1cC4iCittc2dzdHIgIiIKKyJtYWxha3R1YWxhIGVsZWt0ZWJsbyAnLS0lcycsIG5lIGRpc3BvbmVibGFqIHBha29qIGVzdGFzIGHFrXRvbWF0ZSBmb3J2acWdYXRhai4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgbmFtZSAnJS41MHMuLi4nIGlzIHRvbyBsb25nIgorbXNnc3RyICJsYSBkb3NpZXJub21vICclLjUwcy4uLicgZXN0YXMgdHJvIGxvbmdhIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjEyOQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBmaWxlIG5hbWUgJyUuMjUwcyciCittc2dzdHIgIm1hbGVibGFzICdzdGF0JyBkb3NpZXItbm9tb24gJyUuMjUwcyciCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTg5Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgY29udHJvbCBkaXJlY3RvcnkiCittc2dzdHIgIm1hbGVibGFzIGxlZ2kgc3RhdG9uIGRlIHJlZy1kb3NpZXJ1am8iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTkxCittc2dpZCAiY29udHJvbCBkaXJlY3RvcnkgaXMgbm90IGEgZGlyZWN0b3J5IgorbXNnc3RyICJyZWctZG9zaWVydWpvIG5lIGVzdGFzIGRvc2llcnVqbyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoxOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29udHJvbCBkaXJlY3RvcnkgaGFzIGJhZCBwZXJtaXNzaW9ucyAlMDNsbyAobXVzdCBiZSA+PTA3NTUgYW5kIDw9MDc3NSkiCittc2dzdHIgIiIKKyJyZWctZG9zaWVydWpvIGhhdmFzIG1hbMSddXN0YWpuIHBlcm1lc29qbiAlMDNsbyAoZGV2YXMgZXN0aSA+PTA3NTUga2FqIDw9MDc3NSkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjA0CisjLCBjLWZvcm1hdAorbXNnaWQgIm1haW50YWluZXIgc2NyaXB0IGAlLjUwcycgaXMgbm90IGEgcGxhaW4gZmlsZSBvciBzeW1saW5rIgorbXNnc3RyICIiCisibGEgcGFrem9yZ2FudC1za3JpcHRvICclLjUwcycgbmUgZXN0YXMgb3JkaW5hcmEgZG9zaWVybyBhxa0gc2ltYm9sYSBsaWdvIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjIwNworIywgYy1mb3JtYXQKK21zZ2lkICIiCisibWFpbnRhaW5lciBzY3JpcHQgYCUuNTBzJyBoYXMgYmFkIHBlcm1pc3Npb25zICUwM2xvIChtdXN0IGJlID49MDU1NSBhbmQgIgorIjw9MDc3NSkiCittc2dzdHIgIiIKKyJsYSBwYWt6b3JnYW50LXNrcmlwdG8gJyUuNTBzJyBoYXZhcyBtYWzEnXVzdGFqbiBwZXJtZXNvam4gJTAzbG8gKGRldmFzIGVzdGkgIgorIj49MDU1NSBrYWogPD0wNzc1KSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAibWFpbnRhaW5lciBzY3JpcHQgYCUuNTBzJyBpcyBub3Qgc3RhdHRhYmxlIgorbXNnc3RyICJsYSBwYWt6b3JnYW50LXNrcmlwdG8gJyUuNTBzJyBuZSBlc3RhcyBzdGF0LWxlZ2VibGEiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjM3Cittc2dpZCAiZXJyb3Igb3BlbmluZyBjb25mZmlsZXMgZmlsZSIKK21zZ3N0ciAiRXJhcm8gZHVtIG1hbGZlcm1hZG8gZGUgZG9zaWVybyBjb25mZmlsZXMiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjQ2Cittc2dpZCAiZW1wdHkgc3RyaW5nIGZyb20gZmdldHMgcmVhZGluZyBjb25mZmlsZXMiCittc2dzdHIgIm1hbHBsZW5haiDEiWVub2ogZWwgZmdldHMgZHVtIGxlZ2FkbyBkZSBkb3NpZXJvaiBjb25mZmlsZSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgbmFtZSAnJS41MHMuLi4nIGlzIHRvbyBsb25nLCBvciBtaXNzaW5nIGZpbmFsIG5ld2xpbmUiCittc2dzdHIgIiIKKyJsYSBub21vIGRlIGNvbmZmaWxlICclLjUwcy4uLicgZXN0YXMgdHJvIGxvbmdhLCBhxa3CoG1hbGhhdmFzIGZpbmFuIG5vdmxpbmlvbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgZmlsZW5hbWUgJyVzJyBjb250YWlucyB0cmFpbGluZyB3aGl0ZSBzcGFjZXMiCittc2dzdHIgImxhIG5vbW8gZGUgY29uZmZpbGUgJyVzJyBlbmhhdmFzIHZvc3Rham4gYmxhbmtham4gc3BhY29qbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgYCUuMjUwcycgZG9lcyBub3QgYXBwZWFyIGluIHBhY2thZ2UiCittc2dzdHIgImNvbmZmaWxlICclLjI1MHMnIG5lIGFwZXJhcyBlbiBsYSBwYWtvIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI2OAorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBgJS4yNTBzJyBpcyBub3Qgc3RhdHRhYmxlIgorbXNnc3RyICJjb25mZmlsZSAnJS4yNTBzJyBuZSBzdGF0LWxlZ2VibGFzIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI3MAorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSAnJXMnIGlzIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgImNvbmZmaWxlICclcycgbmUgZXN0YXMgb3JkaW5hcmEgZG9zaWVybyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgbmFtZSAnJXMnIGlzIGR1cGxpY2F0ZWQiCittc2dzdHIgIm5vbW8gZGUgY29uZmZpbGUgJyVzJyBlc3RhcyBkdW9ibGlnaXRhIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI4NworbXNnaWQgImVycm9yIHJlYWRpbmcgY29uZmZpbGVzIGZpbGUiCittc2dzdHIgImVyYXJvIGR1bSBsZWdhZG8gZGUgZG9zaWVybyBjb25mZmlsZXMiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MzM5Cittc2dpZCAicGFja2FnZSBuYW1lIGhhcyBjaGFyYWN0ZXJzIHRoYXQgYXJlbid0IGxvd2VyY2FzZSBhbHBoYW51bXMgb3IgYC0rLiciCittc2dzdHIgInBhay1ub21vIGhhdmFzIHNpZ25vam4ga2l1aiBuZSBlc3RhcyBtaW51c2tsYWogYWxmYW51bWVyb2ogYcWtwqAnLSsuJyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzozNDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBjb250YWlucyB1c2VyLWRlZmluZWQgUHJpb3JpdHkgdmFsdWUgJyVzJyIKK21zZ3N0ciAiJyVzJyBlbmhhdmFzIHRpdW4gdmFsb3JvbiBQcmlvcml0eSBkaWZpbml0YW4gZGUgdXphbnRvOiAnJXMnIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjM0NworIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGNvbnRhaW5zIHVzZXItZGVmaW5lZCBmaWVsZCAnJXMnIgorbXNnc3RyICInJXMnIGVuaGF2YXMga2FtcG9uICclcycgZGlmaW5pdGFuIGRlIHV6YW50byIKKworIzogZHBrZy1kZWIvYnVpbGQuYzozNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgJWQgd2FybmluZyBhYm91dCB0aGUgY29udHJvbCBmaWxlKHMpXG4iCittc2dpZF9wbHVyYWwgImlnbm9yaW5nICVkIHdhcm5pbmdzIGFib3V0IHRoZSBjb250cm9sIGZpbGUocylcbiIKK21zZ3N0clswXSAicHJldGVyYXRlbnRhcyAlZCBhdmVydG9uIHByaSBsYSByZWctZG9zaWVybyhqKVxuIgorbXNnc3RyWzFdICJwcmV0ZXJhdGVudGFzICVkIGF2ZXJ0b2puIHByaSBsYSByZWctZG9zaWVybyhqKVxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQwMyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQyOQorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhIDxkaXJlY3Rvcnk+IGFyZ3VtZW50IgorbXNnc3RyICItLSVzIGJlem9uYXMgYXJndW1lbnRvbiA8ZG9zaWVydWpvPiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MDkKK21zZ2lkICItLWJ1aWxkIHRha2VzIGF0IG1vc3QgdHdvIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS1idWlsZCBwcmVuYXMgbWluaW11bWUgZHUgYXJndW1lbnRvam4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDEzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGVjayBmb3IgZXhpc3RlbmNlIG9mIGFyY2hpdmUgYCUuMjUwcyciCittc2dzdHIgIm1hbGVibGFzIGtvbnRyb2xpIGVremlzdG9uIGRlIGxhIGFya2l2byAnJS4yNTBzJyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzAKK21zZ2lkICJ0YXJnZXQgaXMgZGlyZWN0b3J5IC0gY2Fubm90IHNraXAgY29udHJvbCBmaWxlIGNoZWNrIgorbXNnc3RyICIiCisibGEgY2VsbyBlc3RhcyBkb3NpZXJ1am8gLSBuaSBuZSBwb3ZhcyBwcmV0ZXJwYXNpIHJlZy1kb3NpZXJhbiBrb250cm9sb24iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDMxCittc2dpZCAibm90IGNoZWNraW5nIGNvbnRlbnRzIG9mIGNvbnRyb2wgYXJlYS4iCittc2dzdHIgIm5pIG5lIGtvbnRyb2xhcyBsYSBlbmhhdm9uIGRlIHJlZ2FkYSBhcmVvLiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZy1kZWI6IGJ1aWxkaW5nIGFuIHVua25vd24gcGFja2FnZSBpbiAnJXMnLlxuIgorbXNnc3RyICJkcGtnLWRlYjogbmkga29uc3RydWFzIG5la29uYXRhbiBwYWtvbiBlbiAnJXMnLlxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQzOQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnLWRlYjogYnVpbGRpbmcgcGFja2FnZSBgJXMnIGluIGAlcycuXG4iCittc2dzdHIgImRwa2ctZGViOiBrb25zdHJ1YWRvIGRlIGxhIHBha28gJyVzJyBlbiAnJXMnLlxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ2NyBkcGtnLWRlYi9idWlsZC5jOjUyMQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIG1ha2UgdG1wZmlsZSAoZGF0YSkiCittc2dpZCAiZmFpbGVkIHRvIG1ha2UgdGVtcG9yYXJ5IGZpbGUgKCVzKSIKK21zZ3N0ciAibWFsc3VrY2VzbyBkdW0ga3JlbyBkZSB0bXBmaWxlIChkYXR1bWFybykiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDY3IGRwa2ctZGViL2J1aWxkLmM6NDcwIGRwa2ctZGViL2J1aWxkLmM6NDc3CisjOiBkcGtnLWRlYi9idWlsZC5jOjQ4NSBkcGtnLWRlYi9idWlsZC5jOjQ5NCBkcGtnLWRlYi9idWlsZC5jOjQ5OQorIywgZnV6enkKKyN8IG1zZ2lkICJjb250cm9sIgorbXNnaWQgImNvbnRyb2wgbWVtYmVyIgorbXNnc3RyICJyZWdhZG8iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDcwIGRwa2ctZGViL2J1aWxkLmM6NTI0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gdW5saW5rIHRtcGZpbGUgKGRhdGEpLCAlcyIKK21zZ2lkICJmYWlsZWQgdG8gdW5saW5rIHRlbXBvcmFyeSBmaWxlICglcyksICVzIgorbXNnc3RyICJtYWxzdWtjZXNvIGR1bSBmb3JpZ28gZGUgdG1wZmlsZSAoZGF0dW1hcm8pLCAlcyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0ODUgZHBrZy1kZWIvYnVpbGQuYzo1OTMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdG1wZmlsZSAoZGF0YSkiCittc2dpZCAiZmFpbGVkIHRvIHJld2luZCB0ZW1wb3JhcnkgZmlsZSAoJXMpIgorbXNnc3RyICJtYWxzdWtjZXNvIGR1bSByZXRyb2lnbyBkZSB0bXBmaWxlIChkYXR1bWFybykiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDk0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gZnN0YXQgYXIgbWVtYmVyIGZpbGUgKCVzKSIKK21zZ2lkICJmYWlsZWQgdG8gc3RhdCB0ZW1wb3JhcnkgZmlsZSAoJXMpIgorbXNnc3RyICJtYWxzdWtjZXNpcyBhcGxpa2kgZnN0YXQgYWwgZG9zaWVybyBhbm8gZGUgYXIgKCVzKSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0OTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igd3JpdGluZyBgJXMnIgorbXNnc3RyICJlcmFybyBkdW0gc2tyaWJvIGRlICclcyciCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTIxIGRwa2ctZGViL2J1aWxkLmM6NTI0IGRwa2ctZGViL2J1aWxkLmM6NTQ2CisjOiBkcGtnLWRlYi9idWlsZC5jOjU3MiBkcGtnLWRlYi9idWlsZC5jOjU4MCBkcGtnLWRlYi9idWlsZC5jOjU5MworIywgZnV6enkKKyN8IG1zZ2lkICJiZXR3ZWVuIG1lbWJlcnMiCittc2dpZCAiZGF0YSBtZW1iZXIiCittc2dzdHIgImludGVyIGFub2oiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTcxIGRwa2ctZGViL2J1aWxkLmM6NTgwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gd3JpdGUgZmlsZW5hbWUgdG8gdGFyIHBpcGUgKGRhdGEpIgorbXNnaWQgImZhaWxlZCB0byB3cml0ZSBmaWxlbmFtZSB0byB0YXIgcGlwZSAoJXMpIgorbXNnc3RyICJtYWxzdWtjZXNvIGR1bSBza3JpYm8gZGUgZG9zaWVybm9tbyBhbCBkdWt0byBkZSB0YXIgKGRhdHVtYXJvKSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo1ODQKK21zZ2lkICI8Y29tcHJlc3M+IGZyb20gdGFyIC1jZiIKK21zZ3N0ciAiPGtvbXBha3RpPiBlbCB0YXIgLWNmIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6NjEgZHBrZy1kZWIvZXh0cmFjdC5jOjYzCittc2dpZCAic2hlbGwgY29tbWFuZCB0byBtb3ZlIGZpbGVzIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzo3MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBmaWxlIGluICVzIGluICUuMjU1cyIKK21zZ3N0ciAibmVhdGVuZGl0YSBkb3NpZXJmaW5vIGVuICVzIGVuICUuMjU1cyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHJlYWRpbmcgJXMgZnJvbSBmaWxlICUuMjU1cyIKK21zZ3N0ciAiZXJhcm8gZHVtIGxlZ2FkbyBkZSAlcyBlbCBsYSBkb3NpZXJvICUuMjU1cyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjEyNQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCBhcmNoaXZlIGAlLjI1NXMnIgorbXNnc3RyICJtYWxzdWtjZXNvIGR1bSBsZWdvIGRlIGxhIGFya2l2byAnJS4yNTVzJyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjEyNworbXNnaWQgImZhaWxlZCB0byBmc3RhdCBhcmNoaXZlIgorbXNnc3RyICJtYWxzdWtjZXNvIGR1bSBhcGxpa28gZGUgZnN0YXQgYWwgYXJraXZvIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTMxCisjLCBmdXp6eQorI3wgbXNnaWQgImFyY2hpdmUgaGFzIG5vIGRvdCBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ2lkICJhcmNoaXZlIG1hZ2ljIHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICJsYSBhcmtpdm8gaGF2YXMgbmVuaXVuIHB1bmt0b24gZW4gbGEgdmVyc2ktbnVtZXJvIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTQzCisjLCBmdXp6eQorI3wgbXNnaWQgImFyY2hpdmUgaGFzIG5vIG5ld2xpbmVzIGluIGhlYWRlciIKK21zZ2lkICJhcmNoaXZlIG1lbWJlciBoZWFkZXIiCittc2dzdHIgImxhIGFya2l2byBoYXZhcyBuZW5pdW4gbm92bGluaW9uIGVuIGxhIGRhdHVta2FwbyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE0OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIHBhcnQgbnVtYmVyIgorbXNnaWQgImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBhcmNoaXZlIGhlYWRlciBtYWdpYyIKK21zZ3N0ciAibGEgZG9zaWVybyAnJS4yNTBzJyBlc3RhcyBtaXNyb21waXRhIC0gbmVuaXUgcGFydC1udW1lcm8iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBub3QgYSBkZWJpYW4gYmluYXJ5IGFyY2hpdmUgKHRyeSBkcGtnLXNwbGl0PykiCittc2dzdHIgIiIKKyJsYSBkb3NpZXJvICclLjI1MHMnIG5lIGVzdGFzIGRlYmlhbmEgZHV1bWEgYXJraXZvICjEiXUgcHJvdmkgZHBrZy1zcGxpdD8pIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTU5CisjLCBmdXp6eQorI3wgbXNnaWQgImFyY2hpdmUgaGFzIG5vIGRvdCBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ2lkICJhcmNoaXZlIGluZm9ybWF0aW9uIGhlYWRlciBtZW1iZXIiCittc2dzdHIgImxhIGFya2l2byBoYXZhcyBuZW5pdW4gcHVua3RvbiBlbiBsYSB2ZXJzaS1udW1lcm8iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNjIKK21zZ2lkICJhcmNoaXZlIGhhcyBubyBuZXdsaW5lcyBpbiBoZWFkZXIiCittc2dzdHIgImxhIGFya2l2byBoYXZhcyBuZW5pdW4gbm92bGluaW9uIGVuIGxhIGRhdHVta2FwbyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE2NQorbXNnaWQgImFyY2hpdmUgaGFzIG5vIGRvdCBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAibGEgYXJraXZvIGhhdmFzIG5lbml1biBwdW5rdG9uIGVuIGxhIHZlcnNpLW51bWVybyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE2OAorIywgYy1mb3JtYXQKK21zZ2lkICJhcmNoaXZlIHZlcnNpb24gJS4yNTBzIG5vdCB1bmRlcnN0b29kLCBnZXQgbmV3ZXIgZHBrZy1kZWIiCittc2dzdHIgImxhIGFya2l2YSB2ZXJzaW8gJS4yNTBzIG5lIGVzdGlzIGtvbXByZW5lYmxhLCBha2lydSBwbGkgbm92YW4gZHBrZy1kZWIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNzkgZHBrZy1kZWIvZXh0cmFjdC5jOjIwNQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic2tpcHBlZCBtZW1iZXIgZGF0YSBmcm9tICVzIgorbXNnaWQgInNraXBwZWQgYXJjaGl2ZSBtZW1iZXIgZGF0YSBmcm9tICVzIgorbXNnc3RyICJuaSBwcmV0ZXJwYXNpcyBkYXR1bWFyb24gZGUgYW5vIGVsICVzIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTk0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGNvbnRhaW5zIHVudW5kZXJzdG9vZCBkYXRhIG1lbWJlciAlLipzLCBnaXZpbmcgdXAiCittc2dpZCAiYXJjaGl2ZSAnJS4yNTBzJyBjb250YWlucyBub3QgdW5kZXJzdG9vZCBkYXRhIG1lbWJlciAlLipzLCBnaXZpbmcgdXAiCittc2dzdHIgIiIKKyJsYSBkb3NpZXJvICclLjI1MHMnIGVuaGF2YXMgbmVrb21wcmVuZWJsYW4gYW5vbiBkZSBkYXR1bWFybyAlLipzLCBuaSByZXppZ25hcyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE5OQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZSBgJS4yNTBzJyBjb250YWlucyB0d28gY29udHJvbCBtZW1iZXJzLCBnaXZpbmcgdXAiCittc2dpZCAiYXJjaGl2ZSAnJS4yNTBzJyBjb250YWlucyB0d28gY29udHJvbCBtZW1iZXJzLCBnaXZpbmcgdXAiCittc2dzdHIgIm5lIGRvc2llcm8gJyUuMjUwcycgZW5oYXZhcyBkdSByZWdhZGFqbiBhbm9qbiwgbmkgcmV6aWduYXMiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyMTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIgbmV3IGRlYmlhbiBwYWNrYWdlLCB2ZXJzaW9uICVzLlxuIgorI3wgIiBzaXplICVsZCBieXRlczogY29udHJvbCBhcmNoaXZlPSAlemkgYnl0ZXMuXG4iCittc2dpZCAiIgorIiBuZXcgZGViaWFuIHBhY2thZ2UsIHZlcnNpb24gJXMuXG4iCisiIHNpemUgJWpkIGJ5dGVzOiBjb250cm9sIGFyY2hpdmU9ICVqZCBieXRlcy5cbiIKK21zZ3N0ciAiIgorIiBub3ZhIGRlYmlhbmEgcGFrbywgdmVyc2lvICVzLlxuIgorIiBncmFuZGVjbyAlbGQgYmFqdG9qOiByZWctYXJraXZvPSAlemkgYmFqdG9qLlxuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjMyCittc2dpZCAiYXJjaGl2ZSBjb250cm9sIG1lbWJlciBzaXplIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyMzUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImFyY2hpdmUgaGFzIG1hbGZvcm1hdHRlZCBjb250cm9sIGxlbmd0aCBgJXMnIgorbXNnaWQgImFyY2hpdmUgaGFzIG1hbGZvcm1hdHRlZCBjb250cm9sIG1lbWJlciBzaXplICclcyciCittc2dzdHIgImxhIGFya2l2byBoYXZhcyBtaXNmb3JtaXRhbiBsb25nZWNvbiBkZSByZWdhZG8gJXMnIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjQyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJza2lwcGVkIG1lbWJlciBkYXRhIGZyb20gJXMiCittc2dpZCAic2tpcHBlZCBhcmNoaXZlIGNvbnRyb2wgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ3N0ciAibmkgcHJldGVycGFzaXMgZGF0dW1hcm9uIGRlIGFubyBlbCAlcyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI0NgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiBvbGQgZGViaWFuIHBhY2thZ2UsIHZlcnNpb24gJXMuXG4iCisjfCAiIHNpemUgJWxkIGJ5dGVzOiBjb250cm9sIGFyY2hpdmU9ICV6aSwgbWFpbiBhcmNoaXZlPSAlbGQuXG4iCittc2dpZCAiIgorIiBvbGQgZGViaWFuIHBhY2thZ2UsIHZlcnNpb24gJXMuXG4iCisiIHNpemUgJWpkIGJ5dGVzOiBjb250cm9sIGFyY2hpdmU9ICVqZCwgbWFpbiBhcmNoaXZlPSAlamQuXG4iCittc2dzdHIgIiIKKyIgbWFsbm92YSBkZWJpYW5hIHBha28sIHZlcnNpbyAlcy5cbiIKKyIgZ3JhbmRlY28gJWxkIGJhanRvajogcmVnLWRvc2llcm89ICV6aSwgxIllZmEgYXJraXZvPSAlbGQuXG4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2ctZGViOiBmaWxlIGxvb2tzIGxpa2UgaXQgbWlnaHQgYmUgYW4gYXJjaGl2ZSB3aGljaCBoYXMgYmVlblxuIgorImRwa2ctZGViOiAgICBjb3JydXB0ZWQgYnkgYmVpbmcgZG93bmxvYWRlZCBpbiBBU0NJSSBtb2RlXG4iCittc2dzdHIgIiIKKyJkcGtnLWRlYjogbGEgZG9zaWVybyDFnWFqbmUgcG92dXMgZXN0aSBhcmtpdm8ga2l1IGVzdGlzXG4iCisiZHBrZy1kZWI6ICAgIG1pc3JvbXBpZ2l0YSBwcm8gZWzFnXV0byBsYcWtIHJlxJ1pbW8gQVNDSUlcbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI1OQorIywgYy1mb3JtYXQKK21zZ2lkICJgJS4yNTVzJyBpcyBub3QgYSBkZWJpYW4gZm9ybWF0IGFyY2hpdmUiCittc2dzdHIgIiclLjI1NXMnIG5lIGVzdGFzIGRlYmlhbi1mb3JtYSBhcmtpdm8iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNjYKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgdG8gcGlwZSBpbiBjb3B5IgorbXNnc3RyICJtYWxzdWtjZXNvIGR1bSBza3JpYm8gYWwgZHVrdG8gamUga29waW8iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNjgKK21zZ2lkICJmYWlsZWQgdG8gY2xvc2UgcGlwZSBpbiBjb3B5IgorbXNnc3RyICJtYWxzdWtjZXNvIGR1bSBmZXJtbyBkZSBkdWt0byBqZSBrb3BpbyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI4NAorbXNnaWQgImRhdGEiCittc2dzdHIgImRhdHVtYXJvIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzA3Cittc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIGRpcmVjdG9yeSIKK21zZ3N0ciAibWFsc3VrY2VzbyBkdW0gYXRpbmdvIGFsIGRvc2llcnVqbyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMxMAorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgZGlyZWN0b3J5IgorbXNnc3RyICJtYWxzdWtjZXNvIGR1bSBrcmVvIGRlIGRvc2llcnVqbyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMxMgorbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byBkaXJlY3RvcnkgYWZ0ZXIgY3JlYXRpbmcgaXQiCittc2dzdHIgIm1hbHN1a2Nlc28gZHVtIGF0aW5nbyBhbCBkb3NpZXJ1am8gcG9zdCBrcmVpIMSdaW4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozMjMKK21zZ2lkICI8ZGVjb21wcmVzcz4iCittc2dzdHIgIjxtYWxrb21wYWt0aWdvPiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMyNQorbXNnaWQgInBhc3RlIgorbXNnc3RyICJhbGdsdWkiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozNDIgZHBrZy1kZWIvZXh0cmFjdC5jOjM2MyBkcGtnLWRlYi9leHRyYWN0LmM6NDAyCisjOiBkcGtnLWRlYi9pbmZvLmM6NzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhIC5kZWIgZmlsZW5hbWUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMgYmV6b25hcyBhcmd1bWVudG9uIGt1biBkb3NpZXJub21vIC5kZWIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozNDcgZHBrZy1kZWIvZXh0cmFjdC5jOjQwNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiLS0lcyBuZWVkcyBhIHRhcmdldCBkaXJlY3RvcnkuXG4iCisiUGVyaGFwcyB5b3Ugc2hvdWxkIGJlIHVzaW5nIGRwa2cgLS1pbnN0YWxsID8iCittc2dzdHIgIiIKKyItLSVzIGJlem9uYXMgY2VsYXRhbiBkb3NpZXJ1am9uLlxuIgorIkVibGUgdmkgZGV2dXMgdXppIGRwa2cgLS1pbnN0YWxsID8iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozNTAgZHBrZy1kZWIvZXh0cmFjdC5jOjQxMAorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIHRha2VzIGF0IG1vc3QgdHdvIGFyZ3VtZW50cyAoLmRlYiBhbmQgZGlyZWN0b3J5KSIKK21zZ3N0ciAiLS0lcyBwcmVuYXMgbWFrc2ltdW1lIGR1IGFyZ3VtZW50b2puICguZGViIGthaiBkb3NpZXJ1am9uKSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjM2NQorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIHRha2VzIG9ubHkgb25lIGFyZ3VtZW50ICguZGViIGZpbGVuYW1lKSIKK21zZ3N0ciAiLS0lcyBwcmVuYXMgbnVyIHVudSBhcmd1bWVudG9uIChkb3NpZXJub21vIC5kZWIpIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6NjMKK21zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gYC8nIGZvciBjbGVhbnVwIgorbXNnc3RyICJtYWxzdWtjZXNvIGR1bSBwcm92byBhdGluZ2kgYWwgJy8nIHBvciBwdXJpZ2FkbyIKKworIzogZHBrZy1kZWIvaW5mby5jOjEwNgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiY2Fubm90IHN0YXQgZmlsZSAnJXMnIgorbXNnaWQgImNvbnRyb2wgZmlsZSAnJXMnIgorbXNnc3RyICJuZSBlYmxhcyAnc3RhdCcgZG9zaWVyb24gJyVzJyIKKworIzogZHBrZy1kZWIvaW5mby5jOjExMAorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnLWRlYjogYCUuMjU1cycgY29udGFpbnMgbm8gY29udHJvbCBjb21wb25lbnQgYCUuMjU1cydcbiIKK21zZ3N0ciAiZHBrZy1kZWI6ICclLjI1NXMnIGVuaGF2YXMgbmVuaXVuIHJlZ2FkYW4gZWxlbWVudG9uICclLjI1NXMnXG4iCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAib3BlbiBjb21wb25lbnQgYCUuMjU1cycgKGluICUuMjU1cykgZmFpbGVkIGluIGFuIHVuZXhwZWN0ZWQgd2F5IgorbXNnc3RyICJtYWxmZXJtaSBlbGVtZW50b24gJyUuMjU1cycgKGVuICUuMjU1cykgbWFsc3VrY2VzaXMgbmVhdGVuZGl0ZSIKKworIzogZHBrZy1kZWIvaW5mby5jOjEyMQorIywgYy1mb3JtYXQKK21zZ2lkICIlZCByZXF1ZXN0ZWQgY29udHJvbCBjb21wb25lbnQgaXMgbWlzc2luZyIKK21zZ2lkX3BsdXJhbCAiJWQgcmVxdWVzdGVkIGNvbnRyb2wgY29tcG9uZW50cyBhcmUgbWlzc2luZyIKK21zZ3N0clswXSAiJWQgcGV0aXRhIHJlZy1lbGVtZW50byBtYW5rYXMiCittc2dzdHJbMV0gIiVkIHBldGl0YWogcmVnLWVsZW1lbnRvaiBtYW5rYXMiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMzkgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQyNAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc2NhbiBkaXJlY3RvcnkgYCUuMjU1cyciCittc2dzdHIgIm5lIHBvdmFzIHNrYW5pIGxhIGRvc2llcnVqb24gJyUuMjU1cyciCisKKyM6IGRwa2ctZGViL2luZm8uYzoxNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHN0YXQgYCUuMjU1cycgKGluIGAlLjI1NXMnKSIKK21zZ3N0ciAibmUgZWJsYXMgbGVnaSBsYSBzdGF0b24gZGUgJyUuMjU1cycgKGVuICclLjI1NXMnKSIKKworIzogZHBrZy1kZWIvaW5mby5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgb3BlbiBgJS4yNTVzJyAoaW4gYCUuMjU1cycpIgorbXNnc3RyICJuZSBlYmxhcyBtYWxmZXJtaSAnJS4yNTVzJyAoZW4gJyUuMjU1cycpIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTY3IGRwa2ctZGViL2luZm8uYzoxODUgZHBrZy1kZWIvaW5mby5jOjE5OQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCBgJS4yNTVzJyAoaW4gYCUuMjU1cycpIgorbXNnc3RyICJtYWxzdWtjZXNvIGR1bSBsZWdvIGRlICclLjI1NXMnIChlbiAnJS4yNTVzJykiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxNzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiAlN2xkIGJ5dGVzLCAlNWQgbGluZXMgICAlYyAgJS0yMC4xMjdzICUuMTI3c1xuIgorbXNnaWQgIiAlN2pkIGJ5dGVzLCAlNWQgbGluZXMgICAlYyAgJS0yMC4xMjdzICUuMTI3c1xuIgorbXNnc3RyICIgJTdsZCBiYWp0b2osICU1ZCBsaW5pb2ogICAlYyAgJS0yMC4xMjdzICUuMTI3c1xuIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTc0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgICAgbm90IGEgcGxhaW4gZmlsZSAgICAgICAgICAlLjI1NXNcbiIKK21zZ3N0ciAiICAgICBuZSBlc3RhcyBvcmRpbmFyYSBkb3NpZXJvICAgICAgICAgICUuMjU1c1xuIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTg2Cittc2dpZCAiKG5vIGBjb250cm9sJyBmaWxlIGluIGNvbnRyb2wgYXJjaGl2ZSEpXG4iCittc2dzdHIgIihuZW5pdSBkb3NpZXJvICdjb250cm9sJyBlbiByZWdhZGEgYXJraXZvISlcbiIKKworIzogZHBrZy1kZWIvaW5mby5jOjIyMgorbXNnaWQgImNvdWxkIG5vdCBvcGVuIHRoZSBgY29udHJvbCcgY29tcG9uZW50IgorbXNnc3RyICJuZSBlYmxpcyBtYWxmZXJtaSBsYSBlbGVtZW50b24gJ2NvbnRyb2wnIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MjYxCittc2dpZCAiZmFpbGVkIGR1cmluZyByZWFkIG9mIGBjb250cm9sJyBjb21wb25lbnQiCittc2dzdHIgIm1hbHN1a2Nlc28gZHVtIGxlZ28gZGUgbGEgZWxlbWVudG8gJ2NvbnRyb2wnIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MjYzCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgdGhlICclcycgY29tcG9uZW50IgorbXNnc3RyICJlcmFybyBkdW0gZmVybW8gZGUgbGEgZWxlbWVudG8gJyVzJyIKKworIzogZHBrZy1kZWIvaW5mby5jOjI3OAorbXNnaWQgIkVycm9yIGluIGZvcm1hdCIKK21zZ3N0ciAiRXJhcm8gZW4gbGEgZm9ybW8iCisKKyM6IGRwa2ctZGViL2luZm8uYzozMjgKK21zZ2lkICItLWNvbnRlbnRzIHRha2VzIGV4YWN0bHkgb25lIGFyZ3VtZW50IgorbXNnc3RyICItLWNvbnRlbnRzIHByZW5hcyBwcmVjaXplIHVudSBhcmd1bWVudG9uIgorCisjOiBkcGtnLWRlYi9tYWluLmM6NTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuIGAlcycgcGFja2FnZSBhcmNoaXZlIGJhY2tlbmQgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiRGViaWFuYSAnJXMnIHBhay1hcmtpdmEgYmF6cHJvZ3JhbWEgdmVyc2lvICVzLlxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6NzMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJDb21tYW5kczpcbiIKKyN8ICIgIC1ifC0tYnVpbGQgPGRpcmVjdG9yeT4gWzxkZWI+XSAgIEJ1aWxkIGFuIGFyY2hpdmUuXG4iCisjfCAiICAtY3wtLWNvbnRlbnRzIDxkZWI+ICAgICAgICAgICAgICBMaXN0IGNvbnRlbnRzLlxuIgorI3wgIiAgLUl8LS1pbmZvIDxkZWI+IFs8Y2ZpbGU+IC4uLl0gICAgU2hvdyBpbmZvIHRvIHN0ZG91dC5cbiIKKyN8ICIgIC1XfC0tc2hvdyA8ZGViPiAgICAgICAgICAgICAgICAgIFNob3cgaW5mb3JtYXRpb24gb24gcGFja2FnZShzKVxuIgorI3wgIiAgLWZ8LS1maWVsZCA8ZGViPiBbPGNmaWVsZD4gLi4uXSAgU2hvdyBmaWVsZChzKSB0byBzdGRvdXQuXG4iCisjfCAiICAtZXwtLWNvbnRyb2wgPGRlYj4gWzxkaXJlY3Rvcnk+XSBFeHRyYWN0IGNvbnRyb2wgaW5mby5cbiIKKyN8ICIgIC14fC0tZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PiAgIEV4dHJhY3QgZmlsZXMuXG4iCisjfCAiICAtWHwtLXZleHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+ICBFeHRyYWN0ICYgbGlzdCBmaWxlcy5cbiIKKyN8ICIgIC0tZnN5cy10YXJmaWxlIDxkZWI+ICAgICAgICAgICAgIE91dHB1dCBmaWxlc3lzdGVtIHRhcmZpbGUuXG4iCisjfCAiXG4iCittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLWJ8LS1idWlsZCA8ZGlyZWN0b3J5PiBbPGRlYj5dICAgQnVpbGQgYW4gYXJjaGl2ZS5cbiIKKyIgIC1jfC0tY29udGVudHMgPGRlYj4gICAgICAgICAgICAgIExpc3QgY29udGVudHMuXG4iCisiICAtSXwtLWluZm8gPGRlYj4gWzxjZmlsZT4gLi4uXSAgICBTaG93IGluZm8gdG8gc3Rkb3V0LlxuIgorIiAgLVd8LS1zaG93IDxkZWI+ICAgICAgICAgICAgICAgICAgU2hvdyBpbmZvcm1hdGlvbiBvbiBwYWNrYWdlKHMpXG4iCisiICAtZnwtLWZpZWxkIDxkZWI+IFs8Y2ZpZWxkPiAuLi5dICBTaG93IGZpZWxkKHMpIHRvIHN0ZG91dC5cbiIKKyIgIC1lfC0tY29udHJvbCA8ZGViPiBbPGRpcmVjdG9yeT5dIEV4dHJhY3QgY29udHJvbCBpbmZvLlxuIgorIiAgLXh8LS1leHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+ICAgRXh0cmFjdCBmaWxlcy5cbiIKKyIgIC1YfC0tdmV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gIEV4dHJhY3QgJiBsaXN0IGZpbGVzLlxuIgorIiAgLVJ8LS1yYXctZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRXh0cmFjdCBjb250cm9sIGluZm8gYW5kIGZpbGVzLlxuIgorIiAgLS1mc3lzLXRhcmZpbGUgPGRlYj4gICAgICAgICAgICAgT3V0cHV0IGZpbGVzeXN0ZW0gdGFyZmlsZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIktvbWFuZG9qOlxuIgorIiAgLWJ8LS1idWlsZCA8ZG9zaWVydWpvPiBbPGRlYj5dICAgIEtvbnN0cnVpIGFya2l2b24uXG4iCisiICAtY3wtLWNvbnRlbnRzIDxkZWI+ICAgICAgICAgICAgICAgTGlzdGlnaSBlbmhhdm9uLlxuIgorIiAgLUl8LS1pbmZvIDxkZWI+IFs8Yy1kb3NpZXJvPiAuLi5dIE1vbnRyaWdpIGluZm9ybW9uIHBlciBzdGRvdXQuXG4iCisiICAtV3wtLXNob3cgPGRlYj4gICAgICAgICAgICAgICAgICAgTW9udHJpZ2kgaW5mb3Jtb24gcHJpIHBha28oailcbiIKKyIgIC1mfC0tZmllbGQgPGRlYj4gWzxjLWthbXBvPiAuLi5dICBNb250cmlnaSBrYW1wbyhqKW4gcGVyIHN0ZG91dC5cbiIKKyIgIC1lfC0tY29udHJvbCA8ZGViPiBbPGRvc2llcnVqbz5dICBFbHBha2kgcmVnLWluZm9ybW9uLlxuIgorIiAgLXh8LS1leHRyYWN0IDxkZWI+IDxkb3NpZXJ1am8+ICAgIEVscGFraSBkb3NpZXJvam4uXG4iCisiICAtWHwtLXZleHRyYWN0IDxkZWI+IDxkb3NpZXJ1am8+ICAgRWxwYWtpIGthaiBsaXN0aWdpIGRvc2llcm9qbi5cbiIKKyIgIC0tZnN5cy10YXJmaWxlIDxkZWI+ICAgICAgICAgICAgICBFbGlnaSBkb3NpZXJzaXN0ZW1hbiB0YXItZG9zaWVyb24uXG4iCisiXG4iCisKKyM6IGRwa2ctZGViL21haW4uYzo5MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiPGRlYj4gaXMgdGhlIGZpbGVuYW1lIG9mIGEgRGViaWFuIGZvcm1hdCBhcmNoaXZlLlxuIgorIjxjZmlsZT4gaXMgdGhlIG5hbWUgb2YgYW4gYWRtaW5pc3RyYXRpdmUgZmlsZSBjb21wb25lbnQuXG4iCisiPGNmaWVsZD4gaXMgdGhlIG5hbWUgb2YgYSBmaWVsZCBpbiB0aGUgbWFpbiBgY29udHJvbCcgZmlsZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIjxkZWI+IGVzdGFzIGxhIGRvc2llcm5vbW8gZGUgRGViaWFuLWZvcm1hIGFya2l2by5cbiIKKyI8Yy1kb3NpZXJvPiBlc3RhcyBsYSBub21vIGRlIGFkbWluaXN0cmEgZG9zaWVyLWVsZW1lbnRvLlxuIgorIjxjZmllbGQ+IGVzdGFzIGxhIG5vbW8gZGUga2FtcG8gZW4gbGEgxIllZmEgZG9zaWVybyAnY29udHJvbCcuXG4iCisiXG4iCisKKyM6IGRwa2ctZGViL21haW4uYzo5OQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIk9wdGlvbnM6XG4iCisjfCAiICAtLXNob3dmb3JtYXQ9PGZvcm1hdD4gICAgICAgICAgICBVc2UgYWx0ZXJuYXRpdmUgZm9ybWF0IGZvciAtLXNob3cuXG4iCisjfCAiICAtRCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbmFibGUgZGVidWdnaW5nIG91dHB1dC5cbiIKKyN8ICIgIC0tb2xkLCAtLW5ldyAgICAgICAgICAgICAgICAgICAgIFNlbGVjdCBhcmNoaXZlIGZvcm1hdC5cbiIKKyN8ICIgIC0tbm9jaGVjayAgICAgICAgICAgICAgICAgICAgICAgIFN1cHByZXNzIGNvbnRyb2wgZmlsZSBjaGVjayAoYnVpbGQgIgorI3wgImJhZFxuIgorI3wgIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWNrYWdlcykuXG4iCisjfCAiICAteiMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTZXQgdGhlIGNvbXByZXNzaW9uIGxldmVsIHdoZW4gIgorI3wgImJ1aWxkaW5nLlxuIgorI3wgIiAgLVo8dHlwZT4gICAgICAgICAgICAgICAgICAgICAgICAgU2V0IHRoZSBjb21wcmVzc2lvbiB0eXBlIHVzZWQgd2hlbiAiCisjfCAiYnVpbGRpbmcuXG4iCisjfCAiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFsbG93ZWQgdHlwZXM6IGd6aXAsIHh6LCBiemlwMiwgIgorI3wgImx6bWEsIG5vbmUuXG4iCisjfCAiXG4iCittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLXNob3dmb3JtYXQ9PGZvcm1hdD4gICAgICAgICAgICBVc2UgYWx0ZXJuYXRpdmUgZm9ybWF0IGZvciAtLXNob3cuXG4iCisiICAtdiwgLS12ZXJib3NlICAgICAgICAgICAgICAgICAgICBFbmFibGUgdmVyYm9zZSBvdXRwdXQuXG4iCisiICAtRCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbmFibGUgZGVidWdnaW5nIG91dHB1dC5cbiIKKyIgIC0tb2xkLCAtLW5ldyAgICAgICAgICAgICAgICAgICAgIFNlbGVjdCBhcmNoaXZlIGZvcm1hdC5cbiIKKyIgIC0tbm9jaGVjayAgICAgICAgICAgICAgICAgICAgICAgIFN1cHByZXNzIGNvbnRyb2wgZmlsZSBjaGVjayAoYnVpbGQgYmFkXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhY2thZ2VzKS5cbiIKKyIgIC16IyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNldCB0aGUgY29tcHJlc3Npb24gbGV2ZWwgd2hlbiBidWlsZGluZy5cbiIKKyIgIC1aPHR5cGU+ICAgICAgICAgICAgICAgICAgICAgICAgIFNldCB0aGUgY29tcHJlc3Npb24gdHlwZSB1c2VkIHdoZW4gIgorImJ1aWxkaW5nLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBbGxvd2VkIHR5cGVzOiBnemlwLCB4eiwgYnppcDIsIGx6bWEsICIKKyJub25lLlxuIgorIlxuIgorbXNnc3RyICIiCisiRWxla3RlYmxvajpcbiIKKyIgIC0tc2hvd2Zvcm1hdD08Zm9ybW8+ICAgICAgICAgICAgIFV6aSBhbHRlcm5hdGl2YW4gZm9ybW9uIHBvciAtLXNob3cuXG4iCisiICAtRCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFYmxpZ2kgc2VuZXJhcmlnYW4gZWxpZ29uLlxuIgorIiAgLS1vbGQsIC0tbmV3ICAgICAgICAgICAgICAgICAgICAgRWxla3RpIGFya2l2by1mb3Jtb24uXG4iCisiICAtLW5vY2hlY2sgICAgICAgICAgICAgICAgICAgICAgICBNYWxhcGVyaWdpIGtvbnRyb2xvbiBwcmkgcmVnLWRvc2llcm9cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGtvbnN0cnVpIG1hbGJvbmFqbiBwYWtvam4pLlxuIgorIiAgLXojICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWt0aXZpZ2kgbGEga29tcGFrdGlnLW5pdmVsb24gZHVtICIKKyJrb25zdHJ1by5cbiIKKyIgIC1aPHR5cGU+ICAgICAgICAgICAgICAgICAgICAgICAgIERpZmluaSBsYSBrb21wYWt0aWctdGlwb24gdXphdGFuIGR1bSAiCisia29uc3RydW8uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBlcm1lc2F0YWogdmFsb3JvajogZ3ppcCwgYnppcDIsIGx6bWEsICIKKyJub25lLlxuIgorIlxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTIxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJVc2UgYGRwa2cnIHRvIGluc3RhbGwgYW5kIHJlbW92ZSBwYWNrYWdlcyBmcm9tIHlvdXIgc3lzdGVtLCBvclxuIgorImBkc2VsZWN0JyBvciBgYXB0aXR1ZGUnIGZvciB1c2VyLWZyaWVuZGx5IHBhY2thZ2UgbWFuYWdlbWVudC4gIFBhY2thZ2VzXG4iCisidW5wYWNrZWQgdXNpbmcgYGRwa2ctZGViIC0tZXh0cmFjdCcgd2lsbCBiZSBpbmNvcnJlY3RseSBpbnN0YWxsZWQgIVxuIgorbXNnc3RyICIiCisiXG4iCisiVXp1IGBkcGtnJyBwb3IgaW5zdGFsaSBrYWogZm9yaWdpIHBha29qbiBlbCB2aWEgc2lzdGVtbywgYcWtXG4iCisiJ2RzZWxlY3QnIGHFrSAnYXB0aXR1ZGUnIHBvciB1emFudC1mYWNpbGlnYSBwYWstYWRtaW5pc3RyYWRvLiBQYWtvalxuIgorImVscGFraXRhaiB1emFudGUgJ2Rwa2ctZGViIC0tZXh0cmFjdCcgZXN0b3MgbWFsa29yZWt0ZSBpbnN0YWxpdGFqICFcbiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjEzMgorbXNnaWQgIiIKKyJUeXBlIGRwa2ctZGViIC0taGVscCBmb3IgaGVscCBhYm91dCBtYW5pcHVsYXRpbmcgKi5kZWIgZmlsZXM7XG4iCisiVHlwZSBkcGtnIC0taGVscCBmb3IgaGVscCBhYm91dCBpbnN0YWxsaW5nIGFuZCBkZWluc3RhbGxpbmcgcGFja2FnZXMuIgorbXNnc3RyICIiCisiVGFqcHUgZHBrZy1kZWIgLS1oZWxwIHBvciBoZWxwbyBwcmkgdHJha3RhZG8gZGUgZG9zaWVyb2ogKi5kZWI7XG4iCisiVGFqcHUgZHBrZyAtLWhlbHAgcG9yIGhlbHBvIHByaSBpbnN0YWxvIGthaiBtYWxpbnN0YWxvIGRlIHBha29qLiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjE0OAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGludGVnZXIgZm9yIC0lYzogJyUuMjUwcyciCittc2dzdHIgIm1hbHZhbGlkYSBlbnRqZXJvIHBvciAtJWM6ICclLjI1MHMnIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTUxCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgY29tcHJlc3Npb24gbGV2ZWwgZm9yIC0lYzogJWxkJyIKK21zZ3N0ciAibWFsdmFsaWRhIGtvbXBha3RpZy1uaXZlbG8gcG9yIC0lYzogJWxkJyIKKworIzogZHBrZy1kZWIvbWFpbi5jOjE2MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGNvbXByZXNzaW9uIHR5cGUgYCVzJyEiCittc2dzdHIgIm5la29uYXRhIGtvbXBha3RpZy10aXBvICclcychIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzo1MgorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgZGlnaXQgKGNvZGUgJWQpIGluICVzIgorbXNnc3RyICJsYSBkb3NpZXJvICclLjI1MHMnIGVzdGFzIGRpc3JvbXBpdGEgLSBtYWzEnXVzdGEgY2lmZXJvIChrb2RvICVkKSBlbiAlcyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gJS4yNTBzIG1pc3NpbmciCittc2dzdHIgImxhIGRvc2llcm8gJyUuMjUwcycgZXN0YXMgbWlzcm9tcGl0YSAtICUuMjUwcyBtYW5rYXMiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjYzCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIG1pc3NpbmcgbmV3bGluZSBhZnRlciAlLjI1MHMiCittc2dzdHIgImxhIGRvc2llcm8gJyUuMjUwcycgZXN0YXMgbWlzcm9tcGl0YSAtIG1hbmthcyBub3ZsaW5pb24gcG9zdCAlLjI1MHMiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjg5IGRwa2ctc3BsaXQvbWFpbi5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciByZWFkaW5nICUuMjUwcyIKK21zZ3N0ciAiZXJhcm8gZHVtIGxlZ2FkbyBkZSAlLjI1MHMiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEwMworIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgbWFnaWMgYXQgZW5kIG9mIGZpcnN0IGhlYWRlciIKK21zZ3N0ciAiIgorImxhIGRvc2llcm8gJyUuMjUwcycgZXN0YXMgZGlzcm9tcGl0YSAtIG1hbMSddXN0YSBtYWdpYcS1byDEiWUgZmlubyBkZSBsYSB1bnVhICIKKyJkYXR1bWthcG8iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjExMworIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgcGFkZGluZyBjaGFyYWN0ZXIgKGNvZGUgJWQpIgorbXNnc3RyICJsYSBkb3NpZXJvICclLjI1MHMnIGVzdGFzIG1pc3JvbXBpdGEgLSBtYWzEnXVzdGEgxZ10b3BzaWdubyAoa29kbyAlZCkiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjExNworIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBudWxscyBpbiBpbmZvIHNlY3Rpb24iCittc2dzdHIgImxhIGRvc2llcm8gJyUuMjUwcycgZXN0YXMgbWlzcm9tcGl0YSAtIG51bG9qIGVuIGluZm9ybW8tc2VrY2lvIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMjIKK21zZ2lkICJmb3JtYXQgdmVyc2lvbiBudW1iZXIiCittc2dzdHIgInZlcnNpLW51bWVybyBkZSBmb3JtbyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgZm9ybWF0IHZlcnNpb24gYCUuMjUwcycgLSB5b3UgbmVlZCBhIG5ld2VyIGRwa2ctc3BsaXQiCittc2dzdHIgIiIKKyJsYSBkb3NpZXJvICclLjI1MHMnIGhhdmFzIGZvcm1vLXZlcnNpb24gJyUuMjUwcycgLSB2aSBiZXpvbmFzIHBsaSBub3ZhbiBkcGtnLSIKKyJzcGxpdCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTI3Cittc2dpZCAicGFja2FnZSBuYW1lIgorbXNnc3RyICJwYWstbm9tbyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTI4Cittc2dpZCAicGFja2FnZSB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAidmVyc2ktbnVtZXJvIGRlIHBha28iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyOQorbXNnaWQgInBhY2thZ2UgZmlsZSBNRDUgY2hlY2tzdW0iCittc2dzdHIgInBhay1kb3NpZXJhIGtvbnRyb2xzdW1vIE1ENSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTMyCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBNRDUgY2hlY2tzdW0gYCUuMjUwcyciCittc2dzdHIgImxhIGRvc2llcm8gJyUuMjUwcycgZXN0YXMgbWlzcm9tcGl0YSAtIG1hbMSddXN0YSBrb250cm9sc3VtbyAnJS4yNTBzJyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTM0IGRwa2ctc3BsaXQvaW5mby5jOjEzNQorbXNnaWQgImFyY2hpdmUgdG90YWwgc2l6ZSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMzYgZHBrZy1zcGxpdC9pbmZvLmM6MTM3CisjLCBmdXp6eQorI3wgbXNnaWQgInBhcnQgb2Zmc2V0IgorbXNnaWQgImFyY2hpdmUgcGFydCBvZmZzZXQiCittc2dzdHIgInBhcnQtZGXFnW92byIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTM5CisjLCBmdXp6eQorI3wgbXNnaWQgInBhcnQgbnVtYmVycyIKK21zZ2lkICJhcmNoaXZlIHBhcnQgbnVtYmVycyIKK21zZ3N0ciAicGFydC1udW1lcm9qIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIG5vIHNsYXNoIGJldHdlZW4gcGFydCBudW1iZXJzIgorbXNnaWQgImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIG5vIHNsYXNoIGJldHdlZW4gYXJjaGl2ZSBwYXJ0IG51bWJlcnMiCittc2dzdHIgIiIKKyJsYSBkb3NpZXJvICclLjI1MHMnIGVzdGFzIG1pc3JvbXBpdGEgLSBuZW5pdSBvYmxpa3ZvIGludGVyIHBhcnQtbnVtZXJvaiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTQ1CisjLCBmdXp6eQorI3wgbXNnaWQgIm51bWJlciBvZiBwYXJ0cyIKK21zZ2lkICJudW1iZXIgb2YgYXJjaGl2ZSBwYXJ0cyIKK21zZ3N0ciAibm9tYnJvIGRhIHBhcnRvaiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTQ3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgbnVtYmVyIG9mIHBhcnRzIgorbXNnaWQgImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBudW1iZXIgb2YgYXJjaGl2ZSBwYXJ0cyIKK21zZ3N0ciAibGEgZG9zaWVybyAnJS4yNTBzJyBlc3RhcyBtaXNyb21waXRhIC0gbmVuaXUgbm9tYnJvIGRhIHBhcnRvaiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTQ5CisjLCBmdXp6eQorI3wgbXNnaWQgInBhcnRzIG51bWJlciIKK21zZ2lkICJhcmNoaXZlIHBhcnRzIG51bWJlciIKK21zZ3N0ciAibnVtZXJvIGRlIHBhcnRvaiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTUxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgcGFydCBudW1iZXIiCittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIGFyY2hpdmUgcGFydCBudW1iZXIiCittc2dzdHIgImxhIGRvc2llcm8gJyUuMjUwcycgZXN0YXMgbWlzcm9tcGl0YSAtIG5lbml1IHBhcnQtbnVtZXJvIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNTcKKyMsIGZ1enp5CisjfCBtc2dpZCAicGFja2FnZSBuYW1lIgorbXNnaWQgInBhY2thZ2UgYXJjaGl0ZWN0dXJlIgorbXNnc3RyICJwYWstbm9tbyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTY2CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBtYWdpYyBhdCBlbmQgb2Ygc2Vjb25kIGhlYWRlciIKK21zZ3N0ciAiIgorImxhIGRvc2llcm8gJyUuMjUwcycgZXN0YXMgbWlzcm9tcGl0YSAtIG1hbMSddXN0YSBtYWdpYcS1byDEiWUgZmlubyBkZSBkdWEgIgorImRhdHVta2FwbyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTY4CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIHNlY29uZCBtZW1iZXIgaXMgbm90IGRhdGEgbWVtYmVyIgorbXNnc3RyICIiCisibGEgZG9zaWVybyAnJS4yNTBzJyBlc3RhcyBtaXNyb21waXRhIC0gZHVhIGFubyBuZSBlc3RhcyBhbm8gZGUgZGF0dW1hcm8iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE3NAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSB3cm9uZyBudW1iZXIgb2YgcGFydHMgZm9yIHF1b3RlZCBzaXplcyIKK21zZ3N0ciAiIgorImxhIGRvc2llcm8gJyUuMjUwcycgZXN0YXMgbWlzcm9tcGl0YSAtIG1hbGtvcmVrdGEgbm9tYnJvIGRhIHBhcnRvaiBwb3IgIgorImxpbWlnaXRhaiBncmFuZGVjb2oiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE3OAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBzaXplIGlzIHdyb25nIGZvciBxdW90ZWQgcGFydCBudW1iZXIiCittc2dzdHIgIiIKKyJsYSBkb3NpZXJvICclLjI1MHMnIGVzdGFzIG1pc3JvbXBpdGEgLSBncmFuZGVjbyBlc3RhcyBtYWxrb3Jla3RhIHBvciAiCisibGltaWdpdGEgcGFydC1udW1lcm8iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE4NAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZnN0YXQgcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJtYWxlYmxhcyBsZWdpIHN0YXRvbiBkZSBsYSBwYXJ0LWRvc2llcm8gJyUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE4OQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSB0b28gc2hvcnQiCittc2dzdHIgImxhIGRvc2llcm8gJyUuMjUwcycgZXN0YXMgbWlzcm9tcGl0YSAtIHRybyBtYWxncmFuZGEiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjIwMiBkcGtnLXNwbGl0L2luZm8uYzoyNDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IG9wZW4gYXJjaGl2ZSBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5lIGVibGFzIG1hbGZlcm1pIGxhIGFya2l2LXBhcnRhbiBkb3NpZXJvbiAnJS4yNTBzJyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjA0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgbm90IGFuIGFyY2hpdmUgcGFydCIKK21zZ3N0ciAibGEgZG9zaWVybyAnJS4yNTBzJyBuZSBlc3RhcyBhcmtpdi1wYXJ0byIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjA5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiJXM6XG4iCisjfCAiICAgIFBhcnQgZm9ybWF0IHZlcnNpb246ICAgICAgICAgICAgJXNcbiIKKyN8ICIgICAgUGFydCBvZiBwYWNrYWdlOiAgICAgICAgICAgICAgICAlc1xuIgorI3wgIiAgICAgICAgLi4uIHZlcnNpb246ICAgICAgICAgICAgICAgICVzXG4iCisjfCAiICAgICAgICAuLi4gTUQ1IGNoZWNrc3VtOiAgICAgICAgICAgJXNcbiIKKyN8ICIgICAgICAgIC4uLiBsZW5ndGg6ICAgICAgICAgICAgICAgICAlbHUgYnl0ZXNcbiIKKyN8ICIgICAgICAgIC4uLiBzcGxpdCBldmVyeTogICAgICAgICAgICAlbHUgYnl0ZXNcbiIKKyN8ICIgICAgUGFydCBudW1iZXI6ICAgICAgICAgICAgICAgICAgICAlZC8lZFxuIgorI3wgIiAgICBQYXJ0IGxlbmd0aDogICAgICAgICAgICAgICAgICAgICV6aSBieXRlc1xuIgorI3wgIiAgICBQYXJ0IG9mZnNldDogICAgICAgICAgICAgICAgICAgICVsdSBieXRlc1xuIgorI3wgIiAgICBQYXJ0IGZpbGUgc2l6ZSAodXNlZCBwb3J0aW9uKTogICVsdSBieXRlc1xuIgorI3wgIlxuIgorbXNnaWQgIiIKKyIlczpcbiIKKyIgICAgUGFydCBmb3JtYXQgdmVyc2lvbjogICAgICAgICAgICAlc1xuIgorIiAgICBQYXJ0IG9mIHBhY2thZ2U6ICAgICAgICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gdmVyc2lvbjogICAgICAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiBhcmNoaXRlY3R1cmU6ICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIE1ENSBjaGVja3N1bTogICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gbGVuZ3RoOiAgICAgICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgICAgICAuLi4gc3BsaXQgZXZlcnk6ICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgIFBhcnQgbnVtYmVyOiAgICAgICAgICAgICAgICAgICAgJWQvJWRcbiIKKyIgICAgUGFydCBsZW5ndGg6ICAgICAgICAgICAgICAgICAgICAlamQgYnl0ZXNcbiIKKyIgICAgUGFydCBvZmZzZXQ6ICAgICAgICAgICAgICAgICAgICAlamQgYnl0ZXNcbiIKKyIgICAgUGFydCBmaWxlIHNpemUgKHVzZWQgcG9ydGlvbik6ICAlamQgYnl0ZXNcbiIKKyJcbiIKK21zZ3N0ciAiIgorIiVzOlxuIgorIiAgICBQYXJ0LWZvcm1hIHZlcnNpbzogICAgICAgICAgICAgICVzXG4iCisiICAgIFBhcnRvIGRlIHBha286ICAgICAgICAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiB2ZXJzaW86ICAgICAgICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIGtvbnRyb2xzdW1vIE1ENTogICAgICAgICVzXG4iCisiICAgICAgICAuLi4gbG9uZ2VjbzogICAgICAgICAgICAgICAgJWx1IGJhanRvalxuIgorIiAgICAgICAgLi4uIGRpc2lnaSBqZSDEiWl1OiAgICAgICAgICAlbHUgYmFqdG9qXG4iCisiICAgIFBhcnQtbnVtZXJvOiAgICAgICAgICAgICAgICAgICAgJWQvJWRcbiIKKyIgICAgUGFydC1sb25nZWNvOiAgICAgICAgICAgICAgICAgICAlemkgYmFqdG9qXG4iCisiICAgIFBhcnQtZGXFnW92bzogICAgICAgICAgICAgICAgICAgICVsdSBiYWp0b2pcbiIKKyIgICAgUGFydC1kb3NpZXJhIGdyYW5kZWNvICh1emF0ZSk6ICAlbHUgYmFqdG9qXG4iCisiXG4iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjIyNQorIywgZnV6enkKKyN8IG1zZ2lkICI8dW5rbm93bj4iCittc2djdHh0ICJhcmNoaXRlY3R1cmUiCittc2dpZCAiPHVua25vd24+IgorbXNnc3RyICI8bmVrb25hdGU+IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyNDQgZHBrZy1zcGxpdC9qb2luLmM6MTA1CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgcmVxdWlyZXMgb25lIG9yIG1vcmUgcGFydCBmaWxlIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS0lcyBwb3N0dWxhcyB1bnUgYcWtwqBwbGkgcGFydC1kb3NpZXJham4gYXJndW1lbnRvam4iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjI1NQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlcycgaXMgbm90IGFuIGFyY2hpdmUgcGFydFxuIgorbXNnc3RyICJsYSBkb3NpZXJvICclcycgbmUgZXN0YXMgYXJraXYtcGFydG9cbiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHV0dGluZyBwYWNrYWdlICVzIHRvZ2V0aGVyIGZyb20gJWQgcGFydDogIgorbXNnaWRfcGx1cmFsICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0czogIgorbXNnc3RyWzBdICJLdW5tZXRhZG8gZGUgbGEgcGFrbyAlcyBlbCAlZCBwYXJ0bzogIgorbXNnc3RyWzFdICJLdW5tZXRhZG8gZGUgbGEgcGFrbyAlcyBlbCAlZCBwYXJ0b2o6ICIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gb3V0cHV0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm1hbGVibGFzIG1hbGZlcm1pIGxhIGVsaWctZG9zaWVyb24gJyUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjU3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byAocmUpb3BlbiBpbnB1dCBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm1hbGVibGFzIChyZSltYWxmZXJtaSBsYSBlbmlnYW4gcGFydC1kb3NpZXJvbiAnJS4yNTBzJyIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NTgKKyMsIGZ1enp5CisjfCBtc2dpZCAiU2tpcHBpbmcgZGVzZWxlY3RlZCBwYWNrYWdlICVzLlxuIgorbXNnaWQgInNraXBwaW5nIHNwbGl0IHBhY2thZ2UgaGVhZGVyIgorbXNnc3RyICJOaSBwcmV0ZXJwYXNhcyBtYWxlbGVrdGl0YW4gcGFrb24gJXMuXG4iCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjU5CisjLCBmdXp6eQorI3wgbXNnaWQgIlB1dHRpbmcgcGFja2FnZSAlcyB0b2dldGhlciBmcm9tICVkIHBhcnQ6ICIKKyN8IG1zZ2lkX3BsdXJhbCAiUHV0dGluZyBwYWNrYWdlICVzIHRvZ2V0aGVyIGZyb20gJWQgcGFydHM6ICIKK21zZ2lkICJzcGxpdCBwYWNrYWdlIHBhcnQiCittc2dzdHIgIkt1bm1ldGFkbyBkZSBsYSBwYWtvICVzIGVsICVkIHBhcnRvOiAiCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjY5IGRwa2ctc3BsaXQvc3BsaXQuYzoyMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZG9uZVxuIgorbXNnc3RyICJmYXJpdGVcbiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZXMgYCUuMjUwcycgYW5kIGAlLjI1MHMnIGFyZSBub3QgcGFydHMgb2YgdGhlIHNhbWUgZmlsZSIKK21zZ3N0ciAibGEgZG9zaWVyb2ogJyUuMjUwcycga2FqICclLjI1MHMnIG5lIGVzdGFzIHBhcnRvaiBkZSBsYSBzYW1hIGRvc2llcm8iCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjkwCisjLCBjLWZvcm1hdAorbXNnaWQgInRoZXJlIGFyZSBzZXZlcmFsIHZlcnNpb25zIG9mIHBhcnQgJWQgLSBhdCBsZWFzdCBgJS4yNTBzJyBhbmQgYCUuMjUwcyciCittc2dzdHIgIiIKKyJla3ppc3RhcyBkaXZlcnNhaiB2ZXJzaW9qIGVsIGxhIHBhcnRvICVkIC0gbWluaW11bWUgJyUuMjUwcycga2FqICclLjI1MHMnIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzoxMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFydCAlZCBpcyBtaXNzaW5nIgorbXNnc3RyICJtYW5rYXMgbGEgcGFydG8gJWQiCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjQ3CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiBgJXMnIHBhY2thZ2Ugc3BsaXQvam9pbiB0b29sOyB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICJEZWJpYW5hIHBha28gJyVzJyBkaXNpZy9rdW5tZXRpZ2EgaWxvOyB2ZXJzaW8gJXMuXG4iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIkNvcHlyaWdodCAoQykgMTk5NC0xOTk2IElhbiBKYWNrc29uLlxuIgorbXNnc3RyICJLb3BpcmFqdG8gKEMpIDE5OTQtMTk5NiBJYW4gSmFja3Nvbi5cbiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6NjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLXN8LS1zcGxpdCA8ZmlsZT4gWzxwcmVmaXg+XSAgICAgU3BsaXQgYW4gYXJjaGl2ZS5cbiIKKyIgIC1qfC0tam9pbiA8cGFydD4gPHBhcnQ+IC4uLiAgICAgIEpvaW4gcGFydHMgdG9nZXRoZXIuXG4iCisiICAtSXwtLWluZm8gPHBhcnQ+IC4uLiAgICAgICAgICAgICBEaXNwbGF5IGluZm8gYWJvdXQgYSBwYXJ0LlxuIgorIiAgLWF8LS1hdXRvIC1vIDxjb21wbGV0ZT4gPHBhcnQ+ICAgQXV0by1hY2N1bXVsYXRlIHBhcnRzLlxuIgorIiAgLWx8LS1saXN0cSAgICAgICAgICAgICAgICAgICAgICAgTGlzdCB1bm1hdGNoZWQgcGllY2VzLlxuIgorIiAgLWR8LS1kaXNjYXJkIFs8ZmlsZW5hbWU+IC4uLl0gICAgRGlzY2FyZCB1bm1hdGNoZWQgcGllY2VzLlxuIgorIlxuIgorbXNnc3RyICIiCisiS29tYW5kb2o6XG4iCisiICAtc3wtLXNwbGl0IDxkb3NpZXJvPiBbPHByZWZpa3NvPl0gRGlzaWdpIGFya2l2b24uXG4iCisiICAtanwtLWpvaW4gPHBhcnRvPiA8cGFydG8+IC4uLiAgICAgS3VubWV0aSBwYXJ0b2puLlxuIgorIiAgLUl8LS1pbmZvIDxwYXJ0bz4gLi4uICAgICAgICAgICAgIE1vbnRyaWdpIGluZm9ybW9uIHByaSBwYXJ0by5cbiIKKyIgIC1hfC0tYXV0byAtbyA8a29tcGxldGlnaT4gPHBhcnRvPiBBxa10b21hdGUgYWt1bXVsaSBwYXJ0b2puLlxuIgorIiAgLWx8LS1saXN0cSAgICAgICAgICAgICAgICAgICAgICAgIExpc3RpZ2kgbWFsa29uZ3J1aW50YWpuIHBlY29qbi5cbiIKKyIgIC1kfC0tZGlzY2FyZCBbPGRvc2llcm5vbW8+IC4uLl0gICBGb3JsYXNpIG1hbGtvbmdydWludGFqbiBwZWNvam4uXG4iCisiXG4iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjgyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiT3B0aW9uczpcbiIKKyN8ICIgIC0tZGVwb3RkaXIgPGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLyVzLlxuIgorI3wgIiAgLVN8LS1wYXJ0c2l6ZSA8c2l6ZT4gICAgICAgICAgICAgSW4gS2lCLCBmb3IgLXMgKGRlZmF1bHQgaXMgNDUwKS5cbiIKKyN8ICIgIC1vfC0tb3V0cHV0IDxmaWxlPiAgICAgICAgICAgICAgIEZvciAtaiAoZGVmYXVsdCBpcyA8cGFja2FnZT4tPHZlcnNpb24+LiIKKyN8ICJkZWIpLlxuIgorI3wgIiAgLVF8LS1ucHF1aWV0ICAgICAgICAgICAgICAgICAgICAgQmUgcXVpZXQgd2hlbiAtYSBpcyBub3QgYSBwYXJ0LlxuIgorI3wgIiAgLS1tc2RvcyAgICAgICAgICAgICAgICAgICAgICAgICAgR2VuZXJhdGUgOC4zIGZpbGVuYW1lcy5cbiIKKyN8ICJcbiIKKyN8ICJFeGl0IHN0YXR1czogMCA9IE9LOyAgMSA9IC1hIGlzIG5vdCBhIHBhcnQ7ICAyID0gdHJvdWJsZSFcbiIKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tZGVwb3RkaXIgPGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLyVzLlxuIgorIiAgLVN8LS1wYXJ0c2l6ZSA8c2l6ZT4gICAgICAgICAgICAgSW4gS2lCLCBmb3IgLXMgKGRlZmF1bHQgaXMgNDUwKS5cbiIKKyIgIC1vfC0tb3V0cHV0IDxmaWxlPiAgICAgICAgICAgICAgIEZpbGVuYW1lLCBmb3IgLWogKGRlZmF1bHQgaXNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhY2thZ2U+Xzx2ZXJzaW9uPl88YXJjaD4uZGViKS5cbiIKKyIgIC1RfC0tbnBxdWlldCAgICAgICAgICAgICAgICAgICAgIEJlIHF1aWV0IHdoZW4gLWEgaXMgbm90IGEgcGFydC5cbiIKKyIgIC0tbXNkb3MgICAgICAgICAgICAgICAgICAgICAgICAgIEdlbmVyYXRlIDguMyBmaWxlbmFtZXMuXG4iCisiXG4iCittc2dzdHIgIiIKKyJFbGVrdGVibG9qOlxuIgorIiAgLS1kZXBvdGRpciA8ZG9zaWVydWpvPiAgICAgICAgICAgVXppIDxkb3NpZXJvbj4gYW5zdGF0YcWtICVzLyVzLlxuIgorIiAgLVN8LS1wYXJ0c2l6ZSA8Z3JhbmRlY28+ICAgICAgICAgTGHFrSBLaUIsIHBvciAtcyAoYXByaW9yZSA0NTApLlxuIgorIiAgLW98LS1vdXRwdXQgPGRvc2llcm8+ICAgICAgICAgICAgUG9yIC1qIChhcHJpb3JlIGVzdGFzIDxwYWtvPi08dmVyc2lvPi4iCisiZGViKS5cbiIKKyIgIC1RfC0tbnBxdWlldCAgICAgICAgICAgICAgICAgICAgIFNpbGVudHUga2lhbSAtYSBuZSBlc3RhcyBwYXJ0by5cbiIKKyIgIC0tbXNkb3MgICAgICAgICAgICAgICAgICAgICAgICAgIEdlbmVyaSBkb3NpZXJub21vam4gbGHFrcKgbGEgZm9ybW8gOC4zLlxuIgorIlxuIgorIkVsaXItc3RhdG86IDAgPSBCb25lOyAgMSA9IC1hIG5lIGVzdGFzIHBhcnRvOyAgMiA9IHByb2JsZW1vIVxuIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo5MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiRXhpdCBzdGF0dXM6XG4iCisiICAwID0gb2tcbiIKKyIgIDEgPSB3aXRoIC0tYXV0bywgZmlsZSBpcyBub3QgYSBwYXJ0XG4iCisiICAyID0gdHJvdWJsZVxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjEwMworbXNnaWQgIlR5cGUgZHBrZy1zcGxpdCAtLWhlbHAgZm9yIGhlbHAuIgorbXNnc3RyICJUYWpwdSBkcGtnLXNwbGl0IC0taGVscCBwb3IgaGVscG8uIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgZmlsZSBpbiAlLjI1MHMiCittc2dzdHIgIm5lYXRlbmRpdGEgZG9zaWVyZmlubyBlbiAlLjI1MHMiCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjEyNgorbXNnaWQgInBhcnQgc2l6ZSBpcyBmYXIgdG9vIGxhcmdlIG9yIGlzIG5vdCBwb3NpdGl2ZSIKK21zZ3N0ciAicGFydC1ncmFuZGVjbyBlc3RhcyB0cm8gZ3JhbmRhIGHFrcKgxJ1pIG5lIGVzdGFzIHBveml0aXZhIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMzAKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFydCBzaXplIG11c3QgYmUgYXQgbGVhc3QgJWQgS2lCICh0byBhbGxvdyBmb3IgaGVhZGVyKSIKK21zZ3N0ciAicGFydG8tZ3JhbmRlY28gZGV2YXMgZXN0aSBtaW5pbXVtZSAlZCBLaUIgKHBvciBlYmxpZ2kgZGF0dW1rYXBvbikiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzo5MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBkZXBvdCBkaXJlY3RvcnkgYCUuMjUwcyciCittc2dzdHIgIm1hbGVibGFzIGxlZ2kgbGEgcHJvdml6LWRvc2llcnVqb24gJyUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxMzQKK21zZ2lkICItLWF1dG8gcmVxdWlyZXMgdGhlIHVzZSBvZiB0aGUgLS1vdXRwdXQgb3B0aW9uIgorbXNnc3RyICItLWF1dG8gcG9zdHVsYXMgdXpvbiBkZSBsYSBlbGVrdGVibG8gLS1vdXRwdXQiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxMzYKK21zZ2lkICItLWF1dG8gcmVxdWlyZXMgZXhhY3RseSBvbmUgcGFydCBmaWxlIGFyZ3VtZW50IgorbXNnc3RyICItLWF1dG8gcG9zdHVsYXMgcHJlY2l6ZSB1bnUgcGFydC1kb3NpZXJhbiBhcmd1bWVudG9uIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTQwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibWFsZWJsYXMgbGVnaSBsYSBwYXJ0LWRvc2llcm9uICclLjI1MHMnIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTQzCisjLCBjLWZvcm1hdAorbXNnaWQgIkZpbGUgYCUuMjUwcycgaXMgbm90IHBhcnQgb2YgYSBtdWx0aXBhcnQgYXJjaGl2ZS5cbiIKK21zZ3N0ciAiTGEgZG9zaWVybyAnJS4yNTBzJyBuZSBlc3RhcyBwYXJ0byBlbCBwbHVycGFydGEgYXJraXZvLlxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTc5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW9wZW4gcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJtYWxlYmxhcyByZW1hbGZlcm1pIGxhIHBhcnQtZG9zaWVyb24gJyUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxODIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gbmV3IGRlcG90IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm1hbGVibGFzIG1hbGZlcm1pIG5vdmFuIHByb3Zpei1kb3NpZXJvbiAnJS4yNTBzJyIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE4NAorbXNnaWQgImV4dHJhY3Rpbmcgc3BsaXQgcGFydCIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTkyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW5hbWUgbmV3IGRlcG90IGZpbGUgYCUuMjUwcycgdG8gYCUuMjUwcyciCittc2dzdHIgIm1hbGVibGFzIHJlbm9taWdpIGxhIG5vdmFuIHByb3Zpei1kb3NpZXJvbiAnJS4yNTBzJyBhbCAnJS4yNTBzJyIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE5NgorIywgYy1mb3JtYXQKK21zZ2lkICJQYXJ0ICVkIG9mIHBhY2thZ2UgJXMgZmlsZWQgKHN0aWxsIHdhbnQgIgorbXNnc3RyICJMYSBwYXJ0byAlZCBkZSBsYSBwYWtvICVzIG1hbHN1a2Nlc2lzIChhbmtvcmHFrSB2b2xhcyAiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyMDAKK21zZ2lkICIgYW5kICIKK21zZ3N0ciAiIGthaiAiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSB1c2VkLXVwIGRlcG90IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm1hbGVibGFzIGZvcmlnaSBsYSBlbHV6aXRhbiBwcm92aXotZG9zaWVyb24gJyUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyMzUKK21zZ2lkICJKdW5rIGZpbGVzIGxlZnQgYXJvdW5kIGluIHRoZSBkZXBvdCBkaXJlY3Rvcnk6XG4iCittc2dzdHIgIlNlbnV0aWxhaiBkb3NpZXJvaiByZXN0aXMgZW4gbGEgcHJvdml6LWRvc2llcnVqbzpcbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI0MCBkcGtnLXNwbGl0L3F1ZXVlLmM6MjY5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGAlLjI1MHMnIgorbXNnc3RyICJtYWxlYmxhcyBsZWdpIHN0YXRvbiBkZSAnJS4yNTBzJyIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI0MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiICVzICglbHUgYnl0ZXMpXG4iCittc2dpZCAiICVzICglamQgYnl0ZXMpXG4iCittc2dzdHIgIiVzICglbHUgYmFqdG9qKVxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAlcyAobm90IGEgcGxhaW4gZmlsZSlcbiIKK21zZ3N0ciAiICVzIChuZSBlc3RhcyBvcmRpbmFyYSBkb3NpZXJvKVxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjUwCittc2dpZCAiUGFja2FnZXMgbm90IHlldCByZWFzc2VtYmxlZDpcbiIKK21zZ3N0ciAiUGFrb2ogYW5rb3Jhxa3CoG5lIHJlbXVudGl0YWo6XG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIFBhY2thZ2UgJXM6IHBhcnQocykgIgorbXNnc3RyICIgUGFrbyAlczogcGFydG8oaikgIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjcxCisjLCBjLWZvcm1hdAorbXNnaWQgInBhcnQgZmlsZSBgJS4yNTBzJyBpcyBub3QgYSBwbGFpbiBmaWxlIgorbXNnc3RyICJsYSBwYXJ0LWRvc2llcm8gJyUuMjUwcycgbmUgZXN0YXMgb3JkaW5hcmEgZG9zaWVybyIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI3OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiKHRvdGFsICVsdSBieXRlcylcbiIKK21zZ2lkICIodG90YWwgJWpkIGJ5dGVzKVxuIgorbXNnc3RyICIoZW50dXRlICVsdSBiYWp0b2opXG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzozMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRpc2NhcmQgYCUuMjUwcyciCittc2dzdHIgIm1hbGVibGFzIGZvcsS1ZXRpICclLjI1MHMnIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MzA1CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlbGV0ZWQgJXMuXG4iCittc2dzdHIgIk5pIGZvcmlnaXMgJXMuXG4iCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzo3MCBkcGtnLXNwbGl0L3NwbGl0LmM6NzYgZHBrZy1zcGxpdC9zcGxpdC5jOjgxCisjLCBmdXp6eQorI3wgbXNnaWQgImRwa2ctZGViIGZpZWxkIGV4dHJhY3Rpb24iCittc2dpZCAicGFja2FnZSBmaWVsZCB2YWx1ZSBleHRyYWN0aW9uIgorbXNnc3RyICJrYW1wLWVscHJlbmFkbyBkZSBkcGtnLWRlYiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjEzMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBzb3VyY2UgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibWFsZWJsYXMgbWFsZmVybWkgbGEgZm9udC1kb3NpZXJvbiAnJS4yNTBzJyIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjEzMworbXNnaWQgInVuYWJsZSB0byBmc3RhdCBzb3VyY2UgZmlsZSIKK21zZ3N0ciAibWFsZWJsYXMgbGVnaSBzdGF0b24gZGUgZm9udC1kb3NpZXJvIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTM1CisjLCBjLWZvcm1hdAorbXNnaWQgInNvdXJjZSBmaWxlIGAlLjI1MHMnIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgImxhIGZvbnQtZG9zaWVybyAnJS4yNTBzJyBuZSBlc3RhcyBwdXJ0ZWtzdGEgZG9zaWVybyIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjE1MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiUHV0dGluZyBwYWNrYWdlICVzIHRvZ2V0aGVyIGZyb20gJWQgcGFydDogIgorI3wgbXNnaWRfcGx1cmFsICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0czogIgorbXNnaWQgIlNwbGl0dGluZyBwYWNrYWdlICVzIGludG8gJWQgcGFydDogIgorbXNnaWRfcGx1cmFsICJTcGxpdHRpbmcgcGFja2FnZSAlcyBpbnRvICVkIHBhcnRzOiAiCittc2dzdHJbMF0gIkt1bm1ldGFkbyBkZSBsYSBwYWtvICVzIGVsICVkIHBhcnRvOiAiCittc2dzdHJbMV0gIkt1bm1ldGFkbyBkZSBsYSBwYWtvICVzIGVsICVkIHBhcnRvajogIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTkzCittc2dpZCAiIgorIkhlYWRlciBpcyB0b28gbG9uZywgbWFraW5nIHBhcnQgdG9vIGxvbmcuIFlvdXIgcGFja2FnZSBuYW1lIG9yIHZlcnNpb25cbiIKKyJudW1iZXJzIG11c3QgYmUgZXh0cmFvcmRpbmFyaWx5IGxvbmcsIG9yIHNvbWV0aGluZy4gR2l2aW5nIHVwLlxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoyNDkKK21zZ2lkICItLXNwbGl0IG5lZWRzIGEgc291cmNlIGZpbGVuYW1lIGFyZ3VtZW50IgorbXNnc3RyICItLXNwbGl0IGJlem9uYXMgYXJndW1lbnRvbiBwcmkgZm9udGEgZG9zaWVybm9tbyIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjI1MgorbXNnaWQgIi0tc3BsaXQgdGFrZXMgYXQgbW9zdCBhIHNvdXJjZSBmaWxlbmFtZSBhbmQgZGVzdGluYXRpb24gcHJlZml4IgorbXNnc3RyICItLXNwbGl0IHByZW5hcyBtYWtzaW11bWUgZm9udGFuIGRvc2llcm5vbW9uIGthaiBjZWxhbiBwcmVmaWtzb24iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo4NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMC0yMDAyIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDA5LTIwMTAgUmFwaGFlbCBIZXJ0em9nLlxuIgorbXNnc3RyICIiCisiS29waXJhanRvIChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorIktvcGlyYWp0byAoQykgMjAwMC0yMDAyIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiS29waXJhanRvIChDKSAyMDA5LTIwMTAgUmFwaGFlbCBIZXJ0em9nLlxuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTAxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIDxjb21tYW5kPlxuIgorI3wgIlxuIgorI3wgIkNvbW1hbmRzOlxuIgorI3wgIiAgLS1pbnN0YWxsIDxsaW5rPiA8bmFtZT4gPHBhdGg+IDxwcmlvcml0eT5cbiIKKyN8ICIgICAgWy0tc2xhdmUgPGxpbms+IDxuYW1lPiA8cGF0aD5dIC4uLlxuIgorI3wgIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGFkZCBhIGdyb3VwIG9mIGFsdGVybmF0aXZlcyB0byB0aGUgc3lzdGVtLlxuIgorI3wgIiAgLS1yZW1vdmUgPG5hbWU+IDxwYXRoPiAgIHJlbW92ZSA8cGF0aD4gZnJvbSB0aGUgPG5hbWU+IGdyb3VwICIKKyN8ICJhbHRlcm5hdGl2ZS5cbiIKKyN8ICIgIC0tcmVtb3ZlLWFsbCA8bmFtZT4gICAgICByZW1vdmUgPG5hbWU+IGdyb3VwIGZyb20gdGhlIGFsdGVybmF0aXZlcyAiCisjfCAic3lzdGVtLlxuIgorI3wgIiAgLS1hdXRvIDxuYW1lPiAgICAgICAgICAgIHN3aXRjaCB0aGUgbWFzdGVyIGxpbmsgPG5hbWU+IHRvIGF1dG9tYXRpYyAiCisjfCAibW9kZS5cbiIKKyN8ICIgIC0tZGlzcGxheSA8bmFtZT4gICAgICAgICBkaXNwbGF5IGluZm9ybWF0aW9uIGFib3V0IHRoZSA8bmFtZT4gZ3JvdXAuXG4iCisjfCAiICAtLXF1ZXJ5IDxuYW1lPiAgICAgICAgICAgbWFjaGluZSBwYXJzZWFibGUgdmVyc2lvbiBvZiAtLWRpc3BsYXkgIgorI3wgIjxuYW1lPi5cbiIKKyN8ICIgIC0tbGlzdCA8bmFtZT4gICAgICAgICAgICBkaXNwbGF5IGFsbCB0YXJnZXRzIG9mIHRoZSA8bmFtZT4gZ3JvdXAuXG4iCisjfCAiICAtLWNvbmZpZyA8bmFtZT4gICAgICAgICAgc2hvdyBhbHRlcm5hdGl2ZXMgZm9yIHRoZSA8bmFtZT4gZ3JvdXAgYW5kIGFzayAiCisjfCAidGhlXG4iCisjfCAiICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlciB0byBzZWxlY3Qgd2hpY2ggb25lIHRvIHVzZS5cbiIKKyN8ICIgIC0tc2V0IDxuYW1lPiA8cGF0aD4gICAgICBzZXQgPHBhdGg+IGFzIGFsdGVybmF0aXZlIGZvciA8bmFtZT4uXG4iCisjfCAiICAtLWFsbCAgICAgICAgICAgICAgICAgICAgY2FsbCAtLWNvbmZpZyBvbiBhbGwgYWx0ZXJuYXRpdmVzLlxuIgorI3wgIlxuIgorI3wgIjxsaW5rPiBpcyB0aGUgc3ltbGluayBwb2ludGluZyB0byAlcy88bmFtZT4uXG4iCisjfCAiICAoZS5nLiAvdXNyL2Jpbi9wYWdlcilcbiIKKyN8ICI8bmFtZT4gaXMgdGhlIG1hc3RlciBuYW1lIGZvciB0aGlzIGxpbmsgZ3JvdXAuXG4iCisjfCAiICAoZS5nLiBwYWdlcilcbiIKKyN8ICI8cGF0aD4gaXMgdGhlIGxvY2F0aW9uIG9mIG9uZSBvZiB0aGUgYWx0ZXJuYXRpdmUgdGFyZ2V0IGZpbGVzLlxuIgorI3wgIiAgKGUuZy4gL3Vzci9iaW4vbGVzcylcbiIKKyN8ICI8cHJpb3JpdHk+IGlzIGFuIGludGVnZXI7IG9wdGlvbnMgd2l0aCBoaWdoZXIgbnVtYmVycyBoYXZlIGhpZ2hlciAiCisjfCAicHJpb3JpdHkgaW5cbiIKKyN8ICIgIGF1dG9tYXRpYyBtb2RlLlxuIgorI3wgIlxuIgorI3wgIk9wdGlvbnM6XG4iCisjfCAiICAtLWFsdGRpciA8ZGlyZWN0b3J5PiAgICAgY2hhbmdlIHRoZSBhbHRlcm5hdGl2ZXMgZGlyZWN0b3J5LlxuIgorI3wgIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIGNoYW5nZSB0aGUgYWRtaW5pc3RyYXRpdmUgZGlyZWN0b3J5LlxuIgorI3wgIiAgLS1za2lwLWF1dG8gICAgICAgICAgICAgIHNraXAgcHJvbXB0IGZvciBhbHRlcm5hdGl2ZXMgY29ycmVjdGx5ICIKKyN8ICJjb25maWd1cmVkXG4iCisjfCAiICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gYXV0b21hdGljIG1vZGUgKHJlbGV2YW50IGZvciAtLWNvbmZpZyAiCisjfCAib25seSlcbiIKKyN8ICIgIC0tdmVyYm9zZSAgICAgICAgICAgICAgICB2ZXJib3NlIG9wZXJhdGlvbiwgbW9yZSBvdXRwdXQuXG4iCisjfCAiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgcXVpZXQgb3BlcmF0aW9uLCBtaW5pbWFsIG91dHB1dC5cbiIKKyN8ICIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorI3wgIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLS1pbnN0YWxsIDxsaW5rPiA8bmFtZT4gPHBhdGg+IDxwcmlvcml0eT5cbiIKKyIgICAgWy0tc2xhdmUgPGxpbms+IDxuYW1lPiA8cGF0aD5dIC4uLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGFkZCBhIGdyb3VwIG9mIGFsdGVybmF0aXZlcyB0byB0aGUgc3lzdGVtLlxuIgorIiAgLS1yZW1vdmUgPG5hbWU+IDxwYXRoPiAgIHJlbW92ZSA8cGF0aD4gZnJvbSB0aGUgPG5hbWU+IGdyb3VwIGFsdGVybmF0aXZlLlxuIgorIiAgLS1yZW1vdmUtYWxsIDxuYW1lPiAgICAgIHJlbW92ZSA8bmFtZT4gZ3JvdXAgZnJvbSB0aGUgYWx0ZXJuYXRpdmVzICIKKyJzeXN0ZW0uXG4iCisiICAtLWF1dG8gPG5hbWU+ICAgICAgICAgICAgc3dpdGNoIHRoZSBtYXN0ZXIgbGluayA8bmFtZT4gdG8gYXV0b21hdGljIG1vZGUuXG4iCisiICAtLWRpc3BsYXkgPG5hbWU+ICAgICAgICAgZGlzcGxheSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgPG5hbWU+IGdyb3VwLlxuIgorIiAgLS1xdWVyeSA8bmFtZT4gICAgICAgICAgIG1hY2hpbmUgcGFyc2VhYmxlIHZlcnNpb24gb2YgLS1kaXNwbGF5IDxuYW1lPi5cbiIKKyIgIC0tbGlzdCA8bmFtZT4gICAgICAgICAgICBkaXNwbGF5IGFsbCB0YXJnZXRzIG9mIHRoZSA8bmFtZT4gZ3JvdXAuXG4iCisiICAtLWdldC1zZWxlY3Rpb25zICAgICAgICAgbGlzdCBtYXN0ZXIgYWx0ZXJuYXRpdmUgbmFtZXMgYW5kIHRoZWlyIHN0YXR1cy5cbiIKKyIgIC0tc2V0LXNlbGVjdGlvbnMgICAgICAgICByZWFkIGFsdGVybmF0aXZlIHN0YXR1cyBmcm9tIHN0YW5kYXJkIGlucHV0LlxuIgorIiAgLS1jb25maWcgPG5hbWU+ICAgICAgICAgIHNob3cgYWx0ZXJuYXRpdmVzIGZvciB0aGUgPG5hbWU+IGdyb3VwIGFuZCBhc2sgIgorInRoZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzZXIgdG8gc2VsZWN0IHdoaWNoIG9uZSB0byB1c2UuXG4iCisiICAtLXNldCA8bmFtZT4gPHBhdGg+ICAgICAgc2V0IDxwYXRoPiBhcyBhbHRlcm5hdGl2ZSBmb3IgPG5hbWU+LlxuIgorIiAgLS1hbGwgICAgICAgICAgICAgICAgICAgIGNhbGwgLS1jb25maWcgb24gYWxsIGFsdGVybmF0aXZlcy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIlV6YWRvOiAlcyBbPGVsZWt0ZWJsbz4gLi4uXSA8a29tYW5kbz5cbiIKKyJcbiIKKyJLb21hbmRvajpcbiIKKyIgIC0taW5zdGFsbCA8bGlnbz4gPG5vbW8+IDx2b2pvPiA8cHJpb3JpdGF0bz5cbiIKKyIgICAgWy0tc2xhdmUgPGxpZ28+IDxub21vPiA8dm9qbz5dIC4uLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsZG9uaSBncnVwb24gZGUgYWx0ZXJuYXRpdm9qIGFsIGxhIHNpc3RlbW8uXG4iCisiICAtLXJlbW92ZSA8bm9tbz4gPHZvam8+ICAgZm9yaWdpIDx2b2pvbj4gZWwgbGEgZ3J1cG8gZGUgYWx0ZXJuYXRpdm8gIgorIjxub21vPi5cbiIKKyIgIC0tcmVtb3ZlLWFsbCA8bm9tbz4gICAgICBmb3JpZ2kgZ3J1cG9uIDxub21vPiBlbCBsYSBzaXN0ZW1vIGRlICIKKyJhbHRlcm5hdGl2b2ouXG4iCisiICAtLWF1dG8gPG5vbW8+ICAgICAgICAgICAgxZ1hbHRpIGxhIG1hc3RyYW4gbGlnb24gPG5vbW8+IGFsIGHFrXRvbWF0YSAiCisicmXEnWltby5cbiIKKyIgIC0tZGlzcGxheSA8bm9tbz4gICAgICAgICBtb250cmlnaSBpbmZvcm1vbiBwcmkgbGEgZ3J1cG8gPG5vbW8+LlxuIgorIiAgLS1xdWVyeSA8bm9tbz4gICAgICAgICAgIG1hxZ1pbi1hbmFsaXplYmxhIHZlcnNpbyBkZSAtLWRpc3BsYXkgPG5vbW8+LlxuIgorIiAgLS1saXN0IDxub21vPiAgICAgICAgICAgIG1vbnRyaWdpIMSJaXVqbiBjZWxvam4gZGUgbGEgZ3J1cG8gPG5vbW8+LlxuIgorIiAgLS1jb25maWcgPG5vbW8+ICAgICAgICAgIG1vbnRyaSBhbHRlcm5hdGl2b2puIHBvciBsYSBncnVwbyA8bm9tbz4ga2FqIHBldGkgIgorImRlIGxhXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgdXphbnRvIHBvciBlbGVrdGkgdW51LlxuIgorIiAgLS1zZXQgPG5vbW8+IDx2b2pvPiAgICAgIGRpZmluaSA8dm9qbz4ga2llbCBhbHRlcm5hdGl2b24gcG9yIDxub21vPi5cbiIKKyIgIC0tYWxsICAgICAgICAgICAgICAgICAgICB2b2tpIC0tY29uZmlnIHBvciDEiWl1aiBhbHRlcm5hdGl2b2ouXG4iCisiXG4iCisiPGxpZ28+IGVzdGFzIHNpbWJvbC1saWdvIGtvbmR1a2FudGEgYWwgJXMvPG5vbW8+LlxuIgorIiAgKGVrei4gL3Vzci9iaW4vcGFnZXIpXG4iCisiPG5vbW8+IGVzdGFzIG1hc3RyYSBub21vIHBvciB0aXUgxIlpIGxpZ28tZ3J1cG8uXG4iCisiICAoZWt6LiBwYWdlcilcbiIKKyI8dm9qbz4gZXN0YXMgbGEgbG9rbyBkZSB1bnUgZWwgbGEgYWx0ZXJuYXRpdmFqIGNlbC1kb3NpZXJvai5cbiIKKyIgIChla3ouIC91c3IvYmluL2xlc3MpXG4iCisiPHByaW9yaXRhdG8+IGVzdGFzIGVudGplcm87IGVsZWt0ZWJsb2oga3VuIHBsaSBncmFuZGFqIG51bWVyb2ogaGF2YXMgcGxpICIKKyJhbHRhbiBwcmlvcml0YXRvbiBlblxuIgorIiAgYcWtdG9tYXRhIHJlxJ1pbW8uXG4iCisiXG4iCisiRWxla3RlYmxvajpcbiIKKyIgIC0tYWx0ZGlyIDxkb3NpZXJ1am8+ICAgICDFnWFuxJ1pIGxhIGRvc2llcnVqb24gYWx0ZXJuYXRpdmVzLlxuIgorIiAgLS1hZG1pbmRpciA8ZG9zaWVydWpvPiAgIMWdYW7EnWkgbGEgYWRtaW5pc3RyYW4gZG9zaWVydWpvbi5cbiIKKyIgIC0tc2tpcC1hdXRvICAgICAgICAgICAgICBwcmV0ZXJwYXNpIGtvbWFuZC1pbnZpdG9uIHBvciBhbHRlcm5hdGl2b2ogIgorImtvcmVrdGUgYWdvcmRpdGFqXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgZW4gYcWtdG9tYXRhIHJlxJ1pbW8gKGVmaWtlIG51ciBwb3IgLS1jb25maWcpXG4iCisiICAtLXZlcmJvc2UgICAgICAgICAgICAgICAgZGV0YWxpZ2EgZnVua2NpYWRvLCBwbGkgZGEgZWxpZ28uXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAga3ZpZXRhIGZ1bmtjaWFkbywgbWluaW11bWEgZWxpZ28uXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgbW9udHJpIHRpdW4gxIlpIGhlbHAtbWVzYcSdb24uXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgbW9udHJpIGxhIHZlcnNpb24uXG4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIjxsaW5rPiBpcyB0aGUgc3ltbGluayBwb2ludGluZyB0byAlcy88bmFtZT4uXG4iCisiICAoZS5nLiAvdXNyL2Jpbi9wYWdlcilcbiIKKyI8bmFtZT4gaXMgdGhlIG1hc3RlciBuYW1lIGZvciB0aGlzIGxpbmsgZ3JvdXAuXG4iCisiICAoZS5nLiBwYWdlcilcbiIKKyI8cGF0aD4gaXMgdGhlIGxvY2F0aW9uIG9mIG9uZSBvZiB0aGUgYWx0ZXJuYXRpdmUgdGFyZ2V0IGZpbGVzLlxuIgorIiAgKGUuZy4gL3Vzci9iaW4vbGVzcylcbiIKKyI8cHJpb3JpdHk+IGlzIGFuIGludGVnZXI7IG9wdGlvbnMgd2l0aCBoaWdoZXIgbnVtYmVycyBoYXZlIGhpZ2hlciBwcmlvcml0eSAiCisiaW5cbiIKKyIgIGF1dG9tYXRpYyBtb2RlLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJPcHRpb25zOlxuIgorI3wgIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIHNldCB0aGUgZGlyZWN0b3J5IHdpdGggdGhlIHN0YXRvdmVycmlkZSBmaWxlLlxuIgorI3wgIiAgLS11cGRhdGUgICAgICAgICAgICAgICAgIGltbWVkaWF0ZWx5IHVwZGF0ZSBmaWxlIHBlcm1pc3Npb25zLlxuIgorI3wgIiAgLS1mb3JjZSAgICAgICAgICAgICAgICAgIGZvcmNlIGFuIGFjdGlvbiBldmVuIGlmIGEgc2FuaXR5IGNoZWNrIGZhaWxzLlxuIgorI3wgIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHF1aWV0IG9wZXJhdGlvbiwgbWluaW1hbCBvdXRwdXQuXG4iCisjfCAiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyN8ICIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorI3wgIlxuIgorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hbHRkaXIgPGRpcmVjdG9yeT4gICAgIGNoYW5nZSB0aGUgYWx0ZXJuYXRpdmVzIGRpcmVjdG9yeS5cbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICBjaGFuZ2UgdGhlIGFkbWluaXN0cmF0aXZlIGRpcmVjdG9yeS5cbiIKKyIgIC0tbG9nIDxmaWxlPiAgICAgICAgICAgICBjaGFuZ2UgdGhlIGxvZyBmaWxlLlxuIgorIiAgLS1mb3JjZSAgICAgICAgICAgICAgICAgIGFsbG93IHJlcGxhY2luZyBmaWxlcyB3aXRoIGFsdGVybmF0aXZlIGxpbmtzLlxuIgorIiAgLS1za2lwLWF1dG8gICAgICAgICAgICAgIHNraXAgcHJvbXB0IGZvciBhbHRlcm5hdGl2ZXMgY29ycmVjdGx5ICIKKyJjb25maWd1cmVkXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gYXV0b21hdGljIG1vZGUgKHJlbGV2YW50IGZvciAtLWNvbmZpZyBvbmx5KVxuIgorIiAgLS12ZXJib3NlICAgICAgICAgICAgICAgIHZlcmJvc2Ugb3BlcmF0aW9uLCBtb3JlIG91dHB1dC5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBxdWlldCBvcGVyYXRpb24sIG1pbmltYWwgb3V0cHV0LlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIgorIkVsZWt0ZWJsb2o6XG4iCisiICAtLWFkbWluZGlyIDxkb3NpZXJ1am8+ICAgZGlmaW5pIGxhIGRvc2llcnVqb24gZW5oYXZhbnRhbiBsYSBkb3NpZXJvbiAiCisic3RhdG92ZXJyaWRlLlxuIgorIiAgLS11cGRhdGUgICAgICAgICAgICAgICAgIHR1aiDEnWlzZGF0aWdpIGRvc2llci1hbGlyZWJsZWNvam4uXG4iCisiICAtLWZvcmNlICAgICAgICAgICAgICAgICAgcGVyZm9ydGkgYWdvbiBlxIkgc2Uga29oZXJlYy1rb250cm9sbyAiCisibWFsc3VrY2VzYXMuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgc2lsZW50YSBwcm9jZXphZG8sIG1pbmltdW1hIGVsaWdvLlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIG1vbnRyaSB0aXVuIMSJaSBoZWxwLW1lc2HEnW9uLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIG1vbnRyaSBsYSB2ZXJzaW9uLlxuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNjMKK21zZ2lkICJlcnJvciIKK21zZ3N0ciAiZXJhcm8iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxOTMKK21zZ2lkICJ3YXJuaW5nIgorbXNnc3RyICJhdmVydG8iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzozNTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidHdvIGNvbW1hbmRzIHNwZWNpZmllZDogLS0lcyBhbmQgLS0lcyIKK21zZ3N0ciAiZHUga29tYW5kb2ogc3BlY2lmaXRhajogLS0lcyBrYWogLS0lcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjM4NworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiY2Fubm90IGFwcGVuZCB0byAlczogJXMiCittc2dpZCAiY2Fubm90IGFwcGVuZCB0byAnJXMnIgorbXNnc3RyICJuZSBlYmxhcyBwb3N0bWV0aSBhbCAlczogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo1NTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byByZW1vdmUgJXM6ICVzIgorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgJyVzJyIKK21zZ3N0ciAibmUgZWJsYXMgZm9yaWdpICVzOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgZmlsZSB3aGlsZSB0cnlpbmcgdG8gcmVhZCAlcyIKK21zZ3N0ciAibmVhdGVuZGl0YSBkb3NpZXJmaW5vIGR1bSBwcm92byBsZWdpICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTExMworIywgYy1mb3JtYXQKK21zZ2lkICJ3aGlsZSByZWFkaW5nICVzOiAlcyIKK21zZ3N0ciAiZHVtIGxlZ2FkbyBkZSAlczogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTE5CisjLCBjLWZvcm1hdAorbXNnaWQgImxpbmUgbm90IHRlcm1pbmF0ZWQgd2hpbGUgdHJ5aW5nIHRvIHJlYWQgJXMiCittc2dzdHIgImxpbmlvIG5lIGZpbmlnaXRhIGR1bSBwcm92byBsZWdpICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTEzNworIywgYy1mb3JtYXQKK21zZ2lkICIlcyBjb3JydXB0OiAlcyIKK21zZ3N0ciAiJXMgbWlzcm9tcGl0YTogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTUwCisjLCBjLWZvcm1hdAorbXNnaWQgIm5ld2xpbmVzIHByb2hpYml0ZWQgaW4gdXBkYXRlLWFsdGVybmF0aXZlcyBmaWxlcyAoJXMpIgorbXNnc3RyICJub3ZsaW5pb2ogbWFscGVybWVzaXRlIGVuIGRvc2llcm9qIHVwZGF0ZS1hbHRlcm5hdGl2ZXMgKCVzKSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNjMKK21zZ2lkICJzbGF2ZSBuYW1lIgorbXNnc3RyICJza2xhdmEgbm9tbyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNzEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImR1cGxpY2F0ZSBzbGF2ZSAlcyIKK21zZ2lkICJkdXBsaWNhdGUgc2xhdmUgbmFtZSAlcyIKK21zZ3N0ciAiZHVvYmxpZ2l0YSBza2xhdm8gJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTc0Cittc2dpZCAic2xhdmUgbGluayIKK21zZ3N0ciAic2tsYXZhIGxpZ28iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTc4CisjLCBjLWZvcm1hdAorbXNnaWQgInNsYXZlIGxpbmsgc2FtZSBhcyBtYWluIGxpbmsgJXMiCittc2dzdHIgInNrbGF2YSBsaWdvIHNhbWFzIG9sIGxhIMSJZWZhIGxpZ28gJXMgIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE4NSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQxMgorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgc2xhdmUgbGluayAlcyIKK21zZ3N0ciAiZHVvYmxpZ2l0YSBza2xhdm8gbGlnbyAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMDQKK21zZ2lkICJtYXN0ZXIgZmlsZSIKK21zZ3N0ciAibWFzdHJhIGRvc2llcm8iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjEzCisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBwYXRoICVzIgorbXNnc3RyICJkdW9ibGlnaXRhIHZvam8gJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjI2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJhbHRlcm5hdGl2ZSAlcyAocGFydCBvZiBsaW5rIGdyb3VwICVzKSBkb2Vzbid0IGV4aXN0LiBSZW1vdmluZyBmcm9tIGxpc3Qgb2YgIgorImFsdGVybmF0aXZlcy4iCittc2dzdHIgIiIKKyJsYSBhbHRlcm5hdGl2byAlcyAocGFydG8gZWwgbGlnby1ncnVwbyAlcykgbmUgZWt6aXN0YXMuIE5pIGZvcmlnYXMgZWwgbGEgIgorImxpc3RvIGRlIGFsdGVybmF0aXZvai4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjI5IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjQwCittc2dpZCAicHJpb3JpdHkiCittc2dzdHIgInByaW9yaXRhdG8iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjMyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjQ5Cittc2dpZCAic2xhdmUgZmlsZSIKK21zZ3N0ciAic2tsYXZhIGRvc2llcm8iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjQ0CisjLCBjLWZvcm1hdAorbXNnaWQgInByaW9yaXR5IG9mICVzOiAlcyIKK21zZ3N0ciAicHJpb3JpdGF0byBkZSAlczogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjk3Cittc2dpZCAic3RhdHVzIgorbXNnc3RyICJzdGF0byIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyOTkKK21zZ2lkICJpbnZhbGlkIHN0YXR1cyIKK21zZ3N0ciAibWFsdmFsaWRhIHN0YXRvIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTMwNAorbXNnaWQgIm1hc3RlciBsaW5rIgorbXNnc3RyICJtYXN0cmEgbGlnbyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGlzY2FyZGluZyBvYnNvbGV0ZSBzbGF2ZSBsaW5rICVzICglcykuIgorbXNnc3RyICJmb3JsYXNvIGRlIGxhIG1hbGFrdHVhbGEgc2tsYXZhIGxpZ28gJXMgKCVzKS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTAyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTY5CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYzOAorbXNnaWQgImF1dG8gbW9kZSIKK21zZ3N0ciAiYcWtdG9tYXRhIHJlxJ1pbW8iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTAyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTc4CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYzOQorbXNnaWQgIm1hbnVhbCBtb2RlIgorbXNnc3RyICJwZXJtYW5hIHJlxJ1pbW8iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTA1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgbGluayBjdXJyZW50bHkgcG9pbnRzIHRvICVzIgorbXNnc3RyICIgIGxpZ28gbnVuZSBrb25kdWthcyBhbCAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MDgKK21zZ2lkICIgIGxpbmsgY3VycmVudGx5IGFic2VudCIKK21zZ3N0ciAiICBsaWdvIG51bmUgbWFsxIllZXN0YXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTEyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIC0gcHJpb3JpdHkgJWQiCittc2dzdHIgIiVzIC0gcHJpb3JpdGF0byAlZCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBzbGF2ZSAlczogJXMiCittc2dzdHIgIiAgc2tsYXZvICVzOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ3VycmVudCAnYmVzdCcgdmVyc2lvbiBpcyAnJXMnLiIKK21zZ3N0ciAiTnVuZSAncGxlamJvbmEnIHZlcnNpbyBlc3RhcyAnJXMnLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MjQKK21zZ2lkICJObyB2ZXJzaW9ucyBhdmFpbGFibGUuIgorbXNnc3RyICJOZW5pdSB2ZXJzaW8gZGlzcG9uZWJsYXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU1MworIywgYy1mb3JtYXQKK21zZ2lkICJUaGVyZSBpcyAlZCBjaG9pY2UgZm9yIHRoZSBhbHRlcm5hdGl2ZSAlcyAocHJvdmlkaW5nICVzKS4iCittc2dpZF9wbHVyYWwgIlRoZXJlIGFyZSAlZCBjaG9pY2VzIGZvciB0aGUgYWx0ZXJuYXRpdmUgJXMgKHByb3ZpZGluZyAlcykuIgorbXNnc3RyWzBdICJFc3RhcyAlZCBlbGVrdG8gcG9yIGxhIGFsdGVybmF0aXZvICVzIChwcm92aXphbnRhICVzKS4iCittc2dzdHJbMV0gIkVzdGFzICVkIGVsZWt0b2ogcG9yIGxhIGFsdGVybmF0aXZvICVzIChwcm92aXphbnRhICVzKS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYwCittc2dpZCAiU2VsZWN0aW9uIgorbXNnc3RyICJFbGVrdG8iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYxCittc2dpZCAiUGF0aCIKK21zZ3N0ciAiVm9qbyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NjEKK21zZ2lkICJQcmlvcml0eSIKK21zZ3N0ciAiUHJpb3JpdGF0byIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NjEKK21zZ2lkICJTdGF0dXMiCittc2dzdHIgIlN0YXRvIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU4MgorIywgYy1mb3JtYXQKK21zZ2lkICJQcmVzcyBlbnRlciB0byBrZWVwIHRoZSBjdXJyZW50IGNob2ljZVsqXSwgb3IgdHlwZSBzZWxlY3Rpb24gbnVtYmVyOiAiCittc2dzdHIgIiIKKyJQcmVtdSBsYSBlbmlna2xhdm9uIHBvciB0ZW5pIGxhIG51bmFuIGVsZWt0b25bKl0sIGHFrcKgdGFqcHUgYWwgZWxla3RvLSIKKyJudW1lcm9uOiAiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNzIxCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vdCByZXBsYWNpbmcgJXMgd2l0aCBhIGxpbmsuIgorbXNnc3RyICJuaSBuZSBhbnN0YXRhxa1pZ2FzICVzIHBlciBsaWdvLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3NjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2FuJ3QgaW5zdGFsbCB1bmtub3duIGNob2ljZSAlcyIKK21zZ3N0ciAibmkgbmUgcG92YXMgaW5zdGFsaSBsYSBuZSBrb25hdGFuIGVsZWt0b24gJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNzgwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJza2lwIGNyZWF0aW9uIG9mICVzIGJlY2F1c2UgYXNzb2NpYXRlZCBmaWxlICVzIChvZiBsaW5rIGdyb3VwICVzKSBkb2Vzbid0ICIKKyJleGlzdC4iCittc2dzdHIgIiIKKyJwcmV0ZXJwYXNpIGtyZW9uIGRlICVzIMSJYXIgbGEga29uY2VybmEgZG9zaWVybyAlcyAoZGUgbGlnby1ncnVwbyAlcykgbmUgIgorImVremlzdGFzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3OTAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIm5vdCByZXBsYWNpbmcgJXMgd2l0aCBhIGxpbmsuIgorbXNnaWQgIm5vdCByZW1vdmluZyAlcyBzaW5jZSBpdCdzIG5vdCBhIHN5bWxpbmsuIgorbXNnc3RyICJuaSBuZSBhbnN0YXRhxa1pZ2FzICVzIHBlciBsaWdvLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNDEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2FsbCAlcy4iCittc2dzdHIgIlZva2kgJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA1MQorIywgYy1mb3JtYXQKK21zZ2lkICJBbHRlcm5hdGl2ZSAlcyB1bmNoYW5nZWQgYmVjYXVzZSBjaG9pY2UgJXMgaXMgbm90IGF2YWlsYWJsZS4iCittc2dzdHIgIkFsdGVybmF0aXZvICVzIG5lxZ1hbsSdaXRhIMSJYXIgZWxla3RvICVzIG5lIGRpc3BvbmVibGFzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2tpcCB1bmtub3duIGFsdGVybmF0aXZlICVzLiIKK21zZ3N0ciAiUHJldGVycGFzaSBuZWtvbmF0YW4gYWx0ZXJuYXRpdm9uICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNzcKKyMsIGMtZm9ybWF0Cittc2dpZCAibGluZSB0b28gbG9uZyBvciBub3QgdGVybWluYXRlZCB3aGlsZSB0cnlpbmcgdG8gcmVhZCAlcyIKK21zZ3N0ciAibGluaW8gdHJvIGxvbmdhIGHFrSBuZSBmaW5pZ2l0YSBkdW0gcHJvdm8gbGVnaSAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwOTAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxMDMKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTEzCisjLCBjLWZvcm1hdAorbXNnaWQgIlNraXAgaW52YWxpZCBsaW5lOiAlcyIKK21zZ3N0ciAiTmkgcHJldGVybGFzYXMgbWFsdmFsaWRhbiBsaW5pb246ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjEzMgorIywgYy1mb3JtYXQKK21zZ2lkICJyZW5hbWluZyAlcyBsaW5rIGZyb20gJXMgdG8gJXMuIgorbXNnc3RyICJuaSByZW5vbWlnYXMgbGEgbGlnb24gJXMgZGUgJXMgYWwgJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE3MworIywgYy1mb3JtYXQKK21zZ2lkICJyZW5hbWluZyAlcyBzbGF2ZSBsaW5rIGZyb20gJXMgdG8gJXMuIgorbXNnc3RyICJuaSByZW5vbWlnYXMgbGEgc2tsYXZhbiBsaWdvbiAlcyBkZSAlcyBhbCAlcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTg5CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIG5hbWUgKCVzKSBtdXN0IG5vdCBjb250YWluICcvJyBhbmQgc3BhY2VzLiIKK21zZ3N0ciAiYWx0ZXJuYXRpdmEgbm9tbyAoJXMpIG5lIGRldmFzIGVuaGF2aSAnLycga2FqIHNwYWNvam4uIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE5MworIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBsaW5rIGlzIG5vdCBhYnNvbHV0ZSBhcyBpdCBzaG91bGQgYmU6ICVzIgorbXNnc3RyICJsYSBhbHRlcm5hdGl2YSBsaWdvIG5lIGVzdGFzIGFic29sdXRhIGtpZWwgxJ1pIGRldnVzIGVzdGk6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE5NworIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBwYXRoIGlzIG5vdCBhYnNvbHV0ZSBhcyBpdCBzaG91bGQgYmU6ICVzIgorbXNnc3RyICJsYSBhbHRlcm5hdGl2YSB2b2pvIG5lIGVzdGFzIGFic29sdXRhIGtpZWwgxJ1pIGRldnVzIGVzdGk6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjIyNAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgbWFzdGVyOiAlcyIKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBtYXN0ZXI6IGl0IGlzIGEgc2xhdmUgb2YgJXMiCittc2dzdHIgImxhIGFsdGVybmF0aXZvICVzIG5lIHBvdmFzIGVzdGkgbWFzdHJhOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyMzIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgbGluayAlcyBpcyBhbHJlYWR5IG1hbmFnZWQgYnkgJXMuIgorbXNnc3RyICJsYSBhbHRlcm5hdGl2YSBsaWdvICVzIGphbSBlc3RhcyB6b3JnYXRhIGRlICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgcGF0aCAlcyBkb2Vzbid0IGV4aXN0LiIKK21zZ3N0ciAibGEgYWx0ZXJuYXRpdmEgdm9qbyAlcyBuZSBla3ppc3Rhcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjU0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBzbGF2ZSBvZiAlczogJXMiCittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgc2xhdmUgb2YgJXM6IGl0IGlzIGEgbWFzdGVyIGFsdGVybmF0aXZlLiIKK21zZ3N0ciAiYWx0ZXJuYXRpdm8gJXMgbmUgcG92YXMgZXN0aSBza2xhdm8gZGUgJXM6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI1OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgbWFzdGVyOiAlcyIKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBzbGF2ZSBvZiAlczogaXQgaXMgYSBzbGF2ZSBvZiAlcyIKK21zZ3N0ciAibGEgYWx0ZXJuYXRpdm8gJXMgbmUgcG92YXMgZXN0aSBtYXN0cmE6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI3OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYWx0ZXJuYXRpdmUgbGluayAlcyBpcyBhbHJlYWR5IG1hbmFnZWQgYnkgJXMuIgorbXNnaWQgImFsdGVybmF0aXZlIGxpbmsgJXMgaXMgYWxyZWFkeSBtYW5hZ2VkIGJ5ICVzIChzbGF2ZSBvZiAlcykuIgorbXNnc3RyICJsYSBhbHRlcm5hdGl2YSBsaWdvICVzIGphbSBlc3RhcyB6b3JnYXRhIGRlICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBhcmd1bWVudCBgJXMnIgorbXNnc3RyICJuZWtvbmF0YSBhcmd1bWVudG8gJyVzJyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNDMKK21zZ2lkICItLWluc3RhbGwgbmVlZHMgPGxpbms+IDxuYW1lPiA8cGF0aD4gPHByaW9yaXR5PiIKK21zZ3N0ciAiLS1pbnN0YWxsIGJlem9uYXMgPGxpZ28+IDxub21vPiA8dm9qbz4gPHByaW9yaXRhdG8+IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM0NiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM5NworbXNnaWQgIjxsaW5rPiBhbmQgPHBhdGg+IGNhbid0IGJlIHRoZSBzYW1lIgorbXNnc3RyICI8bGlnbz4ga2FqIDx2b2pvPiBuZSBwb3ZhcyBlc3RpIHNhbWFqIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM0OQorbXNnaWQgInByaW9yaXR5IG11c3QgYmUgYW4gaW50ZWdlciIKK21zZ3N0ciAicHJpb3JpdGF0byBkZXZhcyBlc3RpIGVudGplcm8iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzYyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgPG5hbWU+IDxwYXRoPiIKK21zZ3N0ciAiLS0lcyBiZXpvbmFzIDxub21vPiA8dm9qbz4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzc2CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgPG5hbWU+IgorbXNnc3RyICItLSVzIGJlem9uYXMgPG5vbW8+IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM4OAorbXNnaWQgIi0tc2xhdmUgb25seSBhbGxvd2VkIHdpdGggLS1pbnN0YWxsIgorbXNnc3RyICItLXNsYXZlIG51ciBwZXJtZXNpdGUga3VuIC0taW5zdGFsbCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzOTAKK21zZ2lkICItLXNsYXZlIG5lZWRzIDxsaW5rPiA8bmFtZT4gPHBhdGg+IgorbXNnc3RyICItLXNsYXZlIGJlem9uYXMgPGxpZ28+IDxub21vPiA8dm9qbz4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzk5CisjLCBjLWZvcm1hdAorbXNnaWQgIm5hbWUgJXMgaXMgYm90aCBwcmltYXJ5IGFuZCBzbGF2ZSIKK21zZ3N0ciAibGEgbm9tbyAlcyBlc3RhcyBrYWogbWFzdHJhIGthaiBza2xhdmEiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDAyCisjLCBjLWZvcm1hdAorbXNnaWQgImxpbmsgJXMgaXMgYm90aCBwcmltYXJ5IGFuZCBzbGF2ZSIKK21zZ3N0ciAibGEgbGlnbyAlcyBlc3RhcyBrYWogbWFzdHJhIGthaiBza2xhdmEiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDIyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSA8ZmlsZT4gYXJndW1lbnQiCittc2dzdHIgIi0tJXMgYmV6b25hcyBhcmd1bWVudG9uIDxkb3NpZXJvPiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gYCVzJyIKK21zZ3N0ciAibmVrb25hdGEgZWxla3RlYmxvICclcyciCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDUzCittc2dpZCAiIgorIm5lZWQgLS1kaXNwbGF5LCAtLXF1ZXJ5LCAtLWxpc3QsIC0tZ2V0LXNlbGVjdGlvbnMsIC0tY29uZmlnLCAtLXNldCwgLS1zZXQtIgorInNlbGVjdGlvbnMsIC0taW5zdGFsbCwgLS1yZW1vdmUsIC0tYWxsLCAtLXJlbW92ZS1hbGwgb3IgLS1hdXRvIgorbXNnc3RyICIiCisiYmV6b25hcyAtLWRpc3BsYXksIC0tcXVlcnksIC0tbGlzdCwgLS1nZXQtc2VsZWN0aW9ucywgLS1jb25maWcsIC0tc2V0LCAtLXNldC0iCisic2VsZWN0aW9ucywgLS1pbnN0YWxsLCAtLXJlbW92ZSwgLS1hbGwsIC0tcmVtb3ZlLWFsbCBhxa0gLS1hdXRvIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQ5MAorbXNnaWQgIjxzdGFuZGFyZCBpbnB1dD4iCittc2dzdHIgIjxub3JtYSBlbmlnbz4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTAwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTAzCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIGFsdGVybmF0aXZlcyBmb3IgJXMuIgorbXNnc3RyICJuZW5pdSBhbHRlcm5hdGl2byBwb3IgJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUzMAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiJXMgaXMgZGFuZ2xpbmcsIGl0IHdpbGwgYmUgdXBkYXRlZCB3aXRoIGJlc3QgY2hvaWNlLiIKK21zZ2lkICIlcy8lcyBpcyBkYW5nbGluZywgaXQgd2lsbCBiZSB1cGRhdGVkIHdpdGggYmVzdCBjaG9pY2UuIgorbXNnc3RyICIlcyBcImJhbGFuY2FzXCIsIMSdaSBlc3RvcyDEnWlzZGF0aWdhdGEgcGVyIHBsZWpib25hIGVsZWt0by4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTM0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiJXMgaGFzIGJlZW4gY2hhbmdlZCAobWFudWFsbHkgb3IgYnkgYSBzY3JpcHQpLiBTd2l0Y2hpbmcgdG8gbWFudWFsICIKKyN8ICJ1cGRhdGVzIG9ubHkuIgorbXNnaWQgIiIKKyIlcy8lcyBoYXMgYmVlbiBjaGFuZ2VkIChtYW51YWxseSBvciBieSBhIHNjcmlwdCkuIFN3aXRjaGluZyB0byBtYW51YWwgIgorInVwZGF0ZXMgb25seS4iCittc2dzdHIgIiIKKyIlcyBlc3RhcyDFnWFuxJ1pdGEgKHBlcm1hbmUgYcWtIHBlcnNrcmlwdGUpLiBOaSDFnWFsdGFzIGFsIG51ciBwZXJtYW5haiAiCisixJ1pc2RhdGlnb2ouIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU0MgorIywgYy1mb3JtYXQKK21zZ2lkICJzZXR0aW5nIHVwIGF1dG9tYXRpYyBzZWxlY3Rpb24gb2YgJXMuIgorbXNnc3RyICJwcmVwYXJhZG8gZGUgYcWtdG9tYXRhIGVsZWt0byBkZSAlcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTUxCisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlICVzIGZvciAlcyBub3QgcmVnaXN0ZXJlZCwgbm90IHNldHRpbmcuIgorbXNnc3RyICJsYSBhbHRlcm5hdGl2byAlcyBwb3IgJXMgbmUgZXN0YXMgcmVnaXN0cml0YSwgbmkgbmUgZGlmaW5hcyDEnWluLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NTcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiVGhlcmUgaXMgbm8gcHJvZ3JhbSB3aGljaCBwcm92aWRlcyAlcy4iCittc2dzdHIgIkVzdGFzIG5lbml1IHByb2dyYW1vIGtpdSBwcm92aXphcyAlcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTY1IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTc1Cittc2dpZCAiTm90aGluZyB0byBjb25maWd1cmUuIgorbXNnc3RyICJOZW5pbyBwb3IgYWtvbW9kaS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTczCisjLCBjLWZvcm1hdAorbXNnaWQgIlRoZXJlIGlzIG9ubHkgb25lIGFsdGVybmF0aXZlIGluIGxpbmsgZ3JvdXAgJXM6ICVzIgorbXNnc3RyICJFc3RhcyBudXIgdW51IGFsdGVybmF0aXZvIGVuIGxhIGxpZ28tZ3J1cG8gJXM6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU4NAorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBmb3IgJXMgbm90IHJlZ2lzdGVyZWQsIG5vdCByZW1vdmluZy4iCittc2dzdHIgImxhIGFsdGVybmF0aXZvICVzIHBvciAlcyBuZSBlc3RhcyByZWdpc3RyaXRhLCBuaSBuZSBmb3JpZ2FzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1OTIKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVtb3ZpbmcgbWFudWFsbHkgc2VsZWN0ZWQgYWx0ZXJuYXRpdmUgLSBzd2l0Y2hpbmcgJXMgdG8gYXV0byBtb2RlIgorbXNnc3RyICIiCisicGVybWFuYSBmb3JpZ2FkbyBkZSBlbGVrdGl0YSBhbHRlcm5hdGl2byAtIG5pIMWdYWx0YXMgJXMgYWwgYcWtdG9tYXRhIHJlxJ1pbW8iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjE3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJhdXRvbWF0aWMgdXBkYXRlcyBvZiAlcyBhcmUgZGlzYWJsZWQsIGxlYXZpbmcgaXQgYWxvbmUuIgorbXNnaWQgImF1dG9tYXRpYyB1cGRhdGVzIG9mICVzLyVzIGFyZSBkaXNhYmxlZCwgbGVhdmluZyBpdCBhbG9uZS4iCittc2dzdHIgImHFrXRvbWF0YWogxJ1pc2RhdGlnb2ogZGUgJXMgZXN0YXMgbWFsYWt0aXZpdGFqLCBuaSBsYXNhcyDEnWluIHNvbGEuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYxOQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidG8gcmV0dXJuIHRvIGF1dG9tYXRpYyB1cGRhdGVzIHVzZSBgdXBkYXRlLWFsdGVybmF0aXZlcyAtLWF1dG8gJXMnLiIKK21zZ2lkICJ0byByZXR1cm4gdG8gYXV0b21hdGljIHVwZGF0ZXMgdXNlICclcyAtLWF1dG8gJXMnLiIKK21zZ3N0ciAiIgorInBvciByZXRyb2lyaSBhbCBhxa10b21hdGFqIMSdaXNkYXRpZ29qLCB1enUgJ3VwZGF0ZS1hbHRlcm5hdGl2ZXMgLS1hdXRvICVzJy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjM2CisjLCBjLWZvcm1hdAorbXNnaWQgInVzaW5nICVzIHRvIHByb3ZpZGUgJXMgKCVzKSBpbiAlcy4iCittc2dzdHIgIm5pIHV6YXMgJXMgcG9yIHByb3ZpemkgJXMgKCVzKSBlbiAlcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjQ0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmb3JjaW5nIHJlaW5zdGFsbGF0aW9uIG9mIGFsdGVybmF0aXZlICVzIGJlY2F1c2UgbGluayBncm91cCAlcyBpcyBicm9rZW4uIgorbXNnc3RyICIiCisibmkgZGV2aWdhcyByZWluc3RhbG9uIGRlIGxhIGFsdGVybmF0aXZvICVzIMSJYXIgbGEgbGlnby1ncnVwbyAlcyBlc3RhcyAiCisicm9tcGl0YS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjUxCisjLCBjLWZvcm1hdAorbXNnaWQgImN1cnJlbnQgYWx0ZXJuYXRpdmUgJXMgaXMgdW5rbm93biwgc3dpdGNoaW5nIHRvICVzIGZvciBsaW5rIGdyb3VwICVzLiIKK21zZ3N0ciAibnVuYSBhbHRlcm5hdGl2byAlcyBlc3RhcyBuZWtvbmF0YSwgbmkgxZ1hbsSdYXMgYWwgJXMgcG9yIGxpZ28tZ3J1cG8gJXMuIgorCisjfiBtc2dpZCAiaXQgaXMgYSBtYXN0ZXIgYWx0ZXJuYXRpdmUuIgorI34gbXNnc3RyICLEnWkgZXN0YXMgbWFzdHJhIGFsdGVybmF0aXZvLiIKKworI34gbXNnaWQgIml0IGlzIGEgc2xhdmUgb2YgJXMiCisjfiBtc2dzdHIgIsSdaSBlc3RhcyBza2xhdm8gZGUgJXMiCisKKyN+IG1zZ2lkICJjYW5ub3Qgc3RhdCAlczogJXMiCisjfiBtc2dzdHIgIm5lIHBvdmFzICdzdGF0JyAlczogJXMiCisKKyN+IG1zZ2lkICJyZWFkbGluayglcykgZmFpbGVkOiAlcyIKKyN+IG1zZ3N0ciAicmVhZGxpbmsoJXMpIG1hbHN1a2Nlc2lzOiAlcyIKKworI34gbXNnaWQgInNjYW4gb2YgJXMgZmFpbGVkOiAlcyIKKyN+IG1zZ3N0ciAic2thbmFkbyBkZSAlcyBtYWxzdWtjZXNpczogJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlY3V0ZSAlczogJXMiCisjfiBtc2dzdHIgIm1hbHN1a2Nlc2lzIGxhbsSJaSAlczogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gbWFrZSAlcyBhIHN5bWxpbmsgdG8gJXM6ICVzIgorI34gbXNnc3RyICJuZSBlYmxhcyBpZ2kgJXMgc2ltYm9sYW4gbGlnb24gYWwgJXM6ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgJXMgYXMgJXM6ICVzIgorI34gbXNnc3RyICJuZSBlYmxhcyBpbnN0YWxpICVzIGtpZWwgJXM6ICVzIgorCisjfiBtc2dpZCAid2hpbGUgd3JpdGluZyAlczogJXMiCisjfiBtc2dzdHIgImR1bSBza3JpYmFkbyBhbCAlczogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcmVhZCAlczogJXMiCisjfiBtc2dzdHIgIm5lIGVibGFzIGxlZ2kgJXM6ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGNsb3NlICVzOiAlcyIKKyN+IG1zZ3N0ciAibmUgZWJsYXMgZmVybWkgJXM6ICVzIgorCisjfiBtc2dpZCAiY2Fubm90IHdyaXRlICVzOiAlcyIKKyN+IG1zZ3N0ciAibmUgcG92YXMgc2tyaWJpICVzOiAlcyIKKworIywgZnV6enkKKyN+fCBtc2dpZCAidW5hYmxlIHRvIG9wZW4gZmlsZSAnJXMnIgorI34gbXNnaWQgInVuYWJsZSB0byByZW5hbWUgZmlsZSAnJXMnIHRvICclcyciCisjfiBtc2dzdHIgIm1hbGVibGFzIG1hbGZlcm1pIGxhIGRvc2llcm9uICclcyciCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gdW5idWZmZXIgYCUuMjU1cyciCisjfiBtc2dzdHIgIm1hbGVibGFzIG1hbGJ1ZnJpZ2kgJyUuMjU1cyciCisKKyN+IG1zZ2lkICJwYXJ0IGZpbGUgYCUuMjUwcycgaGFzIHRyYWlsaW5nIGdhcmJhZ2UiCisjfiBtc2dzdHIgImxhIHBhcnQtZG9zaWVybyAnJS4yNTBzJyBoYXZhcyB2b3N0YW4gcnViYcS1b24iCisKKyN+IG1zZ2lkICJzaXplICU3ZCBvY2N1cnMgJTVkIHRpbWVzXG4iCisjfiBtc2dzdHIgImdyYW5kZWNvICU3ZCBva2F6YXMgJTVkIGZvamVcbiIKKworI34gbXNnaWQgIm91dCBvZiBtZW1vcnkgcHVzaGluZyBlcnJvciBoYW5kbGVyOiAiCisjfiBtc2dzdHIgIm1hbmtvIGRlIG1lbW9ybyBqZSBlbnZpY2lnbyBkZSBlcmFyLXRyYWt0aWxvOiIKKworI34gbXNnaWQgInVuYWJsZSB0byB1bmxvY2sgZHBrZyBzdGF0dXMgZGF0YWJhc2UiCisjfiBtc2dzdHIgIm1hbGVibGFzIG1hbMWdbG9zaSBsYSBzdGF0by1kYXR1bWJhem9uIGRlIGRwa2ciCisKKyN+IG1zZ2lkICJjb3B5IGluZm8gZmlsZSBgJS4yNTVzJyIKKyN+IG1zZ3N0ciAia29waWkgaW5mb3JtLWRvc2llcm8gJyUuMjU1cyciCisKKyN+IG1zZ2lkICJwYXJzZSBlcnJvciIKKyN+IG1zZ3N0ciAiZXJhcm8gZGUgYW5hbGl6YWRvIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHdyaXRlIHBhcnNpbmcgd2FybmluZyIKKyN+IG1zZ3N0ciAibWFsc3VrY2VzbyBkdW0gc2tyaWJvIGRlIGFuYWxpemEgYXZlcnRvIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGxvY2sgdHJpZ2dlcnMgYXJlYSIKKyN+IG1zZ3N0ciAibWFsZWJsYXMgxZ1sb3NpIGFyZW9uIGRlIGVraWdpbG9qIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHJ1biAlcyAoJS4yNTBzKSIKKyN+IG1zZ3N0ciAibWFsc3VrY2VzbyBwbGVudW1pICVzICglLjI1MHMpIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgc2hlbGwgKCUuMjUwcykiCisjfiBtc2dzdHIgIm1hbHN1a2Nlc28gbGFuxIlpIMWdZWxvbiAoJS4yNTBzKSIKKworI34gbXNnaWQgInVuYWJsZSB0byBjaGVjayBmb3IgZXhpc3RlbmNlIG9mIGAlLjI1MHMnIgorI34gbXNnc3RyICJtYWxlYmxhcyBrb250cm9saSBsYSBla3ppc3RvbiBkZSAnJS4yNTBzJyIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIHJtIGZvciBjbGVhbnVwIgorI34gbXNnc3RyICJtYWxzdWtjZXNvIGR1bSBsYW7EiW8gZGUgcm0gcG9yIHB1cmlnYWRvIgorCisjfiBtc2dpZCAiIgorI34gIiVzIGRlYnVnZ2luZyBvcHRpb24sIC0tZGVidWc9PG9jdGFsPiBvciAtRDxvY3RhbD46XG4iCisjfiAiXG4iCisjfiAiIG51bWJlciAgcmVmLiBpbiBzb3VyY2UgICBkZXNjcmlwdGlvblxuIgorI34gIiAgICAgIDEgICBnZW5lcmFsICAgICAgICAgICBHZW5lcmFsbHkgaGVscGZ1bCBwcm9ncmVzcyBpbmZvcm1hdGlvblxuIgorI34gIiAgICAgIDIgICBzY3JpcHRzICAgICAgICAgICBJbnZvY2F0aW9uIGFuZCBzdGF0dXMgb2YgbWFpbnRhaW5lciBzY3JpcHRzXG4iCisjfiAiICAgICAxMCAgIGVhY2hmaWxlICAgICAgICAgIE91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZFxuIgorI34gIiAgICAxMDAgICBlYWNoZmlsZWRldGFpbCAgICBMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZFxuIgorI34gIiAgICAgMjAgICBjb25mZiAgICAgICAgICAgICBPdXRwdXQgZm9yIGVhY2ggY29uZmlndXJhdGlvbiBmaWxlXG4iCisjfiAiICAgIDIwMCAgIGNvbmZmZGV0YWlsICAgICAgIExvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZVxuIgorI34gIiAgICAgNDAgICBkZXBjb24gICAgICAgICAgICBEZXBlbmRlbmNpZXMgYW5kIGNvbmZsaWN0c1xuIgorI34gIiAgICA0MDAgICBkZXBjb25kZXRhaWwgICAgICBMb3RzIG9mIGRlcGVuZGVuY2llcy9jb25mbGljdHMgb3V0cHV0XG4iCisjfiAiICAxMDAwMCAgIHRyaWdnZXJzICAgICAgICAgIFRyaWdnZXIgYWN0aXZhdGlvbiBhbmQgcHJvY2Vzc2luZ1xuIgorI34gIiAgMjAwMDAgICB0cmlnZ2Vyc2RldGFpbCAgICBMb3RzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnNcbiIKKyN+ICIgIDQwMDAwICAgdHJpZ2dlcnNzdHVwaWQgICAgU2lsbHkgYW1vdW50cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzXG4iCisjfiAiICAgMTAwMCAgIHZlcnl2ZXJib3NlICAgICAgIExvdHMgb2YgZHJpdmVsIGFib3V0IGVnIHRoZSBkcGtnL2luZm8gIgorI34gImRpcmVjdG9yeVxuIgorI34gIiAgIDIwMDAgICBzdHVwaWRseXZlcmJvc2UgICBJbnNhbmUgYW1vdW50cyBvZiBkcml2ZWxcbiIKKyN+ICJcbiIKKyN+ICJEZWJ1Z2dpbmcgb3B0aW9ucyBhcmUgYmUgbWl4ZWQgdXNpbmcgYml0d2lzZS1vci5cbiIKKyN+ICJOb3RlIHRoYXQgdGhlIG1lYW5pbmdzIGFuZCB2YWx1ZXMgYXJlIHN1YmplY3QgdG8gY2hhbmdlLlxuIgorI34gbXNnc3RyICIiCisjfiAiJXMgc2VuZXJhcmlnYSBlbGVrdGVibG8sIC0tZGVidWc9PG9rdW1vPiBvciAtRDxva3Vtbz46XG4iCisjfiAiXG4iCisjfiAiIG51bWVybyAgcmVmLiBlbiBmb250byAgICAgcHJpc2tyaWJvXG4iCisjfiAiICAgICAgMSAgIGdlbmVyYWwgICAgICAgICAgIMScZW5lcmFsZSB1dGlsYSBwcm9ncmVzLWluZm9ybW9cbiIKKyN+ICIgICAgICAyICAgc2NyaXB0cyAgICAgICAgICAgQWx2b2tvIGthaiBzdGF0byBkZSBza3JpcHRvaiBkZSBwYWt6b3JnYW50b1xuIgorI34gIiAgICAgMTAgICBlYWNoZmlsZSAgICAgICAgICBFbGlnbyBwb3IgxIlpdSBkb3NpZXJvIHByb2Nleml0YVxuIgorI34gIiAgICAxMDAgICBlYWNoZmlsZWRldGFpbCAgICBNdWx0ZSBkYSBlbGlnbyBwb3IgxIlpdSBkb3NpZXJvIHByb2Nleml0YVxuIgorI34gIiAgICAgMjAgICBjb25mZiAgICAgICAgICAgICBFbGlnbyBwb3IgxIlpdSBha29tb2RhIGRvc2llcm9cbiIKKyN+ICIgICAgMjAwICAgY29uZmZkZXRhaWwgICAgICAgTXVsdGUgZGEgZWxpZ28gcG9yIMSJaXUgYWtvbW9kYSBkb3NpZXJvXG4iCisjfiAiICAgICA0MCAgIGRlcGNvbiAgICAgICAgICAgIERlcGVuZG9qIGthaiBrb25mbGlrdG9qXG4iCisjfiAiICAgIDQwMCAgIGRlcGNvbmRldGFpbCAgICAgIE11bHRlIGRhIGVsaWdvIHBvciBkZXBlbmRvai9rb25mbGlrdG9qXG4iCisjfiAiICAxMDAwMCAgIHRyaWdnZXJzICAgICAgICAgIEFrdGl2aWdvIGthaiBwcm9jZXphZG8gZGUgZWtpZ2lsb2pcbiIKKyN+ICIgIDIwMDAwICAgdHJpZ2dlcnNkZXRhaWwgICAgTXVsdGUgZGEgZWxpZ29qIHByaSBla2lnaWxvalxuIgorI34gIiAgNDAwMDAgICB0cmlnZ2Vyc3N0dXBpZCAgICBTdHVsdGUgaW9tZWdlIGRhIGVsaWdvaiBwcmkgZWtpZ2lsb2pcbiIKKyN+ICIgICAxMDAwICAgdmVyeXZlcmJvc2UgICAgICAgTXVsdGUgZGEgc2FsaXZvIHByaSBla3plbXBsZSBsYSBkb3NpZXJ1am8gIgorI34gImRwa2cvaW5mb1xuIgorI34gIiAgIDIwMDAgICBzdHVwaWRseXZlcmJvc2UgICBTdHVsdGUgaW9tZWdlIGRhIHNhbGl2b1xuIgorI34gIlxuIgorI34gIlNlbmVyYXJpZ2FqIGVsZWt0ZWJsb2ogZXN0YXMgbWlrc2VibGFqIHBlciBsYcWtYml0YS1PUi5cbiIKKyN+ICJSaW1hcmt1IGtlIHNpZ25pZm9qIGthaiB2YWxvcm9qIHBvdm9zIMWdYW7EnWkuXG4iCisKKyN+IG1zZ2lkICIiCisjfiAiJXMgZm9yY2luZyBvcHRpb25zIC0gY29udHJvbCBiZWhhdmlvdXIgd2hlbiBwcm9ibGVtcyBmb3VuZDpcbiIKKyN+ICIgIHdhcm4gYnV0IGNvbnRpbnVlOiAgLS1mb3JjZS08dGhpbmc+LDx0aGluZz4sLi4uXG4iCisjfiAiICBzdG9wIHdpdGggZXJyb3I6ICAgIC0tcmVmdXNlLTx0aGluZz4sPHRoaW5nPiwuLi4gfCAtLW5vLWZvcmNlLSIKKyN+ICI8dGhpbmc+LC4uLlxuIgorI34gIiBGb3JjaW5nIHRoaW5nczpcbiIKKyN+ICIgIGFsbCBbIV0gICAgICAgICAgICAgICAgU2V0IGFsbCBmb3JjZSBvcHRpb25zXG4iCisjfiAiICBkb3duZ3JhZGUgWypdICAgICAgICAgIFJlcGxhY2UgYSBwYWNrYWdlIHdpdGggYSBsb3dlciB2ZXJzaW9uXG4iCisjfiAiICBjb25maWd1cmUtYW55ICAgICAgICAgIENvbmZpZ3VyZSBhbnkgcGFja2FnZSB3aGljaCBtYXkgaGVscCB0aGlzIG9uZVxuIgorI34gIiAgaG9sZCAgICAgICAgICAgICAgICAgICBQcm9jZXNzIGluY2lkZW50YWwgcGFja2FnZXMgZXZlbiB3aGVuIG9uIGhvbGRcbiIKKyN+ICIgIGJhZC1wYXRoICAgICAgICAgICAgICAgUEFUSCBpcyBtaXNzaW5nIGltcG9ydGFudCBwcm9ncmFtcywgcHJvYmxlbXMgIgorI34gImxpa2VseVxuIgorI34gIiAgbm90LXJvb3QgICAgICAgICAgICAgICBUcnkgdG8gKGRlKWluc3RhbGwgdGhpbmdzIGV2ZW4gd2hlbiBub3Qgcm9vdFxuIgorI34gIiAgb3ZlcndyaXRlICAgICAgICAgICAgICBPdmVyd3JpdGUgYSBmaWxlIGZyb20gb25lIHBhY2thZ2Ugd2l0aCBhbm90aGVyXG4iCisjfiAiICBvdmVyd3JpdGUtZGl2ZXJ0ZWQgICAgIE92ZXJ3cml0ZSBhIGRpdmVydGVkIGZpbGUgd2l0aCBhbiB1bmRpdmVydGVkICIKKyN+ICJ2ZXJzaW9uXG4iCisjfiAiICBiYWQtdmVyaWZ5ICAgICAgICAgICAgIEluc3RhbGwgYSBwYWNrYWdlIGV2ZW4gaWYgaXQgZmFpbHMgYXV0aGVudGljaXR5ICIKKyN+ICJjaGVja1xuIgorI34gIiAgZGVwZW5kcy12ZXJzaW9uIFshXSAgICBUdXJuIGRlcGVuZGVuY3kgdmVyc2lvbiBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzXG4iCisjfiAiICBkZXBlbmRzIFshXSAgICAgICAgICAgIFR1cm4gYWxsIGRlcGVuZGVuY3kgcHJvYmxlbXMgaW50byB3YXJuaW5nc1xuIgorI34gIiAgY29uZm5ldyBbIV0gICAgICAgICAgICBBbHdheXMgdXNlIHRoZSBuZXcgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHRcbiIKKyN+ICIgIGNvbmZvbGQgWyFdICAgICAgICAgICAgQWx3YXlzIHVzZSB0aGUgb2xkIGNvbmZpZyBmaWxlcywgZG9uJ3QgcHJvbXB0XG4iCisjfiAiICBjb25mZGVmIFshXSAgICAgICAgICAgIFVzZSB0aGUgZGVmYXVsdCBvcHRpb24gZm9yIG5ldyBjb25maWcgZmlsZXMgaWYgIgorI34gIm9uZVxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICBpcyBhdmFpbGFibGUsIGRvbid0IHByb21wdC4gSWYgbm8gZGVmYXVsdCBjYW4gYmUgIgorI34gImZvdW5kLFxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICB5b3Ugd2lsbCBiZSBwcm9tcHRlZCB1bmxlc3Mgb25lIG9mIHRoZSBjb25mb2xkICIKKyN+ICJvclxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICBjb25mbmV3IG9wdGlvbnMgaXMgYWxzbyBnaXZlblxuIgorI34gIiAgY29uZm1pc3MgWyFdICAgICAgICAgICBBbHdheXMgaW5zdGFsbCBtaXNzaW5nIGNvbmZpZyBmaWxlc1xuIgorI34gIiAgY29uZmFzayBbIV0gICAgICAgICAgICBPZmZlciB0byByZXBsYWNlIGNvbmZpZyBmaWxlcyB3aXRoIG5vIG5ldyAiCisjfiAidmVyc2lvbnNcbiIKKyN+ICIgIGJyZWFrcyBbIV0gICAgICAgICAgICAgSW5zdGFsbCBldmVuIGlmIGl0IHdvdWxkIGJyZWFrIGFub3RoZXIgcGFja2FnZVxuIgorI34gIiAgY29uZmxpY3RzIFshXSAgICAgICAgICBBbGxvdyBpbnN0YWxsYXRpb24gb2YgY29uZmxpY3RpbmcgcGFja2FnZXNcbiIKKyN+ICIgIGFyY2hpdGVjdHVyZSBbIV0gICAgICAgUHJvY2VzcyBldmVuIHBhY2thZ2VzIHdpdGggd3JvbmcgYXJjaGl0ZWN0dXJlXG4iCisjfiAiICBvdmVyd3JpdGUtZGlyIFshXSAgICAgIE92ZXJ3cml0ZSBvbmUgcGFja2FnZSdzIGRpcmVjdG9yeSB3aXRoIGFub3RoZXIncyAiCisjfiAiZmlsZVxuIgorI34gIiAgdW5zYWZlLWlvIFshXSAgICAgICAgICBEbyBub3QgcGVyZm9ybSBzYWZlIEkvTyBvcGVyYXRpb25zIHdoZW4gIgorI34gInVucGFja2luZ1xuIgorI34gIiAgcmVtb3ZlLXJlaW5zdHJlcSBbIV0gICBSZW1vdmUgcGFja2FnZXMgd2hpY2ggcmVxdWlyZSBpbnN0YWxsYXRpb25cbiIKKyN+ICIgIHJlbW92ZS1lc3NlbnRpYWwgWyFdICAgUmVtb3ZlIGFuIGVzc2VudGlhbCBwYWNrYWdlXG4iCisjfiAiXG4iCisjfiAiV0FSTklORyAtIHVzZSBvZiBvcHRpb25zIG1hcmtlZCBbIV0gY2FuIHNlcmlvdXNseSBkYW1hZ2UgeW91ciAiCisjfiAiaW5zdGFsbGF0aW9uLlxuIgorI34gIkZvcmNpbmcgb3B0aW9ucyBtYXJrZWQgWypdIGFyZSBlbmFibGVkIGJ5IGRlZmF1bHQuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICIlcyBwZXJmb3J0aWdhaiBlbGVrdGVibG9qIC0gcmVnYWRvIGRlIGtvbmR1dG8ga2lhbSBwcm9ibGVtb2ogb2them9zOlxuIgorI34gIiAgYXZlcnRpIHNlZCBkYcWtcmlnaTogIC0tZm9yY2UtPGFmZXJvPiw8YWZlcm8+LC4uLlxuIgorI34gIiAgaGFsdGkga3VuIGVyYXJvOiAgICAtLXJlZnVzZS08YWZlcm8+LDxhZmVybz4sLi4uIHwgLS1uby1mb3JjZS0iCisjfiAiPGFmZXJvPiwuLi5cbiIKKyN+ICIgUGVyZm9ydGFudGUgYWZlcm9qbjpcbiIKKyN+ICIgIGFsbCBbIV0gICAgICAgICAgICAgICAgxZxhbHRpIMSJaXVqbiBwZXJmb3J0LWVsZWt0ZWJsb2puXG4iCisjfiAiICBkb3duZ3JhZGUgWypdICAgICAgICAgIEFuc3RhdGHFrWkgcGFrb24gcGVyIHBsaSBtYWxub3ZhIHZlcnNpb1xuIgorI34gIiAgY29uZmlndXJlLWFueSAgICAgICAgICBBa29tb2RpIGl1biBham4gcGFrb24ga2l1IHBvdnVzIGhlbHBpIHRpdW4gxIlpXG4iCisjfiAiICBob2xkICAgICAgICAgICAgICAgICAgIFByb2NlemkgZXZlbnR1YWxham4gcGFrb2puIGXEiSBraWFtIHRlbmF0YWpcbiIKKyN+ICIgIGJhZC1wYXRoICAgICAgICAgICAgICAgUEFUSCBuZSBhdGluZ2FzIGdyYXZham4gcHJvZ3JhbW9qbiwgcHJvYmxlbW9qICIKKyN+ICJ2ZW5vc1xuIgorI34gIiAgbm90LXJvb3QgICAgICAgICAgICAgICBQcm92aSAobWFsKWluc3RhbGkgYWZlcm9qbiBlxIkga2lhbSBuZSBlc3RhcyAiCisjfiAiJ3Jvb3QnXG4iCisjfiAiICBvdmVyd3JpdGUgICAgICAgICAgICAgIEFuc3RhdGHFrWkgZG9zaWVyb24gZWwgdW51IHBha28gcGVyIGFsaWFcbiIKKyN+ICIgIG92ZXJ3cml0ZS1kaXZlcnRlZCAgICAgQW5zdGF0YcWtaSBkZXR1cm5pdGFuIGRvc2llcm9uIHBlciBvcmlnaW5hbGEgIgorI34gInZlcnNpb1xuIgorI34gIiAgYmFkLXZlcmlmeSAgICAgICAgICAgICBJbnN0YWxpIHBha29uIGXEiSBzZSDEnWkgbWFsc3VrY2VzYXMgamUgIgorI34gImHFrXRlbnRpa2lnYSBrb250cm9sb1xuIgorI34gIiAgZGVwZW5kcy12ZXJzaW9uIFshXSAgICBJZ2kgZGVwZW5kby12ZXJzaWFqbiBwcm9ibGVtb2puIGFsIGF2ZXJ0b2pcbiIKKyN+ICIgIGRlcGVuZHMgWyFdICAgICAgICAgICAgSWdpIMSJaXVqbiBkZXBlbmRvLXByb2JsZW1vam4gYWwgYXZlcnRvalxuIgorI34gIiAgY29uZm5ldyBbIV0gICAgICAgICAgICDEiGlhbSB1emkgbGEgbm92YWpuIGFrb21vZGFqbiBkb3NpZXJvam4sIGthaiBuZSAiCisjfiAicHJpZGVtYW5kaVxuIgorI34gIiAgY29uZm9sZCBbIV0gICAgICAgICAgICDEiGlhbSB1emkgbGEgbWFsbm92YWpuIGFrb21vZGFqbiBkb3NpZXJvam4sIGthaiAiCisjfiAibmUgcHJpZGVtYW5kaVxuIgorI34gIiAgY29uZmRlZiBbIV0gICAgICAgICAgICBVemkgbGEgaW1wbGljaXRhbiBlbGVrdGVibG9uIHBvciBub3ZhaiBha29tb2RhaiAiCisjfiAiZG9zaWVyb2oga29uZGnEiWUga2UgxJ1pXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BvbmVibHUsIGthaiBuZSBwcmlkZW1hbmRpLiBTZSBuZW5pdSAiCisjfiAiaW1wbGljaXRhxLVvIHBvdmFzIGVzdGkgdHJvdmF0YSxcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgdmkgZXN0b3MgcHJpZGVtYW5kYXRhLCBrcm9tIHNlIHVudSBlbCBsYSAiCisjfiAiZWxla3RlYmxvaiBjb25mb2xkIGHFrSBjb25mbmV3IGVzdG9zIGFua2HFrSB0cmFuc2Rvbml0YVxuIgorI34gIiAgY29uZm1pc3MgWyFdICAgICAgICAgICDEiGlhbSBpbnN0YWxpIG1hbmthbnRhaiBha29tb2RhaiBkb3NpZXJvalxuIgorI34gIiAgY29uZmFzayBbIV0gICAgICAgICAgICBQcm9wb25pIGFuc3RhdGHFrWlnaSBkb3NpZXJvam4gY29uZmlnIGt1biBuZW5pdSAiCisjfiAibm92YSB2ZXJzaW9cbiIKKyN+ICIgIGJyZWFrcyBbIV0gICAgICAgICAgICAgSW5zdGFsaSBlxIkgc2UgdGlvIHJvbXB1cyBhbGlhbiBwYWtvblxuIgorI34gIiAgY29uZmxpY3RzIFshXSAgICAgICAgICBQZXJtZXNpIGluc3RhbG9uIGRlIGtvbmZsaWt0YW50YWogcGFrb2puXG4iCisjfiAiICBhcmNoaXRlY3R1cmUgWyFdICAgICAgIFByb2NlemkgZcSJIHBha29qbiBrdW4gbWFsxJ11c3RhbiBhcmtpdGVrdHVyb25cbiIKKyN+ICIgIG92ZXJ3cml0ZS1kaXIgWyFdICAgICAgQW5zdGF0YcWtaSB1bnUgcGFrLWRvc2llcnVqb24gcGVyIGRvc2llcm8gZGUgIgorI34gImFsaWFcbiIKKyN+ICIgIHVuc2FmZS1pbyBbIV0gICAgICAgICAgTmUgYXBsaWt1IHNla3VyYW4gZW4vZWxpZ2FqbiBvcGVyYWNpb2puIGR1bSAiCisjfiAibWFscGFrYWRvXG4iCisjfiAiICByZW1vdmUtcmVpbnN0cmVxIFshXSAgIEZvcmlnaSBwYWtvam4ga2l1aiBwb3N0dWxhcyBpbnN0YWxhZG9uXG4iCisjfiAiICByZW1vdmUtZXNzZW50aWFsIFshXSAgIEZvcmlnaSBlc2VuY2FuIHBha29uXG4iCisjfiAiXG4iCisjfiAiQVZFUlRPIC0gdXpvIGRlIGVsZWt0ZWJsb2ogbWFya2F0YWogcGVyIFshXSBwb3ZhcyBzZXJpb3plIGRpZmVrdGkgdmlhbiAiCisjfiAic2lzdGVtb24uXG4iCisjfiAiUGVyZm9ydGFqIGVsZWt0ZWJsb2ogbWFya2F0YWogcGVyIFsqXSBlc3RhcyBlYmxpZ2F0YWogYXByaW9yZS5cbiIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIGRwa2ctc3BsaXQgdG8gc2VlIGlmIGl0J3MgcGFydCBvZiBhIG11bHRpcGFydGVyIgorI34gbXNnc3RyICIiCisjfiAibWFsc3VrY2VzbyBkdW0gbGFuxIlvIGRlIGRwa2ctc3BsaXQgcG9yIGtvbnRyb2xpIMSJdSDEnWkgYXBhcnRlbmFzIGFsIGl1ICIKKyN+ICInbXVsdGlwYXJ0ZXInIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWNsIGRlYnNpZy12ZXJpZnkiCisjfiBtc2dzdHIgIm1hbHN1a2Nlc28gZHVtIHBsZW51bW8gZGUgZXhlY2wgZGVic2lnLXZlcmlmeSIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIGRwa2ctZGViIHRvIGV4dHJhY3QgY29udHJvbCBpbmZvcm1hdGlvbiIKKyN+IG1zZ3N0ciAibWFsc3VrY2VzbyBkdW0gbGFuxIlvIGRlIGRwa2ctZGViIHBvciBlbHRpcmkgcmVnLWluZm9ybW9uIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGV4ZWMgZHBrZy1kZWIgdG8gZ2V0IGZpbGVzeXN0ZW0gYXJjaGl2ZSIKKyN+IG1zZ3N0ciAibWFsZWJsYXMgbGFuxIlpIGRwa2ctZGViIHBvciByaWNldmkgZG9zaWVyc2lzdGVtYW4gYXJraXZvbiIKKworI34gbXNnaWQgInVuYWJsZSB0byBkZWxldGUgZGlzYXBwZWFyaW5nIGNvbnRyb2wgaW5mbyBmaWxlIGAlLjI1MHMnIgorI34gbXNnc3RyICJtYWxlYmxhcyBmb3JpZ2kgbGEgbWFsYXBlcmludGFuIHJlZy1pbmZvcm1hbiBkb3NpZXJvbiAnJS4yNTBzJyIKKworI34gbXNnaWQgImRwa2c6ICVzIG5vdCBmb3VuZC5cbiIKKyN+IG1zZ3N0ciAiZHBrZzogJXMgbmUgdHJvdml0ZS5cbiIKKworI34gbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byAuLi4vREVCSUFOIgorI34gbXNnc3RyICJtYWxzdWtjZXNvIGR1bSBwcm92byBhdGluZ2kgYWwgLi4uL0RFQklBTiIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIHRhciAtY2YiCisjfiBtc2dzdHIgIm1hbHN1a2Nlc28gZHVtIGxhbsSJbyBkZSB0YXIgLWNmIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIG1ha2UgdG1wZmlsZSAoY29udHJvbCkiCisjfiBtc2dzdHIgIm1hbHN1a2Nlc28gZHVtIGtyZW8gZGUgdG1wZmlsZSAocmVnYWRvKSIKKworI34gbXNnaWQgImZhaWxlZCB0byB1bmxpbmsgdG1wZmlsZSAoY29udHJvbCksICVzIgorI34gbXNnc3RyICJtYWxzdWtjZXNvIGR1bSBmb3JpZ28gZGUgdG1wZmlsZSAocmVnYWRvKSwgJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gcmV3aW5kIHRtcGZpbGUgKGNvbnRyb2wpIgorI34gbXNnc3RyICJtYWxzdWtjZXNvIGR1bSByZXRyb2lnbyBkZSB0bXBmaWxlIChyZWdhZG8pIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGZzdGF0IHRtcGZpbGUgKGNvbnRyb2wpIgorI34gbXNnc3RyICJtYWxzdWtjZXNvIGR1bSBhcGxpa28gZGUgZnN0YXQgYWwgdG1wZmlsZSAocmVnYWRvKSIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIGZpbmQiCisjfiBtc2dzdHIgIm1hbHN1a2Nlc28gZHVtIGxhbsSJbyBkZSBmaW5kIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgc2ggLWMgbXYgZm9vLyogJmMiCisjfiBtc2dzdHIgIm1hbHN1a2Nlc28gZHVtIHBsZW51bW8gZGUgc2ggLWMgbXYgZm9vLyogJmMiCisKKyN+IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSAlLjI1MHMgbGVuZ3RoIGNvbnRhaW5zIG51bGxzIgorI34gbXNnc3RyICIiCisjfiAibGEgZG9zaWVybyAnJS4yNTBzJyBlc3RhcyBkaXNyb21waXRhIC0gbG9uZ2VjbyBkZSAlLjI1MHMgZW5oYXZhcyBudWxvam4iCisKKyN+IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBuZWdhdGl2ZSBtZW1iZXIgbGVuZ3RoICV6aSIKKyN+IG1zZ3N0ciAibGEgZG9zaWVybyAnJS4yNTBzJyBlc3RhcyBkaXNyb21waXRhIC0gbmVnYXRpdmEgbG9uZ2VjbyBkZSBhbm8gJXppIgorCisjfiBtc2dpZCAiZmFpbGVkIGdldHRpbmcgdGhlIGN1cnJlbnQgZmlsZSBwb3NpdGlvbiIKKyN+IG1zZ3N0ciAibWFsc3VrY2VzbyBkdW0gZWxwcmVubyBkZSBsYSBudW5hIGRvc2llci1wb3ppY2lvIgorCisjfiBtc2dpZCAiZmFpbGVkIHNldHRpbmcgdGhlIGN1cnJlbnQgZmlsZSBwb3NpdGlvbiIKKyN+IG1zZ3N0ciAibWFsc3VrY2VzbyBkdW0gZGlmaW5vIGRlIGxhIG51bmEgZG9zaWVyLXBvemljaW8iCisKKyN+IG1zZ2lkICJ2ZXJzaW9uIG51bWJlciIKKyN+IG1zZ3N0ciAidmVyc2lhIG51bWVybyIKKworI34gbXNnaWQgIm1lbWJlciBsZW5ndGgiCisjfiBtc2dzdHIgImxvbmdlY28gZGUgYW5vIgorCisjfiBtc2dpZCAiaGVhZGVyIGluZm8gbWVtYmVyIgorI34gbXNnc3RyICJhbm8gZGUgZGF0dW1rYXAtaW5mb3JtbyIKKworI34gbXNnaWQgInNraXBwZWQgY29udHJvbCBhcmVhIGZyb20gJXMiCisjfiBtc2dzdHIgInByZXRlcnBhc2lzIHJlZy1hcmVvIGVsICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSB0ZW1wb3JhcnkgZGlyZWN0b3J5IgorI34gbXNnc3RyICJtYWxzdWtjZXNvIGR1bSBrcmVvIGRlIHByb3Zpem9yYSBkb3NpZXJ1am8iCisKKyN+IG1zZ2lkICJpbmZvX3NwZXciCisjfiBtc2dzdHIgImluZm9fc3BldyAoZWzEtWV0bykiCisKKyN+IG1zZ2lkICJpbmZvIGxlbmd0aCIKKyN+IG1zZ3N0ciAiaW5mb3JtYXJvLWxvbmdlY28iCisKKyN+IG1zZ2lkICJ0b3RhbCBsZW5ndGgiCisjfiBtc2dzdHIgImVudHV0YSBsb25nZWNvIgorCisjfiBtc2dpZCAiZGF0YSBsZW5ndGgiCisjfiBtc2dzdHIgImRhdHVtYXItbG9uZ2VjbyIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIGRwa2ctZGViIHRvIGV4dHJhY3QgZmllbGQgdmFsdWUiCisjfiBtc2dzdHIgIm1hbHN1a2Nlc28gZHVtIGxhbsSJbyBkZSBkcGtnLWRlYiBwb3IgZWxwcmVuaSBrYW1wLXZhbG9yb24iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gc3RhdCAlczogJXMiCisjfiBtc2dzdHIgIm5lIGVibGFzICdzdGF0JyAlczogJXMiCisKKyN+IG1zZ2lkICJzbGF2ZSBuYW1lICVzIGR1cGxpY2F0ZWQiCisjfiBtc2dzdHIgInNrbGF2LW5vbW8gJXMgZHVvYmxpZ2l0YSIKKworI34gbXNnaWQgInNsYXZlIGxpbmsgJXMgZHVwbGljYXRlZCIKKyN+IG1zZ3N0ciAic2tsYXYtbGlnbyAlcyBkdW9ibGlnaXRhIgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9wby9lcy5nbW8gYi9kcGtnLTEuMTYuMS4xL3BvL2VzLmdtbwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hZDk3MmM0Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9wby9lcy5nbW8KQmluYXJ5IGZpbGVzIGRpZmZlcgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9wby9lcy5wbyBiL2Rwa2ctMS4xNi4xLjEvcG8vZXMucG8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTFjMTUxOAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvcG8vZXMucG8KQEAgLTAsMCArMSw4MDEwIEBACisjIFRyYWR1Y2Npw7NuIGRlIGxvcyBtZW5zYWplcyBkZWwgcHJvZ3JhbWEgZHBrZyBkZSBEZWJpYW4gYWwgZXNwYcOxb2wKKyMKKyMgQ29weXJpZ2h0IMKpIDE5OTktMjAxMCBTb2Z0d2FyZSBpbiB0aGUgUHVibGljIEludGVyZXN0LgorIworIyBUaGlzIGZpbGUgaXMgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIHNhbWUgbGljZW5zZSBhcyB0aGUgZHBrZyBwYWNrYWdlLgorIworIyBDdXJyZW50IHRyYW5zbGF0b3I6CisjCisjIEphdmllciBGZXJuYW5kZXotU2FuZ3Vpbm8gUGVuYSA8amZzQGNvbXB1dGVyLm9yZz4sIDIwMDAsMjAwNC0yMDA4LCAyMDEwCisjCisjIFBhc3QgVHJhbnNsYXRvcnMgYW5kIHJldmlld2VyczoKKyMKKyMgICAtIE5pY29sYXMgTGljaHRtYWllciA8bmlja0BkZWJpYW4ub3JnPiwgMTk5OS4KKyMgICAtIFRpbmd1YXJvIEJhcnJlbm8gRGVsZ2FkbyA8dGJhcnJlbm9AZGViaWFuLm9yZz4sIDE5OTkuCisjICAgLSBUb21hcyBCYXV0aXN0YSA8YmF1dGlzdGFAY21hLnVscGdjLmVzPiwgMjAwMC4KKyMgICAtIFNhbnRpYWdvIFZpbGEgPHNhbnZpbGFAZGViaWFuLm9yZz4sIDIwMDAsIDIwMDEsIDIwMDQuCisjCisjICAgVHJhZHVjdG9yZXMsIHNpIG5vIGNvbm9jZSBlbCBmb3JtYXRvIFBPLCBtZXJlY2UgbGEgcGVuYSBsZWVyIGxhIAorIyAgIGRvY3VtZW50YWNpw7NuIGRlIGdldHRleHQsIGVzcGVjaWFsbWVudGUgbGFzIHNlY2Npb25lcyBkZWRpY2FkYXMgYSBlc3RlCisjICAgZm9ybWF0bywgcG9yIGVqZW1wbG8gZWplY3V0YW5kbzoKKyMgICAgICAgICAgaW5mbyAtbiAnKGdldHRleHQpUE8gRmlsZXMnCisjICAgICAgICAgIGluZm8gLW4gJyhnZXR0ZXh0KUhlYWRlciBFbnRyeScKKyMKKyMgIEVxdWlwbyBkZSB0cmFkdWNjacOzbiBhbCBlc3Bhw7FvbCwgcG9yIGZhdm9yIGxlYW4gYW50ZXMgZGUgdHJhZHVjaXIKKyMgIGxvcyBzaWd1aWVudGVzIGRvY3VtZW50b3M6CisjCisjICAtIEVsIHByb3llY3RvIGRlIHRyYWR1Y2Npw7NuIGRlIERlYmlhbiBhbCBlc3Bhw7FvbAorIyAgICBodHRwOi8vd3d3LmRlYmlhbi5vcmcvaW50bC9zcGFuaXNoLworIyAgICBlc3BlY2lhbG1lbnRlIGxhcyBub3RhcyB5IG5vcm1hcyBkZSB0cmFkdWNjacOzbiBlbgorIyAgICBodHRwOi8vd3d3LmRlYmlhbi5vcmcvaW50bC9zcGFuaXNoL25vdGFzCisjCisjICAtIExhIGd1w61hIGRlIHRyYWR1Y2Npw7NuIGRlIHBvJ3MgZGUgZGViY29uZjoKKyMgICAgL3Vzci9zaGFyZS9kb2MvcG8tZGViY29uZi9SRUFETUUtdHJhbnMKKyMgICAgbyBodHRwOi8vd3d3LmRlYmlhbi5vcmcvaW50bC9sMTBuL3BvLWRlYmNvbmYvUkVBRE1FLXRyYW5zCisjCisjICBTaSB0aWVuZSBkdWRhcyBvIGNvbnN1bHRhcyBzb2JyZSBlc3RhIHRyYWR1Y2Npw7NuIGNvbnN1bHRlIGNvbiBlbCDDumx0aW1vCisjICB0cmFkdWN0b3IgKGNhbXBvIExhc3QtVHJhbnNsYXRvcikgeSBwb25nYSBlbiBjb3BpYSBhIGxhIGxpc3RhIGRlCisjICB0cmFkdWNjacOzbiBkZSBEZWJpYW4gYWwgZXNwYcOxb2wgKDxkZWJpYW4tbDEwbi1zcGFuaXNoQGxpc3RzLmRlYmlhbi5vcmc+KQorbXNnaWQgIiIKK21zZ3N0ciAiIgorIlByb2plY3QtSWQtVmVyc2lvbjogRGViaWFuIGRwa2cgMS4xNi4wXG4iCisiUmVwb3J0LU1zZ2lkLUJ1Z3MtVG86IGRlYmlhbi1kcGtnQGxpc3RzLmRlYmlhbi5vcmdcbiIKKyJQT1QtQ3JlYXRpb24tRGF0ZTogMjAxMS0xMC0xNCAwNzoxMSswMjAwXG4iCisiUE8tUmV2aXNpb24tRGF0ZTogMjAxMC0xMi0yMCAwMzoyNSswMTAwXG4iCisiTGFzdC1UcmFuc2xhdG9yOiBKYXZpZXIgRmVybmFuZGV6LVNhbmd1aW5vIDxqZnNAZGViaWFuLm9yZz5cbiIKKyJMYW5ndWFnZS1UZWFtOiBEZWJpYW4gTDEwbiBTcGFuaXNoIDxkZWJpYW4tbDEwbi1zcGFuaXNoQGxpc3RzLmRlYmlhbi5vcmc+XG4iCisiTGFuZ3VhZ2U6IGVzXG4iCisiTUlNRS1WZXJzaW9uOiAxLjBcbiIKKyJDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9VVRGLThcbiIKKyJDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiA4LWJpdFxuIgorIlBsdXJhbC1Gb3JtczogbnBsdXJhbHM9MjsgcGx1cmFsPShuICE9IDEpO1xuIgorIlBsdXJhbC1Gb3JtczogbnBsdXJhbHM9MjsgcGx1cmFsPShuICE9IDEpO1xuIgorIlgtUE9GaWxlLVNwZWxsRXh0cmE6IHJlaW5zdCBhbGwgSWFuIGVhY2hmaWxlZGV0YWlsIEVPRiBsZXNzIHNob3dmb3JtYXRcbiIKKyJYLVBPRmlsZS1TcGVsbEV4dHJhOiBza2lwIHN1cHBvcnRlZCBhbHRlcm5hdGl2ZXMgcHJlZGVwIGd0IGZzeXMgZmluZCBoZWxwXG4iCisiWC1QT0ZpbGUtU3BlbGxFeHRyYTogZGVyZWZlcmVuY2lhZG8gcmVpbnN0cmVxIGxkIGRlcGNvbmRldGFpbCBucHF1aWV0XG4iCisiWC1QT0ZpbGUtU3BlbGxFeHRyYTogZGl2ZXJzaW9ucyBKb3ZlciBzaG93IGRlcmVmZXJlbmNpYWRhIHRvIG9ubHkgbHVcbiIKKyJYLVBPRmlsZS1TcGVsbEV4dHJhOiB2ZXh0cmFjdCBsdCBidWZmZXJjb3B5IGluY2x1ZGUgZnN0YXQgcGVuZGluZyBzcGxpdFxuIgorIlgtUE9GaWxlLVNwZWxsRXh0cmE6IGJpbiBFcnIgZ2V0IGluc3RkaXIgcmV3aW5kIG5vbmUgcHJpbnQgZGVwb3RkaXJcbiIKKyJYLVBPRmlsZS1TcGVsbEV4dHJhOiBjb25mb2xkIG5ldyBub3QgdHJpZ2dlcnNkZXRhaWwgZGVjb25maWd1cmUgdHJpZ2dlclxuIgorIlgtUE9GaWxlLVNwZWxsRXh0cmE6IFByZSB4eiBtdWx0aXBhcnRlIGxpc3Qgc3R1cGlkbHl2ZXJib3NlIHJlbW92ZVxuIgorIlgtUE9GaWxlLVNwZWxsRXh0cmE6IHNlbGVjdGlvbnMgYmFkIGFyY2hpdGVjdHVyZSBkZWJ1ZyBkc2VsZWN0IE9SIGRpclxuIgorIlgtUE9GaWxlLVNwZWxsRXh0cmE6IENvbmZpZyBkZWJzaWcgc2V0IEphY2tzb24gemkgZWogc29icmVlc2NyaWJpciBjb25mZGVmXG4iCisiWC1QT0ZpbGUtU3BlbGxFeHRyYTogbXYgc3luYyBHdWlsbGVtIHRydWVuYW1lIGRlcGVuZHMgZmx1c2ggZmdldHMgdmFyYnVmXG4iCisiWC1QT0ZpbGUtU3BlbGxFeHRyYTogZXh0cmFjdCBkZXNjb25maWd1cmFkbyBkZXNjb25maWd1cmFybG8gbHptYVxuIgorIlgtUE9GaWxlLVNwZWxsRXh0cmE6IHJlZGVmaW5pY2lvbmVzIHByZWRlcGVuZHMgbWVyZ2Ugc2VsZWN0ZWQgdGFyZmlsZVxuIgorIlgtUE9GaWxlLVNwZWxsRXh0cmE6IGV4Y2x1ZGUgcHJlZGVwZW5kZSByZSB2ZXJzaW9uIGV4aXQgcHJlaW5zdCBybSBXaWNoZXJ0XG4iCisiWC1QT0ZpbGUtU3BlbGxFeHRyYTogcGFydHNpemUgcmVkZWZpbmljacOzbiBhdmFpbGFibGUgY29yZSBSZXBsYWNlcyBoYXNoXG4iCisiWC1QT0ZpbGUtU3BlbGxFeHRyYTogY29uZmZpbGVzIGNvbmZhc2sgc2ggU29icmVlc2NyaWJlIGJ6aXAgZG93bmdyYWRlIHBhdGhcbiIKKyJYLVBPRmlsZS1TcGVsbEV4dHJhOiBieSB3YWl0IGRyeSBNRCBzZWFyY2ggdHJpZ2dlcnMgcXVpZXQgZXNzZW50aWFsXG4iCisiWC1QT0ZpbGUtU3BlbGxFeHRyYTogY29uZm5ldyBkZXBjb24gYWN0IGZkIGFkbWluZGlyIGRpw7MgY2kgdmVyYm9zZVxuIgorIlgtUE9GaWxlLVNwZWxsRXh0cmE6IFByaW9yaXR5IGNmIGNvbmZmZGV0YWlsIGNvbmZsaWN0cyBtYXnDunNjIEhlcnR6b2dcbiIKKyJYLVBPRmlsZS1TcGVsbEV4dHJhOiBhcHRpdHVkZSBpbmZvc3BldyBvbGQgRGVzY29uZmlndXJhbmRvIGZvcmdldCB1aWRcbiIKKyJYLVBPRmlsZS1TcGVsbEV4dHJhOiBhd2FpdCBsb2cgd29ya2luZyBzY3JpcHQgZmRvcGVuIHN1cHBvcnQgc2NhbiBhZGQgbG9uZ1xuIgorIlgtUE9GaWxlLVNwZWxsRXh0cmE6IGF2YWlsIGluc3QgdXNyIHZhciBnaWQgZm9yayB0cmlnZ2Vyc3N0dXBpZCBzaGVsbFxuIgorIlgtUE9GaWxlLVNwZWxsRXh0cmE6IGRlc2NvbmZpZ3VyYWNpw7NuIGxpc3RxIHN0YXRvdmVycmlkZSBkaXNjYXJkIGFzc2VydFxuIgorIlgtUE9GaWxlLVNwZWxsRXh0cmE6IHBvc3RybSBjb25mZiBzaW11bGF0ZSBob2xkIHVucGFjayBkcGtnIGRpdmVydGVkIGluZm9cbiIKKyJYLVBPRmlsZS1TcGVsbEV4dHJhOiBtZCBtdWx0aSBtc2RvcyBqb2luIHZlcnNpb25zIHZlcnl2ZXJib3NlIHB1cmdlIHJlY29yZFxuIgorIlgtUE9GaWxlLVNwZWxsRXh0cmE6IERlcGVuZHMgYWJvcnQgaW5zdGFsbCBkZWIgcm9vdCBkaXNwbGF5IHJlbmFtZSBmb3JjZVxuIgorIlgtUE9GaWxlLVNwZWxsRXh0cmE6IGxpc3RwYWNrYWdlIGNvbmYgdGFyIEtiIHVuc2FmZSBkZXNhY3R1YWxpemFuZG9cbiIKKyJYLVBPRmlsZS1TcGVsbEV4dHJhOiBwYWNrYWdlIERoZWxwIGRpc3RyaWIgYXIgbGlzdGZpbGVzIHVuYXZhaWwgaW8gUEFUSFxuIgorIlgtUE9GaWxlLVNwZWxsRXh0cmE6IGFueSBjb250ZW50cyBjaHJvb3QgbmwgcmVjdXJzaXZlIERoIGNoZWNrIGVxIGNvbmZtaXNzXG4iCisiWC1QT0ZpbGUtU3BlbGxFeHRyYTogcnVuIGRlc2FjdHVhbGl6YXLDoSBzYW1lIHByZWRlcGVuZGVuY2lhIGZpZWxkIGVwb2NoXG4iCisiWC1QT0ZpbGUtU3BlbGxFeHRyYTogc2V0ZW52IHF1ZXJ5IGJ1aWxkIG92ZXJ3cml0ZSBDb25mbGljdHMgZGl2ZXJ0IGNvbmZpZ1xuIgorIlgtUE9GaWxlLVNwZWxsRXh0cmE6IGJyZWFrcyBzdGF0dXMgc3RhdCBzbGF2ZSByZWVuc2FtYmxhZG8gYWZ0ZXIgbm9jaGVja1xuIgorIlgtUE9GaWxlLVNwZWxsRXh0cmE6IHVwZGF0ZSBmaWxlbmFtZXMgUmFwaGFlbCBBa2tlcm1hbiByZWVuc2FtYmxhZG9zXG4iCisiWC1QT0ZpbGUtU3BlbGxFeHRyYTogcmVhZGxpbmsgc2NyaXB0cyBhbHRkaXIgS2lCIHBhZ2VyIGVhY2hmaWxlIGF1ZGl0XG4iCisiWC1QT0ZpbGUtU3BlbGxFeHRyYTogcmVmdXNlIGVvZiBjbGVhciB2ZXJpZnkgY29uZmZpbGUgZGVzY29uZmlndXJhcsOhXG4iCisiWC1QT0ZpbGUtU3BlbGxFeHRyYTogZGVzcmVmZXJlbmNpYXIgY2hvd24gY29ucmVwIGNvbW1hbmQgZ3ppcCBwb3N0aW5zdFxuIgorCisjOiBsaWIvZHBrZy9hci5jOjY2CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgY2hhcmFjdGVyICclYycgaW4gYXJjaGl2ZSAnJS4yNTBzJyBtZW1iZXIgJyUuMTZzJyBzaXplIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2FyLmM6ODEgbGliL2Rwa2cvYXIuYzo5NyBsaWIvZHBrZy9hci5jOjEwOCBsaWIvZHBrZy9hci5jOjExMgorIzogbGliL2Rwa2cvYXIuYzoxMzQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIGZpbGUgJyVzJyIKK21zZ3N0ciAibm8gc2UgcHVlZGUgZXNjcmliaXIgZWwgZmljaGVybyBgJXMnIgorCisjOiBsaWIvZHBrZy9hci5jOjk0CisjLCBjLWZvcm1hdAorbXNnaWQgImdlbmVyYXRlZCBjb3JydXB0IGFyIGhlYWRlciBmb3IgJyVzJyIKK21zZ3N0ciAic2UgZ2VuZXLDsyB1bmEgY2FiZWNlcmEgwqthcsK7IGRhw7FhZGEgcGFyYSAnJXMnIgorCisjOiBsaWIvZHBrZy9hci5jOjEyMworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgYXIgbWVtYmVyIGZpbGUgKCVzKSIKK21zZ3N0ciAiZmFsbG8gYWwgaGFjZXIgwqtmc3RhdMK7IGRlbCBmaWNoZXJvIG1pZW1icm8gwqthcsK7ICglcykiCisKKyM6IGxpYi9kcGtnL2FyLmM6MTMwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gZnN0YXQgYXIgbWVtYmVyIGZpbGUgKCVzKSIKK21zZ2lkICJhciBtZW1iZXIgZmlsZSAoJXMpIgorbXNnc3RyICJmYWxsbyBhbCBoYWNlciDCq2ZzdGF0wrsgZGVsIGZpY2hlcm8gbWllbWJybyDCq2FywrsgKCVzKSIKKworIzogbGliL2Rwa2cvYnVmZmVyLmM6MTk2CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZWFkIG9uIGJ1ZmZlciBjb3B5IGZvciAlcyIKK21zZ3N0ciAiZmFsbG8gYWwgbGVlciBlbiBidWZmZXJfY29weSBwYXJhICVzIgorCisjOiBsaWIvZHBrZy9idWZmZXIuYzoyMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIGluIHdyaXRlIG9uIGJ1ZmZlciBjb3B5IGZvciAlcyIKK21zZ3N0ciAiZmFsbG8gYWwgZXNjcmliaXIgZW4gYnVmZmVyX2NvcHkgcGFyYSAlcyIKKworIzogbGliL2Rwa2cvYnVmZmVyLmM6MjIwCisjLCBjLWZvcm1hdAorbXNnaWQgInNob3J0IHJlYWQgb24gYnVmZmVyIGNvcHkgZm9yICVzIgorbXNnc3RyICJsZWN0dXJhIGluc3VmaWNpZW50ZSBlbiBidWZmZXJfY29weSBwYXJhICVzIgorCisjOiBsaWIvZHBrZy9idWZmZXIuYzoyODgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byBleGVjIHRhciIKK21zZ2lkICJmYWlsZWQgdG8gc2VlayAlcyIKK21zZ3N0ciAiZmFsbG8gYWwgZWplY3V0YXIgdGFyIgorCisjOiBsaWIvZHBrZy9jb21tYW5kLmM6MTc4IGxpYi9kcGtnL2NvbW1hbmQuYzoyMDQgc3JjL2hlbHAuYzo2MjEKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTggc3JjL3Byb2Nlc3NhcmMuYzoxMzggc3JjL3Byb2Nlc3NhcmMuYzo0MzIKKyM6IHNyYy9wcm9jZXNzYXJjLmM6ODM5IGRwa2ctZGViL2J1aWxkLmM6NDU5IGRwa2ctZGViL2J1aWxkLmM6NTM4CisjOiBkcGtnLWRlYi9idWlsZC5jOjU2MSBkcGtnLWRlYi9leHRyYWN0LmM6MzE3IGRwa2ctZGViL2luZm8uYzo2NQorIzogZHBrZy1zcGxpdC9zcGxpdC5jOjY5IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo0NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGV4ZWN1dGUgJXMgKCVzKSIKK21zZ3N0ciAibm8gc2UgcHVlZGUgZWplY3V0YXIgJXMgKCVzKSIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzo4MworIywgYy1mb3JtYXQKK21zZ2lkICIlczogZGVjb21wcmVzc2lvbiIKK21zZ3N0ciAiJXM6IGRlc2NvbXByZXNpw7NuIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjg5CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBjb21wcmVzc2lvbiIKK21zZ3N0ciAiJXM6IGNvbXByZXNpw7NuIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjExMgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZXJyb3IgYmluZGluZyBpbnB1dCB0byBnemlwIHN0cmVhbSIKK21zZ3N0ciAiJXM6IGVycm9yIGFsIGFzb2NpYXIgbGEgZW50cmFkYSBhIGxvcyBkYXRvcyBnemlwIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCByZWFkIGVycm9yOiAnJXMnIgorbXNnc3RyICIlczogZXJyb3IgaW50ZXJubyBkZSBsZWN0dXJhIGRlIGd6aXAgYCVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxMzIgbGliL2Rwa2cvY29tcHJlc3MuYzoxMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgd3JpdGUgZXJyb3IiCittc2dzdHIgIiVzOiBlcnJvciBpbnRlcm5vIGRlIGVzY3JpdHVyYSBkZSBnemlwIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE1MAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZXJyb3IgYmluZGluZyBvdXRwdXQgdG8gZ3ppcCBzdHJlYW0iCittc2dzdHIgIiVzOiBlcnJvciBhbCBhc29jaWFyIGxhIHNhbGlkYSBhIGxvcyBkYXRvcyBnemlwPCIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgcmVhZCBlcnJvciIKK21zZ3N0ciAiJXM6IGVycm9yIGludGVybm8gZGUgbGVjdHVyYSBkZSBnemlwIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE2NworIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCB3cml0ZSBlcnJvcjogJyVzJyIKK21zZ3N0ciAiJXM6IGVycm9yIGludGVybm8gZGUgZXNjcml0dXJhIGRlIGd6aXA6IGAlcyciCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTgwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHdyaXRlIGVycm9yOiAlcyIKK21zZ3N0ciAiJXM6IGVycm9yIGludGVybm8gZGUgZXNjcml0dXJhIGRlIGd6aXA6ICVzIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjIyMAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZXJyb3IgYmluZGluZyBpbnB1dCB0byBiemlwMiBzdHJlYW0iCittc2dzdHIgIiVzOiBlcnJvciBhbCBhc29jaWFyIGxhIGVudHJhZGEgYSBsb3MgZGF0b3MgYnppcDIiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiByZWFkIGVycm9yOiAnJXMnIgorbXNnc3RyICIlczogZXJyb3IgaW50ZXJubyBkZSBsZWN0dXJhIGRlIGJ6aXAyOiBgJXMnIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI0MCBsaWIvZHBrZy9jb21wcmVzcy5jOjI0NCBsaWIvZHBrZy9jb21wcmVzcy5jOjI5NAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgd3JpdGUgZXJyb3IiCittc2dzdHIgIiVzOiBlcnJvciBpbnRlcm5vIGRlIGVzY3JpdHVyYSBkZSBiemlwMiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yIGJpbmRpbmcgb3V0cHV0IHRvIGJ6aXAyIHN0cmVhbSIKK21zZ3N0ciAiJXM6IGVycm9yIGFsIGFzb2NpYXIgbGEgc2FsaWRhIGEgbG9zIGRhdG9zIGJ6aXAyIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI2NQorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgcmVhZCBlcnJvciIKK21zZ3N0ciAiJXM6IGVycm9yIGludGVybm8gZGUgbGVjdHVyYSBkZSBiemlwMiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyNzUgbGliL2Rwa2cvY29tcHJlc3MuYzoyODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIHdyaXRlIGVycm9yOiAnJXMnIgorbXNnc3RyICIlczogZXJyb3IgaW50ZXJubyBkZSBlc2NyaXR1cmEgZGUgYnppcDI6IGAlcyciCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjgyCittc2dpZCAidW5leHBlY3RlZCBiemlwMiBlcnJvciIKK21zZ3N0ciAic2UgcHJvZHVqbyB1biBlcnJvciBpbmVzcGVyYWRvIGRlIGJ6aXAyIgorCisjIEZJWE1FOiBUZWxsIGF1dGhvciB0byBwdXQgYCUuMjUwcycgb24gYSBzZXBhcmF0ZSBsaW5lLCBzaW5jZSBpdCdzIHRvbyBsb25nLiBzdgorIzogbGliL2Rwa2cvZGJtb2RpZnkuYzo2OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidXBkYXRlcyBkaXJlY3RvcnkgY29udGFpbnMgZmlsZSBgJS4yNTBzJyB3aG9zZSBuYW1lIGlzIHRvbyBsb25nIChsZW5ndGg9JWQsICIKKyJtYXg9JWQpIgorbXNnc3RyICIiCisiZWwgZGlyZWN0b3JpbyBkZSBhY3R1YWxpemFjaW9uZXMgY29udGllbmUgZWwgZmljaGVyb1xuIgorImAlLjI1MHMnLFxuIgorImN1eW8gbm9tYnJlIGVzIGRlbWFzaWFkbyBncmFuZGUgKGxvbmdpdHVkPSVkLCBtYXg9JWQpIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1cGRhdGVzIGRpcmVjdG9yeSBjb250YWlucyBmaWxlcyB3aXRoIGRpZmZlcmVudCBsZW5ndGggbmFtZXMgKGJvdGggJWQgYW5kICVkKSIKK21zZ3N0ciAiIgorImVsIGRpcmVjdG9yaW8gZGUgYWN0dWFsaXphY2lvbmVzIGNvbnRpZW5lIGZpY2hlcm9zIGNvbiBub21icmVzIGRlICIKKyJsb25naXR1ZGVzXG4iCisiZGlmZXJlbnRlcyAoJWQgeSAlZCkiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHNjYW4gdXBkYXRlcyBkaXJlY3RvcnkgYCUuMjU1cyciCittc2dzdHIgIm5vIHNlIHB1ZWRlIGV4YW1pbmFyIGVsIGRpcmVjdG9yaW8gZGUgYWN0dWFsaXphY2lvbmVzIGAlLjI1NXMnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVtb3ZlIGluY29ycG9yYXRlZCB1cGRhdGUgZmlsZSAlLjI1NXMiCittc2dzdHIgImZhbGxvIGFsIGJvcnJhciBlbCBmaWNoZXJvIGRlIGFjdHVhbGl6YWNpw7NuIGluY29ycG9yYWRvICUuMjU1cyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxMjEgZHBrZy1kZWIvYnVpbGQuYzo0NDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBgJS4yNTVzJyIKK21zZ3N0ciAibm8gc2UgcHVlZGUgY3JlYXIgYCUuMjU1cyciCisKKyMgQXl1ZGE6IE1lam9yIHF1ZWRhcsOtYSBjb24gcGFsYWJyYXMgZGlzdGludGFzIHBhcmEgZmlsbCB5IHBhZGRpbmcuIHN2CisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEyNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmlsbCAlLjI1MHMgd2l0aCBwYWRkaW5nIgorbXNnc3RyICJubyBzZSBwdWVkZSBsbGVuYXIgJS4yNTBzIGNvbiByZWxsZW5vIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEyNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggJS4yNTBzIGFmdGVyIHBhZGRpbmciCittc2dzdHIgIm5vIHNlIHB1ZWRlIGVmZWN0dWFyIGBmbHVzaCcgJS4yNTBzIHRyYXMgZWwgcmVsbGVubyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxMjkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNlZWsgdG8gc3RhcnQgb2YgJS4yNTBzIGFmdGVyIHBhZGRpbmciCittc2dzdHIgIm5vIHNlIHB1ZWRlIHZvbHZlciBhbCBjb21pZW56byBkZSAlLjI1MHMgZGVzcHXDqXMgZGVsIHJlbGxlbm8iCisKKyMgImluY2FwYXogZGUuLi4iIHF1ZWRhIGRlbWFzaWFkbyBsaXRlcmFsLiBzdgorIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxOTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gbG9jayBmaWxlICVzIGZvciB0ZXN0aW5nIgorbXNnc3RyICJubyBzZSBwdWVkZSBhYnJpciBlbCBmaWNoZXJvIGRlIGJsb3F1ZW8gJXMgcGFyYSBoYWNlciBwcnVlYmFzIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjIyMQorbXNnaWQgInVuYWJsZSB0byBvcGVuL2NyZWF0ZSBzdGF0dXMgZGF0YWJhc2UgbG9ja2ZpbGUiCittc2dzdHIgIiIKKyJubyBzZSBwdWVkZSBhYnJpci9jcmVhciBlbCBmaWNoZXJvIGRlIGJsb3F1ZW8gZGUgbGEgYmFzZSBkZSBkYXRvcyBkZSBlc3RhZG8iCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjMxCittc2dpZCAieW91IGRvIG5vdCBoYXZlIHBlcm1pc3Npb24gdG8gbG9jayB0aGUgZHBrZyBzdGF0dXMgZGF0YWJhc2UiCittc2dzdHIgIm5vIHRpZW5lIHBlcm1pc28gcGFyYSBibG9xdWVhciBsYSBiYXNlIGRlIGRhdG9zIGRlIGVzdGFkbyBkZSBkcGtnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjIzMworIywgZnV6enkKKyN8IG1zZ2lkICJ1bmFibGUgdG8gbG9jayBkcGtnIHN0YXR1cyBkYXRhYmFzZSIKK21zZ2lkICJkcGtnIHN0YXR1cyBkYXRhYmFzZSIKK21zZ3N0ciAibm8gc2UgcHVlZGUgYmxvcXVlYXIgbGEgYmFzZSBkZSBkYXRvcyBkZSBlc3RhZG8gZGUgZHBrZyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyNTcKK21zZ2lkICJyZXF1ZXN0ZWQgb3BlcmF0aW9uIHJlcXVpcmVzIHN1cGVydXNlciBwcml2aWxlZ2UiCittc2dzdHIgImxhIG9wZXJhY2nDs24gc29saWNpdGFkYSBwcmVjaXNhIHByaXZpbGVnaW9zIGRlIHN1cGVydXN1YXJpbyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyNjIKK21zZ2lkICJ1bmFibGUgdG8gYWNjZXNzIGRwa2cgc3RhdHVzIGFyZWEiCittc2dzdHIgIm5vIHNlIHB1ZWRlIGFjY2VkZXIgYWwgw6FyZWEgZGUgZXN0YWRvIGRlIGRwa2ciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjY0Cittc2dpZCAib3BlcmF0aW9uIHJlcXVpcmVzIHJlYWQvd3JpdGUgYWNjZXNzIHRvIGRwa2cgc3RhdHVzIGFyZWEiCittc2dzdHIgIiIKKyJsYSBvcGVyYWNpw7NuIHByZWNpc2EgYWNjZXNvIGRlIGxlY3R1cmEgeSBlc2NyaXR1cmEgYWwgw6FyZWEgZGUgZXN0YWRvIGRlIGRwa2ciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzA5CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZW1vdmUgbXkgb3duIHVwZGF0ZSBmaWxlICUuMjU1cyIKK21zZ3N0ciAiZmFsbG8gYWwgYm9ycmFyIG1pIHByb3BpbyBmaWNoZXJvIGRlIGFjdHVhbGl6YWNpw7NuICUuMjU1cyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJubyBzZSBwdWVkZSBlc2NyaWJpciBlbCBlc3RhZG8gYWN0dWFsaXphZG8gZGUgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzQ5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAibm8gc2UgcHVlZGUgZWZlY3R1YXIgYGZsdXNoJyBjb24gZWwgZXN0YWRvIGFjdHVhbGl6YWRvIGRlIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM1MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gdHJ1bmNhdGUgZm9yIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJubyBzZSBwdWVkZSB0cnVuY2FyIGVsIGVzdGFkbyBhY3R1YWxpemFkbyBkZSBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZzeW5jIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJubyBzZSBwdWVkZSBlZmVjdHVhciBgZnN5bmMnIGVuIGVsIGVzdGFkbyBhY3R1YWxpemFkbyBkZSBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJubyBzZSBwdWVkZSBjZXJyYXIgZWwgZXN0YWRvIGFjdHVhbGl6YWRvIGRlIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM1OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAibm8gc2UgcHVlZGUgaW5zdGFsYXIgZWwgZXN0YWRvIGFjdHVhbGl6YWRvIGRlIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy9kaXIuYzo1MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHJlYWQgZmlsZWRlc2NyaXB0b3IgZmxhZ3MgZm9yICUuMjUwcyIKK21zZ2lkICJ1bmFibGUgdG8gZ2V0IGZpbGUgZGVzY3JpcHRvciBmb3IgZGlyZWN0b3J5ICclcyciCittc2dzdHIgIiIKKyJubyBzZSBwdWVkZW4gbGVlciBsYXMgcHJvcGllZGFkZXMgZGVsIGRlc2NyaXB0b3IgZGUgZmljaGVyb3MgcGFyYSBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZGlyLmM6NTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byBzeW5jIGZpbGUgJyVzJyIKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBkaXJlY3RvcnkgJyVzJyIKK21zZ3N0ciAibm8gc2UgcHVlZGUgaGFjZXIgwqtzeW5jwrsgZGVsIGZpY2hlcm8gYCVzJyIKKworIzogbGliL2Rwa2cvZGlyLmM6NjkgbGliL2Rwa2cvZGlyLmM6MTMxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gb3BlbiBmaWxlICclcyciCittc2dpZCAidW5hYmxlIHRvIG9wZW4gZGlyZWN0b3J5ICclcyciCittc2dzdHIgIm5vIHNlIHB1ZWRlIGFicmlyIGVsIGZpY2hlcm8gYCVzJyIKKworIzogbGliL2Rwa2cvZGlyLmM6MTA5IHNyYy9kaXZlcnRjbWQuYzoyMTggZHBrZy1zcGxpdC9zcGxpdC5jOjIwMgorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gZmlsZSAnJXMnIgorbXNnc3RyICJubyBzZSBwdWVkZSBhYnJpciBlbCBmaWNoZXJvIGAlcyciCisKKyM6IGxpYi9kcGtnL2Rpci5jOjExMSBzcmMvZGl2ZXJ0Y21kLmM6MjMyIHNyYy9kaXZlcnRjbWQuYzozNzcKKyM6IHNyYy9zdGF0Y21kLmM6MjE3IGRwa2ctZGViL2J1aWxkLmM6NTk4IGRwa2ctc3BsaXQvam9pbi5jOjY1CisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTg3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNDA2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzeW5jIGZpbGUgJyVzJyIKK21zZ3N0ciAibm8gc2UgcHVlZGUgaGFjZXIgwqtzeW5jwrsgZGVsIGZpY2hlcm8gYCVzJyIKKworIzogbGliL2Rwa2cvZGlyLmM6MTEzIHNyYy9kaXZlcnRjbWQuYzoyMzQgc3JjL2RpdmVydGNtZC5jOjM3OQorIzogZHBrZy1kZWIvYnVpbGQuYzo2MDAgZHBrZy1zcGxpdC9qb2luLmM6NjcgZHBrZy1zcGxpdC9xdWV1ZS5jOjE4OQorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzMTQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE0MDgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIGZpbGUgJyVzJyIKK21zZ3N0ciAibm8gc2UgcHVlZGUgY2VycmFyIGVsIGZpY2hlcm8gYCVzJyIKKworIzogbGliL2Rwa2cvZHVtcC5jOjM5NgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgZGV0YWlscyBvZiBgJS41MHMnIHRvIGAlLjI1MHMnIgorbXNnc3RyICJmYWxsbyBhbCBlc2NyaWJpciBsb3MgZGV0YWxsZXMgc29icmUgYCUuNTBzJyBhIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDIzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuICclcycgZm9yIHdyaXRpbmcgJXMgZGF0YWJhc2UiCittc2dzdHIgImZhbGxvIGFsIGFicmlyIGAlcycgcGFyYSBlc2NyaWJpciBsYSBiYXNlIGRlIGRhdG9zICVzIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDI2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgYnVmZmVyaW5nIG9uICVzIGRhdGFiYXNlIGZpbGUiCittc2dzdHIgIiIKKyJubyBzZSBwdWVkZSBlc3RhYmxlY2VyIGFsbWFjZW5hbWllbnRvIGludGVybWVkaW8gcGFyYSBlbCBhcmNoaXZvIGRlIGJhc2UgZGUgIgorImRhdG9zICVzIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDM4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB3cml0ZSAlcyBkYXRhYmFzZSByZWNvcmQgYWJvdXQgJyUuNTBzJyB0byAnJS4yNTBzJyIKK21zZ3N0ciAiIgorImZhbGxvIGFsIGVzY3JpYmlyIGVsIHJlZ2lzdHJvIGRlIGJhc2UgZGUgZGF0b3MgJXMgc29icmUgYCUuNTBzJyBhIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDQ2CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBmbHVzaCAlcyBkYXRhYmFzZSB0byAnJS4yNTBzJyIKK21zZ3N0ciAiZmFsbG8gYWwgdm9sY2FyIGxhIGluZm9ybWFjacOzbiBkZSBsYSBiYXNlIGRlIGRhdG9zICVzIGVuIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDQ4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBmc3luYyAlcyBkYXRhYmFzZSB0byAnJS4yNTBzJyIKK21zZ3N0ciAiZmFsbG8gYWwgZWZlY3R1YXIgYGZzeW5jJyBlbiBsYSBiYXNlIGRlIGRhdG9zICVzIGEgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNsb3NlICclLjI1MHMnIGFmdGVyIHdyaXRpbmcgJXMgZGF0YWJhc2UiCittc2dzdHIgImZhbGxvIGFsIGNlcnJhciBgJS4yNTBzJyB0cmFzIGVzY3JpYmlyIGVuIGxhIGJhc2UgZGUgZGF0b3MgJXMiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGxpbmsgJyUuMjUwcycgdG8gJyUuMjUwcycgZm9yIGJhY2t1cCBvZiAlcyBkYXRhYmFzZSIKK21zZ3N0ciAiIgorImZhbGxvIGFsIGVubGF6YXIgYCUuMjUwcycgY29uIGAlLjI1MHMnIHBhcmEgbGEgY29waWEgZGUgc2VndXJpZGFkIGRlIGxhIGJhc2UgIgorImRlIGRhdG9zICVzIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDU4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBpbnN0YWxsICclLjI1MHMnIGFzICclLjI1MHMnIGNvbnRhaW5pbmcgJXMgZGF0YWJhc2UiCittc2dzdHIgIiIKKyJmYWxsbyBhbCBpbnN0YWxhciBgJS4yNTBzJyBjb21vIGAlLjI1MHMnIGNvbnRlbmllbmRvIGxhIGJhc2UgZGUgZGF0b3MgJXMiCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzo5NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IHVucmVjb3ZlcmFibGUgZmF0YWwgZXJyb3IsIGFib3J0aW5nOlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisiJXM6IGVycm9yIGZhdGFsIGlycmVjdXBlcmFibGUsIGFib3J0YW5kbzpcbiIKKyIgJXNcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjEwMAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiVzOiB1bnJlY292ZXJhYmxlIGZhdGFsIGVycm9yLCBhYm9ydGluZzpcbiIKKyN8ICIgJXNcbiIKK21zZ2lkICIiCisiJXM6IG91dHNpZGUgZXJyb3IgY29udGV4dCwgYWJvcnRpbmc6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKyIlczogZXJyb3IgZmF0YWwgaXJyZWN1cGVyYWJsZSwgYWJvcnRhbmRvOlxuIgorIiAlc1xuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MTIwCisjLCBmdXp6eQorI3wgbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBjbGVhbnVwIGVudHJ5IgorbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBlcnJvciBjb250ZXh0IgorbXNnc3RyICJtZW1vcmlhIGFnb3RhZGEgcGFyYSB1bmEgbnVldmEgZW50cmFkYSBkZSByZW9yZ2FuaXphY2nDs24iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoxODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBlcnJvciB3aGlsZSBjbGVhbmluZyB1cDpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorIiVzOiBlcnJvciBhbCByZW9yZ2FuaXphcjpcbiIKKyIgJXNcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjIwMQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZHBrZzogdG9vIG1hbnkgbmVzdGVkIGVycm9ycyBkdXJpbmcgZXJyb3IgcmVjb3ZlcnkgISFcbiIKK21zZ2lkICIlczogdG9vIG1hbnkgbmVzdGVkIGVycm9ycyBkdXJpbmcgZXJyb3IgcmVjb3ZlcnkhIVxuIgorbXNnc3RyICIiCisiZHBrZzogwqHCoWRlbWFzaWFkb3MgZXJyb3JlcyBhbmlkYWRvcyBkdXJhbnRlIGxhIHJlY3VwZXJhY2nDs24gZGUgZXJyb3IhIVxuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MjY4IGxpYi9kcGtnL2VoYW5kbGUuYzozMDcKK21zZ2lkICJvdXQgb2YgbWVtb3J5IGZvciBuZXcgY2xlYW51cCBlbnRyeSIKK21zZ3N0ciAibWVtb3JpYSBhZ290YWRhIHBhcmEgdW5hIG51ZXZhIGVudHJhZGEgZGUgcmVvcmdhbml6YWNpw7NuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MjkxCittc2dpZCAib3V0IG9mIG1lbW9yeSBmb3IgbmV3IGNsZWFudXAgZW50cnkgd2l0aCBtYW55IGFyZ3VtZW50cyIKK21zZ3N0ciAiIgorIm1lbW9yaWEgYWdvdGFkYSBwYXJhIGxhIGVudHJhZGEgZGUgcmVvcmdhbml6YWNpw7NuIG51ZXZhIGNvblxuIgorIm11Y2hvcyBhcmd1bWVudG9zIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MzUyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIlczogZXJyb3IgY2xvc2luZyAlczogJXMiCittc2dpZCAiJXM6IGVycm9yOiAlc1xuIgorbXNnc3RyICIlczogZXJyb3IgYWwgY2VycmFyICVzOiAlcyIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjM5MworIywgYy1mb3JtYXQKK21zZ2lkICIlczogd2FybmluZzogJXNcbiIKK21zZ3N0ciAiJXM6IGF2aXNvOiAlc1xuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6NDE2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiVzOiVkOiBpbnRlcm5hbCBlcnJvcjogJXNcbiIKK21zZ3N0ciAiJXM6JXM6JWQ6IGVycm9yIGludGVybm86ICVzXG4iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGlzIG1pc3NpbmciCittc2dzdHIgImZhbHRhICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0OQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYCUuKnMnIGlzIG5vdCBhbGxvd2VkIGZvciAlcyIKK21zZ2lkICInJS41MHMnIGlzIG5vdCBhbGxvd2VkIGZvciAlcyIKK21zZ3N0ciAibm8gc2UgYWRtaXRlIGAlLipzJyBwYXJhICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo3MworIywgYy1mb3JtYXQKK21zZ2lkICJqdW5rIGFmdGVyICVzIgorbXNnc3RyICJiYXN1cmEgZGVzcHXDqXMgZGUgJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjg3CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgcGFja2FnZSBuYW1lICglLjI1MHMpIgorbXNnc3RyICJub21icmUgZGUgcGFxdWV0ZSBpbnbDoWxpZG8gKCUuMjUwcykiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJlbXB0eSBmaWxlIGRldGFpbHMgZmllbGQgYCVzJyIKK21zZ3N0ciAiY2FtcG8gZGUgZGV0YWxsZXMgYCVzJyBkZSBmaWNoZXJvIHZhY8OtbyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTA1CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgZGV0YWlscyBmaWVsZCBgJXMnIG5vdCBhbGxvd2VkIGluIHN0YXR1cyBmaWxlIgorbXNnc3RyICJjYW1wbyBkZSBkZXRhbGxlcyBkZSBmaWNoZXJvIGAlcycgbm8gcGVybWl0aWRvIGVuIGVsIGZpY2hlcm8gZGUgZXN0YWRvIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidG9vIG1hbnkgdmFsdWVzIGluIGZpbGUgZGV0YWlscyBmaWVsZCBgJXMnIChjb21wYXJlZCB0byBvdGhlcnMpIgorbXNnc3RyICIiCisiZGVtYXNpYWRvcyB2YWxvcmVzIGVuIGVsIGNhbXBvIGRlIGRldGFsbGVzIGRlIGZpY2hlcm8gYCVzJ1xuIgorIihjb21wYXJhZG8gY29uIG90cm9zKSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTMyCisjLCBjLWZvcm1hdAorbXNnaWQgInRvbyBmZXcgdmFsdWVzIGluIGZpbGUgZGV0YWlscyBmaWVsZCBgJXMnIChjb21wYXJlZCB0byBvdGhlcnMpIgorbXNnc3RyICIiCisiaW5zdWZpY2llbnRlIG7Dum1lcm8gZGUgdmFsb3JlcyBlbiBlbCBjYW1wbyBkZSBkZXRhbGxlcyBkZSBmaWNoZXJvIGAlcydcbiIKKyIoY29tcGFyYWRvIGNvbiBvdHJvcykiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE1NAorbXNnaWQgInllcy9ubyBpbiBib29sZWFuIGZpZWxkIgorbXNnc3RyICJ5ZXMvbm8gZW4gY2FtcG8gYm9vbGVhbm8iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE3NAorbXNnaWQgIndvcmQgaW4gYHByaW9yaXR5JyBmaWVsZCIKK21zZ3N0ciAicGFsYWJyYSBlbiBjYW1wbyDCq3ByaW9yaWRhZMK7IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxODYKK21zZ2lkICJ2YWx1ZSBmb3IgYHN0YXR1cycgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICJlbCB2YWxvciBwYXJhIGVsIGNhbXBvIGBzdGF0dXMnIG5vIGVzdMOhIHBlcm1pdGlkbyBlbiBlc3RlIGNvbnRleHRvIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxOTEKK21zZ2lkICJmaXJzdCAod2FudCkgd29yZCBpbiBgc3RhdHVzJyBmaWVsZCIKK21zZ3N0ciAicHJpbWVyYSBwYWxhYnJhIChuZWNlc2FyaWEpIGVuIGVsIGNhbXBvIGBzdGF0dXMnIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxOTQKK21zZ2lkICJzZWNvbmQgKGVycm9yKSB3b3JkIGluIGBzdGF0dXMnIGZpZWxkIgorbXNnc3RyICJzZWd1bmRhIHBhbGFicmEgKGVycm9yKSBlbiBlbCBjYW1wbyBgc3RhdHVzJyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTk3Cittc2dpZCAidGhpcmQgKHN0YXR1cykgd29yZCBpbiBgc3RhdHVzJyBmaWVsZCIKK21zZ3N0ciAidGVyY2VyYSBwYWxhYnJhIGRlIGVzdGFkbyBlbiBlbCBjYW1wbyBgc3RhdHVzJyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjA3CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGluIFZlcnNpb24gc3RyaW5nICclLjI1MHMnIgorbXNnc3RyICJlcnJvciBlbiBsYSBjYWRlbmEgYFZlcnNpb24nIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyMTgKK21zZ2lkICJvYnNvbGV0ZSBgUmV2aXNpb24nIG9yIGBQYWNrYWdlLVJldmlzaW9uJyBmaWVsZCB1c2VkIgorbXNnc3RyICJTZSBoYSB1dGlsaXphZG8gdW4gY2FtcG8gYFJldmlzaW9uJyBvIGBQYWNrYWdlLVJldmlzaW9uJyBvYnNvbGV0byIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjM1Cittc2dpZCAidmFsdWUgZm9yIGBjb25maWctdmVyc2lvbicgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICJubyBzZSBwZXJtaXRlIHVuIHZhbG9yIHBhcmEgZWwgY2FtcG8gYGNvbmZpZy12ZXJzaW9uJyBlbiBlc3RlIGNvbnRleHRvIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyNDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgaW4gQ29uZmlnLVZlcnNpb24gc3RyaW5nICclLjI1MHMnIgorbXNnc3RyICJlcnJvciBlbiBsYSBjYWRlbmEgYENvbmZpZy1WZXJzaW9uJyBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjY2CisjLCBjLWZvcm1hdAorbXNnaWQgInZhbHVlIGZvciBgY29uZmZpbGVzJyBoYXMgbWFsZm9ybWF0dGVkIGxpbmUgYCUuKnMnIgorbXNnc3RyICJlbCB2YWxvciBkZSBgY29uZmZpbGVzJyB0aWVuZSB1bmEgbMOtbmVhIG1hbCBmb3JtYXRlYWRhIGAlLipzJyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6Mjg3CisjLCBjLWZvcm1hdAorbXNnaWQgInZhbHVlIGZvciBgY29uZmZpbGVzJyBoYXMgbGluZSBzdGFydGluZyB3aXRoIG5vbi1zcGFjZSBgJWMnIgorbXNnc3RyICIiCisiZWwgdmFsb3IgZGUgYGNvbmZmaWxlcycgY29udGllbmUgdW5hIGzDrW5lYSBxdWUgY29taWVuemEgY29uIHVuXG4iCisiIGNhcsOhY3RlciBgJWMnIHF1ZSBubyBlcyB1biBlc3BhY2lvIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzozMDQKK21zZ2lkICJyb290IG9yIG51bGwgZGlyZWN0b3J5IGlzIGxpc3RlZCBhcyBhIGNvbmZmaWxlIgorbXNnc3RyICJzZSBoYSBpbmRpY2FkbyBjb21vIGNvbmZmaWxlIGVsIGRpcmVjdG9yaW8gcmHDrXogbyB1biBkaXJlY3RvcmlvIHZhY8OtbyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MzY1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJgJXMnIGZpZWxkLCBtaXNzaW5nIHBhY2thZ2UgbmFtZSwgb3IgZ2FyYmFnZSB3aGVyZSBwYWNrYWdlIG5hbWUgZXhwZWN0ZWQiCittc2dzdHIgIiIKKyJFbiBlbCBjYW1wbyBgJXMnLCBmYWx0YSB1biBub21icmUgZGUgcGFxdWV0ZSwgbyBzZSBlbmNvbnRyw7MgYmFzdXJhXG4iCisiZG9uZGUgc2UgZXNwZXJhYmEgdW4gbm9tYnJlIGRlIHBhcXVldGUiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjM3MAorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGZpZWxkLCBpbnZhbGlkIHBhY2thZ2UgbmFtZSBgJS4yNTVzJzogJXMiCittc2dzdHIgImNhbXBvIGAlcycsIG5vbWJyZSBkZSBwYXF1ZXRlIGludsOhbGlkbyBgJS4yNTVzJzogJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQwNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOlxuIgorIiBiYWQgdmVyc2lvbiByZWxhdGlvbnNoaXAgJWMlYyIKK21zZ3N0ciAiIgorImNhbXBvIGAlcycsIHJlZmVyZW5jaWEgYSBgJS4yNTVzJzpcbiIKKyIgcmVsYWNpw7NuIGRlIHZlcnNpw7NuIGVycsOzbmVhICVjJWMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQxMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOlxuIgorIiBgJWMnIGlzIG9ic29sZXRlLCB1c2UgYCVjPScgb3IgYCVjJWMnIGluc3RlYWQiCittc2dzdHIgIiIKKyJjYW1wbyBgJXMnLCByZWZlcmVuY2lhIGEgYCUuMjU1cyc6XG4iCisiIGAlYycgZXN0w6Egb2Jzb2xldG8uIFV0aWxpY2UgZW4gc3UgbHVnYXIgYCVjPScgbyBgJWMlYyciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQyMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOlxuIgorIiBpbXBsaWNpdCBleGFjdCBtYXRjaCBvbiB2ZXJzaW9uIG51bWJlciwgc3VnZ2VzdCB1c2luZyBgPScgaW5zdGVhZCIKK21zZ3N0ciAiIgorImNhbXBvIGAlcycsIHJlZmVyZW5jaWEgYSBgJS4yNTVzJzpcbiIKKyIgY29pbmNpZGVuY2lhIGltcGzDrWNpdGEgZW4gZWwgbsO6bWVybyBleGFjdG8gZGUgdmVyc2nDs24sXG4iCisiIHNlIHN1Z2llcmUgdXNhciBgPScgZW4gc3UgbHVnYXIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQzMAorbXNnaWQgIk9ubHkgZXhhY3QgdmVyc2lvbnMgbWF5IGJlIHVzZWQgZm9yIFByb3ZpZGVzIgorbXNnc3RyICJTb2xhbWVudGUgc2UgcHVlZGVuIHVzYXIgdmVyc2lvbmVzIGV4YWN0YXMgcGFyYSBQcm92aWRlcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6XG4iCisiIHZlcnNpb24gdmFsdWUgc3RhcnRzIHdpdGggbm9uLWFscGhhbnVtZXJpYywgc3VnZ2VzdCBhZGRpbmcgYSBzcGFjZSIKK21zZ3N0ciAiIgorImNhbXBvIGAlcycsIHJlZmVyZW5jaWEgYSBgJS4yNTVzJzpcbiIKKyIgZWwgdmFsb3IgZGUgdmVyc2nDs24gY29taWVuemEgY29uIHVuIGNhcsOhY3RlciBubyBhbGZhbnVtw6lyaWNvLFxuIgorIiBzZSBzdWdpZXJlIGHDsWFkaXIgdW4gZXNwYWNpbyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDUxIGxpYi9kcGtnL2ZpZWxkcy5jOjQ1NQorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6IHZlcnNpb24gY29udGFpbnMgYCVjJyIKK21zZ3N0ciAiY2FtcG8gYCVzJywgcmVmZXJlbmNpYSBhIGAlLjI1NXMnOiBsYSB2ZXJzacOzbiBjb250aWVuZSBgJWMnIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOiB2ZXJzaW9uIHVudGVybWluYXRlZCIKK21zZ3N0ciAiY2FtcG8gYCVzJywgcmVmZXJlbmNpYSBhIGAlLjI1NXMnOiB2ZXJzacOzbiBpbmNvbXBsZXRhIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvICclLjI1NXMnOiBlcnJvciBpbiB2ZXJzaW9uIgorbXNnc3RyICJjYW1wbyBgJXMnLCByZWZlcmVuY2lhIGEgYCUuMjU1cyc6IGVycm9yIGVuIGxhIHZlcnNpw7NuIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBmaWVsZCwgc3ludGF4IGVycm9yIGFmdGVyIHJlZmVyZW5jZSB0byBwYWNrYWdlIGAlLjI1NXMnIgorbXNnc3RyICJjYW1wbyBgJXMnLCBlcnJvciBkZSBzaW50YXhpcyB0cmFzIGxhIHJlZmVyZW5jaWEgYWwgcGFxdWV0ZSBgJS4yNTVzJyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDgyCisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlcyAoYHwnKSBub3QgYWxsb3dlZCBpbiAlcyBmaWVsZCIKK21zZ3N0ciAibm8gc2UgYWRtaXRlbiBhbHRlcm5hdGl2YXMgKGB8JykgZW4gZWwgY2FtcG8gJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjUzNgorbXNnaWQgInZhbHVlIGZvciBgdHJpZ2dlcnMtcGVuZGluZycgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICIiCisibm8gc2UgcGVybWl0ZSB1biB2YWxvciBwYXJhIGVsIGNhbXBvIGB0cmlnZ2Vycy1wZW5kaW5nJyBlbiBlc3RlIGNvbnRleHRvIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWxsZWdhbCBwZW5kaW5nIHRyaWdnZXIgbmFtZSBgJS4yNTVzJzogJXMiCittc2dzdHIgIm5vbWJyZSBkZSBkaXNwYXJhZG9yIHBlbmRpZW50ZSBpbnbDoWxpZG8gYCUuMjU1cyc6ICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHBlbmRpbmcgdHJpZ2dlciBgJS4yNTVzJyIKK21zZ3N0ciAiZGlzcGFyYWRvciBwZW5kaWVudGUgZHVwbGljYWRvIGAlLjI1NXMnIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NjEKK21zZ2lkICJ2YWx1ZSBmb3IgYHRyaWdnZXJzLWF3YWl0ZWQnIGZpZWxkIG5vdCBhbGxvd2VkIGluIHRoaXMgY29udGV4dCIKK21zZ3N0ciAiIgorImVsIHZhbG9yIHBhcmEgZWwgY2FtcG8gYHRyaWdnZXJzLWF3YWl0ZWQnIG5vIGVzdMOhIHBlcm1pdGlkbyBlbiBlc3RlIGNvbnRleHRvIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWxsZWdhbCBwYWNrYWdlIG5hbWUgaW4gYXdhaXRlZCB0cmlnZ2VyIGAlLjI1NXMnOiAlcyIKK21zZ3N0ciAibm9tYnJlIGRlIHBhcXVldGUgaWxlZ2FsIGVuIGxhIGRpc3BhcmFkb3IgZXNwZXJhZG8gYCUuMjU1cyc6ICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIGF3YWl0ZWQgdHJpZ2dlciBwYWNrYWdlIGAlLjI1NXMnIgorbXNnc3RyICJwYXF1ZXRlIGRlIGRpc3BhcmFkb3IgZXNwZXJhZG8gZHVwbGljYWRvIGAlLjI1NXMnIgorCisjOiBsaWIvZHBrZy9maWxlLmM6NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgc291cmNlIGZpbGUgJyUuMjUwcyciCittc2dzdHIgIm5vIHNlIHB1ZWRlIGVqZWN1dGFyIMKrc3RhdMK7IGVsIGZpY2hlcm8gZnVlbnRlIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy9maWxlLmM6NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoYW5nZSBvd25lcnNoaXAgb2YgdGFyZ2V0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgIm5vIHNlIHB1ZWRlIGNhbWJpYXIgZWwgcHJvcGlldGFyaW8gZGVsIGZpY2hlcm8gb2JqZXRpdm8gYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzo1OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IG1vZGUgb2YgdGFyZ2V0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgIm5vIHNlIHB1ZWRlIGVzdGFibGVjZXIgZWwgbW9kbyBkZWwgZmljaGVybyBvYmpldGl2byBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZmlsZS5jOjg1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gdW5sb2NrICVzOiAlcyIKK21zZ2lkICJ1bmFibGUgdG8gdW5sb2NrICVzIgorbXNnc3RyICJubyBzZSBwdWVkZSBkZXNibG9xdWVhciAlczogJXMiCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzoxMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoZWNrIGZpbGUgJyVzJyBsb2NrIHN0YXR1cyIKK21zZ3N0ciAibm8gc2UgcHVlZGUgY29tcHJvYmFyIGVsIGVzdGFkbyBkZSBibG9xdWVvIGRlbCBmaWNoZXJvIGAlcyciCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzoxNDYKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInN0YXR1cyBkYXRhYmFzZSBhcmVhIGlzIGxvY2tlZCBieSBhbm90aGVyIHByb2Nlc3MiCittc2dpZCAiJXMgaXMgbG9ja2VkIGJ5IGFub3RoZXIgcHJvY2VzcyIKK21zZ3N0ciAiZWwgw6FyZWEgZGUgbGEgYmFzZSBkZSBkYXRvcyBkZSBlc3RhZG8gZXN0w6EgYmxvcXVlYWRhIHBvciBvdHJvIHByb2Nlc28iCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzoxNDgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byB1bmxvY2sgJXM6ICVzIgorbXNnaWQgInVuYWJsZSB0byBsb2NrICVzIgorbXNnc3RyICJubyBzZSBwdWVkZSBkZXNibG9xdWVhciAlczogJXMiCisKKyM6IGxpYi9kcGtnL2xvZy5jOjUzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkbid0IG9wZW4gbG9nIGAlcyc6ICVzXG4iCittc2dzdHIgIm5vIHNlIHB1ZWRlIGFicmlyIGVsIGZpY2hlcm8gZGUgcmVnaXN0cm8gYCVzJzogJXNcbiIKKworIzogbGliL2Rwa2cvbG9nLmM6ODUKK21zZ2lkICI8cGFja2FnZSBzdGF0dXMgYW5kIHByb2dyZXNzIGZpbGUgZGVzY3JpcHRvcj4iCittc2dzdHIgIjxlc3RhZG8gZGUgcGFxdWV0ZSB5IGRlc2NyaXB0b3IgZGUgcHJvZ3Jlc28gZGUgZmljaGVybz4iCisKKyM6IGxpYi9kcGtnL2xvZy5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgdG8gc3RhdHVzIGZkICVkIgorbXNnc3RyICJubyBzZSBwdWVkZSBlc2NyaWJpciBhbCBkZXNjcmlwdG9yIGRlIGZpY2hlcm8gZGUgZXN0YWRvICVkIgorCisjOiBsaWIvZHBrZy9tbGliLmM6NDQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAicmVhbGxvYyBmYWlsZWQgKCV6dSBieXRlcykiCittc2dpZCAibWFsbG9jIGZhaWxlZCAoJXp1IGJ5dGVzKSIKK21zZ3N0ciAiZmFsbG8gZW4gcmVhbGxvYyAoJXp1IGJ5dGVzKSIKKworIzogbGliL2Rwa2cvbWxpYi5jOjU4CisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWxsb2MgZmFpbGVkICglenUgYnl0ZXMpIgorbXNnc3RyICJmYWxsbyBlbiByZWFsbG9jICglenUgYnl0ZXMpIgorCisjOiBsaWIvZHBrZy9tbGliLmM6NzIgbGliL2Rwa2cvbWxpYi5jOjkwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNzcKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzozMzQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMDcKK21zZ2lkICJmYWlsZWQgdG8gYWxsb2NhdGUgbWVtb3J5IgorbXNnc3RyICJmYWxsbyBhbCBhc2lnbmFyIG1lbW9yaWEiCisKKyMgRklYTUU6IHN0ZCVzIGlzIGNvbXBsZXRlbHkgdW5zdWl0YWJsZSBmb3IgdHJhbnNsYXRpb24uIHN2CisjOiBsaWIvZHBrZy9tbGliLmM6MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBkdXAgZm9yIHN0ZCVzIgorbXNnc3RyICJmYWxsbyBhbCBlZmVjdHVhciBgZHVwJyBwYXJhIHN0ZCVzIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTAzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBkdXAgZm9yIGZkICVkIgorbXNnc3RyICJmYWxsbyBhbCBlZmVjdHVhciBgZHVwJyBwYXJhIGBmZCcgJWQiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMDkKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHBpcGUiCittc2dzdHIgImZhbGxvIGFsIGNyZWFyIHR1YmVyw61hIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTE3CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHdyaXRpbmcgdG8gJyVzJyIKK21zZ3N0ciAiZXJyb3IgYWwgZXNjcmliaXIgZW4gYCVzJyIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBmaWxlZGVzY3JpcHRvciBmbGFncyBmb3IgJS4yNTBzIgorbXNnc3RyICIiCisibm8gc2UgcHVlZGVuIGxlZXIgbGFzIHByb3BpZWRhZGVzIGRlbCBkZXNjcmlwdG9yIGRlIGZpY2hlcm9zIHBhcmEgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMjYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNldCBjbG9zZS1vbi1leGVjIGZsYWcgZm9yICUuMjUwcyIKK21zZ3N0ciAibm8gc2UgcHVlZGUgZXN0YWJsZWNlciBlbCBhdHJpYnV0byBjbG9zZS1vbi1leGVjIHBhcmEgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzo2MworIywgYy1mb3JtYXQKK21zZ2lkICJjb25maWd1cmF0aW9uIGVycm9yOiAlczolZDogJXMiCittc2dzdHIgImVycm9yIGRlIGNvbmZpZ3VyYWNpw7NuOiAlczogJWQ6ICVzIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gY29uZmlndXJhdGlvbiBmaWxlICclLjI1NXMnIGZvciByZWFkaW5nOiAlcyIKK21zZ3N0ciAiZmFsbG8gYWwgYWJyaXIgZWwgZmljaGVybyBkZSBjb25maWd1cmFjacOzbiBgJS4yNTVzJyBwYXJhIGxlY3R1cmE6ICVzIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYmFsYW5jZWQgcXVvdGVzIGluICclcyciCittc2dzdHIgImNvbWlsbGFzIG5vIGJhbGFuY2VhZGFzIGVuICclcyciCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gJyVzJyIKK21zZ3N0ciAib3BjacOzbiBgJXMnIGRlc2Nvbm9jaWRhIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTIxCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgbmVlZHMgYSB2YWx1ZSIKK21zZ3N0ciAiYCVzJyBuZWNlc2l0YSB1biB2YWxvciIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjEyNworIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGRvZXMgbm90IHRha2UgYSB2YWx1ZSIKK21zZ3N0ciAiYCVzJyBubyB1dGlsaXphIHVuIHZhbG9yIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTMzCisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWQgZXJyb3IgaW4gY29uZmlndXJhdGlvbiBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICJlcnJvciBkZSBsZWN0dXJhIGVuIGVsIGZpY2hlcm8gZGUgY29uZmlndXJhY2nDs24gYCUuMjU1cyciCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyBjb25maWd1cmF0aW9uIGZpbGUgYCUuMjU1cyciCittc2dzdHIgImVycm9yIGFsIGNlcnJhciBlbCBmaWNoZXJvIGRlIGNvbmZpZ3VyYWNpw7NuIGAlLjI1NXMnIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTcwCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIG9wZW5pbmcgY29uZmlndXJhdGlvbiBkaXJlY3RvcnkgJyVzJyIKK21zZ3N0ciAiZXJyb3IgYWwgY2VycmFyIGVsIGRpcmVjdG9yaW8gZGUgY29uZmlndXJhY2nDs24gYCVzJyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjIyOAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiAtLSVzIgorbXNnc3RyICJvcGNpw7NuIC0tJXMgZGVzY29ub2NpZGEiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBvcHRpb24gdGFrZXMgYSB2YWx1ZSIKK21zZ3N0ciAibGEgb3BjacOzbiAtLSVzIGxsZXZhIHVuIHBhcsOhbWV0cm8iCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBvcHRpb24gZG9lcyBub3QgdGFrZSBhIHZhbHVlIgorbXNnc3RyICJsYSBvcGNpw7NuIC0tJXMgbm8gbGxldmEgcGFyw6FtZXRyb3MiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyNDUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gLSVjIgorbXNnc3RyICJvcGNpw7NuIC0lYyBkZXNjb25vY2lkYSIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI1MAorIywgYy1mb3JtYXQKK21zZ2lkICItJWMgb3B0aW9uIHRha2VzIGEgdmFsdWUiCittc2dzdHIgImxhIG9wY2nDs24gLSVjIGxsZXZhIHVuIHBhcsOhbWV0cm8iCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiLSVjIG9wdGlvbiBkb2VzIG5vdCB0YWtlIGEgdmFsdWUiCittc2dzdHIgImxhIG9wY2nDs24gLSVjIG5vIGxsZXZhIHBhcsOhbWV0cm9zIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjcxCisjLCBjLWZvcm1hdAorbXNnaWQgIm9ic29sZXRlIG9wdGlvbiAnLS0lcydcbiIKK21zZ3N0ciAib3BjacOzbiBvYnNvbGV0YSBgLS0lcydcbiIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI4NworIywgYy1mb3JtYXQKK21zZ2lkICJjb25mbGljdGluZyBhY3Rpb25zIC0lYyAoLS0lcykgYW5kIC0lYyAoLS0lcykiCittc2dzdHIgImFjY2lvbmVzIGVuIGNvbmZsaWN0byAtJWMgKC0tJXMpIHkgLSVjICgtLSVzKSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHZhbHVlIGZvciBgJXMnIGZpZWxkIgorbXNnc3RyICJ2YWxvciBkdXBsaWNhZG8gcGFyYSBlbCBjYW1wbyBgJXMnIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjE0NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1c2VyLWRlZmluZWQgZmllbGQgbmFtZSBgJS4qcycgdG9vIHNob3J0IgorbXNnc3RyICJub21icmUgZGUgY2FtcG8gZGVmaW5pZG8gcG9yIGVsIHVzdWFyaW8gYCUuKnMnIGRlbWFzaWFkbyBjb3J0byIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoxNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHZhbHVlIGZvciB1c2VyLWRlZmluZWQgZmllbGQgYCUuKnMnIgorbXNnc3RyICJ2YWxvciBkdXBsaWNhZG8gcGFyYSBlbCBjYW1wbyBkZWZpbmlkbyBwb3IgZWwgdXN1YXJpbyBgJS4qcyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjA3Cittc2dpZCAiQ29uZmlndXJlZC1WZXJzaW9uIGZvciBwYWNrYWdlIHdpdGggaW5hcHByb3ByaWF0ZSBTdGF0dXMiCittc2dzdHIgIkNhbXBvIGBDb25maWd1cmVkLVZlcnNpb24nIHBhcmEgdW4gcGFxdWV0ZSBjb24gU3RhdHVzIG5vIGFwcm9waWFkbyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzICVzIGJ1dCB0cmlnZ2VycyBhcmUgYXdhaXRlZCIKK21zZ3N0ciAiZWwgcGFxdWV0ZSB0aWVuZSBlbCBlc3RhZG8gJXMgcGVybyBsb3MgZGlzcGFyYWRvcmVzIGVzdMOhbiBlbiBlc3BlcmEiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjIyCittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzIHRyaWdnZXJzLWF3YWl0ZWQgYnV0IG5vIHRyaWdnZXJzIGF3YWl0ZWQiCittc2dzdHIgIiIKKyJlbCBwYXF1ZXRlIHRpZW5lIGVsIGVzdGFkbyDCq3RyaWdnZXJzLWF3YWl0ZWTCuyBwZXJvIG5vIGhheSBuaW5nw7puIGRpc3BhcmFkb3IgIgorImVuIGVzcGVyYSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzICVzIGJ1dCB0cmlnZ2VycyBhcmUgcGVuZGluZyIKK21zZ3N0ciAiZWwgcGFxdWV0ZSB0aWVuZSBlc3RhZG8gJXMgcGVybyBsb3MgZGlzcGFyYWRvcmVzIGVzdMOhbiBwZW5kaWVudGVzIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjIzMgorbXNnaWQgInBhY2thZ2UgaGFzIHN0YXR1cyB0cmlnZ2Vycy1wZW5kaW5nIGJ1dCBubyB0cmlnZ2VycyBwZW5kaW5nIgorbXNnc3RyICIiCisiZWwgcGFxdWV0ZSB0aWVuZSBlbCBlc3RhZG8gwqt0cmlnZ2Vycy1wZW5kaW5nwrsgcGVybyBubyBoYXkgZGlzcGFyYWRvcmVzICIKKyJwZW5kaWVudGVzIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjI0MgorbXNnaWQgIlBhY2thZ2Ugd2hpY2ggaW4gc3RhdGUgbm90LWluc3RhbGxlZCBoYXMgY29uZmZpbGVzLCBmb3JnZXR0aW5nIHRoZW0iCittc2dzdHIgIiIKKyJQYXF1ZXRlIHF1ZSBubyBlc3RhbmRvIGluc3RhbGFkbyB0aWVuZSBjb25mZmlsZXMsIG5vcyBvbHZpZGFtb3MgZGUgZWxsb3MiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzM1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuIHBhY2thZ2UgaW5mbyBmaWxlIGAlLjI1NXMnIGZvciByZWFkaW5nIgorbXNnc3RyICIiCisiZmFsbG8gYWwgYWJyaXIgZWwgZmljaGVybyBkZSBpbmZvcm1hY2nDs24gZGVsIHBhcXVldGUgYCUuMjU1cycgcGFyYSBsZWVyIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjM0MQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW4ndCBzdGF0IHBhY2thZ2UgaW5mbyBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICJubyBzZSBwdWVkZSBlamVjdXRhciBgc3RhdCcgc29icmUgZWwgZmljaGVybyBgJS4yNTVzJyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2FuJ3QgbW1hcCBwYWNrYWdlIGluZm8gZmlsZSBgJS4yNTVzJyIKK21zZ3N0ciAibm8gc2UgcHVlZGUgZWplY3V0YXIgYG1tYXAnIHNvYnJlIGVsIGZpY2hlcm8gYCUuMjU1cyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzUyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW4ndCBzdGF0IHBhY2thZ2UgaW5mbyBmaWxlIGAlLjI1NXMnIgorbXNnaWQgInJlYWRpbmcgcGFja2FnZSBpbmZvIGZpbGUgJyUuMjU1cyciCittc2dzdHIgIm5vIHNlIHB1ZWRlIGVqZWN1dGFyIGBzdGF0JyBzb2JyZSBlbCBmaWNoZXJvIGAlLjI1NXMnIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjM2MworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2xvc2UgYWZ0ZXIgcmVhZDogYCUuMjU1cyciCittc2dzdHIgImZhbGxvIGFsIGNlcnJhciBkZXNwdcOpcyBkZSBsYSBsZWN0dXJhOiBgJS4yNTVzJyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiRU9GIGFmdGVyIGZpZWxkIG5hbWUgYCUuKnMnIgorbXNnc3RyICJFT0YgZGVzcHXDqXMgZGVsIG5vbWJyZSBkZWwgY2FtcG8gYCUuKnMnIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQwNworIywgYy1mb3JtYXQKK21zZ2lkICJuZXdsaW5lIGluIGZpZWxkIG5hbWUgYCUuKnMnIgorbXNnc3RyICJudWV2YSBsw61uZWEgZGVudHJvIGRlbCBub21icmUgZGVsIGNhbXBvIGAlLipzJyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiTVNET1MgRU9GICheWikgaW4gZmllbGQgbmFtZSBgJS4qcyciCittc2dzdHIgIkVPRiBkZSBNU0RPUyAoXlopIGRlbnRybyBkZWwgbm9tYnJlIGRlbCBjYW1wbyBgJS4qcyciCisKKyMgU2UgaGEgZGlzY3V0aWRvIGJhc3RhbnRlIGVuIGRlYmlhbi1sMTBuLXNwYW5pc2ggYWNlcmNhIGRlIGxhIGNvbnZlbmllbmNpYQorIyBvIG5vIGRlIGFjbGFyYXIgcXVlIGxvcyBkb3MgcHVudG9zIHNvbiBgOicgeSBubyBgLi4nCisjCisjIEEgZGVjaXIgdmVyZGFkLCB5IHNpIHVubyBsbyBtaXJhIGJpZW4sIHVuIHVzdWFyaW8gZGViZXLDrWEKKyMgc2VyIHJlYWxtZW50ZSBlc3TDunBpZG8gcGFyYSBjcmVlciBxdWUgZG9zIHB1bnRvcyBlcyBgLi4nIGVuIHZleiBkZSBgOicKKyMgcG9ycXVlIGVsIG1lbnNhamUgaGFibGEgY2xhcmFtZW50ZSBkZWwgbm9tYnJlIGRlbCBjYW1wbywgZXMgZGVjaXIKKyMgYWxnbyBjb21vICJQYWNrYWdlOiIgbyAiUHJpb3JpdHk6IiwgZXN0w6EgY2xhcm8gcG9yIGVsIGNvbnRleHRvCisjIHF1ZSBzZSB0cmF0YSBkZSA6IHkgbm8gZGUgLi4gcG9yIGxvIHF1ZSBubyBjcmVvIG5lY2VzYXJpYSBuaW5ndW5hCisjIGFjbGFyYWNpw7NuIGFkaWNpb25hbC4gc3YKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDE0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpZWxkIG5hbWUgYCUuKnMnIG11c3QgYmUgZm9sbG93ZWQgYnkgY29sb24iCittc2dzdHIgImVsIG5vbWJyZSBkZWwgY2FtcG8gYCUuKnMnIGRlYmUgZXN0YXIgc2VndWlkbyBwb3IgZG9zIHB1bnRvcyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiRU9GIGJlZm9yZSB2YWx1ZSBvZiBmaWVsZCBgJS4qcycgKG1pc3NpbmcgZmluYWwgbmV3bGluZSkiCittc2dzdHIgIkVPRiBhbnRlcyBkZWwgdmFsb3IgZGVsIGNhbXBvIGAlLipzJyAoZmFsdGEgbnVldmEgbMOtbmVhIGZpbmFsKSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiTVNET1MgRU9GIGNoYXIgaW4gdmFsdWUgb2YgZmllbGQgYCUuKnMnIChtaXNzaW5nIG5ld2xpbmU/KSIKK21zZ3N0ciAiIgorImNhcsOhY3RlciBFT0YgZGUgTVNET1MgZGVudHJvIGRlbCB2YWxvciBkZWwgY2FtcG8gYCUuKnMnICjCv2ZhbHRhIG51ZXZhIGzDrW5lYT8pIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQ0MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAibmV3bGluZSBpbiBmaWVsZCBuYW1lIGAlLipzJyIKK21zZ2lkICJibGFuayBsaW5lIGluIHZhbHVlIG9mIGZpZWxkICclLipzJyIKK21zZ3N0ciAibnVldmEgbMOtbmVhIGRlbnRybyBkZWwgbm9tYnJlIGRlbCBjYW1wbyBgJS4qcyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDYxCisjLCBjLWZvcm1hdAorbXNnaWQgIkVPRiBkdXJpbmcgdmFsdWUgb2YgZmllbGQgYCUuKnMnIChtaXNzaW5nIGZpbmFsIG5ld2xpbmUpIgorbXNnc3RyICJFT0YgZHVyYW50ZSBlbCB2YWxvciBkZWwgY2FtcG8gYCUuKnMnIChmYWx0YSBudWV2YSBsw61uZWEgZmluYWwpIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjU0NgorbXNnaWQgInNldmVyYWwgcGFja2FnZSBpbmZvIGVudHJpZXMgZm91bmQsIG9ubHkgb25lIGFsbG93ZWQiCittc2dzdHIgIiIKKyJzZSBlbmNvbnRyYXJvbiB2YXJpYXMgZW50cmFkYXMgZGUgaW5mb3JtYWNpw7NuIGRlIHBhcXVldGVzLFxuIgorInPDs2xvIHNlIHBlcm1pdGUgdW5hIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjU3MgorIywgYy1mb3JtYXQKK21zZ2lkICJubyBwYWNrYWdlIGluZm9ybWF0aW9uIGluIGAlLjI1NXMnIgorbXNnc3RyICJubyBoYXkgbmluZ3VuYSBpbmZvcm1hY2nDs24gZGUgcGFxdWV0ZXMgZW4gYCUuMjU1cyciCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjQ1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiJXMsIGluIGZpbGUgJyUuMjU1cycgbmVhciBsaW5lICVkIHBhY2thZ2UgJyUuMjU1cyc6XG4iCisjfCAiICIKK21zZ2lkICIiCisicGFyc2luZyBmaWxlICclLjI1NXMnIG5lYXIgbGluZSAlZCBwYWNrYWdlICclLjI1NXMnOlxuIgorIiAlLjI1NXMiCittc2dzdHIgIiIKKyIlcywgZW4gZWwgZmljaGVybyBgJS4yNTVzJyBjZXJjYSBkZSBsYSBsw61uZWEgJWQgcGFxdWV0ZSBgJS4yNTVzJzpcbiIKKyIgIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzo0OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiVzLCBpbiBmaWxlICclLjI1NXMnIG5lYXIgbGluZSAlZDpcbiIKKyN8ICIgIgorbXNnaWQgIiIKKyJwYXJzaW5nIGZpbGUgJyUuMjU1cycgbmVhciBsaW5lICVkOlxuIgorIiAlLjI1NXMiCittc2dzdHIgIiIKKyIlcywgZW4gZWwgZmljaGVybyBgJS4yNTVzJyBjZXJjYSBkZSBsYSBsw61uZWEgJWQ6XG4iCisiICIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MTI1Cittc2dpZCAibWF5IG5vdCBiZSBlbXB0eSBzdHJpbmciCittc2dzdHIgIm5vIHB1ZWRlIHNlciB1bmEgY2FkZW5hIHZhY8OtYSIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MTI3CisjLCBmdXp6eQorI3wgbXNnaWQgIm11c3Qgc3RhcnQgd2l0aCBhbiBhbHBoYW51bWVyaWMiCittc2dpZCAibXVzdCBzdGFydCB3aXRoIGFuIGFscGhhbnVtZXJpYyBjaGFyYWN0ZXIiCittc2dzdHIgImRlYmUgY29tZW56YXIgY29uIHVuIGNhcsOhY3RlciBhbGZhbnVtw6lyaWNvIgorCisjIEZJWE1FOiAlcyBtYXkgbm90IGJlIHRyYW5zbGF0ZWQuIHN2CisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoxMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2hhcmFjdGVyIGAlYycgbm90IGFsbG93ZWQgKG9ubHkgbGV0dGVycywgZGlnaXRzIGFuZCBjaGFyYWN0ZXJzIGAlcycpIgorbXNnc3RyICIiCisiZWwgY2Fyw6FjdGVyIGAlYycgbm8gZXN0w6EgcGVybWl0aWRvIChzb2xhbWVudGUgc2UgcGVybWl0ZW4gbGV0cmFzLCBkw61naXRvcyAiCisiY2FyYWN0ZXJlcyBgJXMnKSIKKworIyBGSVhNRTogQSB0cmFuc2xhdG9yIGNvbW1lbnQgc2hvdWxkIGNsYXJpZnkgYWJvdXQgbm9uZSdzIHNleCBoZXJlLiBzdgorIyBFc3RvIHNhbGUgY3VhbmRvIG5vIGhheSBuaW5ndW5hIHZlcnNpw7NuIGRpc3BvbmlibGUuCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoxNzgKKyMsIGZ1enp5CisjfCBtc2dpZCAiPG5vbmU+IgorbXNnY3R4dCAidmVyc2lvbiIKK21zZ2lkICI8bm9uZT4iCittc2dzdHIgIjxuaW5ndW5hPiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjA5Cittc2dpZCAidmVyc2lvbiBzdHJpbmcgaXMgZW1wdHkiCittc2dzdHIgImxhIGNhZGVuYSBkZSB2ZXJzacOzbiBlc3TDoSB2YWPDrWEiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjIyNAorbXNnaWQgInZlcnNpb24gc3RyaW5nIGhhcyBlbWJlZGRlZCBzcGFjZXMiCittc2dzdHIgImxhIGNhZGVuYSBkZSB2ZXJzacOzbiB0aWVuZSBlc3BhY2lvcyBlbiBzdSBpbnRlcmlvciIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjMwCittc2dpZCAiZXBvY2ggaW4gdmVyc2lvbiBpcyBub3QgbnVtYmVyIgorbXNnc3RyICJsYSDDqXBvY2EgZW4gbGEgdmVyc2nDs24gbm8gZXMgdW4gbsO6bWVybyIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjMyCittc2dpZCAibm90aGluZyBhZnRlciBjb2xvbiBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAibm8gaGF5IG5hZGEgdHJhcyBsb3MgZG9zIHB1bnRvcyBlbiBlbCBuw7ptZXJvIGRlIHZlcnNpw7NuIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyNDcKK21zZ2lkICJ2ZXJzaW9uIG51bWJlciBkb2VzIG5vdCBzdGFydCB3aXRoIGRpZ2l0IgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjI1MAorbXNnaWQgImludmFsaWQgY2hhcmFjdGVyIGluIHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICJjYXLDoWN0ZXIgaW52w6FsaWRvIGVuIGVsIG7Dum1lcm8gZGUgdmVyc2nDs24iCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjI1NAorbXNnaWQgImludmFsaWQgY2hhcmFjdGVyIGluIHJldmlzaW9uIG51bWJlciIKK21zZ3N0ciAiY2Fyw6FjdGVyIGludsOhbGlkbyBlbiBlbCBuw7ptZXJvIGRlIHJldmlzacOzbiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6Mjk5IGxpYi9kcGtnL3BhcnNlaGVscC5jOjMxMQorIywgYy1mb3JtYXQKK21zZ2lkICJtaXNzaW5nICVzIgorbXNnc3RyICJmYWx0YSAlcyIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MzAxIGxpYi9kcGtnL3BhcnNlaGVscC5jOjMxNAorIywgYy1mb3JtYXQKK21zZ2lkICJlbXB0eSB2YWx1ZSBmb3IgJXMiCittc2dzdHIgInZhbG9yIHZhY8OtbyBwYXJhICVzIgorCisjOiBsaWIvZHBrZy9wa2ctZm9ybWF0LmM6ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgYCVjJyBpbiBmaWVsZCB3aWR0aFxuIgorbXNnc3RyICJjYXLDoWN0ZXIgYCVjJyBpbnbDoWxpZG8gZW4gZWwgYW5jaG8gZGVsIGNhbXBvXG4iCisKKyM6IGxpYi9kcGtnL3BrZy1mb3JtYXQuYzoxNzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2xvc2luZyBicmFjZSBtaXNzaW5nIGluIGZvcm1hdFxuIgorbXNnc3RyICJGYWx0YSB1bmEgbGxhdmUgZGUgY2llcnJlIGVuIGVsIGZvcm1hdG9cbiIKKworIzogbGliL2Rwa2cvcGtnLXNob3cuYzo0MAorbXNnaWQgIihubyBkZXNjcmlwdGlvbiBhdmFpbGFibGUpIgorbXNnc3RyICIobm8gaGF5IG5pbmd1bmEgZGVzY3JpcGNpw7NuIGRpc3BvbmlibGUpIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGlnbm9yZSBzaWduYWwgJXMgYmVmb3JlIHJ1bm5pbmcgJS4yNTBzIgorbXNnc3RyICJubyBzZSBwdWVkZSBkZXNjYXJ0YXIgbGEgc2XDsWFsICVzIGFudGVzIGRlIGVqZWN1dGFyICUuMjUwcyIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjY4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHVuLWNhdGNoaW5nIHNpZ25hbCAlczogJXNcbiIKK21zZ3N0ciAiZXJyb3IgYWwgbm8gbWFuZWphciBsYSBzZcOxYWwgJXM6ICVzXG4iCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzo3OAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyAoc3VicHJvY2Vzcyk6ICVzXG4iCittc2dzdHIgIiVzIChzdWJwcm9jZXNvKTogJXNcbiIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjg5IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo0NTQKK21zZ2lkICJmb3JrIGZhaWxlZCIKK21zZ3N0ciAiZmFsbG8gZW4gYGZvcmsnIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTE5CisjLCBjLWZvcm1hdAorbXNnaWQgInN1YnByb2Nlc3MgJXMgcmV0dXJuZWQgZXJyb3IgZXhpdCBzdGF0dXMgJWQiCittc2dzdHIgImVsIHN1YnByb2Nlc28gJXMgZGV2b2x2acOzIGVsIGPDs2RpZ28gZGUgc2FsaWRhIGRlIGVycm9yICVkIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTI4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ3YWl0IGZvciBzdWJwcm9jZXNzICVzIGZhaWxlZCIKK21zZ2lkICJzdWJwcm9jZXNzICVzIHdhcyBpbnRlcnJ1cHRlZCIKK21zZ3N0ciAiZmFsbMOzIGxhIG9yZGVuIGB3YWl0JyBwYXJhIGVsIHN1YnByb2Nlc28gJXMiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInN1YnByb2Nlc3MgJXMga2lsbGVkIGJ5IHNpZ25hbCAoJXMpJXMiCittc2dpZCAic3VicHJvY2VzcyAlcyB3YXMga2lsbGVkIGJ5IHNpZ25hbCAoJXMpJXMiCittc2dzdHIgImVsIHN1YnByb2Nlc28gJXMgZnVlIHRlcm1pbmFkbyBwb3IgbGEgc2XDsWFsICglcyklcyIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEzMgorbXNnaWQgIiwgY29yZSBkdW1wZWQiCittc2dzdHIgIiwgdm9sY2FkbyBkZSDCq2NvcmXCuyIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJzdWJwcm9jZXNzICVzIGZhaWxlZCB3aXRoIHdhaXQgc3RhdHVzIGNvZGUgJWQiCittc2dzdHIgImVsIHN1YnByb2Nlc28gJXMgZmFsbMOzIGNvbiBjw7NkaWdvIGRlIGVzdGFkbyBkZSBlc3BlcmEgJWQiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxNTEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQ2MQorIywgYy1mb3JtYXQKK21zZ2lkICJ3YWl0IGZvciBzdWJwcm9jZXNzICVzIGZhaWxlZCIKK21zZ3N0ciAiZmFsbMOzIGxhIG9yZGVuIGB3YWl0JyBwYXJhIGVsIHN1YnByb2Nlc28gJXMiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgcGFja2FnZSBuYW1lIGAlLjI1MHMnIGluIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKyJub21icmUgZGUgcGFxdWV0ZSBpbnbDoWxpZG8gYCUuMjUwcycgZW4gbGEgbGlzdGEgZGVyZWZlcmVuY2lhZGEgZGUgIgorImRpc3BhcmFkb3JlcyBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJ1bmNhdGVkIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImZpY2hlcm8gZGVyZWZlcmVuY2lhZG8gZGUgZGlzcGFyYWRvcmVzIHRydW5jYWRvIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDo4NQorIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyBhdCBjaGFyYWN0ZXIgYCVzJyVzIgorbXNnc3RyICIiCisiZXJyb3Igc2ludMOhY3RpY28gZW4gbGEgbGlzdGEgZGVyZWZlcmVuY2lhZGEgZGUgZGlzcGFyYWRvcmVzIGAlLjI1MHMnIGVuIGVsICIKKyJjYXLDoWN0ZXIgYCVzJyVzIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4vY3JlYXRlIHRyaWdnZXJzIGxvY2tmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisibm8gc2UgcHVlZGUgYWJyaXIvY3JlYXIgZWwgZmljaGVybyBkZSBibG9xdWVvIGRlIGxvcyBkaXNwYXJhZG9yZXMgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjE0MQorIywgZnV6enkKKyN8IG1zZ2lkICJ0cmlnZ2VyZWQiCittc2dpZCAidHJpZ2dlcnMgYXJlYSIKK21zZ3N0ciAiZGlzcGFyYWRvIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorIm5vIHNlIHB1ZWRlIGVmZWN0dWFyIGBzdGF0JyBzb2JyZSBlbCBmaWNoZXJvIGRlcmVmZXJlbmNpYWRvIGRlIGRpc3BhcmFkb3JlcyBgIgorIiUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjE2NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJubyBzZSBwdWVkZSBhYnJpciBlbCBmaWNoZXJvIGRlIGRpc3BhcmFkb3JlcyBkZXJlZmVyZW5jaWFkbyBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MTc5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuL2NyZWF0ZSBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorIm5vIHNlIHB1ZWRlIGFicmlyL2NyZWFyIGVsIG51ZXZvIGZpY2hlcm8gZGUgZGlzcGFyYWRvcmVzIGRlcmVmZXJlbmNpYWRvIGAiCisiJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MjE1CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHJlYWRpbmcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiZXJyb3IgYWwgbGVlciBsb3MgZGlzcGFyYWRvcmVzIGRlbCBmaWNoZXJvIGRlcmVmZXJlbmNpYWRvIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoyMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ldyB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisibm8gc2UgcHVlZGUgYWJyaXIgZWwgbnVldm8gZmljaGVybyBkZXJlZmVyZW5jaWFkbyBkZSBkaXNwYXJhZG9yZXMgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjIyOAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKyJubyBzZSBwdWVkZSBjZXJyYXIgZWwgbnVldm8gZmljaGVybyBkZXJlZmVyZW5jaWFkbyBkZSBkaXNwYXJhZG9yZXMgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjIzMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorIm5vIHNlIHB1ZWRlIGluc3RhbGFyIGVsIG51ZXZvIGZpY2hlcm8gZGVyZWZlcmVuY2lhZG8gZGUgZGlzcGFyYWRvcmVzIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MjIyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpbnZhbGlkIG9yIHVua25vd24gc3ludGF4IGluIHRyaWdnZXIgbmFtZSBgJS4yNTBzJyAoaW4gdHJpZ2dlciBpbnRlcmVzdHMgZm9yICIKKyJwYWNrYWdlIGAlLjI1MHMnKSIKK21zZ3N0ciAiIgorInNpbnRheGlzIGRlc2Nvbm9jaWRhIG8gaW52w6FsaWRhIGVuIGVsIG5vbWJyZSBkZWwgZGlzcGFyYWRvciBgJS4yNTBzJyAoZW4gZWwgIgorImRpc3BhcmFkb3IgaW50ZXJlc2FkbyBwYXJhIGVsIHBhcXVldGUgYCUuMjUwcycpIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MjYzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuIHRyaWdnZXIgaW50ZXJlc3QgbGlzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisibm8gc2UgcHVlZGUgYWJyaXIgZWwgbnVldm8gZmljaGVybyBkZSBsaXN0YSBkZSBpbnRlcmVzZXMgZGUgZGlzcGFyYWRvcmVzIGAiCisiJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjI5MgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmV3aW5kIHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibm8gc2UgcHVlZGUgcmVib2JpbmFyIGVsIGZpY2hlcm8gZGUgaW50ZXJlc2VzIGRlIGRpc3BhcmFkb3JlcyBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMwNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIHN5bnRheCBlcnJvcjsgaWxsZWdhbCBwYWNrYWdlIG5hbWUgYCUuMjUwcyc6ICIKKyIlLjI1MHMiCittc2dzdHIgIiIKKyJlcnJvciBzaW50w6FjdGljbyBlbiBlbCBmaWNoZXJvIGRlIGludGVyZXNlcyBkZWwgZGlzcGFyYWRvciBgJS4yNTBzJzsgbm9tYnJlICIKKyJkZSBwYXF1ZXRlIGlsZWdhbCBgJS4yNTBzJzogJS4yNTBzIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzE4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisibm8gc2UgcHVlZGUgZXNjcmliaXIgZWwgbnVldm8gZmljaGVybyBkZSBpbnRlcmVzZXMgZGUgZGlzcGFyYWRvcmVzIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzIxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlICclLjI1MHMnIgorbXNnc3RyICIiCisibm8gc2UgcHVlZGUgdm9sY2FyIGVsIG51ZXZvIGZpY2hlcm8gZGUgaW50ZXJlc2VzIGRlIGRpc3BhcmFkb3JlcyBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMyNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlICclLjI1MHMnIgorbXNnc3RyICIiCisibm8gc2UgcHVlZGUgZWplY3V0YXIgwqtzeW5jwrsgc29icmUgZWwgbnVldm8gZmljaGVybyBkZSBpbnRlcmVzZXMgZGUgIgorImRpc3BhcmFkb3JlcyBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMzMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisibm8gc2UgcHVlZGUgaW5zdGFsYXIgdW4gbnVldm8gZmljaGVybyBkZSBpbnRlcmVzZXMgZGUgZGlzcGFyYWRvcmVzIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzQwIGxpYi9kcGtnL3RyaWdsaWIuYzozNDIgbGliL2Rwa2cvdHJpZ2xpYi5jOjQ3MgorIzogc3JjL3JlbW92ZS5jOjI4NiBzcmMvcmVtb3ZlLmM6Mzc3CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZW1vdmUgYCUuMjUwcyciCittc2dzdHIgIm5vIHNlIHB1ZWRlIGJvcnJhciBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjM2MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKyJubyBzZSBwdWVkZSBjcmVhciB1biBudWV2byBmaWNoZXJvIGRlIGludGVyZXNlcyBkZSBkaXNwYXJhZG9yZXMgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozODMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKyJubyBzZSBwdWVkZSBjZXJyYXIgZWwgbnVldm8gZmljaGVybyBkZSBpbnRlcmVzZXMgZGUgZGlzcGFyYWRvcmVzIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDU2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkdXBsaWNhdGUgZmlsZSB0cmlnZ2VyIGludGVyZXN0IGZvciBmaWxlbmFtZSBgJS4yNTBzJyBhbmQgcGFja2FnZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorImludGVyw6lzIGRlIGRpc3BhcmFkb3IgZGUgZmljaGVybyBkdXBsaWNhZG8gcGFyYSBlbCBmaWNoZXJvIGAlLjI1MHMnIHkgZWwgIgorInBhcXVldGUgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJubyBzZSBwdWRvIGNyZWFyIGVsIG51ZXZvIGZpY2hlcm8gZGUgZGlzcGFyYWRvcmVzIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDkzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJubyBzZSBwdWRvIGVzY3JpYmlyIGVsIG51ZXZvIGZpY2hlcm8gZGUgZGlzcGFyYWRvcmVzIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDk2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlICclLjI1MHMnIgorbXNnc3RyICJubyBzZSBwdWRvIHZvbGNhciBlbCBudWV2byBmaWNoZXJvIGRlIGRpc3BhcmFkb3JlcyBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ5OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlICclLjI1MHMnIgorbXNnc3RyICJubyBzZSBwdWRvIGhhY2VyIMKrc3luY8K7IGVuIGVsIG51ZXZvIGZpY2hlcm8gZGUgZGlzcGFyYWRvcmVzIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTAzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJubyBzZSBwdWRvIGNlcnJhciBlbCBudWV2byBmaWNoZXJvIGRlIGRpc3BhcmFkb3JlcyBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjUwNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGFzIGAlLjI1MHMnIgorbXNnc3RyICJubyBzZSBwdWVkZSBpbnN0YWxhciBlbCBudWV2byBmaWNoZXJvIGRlIGRpc3BhcmFkb3JlcyBjb21vIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTQyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibm8gc2UgcHVlZGUgbGVlciBlbCBmaWNoZXJvIGRlIGRpc3BhcmFkb3JlcyBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjU1MgorIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJlcnJvciBzaW50w6FjdGljbyBlbiBlbCBmaWNoZXJvIGRlIGRpc3BhcmFkb3JlcyBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjU2MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZmlsZSB0cmlnZ2VycyByZWNvcmQgbWVudGlvbnMgaWxsZWdhbCBwYWNrYWdlIG5hbWUgYCUuMjUwcycgKGZvciBpbnRlcmVzdCBpbiAiCisiZmlsZSBgJS4yNTBzJyk6ICUuMjUwcyIKK21zZ3N0ciAiIgorImVsIGZpY2hlcm8gZGUgcmVnaXN0cm9zIGRlIGRpc3BhcmFkb3JlcyBtZW5jaW9uYSB1biBub21icmUgZGUgcGFxdWV0ZSBpbGVnYWwgIgorImAlLjI1MHMnIChlbiBlbCBmaWNoZXJvIGAlLjI1MHMnKTogJS4yNTBzIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NjY1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ0cmlnZ2VycyBjaSBmaWxlIGAlLjI1MHMnIGNvbnRhaW5zIGlsbGVnYWwgdHJpZ2dlciBzeW50YXggaW4gdHJpZ2dlciBuYW1lIGAiCisiJS4yNTBzJzogJS4yNTBzIgorbXNnc3RyICIiCisiZmljaGVybyBkZSBkaXNwYXJhZG9yZXMgY2kgYCUuMjUwcycgY29udGllbmUgdW5hIHNpbnRheGlzIGRlIGRpc3BhcmFkb3IgIgorImlsZWdhbCBlbiBlbCBub21icmUgZGUgZGlzcGFyYWRvciBgJS4yNTBzJzogJS4yNTBzIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Njg0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIHRyaWdnZXJzIGNpIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5vIHNlIHB1ZWRlIGFicmlyIGVsIGZpY2hlcm8gZGUgZGlzcGFyYWRvcmVzIGNpIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Njk5Cittc2dpZCAidHJpZ2dlcnMgY2kgZmlsZSBjb250YWlucyB1bmtub3duIGRpcmVjdGl2ZSBzeW50YXgiCittc2dzdHIgIiIKKyJlbCBmaWNoZXJvIGRlIGRpc3BhcmFkb3JlcyBjaSBjb250aWVuZSB1bmEgc2ludGF4aXMgZGUgZGlyZWN0aXZhIGRlc2Nvbm9jaWRhIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NzEyCisjLCBjLWZvcm1hdAorbXNnaWQgInRyaWdnZXJzIGNpIGZpbGUgY29udGFpbnMgdW5rbm93biBkaXJlY3RpdmUgYCUuMjUwcyciCittc2dzdHIgIiIKKyJlbCBmaWNoZXJvIGRlIGRpc3BhcmFkb3JlcyBjaSBjb250aWVuZSB1bmEgZGlyZWN0aXZhIGRlc2Nvbm9jaWRhIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Nzc2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdHJpZ2dlcnMgc3RhdGUgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICJubyBzZSBwdWVkZSBjcmVhciBlbCBkaXJlY3RvcmlvIGRlIGVzdGFkbyBkZSBkaXNwYXJhZG9yZXMgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo3NzkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNldCBvd25lcnNoaXAgb2YgdHJpZ2dlcnMgc3RhdGUgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICIiCisibm8gc2UgcHVlZGUgZXN0YWJsZWNlciBlbCBwcm9waWV0YXJpbyBkZWwgZGlyZWN0b3JpbyBkZSBlc3RhZG8gZGUgIgorImRpc3BhcmFkb3JlcyBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ25hbWUuYzozNAorbXNnaWQgImVtcHR5IHRyaWdnZXIgbmFtZXMgYXJlIG5vdCBwZXJtaXR0ZWQiCittc2dzdHIgIm5vIHNlIHBlcm1pdGVuIG5vbWJyZXMgZGUgZGlzcGFyYWRvcmVzIHZhY8Otb3MiCisKKyM6IGxpYi9kcGtnL3RyaWduYW1lLmM6MzgKK21zZ2lkICJ0cmlnZ2VyIG5hbWUgY29udGFpbnMgaW52YWxpZCBjaGFyYWN0ZXIiCittc2dzdHIgImVsIG5vbWJyZSBkZWwgZGlzcGFyYWRvciBjb250aWVuZSBjYXJhY3RlcmVzIGludsOhbGlkb3MiCisKKyM6IGxpYi9kcGtnL3V0aWxzLmM6NTYKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVhZCBlcnJvciBpbiBgJS4yNTBzJyIKK21zZ3N0ciAiZXJyb3IgZGUgbGVjdHVyYSBlbiBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdXRpbHMuYzo2MQorIywgYy1mb3JtYXQKK21zZ2lkICJmZ2V0cyBnYXZlIGFuIGVtcHR5IHN0cmluZyBmcm9tIGAlLjI1MHMnIgorbXNnc3RyICJmZ2V0cyBkacOzIHVuYSBjYWRlbmEgdmFjw61hIGRlIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy91dGlscy5jOjYzCisjLCBjLWZvcm1hdAorbXNnaWQgInRvby1sb25nIGxpbmUgb3IgbWlzc2luZyBuZXdsaW5lIGluIGAlLjI1MHMnIgorbXNnc3RyICJsw61uZWEgZGVtYXNpYWRvIGxhcmdhIG8gZmFsdGEgdW4gc2FsdG8gZGUgbMOtbmVhIGVuIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy91dGlscy5jOjc1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW9mIHJlYWRpbmcgYCUuMjUwcyciCittc2dzdHIgImZpbiBkZSBmaWNoZXJvIGluZXNwZXJhZG8gZW4gYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3ZhcmJ1Zi5jOjgyIGxpYi9kcGtnL3ZhcmJ1Zi5jOjg4Cittc2dpZCAiZXJyb3IgZm9ybWF0dGluZyBzdHJpbmcgaW50byB2YXJidWYgdmFyaWFibGUiCittc2dzdHIgImVycm9yIGFsIGZvcm1hdGVhciBsYSBjYWRlbmEgZW4gdW5hIHZhcmlhYmxlIMKrdmFyYnVmwrsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjE3OSBzcmMvYXJjaGl2ZXMuYzoyMDAgc3JjL2FyY2hpdmVzLmM6NzI0Cittc2dpZCAiZXJyb3IgcmVhZGluZyBmcm9tIGRwa2ctZGViIHBpcGUiCittc2dzdHIgImVycm9yIGFsIGxlZXIgZGUgdW5hIHR1YmVyw61hIGRlIGRwa2ctZGViIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxOTUKKyMsIGMtZm9ybWF0Cittc2dpZCAic2tpcHBlZCB1bnBhY2tpbmcgZmlsZSAnJS4yNTVzJyAocmVwbGFjZWQgb3IgZXhjbHVkZWQ/KSIKK21zZ3N0ciAiIgorInNlIG9taXRpw7MgZWwgZGVzZW1wYXF1ZXRhZG8gZGVsIGFyY2hpdm8gJyUuMjU1cycgKMK/cmVlbXBsYXphZG8gbyBleGNsdWlkbz8pIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoyNDYgc3JjL2FyY2hpdmVzLmM6MjUwCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHNldHRpbmcgdGltZXN0YW1wcyBvZiBgJS4yNTVzJyIKK21zZ3N0ciAiZXJyb3IgYWwgZXN0YWJsZWNlciBsYXMgZmVjaGFzIGRlIGAlLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoyNjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igc2V0dGluZyBvd25lcnNoaXAgb2Ygc3ltbGluayBgJS4yNTVzJyIKK21zZ3N0ciAiZXJyb3IgYWwgZXN0YWJsZWNlciBsYSBwcm9waWVkYWQgZGVsIGVubGFjZSBzaW1iw7NsaWNvIGAlLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoyNjUgc3JjL2FyY2hpdmVzLmM6NzM0IHNyYy9zdGF0Y21kLmM6MTYzCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHNldHRpbmcgb3duZXJzaGlwIG9mIGAlLjI1NXMnIgorbXNnc3RyICJlcnJvciBhbCBlc3RhYmxlY2VyIGVsIHByb3BpZXRhcmlvIGRlIGAlLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoyNjcgc3JjL2FyY2hpdmVzLmM6NzM2IHNyYy9zdGF0Y21kLmM6MTY1CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHNldHRpbmcgcGVybWlzc2lvbnMgb2YgYCUuMjU1cyciCittc2dzdHIgImVycm9yIGFsIGVzdGFibGVjZXIgbG9zIHBlcm1pc29zIGRlIGAlLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzozOTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHN0YXQgKGRlcmVmZXJlbmNlKSBleGlzdGluZyBzeW1saW5rIGAlLjI1MHMnIgorbXNnc3RyICIiCisibm8gc2UgcHVlZGUgbGVlciAoZGVzcmVmZXJlbmNpYXIpIGVsIGVubGFjZSBzaW1iw7NsaWNvIGAlLjI1MHMnIGV4aXN0ZW50ZSIKKworIzogc3JjL2FyY2hpdmVzLmM6NDE3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmYWlsZWQgdG8gc3RhdCAoZGVyZWZlcmVuY2UpIHByb3Bvc2VkIG5ldyBzeW1saW5rIHRhcmdldCBgJS4yNTBzJyBmb3IgIgorInN5bWxpbmsgYCUuMjUwcyciCittc2dzdHIgIiIKKyJubyBzZSBwdWVkZSBsZWVyIChkZXNyZWZlcmVuY2lhcikgZWwgZW5sYWNlIHNpbWLDs2xpY28gcHJvcHVlc3RvIGNvbW8gZGVzdGlubyAiCisiYCUuMjUwcycgcGFyYSBlbCBlbmxhY2Ugc2ltYsOzbGljbyBgJS4yNTBzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6NDc1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ0cnlpbmcgdG8gb3ZlcndyaXRlIGAlLjI1MHMnLCB3aGljaCBpcyB0aGUgZGl2ZXJ0ZWQgdmVyc2lvbiBvZiBgIgorIiUuMjUwcycgKHBhY2thZ2U6ICUuMTAwcykiCittc2dzdHIgIiIKKyJpbnRlbnRhbmRvIHNvYnJlZXNjcmliaXIgYCUuMjUwcycsIHF1ZSBlcyBsYSB2ZXJzacOzbiBkZXN2aWFkYSBkZSBgIgorIiUuMjUwcycgKHBhcXVldGUgJS4xMDBzKSIKKworIzogc3JjL2FyY2hpdmVzLmM6NDgxCisjLCBjLWZvcm1hdAorbXNnaWQgInRyeWluZyB0byBvdmVyd3JpdGUgYCUuMjUwcycsIHdoaWNoIGlzIHRoZSBkaXZlcnRlZCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICIiCisiaW50ZW50YW5kbyBzb2JyZWVzY3JpYmlyIGAlLjI1MHMnLCBxdWUgZXMgbGEgdmVyc2nDs24gZGVzdmlhZGEgZGUgYCUuMjUwcyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjUxMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBgJS4yNTVzJyAod2hpY2ggSSB3YXMgYWJvdXQgdG8gaW5zdGFsbCkiCittc2dzdHIgIiIKKyJubyBzZSBwdWVkZSBlZmVjdHVhciBgc3RhdCcgc29icmUgYCUuMjU1cycgKHF1ZSBlcyBsbyBxdWUgc2UgaWJhIGEgaW5zdGFsYXIpIgorCisjIFRpbmd1YXJvIHB1c28gImRlc2hhY2VyIGVsIGzDrW8iLiBTZSBhZG1pdGVuIGlkZWFzLiBzdgorIzogc3JjL2FyY2hpdmVzLmM6NTE5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1bmFibGUgdG8gY2xlYW4gdXAgbWVzcyBzdXJyb3VuZGluZyBgJS4yNTVzJyBiZWZvcmUgaW5zdGFsbGluZyBhbm90aGVyICIKKyJ2ZXJzaW9uIgorbXNnc3RyICIiCisibm8gc2UgcHVlZGUgYXJyZWdsYXIgZWwgZGVzYWd1aXNhZG8gZGUgYCUuMjU1cycgYW50ZXMgZGUgaW5zdGFsYXIgb3RyYSAiCisidmVyc2nDs24iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjUyNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCByZXN0b3JlZCBgJS4yNTVzJyBiZWZvcmUgaW5zdGFsbGluZyBhbm90aGVyIHZlcnNpb24iCittc2dzdHIgIiIKKyJubyBzZSBwdWVkZSBlZmVjdHVhciBgc3RhdCcgc29icmUgZWwgYCUuMjU1cycgcmVzdGFibGVjaWRvIGFudGVzXG4iCisiZGUgaW5zdGFsYXIgb3RyYSB2ZXJzacOzbiIKKworIzogc3JjL2FyY2hpdmVzLmM6NTYxCisjLCBjLWZvcm1hdAorbXNnaWQgImFyY2hpdmUgY29udGFpbmVkIG9iamVjdCBgJS4yNTVzJyBvZiB1bmtub3duIHR5cGUgMHgleCIKK21zZ3N0ciAiZWwgYXJjaGl2byBjb250aWVuZSBlbCBvYmpldG8gYCUuMjU1cycgZGUgdGlwbyAweCV4IGRlc2Nvbm9jaWRvIgorCisjIEZJWE1FOiBUcmFkdWNjacOzbiBkZSAnc3RhdCcKKyM6IHNyYy9hcmNoaXZlcy5jOjYyNiBzcmMvZGl2ZXJ0Y21kLmM6MTUwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo2ODIKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjIyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjg0CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTQ0MSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTY4MAorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxNjcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNDQKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTI3CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzdGF0IGZpbGUgJyVzJyIKK21zZ3N0ciAibm8gc2UgcHVlZGUgZWZlY3R1YXIgYHN0YXQnIGVsIGZpY2hlcm8gYCVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6NjQxCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlcGxhY2luZyBmaWxlcyBpbiBvbGQgcGFja2FnZSAlcyAuLi5cbiIKK21zZ3N0ciAiUmVlbXBsYXphbmRvIGZpY2hlcm9zIGRlbCBwYXF1ZXRlIGFudGlndW8gJXMgLi4uXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjY0NQorIywgYy1mb3JtYXQKK21zZ2lkICJSZXBsYWNlZCBieSBmaWxlcyBpbiBpbnN0YWxsZWQgcGFja2FnZSAlcyAuLi5cbiIKK21zZ3N0ciAiUmVlbXBsYXphZG8gcG9yIGZpY2hlcm9zIGVuIGVsIHBhcXVldGUgaW5zdGFsYWRvICVzIC4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInRyeWluZyB0byBvdmVyd3JpdGUgZGlyZWN0b3J5ICclLjI1MHMnIGluIHBhY2thZ2UgJS4yNTBzICUuMjUwcyB3aXRoICIKKyJub25kaXJlY3RvcnkiCittc2dzdHIgIiIKKyJpbnRlbnRhbmRvIHNvYnJlZXNjcmliaXIgZWwgZGlyZWN0b3JpbyBgJS4yNTBzJyBkZWwgcGFxdWV0ZSAlLjI1MHMgJS4yNTBzICIKKyJjb24gdW4gbm8gZGlyZWN0b3JpbyIKKworIzogc3JjL2FyY2hpdmVzLmM6NjYxCisjLCBjLWZvcm1hdAorbXNnaWQgInRyeWluZyB0byBvdmVyd3JpdGUgJyUuMjUwcycsIHdoaWNoIGlzIGFsc28gaW4gcGFja2FnZSAlLjI1MHMgJS4yNTBzIgorbXNnc3RyICIiCisiaW50ZW50YW5kbyBzb2JyZWVzY3JpYmlyIGAlLjI1MHMnLCBxdWUgZXN0w6EgdGFtYmnDqW4gZW4gZWwgcGFxdWV0ZSAlLjI1MHMgIgorIiUuMjUwcyIKKworIzogc3JjL2FyY2hpdmVzLmM6NzExCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgYCUuMjU1cycgKHdoaWxlIHByb2Nlc3NpbmcgYCUuMjU1cycpIgorbXNnc3RyICJubyBzZSBwdWRvIGNyZWFyIGAlLjI1NXMnIChtaWVudHJhcyBzZSBwcm9jZXNhYmEgYCUuMjU1cycpIgorCisjIEZJWE1FOiBJdCBpcyBub3QgY2xlYXIgZW5vdWdoIHdoYXQgdGhlIGAlLjI1NXMnIGlzIGFib3V0LiBzdgorIzogc3JjL2FyY2hpdmVzLmM6NzE4CisjLCBjLWZvcm1hdAorbXNnaWQgImJhY2tlbmQgZHBrZy1kZWIgZHVyaW5nIGAlLjI1NXMnIgorbXNnc3RyICJlcnJvciBlbiBkcGtnLWRlYiBkdXJhbnRlIGAlLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NDQgc3JjL2FyY2hpdmVzLmM6OTA4IHNyYy9hcmNoaXZlcy5jOjk0OQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nL3dyaXRpbmcgYCUuMjU1cyciCittc2dzdHIgImVycm9yIGFsIGNlcnJhci9lc2NyaWJpciBgJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6NzQ4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIHBpcGUgYCUuMjU1cyciCittc2dzdHIgImVycm9yIGFsIGNyZWFyIGxhIHR1YmVyw61hIGAlLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NTMgc3JjL2FyY2hpdmVzLmM6NzU4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIGRldmljZSBgJS4yNTVzJyIKK21zZ3N0ciAiZXJyb3IgYWwgY3JlYXIgZWwgZGlzcG9zaXRpdm8gYCUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc3MQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBoYXJkIGxpbmsgYCUuMjU1cyciCittc2dzdHIgImVycm9yIGFsIGNyZWFyIGVsIGVubGFjZSBkdXJvIGAlLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NzcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjUzOQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBzeW1ib2xpYyBsaW5rIGAlLjI1NXMnIgorbXNnc3RyICJlcnJvciBhbCBjcmVhciBlbCBlbmxhY2Ugc2ltYsOzbGljbyBgJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6NzgzCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIGRpcmVjdG9yeSBgJS4yNTVzJyIKK21zZ3N0ciAiZXJyb3IgYWwgY3JlYXIgZWwgZGlyZWN0b3JpbyBgJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6ODIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBtb3ZlIGFzaWRlIGAlLjI1NXMnIHRvIGluc3RhbGwgbmV3IHZlcnNpb24iCittc2dzdHIgIm5vIHNlIHB1ZWRlIGFwYXJ0YXIgYCUuMjU1cycgcGFyYSBpbnN0YWxhciB1bmEgbnVldmEgdmVyc2nDs24iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjgzMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MzIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIGxpbmsgYCUuMjU1cyciCittc2dzdHIgIm5vIHNlIHB1ZWRlIGxlZXIgZWwgZW5sYWNlIGAlLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4MzQgc3JjL2NvbmZpZ3VyZS5jOjQyMworIywgYy1mb3JtYXQKK21zZ2lkICJzeW1ib2xpYyBsaW5rICclLjI1MHMnIHNpemUgaGFzIGNoYW5nZWQgZnJvbSAlamQgdG8gJXpkIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjgzOQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gbWFrZSBiYWNrdXAgc3ltbGluayBmb3IgYCUuMjU1cyciCittc2dzdHIgIm5vIHNlIHB1ZWRlIHJlc3BhbGRhciBlbmxhY2Ugc2ltYsOzbGljbyBwYXJhIGAlLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNob3duIGJhY2t1cCBzeW1saW5rIGZvciBgJS4yNTVzJyIKK21zZ3N0ciAiIgorIm5vIHNlIHB1ZWRlIGVmZWN0dWFyIGBjaG93bicgc29icmUgZWwgZW5sYWNlIHNpbWLDs2xpY28gZGUgcmVzcGFsZG8gZGUgYCIKKyIlLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4NDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG1ha2UgYmFja3VwIGxpbmsgb2YgYCUuMjU1cycgYmVmb3JlIGluc3RhbGxpbmcgbmV3IHZlcnNpb24iCittc2dzdHIgIiIKKyJubyBzZSBwdWVkZSBjcmVhciB1biBlbmxhY2UgZGUgc2VndXJpZGFkIGRlIGAlLjI1NXMnIGFudGVzIGRlIGluc3RhbGFyXG4iCisibGEgbnVldmEgdmVyc2nDs24iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjg2MyBzcmMvYXJjaGl2ZXMuYzo5NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IHZlcnNpb24gb2YgYCUuMjU1cyciCittc2dzdHIgIm5vIHNlIHB1ZWRlIGluc3RhbGFyIHVuYSBudWV2YSB2ZXJzacOzbiBkZSBgJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6OTAyIHNyYy9hcmNoaXZlcy5jOjk0NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiAnJS4yNTVzJyIKK21zZ3N0ciAibm8gc2UgcHVlZGUgYWJyaXIgYCUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjk0NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBmaWxlICclLjI1NXMnIgorbXNnc3RyICJubyBzZSBwdWVkZSBoYWNlciDCq3N5bmPCuyBlbiBlbCBmaWNoZXJvIGAlLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDAwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpZ25vcmluZyBkZXBlbmRlbmN5IHByb2JsZW0gd2l0aCAlczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorIm5vIHNlIHRlbmRyw6EgZW4gY3VlbnRhIGVsIHByb2JsZW1hIGRlIGRlcGVuZGVuY2lhIGNvbiAlczpcbiIKKyIlcyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAwNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiY29uc2lkZXJpbmcgZGVjb25maWd1cmF0aW9uIG9mIGVzc2VudGlhbFxuIgorIiBwYWNrYWdlICVzLCB0byBlbmFibGUgJXMuIgorbXNnc3RyICIiCisiY29uc2lkZXJhbmRvIGxhIGRlc2NvbmZpZ3VyYWNpw7NuIGRlbCBwYXF1ZXRlXG4iCisiIGVzZW5jaWFsICVzLCBwYXJhIGFjdGl2YXIgJXMuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDA4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBubywgJXMgaXMgZXNzZW50aWFsLCB3aWxsIG5vdCBkZWNvbmZpZ3VyZVxuIgorIiBpdCBpbiBvcmRlciB0byBlbmFibGUgJXMuXG4iCittc2dzdHIgIiIKKyJkcGtnOiBubywgJXMgZXMgZXNlbmNpYWwsIG5vIHNlcsOhIGRlc2NvbmZpZ3VyYWRvXG4iCisiIHBhcmEgYWN0aXZhciAlcy5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAyMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogbm8sIGNhbm5vdCBwcm9jZWVkIHdpdGggJXMgKC0tYXV0by1kZWNvbmZpZ3VyZSB3aWxsIGhlbHApOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogbm8sIG5vIHNlIHB1ZWRlIGNvbnRpbnVhciBjb24gJXMgKC0tYXV0by1kZWNvbmZpZ3VyZSBheXVkYXLDoSk6XG4iCisiJXMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVtb3ZhbCBvZiAlLjI1MHMiCittc2dzdHIgImxhIGVsaW1pbmFjacOzbiBkZSAlLjI1MHMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW5zdGFsbGF0aW9uIG9mICUuMjUwcyIKK21zZ3N0ciAibGEgaW5zdGFsYWNpw7NuIGRlIGAlLjI1MHMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDU4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBjb25zaWRlcmluZyBkZWNvbmZpZ3VyYXRpb24gb2YgJXMsIHdoaWNoIHdvdWxkIGJlIGJyb2tlbiBieSAlcyAuLi5cbiIKK21zZ3N0ciAiIgorImRwa2c6IGNvbnNpZGVyYW5kbyBsYSBkZXNjb25maWd1cmFjacOzbiBkZSAlcywgeWEgcXVlIGxvIHJvbXBlcsOtYSAlcyAuLi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA2NQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiB5ZXMsIHdpbGwgZGVjb25maWd1cmUgJXMgKGJyb2tlbiBieSAlcykuXG4iCittc2dzdHIgImRwa2c6IHPDrSwgc2UgZGVzY29uZmlndXJhcsOhICVzIChyb3RvIHBvciAlcykuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNjkgc3JjL2FyY2hpdmVzLmM6MTE4NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogcmVnYXJkaW5nICVzIGNvbnRhaW5pbmcgJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiBhY2VyY2EgZGUgJXMgcXVlIGNvbnRpZW5lICVzOlxuIgorIiVzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDc3Cittc2dpZCAiaWdub3JpbmcgYnJlYWthZ2UsIG1heSBwcm9jZWVkIGFueXdheSEiCittc2dzdHIgImlnbm9yYW5kbyBsYSByb3R1cmEsIMKhcHVlZGUgcHJvY2VkZXJzZSBkZSB0b2RhcyBtYW5lcmFzISIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA4MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiaW5zdGFsbGluZyAlLjI1MHMgd291bGQgYnJlYWsgJS4yNTBzLCBhbmRcbiIKKyIgZGVjb25maWd1cmF0aW9uIGlzIG5vdCBwZXJtaXR0ZWQgKC0tYXV0by1kZWNvbmZpZ3VyZSBtaWdodCBoZWxwKSIKK21zZ3N0ciAiIgorInNpIHNlIGluc3RhbGFyYSAlLjI1MHMgc2Ugcm9tcGVyw61hICUuMjUwcywgeSBcbiIKKyIgbm8gZXMgcG9zaWJsZSBkZXNjb25maWd1cmFybG8gKC0tYXV0by1kZWNvbmZpZ3VyZSBwdWVkZSBheXVkYXIpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDg2CisjLCBjLWZvcm1hdAorbXNnaWQgImluc3RhbGxpbmcgJS4yNTBzIHdvdWxkIGJyZWFrIGV4aXN0aW5nIHNvZnR3YXJlIgorbXNnc3RyICJsYSBpbnN0YWxhY2nDs24gZGUgJS4yNTBzIHJvbXBlcsOtYSBzb2Z0d2FyZSBleGlzdGVudGUiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExMTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogY29uc2lkZXJpbmcgcmVtb3ZpbmcgJXMgaW4gZmF2b3VyIG9mICVzIC4uLlxuIgorbXNnc3RyICJkcGtnOiBjb25zaWRlcmFuZG8gZGVzaW5zdGFsYXIgJXMgZW4gZmF2b3IgZGUgJXMgLi4uXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgaXMgbm90IHByb3Blcmx5IGluc3RhbGxlZCAtIGlnbm9yaW5nIGFueSBkZXBlbmRlbmNpZXMgb24gaXQuXG4iCittc2dzdHIgIiIKKyIlcyBubyBlc3TDoSBjb3JyZWN0YW1lbnRlIGluc3RhbGFkbyAtIG5vIHNlIHRlbmRyw6EgZW4gY3VlbnRhIG5pbmd1bmFcbiIKKyIgZGVwZW5kZW5jaWEgZGUgw6lsLlxuIgorCisjIHByb3ZlZS9wcm9wb3JjaW9uYS4gwr9jdcOhbCBlcyBsYSBkaWZlcmVuY2lhPyBzdgorIzogc3JjL2FyY2hpdmVzLmM6MTE1MQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiBtYXkgaGF2ZSB0cm91YmxlIHJlbW92aW5nICVzLCBhcyBpdCBwcm92aWRlcyAlcyAuLi5cbiIKK21zZ3N0ciAiZHBrZzogcHVlZGUgaGFiZXIgcHJvYmxlbWFzIGFsIGRlc2luc3RhbGFyICVzLCB5YSBxdWUgcHJvdmVlICVzIC4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTY2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBwYWNrYWdlICVzIHJlcXVpcmVzIHJlaW5zdGFsbGF0aW9uLCBidXQgd2lsbCByZW1vdmUgYW55d2F5IGFzIHlvdSAiCisicmVxdWVzdGVkLlxuIgorbXNnc3RyICIiCisiZHBrZzogZWwgcGFxdWV0ZSAlcyByZXF1aWVyZSBzZXIgcmVpbnN0YWxhZG8sIHBlcm8gc2UgZGVzaW5zdGFsYXLDoSBkZSB0b2RhcyAiCisiZm9ybWFzIHRhbCBjb21vIHNlIHNvbGljaXRhLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTY5CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IHBhY2thZ2UgJXMgcmVxdWlyZXMgcmVpbnN0YWxsYXRpb24sIHdpbGwgbm90IHJlbW92ZS5cbiIKK21zZ3N0ciAiZHBrZzogZWwgcGFxdWV0ZSAlcyByZXF1aWVyZSBzZXIgcmVpbnN0YWxhZG8sIG5vIHNlIGRlc2luc3RhbGFyw6EuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogeWVzLCB3aWxsIHJlbW92ZSAlcyBpbiBmYXZvdXIgb2YgJXMuXG4iCittc2dzdHIgImRwa2c6IHPDrSwgc2UgZGVzaW5zdGFsYXLDoSAlcyBlbiBmYXZvciBkZSAlcy5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE5MAorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mbGljdGluZyBwYWNrYWdlcyAtIG5vdCBpbnN0YWxsaW5nICUuMjUwcyIKK21zZ3N0ciAicGFxdWV0ZXMgZW4gY29uZmxpY3RvIC0gbm8gc2UgaW5zdGFsYXLDoSAlLjI1MHMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExOTEKK21zZ2lkICJpZ25vcmluZyBjb25mbGljdCwgbWF5IHByb2NlZWQgYW55d2F5ISIKK21zZ3N0ciAibm8gc2UgdGllbmUgZW4gY3VlbnRhIGVsIGNvbmZsaWN0bywgwqFzZSBwcm9jZWRlcsOhIGRlIHRvZGFzIG1hbmVyYXMhIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjM1CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgLS1yZWN1cnNpdmUgbmVlZHMgYXQgbGVhc3Qgb25lIHBhdGggYXJndW1lbnQiCittc2dzdHIgIi0tJXMgLS1yZWN1cnNpdmUgbmVjZXNpdGEgYWwgbWVub3MgdW5hIHJ1dGEgY29tbyBhcmd1bWVudG8iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNDUKK21zZ2lkICJmaW5kIGZvciBkcGtnIC0tcmVjdXJzaXZlIgorbXNnc3RyICJmYWxsbyBhbCBlamVjdXRhciBgZmluZCcgcGFyYSBkcGtnIC0tcmVjdXJzaXZlIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjY2Cittc2dpZCAiZmFpbGVkIHRvIGZkb3BlbiBmaW5kJ3MgcGlwZSIKK21zZ3N0ciAiZmFsbG8gYWwgZWZlY3R1YXIgYGZkb3BlbicgZW4gbGEgdHViZXLDrWEgZGUgZmluZCIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3MgorbXNnaWQgImVycm9yIHJlYWRpbmcgZmluZCdzIHBpcGUiCittc2dzdHIgImVycm9yIGFsIGxlZXIgbGEgdHViZXLDrWEgZGUgZmluZCIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3MworbXNnaWQgImVycm9yIGNsb3NpbmcgZmluZCdzIHBpcGUiCittc2dzdHIgImVycm9yIGFsIGNlcnJhciBsYSB0dWJlcsOtYSBkZSBmaW5kIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjc2CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbmQgZm9yIC0tcmVjdXJzaXZlIHJldHVybmVkIHVuaGFuZGxlZCBlcnJvciAlaSIKK21zZ3N0ciAiTGEgYsO6c3F1ZWRhIHVzYW5kbyAtLXJlY3Vyc2l2ZSBkZXZvbHZpw7MgZWwgZXJyb3Igbm8gbWFuZWphZG8gJWkiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNzkKK21zZ2lkICJzZWFyY2hlZCwgYnV0IGZvdW5kIG5vIHBhY2thZ2VzIChmaWxlcyBtYXRjaGluZyAqLmRlYikiCittc2dzdHIgIiIKKyJzZSBidXNjw7MsIHBlcm8gbm8gc2UgZW5jb250cmFyb24gcGFxdWV0ZXMgKGZpY2hlcm9zIHF1ZSBlbmNhamVuIGNvbiAqLmRlYikiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhdCBsZWFzdCBvbmUgcGFja2FnZSBhcmNoaXZlIGZpbGUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMgbmVjZXNpdGEgYWwgbWVub3MgdW4gYXJjaGl2byBkZSBwYXF1ZXRlIGNvbW8gYXJndW1lbnRvIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzI1IHNyYy9kaXZlcnRjbWQuYzo3OCBzcmMvZGl2ZXJ0Y21kLmM6MTE4CisjOiBzcmMvZW5xdWlyeS5jOjE2NiBzcmMvZW5xdWlyeS5jOjI3OSBzcmMvZW5xdWlyeS5jOjQ0OSBzcmMvZW5xdWlyeS5jOjQ1MQorIzogc3JjL2VucXVpcnkuYzo0NjQgc3JjL21haW4uYzo2NiBzcmMvbWFpbi5jOjE2MyBzcmMvbWFpbi5jOjMxNAorIzogc3JjL21haW4uYzo0OTMgc3JjL3BhY2thZ2VzLmM6MjU0IHNyYy9xdWVyeWNtZC5jOjI1MiBzcmMvcXVlcnljbWQuYzozNTUKKyM6IHNyYy9xdWVyeWNtZC5jOjM5NiBzcmMvcXVlcnljbWQuYzo0MDQgc3JjL3F1ZXJ5Y21kLmM6NDQ4IHNyYy9xdWVyeWNtZC5jOjUxNworIzogc3JjL3F1ZXJ5Y21kLmM6NjA2IHNyYy9xdWVyeWNtZC5jOjY1MCBzcmMvc2VsZWN0LmM6Nzkgc3JjL3N0YXRjbWQuYzo2OAorIzogc3JjL3N0YXRjbWQuYzo5OCBzcmMvdHJpZ2NtZC5jOjU4IHNyYy90cmlnY21kLmM6OTAgZHBrZy1kZWIvYnVpbGQuYzo0NDEKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyMTcgZHBrZy1kZWIvZXh0cmFjdC5jOjI1MCBkcGtnLWRlYi9pbmZvLmM6MjAzCisjOiBkcGtnLWRlYi9pbmZvLmM6MjY1IGRwa2ctZGViL21haW4uYzo2MCBkcGtnLWRlYi9tYWluLmM6MTI2CisjOiBkcGtnLXNwbGl0L2luZm8uYzoyNTcgZHBrZy1zcGxpdC9tYWluLmM6NTQgZHBrZy1zcGxpdC9tYWluLmM6OTgKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxNDQgZHBrZy1zcGxpdC9xdWV1ZS5jOjI4MAorbXNnaWQgIjxzdGFuZGFyZCBvdXRwdXQ+IgorbXNnc3RyICI8c2FsaWRhIGVzdMOhbmRhcj4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzMjYgc3JjL3BhY2thZ2VzLmM6MjU1IHNyYy9xdWVyeWNtZC5jOjI1MworIzogc3JjL3F1ZXJ5Y21kLmM6MzUzIHNyYy9xdWVyeWNtZC5jOjQ1NCBzcmMvcXVlcnljbWQuYzo1MTggc3JjL3NlbGVjdC5jOjgwCisjOiBkcGtnLXNwbGl0L21haW4uYzoxNjkgZHBrZy1zcGxpdC9xdWV1ZS5jOjIxOAorbXNnaWQgIjxzdGFuZGFyZCBlcnJvcj4iCittc2dzdHIgIjxzYWxpZGEgZGUgZXJyb3IgZXN0w6FuZGFyPiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTM2NworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiU2VsZWN0aW5nIHByZXZpb3VzbHkgZGVzZWxlY3RlZCBwYWNrYWdlICVzLlxuIgorbXNnaWQgIlNlbGVjdGluZyBwcmV2aW91c2x5IHVuc2VsZWN0ZWQgcGFja2FnZSAlcy5cbiIKK21zZ3N0ciAiU2VsZWNjaW9uYW5kbyBlbCBwYXF1ZXRlICVzIHByZXZpYW1lbnRlIG5vIHNlbGVjY2lvbmFkby5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTM3MQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiU2tpcHBpbmcgZGVzZWxlY3RlZCBwYWNrYWdlICVzLlxuIgorbXNnaWQgIlNraXBwaW5nIHVuc2VsZWN0ZWQgcGFja2FnZSAlcy5cbiIKK21zZ3N0ciAiT21pdGllbmRvIGVsIHBhcXVldGUgbm8gc2VsZWNjaW9uYWRvICVzLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzg3CisjLCBjLWZvcm1hdAorbXNnaWQgIlZlcnNpb24gJS4yNTBzIG9mICUuMjUwcyBhbHJlYWR5IGluc3RhbGxlZCwgc2tpcHBpbmcuXG4iCittc2dzdHIgIlZlcnNpw7NuICUuMjUwcyBkZSAlLjI1MHMgeWEgaW5zdGFsYWRhLCBvbWl0aWVuZG8uXG4iCisKKyMgRG93bmdyYWRlIGVzIGxvIGNvbnRyYXJpbyBkZSB1cGRhdGUuCisjIFVwZGF0ZSBzdWVsZSB0cmFkdWNpcnNlIHBvciBhY3R1YWxpemFyIChpbnN0YWxhciB1bmEgdmVyc2nDs24gbcOhcworIyBtb2Rlcm5hIGRlIHVuIHBhcXVldGUsIGVuIGVzdGUgY2FzbykuCisjIEFsIG5vIGhhYmVyIHVuYSBwYWxhYnJhIGNvbcO6bm1lbnRlIHV0aWxpemFkYSBwYXJhICJkb3duZ3JhZGUiLCBoYXkgcXVlCisjIGJ1c2NhciB1bmEgcXVlIHNlYSBtw61uaW1hbWVudGUgcmF6b25hYmxlLCBhdW5xdWUgbm8gc2VhIHRhbiBjb23Dum4uCisjIEVsIHByZWZpam8gImRlcyIgbm9zIGF5dWRhIGVuIGVzdGUgY2FzbyBhIGNvbnN0cnVpcgorIyB1bmEgcGFsYWJyYSBxdWUgc2lnbmlmaWNhIGxvIGNvbnRyYXJpbyBxdWUgYWN0dWFsaXphci4gc3YKKyM6IHNyYy9hcmNoaXZlcy5jOjEzOTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZG93bmdyYWRpbmcgJS4yNTBzIGZyb20gJS4yNTBzIHRvICUuMjUwcy4iCittc2dzdHIgImRlc2FjdHVhbGl6YW5kbyAlLjI1MHMgZGUgJS4yNTBzIGEgJS4yNTBzLiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTQwMgorIywgYy1mb3JtYXQKK21zZ2lkICJXaWxsIG5vdCBkb3duZ3JhZGUgJS4yNTBzIGZyb20gdmVyc2lvbiAlLjI1MHMgdG8gJS4yNTBzLCBza2lwcGluZy5cbiIKK21zZ3N0ciAiIgorIk5vIHNlIGRlc2FjdHVhbGl6YXLDoSAlLjI1MHMgZGUgbGEgdmVyc2nDs24gJS4yNTBzIGEgbGEgJS4yNTBzLCBvbWl0aWVuZG8uXG4iCisKKyMgRW4gZXN0ZSBjYXNvLCBubyBwYXJlY2UgcXVlIHNlIHJlZmllcmUgYSB1biBwYXF1ZXRlLiBzdgorIzogc3JjL2NsZWFudXAuYzo4NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidW5hYmxlIHRvIHJlbW92ZSBuZXdseS1pbnN0YWxsZWQgdmVyc2lvbiBvZiBgJS4yNTBzJyB0byBhbGxvdyByZWluc3RhbGxhdGlvbiAiCisib2YgYmFja3VwIGNvcHkiCittc2dzdHIgIiIKKyJubyBzZSBwdWVkZSBib3JyYXIgbGEgdmVyc2nDs24gcmVjacOpbiBpbnN0YWxhZGEgZGUgYCUuMjUwcycgcGFyYSBwZXJtaXRpclxuIgorImxhIHJlaW5zdGFsYWNpw7NuIGRlIGxhIGNvcGlhIGRlIHNlZ3VyaWRhZCIKKworIzogc3JjL2NsZWFudXAuYzo5MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVzdG9yZSBiYWNrdXAgdmVyc2lvbiBvZiBgJS4yNTBzJyIKK21zZ3N0ciAibm8gc2UgcHVlZGUgcmVzdGFibGVjZXIgbGEgdmVyc2nDs24gZGUgcmVzcGFsZG8gZGUgYCUuMjUwcyciCisKKyM6IHNyYy9jbGVhbnVwLmM6OTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBiYWNrdXAgY29weSBvZiAnJS4yNTBzJyIKK21zZ3N0ciAibm8gc2UgcHVlZGUgYm9ycmFyIGxhIGNvcGlhIGRlIHJlc3BhbGRvIGRlIGAlLjI1MHMnIgorCisjOiBzcmMvY2xlYW51cC5jOjEwMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIG5ld2x5LWluc3RhbGxlZCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICJubyBzZSBwdWVkZSBib3JyYXIgbGEgdmVyc2nDs24gcmVjacOpbiBpbnN0YWxhZGEgZGUgYCUuMjUwcyciCisKKyM6IHNyYy9jbGVhbnVwLmM6MTA4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgbmV3bHktZXh0cmFjdGVkIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dzdHIgIm5vIHNlIHB1ZWRlIGJvcnJhciBsYSB2ZXJzacOzbiByZWNpw6luIGV4dHJhw61kYSBkZSBgJS4yNTBzJyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjEwNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBuZXcgZGlzdHJpYnV0ZWQgY29uZmZpbGUgJyUuMjUwcyciCittc2dzdHIgIiIKKyJubyBzZSBwdWVkZSBlZmVjdHVhciBgc3RhdCcgc29icmUgZWwgbnVldm8gY29uZmZpbGUgZGlzdHJpYnVpZG8gYCUuMjUwcyciCisKKyM6IHNyYy9jb25maWd1cmUuYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgY3VycmVudCBpbnN0YWxsZWQgY29uZmZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKyJubyBzZSBwdWVkZSBlZmVjdHVhciBgc3RhdCcgc29icmUgZWwgY29uZmZpbGUgYCUuMjUwcycgYWN0dWFsbWVudGUgaW5zdGFsYWRvIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTI2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJDb25maWd1cmF0aW9uIGZpbGUgYCVzJywgZG9lcyBub3QgZXhpc3Qgb24gc3lzdGVtLlxuIgorIkluc3RhbGxpbmcgbmV3IGNvbmZpZyBmaWxlIGFzIHlvdSByZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiIKKyJcbiIKKyJFbCBjb25mZmlsZSBgJXMnIG5vIGV4aXN0ZSBlbiBlbCBzaXN0ZW1hLlxuIgorIkluc3RhbGFuZG8gZWwgbnVldm8gY29uZmZpbGUgdGFsIHkgY29tbyBzZSBzb2xpY2l0w7MuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzoxNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW1vdmUgb2xkIGJhY2t1cCAnJS4yNTBzJzogJXMiCittc2dzdHIgIiVzOiBmYWxsbyBhbCBib3JyYXIgbGEgY29waWEgZGUgcmVzcGFsZG8gYW50aWd1YSBgJS4yNTBzJzogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW5hbWUgJyUuMjUwcycgdG8gJyUuMjUwcyc6ICVzIgorbXNnc3RyICIlczogZmFsbG8gYWwgcmVub21icmFyIGAlLjI1MHMnIGEgYCUuMjUwcyc6ICVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTgyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiJXM6IGZhbGxvIGFsIGVsaW1pbmFyIGAlLjI1MHMnOiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE4OAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIHJlbW92ZSBvbGQgZGlzdHJpYnV0ZWQgdmVyc2lvbiAnJS4yNTBzJzogJXMiCittc2dzdHIgIiVzOiBmYWxsbyBhbCBib3JyYXIgbGEgdmVyc2nDs24gZGUgbGEgZGlzdHJpYnVjacOzbiBhbnRpZ3VhIGAlLjI1MHMnOiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE5MgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIHJlbW92ZSAnJS4yNTBzJyAoYmVmb3JlIG92ZXJ3cml0ZSk6ICVzIgorbXNnc3RyICIlczogZmFsbG8gYWwgYm9ycmFyIGAlLjI1MHMnIChhbnRlcyBkZSBzb2JyZWVzY3JpYmlyKTogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byBsaW5rICclLjI1MHMnIHRvICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiJXM6IGZhbGxvIGFsIGVubGF6YXIgYCUuMjUwcycgYSBgJS4yNTBzJzogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoyMDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW5zdGFsbGluZyBuZXcgdmVyc2lvbiBvZiBjb25maWcgZmlsZSAlcyAuLi5cbiIKK21zZ3N0ciAiSW5zdGFsYW5kbyB1bmEgbnVldmEgdmVyc2nDs24gZGVsIGZpY2hlcm8gZGUgY29uZmlndXJhY2nDs24gJXMgLi4uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzoyMDYgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjU0NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBgJS4yNTBzJyBhcyBgJS4yNTBzJyIKK21zZ3N0ciAibm8gc2UgcHVlZGUgaW5zdGFsYXIgYCUuMjUwcycgY29tbyBgJS4yNTBzJyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI1NworIywgYy1mb3JtYXQKK21zZ2lkICJubyBwYWNrYWdlIG5hbWVkIGAlcycgaXMgaW5zdGFsbGVkLCBjYW5ub3QgY29uZmlndXJlIgorbXNnc3RyICJubyBoYXkgaW5zdGFsYWRvIG5pbmfDum4gcGFxdWV0ZSBsbGFtYWRvIGAlcycsIG5vIHNlIHB1ZWRlIGNvbmZpZ3VyYXIiCisKKyM6IHNyYy9jb25maWd1cmUuYzoyNjAKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlLjI1MHMgaXMgYWxyZWFkeSBpbnN0YWxsZWQgYW5kIGNvbmZpZ3VyZWQiCittc2dzdHIgImVsIHBhcXVldGUgJS4yNTBzIHlhIGVzdMOhIGluc3RhbGFkbyB5IGNvbmZpZ3VyYWRvIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjYzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJwYWNrYWdlICUuMjUwcyBpcyBub3QgcmVhZHkgZm9yIGNvbmZpZ3VyYXRpb25cbiIKKyIgY2Fubm90IGNvbmZpZ3VyZSAoY3VycmVudCBzdGF0dXMgYCUuMjUwcycpIgorbXNnc3RyICIiCisiZWwgcGFxdWV0ZSAlLjI1MHMgbm8gZXN0w6EgbGlzdG8gcGFyYSBjb25maWd1cmFyc2VcbiIKKyIgbm8gc2UgcHVlZGUgY29uZmlndXJhciAoZXN0YWRvIGFjdHVhbCBgJS4yNTBzJykiCisKKyM6IHNyYy9jb25maWd1cmUuYzoyOTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IGRlcGVuZGVuY3kgcHJvYmxlbXMgcHJldmVudCBjb25maWd1cmF0aW9uIG9mICVzOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogcHJvYmxlbWFzIGRlIGRlcGVuZGVuY2lhcyBpbXBpZGVuIGxhIGNvbmZpZ3VyYWNpw7NuIGRlICVzOlxuIgorIiVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6Mjk3Cittc2dpZCAiZGVwZW5kZW5jeSBwcm9ibGVtcyAtIGxlYXZpbmcgdW5jb25maWd1cmVkIgorbXNnc3RyICJwcm9ibGVtYXMgZGUgZGVwZW5kZW5jaWFzIC0gc2UgZGVqYSBzaW4gY29uZmlndXJhciIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjMwMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogJXM6IGRlcGVuZGVuY3kgcHJvYmxlbXMsIGJ1dCBjb25maWd1cmluZyBhbnl3YXkgYXMgeW91IHJlcXVlc3RlZDpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiBwcm9ibGVtYXMgZGUgZGVwZW5kZW5jaWFzLCBwZXJvIHNlIGNvbmZpZ3VyYXLDoSBkZSB0b2RhcyBmb3JtYXNcbiIKKyIgdGFsIHkgY29tbyBzZSBzb2xpY2l0w7M6XG4iCisiJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzozMDkKK21zZ2lkICIiCisiUGFja2FnZSBpcyBpbiBhIHZlcnkgYmFkIGluY29uc2lzdGVudCBzdGF0ZSAtIHlvdSBzaG91bGRcbiIKKyIgcmVpbnN0YWxsIGl0IGJlZm9yZSBhdHRlbXB0aW5nIGNvbmZpZ3VyYXRpb24uIgorbXNnc3RyICIiCisiRWwgcGFxdWV0ZSBlc3TDoSBlbiB1biBlc3RhZG8gZ3JhdmUgZGUgaW5jb25zaXN0ZW5jaWEgLSBkZWJlIHJlaW5zdGFsYXJsb1xuIgorIiBhbnRlcyBkZSBpbnRlbnRhciBzdSBjb25maWd1cmFjacOzbi4iCisKKyM6IHNyYy9jb25maWd1cmUuYzozMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2V0dGluZyB1cCAlcyAoJXMpIC4uLlxuIgorbXNnc3RyICJDb25maWd1cmFuZG8gJXMgKCVzKSAuLi5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjM5NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IHVuYWJsZSB0byBzdGF0IGNvbmZpZyBmaWxlICclcydcbiIKKyIgKD0gJyVzJyk6ICVzIgorbXNnc3RyICIiCisiJXM6IG5vIHNlIHB1ZWRlIGVmZWN0dWFyIGBzdGF0JyBzb2JyZSBlbCBmaWNoZXJvIGRlIGNvbmZpZ3VyYWNpw7NuIGAlcydcbiIKKyIgKD0gYCVzJyk6ICVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDA5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogY29uZmlnIGZpbGUgJyVzJyBpcyBhIGNpcmN1bGFyIGxpbmtcbiIKKyIgKD0gJyVzJykiCittc2dzdHIgIiIKKyIlczogZWwgZmljaGVybyBkZSBjb25maWd1cmFjacOzbiBgJXMnIGVzIHVuIGVubGFjZSBjaXJjdWxhclxuIgorIiAoPSBgJXMnKSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQxOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IHVuYWJsZSB0byByZWFkbGluayBjb25mZmlsZSAnJXMnXG4iCisiICg9ICclcycpOiAlcyIKK21zZ3N0ciAiIgorIiVzOiBubyBzZSBwdWVkZSBlamVjdXRhciDCq3JlYWRsaW5rwrsgc29icmUgZWwgY29uZmZpbGUgYCVzJ1xuIgorIiAoPSBgJXMnKTogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzo0NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBjb25mZmlsZSAnJS4yNTBzJyByZXNvbHZlcyB0byBkZWdlbmVyYXRlIGZpbGVuYW1lXG4iCisiICgnJXMnIGlzIGEgc3ltbGluayB0byAnJXMnKSIKK21zZ3N0ciAiIgorIiVzOiBlbCBjb25mZmlsZSBgJS4yNTBzJyBhcHVudGEgYSB1biBub21icmUgZGUgZmljaGVybyBkZWdyYWRhZG9cbiIKKyIgKGAlcycgZXMgdW4gZW5sYWNlIHNpbWLDs2xpY28gYSBgJXMnKSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQ2MAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogY29uZmZpbGUgJyUuMjUwcycgaXMgbm90IGEgcGxhaW4gZmlsZSBvciBzeW1saW5rICg9ICclcycpIgorbXNnc3RyICIiCisiJXM6IGVsIGNvbmZmaWxlIGAlLjI1MHMnIG5vIGVzIHVuIGZpY2hlcm8gbm9ybWFsIG8gdW4gZW5sYWNlIHNpbWLDs2xpY28gKD0gYCIKKyIlcycpIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDg2Cittc2dpZCAibWQ1aGFzaCIKK21zZ3N0ciAiaGFzaCBtZDUiCisKKyM6IHNyYy9jb25maWd1cmUuYzo0OTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IHVuYWJsZSB0byBvcGVuIGNvbmZmaWxlICVzIGZvciBoYXNoOiAlcyIKK21zZ3N0ciAiJXM6IG5vIHNlIHB1ZWRlIGFicmlyIGVsIGNvbmZmaWxlICVzIHBhcmEgZWwgYGhhc2gnOiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjUyMiBzcmMvY29uZmlndXJlLmM6NTI2Cittc2dpZCAiY29uZmZpbGUgZGlmZmVyZW5jZSB2aXN1YWxpemVyIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo1NDMKK21zZ2lkICJUeXBlIGBleGl0JyB3aGVuIHlvdSdyZSBkb25lLlxuIgorbXNnc3RyICJFc2NyaWJhIGBleGl0JyBjdWFuZG8gdGVybWluZS5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjU1MiBzcmMvY29uZmlndXJlLmM6NTU2Cittc2dpZCAiY29uZmZpbGUgc2hlbGwiCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYwMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiQ29uZmlndXJhdGlvbiBmaWxlIGAlcyciCittc2dzdHIgIiIKKyJcbiIKKyJGaWNoZXJvIGRlIGNvbmZpZ3VyYWNpw7NuIGAlcyciCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIChhY3R1YWxseSBgJXMnKSIKK21zZ3N0ciAiIChgJXMnIHJlYWxtZW50ZSkiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiA9PT4gRmlsZSBvbiBzeXN0ZW0gY3JlYXRlZCBieSB5b3Ugb3IgYnkgYSBzY3JpcHQuXG4iCisiID09PiBGaWxlIGFsc28gaW4gcGFja2FnZSBwcm92aWRlZCBieSBwYWNrYWdlIG1haW50YWluZXIuXG4iCittc2dzdHIgIiIKKyJcbiIKKyIgPT0+IEZpY2hlcm8gZW4gZWwgc2lzdGVtYSBjcmVhZG8gcG9yIHVzdGVkIG8gcG9yIGFsZ8O6biBzY3JpcHQuXG4iCisiID09PiBGaWNoZXJvIHRhbWJpw6luIGVuIGVsIHBhcXVldGUuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiAgICAgTm90IG1vZGlmaWVkIHNpbmNlIGluc3RhbGxhdGlvbi5cbiIKK21zZ3N0ciAiIgorIlxuIgorIiAgICAgTm8gbW9kaWZpY2FkbyBkZXNkZSBsYSBpbnN0YWxhY2nDs24uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiA9PT4gTW9kaWZpZWQgKGJ5IHlvdSBvciBieSBhIHNjcmlwdCkgc2luY2UgaW5zdGFsbGF0aW9uLlxuIgorbXNnc3RyICIiCisiXG4iCisiID09PiBNb2RpZmljYWRvIChwb3IgdXN0ZWQgbyBwb3IgdW4gc2NyaXB0KSBkZXNkZSBsYSBpbnN0YWxhY2nDs24uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiA9PT4gRGVsZXRlZCAoYnkgeW91IG9yIGJ5IGEgc2NyaXB0KSBzaW5jZSBpbnN0YWxsYXRpb24uXG4iCittc2dzdHIgIiIKKyJcbiIKKyIgPT0+IEJvcnJhZG8gKHBvciB1c3RlZCBvIHBvciB1biBzY3JpcHQpIGRlc2RlIGxhIGluc3RhbGFjacOzbi5cbiIKKworIyBUcmFkdWNjacOzbiBkZSBUaW5ndWFybzogRWwgcGFxdWV0ZSBwb3NlZSB1bmEgdmVyc2nDs24gYWN0dWFsaXphZGEuCisjIFBlbnNhcmxvIHNlcmlhbWVudGUuIHN2CisjOiBzcmMvY29uZmlndXJlLmM6NjE5CisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gUGFja2FnZSBkaXN0cmlidXRvciBoYXMgc2hpcHBlZCBhbiB1cGRhdGVkIHZlcnNpb24uXG4iCittc2dzdHIgIiIKKyIgPT0+IEVsIGRpc3RyaWJ1aWRvciBkZWwgcGFxdWV0ZSBoYSBwdWJsaWNhZG8gdW5hIHZlcnNpw7NuIGFjdHVhbGl6YWRhLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjIwCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgICAgVmVyc2lvbiBpbiBwYWNrYWdlIGlzIHRoZSBzYW1lIGFzIGF0IGxhc3QgaW5zdGFsbGF0aW9uLlxuIgorbXNnc3RyICIiCisiICAgICBMYSB2ZXJzacOzbiBkZWwgcGFxdWV0ZSBlcyBsYSBtaXNtYSBxdWUgbGEgZGUgbGEgw7psdGltYSBpbnN0YWxhY2nDs24uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBVc2luZyBuZXcgZmlsZSBhcyB5b3UgcmVxdWVzdGVkLlxuIgorbXNnc3RyICIgPT0+IFNlIHVzYXLDoSBlbCBmaWNoZXJvIG51ZXZvIHRhbCB5IGNvbW8gc2Ugc29saWNpdMOzLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gVXNpbmcgY3VycmVudCBvbGQgZmlsZSBhcyB5b3UgcmVxdWVzdGVkLlxuIgorbXNnc3RyICIgPT0+IFNlIHVzYXLDoSBlbCBmaWNoZXJvIGFjdHVhbCAoYW50aWd1bykgY29tbyBzZSBwaWRpw7MuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBLZWVwaW5nIG9sZCBjb25maWcgZmlsZSBhcyBkZWZhdWx0LlxuIgorbXNnc3RyICIiCisiID09PiBTZSBjb25zZXJ2YSBlbCBmaWNoZXJvIGRlIGNvbmZpZ3VyYWNpw7NuIGFudGlndW8gY29tbyBwcmVkZXRlcm1pbmFkby5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY0NQorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IFVzaW5nIG5ldyBjb25maWcgZmlsZSBhcyBkZWZhdWx0LlxuIgorbXNnc3RyICIgPT0+IFNlIHVzYXLDoSBlbCBudWV2byBmaWNoZXJvIGRlIGNvbmZpZ3VyYWNpw7NuIGNvbW8gcHJlZGV0ZXJtaW5hZG8uXG4iCisKKyMgVHJhZHVjY2nDs24gZGUgVGluZ3Vhcm86ICJXaGF0IHdvdWxkIHlvdSBsaWtlICIgLT4gIlNlbGVjY2lvbmUgdW5hIG9wY2nDs246IgorIyBDb25zaWRlcmFybG8gc2VyaWFtZW50ZS4gc3YKKyM6IHNyYy9jb25maWd1cmUuYzo2NTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiAgIFdoYXQgd291bGQgeW91IGxpa2UgdG8gZG8gYWJvdXQgaXQgPyAgWW91ciBvcHRpb25zIGFyZTpcbiIKKyIgICAgWSBvciBJICA6IGluc3RhbGwgdGhlIHBhY2thZ2UgbWFpbnRhaW5lcidzIHZlcnNpb25cbiIKKyIgICAgTiBvciBPICA6IGtlZXAgeW91ciBjdXJyZW50bHktaW5zdGFsbGVkIHZlcnNpb25cbiIKKyIgICAgICBEICAgICA6IHNob3cgdGhlIGRpZmZlcmVuY2VzIGJldHdlZW4gdGhlIHZlcnNpb25zXG4iCisiICAgICAgWiAgICAgOiBzdGFydCBhIHNoZWxsIHRvIGV4YW1pbmUgdGhlIHNpdHVhdGlvblxuIgorbXNnc3RyICIiCisiICAgwr9RdcOpIHF1aXNpZXJhIGhhY2VyIGFsIHJlc3BlY3RvPyAgU3VzIG9wY2lvbmVzIHNvbjpcbiIKKyIgICAgWSBvIEkgIDogaW5zdGFsYXIgbGEgdmVyc2nDs24gZGVsIGRlc2Fycm9sbGFkb3IgZGVsIHBhcXVldGUgXG4iCisiICAgIE4gbyBPICA6IGNvbnNlcnZhciBsYSB2ZXJzacOzbiBxdWUgdGllbmUgaW5zdGFsYWRhIGFjdHVhbG1lbnRlXG4iCisiICAgICAgRCAgICA6IG1vc3RyYXIgbGFzIGRpZmVyZW5jaWFzIGVudHJlIHZlcnNpb25lc1xuIgorIiAgICAgIFogICAgOiBlamVjdXRhciB1biBpbnTDqXJwcmV0ZSBkZSDDs3JkZW5lcyBwYXJhIGV4YW1pbmFyIGxhIHNpdHVhY2nDs25cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY1OQorIywgYy1mb3JtYXQKK21zZ2lkICIgVGhlIGRlZmF1bHQgYWN0aW9uIGlzIHRvIGtlZXAgeW91ciBjdXJyZW50IHZlcnNpb24uXG4iCittc2dzdHIgIiBMYSBhY2Npw7NuIHBvciBvbWlzacOzbiBlcyBjb25zZXJ2YXIgbGEgdmVyc2nDs24gYWN0dWFsLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjYxCisjLCBjLWZvcm1hdAorbXNnaWQgIiBUaGUgZGVmYXVsdCBhY3Rpb24gaXMgdG8gaW5zdGFsbCB0aGUgbmV3IHZlcnNpb24uXG4iCittc2dzdHIgIiBMYSBhY2Npw7NuIHBvciBvbWlzacOzbiBlcyBpbnN0YWxhciBsYSBudWV2YSB2ZXJzacOzbi5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY2NgorbXNnaWQgIltkZWZhdWx0PU5dIgorbXNnc3RyICJbcG9yIG9taXNpw7NuPU5dIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjY3Cittc2dpZCAiW2RlZmF1bHQ9WV0iCittc2dzdHIgIltwb3Igb21pc2nDs249WV0iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NjgKK21zZ2lkICJbbm8gZGVmYXVsdF0iCittc2dzdHIgIltubyBoYXkgb3BjacOzbiBwcmVkZXRlcm1pbmFkYV0iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NzEKK21zZ2lkICJlcnJvciB3cml0aW5nIHRvIHN0ZGVyciwgZGlzY292ZXJlZCBiZWZvcmUgY29uZmZpbGUgcHJvbXB0IgorbXNnc3RyICIiCisiZXJyb3IgYWwgZXNjcmliaXIgZW4gbGEgc2FsaWRhIGRlIGVycm9yIGVzdMOhbmRhciwgc2UgZGVzY3VicmnDsyBhbnRlc1xuIgorImRlIHByZWd1bnRhciBzb2JyZSBjb25mZmlsZXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2ODAKK21zZ2lkICJyZWFkIGVycm9yIG9uIHN0ZGluIGF0IGNvbmZmaWxlIHByb21wdCIKK21zZ3N0ciAiZXJyb3IgZGUgbGVjdHVyYSBlbiBsYSBlbnRyYWRhIGVzdMOhbmRhciBhbCBwcmVndW50YXIgc29icmUgY29uZmZpbGVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjgxCittc2dpZCAiRU9GIG9uIHN0ZGluIGF0IGNvbmZmaWxlIHByb21wdCIKK21zZ3N0ciAiRU9GIGVuIGxhIGVudHJhZGEgZXN0w6FuZGFyIGFsIHByZWd1bnRhciBzb2JyZSBjb25mZmlsZXMiCisKKyM6IHNyYy9kZXBjb24uYzoxNzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgZGVwZW5kcyBvbiAlcyIKK21zZ3N0ciAiJXMgZGVwZW5kZSBkZSAlcyIKKworIzogc3JjL2RlcGNvbi5jOjE3OAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBwcmUtZGVwZW5kcyBvbiAlcyIKK21zZ3N0ciAiJXMgcHJlZGVwZW5kZSBkZSAlcyIKKworIzogc3JjL2RlcGNvbi5jOjE4MQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyByZWNvbW1lbmRzICVzIgorbXNnc3RyICIlcyByZWNvbWllbmRhICVzIgorCisjOiBzcmMvZGVwY29uLmM6MTg0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHN1Z2dlc3RzICVzIgorbXNnc3RyICIlcyBzdWdpZXJlICVzIgorCisjOiBzcmMvZGVwY29uLmM6MTg3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGJyZWFrcyAlcyIKK21zZ3N0ciAiJXMgcm9tcGUgJXMiCisKKyM6IHNyYy9kZXBjb24uYzoxOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgY29uZmxpY3RzIHdpdGggJXMiCittc2dzdHIgIiVzIGVudHJhIGVuIGNvbmZsaWN0byBjb24gJXMiCisKKyM6IHNyYy9kZXBjb24uYzoxOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgZW5oYW5jZXMgJXMiCittc2dzdHIgIiVzIG1lam9yYSAlcyIKKworIzogc3JjL2RlcGNvbi5jOjI5NgorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyB2YSBhIHNlciBkZXNpbnN0YWxhZG8uXG4iCisKKyM6IHNyYy9kZXBjb24uYzoyOTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdG8gYmUgZGVjb25maWd1cmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyB2YSBhIHNlciBkZXNjb25maWd1cmFkby5cbiIKKworIzogc3JjL2RlcGNvbi5jOjMwNAorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB0byBiZSBpbnN0YWxsZWQsIGJ1dCBpcyB2ZXJzaW9uICUuMjUwcy5cbiIKK21zZ3N0ciAiICAgJS4yNTBzIHZhIGEgc2VyIGluc3RhbGFkbywgcGVybyB0aWVuZSB2ZXJzacOzbiAlLjI1MHMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgaW5zdGFsbGVkLCBidXQgaXMgdmVyc2lvbiAlLjI1MHMuXG4iCittc2dzdHIgIiAgJS4yNTBzIGVzdMOhIGluc3RhbGFkbywgcGVybyB0aWVuZSB2ZXJzacOzbiAlLjI1MHMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdW5wYWNrZWQsIGJ1dCBoYXMgbmV2ZXIgYmVlbiBjb25maWd1cmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyBlc3TDoSBkZXNlbXBhcXVldGFkbywgcGVybyBubyBoYSBzaWRvIGNvbmZpZ3VyYWRvLlxuIgorCisjOiBzcmMvZGVwY29uLmM6MzM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHVucGFja2VkLCBidXQgaXMgdmVyc2lvbiAlLjI1MHMuXG4iCittc2dzdHIgIiAgJS4yNTBzIGVzdMOhIGRlc2VtcGFxdWV0YWRvLCBwZXJvIHRpZW5lIHZlcnNpw7NuICUuMjUwcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjM0MworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBsYXRlc3QgY29uZmlndXJlZCB2ZXJzaW9uIGlzICUuMjUwcy5cbiIKK21zZ3N0ciAiICBsYSDDumx0aW1hIHZlcnNpw7NuIGNvbmZpZ3VyYWRhIGRlICUuMjUwcyBlcyBsYSAlLjI1MHMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozNTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgJXMuXG4iCittc2dzdHIgIiAgJS4yNTBzIGVzICVzLlxuIgorCisjOiBzcmMvZGVwY29uLmM6Mzg4CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBidXQgaXMgdG8gYmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMgcHJvdmVlICUuMjUwcyBwZXJvIHZhIGEgc2VyIGRlc2luc3RhbGFkby5cbiIKKworIzogc3JjL2RlcGNvbi5jOjM5MgorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYnV0IGlzIHRvIGJlIGRlY29uZmlndXJlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMgcHJvdmVlICUuMjUwcyBwZXJvIHZhIGEgc2VyIGRlc2NvbmZpZ3VyYWRvLlxuIgorCisjOiBzcmMvZGVwY29uLmM6NDAxCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBidXQgaXMgJXMuXG4iCittc2dzdHIgIiAgJS4yNTBzIHByb3BvcmNpb25hICUuMjUwcyBwZXJvIGVzICVzLlxuIgorCisjOiBzcmMvZGVwY29uLmM6NDE1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIG5vdCBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIG5vIGVzdMOhIGluc3RhbGFkby5cbiIKKworIzogc3JjL2RlcGNvbi5jOjQ0MworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyAodmVyc2lvbiAlLjI1MHMpIGlzIHRvIGJlIGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMgKHZlcnNpw7NuICUuMjUwcykgdmEgYSBzZXIgaW5zdGFsYWRvLlxuIgorCisjOiBzcmMvZGVwY29uLmM6NDY4CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzICh2ZXJzaW9uICUuMjUwcykgaXMgcHJlc2VudCBhbmQgJXMuXG4iCittc2dzdHIgIiAgJS4yNTBzICh2ZXJzacOzbiAlLjI1MHMpIGVzdMOhIHByZXNlbnRlIHkgJXMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGFuZCBpcyB0byBiZSBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIHByb3BvcmNpb25hICUuMjUwcyB5IHZhIGEgc2VyIGluc3RhbGFkby5cbiIKKworIzogc3JjL2RlcGNvbi5jOjUzNworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYW5kIGlzIHByZXNlbnQgYW5kICVzLlxuIgorbXNnc3RyICIgICUuMjUwcyBwcm9wb3JjaW9uYSAlLjI1MHMgeSBlc3TDoSBwcmVzZW50ZSB5ICVzLlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTAKKyMsIGZ1enp5CisjfCBtc2dpZCAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBxdWVyeWluZyBwYWNrYWdlcy4iCittc2dpZCAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBkaXZlcnRpbmcgZmlsZXMuIgorbXNnc3RyICJVdGlsaWNlIC0taGVscCBwYXJhIG9idGVuZXIgYXl1ZGEgZGUgbGEgY29uc3VsdGEgZGUgcGFxdWV0ZXMuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjYgc3JjL3N0YXRjbWQuYzo1NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuICVzIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkRlYmlhbiAlcyB2ZXJzacOzbiAlcy5cbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjcwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMTAgR3VpbGxlbSBKb3Zlci5cbiIKK21zZ3N0ciAiIgorIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLlxuIgorIkNvcHlyaWdodCAoQykgMjAxMCBHdWlsbGVtIEpvdmVyLlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NzUgc3JjL21haW4uYzo2MyBzcmMvcXVlcnljbWQuYzo2MDMgc3JjL3N0YXRjbWQuYzo2NQorIzogc3JjL3RyaWdjbWQuYzo1NSBkcGtnLWRlYi9tYWluLmM6NTcgZHBrZy1zcGxpdC9tYWluLmM6NTEKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo4OQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvclxuIgorImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LlxuIgorbXNnc3RyICIiCisiRXN0byBlcyBzb2Z0d2FyZSBsaWJyZTsgY29uc3VsdGUgbGEgTGljZW5jaWEgUMO6YmxpY2EgR2VuZXJhbCBkZSBHTlUgdmVyc2nDs24gIgorIjIgb1xuIgorInBvc3RlcmlvciBwYXJhIGNvbm9jZXIgbGFzIGNvbmRpY2lvbmVzIGRlIGNvcGlhLiBObyBoYXkgTklOR1VOQSBnYXJhbnTDrWEuXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo4NyBzcmMvbWFpbi5jOjgxIHNyYy9xdWVyeWNtZC5jOjYxNSBzcmMvc3RhdGNtZC5jOjc3CisjOiBkcGtnLWRlYi9tYWluLmM6NjkgZHBrZy1zcGxpdC9tYWluLmM6NjMgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjk3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gPGNvbW1hbmQ+XG4iCisiXG4iCittc2dzdHIgIiIKKyJNb2RvIGRlIHVzbzogJXMgWzxvcGNpw7NuPiAuLi5dIDxvcmRlbj5cbiIKKyJcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjkxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIFstLWFkZF0gPGZpbGU+ICAgICAgICAgICBhZGQgYSBkaXZlcnNpb24uXG4iCisiICAtLXJlbW92ZSA8ZmlsZT4gICAgICAgICAgcmVtb3ZlIHRoZSBkaXZlcnNpb24uXG4iCisiICAtLWxpc3QgWzxnbG9iLXBhdHRlcm4+XSAgc2hvdyBmaWxlIGRpdmVyc2lvbnMuXG4iCisiICAtLWxpc3RwYWNrYWdlIDxmaWxlPiAgICAgc2hvdyB3aGF0IHBhY2thZ2UgZGl2ZXJ0cyB0aGUgZmlsZS5cbiIKKyIgIC0tdHJ1ZW5hbWUgPGZpbGU+ICAgICAgICByZXR1cm4gdGhlIGRpdmVydGVkIGZpbGUuXG4iCisiXG4iCittc2dzdHIgIiIKKyLDk3JkZW5lczpcbiIKKyIgIFstLWFkZF0gPGZpY2hlcm8+ICAgICAgICAgYcOxYWRlIHVuIGRlc3bDrW8uXG4iCisiICAtLXJlbW92ZSA8ZmljaGVybz4gICAgICAgIGVsaW1pbmEgdW4gZGVzdsOtby5cbiIKKyIgIC0tbGlzdCBbPHBhdHLDs24tZ2xvYj5dICAgIG11ZXN0cmEgbG9zIGRlc3bDrW9zIGRlIGZpY2hlcm9zLlxuIgorIiAgLS1saXN0cGFja2FnZSA8YXJjaGl2bz4gICBtdWVzdHJhIHF1w6kgcGFxdWV0ZSBkZXN2w61hIGVsIGFyY2hpdm8uXG4iCisiICAtLXRydWVuYW1lIDxmaWNoZXJvPiAgICAgIGRldnVlbHZlIGVsIGZpY2hlcm8gZGVzdmlhZG8uXG4iCisiXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoxMDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLXBhY2thZ2UgPHBhY2thZ2U+ICAgICAgbmFtZSBvZiB0aGUgcGFja2FnZSB3aG9zZSBjb3B5IG9mIDxmaWxlPiB3aWxsICIKKyJub3RcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJlIGRpdmVydGVkLlxuIgorIiAgLS1sb2NhbCAgICAgICAgICAgICAgICAgIGFsbCBwYWNrYWdlcycgdmVyc2lvbnMgYXJlIGRpdmVydGVkLlxuIgorIiAgLS1kaXZlcnQgPGRpdmVydC10bz4gICAgIHRoZSBuYW1lIHVzZWQgYnkgb3RoZXIgcGFja2FnZXMnIHZlcnNpb25zLlxuIgorIiAgLS1yZW5hbWUgICAgICAgICAgICAgICAgIGFjdHVhbGx5IG1vdmUgdGhlIGZpbGUgYXNpZGUgKG9yIGJhY2spLlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIHNldCB0aGUgZGlyZWN0b3J5IHdpdGggdGhlIGRpdmVyc2lvbnMgZmlsZS5cbiIKKyIgIC0tdGVzdCAgICAgICAgICAgICAgICAgICBkb24ndCBkbyBhbnl0aGluZywganVzdCBkZW1vbnN0cmF0ZS5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBxdWlldCBvcGVyYXRpb24sIG1pbmltYWwgb3V0cHV0LlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIk9wY2lvbmVzOlxuIgorIiAgLS1wYWNrYWdlIDxwYXF1ZXRlPiAgICAgICBub21icmUgZGVsIHBhcXVldGUgY3V5YSBjb3BpYSBkZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmljaGVybz4gbm8gc2Vyw6EgZGVzdmlhZGEuXG4iCisiICAtLWxvY2FsICAgICAgICAgICAgICAgICAgIHNlIGRlc3bDrWFuIHRvZGFzIGxhcyB2ZXJzaW9uZXMgZGVsXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhcXVldGUuXG4iCisiICAtLWRpdmVydCA8ZGVzdsOtby1hPiAgICAgICBlbCBub21icmUgdXRpbGl6YWRvIHBvciBsYXMgb3RyYXMgdmVyc2lvbmVzXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlIGxvcyBwYXF1ZXRlcy5cbiIKKyIgIC0tcmVuYW1lICAgICAgICAgICAgICAgICAgbW92ZXIgZWwgZmljaGVybyBhIHVuIGxhZG8gKG8gYXRyw6FzKS5cbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yaW8+ICAgZGVmaW5lIGVsIGRpcmVjdG9yaW8gY29uIGxvcyBkZXN2w61vcy5cbiIKKyIgIC0tdGVzdCAgICAgICAgICAgICAgICAgICAgbm8gaGFjZXIgbmFkYSwgc29sbyBtb3N0cmFyLlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgICBvcGVyYWNpw7NuIHNpbGVuY2lvc2EsIHNpbiBzYWxpZGEuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgIG11ZXN0cmEgZXN0ZSBtZW5zYWplIGRlIGF5dWRhLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICBtdWVzdHJhIGxhIHZlcnNpw7NuLlxuIgorIlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJXaGVuIGFkZGluZywgZGVmYXVsdCBpcyAtLWxvY2FsIGFuZCAtLWRpdmVydCA8b3JpZ2luYWw+LmRpc3RyaWIuXG4iCisiV2hlbiByZW1vdmluZywgLS1wYWNrYWdlIG9yIC0tbG9jYWwgYW5kIC0tZGl2ZXJ0IG11c3QgbWF0Y2ggaWYgc3BlY2lmaWVkLlxuIgorIlBhY2thZ2UgcHJlaW5zdC9wb3N0cm0gc2NyaXB0cyBzaG91bGQgYWx3YXlzIHNwZWNpZnkgLS1wYWNrYWdlIGFuZCAtLSIKKyJkaXZlcnQuXG4iCittc2dzdHIgIiIKKyJDdWFuZG8gc2UgYcOxYWRlbiBkZXN2w61vcywgcG9yIG9taXNpw7NuIHNlIHV0aWxpemEgLS1sb2NhbCB5IFxuIgorIi0tZGl2ZXJ0IDxvcmlnaW5hbD4uZGlzdHJpYi5cbiIKKyJDdWFuZG8gc2UgZWxpbWluYW4gZGVzdsOtb3MsIGxvcyB2YWxvcmVzIGRlIC0tcGFja2FnZSBvIC0tbG9jYWwgeSAtLWRpdmVydCBcbiIKKyJkZWJlbiBzaSBzZSBlc3BlY2lmaWNhbi5cbiIKKyJMb3Mgc2NyaXB0cyBwcmVpbnN0IG8gcG9zdHJtIGRlIGxvcyBwYXF1ZXRlcyBkZWJlcsOtYW4gc2llbXByZSBlc3BlY2lmaWNhclxuIgorIi0tcGFja2FnZSB5IC0tZGl2ZXJ0LlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MTY4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNoZWNraW5nICclcyciCittc2dzdHIgImVycm9yIGFsIGNvbXByb2JhciBgJXMnIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjAzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJyZW5hbWUgaW52b2x2ZXMgb3ZlcndyaXRpbmcgYCVzJyB3aXRoXG4iCisiICBkaWZmZXJlbnQgZmlsZSBgJXMnLCBub3QgYWxsb3dlZCIKK21zZ3N0ciAiIgorInJlbm9tYnJhciBvYmxpZ2EgYSBzb2JyZWVzY3JpYmlyIGAlcycgY29uXG4iCisiICB1biBmaWNoZXJvIGRpc3RpbnRvIGAlcycsIG5vIGVzdMOhIHBlcm1pdGlkby4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyMjMgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzNzMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byB3cml0ZSBmaWxlICclcyciCittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBmaWxlICclcyciCittc2dzdHIgIm5vIHNlIHB1ZWRlIGVzY3JpYmlyIGVsIGZpY2hlcm8gYCVzJyIKKworIzogc3JjL2RpdmVydGNtZC5jOjIyNworbXNnaWQgImZpbGUgY29weSIKK21zZ3N0ciAiY29waWEgZGUgZmljaGVybyIKKworIzogc3JjL2RpdmVydGNtZC5jOjIzOQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVuYW1lICclcycgdG8gJyVzJyIKK21zZ3N0ciAibm8gc2UgcHVlZGUgcmVub21icmFyIGAlcycgYSBgJXMnIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjUyCisjLCBjLWZvcm1hdAorbXNnaWQgInJlbmFtZTogcmVtb3ZlIGR1cGxpY2F0ZSBvbGQgbGluayAnJXMnIgorbXNnc3RyICJyZW5hbWU6IGVsaW1pbmFkbyBlbmxhY2UgYW50aWd1byBkdXBsaWNhZG8gYCVzJyIKKworIzogc3JjL2RpdmVydGNtZC5jOjI2MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIG9wZW4gc291cmNlIGZpbGUgYCUuMjUwcyciCittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBjb3BpZWQgc291cmNlIGZpbGUgJyVzJyIKK21zZ3N0ciAibm8gc2UgcHVlZGUgYWJyaXIgZWwgZmljaGVybyBmdWVudGUgYCUuMjUwcyciCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyODQKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9jYWwgZGl2ZXJzaW9uIG9mICVzIgorbXNnc3RyICJkZXN2aWFjacOzbiBsb2NhbCBhICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mjg2CisjLCBjLWZvcm1hdAorbXNnaWQgImxvY2FsIGRpdmVyc2lvbiBvZiAlcyB0byAlcyIKK21zZ3N0ciAiZGVzdmlhY2nDs24gbG9jYWwgZGUgJXMgYSAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjI5MAorIywgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnNpb24gb2YgJXMgYnkgJXMiCittc2dzdHIgImRlc3ZpYWNpw7NuIGRlICVzIHBvciAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjI5MworIywgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnNpb24gb2YgJXMgdG8gJXMgYnkgJXMiCittc2dzdHIgImRlc3ZpYWNpw7NuIGRlICVzIGEgJXMgcG9yICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MzA5CisjLCBjLWZvcm1hdAorbXNnaWQgImFueSBkaXZlcnNpb24gb2YgJXMiCittc2dzdHIgImN1YWxxdWllciBkZXN2aWFjacOzbiBkZSAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjMxMQorIywgYy1mb3JtYXQKK21zZ2lkICJhbnkgZGl2ZXJzaW9uIG9mICVzIHRvICVzIgorbXNnc3RyICJjdWFscXVpZXIgZGVzdmlhY2nDs24gZGUgJXMgYSAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjM1NworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgY3JlYXRlIG5ldyAlcyBmaWxlIgorbXNnc3RyICJubyBzZSBwdWVkZSBjcmVhciBlbCBudWV2byBmaWNoZXJvICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mzc1IHNyYy9zdGF0Y21kLmM6MjE1IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNDA0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCBmaWxlICclcyciCittc2dzdHIgIm5vIHNlIHB1ZWRlIHZvbGNhciBlbCBmaWNoZXJvIGAlcyciCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozODIKK21zZ2lkICJlcnJvciByZW1vdmluZyBvbGQgZGl2ZXJzaW9ucy1vbGQiCittc2dzdHIgImVycm9yIGFsIGVsaW1pbmFyIGRpdmVyc2lvbnMtb2xkIGFudGlndW8iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozODQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBuZXcgZGl2ZXJzaW9ucy1vbGQiCittc2dzdHIgImVycm9yIGFsIGNyZWFyIGVsIG51ZXZvIGZpY2hlcm8gZGl2ZXJzaW9ucy1vbGQiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozODYKK21zZ2lkICJlcnJvciBpbnN0YWxsaW5nIG5ldyBkaXZlcnNpb25zIgorbXNnc3RyICJlcnJvciBhbCBpbnN0YWxhciBsYXMgbnVldmFzIGRlc3ZpYWNpb25lcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjQwNiBzcmMvZGl2ZXJ0Y21kLmM6NTAzIHNyYy9kaXZlcnRjbWQuYzo2MTAKKyM6IHNyYy9kaXZlcnRjbWQuYzo2MzAgc3JjL3N0YXRjbWQuYzoyOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhIHNpbmdsZSBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyBuZWNlc2l0YSB1biBwYXLDoW1ldHJvIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDA5IHNyYy9kaXZlcnRjbWQuYzo0MzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZW5hbWUgXCIlc1wiIGlzIG5vdCBhYnNvbHV0ZSIKK21zZ3N0ciAiZWwgbm9tYnJlIGRlIGZpY2hlcm8gwqslc8K7IG5vIGVzIHVuYSB1YmljYWNpw7NuIGFic29sdXRhIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDExIHNyYy9zdGF0Y21kLmM6MjQ5Cittc2dpZCAiZmlsZSBtYXkgbm90IGNvbnRhaW4gbmV3bGluZXMiCittc2dzdHIgImVsIG5vbWJyZSBkZSBmaWNoZXJvIG5vIHB1ZWRlIGNvbnRlbmVyIGNhcmFjdGVyZXMgZGUgbMOtbmVhIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDE4Cittc2dpZCAiQ2Fubm90IGRpdmVydCBkaXJlY3RvcmllcyIKK21zZ3N0ciAiTm8gc2UgcHVlZGVuIGRlc3ZpYXIgZGlyZWN0b3Jpb3MiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGRpdmVydCBmaWxlICclcycgdG8gaXRzZWxmIgorbXNnc3RyICJObyBzZSBwdWVkZW4gZGVzdmlhciBlbCBmaWNoZXJvIGAlcycgYSBzw60gbWlzbW8iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiTGVhdmluZyAnJXMnXG4iCittc2dzdHIgIkRlamFuZG8gYCVzJ1xuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDU4CisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgY2xhc2hlcyB3aXRoIGAlcyciCittc2dzdHIgImAlcycgZW50cmEgZW4gY29uZmxpY3RvIGNvbiBgJXMnIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDgxCisjLCBjLWZvcm1hdAorbXNnaWQgIkFkZGluZyAnJXMnXG4iCittc2dzdHIgIkHDsWFkaWVuZG8gYCVzJ1xuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTEwCisjLCBjLWZvcm1hdAorbXNnaWQgIk5vIGRpdmVyc2lvbiAnJXMnLCBub25lIHJlbW92ZWQuXG4iCittc2dzdHIgIk5vIGhheSB1biBkZXN2w61vIHBhcmEgYCVzJywgbm8gc2UgaGEgZWxpbWluYWRvIG5pbmd1bm8uXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm1pc21hdGNoIG9uIGRpdmVydC10b1xuIgorIiAgd2hlbiByZW1vdmluZyBgJXMnXG4iCisiICBmb3VuZCBgJXMnIgorbXNnc3RyICIiCisiZGlmZXJlbmNpYSBhbCBkZXN2aWFyXG4iCisiICBjdWFuZG8gc2UgZWxpbWluYWJhIGAlcydcbiIKKyIgIHNlIGVuY29udHLDsyBgJXMnIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJtaXNtYXRjaCBvbiBwYWNrYWdlXG4iCisiICB3aGVuIHJlbW92aW5nIGAlcydcbiIKKyIgIGZvdW5kIGAlcyciCittc2dzdHIgIiIKKyJkaWZlcmVuY2lhIGVuIGVsIHBhcXVldGVcbiIKKyIgIGN1YW5kbyBzZSBlbGltaW5hYmEgYCVzJ1xuIgorIiAgc2UgZW5jb250csOzIGAlcyciCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVtb3ZpbmcgJyVzJ1xuIgorbXNnc3RyICJFbGltaW5hbmRvIGAlcydcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjY1NworbXNnaWQgInBhY2thZ2UgbWF5IG5vdCBjb250YWluIG5ld2xpbmVzIgorbXNnc3RyICJlbCBub21icmUgZGUgcGFxdWV0ZSBubyBwdWVkZSB0ZW5lciBzYWx0b3MgZGUgbMOtbmVhIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjY2Cittc2dpZCAiZGl2ZXJ0LXRvIG1heSBub3QgY29udGFpbiBuZXdsaW5lcyIKK21zZ3N0ciAiwqtkaXZlcnQtdG/CuyBubyBwdWVkZSB0ZW5lciBzYWx0b3MgZGUgbMOtbmVhIgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzo2NAorbXNnaWQgImZhaWxlZCB0byBvcGVuIGRpdmVyc2lvbnMgZmlsZSIKK21zZ3N0ciAiZmFsbG8gYWwgYWJyaXIgZmljaGVybyBkZSBkZXN2w61vcyIKKworIzogc3JjL2RpdmVydGRiLmM6NzEKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgcHJldmlvdXMgZGl2ZXJzaW9ucyBmaWxlIgorbXNnc3RyICJmYWxsbyBhbCBlZmVjdHVhciBgZnN0YXQnIHNvYnJlIGVsIGZpY2hlcm8gZGUgZGVzdsOtb3MgYW50ZXJpb3IiCisKKyM6IHNyYy9kaXZlcnRkYi5jOjczCittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGRpdmVyc2lvbnMgZmlsZSIKK21zZ3N0ciAiZmFsbG8gYWwgZWZlY3R1YXIgYGZzdGF0JyBzb2JyZSBlbCBmaWNoZXJvIGRlIGRlc3bDrW9zIgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzoxMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmxpY3RpbmcgZGl2ZXJzaW9ucyBpbnZvbHZpbmcgYCUuMjUwcycgb3IgYCUuMjUwcyciCittc2dzdHIgImRlc3bDrW9zIGNvbmZsaWN0aXZvcyBhY2VyY2EgZGUgYCUuMjUwcycgbyBgJS4yNTBzJyIKKworIzogc3JjL2VucXVpcnkuYzo3MworbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBpbiBhIG1lc3MgZHVlIHRvIHNlcmlvdXMgcHJvYmxlbXMgZHVyaW5nXG4iCisiaW5zdGFsbGF0aW9uLiAgVGhleSBtdXN0IGJlIHJlaW5zdGFsbGVkIGZvciB0aGVtIChhbmQgYW55IHBhY2thZ2VzXG4iCisidGhhdCBkZXBlbmQgb24gdGhlbSkgdG8gZnVuY3Rpb24gcHJvcGVybHk6XG4iCittc2dzdHIgIiIKKyJMb3Mgc2lndWllbnRlcyBwYXF1ZXRlcyBlc3TDoW4gZW4gdW4gZXN0YWRvIGRlIGRlc29yZGVuIGRlYmlkbyBhIHNlcmlvc1xuIgorInByb2JsZW1hcyBkdXJhbnRlIGxhIGluc3RhbGFjacOzbi4gRGViZW4gc2VyIHJlaW5zdGFsYWRvcyBwYXJhIHF1ZSBlbGxvc1xuIgorIih5IGxvcyBwYXF1ZXRlcyBxdWUgZGVwZW5kZW4gZGUgZWxsb3MpIGZ1bmNpb25lbiBjb3JyZWN0YW1lbnRlOlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjgwCittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgaGF2ZSBiZWVuIHVucGFja2VkIGJ1dCBub3QgeWV0IGNvbmZpZ3VyZWQuXG4iCisiVGhleSBtdXN0IGJlIGNvbmZpZ3VyZWQgdXNpbmcgZHBrZyAtLWNvbmZpZ3VyZSBvciB0aGUgY29uZmlndXJlXG4iCisibWVudSBvcHRpb24gaW4gZHNlbGVjdCBmb3IgdGhlbSB0byB3b3JrOlxuIgorbXNnc3RyICIiCisiTG9zIHNpZ3VpZW50ZXMgcGFxdWV0ZXMgaGFuIHNpZG8gZGVzZW1wYXF1ZXRhZG9zIHBlcm8gbm8gY29uZmlndXJhZG9zIGHDum4uXG4iCisiRGViZW4gc2VyIGNvbmZpZ3VyYWRvcyBtZWRpYW50ZSBkcGtnIC0tY29uZmlndXJlIG8gbGEgb3BjacOzbiBgY29uZmlndXJlJ1xuIgorImVuIGRzZWxlY3QgcGFyYSBxdWUgZnVuY2lvbmVuOlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjg3Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgYXJlIG9ubHkgaGFsZiBjb25maWd1cmVkLCBwcm9iYWJseSBkdWUgdG8gcHJvYmxlbXNcbiIKKyJjb25maWd1cmluZyB0aGVtIHRoZSBmaXJzdCB0aW1lLiAgVGhlIGNvbmZpZ3VyYXRpb24gc2hvdWxkIGJlIHJldHJpZWQgdXNpbmdcbiIKKyJkcGtnIC0tY29uZmlndXJlIDxwYWNrYWdlPiBvciB0aGUgY29uZmlndXJlIG1lbnUgb3B0aW9uIGluIGRzZWxlY3Q6XG4iCittc2dzdHIgIiIKKyJMb3Mgc2lndWllbnRlcyBwYXF1ZXRlcyBlc3TDoW4gc8OzbG8gY29uZmlndXJhZG9zIGEgbWVkaWFzLCBwcm9iYWJsZW1lbnRlXG4iCisiZGViaWRvIGEgcHJvYmxlbWFzIGVuIHN1IGNvbmZpZ3VyYWNpw7NuIGluaWNpYWwuIERlYmUgcmVpbnRlbnRhcnNlIHN1XG4iCisiY29uZmlndXJhY2nDs24gY29uIGRwa2cgLS1jb25maWd1cmUgPHBhcXVldGU+IG8gbGEgb3BjacOzbiBDb25maWd1cmFyIGVuXG4iCisiZHNlbGVjdDpcbiIKKworIzogc3JjL2VucXVpcnkuYzo5NAorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBvbmx5IGhhbGYgaW5zdGFsbGVkLCBkdWUgdG8gcHJvYmxlbXMgZHVyaW5nXG4iCisiaW5zdGFsbGF0aW9uLiAgVGhlIGluc3RhbGxhdGlvbiBjYW4gcHJvYmFibHkgYmUgY29tcGxldGVkIGJ5IHJldHJ5aW5nIGl0O1xuIgorInRoZSBwYWNrYWdlcyBjYW4gYmUgcmVtb3ZlZCB1c2luZyBkc2VsZWN0IG9yIGRwa2cgLS1yZW1vdmU6XG4iCittc2dzdHIgIiIKKyJMb3Mgc2lndWllbnRlcyBwYXF1ZXRlcyBlc3TDoW4gc8OzbG8gaW5zdGFsYWRvcyBhIG1lZGlhcywgZGViaWRvIGEgcHJvYmxlbWFzXG4iCisiZHVyYW50ZSBsYSBpbnN0YWxhY2nDs24uIExhIGluc3RhbGFjacOzbiBwdWVkZSBjb21wbGV0YXJzZSBwcm9iYWJsZW1lbnRlXG4iCisicmVpbnRlbnRhbmRvOyBsb3MgcGFxdWV0ZXMgc2UgcHVlZGVuIGRlc2luc3RhbGFyIGNvbiBkc2VsZWN0IG8gZHBrZyAtLSIKKyJyZW1vdmU6XG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTAxCittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgYXJlIGF3YWl0aW5nIHByb2Nlc3Npbmcgb2YgdHJpZ2dlcnMgdGhhdCB0aGV5XG4iCisiaGF2ZSBhY3RpdmF0ZWQgaW4gb3RoZXIgcGFja2FnZXMuICBUaGlzIHByb2Nlc3NpbmcgY2FuIGJlIHJlcXVlc3RlZCB1c2luZ1xuIgorImRzZWxlY3Qgb3IgZHBrZyAtLWNvbmZpZ3VyZSAtLXBlbmRpbmcgKG9yIGRwa2cgLS10cmlnZ2Vycy1vbmx5KTpcbiIKK21zZ3N0ciAiIgorIkxvcyBwYXF1ZXRlcyBtb3N0cmFkb3MgYSBjb250aW51YWNpw7NuIGVzdMOhbiBlc3BlcmFuZG8gZWwgcHJvY2VzYWRvIGRlXG4iCisiZGlzcGFyYWRvcmVzIHF1ZSBoYW4gYWN0aXZhZG8gc29icmUgb3Ryb3MgcGFxdWV0ZXMuIEVzdGUgcHJvY2VzYWRvIHB1ZWRlXG4iCisic29saWNpdGFyc2UgdXRpbGl6YW5kbyBkc2VsZWN0IG8gZHBrZyAtLWNvbmZpZ3VyZSAtLXBlbmRpbmcgKG8gZHBrZyAtLSIKKyJ0cmlnZ2Vycy1vbmx5KTpcbiIKKworIzogc3JjL2VucXVpcnkuYzoxMDgKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBoYXZlIGJlZW4gdHJpZ2dlcmVkLCBidXQgdGhlIHRyaWdnZXIgcHJvY2Vzc2luZ1xuIgorImhhcyBub3QgeWV0IGJlZW4gZG9uZS4gIFRyaWdnZXIgcHJvY2Vzc2luZyBjYW4gYmUgcmVxdWVzdGVkIHVzaW5nXG4iCisiZHNlbGVjdCBvciBkcGtnIC0tY29uZmlndXJlIC0tcGVuZGluZyAob3IgZHBrZyAtLXRyaWdnZXJzLW9ubHkpOlxuIgorbXNnc3RyICIiCisiTG9zIHBhcXVldGVzIG1vc3RyYWRvcyBhIGNvbnRpbnVhY2nDs24gaGFuIGFjdGl2YWRvIGRpc3BhcmFkb3JlcywgcGVybyBubyBzZSAiCisiaGEgXG4iCisicmVhbGl6YWRvIGHDum4gZWwgcHJvY2VzYWRvIGRlIGRpc3BhcmFkb3Jlcy4gRXN0ZSBwcm9jZXNhZG8gcHVlZGUgIgorInNvbGljaXRhcnNlIFxuIgorInV0aWxpemFuZG8gZHNlbGVjdCBvIGRwa2cgLS1jb25maWd1cmUgLS1wZW5kaW5nIChvIGRwa2cgLS10cmlnZ2Vycy1vbmx5KTpcbiIKKworIzogc3JjL2VucXVpcnkuYzoxMzcgc3JjL2VucXVpcnkuYzoyMTEgc3JjL2VucXVpcnkuYzoyOTIgc3JjL2VucXVpcnkuYzozNzMKKyM6IHNyYy9lbnF1aXJ5LmM6NDYwIHNyYy9zZWxlY3QuYzo5OCBzcmMvc2VsZWN0LmM6MTY0IHNyYy90cmlnY21kLmM6MTk5CisjOiBzcmMvdXBkYXRlLmM6NDggc3JjL3VwZGF0ZS5jOjExMyBkcGtnLXNwbGl0L3F1ZXVlLmM6MjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgbm8gYXJndW1lbnRzIgorbXNnc3RyICItLSVzIG5vIHRvbWEgbmluZ8O6biBhcmd1bWVudG8iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTUyCittc2dpZCAiIgorIkFub3RoZXIgcHJvY2VzcyBoYXMgbG9ja2VkIHRoZSBkYXRhYmFzZSBmb3Igd3JpdGluZywgYW5kIG1pZ2h0IGN1cnJlbnRseSBiZVxuIgorIm1vZGlmeWluZyBpdCwgc29tZSBvZiB0aGUgZm9sbG93aW5nIHByb2JsZW1zIG1pZ2h0IGp1c3QgYmUgZHVlIHRvIHRoYXQuXG4iCittc2dzdHIgIiIKKyJBbGfDum4gb3RybyBwcm9jZXNvIGhhIGJsb3F1ZWFkbyBwYXJhIGVzY3JpdHVyYSBsYSBiYXNlIGRlIGRhdG9zLCB5IHB1ZWRlICIKKyJlc3RhclxuIgorIm1vZGlmaWPDoW5kb2xhLCBhbGd1bm9zIGRlIGxvcyBwcm9ibGVtYXMgaW5kaWNhZG9zIGEgY29udGludWFjacOzbiBwdWVkZW4gIgorImRlYmVyc2UgYSBlbGxvLlxuIgorCisjIFNlIHJlZmllcmUgYSBsYSBzZWNjacOzbi4KKyM6IHNyYy9lbnF1aXJ5LmM6MTkxCisjLCBmdXp6eQorI3wgbXNnaWQgIjx1bmtub3duPiIKK21zZ2N0eHQgInNlY3Rpb24iCittc2dpZCAiPHVua25vd24+IgorbXNnc3RyICI8ZGVzY29ub2NpZGE+IgorCisjOiBzcmMvZW5xdWlyeS5jOjI1MQorIywgYy1mb3JtYXQKK21zZ2lkICIgJWQgaW4gJXM6ICIKK21zZ3N0ciAiICVkIGVuICVzOiAiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MjY2CisjLCBjLWZvcm1hdAorbXNnaWQgIiAlZCBwYWNrYWdlLCBmcm9tIHRoZSBmb2xsb3dpbmcgc2VjdGlvbjoiCittc2dpZF9wbHVyYWwgIiAlZCBwYWNrYWdlcywgZnJvbSB0aGUgZm9sbG93aW5nIHNlY3Rpb25zOiIKK21zZ3N0clswXSAiICVkIHBhcXVldGUsIGRlIGxhcyBzaWd1aWVudGVzIHNlY2Npb25lczoiCittc2dzdHJbMV0gIiAlZCBwYXF1ZXRlcywgZGUgbGFzIHNpZ3VpZW50ZXMgc2VjY2lvbmVzOiIKKworIzogc3JjL2VucXVpcnkuYzozMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlZlcnNpb24gb2YgZHBrZyB3aXRoIHdvcmtpbmcgJXMgc3VwcG9ydCBub3QgeWV0IGNvbmZpZ3VyZWQuXG4iCisiIFBsZWFzZSB1c2UgJ2Rwa2cgLS1jb25maWd1cmUgZHBrZycsIGFuZCB0aGVuIHRyeSBhZ2Fpbi5cbiIKK21zZ3N0ciAiIgorIk5vIHNlIGhhIGNvbmZpZ3VyYWRvIHVuYSB2ZXJzacOzbiBkZSBkcGtnIGNvbiBzb3BvcnRlIGRlICVzLlxuIgorIiBQb3IgZmF2b3IsIHVzZSBgZHBrZyAtLWNvbmZpZ3VyZSBkcGtnJywgZSBpbnTDqW50ZWxvIGRlIG51ZXZvLlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjMxMAorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnIG5vdCByZWNvcmRlZCBhcyBpbnN0YWxsZWQsIGNhbm5vdCBjaGVjayBmb3IgJXMgc3VwcG9ydCFcbiIKK21zZ3N0ciAiIgorImRwa2cgbm8gcmVnaXN0cmFkbyBjb21vIGluc3RhbGFkbywgwqFubyBzZSBwdWVkZSBjb21wcm9iYXIgZWwgc29wb3J0ZSBkZSAlcyFcbiIKKworIzogc3JjL2VucXVpcnkuYzozMjEKK21zZ2lkICJQcmUtRGVwZW5kcyBmaWVsZCIKK21zZ3N0ciAiQ2FtcG8gwqtQcmUtRGVwZW5kc8K7IgorCisjOiBzcmMvZW5xdWlyeS5jOjMyOQorbXNnaWQgImVwb2NoIgorbXNnc3RyICLDqXBvY2EiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzM3Cittc2dpZCAibG9uZyBmaWxlbmFtZXMiCittc2dzdHIgImZpY2hlcm9zIGxhcmdvcyIKKworIzogc3JjL2VucXVpcnkuYzozNDYKK21zZ2lkICJtdWx0aXBsZSBDb25mbGljdHMgYW5kIFJlcGxhY2VzIgorbXNnc3RyICJtw7psdGlwbGVzIMKrQ29uZmxpY3RzwrsgeSDCq1JlcGxhY2VzwrsiCisKKyM6IHNyYy9lbnF1aXJ5LmM6NDM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBjYW5ub3Qgc2VlIGhvdyB0byBzYXRpc2Z5IHByZS1kZXBlbmRlbmN5OlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisiZHBrZzogbm8gc2UgcHVlZGUgdmVyIGPDs21vIHNhdGlzZmFjZXIgbGEgcHJlZGVwZW5kZW5jaWE6XG4iCisiICVzXG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6NDM1CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzYXRpc2Z5IHByZS1kZXBlbmRlbmNpZXMgZm9yICUuMjUwcyAod2FudGVkIGR1ZSB0byAlLjI1MHMpIgorbXNnc3RyICIiCisibm8gc2UgcHVlZGUgc2F0aXNmYWNlciBsYSBwcmVkZXBlbmRlbmNpYSBwYXJhICUuMjUwcyAobmVjZXNhcmlhIHBvciAlLjI1MHMpIgorCisjOiBzcmMvZW5xdWlyeS5jOjQ3MgorIywgYy1mb3JtYXQKK21zZ2lkICJvYnNvbGV0ZSBvcHRpb24gJy0tJXMnLCBwbGVhc2UgdXNlICctLSVzJyBpbnN0ZWFkLiIKK21zZ3N0ciAib3BjacOzbiBvYnNvbGV0YSBgLS0lcycsIHV0aWxpY2UgYC0tJXMnIGVuIHN1IGx1Z2FyLiIKKworIzogc3JjL2VucXVpcnkuYzo1MTkKK21zZ2lkICIiCisiLS1jb21wYXJlLXZlcnNpb25zIHRha2VzIHRocmVlIGFyZ3VtZW50czogPHZlcnNpb24+IDxyZWxhdGlvbj4gPHZlcnNpb24+IgorbXNnc3RyICIiCisiLS1jb21wYXJlLXZlcnNpb25zIHRvbWEgdHJlcyBhcmd1bWVudG9zOiA8dmVyc2nDs24+IDxyZWxhY2nDs24+IDx2ZXJzacOzbj4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6NTI0Cittc2dpZCAiLS1jb21wYXJlLXZlcnNpb25zIGJhZCByZWxhdGlvbiIKK21zZ3N0ciAicmVsYWNpw7NuIC0tY29tcGFyZS12ZXJzaW9ucyBlcnLDs25lYSIKKworIzogc3JjL2VucXVpcnkuYzo1Mjkgc3JjL2VucXVpcnkuYzo1MzEgc3JjL2VucXVpcnkuYzo1NDAgc3JjL2VucXVpcnkuYzo1NDIKKyMsIGMtZm9ybWF0Cittc2dpZCAidmVyc2lvbiAnJXMnIGhhcyBiYWQgc3ludGF4OiAlcyIKK21zZ3N0ciAibGEgdmVyc2nDs24gYCVzJyB0aWVuZSB1bmEgc2ludGF4aXMgZXJyw7NuZWE6ICVzIgorCisjOiBzcmMvZXJyb3JzLmM6NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBlcnJvciBwcm9jZXNzaW5nICVzICgtLSVzKTpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorIiVzOiBlcnJvciBhbCBwcm9jZXNhciAlcyAoLS0lcyk6XG4iCisiICVzXG4iCisKKyM6IHNyYy9lcnJvcnMuYzo2OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgImRwa2c6IGZhaWxlZCB0byBhbGxvY2F0ZSBtZW1vcnkgZm9yIG5ldyBlbnRyeSBpbiBsaXN0IG9mIGZhaWxlZCBwYWNrYWdlcy4iCittc2dpZCAiIgorIiVzOiBmYWlsZWQgdG8gYWxsb2NhdGUgbWVtb3J5IGZvciBuZXcgZW50cnkgaW4gbGlzdCBvZiBmYWlsZWQgcGFja2FnZXM6ICVzIgorbXNnc3RyICIiCisiZHBrZzogZmFsbG8gYWwgYXNpZ25hciBtZW1vcmlhIHBhcmEgbGEgbnVldmEgZW50cmFkYSBlbiBsYSBsaXN0YSBkZSAiCisicGFxdWV0ZXNcbiIKKyJxdWUgaGFuIGZhbGxhZG8iCisKKyM6IHNyYy9lcnJvcnMuYzo3OQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZHBrZzogdG9vIG1hbnkgZXJyb3JzLCBzdG9wcGluZ1xuIgorbXNnaWQgIiVzOiB0b28gbWFueSBlcnJvcnMsIHN0b3BwaW5nXG4iCittc2dzdHIgImRwa2c6IGRlbWFzaWFkb3MgZXJyb3JlcywgcGFyYW5kb1xuIgorCisjOiBzcmMvZXJyb3JzLmM6ODcKK21zZ2lkICJFcnJvcnMgd2VyZSBlbmNvdW50ZXJlZCB3aGlsZSBwcm9jZXNzaW5nOlxuIgorbXNnc3RyICJTZSBlbmNvbnRyYXJvbiBlcnJvcmVzIGFsIHByb2Nlc2FyOlxuIgorCisjOiBzcmMvZXJyb3JzLmM6OTQKK21zZ2lkICJQcm9jZXNzaW5nIHdhcyBoYWx0ZWQgYmVjYXVzZSB0aGVyZSB3ZXJlIHRvbyBtYW55IGVycm9ycy5cbiIKK21zZ3N0ciAiUHJvY2VzbyBkZXRlbmlkbyBwb3IgaGFiZXIgZGVtYXNpYWRvcyBlcnJvcmVzLlxuIgorCisjOiBzcmMvZXJyb3JzLmM6MTA1CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgJXMgd2FzIG9uIGhvbGQsIHByb2Nlc3NpbmcgaXQgYW55d2F5IGFzIHlvdSByZXF1ZXN0ZWRcbiIKK21zZ3N0ciAiIgorIkVsIHBhcXVldGUgJXMgZXN0YWJhIG1hbnRlbmlkbywgc2UgcHJvY2VzYXLDoSBkZSBjdWFscXVpZXIgZm9ybWFcbiIKKyJjb21vIHNlIGhhIHNvbGljaXRhZG9cbiIKKworIzogc3JjL2Vycm9ycy5jOjEwOQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiUGFja2FnZSAlcyBpcyBvbiBob2xkLCBub3QgdG91Y2hpbmcgaXQuICBVc2UgLS1mb3JjZS1ob2xkIHRvIG92ZXJyaWRlLlxuIgorbXNnc3RyICIiCisiRWwgcGFxdWV0ZSAlcyBlc3TDoSBtYW50ZW5pZG8sIG5vIHNlIHRvY2EuIFV0aWxpY2UgLS1mb3JjZS1ob2xkIHBhcmEgY2FtYmlhclxuIgorImVsIGNvbXBvcnRhbWllbnRvIHByZWRldGVybWluYWRvXG4iCisKKyM6IHNyYy9lcnJvcnMuYzoxMTkKK21zZ2lkICJvdmVycmlkaW5nIHByb2JsZW0gYmVjYXVzZSAtLWZvcmNlIGVuYWJsZWQ6IgorbXNnc3RyICIiCisic29icmVzZXllbmRvIGVsIHByb2JsZW1hIHBvcnF1ZSBlc3TDoSBhY3RpdmEgbGEgb3BjacOzbiAtLWZvcmNlOlxuIgorIiAiCisKKyM6IHNyYy9maWxlc2RiLmM6MzA3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSBgJS4yNTBzJyIKK21zZ3N0ciAibm8gc2UgcHVlZGUgYWJyaXIgZWwgZmljaGVybyBkZSBsaXN0YSBkZSBmaWNoZXJvcyBkZWwgcGFxdWV0ZSBgJS4yNTBzJyIKKworIzogc3JjL2ZpbGVzZGIuYzozMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSBgJS4yNTBzJyBtaXNzaW5nLCBhc3N1bWluZyBwYWNrYWdlIGhhcyBubyBmaWxlcyAiCisiY3VycmVudGx5IGluc3RhbGxlZC4iCittc2dzdHIgIiIKKyJmYWx0YSBlbCBmaWNoZXJvIGRlIGxpc3RhIGRlIGZpY2hlcm9zIGRlbCBwYXF1ZXRlIGAlLjI1MHMnLCBzZSBzdXBvbmRyw6EgcXVlICIKKyJlbCBwYXF1ZXRlIG5vIHRpZW5lIG5pbmfDum4gZmljaGVybyBhY3R1YWxtZW50ZSBpbnN0YWxhZG8uIgorCisjOiBzcmMvZmlsZXNkYi5jOjMyMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJyUuMjUwcyciCittc2dzdHIgIiIKKyJubyBzZSBwdWVkZSBlamVjdXRhciDCq3N0YXTCuyBzb2JyZSBlbCBmaWNoZXJvIGRlIGxpc3RhIGRlIGZpY2hlcm9zIGRlbCAiCisicGFxdWV0ZSBgJS4yNTBzJyIKKworIzogc3JjL2ZpbGVzZGIuYzozMzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGVzIGxpc3QgZm9yIHBhY2thZ2UgYCUuMjUwcyciCittc2dpZCAicmVhZGluZyBmaWxlcyBsaXN0IGZvciBwYWNrYWdlICclLjI1MHMnIgorbXNnc3RyICJlbCBmaWNoZXJvIGRlIGxpc3RhIGRlIGZpY2hlcm9zIGRlbCBwYXF1ZXRlIGAlLjI1MHMnIgorCisjOiBzcmMvZmlsZXNkYi5jOjMzNgorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJyUuMjUwcycgaXMgbWlzc2luZyBmaW5hbCBuZXdsaW5lIgorbXNnc3RyICIiCisiZmFsdGEgdW4gc2FsdG8gZGUgbMOtbmVhIG51ZXZhIGFsIGZpbmFsIGRlbCBmaWNoZXJvIGRlIGxpc3RhIGRlIGZpY2hlcm9zIGRlbCAiCisicGFxdWV0ZSBgJS4yNTBzJyAiCisKKyM6IHNyYy9maWxlc2RiLmM6MzQ0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSBgJS4yNTBzJyBjb250YWlucyBlbXB0eSBmaWxlbmFtZSIKK21zZ3N0ciAiIgorImVsIGZpY2hlcm8gZGUgbGlzdGEgZGUgZmljaGVyb3MgZGVsIHBhcXVldGUgYCUuMjUwcydcbiIKKyJjb250aWVuZSB1biBub21icmUgZGUgZmljaGVybyB2YWPDrW8iCisKKyM6IHNyYy9maWxlc2RiLmM6MzUyCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlIGAlLjI1MHMnIgorbXNnc3RyICJlcnJvciBhbCBjZXJyYXIgZWwgZmljaGVybyBkZSBsaXN0YSBkZSBmaWNoZXJvcyBkZWwgcGFxdWV0ZSBgJS4yNTBzJyIKKworIzogc3JjL2ZpbGVzZGIuYzo0NjIKK21zZ2lkICIoUmVhZGluZyBkYXRhYmFzZSAuLi4gIgorbXNnc3RyICIoTGV5ZW5kbyBsYSBiYXNlIGRlIGRhdG9zIC4uLiAiCisKKyM6IHNyYy9maWxlc2RiLmM6NDgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiVkIGZpbGUgb3IgZGlyZWN0b3J5IGN1cnJlbnRseSBpbnN0YWxsZWQuKVxuIgorbXNnaWRfcGx1cmFsICIlZCBmaWxlcyBhbmQgZGlyZWN0b3JpZXMgY3VycmVudGx5IGluc3RhbGxlZC4pXG4iCittc2dzdHJbMF0gIiVkIGZpY2hlcm8gbyBkaXJlY3RvcmlvIGluc3RhbGFkbyBhY3R1YWxtZW50ZS4pXG4iCittc2dzdHJbMV0gIiVkIGZpY2hlcm9zIG8gZGlyZWN0b3Jpb3MgaW5zdGFsYWRvcyBhY3R1YWxtZW50ZS4pXG4iCisKKyM6IHNyYy9maWxlc2RiLmM6NTE2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIiIKKyJubyBzZSBwdWVkZSBjcmVhciBlbCBmaWNoZXJvIGRlIGxpc3RhIGRlIGZpY2hlcm9zIGFjdHVhbGl6YWRvXG4iCisiZGVsIHBhcXVldGUgJXMiCisKKyM6IHNyYy9maWxlc2RiLmM6NTI2CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB3cml0ZSB0byB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAiIgorIm5vIHNlIHB1ZWRlIGVzY3JpYmlyIGVuIGVsIGZpY2hlcm8gZGUgbGlzdGEgZGUgZmljaGVyb3MgYWN0dWFsaXphZG9cbiIKKyJkZWwgcGFxdWV0ZSAlcyIKKworIzogc3JjL2ZpbGVzZGIuYzo1MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZsdXNoIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICIiCisibm8gc2UgcHVlZGUgZWZlY3R1YXIgYGZsdXNoJyBzb2JyZSBlbCBmaWNoZXJvIGRlIGxpc3RhIGRlIGZpY2hlcm9zICIKKyJhY3R1YWxpemFkb1xuIgorImRlbCBwYXF1ZXRlICVzIgorCisjOiBzcmMvZmlsZXNkYi5jOjUzMAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gc3luYyB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAiIgorIm5vIHNlIHB1ZWRlIGVmZWN0dWFyIGBzeW5jJyBzb2JyZSBlbCBmaWNoZXJvIGFjdHVhbGl6YWRvIGRlIGxpc3RhIGRlICIKKyJmaWNoZXJvc1xuIgorImRlbCBwYXF1ZXRlICVzIgorCisjOiBzcmMvZmlsZXNkYi5jOjUzMworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2xvc2UgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIiIKKyJubyBzZSBwdWVkZSBjZXJyYXIgZWwgZmljaGVybyBhY3R1YWxpemFkbyBkZSBsaXN0YSBkZSBmaWNoZXJvcyBkZWxcbiIKKyJwYXF1ZXRlICVzIgorCisjOiBzcmMvZmlsZXNkYi5jOjUzNQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gaW5zdGFsbCB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAiIgorIm5vIHNlIHB1ZWRlIGluc3RhbGFyIGVsIGZpY2hlcm8gYWN0dWFsaXphZG8gZGUgbGlzdGEgZGUgZmljaGVyb3MgZGVsXG4iCisicGFxdWV0ZSAlcyIKKworIzogc3JjL2hlbHAuYzo0OAorbXNnaWQgIm5vdCBpbnN0YWxsZWQiCittc2dzdHIgIm5vIGluc3RhbGFkbyIKKworIzogc3JjL2hlbHAuYzo0OQorbXNnaWQgIm5vdCBpbnN0YWxsZWQgYnV0IGNvbmZpZ3MgcmVtYWluIgorbXNnc3RyICJubyBpbnN0YWxhZG8gcGVybyBxdWVkYSBzdSBjb25maWd1cmFjacOzbiIKKworIzogc3JjL2hlbHAuYzo1MAorbXNnaWQgImJyb2tlbiBkdWUgdG8gZmFpbGVkIHJlbW92YWwgb3IgaW5zdGFsbGF0aW9uIgorbXNnc3RyICJyb3RvIGRlYmlkbyBhIHVuYSBkZXNpbnN0YWxhY2nDs24gbyBpbnN0YWxhY2nDs24gZmFsbGlkYSIKKworIzogc3JjL2hlbHAuYzo1MQorbXNnaWQgInVucGFja2VkIGJ1dCBub3QgY29uZmlndXJlZCIKK21zZ3N0ciAiZGVzZW1wYXF1ZXRhZG8gcGVybyBzaW4gY29uZmlndXJhciIKKworIzogc3JjL2hlbHAuYzo1MgorbXNnaWQgImJyb2tlbiBkdWUgdG8gcG9zdGluc3QgZmFpbHVyZSIKK21zZ3N0ciAicm90byBkZWJpZG8gYSBmYWxsbyBlbiBwb3N0aW5zdCIKKworIzogc3JjL2hlbHAuYzo1MworbXNnaWQgImF3YWl0aW5nIHRyaWdnZXIgcHJvY2Vzc2luZyBieSBhbm90aGVyIHBhY2thZ2UiCittc2dzdHIgImVzcGVyYW5kbyBlbCBwcm9jZXNhZG8gZGUgZGlzcGFyYWRvcmVzIHBvciBvdHJvIHBhcXVldGUiCisKKyM6IHNyYy9oZWxwLmM6NTQKK21zZ2lkICJ0cmlnZ2VyZWQiCittc2dzdHIgImRpc3BhcmFkbyIKKworIzogc3JjL2hlbHAuYzo1NQorbXNnaWQgImluc3RhbGxlZCIKK21zZ3N0ciAiaW5zdGFsYWRvIgorCisjOiBzcmMvaGVscC5jOjEwNworIywgZnV6enkKKyN8IG1zZ2lkICJlcnJvcjogUEFUSCBpcyBub3Qgc2V0LiIKK21zZ2lkICJQQVRIIGlzIG5vdCBzZXQuIgorbXNnc3RyICJlcnJvcjogbm8gc2UgaGEgZXN0YWJsZWNpZG8gZWwgUEFUSC4iCisKKyM6IHNyYy9oZWxwLmM6MTI5CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuIgorbXNnc3RyICJgJXMnIG5vIHNlIGhhIGVuY29udHJhZG8gZW4gZWwgUEFUSCBvIG5vIGVzIGVqZWN1dGFibGUuIgorCisjOiBzcmMvaGVscC5jOjEzOAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiJyVzJyBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS4iCittc2dpZCAiIgorIiVkIGV4cGVjdGVkIHByb2dyYW0gbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuXG4iCisiJXMiCittc2dpZF9wbHVyYWwgIiIKKyIlZCBleHBlY3RlZCBwcm9ncmFtcyBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS5cbiIKKyIlcyIKK21zZ3N0clswXSAiYCVzJyBubyBzZSBoYSBlbmNvbnRyYWRvIGVuIGVsIFBBVEggbyBubyBlcyBlamVjdXRhYmxlLiIKK21zZ3N0clsxXSAiYCVzJyBubyBzZSBoYSBlbmNvbnRyYWRvIGVuIGVsIFBBVEggbyBubyBlcyBlamVjdXRhYmxlLiIKKworIzogc3JjL2hlbHAuYzoxNDEKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIiVkIGV4cGVjdGVkIHByb2dyYW0gbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuXG4iCisjfCAiTkI6IHJvb3QncyBQQVRIIHNob3VsZCB1c3VhbGx5IGNvbnRhaW4gL3Vzci9sb2NhbC9zYmluLCAvdXNyL3NiaW4gYW5kIC8iCisjfCAic2Jpbi4iCisjfCBtc2dpZF9wbHVyYWwgIiIKKyN8ICIlZCBleHBlY3RlZCBwcm9ncmFtcyBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS5cbiIKKyN8ICJOQjogcm9vdCdzIFBBVEggc2hvdWxkIHVzdWFsbHkgY29udGFpbiAvdXNyL2xvY2FsL3NiaW4sIC91c3Ivc2JpbiBhbmQgLyIKKyN8ICJzYmluLiIKK21zZ2lkICIiCisiTm90ZTogcm9vdCdzIFBBVEggc2hvdWxkIHVzdWFsbHkgY29udGFpbiAvdXNyL2xvY2FsL3NiaW4sIC91c3Ivc2JpbiBhbmQgLyIKKyJzYmluLiIKK21zZ3N0ciAiIgorIiVkIHByb2dyYW1hIGVzcGVyYWRvIG5vIGVuY29udHJhZG9zIGVuIGVsIFBBVEggbyBubyBlamVjdXRhYmxlc1xuIgorIiBOT1RBOiBFbCBQQVRIIGRlIHJvb3QgaGFiaXR1YWxtZW50ZSBpbmNsdXllIC91c3IvbG9jYWwvc2JpbiwgL3Vzci9zYmluIHkgLyIKKyJzYmluLiIKKworIzogc3JjL2hlbHAuYzoxODgKK21zZ2lkICJhZG1pbmRpciBtdXN0IGJlIGluc2lkZSBpbnN0ZGlyIGZvciBkcGtnIHRvIHdvcmsgcHJvcGVybHkiCittc2dzdHIgIiIKKworIzogc3JjL2hlbHAuYzoxOTAgc3JjL21haW4uYzo3NDcKKyMsIGZ1enp5CisjfCBtc2dpZCAidW5hYmxlIHRvIHNldGVudiBmb3IgbWFpbnRhaW5lciBzY3JpcHQiCittc2dpZCAidW5hYmxlIHRvIHNldGVudiBmb3Igc3VicHJvY2Vzc2VzIgorbXNnc3RyICJubyBzZSBwdWVkZSBlZmVjdHVhciBgc2V0ZW52JyBwYXJhIGVsIHNjcmlwdCBkZWwgZGVzYXJyb2xsYWRvciIKKworIzogc3JjL2hlbHAuYzoxOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNocm9vdCB0byBgJS4yNTBzJyIKK21zZ3N0ciAiZmFsbG8gYWwgZWZlY3R1YXIgYGNocm9vdCcgYSBgJS4yNTBzJyIKKworIzogc3JjL2hlbHAuYzoxOTQgZHBrZy1kZWIvYnVpbGQuYzo0NTUgZHBrZy1kZWIvYnVpbGQuYzo0NTcKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTM2IGRwa2ctZGViL2J1aWxkLmM6NTU4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byBgJS4yNTVzJyIKK21zZ3N0ciAiZmFsbG8gYWwgY2FtYmlhciBhbCBkaXJlY3RvcmlvIGAlLjI1NXMnIgorCisjOiBzcmMvaGVscC5jOjI1NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IGV4ZWN1dGUgcGVybWlzc2lvbnMgb24gYCUuMjUwcyciCittc2dzdHIgIm5vIHNlIHB1ZWRlbiBlc3RhYmxlY2VyIGxvcyBwZXJtaXNvcyBkZSBlamVjdWNpw7NuIGVuIGAlLjI1MHMnIgorCisjOiBzcmMvaGVscC5jOjI3NgorbXNnaWQgInVuYWJsZSB0byBzZXRlbnYgZm9yIG1haW50YWluZXIgc2NyaXB0IgorbXNnc3RyICJubyBzZSBwdWVkZSBlZmVjdHVhciBgc2V0ZW52JyBwYXJhIGVsIHNjcmlwdCBkZWwgZGVzYXJyb2xsYWRvciIKKworIzogc3JjL2hlbHAuYzozMDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW5zdGFsbGVkICVzIHNjcmlwdCIKK21zZ3N0ciAiaW5zdGFsYWRvIGVsIHNjcmlwdCAlcyIKKworIzogc3JjL2hlbHAuYzozMTMgc3JjL2hlbHAuYzozODIgc3JjL2hlbHAuYzo0NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgJXMgYCUuMjUwcyciCittc2dzdHIgIm5vIHNlIHB1ZWRlIGVmZWN0dWFyIGBzdGF0JyBzb2JyZSAlcyBgJS4yNTBzJyIKKworIzogc3JjL2hlbHAuYzozNjggc3JjL2hlbHAuYzo0MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAibmV3ICVzIHNjcmlwdCIKK21zZ3N0ciAic2NyaXB0ICVzIG51ZXZvIgorCisjOiBzcmMvaGVscC5jOjQwMgorIywgYy1mb3JtYXQKK21zZ2lkICJvbGQgJXMgc2NyaXB0IgorbXNnc3RyICJzY3JpcHQgZGUgYCVzJyBhbnRpZ3VvIgorCisjOiBzcmMvaGVscC5jOjQxNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCAlcyAnJS4yNTBzJzogJXMiCittc2dzdHIgIm5vIHNlIHB1ZWRlIGVmZWN0dWFyIGBzdGF0JyBzb2JyZSAlcyBgJS4yNTBzJzogJXMiCisKKyM6IHNyYy9oZWxwLmM6NDI1CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2cgLSB0cnlpbmcgc2NyaXB0IGZyb20gdGhlIG5ldyBwYWNrYWdlIGluc3RlYWQgLi4uXG4iCittc2dzdHIgImRwa2cgLSBwcm9iYW5kbyBlbCBzY3JpcHQgZGVsIG51ZXZvIHBhcXVldGUgZW4gc3UgbHVnYXIuLi5cbiIKKworIzogc3JjL2hlbHAuYzo0MzkKK21zZ2lkICJ0aGVyZSBpcyBubyBzY3JpcHQgaW4gdGhlIG5ldyB2ZXJzaW9uIG9mIHRoZSBwYWNrYWdlIC0gZ2l2aW5nIHVwIgorbXNnc3RyICJubyBoYXkgbmluZ8O6biBzY3JpcHQgZW4gbGEgbnVldmEgdmVyc2nDs24gZGVsIHBhcXVldGUgLSBhYmFuZG9ubyIKKworIzogc3JjL2hlbHAuYzo0NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogLi4uIGl0IGxvb2tzIGxpa2UgdGhhdCB3ZW50IE9LLlxuIgorbXNnc3RyICJkcGtnOiAuLi4gcGFyZWNlIHF1ZSB0b2RvIGZ1ZSBiaWVuLlxuIgorCisjOiBzcmMvaGVscC5jOjYxNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2VjdXJlbHkgcmVtb3ZlICclLjI1NXMnIgorbXNnc3RyICJubyBzZSBwdWVkZSBib3JyYXIgZGUgZm9ybWEgc2VndXJhIGAlLjI1NXMnIgorCisjOiBzcmMvaGVscC5jOjYyMSBkcGtnLWRlYi9pbmZvLmM6NjUgZHBrZy1kZWIvaW5mby5jOjY3Cittc2dpZCAicm0gY29tbWFuZCBmb3IgY2xlYW51cCIKK21zZ3N0ciAiIgorCisjOiBzcmMvaW5mb2RiLmM6NTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoZWNrIGV4aXN0ZW5jZSBvZiBgJS4yNTBzJyIKK21zZ3N0ciAibm8gc2UgcHVlZGUgY29tcHJvYmFyIGxhIGV4aXN0ZW5jaWEgZGUgYCUuMjUwcyciCisKKyM6IHNyYy9pbmZvZGIuYzo3MAorbXNnaWQgImNhbm5vdCByZWFkIGluZm8gZGlyZWN0b3J5IgorbXNnc3RyICJubyBzZSBwdWVkZSBsZWVyIGVsIGRpcmVjdG9yaW8gYGluZm8nIgorCisjOiBzcmMvbWFpbi5jOjYwCisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiBgJXMnIHBhY2thZ2UgbWFuYWdlbWVudCBwcm9ncmFtIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIlByb2dyYW1hIGRlIGdlc3Rpw7NuIGRlIHBhcXVldGVzIGRlIERlYmlhbiBgJXMnIHZlcnNpw7NuICVzLlxuIgorCisjOiBzcmMvbWFpbi5jOjg1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1pfC0taW5zdGFsbCAgICAgICA8LmRlYiBmaWxlIG5hbWU+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXJlY3Rvcnk+IC4uLlxuIgorIiAgLS11bnBhY2sgICAgICAgICAgIDwuZGViIGZpbGUgbmFtZT4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRpcmVjdG9yeT4gLi4uXG4iCisiICAtQXwtLXJlY29yZC1hdmFpbCAgPC5kZWIgZmlsZSBuYW1lPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyZWN0b3J5PiAuLi5cbiIKKyIgIC0tY29uZmlndXJlICAgICAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtLXRyaWdnZXJzLW9ubHkgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLXJ8LS1yZW1vdmUgICAgICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC1QfC0tcHVyZ2UgICAgICAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtLWdldC1zZWxlY3Rpb25zIFs8cGF0dGVybj4gLi4uXSBHZXQgbGlzdCBvZiBzZWxlY3Rpb25zIHRvIHN0ZG91dC5cbiIKKyIgIC0tc2V0LXNlbGVjdGlvbnMgICAgICAgICAgICAgICAgIFNldCBwYWNrYWdlIHNlbGVjdGlvbnMgZnJvbSBzdGRpbi5cbiIKKyIgIC0tY2xlYXItc2VsZWN0aW9ucyAgICAgICAgICAgICAgIERlc2VsZWN0IGV2ZXJ5IG5vbi1lc3NlbnRpYWwgcGFja2FnZS5cbiIKKyIgIC0tdXBkYXRlLWF2YWlsIDxQYWNrYWdlcy1maWxlPiAgIFJlcGxhY2UgYXZhaWxhYmxlIHBhY2thZ2VzIGluZm8uXG4iCisiICAtLW1lcmdlLWF2YWlsIDxQYWNrYWdlcy1maWxlPiAgICBNZXJnZSB3aXRoIGluZm8gZnJvbSBmaWxlLlxuIgorIiAgLS1jbGVhci1hdmFpbCAgICAgICAgICAgICAgICAgICAgRXJhc2UgZXhpc3RpbmcgYXZhaWxhYmxlIGluZm8uXG4iCisiICAtLWZvcmdldC1vbGQtdW5hdmFpbCAgICAgICAgICAgICBGb3JnZXQgdW5pbnN0YWxsZWQgdW5hdmFpbGFibGUgcGtncy5cbiIKKyIgIC1zfC0tc3RhdHVzIDxwYWNrYWdlPiAuLi4gICAgICAgIERpc3BsYXkgcGFja2FnZSBzdGF0dXMgZGV0YWlscy5cbiIKKyIgIC1wfC0tcHJpbnQtYXZhaWwgPHBhY2thZ2U+IC4uLiAgIERpc3BsYXkgYXZhaWxhYmxlIHZlcnNpb24gZGV0YWlscy5cbiIKKyIgIC1MfC0tbGlzdGZpbGVzIDxwYWNrYWdlPiAuLi4gICAgIExpc3QgZmlsZXMgYG93bmVkJyBieSBwYWNrYWdlKHMpLlxuIgorIiAgLWx8LS1saXN0IFs8cGF0dGVybj4gLi4uXSAgICAgICAgTGlzdCBwYWNrYWdlcyBjb25jaXNlbHkuXG4iCisiICAtU3wtLXNlYXJjaCA8cGF0dGVybj4gLi4uICAgICAgICBGaW5kIHBhY2thZ2Uocykgb3duaW5nIGZpbGUocykuXG4iCisiICAtQ3wtLWF1ZGl0ICAgICAgICAgICAgICAgICAgICAgICBDaGVjayBmb3IgYnJva2VuIHBhY2thZ2UocykuXG4iCisiICAtLXByaW50LWFyY2hpdGVjdHVyZSAgICAgICAgICAgICBQcmludCBkcGtnIGFyY2hpdGVjdHVyZS5cbiIKKyIgIC0tY29tcGFyZS12ZXJzaW9ucyA8YT4gPG9wPiA8Yj4gIENvbXBhcmUgdmVyc2lvbiBudW1iZXJzIC0gc2VlIGJlbG93LlxuIgorIiAgLS1mb3JjZS1oZWxwICAgICAgICAgICAgICAgICAgICAgU2hvdyBoZWxwIG9uIGZvcmNpbmcuXG4iCisiICAtRGh8LS1kZWJ1Zz1oZWxwICAgICAgICAgICAgICAgICBTaG93IGhlbHAgb24gZGVidWdnaW5nLlxuIgorIlxuIgorbXNnc3RyICIiCisiw5NyZGVuZXM6XG4iCisiICAtaXwtLWluc3RhbGwgICAgICA8ZmljaGVybyAuZGViPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyPiAuLi5cbiIKKyIgIC0tdW5wYWNrICAgICAgICAgIDxmaWNoZXJvIC5kZWI+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXI+IC4uLlxuIgorIiAgLUF8LS1yZWNvcmQtYXZhaWwgPGZpY2hlcm8gLmRlYj4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRpcj4gLi4uXG4iCisiICAtLWNvbmZpZ3VyZSAgICAgICAgICAgPHBhcXVldGU+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLS10cmlnZ2Vycy1vbmx5ICAgICAgIDxwYXF1ZXRlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC1yfC0tcmVtb3ZlICAgICAgICAgICA8cGFxdWV0ZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtUHwtLXB1cmdlICAgICAgICAgICAgPHBhcXVldGU+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLS1nZXQtc2VsZWN0aW9ucyBbPHBhdHLDs24+IC4uLl0gICBHZW5lcmEgdW5hIGxpc3RhIGRlIHNlbGVjY2lvbmVzIGVuIGxhIFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNhbGlkYSBlc3TDoW5kYXIuXG4iCisiICAtLXNldC1zZWxlY3Rpb25zICAgICAgICAgICAgICAgICAgTGVlIGxhIGxpc3RhIGRlIHNlbGVjY2lvbmVzIGRlIGxhXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW50cmFkYSBlc3TDoW5kYXJcbiIKKyIgIC0tY2xlYXItc2VsZWN0aW9ucyAgICAgICAgICAgICAgICBEZS1zZWxlY2Npb25hIHRvZG9zIGxvcyBwYXF1ZXRlcyBubyAiCisiZXNlbmNpYWxlcy5cbiIKKyIgIC0tdXBkYXRlLWF2YWlsIDxhcmNoLVBhY2thZ2VzPiAgICBSZWVtcGxhemEgbGEgaW5mb3JtYWNpw7NuIGRlIHBhcXVldGVzXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcG9uaWJsZXMuXG4iCisiICAtLW1lcmdlLWF2YWlsIDxhcmNoLVBhY2thZ2VzPiAgICAgQcOxYWRlIGxhIGluZm9ybWFjacOzbiBkZWwgZmljaGVyby5cbiIKKyIgIC0tY2xlYXItYXZhaWwgICAgICAgICAgICAgICAgICAgICBCb3JyYSBsYSBpbmZvcm1hY2nDs24gYWN0dWFsIHNvYnJlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFxdWV0ZXMgZGlzcG9uaWJsZXMuXG4iCisiICAtLWZvcmdldC1vbGQtdW5hdmFpbCAgICAgICAgICAgICAgT2x2aWRhIGxhIGluZm9ybWFjacOzbiBzb2JyZSBwYXF1ZXRlc1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5vIGluc3RhbGFkb3MgeSBubyBkaXNwb25pYmxlcy5cbiIKKyIgIC1zfC0tc3RhdHVzIDxwYXF1ZXRlPiAuLi4gICAgICAgICBNdWVzdHJhIGRldGFsbGVzIHNvYnJlIGVsIGVzdGFkbyBkZWxcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXF1ZXRlLlxuIgorIiAgLXB8LS1wcmludC1hdmFpbCA8cGFxdWV0ZT4gLi4uICAgIE11ZXN0cmEgZGV0YWxsZXMgc29icmUgbGEgdmVyc2nDs25cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwb25pYmxlLlxuIgorIiAgLUx8LS1saXN0ZmlsZXMgPHBhcXVldGU+IC4uLiAgICAgIExpc3RhIGZpY2hlcm9zIGRlbChkZSBsb3MpIHBhcXVldGUocykuXG4iCisiICAtbHwtLWxpc3QgWzxwYXRyw7NuPiAuLi5dICAgICAgICAgIExpc3RhIHBhcXVldGVzIGJyZXZlbWVudGUuXG4iCisiICAtU3wtLXNlYXJjaCA8cGF0csOzbj4gLi4uICAgICAgICAgIEJ1c2NhIGVsKGxvcykgcGFxdWV0ZShzKSBxdWUgY29udGllbmVuXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXNvcyBmaWNoZXJvcy5cbiIKKyIgIC1DfC0tYXVkaXQgICAgICAgICAgICAgICAgICAgICAgICBDb21wcnVlYmEgc2kgaGF5IHBhcXVldGVzIHJvdG9zLlxuIgorIiAgLS1wcmludC1hcmNoaXRlY3R1cmUgICAgICAgICAgICAgIE11ZXN0cmEgbGEgYXJxdWl0ZWN0dXJhIGRlIGRlc3Rpbm8uXG4iCisiICAtLWNvbXBhcmUtdmVyc2lvbnMgPGE+IDxyZWw+IDxiPiAgQ29tcGFyYSBsb3MgbsO6bWVyb3MgZGUgdmVyc2nDs24sXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdsOpYXNlIG3DoXMgYWRlbGFudGUuXG4iCisiICAtLWZvcmNlLWhlbHAgICAgICAgICAgICAgICAgICAgICAgTXVlc3RyYSBsYSBheXVkYSBzb2JyZSBmb3J6YXIuXG4iCisiICAtRGh8LS1kZWJ1Zz1oZWxwICAgICAgICAgICAgICAgICAgTXVlc3RyYSBsYSBheXVkYSBzb2JyZSBkZXB1cmFyLlxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjExMyBzcmMvcXVlcnljbWQuYzo2MzEgc3JjL3RyaWdjbWQuYzo3NyBkcGtnLWRlYi9tYWluLmM6ODgKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjc3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIgIC1ofC0taGVscCAgICAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgICAgICAgICBTaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorbXNnc3RyICIiCisiICAtaHwtLWhlbHAgICAgICAgICAgICAgICAgICAgICAgICAgTXVlc3RyYSBlc3RlIG1lbnNhamUgZGUgYXl1ZGEuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgICAgICAgICAgTXVlc3RyYSBsYSB2ZXJzacOzbi5cbiIKKyJcbiIKKworIzogc3JjL21haW4uYzoxMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlVzZSBkcGtnIC1ifC0tYnVpbGR8LWN8LS1jb250ZW50c3wtZXwtLWNvbnRyb2x8LUl8LS1pbmZvfC1mfC0tZmllbGR8XG4iCisiIC14fC0tZXh0cmFjdHwtWHwtLXZleHRyYWN0fC0tZnN5cy10YXJmaWxlICBvbiBhcmNoaXZlcyAodHlwZSAlcyAtLWhlbHApLlxuIgorIlxuIgorbXNnc3RyICIiCisiVXRpbGljZSBkcGtnIC1ifC0tYnVpbGR8LWN8LS1jb250ZW50c3wtZXwtLWNvbnRyb2x8LUl8LS1pbmZvfC1mfC0tZmllbGR8XG4iCisiIC14fC0tZXh0cmFjdHwtWHwtLXZleHRyYWN0fC0tZnN5cy10YXJmaWxlICBzb2JyZSBhcmNoaXZvc1xuIgorIiAoZXNjcmliYSAlcyAtLWhlbHAuKVxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjEyMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiRm9yIGludGVybmFsIHVzZTogZHBrZyAtLWFzc2VydC1zdXBwb3J0LXByZWRlcGVuZHMgfCAtLXByZWRlcC1wYWNrYWdlIHxcbiIKKyIgIC0tYXNzZXJ0LXdvcmtpbmctZXBvY2ggfCAtLWFzc2VydC1sb25nLWZpbGVuYW1lcyB8IC0tYXNzZXJ0LW11bHRpLWNvbnJlcC5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIlBhcmEgdXNvIGludGVybm86IGRwa2cgLS1hc3NlcnQtc3VwcG9ydC1wcmVkZXBlbmRzIHwgLS1wcmVkZXAtcGFja2FnZSB8XG4iCisiICAtLWFzc2VydC13b3JraW5nLWVwb2NoIHwgLS1hc3NlcnQtbG9uZy1maWxlbmFtZXMgfCAtLWFzc2VydC1tdWx0aS1jb25yZXBcbiIKKyJcbiIKKworIzogc3JjL21haW4uYzoxMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyIgIC0tcm9vdD08ZGlyZWN0b3J5PiAgICAgICAgIEluc3RhbGwgb24gYSBkaWZmZXJlbnQgcm9vdCBkaXJlY3RvcnkuXG4iCisiICAtLWluc3RkaXI9PGRpcmVjdG9yeT4gICAgICBDaGFuZ2UgaW5zdGFsbGF0aW9uIGRpciB3aXRob3V0IGNoYW5naW5nIGFkbWluICIKKyJkaXIuXG4iCisiICAtLXBhdGgtZXhjbHVkZT08cGF0dGVybj4gICBEbyBub3QgaW5zdGFsbCBwYXRocyB3aGljaCBtYXRjaCBhIHNoZWxsICIKKyJwYXR0ZXJuLlxuIgorIiAgLS1wYXRoLWluY2x1ZGU9PHBhdHRlcm4+ICAgUmUtaW5jbHVkZSBhIHBhdHRlcm4gYWZ0ZXIgYSBwcmV2aW91cyAiCisiZXhjbHVzaW9uLlxuIgorIiAgLU98LS1zZWxlY3RlZC1vbmx5ICAgICAgICAgU2tpcCBwYWNrYWdlcyBub3Qgc2VsZWN0ZWQgZm9yIGluc3RhbGwvIgorInVwZ3JhZGUuXG4iCisiICAtRXwtLXNraXAtc2FtZS12ZXJzaW9uICAgICBTa2lwIHBhY2thZ2VzIHdob3NlIHNhbWUgdmVyc2lvbiBpcyBpbnN0YWxsZWQuXG4iCisiICAtR3wtLXJlZnVzZS1kb3duZ3JhZGUgICAgICBTa2lwIHBhY2thZ2VzIHdpdGggZWFybGllciB2ZXJzaW9uIHRoYW4gIgorImluc3RhbGxlZC5cbiIKKyIgIC1CfC0tYXV0by1kZWNvbmZpZ3VyZSAgICAgIEluc3RhbGwgZXZlbiBpZiBpdCB3b3VsZCBicmVhayBzb21lIG90aGVyICIKKyJwYWNrYWdlLlxuIgorIiAgLS1bbm8tXXRyaWdnZXJzICAgICAgICAgICAgU2tpcCBvciBmb3JjZSBjb25zZXF1ZW50aWFsIHRyaWdnZXIgIgorInByb2Nlc3NpbmcuXG4iCisiICAtLW5vLWRlYnNpZyAgICAgICAgICAgICAgICBEbyBub3QgdHJ5IHRvIHZlcmlmeSBwYWNrYWdlIHNpZ25hdHVyZXMuXG4iCisiICAtLW5vLWFjdHwtLWRyeS1ydW58LS1zaW11bGF0ZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSnVzdCBzYXkgd2hhdCB3ZSB3b3VsZCBkbyAtIGRvbid0IGRvIGl0LlxuIgorIiAgLUR8LS1kZWJ1Zz08b2N0YWw+ICAgICAgICAgRW5hYmxlIGRlYnVnZ2luZyAoc2VlIC1EaGVscCBvciAtLWRlYnVnPWhlbHApLlxuIgorIiAgLS1zdGF0dXMtZmQgPG4+ICAgICAgICAgICAgU2VuZCBzdGF0dXMgY2hhbmdlIHVwZGF0ZXMgdG8gZmlsZSBkZXNjcmlwdG9yICIKKyI8bj4uXG4iCisiICAtLWxvZz08ZmlsZW5hbWU+ICAgICAgICAgICBMb2cgc3RhdHVzIGNoYW5nZXMgYW5kIGFjdGlvbnMgdG8gPGZpbGVuYW1lPi5cbiIKKyIgIC0taWdub3JlLWRlcGVuZHM9PHBhY2thZ2U+LC4uLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSWdub3JlIGRlcGVuZGVuY2llcyBpbnZvbHZpbmcgPHBhY2thZ2U+LlxuIgorIiAgLS1mb3JjZS0uLi4gICAgICAgICAgICAgICAgT3ZlcnJpZGUgcHJvYmxlbXMgKHNlZSAtLWZvcmNlLWhlbHApLlxuIgorIiAgLS1uby1mb3JjZS0uLi58LS1yZWZ1c2UtLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9wIHdoZW4gcHJvYmxlbXMgZW5jb3VudGVyZWQuXG4iCisiICAtLWFib3J0LWFmdGVyIDxuPiAgICAgICAgICBBYm9ydCBhZnRlciBlbmNvdW50ZXJpbmcgPG4+IGVycm9ycy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIk9wY2lvbmVzOlxuIgorIiAgLS1hZG1pbmRpcj08ZGlyZWN0b3Jpbz4gICAgVXRpbGl6YSA8ZGlyZWN0b3Jpbz4gZW4gdmV6IGRlICVzLlxuIgorIiAgLS1yb290PTxkaXJlY3RvcmlvPiAgICAgICAgSW5zdGFsYSBlbiB1biBzaXN0ZW1hIGFsdGVybmF0aXZvIGNvbiAiCisiZGlyZWN0b3Jpb1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmHDrXogZW4gb3RybyBzaXRpby5cbiIKKyIgIC0taW5zdGRpcj08ZGlyZWN0b3Jpbz4gICAgIENhbWJpYSBsYSByYcOteiBkZSBsYSBpbnN0YWxhY2nDs24gc2luIGFsdGVyYXIgIgorImVsXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXJlY3RvcmlvIGRlIGFkbWluaXN0cmFjacOzbi5cbiIKKyIgIC0tcGF0aC1leGNsdWRlPTxwYXRyw7NuPiAgICBObyBpbnN0YWxhciBsYXMgcnV0YXMgcXVlIHNlIGFqdXN0YW4gYWwgcGF0csOzbiAiCisiZGUgc2hlbGwuXG4iCisiICAtLXBhdGgtaW5jbHVkZT08cGF0csOzbj4gICAgVm9sdmVyIGEgaW5jbHVpciB1biBwYXRyw7NuIGV4Y2x1aWRvICIKKyJhbnRlcmlvcm1lbnRlLlxuIgorIiAgLU98LS1zZWxlY3RlZC1vbmx5ICAgICAgICAgT21pdGUgbG9zIHBhcXVldGVzIG5vIHNlbGVjY2lvbmFkb3MgcGFyYVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5zdGFsYWNpw7NuIG8gYWN0dWFsaXphY2nDs24uXG4iCisiICAtRXwtLXNraXAtc2FtZS12ZXJzaW9uICAgICBPbWl0ZSBsb3MgcGFxdWV0ZXMgY3V5YSB2ZXJzacOzbiBlcyBsYSBtaXNtYSAiCisicXVlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYSBkZSBsb3MgaW5zdGFsYWRvcy5cbiIKKyIgIC1HfC0tcmVmdXNlLWRvd25ncmFkZSAgICAgIE9taXRlIGxvcyBwYXF1ZXRlcyBjb24gdmVyc2nDs24gYW50ZXJpb3IgcXVlIGxhICIKKyJkZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9zIGluc3RhbGFkb3MuXG4iCisiICAtQnwtLWF1dG8tZGVjb25maWd1cmUgICAgICBJbnN0YWxhIGHDum4gY3VhbmRvIHNlIHB1ZWRhIHJvbXBlciBhbGfDum4gb3Ryb1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFxdWV0ZSxcbiIKKyIgIC0tW25vLV10cmlnZ2VycyAgICAgICAgICAgIE9taXRlIG8gZnVlcnphIGxhIGVqZWN1Y2nDs24gZGUgZGlzcGFyYWRvcmVzICIKKyJyZWxhY2lvbmFkb3MuXG4iCisiICAtLW5vLWRlYnNpZyAgICAgICAgICAgICAgICBObyB2ZXJpZmljYSBsYXMgZmlybWFzIGRlIGxvcyBwYXF1ZXRlcy5cbiIKKyIgIC0tbm8tYWN0fC0tZHJ5LXJ1bnwtLXNpbXVsYXRlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJbmRpY2Egc29sYW1lbnRlIGxvIHF1ZSBoYXLDrWEsIHBlcm8gbm8gaGFjZSAiCisibmFkYS5cbiIKKyIgIC1EfC0tZGVidWc9PG9jdGFsPiAgICAgICAgIEhhYmlsaXRhIGxhIGRlcHVyYWNpw7NuLCB2w6lhc2UgLURoZWxwIMOzIC0tIgorImRlYnVnPWhlbHAuXG4iCisiICAtLXN0YXR1cy1mZCA8bj4gICAgICAgICAgICBFbnbDrWEgYWN0dWFsaXphY2lvbmVzIGRlIGNhbWJpb3MgZGUgZXN0YWRvICBhbFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVzY3JpcHRvciBkZSBmaWNoZXJvIDxuPi5cbiIKKyIgIC0tbG9nPTxmaWNoZXJvPiAgICAgICAgICAgIFJlZ2lzdHJhIGxvcyBjYW1iaW9zIGRlIGVzdGFkbyBlbiA8ZmljaGVybz4uLlxuIgorIiAgLS1pZ25vcmUtZGVwZW5kcz08cGFxdWV0ZT4sLi4uIFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTm8gdGllbmUgZW4gY3VlbnRhIGxhcyBkZXBlbmRlbmNpYXMgcXVlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbXBsaXF1ZW4gYSA8cGFxdWV0ZT4uXG4iCisiICAtLWZvcmNlLS4uLiAgICAgICAgICAgICAgICBEZXNjYXJ0YSBwcm9ibGVtYXMsIHbDqWFzZSAtLWZvcmNlLWhlbHAuXG4iCisiICAtLW5vLWZvcmNlLS4uLnwtLXJlZnVzZS0uLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNlIGRldGllbmUgY3VhbmRvIHNlIGVuY3VlbnRyYW4gcHJvYmxlbWFzLlxuIgorIiAgLS1hYm9ydC1hZnRlciA8bj4gICAgICAgICAgQ2FuY2VsYSBkZXNwdcOpcyBkZSA8bj4gZXJyb3Jlcy5cbiIKKyJcbiIKKworIyBpbnRyb2R1emMKKyM6IHNyYy9tYWluLmM6MTU0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21wYXJpc29uIG9wZXJhdG9ycyBmb3IgLS1jb21wYXJlLXZlcnNpb25zIGFyZTpcbiIKKyIgIGx0IGxlIGVxIG5lIGdlIGd0ICAgICAgICh0cmVhdCBlbXB0eSB2ZXJzaW9uIGFzIGVhcmxpZXIgdGhhbiBhbnkgIgorInZlcnNpb24pO1xuIgorIiAgbHQtbmwgbGUtbmwgZ2UtbmwgZ3QtbmwgKHRyZWF0IGVtcHR5IHZlcnNpb24gYXMgbGF0ZXIgdGhhbiBhbnkgdmVyc2lvbik7XG4iCisiICA8IDw8IDw9ID0gPj0gPj4gPiAgICAgICAob25seSBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIGNvbnRyb2wgZmlsZSAiCisic3ludGF4KS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIkxvcyBvcGVyYWRvcmVzIGRlIGNvbXBhcmFjacOzbiBwYXJhIC0tY29tcGFyZS12ZXJzaW9ucyBzb246XG4iCisiIGx0IGxlIGVxIG5lIGdlIGd0ICAgICAgICh0cmF0YSB1bmEgdmVyc2nDs24gaW5leGlzdGVudGUgY29tbyBhbnRlcmlvciBhXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgY3VhbHF1aWVyIHZlcnNpw7NuKTtcbiIKKyIgbHQtbmwgbGUtbmwgZ2UtbmwgZ3QtbmwgKHRyYXRhIHVuYSB2ZXJzacOzbiBpbmV4aXN0ZW50ZSBjb21vIHBvc3RlcmlvciBhXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgY3VhbHF1aWVyIHZlcnNpw7NuKTtcbiIKKyIgPCA8PCA8PSA9ID49ID4+ID4gICAgICAgKHPDs2xvIHBvciBjb21wYXRpYmlsaWRhZCBjb24gbGEgc2ludGF4aXMgZGUgbG9zXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgZmljaGVyb3MgZGUgY29udHJvbCkuXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTYxCisjLCBjLWZvcm1hdAorbXNnaWQgIlVzZSBgZHNlbGVjdCcgb3IgYGFwdGl0dWRlJyBmb3IgdXNlci1mcmllbmRseSBwYWNrYWdlIG1hbmFnZW1lbnQuXG4iCittc2dzdHIgIiIKKyJVdGlsaWNlIGBkc2VsZWN0JyBvICdhcHRpdHVkZScgcGFyYSB1bmEgZ2VzdGnDs24gZGUgcGFxdWV0ZXMgbcOhcyBhbWlnYWJsZS5cbiIKKworIzogc3JjL21haW4uYzoxNzAKK21zZ2lkICIiCisiVHlwZSBkcGtnIC0taGVscCBmb3IgaGVscCBhYm91dCBpbnN0YWxsaW5nIGFuZCBkZWluc3RhbGxpbmcgcGFja2FnZXMgWypdO1xuIgorIlVzZSBgZHNlbGVjdCcgb3IgYGFwdGl0dWRlJyBmb3IgdXNlci1mcmllbmRseSBwYWNrYWdlIG1hbmFnZW1lbnQ7XG4iCisiVHlwZSBkcGtnIC1EaGVscCBmb3IgYSBsaXN0IG9mIGRwa2cgZGVidWcgZmxhZyB2YWx1ZXM7XG4iCisiVHlwZSBkcGtnIC0tZm9yY2UtaGVscCBmb3IgYSBsaXN0IG9mIGZvcmNpbmcgb3B0aW9ucztcbiIKKyJUeXBlIGRwa2ctZGViIC0taGVscCBmb3IgaGVscCBhYm91dCBtYW5pcHVsYXRpbmcgKi5kZWIgZmlsZXM7XG4iCisiXG4iCisiT3B0aW9ucyBtYXJrZWQgWypdIHByb2R1Y2UgYSBsb3Qgb2Ygb3V0cHV0IC0gcGlwZSBpdCB0aHJvdWdoIGBsZXNzJyBvciAiCisiYG1vcmUnICEiCittc2dzdHIgIiIKKyJFc2NyaWJhIGRwa2cgLS1oZWxwIHBhcmEgYXl1ZGEgc29icmUgaW5zdGFsYXIgeSBkZXNpbnN0YWxhciBwYXF1ZXRlcyBbKl07XG4iCisiVXNlIGBkc2VsZWN0JyBvIGBhcHRpdHVkZScgcGFyYSB1bmEgZ2VzdGnDs24gbcOhcyBhbWlnYWJsZSBkZSBsb3MgcGFxdWV0ZXM7XG4iCisiRXNjcmliYSBkcGtnIC1EaGVscCBwYXJhIHVuYSBsaXN0YSBkZSBsb3MgdmFsb3JlcyBkZSBkZXB1cmFjacOzbiBkZSBkcGtnO1xuIgorIkVzY3JpYmEgZHBrZyAtLWZvcmNlLWhlbHAgcGFyYSB1bmEgbGlzdGEgZGUgbGFzIG9wY2lvbmVzIHBhcmEgZm9yemFyIGNvc2FzO1xuIgorIkVzY3JpYmEgZHBrZy1kZWIgLS1oZWxwIHBhcmEgb2J0ZW5lciBheXVkYSBzb2JyZSBtYW5pcHVsYWNpw7NuIGRlIGFyY2hpdm9zIC4iCisiZGViO1xuIgorIlxuIgorIkxhcyBvcGNpb25lcyBtYXJjYWRhcyBjb24gWypdIHByb2R1Y2VuIHVuYSBzYWxpZGEgZXh0ZW5zYSxcbiIKKyLCoWbDrWx0cmVsYSBjb24gYGxlc3MnIG8gY29uIGBtb3JlJyEiCisKKyM6IHNyYy9tYWluLmM6MjE5Cittc2dpZCAiU2V0IGFsbCBmb3JjZSBvcHRpb25zIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjIxCittc2dpZCAiUmVwbGFjZSBhIHBhY2thZ2Ugd2l0aCBhIGxvd2VyIHZlcnNpb24iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjMKK21zZ2lkICJDb25maWd1cmUgYW55IHBhY2thZ2Ugd2hpY2ggbWF5IGhlbHAgdGhpcyBvbmUiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjUKK21zZ2lkICJQcm9jZXNzIGluY2lkZW50YWwgcGFja2FnZXMgZXZlbiB3aGVuIG9uIGhvbGQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjcKK21zZ2lkICJUcnkgdG8gKGRlKWluc3RhbGwgdGhpbmdzIGV2ZW4gd2hlbiBub3Qgcm9vdCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIyOQorbXNnaWQgIlBBVEggaXMgbWlzc2luZyBpbXBvcnRhbnQgcHJvZ3JhbXMsIHByb2JsZW1zIGxpa2VseSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzMQorbXNnaWQgIkluc3RhbGwgYSBwYWNrYWdlIGV2ZW4gaWYgaXQgZmFpbHMgYXV0aGVudGljaXR5IGNoZWNrIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjMzCittc2dpZCAiUHJvY2VzcyBldmVuIHBhY2thZ2VzIHdpdGggd3JvbmcgdmVyc2lvbnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzUKK21zZ2lkICJPdmVyd3JpdGUgYSBmaWxlIGZyb20gb25lIHBhY2thZ2Ugd2l0aCBhbm90aGVyIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjM3Cittc2dpZCAiT3ZlcndyaXRlIGEgZGl2ZXJ0ZWQgZmlsZSB3aXRoIGFuIHVuZGl2ZXJ0ZWQgdmVyc2lvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzOQorbXNnaWQgIk92ZXJ3cml0ZSBvbmUgcGFja2FnZSdzIGRpcmVjdG9yeSB3aXRoIGFub3RoZXIncyBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjQxCittc2dpZCAiRG8gbm90IHBlcmZvcm0gc2FmZSBJL08gb3BlcmF0aW9ucyB3aGVuIHVucGFja2luZyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI0MworbXNnaWQgIkFsd2F5cyB1c2UgdGhlIG5ldyBjb25maWcgZmlsZXMsIGRvbid0IHByb21wdCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI0NQorbXNnaWQgIkFsd2F5cyB1c2UgdGhlIG9sZCBjb25maWcgZmlsZXMsIGRvbid0IHByb21wdCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI0OAorbXNnaWQgIiIKKyJVc2UgdGhlIGRlZmF1bHQgb3B0aW9uIGZvciBuZXcgY29uZmlnIGZpbGVzIGlmIG9uZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICBpcyBhdmFpbGFibGUsIGRvbid0IHByb21wdC4gSWYgbm8gZGVmYXVsdCBjYW4gYmUgIgorImZvdW5kLFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICB5b3Ugd2lsbCBiZSBwcm9tcHRlZCB1bmxlc3Mgb25lIG9mIHRoZSBjb25mb2xkIG9yXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmZuZXcgb3B0aW9ucyBpcyBhbHNvIGdpdmVuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjUzCittc2dpZCAiQWx3YXlzIGluc3RhbGwgbWlzc2luZyBjb25maWcgZmlsZXMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNTUKK21zZ2lkICJPZmZlciB0byByZXBsYWNlIGNvbmZpZyBmaWxlcyB3aXRoIG5vIG5ldyB2ZXJzaW9ucyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI1NworbXNnaWQgIlByb2Nlc3MgZXZlbiBwYWNrYWdlcyB3aXRoIHdyb25nIG9yIG5vIGFyY2hpdGVjdHVyZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI1OQorbXNnaWQgIkluc3RhbGwgZXZlbiBpZiBpdCB3b3VsZCBicmVhayBhbm90aGVyIHBhY2thZ2UiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNjEKK21zZ2lkICJBbGxvdyBpbnN0YWxsYXRpb24gb2YgY29uZmxpY3RpbmcgcGFja2FnZXMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNjMKKyMsIGZ1enp5CisjfCBtc2dpZCAiZGVwZW5kZW5jeSBwcm9ibGVtcyAtIG5vdCByZW1vdmluZyIKK21zZ2lkICJUdXJuIGFsbCBkZXBlbmRlbmN5IHByb2JsZW1zIGludG8gd2FybmluZ3MiCittc2dzdHIgInByb2JsZW1hcyBkZSBkZXBlbmRlbmNpYXMgLSBubyBzZSBkZXNpbnN0YWxhIgorCisjOiBzcmMvbWFpbi5jOjI2NQorIywgZnV6enkKKyN8IG1zZ2lkICJkZXBlbmRlbmN5IHByb2JsZW1zIC0gbm90IHJlbW92aW5nIgorbXNnaWQgIlR1cm4gZGVwZW5kZW5jeSB2ZXJzaW9uIHByb2JsZW1zIGludG8gd2FybmluZ3MiCittc2dzdHIgInByb2JsZW1hcyBkZSBkZXBlbmRlbmNpYXMgLSBubyBzZSBkZXNpbnN0YWxhIgorCisjOiBzcmMvbWFpbi5jOjI2NworbXNnaWQgIlJlbW92ZSBwYWNrYWdlcyB3aGljaCByZXF1aXJlIGluc3RhbGxhdGlvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI2OQorbXNnaWQgIlJlbW92ZSBhbiBlc3NlbnRpYWwgcGFja2FnZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4MQorbXNnaWQgIkdlbmVyYWxseSBoZWxwZnVsIHByb2dyZXNzIGluZm9ybWF0aW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjgyCisjLCBmdXp6eQorI3wgbXNnaWQgInVuYWJsZSB0byBzZXRlbnYgZm9yIG1haW50YWluZXIgc2NyaXB0IgorbXNnaWQgIkludm9jYXRpb24gYW5kIHN0YXR1cyBvZiBtYWludGFpbmVyIHNjcmlwdHMiCittc2dzdHIgIm5vIHNlIHB1ZWRlIGVmZWN0dWFyIGBzZXRlbnYnIHBhcmEgZWwgc2NyaXB0IGRlbCBkZXNhcnJvbGxhZG9yIgorCisjOiBzcmMvbWFpbi5jOjI4MworbXNnaWQgIk91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4NAorbXNnaWQgIkxvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg1CisjLCBmdXp6eQorI3wgbXNnaWQgInJlYWQgZXJyb3IgaW4gY29uZmlndXJhdGlvbiBmaWxlIGAlLjI1NXMnIgorbXNnaWQgIk91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGUiCittc2dzdHIgImVycm9yIGRlIGxlY3R1cmEgZW4gZWwgZmljaGVybyBkZSBjb25maWd1cmFjacOzbiBgJS4yNTVzJyIKKworIzogc3JjL21haW4uYzoyODYKK21zZ2lkICJMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGUiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODcKK21zZ2lkICJEZXBlbmRlbmNpZXMgYW5kIGNvbmZsaWN0cyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4OAorbXNnaWQgIkxvdHMgb2YgZGVwZW5kZW5jaWVzL2NvbmZsaWN0cyBvdXRwdXQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODkKK21zZ2lkICJUcmlnZ2VyIGFjdGl2YXRpb24gYW5kIHByb2Nlc3NpbmciCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyOTAKK21zZ2lkICJMb3RzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyOTEKK21zZ2lkICJTaWxseSBhbW91bnRzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyOTIKK21zZ2lkICJMb3RzIG9mIGRyaXZlbCBhYm91dCBlZyB0aGUgZHBrZy9pbmZvIGRpcmVjdG9yeSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MworbXNnaWQgIkluc2FuZSBhbW91bnRzIG9mIGRyaXZlbCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjMwNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXMgZGVidWdnaW5nIG9wdGlvbiwgLS1kZWJ1Zz08b2N0YWw+IG9yIC1EPG9jdGFsPjpcbiIKKyJcbiIKKyIgTnVtYmVyICBSZWYuIGluIHNvdXJjZSAgIERlc2NyaXB0aW9uXG4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzozMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIkRlYnVnZ2luZyBvcHRpb25zIGNhbiBiZSBtaXhlZCB1c2luZyBiaXR3aXNlLW9yLlxuIgorIk5vdGUgdGhhdCB0aGUgbWVhbmluZ3MgYW5kIHZhbHVlcyBhcmUgc3ViamVjdCB0byBjaGFuZ2UuXG4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzozMTkKK21zZ2lkICItLWRlYnVnIHJlcXVpcmVzIGFuIG9jdGFsIGFyZ3VtZW50IgorbXNnc3RyICItLWRlYnVnIG5lY2VzaXRhIHVuIG7Dum1lcm8gb2N0YWwgY29tbyBwYXLDoW1ldHJvIgorCisjOiBzcmMvbWFpbi5jOjM0OAorIywgYy1mb3JtYXQKK21zZ2lkICJudWxsIHBhY2thZ2UgbmFtZSBpbiAtLWlnbm9yZS1kZXBlbmRzIGNvbW1hLXNlcGFyYXRlZCBsaXN0IGAlLjI1MHMnIgorbXNnc3RyICIiCisibm9tYnJlIGRlIHBhcXVldGUgdmFjw61vIGVuIGxhIGxpc3RhIGRlIC0taWdub3JlLWRlcGVuZHMgc2VwYXJhZG9zIHBvciBjb21hIGAiCisiJS4yNTBzJyIKKworIzogc3JjL21haW4uYzozNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS1pZ25vcmUtZGVwZW5kcyByZXF1aXJlcyBhIGxlZ2FsIHBhY2thZ2UgbmFtZS4gYCUuMjUwcycgaXMgbm90OyAlcyIKK21zZ3N0ciAiIgorIi0taWdub3JlLWRlcGVuZHMgbmVjZXNpdGEgdW4gbm9tYnJlIGRlIHBhcXVldGUgbGVnYWwuXG4iCisiYCUuMjUwcycgbm8gbG8gZXM7ICVzIgorCisjOiBzcmMvbWFpbi5jOjM3MSBzcmMvbWFpbi5jOjM4MSBzcmMvbWFpbi5jOjY0OSBkcGtnLXNwbGl0L21haW4uYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBpbnRlZ2VyIGZvciAtLSVzOiBgJS4yNTBzJyIKK21zZ3N0ciAiZW50ZXJvIGludsOhbGlkbyBwYXJhIC0tJXM6IGAlLjI1MHMnIgorCisjOiBzcmMvbWFpbi5jOjQzOAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBleGVjdXRpbmcgaG9vayAnJXMnLCBleGl0IGNvZGUgJWQiCittc2dzdHIgImVycm9yIGFsIGVqZWN1dGFyIGxhIGxsYW1hZGEgJyVzJywgY8OzZGlnbyBkZSBlcnJvciAlZCIKKworIzogc3JjL21haW4uYzo0NjUKKyMsIGZ1enp5CisjfCBtc2dpZCAic3RhdHVzIgorbXNnaWQgInN0YXR1cyBsb2dnZXIiCittc2dzdHIgImVzdGFkbyIKKworIzogc3JjL21haW4uYzo0ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzIGZvcmNpbmcgb3B0aW9ucyAtIGNvbnRyb2wgYmVoYXZpb3VyIHdoZW4gcHJvYmxlbXMgZm91bmQ6XG4iCisiICB3YXJuIGJ1dCBjb250aW51ZTogIC0tZm9yY2UtPHRoaW5nPiw8dGhpbmc+LC4uLlxuIgorIiAgc3RvcCB3aXRoIGVycm9yOiAgICAtLXJlZnVzZS08dGhpbmc+LDx0aGluZz4sLi4uIHwgLS1uby1mb3JjZS08dGhpbmc+LC4uLlxuIgorIiBGb3JjaW5nIHRoaW5nczpcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjQ5MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiV0FSTklORyAtIHVzZSBvZiBvcHRpb25zIG1hcmtlZCBbIV0gY2FuIHNlcmlvdXNseSBkYW1hZ2UgeW91ciBpbnN0YWxsYXRpb24uXG4iCisiRm9yY2luZyBvcHRpb25zIG1hcmtlZCBbKl0gYXJlIGVuYWJsZWQgYnkgZGVmYXVsdC5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjUwNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGZvcmNlL3JlZnVzZSBvcHRpb24gYCUuKnMnIgorbXNnc3RyICJvcGNpw7NuIMKrZm9yY2UvcmVmdXNlwrsgZGVzY29ub2NpZGEgYCUuKnMnIgorCisjOiBzcmMvbWFpbi5jOjUxMworIywgYy1mb3JtYXQKK21zZ2lkICJvYnNvbGV0ZSBmb3JjZS9yZWZ1c2Ugb3B0aW9uICclcydcbiIKK21zZ3N0ciAib3BjacOzbiDCq2ZvcmNlL3JlZnVzZcK7IG9ic29sZXRhIGAlcydcbiIKKworIzogc3JjL21haW4uYzo2NDMKK21zZ2lkICItLWNvbW1hbmQtZmQgdGFrZXMgb25lIGFyZ3VtZW50LCBub3QgemVybyIKK21zZ3N0ciAiLS1jb21tYW5kLWZkIHRvbWEgdW4gYXJndW1lbnRvLCBubyBjZXJvIgorCisjOiBzcmMvbWFpbi5jOjY0NQorbXNnaWQgIi0tY29tbWFuZC1mZCBvbmx5IHRha2VzIG9uZSBhcmd1bWVudCIKK21zZ3N0ciAiLS1jb21tYW5kLWZkIHPDs2xvIHRvbWEgdW4gYXJndW1lbnRvIgorCisjOiBzcmMvbWFpbi5jOjY1MQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBvcGVuIGAlaScgZm9yIHN0cmVhbSIKK21zZ3N0ciAibm8gc2UgcHVkbyBhYnJpciBgJWknIHBhcmEgdW4gZmx1am8iCisKKyM6IHNyYy9tYWluLmM6Njc2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW9mIGJlZm9yZSBlbmQgb2YgbGluZSAlZCIKK21zZ3N0ciAiZW9mIGluZXNwZXJhZG8gYW50ZXMgZGVsIGZpbiBkZSBsYSBsw61uZWEgJWQiCisKKyM6IHNyYy9tYWluLmM6NzE5IHNyYy9tYWluLmM6NzQxIHNyYy9xdWVyeWNtZC5jOjY5MiBzcmMvc3RhdGNtZC5jOjM3OQorIzogZHBrZy1kZWIvbWFpbi5jOjIwMSBkcGtnLXNwbGl0L21haW4uYzoxNjMKK21zZ2lkICJuZWVkIGFuIGFjdGlvbiBvcHRpb24iCittc2dzdHIgInNlIG5lY2VzaXRhIHVuYSBvcGNpw7NuIGRlIGFjY2nDs24iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjExMworbXNnaWQgIiIKKyJ5b3UgbXVzdCBzcGVjaWZ5IHBhY2thZ2VzIGJ5IHRoZWlyIG93biBuYW1lcywgbm90IGJ5IHF1b3RpbmcgdGhlIG5hbWVzIG9mICIKKyJ0aGUgZmlsZXMgdGhleSBjb21lIGluIgorbXNnc3RyICIiCisiZGViZSBlc3BlY2lmaWNhciBsb3MgcGFxdWV0ZXMgcG9yIHN1cyBwcm9waW9zIG5vbWJyZXMsIG5vIGNpdGFuZG8gbG9zICIKKyJub21icmVzXG4iCisiZGUgbG9zIGZpY2hlcm9zIGVuIGxvcyBxdWUgdmllbmVuIgorCisjOiBzcmMvcGFja2FnZXMuYzoxMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyAtLXBlbmRpbmcgZG9lcyBub3QgdGFrZSBhbnkgbm9uLW9wdGlvbiBhcmd1bWVudHMiCittc2dzdHIgIi0tJXMgLS1wZW5kaW5nIG5vIHRvbWEgbmluZ8O6biBhcmd1bWVudG8gcXVlIG5vIHNlYSB1bmEgb3BjacOzbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MTM4IHNyYy9xdWVyeWNtZC5jOjM3NSBzcmMvcXVlcnljbWQuYzo1NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhdCBsZWFzdCBvbmUgcGFja2FnZSBuYW1lIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIG5lY2VzaXRhIGFsIG1lbm9zIHVuIG5vbWJyZSBkZSBwYXF1ZXRlIGNvbW8gYXJndW1lbnRvIgorCisjOiBzcmMvcGFja2FnZXMuYzoxNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSAlcyBsaXN0ZWQgbW9yZSB0aGFuIG9uY2UsIG9ubHkgcHJvY2Vzc2luZyBvbmNlLlxuIgorbXNnc3RyICJQYXF1ZXRlICVzIGxpc3RhZG8gbcOhcyBkZSB1bmEgdmV6LCBzw7NsbyBzZSBwcm9jZXNhIHVuYS5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MTgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJNb3JlIHRoYW4gb25lIGNvcHkgb2YgcGFja2FnZSAlcyBoYXMgYmVlbiB1bnBhY2tlZFxuIgorIiBpbiB0aGlzIHJ1biAhICBPbmx5IGNvbmZpZ3VyaW5nIGl0IG9uY2UuXG4iCittc2dzdHIgIiIKKyLCoVNlIGhhIGRlc2VtcGFxdWV0YWRvIG3DoXMgZGUgdW5hIGNvcGlhIGRlbCBwYXF1ZXRlICVzIVxuIgorIiBTZSBjb25maWd1cmFyw6Egc29sYW1lbnRlIHVuYSB2ZXouXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjIzMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisicGFja2FnZSAlLjI1MHMgaXMgbm90IHJlYWR5IGZvciB0cmlnZ2VyIHByb2Nlc3NpbmdcbiIKKyIgKGN1cnJlbnQgc3RhdHVzIGAlLjI1MHMnIHdpdGggbm8gcGVuZGluZyB0cmlnZ2VycykiCittc2dzdHIgIiIKKyJlbCBwYXF1ZXRlICUuMjUwcyBubyBlc3TDoSBsaXN0byBwYXJhIHByb2Nlc2FyIGRpc3BhcmFkb3Jlc1xuIgorIiAoZWwgZXN0YWRvIGFjdHVhbCBlcyBgJS4yNTBzJyBzaW4gZGlzcGFyYWRvcnNlIHBlbmRpZW50ZXMpIgorCisjOiBzcmMvcGFja2FnZXMuYzozMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIHdoaWNoIHByb3ZpZGVzICVzIGlzIHRvIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiAgRWwgcGFxdWV0ZSBgJXMnIHByb3ZlZSBgJXMnIHBlcm8gdmEgYSBzZXIgZGVzaW5zdGFsYWRvLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzozMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIGlzIHRvIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiAgRWwgcGFxdWV0ZSBgJXMnIHZhIGEgc2VyIGRlc2luc3RhbGFkby5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MzU0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgVmVyc2lvbiBvZiAlcyBvbiBzeXN0ZW0gaXMgJXMuXG4iCittc2dzdHIgIiAgTGEgdmVyc2nDs24gZGUgYCVzJyBlbiBlbCBzaXN0ZW1hIGVzICVzLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzozNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIHdoaWNoIHByb3ZpZGVzICVzIGF3YWl0cyB0cmlnZ2VyIHByb2Nlc3NpbmcuXG4iCittc2dzdHIgIiAgRWwgcGFxdWV0ZSBgJXMnIHF1ZSBwcm92ZWUgYCVzJyBhw7puIG5vIGVzdMOhIGNvbmZpZ3VyYWRvLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzozODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIGF3YWl0cyB0cmlnZ2VyIHByb2Nlc3NpbmcuXG4iCittc2dzdHIgIiAgRWwgcGFxdWV0ZSAlcyBlc3TDoSBlc3BlcmFuZG8gYWwgcHJvY2VzYWRvIGRlIGRpc3BhcmFkb3Jlcy5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDEwCisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IGFsc28gY29uZmlndXJpbmcgYCVzJyAocmVxdWlyZWQgYnkgYCVzJylcbiIKK21zZ3N0ciAiZHBrZzogdGFtYmnDqW4gY29uZmlndXJhbmRvIGAlcycgKHJlcXVlcmlkbyBwb3IgYCVzJylcbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDE4CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyB3aGljaCBwcm92aWRlcyAlcyBpcyBub3QgY29uZmlndXJlZCB5ZXQuXG4iCittc2dzdHIgIiAgRWwgcGFxdWV0ZSBgJXMnIHF1ZSBwcm92ZWUgYCVzJyBhw7puIG5vIGVzdMOhIGNvbmZpZ3VyYWRvLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIGlzIG5vdCBjb25maWd1cmVkIHlldC5cbiIKK21zZ3N0ciAiIEVsIHBhcXVldGUgYCVzJyBubyBlc3TDoSBjb25maWd1cmFkbyB0b2RhdsOtYS5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyB3aGljaCBwcm92aWRlcyAlcyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIgIEVsIHBhcXVldGUgYCVzJyBxdWUgcHJvdmVlICVzIG5vIGVzdMOhIGluc3RhbGFkby5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDM1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIgIEVsIHBhcXVldGUgYCVzJyBubyBlc3TDoSBpbnN0YWxhZG8uXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQ3MgorIywgYy1mb3JtYXQKK21zZ2lkICIgJXMgKCVzKSBicmVha3MgJXMgYW5kIGlzICVzLlxuIgorbXNnc3RyICIlcyAoJXMpIHJvbXBlICVzIHkgZXMgJXMuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQ3OAorIywgYy1mb3JtYXQKK21zZ2lkICIgICVzICglcykgcHJvdmlkZXMgJXMuXG4iCittc2dzdHIgIiVzICglcykgcHJvdmVlICVzLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBWZXJzaW9uIG9mICVzIHRvIGJlIGNvbmZpZ3VyZWQgaXMgJXMuXG4iCittc2dzdHIgIiAgTGEgdmVyc2nDs24gZGUgYCVzJyBxdWUgc2UgZGVzY29uZmlndXJhcsOhIGVzICVzLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo1OTYKK21zZ2lkICIgZGVwZW5kcyBvbiAiCittc2dzdHIgIiBkZXBlbmRlIGRlICIKKworIzogc3JjL3BhY2thZ2VzLmM6NjAyCittc2dpZCAiOyBob3dldmVyOlxuIgorbXNnc3RyICI7IHNpbiBlbWJhcmdvOlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjcxCisjLCBjLWZvcm1hdAorbXNnaWQgIi4uLi8lcyIKK21zZ3N0ciAiLi4uLyVzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjkxCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGVuc3VyaW5nIGAlLjI1MHMnIGRvZXNuJ3QgZXhpc3QiCittc2dzdHIgImVycm9yIGFsIGFzZWd1cmFyc2UgZGUgcXVlIGAlLjI1MHMnIG5vIGV4aXN0ZSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5OQorbXNnaWQgInNwbGl0IHBhY2thZ2UgcmVhc3NlbWJseSIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEwOAorbXNnaWQgInJlYXNzZW1ibGVkIHBhY2thZ2UgZmlsZSIKK21zZ3N0ciAicGFxdWV0ZSByZWVuc2FtYmxhZG8iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTMzCisjLCBjLWZvcm1hdAorbXNnaWQgIkF1dGhlbnRpY2F0aW5nICVzIC4uLlxuIgorbXNnc3RyICJBdXRlbnRpZmljYW5kbyAlcyAuLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxMzkKK21zZ2lkICJwYWNrYWdlIHNpZ25hdHVyZSB2ZXJpZmljYXRpb24iCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxNDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiVmVyaWZpY2F0aW9uIG9uIHBhY2thZ2UgJXMgZmFpbGVkISIKK21zZ3N0ciAiwqFGYWxsw7MgbGEgdmVyaWZpY2FjacOzbiBkZWwgcGFxdWV0ZSAlcyEiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTQ4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJWZXJpZmljYXRpb24gb24gcGFja2FnZSAlcyBmYWlsZWQsXG4iCisiYnV0IGluc3RhbGxpbmcgYW55d2F5IGFzIHlvdSByZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiIKKyJGYWxsw7MgbGEgdmVyaWZpY2FjacOzbiBkZWwgcGFxdWV0ZSAlcyxcbiIKKyJwZXJvIHNlIGluc3RhbGFyw6EgZGUgdG9kYXMgZm9ybWFzIHRhbCBjb21vIHNlIGhhIHNvbGljaXRhZG9cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFzc2VkXG4iCittc2dzdHIgImNvcnJlY3RvXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTY1IGRwa2ctZGViL2luZm8uYzo4MQorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdGVtcG9yYXJ5IGRpcmVjdG9yeSIKK21zZ3N0ciAiZmFsbG8gYWwgY3JlYXIgZGlyZWN0b3JpbyB0ZW1wb3JhbCIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlcyBoYXMgdG9vIG1hbnkgQ29uZmxpY3RzL1JlcGxhY2VzIHBhaXJzIgorbXNnc3RyICJlbCBwYXF1ZXRlICVzIHRpZW5lIGRlbWFzaWFkYXMgcGFyZWphcyBkZSBDb25mbGljdG9zL1JlZW1wbGF6b3MiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MjQzCisjLCBjLWZvcm1hdAorbXNnaWQgIm9sZCB2ZXJzaW9uIG9mIHBhY2thZ2UgaGFzIG92ZXJseS1sb25nIGluZm8gZmlsZSBuYW1lIHN0YXJ0aW5nIGAlLjI1MHMnIgorbXNnc3RyICIiCisibGEgdmVyc2nDs24gYW50aWd1YSBkZWwgcGFxdWV0ZSB0aWVuZSB1biBub21icmUgZGUgZmljaGVybyBkZSBpbmZvcm1hY2nDs25cbiIKKyJsYXJndcOtc2ltbyBxdWUgY29taWVuemEgcG9yIGAlLjI1MHMnIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjI4MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIG9ic29sZXRlIGluZm8gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibm8gc2UgcHVlZGUgYm9ycmFyIGVsIGZpY2hlcm8gZGUgaW5mb3JtYWNpw7NuIG9ic29sZXRvIGAlLjI1MHMnIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjI4NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCAoc3VwcG9zZWQpIG5ldyBpbmZvIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKyJubyBzZSBwdWVkZSBpbnN0YWxhciBlbCAoc3VwdWVzdGFtZW50ZSkgbnVldm8gZmljaGVybyBkZSBpbmZvcm1hY2nDs24gYCUuMjUwcyciCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6Mjk2Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gdGVtcCBjb250cm9sIGRpcmVjdG9yeSIKK21zZ3N0ciAibm8gc2UgcHVlZGUgYWJyaXIgZWwgZGlyZWN0b3JpbyBkZSBjb250cm9sIHRlbXBvcmFsIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMwNworIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGNvbnRhaW5zIG92ZXJseS1sb25nIGNvbnRyb2wgaW5mbyBmaWxlIG5hbWUgKHN0YXJ0aW5nIGAlLjUwcycpIgorbXNnc3RyICIiCisiZWwgcGFxdWV0ZSBjb250aWVuZSB1biBub21icmUgZGUgZmljaGVybyBkZSBpbmZvcm1hY2nDs24gbGFyZ3XDrXNpbW9cbiIKKyIoY29taWVuemEgY29uIGAlLjUwcycpIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMxNAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGNvbnRyb2wgaW5mbyBjb250YWluZWQgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICJsYSBpbmZvcm1hY2nDs24gZGUgY29udHJvbCBkZWwgcGFxdWV0ZSBjb250aWVuZSBlbCBkaXJlY3RvcmlvIGAlLjI1MHMnIgorCisjIEVzdGUgbWVuc2FqZSBlcyByZWFsbWVudGUgb2J0dXNvLiBTdWVydGUgcXVlIG5vIHNhbGUgbnVuY2EuIHN2CisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMxNgorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGNvbnRyb2wgaW5mbyBybWRpciBvZiBgJS4yNTBzJyBkaWRuJ3Qgc2F5IG5vdCBhIGRpciIKK21zZ3N0ciAiIgorImFsIGJvcnJhciBlbCBkaXJlY3RvcmlvIGAlLjI1MHMnIGVuIGxhIGluZm9ybWFjacOzbiBkZSBjb250cm9sIGRlbCBwYXF1ZXRlXG4iCisib2N1cnJpw7MgdW4gZXJyb3IgZGlzdGludG8gZGUgbm8gc2VyIHVuIGRpcmVjdG9yaW8iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzI2CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgJXMgY29udGFpbmVkIGxpc3QgYXMgaW5mbyBmaWxlIgorbXNnc3RyICJlbCBwYXF1ZXRlICVzIGNvbnRpZW5lIGBsaXN0JyBjb21vIGZpY2hlcm8gZGUgaW5mb3JtYWNpw7NuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMzMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgaW5mbyBmaWxlIGAlLjI1MHMnIGFzIGAlLjI1MHMnIgorbXNnc3RyICIiCisibm8gc2UgcHVlZGUgaW5zdGFsYXIgZWwgbnVldm8gZmljaGVybyBkZSBpbmZvcm1hY2nDs24gYCUuMjUwcycgY29tbyBgJS4yNTBzJyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozNDkgc3JjL3JlbW92ZS5jOjE5OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGVsZXRlIGNvbnRyb2wgaW5mbyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJubyBzZSBwdWVkZSBib3JyYXIgZWwgZmljaGVybyBkZSBpbmZvcm1hY2nDs24gZGUgY29udHJvbCBgJS4yNTBzJyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo0MTEKK21zZ2lkICJjYW5ub3QgYWNjZXNzIGFyY2hpdmUiCittc2dzdHIgIm5vIHNlIHB1ZWRlIGFjY2VkZXIgYWwgYXJjaGl2byIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo0MzMKKyMsIGZ1enp5CisjfCBtc2dpZCAiY29udHJvbCBpbmZvcm1hdGlvbiBsZW5ndGgiCittc2dpZCAicGFja2FnZSBjb250cm9sIGluZm9ybWF0aW9uIGV4dHJhY3Rpb24iCittc2dzdHIgImxvbmdpdHVkIGRlIGxhIGluZm9ybWFjacOzbiBkZSBjb250cm9sIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjQ2MAorIywgYy1mb3JtYXQKK21zZ2lkICJSZWNvcmRlZCBpbmZvIGFib3V0ICVzIGZyb20gJXMuXG4iCittc2dzdHIgIlJlZ2lzdHJhZGEgbGEgaW5mb3JtYWNpw7NuIHNvYnJlICVzIGEgcGFydGlyIGRlICVzLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjQ2OAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGFyY2hpdGVjdHVyZSAoJXMpIGRvZXMgbm90IG1hdGNoIHN5c3RlbSAoJXMpIgorbXNnc3RyICIiCisibGEgYXJxdWl0ZWN0dXJhIGRlbCBwYXF1ZXRlICglcykgbm8gY29ycmVzcG9uZGUgY29uIGxhIGRlbCBzaXN0ZW1hICglcykiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTIzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiByZWdhcmRpbmcgJXMgY29udGFpbmluZyAlcywgcHJlLWRlcGVuZGVuY3kgcHJvYmxlbTpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6IGFjZXJjYSBkZSAlcyBxdWUgY29udGllbmUgJXMsIHByb2JsZW1hIGRlIHByZWRlcGVuZGVuY2lhOlxuIgorIiVzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjUyNgorIywgYy1mb3JtYXQKK21zZ2lkICJwcmUtZGVwZW5kZW5jeSBwcm9ibGVtIC0gbm90IGluc3RhbGxpbmcgJS4yNTBzIgorbXNnc3RyICJwcm9ibGVtYSBkZSBwcmVkZXBlbmRlbmNpYSAtIG5vIHNlIGluc3RhbGEgJS4yNTBzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjUyNworbXNnaWQgImlnbm9yaW5nIHByZS1kZXBlbmRlbmN5IHByb2JsZW0hIgorbXNnc3RyICLCoWRlc2NhcnRhbmRvIHByb2JsZW1hIGRlIHByZWRlcGVuZGVuY2lhISIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHJlcGFyaW5nIHRvIHJlcGxhY2UgJXMgJXMgKHVzaW5nICVzKSAuLi5cbiIKK21zZ3N0ciAiUHJlcGFyYW5kbyBwYXJhIHJlZW1wbGF6YXIgJXMgJXMgKHVzYW5kbyAlcykgLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIlVucGFja2luZyAlcyAoZnJvbSAlcykgLi4uXG4iCittc2dzdHIgIkRlc2VtcGFxdWV0YW5kbyAlcyAoZGUgJXMpIC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjU4MAorIywgYy1mb3JtYXQKK21zZ2lkICJuYW1lIG9mIGNvbmZmaWxlIChzdGFydGluZyBgJS4yNTBzJykgaXMgdG9vIGxvbmcgKD4lZCBjaGFyYWN0ZXJzKSIKK21zZ3N0ciAiIgorImVsIG5vbWJyZSBkZWwgY29uZmZpbGUgKHF1ZSBjb21pZW56YSBwb3IgYCUuMjUwcycpXG4iCisiZXMgZGVtYXNpYWRvIGxhcmdvICg+JWQgY2FyYWN0ZXJlcykiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjMzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDcxCisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWQgZXJyb3IgaW4gJS4yNTBzIgorbXNnc3RyICJlcnJvciBkZSBsZWN0dXJhIGVuICUuMjUwcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyAlLjI1MHMiCittc2dzdHIgImVycm9yIGFsIGNlcnJhciAlLjI1MHMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjM3CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHRyeWluZyB0byBvcGVuICUuMjUwcyIKK21zZ3N0ciAiZXJyb3IgaW50ZW50YW5kbyBhYnJpciAlLjI1MHMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6Njc4CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlLWNvbmZpZ3VyaW5nICVzLCB0byBhbGxvdyByZW1vdmFsIG9mICVzIC4uLlxuIgorbXNnc3RyICJEZXNjb25maWd1cmFuZG8gJXMsIHBhcmEgcG9kZXIgZWxpbWluYXIgJXMgLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjgxCisjLCBjLWZvcm1hdAorbXNnaWQgIkRlLWNvbmZpZ3VyaW5nICVzIC4uLlxuIgorbXNnc3RyICJEZXNjb25maWd1cmFuZG8gJXMgLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NzU1CisjLCBjLWZvcm1hdAorbXNnaWQgIlVucGFja2luZyByZXBsYWNlbWVudCAlLjI1MHMgLi4uXG4iCittc2dzdHIgIkRlc2VtcGFxdWV0YW5kbyBlbCByZWVtcGxhem8gZGUgJS4yNTBzIC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjg0MAorIywgZnV6enkKKyN8IG1zZ2lkICJkcGtnLWRlYiBmaWVsZCBleHRyYWN0aW9uIgorbXNnaWQgInBhY2thZ2UgZmlsZXN5c3RlbSBhcmNoaXZlIGV4dHJhY3Rpb24iCittc2dzdHIgImV4dHJhY2Npw7NuIGRlIGNhbXBvcyBkcGtnLWRlYiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NTQKK21zZ2lkICJlcnJvciByZWFkaW5nIGRwa2ctZGViIHRhciBvdXRwdXQiCittc2dzdHIgImVycm9yIGFsIGxlZXIgbGEgc2FsaWRhIGRlIHRhciBkZSBkcGtnLWRlYiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NTYKK21zZ2lkICJjb3JydXB0ZWQgZmlsZXN5c3RlbSB0YXJmaWxlIC0gY29ycnVwdGVkIHBhY2thZ2UgYXJjaGl2ZSIKK21zZ3N0ciAic2lzdGVtYSBkZSBmaWNoZXJvcyBkZWwgYXJjaGl2byB0YXIgZGHDsWFkbyAtIGFyY2hpdm8gZGUgcGFxdWV0ZSBkYcOxYWRvIgorCisjIFBsZWFzZSwgcXVlIGFsZ3VpZW4gbWUgZGlnYSBxdcOpIGVzIGVzbyBkZSB6YXAuIHN2CisjOiBzcmMvcHJvY2Vzc2FyYy5jOjg1OQorbXNnaWQgImRwa2ctZGViOiB6YXAgcG9zc2libGUgdHJhaWxpbmcgemVyb3MiCittc2dzdHIgImRwa2ctZGViOiB6YXBlYSBwb3NpYmxlcyBjZXJvcyBmaW5hbGVzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjkxOQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgc3RhdCBvbGQgZmlsZSAnJS4yNTBzJyBzbyBub3QgZGVsZXRpbmcgaXQ6ICVzIgorbXNnc3RyICIiCisibm8gc2UgcHVlZGUgZWZlY3R1YXIgYHN0YXQnIHNvYnJlIGVsIGZpY2hlcm8gYW50aWd1byBgJS4yNTBzJyBwb3IgbG8gcXVlIG5vICIKKyJzZSBib3JyYXLDoTogJXMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTI1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkZWxldGUgb2xkIGRpcmVjdG9yeSAnJS4yNTBzJzogJXMiCittc2dzdHIgIm5vIHNlIHB1ZWRlIGJvcnJhciBlbCBkaXJlY3RvcmlvIGFudGlndW8gYCUuMjUwcyc6ICVzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjkyOAorIywgYy1mb3JtYXQKK21zZ2lkICJvbGQgY29uZmZpbGUgJyUuMjUwcycgd2FzIGFuIGVtcHR5IGRpcmVjdG9yeSAoYW5kIGhhcyBub3cgYmVlbiBkZWxldGVkKSIKK21zZ3N0ciAiIgorImVsIGNvbmZmaWxlIGFudGlndW8gYCUuMjUwcycgZXJhIHVuIGRpcmVjdG9yaW8gdmFjw61vICh5IGFob3JhIHNlIGhhICIKKyJlbGltaW5hZG8pIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjk3NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBvdGhlciBuZXcgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibm8gc2UgcHVlZGUgZWZlY3R1YXIgYHN0YXQnIG90cm8gZmljaGVybyBudWV2byBgJS4yNTBzJyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm9sZCBmaWxlICclLjI1MHMnIGlzIHRoZSBzYW1lIGFzIHNldmVyYWwgbmV3IGZpbGVzISAoYm90aCAnJS4yNTBzJyBhbmQgIgorIiclLjI1MHMnKSIKK21zZ3N0ciAiIgorIsKhZWwgZmljaGVybyBhbnRpZ3VvIGAlLjI1MHMnIGVzIGVsIG1pc21vIHF1ZSBhbGd1bm9zIGRlIGxvcyBudWV2b3MgZmljaGVyb3MhICIKKyIodGFudG8gYCUuMjUwcycgY29tbyBgJS4yNTBzJykiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTAyNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2VjdXJlbHkgcmVtb3ZlIG9sZCBmaWxlICclLjI1MHMnOiAlcyIKK21zZ3N0ciAibm8gc2UgcHVlZGUgYm9ycmFyIGRlIGZvcm1hIHNlZ3VyYSBlbCBmaWNoZXJvIGFudGlndW8gYCUuMjUwcyc6ICVzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEyMDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiKE5vdGluZyBkaXNhcHBlYXJhbmNlIG9mICVzLCB3aGljaCBoYXMgYmVlbiBjb21wbGV0ZWx5IHJlcGxhY2VkLilcbiIKK21zZ3N0ciAiKE5vdGUgbGEgZGVzYXBhcmljacOzbiBkZSAlcywgcXVlIGhhIHNpZG8gY29tcGxldGFtZW50ZSByZWVtcGxhemFkby4pXG4iCisKKyMuIFRSQU5TTEFUT1JTOiBUaGlzIGlzIHRoZSBoZWFkZXIgdGhhdCBhcHBlYXJzIG9uICdkcGtnLXF1ZXJ5IC1sJy4gVGhlCisjLiAqIHN0cmluZyBzaG91bGQgcmVtYWluIHVuZGVyIDgwIGNoYXJhY3RlcnMuIFRoZSB1cHBlcmNhc2UgbGV0dGVycyBpbgorIy4gKiB0aGUgc3RhdGUgdmFsdWVzIGRlbm90ZSB0aGUgYWJicmV2aWF0ZWQgbGV0dGVyIHRoYXQgd2lsbCBhcHBlYXIgb24KKyMuICogdGhlIGZpcnN0IHRocmVlIGNvbHVtbnMsIHdoaWNoIHNob3VsZCBpZGVhbGx5IG1hdGNoIHRoZSBFbmdsaXNoIG9uZQorIy4gKiAoZS5nLiBSZW1vdmUg4oaSIHN1cFJpbWVpeCksIHNlZSBkcGtnLXF1ZXJ5KDEpIGZvciBmdXJ0aGVyIGRldGFpbHMuIFRoZQorIy4gKiB0cmFuc2xhdGVkIG1lc3NhZ2UgY2FuIHVzZSBhZGRpdGlvbmFsIGxpbmVzIGlmIG5lZWRlZC4KKyM6IHNyYy9xdWVyeWNtZC5jOjE0OQorbXNnaWQgIiIKKyJEZXNpcmVkPVVua25vd24vSW5zdGFsbC9SZW1vdmUvUHVyZ2UvSG9sZFxuIgorInwgU3RhdHVzPU5vdC9JbnN0L0NvbmYtZmlsZXMvVW5wYWNrZWQvaGFsRi1jb25mL0hhbGYtaW5zdC90cmlnLWFXYWl0L1RyaWctIgorInBlbmRcbiIKKyJ8LyBFcnI/PShub25lKS9SZWluc3QtcmVxdWlyZWQgKFN0YXR1cyxFcnI6IHVwcGVyY2FzZT1iYWQpXG4iCittc2dzdHIgIiIKKyJEZXNlYWRvPURlc2Nvbm9jaWRvL0luc3RhbGFyL0VsaW1pbmFyL1B1cmdhci9SZXRlbmVyXG4iCisifCBFc3RhZG89Tm8vSW5zdGFsYWRvL0NvbmZpZy1maWxlcy9EZXNlbXBhcXVldGFkby9NZWRpby1jb25mL01lZGlvLWluc3QvIgorImVzcGVyYS1kaXNwYXJvL3BlbmRpZW50ZS1kaXNwYXJvXG4iCisifC8gRXJyPz0obmluZ3VubykvUmVxdWllcmUtcmVpbnN0IChFc3RhZG8sRXJyOiBtYXnDunNjLj1tYWxvKVxuIgorCisjOiBzcmMvcXVlcnljbWQuYzoxNTMKK21zZ2lkICJOYW1lIgorbXNnc3RyICJOb21icmUiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjE1MworbXNnaWQgIlZlcnNpb24iCittc2dzdHIgIlZlcnNpw7NuIgorCisjOiBzcmMvcXVlcnljbWQuYzoxNTQKK21zZ2lkICJEZXNjcmlwdGlvbiIKK21zZ3N0ciAiRGVzY3JpcGNpw7NuIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNDYgc3JjL3F1ZXJ5Y21kLmM6NTExIHNyYy9zZWxlY3QuYzo3NQorIywgYy1mb3JtYXQKK21zZ2lkICJObyBwYWNrYWdlcyBmb3VuZCBtYXRjaGluZyAlcy5cbiIKK21zZ3N0ciAiTm8gc2UgaGEgZW5jb250cmFkbyBuaW5nw7puIHBhcXVldGUgcXVlIGNvcnJlc3BvbmRhIGNvbiAlcy5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MjczCisjLCBjLWZvcm1hdAorbXNnaWQgImRpdmVyc2lvbiBieSAlcyBmcm9tOiAlc1xuIgorbXNnc3RyICJkZXN2aWFkbyBwb3IgJXMgZGU6ICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI3NQorIywgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnNpb24gYnkgJXMgdG86ICVzXG4iCittc2dzdHIgImRlc3ZpYWRvIHBvciAlcyBhOiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9jYWwgZGl2ZXJzaW9uIGZyb206ICVzXG4iCittc2dzdHIgImRlc3ZpYWNpw7NuIGxvY2FsIGRlOiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9jYWwgZGl2ZXJzaW9uIHRvOiAlc1xuIgorbXNnc3RyICJkZXN2aWFjacOzbiBsb2NhbCBhOiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzozMDkKK21zZ2lkICItLXNlYXJjaCBuZWVkcyBhdCBsZWFzdCBvbmUgZmlsZSBuYW1lIHBhdHRlcm4gYXJndW1lbnQiCittc2dzdHIgIiIKKyItLXNlYXJjaCBuZWNlc2l0YSBhbCBtZW5vcyB1biBwYXRyw7NuIGRlIG5vbWJyZSBkZSBmaWNoZXJvIGNvbW8gYXJndW1lbnRvIgorCisjOiBzcmMvcXVlcnljbWQuYzozNTAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIk5vIHBhY2thZ2VzIGZvdW5kIG1hdGNoaW5nICVzLlxuIgorbXNnaWQgIiVzOiBubyBwYXRoIGZvdW5kIG1hdGNoaW5nIHBhdHRlcm4gJXMuXG4iCittc2dzdHIgIk5vIHNlIGhhIGVuY29udHJhZG8gbmluZ8O6biBwYXF1ZXRlIHF1ZSBjb3JyZXNwb25kYSBjb24gJXMuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjM5MworIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlIGAlcycgaXMgbm90IGluc3RhbGxlZCBhbmQgbm8gaW5mbyBpcyBhdmFpbGFibGUuXG4iCittc2dzdHIgIiIKKyJFbCBwYXF1ZXRlIGAlcycgbm8gZXN0w6EgaW5zdGFsYWRvIHkgbm8gaGF5IG5pbmd1bmEgaW5mb3JtYWNpw7NuIGRpc3BvbmlibGUuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQwMQorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlIGAlcycgaXMgbm90IGF2YWlsYWJsZS5cbiIKK21zZ3N0ciAiRWwgcGFxdWV0ZSBgJXMnIG5vIGVzdMOhIGRpc3BvbmlibGUuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQxMCBzcmMvcXVlcnljbWQuYzo1ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSBgJXMnIGlzIG5vdCBpbnN0YWxsZWQuXG4iCittc2dzdHIgIkVsIHBhcXVldGUgYCVzJyBubyBlc3TDoSBpbnN0YWxhZG8uXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQxOAorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlIGAlcycgZG9lcyBub3QgY29udGFpbiBhbnkgZmlsZXMgKCEpXG4iCittc2dzdHIgIkVsIHBhcXVldGUgYCVzJyBubyBjb250aWVuZSBuaW5nw7puIGZpY2hlcm8gKMKhISlcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDI1CisjLCBjLWZvcm1hdAorbXNnaWQgImxvY2FsbHkgZGl2ZXJ0ZWQgdG86ICVzXG4iCittc2dzdHIgImRlc3ZpYWRvIGxvY2FsbWVudGUgYTogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDI4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgZGl2ZXJ0cyBvdGhlcnMgdG86ICVzXG4iCittc2dzdHIgImVsIHBhcXVldGUgZGVzdsOtYSBvdHJvcyBhOiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJ0ZWQgYnkgJXMgdG86ICVzXG4iCittc2dzdHIgImRlc3ZpYWRvIHBvciAlcyBhOiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0NTIKK21zZ2lkICIiCisiVXNlIGRwa2cgLS1pbmZvICg9IGRwa2ctZGViIC0taW5mbykgdG8gZXhhbWluZSBhcmNoaXZlIGZpbGVzLFxuIgorImFuZCBkcGtnIC0tY29udGVudHMgKD0gZHBrZy1kZWIgLS1jb250ZW50cykgdG8gbGlzdCB0aGVpciBjb250ZW50cy5cbiIKK21zZ3N0ciAiIgorIlV0aWxpY2UgZHBrZyAtLWluZm8gKD0gZHBrZy1kZWIgLS1pbmZvKSBwYXJhIGV4YW1pbmFyIGFyY2hpdm9zLFxuIgorInkgZHBrZyAtLWNvbnRlbnRzICg9IGRwa2ctZGViIC0tY29udGVudHMpIHBhcmEgbGlzdGFyIHN1IGNvbnRlbmlkby5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NTcwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgYXQgbW9zdCB0d28gYXJndW1lbnRzIgorbXNnc3RyICItLSVzIGxsZXZhIGEgbG8gc3VtbyBkb3MgcGFyw6FtZXRyb3MiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjU3OAorIywgYy1mb3JtYXQKK21zZ2lkICJjb250cm9sIGZpbGUgY29udGFpbnMgJWMiCittc2dzdHIgImVsIGFyY2hpdm8gZGUgY29udHJvbCBjb250aWVuZSAlYyIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjAwCisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiAlcyBwYWNrYWdlIG1hbmFnZW1lbnQgcHJvZ3JhbSBxdWVyeSB0b29sIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIiIKKyJIZXJyYW1pZW50YSBkZSBjb25zdWx0YSBkZWwgc2lzdGVtYSBkZSBnZXN0acOzbiBwYXF1ZXRlcyBkZSBEZWJpYW4gYCVzJyAiCisidmVyc2nDs24gJXMuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjYxOQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIkNvbW1hbmRzOlxuIgorI3wgIiAgLXN8LS1zdGF0dXMgPHBhY2thZ2U+IC4uLiAgICAgICAgRGlzcGxheSBwYWNrYWdlIHN0YXR1cyBkZXRhaWxzLlxuIgorI3wgIiAgLXB8LS1wcmludC1hdmFpbCA8cGFja2FnZT4gLi4uICAgRGlzcGxheSBhdmFpbGFibGUgdmVyc2lvbiBkZXRhaWxzLlxuIgorI3wgIiAgLUx8LS1saXN0ZmlsZXMgPHBhY2thZ2U+IC4uLiAgICAgTGlzdCBmaWxlcyBgb3duZWQnIGJ5IHBhY2thZ2UocykuXG4iCisjfCAiICAtbHwtLWxpc3QgWzxwYXR0ZXJuPiAuLi5dICAgICAgICBMaXN0IHBhY2thZ2VzIGNvbmNpc2VseS5cbiIKKyN8ICIgIC1XfC0tc2hvdyA8cGF0dGVybj4gLi4uICAgICAgICAgIFNob3cgaW5mb3JtYXRpb24gb24gcGFja2FnZShzKS5cbiIKKyN8ICIgIC1TfC0tc2VhcmNoIDxwYXR0ZXJuPiAuLi4gICAgICAgIEZpbmQgcGFja2FnZShzKSBvd25pbmcgZmlsZShzKS5cbiIKKyN8ICIgIC1jfC0tY29udHJvbC1wYXRoIDxwYWNrYWdlPiBbPGZpbGU+XVxuIgorI3wgIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHJpbnQgcGF0aCBmb3IgcGFja2FnZSBjb250cm9sIGZpbGUuXG4iCisjfCAiXG4iCittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLXN8LS1zdGF0dXMgPHBhY2thZ2U+IC4uLiAgICAgICAgRGlzcGxheSBwYWNrYWdlIHN0YXR1cyBkZXRhaWxzLlxuIgorIiAgLXB8LS1wcmludC1hdmFpbCA8cGFja2FnZT4gLi4uICAgRGlzcGxheSBhdmFpbGFibGUgdmVyc2lvbiBkZXRhaWxzLlxuIgorIiAgLUx8LS1saXN0ZmlsZXMgPHBhY2thZ2U+IC4uLiAgICAgTGlzdCBmaWxlcyBgb3duZWQnIGJ5IHBhY2thZ2UocykuXG4iCisiICAtbHwtLWxpc3QgWzxwYXR0ZXJuPiAuLi5dICAgICAgICBMaXN0IHBhY2thZ2VzIGNvbmNpc2VseS5cbiIKKyIgIC1XfC0tc2hvdyBbPHBhdHRlcm4+IC4uLl0gICAgICAgIFNob3cgaW5mb3JtYXRpb24gb24gcGFja2FnZShzKS5cbiIKKyIgIC1TfC0tc2VhcmNoIDxwYXR0ZXJuPiAuLi4gICAgICAgIEZpbmQgcGFja2FnZShzKSBvd25pbmcgZmlsZShzKS5cbiIKKyIgIC1jfC0tY29udHJvbC1wYXRoIDxwYWNrYWdlPiBbPGZpbGU+XVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHJpbnQgcGF0aCBmb3IgcGFja2FnZSBjb250cm9sIGZpbGUuXG4iCisiXG4iCittc2dzdHIgIiIKKyLDk3JkZW5lczpcbiIKKyIgIC1zfC0tc3RhdHVzIDxwYXF1ZXRlPiAuLi4gICAgICAgICAgICBNdWVzdHJhIGxvcyBkZXRhbGxlcyBkZWwgZXN0YWRvIGRlbCAiCisicGFxdWV0ZS5cbiIKKyIgIC1wfC0tcHJpbnQtYXZhaWwgPHBhcXVldGU+IC4uLiAgICAgICBNdWVzdHJhIGRldGFsbGVzIHNvYnJlIGxhIHZlcnNpw7NuICIKKyJkaXNwb25pYmxlLlxuIgorIiAgLUx8LS1saXN0ZmlsZXMgPHBhcXVldGU+IC4uLiAgICAgICAgIE11ZXN0cmEgbG9zIGZpY2hlcm9zIHF1ZSBgcGVydGVuZWNlbicgIgorImFsIHBhcXVldGUuXG4iCisiICAtbHwtLWxpc3QgWzxwYXRyw7NuPiAuLi5dICAgICAgICAgICAgIExpc3RhIGxvcyBwYXF1ZXRlcyBkZSBmb3JtYSBjb25jaXNhLlxuIgorIiAgLVd8LS1zaG93IDxwYXRyw7NuPiAuLi4gICAgICAgICAgICAgICBNdWVzdHJhIGluZm9ybWFjacOzbiBzb2JyZSBlbChsb3MpICIKKyJwYXF1ZXRlKHMpLlxuIgorIiAgLVN8LS1zZWFyY2ggPHBhdHLDs24+IC4uLiAgICAgICAgICAgICBCdXNjYSBlbChsb3MpIHBhcXVldGUocykgYSBsb3MgcXVlICIKKyJwZXJ0ZW5lY2VcbiIKKyIgIC1jfC0tY29udHJvbC1wYXRoIDxwYXF1ZXRlPiBbPGZpY2hlcm8+XVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJbXByaW1lIGxhIHJ1dGEgcGFyYSBlbCBhcmNoaXZvIGRlICIKKyJjb250cm9sIGRlbCBwYXF1ZXRlLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo2MzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgICAgICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyIgIC1mfC0tc2hvd2Zvcm1hdD08Zm9ybWF0PiAgICAgICAgIFVzZSBhbHRlcm5hdGl2ZSBmb3JtYXQgZm9yIC0tc2hvdy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIk9wY2lvbmVzOlxuIgorIiAgLS1hZG1pbmRpcj08ZGlyZWN0b3Jpbz4gICAgIFV0aWxpemEgPGRpcmVjdG9yaW8+IGVuIGx1Z2FyIGRlICVzLlxuIgorIiAgLWZ8LS1zaG93Zm9ybWF0PTxmb3JtYXRvPiAgIFV0aWxpemEgdW4gZm9ybWF0byBhbHRlcm5hdGl2byBwYXJhIC0tc2hvdy5cbiIKKyJcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjQyIGRwa2ctZGViL21haW4uYzoxMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkZvcm1hdCBzeW50YXg6XG4iCisiICBBIGZvcm1hdCBpcyBhIHN0cmluZyB0aGF0IHdpbGwgYmUgb3V0cHV0IGZvciBlYWNoIHBhY2thZ2UuIFRoZSBmb3JtYXRcbiIKKyIgIGNhbiBpbmNsdWRlIHRoZSBzdGFuZGFyZCBlc2NhcGUgc2VxdWVuY2VzIFxcbiAobmV3bGluZSksIFxcciAoY2FycmlhZ2VcbiIKKyIgIHJldHVybikgb3IgXFxcXCAocGxhaW4gYmFja3NsYXNoKS4gUGFja2FnZSBpbmZvcm1hdGlvbiBjYW4gYmUgaW5jbHVkZWRcbiIKKyIgIGJ5IGluc2VydGluZyB2YXJpYWJsZSByZWZlcmVuY2VzIHRvIHBhY2thZ2UgZmllbGRzIHVzaW5nIHRoZSAke3Zhcls7IgorIndpZHRoXX1cbiIKKyIgIHN5bnRheC4gRmllbGRzIHdpbGwgYmUgcmlnaHQtYWxpZ25lZCB1bmxlc3MgdGhlIHdpZHRoIGlzIG5lZ2F0aXZlIGluICIKKyJ3aGljaFxuIgorIiAgY2FzZSBsZWZ0IGFsaWdubWVudCB3aWxsIGJlIHVzZWQuXG4iCittc2dzdHIgIiIKKyJTaW50YXhpcyBkZWwgZm9ybWF0b1xuIgorIiAgVW4gZm9ybWF0byBlcyB1bmEgY2FkZW5hIHF1ZSBzZSBtb3N0cmFyw6EgcGFyYSBjYWRhIHBhcXVldGUuIEVsIGZvcm1hdG9cbiIKKyIgIHB1ZWRlIGluY2x1aXIgbGFzIHNlY3VlbmNpYXMgZGUgZXNjYXBlIGVzdMOhbmRhcmVzIFxcbiAobnVldmEgbMOtbmVhKSxcbiIKKyIgIFxcciAocmV0b3JubyBkZSBjYXJybykgbyBcXFxcIChiYXJyYSBpbnZlcnRpZGEpLiBTZSBwdWVkZSBpbmNsdWlyICIKKyJpbmZvcm1hY2nDs25cbiIKKyIgIHNvYnJlIGVsIHBhcXVldGUgaW5zZXJ0YW5kbyByZWZlcmVuY2lhcyB2YXJpYWJsZXMgYSBsb3MgY2FtcG9zIGRlbCAiCisicGFxdWV0ZVxuIgorIiAgdXNhbmRvIGxhIHNpbnRheGlzICR7dmFyWzthbmNob119LiBMb3MgY2FtcG9zIHNlIGFsaW5lYXLDoW4gYSBsYSBkZXJlY2hhICIKKyJhIFxuIgorIiAgbWVub3MgcXVlIGVsIGFuY2hvIHNlYSBuZWdhdGl2bywgZW4gY3V5byBjYXNvIHNlIGFsaW5lYXLDoW4gYSBsYSAiCisiaXpxdWllcmRhLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo2NTYKK21zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IHF1ZXJ5aW5nIHBhY2thZ2VzLiIKK21zZ3N0ciAiVXRpbGljZSAtLWhlbHAgcGFyYSBvYnRlbmVyIGF5dWRhIGRlIGxhIGNvbnN1bHRhIGRlIHBhcXVldGVzLiIKKworIzogc3JjL3JlbW92ZS5jOjg4CisjLCBjLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nIHJlcXVlc3QgdG8gcmVtb3ZlICUuMjUwcyB3aGljaCBpc24ndCBpbnN0YWxsZWQuIgorbXNnc3RyICIiCisibm8gc2UgdGVuZHLDoSBlbiBjdWVudGEgbGEgcGV0aWNpw7NuIGRlIGRlc2luc3RhbGFyICUuMjUwcyBwb3JxdWUgbm8gZXN0w6EgIgorImluc3RhbGFkby4iCisKKyM6IHNyYy9yZW1vdmUuYzo5NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiaWdub3JpbmcgcmVxdWVzdCB0byByZW1vdmUgJS4yNTBzLCBvbmx5IHRoZSBjb25maWdcbiIKKyIgZmlsZXMgb2Ygd2hpY2ggYXJlIG9uIHRoZSBzeXN0ZW0uIFVzZSAtLXB1cmdlIHRvIHJlbW92ZSB0aGVtIHRvby4iCittc2dzdHIgIiIKKyJzZSBkZXNjYXJ0YSBsYSBwZXRpY2nDs24gZGUgZGVzaW5zdGFsYXIgJS4yNTBzLCBkZWwgY3VhbCBzw7NsbyBsb3NcbiIKKyIgZmljaGVyb3MgZGUgY29uZmlndXJhY2nDs24gcXVlZGFuIGVuIGVsIHNpc3RlbWEuIFVzZSAtLXB1cmdlIHBhcmFcbiIKKyIgYm9ycmFyIGVzdG9zIGZpY2hlcm9zIHRhbWJpw6luLiIKKworIzogc3JjL3JlbW92ZS5jOjEwMworbXNnaWQgIlRoaXMgaXMgYW4gZXNzZW50aWFsIHBhY2thZ2UgLSBpdCBzaG91bGQgbm90IGJlIHJlbW92ZWQuIgorbXNnc3RyICJFcyB1biBwYXF1ZXRlIGVzZW5jaWFsIC0gbm8gZGViZSBzZXIgZGVzaW5zdGFsYWRvLiIKKworIzogc3JjL3JlbW92ZS5jOjEyOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogZGVwZW5kZW5jeSBwcm9ibGVtcyBwcmV2ZW50IHJlbW92YWwgb2YgJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiBwcm9ibGVtYXMgZGUgZGVwZW5kZW5jaWFzIGltcGlkZW4gbGEgZGVzaW5zdGFsYWNpw7NuIGRlICVzOlxuIgorIiVzIgorCisjOiBzcmMvcmVtb3ZlLmM6MTMwCittc2dpZCAiZGVwZW5kZW5jeSBwcm9ibGVtcyAtIG5vdCByZW1vdmluZyIKK21zZ3N0ciAicHJvYmxlbWFzIGRlIGRlcGVuZGVuY2lhcyAtIG5vIHNlIGRlc2luc3RhbGEiCisKKyM6IHNyYy9yZW1vdmUuYzoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6ICVzOiBkZXBlbmRlbmN5IHByb2JsZW1zLCBidXQgcmVtb3ZpbmcgYW55d2F5IGFzIHlvdSByZXF1ZXN0ZWQ6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiAlczogcHJvYmxlbWFzIGRlIGRlcGVuZGVuY2lhcywgcGVybyBzZSBkZXNpbnN0YWxhcsOhIGRlIHRvZGFzIGZvcm1hc1xuIgorIiB0YWwgeSBjb21vIHNlIHNvbGljaXTDszpcbiIKKyIlcyIKKworIzogc3JjL3JlbW92ZS5jOjE0MgorbXNnaWQgIiIKKyJQYWNrYWdlIGlzIGluIGEgdmVyeSBiYWQgaW5jb25zaXN0ZW50IHN0YXRlIC0geW91IHNob3VsZFxuIgorIiByZWluc3RhbGwgaXQgYmVmb3JlIGF0dGVtcHRpbmcgYSByZW1vdmFsLiIKK21zZ3N0ciAiIgorIkVsIHBhcXVldGUgZXN0w6EgZW4gdW4gZXN0YWRvIG11eSBtYWxvIGUgaW5jb25zaXN0ZW50ZSAtIGRlYmUgcmVpbnN0YWxhcmxvXG4iCisiIGFudGVzIGRlIGludGVudGFyIGRlc2luc3RhbGFybG8uIgorCisjOiBzcmMvcmVtb3ZlLmM6MTQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIldvdWxkIHJlbW92ZSBvciBwdXJnZSAlcyAuLi5cbiIKK21zZ3N0ciAiRGVzaW5zdGFsYXLDrWEgbyBwdXJnYXLDrWEgJXMgLi4uXG4iCisKKyM6IHNyYy9yZW1vdmUuYzoxNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVtb3ZpbmcgJXMgLi4uXG4iCittc2dzdHIgIkRlc2luc3RhbGFuZG8gJXMgLi4uXG4iCisKKyM6IHNyYy9yZW1vdmUuYzoyNzUgc3JjL3JlbW92ZS5jOjM2NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisid2hpbGUgcmVtb3ZpbmcgJS4yNTBzLCB1bmFibGUgdG8gcmVtb3ZlIGRpcmVjdG9yeSAnJS4yNTBzJzogJXMgLSBkaXJlY3RvcnkgIgorIm1heSBiZSBhIG1vdW50IHBvaW50PyIKK21zZ3N0ciAiIgorImFsIGRlc2luc3RhbGFyICUuMjUwcywgbm8gc2UgcHVlZGUgYm9ycmFyIGVsIGRpcmVjdG9yaW8gYCUuMjUwcyc6ICVzIC0gwr9lbCAiCisiZGlyZWN0b3JpbyBwdWVkZSBzZXIgdW4gcHVudG8gZGUgbW9udGFqZT8iCisKKyM6IHNyYy9yZW1vdmUuYzoyODkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNlY3VyZWx5IHJlbW92ZSAnJS4yNTBzJyIKK21zZ3N0ciAibm8gc2UgcHVlZGUgYm9ycmFyIGRlIGZvcm1hIHNlZ3VyYSBgJS4yNTBzJyIKKworIzogc3JjL3JlbW92ZS5jOjM2MQorIywgYy1mb3JtYXQKK21zZ2lkICJ3aGlsZSByZW1vdmluZyAlLjI1MHMsIGRpcmVjdG9yeSAnJS4yNTBzJyBub3QgZW1wdHkgc28gbm90IHJlbW92ZWQuIgorbXNnc3RyICIiCisiYWwgZGVzaW5zdGFsYXIgJS4yNTBzLCBlbCBkaXJlY3RvcmlvICUuMjUwcycgbm8gZXN0w6EgdmFjw61vLCBwb3IgbG8gcXVlIG5vIHNlICIKKyJib3JyYS4iCisKKyM6IHNyYy9yZW1vdmUuYzozODMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImNhbm5vdCByZW1vdmUgYCUuMjUwcyciCittc2dpZCAiY2Fubm90IHJlbW92ZSAnJS4yNTBzJyIKK21zZ3N0ciAibm8gc2UgcHVlZGUgYm9ycmFyIGAlLjI1MHMnIgorCisjOiBzcmMvcmVtb3ZlLmM6NDA5CisjLCBjLWZvcm1hdAorbXNnaWQgIlB1cmdpbmcgY29uZmlndXJhdGlvbiBmaWxlcyBmb3IgJXMgLi4uXG4iCittc2dzdHIgIlB1cmdhbmRvIGZpY2hlcm9zIGRlIGNvbmZpZ3VyYWNpw7NuIGRlICVzIC4uLlxuIgorCisjOiBzcmMvcmVtb3ZlLmM6NDU5CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZW1vdmUgb2xkIGNvbmZpZyBmaWxlIGAlLjI1MHMnICg9IGAlLjI1MHMnKSIKK21zZ3N0ciAiIgorIm5vIHNlIHB1ZWRlIGJvcnJhciBlbCBmaWNoZXJvIGRlIGNvbmZpZ3VyYWNpw7NuIGFudGlndW8gYCUuMjUwcycgKD0gYCUuMjUwcycpIgorCisjOiBzcmMvcmVtb3ZlLmM6NDc0CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZWFkIGNvbmZpZyBmaWxlIGRpciBgJS4yNTBzJyAoZnJvbSBgJS4yNTBzJykiCittc2dzdHIgIiIKKyJubyBzZSBwdWVkZSBsZWVyIGVsIGRpcmVjdG9yaW8gZGVsIGZpY2hlcm8gZGUgY29uZmlndXJhY2nDs24gYCUuMjUwcydcbiIKKyIoYSBwYXJ0aXIgZGUgYCUuMjUwcycpIgorCisjOiBzcmMvcmVtb3ZlLmM6NTEwCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZW1vdmUgb2xkIGJhY2t1cCBjb25maWcgZmlsZSBgJS4yNTBzJyAob2YgYCUuMjUwcycpIgorbXNnc3RyICIiCisibm8gc2UgcHVlZGUgYm9ycmFyIGVsIGFudGlndW8gZmljaGVybyBkZSBjb25maWd1cmFjacOzbiBkZSByZXNwYWxkbyBgJS4yNTBzJ1xuIgorIihkZSBgJS4yNTBzJykiCisKKyM6IHNyYy9yZW1vdmUuYzo1NjgKK21zZ2lkICJjYW5ub3QgcmVtb3ZlIG9sZCBmaWxlcyBsaXN0IgorbXNnc3RyICJubyBzZSBwdWVkZSBib3JyYXIgbGEgbGlzdGEgZGUgZmljaGVyb3MgYW50aWd1YSIKKworIzogc3JjL3JlbW92ZS5jOjU3NAorbXNnaWQgImNhbid0IHJlbW92ZSBvbGQgcG9zdHJtIHNjcmlwdCIKK21zZ3N0ciAibm8gc2UgcHVlZGUgYm9ycmFyIGVsIHNjcmlwdCBwb3N0cm0gYW50aWd1byIKKworIzogc3JjL3NlbGVjdC5jOjExNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVvZiBpbiBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZCIKK21zZ3N0ciAiZW9mIGluZXNwZXJhZG8gZW4gZWwgbm9tYnJlIGRlbCBwYXF1ZXRlIGVuIGxhIGzDrW5lYSAlZCIKKworIzogc3JjL3NlbGVjdC5jOjExNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBsaW5lIGluIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICJmaW4gZGUgbMOtbmVhIGluZXNwZXJhZG8gZW4gZWwgbm9tYnJlIGRlbCBwYXF1ZXRlIGVuIGxhIGzDrW5lYSAlZCIKKworIzogc3JjL3NlbGVjdC5jOjEyMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVvZiBhZnRlciBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZCIKK21zZ3N0ciAiZW9mIGluZXNwZXJhZG8gdHJhcyBlbCBub21icmUgZGVsIHBhcXVldGUgZW4gbGEgbMOtbmVhICVkIgorCisjOiBzcmMvc2VsZWN0LmM6MTIzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGxpbmUgYWZ0ZXIgcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQiCittc2dzdHIgImZpbiBkZSBsw61uZWEgaW5lc3BlcmFkbyB0cmFzIGVsIG5vbWJyZSBkZWwgcGFxdWV0ZSBlbiBsYSBsw61uZWEgJWQiCisKKyM6IHNyYy9zZWxlY3QuYzoxMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBkYXRhIGFmdGVyIHBhY2thZ2UgYW5kIHNlbGVjdGlvbiBhdCBsaW5lICVkIgorbXNnc3RyICJkYXRvcyBpbmVzcGVyYWRvcyB0cmFzIGVsIHBhcXVldGUgeSBzZWxlY2Npw7NuIGVuIGxhIGzDrW5lYSAlZCIKKworIzogc3JjL3NlbGVjdC5jOjEzOQorIywgYy1mb3JtYXQKK21zZ2lkICJpbGxlZ2FsIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkOiAlLjI1MHMiCittc2dzdHIgIm5vbWJyZSBkZSBwYXF1ZXRlIGlsZWdhbCBlbiBsYSBsw61uZWEgJWQ6ICUuMjUwcyIKKworIzogc3JjL3NlbGVjdC5jOjE0MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIHdhbnRlZCBzdGF0dXMgYXQgbGluZSAlZDogJS4yNTBzIgorbXNnc3RyICJlc3RhZG8gZGVzZWFkbyBkZXNjb25vY2lkbyBlbiBsYSBsw61uZWEgJWQ6ICUuMjUwcyIKKworIzogc3JjL3NlbGVjdC5jOjE0OQorbXNnaWQgInJlYWQgZXJyb3Igb24gc3RhbmRhcmQgaW5wdXQiCittc2dzdHIgImVycm9yIGRlIGxlY3R1cmEgZW4gbGEgZW50cmFkYSBlc3TDoW5kYXIiCisKKyM6IHNyYy9zdGF0Y21kLmM6NTIKKyMsIGZ1enp5CisjfCBtc2dpZCAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBxdWVyeWluZyBwYWNrYWdlcy4iCittc2dpZCAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBvdmVycmlkaW5nIGZpbGUgc3RhdCBpbmZvcm1hdGlvbi4iCittc2dzdHIgIlV0aWxpY2UgLS1oZWxwIHBhcmEgb2J0ZW5lciBheXVkYSBkZSBsYSBjb25zdWx0YSBkZSBwYXF1ZXRlcy4iCisKKyM6IHNyYy9zdGF0Y21kLmM6NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvcHlyaWdodCAoQykgMjAwMCwgMjAwMSBXaWNoZXJ0IEFra2VybWFuLlxuIgorIkNvcHlyaWdodCAoQykgMjAwNi0yMDA5IEd1aWxsZW0gSm92ZXIuXG4iCittc2dzdHIgIiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsIDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDYtMjAwOSBHdWlsbGVtIEpvdmVyLlxuIgorCisjOiBzcmMvc3RhdGNtZC5jOjgxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC0tYWRkIDxvd25lcj4gPGdyb3VwPiA8bW9kZT4gPGZpbGU+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkIGEgbmV3IGVudHJ5IGludG8gdGhlIGRhdGFiYXNlLlxuIgorIiAgLS1yZW1vdmUgPGZpbGU+ICAgICAgICAgIHJlbW92ZSBmaWxlIGZyb20gdGhlIGRhdGFiYXNlLlxuIgorIiAgLS1saXN0IFs8Z2xvYi1wYXR0ZXJuPl0gIGxpc3QgY3VycmVudCBvdmVycmlkZXMgaW4gdGhlIGRhdGFiYXNlLlxuIgorIlxuIgorbXNnc3RyICIiCisiw5NyZGVuZXM6XG4iCisiICAtLWFkZCA8cHJvcGlldGFyaW8+IDxncnVwbz4gPG1vZG8+PGZpY2hlcm8+ICAgICAgICAgXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgIGHDsWFkZSB1bmEgbnVldmEgZW50cmFkYSBlbiBsYSBiYXNlIGRlIGRhdG9zLlxuIgorIiAgLS1yZW1vdmUgPGZpY2hlcm8+ICAgICAgICBlbGltaW5hIHVuIGZpY2hlcm8gZGUgbGEgYmFzZSBkZSBkYXRvcy5cbiIKKyIgIC0tbGlzdCBbPHBhdHLDs24tZ2xvYj5dICAgIG11ZXN0cmEgbGEgaW5mb3JtYWNpw7NuIGRlIGxhIGJhc2UgZGUgZGF0b3NcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGUgcmVkZWZpbmljaW9uZXMuXG4iCisiXG4iCisKKyMgTk9URTogYG92ZXJyaWRlJyBzZSB0cmFkdWNlIGNvbW8gcmVkZWZpbmljacOzbiBwb3JxdWUgbm8gc2UgImFudWxhIiBvCisjICJoYWNlIGNhc28gb21pc28iIGRlIGxvcyB2YWxvcmVzIGRlIGRwa2csIHNlIHJlZW1wbGF6YW4gcG9yIG90cm9zLgorIzogc3JjL3N0YXRjbWQuYzo4OQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICBzZXQgdGhlIGRpcmVjdG9yeSB3aXRoIHRoZSBzdGF0b3ZlcnJpZGUgZmlsZS5cbiIKKyIgIC0tdXBkYXRlICAgICAgICAgICAgICAgICBpbW1lZGlhdGVseSB1cGRhdGUgZmlsZSBwZXJtaXNzaW9ucy5cbiIKKyIgIC0tZm9yY2UgICAgICAgICAgICAgICAgICBmb3JjZSBhbiBhY3Rpb24gZXZlbiBpZiBhIHNhbml0eSBjaGVjayBmYWlscy5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBxdWlldCBvcGVyYXRpb24sIG1pbmltYWwgb3V0cHV0LlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIk9wY2lvbmVzOlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3Jpbz4gICBkZWZpbmUgZWwgZGlyZWN0b3JpbyBjb24gZWwgZmljaGVybyAiCisic3RhdG92ZXJyaWRlLlxuIgorIiAgLS11cGRhdGUgICAgICAgICAgICAgICAgICBhY3R1YWxpemEgbG9zIHBlcm1pc29zIGRlIGxvcyBmaWNoZXJvcyBcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5tZWRpYXRhbWVudGUuXG4iCisiICAtLWZvcmNlICAgICAgICAgICAgICAgICAgIGZ1ZXJ6YSBsYSBlamVjdWNpw7NuIGRlIHVuYSBhY2Npw7NuIGF1bnF1ZSBmYWxsZW5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFzIGNvbXByb2JhY2lvbmVzLlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgICBvcGVyYWNpw7NuIHNpbGVuY2lvc2EsIHNhbGlkYSByZWR1Y2lkYS5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICAgbXVlc3RyYSBlc3RlIG1lbnNhamUgZGUgYXl1ZGEuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgIG11ZXN0cmEgbGEgdmVyc2nDs24uXG4iCisiXG4iCisKKyM6IHNyYy9zdGF0Y21kLmM6MTE2Cittc2dpZCAic3RyaXBwaW5nIHRyYWlsaW5nIC8iCittc2dzdHIgIm9taXRpZW5kbyDCqy/CuyBmaW5hbCIKKworIzogc3JjL3N0YXRjbWQuYzoyMDcKK21zZ2lkICJjYW5ub3Qgb3BlbiBuZXcgc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIm5vIHNlIHB1ZWRvIGFicmlyIGVsIG51ZXZvIGZpY2hlcm8gc3RhdG92ZXJyaWRlIgorCisjOiBzcmMvc3RhdGNtZC5jOjIyMgorbXNnaWQgImVycm9yIHJlbW92aW5nIHN0YXRvdmVycmlkZS1vbGQiCittc2dzdHIgImVycm9yIGFsIGVsaW1pbmFyIHN0YXRvdmVycmlkZS1vbGQiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjI0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgbmV3IHN0YXRvdmVycmlkZS1vbGQiCittc2dzdHIgImVycm9yIGFsIGNyZWFyIGVsIG51ZXZvIGZpY2hlcm8gc3RhdG92ZXJyaWRlLW9sZCIKKworIzogc3JjL3N0YXRjbWQuYzoyMjYKK21zZ2lkICJlcnJvciBpbnN0YWxsaW5nIG5ldyBzdGF0b3ZlcnJpZGUiCittc2dzdHIgImVycm9yIGFsIGluc3RhbGFyIGVsIG51ZXZvIHN0YXRvdmVycmlkZSIKKworIzogc3JjL3N0YXRjbWQuYzoyNDYKK21zZ2lkICItLWFkZCBuZWVkcyBmb3VyIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS1hZGQgbmVjZXNpdGEgY3VhdHJvIHBhcsOhbWV0cm9zIgorCisjOiBzcmMvc3RhdGNtZC5jOjI1NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQW4gb3ZlcnJpZGUgZm9yICclcycgYWxyZWFkeSBleGlzdHMsIGJ1dCAtLWZvcmNlIHNwZWNpZmllZCBzbyB3aWxsIGJlICIKKyJpZ25vcmVkLiIKK21zZ3N0ciAiIgorIkV4aXN0ZSB1bmEgcmVkZWZpbmljacOzbiBwYXJhIGAlcycgcXVlIGxhIGRlc2NhcnRhLCBwZXJvIHNlIGhhIGVzcGVjaWZpY2FkbyAtLSIKKyJmb3JjZSBjb24gbG8gcXVlIHNlIGlnbm9yYXLDoS4iCisKKyM6IHNyYy9zdGF0Y21kLmM6MjYwCisjLCBjLWZvcm1hdAorbXNnaWQgIkFuIG92ZXJyaWRlIGZvciAnJXMnIGFscmVhZHkgZXhpc3RzLCBhYm9ydGluZy4iCittc2dzdHIgIllhIGV4aXN0ZSB1bmEgcmVkZWZpbmljacOzbiBwYXJhIGAlcycsIGludGVycnVtcGllbmRvLiIKKworIzogc3JjL3N0YXRjbWQuYzoyNzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS11cGRhdGUgZ2l2ZW4gYnV0ICVzIGRvZXMgbm90IGV4aXN0IgorbXNnc3RyICJzZSBoYSB1dGlsaXphZG8gLS11cGRhdGUgcGVybyBubyBleGlzdGUgJXMiCisKKyM6IHNyYy9zdGF0Y21kLmM6Mjk2Cittc2dpZCAiTm8gb3ZlcnJpZGUgcHJlc2VudC4iCittc2dzdHIgIk5vIGV4aXN0ZSB1bmEgcmVkZWZpbmljacOzbi4iCisKKyM6IHNyYy9zdGF0Y21kLmM6MzA0Cittc2dpZCAiLS11cGRhdGUgaXMgdXNlbGVzcyBmb3IgLS1yZW1vdmUiCittc2dzdHIgImVzIGluw7p0aWwgdXRpbGl6YXIgLS11cGRhdGUgY29uIC0tcmVtb3ZlIgorCisjOiBzcmMvc3RhdGRiLmM6NTkKK21zZ2lkICJzeW50YXggZXJyb3I6IGludmFsaWQgdWlkIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJlcnJvciBzaW50w6FjdGljbzogdmFsb3IgdWlkIGludsOhbGlkbyBlbiBlbCBmaWNoZXJvIHN0YXRvdmVycmlkZSIKKworIzogc3JjL3N0YXRkYi5jOjY0CisjLCBjLWZvcm1hdAorbXNnaWQgInN5bnRheCBlcnJvcjogdW5rbm93biB1c2VyICclcycgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgImVycm9yIHNpbnTDoWN0aWNvOiB1c3VhcmlvIGRlc2Nvbm9jaWRvICclcycgZW4gZWwgYXJjaGl2byBzdGF0b3ZlcnJpZGUiCisKKyM6IHNyYy9zdGF0ZGIuYzo4MworbXNnaWQgInN5bnRheCBlcnJvcjogaW52YWxpZCBnaWQgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgImVycm9yIHNpbnTDoWN0aWNvOiB2YWxvciBkZSBnaWQgaW52w6FsaWRvIGVuIGVsIGZpY2hlcm8gc3RhdG92ZXJyaWRlIgorCisjOiBzcmMvc3RhdGRiLmM6ODgKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yOiB1bmtub3duIGdyb3VwICclcycgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgImVycm9yIHNpbnTDoWN0aWNvOiBncnVwbyBkZXNjb25vY2lkbyBgJXMnIGVuIGVsIGZpY2hlcm8gc3RhdG92ZXJyaWRlIgorCisjOiBzcmMvc3RhdGRiLmM6MTA0Cittc2dpZCAic3ludGF4IGVycm9yOiBpbnZhbGlkIG1vZGUgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgImVycm9yIHNpbnTDoWN0aWNvOiBtb2RvIGludsOhbGlkbyBlbiBlbCBmaWNoZXJvIHN0YXRvdmVycmlkZSIKKworIzogc3JjL3N0YXRkYi5jOjEyNworbXNnaWQgImZhaWxlZCB0byBvcGVuIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJmYWxsbyBhbCBhYnJpciBlbCBmaWNoZXJvIHN0YXRvdmVycmlkZSIKKworIzogc3JjL3N0YXRkYi5jOjEzNAorbXNnaWQgImZhaWxlZCB0byBmc3RhdCBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiZmFsbG8gYWwgZWZlY3R1YXIgYGZzdGF0JyBzb2JyZSBlbCBmaWNoZXJvIHN0YXRvdmVycmlkZSIKKworIzogc3JjL3N0YXRkYi5jOjEzNworbXNnaWQgImZhaWxlZCB0byBmc3RhdCBwcmV2aW91cyBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiZmFsbG8gYWwgZWZlY3R1YXIgYGZzdGF0JyBzb2JyZSBlbCBmaWNoZXJvIHN0YXRvdmVycmlkZSBhbnRlcmlvciIKKworIzogc3JjL3N0YXRkYi5jOjE2MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic3RhdG92ZXJyaWRlIGZpbGUgYCUuMjUwcyciCittc2dpZCAicmVhZGluZyBzdGF0b3ZlcnJpZGUgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAiZmljaGVybyBzdGF0b3ZlcnJpZGUgYCUuMjUwcyciCisKKyM6IHNyYy9zdGF0ZGIuYzoxNjkKK21zZ2lkICJzdGF0b3ZlcnJpZGUgZmlsZSBpcyBtaXNzaW5nIGZpbmFsIG5ld2xpbmUiCittc2dzdHIgImVsIGZpY2hlcm8gc3RhdG92ZXJyaWRlIG5vIHRpZW5lIHVuIHNhbHRvIGRlIGzDrW5lYSBmaW5hbCIKKworIzogc3JjL3N0YXRkYi5jOjE3MworbXNnaWQgInN0YXRvdmVycmlkZSBmaWxlIGNvbnRhaW5zIGVtcHR5IGxpbmUiCittc2dzdHIgIkVsIGZpY2hlcm8gc3RhdG92ZXJyaWRlIGNvbnRpZW5lIHVuYSBsw61uZWEgdmFjw61hIgorCisjOiBzcmMvc3RhdGRiLmM6MTc4IHNyYy9zdGF0ZGIuYzoxOTAgc3JjL3N0YXRkYi5jOjIwMgorbXNnaWQgInN5bnRheCBlcnJvciBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiZXJyb3Igc2ludMOhY3RpY28gZW4gZWwgZmljaGVybyBzdGF0b3ZlcnJpZGUiCisKKyM6IHNyYy9zdGF0ZGIuYzoxODYgc3JjL3N0YXRkYi5jOjE5OCBzcmMvc3RhdGRiLmM6MjEwCittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgbGluZSBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiZmluIGRlIGzDrW5lYSBpbmVzcGVyYWRvIGVuIGVsIGZpY2hlcm8gc3RhdG92ZXJyaWRlIgorCisjOiBzcmMvc3RhdGRiLmM6MjE0CisjLCBjLWZvcm1hdAorbXNnaWQgIm11bHRpcGxlIHN0YXR1c292ZXJyaWRlcyBwcmVzZW50IGZvciBmaWxlICclLjI1MHMnIgorbXNnc3RyICIiCisic2UgZW5jb250cmFyb24gbcO6bHRpcGxlcyBkZWZpbmljaW9uZXMgc3RhdG92ZXJyaWRlIHBhcmEgZWwgZmljaGVybyBgJS4yNTBzJyIKKworIzogc3JjL3RyaWdjbWQuYzo0NgorbXNnaWQgIlR5cGUgZHBrZy10cmlnZ2VyIC0taGVscCBmb3IgaGVscCBhYm91dCB0aGlzIHV0aWxpdHkuIgorbXNnc3RyICJFc2NyaWJhIGRwa2ctdHJpZ2dlciAtLWhlbHAgcGFyYSBvYnRlbmVyIGF5dWRhIGRlIGVzdGEgaGVycmFtaWVudGEuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjUxCisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiAlcyBwYWNrYWdlIHRyaWdnZXIgdXRpbGl0eSB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICJIZXJyYW1pZW50YSBkZSBkaXNwYXJhZG9yZXMgZGUgRGViaWFuIGAlcycgdmVyc2nDs24gJXMuXG4iCisKKyM6IHNyYy90cmlnY21kLmM6NjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbnM+IC4uLl0gPHRyaWdnZXItbmFtZT5cbiIKKyIgICAgICAgJXMgWzxvcHRpb25zPiAuLi5dIDxjb21tYW5kPlxuIgorIlxuIgorbXNnc3RyICIiCisiTW9kbyBkZSB1c286ICVzIFs8b3BjaW9uZXM+IC4uLl0gPG5vbWJyZS1kaXNwYXJhZG9yPlxuIgorIiAgICAgICAgICAgICAlcyBbPG9wY2lvbmVzPiAuLi5dIDxvcmRlbj5cbiIKKyJcbiIKKworIzogc3JjL3RyaWdjbWQuYzo3MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtLWNoZWNrLXN1cHBvcnRlZCAgICAgICAgICAgICAgICBDaGVjayBpZiB0aGUgcnVubmluZyBkcGtnIHN1cHBvcnRzICIKKyJ0cmlnZ2Vycy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIsOTcmRlbmVzOlxuIgorIiAgLS1jaGVjay1zdXBwb3J0ZWQgICAgICAgICAgICAgICAgICAgICBDb21wcnVlYmEgc2kgZWwgcHJvZ3JhbWEgZHBrZyAiCisic29wb3J0YSBkaXNwYXJhZG9yZXMuXG4iCisiXG4iCisKKyM6IHNyYy90cmlnY21kLmM6ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgICAgICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyIgIC0tYnktcGFja2FnZT08cGFja2FnZT4gICAgICAgICAgIE92ZXJyaWRlIHRyaWdnZXIgYXdhaXRlciAobm9ybWFsbHkgc2V0XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ5IGRwa2cpLlxuIgorIiAgLS1uby1hd2FpdCAgICAgICAgICAgICAgICAgICAgICAgTm8gcGFja2FnZSBuZWVkcyB0byBhd2FpdCB0aGUgIgorInByb2Nlc3NpbmcuXG4iCisiICAtLW5vLWFjdCAgICAgICAgICAgICAgICAgICAgICAgICBKdXN0IHRlc3QgLSBkb24ndCBhY3R1YWxseSBjaGFuZ2UgIgorImFueXRoaW5nLlxuIgorIlxuIgorbXNnc3RyICIiCisiT3BjaW9uZXM6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3RvcmlvPiAgICAgICAgICBVdGlsaXphIDxkaXJlY3RvcmlvPiBlbiBsdWdhciBkZSAlcy5cbiIKKyIgIC0tYnktcGFja2FnZT08cGFxdWV0ZT4gICAgICAgICAgIEV2aXRhIGxhIGVzcGVyYSBkZSBkaXNwYXJhZG9yZXMgIgorIihnZW5lcmFsbWVudGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpamFkbyBwb3IgZHBrZykuXG4iCisiICAtLW5vLWF3YWl0ICAgICAgICAgICAgICAgICAgICAgICBOaW5nw7puIHBhcXVldGUgdGllbmUgcXVlIGVzcGVyYXIgYWwgIgorInByb2Nlc2Fkby5cbiIKKyIgIC0tbm8tYWN0ICAgICAgICAgICAgICAgICAgICAgICAgIFPDs2xvIHByb2Jhciwgbm8gY2FtYmlhciBuYWRhIHJlYWxtZW50ZS5cbiIKKyJcbiIKKworIzogc3JjL3RyaWdjbWQuYzoxNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IHRyaWdnZXJzIGRhdGEgZGlyZWN0b3J5IG5vdCB5ZXQgY3JlYXRlZFxuIgorbXNnc3RyICIlczogZWwgZGlyZWN0b3JpbyBkZSBkYXRvcyBkZSBkaXNwYXJhZG9yZXMgYcO6biBubyBzZSBoYSBjcmVhZG9cbiIKKworIzogc3JjL3RyaWdjbWQuYzoxNTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IHRyaWdnZXIgcmVjb3JkcyBub3QgeWV0IGluIGV4aXN0ZW5jZVxuIgorbXNnc3RyICIlczogYcO6biBubyBleGlzdGVuIHJlZ2lzdHJvcyBkZSBkaXNwYXJhZG9yZXNcbiIKKworIzogc3JjL3RyaWdjbWQuYzoyMDUKK21zZ2lkICJ0YWtlcyBvbmUgYXJndW1lbnQsIHRoZSB0cmlnZ2VyIG5hbWUiCittc2dzdHIgInRvbWEgc29sYW1lbnRlIHVuIGFyZ3VtZW50bywgZWwgbm9tYnJlIGRlbCBkaXNwYXJhZG9yIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIxMAorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiZHBrZy10cmlnZ2VyIG11c3QgYmUgY2FsbGVkIGZyb20gYSBtYWludGFpbmVyIHNjcmlwdCAob3Igd2l0aCBhIC0tYnktIgorI3wgInBhY2thZ2Ugb3B0aW9uKSIKK21zZ2lkICJtdXN0IGJlIGNhbGxlZCBmcm9tIGEgbWFpbnRhaW5lciBzY3JpcHQgKG9yIHdpdGggYSAtLWJ5LXBhY2thZ2Ugb3B0aW9uKSIKK21zZ3N0ciAiIgorImRwa2ctdHJpZ2dlciBkZWJlIGxsYW1hcnNlIGRlc2RlIHVuIHByb2dyYW1hIGRlIHVuIGRlc2Fycm9sbGFkb3IgKG8gY29uIGxhICIKKyJvcGNpw7NuIC0tYnktcGFja2FnZSkiCisKKyM6IHNyYy90cmlnY21kLmM6MjE1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJkcGtnLXRyaWdnZXI6IGlsbGVnYWwgYXdhaXRlZCBwYWNrYWdlIG5hbWUgYCUuMjUwcyc6ICUuMjUwcyIKK21zZ2lkICJpbGxlZ2FsIGF3YWl0ZWQgcGFja2FnZSBuYW1lICclLjI1MHMnOiAlLjI1MHMiCittc2dzdHIgImRwa2ctdHJpZ2dlcjogbm9tYnJlIGRlIHBhcXVldGUgZXNwZXJhZG8gaWxlZ2FsIGAlLjI1MHMnOiAlLjI1MHMiCisKKyM6IHNyYy90cmlnY21kLmM6MjIxCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgdHJpZ2dlciBuYW1lIGAlLjI1MHMnOiAlLjI1MHMiCittc2dzdHIgIm5vbWJyZSBkZSBkaXNwYXJhZG9yIGludsOhbGlkbyBgJS4yNTBzJzogJS4yNTBzIgorCisjOiBzcmMvdHJpZ3Byb2MuYzoyNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBjeWNsZSBmb3VuZCB3aGlsZSBwcm9jZXNzaW5nIHRyaWdnZXJzOlxuIgorIiBjaGFpbiBvZiBwYWNrYWdlcyB3aG9zZSB0cmlnZ2VycyBhcmUgb3IgbWF5IGJlIHJlc3BvbnNpYmxlOlxuIgorbXNnc3RyICIiCisiJXM6IHNlIGVuY29udHLDsyB1biBidWNsZSBhbCBwcm9jZXNhciBsb3MgZGlzcGFyYWRvcmVzOlxuIgorIiBsYSBjYWRlbmEgZGUgcGFxdWV0ZXMgY3V5b3MgZGlzcGFyYWRvcmVzIHNvbiBvIHB1ZWRlbiBzZXIgcmVzcG9uc2FibGVzOlxuIgorCisjOiBzcmMvdHJpZ3Byb2MuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiBwYWNrYWdlcycgcGVuZGluZyB0cmlnZ2VycyB3aGljaCBhcmUgb3IgbWF5IGJlIHVucmVzb2x2YWJsZTpcbiIKK21zZ3N0ciAiIgorIlxuIgorIiBkaXNwYXJhZG9yZXMgcGVuZGllbnRlcyBkZSBwYXF1ZXRlcyBxdWUgbm8gc29uIG8gcHVlZGVuIG5vIHNlciByZXNvbHVibGVzOlxuIgorCisjOiBzcmMvdHJpZ3Byb2MuYzoyODEKK21zZ2lkICJ0cmlnZ2VycyBsb29waW5nLCBhYmFuZG9uZWQiCittc2dzdHIgImxvcyBkaXNwYXJhZG9yZXMgaGFuIGVudHJhZG8gZW4gYnVjbGUsIGFiYW5kb25hbmRvIgorCisjOiBzcmMvdHJpZ3Byb2MuYzozMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHJvY2Vzc2luZyB0cmlnZ2VycyBmb3IgJXMgLi4uXG4iCittc2dzdHIgIlByb2Nlc2FuZG8gZGlzcGFyYWRvcmVzIHBhcmEgJXMgLi4uXG4iCisKKyM6IHNyYy91cGRhdGUuYzo1MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiLS0lcyBuZWVkcyBleGFjdGx5IG9uZSBQYWNrYWdlcyBmaWxlIGFyZ3VtZW50IgorbXNnaWQgIi0tJXMgbmVlZHMgZXhhY3RseSBvbmUgUGFja2FnZXMtZmlsZSBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyBuZWNlc2l0YSBleGFjdGFtZW50ZSB1biBmaWNoZXJvIGRlIFBhcXVldGVzIGNvbW8gYXJndW1lbnRvIgorCisjOiBzcmMvdXBkYXRlLmM6NjIKK21zZ2lkICJ1bmFibGUgdG8gYWNjZXNzIGRwa2cgc3RhdHVzIGFyZWEgZm9yIGJ1bGsgYXZhaWxhYmxlIHVwZGF0ZSIKK21zZ3N0ciAiIgorIm5vIHNlIHB1ZWRlIGFjY2VkZXIgYWwgw6FyZWEgZGUgZXN0YWRvIGRlIGRwa2cgcGFyYSB1bmEgYWN0dWFsaXphY2nDs25cbiIKKyJkZSBgYXZhaWxhYmxlJyIKKworIzogc3JjL3VwZGF0ZS5jOjY0Cittc2dpZCAiYnVsayBhdmFpbGFibGUgdXBkYXRlIHJlcXVpcmVzIHdyaXRlIGFjY2VzcyB0byBkcGtnIHN0YXR1cyBhcmVhIgorbXNnc3RyICIiCisibGEgYWN0dWFsaXphY2nDs24gZGUgYGF2YWlsYWJsZScgcmVxdWllcmUgYWNjZXNvIGRlIGVzY3JpdHVyYSBhbCDDoXJlYSBkZSAiCisiZXN0YWRvXG4iCisiZGUgZHBrZyIKKworIzogc3JjL3VwZGF0ZS5jOjcxCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlcGxhY2luZyBhdmFpbGFibGUgcGFja2FnZXMgaW5mbywgdXNpbmcgJXMuXG4iCittc2dzdHIgIlJlZW1wbGF6YW5kbyBpbmZvcm1hY2nDs24gZGUgcGFxdWV0ZXMgZGlzcG9uaWJsZXMsIHVzYW5kbyAlcy5cbiIKKworIzogc3JjL3VwZGF0ZS5jOjc0CisjLCBjLWZvcm1hdAorbXNnaWQgIlVwZGF0aW5nIGF2YWlsYWJsZSBwYWNrYWdlcyBpbmZvLCB1c2luZyAlcy5cbiIKK21zZ3N0ciAiQWN0dWFsaXphbmRvIGluZm9ybWFjacOzbiBkZSBwYXF1ZXRlcyBkaXNwb25pYmxlcywgdXNhbmRvICVzLlxuIgorCisjOiBzcmMvdXBkYXRlLmM6MTAxCisjLCBjLWZvcm1hdAorbXNnaWQgIkluZm9ybWF0aW9uIGFib3V0ICVkIHBhY2thZ2Ugd2FzIHVwZGF0ZWQuXG4iCittc2dpZF9wbHVyYWwgIkluZm9ybWF0aW9uIGFib3V0ICVkIHBhY2thZ2VzIHdhcyB1cGRhdGVkLlxuIgorbXNnc3RyWzBdICJTZSBhY3R1YWxpesOzIGxhIGluZm9ybWFjacOzbiBzb2JyZSAlZCBwYXF1ZXRlLlxuIgorbXNnc3RyWzFdICJTZSBhY3R1YWxpesOzIGxhIGluZm9ybWFjacOzbiBzb2JyZSAlZCBwYXF1ZXRlcy5cbiIKKworIzogc3JjL3VwZGF0ZS5jOjExNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisib2Jzb2xldGUgJy0tJXMnIG9wdGlvbiwgdW5hdmFpbGFibGUgcGFja2FnZXMgYXJlIGF1dG9tYXRpY2FsbHkgY2xlYW5lZCB1cC4iCittc2dzdHIgIiIKKyJsYSBvcGNpw7NuICctLSVzJyBlc3TDoSBvYnNvbGV0YSwgbG9zIHBhcXVldGVzIG5vIGRpc3BvbmlibGVzIHNlIGxpbXBpYW4gZGUgIgorImZvcm1hIGF1dG9tw6F0aWNhLiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBuYW1lICclLjUwcy4uLicgaXMgdG9vIGxvbmciCittc2dzdHIgImVsIG5vbWJyZSBkZSBmaWNoZXJvICclLjUwcy4uLicgZXMgZGVtYXNpYWRvIGxhcmdvIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjEyOQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBmaWxlIG5hbWUgJyUuMjUwcyciCittc2dzdHIgIm5vIHNlIHB1ZWRlIGVqZWN1dGFyIMKrc3RhdMK7IHNvYnJlIGVsIG5vbWJyZSBkZSBmaWNoZXJvIGAlLjI1MHMnIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjE4OQorbXNnaWQgInVuYWJsZSB0byBzdGF0IGNvbnRyb2wgZGlyZWN0b3J5IgorbXNnc3RyICJubyBzZSBwdWVkZSBlamVjdXRhciDCq3N0YXTCuyBzb2JyZSBlbCBkaXJlY3RvcmlvIGRlIGNvbnRyb2wiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTkxCittc2dpZCAiY29udHJvbCBkaXJlY3RvcnkgaXMgbm90IGEgZGlyZWN0b3J5IgorbXNnc3RyICJlbCBkaXJlY3RvcmlvIGRlIGNvbnRyb2wgbm8gZXMgdW4gZGlyZWN0b3JpbyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoxOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29udHJvbCBkaXJlY3RvcnkgaGFzIGJhZCBwZXJtaXNzaW9ucyAlMDNsbyAobXVzdCBiZSA+PTA3NTUgYW5kIDw9MDc3NSkiCittc2dzdHIgIiIKKyJlbCBkaXJlY3RvcmlvIGRlIGNvbnRyb2wgdGllbmUgcGVybWlzb3MgZXJyw7NuZW9zICUwM2xvXG4iCisiKGRlYmUgc2VyID49MDc1NSB5IDw9MDc3NSkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjA0CisjLCBjLWZvcm1hdAorbXNnaWQgIm1haW50YWluZXIgc2NyaXB0IGAlLjUwcycgaXMgbm90IGEgcGxhaW4gZmlsZSBvciBzeW1saW5rIgorbXNnc3RyICJlbCBzY3JpcHQgYCUuNTBzJyBubyBlcyB1biBmaWNoZXJvIG5vcm1hbCBvIHVuIGVubGFjZSBzaW1iw7NsaWNvIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjIwNworIywgYy1mb3JtYXQKK21zZ2lkICIiCisibWFpbnRhaW5lciBzY3JpcHQgYCUuNTBzJyBoYXMgYmFkIHBlcm1pc3Npb25zICUwM2xvIChtdXN0IGJlID49MDU1NSBhbmQgIgorIjw9MDc3NSkiCittc2dzdHIgIiIKKyJlbCBzY3JpcHQgYCUuNTBzJyB0aWVuZSBwZXJtaXNvcyBlcnLDs25lb3MgJTAzbG9cbiIKKyIoZGViZSBzZXIgPj0wNTU1IHkgPD0wNzc1KSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAibWFpbnRhaW5lciBzY3JpcHQgYCUuNTBzJyBpcyBub3Qgc3RhdHRhYmxlIgorbXNnc3RyICJubyBzZSBwdWVkZSBlZmVjdHVhciBgc3RhdCcgc29icmUgZWwgc2NyaXB0IGAlLjUwcyciCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjM3Cittc2dpZCAiZXJyb3Igb3BlbmluZyBjb25mZmlsZXMgZmlsZSIKK21zZ3N0ciAiZXJyb3IgYWwgYWJyaXIgZWwgZmljaGVybyBkZSBjb25mZmlsZXMiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjQ2Cittc2dpZCAiZW1wdHkgc3RyaW5nIGZyb20gZmdldHMgcmVhZGluZyBjb25mZmlsZXMiCittc2dzdHIgImNhZGVuYSB2YWPDrWEgZGUgZmdldHMgYWwgbGVlciBjb25mZmlsZXMiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjUxCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIG5hbWUgJyUuNTBzLi4uJyBpcyB0b28gbG9uZywgb3IgbWlzc2luZyBmaW5hbCBuZXdsaW5lIgorbXNnc3RyICIiCisiZWwgbm9tYnJlIGRlIGNvbmZmaWxlIGAlLjUwcy4uLicgZXMgZGVtYXNpYWRvIGxhcmdvLCBvIGxlIGZhbHRhIGVsIGNhcsOhY3RlciAiCisiZGUgbnVldmEgbMOtbmVhIGZpbmFsIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI2NAorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBmaWxlbmFtZSAnJXMnIGNvbnRhaW5zIHRyYWlsaW5nIHdoaXRlIHNwYWNlcyIKK21zZ3N0ciAiZWwgY29uZmZpbGUgYCVzJyBjb250aWVuZSBlc3BhY2lvcyBlbiBibGFuY28gYWwgZmluYWwgZGUgbGluZWEiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjY2CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIGAlLjI1MHMnIGRvZXMgbm90IGFwcGVhciBpbiBwYWNrYWdlIgorbXNnc3RyICJlbCBjb25mZmlsZSBgJS4yNTBzJyBubyBhcGFyZWNlIGRlbnRybyBkZWwgcGFxdWV0ZSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgYCUuMjUwcycgaXMgbm90IHN0YXR0YWJsZSIKK21zZ3N0ciAibm8gc2UgcHVlZGUgZWZlY3R1YXIgYHN0YXQnIHNvYnJlIGVsIGNvbmZmaWxlIGAlLjI1MHMnIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI3MAorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSAnJXMnIGlzIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgImVsIGNvbmZmaWxlIGAlcycgbm8gZXMgdW4gZmljaGVybyBub3JtYWwiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6Mjc0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIG5hbWUgJyVzJyBpcyBkdXBsaWNhdGVkIgorbXNnc3RyICJlbCBub21icmUgY29uZmZpbGUgJXMgZXN0w6EgZHVwbGljYWRvIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI4NworbXNnaWQgImVycm9yIHJlYWRpbmcgY29uZmZpbGVzIGZpbGUiCittc2dzdHIgImVycm9yIGFsIGxlZXIgZWwgZmljaGVybyBkZSBjb25mZmlsZXMiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MzM5Cittc2dpZCAicGFja2FnZSBuYW1lIGhhcyBjaGFyYWN0ZXJzIHRoYXQgYXJlbid0IGxvd2VyY2FzZSBhbHBoYW51bXMgb3IgYC0rLiciCittc2dzdHIgIiIKKyJlbCBub21icmUgZGVsIHBhcXVldGUgdGllbmUgY2FyYWN0ZXJlcyBxdWUgbm8gc29uIG1pbsO6c2N1bGFzLCBhbGZhbnVtw6lyaWNvc1xuIgorIm8gYC0rLiciCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MzQxCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgY29udGFpbnMgdXNlci1kZWZpbmVkIFByaW9yaXR5IHZhbHVlICclcyciCittc2dzdHIgImAlcycgY29udGllbmUgdW4gdmFsb3IgUHJpb3JpdHkgYCVzJyBkZWZpbmlkbyBwb3IgZWwgdXN1YXJpbyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzozNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBjb250YWlucyB1c2VyLWRlZmluZWQgZmllbGQgJyVzJyIKK21zZ3N0ciAiYCVzJyBjb250aWVuZSB1biBjYW1wbyBgJXMnIGRlZmluaWRvIHBvciBlbCB1c3VhcmlvIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjM1OAorIywgYy1mb3JtYXQKK21zZ2lkICJpZ25vcmluZyAlZCB3YXJuaW5nIGFib3V0IHRoZSBjb250cm9sIGZpbGUocylcbiIKK21zZ2lkX3BsdXJhbCAiaWdub3JpbmcgJWQgd2FybmluZ3MgYWJvdXQgdGhlIGNvbnRyb2wgZmlsZShzKVxuIgorbXNnc3RyWzBdICJubyBzZSB0ZW5kcsOhIGVuIGN1ZW50YSAlZCBhdmlzbyBzb2JyZSBlbC9sb3MgZmljaGVyby9zIGRlIGNvbnRyb2xcbiIKK21zZ3N0clsxXSAiIgorIm5vIHNlIHRlbmRyw6FuIGVuIGN1ZW50YSAlZCBhdmlzb3Mgc29icmUgZWwvbG9zIGZpY2hlcm8vcyBkZSBjb250cm9sXG4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDAzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDI5CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQzNgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGEgPGRpcmVjdG9yeT4gYXJndW1lbnQiCittc2dzdHIgIi0tJXMgbmVjZXNpdGEgdW4gZGlyZWN0b3JpbyBjb21vIHBhcsOhbWV0cm8iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDA5Cittc2dpZCAiLS1idWlsZCB0YWtlcyBhdCBtb3N0IHR3byBhcmd1bWVudHMiCittc2dzdHIgIi0tYnVpbGQgbGxldmEgYSBsbyBzdW1vIGRvcyBwYXLDoW1ldHJvcyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoZWNrIGZvciBleGlzdGVuY2Ugb2YgYXJjaGl2ZSBgJS4yNTBzJyIKK21zZ3N0ciAibm8gc2UgcHVlZGUgY29tcHJvYmFyIGxhIGV4aXN0ZW5jaWEgZGVsIGFyY2hpdm8gYCUuMjUwcyciCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDMwCittc2dpZCAidGFyZ2V0IGlzIGRpcmVjdG9yeSAtIGNhbm5vdCBza2lwIGNvbnRyb2wgZmlsZSBjaGVjayIKK21zZ3N0ciAiIgorImVsIG9iamV0aXZvIGVzIHVuIGRpcmVjdG9yaW8gLSBubyBzZSBwdWVkZSBvbWl0aXIgbGEgY29tcHJvYmFjacOzbiBkZWwgIgorImZpY2hlcm9cbiIKKyJkZSBjb250cm9sIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQzMQorbXNnaWQgIm5vdCBjaGVja2luZyBjb250ZW50cyBvZiBjb250cm9sIGFyZWEuIgorbXNnc3RyICJubyBzZSBjb21wcm9iYXLDoW4gbG9zIGNvbnRlbmlkb3MgZGVsIMOhcmVhIGRlIGNvbnRyb2wuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQzMgorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnLWRlYjogYnVpbGRpbmcgYW4gdW5rbm93biBwYWNrYWdlIGluICclcycuXG4iCittc2dzdHIgImRwa2ctZGViOiBjb25zdHJ1eWVuZG8gZWwgcGFxdWV0ZSBkZXNjb25vY2lkbyBgJXMnLlxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQzOQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnLWRlYjogYnVpbGRpbmcgcGFja2FnZSBgJXMnIGluIGAlcycuXG4iCittc2dzdHIgImRwa2ctZGViOiBjb25zdHJ1eWVuZG8gZWwgcGFxdWV0ZSBgJXMnIGVuIGAlcycuXG4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDY3IGRwa2ctZGViL2J1aWxkLmM6NTIxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gbWFrZSB0bXBmaWxlIChkYXRhKSIKK21zZ2lkICJmYWlsZWQgdG8gbWFrZSB0ZW1wb3JhcnkgZmlsZSAoJXMpIgorbXNnc3RyICJmYWxsbyBhbCBjcmVhciBlbCBmaWNoZXJvIHRlbXBvcmFsIChkYXRhKSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0NjcgZHBrZy1kZWIvYnVpbGQuYzo0NzAgZHBrZy1kZWIvYnVpbGQuYzo0NzcKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDg1IGRwa2ctZGViL2J1aWxkLmM6NDk0IGRwa2ctZGViL2J1aWxkLmM6NDk5CisjLCBmdXp6eQorI3wgbXNnaWQgImNvbnRyb2wgYXJlYSIKK21zZ2lkICJjb250cm9sIG1lbWJlciIKK21zZ3N0ciAiw6FyZWEgZGUgY29udHJvbCIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0NzAgZHBrZy1kZWIvYnVpbGQuYzo1MjQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byB1bmxpbmsgdG1wZmlsZSAoZGF0YSksICVzIgorbXNnaWQgImZhaWxlZCB0byB1bmxpbmsgdGVtcG9yYXJ5IGZpbGUgKCVzKSwgJXMiCittc2dzdHIgImZhbGxvIGFsIGJvcnJhciBlbCBmaWNoZXJvIHRlbXBvcmFsIChkYXRhKSwgJXMiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDg1IGRwa2ctZGViL2J1aWxkLmM6NTkzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gcmV3aW5kIHRtcGZpbGUgKGRhdGEpIgorbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdGVtcG9yYXJ5IGZpbGUgKCVzKSIKK21zZ3N0ciAiZmFsbG8gYWwgZWZlY3R1YXIgYHJld2luZCcgc29icmUgZWwgZmljaGVybyB0ZW1wb3JhbCAoZGF0YSkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDk0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gZnN0YXQgYXIgbWVtYmVyIGZpbGUgKCVzKSIKK21zZ2lkICJmYWlsZWQgdG8gc3RhdCB0ZW1wb3JhcnkgZmlsZSAoJXMpIgorbXNnc3RyICJmYWxsbyBhbCBoYWNlciDCq2ZzdGF0wrsgZGVsIGZpY2hlcm8gbWllbWJybyDCq2FywrsgKCVzKSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0OTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igd3JpdGluZyBgJXMnIgorbXNnc3RyICJlcnJvciBhbCBlc2NyaWJpciBgJXMnIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjUyMSBkcGtnLWRlYi9idWlsZC5jOjUyNCBkcGtnLWRlYi9idWlsZC5jOjU0NgorIzogZHBrZy1kZWIvYnVpbGQuYzo1NzIgZHBrZy1kZWIvYnVpbGQuYzo1ODAgZHBrZy1kZWIvYnVpbGQuYzo1OTMKKyMsIGZ1enp5CisjfCBtc2dpZCAiYmV0d2VlbiBtZW1iZXJzIgorbXNnaWQgImRhdGEgbWVtYmVyIgorbXNnc3RyICJlbnRyZSBuw7ptZXJvcyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo1NzEgZHBrZy1kZWIvYnVpbGQuYzo1ODAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byB3cml0ZSBmaWxlbmFtZSB0byB0YXIgcGlwZSAoZGF0YSkiCittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIGZpbGVuYW1lIHRvIHRhciBwaXBlICglcykiCittc2dzdHIgImZhbGxvIGFsIGVzY3JpYmlyIGVsIG5vbWJyZSBkZWwgZmljaGVybyBlbiBsYSB0dWJlcsOtYSBkZSB0YXIgKGRhdGEpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjU4NAorbXNnaWQgIjxjb21wcmVzcz4gZnJvbSB0YXIgLWNmIgorbXNnc3RyICI8Y29tcHJpbWlyPiBkZXNkZSB0YXIgLWNmIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6NjEgZHBrZy1kZWIvZXh0cmFjdC5jOjYzCittc2dpZCAic2hlbGwgY29tbWFuZCB0byBtb3ZlIGZpbGVzIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzo3MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBmaWxlIGluICVzIGluICUuMjU1cyIKK21zZ3N0ciAiZmluIGRlIGZpY2hlcm8gaW5lc3BlcmFkbyBlbiAlcyBlbiAlLjI1NXMiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzo3MgorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciByZWFkaW5nICVzIGZyb20gZmlsZSAlLjI1NXMiCittc2dzdHIgImVycm9yIGFsIGxlZXIgJXMgZGVsIGZpY2hlcm8gJS4yNTVzIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTI1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZWFkIGFyY2hpdmUgYCUuMjU1cyciCittc2dzdHIgImZhbGxvIGFsIGxlZXIgZWwgYXJjaGl2byBgJS4yNTVzJyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjEyNworbXNnaWQgImZhaWxlZCB0byBmc3RhdCBhcmNoaXZlIgorbXNnc3RyICJmYWxsbyBhbCBlZmVjdHVhciBgZnN0YXQnIHNvYnJlIGVsIGFyY2hpdm8iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxMzEKKyMsIGZ1enp5CisjfCBtc2dpZCAiYXJjaGl2ZSBoYXMgbm8gZG90IGluIHZlcnNpb24gbnVtYmVyIgorbXNnaWQgImFyY2hpdmUgbWFnaWMgdmVyc2lvbiBudW1iZXIiCittc2dzdHIgImVsIGFyY2hpdm8gbm8gdGllbmUgbmluZ8O6biBwdW50byBlbiBlbCBuw7ptZXJvIGRlIHZlcnNpw7NuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTQzCisjLCBmdXp6eQorI3wgbXNnaWQgImFyY2hpdmUgaGFzIG5vIG5ld2xpbmVzIGluIGhlYWRlciIKK21zZ2lkICJhcmNoaXZlIG1lbWJlciBoZWFkZXIiCittc2dzdHIgImVsIGFyY2hpdm8gbm8gdGllbmUgY2FyYWN0ZXJlcyBkZSBudWV2YSBsw61uZWEgZW4gbGEgY2FiZWNlcmEiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNDgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBwYXJ0IG51bWJlciIKK21zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgYXJjaGl2ZSBoZWFkZXIgbWFnaWMiCittc2dzdHIgImVsIGZpY2hlcm8gYCUuMjUwcycgZXN0w6EgZGHDsWFkbyAtIG7Dum1lcm8gZGUgcGFydGUgZXJyw7NuZW8iCisKKyMgRklYTUU6IENvbW1lbnQgYWJvdXQgZHBrZy1zcGxpdCBtYXkgYmUgbWlzbGVhZGluZy4KKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBub3QgYSBkZWJpYW4gYmluYXJ5IGFyY2hpdmUgKHRyeSBkcGtnLXNwbGl0PykiCittc2dzdHIgImVsIGZpY2hlcm8gYCUuMjUwcycgbm8gZXMgdW4gYXJjaGl2byBiaW5hcmlvIGRlIGRlYmlhbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE1OQorIywgZnV6enkKKyN8IG1zZ2lkICJhcmNoaXZlIGhhcyBubyBkb3QgaW4gdmVyc2lvbiBudW1iZXIiCittc2dpZCAiYXJjaGl2ZSBpbmZvcm1hdGlvbiBoZWFkZXIgbWVtYmVyIgorbXNnc3RyICJlbCBhcmNoaXZvIG5vIHRpZW5lIG5pbmfDum4gcHVudG8gZW4gZWwgbsO6bWVybyBkZSB2ZXJzacOzbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE2MgorbXNnaWQgImFyY2hpdmUgaGFzIG5vIG5ld2xpbmVzIGluIGhlYWRlciIKK21zZ3N0ciAiZWwgYXJjaGl2byBubyB0aWVuZSBjYXJhY3RlcmVzIGRlIG51ZXZhIGzDrW5lYSBlbiBsYSBjYWJlY2VyYSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE2NQorbXNnaWQgImFyY2hpdmUgaGFzIG5vIGRvdCBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAiZWwgYXJjaGl2byBubyB0aWVuZSBuaW5nw7puIHB1bnRvIGVuIGVsIG7Dum1lcm8gZGUgdmVyc2nDs24iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiYXJjaGl2ZSB2ZXJzaW9uICUuMjUwcyBub3QgdW5kZXJzdG9vZCwgZ2V0IG5ld2VyIGRwa2ctZGViIgorbXNnc3RyICIiCisibm8gc2UgZW50aWVuZGUgbGEgdmVyc2nDs24gJS4yNTBzIGRlbCBhcmNoaXZvLCBjb25zaWdhIHVuXG4iCisiZHBrZy1kZWIgbcOhcyBtb2Rlcm5vIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTc5IGRwa2ctZGViL2V4dHJhY3QuYzoyMDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInNraXBwZWQgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ2lkICJza2lwcGVkIGFyY2hpdmUgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ3N0ciAic2Ugc2FsdGEgZWwgZWxlbWVudG8gZGUgJXMiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxOTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgY29udGFpbnMgdW51bmRlcnN0b29kIGRhdGEgbWVtYmVyICUuKnMsIGdpdmluZyB1cCIKK21zZ2lkICJhcmNoaXZlICclLjI1MHMnIGNvbnRhaW5zIG5vdCB1bmRlcnN0b29kIGRhdGEgbWVtYmVyICUuKnMsIGdpdmluZyB1cCIKK21zZ3N0ciAiZWwgZmljaGVybyBgJS4yNTBzJyBjb250aWVuZSB1biBtaWVtYnJvICUuKnMgaW5pbnRlbGlnaWJsZSwgYWJhbmRvbm8iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxOTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgY29udGFpbnMgdHdvIGNvbnRyb2wgbWVtYmVycywgZ2l2aW5nIHVwIgorbXNnaWQgImFyY2hpdmUgJyUuMjUwcycgY29udGFpbnMgdHdvIGNvbnRyb2wgbWVtYmVycywgZ2l2aW5nIHVwIgorbXNnc3RyICJlbCBmaWNoZXJvIGAlLjI1MHMnIGNvbnRpZW5lIGRvcyBtaWVtYnJvcyBkZSBjb250cm9sLCBhYmFuZG9ubyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIxNAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiBuZXcgZGViaWFuIHBhY2thZ2UsIHZlcnNpb24gJXMuXG4iCisjfCAiIHNpemUgJWxkIGJ5dGVzOiBjb250cm9sIGFyY2hpdmU9ICV6aSBieXRlcy5cbiIKK21zZ2lkICIiCisiIG5ldyBkZWJpYW4gcGFja2FnZSwgdmVyc2lvbiAlcy5cbiIKKyIgc2l6ZSAlamQgYnl0ZXM6IGNvbnRyb2wgYXJjaGl2ZT0gJWpkIGJ5dGVzLlxuIgorbXNnc3RyICIiCisiIHBhcXVldGUgZGViaWFuIG51ZXZvLCB2ZXJzacOzbiAlcy5cbiIKKyIgdGFtYcOxbyAlbGQgYnl0ZXM6IGFyY2hpdm8gZGUgY29udHJvbD0gJXppIGJ5dGVzLlxuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjMyCittc2dpZCAiYXJjaGl2ZSBjb250cm9sIG1lbWJlciBzaXplIgorbXNnc3RyICIiCisKKyMgRklYTUU6IGN0cmwgaXMgdGhlIHNhbWUgYXMgYGNvbnRyb2wnPyBzdgorIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIzNQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYXJjaGl2ZSBoYXMgbWFsZm9ybWF0dGVkIGNvbnRyb2wgbGVuZ3RoIGAlcyciCittc2dpZCAiYXJjaGl2ZSBoYXMgbWFsZm9ybWF0dGVkIGNvbnRyb2wgbWVtYmVyIHNpemUgJyVzJyIKK21zZ3N0ciAiZWwgYXJjaGl2byB0aWVuZSB1bmEgbG9uZ2l0dWQgZGUgY29udHJvbCBtYWwgZm9ybWFkYSBgJXMnIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjQyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJza2lwcGVkIG1lbWJlciBkYXRhIGZyb20gJXMiCittc2dpZCAic2tpcHBlZCBhcmNoaXZlIGNvbnRyb2wgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ3N0ciAic2Ugc2FsdGEgZWwgZWxlbWVudG8gZGUgJXMiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNDYKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIgb2xkIGRlYmlhbiBwYWNrYWdlLCB2ZXJzaW9uICVzLlxuIgorI3wgIiBzaXplICVsZCBieXRlczogY29udHJvbCBhcmNoaXZlPSAlemksIG1haW4gYXJjaGl2ZT0gJWxkLlxuIgorbXNnaWQgIiIKKyIgb2xkIGRlYmlhbiBwYWNrYWdlLCB2ZXJzaW9uICVzLlxuIgorIiBzaXplICVqZCBieXRlczogY29udHJvbCBhcmNoaXZlPSAlamQsIG1haW4gYXJjaGl2ZT0gJWpkLlxuIgorbXNnc3RyICIiCisiIHBhcXVldGUgZGViaWFuIGFudGlndW8sIHZlcnNpw7NuICVzLlxuIgorIiB0YW1hw7FvICVsZCBieXRlczogYXJjaGl2byBkZSBjb250cm9sPSAlemksIGFyY2hpdm8gcHJpbmNpcGFsPSAlbGQuXG4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2ctZGViOiBmaWxlIGxvb2tzIGxpa2UgaXQgbWlnaHQgYmUgYW4gYXJjaGl2ZSB3aGljaCBoYXMgYmVlblxuIgorImRwa2ctZGViOiAgICBjb3JydXB0ZWQgYnkgYmVpbmcgZG93bmxvYWRlZCBpbiBBU0NJSSBtb2RlXG4iCittc2dzdHIgIiIKKyJkcGtnLWRlYjogZWwgZmljaGVybyB0aWVuZSBwaW50YSBkZSBzZXIgdW4gYXJjaGl2byBxdWUgaGEgc2lkbyBkYcOxYWRvXG4iCisiZHBrZy1kZWIgICAgIGFsIHNlciB0cmFuc2ZlcmlkbyBlbiBtb2RvIEFTQ0lJXG4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCUuMjU1cycgaXMgbm90IGEgZGViaWFuIGZvcm1hdCBhcmNoaXZlIgorbXNnc3RyICJgJS4yNTVzJyBubyBlcyB1biBhcmNoaXZvIGVuIGZvcm1hdG8gZGViaWFuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjY2Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIHRvIHBpcGUgaW4gY29weSIKK21zZ3N0ciAiZmFsbG8gYWwgZXNjcmliaXIgYSBsYSB0dWJlcsOtYSBlbiBsYSBjb3BpYSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI2OAorbXNnaWQgImZhaWxlZCB0byBjbG9zZSBwaXBlIGluIGNvcHkiCittc2dzdHIgImZhbGxvIGFsIGNlcnJhciBsYSB0dWJlcsOtYSBlbiBsYSBjb3BpYSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI4NAorbXNnaWQgImRhdGEiCittc2dzdHIgImRhdG9zIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzA3Cittc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIGRpcmVjdG9yeSIKK21zZ3N0ciAiZmFsbG8gYWwgY2FtYmlhciBhbCBkaXJlY3RvcmlvIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzEwCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBkaXJlY3RvcnkiCittc2dzdHIgImZhbGxvIGFsIGNyZWFyIGRpcmVjdG9yaW8iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozMTIKK21zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gZGlyZWN0b3J5IGFmdGVyIGNyZWF0aW5nIGl0IgorbXNnc3RyICJmYWxsbyBhbCBjYW1iaWFyIGEgdW4gZGlyZWN0b3JpbyBkZXNwdcOpcyBkZSBjcmVhcmxvIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzIzCittc2dpZCAiPGRlY29tcHJlc3M+IgorbXNnc3RyICI8ZGVzY29tcHJlc2nDs24+IgorCisjIFRPRE8gLSByZXZpc2FyIGNvbnRleHRvCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzI1Cittc2dpZCAicGFzdGUiCittc2dzdHIgImNvcGlhZG8iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozNDIgZHBrZy1kZWIvZXh0cmFjdC5jOjM2MyBkcGtnLWRlYi9leHRyYWN0LmM6NDAyCisjOiBkcGtnLWRlYi9pbmZvLmM6NzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhIC5kZWIgZmlsZW5hbWUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMgbmVjZXNpdGEgdW4gbm9tYnJlIGRlIGZpY2hlcm8gLmRlYiBjb21vIGFyZ3VtZW50byIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjM0NyBkcGtnLWRlYi9leHRyYWN0LmM6NDA2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyItLSVzIG5lZWRzIGEgdGFyZ2V0IGRpcmVjdG9yeS5cbiIKKyJQZXJoYXBzIHlvdSBzaG91bGQgYmUgdXNpbmcgZHBrZyAtLWluc3RhbGwgPyIKK21zZ3N0ciAiIgorIi0tJXMgbmVjZXNpdGEgdW4gZGlyZWN0b3JpbyBkZSBkZXN0aW5vLlxuIgorIsK/QSBsbyBtZWpvciBsbyBxdWUgcXVpZXJlIGhhY2VyIGVzIGRwa2cgLS1pbnN0YWxsPyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjM1MCBkcGtnLWRlYi9leHRyYWN0LmM6NDEwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgYXQgbW9zdCB0d28gYXJndW1lbnRzICguZGViIGFuZCBkaXJlY3RvcnkpIgorbXNnc3RyICItLSVzIHRvbWEgY29tbyBtdWNobyBkb3MgYXJndW1lbnRvcyAoLmRlYiB5IGRpcmVjdG9yaW8pIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzY1CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgb25seSBvbmUgYXJndW1lbnQgKC5kZWIgZmlsZW5hbWUpIgorbXNnc3RyICItLSVzIHRvbWEgc29sYW1lbnRlIHVuIGFyZ3VtZW50byAoZmljaGVybyAuZGViKSIKKworIzogZHBrZy1kZWIvaW5mby5jOjYzCittc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIGAvJyBmb3IgY2xlYW51cCIKK21zZ3N0ciAiZmFsbG8gYWwgY2FtYmlhciBhIGAvJyBwYXJhIGxpbXBpZXphIgorCisjIEZJWE1FOiBUcmFkdWNjacOzbiBkZSAnc3RhdCcKKyM6IGRwa2ctZGViL2luZm8uYzoxMDYKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImNhbm5vdCBzdGF0IGZpbGUgJyVzJyIKK21zZ2lkICJjb250cm9sIGZpbGUgJyVzJyIKK21zZ3N0ciAibm8gc2UgcHVlZGUgZWZlY3R1YXIgYHN0YXQnIGVsIGZpY2hlcm8gYCVzJyIKKworIzogZHBrZy1kZWIvaW5mby5jOjExMAorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnLWRlYjogYCUuMjU1cycgY29udGFpbnMgbm8gY29udHJvbCBjb21wb25lbnQgYCUuMjU1cydcbiIKK21zZ3N0ciAiZHBrZy1kZWI6IGAlLjI1NXMnIG5vIGNvbnRpZW5lIG5pbmfDum4gY29tcG9uZW50ZSBkZSBjb250cm9sIGAlLjI1NXMnXG4iCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAib3BlbiBjb21wb25lbnQgYCUuMjU1cycgKGluICUuMjU1cykgZmFpbGVkIGluIGFuIHVuZXhwZWN0ZWQgd2F5IgorbXNnc3RyICIiCisibGEgYXBlcnR1cmEgZGVsIGNvbXBvbmVudGUgYCUuMjU1cycgKGRlbnRybyBkZSAlLjI1NXMpXG4iCisiZmFsbMOzIGRlIGZvcm1hIGluZXNwZXJhZGEiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJWQgcmVxdWVzdGVkIGNvbnRyb2wgY29tcG9uZW50IGlzIG1pc3NpbmciCittc2dpZF9wbHVyYWwgIiVkIHJlcXVlc3RlZCBjb250cm9sIGNvbXBvbmVudHMgYXJlIG1pc3NpbmciCittc2dzdHJbMF0gImZhbHRhICVkIGNvbXBvbmVudGUgZGUgY29udHJvbCBzb2xpY2l0YWRvIgorbXNnc3RyWzFdICJmYWx0YW4gJWQgY29tcG9uZW50ZXMgZGUgY29udHJvbCBzb2xpY2l0YWRvcyIKKworIzogZHBrZy1kZWIvaW5mby5jOjEzOSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NDI0CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzY2FuIGRpcmVjdG9yeSBgJS4yNTVzJyIKK21zZ3N0ciAibm8gc2UgcHVlZGUgZXhhbWluYXIgZWwgZGlyZWN0b3JpbyBgJS4yNTVzJyIKKworIzogZHBrZy1kZWIvaW5mby5jOjE0OAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc3RhdCBgJS4yNTVzJyAoaW4gYCUuMjU1cycpIgorbXNnc3RyICJubyBzZSBwdWVkZSBlZmVjdHVhciBgc3RhdCcgc29icmUgYCUuMjU1cycgKGVuIGAlLjI1NXMnKSIKKworIzogZHBrZy1kZWIvaW5mby5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgb3BlbiBgJS4yNTVzJyAoaW4gYCUuMjU1cycpIgorbXNnc3RyICJubyBzZSBwdWVkZSBhYnJpciBgJS4yNTVzJyAoZW4gYCUuMjU1cycpIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTY3IGRwa2ctZGViL2luZm8uYzoxODUgZHBrZy1kZWIvaW5mby5jOjE5OQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCBgJS4yNTVzJyAoaW4gYCUuMjU1cycpIgorbXNnc3RyICJmYWxsbyBhbCBsZWVyIGAlLjI1NXMnIChlbiBgJS4yNTVzJykiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxNzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiAlN2xkIGJ5dGVzLCAlNWQgbGluZXMgICAlYyAgJS0yMC4xMjdzICUuMTI3c1xuIgorbXNnaWQgIiAlN2pkIGJ5dGVzLCAlNWQgbGluZXMgICAlYyAgJS0yMC4xMjdzICUuMTI3c1xuIgorbXNnc3RyICIgJTdsZCBieXRlcywgJTVkIGzDrW5lYXMgICVjICAlLTIwLjEyN3MgJS4xMjdzXG4iCisKKyM6IGRwa2ctZGViL2luZm8uYzoxNzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAgICBub3QgYSBwbGFpbiBmaWxlICAgICAgICAgICUuMjU1c1xuIgorbXNnc3RyICIgICAgIG5vIGVzIHVuIGZpY2hlcm8gbm9ybWFsICAgJS4yNTVzXG4iCisKKyM6IGRwa2ctZGViL2luZm8uYzoxODYKK21zZ2lkICIobm8gYGNvbnRyb2wnIGZpbGUgaW4gY29udHJvbCBhcmNoaXZlISlcbiIKK21zZ3N0ciAiKMKhbm8gaGF5IG5pbmfDum4gZmljaGVybyBgY29udHJvbCcgZW4gZWwgYXJjaGl2byBkZSBjb250cm9sISlcbiIKKworIzogZHBrZy1kZWIvaW5mby5jOjIyMgorbXNnaWQgImNvdWxkIG5vdCBvcGVuIHRoZSBgY29udHJvbCcgY29tcG9uZW50IgorbXNnc3RyICJubyBzZSBwdWVkZSBhYnJpciBlbCBjb21wb25lbnRlIGBjb250cm9sJyIKKworIzogZHBrZy1kZWIvaW5mby5jOjI2MQorbXNnaWQgImZhaWxlZCBkdXJpbmcgcmVhZCBvZiBgY29udHJvbCcgY29tcG9uZW50IgorbXNnc3RyICJmYWxsbyBkdXJhbnRlIGxhIGxlY3R1cmEgZGUgbGEgY29tcG9uZW50ZSBgY29udHJvbCciCisKKyM6IGRwa2ctZGViL2luZm8uYzoyNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyB0aGUgJyVzJyBjb21wb25lbnQiCittc2dzdHIgImVycm9yIGFsIGNlcnJhciBlbCBjb21wb25lbnRlIGAlcyciCisKKyM6IGRwa2ctZGViL2luZm8uYzoyNzgKK21zZ2lkICJFcnJvciBpbiBmb3JtYXQiCittc2dzdHIgIkVycm9yIGVuIGVsIGZvcm1hdG8iCisKKyM6IGRwa2ctZGViL2luZm8uYzozMjgKK21zZ2lkICItLWNvbnRlbnRzIHRha2VzIGV4YWN0bHkgb25lIGFyZ3VtZW50IgorbXNnc3RyICItLWNvbnRlbnRzIHRvbWEgZXhhY3RhbWVudGUgdW4gYXJndW1lbnRvIgorCisjIFNpIGFsZ3VpZW4gbWUgZGEgdW5hIGJ1ZW5hIHRyYWR1Y2Npw7NuLCBsbyBjYW1iaW8uIHN2CisjOiBkcGtnLWRlYi9tYWluLmM6NTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuIGAlcycgcGFja2FnZSBhcmNoaXZlIGJhY2tlbmQgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiVmVyc2nDs24gYCVzJyBkZWwgc2lzdGVtYSBkZSBnZXN0acOzbiBkZSBwYXF1ZXRlcyBkZSBEZWJpYW4gYCVzJy5cbiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjczCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiQ29tbWFuZHM6XG4iCisjfCAiICAtYnwtLWJ1aWxkIDxkaXJlY3Rvcnk+IFs8ZGViPl0gICBCdWlsZCBhbiBhcmNoaXZlLlxuIgorI3wgIiAgLWN8LS1jb250ZW50cyA8ZGViPiAgICAgICAgICAgICAgTGlzdCBjb250ZW50cy5cbiIKKyN8ICIgIC1JfC0taW5mbyA8ZGViPiBbPGNmaWxlPiAuLi5dICAgIFNob3cgaW5mbyB0byBzdGRvdXQuXG4iCisjfCAiICAtV3wtLXNob3cgPGRlYj4gICAgICAgICAgICAgICAgICBTaG93IGluZm9ybWF0aW9uIG9uIHBhY2thZ2UocylcbiIKKyN8ICIgIC1mfC0tZmllbGQgPGRlYj4gWzxjZmllbGQ+IC4uLl0gIFNob3cgZmllbGQocykgdG8gc3Rkb3V0LlxuIgorI3wgIiAgLWV8LS1jb250cm9sIDxkZWI+IFs8ZGlyZWN0b3J5Pl0gRXh0cmFjdCBjb250cm9sIGluZm8uXG4iCisjfCAiICAteHwtLWV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gICBFeHRyYWN0IGZpbGVzLlxuIgorI3wgIiAgLVh8LS12ZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PiAgRXh0cmFjdCAmIGxpc3QgZmlsZXMuXG4iCisjfCAiICAtLWZzeXMtdGFyZmlsZSA8ZGViPiAgICAgICAgICAgICBPdXRwdXQgZmlsZXN5c3RlbSB0YXJmaWxlLlxuIgorI3wgIlxuIgorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1ifC0tYnVpbGQgPGRpcmVjdG9yeT4gWzxkZWI+XSAgIEJ1aWxkIGFuIGFyY2hpdmUuXG4iCisiICAtY3wtLWNvbnRlbnRzIDxkZWI+ICAgICAgICAgICAgICBMaXN0IGNvbnRlbnRzLlxuIgorIiAgLUl8LS1pbmZvIDxkZWI+IFs8Y2ZpbGU+IC4uLl0gICAgU2hvdyBpbmZvIHRvIHN0ZG91dC5cbiIKKyIgIC1XfC0tc2hvdyA8ZGViPiAgICAgICAgICAgICAgICAgIFNob3cgaW5mb3JtYXRpb24gb24gcGFja2FnZShzKVxuIgorIiAgLWZ8LS1maWVsZCA8ZGViPiBbPGNmaWVsZD4gLi4uXSAgU2hvdyBmaWVsZChzKSB0byBzdGRvdXQuXG4iCisiICAtZXwtLWNvbnRyb2wgPGRlYj4gWzxkaXJlY3Rvcnk+XSBFeHRyYWN0IGNvbnRyb2wgaW5mby5cbiIKKyIgIC14fC0tZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PiAgIEV4dHJhY3QgZmlsZXMuXG4iCisiICAtWHwtLXZleHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+ICBFeHRyYWN0ICYgbGlzdCBmaWxlcy5cbiIKKyIgIC1SfC0tcmF3LWV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEV4dHJhY3QgY29udHJvbCBpbmZvIGFuZCBmaWxlcy5cbiIKKyIgIC0tZnN5cy10YXJmaWxlIDxkZWI+ICAgICAgICAgICAgIE91dHB1dCBmaWxlc3lzdGVtIHRhcmZpbGUuXG4iCisiXG4iCittc2dzdHIgIiIKKyLDk3JkZW5lczpcbiIKKyIgIC1ifC0tYnVpbGQgPGRpcmVjdG9yaW8+IFs8ZGViPl0gICAgQ29uc3RydXllIHVuIGFyY2hpdm8uXG4iCisiICAtY3wtLWNvbnRlbnRzIDxkZWI+ICAgICAgICAgICAgICAgIExpc3RhIGVsIGNvbnRlbmlkby5cbiIKKyIgIC1JfC0taW5mbyA8ZGViPiBbPGNmaWNoZXJvPi4uLl0gICAgTXVlc3RyYSBpbmZvcm1hY2nDs24gZW4gbGEgc2FsaWRhICIKKyJlc3TDoW5kYXIuXG4iCisiICAtV3wtLXNob3cgPGRlYj4gICAgICAgICAgICAgICAgICAgIE11ZXN0cmEgaW5mb3JtYWNpw7NuIHNvYnJlIGVsL2xvc1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXF1ZXRlKHMpLlxuIgorIiAgLWZ8LS1maWVsZCA8ZGViPiBbPGNjYW1wbz4uLi5dICAgICBNdWVzdHJhIGVsL2xvcyBjYW1wby9zIGVuIGxhIHNhbGlkYVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlc3TDoW5kYXIuXG4iCisiICAtZXwtLWNvbnRyb2wgPGRlYj4gWzxkaXJlY3RvcmlvPl0gIEV4dHJhZSBsYSBpbmZvcm1hY2nDs24gZGUgY29udHJvbFxuIgorIiAgLXh8LS1leHRyYWN0IDxkZWI+IDxkaXJlY3RvcmlvPiAgICBFeHRyYWUgbG9zIGZpY2hlcm9zLlxuIgorIiAgLVh8LS12ZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3Jpbz4gICBFeHRyYWUgeSBsaXN0YSBsb3MgZmljaGVyb3MuXG4iCisiICAtLWZzeXMtdGFyZmlsZSA8ZGViPiAgICAgICAgICAgICAgIFByb2R1Y2UgZWwgYXJjaGl2byB0YXIgZGVsIHNpc3RlbWEgZGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmljaGVyb3MuXG4iCisKKyM6IGRwa2ctZGViL21haW4uYzo5MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiPGRlYj4gaXMgdGhlIGZpbGVuYW1lIG9mIGEgRGViaWFuIGZvcm1hdCBhcmNoaXZlLlxuIgorIjxjZmlsZT4gaXMgdGhlIG5hbWUgb2YgYW4gYWRtaW5pc3RyYXRpdmUgZmlsZSBjb21wb25lbnQuXG4iCisiPGNmaWVsZD4gaXMgdGhlIG5hbWUgb2YgYSBmaWVsZCBpbiB0aGUgbWFpbiBgY29udHJvbCcgZmlsZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIjxkZWI+IGVzIGVsIG5vbWJyZSBkZSBmaWNoZXJvIGRlIHVuIGFyY2hpdm8gZW4gZm9ybWF0byBEZWJpYW4uXG4iCisiPGNmaWNoZXJvPiBlcyBlbCBub21icmUgZGUgdW4gY29tcG9uZW50ZSBkZSBmaWNoZXJvIGFkbWluaXN0cmF0aXZvLlxuIgorIjxjY2FtcG8+IGVzIGVsIG5vbWJyZSBkZSB1biBjYW1wbyBlbiBlbCBmaWNoZXJvIGRlIGBjb250cm9sJyBwcmluY2lwYWwuXG4iCisKKyM6IGRwa2ctZGViL21haW4uYzo5OQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIk9wdGlvbnM6XG4iCisjfCAiICAtLXNob3dmb3JtYXQ9PGZvcm1hdD4gICAgICAgICAgICBVc2UgYWx0ZXJuYXRpdmUgZm9ybWF0IGZvciAtLXNob3cuXG4iCisjfCAiICAtRCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbmFibGUgZGVidWdnaW5nIG91dHB1dC5cbiIKKyN8ICIgIC0tb2xkLCAtLW5ldyAgICAgICAgICAgICAgICAgICAgIFNlbGVjdCBhcmNoaXZlIGZvcm1hdC5cbiIKKyN8ICIgIC0tbm9jaGVjayAgICAgICAgICAgICAgICAgICAgICAgIFN1cHByZXNzIGNvbnRyb2wgZmlsZSBjaGVjayAoYnVpbGQgIgorI3wgImJhZFxuIgorI3wgIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWNrYWdlcykuXG4iCisjfCAiICAteiMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTZXQgdGhlIGNvbXByZXNzaW9uIGxldmVsIHdoZW4gIgorI3wgImJ1aWxkaW5nLlxuIgorI3wgIiAgLVo8dHlwZT4gICAgICAgICAgICAgICAgICAgICAgICAgU2V0IHRoZSBjb21wcmVzc2lvbiB0eXBlIHVzZWQgd2hlbiAiCisjfCAiYnVpbGRpbmcuXG4iCisjfCAiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFsbG93ZWQgdHlwZXM6IGd6aXAsIHh6LCBiemlwMiwgIgorI3wgImx6bWEsIG5vbmUuXG4iCisjfCAiXG4iCittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLXNob3dmb3JtYXQ9PGZvcm1hdD4gICAgICAgICAgICBVc2UgYWx0ZXJuYXRpdmUgZm9ybWF0IGZvciAtLXNob3cuXG4iCisiICAtdiwgLS12ZXJib3NlICAgICAgICAgICAgICAgICAgICBFbmFibGUgdmVyYm9zZSBvdXRwdXQuXG4iCisiICAtRCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbmFibGUgZGVidWdnaW5nIG91dHB1dC5cbiIKKyIgIC0tb2xkLCAtLW5ldyAgICAgICAgICAgICAgICAgICAgIFNlbGVjdCBhcmNoaXZlIGZvcm1hdC5cbiIKKyIgIC0tbm9jaGVjayAgICAgICAgICAgICAgICAgICAgICAgIFN1cHByZXNzIGNvbnRyb2wgZmlsZSBjaGVjayAoYnVpbGQgYmFkXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhY2thZ2VzKS5cbiIKKyIgIC16IyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNldCB0aGUgY29tcHJlc3Npb24gbGV2ZWwgd2hlbiBidWlsZGluZy5cbiIKKyIgIC1aPHR5cGU+ICAgICAgICAgICAgICAgICAgICAgICAgIFNldCB0aGUgY29tcHJlc3Npb24gdHlwZSB1c2VkIHdoZW4gIgorImJ1aWxkaW5nLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBbGxvd2VkIHR5cGVzOiBnemlwLCB4eiwgYnppcDIsIGx6bWEsICIKKyJub25lLlxuIgorIlxuIgorbXNnc3RyICIiCisiT3BjaW9uZXM6XG4iCisiICAtLXNob3dmb3JtYXQ9PGZvcm1hdG8+ICAgVXRpbGl6YSB1biBmb3JtYXRvIGFsdGVybmF0aXZvIHBhcmEgLS1zaG93LlxuIgorIiAgLUQgICAgICAgICAgICAgICAgICAgICAgIEFjdGl2YSBsYSBzYWxpZGEgZGUgZGVwdXJhY2nDs24uXG4iCisiICAtLW9sZCwgLS1uZXcgICAgICAgICAgICAgU2VsZWNjaW9uYSBlbCBmb3JtYXRvIGRlbCBhcmNoaXZvLlxuIgorIiAgLS1ub2NoZWNrICAgICAgICAgICAgICAgIFN1cHJpbWUgbGEgdmVyaWZpY2FjacOzbiBkZWwgZmljaGVybyBkZSBjb250cm9sXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNvbnN0cnV5ZSBwYXF1ZXRlcyBlcnLDs25lb3MpLlxuIgorIiAgLXojICAgICAgICAgICAgICAgICAgICAgIEVzdGFibGVjZSBlbCBuaXZlbCBkZSBjb21wcmVzacOzbiBhbCBjb25zdHJ1aXIuXG4iCisiICAtWjx0aXBvPiAgICAgICAgICAgICAgICAgRXN0YWJsZWNlIGVsIHRpcG8gZGUgY29tcHJlc2nDs24gYSB1c2FyIGN1YW5kb1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlIGNvbnN0cnV5ZSB1biBwYXF1ZXRlLiBMb3MgdmFsb3JlcyBwZXJtaXRpZG9zICIKKyJzb246XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgwqtnemlwwrssIMKreHoswrsgwqtiemlwMsK7LCDCq2x6bWHCuywgwqtub25lwrsgKG5pbmd1bm8pXG4iCisiXG4iCisKKyM6IGRwa2ctZGViL21haW4uYzoxMjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIlVzZSBgZHBrZycgdG8gaW5zdGFsbCBhbmQgcmVtb3ZlIHBhY2thZ2VzIGZyb20geW91ciBzeXN0ZW0sIG9yXG4iCisiYGRzZWxlY3QnIG9yIGBhcHRpdHVkZScgZm9yIHVzZXItZnJpZW5kbHkgcGFja2FnZSBtYW5hZ2VtZW50LiAgUGFja2FnZXNcbiIKKyJ1bnBhY2tlZCB1c2luZyBgZHBrZy1kZWIgLS1leHRyYWN0JyB3aWxsIGJlIGluY29ycmVjdGx5IGluc3RhbGxlZCAhXG4iCittc2dzdHIgIiIKKyJcbiIKKyJVdGlsaWNlIMKrZHBrZ8K7IHBhcmEgaW5zdGFsYXIgbyBlbGltaW5hciBwYXF1ZXRlcyBkZSBzdSBzaXN0ZW1hLCBvIFxuIgorIsKrZHNlbGVjdMK7IG8gwqthcHRpdHVkZcK7IHNpIHF1aWVyZSB1dGlsaXphciB1bmEgaGVycmFtaWVudGEgZGUgZ2VzdGnDs24gXG4iCisiZGUgcGFxdWV0ZXMgZsOhY2lsIGRlIHVzYXIuIEF2aXNvOiDCoWxvcyBwYXF1ZXRlcyBxdWUgZGVzZW1wYXF1ZXRlIGNvblxuIgorIsKrZHBrZy1kZWIgLS1leHRyYWN0wrsgbm8gZXN0YXLDoW4gaW5zdGFsYWRvcyBjb3JyZWN0YW1lbnRlIVxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTMyCittc2dpZCAiIgorIlR5cGUgZHBrZy1kZWIgLS1oZWxwIGZvciBoZWxwIGFib3V0IG1hbmlwdWxhdGluZyAqLmRlYiBmaWxlcztcbiIKKyJUeXBlIGRwa2cgLS1oZWxwIGZvciBoZWxwIGFib3V0IGluc3RhbGxpbmcgYW5kIGRlaW5zdGFsbGluZyBwYWNrYWdlcy4iCittc2dzdHIgIiIKKyJFc2NyaWJhIGRwa2ctZGViIC0taGVscCBwYXJhIG9idGVuZXIgYXl1ZGEgc29icmUgbWFuaXB1bGFjacOzbiBkZSBhcmNoaXZvcyAuIgorImRlYjtcbiIKKyJFc2NyaWJhIGRwa2cgLS1oZWxwIHBhcmEgb2J0ZW5lciBheXVkYSBzb2JyZSBpbnN0YWxhciB5IGRlc2luc3RhbGFyIHBhcXVldGVzLiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjE0OAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGludGVnZXIgZm9yIC0lYzogJyUuMjUwcyciCittc2dzdHIgImVudGVybyBpbnbDoWxpZG8gcGFyYSAtLSVjOiBgJS4yNTBzJyIKKworIzogZHBrZy1kZWIvbWFpbi5jOjE1MQorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGNvbXByZXNzaW9uIGxldmVsIGZvciAtJWM6ICVsZCciCittc2dzdHIgIm5pdmVsIGRlIGNvbXByZXNpw7NuIGludsOhbGlkbyBwYXJhIC0tJWM6ICVsZCIKKworIzogZHBrZy1kZWIvbWFpbi5jOjE2MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGNvbXByZXNzaW9uIHR5cGUgYCVzJyEiCittc2dzdHIgIsKhdGlwbyBkZSBjb21wcmVzacOzbiBgJXMnIGRlc2Nvbm9jaWRvISIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6NTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIGRpZ2l0IChjb2RlICVkKSBpbiAlcyIKK21zZ3N0ciAiZWwgZmljaGVybyBgJS4yNTBzJyBlc3TDoSBkYcOxYWRvIC0gZMOtZ2l0byBlcnLDs25lbyAoY8OzZGlnbyAlZCkgZW4gJXMiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjYwCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtICUuMjUwcyBtaXNzaW5nIgorbXNnc3RyICJlbCBmaWNoZXJvIGAlLjI1MHMnIGVzdMOhIGRhw7FhZG8gLSBmYWx0YSAlLjI1MHNcIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gbWlzc2luZyBuZXdsaW5lIGFmdGVyICUuMjUwcyIKK21zZ3N0ciAiIgorImVsIGZpY2hlcm8gYCUuMjUwcycgZXN0w6EgZGHDsWFkbyAtIGZhbHRhIHVuYSBudWV2YSBsw61uZWEgZGVzcHXDqXMgZGUgJS4yNTBzIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzo4OSBkcGtnLXNwbGl0L21haW4uYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcmVhZGluZyAlLjI1MHMiCittc2dzdHIgImVycm9yIGFsIGxlZXIgJS4yNTBzIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIG1hZ2ljIGF0IGVuZCBvZiBmaXJzdCBoZWFkZXIiCittc2dzdHIgIiIKKyJlbCBmaWNoZXJvIGAlLjI1MHMnIGVzdMOhIGRhw7FhZG8gLSBtYWdpYSBlcnLDs25lYSBhbCBmaW5hbCBkZSBsYVxuIgorInByaW1lcmEgY2FiZWNlcmEiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjExMworIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgcGFkZGluZyBjaGFyYWN0ZXIgKGNvZGUgJWQpIgorbXNnc3RyICIiCisiZWwgZmljaGVybyBgJS4yNTBzJyBlc3TDoSBkYcOxYWRvIC0gY2Fyw6FjdGVyIGRlIHJlbGxlbm8gZXJyw7NuZW8gKGPDs2RpZ28gJWQpIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gbnVsbHMgaW4gaW5mbyBzZWN0aW9uIgorbXNnc3RyICIiCisiZWwgZmljaGVybyBgJS4yNTBzJyBlc3TDoSBkYcOxYWRvIC0gaGF5IG51bG9zIGVuIGxhIHNlY2Npw7NuIGRlIGluZm9ybWFjacOzbiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTIyCittc2dpZCAiZm9ybWF0IHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICJuw7ptZXJvIGRlIGZvcm1hdG8gZGUgdmVyc2nDs24iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGZvcm1hdCB2ZXJzaW9uIGAlLjI1MHMnIC0geW91IG5lZWQgYSBuZXdlciBkcGtnLXNwbGl0IgorbXNnc3RyICIiCisiZWwgZmljaGVybyBgJS4yNTBzJyB0aWVuZSBmb3JtYXRvIHZlcnNpw7NuIGAlLjI1MHMnIC0gbmVjZXNpdGEgdW4gZHBrZy1zcGxpdCAiCisibcOhcyBtb2Rlcm5vIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMjcKK21zZ2lkICJwYWNrYWdlIG5hbWUiCittc2dzdHIgIm5vbWJyZSBkZSBwYXF1ZXRlIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMjgKK21zZ2lkICJwYWNrYWdlIHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICJuw7ptZXJvIGRlIHZlcnNpw7NuIGRlIHBhcXVldGUiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyOQorbXNnaWQgInBhY2thZ2UgZmlsZSBNRDUgY2hlY2tzdW0iCittc2dzdHIgInN1bWEgZGUgY29tcHJvYmFjacOzbiBNRDUgZGVsIGFyY2hpdm8gZGUgcGFxdWV0ZSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTMyCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBNRDUgY2hlY2tzdW0gYCUuMjUwcyciCittc2dzdHIgImVsIGZpY2hlcm8gYCUuMjUwcycgZXN0w6EgZGHDsWFkbyAtIHN1bWEgTUQ1IGAlLjI1MHMnIGVycsOzbmVhIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMzQgZHBrZy1zcGxpdC9pbmZvLmM6MTM1Cittc2dpZCAiYXJjaGl2ZSB0b3RhbCBzaXplIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEzNiBkcGtnLXNwbGl0L2luZm8uYzoxMzcKKyMsIGZ1enp5CisjfCBtc2dpZCAicGFydCBvZmZzZXQiCittc2dpZCAiYXJjaGl2ZSBwYXJ0IG9mZnNldCIKK21zZ3N0ciAic2VwYXJhY2nDs24gZGUgbGEgcGFydGUiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEzOQorIywgZnV6enkKKyN8IG1zZ2lkICJwYXJ0IG51bWJlcnMiCittc2dpZCAiYXJjaGl2ZSBwYXJ0IG51bWJlcnMiCittc2dzdHIgIm7Dum1lcm8gZGUgcGFydGVzIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIG5vIHNsYXNoIGJldHdlZW4gcGFydCBudW1iZXJzIgorbXNnaWQgImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIG5vIHNsYXNoIGJldHdlZW4gYXJjaGl2ZSBwYXJ0IG51bWJlcnMiCittc2dzdHIgIiIKKyJlbCBmaWNoZXJvIGAlLjI1MHMnIGVzdMOhIGRhw7FhZG8gLSBubyBoYXkgdW5hIGJhcnJhIGVudHJlIGxvcyBuw7ptZXJvc1xuIgorImRlIHBhcnRlIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDUKKyMsIGZ1enp5CisjfCBtc2dpZCAibnVtYmVyIG9mIHBhcnRzIgorbXNnaWQgIm51bWJlciBvZiBhcmNoaXZlIHBhcnRzIgorbXNnc3RyICJuw7ptZXJvIGRlIHBhcnRlcyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTQ3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgbnVtYmVyIG9mIHBhcnRzIgorbXNnaWQgImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBudW1iZXIgb2YgYXJjaGl2ZSBwYXJ0cyIKK21zZ3N0ciAiZWwgZmljaGVybyBgJS4yNTBzJyBlc3TDoSBkYcOxYWRvIC0gZWwgbsO6bWVybyBkZSBwYXJ0ZXMgc2UgZXJyw7NuZW8iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE0OQorIywgZnV6enkKKyN8IG1zZ2lkICJwYXJ0cyBudW1iZXIiCittc2dpZCAiYXJjaGl2ZSBwYXJ0cyBudW1iZXIiCittc2dzdHIgInBhcnRlIG7Dum1lcm8iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE1MQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIHBhcnQgbnVtYmVyIgorbXNnaWQgImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBhcmNoaXZlIHBhcnQgbnVtYmVyIgorbXNnc3RyICJlbCBmaWNoZXJvIGAlLjI1MHMnIGVzdMOhIGRhw7FhZG8gLSBuw7ptZXJvIGRlIHBhcnRlIGVycsOzbmVvIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNTcKKyMsIGZ1enp5CisjfCBtc2dpZCAicGFja2FnZSBuYW1lIgorbXNnaWQgInBhY2thZ2UgYXJjaGl0ZWN0dXJlIgorbXNnc3RyICJub21icmUgZGUgcGFxdWV0ZSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTY2CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBtYWdpYyBhdCBlbmQgb2Ygc2Vjb25kIGhlYWRlciIKK21zZ3N0ciAiIgorImVsIGZpY2hlcm8gYCUuMjUwcycgZXN0w6EgZGHDsWFkbyAtIG1hZ2lhIGVycsOzbmVhIGFsIGZpbmFsIGRlXG4iCisibGEgc2VndW5kYSBjYWJlY2VyYSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTY4CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIHNlY29uZCBtZW1iZXIgaXMgbm90IGRhdGEgbWVtYmVyIgorbXNnc3RyICIiCisiZWwgZmljaGVybyBgJS4yNTBzJyBlc3TDoSBkYcOxYWRvIC0gZWwgc2VndW5kbyBtaWVtYnJvIG5vIGVzIHVuIG1pZW1icm9cbiIKKyJkZSBkYXRvcyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTc0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIHdyb25nIG51bWJlciBvZiBwYXJ0cyBmb3IgcXVvdGVkIHNpemVzIgorbXNnc3RyICIiCisiZWwgZmljaGVybyBgJS4yNTBzJyBlc3TDoSBkYcOxYWRvIC0gbsO6bWVybyBlcXVpdm9jYWRvIGRlIHBhcnRlcyBwYXJhIGxvc1xuIgorInRhbWHDsW9zIGluZGljYWRvcyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTc4CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIHNpemUgaXMgd3JvbmcgZm9yIHF1b3RlZCBwYXJ0IG51bWJlciIKK21zZ3N0ciAiIgorImVsIGZpY2hlcm8gYCUuMjUwcycgZXN0w6EgZGHDsWFkbyAtIGVsIHRhbWHDsW8gZXN0w6EgZXF1aXZvY2FkbyBwb3IgZWxcbiIKKyJuw7ptZXJvIGRlIHBhcnRlIGluZGljYWRvIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxODQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZzdGF0IHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibm8gc2UgcHVlZGUgZWZlY3R1YXIgYHN0YXQnIHNvYnJlIGVsIGZpY2hlcm8gcGFydGUgYCUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE4OQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSB0b28gc2hvcnQiCittc2dzdHIgImVsIGZpY2hlcm8gYCUuMjUwcycgZXN0w6EgZGHDsWFkbyAtIGRlbWFzaWFkbyBjb3J0byIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjAyIGRwa2ctc3BsaXQvaW5mby5jOjI0OQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgb3BlbiBhcmNoaXZlIHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibm8gc2UgcHVlZGUgYWJyaXIgZWwgZmljaGVybyBwYXJ0ZSBkZSBhcmNoaXZvIGAlLjI1MHMnIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBub3QgYW4gYXJjaGl2ZSBwYXJ0IgorbXNnc3RyICJlbCBmaWNoZXJvIGAlLjI1MHMnIG5vIGVzIHVuYSBwYXJ0ZSBkZSBhcmNoaXZvIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyMDkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIlczpcbiIKKyN8ICIgICAgUGFydCBmb3JtYXQgdmVyc2lvbjogICAgICAgICAgICAlc1xuIgorI3wgIiAgICBQYXJ0IG9mIHBhY2thZ2U6ICAgICAgICAgICAgICAgICVzXG4iCisjfCAiICAgICAgICAuLi4gdmVyc2lvbjogICAgICAgICAgICAgICAgJXNcbiIKKyN8ICIgICAgICAgIC4uLiBNRDUgY2hlY2tzdW06ICAgICAgICAgICAlc1xuIgorI3wgIiAgICAgICAgLi4uIGxlbmd0aDogICAgICAgICAgICAgICAgICVsdSBieXRlc1xuIgorI3wgIiAgICAgICAgLi4uIHNwbGl0IGV2ZXJ5OiAgICAgICAgICAgICVsdSBieXRlc1xuIgorI3wgIiAgICBQYXJ0IG51bWJlcjogICAgICAgICAgICAgICAgICAgICVkLyVkXG4iCisjfCAiICAgIFBhcnQgbGVuZ3RoOiAgICAgICAgICAgICAgICAgICAgJXppIGJ5dGVzXG4iCisjfCAiICAgIFBhcnQgb2Zmc2V0OiAgICAgICAgICAgICAgICAgICAgJWx1IGJ5dGVzXG4iCisjfCAiICAgIFBhcnQgZmlsZSBzaXplICh1c2VkIHBvcnRpb24pOiAgJWx1IGJ5dGVzXG4iCisjfCAiXG4iCittc2dpZCAiIgorIiVzOlxuIgorIiAgICBQYXJ0IGZvcm1hdCB2ZXJzaW9uOiAgICAgICAgICAgICVzXG4iCisiICAgIFBhcnQgb2YgcGFja2FnZTogICAgICAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiB2ZXJzaW9uOiAgICAgICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIGFyY2hpdGVjdHVyZTogICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gTUQ1IGNoZWNrc3VtOiAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiBsZW5ndGg6ICAgICAgICAgICAgICAgICAlamQgYnl0ZXNcbiIKKyIgICAgICAgIC4uLiBzcGxpdCBldmVyeTogICAgICAgICAgICAlamQgYnl0ZXNcbiIKKyIgICAgUGFydCBudW1iZXI6ICAgICAgICAgICAgICAgICAgICAlZC8lZFxuIgorIiAgICBQYXJ0IGxlbmd0aDogICAgICAgICAgICAgICAgICAgICVqZCBieXRlc1xuIgorIiAgICBQYXJ0IG9mZnNldDogICAgICAgICAgICAgICAgICAgICVqZCBieXRlc1xuIgorIiAgICBQYXJ0IGZpbGUgc2l6ZSAodXNlZCBwb3J0aW9uKTogICVqZCBieXRlc1xuIgorIlxuIgorbXNnc3RyICIiCisiJXM6XG4iCisiICAgIFZlcnNpw7NuIGRlIGZvcm1hdG8gZGUgcGFydGU6ICAgICVzXG4iCisiICAgIFBhcnRlIGRlIHBhcXVldGU6ICAgICAgICAgICAgICAgJXNcbiIKKyIgICAgICAgICAuLi4gdmVyc2nDs246ICAgICAgICAgICAgICAgJXNcbiIKKyIgICAgICAgICAuLi4gc3VtYSBNRDU6ICAgICAgICAgICAgICAlc1xuIgorIiAgICAgICAgIC4uLiBsb25naXR1ZDogICAgICAgICAgICAgICVsdSBieXRlc1xuIgorIiAgICAgICAgIC4uLiB0cm9jZWFkbyBjYWRhOiAgICAgICAgICVsdSBieXRlc1xuIgorIiAgICBQYXJ0ZSBuw7ptZXJvOiAgICAgICAgICAgICAgICAgICAlZC8lZFxuIgorIiAgICBMb25naXR1ZCBkZSBwYXJ0ZTogICAgICAgICAgICAgICV6aSBieXRlc1xuIgorIiAgICBEZXNwbGF6YW1pZW50byBkZSBwYXJ0ZTogICAgICAgICVsdSBieXRlc1xuIgorIiAgICBUYW1hw7FvIGRlIGZpY2hlcm8gZGUgcGFydGVcbiIKKyIgICAgICAgIChwb3JjacOzbiB1dGlsaXphZGEpOiAgICAgICAgJWx1IGJ5dGVzXG4iCisiXG4iCisKKyMgU2UgcmVmaWVyZSBhIGxhIHNlY2Npw7NuLgorIzogZHBrZy1zcGxpdC9pbmZvLmM6MjI1CisjLCBmdXp6eQorI3wgbXNnaWQgIjx1bmtub3duPiIKK21zZ2N0eHQgImFyY2hpdGVjdHVyZSIKK21zZ2lkICI8dW5rbm93bj4iCittc2dzdHIgIjxkZXNjb25vY2lkYT4iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjI0NCBkcGtnLXNwbGl0L2pvaW4uYzoxMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyByZXF1aXJlcyBvbmUgb3IgbW9yZSBwYXJ0IGZpbGUgYXJndW1lbnRzIgorbXNnc3RyICItLSVzIHJlcXVpZXJlIHVubyBvIG3DoXMgZmljaGVyb3MgcGFydGUgY29tbyBhcmd1bWVudG9zIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJXMnIGlzIG5vdCBhbiBhcmNoaXZlIHBhcnRcbiIKK21zZ3N0ciAiZWwgZmljaGVybyBgJXMnIG5vIGVzIHVuYSBwYXJ0ZSBkZSBhcmNoaXZvXG4iCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjQ0CisjLCBjLWZvcm1hdAorbXNnaWQgIlB1dHRpbmcgcGFja2FnZSAlcyB0b2dldGhlciBmcm9tICVkIHBhcnQ6ICIKK21zZ2lkX3BsdXJhbCAiUHV0dGluZyBwYWNrYWdlICVzIHRvZ2V0aGVyIGZyb20gJWQgcGFydHM6ICIKK21zZ3N0clswXSAiSnVudGFuZG8gZWwgcGFxdWV0ZSAlcyBkZXNkZSAlZCBwYXJ0ZTogIgorbXNnc3RyWzFdICJKdW50YW5kbyBlbCBwYXF1ZXRlICVzIGRlc2RlICVkIHBhcnRlczogIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBvdXRwdXQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibm8gc2UgcHVlZGUgYWJyaXIgZWwgZmljaGVybyBkZSBzYWxpZGEgYCUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjU3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byAocmUpb3BlbiBpbnB1dCBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5vIHNlIHB1ZWRlIChyZSlhYnJpciBlbCBmaWNoZXJvIHBhcnRlIGRlIGVudHJhZGEgYCUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjU4CisjLCBmdXp6eQorI3wgbXNnaWQgIlNraXBwaW5nIGRlc2VsZWN0ZWQgcGFja2FnZSAlcy5cbiIKK21zZ2lkICJza2lwcGluZyBzcGxpdCBwYWNrYWdlIGhlYWRlciIKK21zZ3N0ciAiT21pdGllbmRvIGVsIHBhcXVldGUgbm8gc2VsZWNjaW9uYWRvICVzLlxuIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1OQorIywgZnV6enkKKyN8IG1zZ2lkICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0OiAiCisjfCBtc2dpZF9wbHVyYWwgIlB1dHRpbmcgcGFja2FnZSAlcyB0b2dldGhlciBmcm9tICVkIHBhcnRzOiAiCittc2dpZCAic3BsaXQgcGFja2FnZSBwYXJ0IgorbXNnc3RyICJKdW50YW5kbyBlbCBwYXF1ZXRlICVzIGRlc2RlICVkIHBhcnRlOiAiCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjY5IGRwa2ctc3BsaXQvc3BsaXQuYzoyMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZG9uZVxuIgorbXNnc3RyICJoZWNob1xuIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo4NQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlcyBgJS4yNTBzJyBhbmQgYCUuMjUwcycgYXJlIG5vdCBwYXJ0cyBvZiB0aGUgc2FtZSBmaWxlIgorbXNnc3RyICJsb3MgZmljaGVyb3MgYCUuMjUwcycgeSBgJS4yNTBzJyBubyBzb24gcGFydGVzIGRlbCBtaXNtbyBmaWNoZXJvIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo5MAorIywgYy1mb3JtYXQKK21zZ2lkICJ0aGVyZSBhcmUgc2V2ZXJhbCB2ZXJzaW9ucyBvZiBwYXJ0ICVkIC0gYXQgbGVhc3QgYCUuMjUwcycgYW5kIGAlLjI1MHMnIgorbXNnc3RyICJoYXkgdmFyaWFzIHZlcnNpb25lcyBkZSBsYSBwYXJ0ZSAlZCAtIGFsIG1lbm9zIGAlLjI1MHMnIHkgYCUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjEyOAorIywgYy1mb3JtYXQKK21zZ2lkICJwYXJ0ICVkIGlzIG1pc3NpbmciCittc2dzdHIgImZhbHRhIGxhIHBhcnRlICVkIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo0NworIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIHNwbGl0L2pvaW4gdG9vbDsgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiaGVycmFtaWVudGEgZGUgZGl2aXNpw7NuL3VuacOzbiBkZSBEZWJpYW4gYCVzJzsgdmVyc2nDs24gJXMuXG4iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIkNvcHlyaWdodCAoQykgMTk5NC0xOTk2IElhbiBKYWNrc29uLlxuIgorbXNnc3RyICJDb3B5cmlnaHQgKEMpIDE5OTQtMTk5NiBJYW4gSmFja3Nvbi5cbiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6NjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLXN8LS1zcGxpdCA8ZmlsZT4gWzxwcmVmaXg+XSAgICAgU3BsaXQgYW4gYXJjaGl2ZS5cbiIKKyIgIC1qfC0tam9pbiA8cGFydD4gPHBhcnQ+IC4uLiAgICAgIEpvaW4gcGFydHMgdG9nZXRoZXIuXG4iCisiICAtSXwtLWluZm8gPHBhcnQ+IC4uLiAgICAgICAgICAgICBEaXNwbGF5IGluZm8gYWJvdXQgYSBwYXJ0LlxuIgorIiAgLWF8LS1hdXRvIC1vIDxjb21wbGV0ZT4gPHBhcnQ+ICAgQXV0by1hY2N1bXVsYXRlIHBhcnRzLlxuIgorIiAgLWx8LS1saXN0cSAgICAgICAgICAgICAgICAgICAgICAgTGlzdCB1bm1hdGNoZWQgcGllY2VzLlxuIgorIiAgLWR8LS1kaXNjYXJkIFs8ZmlsZW5hbWU+IC4uLl0gICAgRGlzY2FyZCB1bm1hdGNoZWQgcGllY2VzLlxuIgorIlxuIgorbXNnc3RyICIiCisiw5NyZGVuZXM6XG4iCisiICAtc3wtLXNwbGl0IDxmaWNoZXJvPiBbPHByZWZpam8+XSBUcm9jZWEgdW4gYXJjaGl2by5cbiIKKyIgIC1qfC0tam9pbiA8cGFydGU+IDxwYXJ0ZT4gLi4uICAgIFVuZSBwYXJ0ZXMuXG4iCisiICAtSXwtLWluZm8gPHBhcnRlPiAuLi4gICAgICAgICAgICBNdWVzdHJhIGluZm9ybWFjacOzbiBzb2JyZSB1bmEgcGFydGUuXG4iCisiICAtYXwtLWF1dG8gLW8gPGNvbXBsZXRhPiA8cGFydGU+ICBBdXRvLWFjdW11bGEgcGFydGVzLlxuIgorIiAgLWx8LS1saXN0cSAgICAgICAgICAgICAgICAgICAgICAgTGlzdGEgdHJvem9zIHNpbiBjb3JyZXNwb25kZW5jaWEuXG4iCisiICAtZHwtLWRpc2NhcmQgWzxmaWNoZXJvPiAuLi5dICAgICBEZXNjYXJ0YSB0cm96b3Mgc2luXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb3JyZXNwb25kZW5jaWEuXG4iCisiXG4iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjgyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiT3B0aW9uczpcbiIKKyN8ICIgIC0tZGVwb3RkaXIgPGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLyVzLlxuIgorI3wgIiAgLVN8LS1wYXJ0c2l6ZSA8c2l6ZT4gICAgICAgICAgICAgSW4gS2lCLCBmb3IgLXMgKGRlZmF1bHQgaXMgNDUwKS5cbiIKKyN8ICIgIC1vfC0tb3V0cHV0IDxmaWxlPiAgICAgICAgICAgICAgIEZvciAtaiAoZGVmYXVsdCBpcyA8cGFja2FnZT4tPHZlcnNpb24+LiIKKyN8ICJkZWIpLlxuIgorI3wgIiAgLVF8LS1ucHF1aWV0ICAgICAgICAgICAgICAgICAgICAgQmUgcXVpZXQgd2hlbiAtYSBpcyBub3QgYSBwYXJ0LlxuIgorI3wgIiAgLS1tc2RvcyAgICAgICAgICAgICAgICAgICAgICAgICAgR2VuZXJhdGUgOC4zIGZpbGVuYW1lcy5cbiIKKyN8ICJcbiIKKyN8ICJFeGl0IHN0YXR1czogMCA9IE9LOyAgMSA9IC1hIGlzIG5vdCBhIHBhcnQ7ICAyID0gdHJvdWJsZSFcbiIKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tZGVwb3RkaXIgPGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLyVzLlxuIgorIiAgLVN8LS1wYXJ0c2l6ZSA8c2l6ZT4gICAgICAgICAgICAgSW4gS2lCLCBmb3IgLXMgKGRlZmF1bHQgaXMgNDUwKS5cbiIKKyIgIC1vfC0tb3V0cHV0IDxmaWxlPiAgICAgICAgICAgICAgIEZpbGVuYW1lLCBmb3IgLWogKGRlZmF1bHQgaXNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhY2thZ2U+Xzx2ZXJzaW9uPl88YXJjaD4uZGViKS5cbiIKKyIgIC1RfC0tbnBxdWlldCAgICAgICAgICAgICAgICAgICAgIEJlIHF1aWV0IHdoZW4gLWEgaXMgbm90IGEgcGFydC5cbiIKKyIgIC0tbXNkb3MgICAgICAgICAgICAgICAgICAgICAgICAgIEdlbmVyYXRlIDguMyBmaWxlbmFtZXMuXG4iCisiXG4iCittc2dzdHIgIiIKKyJPcGNpb25lczpcbiIKKyIgICAtLWRlcG90ZGlyIDxkaXJlY3RvcmlvPiAgICAgICAgIFV0aWxpemEgPGRpcmVjdG9yaW8+IGVuIGx1Z2FyIGRlICVzLyVzLlxuIgorIiAgIC1TfC0tcGFydHNpemUgPHRhbWHDsW8+ICAgICAgICAgIEVuIEtiLCBwYXJhIC1zIChwb3Igb21pc2nDs24gZXMgNDUwKS5cbiIKKyIgICAtb3wtLW91dHB1dCA8ZmljaGVybz4gICAgICAgICAgIFBhcmEgLWogKHBvciBvbWlzacOzbiBlc1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhcXVldGU+LTx2ZXJzacOzbj4uZGViKVxuIgorIiAgIC1RfC0tbnBxdWlldCAgICAgICAgICAgICAgICAgICAgU2lsZW5jaW9zbyBjdWFuZG8gLWEgbm8gZXMgdW5hIHBhcnRlLlxuIgorIiAgIC0tbXNkb3MgICAgICAgICAgICAgICAgICAgICAgICAgR2VuZXJhIG5vbWJyZXMgZGUgZmljaGVyb3MgZW4gZm9ybWF0byAiCisiOC4zLlxuIgorIlxuIgorIkVzdGFkbyBkZSBzYWxpZGE6IDAgPSBPSzsgIDEgPSAtYSBubyBlcyB1bmEgcGFydGU7ICAyID0gwqFwcm9ibGVtYXMhXG4iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjkyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJFeGl0IHN0YXR1czpcbiIKKyIgIDAgPSBva1xuIgorIiAgMSA9IHdpdGggLS1hdXRvLCBmaWxlIGlzIG5vdCBhIHBhcnRcbiIKKyIgIDIgPSB0cm91YmxlXG4iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6MTAzCittc2dpZCAiVHlwZSBkcGtnLXNwbGl0IC0taGVscCBmb3IgaGVscC4iCittc2dzdHIgIkVzY3JpYmEgZHBrZy1zcGxpdCAtLWhlbHAgcGFyYSBvYnRlbmVyIGF5dWRhLiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6MTE1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGZpbGUgaW4gJS4yNTBzIgorbXNnc3RyICJmaW4gZGUgZmljaGVybyBpbmVzcGVyYWRvIGVuICUuMjUwcyIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6MTI2Cittc2dpZCAicGFydCBzaXplIGlzIGZhciB0b28gbGFyZ2Ugb3IgaXMgbm90IHBvc2l0aXZlIgorbXNnc3RyICJlbCB0YW1hw7FvIGRlIGxhIHBhcnRlIGVzIGRlbWFzaWFkbyBncmFuZGUgbyBubyBlcyBwb3NpdGl2byIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6MTMwCisjLCBjLWZvcm1hdAorbXNnaWQgInBhcnQgc2l6ZSBtdXN0IGJlIGF0IGxlYXN0ICVkIEtpQiAodG8gYWxsb3cgZm9yIGhlYWRlcikiCittc2dzdHIgIiIKKyJlbCB0YW1hw7FvIGRlIGxhIHBhcnRlIGRlYmUgc2VyIGFsIG1lbm9zICVkIEtpQiAocGFyYSBhZG1pdGlyIHVuYSBjYWJlY2VyYSkiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzo5MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBkZXBvdCBkaXJlY3RvcnkgYCUuMjUwcyciCittc2dzdHIgIm5vIHNlIHB1ZWRlIGxlZXIgZWwgZGlyZWN0b3JpbyBkZSBkZXDDs3NpdG8gYCUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxMzQKK21zZ2lkICItLWF1dG8gcmVxdWlyZXMgdGhlIHVzZSBvZiB0aGUgLS1vdXRwdXQgb3B0aW9uIgorbXNnc3RyICItLWF1dG8gcmVxdWllcmUgZWwgdXNvIGRlIGxhIG9wY2nDs24gLS1vdXRwdXQiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxMzYKK21zZ2lkICItLWF1dG8gcmVxdWlyZXMgZXhhY3RseSBvbmUgcGFydCBmaWxlIGFyZ3VtZW50IgorbXNnc3RyICItLWF1dG8gcmVxdWllcmUgZXhhY3RhbWVudGUgdW4gZmljaGVybyBwYXJ0ZSBjb21vIGFyZ3VtZW50byIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE0MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5vIHNlIHB1ZWRlIGxlZXIgZWwgZmljaGVybyBwYXJ0ZSBgJS4yNTBzJyIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE0MworIywgYy1mb3JtYXQKK21zZ2lkICJGaWxlIGAlLjI1MHMnIGlzIG5vdCBwYXJ0IG9mIGEgbXVsdGlwYXJ0IGFyY2hpdmUuXG4iCittc2dzdHIgIkVsIGZpY2hlcm8gYCUuMjUwcycgbm8gZXMgcGFydGUgZGUgdW4gYXJjaGl2byBtdWx0aXBhcnRlLlxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTc5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW9wZW4gcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJubyBzZSBwdWVkZSByZWFicmlyIGVsIGZpY2hlcm8gcGFydGUgYCUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxODIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gbmV3IGRlcG90IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5vIHNlIHB1ZWRlIGFicmlyIGVsIG51ZXZvIGZpY2hlcm8gZGUgZGVww7NzaXRvIGAlLjI1MHMnIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTg0Cittc2dpZCAiZXh0cmFjdGluZyBzcGxpdCBwYXJ0IgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbmFtZSBuZXcgZGVwb3QgZmlsZSBgJS4yNTBzJyB0byBgJS4yNTBzJyIKK21zZ3N0ciAibm8gc2UgcHVlZGUgcmVub21icmFyIGVsIG51ZXZvIGZpY2hlcm8gZGUgZGVww7NzaXRvIGAlLjI1MHMnIGEgYCUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFydCAlZCBvZiBwYWNrYWdlICVzIGZpbGVkIChzdGlsbCB3YW50ICIKK21zZ3N0ciAiUGFydGUgJWQgZGVsIHBhcXVldGUgJXMgYXJjaGl2YWRhICh0b2RhdsOtYSBzZSBuZWNlc2l0YSAiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyMDAKK21zZ2lkICIgYW5kICIKK21zZ3N0ciAiIHkgIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjE0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkZWxldGUgdXNlZC11cCBkZXBvdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJubyBzZSBwdWVkZSBib3JyYXIgZmljaGVybyBkZSBkZXDDs3NpdG8gdXNhZG8gYCUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyMzUKK21zZ2lkICJKdW5rIGZpbGVzIGxlZnQgYXJvdW5kIGluIHRoZSBkZXBvdCBkaXJlY3Rvcnk6XG4iCittc2dzdHIgIlF1ZWRhbiBmaWNoZXJvcyBiYXN1cmEgZW4gZWwgZGlyZWN0b3JpbyBkZSBkZXDDs3NpdG86XG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNDAgZHBrZy1zcGxpdC9xdWV1ZS5jOjI2OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBgJS4yNTBzJyIKK21zZ3N0ciAibm8gc2UgcHVlZGUgZWZlY3R1YXIgYHN0YXQnIHNvYnJlIGAlLjI1MHMnIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjQzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIgJXMgKCVsdSBieXRlcylcbiIKK21zZ2lkICIgJXMgKCVqZCBieXRlcylcbiIKK21zZ3N0ciAiICVzICglbHUgYnl0ZXMpXG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICVzIChub3QgYSBwbGFpbiBmaWxlKVxuIgorbXNnc3RyICIgJXMgKG5vIGVzIHVuIGZpY2hlcm8gbm9ybWFsKVxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjUwCittc2dpZCAiUGFja2FnZXMgbm90IHlldCByZWFzc2VtYmxlZDpcbiIKK21zZ3N0ciAiUGFxdWV0ZXMgdG9kYXbDrWEgbm8gcmVlbnNhbWJsYWRvczpcbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI1OAorIywgYy1mb3JtYXQKK21zZ2lkICIgUGFja2FnZSAlczogcGFydChzKSAiCittc2dzdHIgIiBQYXF1ZXRlICVzOiBwYXJ0ZS9zICIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI3MQorIywgYy1mb3JtYXQKK21zZ2lkICJwYXJ0IGZpbGUgYCUuMjUwcycgaXMgbm90IGEgcGxhaW4gZmlsZSIKK21zZ3N0ciAiZWwgZmljaGVybyBwYXJ0ZSBgJS4yNTBzJyBubyBlcyB1biBmaWNoZXJvIG5vcm1hbCIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI3OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiKHRvdGFsICVsdSBieXRlcylcbiIKK21zZ2lkICIodG90YWwgJWpkIGJ5dGVzKVxuIgorbXNnc3RyICIodG90YWwgJWx1IGJ5dGVzKVxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MzA0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkaXNjYXJkIGAlLjI1MHMnIgorbXNnc3RyICJubyBzZSBwdWVkZSBkZXNjYXJ0YXIgYCUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzozMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGVsZXRlZCAlcy5cbiIKK21zZ3N0ciAiRGVzaW5zdGFsYWRvICVzLlxuIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6NzAgZHBrZy1zcGxpdC9zcGxpdC5jOjc2IGRwa2ctc3BsaXQvc3BsaXQuYzo4MQorIywgZnV6enkKKyN8IG1zZ2lkICJkcGtnLWRlYiBmaWVsZCBleHRyYWN0aW9uIgorbXNnaWQgInBhY2thZ2UgZmllbGQgdmFsdWUgZXh0cmFjdGlvbiIKK21zZ3N0ciAiZXh0cmFjY2nDs24gZGUgY2FtcG9zIGRwa2ctZGViIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTMxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIHNvdXJjZSBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJubyBzZSBwdWVkZSBhYnJpciBlbCBmaWNoZXJvIGZ1ZW50ZSBgJS4yNTBzJyIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjEzMworbXNnaWQgInVuYWJsZSB0byBmc3RhdCBzb3VyY2UgZmlsZSIKK21zZ3N0ciAibm8gc2UgcHVlZGUgZWZlY3R1YXIgYHN0YXQnIHNvYnJlIGVsIGZpY2hlcm8gZnVlbnRlIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTM1CisjLCBjLWZvcm1hdAorbXNnaWQgInNvdXJjZSBmaWxlIGAlLjI1MHMnIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgImVsIGZpY2hlcm8gZnVlbnRlIGAlLjI1MHMnIG5vIGVzIHVuIGZpY2hlcm8gbm9ybWFsIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTUzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0OiAiCisjfCBtc2dpZF9wbHVyYWwgIlB1dHRpbmcgcGFja2FnZSAlcyB0b2dldGhlciBmcm9tICVkIHBhcnRzOiAiCittc2dpZCAiU3BsaXR0aW5nIHBhY2thZ2UgJXMgaW50byAlZCBwYXJ0OiAiCittc2dpZF9wbHVyYWwgIlNwbGl0dGluZyBwYWNrYWdlICVzIGludG8gJWQgcGFydHM6ICIKK21zZ3N0clswXSAiSnVudGFuZG8gZWwgcGFxdWV0ZSAlcyBkZXNkZSAlZCBwYXJ0ZTogIgorbXNnc3RyWzFdICJKdW50YW5kbyBlbCBwYXF1ZXRlICVzIGRlc2RlICVkIHBhcnRlczogIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTkzCittc2dpZCAiIgorIkhlYWRlciBpcyB0b28gbG9uZywgbWFraW5nIHBhcnQgdG9vIGxvbmcuIFlvdXIgcGFja2FnZSBuYW1lIG9yIHZlcnNpb25cbiIKKyJudW1iZXJzIG11c3QgYmUgZXh0cmFvcmRpbmFyaWx5IGxvbmcsIG9yIHNvbWV0aGluZy4gR2l2aW5nIHVwLlxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoyNDkKK21zZ2lkICItLXNwbGl0IG5lZWRzIGEgc291cmNlIGZpbGVuYW1lIGFyZ3VtZW50IgorbXNnc3RyICItLXNwbGl0IG5lY2VzaXRhIHVuIG5vbWJyZSBkZSBmaWNoZXJvIGZ1ZW50ZSBjb21vIGFyZ3VtZW50byIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjI1MgorbXNnaWQgIi0tc3BsaXQgdGFrZXMgYXQgbW9zdCBhIHNvdXJjZSBmaWxlbmFtZSBhbmQgZGVzdGluYXRpb24gcHJlZml4IgorbXNnc3RyICIiCisiLS1zcGxpdCB0b21hIGNvbW8gbXVjaG8gdW4gbm9tYnJlIGRlIGZpY2hlcm8gZnVlbnRlIHkgdW4gcHJlZmlqbyBkZSBkZXN0aW5vIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6ODQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAtMjAwMiBXaWNoZXJ0IEFra2VybWFuLlxuIgorIkNvcHlyaWdodCAoQykgMjAwOS0yMDEwIFJhcGhhZWwgSGVydHpvZy5cbiIKK21zZ3N0ciAiIgorIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAtMjAwMiBXaWNoZXJ0IEFra2VybWFuLlxuIgorIkNvcHlyaWdodCAoQykgMjAwOS0yMDEwIFJhcGhhZWwgSGVydHpvZy5cbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEwMQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSA8Y29tbWFuZD5cbiIKKyN8ICJcbiIKKyN8ICJDb21tYW5kczpcbiIKKyN8ICIgIC0taW5zdGFsbCA8bGluaz4gPG5hbWU+IDxwYXRoPiA8cHJpb3JpdHk+XG4iCisjfCAiICAgIFstLXNsYXZlIDxsaW5rPiA8bmFtZT4gPHBhdGg+XSAuLi5cbiIKKyN8ICIgICAgICAgICAgICAgICAgICAgICAgICAgICBhZGQgYSBncm91cCBvZiBhbHRlcm5hdGl2ZXMgdG8gdGhlIHN5c3RlbS5cbiIKKyN8ICIgIC0tcmVtb3ZlIDxuYW1lPiA8cGF0aD4gICByZW1vdmUgPHBhdGg+IGZyb20gdGhlIDxuYW1lPiBncm91cCAiCisjfCAiYWx0ZXJuYXRpdmUuXG4iCisjfCAiICAtLXJlbW92ZS1hbGwgPG5hbWU+ICAgICAgcmVtb3ZlIDxuYW1lPiBncm91cCBmcm9tIHRoZSBhbHRlcm5hdGl2ZXMgIgorI3wgInN5c3RlbS5cbiIKKyN8ICIgIC0tYXV0byA8bmFtZT4gICAgICAgICAgICBzd2l0Y2ggdGhlIG1hc3RlciBsaW5rIDxuYW1lPiB0byBhdXRvbWF0aWMgIgorI3wgIm1vZGUuXG4iCisjfCAiICAtLWRpc3BsYXkgPG5hbWU+ICAgICAgICAgZGlzcGxheSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgPG5hbWU+IGdyb3VwLlxuIgorI3wgIiAgLS1xdWVyeSA8bmFtZT4gICAgICAgICAgIG1hY2hpbmUgcGFyc2VhYmxlIHZlcnNpb24gb2YgLS1kaXNwbGF5ICIKKyN8ICI8bmFtZT4uXG4iCisjfCAiICAtLWxpc3QgPG5hbWU+ICAgICAgICAgICAgZGlzcGxheSBhbGwgdGFyZ2V0cyBvZiB0aGUgPG5hbWU+IGdyb3VwLlxuIgorI3wgIiAgLS1jb25maWcgPG5hbWU+ICAgICAgICAgIHNob3cgYWx0ZXJuYXRpdmVzIGZvciB0aGUgPG5hbWU+IGdyb3VwIGFuZCBhc2sgIgorI3wgInRoZVxuIgorI3wgIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzZXIgdG8gc2VsZWN0IHdoaWNoIG9uZSB0byB1c2UuXG4iCisjfCAiICAtLXNldCA8bmFtZT4gPHBhdGg+ICAgICAgc2V0IDxwYXRoPiBhcyBhbHRlcm5hdGl2ZSBmb3IgPG5hbWU+LlxuIgorI3wgIiAgLS1hbGwgICAgICAgICAgICAgICAgICAgIGNhbGwgLS1jb25maWcgb24gYWxsIGFsdGVybmF0aXZlcy5cbiIKKyN8ICJcbiIKKyN8ICI8bGluaz4gaXMgdGhlIHN5bWxpbmsgcG9pbnRpbmcgdG8gJXMvPG5hbWU+LlxuIgorI3wgIiAgKGUuZy4gL3Vzci9iaW4vcGFnZXIpXG4iCisjfCAiPG5hbWU+IGlzIHRoZSBtYXN0ZXIgbmFtZSBmb3IgdGhpcyBsaW5rIGdyb3VwLlxuIgorI3wgIiAgKGUuZy4gcGFnZXIpXG4iCisjfCAiPHBhdGg+IGlzIHRoZSBsb2NhdGlvbiBvZiBvbmUgb2YgdGhlIGFsdGVybmF0aXZlIHRhcmdldCBmaWxlcy5cbiIKKyN8ICIgIChlLmcuIC91c3IvYmluL2xlc3MpXG4iCisjfCAiPHByaW9yaXR5PiBpcyBhbiBpbnRlZ2VyOyBvcHRpb25zIHdpdGggaGlnaGVyIG51bWJlcnMgaGF2ZSBoaWdoZXIgIgorI3wgInByaW9yaXR5IGluXG4iCisjfCAiICBhdXRvbWF0aWMgbW9kZS5cbiIKKyN8ICJcbiIKKyN8ICJPcHRpb25zOlxuIgorI3wgIiAgLS1hbHRkaXIgPGRpcmVjdG9yeT4gICAgIGNoYW5nZSB0aGUgYWx0ZXJuYXRpdmVzIGRpcmVjdG9yeS5cbiIKKyN8ICIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICBjaGFuZ2UgdGhlIGFkbWluaXN0cmF0aXZlIGRpcmVjdG9yeS5cbiIKKyN8ICIgIC0tc2tpcC1hdXRvICAgICAgICAgICAgICBza2lwIHByb21wdCBmb3IgYWx0ZXJuYXRpdmVzIGNvcnJlY3RseSAiCisjfCAiY29uZmlndXJlZFxuIgorI3wgIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGluIGF1dG9tYXRpYyBtb2RlIChyZWxldmFudCBmb3IgLS1jb25maWcgIgorI3wgIm9ubHkpXG4iCisjfCAiICAtLXZlcmJvc2UgICAgICAgICAgICAgICAgdmVyYm9zZSBvcGVyYXRpb24sIG1vcmUgb3V0cHV0LlxuIgorI3wgIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHF1aWV0IG9wZXJhdGlvbiwgbWluaW1hbCBvdXRwdXQuXG4iCisjfCAiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyN8ICIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC0taW5zdGFsbCA8bGluaz4gPG5hbWU+IDxwYXRoPiA8cHJpb3JpdHk+XG4iCisiICAgIFstLXNsYXZlIDxsaW5rPiA8bmFtZT4gPHBhdGg+XSAuLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBhZGQgYSBncm91cCBvZiBhbHRlcm5hdGl2ZXMgdG8gdGhlIHN5c3RlbS5cbiIKKyIgIC0tcmVtb3ZlIDxuYW1lPiA8cGF0aD4gICByZW1vdmUgPHBhdGg+IGZyb20gdGhlIDxuYW1lPiBncm91cCBhbHRlcm5hdGl2ZS5cbiIKKyIgIC0tcmVtb3ZlLWFsbCA8bmFtZT4gICAgICByZW1vdmUgPG5hbWU+IGdyb3VwIGZyb20gdGhlIGFsdGVybmF0aXZlcyAiCisic3lzdGVtLlxuIgorIiAgLS1hdXRvIDxuYW1lPiAgICAgICAgICAgIHN3aXRjaCB0aGUgbWFzdGVyIGxpbmsgPG5hbWU+IHRvIGF1dG9tYXRpYyBtb2RlLlxuIgorIiAgLS1kaXNwbGF5IDxuYW1lPiAgICAgICAgIGRpc3BsYXkgaW5mb3JtYXRpb24gYWJvdXQgdGhlIDxuYW1lPiBncm91cC5cbiIKKyIgIC0tcXVlcnkgPG5hbWU+ICAgICAgICAgICBtYWNoaW5lIHBhcnNlYWJsZSB2ZXJzaW9uIG9mIC0tZGlzcGxheSA8bmFtZT4uXG4iCisiICAtLWxpc3QgPG5hbWU+ICAgICAgICAgICAgZGlzcGxheSBhbGwgdGFyZ2V0cyBvZiB0aGUgPG5hbWU+IGdyb3VwLlxuIgorIiAgLS1nZXQtc2VsZWN0aW9ucyAgICAgICAgIGxpc3QgbWFzdGVyIGFsdGVybmF0aXZlIG5hbWVzIGFuZCB0aGVpciBzdGF0dXMuXG4iCisiICAtLXNldC1zZWxlY3Rpb25zICAgICAgICAgcmVhZCBhbHRlcm5hdGl2ZSBzdGF0dXMgZnJvbSBzdGFuZGFyZCBpbnB1dC5cbiIKKyIgIC0tY29uZmlnIDxuYW1lPiAgICAgICAgICBzaG93IGFsdGVybmF0aXZlcyBmb3IgdGhlIDxuYW1lPiBncm91cCBhbmQgYXNrICIKKyJ0aGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2VyIHRvIHNlbGVjdCB3aGljaCBvbmUgdG8gdXNlLlxuIgorIiAgLS1zZXQgPG5hbWU+IDxwYXRoPiAgICAgIHNldCA8cGF0aD4gYXMgYWx0ZXJuYXRpdmUgZm9yIDxuYW1lPi5cbiIKKyIgIC0tYWxsICAgICAgICAgICAgICAgICAgICBjYWxsIC0tY29uZmlnIG9uIGFsbCBhbHRlcm5hdGl2ZXMuXG4iCisiXG4iCittc2dzdHIgIiIKKyJNb2RvIGRlIHVzbzogJXMgWzxvcGNpw7NuPiAuLi5dIDxvcmRlbj5cbiIKKyJcbiIKKyLDk3JkZW5lczpcbiIKKyIgIC0taW5zdGFsbCA8ZW5sYWNlPiA8bm9tYnJlPiA8cnV0YT4gPHByaW9yaWRhZD5cbiIKKyIgICAgWy0tc2xhdmUgPGVubGFjZT4gPG5vbWJyZT4gPHJ1dGE+XSAuLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGHDsWFkZSB1biBncnVwbyBkZSBhbHRlcm5hdGl2YXMgYWwgc2lzdGVtYS5cbiIKKyIgIC0tcmVtb3ZlIDxub21icmU+IDxydXRhPiAgIGVsaW1pbmEgPHJ1dGE+IGRlbCBncnVwbyBkZSBhbHRlcm5hdGl2YXMgIgorIjxub21icmU+LlxuIgorIiAgLS1yZW1vdmUtYWxsIDxub21icmU+ICAgICAgZWxpbWluYXIgZWwgZ3J1cG8gPG5vbWJyZT4gZGVsIHNpc3RlbWEgZGUgIgorImFsdGVybmF0aXZhcy5cbiIKKyIgIC0tYXV0byA8bm9tYnJlPiAgICAgICAgICAgIGNhbWJpYSBlbiBlbmxhY2UgbWFlc3RybyBkZSA8bm9tYnJlPiBhIG1vZG8gIgorImF1dG9tw6F0aWNvLlxuIgorIiAgLS1kaXNwbGF5IDxub21icmU+ICAgICAgICAgbXVlc3RyYSBpbmZvcm1hY2nDs24gZGVsIGdydXBvIDxub21icmU+LlxuIgorIiAgLS1saXN0IDxub21icmU+ICAgICAgICAgICAgbXVlc3RyYSB0b2RvcyBsb3MgZGVzdGlub3MgZGVsIGdydXBvIDxub21icmU+LlxuIgorIiAgLS1jb25maWcgPG5vbWJyZT4gICAgICAgICAgbXVlc3RyYSBsYXMgYWx0ZXJuYXRpdmFzIHBhcmEgZWwgZ3J1cG8gPG5vbWJyZT4gIgorInkgbGUgcGlkZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWwgdXN1YXJpbyBzZWxlY2Npb25hciBsYSBxdWUgcXVpZXJlIHV0aWxpemFyLlxuIgorIiAgLS1zZXQgPG5vbWJyZT4gPHJ1dGE+ICAgICAgY29uZmlndXJhIDxydXRhPiBjb21vIHVuYSBhbHRlcm5hdGl2YSBwYXJhICIKKyI8bm9tYnJlPi5cbiIKKyIgIC0tYWxsICAgICAgICAgICAgICAgICAgICAgIGxsYW1hIC0tY29uZmlnIHBhcmEgdG9kYXMgbGFzIGFsdGVybmF0aXZhcy5cbiIKKyJcbiIKKyI8ZW5sYWNlPiBlcyBlbCBlbmxhY2Ugc2ltYsOzbGljbyBxdWUgYXB1bnRhIGEgJXMvPG5vbWJyZT4uXG4iCisiICAocC5lai4gL3Vzci9iaW4vcGFnZXIpXG4iCisiPG5vbWJyZT4gZXMgZWwgbm9tYnJlIHByaW5jaXBhbCBwYXJhIGVzdGUgZ3J1cG8gZGUgZW5sYWNlcy5cbiIKKyIgIChwLmVqLiBwYWdlcilcbiIKKyI8cnV0YT4gZXMgbGEgdWJpY2FjacOzbiBwYXJhIGxvcyBmaWNoZXJvcyBvYmpldGl2byBkZSBsYXMgYWx0ZXJuYXRpdmFzXG4iCisiICAocC5lai4gL3Vzci9iaW4vbGVzcylcbiIKKyI8cHJpb3JpZGFkPiBlcyB1biB2YWxvciBlbnRlcm8sIGxhcyBvcGNpb25lcyBjb24gZWwgdmFsb3IgbcOhcyBhbHRvIHRpZW5lbiAiCisibcOhcyBcbiIKKyIgIHByaW9yaWRhZCBxdWUgbGFzIG9wY2lvbmVzIGVuIG1vZG8gYXV0b23DoXRpY28uXG4iCisiXG4iCisiT3BjaW9uZXM6XG4iCisiICAtLWFsdGRpciA8ZGlyZWN0b3Jpbz4gICAgY2FtYmlhIGVsIGRpcmVjdG9yaW8gZGUgYWx0ZXJuYXRpdmFzLlxuIgorIiAgLS1hZG1pbmRpcj08ZGlyZWN0b3Jpbz4gIGNhbWJpYSBlbCBkaXJlY3RvcmlvIGFkbWluaXN0cmF0aXZvLlxuIgorIiAgLS1za2lwLWF1dG8gICAgICAgICAgICAgIG9taXRlIGxhIGNvbnN1bHRhIGRlIGxhcyBhbHRlcm5hdGl2YXMgIgorImNvcnJlY3RhbWVudGUgY29uZmlndXJhZGFzLlxuIgorIiAgLS12ZXJib3NlICAgICAgICAgICAgICAgIG9wZXJhY2nDs24gdmVyYm9zYSwgbcOhcyBzYWxpZGEuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgb3BlcmFjacOzbiBzaWxlbmNpb3NhLCBzYWxpZGEgbcOtbmltYS5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICBtdWVzdHJhIGVzdGUgbWVuc2FqZSBkZSBheXVkYS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBtdWVzdHJhIGxhIHZlcnNpw7NuLlxuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyI8bGluaz4gaXMgdGhlIHN5bWxpbmsgcG9pbnRpbmcgdG8gJXMvPG5hbWU+LlxuIgorIiAgKGUuZy4gL3Vzci9iaW4vcGFnZXIpXG4iCisiPG5hbWU+IGlzIHRoZSBtYXN0ZXIgbmFtZSBmb3IgdGhpcyBsaW5rIGdyb3VwLlxuIgorIiAgKGUuZy4gcGFnZXIpXG4iCisiPHBhdGg+IGlzIHRoZSBsb2NhdGlvbiBvZiBvbmUgb2YgdGhlIGFsdGVybmF0aXZlIHRhcmdldCBmaWxlcy5cbiIKKyIgIChlLmcuIC91c3IvYmluL2xlc3MpXG4iCisiPHByaW9yaXR5PiBpcyBhbiBpbnRlZ2VyOyBvcHRpb25zIHdpdGggaGlnaGVyIG51bWJlcnMgaGF2ZSBoaWdoZXIgcHJpb3JpdHkgIgorImluXG4iCisiICBhdXRvbWF0aWMgbW9kZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjIE5PVEU6IGBvdmVycmlkZScgc2UgdHJhZHVjZSBjb21vIHJlZGVmaW5pY2nDs24gcG9ycXVlIG5vIHNlICJhbnVsYSIgbworIyAiaGFjZSBjYXNvIG9taXNvIiBkZSBsb3MgdmFsb3JlcyBkZSBkcGtnLCBzZSByZWVtcGxhemFuIHBvciBvdHJvcy4KKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJPcHRpb25zOlxuIgorI3wgIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIHNldCB0aGUgZGlyZWN0b3J5IHdpdGggdGhlIHN0YXRvdmVycmlkZSBmaWxlLlxuIgorI3wgIiAgLS11cGRhdGUgICAgICAgICAgICAgICAgIGltbWVkaWF0ZWx5IHVwZGF0ZSBmaWxlIHBlcm1pc3Npb25zLlxuIgorI3wgIiAgLS1mb3JjZSAgICAgICAgICAgICAgICAgIGZvcmNlIGFuIGFjdGlvbiBldmVuIGlmIGEgc2FuaXR5IGNoZWNrIGZhaWxzLlxuIgorI3wgIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHF1aWV0IG9wZXJhdGlvbiwgbWluaW1hbCBvdXRwdXQuXG4iCisjfCAiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyN8ICIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorI3wgIlxuIgorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hbHRkaXIgPGRpcmVjdG9yeT4gICAgIGNoYW5nZSB0aGUgYWx0ZXJuYXRpdmVzIGRpcmVjdG9yeS5cbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICBjaGFuZ2UgdGhlIGFkbWluaXN0cmF0aXZlIGRpcmVjdG9yeS5cbiIKKyIgIC0tbG9nIDxmaWxlPiAgICAgICAgICAgICBjaGFuZ2UgdGhlIGxvZyBmaWxlLlxuIgorIiAgLS1mb3JjZSAgICAgICAgICAgICAgICAgIGFsbG93IHJlcGxhY2luZyBmaWxlcyB3aXRoIGFsdGVybmF0aXZlIGxpbmtzLlxuIgorIiAgLS1za2lwLWF1dG8gICAgICAgICAgICAgIHNraXAgcHJvbXB0IGZvciBhbHRlcm5hdGl2ZXMgY29ycmVjdGx5ICIKKyJjb25maWd1cmVkXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gYXV0b21hdGljIG1vZGUgKHJlbGV2YW50IGZvciAtLWNvbmZpZyBvbmx5KVxuIgorIiAgLS12ZXJib3NlICAgICAgICAgICAgICAgIHZlcmJvc2Ugb3BlcmF0aW9uLCBtb3JlIG91dHB1dC5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBxdWlldCBvcGVyYXRpb24sIG1pbmltYWwgb3V0cHV0LlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIgorIk9wY2lvbmVzOlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3Jpbz4gICBkZWZpbmUgZWwgZGlyZWN0b3JpbyBjb24gZWwgZmljaGVybyAiCisic3RhdG92ZXJyaWRlLlxuIgorIiAgLS11cGRhdGUgICAgICAgICAgICAgICAgICBhY3R1YWxpemEgbG9zIHBlcm1pc29zIGRlIGxvcyBmaWNoZXJvcyBcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5tZWRpYXRhbWVudGUuXG4iCisiICAtLWZvcmNlICAgICAgICAgICAgICAgICAgIGZ1ZXJ6YSBsYSBlamVjdWNpw7NuIGRlIHVuYSBhY2Npw7NuIGF1bnF1ZSBmYWxsZW5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFzIGNvbXByb2JhY2lvbmVzLlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgICBvcGVyYWNpw7NuIHNpbGVuY2lvc2EsIHNhbGlkYSByZWR1Y2lkYS5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICAgbXVlc3RyYSBlc3RlIG1lbnNhamUgZGUgYXl1ZGEuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgIG11ZXN0cmEgbGEgdmVyc2nDs24uXG4iCisiXG4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE2MworbXNnaWQgImVycm9yIgorbXNnc3RyICJlcnJvciIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE5MworbXNnaWQgIndhcm5pbmciCittc2dzdHIgImF0ZW5jacOzbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjM1NgorIywgYy1mb3JtYXQKK21zZ2lkICJ0d28gY29tbWFuZHMgc3BlY2lmaWVkOiAtLSVzIGFuZCAtLSVzIgorbXNnc3RyICJzZSBoYW4gZXNwZWNpZmljYWRvIGRvcyDDs3JkZW5lczogLS0lcyB5IC0tJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzozODcKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImNhbm5vdCBhcHBlbmQgdG8gJXM6ICVzIgorbXNnaWQgImNhbm5vdCBhcHBlbmQgdG8gJyVzJyIKK21zZ3N0ciAibm8gc2UgcHVlZGUgYcOxYWRpciBhICVzOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjU1NgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHJlbW92ZSAlczogJXMiCittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSAnJXMnIgorbXNnc3RyICJubyBzZSBwdWVkZSBlbGltaW5hciAlczogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTExCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGZpbGUgd2hpbGUgdHJ5aW5nIHRvIHJlYWQgJXMiCittc2dzdHIgImZpbiBkZSBmaWNoZXJvIGluZXNwZXJhZG8gYWwgaW50ZW50YXIgbGVlciAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAid2hpbGUgcmVhZGluZyAlczogJXMiCittc2dzdHIgIm1pZW50cmFzIHNlIGxlw61hICVzOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMTkKKyMsIGMtZm9ybWF0Cittc2dpZCAibGluZSBub3QgdGVybWluYXRlZCB3aGlsZSB0cnlpbmcgdG8gcmVhZCAlcyIKK21zZ3N0ciAibMOtbmVhIG5vIHRlcm1pbmFkYSBhbCBpbnRlbnRhciBsZWVyICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTEzNworIywgYy1mb3JtYXQKK21zZ2lkICIlcyBjb3JydXB0OiAlcyIKK21zZ3N0ciAiJXMgZGHDsWFkbzogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTUwCisjLCBjLWZvcm1hdAorbXNnaWQgIm5ld2xpbmVzIHByb2hpYml0ZWQgaW4gdXBkYXRlLWFsdGVybmF0aXZlcyBmaWxlcyAoJXMpIgorbXNnc3RyICIiCisibm8gc2UgcHVlZGVuIHV0aWxpemFyIHNhbHRvcyBkZSBsw61uZWEgZW4gbG9zIGZpY2hlcm9zIGRlIHVwZGF0ZS1hbHRlcm5hdGl2ZXMgIgorIiglcykiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTYzCittc2dpZCAic2xhdmUgbmFtZSIKK21zZ3N0ciAibm9tYnJlIGRlIGVzY2xhdm8iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTcxIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDA1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJkdXBsaWNhdGUgc2xhdmUgJXMiCittc2dpZCAiZHVwbGljYXRlIHNsYXZlIG5hbWUgJXMiCittc2dzdHIgImVzY2xhdm8gZHVwbGljYWRvIGAlcyciCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTc0Cittc2dpZCAic2xhdmUgbGluayIKK21zZ3N0ciAiZW5sYWNlIGVzY2xhdm8iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTc4CisjLCBjLWZvcm1hdAorbXNnaWQgInNsYXZlIGxpbmsgc2FtZSBhcyBtYWluIGxpbmsgJXMiCittc2dzdHIgImVsIGVubGFjZSBlc2NsYXZvIGVzIGVsIG1pc21vIHF1ZSBlbCBwcmluY2lwYWwgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTg1IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDEyCisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBzbGF2ZSBsaW5rICVzIgorbXNnc3RyICJlbmxhY2UgZXNjbGF2byBkdXBsaWNhZG8gYCVzJyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMDQKK21zZ2lkICJtYXN0ZXIgZmlsZSIKK21zZ3N0ciAiZmljaGVybyBtYWVzdHJvIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIxMworIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgcGF0aCAlcyIKK21zZ3N0ciAicnV0YSBkdXBsaWNhZGEgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjI2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJhbHRlcm5hdGl2ZSAlcyAocGFydCBvZiBsaW5rIGdyb3VwICVzKSBkb2Vzbid0IGV4aXN0LiBSZW1vdmluZyBmcm9tIGxpc3Qgb2YgIgorImFsdGVybmF0aXZlcy4iCittc2dzdHIgIiIKKyJubyBleGlzdGUgbGEgYWx0ZXJuYXRpdmEgJXMgKHBhcnRlIGRlbCBncnVwbyBkZSBlbmxhY2VzICVzKS4gRWxpbWluw6FuZG9sYSBkZSAiCisibGEgbGlzdGEgZGUgYWx0ZXJuYXRpdmFzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMjkgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyNDAKK21zZ2lkICJwcmlvcml0eSIKK21zZ3N0ciAicHJpb3JpZGFkIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIzMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI0OQorbXNnaWQgInNsYXZlIGZpbGUiCittc2dzdHIgImZpY2hlcm8gZXNjbGF2byIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyNDQKKyMsIGMtZm9ybWF0Cittc2dpZCAicHJpb3JpdHkgb2YgJXM6ICVzIgorbXNnc3RyICJwcmlvcmlkYWQgZGUgJXMgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjk3Cittc2dpZCAic3RhdHVzIgorbXNnc3RyICJlc3RhZG8iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjk5Cittc2dpZCAiaW52YWxpZCBzdGF0dXMiCittc2dzdHIgImVzdGFkbyBpbnbDoWxpZG8iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzA0Cittc2dpZCAibWFzdGVyIGxpbmsiCittc2dzdHIgImVubGFjZSBtYWVzdHJvIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTM0OAorIywgYy1mb3JtYXQKK21zZ2lkICJkaXNjYXJkaW5nIG9ic29sZXRlIHNsYXZlIGxpbmsgJXMgKCVzKS4iCittc2dzdHIgImRlc2NhcnRhbmRvIGVsIGVubGFjZSBlc2NsYXZvIG9ic29sZXRvICVzICglcykuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2OQorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MzgKK21zZ2lkICJhdXRvIG1vZGUiCittc2dzdHIgIm1vZG8gYXV0b23DoXRpY28iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTAyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTc4CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYzOQorbXNnaWQgIm1hbnVhbCBtb2RlIgorbXNnc3RyICJtb2RvIG1hbnVhbCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBsaW5rIGN1cnJlbnRseSBwb2ludHMgdG8gJXMiCittc2dzdHIgIiBlbCBlbmxhY2UgYXB1bnRhIGFjdHVhbG1lbnRlIGEgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTA4Cittc2dpZCAiICBsaW5rIGN1cnJlbnRseSBhYnNlbnQiCittc2dzdHIgIiBubyBoYXkgZW5sYWNlIGFjdHVhbG1lbnRlIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUxMgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyAtIHByaW9yaXR5ICVkIgorbXNnc3RyICIlcyAtIHByaW9yaWRhZCAlZCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBzbGF2ZSAlczogJXMiCittc2dzdHIgIiBlc2NsYXZvICVzOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ3VycmVudCAnYmVzdCcgdmVyc2lvbiBpcyAnJXMnLiIKK21zZ3N0ciAiQWN0dWFsbWVudGUgbGEgwqttZWpvcsK7IHZlcnNpw7NuIGVzIGAlcycuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUyNAorbXNnaWQgIk5vIHZlcnNpb25zIGF2YWlsYWJsZS4iCittc2dzdHIgIk5vIGhheSBuaW5ndW5hIHZlcnNpw7NuIGRpc3BvbmlibGUuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU1MworIywgYy1mb3JtYXQKK21zZ2lkICJUaGVyZSBpcyAlZCBjaG9pY2UgZm9yIHRoZSBhbHRlcm5hdGl2ZSAlcyAocHJvdmlkaW5nICVzKS4iCittc2dpZF9wbHVyYWwgIlRoZXJlIGFyZSAlZCBjaG9pY2VzIGZvciB0aGUgYWx0ZXJuYXRpdmUgJXMgKHByb3ZpZGluZyAlcykuIgorbXNnc3RyWzBdICJFeGlzdGUgJWQgb3BjacOzbiBwYXJhIGxhIGFsdGVybmF0aXZhICVzIChxdWUgcHJvdmVlICVzKS4iCittc2dzdHJbMV0gIkV4aXN0ZW4gJWQgb3BjaW9lbnMgcGFyYSBsYSBhbHRlcm5hdGl2YSAlcyAocXVlIHByb3ZlZSAlcykuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2MAorbXNnaWQgIlNlbGVjdGlvbiIKK21zZ3N0ciAiU2VsZWNjacOzbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NjEKK21zZ2lkICJQYXRoIgorbXNnc3RyICJSdXRhIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2MQorbXNnaWQgIlByaW9yaXR5IgorbXNnc3RyICJQcmlvcmlkYWQiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYxCittc2dpZCAiU3RhdHVzIgorbXNnc3RyICJFc3RhZG8iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTgyCisjLCBjLWZvcm1hdAorbXNnaWQgIlByZXNzIGVudGVyIHRvIGtlZXAgdGhlIGN1cnJlbnQgY2hvaWNlWypdLCBvciB0eXBlIHNlbGVjdGlvbiBudW1iZXI6ICIKK21zZ3N0ciAiIgorIlB1bHNlIDxJbnRybz4gcGFyYSBtYW50ZW5lciBlbCB2YWxvciBwb3Igb21pc2nDs24gWypdIG8gcHVsc2UgdW4gbsO6bWVybyBkZSAiCisic2VsZWNjacOzbjogIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTcyMQorIywgYy1mb3JtYXQKK21zZ2lkICJub3QgcmVwbGFjaW5nICVzIHdpdGggYSBsaW5rLiIKK21zZ3N0ciAibm8gc2Ugc3VzdGl0dWlyw6EgJXMgcG9yIHVuIGVubGFjZS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNzYyCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbid0IGluc3RhbGwgdW5rbm93biBjaG9pY2UgJXMiCittc2dzdHIgIm5vIHNlIHB1ZWRlIGluc3RhbGFyIGxhIG9wY2nDs24gZGVzY29ub2NpZGEgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNzgwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJza2lwIGNyZWF0aW9uIG9mICVzIGJlY2F1c2UgYXNzb2NpYXRlZCBmaWxlICVzIChvZiBsaW5rIGdyb3VwICVzKSBkb2Vzbid0ICIKKyJleGlzdC4iCittc2dzdHIgIiIKKyJzZSBvbWl0acOzIGxhIGNyZWFjacOzbiBkZSAlcyBwb3JxdWUgbm8gZXhpc3RlIGVsIGZpY2hlcm8gYXNvY2lhZG8gJXMgKGRlbCAiCisiZ3J1cG8gZGUgZW5sYWNlcyAlcykuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTc5MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAibm90IHJlcGxhY2luZyAlcyB3aXRoIGEgbGluay4iCittc2dpZCAibm90IHJlbW92aW5nICVzIHNpbmNlIGl0J3Mgbm90IGEgc3ltbGluay4iCittc2dzdHIgIm5vIHNlIHN1c3RpdHVpcsOhICVzIHBvciB1biBlbmxhY2UuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA0MSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA0NworIywgYy1mb3JtYXQKK21zZ2lkICJDYWxsICVzLiIKK21zZ3N0ciAiTGxhbWFkYSBhICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiQWx0ZXJuYXRpdmUgJXMgdW5jaGFuZ2VkIGJlY2F1c2UgY2hvaWNlICVzIGlzIG5vdCBhdmFpbGFibGUuIgorbXNnc3RyICIiCisiTm8gc2UgbW9kaWZpY8OzIGxhIGFsdGVybmF0aXZhICVzIHBvcnF1ZSBsYSBvcGNpw7NuICVzIG5vIGVzdMOhIGRpc3BvbmlibGUuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA1NQorIywgYy1mb3JtYXQKK21zZ2lkICJTa2lwIHVua25vd24gYWx0ZXJuYXRpdmUgJXMuIgorbXNnc3RyICJPbWl0aWVuZG8gbGEgYWx0ZXJuYXRpdmEgZGVzY29ub2NpZGEgJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA3NworIywgYy1mb3JtYXQKK21zZ2lkICJsaW5lIHRvbyBsb25nIG9yIG5vdCB0ZXJtaW5hdGVkIHdoaWxlIHRyeWluZyB0byByZWFkICVzIgorbXNnc3RyICJsw61uZWEgZGVtYXNpYWRvIGxhcmdhIG8gbm8gdGVybWluYWRhIGFsIGludGVudGFyIGxlZXIgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDkwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTAzCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjExMworIywgYy1mb3JtYXQKK21zZ2lkICJTa2lwIGludmFsaWQgbGluZTogJXMiCittc2dzdHIgIk9taXRpZW5kbyBsYSBsw61uZWEgaW52w6FsaWRhOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVuYW1pbmcgJXMgbGluayBmcm9tICVzIHRvICVzLiIKK21zZ3N0ciAicmVub21icmFuZG8gZWwgZW5sYWNlICVzIGRlICVzIGEgJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE3MworIywgYy1mb3JtYXQKK21zZ2lkICJyZW5hbWluZyAlcyBzbGF2ZSBsaW5rIGZyb20gJXMgdG8gJXMuIgorbXNnc3RyICJyZW5vbWJyYW5kbyBlbCBlbmxhY2UgZXNjbGF2byAlcyBkZSAlcyBhICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgbmFtZSAoJXMpIG11c3Qgbm90IGNvbnRhaW4gJy8nIGFuZCBzcGFjZXMuIgorbXNnc3RyICJlbCBub21icmUgYWx0ZXJuYXRpdm8gKCVzKSBubyBwdWVkZSBpbmNsdWlyIMKrL8K7IG8gZXNwYWNpb3MuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE5MworIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBsaW5rIGlzIG5vdCBhYnNvbHV0ZSBhcyBpdCBzaG91bGQgYmU6ICVzIgorbXNnc3RyICJlbCBlbmxhY2UgYWx0ZXJuYXRpdm8gbm8gZXMgYWJzb2x1dG8gY29tbyBkZWJlcsOtYSBzZXI6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE5NworIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBwYXRoIGlzIG5vdCBhYnNvbHV0ZSBhcyBpdCBzaG91bGQgYmU6ICVzIgorbXNnc3RyICJsYSBydXRhIGFsdGVybmF0aXZhIG5vIGVzIGFic29sdXRhIGNvbW8gZGViZXLDrWEgc2VyOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyMjQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImFsdGVybmF0aXZlICVzIGNhbid0IGJlIG1hc3RlcjogJXMiCittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgbWFzdGVyOiBpdCBpcyBhIHNsYXZlIG9mICVzIgorbXNnc3RyICJsYSBhbHRlcm5hdGl2YSAlcyBubyBwdWVkZSBzZXIgZWwgbWFlc3RybzogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjMyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjY3CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIGxpbmsgJXMgaXMgYWxyZWFkeSBtYW5hZ2VkIGJ5ICVzLiIKK21zZ3N0ciAiZWwgZW5sYWNlIGFsdGVybmF0aXZvICVzIHlhIGVzdMOhIGdlc3Rpb27DoW5kb3NlIGNvbiAlcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjQxCisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIHBhdGggJXMgZG9lc24ndCBleGlzdC4iCittc2dzdHIgImxhIHJ1dGEgYWx0ZXJuYXRpdmEgJXMgbm8gZXhpc3RlLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImFsdGVybmF0aXZlICVzIGNhbid0IGJlIHNsYXZlIG9mICVzOiAlcyIKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBzbGF2ZSBvZiAlczogaXQgaXMgYSBtYXN0ZXIgYWx0ZXJuYXRpdmUuIgorbXNnc3RyICJsYSBhbHRlcm5hdGl2YSAlcyBubyBwdWVkZSBzZXIgZXNjbGF2YSBkZSAlczogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjU4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBtYXN0ZXI6ICVzIgorbXNnaWQgImFsdGVybmF0aXZlICVzIGNhbid0IGJlIHNsYXZlIG9mICVzOiBpdCBpcyBhIHNsYXZlIG9mICVzIgorbXNnc3RyICJsYSBhbHRlcm5hdGl2YSAlcyBubyBwdWVkZSBzZXIgZWwgbWFlc3RybzogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjc4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJhbHRlcm5hdGl2ZSBsaW5rICVzIGlzIGFscmVhZHkgbWFuYWdlZCBieSAlcy4iCittc2dpZCAiYWx0ZXJuYXRpdmUgbGluayAlcyBpcyBhbHJlYWR5IG1hbmFnZWQgYnkgJXMgKHNsYXZlIG9mICVzKS4iCittc2dzdHIgImVsIGVubGFjZSBhbHRlcm5hdGl2byAlcyB5YSBlc3TDoSBnZXN0aW9uw6FuZG9zZSBjb24gJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjMyNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGFyZ3VtZW50IGAlcyciCittc2dzdHIgImFyZ3VtZW50byBgJXMnIGRlc2Nvbm9jaWRvIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM0MworbXNnaWQgIi0taW5zdGFsbCBuZWVkcyA8bGluaz4gPG5hbWU+IDxwYXRoPiA8cHJpb3JpdHk+IgorbXNnc3RyICItLWluc3RhbGwgbmVjZXNpdGEgPGVubGFjZT4gPG5vbWJyZT4gPHJ1dGE+IDxwcmlvcmlkYWQ+IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM0NiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM5NworbXNnaWQgIjxsaW5rPiBhbmQgPHBhdGg+IGNhbid0IGJlIHRoZSBzYW1lIgorbXNnc3RyICI8ZW5sYWNlPiB5IDxydXRhPiBubyBwdWVkZW4gc2VyIGlndWFsZXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzQ5Cittc2dpZCAicHJpb3JpdHkgbXVzdCBiZSBhbiBpbnRlZ2VyIgorbXNnc3RyICJlbCB2YWxvciBkZSBwcmlvcmlkYWQgZGViZSBzZXIgdW4gZW50ZXJvIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM2MgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIDxuYW1lPiA8cGF0aD4iCittc2dzdHIgIi0tJXMgbmVjZXNpdGEgPG5vbWJyZT4gPHJ1dGE+IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM3NgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIDxuYW1lPiIKK21zZ3N0ciAiLS0lcyBuZWNlc2l0YSA8bm9tYnJlPiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzODgKK21zZ2lkICItLXNsYXZlIG9ubHkgYWxsb3dlZCB3aXRoIC0taW5zdGFsbCIKK21zZ3N0ciAic8OzbG8gc2UgcHVlZGUgdXRpbGl6YXIgLS1zbGF2ZSBjb24gLS1pbnN0YWxsIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM5MAorbXNnaWQgIi0tc2xhdmUgbmVlZHMgPGxpbms+IDxuYW1lPiA8cGF0aD4iCittc2dzdHIgIi0tc2xhdmUgbmVjZXNpdGEgPGVubGFjZT4gPG5vbWJyZT4gPHJ1dGE+IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM5OQorIywgYy1mb3JtYXQKK21zZ2lkICJuYW1lICVzIGlzIGJvdGggcHJpbWFyeSBhbmQgc2xhdmUiCittc2dzdHIgImVsIG5vbWJyZSAlcyBlcyBhbCBtaXNtbyB0aWVtcG8gcHJpbmNpcGFsIHkgZXNjbGF2byIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAibGluayAlcyBpcyBib3RoIHByaW1hcnkgYW5kIHNsYXZlIgorbXNnc3RyICJlbCBlbmxhY2UgJXMgZXMgYWwgbWlzbW8gdGllbXBvIHByaW5jaXBhbCB5IGVzY2xhdm8iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDIyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSA8ZmlsZT4gYXJndW1lbnQiCittc2dzdHIgIi0tJXMgbmVjZXNpdGEgdW4gPGFyY2hpdm8+IGNvbW8gcGFyw6FtZXRybyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gYCVzJyIKK21zZ3N0ciAib3BjacOzbiBgJXMnIGRlc2Nvbm9jaWRhIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQ1MworbXNnaWQgIiIKKyJuZWVkIC0tZGlzcGxheSwgLS1xdWVyeSwgLS1saXN0LCAtLWdldC1zZWxlY3Rpb25zLCAtLWNvbmZpZywgLS1zZXQsIC0tc2V0LSIKKyJzZWxlY3Rpb25zLCAtLWluc3RhbGwsIC0tcmVtb3ZlLCAtLWFsbCwgLS1yZW1vdmUtYWxsIG9yIC0tYXV0byIKK21zZ3N0ciAiIgorIm5lY2VzaXRvIC0tZGlzcGxheSwgLS1xdWVyeSwgLS1saXN0LCAtLWdldC1zZWxlY3Rpb25zLCAtLWNvbmZpZywgLS1zZXQsIC0tIgorInNldC1zZWxlY3Rpb25zLCAtLWluc3RhbGwsIC0tcmVtb3ZlLCAtLWFsbCwgLS1yZW1vdmUtYWxsIG8gLS1hdXRvIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQ5MAorbXNnaWQgIjxzdGFuZGFyZCBpbnB1dD4iCittc2dzdHIgIjxlbnRyYWRhIGVzdMOhbmRhcj4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTAwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTAzCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIGFsdGVybmF0aXZlcyBmb3IgJXMuIgorbXNnc3RyICJubyBoYXkgYWx0ZXJuYXRpdmFzIHBhcmEgJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUzMAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiJXMgaXMgZGFuZ2xpbmcsIGl0IHdpbGwgYmUgdXBkYXRlZCB3aXRoIGJlc3QgY2hvaWNlLiIKK21zZ2lkICIlcy8lcyBpcyBkYW5nbGluZywgaXQgd2lsbCBiZSB1cGRhdGVkIHdpdGggYmVzdCBjaG9pY2UuIgorbXNnc3RyICIlcyBlcyB1biBlbmxhY2UgY29sZ2Fkbywgc2Vyw6EgYWN0dWFsaXphZG8gY29uIGxhIG1lam9yIG9wY2nDs24uIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUzNAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiVzIGhhcyBiZWVuIGNoYW5nZWQgKG1hbnVhbGx5IG9yIGJ5IGEgc2NyaXB0KS4gU3dpdGNoaW5nIHRvIG1hbnVhbCAiCisjfCAidXBkYXRlcyBvbmx5LiIKK21zZ2lkICIiCisiJXMvJXMgaGFzIGJlZW4gY2hhbmdlZCAobWFudWFsbHkgb3IgYnkgYSBzY3JpcHQpLiBTd2l0Y2hpbmcgdG8gbWFudWFsICIKKyJ1cGRhdGVzIG9ubHkuIgorbXNnc3RyICIiCisiZXN0w6FuIGRlc2hhYmlsaXRhZGFzIGxhcyBhY3R1YWxpemFjaW9uZXMgYXV0b23DoXRpY2FzIGRlICVzLCBubyBzZSBtb2RpZmljYXLDoS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTQyCisjLCBjLWZvcm1hdAorbXNnaWQgInNldHRpbmcgdXAgYXV0b21hdGljIHNlbGVjdGlvbiBvZiAlcy4iCittc2dzdHIgImNvbmZpZ3VyYW5kbyBsYSBzZWxlY2Npw7NuIGF1dG9tw6F0aWNhIGRlICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgZm9yICVzIG5vdCByZWdpc3RlcmVkLCBub3Qgc2V0dGluZy4iCittc2dzdHIgImxhIGFsdGVybmF0aXZhICVzIHBhcmEgJXMgbm8gZXN0w6EgcmVnaXN0cmFkYSwgbm8gc2UgY29uZmlndXJhcsOhLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NTcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiVGhlcmUgaXMgbm8gcHJvZ3JhbSB3aGljaCBwcm92aWRlcyAlcy4iCittc2dzdHIgIk5vIGhheSB1biBwcm9ncmFtYSBxdWUgcHJvdmVhICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NjUgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NzUKK21zZ2lkICJOb3RoaW5nIHRvIGNvbmZpZ3VyZS4iCittc2dzdHIgIk5hZGEgcXVlIGNvbmZpZ3VyYXIuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU3MworIywgYy1mb3JtYXQKK21zZ2lkICJUaGVyZSBpcyBvbmx5IG9uZSBhbHRlcm5hdGl2ZSBpbiBsaW5rIGdyb3VwICVzOiAlcyIKK21zZ3N0ciAiU8OzbG8gaGF5IHVuYSBhbHRlcm5hdGl2YSBlbiBlbCBncnVwbyBkZSBlbmxhY2VzICVzOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1ODQKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgZm9yICVzIG5vdCByZWdpc3RlcmVkLCBub3QgcmVtb3ZpbmcuIgorbXNnc3RyICJsYSBhbHRlcm5hdGl2YSAlcyBwYXJhICVzIG5vIGVzdMOhIHJlZ2lzdHJhZGEsIG5vIHNlIGVsaW1pbmFyw6EuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU5MgorIywgYy1mb3JtYXQKK21zZ2lkICJyZW1vdmluZyBtYW51YWxseSBzZWxlY3RlZCBhbHRlcm5hdGl2ZSAtIHN3aXRjaGluZyAlcyB0byBhdXRvIG1vZGUiCittc2dzdHIgIiIKKyJlbGltaW5hbmRvIGxhIGFsdGVybmF0aXZhIHNlbGVjY2lvbmFkYSBtYW51YWxtZW50ZSwgY29ubXV0YW5kbyAlcyBhIG1vZG8gIgorImF1dG9tw6F0aWNvIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYxNworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYXV0b21hdGljIHVwZGF0ZXMgb2YgJXMgYXJlIGRpc2FibGVkLCBsZWF2aW5nIGl0IGFsb25lLiIKK21zZ2lkICJhdXRvbWF0aWMgdXBkYXRlcyBvZiAlcy8lcyBhcmUgZGlzYWJsZWQsIGxlYXZpbmcgaXQgYWxvbmUuIgorbXNnc3RyICIiCisiZXN0w6FuIGRlc2hhYmlsaXRhZGFzIGxhcyBhY3R1YWxpemFjaW9uZXMgYXV0b23DoXRpY2FzIGRlICVzLCBubyBzZSBtb2RpZmljYXLDoS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjE5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ0byByZXR1cm4gdG8gYXV0b21hdGljIHVwZGF0ZXMgdXNlIGB1cGRhdGUtYWx0ZXJuYXRpdmVzIC0tYXV0byAlcycuIgorbXNnaWQgInRvIHJldHVybiB0byBhdXRvbWF0aWMgdXBkYXRlcyB1c2UgJyVzIC0tYXV0byAlcycuIgorbXNnc3RyICIiCisicGFyYSB2b2x2ZXIgYSBoYWNlciBhY3R1YWxpemFjaW9uZXMgYXV0b23DoXRpY2FzIHV0aWxpY2Ugwqt1cGRhdGUtYWx0ZXJuYXRpdmVzICIKKyItLWF1dG8gJXPCuy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjM2CisjLCBjLWZvcm1hdAorbXNnaWQgInVzaW5nICVzIHRvIHByb3ZpZGUgJXMgKCVzKSBpbiAlcy4iCittc2dzdHIgInV0aWxpemFuZG8gJXMgcGFyYSBwcm92ZWVyICVzICglcykgZW4gJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjY0NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZm9yY2luZyByZWluc3RhbGxhdGlvbiBvZiBhbHRlcm5hdGl2ZSAlcyBiZWNhdXNlIGxpbmsgZ3JvdXAgJXMgaXMgYnJva2VuLiIKK21zZ3N0ciAiIgorImZvcnphbmRvIGxhIHJlaW5zdGFsYWNpw7NuIGRlIGxhIGFsdGVybmF0aXZhICVzIHBvcnF1ZSBlbCBncnVwbyBkZSBlbmxhY2VzICVzICIKKyJlc3TDoSByb3RvLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY3VycmVudCBhbHRlcm5hdGl2ZSAlcyBpcyB1bmtub3duLCBzd2l0Y2hpbmcgdG8gJXMgZm9yIGxpbmsgZ3JvdXAgJXMuIgorbXNnc3RyICIiCisibm8gc2UgY29ub2NlIGxhIGFsdGVybmF0aXZhIGFjdHVhbCAlcywgY2FtYmlhbmRvIGEgJXMgcGFyYSBlbCBncnVwbyBkZSAiCisiZW5sYWNlcyAlcy4iCisKKyN+IG1zZ2lkICJpdCBpcyBhIG1hc3RlciBhbHRlcm5hdGl2ZS4iCisjfiBtc2dzdHIgImVzIGxhIGFsdGVybmF0aXZhIG1hZXN0cmEuIgorCisjfiBtc2dpZCAiaXQgaXMgYSBzbGF2ZSBvZiAlcyIKKyN+IG1zZ3N0ciAiZXMgdW4gZXNjbGF2byBkZSAlcyIKKworIyBGSVhNRTogVHJhZHVjY2nDs24gZGUgJ3N0YXQnCisjfiBtc2dpZCAiY2Fubm90IHN0YXQgJXM6ICVzIgorI34gbXNnc3RyICJubyBzZSBwdWVkZSBlZmVjdHVhciBgc3RhdCcgc29icmUgYCVzJzogJXMiCisKKyN+IG1zZ2lkICJyZWFkbGluayglcykgZmFpbGVkOiAlcyIKKyN+IG1zZ3N0ciAiZmFsbMOzIHJlYWRsaW5rKCVzKTogJXMiCisKKyN+IG1zZ2lkICJzY2FuIG9mICVzIGZhaWxlZDogJXMiCisjfiBtc2dzdHIgImZhbGzDsyDCq3NjYW7CuyBzb2JyZSAlczogJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlY3V0ZSAlczogJXMiCisjfiBtc2dzdHIgImZhbGxvIGFsIGVqZWN1dGFyICVzOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byBtYWtlICVzIGEgc3ltbGluayB0byAlczogJXMiCisjfiBtc2dzdHIgIm5vIHNlIHB1ZWRlIGhhY2UgcXVlICVzIHNlYSB1biBlbmxhY2Ugc2ltYsOzbGljbyBwYXJhIGEgJXM6ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgJXMgYXMgJXM6ICVzIgorI34gbXNnc3RyICJubyBzZSBwdWVkZSBpbnN0YWxhciAlcyBjb21vICVzOiAlcyIKKworI34gbXNnaWQgIndoaWxlIHdyaXRpbmcgJXM6ICVzIgorI34gbXNnc3RyICJhbCBlc2NyaWJpciAlczogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcmVhZCAlczogJXMiCisjfiBtc2dzdHIgIm5vIHNlIHB1ZWRlIGxlZXIgJXM6ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGNsb3NlICVzOiAlcyIKKyN+IG1zZ3N0ciAibm8gc2UgcHVlZGUgY2VycmFyICVzOiAlcyIKKworI34gbXNnaWQgImNhbm5vdCB3cml0ZSAlczogJXMiCisjfiBtc2dzdHIgIm5vIHNlIHB1ZWRlIGVzY3JpYmlyICVzOiAlcyIKKworIywgZnV6enkKKyN+fCBtc2dpZCAidW5hYmxlIHRvIHJlbmFtZSAlcyB0byAlczogJXMiCisjfiBtc2dpZCAidW5hYmxlIHRvIHJlbmFtZSBmaWxlICclcycgdG8gJyVzJyIKKyN+IG1zZ3N0ciAibm8gc2UgcHVlZGUgcmVub21icmFyICVzIGEgJXM6ICVzIgorCisjfiBtc2dpZCAibWFsbG9jIGZhaWxlZCAoJWxkIGJ5dGVzKSIKKyN+IG1zZ3N0ciAiZmFsbG8gZW4gbWFsbG9jICglbGQgYnl0ZXMpIgorCisjfiBtc2dpZCAicmVhbGxvYyBmYWlsZWQgKCVsZCBieXRlcykiCisjfiBtc2dzdHIgImZhbGxvIGVuIHJlYWxsb2MgKCVsZCBieXRlcykiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gdW5idWZmZXIgYCUuMjU1cyciCisjfiBtc2dzdHIgIm5vIHNlIHB1ZWRlIGRlc2hhY2VyIGVsIGLDumZlciBgJS4yNTVzJyIKKworI34gbXNnaWQgInBhcnQgZmlsZSBgJS4yNTBzJyBoYXMgdHJhaWxpbmcgZ2FyYmFnZSIKKyN+IG1zZ3N0ciAiZWwgZmljaGVybyBwYXJ0ZSBgJS4yNTBzJyB0aWVuZSBiYXN1cmEgYWwgZmluYWwiCisKKyN+IG1zZ2lkICJzaXplICU3ZCBvY2N1cnMgJTVkIHRpbWVzXG4iCisjfiBtc2dzdHIgImVsIHRhbWHDsW8gJTdkIGFwYXJlY2UgJTVkIHZlY2VzXG4iCisKKyN+IG1zZ2lkICJvdXQgb2YgbWVtb3J5IHB1c2hpbmcgZXJyb3IgaGFuZGxlcjogIgorI34gbXNnc3RyICJtZW1vcmlhIGFnb3RhZGEgYWwgbGxhbWFyIGFsIGdlc3RvciBkZSBlcnJvcjogIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHVubG9jayBkcGtnIHN0YXR1cyBkYXRhYmFzZSIKKyN+IG1zZ3N0ciAibm8gc2UgcHVlZGUgZGVzYmxvcXVlYXIgbGEgYmFzZSBkZSBkYXRvcyBkZSBlc3RhZG8gZGUgZHBrZyIKKworI34gbXNnaWQgImNvcHkgaW5mbyBmaWxlIGAlLjI1NXMnIgorI34gbXNnc3RyICJjb3BpYSBlbCBmaWNoZXJvIGRlIGluZm9ybWFjacOzbiBgJS4yNTVzJyIKKworI34gbXNnaWQgInBhcnNlIGVycm9yIgorI34gbXNnc3RyICJlcnJvciBlbiBlbCBhbsOhbGlzaXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gd3JpdGUgcGFyc2luZyB3YXJuaW5nIgorI34gbXNnc3RyICJmYWxsw7MgYWwgZXNjcmliaXIgYXZpc28gc29icmUgYW7DoWxpc2lzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGxvY2sgdHJpZ2dlcnMgYXJlYSIKKyN+IG1zZ3N0ciAibm8gc2UgcHVlZGUgYmxvcXVlYXIgZWwgw6FyZWEgZGUgZGlzcGFyYWRvcmVzIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHJ1biAlcyAoJS4yNTBzKSIKKyN+IG1zZ3N0ciAiZmFsbG8gYWwgZWplY3V0YXIgJXMgKCUuMjUwcykiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBzaGVsbCAoJS4yNTBzKSIKKyN+IG1zZ3N0ciAiZmFsbG8gYWwgZWplY3V0YXIgc2hlbGwgKCUuMjUwcykiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gY2hlY2sgZm9yIGV4aXN0ZW5jZSBvZiBgJS4yNTBzJyIKKyN+IG1zZ3N0ciAibm8gc2UgcHVlZGUgY29tcHJvYmFyIGxhIGV4aXN0ZW5jaWEgZGUgYCUuMjUwcyciCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBybSBmb3IgY2xlYW51cCIKKyN+IG1zZ3N0ciAiZmFsbG8gYWwgZWplY3V0YXIgcm0gcGFyYSBsaW1waWV6YSIKKworI34gbXNnaWQgIiIKKyN+ICIlcyBkZWJ1Z2dpbmcgb3B0aW9uLCAtLWRlYnVnPTxvY3RhbD4gb3IgLUQ8b2N0YWw+OlxuIgorI34gIlxuIgorI34gIiBudW1iZXIgIHJlZi4gaW4gc291cmNlICAgZGVzY3JpcHRpb25cbiIKKyN+ICIgICAgICAxICAgZ2VuZXJhbCAgICAgICAgICAgR2VuZXJhbGx5IGhlbHBmdWwgcHJvZ3Jlc3MgaW5mb3JtYXRpb25cbiIKKyN+ICIgICAgICAyICAgc2NyaXB0cyAgICAgICAgICAgSW52b2NhdGlvbiBhbmQgc3RhdHVzIG9mIG1haW50YWluZXIgc2NyaXB0c1xuIgorI34gIiAgICAgMTAgICBlYWNoZmlsZSAgICAgICAgICBPdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWRcbiIKKyN+ICIgICAgMTAwICAgZWFjaGZpbGVkZXRhaWwgICAgTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWRcbiIKKyN+ICIgICAgIDIwICAgY29uZmYgICAgICAgICAgICAgT3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZVxuIgorI34gIiAgICAyMDAgICBjb25mZmRldGFpbCAgICAgICBMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGVcbiIKKyN+ICIgICAgIDQwICAgZGVwY29uICAgICAgICAgICAgRGVwZW5kZW5jaWVzIGFuZCBjb25mbGljdHNcbiIKKyN+ICIgICAgNDAwICAgZGVwY29uZGV0YWlsICAgICAgTG90cyBvZiBkZXBlbmRlbmNpZXMvY29uZmxpY3RzIG91dHB1dFxuIgorI34gIiAgMTAwMDAgICB0cmlnZ2VycyAgICAgICAgICBUcmlnZ2VyIGFjdGl2YXRpb24gYW5kIHByb2Nlc3NpbmdcbiIKKyN+ICIgIDIwMDAwICAgdHJpZ2dlcnNkZXRhaWwgICAgTG90cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzXG4iCisjfiAiICA0MDAwMCAgIHRyaWdnZXJzc3R1cGlkICAgIFNpbGx5IGFtb3VudHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2Vyc1xuIgorI34gIiAgIDEwMDAgICB2ZXJ5dmVyYm9zZSAgICAgICBMb3RzIG9mIGRyaXZlbCBhYm91dCBlZyB0aGUgZHBrZy9pbmZvICIKKyN+ICJkaXJlY3RvcnlcbiIKKyN+ICIgICAyMDAwICAgc3R1cGlkbHl2ZXJib3NlICAgSW5zYW5lIGFtb3VudHMgb2YgZHJpdmVsXG4iCisjfiAiXG4iCisjfiAiRGVidWdnaW5nIG9wdGlvbnMgYXJlIGJlIG1peGVkIHVzaW5nIGJpdHdpc2Utb3IuXG4iCisjfiAiTm90ZSB0aGF0IHRoZSBtZWFuaW5ncyBhbmQgdmFsdWVzIGFyZSBzdWJqZWN0IHRvIGNoYW5nZS5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIm9wY2nDs24gZGUgZGVwdXJhY2nDs24gJXMsIC0tZGVidWc9PG9jdGFsPiBvIC1EPG9jdGFsPjpcbiIKKyN+ICJcbiIKKyN+ICIgbsO6bWVybyAgcmVmZXJlbmNpYSBlbiBmdWVudGUgIGRlc2NyaXBjacOzblxuIgorI34gIiAgICAgIDEgIGdlbmVyYWwgICAgICAgICAgICAgICBJbmZvcm1hY2nDs24gZGUgcHJvZ3Jlc28gZ2VuZXJhbG1lbnRlIMO6dGlsXG4iCisjfiAiICAgICAgMiAgc2NyaXB0cyAgICAgICAgICAgICAgIEludm9jYWNpw7NuIHkgZXN0YWRvIGRlIGxvcyBzY3JpcHRzIGRlbCAiCisjfiAicGFxdWV0ZVxuIgorI34gIiAgICAgMTAgIGVhY2hmaWxlICAgICAgICAgICAgICBTYWxpZGEgcG9yIGNhZGEgZmljaGVybyBwcm9jZXNhZG9cbiIKKyN+ICIgICAgMTAwICBlYWNoZmlsZWRldGFpbCAgICAgICAgTXVjaGEgc2FsaWRhIHBvciBjYWRhIGZpY2hlcm8gcHJvY2VzYWRvXG4iCisjfiAiICAgICAyMCAgY29uZmYgICAgICAgICAgICAgICAgIFNhbGlkYSBwb3IgY2FkYSBjb25mZmlsZVxuIgorI34gIiAgICAyMDAgIGNvbmZmZGV0YWlsICAgICAgICAgICBNdWNoYSBzYWxpZGEgcG9yIGNhZGEgY29uZmZpbGVcbiIKKyN+ICIgICAgIDQwICBkZXBjb24gICAgICAgICAgICAgICAgRGVwZW5kZW5jaWFzIHkgY29uZmxpY3Rvc1xuIgorI34gIiAgICA0MDAgIGRlcGNvbmRldGFpbCAgICAgICAgICBNdWNoYSBzYWxpZGEgc29icmUgZGVwZW5kZW5jaWFzIHkgIgorI34gImNvbmZsaWN0b3NcbiIKKyN+ICIgIDEwMDAwICB0cmlnZ2VycyAgICAgICAgICAgICAgQWN0aXZhY2nDs24geSBwcm9jZXNhZG8gZGUgZGlzcGFyYWRvcmVzXG4iCisjfiAiICAyMDAwMCAgdHJpZ2dlcnNkZXRhaWwgICAgICAgIE11Y2hhIGluZm9ybWFjacOzbiByZWxhY2lvbmFkYSBjb24gIgorI34gImRpc3BhcmFkb3Jlc1xuIgorI34gIiAgNDAwMDAgIHRyaWdnZXJzc3R1cGlkICAgICAgICBNb250YcOxYXMgZGUgcGFycmFmYWRhcyBzb2JyZSBsb3MgIgorI34gImRpc3BhcmFkb3Jlc1xuIgorI34gIiAgIDEwMDAgIHZlcnl2ZXJib3NlICAgICAgICAgICBQYXJyYWZhZGFzIHNvYnJlIGVsIGRpcmVjdG9yaW8gZHBrZy9pbmZvXG4iCisjfiAiICAgMjAwMCAgc3R1cGlkbHl2ZXJib3NlICAgICAgIE1vbnRhw7FhcyBkZSBwYXJyYWZhZGFzIChwZXJqdWRpY2EgbGEgIgorI34gInNhbHVkKVxuIgorI34gIlxuIgorI34gIkxhcyBvcGNpb25lcyBkZSBkZXB1cmFjacOzbiBzZSBtZXpjbGFuIGhhY2llbmRvIGVsIE9SIGJpdCBwb3IgYml0LlxuIgorI34gIk5vdGUgcXVlIGxvcyBzaWduaWZpY2Fkb3MgeSBsb3MgdmFsb3JlcyBlc3TDoW4gc3VqZXRvcyBhIGNhbWJpb3MuXG4iCisKKyN+IG1zZ2lkICIiCisjfiAiJXMgZm9yY2luZyBvcHRpb25zIC0gY29udHJvbCBiZWhhdmlvdXIgd2hlbiBwcm9ibGVtcyBmb3VuZDpcbiIKKyN+ICIgIHdhcm4gYnV0IGNvbnRpbnVlOiAgLS1mb3JjZS08dGhpbmc+LDx0aGluZz4sLi4uXG4iCisjfiAiICBzdG9wIHdpdGggZXJyb3I6ICAgIC0tcmVmdXNlLTx0aGluZz4sPHRoaW5nPiwuLi4gfCAtLW5vLWZvcmNlLSIKKyN+ICI8dGhpbmc+LC4uLlxuIgorI34gIiBGb3JjaW5nIHRoaW5nczpcbiIKKyN+ICIgIGFsbCBbIV0gICAgICAgICAgICAgICAgU2V0IGFsbCBmb3JjZSBvcHRpb25zXG4iCisjfiAiICBkb3duZ3JhZGUgWypdICAgICAgICAgIFJlcGxhY2UgYSBwYWNrYWdlIHdpdGggYSBsb3dlciB2ZXJzaW9uXG4iCisjfiAiICBjb25maWd1cmUtYW55ICAgICAgICAgIENvbmZpZ3VyZSBhbnkgcGFja2FnZSB3aGljaCBtYXkgaGVscCB0aGlzIG9uZVxuIgorI34gIiAgaG9sZCAgICAgICAgICAgICAgICAgICBQcm9jZXNzIGluY2lkZW50YWwgcGFja2FnZXMgZXZlbiB3aGVuIG9uIGhvbGRcbiIKKyN+ICIgIGJhZC1wYXRoICAgICAgICAgICAgICAgUEFUSCBpcyBtaXNzaW5nIGltcG9ydGFudCBwcm9ncmFtcywgcHJvYmxlbXMgIgorI34gImxpa2VseVxuIgorI34gIiAgbm90LXJvb3QgICAgICAgICAgICAgICBUcnkgdG8gKGRlKWluc3RhbGwgdGhpbmdzIGV2ZW4gd2hlbiBub3Qgcm9vdFxuIgorI34gIiAgb3ZlcndyaXRlICAgICAgICAgICAgICBPdmVyd3JpdGUgYSBmaWxlIGZyb20gb25lIHBhY2thZ2Ugd2l0aCBhbm90aGVyXG4iCisjfiAiICBvdmVyd3JpdGUtZGl2ZXJ0ZWQgICAgIE92ZXJ3cml0ZSBhIGRpdmVydGVkIGZpbGUgd2l0aCBhbiB1bmRpdmVydGVkICIKKyN+ICJ2ZXJzaW9uXG4iCisjfiAiICBiYWQtdmVyaWZ5ICAgICAgICAgICAgIEluc3RhbGwgYSBwYWNrYWdlIGV2ZW4gaWYgaXQgZmFpbHMgYXV0aGVudGljaXR5ICIKKyN+ICJjaGVja1xuIgorI34gIiAgZGVwZW5kcy12ZXJzaW9uIFshXSAgICBUdXJuIGRlcGVuZGVuY3kgdmVyc2lvbiBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzXG4iCisjfiAiICBkZXBlbmRzIFshXSAgICAgICAgICAgIFR1cm4gYWxsIGRlcGVuZGVuY3kgcHJvYmxlbXMgaW50byB3YXJuaW5nc1xuIgorI34gIiAgY29uZm5ldyBbIV0gICAgICAgICAgICBBbHdheXMgdXNlIHRoZSBuZXcgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHRcbiIKKyN+ICIgIGNvbmZvbGQgWyFdICAgICAgICAgICAgQWx3YXlzIHVzZSB0aGUgb2xkIGNvbmZpZyBmaWxlcywgZG9uJ3QgcHJvbXB0XG4iCisjfiAiICBjb25mZGVmIFshXSAgICAgICAgICAgIFVzZSB0aGUgZGVmYXVsdCBvcHRpb24gZm9yIG5ldyBjb25maWcgZmlsZXMgaWYgIgorI34gIm9uZVxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICBpcyBhdmFpbGFibGUsIGRvbid0IHByb21wdC4gSWYgbm8gZGVmYXVsdCBjYW4gYmUgIgorI34gImZvdW5kLFxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICB5b3Ugd2lsbCBiZSBwcm9tcHRlZCB1bmxlc3Mgb25lIG9mIHRoZSBjb25mb2xkICIKKyN+ICJvclxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICBjb25mbmV3IG9wdGlvbnMgaXMgYWxzbyBnaXZlblxuIgorI34gIiAgY29uZm1pc3MgWyFdICAgICAgICAgICBBbHdheXMgaW5zdGFsbCBtaXNzaW5nIGNvbmZpZyBmaWxlc1xuIgorI34gIiAgY29uZmFzayBbIV0gICAgICAgICAgICBPZmZlciB0byByZXBsYWNlIGNvbmZpZyBmaWxlcyB3aXRoIG5vIG5ldyAiCisjfiAidmVyc2lvbnNcbiIKKyN+ICIgIGJyZWFrcyBbIV0gICAgICAgICAgICAgSW5zdGFsbCBldmVuIGlmIGl0IHdvdWxkIGJyZWFrIGFub3RoZXIgcGFja2FnZVxuIgorI34gIiAgY29uZmxpY3RzIFshXSAgICAgICAgICBBbGxvdyBpbnN0YWxsYXRpb24gb2YgY29uZmxpY3RpbmcgcGFja2FnZXNcbiIKKyN+ICIgIGFyY2hpdGVjdHVyZSBbIV0gICAgICAgUHJvY2VzcyBldmVuIHBhY2thZ2VzIHdpdGggd3JvbmcgYXJjaGl0ZWN0dXJlXG4iCisjfiAiICBvdmVyd3JpdGUtZGlyIFshXSAgICAgIE92ZXJ3cml0ZSBvbmUgcGFja2FnZSdzIGRpcmVjdG9yeSB3aXRoIGFub3RoZXIncyAiCisjfiAiZmlsZVxuIgorI34gIiAgdW5zYWZlLWlvIFshXSAgICAgICAgICBEbyBub3QgcGVyZm9ybSBzYWZlIEkvTyBvcGVyYXRpb25zIHdoZW4gIgorI34gInVucGFja2luZ1xuIgorI34gIiAgcmVtb3ZlLXJlaW5zdHJlcSBbIV0gICBSZW1vdmUgcGFja2FnZXMgd2hpY2ggcmVxdWlyZSBpbnN0YWxsYXRpb25cbiIKKyN+ICIgIHJlbW92ZS1lc3NlbnRpYWwgWyFdICAgUmVtb3ZlIGFuIGVzc2VudGlhbCBwYWNrYWdlXG4iCisjfiAiXG4iCisjfiAiV0FSTklORyAtIHVzZSBvZiBvcHRpb25zIG1hcmtlZCBbIV0gY2FuIHNlcmlvdXNseSBkYW1hZ2UgeW91ciAiCisjfiAiaW5zdGFsbGF0aW9uLlxuIgorI34gIkZvcmNpbmcgb3B0aW9ucyBtYXJrZWQgWypdIGFyZSBlbmFibGVkIGJ5IGRlZmF1bHQuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJvcGNpb25lcyBkZSBmb3J6YWRvIGRlICVzIC0gY29udHJvbGFuIGVsIGNvbXBvcnRhbWllbnRvIGN1YW5kbyBoYXkgIgorI34gInByb2JsZW1hczpcbiIKKyN+ICJcbiIKKyN+ICIgYXZpc2EgcGVybyBjb250aW7DumE6ICAgICAgLS1mb3JjZS08Y29zYT4sPGNvc2E+LC4uLlxuIgorI34gIiBzZSBkZXRpZW5lIHNpIGhheSBlcnJvcjogIC0tcmVmdXNlLTxjb3NhPiw8Y29zYT4sLi4uIHwgLS1uby1mb3JjZS0iCisjfiAiPGNvc2E+LC4uLlxuIgorI34gIiBDb3NhcyBxdWUgc2UgcHVlZGVuIGZvcnphcjpcbiIKKyN+ICIgIGFsbCBbIV0gICAgICAgICAgICAgICAgQWN0aXZhIHRvZGFzIGxhcyBvcGNpb25lcyBkZSBmb3J6YWRvLlxuIgorI34gIiAgZG93bmdyYWRlIFsqXSAgICAgICAgICBSZWVtcGxhemEgdW4gcGFxdWV0ZSBjb24gdW5hIHZlcnNpw7NuIG1lbm9yLlxuIgorI34gIiAgY29uZmlndXJlLWFueSAgICAgICAgICBDb25maWd1cmEgY3VhbHF1aWVyIHBhcXVldGUgcXVlIHB1ZWRhIGF5dWRhciBhICIKKyN+ICJlc3RlLlxuIgorI34gIiAgaG9sZCAgICAgICAgICAgICAgICAgICBQcm9jZXNhIHBhcXVldGVzIGFjY2Vzb3Jpb3MgY3VhbmRvIHNlICIKKyN+ICJtYW50aWVuZW4uXG4iCisjfiAiICBiYWQtcGF0aCAgICAgICAgICAgICAgIEZhbHRhbiBwcm9ncmFtYXMgaW1wb3J0YW50ZXMgZW4gZWwgUEFUSCxcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgcHVlZGUgaGFiZXIgcHJvYmxlbWFzLlxuIgorI34gIiAgbm90LXJvb3QgICAgICAgICAgICAgICBJbnRlbnRhIChkZXMpaW5zdGFsYXIgY29zYXMgaW5jbHVzbyBzaW4gc2VyICIKKyN+ICJyb290LlxuIgorI34gIiAgb3ZlcndyaXRlICAgICAgICAgICAgICBTb2JyZWVzY3JpYmUgdW4gZmljaGVybyBkZSB1biBwYXF1ZXRlIGNvbiBvdHJvLlxuIgorI34gIiAgb3ZlcndyaXRlLWRpdmVydGVkICAgICBTb2JyZWVzY3JpYmUgdW4gZmljaGVybyBkZXN2aWFkbyBjb24gdW5hICIKKyN+ICJ2ZXJzacOzblxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICBubyBkZXN2aWFkYS5cbiIKKyN+ICIgIGJhZC12ZXJpZnkgICAgICAgICAgICAgSW5zdGFsYSB1biBwYXF1ZXRlIGluY2x1c28gc2kgZmFsbGEgbGEgIgorI34gImNvbXByb2JhY2nDs25cbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgZGUgYXV0ZW50aWNpZGFkLlxuIgorI34gIiAgZGVwZW5kcy12ZXJzaW9uIFshXSAgICBDb252aWVydGUgZW4gYXZpc29zIGxvcyBwcm9ibGVtYXMgZGUgIgorI34gImRlcGVuZGVuY2lhc1xuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICBkZSB2ZXJzacOzbi5cbiIKKyN+ICIgIGRlcGVuZHMgWyFdICAgICAgICAgICAgQ29udmllcnRlIGVuIGF2aXNvcyB0b2RvcyBsb3MgcHJvYmxlbWFzIGRlXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIGRlcGVuZGVuY2lhcy5cbiIKKyN+ICIgIGNvbmZuZXcgWyFdICAgICAgICAgICAgVXRpbGl6YSBzaWVtcHJlIGxvcyBudWV2b3MgZmljaGVyb3MgZGUgIgorI34gImNvbmZpZ3VyYWNpw7NuLCBzaW4gcHJlZ3VudGFyLlxuIgorI34gIiAgY29uZm9sZCBbIV0gICAgICAgICAgICBVdGlsaXphIHNpZW1wcmUgbG9zIGZpY2hlcm9zIGRlIGNvbmZpZ3VyYWNpw7NuICIKKyN+ICJhbnRpZ3Vvcywgc2luIHByZWd1bnRhci5cbiIKKyN+ICIgIGNvbmZkZWYgWyFdICAgICAgICAgICAgVXRpbGl6YSBsYSBvcGNpw7NuIHByZWRldGVybWluYWRhIHBhcmEgbG9zICIKKyN+ICJmaWNoZXJvc1xuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICBkZSBjb25maWd1cmFjacOzbiBudWV2b3Mgc2kgZXN0w6FuIGRpc3BvbmlibGVzLCBcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgc2luIHByZWd1bnRhci4gU2kgbm8gc2UgZW5jdWVudHJhIG5pbmd1bm8gXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIHByZWRldGVybWluYWRvIHByZWd1bnRhcsOhLCBhIG1lbm9zIHF1ZSBzZSBcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgdXRpbGljZW4gdGFtYmnDqW4gYWxndW5hIGRlIGxhcyBvcGNpb25lcyBjb25mb2xkXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIG8gY29uZm5ldy5cbiIKKyN+ICIgIGNvbmZtaXNzIFshXSAgICAgICAgICAgSW5zdGFsYSBzaWVtcHJlIGxvcyBjb25mZmlsZXMgcXVlIGZhbHRhbi5cbiIKKyN+ICIgIGNvbmZhc2sgWyFdICAgICAgICAgICAgT2ZyZWNlIGVsIHJlZW1wbGF6byBkZSBmaWNoZXJvcyBkZSBjb25maWd1cmFjacOzbiAiCisjfiAic2luIHZlcnNpb25lcyBudWV2YXMuXG4iCisjfiAiICBicmVha3MgICAgICAgICAgICAgICAgIEluc3RhbGEgYXVucXVlIHB1ZGllcmEgcm9tcGVyIG90cm8gcGFxdWV0ZS5cbiIKKyN+ICIgIGNvbmZsaWN0cyBbIV0gICAgICAgICAgUGVybWl0ZSBsYSBpbnN0YWxhY2nDs24gZGUgcGFxdWV0ZXMgZW4gIgorI34gImNvbmZsaWN0by5cbiIKKyN+ICIgIGFyY2hpdGVjdHVyZSBbIV0gICAgICAgUHJvY2VzYSBpbmNsdXNvIGxvcyBwYXF1ZXRlcyBjb24gYXJxdWl0ZWN0dXJhICIKKyN+ICJlcnLDs25lYS5cbiIKKyN+ICIgIG92ZXJ3cml0ZS1kaXIgWyFdICAgICAgU29icmVlc2NyaWJlIGVsIGRpcmVjdG9yaW8gZGUgdW4gcGFxdWV0ZSBjb24gZWxcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgZmljaGVybyBkZSBvdHJvLlxuIgorI34gIiAgdW5zYWZlLWlvIFshXSAgICAgICAgICBObyBoYWNlIGxhcyBvcGVyYWNpb25lcyBkZSBFL1Mgc2VndXJhcyBjdWFuZG8gIgorI34gImRlc2VtcGFxdWV0YS5cbiIKKyN+ICIgIHJlbW92ZS1yZWluc3RyZXEgWyFdICAgRGVzaW5zdGFsYSBsb3MgcGFxdWV0ZXMgcXVlIHByZWNpc2FuICIKKyN+ICJpbnN0YWxhY2nDs24uXG4iCisjfiAiICByZW1vdmUtZXNzZW50aWFsIFshXSAgIERlc2luc3RhbGEgdW4gcGFxdWV0ZSBlc2VuY2lhbC5cbiIKKyN+ICJcbiIKKyN+ICJBVEVOQ0nDk04gLSBlbCB1c28gZGUgbGFzIG9wY2lvbmVzIG1hcmNhZGFzIGNvbiBbIV0gcHVlZGUgZGHDsWFyICIKKyN+ICJzZXJpYW1lbnRlXG4iCisjfiAic3UgaW5zdGFsYWNpw7NuLiBMYXMgb3BjaW9uZXMgZGUgZm9yemFkbyBtYXJjYWRhcyBjb24gWypdIGVzdMOhbiBhY3RpdmFkYXNcbiIKKyN+ICJwb3Igb21pc2nDs24uXG4iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBkcGtnLXNwbGl0IHRvIHNlZSBpZiBpdCdzIHBhcnQgb2YgYSBtdWx0aXBhcnRlciIKKyN+IG1zZ3N0ciAiZmFsbG8gYWwgZWplY3V0YXIgZHBrZy1zcGxpdCBwYXJhIHZlciBzaSBlcyBwYXJ0ZSBkZSB1biBtdWx0aXBhcnRlIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWNsIGRlYnNpZy12ZXJpZnkiCisjfiBtc2dzdHIgImZhbGxvIGFsIGVqZWN1dGFyIGRlYnNpZy12ZXJpZnkiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBkcGtnLWRlYiB0byBleHRyYWN0IGNvbnRyb2wgaW5mb3JtYXRpb24iCisjfiBtc2dzdHIgImZhbGxvIGFsIGVqZWN1dGFyIGRwa2ctZGViIHBhcmEgZXh0cmFlciBsYSBpbmZvcm1hY2nDs24gZGUgY29udHJvbCIKKworI34gbXNnaWQgInVuYWJsZSB0byBleGVjIGRwa2ctZGViIHRvIGdldCBmaWxlc3lzdGVtIGFyY2hpdmUiCisjfiBtc2dzdHIgIm5vIHNlIHB1ZWRlIGVqZWN1dGFyIGRwa2ctZGViIHBhcmEgb2J0ZW5lciBlbCBhcmNoaXZvIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSBkaXNhcHBlYXJpbmcgY29udHJvbCBpbmZvIGZpbGUgYCUuMjUwcyciCisjfiBtc2dzdHIgIiIKKyN+ICJubyBzZSBwdWVkZSBib3JyYXIgZWwgZmljaGVybyBkZSBpbmZvcm1hY2nDs24gZGUgY29udHJvbCBgJS4yNTBzJyBxdWUgaGEgIgorI34gImRlc2FwYXJlY2lkbyIKKworI34gbXNnaWQgImRwa2c6ICVzIG5vdCBmb3VuZC5cbiIKKyN+IG1zZ3N0ciAiZHBrZzogbm8gc2UgZW5jb250csOzICVzLlxuIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIC4uLi9ERUJJQU4iCisjfiBtc2dzdHIgImZhbGxvIGFsIGNhbWJpYXIgYWwgZGlyZWN0b3JpbyAuLi4vREVCSUFOIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgdGFyIC1jZiIKKyN+IG1zZ3N0ciAiZmFsbG8gYWwgZWplY3V0YXIgdGFyIC1jZiIKKworI34gbXNnaWQgImZhaWxlZCB0byBtYWtlIHRtcGZpbGUgKGNvbnRyb2wpIgorI34gbXNnc3RyICJmYWxsbyBhbCBjcmVhciB1biBmaWNoZXJvIHRlbXBvcmFsIChjb250cm9sKSIKKworI34gbXNnaWQgImZhaWxlZCB0byB1bmxpbmsgdG1wZmlsZSAoY29udHJvbCksICVzIgorI34gbXNnc3RyICJmYWxsbyBhbCBib3JyYXIgY29uIHVubGluayBlbCBmaWNoZXJvIHRlbXBvcmFsIChjb250cm9sKSwgJXMiCisKKyN+IG1zZ2lkICJjb250cm9sIgorI34gbXNnc3RyICJjb250cm9sIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHJld2luZCB0bXBmaWxlIChjb250cm9sKSIKKyN+IG1zZ3N0ciAiZmFsbG8gYWwgZWZlY3R1YXIgYHJld2luZCcgc29icmUgZWwgZmljaGVybyB0ZW1wb3JhbCAoY29udHJvbCkiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZnN0YXQgdG1wZmlsZSAoY29udHJvbCkiCisjfiBtc2dzdHIgImZhbGxvIGFsIGVmZWN0dWFyIGBmc3RhdCcgc29icmUgZWwgZmljaGVybyB0ZW1wb3JhbCAoY29udHJvbCkiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBmaW5kIgorI34gbXNnc3RyICJmYWxsbyBhbCBlamVjdXRhciBmaW5kIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgc2ggLWMgbXYgZm9vLyogJmMiCisjfiBtc2dzdHIgImZhbGxvIGFsIGVqZWN1dGFyIHNoIC1jIG12IGZ1LyogZXRjLiIKKworI34gbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtICUuMjUwcyBsZW5ndGggY29udGFpbnMgbnVsbHMiCisjfiBtc2dzdHIgImVsIGZpY2hlcm8gYCUuMjUwcycgZXN0w6EgZGHDsWFkbyAtIGxhIGxvbmdpdHVkICUuMjUwcyBjb250aWVuZSBudWxvcyIKKworI34gbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIG5lZ2F0aXZlIG1lbWJlciBsZW5ndGggJXppIgorI34gbXNnc3RyICJlbCBmaWNoZXJvIGAlLjI1MHMnIGVzdMOhIGRhw7FhZG8gLSBsb25naXR1ZCAlemkgbmVnYXRpdmEiCisKKyN+IG1zZ2lkICJmYWlsZWQgZ2V0dGluZyB0aGUgY3VycmVudCBmaWxlIHBvc2l0aW9uIgorI34gbXNnc3RyICJzZSBwcm9kdWpvIHVuIGZhbGxvIGFsIG9idGVuZXIgbGEgcG9zaWNpw7NuIGFjdHVhbCBlbiBlbCBmaWNoZXJvIgorCisjfiBtc2dpZCAiZmFpbGVkIHNldHRpbmcgdGhlIGN1cnJlbnQgZmlsZSBwb3NpdGlvbiIKKyN+IG1zZ3N0ciAic2UgcHJvZHVqbyB1biBmYWxsbyBhbCBndWFyZGFyIGxhIHBvc2ljacOzbiBhY3R1YWwgZW4gZWwgZmljaGVybyIKKworI34gbXNnaWQgInZlcnNpb24gbnVtYmVyIgorI34gbXNnc3RyICJuw7ptZXJvIGRlIHZlcnNpw7NuIgorCisjfiBtc2dpZCAibWVtYmVyIGxlbmd0aCIKKyN+IG1zZ3N0ciAibG9uZ2l0dWQgZGVsIG1pZW1icm8iCisKKyN+IG1zZ2lkICJoZWFkZXIgaW5mbyBtZW1iZXIiCisjfiBtc2dzdHIgImluZm9ybWFjacOzbiBkZSBjYWJlY2VyYSBkZWwgZWxlbWVudG8iCisKKyN+IG1zZ2lkICJza2lwcGVkIGNvbnRyb2wgYXJlYSBmcm9tICVzIgorI34gbXNnc3RyICJzZSBvbWl0ZSBlbCDDoXJlYSBkZSBjb250cm9sIGRlICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSB0ZW1wb3JhcnkgZGlyZWN0b3J5IgorI34gbXNnc3RyICJmYWxsbyBhbCBjcmVhciBlbCBkaXJlY3RvcmlvIHRlbXBvcmFsIgorCisjfiBtc2dpZCAiaW5mb19zcGV3IgorI34gbXNnc3RyICJpbmZvX3NwZXciCisKKyN+IG1zZ2lkICJpbmZvIGxlbmd0aCIKKyN+IG1zZ3N0ciAibG9uZ2l0dWQgZGUgaW5mb3JtYWNpw7NuIgorCisjfiBtc2dpZCAidG90YWwgbGVuZ3RoIgorI34gbXNnc3RyICJsb25naXR1ZCB0b3RhbCIKKworI34gbXNnaWQgImRhdGEgbGVuZ3RoIgorI34gbXNnc3RyICJsb25naXR1ZCBkZSBkYXRvcyIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIGRwa2ctZGViIHRvIGV4dHJhY3QgZmllbGQgdmFsdWUiCisjfiBtc2dzdHIgImZhbGxvIGFsIGVqZWN1dGFyIGRwa2ctZGViIHBhcmEgZXh0cmFlciBlbCB2YWxvciBkZSB1biBjYW1wbyIKKworI34gbXNnaWQgInVuYWJsZSB0byBzdGF0ICVzOiAlcyIKKyN+IG1zZ3N0ciAibm8gc2UgcHVlZGUgZWplY3V0YXIgwqtzdGF0wrsgc29icmUgJXM6ICVzIgorCisjfiBtc2dpZCAic2xhdmUgbmFtZSAlcyBkdXBsaWNhdGVkIgorI34gbXNnc3RyICJlbCBub21icmUgZXNjbGF2byAlcyBlc3TDoSBkdXBsaWNhZG8iCisKKyN+IG1zZ2lkICJzbGF2ZSBsaW5rICVzIGR1cGxpY2F0ZWQiCisjfiBtc2dzdHIgImVsIGVubGFjZSBlc2NsYXZvICVzIGVzdMOhIGR1cGxpY2FkbyIKKworI34gbXNnaWQgIiVkIHJlcXVlc3RlZCBjb250cm9sIGNvbXBvbmVudHMgYXJlIG1pc3NpbmciCisjfiBtc2dzdHIgImZhbHRhbiAlZCBjb21wb25lbnRlcyBkZSBjb250cm9sIHNvbGljaXRhZGFzIgorCisjfiBtc2dpZCAiY2F0IChkYXRhKSIKKyN+IG1zZ3N0ciAiY2F0IChkYXRvcykiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gb3BlbiBwaXBlIGRlc2NyaXB0b3IgYDEnIGluIHBhc3RlIgorI34gbXNnc3RyICJmYWxsbyBhbCBlZmVjdHVhciBgZmRvcGVuJyBzb2JyZSBlbCBkZXNjcmlwdG9yIGAxJyBlbiBgcGFzdGUnIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHdyaXRlIHRvIGd6aXAgLWRjIgorI34gbXNnc3RyICJmYWxsbyBhbCBlc2NyaWJpciBhIGd6aXAgLWRjIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGNsb3NlIGd6aXAgLWRjIgorI34gbXNnc3RyICJmYWxsbyBhbCBjZXJyYXIgZ3ppcCAtZGMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gc3lzY2FsbCBsc2VlayB0byBmaWxlcyBhcmNoaXZlIHBvcnRpb24iCisjfiBtc2dzdHIgIiIKKyN+ICJmYWxsbyBlbiBsYSBsbGFtYWRhIGFsIHNpc3RlbWEgbHNlZWsgZW4gbG9zIGZpY2hlcm9zIHBvcmNpw7NuIGRlIGFyY2hpdm8iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gZXhlYyBta3NwbGl0IgorI34gbXNnc3RyICJubyBzZSBwdWVkZSBlamVjdXRhciBta3NwbGl0IgorCisjfiBtc2dpZCAiIgorI34gIlxuIgorI34gIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLiIKKyN+IG1zZ3N0ciAiIgorI34gIlxuIgorI34gIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLiIKKworI34gbXNnaWQgInR3byBjb21tYW5kcyBzcGVjaWZpZWQ6ICVzIGFuZCAtLSVzIgorI34gbXNnc3RyICJzZSBoYW4gZXNwZWNpZmljYWRvIGRvcyDDs3JkZW5lczogJXMgeSAtLSVzIgorCisjfiBtc2dpZCAiLS0lcyBuZWVkcyBhIGRpdmVydC10byBhcmd1bWVudCIKKyN+IG1zZ3N0ciAiLS0lcyBuZWNlc2l0YSB1biBwYXLDoW1ldHJvIGluZGljYW5kbyBhIGRvbmRlIGRlc3ZpYXIiCisKKyN+IG1zZ2lkICItLSVzIG5lZWRzIGEgPHBhY2thZ2U+IGFyZ3VtZW50IgorI34gbXNnc3RyICItLSVzIG5lY2VzaXRhIHVuIG5vbWJyZSBkZSBwYXF1ZXRlIGNvbW8gYXJndW1lbnRvIgorCisjfiBtc2dpZCAiY2Fubm90IG9wZW4gZGl2ZXJzaW9uczogJXMiCisjfiBtc2dzdHIgImZhbGxvIGFsIGFicmlyIGZpY2hlcm8gZGUgZGVzdsOtb3M6ICVzIgorCisjfiBtc2dpZCAibWlzc2luZyBhbHRuYW1lIgorI34gbXNnc3RyICJmYWx0YSBlbCBub21icmUgYWx0ZXJuYXRpdm8iCisKKyN+IG1zZ2lkICJtaXNzaW5nIHBhY2thZ2UiCisjfiBtc2dzdHIgImZhbHRhIGVsIHBhcXVldGUiCisKKyN+IG1zZ2lkICJpbnRlcm5hbCBlcnJvciAtIGJhZCBtb2RlIGAlcyciCisjfiBtc2dzdHIgImVycm9yIGludGVybm8gLSBtb2RvIGludsOhbGlkbyBgJXMnIgorCisjIEZJWE1FOiBUcmFkdWNjacOzbiBkZSAnc3RhdCcKKyN+IG1zZ2lkICJjYW5ub3Qgc3RhdCBvbGQgbmFtZSBgJXMnOiAlcyIKKyN+IG1zZ3N0ciAibm8gc2UgcHVlZGUgZWZlY3R1YXIgYHN0YXQnIHNvYnJlIGVsIG5vbWJyZSBhbnRpZ3VvIGAlcyc6ICVzIgorCisjfiBtc2dpZCAicmVuYW1lOiByZW5hbWUgYCVzJyB0byBgJXMnOiAlcyIKKyN+IG1zZ3N0ciAicmVuYW1lOiBzZSByZW5vbWJyw7MgYCVzJyBhIGAlcyc6ICVzIgorCisjfiBtc2dpZCAiY3JlYXRlIGRpdmVyc2lvbnMtbmV3OiAlcyIKKyN+IG1zZ3N0ciAiY3JlYWRvIGRpdmVyc2lvbnMtbmV3OiAlcyIKKworI34gbXNnaWQgIndyaXRlIGRpdmVyc2lvbnMtbmV3OiAlcyIKKyN+IG1zZ3N0ciAiZXNjcmliaWVuZG8gZGl2ZXJzaW9ucy1uZXc6ICVzIgorCisjfiBtc2dpZCAiY2xvc2UgZGl2ZXJzaW9ucy1uZXc6ICVzIgorI34gbXNnc3RyICJjZXJyYW5kbyBkaXZlcnNpb25zLW5ldzogJXMiCisKKyN+IG1zZ2lkICJjcmVhdGUgbmV3IGRpdmVyc2lvbnMtb2xkOiAlcyIKKyN+IG1zZ3N0ciAiwqtkaXZlcnNpb25zLW9sZMK7IG51ZXZvIGNyZWFkbzogJXMiCisKKyN+IG1zZ2lkICJpbnN0YWxsIG5ldyBkaXZlcnNpb25zOiAlcyIKKyN+IG1zZ3N0ciAiaW5zdGFsYWRvcyBudWV2b3MgZGVzdsOtb3M6ICVzIgorCisjfiBtc2dpZCAiaW50ZXJuYWwgZXJyb3I6ICVzIGNvcnJ1cHQ6ICVzIgorI34gbXNnc3RyICJlcnJvciBpbnRlcm5vOiAlcyBkYcOxYWRvOiAlcyIKKworI34gbXNnaWQgImRwa2ctZGViIC0gZXJyb3I6ICVzIChgJXMnKSBkb2Vzbid0IGNvbnRhaW4gYW55IGRpZ2l0c1xuIgorI34gbXNnc3RyICJkcGtnLWRlYiAtIGVycm9yOiAlcyAoYCVzJykgbm8gY29udGllbmUgbmluZ8O6biBkw61naXRvXG4iCisKKyN+IG1zZ2lkICJEZWJpYW4gcmV2aXNpb24iCisjfiBtc2dzdHIgIkRlYmlhbiByZXZpc2nDs25cbiIKKworI34gbXNnaWQgIiVkIGVycm9ycyBpbiBjb250cm9sIGZpbGUiCisjfiBtc2dzdHIgIiVkIGVycm9yZXMgZW4gZWwgZmljaGVybyBkZSBjb250cm9sIgorCisjfiBtc2dpZCAiY2FuJ3QgcmVhZGRpciAlczogJXMiCisjfiBtc2dzdHIgIm5vIHNlIHB1ZWRlIGVqZWN1dGFyIMKrcmVhZGRpcsK7ICVzOiAlcyIKKworI34gbXNnaWQgImZhaWxlZCBpbiBidWZmZXJfd3JpdGUoZmQpICglaSwgcmV0PSVsaSk6ICVzIgorI34gbXNnc3RyICJmYWxsw7MgZW4gYnVmZmVyX3dyaXRlKGZkKSAoJWksIHJldD0lbGkpOiAlcyIKKworI34gbXNnaWQgImVvZiBpbiBidWZmZXJfd3JpdGUoc3RyZWFtKTogJXMiCisjfiBtc2dzdHIgImVvZiBlbiBidWZmZXJfd3JpdGUoc3RyZWFtKTogJXMiCisKKyN+IG1zZ2lkICJlcnJvciBpbiBidWZmZXJfd3JpdGUoc3RyZWFtKTogJXMiCisjfiBtc2dzdHIgImVycm9yIGVuIGJ1ZmZlcl93cml0ZShzdHJlYW0pOiAlcyIKKworI34gbXNnaWQgImZhaWxlZCBpbiBidWZmZXJfcmVhZChmZCk6ICVzIgorI34gbXNnc3RyICJmYWxsbyBlbiBidWZmZXJfcmVhZChmZCk6ICVzIgorCisjfiBtc2dpZCAiZXJyb3IgaW4gYnVmZmVyX3JlYWQoc3RyZWFtKTogJXMiCisjfiBtc2dzdHIgImVycm9yIGVuIGJ1ZmZlcl9yZWFkKHN0cmVhbSk6ICVzIgorCisjfiBtc2dpZCAiJXMgcmV0dXJuZWQgZXJyb3IgZXhpdCBzdGF0dXMgJWQiCisjfiBtc2dzdHIgImVsIHN1YnByb2Nlc28gJXMgZGV2b2x2acOzIGVsIGPDs2RpZ28gZGUgc2FsaWRhIGRlIGVycm9yICVkIgorCisjfiBtc2dpZCAiJXMga2lsbGVkIGJ5IHNpZ25hbCAoJXMpJXMiCisjfiBtc2dzdHIgImVsIHN1YnByb2Nlc28gJXMgZnVlIHRlcm1pbmFkbyBwb3IgbGEgc2XDsWFsICglcyklcyIKKworI34gbXNnaWQgIiIKKyN+ICJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgdmVyc2lvbiAyIG9yXG4iCisjfiAibGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJFc3RvIGVzIHNvZnR3YXJlIGxpYnJlOyB2ZWEgbGEgTGljZW5jaWEgUMO6YmxpY2EgR2VuZXJhbCBkZSBHTlUgdmVyc2nDs24gMiAiCisjfiAib1xuIgorI34gInBvc3RlcmlvciBwYXJhIGxhcyBjb25kaWNpb25lcyBkZSBjb3BpYS4gTm8gaGF5IE5JTkdVTkEgZ2FyYW50w61hLlxuIgorCisjfiBtc2dpZCAiIgorI34gIlxuIgorI34gIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSB2ZXJzaW9uIDIgb3JcbiIKKyN+ICJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIlxuIgorI34gIkVzdG8gZXMgc29mdHdhcmUgbGlicmU7IHZlYSBsYSBMaWNlbmNpYSBQw7pibGljYSBHZW5lcmFsIGRlIEdOVSB2ZXJzacOzbiAyICIKKyN+ICJvXG4iCisjfiAicG9zdGVyaW9yIHBhcmEgbGFzIGNvbmRpY2lvbmVzIGRlIGNvcGlhLiBObyBoYXkgTklOR1VOQSBnYXJhbnTDrWEuXG4iCisKKyN+IG1zZ2lkICIlczogZmFpbGVkIHRvIGV4ZWMgJyVzICVzJyIKKyN+IG1zZ3N0ciAiJXM6IGZhbGxvIGFsIGVqZWN1dGFyICclcyAlcyciCisKKyN+IG1zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCBlcnJvcjogcmVhZDogYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IGVycm9yIGludGVybm8gZGUgZ3ppcDogbGVjdHVyYTogYCVzJyIKKworI34gbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIGVycm9yOiB3cml0ZTogYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IGVycm9yIGludGVybm8gZGUgZ3ppcDogZXNjcml0dXJhIGAlcyciCisKKyN+IG1zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCBlcnJvcjogcmVhZCglaSkgIT0gd3JpdGUoJWkpIgorI34gbXNnc3RyICIlczogZXJyb3IgaW50ZXJubyBkZSBnemlwOiBsZWN0dXJhKCVpKSAhPSBlc2NyaXR1cmEoJWkpIgorCisjfiBtc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIGVycm9yOiByZWFkOiBgJXMnIgorI34gbXNnc3RyICIlczogZXJyb3IgaW50ZXJubyBkZSBiemlwMjogbGVjdHVyYTogYCVzJyIKKworI34gbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiBlcnJvcjogd3JpdGU6IGAlcyciCisjfiBtc2dzdHIgIiVzOiBlcnJvciBpbnRlcm5vIGRlIGJ6aXAyOiBlc2NyaXR1cmEgYCVzJyIKKworI34gbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiBlcnJvcjogcmVhZCglaSkgIT0gd3JpdGUoJWkpIgorI34gbXNnc3RyICIlczogZXJyb3IgaW50ZXJubyBkZSBiemlwMjogbGVjdHVyYSglaSkgIT0gZXNjcml0dXJhKCVpKSIKKworI34gbXNnaWQgIkRvbid0IGZvcmdldCB0byBmb3JlZ3JvdW5kIChgZmcnKSB0aGlzIHByb2Nlc3Mgd2hlbiB5b3UncmUgZG9uZSAhXG4iCisjfiBtc2dzdHIgIsKhTm8gc2Ugb2x2aWRlIGRlIGNvbnRpbnVhciBlc3RlIHByb2Nlc28gY29uIGBmZycgY3VhbmRvIHRlcm1pbmUhXG4iCisKKyN+IG1zZ2lkICIiCisjfiAiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvclxuIgorI34gImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LlxuIgorI34gIlNlZSAlcyAtLWxpY2Vuc2UgZm9yIGNvcHlyaWdodCBhbmQgbGljZW5zZSBkZXRhaWxzLlxuIgorI34gbXNnc3RyICIiCisjfiAiRXN0byBlcyBzb2Z0d2FyZSBsaWJyZTsgdmVhIGxhIExpY2VuY2lhIFDDumJsaWNhIEdlbmVyYWwgZGUgR05VIHZlcnNpw7NuIDIgIgorI34gIm9cbiIKKyN+ICJwb3N0ZXJpb3IgcGFyYSBsYXMgY29uZGljaW9uZXMgZGUgY29waWEuIE5vIGhheSBOSU5HVU5BIGdhcmFudMOtYS5cbiIKKyN+ICJWw6lhc2UgJXMgLS1saWNlbnNlIHBhcmEgbcOhcyBkZXRhbGxlcyBkZSBsb3MgZGVyZWNob3MgZGUgY29waWEgeSBsYSAiCisjfiAibGljZW5jaWEuXG4iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gZ2V0IHVuaXF1ZSBmaWxlbmFtZSBmb3IgY29udHJvbCBpbmZvIgorI34gbXNnc3RyICIiCisjfiAibm8gc2UgcHVlZGUgb2J0ZW5lciB1biBub21icmUgZGUgZmljaGVybyDDum5pY28gcGFyYSBsYSBpbmZvcm1hY2nDs24gZGUgIgorI34gImNvbnRyb2wiCisKKyN+IG1zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIG1hbmFnZW1lbnQgcHJvZ3JhbSBxdWVyeSB0b29sXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJMYSBoZXJyYW1pZW50YSBkZSBjb25zdWx0YXMgZGVsIHByb2dyYW1hIGRlIGdlc3Rpb24gZGUgcGFxdWV0ZXMgZGUgRGViaWFuICIKKyN+ICJgJXMnXG4iCisKKyN+IG1zZ2lkICIiCisjfiAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBxdWVyeWluZyBwYWNrYWdlcztcbiIKKyN+ICJVc2UgLS1saWNlbnNlIGZvciBjb3B5cmlnaHQgbGljZW5zZSBhbmQgbGFjayBvZiB3YXJyYW50eSAoR05VIEdQTCkuIgorI34gbXNnc3RyICIiCisjfiAiVXRpbGljZSAtLWhlbHAgcGFyYSBvYnRlbmVyIGF5dWRhIHNvYnJlIGNvbnN1bHRhIGRlIHBhcXVldGVzO1xuIgorI34gIlV0aWxpY2UgLS1saWNlbnNlIHBhcmEgdmVyIGVsIGNvcHlyaWdodCwgbGEgbGljZW5jaWEgeSBsYSBhdXNlbmNpYVxuIgorI34gImRlIGdhcmFudMOtYSAoR1BMIGRlIEdOVSkuXG4iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gY2hvd24gJXM6ICVzIgorI34gbXNnc3RyICJmYWxsbyBhbCBjYW1iaWFyIGVsIHVzdWFyaW8gZGUgJXM6ICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGNobW9kICVzOiAlcyIKKyN+IG1zZ3N0ciAiZmFsbG8gYWwgY2FtYmlhciBsb3MgcGVybWlzb3MgZGUgJXM6ICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGZvcmsgZm9yIGNsZWFudXAiCisjfiBtc2dzdHIgImZhbGxvIGFsIGVmZWN0dWFyIGBmb3JrJyBwYXJhIGxpbXBpZXphIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHdhaXQgZm9yIHJtIGNsZWFudXAiCisjfiBtc2dzdHIgImZhbGxvIGFsIGVzcGVyYXIgcG9yIGxhIGxpbXBpZXphIGNvbiBybSIKKworI34gbXNnaWQgInJtIGNsZWFudXAgZmFpbGVkLCBjb2RlICVkXG4iCisjfiBtc2dzdHIgImxhIGxpbXBpZXphIGNvbiBybSBmYWxsw7MsIGPDs2RpZ28gJWRcbiIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIHJtIC1yZiIKKyN+IG1zZ3N0ciAiZmFsbG8gYWwgZWplY3V0YXIgcm0gLXJmIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHJlYWQgYGNvbnRyb2wnIChpbiBgJS4yNTVzJykiCisjfiBtc2dzdHIgImZhbGxvIGFsIGxlZXIgYGNvbnRyb2wnIChlbiBgJS4yNTVzJykiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gc2VlayBiYWNrIgorI34gbXNnc3RyICJubyBzZSBwdWVkZSBlZmVjdHVhciBgc2VlaycgaGFjaWEgYXRyw6FzIgorCisjfiBtc2dpZCAidW5rbm93biBkYXRhIHR5cGUgYCVpJyBpbiBidWZmZXJfd3JpdGVcbiIKKyN+IG1zZ3N0ciAidGlwbyBkZSBkYXRvIGAlaScgZGVzY29ub2NpZG8gZW4gYnVmZmVyX3dyaXRlXG4iCisKKyN+IG1zZ2lkICJ1bmtub3duIGRhdGEgdHlwZSBgJWknIGluIGJ1ZmZlcl9yZWFkXG4iCisjfiBtc2dzdHIgInRpcG8gZGUgZGF0byBkZXNjb25vY2lkbyBgJWknIGVuIGJ1ZmZlcl9yZWFkXG4iCisKKyN+IG1zZ2lkICJ3YWl0IGZvciBzaGVsbCBmYWlsZWQiCisjfiBtc2dzdHIgImxhIGVzcGVyYSBwYXJhIGVsIGludMOpcnByZXRlIGRlIMOzcmRlbmVzIGZhbGzDsyIKKworI34gbXNnaWQgInJlYWQgZXJyb3IgaW4gZGl2ZXJzaW9ucyBbaV0iCisjfiBtc2dzdHIgImVycm9yIGRlIGxlY3R1cmEgZW4gbG9zIGRlc3bDrW9zIFtpXSIKKworI34gbXNnaWQgInVubGluayIKKyN+IG1zZ3N0ciAiZGVzZW5sYXphciIKKworI34gbXNnaWQgImNobW9kIgorI34gbXNnc3RyICJjaG1vZCIKKworI34gbXNnaWQgImRlbGV0ZSIKKyN+IG1zZ3N0ciAiYm9ycmFyIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvICVzICclLjI1NXMnIgorI34gbXNnc3RyICJmYWxsbyBhbCAlcyBgJSUuMjU1cyciCisKKyN+IG1zZ2lkICJ3YWl0IGZvciBkcGtnLXNwbGl0IGZhaWxlZCIKKyN+IG1zZ3N0ciAibGEgZXNwZXJhIHBvciBkcGtnLXNwbGl0IGZhbGzDsyIKKworI34gbXNnaWQgImNhbm5vdCByZW1vdmUgZmlsZSBgJS4yNTBzJyIKKyN+IG1zZ3N0ciAibm8gc2UgcHVlZGUgYm9ycmFyIGVsIGZpY2hlcm8gYCUuMjUwcyciCisKKyN+IG1zZ2lkICIiCisjfiAiXG4iCisjfiAiQ29weXJpZ2h0IChDKSAyMDAwIFdpY2hlcnQgQWtrZXJtYW4uIgorI34gbXNnc3RyICIiCisjfiAiXG4iCisjfiAiQ29weXJpZ2h0IChDKSAyMDAwIFdpY2hlcnQgQWtrZXJtYW4uIgorCisjfiBtc2dpZCAibm8gbW9kZSBzcGVjaWZpZWQiCisjfiBtc2dzdHIgIm5vIHNlIGhhIGVzcGVjaWZpY2FkbyB1biBtb2RvIgorCisjfiBtc2dpZCAiaWxsZWdhbCB1c2VyICVzIgorI34gbXNnc3RyICJ1c3VhcmlvIGludsOhbGlkbyBgJXMnIgorCisjfiBtc2dpZCAibm9uLWV4aXN0aW5nIHVzZXIgJXMiCisjfiBtc2dzdHIgInVzdWFyaW8gaW5leGlzdGVudGUgYCVzJyIKKworI34gbXNnaWQgImlsbGVnYWwgZ3JvdXAgJXMiCisjfiBtc2dzdHIgImdydXBvIGludsOhbGlkbyBgJXMnIgorCisjfiBtc2dpZCAibm9uLWV4aXN0aW5nIGdyb3VwICVzIgorI34gbXNnc3RyICJncm91cCBubyBleGlzdGVudGUgYCVzJyIKKworI34gbXNnaWQgImlsbGVnYWwgbW9kZSAlcyIKKyN+IG1zZ3N0ciAibW9kbyBpbnbDoWxpZG8gYCVzJyIKKworI34gbXNnaWQgImFib3J0aW5nIgorI34gbXNnc3RyICJjYW5jZWxhbmRvIgorCisjfiBtc2dpZCAiY2Fubm90IG9wZW4gc3RhdG92ZXJyaWRlOiAlcyIKKyN+IG1zZ3N0ciAiZmFsbG8gYWwgYWJyaXIgZWwgZmljaGVybyBzdGF0b3ZlcnJpZGU6ICVzIgorCisjfiBtc2dpZCAiTXVsdGlwbGUgb3ZlcnJpZGVzIGZvciBcIiVzXCIsIGFib3J0aW5nIgorI34gbXNnc3RyICJBYm9ydGFuZG8gcG9ycXVlIGV4aXN0ZW4gbXVsdGlwbGVzIHJlZGVmaW5pY2lvbmVzIHBhcmEgwqslc8K7IgorCisjfiBtc2dpZCAiZmFpbGVkIHdyaXRlIGR1cmluZyBoYXNocmVwb3J0IgorI34gbXNnc3RyICJlc2NyaXR1cmEgZmFsbGlkYSBlbiBpbmZvcm1lIGRlIHRpcG8gYGhhc2gnIgorCisjfiBtc2dpZCAiY29uZmlndXJhdGlvbiBlcnJvcjogdW5rbm93biBvcHRpb24gJXMiCisjfiBtc2dzdHIgImVycm9yIGRlIGNvbmZpZ3VyYWNpw7NuOiBvcGNpw7NuIGRlc2Nvbm9jaWRhICVzIgorCisjfiBtc2dpZCAiY29uZmlndXJhdGlvbiBlcnJvcjogJXMgZG9lcyBub3QgdGFrZSBhIHZhbHVlIgorI34gbXNnc3RyICJlcnJvciBkZSBjb25maWd1cmFjacOzbjogJXMgbm8gbGxldmEgcGFyw6FtZXRyb3MiCisKKyN+IG1zZ2lkICJkcGtnOiB2ZXJzaW9uICclcycgaGFzIGJhZCBzeW50YXg6ICVzXG4iCisjfiBtc2dzdHIgImRwa2c6IGxhIHZlcnNpw7NuIGAlcycgdGllbmUgdW5hIHNpbnRheGlzIGVycsOzbmVhOiAlc1xuIgorCisjfiBtc2dpZCAidW5leGVjcHRlZCBlbmQgb2YgbGluZSBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKKyN+IG1zZ3N0ciAiZmluIGRlIGzDrW5lYSBpbmVzcGVyYWRvIGVuIGVsIGFyY2hpdm8gc3RhdG92ZXJyaWRlIgorCisjfiBtc2dpZCAiLS1jaGVjay1zdXBwb3J0ZWQgdGFrZXMgbm8gYXJndW1lbnRzIgorI34gbXNnc3RyICItLWNoZWNrLXN1cHBvcnQgbm8gdG9tYSBuaW5nw7puIGFyZ3VtZW50byIKKworI34gbXNnaWQgIi0tZm9yZ2V0LW9sZC11bmF2YWlsIHRha2VzIG5vIGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiLS1mb3JnZXQtb2xkLXVuYXZhaWwgbm8gbGxldmEgcGFyw6FtZXRyb3MiCisKKyN+IG1zZ2lkICIiCisjfiAiXG4iCisjfiAiQ29weXJpZ2h0IChDKSAxOTk0LDE5OTUgSWFuIEphY2tzb24uIgorI34gbXNnc3RyICIiCisjfiAiXG4iCisjfiAiQ29weXJpZ2h0IChDKSAxOTk0LDE5OTUgSWFuIEphY2tzb24uIgorCisjfiBtc2dpZCAiIgorI34gIlVzYWdlOiAlcyBbPG9wdGlvbnM+IC4uLl0gWy0tXSA8ZmlsZW5hbWU+XG4iCisjfiAiXG4iCisjfiAiT3B0aW9uczpcbiIKKyN+ICIgIC0tc2VjdGlvbiA8cmVnZXhwPiA8dGl0bGU+XG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgcHV0IHRoZSBuZXcgZW50cnkgaW4gdGhlIDxyZWdleD4gbWF0Y2hlZCAiCisjfiAic2VjdGlvblxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgIG9yIGNyZWF0ZSBhIG5ldyBvbmUgd2l0aCA8dGl0bGU+IGlmIG5vbi0iCisjfiAiZXhpc3RlbnQuXG4iCisjfiAiICAtLW1lbnVlbnRyeT08dGV4dD4gICAgICAgc2V0IHRoZSBtZW51IGVudHJ5LlxuIgorI34gIiAgLS1kZXNjcmlwdGlvbj08dGV4dD4gICAgIHNldCB0aGUgZGVzY3JpcHRpb24gdG8gYmUgdXNlZCBpbiB0aGUgbWVudSAiCisjfiAiZW50cnkuXG4iCisjfiAiICAtLWluZm8tZmlsZT08cGF0aD4gICAgICAgc3BlY2lmeSBpbmZvIGZpbGUgdG8gaW5zdGFsbCBpbiB0aGUgIgorI34gImRpcmVjdG9yeS5cbiIKKyN+ICIgIC0tZGlyLWZpbGU9PHBhdGg+ICAgICAgICBzcGVjaWZ5IGZpbGUgbmFtZSBvZiBpbmZvIGRpcmVjdG9yeSBmaWxlLlxuIgorI34gIiAgLS1pbmZvZGlyPTxkaXJlY3Rvcnk+ICAgIHNhbWUgYXMgJy0tZGlyLWZpbGU9PGRpcmVjdG9yeT4vZGlyJy5cbiIKKyN+ICIgIC0taW5mby1kaXI9PGRpcmVjdG9yeT4gICBsaWtld2lzZS5cbiIKKyN+ICIgIC0ta2VlcC1vbGQgICAgICAgICAgICAgICBkbyBub3QgcmVwbGFjZSBlbnRyaWVzIG5vciByZW1vdmUgZW1wdHkgb25lcy5cbiIKKyN+ICIgIC0tcmVtb3ZlICAgICAgICAgICAgICAgICByZW1vdmUgdGhlIGVudHJ5IHNwZWNpZmllZCBieSA8ZmlsZW5hbWU+ICIKKyN+ICJiYXNlbmFtZS5cbiIKKyN+ICIgIC0tcmVtb3ZlLWV4YWN0bHkgICAgICAgICByZW1vdmUgdGhlIGV4YWN0IDxmaWxlbmFtZT4gZW50cnkuXG4iCisjfiAiICAtLXRlc3QgICAgICAgICAgICAgICAgICAgZW5hYmxlcyB0ZXN0IG1vZGUgKG5vIGFjdGlvbnMgdGFrZW4pLlxuIgorI34gIiAgLS1kZWJ1ZyAgICAgICAgICAgICAgICAgIGVuYWJsZXMgZGVidWcgbW9kZSAoc2hvdyBtb3JlIGluZm9ybWF0aW9uKS5cbiIKKyN+ICIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBkbyBub3Qgc2hvdyBvdXRwdXQgbWVzc2FnZXMuXG4iCisjfiAiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyN+ICIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorI34gbXNnc3RyICIiCisjfiAiTW9kbyBkZSB1c286ICVzIFs8b3BjaW9uZXM+IC4uLl0gWy0tXSA8ZmljaGVybz5cbiIKKyN+ICJcbiIKKyN+ICJPcGNpb25lczpcbiIKKyN+ICIgIC0tc2VjdGlvbiA8ZXhwcmVnPiA8dMOtdHVsbz5cbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICBwb25lIGxhIG51ZXZhIGVudHJhZGEgZW4gbGEgc2VjY2nDs24gcXVlIHNlICIKKyN+ICJhanVzdGFcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICBhIDxleHByZWc+IG8gY3JlYSB1bmEgbnVldmEgY29uIDx0w610dWxvPiBzaSBubyAiCisjfiAiZXhpc3RlLlxuIgorI34gIiAgLS1tZW51ZW50cnk9PHRleHRvPiAgICAgIGZpamEgbGEgZW50cmFkYSBkZSBtZW7Dui5cbiIKKyN+ICIgIC0tZGVzY3JpcHRpb249PHRleHRvPiAgICBmaWphIGxhIGRlc2NyaXBjacOzbiBhIHV0aWxpemFyIGVuIGxhIGVudHJhZGEgIgorI34gImRlIG1lbsO6LlxuIgorI34gIiAgLS1pbmZvLWZpbGU9PHJ1dGE+ICAgICAgIGVzcGVjaWZpY2EgZWwgZmljaGVybyBkZSBpbmZvcm1hY2nDs24gYSAiCisjfiAiaW5zdGFsYXIgZW4gZWxcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXJlY3RvcmlvLlxuIgorI34gIiAgLS1kaXItZmlsZT08cnV0YT4gICAgICAgIGVzcGVjaWZpY2EgZWwgbm9tYnJlIGRlbCBmaWNoZXJvIGRlICIKKyN+ICJpbmZvcm1hY2nDs24gZGUgXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlyZWN0b3Jpby5cbiIKKyN+ICIgIC0taW5mb2Rpcj08ZGlyZWN0b3Jpbz4gICBlcXVpdmFsZW50ZSBhICctLWRpci1maWxlPTxkaXJlY3RvcmlvPi9kaXInLlxuIgorI34gIiAgLS1pbmZvLWRpcj08ZGlyZWN0b3Jpbz4gIGlndWFsIHF1ZSBlbCBjYXNvIGFudGVyaW9yLlxuIgorI34gIiAgLS1rZWVwLW9sZCAgICAgICAgICAgICAgIG5vIHJlZW1wbGF6YSBsYXMgZW50cmFkYXMgbmkgYm9ycmEgbGFzICIKKyN+ICJ2YWPDrWFzLlxuIgorI34gIiAgLS1yZW1vdmUgICAgICAgICAgICAgICAgIGVsaW1pbmFyIGxhIGVudHJhZGEgZXNwZWNpZmljYSBlbiBlbCBub21icmUgIgorI34gImJhc2VcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmljaGVybz4uXG4iCisjfiAiICAtLXJlbW92ZS1leGFjdGx5ICAgICAgICAgZWxpbWluYSBsYSBlbnRyYWRhIHF1ZSBzZSBsbGFtYSBleGFjdGFtZW50ZSAiCisjfiAiPGZpY2hlcm8+LlxuIgorI34gIiAgLS10ZXN0ICAgICAgICAgICAgICAgICAgIGFjdGl2YSBlbCBtb2RvIGRlIHBydWViYSAobm8gcmVhbGl6YSBuaW5ndW5hICIKKyN+ICJhY2Npw7NuKS5cbiIKKyN+ICIgIC0tZGVidWcgICAgICAgICAgICAgICAgICBhY3RpdmEgbW9kbyBkZSBkZXB1cmFjacOzbiAobXVlc3RyYSBtw6FzICIKKyN+ICJpbmZvcm1hY2nDs24pLlxuIgorI34gIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIG9taXRlIGxvcyBtZW5zYWplcyBkZSBzYWxpZGEuXG4iCisjfiAiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgbXVlc3RyYSBlc3RlIG1lbnNhamUgZGUgYXl1ZGEuXG4iCisjfiAiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgbXVlc3RyYSBsYSB2ZXJzacOzbi5cbiIKKworI34gbXNnaWQgImNvdWxkIG5vdCBvcGVuIHN0ZGVyciBmb3Igb3V0cHV0ISAlcyIKKyN+IG1zZ3N0ciAiwqFubyBzZSBwdWVkZSBhYnJpciBsYSBzYWxpZGEgZGUgZXJyb3IhICVzIgorCisjfiBtc2dpZCAiJXM6IC0tc2VjdGlvbiBuZWVkcyB0d28gbW9yZSBhcmdzIgorI34gbXNnc3RyICIlczogZXMgbmVjZXNhcmlvIGRvcyBhcmd1bWVudG9zIG3DoXMgcGFyYSAtLXNlY3Rpb24iCisKKyN+IG1zZ2lkICIlczogb3B0aW9uIC0tJXMgaXMgZGVwcmVjYXRlZCAoaWdub3JlZCkiCisjfiBtc2dzdHIgIiVzOiBsYSBvcGNpw7NuIC0tJXMgZXMgb2Jzb2xldGEgKHNlIGlnbm9yYXLDoSkiCisKKyN+IG1zZ2lkICIlczogdW5rbm93biBvcHRpb24gYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IG9wY2nDs24gYCVzJyBkZXNjb25vY2lkYSIKKworI34gbXNnaWQgIiVzOiB0b28gbWFueSBhcmd1bWVudHMiCisjfiBtc2dzdHIgIiVzOiBkZW1hc2lhZG9zIGFyZ3VtZW50b3MiCisKKyN+IG1zZ2lkICIlczogLS1zZWN0aW9uIGlnbm9yZWQgd2l0aCAtLXJlbW92ZSIKKyN+IG1zZ3N0ciAiJXM6IHNlIGlnbm9yYSAtLXNlY3Rpb24gY29uIC0tcmVtb3ZlIgorCisjfiBtc2dpZCAiJXM6IC0tZGVzY3JpcHRpb24gaWdub3JlZCB3aXRoIC0tcmVtb3ZlIgorI34gbXNnc3RyICIlczogc2UgaWdub3JhIC0tZGVzY3JpcHRpb24gY29uIC0tcmVtb3ZlIgorCisjfiBtc2dpZCAiJXM6IHRlc3QgbW9kZSAtIGRpciBmaWxlIHdpbGwgbm90IGJlIHVwZGF0ZWQiCisjfiBtc2dzdHIgIiVzOiBtb2RvIGRlIHBydWViYSwgbm8gc2UgYWN0dWFsaXphcsOhIGVsIGZpY2hlcm8gZGUgZGlyZWN0b3JpbyIKKworI34gbXNnaWQgIiVzOiB3YXJuaW5nLCBpZ25vcmluZyBjb25mdXNpbmcgSU5GTy1ESVItRU5UUlkgaW4gZmlsZS4iCisjfiBtc2dzdHIgIiIKKyN+ICIlczogYXZpc28sIHNlIGlnbm9yYSBlbCBjb25mdXNvIHZhbG9yIElORk8tRElSLUVOVFJZIGVuY29udHJhZG8gZW4gZWwgIgorI34gImZpY2hlcm8uIgorCisjfiBtc2dpZCAiaW52YWxpZCBpbmZvIGVudHJ5IgorI34gbXNnc3RyICJlbnRyYWRhIGRlIGluZm9ybWFjacOzbiBpbnbDoWxpZGEiCisKKyN+IG1zZ2lkICIiCisjfiAiXG4iCisjfiAiTm8gYFNUQVJULUlORk8tRElSLUVOVFJZJyBhbmQgbm8gYFRoaXMgZmlsZSBkb2N1bWVudHMnLlxuIgorI34gIiVzOiB1bmFibGUgdG8gZGV0ZXJtaW5lIGRlc2NyaXB0aW9uIGZvciBgZGlyJyBlbnRyeSAtIGdpdmluZyB1cFxuIgorI34gbXNnc3RyICIiCisjfiAiXG4iCisjfiAiTm8gc2UgZW5jdWVudHJhIGBTVEFSVC1JTkZPLURJUi1FTlRSWScgbmkgdGFtcG9jbyB1biB0ZXh0byDCq1RoaXMgZmlsZSAiCisjfiAiZG9jdW1lbnRzwrsgLlxuIgorI34gIiVzOiBubyBzZSBwdWRvIGRldGVybWluYXIgbGEgZGVzY3JpcGNpw7NuIHBhcmEgbGEgZW50cmFkYSBgZGlyJywgIgorI34gImNhbmNlbGFuZG9cbiIKKworI34gbXNnaWQgIiVzOiBubyBmaWxlICVzLCByZXRyaWV2aW5nIGJhY2t1cCBmaWxlICVzLiIKKyN+IG1zZ3N0ciAiIgorI34gIiVzOiBubyBzZSBlbmN1ZW50cmEgZWwgZmljaGVybyAlcywgcmVjdXBlcmFuZG8gbGEgY29waWEgZGUgc2VndXJpZGFkICVzLiIKKworI34gbXNnaWQgIiVzOiBubyBiYWNrdXAgZmlsZSAlcyBhdmFpbGFibGUsIHJldHJpZXZpbmcgZGVmYXVsdCBmaWxlLiIKKyN+IG1zZ3N0ciAiIgorI34gIiVzOiBubyBleGlzdGUgdW5hIGNvcGlhIGRlIHNlZ3VyaWRhZCBkZSAlcywgcmVjdXBlcmFuZG8gZWwgZmljaGVybyBwb3IgIgorI34gIm9taXNpw7NuLiIKKworI34gbXNnaWQgIiVzOiBubyBiYWNrdXAgZmlsZSAlcyBhdmFpbGFibGUuIgorI34gbXNnc3RyICIlczogIG5vIHNlIGRpc3BvbmUgZGUgdW5hIGNvcGlhIGRlIHNlZ3VyaWRhZCBkZSAlcy4iCisKKyN+IG1zZ2lkICIlczogbm8gZGVmYXVsdCBmaWxlICVzIGF2YWlsYWJsZSwgZ2l2aW5nIHVwLiIKKyN+IG1zZ3N0ciAiJXM6IG5vIGV4aXN0ZSB1biBmaWNoZXJvIHBvciBvbWlzacOzbiAlcywgYWJhbmRvbmFuZG8uIgorCisjfiBtc2dpZCAiJXM6IGZhaWxlZCB0byBsb2NrIGRpciBmb3IgZWRpdGluZyEgJXMiCisjfiBtc2dzdHIgIiIKKyN+ICIlczogwqFzZSBwcm9kdWpvIHVuIGZhbGxvIGFsIGJsb3F1ZWFyIGVsIGRpcmVjdG9yaW8gcGFyYSBlZGl0YXJsbyEgJXMiCisKKyN+IG1zZ2lkICJ0cnkgZGVsZXRpbmcgJXM/IgorI34gbXNnc3RyICLCv2ludGVudGFyIGVsaW1pbmFyICVzPyIKKworI34gbXNnaWQgInVuYWJsZSB0byBvcGVuICVzOiAlcyIKKyN+IG1zZ3N0ciAibm8gc2UgcHVlZGUgYWJyaXIgJXM6ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGNsb3NlICVzIGFmdGVyIHJlYWQ6ICVzIgorI34gbXNnc3RyICJmYWxsbyBhbCBjZXJyYXIgJXMgZGVzcHXDqXMgZGUgbGEgbGVjdHVyYTogJXMiCisKKyN+IG1zZ2lkICIlczogZXhpc3RpbmcgZW50cnkgZm9yIGAlcycgbm90IHJlcGxhY2VkIgorI34gbXNnc3RyICIlczogbm8gc2UgcmVlbXBsYXrDsyBsYSBlbnRyYWRhIGV4aXN0ZW50ZSBwYXJhIGAlcyciCisKKyN+IG1zZ2lkICIlczogcmVwbGFjaW5nIGV4aXN0aW5nIGRpciBlbnRyeSBmb3IgYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IHJlZW1wbGFuemFuZG8gbGEgZW50cmFkYSBkaXIgZXhpc3RlbnRlIHBhcmEgYCVzJyIKKworI34gbXNnaWQgIiVzOiBjcmVhdGluZyBuZXcgc2VjdGlvbiBgJXMnIgorI34gbXNnc3RyICIlczogY3JlYW5kbyB1bmEgbnVldmEgc2VjY2nDs24gYCVzJyIKKworI34gbXNnaWQgIiVzOiBubyBzZWN0aW9ucyB5ZXQsIGNyZWF0aW5nIE1pc2NlbGxhbmVvdXMgc2VjdGlvbiB0b28uIgorI34gbXNnc3RyICIlczogbm8gaGF5IHNlY2Npb25lcyBhw7puLCBzZSBjcmVhcsOhIGxhIHNlY2Npw7NuIMKrTWlzY2Vsw6FuZWHCuy4iCisKKyN+IG1zZ2lkICIlczogbm8gc2VjdGlvbiBzcGVjaWZpZWQgZm9yIG5ldyBlbnRyeSwgcGxhY2luZyBhdCBlbmQiCisjfiBtc2dzdHIgIiIKKyN+ICIlczogbm8gc2UgaGEgZXNwZWNpZmljYWRvIHVuYSBzZWNjacOzbiBwYXJhIGxhIG51ZXZhIGVudHJhZGEsIHNlIHBvbmRyw6EgYWwgIgorI34gImZpbmFsIgorCisjfiBtc2dpZCAiJXM6IGRlbGV0aW5nIGVudHJ5IGAlcyAuLi4nIgorI34gbXNnc3RyICIlczogYm9ycmFuZG8gbGEgZW50cmFkYSBgJXMgLi4uJyIKKworI34gbXNnaWQgIiVzOiBlbXB0eSBzZWN0aW9uIGAlcycgbm90IHJlbW92ZWQiCisjfiBtc2dzdHIgIiVzOiBubyBzZSBlbGltaW7DsyBsYSBzZWNjacOzbiB2YWPDrWEgYCVzJyIKKworI34gbXNnaWQgIiVzOiBkZWxldGluZyBlbXB0eSBzZWN0aW9uIGAlcyciCisjfiBtc2dzdHIgIiVzOiBib3JyYW5kbyBsYSBzZWNjacOzbiB2YWPDrWEgYCVzJyIKKworI34gbXNnaWQgIiVzOiBubyBlbnRyeSBmb3IgZmlsZSBgJXMnIGFuZCBtZW51IGVudHJ5IGAlcyciCisjfiBtc2dzdHIgIiIKKyN+ICIlczogbm8gaGF5IHVuYSBlbnRyYWRhIHBhcmEgZWwgZmljaGVybyBgJXMnIHkgbGEgZW50cmFkYSBkZSBtZW7DuiBgJXMnIgorCisjfiBtc2dpZCAiJXM6IG5vIGVudHJ5IGZvciBmaWxlIGAlcyciCisjfiBtc2dzdHIgIiVzOiBubyBoYXkgdW5hIGVudHJhZGEgcGFyYSBlbCBmaWNoZXJvIGAlcyciCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gYmFja3VwIG9sZCAlcywgZ2l2aW5nIHVwOiAlcyIKKyN+IG1zZ3N0ciAibm8gc2UgcHVkbyBndWFyZGFyIHVuYSBjb3BpYSBkZSAlcywgYWJhbmRvbmFuZG86ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3ICVzOiAlcyIKKyN+IG1zZ3N0ciAibm8gc2UgcHVlZGUgaW5zdGFsYXIgZWwgbnVldm8gJXM6ICVzIgorCisjfiBtc2dpZCAiJXM6IGNvdWxkIG5vdCBiYWNrdXAgJXMgaW4gJXM6ICVzIgorI34gbXNnc3RyICIlczogbm8gc2UgcHVkbyBoYWNlciB1bmEgY29waWEgZGUgc2VndXJpZGFkIGRlICVzIGVuICVzOiAlcyIKKworI34gbXNnaWQgIiVzOiB3YXJuaW5nIC0gdW5hYmxlIHRvIHVubG9jayAlczogJXMiCisjfiBtc2dzdHIgIiVzOiBhdmlzbyAtIG5vIHNlIHB1ZWRlIGRlc2Jsb3F1ZWFyIGAlcyc6ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHJlYWQgJXM6ICVkIgorI34gbXNnc3RyICJubyBzZSBwdWVkZSBsZWVyICVzOiAlZCIKKworI34gbXNnaWQgImRiZzogJXMiCisjfiBtc2dzdHIgImRiZzogJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gb3BlbiB0bXBmaWxlIChjb250cm9sKSwgJXMiCisjfiBtc2dzdHIgImZhbGxvIGFsIGFicmlyIHVuIGZpY2hlcm8gdGVtcG9yYWwgKGNvbnRyb2wpLCAlcyIKKworI34gbXNnaWQgImZhaWxlZCB0byBvcGVuIHRtcGZpbGUgKGRhdGEpLCAlcyIKKyN+IG1zZ3N0ciAiZmFsbG8gYWwgYWJyaXIgZWwgZmljaGVybyB0ZW1wb3JhbCAoZGF0YSksICVzIgorCisjfiBtc2dpZCAiaW52YWxpZCBudW1iZXIgZm9yIC0tY29tbWFuZC1mZCIKKyN+IG1zZ3N0ciAibsO6bWVybyBpbnbDoWxpZG8gcGFyYSAtLWNvbW1hbmQtZmQiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcmV3aW5kIGF0IHN0YXJ0IG9mIHZzbnByaW50ZiIKKyN+IG1zZ3N0ciAibm8gc2UgcHVlZGUgZWZlY3R1YXIgYHJld2luZCcgYWwgY29taWVuem8gZGUgdnNucHJpbnRmIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHRydW5jYXRlIGluIHZzbnByaW50ZiIKKyN+IG1zZ3N0ciAibm8gc2UgcHVlZGUgdHJ1bmNhciBlbiB2c25wcmludGYiCisKKyN+IG1zZ2lkICJ3cml0ZSBlcnJvciBpbiB2c25wcmludGYiCisjfiBtc2dzdHIgImVycm9yIGRlIGVzY3JpdHVyYSBlbiB2c25wcmludGYiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gc3RhdCBpbiB2c25wcmludGYiCisjfiBtc2dzdHIgIm5vIHNlIHB1ZWRlIGVmZWN0dWFyIGBzdGF0JyBlbiB2c25wcmludGYiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcmV3aW5kIGluIHZzbnByaW50ZiIKKyN+IG1zZ3N0ciAibm8gc2UgcHVlZGUgZWZlY3R1YXIgYHJld2luZCcgZW4gdnNucHJpbnRmIgorCisjfiBtc2dpZCAicmVhZCBlcnJvciBpbiB2c25wcmludGYgdHJ1bmNhdGVkIgorI34gbXNnc3RyICJlcnJvciBkZSBsZWN0dXJhIGVuIHZzbnByaW50ZiB0cnVuY2FkbyIKKworI34gbXNnaWQgIlN5c3RlbSBlcnJvciBuby4lZCIKKyN+IG1zZ3N0ciAiRXJyb3IgZGVsIHNpc3RlbWEgbsK6JWQiCisKKyN+IG1zZ2lkICJTaWduYWwgbm8uJWQiCisjfiBtc2dzdHIgIlNlw7FhbCBuwrolZCIKKworI34gbXNnaWQgImRwa2c6IHdhcm5pbmcgLSAlcyByZXR1cm5lZCBlcnJvciBleGl0IHN0YXR1cyAlZFxuIgorI34gbXNnc3RyICJkcGtnOiBhdmlzbyAtICVzIGRldm9sdmnDsyBjw7NkaWdvIGRlIGVycm9yICVkXG4iCisKKyN+IG1zZ2lkICJkcGtnOiB3YXJuaW5nIC0gJXMga2lsbGVkIGJ5IHNpZ25hbCAoJXMpJXNcbiIKKyN+IG1zZ3N0ciAiZHBrZzogYXZpc28gLSAlcyB0ZXJtaW5hZG8gcG9yIHNlw7FhbCAoJXMpJXNcbiIKKworI34gbXNnaWQgImZhaWxlZCB0byByZWFkIGAlcycgYXQgbGluZSAlZCIKKyN+IG1zZ3N0ciAiZmFsbG8gYWwgbGVlciBgJXMnIGVuIGxhIGzDrW5lYSAlZCIKKworI34gbXNnaWQgInBhcnNlIGVycm9yLCBpbiBmaWxlIGAlLjI1NXMnIG5lYXIgbGluZSAlZCIKKyN+IG1zZ3N0ciAiZXJyb3IgZGUgdHJhdGFtaWVudG8sIGVuIGVsIGZpY2hlcm8gYCUuMjU1cycgY2VyY2EgZGUgbGEgbMOtbmVhICVkIgorCisjfiBtc2dpZCAiIHBhY2thZ2UgYCUuMjU1cyciCisjfiBtc2dzdHIgIiBwYXF1ZXRlIGAlLjI1NXMnIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHJlYWxsb2MgZm9yIHZhcmlhYmxlIGJ1ZmZlciIKKyN+IG1zZ3N0ciAiZmFsbG8gYWwgZWZlY3R1YXIgYHJlYWxsb2MnIHBhcmEgdW4gYsO6ZmVyIGRlIHVuYSB2YXJpYWJsZSIKKworI34gbXNnaWQgInByb2Nlc3NfYXJjaGl2ZSAuLi4gIGFscmVhZHkgZGlzYXBwZWFyZWQgISIKKyN+IG1zZ3N0ciAicHJvY2Vzc19hcmNoaXZlIC4uLiAgwqF5YSBoYSBkZXNhcGFyZWNpZG8hIgorCisjfiBtc2dpZCAiZ29iYmxlIHJlcGxhY2VkIGZpbGUgYCUuMjU1cyciCisjfiBtc2dzdHIgImZpY2hlcm8gcmVlbXBsYXphZG8gcG9yIGNvbnN1bW8gYCUuMjU1cyciCisKKyN+IG1zZ2lkICJkcGtnOiAlczogd2FybmluZyAtIGZhaWxlZCB0byByZW1vdmUgYCUuMjUwcyc6ICVzXG4iCisjfiBtc2dzdHIgImRwa2c6ICVzOiBhdGVuY2nDs24gLSBmYWxsbyBhbCBib3JyYXIgYCUuMjUwcyc6ICVzXG4iCisKKyN+IG1zZ2lkICItLWF1ZGl0IGRvZXMgbm90IHRha2UgYW55IGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiLS1hdWRpdCBubyBsbGV2YSBwYXLDoW1ldHJvcyIKKworI34gbXNnaWQgIi0teWV0LXRvLXVucGFjayBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudHMiCisjfiBtc2dzdHIgIi0teWV0LXRvLXVucGFjayBubyBsbGV2YSBwYXLDoW1ldHJvcyIKKworI34gbXNnaWQgIi0tYXNzZXJ0LSogZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnRzIgorI34gbXNnc3RyICItLWFzc2VydC0qIG5vIGxsZXZhIHBhcsOhbWV0cm9zIgorCisjfiBtc2dpZCAiLS1wcmVkZXAtcGFja2FnZSBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudCIKKyN+IG1zZ3N0ciAiLS1wcmVkZXAtcGFja2FnZSBubyB0b21hIG5pbmfDum4gYXJndW1lbnRvIgorCisjfiBtc2dpZCAiLS1wcmludC1hcmNoaXRlY3R1cmUgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tcHJpbnQtYXJjaGl0ZWN0dXJlIG5vIHRvbWEgbmluZ8O6biBhcmd1bWVudG8iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gc3RhdCBpbnN0YWxsZWQgJXMgc2NyaXB0IGAlLjI1MHMnIgorI34gbXNnc3RyICJubyBzZSBwdWVkZSBlZmVjdHVhciBgc3RhdCcgc29icmUgZWwgc2NyaXB0ICVzIGluc3RhbGFkbyBgJS4yNTBzJyIKKworIyBGSVhNRTogIiVzIHNjcmlwdCIgY2FuJ3QgYmUgdHJhbnNsYXRlZCB3aXRob3V0IGEgY2x1ZSBhYm91dCAlcy4gc3YKKyMgVGhpcyBpcyBzZWNvbmQgcGFyYW1ldGVyLCBkZXNjcmlwdGlvbiwgdG8gbWFpbnRhaW5lcl9zY3JpcHRfbmV3IGZ1bmN0aW9uCisjIENhbGxlZCBmcm9tIG1haW4vcHJvY2Vzc2FyYy5jIGFuZCBtYWluL2NsZWFudXAuYyB3aXRoIGFyZ3VtZW50cworIyAicHJlLWluc3RhbGxhdGlvbiIgYW5kICJwb3N0LXJlbW92YWwiLiBUaGVzZSBhcmUgTk9UIGN1cnJlbnRseQorIyBtYXJrZWQgZm9yIHRyYW5zbGF0aW9uLiBzdgorI34gbXNnaWQgInVuYWJsZSB0byBzdGF0IG5ldyAlcyBzY3JpcHQgYCUuMjUwcyciCisjfiBtc2dzdHIgIm5vIHNlIHB1ZWRlIGVmZWN0dWFyIGBzdGF0JyBzb2JyZSBlbCBudWV2byBzY3JpcHQgJXMgYCUuMjUwcyciCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gZXhlY3V0ZSBuZXcgJXMiCisjfiBtc2dzdHIgIm5vIHNlIHB1ZWRlIGVqZWN1dGFyIGVsIG51ZXZvICVzIgorCisjfiBtc2dpZCAiZHBrZzogd2FybmluZyAtIHVuYWJsZSB0byBzdGF0ICVzIGAlLjI1MHMnOiAlc1xuIgorI34gbXNnc3RyICJkcGtnOiBhdmlzbyAtIG5vIHNlIHB1ZWRlIGVmZWN0dWFyIGBzdGF0JyBzb2JyZSAlcyBgJS4yNTBzJzogJXNcbiIKKworI34gbXNnaWQgIi0tc2V0LXNlbGVjdGlvbnMgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tc2V0LXNlbGVjdGlvbnMgbm8gbGxldmEgcGFyw6FtZXRyb3MiCisKKyN+IG1zZ2lkICItLWNsZWFyLXNlbGVjdGlvbnMgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tY2xlYXItc2VsZWN0aW9ucyBubyBsbGV2YSBwYXLDoW1ldHJvcyIKKworI34gbXNnaWQgIi0tYnVpbGQgbmVlZHMgYSBkaXJlY3RvcnkgYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tYnVpbGQgbmVjZXNpdGEgdW4gZGlyZWN0b3JpbyBjb21vIHBhcsOhbWV0cm8iCisKKyN+IG1zZ2lkICIiCisjfiAiZHBrZy1kZWI6IHdhcm5pbmcsIG5vdCBjaGVja2luZyBjb250ZW50cyBvZiBjb250cm9sIGFyZWEuXG4iCisjfiAiZHBrZy1kZWI6IGJ1aWxkaW5nIGFuIHVua25vd24gcGFja2FnZSBpbiBgJXMnLlxuIgorI34gbXNnc3RyICIiCisjfiAiZHBrZy1kZWI6IGF0ZW5jacOzbiwgbm8gc2UgY29tcHJ1ZWJhIGVsIGNvbnRlbmlkbyBkZWwgw6FyZWEgZGUgY29udHJvbC5cbiIKKyN+ICJkcGtnLWRlYjogc2UgY29uc3RydXllIHVuIHBhcXVldGUgZGVzY29ub2NpZG8gZW4gYCVzJy5cbiIKKworI34gbXNnaWQgIkludGVybmFsIGVycm9yLCBjb21wcmVzc190eXBlIGAlaScgdW5rbm93biEiCisjfiBtc2dzdHIgIkVycm9yIGludGVybm8sIMKhdGlwbyBkZSBjb21wcmVzacOzbiBgJWknIGRlc2Nvbm9jaWRvISIKKworI34gbXNnaWQgIi0tam9pbiByZXF1aXJlcyBvbmUgb3IgbW9yZSBwYXJ0IGZpbGUgYXJndW1lbnRzIgorI34gbXNnc3RyICItLWpvaW4gcmVxdWllcmUgdW5vIG8gbcOhcyBmaWNoZXJvcyBwYXJ0ZSBjb21vIGFyZ3VtZW50b3MiCisKKyN+IG1zZ2lkICItLWxpc3RxIGRvZXMgbm90IHRha2UgYW55IGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiLS1saXN0cSBubyB0b21hIG5pbmfDum4gYXJndW1lbnRvIgorCisjfiBtc2dpZCAiIgorI34gIlxuIgorI34gIkNvcHlyaWdodCAoQykgMTk5NiBLaW0tTWluaCBLYXBsYW4uIgorI34gbXNnc3RyICIiCisjfiAiXG4iCisjfiAiQ29weXJpZ2h0IChDKSAxOTk2IEtpbS1NaW5oIEthcGxhbi4iCisKKyN+IG1zZ2lkICIiCisjfiAiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIFstLV0gWzxkaXJuYW1lPl1cbiIKKyN+ICJcbiIKKyN+ICJPcHRpb25zOlxuIgorI34gIiAgLS11bnNhZmUgICAgIHNldCBzb21lIGFkZGl0aW9uYWwgcG9zc2libHkgdXNlZnVsIG9wdGlvbnMuXG4iCisjfiAiICAgICAgICAgICAgICAgd2FybmluZzogdGhpcyBvcHRpb24gbWF5IGdhcmJsZSBhbiBvdGhlcndpc2UgY29ycmVjdCAiCisjfiAiZmlsZS5cbiIKKyN+ICIgIC0taGVscCAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorI34gIiAgLS12ZXJzaW9uICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJNb2RvIGRlIHVzbzogJXMgWzxvcGNpw7NuPiAuLi5dIFstLV0gWzxkaXJlY3RvcmlvPl1cbiIKKyN+ICJcbiIKKyN+ICJPcGNpb25lczpcbiIKKyN+ICIgIC0tdW5zYWZlICAgIGZpamEgYWxndW5hcyBvcGNpb25lcyBwb3NpYmxlbWVudGUgw7p0aWxlcy5cbiIKKyN+ICIgICAgICAgICAgICAgIGF2aXNvOiBlc3RhIG9wY2nDs24gcHVlZGUgY29ycm9tcGVyIHVuIGZpY2hlcm8gdsOhbGlkby5cbiIKKyN+ICIgIC0taGVscCAgICAgIG11ZXN0cmEgZXN0ZSBtZW5zYWplIGRlIGF5dWRhLlxuIgorI34gIiAgLS12ZXJzaW9uICAgbXVlc3RyYSBsYSB2ZXJzacOzbi5cbiIKKworI34gbXNnaWQgInRyeSBkZWxldGluZyAlcyIKKyN+IG1zZ3N0ciAiaW50ZW50ZSBib3JyYXIgJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gaW5zdGFsbCAlczsgaXQgd2lsbCBiZSBsZWZ0IGFzICVzOiAlcyIKKyN+IG1zZ3N0ciAibm8gc2UgcHVlZGUgaW5zdGFsYXIgYCVzJzsgc2UgZGVqYXLDoSBjb21vICVzOiAlcyIKKworI34gbXNnaWQgIiVzOiB1bmFibGUgdG8gdW5sb2NrICVzOiAlcyIKKyN+IG1zZ3N0ciAiJXM6IGZhbGxvIGFsIGRlc2Jsb3F1ZWFyICVzOiAlcyIKKworI34gbXNnaWQgIiVzIC0gc3RhdHVzIGlzICVzLiIKKyN+IG1zZ3N0ciAiJXMgLSBlbCBlc3RhZG8gZXMgJXMuIgorCisjfiBtc2dpZCAiIGxpbmsgdW5yZWFkYWJsZSAtICVzIgorI34gbXNnc3RyICIgbm8gc2UgcHVlZGUgbGVlciBlbCBlbmxhY2UgLSAlcyIKKworI34gbXNnaWQgIiIKKyN+ICJ3YXJuaW5nOiAlcyBpcyBzdXBwb3NlZCB0byBiZSBhIHN5bWxpbmsgdG8gJXMsIFxuIgorI34gIm9yIG5vbmV4aXN0ZW50OyBob3dldmVyLCByZWFkbGluayBmYWlsZWQ6ICVzIgorI34gbXNnc3RyICIiCisjfiAiYXZpc286IHNlIHN1cG9uZSBxdWUgJXMgZXMgdW4gZW5sYWNlIHNpbWLDs2xpY28gYSAlcyxcbiIKKyN+ICJvIG5vIGV4aXN0ZTsgc2luIGVtYmFyZ28gaGEgZmFsbGFkbyDCq3JlYWRsaW5rwrs6ICVzIgorCisjfiBtc2dpZCAiTGVhdmluZyAlcyAoJXMpIHBvaW50aW5nIHRvICVzLiIKKyN+IG1zZ3N0ciAiRGVqYW5kbyAlcyAoJXMpIHBhcmEgcXVlIGFwdW50ZSBhICVzLiIKKworI34gbXNnaWQgIlVwZGF0aW5nICVzICglcykgdG8gcG9pbnQgdG8gJXMuIgorI34gbXNnc3RyICJBY3R1YWxpemFuZG8gJXMgKCVzKSBwYXJhIHF1ZSBhcHVudGUgYSAlcy4iCisKKyN+IG1zZ2lkICJSZW1vdmluZyAlcyAoJXMpLCBub3QgYXBwcm9wcmlhdGUgd2l0aCAlcy4iCisjfiBtc2dzdHIgIkVsaW1pbmFuZG8gJXMgKCVzKSwgbm8gZXMgYXByb3BpYWRvIHBhcmEgJXMuIgorCisjfiBtc2dpZCAiIgorI34gIkNoZWNraW5nIGF2YWlsYWJsZSB2ZXJzaW9ucyBvZiAlcywgdXBkYXRpbmcgbGlua3MgaW4gJXMgLi4uXG4iCisjfiAiKFlvdSBtYXkgbW9kaWZ5IHRoZSBzeW1saW5rcyB0aGVyZSB5b3Vyc2VsZiBpZiBkZXNpcmVkIC0gc2VlIGBtYW4gbG4nLikiCisjfiBtc2dzdHIgIiIKKyN+ICJDb21wcm9iYW5kbyBsYXMgdmVyc2lvbmVzIGRpc3BvbmlibGVzIHBhcmEgJXMsIGFjdHVhbGl6YW5kbyBlbmxhY2VzIGVuICIKKyN+ICIlcyAuLi5cbiIKKyN+ICIoUHVlZGUgbW9kaWZpY2FyIGxvcyBlbmxhY2VzIGFsbMOtIHNpIGxvIGRlc2VhIC0gY29uc3VsdGUgwqttYW4gbG7Cuy4pIgorCisjfiBtc2dpZCAic2xhdmUgbGluayBuYW1lICVzIGR1cGxpY2F0ZWQiCisjfiBtc2dzdHIgImVsIG5vbWJyZSBkZWwgZW5sYWNlIGVzY2xhdm8gJXMgZXN0w6EgZHVwbGljYWRvIgorCisjfiBtc2dpZCAiUmVjb3ZlcmluZyBmcm9tIHByZXZpb3VzIGZhaWxlZCB1cGRhdGUgb2YgJXMgLi4uIgorI34gbXNnc3RyICJSZXN0YXVyYW5kbyBkZSB1bmEgYWN0dWFsaXphY2nDs24gcHJldmlhIGZhbGxpZGEgZGUgJXMgLi4uIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIG9wZW4gJXMgZm9yIHdyaXRlOiAlcyIKKyN+IG1zZ3N0ciAibm8gc2UgcHVlZGUgYWJyaXIgZWwgZmljaGVybyAlcyBwYXJhIGVzY3JpdHVyYTogJXMiCisKKyN+IG1zZ2lkICJMYXN0IHBhY2thZ2UgcHJvdmlkaW5nICVzICglcykgcmVtb3ZlZCwgZGVsZXRpbmcgaXQuIgorI34gbXNnc3RyICJTZSBoYSBlbGltaW5hZG8gZWwgw7psdGltbyBwYXF1ZXRlIHByb3Zlw61hICVzICglcyksIGJvcnLDoW5kb2xvLiIKKworI34gbXNnaWQgIiIKKyN+ICJUaGVyZSBpcyBvbmx5IDEgcHJvZ3JhbSB3aGljaCBwcm92aWRlcyAlc1xuIgorI34gIiglcykuIE5vdGhpbmcgdG8gY29uZmlndXJlLlxuIgorI34gbXNnc3RyICIiCisjfiAiU8OzbG8gaGF5IHVuIHByb2dyYW1hIHF1ZSBwcm92ZWUgJXNcbiIKKyN+ICIoJXMpLiBObyBzZSBjb25maWd1cmFyw6EgbmFkYS5cbiIKKworI34gbXNnaWQgIiIKKyN+ICJUaGVyZSBhcmUgJXMgYWx0ZXJuYXRpdmVzIHdoaWNoIHByb3ZpZGUgYCVzJy5cbiIKKyN+ICJcbiIKKyN+ICIgIFNlbGVjdGlvbiAgICBBbHRlcm5hdGl2ZVxuIgorI34gIi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJIYXkgJXMgYWx0ZXJuYXRpdmFzIHF1ZSBwcm92ZWVuIGAlcycuXG4iCisjfiAiXG4iCisjfiAiICBTZWxlY2Npw7NuICAgICBBbHRlcm5hdGl2YVxuIgorI34gIi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4iCisKKyN+IG1zZ2lkICJlcnJvciB3cml0aW5nIHN0ZG91dDogJXMiCisjfiBtc2dzdHIgImVycm9yIGFsIGVzY3JpYmlyIGEgc2FsaWRhIGVzdMOhbmRhcjogJXMiCisKKyN+IG1zZ2lkICJlcnJvciBvciBlb2YgcmVhZGluZyAlcyBmb3IgJXMgKCVzKSIKKyN+IG1zZ3N0ciAiZXJyb3IgbyBmaW4gZGUgZmljaGVybyBhbCBsZWVyICVzIGRlICVzICglcykiCisKKyN+IG1zZ2lkICJtaXNzaW5nIG5ld2xpbmUgYWZ0ZXIgJXMiCisjfiBtc2dzdHIgImZhbHRhIHVuYSBudWV2YSBsw61uZWEgZGVzcHXDqXMgZGUgJXMiCisKKyN+IG1zZ2lkICJTZXJpb3VzIHByb2JsZW06ICVzIgorI34gbXNnc3RyICJQcm9ibGVtYSBncmF2ZTogJXMiCisKKyN+IG1zZ2lkICJjb3VsZG4ndCBhbGxvY2F0ZSBtZW1vcnkgZm9yIHN0cmR1cCBpbiBmaW5kcGFja2FnZSglcykiCisjfiBtc2dzdHIgIm5vIHNlIHB1ZG8gYXNpZ25hciBtZW1vcmlhIHBhcmEgc3RyZHVwIGVuIGZpbmRwYWNrYWdlKCVzKSIKKworI34gbXNnaWQgImZhaWxlZCB0byBhbGxvY2F0ZSBidWZmZXIgaW4gYnVmZmVyX2NvcHkgKCVzKSIKKyN+IG1zZ3N0ciAiZmFsbG8gYWwgYXNpZ25hciBlc3BhY2lvIGVuIGJ1ZmZlcl9jb3B5ICglcykiCisKKyN+IG1zZ2lkICJFcnJvciBhbGxvY2F0aW5nIG1lbW9yeSBmb3IgY2ZnZmlsZW5hbWUiCisjfiBtc2dzdHIgIkVycm9yIGFsIGFzaWduYXIgbWVtb3JpYSBwYXJhIGNmZ2ZpbGVuYW1lIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIG1hbGxvYyBmb3IgaW5mbyBmaWxlIGAlLjI1NXMnIgorI34gbXNnc3RyICJmYWxsbyBhbCBlamVjdXRhciBgbWFsbG9jJyBwYXJhIGVsIGZpY2hlcm8gYCUuMjU1cyciCisKKyN+IG1zZ2lkICJkaXZlcnNpb25zIGZpbGUgaGFzIHRvby1sb25nIGxpbmUgb3IgRU9GIFtpXSIKKyN+IG1zZ3N0ciAiZWwgZmljaGVybyBkZSBkZXN2w61vcyB0aWVuZSB1bmEgbMOtbmVhIGRlbWFzaWFkbyBsYXJnYSBvIHVuIEVPRiBbaV0iCisKKyN+IG1zZ2lkICJyZWFkIGVycm9yIGluIGRpdmVyc2lvbnMgW2lpXSIKKyN+IG1zZ3N0ciAiZXJyb3IgZGUgbGVjdHVyYSBlbiBsb3MgZGVzdsOtb3MgW2lpXSIKKworI34gbXNnaWQgInVuZXhwZWN0ZWQgRU9GIGluIGRpdmVyc2lvbnMgW2lpXSIKKyN+IG1zZ3N0ciAiRU9GIGluZXNwZXJhZG8gZW4gbG9zIGRlc3bDrW9zIFtpaV0iCisKKyN+IG1zZ2lkICJmZ2V0cyBnYXZlIGFuIGVtcHR5IHN0cmluZyBmcm9tIGRpdmVyc2lvbnMgW2lpXSIKKyN+IG1zZ3N0ciAiZmdldHMgZGnDsyB1bmEgY2FkZW5hIHZhY8OtYSBhIHBhcnRpciBkZSBsb3MgZGVzdsOtb3MgW2lpXSIKKworI34gbXNnaWQgImRpdmVyc2lvbnMgZmlsZSBoYXMgdG9vLWxvbmcgbGluZSBvciBFT0YgW2lpXSIKKyN+IG1zZ3N0ciAiZWwgZmljaGVybyBkZSBkZXN2w61vcyB0aWVuZSB1bmEgbMOtbmVhIGRlbWFzaWFkbyBsYXJnYSBvIHVuIEVPRiBbaWldIgorCisjfiBtc2dpZCAicmVhZCBlcnJvciBpbiBkaXZlcnNpb25zIFtpaWldIgorI34gbXNnc3RyICJlcnJvciBkZSBsZWN0dXJhIGVuIGxvcyBkZXN2w61vcyBbaWlpXSIKKworI34gbXNnaWQgInVuZXhwZWN0ZWQgRU9GIGluIGRpdmVyc2lvbnMgW2lpaV0iCisjfiBtc2dzdHIgIkVPRiBpbmVzcGVyYWRvIGVuIGxvcyBkZXN2w61vcyBbaWlpXSIKKworI34gbXNnaWQgImZnZXRzIGdhdmUgYW4gZW1wdHkgc3RyaW5nIGZyb20gZGl2ZXJzaW9ucyBbaWlpXSIKKyN+IG1zZ3N0ciAiZmdldHMgZGnDsyB1bmEgY2FkZW5hIHZhY8OtYSBhIHBhcnRpciBkZSBsb3MgZGVzdsOtb3MgW2lpaV0iCisKKyN+IG1zZ2lkICJjb3VsZG4ndCBtYWxsb2MgaW4gZXhlY2JhY2tlbmQiCisjfiBtc2dzdHIgIm5vIHNlIHB1ZG8gZWplY3V0YXIgbWFsbG9jIGVuIGV4ZWNiYWNrZW5kIgorCisjfiBtc2dpZCAiY291bGRuJ3Qgc3RyZHVwIGluIGV4ZWNiYWNrZW5kIgorI34gbXNnc3RyICJubyBzZSBwdWRvIGVqZWN1dGFyIHN0cmR1cCBlbiBleGVjYmFja2VuZCIKKworI34gbXNnaWQgImZhaWxlZCBhbGxvY2F0aW5nIG1lbW9yeSBmb3IgdmFyaWFibGUgYGN0cmxhcmVhJyIKKyN+IG1zZ3N0ciAiZXJyb3IgYWwgYXNpZ25hciBtZW1vcmlhIHBhcmEgbGEgdmFyaWFibGUgYGN0cmFsYXJlYSciCisKKyN+IG1zZ2lkICJDYW5ub3QgZ2V0IEVOT0VOVCB2YWx1ZSBmcm9tICVzOiAlcyIKKyN+IG1zZ3N0ciAiTm8gcHVlZGUgb2J0ZW5lcnNlIHZhbG9yIEVOT0VOVCBkZSAlczogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gZW5zdXJlICVzIG5vbmV4aXN0ZW50OiAlcyIKKyN+IG1zZ3N0ciAibm8gZXMgcG9zaWJsZSBhc2VndXJhciBxdWUgJXMgbm8gZXhpc3RhOiAlcyIKKworI34gbXNnaWQgIiIKKyN+ICJ3YXJuaW5nOiAlcyBpcyBzdXBwb3NlZCB0byBiZSBhIHNsYXZlIHN5bWxpbmsgdG9cbiIKKyN+ICIgJXMsIG9yIG5vbmV4aXN0ZW50OyBob3dldmVyLCByZWFkbGluayBmYWlsZWQ6ICVzIgorI34gbXNnc3RyICIiCisjfiAiYXZpc286IHNlIHN1cG9uZSBxdWUgJXMgZXMgdW4gZW5sYWNlIHNpbWLDs2xpY28gYVxuIgorI34gIiAlcywgbyBubyBleGlzdGU7IHBlcm8gwqtyZWFkbGlua8K7IGhhIGZhbGxhZG86ICVzIgorCisjfiBtc2dpZCAiIgorI34gImRwa2c6IHJlZ2FyZGluZyAlcyBjb250YWluaW5nICVzOlxuIgorI34gIiBwYWNrYWdlIHVzZXMgQnJlYWtzOyBub3Qgc3VwcG9ydGVkIGluIHRoaXMgZHBrZ1xuIgorI34gbXNnc3RyICIiCisjfiAiZHBrZzogYWNlcmNhIGRlICVzIHF1ZSBjb250aWVuZSAlczpcbiIKKyN+ICIgZWwgcGFxdWV0ZSB1c2UgwqtCcmVha3PCuywgcGVybyBubyBlc3TDoSBzb3BvcnRhZG8gcG9yIGVzdGEgdmVyc2nDs24gZGUgIgorI34gImRwa2dcbiIKKworI34gbXNnaWQgInVuc3VwcG9ydGVkIGRlcGVuZGVuY3kgcHJvYmxlbSAtIG5vdCBpbnN0YWxsaW5nICUuMjUwcyIKKyN+IG1zZ3N0ciAicHJvYmxlbWEgZGUgZGVwZW5kZW5jaWEgbm8gc29wb3J0YWRhIC0gbm8gc2UgaW5zdGFsYSAlLjI1MHMiCisKKyN+IG1zZ2lkICJkcGtnOiB3YXJuaW5nIC0gaWdub3JpbmcgQnJlYWtzICFcbiIKKyN+IG1zZ3N0ciAiZHBrZzogYXRlbmNpw7NuIC0gwqFpZ25vcmFuZG8gwqtCcmVha3PCuyFcbiIKKworI34gbXNnaWQgInRvIgorI34gbXNnc3RyICJhIgorCisjfiBtc2dpZCAiZnJvbSIKKyN+IG1zZ3N0ciAiZGVzZGUiCisKKyN+IG1zZ2lkICJlcnJvciByZWFkaW5nICVzIgorI34gbXNnc3RyICJlcnJvciBhbCBsZWVyICVzIgorCisjfiBtc2dpZCAidHdvIG1vZGVzIHNwZWNpZmllZDogJXMgYW5kIC0tJXMiCisjfiBtc2dzdHIgInNlIGhhbiBlc3BlY2lmaWNhZG8gZG9zIG1vZG9zOiAlcyB5IC0tJXMiCisKKyN+IG1zZ2lkICJtYW5mbGFnIgorI34gbXNnc3RyICJtYW5mbGFnIgorCisjfiBtc2dpZCAiJXM6IGZhaWxlZCB0byBleGVjIGd6aXAgLWRjIgorI34gbXNnc3RyICIlczogZmFsbG8gYWwgZWplY3V0YXIgZ3ppcCAtZGMiCisKKyN+IG1zZ2lkICIlczogZmFpbGVkIHRvIGV4ZWMgYnppcDIgLWRjIgorI34gbXNnc3RyICIlczogZmFsbG8gYWwgZWplY3V0YXIgYnppcDIgLWRjIgorCisjfiBtc2dpZCAiJXM6IGZhaWxlZCB0byBleGVjIGJ6aXAyICVzIgorI34gbXNnc3RyICIlczogZmFsbG8gYWwgZWplY3V0YXIgYnppcDIgJXMiCisKKyN+IG1zZ2lkICJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6IHZlcnNpb24gY29udGFpbnMgYCAnIgorI34gbXNnc3RyICJjYW1wbyBgJXMnLCByZWZlcmVuY2lhIGEgYCUuMjU1cyc6IGxhIHZlcnNpw7NuIGNvbnRpZW5lIHVuIGAgJyIKKworI34gbXNnaWQgIiVzOiBjbG9zZSAlcyBhZnRlciByZWFkOiAlcyIKKyN+IG1zZ3N0ciAiJXM6IGNpZXJyZSBkZSAlcyBkZXNwdcOpcyBkZSBsYSBsZWN0dXJhOiAlcyIKKworI34gbXNnaWQgIi0tYWRtaW5kaXIgbmVlZHMgYSBkaXJlY3RvcnkgYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tYWRtaW5kaXIgbmVjZXNpdGEgdW4gZGlyZWN0b3JpbyBjb21vIHBhcsOhbWV0cm8iCisKKyN+IG1zZ2lkICItLXJlbW92ZSBuZWVkcyBhIHNpbmdsZSBhcmd1bWVudCIKKyN+IG1zZ3N0ciAiLS1yZW1vdmUgbmVjZXNpdGEgdW4gc29sbyBhcmd1bWVudG8iCisKKyN+IG1zZ2lkICItLXRydWVuYW1lIG5lZWRzIGEgc2luZ2xlIGFyZ3VtZW50IgorI34gbXNnc3RyICItLXRydWVuYW1lIG5lY2VzaXRhIHVuIHNvbG8gYXJndW1lbnRvIgorCisjfiBtc2dpZCAiLS1yZW1vdmUgbmVlZHMgb25lIGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiLS1yZW1vdmUgbmVjZXNpdGEgdW4gYXJndW1lbnRvIgorCisjfiBtc2dpZCAiZHBrZy1zdGF0b3ZlcnJpZGU6ICVzIgorI34gbXNnc3RyICJkcGtnLXN0YXRvdmVycmlkZTogJXMiCisKKyN+IG1zZ2lkICItLWFkbWluZGlyIG5lZWRzIGEgPGRpcmVjdG9yeT4gYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tYWRtaW5kaXIgbmVjZXNpdGEgdW4gcGFyYW1ldHJvIDxkaXJlY3RvcmlvPiIKKworI34gbXNnaWQgImZhaWxlZCB0byBvcGVuICVzOiAlcyIKKyN+IG1zZ3N0ciAiZmFsbG8gYWwgYWJyaXIgJXM6ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgJXMgYXMgJXMiCisjfiBtc2dzdHIgIm5vIHNlIHB1ZWRlIGluc3RhbGFyIGAlcycgY29tbyBgJXMnIgorCisjIEZVWlpZLgorIyBGSVhNRTogRXh0cmEgc3BhY2UgaW4gVXNhZ2U6IGxpbmUuCisjfiBtc2dpZCAiIgorI34gIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSA8Y29tbWFuZD5cbiIKKyN+ICJcbiIKKyN+ICJDb21tYW5kczpcbiIKKyN+ICIgIC1pfC0taW5zdGFsbCAgICAgICA8LmRlYiBmaWxlIG5hbWU+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXI+IC4uLlxuIgorI34gIiAgLS11bnBhY2sgICAgICAgICAgIDwuZGViIGZpbGUgbmFtZT4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRpcj4gLi4uXG4iCisjfiAiICAtQXwtLXJlY29yZC1hdmFpbCAgPC5kZWIgZmlsZSBuYW1lPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyPiAuLi5cbiIKKyN+ICIgIC0tY29uZmlndXJlICAgICAgICA8cGFja2FnZS1uYW1lPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyN+ICIgIC1yfC0tcmVtb3ZlICAgICAgICA8cGFja2FnZS1uYW1lPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyN+ICIgIC1QfC0tcHVyZ2UgICAgICAgICA8cGFja2FnZS1uYW1lPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyN+ICIgIC0tZ2V0LXNlbGVjdGlvbnMgWzxwYXR0ZXJuPiAuLi5dICAgICBHZXQgbGlzdCBvZiBzZWxlY3Rpb25zIHRvIHN0ZG91dC5cbiIKKyN+ICIgIC0tc2V0LXNlbGVjdGlvbnMgICAgICAgICAgICAgICAgICAgICBTZXQgcGFja2FnZSBzZWxlY3Rpb25zIGZyb20gIgorI34gInN0ZGluLlxuIgorI34gIiAgLS11cGRhdGUtYXZhaWwgPFBhY2thZ2VzLWZpbGU+ICAgICAgIFJlcGxhY2UgYXZhaWxhYmxlIHBhY2thZ2VzIGluZm8uXG4iCisjfiAiICAtLW1lcmdlLWF2YWlsIDxQYWNrYWdlcy1maWxlPiAgICAgICAgTWVyZ2Ugd2l0aCBpbmZvIGZyb20gZmlsZS5cbiIKKyN+ICIgIC0tY2xlYXItYXZhaWwgICAgICAgICAgICAgICAgICAgICAgICBFcmFzZSBleGlzdGluZyBhdmFpbGFibGUgaW5mby5cbiIKKyN+ICIgIC0tZm9yZ2V0LW9sZC11bmF2YWlsICAgICAgICAgICAgICAgICBGb3JnZXQgdW5pbnN0YWxsZWQgdW5hdmFpbGFibGUgIgorI34gInBrZ3MuXG4iCisjfiAiICAtc3wtLXN0YXR1cyA8cGFja2FnZS1uYW1lPiAuLi4gICAgICAgRGlzcGxheSBwYWNrYWdlIHN0YXR1cyBkZXRhaWxzLlxuIgorI34gIiAgLXB8LS1wcmludC1hdmFpbCA8cGFja2FnZS1uYW1lPiAuLi4gIERpc3BsYXkgYXZhaWxhYmxlIHZlcnNpb24gIgorI34gImRldGFpbHMuXG4iCisjfiAiICAtTHwtLWxpc3RmaWxlcyA8cGFja2FnZS1uYW1lPiAuLi4gICAgTGlzdCBmaWxlcyBgb3duZWQnIGJ5IHBhY2thZ2UocykuXG4iCisjfiAiICAtbHwtLWxpc3QgWzxwYXR0ZXJuPiAuLi5dICAgICAgICAgICAgTGlzdCBwYWNrYWdlcyBjb25jaXNlbHkuXG4iCisjfiAiICAtU3wtLXNlYXJjaCA8cGF0dGVybj4gLi4uICAgICAgICAgICAgRmluZCBwYWNrYWdlKHMpIG93bmluZyBmaWxlKHMpLlxuIgorI34gIiAgLUN8LS1hdWRpdCAgICAgICAgICAgICAgICAgICAgICAgICAgIENoZWNrIGZvciBicm9rZW4gcGFja2FnZShzKS5cbiIKKyN+ICIgIC0tcHJpbnQtYXJjaGl0ZWN0dXJlICAgICAgICAgICAgICAgICBQcmludCBkcGtnIGFyY2hpdGVjdHVyZS5cbiIKKyN+ICIgIC0tY29tcGFyZS12ZXJzaW9ucyA8YT4gPHJlbD4gPGI+ICAgICBDb21wYXJlIHZlcnNpb24gbnVtYmVycyAtIHNlZSAiCisjfiAiYmVsb3cuXG4iCisjfiAiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyN+ICIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTaG93IHRoZSB2ZXJzaW9uLlxuIgorI34gIiAgLS1mb3JjZS1oZWxwIHwgLURofC0tZGVidWc9aGVscCAgICAgIEhlbHAgb24gZm9yY2luZyByZXNwLiBkZWJ1Z2dpbmcuXG4iCisjfiAiICAtLWxpY2Vuc2UgfCAtLWxpY2VuY2UgICAgICAgICAgICAgICAgUHJpbnQgY29weXJpZ2h0IGxpY2Vuc2luZyB0ZXJtcy5cbiIKKyN+ICJcbiIKKyN+ICJVc2UgZHBrZyAtYnwtLWJ1aWxkfC1jfC0tY29udGVudHN8LWV8LS1jb250cm9sfC1JfC0taW5mb3wtZnwtLWZpZWxkfFxuIgorI34gIiAteHwtLWV4dHJhY3R8LVh8LS12ZXh0cmFjdHwtLWZzeXMtdGFyZmlsZSAgb24gYXJjaGl2ZXMgKHR5cGUgJXMgLS0iCisjfiAiaGVscCkuXG4iCisjfiAiXG4iCisjfiAiRm9yIGludGVybmFsIHVzZTogZHBrZyAtLWFzc2VydC1zdXBwb3J0LXByZWRlcGVuZHMgfCAtLXByZWRlcC1wYWNrYWdlIHxcbiIKKyN+ICIgIC0tYXNzZXJ0LXdvcmtpbmctZXBvY2ggfCAtLWFzc2VydC1sb25nLWZpbGVuYW1lcyB8IC0tYXNzZXJ0LW11bHRpLSIKKyN+ICJjb25yZXAuXG4iCisjfiAiXG4iCisjfiAiT3B0aW9uczpcbiIKKyN+ICIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT4gICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorI34gIiAgLS1yb290PTxkaXJlY3Rvcnk+ICAgICAgICAgSW5zdGFsbCBvbiBhbHRlcm5hdGl2ZSBzeXN0ZW0gcm9vdGVkICIKKyN+ICJlbHNld2hlcmUuXG4iCisjfiAiICAtLWluc3RkaXI9PGRpcmVjdG9yeT4gICAgICBDaGFuZ2UgaW5zdCduIHJvb3Qgd2l0aG91dCBjaGFuZ2luZyBhZG1pbiAiCisjfiAiZGlyLlxuIgorI34gIiAgLU98LS1zZWxlY3RlZC1vbmx5ICAgICAgICAgU2tpcCBwYWNrYWdlcyBub3Qgc2VsZWN0ZWQgZm9yIGluc3RhbGwvIgorI34gInVwZ3JhZGUuXG4iCisjfiAiICAtRXwtLXNraXAtc2FtZS12ZXJzaW9uICAgICBTa2lwIHBhY2thZ2VzIHdob3NlIHNhbWUgdmVyc2lvbiBpcyAiCisjfiAiaW5zdGFsbGVkLlxuIgorI34gIiAgLUd8LS1yZWZ1c2UtZG93bmdyYWRlICAgICAgU2tpcCBwYWNrYWdlcyB3aXRoIGVhcmxpZXIgdmVyc2lvbiB0aGFuICIKKyN+ICJpbnN0YWxsZWQuXG4iCisjfiAiICAtQnwtLWF1dG8tZGVjb25maWd1cmUgICAgICBJbnN0YWxsIGV2ZW4gaWYgaXQgd291bGQgYnJlYWsgc29tZSBvdGhlciAiCisjfiAicGFja2FnZS5cbiIKKyN+ICIgIC0tbm8tZGVic2lnICAgICAgICAgICAgICAgIERvIG5vdCB0cnkgdG8gdmVyaWZ5IHBhY2thZ2Ugc2lnbmF0dXJlcy5cbiIKKyN+ICIgIC0tbm8tYWN0fC0tZHJ5LXJ1bnwtLXNpbXVsYXRlXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBKdXN0IHNheSB3aGF0IHdlIHdvdWxkIGRvIC0gZG9uJ3QgZG8gaXQuXG4iCisjfiAiICAtRHwtLWRlYnVnPTxvY3RhbD4gICAgICAgICBFbmFibGUgZGVidWdnaW5nIC0gc2VlIC1EaGVscCBvciAtLSIKKyN+ICJkZWJ1Zz1oZWxwLlxuIgorI34gIiAgLS1zdGF0dXMtZmQgPG4+ICAgICAgICAgICAgU2VuZCBzdGF0dXMgY2hhbmdlIHVwZGF0ZXMgdG8gZmlsZSAiCisjfiAiZGVzY3JpcHRvciA8bj4uXG4iCisjfiAiICAtLWxvZz08ZmlsZW5hbWU+ICAgICAgICAgICBMb2cgc3RhdHVzIGNoYW5nZXMgYW5kIGFjdGlvbnMgdG8gIgorI34gIjxmaWxlbmFtZT4uXG4iCisjfiAiICAtLWlnbm9yZS1kZXBlbmRzPTxwYWNrYWdlPiwuLi4gSWdub3JlIGRlcGVuZGVuY2llcyBpbnZvbHZpbmcgIgorI34gIjxwYWNrYWdlPi5cbiIKKyN+ICIgIC0tZm9yY2UtLi4uICAgICAgICAgICAgICAgICAgICBPdmVycmlkZSBwcm9ibGVtcyAtIHNlZSAtLWZvcmNlLWhlbHAuXG4iCisjfiAiICAtLW5vLWZvcmNlLS4uLnwtLXJlZnVzZS0uLi4gICAgU3RvcCB3aGVuIHByb2JsZW1zIGVuY291bnRlcmVkLlxuIgorI34gIiAgLS1hYm9ydC1hZnRlciA8bj4gICAgICAgICAgICAgIEFib3J0IGFmdGVyIGVuY291bnRlcmluZyA8bj4gZXJyb3JzLlxuIgorI34gIlxuIgorI34gIkNvbXBhcmlzb24gb3BlcmF0b3JzIGZvciAtLWNvbXBhcmUtdmVyc2lvbnMgYXJlOlxuIgorI34gIiAgbHQgbGUgZXEgbmUgZ2UgZ3QgICAgICAgKHRyZWF0IGVtcHR5IHZlcnNpb24gYXMgZWFybGllciB0aGFuIGFueSAiCisjfiAidmVyc2lvbik7XG4iCisjfiAiICBsdC1ubCBsZS1ubCBnZS1ubCBndC1ubCAodHJlYXQgZW1wdHkgdmVyc2lvbiBhcyBsYXRlciB0aGFuIGFueSAiCisjfiAidmVyc2lvbik7XG4iCisjfiAiICA8IDw8IDw9ID0gPj0gPj4gPiAgICAgICAob25seSBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIGNvbnRyb2wgZmlsZSAiCisjfiAic3ludGF4KS5cbiIKKyN+ICJcbiIKKyN+ICJVc2UgYGRzZWxlY3QnIG9yIGBhcHRpdHVkZScgZm9yIHVzZXItZnJpZW5kbHkgcGFja2FnZSBtYW5hZ2VtZW50LlxuIgorI34gbXNnc3RyICIiCisjfiAiTW9kbyBkZSB1c286ICVzIFs8b3BjacOzbl0gLi4uIDxvcmRlbj5cbiIKKyN+ICJcbiIKKyN+ICLDk3JkZW5lczpcbiIKKyN+ICIgIC1pfC0taW5zdGFsbCAgICAgIDxmaWNoZXJvIC5kZWI+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXI+IC4uLlxuIgorI34gIiAgLS11bnBhY2sgICAgICAgICAgPGZpY2hlcm8gLmRlYj4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRpcj4gLi4uXG4iCisjfiAiICAtQXwtLXJlY29yZC1hdmFpbCA8ZmljaGVybyAuZGViPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyPiAuLi5cbiIKKyN+ICIgIC0tY29uZmlndXJlICAgICAgICAgICA8cGFxdWV0ZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisjfiAiICAtcnwtLXJlbW92ZSAgICAgICAgICAgPHBhcXVldGU+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorI34gIiAgLVB8LS1wdXJnZSAgICAgICAgICAgIDxwYXF1ZXRlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyN+ICIgIC1nZXQtc2VsZWN0aW9ucyBbPHBhdHLDs24+IC4uLl0gICAgR2VuZXJhIHVuYSBsaXN0YSBkZSBzZWxlY2Npb25lcyBlbiAiCisjfiAibGEgXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2FsaWRhIGVzdMOhbmRhci5cbiIKKyN+ICIgIC0tc2V0LXNlbGVjdGlvbnMgICAgICAgICAgICAgICAgICBMZWUgbGEgbGlzdGEgZGUgc2VsZWNjaW9uZXMgZGUgbGFcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbnRyYWRhIGVzdMOhbmRhci5cbiIKKyN+ICIgIC0tdXBkYXRlLWF2YWlsIDxhcmNoLVBhY2thZ2VzPiAgICBSZWVtcGxhemEgbGEgaW5mb3JtYWNpw7NuIGRlIHBhcXVldGVzXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcG9uaWJsZXMuXG4iCisjfiAiICAtLW1lcmdlLWF2YWlsIDxhcmNoLVBhY2thZ2VzPiAgICAgQcOxYWRlIGluZm9ybWFjacOzbiBkZWwgZmljaGVyb1xuIgorI34gIiAgLS1jbGVhci1hdmFpbCAgICAgICAgICAgICAgICAgICAgIEJvcnJhIGxhIGluZm9ybWFjacOzbiBhY3R1YWwgc29icmVcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXF1ZXRlcyBkaXNwb25pYmxlcy5cbiIKKyN+ICIgIC0tZm9yZ2V0LW9sZC11bmF2YWlsICAgICAgICAgICAgICBPbHZpZGEgbGEgaW5mb3JtYWNpw7NuIHNvYnJlIHBhcXVldGVzXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbm8gaW5zdGFsYWRvcyB5IG5vIGRpc3BvbmlibGVzLlxuIgorI34gIiAgLXN8LS1zdGF0dXMgPHBhcXVldGU+IC4uLiAgICAgICAgIE11ZXN0cmEgZGV0YWxsZXMgc29icmUgZWwgZXN0YWRvIGRlbFxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhcXVldGUuXG4iCisjfiAiICAtcHwtLXByaW50LWF2YWlsIDxwYXF1ZXRlPiAuLi4gICAgTXVlc3RyYSBkZXRhbGxlcyBzb2JyZSBsYSB2ZXJzacOzblxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BvbmlibGUuXG4iCisjfiAiICAtTHwtLWxpc3RmaWxlcyA8cGFxdWV0ZT4gLi4uICAgICAgTGlzdGEgZmljaGVyb3MgZGVsKGRlIGxvcykgcGFxdWV0ZSIKKyN+ICIocykuXG4iCisjfiAiICAtbHwtLWxpc3QgWzxwYXRyw7NuPiAuLi5dICAgICAgICAgIExpc3RhIHBhcXVldGVzIGJyZXZlbWVudGUuXG4iCisjfiAiICAtU3wtLXNlYXJjaCA8cGF0csOzbj4gLi4uICAgICAgICAgIEJ1c2NhIGVsKGxvcykgcGFxdWV0ZShzKSBxdWUgIgorI34gImNvbnRpZW5lblxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVzb3MgZmljaGVyb3MuXG4iCisjfiAiICAtQ3wtLWF1ZGl0ICAgICAgICAgICAgICAgICAgICAgICAgQ29tcHJ1ZWJhIHNpIGhheSBwYXF1ZXRlcyByb3Rvcy5cbiIKKyN+ICIgIC0tcHJpbnQtYXJjaGl0ZWN0dXJlICAgICAgICAgICAgICBNdWVzdHJhIGxhIGFycXVpdGVjdHVyYSBkZSBkZXN0aW5vLlxuIgorI34gIiAgLS1jb21wYXJlLXZlcnNpb25zIDxhPiA8cmVsPiA8Yj4gIENvbXBhcmEgbG9zIG7Dum1lcm9zIGRlIHZlcnNpw7NuLFxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHbDqWFzZSBtw6FzIGFkZWxhbnRlLlxuIgorI34gIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgICAgICAgICAgIE11ZXN0cmEgZXN0YSBheXVkYWxcbiIKKyN+ICIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgICAgICAgICBNdWVzdHJhIGxhIHZlcnNpw7NuLlxuIgorI34gIiAgLS1mb3JjZS1oZWxwIHwgLURofC0tZGVidWc9aGVscCAgIE11ZXN0cmEgYXl1ZGEgc29icmUgZm9yemFyIG8gIgorI34gImRlcHVyYXIuXG4iCisjfiAiICAtLWxpY2Vuc2UgfCAtLWxpY2VuY2UgICAgICAgICAgICAgTXVlc3RyYSBsYSBsaWNlbmNpYSB5IGVsIGNvcHlyaWdodC5cbiIKKyN+ICJcbiIKKyN+ICJVdGlsaWNlIGRwa2cgLWJ8LS1idWlsZHwtY3wtLWNvbnRlbnRzfC1lfC0tY29udHJvbHwtSXwtLWluZm98LWZ8LS1maWVsZHxcbiIKKyN+ICIgLXh8LS1leHRyYWN0fC1YfC0tdmV4dHJhY3R8LS1mc3lzLXRhcmZpbGUgIHNvYnJlIGFyY2hpdm9zXG4iCisjfiAiIChpbnRyb2R1emNhICVzIC0taGVscC4pXG4iCisjfiAiXG4iCisjfiAiUGFyYSB1c28gaW50ZXJubzogZHBrZyAtLWFzc2VydC1zdXBwb3J0LXByZWRlcGVuZHMgfCAtLXByZWRlcC1wYWNrYWdlIHxcbiIKKyN+ICIgIC0tYXNzZXJ0LXdvcmtpbmctZXBvY2ggfCAtLWFzc2VydC1sb25nLWZpbGVuYW1lcyB8IC0tYXNzZXJ0LW11bHRpLSIKKyN+ICJjb25yZXBcbiIKKyN+ICJcbiIKKyN+ICJPcGNpb25lczpcbiIKKyN+ICIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yaW8+ICAgIFV0aWxpemEgPGRpcmVjdG9yaW8+IGVuIHZleiBkZSAlcy5cbiIKKyN+ICIgIC0tcm9vdD08ZGlyZWN0b3Jpbz4gICAgICAgIEluc3RhbGEgZW4gdW4gc2lzdGVtYSBhbHRlcm5hdGl2byBjb24gIgorI34gImRpcmVjdG9yaW9cbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJhw616IGVuIG90cm8gc2l0aW8uXG4iCisjfiAiICAtLWluc3RkaXI9PGRpcmVjdG9yaW8+ICAgICBDYW1iaWEgbGEgcmHDrXogZGUgbGEgaW5zdGFsYWNpw7NuIHNpbiBhbHRlcmFyICIKKyN+ICJlbFxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlyZWN0b3JpbyBkZSBhZG1pbmlzdHJhY2nDs24uXG4iCisjfiAiICAtT3wtLXNlbGVjdGVkLW9ubHkgICAgICAgICBPbWl0ZSBsb3MgcGFxdWV0ZXMgbm8gc2VsZWNjaW9uYWRvcyBwYXJhXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnN0YWxhY2nDs24gbyBhY3R1YWxpemFjacOzbi5cbiIKKyN+ICIgIC1FfC0tc2tpcC1zYW1lLXZlcnNpb24gICAgIE9taXRlIGxvcyBwYXF1ZXRlcyBjdXlhIHZlcnNpw7NuIGVzIGxhIG1pc21hICIKKyN+ICJxdWVcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhIGRlIGxvcyBpbnN0YWxhZG9zLlxuIgorI34gIiAgLUd8LS1yZWZ1c2UtZG93bmdyYWRlICAgICAgT21pdGUgbG9zIHBhcXVldGVzIGNvbiB2ZXJzacOzbiBhbnRlcmlvciBxdWUgIgorI34gImxhIGRlXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsb3MgaW5zdGFsYWRvcy5cbiIKKyN+ICIgIC1CfC0tYXV0by1kZWNvbmZpZ3VyZSAgICAgIEluc3RhbGEgYcO6biBjdWFuZG8gc2UgcHVlZGEgcm9tcGVyIGFsZ8O6biAiCisjfiAib3Ryb1xuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFxdWV0ZSxcbiIKKyN+ICIgIC0tbm8tZGVic2lnICAgICAgICAgICAgICAgIE5vIHZlcmlmaWNhIGxhcyBmaXJtYXMgZGUgbG9zIHBhcXVldGVzLlxuIgorI34gIiAgLS1uby1hY3R8LS1kcnktcnVufC0tc2ltdWxhdGVcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEluZGljYSBzb2xhbWVudGUgbG8gcXVlIGhhcsOtYSwgcGVybyBubyBoYWNlICIKKyN+ICJuYWRhLlxuIgorI34gIiAgLUR8LS1kZWJ1Zz08b2N0YWw+ICAgICAgICAgSGFiaWxpdGEgZWwgZGVwdXJhZG8sIHbDqWFzZSAtRGhlbHAgw7MgLS0iCisjfiAiZGVidWc9aGVscC5cbiIKKyN+ICIgIC0tc3RhdHVzLWZkIDxuPiAgICAgICAgICAgIEVudsOtYSBhY3R1YWxpemFjaW9uZXMgZGUgY2FtYmlvcyBkZSBzdGF0dXMgIgorI34gImFsXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXNjcmlwdG9yIGRlIGZpY2hlcm8gPG4+LlxuIgorI34gIiAgLS1sb2c9PGZpY2hlcm8+ICAgICAgICAgICAgUmVnaXN0cmEgbG9zIGNhbWJpb3MgZGUgZXN0YWRvIGVuIDxmaWNoZXJvPlxuIgorI34gIiAgLS1pZ25vcmUtZGVwZW5kcz08cGFxdWV0ZT4sLi4uIE5vIHRpZW5lIGVuIGN1ZW50YSBsYXMgZGVwZW5kZW5jaWFzIHF1ZVxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGltcGxpcXVlbiBhIDxwYXF1ZXRlPi5cbiIKKyN+ICIgIC0tZm9yY2UtLi4uICAgICAgICAgICAgICAgICBEZXNjYXJ0YSBwcm9ibGVtYXMsIHbDqWFzZSAtLWZvcmNlLWhlbHAuXG4iCisjfiAiICAtLW5vLWZvcmNlLS4uLnwtLXJlZnVzZS0uLi4gU2UgZGV0aWVuZSBjdWFuZG8gc2UgZW5jdWVudHJhbiBwcm9ibGVtYXMuXG4iCisjfiAiICAtLWFib3J0LWFmdGVyIDxuPiAgICAgICAgICAgQ2FuY2VsYSBkZXNwdcOpcyBkZSA8bj4gZXJyb3Jlcy5cbiIKKyN+ICJcbiIKKyN+ICJMb3Mgb3BlcmFkb3JlcyBkZSBjb21wYXJhY2nDs24gcGFyYSAtLWNvbXBhcmUtdmVyc2lvbnMgc29uOlxuIgorI34gIiBsdCBsZSBlcSBuZSBnZSBndCAgICAgICAodHJhdGEgdW5hIHZlcnNpw7NuIGluZXhpc3RlbnRlIGNvbW8gYW50ZXJpb3IgYVxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGN1YWxxdWllciB2ZXJzacOzbik7XG4iCisjfiAiIGx0LW5sIGxlLW5sIGdlLW5sIGd0LW5sICh0cmF0YSB1bmEgdmVyc2nDs24gaW5leGlzdGVudGUgY29tbyBwb3N0ZXJpb3IgYVxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGN1YWxxdWllciB2ZXJzacOzbik7XG4iCisjfiAiIDwgPDwgPD0gPSA+PSA+PiA+ICAgICAgIChzw7NsbyBwb3IgY29tcGF0aWJpbGlkYWQgY29uIGxhIHNpbnRheGlzIGRlIGxvc1xuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpY2hlcm9zIGRlIGNvbnRyb2wpLlxuIgorI34gIlxuIgorI34gIlV0aWxpY2UgYGRzZWxlY3QnIG8gJ2FwdGl0dWRlJyBwYXJhIHVuYSBnZXN0acOzbiBkZSBwYXF1ZXRlcyBtw6FzICIKKyN+ICJhbWlnYWJsZS5cbiIKKworI34gbXNnaWQgIiAgUGFja2FnZSAiCisjfiBtc2dzdHIgIiAgZWwgcGFxdWV0ZSAiCisKKyN+IG1zZ2lkICIgd2hpY2ggcHJvdmlkZXMgIgorI34gbXNnc3RyICIgcXVlIHByb3ZlZSAiCisKKyN+IG1zZ2lkICIgaXMgdG8gYmUgcmVtb3ZlZC5cbiIKKyN+IG1zZ3N0ciAiIHZhIGEgc2VyIGRlc2luc3RhbGFkby5cbiIKKworI34gbXNnaWQgIiAgVmVyc2lvbiBvZiAiCisjfiBtc2dzdHIgIiAgVmVyc2nDs24gZGUgIgorCisjfiBtc2dpZCAiIG9uIHN5c3RlbSBpcyAiCisjfiBtc2dzdHIgIiAgZW4gZWwgc2lzdGVtYSBlcyAiCisKKyN+IG1zZ2lkICIgaXMgbm90IGluc3RhbGxlZC5cbiIKKyN+IG1zZ3N0ciAiIG5vIGVzdMOhIGluc3RhbGFkby5cbiIKKworIyBJbnRyYWR1Y2libGUgc2luIGNvbnRleHRvLCBwb3NpYmxlbWVudGUgZXMgdW4gImRpdmVydCIuIHN2CisjfiBtc2dpZCAiIHRvOiAlc1xuIgorI34gbXNnc3RyICIgYTogJXNcbiIKKworI34gbXNnaWQgImZnZXRwb3MgZmFpbGVkIgorI34gbXNnc3RyICJmZ2V0cG9zIGZhbGzDsyIKKworI34gbXNnaWQgImZzZXRwb3MgZmFpbGVkIgorI34gbXNnc3RyICJmc2V0cG9zIGZhbGzDsyIKKworI34gbXNnaWQgIiIKKyN+ICJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gPGNvbW1hbmQ+XG4iCisjfiAiXG4iCisjfiAiQ29tbWFuZHM6XG4iCisjfiAiICAtYnwtLWJ1aWxkIDxkaXJlY3Rvcnk+IFs8ZGViPl0gICAgQnVpbGQgYW4gYXJjaGl2ZS5cbiIKKyN+ICIgIC1jfC0tY29udGVudHMgPGRlYj4gICAgICAgICAgICAgICBMaXN0IGNvbnRlbnRzLlxuIgorI34gIiAgLUl8LS1pbmZvIDxkZWI+IFs8Y2ZpbGU+Li4uXSAgICAgIFNob3cgaW5mbyB0byBzdGRvdXQuXG4iCisjfiAiICAtV3wtLXNob3cgPGRlYj4gICAgICAgICAgICAgICAgICAgU2hvdyBpbmZvcm1hdGlvbiBvbiBwYWNrYWdlKHMpXG4iCisjfiAiICAtZnwtLWZpZWxkIDxkZWI+IFs8Y2ZpZWxkPi4uLl0gICAgU2hvdyBmaWVsZChzKSB0byBzdGRvdXQuXG4iCisjfiAiICAtZXwtLWNvbnRyb2wgPGRlYj4gWzxkaXJlY3Rvcnk+XSAgRXh0cmFjdCBjb250cm9sIGluZm8uXG4iCisjfiAiICAteHwtLWV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gICAgRXh0cmFjdCBmaWxlcy5cbiIKKyN+ICIgIC1YfC0tdmV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gICBFeHRyYWN0ICYgbGlzdCBmaWxlcy5cbiIKKyN+ICIgIC0tZnN5cy10YXJmaWxlIDxkZWI+ICAgICAgICAgICAgICBPdXRwdXQgZmlsZXN5c3RlbSB0YXJmaWxlLlxuIgorI34gIiAgLWh8LS1oZWxwICAgICAgICAgICAgICAgICAgICAgICAgIERpc3BsYXkgdGhpcyBtZXNzYWdlLlxuIgorI34gIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICAgICAgICAgIFNob3cgdmVyc2lvbi5cbiIKKyN+ICIgIC0tbGljZW5zZSB8IC0tbGljZW5jZSAgICAgICAgICAgICBTaG93IGxpY2Vuc2UuXG4iCisjfiAiXG4iCisjfiAiPGRlYj4gaXMgdGhlIGZpbGVuYW1lIG9mIGEgRGViaWFuIGZvcm1hdCBhcmNoaXZlLlxuIgorI34gIjxjZmlsZT4gaXMgdGhlIG5hbWUgb2YgYW4gYWRtaW5pc3RyYXRpdmUgZmlsZSBjb21wb25lbnQuXG4iCisjfiAiPGNmaWVsZD4gaXMgdGhlIG5hbWUgb2YgYSBmaWVsZCBpbiB0aGUgbWFpbiBgY29udHJvbCcgZmlsZS5cbiIKKyN+ICJcbiIKKyN+ICJPcHRpb25zOlxuIgorI34gIiAgLS1zaG93Zm9ybWF0PTxmb3JtYXQ+ICAgICAgVXNlIGFsdGVybmF0aXZlIGZvcm1hdCBmb3IgLS1zaG93LlxuIgorI34gIiAgLUQgICAgICAgICAgICAgICAgICAgICAgICAgRW5hYmxlIGRlYnVnZ2luZyBvdXRwdXQuXG4iCisjfiAiICAtLW9sZCwgLS1uZXcgICAgICAgICAgICAgICBTZWxlY3QgYXJjaGl2ZSBmb3JtYXQuXG4iCisjfiAiICAtLW5vY2hlY2sgICAgICAgICAgICAgICAgICBTdXBwcmVzcyBjb250cm9sIGZpbGUgY2hlY2sgKGJ1aWxkIGJhZCAiCisjfiAicGFja2FnZSkuXG4iCisjfiAiICAteiMgICAgICAgICAgICAgICAgICAgICAgICBTZXQgdGhlIGNvbXByZXNzaW9uIGxldmVsIHdoZW4gYnVpbGRpbmcuXG4iCisjfiAiICAtWjx0eXBlPiAgICAgICAgICAgICAgICAgICBTZXQgdGhlIGNvbXByZXNzaW9uIHR5cGUgdG8gdXNlIHdoZW4gIgorI34gImJ1aWxkaW5nLlxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWxsb3dlZCB2YWx1ZXM6IGd6aXAsIGJ6aXAyLCBub25lLlxuIgorI34gIlxuIgorI34gbXNnc3RyICIiCisjfiAiTW9kbyBkZSB1c286ICVzIFs8b3BjacOzbj4gLi4uXSA8b3JkZW4+XG4iCisjfiAiT3JkZW46XG4iCisjfiAiICAtYnwtLWJ1aWxkIDxkaXJlY3RvcmlvPiBbPGRlYj5dICAgIGNvbnN0cnV5ZSB1biBhcmNoaXZvLlxuIgorI34gIiAgLWN8LS1jb250ZW50cyA8ZGViPiAgICAgICAgICAgICAgICBsaXN0YSBlbCBjb250ZW5pZG8uXG4iCisjfiAiICAtSXwtLWluZm8gPGRlYj4gWzxjZmljaGVybz4uLi5dICAgIG11ZXN0cmEgaW5mb3JtYWNpw7NuIGVuIGxhIHNhbGlkYSAiCisjfiAiZXN0w6FuZGFyLlxuIgorI34gIiAgLVd8LS1zaG93IDxkZWI+ICAgICAgICAgICAgICAgICAgICBtdWVzdHJhIGluZm9ybWFjacOzbiBzb2JyZSBlbC9sb3NcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFxdWV0ZShzKVxuIgorI34gIiAgLWZ8LS1maWVsZCA8ZGViPiBbPGNjYW1wbz4uLi5dICAgICBtdWVzdHJhIGVsL2xvcyBjYW1wby9zIGVuIGxhIHNhbGlkYVxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlc3TDoW5kYXIuXG4iCisjfiAiICAtZXwtLWNvbnRyb2wgPGRlYj4gWzxkaXJlY3RvcmlvPl0gIGV4dHJhZSBsYSBpbmZvcm1hY2nDs24gZGUgY29udHJvbFxuIgorI34gIiAgLXh8LS1leHRyYWN0IDxkZWI+IDxkaXJlY3RvcmlvPiAgICBleHRyYWUgbG9zIGZpY2hlcm9zLlxuIgorI34gIiAgLVh8LS12ZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3Jpbz4gICBleHRyYWUgeSBsaXN0YSBsb3MgZmljaGVyb3MuXG4iCisjfiAiICAtLWZzeXMtdGFyZmlsZSA8ZGViPiAgICAgICAgICAgICAgIHByb2R1Y2UgZWwgYXJjaGl2byB0YXIgZGVsIHNpc3RlbWEgIgorI34gImRlXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpY2hlcm9zLlxuIgorI34gIiAgLWh8LS1oZWxwICAgICAgICAgICAgICAgICAgICAgICAgICBtdWVzdHJhIGVzdGUgbWVuc2FqZS5cbiIKKyN+ICIgIC0tdmVyc2lvbiB8IC0tbGljZW5jZSAgICAgICAgICAgICAgbXVlc3RyYSBsYSB2ZXJzacOzbi9saWNlbmNpYS5cbiIKKyN+ICJcbiIKKyN+ICI8ZGViPiBlcyBlbCBub21icmUgZGUgZmljaGVybyBkZSB1biBhcmNoaXZvIGVuIGZvcm1hdG8gRGViaWFuLlxuIgorI34gIjxjZmljaGVybz4gZXMgZWwgbm9tYnJlIGRlIHVuIGNvbXBvbmVudGUgZGUgZmljaGVybyBhZG1pbmlzdHJhdGl2by5cbiIKKyN+ICI8Y2NhbXBvPiBlcyBlbCBub21icmUgZGUgdW4gY2FtcG8gZW4gZWwgZmljaGVybyBkZSBgY29udHJvbCcgcHJpbmNpcGFsLlxuIgorI34gIlxuIgorI34gIk9wY2lvbmVzOlxuIgorI34gIiAgLS1zaG93Zm9ybWF0PTxmb3JtYXRvPiAgIHV0aWxpemEgdW4gZm9ybWF0byBhbHRlcm5hdGl2byBwYXJhIC0tc2hvd1xuIgorI34gIiAgLUQgICAgICAgICAgICAgICAgICAgICAgIGFjdGl2YSBsYSBzYWxpZGEgZGUgZGVwdXJhY2nDs25cbiIKKyN+ICIgIC0tb2xkLCAtLW5ldyAgICAgICAgICAgICBzZWxlY2Npb25hIGVsIGZvcm1hdG8gZGVsIGFyY2hpdm9cbiIKKyN+ICIgIC0tbm9jaGVjayAgICAgICAgICAgICAgICBzdXByaW1lIGxhIHZlcmlmaWNhY2nDs24gZGVsIGZpY2hlcm8gZGUgIgorI34gImNvbnRyb2xcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAoY29uc3RydXllIHBhcXVldGVzIGVycsOzbmVvcylcbiIKKyN+ICIgIC16IyAgICAgICAgICAgICAgICAgICAgICBwYXJhIGVzdGFibGVjZXIgbGEgY29tcHJlc2nDs24gZW4gbGEgY3JlYWNpw7NuIFxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlbCBwYXF1ZXRlXG4iCisjfiAiICAtWjx0aXBvPiAgICAgICAgICAgICAgICAgZXN0YWJsZWNlIGVsIHRpcG8gZGUgY29tcHJlc2nDs24gYSB1c2FyIGN1YW5kb1xuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlIGNvbnN0cnV5ZSB1biBwYXF1ZXRlLiBWYWxvcmVzIHBlcm1pdGlkb3M6XG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgwqtnemlwwrssIMKrYnppcDLCuywgwqtub25lwrsgKG5pbmd1bmEpXG4iCisjfiAiXG4iCisjfiAiVXRpbGljZSBgZHBrZycgcGFyYSBpbnN0YWxhciB5IGRlc2luc3RhbGFyIHBhcXVldGVzIGRlbCBzaXN0ZW1hLCBvXG4iCisjfiAiYGRzZWxlY3QnIG8gYGFwdGl0dWRlJyBwYXJhIHVuYSBnZXN0acOzbiBkZSBwYXF1ZXRlcyBhbWlnYWJsZS4gwqFMb3NcbiIKKyN+ICJwYXF1ZXRlcyBkZXNlbXBhcXVldGFkb3MgdXNhbmRvIGBkcGtnLWRlYiAtLWV4dHJhY3QnIHNlIGluc3RhbGFyw6FuXG4iCisjfiAiaW5jb3JyZWN0YW1lbnRlISBcbiIKKworI34gbXNnaWQgIiIKKyN+ICJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gPGNvbW1hbmQ+XG4iCisjfiAiXG4iCisjfiAiQ29tbWFuZHM6XG4iCisjfiAiICAtc3wtLXNwbGl0IDxmaWxlPiBbPHByZWZpeD5dICAgIFNwbGl0IGFuIGFyY2hpdmUuXG4iCisjfiAiICAtanwtLWpvaW4gPHBhcnQ+IDxwYXJ0PiAuLi4gICAgIEpvaW4gcGFydHMgdG9nZXRoZXIuXG4iCisjfiAiICAtSXwtLWluZm8gPHBhcnQ+IC4uLiAgICAgICAgICAgIERpc3BsYXkgaW5mbyBhYm91dCBhIHBhcnQuXG4iCisjfiAiICAtaHwtLWhlbHAgICAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisjfiAiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhlIHZlcnNpb24uXG4iCisjfiAiICAtLWxpY2Vuc2UgICAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhlIGxpY2Vuc2UuXG4iCisjfiAiXG4iCisjfiAiICAtYXwtLWF1dG8gLW8gPGNvbXBsZXRlPiA8cGFydD4gIEF1dG8tYWNjdW11bGF0ZSBwYXJ0cy5cbiIKKyN+ICIgIC1sfC0tbGlzdHEgICAgICAgICAgICAgICAgICAgICAgTGlzdCB1bm1hdGNoZWQgcGllY2VzLlxuIgorI34gIiAgLWR8LS1kaXNjYXJkIFs8ZmlsZW5hbWU+IC4uLl0gICBEaXNjYXJkIHVubWF0Y2hlZCBwaWVjZXMuXG4iCisjfiAiXG4iCisjfiAiT3B0aW9uczpcbiIKKyN+ICIgIC0tZGVwb3RkaXIgPGRpcmVjdG9yeT4gICAgICAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMvJXMuXG4iCisjfiAiICAtU3wtLXBhcnRzaXplIDxzaXplPiAgICAgICAgICAgIEluIEtpQiwgZm9yIC1zIChkZWZhdWx0IGlzIDQ1MCkuXG4iCisjfiAiICAtb3wtLW91dHB1dCA8ZmlsZT4gICAgICAgICAgICAgIEZvciAtaiAoZGVmYXVsdCBpcyA8cGFja2FnZT4tPHZlcnNpb24+LiIKKyN+ICJkZWIpLlxuIgorI34gIiAgLVF8LS1ucHF1aWV0ICAgICAgICAgICAgICAgICAgICBCZSBxdWlldCB3aGVuIC1hIGlzIG5vdCBhIHBhcnQuXG4iCisjfiAiICAtLW1zZG9zICAgICAgICAgICAgICAgICAgICAgICAgIEdlbmVyYXRlIDguMyBmaWxlbmFtZXMuXG4iCisjfiAiXG4iCisjfiAiRXhpdCBzdGF0dXM6IDAgPSBPSzsgIDEgPSAtYSBpcyBub3QgYSBwYXJ0OyAgMiA9IHRyb3VibGUhXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJNb2RvIGRlIGVtcGxlbzogJXMgWzxvcGNpw7NuPiAuLi5dIDxvcmRlbj5cbiIKKyN+ICLDk3JkZW5lczpcbiIKKyN+ICIgIC1zfC0tc3BsaXQgPGZpY2hlcm8+IFs8cHJlZmlqbz5dIFRyb2NlYSB1biBhcmNoaXZvLlxuIgorI34gIiAgLWp8LS1qb2luIDxwYXJ0ZT4gPHBhcnRlPiAuLi4gICAgVW5lIHBhcnRlcy5cbiIKKyN+ICIgIC1JfC0taW5mbyA8cGFydGU+IC4uLiAgICAgICAgICAgIE11ZXN0cmEgaW5mb3JtYWNpw7NuIHNvYnJlIHBhcnRlLlxuIgorI34gIiAgLWh8LS1oZWxwICAgICAgICAgICAgICAgICAgICAgICAgTXVlc3RyYSBlc3RlIG1lbnNhamUgZGUgYXl1ZGEuXG4iCisjfiAiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgICAgICAgICBNdWVzdHJhIGxhIHZlcnNpw7NuLlxuIgorI34gIiAgLS1saWNlbmNlICAgICAgICAgICAgICAgICAgICAgICAgTXVlc3RyYSBsYSBsaWNlbmNpYS5cbiIKKyN+ICIgIC1hfC0tYXV0byAtbyA8Y29tcGxldGE+IDxwYXJ0ZT4gIEF1dG8tYWN1bXVsYSBwYXJ0ZXMuXG4iCisjfiAiICAtbHwtLWxpc3RxICAgICAgICAgICAgICAgICAgICAgICBMaXN0YSB0cm96b3Mgc2luIGNvcnJlc3BvbmRlbmNpYS5cbiIKKyN+ICIgIC1kfC0tZGlzY2FyZCBbPGZpY2hlcm8+IC4uLl0gICAgIERlc2NhcnRhIHRyb3pvcyBzaW5cbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvcnJlc3BvbmRlbmNpYS5cbiIKKyN+ICJcbiIKKyN+ICJPcGNpb25lczpcbiIKKyN+ICIgICAtLWRlcG90ZGlyIDxkaXJlY3RvcmlvPiAgICAgICAgIFV0aWxpemEgPGRpcmVjdG9yaW8+IGVuIGx1Z2FyIGRlICVzLyIKKyN+ICIlcy5cbiIKKyN+ICIgICAtU3wtLXBhcnRzaXplIDx0YW1hw7FvPiAgICAgICAgICBFbiBLYiwgcGFyYSAtcyAocG9yIG9taXNpw7NuIGVzIDQ1MCkuXG4iCisjfiAiICAgLW98LS1vdXRwdXQgPGZpY2hlcm8+ICAgICAgICAgICBQYXJhIC1qIChwb3Igb21pc2nDs24gZXNcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXF1ZXRlPi08dmVyc2nDs24+LmRlYilcbiIKKyN+ICIgICAtUXwtLW5wcXVpZXQgICAgICAgICAgICAgICAgICAgIEVuIHNpbGVuY2lvIGN1YW5kbyAtYSBubyBlcyB1bmEgIgorI34gInBhcnRlLlxuIgorI34gIiAgIC0tbXNkb3MgICAgICAgICAgICAgICAgICAgICAgICAgR2VuZXJhIG5vbWJyZXMgZGUgZmljaGVyb3MgZW4gZm9ybWF0byAiCisjfiAiOC4zLlxuIgorI34gIlxuIgorI34gIkVzdGFkbyBkZSBzYWxpZGE6IDAgPSBPSzsgIDEgPSAtYSBubyBlcyB1bmEgcGFydGU7ICAyID0gwqFwcm9ibGVtYXMhXG4iCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3BvL2V0LmdtbyBiL2Rwa2ctMS4xNi4xLjEvcG8vZXQuZ21vCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjA5ODhjOTAKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3BvL2V0LmdtbwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3BvL2V0LnBvIGIvZHBrZy0xLjE2LjEuMS9wby9ldC5wbwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44ZDA1OTc4Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9wby9ldC5wbwpAQCAtMCwwICsxLDYyNjcgQEAKKyMgZHBrZyBlZXN0aSBrZWVsZSB0w7VsZ2UuCisjIEVzdG9uaWFuIHRyYW5zbGF0aW9uIG9mIGRwa2cuCisjCisjIFRoaXMgZmlsZSBpcyBkaXN0cmlidXRlZCB1bmRlciB0aGUgc2FtZSBsaWNlbnNlIGFzIHRoZSBkcGtnIHBhY2thZ2UuCisjCisjIENvcHlyaWdodCAoQykgMjAwNiwgMjAwNyBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KKyMgSXZhciBTbW9saW4gPG9rdWwgYXQgbGludXggZWU+LCAyMDA2LCAyMDA3LgorIworbXNnaWQgIiIKK21zZ3N0ciAiIgorIlByb2plY3QtSWQtVmVyc2lvbjogZHBrZyAxLjE0LjVcbiIKKyJSZXBvcnQtTXNnaWQtQnVncy1UbzogZGViaWFuLWRwa2dAbGlzdHMuZGViaWFuLm9yZ1xuIgorIlBPVC1DcmVhdGlvbi1EYXRlOiAyMDExLTEwLTE0IDA3OjExKzAyMDBcbiIKKyJQTy1SZXZpc2lvbi1EYXRlOiAyMDA3LTA3LTEyIDIyOjA2KzAzMDBcbiIKKyJMYXN0LVRyYW5zbGF0b3I6IEl2YXIgU21vbGluIDxva3VsQGxpbnV4LmVlPlxuIgorIkxhbmd1YWdlLVRlYW06IEVzdG9uaWFuIDxldEBsaS5vcmc+XG4iCisiTGFuZ3VhZ2U6IGV0XG4iCisiTUlNRS1WZXJzaW9uOiAxLjBcbiIKKyJDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9VVRGLThcbiIKKyJDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiA4Yml0XG4iCisKKyM6IGxpYi9kcGtnL2FyLmM6NjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgJyVjJyBpbiBhcmNoaXZlICclLjI1MHMnIG1lbWJlciAnJS4xNnMnIHNpemUiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvYXIuYzo4MSBsaWIvZHBrZy9hci5jOjk3IGxpYi9kcGtnL2FyLmM6MTA4IGxpYi9kcGtnL2FyLmM6MTEyCisjOiBsaWIvZHBrZy9hci5jOjEzNCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE1NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIGZpbGUgJyVzJyIKK21zZ3N0ciAibMOkaHRlZmFpbGkgYCUuMjUwcycgcG9sZSB2w7VpbWFsaWsgYXZhZGEiCisKKyM6IGxpYi9kcGtnL2FyLmM6OTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZ2VuZXJhdGVkIGNvcnJ1cHQgYXIgaGVhZGVyIGZvciAnJXMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2FyLmM6MTIzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgYXIgbWVtYmVyIGZpbGUgKCVzKSIKK21zZ3N0ciAidMO1cmdlIHRvcnUgbG9vbWlzZWwiCisKKyM6IGxpYi9kcGtnL2FyLmM6MTMwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJhciBtZW1iZXIgZmlsZSAoJXMpIgorbXNnc3RyICJ0w7VyZ2UgdG9ydSBsb29taXNlbCIKKworIzogbGliL2Rwa2cvYnVmZmVyLmM6MTk2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCBvbiBidWZmZXIgY29weSBmb3IgJXMiCittc2dzdHIgInTDtXJnZSBmdW5rdHNpb29uaXMgYnVmZmVyX2NvcHkgKCVzKSIKKworIzogbGliL2Rwa2cvYnVmZmVyLmM6MjEyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgaW4gd3JpdGUgb24gYnVmZmVyIGNvcHkgZm9yICVzIgorbXNnc3RyICJ0w7VyZ2UgZnVua3RzaW9vbmlzIGJ1ZmZlcl9jb3B5ICglcykiCisKKyM6IGxpYi9kcGtnL2J1ZmZlci5jOjIyMAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAic2hvcnQgcmVhZCBvbiBidWZmZXIgY29weSBmb3IgJXMiCittc2dzdHIgImzDvGhpa2UgbHVnZW1pbmUgZnVua3RzaW9vbmlzIGJ1ZmZlcl9jb3B5ICglcykiCisKKyM6IGxpYi9kcGtnL2J1ZmZlci5jOjI4OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgdGFyIgorbXNnaWQgImZhaWxlZCB0byBzZWVrICVzIgorbXNnc3RyICJ0w7VyZ2UgdGFyLWkga8OkaXZpdGFtaXNlbCIKKworIzogbGliL2Rwa2cvY29tbWFuZC5jOjE3OCBsaWIvZHBrZy9jb21tYW5kLmM6MjA0IHNyYy9oZWxwLmM6NjIxCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjk4IHNyYy9wcm9jZXNzYXJjLmM6MTM4IHNyYy9wcm9jZXNzYXJjLmM6NDMyCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjgzOSBkcGtnLWRlYi9idWlsZC5jOjQ1OSBkcGtnLWRlYi9idWlsZC5jOjUzOAorIzogZHBrZy1kZWIvYnVpbGQuYzo1NjEgZHBrZy1kZWIvZXh0cmFjdC5jOjMxNyBkcGtnLWRlYi9pbmZvLmM6NjUKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzo2OSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NDU3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZXhlY3V0ZSAlcyAoJXMpIgorbXNnc3RyICJmYWlsaSAlcyBwb2xlIHbDtWltYWxpayBsdXVhOiAlcyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzo4MworIywgYy1mb3JtYXQKK21zZ2lkICIlczogZGVjb21wcmVzc2lvbiIKK21zZ3N0ciAiJXM6IGxhaHRpcGFra2ltaW5lIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjg5CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBjb21wcmVzc2lvbiIKK21zZ3N0ciAiJXM6IHBha2tpbWluZSIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yIGJpbmRpbmcgaW5wdXQgdG8gZ3ppcCBzdHJlYW0iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxMjQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHJlYWQgZXJyb3I6ICclcyciCittc2dzdHIgIiVzOiBzaXNlbWluZSBnemlwIHZpZ2E6IGAlcyciCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTMyIGxpYi9kcGtnL2NvbXByZXNzLmM6MTM2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCB3cml0ZSBlcnJvciIKK21zZ3N0ciAiJXM6IHNpc2VtaW5lIGd6aXAgdmlnYTogYCVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yIGJpbmRpbmcgb3V0cHV0IHRvIGd6aXAgc3RyZWFtIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTU3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCByZWFkIGVycm9yIgorbXNnc3RyICIlczogc2lzZW1pbmUgZ3ppcCB2aWdhOiBgJXMnIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE2NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgd3JpdGUgZXJyb3I6ICclcyciCittc2dzdHIgIiVzOiBzaXNlbWluZSBnemlwIHZpZ2E6IGAlcyciCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTgwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCB3cml0ZSBlcnJvcjogJXMiCittc2dzdHIgIiVzOiBzaXNlbWluZSBnemlwIHZpZ2E6IGAlcyciCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjIwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvciBiaW5kaW5nIGlucHV0IHRvIGJ6aXAyIHN0cmVhbSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjIzMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIHJlYWQgZXJyb3I6ICclcyciCittc2dzdHIgIiVzOiBzaXNlbWluZSBiemlwMiB2aWdhOiBgJXMnIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI0MCBsaWIvZHBrZy9jb21wcmVzcy5jOjI0NCBsaWIvZHBrZy9jb21wcmVzcy5jOjI5NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIHdyaXRlIGVycm9yIgorbXNnc3RyICIlczogc2lzZW1pbmUgYnppcDIgdmlnYTogYCVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yIGJpbmRpbmcgb3V0cHV0IHRvIGJ6aXAyIHN0cmVhbSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI2NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIHJlYWQgZXJyb3IiCittc2dzdHIgIiVzOiBzaXNlbWluZSBiemlwMiB2aWdhOiBgJXMnIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI3NSBsaWIvZHBrZy9jb21wcmVzcy5jOjI4NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIHdyaXRlIGVycm9yOiAnJXMnIgorbXNnc3RyICIlczogc2lzZW1pbmUgYnppcDIgdmlnYTogYCVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyODIKK21zZ2lkICJ1bmV4cGVjdGVkIGJ6aXAyIGVycm9yIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVwZGF0ZXMgZGlyZWN0b3J5IGNvbnRhaW5zIGZpbGUgYCUuMjUwcycgd2hvc2UgbmFtZSBpcyB0b28gbG9uZyAobGVuZ3RoPSVkLCAiCisibWF4PSVkKSIKK21zZ3N0ciAiIgorInV1ZW5kdXN0ZSBrYXRhbG9vZyBzaXNhbGRhYiBmYWlsaSBgJS4yNTBzJywgbWlsbGUgbmltaSBvbiBsaWlnYSBwaWtrIChwaWtrdXMgIgorIiVkLCBzdXVyaW0gbHViYXR1ZCBzdXVydXMgb24gJWQpIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1cGRhdGVzIGRpcmVjdG9yeSBjb250YWlucyBmaWxlcyB3aXRoIGRpZmZlcmVudCBsZW5ndGggbmFtZXMgKGJvdGggJWQgYW5kICVkKSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjg2CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzY2FuIHVwZGF0ZXMgZGlyZWN0b3J5IGAlLjI1NXMnIgorbXNnc3RyICJ1dWVuZHVzdGUga2F0YWxvb2dpIGAlLjI1NXMnIHBvbGUgdsO1aW1hbGlrIGzDpGJpIHZhYWRhdGEiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZW1vdmUgaW5jb3Jwb3JhdGVkIHVwZGF0ZSBmaWxlICUuMjU1cyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEyMSBkcGtnLWRlYi9idWlsZC5jOjQ0NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGAlLjI1NXMnIgorbXNnc3RyICJmYWlsaSBgJS4yNTVzJyBwb2xlIHbDtWltYWxpayBsdXVhIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEyNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmlsbCAlLjI1MHMgd2l0aCBwYWRkaW5nIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTI3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCAlLjI1MHMgYWZ0ZXIgcGFkZGluZyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEyOQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2VlayB0byBzdGFydCBvZiAlLjI1MHMgYWZ0ZXIgcGFkZGluZyIKK21zZ3N0ciAiIgorCisjIEZJWE1FISBrdWlkYXMgcGVha3MgImNvbnRyb2wgYXJjaGl2ZSIgdMO1bGtpbWE/IGhldGtlbCBvbiB0w7VsZ2l0dWQga3VpIGp1aHRhcmhpaXYKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTk1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gb3BlbiB0bXBmaWxlIGZvciB2c25wcmludGYiCittc2dpZCAidW5hYmxlIHRvIG9wZW4gbG9jayBmaWxlICVzIGZvciB0ZXN0aW5nIgorbXNnc3RyICJ0w7VyZ2UgdG1wZmlsZSBhdmFtaXNlbCBmdW5rdHNpb29uaXMgdnNucHJpbnRmIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjIyMQorbXNnaWQgInVuYWJsZSB0byBvcGVuL2NyZWF0ZSBzdGF0dXMgZGF0YWJhc2UgbG9ja2ZpbGUiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyMzEKK21zZ2lkICJ5b3UgZG8gbm90IGhhdmUgcGVybWlzc2lvbiB0byBsb2NrIHRoZSBkcGtnIHN0YXR1cyBkYXRhYmFzZSIKK21zZ3N0ciAic3VsIHBvbGUgw7VpZ3VzdCBkcGtnIG9sZWt1YW5kbWViYWFzaSBsdWt1c3RhZGEiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjMzCisjLCBmdXp6eQorI3wgbXNnaWQgInVuYWJsZSB0byBsb2NrIGRwa2cgc3RhdHVzIGRhdGFiYXNlIgorbXNnaWQgImRwa2cgc3RhdHVzIGRhdGFiYXNlIgorbXNnc3RyICJkcGtnIG9sZWt1YW5kbWViYWFzaSBwb2xlIHbDtWltYWxpayBsdWt1c3RhZGEiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjU3Cittc2dpZCAicmVxdWVzdGVkIG9wZXJhdGlvbiByZXF1aXJlcyBzdXBlcnVzZXIgcHJpdmlsZWdlIgorbXNnc3RyICJzZWxsZSB0b2ltaW5ndSBqYW9rcyBvbiB2YWphIHN1cGVya2FzdXRhamEgw7VpZ3VzZWlkIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjI2MgorbXNnaWQgInVuYWJsZSB0byBhY2Nlc3MgZHBrZyBzdGF0dXMgYXJlYSIKK21zZ3N0ciAiZHBrZyBvbGVrdXBpaXJrb25uYWxlIHBvbGUgdsO1aW1hbGlrIGxpZ2kgcMOkw6RzZWRhIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjI2NAorbXNnaWQgIm9wZXJhdGlvbiByZXF1aXJlcyByZWFkL3dyaXRlIGFjY2VzcyB0byBkcGtnIHN0YXR1cyBhcmVhIgorbXNnc3RyICJvcGVyYXRzaW9vbiB2YWphYiBvbGVrdXBpaXJrb25uYXMgbHVnZW1pcy0va2lyanV0YW1pc8O1aWd1c3QiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzA5CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZW1vdmUgbXkgb3duIHVwZGF0ZSBmaWxlICUuMjU1cyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM0NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgImAlLjI1MHMnIHV1ZW5kYXR1ZCBvbGVrdXQgcG9sZSB2w7VpbWFsaWsga2lyanV0YWRhIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM0OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHRydW5jYXRlIGZvciB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM1MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZnN5bmMgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJgJS4yNTBzJyB1dWVuZGF0dWQgb2xla3V0IHBvbGUgdsO1aW1hbGlrIHN1bGdlZGEiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzU4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJgJS4yNTBzJyBvbGVrdXQgcG9sZSB2w7VpbWFsaWsgdXVlbmRhZGEiCisKKyM6IGxpYi9kcGtnL2Rpci5jOjUwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gcmVhZCBmaWxlZGVzY3JpcHRvciBmbGFncyBmb3IgJS4yNTBzIgorbXNnaWQgInVuYWJsZSB0byBnZXQgZmlsZSBkZXNjcmlwdG9yIGZvciBkaXJlY3RvcnkgJyVzJyIKK21zZ3N0ciAiJS4yNTBzIGZhaWxpZGVza3JpcHRvcmkgbGlwcGUgcG9sZSB2w7VpbWFsaWsgbHVnZWRhIgorCisjOiBsaWIvZHBrZy9kaXIuYzo1NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgZGlyZWN0b3J5ICclcyciCittc2dzdHIgImzDpGh0ZWZhaWxpIGAlLjI1MHMnIHBvbGUgdsO1aW1hbGlrIGF2YWRhIgorCisjOiBsaWIvZHBrZy9kaXIuYzo2OSBsaWIvZHBrZy9kaXIuYzoxMzEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICJsw6RodGVmYWlsaSBgJS4yNTBzJyBwb2xlIHbDtWltYWxpayBhdmFkYSIKKworIzogbGliL2Rwa2cvZGlyLmM6MTA5IHNyYy9kaXZlcnRjbWQuYzoyMTggZHBrZy1zcGxpdC9zcGxpdC5jOjIwMgorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyOTMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIGZpbGUgJyVzJyIKK21zZ3N0ciAibMOkaHRlZmFpbGkgYCUuMjUwcycgcG9sZSB2w7VpbWFsaWsgYXZhZGEiCisKKyM6IGxpYi9kcGtnL2Rpci5jOjExMSBzcmMvZGl2ZXJ0Y21kLmM6MjMyIHNyYy9kaXZlcnRjbWQuYzozNzcKKyM6IHNyYy9zdGF0Y21kLmM6MjE3IGRwa2ctZGViL2J1aWxkLmM6NTk4IGRwa2ctc3BsaXQvam9pbi5jOjY1CisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTg3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNDA2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBmaWxlICclcyciCittc2dzdHIgImzDpGh0ZWZhaWxpIGAlLjI1MHMnIHBvbGUgdsO1aW1hbGlrIGF2YWRhIgorCisjOiBsaWIvZHBrZy9kaXIuYzoxMTMgc3JjL2RpdmVydGNtZC5jOjIzNCBzcmMvZGl2ZXJ0Y21kLmM6Mzc5CisjOiBkcGtnLWRlYi9idWlsZC5jOjYwMCBkcGtnLXNwbGl0L2pvaW4uYzo2NyBkcGtnLXNwbGl0L3F1ZXVlLmM6MTg5CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTMxNCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTQwOAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIGZpbGUgJyVzJyIKK21zZ3N0ciAidMO1cmdlIHB1aHZyaXRlIHTDvGhqZW5kYW1pc2VsIGZ1bmt0c2lvb25pcyB2c25wcmludGYiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzozOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIGRldGFpbHMgb2YgYCUuNTBzJyB0byBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDIzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiAnJXMnIGZvciB3cml0aW5nICVzIGRhdGFiYXNlIgorbXNnc3RyICJ0w7VyZ2UgYCVzJyBhdmFtaXNlbCAlcyBhbmRtZXRlIGtpcmp1dGFtaXNla3MiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0MjYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgYnVmZmVyaW5nIG9uICVzIGRhdGFiYXNlIGZpbGUiCittc2dzdHIgIm9sZWt1ZmFpbGlsZSBwb2xlIHbDtWltYWxpayBwdWh2ZXJkYW1pc3QgbcOkw6RyYXRhIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDM4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgJXMgZGF0YWJhc2UgcmVjb3JkIGFib3V0ICclLjUwcycgdG8gJyUuMjUwcyciCittc2dzdHIgIiIKKyJkcGtnOiAlczogaG9pYXR1cyAtIHTDtXJnZSBgJS4yNTBzJyDDvG1iZXJuaW1ldGFtaXNlbCBuaW1lZ2EgYCUuMjUwcyc6ICVzXG4iCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NDYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBmbHVzaCAlcyBkYXRhYmFzZSB0byAnJS4yNTBzJyIKK21zZ3N0ciAidMO1cmdlIGZhaWxpICVzIG9tYW5pa2UgbXV1dG1pc2VsOiAlcyIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ0OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZzeW5jICVzIGRhdGFiYXNlIHRvICclLjI1MHMnIgorbXNnc3RyICJ0w7VyZ2UgZmFpbGkgJXMgb21hbmlrZSBtdXV0bWlzZWw6ICVzIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDUxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2xvc2UgJyUuMjUwcycgYWZ0ZXIgd3JpdGluZyAlcyBkYXRhYmFzZSIKK21zZ3N0ciAidMO1cmdlIGAlcycgYXZhbWlzZWwgJXMgYW5kbWV0ZSBraXJqdXRhbWlzZWtzIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDU1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gbGluayAnJS4yNTBzJyB0byAnJS4yNTBzJyBmb3IgYmFja3VwIG9mICVzIGRhdGFiYXNlIgorbXNnc3RyICIiCisiZHBrZzogJXM6IGhvaWF0dXMgLSB0w7VyZ2UgYCUuMjUwcycgw7xtYmVybmltZXRhbWlzZWwgbmltZWdhIGAlLjI1MHMnOiAlc1xuIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDU4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gaW5zdGFsbCAnJS4yNTBzJyBhcyAnJS4yNTBzJyBjb250YWluaW5nICVzIGRhdGFiYXNlIgorbXNnc3RyICIiCisiZHBrZzogJXM6IGhvaWF0dXMgLSB0w7VyZ2UgYCUuMjUwcycgw7xtYmVybmltZXRhbWlzZWwgbmltZWdhIGAlLjI1MHMnOiAlc1xuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6OTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiB1bnJlY292ZXJhYmxlIGZhdGFsIGVycm9yLCBhYm9ydGluZzpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MTAwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogb3V0c2lkZSBlcnJvciBjb250ZXh0LCBhYm9ydGluZzpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MTIwCittc2dpZCAib3V0IG9mIG1lbW9yeSBmb3IgbmV3IGVycm9yIGNvbnRleHQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjE4MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IGVycm9yIHdoaWxlIGNsZWFuaW5nIHVwOlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisiJXM6IHZpZ2EgcHVoYXN0YW1pc2VsOlxuIgorIiAlc1xuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MjAxCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB0b28gbWFueSBuZXN0ZWQgZXJyb3JzIGR1cmluZyBlcnJvciByZWNvdmVyeSEhXG4iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjI2OCBsaWIvZHBrZy9laGFuZGxlLmM6MzA3Cittc2dpZCAib3V0IG9mIG1lbW9yeSBmb3IgbmV3IGNsZWFudXAgZW50cnkiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjI5MQorbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBjbGVhbnVwIGVudHJ5IHdpdGggbWFueSBhcmd1bWVudHMiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjM1MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yOiAlc1xuIgorbXNnc3RyICIiCisiJXM6IHZpZ2EgcHVoYXN0YW1pc2VsOlxuIgorIiAlc1xuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MzkzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogd2FybmluZzogJXNcbiIKK21zZ3N0ciAiIgorIiVzOiB2aWdhIHB1aGFzdGFtaXNlbDpcbiIKKyIgJXNcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjQxNgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6JXM6JWQ6IGludGVybmFsIGVycm9yOiAlc1xuIgorbXNnc3RyICIlczolZDogc2lzZW1pbmUgdmlnYSBgJXMnXG4iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGlzIG1pc3NpbmciCittc2dzdHIgIiVzIG9uIHB1dWR1IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0OQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiICAlLjI1MHMgaXMgbm90IGluc3RhbGxlZC5cbiIKK21zZ2lkICInJS41MHMnIGlzIG5vdCBhbGxvd2VkIGZvciAlcyIKK21zZ3N0ciAiICAlLjI1MHMgcG9sZSBwYWlnYWxkYXR1ZC5cbiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NzMKKyMsIGMtZm9ybWF0Cittc2dpZCAianVuayBhZnRlciAlcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo4NworIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHBhY2thZ2UgbmFtZSAoJS4yNTBzKSIKK21zZ3N0ciAidmlnYW5lIHBha2luaW1pICglLjI1MHMpIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZW1wdHkgZmlsZSBkZXRhaWxzIGZpZWxkIGAlcyciCittc2dzdHIgInTDvGhpIGZhaWxpIMO8a3Npa2FzamFkZSB2w6RsaSBgJXMnIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBkZXRhaWxzIGZpZWxkIGAlcycgbm90IGFsbG93ZWQgaW4gc3RhdHVzIGZpbGUiCittc2dzdHIgImZhaWxpIMO8a3Npa2FzamFkZSB2w6RsaSBgJXMnIHBvbGUgb2xla3VmYWlsaXMgbHViYXR1ZCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTE4CisjLCBjLWZvcm1hdAorbXNnaWQgInRvbyBtYW55IHZhbHVlcyBpbiBmaWxlIGRldGFpbHMgZmllbGQgYCVzJyAoY29tcGFyZWQgdG8gb3RoZXJzKSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAidG9vIGZldyB2YWx1ZXMgaW4gZmlsZSBkZXRhaWxzIGZpZWxkIGAlcycgKGNvbXBhcmVkIHRvIG90aGVycykiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTU0Cittc2dpZCAieWVzL25vIGluIGJvb2xlYW4gZmllbGQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTc0Cittc2dpZCAid29yZCBpbiBgcHJpb3JpdHknIGZpZWxkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE4NgorbXNnaWQgInZhbHVlIGZvciBgc3RhdHVzJyBmaWVsZCBub3QgYWxsb3dlZCBpbiB0aGlzIGNvbnRleHQiCittc2dzdHIgInNlbGxlcyBrb250ZWtzdGlzIHBvbGUgYHN0YXR1cycgdsOkbGphIHbDpMOkcnR1cyBsdWJhdHVkIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxOTEKK21zZ2lkICJmaXJzdCAod2FudCkgd29yZCBpbiBgc3RhdHVzJyBmaWVsZCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxOTQKK21zZ2lkICJzZWNvbmQgKGVycm9yKSB3b3JkIGluIGBzdGF0dXMnIGZpZWxkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE5NworbXNnaWQgInRoaXJkIChzdGF0dXMpIHdvcmQgaW4gYHN0YXR1cycgZmllbGQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjA3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJlcnJvciBpbiBWZXJzaW9uIHN0cmluZyBgJS4yNTBzJzogJS4yNTBzIgorbXNnaWQgImVycm9yIGluIFZlcnNpb24gc3RyaW5nICclLjI1MHMnIgorbXNnc3RyICJ2aWdhIFZlcnNpb24gc3RyaW5naXMgYCUuMjUwcyc6ICUuMjUwcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjE4Cittc2dpZCAib2Jzb2xldGUgYFJldmlzaW9uJyBvciBgUGFja2FnZS1SZXZpc2lvbicgZmllbGQgdXNlZCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyMzUKK21zZ2lkICJ2YWx1ZSBmb3IgYGNvbmZpZy12ZXJzaW9uJyBmaWVsZCBub3QgYWxsb3dlZCBpbiB0aGlzIGNvbnRleHQiCittc2dzdHIgInNlbGxlcyBrb250ZWtzdGlzIHBvbGUgYGNvbmZpZy12ZXJzaW9uJyB2w6RsamEgdsOkw6RydHVzIGx1YmF0dWQiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjI0MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZXJyb3IgaW4gQ29uZmlnLVZlcnNpb24gc3RyaW5nIGAlLjI1MHMnOiAlLjI1MHMiCittc2dpZCAiZXJyb3IgaW4gQ29uZmlnLVZlcnNpb24gc3RyaW5nICclLjI1MHMnIgorbXNnc3RyICJ2aWdhIENvbmZpZy1WZXJzaW9uIHN0cmluZ2lzIGAlLjI1MHMnOiAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjI2NgorIywgYy1mb3JtYXQKK21zZ2lkICJ2YWx1ZSBmb3IgYGNvbmZmaWxlcycgaGFzIG1hbGZvcm1hdHRlZCBsaW5lIGAlLipzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyODcKKyMsIGMtZm9ybWF0Cittc2dpZCAidmFsdWUgZm9yIGBjb25mZmlsZXMnIGhhcyBsaW5lIHN0YXJ0aW5nIHdpdGggbm9uLXNwYWNlIGAlYyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MzA0Cittc2dpZCAicm9vdCBvciBudWxsIGRpcmVjdG9yeSBpcyBsaXN0ZWQgYXMgYSBjb25mZmlsZSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzozNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIG1pc3NpbmcgcGFja2FnZSBuYW1lLCBvciBnYXJiYWdlIHdoZXJlIHBhY2thZ2UgbmFtZSBleHBlY3RlZCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzozNzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBmaWVsZCwgaW52YWxpZCBwYWNrYWdlIG5hbWUgYCUuMjU1cyc6ICVzIgorbXNnc3RyICJ2w6RsaSBgJXMnLCB2aWdhbmUgcGFraW5pbWkgYCUuMjU1cyc6ICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgYmFkIHZlcnNpb24gcmVsYXRpb25zaGlwICVjJWMiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDEyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6XG4iCisiIGAlYycgaXMgb2Jzb2xldGUsIHVzZSBgJWM9JyBvciBgJWMlYycgaW5zdGVhZCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgaW1wbGljaXQgZXhhY3QgbWF0Y2ggb24gdmVyc2lvbiBudW1iZXIsIHN1Z2dlc3QgdXNpbmcgYD0nIGluc3RlYWQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDMwCittc2dpZCAiT25seSBleGFjdCB2ZXJzaW9ucyBtYXkgYmUgdXNlZCBmb3IgUHJvdmlkZXMiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6XG4iCisiIHZlcnNpb24gdmFsdWUgc3RhcnRzIHdpdGggbm9uLWFscGhhbnVtZXJpYywgc3VnZ2VzdCBhZGRpbmcgYSBzcGFjZSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NTEgbGliL2Rwa2cvZmllbGRzLmM6NDU1CisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzogdmVyc2lvbiBjb250YWlucyBgJWMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ1OQorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6IHZlcnNpb24gdW50ZXJtaW5hdGVkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ2NQorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gJyUuMjU1cyc6IGVycm9yIGluIHZlcnNpb24iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDc1CisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgZmllbGQsIHN5bnRheCBlcnJvciBhZnRlciByZWZlcmVuY2UgdG8gcGFja2FnZSBgJS4yNTVzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmVzIChgfCcpIG5vdCBhbGxvd2VkIGluICVzIGZpZWxkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjUzNgorIywgZnV6enkKK21zZ2lkICJ2YWx1ZSBmb3IgYHRyaWdnZXJzLXBlbmRpbmcnIGZpZWxkIG5vdCBhbGxvd2VkIGluIHRoaXMgY29udGV4dCIKK21zZ3N0ciAic2VsbGVzIGtvbnRla3N0aXMgcG9sZSBgY29uZmlnLXZlcnNpb24nIHbDpGxqYSB2w6TDpHJ0dXMgbHViYXR1ZCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTQzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJpbGxlZ2FsIHBlbmRpbmcgdHJpZ2dlciBuYW1lIGAlLjI1NXMnOiAlcyIKK21zZ3N0ciAidsOkbGkgYCVzJywgdmlnYW5lIHBha2luaW1pIGAlLjI1NXMnOiAlcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTQ3CisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBwZW5kaW5nIHRyaWdnZXIgYCUuMjU1cyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTYxCisjLCBmdXp6eQorbXNnaWQgInZhbHVlIGZvciBgdHJpZ2dlcnMtYXdhaXRlZCcgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICJzZWxsZXMga29udGVrc3RpcyBwb2xlIGBzdGF0dXMnIHbDpGxqYSB2w6TDpHJ0dXMgbHViYXR1ZCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTY4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJpbGxlZ2FsIHBhY2thZ2UgbmFtZSBpbiBhd2FpdGVkIHRyaWdnZXIgYCUuMjU1cyc6ICVzIgorbXNnc3RyICJ2aWdhbmUgcGFraW5pbWkgcmVhbCAlZDogJS4yNTBzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NzQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBhd2FpdGVkIHRyaWdnZXIgcGFja2FnZSBgJS4yNTVzJyIKK21zZ3N0ciAicGFraSBgJS4yNTBzJyBmYWlsaWRlIG5pbWVraXJpIgorCisjOiBsaWIvZHBrZy9maWxlLmM6NTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IHNvdXJjZSBmaWxlICclLjI1MHMnIgorbXNnc3RyICJsw6RodGVmYWlsaSBgJS4yNTBzJyBwb2xlIHbDtWltYWxpayBhdmFkYSIKKworIzogbGliL2Rwa2cvZmlsZS5jOjU1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hhbmdlIG93bmVyc2hpcCBvZiB0YXJnZXQgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAiYCUuMjUwcycgdXVlbmRhdHVkIG9sZWt1dCBwb2xlIHbDtWltYWxpayBraXJqdXRhZGEiCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzo1OQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNldCBtb2RlIG9mIHRhcmdldCBmaWxlICclLjI1MHMnIgorbXNnc3RyICJqdWh0YW5kbWV0ZSBmYWlsaSBgJS4yNTBzJyBwb2xlIHbDtWltYWxpayBrdXN0dXRhZGEiCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzo4NQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHVubG9jayAlczogJXMiCittc2dpZCAidW5hYmxlIHRvIHVubG9jayAlcyIKK21zZ3N0ciAibHVrdSAlcyB2YWJhc3RhbWluZSBwb2xlIHbDtWltYWxpazogJXMiCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzoxMTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGVjayBmaWxlICclcycgbG9jayBzdGF0dXMiCittc2dzdHIgImzDpGh0ZWZhaWxpIGAlLjI1MHMnIHBvbGUgdsO1aW1hbGlrIGF2YWRhIgorCisjOiBsaWIvZHBrZy9maWxlLmM6MTQ2CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJzdGF0dXMgZGF0YWJhc2UgYXJlYSBpcyBsb2NrZWQgYnkgYW5vdGhlciBwcm9jZXNzIgorbXNnaWQgIiVzIGlzIGxvY2tlZCBieSBhbm90aGVyIHByb2Nlc3MiCittc2dzdHIgIm9sZWt1YW5kbWViYWFzaSBwaWlya29uZCBvbiB0ZWlzZSBwcm90c2Vzc2kgcG9vbHQgbHVrdXN0YXR1ZCIKKworIzogbGliL2Rwa2cvZmlsZS5jOjE0OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHVubG9jayAlczogJXMiCittc2dpZCAidW5hYmxlIHRvIGxvY2sgJXMiCittc2dzdHIgImx1a3UgJXMgdmFiYXN0YW1pbmUgcG9sZSB2w7VpbWFsaWs6ICVzIgorCisjOiBsaWIvZHBrZy9sb2cuYzo1MworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBvcGVuIGxvZyBgJXMnOiAlc1xuIgorbXNnc3RyICJsb2dpIGAlcycgcG9sZSB2w7VpbWFsaWsgYXZhZGE6ICVzXG4iCisKKyM6IGxpYi9kcGtnL2xvZy5jOjg1Cittc2dpZCAiPHBhY2thZ2Ugc3RhdHVzIGFuZCBwcm9ncmVzcyBmaWxlIGRlc2NyaXB0b3I+IgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2xvZy5jOjExNAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIHRvIHN0YXR1cyBmZCAlZCIKK21zZ3N0ciAiYCUuMjUwcycgdXVlbmRhdHVkIG9sZWt1dCBwb2xlIHbDtWltYWxpayBraXJqdXRhZGEiCisKKyM6IGxpYi9kcGtnL21saWIuYzo0NCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJtYWxsb2MgZmFpbGVkICglenUgYnl0ZXMpIgorbXNnc3RyICJ0w7VyZ2UgcmVhbGxvYyBmdW5rdHNpb29uaXMgKCVsZCBiYWl0aSkiCisKKyM6IGxpYi9kcGtnL21saWIuYzo1OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAicmVhbGxvYyBmYWlsZWQgKCV6dSBieXRlcykiCittc2dzdHIgInTDtXJnZSByZWFsbG9jIGZ1bmt0c2lvb25pcyAoJWxkIGJhaXRpKSIKKworIzogbGliL2Rwa2cvbWxpYi5jOjcyIGxpYi9kcGtnL21saWIuYzo5MCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6Mjc3CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MzM0IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTA3CisjLCBmdXp6eQorbXNnaWQgImZhaWxlZCB0byBhbGxvY2F0ZSBtZW1vcnkiCittc2dzdHIgInTDtXJnZSBrYXRhbG9vZ2kgbG9vbWlzZWwiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGR1cCBmb3Igc3RkJXMiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEwMworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZHVwIGZvciBmZCAlZCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTA5Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBwaXBlIgorbXNnc3RyICJ0w7VyZ2UgdG9ydSBsb29taXNlbCIKKworIzogbGliL2Rwa2cvbWxpYi5jOjExNworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igd3JpdGluZyB0byAnJXMnIgorbXNnc3RyICJ2aWdhIGAlcycga2lyanV0YW1pc2VsIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIGZpbGVkZXNjcmlwdG9yIGZsYWdzIGZvciAlLjI1MHMiCittc2dzdHIgIiUuMjUwcyBmYWlsaWRlc2tyaXB0b3JpIGxpcHBlIHBvbGUgdsO1aW1hbGlrIGx1Z2VkYSIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEyNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IGNsb3NlLW9uLWV4ZWMgZmxhZyBmb3IgJS4yNTBzIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzo2MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiY29uZmlndXJhdGlvbiBlcnJvcjogJXM6JWQ6ICVzIgorbXNnc3RyICJzZWFkaXN0dXN0ZSB2aWdhOiB2w7V0bWVsICVzIHBlYWIgb2xlbWEgdsOkw6RydHVzIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6NzUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuIGNvbmZpZ3VyYXRpb24gZmlsZSAnJS4yNTVzJyBmb3IgcmVhZGluZzogJXMiCittc2dzdHIgInTDtXJnZSBzZWFkaXN0dXNmYWlsaSBgJS4yNTVzJyBhdmFtaXNlbCBsdWdlbWlzZWtzIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYmFsYW5jZWQgcXVvdGVzIGluICclcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjExNworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gJyVzJyIKK21zZ3N0ciAidHVuZG1hdHUgdsO1dGkgYCVzJyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjEyMQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBuZWVkcyBhIHZhbHVlIgorbXNnc3RyICItLSVzIHbDtXRtZWwgcGVhYiBvbGVtYSBtw6TDpHJhdHVkIHbDpMOkcnR1cyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjEyNworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBkb2VzIG5vdCB0YWtlIGEgdmFsdWUiCittc2dzdHIgIi0tJXMgdsO1dG1lbCBlaSB0b2hpIHbDpMOkcnR1c3Qgb2xsYSBtw6TDpHJhdHVkIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTMzCisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWQgZXJyb3IgaW4gY29uZmlndXJhdGlvbiBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICJ2aWdhIHNlYWRpc3R1c2ZhaWxpIGAlLjI1NXMnIGx1Z2VtaXNlbCIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nIGNvbmZpZ3VyYXRpb24gZmlsZSBgJS4yNTVzJyIKK21zZ3N0ciAidmlnYSBzZWFkaXN0dXNmYWlsaSBgJS4yNTVzJyBzdWxnZW1pc2VsIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTcwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBvcGVuaW5nIGNvbmZpZ3VyYXRpb24gZGlyZWN0b3J5ICclcyciCittc2dzdHIgInZpZ2Egc2VhZGlzdHVzZmFpbGkgYCUuMjU1cycgc3VsZ2VtaXNlbCIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjIyOAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiAtLSVzIgorbXNnc3RyICJ0dW5kbWF0dSB2w7V0aSAtLSVzIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgb3B0aW9uIHRha2VzIGEgdmFsdWUiCittc2dzdHIgIi0tJXMgdsO1dG1lbCBwZWFiIG9sZW1hIG3DpMOkcmF0dWQgdsOkw6RydHVzIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjM3CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgb3B0aW9uIGRvZXMgbm90IHRha2UgYSB2YWx1ZSIKK21zZ3N0ciAiLS0lcyB2w7V0bWVsIGVpIHRvaGkgdsOkw6RydHVzdCBvbGxhIG3DpMOkcmF0dWQiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyNDUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gLSVjIgorbXNnc3RyICJ0dW5kbWF0dSB2w7V0aSAtJWMiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLSVjIG9wdGlvbiB0YWtlcyBhIHZhbHVlIgorbXNnc3RyICItJWMgdsO1dG1lbCBwZWFiIG9sZW1hIG3DpMOkcmF0dWQgdsOkw6RydHVzIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjU4CisjLCBjLWZvcm1hdAorbXNnaWQgIi0lYyBvcHRpb24gZG9lcyBub3QgdGFrZSBhIHZhbHVlIgorbXNnc3RyICItJWMgdsO1dG1lbCBlaSB0b2hpIHbDpMOkcnR1c3Qgb2xsYSBtw6TDpHJhdHVkIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjcxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJvYnNvbGV0ZSBvcHRpb24gJy0tJXMnXG4iCittc2dzdHIgIkhvaWF0dXM6IGFlZ3VudWQgdsO1dGkgYC0tJXMnXG4iCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmxpY3RpbmcgYWN0aW9ucyAtJWMgKC0tJXMpIGFuZCAtJWMgKC0tJXMpIgorbXNnc3RyICJ2YXN0dW9sdWxpc2VkIHRlZ2V2dXNlZCAtJWMgKC0tJXMpIGphIC0lYyAoLS0lcykiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSB2YWx1ZSBmb3IgYCVzJyBmaWVsZCIKK21zZ3N0ciAia29yZHV2IHbDpGxqYSBgJXMnIHbDpMOkcnR1cyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoxNDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidXNlci1kZWZpbmVkIGZpZWxkIG5hbWUgYCUuKnMnIHRvbyBzaG9ydCIKK21zZ3N0ciAia2FzdXRhamEgcG9vbHQga2lyamVsZGF0dWQgdsOkbGphIGAlLipzJyBuaW1pIG9uIGxpaWdhIGzDvGhpa2UiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MTUyCisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSB2YWx1ZSBmb3IgdXNlci1kZWZpbmVkIGZpZWxkIGAlLipzJyIKK21zZ3N0ciAia29yZHV2IGthc3V0YWphIHBvb2x0IGtpcmplbGRhdHVkIHbDpGxqYSBgJS4qcycgdsOkw6RydHVzIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjIwNworbXNnaWQgIkNvbmZpZ3VyZWQtVmVyc2lvbiBmb3IgcGFja2FnZSB3aXRoIGluYXBwcm9wcmlhdGUgU3RhdHVzIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjE4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgaGFzIHN0YXR1cyAlcyBidXQgdHJpZ2dlcnMgYXJlIGF3YWl0ZWQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMjIKK21zZ2lkICJwYWNrYWdlIGhhcyBzdGF0dXMgdHJpZ2dlcnMtYXdhaXRlZCBidXQgbm8gdHJpZ2dlcnMgYXdhaXRlZCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjIyOAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGhhcyBzdGF0dXMgJXMgYnV0IHRyaWdnZXJzIGFyZSBwZW5kaW5nIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjMyCittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzIHRyaWdnZXJzLXBlbmRpbmcgYnV0IG5vIHRyaWdnZXJzIHBlbmRpbmciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyNDIKK21zZ2lkICJQYWNrYWdlIHdoaWNoIGluIHN0YXRlIG5vdC1pbnN0YWxsZWQgaGFzIGNvbmZmaWxlcywgZm9yZ2V0dGluZyB0aGVtIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzM1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuIHBhY2thZ2UgaW5mbyBmaWxlIGAlLjI1NXMnIGZvciByZWFkaW5nIgorbXNnc3RyICJ0w7VyZ2UgcGFraWFuZG1ldGUgZmFpbGkgYCUuMjU1cycgbHVnZW1pc2VrcyBhdmFtaXNlbCIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozNDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2FuJ3Qgc3RhdCBwYWNrYWdlIGluZm8gZmlsZSBgJS4yNTVzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjM0NworIywgYy1mb3JtYXQKK21zZ2lkICJjYW4ndCBtbWFwIHBhY2thZ2UgaW5mbyBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzUyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJlcnJvciByZWFkaW5nICVzIGZyb20gZmlsZSAlLjI1NXMiCittc2dpZCAicmVhZGluZyBwYWNrYWdlIGluZm8gZmlsZSAnJS4yNTVzJyIKK21zZ3N0ciAidmlnYSAlcyBsdWdlbWlzZWwgZmFpbGlzdCAlLjI1NXMiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzYzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjbG9zZSBhZnRlciByZWFkOiBgJS4yNTVzJyIKK21zZ3N0ciAidMO1cmdlIHN1bGdlbWlzZWwgcMOkcmFzdCBsdWdlbWlzdDogYCUuMjU1cyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDA0CisjLCBjLWZvcm1hdAorbXNnaWQgIkVPRiBhZnRlciBmaWVsZCBuYW1lIGAlLipzJyIKK21zZ3N0ciAiZmFpbGlsw7VwdXR1bm51cyBww6RyYXN0IGtpcmplIGAlLipzJyBuaW1lIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQwNworIywgYy1mb3JtYXQKK21zZ2lkICJuZXdsaW5lIGluIGZpZWxkIG5hbWUgYCUuKnMnIgorbXNnc3RyICJyZWF2YWhldHVzIHDDpHJhc3Qga2lyamUgYCUuKnMnIG5pbWUiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDEwCisjLCBjLWZvcm1hdAorbXNnaWQgIk1TRE9TIEVPRiAoXlopIGluIGZpZWxkIG5hbWUgYCUuKnMnIgorbXNnc3RyICJNU0RPUy1pIGZhaWxpbMO1cHV0dW5udXMgKF5aKSB2w6RsamEgYCUuKnMnIG5pbWVzIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQxNAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWVsZCBuYW1lIGAlLipzJyBtdXN0IGJlIGZvbGxvd2VkIGJ5IGNvbG9uIgorbXNnc3RyICJ2w6RsamFuaW1lbGUgYCUuKnMnIHBlYWIgasOkcmduZW1hIGtvb2xvbiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiRU9GIGJlZm9yZSB2YWx1ZSBvZiBmaWVsZCBgJS4qcycgKG1pc3NpbmcgZmluYWwgbmV3bGluZSkiCittc2dzdHIgImVubmUgdsOkbGphIGAlLipzJyB2w6TDpHJ0dXN0IG9uIGZhaWxpbMO1cHV0dW5udXMgKHB1dWR1YiBsw7VwdSByZWF2YWhldHVzKSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiTVNET1MgRU9GIGNoYXIgaW4gdmFsdWUgb2YgZmllbGQgYCUuKnMnIChtaXNzaW5nIG5ld2xpbmU/KSIKK21zZ3N0ciAiIgorInbDpGxqYSBgJS4qcycgdsOkw6RydHVzZXMgb24gTVNET1MtaSBmYWlsaWzDtXB1dHVubnVzZSBtw6RyayAocHV1ZHViIHJlYXZhaGV0dXM/KSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0NDAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIm5ld2xpbmUgaW4gZmllbGQgbmFtZSBgJS4qcyciCittc2dpZCAiYmxhbmsgbGluZSBpbiB2YWx1ZSBvZiBmaWVsZCAnJS4qcyciCittc2dzdHIgInJlYXZhaGV0dXMgcMOkcmFzdCBraXJqZSBgJS4qcycgbmltZSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiRU9GIGR1cmluZyB2YWx1ZSBvZiBmaWVsZCBgJS4qcycgKG1pc3NpbmcgZmluYWwgbmV3bGluZSkiCittc2dzdHIgInbDpGxqYSBgJS4qcycgdsOkw6RydHVzZXMgb24gZmFpbGlsw7VwdXR1bm51cyAocHV1ZHViIGzDtXB1IHJlYXZhaGV0dXMpIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjU0NgorbXNnaWQgInNldmVyYWwgcGFja2FnZSBpbmZvIGVudHJpZXMgZm91bmQsIG9ubHkgb25lIGFsbG93ZWQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo1NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gcGFja2FnZSBpbmZvcm1hdGlvbiBpbiBgJS4yNTVzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzo0NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorInBhcnNpbmcgZmlsZSAnJS4yNTVzJyBuZWFyIGxpbmUgJWQgcGFja2FnZSAnJS4yNTVzJzpcbiIKKyIgJS4yNTVzIgorbXNnc3RyICIlcyBmYWlsaSBgJS4yNTVzJyAlZC4gcmVhIGzDpGhlZHVzZXMiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjQ4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisicGFyc2luZyBmaWxlICclLjI1NXMnIG5lYXIgbGluZSAlZDpcbiIKKyIgJS4yNTVzIgorbXNnc3RyICIlcyBmYWlsaSBgJS4yNTVzJyAlZC4gcmVhIGzDpGhlZHVzZXMiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjEyNQorbXNnaWQgIm1heSBub3QgYmUgZW1wdHkgc3RyaW5nIgorbXNnc3RyICJlaSB0b2hpIG9sbGEgdMO8aGkgc3RyaW5nIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoxMjcKKyMsIGZ1enp5CisjfCBtc2dpZCAibXVzdCBzdGFydCB3aXRoIGFuIGFscGhhbnVtZXJpYyIKK21zZ2lkICJtdXN0IHN0YXJ0IHdpdGggYW4gYWxwaGFudW1lcmljIGNoYXJhY3RlciIKK21zZ3N0ciAicGVhYiBhbGdhbWEgdMOkaGUgdsO1aSBudW1icmlnYSIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MTM2CisjLCBjLWZvcm1hdAorbXNnaWQgImNoYXJhY3RlciBgJWMnIG5vdCBhbGxvd2VkIChvbmx5IGxldHRlcnMsIGRpZ2l0cyBhbmQgY2hhcmFjdGVycyBgJXMnKSIKK21zZ3N0ciAibcOkcmsgYCVjJyBwb2xlIGx1YmF0dWQgKGFpbnVsdCB0w6RoZWQsIG51bWJyaWQgamEgYCVzJyBtw6RyZ2lkKSIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MTc4CisjLCBmdXp6eQorI3wgbXNnaWQgIjxub25lPiIKK21zZ2N0eHQgInZlcnNpb24iCittc2dpZCAiPG5vbmU+IgorbXNnc3RyICI8cHV1ZHViPiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjA5Cittc2dpZCAidmVyc2lvbiBzdHJpbmcgaXMgZW1wdHkiCittc2dzdHIgInZlcnNpb29uaXN0cmluZyBwdXVkdWIiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjIyNAorbXNnaWQgInZlcnNpb24gc3RyaW5nIGhhcyBlbWJlZGRlZCBzcGFjZXMiCittc2dzdHIgInZlcnNpb29uaXN0cmluZyBzaXNhbGRhYiB0w7xoaWt1aWQiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjIzMAorbXNnaWQgImVwb2NoIGluIHZlcnNpb24gaXMgbm90IG51bWJlciIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyMzIKK21zZ2lkICJub3RoaW5nIGFmdGVyIGNvbG9uIGluIHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICJ2ZXJzaW9vbmludW1iZXIgbMO1cGViIGtvb2xvbmlnYSIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjQ3Cittc2dpZCAidmVyc2lvbiBudW1iZXIgZG9lcyBub3Qgc3RhcnQgd2l0aCBkaWdpdCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyNTAKKyMsIGZ1enp5CisjfCBtc2dpZCAibm90aGluZyBhZnRlciBjb2xvbiBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ2lkICJpbnZhbGlkIGNoYXJhY3RlciBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAidmVyc2lvb25pbnVtYmVyIGzDtXBlYiBrb29sb25pZ2EiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjI1NAorIywgZnV6enkKKyN8IG1zZ2lkICJub3RoaW5nIGFmdGVyIGNvbG9uIGluIHZlcnNpb24gbnVtYmVyIgorbXNnaWQgImludmFsaWQgY2hhcmFjdGVyIGluIHJldmlzaW9uIG51bWJlciIKK21zZ3N0ciAidmVyc2lvb25pbnVtYmVyIGzDtXBlYiBrb29sb25pZ2EiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjI5OSBsaWIvZHBrZy9wYXJzZWhlbHAuYzozMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAibWlzc2luZyAlcyIKK21zZ3N0ciAicHV1ZHViICVzIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzozMDEgbGliL2Rwa2cvcGFyc2VoZWxwLmM6MzE0CisjLCBjLWZvcm1hdAorbXNnaWQgImVtcHR5IHZhbHVlIGZvciAlcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wa2ctZm9ybWF0LmM6ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgYCVjJyBpbiBmaWVsZCB3aWR0aFxuIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BrZy1mb3JtYXQuYzoxNzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2xvc2luZyBicmFjZSBtaXNzaW5nIGluIGZvcm1hdFxuIgorbXNnc3RyICJWb3JtaW5ndXMgcHV1ZHViIHN1bGdldiBzdWxnXG4iCisKKyM6IGxpYi9kcGtnL3BrZy1zaG93LmM6NDAKK21zZ2lkICIobm8gZGVzY3JpcHRpb24gYXZhaWxhYmxlKSIKK21zZ3N0ciAiKGtpcmplbGR1cyBwb2xlIHNhYWRhdmFsKSIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjU1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaWdub3JlIHNpZ25hbCAlcyBiZWZvcmUgcnVubmluZyAlLjI1MHMiCittc2dzdHIgImzDpGh0ZWZhaWxpIGAlLjI1MHMnIHBvbGUgdsO1aW1hbGlrIGF2YWRhIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6NjgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHVuLWNhdGNoaW5nIHNpZ25hbCAlczogJXNcbiIKK21zZ3N0ciAidmlnYSBgJXMnIGtvbnRyb2xsaW1pc2VsOiAlcyIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjc4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIChzdWJwcm9jZXNzKTogJXNcbiIKK21zZ3N0ciAiJXMgKGFsYW1wcm90c2Vzcyk6ICVzXG4iCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzo4OSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NDU0Cittc2dpZCAiZm9yayBmYWlsZWQiCittc2dzdHIgInTDtXJnZSBmb3JrKCkgZnVua3RzaW9vbmlzIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTE5CisjLCBjLWZvcm1hdAorbXNnaWQgInN1YnByb2Nlc3MgJXMgcmV0dXJuZWQgZXJyb3IgZXhpdCBzdGF0dXMgJWQiCittc2dzdHIgImFsYW1wcm90c2VzcyAlcyB0YWdhc3RhcyBsw7VwZXRhbWlzZWwgdmVha29vZGkgJWQiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMjgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInN1YnByb2Nlc3MgJXMgd2FzIGludGVycnVwdGVkIgorbXNnc3RyICJ0w7VyZ2UgJXMgasOkcmVsIG9vdGFtaXNlbCIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEzMAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic3VicHJvY2VzcyAlcyBraWxsZWQgYnkgc2lnbmFsICglcyklcyIKK21zZ2lkICJzdWJwcm9jZXNzICVzIHdhcyBraWxsZWQgYnkgc2lnbmFsICglcyklcyIKK21zZ3N0ciAiYWxhbXByb3RzZXNzICVzIGvDtXJ2YWxkYXRpIHNpZ25hYWxpZ2EgKCVzKSVzIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTMyCittc2dpZCAiLCBjb3JlIGR1bXBlZCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTM0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJzdWJwcm9jZXNzICVzIGZhaWxlZCB3aXRoIHdhaXQgc3RhdHVzIGNvZGUgJWQiCittc2dzdHIgImFsYW1wcm90c2VzcyAlcyB0YWdhc3RhcyBsw7VwZXRhbWlzZWwgdmVha29vZGkgJWQiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxNTEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQ2MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAid2FpdCBmb3Igc3VicHJvY2VzcyAlcyBmYWlsZWQiCittc2dzdHIgInTDtXJnZSAlcyBqw6RyZWwgb290YW1pc2VsIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDo3MgorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHBhY2thZ2UgbmFtZSBgJS4yNTBzJyBpbiB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjgxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ0cnVuY2F0ZWQgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibMOkaHRlZmFpbGkgYCUuMjUwcycgcG9sZSB2w7VpbWFsaWsgYXZhZGEiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjg1CisjLCBjLWZvcm1hdAorbXNnaWQgInN5bnRheCBlcnJvciBpbiB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIGF0IGNoYXJhY3RlciBgJXMnJXMiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MTM0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3Blbi9jcmVhdGUgdHJpZ2dlcnMgbG9ja2ZpbGUgYCUuMjUwcyciCittc2dzdHIgImzDpGh0ZWZhaWxpIGAlLjI1MHMnIHBvbGUgdsO1aW1hbGlrIGF2YWRhIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNDEKKyMsIGZ1enp5Cittc2dpZCAidHJpZ2dlcnMgYXJlYSIKK21zZ3N0ciAibHVrdSAlcyB2YWJhc3RhbWluZSBwb2xlIHbDtWltYWxpazogJXMiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjE1MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAib3NhZmFpbGkgYCUuMjUwcycgb2xla3V0IHBvbGUgdsO1aW1hbGlrIGZzdGF0IGZ1bmt0c2lvb25pZ2EgbHVnZWRhIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNjUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImzDpGh0ZWZhaWxpIGAlLjI1MHMnIHBvbGUgdsO1aW1hbGlrIGF2YWRhIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNzkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuL2NyZWF0ZSBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibMOkaHRlZmFpbGkgYCUuMjUwcycgcG9sZSB2w7VpbWFsaWsgYXZhZGEiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjIxNQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcmVhZGluZyB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJ2aWdhICVzIGx1Z2VtaXNlbCBmYWlsaXN0ICUuMjU1cyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MjIzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImzDpGh0ZWZhaWxpIGAlLjI1MHMnIHBvbGUgdsO1aW1hbGlrIGF2YWRhIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoyMjgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibMOkaHRlZmFpbGkgYCUuMjUwcycgcG9sZSB2w7VpbWFsaWsgYXZhZGEiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjIzMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImZhaWxpc3QgYCUuMjU1cycgcG9sZSB2w7VpbWFsaWsgdXV0IHZlcnNpb29uaSBwYWlnYWxkYWRhIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MjIyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpbnZhbGlkIG9yIHVua25vd24gc3ludGF4IGluIHRyaWdnZXIgbmFtZSBgJS4yNTBzJyAoaW4gdHJpZ2dlciBpbnRlcmVzdHMgZm9yICIKKyJwYWNrYWdlIGAlLjI1MHMnKSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MjYzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiB0cmlnZ2VyIGludGVyZXN0IGxpc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAicGFraSBgJS4yNTBzJyBmYWlsaWRlIG5pbWVraXJqYSBwb2xlIHbDtWltYWxpayBhdmFkYSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjI5MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJld2luZCB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgInTDtXJnZSBhcmhpaXZpIGAlLjI1NXMnIGx1Z2VtaXNlbCIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMwNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIHN5bnRheCBlcnJvcjsgaWxsZWdhbCBwYWNrYWdlIG5hbWUgYCUuMjUwcyc6ICIKKyIlLjI1MHMiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMxOAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgImp1aHRhbmRtZXRlIGZhaWxpIGAlLjI1MHMnIHBvbGUgdsO1aW1hbGlrIGt1c3R1dGFkYSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMyMQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgImp1aHRhbmRtZXRlIGZhaWxpIGAlLjI1MHMnIHBvbGUgdsO1aW1hbGlrIGt1c3R1dGFkYSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMyNAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAianVodGFuZG1ldGUgZmFpbGkgYCUuMjUwcycgcG9sZSB2w7VpbWFsaWsga3VzdHV0YWRhIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzMyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJmYWlsaXN0IGAlLjI1NXMnIHBvbGUgdsO1aW1hbGlrIHV1dCB2ZXJzaW9vbmkgcGFpZ2FsZGFkYSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjM0MCBsaWIvZHBrZy90cmlnbGliLmM6MzQyIGxpYi9kcGtnL3RyaWdsaWIuYzo0NzIKKyM6IHNyYy9yZW1vdmUuYzoyODYgc3JjL3JlbW92ZS5jOjM3NworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVtb3ZlIGAlLjI1MHMnIgorbXNnc3RyICJgJS4yNTBzJyBwb2xlIHbDtWltYWxpayBlZW1hbGRhZGEiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozNjAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAianVodGFuZG1ldGUgZmFpbGkgYCUuMjUwcycgcG9sZSB2w7VpbWFsaWsga3VzdHV0YWRhIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzgzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAianVodGFuZG1ldGUgZmFpbGkgYCUuMjUwcycgcG9sZSB2w7VpbWFsaWsga3VzdHV0YWRhIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDU2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkdXBsaWNhdGUgZmlsZSB0cmlnZ2VyIGludGVyZXN0IGZvciBmaWxlbmFtZSBgJS4yNTBzJyBhbmQgcGFja2FnZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDgzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImp1aHRhbmRtZXRlIGZhaWxpIGAlLjI1MHMnIHBvbGUgdsO1aW1hbGlrIGt1c3R1dGFkYSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ5MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImzDpGh0ZWZhaWxpIGAlLjI1MHMnIHBvbGUgdsO1aW1hbGlrIGF2YWRhIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDk2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAianVodGFuZG1ldGUgZmFpbGkgYCUuMjUwcycgcG9sZSB2w7VpbWFsaWsga3VzdHV0YWRhIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDk5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlICclLjI1MHMnIgorbXNnc3RyICJqdWh0YW5kbWV0ZSBmYWlsaSBgJS4yNTBzJyBwb2xlIHbDtWltYWxpayBrdXN0dXRhZGEiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1MDMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJqdWh0YW5kbWV0ZSBmYWlsaSBgJS4yNTBzJyBwb2xlIHbDtWltYWxpayBrdXN0dXRhZGEiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1MDcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgYXMgYCUuMjUwcyciCittc2dzdHIgImZhaWxpc3QgYCUuMjU1cycgcG9sZSB2w7VpbWFsaWsgdXV0IHZlcnNpb29uaSBwYWlnYWxkYWRhIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTQyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImp1aHRhbmRtZXRlIGZhaWxpIGAlLjI1MHMnIHBvbGUgdsO1aW1hbGlrIGt1c3R1dGFkYSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjU1MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yIGluIGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAidmlnYSBzZWFkaXN0dXNmYWlsaSBgJS4yNTVzJyBsdWdlbWlzZWwiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImZpbGUgdHJpZ2dlcnMgcmVjb3JkIG1lbnRpb25zIGlsbGVnYWwgcGFja2FnZSBuYW1lIGAlLjI1MHMnIChmb3IgaW50ZXJlc3QgaW4gIgorImZpbGUgYCUuMjUwcycpOiAlLjI1MHMiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjY2NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidHJpZ2dlcnMgY2kgZmlsZSBgJS4yNTBzJyBjb250YWlucyBpbGxlZ2FsIHRyaWdnZXIgc3ludGF4IGluIHRyaWdnZXIgbmFtZSBgIgorIiUuMjUwcyc6ICUuMjUwcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Njg0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiB0cmlnZ2VycyBjaSBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJsw6RodGVmYWlsaSBgJS4yNTBzJyBwb2xlIHbDtWltYWxpayBhdmFkYSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjY5OQorbXNnaWQgInRyaWdnZXJzIGNpIGZpbGUgY29udGFpbnMgdW5rbm93biBkaXJlY3RpdmUgc3ludGF4IgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo3MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJpZ2dlcnMgY2kgZmlsZSBjb250YWlucyB1bmtub3duIGRpcmVjdGl2ZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Nzc2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHRyaWdnZXJzIHN0YXRlIGRpcmVjdG9yeSBgJS4yNTBzJyIKK21zZ3N0ciAiYCUuMjUwcycgdXVlbmRhdHVkIG9sZWt1dCBwb2xlIHbDtWltYWxpayBraXJqdXRhZGEiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo3NzkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgb3duZXJzaGlwIG9mIHRyaWdnZXJzIHN0YXRlIGRpcmVjdG9yeSBgJS4yNTBzJyIKK21zZ3N0ciAiYCUuMjUwcycgdXVlbmRhdHVkIG9sZWt1dCBwb2xlIHbDtWltYWxpayBraXJqdXRhZGEiCisKKyM6IGxpYi9kcGtnL3RyaWduYW1lLmM6MzQKK21zZ2lkICJlbXB0eSB0cmlnZ2VyIG5hbWVzIGFyZSBub3QgcGVybWl0dGVkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWduYW1lLmM6MzgKK21zZ2lkICJ0cmlnZ2VyIG5hbWUgY29udGFpbnMgaW52YWxpZCBjaGFyYWN0ZXIiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdXRpbHMuYzo1NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAicmVhZCBlcnJvciBpbiBgJS4yNTBzJyIKK21zZ3N0ciAidmlnYSAlLjI1MHMgc3VsZ2VtaXNlbCIKKworIzogbGliL2Rwa2cvdXRpbHMuYzo2MQorIywgYy1mb3JtYXQKK21zZ2lkICJmZ2V0cyBnYXZlIGFuIGVtcHR5IHN0cmluZyBmcm9tIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3V0aWxzLmM6NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAidG9vLWxvbmcgbGluZSBvciBtaXNzaW5nIG5ld2xpbmUgaW4gYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdXRpbHMuYzo3NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgcmVhZGluZyBgJS4yNTBzJyIKK21zZ3N0ciAib290YW1hdHUgJXMgbMO1cHAgZmFpbGlzICUuMjU1cyIKKworIzogbGliL2Rwa2cvdmFyYnVmLmM6ODIgbGliL2Rwa2cvdmFyYnVmLmM6ODgKK21zZ2lkICJlcnJvciBmb3JtYXR0aW5nIHN0cmluZyBpbnRvIHZhcmJ1ZiB2YXJpYWJsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxNzkgc3JjL2FyY2hpdmVzLmM6MjAwIHNyYy9hcmNoaXZlcy5jOjcyNAorbXNnaWQgImVycm9yIHJlYWRpbmcgZnJvbSBkcGtnLWRlYiBwaXBlIgorbXNnc3RyICJ2aWdhIGRwa2ctZGViIHRvcnVzdCBsdWdlbWlzZWwiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjE5NQorIywgYy1mb3JtYXQKK21zZ2lkICJza2lwcGVkIHVucGFja2luZyBmaWxlICclLjI1NXMnIChyZXBsYWNlZCBvciBleGNsdWRlZD8pIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjI0NiBzcmMvYXJjaGl2ZXMuYzoyNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igc2V0dGluZyB0aW1lc3RhbXBzIG9mIGAlLjI1NXMnIgorbXNnc3RyICJ2aWdhIGAlLjI1NXMnIGFqYXRlbXBsaXRlIHPDpHR0aW1pc2VsIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoyNjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igc2V0dGluZyBvd25lcnNoaXAgb2Ygc3ltbGluayBgJS4yNTVzJyIKK21zZ3N0ciAidmlnYSBuaW1ldmlpZGEgYCUuMjU1cycgb21hbmlrdSBzZWFkbWlzZWwiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjI2NSBzcmMvYXJjaGl2ZXMuYzo3MzQgc3JjL3N0YXRjbWQuYzoxNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igc2V0dGluZyBvd25lcnNoaXAgb2YgYCUuMjU1cyciCittc2dzdHIgInZpZ2EgYCUuMjU1cycgb21hbmlrdSBzw6R0dGltaXNlbCIKKworIzogc3JjL2FyY2hpdmVzLmM6MjY3IHNyYy9hcmNoaXZlcy5jOjczNiBzcmMvc3RhdGNtZC5jOjE2NQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIHBlcm1pc3Npb25zIG9mIGAlLjI1NXMnIgorbXNnc3RyICJ2aWdhIGAlLjI1NXMnIHDDpMOkc3XDtWlndXN0ZSBzw6R0dGltaXNlbCIKKworIzogc3JjL2FyY2hpdmVzLmM6Mzk1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBzdGF0IChkZXJlZmVyZW5jZSkgZXhpc3Rpbmcgc3ltbGluayBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo0MTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImZhaWxlZCB0byBzdGF0IChkZXJlZmVyZW5jZSkgcHJvcG9zZWQgbmV3IHN5bWxpbmsgdGFyZ2V0IGAlLjI1MHMnIGZvciAiCisic3ltbGluayBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo0NzUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ0cnlpbmcgdG8gb3ZlcndyaXRlIGAlLjI1MHMnLCB3aGljaCBpcyB0aGUgZGl2ZXJ0ZWQgdmVyc2lvbiBvZiBgIgorIiUuMjUwcycgKHBhY2thZ2U6ICUuMTAwcykiCittc2dzdHIgImAlLjI1MHMnIHByb292aXRha3NlIMO8bGUga2lyanV0YWRhLCBzZWUgb24ganViYSBwYWtpcyAlLjI1MHMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjQ4MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidHJ5aW5nIHRvIG92ZXJ3cml0ZSBgJS4yNTBzJywgd2hpY2ggaXMgdGhlIGRpdmVydGVkIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dzdHIgImAlLjI1MHMnIHByb292aXRha3NlIMO8bGUga2lyanV0YWRhLCBzZWUgb24ganViYSBwYWtpcyAlLjI1MHMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjUxMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBgJS4yNTVzJyAod2hpY2ggSSB3YXMgYWJvdXQgdG8gaW5zdGFsbCkiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6NTE5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1bmFibGUgdG8gY2xlYW4gdXAgbWVzcyBzdXJyb3VuZGluZyBgJS4yNTVzJyBiZWZvcmUgaW5zdGFsbGluZyBhbm90aGVyICIKKyJ2ZXJzaW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjUyNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCByZXN0b3JlZCBgJS4yNTVzJyBiZWZvcmUgaW5zdGFsbGluZyBhbm90aGVyIHZlcnNpb24iCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6NTYxCisjLCBjLWZvcm1hdAorbXNnaWQgImFyY2hpdmUgY29udGFpbmVkIG9iamVjdCBgJS4yNTVzJyBvZiB1bmtub3duIHR5cGUgMHgleCIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2MjYgc3JjL2RpdmVydGNtZC5jOjE1MCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NjgyCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIyMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI4NAorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE0NDEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE2ODAKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTY3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjQ0CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUyNworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHJlYWQgJXM6ICVzIgorbXNnaWQgImNhbm5vdCBzdGF0IGZpbGUgJyVzJyIKK21zZ3N0ciAiZmFpbGkgYCVzJyBwb2xlIHbDtWltYWxpayBsdWdlZGE6ICVzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVwbGFjaW5nIGZpbGVzIGluIG9sZCBwYWNrYWdlICVzIC4uLlxuIgorbXNnc3RyICJGYWlsaWRlIGFzZW5kYW1pbmUgdmFuYXMgcGFraXMgJXMgLi4uXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjY0NQorIywgYy1mb3JtYXQKK21zZ2lkICJSZXBsYWNlZCBieSBmaWxlcyBpbiBpbnN0YWxsZWQgcGFja2FnZSAlcyAuLi5cbiIKK21zZ3N0ciAiQXNlbmRhdHVkIHBha2lzICVzIG9sZXZhdGUgZmFpbGlkZWdhIC4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ0cnlpbmcgdG8gb3ZlcndyaXRlIGRpcmVjdG9yeSAnJS4yNTBzJyBpbiBwYWNrYWdlICUuMjUwcyAlLjI1MHMgd2l0aCAiCisibm9uZGlyZWN0b3J5IgorbXNnc3RyICJgJS4yNTBzJyBwcm9vdml0YWtzZSDDvGxlIGtpcmp1dGFkYSwgc2VlIG9uIGp1YmEgcGFraXMgJS4yNTBzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInRyeWluZyB0byBvdmVyd3JpdGUgJyUuMjUwcycsIHdoaWNoIGlzIGFsc28gaW4gcGFja2FnZSAlLjI1MHMgJS4yNTBzIgorbXNnc3RyICJgJS4yNTBzJyBwcm9vdml0YWtzZSDDvGxlIGtpcmp1dGFkYSwgc2VlIG9uIGp1YmEgcGFraXMgJS4yNTBzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3MTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgYCUuMjU1cycgKHdoaWxlIHByb2Nlc3NpbmcgYCUuMjU1cycpIgorbXNnc3RyICJqdWh0YW5kbWV0ZSBmYWlsaSBgJS4yNTBzJyBwb2xlIHbDtWltYWxpayBrdXN0dXRhZGEiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjcxOAorIywgYy1mb3JtYXQKK21zZ2lkICJiYWNrZW5kIGRwa2ctZGViIGR1cmluZyBgJS4yNTVzJyIKK21zZ3N0ciAidGF1c3RhcHJvdHNlc3MgZHBrZy1kZWIgZmFpbGlnYSBgJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6NzQ0IHNyYy9hcmNoaXZlcy5jOjkwOCBzcmMvYXJjaGl2ZXMuYzo5NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZy93cml0aW5nIGAlLjI1NXMnIgorbXNnc3RyICJ2aWdhIGAlLjI1NXMnIHN1bGdlbWlzZWwva2lyanV0YW1pc2VsIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgcGlwZSBgJS4yNTVzJyIKK21zZ3N0ciAidmlnYSB0b3J1IGAlLjI1NXMnIGxvb21pc2VsIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NTMgc3JjL2FyY2hpdmVzLmM6NzU4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIGRldmljZSBgJS4yNTVzJyIKK21zZ3N0ciAidmlnYSBzZWFkbWUgYCUuMjU1cycgbG9vbWlzZWwiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc3MQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBoYXJkIGxpbmsgYCUuMjU1cyciCittc2dzdHIgInZpZ2EgdmlpZGEgYCUuMjU1cycgbG9vbWlzZWwiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc3NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NTM5CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIHN5bWJvbGljIGxpbmsgYCUuMjU1cyciCittc2dzdHIgInZpZ2EgbmltZXZpaWRhIGAlLjI1NXMnIGxvb21pc2VsIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgZGlyZWN0b3J5IGAlLjI1NXMnIgorbXNnc3RyICJ2aWdhIGthdGFsb29naSBgJS4yNTVzJyBsb29taXNlbCIKKworIzogc3JjL2FyY2hpdmVzLmM6ODIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBtb3ZlIGFzaWRlIGAlLjI1NXMnIHRvIGluc3RhbGwgbmV3IHZlcnNpb24iCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6ODMyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzozMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgbGluayBgJS4yNTVzJyIKK21zZ3N0ciAidmlpdGEgYCUuMjU1cycgcG9sZSB2w7VpbWFsaWsgbHVnZWRhIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4MzQgc3JjL2NvbmZpZ3VyZS5jOjQyMworIywgYy1mb3JtYXQKK21zZ2lkICJzeW1ib2xpYyBsaW5rICclLjI1MHMnIHNpemUgaGFzIGNoYW5nZWQgZnJvbSAlamQgdG8gJXpkIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjgzOQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gbWFrZSBiYWNrdXAgc3ltbGluayBmb3IgYCUuMjU1cyciCittc2dzdHIgIiIKKyJmYWlsaXN0IGAlLjI1NXMnIHBvbGUgdsO1aW1hbGlrIGVubmUgdXVlIHZlcnNpb29uaSBwYWlnYWxkYW1pc3QgdmFydWtvb3BpYSAiCisibmltZXZpaXRhIGx1dWEiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjg0MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hvd24gYmFja3VwIHN5bWxpbmsgZm9yIGAlLjI1NXMnIgorbXNnc3RyICJmYWlsaSBgJS4yNTVzJyBuaW1ldmlpZGFsZSBwb2xlIHbDtWltYWxpayBww6TDpHN1w7VpZ3VzaSBtw6TDpHJhdGEgKGNob3duKSIKKworIzogc3JjL2FyY2hpdmVzLmM6ODQ2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBtYWtlIGJhY2t1cCBsaW5rIG9mIGAlLjI1NXMnIGJlZm9yZSBpbnN0YWxsaW5nIG5ldyB2ZXJzaW9uIgorbXNnc3RyICIiCisiZmFpbGlzdCBgJS4yNTVzJyBwb2xlIHbDtWltYWxpayBlbm5lIHV1ZSB2ZXJzaW9vbmkgcGFpZ2FsZGFtaXN0IHZhcnVrb29waWEgIgorInZpaXRhIGx1dWEiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjg2MyBzcmMvYXJjaGl2ZXMuYzo5NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IHZlcnNpb24gb2YgYCUuMjU1cyciCittc2dzdHIgImZhaWxpc3QgYCUuMjU1cycgcG9sZSB2w7VpbWFsaWsgdXV0IHZlcnNpb29uaSBwYWlnYWxkYWRhIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo5MDIgc3JjL2FyY2hpdmVzLmM6OTQ1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiAnJS4yNTVzJyIKK21zZ3N0ciAiZmFpbGkgYCUuMjU1cycgcG9sZSB2w7VpbWFsaWsgbHV1YSIKKworIzogc3JjL2FyY2hpdmVzLmM6OTQ3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBmaWxlICclLjI1NXMnIgorbXNnc3RyICJsw6RodGVmYWlsaSBgJS4yNTBzJyBwb2xlIHbDtWltYWxpayBhdmFkYSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAwMAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorImlnbm9yaW5nIGRlcGVuZGVuY3kgcHJvYmxlbSB3aXRoICVzOlxuIgorIiVzIgorbXNnc3RyICJkcGtnOiBob2lhdHVzIC0gZWVsc8O1bHR1dnVzZSBwcm9ibGVlbWkgZWlyYW1pbmUhXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJjb25zaWRlcmluZyBkZWNvbmZpZ3VyYXRpb24gb2YgZXNzZW50aWFsXG4iCisiIHBhY2thZ2UgJXMsIHRvIGVuYWJsZSAlcy4iCittc2dzdHIgImRwa2c6ICVzIGVlbWFsZGFtaXNlIG90c3VzdGFtaW5lICVzIGthc3VrcyAuLi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAwOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogbm8sICVzIGlzIGVzc2VudGlhbCwgd2lsbCBub3QgZGVjb25maWd1cmVcbiIKKyIgaXQgaW4gb3JkZXIgdG8gZW5hYmxlICVzLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IG5vLCBjYW5ub3QgcHJvY2VlZCB3aXRoICVzICgtLWF1dG8tZGVjb25maWd1cmUgd2lsbCBoZWxwKTpcbiIKKyIlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDMyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJyZW1vdmFsIG9mICUuMjUwcyIKK21zZ3N0ciAiZmFpbGkgYCUuMjUwcycgcG9sZSB2w7VpbWFsaWsgZWVtYWxkYWRhIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDU3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJpbnN0YWxsYXRpb24gb2YgJS4yNTBzIgorbXNnc3RyICJmYWlsaXN0IGAlLjI1NXMnIHBvbGUgdsO1aW1hbGlrIHV1dCB2ZXJzaW9vbmkgcGFpZ2FsZGFkYSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA1OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IGNvbnNpZGVyaW5nIGRlY29uZmlndXJhdGlvbiBvZiAlcywgd2hpY2ggd291bGQgYmUgYnJva2VuIGJ5ICVzIC4uLlxuIgorbXNnc3RyICJkcGtnOiAlcyBlZW1hbGRhbWlzZSBvdHN1c3RhbWluZSAlcyBrYXN1a3MgLi4uXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNjUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IHllcywgd2lsbCBkZWNvbmZpZ3VyZSAlcyAoYnJva2VuIGJ5ICVzKS5cbiIKK21zZ3N0ciAiZHBrZzogamFoLCAlcyBlZW1hbGRhdGFrc2UgJXMga2FzdWtzLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDY5IHNyYy9hcmNoaXZlcy5jOjExODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IHJlZ2FyZGluZyAlcyBjb250YWluaW5nICVzOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogbWlzIHB1dWR1dGFiIHBha2tpICUyJHMgc2lzYWxkYXZhdCBmYWlsaSAlMSRzOlxuIgorIiUzJHMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNzcKKyMsIGZ1enp5Cittc2dpZCAiaWdub3JpbmcgYnJlYWthZ2UsIG1heSBwcm9jZWVkIGFueXdheSEiCittc2dzdHIgImRwa2c6IGhvaWF0dXMgLSB2YXN0dW9sdSBlaXJhdGFrc2UsIGrDpHRrYW1pbmUgb24gdsO1aW1hbGlrICFcbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA4MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiaW5zdGFsbGluZyAlLjI1MHMgd291bGQgYnJlYWsgJS4yNTBzLCBhbmRcbiIKKyIgZGVjb25maWd1cmF0aW9uIGlzIG5vdCBwZXJtaXR0ZWQgKC0tYXV0by1kZWNvbmZpZ3VyZSBtaWdodCBoZWxwKSIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDg2CisjLCBjLWZvcm1hdAorbXNnaWQgImluc3RhbGxpbmcgJS4yNTBzIHdvdWxkIGJyZWFrIGV4aXN0aW5nIHNvZnR3YXJlIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExMTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogY29uc2lkZXJpbmcgcmVtb3ZpbmcgJXMgaW4gZmF2b3VyIG9mICVzIC4uLlxuIgorbXNnc3RyICJkcGtnOiAlcyBlZW1hbGRhbWlzZSBvdHN1c3RhbWluZSAlcyBrYXN1a3MgLi4uXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgaXMgbm90IHByb3Blcmx5IGluc3RhbGxlZCAtIGlnbm9yaW5nIGFueSBkZXBlbmRlbmNpZXMgb24gaXQuXG4iCittc2dzdHIgIiVzIHBvbGUga29ycmFsaWt1bHQgcGFpZ2FsZGF0dWQgLSBrw7Vpa2kgc2VsbGUgc8O1bHR1dnVzaSBlaXJhdGFrc2UuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogbWF5IGhhdmUgdHJvdWJsZSByZW1vdmluZyAlcywgYXMgaXQgcHJvdmlkZXMgJXMgLi4uXG4iCittc2dzdHIgImRwa2c6ICVzIGVlbWFsZGFtaXNlZ2EgdsO1aWIgb2xsYSBwcm9ibGVlbWUga3VuYSBzZWUgdGFnYWIgJXMgLi4uXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExNjYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBwYWNrYWdlICVzIHJlcXVpcmVzIHJlaW5zdGFsbGF0aW9uLCBidXQgd2lsbCByZW1vdmUgYW55d2F5IGFzIHlvdSAiCisicmVxdWVzdGVkLlxuIgorbXNnc3RyICJkcGtnOiBwYWtraSAlcyBlaSBlZW1hbGRhdGEsIHNlZSB2YWphYiB0YWFzcGFpZ2FsZGFtaXN0LlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTY5CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IHBhY2thZ2UgJXMgcmVxdWlyZXMgcmVpbnN0YWxsYXRpb24sIHdpbGwgbm90IHJlbW92ZS5cbiIKK21zZ3N0ciAiZHBrZzogcGFra2kgJXMgZWkgZWVtYWxkYXRhLCBzZWUgdmFqYWIgdGFhc3BhaWdhbGRhbWlzdC5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE3OAorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiB5ZXMsIHdpbGwgcmVtb3ZlICVzIGluIGZhdm91ciBvZiAlcy5cbiIKK21zZ3N0ciAiZHBrZzogamFoLCAlcyBlZW1hbGRhdGFrc2UgJXMga2FzdWtzLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTkwCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZsaWN0aW5nIHBhY2thZ2VzIC0gbm90IGluc3RhbGxpbmcgJS4yNTBzIgorbXNnc3RyICJ2YXN0dW9sdWxpc2VkIHBha2lkLCAlLjI1MHMgasOkZXRha3NlIHBhaWdhbGRhbWF0YSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE5MQorIywgZnV6enkKK21zZ2lkICJpZ25vcmluZyBjb25mbGljdCwgbWF5IHByb2NlZWQgYW55d2F5ISIKK21zZ3N0ciAiZHBrZzogaG9pYXR1cyAtIHZhc3R1b2x1IGVpcmF0YWtzZSwgasOkdGthbWluZSBvbiB2w7VpbWFsaWsgIVxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjM1CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgLS1yZWN1cnNpdmUgbmVlZHMgYXQgbGVhc3Qgb25lIHBhdGggYXJndW1lbnQiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI0NQorIywgZnV6enkKK21zZ2lkICJmaW5kIGZvciBkcGtnIC0tcmVjdXJzaXZlIgorbXNnc3RyICJ0w7VyZ2UgLS1yZWN1cnNpdmUgamFva3Mga8Okc3UgYGZpbmQnIGvDpGl2aXRhbWlzZWwiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNjYKK21zZ2lkICJmYWlsZWQgdG8gZmRvcGVuIGZpbmQncyBwaXBlIgorbXNnc3RyICJ0w7VyZ2Uga8Okc3UgYGZpbmQnIHRvcnUgYXZhbWlzZWwgZnVua3RzaW9vbmlnYSBmZG9wZW4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNzIKK21zZ2lkICJlcnJvciByZWFkaW5nIGZpbmQncyBwaXBlIgorbXNnc3RyICJ2aWdhIGZpbmQnaSB0b3J1c3QgbHVnZW1pc2VsIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjczCittc2dpZCAiZXJyb3IgY2xvc2luZyBmaW5kJ3MgcGlwZSIKK21zZ3N0ciAidmlnYSBmaW5kJ2kgdG9ydSBzdWxnZW1pc2VsIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjc2CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbmQgZm9yIC0tcmVjdXJzaXZlIHJldHVybmVkIHVuaGFuZGxlZCBlcnJvciAlaSIKK21zZ3N0ciAiIgorIi0tcmVjdXJzaXZlIGphb2tzIGthc3V0YXRhdiBrw6RzayBgZmluZCcgdGFnYXN0YXMga8Okc2l0bGVtYXR1IHZlYWtvb2RpICVpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjc5Cittc2dpZCAic2VhcmNoZWQsIGJ1dCBmb3VuZCBubyBwYWNrYWdlcyAoZmlsZXMgbWF0Y2hpbmcgKi5kZWIpIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhdCBsZWFzdCBvbmUgcGFja2FnZSBhcmNoaXZlIGZpbGUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMgdmFqYWIgYXJndW1lbmRpa3MgdsOkaGVtYWx0IMO8aHRlIHBha2lhcmhpaXZpIG5pbWUiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzMjUgc3JjL2RpdmVydGNtZC5jOjc4IHNyYy9kaXZlcnRjbWQuYzoxMTgKKyM6IHNyYy9lbnF1aXJ5LmM6MTY2IHNyYy9lbnF1aXJ5LmM6Mjc5IHNyYy9lbnF1aXJ5LmM6NDQ5IHNyYy9lbnF1aXJ5LmM6NDUxCisjOiBzcmMvZW5xdWlyeS5jOjQ2NCBzcmMvbWFpbi5jOjY2IHNyYy9tYWluLmM6MTYzIHNyYy9tYWluLmM6MzE0CisjOiBzcmMvbWFpbi5jOjQ5MyBzcmMvcGFja2FnZXMuYzoyNTQgc3JjL3F1ZXJ5Y21kLmM6MjUyIHNyYy9xdWVyeWNtZC5jOjM1NQorIzogc3JjL3F1ZXJ5Y21kLmM6Mzk2IHNyYy9xdWVyeWNtZC5jOjQwNCBzcmMvcXVlcnljbWQuYzo0NDggc3JjL3F1ZXJ5Y21kLmM6NTE3CisjOiBzcmMvcXVlcnljbWQuYzo2MDYgc3JjL3F1ZXJ5Y21kLmM6NjUwIHNyYy9zZWxlY3QuYzo3OSBzcmMvc3RhdGNtZC5jOjY4CisjOiBzcmMvc3RhdGNtZC5jOjk4IHNyYy90cmlnY21kLmM6NTggc3JjL3RyaWdjbWQuYzo5MCBkcGtnLWRlYi9idWlsZC5jOjQ0MQorIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIxNyBkcGtnLWRlYi9leHRyYWN0LmM6MjUwIGRwa2ctZGViL2luZm8uYzoyMDMKKyM6IGRwa2ctZGViL2luZm8uYzoyNjUgZHBrZy1kZWIvbWFpbi5jOjYwIGRwa2ctZGViL21haW4uYzoxMjYKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjI1NyBkcGtnLXNwbGl0L21haW4uYzo1NCBkcGtnLXNwbGl0L21haW4uYzo5OAorIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE0NCBkcGtnLXNwbGl0L3F1ZXVlLmM6MjgwCittc2dpZCAiPHN0YW5kYXJkIG91dHB1dD4iCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTMyNiBzcmMvcGFja2FnZXMuYzoyNTUgc3JjL3F1ZXJ5Y21kLmM6MjUzCisjOiBzcmMvcXVlcnljbWQuYzozNTMgc3JjL3F1ZXJ5Y21kLmM6NDU0IHNyYy9xdWVyeWNtZC5jOjUxOCBzcmMvc2VsZWN0LmM6ODAKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjE2OSBkcGtnLXNwbGl0L3F1ZXVlLmM6MjE4Cittc2dpZCAiPHN0YW5kYXJkIGVycm9yPiIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzY3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJTZWxlY3RpbmcgcHJldmlvdXNseSBkZXNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dpZCAiU2VsZWN0aW5nIHByZXZpb3VzbHkgdW5zZWxlY3RlZCBwYWNrYWdlICVzLlxuIgorbXNnc3RyICJWYXJlbSB2YWxpbWF0YSBwYWtpICVzIHZhbGltaW5lLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzcxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJTa2lwcGluZyBkZXNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dpZCAiU2tpcHBpbmcgdW5zZWxlY3RlZCBwYWNrYWdlICVzLlxuIgorbXNnc3RyICJWYWxpbWF0YSBwYWtpICVzIHZhaGVsZWrDpHRtaW5lLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzg3CisjLCBjLWZvcm1hdAorbXNnaWQgIlZlcnNpb24gJS4yNTBzIG9mICUuMjUwcyBhbHJlYWR5IGluc3RhbGxlZCwgc2tpcHBpbmcuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTM5NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZG93bmdyYWRpbmcgJS4yNTBzIGZyb20gJS4yNTBzIHRvICUuMjUwcy4iCittc2dzdHIgIiVzIC0gaG9pYXR1czogcGFraSAlLjI1MHMgdmVyc2lvb25pIGFsYW5kYW1pbmUgJS4yNTBzIC0+ICUuMjUwcy5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTQwMgorIywgYy1mb3JtYXQKK21zZ2lkICJXaWxsIG5vdCBkb3duZ3JhZGUgJS4yNTBzIGZyb20gdmVyc2lvbiAlLjI1MHMgdG8gJS4yNTBzLCBza2lwcGluZy5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvY2xlYW51cC5jOjg2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1bmFibGUgdG8gcmVtb3ZlIG5ld2x5LWluc3RhbGxlZCB2ZXJzaW9uIG9mIGAlLjI1MHMnIHRvIGFsbG93IHJlaW5zdGFsbGF0aW9uICIKKyJvZiBiYWNrdXAgY29weSIKK21zZ3N0ciAiIgorCisjOiBzcmMvY2xlYW51cC5jOjkzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZXN0b3JlIGJhY2t1cCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9jbGVhbnVwLmM6OTcKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byBtYWtlIGJhY2t1cCBzeW1saW5rIGZvciBgJS4yNTVzJyIKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIGJhY2t1cCBjb3B5IG9mICclLjI1MHMnIgorbXNnc3RyICIiCisiZmFpbGlzdCBgJS4yNTVzJyBwb2xlIHbDtWltYWxpayBlbm5lIHV1ZSB2ZXJzaW9vbmkgcGFpZ2FsZGFtaXN0IHZhcnVrb29waWEgIgorIm5pbWV2aWl0YSBsdXVhIgorCisjOiBzcmMvY2xlYW51cC5jOjEwMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIG5ld2x5LWluc3RhbGxlZCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9jbGVhbnVwLmM6MTA4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgbmV3bHktZXh0cmFjdGVkIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjEwNAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgbmV3IGRpc3RyaWJ1dGVkIGNvbmZmaWxlICclLjI1MHMnIgorbXNnc3RyICJsw6RodGVmYWlsaSBgJS4yNTBzJyBwb2xlIHbDtWltYWxpayBhdmFkYSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBjdXJyZW50IGluc3RhbGxlZCBjb25mZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTI2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJDb25maWd1cmF0aW9uIGZpbGUgYCVzJywgZG9lcyBub3QgZXhpc3Qgb24gc3lzdGVtLlxuIgorIkluc3RhbGxpbmcgbmV3IGNvbmZpZyBmaWxlIGFzIHlvdSByZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE2OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW1vdmUgb2xkIGJhY2t1cCAnJS4yNTBzJzogJXMiCittc2dzdHIgImRwa2c6ICVzOiBob2lhdHVzIC0gdMO1cmdlIHZhbmEgdmFydWtvb3BpYSBgJS4yNTBzJyBlZW1hbGRhbWlzZWw6ICVzXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzoxNzYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVuYW1lICclLjI1MHMnIHRvICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiBob2lhdHVzIC0gdMO1cmdlIGAlLjI1MHMnIMO8bWJlcm5pbWV0YW1pc2VsIG5pbWVnYSBgJS4yNTBzJzogJXNcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE4MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW1vdmUgJyUuMjUwcyc6ICVzIgorbXNnc3RyICIlczogdMO1cmdlICclcyAlcycga8Okdml0YW1pc2VsIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTg4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIHJlbW92ZSBvbGQgZGlzdHJpYnV0ZWQgdmVyc2lvbiAnJS4yNTBzJzogJXMiCittc2dzdHIgImRwa2c6ICVzOiBob2lhdHVzIC0gdMO1cmdlIHZhbmEgdmFydWtvb3BpYSBgJS4yNTBzJyBlZW1hbGRhbWlzZWw6ICVzXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzoxOTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlICclLjI1MHMnIChiZWZvcmUgb3ZlcndyaXRlKTogJXMiCittc2dzdHIgIiIKKyJkcGtnOiAlczogaG9pYXR1cyAtIHTDtXJnZSBgJS4yNTBzJyBlZW1hbGRhbWlzZWwgKGVubmUgw7xsZWtpcmp1dGFtaXN0KTogJXNcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE5NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byBsaW5rICclLjI1MHMnIHRvICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiBob2lhdHVzIC0gdMO1cmdlIGAlLjI1MHMnIMO8bWJlcm5pbWV0YW1pc2VsIG5pbWVnYSBgJS4yNTBzJzogJXNcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjIwMAorIywgYy1mb3JtYXQKK21zZ2lkICJJbnN0YWxsaW5nIG5ldyB2ZXJzaW9uIG9mIGNvbmZpZyBmaWxlICVzIC4uLlxuIgorbXNnc3RyICJTZWFkaXN0dXNmYWlsaSAlcyB1dWUgdmVyc2lvb25pIHBhaWdhbGRhbWluZS4uLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjA2IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo1NDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgYCUuMjUwcycgYXMgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI1NworIywgYy1mb3JtYXQKK21zZ2lkICJubyBwYWNrYWdlIG5hbWVkIGAlcycgaXMgaW5zdGFsbGVkLCBjYW5ub3QgY29uZmlndXJlIgorbXNnc3RyICJwYWtraSBgJXMnIHBvbGUgcGFpZ2FsZGF0dWQgamEgc2VldMO1dHR1IHBvbGUgc2VkYSB2w7VpbWFsaWsgc2VhZGlzdGFkYSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI2MAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlICUuMjUwcyBpcyBhbHJlYWR5IGluc3RhbGxlZCBhbmQgY29uZmlndXJlZCIKK21zZ3N0ciAicGFrayAlLjI1MHMgb24ganViYSBwYWlnYWxkYXR1ZCBqYSBzZWFkaXN0YXR1ZCIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI2MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisicGFja2FnZSAlLjI1MHMgaXMgbm90IHJlYWR5IGZvciBjb25maWd1cmF0aW9uXG4iCisiIGNhbm5vdCBjb25maWd1cmUgKGN1cnJlbnQgc3RhdHVzIGAlLjI1MHMnKSIKK21zZ3N0ciAiIgorInBha2sgJS4yNTBzIHBvbGUgc2VhZGlzdGFtaXNla3MgdmFsbWlzXG4iCisiIHNlYWRpc3RhbWluZSBwb2xlIHbDtWltYWxpayAoaGV0a2VvbGVrIGAlLjI1MHMnKSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI5NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogZGVwZW5kZW5jeSBwcm9ibGVtcyBwcmV2ZW50IGNvbmZpZ3VyYXRpb24gb2YgJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiBzw7VsdHV2dXNwcm9ibGVlbWlkIHRha2lzdGF2YWQgJXMgc2VhZGlzdGFtaXN0OlxuIgorIiVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6Mjk3Cittc2dpZCAiZGVwZW5kZW5jeSBwcm9ibGVtcyAtIGxlYXZpbmcgdW5jb25maWd1cmVkIgorbXNnc3RyICJzw7VsdHV2dXNwcm9ibGVlbWlkIC0gasOkZXRha3NlIHNlYWRpc3RhbWF0YSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjMwMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogJXM6IGRlcGVuZGVuY3kgcHJvYmxlbXMsIGJ1dCBjb25maWd1cmluZyBhbnl3YXkgYXMgeW91IHJlcXVlc3RlZDpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiBzw7VsdHV2dXNwcm9ibGVlbWlkLCBrdWlkIHZhc3RhdmFsdCBuw7V1ZG1pc2VsZSBzZWFkaXN0YXRha3NlICIKKyJpa2thZ2k6XG4iCisiJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzozMDkKK21zZ2lkICIiCisiUGFja2FnZSBpcyBpbiBhIHZlcnkgYmFkIGluY29uc2lzdGVudCBzdGF0ZSAtIHlvdSBzaG91bGRcbiIKKyIgcmVpbnN0YWxsIGl0IGJlZm9yZSBhdHRlbXB0aW5nIGNvbmZpZ3VyYXRpb24uIgorbXNnc3RyICIiCisiUGFrayBvbiB2w6RnYSBoYWx2YXMgc2Vpc3VuZGlzIC0gZW5uZSBzZWFkaXN0YW1pc3QgcGVha3NpZFxuIgorIiBzYSBwYWtpIHV1ZXN0aSBwYWlnYWxkYW1hLiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjMxMgorIywgYy1mb3JtYXQKK21zZ2lkICJTZXR0aW5nIHVwICVzICglcykgLi4uXG4iCittc2dzdHIgIlBha2kgJXMgKCVzKSBwYWlrYXPDpHR0aW1pbmUgLi4uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzozOTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogdW5hYmxlIHRvIHN0YXQgY29uZmlnIGZpbGUgJyVzJ1xuIgorIiAoPSAnJXMnKTogJXMiCittc2dzdHIgImZhaWxpICVzIHBvbGUgdsO1aW1hbGlrIGFzdWtvaGFsZSAlcyBwYWlnYWxkYWRhOiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQwOQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IGNvbmZpZyBmaWxlICclcycgaXMgYSBjaXJjdWxhciBsaW5rXG4iCisiICg9ICclcycpIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo0MTgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogdW5hYmxlIHRvIHJlYWRsaW5rIGNvbmZmaWxlICclcydcbiIKKyIgKD0gJyVzJyk6ICVzIgorbXNnc3RyICIlcyBwb2xlIHbDtWltYWxpayBuaW1lZ2EgJXMgw7xtYmVyIG5pbWV0YWRhOiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQ0NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IGNvbmZmaWxlICclLjI1MHMnIHJlc29sdmVzIHRvIGRlZ2VuZXJhdGUgZmlsZW5hbWVcbiIKKyIgKCclcycgaXMgYSBzeW1saW5rIHRvICclcycpIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo0NjAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBjb25mZmlsZSAnJS4yNTBzJyBpcyBub3QgYSBwbGFpbiBmaWxlIG9yIHN5bWxpbmsgKD0gJyVzJykiCittc2dzdHIgImzDpGh0ZWZhaWwgYCUuMjUwcycgcG9sZSBsaWh0ZmFpbCIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQ4NgorbXNnaWQgIm1kNWhhc2giCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQ5MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IHVuYWJsZSB0byBvcGVuIGNvbmZmaWxlICVzIGZvciBoYXNoOiAlcyIKK21zZ3N0ciAiZmFpbGkgJXMgcG9sZSB2w7VpbWFsaWsga2lyanV0YW1pc2VrcyBhdmFkYTogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzo1MjIgc3JjL2NvbmZpZ3VyZS5jOjUyNgorbXNnaWQgImNvbmZmaWxlIGRpZmZlcmVuY2UgdmlzdWFsaXplciIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NTQzCittc2dpZCAiVHlwZSBgZXhpdCcgd2hlbiB5b3UncmUgZG9uZS5cbiIKK21zZ3N0ciAiS3VpIHZhbG1pcyBzYWFkLCBzaXNlc3RhIGBleGl0Jy5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjU1MiBzcmMvY29uZmlndXJlLmM6NTU2Cittc2dpZCAiY29uZmZpbGUgc2hlbGwiCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYwMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiQ29uZmlndXJhdGlvbiBmaWxlIGAlcyciCittc2dzdHIgIiIKKyJcbiIKKyJTZWFkaXN0dXNmYWlsIGAlcyciCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIChhY3R1YWxseSBgJXMnKSIKK21zZ3N0ciAiICh0ZWdlbGlrdWx0IGAlcycpIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjA4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgPT0+IEZpbGUgb24gc3lzdGVtIGNyZWF0ZWQgYnkgeW91IG9yIGJ5IGEgc2NyaXB0LlxuIgorIiA9PT4gRmlsZSBhbHNvIGluIHBhY2thZ2UgcHJvdmlkZWQgYnkgcGFja2FnZSBtYWludGFpbmVyLlxuIgorbXNnc3RyICIiCisiXG4iCisiID09PiBTw7xzdGVlbWlzIG9sZXYgZmFpbCBvbiBsb29kdWQgU2ludSBwb29sdCB2w7VpIG3DtW5lIHNrcmlwdGkgcG9vbHQuXG4iCisiID09PiBTYW11dGkgb24gZmFpbCBvbGVtYXMgcGFraXMsIHBha2VuZGF0dWQgcGFraSBoYWxkYWphIHBvb2x0LlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjEzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgICAgIE5vdCBtb2RpZmllZCBzaW5jZSBpbnN0YWxsYXRpb24uXG4iCittc2dzdHIgIiIKKyJcbiIKKyIgICAgIFBvbGUgcMOkcmFzdCB2aWltYXN0IHBhaWdhbGR1c3QgbXV1ZGV0dWQuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiA9PT4gTW9kaWZpZWQgKGJ5IHlvdSBvciBieSBhIHNjcmlwdCkgc2luY2UgaW5zdGFsbGF0aW9uLlxuIgorbXNnc3RyICIiCisiXG4iCisiID09PiBNdXVkZXR1ZCBwYWlnYWxkdXN0ZSB2YWhlbCAoc2ludSB2w7VpIG3DtW5lIHNrcmlwdGkgcG9vbHQpLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjE2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgPT0+IERlbGV0ZWQgKGJ5IHlvdSBvciBieSBhIHNjcmlwdCkgc2luY2UgaW5zdGFsbGF0aW9uLlxuIgorbXNnc3RyICIiCisiXG4iCisiID09PiBLdXN0dXRhdHVkIHBhaWdhbGR1c3RlIHZhaGVsIChzaW51IHbDtWkgbcO1bmUgc2tyaXB0aSBwb29sdCkuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBQYWNrYWdlIGRpc3RyaWJ1dG9yIGhhcyBzaGlwcGVkIGFuIHVwZGF0ZWQgdmVyc2lvbi5cbiIKK21zZ3N0ciAiID09PiBQYWtpIGRpc3RyaWJ1dXRvciBvbiBwYWtpZ2Ega2Fhc2EgcGFubnVkIHV1ZW5kYXR1ZCB2ZXJzaW9vbmkuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAgICBWZXJzaW9uIGluIHBhY2thZ2UgaXMgdGhlIHNhbWUgYXMgYXQgbGFzdCBpbnN0YWxsYXRpb24uXG4iCittc2dzdHIgIiIKKyIgICAgIFBha2lzIG9sZXYgdmVyc2lvb24gb24gc2FtYSwgbWlkYSBrYXN1dGF0aSB2aWltYXNlbCBwYWlnYWxkdXNlbC5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYyOAorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IFVzaW5nIG5ldyBmaWxlIGFzIHlvdSByZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiA9PT4gU2ludSBuw7V1ZG1pc2VsIGthc3V0YXRha3NlIHV1dCBmYWlsaS5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYzMgorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IFVzaW5nIGN1cnJlbnQgb2xkIGZpbGUgYXMgeW91IHJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiID09PiBTaW51IG7DtXVkbWlzZWwga2FzdXRhdGFrc2UgcHJhZWd1c3QgdmFuYSBmYWlsaS5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY0MQorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IEtlZXBpbmcgb2xkIGNvbmZpZyBmaWxlIGFzIGRlZmF1bHQuXG4iCittc2dzdHIgIiA9PT4gU2ludSBuw7V1ZG1pc2VsIGrDpGV0YWtzZSB2YWlraW1pc2kgdmFuYSBzZWFkaXN0dXNmYWlsIGFsbGVzLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gVXNpbmcgbmV3IGNvbmZpZyBmaWxlIGFzIGRlZmF1bHQuXG4iCittc2dzdHIgIiA9PT4gVmFpa2ltaXNpIGthc3V0YXRha3NlIHV1dCBzZWFkaXN0dXNmYWlsaS5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY1MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIiAgIFdoYXQgd291bGQgeW91IGxpa2UgdG8gZG8gYWJvdXQgaXQgPyAgWW91ciBvcHRpb25zIGFyZTpcbiIKKyIgICAgWSBvciBJICA6IGluc3RhbGwgdGhlIHBhY2thZ2UgbWFpbnRhaW5lcidzIHZlcnNpb25cbiIKKyIgICAgTiBvciBPICA6IGtlZXAgeW91ciBjdXJyZW50bHktaW5zdGFsbGVkIHZlcnNpb25cbiIKKyIgICAgICBEICAgICA6IHNob3cgdGhlIGRpZmZlcmVuY2VzIGJldHdlZW4gdGhlIHZlcnNpb25zXG4iCisiICAgICAgWiAgICAgOiBzdGFydCBhIHNoZWxsIHRvIGV4YW1pbmUgdGhlIHNpdHVhdGlvblxuIgorbXNnc3RyICIiCisiICAgTWlkYSBzYSBzb292aWQgc2VsbGVnYSBwZWFsZSBoYWthdGE/ICBWYWxpa3VkIG9uOlxuIgorIiAgICBZIHbDtWkgSSAgOiBwYWtpIGhhbGRhamEgdmVyc2lvb25pIHBhaWdhbGRhbWluZVxuIgorIiAgICBOIHbDtWkgTyAgOiBoZXRrZWwgcGFpZ2FsZGF0dWQgdmVyc2lvb25pIHPDpGlsaXRhbWluZVxuIgorIiAgICAgIEQgICAgICA6IHZlcnNpb29uaWRldmFoZWxpc3RlIGVyaW5ldnVzdGUgbsOkaXRhbWluZVxuIgorIiAgICAgIFogICAgICA6IG9sdWtvcnJhIHV1cmltaXNla3Mgc2VsbGUgcHJvdHNlc3NpIHRhdXN0YWxlc2FhdG1pbmVcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY1OQorIywgYy1mb3JtYXQKK21zZ2lkICIgVGhlIGRlZmF1bHQgYWN0aW9uIGlzIHRvIGtlZXAgeW91ciBjdXJyZW50IHZlcnNpb24uXG4iCittc2dzdHIgIiBWYWlraW1pc2kgdG9pbWluZyBvbiBwcmFlZ3VzZSB2ZXJzaW9vbmkgc8OkaWxpdGFtaW5lLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjYxCisjLCBjLWZvcm1hdAorbXNnaWQgIiBUaGUgZGVmYXVsdCBhY3Rpb24gaXMgdG8gaW5zdGFsbCB0aGUgbmV3IHZlcnNpb24uXG4iCittc2dzdHIgIiBWYWlraW1pc2kgdG9pbWluZyBvbiB1dWUgdmVyc2lvb25pIHBhaWdhbGRhbWluZS5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY2NgorbXNnaWQgIltkZWZhdWx0PU5dIgorbXNnc3RyICJbdmFpa2ltaXNpPU5dIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjY3Cittc2dpZCAiW2RlZmF1bHQ9WV0iCittc2dzdHIgIlt2YWlraW1pc2k9WV0iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NjgKK21zZ2lkICJbbm8gZGVmYXVsdF0iCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY3MQorbXNnaWQgImVycm9yIHdyaXRpbmcgdG8gc3RkZXJyLCBkaXNjb3ZlcmVkIGJlZm9yZSBjb25mZmlsZSBwcm9tcHQiCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY4MAorbXNnaWQgInJlYWQgZXJyb3Igb24gc3RkaW4gYXQgY29uZmZpbGUgcHJvbXB0IgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2ODEKK21zZ2lkICJFT0Ygb24gc3RkaW4gYXQgY29uZmZpbGUgcHJvbXB0IgorbXNnc3RyICIiCisKKyM6IHNyYy9kZXBjb24uYzoxNzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgZGVwZW5kcyBvbiAlcyIKK21zZ3N0ciAiJXMgc8O1bHR1YiBwYWtpc3QgJXMiCisKKyM6IHNyYy9kZXBjb24uYzoxNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcHJlLWRlcGVuZHMgb24gJXMiCittc2dzdHIgIiVzIGVlbHPDtWx0dWIgcGFraXN0ICVzIgorCisjOiBzcmMvZGVwY29uLmM6MTgxCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHJlY29tbWVuZHMgJXMiCittc2dzdHIgIiVzIHNvb3ZpdGFiIHBha2tpICVzIgorCisjOiBzcmMvZGVwY29uLmM6MTg0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHN1Z2dlc3RzICVzIgorbXNnc3RyICIlcyB2aWhqYWIgcGFraWxlICVzIgorCisjOiBzcmMvZGVwY29uLmM6MTg3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGJyZWFrcyAlcyIKK21zZ3N0ciAiJXMgbMO1aHViIHBha2kgJXMiCisKKyM6IHNyYy9kZXBjb24uYzoxOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgY29uZmxpY3RzIHdpdGggJXMiCittc2dzdHIgIiVzIG9uIHZhc3R1b2x1cyBwYWtpZ2EgJXMiCisKKyM6IHNyYy9kZXBjb24uYzoxOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgZW5oYW5jZXMgJXMiCittc2dzdHIgIiVzIHTDpGl1c3RhYiBwYWtraSAlcyIKKworIzogc3JjL2RlcGNvbi5jOjI5NgorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9kZXBjb24uYzoyOTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdG8gYmUgZGVjb25maWd1cmVkLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9kZXBjb24uYzozMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdG8gYmUgaW5zdGFsbGVkLCBidXQgaXMgdmVyc2lvbiAlLjI1MHMuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2RlcGNvbi5jOjMxNAorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyBpbnN0YWxsZWQsIGJ1dCBpcyB2ZXJzaW9uICUuMjUwcy5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGVwY29uLmM6MzMzCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHVucGFja2VkLCBidXQgaGFzIG5ldmVyIGJlZW4gY29uZmlndXJlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMgb24gbGFodGkgcGFraXR1ZCwga3VpZCBzZWRhIHBvbGUga3VuYWdpIHNlYWRpc3RhdHVkLlxuIgorCisjOiBzcmMvZGVwY29uLmM6MzM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHVucGFja2VkLCBidXQgaXMgdmVyc2lvbiAlLjI1MHMuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2RlcGNvbi5jOjM0MworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBsYXRlc3QgY29uZmlndXJlZCB2ZXJzaW9uIGlzICUuMjUwcy5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGVwY29uLmM6MzUzCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzICVzLlxuIgorbXNnc3RyICIgICUuMjUwcyBvbiAlcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjM4OAorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYnV0IGlzIHRvIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIHRhZ2FiIHBha2kgJS4yNTBzLCBrdWlkIHNlZSBvbiBtw6TDpHJhdHVkIGVlbWFsZGFtaXNla3MuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGJ1dCBpcyB0byBiZSBkZWNvbmZpZ3VyZWQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2RlcGNvbi5jOjQwMQorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYnV0IGlzICVzLlxuIgorbXNnc3RyICIgICUuMjUwcyB0YWdhYiAlLjI1MHMsIGt1aWQgb24gw7xodGxhc2kgJXMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0MTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgbm90IGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMgcG9sZSBwYWlnYWxkYXR1ZC5cbiIKKworIzogc3JjL2RlcGNvbi5jOjQ0MworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyAodmVyc2lvbiAlLjI1MHMpIGlzIHRvIGJlIGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiICBwYWlnYWxkYXRha3NlICUuMjUwcyAodmVyc2lvb24gJS4yNTBzKS5cbiIKKworIzogc3JjL2RlcGNvbi5jOjQ2OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgKHZlcnNpb24gJS4yNTBzKSBpcyBwcmVzZW50IGFuZCAlcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgKHZlcnNpb29uICUuMjUwcykgb24gJXMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGFuZCBpcyB0byBiZSBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIHRhZ2FiICUuMjUwcyBqYSBzZWUgcGFpZ2FsZGF0YWtzZS5cbiIKKworIzogc3JjL2RlcGNvbi5jOjUzNworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGFuZCBpcyBwcmVzZW50IGFuZCAlcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgdGFnYWIgJS4yNTBzIGphIG9uIMO8aHRsYXNpICVzLlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTAKKyMsIGZ1enp5Cittc2dpZCAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBkaXZlcnRpbmcgZmlsZXMuIgorbXNnc3RyICJBYml0ZWFiZSBqYW9rcyBzaXNlc3RhIGRwa2ctc3BsaXQgLS1oZWxwLiIKKworIzogc3JjL2RpdmVydGNtZC5jOjY2IHNyYy9zdGF0Y21kLmM6NTcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjgwCisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiAlcyB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICJEZWJpYW4naSAlcyB2ZXJzaW9vbiAlcy5cbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjcwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiXG4iCisjfCAiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorI3wgIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uIgorbXNnaWQgIiIKKyJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMTAgR3VpbGxlbSBKb3Zlci5cbiIKK21zZ3N0ciAiIgorIlxuIgorIkF1dG9yacO1aWd1c2VkIChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorIkF1dG9yacO1aWd1c2VkIChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo3NSBzcmMvbWFpbi5jOjYzIHNyYy9xdWVyeWNtZC5jOjYwMyBzcmMvc3RhdGNtZC5jOjY1CisjOiBzcmMvdHJpZ2NtZC5jOjU1IGRwa2ctZGViL21haW4uYzo1NyBkcGtnLXNwbGl0L21haW4uYzo1MQorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjg5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvclxuIgorImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LlxuIgorbXNnc3RyICIiCisiXG4iCisiU2VlIG9uIHZhYmEgdGFya3ZhcmEuIEtvcGVlcmltaXN0aW5naW11c3RlIGphb2tzIHZhYXRhIEdOVSDDnGxkaXN0IEF2YWxpa2t1XG4iCisiTGl0c2VudHNpIC0gdmVyc2lvb25pIDIgdsO1aSDDvGtza8O1aWsgbWlsbGlzdCBoaWxpc2VtYXQgdmVyc2lvb25pLiBQcm9ncmFtbWlsXG4iCisicG9sZSBNSVRURSBNSU5HSVNVR1VTVCBnYXJhbnRpaWQuXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo4NyBzcmMvbWFpbi5jOjgxIHNyYy9xdWVyeWNtZC5jOjYxNSBzcmMvc3RhdGNtZC5jOjc3CisjOiBkcGtnLWRlYi9tYWluLmM6NjkgZHBrZy1zcGxpdC9tYWluLmM6NjMgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjk3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gPGNvbW1hbmQ+XG4iCisiXG4iCittc2dzdHIgIiIKKyJLYXN1dGFtaW5lOiAlcyBbPHbDtXRpPiAuLi5dIDxrw6Rzaz5cbiIKKyJcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjkxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIFstLWFkZF0gPGZpbGU+ICAgICAgICAgICBhZGQgYSBkaXZlcnNpb24uXG4iCisiICAtLXJlbW92ZSA8ZmlsZT4gICAgICAgICAgcmVtb3ZlIHRoZSBkaXZlcnNpb24uXG4iCisiICAtLWxpc3QgWzxnbG9iLXBhdHRlcm4+XSAgc2hvdyBmaWxlIGRpdmVyc2lvbnMuXG4iCisiICAtLWxpc3RwYWNrYWdlIDxmaWxlPiAgICAgc2hvdyB3aGF0IHBhY2thZ2UgZGl2ZXJ0cyB0aGUgZmlsZS5cbiIKKyIgIC0tdHJ1ZW5hbWUgPGZpbGU+ICAgICAgICByZXR1cm4gdGhlIGRpdmVydGVkIGZpbGUuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjEwMAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tcGFja2FnZSA8cGFja2FnZT4gICAgICBuYW1lIG9mIHRoZSBwYWNrYWdlIHdob3NlIGNvcHkgb2YgPGZpbGU+IHdpbGwgIgorIm5vdFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmUgZGl2ZXJ0ZWQuXG4iCisiICAtLWxvY2FsICAgICAgICAgICAgICAgICAgYWxsIHBhY2thZ2VzJyB2ZXJzaW9ucyBhcmUgZGl2ZXJ0ZWQuXG4iCisiICAtLWRpdmVydCA8ZGl2ZXJ0LXRvPiAgICAgdGhlIG5hbWUgdXNlZCBieSBvdGhlciBwYWNrYWdlcycgdmVyc2lvbnMuXG4iCisiICAtLXJlbmFtZSAgICAgICAgICAgICAgICAgYWN0dWFsbHkgbW92ZSB0aGUgZmlsZSBhc2lkZSAob3IgYmFjaykuXG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgc2V0IHRoZSBkaXJlY3Rvcnkgd2l0aCB0aGUgZGl2ZXJzaW9ucyBmaWxlLlxuIgorIiAgLS10ZXN0ICAgICAgICAgICAgICAgICAgIGRvbid0IGRvIGFueXRoaW5nLCBqdXN0IGRlbW9uc3RyYXRlLlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHF1aWV0IG9wZXJhdGlvbiwgbWluaW1hbCBvdXRwdXQuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIldoZW4gYWRkaW5nLCBkZWZhdWx0IGlzIC0tbG9jYWwgYW5kIC0tZGl2ZXJ0IDxvcmlnaW5hbD4uZGlzdHJpYi5cbiIKKyJXaGVuIHJlbW92aW5nLCAtLXBhY2thZ2Ugb3IgLS1sb2NhbCBhbmQgLS1kaXZlcnQgbXVzdCBtYXRjaCBpZiBzcGVjaWZpZWQuXG4iCisiUGFja2FnZSBwcmVpbnN0L3Bvc3RybSBzY3JpcHRzIHNob3VsZCBhbHdheXMgc3BlY2lmeSAtLXBhY2thZ2UgYW5kIC0tIgorImRpdmVydC5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MTY4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJlcnJvciBjaGVja2luZyBgJXMnOiAlcyIKK21zZ2lkICJlcnJvciBjaGVja2luZyAnJXMnIgorbXNnc3RyICJ2aWdhIGAlcycga29udHJvbGxpbWlzZWw6ICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjAzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJyZW5hbWUgaW52b2x2ZXMgb3ZlcndyaXRpbmcgYCVzJyB3aXRoXG4iCisiICBkaWZmZXJlbnQgZmlsZSBgJXMnLCBub3QgYWxsb3dlZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjIzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzczCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGZpbGUgJyVzJyIKK21zZ3N0ciAibMOkaHRlZmFpbGkgYCUuMjUwcycgcG9sZSB2w7VpbWFsaWsgYXZhZGEiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyMjcKK21zZ2lkICJmaWxlIGNvcHkiCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjIzOQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAicmVuYW1lOiByZW5hbWUgYCVzJyB0byBgJXMnOiAlcyIKK21zZ2lkICJjYW5ub3QgcmVuYW1lICclcycgdG8gJyVzJyIKK21zZ3N0ciAiw7xtYmVybmltZXRhbWluZTogYCVzJyDDvG1iZXJuaW1ldGFtaW5lIG5pbWVnYSBgJXMnOiAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjI1MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAicmVuYW1lOiByZW1vdmUgZHVwbGljYXRlIG9sZCBsaW5rIGAlcyc6ICVzIgorbXNnaWQgInJlbmFtZTogcmVtb3ZlIGR1cGxpY2F0ZSBvbGQgbGluayAnJXMnIgorbXNnc3RyICLDvG1iZXJuaW1ldGFtaW5lOiBrb3JkdXZhIHZhbmEgdmlpZGEgYCVzJyBlZW1hbGRhbWluZTogJXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyNjIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byBvcGVuIHNvdXJjZSBmaWxlIGAlLjI1MHMnIgorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgY29waWVkIHNvdXJjZSBmaWxlICclcyciCittc2dzdHIgImzDpGh0ZWZhaWxpIGAlLjI1MHMnIHBvbGUgdsO1aW1hbGlrIGF2YWRhIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mjg0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJsb2NhbCBkaXZlcnNpb24gb2YgJXMiCittc2dzdHIgImtvaGFsaWsgw7xtYmVyc3V1bmFtaW5lIGZhaWxpbGU6ICVzXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyODYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImxvY2FsIGRpdmVyc2lvbiBvZiAlcyB0byAlcyIKK21zZ3N0ciAia29oYWxpayDDvG1iZXJzdXVuYW1pbmUgZmFpbGlsZTogJXNcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjI5MAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJzaW9uIG9mICVzIGJ5ICVzIgorbXNnc3RyICJwYWtpICVzIGRpdmVyc2lvb25pZCIKKworIzogc3JjL2RpdmVydGNtZC5jOjI5MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJzaW9uIG9mICVzIHRvICVzIGJ5ICVzIgorbXNnc3RyICJwYWtpICVzIGRpdmVyc2lvb25pZCIKKworIzogc3JjL2RpdmVydGNtZC5jOjMwOQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiYW55IGRpdmVyc2lvbiBvZiAlcyIKK21zZ3N0ciAia29oYWxpayDDvG1iZXJzdXVuYW1pbmUgZmFpbGlsZTogJXNcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjMxMQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiYW55IGRpdmVyc2lvbiBvZiAlcyB0byAlcyIKK21zZ3N0ciAicGFraSAlcyBkaXZlcnNpb29uaWQiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozNTcKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImNhbm5vdCBvcGVuIEdQTCBmaWxlIgorbXNnaWQgImNhbm5vdCBjcmVhdGUgbmV3ICVzIGZpbGUiCittc2dzdHIgIkdQTC1mYWlsaSBwb2xlIHbDtWltYWxpayBhdmFkYSIKKworIzogc3JjL2RpdmVydGNtZC5jOjM3NSBzcmMvc3RhdGNtZC5jOjIxNSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTQwNAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIGZpbGUgJyVzJyIKK21zZ3N0ciAidMO1cmdlIHB1aHZyaXRlIHTDvGhqZW5kYW1pc2VsIGZ1bmt0c2lvb25pcyB2c25wcmludGYiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozODIKKyMsIGZ1enp5Cittc2dpZCAiZXJyb3IgcmVtb3Zpbmcgb2xkIGRpdmVyc2lvbnMtb2xkIgorbXNnc3RyICJ2aWdhIHNlYWRpc3R1c2ZhaWxpIGAlLjI1NXMnIGx1Z2VtaXNlbCIKKworIzogc3JjL2RpdmVydGNtZC5jOjM4NAorIywgZnV6enkKK21zZ2lkICJlcnJvciBjcmVhdGluZyBuZXcgZGl2ZXJzaW9ucy1vbGQiCittc2dzdHIgInZpZ2Egc2VhZGlzdHVzZmFpbGkgYCUuMjU1cycgbHVnZW1pc2VsIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mzg2CisjLCBmdXp6eQorbXNnaWQgImVycm9yIGluc3RhbGxpbmcgbmV3IGRpdmVyc2lvbnMiCittc2dzdHIgInZpZ2Egc2VhZGlzdHVzZmFpbGkgYCUuMjU1cycgbHVnZW1pc2VsIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDA2IHNyYy9kaXZlcnRjbWQuYzo1MDMgc3JjL2RpdmVydGNtZC5jOjYxMAorIzogc3JjL2RpdmVydGNtZC5jOjYzMCBzcmMvc3RhdGNtZC5jOjI5MAorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGEgc2luZ2xlIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIHZhamFiIGFpbnVsdCDDvGh0ZSBhcmd1bWVudGkiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MDkgc3JjL2RpdmVydGNtZC5jOjQzMAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlbmFtZSBcIiVzXCIgaXMgbm90IGFic29sdXRlIgorbXNnc3RyICJmYWlsaW5pbWkgXCIlc1wiIHBvbGUgYWJzb2x1dXRuZSIKKworIzogc3JjL2RpdmVydGNtZC5jOjQxMSBzcmMvc3RhdGNtZC5jOjI0OQorbXNnaWQgImZpbGUgbWF5IG5vdCBjb250YWluIG5ld2xpbmVzIgorbXNnc3RyICJmYWlsIGVpIHRvaGkgc2lzYWxkYWRhIHJlYXZhaGV0dXNpIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDE4Cittc2dpZCAiQ2Fubm90IGRpdmVydCBkaXJlY3RvcmllcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDMzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgZGl2ZXJ0IGZpbGUgJyVzJyB0byBpdHNlbGYiCittc2dzdHIgImZhaWxpIGAlLjI1MHMnIHBvbGUgdsO1aW1hbGlrIGVlbWFsZGFkYSIKKworIzogc3JjL2RpdmVydGNtZC5jOjQ1MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiTGVhdmluZyBgJXMnIgorbXNnaWQgIkxlYXZpbmcgJyVzJ1xuIgorbXNnc3RyICJEaXZlcnNpb29uIGAlcycgasOkZXRha3NlIHB1dXR1bWF0YSIKKworIzogc3JjL2RpdmVydGNtZC5jOjQ1OAorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGNsYXNoZXMgd2l0aCBgJXMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0ODEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIkFkZGluZyBgJXMnIgorbXNnaWQgIkFkZGluZyAnJXMnXG4iCittc2dzdHIgIkRpdmVyc2lvb25pIGAlcycgbGlzYW1pbmUiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MTAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIk5vIGRpdmVyc2lvbiBgJXMnLCBub25lIHJlbW92ZWQiCittc2dpZCAiTm8gZGl2ZXJzaW9uICclcycsIG5vbmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiUHV1ZHViIGRpdmVyc2lvb24gYCVzJywgbWlkYWdpIGVpIGVlbWFsZGF0dWQiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm1pc21hdGNoIG9uIGRpdmVydC10b1xuIgorIiAgd2hlbiByZW1vdmluZyBgJXMnXG4iCisiICBmb3VuZCBgJXMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm1pc21hdGNoIG9uIHBhY2thZ2VcbiIKKyIgIHdoZW4gcmVtb3ZpbmcgYCVzJ1xuIgorIiAgZm91bmQgYCVzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTM5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJSZW1vdmluZyBgJXMnIgorbXNnaWQgIlJlbW92aW5nICclcydcbiIKK21zZ3N0ciAiRGl2ZXJzaW9vbmkgYCVzJyBlZW1hbGRhbWluZSIKKworIzogc3JjL2RpdmVydGNtZC5jOjY1NworbXNnaWQgInBhY2thZ2UgbWF5IG5vdCBjb250YWluIG5ld2xpbmVzIgorbXNnc3RyICJwYWtrIGVpIHRvaGkgc2lzYWxkYWRhIHJlYXZhaGV0dXNpIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjY2Cittc2dpZCAiZGl2ZXJ0LXRvIG1heSBub3QgY29udGFpbiBuZXdsaW5lcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzo2NAorbXNnaWQgImZhaWxlZCB0byBvcGVuIGRpdmVyc2lvbnMgZmlsZSIKK21zZ3N0ciAidMO1cmdlIGRpdmVyc2lvb25pZmFpbGkgYXZhbWlzZWwiCisKKyM6IHNyYy9kaXZlcnRkYi5jOjcxCittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IHByZXZpb3VzIGRpdmVyc2lvbnMgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzo3MworbXNnaWQgImZhaWxlZCB0byBmc3RhdCBkaXZlcnNpb25zIGZpbGUiCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGRiLmM6MTEzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZsaWN0aW5nIGRpdmVyc2lvbnMgaW52b2x2aW5nIGAlLjI1MHMnIG9yIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6NzMKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgaW4gYSBtZXNzIGR1ZSB0byBzZXJpb3VzIHByb2JsZW1zIGR1cmluZ1xuIgorImluc3RhbGxhdGlvbi4gIFRoZXkgbXVzdCBiZSByZWluc3RhbGxlZCBmb3IgdGhlbSAoYW5kIGFueSBwYWNrYWdlc1xuIgorInRoYXQgZGVwZW5kIG9uIHRoZW0pIHRvIGZ1bmN0aW9uIHByb3Blcmx5OlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6ODAKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBoYXZlIGJlZW4gdW5wYWNrZWQgYnV0IG5vdCB5ZXQgY29uZmlndXJlZC5cbiIKKyJUaGV5IG11c3QgYmUgY29uZmlndXJlZCB1c2luZyBkcGtnIC0tY29uZmlndXJlIG9yIHRoZSBjb25maWd1cmVcbiIKKyJtZW51IG9wdGlvbiBpbiBkc2VsZWN0IGZvciB0aGVtIHRvIHdvcms6XG4iCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzo4NworbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBvbmx5IGhhbGYgY29uZmlndXJlZCwgcHJvYmFibHkgZHVlIHRvIHByb2JsZW1zXG4iCisiY29uZmlndXJpbmcgdGhlbSB0aGUgZmlyc3QgdGltZS4gIFRoZSBjb25maWd1cmF0aW9uIHNob3VsZCBiZSByZXRyaWVkIHVzaW5nXG4iCisiZHBrZyAtLWNvbmZpZ3VyZSA8cGFja2FnZT4gb3IgdGhlIGNvbmZpZ3VyZSBtZW51IG9wdGlvbiBpbiBkc2VsZWN0OlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6OTQKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgb25seSBoYWxmIGluc3RhbGxlZCwgZHVlIHRvIHByb2JsZW1zIGR1cmluZ1xuIgorImluc3RhbGxhdGlvbi4gIFRoZSBpbnN0YWxsYXRpb24gY2FuIHByb2JhYmx5IGJlIGNvbXBsZXRlZCBieSByZXRyeWluZyBpdDtcbiIKKyJ0aGUgcGFja2FnZXMgY2FuIGJlIHJlbW92ZWQgdXNpbmcgZHNlbGVjdCBvciBkcGtnIC0tcmVtb3ZlOlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTAxCittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgYXJlIGF3YWl0aW5nIHByb2Nlc3Npbmcgb2YgdHJpZ2dlcnMgdGhhdCB0aGV5XG4iCisiaGF2ZSBhY3RpdmF0ZWQgaW4gb3RoZXIgcGFja2FnZXMuICBUaGlzIHByb2Nlc3NpbmcgY2FuIGJlIHJlcXVlc3RlZCB1c2luZ1xuIgorImRzZWxlY3Qgb3IgZHBrZyAtLWNvbmZpZ3VyZSAtLXBlbmRpbmcgKG9yIGRwa2cgLS10cmlnZ2Vycy1vbmx5KTpcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZW5xdWlyeS5jOjEwOAorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGhhdmUgYmVlbiB0cmlnZ2VyZWQsIGJ1dCB0aGUgdHJpZ2dlciBwcm9jZXNzaW5nXG4iCisiaGFzIG5vdCB5ZXQgYmVlbiBkb25lLiAgVHJpZ2dlciBwcm9jZXNzaW5nIGNhbiBiZSByZXF1ZXN0ZWQgdXNpbmdcbiIKKyJkc2VsZWN0IG9yIGRwa2cgLS1jb25maWd1cmUgLS1wZW5kaW5nIChvciBkcGtnIC0tdHJpZ2dlcnMtb25seSk6XG4iCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzoxMzcgc3JjL2VucXVpcnkuYzoyMTEgc3JjL2VucXVpcnkuYzoyOTIgc3JjL2VucXVpcnkuYzozNzMKKyM6IHNyYy9lbnF1aXJ5LmM6NDYwIHNyYy9zZWxlY3QuYzo5OCBzcmMvc2VsZWN0LmM6MTY0IHNyYy90cmlnY21kLmM6MTk5CisjOiBzcmMvdXBkYXRlLmM6NDggc3JjL3VwZGF0ZS5jOjExMyBkcGtnLXNwbGl0L3F1ZXVlLmM6MjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgbm8gYXJndW1lbnRzIgorbXNnc3RyICItLSVzIGVpIHZhamEgYXJndW1lbnRlIgorCisjOiBzcmMvZW5xdWlyeS5jOjE1MgorbXNnaWQgIiIKKyJBbm90aGVyIHByb2Nlc3MgaGFzIGxvY2tlZCB0aGUgZGF0YWJhc2UgZm9yIHdyaXRpbmcsIGFuZCBtaWdodCBjdXJyZW50bHkgYmVcbiIKKyJtb2RpZnlpbmcgaXQsIHNvbWUgb2YgdGhlIGZvbGxvd2luZyBwcm9ibGVtcyBtaWdodCBqdXN0IGJlIGR1ZSB0byB0aGF0LlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTkxCisjLCBmdXp6eQorI3wgbXNnaWQgIjx1bmtub3duPiIKK21zZ2N0eHQgInNlY3Rpb24iCittc2dpZCAiPHVua25vd24+IgorbXNnc3RyICI8dHVuZG1hdHU+IgorCisjOiBzcmMvZW5xdWlyeS5jOjI1MQorIywgYy1mb3JtYXQKK21zZ2lkICIgJWQgaW4gJXM6ICIKK21zZ3N0ciAiIgorCisjOiBzcmMvZW5xdWlyeS5jOjI2NgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiICVkIHBhY2thZ2VzLCBmcm9tIHRoZSBmb2xsb3dpbmcgc2VjdGlvbnM6IgorbXNnaWQgIiAlZCBwYWNrYWdlLCBmcm9tIHRoZSBmb2xsb3dpbmcgc2VjdGlvbjoiCittc2dpZF9wbHVyYWwgIiAlZCBwYWNrYWdlcywgZnJvbSB0aGUgZm9sbG93aW5nIHNlY3Rpb25zOiIKK21zZ3N0clswXSAiICVkIHBha2tpIGrDpHJnbmV2YXRlc3Qgb3NhZGVzdDoiCittc2dzdHJbMV0gIiAlZCBwYWtraSBqw6RyZ25ldmF0ZXN0IG9zYWRlc3Q6IgorCisjOiBzcmMvZW5xdWlyeS5jOjMwNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVmVyc2lvbiBvZiBkcGtnIHdpdGggd29ya2luZyAlcyBzdXBwb3J0IG5vdCB5ZXQgY29uZmlndXJlZC5cbiIKKyIgUGxlYXNlIHVzZSAnZHBrZyAtLWNvbmZpZ3VyZSBkcGtnJywgYW5kIHRoZW4gdHJ5IGFnYWluLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzEwCisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2cgbm90IHJlY29yZGVkIGFzIGluc3RhbGxlZCwgY2Fubm90IGNoZWNrIGZvciAlcyBzdXBwb3J0IVxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzIxCittc2dpZCAiUHJlLURlcGVuZHMgZmllbGQiCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzozMjkKK21zZ2lkICJlcG9jaCIKK21zZ3N0ciAiIgorCisjOiBzcmMvZW5xdWlyeS5jOjMzNworbXNnaWQgImxvbmcgZmlsZW5hbWVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzQ2Cittc2dpZCAibXVsdGlwbGUgQ29uZmxpY3RzIGFuZCBSZXBsYWNlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZW5xdWlyeS5jOjQzNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogY2Fubm90IHNlZSBob3cgdG8gc2F0aXNmeSBwcmUtZGVwZW5kZW5jeTpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZW5xdWlyeS5jOjQzNQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc2F0aXNmeSBwcmUtZGVwZW5kZW5jaWVzIGZvciAlLjI1MHMgKHdhbnRlZCBkdWUgdG8gJS4yNTBzKSIKK21zZ3N0ciAiIgorCisjOiBzcmMvZW5xdWlyeS5jOjQ3MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAib2Jzb2xldGUgb3B0aW9uICctLSVzJywgcGxlYXNlIHVzZSAnLS0lcycgaW5zdGVhZC4iCittc2dzdHIgIkhvaWF0dXM6IGFlZ3VudWQgdsO1dGkgYC0tJXMnXG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6NTE5Cittc2dpZCAiIgorIi0tY29tcGFyZS12ZXJzaW9ucyB0YWtlcyB0aHJlZSBhcmd1bWVudHM6IDx2ZXJzaW9uPiA8cmVsYXRpb24+IDx2ZXJzaW9uPiIKK21zZ3N0ciAiLS1jb21wYXJlLXZlcnNpb25zIHZhamFiIGtvbG1lIGFyZ3VtZW50aTogPHZlcnNpb29uPiA8c3VoZT4gPHZlcnNpb29uPiIKKworIzogc3JjL2VucXVpcnkuYzo1MjQKK21zZ2lkICItLWNvbXBhcmUtdmVyc2lvbnMgYmFkIHJlbGF0aW9uIgorbXNnc3RyICItLWNvbXBhcmUtdmVyc2lvbnMgdmlnYW5lIHN1aGUiCisKKyM6IHNyYy9lbnF1aXJ5LmM6NTI5IHNyYy9lbnF1aXJ5LmM6NTMxIHNyYy9lbnF1aXJ5LmM6NTQwIHNyYy9lbnF1aXJ5LmM6NTQyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ2ZXJzaW9uICclcycgaGFzIGJhZCBzeW50YXg6ICVzIgorbXNnc3RyICJkcGtnOiB2ZXJzaW9vbiAnJXMnIG9uIHZpZ2FzZSBzw7xudGFrc2lnYTogJXNcbiIKKworIzogc3JjL2Vycm9ycy5jOjYwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogZXJyb3IgcHJvY2Vzc2luZyAlcyAoLS0lcyk6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKyIlczogdmlnYSBwYWtpICVzIHTDtsO2dGxlbWlzZWwgKC0tJXMpOlxuIgorIiAlc1xuIgorCisjOiBzcmMvZXJyb3JzLmM6NjgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJkcGtnOiBmYWlsZWQgdG8gYWxsb2NhdGUgbWVtb3J5IGZvciBuZXcgZW50cnkgaW4gbGlzdCBvZiBmYWlsZWQgcGFja2FnZXMuIgorbXNnaWQgIiIKKyIlczogZmFpbGVkIHRvIGFsbG9jYXRlIG1lbW9yeSBmb3IgbmV3IGVudHJ5IGluIGxpc3Qgb2YgZmFpbGVkIHBhY2thZ2VzOiAlcyIKK21zZ3N0ciAiZHBrZzogdMO1cmdlIG51cmp1bnVkIHBha2tpZGUgbmltZWtpcmphIHV1ZWxlIGtpcmplbGUgbcOkbHUgZXJhbGRhbWlzZWwuIgorCisjOiBzcmMvZXJyb3JzLmM6NzkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImRwa2c6IHRvbyBtYW55IGVycm9ycywgc3RvcHBpbmdcbiIKK21zZ2lkICIlczogdG9vIG1hbnkgZXJyb3JzLCBzdG9wcGluZ1xuIgorbXNnc3RyICJkcGtnOiBsaWlnYSBwYWxqdSB2aWd1LCBsw7VwZXRhbWluZVxuIgorCisjOiBzcmMvZXJyb3JzLmM6ODcKK21zZ2lkICJFcnJvcnMgd2VyZSBlbmNvdW50ZXJlZCB3aGlsZSBwcm9jZXNzaW5nOlxuIgorbXNnc3RyICJKw6RyZ25ldmF0ZSBwYWtraWRlIHTDtsO2dGxlbWlzZWwgdGVra2lzaWQgdmVhZDpcbiIKKworIzogc3JjL2Vycm9ycy5jOjk0Cittc2dpZCAiUHJvY2Vzc2luZyB3YXMgaGFsdGVkIGJlY2F1c2UgdGhlcmUgd2VyZSB0b28gbWFueSBlcnJvcnMuXG4iCittc2dzdHIgIlTDtsO2dGxlbWluZSBrYXRrZXN0YXRpIGxpaWdhIHN1dXJlIHZpZ2FkZSBodWxnYSB0w7V0dHUuXG4iCisKKyM6IHNyYy9lcnJvcnMuYzoxMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSAlcyB3YXMgb24gaG9sZCwgcHJvY2Vzc2luZyBpdCBhbnl3YXkgYXMgeW91IHJlcXVlc3RlZFxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9lcnJvcnMuYzoxMDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlBhY2thZ2UgJXMgaXMgb24gaG9sZCwgbm90IHRvdWNoaW5nIGl0LiAgVXNlIC0tZm9yY2UtaG9sZCB0byBvdmVycmlkZS5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZXJyb3JzLmM6MTE5Cittc2dpZCAib3ZlcnJpZGluZyBwcm9ibGVtIGJlY2F1c2UgLS1mb3JjZSBlbmFibGVkOiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZmlsZXNkYi5jOjMwNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcyciCittc2dzdHIgInBha2kgYCUuMjUwcycgZmFpbGlkZSBuaW1la2lyamEgcG9sZSB2w7VpbWFsaWsgYXZhZGEiCisKKyM6IHNyYy9maWxlc2RiLmM6MzExCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlIGAlLjI1MHMnIG1pc3NpbmcsIGFzc3VtaW5nIHBhY2thZ2UgaGFzIG5vIGZpbGVzICIKKyJjdXJyZW50bHkgaW5zdGFsbGVkLiIKK21zZ3N0ciAiIgorImRwa2c6IHTDtXNpbmUgaG9pYXR1czogcGFraWwgYCUuMjUwcycgcHV1ZHViIGZhaWxpZGUgbmltZWtpcmksIG9sZXRhdGF2YWx0ICIKKyJwb2xlIHBha2lsIHByYWVndSDDvGh0ZWdpIGZhaWxpIHBhaWdhbGRhdHVkLlxuIgorCisjOiBzcmMvZmlsZXNkYi5jOjMyMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICclLjI1MHMnIgorbXNnc3RyICJwYWtpIGAlLjI1MHMnIGZhaWxpZGUgbmltZWtpcmphIHBvbGUgdsO1aW1hbGlrIGF2YWRhIgorCisjOiBzcmMvZmlsZXNkYi5jOjMzMAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZXMgbGlzdCBmb3IgcGFja2FnZSBgJS4yNTBzJyIKK21zZ2lkICJyZWFkaW5nIGZpbGVzIGxpc3QgZm9yIHBhY2thZ2UgJyUuMjUwcyciCittc2dzdHIgInBha2kgYCUuMjUwcycgZmFpbGlkZSBuaW1la2lyaSIKKworIzogc3JjL2ZpbGVzZGIuYzozMzYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAnJS4yNTBzJyBpcyBtaXNzaW5nIGZpbmFsIG5ld2xpbmUiCittc2dzdHIgInBha2kgYCUuMjUwcycgZmFpbGlkZSBuaW1la2lyaSBzaXNhbGRhYiB0w7xoamEgZmFpbGluaW1lIgorCisjOiBzcmMvZmlsZXNkYi5jOjM0NAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcycgY29udGFpbnMgZW1wdHkgZmlsZW5hbWUiCittc2dzdHIgInBha2kgYCUuMjUwcycgZmFpbGlkZSBuaW1la2lyaSBzaXNhbGRhYiB0w7xoamEgZmFpbGluaW1lIgorCisjOiBzcmMvZmlsZXNkYi5jOjM1MgorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSBgJS4yNTBzJyIKK21zZ3N0ciAidmlnYSBwYWtpIGAlLjI1MHMnIGZhaWxpZGUgbmltZWtpcmphIHN1bGdlbWlzZWwiCisKKyM6IHNyYy9maWxlc2RiLmM6NDYyCittc2dpZCAiKFJlYWRpbmcgZGF0YWJhc2UgLi4uICIKK21zZ3N0ciAiKEFuZG1lYmFhc2kgbHVnZW1pbmUgLi4uICIKKworIzogc3JjL2ZpbGVzZGIuYzo0ODMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiVkIGZpbGVzIGFuZCBkaXJlY3RvcmllcyBjdXJyZW50bHkgaW5zdGFsbGVkLilcbiIKK21zZ2lkICIlZCBmaWxlIG9yIGRpcmVjdG9yeSBjdXJyZW50bHkgaW5zdGFsbGVkLilcbiIKK21zZ2lkX3BsdXJhbCAiJWQgZmlsZXMgYW5kIGRpcmVjdG9yaWVzIGN1cnJlbnRseSBpbnN0YWxsZWQuKVxuIgorbXNnc3RyWzBdICJoZXRrZWwgb24gcGFpZ2FsZGF0dWQgJWQgZmFpbGkgamEga2F0YWxvb2dpLilcbiIKK21zZ3N0clsxXSAiaGV0a2VsIG9uIHBhaWdhbGRhdHVkICVkIGZhaWxpIGphIGthdGFsb29naS4pXG4iCisKKyM6IHNyYy9maWxlc2RiLmM6NTE2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIiIKKworIzogc3JjL2ZpbGVzZGIuYzo1MjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIHRvIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9maWxlc2RiLmM6NTI4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBmbHVzaCB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZmlsZXNkYi5jOjUzMAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gc3luYyB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZmlsZXNkYi5jOjUzMworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2xvc2UgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIiIKKworIzogc3JjL2ZpbGVzZGIuYzo1MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGluc3RhbGwgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIiIKKworIzogc3JjL2hlbHAuYzo0OAorbXNnaWQgIm5vdCBpbnN0YWxsZWQiCittc2dzdHIgIiIKKworIzogc3JjL2hlbHAuYzo0OQorbXNnaWQgIm5vdCBpbnN0YWxsZWQgYnV0IGNvbmZpZ3MgcmVtYWluIgorbXNnc3RyICIiCisKKyM6IHNyYy9oZWxwLmM6NTAKK21zZ2lkICJicm9rZW4gZHVlIHRvIGZhaWxlZCByZW1vdmFsIG9yIGluc3RhbGxhdGlvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvaGVscC5jOjUxCittc2dpZCAidW5wYWNrZWQgYnV0IG5vdCBjb25maWd1cmVkIgorbXNnc3RyICIiCisKKyM6IHNyYy9oZWxwLmM6NTIKK21zZ2lkICJicm9rZW4gZHVlIHRvIHBvc3RpbnN0IGZhaWx1cmUiCittc2dzdHIgIiIKKworIzogc3JjL2hlbHAuYzo1MworbXNnaWQgImF3YWl0aW5nIHRyaWdnZXIgcHJvY2Vzc2luZyBieSBhbm90aGVyIHBhY2thZ2UiCittc2dzdHIgIiIKKworIzogc3JjL2hlbHAuYzo1NAorbXNnaWQgInRyaWdnZXJlZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvaGVscC5jOjU1Cittc2dpZCAiaW5zdGFsbGVkIgorbXNnc3RyICJwYWlnYWxkYXR1ZCIKKworIzogc3JjL2hlbHAuYzoxMDcKK21zZ2lkICJQQVRIIGlzIG5vdCBzZXQuIgorbXNnc3RyICIiCisKKyM6IHNyYy9oZWxwLmM6MTI5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICInJXMnIG5vdCBmb3VuZCBpbiBQQVRIIG9yIG5vdCBleGVjdXRhYmxlLiIKK21zZ3N0ciAiZHBrZzogJXMgZWkgbGVpdHVkLlxuIgorCisjOiBzcmMvaGVscC5jOjEzOAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIiVkIGV4cGVjdGVkIHByb2dyYW0gbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuXG4iCisiJXMiCittc2dpZF9wbHVyYWwgIiIKKyIlZCBleHBlY3RlZCBwcm9ncmFtcyBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS5cbiIKKyIlcyIKK21zZ3N0clswXSAiZHBrZzogJXMgZWkgbGVpdHVkLlxuIgorbXNnc3RyWzFdICJkcGtnOiAlcyBlaSBsZWl0dWQuXG4iCisKKyM6IHNyYy9oZWxwLmM6MTQxCittc2dpZCAiIgorIk5vdGU6IHJvb3QncyBQQVRIIHNob3VsZCB1c3VhbGx5IGNvbnRhaW4gL3Vzci9sb2NhbC9zYmluLCAvdXNyL3NiaW4gYW5kIC8iCisic2Jpbi4iCittc2dzdHIgIiIKKworIzogc3JjL2hlbHAuYzoxODgKK21zZ2lkICJhZG1pbmRpciBtdXN0IGJlIGluc2lkZSBpbnN0ZGlyIGZvciBkcGtnIHRvIHdvcmsgcHJvcGVybHkiCittc2dzdHIgIiIKKworIzogc3JjL2hlbHAuYzoxOTAgc3JjL21haW4uYzo3NDcKKyMsIGZ1enp5Cittc2dpZCAidW5hYmxlIHRvIHNldGVudiBmb3Igc3VicHJvY2Vzc2VzIgorbXNnc3RyICJmYWlsaSAlcyBwb2xlIHbDtWltYWxpayBraXJqdXRhbWlzZWtzIGF2YWRhOiAlcyIKKworIzogc3JjL2hlbHAuYzoxOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNocm9vdCB0byBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvaGVscC5jOjE5NCBkcGtnLWRlYi9idWlsZC5jOjQ1NSBkcGtnLWRlYi9idWlsZC5jOjQ1NworIzogZHBrZy1kZWIvYnVpbGQuYzo1MzYgZHBrZy1kZWIvYnVpbGQuYzo1NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIGAlLjI1NXMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9oZWxwLmM6MjU2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgZXhlY3V0ZSBwZXJtaXNzaW9ucyBvbiBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvaGVscC5jOjI3NgorIywgZnV6enkKK21zZ2lkICJ1bmFibGUgdG8gc2V0ZW52IGZvciBtYWludGFpbmVyIHNjcmlwdCIKK21zZ3N0ciAiZmFpbGkgJXMgcG9sZSB2w7VpbWFsaWsga2lyanV0YW1pc2VrcyBhdmFkYTogJXMiCisKKyM6IHNyYy9oZWxwLmM6MzAwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJpbnN0YWxsZWQgJXMgc2NyaXB0IgorbXNnc3RyICJ2YW5hICVzIHNrcmlwdCIKKworIzogc3JjL2hlbHAuYzozMTMgc3JjL2hlbHAuYzozODIgc3JjL2hlbHAuYzo0NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgJXMgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogc3JjL2hlbHAuYzozNjggc3JjL2hlbHAuYzo0MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAibmV3ICVzIHNjcmlwdCIKK21zZ3N0ciAidXVzICVzIHNrcmlwdCIKKworIzogc3JjL2hlbHAuYzo0MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAib2xkICVzIHNjcmlwdCIKK21zZ3N0ciAidmFuYSAlcyBza3JpcHQiCisKKyM6IHNyYy9oZWxwLmM6NDE2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCAlcyAnJS4yNTBzJzogJXMiCittc2dzdHIgImZhaWxpICVzIHBvbGUgdsO1aW1hbGlrIGFzdWtvaGFsZSAlcyBwYWlnYWxkYWRhOiAlcyIKKworIzogc3JjL2hlbHAuYzo0MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZyAtIHRyeWluZyBzY3JpcHQgZnJvbSB0aGUgbmV3IHBhY2thZ2UgaW5zdGVhZCAuLi5cbiIKK21zZ3N0ciAiZHBrZyAtIHNlbGxlIGFzZW1lbCBwcm9vdml0YWtzZSB1dWUgcGFraSBza3JpcHRpIC4uLlxuIgorCisjOiBzcmMvaGVscC5jOjQzOQorbXNnaWQgInRoZXJlIGlzIG5vIHNjcmlwdCBpbiB0aGUgbmV3IHZlcnNpb24gb2YgdGhlIHBhY2thZ2UgLSBnaXZpbmcgdXAiCittc2dzdHIgInBha2kgdXVlcyB2ZXJzaW9vbmlzIHBvbGUgc2tyaXB0aSAtIHJvaGtlbSBlaSBwcm9vdml0YSBtaWRhZ2kiCisKKyM6IHNyYy9oZWxwLmM6NDQ1CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IC4uLiBpdCBsb29rcyBsaWtlIHRoYXQgd2VudCBPSy5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvaGVscC5jOjYxNgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNlY3VyZWx5IHJlbW92ZSAnJS4yNTVzJyIKK21zZ3N0ciAiZmFpbGkgYCUuMjU1cycgcG9sZSB2w7VpbWFsaWsgbHV1YSIKKworIzogc3JjL2hlbHAuYzo2MjEgZHBrZy1kZWIvaW5mby5jOjY1IGRwa2ctZGViL2luZm8uYzo2NworbXNnaWQgInJtIGNvbW1hbmQgZm9yIGNsZWFudXAiCittc2dzdHIgIiIKKworIzogc3JjL2luZm9kYi5jOjUyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGVjayBleGlzdGVuY2Ugb2YgYCUuMjUwcyciCittc2dzdHIgImAlLjI1MHMnIG9sZW1hc29sdSBwb2xlIHbDtWltYWxpayBrb250cm9sbGlkYSIKKworIzogc3JjL2luZm9kYi5jOjcwCittc2dpZCAiY2Fubm90IHJlYWQgaW5mbyBkaXJlY3RvcnkiCittc2dzdHIgImFuZG1la2F0YWxvb2dpIHBvbGUgdsO1aW1hbGlrIGx1Z2VkYSIKKworIzogc3JjL21haW4uYzo2MAorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIG1hbmFnZW1lbnQgcHJvZ3JhbSB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICJEZWJpYW5pIHBha2loYWxkdXNwcm9ncmFtbWkgYCVzJyB2ZXJzaW9vbiAlcy5cbiIKKworIzogc3JjL21haW4uYzo4NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtaXwtLWluc3RhbGwgICAgICAgPC5kZWIgZmlsZSBuYW1lPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyZWN0b3J5PiAuLi5cbiIKKyIgIC0tdW5wYWNrICAgICAgICAgICA8LmRlYiBmaWxlIG5hbWU+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXJlY3Rvcnk+IC4uLlxuIgorIiAgLUF8LS1yZWNvcmQtYXZhaWwgIDwuZGViIGZpbGUgbmFtZT4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRpcmVjdG9yeT4gLi4uXG4iCisiICAtLWNvbmZpZ3VyZSAgICAgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLS10cmlnZ2Vycy1vbmx5ICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC1yfC0tcmVtb3ZlICAgICAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtUHwtLXB1cmdlICAgICAgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLS1nZXQtc2VsZWN0aW9ucyBbPHBhdHRlcm4+IC4uLl0gR2V0IGxpc3Qgb2Ygc2VsZWN0aW9ucyB0byBzdGRvdXQuXG4iCisiICAtLXNldC1zZWxlY3Rpb25zICAgICAgICAgICAgICAgICBTZXQgcGFja2FnZSBzZWxlY3Rpb25zIGZyb20gc3RkaW4uXG4iCisiICAtLWNsZWFyLXNlbGVjdGlvbnMgICAgICAgICAgICAgICBEZXNlbGVjdCBldmVyeSBub24tZXNzZW50aWFsIHBhY2thZ2UuXG4iCisiICAtLXVwZGF0ZS1hdmFpbCA8UGFja2FnZXMtZmlsZT4gICBSZXBsYWNlIGF2YWlsYWJsZSBwYWNrYWdlcyBpbmZvLlxuIgorIiAgLS1tZXJnZS1hdmFpbCA8UGFja2FnZXMtZmlsZT4gICAgTWVyZ2Ugd2l0aCBpbmZvIGZyb20gZmlsZS5cbiIKKyIgIC0tY2xlYXItYXZhaWwgICAgICAgICAgICAgICAgICAgIEVyYXNlIGV4aXN0aW5nIGF2YWlsYWJsZSBpbmZvLlxuIgorIiAgLS1mb3JnZXQtb2xkLXVuYXZhaWwgICAgICAgICAgICAgRm9yZ2V0IHVuaW5zdGFsbGVkIHVuYXZhaWxhYmxlIHBrZ3MuXG4iCisiICAtc3wtLXN0YXR1cyA8cGFja2FnZT4gLi4uICAgICAgICBEaXNwbGF5IHBhY2thZ2Ugc3RhdHVzIGRldGFpbHMuXG4iCisiICAtcHwtLXByaW50LWF2YWlsIDxwYWNrYWdlPiAuLi4gICBEaXNwbGF5IGF2YWlsYWJsZSB2ZXJzaW9uIGRldGFpbHMuXG4iCisiICAtTHwtLWxpc3RmaWxlcyA8cGFja2FnZT4gLi4uICAgICBMaXN0IGZpbGVzIGBvd25lZCcgYnkgcGFja2FnZShzKS5cbiIKKyIgIC1sfC0tbGlzdCBbPHBhdHRlcm4+IC4uLl0gICAgICAgIExpc3QgcGFja2FnZXMgY29uY2lzZWx5LlxuIgorIiAgLVN8LS1zZWFyY2ggPHBhdHRlcm4+IC4uLiAgICAgICAgRmluZCBwYWNrYWdlKHMpIG93bmluZyBmaWxlKHMpLlxuIgorIiAgLUN8LS1hdWRpdCAgICAgICAgICAgICAgICAgICAgICAgQ2hlY2sgZm9yIGJyb2tlbiBwYWNrYWdlKHMpLlxuIgorIiAgLS1wcmludC1hcmNoaXRlY3R1cmUgICAgICAgICAgICAgUHJpbnQgZHBrZyBhcmNoaXRlY3R1cmUuXG4iCisiICAtLWNvbXBhcmUtdmVyc2lvbnMgPGE+IDxvcD4gPGI+ICBDb21wYXJlIHZlcnNpb24gbnVtYmVycyAtIHNlZSBiZWxvdy5cbiIKKyIgIC0tZm9yY2UtaGVscCAgICAgICAgICAgICAgICAgICAgIFNob3cgaGVscCBvbiBmb3JjaW5nLlxuIgorIiAgLURofC0tZGVidWc9aGVscCAgICAgICAgICAgICAgICAgU2hvdyBoZWxwIG9uIGRlYnVnZ2luZy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjExMyBzcmMvcXVlcnljbWQuYzo2MzEgc3JjL3RyaWdjbWQuYzo3NyBkcGtnLWRlYi9tYWluLmM6ODgKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjc3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiICAtaHwtLWhlbHAgICAgICAgICAgICAgICAgICAgICAgICBTaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICAgICAgICAgU2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIiAgLWh8LS1oZWxwICAgICAgICAgICAgICAgICAgICAgICAgS8OkZXNvbGV2YSBhYml0ZWFiZSBuw6RpdGFtaW5lLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICAgICAgICAgVmVyc2lvb25pIG7DpGl0YW1pbmUuXG4iCisiICAtLWxpY2Vuc2V8LS1saWNlbmNlICAgICAgICAgICAgICBMaXRzZW50c2l0aW5naW11c3RlIG7DpGl0YW1pbmUuXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTE4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJVc2UgZHBrZyAtYnwtLWJ1aWxkfC1jfC0tY29udGVudHN8LWV8LS1jb250cm9sfC1JfC0taW5mb3wtZnwtLWZpZWxkfFxuIgorIiAteHwtLWV4dHJhY3R8LVh8LS12ZXh0cmFjdHwtLWZzeXMtdGFyZmlsZSAgb24gYXJjaGl2ZXMgKHR5cGUgJXMgLS1oZWxwKS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIkFyaGlpdmlkZSBrb3JyYWwga2FzdXRhIGRwa2cgLWJ8LS1idWlsZHwtY3wtLWNvbnRlbnRzfC1lfC0tY29udHJvbHwtSXwtLSIKKyJpbmZvfFxuIgorIi1mfC0tZmllbGR8LXh8LS1leHRyYWN0fC1YfC0tdmV4dHJhY3R8LS1mc3lzLXRhcmZpbGUgIChzaXNlc3RhICVzIC0taGVscCkuXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTIzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJGb3IgaW50ZXJuYWwgdXNlOiBkcGtnIC0tYXNzZXJ0LXN1cHBvcnQtcHJlZGVwZW5kcyB8IC0tcHJlZGVwLXBhY2thZ2UgfFxuIgorIiAgLS1hc3NlcnQtd29ya2luZy1lcG9jaCB8IC0tYXNzZXJ0LWxvbmctZmlsZW5hbWVzIHwgLS1hc3NlcnQtbXVsdGktY29ucmVwLlxuIgorIlxuIgorbXNnc3RyICIiCisiU2lzZW1pc2VrcyBrYXN1dHVzZWtzOiBkcGtnIC0tYXNzZXJ0LXN1cHBvcnQtcHJlZGVwZW5kcyB8IC0tcHJlZGVwLXBhY2thZ2UgIgorInxcbiIKKyIgIC0tYXNzZXJ0LXdvcmtpbmctZXBvY2ggfCAtLWFzc2VydC1sb25nLWZpbGVuYW1lcyB8IC0tYXNzZXJ0LW11bHRpLWNvbnJlcC5cbiIKKyJcbiIKKworIzogc3JjL21haW4uYzoxMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyIgIC0tcm9vdD08ZGlyZWN0b3J5PiAgICAgICAgIEluc3RhbGwgb24gYSBkaWZmZXJlbnQgcm9vdCBkaXJlY3RvcnkuXG4iCisiICAtLWluc3RkaXI9PGRpcmVjdG9yeT4gICAgICBDaGFuZ2UgaW5zdGFsbGF0aW9uIGRpciB3aXRob3V0IGNoYW5naW5nIGFkbWluICIKKyJkaXIuXG4iCisiICAtLXBhdGgtZXhjbHVkZT08cGF0dGVybj4gICBEbyBub3QgaW5zdGFsbCBwYXRocyB3aGljaCBtYXRjaCBhIHNoZWxsICIKKyJwYXR0ZXJuLlxuIgorIiAgLS1wYXRoLWluY2x1ZGU9PHBhdHRlcm4+ICAgUmUtaW5jbHVkZSBhIHBhdHRlcm4gYWZ0ZXIgYSBwcmV2aW91cyAiCisiZXhjbHVzaW9uLlxuIgorIiAgLU98LS1zZWxlY3RlZC1vbmx5ICAgICAgICAgU2tpcCBwYWNrYWdlcyBub3Qgc2VsZWN0ZWQgZm9yIGluc3RhbGwvIgorInVwZ3JhZGUuXG4iCisiICAtRXwtLXNraXAtc2FtZS12ZXJzaW9uICAgICBTa2lwIHBhY2thZ2VzIHdob3NlIHNhbWUgdmVyc2lvbiBpcyBpbnN0YWxsZWQuXG4iCisiICAtR3wtLXJlZnVzZS1kb3duZ3JhZGUgICAgICBTa2lwIHBhY2thZ2VzIHdpdGggZWFybGllciB2ZXJzaW9uIHRoYW4gIgorImluc3RhbGxlZC5cbiIKKyIgIC1CfC0tYXV0by1kZWNvbmZpZ3VyZSAgICAgIEluc3RhbGwgZXZlbiBpZiBpdCB3b3VsZCBicmVhayBzb21lIG90aGVyICIKKyJwYWNrYWdlLlxuIgorIiAgLS1bbm8tXXRyaWdnZXJzICAgICAgICAgICAgU2tpcCBvciBmb3JjZSBjb25zZXF1ZW50aWFsIHRyaWdnZXIgIgorInByb2Nlc3NpbmcuXG4iCisiICAtLW5vLWRlYnNpZyAgICAgICAgICAgICAgICBEbyBub3QgdHJ5IHRvIHZlcmlmeSBwYWNrYWdlIHNpZ25hdHVyZXMuXG4iCisiICAtLW5vLWFjdHwtLWRyeS1ydW58LS1zaW11bGF0ZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSnVzdCBzYXkgd2hhdCB3ZSB3b3VsZCBkbyAtIGRvbid0IGRvIGl0LlxuIgorIiAgLUR8LS1kZWJ1Zz08b2N0YWw+ICAgICAgICAgRW5hYmxlIGRlYnVnZ2luZyAoc2VlIC1EaGVscCBvciAtLWRlYnVnPWhlbHApLlxuIgorIiAgLS1zdGF0dXMtZmQgPG4+ICAgICAgICAgICAgU2VuZCBzdGF0dXMgY2hhbmdlIHVwZGF0ZXMgdG8gZmlsZSBkZXNjcmlwdG9yICIKKyI8bj4uXG4iCisiICAtLWxvZz08ZmlsZW5hbWU+ICAgICAgICAgICBMb2cgc3RhdHVzIGNoYW5nZXMgYW5kIGFjdGlvbnMgdG8gPGZpbGVuYW1lPi5cbiIKKyIgIC0taWdub3JlLWRlcGVuZHM9PHBhY2thZ2U+LC4uLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSWdub3JlIGRlcGVuZGVuY2llcyBpbnZvbHZpbmcgPHBhY2thZ2U+LlxuIgorIiAgLS1mb3JjZS0uLi4gICAgICAgICAgICAgICAgT3ZlcnJpZGUgcHJvYmxlbXMgKHNlZSAtLWZvcmNlLWhlbHApLlxuIgorIiAgLS1uby1mb3JjZS0uLi58LS1yZWZ1c2UtLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9wIHdoZW4gcHJvYmxlbXMgZW5jb3VudGVyZWQuXG4iCisiICAtLWFib3J0LWFmdGVyIDxuPiAgICAgICAgICBBYm9ydCBhZnRlciBlbmNvdW50ZXJpbmcgPG4+IGVycm9ycy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjE1NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tcGFyaXNvbiBvcGVyYXRvcnMgZm9yIC0tY29tcGFyZS12ZXJzaW9ucyBhcmU6XG4iCisiICBsdCBsZSBlcSBuZSBnZSBndCAgICAgICAodHJlYXQgZW1wdHkgdmVyc2lvbiBhcyBlYXJsaWVyIHRoYW4gYW55ICIKKyJ2ZXJzaW9uKTtcbiIKKyIgIGx0LW5sIGxlLW5sIGdlLW5sIGd0LW5sICh0cmVhdCBlbXB0eSB2ZXJzaW9uIGFzIGxhdGVyIHRoYW4gYW55IHZlcnNpb24pO1xuIgorIiAgPCA8PCA8PSA9ID49ID4+ID4gICAgICAgKG9ubHkgZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBjb250cm9sIGZpbGUgIgorInN5bnRheCkuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoxNjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiVXNlIGBkc2VsZWN0JyBvciBgYXB0aXR1ZGUnIGZvciB1c2VyLWZyaWVuZGx5IHBhY2thZ2UgbWFuYWdlbWVudC5cbiIKK21zZ3N0ciAiIgorIkthc3V0YWphc8O1YnJhbGlrdSBwYWtpaGFsZHVzZSBqYW9rcyBrYXN1dGEgcHJvZ3JhbW1lIGBkc2VsZWN0JyB2w7VpICIKKyJgYXB0aXR1ZGUnLlxuIgorCisjOiBzcmMvbWFpbi5jOjE3MAorIywgZnV6enkKK21zZ2lkICIiCisiVHlwZSBkcGtnIC0taGVscCBmb3IgaGVscCBhYm91dCBpbnN0YWxsaW5nIGFuZCBkZWluc3RhbGxpbmcgcGFja2FnZXMgWypdO1xuIgorIlVzZSBgZHNlbGVjdCcgb3IgYGFwdGl0dWRlJyBmb3IgdXNlci1mcmllbmRseSBwYWNrYWdlIG1hbmFnZW1lbnQ7XG4iCisiVHlwZSBkcGtnIC1EaGVscCBmb3IgYSBsaXN0IG9mIGRwa2cgZGVidWcgZmxhZyB2YWx1ZXM7XG4iCisiVHlwZSBkcGtnIC0tZm9yY2UtaGVscCBmb3IgYSBsaXN0IG9mIGZvcmNpbmcgb3B0aW9ucztcbiIKKyJUeXBlIGRwa2ctZGViIC0taGVscCBmb3IgaGVscCBhYm91dCBtYW5pcHVsYXRpbmcgKi5kZWIgZmlsZXM7XG4iCisiXG4iCisiT3B0aW9ucyBtYXJrZWQgWypdIHByb2R1Y2UgYSBsb3Qgb2Ygb3V0cHV0IC0gcGlwZSBpdCB0aHJvdWdoIGBsZXNzJyBvciAiCisiYG1vcmUnICEiCittc2dzdHIgIiIKKyJQYWtraWRlIHBhaWdhbGRhbWlzZSBqYSBlZW1hbGRhbWlzZSBrb2h0YSB0ZWFiZSBzYWFtaXNla3Mgc2lzZXN0YVxuIgorIiAgZHBrZyAtLWhlbHAgWypdO1xuIgorIkthc3V0YWphc8O1YnJhbGlrdWtzIHBha2tpZGUgaGFsZGFtaXNla3Mga2FzdXRhIHByb2dyYW1tZSBgZHNlbGVjdCcgdsO1aVxuIgorIiAgYGFwdGl0dWRlJztcbiIKKyJkcGtnIHNpbHVtaXN2w7V0bWV0ZSBqYSBuZW5kZSB2w6TDpHJ0dXN0ZSB2YWF0YW1pc2VrcyBzaXNlc3RhIGRwa2cgLURoZWxwO1xuIgorIkrDtXVnYSBwZWFsZXN1cnV0YXZhdGUgdmFsaWt1dGUgdmFhdGFtaXNla3Mgc2lzZXN0YSBkcGtnIC0tZm9yY2UtaGVscDtcbiIKKyIqLmRlYiBmYWlsaWRlZ2EgbWFuaXB1bGVlcmltaXNlIGtvaHRhIGvDpGl2YSB0ZWFiZSB2YWF0YW1pc2VrcyBzaXNlc3RhXG4iCisiICBkcGtnLWRlYiAtLWhlbHA7XG4iCisiR2FyYW50aWkgcHV1ZHVtaXNlLCBwcm9ncmFtbWlkZSBsaXRzZW50c2kgKEdOVSBHUEwpIGphIGF1dG9yacO1aWd1c3RlXG4iCisiICB0ZWFiZSB2YWF0YW1pc2VrcyBzaXNlc3RhIGRwa2cgLS1saWNlbnNlIFsqXS5cbiIKKyJcbiIKKyJNw6RyZ2lnYSBbKl0gbcOkcmdpdHVkIHZhbGlrdWQgdsOkbGphc3RhdmFkIHbDpGdhIHBhbGp1IGluZm90IC0gc3V1bmEgbmVuZGVcbiIKKyIgIGvDpHNrdWRlIHbDpGxqdW5kIHByb2dyYW1taWRlbGUgYGxlc3MnIHbDtWkgYG1vcmUnICEiCisKKyM6IHNyYy9tYWluLmM6MjE5Cittc2dpZCAiU2V0IGFsbCBmb3JjZSBvcHRpb25zIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjIxCittc2dpZCAiUmVwbGFjZSBhIHBhY2thZ2Ugd2l0aCBhIGxvd2VyIHZlcnNpb24iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjMKK21zZ2lkICJDb25maWd1cmUgYW55IHBhY2thZ2Ugd2hpY2ggbWF5IGhlbHAgdGhpcyBvbmUiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjUKK21zZ2lkICJQcm9jZXNzIGluY2lkZW50YWwgcGFja2FnZXMgZXZlbiB3aGVuIG9uIGhvbGQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjcKK21zZ2lkICJUcnkgdG8gKGRlKWluc3RhbGwgdGhpbmdzIGV2ZW4gd2hlbiBub3Qgcm9vdCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIyOQorbXNnaWQgIlBBVEggaXMgbWlzc2luZyBpbXBvcnRhbnQgcHJvZ3JhbXMsIHByb2JsZW1zIGxpa2VseSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzMQorbXNnaWQgIkluc3RhbGwgYSBwYWNrYWdlIGV2ZW4gaWYgaXQgZmFpbHMgYXV0aGVudGljaXR5IGNoZWNrIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjMzCittc2dpZCAiUHJvY2VzcyBldmVuIHBhY2thZ2VzIHdpdGggd3JvbmcgdmVyc2lvbnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzUKK21zZ2lkICJPdmVyd3JpdGUgYSBmaWxlIGZyb20gb25lIHBhY2thZ2Ugd2l0aCBhbm90aGVyIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjM3Cittc2dpZCAiT3ZlcndyaXRlIGEgZGl2ZXJ0ZWQgZmlsZSB3aXRoIGFuIHVuZGl2ZXJ0ZWQgdmVyc2lvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzOQorbXNnaWQgIk92ZXJ3cml0ZSBvbmUgcGFja2FnZSdzIGRpcmVjdG9yeSB3aXRoIGFub3RoZXIncyBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjQxCittc2dpZCAiRG8gbm90IHBlcmZvcm0gc2FmZSBJL08gb3BlcmF0aW9ucyB3aGVuIHVucGFja2luZyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI0MworbXNnaWQgIkFsd2F5cyB1c2UgdGhlIG5ldyBjb25maWcgZmlsZXMsIGRvbid0IHByb21wdCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI0NQorbXNnaWQgIkFsd2F5cyB1c2UgdGhlIG9sZCBjb25maWcgZmlsZXMsIGRvbid0IHByb21wdCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI0OAorbXNnaWQgIiIKKyJVc2UgdGhlIGRlZmF1bHQgb3B0aW9uIGZvciBuZXcgY29uZmlnIGZpbGVzIGlmIG9uZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICBpcyBhdmFpbGFibGUsIGRvbid0IHByb21wdC4gSWYgbm8gZGVmYXVsdCBjYW4gYmUgIgorImZvdW5kLFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICB5b3Ugd2lsbCBiZSBwcm9tcHRlZCB1bmxlc3Mgb25lIG9mIHRoZSBjb25mb2xkIG9yXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmZuZXcgb3B0aW9ucyBpcyBhbHNvIGdpdmVuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjUzCittc2dpZCAiQWx3YXlzIGluc3RhbGwgbWlzc2luZyBjb25maWcgZmlsZXMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNTUKK21zZ2lkICJPZmZlciB0byByZXBsYWNlIGNvbmZpZyBmaWxlcyB3aXRoIG5vIG5ldyB2ZXJzaW9ucyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI1NworbXNnaWQgIlByb2Nlc3MgZXZlbiBwYWNrYWdlcyB3aXRoIHdyb25nIG9yIG5vIGFyY2hpdGVjdHVyZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI1OQorbXNnaWQgIkluc3RhbGwgZXZlbiBpZiBpdCB3b3VsZCBicmVhayBhbm90aGVyIHBhY2thZ2UiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNjEKK21zZ2lkICJBbGxvdyBpbnN0YWxsYXRpb24gb2YgY29uZmxpY3RpbmcgcGFja2FnZXMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNjMKKyMsIGZ1enp5CisjfCBtc2dpZCAiZGVwZW5kZW5jeSBwcm9ibGVtcyAtIG5vdCByZW1vdmluZyIKK21zZ2lkICJUdXJuIGFsbCBkZXBlbmRlbmN5IHByb2JsZW1zIGludG8gd2FybmluZ3MiCittc2dzdHIgInPDtWx0dXZ1c3Byb2JsZWVtaWQgLSBlaSBlZW1hbGRhdGEiCisKKyM6IHNyYy9tYWluLmM6MjY1CisjLCBmdXp6eQorI3wgbXNnaWQgImRlcGVuZGVuY3kgcHJvYmxlbXMgLSBub3QgcmVtb3ZpbmciCittc2dpZCAiVHVybiBkZXBlbmRlbmN5IHZlcnNpb24gcHJvYmxlbXMgaW50byB3YXJuaW5ncyIKK21zZ3N0ciAic8O1bHR1dnVzcHJvYmxlZW1pZCAtIGVpIGVlbWFsZGF0YSIKKworIzogc3JjL21haW4uYzoyNjcKK21zZ2lkICJSZW1vdmUgcGFja2FnZXMgd2hpY2ggcmVxdWlyZSBpbnN0YWxsYXRpb24iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNjkKK21zZ2lkICJSZW1vdmUgYW4gZXNzZW50aWFsIHBhY2thZ2UiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODEKK21zZ2lkICJHZW5lcmFsbHkgaGVscGZ1bCBwcm9ncmVzcyBpbmZvcm1hdGlvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4MgorIywgZnV6enkKK21zZ2lkICJJbnZvY2F0aW9uIGFuZCBzdGF0dXMgb2YgbWFpbnRhaW5lciBzY3JpcHRzIgorbXNnc3RyICJmYWlsaSAlcyBwb2xlIHbDtWltYWxpayBraXJqdXRhbWlzZWtzIGF2YWRhOiAlcyIKKworIzogc3JjL21haW4uYzoyODMKK21zZ2lkICJPdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODQKK21zZ2lkICJMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4NQorIywgZnV6enkKKyN8IG1zZ2lkICJyZWFkIGVycm9yIGluIGNvbmZpZ3VyYXRpb24gZmlsZSBgJS4yNTVzJyIKK21zZ2lkICJPdXRwdXQgZm9yIGVhY2ggY29uZmlndXJhdGlvbiBmaWxlIgorbXNnc3RyICJ2aWdhIHNlYWRpc3R1c2ZhaWxpIGAlLjI1NXMnIGx1Z2VtaXNlbCIKKworIzogc3JjL21haW4uYzoyODYKK21zZ2lkICJMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGUiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODcKK21zZ2lkICJEZXBlbmRlbmNpZXMgYW5kIGNvbmZsaWN0cyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4OAorbXNnaWQgIkxvdHMgb2YgZGVwZW5kZW5jaWVzL2NvbmZsaWN0cyBvdXRwdXQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODkKK21zZ2lkICJUcmlnZ2VyIGFjdGl2YXRpb24gYW5kIHByb2Nlc3NpbmciCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyOTAKK21zZ2lkICJMb3RzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyOTEKK21zZ2lkICJTaWxseSBhbW91bnRzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyOTIKK21zZ2lkICJMb3RzIG9mIGRyaXZlbCBhYm91dCBlZyB0aGUgZHBrZy9pbmZvIGRpcmVjdG9yeSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MworbXNnaWQgIkluc2FuZSBhbW91bnRzIG9mIGRyaXZlbCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjMwNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXMgZGVidWdnaW5nIG9wdGlvbiwgLS1kZWJ1Zz08b2N0YWw+IG9yIC1EPG9jdGFsPjpcbiIKKyJcbiIKKyIgTnVtYmVyICBSZWYuIGluIHNvdXJjZSAgIERlc2NyaXB0aW9uXG4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzozMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIkRlYnVnZ2luZyBvcHRpb25zIGNhbiBiZSBtaXhlZCB1c2luZyBiaXR3aXNlLW9yLlxuIgorIk5vdGUgdGhhdCB0aGUgbWVhbmluZ3MgYW5kIHZhbHVlcyBhcmUgc3ViamVjdCB0byBjaGFuZ2UuXG4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzozMTkKK21zZ2lkICItLWRlYnVnIHJlcXVpcmVzIGFuIG9jdGFsIGFyZ3VtZW50IgorbXNnc3RyICItLWRlYnVnIHbDtXRtZWwgcGVhYiBvbGVtYSBrYWhla3NhbmRzw7xzdGVlbWkgYXJndW1lbnQiCisKKyM6IHNyYy9tYWluLmM6MzQ4CisjLCBjLWZvcm1hdAorbXNnaWQgIm51bGwgcGFja2FnZSBuYW1lIGluIC0taWdub3JlLWRlcGVuZHMgY29tbWEtc2VwYXJhdGVkIGxpc3QgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzozNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS1pZ25vcmUtZGVwZW5kcyByZXF1aXJlcyBhIGxlZ2FsIHBhY2thZ2UgbmFtZS4gYCUuMjUwcycgaXMgbm90OyAlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjM3MSBzcmMvbWFpbi5jOjM4MSBzcmMvbWFpbi5jOjY0OSBkcGtnLXNwbGl0L21haW4uYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBpbnRlZ2VyIGZvciAtLSVzOiBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjQzOAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBleGVjdXRpbmcgaG9vayAnJXMnLCBleGl0IGNvZGUgJWQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzo0NjUKK21zZ2lkICJzdGF0dXMgbG9nZ2VyIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6NDgwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlcyBmb3JjaW5nIG9wdGlvbnMgLSBjb250cm9sIGJlaGF2aW91ciB3aGVuIHByb2JsZW1zIGZvdW5kOlxuIgorIiAgd2FybiBidXQgY29udGludWU6ICAtLWZvcmNlLTx0aGluZz4sPHRoaW5nPiwuLi5cbiIKKyIgIHN0b3Agd2l0aCBlcnJvcjogICAgLS1yZWZ1c2UtPHRoaW5nPiw8dGhpbmc+LC4uLiB8IC0tbm8tZm9yY2UtPHRoaW5nPiwuLi5cbiIKKyIgRm9yY2luZyB0aGluZ3M6XG4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzo0OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIldBUk5JTkcgLSB1c2Ugb2Ygb3B0aW9ucyBtYXJrZWQgWyFdIGNhbiBzZXJpb3VzbHkgZGFtYWdlIHlvdXIgaW5zdGFsbGF0aW9uLlxuIgorIkZvcmNpbmcgb3B0aW9ucyBtYXJrZWQgWypdIGFyZSBlbmFibGVkIGJ5IGRlZmF1bHQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzo1MDQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBmb3JjZS9yZWZ1c2Ugb3B0aW9uIGAlLipzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjUxMworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAib2Jzb2xldGUgZm9yY2UvcmVmdXNlIG9wdGlvbiAnJXMnXG4iCittc2dzdHIgIkhvaWF0dXM6IGFlZ3VudWQgdsO1dGkgYC0tJXMnXG4iCisKKyM6IHNyYy9tYWluLmM6NjQzCittc2dpZCAiLS1jb21tYW5kLWZkIHRha2VzIG9uZSBhcmd1bWVudCwgbm90IHplcm8iCittc2dzdHIgIi0tY29tbWFuZC1mZCB2YWphYiDDvGh0ZSBhcmd1bWVudGksIG1pcyBwb2xlIG51bGwiCisKKyM6IHNyYy9tYWluLmM6NjQ1Cittc2dpZCAiLS1jb21tYW5kLWZkIG9ubHkgdGFrZXMgb25lIGFyZ3VtZW50IgorbXNnc3RyICItLWNvbW1hbmQtZmQgdmFqYWIgYWludWx0IMO8aHRlIGFyZ3VtZW50aSIKKworIzogc3JjL21haW4uYzo2NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGRuJ3Qgb3BlbiBgJWknIGZvciBzdHJlYW0iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzo2NzYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgYmVmb3JlIGVuZCBvZiBsaW5lICVkIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6NzE5IHNyYy9tYWluLmM6NzQxIHNyYy9xdWVyeWNtZC5jOjY5MiBzcmMvc3RhdGNtZC5jOjM3OQorIzogZHBrZy1kZWIvbWFpbi5jOjIwMSBkcGtnLXNwbGl0L21haW4uYzoxNjMKK21zZ2lkICJuZWVkIGFuIGFjdGlvbiBvcHRpb24iCittc2dzdHIgInRlZ2V2dXNlIHbDtXRpIG9uIHZhamFsaWsiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjExMworbXNnaWQgIiIKKyJ5b3UgbXVzdCBzcGVjaWZ5IHBhY2thZ2VzIGJ5IHRoZWlyIG93biBuYW1lcywgbm90IGJ5IHF1b3RpbmcgdGhlIG5hbWVzIG9mICIKKyJ0aGUgZmlsZXMgdGhleSBjb21lIGluIgorbXNnc3RyICIiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjEzMworIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIC0tcGVuZGluZyBkb2VzIG5vdCB0YWtlIGFueSBub24tb3B0aW9uIGFyZ3VtZW50cyIKK21zZ3N0ciAiIgorCisjOiBzcmMvcGFja2FnZXMuYzoxMzggc3JjL3F1ZXJ5Y21kLmM6Mzc1IHNyYy9xdWVyeWNtZC5jOjU2NQorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGF0IGxlYXN0IG9uZSBwYWNrYWdlIG5hbWUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMgdmFqYWIgdsOkaGVtYWx0IMO8aHRlIGFyZ3VtZW50aSwgbWlzIG9sZWtzIHBha2luaW1pIgorCisjOiBzcmMvcGFja2FnZXMuYzoxNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSAlcyBsaXN0ZWQgbW9yZSB0aGFuIG9uY2UsIG9ubHkgcHJvY2Vzc2luZyBvbmNlLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjE4MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiTW9yZSB0aGFuIG9uZSBjb3B5IG9mIHBhY2thZ2UgJXMgaGFzIGJlZW4gdW5wYWNrZWRcbiIKKyIgaW4gdGhpcyBydW4gISAgT25seSBjb25maWd1cmluZyBpdCBvbmNlLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjIzMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorInBhY2thZ2UgJS4yNTBzIGlzIG5vdCByZWFkeSBmb3IgdHJpZ2dlciBwcm9jZXNzaW5nXG4iCisiIChjdXJyZW50IHN0YXR1cyBgJS4yNTBzJyB3aXRoIG5vIHBlbmRpbmcgdHJpZ2dlcnMpIgorbXNnc3RyICIiCisicGFrayAlLjI1MHMgcG9sZSBzZWFkaXN0YW1pc2VrcyB2YWxtaXNcbiIKKyIgc2VhZGlzdGFtaW5lIHBvbGUgdsO1aW1hbGlrIChoZXRrZW9sZWsgYCUuMjUwcycpIgorCisjOiBzcmMvcGFja2FnZXMuYzozMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIHdoaWNoIHByb3ZpZGVzICVzIGlzIHRvIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiAgUGFrayAlcywgbWlzIHRhZ2FiICVzLCBlZW1hbGRhdGFrc2UuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjMzNworIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgaXMgdG8gYmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiICBQYWtrICVzIGVlbWFsZGF0YWtzZS5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MzU0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgVmVyc2lvbiBvZiAlcyBvbiBzeXN0ZW0gaXMgJXMuXG4iCittc2dzdHIgIiAgU8O8c3RlZW1pcyBvbGV2ICVzIHZlcnNpb29uIG9uICVzLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzozNzYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyB3aGljaCBwcm92aWRlcyAlcyBhd2FpdHMgdHJpZ2dlciBwcm9jZXNzaW5nLlxuIgorbXNnc3RyICIgIFBha2sgJXMsIG1pcyB0YWdhYiAlcywgZWVtYWxkYXRha3NlLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzozODAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyBhd2FpdHMgdHJpZ2dlciBwcm9jZXNzaW5nLlxuIgorbXNnc3RyICIgIFBha2sgJXMgZWVtYWxkYXRha3NlLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogYWxzbyBjb25maWd1cmluZyBgJXMnIChyZXF1aXJlZCBieSBgJXMnKVxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQxOAorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgd2hpY2ggcHJvdmlkZXMgJXMgaXMgbm90IGNvbmZpZ3VyZWQgeWV0LlxuIgorbXNnc3RyICIgIFBha2sgJXMsIG1pcyB0YWdhYiAlcywgcG9sZSB2ZWVsIHNlYWRpc3RhdHVkLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIGlzIG5vdCBjb25maWd1cmVkIHlldC5cbiIKK21zZ3N0ciAiICBQYWtrICVzIHBvbGUgdmVlbCBzZWFkaXN0YXR1ZC5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyB3aGljaCBwcm92aWRlcyAlcyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIgIFBha2sgJXMsIG1pcyB0YWdhYiAlcywgcG9sZSBwYWlnYWxkYXR1ZC5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDM1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIgIFBha2sgJXMgcG9sZSBwYWlnYWxkYXR1ZC5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDcyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIgJXMgKCVzKSBicmVha3MgJXMgYW5kIGlzICVzLlxuIgorbXNnc3RyICIgICUuMjUwcyB0YWdhYiAlLjI1MHMgamEgb24gw7xodGxhc2kgJXMuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQ3OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiICAlcyAoJXMpIHByb3ZpZGVzICVzLlxuIgorbXNnc3RyICIlcyAoYWxhbXByb3RzZXNzKTogJXNcbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDgyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIgIFZlcnNpb24gb2YgJXMgdG8gYmUgY29uZmlndXJlZCBpcyAlcy5cbiIKK21zZ3N0ciAiICBTw7xzdGVlbWlzIG9sZXYgJXMgdmVyc2lvb24gb24gJXMuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjU5NgorbXNnaWQgIiBkZXBlbmRzIG9uICIKK21zZ3N0ciAiIHPDtWx0dWIgcGFraXN0ICIKKworIzogc3JjL3BhY2thZ2VzLmM6NjAyCittc2dpZCAiOyBob3dldmVyOlxuIgorbXNnc3RyICI7IGlnYXRhaGVzOlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjcxCisjLCBjLWZvcm1hdAorbXNnaWQgIi4uLi8lcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjkxCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGVuc3VyaW5nIGAlLjI1MHMnIGRvZXNuJ3QgZXhpc3QiCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5OQorbXNnaWQgInNwbGl0IHBhY2thZ2UgcmVhc3NlbWJseSIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEwOAorbXNnaWQgInJlYXNzZW1ibGVkIHBhY2thZ2UgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEzMworIywgYy1mb3JtYXQKK21zZ2lkICJBdXRoZW50aWNhdGluZyAlcyAuLi5cbiIKK21zZ3N0ciAiRmFpbGkgJXMgYXV0ZW50aW1pbmUuLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxMzkKK21zZ2lkICJwYWNrYWdlIHNpZ25hdHVyZSB2ZXJpZmljYXRpb24iCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxNDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiVmVyaWZpY2F0aW9uIG9uIHBhY2thZ2UgJXMgZmFpbGVkISIKK21zZ3N0ciAiVMO1cmdlIHBha2kgJXMgdmVyaWZpdHNlZXJpbWlzZWwiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTQ4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJWZXJpZmljYXRpb24gb24gcGFja2FnZSAlcyBmYWlsZWQsXG4iCisiYnV0IGluc3RhbGxpbmcgYW55d2F5IGFzIHlvdSByZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiIKKyJQYWtpICVzIHZlcmlmaXRzZWVyaW1pbmUgZWkgw7VubmVzdHVudWQsXG4iCisia3VpZCBTaW51IG7DtXVkbWlzZWwgcGFpZ2FsZGF0YWtzZSBzZWUgaWtrYWdpLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICJwYXNzZWRcbiIKK21zZ3N0ciAibMOkYml0dWRcbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxNjUgZHBrZy1kZWIvaW5mby5jOjgxCisjLCBmdXp6eQorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdGVtcG9yYXJ5IGRpcmVjdG9yeSIKK21zZ3N0ciAidMO1cmdlIGthdGFsb29naSBsb29taXNlbCIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlcyBoYXMgdG9vIG1hbnkgQ29uZmxpY3RzL1JlcGxhY2VzIHBhaXJzIgorbXNnc3RyICJwYWtpbCAlcyBvbiBsaWlnYSBwYWxqdSB2YXN0dW9sdWRlL2FzZW5kdXN0ZSBwYWFyZSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyNDMKKyMsIGMtZm9ybWF0Cittc2dpZCAib2xkIHZlcnNpb24gb2YgcGFja2FnZSBoYXMgb3Zlcmx5LWxvbmcgaW5mbyBmaWxlIG5hbWUgc3RhcnRpbmcgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyODEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBvYnNvbGV0ZSBpbmZvIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyODYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgKHN1cHBvc2VkKSBuZXcgaW5mbyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6Mjk2Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gdGVtcCBjb250cm9sIGRpcmVjdG9yeSIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMwNworIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGNvbnRhaW5zIG92ZXJseS1sb25nIGNvbnRyb2wgaW5mbyBmaWxlIG5hbWUgKHN0YXJ0aW5nIGAlLjUwcycpIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzE0CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgY29udHJvbCBpbmZvIGNvbnRhaW5lZCBkaXJlY3RvcnkgYCUuMjUwcyciCittc2dzdHIgInBha2kganVodGFuZG1lZCBzaXNhbGRhdmFkIGthdGFsb29naSBgJS4yNTBzJyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMTYKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBjb250cm9sIGluZm8gcm1kaXIgb2YgYCUuMjUwcycgZGlkbid0IHNheSBub3QgYSBkaXIiCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMjYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgJXMgY29udGFpbmVkIGxpc3QgYXMgaW5mbyBmaWxlIgorbXNnc3RyICJQYWtrIGAlcycgZWkgc2lzYWxkYSDDvGh0a2kgZmFpbGkgKCEpXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzMzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyBpbmZvIGZpbGUgYCUuMjUwcycgYXMgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozNDkgc3JjL3JlbW92ZS5jOjE5OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGVsZXRlIGNvbnRyb2wgaW5mbyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJqdWh0YW5kbWV0ZSBmYWlsaSBgJS4yNTBzJyBwb2xlIHbDtWltYWxpayBrdXN0dXRhZGEiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDExCittc2dpZCAiY2Fubm90IGFjY2VzcyBhcmNoaXZlIgorbXNnc3RyICJhcmhpaXZpbGUgcG9sZSB2w7VpbWFsaWsgbGlnaSBww6TDpHNlZGEiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDMzCisjLCBmdXp6eQorI3wgbXNnaWQgImNvbnRyb2wgaW5mb3JtYXRpb24gbGVuZ3RoIgorbXNnaWQgInBhY2thZ2UgY29udHJvbCBpbmZvcm1hdGlvbiBleHRyYWN0aW9uIgorbXNnc3RyICJqdWh0YW5kbWV0ZSBwaWtrdXMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDYwCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlY29yZGVkIGluZm8gYWJvdXQgJXMgZnJvbSAlcy5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjQ2OAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGFyY2hpdGVjdHVyZSAoJXMpIGRvZXMgbm90IG1hdGNoIHN5c3RlbSAoJXMpIgorbXNnc3RyICJwYWtpIGFyaGl0ZWt0dXVyICglcykgZWkgdmFzdGEgc8O8c3RlZW1pbGUgKCVzKSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1MjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IHJlZ2FyZGluZyAlcyBjb250YWluaW5nICVzLCBwcmUtZGVwZW5kZW5jeSBwcm9ibGVtOlxuIgorIiVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTI2CisjLCBjLWZvcm1hdAorbXNnaWQgInByZS1kZXBlbmRlbmN5IHByb2JsZW0gLSBub3QgaW5zdGFsbGluZyAlLjI1MHMiCittc2dzdHIgImVlbHPDtWx0dXZ1c2UgcHJvYmxlZW0gLSAlLjI1MHMgasOkZXRha3NlIHBhaWdhbGRhbWF0YSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1MjcKKyMsIGZ1enp5Cittc2dpZCAiaWdub3JpbmcgcHJlLWRlcGVuZGVuY3kgcHJvYmxlbSEiCittc2dzdHIgImRwa2c6IGhvaWF0dXMgLSBlZWxzw7VsdHV2dXNlIHByb2JsZWVtaSBlaXJhbWluZSFcbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHJlcGFyaW5nIHRvIHJlcGxhY2UgJXMgJXMgKHVzaW5nICVzKSAuLi5cbiIKK21zZ3N0ciAiRXR0ZXZhbG1pc3R1c2VkIHBha2kgJXMgJXMgYXNlbmRhbWlzZWtzICglcyBhYmlsKSAuLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiVW5wYWNraW5nICVzIChmcm9tICVzKSAuLi5cbiIKK21zZ3N0ciAiUGFraSAlcyBsYWh0aXBha2tpbWluZSAoZmFpbGlzdCAlcykgLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTgwCisjLCBjLWZvcm1hdAorbXNnaWQgIm5hbWUgb2YgY29uZmZpbGUgKHN0YXJ0aW5nIGAlLjI1MHMnKSBpcyB0b28gbG9uZyAoPiVkIGNoYXJhY3RlcnMpIgorbXNnc3RyICJzZWFkaXN0dXNmYWlsaSBuaW1pIChhbGd1c2VnYSBgJS4yNTBzJykgb24gbGlpZ2EgcGlrayAoPiVkIG3DpHJraSkiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjMzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDcxCisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWQgZXJyb3IgaW4gJS4yNTBzIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjM1CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgJS4yNTBzIgorbXNnc3RyICJ2aWdhICUuMjUwcyBzdWxnZW1pc2VsIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjYzNworIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciB0cnlpbmcgdG8gb3BlbiAlLjI1MHMiCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGUtY29uZmlndXJpbmcgJXMsIHRvIGFsbG93IHJlbW92YWwgb2YgJXMgLi4uXG4iCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2ODEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIkRlLWNvbmZpZ3VyaW5nICVzIC4uLlxuIgorbXNnc3RyICJQYWtpICVzIGVlbWFsZGFtaW5lLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NzU1CisjLCBjLWZvcm1hdAorbXNnaWQgIlVucGFja2luZyByZXBsYWNlbWVudCAlLjI1MHMgLi4uXG4iCittc2dzdHIgIlBha2kgJS4yNTBzIGFzZW5kdXNlIGxhaHRpcGFra2ltaW5lIC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjg0MAorbXNnaWQgInBhY2thZ2UgZmlsZXN5c3RlbSBhcmNoaXZlIGV4dHJhY3Rpb24iCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NTQKK21zZ2lkICJlcnJvciByZWFkaW5nIGRwa2ctZGViIHRhciBvdXRwdXQiCittc2dzdHIgInZpZ2EgZHBrZy1kZWIgdGFyIHbDpGxqdW5kaSBsdWdlbWlzZWwiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6ODU2Cittc2dpZCAiY29ycnVwdGVkIGZpbGVzeXN0ZW0gdGFyZmlsZSAtIGNvcnJ1cHRlZCBwYWNrYWdlIGFyY2hpdmUiCittc2dzdHIgInZpZ2FzZSBmYWlsaXPDvHN0ZWVtaWdhIHRhci1mYWlsIC0gdmlnYW5lIHBha2lhcmhpaXYiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6ODU5Cittc2dpZCAiZHBrZy1kZWI6IHphcCBwb3NzaWJsZSB0cmFpbGluZyB6ZXJvcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjkxOQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgc3RhdCBvbGQgZmlsZSAnJS4yNTBzJyBzbyBub3QgZGVsZXRpbmcgaXQ6ICVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTI1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGVsZXRlIG9sZCBkaXJlY3RvcnkgJyUuMjUwcyc6ICVzIgorbXNnc3RyICJkcGtnOiBob2lhdHVzIC0gdmFuYSBrYXRhbG9vZ2kgYCUuMjUwcycgcG9sZSB2w7VpbWFsaWsga3VzdHV0YWRhOiAlc1xuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjkyOAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAib2xkIGNvbmZmaWxlICclLjI1MHMnIHdhcyBhbiBlbXB0eSBkaXJlY3RvcnkgKGFuZCBoYXMgbm93IGJlZW4gZGVsZXRlZCkiCittc2dzdHIgIiIKKyJkcGtnOiBob2lhdHVzIC0gdmFuYSBzZWFkaXN0dXNmYWlsIGAlLjI1MHMnIG9saSB0w7xoaSBrYXRhbG9vZyAoamEgb24gIgorIm7DvMO8ZHNla3Mga3VzdHV0YXR1ZClcbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgb3RoZXIgbmV3IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm9sZCBmaWxlICclLjI1MHMnIGlzIHRoZSBzYW1lIGFzIHNldmVyYWwgbmV3IGZpbGVzISAoYm90aCAnJS4yNTBzJyBhbmQgIgorIiclLjI1MHMnKSIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEwMjUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWN1cmVseSByZW1vdmUgb2xkIGZpbGUgJyUuMjUwcyc6ICVzIgorbXNnc3RyICJvc2FmYWlsaSBgJS4yNTBzJyBvbGVrdXQgcG9sZSB2w7VpbWFsaWsgZnN0YXQgZnVua3RzaW9vbmlnYSBsdWdlZGEiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTIwNgorIywgYy1mb3JtYXQKK21zZ2lkICIoTm90aW5nIGRpc2FwcGVhcmFuY2Ugb2YgJXMsIHdoaWNoIGhhcyBiZWVuIGNvbXBsZXRlbHkgcmVwbGFjZWQuKVxuIgorbXNnc3RyICIiCisKKyMuIFRSQU5TTEFUT1JTOiBUaGlzIGlzIHRoZSBoZWFkZXIgdGhhdCBhcHBlYXJzIG9uICdkcGtnLXF1ZXJ5IC1sJy4gVGhlCisjLiAqIHN0cmluZyBzaG91bGQgcmVtYWluIHVuZGVyIDgwIGNoYXJhY3RlcnMuIFRoZSB1cHBlcmNhc2UgbGV0dGVycyBpbgorIy4gKiB0aGUgc3RhdGUgdmFsdWVzIGRlbm90ZSB0aGUgYWJicmV2aWF0ZWQgbGV0dGVyIHRoYXQgd2lsbCBhcHBlYXIgb24KKyMuICogdGhlIGZpcnN0IHRocmVlIGNvbHVtbnMsIHdoaWNoIHNob3VsZCBpZGVhbGx5IG1hdGNoIHRoZSBFbmdsaXNoIG9uZQorIy4gKiAoZS5nLiBSZW1vdmUg4oaSIHN1cFJpbWVpeCksIHNlZSBkcGtnLXF1ZXJ5KDEpIGZvciBmdXJ0aGVyIGRldGFpbHMuIFRoZQorIy4gKiB0cmFuc2xhdGVkIG1lc3NhZ2UgY2FuIHVzZSBhZGRpdGlvbmFsIGxpbmVzIGlmIG5lZWRlZC4KKyM6IHNyYy9xdWVyeWNtZC5jOjE0OQorbXNnaWQgIiIKKyJEZXNpcmVkPVVua25vd24vSW5zdGFsbC9SZW1vdmUvUHVyZ2UvSG9sZFxuIgorInwgU3RhdHVzPU5vdC9JbnN0L0NvbmYtZmlsZXMvVW5wYWNrZWQvaGFsRi1jb25mL0hhbGYtaW5zdC90cmlnLWFXYWl0L1RyaWctIgorInBlbmRcbiIKKyJ8LyBFcnI/PShub25lKS9SZWluc3QtcmVxdWlyZWQgKFN0YXR1cyxFcnI6IHVwcGVyY2FzZT1iYWQpXG4iCittc2dzdHIgIiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MTUzCittc2dpZCAiTmFtZSIKK21zZ3N0ciAiTmltaSIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MTUzCittc2dpZCAiVmVyc2lvbiIKK21zZ3N0ciAiVmVyc2lvb24iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjE1NAorbXNnaWQgIkRlc2NyaXB0aW9uIgorbXNnc3RyICJLaXJqZWxkdXMiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI0NiBzcmMvcXVlcnljbWQuYzo1MTEgc3JjL3NlbGVjdC5jOjc1CisjLCBjLWZvcm1hdAorbXNnaWQgIk5vIHBhY2thZ2VzIGZvdW5kIG1hdGNoaW5nICVzLlxuIgorbXNnc3RyICJNdXN0cmlsZSAlcyBlaSB2YXN0YSDDvGh0ZWdpIHBha2tpLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNzMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImRpdmVyc2lvbiBieSAlcyBmcm9tOiAlc1xuIgorbXNnc3RyICJwYWtpICVzIGRpdmVyc2lvb25pZCIKKworIzogc3JjL3F1ZXJ5Y21kLmM6Mjc1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnNpb24gYnkgJXMgdG86ICVzXG4iCittc2dzdHIgInBha2kgJXMgZGl2ZXJzaW9vbmlkIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNzgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImxvY2FsIGRpdmVyc2lvbiBmcm9tOiAlc1xuIgorbXNnc3RyICJrb2hhbGlrIGRpdmVyc2lvb24iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI3OQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAibG9jYWwgZGl2ZXJzaW9uIHRvOiAlc1xuIgorbXNnc3RyICJrb2hhbGlrIMO8bWJlcnN1dW5hbWluZSBmYWlsaWxlOiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzozMDkKK21zZ2lkICItLXNlYXJjaCBuZWVkcyBhdCBsZWFzdCBvbmUgZmlsZSBuYW1lIHBhdHRlcm4gYXJndW1lbnQiCittc2dzdHIgIi0tc2VhcmNoIHZhamFiIGFyZ3VtZW5kaWtzIHbDpGhlbWFsdCDDvGh0ZSBmYWlsaW5pbWUgbXVzdHJpdCIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MzUwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJObyBwYWNrYWdlcyBmb3VuZCBtYXRjaGluZyAlcy5cbiIKK21zZ2lkICIlczogbm8gcGF0aCBmb3VuZCBtYXRjaGluZyBwYXR0ZXJuICVzLlxuIgorbXNnc3RyICJNdXN0cmlsZSAlcyBlaSB2YXN0YSDDvGh0ZWdpIHBha2tpLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzozOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSBgJXMnIGlzIG5vdCBpbnN0YWxsZWQgYW5kIG5vIGluZm8gaXMgYXZhaWxhYmxlLlxuIgorbXNnc3RyICJQYWtrIGAlcycgcG9sZSBwYWlnYWxkYXR1ZCBqYSBhbmRtZWlkIHBvbGUgc2FhZGF2YWwuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQwMQorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlIGAlcycgaXMgbm90IGF2YWlsYWJsZS5cbiIKK21zZ3N0ciAiUGFrayBgJXMnIHBvbGUgc2FhZGF2YWwuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQxMCBzcmMvcXVlcnljbWQuYzo1ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSBgJXMnIGlzIG5vdCBpbnN0YWxsZWQuXG4iCittc2dzdHIgIlBha2sgYCVzJyBwb2xlIHBhaWdhbGRhdHVkLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSBgJXMnIGRvZXMgbm90IGNvbnRhaW4gYW55IGZpbGVzICghKVxuIgorbXNnc3RyICJQYWtrIGAlcycgZWkgc2lzYWxkYSDDvGh0a2kgZmFpbGkgKCEpXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQyNQorIywgYy1mb3JtYXQKK21zZ2lkICJsb2NhbGx5IGRpdmVydGVkIHRvOiAlc1xuIgorbXNnc3RyICJrb2hhbGlrIMO8bWJlcnN1dW5hbWluZSBmYWlsaWxlOiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBkaXZlcnRzIG90aGVycyB0bzogJXNcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJ0ZWQgYnkgJXMgdG86ICVzXG4iCittc2dzdHIgIiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDUyCittc2dpZCAiIgorIlVzZSBkcGtnIC0taW5mbyAoPSBkcGtnLWRlYiAtLWluZm8pIHRvIGV4YW1pbmUgYXJjaGl2ZSBmaWxlcyxcbiIKKyJhbmQgZHBrZyAtLWNvbnRlbnRzICg9IGRwa2ctZGViIC0tY29udGVudHMpIHRvIGxpc3QgdGhlaXIgY29udGVudHMuXG4iCittc2dzdHIgIiIKKyJBcmhpaXZpZmFpbGkgdmFhdGFtaXNla3Mga2FzdXRhIGRwa2cgLS1pbmZvICg9IGRwa2ctZGViIC0taW5mbyksXG4iCisiamEgc2VsbGUgc2lzdSB2YWF0YW1pc2VrcyBrYXN1dGEgZHBrZyAtLWNvbnRlbnRzICg9IGRwa2ctZGViIC0tY29udGVudHMpLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo1NzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgYXQgbW9zdCB0d28gYXJndW1lbnRzIgorbXNnc3RyICItLSVzIGVpIHZhamEgYXJndW1lbnRlIgorCisjOiBzcmMvcXVlcnljbWQuYzo1NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29udHJvbCBmaWxlIGNvbnRhaW5zICVjIgorbXNnc3RyICIiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjYwMAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuICVzIHBhY2thZ2UgbWFuYWdlbWVudCBwcm9ncmFtIHF1ZXJ5IHRvb2wgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiRGViaWFuaSBwYWtpaGFsZHVzcHJvZ3JhbW1pIGAlcycgdmVyc2lvb24gJXMuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjYxOQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLXN8LS1zdGF0dXMgPHBhY2thZ2U+IC4uLiAgICAgICAgRGlzcGxheSBwYWNrYWdlIHN0YXR1cyBkZXRhaWxzLlxuIgorIiAgLXB8LS1wcmludC1hdmFpbCA8cGFja2FnZT4gLi4uICAgRGlzcGxheSBhdmFpbGFibGUgdmVyc2lvbiBkZXRhaWxzLlxuIgorIiAgLUx8LS1saXN0ZmlsZXMgPHBhY2thZ2U+IC4uLiAgICAgTGlzdCBmaWxlcyBgb3duZWQnIGJ5IHBhY2thZ2UocykuXG4iCisiICAtbHwtLWxpc3QgWzxwYXR0ZXJuPiAuLi5dICAgICAgICBMaXN0IHBhY2thZ2VzIGNvbmNpc2VseS5cbiIKKyIgIC1XfC0tc2hvdyBbPHBhdHRlcm4+IC4uLl0gICAgICAgIFNob3cgaW5mb3JtYXRpb24gb24gcGFja2FnZShzKS5cbiIKKyIgIC1TfC0tc2VhcmNoIDxwYXR0ZXJuPiAuLi4gICAgICAgIEZpbmQgcGFja2FnZShzKSBvd25pbmcgZmlsZShzKS5cbiIKKyIgIC1jfC0tY29udHJvbC1wYXRoIDxwYWNrYWdlPiBbPGZpbGU+XVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHJpbnQgcGF0aCBmb3IgcGFja2FnZSBjb250cm9sIGZpbGUuXG4iCisiXG4iCittc2dzdHIgIiIKKyJLw6RzdWQ6XG4iCisiICAtc3wtLXN0YXR1cyA8cGFraz4gLi4uICAgICAgICBQYWtpIG9sZWt1YW5kbWV0ZSDDvGtzaWthc2phbGlrIGt1dmFtaW5lLlxuIgorIiAgLXB8LS1wcmludC1hdmFpbCA8cGFraz4gLi4uICAgU2FhZGFvbGV2YXRlIHZlcnNpb29uaWRlIMO8a3Npa2FzamFkZSAiCisia3V2YW1pbmUuXG4iCisiICAtTHwtLWxpc3RmaWxlcyA8cGFraz4gLi4uICAgICBQYWtpcyBzaXNhbGR1dmF0ZSBmYWlsaWRlIG5pbWVraXJqYSAiCisia3V2YW1pbmUuXG4iCisiICAtbHwtLWxpc3QgWzxtdXN0ZXI+IC4uLl0gICAgICBQYWtraWRlIGzDvGhpYW5kbWV0ZSBrdXZhbWluZS5cbiIKKyIgIC1XfC0tc2hvdyA8bXVzdGVyPiAuLi4gICAgICAgIFBha2tpZGUgYW5kbWV0ZSBrdXZhbWluZS5cbiIKKyIgIC1TfC0tc2VhcmNoIDxtdXN0ZXI+IC4uLiAgICAgIFBha2tpZGUgb3RzaW1pbmUgc2VsbGVzIHNpc2FsZHV2YSBmYWlsaW5pbWVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG11c3RyaSBqw6RyZ2kuXG4iCisiXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjYzNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorIiAgLWZ8LS1zaG93Zm9ybWF0PTxmb3JtYXQ+ICAgICAgICAgVXNlIGFsdGVybmF0aXZlIGZvcm1hdCBmb3IgLS1zaG93LlxuIgorIlxuIgorbXNnc3RyICIiCisiVsO1dG1lZDpcbiIKKyIgIC0tYWRtaW5kaXI9PGthdGFsb29nPiAgICAgICAgIE3DpMOkcmF0dWQga2F0YWxvb2dpIGthc3V0YW1pbmUgJXMgYXNlbWVsLlxuIgorIiAgLWZ8LS1zaG93Zm9ybWF0PTx2b3JtaW5nPiAgICAgLS1zaG93IHbDtXRtZSBrb3JyYWwgYWx0ZXJuYXRpaXZzZSB2b3JtaW5ndVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga2FzdXRhbWluZS5cbiIKKyJcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjQyIGRwa2ctZGViL21haW4uYzoxMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkZvcm1hdCBzeW50YXg6XG4iCisiICBBIGZvcm1hdCBpcyBhIHN0cmluZyB0aGF0IHdpbGwgYmUgb3V0cHV0IGZvciBlYWNoIHBhY2thZ2UuIFRoZSBmb3JtYXRcbiIKKyIgIGNhbiBpbmNsdWRlIHRoZSBzdGFuZGFyZCBlc2NhcGUgc2VxdWVuY2VzIFxcbiAobmV3bGluZSksIFxcciAoY2FycmlhZ2VcbiIKKyIgIHJldHVybikgb3IgXFxcXCAocGxhaW4gYmFja3NsYXNoKS4gUGFja2FnZSBpbmZvcm1hdGlvbiBjYW4gYmUgaW5jbHVkZWRcbiIKKyIgIGJ5IGluc2VydGluZyB2YXJpYWJsZSByZWZlcmVuY2VzIHRvIHBhY2thZ2UgZmllbGRzIHVzaW5nIHRoZSAke3Zhcls7IgorIndpZHRoXX1cbiIKKyIgIHN5bnRheC4gRmllbGRzIHdpbGwgYmUgcmlnaHQtYWxpZ25lZCB1bmxlc3MgdGhlIHdpZHRoIGlzIG5lZ2F0aXZlIGluICIKKyJ3aGljaFxuIgorIiAgY2FzZSBsZWZ0IGFsaWdubWVudCB3aWxsIGJlIHVzZWQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjU2Cittc2dpZCAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBxdWVyeWluZyBwYWNrYWdlcy4iCittc2dzdHIgIiIKKworIzogc3JjL3JlbW92ZS5jOjg4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJpZ25vcmluZyByZXF1ZXN0IHRvIHJlbW92ZSAlLjI1MHMgd2hpY2ggaXNuJ3QgaW5zdGFsbGVkLiIKK21zZ3N0ciAiIgorImRwa2cgLSBob2lhdHVzOiBwYWtpICUuMjUwcyBlZW1hbGRhbWlzZSBww6RyaW5ndXQgZWlyYXRha3NlIGt1bmEgc2VlIHBha2sgIgorInBvbGUgcGFpZ2FsZGF0dWQuXG4iCisKKyM6IHNyYy9yZW1vdmUuYzo5NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorImlnbm9yaW5nIHJlcXVlc3QgdG8gcmVtb3ZlICUuMjUwcywgb25seSB0aGUgY29uZmlnXG4iCisiIGZpbGVzIG9mIHdoaWNoIGFyZSBvbiB0aGUgc3lzdGVtLiBVc2UgLS1wdXJnZSB0byByZW1vdmUgdGhlbSB0b28uIgorbXNnc3RyICIiCisiZHBrZyAtIGhvaWF0dXM6IHBha2kgJS4yNTBzIGVlbWFsZGFtaXNlIHDDpHJpbmd1dCBlaXJhdGFrc2Uga3VuYVxuIgorIiBzw7xzdGVlbWlzIG9uIGFpbnVsdCBzZWxsZSBwYWtpIHNlYWRpc3R1c2ZhaWxpZC4gS2FzdXRhIC0tcHVyZ2UgdsO1dGl0XG4iCisiIG5lbmRlIGVlbWFsZGFtaXNla3MuXG4iCisKKyM6IHNyYy9yZW1vdmUuYzoxMDMKK21zZ2lkICJUaGlzIGlzIGFuIGVzc2VudGlhbCBwYWNrYWdlIC0gaXQgc2hvdWxkIG5vdCBiZSByZW1vdmVkLiIKK21zZ3N0ciAiU2VlIG9uIGjDpGRhdmFqYWxpayBwYWtrIC0gc2VkYSBlaSBwZWFrcyBlZW1hbGRhbWEuIgorCisjOiBzcmMvcmVtb3ZlLmM6MTI4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBkZXBlbmRlbmN5IHByb2JsZW1zIHByZXZlbnQgcmVtb3ZhbCBvZiAlczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6IHPDtWx0dXZ1c3Byb2JsZWVtaWQgdGFraXN0YXZhZCAlcyBlZW1hbGRhbWlzdDpcbiIKKyIlcyIKKworIzogc3JjL3JlbW92ZS5jOjEzMAorbXNnaWQgImRlcGVuZGVuY3kgcHJvYmxlbXMgLSBub3QgcmVtb3ZpbmciCittc2dzdHIgInPDtWx0dXZ1c3Byb2JsZWVtaWQgLSBlaSBlZW1hbGRhdGEiCisKKyM6IHNyYy9yZW1vdmUuYzoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6ICVzOiBkZXBlbmRlbmN5IHByb2JsZW1zLCBidXQgcmVtb3ZpbmcgYW55d2F5IGFzIHlvdSByZXF1ZXN0ZWQ6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiAlczogc8O1bHR1dnVzcHJvYmxlZW1pZCwga3VpZCB2YXN0YXZhbHQgbsO1dWRtaXNlbGUgZWVtYWxkYXRha3NlICIKKyJpa2thZ2k6XG4iCisiJXMiCisKKyM6IHNyYy9yZW1vdmUuYzoxNDIKK21zZ2lkICIiCisiUGFja2FnZSBpcyBpbiBhIHZlcnkgYmFkIGluY29uc2lzdGVudCBzdGF0ZSAtIHlvdSBzaG91bGRcbiIKKyIgcmVpbnN0YWxsIGl0IGJlZm9yZSBhdHRlbXB0aW5nIGEgcmVtb3ZhbC4iCittc2dzdHIgIiIKKyJQYWtrIG9uIHbDpGdhIGhhbHZhcyBzZWlzdW5kaXMgLSBlbm5lIGVlbWFsZGFtaXN0IHBlYWtzaWRcbiIKKyIgc2EgcGFraSB1dWVzdGkgcGFpZ2FsZGFtYS4iCisKKyM6IHNyYy9yZW1vdmUuYzoxNDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiV291bGQgcmVtb3ZlIG9yIHB1cmdlICVzIC4uLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9yZW1vdmUuYzoxNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVtb3ZpbmcgJXMgLi4uXG4iCittc2dzdHIgIlBha2kgJXMgZWVtYWxkYW1pbmUuLi5cbiIKKworIzogc3JjL3JlbW92ZS5jOjI3NSBzcmMvcmVtb3ZlLmM6MzY2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ3aGlsZSByZW1vdmluZyAlLjI1MHMsIHVuYWJsZSB0byByZW1vdmUgZGlyZWN0b3J5ICclLjI1MHMnOiAlcyAtIGRpcmVjdG9yeSAiCisibWF5IGJlIGEgbW91bnQgcG9pbnQ/IgorbXNnc3RyICIiCisKKyM6IHNyYy9yZW1vdmUuYzoyODkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWN1cmVseSByZW1vdmUgJyUuMjUwcyciCittc2dzdHIgImZhaWxpIGAlLjI1NXMnIHBvbGUgdsO1aW1hbGlrIGx1dWEiCisKKyM6IHNyYy9yZW1vdmUuYzozNjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIndoaWxlIHJlbW92aW5nICUuMjUwcywgZGlyZWN0b3J5ICclLjI1MHMnIG5vdCBlbXB0eSBzbyBub3QgcmVtb3ZlZC4iCittc2dzdHIgIiIKKyJkcGtnIC0gaG9pYXR1czogJS4yNTBzIGVlbWFsZGFtaXNlIGrDpHJlbCBwb2xlIGthdGFsb29nIGAlLjI1MHMnIHTDvGhpIGphICIKKyJzZWV0w7V0dHUgc2VkYSBlaSBrdXN0dXRhdGEuXG4iCisKKyM6IHNyYy9yZW1vdmUuYzozODMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImNhbm5vdCByZW1vdmUgYCUuMjUwcyciCittc2dpZCAiY2Fubm90IHJlbW92ZSAnJS4yNTBzJyIKK21zZ3N0ciAiYCUuMjUwcycgcG9sZSB2w7VpbWFsaWsgZWVtYWxkYWRhIgorCisjOiBzcmMvcmVtb3ZlLmM6NDA5CisjLCBjLWZvcm1hdAorbXNnaWQgIlB1cmdpbmcgY29uZmlndXJhdGlvbiBmaWxlcyBmb3IgJXMgLi4uXG4iCittc2dzdHIgIlBha2kgJXMgc2VhZGlzdHVzZmFpbGlkZSBlZW1hbGRhbWluZSAuLi5cbiIKKworIzogc3JjL3JlbW92ZS5jOjQ1OQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVtb3ZlIG9sZCBjb25maWcgZmlsZSBgJS4yNTBzJyAoPSBgJS4yNTBzJykiCittc2dzdHIgInZhbmEgc2VhZGlzdHVzZmFpbGkgYCUuMjUwcycgcG9sZSB2w7VpbWFsaWsgZWVtYWxkYWRhICg9IGAlLjI1MHMnKSIKKworIzogc3JjL3JlbW92ZS5jOjQ3NAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVhZCBjb25maWcgZmlsZSBkaXIgYCUuMjUwcycgKGZyb20gYCUuMjUwcycpIgorbXNnc3RyICIiCisKKyM6IHNyYy9yZW1vdmUuYzo1MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlbW92ZSBvbGQgYmFja3VwIGNvbmZpZyBmaWxlIGAlLjI1MHMnIChvZiBgJS4yNTBzJykiCittc2dzdHIgIiIKKworIzogc3JjL3JlbW92ZS5jOjU2OAorbXNnaWQgImNhbm5vdCByZW1vdmUgb2xkIGZpbGVzIGxpc3QiCittc2dzdHIgInZhbmFkZSBmYWlsaWRlIG5pbWVraXJqYSBwb2xlIHbDtWltYWxpayBlZW1hbGRhZGEiCisKKyM6IHNyYy9yZW1vdmUuYzo1NzQKK21zZ2lkICJjYW4ndCByZW1vdmUgb2xkIHBvc3RybSBzY3JpcHQiCittc2dzdHIgInZhbmEgcG9zdHJtIHNrcmlwdGkgcG9sZSB2w7VpbWFsaWsgZWVtYWxkYWRhIgorCisjOiBzcmMvc2VsZWN0LmM6MTE1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW9mIGluIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICJvb3RhbWF0dSBmYWlsaWzDtXBwIHBha2luaW1lcyByZWFsICVkIgorCisjOiBzcmMvc2VsZWN0LmM6MTE2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGxpbmUgaW4gcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQiCittc2dzdHIgIm9vdGFtYXR1IHJlYWzDtXBwIHBha2luaW1lcyByZWFsICVkIgorCisjOiBzcmMvc2VsZWN0LmM6MTIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW9mIGFmdGVyIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICJvb3RhbWF0dSBmYWlsaWzDtXBwIHBlYWxlIHBha2luaW1lIHJlYWwgJWQiCisKKyM6IHNyYy9zZWxlY3QuYzoxMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgbGluZSBhZnRlciBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZCIKK21zZ3N0ciAib290YW1hdHUgcmVhbMO1cHAgcGVhbGUgcGFraW5pbWUgcmVhbCAlZCIKKworIzogc3JjL3NlbGVjdC5jOjEzNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGRhdGEgYWZ0ZXIgcGFja2FnZSBhbmQgc2VsZWN0aW9uIGF0IGxpbmUgJWQiCittc2dzdHIgIm9vdGFtYXR1ZCBhbmRtZWQgcGVhbGUgcGFra2kgamEgdmFsaWt1dCByZWFsICVkIgorCisjOiBzcmMvc2VsZWN0LmM6MTM5CisjLCBjLWZvcm1hdAorbXNnaWQgImlsbGVnYWwgcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQ6ICUuMjUwcyIKK21zZ3N0ciAidmlnYW5lIHBha2luaW1pIHJlYWwgJWQ6ICUuMjUwcyIKKworIzogc3JjL3NlbGVjdC5jOjE0MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIHdhbnRlZCBzdGF0dXMgYXQgbGluZSAlZDogJS4yNTBzIgorbXNnc3RyICIiCisKKyM6IHNyYy9zZWxlY3QuYzoxNDkKK21zZ2lkICJyZWFkIGVycm9yIG9uIHN0YW5kYXJkIGlucHV0IgorbXNnc3RyICJ2aWdhIHN0YW5kYXJkc2lzZW5kaXN0IGx1Z2VtaXNlbCIKKworIzogc3JjL3N0YXRjbWQuYzo1MgorbXNnaWQgIlVzZSAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgb3ZlcnJpZGluZyBmaWxlIHN0YXQgaW5mb3JtYXRpb24uIgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0Y21kLmM6NjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsIDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDYtMjAwOSBHdWlsbGVtIEpvdmVyLlxuIgorbXNnc3RyICIiCisiXG4iCisiQXV0b3Jpw7VpZ3VzZWQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisiQXV0b3Jpw7VpZ3VzZWQgKEMpIDIwMDAtMjAwMiBXaWNoZXJ0IEFra2VybWFuLiIKKworIzogc3JjL3N0YXRjbWQuYzo4MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtLWFkZCA8b3duZXI+IDxncm91cD4gPG1vZGU+IDxmaWxlPlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGFkZCBhIG5ldyBlbnRyeSBpbnRvIHRoZSBkYXRhYmFzZS5cbiIKKyIgIC0tcmVtb3ZlIDxmaWxlPiAgICAgICAgICByZW1vdmUgZmlsZSBmcm9tIHRoZSBkYXRhYmFzZS5cbiIKKyIgIC0tbGlzdCBbPGdsb2ItcGF0dGVybj5dICBsaXN0IGN1cnJlbnQgb3ZlcnJpZGVzIGluIHRoZSBkYXRhYmFzZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGNtZC5jOjg5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIHNldCB0aGUgZGlyZWN0b3J5IHdpdGggdGhlIHN0YXRvdmVycmlkZSBmaWxlLlxuIgorIiAgLS11cGRhdGUgICAgICAgICAgICAgICAgIGltbWVkaWF0ZWx5IHVwZGF0ZSBmaWxlIHBlcm1pc3Npb25zLlxuIgorIiAgLS1mb3JjZSAgICAgICAgICAgICAgICAgIGZvcmNlIGFuIGFjdGlvbiBldmVuIGlmIGEgc2FuaXR5IGNoZWNrIGZhaWxzLlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHF1aWV0IG9wZXJhdGlvbiwgbWluaW1hbCBvdXRwdXQuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0Y21kLmM6MTE2Cittc2dpZCAic3RyaXBwaW5nIHRyYWlsaW5nIC8iCittc2dzdHIgImzDtXB1cyBvbGV2IGthbGRrcmlpcHMgZWVtYWxkYXRha3NlIgorCisjOiBzcmMvc3RhdGNtZC5jOjIwNworIywgZnV6enkKK21zZ2lkICJjYW5ub3Qgb3BlbiBuZXcgc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgInZpZ2Egc2VhZGlzdHVzZmFpbGkgYCUuMjU1cycgbHVnZW1pc2VsIgorCisjOiBzcmMvc3RhdGNtZC5jOjIyMgorIywgZnV6enkKK21zZ2lkICJlcnJvciByZW1vdmluZyBzdGF0b3ZlcnJpZGUtb2xkIgorbXNnc3RyICJ2aWdhIHNlYWRpc3R1c2ZhaWxpIGAlLjI1NXMnIGx1Z2VtaXNlbCIKKworIzogc3JjL3N0YXRjbWQuYzoyMjQKKyMsIGZ1enp5Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgbmV3IHN0YXRvdmVycmlkZS1vbGQiCittc2dzdHIgInZpZ2Egc2VhZGlzdHVzZmFpbGkgYCUuMjU1cycgbHVnZW1pc2VsIgorCisjOiBzcmMvc3RhdGNtZC5jOjIyNgorIywgZnV6enkKK21zZ2lkICJlcnJvciBpbnN0YWxsaW5nIG5ldyBzdGF0b3ZlcnJpZGUiCittc2dzdHIgInZpZ2Egc2VhZGlzdHVzZmFpbGkgYCUuMjU1cycgbHVnZW1pc2VsIgorCisjOiBzcmMvc3RhdGNtZC5jOjI0NgorbXNnaWQgIi0tYWRkIG5lZWRzIGZvdXIgYXJndW1lbnRzIgorbXNnc3RyICItLWFkZCB2YWphYiBuZWxqYSBhcmd1bWVudGkiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjU2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJBbiBvdmVycmlkZSBmb3IgJyVzJyBhbHJlYWR5IGV4aXN0cywgYnV0IC0tZm9yY2Ugc3BlY2lmaWVkIHNvIHdpbGwgYmUgIgorImlnbm9yZWQuIgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjYwCisjLCBjLWZvcm1hdAorbXNnaWQgIkFuIG92ZXJyaWRlIGZvciAnJXMnIGFscmVhZHkgZXhpc3RzLCBhYm9ydGluZy4iCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRjbWQuYzoyNzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS11cGRhdGUgZ2l2ZW4gYnV0ICVzIGRvZXMgbm90IGV4aXN0IgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0Y21kLmM6Mjk2Cittc2dpZCAiTm8gb3ZlcnJpZGUgcHJlc2VudC4iCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRjbWQuYzozMDQKKyMsIGZ1enp5Cittc2dpZCAiLS11cGRhdGUgaXMgdXNlbGVzcyBmb3IgLS1yZW1vdmUiCittc2dzdHIgImhvaWF0dXM6IC0tdXBkYXRlIG9uIC0tcmVtb3ZlIHB1aHVsIGthc3V0dSIKKworIzogc3JjL3N0YXRkYi5jOjU5CisjLCBmdXp6eQorbXNnaWQgInN5bnRheCBlcnJvcjogaW52YWxpZCB1aWQgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgInZpZ2Egc2VhZGlzdHVzZmFpbGkgYCUuMjU1cycgbHVnZW1pc2VsIgorCisjOiBzcmMvc3RhdGRiLmM6NjQKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yOiB1bmtub3duIHVzZXIgJyVzJyBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGRiLmM6ODMKKyMsIGZ1enp5Cittc2dpZCAic3ludGF4IGVycm9yOiBpbnZhbGlkIGdpZCBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAidmlnYSBzZWFkaXN0dXNmYWlsaSBgJS4yNTVzJyBsdWdlbWlzZWwiCisKKyM6IHNyYy9zdGF0ZGIuYzo4OAorIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3I6IHVua25vd24gZ3JvdXAgJyVzJyBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGRiLmM6MTA0CisjLCBmdXp6eQorbXNnaWQgInN5bnRheCBlcnJvcjogaW52YWxpZCBtb2RlIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJ2aWdhIHNlYWRpc3R1c2ZhaWxpIGAlLjI1NXMnIGx1Z2VtaXNlbCIKKworIzogc3JjL3N0YXRkYi5jOjEyNworbXNnaWQgImZhaWxlZCB0byBvcGVuIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0ZGIuYzoxMzQKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRkYi5jOjEzNworbXNnaWQgImZhaWxlZCB0byBmc3RhdCBwcmV2aW91cyBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGRiLmM6MTYyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJyZWFkaW5nIHN0YXRvdmVycmlkZSBmaWxlICclLjI1MHMnIgorbXNnc3RyICJsw6RodGVmYWlsaSBgJS4yNTBzJyBwb2xlIHbDtWltYWxpayBhdmFkYSIKKworIzogc3JjL3N0YXRkYi5jOjE2OQorIywgZnV6enkKK21zZ2lkICJzdGF0b3ZlcnJpZGUgZmlsZSBpcyBtaXNzaW5nIGZpbmFsIG5ld2xpbmUiCittc2dzdHIgImVubmUgdsOkbGphIGAlLipzJyB2w6TDpHJ0dXN0IG9uIGZhaWxpbMO1cHV0dW5udXMgKHB1dWR1YiBsw7VwdSByZWF2YWhldHVzKSIKKworIzogc3JjL3N0YXRkYi5jOjE3MworbXNnaWQgInN0YXRvdmVycmlkZSBmaWxlIGNvbnRhaW5zIGVtcHR5IGxpbmUiCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRkYi5jOjE3OCBzcmMvc3RhdGRiLmM6MTkwIHNyYy9zdGF0ZGIuYzoyMDIKKyMsIGZ1enp5Cittc2dpZCAic3ludGF4IGVycm9yIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJ2aWdhIHNlYWRpc3R1c2ZhaWxpIGAlLjI1NXMnIGx1Z2VtaXNlbCIKKworIzogc3JjL3N0YXRkYi5jOjE4NiBzcmMvc3RhdGRiLmM6MTk4IHNyYy9zdGF0ZGIuYzoyMTAKKyMsIGZ1enp5Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgbGluZSBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAib290YW1hdHUgcmVhbMO1cHAgcGFraW5pbWVzIHJlYWwgJWQiCisKKyM6IHNyYy9zdGF0ZGIuYzoyMTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIm11bHRpcGxlIHN0YXR1c292ZXJyaWRlcyBwcmVzZW50IGZvciBmaWxlICclLjI1MHMnIgorbXNnc3RyICJsw6RodGVmYWlsaSBgJS4yNTBzJyBwb2xlIHbDtWltYWxpayBhdmFkYSIKKworIzogc3JjL3RyaWdjbWQuYzo0NgorIywgZnV6enkKK21zZ2lkICJUeXBlIGRwa2ctdHJpZ2dlciAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgdGhpcyB1dGlsaXR5LiIKK21zZ3N0ciAiQWJpdGVhYmUgamFva3Mgc2lzZXN0YSBkcGtnLXNwbGl0IC0taGVscC4iCisKKyM6IHNyYy90cmlnY21kLmM6NTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiAlcyBwYWNrYWdlIHRyaWdnZXIgdXRpbGl0eSB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICJEZWJpYW5pIHBha2loYWxkdXNwcm9ncmFtbWkgYCVzJyB2ZXJzaW9vbiAlcy5cbiIKKworIzogc3JjL3RyaWdjbWQuYzo2NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbnM+IC4uLl0gPHRyaWdnZXItbmFtZT5cbiIKKyIgICAgICAgJXMgWzxvcHRpb25zPiAuLi5dIDxjb21tYW5kPlxuIgorIlxuIgorbXNnc3RyICIiCisiS2FzdXRhbWluZTogJXMgWzx2w7V0aT4gLi4uXSA8a8Okc2s+XG4iCisiXG4iCisKKyM6IHNyYy90cmlnY21kLmM6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLS1jaGVjay1zdXBwb3J0ZWQgICAgICAgICAgICAgICAgQ2hlY2sgaWYgdGhlIHJ1bm5pbmcgZHBrZyBzdXBwb3J0cyAiCisidHJpZ2dlcnMuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogc3JjL3RyaWdjbWQuYzo4MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorIiAgLS1ieS1wYWNrYWdlPTxwYWNrYWdlPiAgICAgICAgICAgT3ZlcnJpZGUgdHJpZ2dlciBhd2FpdGVyIChub3JtYWxseSBzZXRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnkgZHBrZykuXG4iCisiICAtLW5vLWF3YWl0ICAgICAgICAgICAgICAgICAgICAgICBObyBwYWNrYWdlIG5lZWRzIHRvIGF3YWl0IHRoZSAiCisicHJvY2Vzc2luZy5cbiIKKyIgIC0tbm8tYWN0ICAgICAgICAgICAgICAgICAgICAgICAgIEp1c3QgdGVzdCAtIGRvbid0IGFjdHVhbGx5IGNoYW5nZSAiCisiYW55dGhpbmcuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogc3JjL3RyaWdjbWQuYzoxNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IHRyaWdnZXJzIGRhdGEgZGlyZWN0b3J5IG5vdCB5ZXQgY3JlYXRlZFxuIgorbXNnc3RyICIiCisKKyM6IHNyYy90cmlnY21kLmM6MTU2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB0cmlnZ2VyIHJlY29yZHMgbm90IHlldCBpbiBleGlzdGVuY2VcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIwNQorIywgZnV6enkKK21zZ2lkICJ0YWtlcyBvbmUgYXJndW1lbnQsIHRoZSB0cmlnZ2VyIG5hbWUiCittc2dzdHIgIi0tJXMgdmFqYWIgYWludWx0IMO8aHRlIGFyZ3VtZW50aSAoLmRlYiBmYWlsaW5pbWkpIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIxMAorbXNnaWQgIm11c3QgYmUgY2FsbGVkIGZyb20gYSBtYWludGFpbmVyIHNjcmlwdCAob3Igd2l0aCBhIC0tYnktcGFja2FnZSBvcHRpb24pIgorbXNnc3RyICIiCisKKyM6IHNyYy90cmlnY21kLmM6MjE1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJpbGxlZ2FsIGF3YWl0ZWQgcGFja2FnZSBuYW1lICclLjI1MHMnOiAlLjI1MHMiCittc2dzdHIgInbDpGxpIGAlcycsIHZpZ2FuZSBwYWtpbmltaSBgJS4yNTVzJzogJXMiCisKKyM6IHNyYy90cmlnY21kLmM6MjIxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHRyaWdnZXIgbmFtZSBgJS4yNTBzJzogJS4yNTBzIgorbXNnc3RyICJ2w6RsaSBgJXMnLCB2aWdhbmUgcGFraW5pbWkgYCUuMjU1cyc6ICVzIgorCisjOiBzcmMvdHJpZ3Byb2MuYzoyNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBjeWNsZSBmb3VuZCB3aGlsZSBwcm9jZXNzaW5nIHRyaWdnZXJzOlxuIgorIiBjaGFpbiBvZiBwYWNrYWdlcyB3aG9zZSB0cmlnZ2VycyBhcmUgb3IgbWF5IGJlIHJlc3BvbnNpYmxlOlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy90cmlncHJvYy5jOjI1OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiIHBhY2thZ2VzJyBwZW5kaW5nIHRyaWdnZXJzIHdoaWNoIGFyZSBvciBtYXkgYmUgdW5yZXNvbHZhYmxlOlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy90cmlncHJvYy5jOjI4MQorbXNnaWQgInRyaWdnZXJzIGxvb3BpbmcsIGFiYW5kb25lZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvdHJpZ3Byb2MuYzozMTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIlByb2Nlc3NpbmcgdHJpZ2dlcnMgZm9yICVzIC4uLlxuIgorbXNnc3RyICJQYWtpICVzIHNlYWRpc3R1c2ZhaWxpZGUgZWVtYWxkYW1pbmUgLi4uXG4iCisKKyM6IHNyYy91cGRhdGUuYzo1MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiLS0lcyBuZWVkcyBleGFjdGx5IG9uZSBQYWNrYWdlcyBmaWxlIGFyZ3VtZW50IgorbXNnaWQgIi0tJXMgbmVlZHMgZXhhY3RseSBvbmUgUGFja2FnZXMtZmlsZSBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyB2YWphYiBhcmd1bWVuZGlrcyB0w6Rwc2VsdCDDvGh0ZSBQYWNrYWdlcyBmYWlsaSBuaW1lIgorCisjOiBzcmMvdXBkYXRlLmM6NjIKK21zZ2lkICJ1bmFibGUgdG8gYWNjZXNzIGRwa2cgc3RhdHVzIGFyZWEgZm9yIGJ1bGsgYXZhaWxhYmxlIHVwZGF0ZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvdXBkYXRlLmM6NjQKK21zZ2lkICJidWxrIGF2YWlsYWJsZSB1cGRhdGUgcmVxdWlyZXMgd3JpdGUgYWNjZXNzIHRvIGRwa2cgc3RhdHVzIGFyZWEiCittc2dzdHIgIiIKKworIzogc3JjL3VwZGF0ZS5jOjcxCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlcGxhY2luZyBhdmFpbGFibGUgcGFja2FnZXMgaW5mbywgdXNpbmcgJXMuXG4iCittc2dzdHIgIlNhYWRhb2xldmF0ZSBwYWtraWRlIGFuZG1ldGUgYXNlbmRhbWluZSBmYWlsaXN0ICVzLlxuIgorCisjOiBzcmMvdXBkYXRlLmM6NzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiVXBkYXRpbmcgYXZhaWxhYmxlIHBhY2thZ2VzIGluZm8sIHVzaW5nICVzLlxuIgorbXNnc3RyICJTYWFkYW9sZXZhdGUgcGFra2lkZSBhbmRtZXRlIHV1ZW5kYW1pbmUgZmFpbGlzdCAlcy5cbiIKKworIzogc3JjL3VwZGF0ZS5jOjEwMQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiSW5mb3JtYXRpb24gYWJvdXQgJWQgcGFja2FnZShzKSB3YXMgdXBkYXRlZC5cbiIKK21zZ2lkICJJbmZvcm1hdGlvbiBhYm91dCAlZCBwYWNrYWdlIHdhcyB1cGRhdGVkLlxuIgorbXNnaWRfcGx1cmFsICJJbmZvcm1hdGlvbiBhYm91dCAlZCBwYWNrYWdlcyB3YXMgdXBkYXRlZC5cbiIKK21zZ3N0clswXSAiJWQgcGFraSBhbmRtZWQgdXVlbmRhdHVkLlxuIgorbXNnc3RyWzFdICIlZCBwYWtpIGFuZG1lZCB1dWVuZGF0dWQuXG4iCisKKyM6IHNyYy91cGRhdGUuYzoxMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm9ic29sZXRlICctLSVzJyBvcHRpb24sIHVuYXZhaWxhYmxlIHBhY2thZ2VzIGFyZSBhdXRvbWF0aWNhbGx5IGNsZWFuZWQgdXAuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgbmFtZSAnJS41MHMuLi4nIGlzIHRvbyBsb25nIgorbXNnc3RyICJmYWlsaW5pbWkgJyUuNTBzLi4uJyBvbiBsaWlnYSBwaWtrIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjEyOQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgZmlsZSBuYW1lICclLjI1MHMnIgorbXNnc3RyICJsw6RodGVmYWlsaSBgJS4yNTBzJyBwb2xlIHbDtWltYWxpayBhdmFkYSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoxODkKKyMsIGZ1enp5Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgY29udHJvbCBkaXJlY3RvcnkiCittc2dzdHIgInTDtXJnZSBrYXRhbG9vZ2kgYWt0aXZlZXJpbWlzZWwgKGNoZGlyKSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoxOTEKKyMsIGZ1enp5Cittc2dpZCAiY29udHJvbCBkaXJlY3RvcnkgaXMgbm90IGEgZGlyZWN0b3J5IgorbXNnc3RyICJhbmRtZWthdGFsb29naSBwb2xlIHbDtWltYWxpayBsdWdlZGEiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTkzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbnRyb2wgZGlyZWN0b3J5IGhhcyBiYWQgcGVybWlzc2lvbnMgJTAzbG8gKG11c3QgYmUgPj0wNzU1IGFuZCA8PTA3NzUpIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjA0CisjLCBjLWZvcm1hdAorbXNnaWQgIm1haW50YWluZXIgc2NyaXB0IGAlLjUwcycgaXMgbm90IGEgcGxhaW4gZmlsZSBvciBzeW1saW5rIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjA3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJtYWludGFpbmVyIHNjcmlwdCBgJS41MHMnIGhhcyBiYWQgcGVybWlzc2lvbnMgJTAzbG8gKG11c3QgYmUgPj0wNTU1IGFuZCAiCisiPD0wNzc1KSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjIxMQorIywgYy1mb3JtYXQKK21zZ2lkICJtYWludGFpbmVyIHNjcmlwdCBgJS41MHMnIGlzIG5vdCBzdGF0dGFibGUiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyMzcKK21zZ2lkICJlcnJvciBvcGVuaW5nIGNvbmZmaWxlcyBmaWxlIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjQ2Cittc2dpZCAiZW1wdHkgc3RyaW5nIGZyb20gZmdldHMgcmVhZGluZyBjb25mZmlsZXMiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIG5hbWUgJyUuNTBzLi4uJyBpcyB0b28gbG9uZywgb3IgbWlzc2luZyBmaW5hbCBuZXdsaW5lIgorbXNnc3RyICJmYWlsaW5pbWkgJyUuNTBzLi4uJyBvbiBsaWlnYSBwaWtrIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI2NAorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBmaWxlbmFtZSAnJXMnIGNvbnRhaW5zIHRyYWlsaW5nIHdoaXRlIHNwYWNlcyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI2NgorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBgJS4yNTBzJyBkb2VzIG5vdCBhcHBlYXIgaW4gcGFja2FnZSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI2OAorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBgJS4yNTBzJyBpcyBub3Qgc3RhdHRhYmxlIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjcwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSAnJXMnIGlzIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgImzDpGh0ZWZhaWwgYCUuMjUwcycgcG9sZSBsaWh0ZmFpbCIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNzQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIG5hbWUgJyVzJyBpcyBkdXBsaWNhdGVkIgorbXNnc3RyICJsw6RodGVmYWlsIGAlLjI1MHMnIHBvbGUgbGlodGZhaWwiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6Mjg3Cittc2dpZCAiZXJyb3IgcmVhZGluZyBjb25mZmlsZXMgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjMzOQorbXNnaWQgInBhY2thZ2UgbmFtZSBoYXMgY2hhcmFjdGVycyB0aGF0IGFyZW4ndCBsb3dlcmNhc2UgYWxwaGFudW1zIG9yIGAtKy4nIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MzQxCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgY29udGFpbnMgdXNlci1kZWZpbmVkIFByaW9yaXR5IHZhbHVlICclcyciCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzozNDcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiclcycgY29udGFpbnMgdXNlci1kZWZpbmVkIGZpZWxkICclcyciCittc2dzdHIgImtvcmR1diBrYXN1dGFqYSBwb29sdCBraXJqZWxkYXR1ZCB2w6RsamEgYCUuKnMnIHbDpMOkcnR1cyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzozNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgJWQgd2FybmluZyBhYm91dCB0aGUgY29udHJvbCBmaWxlKHMpXG4iCittc2dpZF9wbHVyYWwgImlnbm9yaW5nICVkIHdhcm5pbmdzIGFib3V0IHRoZSBjb250cm9sIGZpbGUocylcbiIKK21zZ3N0clswXSAiIgorbXNnc3RyWzFdICIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDAzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDI5CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQzNgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGEgPGRpcmVjdG9yeT4gYXJndW1lbnQiCittc2dzdHIgIi0tJXMgdmFqYWIgYXJndW1lbnRpIDxrYXRhbG9vZz4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDA5Cittc2dpZCAiLS1idWlsZCB0YWtlcyBhdCBtb3N0IHR3byBhcmd1bWVudHMiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoZWNrIGZvciBleGlzdGVuY2Ugb2YgYXJjaGl2ZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQzMAorbXNnaWQgInRhcmdldCBpcyBkaXJlY3RvcnkgLSBjYW5ub3Qgc2tpcCBjb250cm9sIGZpbGUgY2hlY2siCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzEKK21zZ2lkICJub3QgY2hlY2tpbmcgY29udGVudHMgb2YgY29udHJvbCBhcmVhLiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQzMgorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnLWRlYjogYnVpbGRpbmcgYW4gdW5rbm93biBwYWNrYWdlIGluICclcycuXG4iCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZy1kZWI6IGJ1aWxkaW5nIHBhY2thZ2UgYCVzJyBpbiBgJXMnLlxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDY3IGRwa2ctZGViL2J1aWxkLmM6NTIxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gbWFrZSB0ZW1wb3JhcnkgZmlsZSAoJXMpIgorbXNnc3RyICJ0w7VyZ2UgdG9ydSBsb29taXNlbCIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0NjcgZHBrZy1kZWIvYnVpbGQuYzo0NzAgZHBrZy1kZWIvYnVpbGQuYzo0NzcKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDg1IGRwa2ctZGViL2J1aWxkLmM6NDk0IGRwa2ctZGViL2J1aWxkLmM6NDk5Cittc2dpZCAiY29udHJvbCBtZW1iZXIiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0NzAgZHBrZy1kZWIvYnVpbGQuYzo1MjQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB1bmxpbmsgdGVtcG9yYXJ5IGZpbGUgKCVzKSwgJXMiCittc2dzdHIgInTDtXJnZSB0b3J1IGxvb21pc2VsIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ4NSBkcGtnLWRlYi9idWlsZC5jOjU5MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJld2luZCB0ZW1wb3JhcnkgZmlsZSAoJXMpIgorbXNnc3RyICJ0w7VyZ2UgdG9ydSBsb29taXNlbCIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0OTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBzdGF0IHRlbXBvcmFyeSBmaWxlICglcykiCittc2dzdHIgInTDtXJnZSB0b3J1IGxvb21pc2VsIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ5OAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciB3cml0aW5nIGAlcyciCittc2dzdHIgInZpZ2EgYCVzJyBraXJqdXRhbWlzZWwiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTIxIGRwa2ctZGViL2J1aWxkLmM6NTI0IGRwa2ctZGViL2J1aWxkLmM6NTQ2CisjOiBkcGtnLWRlYi9idWlsZC5jOjU3MiBkcGtnLWRlYi9idWlsZC5jOjU4MCBkcGtnLWRlYi9idWlsZC5jOjU5MworIywgZnV6enkKK21zZ2lkICJkYXRhIG1lbWJlciIKK21zZ3N0ciAidmVyc2lvb25pbnVtYmVyIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjU3MSBkcGtnLWRlYi9idWlsZC5jOjU4MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIHdyaXRlIHRvIHBpcGUgaW4gY29weSIKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgZmlsZW5hbWUgdG8gdGFyIHBpcGUgKCVzKSIKK21zZ3N0ciAidMO1cmdlIGtvcGVlcmltaXNlIGFqYWwgdG9ydXNzZSBraXJqdXRhbWlzZWwiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTg0Cittc2dpZCAiPGNvbXByZXNzPiBmcm9tIHRhciAtY2YiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjYxIGRwa2ctZGViL2V4dHJhY3QuYzo2MworbXNnaWQgInNoZWxsIGNvbW1hbmQgdG8gbW92ZSBmaWxlcyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6NzAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgZmlsZSBpbiAlcyBpbiAlLjI1NXMiCittc2dzdHIgIm9vdGFtYXR1ICVzIGzDtXBwIGZhaWxpcyAlLjI1NXMiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzo3MgorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciByZWFkaW5nICVzIGZyb20gZmlsZSAlLjI1NXMiCittc2dzdHIgInZpZ2EgJXMgbHVnZW1pc2VsIGZhaWxpc3QgJS4yNTVzIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTI1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZWFkIGFyY2hpdmUgYCUuMjU1cyciCittc2dzdHIgInTDtXJnZSBhcmhpaXZpIGAlLjI1NXMnIGx1Z2VtaXNlbCIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjEyNworbXNnaWQgImZhaWxlZCB0byBmc3RhdCBhcmNoaXZlIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxMzEKKyMsIGZ1enp5CisjfCBtc2dpZCAiYXJjaGl2ZSBoYXMgbm8gZG90IGluIHZlcnNpb24gbnVtYmVyIgorbXNnaWQgImFyY2hpdmUgbWFnaWMgdmVyc2lvbiBudW1iZXIiCittc2dzdHIgImFyaGlpdmkgdmVyc2lvb25pbnVtYnJpcyBwb2xlIHB1bmt0ZSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE0MworIywgZnV6enkKKyN8IG1zZ2lkICJhcmNoaXZlIGhhcyBubyBuZXdsaW5lcyBpbiBoZWFkZXIiCittc2dpZCAiYXJjaGl2ZSBtZW1iZXIgaGVhZGVyIgorbXNnc3RyICJhcmhpaXZpcMOkaXNlcyBwb2xlIHJlYXZhaGV0dXNpIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTQ4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgcGFydCBudW1iZXIiCittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIGFyY2hpdmUgaGVhZGVyIG1hZ2ljIgorbXNnc3RyICJmYWlsIGAlLjI1MHMnIG9uIHJpa3V0dWQgLSBvc2EgbnVtYmVyIG9uIHZpZ2FuZSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE1NQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIG5vdCBhIGRlYmlhbiBiaW5hcnkgYXJjaGl2ZSAodHJ5IGRwa2ctc3BsaXQ/KSIKK21zZ3N0ciAiIgorImZhaWwgYCUuMjUwcycgcG9sZSBkZWJpYW5pIGJpbmFhcmFyaGlpdiAodsO1aWItb2xsYSBwcm9vdmlkYSBkcGtnLXNwbGl0J2k/KSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE1OQorIywgZnV6enkKKyN8IG1zZ2lkICJhcmNoaXZlIGhhcyBubyBkb3QgaW4gdmVyc2lvbiBudW1iZXIiCittc2dpZCAiYXJjaGl2ZSBpbmZvcm1hdGlvbiBoZWFkZXIgbWVtYmVyIgorbXNnc3RyICJhcmhpaXZpIHZlcnNpb29uaW51bWJyaXMgcG9sZSBwdW5rdGUiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNjIKK21zZ2lkICJhcmNoaXZlIGhhcyBubyBuZXdsaW5lcyBpbiBoZWFkZXIiCittc2dzdHIgImFyaGlpdmlww6Rpc2VzIHBvbGUgcmVhdmFoZXR1c2kiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNjUKK21zZ2lkICJhcmNoaXZlIGhhcyBubyBkb3QgaW4gdmVyc2lvbiBudW1iZXIiCittc2dzdHIgImFyaGlpdmkgdmVyc2lvb25pbnVtYnJpcyBwb2xlIHB1bmt0ZSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE2OAorIywgYy1mb3JtYXQKK21zZ2lkICJhcmNoaXZlIHZlcnNpb24gJS4yNTBzIG5vdCB1bmRlcnN0b29kLCBnZXQgbmV3ZXIgZHBrZy1kZWIiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE3OSBkcGtnLWRlYi9leHRyYWN0LmM6MjA1CisjLCBjLWZvcm1hdAorbXNnaWQgInNraXBwZWQgYXJjaGl2ZSBtZW1iZXIgZGF0YSBmcm9tICVzIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxOTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgY29udGFpbnMgdHdvIGNvbnRyb2wgbWVtYmVycywgZ2l2aW5nIHVwIgorbXNnaWQgImFyY2hpdmUgJyUuMjUwcycgY29udGFpbnMgbm90IHVuZGVyc3Rvb2QgZGF0YSBtZW1iZXIgJS4qcywgZ2l2aW5nIHVwIgorbXNnc3RyICJmYWlsIGAlLjI1MHMnIHNpc2FsZGFiIGthaHRlIGp1aHRsaWlnZXQsIGFubmFuIGFsbGEiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxOTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgY29udGFpbnMgdHdvIGNvbnRyb2wgbWVtYmVycywgZ2l2aW5nIHVwIgorbXNnaWQgImFyY2hpdmUgJyUuMjUwcycgY29udGFpbnMgdHdvIGNvbnRyb2wgbWVtYmVycywgZ2l2aW5nIHVwIgorbXNnc3RyICJmYWlsIGAlLjI1MHMnIHNpc2FsZGFiIGthaHRlIGp1aHRsaWlnZXQsIGFubmFuIGFsbGEiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyMTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIgbmV3IGRlYmlhbiBwYWNrYWdlLCB2ZXJzaW9uICVzLlxuIgorI3wgIiBzaXplICVsZCBieXRlczogY29udHJvbCBhcmNoaXZlPSAlemkgYnl0ZXMuXG4iCittc2dpZCAiIgorIiBuZXcgZGViaWFuIHBhY2thZ2UsIHZlcnNpb24gJXMuXG4iCisiIHNpemUgJWpkIGJ5dGVzOiBjb250cm9sIGFyY2hpdmU9ICVqZCBieXRlcy5cbiIKK21zZ3N0ciAiIgorIiB1dXMgZGViaWFuaSBwYWtrLCB2ZXJzaW9vbiAlcy5cbiIKKyIgc3V1cnVzOiAlbGQgYmFpdGk6IGp1aHRhcmhpaXY9ICV6aSBiYWl0aS5cbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIzMgorbXNnaWQgImFyY2hpdmUgY29udHJvbCBtZW1iZXIgc2l6ZSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjM1CisjLCBjLWZvcm1hdAorbXNnaWQgImFyY2hpdmUgaGFzIG1hbGZvcm1hdHRlZCBjb250cm9sIG1lbWJlciBzaXplICclcyciCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI0MgorIywgYy1mb3JtYXQKK21zZ2lkICJza2lwcGVkIGFyY2hpdmUgY29udHJvbCBtZW1iZXIgZGF0YSBmcm9tICVzIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNDYKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIgb2xkIGRlYmlhbiBwYWNrYWdlLCB2ZXJzaW9uICVzLlxuIgorI3wgIiBzaXplICVsZCBieXRlczogY29udHJvbCBhcmNoaXZlPSAlemksIG1haW4gYXJjaGl2ZT0gJWxkLlxuIgorbXNnaWQgIiIKKyIgb2xkIGRlYmlhbiBwYWNrYWdlLCB2ZXJzaW9uICVzLlxuIgorIiBzaXplICVqZCBieXRlczogY29udHJvbCBhcmNoaXZlPSAlamQsIG1haW4gYXJjaGl2ZT0gJWpkLlxuIgorbXNnc3RyICIiCisiIHZhbmEgZGViaWFuaSBwYWtrLCB2ZXJzaW9vbiAlcy5cbiIKKyIgc3V1cnVzOiAlbGQgYmFpdGk6IGp1aHRhcmhpaXY9ICV6aSBiYWl0aSwgcMO1aGlhcmhpaXY9ICVsZC5cbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI1NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZy1kZWI6IGZpbGUgbG9va3MgbGlrZSBpdCBtaWdodCBiZSBhbiBhcmNoaXZlIHdoaWNoIGhhcyBiZWVuXG4iCisiZHBrZy1kZWI6ICAgIGNvcnJ1cHRlZCBieSBiZWluZyBkb3dubG9hZGVkIGluIEFTQ0lJIG1vZGVcbiIKK21zZ3N0ciAiIgorImRwa2ctZGViOiBmYWlsIHBhaXN0YWIgb2xldmF0IGFyaGlpdiwgbWlzIG9uIEFTQ0lJLXJlxb5paW1pc1xuIgorImRwa2ctZGViOiAgICBhbGxhbGFhZGltaXNlIHTDtXR0dSBrYWhqdXN0YWRhIHNhYW51ZFxuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjU5CisjLCBjLWZvcm1hdAorbXNnaWQgImAlLjI1NXMnIGlzIG5vdCBhIGRlYmlhbiBmb3JtYXQgYXJjaGl2ZSIKK21zZ3N0ciAiYCUuMjU1cycgcG9sZSBkZWJpYW5pIHZvcm1pbmd1cyBhcmhpaXYiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNjYKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgdG8gcGlwZSBpbiBjb3B5IgorbXNnc3RyICJ0w7VyZ2Uga29wZWVyaW1pc2UgYWphbCB0b3J1c3NlIGtpcmp1dGFtaXNlbCIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI2OAorbXNnaWQgImZhaWxlZCB0byBjbG9zZSBwaXBlIGluIGNvcHkiCittc2dzdHIgInTDtXJnZSBrb3BlZXJpbWlzZSBqw6RyZWwgdG9ydSBzdWxnZW1pc2VsIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6Mjg0Cittc2dpZCAiZGF0YSIKK21zZ3N0ciAiYW5kbWVkIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzA3Cittc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIGRpcmVjdG9yeSIKK21zZ3N0ciAidMO1cmdlIGthdGFsb29naSBha3RpdmVlcmltaXNlbCAoY2hkaXIpIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzEwCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBkaXJlY3RvcnkiCittc2dzdHIgInTDtXJnZSBrYXRhbG9vZ2kgbG9vbWlzZWwiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozMTIKK21zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gZGlyZWN0b3J5IGFmdGVyIGNyZWF0aW5nIGl0IgorbXNnc3RyICJ0w7VyZ2Uga2F0YWxvb2dpIGFrdGl2ZWVyaW1pc2VsIChjaGRpcikgcMOkcmFzdCBzZWxsZSBsb29taXN0IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzIzCisjLCBmdXp6eQorbXNnaWQgIjxkZWNvbXByZXNzPiIKK21zZ3N0ciAiJXM6IGxhaHRpcGFra2ltaW5lIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzI1CisjLCBmdXp6eQorbXNnaWQgInBhc3RlIgorbXNnc3RyICJsw6RiaXR1ZFxuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzQyIGRwa2ctZGViL2V4dHJhY3QuYzozNjMgZHBrZy1kZWIvZXh0cmFjdC5jOjQwMgorIzogZHBrZy1kZWIvaW5mby5jOjc3CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSAuZGViIGZpbGVuYW1lIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIHZhamFiIGFyZ3VtZW5kaWtzIC5kZWIgZmFpbGluaW1lIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzQ3IGRwa2ctZGViL2V4dHJhY3QuYzo0MDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIi0tJXMgbmVlZHMgYSB0YXJnZXQgZGlyZWN0b3J5LlxuIgorIlBlcmhhcHMgeW91IHNob3VsZCBiZSB1c2luZyBkcGtnIC0taW5zdGFsbCA/IgorbXNnc3RyICIiCisiLS0lcyBqYW9rcyBwZWFiIG9sZW1hIG3DpMOkcmF0dWQgc2lodGthdGFsb29nLlxuIgorIlbDtWliLW9sbGEgcGVha3Mgc2Ega2FzdXRhbWEga8Okc2t1IGRwa2cgLS1pbnN0YWxsID8iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozNTAgZHBrZy1kZWIvZXh0cmFjdC5jOjQxMAorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIHRha2VzIGF0IG1vc3QgdHdvIGFyZ3VtZW50cyAoLmRlYiBhbmQgZGlyZWN0b3J5KSIKK21zZ3N0ciAiLS0lcyB2YWphYiBrw7VpZ2Ugcm9oa2VtIGthaHRlIGFyZ3VtZW50aSAoLmRlYiBqYSBrYXRhbG9vZykiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyB0YWtlcyBvbmx5IG9uZSBhcmd1bWVudCAoLmRlYiBmaWxlbmFtZSkiCittc2dzdHIgIi0tJXMgdmFqYWIgYWludWx0IMO8aHRlIGFyZ3VtZW50aSAoLmRlYiBmYWlsaW5pbWkpIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6NjMKK21zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gYC8nIGZvciBjbGVhbnVwIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMDYKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byByZWFkICVzOiAlcyIKK21zZ2lkICJjb250cm9sIGZpbGUgJyVzJyIKK21zZ3N0ciAiZmFpbGkgYCVzJyBwb2xlIHbDtWltYWxpayBsdWdlZGE6ICVzIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTEwCisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2ctZGViOiBgJS4yNTVzJyBjb250YWlucyBubyBjb250cm9sIGNvbXBvbmVudCBgJS4yNTVzJ1xuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAib3BlbiBjb21wb25lbnQgYCUuMjU1cycgKGluICUuMjU1cykgZmFpbGVkIGluIGFuIHVuZXhwZWN0ZWQgd2F5IgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJWQgcmVxdWVzdGVkIGNvbnRyb2wgY29tcG9uZW50IGlzIG1pc3NpbmciCittc2dpZF9wbHVyYWwgIiVkIHJlcXVlc3RlZCBjb250cm9sIGNvbXBvbmVudHMgYXJlIG1pc3NpbmciCittc2dzdHJbMF0gIiIKK21zZ3N0clsxXSAiIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTM5IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo0MjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHNjYW4gZGlyZWN0b3J5IGAlLjI1NXMnIgorbXNnc3RyICJrYXRhbG9vZ2kgYCUuMjU1cycgcG9sZSB2w7VpbWFsaWsgbMOkYmkgdmFhZGF0YSIKKworIzogZHBrZy1kZWIvaW5mby5jOjE0OAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc3RhdCBgJS4yNTVzJyAoaW4gYCUuMjU1cycpIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IG9wZW4gYCUuMjU1cycgKGluIGAlLjI1NXMnKSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTY3IGRwa2ctZGViL2luZm8uYzoxODUgZHBrZy1kZWIvaW5mby5jOjE5OQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCBgJS4yNTVzJyAoaW4gYCUuMjU1cycpIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxNzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiAlN2xkIGJ5dGVzLCAlNWQgbGluZXMgICAlYyAgJS0yMC4xMjdzICUuMTI3c1xuIgorbXNnaWQgIiAlN2pkIGJ5dGVzLCAlNWQgbGluZXMgICAlYyAgJS0yMC4xMjdzICUuMTI3c1xuIgorbXNnc3RyICIgJTdsZCBiYWl0aSwgJTVkIHJpZGEgICAlYyAgJS0yMC4xMjdzICUuMTI3c1xuIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTc0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgICAgbm90IGEgcGxhaW4gZmlsZSAgICAgICAgICAlLjI1NXNcbiIKK21zZ3N0ciAiICAgICBwb2xlIGxpaHRmYWlsICAgICAgICAgICAgICUuMjU1c1xuIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTg2Cittc2dpZCAiKG5vIGBjb250cm9sJyBmaWxlIGluIGNvbnRyb2wgYXJjaGl2ZSEpXG4iCittc2dzdHIgIihqdWh0YXJoaWl2aXMgcHV1ZHViIGZhaWwgYGNvbnRyb2wnISlcbiIKKworIzogZHBrZy1kZWIvaW5mby5jOjIyMgorbXNnaWQgImNvdWxkIG5vdCBvcGVuIHRoZSBgY29udHJvbCcgY29tcG9uZW50IgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2luZm8uYzoyNjEKK21zZ2lkICJmYWlsZWQgZHVyaW5nIHJlYWQgb2YgYGNvbnRyb2wnIGNvbXBvbmVudCIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MjYzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nIHRoZSAnJXMnIGNvbXBvbmVudCIKK21zZ3N0ciAidmlnYSBmaW5kJ2kgdG9ydSBzdWxnZW1pc2VsIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6Mjc4Cittc2dpZCAiRXJyb3IgaW4gZm9ybWF0IgorbXNnc3RyICJWb3JtaW5ndSB2aWdhIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MzI4Cittc2dpZCAiLS1jb250ZW50cyB0YWtlcyBleGFjdGx5IG9uZSBhcmd1bWVudCIKK21zZ3N0ciAiLS1jb250ZW50cyB2YWphYiB0w6Rwc2VsdCDDvGh0ZSBhcmd1bWVudGkiCisKKyM6IGRwa2ctZGViL21haW4uYzo1NAorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIGFyY2hpdmUgYmFja2VuZCB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICJEZWJpYW5pIGAlcycgcGFraWFyaGlpdmkgdGF1c3RhcHJvZ3JhbW1pIHZlcnNpb29uICVzLlxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6NzMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJDb21tYW5kczpcbiIKKyN8ICIgIC1ifC0tYnVpbGQgPGRpcmVjdG9yeT4gWzxkZWI+XSAgIEJ1aWxkIGFuIGFyY2hpdmUuXG4iCisjfCAiICAtY3wtLWNvbnRlbnRzIDxkZWI+ICAgICAgICAgICAgICBMaXN0IGNvbnRlbnRzLlxuIgorI3wgIiAgLUl8LS1pbmZvIDxkZWI+IFs8Y2ZpbGU+IC4uLl0gICAgU2hvdyBpbmZvIHRvIHN0ZG91dC5cbiIKKyN8ICIgIC1XfC0tc2hvdyA8ZGViPiAgICAgICAgICAgICAgICAgIFNob3cgaW5mb3JtYXRpb24gb24gcGFja2FnZShzKVxuIgorI3wgIiAgLWZ8LS1maWVsZCA8ZGViPiBbPGNmaWVsZD4gLi4uXSAgU2hvdyBmaWVsZChzKSB0byBzdGRvdXQuXG4iCisjfCAiICAtZXwtLWNvbnRyb2wgPGRlYj4gWzxkaXJlY3Rvcnk+XSBFeHRyYWN0IGNvbnRyb2wgaW5mby5cbiIKKyN8ICIgIC14fC0tZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PiAgIEV4dHJhY3QgZmlsZXMuXG4iCisjfCAiICAtWHwtLXZleHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+ICBFeHRyYWN0ICYgbGlzdCBmaWxlcy5cbiIKKyN8ICIgIC0tZnN5cy10YXJmaWxlIDxkZWI+ICAgICAgICAgICAgIE91dHB1dCBmaWxlc3lzdGVtIHRhcmZpbGUuXG4iCisjfCAiXG4iCittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLWJ8LS1idWlsZCA8ZGlyZWN0b3J5PiBbPGRlYj5dICAgQnVpbGQgYW4gYXJjaGl2ZS5cbiIKKyIgIC1jfC0tY29udGVudHMgPGRlYj4gICAgICAgICAgICAgIExpc3QgY29udGVudHMuXG4iCisiICAtSXwtLWluZm8gPGRlYj4gWzxjZmlsZT4gLi4uXSAgICBTaG93IGluZm8gdG8gc3Rkb3V0LlxuIgorIiAgLVd8LS1zaG93IDxkZWI+ICAgICAgICAgICAgICAgICAgU2hvdyBpbmZvcm1hdGlvbiBvbiBwYWNrYWdlKHMpXG4iCisiICAtZnwtLWZpZWxkIDxkZWI+IFs8Y2ZpZWxkPiAuLi5dICBTaG93IGZpZWxkKHMpIHRvIHN0ZG91dC5cbiIKKyIgIC1lfC0tY29udHJvbCA8ZGViPiBbPGRpcmVjdG9yeT5dIEV4dHJhY3QgY29udHJvbCBpbmZvLlxuIgorIiAgLXh8LS1leHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+ICAgRXh0cmFjdCBmaWxlcy5cbiIKKyIgIC1YfC0tdmV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gIEV4dHJhY3QgJiBsaXN0IGZpbGVzLlxuIgorIiAgLVJ8LS1yYXctZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRXh0cmFjdCBjb250cm9sIGluZm8gYW5kIGZpbGVzLlxuIgorIiAgLS1mc3lzLXRhcmZpbGUgPGRlYj4gICAgICAgICAgICAgT3V0cHV0IGZpbGVzeXN0ZW0gdGFyZmlsZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIkvDpHN1ZDpcbiIKKyIgIC1ifC0tYnVpbGQgPGthdGFsb29nPiBbPGRlYj5dICAgIEFyaGlpdmkgZWhpdGFtaW5lLlxuIgorIiAgLWN8LS1jb250ZW50cyA8ZGViPiAgICAgICAgICAgICAgU2lzdSBrdXZhbWluZS5cbiIKKyIgIC1JfC0taW5mbyA8ZGViPiBbPGpmYWlsPiAuLi5dICAgIEFuZG1ldGUgdsOkbGphc3RhbWluZSAiCisic3RhbmRhcmR2w6RsanVuZGlzc2UuXG4iCisiICAtV3wtLXNob3cgPGRlYj4gICAgICAgICAgICAgICAgICBQYWtpICh2w7VpIHBha2tpZGUpIGFuZG1ldGUgbsOkaXRhbWluZVxuIgorIiAgLWZ8LS1maWVsZCA8ZGViPiBbPGp2w6RsaT4gLi4uXSAgIFbDpGxqYShkZSkgdsOkbGphc3RhbWluZSAiCisic3RhbmRhcmR2w6RsanVuZGlzc2UuXG4iCisiICAtZXwtLWNvbnRyb2wgPGRlYj4gWzxrYXRhbG9vZz5dICBKdWh0YW5kbWV0ZSBlcmFsZGFtaW5lLlxuIgorIiAgLXh8LS1leHRyYWN0IDxkZWI+IDxrYXRhbG9vZz4gICAgRmFpbGlkZSBlcmFsZGFtaW5lLlxuIgorIiAgLVh8LS12ZXh0cmFjdCA8ZGViPiA8a2F0YWxvb2c+ICAgRmFpbGlkZSBlcmFsZGFtaW5lIGphIG5lbmRlIG5pbWVraXJqYVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga3V2YW1pbmUuXG4iCisiICAtLWZzeXMtdGFyZmlsZSA8ZGViPiAgICAgICAgICAgICBGYWlsaXPDvHN0ZWVtaSB0YXItYXJoaWl2aSB2w6RsamFzdGFtaW5lLlxuIgorIlxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6OTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIjxkZWI+IGlzIHRoZSBmaWxlbmFtZSBvZiBhIERlYmlhbiBmb3JtYXQgYXJjaGl2ZS5cbiIKKyI8Y2ZpbGU+IGlzIHRoZSBuYW1lIG9mIGFuIGFkbWluaXN0cmF0aXZlIGZpbGUgY29tcG9uZW50LlxuIgorIjxjZmllbGQ+IGlzIHRoZSBuYW1lIG9mIGEgZmllbGQgaW4gdGhlIG1haW4gYGNvbnRyb2wnIGZpbGUuXG4iCisiXG4iCittc2dzdHIgIiIKKyI8ZGViPiBvbiBEZWJpYW5pIHZvcm1pbmd1cyBhcmhpaXZpZmFpbGkgbmltaS5cbiIKKyI8amZhaWw+IG9uIGFkbWluaXN0cmF0aWl2c2UgZmFpbGlrb21wb25lbmRpIG5pbWkuXG4iCisiPGp2w6RsaT4gb24gcGVhbWlzZXMgYGNvbnRyb2wnIGZhaWxpcyBvbGV2YSB2w6RsamEgbmltaS5cbiIKKyJcbiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjk5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tc2hvd2Zvcm1hdD08Zm9ybWF0PiAgICAgICAgICAgIFVzZSBhbHRlcm5hdGl2ZSBmb3JtYXQgZm9yIC0tc2hvdy5cbiIKKyIgIC12LCAtLXZlcmJvc2UgICAgICAgICAgICAgICAgICAgIEVuYWJsZSB2ZXJib3NlIG91dHB1dC5cbiIKKyIgIC1EICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVuYWJsZSBkZWJ1Z2dpbmcgb3V0cHV0LlxuIgorIiAgLS1vbGQsIC0tbmV3ICAgICAgICAgICAgICAgICAgICAgU2VsZWN0IGFyY2hpdmUgZm9ybWF0LlxuIgorIiAgLS1ub2NoZWNrICAgICAgICAgICAgICAgICAgICAgICAgU3VwcHJlc3MgY29udHJvbCBmaWxlIGNoZWNrIChidWlsZCBiYWRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFja2FnZXMpLlxuIgorIiAgLXojICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU2V0IHRoZSBjb21wcmVzc2lvbiBsZXZlbCB3aGVuIGJ1aWxkaW5nLlxuIgorIiAgLVo8dHlwZT4gICAgICAgICAgICAgICAgICAgICAgICAgU2V0IHRoZSBjb21wcmVzc2lvbiB0eXBlIHVzZWQgd2hlbiAiCisiYnVpbGRpbmcuXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFsbG93ZWQgdHlwZXM6IGd6aXAsIHh6LCBiemlwMiwgbHptYSwgIgorIm5vbmUuXG4iCisiXG4iCittc2dzdHIgIiIKKyJWw7V0bWVkOlxuIgorIiAgLS1zaG93Zm9ybWF0PTx2b3JtaW5nPiAgICAgICAgICAgLS1zaG93IGphb2tzIGFsdGVybmF0aWl2c2Ugdm9ybWluZ3VcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga2FzdXRhbWluZS5cbiIKKyIgIC1EICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNpbHVtaXN2w6RsanVuZGkgbHViYW1pbmUuXG4iCisiICAtLW9sZCwgLS1uZXcgICAgICAgICAgICAgICAgICAgICBBcmhpaXZpdm9ybWluZ3UgdmFsaW1pbmUuXG4iCisiICAtLW5vY2hlY2sgICAgICAgICAgICAgICAgICAgICAgICBKdWh0ZmFpbGkga29udHJvbGxpbWlzZSB2YWhlbGVqw6R0bWluZS5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHBhaGFkZSBwYWtraWRlIGVoaXRhbWluZSkuXG4iCisiICAteiMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQYWtraW1pc3Rhc2VtZSBtw6TDpHJhbWluZSBlaGl0YW1pc2VsLlxuIgorIiAgLVo8dHlwZT4gICAgICAgICAgICAgICAgICAgICAgICAgUGFra2ltaXNsaWlnaSBtw6TDpHJhbWluZSBwYWtpIGVoaXRhbWlzZWwuXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEx1YmF0dWQgdsOkw6RydHVzZWQ6IGd6aXAsIGJ6aXAyLCBsem1hLCAiCisibm9uZS5cbiIKKyJcbiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjEyMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiVXNlIGBkcGtnJyB0byBpbnN0YWxsIGFuZCByZW1vdmUgcGFja2FnZXMgZnJvbSB5b3VyIHN5c3RlbSwgb3JcbiIKKyJgZHNlbGVjdCcgb3IgYGFwdGl0dWRlJyBmb3IgdXNlci1mcmllbmRseSBwYWNrYWdlIG1hbmFnZW1lbnQuICBQYWNrYWdlc1xuIgorInVucGFja2VkIHVzaW5nIGBkcGtnLWRlYiAtLWV4dHJhY3QnIHdpbGwgYmUgaW5jb3JyZWN0bHkgaW5zdGFsbGVkICFcbiIKK21zZ3N0ciAiIgorIlxuIgorIlBha2tpZGUgc8O8c3RlZW1pIHBhaWdhbGRhbWlzZWtzIGphIGVlbWFsZGFtaXNla3Mga2FzdXRhIHByb2dyYW1taSBgZHBrZycgIgorInbDtWlcbiIKKyJrYXN1dGFqYXPDtWJyYWxpa2tlIHBha2loYWxkdXN2YWhlbmRlaWQgYGRzZWxlY3QnIHbDtWkgYGFwdGl0dWRlJy4gIFBha2tpZGVcbiIKKyJsYWh0aXBha2tpbWluZSBgZHBrZy1kZWIgLS1leHRyYWN0JyBhYmlsIGVpIG9sZSBrb3JyZWt0bmUgcGFpZ2FsZGFtaW5lIVxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTMyCittc2dpZCAiIgorIlR5cGUgZHBrZy1kZWIgLS1oZWxwIGZvciBoZWxwIGFib3V0IG1hbmlwdWxhdGluZyAqLmRlYiBmaWxlcztcbiIKKyJUeXBlIGRwa2cgLS1oZWxwIGZvciBoZWxwIGFib3V0IGluc3RhbGxpbmcgYW5kIGRlaW5zdGFsbGluZyBwYWNrYWdlcy4iCittc2dzdHIgIiIKKyJLw6RzdSBkcGtnLWRlYiAtLWhlbHAgdsOkbGp1bmQgcsOkw6RnaWIgKi5kZWIgZmFpbGlkZWdhIMO8bWJlcmvDpGltaXNlc3Q7XG4iCisiS8Okc3UgZHBrZyAtLWhlbHAgdsOkbGp1bmQgcsOkw6RnaWIgcGFra2lkZSBwYWlnYWxkYW1pc2VzdCBqYSBlZW1hbGRhbWlzZXN0LiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjE0OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBpbnRlZ2VyIGZvciAtJWM6ICclLjI1MHMnIgorbXNnc3RyICJ2w6RsaSBgJXMnLCB2aWdhbmUgcGFraW5pbWkgYCUuMjU1cyc6ICVzIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTUxCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgY29tcHJlc3Npb24gbGV2ZWwgZm9yIC0lYzogJWxkJyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTYxCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gY29tcHJlc3Npb24gdHlwZSBgJXMnISIKK21zZ3N0ciAidHVuZG1hdHUgcGFra2ltaXNsaWlrIGAlcychIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzo1MgorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgZGlnaXQgKGNvZGUgJWQpIGluICVzIgorbXNnc3RyICJmYWlsIGAlLjI1MHMnIG9uIHJpa3V0dWQgLSB2aWdhbmUgbnVtYmVyIChrb29kICVkKSB2w6RsamFsICVzIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzo2MAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSAlLjI1MHMgbWlzc2luZyIKK21zZ3N0ciAiZmFpbCBgJS4yNTBzJyBvbiByaWt1dHVkIC0gcHV1ZHViICUuMjUwcyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gbWlzc2luZyBuZXdsaW5lIGFmdGVyICUuMjUwcyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzo4OSBkcGtnLXNwbGl0L21haW4uYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcmVhZGluZyAlLjI1MHMiCittc2dzdHIgInZpZ2EgJS4yNTBzIGx1Z2VtaXNlbCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTAzCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBtYWdpYyBhdCBlbmQgb2YgZmlyc3QgaGVhZGVyIgorbXNnc3RyICJmYWlsIGAlLjI1MHMnIG9uIHJpa3V0dWQgLSBlc2ltZXNlIHDDpGlzZSBsw7VwdXMgb24gdmlnYW5lIG1hYWdpYSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTEzCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBwYWRkaW5nIGNoYXJhY3RlciAoY29kZSAlZCkiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTE3CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIG51bGxzIGluIGluZm8gc2VjdGlvbiIKK21zZ3N0ciAiZmFpbCBgJS4yNTBzJyBvbiByaWt1dHVkIC0gdGVhYmVzZWt0c2lvb24gc2lzYWxkYWIgbnVsbGUiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyMgorIywgZnV6enkKK21zZ2lkICJmb3JtYXQgdmVyc2lvbiBudW1iZXIiCittc2dzdHIgInZlcnNpb29uaW51bWJlciIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgZm9ybWF0IHZlcnNpb24gYCUuMjUwcycgLSB5b3UgbmVlZCBhIG5ld2VyIGRwa2ctc3BsaXQiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTI3CisjLCBmdXp6eQorbXNnaWQgInBhY2thZ2UgbmFtZSIKK21zZ3N0ciAiIChwYWtrOiAiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyOAorIywgZnV6enkKK21zZ2lkICJwYWNrYWdlIHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICJ2ZXJzaW9vbmludW1iZXIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyOQorbXNnaWQgInBhY2thZ2UgZmlsZSBNRDUgY2hlY2tzdW0iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTMyCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBNRDUgY2hlY2tzdW0gYCUuMjUwcyciCittc2dzdHIgImZhaWwgYCUuMjUwcycgb24gcmlrdXR1ZCAtIE1ENS1rb250cm9sbHN1bW1hIGAlLjI1MHMnIGVpIGtsYXBpIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMzQgZHBrZy1zcGxpdC9pbmZvLmM6MTM1Cittc2dpZCAiYXJjaGl2ZSB0b3RhbCBzaXplIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEzNiBkcGtnLXNwbGl0L2luZm8uYzoxMzcKK21zZ2lkICJhcmNoaXZlIHBhcnQgb2Zmc2V0IgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEzOQorIywgZnV6enkKK21zZ2lkICJhcmNoaXZlIHBhcnQgbnVtYmVycyIKK21zZ3N0ciAidmVyc2lvb25pbnVtYmVyIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBwYXJ0IG51bWJlciIKK21zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBubyBzbGFzaCBiZXR3ZWVuIGFyY2hpdmUgcGFydCBudW1iZXJzIgorbXNnc3RyICJmYWlsIGAlLjI1MHMnIG9uIHJpa3V0dWQgLSBvc2EgbnVtYmVyIG9uIHZpZ2FuZSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTQ1Cittc2dpZCAibnVtYmVyIG9mIGFyY2hpdmUgcGFydHMiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTQ3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgbnVtYmVyIG9mIGFyY2hpdmUgcGFydHMiCittc2dzdHIgImZhaWwgYCUuMjUwcycgb24gcmlrdXR1ZCAtIG9zYSBudW1iZXIgb24gdmlnYW5lIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDkKKyMsIGZ1enp5Cittc2dpZCAiYXJjaGl2ZSBwYXJ0cyBudW1iZXIiCittc2dzdHIgInZlcnNpb29uaW51bWJlciIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTUxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgcGFydCBudW1iZXIiCittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIGFyY2hpdmUgcGFydCBudW1iZXIiCittc2dzdHIgImZhaWwgYCUuMjUwcycgb24gcmlrdXR1ZCAtIG9zYSBudW1iZXIgb24gdmlnYW5lIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNTcKKyMsIGZ1enp5Cittc2dpZCAicGFja2FnZSBhcmNoaXRlY3R1cmUiCittc2dzdHIgIiAocGFrazogIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIG1hZ2ljIGF0IGVuZCBvZiBzZWNvbmQgaGVhZGVyIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE2OAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBzZWNvbmQgbWVtYmVyIGlzIG5vdCBkYXRhIG1lbWJlciIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gd3JvbmcgbnVtYmVyIG9mIHBhcnRzIGZvciBxdW90ZWQgc2l6ZXMiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTc4CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIHNpemUgaXMgd3JvbmcgZm9yIHF1b3RlZCBwYXJ0IG51bWJlciIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxODQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZzdGF0IHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAib3NhZmFpbGkgYCUuMjUwcycgb2xla3V0IHBvbGUgdsO1aW1hbGlrIGZzdGF0IGZ1bmt0c2lvb25pZ2EgbHVnZWRhIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gdG9vIHNob3J0IgorbXNnc3RyICJmYWlsIGAlLjI1MHMnIG9uIHJpa3V0dWQgLSBsaWlnYSBsw7xoaWtlIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyMDIgZHBrZy1zcGxpdC9pbmZvLmM6MjQ5CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBvcGVuIGFyY2hpdmUgcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJhcmhpaXZpb3NhIGZhaWxpIGAlLjI1MHMnIHBvbGUgdsO1aW1hbGlrIGF2YWRhIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBub3QgYW4gYXJjaGl2ZSBwYXJ0IgorbXNnc3RyICJmYWlsIGAlLjI1MHMnIHBvbGUgYXJoaWl2aSBvc2EiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjIwOQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6XG4iCisiICAgIFBhcnQgZm9ybWF0IHZlcnNpb246ICAgICAgICAgICAgJXNcbiIKKyIgICAgUGFydCBvZiBwYWNrYWdlOiAgICAgICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIHZlcnNpb246ICAgICAgICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gYXJjaGl0ZWN0dXJlOiAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiBNRDUgY2hlY2tzdW06ICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIGxlbmd0aDogICAgICAgICAgICAgICAgICVqZCBieXRlc1xuIgorIiAgICAgICAgLi4uIHNwbGl0IGV2ZXJ5OiAgICAgICAgICAgICVqZCBieXRlc1xuIgorIiAgICBQYXJ0IG51bWJlcjogICAgICAgICAgICAgICAgICAgICVkLyVkXG4iCisiICAgIFBhcnQgbGVuZ3RoOiAgICAgICAgICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgIFBhcnQgb2Zmc2V0OiAgICAgICAgICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgIFBhcnQgZmlsZSBzaXplICh1c2VkIHBvcnRpb24pOiAgJWpkIGJ5dGVzXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjI1CisjLCBmdXp6eQorI3wgbXNnaWQgIjx1bmtub3duPiIKK21zZ2N0eHQgImFyY2hpdGVjdHVyZSIKK21zZ2lkICI8dW5rbm93bj4iCittc2dzdHIgIjx0dW5kbWF0dT4iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjI0NCBkcGtnLXNwbGl0L2pvaW4uYzoxMDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgcmVxdWlyZXMgb25lIG9yIG1vcmUgcGFydCBmaWxlIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS1kZWJ1ZyB2w7V0bWVsIHBlYWIgb2xlbWEga2FoZWtzYW5kc8O8c3RlZW1pIGFyZ3VtZW50IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJXMnIGlzIG5vdCBhbiBhcmNoaXZlIHBhcnRcbiIKK21zZ3N0ciAiZmFpbCBgJXMnIHBvbGUgYXJoaWl2aSBvc2FcbiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHV0dGluZyBwYWNrYWdlICVzIHRvZ2V0aGVyIGZyb20gJWQgcGFydDogIgorbXNnaWRfcGx1cmFsICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0czogIgorbXNnc3RyWzBdICIiCittc2dzdHJbMV0gIiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gb3V0cHV0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgInbDpGxqdW5kZmFpbGkgYCUuMjUwcycgcG9sZSB2w7VpbWFsaWsgYXZhZGEiCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjU3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byAocmUpb3BlbiBpbnB1dCBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NTgKKyMsIGZ1enp5CisjfCBtc2dpZCAiU2tpcHBpbmcgZGVzZWxlY3RlZCBwYWNrYWdlICVzLlxuIgorbXNnaWQgInNraXBwaW5nIHNwbGl0IHBhY2thZ2UgaGVhZGVyIgorbXNnc3RyICJWYWxpbWF0YSBwYWtpICVzIHZhaGVsZWrDpHRtaW5lLlxuIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1OQorIywgZnV6enkKKyN8IG1zZ2lkICJtaXNzaW5nIHBhY2thZ2UiCittc2dpZCAic3BsaXQgcGFja2FnZSBwYXJ0IgorbXNnc3RyICJwYWtrIHB1dWR1YiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NjkgZHBrZy1zcGxpdC9zcGxpdC5jOjIzNworIywgYy1mb3JtYXQKK21zZ2lkICJkb25lXG4iCittc2dzdHIgInZhbG1pc1xuIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo4NQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlcyBgJS4yNTBzJyBhbmQgYCUuMjUwcycgYXJlIG5vdCBwYXJ0cyBvZiB0aGUgc2FtZSBmaWxlIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjkwCisjLCBjLWZvcm1hdAorbXNnaWQgInRoZXJlIGFyZSBzZXZlcmFsIHZlcnNpb25zIG9mIHBhcnQgJWQgLSBhdCBsZWFzdCBgJS4yNTBzJyBhbmQgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6MTI4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhcnQgJWQgaXMgbWlzc2luZyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo0NworIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIHNwbGl0L2pvaW4gdG9vbDsgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo0OQorIywgYy1mb3JtYXQKK21zZ2lkICJDb3B5cmlnaHQgKEMpIDE5OTQtMTk5NiBJYW4gSmFja3Nvbi5cbiIKK21zZ3N0ciAiQXV0b3Jpw7VpZ3VzZWQgKEMpIDE5OTQtMTk5NiBJYW4gSmFja3Nvbi5cbiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6NjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLXN8LS1zcGxpdCA8ZmlsZT4gWzxwcmVmaXg+XSAgICAgU3BsaXQgYW4gYXJjaGl2ZS5cbiIKKyIgIC1qfC0tam9pbiA8cGFydD4gPHBhcnQ+IC4uLiAgICAgIEpvaW4gcGFydHMgdG9nZXRoZXIuXG4iCisiICAtSXwtLWluZm8gPHBhcnQ+IC4uLiAgICAgICAgICAgICBEaXNwbGF5IGluZm8gYWJvdXQgYSBwYXJ0LlxuIgorIiAgLWF8LS1hdXRvIC1vIDxjb21wbGV0ZT4gPHBhcnQ+ICAgQXV0by1hY2N1bXVsYXRlIHBhcnRzLlxuIgorIiAgLWx8LS1saXN0cSAgICAgICAgICAgICAgICAgICAgICAgTGlzdCB1bm1hdGNoZWQgcGllY2VzLlxuIgorIiAgLWR8LS1kaXNjYXJkIFs8ZmlsZW5hbWU+IC4uLl0gICAgRGlzY2FyZCB1bm1hdGNoZWQgcGllY2VzLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjgyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1kZXBvdGRpciA8ZGlyZWN0b3J5PiAgICAgICAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMvJXMuXG4iCisiICAtU3wtLXBhcnRzaXplIDxzaXplPiAgICAgICAgICAgICBJbiBLaUIsIGZvciAtcyAoZGVmYXVsdCBpcyA0NTApLlxuIgorIiAgLW98LS1vdXRwdXQgPGZpbGU+ICAgICAgICAgICAgICAgRmlsZW5hbWUsIGZvciAtaiAoZGVmYXVsdCBpc1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGFja2FnZT5fPHZlcnNpb24+XzxhcmNoPi5kZWIpLlxuIgorIiAgLVF8LS1ucHF1aWV0ICAgICAgICAgICAgICAgICAgICAgQmUgcXVpZXQgd2hlbiAtYSBpcyBub3QgYSBwYXJ0LlxuIgorIiAgLS1tc2RvcyAgICAgICAgICAgICAgICAgICAgICAgICAgR2VuZXJhdGUgOC4zIGZpbGVuYW1lcy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo5MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiRXhpdCBzdGF0dXM6XG4iCisiICAwID0gb2tcbiIKKyIgIDEgPSB3aXRoIC0tYXV0bywgZmlsZSBpcyBub3QgYSBwYXJ0XG4iCisiICAyID0gdHJvdWJsZVxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjEwMworbXNnaWQgIlR5cGUgZHBrZy1zcGxpdCAtLWhlbHAgZm9yIGhlbHAuIgorbXNnc3RyICJBYml0ZWFiZSBqYW9rcyBzaXNlc3RhIGRwa2ctc3BsaXQgLS1oZWxwLiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6MTE1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGZpbGUgaW4gJS4yNTBzIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjEyNgorbXNnaWQgInBhcnQgc2l6ZSBpcyBmYXIgdG9vIGxhcmdlIG9yIGlzIG5vdCBwb3NpdGl2ZSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMzAKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFydCBzaXplIG11c3QgYmUgYXQgbGVhc3QgJWQgS2lCICh0byBhbGxvdyBmb3IgaGVhZGVyKSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgZGVwb3QgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxMzQKK21zZ2lkICItLWF1dG8gcmVxdWlyZXMgdGhlIHVzZSBvZiB0aGUgLS1vdXRwdXQgb3B0aW9uIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxMzYKK21zZ2lkICItLWF1dG8gcmVxdWlyZXMgZXhhY3RseSBvbmUgcGFydCBmaWxlIGFyZ3VtZW50IgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxNDAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxNDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiRmlsZSBgJS4yNTBzJyBpcyBub3QgcGFydCBvZiBhIG11bHRpcGFydCBhcmNoaXZlLlxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlb3BlbiBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE4MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBuZXcgZGVwb3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTg0Cittc2dpZCAiZXh0cmFjdGluZyBzcGxpdCBwYXJ0IgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbmFtZSBuZXcgZGVwb3QgZmlsZSBgJS4yNTBzJyB0byBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTk2CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhcnQgJWQgb2YgcGFja2FnZSAlcyBmaWxlZCAoc3RpbGwgd2FudCAiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjIwMAorbXNnaWQgIiBhbmQgIgorbXNnc3RyICIgamEgIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjE0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkZWxldGUgdXNlZC11cCBkZXBvdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyMzUKK21zZ2lkICJKdW5rIGZpbGVzIGxlZnQgYXJvdW5kIGluIHRoZSBkZXBvdCBkaXJlY3Rvcnk6XG4iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI0MCBkcGtnLXNwbGl0L3F1ZXVlLmM6MjY5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNDMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiAlcyAoJWx1IGJ5dGVzKVxuIgorbXNnaWQgIiAlcyAoJWpkIGJ5dGVzKVxuIgorbXNnc3RyICIgJXMgKCVsdSBiYWl0aSlcbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI0NQorIywgYy1mb3JtYXQKK21zZ2lkICIgJXMgKG5vdCBhIHBsYWluIGZpbGUpXG4iCittc2dzdHIgIiAlcyAocG9sZSBsaWh0ZmFpbClcbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI1MAorbXNnaWQgIlBhY2thZ2VzIG5vdCB5ZXQgcmVhc3NlbWJsZWQ6XG4iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI1OAorIywgYy1mb3JtYXQKK21zZ2lkICIgUGFja2FnZSAlczogcGFydChzKSAiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI3MQorIywgYy1mb3JtYXQKK21zZ2lkICJwYXJ0IGZpbGUgYCUuMjUwcycgaXMgbm90IGEgcGxhaW4gZmlsZSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6Mjc4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIodG90YWwgJWx1IGJ5dGVzKVxuIgorbXNnaWQgIih0b3RhbCAlamQgYnl0ZXMpXG4iCittc2dzdHIgIihrb2trdSAlbHUgYmFpdGkpXG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzozMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRpc2NhcmQgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjMwNQorIywgYy1mb3JtYXQKK21zZ2lkICJEZWxldGVkICVzLlxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzo3MCBkcGtnLXNwbGl0L3NwbGl0LmM6NzYgZHBrZy1zcGxpdC9zcGxpdC5jOjgxCittc2dpZCAicGFja2FnZSBmaWVsZCB2YWx1ZSBleHRyYWN0aW9uIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxMzEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gc291cmNlIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImzDpGh0ZWZhaWxpIGAlLjI1MHMnIHBvbGUgdsO1aW1hbGlrIGF2YWRhIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTMzCittc2dpZCAidW5hYmxlIHRvIGZzdGF0IHNvdXJjZSBmaWxlIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxMzUKKyMsIGMtZm9ybWF0Cittc2dpZCAic291cmNlIGZpbGUgYCUuMjUwcycgbm90IGEgcGxhaW4gZmlsZSIKK21zZ3N0ciAibMOkaHRlZmFpbCBgJS4yNTBzJyBwb2xlIGxpaHRmYWlsIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTUzCisjLCBjLWZvcm1hdAorbXNnaWQgIlNwbGl0dGluZyBwYWNrYWdlICVzIGludG8gJWQgcGFydDogIgorbXNnaWRfcGx1cmFsICJTcGxpdHRpbmcgcGFja2FnZSAlcyBpbnRvICVkIHBhcnRzOiAiCittc2dzdHJbMF0gIiIKK21zZ3N0clsxXSAiIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTkzCittc2dpZCAiIgorIkhlYWRlciBpcyB0b28gbG9uZywgbWFraW5nIHBhcnQgdG9vIGxvbmcuIFlvdXIgcGFja2FnZSBuYW1lIG9yIHZlcnNpb25cbiIKKyJudW1iZXJzIG11c3QgYmUgZXh0cmFvcmRpbmFyaWx5IGxvbmcsIG9yIHNvbWV0aGluZy4gR2l2aW5nIHVwLlxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoyNDkKK21zZ2lkICItLXNwbGl0IG5lZWRzIGEgc291cmNlIGZpbGVuYW1lIGFyZ3VtZW50IgorbXNnc3RyICItLXNwbGl0IHZhamFiIGFyZ3VtZW5kaWtzIGzDpGh0ZWZhaWxpIG5pbWUiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoyNTIKK21zZ2lkICItLXNwbGl0IHRha2VzIGF0IG1vc3QgYSBzb3VyY2UgZmlsZW5hbWUgYW5kIGRlc3RpbmF0aW9uIHByZWZpeCIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6ODQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJcbiIKKyN8ICJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisjfCAiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi4iCittc2dpZCAiIgorIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAtMjAwMiBXaWNoZXJ0IEFra2VybWFuLlxuIgorIkNvcHlyaWdodCAoQykgMjAwOS0yMDEwIFJhcGhhZWwgSGVydHpvZy5cbiIKK21zZ3N0ciAiIgorIlxuIgorIkF1dG9yacO1aWd1c2VkIChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorIkF1dG9yacO1aWd1c2VkIChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLS1pbnN0YWxsIDxsaW5rPiA8bmFtZT4gPHBhdGg+IDxwcmlvcml0eT5cbiIKKyIgICAgWy0tc2xhdmUgPGxpbms+IDxuYW1lPiA8cGF0aD5dIC4uLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGFkZCBhIGdyb3VwIG9mIGFsdGVybmF0aXZlcyB0byB0aGUgc3lzdGVtLlxuIgorIiAgLS1yZW1vdmUgPG5hbWU+IDxwYXRoPiAgIHJlbW92ZSA8cGF0aD4gZnJvbSB0aGUgPG5hbWU+IGdyb3VwIGFsdGVybmF0aXZlLlxuIgorIiAgLS1yZW1vdmUtYWxsIDxuYW1lPiAgICAgIHJlbW92ZSA8bmFtZT4gZ3JvdXAgZnJvbSB0aGUgYWx0ZXJuYXRpdmVzICIKKyJzeXN0ZW0uXG4iCisiICAtLWF1dG8gPG5hbWU+ICAgICAgICAgICAgc3dpdGNoIHRoZSBtYXN0ZXIgbGluayA8bmFtZT4gdG8gYXV0b21hdGljIG1vZGUuXG4iCisiICAtLWRpc3BsYXkgPG5hbWU+ICAgICAgICAgZGlzcGxheSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgPG5hbWU+IGdyb3VwLlxuIgorIiAgLS1xdWVyeSA8bmFtZT4gICAgICAgICAgIG1hY2hpbmUgcGFyc2VhYmxlIHZlcnNpb24gb2YgLS1kaXNwbGF5IDxuYW1lPi5cbiIKKyIgIC0tbGlzdCA8bmFtZT4gICAgICAgICAgICBkaXNwbGF5IGFsbCB0YXJnZXRzIG9mIHRoZSA8bmFtZT4gZ3JvdXAuXG4iCisiICAtLWdldC1zZWxlY3Rpb25zICAgICAgICAgbGlzdCBtYXN0ZXIgYWx0ZXJuYXRpdmUgbmFtZXMgYW5kIHRoZWlyIHN0YXR1cy5cbiIKKyIgIC0tc2V0LXNlbGVjdGlvbnMgICAgICAgICByZWFkIGFsdGVybmF0aXZlIHN0YXR1cyBmcm9tIHN0YW5kYXJkIGlucHV0LlxuIgorIiAgLS1jb25maWcgPG5hbWU+ICAgICAgICAgIHNob3cgYWx0ZXJuYXRpdmVzIGZvciB0aGUgPG5hbWU+IGdyb3VwIGFuZCBhc2sgIgorInRoZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzZXIgdG8gc2VsZWN0IHdoaWNoIG9uZSB0byB1c2UuXG4iCisiICAtLXNldCA8bmFtZT4gPHBhdGg+ICAgICAgc2V0IDxwYXRoPiBhcyBhbHRlcm5hdGl2ZSBmb3IgPG5hbWU+LlxuIgorIiAgLS1hbGwgICAgICAgICAgICAgICAgICAgIGNhbGwgLS1jb25maWcgb24gYWxsIGFsdGVybmF0aXZlcy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyI8bGluaz4gaXMgdGhlIHN5bWxpbmsgcG9pbnRpbmcgdG8gJXMvPG5hbWU+LlxuIgorIiAgKGUuZy4gL3Vzci9iaW4vcGFnZXIpXG4iCisiPG5hbWU+IGlzIHRoZSBtYXN0ZXIgbmFtZSBmb3IgdGhpcyBsaW5rIGdyb3VwLlxuIgorIiAgKGUuZy4gcGFnZXIpXG4iCisiPHBhdGg+IGlzIHRoZSBsb2NhdGlvbiBvZiBvbmUgb2YgdGhlIGFsdGVybmF0aXZlIHRhcmdldCBmaWxlcy5cbiIKKyIgIChlLmcuIC91c3IvYmluL2xlc3MpXG4iCisiPHByaW9yaXR5PiBpcyBhbiBpbnRlZ2VyOyBvcHRpb25zIHdpdGggaGlnaGVyIG51bWJlcnMgaGF2ZSBoaWdoZXIgcHJpb3JpdHkgIgorImluXG4iCisiICBhdXRvbWF0aWMgbW9kZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTMxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hbHRkaXIgPGRpcmVjdG9yeT4gICAgIGNoYW5nZSB0aGUgYWx0ZXJuYXRpdmVzIGRpcmVjdG9yeS5cbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICBjaGFuZ2UgdGhlIGFkbWluaXN0cmF0aXZlIGRpcmVjdG9yeS5cbiIKKyIgIC0tbG9nIDxmaWxlPiAgICAgICAgICAgICBjaGFuZ2UgdGhlIGxvZyBmaWxlLlxuIgorIiAgLS1mb3JjZSAgICAgICAgICAgICAgICAgIGFsbG93IHJlcGxhY2luZyBmaWxlcyB3aXRoIGFsdGVybmF0aXZlIGxpbmtzLlxuIgorIiAgLS1za2lwLWF1dG8gICAgICAgICAgICAgIHNraXAgcHJvbXB0IGZvciBhbHRlcm5hdGl2ZXMgY29ycmVjdGx5ICIKKyJjb25maWd1cmVkXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gYXV0b21hdGljIG1vZGUgKHJlbGV2YW50IGZvciAtLWNvbmZpZyBvbmx5KVxuIgorIiAgLS12ZXJib3NlICAgICAgICAgICAgICAgIHZlcmJvc2Ugb3BlcmF0aW9uLCBtb3JlIG91dHB1dC5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBxdWlldCBvcGVyYXRpb24sIG1pbmltYWwgb3V0cHV0LlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNjMKKyMsIGZ1enp5CisjfCBtc2dpZCAicGFyc2UgZXJyb3IiCittc2dpZCAiZXJyb3IiCittc2dzdHIgInBhcnNpbWlzdmlnYSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE5MworbXNnaWQgIndhcm5pbmciCittc2dzdHIgImhvaWF0dXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzozNTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInR3byBjb21tYW5kcyBzcGVjaWZpZWQ6ICVzIGFuZCAtLSVzIgorbXNnaWQgInR3byBjb21tYW5kcyBzcGVjaWZpZWQ6IC0tJXMgYW5kIC0tJXMiCittc2dzdHIgImtvcnJhZ2Egb24gbcOkw6RyYXR1ZCBrYWtzIGvDpHNrdTogJXMgamEgLS0lcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjM4NworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiY2Fubm90IG9wZW4gZGl2ZXJzaW9uczogJXMiCittc2dpZCAiY2Fubm90IGFwcGVuZCB0byAnJXMnIgorbXNnc3RyICJkaXZlcnNpb29uZSBwb2xlIHbDtWltYWxpayBhdmFkYTogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo1NTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byByZW1vdmUgJXM6ICVzIgorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgJyVzJyIKK21zZ3N0ciAiZmFpbGkgJXMgcG9sZSB2w7VpbWFsaWsgZWVtYWxkYWRhOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGZpbGUgd2hpbGUgdHJ5aW5nIHRvIHJlYWQgJXMiCittc2dzdHIgIm9vdGFtYXR1ICVzIGzDtXBwIGZhaWxpcyAlLjI1NXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTEzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ3aGlsZSByZWFkaW5nICVzOiAlcyIKK21zZ3N0ciAiZmFpbGkgYCVzJyBwb2xlIHbDtWltYWxpayBsdWdlZGE6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTExOQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAibGluZSBub3QgdGVybWluYXRlZCB3aGlsZSB0cnlpbmcgdG8gcmVhZCAlcyIKK21zZ3N0ciAib290YW1hdHUgJXMgbMO1cHAgZmFpbGlzICUuMjU1cyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMzcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzIGNvcnJ1cHQ6ICVzIgorbXNnc3RyICJzaXNlbWluZSB2aWdhOiAlcyBvbiByaWt1dHVkOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAibmV3bGluZXMgcHJvaGliaXRlZCBpbiB1cGRhdGUtYWx0ZXJuYXRpdmVzIGZpbGVzICglcykiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNjMKK21zZ2lkICJzbGF2ZSBuYW1lIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTcxIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDA1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJkdXBsaWNhdGUgdmFsdWUgZm9yIGAlcycgZmllbGQiCittc2dpZCAiZHVwbGljYXRlIHNsYXZlIG5hbWUgJXMiCittc2dzdHIgImtvcmR1diB2w6RsamEgYCVzJyB2w6TDpHJ0dXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTc0Cittc2dpZCAic2xhdmUgbGluayIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE3OAorIywgYy1mb3JtYXQKK21zZ2lkICJzbGF2ZSBsaW5rIHNhbWUgYXMgbWFpbiBsaW5rICVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTg1IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDEyCisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBzbGF2ZSBsaW5rICVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjA0Cittc2dpZCAibWFzdGVyIGZpbGUiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHBhdGggJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImFsdGVybmF0aXZlICVzIChwYXJ0IG9mIGxpbmsgZ3JvdXAgJXMpIGRvZXNuJ3QgZXhpc3QuIFJlbW92aW5nIGZyb20gbGlzdCBvZiAiCisiYWx0ZXJuYXRpdmVzLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIyOSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI0MAorIywgZnV6enkKK21zZ2lkICJwcmlvcml0eSIKK21zZ3N0ciAiJXMgLSB0w6RodHN1cyAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMzIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyNDkKK21zZ2lkICJzbGF2ZSBmaWxlIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjQ0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJwcmlvcml0eSBvZiAlczogJXMiCittc2dzdHIgIiVzIC0gdMOkaHRzdXMgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjk3Cittc2dpZCAic3RhdHVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjk5Cittc2dpZCAiaW52YWxpZCBzdGF0dXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzMDQKK21zZ2lkICJtYXN0ZXIgbGluayIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTM0OAorIywgYy1mb3JtYXQKK21zZ2lkICJkaXNjYXJkaW5nIG9ic29sZXRlIHNsYXZlIGxpbmsgJXMgKCVzKS4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MDIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NjkKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjM4Cittc2dpZCAiYXV0byBtb2RlIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTAyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTc4CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYzOQorbXNnaWQgIm1hbnVhbCBtb2RlIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTA1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIgIGxpbmsgY3VycmVudGx5IHBvaW50cyB0byAlcyIKK21zZ3N0ciAiIHZpaXQgb3N1dGFiIGhldGtlbCBmYWlsaWxlICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwOAorIywgZnV6enkKK21zZ2lkICIgIGxpbmsgY3VycmVudGx5IGFic2VudCIKK21zZ3N0ciAiIHZpaXQgb3N1dGFiIGhldGtlbCBmYWlsaWxlICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUxMgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiJXMgLSBwcmlvcml0eSAlcyIKK21zZ2lkICIlcyAtIHByaW9yaXR5ICVkIgorbXNnc3RyICIlcyAtIHTDpGh0c3VzICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUxNQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiICBzbGF2ZSAlczogJXMiCittc2dzdHIgImZhaWxpICVzIHBvbGUgdsO1aW1hbGlrIHN1bGdlZGE6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUyMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiQ3VycmVudCAnYmVzdCcgdmVyc2lvbiBpcyAnJXMnLiIKK21zZ3N0ciAiS8OkZXNvbGV2YWdhIG9uIGBwYXJpbScgdmVyc2lvb24gJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUyNAorbXNnaWQgIk5vIHZlcnNpb25zIGF2YWlsYWJsZS4iCittc2dzdHIgIlZlcnNpb29uZSBwb2xlIHNhYWRhdmFsLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiVGhlcmUgaXMgJWQgY2hvaWNlIGZvciB0aGUgYWx0ZXJuYXRpdmUgJXMgKHByb3ZpZGluZyAlcykuIgorbXNnaWRfcGx1cmFsICJUaGVyZSBhcmUgJWQgY2hvaWNlcyBmb3IgdGhlIGFsdGVybmF0aXZlICVzIChwcm92aWRpbmcgJXMpLiIKK21zZ3N0clswXSAiIgorbXNnc3RyWzFdICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYwCisjLCBmdXp6eQorbXNnaWQgIlNlbGVjdGlvbiIKK21zZ3N0ciAiS2lyamVsZHVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2MQorbXNnaWQgIlBhdGgiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NjEKK21zZ2lkICJQcmlvcml0eSIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2MQorbXNnaWQgIlN0YXR1cyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU4MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiUHJlc3MgZW50ZXIgdG8ga2VlcCB0aGUgY3VycmVudCBjaG9pY2VbKl0sIG9yIHR5cGUgc2VsZWN0aW9uIG51bWJlcjogIgorbXNnc3RyICIiCisiVmFpa2ltaXNpWypdIHZhbGlrdSBqYW9rcyB2YWp1dGEgZW50ZXIsIG9tYSB2YWxpa3UgdGVnZW1pc2VrcyBzaXNlc3RhICIKKyJudW1iZXI6ICIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3MjEKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IHJlcGxhY2luZyAlcyB3aXRoIGEgbGluay4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3NjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2FuJ3QgaW5zdGFsbCB1bmtub3duIGNob2ljZSAlcyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTc4MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisic2tpcCBjcmVhdGlvbiBvZiAlcyBiZWNhdXNlIGFzc29jaWF0ZWQgZmlsZSAlcyAob2YgbGluayBncm91cCAlcykgZG9lc24ndCAiCisiZXhpc3QuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNzkwCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vdCByZW1vdmluZyAlcyBzaW5jZSBpdCdzIG5vdCBhIHN5bWxpbmsuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDQxIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDQ3CisjLCBjLWZvcm1hdAorbXNnaWQgIkNhbGwgJXMuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDUxCisjLCBjLWZvcm1hdAorbXNnaWQgIkFsdGVybmF0aXZlICVzIHVuY2hhbmdlZCBiZWNhdXNlIGNob2ljZSAlcyBpcyBub3QgYXZhaWxhYmxlLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA1NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiU2tpcCB1bmtub3duIGFsdGVybmF0aXZlICVzLiIKK21zZ3N0ciAiQWx0ZXJuYXRpaXZpIGAlcycgcG9sZSB2w7VpbWFsaWsgbGVpZGEuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA3NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAibGluZSB0b28gbG9uZyBvciBub3QgdGVybWluYXRlZCB3aGlsZSB0cnlpbmcgdG8gcmVhZCAlcyIKK21zZ3N0ciAib290YW1hdHUgJXMgbMO1cHAgZmFpbGlzICUuMjU1cyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwOTAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxMDMKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTEzCisjLCBjLWZvcm1hdAorbXNnaWQgIlNraXAgaW52YWxpZCBsaW5lOiAlcyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjEzMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAicmVuYW1pbmcgJXMgbGluayBmcm9tICVzIHRvICVzLiIKK21zZ3N0ciAiVmlpZGEgJXMgw7xtYmVybmltZXRhbWluZSBuaW1lc3QgJXMgbmltZWdhICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxNzMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInJlbmFtaW5nICVzIHNsYXZlIGxpbmsgZnJvbSAlcyB0byAlcy4iCittc2dzdHIgIlZpaWRhICVzIMO8bWJlcm5pbWV0YW1pbmUgbmltZXN0ICVzIG5pbWVnYSAlcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTg5CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIG5hbWUgKCVzKSBtdXN0IG5vdCBjb250YWluICcvJyBhbmQgc3BhY2VzLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE5MworIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBsaW5rIGlzIG5vdCBhYnNvbHV0ZSBhcyBpdCBzaG91bGQgYmU6ICVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTk3CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIHBhdGggaXMgbm90IGFic29sdXRlIGFzIGl0IHNob3VsZCBiZTogJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgbWFzdGVyOiBpdCBpcyBhIHNsYXZlIG9mICVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjMyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjY3CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIGxpbmsgJXMgaXMgYWxyZWFkeSBtYW5hZ2VkIGJ5ICVzLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI0MQorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBwYXRoICVzIGRvZXNuJ3QgZXhpc3QuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjU0CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlICVzIGNhbid0IGJlIHNsYXZlIG9mICVzOiBpdCBpcyBhIG1hc3RlciBhbHRlcm5hdGl2ZS4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgc2xhdmUgb2YgJXM6IGl0IGlzIGEgc2xhdmUgb2YgJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgbGluayAlcyBpcyBhbHJlYWR5IG1hbmFnZWQgYnkgJXMgKHNsYXZlIG9mICVzKS4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBhcmd1bWVudCBgJXMnIgorbXNnc3RyICJ0dW5kbWF0dSBhcmd1bWVudCBgJXMnIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM0MworbXNnaWQgIi0taW5zdGFsbCBuZWVkcyA8bGluaz4gPG5hbWU+IDxwYXRoPiA8cHJpb3JpdHk+IgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzQ2IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzk3Cittc2dpZCAiPGxpbms+IGFuZCA8cGF0aD4gY2FuJ3QgYmUgdGhlIHNhbWUiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNDkKK21zZ2lkICJwcmlvcml0eSBtdXN0IGJlIGFuIGludGVnZXIiCittc2dzdHIgInTDpGh0c3VzIHBlYWIgb2xlbWEgbcOkw6RyYXR1ZCB0w6Rpc2FydnVnYSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyA8bmFtZT4gPHBhdGg+IgorbXNnc3RyICItLSVzIHZhamFiIGFyZ3VtZW50ZSA8bmltaT4gPHJhZGE+IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM3NgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIDxuYW1lPiIKK21zZ3N0ciAiLS0lcyB2YWphYiBhcmd1bWVudGkgPG5pbWk+IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM4OAorbXNnaWQgIi0tc2xhdmUgb25seSBhbGxvd2VkIHdpdGggLS1pbnN0YWxsIgorbXNnc3RyICItLXNsYXZlIG9uIGx1YmF0dWQgYWludWx0IGtvb3MgdsO1dG1lZ2EgLS1pbnN0YWxsIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM5MAorbXNnaWQgIi0tc2xhdmUgbmVlZHMgPGxpbms+IDxuYW1lPiA8cGF0aD4iCittc2dzdHIgIi0tc2xhdmUgdmFqYWIgYXJndW1lbnRlIDx2aWl0PiA8bmltaT4gPHJhZGE+IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM5OQorIywgYy1mb3JtYXQKK21zZ2lkICJuYW1lICVzIGlzIGJvdGggcHJpbWFyeSBhbmQgc2xhdmUiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAibGluayAlcyBpcyBib3RoIHByaW1hcnkgYW5kIHNsYXZlIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDIyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGEgPGZpbGU+IGFyZ3VtZW50IgorbXNnc3RyICItLSVzIHZhamFiIGFpbnVsdCDDvGh0ZSBhcmd1bWVudGkiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDQ4CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gb3B0aW9uIGAlcyciCittc2dzdHIgInR1bmRtYXR1IHbDtXRpIGAlcyciCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDUzCisjLCBmdXp6eQorbXNnaWQgIiIKKyJuZWVkIC0tZGlzcGxheSwgLS1xdWVyeSwgLS1saXN0LCAtLWdldC1zZWxlY3Rpb25zLCAtLWNvbmZpZywgLS1zZXQsIC0tc2V0LSIKKyJzZWxlY3Rpb25zLCAtLWluc3RhbGwsIC0tcmVtb3ZlLCAtLWFsbCwgLS1yZW1vdmUtYWxsIG9yIC0tYXV0byIKK21zZ3N0ciAiIgorInZhamEgb24gdsO1dGl0IC0tZGlzcGxheSwgLS1jb25maWcsIC0tc2V0LCAtLWluc3RhbGwsIC0tcmVtb3ZlLCAtLWFsbCwgLS0iCisicmVtb3ZlLWFsbCB2w7VpIC0tYXV0byIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0OTAKKyMsIGZ1enp5CisjfCBtc2dpZCAicmVhZCBlcnJvciBvbiBzdGFuZGFyZCBpbnB1dCIKK21zZ2lkICI8c3RhbmRhcmQgaW5wdXQ+IgorbXNnc3RyICJ2aWdhIHN0YW5kYXJkc2lzZW5kaXN0IGx1Z2VtaXNlbCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MDAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MDMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIm5vIGFsdGVybmF0aXZlcyBmb3IgJXMuIgorbXNnc3RyICIlcyBqYW9rcyBwb2xlIGFsdGVybmF0aWl2ZS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTMwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzLyVzIGlzIGRhbmdsaW5nLCBpdCB3aWxsIGJlIHVwZGF0ZWQgd2l0aCBiZXN0IGNob2ljZS4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzLyVzIGhhcyBiZWVuIGNoYW5nZWQgKG1hbnVhbGx5IG9yIGJ5IGEgc2NyaXB0KS4gU3dpdGNoaW5nIHRvIG1hbnVhbCAiCisidXBkYXRlcyBvbmx5LiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU0MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAic2V0dGluZyB1cCBhdXRvbWF0aWMgc2VsZWN0aW9uIG9mICVzLiIKK21zZ3N0ciAiQXV0b21hYXRzZSB2YWxpa3Ugc2VhZG1pbmUgJXMgamFva3MuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU1MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgZm9yICVzIG5vdCByZWdpc3RlcmVkLCBub3Qgc2V0dGluZy4iCittc2dzdHIgIkFsdGVybmF0aWl2aSAlcyBwb2xlICVzIGphb2tzIHJlZ2lzdHJlZXJpdHVkLCBlaSBlZW1hbGRhLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NTcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NjMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIlRoZXJlIGlzIG5vIHByb2dyYW0gd2hpY2ggcHJvdmlkZXMgJXMuIgorbXNnc3RyICIiCisiU8O8c3RlZW1pcyBwb2xlIMO8aHRlZ2kgcHJvZ3JhbW1pLCBtaXMgdGFnYWtzICVzLlxuIgorIlBvbGUgbWlkYWdpIHNlYWRpc3RhZGEuXG4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTY1IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTc1Cittc2dpZCAiTm90aGluZyB0byBjb25maWd1cmUuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTczCisjLCBjLWZvcm1hdAorbXNnaWQgIlRoZXJlIGlzIG9ubHkgb25lIGFsdGVybmF0aXZlIGluIGxpbmsgZ3JvdXAgJXM6ICVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTg0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBmb3IgJXMgbm90IHJlZ2lzdGVyZWQsIG5vdCByZW1vdmluZy4iCittc2dzdHIgIkFsdGVybmF0aWl2aSAlcyBwb2xlICVzIGphb2tzIHJlZ2lzdHJlZXJpdHVkLCBlaSBlZW1hbGRhLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1OTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInJlbW92aW5nIG1hbnVhbGx5IHNlbGVjdGVkIGFsdGVybmF0aXZlIC0gc3dpdGNoaW5nICVzIHRvIGF1dG8gbW9kZSIKK21zZ3N0ciAiIgorIkvDpHNpdHNpIHZhbGl0dWQgYWx0ZXJuYXRpaXZpIGVlbWFsZGFtaW5lIC0gbMO8bGl0dW1pbmUgYXV0b21hYXRyZcW+aWltaWxlIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYxNworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiYXV0b21hdGljIHVwZGF0ZXMgb2YgJXMvJXMgYXJlIGRpc2FibGVkLCBsZWF2aW5nIGl0IGFsb25lLiIKK21zZ3N0ciAiQXV0b21hYXRzZWQgdXVlbmR1c2VkIG9uICVzIGphb2tzIGtlZWxhdHVkLCBqw6R0YW4gbXV1dG1hdGEuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYxOQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidG8gcmV0dXJuIHRvIGF1dG9tYXRpYyB1cGRhdGVzIHVzZSAnJXMgLS1hdXRvICVzJy4iCittc2dzdHIgIiIKKyJBdXRvbWFhdHNldGVsZSB1dWVuZHVzdGVsZSB0YWdhc2lsw7xsaXR1bWlzZWtzIGthc3V0YSBgdXBkYXRlLWFsdGVybmF0aXZlcyAtLSIKKyJhdXRvICVzJy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjM2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1c2luZyAlcyB0byBwcm92aWRlICVzICglcykgaW4gJXMuIgorbXNnc3RyICJgJXMnIGthc3V0YW1pbmUgYCVzJyB0YWdhbWlzZWtzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImZvcmNpbmcgcmVpbnN0YWxsYXRpb24gb2YgYWx0ZXJuYXRpdmUgJXMgYmVjYXVzZSBsaW5rIGdyb3VwICVzIGlzIGJyb2tlbi4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY3VycmVudCBhbHRlcm5hdGl2ZSAlcyBpcyB1bmtub3duLCBzd2l0Y2hpbmcgdG8gJXMgZm9yIGxpbmsgZ3JvdXAgJXMuIgorbXNnc3RyICIiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgInVuYWJsZSB0byByZWFkICVzOiAlcyIKKyN+IG1zZ2lkICJjYW5ub3Qgc3RhdCAlczogJXMiCisjfiBtc2dzdHIgImZhaWxpIGAlcycgcG9sZSB2w7VpbWFsaWsgbHVnZWRhOiAlcyIKKworIywgZnV6enkKKyN+fCBtc2dpZCAiJXM6IGNvcHlpbmcgJXMgdG8gJXMgZmFpbGVkLCBnaXZpbmcgdXA6ICVzIgorI34gbXNnaWQgInNjYW4gb2YgJXMgZmFpbGVkOiAlcyIKKyN+IG1zZ3N0ciAiJXM6IHTDtXJnZSAlcyBrb3BlZXJpbWlzZWwga2F0YWxvb2dpICVzLCBhbm5hbiBhbGxhOiAlcyIKKworIywgZnV6enkKKyN+fCBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgJXMiCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWN1dGUgJXM6ICVzIgorI34gbXNnc3RyICJ0w7VyZ2kgJXMga8OkaXZpdGFtaXNlbCIKKworI34gbXNnaWQgInVuYWJsZSB0byBtYWtlICVzIGEgc3ltbGluayB0byAlczogJXMiCisjfiBtc2dzdHIgIm5pbWV2aWl0YSAlcyBwb2xlIHbDtWltYWxpayAlcyBwZWFsZSB2aWl0YW1hIHBhbm5hOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsICVzIGFzICVzOiAlcyIKKyN+IG1zZ3N0ciAiZmFpbGkgJXMgcG9sZSB2w7VpbWFsaWsgYXN1a29oYWxlICVzIHBhaWdhbGRhZGE6ICVzIgorCisjLCBmdXp6eQorI34gbXNnaWQgIndoaWxlIHdyaXRpbmcgJXM6ICVzIgorI34gbXNnc3RyICJ2aWdhIHN0YW5kYXJkdsOkbGp1bmRpc3NlIGtpcmp1dGFtaXNlbDogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcmVhZCAlczogJXMiCisjfiBtc2dzdHIgImZhaWxpIGAlcycgcG9sZSB2w7VpbWFsaWsgbHVnZWRhOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byBjbG9zZSAlczogJXMiCisjfiBtc2dzdHIgImZhaWxpICVzIHBvbGUgdsO1aW1hbGlrIHN1bGdlZGE6ICVzIgorCisjLCBmdXp6eQorI358IG1zZ2lkICJ1bmFibGUgdG8gd3JpdGUgJXM6ICVzIgorI34gbXNnaWQgImNhbm5vdCB3cml0ZSAlczogJXMiCisjfiBtc2dzdHIgImZhaWxpICVzIHBvbGUgdsO1aW1hbGlrIGtpcmp1dGFkYTogJXMiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAidW5hYmxlIHRvIHJlbmFtZSBmaWxlICclcycgdG8gJyVzJyIKKyN+IG1zZ3N0ciAibMOkaHRlZmFpbGkgYCUuMjUwcycgcG9sZSB2w7VpbWFsaWsgYXZhZGEiCisKKyN+IG1zZ2lkICJtYWxsb2MgZmFpbGVkICglbGQgYnl0ZXMpIgorI34gbXNnc3RyICJ0w7VyZ2UgbWFsbG9jIGZ1bmt0c2lvb25pcyAoJWxkIGJhaXRpKSIKKworI34gbXNnaWQgInJlYWxsb2MgZmFpbGVkICglbGQgYnl0ZXMpIgorI34gbXNnc3RyICJ0w7VyZ2UgcmVhbGxvYyBmdW5rdHNpb29uaXMgKCVsZCBiYWl0aSkiCisKKyN+IG1zZ2lkICJzaXplICU3ZCBvY2N1cnMgJTVkIHRpbWVzXG4iCisjfiBtc2dzdHIgInN1dXJ1cyAlN2QgZXNpbmViICU1ZCBrb3JkYVxuIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHVubG9jayBkcGtnIHN0YXR1cyBkYXRhYmFzZSIKKyN+IG1zZ3N0ciAiZHBrZyBvbGVrdWFuZG1lYmFhc2kgcG9sZSB2w7VpbWFsaWsgbHVrdXN0IGxhaHRpIHbDtXR0YSIKKworI34gbXNnaWQgInBhcnNlIGVycm9yIgorI34gbXNnc3RyICJwYXJzaW1pc3ZpZ2EiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gd3JpdGUgcGFyc2luZyB3YXJuaW5nIgorI34gbXNnc3RyICJ0w7VyZ2UgcGFyc2ltaXNob2lhdHVzZSBraXJqdXRhbWlzZWwiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBzaGVsbCAoJS4yNTBzKSIKKyN+IG1zZ3N0ciAidMO1cmdlIGtlc3Rwcm9ncmFtbWkga8OkaXZpdGFtaXNlbCAoJS4yNTBzKSIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIHJtIGZvciBjbGVhbnVwIgorI34gbXNnc3RyICJ0w7VyZ2Ugcm0ga8OkaXZpdGFtaXNlbCAocHVoYXN0YW1pc2VrcykiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlY2wgZGVic2lnLXZlcmlmeSIKKyN+IG1zZ3N0ciAidMO1cmdlIGRlYnNpZy12ZXJpZnkga8OkaXZpdGFtaXNlbCAoZXhlY2wpIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgZHBrZy1kZWIgdG8gZXh0cmFjdCBjb250cm9sIGluZm9ybWF0aW9uIgorI34gbXNnc3RyICJ0w7VyZ2UganVodGFuZG1ldGUgdsOkbGphdsO1dG1pc2VrcyBkcGtnLWRlYiBrw6Rpdml0YW1pc2VsIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSBkaXNhcHBlYXJpbmcgY29udHJvbCBpbmZvIGZpbGUgYCUuMjUwcyciCisjfiBtc2dzdHIgImp1aHRhbmRtZXRlIGthZHVudWQgZmFpbGkgYCUuMjUwcycgcG9sZSB2w7VpbWFsaWsga3VzdHV0YWRhIgorCisjfiBtc2dpZCAiZHBrZzogJXMgbm90IGZvdW5kLlxuIgorI34gbXNnc3RyICJkcGtnOiAlcyBlaSBsZWl0dWQuXG4iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBzaCAtYyBtdiBmb28vKiAmYyIKKyN+IG1zZ3N0ciAidMO1cmdlIGBzaCAtYyBtdiBmb28vKiAmYycga8OkaXZpdGFtaXNlbCIKKworI34gbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtICUuMjUwcyBsZW5ndGggY29udGFpbnMgbnVsbHMiCisjfiBtc2dzdHIgImZhaWwgYCUuMjUwcycgb24gcmlrdXR1ZCAtICUuMjUwcyBwaWtrdXMgc2lzYWxkYWIgbnVsbGUiCisKKyN+IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBuZWdhdGl2ZSBtZW1iZXIgbGVuZ3RoICV6aSIKKyN+IG1zZ3N0ciAiZmFpbCBgJS4yNTBzJyBvbiByaWt1dHVkIC0gbmVnYXRpaXZuZSBsaWlrbWUgcGlra3VzICV6aSIKKworI34gbXNnaWQgImZhaWxlZCBnZXR0aW5nIHRoZSBjdXJyZW50IGZpbGUgcG9zaXRpb24iCisjfiBtc2dzdHIgInTDtXJnZSBrw6Rlc29sZXZhcyBmYWlsaXMgYXN1a29odGEgaGFua2ltaXNlbCIKKworI34gbXNnaWQgImZhaWxlZCBzZXR0aW5nIHRoZSBjdXJyZW50IGZpbGUgcG9zaXRpb24iCisjfiBtc2dzdHIgInTDtXJnZSBrw6Rlc29sZXZhcyBmYWlsaXMgYXN1a29odGEgbcOkw6RyYW1pc2VsIgorCisjfiBtc2dpZCAidmVyc2lvbiBudW1iZXIiCisjfiBtc2dzdHIgInZlcnNpb29uaW51bWJlciIKKworIywgZnV6enkKKyN+IG1zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHRlbXBvcmFyeSBkaXJlY3RvcnkiCisjfiBtc2dzdHIgInTDtXJnZSBrYXRhbG9vZ2kgbG9vbWlzZWwiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgImZhaWxlZCB0byBleGVjIGRwa2ctZGViIHRvIGV4dHJhY3QgY29udHJvbCBpbmZvcm1hdGlvbiIKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBkcGtnLWRlYiB0byBleHRyYWN0IGZpZWxkIHZhbHVlIgorI34gbXNnc3RyICJ0w7VyZ2UganVodGFuZG1ldGUgdsOkbGphdsO1dG1pc2VrcyBkcGtnLWRlYiBrw6Rpdml0YW1pc2VsIgorCisjLCBmdXp6eQorI358IG1zZ2lkICJ1bmFibGUgdG8gcmVhZCAlczogJXMiCisjfiBtc2dpZCAidW5hYmxlIHRvIHN0YXQgJXM6ICVzIgorI34gbXNnc3RyICJmYWlsaSBgJXMnIHBvbGUgdsO1aW1hbGlrIGx1Z2VkYTogJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gd3JpdGUgdG8gZ3ppcCAtZGMiCisjfiBtc2dzdHIgInTDtXJnZSBwcm90c2Vzc2lsZSBnemlwIC1kYyBraXJqdXRhbWlzZWwiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gY2xvc2UgZ3ppcCAtZGMiCisjfiBtc2dzdHIgInTDtXJnZSBwcm90c2Vzc2kgZ3ppcCAtZGMgc3VsZ2VtaXNlbCIKKworI34gbXNnaWQgIiIKKyN+ICJcbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisjfiAiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi4iCisjfiBtc2dzdHIgIiIKKyN+ICJcbiIKKyN+ICJBdXRvcmnDtWlndXNlZCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyN+ICJBdXRvcmnDtWlndXNlZCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uIgorCisjfiBtc2dpZCAidHdvIGNvbW1hbmRzIHNwZWNpZmllZDogJXMgYW5kIC0tJXMiCisjfiBtc2dzdHIgImtvcnJhZ2Egb24gbcOkw6RyYXR1ZCBrYWtzIGvDpHNrdTogJXMgamEgLS0lcyIKKworI34gbXNnaWQgIi0tJXMgbmVlZHMgYSBkaXZlcnQtdG8gYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tJXMgdmFqYWIgYXJndW1lbnRpIGRpdmVydC10byIKKworI34gbXNnaWQgIi0tJXMgbmVlZHMgYSA8cGFja2FnZT4gYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tJXMgdmFqYWIgYXJndW1lbnRpIDxwYWtrPiIKKworI34gbXNnaWQgImNhbm5vdCBvcGVuIGRpdmVyc2lvbnM6ICVzIgorI34gbXNnc3RyICJkaXZlcnNpb29uZSBwb2xlIHbDtWltYWxpayBhdmFkYTogJXMiCisKKyN+IG1zZ2lkICJpbnRlcm5hbCBlcnJvciAtIGJhZCBtb2RlIGAlcyciCisjfiBtc2dzdHIgInNpc2VtaW5lIHZpZ2EgLSB2aWdhbmUgcmXFvmlpbSBgJXMnIgorCisjfiBtc2dpZCAiaW5zdGFsbCBuZXcgZGl2ZXJzaW9uczogJXMiCisjfiBtc2dzdHIgInV1dGUgZGl2ZXJzaW9vbmlkZSBwYWlnYWxkYW1pbmU6ICVzIgorCisjfiBtc2dpZCAiaW50ZXJuYWwgZXJyb3I6ICVzIGNvcnJ1cHQ6ICVzIgorI34gbXNnc3RyICJzaXNlbWluZSB2aWdhOiAlcyBvbiByaWt1dHVkOiAlcyIKKworIywgZnV6enkKKyN+IG1zZ2lkICJEZWJpYW4gcmV2aXNpb24iCisjfiBtc2dzdHIgIkRlYmlhbidpICVzIHZlcnNpb29uICVzLlxuIgorCisjfiBtc2dpZCAiZmFpbGVkIGluIGJ1ZmZlcl93cml0ZShmZCkgKCVpLCByZXQ9JWxpKTogJXMiCisjfiBtc2dzdHIgInTDtXJnZSBmdW5rdHNpb29uaXMgYnVmZmVyX3dyaXRlKGZkKSAoJWksIHJldD0lbGkpOiAlcyIKKworI34gbXNnaWQgImVvZiBpbiBidWZmZXJfd3JpdGUoc3RyZWFtKTogJXMiCisjfiBtc2dzdHIgImZhaWxpbMO1cHV0dW5udXMgZnVua3RzaW9vbmlzIGJ1ZmZlcl93cml0ZShzdHJlYW0pOiAlcyIKKworI34gbXNnaWQgImVycm9yIGluIGJ1ZmZlcl93cml0ZShzdHJlYW0pOiAlcyIKKyN+IG1zZ3N0ciAidmlnYSBmdW5rdHNpb29uaXMgYnVmZmVyX3dyaXRlKHN0cmVhbSk6ICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIGluIGJ1ZmZlcl9yZWFkKGZkKTogJXMiCisjfiBtc2dzdHIgInTDtXJnZSBmdW5rdHNpb29uaXMgYnVmZmVyX3JlYWQoZmQpOiAlcyIKKworI34gbXNnaWQgImVycm9yIGluIGJ1ZmZlcl9yZWFkKHN0cmVhbSk6ICVzIgorI34gbXNnc3RyICJ2aWdhIGZ1bmt0c2lvb25pcyBidWZmZXJfcmVhZChzdHJlYW0pOiAlcyIKKworIywgZnV6enkKKyN+IG1zZ2lkICIlcyByZXR1cm5lZCBlcnJvciBleGl0IHN0YXR1cyAlZCIKKyN+IG1zZ3N0ciAiYWxhbXByb3RzZXNzICVzIHRhZ2FzdGFzIGzDtXBldGFtaXNlbCB2ZWFrb29kaSAlZCIKKworIywgZnV6enkKKyN+IG1zZ2lkICIlcyBraWxsZWQgYnkgc2lnbmFsICglcyklcyIKKyN+IG1zZ3N0ciAiYWxhbXByb3RzZXNzICVzIGvDtXJ2YWxkYXRpIHNpZ25hYWxpZ2EgKCVzKSVzIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgdmVyc2lvbiAyIG9yXG4iCisjfiAibGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJcbiIKKyN+ICJTZWUgb24gdmFiYSB0YXJrdmFyYS4gS29wZWVyaW1pc3RpbmdpbXVzdGUgamFva3MgdmFhdGEgR05VIMOcbGRpc3QgIgorI34gIkF2YWxpa2t1XG4iCisjfiAiTGl0c2VudHNpIC0gdmVyc2lvb25pIDIgdsO1aSDDvGtza8O1aWsgbWlsbGlzdCBoaWxpc2VtYXQgdmVyc2lvb25pLiAiCisjfiAiUHJvZ3JhbW1pbFxuIgorI34gInBvbGUgTUlUVEUgTUlOR0lTVUdVU1QgZ2FyYW50aWlkLlxuIgorCisjfiBtc2dpZCAiIgorI34gIlxuIgorI34gIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSB2ZXJzaW9uIDIgb3JcbiIKKyN+ICJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIlxuIgorI34gIlNlZSBvbiB2YWJhIHRhcmt2YXJhLiBLb3BlZXJpbWlzdGluZ2ltdXN0ZSBqYW9rcyB2YWF0YSBHTlUgw5xsZGlzdCAiCisjfiAiQXZhbGlra3VcbiIKKyN+ICJMaXRzZW50c2kgLSB2ZXJzaW9vbmkgMiB2w7VpIMO8a3Nrw7VpayBtaWxsaXN0IGhpbGlzZW1hdCB2ZXJzaW9vbmkuICIKKyN+ICJQcm9ncmFtbWlsXG4iCisjfiAicG9sZSBNSVRURSBNSU5HSVNVR1VTVCBnYXJhbnRpaWQuXG4iCisKKyN+IG1zZ2lkICIlczogZmFpbGVkIHRvIGV4ZWMgJyVzICVzJyIKKyN+IG1zZ3N0ciAiJXM6IHTDtXJnZSAnJXMgJXMnIGvDpHZpdGFtaXNlbCIKKworI34gbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIGVycm9yOiByZWFkOiBgJXMnIgorI34gbXNnc3RyICIlczogc2lzZW1pbmUgZ3ppcCB2aWdhOiBsdWdlbWluZTogYCVzJyIKKworI34gbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIGVycm9yOiB3cml0ZTogYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IHNpc2VtaW5lIGd6aXAgdmlnYToga2lyanV0YW1pbmU6IGAlcyciCisKKyN+IG1zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCBlcnJvcjogcmVhZCglaSkgIT0gd3JpdGUoJWkpIgorI34gbXNnc3RyICIlczogc2lzZW1pbmUgZ3ppcCB2aWdhOiByZWFkKCVpKSAhPSB3cml0ZSglaSkiCisKKyN+IG1zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgZXJyb3I6IHJlYWQ6IGAlcyciCisjfiBtc2dzdHIgIiVzOiBzaXNlbWluZSBiemlwMiB2aWdhOiBsdWdlbWluZTogYCVzJyIKKworI34gbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiBlcnJvcjogd3JpdGU6IGAlcyciCisjfiBtc2dzdHIgIiVzOiBzaXNlbWluZSBiemlwMiB2aWdhOiBraXJqdXRhbWluZTogYCVzJyIKKworI34gbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiBlcnJvcjogcmVhZCglaSkgIT0gd3JpdGUoJWkpIgorI34gbXNnc3RyICIlczogc2lzZW1pbmUgYnppcDIgdmlnYTogcmVhZCglaSkgIT0gd3JpdGUoJWkpIgorCisjfiBtc2dpZCAiIgorI34gIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgb3JcbiIKKyN+ICJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKKyN+ICJTZWUgJXMgLS1saWNlbnNlIGZvciBjb3B5cmlnaHQgYW5kIGxpY2Vuc2UgZGV0YWlscy5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIlNlZSBvbiB2YWJhIHRhcmt2YXJhLiBLb3BlZXJpbWlzdGluZ2ltdXN0ZSBqYW9rcyB2YWF0YSBHTlUgw5xsZGlzdCAiCisjfiAiQXZhbGlra3VcbiIKKyN+ICJMaXRzZW50c2kgLSB2ZXJzaW9vbmkgMiB2w7VpIMO8a3Nrw7VpayBtaWxsaXN0IGhpbGlzZW1hdCB2ZXJzaW9vbmkuICIKKyN+ICJQcm9ncmFtbWlsXG4iCisjfiAicG9sZSBNSVRURSBNSU5HSVNVR1VTVCBnYXJhbnRpaWQuXG4iCisjfiAiTGl0c2VudHNpIGphIGF1dG9yacO1aWd1c3RlIHZhYXRhbWlzZWtzIGthc3V0YSAlcyAtLWxpY2Vuc2UuXG4iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gZ2V0IHVuaXF1ZSBmaWxlbmFtZSBmb3IgY29udHJvbCBpbmZvIgorI34gbXNnc3RyICJqdWh0YW5kbWV0ZSBqYW9rcyBwb2xlIHbDtWltYWxpayB1bmlrYWFsc2V0IGZhaWxpbmltZSBzYWFkYSIKKworI34gbXNnaWQgImZhaWxlZCB0byBjaG93biAlczogJXMiCisjfiBtc2dzdHIgInTDtXJnZSBmYWlsaSAlcyBvbWFuaWtlIG11dXRtaXNlbDogJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gY2htb2QgJXM6ICVzIgorI34gbXNnc3RyICJ0w7VyZ2UgZmFpbGkgJXMgcMOkw6RzdcO1aWd1c3RlIG11dXRtaXNlbDogJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBybSAtcmYiCisjfiBtc2dzdHIgInTDtXJnZSBybSAtcmYga8OkaXZpdGFtaXNlbCIKKworI34gbXNnaWQgInVua25vd24gZGF0YSB0eXBlIGAlaScgaW4gYnVmZmVyX3dyaXRlXG4iCisjfiBtc2dzdHIgInR1bmRtYXR1IGFuZG1ldMO8w7xwIGAlaScgZnVua3RzaW9vbmlzIGJ1ZmZlcl93cml0ZVxuIgorCisjfiBtc2dpZCAidW5rbm93biBkYXRhIHR5cGUgYCVpJyBpbiBidWZmZXJfcmVhZFxuIgorI34gbXNnc3RyICJ0dW5kbWF0dSBhbmRtZXTDvMO8cCBgJWknIGZ1bmt0c2lvb25pcyBidWZmZXJfcmVhZFxuIgorCisjfiBtc2dpZCAid2FpdCBmb3IgZHBrZy1zcGxpdCBmYWlsZWQiCisjfiBtc2dzdHIgInTDtXJnZSBkcGtnLXNwbGl0IGrDpHJnaSBvb3RhbWlzZWwiCisKKyN+IG1zZ2lkICIiCisjfiAiXG4iCisjfiAiQ29weXJpZ2h0IChDKSAyMDAwIFdpY2hlcnQgQWtrZXJtYW4uIgorI34gbXNnc3RyICIiCisjfiAiXG4iCisjfiAiQXV0b3Jpw7VpZ3VzZWQgKEMpIDIwMDAgV2ljaGVydCBBa2tlcm1hbi4iCisKKyN+IG1zZ2lkICJubyBtb2RlIHNwZWNpZmllZCIKKyN+IG1zZ3N0ciAicmXFvmlpbWkgcG9sZSBtw6TDpHJhdHVkIgorCisjfiBtc2dpZCAiaWxsZWdhbCB1c2VyICVzIgorI34gbXNnc3RyICJsdWJhbWF0dSBrYXN1dGFqYSAlcyIKKworI34gbXNnaWQgIm5vbi1leGlzdGluZyB1c2VyICVzIgorI34gbXNnc3RyICJvbGVtYXR1IGthc3V0YWphICVzIgorCisjfiBtc2dpZCAiaWxsZWdhbCBncm91cCAlcyIKKyN+IG1zZ3N0ciAibHViYW1hdHUgZ3J1cHAgJXMiCisKKyN+IG1zZ2lkICJub24tZXhpc3RpbmcgZ3JvdXAgJXMiCisjfiBtc2dzdHIgIm9sZW1hdHUgZ3J1cHAgJXMiCisKKyN+IG1zZ2lkICJjb25maWd1cmF0aW9uIGVycm9yOiB1bmtub3duIG9wdGlvbiAlcyIKKyN+IG1zZ3N0ciAic2VhZGlzdHVzdGUgdmlnYTogdHVuZG1hdHUgdsO1dGkgJXMiCisKKyN+IG1zZ2lkICJjb25maWd1cmF0aW9uIGVycm9yOiAlcyBkb2VzIG5vdCB0YWtlIGEgdmFsdWUiCisjfiBtc2dzdHIgInNlYWRpc3R1c3RlIHZpZ2E6IHbDtXRtZWwgJXMgZWkgdG9oaSB2w6TDpHJ0dXN0IG9sbGEiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAidW5leGVjcHRlZCBlbmQgb2YgbGluZSBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKKyN+IG1zZ3N0ciAib290YW1hdHUgcmVhbMO1cHAgcGFraW5pbWVzIHJlYWwgJWQiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiLS1jaGVjay1zdXBwb3J0ZWQgdGFrZXMgbm8gYXJndW1lbnRzIgorI34gbXNnc3RyICItLSVzIGVpIHZhamEgYXJndW1lbnRlIgorCisjfiBtc2dpZCAiLS1mb3JnZXQtb2xkLXVuYXZhaWwgdGFrZXMgbm8gYXJndW1lbnRzIgorI34gbXNnc3RyICItLWZvcmdldC1vbGQtdW5hdmFpbCBlaSB2YWphIMO8aHRlZ2kgYXJndW1lbnRpIgorCisjfiBtc2dpZCAiIgorI34gIlxuIgorI34gIkNvcHlyaWdodCAoQykgMTk5NCwxOTk1IElhbiBKYWNrc29uLiIKKyN+IG1zZ3N0ciAiIgorI34gIlxuIgorI34gIkF1dG9yacO1aWd1c2VkIChDKSAxOTk0LDE5OTUgSWFuIEphY2tzb24uIgorCisjfiBtc2dpZCAiJXM6IC0tc2VjdGlvbiBuZWVkcyB0d28gbW9yZSBhcmdzIgorI34gbXNnc3RyICIlczogLS1zZWN0aW9uIHZhamFiIGthaHRlIGxpc2Fhcmd1bWVudGkiCisKKyN+IG1zZ2lkICIlczogb3B0aW9uIC0tJXMgaXMgZGVwcmVjYXRlZCAoaWdub3JlZCkiCisjfiBtc2dzdHIgIiVzOiB2w7V0aSAtLSVzIG9uIGFlZ3VudWQgKGVpcmF0YWtzZSkiCisKKyN+IG1zZ2lkICIlczogdW5rbm93biBvcHRpb24gYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IHR1bmRtYXR1IHbDtXRpIGAlcyciCisKKyN+IG1zZ2lkICIlczogdG9vIG1hbnkgYXJndW1lbnRzIgorI34gbXNnc3RyICIlczogbGlpZ2EgcGFsanUgYXJndW1lbnRlIgorCisjfiBtc2dpZCAiJXM6IC0tc2VjdGlvbiBpZ25vcmVkIHdpdGggLS1yZW1vdmUiCisjfiBtc2dzdHIgIiVzOiB2w7V0bWUgLS1yZW1vdmUga2FzdXRhbWlzZWwgZWlyYXRha3NlIHbDtXRpdCAtLXNlY3Rpb24iCisKKyN+IG1zZ2lkICIlczogLS1kZXNjcmlwdGlvbiBpZ25vcmVkIHdpdGggLS1yZW1vdmUiCisjfiBtc2dzdHIgIiVzOiB2w7V0bWUgLS1yZW1vdmUga2FzdXRhbWlzZWwgZWlyYXRha3NlIHbDtXRpdCAtLWRlc2NyaXB0aW9uIgorCisjfiBtc2dpZCAiaW52YWxpZCBpbmZvIGVudHJ5IgorI34gbXNnc3RyICJ2aWdhbmUgdGVhYmVraXJqZSIKKworI34gbXNnaWQgIiVzOiBubyBiYWNrdXAgZmlsZSAlcyBhdmFpbGFibGUuIgorI34gbXNnc3RyICIlczogdmFydWZhaWxpICVzIHBvbGUsIGFubmFuIGFsbGEuIgorCisjfiBtc2dpZCAiJXM6IG5vIGRlZmF1bHQgZmlsZSAlcyBhdmFpbGFibGUsIGdpdmluZyB1cC4iCisjfiBtc2dzdHIgIiVzOiB2YWlraW1pc2kgZmFpbGkgJXMgcG9sZSwgYW5uYW4gYWxsYS4iCisKKyN+IG1zZ2lkICIlczogZmFpbGVkIHRvIGxvY2sgZGlyIGZvciBlZGl0aW5nISAlcyIKKyN+IG1zZ3N0ciAiJXM6IHTDtXJnZSBrYXRhbG9vZ2kgbHVrdXN0YW1pc2VsIG11dXRtaXNla3MhICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIG9wZW4gJXM6ICVzIgorI34gbXNnc3RyICJmYWlsaSAlcyBwb2xlIHbDtWltYWxpayBhdmFkYTogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gY2xvc2UgJXMgYWZ0ZXIgcmVhZDogJXMiCisjfiBtc2dzdHIgImZhaWxpICVzIHBvbGUgdsO1aW1hbGlrIHBlYWxlIGx1Z2VtaXN0IHN1bGdlZGE6ICVzIgorCisjfiBtc2dpZCAiJXM6IG5vIHNlY3Rpb24gc3BlY2lmaWVkIGZvciBuZXcgZW50cnksIHBsYWNpbmcgYXQgZW5kIgorI34gbXNnc3RyICIlczogdXVlIGtpcmplIGphb2tzIHBvbGUgc2VrdHNpb29uaSBtw6TDpHJhdHVkLCBwYWlndXRhdGFrc2UgbMO1cHB1IgorCisjfiBtc2dpZCAiJXM6IGRlbGV0aW5nIGVudHJ5IGAlcyAuLi4nIgorI34gbXNnc3RyICIlczoga2lyamUgYCVzJyBrdXN0dXRhbWluZSAuLi4iCisKKyN+IG1zZ2lkICIlczogZW1wdHkgc2VjdGlvbiBgJXMnIG5vdCByZW1vdmVkIgorI34gbXNnc3RyICIlczogdMO8aGphIHNla3RzaW9vbmkgYCVzJyBlaSBlZW1hbGRhdGEiCisKKyN+IG1zZ2lkICIlczogZGVsZXRpbmcgZW1wdHkgc2VjdGlvbiBgJXMnIgorI34gbXNnc3RyICIlczogdMO8aGphIHNla3RzaW9vbmkgYCVzJyBrdXN0dXRhbWluZSIKKworI34gbXNnaWQgIiVzOiBubyBlbnRyeSBmb3IgZmlsZSBgJXMnIGFuZCBtZW51IGVudHJ5IGAlcyciCisjfiBtc2dzdHIgIiVzOiBmYWlsaSBgJXMnIGphIG1lbsO8w7xraXJqZSBgJXMnIGtvaHRhIHB1dWR1YiBraXJqZSIKKworI34gbXNnaWQgIiVzOiBubyBlbnRyeSBmb3IgZmlsZSBgJXMnIgorI34gbXNnc3RyICIlczogZmFpbGkgYCVzJyBrb2h0YSBwdXVkdWIga2lyamUiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gYmFja3VwIG9sZCAlcywgZ2l2aW5nIHVwOiAlcyIKKyN+IG1zZ3N0ciAidmFuYXN0ICVzIGZhaWxpc3QgcG9sZSB2w7VpbWFsaWsgdmFydWtvb3BpYXQgdGVoYSwgYW5uYW4gYWxsYTogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgJXM6ICVzIgorI34gbXNnc3RyICJ1dXQgZmFpbGkgJXMgcG9sZSB2w7VpbWFsaWsgcGFpZ2FsZGFkYTogJXMiCisKKyN+IG1zZ2lkICIlczogY291bGQgbm90IGJhY2t1cCAlcyBpbiAlczogJXMiCisjfiBtc2dzdHIgIiVzOiBmYWlsaXN0ICVzIHBvbGUgdsO1aW1hbGlrIGthdGFsb29naSAlcyB2YXJ1a29vcGlhdCB0ZWhhOiAlcyIKKworI34gbXNnaWQgIiVzOiB3YXJuaW5nIC0gdW5hYmxlIHRvIHVubG9jayAlczogJXMiCisjfiBtc2dzdHIgIiVzOiBob2lhdHVzIC0gdMO1cmdlICVzIGx1a3VzdCBhdmFtaXNlbDogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcmVhZCAlczogJWQiCisjfiBtc2dzdHIgInTDtXJnZSAlcyBsdWdlbWlzZWw6ICVkIgorCisjfiBtc2dpZCAiZGJnOiAlcyIKKyN+IG1zZ3N0ciAic2lsdW1pbmU6ICVzIgorCisjfiBtc2dpZCAiaW52YWxpZCBudW1iZXIgZm9yIC0tY29tbWFuZC1mZCIKKyN+IG1zZ3N0ciAidmlnYW5lIG51bWJlciAtLWNvbW1hbmQtZmQgamFva3MiCisKKyN+IG1zZ2lkICJ3cml0ZSBlcnJvciBpbiB2c25wcmludGYiCisjfiBtc2dzdHIgImtpcmp1dGFtaXN2aWdhIGZ1bmt0c2lvb25pcyB2c25wcmludGYiCisKKyN+IG1zZ2lkICJTeXN0ZW0gZXJyb3Igbm8uJWQiCisjfiBtc2dzdHIgIlPDvHN0ZWVtbmUgdmlnYSBuci4lZCIKKworI34gbXNnaWQgIlNpZ25hbCBuby4lZCIKKyN+IG1zZ3N0ciAiU2lnbmFhbCBuci4lZCIKKworI34gbXNnaWQgImRwa2c6IHdhcm5pbmcgLSAlcyByZXR1cm5lZCBlcnJvciBleGl0IHN0YXR1cyAlZFxuIgorI34gbXNnc3RyICJkcGtnOiBob2lhdHVzIC0gJXMgbMO1cGV0YXMgdmVha29vZGlnYSAlZFxuIgorCisjfiBtc2dpZCAiZHBrZzogd2FybmluZyAtICVzIGtpbGxlZCBieSBzaWduYWwgKCVzKSVzXG4iCisjfiBtc2dzdHIgImRwa2c6IGhvaWF0dXMgLSAlcyBrw7VydmFsZGF0aSBzaWduYWFsaWdhICglcyklc1xuIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHJlYWQgYCVzJyBhdCBsaW5lICVkIgorI34gbXNnc3RyICJ0w7VyZ2UgYCVzJyBsdWdlbWlzZWwgcmVhbCAlZCIKKworIywgZnV6enkKKyN+IG1zZ2lkICJwYXJzZSBlcnJvciwgaW4gZmlsZSBgJS4yNTVzJyBuZWFyIGxpbmUgJWQiCisjfiBtc2dzdHIgIiVzIGZhaWxpIGAlLjI1NXMnICVkLiByZWEgbMOkaGVkdXNlcyIKKworI34gbXNnaWQgIiBwYWNrYWdlIGAlLjI1NXMnIgorI34gbXNnc3RyICIgcGFrayBgJS4yNTVzJyIKKworI34gbXNnaWQgImRwa2c6ICVzOiB3YXJuaW5nIC0gZmFpbGVkIHRvIHJlbW92ZSBgJS4yNTBzJzogJXNcbiIKKyN+IG1zZ3N0ciAiZHBrZzogJXM6IGhvaWF0dXMgLSB0w7VyZ2UgYCUuMjUwcycgZWVtYWxkYW1pc2VsOiAlc1xuIgorCisjfiBtc2dpZCAiLS1hdWRpdCBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudHMiCisjfiBtc2dzdHIgIi0tYXVkaXQgZWkgdmFqYSDDvGh0ZWdpIGFyZ3VtZW50aSIKKworI34gbXNnaWQgIi0teWV0LXRvLXVucGFjayBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudHMiCisjfiBtc2dzdHIgIi0teWV0LXRvLXVucGFjayBlaSB2YWphIMO8aHRlZ2kgYXJndW1lbnRpIgorCisjfiBtc2dpZCAiLS1hc3NlcnQtKiBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudHMiCisjfiBtc2dzdHIgIi0tYXNzZXJ0LSogZWkgdmFqYSDDvGh0ZWdpIGFyZ3VtZW50aSIKKworI34gbXNnaWQgIi0tcHJlZGVwLXBhY2thZ2UgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tcHJlZGVwLXBhY2thZ2UgZWkgdmFqYSDDvGh0ZWdpIGFyZ3VtZW50aSIKKworI34gbXNnaWQgIi0tcHJpbnQtYXJjaGl0ZWN0dXJlIGRvZXMgbm90IHRha2UgYW55IGFyZ3VtZW50IgorI34gbXNnc3RyICItLXByaW50LWFyY2hpdGVjdHVyZSBlaSB2YWphIMO8aHRlZ2kgYXJndW1lbnRpIgorCisjfiBtc2dpZCAiLS1zZXQtc2VsZWN0aW9ucyBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudCIKKyN+IG1zZ3N0ciAiLS1zZXQtc2VsZWN0aW9ucyBlaSB2YWphIMO8aHRlZ2kgYXJndW1lbnRpIgorCisjfiBtc2dpZCAiLS1jbGVhci1zZWxlY3Rpb25zIGRvZXMgbm90IHRha2UgYW55IGFyZ3VtZW50IgorI34gbXNnc3RyICItLWNsZWFyLXNlbGVjdGlvbnMgZWkgdmFqYSDDvGh0ZWdpIGFyZ3VtZW50aSIKKworI34gbXNnaWQgIi0tYnVpbGQgbmVlZHMgYSBkaXJlY3RvcnkgYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tYnVpbGQgdmFqYWIgYXJndW1lbmRpa3Mga2F0YWxvb2dpbmltZSIKKworI34gbXNnaWQgIkludGVybmFsIGVycm9yLCBjb21wcmVzc190eXBlIGAlaScgdW5rbm93biEiCisjfiBtc2dzdHIgIlNpc2VtaW5lIHZpZ2EsIGNvbXByZXNzX3R5cGUgYCVpJyBvbiB0dW5kbWF0dSEiCisKKyN+IG1zZ2lkICItLWxpc3RxIGRvZXMgbm90IHRha2UgYW55IGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiLS1saXN0cSBlaSB2YWphIMO8aHRlZ2kgYXJndW1lbnRpIgorCisjfiBtc2dpZCAiIgorI34gIlxuIgorI34gIkNvcHlyaWdodCAoQykgMTk5NiBLaW0tTWluaCBLYXBsYW4uIgorI34gbXNnc3RyICIiCisjfiAiXG4iCisjfiAiQXV0b3Jpw7VpZ3VzZWQgKEMpIDE5OTYgS2ltLU1pbmggS2FwbGFuLiIKKworIyBGSVhNRSAtIHBvbGUgdmVlbCB2YWxtaXMKKyN+IG1zZ2lkICIiCisjfiAiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIFstLV0gWzxkaXJuYW1lPl1cbiIKKyN+ICJcbiIKKyN+ICJPcHRpb25zOlxuIgorI34gIiAgLS11bnNhZmUgICAgIHNldCBzb21lIGFkZGl0aW9uYWwgcG9zc2libHkgdXNlZnVsIG9wdGlvbnMuXG4iCisjfiAiICAgICAgICAgICAgICAgd2FybmluZzogdGhpcyBvcHRpb24gbWF5IGdhcmJsZSBhbiBvdGhlcndpc2UgY29ycmVjdCAiCisjfiAiZmlsZS5cbiIKKyN+ICIgIC0taGVscCAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorI34gIiAgLS12ZXJzaW9uICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJLYXN1dGFtaW5lOiAlcyBbPHbDtXRpPiAuLi5dIFstLV0gWzxrYXRhbG9vZ2luaW1pPl1cbiIKKyN+ICJcbiIKKyN+ICJWw7V0bWVkOlxuIgorI34gIiAgLS11bnNhZmUgICAgIG3DtW5lZGUga2FzdWxpa2UgbGlzYXZhbGlrdXRlIG3DpMOkcmFtaW5lLlxuIgorI34gIiAgICAgICAgICAgICAgIGhvaWF0dXM6IHNlbGxlIHbDtXRtZSBrYXN1dGFtaW5lIHbDtWliIHJpa2t1ZGEga29ycmVrdHNlaWQgIgorI34gImZhaWxlLlxuIgorI34gIiAgLS1oZWxwICAgICAgIHNlbGxlIGFiaXRla3N0aSBuw6RpdGFtaW5lLlxuIgorI34gIiAgLS12ZXJzaW9uICAgIHZlcnNpb29uaSBuw6RpdGFtaW5lLlxuIgorCisjfiBtc2dpZCAiJXM6IHVuYWJsZSB0byB1bmxvY2sgJXM6ICVzIgorI34gbXNnc3RyICIlczogbHVrdSAlcyB2YWJhc3RhbWluZSBwb2xlIHbDtWltYWxpazogJXMiCisKKyN+IG1zZ2lkICIlcyAtIHN0YXR1cyBpcyAlcy4iCisjfiBtc2dzdHIgIiVzIC0gb2xlayBvbiAlcy4iCisKKyN+IG1zZ2lkICIgbGluayB1bnJlYWRhYmxlIC0gJXMiCisjfiBtc2dzdHIgIiBsb2VhdGFtYXR1IHZpaXQgLSAlcyIKKworI34gbXNnaWQgIkxlYXZpbmcgJXMgKCVzKSBwb2ludGluZyB0byAlcy4iCisjfiBtc2dzdHIgIiVzICglcykgasOkZXRha3NlIHZpaXRhbWEgZmFpbGlsZSAlcy4iCisKKyN+IG1zZ2lkICJVcGRhdGluZyAlcyAoJXMpIHRvIHBvaW50IHRvICVzLiIKKyN+IG1zZ3N0ciAiVmlpdGEgJXMgKCVzKSB1dWVuZGF0YWtzZSB2aWl0YW1ha3MgZmFpbGlsZSAlcy4iCisKKyN+IG1zZ2lkICJSZW1vdmluZyAlcyAoJXMpLCBub3QgYXBwcm9wcmlhdGUgd2l0aCAlcy4iCisjfiBtc2dzdHIgIiVzICglcykgZWVtYWxkYW1pbmUsIHBvbGUgZmFpbGlnYSAlcyBzb2JpbGlrLiIKKworI34gbXNnaWQgIiIKKyN+ICJDaGVja2luZyBhdmFpbGFibGUgdmVyc2lvbnMgb2YgJXMsIHVwZGF0aW5nIGxpbmtzIGluICVzIC4uLlxuIgorI34gIihZb3UgbWF5IG1vZGlmeSB0aGUgc3ltbGlua3MgdGhlcmUgeW91cnNlbGYgaWYgZGVzaXJlZCAtIHNlZSBgbWFuIGxuJy4pIgorI34gbXNnc3RyICIiCisjfiAiJXMgamFva3Mgc2FhZGFvbGV2YXRlIHZlcnNpb29uaWRlIHR1dmFzdGFtaW5lLCAlcyBhbGwgb2xldmF0ZSB2aWl0YWRlICIKKyN+ICJ1dWVuZGFtaW5lLi4uXG4iCisjfiAiKFNvb3ZpIGtvcnJhbCB2w7VpZCBzZWFrIG9sZXZhaWQgbmltZXZpaXRhc2lkIGlzZSBtdXV0YSAtIHZhYXRhIGBtYW4gbG4nLikiCisKKyN+IG1zZ2lkICJMYXN0IHBhY2thZ2UgcHJvdmlkaW5nICVzICglcykgcmVtb3ZlZCwgZGVsZXRpbmcgaXQuIgorI34gbXNnc3RyICJWaWltYW5lIHBha2ssIG1pcyB0YWdhYiAlcyAoJXMpIG9uIGVlbWFsZGF0dWQsIHNlZSBrdXN0dXRhdGFrc2UuIgorCisjfiBtc2dpZCAiIgorI34gIlRoZXJlIGlzIG9ubHkgMSBwcm9ncmFtIHdoaWNoIHByb3ZpZGVzICVzXG4iCisjfiAiKCVzKS4gTm90aGluZyB0byBjb25maWd1cmUuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJTw7xzdGVlbWlzIG9uIGFpbnVsdCAxIHByb2dyYW1tLCBtaXMgdGFnYWIgJXNcbiIKKyN+ICIoJXMpLiBQb2xlIG1pZGFnaSBzZWFkaXN0YWRhLlxuIgorCisjfiBtc2dpZCAiIgorI34gIlRoZXJlIGFyZSAlcyBhbHRlcm5hdGl2ZXMgd2hpY2ggcHJvdmlkZSBgJXMnLlxuIgorI34gIlxuIgorI34gIiAgU2VsZWN0aW9uICAgIEFsdGVybmF0aXZlXG4iCisjfiAiLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiIKKyN+IG1zZ3N0ciAiIgorI34gIkhldGtlbCBvbiBgJTIkcycgdGFnYW1pc2VrcyAlcyBhbHRlcm5hdGlpdmkuXG4iCisjfiAiXG4iCisjfiAiICAgICAgVmFsaWsgICAgQWx0ZXJuYXRpaXZcbiIKKyN+ICItLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIgorCisjfiBtc2dpZCAiU2VyaW91cyBwcm9ibGVtOiAlcyIKKyN+IG1zZ3N0ciAiVMO1c2luZSBwcm9ibGVlbTogJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gYWxsb2NhdGUgYnVmZmVyIGluIGJ1ZmZlcl9jb3B5ICglcykiCisjfiBtc2dzdHIgInTDtXJnZSBwdWh2cmkgZXJhbGRhbWlzZWwgZnVua3RzaW9vbmlzIGJ1ZmZlcl9jb3B5ICglcykiCisKKyN+IG1zZ2lkICJFcnJvciBhbGxvY2F0aW5nIG1lbW9yeSBmb3IgY2ZnZmlsZW5hbWUiCisjfiBtc2dzdHIgIlZpZ2EgY2ZnZmlsZW5hbWUgamFva3MgbcOkbHUgZXJhbGRhbWlzZWwiCisKKyN+IG1zZ2lkICJmYWlsZWQgYWxsb2NhdGluZyBtZW1vcnkgZm9yIHZhcmlhYmxlIGBjdHJsYXJlYSciCisjfiBtc2dzdHIgInTDtXJnZSBgY3RybGFyZWEnIG11dXR1amFsZSBtw6RsdSBlcmFsZGFtaXNlbCIKKworI34gbXNnaWQgInVuc3VwcG9ydGVkIGRlcGVuZGVuY3kgcHJvYmxlbSAtIG5vdCBpbnN0YWxsaW5nICUuMjUwcyIKKyN+IG1zZ3N0ciAidG9ldGFtYXRhIHPDtWx0dXZ1c3Byb2JsZWVtIC0gJS4yNTBzIGrDpGV0YWtzZSBwYWlnYWxkYW1hdGEiCisKKyN+IG1zZ2lkICJlcnJvciByZWFkaW5nICVzIgorI34gbXNnc3RyICJ2aWdhICVzIGx1Z2VtaXNlbCIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvcG8vZXUuZ21vIGIvZHBrZy0xLjE2LjEuMS9wby9ldS5nbW8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzY4ZGJmZgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvcG8vZXUuZ21vCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvcG8vZXUucG8gYi9kcGtnLTEuMTYuMS4xL3BvL2V1LnBvCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjE1ZmM5MDgKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3BvL2V1LnBvCkBAIC0wLDAgKzEsNjYxNyBAQAorIyB0cmFuc2xhdGlvbiBvZiBkcGtnXzEuMTUuOC43X2V1LnBvIHRvIEJhc3F1ZQorIyB0cmFuc2xhdGlvbiBvZiBkcGtnLXRydW5rLWV1LnBvIHRvCisjIENvcHlyaWdodCAoQykgMjAwNCwgMjAwNSwgMjAwNiwgMjAwNywgMjAwOCwgMjAwOSwgMjAxMCBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KKyMKKyMgSm9yZGkgQmxhc2kgPHZhbHB1ckBldXNrYWxuZXQubmV0PiwgMjAwNC4KKyMgUGlhcnJlcyBCZW9iaWRlIDxwaUBiZW9iaWRlLm5ldD4sIDIwMDQsIDIwMDUsIDIwMDYsIDIwMDcsIDIwMDgsIDIwMDkuCisjIEnDsWFraSBMYXJyYcOxYWdhIE11cmdvaXRpbyA8ZG9vdGVvQGV1c2thbGdudS5vcmc+LCAyMDEwLgorbXNnaWQgIiIKK21zZ3N0ciAiIgorIlByb2plY3QtSWQtVmVyc2lvbjogZHBrZ18xLjE1LjguN19ldVxuIgorIlJlcG9ydC1Nc2dpZC1CdWdzLVRvOiBkZWJpYW4tZHBrZ0BsaXN0cy5kZWJpYW4ub3JnXG4iCisiUE9ULUNyZWF0aW9uLURhdGU6IDIwMTEtMTAtMTQgMDc6MTErMDIwMFxuIgorIlBPLVJldmlzaW9uLURhdGU6IDIwMTAtMTItMTYgMTk6MjgrMDEwMFxuIgorIkxhc3QtVHJhbnNsYXRvcjogScOxYWtpIExhcnJhw7FhZ2EgTXVyZ29pdGlvIDxkb290ZW9AZXVza2FsZ251Lm9yZz5cbiIKKyJMYW5ndWFnZS1UZWFtOiBCYXNxdWUgPGRlYmlhbi1sMTBuLWJhc3F1ZUBsaXN0cy5kZWJpYW4ub3JnPlxuIgorIkxhbmd1YWdlOiBldVxuIgorIk1JTUUtVmVyc2lvbjogMS4wXG4iCisiQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PVVURi04XG4iCisiQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdFxuIgorIlBsdXJhbC1Gb3JtczogbnBsdXJhbHM9MjsgcGx1cmFsPShuICE9IDEpO1xuIgorIlgtR2VuZXJhdG9yOiBLQmFiZWwgMS4xMS40XG4iCisKKyM6IGxpYi9kcGtnL2FyLmM6NjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgJyVjJyBpbiBhcmNoaXZlICclLjI1MHMnIG1lbWJlciAnJS4xNnMnIHNpemUiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvYXIuYzo4MSBsaWIvZHBrZy9hci5jOjk3IGxpYi9kcGtnL2FyLmM6MTA4IGxpYi9kcGtnL2FyLmM6MTEyCisjOiBsaWIvZHBrZy9hci5jOjEzNCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE1NAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgZmlsZSAnJXMnIgorbXNnc3RyICJlemluIGRhICclcycgZml0eGF0ZWdpYSBpZGF0emkiCisKKyM6IGxpYi9kcGtnL2FyLmM6OTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZ2VuZXJhdGVkIGNvcnJ1cHQgYXIgaGVhZGVyIGZvciAnJXMnIgorbXNnc3RyICInJXMnKHIpZW4gYXItZW4gZ29pYnVydWEgaG9uZGF0dXRhIHNvcnR1IGRhIgorCisjOiBsaWIvZHBrZy9hci5jOjEyMworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgYXIgbWVtYmVyIGZpbGUgKCVzKSIKK21zZ3N0ciAiaHV0cyBlZ2luIGR1IGFyLWVuIGZpdHhhdGVnaWFyZW4ga2lkZWFyaSAoJXMpIGZzdGF0IGxhbnR6ZWFuIgorCisjOiBsaWIvZHBrZy9hci5jOjEzMAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGFyIG1lbWJlciBmaWxlICglcykiCittc2dpZCAiYXIgbWVtYmVyIGZpbGUgKCVzKSIKK21zZ3N0ciAiaHV0cyBlZ2luIGR1IGFyLWVuIGZpdHhhdGVnaWFyZW4ga2lkZWFyaSAoJXMpIGZzdGF0IGxhbnR6ZWFuIgorCisjOiBsaWIvZHBrZy9idWZmZXIuYzoxOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgb24gYnVmZmVyIGNvcHkgZm9yICVzIgorbXNnc3RyICJodXRzIGVnaW4gZHUgJXMocillbiBidWZmZXJyYXJlbiBrb3BpYSBpcmFrdXJ0emVhIgorCisjOiBsaWIvZHBrZy9idWZmZXIuYzoyMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIGluIHdyaXRlIG9uIGJ1ZmZlciBjb3B5IGZvciAlcyIKK21zZ3N0ciAiaHV0cyBlZ2luIGR1ICVzKHIpZW4gYnVmZmVycmFyZW4ga29waWEgaWRhenRlYW4iCisKKyM6IGxpYi9kcGtnL2J1ZmZlci5jOjIyMAorIywgYy1mb3JtYXQKK21zZ2lkICJzaG9ydCByZWFkIG9uIGJ1ZmZlciBjb3B5IGZvciAlcyIKK21zZ3N0ciAiJXMocillbiBidWZmZXJyYXJlbiBrb3BpYXJlbiBpcmFrdXJrZXRhIGxhYnVycmEiCisKKyM6IGxpYi9kcGtnL2J1ZmZlci5jOjI4OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgdGFyIgorbXNnaWQgImZhaWxlZCB0byBzZWVrICVzIgorbXNnc3RyICJodXRzIGVnaW4gZHUgdGFyIGV4ZWt1dGF0emVhbiIKKworIzogbGliL2Rwa2cvY29tbWFuZC5jOjE3OCBsaWIvZHBrZy9jb21tYW5kLmM6MjA0IHNyYy9oZWxwLmM6NjIxCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjk4IHNyYy9wcm9jZXNzYXJjLmM6MTM4IHNyYy9wcm9jZXNzYXJjLmM6NDMyCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjgzOSBkcGtnLWRlYi9idWlsZC5jOjQ1OSBkcGtnLWRlYi9idWlsZC5jOjUzOAorIzogZHBrZy1kZWIvYnVpbGQuYzo1NjEgZHBrZy1kZWIvZXh0cmFjdC5jOjMxNyBkcGtnLWRlYi9pbmZvLmM6NjUKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzo2OSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NDU3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBleGVjdXRlICVzICglcykiCittc2dzdHIgImV6aW4gZGEgJXMgKCVzKSBleGVrdXRhdHUiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGRlY29tcHJlc3Npb24iCittc2dzdHIgIiVzOiBkZXNrb25wcmVzaW9hIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjg5CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBjb21wcmVzc2lvbiIKK21zZ3N0ciAiJXM6IGtvbnByZXNpb2EiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTEyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvciBiaW5kaW5nIGlucHV0IHRvIGd6aXAgc3RyZWFtIgorbXNnc3RyICIlczogZXJyb3JlYSBzYXJyZXJhIGd6aXAga29ycm9udGVhcmVraW4gbG90emVhbiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgcmVhZCBlcnJvcjogJyVzJyIKK21zZ3N0ciAiJXM6IGd6aXAtZW4gaXJha3Vya2V0YXJlbiBiYXJuZWtvIGVycm9yZWE6ICclcyciCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTMyIGxpYi9kcGtnL2NvbXByZXNzLmM6MTM2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHdyaXRlIGVycm9yIgorbXNnc3RyICIlczogZ3ppcC1lbiBpZGF6a2V0YXJlbiBiYXJuZWtvIGVycm9yZWEiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTUwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvciBiaW5kaW5nIG91dHB1dCB0byBnemlwIHN0cmVhbSIKK21zZ3N0ciAiJXM6IGVycm9yZWEgaXJ0ZWVyYSBnemlwIGtvcnJvbnRlYXJla2luIGxvdHplYW4iCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTU3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHJlYWQgZXJyb3IiCittc2dzdHIgIiVzOiBnemlwLWVuIGlyYWt1cmtldGFyZW4gYmFybmVrbyBlcnJvcmVhIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE2NworIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCB3cml0ZSBlcnJvcjogJyVzJyIKK21zZ3N0ciAiJXM6IGd6aXAtZW4gaWRhemtldGFyZW4gYmFybmVrbyBlcnJvcmVhOiAnJXMnIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE4MAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCB3cml0ZSBlcnJvcjogJXMiCittc2dzdHIgIiVzOiBnemlwLWVuIGlkYXprZXRhcmVuIGJhcm5la28gZXJyb3JlYTogJXMiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjIwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvciBiaW5kaW5nIGlucHV0IHRvIGJ6aXAyIHN0cmVhbSIKK21zZ3N0ciAiJXM6IGVycm9yZWEgc2FycmVyYSBiemlwMiBrb3Jyb250ZWFyZWtpbiBsb3R6ZWFuIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjIzMgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgcmVhZCBlcnJvcjogJyVzJyIKK21zZ3N0ciAiJXM6IGJ6aXAyLWVuIGlyYWt1cmtldGFyZW4gYmFybmVrbyBlcnJvcmVhOiAnJXMnIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI0MCBsaWIvZHBrZy9jb21wcmVzcy5jOjI0NCBsaWIvZHBrZy9jb21wcmVzcy5jOjI5NAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgd3JpdGUgZXJyb3IiCittc2dzdHIgIiVzOiBiemlwMi1lbiBpZGF6a2V0YXJlbiBiYXJuZWtvIGVycm9yZWEiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjU4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvciBiaW5kaW5nIG91dHB1dCB0byBiemlwMiBzdHJlYW0iCittc2dzdHIgIiVzOiBlcnJvcmVhIGlydGVlcmEgYnppcDItcmVuIGtvcnJvbnRlYXJla2luIGxvdHplYW4iCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjY1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiByZWFkIGVycm9yIgorbXNnc3RyICIlczogYnppcDItZW4gaXJha3Vya2V0YXJlbiBiYXJuZWtvIGVycm9yZWEiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6Mjc1IGxpYi9kcGtnL2NvbXByZXNzLmM6Mjg2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiB3cml0ZSBlcnJvcjogJyVzJyIKK21zZ3N0ciAiJXM6IGJ6aXAyLWVuIGlkYXprZXRhcmVuIGJhcm5la28gZXJyb3JlYTogJyVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyODIKK21zZ2lkICJ1bmV4cGVjdGVkIGJ6aXAyIGVycm9yIgorbXNnc3RyICJ1c3Rla2FiZWtvIGJ6aXAyIGVycm9yZWEiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVwZGF0ZXMgZGlyZWN0b3J5IGNvbnRhaW5zIGZpbGUgYCUuMjUwcycgd2hvc2UgbmFtZSBpcyB0b28gbG9uZyAobGVuZ3RoPSVkLCAiCisibWF4PSVkKSIKK21zZ3N0ciAiIgorImVndW5lcmF0emVlbiBkaXJla3RvcmlvYWsgJyUuMjUwcycgZml0eGF0ZWdpYSBkYXVrYSwgZXRhIGl6ZW4gaG9yaSBsdXplZWdpYSAiCisiZGEgKGx1emVyYT0lZCwgZ2VoLj0lZCkiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVwZGF0ZXMgZGlyZWN0b3J5IGNvbnRhaW5zIGZpbGVzIHdpdGggZGlmZmVyZW50IGxlbmd0aCBuYW1lcyAoYm90aCAlZCBhbmQgJWQpIgorbXNnc3RyICIiCisiZWd1bmVyYXR6ZWVuIGRpcmVrdG9yaW9hayBsdXplcmEgZGVzYmVyZGluZWtvIGl6ZW5hayBkaXR1enRlbiBmaXR4YXRlZ2lhayAiCisiZGF1emthICglZCBldGEgJWQpIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjg2CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzY2FuIHVwZGF0ZXMgZGlyZWN0b3J5IGAlLjI1NXMnIgorbXNnc3RyICJlemluIGRhICclLjI1NXMnIGVndW5lcmF0emVlbiBkaXJla3RvcmlvYSBhenRlcnR1IgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVtb3ZlIGluY29ycG9yYXRlZCB1cGRhdGUgZmlsZSAlLjI1NXMiCittc2dzdHIgImh1dHMgZWdpbiBkdSAlLjI1NXMgZWd1bmVyYXR6ZSBmaXR4YXRlZ2kgaW5rb3Jwb3JhdHVhIGtlbnR6ZWFuIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEyMSBkcGtnLWRlYi9idWlsZC5jOjQ0NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGAlLjI1NXMnIgorbXNnc3RyICJlemluIGRhICclLjI1NXMnIHNvcnR1IgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEyNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmlsbCAlLjI1MHMgd2l0aCBwYWRkaW5nIgorbXNnc3RyICJlemluIGRhIGJldGUgJS4yNTBzIGJldGVnYXJyaWFyZWtpbiIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxMjcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoICUuMjUwcyBhZnRlciBwYWRkaW5nIgorbXNnc3RyICJlemluIGRhICUuMjUwcyBodXN0dSBiZXRlIG9uZG9yZW4iCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTI5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWVrIHRvIHN0YXJ0IG9mICUuMjUwcyBhZnRlciBwYWRkaW5nIgorbXNnc3RyICJlemluIGRhIGpvYW4gJS4yNTBzKHIpZW4gaGFzaWVyYXJhIGJldGUgb25kb3JlbiIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxOTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gbG9jayBmaWxlICVzIGZvciB0ZXN0aW5nIgorbXNnc3RyICJlemluIGRhIGJsb2tlb2FyZW4gJXMgZml0eGF0ZWdpYSBpcmVraSBwcm9iYXR6ZWtvIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjIyMQorbXNnaWQgInVuYWJsZSB0byBvcGVuL2NyZWF0ZSBzdGF0dXMgZGF0YWJhc2UgbG9ja2ZpbGUiCittc2dzdHIgImV6aW4gZGEgaXJla2kvc29ydHUgZWdvZXJhcmVuIGRhdHUtYmFzZWEgYmxva2VhdHpla28gZml0eGF0ZWdpYSIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyMzEKK21zZ2lkICJ5b3UgZG8gbm90IGhhdmUgcGVybWlzc2lvbiB0byBsb2NrIHRoZSBkcGtnIHN0YXR1cyBkYXRhYmFzZSIKK21zZ3N0ciAiZXogZHV6dSBiYWltZW5payBkcGtnIGVnb2VyYXJlbiBkYXR1LWJhc2VhIGJsb2tlYXR6ZWtvIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjIzMworIywgZnV6enkKKyN8IG1zZ2lkICJ1bmFibGUgdG8gbG9jayBkcGtnIHN0YXR1cyBkYXRhYmFzZSIKK21zZ2lkICJkcGtnIHN0YXR1cyBkYXRhYmFzZSIKK21zZ3N0ciAiZXppbiBkYSBibG9rZWF0dSBkcGtnIGVnb2VyYXJlbiBkYXR1LWJhc2VhIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjI1NworbXNnaWQgInJlcXVlc3RlZCBvcGVyYXRpb24gcmVxdWlyZXMgc3VwZXJ1c2VyIHByaXZpbGVnZSIKK21zZ3N0ciAiZXNrYXR1dGFrbyBlcmFnaWtldGFrIHN1cGVyZXJhYmlsdHphaWxlYXJlbiBiYWltZW5hIGJlaGFyIGR1IgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjI2MgorbXNnaWQgInVuYWJsZSB0byBhY2Nlc3MgZHBrZyBzdGF0dXMgYXJlYSIKK21zZ3N0ciAiZXppbiBkYSBzYXJ0dSBkcGtnIGVnb2VyYSBlcmVtdWFuIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjI2NAorbXNnaWQgIm9wZXJhdGlvbiByZXF1aXJlcyByZWFkL3dyaXRlIGFjY2VzcyB0byBkcGtnIHN0YXR1cyBhcmVhIgorbXNnc3RyICJlcmFnaWtldGFrIGRwa2cgZWdvZXJhIGVyZW11YW4gaXJha3VycmkvaWRhenRla28gc2FyYmlkZWEgYmVoYXIgZHUiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzA5CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZW1vdmUgbXkgb3duIHVwZGF0ZSBmaWxlICUuMjU1cyIKK21zZ3N0ciAiaHV0cyBlZ2luIGR1IG5pcmUgJS4yNTVzIGVndW5lcmF0emUgZml0eGF0ZWdpYSBrZW50emVhbiIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJlemluIGRhIGVnb2VyYSBlZ3VuZXJhdHVhIGlkYXR6aSAtICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM0OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgImV6aW4gZGEgZWdvZXJhIGVndW5lcmF0dWEgaHVzdHUgLSAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHRydW5jYXRlIGZvciB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiZXppbiBkYSBlZ29lcmEgZWd1bmVyYXR1YSB0cnVua2F0dSAtICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM1MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZnN5bmMgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgImV6aW4gZGEgZWdvZXJhIGVndW5lcmF0dWEgc2lua3Jvbml6YXR1IC0gJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzU1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiZXppbiBkYSBlZ29lcmEgZWd1bmVyYXR1YSBpdHhpIC0gJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzU4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJlemluIGRhIGVnb2VyYSBlZ3VuZXJhdHVhIGluc3RhbGF0dSAtICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy9kaXIuYzo1MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHJlYWQgZmlsZWRlc2NyaXB0b3IgZmxhZ3MgZm9yICUuMjUwcyIKK21zZ2lkICJ1bmFibGUgdG8gZ2V0IGZpbGUgZGVzY3JpcHRvciBmb3IgZGlyZWN0b3J5ICclcyciCittc2dzdHIgImV6aW4gZGEgaXJha3VycmkgZml0eGF0ZWdpYXJlbiBkZXNrcmlwdG9yZWEgLSAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL2Rpci5jOjU0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gc3luYyBmaWxlICclcyciCittc2dpZCAidW5hYmxlIHRvIHN5bmMgZGlyZWN0b3J5ICclcyciCittc2dzdHIgImV6aW4gZGEgJyVzJyBmaXR4YXRlZ2lhIHNpbmtyb25pemF0dSIKKworIzogbGliL2Rwa2cvZGlyLmM6NjkgbGliL2Rwa2cvZGlyLmM6MTMxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gb3BlbiBmaWxlICclcyciCittc2dpZCAidW5hYmxlIHRvIG9wZW4gZGlyZWN0b3J5ICclcyciCittc2dzdHIgImV6aW4gZGEgJyUuMjUwcycgZml0eGF0ZWdpYSBpcmVraSIKKworIzogbGliL2Rwa2cvZGlyLmM6MTA5IHNyYy9kaXZlcnRjbWQuYzoyMTggZHBrZy1zcGxpdC9zcGxpdC5jOjIwMgorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gZmlsZSAnJXMnIgorbXNnc3RyICJlemluIGRhICclLjI1MHMnIGZpdHhhdGVnaWEgaXJla2kiCisKKyM6IGxpYi9kcGtnL2Rpci5jOjExMSBzcmMvZGl2ZXJ0Y21kLmM6MjMyIHNyYy9kaXZlcnRjbWQuYzozNzcKKyM6IHNyYy9zdGF0Y21kLmM6MjE3IGRwa2ctZGViL2J1aWxkLmM6NTk4IGRwa2ctc3BsaXQvam9pbi5jOjY1CisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTg3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNDA2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzeW5jIGZpbGUgJyVzJyIKK21zZ3N0ciAiZXppbiBkYSAnJXMnIGZpdHhhdGVnaWEgc2lua3Jvbml6YXR1IgorCisjOiBsaWIvZHBrZy9kaXIuYzoxMTMgc3JjL2RpdmVydGNtZC5jOjIzNCBzcmMvZGl2ZXJ0Y21kLmM6Mzc5CisjOiBkcGtnLWRlYi9idWlsZC5jOjYwMCBkcGtnLXNwbGl0L2pvaW4uYzo2NyBkcGtnLXNwbGl0L3F1ZXVlLmM6MTg5CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTMxNCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTQwOAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgZmlsZSAnJXMnIgorbXNnc3RyICJlemluIGRhICclcycgZml0eGF0ZWdpYSBpdHhpIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6Mzk2CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB3cml0ZSBkZXRhaWxzIG9mIGAlLjUwcycgdG8gYCUuMjUwcyciCittc2dzdHIgImh1dHMgZWdpbiBkdSAnJS41MHMnKHIpZW4geGVoZXRhc3VuYWsgJyUuMjUwcycoZSluIGlkYXp0ZWFuIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDIzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuICclcycgZm9yIHdyaXRpbmcgJXMgZGF0YWJhc2UiCittc2dzdHIgImh1dHMgZWdpbiBkdSAnJXMnIGlyZWtpdHplYW4gJXMgZGF0dS1iYXNlYSBpZGF6dGVrbyIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQyNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IGJ1ZmZlcmluZyBvbiAlcyBkYXRhYmFzZSBmaWxlIgorbXNnc3RyICJlemluIGRhIGJ1ZmZlcnJpayBlemFycmkgJXMgZGF0dS1iYXNlYXJlbiBmaXR4YXRlZ2lhbiIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQzOAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgJXMgZGF0YWJhc2UgcmVjb3JkIGFib3V0ICclLjUwcycgdG8gJyUuMjUwcyciCittc2dzdHIgIiIKKyJodXRzIGVnaW4gZHUgJXMgZGF0dS1iYXNlYXJlbiBlcnJlZ2lzdHJvYSAnJS41MHMnKHIpaSBidXJ1eiBpZGF6dGVhbiAtICIKKyInJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ0NgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZmx1c2ggJXMgZGF0YWJhc2UgdG8gJyUuMjUwcyciCittc2dzdHIgImh1dHMgZWdpbiBkdSAlcyBkYXR1LWJhc2VhIGh1c3RlYW4gLSAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ0OAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZnN5bmMgJXMgZGF0YWJhc2UgdG8gJyUuMjUwcyciCittc2dzdHIgImh1dHMgZWdpbiBkdSAlcyBkYXR1LWJhc2VhICclLjI1MHMnKHIpZWtpbiBzaW5rcm9uaXphdHplYW4iCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNsb3NlICclLjI1MHMnIGFmdGVyIHdyaXRpbmcgJXMgZGF0YWJhc2UiCittc2dzdHIgImh1dHMgZWdpbiBkdSAnJS4yNTBzJyBpeHRlYW4gJXMgZGF0dS1iYXNlYSBpZGF0emkgb25kb3JlbiIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ1NQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gbGluayAnJS4yNTBzJyB0byAnJS4yNTBzJyBmb3IgYmFja3VwIG9mICVzIGRhdGFiYXNlIgorbXNnc3RyICIiCisiaHV0cyBlZ2luIGR1ICclLjI1MHMnIGV0YSAnJS4yNTBzJyBlc3Rla2F0emVhbiwgJXMgZGF0dS1iYXNlYXJlbiBiYWJlc2tvcGlhICIKKyJlZ2l0ZWtvIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDU4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBpbnN0YWxsICclLjI1MHMnIGFzICclLjI1MHMnIGNvbnRhaW5pbmcgJXMgZGF0YWJhc2UiCittc2dzdHIgImh1dHMgZWdpbiBkdSAnJS4yNTBzJyAnJS4yNTBzJyBnaXNhIGluc3RhbGF0emVhbiAlcyBkYXR1LWJhc2VhcmVraW4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzo5NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IHVucmVjb3ZlcmFibGUgZmF0YWwgZXJyb3IsIGFib3J0aW5nOlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisiJXM6IGVycm9yZSBrb25wb25lemluYSwgdXp0ZW46XG4iCisiICVzXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoxMDAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIlczogdW5yZWNvdmVyYWJsZSBmYXRhbCBlcnJvciwgYWJvcnRpbmc6XG4iCisjfCAiICVzXG4iCittc2dpZCAiIgorIiVzOiBvdXRzaWRlIGVycm9yIGNvbnRleHQsIGFib3J0aW5nOlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisiJXM6IGVycm9yZSBrb25wb25lemluYSwgdXp0ZW46XG4iCisiICVzXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoxMjAKKyMsIGZ1enp5CisjfCBtc2dpZCAib3V0IG9mIG1lbW9yeSBmb3IgbmV3IGNsZWFudXAgZW50cnkiCittc2dpZCAib3V0IG9mIG1lbW9yeSBmb3IgbmV3IGVycm9yIGNvbnRleHQiCittc2dzdHIgIm1lbW9yaWFyaWsgZXogZ2FyYmlrZXRhLXNhcnJlcmEgYmVycmlhcmVudHphdCIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjE4MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IGVycm9yIHdoaWxlIGNsZWFuaW5nIHVwOlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisiJXM6IGVycm9yZWEgZ2FyYml0emVhbjpcbiIKKyIgJXNcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjIwMQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZHBrZzogdG9vIG1hbnkgbmVzdGVkIGVycm9ycyBkdXJpbmcgZXJyb3IgcmVjb3ZlcnkgISFcbiIKK21zZ2lkICIlczogdG9vIG1hbnkgbmVzdGVkIGVycm9ycyBkdXJpbmcgZXJyb3IgcmVjb3ZlcnkhIVxuIgorbXNnc3RyICJkcGtnOiBoYWJpYXJhdHV0YWtvIGVycm9yZSBnZWhpZWdpIGVycm9yZSBrb25wb25rZXRhbiFcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjI2OCBsaWIvZHBrZy9laGFuZGxlLmM6MzA3Cittc2dpZCAib3V0IG9mIG1lbW9yeSBmb3IgbmV3IGNsZWFudXAgZW50cnkiCittc2dzdHIgIm1lbW9yaWFyaWsgZXogZ2FyYmlrZXRhLXNhcnJlcmEgYmVycmlhcmVudHphdCIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjI5MQorbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBjbGVhbnVwIGVudHJ5IHdpdGggbWFueSBhcmd1bWVudHMiCittc2dzdHIgIm1lbW9yaWFyaWsgZXogYXJndW1lbnR1IHVnYXJpZHVuIGdhcmJpa2V0YS1zYXJyZXJhcmVudHphdCIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjM1MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiJXM6IHdhcm5pbmc6ICVzXG4iCittc2dpZCAiJXM6IGVycm9yOiAlc1xuIgorbXNnc3RyICIlczogYWJpc3VhOiAlc1xuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MzkzCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB3YXJuaW5nOiAlc1xuIgorbXNnc3RyICIlczogYWJpc3VhOiAlc1xuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6NDE2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiVzOiVkOiBpbnRlcm5hbCBlcnJvcjogJXNcbiIKK21zZ3N0ciAiJXM6JXM6JWQ6IGJhcm5la28gZXJyb3JlYTogJXNcbiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgaXMgbWlzc2luZyIKK21zZ3N0ciAiJXMgZmFsdGEgZGEiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJgJS4qcycgaXMgbm90IGFsbG93ZWQgZm9yICVzIgorbXNnaWQgIiclLjUwcycgaXMgbm90IGFsbG93ZWQgZm9yICVzIgorbXNnc3RyICInJS4qcycgLSBleiBkdSBiYWltZW5payBob25ldGFyYWtvOiAlcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NzMKKyMsIGMtZm9ybWF0Cittc2dpZCAianVuayBhZnRlciAlcyIKK21zZ3N0ciAiaG9uZW4gb25kb3JlbmdvYWsgYmF6dGVyZ2FycmlhazogJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjg3CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgcGFja2FnZSBuYW1lICglLjI1MHMpIgorbXNnc3RyICJwYWtldGVhcmVuIGl6ZW5hIGJhbGlvZ2FiZWEgKCUuMjUwcykiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJlbXB0eSBmaWxlIGRldGFpbHMgZmllbGQgYCVzJyIKK21zZ3N0ciAiZml0eGF0ZWdpYXJlbiB4ZWhldGFzdW5lbiAnJXMnIGVyZW11YSBodXRzaWsgZGFnbyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTA1CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgZGV0YWlscyBmaWVsZCBgJXMnIG5vdCBhbGxvd2VkIGluIHN0YXR1cyBmaWxlIgorbXNnc3RyICIiCisiZml0eGF0ZWdpYXJlbiB4ZWhldGFzdW5lbiAnJXMnIGVyZW11YSBleiBkYSBvbmFydHplbiBlZ29lcmFyZW4gZml0eGF0ZWdpYW4iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjExOAorIywgYy1mb3JtYXQKK21zZ2lkICJ0b28gbWFueSB2YWx1ZXMgaW4gZmlsZSBkZXRhaWxzIGZpZWxkIGAlcycgKGNvbXBhcmVkIHRvIG90aGVycykiCittc2dzdHIgIiIKKyJmaXR4YXRlZ2lhcmVuIHhlaGV0YXN1bmVuICclcycgZXJlbXVhbiBiYWxpbyBnZWhpZWdpIChiZXN0ZSBiYXR6dWVuIGFsZGVhbikiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjEzMgorIywgYy1mb3JtYXQKK21zZ2lkICJ0b28gZmV3IHZhbHVlcyBpbiBmaWxlIGRldGFpbHMgZmllbGQgYCVzJyAoY29tcGFyZWQgdG8gb3RoZXJzKSIKK21zZ3N0ciAiIgorImZpdHhhdGVnaWFyZW4geGVoZXRhc3VuZW4gJyVzJyBlcmVtdWFuIGJhbGlvIGd1dHhpZWdpIChiZXN0ZSBiYXR6dWVuIGFsZGVhbikiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE1NAorbXNnaWQgInllcy9ubyBpbiBib29sZWFuIGZpZWxkIgorbXNnc3RyICJiYWkvZXogZXJlbXUgYm9vbGVhcnJlYW4iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE3NAorbXNnaWQgIndvcmQgaW4gYHByaW9yaXR5JyBmaWVsZCIKK21zZ3N0ciAiJ3ByaW9yaXR5JyBlcmVtdWtvIGhpdHphIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxODYKK21zZ2lkICJ2YWx1ZSBmb3IgYHN0YXR1cycgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICInc3RhdHVzJyBlcmVtdWtvIGJhbGlvYSBleiBkYSBvbmFydHplbiB0ZXN0dWluZ3VydSBob25ldGFuIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxOTEKK21zZ2lkICJmaXJzdCAod2FudCkgd29yZCBpbiBgc3RhdHVzJyBmaWVsZCIKK21zZ3N0ciAiJ3N0YXR1cycgZXJlbXVrbyBsZWhlbmVuZ28gaGl0emEgKG5haGlhKSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTk0Cittc2dpZCAic2Vjb25kIChlcnJvcikgd29yZCBpbiBgc3RhdHVzJyBmaWVsZCIKK21zZ3N0ciAiJ3N0YXR1cycgZXJlbXVrbyBiaWdhcnJlbiBoaXR6YSAoZXJyb3JlYSkiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE5NworbXNnaWQgInRoaXJkIChzdGF0dXMpIHdvcmQgaW4gYHN0YXR1cycgZmllbGQiCittc2dzdHIgIidzdGF0dXMnIGVyZW11a28gaGlydWdhcnJlbiBoaXR6YSAoZWdvZXJhKSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjA3CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGluIFZlcnNpb24gc3RyaW5nICclLjI1MHMnIgorbXNnc3RyICJlcnJvcmVhICclLjI1MHMnIFZlcnNpb24ga2F0ZWFuIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyMTgKK21zZ2lkICJvYnNvbGV0ZSBgUmV2aXNpb24nIG9yIGBQYWNrYWdlLVJldmlzaW9uJyBmaWVsZCB1c2VkIgorbXNnc3RyICInUmV2aXNpb24nIGVkbyAnUGFja2FnZS1SZXZpc2lvbicgZXJlbXUgemFoYXJraXR1YWsgZXJhYmlsaSBkaXJhIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyMzUKK21zZ2lkICJ2YWx1ZSBmb3IgYGNvbmZpZy12ZXJzaW9uJyBmaWVsZCBub3QgYWxsb3dlZCBpbiB0aGlzIGNvbnRleHQiCittc2dzdHIgIidjb25maWctdmVyc2lvbicgZXJlbXVrbyBiYWxpb2EgZXogZGEgb25hcnR6ZW4gdGVzdHVpbmd1cnUgaG9uZXRhbiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjQwCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGluIENvbmZpZy1WZXJzaW9uIHN0cmluZyAnJS4yNTBzJyIKK21zZ3N0ciAiZXJyb3JlYSAnJS4yNTBzJyBDb25maWctVmVyc2lvbiBrYXRlYW4iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjI2NgorIywgYy1mb3JtYXQKK21zZ2lkICJ2YWx1ZSBmb3IgYGNvbmZmaWxlcycgaGFzIG1hbGZvcm1hdHRlZCBsaW5lIGAlLipzJyIKK21zZ3N0ciAiJ2NvbmZmaWxlcycgYmFsaW9hayAnJS4qcycgbGVycm9hIGdhaXpraSBvc2F0dXRhIGRhdWthIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyODcKKyMsIGMtZm9ybWF0Cittc2dpZCAidmFsdWUgZm9yIGBjb25mZmlsZXMnIGhhcyBsaW5lIHN0YXJ0aW5nIHdpdGggbm9uLXNwYWNlIGAlYyciCittc2dzdHIgIiIKKyInY29uZmZpbGVzJyBiYWxpb2tvIGxlcnJvYSB6dXJpdW5lYSBleiBkZW4gJyVjJyBrYXJha3RlcmVhcmVraW4gaGFzdGVuIGRhIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzozMDQKK21zZ2lkICJyb290IG9yIG51bGwgZGlyZWN0b3J5IGlzIGxpc3RlZCBhcyBhIGNvbmZmaWxlIgorbXNnc3RyICIiCisiZXJyb2tvIGRpcmVrdG9yaW9hIGVkbyBkaXJla3RvcmlvIGJhbGlvZ2FiZWEgY29uZmZpbGUgZ2lzYSB6ZXJyZW5kYXR1IGRhIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzozNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIG1pc3NpbmcgcGFja2FnZSBuYW1lLCBvciBnYXJiYWdlIHdoZXJlIHBhY2thZ2UgbmFtZSBleHBlY3RlZCIKK21zZ3N0ciAiIgorIiclcycgZXJlbXVhLCBwYWtldGVhcmVuIGl6ZW5hIGZhbHRhIGRhLCBlZG8gemFib3JyYSBkYWdvIHBha2V0ZWFyZW4gaXplbmEgIgorImVzcGVybyB6ZW4gbGVrdWFuIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzozNzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBmaWVsZCwgaW52YWxpZCBwYWNrYWdlIG5hbWUgYCUuMjU1cyc6ICVzIgorbXNnc3RyICInJXMnIGVyZW11YSwgJyUuMjU1cycgcGFrZXRlYXJlbiBpemVuIGJhbGlvZ2FiZWE6ICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgYmFkIHZlcnNpb24gcmVsYXRpb25zaGlwICVjJWMiCittc2dzdHIgIiIKKyInJXMnIGVyZW11YSwgaG9uZWtpa28gZXJyZWZlcmVudHppYTogJyUuMjU1cyc6XG4iCisiICVjJWMgYmVydHNpbyBlcmxhemlvIG9rZXJyYSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDEyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6XG4iCisiIGAlYycgaXMgb2Jzb2xldGUsIHVzZSBgJWM9JyBvciBgJWMlYycgaW5zdGVhZCIKK21zZ3N0ciAiIgorIiclcycgZXJlbXVhLCBob25la2lrbyBlcnJlZmVyZW50emlhOiAnJS4yNTVzJzpcbiIKKyIgJyVjJyB6YWhhcmtpdHVhIGRhZ287IGhvcnJlbiBvcmRleiwgZXJhYmlsaSAnJWM9JyBlZG8gJyVjJWMnIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgaW1wbGljaXQgZXhhY3QgbWF0Y2ggb24gdmVyc2lvbiBudW1iZXIsIHN1Z2dlc3QgdXNpbmcgYD0nIGluc3RlYWQiCittc2dzdHIgIiIKKyInJXMnIGVyZW11YSwgaG9uZWtpa28gZXJyZWZlcmVudHppYTogJyUuMjU1cyc6XG4iCisiIGJhbGlvIHplaGF0eiBpbnBsaXppdHVhIGJlcnRzaW8gemVuYmFraWFuOyBob3JyZW4gb3JkZXogJz0nIGVyYWJpbHR6ZWEgIgorImdvbWVuZGF0emVuIGRhIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MzAKK21zZ2lkICJPbmx5IGV4YWN0IHZlcnNpb25zIG1heSBiZSB1c2VkIGZvciBQcm92aWRlcyIKK21zZ3N0ciAiQmVydHNpbyB6ZWhhdHphayBiYWthcnJpayBlcmFiaWwgZGFpdGV6a2UgUHJvdmlkZXMgZXJlbXVhbiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6XG4iCisiIHZlcnNpb24gdmFsdWUgc3RhcnRzIHdpdGggbm9uLWFscGhhbnVtZXJpYywgc3VnZ2VzdCBhZGRpbmcgYSBzcGFjZSIKK21zZ3N0ciAiIgorIiclcycgZXJlbXVhLCBob25la2lrbyBlcnJlZmVyZW50emlhOiAnJS4yNTVzJzpcbiIKKyIgYmVydHNpb2FyZW4gYmFsaW9hIGFsZmFudW1lcmlrb2EgZXogZGVuIGJhdGVraW4gaGFzdGVuIGRhOyB6dXJpdW5lIGJhdCAiCisiZ2VoaXR6ZWEgZ29tZW5kYXR6ZW4gZGEiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ1MSBsaWIvZHBrZy9maWVsZHMuYzo0NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOiB2ZXJzaW9uIGNvbnRhaW5zIGAlYyciCittc2dzdHIgIiclcycgZXJlbXVhLCBob25la2lrbyBlcnJlZmVyZW50emlhOiAnJS4yNTVzJzogYmVydHNpb2FrICclYycgZGF1a2EiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ1OQorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6IHZlcnNpb24gdW50ZXJtaW5hdGVkIgorbXNnc3RyICInJXMnIGVyZW11YSwgaG9uZWtpa28gZXJyZWZlcmVudHppYTogJyUuMjU1cyc6IGJlcnRzaW9hIG9zYXR1IGdhYmUiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ2NQorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gJyUuMjU1cyc6IGVycm9yIGluIHZlcnNpb24iCittc2dzdHIgIiclcycgZXJlbXVhLCBlcnJlZmVyZW50emlhOiAnJS4yNTVzJzogZXJyb3JlYSBiZXJ0c2lvYW4iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ3NQorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGZpZWxkLCBzeW50YXggZXJyb3IgYWZ0ZXIgcmVmZXJlbmNlIHRvIHBhY2thZ2UgYCUuMjU1cyciCittc2dzdHIgIiIKKyInJXMnIGVyZW11YSwgc2ludGF4aSBlcnJvcmVhJyUuMjU1cycgcGFrZXRlYXJlbiBlcnJlZmVyZW50emlhcmVuIG9uZG9yZW4iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ4MgorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZXMgKGB8Jykgbm90IGFsbG93ZWQgaW4gJXMgZmllbGQiCittc2dzdHIgImF1a2VyYSBhbHRlcm5hdGlib3JpayAoJ3wnKSBleiBkYSBvbmFydHplbiAlcyBlcmVtdWFuIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1MzYKK21zZ2lkICJ2YWx1ZSBmb3IgYHRyaWdnZXJzLXBlbmRpbmcnIGZpZWxkIG5vdCBhbGxvd2VkIGluIHRoaXMgY29udGV4dCIKK21zZ3N0ciAiJ3RyaWdnZXJzLXBlbmRpbmcnIGVyZW11a28gYmFsaW9hIGV6IGRhIG9uYXJ0emVuIHRlc3R1aW5ndXJ1IGhvbmV0YW4iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU0MworIywgYy1mb3JtYXQKK21zZ2lkICJpbGxlZ2FsIHBlbmRpbmcgdHJpZ2dlciBuYW1lIGAlLjI1NXMnOiAlcyIKK21zZ3N0ciAibGVnZXprYW5wb2tvIGJ1cnV0dSBnYWJla28gJyUuMjU1cycgYWJpYXJhemxlLWl6ZW5hOiAlcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTQ3CisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBwZW5kaW5nIHRyaWdnZXIgYCUuMjU1cyciCittc2dzdHIgImJpa29penR1cmlrbyBidXJ1dHUgZ2FiZWtvICclLjI1NXMnIGFiaWFyYXpsZWEiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU2MQorbXNnaWQgInZhbHVlIGZvciBgdHJpZ2dlcnMtYXdhaXRlZCcgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICIndHJpZ2dlcnMtYXdhaXRlZCcgZXJlbXVrbyBiYWxpb2EgZXogZGEgb25hcnR6ZW4gdGVzdHVpbmd1cnUgaG9uZXRhbiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTY4CisjLCBjLWZvcm1hdAorbXNnaWQgImlsbGVnYWwgcGFja2FnZSBuYW1lIGluIGF3YWl0ZWQgdHJpZ2dlciBgJS4yNTVzJzogJXMiCittc2dzdHIgImxlZ2V6a2FucG9rbyBwYWtldGUgaXplbmEgZXNwZXJvIHplbiAnJS4yNTVzJyBhYmlhcmF6bGVhbjogJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU3NAorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgYXdhaXRlZCB0cmlnZ2VyIHBhY2thZ2UgYCUuMjU1cyciCittc2dzdHIgImVzcGVybyB6ZW4gJyUuMjU1cycgYWJpYXJhemxlIHBha2V0ZWEgYmlrb2l6dHV0YSIKKworIzogbGliL2Rwa2cvZmlsZS5jOjUxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IHNvdXJjZSBmaWxlICclLjI1MHMnIgorbXNnc3RyICJlemluIGRhIGl0dXJidXJ1a28gJyUuMjUwcycgZml0eGF0ZWdpYSBpcmVraSIKKworIzogbGliL2Rwa2cvZmlsZS5jOjU1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGFuZ2Ugb3duZXJzaGlwIG9mIHRhcmdldCBmaWxlICclLjI1MHMnIgorbXNnc3RyICJlemluIGRhIGhlbGJ1cnVrbyAnJS4yNTBzJyBmaXR4YXRlZ2lhcmVuIGphYmV0emEgYWxkYXR1IgorCisjOiBsaWIvZHBrZy9maWxlLmM6NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNldCBtb2RlIG9mIHRhcmdldCBmaWxlICclLjI1MHMnIgorbXNnc3RyICJlemluIGRhIGhlbGJ1cnVrbyAnJS4yNTBzJyBmaXR4YXRlZ2lhcmVuIG1vZHVhIGV6YXJyaSIKKworIzogbGliL2Rwa2cvZmlsZS5jOjg1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gY2xvc2UgJXM6ICVzIgorbXNnaWQgInVuYWJsZSB0byB1bmxvY2sgJXMiCittc2dzdHIgImV6aW4gZGEgJXMgaXR4aTogJXMiCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzoxMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoZWNrIGZpbGUgJyVzJyBsb2NrIHN0YXR1cyIKK21zZ3N0ciAiZXppbiBkYSAnJXMnIGZpdHhhdGVnaWFyZW4gYmxva2VvYXJlbiBlZ29lcmEgZWdpYXp0YXR1IgorCisjOiBsaWIvZHBrZy9maWxlLmM6MTQ2CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJzdGF0dXMgZGF0YWJhc2UgYXJlYSBpcyBsb2NrZWQgYnkgYW5vdGhlciBwcm9jZXNzIgorbXNnaWQgIiVzIGlzIGxvY2tlZCBieSBhbm90aGVyIHByb2Nlc3MiCittc2dzdHIgImVnb2VyYXJlbiBkYXR1LWJhc2VhIGJlc3RlIHByb3plc3VyZW4gYmF0ZWsgYmxva2VhdHV0YSBkYXVrYSIKKworIzogbGliL2Rwa2cvZmlsZS5jOjE0OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIGNsb3NlICVzOiAlcyIKK21zZ2lkICJ1bmFibGUgdG8gbG9jayAlcyIKK21zZ3N0ciAiZXppbiBkYSAlcyBpdHhpOiAlcyIKKworIzogbGliL2Rwa2cvbG9nLmM6NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGRuJ3Qgb3BlbiBsb2cgYCVzJzogJXNcbiIKK21zZ3N0ciAiZXppbiBpemFuIGRhICclcycgZWd1bmthcmlhIGlyZWtpOiAlc1xuIgorCisjOiBsaWIvZHBrZy9sb2cuYzo4NQorbXNnaWQgIjxwYWNrYWdlIHN0YXR1cyBhbmQgcHJvZ3Jlc3MgZmlsZSBkZXNjcmlwdG9yPiIKK21zZ3N0ciAiPHBha2V0ZWFyZW4gZWdvZXJhIGV0YSBhdXJyZXJhcGVuYXJlbiBmaXR4YXRlZ2lhcmVuIGRlc2tyaXB0b3JlYT4iCisKKyM6IGxpYi9kcGtnL2xvZy5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgdG8gc3RhdHVzIGZkICVkIgorbXNnc3RyICJlemluIGRhICVkLiBmZC1hcmVuIGVnb2VyYW4gaWRhdHppIgorCisjOiBsaWIvZHBrZy9tbGliLmM6NDQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAibWFsbG9jIGZhaWxlZCAoJWxkIGJ5dGVzKSIKK21zZ2lkICJtYWxsb2MgZmFpbGVkICglenUgYnl0ZXMpIgorbXNnc3RyICJtYWxsb2MtZWsgaHV0cyBlZ2luIGR1ICglbGQgYnl0ZSkiCisKKyM6IGxpYi9kcGtnL21saWIuYzo1OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAicmVhbGxvYyBmYWlsZWQgKCVsZCBieXRlcykiCittc2dpZCAicmVhbGxvYyBmYWlsZWQgKCV6dSBieXRlcykiCittc2dzdHIgInJlYWxsb2MtZWsgaHV0cyBlZ2luIGR1ICglbGQgYnl0ZSkiCisKKyM6IGxpYi9kcGtnL21saWIuYzo3MiBsaWIvZHBrZy9tbGliLmM6OTAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI3NworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjMzNCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTEwNworbXNnaWQgImZhaWxlZCB0byBhbGxvY2F0ZSBtZW1vcnkiCittc2dzdHIgImh1dHMgZWdpbiBkdSBtZW1vcmlhIGVzbGVpdHplYW4iCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGR1cCBmb3Igc3RkJXMiCittc2dzdHIgInN0ZCVzOiBodXRzIGVnaW4gZHUgJ2R1cCcgZWdpdGVhbiIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEwMworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZHVwIGZvciBmZCAlZCIKK21zZ3N0ciAiZmQgJWQ6IGh1dHMgZWdpbiBkdSAnZHVwJyBlZ2l0ZWFuIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTA5Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBwaXBlIgorbXNnc3RyICJodXRzIGVnaW4gZHUga2FuYWxpemF6aW9hIHNvcnR6ZWFuIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTE3CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHdyaXRpbmcgdG8gJyVzJyIKK21zZ3N0ciAiZXJyb3JlYSAnJXMnKGUpbiBpZGF6dGVhbiIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBmaWxlZGVzY3JpcHRvciBmbGFncyBmb3IgJS4yNTBzIgorbXNnc3RyICJlemluIGRhIGlyYWt1cnJpIGZpdHhhdGVnaWFyZW4gZGVza3JpcHRvcmVhIC0gJS4yNTBzIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTI2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgY2xvc2Utb24tZXhlYyBmbGFnIGZvciAlLjI1MHMiCittc2dzdHIgImV6aW4gZGEgZXphcnJpIGNsb3NlLW9uLWV4ZWMgYmFuZGVyYSAtICUuMjUwcyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjYzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZpZ3VyYXRpb24gZXJyb3I6ICVzOiVkOiAlcyIKK21zZ3N0ciAia29uZmlndXJhemlvYXJlbiBlcnJvcmVhOiAlczolZDogJXMiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzo3NQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiBjb25maWd1cmF0aW9uIGZpbGUgJyUuMjU1cycgZm9yIHJlYWRpbmc6ICVzIgorbXNnc3RyICIiCisiaHV0cyBlZ2luIGR1ICclLjI1NXMnIGtvbmZpZ3VyYXppb2tvIGZpdHhhdGVnaWEgaXJla2l0emVhbiBpcmFrdXJ0emVrbzogJXMiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5iYWxhbmNlZCBxdW90ZXMgaW4gJyVzJyIKK21zZ3N0ciAicGFyZWthdHUgZ2FiZWtvIGtvbWF0eG9hayAnJXMnKGUpbiIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjExNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiAnJXMnIgorbXNnc3RyICInJXMnIGF1a2VyYSBlemV6YWd1bmEiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBuZWVkcyBhIHZhbHVlIgorbXNnc3RyICInJXMnKGUpayBiYWxpbyBiYXQgYmVoYXIgZHUiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBkb2VzIG5vdCB0YWtlIGEgdmFsdWUiCittc2dzdHIgIiclcycoZSlrIGV6IGR1IGJhbGlvcmlrIGhhcnR6ZW4iCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVhZCBlcnJvciBpbiBjb25maWd1cmF0aW9uIGZpbGUgYCUuMjU1cyciCittc2dzdHIgImlyYWt1cmtldGFyZW4gZXJyb3JlYSAnJS4yNTVzJyBrb25maWd1cmF6aW9rbyBmaXR4YXRlZ2lhbiIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nIGNvbmZpZ3VyYXRpb24gZmlsZSBgJS4yNTVzJyIKK21zZ3N0ciAiZXJyb3JlYSAnJS4yNTVzJyBrb25maWd1cmF6aW9rbyBmaXR4YXRlZ2lhIGl4dGVhbiIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjE3MAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBvcGVuaW5nIGNvbmZpZ3VyYXRpb24gZGlyZWN0b3J5ICclcyciCittc2dzdHIgImVycm9yZWEgJyUuMjU1cycga29uZmlndXJhemlva28gZml0eGF0ZWdpYSBpeHRlYW4iCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gLS0lcyIKK21zZ3N0ciAiLS0lcyBhdWtlcmEgZXplemFndW5hIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgb3B0aW9uIHRha2VzIGEgdmFsdWUiCittc2dzdHIgIi0tJXMgYXVrZXJhayBiYWxpbyBiYXQgaGFydHplbiBkdSIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjIzNworIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG9wdGlvbiBkb2VzIG5vdCB0YWtlIGEgdmFsdWUiCittc2dzdHIgIi0tJXMgYXVrZXJhayBleiBkdSBiYWxpb3JpayBoYXJ0emVuIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gb3B0aW9uIC0lYyIKK21zZ3N0ciAiLSVjIGF1a2VyYSBlemV6YWd1bmEiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLSVjIG9wdGlvbiB0YWtlcyBhIHZhbHVlIgorbXNnc3RyICItJWMgYXVrZXJhayBiYWxpbyBiYXQgaGFydHplbiBkdSIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI1OAorIywgYy1mb3JtYXQKK21zZ2lkICItJWMgb3B0aW9uIGRvZXMgbm90IHRha2UgYSB2YWx1ZSIKK21zZ3N0ciAiLSVjIGF1a2VyYWsgZXogZHUgYmFsaW9yaWsgaGFydHplbiIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI3MQorIywgYy1mb3JtYXQKK21zZ2lkICJvYnNvbGV0ZSBvcHRpb24gJy0tJXMnXG4iCittc2dzdHIgImF1a2VyYSB6YWhhcmtpdHVhICctLSVzJ1xuIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6Mjg3CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZsaWN0aW5nIGFjdGlvbnMgLSVjICgtLSVzKSBhbmQgLSVjICgtLSVzKSIKK21zZ3N0ciAiZWtpbnR6YSBnYXRhemthdHN1YWsgLSVjICgtLSVzKSBldGEgLSVjICgtLSVzKSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHZhbHVlIGZvciBgJXMnIGZpZWxkIgorbXNnc3RyICJiYWxpbyBiaWtvaXp0dWEgJyVzJyBlcmVtdWFuIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjE0NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1c2VyLWRlZmluZWQgZmllbGQgbmFtZSBgJS4qcycgdG9vIHNob3J0IgorbXNnc3RyICJlcmFiaWx0emFpbGVhayBkZWZpbml0dXRha28gJyUuKnMnIGVyZW11IGl6ZW5hIGxhYnVycmVnaWEgZGEiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MTUyCisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSB2YWx1ZSBmb3IgdXNlci1kZWZpbmVkIGZpZWxkIGAlLipzJyIKK21zZ3N0ciAiYmFsaW8gYmlrb2l6dHVhIGVyYWJpbHR6YWlsZWFrIGRlZmluaXR1dGFrbyAnJS4qcycgZXJlbXVhbiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMDcKK21zZ2lkICJDb25maWd1cmVkLVZlcnNpb24gZm9yIHBhY2thZ2Ugd2l0aCBpbmFwcHJvcHJpYXRlIFN0YXR1cyIKK21zZ3N0ciAiUGFrZXRlYXJlbiAnQ29uZmlndXJlZC1WZXJzaW9uJyBlZ29lcmEgZGVzZWdva2lhcmVraW4iCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjE4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgaGFzIHN0YXR1cyAlcyBidXQgdHJpZ2dlcnMgYXJlIGF3YWl0ZWQiCittc2dzdHIgInBha2V0ZWFrICVzIGVnb2VyYSB6dWVuIGJhaW5hIGFiaWFyYXpsZWFrIGVzcGVybyBkaXJhIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjIyMgorbXNnaWQgInBhY2thZ2UgaGFzIHN0YXR1cyB0cmlnZ2Vycy1hd2FpdGVkIGJ1dCBubyB0cmlnZ2VycyBhd2FpdGVkIgorbXNnc3RyICJwYWtldGVhayAndHJpZ2dlcnMtYXdhaXRlZCcgZWdvZXJhIGR1IGJhaW5hIGV6IHplbiBhYmlhcmF6bGVyaWsgZXNwZXJvIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjIyOAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGhhcyBzdGF0dXMgJXMgYnV0IHRyaWdnZXJzIGFyZSBwZW5kaW5nIgorbXNnc3RyICJwYWtldGVhayAlcyBlZ29lcmEgZHUgYmFpbmEgYWJpYXJhemxlYWsgZmFsdGEgZGlyYSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMzIKK21zZ2lkICJwYWNrYWdlIGhhcyBzdGF0dXMgdHJpZ2dlcnMtcGVuZGluZyBidXQgbm8gdHJpZ2dlcnMgcGVuZGluZyIKK21zZ3N0ciAicGFrZXRlYWsgJ3RyaWdnZXJzLXBlbmRpbmcnIGVnb2VyYSBkdSBiYWluYSBleiBkYSBhYmlhcmF6bGVyaWsgZmFsdGEiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjQyCittc2dpZCAiUGFja2FnZSB3aGljaCBpbiBzdGF0ZSBub3QtaW5zdGFsbGVkIGhhcyBjb25mZmlsZXMsIGZvcmdldHRpbmcgdGhlbSIKK21zZ3N0ciAiIgorIkluc3RhbGF0dSBnYWJla28gZWdvZXJhbiBrb25maWd1cmF6aW9rbyBmaXR4YXRlZ2lhayBkaXR1ZW4gcGFrZXRlYTogYWhhenR1ICIKKyJlZ2luZ28gZGlyYSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozMzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gcGFja2FnZSBpbmZvIGZpbGUgYCUuMjU1cycgZm9yIHJlYWRpbmciCittc2dzdHIgIiIKKyJodXRzIGVnaW4gZHUgJyUuMjU1cycgcGFrZXRlYXJlbiBpbmZvcm1hemlvIGZpdHhhdGVnaWEgaXJla2l0emVhbiBpcmFrdXJ0emVrbyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozNDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2FuJ3Qgc3RhdCBwYWNrYWdlIGluZm8gZmlsZSBgJS4yNTVzJyIKK21zZ3N0ciAiZXppbiBkYSAnJS4yNTVzJyBwYWtldGVhcmVuIGluZm9ybWF6aW8gZml0eGF0ZWdpYW4gJ3N0YXQnIGVnaW4iCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzQ3CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbid0IG1tYXAgcGFja2FnZSBpbmZvIGZpbGUgYCUuMjU1cyciCittc2dzdHIgImV6aW4gZGEgJyUuMjU1cycgcGFrZXRlYXJlbiBpbmZvcm1hemlvIGZpdHhhdGVnaWFuICdtbWFwJyBlZ2luIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjM1MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiY2FuJ3Qgc3RhdCBwYWNrYWdlIGluZm8gZmlsZSBgJS4yNTVzJyIKK21zZ2lkICJyZWFkaW5nIHBhY2thZ2UgaW5mbyBmaWxlICclLjI1NXMnIgorbXNnc3RyICJlemluIGRhICclLjI1NXMnIHBha2V0ZWFyZW4gaW5mb3JtYXppbyBmaXR4YXRlZ2lhbiAnc3RhdCcgZWdpbiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNsb3NlIGFmdGVyIHJlYWQ6IGAlLjI1NXMnIgorbXNnc3RyICJodXRzIGVnaW4gZHUgaXJha3Vycmkgb25kb3JlbiBpeHRlYW46ICclLjI1NXMnIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQwNAorIywgYy1mb3JtYXQKK21zZ2lkICJFT0YgYWZ0ZXIgZmllbGQgbmFtZSBgJS4qcyciCittc2dzdHIgIkVPRiAnJS4qcycgZXJlbXUgaXplbmFyZW4gb25kb3JlbiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MDcKKyMsIGMtZm9ybWF0Cittc2dpZCAibmV3bGluZSBpbiBmaWVsZCBuYW1lIGAlLipzJyIKK21zZ3N0ciAibGVycm8tamF1emlhICclLipzJyBlcmVtdSBpemVuZWFuIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQxMAorIywgYy1mb3JtYXQKK21zZ2lkICJNU0RPUyBFT0YgKF5aKSBpbiBmaWVsZCBuYW1lIGAlLipzJyIKK21zZ3N0ciAiTVNET1MgRU9GICheWikgJyUuKnMnIGVyZW11IGl6ZW5lYW4iCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDE0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpZWxkIG5hbWUgYCUuKnMnIG11c3QgYmUgZm9sbG93ZWQgYnkgY29sb24iCittc2dzdHIgIiclLipzJyBlcmVtdSBpemVuYXJlbiBvbmRvcmVuIGJpIHB1bnR1IGJlaGFyIGRpcmEiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDI1CisjLCBjLWZvcm1hdAorbXNnaWQgIkVPRiBiZWZvcmUgdmFsdWUgb2YgZmllbGQgYCUuKnMnIChtaXNzaW5nIGZpbmFsIG5ld2xpbmUpIgorbXNnc3RyICJFT0YgJyUuKnMnIGVyZW11a28gYmFsaW9hcmVuIGF1cnJldGlrIChhbWFpZXJha28gbGVycm8tamF1emlhIGZhbHRhKSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiTVNET1MgRU9GIGNoYXIgaW4gdmFsdWUgb2YgZmllbGQgYCUuKnMnIChtaXNzaW5nIG5ld2xpbmU/KSIKK21zZ3N0ciAiTVNET1MgRU9GIGthcmFrdGVyZWEgJyUuKnMnIGVyZW11a28gYmFsaW9hbiAobGVycm8tamF1emlhIGZhbHRhPykiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDQwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJuZXdsaW5lIGluIGZpZWxkIG5hbWUgYCUuKnMnIgorbXNnaWQgImJsYW5rIGxpbmUgaW4gdmFsdWUgb2YgZmllbGQgJyUuKnMnIgorbXNnc3RyICJsZXJyby1qYXV6aWEgJyUuKnMnIGVyZW11IGl6ZW5lYW4iCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDYxCisjLCBjLWZvcm1hdAorbXNnaWQgIkVPRiBkdXJpbmcgdmFsdWUgb2YgZmllbGQgYCUuKnMnIChtaXNzaW5nIGZpbmFsIG5ld2xpbmUpIgorbXNnc3RyICJFT0YgJyUuKnMnIGVyZW11a28gYmFsaW9hbiAoYW1haWVyYWtvIGxlcnJvLWphdXppYSBmYWx0YSBkYSkiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NTQ2Cittc2dpZCAic2V2ZXJhbCBwYWNrYWdlIGluZm8gZW50cmllcyBmb3VuZCwgb25seSBvbmUgYWxsb3dlZCIKK21zZ3N0ciAiIgorInBha2V0ZWFyZW4gaW5mb3JtYXppby1zYXJyZXJhIGJhdCBiYWlubyBnZWhpYWdvIGRhZ287IGJhdCBiYWthcnJpayBvbmFydHplbiAiCisiZGEiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NTcyCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHBhY2thZ2UgaW5mb3JtYXRpb24gaW4gYCUuMjU1cyciCittc2dzdHIgInBha2V0ZWFyZW4gaW5mb3JtYXppb3JpayBlejogJyUuMjU1cyciCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjQ1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiJXMsIGluIGZpbGUgJyUuMjU1cycgbmVhciBsaW5lICVkIHBhY2thZ2UgJyUuMjU1cyc6XG4iCisjfCAiICIKK21zZ2lkICIiCisicGFyc2luZyBmaWxlICclLjI1NXMnIG5lYXIgbGluZSAlZCBwYWNrYWdlICclLjI1NXMnOlxuIgorIiAlLjI1NXMiCittc2dzdHIgIiIKKyIlcywgJyUuMjU1cycgZml0eGF0ZWdpYW4gJWQuIGxlcnJvdGlrIGdlcnR1ICclLjI1NXMnIHBha2V0ZWFuLlxuIgorIiAiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjQ4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiJXMsIGluIGZpbGUgJyUuMjU1cycgbmVhciBsaW5lICVkOlxuIgorI3wgIiAiCittc2dpZCAiIgorInBhcnNpbmcgZmlsZSAnJS4yNTVzJyBuZWFyIGxpbmUgJWQ6XG4iCisiICUuMjU1cyIKK21zZ3N0ciAiIgorIiVzLCAnJS4yNTVzJyBmaXR4YXRlZ2lhbiAlZC4gbGVycm90aWsgZ2VydHU6XG4iCisiICIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MTI1Cittc2dpZCAibWF5IG5vdCBiZSBlbXB0eSBzdHJpbmciCittc2dzdHIgImJhbGl0ZWtlIGthdGUgaHV0c2EgZXogaXphdGVhIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoxMjcKKyMsIGZ1enp5CisjfCBtc2dpZCAibXVzdCBzdGFydCB3aXRoIGFuIGFscGhhbnVtZXJpYyIKK21zZ2lkICJtdXN0IHN0YXJ0IHdpdGggYW4gYWxwaGFudW1lcmljIGNoYXJhY3RlciIKK21zZ3N0ciAiYWxmYXplbmJha2l6a28gYmF0ZWtpbiBoYXNpIGJlaGFyIGR1IgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoxMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2hhcmFjdGVyIGAlYycgbm90IGFsbG93ZWQgKG9ubHkgbGV0dGVycywgZGlnaXRzIGFuZCBjaGFyYWN0ZXJzIGAlcycpIgorbXNnc3RyICInJWMnIGthcmFrdGVyZWEgZXogZGEgb25hcnR6ZW4gKGxldHJhaywgZGlnaXR1YWsgZXRhICVzIHNvaWxpaykiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjE3OAorIywgZnV6enkKKyN8IG1zZ2lkICI8bm9uZT4iCittc2djdHh0ICJ2ZXJzaW9uIgorbXNnaWQgIjxub25lPiIKK21zZ3N0ciAiPGJhdCBlcmUgZXo+IgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyMDkKK21zZ2lkICJ2ZXJzaW9uIHN0cmluZyBpcyBlbXB0eSIKK21zZ3N0ciAiYmVydHNpb2FyZW4ga2F0ZWEgaHV0c2lrIGRhZ28iCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjIyNAorbXNnaWQgInZlcnNpb24gc3RyaW5nIGhhcyBlbWJlZGRlZCBzcGFjZXMiCittc2dzdHIgImJlcnRzaW9hcmVuIGthdGVhayB6dXJpdW5lIGthcHN1bGF0dWFrIGRpdHUiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjIzMAorbXNnaWQgImVwb2NoIGluIHZlcnNpb24gaXMgbm90IG51bWJlciIKK21zZ3N0ciAiYmVydHNpb2tvIGFyb2EgZXogZGEgemVuYmFraSBiYXQiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjIzMgorbXNnaWQgIm5vdGhpbmcgYWZ0ZXIgY29sb24gaW4gdmVyc2lvbiBudW1iZXIiCittc2dzdHIgImV6IGRhZ28gZXplciBiaSBwdW50dWVuIG9uZG9yZW4gYmVydHNpbyB6ZW5iYWtpYW4iCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjI0NworbXNnaWQgInZlcnNpb24gbnVtYmVyIGRvZXMgbm90IHN0YXJ0IHdpdGggZGlnaXQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjUwCittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgaW4gdmVyc2lvbiBudW1iZXIiCittc2dzdHIgImthcmFrdGVyZSBiYWxpb2dhYmVhIGJlcnRzaW8gemVuYmFraWFuIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyNTQKK21zZ2lkICJpbnZhbGlkIGNoYXJhY3RlciBpbiByZXZpc2lvbiBudW1iZXIiCittc2dzdHIgImthcmFrdGVyZSBiYWxpb2dhYmVhIGdhaW5iZWdpcmFrZXRhcmVuIHplbmJha2lhbiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6Mjk5IGxpYi9kcGtnL3BhcnNlaGVscC5jOjMxMQorIywgYy1mb3JtYXQKK21zZ2lkICJtaXNzaW5nICVzIgorbXNnc3RyICIlcyBmYWx0YSBkYSIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MzAxIGxpYi9kcGtnL3BhcnNlaGVscC5jOjMxNAorIywgYy1mb3JtYXQKK21zZ2lkICJlbXB0eSB2YWx1ZSBmb3IgJXMiCittc2dzdHIgIiVzOiBiYWxpbyBodXRzYSIKKworIzogbGliL2Rwa2cvcGtnLWZvcm1hdC5jOjgwCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgY2hhcmFjdGVyIGAlYycgaW4gZmllbGQgd2lkdGhcbiIKK21zZ3N0ciAiYmFsaW9nYWJla28gJyVjJyBrYXJha3RlcmVhIGVyZW11YXJlbiB6YWJhbGVyYW5cbiIKKworIzogbGliL2Rwa2cvcGtnLWZvcm1hdC5jOjE3MgorIywgYy1mb3JtYXQKK21zZ2lkICJDbG9zaW5nIGJyYWNlIG1pc3NpbmcgaW4gZm9ybWF0XG4iCittc2dzdHIgIkl0eGllcmFrbyBnaWx0emEgZmFsdGEgZGEgZm9ybWF0dWFuXG4iCisKKyM6IGxpYi9kcGtnL3BrZy1zaG93LmM6NDAKK21zZ2lkICIobm8gZGVzY3JpcHRpb24gYXZhaWxhYmxlKSIKK21zZ3N0ciAiKGF6YWxwZW5hIGV6IGRhZ28gZXJhYmlsZ2FycmkpIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGlnbm9yZSBzaWduYWwgJXMgYmVmb3JlIHJ1bm5pbmcgJS4yNTBzIgorbXNnc3RyICJlemluIHphaW8gZXppa3VzaSBlZ2luICVzIHNlaW5hbGVhcmkgJS4yNTBzIGV4ZWt1dGF0dSBhdXJyZXRpayIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjY4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHVuLWNhdGNoaW5nIHNpZ25hbCAlczogJXNcbiIKK21zZ3N0ciAiZXJyb3JlYSAlcyBzZWluYWxlYSBoYXJyYXBhdHUgZXogZGVsYWtvOiAlc1xuIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgKHN1YnByb2Nlc3MpOiAlc1xuIgorbXNnc3RyICIlcyAoYXpwaXByb3plc3VhKTogJXNcbiIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjg5IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo0NTQKK21zZ2lkICJmb3JrIGZhaWxlZCIKK21zZ3N0ciAiaHV0cyBlZ2luIGR1IHNhcmRldHplYW4iCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMTkKKyMsIGMtZm9ybWF0Cittc2dpZCAic3VicHJvY2VzcyAlcyByZXR1cm5lZCBlcnJvciBleGl0IHN0YXR1cyAlZCIKK21zZ3N0ciAiJXMgYXpwaXByb3plc3VhayAlZCBlcnJvcmVhIGVtYW4gZHUgaXJ0ZWVyYW4iCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMjgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIndhaXQgZm9yIHN1YnByb2Nlc3MgJXMgZmFpbGVkIgorbXNnaWQgInN1YnByb2Nlc3MgJXMgd2FzIGludGVycnVwdGVkIgorbXNnc3RyICJodXRzIGVnaW4gZHUgJXMgYXpwaXByb3plc3VhcmkgaXR4YXJvdGVhbiIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEzMAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic3VicHJvY2VzcyAlcyBraWxsZWQgYnkgc2lnbmFsICglcyklcyIKK21zZ2lkICJzdWJwcm9jZXNzICVzIHdhcyBraWxsZWQgYnkgc2lnbmFsICglcyklcyIKK21zZ3N0ciAiJXMgYXpwaXByb3plc3VhIGhpbCBkdSAoJXMpJXMgc2VpbmFsZWFrIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTMyCittc2dpZCAiLCBjb3JlIGR1bXBlZCIKK21zZ3N0ciAiLCBudWtsZW9hIGlyYXVsaXRhIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgInN1YnByb2Nlc3MgJXMgZmFpbGVkIHdpdGggd2FpdCBzdGF0dXMgY29kZSAlZCIKK21zZ3N0ciAiJXMgYXpwaXByb3plc3VhayBodXRzIGVnaW4gZHUgaXR4YXJvdGVrbyAlZCBlZ29lcmEga29kZWFyZWtpbiIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjE1MSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NDYxCisjLCBjLWZvcm1hdAorbXNnaWQgIndhaXQgZm9yIHN1YnByb2Nlc3MgJXMgZmFpbGVkIgorbXNnc3RyICJodXRzIGVnaW4gZHUgJXMgYXpwaXByb3plc3VhcmkgaXR4YXJvdGVhbiIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBwYWNrYWdlIG5hbWUgYCUuMjUwcycgaW4gdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorIiclLjI1MHMnIHBha2V0ZWFyZW4gaXplbiBiYWxpb2dhYmVhIGJhenRlcnR1dGFrbyBhYmlhcmF6bGVlbiAnJS4yNTBzJyAiCisiZml0eGF0ZWdpYW4iCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjgxCisjLCBjLWZvcm1hdAorbXNnaWQgInRydW5jYXRlZCB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJ0cnVua2F0dXRha28gYmF6dGVydHV0YWtvIGFiaWFyYXpsZWVuICclLjI1MHMnIGZpdHhhdGVnaWEiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjg1CisjLCBjLWZvcm1hdAorbXNnaWQgInN5bnRheCBlcnJvciBpbiB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIGF0IGNoYXJhY3RlciBgJXMnJXMiCittc2dzdHIgIiIKKyJzaW50YXhpLWVycm9yZWEgYmF6dGVydHV0YWtvIGFiaWFyYXpsZWVuICclLjI1MHMnIGZpdHhhdGVnaWtvICclcyclcyAiCisia2FyYWt0ZXJlYW4iCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3Blbi9jcmVhdGUgdHJpZ2dlcnMgbG9ja2ZpbGUgYCUuMjUwcyciCittc2dzdHIgImV6aW4gZGEgJyUuMjUwcycgYWJpYXJhemxlZW4gYmxva2Vva28gZml0eGF0ZWdpYSBpcmVraS9zb3J0dSIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MTQxCisjLCBmdXp6eQorI3wgbXNnaWQgInRyaWdnZXJlZCIKK21zZ2lkICJ0cmlnZ2VycyBhcmVhIgorbXNnc3RyICJhYmlhcmF6aXRhIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorImV6aW4gZGEgYmF6dGVydHV0YWtvIGFiaWFyYXpsZWVuICclLjI1MHMnIGZpdHhhdGVnaWFyZW4gZWdvZXJhIGVza3VyYXR1IgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiZXppbiBkYSBiYXp0ZXJ0dXRha28gYWJpYXJhemxlZW4gJyUuMjUwcycgZml0eGF0ZWdpYSBpcmVraSIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MTc5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuL2NyZWF0ZSBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiZXppbiBkYSBiYXp0ZXJ0dXRha28gYWJpYXJhemxlZW4gJyUuMjUwcycgZml0eGF0ZWdpIGJlcnJpYSBpcmVraS9zb3J0dSIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MjE1CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHJlYWRpbmcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiZXJyb3JlYSBiYXp0ZXJ0dXRha28gYWJpYXJhemxlZW4gJyUuMjUwcycgZml0eGF0ZWdpYSBpcmFrdXJ0emVhbiIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MjIzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiZXppbiBkYSBiYXp0ZXJ0dXRha28gYWJpYXJhemxlZW4gJyUuMjUwcycgZml0eGF0ZWdpIGJlcnJpYW4gaWRhdHppIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoyMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIG5ldyB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJlemluIGRhIGJhenRlcnR1dGFrbyBhYmlhcmF6bGVlbiAnJS4yNTBzJyBmaXR4YXRlZ2kgYmVycmlhIGl0eGkiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjIzMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiZXppbiBkYSBiYXp0ZXJ0dXRha28gYWJpYXJhemxlZW4gJyUuMjUwcycgZml0eGF0ZWdpIGJlcnJpYSBpbnN0YWxhdHUiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzoyMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImludmFsaWQgb3IgdW5rbm93biBzeW50YXggaW4gdHJpZ2dlciBuYW1lIGAlLjI1MHMnIChpbiB0cmlnZ2VyIGludGVyZXN0cyBmb3IgIgorInBhY2thZ2UgYCUuMjUwcycpIgorbXNnc3RyICIiCisiJyUuMjUwcycgYWJpYXJhemxlYXJlbiBpemVuYWsgc2ludGF4aSBiYWxpb2dhYmVhIGVkbyBlemV6YWd1bmEgZHUgKCclLjI1MHMnICIKKyJwYWtldGVhcmVuIGFiaWFyYXpsZWFyZW4gaW50ZXJlc2V0YW4pIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MjYzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuIHRyaWdnZXIgaW50ZXJlc3QgbGlzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisiaHV0cyBlZ2luIGR1IGFiaWFyYXpsZWFyZW4gaW50ZXJlc2VrbyAnJS4yNTBzJyB6ZXJyZW5kYS1maXR4YXRlZ2lhIGlyZWtpdHplYW4iCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzoyOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJld2luZCB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKyJodXRzIGVnaW4gZHUgYWJpYXJhemxlYXJlbiBpbnRlcmVzZWtvICclLjI1MHMnIHplcnJlbmRhLWZpdHhhdGVnaWEgIgorImJlcnJpcmFrdXJ0emVhbiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMwNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIHN5bnRheCBlcnJvcjsgaWxsZWdhbCBwYWNrYWdlIG5hbWUgYCUuMjUwcyc6ICIKKyIlLjI1MHMiCittc2dzdHIgIiIKKyJzaW50YXhpLWVycm9yZWEgYWJpYXJhemxlYXJlbiBpbnRlcmVzZWtvICclLjI1MHMnIGZpdHhhdGVnaWFuOyBsZWdlemthbnBva28gIgorIiclLjI1MHMnIHBha2V0ZS1pemVuYTogJS4yNTBzIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzE4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJlemluIGRhIGFiaWFyYXpsZWFyZW4gaW50ZXJlc2VrbyAnJS4yNTBzJyBmaXR4YXRlZ2kgYmVycmlhIGlkYXR6aSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMyMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAiZXppbiBkYSBhYmlhcmF6bGVhcmVuIGludGVyZXNla28gJyUuMjUwcycgZml0eGF0ZWdpIGJlcnJpYSBnYXJiaXR1IgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzI0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzeW5jIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgIiIKKyJlemluIGRhIGFiaWFyYXpsZWFyZW4gaW50ZXJlc2VrbyAnJS4yNTBzJyBmaXR4YXRlZ2kgYmVycmlhIHNpbmtyb25pemF0dSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMzMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJlemluIGRhIGFiaWFyYXpsZWFyZW4gaW50ZXJlc2VrbyAnJS4yNTBzJyBmaXR4YXRlZ2kgYmVycmlhIGluc3RhbGF0dSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjM0MCBsaWIvZHBrZy90cmlnbGliLmM6MzQyIGxpYi9kcGtnL3RyaWdsaWIuYzo0NzIKKyM6IHNyYy9yZW1vdmUuYzoyODYgc3JjL3JlbW92ZS5jOjM3NworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVtb3ZlIGAlLjI1MHMnIgorbXNnc3RyICJlemluIGRhICclLjI1MHMnIGtlbmR1IgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzYwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiZXppbiBkYSBhYmlhcmF6bGVhcmVuIGludGVyZXNla28gJyUuMjUwcycgZml0eGF0ZWdpIGJlcnJpYSBzb3J0dSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjM4MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiZXppbiBkYSBhYmlhcmF6bGVhcmVuIGludGVyZXNla28gJyUuMjUwcycgZml0eGF0ZWdpIGJlcnJpYSBpdHhpIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDU2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkdXBsaWNhdGUgZmlsZSB0cmlnZ2VyIGludGVyZXN0IGZvciBmaWxlbmFtZSBgJS4yNTBzJyBhbmQgcGFja2FnZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorImJpa29penR1dGFrbyBhYmlhcmF6bGVhcmVuIGludGVyZXNla28gZml0eGF0ZWdpYSAnJS4yNTBzJyBmaXR4YXRlZ2ktaXplbmEgIgorImV0YSclLjI1MHMnIHBha2V0ZWFyZWtpbiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ4MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImV6aW4gZGEgYWJpYXJhemxlZW4gJyUuMjUwcycgZml0eGF0ZWdpIGJlcnJpYSBzb3J0dSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ5MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiZXppbiBkYSBhYmlhcmF6bGVlbiAnJS4yNTBzJyBmaXR4YXRlZ2kgYmVycmlhIGlkYXR6aSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ5NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAiZXppbiBkYSBhYmlhcmF6bGVlbiAnJS4yNTBzJyBmaXR4YXRlZ2kgYmVycmlhIGdhcmJpdHUiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0OTkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAiZXppbiBkYSBhYmlhcmF6bGVlbiAnJS4yNTBzJyBmaXR4YXRlZ2kgYmVycmlhIHNpbmtyb25pemF0dSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjUwMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiZXppbiBkYSBhYmlhcmF6bGVlbiAnJS4yNTBzJyBmaXR4YXRlZ2kgYmVycmlhIGl0eGkiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1MDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSBhcyBgJS4yNTBzJyIKK21zZ3N0ciAiZXppbiBkYSBhYmlhcmF6bGVlbiBmaXR4YXRlZ2kgYmVycmlhICclLjI1MHMnIGdpc2EgaW5zdGFsYXR1IgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTQyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiZXppbiBkYSBhYmlhcmF6bGVlbiAnJS4yNTBzJyBmaXR4YXRlZ2lhIGlyYWt1cnJpIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTUyCisjLCBjLWZvcm1hdAorbXNnaWQgInN5bnRheCBlcnJvciBpbiBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgInNpbnRheGktZXJyb3JlYSBhYmlhcmF6bGVlbiAnJS4yNTBzJyBmaXR4YXRlZ2lhbiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjU2MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZmlsZSB0cmlnZ2VycyByZWNvcmQgbWVudGlvbnMgaWxsZWdhbCBwYWNrYWdlIG5hbWUgYCUuMjUwcycgKGZvciBpbnRlcmVzdCBpbiAiCisiZmlsZSBgJS4yNTBzJyk6ICUuMjUwcyIKK21zZ3N0ciAiIgorImFiaWFyYXpsZWVuIGZpdHhhdGVnaWFyZW4gZXJyZWdpc3Ryb2FrIGxlZ2V6a2FucG9rbyAnJS4yNTBzJyBwYWtldGUtaXplbmEgIgorImFpcGF0emVuIGR1ICgnJS4yNTBzJyBmaXR4YXRlZ2lhcmVuIGludGVyZXNlbnR6YXQpOiAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo2NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInRyaWdnZXJzIGNpIGZpbGUgYCUuMjUwcycgY29udGFpbnMgaWxsZWdhbCB0cmlnZ2VyIHN5bnRheCBpbiB0cmlnZ2VyIG5hbWUgYCIKKyIlLjI1MHMnOiAlLjI1MHMiCittc2dzdHIgIiIKKyJhYmlhcmF6bGVlbiAnJS4yNTBzJyBjaSBmaXR4YXRlZ2lhayBsZWdlemthbnBva28gYWJpYXJhemxlZW4gc2ludGF4aWEgZHUgIgorIiclLjI1MHMnIGFiaWFyYXpsZS1pemVuZWFuOiAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo2ODQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gdHJpZ2dlcnMgY2kgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiZXppbiBkYSBhYmlhcmF6bGVlbiAnJS4yNTBzJyBjaSBmaXR4YXRlZ2lhIGlyZWtpIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Njk5Cittc2dpZCAidHJpZ2dlcnMgY2kgZmlsZSBjb250YWlucyB1bmtub3duIGRpcmVjdGl2ZSBzeW50YXgiCittc2dzdHIgImFiaWFyYXpsZWVuIGNpIGZpdHhhdGVnaWFrIGRpcmVrdGliYSBzaW50YXhpIGV6ZXphZ3VuYSBkdSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjcxMgorIywgYy1mb3JtYXQKK21zZ2lkICJ0cmlnZ2VycyBjaSBmaWxlIGNvbnRhaW5zIHVua25vd24gZGlyZWN0aXZlIGAlLjI1MHMnIgorbXNnc3RyICJhYmlhcmF6bGVlbiBjaSBmaXR4YXRlZ2lhayAnJS4yNTBzJyBkaXJla3RpYmEgZXplemFndW5hIGR1IgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Nzc2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdHJpZ2dlcnMgc3RhdGUgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICJlemluIGRhIHNvcnR1IGFiaWFyYXpsZWVuICclLjI1MHMnIGVnb2VyYWtvIGRpcmVrdG9yaW9hIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Nzc5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgb3duZXJzaGlwIG9mIHRyaWdnZXJzIHN0YXRlIGRpcmVjdG9yeSBgJS4yNTBzJyIKK21zZ3N0ciAiZXppbiBkYSBhYmlhcmF6bGVlbiAnJS4yNTBzJyBlZ29lcmFrbyBkaXJla3RvcmlvYXJlbiBqYWJldHphIGV6YXJyaSIKKworIzogbGliL2Rwa2cvdHJpZ25hbWUuYzozNAorbXNnaWQgImVtcHR5IHRyaWdnZXIgbmFtZXMgYXJlIG5vdCBwZXJtaXR0ZWQiCittc2dzdHIgIml6ZW4gaHV0c2EgZHV0ZW4gYWJpYXJhemxlYWsgZXogZGlyYSBvbmFydHplbiIKKworIzogbGliL2Rwa2cvdHJpZ25hbWUuYzozOAorbXNnaWQgInRyaWdnZXIgbmFtZSBjb250YWlucyBpbnZhbGlkIGNoYXJhY3RlciIKK21zZ3N0ciAiYWJpYXJhemxlYXJlbiBpemVuYWsga2FyYWt0ZXJlIGJhbGlvZ2FiZWEgZHUiCisKKyM6IGxpYi9kcGtnL3V0aWxzLmM6NTYKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVhZCBlcnJvciBpbiBgJS4yNTBzJyIKK21zZ3N0ciAiaXJha3Vya2V0YXJlbiBlcnJvcmVhICclLjI1MHMnKGUpbiIKKworIzogbGliL2Rwa2cvdXRpbHMuYzo2MQorIywgYy1mb3JtYXQKK21zZ2lkICJmZ2V0cyBnYXZlIGFuIGVtcHR5IHN0cmluZyBmcm9tIGAlLjI1MHMnIgorbXNnc3RyICJmZ2V0cy1layBrYXRlIGh1dHMgYmF0IGVtYW4gZHUnJS4yNTBzJyhlKXRpayIKKworIzogbGliL2Rwa2cvdXRpbHMuYzo2MworIywgYy1mb3JtYXQKK21zZ2lkICJ0b28tbG9uZyBsaW5lIG9yIG1pc3NpbmcgbmV3bGluZSBpbiBgJS4yNTBzJyIKK21zZ3N0ciAibGVycm8gbHV6ZWVnaWEgZWRvIGxlcnJvIGJlcnJpYSBmYWx0YSBkYSAnJS4yNTBzJyhlKW4iCisKKyM6IGxpYi9kcGtnL3V0aWxzLmM6NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgcmVhZGluZyBgJS4yNTBzJyIKK21zZ3N0ciAidXN0ZWthYmVrbyBmaXR4YXRlZ2kgYW1haWVyYSAnJS4yNTBzJyhlKW4iCisKKyM6IGxpYi9kcGtnL3ZhcmJ1Zi5jOjgyIGxpYi9kcGtnL3ZhcmJ1Zi5jOjg4Cittc2dpZCAiZXJyb3IgZm9ybWF0dGluZyBzdHJpbmcgaW50byB2YXJidWYgdmFyaWFibGUiCittc2dzdHIgImVycm9yZWEga2F0ZWFyaSBmb3JtYXR1YSBlbWF0ZWFuIHZhcmJ1ZiBhbGRhZ2FpYW4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjE3OSBzcmMvYXJjaGl2ZXMuYzoyMDAgc3JjL2FyY2hpdmVzLmM6NzI0Cittc2dpZCAiZXJyb3IgcmVhZGluZyBmcm9tIGRwa2ctZGViIHBpcGUiCittc2dzdHIgImVycm9yZWEgZHBrZy1kZWIga2FuYWxpemF6aW90aWsgaXJha3VydHplYW4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjE5NQorIywgYy1mb3JtYXQKK21zZ2lkICJza2lwcGVkIHVucGFja2luZyBmaWxlICclLjI1NXMnIChyZXBsYWNlZCBvciBleGNsdWRlZD8pIgorbXNnc3RyICIiCisiYWxkZSBiYXRldGFyYSB1enRlbiBkZXNwYWtldGF0dSBnYWJla28gJyUuMjU1cycgZml0eGF0ZWdpYSAob3JkZXp0dSBlZG8gIgorImJhenRlcnR1YT8pIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoyNDYgc3JjL2FyY2hpdmVzLmM6MjUwCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHNldHRpbmcgdGltZXN0YW1wcyBvZiBgJS4yNTVzJyIKK21zZ3N0ciAiZXJyb3JlYSBkYXRhLXppZ2lsdWFrIGV6YXJ0emVhbjogJyUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjI2MgorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIG93bmVyc2hpcCBvZiBzeW1saW5rIGAlLjI1NXMnIgorbXNnc3RyICJlcnJvcmVhICclLjI1NXMnIGVzdGVrYSBzaW5ib2xpa29hcmVuIGphYmV0emEgZXphcnR6ZWFuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoyNjUgc3JjL2FyY2hpdmVzLmM6NzM0IHNyYy9zdGF0Y21kLmM6MTYzCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHNldHRpbmcgb3duZXJzaGlwIG9mIGAlLjI1NXMnIgorbXNnc3RyICJlcnJvcmVhIGphYmV0emEgZXphcnR6ZWFuOiAnJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6MjY3IHNyYy9hcmNoaXZlcy5jOjczNiBzcmMvc3RhdGNtZC5jOjE2NQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIHBlcm1pc3Npb25zIG9mIGAlLjI1NXMnIgorbXNnc3RyICJlcnJvcmVhIGJhaW1lbmFrIGV6YXJ0emVhbjogJyUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjM5NQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gc3RhdCAoZGVyZWZlcmVuY2UpIGV4aXN0aW5nIHN5bWxpbmsgYCUuMjUwcyciCittc2dzdHIgIiIKKyJodXRzIGVnaW4gZHUgJyUuMjUwcycgZXN0ZWthIHNpbmJvbGlrb2FyZW4gZWdvZXJhIGVza3VyYXR6ZWFuIChlcnJlZmVyZW50emlhICIKKyJrZW5kdXRhKSIKKworIzogc3JjL2FyY2hpdmVzLmM6NDE3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmYWlsZWQgdG8gc3RhdCAoZGVyZWZlcmVuY2UpIHByb3Bvc2VkIG5ldyBzeW1saW5rIHRhcmdldCBgJS4yNTBzJyBmb3IgIgorInN5bWxpbmsgYCUuMjUwcyciCittc2dzdHIgIiIKKyJodXRzIGVnaW4gZHUgcHJvcG9zYXR1dGFrbyAoZXJyZWZlcmVudHppYSBrZW5kdXRhKSBoZWxidXJ1a28gJyUuMjUwcycgZXN0ZWthICIKKyJzaW5ib2xpa29hcmVuIGVnb2VyYSBlc2t1cmF0emVhbiAnJS4yNTBzJyBlc3Rla2FyZW50emFrbyIKKworIzogc3JjL2FyY2hpdmVzLmM6NDc1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ0cnlpbmcgdG8gb3ZlcndyaXRlIGAlLjI1MHMnLCB3aGljaCBpcyB0aGUgZGl2ZXJ0ZWQgdmVyc2lvbiBvZiBgIgorIiUuMjUwcycgKHBhY2thZ2U6ICUuMTAwcykiCittc2dzdHIgIiIKKyInJS4yNTBzJyBnYWluaWRhenRlbiBzYWlhdHplbiwgemVpbiAnJS4yNTBzJyBkZXNiaWRlcmF0dXRha28gYmVydHNpbyBiYXQgZGEgIgorIihwYWtldGVhOiAlLjEwMHMpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo0ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJ5aW5nIHRvIG92ZXJ3cml0ZSBgJS4yNTBzJywgd2hpY2ggaXMgdGhlIGRpdmVydGVkIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dzdHIgIiIKKyInJS4yNTBzJyBnYWluaWRhenRlbiBzYWlhdHplbiAsIHplaW4nJS4yNTBzJy1lbiBkZXNiaWRlcmF0dXRha28gYmVydHNpbyBiYXQgIgorImRlbiIKKworIzogc3JjL2FyY2hpdmVzLmM6NTExCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGAlLjI1NXMnICh3aGljaCBJIHdhcyBhYm91dCB0byBpbnN0YWxsKSIKK21zZ3N0ciAiZXppbiBkYSAnJS4yNTVzJyBhdHppdHUgKGluc3RhbGF0emVyYSB6aW9hbGEpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo1MTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVuYWJsZSB0byBjbGVhbiB1cCBtZXNzIHN1cnJvdW5kaW5nIGAlLjI1NXMnIGJlZm9yZSBpbnN0YWxsaW5nIGFub3RoZXIgIgorInZlcnNpb24iCittc2dzdHIgIiIKKyJlemluIGRhICclLjI1NXMnIGluZ3VydWtvIG5haGFzdGVhIGdhcmJpdHUsIGJlc3RlIGJlcnRzaW8gYmF0IGluc3RhbGF0dSAiCisiYXVycmV0aWsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjUyNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCByZXN0b3JlZCBgJS4yNTVzJyBiZWZvcmUgaW5zdGFsbGluZyBhbm90aGVyIHZlcnNpb24iCittc2dzdHIgIiIKKyJlemluIGRhIGxlaGVuZXJhdHV0YWtvICclLjI1NXMnIGF0eml0dSBiZXN0ZSBiZXJ0c2lvIGJhdCBpbnN0YWxhdHUgYXVycmV0aWsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjU2MQorIywgYy1mb3JtYXQKK21zZ2lkICJhcmNoaXZlIGNvbnRhaW5lZCBvYmplY3QgYCUuMjU1cycgb2YgdW5rbm93biB0eXBlIDB4JXgiCittc2dzdHIgImFydHhpYm9rbyAnJS4yNTVzJyBvYmpla3R1YSBtb3RhIGV6ZXphZ3VuZWtvYSBkYTogMHgleCIKKworIzogc3JjL2FyY2hpdmVzLmM6NjI2IHNyYy9kaXZlcnRjbWQuYzoxNTAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjY4MgorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMjIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyODQKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNDQxIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNjgwCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE2NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI0NAorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHN0YXQgZmlsZSAnJXMnIgorbXNnc3RyICJlemluIGRhJyVzJyBmaXR4YXRlZ2lhIGF0eml0dSIKKworIzogc3JjL2FyY2hpdmVzLmM6NjQxCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlcGxhY2luZyBmaWxlcyBpbiBvbGQgcGFja2FnZSAlcyAuLi5cbiIKK21zZ3N0ciAiJXMgcGFrZXRlIHphaGFycmVrbyBmaXR4YXRlZ2lhayBvcmRlenRlbi4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVwbGFjZWQgYnkgZmlsZXMgaW4gaW5zdGFsbGVkIHBhY2thZ2UgJXMgLi4uXG4iCittc2dzdHIgIkluc3RhbGF0dXRha28gJXMgcGFrZXRla28gZml0eGF0ZWdpZWtpbiBvcmRlenR1dGEuLi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6NjU0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ0cnlpbmcgdG8gb3ZlcndyaXRlIGRpcmVjdG9yeSAnJS4yNTBzJyBpbiBwYWNrYWdlICUuMjUwcyAlLjI1MHMgd2l0aCAiCisibm9uZGlyZWN0b3J5IgorbXNnc3RyICIiCisiJTIkLjI1MHMgJTMkLjI1MHMgcGFrZXRla28gJyUxJC4yNTBzJyBkaXJla3RvcmlvYSBkaXJla3RvcmlvYSBleiBkZW4gYmF0ZWtpbiAiCisiZ2FpbmlkYXp0ZW4gc2FpYXR6ZW4gYXJpIGRhIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJ5aW5nIHRvIG92ZXJ3cml0ZSAnJS4yNTBzJywgd2hpY2ggaXMgYWxzbyBpbiBwYWNrYWdlICUuMjUwcyAlLjI1MHMiCittc2dzdHIgIiIKKyInJS4yNTBzJyBnYWluaWRhenRlbiBzYWlhdHplbiBhcmkgZGE7ICUuMjUwcyAlLjI1MHMgcGFrZXRlYW4gZXJlIGJhZGFnbyIKKworIzogc3JjL2FyY2hpdmVzLmM6NzExCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgYCUuMjU1cycgKHdoaWxlIHByb2Nlc3NpbmcgYCUuMjU1cycpIgorbXNnc3RyICJlemluIGRhICclLjI1NXMnIHNvcnR1ICgnJS4yNTVzJyBwcm96ZXNhdHplYW4pIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3MTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFja2VuZCBkcGtnLWRlYiBkdXJpbmcgYCUuMjU1cyciCittc2dzdHIgImF0emVhbGRla28gZHBrZy1kZWItZW4gaXJhdXBlbmE6ICclLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NDQgc3JjL2FyY2hpdmVzLmM6OTA4IHNyYy9hcmNoaXZlcy5jOjk0OQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nL3dyaXRpbmcgYCUuMjU1cyciCittc2dzdHIgImVycm9yZWEgJyUuMjU1cycgaXh0ZWFuL2lkYXp0ZWFuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgcGlwZSBgJS4yNTVzJyIKK21zZ3N0ciAiZXJyb3JlYSAnJS4yNTVzJyBrYW5hbGl6YXppb2Egc29ydHplYW4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc1MyBzcmMvYXJjaGl2ZXMuYzo3NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgZGV2aWNlIGAlLjI1NXMnIgorbXNnc3RyICJlcnJvcmVhICclLjI1NXMnIGdhaWx1YSBzb3J0emVhbiIKKworIzogc3JjL2FyY2hpdmVzLmM6NzcxCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIGhhcmQgbGluayBgJS4yNTVzJyIKK21zZ3N0ciAiZXJyb3JlYSAnJS4yNTVzJyBlc3Rla2EgZ29nb3JyYSBzb3J0emVhbiIKKworIzogc3JjL2FyY2hpdmVzLmM6Nzc3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo1MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgc3ltYm9saWMgbGluayBgJS4yNTVzJyIKK21zZ3N0ciAiZXJyb3JlYSAnJS4yNTVzJyBlc3Rla2Egc2luYm9saWtvYSBzb3J0emVhbiIKKworIzogc3JjL2FyY2hpdmVzLmM6NzgzCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIGRpcmVjdG9yeSBgJS4yNTVzJyIKK21zZ3N0ciAiZXJyb3JlYSAnJS4yNTVzJyBkaXJla3RvcmlvYSBzb3J0emVhbiIKKworIzogc3JjL2FyY2hpdmVzLmM6ODIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBtb3ZlIGFzaWRlIGAlLjI1NXMnIHRvIGluc3RhbGwgbmV3IHZlcnNpb24iCittc2dzdHIgImV6aW4gZGEgam9hbiAnJS4yNTVzJyhlKXJhIGJlcnRzaW8gYmVycmlhIGluc3RhbGF0emVrbyIKKworIzogc3JjL2FyY2hpdmVzLmM6ODMyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzozMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgbGluayBgJS4yNTVzJyIKK21zZ3N0ciAiZXppbiBkYSBpcmFrdXJyaSAnJS4yNTVzJyBlc3Rla2EiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjgzNCBzcmMvY29uZmlndXJlLmM6NDIzCisjLCBjLWZvcm1hdAorbXNnaWQgInN5bWJvbGljIGxpbmsgJyUuMjUwcycgc2l6ZSBoYXMgY2hhbmdlZCBmcm9tICVqZCB0byAlemQiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6ODM5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBtYWtlIGJhY2t1cCBzeW1saW5rIGZvciBgJS4yNTVzJyIKK21zZ3N0ciAiZXppbiBkYSBlc3Rla2Egc2luYm9saWtvYXJlbiBiYWJlc2tvcGlhIGVnaW46ICclLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNob3duIGJhY2t1cCBzeW1saW5rIGZvciBgJS4yNTVzJyIKK21zZ3N0ciAiZXppbiBkYSBlc3Rla2Egc2luYm9saWtvYXJlbiBiYWJlc2tvcGlhcmVuICdjaG93bicgZWdpbjogJyUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjg0NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gbWFrZSBiYWNrdXAgbGluayBvZiBgJS4yNTVzJyBiZWZvcmUgaW5zdGFsbGluZyBuZXcgdmVyc2lvbiIKK21zZ3N0ciAiIgorImJlcnRzaW8gYmVycmlhIGluc3RhbGF0dSBhdXJyZXRpayBlemluIGRhIGVzdGVrYXJlbiBiYWJlc2tvcGlhIGVnaW46ICclLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4NjMgc3JjL2FyY2hpdmVzLmM6OTU3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyB2ZXJzaW9uIG9mIGAlLjI1NXMnIgorbXNnc3RyICJlemluIGRhICclLjI1NXMnKHIpZW4gYmVydHNpbyBiZXJyaWEgaW5zdGFsYXR1IgorCisjOiBzcmMvYXJjaGl2ZXMuYzo5MDIgc3JjL2FyY2hpdmVzLmM6OTQ1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuICclLjI1NXMnIgorbXNnc3RyICJlemluIGRhJyUuMjU1cycgaXJla2kiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjk0NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBmaWxlICclLjI1NXMnIgorbXNnc3RyICJlemluIGRhJyUuMjU1cycgZml0eGF0ZWdpYSBzaW5rcm9uaXphdHUiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImlnbm9yaW5nIGRlcGVuZGVuY3kgcHJvYmxlbSB3aXRoICVzOlxuIgorIiVzIgorbXNnc3RyICIiCisiJXMocillbiBtZW5kZWtvdGFzdW5hcmVuIGFyYXpvYXJpIGV6aWt1c2lhIGVnaXRlbjpcbiIKKyIlcyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAwNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiY29uc2lkZXJpbmcgZGVjb25maWd1cmF0aW9uIG9mIGVzc2VudGlhbFxuIgorIiBwYWNrYWdlICVzLCB0byBlbmFibGUgJXMuIgorbXNnc3RyICIiCisiZnVudHNlemtvICVzIHBha2V0ZWFyZW4ga29uZmlndXJhemlvYSBrZW50emVhXG4iCisiYXp0ZXJ0emVuLCAlcyBnYWl0emVrby4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IG5vLCAlcyBpcyBlc3NlbnRpYWwsIHdpbGwgbm90IGRlY29uZmlndXJlXG4iCisiIGl0IGluIG9yZGVyIHRvIGVuYWJsZSAlcy5cbiIKK21zZ3N0ciAiIgorImRwa2c6IGV6LCAlcyBmdW50c2V6a29hIGRhLCBleiBkYSBrb25maWd1cmF6aW9hIGtlbmR1a29cbiIKKyIgJXMgZ2FpdHUgYWhhbCBpemF0ZWtvLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDIyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBubywgY2Fubm90IHByb2NlZWQgd2l0aCAlcyAoLS1hdXRvLWRlY29uZmlndXJlIHdpbGwgaGVscCk6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiBleiwgZXppbiBkYSAlcyhyKWVraW4gYXVycmVyYSBqYXJyYWl0dSAoaWt1cyAtLWF1dG8tZGVjb25maWd1cmUpOlxuIgorIiVzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDMyCisjLCBjLWZvcm1hdAorbXNnaWQgInJlbW92YWwgb2YgJS4yNTBzIgorbXNnc3RyICIlLjI1MHMgZXphYmF0emVhIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDU3CisjLCBjLWZvcm1hdAorbXNnaWQgImluc3RhbGxhdGlvbiBvZiAlLjI1MHMiCittc2dzdHIgIiUuMjUwcyBpbnN0YWxhdHplYSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA1OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogY29uc2lkZXJpbmcgZGVjb25maWd1cmF0aW9uIG9mICVzLCB3aGljaCB3b3VsZCBiZSBicm9rZW4gYnkgJXMgLi4uXG4iCittc2dzdHIgIiIKKyJkcGtnOiAlcyhyKWVuIGtvbmZpZ3VyYXppb2Ega2VudHplYSBrb250dXRhbiBoYXJ0emVuLCB6ZWluZWsgJXMoZSlrIGFwdXIgIgorImRlemFrZWVuIC4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDY1CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IHllcywgd2lsbCBkZWNvbmZpZ3VyZSAlcyAoYnJva2VuIGJ5ICVzKS5cbiIKK21zZ3N0ciAiZHBrZzogYmFpLCAlcyBrb25maWd1cmF6aW9hIGtlbmR1a28gZGEsICglcy1layBhcHVydHVhKS5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA2OSBzcmMvYXJjaGl2ZXMuYzoxMTg3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiByZWdhcmRpbmcgJXMgY29udGFpbmluZyAlczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6ICUyJHMgZGF1a2FuICUxJHMocilpIGRhZ29raW9uZXo6XG4iCisiJTMkcyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA3NworbXNnaWQgImlnbm9yaW5nIGJyZWFrYWdlLCBtYXkgcHJvY2VlZCBhbnl3YXkhIgorbXNnc3RyICJhcHVya2V0YXJpIGV6aWt1c2kgZWdpbiB6YWlvLCBoYWxhIGVyZSBhdXJyZXJhIGphcnJhaXR6ZW4hIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDgyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpbnN0YWxsaW5nICUuMjUwcyB3b3VsZCBicmVhayAlLjI1MHMsIGFuZFxuIgorIiBkZWNvbmZpZ3VyYXRpb24gaXMgbm90IHBlcm1pdHRlZCAoLS1hdXRvLWRlY29uZmlndXJlIG1pZ2h0IGhlbHApIgorbXNnc3RyICIiCisiJS4yNTBzIGluc3RhbGF0emVhayAlLjI1MHMgYXB1ciBkZXpha2UsIGV0YVxuIgorIiBleiBkYSBiYWltZW50emVuIGtvbmZpZ3VyYXppb2Ega2VudHplYSAoLS1hdXRvLWRlY29uZmlndXJlIGxhZ3VuZ2FycmkgaXphbiAiCisiZGFpdGVrZSkiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW5zdGFsbGluZyAlLjI1MHMgd291bGQgYnJlYWsgZXhpc3Rpbmcgc29mdHdhcmUiCittc2dzdHIgIiUuMjUwcyBpbnN0YWxhdHplYWsgaW5zdGFsYXR1dGEgZGFnb2VuIHNvZnR3YXJlYSBhcHVydHUgZGV6YWtlIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTE2CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IGNvbnNpZGVyaW5nIHJlbW92aW5nICVzIGluIGZhdm91ciBvZiAlcyAuLi5cbiIKK21zZ3N0ciAiZHBrZzogJXMga2VudHplYSBhenRlcnR6ZW4sICVzIGphcnR6ZWtvLi4uXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgaXMgbm90IHByb3Blcmx5IGluc3RhbGxlZCAtIGlnbm9yaW5nIGFueSBkZXBlbmRlbmNpZXMgb24gaXQuXG4iCittc2dzdHIgIiVzIGV6IGRhZ28gb25kbyBpbnN0YWxhdHV0YSAtIG1lbmRla290YXN1bmVpIGV6aWt1c2kgZWdpbmdvIHphaWUuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogbWF5IGhhdmUgdHJvdWJsZSByZW1vdmluZyAlcywgYXMgaXQgcHJvdmlkZXMgJXMgLi4uXG4iCittc2dzdHIgIiIKKyJkcGtnOiBiZWhhcmJhZGEgYXJhem9hayBlZ29uZ28gZGlyYSAlcyBrZW50emVrbywgJXMgaG9ybml0emVuXG4iCisiIGJhaXR1Li4uXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IHBhY2thZ2UgJXMgcmVxdWlyZXMgcmVpbnN0YWxsYXRpb24sIGJ1dCB3aWxsIHJlbW92ZSBhbnl3YXkgYXMgeW91ICIKKyJyZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiIKKyJkcGtnOiAlcyBwYWtldGVhIGJlcnJpcm8gaW5zdGFsYXR1IGJlaGFyIGRhLCBiYWluYSBrZW5kdSBlZ2luZ28gZGEgZXNrYXR1ICIKKyJiZXphbGEuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExNjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogcGFja2FnZSAlcyByZXF1aXJlcyByZWluc3RhbGxhdGlvbiwgd2lsbCBub3QgcmVtb3ZlLlxuIgorbXNnc3RyICJkcGtnOiAlcyBwYWtldGVhIGJlcnJpcm8gaW5zdGFsYXR1IGJlaGFyIGRhLCBleiBkYSBrZW5kdWtvLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTc4CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IHllcywgd2lsbCByZW1vdmUgJXMgaW4gZmF2b3VyIG9mICVzLlxuIgorbXNnc3RyICJkcGtnOiBiYWksICVzIGtlbmR1a28gZGEsIGV0YSAlcyBqYXJyaS5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE5MAorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mbGljdGluZyBwYWNrYWdlcyAtIG5vdCBpbnN0YWxsaW5nICUuMjUwcyIKK21zZ3N0ciAiZ2F0YXprYW4gZGF1ZGVuIHBha2V0ZWFrIC0gJS4yNTBzIGV6IGRhIGluc3RhbGF0dWtvIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTkxCittc2dpZCAiaWdub3JpbmcgY29uZmxpY3QsIG1heSBwcm9jZWVkIGFueXdheSEiCittc2dzdHIgImdhdGF6a2FyaSBlemlrdXNpIGVnaW4gemFpbywgamFycmFpIGRhaXRla2UiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyMzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyAtLXJlY3Vyc2l2ZSBuZWVkcyBhdCBsZWFzdCBvbmUgcGF0aCBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyAtLXJlY3Vyc2l2ZTogYmlkZS1pemVuYXJlbiBhcmd1bWVudHUgYmF0IGJlaGFyIGR1IGd1dHhpZW5leiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI0NQorbXNnaWQgImZpbmQgZm9yIGRwa2cgLS1yZWN1cnNpdmUiCittc2dzdHIgIidmaW5kJyBkcGtnIC0tcmVjdXJzaXZlIGtvbWFuZG9hcmVudHpha28iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNjYKK21zZ2lkICJmYWlsZWQgdG8gZmRvcGVuIGZpbmQncyBwaXBlIgorbXNnc3RyICJodXRzIGVnaW4gZHUgZmRvcGVuLWVrIGZpbmQtZW4ga2FuYWxpemF6aW9hcmVraW4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNzIKK21zZ2lkICJlcnJvciByZWFkaW5nIGZpbmQncyBwaXBlIgorbXNnc3RyICJlcnJvcmVhIGZpbmQtZW4ga2FuYWxpemF6aW9hIGlyYWt1cnR6ZWFuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjczCittc2dpZCAiZXJyb3IgY2xvc2luZyBmaW5kJ3MgcGlwZSIKK21zZ3N0ciAiZXJyb3JlYSBmaW5kLWVuIGthbmFsaXphemlvYSBpeHRlYW4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmluZCBmb3IgLS1yZWN1cnNpdmUgcmV0dXJuZWQgdW5oYW5kbGVkIGVycm9yICVpIgorbXNnc3RyICItLXJlY3Vyc2l2ZSBiaWxha2V0YWsga3VkZWF0dSBnYWJla28gJWkgZXJyb3JlYSBpdHp1bGkgZHUiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNzkKK21zZ2lkICJzZWFyY2hlZCwgYnV0IGZvdW5kIG5vIHBhY2thZ2VzIChmaWxlcyBtYXRjaGluZyAqLmRlYikiCittc2dzdHIgImJpbGF0dSBiYWksIGJhaW5hIGV6IGRhIHBha2V0ZXJpayBhdXJraXR1ICgqLmRlYiBmaXR4YXRlZ2lhaykiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhdCBsZWFzdCBvbmUgcGFja2FnZSBhcmNoaXZlIGZpbGUgYXJndW1lbnQiCittc2dzdHIgIi0tJXM6IHBha2V0ZWFyZW4gZml0eGF0ZWdpYWsgYXJndW1lbnR1IGJhdCBiZWhhciBkdSBndXR4aWVuZXoiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzMjUgc3JjL2RpdmVydGNtZC5jOjc4IHNyYy9kaXZlcnRjbWQuYzoxMTgKKyM6IHNyYy9lbnF1aXJ5LmM6MTY2IHNyYy9lbnF1aXJ5LmM6Mjc5IHNyYy9lbnF1aXJ5LmM6NDQ5IHNyYy9lbnF1aXJ5LmM6NDUxCisjOiBzcmMvZW5xdWlyeS5jOjQ2NCBzcmMvbWFpbi5jOjY2IHNyYy9tYWluLmM6MTYzIHNyYy9tYWluLmM6MzE0CisjOiBzcmMvbWFpbi5jOjQ5MyBzcmMvcGFja2FnZXMuYzoyNTQgc3JjL3F1ZXJ5Y21kLmM6MjUyIHNyYy9xdWVyeWNtZC5jOjM1NQorIzogc3JjL3F1ZXJ5Y21kLmM6Mzk2IHNyYy9xdWVyeWNtZC5jOjQwNCBzcmMvcXVlcnljbWQuYzo0NDggc3JjL3F1ZXJ5Y21kLmM6NTE3CisjOiBzcmMvcXVlcnljbWQuYzo2MDYgc3JjL3F1ZXJ5Y21kLmM6NjUwIHNyYy9zZWxlY3QuYzo3OSBzcmMvc3RhdGNtZC5jOjY4CisjOiBzcmMvc3RhdGNtZC5jOjk4IHNyYy90cmlnY21kLmM6NTggc3JjL3RyaWdjbWQuYzo5MCBkcGtnLWRlYi9idWlsZC5jOjQ0MQorIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIxNyBkcGtnLWRlYi9leHRyYWN0LmM6MjUwIGRwa2ctZGViL2luZm8uYzoyMDMKKyM6IGRwa2ctZGViL2luZm8uYzoyNjUgZHBrZy1kZWIvbWFpbi5jOjYwIGRwa2ctZGViL21haW4uYzoxMjYKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjI1NyBkcGtnLXNwbGl0L21haW4uYzo1NCBkcGtnLXNwbGl0L21haW4uYzo5OAorIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE0NCBkcGtnLXNwbGl0L3F1ZXVlLmM6MjgwCittc2dpZCAiPHN0YW5kYXJkIG91dHB1dD4iCittc2dzdHIgIjxpcnRlZXJhIGVzdGFuZGFycmE+IgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzI2IHNyYy9wYWNrYWdlcy5jOjI1NSBzcmMvcXVlcnljbWQuYzoyNTMKKyM6IHNyYy9xdWVyeWNtZC5jOjM1MyBzcmMvcXVlcnljbWQuYzo0NTQgc3JjL3F1ZXJ5Y21kLmM6NTE4IHNyYy9zZWxlY3QuYzo4MAorIzogZHBrZy1zcGxpdC9tYWluLmM6MTY5IGRwa2ctc3BsaXQvcXVldWUuYzoyMTgKK21zZ2lkICI8c3RhbmRhcmQgZXJyb3I+IgorbXNnc3RyICI8ZXJyb3JlIGVzdGFuZGFycmE+IgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzY3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJTZWxlY3RpbmcgcHJldmlvdXNseSBkZXNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dpZCAiU2VsZWN0aW5nIHByZXZpb3VzbHkgdW5zZWxlY3RlZCBwYWNrYWdlICVzLlxuIgorbXNnc3RyICJBdXJyZXogZXogaGF1dGF0dXRha28gJXMgcGFrZXRlYSBoYXV0YXR6ZW4uXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzNzEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIlNraXBwaW5nIGRlc2VsZWN0ZWQgcGFja2FnZSAlcy5cbiIKK21zZ2lkICJTa2lwcGluZyB1bnNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dzdHIgIkhhdXRhcGVuYSBrZW5kdXRha28gJXMgcGFrZXRlYSBzYWx0YXR6ZW4uXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiVmVyc2lvbiAlLjI1MHMgb2YgJS4yNTBzIGFscmVhZHkgaW5zdGFsbGVkLCBza2lwcGluZy5cbiIKK21zZ3N0ciAiJTIkLjI1MHMgJTEkLjI1MHMgYmVydHNpb2EgaW5zdGFsYXR1dGEgZGFnbywgc2FsdGF0dSBlZ2luZ28gZGEuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzOTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZG93bmdyYWRpbmcgJS4yNTBzIGZyb20gJS4yNTBzIHRvICUuMjUwcy4iCittc2dzdHIgIiUuMjUwcyBhdXJyZWtvIGJlcnRzaW9yYSBpdHp1bHR6ZW4sICUuMjUwcy10aWsgJS4yNTBzLXJhLiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTQwMgorIywgYy1mb3JtYXQKK21zZ2lkICJXaWxsIG5vdCBkb3duZ3JhZGUgJS4yNTBzIGZyb20gdmVyc2lvbiAlLjI1MHMgdG8gJS4yNTBzLCBza2lwcGluZy5cbiIKK21zZ3N0ciAiIgorIiUuMjUwcyBleiBkYSBhdXJyZWtvIGJlcnRzaW9yYSBpdHp1bGlrbyAoJS4yNTBzIC0+ICUuMjUwcyksIHNhbHRhdHplbi5cbiIKKworIzogc3JjL2NsZWFudXAuYzo4NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidW5hYmxlIHRvIHJlbW92ZSBuZXdseS1pbnN0YWxsZWQgdmVyc2lvbiBvZiBgJS4yNTBzJyB0byBhbGxvdyByZWluc3RhbGxhdGlvbiAiCisib2YgYmFja3VwIGNvcHkiCittc2dzdHIgIiIKKyJlemluIGRhIGtlbmR1IGluc3RhbGF0dSBiZXJyaSBkZW4gJyUuMjUwcycgYmVydHNpb2EgYmFiZXNrb3BpYSBiZXJyaXJvICIKKyJpbnN0YWxhdHplYSBvbmFydHpla28iCisKKyM6IHNyYy9jbGVhbnVwLmM6OTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlc3RvcmUgYmFja3VwIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dzdHIgImV6aW4gZGEgJyUuMjUwcycocillbiBiYWJlc2tvcGlhcmVuIGJlcnRzaW9hIGxlaGVuZXJhdHUiCisKKyM6IHNyYy9jbGVhbnVwLmM6OTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBiYWNrdXAgY29weSBvZiAnJS4yNTBzJyIKK21zZ3N0ciAiZXppbiBkYSAnJS4yNTBzJyhyKWVuIGJhYmVza29waWEga2VuZHUiCisKKyM6IHNyYy9jbGVhbnVwLmM6MTAxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgbmV3bHktaW5zdGFsbGVkIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dzdHIgImV6aW4gZGEgJyUuMjUwcycocillbiBpbnN0YWxhdHUgYmVycmkgZGVuIGJlcnRzaW9hIGtlbmR1IgorCisjOiBzcmMvY2xlYW51cC5jOjEwOAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIG5ld2x5LWV4dHJhY3RlZCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICJlemluIGRhICclLjI1MHMnKHIpZW4gZXJhdXppIGJlcnJpIGRlbiBiZXJ0c2lvYSBrZW5kdSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjEwNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBuZXcgZGlzdHJpYnV0ZWQgY29uZmZpbGUgJyUuMjUwcyciCittc2dzdHIgImV6aW4gZGEgYmFuYXR1dGFrbyAnJS4yNTBzJyBrb25maWd1cmF6aW9rbyBmaXR4YXRlZ2kgYmVycmlhIGFuYWxpemF0dSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBjdXJyZW50IGluc3RhbGxlZCBjb25mZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorImV6aW4gZGEgdW5lYW4gaW5zdGFsYXR1dGFrbyAnJS4yNTBzJyBrb25maWd1cmF6aW9rbyBmaXR4YXRlZ2kgYW5hbGl6YXR1IgorCisjOiBzcmMvY29uZmlndXJlLmM6MTI2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJDb25maWd1cmF0aW9uIGZpbGUgYCVzJywgZG9lcyBub3QgZXhpc3Qgb24gc3lzdGVtLlxuIgorIkluc3RhbGxpbmcgbmV3IGNvbmZpZyBmaWxlIGFzIHlvdSByZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiIKKyJcbiIKKyInJXMnIGtvbmZpZ3VyYXppb2tvIGZpdHhhdGVnaWEgZXogZGFnbyBzaXN0ZW1hbi5cbiIKKyJLb25maWd1cmF6aW9rbyBmaXR4YXRlZ2kgYmVycmlhIHp1ayBlc2thdHUgYmV6YWxhIGluc3RhbGF0emVuLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTY4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlIG9sZCBiYWNrdXAgJyUuMjUwcyc6ICVzIgorbXNnc3RyICIlczogaHV0cyBlZ2luIGR1ICclLjI1MHMnIGJhYmVza29waWEgemFoYXJyYSBrZW50emVhbiA6ICVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTc2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVuYW1lICclLjI1MHMnIHRvICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiJXM6IGh1dHMgZWdpbiBkdSAnJS4yNTBzJy10aWsgJyUuMjUwcyctcmEgaXplbmEgYWxkYXR6ZWFuOiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE4MgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIHJlbW92ZSAnJS4yNTBzJzogJXMiCittc2dzdHIgIiVzOiBodXRzIGVnaW4gZHUgJyUuMjUwcycgZXphYmF0emVhbjogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxODgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW1vdmUgb2xkIGRpc3RyaWJ1dGVkIHZlcnNpb24gJyUuMjUwcyc6ICVzIgorbXNnc3RyICIlczogaHV0cyBlZ2luIGR1IGJhbmF0dXRha28gJyUuMjUwcycgYmVydHNpbyB6YWhhcnJhIGtlbnR6ZWFuOiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE5MgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIHJlbW92ZSAnJS4yNTBzJyAoYmVmb3JlIG92ZXJ3cml0ZSk6ICVzIgorbXNnc3RyICIlczogaHV0cyBlZ2luIGR1ICclLjI1MHMnIGtlbnR6ZWFuIChnYWluaWRhdHppIGF1cnJldGlrKTogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byBsaW5rICclLjI1MHMnIHRvICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiJXM6IGh1dHMgZWdpbiBkdSAnJS4yNTBzJyhlKXRpayAnJS4yNTBzJyhlKXJhIGVzdGVrYXR6ZWFuOiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjIwMAorIywgYy1mb3JtYXQKK21zZ2lkICJJbnN0YWxsaW5nIG5ldyB2ZXJzaW9uIG9mIGNvbmZpZyBmaWxlICVzIC4uLlxuIgorbXNnc3RyICIlcyBrb25maWd1cmF6aW9rbyBmaXR4YXRlZ2lhcmVuIGJlcnRzaW8gYmVycmlhIGluc3RhbGF0emVuLi4uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzoyMDYgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjU0NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBgJS4yNTBzJyBhcyBgJS4yNTBzJyIKK21zZ3N0ciAiZXppbiBkYSAnJS4yNTBzJyBpbnN0YWxhdHUgJyUuMjUwcycgZ2lzYSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI1NworIywgYy1mb3JtYXQKK21zZ2lkICJubyBwYWNrYWdlIG5hbWVkIGAlcycgaXMgaW5zdGFsbGVkLCBjYW5ub3QgY29uZmlndXJlIgorbXNnc3RyICInJXMnIGl6ZW5la28gcGFrZXRlcmlrIGV6IGRhZ28gaW5zdGFsYXR1dGEsIGV6aW4gZGEga29uZmlndXJhdHUiCisKKyM6IHNyYy9jb25maWd1cmUuYzoyNjAKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlLjI1MHMgaXMgYWxyZWFkeSBpbnN0YWxsZWQgYW5kIGNvbmZpZ3VyZWQiCittc2dzdHIgIiUuMjUwcyBwYWtldGVhIGluc3RhbGF0dXRhIGV0YSBrb25maWd1cmF0dXRhIGRhZ28gbGVoZW5kaWsgZXJlIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjYzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJwYWNrYWdlICUuMjUwcyBpcyBub3QgcmVhZHkgZm9yIGNvbmZpZ3VyYXRpb25cbiIKKyIgY2Fubm90IGNvbmZpZ3VyZSAoY3VycmVudCBzdGF0dXMgYCUuMjUwcycpIgorbXNnc3RyICIiCisiJS4yNTBzIHBha2V0ZWEgZXogZGFnbyBwcmVzdCBrb25maWd1cmF0emVrb1xuIgorIiBlemluIGRhIGtvbmZpZ3VyYXR1ICh1bmVrbyBlZ29lcmE6ICclLjI1MHMnKSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI5NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogZGVwZW5kZW5jeSBwcm9ibGVtcyBwcmV2ZW50IGNvbmZpZ3VyYXRpb24gb2YgJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiBlemluIGRhICVzIGtvbmZpZ3VyYXR1LCBtZW5kZWtvdGFzdW4gYXJhem9hayBkaXJlbGEgZXRhOlxuIgorIiVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6Mjk3Cittc2dpZCAiZGVwZW5kZW5jeSBwcm9ibGVtcyAtIGxlYXZpbmcgdW5jb25maWd1cmVkIgorbXNnc3RyICJtZW5kZWtvdGFzdW4gYXJhem9hayAtIGtvbmZpZ3VyYXR1IGdhYmUgdXp0ZW4gYXJpIGRhIgorCisjOiBzcmMvY29uZmlndXJlLmM6MzAxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiAlczogZGVwZW5kZW5jeSBwcm9ibGVtcywgYnV0IGNvbmZpZ3VyaW5nIGFueXdheSBhcyB5b3UgcmVxdWVzdGVkOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogJXM6IG1lbmRla290YXN1biBhcmF6b2FrLCBiYWluYSBlc2thdHUgYmV6YWxhIGtvbmZpZ3VyYXR1a28gZGE6XG4iCisiJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzozMDkKK21zZ2lkICIiCisiUGFja2FnZSBpcyBpbiBhIHZlcnkgYmFkIGluY29uc2lzdGVudCBzdGF0ZSAtIHlvdSBzaG91bGRcbiIKKyIgcmVpbnN0YWxsIGl0IGJlZm9yZSBhdHRlbXB0aW5nIGNvbmZpZ3VyYXRpb24uIgorbXNnc3RyICIiCisiUGFrZXRlYXJlbiBlZ29lcmEgaW5rb2hlcmVudGVhIGRhIC0gYmVycmlybyBpbnN0YWxhdHVcbiIKKyIgYmVoYXIgZHV6dSwga29uZmlndXJhdHplbiBzYWlhdHUgYXVycmV0aWsuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MzEyCisjLCBjLWZvcm1hdAorbXNnaWQgIlNldHRpbmcgdXAgJXMgKCVzKSAuLi5cbiIKK21zZ3N0ciAiJXMgKCVzKSBrb25maWd1cmF0emVuLi4uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzozOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiB1bmFibGUgdG8gc3RhdCBjb25maWcgZmlsZSAnJXMnXG4iCisiICg9ICclcycpOiAlcyIKK21zZ3N0ciAiIgorIiVzOiBlemluIGRhIGF0eml0dSAnJXMnIGtvbmZpZ3VyYXppb2tvIGZpdHhhdGVnaWFcbiIKKyIgKD0gJyVzJyk6ICVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDA5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogY29uZmlnIGZpbGUgJyVzJyBpcyBhIGNpcmN1bGFyIGxpbmtcbiIKKyIgKD0gJyVzJykiCittc2dzdHIgIiIKKyIlczogJyVzJyBrb25maWd1cmF6aW9rbyBmaXR4YXRlZ2lhIGVzdGVrYSB6aXJrdWxhciBiYXQgZGEgXG4iCisiICg9ICclcycpIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDE4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogdW5hYmxlIHRvIHJlYWRsaW5rIGNvbmZmaWxlICclcydcbiIKKyIgKD0gJyVzJyk6ICVzIgorbXNnc3RyICIiCisiJXM6IGV6aW4gZGEgJyVzJyBrb25maWd1cmF6aW9rbyBmaXR4YXRlZ2lrbyBlc3Rla2EgaXJha3VycmlcbiIKKyIgKD0gJyVzJyk6ICVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDQ0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogY29uZmZpbGUgJyUuMjUwcycgcmVzb2x2ZXMgdG8gZGVnZW5lcmF0ZSBmaWxlbmFtZVxuIgorIiAoJyVzJyBpcyBhIHN5bWxpbmsgdG8gJyVzJykiCittc2dzdHIgIiIKKyIlczogYmFkaXJ1ZGkgJyUuMjUwcycga29uZi4gZml0eGF0ZWdpYSBmaXR4YXRlZ2ktaXplbiBlbmRla2F0dWEgZGVsYVxuIgorIiAoJyVzJyAnJXMnKHIpZW4gZXN0ZWthIHNpbmJvbGlrb2EgZGEpIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDYwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBjb25mZmlsZSAnJS4yNTBzJyBpcyBub3QgYSBwbGFpbiBmaWxlIG9yIHN5bWxpbmsgKD0gJyVzJykiCittc2dzdHIgIiIKKyIlczogJyUuMjUwcycga29uZi4gZml0eGF0ZWdpYSBleiBkYSBmaXR4YXRlZ2kgYXJydW50YSwgZXp0YSBlc3Rla2EgIgorInNpbmJvbGlrb2EgZXJlICg9ICclcycpIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDg2Cittc2dpZCAibWQ1aGFzaCIKK21zZ3N0ciAibWQ1aGFzaCIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQ5MgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogdW5hYmxlIHRvIG9wZW4gY29uZmZpbGUgJXMgZm9yIGhhc2g6ICVzIgorbXNnc3RyICIlczogZXppbiBkYSAlcyBrb25maWd1cmF6aW9rbyBmaXR4YXRlZ2lhIGlyZWtpIGhhc2ggZWdpdGVrbzogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzo1MjIgc3JjL2NvbmZpZ3VyZS5jOjUyNgorbXNnaWQgImNvbmZmaWxlIGRpZmZlcmVuY2UgdmlzdWFsaXplciIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NTQzCittc2dpZCAiVHlwZSBgZXhpdCcgd2hlbiB5b3UncmUgZG9uZS5cbiIKK21zZ3N0ciAiSWRhdHppICdleGl0JyBhbWFpdHV0YWtvYW4uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo1NTIgc3JjL2NvbmZpZ3VyZS5jOjU1NgorbXNnaWQgImNvbmZmaWxlIHNoZWxsIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIkNvbmZpZ3VyYXRpb24gZmlsZSBgJXMnIgorbXNnc3RyICIiCisiXG4iCisiJyVzJyBrb25maWd1cmF6aW9rbyBmaXR4YXRlZ2lhIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjA0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAoYWN0dWFsbHkgYCVzJykiCittc2dzdHIgIiAoYmVuZXRhbiAnJXMnKSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYwOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiID09PiBGaWxlIG9uIHN5c3RlbSBjcmVhdGVkIGJ5IHlvdSBvciBieSBhIHNjcmlwdC5cbiIKKyIgPT0+IEZpbGUgYWxzbyBpbiBwYWNrYWdlIHByb3ZpZGVkIGJ5IHBhY2thZ2UgbWFpbnRhaW5lci5cbiIKK21zZ3N0ciAiIgorIlxuIgorIiA9PT4gWnVrIGVkbyBzY3JpcHQgYmF0ZWsgc29ydHV0YWtvIGZpdHhhdGVnaWEuXG4iCisiID09PiBQYWtldGUtbWFudGVudHphaWxlYWsgcGFrZXRlYXJla2luIGJhdGVyYSBob3JuaXR1dGFrbyBmaXR4YXRlZ2lhLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjEzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgICAgIE5vdCBtb2RpZmllZCBzaW5jZSBpbnN0YWxsYXRpb24uXG4iCittc2dzdHIgIiIKKyJcbiIKKyIgICAgIEluc3RhbGF0dSB6ZW5ldGlrIGV6IGRhIGFsZGF0dS5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYxNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiID09PiBNb2RpZmllZCAoYnkgeW91IG9yIGJ5IGEgc2NyaXB0KSBzaW5jZSBpbnN0YWxsYXRpb24uXG4iCittc2dzdHIgIiIKKyJcbiIKKyIgPT0+IEluc3RhbGF0dSB6ZW5ldGlrIGFsZGF0dSBkYSAoenVrIGVkbyBzY3JpcHQgYmF0ZWspLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjE2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgPT0+IERlbGV0ZWQgKGJ5IHlvdSBvciBieSBhIHNjcmlwdCkgc2luY2UgaW5zdGFsbGF0aW9uLlxuIgorbXNnc3RyICIiCisiXG4iCisiID09PiBJbnN0YWxhdHUgemVuZXRpayBlemFiYXR1YSAoenVrIGVkbyBzY3JpcHQgYmF0ZWspLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjE5CisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gUGFja2FnZSBkaXN0cmlidXRvciBoYXMgc2hpcHBlZCBhbiB1cGRhdGVkIHZlcnNpb24uXG4iCittc2dzdHIgIiA9PT4gUGFrZXRlIGJhbmF0emFpbGVhayBiZXJ0c2lvIGVndW5lcmF0dSBiYXQgYmlkYWxpIGR1LlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjIwCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgICAgVmVyc2lvbiBpbiBwYWNrYWdlIGlzIHRoZSBzYW1lIGFzIGF0IGxhc3QgaW5zdGFsbGF0aW9uLlxuIgorbXNnc3RyICIgICAgIFBha2V0ZWtvIGJlcnRzaW9hIGF6a2VuIGluc3RhbGF6aW9rbyBiZXJhIGRhLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjI4CisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gVXNpbmcgbmV3IGZpbGUgYXMgeW91IHJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiID09PiBGaXR4YXRlZ2kgYmVycmkgYmF0IGVyYWJpbHR6ZW4gYXJpIGRhLCB6dWsgZXNrYXR1IGJlemFsYS5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYzMgorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IFVzaW5nIGN1cnJlbnQgb2xkIGZpbGUgYXMgeW91IHJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiID09PiBVbmVrbyBmaXR4YXRlZ2kgemFoYXJyYSBlcmFiaWx0emVuIGFyaSBkYSwgenVrIGVza2F0dSBiZXphbGEuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBLZWVwaW5nIG9sZCBjb25maWcgZmlsZSBhcyBkZWZhdWx0LlxuIgorbXNnc3RyICIgPT0+IExlaGVuZXNwZW5leiBrb25maWd1cmF6aW9rbyBmaXR4YXRlZ2kgemFoYXJyYSBtYW50ZW50emVuLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gVXNpbmcgbmV3IGNvbmZpZyBmaWxlIGFzIGRlZmF1bHQuXG4iCittc2dzdHIgIiA9PT4gTGVoZW5lc3BlbmV6IGtvbmZpZ3VyYXppb2tvIGZpdHhhdGVnaSBiZXJyaWEgZXJhYmlsdHplbi5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY1MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiICAgV2hhdCB3b3VsZCB5b3UgbGlrZSB0byBkbyBhYm91dCBpdCA/ICBZb3VyIG9wdGlvbnMgYXJlOlxuIgorIiAgICBZIG9yIEkgIDogaW5zdGFsbCB0aGUgcGFja2FnZSBtYWludGFpbmVyJ3MgdmVyc2lvblxuIgorIiAgICBOIG9yIE8gIDoga2VlcCB5b3VyIGN1cnJlbnRseS1pbnN0YWxsZWQgdmVyc2lvblxuIgorIiAgICAgIEQgICAgIDogc2hvdyB0aGUgZGlmZmVyZW5jZXMgYmV0d2VlbiB0aGUgdmVyc2lvbnNcbiIKKyIgICAgICBaICAgICA6IHN0YXJ0IGEgc2hlbGwgdG8gZXhhbWluZSB0aGUgc2l0dWF0aW9uXG4iCittc2dzdHIgIiIKKyIgICBaZXIgZWdpbiBuYWhpIGR1enUgaG9uZWtpbiA/ICBBdWtlcmEgaGF1ZWsgZGl0dXp1OlxuIgorIiAgICBZIGVkbyBJIDogcGFrZXRlIG1hbnRlbnR6YWlsZWFyZW4gYmVydHNpb2EgaW5zdGFsYXR6ZWFcbiIKKyIgICAgTiBlZG8gTyA6IGluc3RhbGF0dXRhIGRhZ29lbiBiZXJ0c2lvYSBtYW50ZW50emVhXG4iCisiICAgICAgRCAgICAgOiBiZXJ0c2lvZW4gYXJ0ZWtvIGV6YmVyZGludGFzdW5hayBpa3VzdGVhXG4iCisiICAgICAgWiAgICAgOiBzaGVsbC1hIGFiaWFyYXp0ZWEgZWdvZXJhIGVnb2VyYSBhenRlcnR6ZWtvXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIFRoZSBkZWZhdWx0IGFjdGlvbiBpcyB0byBrZWVwIHlvdXIgY3VycmVudCB2ZXJzaW9uLlxuIgorbXNnc3RyICIgRWtpbnR6YSBsZWhlbmV0c2lhIGluc3RhbGF0dXRhIGRhZ29lbiBiZXJ0c2lvYSBtYW50ZW50emVhIGRhLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjYxCisjLCBjLWZvcm1hdAorbXNnaWQgIiBUaGUgZGVmYXVsdCBhY3Rpb24gaXMgdG8gaW5zdGFsbCB0aGUgbmV3IHZlcnNpb24uXG4iCittc2dzdHIgIiBFa2ludHphIGxlaGVuZXRzaWEgYmVydHNpbyBiZXJyaWEgaW5zdGFsYXR6ZWEgZGEuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NjYKK21zZ2lkICJbZGVmYXVsdD1OXSIKK21zZ3N0ciAiW2xlaGVuZXRzaWE9Tl0iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NjcKK21zZ2lkICJbZGVmYXVsdD1ZXSIKK21zZ3N0ciAiW2xlaGVuZXRzaWE9WV0iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NjgKK21zZ2lkICJbbm8gZGVmYXVsdF0iCittc2dzdHIgIltsZWhlbmVzcGVuaWsgZXpdIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjcxCittc2dpZCAiZXJyb3Igd3JpdGluZyB0byBzdGRlcnIsIGRpc2NvdmVyZWQgYmVmb3JlIGNvbmZmaWxlIHByb21wdCIKK21zZ3N0ciAiIgorImVycm9yZWEgc3RkZXJyLWVuIGlkYXp0ZWFuLCBrb25maWd1cmF6aW9rbyBmaXR4YXRlZ2lhcmVuIGdvbmJpdGFyZW4gYXVycmV0aWsgIgorImF1cmtpdHUgZGEiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2ODAKK21zZ2lkICJyZWFkIGVycm9yIG9uIHN0ZGluIGF0IGNvbmZmaWxlIHByb21wdCIKK21zZ3N0ciAiaXJha3Vya2V0YSBlcnJvcmVhIHN0ZGluLWVuIGtvbmZpZ3VyYXppb2tvIGZpdHhhdGVnaWFyZW4gZ29uYml0ZWFuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjgxCittc2dpZCAiRU9GIG9uIHN0ZGluIGF0IGNvbmZmaWxlIHByb21wdCIKK21zZ3N0ciAiRU9GIHN0ZGluLWVuIGtvbmZpZ3VyYXppb2tvIGZpdHhhdGVnaWFyZW4gZ29uYml0ZWFuIgorCisjOiBzcmMvZGVwY29uLmM6MTc1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGRlcGVuZHMgb24gJXMiCittc2dzdHIgIiVzIHBha2V0ZWEgJXMocillbiBtZW5kZWtvYSBkYSIKKworIzogc3JjL2RlcGNvbi5jOjE3OAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBwcmUtZGVwZW5kcyBvbiAlcyIKK21zZ3N0ciAiJXMgcGFrZXRlYSAlcyhyKWVuIGF1cnJlbWVuZGVrb2EgZGEiCisKKyM6IHNyYy9kZXBjb24uYzoxODEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcmVjb21tZW5kcyAlcyIKK21zZ3N0ciAiJXMoZSlrICVzIGdvbWVuZGF0emVuIGR1IgorCisjOiBzcmMvZGVwY29uLmM6MTg0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHN1Z2dlc3RzICVzIgorbXNnc3RyICIlcyhlKWsgJXMgaXJhZG9raXR6ZW4gZHUiCisKKyM6IHNyYy9kZXBjb24uYzoxODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgYnJlYWtzICVzIgorbXNnc3RyICIlcyhlKWsgJXMgaGF1c3RlbiBkdSIKKworIzogc3JjL2RlcGNvbi5jOjE5MAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBjb25mbGljdHMgd2l0aCAlcyIKK21zZ3N0ciAiJXMoZSlrICVzKHIpZWtpbiBnYXRhemthbiBkYWdvIgorCisjOiBzcmMvZGVwY29uLmM6MTkzCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGVuaGFuY2VzICVzIgorbXNnc3RyICIlcyhlKWsgJXMgaG9iZXR6ZW4gZHUiCisKKyM6IHNyYy9kZXBjb24uYzoyOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdG8gYmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMga2VuZHUgYmVoYXIgZGEuXG4iCisKKyM6IHNyYy9kZXBjb24uYzoyOTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdG8gYmUgZGVjb25maWd1cmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyBrb25maWd1cmF6aW9hIGtlbmR1a28gZGEuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdG8gYmUgaW5zdGFsbGVkLCBidXQgaXMgdmVyc2lvbiAlLjI1MHMuXG4iCittc2dzdHIgIiAgJS4yNTBzIGluc3RhbGF0dSBiZWhhciBkYSwgYmFpbmEgYmVydHNpb2EgJS4yNTBzIGRhLlxuIgorCisjOiBzcmMvZGVwY29uLmM6MzE0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIGluc3RhbGxlZCwgYnV0IGlzIHZlcnNpb24gJS4yNTBzLlxuIgorbXNnc3RyICIgICUuMjUwcyBpbnN0YWxhdHV0YSBkYWdvLCBiYWluYSBiZXJ0c2lvYSAlLjI1MHMgZGEuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdW5wYWNrZWQsIGJ1dCBoYXMgbmV2ZXIgYmVlbiBjb25maWd1cmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyBkZXNrb25wcmltaXR1dGEgZGFnbywgYmFpbmEgb3JhaW5kaWsgZXogZGEga29uZmlndXJhdHUuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdW5wYWNrZWQsIGJ1dCBpcyB2ZXJzaW9uICUuMjUwcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgZGVza29ucHJpbWl0dXRhIGRhZ28sIGJhaW5hIGJlcnRzaW9hICUuMjUwcyBkYS5cbiIKKworIzogc3JjL2RlcGNvbi5jOjM0MworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBsYXRlc3QgY29uZmlndXJlZCB2ZXJzaW9uIGlzICUuMjUwcy5cbiIKK21zZ3N0ciAiICAlLjI1MHM6IGF6a2VuIGtvbmZpZ3VyYXR1dGFrbyBiZXJ0c2lvYSAlLjI1MHMgZGEuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozNTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgJXMuXG4iCittc2dzdHIgIiAgJS4yNTBzICVzIGRhLlxuIgorCisjOiBzcmMvZGVwY29uLmM6Mzg4CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBidXQgaXMgdG8gYmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHM6ICUuMjUwcyBob3JuaXR6ZW4gZHUsIGJhaW5hIGtlbmR1IGVnaW4gYmVoYXIgZGEuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGJ1dCBpcyB0byBiZSBkZWNvbmZpZ3VyZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzOiAlLjI1MHMgaG9ybml0emVuIGR1LCBiYWluYSBrb25maWd1cmF6aW9hIGtlbmR1IGJlaGFyIGRhLlxuIgorCisjOiBzcmMvZGVwY29uLmM6NDAxCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBidXQgaXMgJXMuXG4iCittc2dzdHIgIiAgJS4yNTBzOiAlLjI1MHMgaG9ybml0emVuIGR1LCBiYWluYSAlcyBkYS5cbiIKKworIzogc3JjL2RlcGNvbi5jOjQxNQorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIgICUuMjUwcyBleiBkYWdvIGluc3RhbGF0dXRhLlxuIgorCisjOiBzcmMvZGVwY29uLmM6NDQzCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzICh2ZXJzaW9uICUuMjUwcykgaXMgdG8gYmUgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIgICUuMjUwcyAoJS4yNTBzIGJlcnRzaW9hKSBpbnN0YWxhdHUgYmVoYXIgZGEuXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgKHZlcnNpb24gJS4yNTBzKSBpcyBwcmVzZW50IGFuZCAlcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgKCUuMjUwcyBiZXJ0c2lvYSkgZGFnbyBldGEgJXMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGFuZCBpcyB0byBiZSBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzOiAlLjI1MHMgaG9ybml0emVuIGR1LCBiYWluYSBpbnN0YWxhdHUgZWdpbiBiZWhhciBkYS5cbiIKKworIzogc3JjL2RlcGNvbi5jOjUzNworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYW5kIGlzIHByZXNlbnQgYW5kICVzLlxuIgorbXNnc3RyICIgICUuMjUwczogJS4yNTBzIGhvcm5pdHplbiBkdSwgZXhpc3RpdHplbiBkYSBldGEgJXMgZGEuXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MAorIywgZnV6enkKKyN8IG1zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IHF1ZXJ5aW5nIHBhY2thZ2VzLiIKK21zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IGRpdmVydGluZyBmaWxlcy4iCittc2dzdHIgIkVyYWJpbGkgLS1oZWxwIHBha2V0ZWVuIGtvbnRzdWx0YXJpIGJ1cnV6a28gbGFndW50emEgbG9ydHpla28uIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjYgc3JjL3N0YXRjbWQuYzo1NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuICVzIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkRlYmlhbiAlcyAlcyBiZXJ0c2lvYS5cbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjcwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMTAgR3VpbGxlbSBKb3Zlci5cbiIKK21zZ3N0ciAiIgorIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLlxuIgorIkNvcHlyaWdodCAoQykgMjAxMCBHdWlsbGVtIEpvdmVyLlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NzUgc3JjL21haW4uYzo2MyBzcmMvcXVlcnljbWQuYzo2MDMgc3JjL3N0YXRjbWQuYzo2NQorIzogc3JjL3RyaWdjbWQuYzo1NSBkcGtnLWRlYi9tYWluLmM6NTcgZHBrZy1zcGxpdC9tYWluLmM6NTEKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo4OQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvclxuIgorImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LlxuIgorbXNnc3RyICIiCisiU29mdHdhcmUgaGF1IGxpYnJlYSBkYTsga29waWF0emVrbyBiYWxkaW50emVuIGJlcnJpIGl6YXRla28sIGlrdXNcbiIKKyJHTlUgTGl6ZW50emlhIFB1Ymxpa28gT3Jva29ycmFyZW4gMiBiZXJ0c2lvYSBlZG8gYmVycmlhZ29hLlxuIgorIkVaIGRhZ28gYmVybWVyaWsuXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo4NyBzcmMvbWFpbi5jOjgxIHNyYy9xdWVyeWNtZC5jOjYxNSBzcmMvc3RhdGNtZC5jOjc3CisjOiBkcGtnLWRlYi9tYWluLmM6NjkgZHBrZy1zcGxpdC9tYWluLmM6NjMgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjk3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gPGNvbW1hbmQ+XG4iCisiXG4iCittc2dzdHIgIiIKKyJFcmFiaWxlcmE6ICVzIFs8YXVrZXJhPiAuLi5dIDxrb21hbmRvYT5cbiIKKyJcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjkxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIFstLWFkZF0gPGZpbGU+ICAgICAgICAgICBhZGQgYSBkaXZlcnNpb24uXG4iCisiICAtLXJlbW92ZSA8ZmlsZT4gICAgICAgICAgcmVtb3ZlIHRoZSBkaXZlcnNpb24uXG4iCisiICAtLWxpc3QgWzxnbG9iLXBhdHRlcm4+XSAgc2hvdyBmaWxlIGRpdmVyc2lvbnMuXG4iCisiICAtLWxpc3RwYWNrYWdlIDxmaWxlPiAgICAgc2hvdyB3aGF0IHBhY2thZ2UgZGl2ZXJ0cyB0aGUgZmlsZS5cbiIKKyIgIC0tdHJ1ZW5hbWUgPGZpbGU+ICAgICAgICByZXR1cm4gdGhlIGRpdmVydGVkIGZpbGUuXG4iCisiXG4iCittc2dzdHIgIiIKKyJLb21hbmRvYWs6XG4iCisiICBbLS1hZGRdIDxmaWxlPiAgICAgICAgICAgZ2VoaXR1IGRlc2JpZGVyYXBlbiBiYXQuXG4iCisiICAtLXJlbW92ZSA8Zml0eGF0ZWdpYT4gICAgICAgICAga2VuZHUgZGVzYmlkZXJhcGVuYS5cbiIKKyIgIC0tbGlzdCBbPGVyZWR1X29yb2tvcnJhPl0gIGVyYWt1dHNpIGZpdHhhdGVnaWFyZW4gZGVzYmlkZXJhcGVuYS5cbiIKKyIgIC0tbGlzdHBhY2thZ2UgPGZpdHhhdGVnaWE+ICAgICBlcmFrdXRzaSB6ZXIgcGFrZXRlayBkZXNiaWRlcmF0emVuIGR1ZW4gIgorImZpdHhhdGVnaWEuXG4iCisiICAtLXRydWVuYW1lIDxmaXR4YXRlZ2lhPiAgICAgICAgZXJha3V0c2kgZGVzYmlkZXJhdHV0YWtvIGZpdHhhdGVnaWFyZW4gIgorIml6ZW5hLlxuIgorIlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MTAwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1wYWNrYWdlIDxwYWNrYWdlPiAgICAgIG5hbWUgb2YgdGhlIHBhY2thZ2Ugd2hvc2UgY29weSBvZiA8ZmlsZT4gd2lsbCAiCisibm90XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiZSBkaXZlcnRlZC5cbiIKKyIgIC0tbG9jYWwgICAgICAgICAgICAgICAgICBhbGwgcGFja2FnZXMnIHZlcnNpb25zIGFyZSBkaXZlcnRlZC5cbiIKKyIgIC0tZGl2ZXJ0IDxkaXZlcnQtdG8+ICAgICB0aGUgbmFtZSB1c2VkIGJ5IG90aGVyIHBhY2thZ2VzJyB2ZXJzaW9ucy5cbiIKKyIgIC0tcmVuYW1lICAgICAgICAgICAgICAgICBhY3R1YWxseSBtb3ZlIHRoZSBmaWxlIGFzaWRlIChvciBiYWNrKS5cbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICBzZXQgdGhlIGRpcmVjdG9yeSB3aXRoIHRoZSBkaXZlcnNpb25zIGZpbGUuXG4iCisiICAtLXRlc3QgICAgICAgICAgICAgICAgICAgZG9uJ3QgZG8gYW55dGhpbmcsIGp1c3QgZGVtb25zdHJhdGUuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgcXVpZXQgb3BlcmF0aW9uLCBtaW5pbWFsIG91dHB1dC5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCittc2dzdHIgIiIKKyJBdWtlcmFrOlxuIgorIiAgLS1wYWNrYWdlIDxwYWtldGVhPiAgICA8Zml0eGF0ZWdpYT4tcmVuIGtvcGlhIGRlc2JpZGVyYXR1a29cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXogZGVuIHBha2V0ZWFyZW4gaXplbmEuXG4iCisiICAtLWxvY2FsICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWtldGUgZ3V6dGllbiBiZXJ0c2lvYWsgIgorImRlc2JpZGVyYXR6ZW5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlyYS5cbiIKKyIgIC0tZGl2ZXJ0IDxkZXNiLW5vcmE+ICAgICBiZXN0ZSBwYWtldGVlbiBiZXJ0c2lvZWsgZXJhYmlsdHplblxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdXRlbiBpemVuYS5cbiIKKyIgIC0tcmVuYW1lICAgICAgICAgICAgICAgICAgICAgICAgZXJhbWFuIGZpdHhhdGVnaWEgYWxib3JhIChlZG8gYXR6ZXJhKS5cbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVrdG9yaS4+ICBkZXNiaWRlcmFrZXRhIGZpdHhhdGVnaWEgZHVlbiBkaXJla3RvcmlvYVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlemFycmkuXG4iCisiICAtLXRlc3QgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBleiBlemVyIGVnaW4sIGVyYWt1dHNpIGJha2FycmlrLlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgICAgICAgICAgICBla2ludHphIGl4aWxhLCBndXR4aWVuZWtvIGlydGVlcmEuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVyYWt1dHNpIGxhZ3VudHphcmVuIG1lenUgaGF1LlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICAgICAgICAgZXJha3V0c2kgYmVydHNpb2EuXG4iCisiXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIldoZW4gYWRkaW5nLCBkZWZhdWx0IGlzIC0tbG9jYWwgYW5kIC0tZGl2ZXJ0IDxvcmlnaW5hbD4uZGlzdHJpYi5cbiIKKyJXaGVuIHJlbW92aW5nLCAtLXBhY2thZ2Ugb3IgLS1sb2NhbCBhbmQgLS1kaXZlcnQgbXVzdCBtYXRjaCBpZiBzcGVjaWZpZWQuXG4iCisiUGFja2FnZSBwcmVpbnN0L3Bvc3RybSBzY3JpcHRzIHNob3VsZCBhbHdheXMgc3BlY2lmeSAtLXBhY2thZ2UgYW5kIC0tIgorImRpdmVydC5cbiIKK21zZ3N0ciAiIgorIkdlaGl0emVhbiwgbGVoZW5ldHNpYSAtLWxvY2FsIGV0YSAtLWRpdmVydCA8amF0b3JyaXprbz4uZGlzdHJpYiBkYS5cbiIKKyJLZW50emVhbiwgLS1wYWNrYWdlIGVkbyAtLWxvY2FsIGV0YSAtLWRpdmVydCBwYXJla28gaXphbiBiZWhhciBkaXJhIHplaGF6dGVuICIKKyJiYWRhLlxuIgorIlBha2V0ZSBwcmVpbnN0L3Bvc3RybSBzY3JpcHQtYWsgYmV0aSB6ZWhhenR1IGJlaGFyIGRpdHV6dGUgLS1wYWNrYWdlIGV0YSAtLSIKKyJkaXZlcnQuXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoxNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2hlY2tpbmcgJyVzJyIKK21zZ3N0ciAiZXJyb3JlYSAnJXMnIGVnaWF6dGF0emVhbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjIwMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisicmVuYW1lIGludm9sdmVzIG92ZXJ3cml0aW5nIGAlcycgd2l0aFxuIgorIiAgZGlmZmVyZW50IGZpbGUgYCVzJywgbm90IGFsbG93ZWQiCittc2dzdHIgIiIKKyJiZXJyaXplbmRhdHplYWsgJyVzJyBnYWluaWRhenRlYSBkYWthclxuIgorIiAgJyVzJyBmaXR4YXRlZ2kgZXpiZXJkaW5hcmVraW4sIGV6IGRhIG9uYXJ0emVuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjIzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzczCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gd3JpdGUgZmlsZSAnJXMnIgorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgZmlsZSAnJXMnIgorbXNnc3RyICJlemluIGRhICclcycgZml0eGF0ZWdpYSBpZGF0emkiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyMjcKK21zZ2lkICJmaWxlIGNvcHkiCittc2dzdHIgImZpdHhhdGVnaWFyZW4ga29waWEiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyMzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlbmFtZSAnJXMnIHRvICclcyciCittc2dzdHIgImV6aW4gZGEgJyVzJyBpemVuZXogJyVzJyhlKXJhIGFsZGF0dSIKKworIzogc3JjL2RpdmVydGNtZC5jOjI1MgorIywgYy1mb3JtYXQKK21zZ2lkICJyZW5hbWU6IHJlbW92ZSBkdXBsaWNhdGUgb2xkIGxpbmsgJyVzJyIKK21zZ3N0ciAicmVuYW1lOiBrZW5kdSBiaWtvaXp0dXRha28gJyVzJyBlc3Rla2EgemFoYXJyYSIKKworIzogc3JjL2RpdmVydGNtZC5jOjI2MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIG9wZW4gc291cmNlIGZpbGUgYCUuMjUwcyciCittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBjb3BpZWQgc291cmNlIGZpbGUgJyVzJyIKK21zZ3N0ciAiZXppbiBkYSBpdHVyYnVydWtvICclLjI1MHMnIGZpdHhhdGVnaWEgaXJla2kiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyODQKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9jYWwgZGl2ZXJzaW9uIG9mICVzIgorbXNnc3RyICInJXMnKHIpZW4gZGVzYmlkZXJha2V0YSBsb2thbGEiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyODYKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9jYWwgZGl2ZXJzaW9uIG9mICVzIHRvICVzIgorbXNnc3RyICInJXMnIGxva2Fsa2kgaG9uYSBkZXNiaWRlcmF0dXRhOiAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjI5MAorIywgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnNpb24gb2YgJXMgYnkgJXMiCittc2dzdHIgIiVzICVzKGUpayBkZXNiaWRlcmF0dXRhIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjkzCisjLCBjLWZvcm1hdAorbXNnaWQgImRpdmVyc2lvbiBvZiAlcyB0byAlcyBieSAlcyIKK21zZ3N0ciAiJTMkcyhlKWsgJTEkcyBkZXNiaWRlcmF0dSBkdSAlMiRzKGUpcmEiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozMDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiYW55IGRpdmVyc2lvbiBvZiAlcyIKK21zZ3N0ciAiJXMocillbiBlZG96ZWluIGRlc2JpZGVyYWtldGEiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiYW55IGRpdmVyc2lvbiBvZiAlcyB0byAlcyIKK21zZ3N0ciAiJXMocillbiBlZG96ZWluIGRlc2JpZGVyYWtldGEgJXMoZSlyYSIKKworIzogc3JjL2RpdmVydGNtZC5jOjM1NworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgY3JlYXRlIG5ldyAlcyBmaWxlIgorbXNnc3RyICJlemluIGRhICVzIGZpdHhhdGVnaSBiZXJyaWEgc29ydHUiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozNzUgc3JjL3N0YXRjbWQuYzoyMTUgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE0MDQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIGZpbGUgJyVzJyIKK21zZ3N0ciAiZXppbiBkYSAnJXMnIGZpdHhhdGVnaWEgZ2FyYml0dSIKKworIzogc3JjL2RpdmVydGNtZC5jOjM4MgorbXNnaWQgImVycm9yIHJlbW92aW5nIG9sZCBkaXZlcnNpb25zLW9sZCIKK21zZ3N0ciAiZXJyb3JlYSBkaXZlcnNpb25zLW9sZCB6YWhhcnJhIGtlbnR6ZWFuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mzg0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgbmV3IGRpdmVyc2lvbnMtb2xkIgorbXNnc3RyICJlcnJvcmVhIGRpdmVyc2lvbnMtb2xkIGJlcnJpYSBzb3J0emVhbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjM4NgorbXNnaWQgImVycm9yIGluc3RhbGxpbmcgbmV3IGRpdmVyc2lvbnMiCittc2dzdHIgImVycm9yZWEgZGVzYmlkZXJhcGVuIGJlcnJpYSBpbnN0YWxhdHplYW4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MDYgc3JjL2RpdmVydGNtZC5jOjUwMyBzcmMvZGl2ZXJ0Y21kLmM6NjEwCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjMwIHNyYy9zdGF0Y21kLmM6MjkwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSBzaW5nbGUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMgYXVrZXJhayBhcmd1bWVudHUgYmFrYXIgYmF0IGJlaGFyIGR1IgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDA5IHNyYy9kaXZlcnRjbWQuYzo0MzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZW5hbWUgXCIlc1wiIGlzIG5vdCBhYnNvbHV0ZSIKK21zZ3N0ciAiXCIlc1wiIGZpdHhhdGVnaS1pemVuYSBleiBkYSBhYnNvbHV0dWEiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MTEgc3JjL3N0YXRjbWQuYzoyNDkKK21zZ2lkICJmaWxlIG1heSBub3QgY29udGFpbiBuZXdsaW5lcyIKK21zZ3N0ciAiZml0eGF0ZWdpYWsgZXppbiBkdSBsZXJyby1qYXV6aXJpayBlZHVraSIKKworIzogc3JjL2RpdmVydGNtZC5jOjQxOAorbXNnaWQgIkNhbm5vdCBkaXZlcnQgZGlyZWN0b3JpZXMiCittc2dzdHIgIkV6aW4gZGlyYSBkaXJla3RvcmlvYWsgZGVzYmlkZXJhdHUiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGRpdmVydCBmaWxlICclcycgdG8gaXRzZWxmIgorbXNnc3RyICJlemluIGRhICclcycgZml0eGF0ZWdpYSBiZXJlIGJ1cnVyYSBkZXNiaWRlcmF0dSIKKworIzogc3JjL2RpdmVydGNtZC5jOjQ1MworIywgYy1mb3JtYXQKK21zZ2lkICJMZWF2aW5nICclcydcbiIKK21zZ3N0ciAiJyVzJyB1enRlblxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDU4CisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgY2xhc2hlcyB3aXRoIGAlcyciCittc2dzdHIgIiclcycoZSlrICclcycocilla2luIGdhdGF6a2FuIGRhZ28iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAiQWRkaW5nICclcydcbiIKK21zZ3N0ciAiJyVzJyBnZWhpdHplblxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTEwCisjLCBjLWZvcm1hdAorbXNnaWQgIk5vIGRpdmVyc2lvbiAnJXMnLCBub25lIHJlbW92ZWQuXG4iCittc2dzdHIgIkV6IGRhZ28gJyVzJyBkZXNiaWRlcmFrZXRhcmlrLCBleiBkYSBlemFiYXR1a29cbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjUyNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisibWlzbWF0Y2ggb24gZGl2ZXJ0LXRvXG4iCisiICB3aGVuIHJlbW92aW5nIGAlcydcbiIKKyIgIGZvdW5kIGAlcyciCittc2dzdHIgIiIKKyJwYXJla2F0emUgb2tlcnJhIFwiZGl2ZXJ0LXRvXCItblxuIgorIiAgJyVzJyBlemFiYXR6ZWFuXG4iCisiICAnJXMnIGF1cmtpdHUgZGEiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm1pc21hdGNoIG9uIHBhY2thZ2VcbiIKKyIgIHdoZW4gcmVtb3ZpbmcgYCVzJ1xuIgorIiAgZm91bmQgYCVzJyIKK21zZ3N0ciAiIgorInBhcmVrYXR6ZSBva2VycmEgcGFrZXRlYW5cbiIKKyIgICclcycgZXphYmF0emVhblxuIgorIiAgJyVzJyBhdXJraXR1IGRhIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTM5CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlbW92aW5nICclcydcbiIKK21zZ3N0ciAiJyVzJyBrZW50emVuXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo2NTcKK21zZ2lkICJwYWNrYWdlIG1heSBub3QgY29udGFpbiBuZXdsaW5lcyIKK21zZ3N0ciAicGFrZXRlYWsgZXppbiBkdSBsZXJyby1qYXV6aXJpayBiZXJyaXJpayBlZHVraSIKKworIzogc3JjL2RpdmVydGNtZC5jOjY2NgorbXNnaWQgImRpdmVydC10byBtYXkgbm90IGNvbnRhaW4gbmV3bGluZXMiCittc2dzdHIgIidkaXZlcnQtdG8nLWsgZXppbiBkdSBsZXJyby1qYXV6aXJpayBlZHVraSIKKworIzogc3JjL2RpdmVydGRiLmM6NjQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiBkaXZlcnNpb25zIGZpbGUiCittc2dzdHIgImh1dHMgZWdpbiBkdSBkZXNiaWRlcmF0emVlbiBmaXR4YXRlZ2lhIGlyZWtpdHplYW4iCisKKyM6IHNyYy9kaXZlcnRkYi5jOjcxCittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IHByZXZpb3VzIGRpdmVyc2lvbnMgZmlsZSIKK21zZ3N0ciAiZnN0YXQtZWsgaHV0cyBlZ2luIGR1IGF1cnJla28gZGVzYmlkZXJhdHplZW4gZml0eGF0ZWdpYXJla2luIgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzo3MworbXNnaWQgImZhaWxlZCB0byBmc3RhdCBkaXZlcnNpb25zIGZpbGUiCittc2dzdHIgImZzdGF0LWVrIGh1dHMgZWdpbiBkdSBkZXNiaWRlcmF0emVlbiBmaXR4YXRlZ2lhcmVraW4iCisKKyM6IHNyYy9kaXZlcnRkYi5jOjExMworIywgYy1mb3JtYXQKK21zZ2lkICJjb25mbGljdGluZyBkaXZlcnNpb25zIGludm9sdmluZyBgJS4yNTBzJyBvciBgJS4yNTBzJyIKK21zZ3N0ciAiZGVzYmlkZXJhdHplIGdhdGF6a2F0c3VhazogJyUuMjUwcycgZWRvICclLjI1MHMnIgorCisjOiBzcmMvZW5xdWlyeS5jOjczCittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgYXJlIGluIGEgbWVzcyBkdWUgdG8gc2VyaW91cyBwcm9ibGVtcyBkdXJpbmdcbiIKKyJpbnN0YWxsYXRpb24uICBUaGV5IG11c3QgYmUgcmVpbnN0YWxsZWQgZm9yIHRoZW0gKGFuZCBhbnkgcGFja2FnZXNcbiIKKyJ0aGF0IGRlcGVuZCBvbiB0aGVtKSB0byBmdW5jdGlvbiBwcm9wZXJseTpcbiIKK21zZ3N0ciAiIgorIlBha2V0ZSBoYXVlayBnYWl6a2kgZGF1ZGUsIGluc3RhbGF6aW9hbiB6ZWhhciBhcmF6byBsYXJyaWFrIGVnb25cbiIKKyJkaXJlbGFrby4gQmVycmlybyBpbnN0YWxhdHUgYmVoYXIgZGlyYSAoZXRhIGJlcmVuIG1lbmRlIGRhdWRlblxuIgorInBha2V0ZSBndXp0aWFrKSBvbmRvIGxhbiBlZ2l0ZWtvOlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjgwCittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgaGF2ZSBiZWVuIHVucGFja2VkIGJ1dCBub3QgeWV0IGNvbmZpZ3VyZWQuXG4iCisiVGhleSBtdXN0IGJlIGNvbmZpZ3VyZWQgdXNpbmcgZHBrZyAtLWNvbmZpZ3VyZSBvciB0aGUgY29uZmlndXJlXG4iCisibWVudSBvcHRpb24gaW4gZHNlbGVjdCBmb3IgdGhlbSB0byB3b3JrOlxuIgorbXNnc3RyICIiCisiUGFrZXRlIGhhdWVrIGRlc2tvbnByaW1pdHUgZGlyYSwgYmFpbmEgb3JhaW5kaWsgZXogZGlyYSBrb25maWd1cmF0dS5cbiIKKyJLb25maWd1cmF0emVrbywgZXJhYmlsaSBkcGtnIC0tY29uZmlndXJlIGVkbyBjb25maWd1cmUgbWVudS1hdWtlcmFcbiIKKyJkc2VsZWN0LWVuOlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjg3Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgYXJlIG9ubHkgaGFsZiBjb25maWd1cmVkLCBwcm9iYWJseSBkdWUgdG8gcHJvYmxlbXNcbiIKKyJjb25maWd1cmluZyB0aGVtIHRoZSBmaXJzdCB0aW1lLiAgVGhlIGNvbmZpZ3VyYXRpb24gc2hvdWxkIGJlIHJldHJpZWQgdXNpbmdcbiIKKyJkcGtnIC0tY29uZmlndXJlIDxwYWNrYWdlPiBvciB0aGUgY29uZmlndXJlIG1lbnUgb3B0aW9uIGluIGRzZWxlY3Q6XG4iCittc2dzdHIgIiIKKyJQYWtldGUgaGF1ZWsgZXogZGF1ZGUgZ3V6dGl6IGtvbmZpZ3VyYXR1dGEsIGJlaGFyYmFkYSBrb25maWd1cmF0dSB6aXJlblxuIgorImxlaGVuZW5nbyBhbGRpYW4gYXJhem9hayBlZ29uIHppcmVsYWtvLiBTYWlhdHUgYmVycmlybyBrb25maWd1cmF0emVuXG4iCisiZHBrZyAtLWNvbmZpZ3VyZSA8cGFrZXRlYT4gZXJhYmlsaXogZWRvIGNvbmZpZ3VyZSBtZW51LWF1a2VyYXJla2luXG4iCisiZHNlbGVjdC1lbjpcbiIKKworIzogc3JjL2VucXVpcnkuYzo5NAorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBvbmx5IGhhbGYgaW5zdGFsbGVkLCBkdWUgdG8gcHJvYmxlbXMgZHVyaW5nXG4iCisiaW5zdGFsbGF0aW9uLiAgVGhlIGluc3RhbGxhdGlvbiBjYW4gcHJvYmFibHkgYmUgY29tcGxldGVkIGJ5IHJldHJ5aW5nIGl0O1xuIgorInRoZSBwYWNrYWdlcyBjYW4gYmUgcmVtb3ZlZCB1c2luZyBkc2VsZWN0IG9yIGRwa2cgLS1yZW1vdmU6XG4iCittc2dzdHIgIiIKKyJQYWtldGUgaGF1ZWsgZXogZGF1ZGUgZ3V6dGl6IGtvbmZpZ3VyYXR1dGEsIGluc3RhbGF6aW9hbiB6ZWhhciBhcmF6b2FrXG4iCisiZWdvbiBkaXJlbGFrby4gU2FpYXR1IGJlcnJpcm8gaW5zdGFsYXR6ZW47IHBha2V0ZWFrIGtlbnR6ZWtvLCBlcmFiaWxpXG4iCisiZHNlbGVjdCBlZG8gZHBrZyAtLXJlbW92ZTpcbiIKKworIzogc3JjL2VucXVpcnkuYzoxMDEKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgYXdhaXRpbmcgcHJvY2Vzc2luZyBvZiB0cmlnZ2VycyB0aGF0IHRoZXlcbiIKKyJoYXZlIGFjdGl2YXRlZCBpbiBvdGhlciBwYWNrYWdlcy4gIFRoaXMgcHJvY2Vzc2luZyBjYW4gYmUgcmVxdWVzdGVkIHVzaW5nXG4iCisiZHNlbGVjdCBvciBkcGtnIC0tY29uZmlndXJlIC0tcGVuZGluZyAob3IgZHBrZyAtLXRyaWdnZXJzLW9ubHkpOlxuIgorbXNnc3RyICIiCisiSG9uYWtvIHBha2V0ZWFrIGJlc3RlIHBha2V0ZWVrIGFrdGliYXR1dGFrbyBhYmlhcmV6bGVlblxuIgorInByb3plc3VlbiB6YWluIGRhdWRlLiBQcm96ZXN1IGhhdWVrIGVza2F0emVrbyBlcmFiaWxpIFxuIgorImRzZWxlY3QgZWRvIGRwa2cgLS1jb25maWd1cmUgLS1wZW5kaW5nIChlZG8gZHBrZyAtLXRyaWdnZXJzLW9ubHkpOlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjEwOAorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGhhdmUgYmVlbiB0cmlnZ2VyZWQsIGJ1dCB0aGUgdHJpZ2dlciBwcm9jZXNzaW5nXG4iCisiaGFzIG5vdCB5ZXQgYmVlbiBkb25lLiAgVHJpZ2dlciBwcm9jZXNzaW5nIGNhbiBiZSByZXF1ZXN0ZWQgdXNpbmdcbiIKKyJkc2VsZWN0IG9yIGRwa2cgLS1jb25maWd1cmUgLS1wZW5kaW5nIChvciBkcGtnIC0tdHJpZ2dlcnMtb25seSk6XG4iCittc2dzdHIgIiIKKyJIb25ha28gcGFrZXRlYWsgYWJpYXJhemkgZGlyZW4gYXJyZW4sIGFiaWFyYXpsZWFyZW4gcHJvemVzdWFcbiIKKyJleiBkYSBvcmFpbmRpayBhbWFpdHUuIEFiaWFyYXpsZWFyZW4gcHJvemVzdWEgZXNrYXR6ZWtvIGVyYWJpbGkgXG4iCisiZHNlbGVjdCBlZG8gZHBrZyAtLWNvbmZpZ3VyZSAtLXBlbmRpbmcgKGVkbyBkcGtnIC0tdHJpZ2dlcnMtb25seSk6XG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTM3IHNyYy9lbnF1aXJ5LmM6MjExIHNyYy9lbnF1aXJ5LmM6MjkyIHNyYy9lbnF1aXJ5LmM6MzczCisjOiBzcmMvZW5xdWlyeS5jOjQ2MCBzcmMvc2VsZWN0LmM6OTggc3JjL3NlbGVjdC5jOjE2NCBzcmMvdHJpZ2NtZC5jOjE5OQorIzogc3JjL3VwZGF0ZS5jOjQ4IHNyYy91cGRhdGUuYzoxMTMgZHBrZy1zcGxpdC9xdWV1ZS5jOjIzMgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIHRha2VzIG5vIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS0lczogZXogZHUgYXJndW1lbnR1cmlrIGhhcnR6ZW4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTUyCittc2dpZCAiIgorIkFub3RoZXIgcHJvY2VzcyBoYXMgbG9ja2VkIHRoZSBkYXRhYmFzZSBmb3Igd3JpdGluZywgYW5kIG1pZ2h0IGN1cnJlbnRseSBiZVxuIgorIm1vZGlmeWluZyBpdCwgc29tZSBvZiB0aGUgZm9sbG93aW5nIHByb2JsZW1zIG1pZ2h0IGp1c3QgYmUgZHVlIHRvIHRoYXQuXG4iCittc2dzdHIgIiIKKyJCZXN0ZSBwcm96ZXN1IGJhdGVrIGRhdHUtYmFzZWEgYmxva2VhdHUgZHUgaWRhenRla28sIGV0YVxuIgorImJhbGl0ZWtlIHVuZWFuIGFsZGFrZXRhayBlZ2l0ZW4gZWdvdGVhLiBBcmF6byBoYXVldGFyaWtvXG4iCisiYmF0enVlbiB6ZXJnYXRpYSBpemFuIGRhaXRla2UuXG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTkxCisjLCBmdXp6eQorI3wgbXNnaWQgIjx1bmtub3duPiIKK21zZ2N0eHQgInNlY3Rpb24iCittc2dpZCAiPHVua25vd24+IgorbXNnc3RyICI8ZXplemFndW5hPiIKKworIzogc3JjL2VucXVpcnkuYzoyNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiICVkIGluICVzOiAiCittc2dzdHIgIiAlZCAtICVzOiAiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MjY2CisjLCBjLWZvcm1hdAorbXNnaWQgIiAlZCBwYWNrYWdlLCBmcm9tIHRoZSBmb2xsb3dpbmcgc2VjdGlvbjoiCittc2dpZF9wbHVyYWwgIiAlZCBwYWNrYWdlcywgZnJvbSB0aGUgZm9sbG93aW5nIHNlY3Rpb25zOiIKK21zZ3N0clswXSAicGFrZXRlICVkLCBvbmRva28gc2VremlvZXRhbjoiCittc2dzdHJbMV0gIiAlZCBwYWtldGUsIG9uZG9rbyBzZWt6aW9ldGFuOiIKKworIzogc3JjL2VucXVpcnkuYzozMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlZlcnNpb24gb2YgZHBrZyB3aXRoIHdvcmtpbmcgJXMgc3VwcG9ydCBub3QgeWV0IGNvbmZpZ3VyZWQuXG4iCisiIFBsZWFzZSB1c2UgJ2Rwa2cgLS1jb25maWd1cmUgZHBrZycsIGFuZCB0aGVuIHRyeSBhZ2Fpbi5cbiIKK21zZ3N0ciAiIgorImRwa2ctZW4gYmVydHNpb2EgJXMgZXVza2FycmlhcmVraW4gZXogZGFnbyBvcmFpbmRpayBrb25maWd1cmF0dXRhLlxuIgorIkVyYWJpbGkgJ2Rwa2cgLS1jb25maWd1cmUgZHBrZycsIGV0YSBvbmRvcmVuIHNhaWF0dSBiZXJyaXJvLlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjMxMAorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnIG5vdCByZWNvcmRlZCBhcyBpbnN0YWxsZWQsIGNhbm5vdCBjaGVjayBmb3IgJXMgc3VwcG9ydCFcbiIKK21zZ3N0ciAiYmFkaXJ1ZGkgZHBrZyBleiBkYWdvZWxhIGluc3RhbGF0dXRhLCBlemluIGRhIGJpbGF0dSAlcyBldXNrYXJyaWEgIVxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjMyMQorbXNnaWQgIlByZS1EZXBlbmRzIGZpZWxkIgorbXNnc3RyICJBdXJyZW1lbmRla290YXN1bmVuIGVyZW11YSIKKworIzogc3JjL2VucXVpcnkuYzozMjkKK21zZ2lkICJlcG9jaCIKK21zZ3N0ciAiYXJvIgorCisjOiBzcmMvZW5xdWlyeS5jOjMzNworbXNnaWQgImxvbmcgZmlsZW5hbWVzIgorbXNnc3RyICJmaXR4YXRlZ2ktaXplbiBsdXplYWsiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzQ2Cittc2dpZCAibXVsdGlwbGUgQ29uZmxpY3RzIGFuZCBSZXBsYWNlcyIKK21zZ3N0ciAiaGFpbmJhdCBnYXRhemthIGV0YSBvcmRlemthcGVuIgorCisjOiBzcmMvZW5xdWlyeS5jOjQzNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogY2Fubm90IHNlZSBob3cgdG8gc2F0aXNmeSBwcmUtZGVwZW5kZW5jeTpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorImRwa2c6IGV6aW4gZGEgaWt1c2kgbm9sYSBiZXRlIGF1cnJlbWVuZGVrb3Rhc3VuYTpcbiIKKyIgJXNcbiIKKworIzogc3JjL2VucXVpcnkuYzo0MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHNhdGlzZnkgcHJlLWRlcGVuZGVuY2llcyBmb3IgJS4yNTBzICh3YW50ZWQgZHVlIHRvICUuMjUwcykiCittc2dzdHIgIiIKKyIlLjI1MHM6IGV6aW4gZGlyYSBhdXJyZW1lbmRla290YXN1bmFrIGJldGUgKGhhdSBkZWxhIGV0YSBiZWhhciBkaXJhOiAlLjI1MHMpIgorCisjOiBzcmMvZW5xdWlyeS5jOjQ3MgorIywgYy1mb3JtYXQKK21zZ2lkICJvYnNvbGV0ZSBvcHRpb24gJy0tJXMnLCBwbGVhc2UgdXNlICctLSVzJyBpbnN0ZWFkLiIKK21zZ3N0ciAiJy0tJXMnIGF1a2VyYSB6YWhhcmtpdHVhLCAnLS0lcycgZXJhYmlsaSBob3JyZW4gb3JkZXouIgorCisjOiBzcmMvZW5xdWlyeS5jOjUxOQorbXNnaWQgIiIKKyItLWNvbXBhcmUtdmVyc2lvbnMgdGFrZXMgdGhyZWUgYXJndW1lbnRzOiA8dmVyc2lvbj4gPHJlbGF0aW9uPiA8dmVyc2lvbj4iCittc2dzdHIgIiIKKyItLWNvbXBhcmUtdmVyc2lvbnM6IGhpcnUgYXJndW1lbnR1IGhhcnR6ZW4gZGl0dTogPGJlcnRzaW9hPiA8ZXJsYXppb2E+ICIKKyI8YmVydHNpb2E+IgorCisjOiBzcmMvZW5xdWlyeS5jOjUyNAorbXNnaWQgIi0tY29tcGFyZS12ZXJzaW9ucyBiYWQgcmVsYXRpb24iCittc2dzdHIgIi0tY29tcGFyZS12ZXJzaW9uczogb2tlcnJla28gZXJsYXppb2EiCisKKyM6IHNyYy9lbnF1aXJ5LmM6NTI5IHNyYy9lbnF1aXJ5LmM6NTMxIHNyYy9lbnF1aXJ5LmM6NTQwIHNyYy9lbnF1aXJ5LmM6NTQyCisjLCBjLWZvcm1hdAorbXNnaWQgInZlcnNpb24gJyVzJyBoYXMgYmFkIHN5bnRheDogJXMiCittc2dzdHIgIiVzIGJlcnRzaW9hayBva2VycmVrbyBzaW50YXhpYSBkdTogJXMiCisKKyM6IHNyYy9lcnJvcnMuYzo2MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IGVycm9yIHByb2Nlc3NpbmcgJXMgKC0tJXMpOlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisiJXM6IGVycm9yZWEgJXMgcHJvemVzYXR6ZWFuICgtLSVzKTpcbiIKKyIgJXNcbiIKKworIzogc3JjL2Vycm9ycy5jOjY4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiZHBrZzogZmFpbGVkIHRvIGFsbG9jYXRlIG1lbW9yeSBmb3IgbmV3IGVudHJ5IGluIGxpc3Qgb2YgZmFpbGVkIHBhY2thZ2VzLiIKK21zZ2lkICIiCisiJXM6IGZhaWxlZCB0byBhbGxvY2F0ZSBtZW1vcnkgZm9yIG5ldyBlbnRyeSBpbiBsaXN0IG9mIGZhaWxlZCBwYWNrYWdlczogJXMiCittc2dzdHIgIiIKKyJkcGtnOiBlemluIGl6YW4gZGEgbWVtb3JpYXJpayBlc2xlaXR1IGh1dHMgZWdpbmRha28gcGFrZXRlZW4gemVycmVuZGFuICIKKyJzYXJyZXJhIGJlcnJpYSBnZWhpdHpla28uIgorCisjOiBzcmMvZXJyb3JzLmM6NzkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImRwa2c6IHRvbyBtYW55IGVycm9ycywgc3RvcHBpbmdcbiIKK21zZ2lkICIlczogdG9vIG1hbnkgZXJyb3JzLCBzdG9wcGluZ1xuIgorbXNnc3RyICJkcGtnOiBlcnJvcmUgZ2VoaWVnaSwgZ2VsZGl0dSBlZ2luZ28gZGFcbiIKKworIzogc3JjL2Vycm9ycy5jOjg3Cittc2dpZCAiRXJyb3JzIHdlcmUgZW5jb3VudGVyZWQgd2hpbGUgcHJvY2Vzc2luZzpcbiIKK21zZ3N0ciAiRXJyb3JlYWsgYXVya2l0dSBkaXJhIHByb3plc2F0emVhbjpcbiIKKworIzogc3JjL2Vycm9ycy5jOjk0Cittc2dpZCAiUHJvY2Vzc2luZyB3YXMgaGFsdGVkIGJlY2F1c2UgdGhlcmUgd2VyZSB0b28gbWFueSBlcnJvcnMuXG4iCittc2dzdHIgIlByb3plc3VhIGdlbGRpYXJhemkgZGEgZXJyb3JlIGdlaGllZ2kgemV1ZGVsYWtvLlxuIgorCisjOiBzcmMvZXJyb3JzLmM6MTA1CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgJXMgd2FzIG9uIGhvbGQsIHByb2Nlc3NpbmcgaXQgYW55d2F5IGFzIHlvdSByZXF1ZXN0ZWRcbiIKK21zZ3N0ciAiJXMgcGFrZXRlYSBtYW50ZW5kdXRhIHplZ29lbiwgYmFpbmEgenVrIGVza2F0dSBiZXphbGEgcHJvemVzYXR1a28gZGFcbiIKKworIzogc3JjL2Vycm9ycy5jOjEwOQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiUGFja2FnZSAlcyBpcyBvbiBob2xkLCBub3QgdG91Y2hpbmcgaXQuICBVc2UgLS1mb3JjZS1ob2xkIHRvIG92ZXJyaWRlLlxuIgorbXNnc3RyICIiCisiJXMgcGFrZXRlYSBtYW50ZW5kdXRhIGRhZ28sIGV6IGRhIHVraXR1a28uICBFcmFiaWxpIC0tZm9yY2UtaG9sZFxuIgorImdhaW5pZGF6dGVrby5cbiIKKworIzogc3JjL2Vycm9ycy5jOjExOQorbXNnaWQgIm92ZXJyaWRpbmcgcHJvYmxlbSBiZWNhdXNlIC0tZm9yY2UgZW5hYmxlZDoiCittc2dzdHIgImdhaW5pZGF6dGVrbyBhcmF6b2EgLS1mb3JjZSBnYWl0dXRhIGRhZ29lbGFrbzoiCisKKyM6IHNyYy9maWxlc2RiLmM6MzA3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSBgJS4yNTBzJyIKK21zZ3N0ciAiZXppbiBkaXJhICclLjI1MHMnIHBha2V0ZWFyZW4gZml0eGF0ZWdpLXplcnJlbmRhcmVuIGZpdHhhdGVnaWFrIGlyZWtpIgorCisjOiBzcmMvZmlsZXNkYi5jOjMxMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlIGAlLjI1MHMnIG1pc3NpbmcsIGFzc3VtaW5nIHBhY2thZ2UgaGFzIG5vIGZpbGVzICIKKyJjdXJyZW50bHkgaW5zdGFsbGVkLiIKK21zZ3N0ciAiIgorIiclLjI1MHMnIHBha2V0ZWFyZW4gZml0eGF0ZWdpLXplcnJlbmRhcmVuIGZpdHhhdGVnaWFrIGZhbHRhIGRpcmEsIHBha2V0ZWFrICIKKyJleiBkdWVsYSBmaXR4YXRlZ2lyaWsgaW5zdGFsYXR1dGEgb25kb3Jpb3p0YXR1a28gZGEuIgorCisjOiBzcmMvZmlsZXNkYi5jOjMyMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJyUuMjUwcyciCittc2dzdHIgIiIKKyJlemluIGRhICclLjI1MHMnIHBha2V0ZWFyZW4gZml0eGF0ZWdpLXplcnJlbmRhcmVuIGZpdHhhdGVnaWFyZW4gZWdvZXJhICIKKyJlc2t1cmF0dSIKKworIzogc3JjL2ZpbGVzZGIuYzozMzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGVzIGxpc3QgZm9yIHBhY2thZ2UgYCUuMjUwcyciCittc2dpZCAicmVhZGluZyBmaWxlcyBsaXN0IGZvciBwYWNrYWdlICclLjI1MHMnIgorbXNnc3RyICInJS4yNTBzJyBwYWtldGVhcmVuIGZpdHhhdGVnaS16ZXJyZW5kYSIKKworIzogc3JjL2ZpbGVzZGIuYzozMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICclLjI1MHMnIGlzIG1pc3NpbmcgZmluYWwgbmV3bGluZSIKK21zZ3N0ciAiIgorIiclLjI1MHMnIHBha2V0ZWFyZW4gZml0eGF0ZWdpLXplcnJlbmRhayBhbWFpZXJha28gbGVycm8tamF1emlhIGZhbHRhIGR1IgorCisjOiBzcmMvZmlsZXNkYi5jOjM0NAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcycgY29udGFpbnMgZW1wdHkgZmlsZW5hbWUiCittc2dzdHIgIiIKKyInJS4yNTBzJyBwYWtldGVhcmVuIGZpdHhhdGVnaS16ZXJyZW5kYXJlbiBmaXR4YXRlZ2lhayBmaXR4YXRlZ2llayBpemVuIGh1dHNhICIKKyJkYXVrYXRlIgorCisjOiBzcmMvZmlsZXNkYi5jOjM1MgorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSBgJS4yNTBzJyIKK21zZ3N0ciAiZXJyb3JlYSAnJS4yNTBzJyBwYWtldGVhcmVuIGZpdHhhdGVnaS16ZXJyZW5kYXJlbiBmaXR4YXRlZ2lhayBpeHRlYW4iCisKKyM6IHNyYy9maWxlc2RiLmM6NDYyCittc2dpZCAiKFJlYWRpbmcgZGF0YWJhc2UgLi4uICIKK21zZ3N0ciAiKERhdHUtYmFzZWEgaXJha3VydHplbiAuLi4gIgorCisjOiBzcmMvZmlsZXNkYi5jOjQ4MworIywgYy1mb3JtYXQKK21zZ2lkICIlZCBmaWxlIG9yIGRpcmVjdG9yeSBjdXJyZW50bHkgaW5zdGFsbGVkLilcbiIKK21zZ2lkX3BsdXJhbCAiJWQgZmlsZXMgYW5kIGRpcmVjdG9yaWVzIGN1cnJlbnRseSBpbnN0YWxsZWQuKVxuIgorbXNnc3RyWzBdICJmaXR4YXRlZ2kgZWRvIGRpcmVrdG9yaW8gJWQgZGFnbyB1bmVhbiBpbnN0YWxhdHV0YSkuXG4iCittc2dzdHJbMV0gIiVkIGZpdHhhdGVnaSBlZG8gZGlyZWt0b3JpbyBkYXVkZSB1bmVhbiBpbnN0YWxhdHV0YSkuXG4iCisKKyM6IHNyYy9maWxlc2RiLmM6NTE2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgImV6aW4gZGEgJXMgcGFrZXRlYXJlbiBmaXR4YXRlZ2ktemVycmVuZGEgZWd1bmVyYXR1YSBzb3J0dSIKKworIzogc3JjL2ZpbGVzZGIuYzo1MjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIHRvIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICIiCisiaHV0cyBlZ2luIGR1ICVzIHBha2V0ZWFyZW4gZml0eGF0ZWdpLXplcnJlbmRhcmVuIGZpdHhhdGVnaSBlZ3VuZXJhdHVhICIKKyJpZGF6dGVhbiIKKworIzogc3JjL2ZpbGVzZGIuYzo1MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZsdXNoIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICIiCisiaHV0cyBlZ2luIGR1ICVzIHBha2V0ZWFyZW4gZml0eGF0ZWdpLXplcnJlbmRhcmVuIGZpdHhhdGVnaSBlZ3VuZXJhdHVhICIKKyJnYXJiaXR6ZWFuIgorCisjOiBzcmMvZmlsZXNkYi5jOjUzMAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gc3luYyB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAiIgorImh1dHMgZWdpbiBkdSAlcyBwYWtldGVhcmVuIGZpdHhhdGVnaS16ZXJyZW5kYXJlbiBmaXR4YXRlZ2kgZWd1bmVyYXR1YSAiCisic2lua3Jvbml6YXR6ZWFuIgorCisjOiBzcmMvZmlsZXNkYi5jOjUzMworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2xvc2UgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIiIKKyJodXRzIGVnaW4gZHUgJXMgcGFrZXRlYXJlbiBmaXR4YXRlZ2ktemVycmVuZGFyZW4gZml0eGF0ZWdpIGVndW5lcmF0dWEgaXh0ZWFuIgorCisjOiBzcmMvZmlsZXNkYi5jOjUzNQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gaW5zdGFsbCB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAiIgorImh1dHMgZWdpbiBkdSAlcyBwYWtldGVhcmVuIGZpdHhhdGVnaS16ZXJyZW5kYXJlbiBmaXR4YXRlZ2kgZWd1bmVyYXR1YSAiCisiaW5zdGFsYXR6ZWFuIgorCisjOiBzcmMvaGVscC5jOjQ4Cittc2dpZCAibm90IGluc3RhbGxlZCIKK21zZ3N0ciAiaW5zdGFsYXR1IGdhYmUiCisKKyM6IHNyYy9oZWxwLmM6NDkKK21zZ2lkICJub3QgaW5zdGFsbGVkIGJ1dCBjb25maWdzIHJlbWFpbiIKK21zZ3N0ciAiZXogZGFnbyBpbnN0YWxhdHV0YSBiYWluYSBrb25maWd1cmF6aW9hIGdlbGRpdHplbiBkYSIKKworIzogc3JjL2hlbHAuYzo1MAorbXNnaWQgImJyb2tlbiBkdWUgdG8gZmFpbGVkIHJlbW92YWwgb3IgaW5zdGFsbGF0aW9uIgorbXNnc3RyICJoYXV0c2l0YSBrZW50emVhbiBlZG8gaW5zdGFsYXR6ZW4gaHV0cyBlZ2luIGR1ZWxha28iCisKKyM6IHNyYy9oZWxwLmM6NTEKK21zZ2lkICJ1bnBhY2tlZCBidXQgbm90IGNvbmZpZ3VyZWQiCittc2dzdHIgImRlc2tvbnByaW1pdHV0YSBiYWluYSBrb25maWd1cmF0dSBnYWJlIgorCisjOiBzcmMvaGVscC5jOjUyCittc2dpZCAiYnJva2VuIGR1ZSB0byBwb3N0aW5zdCBmYWlsdXJlIgorbXNnc3RyICJoYXV0c2l0YSBwb3N0aW5zdC1lbiBodXRzZWdpdGVhIGRlbGEgZXRhIgorCisjOiBzcmMvaGVscC5jOjUzCittc2dpZCAiYXdhaXRpbmcgdHJpZ2dlciBwcm9jZXNzaW5nIGJ5IGFub3RoZXIgcGFja2FnZSIKK21zZ3N0ciAiYmVzdGUgcGFrZXRlIGJhdGVuIGFiaWFyYXpsZWFyZW4gcHJvemVzdWFyZW4gemFpbiIKKworIzogc3JjL2hlbHAuYzo1NAorbXNnaWQgInRyaWdnZXJlZCIKK21zZ3N0ciAiYWJpYXJheml0YSIKKworIzogc3JjL2hlbHAuYzo1NQorbXNnaWQgImluc3RhbGxlZCIKK21zZ3N0ciAiaW5zdGFsYXR1dGEiCisKKyM6IHNyYy9oZWxwLmM6MTA3CisjLCBmdXp6eQorI3wgbXNnaWQgImVycm9yOiBQQVRIIGlzIG5vdCBzZXQuIgorbXNnaWQgIlBBVEggaXMgbm90IHNldC4iCittc2dzdHIgImVycm9yZWE6IFBBVEggZXogZGEgZXphcnJpLiIKKworIzogc3JjL2hlbHAuYzoxMjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS4iCittc2dzdHIgIiclcycgZXogZGEgUEFUSCBhbGRhZ2FpYW4gYXVya2l0dSBlZG8gZXogZGEgZXhla3V0YWdhcnJpYS4iCisKKyM6IHNyYy9oZWxwLmM6MTM4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICInJXMnIG5vdCBmb3VuZCBpbiBQQVRIIG9yIG5vdCBleGVjdXRhYmxlLiIKK21zZ2lkICIiCisiJWQgZXhwZWN0ZWQgcHJvZ3JhbSBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS5cbiIKKyIlcyIKK21zZ2lkX3BsdXJhbCAiIgorIiVkIGV4cGVjdGVkIHByb2dyYW1zIG5vdCBmb3VuZCBpbiBQQVRIIG9yIG5vdCBleGVjdXRhYmxlLlxuIgorIiVzIgorbXNnc3RyWzBdICInJXMnIGV6IGRhIFBBVEggYWxkYWdhaWFuIGF1cmtpdHUgZWRvIGV6IGRhIGV4ZWt1dGFnYXJyaWEuIgorbXNnc3RyWzFdICInJXMnIGV6IGRhIFBBVEggYWxkYWdhaWFuIGF1cmtpdHUgZWRvIGV6IGRhIGV4ZWt1dGFnYXJyaWEuIgorCisjOiBzcmMvaGVscC5jOjE0MQorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiJWQgZXhwZWN0ZWQgcHJvZ3JhbSBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS5cbiIKKyN8ICJOQjogcm9vdCdzIFBBVEggc2hvdWxkIHVzdWFsbHkgY29udGFpbiAvdXNyL2xvY2FsL3NiaW4sIC91c3Ivc2JpbiBhbmQgLyIKKyN8ICJzYmluLiIKKyN8IG1zZ2lkX3BsdXJhbCAiIgorI3wgIiVkIGV4cGVjdGVkIHByb2dyYW1zIG5vdCBmb3VuZCBpbiBQQVRIIG9yIG5vdCBleGVjdXRhYmxlLlxuIgorI3wgIk5COiByb290J3MgUEFUSCBzaG91bGQgdXN1YWxseSBjb250YWluIC91c3IvbG9jYWwvc2JpbiwgL3Vzci9zYmluIGFuZCAvIgorI3wgInNiaW4uIgorbXNnaWQgIiIKKyJOb3RlOiByb290J3MgUEFUSCBzaG91bGQgdXN1YWxseSBjb250YWluIC91c3IvbG9jYWwvc2JpbiwgL3Vzci9zYmluIGFuZCAvIgorInNiaW4uIgorbXNnc3RyICIiCisiZXNwZXJvIHplbiBwcm9ncmFtYSAlZCBleiBkYSBQQVRIZW4gYXVya2l0dSwgZWRvIGV6IGRhIGV4ZWt1dGFnYXJyaWEuXG4iCisiT2hhcnJhOiBzdXBlcmVyYWJpbHR6YWlsZWFyZW4gUEFUSGFrIGhvbmFrb2FrIGl6YW4gb2hpIGRpdHU6XG4iCisiL3Vzci9sb2NhbC9zYmluLCAvdXNyL3NiaW4gZXRhIC9zYmluLiIKKworIzogc3JjL2hlbHAuYzoxODgKK21zZ2lkICJhZG1pbmRpciBtdXN0IGJlIGluc2lkZSBpbnN0ZGlyIGZvciBkcGtnIHRvIHdvcmsgcHJvcGVybHkiCittc2dzdHIgIiIKKworIzogc3JjL2hlbHAuYzoxOTAgc3JjL21haW4uYzo3NDcKKyMsIGZ1enp5CisjfCBtc2dpZCAidW5hYmxlIHRvIHNldGVudiBmb3IgbWFpbnRhaW5lciBzY3JpcHQiCittc2dpZCAidW5hYmxlIHRvIHNldGVudiBmb3Igc3VicHJvY2Vzc2VzIgorbXNnc3RyICJlemluIGRhICdzZXRlbnYnIGVyYWJpbGkgbWFudGVudHphaWxlYXJlbiBzY3JpcHQtYXJlbnR6YWtvIgorCisjOiBzcmMvaGVscC5jOjE5MgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2hyb290IHRvIGAlLjI1MHMnIgorbXNnc3RyICIlLjI1MHM6IGh1dHMgZWdpbiBkdSBjaHJvb3QgZWdpdGVhbiIKKworIzogc3JjL2hlbHAuYzoxOTQgZHBrZy1kZWIvYnVpbGQuYzo0NTUgZHBrZy1kZWIvYnVpbGQuYzo0NTcKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTM2IGRwa2ctZGViL2J1aWxkLmM6NTU4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byBgJS4yNTVzJyIKK21zZ3N0ciAiaHV0cyBlZ2luIGR1ICclLjI1NXMnIGRpcmVrdG9yaW9yYSBhbGRhdHplYW4iCisKKyM6IHNyYy9oZWxwLmM6MjU2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgZXhlY3V0ZSBwZXJtaXNzaW9ucyBvbiBgJS4yNTBzJyIKK21zZ3N0ciAiZXppbiBkYSBleGVrdXRhdHpla28gYmFpbWVuaWsgJyUuMjUwcycoZSluIGV6YXJyaSIKKworIzogc3JjL2hlbHAuYzoyNzYKK21zZ2lkICJ1bmFibGUgdG8gc2V0ZW52IGZvciBtYWludGFpbmVyIHNjcmlwdCIKK21zZ3N0ciAiZXppbiBkYSAnc2V0ZW52JyBlcmFiaWxpIG1hbnRlbnR6YWlsZWFyZW4gc2NyaXB0LWFyZW50emFrbyIKKworIzogc3JjL2hlbHAuYzozMDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW5zdGFsbGVkICVzIHNjcmlwdCIKK21zZ3N0ciAiJXMgc2NyaXB0LWEgaW5zdGFsYXR1dGEiCisKKyM6IHNyYy9oZWxwLmM6MzEzIHNyYy9oZWxwLmM6MzgyIHNyYy9oZWxwLmM6NDQxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0ICVzIGAlLjI1MHMnIgorbXNnc3RyICJlemluIGRhICVzICclLjI1MHMnIGF0eml0dSIKKworIzogc3JjL2hlbHAuYzozNjggc3JjL2hlbHAuYzo0MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAibmV3ICVzIHNjcmlwdCIKK21zZ3N0ciAiJXMgc2NyaXB0IGJlcnJpYSIKKworIzogc3JjL2hlbHAuYzo0MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAib2xkICVzIHNjcmlwdCIKK21zZ3N0ciAiJXMgc2NyaXB0IHphaGFycmEiCisKKyM6IHNyYy9oZWxwLmM6NDE2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0ICVzICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiZXppbiBkYSAlcyAnJS4yNTBzJyBhdHppdHU6ICVzIgorCisjOiBzcmMvaGVscC5jOjQyNQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnIC0gdHJ5aW5nIHNjcmlwdCBmcm9tIHRoZSBuZXcgcGFja2FnZSBpbnN0ZWFkIC4uLlxuIgorbXNnc3RyICJkcGtnIC0gcGFrZXRlIGJlcnJpYXJlbiBzY3JpcHQtYXJla2luIHNhaWF0emVuLi4uXG4iCisKKyM6IHNyYy9oZWxwLmM6NDM5Cittc2dpZCAidGhlcmUgaXMgbm8gc2NyaXB0IGluIHRoZSBuZXcgdmVyc2lvbiBvZiB0aGUgcGFja2FnZSAtIGdpdmluZyB1cCIKK21zZ3N0ciAiZXogZGFnbyBzY3JpcHQtaWsgcGFrZXRlYXJlbiBiZXJ0c2lvIGJlcnJpYW4gLSB1enRlbiBhcmkgZGEiCisKKyM6IHNyYy9oZWxwLmM6NDQ1CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IC4uLiBpdCBsb29rcyBsaWtlIHRoYXQgd2VudCBPSy5cbiIKK21zZ3N0ciAiZHBrZzogLi4uIGJhZGlydWRpIGRlbmEgb25kbyBqb2FuIGRlbGEuXG4iCisKKyM6IHNyYy9oZWxwLmM6NjE2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWN1cmVseSByZW1vdmUgJyUuMjU1cyciCittc2dzdHIgImV6aW4gZGEgJyUuMjU1cycgc2VndXJ0YXN1bmV6IGtlbmR1IgorCisjOiBzcmMvaGVscC5jOjYyMSBkcGtnLWRlYi9pbmZvLmM6NjUgZHBrZy1kZWIvaW5mby5jOjY3Cittc2dpZCAicm0gY29tbWFuZCBmb3IgY2xlYW51cCIKK21zZ3N0ciAiIgorCisjOiBzcmMvaW5mb2RiLmM6NTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoZWNrIGV4aXN0ZW5jZSBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiZXppbiBkYSAnJS4yNTBzJyBiYWRhZ29lbiBiZWdpcmF0dSIKKworIzogc3JjL2luZm9kYi5jOjcwCittc2dpZCAiY2Fubm90IHJlYWQgaW5mbyBkaXJlY3RvcnkiCittc2dzdHIgImV6aW4gZGEgaW5mb3JtYXppby1kaXJla3RvcmlvYW4gaXJha3VycmkiCisKKyM6IHNyYy9tYWluLmM6NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuIGAlcycgcGFja2FnZSBtYW5hZ2VtZW50IHByb2dyYW0gdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiRGViaWFuICclcycgcGFrZXRlLWt1ZGVhdHphaWxlYXJlbiAlcyBiZXJ0c2lvYS5cbiIKKworIzogc3JjL21haW4uYzo4NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtaXwtLWluc3RhbGwgICAgICAgPC5kZWIgZmlsZSBuYW1lPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyZWN0b3J5PiAuLi5cbiIKKyIgIC0tdW5wYWNrICAgICAgICAgICA8LmRlYiBmaWxlIG5hbWU+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXJlY3Rvcnk+IC4uLlxuIgorIiAgLUF8LS1yZWNvcmQtYXZhaWwgIDwuZGViIGZpbGUgbmFtZT4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRpcmVjdG9yeT4gLi4uXG4iCisiICAtLWNvbmZpZ3VyZSAgICAgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLS10cmlnZ2Vycy1vbmx5ICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC1yfC0tcmVtb3ZlICAgICAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtUHwtLXB1cmdlICAgICAgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLS1nZXQtc2VsZWN0aW9ucyBbPHBhdHRlcm4+IC4uLl0gR2V0IGxpc3Qgb2Ygc2VsZWN0aW9ucyB0byBzdGRvdXQuXG4iCisiICAtLXNldC1zZWxlY3Rpb25zICAgICAgICAgICAgICAgICBTZXQgcGFja2FnZSBzZWxlY3Rpb25zIGZyb20gc3RkaW4uXG4iCisiICAtLWNsZWFyLXNlbGVjdGlvbnMgICAgICAgICAgICAgICBEZXNlbGVjdCBldmVyeSBub24tZXNzZW50aWFsIHBhY2thZ2UuXG4iCisiICAtLXVwZGF0ZS1hdmFpbCA8UGFja2FnZXMtZmlsZT4gICBSZXBsYWNlIGF2YWlsYWJsZSBwYWNrYWdlcyBpbmZvLlxuIgorIiAgLS1tZXJnZS1hdmFpbCA8UGFja2FnZXMtZmlsZT4gICAgTWVyZ2Ugd2l0aCBpbmZvIGZyb20gZmlsZS5cbiIKKyIgIC0tY2xlYXItYXZhaWwgICAgICAgICAgICAgICAgICAgIEVyYXNlIGV4aXN0aW5nIGF2YWlsYWJsZSBpbmZvLlxuIgorIiAgLS1mb3JnZXQtb2xkLXVuYXZhaWwgICAgICAgICAgICAgRm9yZ2V0IHVuaW5zdGFsbGVkIHVuYXZhaWxhYmxlIHBrZ3MuXG4iCisiICAtc3wtLXN0YXR1cyA8cGFja2FnZT4gLi4uICAgICAgICBEaXNwbGF5IHBhY2thZ2Ugc3RhdHVzIGRldGFpbHMuXG4iCisiICAtcHwtLXByaW50LWF2YWlsIDxwYWNrYWdlPiAuLi4gICBEaXNwbGF5IGF2YWlsYWJsZSB2ZXJzaW9uIGRldGFpbHMuXG4iCisiICAtTHwtLWxpc3RmaWxlcyA8cGFja2FnZT4gLi4uICAgICBMaXN0IGZpbGVzIGBvd25lZCcgYnkgcGFja2FnZShzKS5cbiIKKyIgIC1sfC0tbGlzdCBbPHBhdHRlcm4+IC4uLl0gICAgICAgIExpc3QgcGFja2FnZXMgY29uY2lzZWx5LlxuIgorIiAgLVN8LS1zZWFyY2ggPHBhdHRlcm4+IC4uLiAgICAgICAgRmluZCBwYWNrYWdlKHMpIG93bmluZyBmaWxlKHMpLlxuIgorIiAgLUN8LS1hdWRpdCAgICAgICAgICAgICAgICAgICAgICAgQ2hlY2sgZm9yIGJyb2tlbiBwYWNrYWdlKHMpLlxuIgorIiAgLS1wcmludC1hcmNoaXRlY3R1cmUgICAgICAgICAgICAgUHJpbnQgZHBrZyBhcmNoaXRlY3R1cmUuXG4iCisiICAtLWNvbXBhcmUtdmVyc2lvbnMgPGE+IDxvcD4gPGI+ICBDb21wYXJlIHZlcnNpb24gbnVtYmVycyAtIHNlZSBiZWxvdy5cbiIKKyIgIC0tZm9yY2UtaGVscCAgICAgICAgICAgICAgICAgICAgIFNob3cgaGVscCBvbiBmb3JjaW5nLlxuIgorIiAgLURofC0tZGVidWc9aGVscCAgICAgICAgICAgICAgICAgU2hvdyBoZWxwIG9uIGRlYnVnZ2luZy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIktvbWFuZG9hazpcbiIKKyIgIC1pfC0taW5zdGFsbCAgICAgIDwuZGViIGZpdHhhdGVnaS1pemVuYT4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgIgorIjxkaXJla3RvcmlvYT4gLi4uXG4iCisiICAtLXVucGFjayAgICAgICAgICA8LmRlYiBmaXR4YXRlZ2ktaXplbmE+IC4uLiB8IC1SfC0tcmVjdXJzaXZlICIKKyI8ZGlyZWt0b3Jpb2E+IC4uLlxuIgorIiAgLUF8LS1yZWNvcmQtYXZhaWwgPC5kZWIgZml0eGF0ZWdpLWl6ZW5hPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSAiCisiPGRpcmVrdG9yaW9hPiAuLi5cbiIKKyIgIC0tY29uZmlndXJlICAgICAgICAgICAgICA8cGFrZXRlLWl6ZW5hPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC0tdHJpZ2dlcnMtb25seSAgICA8cGFrZXRlLWl6ZW5hPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC1yfC0tcmVtb3ZlICAgPHBha2V0ZS1pemVuYT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtUHwtLXB1cmdlICAgICA8cGFrZXRlLWl6ZW5hPi4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLS1nZXQtc2VsZWN0aW9ucyBbPGVyZWR1YT4gLi4uXSAgICBoYXJ0dSBoYXV0YXBlbi16ZXJyZW5kYSBzdGRvdXQtZXRpa1xuIgorIiAgLS1zZXQtc2VsZWN0aW9ucyAgICAgICAgICAgICAgICAgICAgZXphcnJpIHBha2V0ZS1oYXV0YXBlbmEgc3RkaW4tZXRpa1xuIgorIiAgLS1jbGVhci1zZWxlY3Rpb25zICAgICAgICAgICAgICAgIERlc2F1dGF0dSBiZWhhcnJlemtvYWsgZXogZGlyZW4gcGFrZXRlICIKKyJiYWtvaXR6YS5cbiIKKyIgIC0tdXBkYXRlLWF2YWlsIDxwYWtldGUtZml0eGF0Lj4gICBvcmRlenR1IHBha2V0ZSBlcmFiaWxnYXJyaWVuIGluZi5cbiIKKyIgIC0tbWVyZ2UtYXZhaWwgPHBha2V0ZS1maXR4YXQuPiAgICBiYXR1IGZpdHhhdGVnaWtvIGluZm9ybWF6aW9hcmVraW5cbiIKKyIgIC0tY2xlYXItYXZhaWwgICAgICAgICAgICAgICAgICAgICAgIGJvcnJhdHUgaW5mb3JtYXppbyBlcmFiaWxnYXJyaWFcbiIKKyIgIC0tZm9yZ2V0LW9sZC11bmF2YWlsICAgICAgICAgICAgYWhhenR1IGluc3RhbGF0dSBnYWJla28gcGFrZXRlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV6LWVyYWJpbGdhcnJpYWtcbiIKKyIgIC1zfC0tc3RhdHVzIDxwYWtldGUtaXplbmE+IC4uLiAgICAgIGVyYWt1dHNpIHBha2V0ZWFyZW4gZWdvZXJhXG4iCisiICAtcHwtLXByaW50LWF2YWlsIDxwYWtldGUtaXplbmE+IC4uLiBlcmFrdXRzaSBiZXJ0c2lvIGVyYWJpbGdhcnJpYVxuIgorIiAgLUx8LS1saXN0ZmlsZXMgPHBha2V0ZS1pemVuYT4gLi4uICAgIHplcnJlbmRhdHUgcGFrZXRlZW4gJ2phYmV0emFrbycgIgorImZpdHhhdGVnaWFcbiIKKyIgIC1sfC0tbGlzdCBbPGVyZWR1YT4gLi4uXSAgICAgICAgICAgICAgemVycmVuZGF0dSBwYWtldGVhayBsYWJ1cmtpXG4iCisiICAtU3wtLXNlYXJjaCA8ZXJlZHVhPiAuLi4gICAgICAgICBhdXJraXR1IGZpdHhhdGVnaWFrIGRpdHV6dGVuIHBha2V0ZWFrXG4iCisiICAtQ3wtLWF1ZGl0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmVnaXJhdHUgaG9uZGF0dXRha28gcGFrZXRlcmlrICIKKyJkYWdvZW5cbiIKKyIgIC0tcHJpbnQtYXJjaGl0ZWN0dXJlICAgICAgICAgICAgICAgICAgZXJha3V0c2kgaGVsYnVydWtvIGFya2l0ZWt0dXJhXG4iCisiICAtLWNvbXBhcmUtdmVyc2lvbnMgPGE+IDxlcmFnPiA8Yj4gICAga29ucGFyYXR1IGJlcnRzaW8temsuYWsgLSBpa3VzIGJlaGVhXG4iCisiICAtLWZvcmNlLWhlbHAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVyYWt1dHNpIGJlaGFydHpla28gbGFndW50emEuXG4iCisiICAtRGh8LS1kZWJ1Zz1oZWxwICAgICAgICAgICAgICAgICAgICBlcmFrdXRzaSBhcmF6a2V0YXJlbiBsYWd1bnR6YS5cbiIKKworIzogc3JjL21haW4uYzoxMTMgc3JjL3F1ZXJ5Y21kLmM6NjMxIHNyYy90cmlnY21kLmM6NzcgZHBrZy1kZWIvbWFpbi5jOjg4CisjOiBkcGtnLXNwbGl0L21haW4uYzo3NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiICAtaHwtLWhlbHAgICAgICAgICAgICAgICAgICAgICAgICBTaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICAgICAgICAgU2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIiAgLS1ofC0taGVscCAgICAgICAgICAgICAgICAgICAgICAgICAgIEVyYWt1dHNpIGxhZ3VudHpha28gbWV6dSBoYXUuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgICAgICAgICAgICBFcmFrdXRzaSBiZXJ0c2lvYS5cbiIKKyJcbiIKKworIzogc3JjL21haW4uYzoxMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlVzZSBkcGtnIC1ifC0tYnVpbGR8LWN8LS1jb250ZW50c3wtZXwtLWNvbnRyb2x8LUl8LS1pbmZvfC1mfC0tZmllbGR8XG4iCisiIC14fC0tZXh0cmFjdHwtWHwtLXZleHRyYWN0fC0tZnN5cy10YXJmaWxlICBvbiBhcmNoaXZlcyAodHlwZSAlcyAtLWhlbHApLlxuIgorIlxuIgorbXNnc3RyICIiCisiRXJhYmlsaSBkcGtnIC1ifC0tYnVpbGR8LWN8LS1jb250ZW50c3wtZXwtLWNvbnRyb2x8LUl8LS1pbmZvfC1mfC0tZmllbGR8XG4iCisiIC14fC0tZXh0cmFjdHwtWHwtLXZleHRyYWN0fC0tZnN5cy10YXJmaWxlIGFydHhpYm9ldGFuIChpZGF0emkgJXMgLS1oZWxwLilcbiIKKyJcbiIKKworIzogc3JjL21haW4uYzoxMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkZvciBpbnRlcm5hbCB1c2U6IGRwa2cgLS1hc3NlcnQtc3VwcG9ydC1wcmVkZXBlbmRzIHwgLS1wcmVkZXAtcGFja2FnZSB8XG4iCisiICAtLWFzc2VydC13b3JraW5nLWVwb2NoIHwgLS1hc3NlcnQtbG9uZy1maWxlbmFtZXMgfCAtLWFzc2VydC1tdWx0aS1jb25yZXAuXG4iCisiXG4iCittc2dzdHIgIiIKKyJCYXJuZSBlcmFiaWxwZW5lcmFrbzogZHBrZyAtLWFzc2VydC1zdXBwb3J0LXByZWRlcGVuZHMgfCAtLXByZWRlcC1wYWNrYWdlIFxuIgorIiAgLS1hc3NlcnQtd29ya2luZy1lcG9jaCB8IC0tYXNzZXJ0LWxvbmctZmlsZW5hbWVzIHwgLS1hc3NlcnQtbXVsdGktY29ucmVwXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTI4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hZG1pbmRpcj08ZGlyZWN0b3J5PiAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMuXG4iCisiICAtLXJvb3Q9PGRpcmVjdG9yeT4gICAgICAgICBJbnN0YWxsIG9uIGEgZGlmZmVyZW50IHJvb3QgZGlyZWN0b3J5LlxuIgorIiAgLS1pbnN0ZGlyPTxkaXJlY3Rvcnk+ICAgICAgQ2hhbmdlIGluc3RhbGxhdGlvbiBkaXIgd2l0aG91dCBjaGFuZ2luZyBhZG1pbiAiCisiZGlyLlxuIgorIiAgLS1wYXRoLWV4Y2x1ZGU9PHBhdHRlcm4+ICAgRG8gbm90IGluc3RhbGwgcGF0aHMgd2hpY2ggbWF0Y2ggYSBzaGVsbCAiCisicGF0dGVybi5cbiIKKyIgIC0tcGF0aC1pbmNsdWRlPTxwYXR0ZXJuPiAgIFJlLWluY2x1ZGUgYSBwYXR0ZXJuIGFmdGVyIGEgcHJldmlvdXMgIgorImV4Y2x1c2lvbi5cbiIKKyIgIC1PfC0tc2VsZWN0ZWQtb25seSAgICAgICAgIFNraXAgcGFja2FnZXMgbm90IHNlbGVjdGVkIGZvciBpbnN0YWxsLyIKKyJ1cGdyYWRlLlxuIgorIiAgLUV8LS1za2lwLXNhbWUtdmVyc2lvbiAgICAgU2tpcCBwYWNrYWdlcyB3aG9zZSBzYW1lIHZlcnNpb24gaXMgaW5zdGFsbGVkLlxuIgorIiAgLUd8LS1yZWZ1c2UtZG93bmdyYWRlICAgICAgU2tpcCBwYWNrYWdlcyB3aXRoIGVhcmxpZXIgdmVyc2lvbiB0aGFuICIKKyJpbnN0YWxsZWQuXG4iCisiICAtQnwtLWF1dG8tZGVjb25maWd1cmUgICAgICBJbnN0YWxsIGV2ZW4gaWYgaXQgd291bGQgYnJlYWsgc29tZSBvdGhlciAiCisicGFja2FnZS5cbiIKKyIgIC0tW25vLV10cmlnZ2VycyAgICAgICAgICAgIFNraXAgb3IgZm9yY2UgY29uc2VxdWVudGlhbCB0cmlnZ2VyICIKKyJwcm9jZXNzaW5nLlxuIgorIiAgLS1uby1kZWJzaWcgICAgICAgICAgICAgICAgRG8gbm90IHRyeSB0byB2ZXJpZnkgcGFja2FnZSBzaWduYXR1cmVzLlxuIgorIiAgLS1uby1hY3R8LS1kcnktcnVufC0tc2ltdWxhdGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEp1c3Qgc2F5IHdoYXQgd2Ugd291bGQgZG8gLSBkb24ndCBkbyBpdC5cbiIKKyIgIC1EfC0tZGVidWc9PG9jdGFsPiAgICAgICAgIEVuYWJsZSBkZWJ1Z2dpbmcgKHNlZSAtRGhlbHAgb3IgLS1kZWJ1Zz1oZWxwKS5cbiIKKyIgIC0tc3RhdHVzLWZkIDxuPiAgICAgICAgICAgIFNlbmQgc3RhdHVzIGNoYW5nZSB1cGRhdGVzIHRvIGZpbGUgZGVzY3JpcHRvciAiCisiPG4+LlxuIgorIiAgLS1sb2c9PGZpbGVuYW1lPiAgICAgICAgICAgTG9nIHN0YXR1cyBjaGFuZ2VzIGFuZCBhY3Rpb25zIHRvIDxmaWxlbmFtZT4uXG4iCisiICAtLWlnbm9yZS1kZXBlbmRzPTxwYWNrYWdlPiwuLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIElnbm9yZSBkZXBlbmRlbmNpZXMgaW52b2x2aW5nIDxwYWNrYWdlPi5cbiIKKyIgIC0tZm9yY2UtLi4uICAgICAgICAgICAgICAgIE92ZXJyaWRlIHByb2JsZW1zIChzZWUgLS1mb3JjZS1oZWxwKS5cbiIKKyIgIC0tbm8tZm9yY2UtLi4ufC0tcmVmdXNlLS4uLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcCB3aGVuIHByb2JsZW1zIGVuY291bnRlcmVkLlxuIgorIiAgLS1hYm9ydC1hZnRlciA8bj4gICAgICAgICAgQWJvcnQgYWZ0ZXIgZW5jb3VudGVyaW5nIDxuPiBlcnJvcnMuXG4iCisiXG4iCittc2dzdHIgIiIKKyJBdWtlcmFrOlxuIgorIiAgLS1hZG1pbmRpcj08ZGlyZWt0b3Jpb2E+ICAgIEVyYWJpbGkgPGRpcmVrdG9yaW9hPiAlcyhyKWVuIG9yZGV6XG4iCisiICAtLXJvb3Q9PGRpcmVrdG9yaW9hPiAgICAgICAgICAgSW5zdGFsYXR1IGJlc3RlbGFrbyBlcnJva28gZGlyZWt0b3Jpb2FuLlxuIgorIiAgLS1pbnN0ZGlyPTxkaXJla3RvcmlvYT4gICAgICAgIEFsZGF0dSBpbnN0YWxhemlvYXJlbiBkaXJla3RvcmlvYSwgXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFkbWluaXN0cmF0emFpbGVhcmVuICIKKyJkaXJla3RvcmlvYSBhbGRhdHUgZ2FiZS5cbiIKKyIgIC0tcGF0aC1leGNsdWRlPTxlcmVkdWE+ICAgRXogaW5zdGFsYXR1IHNoZWxsLWFyZW4gZXJlZHUgYmF0ZWtpblxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYXQgZGF0b3JyZW4gYmlkZS1pemVuaWsuXG4iCisiICAtLXBhdGgtaW5jbHVkZT08ZXJlZHVhPiAgICBTYXJ0dSBiZXJyaXJvIGVyZWR1IGJhdCBhdXJyZWtvXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhenRlcmtldGFyZW4gb25kb3Jlbi5cbiIKKyIgIC1PfC0tc2VsZWN0ZWQtb25seSAgICAgICAgICAgICAgICAgU2FsdGF0dSBpbnN0YWxhdHpla28vZWd1bmVyYXR6ZWtvXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhdXRhdHUgZXogIGRpcmVuIHBha2V0ZWFrLlxuIgorIiAgLUV8LS1za2lwLXNhbWUtdmVyc2lvbiAgICAgICAgICBTYWx0YXR1IGJlcnRzaW8gYmVyYSBpbnN0YWxhdHV0YSBkdXRlblxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWtldGVhay5cbiIKKyIgIC1HfC0tcmVmdXNlLWRvd25ncmFkZSAgICAgICAgIFNhbHRhdHUgYmVydHNpbyBiZXJyaWFnb2EgaW5zdGFsYXR1dGFcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZHV0ZW4gcGFrZXRlYWsuXG4iCisiICAtQnwtLWF1dG8tZGVjb25maWd1cmUgICAgICAgICAgIEluc3RhbGF0dSwgYmVzdGUgcGFrZXRlcmVuIGJhdCBob25kYXR1XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFycmVuLlxuIgorIiAgLS1bbm8tXXRyaWdnZXJzICAgICAgICAgICAgICAgICAgICAgIFNhbHRhdHUgZWRvIGRlcnJpZ29ydHUgamFycmFpa29cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWJpYXJhemxlYXJlbiBwcm96ZXN1YWsuXG4iCisiICAtLW5vLWRlYnNpZyAgICAgICAgICAgICAgICAgICAgICAgICAgRXogc2FpYXR1IHBha2V0ZS1zaW5hZHVyYWsgIgorImVnaWF6dGF0emVuXG4iCisiICAtLW5vLWFjdHwtLWRyeS1ydW58LS1zaW11bGF0ZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQXphbGR1IHplciBlZ2luIG5haGkgZHV6dW4sIGJhaW5hIGVnaW4gIgorImdhYmVcbiIKKyIgIC1EfC0tZGVidWc9PHpvcnR6aXRhcnJhPiAgICBHYWl0dSBhcmF6a2V0YSAoaWt1cyAtRGhlbHAgZWRvIFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0tZGVidWc9aGVscClcbiIKKyIgIC0tc3RhdHVzLWZkIDxuPiAgICAgICAgICAgICAgICAgICBCaWRhbGkgZWdvZXJhLWFsZGFrZXRlbiBlZ3VuZXJhdHplYWsgXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG4+IGZpdHhhdGVnaS1kZXNrcmlwdG9yZWFyaVxuIgorIiAgLS1sb2c9PGZpdHhhdGVnaS1pemVuYT4gICAgICAgIElkYXR6aSBhbGRha2V0ZW4gZXRhIGVraW50emVuIGVnb2VyYXJlblxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVndW5rYXJpYSA8Zml0eGF0ZWdpLWl6ZW5lYW4+XG4iCisiICAtLWlnbm9yZS1kZXBlbmRzPTxwYWtldGVhPiwuLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFeiBpa3VzaSBlZ2luIDxwYWtldGVhPnJlbiAiCisibWVuZGVrb3Rhc3VuZWlcbiIKKyIgIC0tZm9yY2UtLi4uICAgICAgICAgICAgICAgICAgICAgICBKYXJhbW9uaWsgZXogYXJhem9laSAtIGlrdXMgLS1mb3JjZS0iCisiaGVscFxuIgorIiAgLS1uby1mb3JjZS0uLi58LS1yZWZ1c2UtLi4uICAgICAgR2VsZGl0dSBhcmF6b2FrIGF1cmtpdHplYW4uXG4iCisiICAtLWFib3J0LWFmdGVyIDxuPiAgICAgICAgICAgICAgIEFib3J0YXR1IDxuPiBlcnJvcmUgYXVya2l0dSBvbmRvcmVuLlxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjE1NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tcGFyaXNvbiBvcGVyYXRvcnMgZm9yIC0tY29tcGFyZS12ZXJzaW9ucyBhcmU6XG4iCisiICBsdCBsZSBlcSBuZSBnZSBndCAgICAgICAodHJlYXQgZW1wdHkgdmVyc2lvbiBhcyBlYXJsaWVyIHRoYW4gYW55ICIKKyJ2ZXJzaW9uKTtcbiIKKyIgIGx0LW5sIGxlLW5sIGdlLW5sIGd0LW5sICh0cmVhdCBlbXB0eSB2ZXJzaW9uIGFzIGxhdGVyIHRoYW4gYW55IHZlcnNpb24pO1xuIgorIiAgPCA8PCA8PSA9ID49ID4+ID4gICAgICAgKG9ubHkgZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBjb250cm9sIGZpbGUgIgorInN5bnRheCkuXG4iCisiXG4iCittc2dzdHIgIiIKKyItLWNvbXBhcmUtdmVyc2lvbnM6IGtvbnBhcmF6aW8tZXJhZ2lsZWFrIGhhdWVrIGRpcmE6XG4iCisiIGx0IGxlIGVxIG5lIGdlIGd0ICAgICAgICAgICAgICAgKGJlcnRzaW9yaWsgZXplYW4sIHRyYXRhdHUgemFoYXJyZW5hIGJhbGl0eiAiCisiYmV6YWxhKTtcbiIKKyIgbHQtbmwgbGUtbmwgZ2UtbmwgZ3QtbmwgICAgICAgICAgKGJlcnRzaW9yaWsgZXplYW4sIHRyYXRhdHUgYmVycmllbmEgYmFsaXR6ICIKKyJiZXphbGEpO1xuIgorIiA8IDw8IDw9ID0gPj0gPj4gPiAgICAgIChrb250cm9sLWZpdHhhdGVnaWFyZW4gc2ludGF4aWFyZWtpa28gXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhdGVyYWdhcnJpdGFzdW5lcmFrbyBiYWthcnJpaykuXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTYxCisjLCBjLWZvcm1hdAorbXNnaWQgIlVzZSBgZHNlbGVjdCcgb3IgYGFwdGl0dWRlJyBmb3IgdXNlci1mcmllbmRseSBwYWNrYWdlIG1hbmFnZW1lbnQuXG4iCittc2dzdHIgIkVyYWJpbGkgJ2RzZWxlY3QnIGVkbyAnYXB0aXR1ZGUnIHBha2V0ZWFrIGVycmF6YWdvIGt1ZGVhdHpla28uXG4iCisKKyM6IHNyYy9tYWluLmM6MTcwCittc2dpZCAiIgorIlR5cGUgZHBrZyAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgaW5zdGFsbGluZyBhbmQgZGVpbnN0YWxsaW5nIHBhY2thZ2VzIFsqXTtcbiIKKyJVc2UgYGRzZWxlY3QnIG9yIGBhcHRpdHVkZScgZm9yIHVzZXItZnJpZW5kbHkgcGFja2FnZSBtYW5hZ2VtZW50O1xuIgorIlR5cGUgZHBrZyAtRGhlbHAgZm9yIGEgbGlzdCBvZiBkcGtnIGRlYnVnIGZsYWcgdmFsdWVzO1xuIgorIlR5cGUgZHBrZyAtLWZvcmNlLWhlbHAgZm9yIGEgbGlzdCBvZiBmb3JjaW5nIG9wdGlvbnM7XG4iCisiVHlwZSBkcGtnLWRlYiAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgbWFuaXB1bGF0aW5nICouZGViIGZpbGVzO1xuIgorIlxuIgorIk9wdGlvbnMgbWFya2VkIFsqXSBwcm9kdWNlIGEgbG90IG9mIG91dHB1dCAtIHBpcGUgaXQgdGhyb3VnaCBgbGVzcycgb3IgIgorImBtb3JlJyAhIgorbXNnc3RyICIiCisiSWRhdHppIGRwa2cgLS1oZWxwIHBha2V0ZWFrIGluc3RhbGF0dSBldGEgZGVzaW5zdGFsYXR6ZWtvIGxhZ3VudHphIGxvcnR6ZWtvICIKKyJbKl07XG4iCisiRXJhYmlsaSAnZHNlbGVjdCcgZWRvICdhcHRpdHVkZScgcGFrZXRlYWsgZXJyYXphZ28ga3VkZWF0emVrbztcbiIKKyJJZGF0emkgZHBrZyAtRGhlbHAgZHBrZyBhcmF6a2V0YS1iYW5kZXJlbiBiYWxpb2VuIHplcnJlbmRhIGlrdXN0ZWtvO1xuIgorIklkYXR6aSBkcGtnIC0tZm9yY2UtaGVscCBiZWhhcnR6ZWtvIGF1a2VyZW4gemVycmVuZGEgbG9ydHpla287XG4iCisiSWRhdHppIGRwa2ctZGViIC0taGVscCAqLmRlYiBmaXR4YXRlZ2lhayBlcmFsZGF0emVrbyBsYWd1bnR6YSBsb3J0emVrbztcbiIKKyJcbiIKKyJbKl0gbWFya2F0dXRha28gYXVrZXJlayBlbWFpdHphIGhhbmRpYSBkdXRlIC0gaXJhZ2F6aSAnbGVzcycgZWRvICdtb3JlJyAiCisiZXJhYmlsaXouIgorCisjOiBzcmMvbWFpbi5jOjIxOQorbXNnaWQgIlNldCBhbGwgZm9yY2Ugb3B0aW9ucyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIyMQorbXNnaWQgIlJlcGxhY2UgYSBwYWNrYWdlIHdpdGggYSBsb3dlciB2ZXJzaW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjIzCittc2dpZCAiQ29uZmlndXJlIGFueSBwYWNrYWdlIHdoaWNoIG1heSBoZWxwIHRoaXMgb25lIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjI1Cittc2dpZCAiUHJvY2VzcyBpbmNpZGVudGFsIHBhY2thZ2VzIGV2ZW4gd2hlbiBvbiBob2xkIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjI3Cittc2dpZCAiVHJ5IHRvIChkZSlpbnN0YWxsIHRoaW5ncyBldmVuIHdoZW4gbm90IHJvb3QiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjkKK21zZ2lkICJQQVRIIGlzIG1pc3NpbmcgaW1wb3J0YW50IHByb2dyYW1zLCBwcm9ibGVtcyBsaWtlbHkiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzEKK21zZ2lkICJJbnN0YWxsIGEgcGFja2FnZSBldmVuIGlmIGl0IGZhaWxzIGF1dGhlbnRpY2l0eSBjaGVjayIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzMworbXNnaWQgIlByb2Nlc3MgZXZlbiBwYWNrYWdlcyB3aXRoIHdyb25nIHZlcnNpb25zIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjM1Cittc2dpZCAiT3ZlcndyaXRlIGEgZmlsZSBmcm9tIG9uZSBwYWNrYWdlIHdpdGggYW5vdGhlciIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzNworbXNnaWQgIk92ZXJ3cml0ZSBhIGRpdmVydGVkIGZpbGUgd2l0aCBhbiB1bmRpdmVydGVkIHZlcnNpb24iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzkKK21zZ2lkICJPdmVyd3JpdGUgb25lIHBhY2thZ2UncyBkaXJlY3Rvcnkgd2l0aCBhbm90aGVyJ3MgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI0MQorbXNnaWQgIkRvIG5vdCBwZXJmb3JtIHNhZmUgSS9PIG9wZXJhdGlvbnMgd2hlbiB1bnBhY2tpbmciCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDMKK21zZ2lkICJBbHdheXMgdXNlIHRoZSBuZXcgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDUKK21zZ2lkICJBbHdheXMgdXNlIHRoZSBvbGQgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDgKK21zZ2lkICIiCisiVXNlIHRoZSBkZWZhdWx0IG9wdGlvbiBmb3IgbmV3IGNvbmZpZyBmaWxlcyBpZiBvbmVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgaXMgYXZhaWxhYmxlLCBkb24ndCBwcm9tcHQuIElmIG5vIGRlZmF1bHQgY2FuIGJlICIKKyJmb3VuZCxcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgeW91IHdpbGwgYmUgcHJvbXB0ZWQgdW5sZXNzIG9uZSBvZiB0aGUgY29uZm9sZCBvclxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICBjb25mbmV3IG9wdGlvbnMgaXMgYWxzbyBnaXZlbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI1MworbXNnaWQgIkFsd2F5cyBpbnN0YWxsIG1pc3NpbmcgY29uZmlnIGZpbGVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjU1Cittc2dpZCAiT2ZmZXIgdG8gcmVwbGFjZSBjb25maWcgZmlsZXMgd2l0aCBubyBuZXcgdmVyc2lvbnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNTcKK21zZ2lkICJQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyBvciBubyBhcmNoaXRlY3R1cmUiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNTkKK21zZ2lkICJJbnN0YWxsIGV2ZW4gaWYgaXQgd291bGQgYnJlYWsgYW5vdGhlciBwYWNrYWdlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjYxCittc2dpZCAiQWxsb3cgaW5zdGFsbGF0aW9uIG9mIGNvbmZsaWN0aW5nIHBhY2thZ2VzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjYzCisjLCBmdXp6eQorI3wgbXNnaWQgImRlcGVuZGVuY3kgcHJvYmxlbXMgLSBub3QgcmVtb3ZpbmciCittc2dpZCAiVHVybiBhbGwgZGVwZW5kZW5jeSBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzIgorbXNnc3RyICJtZW5kZWtvdGFzdW4gYXJhem9hayAtIGV6IGRhIGtlbmR1a28iCisKKyM6IHNyYy9tYWluLmM6MjY1CisjLCBmdXp6eQorI3wgbXNnaWQgImRlcGVuZGVuY3kgcHJvYmxlbXMgLSBub3QgcmVtb3ZpbmciCittc2dpZCAiVHVybiBkZXBlbmRlbmN5IHZlcnNpb24gcHJvYmxlbXMgaW50byB3YXJuaW5ncyIKK21zZ3N0ciAibWVuZGVrb3Rhc3VuIGFyYXpvYWsgLSBleiBkYSBrZW5kdWtvIgorCisjOiBzcmMvbWFpbi5jOjI2NworbXNnaWQgIlJlbW92ZSBwYWNrYWdlcyB3aGljaCByZXF1aXJlIGluc3RhbGxhdGlvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI2OQorbXNnaWQgIlJlbW92ZSBhbiBlc3NlbnRpYWwgcGFja2FnZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4MQorbXNnaWQgIkdlbmVyYWxseSBoZWxwZnVsIHByb2dyZXNzIGluZm9ybWF0aW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjgyCisjLCBmdXp6eQorI3wgbXNnaWQgInVuYWJsZSB0byBzZXRlbnYgZm9yIG1haW50YWluZXIgc2NyaXB0IgorbXNnaWQgIkludm9jYXRpb24gYW5kIHN0YXR1cyBvZiBtYWludGFpbmVyIHNjcmlwdHMiCittc2dzdHIgImV6aW4gZGEgJ3NldGVudicgZXJhYmlsaSBtYW50ZW50emFpbGVhcmVuIHNjcmlwdC1hcmVudHpha28iCisKKyM6IHNyYy9tYWluLmM6MjgzCittc2dpZCAiT3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg0Cittc2dpZCAiTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODUKKyMsIGZ1enp5CisjfCBtc2dpZCAicmVhZCBlcnJvciBpbiBjb25maWd1cmF0aW9uIGZpbGUgYCUuMjU1cyciCittc2dpZCAiT3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZSIKK21zZ3N0ciAiaXJha3Vya2V0YXJlbiBlcnJvcmVhICclLjI1NXMnIGtvbmZpZ3VyYXppb2tvIGZpdHhhdGVnaWFuIgorCisjOiBzcmMvbWFpbi5jOjI4NgorbXNnaWQgIkxvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4NworbXNnaWQgIkRlcGVuZGVuY2llcyBhbmQgY29uZmxpY3RzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg4Cittc2dpZCAiTG90cyBvZiBkZXBlbmRlbmNpZXMvY29uZmxpY3RzIG91dHB1dCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4OQorbXNnaWQgIlRyaWdnZXIgYWN0aXZhdGlvbiBhbmQgcHJvY2Vzc2luZyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MAorbXNnaWQgIkxvdHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2VycyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MQorbXNnaWQgIlNpbGx5IGFtb3VudHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2VycyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MgorbXNnaWQgIkxvdHMgb2YgZHJpdmVsIGFib3V0IGVnIHRoZSBkcGtnL2luZm8gZGlyZWN0b3J5IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjkzCittc2dpZCAiSW5zYW5lIGFtb3VudHMgb2YgZHJpdmVsIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MzA0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlcyBkZWJ1Z2dpbmcgb3B0aW9uLCAtLWRlYnVnPTxvY3RhbD4gb3IgLUQ8b2N0YWw+OlxuIgorIlxuIgorIiBOdW1iZXIgIFJlZi4gaW4gc291cmNlICAgRGVzY3JpcHRpb25cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjMxMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiRGVidWdnaW5nIG9wdGlvbnMgY2FuIGJlIG1peGVkIHVzaW5nIGJpdHdpc2Utb3IuXG4iCisiTm90ZSB0aGF0IHRoZSBtZWFuaW5ncyBhbmQgdmFsdWVzIGFyZSBzdWJqZWN0IHRvIGNoYW5nZS5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjMxOQorbXNnaWQgIi0tZGVidWcgcmVxdWlyZXMgYW4gb2N0YWwgYXJndW1lbnQiCittc2dzdHIgIi0tZGVidWc6IGFyZ3VtZW50dSB6b3J0eml0YXIgYmF0IGJlaGFyIGR1IgorCisjOiBzcmMvbWFpbi5jOjM0OAorIywgYy1mb3JtYXQKK21zZ2lkICJudWxsIHBhY2thZ2UgbmFtZSBpbiAtLWlnbm9yZS1kZXBlbmRzIGNvbW1hLXNlcGFyYXRlZCBsaXN0IGAlLjI1MHMnIgorbXNnc3RyICIiCisicGFrZXRlLWl6ZW4gbnVsdWEgLS1pZ25vcmUtZGVwZW5kcyBrb21heiBiZXJlaXppdGFrbyAnJS4yNTBzJyB6ZXJyZW5kYW4iCisKKyM6IHNyYy9tYWluLmM6MzU0CisjLCBjLWZvcm1hdAorbXNnaWQgIi0taWdub3JlLWRlcGVuZHMgcmVxdWlyZXMgYSBsZWdhbCBwYWNrYWdlIG5hbWUuIGAlLjI1MHMnIGlzIG5vdDsgJXMiCittc2dzdHIgIi0taWdub3JlLWRlcGVuZHM6IGxlZ2V6a28gcGFrZXRlIGl6ZW5hIGJlaGFyIGR1LiAnJS4yNTBzJyBleiBkYTsgJXMiCisKKyM6IHNyYy9tYWluLmM6MzcxIHNyYy9tYWluLmM6MzgxIHNyYy9tYWluLmM6NjQ5IGRwa2ctc3BsaXQvbWFpbi5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGludGVnZXIgZm9yIC0tJXM6IGAlLjI1MHMnIgorbXNnc3RyICJiYWxpb2dhYmVrbyBvc29rb2EgLS0lczogJyUuMjUwcyciCisKKyM6IHNyYy9tYWluLmM6NDM4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGV4ZWN1dGluZyBob29rICclcycsIGV4aXQgY29kZSAlZCIKK21zZ3N0ciAiZXJyb3JlYSAnJXMnIGxvdHVyYSBleGVrdXRhdHplYW4sIGlydGVlcmFrbyAlZCBrb2RlYSIKKworIzogc3JjL21haW4uYzo0NjUKKyMsIGZ1enp5CisjfCBtc2dpZCAic3RhdHVzIgorbXNnaWQgInN0YXR1cyBsb2dnZXIiCittc2dzdHIgImVnb2VyYSIKKworIzogc3JjL21haW4uYzo0ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzIGZvcmNpbmcgb3B0aW9ucyAtIGNvbnRyb2wgYmVoYXZpb3VyIHdoZW4gcHJvYmxlbXMgZm91bmQ6XG4iCisiICB3YXJuIGJ1dCBjb250aW51ZTogIC0tZm9yY2UtPHRoaW5nPiw8dGhpbmc+LC4uLlxuIgorIiAgc3RvcCB3aXRoIGVycm9yOiAgICAtLXJlZnVzZS08dGhpbmc+LDx0aGluZz4sLi4uIHwgLS1uby1mb3JjZS08dGhpbmc+LC4uLlxuIgorIiBGb3JjaW5nIHRoaW5nczpcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjQ5MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiV0FSTklORyAtIHVzZSBvZiBvcHRpb25zIG1hcmtlZCBbIV0gY2FuIHNlcmlvdXNseSBkYW1hZ2UgeW91ciBpbnN0YWxsYXRpb24uXG4iCisiRm9yY2luZyBvcHRpb25zIG1hcmtlZCBbKl0gYXJlIGVuYWJsZWQgYnkgZGVmYXVsdC5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjUwNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGZvcmNlL3JlZnVzZSBvcHRpb24gYCUuKnMnIgorbXNnc3RyICInJS4qcycgYmVoYXJ0emVrby91a28gZWdpdGVrbyBhdWtlcmEgZXplemFndW5hIgorCisjOiBzcmMvbWFpbi5jOjUxMworIywgYy1mb3JtYXQKK21zZ2lkICJvYnNvbGV0ZSBmb3JjZS9yZWZ1c2Ugb3B0aW9uICclcydcbiIKK21zZ3N0ciAiJyVzJyBiZWhhcnR6ZWtvL3VrbyBlZ2l0ZWtvIGF1a2VyYSB6YWhhcmtpdHVhXG4iCisKKyM6IHNyYy9tYWluLmM6NjQzCittc2dpZCAiLS1jb21tYW5kLWZkIHRha2VzIG9uZSBhcmd1bWVudCwgbm90IHplcm8iCittc2dzdHIgIi0tY29tbWFuZC1mZDogYXJndW1lbnR1IGJhdCBoYXJ0emVuIGR1LCBleiAwIgorCisjOiBzcmMvbWFpbi5jOjY0NQorbXNnaWQgIi0tY29tbWFuZC1mZCBvbmx5IHRha2VzIG9uZSBhcmd1bWVudCIKK21zZ3N0ciAiLS1jb21tYW5kLWZkOiBhcmd1bWVudHUgYmF0IGJha2FycmlrIGhhcnR6ZW4gZHUiCisKKyM6IHNyYy9tYWluLmM6NjUxCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkbid0IG9wZW4gYCVpJyBmb3Igc3RyZWFtIgorbXNnc3RyICJlemluIGl6YW4gZGEgJyVpJyBpcmVraSBrb3Jyb250ZXJha28iCisKKyM6IHNyYy9tYWluLmM6Njc2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW9mIGJlZm9yZSBlbmQgb2YgbGluZSAlZCIKK21zZ3N0ciAidXN0ZWthYmVrbyBlb2YgJWQgbGVycm9hIGFtYWl0dSBhdXJyZXRpayIKKworIzogc3JjL21haW4uYzo3MTkgc3JjL21haW4uYzo3NDEgc3JjL3F1ZXJ5Y21kLmM6NjkyIHNyYy9zdGF0Y21kLmM6Mzc5CisjOiBkcGtnLWRlYi9tYWluLmM6MjAxIGRwa2ctc3BsaXQvbWFpbi5jOjE2MworbXNnaWQgIm5lZWQgYW4gYWN0aW9uIG9wdGlvbiIKK21zZ3N0ciAiZWtpbnR6YS1hdWtlcmEgYmF0IGJlaGFyIGRhIgorCisjOiBzcmMvcGFja2FnZXMuYzoxMTMKK21zZ2lkICIiCisieW91IG11c3Qgc3BlY2lmeSBwYWNrYWdlcyBieSB0aGVpciBvd24gbmFtZXMsIG5vdCBieSBxdW90aW5nIHRoZSBuYW1lcyBvZiAiCisidGhlIGZpbGVzIHRoZXkgY29tZSBpbiIKK21zZ3N0ciAiIgorInBha2V0ZWVuIGl6ZW5hayB6ZWhhenR1IGJlaGFyIGRpdHV6dSwgZXogcGFrZXRlZW4gYmFycnVrbyBmaXR4YXRlZ2llbiBpemVuYWsiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjEzMworIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIC0tcGVuZGluZyBkb2VzIG5vdCB0YWtlIGFueSBub24tb3B0aW9uIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS0lcyAtLXBlbmRpbmc6IGV6IGR1IGhhcnR6ZW4gYXVrZXJha29hIGV6IGRlbiBhcmd1bWVudHVyaWsiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjEzOCBzcmMvcXVlcnljbWQuYzozNzUgc3JjL3F1ZXJ5Y21kLmM6NTY1CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYXQgbGVhc3Qgb25lIHBhY2thZ2UgbmFtZSBhcmd1bWVudCIKK21zZ3N0ciAiLS0lczogcGFrZXRlLWl6ZW5hcmVuIGFyZ3VtZW50dSBiYXQgYmVoYXIgZHUgZ3V0eGllbmV6IgorCisjOiBzcmMvcGFja2FnZXMuYzoxNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSAlcyBsaXN0ZWQgbW9yZSB0aGFuIG9uY2UsIG9ubHkgcHJvY2Vzc2luZyBvbmNlLlxuIgorbXNnc3RyICIiCisiJXMgcGFrZXRlYSBiZWhpbiBiYWlubyBnZWhpYWdvdGFuIGF6YWx0emVuIGRhLCBiYWluYSBiZWhpbiBiYWthcnJpayAiCisicHJvemVzYXR1a28gZGEuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjE4MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiTW9yZSB0aGFuIG9uZSBjb3B5IG9mIHBhY2thZ2UgJXMgaGFzIGJlZW4gdW5wYWNrZWRcbiIKKyIgaW4gdGhpcyBydW4gISAgT25seSBjb25maWd1cmluZyBpdCBvbmNlLlxuIgorbXNnc3RyICIiCisiJXMgcGFrZXRlYXJlbiBrb3BpYSBiYXQgYmFpbm8gZ2VoaWFnbyBkZXNrb25wcmltaXR1IGRhXG4iCisiIGV4ZWt1emlvIGhvbmV0YW4hICBCZWhpbiBiYWthcnJpayBrb25maWd1cmF0dWtvIGRhLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInBhY2thZ2UgJS4yNTBzIGlzIG5vdCByZWFkeSBmb3IgdHJpZ2dlciBwcm9jZXNzaW5nXG4iCisiIChjdXJyZW50IHN0YXR1cyBgJS4yNTBzJyB3aXRoIG5vIHBlbmRpbmcgdHJpZ2dlcnMpIgorbXNnc3RyICIiCisiJS4yNTBzIHBha2V0ZWEgZXogZGFnbyBwcmVzdCBhYmlhcmF6bGVhcmVuIHByb3plc3VyYWtvXG4iCisiICh1bmVrbyBlZ29lcmE6ICclLjI1MHMnIGV0YSBleiBkYSBhYmlhcmF6bGVyaWsgZmFsdGEpIgorCisjOiBzcmMvcGFja2FnZXMuYzozMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIHdoaWNoIHByb3ZpZGVzICVzIGlzIHRvIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiAgJXMgcGFrZXRlYSwgJXMgaG9ybml0emVuIGR1ZW5hLCBrZW5kdSBlZ2luZ28gZGEuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjMzNworIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgaXMgdG8gYmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiICAlcyBwYWtldGVhIGtlbmR1IGVnaW5nbyBkYS5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MzU0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgVmVyc2lvbiBvZiAlcyBvbiBzeXN0ZW0gaXMgJXMuXG4iCittc2dzdHIgIiAgJXMocillbiBzaXN0ZW1ha28gYmVydHNpb2EgJXMgZGEuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjM3NgorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgd2hpY2ggcHJvdmlkZXMgJXMgYXdhaXRzIHRyaWdnZXIgcHJvY2Vzc2luZy5cbiIKK21zZ3N0ciAiIgorIiAgJXMgcGFrZXRlYSwgJXMgaG9ybml0emVuIGR1ZW5hLCBhYmlhcmF6bGVhcmVuIHByb3plc3VhcmVuIHphaW4gZGFnby5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MzgwCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyBhd2FpdHMgdHJpZ2dlciBwcm9jZXNzaW5nLlxuIgorbXNnc3RyICIgICVzIHBha2V0ZWEgYWJpYXJhemxlYXJlbiBwcm96ZXN1YXJlbiB6YWluIGRhZ28uXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQxMAorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiBhbHNvIGNvbmZpZ3VyaW5nIGAlcycgKHJlcXVpcmVkIGJ5IGAlcycpXG4iCittc2dzdHIgImRwa2c6ICclcycgZXJlIGtvbmZpZ3VyYXR6ZW4gYXJpIGRhIChob25layBiZWhhciBkdTogJyVzJylcbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDE4CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyB3aGljaCBwcm92aWRlcyAlcyBpcyBub3QgY29uZmlndXJlZCB5ZXQuXG4iCittc2dzdHIgIiAgJXMgcGFrZXRlYSwgJXMgaG9ybml0emVuIGR1ZW5hLCBvcmFpbmRpayBleiBkYWdvIGtvbmZpZ3VyYXR1dGEuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQyMQorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgaXMgbm90IGNvbmZpZ3VyZWQgeWV0LlxuIgorbXNnc3RyICIgICVzIHBha2V0ZWEgZXogZGFnbyBrb25maWd1cmF0dXRhIG9yYWluZGlrLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIHdoaWNoIHByb3ZpZGVzICVzIGlzIG5vdCBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgJXMgcGFrZXRlYSwgJXMgaG9ybml0emVuIGR1ZW5hLCBleiBkYWdvIGluc3RhbGF0dXRhLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIGlzIG5vdCBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgJXMgcGFrZXRlYSBleiBkYWdvIGluc3RhbGF0dXRhLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICVzICglcykgYnJlYWtzICVzIGFuZCBpcyAlcy5cbiIKK21zZ3N0ciAiICVzICglcykoZSlrICVzIGFwdXJ0emVuIGR1IGV0YSAlcyBkYS5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDc4CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJXMgKCVzKSBwcm92aWRlcyAlcy5cbiIKK21zZ3N0ciAiICAlcyAoJXMpKGUpayAlcyBob3JuaXR6ZW4gZHUuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQ4MgorIywgYy1mb3JtYXQKK21zZ2lkICIgIFZlcnNpb24gb2YgJXMgdG8gYmUgY29uZmlndXJlZCBpcyAlcy5cbiIKK21zZ3N0ciAiICBLb25maWd1cmF0dWtvIGRlbiAlcyhyKWVuIGJlcnRzaW9hICVzIGRhLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo1OTYKK21zZ2lkICIgZGVwZW5kcyBvbiAiCittc2dzdHIgIiBob25lbiBtZW5kZWtvYSBkYTogIgorCisjOiBzcmMvcGFja2FnZXMuYzo2MDIKK21zZ2lkICI7IGhvd2V2ZXI6XG4iCittc2dzdHIgIjsgbm9sYW5haGkgZXJlOlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjcxCisjLCBjLWZvcm1hdAorbXNnaWQgIi4uLi8lcyIKK21zZ3N0ciAiLi4uLyVzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjkxCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGVuc3VyaW5nIGAlLjI1MHMnIGRvZXNuJ3QgZXhpc3QiCittc2dzdHIgImVycm9yZWEgJyUuMjUwcycgZXogZGFnb2VsYSB6aXVydGF0emVhbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5OQorbXNnaWQgInNwbGl0IHBhY2thZ2UgcmVhc3NlbWJseSIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEwOAorbXNnaWQgInJlYXNzZW1ibGVkIHBhY2thZ2UgZmlsZSIKK21zZ3N0ciAicGFrZXRlLWZpdHhhdGVnaWEgYmVycml6IG11bnRhdHUgZGEiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTMzCisjLCBjLWZvcm1hdAorbXNnaWQgIkF1dGhlbnRpY2F0aW5nICVzIC4uLlxuIgorbXNnc3RyICIlcyBhdXRlbnRpZmlrYXR6ZW4uLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxMzkKK21zZ2lkICJwYWNrYWdlIHNpZ25hdHVyZSB2ZXJpZmljYXRpb24iCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxNDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiVmVyaWZpY2F0aW9uIG9uIHBhY2thZ2UgJXMgZmFpbGVkISIKK21zZ3N0ciAiSHV0cyBlZ2luIGR1ICVzIHBha2V0ZWEgZWdpYXp0YXR6ZWFuISIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlZlcmlmaWNhdGlvbiBvbiBwYWNrYWdlICVzIGZhaWxlZCxcbiIKKyJidXQgaW5zdGFsbGluZyBhbnl3YXkgYXMgeW91IHJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiIgorIkh1dHMgZWdpbiBkdSAlcyBwYWtldGVhIGVnaWF6dGF0emVhbixcbiIKKyJiYWluYSBlc2thdHUgYmV6YWxhIGluc3RhbGF0dWtvIGRhLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICJwYXNzZWRcbiIKK21zZ3N0ciAiZ2FpbmRpdHV0YVxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE2NSBkcGtnLWRlYi9pbmZvLmM6ODEKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHRlbXBvcmFyeSBkaXJlY3RvcnkiCittc2dzdHIgImV6aW4gZGEgYWxkaSBiYXRlcmFrbyBkaXJla3RvcmlvYSBzb3J0dSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlcyBoYXMgdG9vIG1hbnkgQ29uZmxpY3RzL1JlcGxhY2VzIHBhaXJzIgorbXNnc3RyICIlcyBwYWtldGVhayBnYXRhemthL29yZGV6dGUgYmlrb3RlIGdlaGllZ2kgZGl0dSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyNDMKKyMsIGMtZm9ybWF0Cittc2dpZCAib2xkIHZlcnNpb24gb2YgcGFja2FnZSBoYXMgb3Zlcmx5LWxvbmcgaW5mbyBmaWxlIG5hbWUgc3RhcnRpbmcgYCUuMjUwcyciCittc2dzdHIgIiIKKyJwYWtldGUtYmVydHNpbyB6YWhhcnJla28gaW5mLiBmaXR4YXRlZ2lhayBpemVuIGx1emVlZ2lhIGR1OyclLjI1MHMnIGhhc3RlbiBkYSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyODEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBvYnNvbGV0ZSBpbmZvIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImV6aW4gZGEgJyUuMjUwcycgaW5mb3JtYXppby1maXR4YXRlZ2kgemFoYXJraXR1YSBrZW5kdSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyODYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgKHN1cHBvc2VkKSBuZXcgaW5mbyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJlemluIGRhICclLjI1MHMnICh1c3RlemtvKSBpbmZvcm1hemlvLWZpdHhhdGVnaSBiZXJyaWEgaW5zdGFsYXR1IgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjI5NgorbXNnaWQgInVuYWJsZSB0byBvcGVuIHRlbXAgY29udHJvbCBkaXJlY3RvcnkiCittc2dzdHIgImV6aW4gZGEgYWxkaSBiYXRlcmFrbyBrb250cm9sZWtvIGRpcmVrdG9yaW9hIGlyZWtpIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMwNworIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGNvbnRhaW5zIG92ZXJseS1sb25nIGNvbnRyb2wgaW5mbyBmaWxlIG5hbWUgKHN0YXJ0aW5nIGAlLjUwcycpIgorbXNnc3RyICIiCisicGFrZXRlYWsga29udHJvbGVrbyBpbmZvcm1hemlvLWZpdHhhdGVnaSBpemVuIGx1emVlZ2lhIGRhdWthICgnJS41MHMnIGhhc3RlbiAiCisiZGEpIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMxNAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGNvbnRyb2wgaW5mbyBjb250YWluZWQgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICJwYWtldGVhcmVuIGtvbnRyb2wgaW5mb3JtYXppb2FrICclLjI1MHMnIGRpcmVrdG9yaW9hIHpldWthbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMTYKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBjb250cm9sIGluZm8gcm1kaXIgb2YgYCUuMjUwcycgZGlkbid0IHNheSBub3QgYSBkaXIiCittc2dzdHIgIiIKKyInJS4yNTBzJyBybWRpciBwYWtldGVhcmVuIGtvbnRyb2wtaW5mb3JtYXppb2FrIGV6IGR1IGVzYXRlbiBkaXJla3RvcmlvIGJhdCAiCisiZXogZGVuaWsiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzI2CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgJXMgY29udGFpbmVkIGxpc3QgYXMgaW5mbyBmaWxlIgorbXNnc3RyICIlcyBwYWtldGVhayB6ZXJyZW5kYSBpbmZvcm1hemlvLWZpdHhhdGVnaSBnaXNhIHpldWthbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IGluZm8gZmlsZSBgJS4yNTBzJyBhcyBgJS4yNTBzJyIKK21zZ3N0ciAiZXppbiBkYSAnJS4yNTBzJyBpbmZvcm1hemlvIGZpdHhhdGVnaSBiZXJyaWEgJyUuMjUwcycgZ2lzYSBpbnN0YWxhdHUiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzQ5IHNyYy9yZW1vdmUuYzoxOTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSBjb250cm9sIGluZm8gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiZXppbiBkYSAnJS4yNTBzJyBrb250cm9sZWtvIGluZm9ybWF6aW8tZml0eGF0ZWdpYSBlemFiYXR1IgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjQxMQorbXNnaWQgImNhbm5vdCBhY2Nlc3MgYXJjaGl2ZSIKK21zZ3N0ciAiZXppbiBkYSBzYXJ0dSBhcnR4aWJvYW4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDMzCisjLCBmdXp6eQorI3wgbXNnaWQgImNvbnRyb2wgaW5mb3JtYXRpb24gbGVuZ3RoIgorbXNnaWQgInBhY2thZ2UgY29udHJvbCBpbmZvcm1hdGlvbiBleHRyYWN0aW9uIgorbXNnc3RyICJrb250cm9sLWluZm9ybWF6aW9hcmVuIGx1emVyYSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo0NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVjb3JkZWQgaW5mbyBhYm91dCAlcyBmcm9tICVzLlxuIgorbXNnc3RyICIlcyhyKWkgYnVydXprbyBpbmZvcm1hemlvYSBlcnJlZ2lzdHJhdHUgZGEgJXMoZSl0aWsuXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDY4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgYXJjaGl0ZWN0dXJlICglcykgZG9lcyBub3QgbWF0Y2ggc3lzdGVtICglcykiCittc2dzdHIgInBha2V0ZWFyZW4gYXJraXRla3R1cmEgKCVzKSBleiBkYXRvciBiYXQgc2lzdGVtYXJla2luICglcykiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTIzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiByZWdhcmRpbmcgJXMgY29udGFpbmluZyAlcywgcHJlLWRlcGVuZGVuY3kgcHJvYmxlbTpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6ICUyJHMgZGF1a2FuICUxJHM6IGF1cnJlbWVuZGVrb3Rhc3VuIGFyYXpvYTpcbiIKKyIlMyRzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjUyNgorIywgYy1mb3JtYXQKK21zZ2lkICJwcmUtZGVwZW5kZW5jeSBwcm9ibGVtIC0gbm90IGluc3RhbGxpbmcgJS4yNTBzIgorbXNnc3RyICJhdXJyZW1lbmRla290YXN1biBhcmF6b2E6ICUuMjUwcyBleiBkYSBpbnN0YWxhdHVrbyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1MjcKK21zZ2lkICJpZ25vcmluZyBwcmUtZGVwZW5kZW5jeSBwcm9ibGVtISIKK21zZ3N0ciAiYXVycmVtZW5kZWtvdGFzdW4gYXJhem9hcmkgZXppa3VzaSBlZ2luZ28gemFpbyEiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTQzCisjLCBjLWZvcm1hdAorbXNnaWQgIlByZXBhcmluZyB0byByZXBsYWNlICVzICVzICh1c2luZyAlcykgLi4uXG4iCittc2dzdHIgIiVzICVzIG9yZGV6dGVrbyBwcmVzdGF0emVuICglcyBlcmFiaWxpeikgLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIlVucGFja2luZyAlcyAoZnJvbSAlcykgLi4uXG4iCittc2dzdHIgIiVzICglcykgZGVza29ucHJpbWl0emVuLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTgwCisjLCBjLWZvcm1hdAorbXNnaWQgIm5hbWUgb2YgY29uZmZpbGUgKHN0YXJ0aW5nIGAlLjI1MHMnKSBpcyB0b28gbG9uZyAoPiVkIGNoYXJhY3RlcnMpIgorbXNnc3RyICIiCisia29uZi4gZml0eGF0ZWdpYXJlbiBpemVuYSAoJyUuMjUwcycgaGFzdGVuIGRlbmEpIGx1emVlZ2lhIGRhICg+JWQga2FyYWt0ZXJlKSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2MzMgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVhZCBlcnJvciBpbiAlLjI1MHMiCittc2dzdHIgIiUuMjUwczogaXJha3Vya2V0YS1lcnJvcmVhIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjYzNQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nICUuMjUwcyIKK21zZ3N0ciAiZXJyb3JlYSAlLjI1MHMgaXh0ZWFuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjYzNworIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciB0cnlpbmcgdG8gb3BlbiAlLjI1MHMiCittc2dzdHIgImVycm9yZWEgJS4yNTBzIGlyZWtpdHplbiBzYWlhdHplYW4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6Njc4CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlLWNvbmZpZ3VyaW5nICVzLCB0byBhbGxvdyByZW1vdmFsIG9mICVzIC4uLlxuIgorbXNnc3RyICIlcyBrb25maWd1cmF6aW9hIGtlbnR6ZW4sICVzIGtlbmR1IGFoYWwgaXphdGVrby4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjY4MQorIywgYy1mb3JtYXQKK21zZ2lkICJEZS1jb25maWd1cmluZyAlcyAuLi5cbiIKK21zZ3N0ciAiJXMga29uZmlndXJhemlvYSBrZW50emVuLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NzU1CisjLCBjLWZvcm1hdAorbXNnaWQgIlVucGFja2luZyByZXBsYWNlbWVudCAlLjI1MHMgLi4uXG4iCittc2dzdHIgIiUuMjUwcyBvcmRlenBlbmEgZGVza29ucHJpbWl0emVuLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6ODQwCisjLCBmdXp6eQorI3wgbXNnaWQgImRwa2ctZGViIGZpZWxkIGV4dHJhY3Rpb24iCittc2dpZCAicGFja2FnZSBmaWxlc3lzdGVtIGFyY2hpdmUgZXh0cmFjdGlvbiIKK21zZ3N0ciAiZHBrZy1kZWIgZXJlbXVhcmVuIGVyYXVza2V0YSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NTQKK21zZ2lkICJlcnJvciByZWFkaW5nIGRwa2ctZGViIHRhciBvdXRwdXQiCittc2dzdHIgImVycm9yZWEgZHBrZy1kZWIgdGFyIGlydGVlcmEgaXJha3VydHplYW4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6ODU2Cittc2dpZCAiY29ycnVwdGVkIGZpbGVzeXN0ZW0gdGFyZmlsZSAtIGNvcnJ1cHRlZCBwYWNrYWdlIGFyY2hpdmUiCittc2dzdHIgIiIKKyJmaXR4YXRlZ2ktc2lzdGVtYXJlbiB0YXIgZml0eGF0ZWdpYSBob25kYXR1IGRhIC0gcGFrZXRlYXJlbiBhcnR4aWJvYSAiCisiaG9uZGF0dXRhIGRhZ28iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6ODU5Cittc2dpZCAiZHBrZy1kZWI6IHphcCBwb3NzaWJsZSB0cmFpbGluZyB6ZXJvcyIKK21zZ3N0ciAiZHBrZy1kZWI6IGtlbmR1IGFtYWllcmFrbyB6ZXJvIHBvc2libGVhayIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5MTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHN0YXQgb2xkIGZpbGUgJyUuMjUwcycgc28gbm90IGRlbGV0aW5nIGl0OiAlcyIKK21zZ3N0ciAiIgorImV6aW4gaXphbiBkYSAnJS4yNTBzJyBmaXR4YXRlZ2kgemFoYXJyYXJlbiBlZ29lcmEgZXNrdXJhdHUsIGJlcmF6IGV6IGRhICIKKyJlemFiYXR1a286ICVzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjkyNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGVsZXRlIG9sZCBkaXJlY3RvcnkgJyUuMjUwcyc6ICVzIgorbXNnc3RyICJlemluIGRhICclLjI1MHMnIGRpcmVrdG9yaW8gemFoYXJyYSBlemFiYXR1OiAlcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAib2xkIGNvbmZmaWxlICclLjI1MHMnIHdhcyBhbiBlbXB0eSBkaXJlY3RvcnkgKGFuZCBoYXMgbm93IGJlZW4gZGVsZXRlZCkiCittc2dzdHIgIiIKKyInJS4yNTBzJyBrb25mLiBmaXR4YXRlZ2kgemFoYXJyYSBkaXJla3RvcmlvIGh1dHMgYmF0IGRhIChldGEgZXphYmF0dSBlZ2luIGRhKSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgb3RoZXIgbmV3IGZpbGUgYCUuMjUwcyciCittc2dzdHIgImV6aW4gZGEgYmVzdGUgJyUuMjUwcycgZml0eGF0ZWdpYXJlbiBlZ29lcmEgZXNrdXJhdHUiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTg2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJvbGQgZmlsZSAnJS4yNTBzJyBpcyB0aGUgc2FtZSBhcyBzZXZlcmFsIG5ldyBmaWxlcyEgKGJvdGggJyUuMjUwcycgYW5kICIKKyInJS4yNTBzJykiCittc2dzdHIgIiIKKyInJS4yNTBzJyBmaXR4YXRlZ2kgemFoYXJyYSB6ZW5iYWl0IGZpdHhhdGVnaSBiZXJyaWVuIGJlcmRpbmEgZGEgKGJhaSAiCisiJyUuMjUwcycgZXRhIGJhaSAnJS4yNTBzJykiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTAyNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2VjdXJlbHkgcmVtb3ZlIG9sZCBmaWxlICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiZXppbiBkYSAnJS4yNTBzJyBmaXR4YXRlZ2kgemFoYXJyYSBzZWd1cnRhc3VuZXoga2VuZHU6ICVzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEyMDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiKE5vdGluZyBkaXNhcHBlYXJhbmNlIG9mICVzLCB3aGljaCBoYXMgYmVlbiBjb21wbGV0ZWx5IHJlcGxhY2VkLilcbiIKK21zZ3N0ciAiKEtvbnR1YW4gaGFydHUgJXMgZGVzYWdlcnR1IGRlbGEsIGd1enRpeiBvcmRlenR1IGRlbGFrby4pXG4iCisKKyMuIFRSQU5TTEFUT1JTOiBUaGlzIGlzIHRoZSBoZWFkZXIgdGhhdCBhcHBlYXJzIG9uICdkcGtnLXF1ZXJ5IC1sJy4gVGhlCisjLiAqIHN0cmluZyBzaG91bGQgcmVtYWluIHVuZGVyIDgwIGNoYXJhY3RlcnMuIFRoZSB1cHBlcmNhc2UgbGV0dGVycyBpbgorIy4gKiB0aGUgc3RhdGUgdmFsdWVzIGRlbm90ZSB0aGUgYWJicmV2aWF0ZWQgbGV0dGVyIHRoYXQgd2lsbCBhcHBlYXIgb24KKyMuICogdGhlIGZpcnN0IHRocmVlIGNvbHVtbnMsIHdoaWNoIHNob3VsZCBpZGVhbGx5IG1hdGNoIHRoZSBFbmdsaXNoIG9uZQorIy4gKiAoZS5nLiBSZW1vdmUg4oaSIHN1cFJpbWVpeCksIHNlZSBkcGtnLXF1ZXJ5KDEpIGZvciBmdXJ0aGVyIGRldGFpbHMuIFRoZQorIy4gKiB0cmFuc2xhdGVkIG1lc3NhZ2UgY2FuIHVzZSBhZGRpdGlvbmFsIGxpbmVzIGlmIG5lZWRlZC4KKyM6IHNyYy9xdWVyeWNtZC5jOjE0OQorbXNnaWQgIiIKKyJEZXNpcmVkPVVua25vd24vSW5zdGFsbC9SZW1vdmUvUHVyZ2UvSG9sZFxuIgorInwgU3RhdHVzPU5vdC9JbnN0L0NvbmYtZmlsZXMvVW5wYWNrZWQvaGFsRi1jb25mL0hhbGYtaW5zdC90cmlnLWFXYWl0L1RyaWctIgorInBlbmRcbiIKKyJ8LyBFcnI/PShub25lKS9SZWluc3QtcmVxdWlyZWQgKFN0YXR1cyxFcnI6IHVwcGVyY2FzZT1iYWQpXG4iCittc2dzdHIgIiIKKyJOYWhpYT1Vbmtub3duL0luc3RhbGwvUmVtb3ZlL1B1cmdlL0hvbGRcbiIKKyJ8IEVnb2VyYT1Ob3QvSW5zdC9DZmctZmlsZXMvVW5wYWNrZWQvRmFpbGVkLWNmZy9IYWxmLWluc3QvdHJpZy1hV2FpdC9UcmlnLSIKKyJwZW5kXG4iCisifC8gRXJyPz0oYmF0IGVyZSBleikvSG9sZC9SZWluc3QtcmVxdWlyZWQvWD1ib3RoLXByb2JsZW1zIChTdGF0dXMsRXJyOiAiCisidXBwZXJjYXNlPWJhZClcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MTUzCittc2dpZCAiTmFtZSIKK21zZ3N0ciAiSXplbmEiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjE1MworbXNnaWQgIlZlcnNpb24iCittc2dzdHIgIkJlcnRzaW9hIgorCisjOiBzcmMvcXVlcnljbWQuYzoxNTQKK21zZ2lkICJEZXNjcmlwdGlvbiIKK21zZ3N0ciAiQXphbHBlbmEiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI0NiBzcmMvcXVlcnljbWQuYzo1MTEgc3JjL3NlbGVjdC5jOjc1CisjLCBjLWZvcm1hdAorbXNnaWQgIk5vIHBhY2thZ2VzIGZvdW5kIG1hdGNoaW5nICVzLlxuIgorbXNnc3RyICJFeiBkYWdvIGhvbmVraW4gYmF0IGRhdG9ycmVuIHBha2V0ZXJpazogJXMuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI3MworIywgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnNpb24gYnkgJXMgZnJvbTogJXNcbiIKK21zZ3N0ciAiJXMoZSlrIGhlbWVuZGlrIGRlc2JpZGVyYXR1dGE6ICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI3NQorIywgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnNpb24gYnkgJXMgdG86ICVzXG4iCittc2dzdHIgIiVzKGUpayBob25hIGRlc2JpZGVyYXR1dGE6ICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI3OAorIywgYy1mb3JtYXQKK21zZ2lkICJsb2NhbCBkaXZlcnNpb24gZnJvbTogJXNcbiIKK21zZ3N0ciAiZGVzYmlkZXJhdHplIGxva2FsYSBoZW1lbmRpazogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6Mjc5CisjLCBjLWZvcm1hdAorbXNnaWQgImxvY2FsIGRpdmVyc2lvbiB0bzogJXNcbiIKK21zZ3N0ciAibG9rYWxraSBob25hIGRlc2JpZGVyYXR1dGE6ICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjMwOQorbXNnaWQgIi0tc2VhcmNoIG5lZWRzIGF0IGxlYXN0IG9uZSBmaWxlIG5hbWUgcGF0dGVybiBhcmd1bWVudCIKK21zZ3N0ciAiLS1zZWFyY2g6IGZpdHhhdGVnaS1pemVuZWtvIGVyZWR1LWFyZ3VtZW50dSBiYXQgYmVoYXIgZHUgZ3V0eGllbmV6IgorCisjOiBzcmMvcXVlcnljbWQuYzozNTAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIk5vIHBhY2thZ2VzIGZvdW5kIG1hdGNoaW5nICVzLlxuIgorbXNnaWQgIiVzOiBubyBwYXRoIGZvdW5kIG1hdGNoaW5nIHBhdHRlcm4gJXMuXG4iCittc2dzdHIgIkV6IGRhZ28gaG9uZWtpbiBiYXQgZGF0b3JyZW4gcGFrZXRlcmlrOiAlcy5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MzkzCisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgYCVzJyBpcyBub3QgaW5zdGFsbGVkIGFuZCBubyBpbmZvIGlzIGF2YWlsYWJsZS5cbiIKK21zZ3N0ciAiJyVzJyBwYWtldGVhIGV6IGRhZ28gaW5zdGFsYXR1dGEsIGV0YSBleiBkYWdvIGluZi4gZXJhYmlsZ2FycmlyaWsuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQwMQorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlIGAlcycgaXMgbm90IGF2YWlsYWJsZS5cbiIKK21zZ3N0ciAiJyVzJyBwYWtldGVhIGV6IGRhZ28gZXJhYmlsZ2FycmkuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQxMCBzcmMvcXVlcnljbWQuYzo1ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSBgJXMnIGlzIG5vdCBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiclcycgcGFrZXRlYSBleiBkYWdvIGluc3RhbGF0dXRhLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSBgJXMnIGRvZXMgbm90IGNvbnRhaW4gYW55IGZpbGVzICghKVxuIgorbXNnc3RyICInJXMnIHBha2V0ZWFrIGV6IGRhdWthIGZpdHhhdGVnaXJpayAoISlcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDI1CisjLCBjLWZvcm1hdAorbXNnaWQgImxvY2FsbHkgZGl2ZXJ0ZWQgdG86ICVzXG4iCittc2dzdHIgImxva2Fsa2kgaG9uYSBkZXNiaWRlcmF0dXRhOiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBkaXZlcnRzIG90aGVycyB0bzogJXNcbiIKK21zZ3N0ciAicGFrZXRlYWsgYmVzdGUgYmF0enVrIGhvbmEgZGVzYmlkZXJhdHplbiBkaXR1OiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJ0ZWQgYnkgJXMgdG86ICVzXG4iCittc2dzdHIgIiVzKGUpayBob25hIGRlc2JpZGVyYXR1dGE6ICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQ1MgorbXNnaWQgIiIKKyJVc2UgZHBrZyAtLWluZm8gKD0gZHBrZy1kZWIgLS1pbmZvKSB0byBleGFtaW5lIGFyY2hpdmUgZmlsZXMsXG4iCisiYW5kIGRwa2cgLS1jb250ZW50cyAoPSBkcGtnLWRlYiAtLWNvbnRlbnRzKSB0byBsaXN0IHRoZWlyIGNvbnRlbnRzLlxuIgorbXNnc3RyICIiCisiRXJhYmlsaSBkcGtnIC0taW5mbyAoPSBkcGtnLWRlYiAtLWluZm8pIGFydHhpYm8tZml0eGF0ZWdpYWsgYXp0ZXJ0emVrbyxcbiIKKyJldGEgZHBrZyAtLWNvbnRlbnRzICg9IGRwa2ctZGViIC0tY29udGVudHMpIGVkdWtpYSB6ZXJyZW5kYXR6ZWtvLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo1NzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyB0YWtlcyBhdCBtb3N0IHR3byBhcmd1bWVudHMiCittc2dzdHIgIi0tJXM6IGdlaGllbmV6IGJpIGFyZ3VtZW50dSBoYXJ0emVuIGRpdHUiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjU3OAorIywgYy1mb3JtYXQKK21zZ2lkICJjb250cm9sIGZpbGUgY29udGFpbnMgJWMiCittc2dzdHIgImtvbnRyb2wtZml0eGF0ZWdpYWsgaGF1IGRhdWthOiAlYyIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjAwCisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiAlcyBwYWNrYWdlIG1hbmFnZW1lbnQgcHJvZ3JhbSBxdWVyeSB0b29sIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkRlYmlhbiAlcyBwYWtldGUta3VkZWFrZXRhcmFrbyBwcm9ncmFtYXJlbiAlc2JlcnRzaW9hLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo2MTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJDb21tYW5kczpcbiIKKyN8ICIgIC1zfC0tc3RhdHVzIDxwYWNrYWdlPiAuLi4gICAgICAgIERpc3BsYXkgcGFja2FnZSBzdGF0dXMgZGV0YWlscy5cbiIKKyN8ICIgIC1wfC0tcHJpbnQtYXZhaWwgPHBhY2thZ2U+IC4uLiAgIERpc3BsYXkgYXZhaWxhYmxlIHZlcnNpb24gZGV0YWlscy5cbiIKKyN8ICIgIC1MfC0tbGlzdGZpbGVzIDxwYWNrYWdlPiAuLi4gICAgIExpc3QgZmlsZXMgYG93bmVkJyBieSBwYWNrYWdlKHMpLlxuIgorI3wgIiAgLWx8LS1saXN0IFs8cGF0dGVybj4gLi4uXSAgICAgICAgTGlzdCBwYWNrYWdlcyBjb25jaXNlbHkuXG4iCisjfCAiICAtV3wtLXNob3cgPHBhdHRlcm4+IC4uLiAgICAgICAgICBTaG93IGluZm9ybWF0aW9uIG9uIHBhY2thZ2UocykuXG4iCisjfCAiICAtU3wtLXNlYXJjaCA8cGF0dGVybj4gLi4uICAgICAgICBGaW5kIHBhY2thZ2Uocykgb3duaW5nIGZpbGUocykuXG4iCisjfCAiICAtY3wtLWNvbnRyb2wtcGF0aCA8cGFja2FnZT4gWzxmaWxlPl1cbiIKKyN8ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFByaW50IHBhdGggZm9yIHBhY2thZ2UgY29udHJvbCBmaWxlLlxuIgorI3wgIlxuIgorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1zfC0tc3RhdHVzIDxwYWNrYWdlPiAuLi4gICAgICAgIERpc3BsYXkgcGFja2FnZSBzdGF0dXMgZGV0YWlscy5cbiIKKyIgIC1wfC0tcHJpbnQtYXZhaWwgPHBhY2thZ2U+IC4uLiAgIERpc3BsYXkgYXZhaWxhYmxlIHZlcnNpb24gZGV0YWlscy5cbiIKKyIgIC1MfC0tbGlzdGZpbGVzIDxwYWNrYWdlPiAuLi4gICAgIExpc3QgZmlsZXMgYG93bmVkJyBieSBwYWNrYWdlKHMpLlxuIgorIiAgLWx8LS1saXN0IFs8cGF0dGVybj4gLi4uXSAgICAgICAgTGlzdCBwYWNrYWdlcyBjb25jaXNlbHkuXG4iCisiICAtV3wtLXNob3cgWzxwYXR0ZXJuPiAuLi5dICAgICAgICBTaG93IGluZm9ybWF0aW9uIG9uIHBhY2thZ2UocykuXG4iCisiICAtU3wtLXNlYXJjaCA8cGF0dGVybj4gLi4uICAgICAgICBGaW5kIHBhY2thZ2Uocykgb3duaW5nIGZpbGUocykuXG4iCisiICAtY3wtLWNvbnRyb2wtcGF0aCA8cGFja2FnZT4gWzxmaWxlPl1cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFByaW50IHBhdGggZm9yIHBhY2thZ2UgY29udHJvbCBmaWxlLlxuIgorIlxuIgorbXNnc3RyICIiCisiS29tYW5kb2FrOlxuIgorIiAgLXN8LS1zdGF0dXMgPHBha2V0ZWE+IC4uLiAgICAgICAgQmlzdGFyYXR1IHBha2V0ZWFyZW4gZWdvZXJhLlxuIgorIiAgLXB8LS1wcmludC1hdmFpbCA8cGFrZXRlYT4gLi4uICBCaXN0YXJhdHUgYmVydHNpbyBlcmFiaWxnYXJyaWEuXG4iCisiICAtTHwtLWxpc3RmaWxlcyA8cGFrZXRlYT4gLi4uICAgICAgIFplcnJlbmRhdHUgcGFrZXRlZW4gJ2phYmV0emFrbycgIgorImZpdHhhdC5cbiIKKyIgIC1sfC0tbGlzdCBbPGVyZWR1YT4gLi4uXSAgICAgICAgICAgICBaZXJyZW5kYXR1IHBha2V0ZWFrIGxhYnVya2kuXG4iCisiICAtV3wtLXNob3cgPGVyZWR1YT4gLi4uICAgICAgICAgIEVyYWt1dHNpIHBha2V0ZShldGEpa28gaW5mb3JtYXppb2EuXG4iCisiICAtU3wtLXNlYXJjaCA8ZXJlZHVhPiAuLi4gICAgICAgIEJpbGF0dSBmaXR4YXRlZ2lhayBkYXV6a2F0ZW4gcGFrZXRlYWsuXG4iCisiICAtY3wtLWNvbnRyb2wtcGF0aCA8cGFrZXRlYT4gWzxmaXR4YXRlZ2lhPl1cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVyYWt1dHNpIHBha2V0ZWFyZW4ga29udHJvbC1maXR4YXRlZ2lhcmVuICIKKyJiaWRlLWl6ZW5hLlxuIgorIlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo2MzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgICAgICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyIgIC1mfC0tc2hvd2Zvcm1hdD08Zm9ybWF0PiAgICAgICAgIFVzZSBhbHRlcm5hdGl2ZSBmb3JtYXQgZm9yIC0tc2hvdy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIkF1a2VyYWs6XG4iCisiICAtLWFkbWluZGlyPTxkaXJla3RvcmlvYT4gICAgICAgICAgIEVyYWJpbGkgPGRpcmVrdG9yaW9hPiAlcyhyKWVuIG9yZGV6XG4iCisiICAtZnwtLXNob3dmb3JtYXQ9PGZvcm1hdHVhPiAgICAgIEVyYWJpbGkgYmVzdGUgZm9ybWF0dSBiYXQgLS1zaG93IGVnaXRla29cbiIKKyJcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjQyIGRwa2ctZGViL21haW4uYzoxMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkZvcm1hdCBzeW50YXg6XG4iCisiICBBIGZvcm1hdCBpcyBhIHN0cmluZyB0aGF0IHdpbGwgYmUgb3V0cHV0IGZvciBlYWNoIHBhY2thZ2UuIFRoZSBmb3JtYXRcbiIKKyIgIGNhbiBpbmNsdWRlIHRoZSBzdGFuZGFyZCBlc2NhcGUgc2VxdWVuY2VzIFxcbiAobmV3bGluZSksIFxcciAoY2FycmlhZ2VcbiIKKyIgIHJldHVybikgb3IgXFxcXCAocGxhaW4gYmFja3NsYXNoKS4gUGFja2FnZSBpbmZvcm1hdGlvbiBjYW4gYmUgaW5jbHVkZWRcbiIKKyIgIGJ5IGluc2VydGluZyB2YXJpYWJsZSByZWZlcmVuY2VzIHRvIHBhY2thZ2UgZmllbGRzIHVzaW5nIHRoZSAke3Zhcls7IgorIndpZHRoXX1cbiIKKyIgIHN5bnRheC4gRmllbGRzIHdpbGwgYmUgcmlnaHQtYWxpZ25lZCB1bmxlc3MgdGhlIHdpZHRoIGlzIG5lZ2F0aXZlIGluICIKKyJ3aGljaFxuIgorIiAgY2FzZSBsZWZ0IGFsaWdubWVudCB3aWxsIGJlIHVzZWQuXG4iCittc2dzdHIgIiIKKyJGb3JtYXR1YXJlbiBzaW50YXhpYTpcbiIKKyIgIEZvcm1hdHVhIHBha2V0ZSBiYWtvaXR6YXJla2luIGVyYWt1dHNpa28gZGVuIGthdGVhIGRhLiBGb3JtYXR1YWtcbiIKKyIgIGloZXMtc2VrdWVudHppYSBrbGFzaWtvYWsgaXphbiBkaXR6YWtlOiBcXG4gKGxlcnJvLWphdXppYSksIFxcciAob3JnYVxuIgorIiAgaXR6dWxlcmEpIGVkbyBcXFxcIChhbGRlcmFudHppemtvIGJhcnJhIHNvaWxhKS4gUGFrZXRlLWluZm9ybWF6aW9hXG4iCisiICAgc2FydHpla28sIHR4ZXJ0YXR1IGFsZGFnYWktZXJyZWZlcmVudHppYSBwYWtldGUtZXJlbXVldGFuLCAke3Zhcls7IgorInphYmFsZXJhXX1cbiIKKyIgIHNpbnRheGlhcmVraW4uIEVyZW11YWsgZXNrdWluZWFuIGxlcnJva2F0dWtvIGRpcmEsIHphYmFsZXJhIG5lZ2F0aWJvYSBleiBcbiIKKyIgIGJhZGEuIE5lZ2F0aWJvYSBiYWRhLCBhbGRpeiwgZXprZXJyZWFuIGxlcnJva2F0dWtvIGRpcmEuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjY1NgorbXNnaWQgIlVzZSAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgcXVlcnlpbmcgcGFja2FnZXMuIgorbXNnc3RyICJFcmFiaWxpIC0taGVscCBwYWtldGVlbiBrb250c3VsdGFyaSBidXJ1emtvIGxhZ3VudHphIGxvcnR6ZWtvLiIKKworIzogc3JjL3JlbW92ZS5jOjg4CisjLCBjLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nIHJlcXVlc3QgdG8gcmVtb3ZlICUuMjUwcyB3aGljaCBpc24ndCBpbnN0YWxsZWQuIgorbXNnc3RyICIiCisiJS4yNTBzIGtlbnR6ZWtvIGVza2FlcmFyaSBlemlrdXNpIGVnaW5nbyB6YWlvLCBleiBkYWdvZWxha28gaW5zdGFsYXR1dGEuIgorCisjOiBzcmMvcmVtb3ZlLmM6OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImlnbm9yaW5nIHJlcXVlc3QgdG8gcmVtb3ZlICUuMjUwcywgb25seSB0aGUgY29uZmlnXG4iCisiIGZpbGVzIG9mIHdoaWNoIGFyZSBvbiB0aGUgc3lzdGVtLiBVc2UgLS1wdXJnZSB0byByZW1vdmUgdGhlbSB0b28uIgorbXNnc3RyICIiCisiJS4yNTBzIGtlbnR6ZWtvIGVza2FlcmFyaSBlemlrdXNpIGVnaW5nbyB6YWlvLCBrb25mLlxuIgorIiBmaXR4YXRlZ2lhayBiYWthcnJpayBkYXVkZWxha28gc2lzdGVtYW4uIEVyYWJpbGkgLS1wdXJnZSBob3JpZWsgZXJlICIKKyJrZW50emVrby4iCisKKyM6IHNyYy9yZW1vdmUuYzoxMDMKK21zZ2lkICJUaGlzIGlzIGFuIGVzc2VudGlhbCBwYWNrYWdlIC0gaXQgc2hvdWxkIG5vdCBiZSByZW1vdmVkLiIKK21zZ3N0ciAiSGF1IGZ1bnRzZXprbyBwYWtldGUgYmF0IGRhLCBldGEgZXogZGEga2VuZHUgYmVoYXIuIgorCisjOiBzcmMvcmVtb3ZlLmM6MTI4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBkZXBlbmRlbmN5IHByb2JsZW1zIHByZXZlbnQgcmVtb3ZhbCBvZiAlczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6IG1lbmRla290YXN1biBhcmF6b2FrIGRpcmVsYSBldGEsIGV6aW4gZGEgJXMga2VuZHU6XG4iCisiJXMiCisKKyM6IHNyYy9yZW1vdmUuYzoxMzAKK21zZ2lkICJkZXBlbmRlbmN5IHByb2JsZW1zIC0gbm90IHJlbW92aW5nIgorbXNnc3RyICJtZW5kZWtvdGFzdW4gYXJhem9hayAtIGV6IGRhIGtlbmR1a28iCisKKyM6IHNyYy9yZW1vdmUuYzoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6ICVzOiBkZXBlbmRlbmN5IHByb2JsZW1zLCBidXQgcmVtb3ZpbmcgYW55d2F5IGFzIHlvdSByZXF1ZXN0ZWQ6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiAlczogbWVuZGVrb3Rhc3VuIGFyYXpvYWssIGJhaW5hIGVza2F0dSBiZXphbGEga2VuZHVrbyBkYTpcbiIKKyIlcyIKKworIzogc3JjL3JlbW92ZS5jOjE0MgorbXNnaWQgIiIKKyJQYWNrYWdlIGlzIGluIGEgdmVyeSBiYWQgaW5jb25zaXN0ZW50IHN0YXRlIC0geW91IHNob3VsZFxuIgorIiByZWluc3RhbGwgaXQgYmVmb3JlIGF0dGVtcHRpbmcgYSByZW1vdmFsLiIKK21zZ3N0ciAiIgorIlBha2V0ZWFyZW4gZWdvZXJhIGlua29oZXJlbnRlYSBkYSAtIGJlcnJpcm8gaW5zdGFsYXR1IGJlaGFya29cbiIKKyIgemVudWtlLCBrZW50emVuIHNhaWF0dSBhdXJyZXRpay4iCisKKyM6IHNyYy9yZW1vdmUuYzoxNDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiV291bGQgcmVtb3ZlIG9yIHB1cmdlICVzIC4uLlxuIgorbXNnc3RyICIlcyBrZW5kdSBlZG8gcHVyZ2F0dWtvIGxpdHphdGVrZS4uLlxuIgorCisjOiBzcmMvcmVtb3ZlLmM6MTU3CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlbW92aW5nICVzIC4uLlxuIgorbXNnc3RyICIlcyBrZW50emVuLi4uXG4iCisKKyM6IHNyYy9yZW1vdmUuYzoyNzUgc3JjL3JlbW92ZS5jOjM2NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisid2hpbGUgcmVtb3ZpbmcgJS4yNTBzLCB1bmFibGUgdG8gcmVtb3ZlIGRpcmVjdG9yeSAnJS4yNTBzJzogJXMgLSBkaXJlY3RvcnkgIgorIm1heSBiZSBhIG1vdW50IHBvaW50PyIKK21zZ3N0ciAiIgorIiUuMjUwcyBrZW50emVhbiwgZXppbiBkYSAnJS4yNTBzJyBkaXJla3RvcmlvYSBrZW5kdTogJXMgLSBiYWxpdGVrZSAiCisiZGlyZWt0b3Jpb2EgbXVudGF0emUgcHVudHVhIGJhdCBpemF0ZWEgPyIKKworIzogc3JjL3JlbW92ZS5jOjI4OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2VjdXJlbHkgcmVtb3ZlICclLjI1MHMnIgorbXNnc3RyICJlemluIGRhICclLjI1MHMnIHNlZ3VydGFzdW5leiBrZW5kdSIKKworIzogc3JjL3JlbW92ZS5jOjM2MQorIywgYy1mb3JtYXQKK21zZ2lkICJ3aGlsZSByZW1vdmluZyAlLjI1MHMsIGRpcmVjdG9yeSAnJS4yNTBzJyBub3QgZW1wdHkgc28gbm90IHJlbW92ZWQuIgorbXNnc3RyICIiCisiJS4yNTBzIGtlbnR6ZWFuLCAnJS4yNTBzJyBkaXJla3RvcmlvYSBleiBkYWdvIGh1dHNpaywgZXRhIGJlcmF6IGV6IGRhICIKKyJrZW5kdWtvLiIKKworIzogc3JjL3JlbW92ZS5jOjM4MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiY2Fubm90IHJlbW92ZSBgJS4yNTBzJyIKK21zZ2lkICJjYW5ub3QgcmVtb3ZlICclLjI1MHMnIgorbXNnc3RyICJlemluIGRhICclLjI1MHMnIGtlbmR1IgorCisjOiBzcmMvcmVtb3ZlLmM6NDA5CisjLCBjLWZvcm1hdAorbXNnaWQgIlB1cmdpbmcgY29uZmlndXJhdGlvbiBmaWxlcyBmb3IgJXMgLi4uXG4iCittc2dzdHIgIiVzOiBrb25maWd1cmF6aW8tZml0eGF0ZWdpYWsgcHVyZ2F0emVuIC4uLlxuIgorCisjOiBzcmMvcmVtb3ZlLmM6NDU5CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZW1vdmUgb2xkIGNvbmZpZyBmaWxlIGAlLjI1MHMnICg9IGAlLjI1MHMnKSIKK21zZ3N0ciAiZXppbiBkYSAnJS4yNTBzJyBrb25maWd1cmF6aW8tZml0eGF0ZWdpIHphaGFycmEga2VuZHUgKD0gJyUuMjUwcycpIgorCisjOiBzcmMvcmVtb3ZlLmM6NDc0CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZWFkIGNvbmZpZyBmaWxlIGRpciBgJS4yNTBzJyAoZnJvbSBgJS4yNTBzJykiCittc2dzdHIgImV6aW4gZGEgJyUuMjUwcycga29uZi4gZml0eGF0ZWdpYXJlbiBkaXJla3RvcmlvYSBpcmFrdXJyaSAoJyUuMjUwcycpIgorCisjOiBzcmMvcmVtb3ZlLmM6NTEwCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZW1vdmUgb2xkIGJhY2t1cCBjb25maWcgZmlsZSBgJS4yNTBzJyAob2YgYCUuMjUwcycpIgorbXNnc3RyICJlemluIGRhICclLjI1MHMnIGJhYmVza29waWFrbyBrb25mLiBmaXR4YXRlZ2kgemFoYXJyYSBrZW5kdSAoJyUuMjUwcycpIgorCisjOiBzcmMvcmVtb3ZlLmM6NTY4Cittc2dpZCAiY2Fubm90IHJlbW92ZSBvbGQgZmlsZXMgbGlzdCIKK21zZ3N0ciAiZXppbiBkYSBmaXR4YXRlZ2kgemFoYXJyZW4gemVycmVuZGEga2VuZHUiCisKKyM6IHNyYy9yZW1vdmUuYzo1NzQKK21zZ2lkICJjYW4ndCByZW1vdmUgb2xkIHBvc3RybSBzY3JpcHQiCittc2dzdHIgImV6aW4gZGEgcG9zdHJtIHNjcmlwdCB6YWhhcnJhIGtlbmR1IgorCisjOiBzcmMvc2VsZWN0LmM6MTE1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW9mIGluIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICJ1c3Rla2FiZWtvIGVvZiBwYWtldGUtaXplbmFyZW4gJWQgbGVycm9hbiIKKworIzogc3JjL3NlbGVjdC5jOjExNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBsaW5lIGluIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICJ1c3Rla2FiZWtvIGxlcnJvLWFtYWllcmEgcGFrZXRlLWl6ZW5hcmVuICVkIGxlcnJvYW4iCisKKyM6IHNyYy9zZWxlY3QuYzoxMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgYWZ0ZXIgcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQiCittc2dzdHIgInVzdGVrYWJla28gZW9mIHBha2V0ZS1pemVuYXJlbiBvbmRvcmVuICVkIGxlcnJvYW4iCisKKyM6IHNyYy9zZWxlY3QuYzoxMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgbGluZSBhZnRlciBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZCIKK21zZ3N0ciAiZXNwZXJvIGV6IHplbiBsZXJyby1hbWFpZXJhIHBha2V0ZS1pemVuYXJlbiBvbmRvcmVuICVkIGxlcnJvYW4iCisKKyM6IHNyYy9zZWxlY3QuYzoxMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBkYXRhIGFmdGVyIHBhY2thZ2UgYW5kIHNlbGVjdGlvbiBhdCBsaW5lICVkIgorbXNnc3RyICJlc3Blcm8gZXogemlyZW4gZGF0dWFrIHBha2V0ZWFyZW4gZXRhIGhhdXRhcGVuYXJlbiBvbmRvcmVuICVkIGxlcnJvYW4iCisKKyM6IHNyYy9zZWxlY3QuYzoxMzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWxsZWdhbCBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZDogJS4yNTBzIgorbXNnc3RyICJwYWtldGUtaXplbiBiYWxpb2dhYmVhICVkIGxlcnJvYW46ICUuMjUwcyIKKworIzogc3JjL3NlbGVjdC5jOjE0MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIHdhbnRlZCBzdGF0dXMgYXQgbGluZSAlZDogJS4yNTBzIgorbXNnc3RyICJuYWhpIHplbiBlZ29lcmEgZXplemFndW5hICVkIGxlcnJvYW46ICUuMjUwcyIKKworIzogc3JjL3NlbGVjdC5jOjE0OQorbXNnaWQgInJlYWQgZXJyb3Igb24gc3RhbmRhcmQgaW5wdXQiCittc2dzdHIgImlyYWt1cmtldGEtZXJyb3JlYSBzYXJyZXJhIGVzdGFuZGFycmVhbiIKKworIzogc3JjL3N0YXRjbWQuYzo1MgorIywgZnV6enkKKyN8IG1zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IHF1ZXJ5aW5nIHBhY2thZ2VzLiIKK21zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IG92ZXJyaWRpbmcgZmlsZSBzdGF0IGluZm9ybWF0aW9uLiIKK21zZ3N0ciAiRXJhYmlsaSAtLWhlbHAgcGFrZXRlZW4ga29udHN1bHRhcmkgYnVydXprbyBsYWd1bnR6YSBsb3J0emVrby4iCisKKyM6IHNyYy9zdGF0Y21kLmM6NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvcHlyaWdodCAoQykgMjAwMCwgMjAwMSBXaWNoZXJ0IEFra2VybWFuLlxuIgorIkNvcHlyaWdodCAoQykgMjAwNi0yMDA5IEd1aWxsZW0gSm92ZXIuXG4iCittc2dzdHIgIiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsIDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDYtMjAwOSBHdWlsbGVtIEpvdmVyLlxuIgorCisjOiBzcmMvc3RhdGNtZC5jOjgxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC0tYWRkIDxvd25lcj4gPGdyb3VwPiA8bW9kZT4gPGZpbGU+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkIGEgbmV3IGVudHJ5IGludG8gdGhlIGRhdGFiYXNlLlxuIgorIiAgLS1yZW1vdmUgPGZpbGU+ICAgICAgICAgIHJlbW92ZSBmaWxlIGZyb20gdGhlIGRhdGFiYXNlLlxuIgorIiAgLS1saXN0IFs8Z2xvYi1wYXR0ZXJuPl0gIGxpc3QgY3VycmVudCBvdmVycmlkZXMgaW4gdGhlIGRhdGFiYXNlLlxuIgorIlxuIgorbXNnc3RyICIiCisiS29tYW5kb2FrOlxuIgorIiAgLS1hZGQgPGphYmVhPiA8dGFsZGVhPiA8bW9kdWE+IDxmaXR4YXRlZ2lhPlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGdlaGl0dSBzYXJyZXJhIGJlcnJpYSBkYXR1LWJhc2VhcmkuXG4iCisiICAtLXJlbW92ZSA8ZmlsZT4gICAgICAgICAga2VuZHUgZml0eGF0ZWdpYSBkYXR1LWJhc2V0aWsuXG4iCisiICAtLWxpc3QgWzxnbG9iLXBhdHRlcm4+XSAgemVycmVuZGF0dSB1bmVrbyBkYXR1LWJhc2VrbyBnYWluaWRhemtldGFrLlxuIgorIlxuIgorCisjOiBzcmMvc3RhdGNtZC5jOjg5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIHNldCB0aGUgZGlyZWN0b3J5IHdpdGggdGhlIHN0YXRvdmVycmlkZSBmaWxlLlxuIgorIiAgLS11cGRhdGUgICAgICAgICAgICAgICAgIGltbWVkaWF0ZWx5IHVwZGF0ZSBmaWxlIHBlcm1pc3Npb25zLlxuIgorIiAgLS1mb3JjZSAgICAgICAgICAgICAgICAgIGZvcmNlIGFuIGFjdGlvbiBldmVuIGlmIGEgc2FuaXR5IGNoZWNrIGZhaWxzLlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHF1aWV0IG9wZXJhdGlvbiwgbWluaW1hbCBvdXRwdXQuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorbXNnc3RyICIiCisiQXVrZXJhazpcbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVrdG9yaW9hPiAgZXphcnJpICdzdGF0b3ZlcnJpZGUnIGZpdHhhdGVnaWFyZW4gIgorImRpcmVrdG9yaW9hLlxuIgorIiAgLS11cGRhdGUgICAgICAgICAgICAgICBlZ3VuZXJhdHUgYmVyZWhhbGEgZml0eGF0ZWdpYXJlbiBiYWltZW5hayAiCisiYmVyZWhhbGEuXG4iCisiICAtLWZvcmNlICAgICAgICAgICAgICAgICAgZGVycmlnb3J0dSBla2ludHphIGJhdCBuYWhpeiBldGEgZWdpYXp0YXBlbmFrICIKKyJodXRzIGVnaW4uXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgZWtpbnR6YSBpeGlsYSwgaXJ0ZWVyYSBndXR4aWtvYS5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICBlcmFrdXRzaSBsYWd1bnR6YXJlbiBtZXp1IGhhdS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgIGVyYWt1dHNpIGJlcnRzaW9hLlxuIgorCisjOiBzcmMvc3RhdGNtZC5jOjExNgorbXNnaWQgInN0cmlwcGluZyB0cmFpbGluZyAvIgorbXNnc3RyICJhbWFpZXJha28gJy8nLWFrIGtlbnR6ZW4iCisKKyM6IHNyYy9zdGF0Y21kLmM6MjA3Cittc2dpZCAiY2Fubm90IG9wZW4gbmV3IHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJlemluIGRhIHN0YXRvdmVycmlkZSBmaXR4YXRlZ2kgYmVycmlhIGlyZWtpIgorCisjOiBzcmMvc3RhdGNtZC5jOjIyMgorbXNnaWQgImVycm9yIHJlbW92aW5nIHN0YXRvdmVycmlkZS1vbGQiCittc2dzdHIgImVycm9yZWEgc3RhdG92ZXJyaWRlLW9sZCBrZW50emVhbiIKKworIzogc3JjL3N0YXRjbWQuYzoyMjQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBuZXcgc3RhdG92ZXJyaWRlLW9sZCIKK21zZ3N0ciAiZXJyb3JlYSBzdGF0b3ZlcnJpZGUtb2xkIGJlcnJpYSBzb3J0emVhbiIKKworIzogc3JjL3N0YXRjbWQuYzoyMjYKK21zZ2lkICJlcnJvciBpbnN0YWxsaW5nIG5ldyBzdGF0b3ZlcnJpZGUiCittc2dzdHIgImVycm9yZWEgc3RhdG92ZXJyaWRlIGJlcnJpYSBpbnN0YWxhdHplYW4iCisKKyM6IHNyYy9zdGF0Y21kLmM6MjQ2Cittc2dpZCAiLS1hZGQgbmVlZHMgZm91ciBhcmd1bWVudHMiCittc2dzdHIgIi0tYWRkIGF1a2VyYWsgbGF1IGFyZ3VtZW50dSBiZWhhciBkaXR1IgorCisjOiBzcmMvc3RhdGNtZC5jOjI1NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQW4gb3ZlcnJpZGUgZm9yICclcycgYWxyZWFkeSBleGlzdHMsIGJ1dCAtLWZvcmNlIHNwZWNpZmllZCBzbyB3aWxsIGJlICIKKyJpZ25vcmVkLiIKK21zZ3N0ciAiIgorIiclcycocillbiBnYWluaWRhemtldGEgYmFkYWdvIGRhZ29lbmVrbywgYmFpbmEgLS1mb3JjZSBlemFycmkgZGVuZXosIGV6aWt1c2kgIgorImVnaW5nbyB6YWlvLiIKKworIzogc3JjL3N0YXRjbWQuYzoyNjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiQW4gb3ZlcnJpZGUgZm9yICclcycgYWxyZWFkeSBleGlzdHMsIGFib3J0aW5nLiIKK21zZ3N0ciAiJyVzJyhyKWVuIGdhaW5pZGF6a2V0YSBiYWRhZ28gZGFnb2VuZWtvLCBhYm9ydGF0emVuLiIKKworIzogc3JjL3N0YXRjbWQuYzoyNzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS11cGRhdGUgZ2l2ZW4gYnV0ICVzIGRvZXMgbm90IGV4aXN0IgorbXNnc3RyICItLXVwZGF0ZSBlbWFuIGRhIGJhaW5hICVzIGV6IGRhZ28iCisKKyM6IHNyYy9zdGF0Y21kLmM6Mjk2Cittc2dpZCAiTm8gb3ZlcnJpZGUgcHJlc2VudC4iCittc2dzdHIgIkV6IGRhZ28gZ2FpbmlkYXprZXRhcmlrLiIKKworIzogc3JjL3N0YXRjbWQuYzozMDQKK21zZ2lkICItLXVwZGF0ZSBpcyB1c2VsZXNzIGZvciAtLXJlbW92ZSIKK21zZ3N0ciAiLS11cGRhdGUgZXppbiBkYSAtLXJlbW92ZSBhdWtlcmFyZWtpbiBlcmFiaWxpIgorCisjOiBzcmMvc3RhdGRiLmM6NTkKK21zZ2lkICJzeW50YXggZXJyb3I6IGludmFsaWQgdWlkIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJzaW50YXhpLWVycm9yZWE6IHVpZCBiYWxpb2dhYmVhIHN0YXRvdmVycmlkZSBmaXR4YXRlZ2lhbiIKKworIzogc3JjL3N0YXRkYi5jOjY0CisjLCBjLWZvcm1hdAorbXNnaWQgInN5bnRheCBlcnJvcjogdW5rbm93biB1c2VyICclcycgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgInNpbnRheGktZXJyb3JlYTogJyVzJyBlcmFiaWx0emFpbGUgZXplemFndW5hIHN0YXRvdmVycmlkZSBmaXR4YXRlZ2lhbiIKKworIzogc3JjL3N0YXRkYi5jOjgzCittc2dpZCAic3ludGF4IGVycm9yOiBpbnZhbGlkIGdpZCBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAic2ludGF4aS1lcnJvcmVhOiBnaWQgYmFsaW9nYWJlYSBzdGF0b3ZlcnJpZGUgZml0eGF0ZWdpYW4iCisKKyM6IHNyYy9zdGF0ZGIuYzo4OAorIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3I6IHVua25vd24gZ3JvdXAgJyVzJyBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAic2ludGF4aS1lcnJvcmVhOiAnJXMnIHRhbGRlIGV6ZXphZ3VuYSBzdGF0b3ZlcnJpZGUgZml0eGF0ZWdpYW4iCisKKyM6IHNyYy9zdGF0ZGIuYzoxMDQKK21zZ2lkICJzeW50YXggZXJyb3I6IGludmFsaWQgbW9kZSBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAic2ludGF4aS1lcnJvcmVhOiBtb2R1IGJhbGlvZ2FiZWEgc3RhdG92ZXJyaWRlIGZpdHhhdGVnaWFuIgorCisjOiBzcmMvc3RhdGRiLmM6MTI3Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgImh1dHMgZWdpbiBkdSBzdGF0b3ZlcnJpZGUgZml0eGF0ZWdpYSBpcmVraXR6ZWFuIgorCisjOiBzcmMvc3RhdGRiLmM6MTM0Cittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJmc3RhdC1layBodXRzIGVnaW4gZHUgc3RhdG92ZXJyaWRlIGZpdHhhdGVnaWFyZWtpbiIKKworIzogc3JjL3N0YXRkYi5jOjEzNworbXNnaWQgImZhaWxlZCB0byBmc3RhdCBwcmV2aW91cyBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiZnN0YXQtZWsgaHV0cyBlZ2luIGR1IGF1cnJla28gc3RhdG92ZXJyaWRlIGZpdHhhdGVnaWFyZWtpbiIKKworIzogc3JjL3N0YXRkYi5jOjE2MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic3RhdG92ZXJyaWRlIGZpbGUgYCUuMjUwcyciCittc2dpZCAicmVhZGluZyBzdGF0b3ZlcnJpZGUgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAic3RhdG92ZXJyaWRlICclLjI1MHMnIGZpdHhhdGVnaWEiCisKKyM6IHNyYy9zdGF0ZGIuYzoxNjkKK21zZ2lkICJzdGF0b3ZlcnJpZGUgZmlsZSBpcyBtaXNzaW5nIGZpbmFsIG5ld2xpbmUiCittc2dzdHIgInN0YXRvdmVycmlkZSBmaXR4YXRlZ2lhayBhbWFpZXJha28gbGVycm8tamF1emlhIGZhbHRhIGR1IgorCisjOiBzcmMvc3RhdGRiLmM6MTczCittc2dpZCAic3RhdG92ZXJyaWRlIGZpbGUgY29udGFpbnMgZW1wdHkgbGluZSIKK21zZ3N0ciAic3RhdG92ZXJyaWRlIGZpdHhhdGVnaWFrIGxlcnJvIGh1dHMgYmF0IGRhdWthIgorCisjOiBzcmMvc3RhdGRiLmM6MTc4IHNyYy9zdGF0ZGIuYzoxOTAgc3JjL3N0YXRkYi5jOjIwMgorbXNnaWQgInN5bnRheCBlcnJvciBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAic2ludGF4aS1lcnJvcmVhIHN0YXRvdmVycmlkZSBmaXR4YXRlZ2lhbiIKKworIzogc3JjL3N0YXRkYi5jOjE4NiBzcmMvc3RhdGRiLmM6MTk4IHNyYy9zdGF0ZGIuYzoyMTAKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBsaW5lIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJ1c3Rla2FiZWtvIGxlcnJvLWFtYWllcmEgc3RhdG92ZXJyaWRlIGZpdHhhdGVnaWFuIgorCisjOiBzcmMvc3RhdGRiLmM6MjE0CisjLCBjLWZvcm1hdAorbXNnaWQgIm11bHRpcGxlIHN0YXR1c292ZXJyaWRlcyBwcmVzZW50IGZvciBmaWxlICclLjI1MHMnIgorbXNnc3RyICJoYWluYmF0IHN0YXR1c292ZXJyaWRlcyBkYXVkZSAnJS4yNTBzJyBmaXR4YXRlZ2lhbiIKKworIzogc3JjL3RyaWdjbWQuYzo0NgorbXNnaWQgIlR5cGUgZHBrZy10cmlnZ2VyIC0taGVscCBmb3IgaGVscCBhYm91dCB0aGlzIHV0aWxpdHkuIgorbXNnc3RyICJJZGF0emkgZHBrZy10cmlnZ2VyIC0taGVscCBsYW5hYmVzIGhvbmVuIGxhZ3VudHphIGxvcnR6ZWtvLiIKKworIzogc3JjL3RyaWdjbWQuYzo1MQorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gJXMgcGFja2FnZSB0cmlnZ2VyIHV0aWxpdHkgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiRGViaWFuICVzIHBha2VldGVhcmVuIGFiaWFyYXpsZWFyZW4gbGFuYWJlc2FyZW4gJXMgYmV0c2lvYS5cbiIKKworIzogc3JjL3RyaWdjbWQuYzo2NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9ucz4gLi4uXSA8dHJpZ2dlci1uYW1lPlxuIgorIiAgICAgICAlcyBbPG9wdGlvbnM+IC4uLl0gPGNvbW1hbmQ+XG4iCisiXG4iCittc2dzdHIgIiIKKyJFcmFiaWxlcmE6ICVzIFs8YXVrZXJhaz4gLi4uXSA8YWJpYXJhemxlLWl6ZW5hPlxuIgorIiAgICAgICAlcyBbPGF1a2VyYWs+IC4uLl0gPGtvbWFuZG9hPlxuIgorIlxuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC0tY2hlY2stc3VwcG9ydGVkICAgICAgICAgICAgICAgIENoZWNrIGlmIHRoZSBydW5uaW5nIGRwa2cgc3VwcG9ydHMgIgorInRyaWdnZXJzLlxuIgorIlxuIgorbXNnc3RyICIiCisiS29tYW5kb2FrOlxuIgorIiAgLS1jaGVjay1zdXBwb3J0ZWQgICAgICAgICAgICAgICAgQmVnaXJhdHUgZXhla3V0YXR6ZW4gYXJpIGRlbiBkcGtnLWVrICIKKyJhYmlhcmF6bGVhayBvbmFydHplbiBkaXR1ZW4uXG4iCisiXG4iCisKKyM6IHNyYy90cmlnY21kLmM6ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgICAgICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyIgIC0tYnktcGFja2FnZT08cGFja2FnZT4gICAgICAgICAgIE92ZXJyaWRlIHRyaWdnZXIgYXdhaXRlciAobm9ybWFsbHkgc2V0XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ5IGRwa2cpLlxuIgorIiAgLS1uby1hd2FpdCAgICAgICAgICAgICAgICAgICAgICAgTm8gcGFja2FnZSBuZWVkcyB0byBhd2FpdCB0aGUgIgorInByb2Nlc3NpbmcuXG4iCisiICAtLW5vLWFjdCAgICAgICAgICAgICAgICAgICAgICAgICBKdXN0IHRlc3QgLSBkb24ndCBhY3R1YWxseSBjaGFuZ2UgIgorImFueXRoaW5nLlxuIgorIlxuIgorbXNnc3RyICIiCisiQXVrZXJhazpcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVrdG9yaW9hPiAgICAgICAgICAgRXJhYmlsaSA8ZGlyZWt0b3Jpb2E+ICVzKHIpZW4gb3JkZXouXG4iCisiICAtLWJ5LXBhY2thZ2U9PHBha2V0ZWE+ICAgICAgICAgIEdhaW5pZGF0emkgYWJpYXJhemxlICIKKyJpdHhvaW5sYXJpYSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG5vcm1hbGVhbiAiCisiZHBrZy1layBlemFycml0YSkuXG4iCisiICAtLW5vLWF3YWl0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFeiBkYWdvIHBha2V0ZXJpayAiCisicHJvemVzdWFyZW4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHphaW4gIgorImRhZ29lbmlrXG4iCisiICAtLW5vLWFjdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHJvYmF0dSBiYWthcnJpaywgZXogZXplciAiCisiYWxkYXR1LlxuIgorIlxuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogdHJpZ2dlcnMgZGF0YSBkaXJlY3Rvcnkgbm90IHlldCBjcmVhdGVkXG4iCittc2dzdHIgIiVzOiBhYmlhcmF6bGVlbiBkYXR1ZW4gZGlyZWt0b3Jpb2EgZXogZGEgb3JhaW5kaWsgc29ydHVcbiIKKworIzogc3JjL3RyaWdjbWQuYzoxNTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IHRyaWdnZXIgcmVjb3JkcyBub3QgeWV0IGluIGV4aXN0ZW5jZVxuIgorbXNnc3RyICIlczogYWJpYXJhemxlYXJlbiBlcnJlZ2lzdHJvcmlrIGV6IGRhZ28gb3JhaW5kaWtcbiIKKworIzogc3JjL3RyaWdjbWQuYzoyMDUKK21zZ2lkICJ0YWtlcyBvbmUgYXJndW1lbnQsIHRoZSB0cmlnZ2VyIG5hbWUiCittc2dzdHIgImFyZ3VtZW50dSBiYXQgaGFydHplbiBkdSwgYWJpYXJhemxlYXJlbiBpemVuYSIKKworIzogc3JjL3RyaWdjbWQuYzoyMTAKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgImRwa2ctdHJpZ2dlciBtdXN0IGJlIGNhbGxlZCBmcm9tIGEgbWFpbnRhaW5lciBzY3JpcHQgKG9yIHdpdGggYSAtLWJ5LSIKKyN8ICJwYWNrYWdlIG9wdGlvbikiCittc2dpZCAibXVzdCBiZSBjYWxsZWQgZnJvbSBhIG1haW50YWluZXIgc2NyaXB0IChvciB3aXRoIGEgLS1ieS1wYWNrYWdlIG9wdGlvbikiCittc2dzdHIgIiIKKyJkcGtnLXRyaWdnZXIga29tYW5kb2FyaSBtYW50ZW50emFpbGVhcmVuIHNjcmlwdCBiYXRlayBkZWl0dSBiZWhhciBkaW8gKGVkbyAtLSIKKyJieS1wYWNrYWdlIGF1a2VyYXJla2luKSIKKworIzogc3JjL3RyaWdjbWQuYzoyMTUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImRwa2ctdHJpZ2dlcjogaWxsZWdhbCBhd2FpdGVkIHBhY2thZ2UgbmFtZSBgJS4yNTBzJzogJS4yNTBzIgorbXNnaWQgImlsbGVnYWwgYXdhaXRlZCBwYWNrYWdlIG5hbWUgJyUuMjUwcyc6ICUuMjUwcyIKK21zZ3N0ciAiZHBrZy10cmlnZ2VyOiBsZWdlemthbnBva28gZXNwZXJvIGRlbiAnJS4yNTBzJyBwYWtldGUtaXplbmE6ICUuMjUwcyIKKworIzogc3JjL3RyaWdjbWQuYzoyMjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCB0cmlnZ2VyIG5hbWUgYCUuMjUwcyc6ICUuMjUwcyIKK21zZ3N0ciAiJyUuMjUwcycgYWJpYXJhemxlYXJlbiBpemVuIGJhbGlvZ2FiZWE6ICUuMjUwcyIKKworIzogc3JjL3RyaWdwcm9jLmM6MjUwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogY3ljbGUgZm91bmQgd2hpbGUgcHJvY2Vzc2luZyB0cmlnZ2VyczpcbiIKKyIgY2hhaW4gb2YgcGFja2FnZXMgd2hvc2UgdHJpZ2dlcnMgYXJlIG9yIG1heSBiZSByZXNwb25zaWJsZTpcbiIKK21zZ3N0ciAiIgorIiVzOiB6aWtsb2EgYXVya2l0dWEgYWJpYXJhemxlYXJlbiBwcm96ZXN1YW5cbiIKKyIgZXJhbnR6dWxlIGRpcmVuIGVkbyBpemFuIGRhaXRlemtlZW4gYWJpYXJhemxlZW4gcGFrZXRlZW4ga2F0ZWE6XG4iCisKKyM6IHNyYy90cmlncHJvYy5jOjI1OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiIHBhY2thZ2VzJyBwZW5kaW5nIHRyaWdnZXJzIHdoaWNoIGFyZSBvciBtYXkgYmUgdW5yZXNvbHZhYmxlOlxuIgorbXNnc3RyICIiCisiXG4iCisiIGFiaWFyYXpsZWVuIHphaW4gZGF1ZGVuIHBha2V0ZWFrIChlYmF0emkgZXppbiBkaXJlbiBlZG8gaXphbiAiCisiZGFpdGV6a2VlbmFrICk6XG4iCisKKyM6IHNyYy90cmlncHJvYy5jOjI4MQorbXNnaWQgInRyaWdnZXJzIGxvb3BpbmcsIGFiYW5kb25lZCIKK21zZ3N0ciAiYWJpYXJhemxlYXJlbiBiZWdpenRhLCB1dHppdGEiCisKKyM6IHNyYy90cmlncHJvYy5jOjMxMgorIywgYy1mb3JtYXQKK21zZ2lkICJQcm9jZXNzaW5nIHRyaWdnZXJzIGZvciAlcyAuLi5cbiIKK21zZ3N0ciAiJXMocillbiBhYmlhcmF6bGVhayBwcm96ZXNhdHplbiAuLi5cbiIKKworIzogc3JjL3VwZGF0ZS5jOjUyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICItLSVzIG5lZWRzIGV4YWN0bHkgb25lIFBhY2thZ2VzIGZpbGUgYXJndW1lbnQiCittc2dpZCAiLS0lcyBuZWVkcyBleGFjdGx5IG9uZSBQYWNrYWdlcy1maWxlIGFyZ3VtZW50IgorbXNnc3RyICItLSVzOiBwYWtldGVlbiBmaXR4YXRlZ2lrbyBhcmd1bWVudHUgYmF0IGJlaGFyIGR1IgorCisjOiBzcmMvdXBkYXRlLmM6NjIKK21zZ2lkICJ1bmFibGUgdG8gYWNjZXNzIGRwa2cgc3RhdHVzIGFyZWEgZm9yIGJ1bGsgYXZhaWxhYmxlIHVwZGF0ZSIKK21zZ3N0ciAiZXppbiBkYSBkcGtnIGVnb2VyYS1hcmVhIGF0eml0dSBlZ3VuZXJhdHplIG1hc2lib2EgZWdpdGVrbyIKKworIzogc3JjL3VwZGF0ZS5jOjY0Cittc2dpZCAiYnVsayBhdmFpbGFibGUgdXBkYXRlIHJlcXVpcmVzIHdyaXRlIGFjY2VzcyB0byBkcGtnIHN0YXR1cyBhcmVhIgorbXNnc3RyICIiCisiZWd1bmVyYXR6ZSBtYXNpYm9hIGVnaXRla28gZHBrZyBlZ29lcmEgZXJlbXVhbiBpZGF6dGVrbyBiYWltZW5hIGVkdWtpIGJlaGFyICIKKyJkYSIKKworIzogc3JjL3VwZGF0ZS5jOjcxCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlcGxhY2luZyBhdmFpbGFibGUgcGFja2FnZXMgaW5mbywgdXNpbmcgJXMuXG4iCittc2dzdHIgIlBha2V0ZSBlcmFiaWxnYXJyaWVuIGluZm9ybWF6aW9hIG9yZGV6dGVuLCAlcyBlcmFiaWxpei5cbiIKKworIzogc3JjL3VwZGF0ZS5jOjc0CisjLCBjLWZvcm1hdAorbXNnaWQgIlVwZGF0aW5nIGF2YWlsYWJsZSBwYWNrYWdlcyBpbmZvLCB1c2luZyAlcy5cbiIKK21zZ3N0ciAiUGFrZXRlIGVyYWJpbGdhcnJpZW4gaW5mb3JtYXppb2EgZWd1bmVyYXR6ZW4sICVzIGVyYWJpbGl6LlxuIgorCisjOiBzcmMvdXBkYXRlLmM6MTAxCisjLCBjLWZvcm1hdAorbXNnaWQgIkluZm9ybWF0aW9uIGFib3V0ICVkIHBhY2thZ2Ugd2FzIHVwZGF0ZWQuXG4iCittc2dpZF9wbHVyYWwgIkluZm9ybWF0aW9uIGFib3V0ICVkIHBhY2thZ2VzIHdhcyB1cGRhdGVkLlxuIgorbXNnc3RyWzBdICJQYWtldGUgJWQtaSBidXJ1emtvIGluZm9ybWF6aW9hIGVndW5lcmF0dSBkYS5cbiIKK21zZ3N0clsxXSAiJWQgcGFrZXRlcmkgYnVydXprbyBpbmZvcm1hemlvYSBlZ3VuZXJhdHUgZGEuXG4iCisKKyM6IHNyYy91cGRhdGUuYzoxMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm9ic29sZXRlICctLSVzJyBvcHRpb24sIHVuYXZhaWxhYmxlIHBhY2thZ2VzIGFyZSBhdXRvbWF0aWNhbGx5IGNsZWFuZWQgdXAuIgorbXNnc3RyICIiCisiJy0tJXMnIGF1a2VyYSB6YWhhcmtpdHVhLCBlc2t1cmEgZXppbiBkYWl0ZXprZWVuIHBha2V0ZWFrIGF1dG9tYXRpa29raSAiCisiZ2FyYml0dWtvIGRpcmEuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIG5hbWUgJyUuNTBzLi4uJyBpcyB0b28gbG9uZyIKK21zZ3N0ciAiJyUuNTBzLi4uJyBmaXR4YXRlZ2ktaXplbmEgbHV6ZWVnaWEgZGEiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTI5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGZpbGUgbmFtZSAnJS4yNTBzJyIKK21zZ3N0ciAiZXppbiBkYSAnJS4yNTBzJyBmaXR4YXRlZ2ktaXplbmEgYXR6aXR1IgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjE4OQorbXNnaWQgInVuYWJsZSB0byBzdGF0IGNvbnRyb2wgZGlyZWN0b3J5IgorbXNnc3RyICJlemluIGRhIGtvbnRyb2wtZGlyZWt0b3Jpb2FyZW4gZWdvZXJhIGVza3VyYXR1IgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjE5MQorbXNnaWQgImNvbnRyb2wgZGlyZWN0b3J5IGlzIG5vdCBhIGRpcmVjdG9yeSIKK21zZ3N0ciAia29udHJvbC1kaXJla3RvcmlvYSBleiBkYSBkaXJla3RvcmlvIGJhdCIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoxOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29udHJvbCBkaXJlY3RvcnkgaGFzIGJhZCBwZXJtaXNzaW9ucyAlMDNsbyAobXVzdCBiZSA+PTA3NTUgYW5kIDw9MDc3NSkiCittc2dzdHIgIiIKKyJrb250cm9sLWRpcmVrdG9yaW9hayBva2VycmVrbyBiYWltZW5hayBkaXR1OiAlMDNsbyAoPj0wNzU1IGV0YSA8PTA3NzUgaXphbiAiCisiYmVoYXIgZHV0ZSkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjA0CisjLCBjLWZvcm1hdAorbXNnaWQgIm1haW50YWluZXIgc2NyaXB0IGAlLjUwcycgaXMgbm90IGEgcGxhaW4gZmlsZSBvciBzeW1saW5rIgorbXNnc3RyICIiCisibWFudGVudHphaWxlYXJlbiAnJS41MHMnIHNjcmlwdC1hIGV6IGRhIGZpdHhhdGVnaSBhcnJ1bnRhIGVkbyBlc3Rla2EgIgorInNpbmJvbGlrb2EiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjA3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJtYWludGFpbmVyIHNjcmlwdCBgJS41MHMnIGhhcyBiYWQgcGVybWlzc2lvbnMgJTAzbG8gKG11c3QgYmUgPj0wNTU1IGFuZCAiCisiPD0wNzc1KSIKK21zZ3N0ciAiIgorIm1hbnRlbnR6YWlsZWFyZW4gJyUuNTBzJyBzY3JpcHQtYWsgb2tlcnJla28gYmFpbWVuYWsgZGl0dTogJTAzbG8gKD49MDU1NSBldGEgIgorIjw9MDc3NSBpemFuIGJlaGFyIGR1dGUpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjIxMQorIywgYy1mb3JtYXQKK21zZ2lkICJtYWludGFpbmVyIHNjcmlwdCBgJS41MHMnIGlzIG5vdCBzdGF0dGFibGUiCittc2dzdHIgIm1hbnRlbnR6YWlsZWFyZW4gJyUuNTBzJyBzY3JpcHQtZWFuIGV6aW4gZGEgYXR6aXR1IgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjIzNworbXNnaWQgImVycm9yIG9wZW5pbmcgY29uZmZpbGVzIGZpbGUiCittc2dzdHIgImVycm9yZWEga29uZmlndXJhemlva28gZml0eGF0ZWdpZW4gZml0eGF0ZWdpYSBpcmVraXR6ZWFuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI0NgorbXNnaWQgImVtcHR5IHN0cmluZyBmcm9tIGZnZXRzIHJlYWRpbmcgY29uZmZpbGVzIgorbXNnc3RyICJmZ2V0czoga2F0ZSBodXRzIGJhdCBiaWRhbGkgZHUga29uZmlndXJhemlva28gZml0eGF0ZWdpYWsgaXJha3VydHplYW4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjUxCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIG5hbWUgJyUuNTBzLi4uJyBpcyB0b28gbG9uZywgb3IgbWlzc2luZyBmaW5hbCBuZXdsaW5lIgorbXNnc3RyICIiCisiJyUuNTBzLi4uJyBrb25mLiBmaXR4YXRlZ2lhcmVuIGl6ZW5hIGx1emVlZ2lhIGRhLCBlZG8gYW1haWVyYWtvIGxlcnJvLWphdXppYSAiCisiZmFsdGEgZHUiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjY0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIGZpbGVuYW1lICclcycgY29udGFpbnMgdHJhaWxpbmcgd2hpdGUgc3BhY2VzIgorbXNnc3RyICInJXMnIGtvbmZpZ3VyYXppb2tvIGZpdHhhdGVnaWFrIGFtYWllcmFuIHp1cml1bmVhayBkaXR1IgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI2NgorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBgJS4yNTBzJyBkb2VzIG5vdCBhcHBlYXIgaW4gcGFja2FnZSIKK21zZ3N0ciAiJyUuMjUwcycga29uZi4gZml0eGF0ZWdpYSBleiBkYSBwYWtldGVhbiBhemFsdHplbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgYCUuMjUwcycgaXMgbm90IHN0YXR0YWJsZSIKK21zZ3N0ciAiJyUuMjUwcycga29uZmlndXJhemlva28gZml0eGF0ZWdpYSBlemluIGRhIGF0eml0dSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgJyVzJyBpcyBub3QgYSBwbGFpbiBmaWxlIgorbXNnc3RyICInJXMnIGtvbmZpZ3VyYXppb2tvIGZpdHhhdGVnaWEgZXogZGEgZml0eGF0ZWdpIGFycnVudGEiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6Mjc0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIG5hbWUgJyVzJyBpcyBkdXBsaWNhdGVkIgorbXNnc3RyICIlcyBrb25mLiBmaXR4YXRlZ2ktaXplbmEgYmlrb2l6dHV0YSBkYWdvIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI4NworbXNnaWQgImVycm9yIHJlYWRpbmcgY29uZmZpbGVzIGZpbGUiCittc2dzdHIgImVycm9yZWEga29uZmlndXJhemlva28gZml0eGF0ZWdpZW4gZml0eGF0ZWdpYSBpcmFrdXJ0emVhbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzozMzkKK21zZ2lkICJwYWNrYWdlIG5hbWUgaGFzIGNoYXJhY3RlcnMgdGhhdCBhcmVuJ3QgbG93ZXJjYXNlIGFscGhhbnVtcyBvciBgLSsuJyIKK21zZ3N0ciAiIgorInBha2V0ZS1pemVuYWsgbWludXNrdWxhIGFsZmF6ZW5iYWtpemtvYWsgZWRvICctKy4nIGV6IGRpcmVuIGthcmFrdGVyZWFrICIKKyJkYXV6a2EiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MzQxCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgY29udGFpbnMgdXNlci1kZWZpbmVkIFByaW9yaXR5IHZhbHVlICclcyciCittc2dzdHIgIiclcycoZSlrIGVyYWJpbHR6YWlsZWFrIGRlZmluaXR1dGFrbyAnJXMnIGxlaGVudGFzdW4tYmFsaW9hIGRhdWthIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjM0NworIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGNvbnRhaW5zIHVzZXItZGVmaW5lZCBmaWVsZCAnJXMnIgorbXNnc3RyICInJXMnKGUpayBlcmFiaWx0emFpbGVhayBkZWZpbml0dXRha28gJyVzJyBlcmVtdWEgZGF1a2EiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MzU4CisjLCBjLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nICVkIHdhcm5pbmcgYWJvdXQgdGhlIGNvbnRyb2wgZmlsZShzKVxuIgorbXNnaWRfcGx1cmFsICJpZ25vcmluZyAlZCB3YXJuaW5ncyBhYm91dCB0aGUgY29udHJvbCBmaWxlKHMpXG4iCittc2dzdHJbMF0gImtvbnRyb2wtZml0eGF0ZWdpZWkgYnVydXprbyBhYmlzdSAlZC1pIGV6aWt1c2kgZWdpdGVuXG4iCittc2dzdHJbMV0gImtvbnRyb2wtZml0eGF0ZWdpZWkgYnVydXprbyAlZCBhYmlzdWVpIGV6aWt1c2kgZWdpdGVuXG4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDAzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDI5CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQzNgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGEgPGRpcmVjdG9yeT4gYXJndW1lbnQiCittc2dzdHIgIi0tJXMgYXVrZXJhayA8ZGlyZWt0b3Jpbz4gYXJndW1lbnR1IGJhdCBiZWhhciBkdSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MDkKK21zZ2lkICItLWJ1aWxkIHRha2VzIGF0IG1vc3QgdHdvIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS1idWlsZDogZ2VoaWVuZXogYmkgYXJndW1lbnR1IGhhcnR6ZW4gZGl0dSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoZWNrIGZvciBleGlzdGVuY2Ugb2YgYXJjaGl2ZSBgJS4yNTBzJyIKK21zZ3N0ciAiZXppbiBkYSAnJS4yNTBzJyBhcnR4aWJvYXJlbiBleGlzdGVudHppYSBiZWdpcmF0dSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzAKK21zZ2lkICJ0YXJnZXQgaXMgZGlyZWN0b3J5IC0gY2Fubm90IHNraXAgY29udHJvbCBmaWxlIGNoZWNrIgorbXNnc3RyICIiCisiaGVsYnVydWEgZGlyZWt0b3Jpb2EgZGEgLSBlemluIGRhIHNhbHRhdHUga29udHJvbCBmaXR4YXRlZ2lhcmVuIGVnaWF6dGFwZW5hIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQzMQorbXNnaWQgIm5vdCBjaGVja2luZyBjb250ZW50cyBvZiBjb250cm9sIGFyZWEuIgorbXNnc3RyICJleiBkYSBrb250cm9sLWFyZWFyZW4gZWR1a2lhIGVnaWF6dGF0dWtvIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQzMgorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnLWRlYjogYnVpbGRpbmcgYW4gdW5rbm93biBwYWNrYWdlIGluICclcycuXG4iCittc2dzdHIgImRwa2ctZGViOiBwYWtldGUgZXplemFndW4gYmF0IGVyYWlraXR6ZW4gJyVzJyhlKW4gLlxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQzOQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnLWRlYjogYnVpbGRpbmcgcGFja2FnZSBgJXMnIGluIGAlcycuXG4iCittc2dzdHIgImRwa2ctZGViOiAnJXMnIHBha2V0ZWEgZXJhaWtpdHplbjogJyVzJy5cbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0NjcgZHBrZy1kZWIvYnVpbGQuYzo1MjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byBtYWtlIHRtcGZpbGUgKGRhdGEpIgorbXNnaWQgImZhaWxlZCB0byBtYWtlIHRlbXBvcmFyeSBmaWxlICglcykiCittc2dzdHIgImh1dHMgZWdpbiBkdSBhbGRpIGJhdGVyYWtvIGZpdHhhdGVnaWEgc29ydHplYW4gKGRhdHVhaykiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDY3IGRwa2ctZGViL2J1aWxkLmM6NDcwIGRwa2ctZGViL2J1aWxkLmM6NDc3CisjOiBkcGtnLWRlYi9idWlsZC5jOjQ4NSBkcGtnLWRlYi9idWlsZC5jOjQ5NCBkcGtnLWRlYi9idWlsZC5jOjQ5OQorIywgZnV6enkKKyN8IG1zZ2lkICJjb250cm9sIgorbXNnaWQgImNvbnRyb2wgbWVtYmVyIgorbXNnc3RyICJrb250cm9sYSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0NzAgZHBrZy1kZWIvYnVpbGQuYzo1MjQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byB1bmxpbmsgdG1wZmlsZSAoZGF0YSksICVzIgorbXNnaWQgImZhaWxlZCB0byB1bmxpbmsgdGVtcG9yYXJ5IGZpbGUgKCVzKSwgJXMiCittc2dzdHIgImh1dHMgZWdpbiBkdSBhbGRpIGJhdGVyYWtvIGZpdHhhdGVnaWEgZGVzZXN0ZWthdHplYW4gKGRhdHVhayksICVzIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ4NSBkcGtnLWRlYi9idWlsZC5jOjU5MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIHJld2luZCB0bXBmaWxlIChkYXRhKSIKK21zZ2lkICJmYWlsZWQgdG8gcmV3aW5kIHRlbXBvcmFyeSBmaWxlICglcykiCittc2dzdHIgImh1dHMgZWdpbiBkdSBhbGRpIGJhdGVyYWtvIGZpdHhhdGVnaWFyZW4gaGFzaWVyYXJhIGpvYXRlYW4gKGRhdHVhaykiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDk0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gZnN0YXQgYXIgbWVtYmVyIGZpbGUgKCVzKSIKK21zZ2lkICJmYWlsZWQgdG8gc3RhdCB0ZW1wb3JhcnkgZmlsZSAoJXMpIgorbXNnc3RyICJodXRzIGVnaW4gZHUgYXItZW4gZml0eGF0ZWdpYXJlbiBraWRlYXJpICglcykgZnN0YXQgbGFudHplYW4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDk4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHdyaXRpbmcgYCVzJyIKK21zZ3N0ciAiZXJyb3JlYSAnJXMnIGlkYXp0ZWFuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjUyMSBkcGtnLWRlYi9idWlsZC5jOjUyNCBkcGtnLWRlYi9idWlsZC5jOjU0NgorIzogZHBrZy1kZWIvYnVpbGQuYzo1NzIgZHBrZy1kZWIvYnVpbGQuYzo1ODAgZHBrZy1kZWIvYnVpbGQuYzo1OTMKKyMsIGZ1enp5CisjfCBtc2dpZCAiYmV0d2VlbiBtZW1iZXJzIgorbXNnaWQgImRhdGEgbWVtYmVyIgorbXNnc3RyICJraWRlZW4gYXJ0ZWFuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjU3MSBkcGtnLWRlYi9idWlsZC5jOjU4MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIHdyaXRlIGZpbGVuYW1lIHRvIHRhciBwaXBlIChkYXRhKSIKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgZmlsZW5hbWUgdG8gdGFyIHBpcGUgKCVzKSIKK21zZ3N0ciAiaHV0cyBlZ2luIGR1IGZpdHhhdGVnaSBpemVuYSB0YXIga2FuYWxpemF6aW9hbiBpZGF6dGVhbiAoZGF0dWFrKSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo1ODQKK21zZ2lkICI8Y29tcHJlc3M+IGZyb20gdGFyIC1jZiIKK21zZ3N0ciAiPGtvbnByaW1pdHVhPiB0YXIgLWNmIGtvbWFuZG9hcmVraW4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzo2MSBkcGtnLWRlYi9leHRyYWN0LmM6NjMKK21zZ2lkICJzaGVsbCBjb21tYW5kIHRvIG1vdmUgZmlsZXMiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjcwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGZpbGUgaW4gJXMgaW4gJS4yNTVzIgorbXNnc3RyICJ1c3Rla2FiZWtvIGZpdHhhdGVnaSBhbWFpZXJhOiAlcyAtICUuMjU1cyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHJlYWRpbmcgJXMgZnJvbSBmaWxlICUuMjU1cyIKK21zZ3N0ciAiZXJyb3JlYSAlcyBpcmFrdXJ0emVhbiAlLjI1NXMgZml0eGF0ZWdpdGlrIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTI1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZWFkIGFyY2hpdmUgYCUuMjU1cyciCittc2dzdHIgImh1dHMgZWdpbiBkdSAnJS4yNTVzJyBhcnR4aWJvYSBpcmFrdXJ0emVhbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjEyNworbXNnaWQgImZhaWxlZCB0byBmc3RhdCBhcmNoaXZlIgorbXNnc3RyICJmc3RhdDogaHV0cyBlZ2luIGR1IGFydHhpYm9hcmVraW4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxMzEKKyMsIGZ1enp5CisjfCBtc2dpZCAiYXJjaGl2ZSBoYXMgbm8gZG90IGluIHZlcnNpb24gbnVtYmVyIgorbXNnaWQgImFyY2hpdmUgbWFnaWMgdmVyc2lvbiBudW1iZXIiCittc2dzdHIgImFydHhpYm9hayBleiBkdSBwdW50dXJpayBiZXJ0c2lvLXplbmJha2lhbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE0MworIywgZnV6enkKKyN8IG1zZ2lkICJhcmNoaXZlIGhhcyBubyBuZXdsaW5lcyBpbiBoZWFkZXIiCittc2dpZCAiYXJjaGl2ZSBtZW1iZXIgaGVhZGVyIgorbXNnc3RyICJhcnR4aWJvYWsgZXogZHUgbGVycm8tamF1emlyaWsgZ29pYnVydWFuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTQ4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgcGFydCBudW1iZXIiCittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIGFyY2hpdmUgaGVhZGVyIG1hZ2ljIgorbXNnc3RyICInJS4yNTBzJyBmaXR4YXRlZ2lhIGhvbmRhdHV0YSBkYWdvIC0gb2tlcnJla28gemF0aSBrb3B1cnVhIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTU1CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgbm90IGEgZGViaWFuIGJpbmFyeSBhcmNoaXZlICh0cnkgZHBrZy1zcGxpdD8pIgorbXNnc3RyICIiCisiJyUuMjUwcycgZml0eGF0ZWdpYSBleiBkYSBkZWJpYW4tZW4gYXJ0eGlibyBiaXRhcnJhIChkcGtnLXNwbGl0IHByb2JhdHUgIgorIm5haGk/KSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE1OQorIywgZnV6enkKKyN8IG1zZ2lkICJhcmNoaXZlIGhhcyBubyBkb3QgaW4gdmVyc2lvbiBudW1iZXIiCittc2dpZCAiYXJjaGl2ZSBpbmZvcm1hdGlvbiBoZWFkZXIgbWVtYmVyIgorbXNnc3RyICJhcnR4aWJvYWsgZXogZHUgcHVudHVyaWsgYmVydHNpby16ZW5iYWtpYW4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNjIKK21zZ2lkICJhcmNoaXZlIGhhcyBubyBuZXdsaW5lcyBpbiBoZWFkZXIiCittc2dzdHIgImFydHhpYm9hayBleiBkdSBsZXJyby1qYXV6aXJpayBnb2lidXJ1YW4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNjUKK21zZ2lkICJhcmNoaXZlIGhhcyBubyBkb3QgaW4gdmVyc2lvbiBudW1iZXIiCittc2dzdHIgImFydHhpYm9hayBleiBkdSBwdW50dXJpayBiZXJ0c2lvLXplbmJha2lhbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE2OAorIywgYy1mb3JtYXQKK21zZ2lkICJhcmNoaXZlIHZlcnNpb24gJS4yNTBzIG5vdCB1bmRlcnN0b29kLCBnZXQgbmV3ZXIgZHBrZy1kZWIiCittc2dzdHIgIiUuMjUwcyBhcnR4aWJvYXJlbiBiZXJ0c2lvYSBleiBkYSB1bGVydHplbiwgbG9ydHUgZHBrZy1kZWIgYmVycmlhZ29hIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTc5IGRwa2ctZGViL2V4dHJhY3QuYzoyMDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInNraXBwZWQgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ2lkICJza2lwcGVkIGFyY2hpdmUgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ3N0ciAiJXM6IGtpZGUtZGF0dWFrIHNhbHRhdHUgZGlyYSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE5NAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZSBgJS4yNTBzJyBjb250YWlucyB1bnVuZGVyc3Rvb2QgZGF0YSBtZW1iZXIgJS4qcywgZ2l2aW5nIHVwIgorbXNnaWQgImFyY2hpdmUgJyUuMjUwcycgY29udGFpbnMgbm90IHVuZGVyc3Rvb2QgZGF0YSBtZW1iZXIgJS4qcywgZ2l2aW5nIHVwIgorbXNnc3RyICInJS4yNTBzJyBmaXR4YXRlZ2lhayAlLipzIGRhdHUta2lkZSB1bGVydGV6aW5hIGRhdWthLCB1dHppIGVnaW5nbyBkYSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE5OQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZSBgJS4yNTBzJyBjb250YWlucyB0d28gY29udHJvbCBtZW1iZXJzLCBnaXZpbmcgdXAiCittc2dpZCAiYXJjaGl2ZSAnJS4yNTBzJyBjb250YWlucyB0d28gY29udHJvbCBtZW1iZXJzLCBnaXZpbmcgdXAiCittc2dzdHIgIiclLjI1MHMnIGZpdHhhdGVnaWFrIGJpIGtvbnRyb2wta2lkZSBkYXV6a2EsIHV0emkgZWdpbmdvIGRhIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjE0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiIG5ldyBkZWJpYW4gcGFja2FnZSwgdmVyc2lvbiAlcy5cbiIKKyN8ICIgc2l6ZSAlbGQgYnl0ZXM6IGNvbnRyb2wgYXJjaGl2ZT0gJXppIGJ5dGVzLlxuIgorbXNnaWQgIiIKKyIgbmV3IGRlYmlhbiBwYWNrYWdlLCB2ZXJzaW9uICVzLlxuIgorIiBzaXplICVqZCBieXRlczogY29udHJvbCBhcmNoaXZlPSAlamQgYnl0ZXMuXG4iCittc2dzdHIgIiIKKyIgZGViaWFuIHBha2V0ZSBiZXJyaWEsICVzIGJlcnRzaW9hLlxuIgorIiB0YW1haW5hOiAlbGQgYnl0ZTsga29udHJvbC1hcnR4aWJvYT0gJXppIGJ5dGUuXG4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyMzIKK21zZ2lkICJhcmNoaXZlIGNvbnRyb2wgbWVtYmVyIHNpemUiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIzNQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYXJjaGl2ZSBoYXMgbWFsZm9ybWF0dGVkIGNvbnRyb2wgbGVuZ3RoIGAlcyciCittc2dpZCAiYXJjaGl2ZSBoYXMgbWFsZm9ybWF0dGVkIGNvbnRyb2wgbWVtYmVyIHNpemUgJyVzJyIKK21zZ3N0ciAiYXJ0eGlib2FrIGdhaXpraSBvc2F0dXRha28gJyVzJyBrb250cm9sLWx1emVyYSBkYXVrYSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI0MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic2tpcHBlZCBtZW1iZXIgZGF0YSBmcm9tICVzIgorbXNnaWQgInNraXBwZWQgYXJjaGl2ZSBjb250cm9sIG1lbWJlciBkYXRhIGZyb20gJXMiCittc2dzdHIgIiVzOiBraWRlLWRhdHVhayBzYWx0YXR1IGRpcmEiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNDYKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIgb2xkIGRlYmlhbiBwYWNrYWdlLCB2ZXJzaW9uICVzLlxuIgorI3wgIiBzaXplICVsZCBieXRlczogY29udHJvbCBhcmNoaXZlPSAlemksIG1haW4gYXJjaGl2ZT0gJWxkLlxuIgorbXNnaWQgIiIKKyIgb2xkIGRlYmlhbiBwYWNrYWdlLCB2ZXJzaW9uICVzLlxuIgorIiBzaXplICVqZCBieXRlczogY29udHJvbCBhcmNoaXZlPSAlamQsIG1haW4gYXJjaGl2ZT0gJWpkLlxuIgorbXNnc3RyICIiCisiIGRlYmlhbiBwYWtldGUgemFoYXJyYSwgJXMgYmVydHNpb2EuXG4iCisiIHRhbWFpbmE6ICVsZCBieXRlOyBrb250cm9sLWFydHhpYm9hPSAlemksIGFydHhpYm8gbmFndXNpYT0gJWxkLlxuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjU1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnLWRlYjogZmlsZSBsb29rcyBsaWtlIGl0IG1pZ2h0IGJlIGFuIGFyY2hpdmUgd2hpY2ggaGFzIGJlZW5cbiIKKyJkcGtnLWRlYjogICAgY29ycnVwdGVkIGJ5IGJlaW5nIGRvd25sb2FkZWQgaW4gQVNDSUkgbW9kZVxuIgorbXNnc3RyICIiCisiZHBrZy1kZWI6IGJhZGlydWRpIGZpdHhhdGVnaWEgQVNDSUkgbW9kdWFuIGRlc2thcmdhdHUgZGVsYWtvIFxuIgorImRwa2ctZGViOiAgICBob25kYXR1IGRlbiBhcnR4aWJvIGJhdCBkZWxhXG4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCUuMjU1cycgaXMgbm90IGEgZGViaWFuIGZvcm1hdCBhcmNoaXZlIgorbXNnc3RyICInJS4yNTVzJyBleiBkYSBkZWJpYW4gZm9ybWF0dWtvIGFydHhpYm8gYmF0IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjY2Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIHRvIHBpcGUgaW4gY29weSIKK21zZ3N0ciAiaHV0cyBlZ2luIGR1IGthbmFsaXphemlvYW4gaWRhenRlYW4ga29waWFuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjY4Cittc2dpZCAiZmFpbGVkIHRvIGNsb3NlIHBpcGUgaW4gY29weSIKK21zZ3N0ciAiaHV0cyBlZ2luIGR1IGthbmFsaXphemlvYSBpeHRlYW4ga29waWFuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6Mjg0Cittc2dpZCAiZGF0YSIKK21zZ3N0ciAiZGF0dWFrIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzA3Cittc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIGRpcmVjdG9yeSIKK21zZ3N0ciAiaHV0cyBlZ2luIGR1IGRpcmVrdG9yaW9yYSBjaGRpciBlZ2l0ZWFuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzEwCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBkaXJlY3RvcnkiCittc2dzdHIgImh1dHMgZWdpbiBkdSBkaXJla3RvcmlvYSBzb3J0emVhbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMxMgorbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byBkaXJlY3RvcnkgYWZ0ZXIgY3JlYXRpbmcgaXQiCittc2dzdHIgImh1dHMgZWdpbiBkdSBkaXJla3RvcmlvcmEgY2hkaXIgZWdpdGVhbiwgZGlyZWt0b3Jpb2Egc29ydHUgb25kb3JlbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMyMworbXNnaWQgIjxkZWNvbXByZXNzPiIKK21zZ3N0ciAiPGRlc2tvbnByaW1pdHU+IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzI1Cittc2dpZCAicGFzdGUiCittc2dzdHIgIml0c2F0c2kiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozNDIgZHBrZy1kZWIvZXh0cmFjdC5jOjM2MyBkcGtnLWRlYi9leHRyYWN0LmM6NDAyCisjOiBkcGtnLWRlYi9pbmZvLmM6NzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhIC5kZWIgZmlsZW5hbWUgYXJndW1lbnQiCittc2dzdHIgIi0tJXM6IC5kZWIgZml0eGF0ZWdpLWl6ZW4gYXJndW1lbnR1IGJhdCBiZWhhciBkdSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjM0NyBkcGtnLWRlYi9leHRyYWN0LmM6NDA2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyItLSVzIG5lZWRzIGEgdGFyZ2V0IGRpcmVjdG9yeS5cbiIKKyJQZXJoYXBzIHlvdSBzaG91bGQgYmUgdXNpbmcgZHBrZyAtLWluc3RhbGwgPyIKK21zZ3N0ciAiIgorIi0tJXM6IGhlbGJ1cnUgZGlyZWt0b3JpbyBiYXQgYmVoYXIgZHUuXG4iCisiQmVoYXJiYWRhIGRwa2cgLS1pbnN0YWxsIGVyYWJpbGkgbmFoaSB6ZW51ZW4/IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzUwIGRwa2ctZGViL2V4dHJhY3QuYzo0MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyB0YWtlcyBhdCBtb3N0IHR3byBhcmd1bWVudHMgKC5kZWIgYW5kIGRpcmVjdG9yeSkiCittc2dzdHIgIi0tJXM6IGJpIGFyZ3VtZW50dSBoYXJ0emVuIGRpdHUgZ3V0eGllbmV6ICguZGViIGV0YSBkaXJla3RvcmlvYSkiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyB0YWtlcyBvbmx5IG9uZSBhcmd1bWVudCAoLmRlYiBmaWxlbmFtZSkiCittc2dzdHIgIi0tJXM6IGFyZ3VtZW50dSBiYXQgYmFrYXJyaWsgaGFydHplbiBkdSAoLmRlYiBmaXR4YXRlZ2ktaXplbmEpIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6NjMKK21zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gYC8nIGZvciBjbGVhbnVwIgorbXNnc3RyICJodXRzIGVnaW4gZHUgY2hkaXIgJy8nIGVnaXRlYW4gZ2FyYml0emVrbyIKKworIzogZHBrZy1kZWIvaW5mby5jOjEwNgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiY2Fubm90IHN0YXQgZmlsZSAnJXMnIgorbXNnaWQgImNvbnRyb2wgZmlsZSAnJXMnIgorbXNnc3RyICJlemluIGRhJyVzJyBmaXR4YXRlZ2lhIGF0eml0dSIKKworIzogZHBrZy1kZWIvaW5mby5jOjExMAorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnLWRlYjogYCUuMjU1cycgY29udGFpbnMgbm8gY29udHJvbCBjb21wb25lbnQgYCUuMjU1cydcbiIKK21zZ3N0ciAiZHBrZy1kZWI6ICclLjI1NXMnOiBleiBkYXVrYSAnJS4yNTVzJyBrb250cm9sLW9zYWdhaXJpa1xuIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgIm9wZW4gY29tcG9uZW50IGAlLjI1NXMnIChpbiAlLjI1NXMpIGZhaWxlZCBpbiBhbiB1bmV4cGVjdGVkIHdheSIKK21zZ3N0ciAiIgorImh1dHMgZWdpbiBkdSAnJS4yNTVzJyBvc2FnYWlhIGlyZWtpdHplYW4gKCUuMjU1cyksIGVzcGVybyBleiB6ZW4gbW9kdWFuIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTIxCisjLCBjLWZvcm1hdAorbXNnaWQgIiVkIHJlcXVlc3RlZCBjb250cm9sIGNvbXBvbmVudCBpcyBtaXNzaW5nIgorbXNnaWRfcGx1cmFsICIlZCByZXF1ZXN0ZWQgY29udHJvbCBjb21wb25lbnRzIGFyZSBtaXNzaW5nIgorbXNnc3RyWzBdICJFc2thdHV0YWtvIGtvbnRyb2wgb3NhZ2FpICVkIGZhbHRhIGRhIgorbXNnc3RyWzFdICJFc2thdHV0YWtvIGtvbnRyb2wgJWQgb3NhZ2FpIGZhbHRhIGRpcmEiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMzkgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQyNAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc2NhbiBkaXJlY3RvcnkgYCUuMjU1cyciCittc2dzdHIgImV6aW4gZGEgJyUuMjU1cycgZGlyZWt0b3Jpb2EgYXp0ZXJ0dSIKKworIzogZHBrZy1kZWIvaW5mby5jOjE0OAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc3RhdCBgJS4yNTVzJyAoaW4gYCUuMjU1cycpIgorbXNnc3RyICJlemluIGRhICclLjI1NXMnIGF0eml0dSAoJyUuMjU1cycpIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTUyCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBvcGVuIGAlLjI1NXMnIChpbiBgJS4yNTVzJykiCittc2dzdHIgImV6aW4gZGEgJyUuMjU1cycgaXJla2kgKCclLjI1NXMnKSIKKworIzogZHBrZy1kZWIvaW5mby5jOjE2NyBkcGtnLWRlYi9pbmZvLmM6MTg1IGRwa2ctZGViL2luZm8uYzoxOTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgYCUuMjU1cycgKGluIGAlLjI1NXMnKSIKK21zZ3N0ciAiZXppbiBkYSAnJS4yNTVzJyBpcmFrdXJyaSAoJyUuMjU1cycpIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTcwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIgJTdsZCBieXRlcywgJTVkIGxpbmVzICAgJWMgICUtMjAuMTI3cyAlLjEyN3NcbiIKK21zZ2lkICIgJTdqZCBieXRlcywgJTVkIGxpbmVzICAgJWMgICUtMjAuMTI3cyAlLjEyN3NcbiIKK21zZ3N0ciAiICU3bGQgYnl0ZSwgJTVkIGxlcnJvICAgJWMgICUtMjAuMTI3cyAlLjEyN3NcbiIKKworIzogZHBrZy1kZWIvaW5mby5jOjE3NAorIywgYy1mb3JtYXQKK21zZ2lkICIgICAgIG5vdCBhIHBsYWluIGZpbGUgICAgICAgICAgJS4yNTVzXG4iCittc2dzdHIgIiAgICAgZXogZGEgZml0eGF0ZWdpIGFycnVudGEgICAlLjI1NXNcbiIKKworIzogZHBrZy1kZWIvaW5mby5jOjE4NgorbXNnaWQgIihubyBgY29udHJvbCcgZmlsZSBpbiBjb250cm9sIGFyY2hpdmUhKVxuIgorbXNnc3RyICIoZXogZGFnbyAnY29udHJvbCcgZml0eGF0ZWdpcmlrIGtvbnRyb2wtYXJ0eGlib2FuISlcbiIKKworIzogZHBrZy1kZWIvaW5mby5jOjIyMgorbXNnaWQgImNvdWxkIG5vdCBvcGVuIHRoZSBgY29udHJvbCcgY29tcG9uZW50IgorbXNnc3RyICJlemluIGl6YW4gZGEgJ2NvbnRyb2wnIG9zYWdhaWEgaXJla2kiCisKKyM6IGRwa2ctZGViL2luZm8uYzoyNjEKK21zZ2lkICJmYWlsZWQgZHVyaW5nIHJlYWQgb2YgYGNvbnRyb2wnIGNvbXBvbmVudCIKK21zZ3N0ciAiaHV0cyBlZ2luIGR1ICdjb250cm9sJyBvc2FnYWlhIGlyYWt1cnR6ZWFuIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MjYzCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgdGhlICclcycgY29tcG9uZW50IgorbXNnc3RyICJlcnJvcmVhICclcycgb3NhZ2FpYSBpeHRlYW4iCisKKyM6IGRwa2ctZGViL2luZm8uYzoyNzgKK21zZ2lkICJFcnJvciBpbiBmb3JtYXQiCittc2dzdHIgIkVycm9yZWEgZm9ybWF0dWFuIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MzI4Cittc2dpZCAiLS1jb250ZW50cyB0YWtlcyBleGFjdGx5IG9uZSBhcmd1bWVudCIKK21zZ3N0ciAiLS1jb250ZW50czogYXJndW1lbnR1IGJhdCBoYXJ0emVuIGR1IHplaGF6a2kiCisKKyM6IGRwa2ctZGViL21haW4uYzo1NAorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIGFyY2hpdmUgYmFja2VuZCB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICInJXMnIGRlYmlhbiBwYWtldGUtYXJ0eGlib2FyZW4gYW1haWVyYWtvICVzIGJlcnRzaW9hLlxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6NzMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJDb21tYW5kczpcbiIKKyN8ICIgIC1ifC0tYnVpbGQgPGRpcmVjdG9yeT4gWzxkZWI+XSAgIEJ1aWxkIGFuIGFyY2hpdmUuXG4iCisjfCAiICAtY3wtLWNvbnRlbnRzIDxkZWI+ICAgICAgICAgICAgICBMaXN0IGNvbnRlbnRzLlxuIgorI3wgIiAgLUl8LS1pbmZvIDxkZWI+IFs8Y2ZpbGU+IC4uLl0gICAgU2hvdyBpbmZvIHRvIHN0ZG91dC5cbiIKKyN8ICIgIC1XfC0tc2hvdyA8ZGViPiAgICAgICAgICAgICAgICAgIFNob3cgaW5mb3JtYXRpb24gb24gcGFja2FnZShzKVxuIgorI3wgIiAgLWZ8LS1maWVsZCA8ZGViPiBbPGNmaWVsZD4gLi4uXSAgU2hvdyBmaWVsZChzKSB0byBzdGRvdXQuXG4iCisjfCAiICAtZXwtLWNvbnRyb2wgPGRlYj4gWzxkaXJlY3Rvcnk+XSBFeHRyYWN0IGNvbnRyb2wgaW5mby5cbiIKKyN8ICIgIC14fC0tZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PiAgIEV4dHJhY3QgZmlsZXMuXG4iCisjfCAiICAtWHwtLXZleHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+ICBFeHRyYWN0ICYgbGlzdCBmaWxlcy5cbiIKKyN8ICIgIC0tZnN5cy10YXJmaWxlIDxkZWI+ICAgICAgICAgICAgIE91dHB1dCBmaWxlc3lzdGVtIHRhcmZpbGUuXG4iCisjfCAiXG4iCittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLWJ8LS1idWlsZCA8ZGlyZWN0b3J5PiBbPGRlYj5dICAgQnVpbGQgYW4gYXJjaGl2ZS5cbiIKKyIgIC1jfC0tY29udGVudHMgPGRlYj4gICAgICAgICAgICAgIExpc3QgY29udGVudHMuXG4iCisiICAtSXwtLWluZm8gPGRlYj4gWzxjZmlsZT4gLi4uXSAgICBTaG93IGluZm8gdG8gc3Rkb3V0LlxuIgorIiAgLVd8LS1zaG93IDxkZWI+ICAgICAgICAgICAgICAgICAgU2hvdyBpbmZvcm1hdGlvbiBvbiBwYWNrYWdlKHMpXG4iCisiICAtZnwtLWZpZWxkIDxkZWI+IFs8Y2ZpZWxkPiAuLi5dICBTaG93IGZpZWxkKHMpIHRvIHN0ZG91dC5cbiIKKyIgIC1lfC0tY29udHJvbCA8ZGViPiBbPGRpcmVjdG9yeT5dIEV4dHJhY3QgY29udHJvbCBpbmZvLlxuIgorIiAgLXh8LS1leHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+ICAgRXh0cmFjdCBmaWxlcy5cbiIKKyIgIC1YfC0tdmV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gIEV4dHJhY3QgJiBsaXN0IGZpbGVzLlxuIgorIiAgLVJ8LS1yYXctZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRXh0cmFjdCBjb250cm9sIGluZm8gYW5kIGZpbGVzLlxuIgorIiAgLS1mc3lzLXRhcmZpbGUgPGRlYj4gICAgICAgICAgICAgT3V0cHV0IGZpbGVzeXN0ZW0gdGFyZmlsZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIktvbWFuZG9hazpcbiIKKyIgIC1ifC0tYnVpbGQgPGRpcmVrdG9yaW9hPiBbPGRlYj5dICAgZXJhaWtpIGFydHhpYm8gYmF0LlxuIgorIiAgLWN8LS1jb250ZW50cyA8ZGViPiAgICAgICAgICAgICAgICB6ZXJyZW5kYXR1IGVkdWtpYS5cbiIKKyIgIC1JfC0taW5mbyA8ZGViPiBbPGNmaWxlPi4uLl0gICAgICAgZXJha3V0c2kgaW5mb3JtYXppb2Egc3Rkb3V0LWVuLlxuIgorIiAgLVd8LS1zaG93IDxkZWI+ICAgICAgICAgICAgICAgICAgICBlcmFrdXRzaSBpbmZvcm1hemlvYSBwYWtldGUoZXQpYW5cbiIKKyIgIC1mfC0tZmllbGQgPGRlYj4gWzxjZmllbGQ+Li4uXSAgICAgZXJha3V0c2kgZXJlbXVhKGspIHN0ZG91dC1lbi5cbiIKKyIgIC1lfC0tY29udHJvbCA8ZGViPiBbPGRpcmVrdG9yaW9hPl0gZXJhdXppIGtvbnRyb2wtaW5mb3JtYXppb2EuXG4iCisiICAteHwtLWV4dHJhY3QgPGRlYj4gPGRpcmVrdG9yaW9hPiAgIGVyYXV6aSBmaXR4YXRlZ2lhay5cbiIKKyIgIC1YfC0tdmV4dHJhY3QgPGRlYj4gPGRpcmVrdG9yaW9hPiAgZXJhdXppIGV0YSB6ZXJyZW5kYXR1IGZpdHhhdGVnaWFrLlxuIgorIiAgLS1mc3lzLXRhcmZpbGUgPGRlYj4gICAgICAgICAgICAgICBlbWFuIGZpdHhhdGVnaS1zaXN0ZW1hcmVuIHRhciBcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpdHhhdGVnaWEuXG4iCisiXG4iCisKKyM6IGRwa2ctZGViL21haW4uYzo5MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiPGRlYj4gaXMgdGhlIGZpbGVuYW1lIG9mIGEgRGViaWFuIGZvcm1hdCBhcmNoaXZlLlxuIgorIjxjZmlsZT4gaXMgdGhlIG5hbWUgb2YgYW4gYWRtaW5pc3RyYXRpdmUgZmlsZSBjb21wb25lbnQuXG4iCisiPGNmaWVsZD4gaXMgdGhlIG5hbWUgb2YgYSBmaWVsZCBpbiB0aGUgbWFpbiBgY29udHJvbCcgZmlsZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIjxkZWI+IERlYmlhbiBmb3JtYXR1a28gYXJ0eGlib2VuIGZpdHhhdGVnaS1pemVuYSBkYS5cbiIKKyI8Y2ZpbGU+IGZpdHhhdGVnaS1vc2FnYWkgYWRtaW5pc3RyYXRpYm9hcmVuIGl6ZW5hIGRhLlxuIgorIjxjZmllbGQ+ICdjb250cm9sJyBmaXR4YXRlZ2kgbmFndXNpa28gZXJlbXVlbiBpemVuYSBkYS5cbiIKKyJcbiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjk5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiT3B0aW9uczpcbiIKKyN8ICIgIC0tc2hvd2Zvcm1hdD08Zm9ybWF0PiAgICAgICAgICAgIFVzZSBhbHRlcm5hdGl2ZSBmb3JtYXQgZm9yIC0tc2hvdy5cbiIKKyN8ICIgIC1EICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVuYWJsZSBkZWJ1Z2dpbmcgb3V0cHV0LlxuIgorI3wgIiAgLS1vbGQsIC0tbmV3ICAgICAgICAgICAgICAgICAgICAgU2VsZWN0IGFyY2hpdmUgZm9ybWF0LlxuIgorI3wgIiAgLS1ub2NoZWNrICAgICAgICAgICAgICAgICAgICAgICAgU3VwcHJlc3MgY29udHJvbCBmaWxlIGNoZWNrIChidWlsZCAiCisjfCAiYmFkXG4iCisjfCAiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhY2thZ2VzKS5cbiIKKyN8ICIgIC16IyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNldCB0aGUgY29tcHJlc3Npb24gbGV2ZWwgd2hlbiAiCisjfCAiYnVpbGRpbmcuXG4iCisjfCAiICAtWjx0eXBlPiAgICAgICAgICAgICAgICAgICAgICAgICBTZXQgdGhlIGNvbXByZXNzaW9uIHR5cGUgdXNlZCB3aGVuICIKKyN8ICJidWlsZGluZy5cbiIKKyN8ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWxsb3dlZCB0eXBlczogZ3ppcCwgeHosIGJ6aXAyLCAiCisjfCAibHptYSwgbm9uZS5cbiIKKyN8ICJcbiIKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tc2hvd2Zvcm1hdD08Zm9ybWF0PiAgICAgICAgICAgIFVzZSBhbHRlcm5hdGl2ZSBmb3JtYXQgZm9yIC0tc2hvdy5cbiIKKyIgIC12LCAtLXZlcmJvc2UgICAgICAgICAgICAgICAgICAgIEVuYWJsZSB2ZXJib3NlIG91dHB1dC5cbiIKKyIgIC1EICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVuYWJsZSBkZWJ1Z2dpbmcgb3V0cHV0LlxuIgorIiAgLS1vbGQsIC0tbmV3ICAgICAgICAgICAgICAgICAgICAgU2VsZWN0IGFyY2hpdmUgZm9ybWF0LlxuIgorIiAgLS1ub2NoZWNrICAgICAgICAgICAgICAgICAgICAgICAgU3VwcHJlc3MgY29udHJvbCBmaWxlIGNoZWNrIChidWlsZCBiYWRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFja2FnZXMpLlxuIgorIiAgLXojICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU2V0IHRoZSBjb21wcmVzc2lvbiBsZXZlbCB3aGVuIGJ1aWxkaW5nLlxuIgorIiAgLVo8dHlwZT4gICAgICAgICAgICAgICAgICAgICAgICAgU2V0IHRoZSBjb21wcmVzc2lvbiB0eXBlIHVzZWQgd2hlbiAiCisiYnVpbGRpbmcuXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFsbG93ZWQgdHlwZXM6IGd6aXAsIHh6LCBiemlwMiwgbHptYSwgIgorIm5vbmUuXG4iCisiXG4iCittc2dzdHIgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1zaG93Zm9ybWF0PTxmb3JtYXR1YT4gICAgZXJhYmlsaSBiZXN0ZSBmb3JtYXR1IGJhdCAtLXNob3cgZWdpdGVrb1xuIgorIiAgLUQgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2FpdHUgYXJhemtldGEtaXJ0ZWVyYVxuIgorIiAgLS1vbGQsIC0tbmV3ICAgICAgICAgICAgICBoYXV0YXR1IGFydHhpYm8tZm9ybWF0dWFcbiIKKyIgIC0tbm9jaGVjayAgICAgICAgICAgICAgICBrZW5kdSBrb250cm9sLWZpdHhhdGVnaWFyZW4gZWdpYXp0YXBlbmEgXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGVyYWlraSBwYWtldGUgaG9uZGF0dWFrKS5cbiIKKyIgIC16IyAgICAgICAgICAgICAgICAgICAgICAgICAgZXJhaWtpdHplYW4ga29ucHJlc2lvYSBlemFydHpla29cbiIKKyIgIC1aPHR5cGU+ICAgICAgICAgICAgICAgIGV6YXJyaSBrb25wcmVzaW8gbW90YSBlcmFpa2l0emVhbiBlcmFiaWx0emVrby5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhbGlvIGVyYWJpbGdhcnJpYWs6IGd6aXAsIHh6LCBiemlwMiwgbHptYSwgIgorIm5vbmVcbiIKKyJcbiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjEyMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiVXNlIGBkcGtnJyB0byBpbnN0YWxsIGFuZCByZW1vdmUgcGFja2FnZXMgZnJvbSB5b3VyIHN5c3RlbSwgb3JcbiIKKyJgZHNlbGVjdCcgb3IgYGFwdGl0dWRlJyBmb3IgdXNlci1mcmllbmRseSBwYWNrYWdlIG1hbmFnZW1lbnQuICBQYWNrYWdlc1xuIgorInVucGFja2VkIHVzaW5nIGBkcGtnLWRlYiAtLWV4dHJhY3QnIHdpbGwgYmUgaW5jb3JyZWN0bHkgaW5zdGFsbGVkICFcbiIKK21zZ3N0ciAiIgorIlxuIgorIkVyYWJpbGkgJ2Rwa2cnIHBha2V0ZWFrIGluc3RhbGF0emVrbyBldGEgc2lzdGVtYXRpayBrZW50emVrbywgZWRvXG4iCisiJ2RzZWxlY3QnIGVkbyAnYXB0aXR1ZGUnIHBha2V0ZWFrIGVycmF6YWdvIGt1ZGVhdHpla28uICdkcGtnLWRlYiAtLWV4dHJhY3QnXG4iCisiZXJhYmlsaXogZGVza29ucHJpbWl0dXRha28gcGFrZXRlYWsgZ2FpemtpIGluc3RhbGF0dWtvIGRpcmEhXG4iCisKKyM6IGRwa2ctZGViL21haW4uYzoxMzIKK21zZ2lkICIiCisiVHlwZSBkcGtnLWRlYiAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgbWFuaXB1bGF0aW5nICouZGViIGZpbGVzO1xuIgorIlR5cGUgZHBrZyAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgaW5zdGFsbGluZyBhbmQgZGVpbnN0YWxsaW5nIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorIklkYXR6aSBkcGtnLWRlYiAtLWhlbHAgKi5kZWIgZml0eGF0ZWdpYWsgbWFuaXB1bGF0emVrbyBsYWd1bnR6YSBsb3J0emVrbztcbiIKKyJJZGF0emkgZHBrZyAtLWhlbHAgcGFrZXRlYWsgaW5zdGFsYXR1IGV0YSBkZXNpbnN0YWxhdHpla28gbGFndW50emEgbG9ydHpla28uIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTQ4CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgaW50ZWdlciBmb3IgLSVjOiAnJS4yNTBzJyIKK21zZ3N0ciAiLSVjIGF1a2VyYXJlbiBvc29rb2EgYmFsaW9nYWJlYTogJyUuMjUwcyciCisKKyM6IGRwa2ctZGViL21haW4uYzoxNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjb21wcmVzc2lvbiBsZXZlbCBmb3IgLSVjOiAlbGQnIgorbXNnc3RyICItJWMgYXVrZXJhcmVuIGtvbnByZXNpby1tYWlsYSBiYWxpb2dhYmVhOiAlbGQnIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTYxCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gY29tcHJlc3Npb24gdHlwZSBgJXMnISIKK21zZ3N0ciAiJXMga29ucHJlc2lvIG1vdGEgZXplemFndW5hISIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6NTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIGRpZ2l0IChjb2RlICVkKSBpbiAlcyIKK21zZ3N0ciAiIgorIiclLjI1MHMnIGZpdHhhdGVnaWEgaG9uZGF0dXRhIGRhZ28gLSBva2VycmVrbyBkaWdpdHVhICglZCBrb2RlYSkgJXMoZSluIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzo2MAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSAlLjI1MHMgbWlzc2luZyIKK21zZ3N0ciAiJyUuMjUwcycgZml0eGF0ZWdpYSBob25kYXR1dGEgZGFnbyAtICUuMjUwcyBmYWx0YSBkYSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gbWlzc2luZyBuZXdsaW5lIGFmdGVyICUuMjUwcyIKK21zZ3N0ciAiIgorIiclLjI1MHMnIGZpdHhhdGVnaWEgaG9uZGF0dXRhIGRhZ28gLSAlLjI1MHMocillbiBvbmRvcmVuIGxlcnJvLWphdXppYSBmYWx0YSAiCisiZGEiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjg5IGRwa2ctc3BsaXQvbWFpbi5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciByZWFkaW5nICUuMjUwcyIKK21zZ3N0ciAiZXJyb3JlYSAlLjI1MHMgaXJha3VydHplYW4iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEwMworIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgbWFnaWMgYXQgZW5kIG9mIGZpcnN0IGhlYWRlciIKK21zZ3N0ciAiIgorIiclLjI1MHMnIGZpdHhhdGVnaWEgaG9uZGF0dXRhIGRhZ28gLSBva2VycmVrbyBcIm1hZ2ljXCIgbGVoZW5lbmdvICIKKyJnb2lidXJ1YXJlbiBhbWFpZXJhbiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTEzCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBwYWRkaW5nIGNoYXJhY3RlciAoY29kZSAlZCkiCittc2dzdHIgIiIKKyInJS4yNTBzJyBmaXR4YXRlZ2lhIGhvbmRhdHV0YSBkYWdvIC0gb2tlcnJla28ga2FyYWt0ZXJlIGJldGVnYXJyaWEgKCVkIGtvZGVhKSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTE3CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIG51bGxzIGluIGluZm8gc2VjdGlvbiIKK21zZ3N0ciAiJyUuMjUwcycgZml0eGF0ZWdpYSBob25kYXR1dGEgZGFnbyAtIG51bHVhayBpbmZvcm1hemlvYXJlbiBzZWt6aW9hbiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTIyCittc2dpZCAiZm9ybWF0IHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICJmb3JtYXR1YXJlbiBiZXJ0c2lvLXplbmJha2lhIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBmb3JtYXQgdmVyc2lvbiBgJS4yNTBzJyAtIHlvdSBuZWVkIGEgbmV3ZXIgZHBrZy1zcGxpdCIKK21zZ3N0ciAiIgorIiclLjI1MHMnIGZpdHhhdGVnaWEgZm9ybWF0dWFyZW4gJyUuMjUwcycgYmVydHNpb2tvYSBkYSAtIGRwa2ctc3BsaXQgIgorImJlcnJpYWdvYSBiZWhhciBkdXp1IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMjcKK21zZ2lkICJwYWNrYWdlIG5hbWUiCittc2dzdHIgInBha2V0ZS1pemVuYSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTI4Cittc2dpZCAicGFja2FnZSB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAicGFrZXRlYXJlbiBiZXJ0c2lvLXplbmJha2lhIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMjkKK21zZ2lkICJwYWNrYWdlIGZpbGUgTUQ1IGNoZWNrc3VtIgorbXNnc3RyICJwYWtldGUgZml0eGF0ZWdpYXJlbiBNRDUga29udHJvbC1iYXR1cmEiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEzMgorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgTUQ1IGNoZWNrc3VtIGAlLjI1MHMnIgorbXNnc3RyICIiCisiJyUuMjUwcycgZml0eGF0ZWdpYSBob25kYXR1dGEgZGFnbyAtIG9rZXJyZWtvIE1ENSBrb250cm9sLWJhdHVyYTogJyUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEzNCBkcGtnLXNwbGl0L2luZm8uYzoxMzUKK21zZ2lkICJhcmNoaXZlIHRvdGFsIHNpemUiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTM2IGRwa2ctc3BsaXQvaW5mby5jOjEzNworIywgZnV6enkKKyN8IG1zZ2lkICJwYXJ0IG9mZnNldCIKK21zZ2lkICJhcmNoaXZlIHBhcnQgb2Zmc2V0IgorbXNnc3RyICJ6YXRpYXJlbiBkZXNwbGF6YW1lbmR1YSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTM5CisjLCBmdXp6eQorI3wgbXNnaWQgInBhcnQgbnVtYmVycyIKK21zZ2lkICJhcmNoaXZlIHBhcnQgbnVtYmVycyIKK21zZ3N0ciAiemF0aWFyZW4gemVuYmFraWFrIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIG5vIHNsYXNoIGJldHdlZW4gcGFydCBudW1iZXJzIgorbXNnaWQgImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIG5vIHNsYXNoIGJldHdlZW4gYXJjaGl2ZSBwYXJ0IG51bWJlcnMiCittc2dzdHIgIiIKKyInJS4yNTBzJyBmaXR4YXRlZ2lhIGhvbmRhdHV0YSBkYWdvIC0gYmFycmFyaWsgZXogemF0aWFyZW4gemVuYmFraWVuIGFydGVhbiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTQ1CisjLCBmdXp6eQorI3wgbXNnaWQgIm51bWJlciBvZiBwYXJ0cyIKK21zZ2lkICJudW1iZXIgb2YgYXJjaGl2ZSBwYXJ0cyIKK21zZ3N0ciAiemF0aSBrb3B1cnVhIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDcKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBudW1iZXIgb2YgcGFydHMiCittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIG51bWJlciBvZiBhcmNoaXZlIHBhcnRzIgorbXNnc3RyICInJS4yNTBzJyBmaXR4YXRlZ2lhIGhvbmRhdHV0YSBkYWdvIC0gb2tlcnJla28gemF0aSBrb3B1cnVhIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDkKKyMsIGZ1enp5CisjfCBtc2dpZCAicGFydHMgbnVtYmVyIgorbXNnaWQgImFyY2hpdmUgcGFydHMgbnVtYmVyIgorbXNnc3RyICJ6YXRpZW4ga29wdXJ1YSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTUxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgcGFydCBudW1iZXIiCittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIGFyY2hpdmUgcGFydCBudW1iZXIiCittc2dzdHIgIiclLjI1MHMnIGZpdHhhdGVnaWEgaG9uZGF0dXRhIGRhZ28gLSBva2VycmVrbyB6YXRpIGtvcHVydWEiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE1NworIywgZnV6enkKKyN8IG1zZ2lkICJwYWNrYWdlIG5hbWUiCittc2dpZCAicGFja2FnZSBhcmNoaXRlY3R1cmUiCittc2dzdHIgInBha2V0ZS1pemVuYSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTY2CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBtYWdpYyBhdCBlbmQgb2Ygc2Vjb25kIGhlYWRlciIKK21zZ3N0ciAiIgorIiclLjI1MHMnIGZpdHhhdGVnaWEgaG9uZGF0dXRhIGRhZ28gLSBva2VycmVrbyBcIm1hZ2ljXCIgYmlnYXJyZW4gZ29pYnVydWFyZW4gIgorImFtYWllcmFuIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gc2Vjb25kIG1lbWJlciBpcyBub3QgZGF0YSBtZW1iZXIiCittc2dzdHIgIiclLjI1MHMnIGZpdHhhdGVnaWEgaG9uZGF0dXRhIGRhZ28gLSBiaWdhcnJlbiBraWRlYSBleiBkYSBkYXR1LWtpZGVhIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gd3JvbmcgbnVtYmVyIG9mIHBhcnRzIGZvciBxdW90ZWQgc2l6ZXMiCittc2dzdHIgIiIKKyInJS4yNTBzJyBmaXR4YXRlZ2lhIGhvbmRhdHV0YSBkYWdvIC0gb2tlcnJla28gemF0aSBrb3B1cnVhIGFkaWVyYXppdGFrbyAiCisidGFtYWluZXRhbiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTc4CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIHNpemUgaXMgd3JvbmcgZm9yIHF1b3RlZCBwYXJ0IG51bWJlciIKK21zZ3N0ciAiIgorIiclLjI1MHMnIGZpdHhhdGVnaWEgaG9uZGF0dXRhIGRhZ28gLSBva2VycmVrbyB0YW1haW5hIGFkaWVyYXppdGFrbyB6YXRpICIKKyJ6ZW5iYWtpYW4iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE4NAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZnN0YXQgcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJlemluIGRhIGZzdGF0IGVnaW4gJyUuMjUwcycgemF0aS1maXR4YXRlZ2lhbiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTg5CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIHRvbyBzaG9ydCIKK21zZ3N0ciAiJyUuMjUwcycgZml0eGF0ZWdpYSBob25kYXR1dGEgZGFnbyAtIGxhYnVycmVnaWEiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjIwMiBkcGtnLXNwbGl0L2luZm8uYzoyNDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IG9wZW4gYXJjaGl2ZSBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgImV6aW4gZGEgJyUuMjUwcycgYXJ0eGlib2tvIHphdGktZml0eGF0ZWdpYSBpcmVraSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjA0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgbm90IGFuIGFyY2hpdmUgcGFydCIKK21zZ3N0ciAiJyUuMjUwcycgZml0eGF0ZWdpYSBleiBkYSBhcnR4aWJvLXphdGlhIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyMDkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIlczpcbiIKKyN8ICIgICAgUGFydCBmb3JtYXQgdmVyc2lvbjogICAgICAgICAgICAlc1xuIgorI3wgIiAgICBQYXJ0IG9mIHBhY2thZ2U6ICAgICAgICAgICAgICAgICVzXG4iCisjfCAiICAgICAgICAuLi4gdmVyc2lvbjogICAgICAgICAgICAgICAgJXNcbiIKKyN8ICIgICAgICAgIC4uLiBNRDUgY2hlY2tzdW06ICAgICAgICAgICAlc1xuIgorI3wgIiAgICAgICAgLi4uIGxlbmd0aDogICAgICAgICAgICAgICAgICVsdSBieXRlc1xuIgorI3wgIiAgICAgICAgLi4uIHNwbGl0IGV2ZXJ5OiAgICAgICAgICAgICVsdSBieXRlc1xuIgorI3wgIiAgICBQYXJ0IG51bWJlcjogICAgICAgICAgICAgICAgICAgICVkLyVkXG4iCisjfCAiICAgIFBhcnQgbGVuZ3RoOiAgICAgICAgICAgICAgICAgICAgJXppIGJ5dGVzXG4iCisjfCAiICAgIFBhcnQgb2Zmc2V0OiAgICAgICAgICAgICAgICAgICAgJWx1IGJ5dGVzXG4iCisjfCAiICAgIFBhcnQgZmlsZSBzaXplICh1c2VkIHBvcnRpb24pOiAgJWx1IGJ5dGVzXG4iCisjfCAiXG4iCittc2dpZCAiIgorIiVzOlxuIgorIiAgICBQYXJ0IGZvcm1hdCB2ZXJzaW9uOiAgICAgICAgICAgICVzXG4iCisiICAgIFBhcnQgb2YgcGFja2FnZTogICAgICAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiB2ZXJzaW9uOiAgICAgICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIGFyY2hpdGVjdHVyZTogICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gTUQ1IGNoZWNrc3VtOiAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiBsZW5ndGg6ICAgICAgICAgICAgICAgICAlamQgYnl0ZXNcbiIKKyIgICAgICAgIC4uLiBzcGxpdCBldmVyeTogICAgICAgICAgICAlamQgYnl0ZXNcbiIKKyIgICAgUGFydCBudW1iZXI6ICAgICAgICAgICAgICAgICAgICAlZC8lZFxuIgorIiAgICBQYXJ0IGxlbmd0aDogICAgICAgICAgICAgICAgICAgICVqZCBieXRlc1xuIgorIiAgICBQYXJ0IG9mZnNldDogICAgICAgICAgICAgICAgICAgICVqZCBieXRlc1xuIgorIiAgICBQYXJ0IGZpbGUgc2l6ZSAodXNlZCBwb3J0aW9uKTogICVqZCBieXRlc1xuIgorIlxuIgorbXNnc3RyICIiCisiJXM6XG4iCisiICAgIFphdGktZm9ybWF0dWFyZW4gYmVydHNpb2E6ICAgJXNcbiIKKyIgICAgUGFrZXRlIHphdGlhOiAgICAgICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIGJlcnRzaW9hOiAgICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gTUQ1IGtvbnRyb2wgYmF0dXJhOiAgJXNcbiIKKyIgICAgICAgIC4uLiBsdXplcmE6ICAgICAgICAgICAgICAlbHUgYnl0ZVxuIgorIiAgICAgICAgLi4uIHphdGl0dTogICAgICAgICAgICAgICVsdSBieXRldGlrXG4iCisiICAgIFphdGkgemVuYmFraWE6ICAgICAgICAgICAgICAgJWQvJWRcbiIKKyIgICAgWmF0aSBsdXplcmE6ICAgICAgICAgICAgICAgICAlemkgYnl0ZVxuIgorIiAgICBaYXRpYXJlbiBkZXNwbGF6YW1lbmR1YTogICAgICVsdSBieXRlXG4iCisiICAgIFphdGkgZml0eGF0ZWdpYXJlbiB0YW1haW5hXG4iCisiICAgICAoZXJhYmlsaXRha28gemF0aWEpOiAgICAgICAgJWx1IGJ5dGVcbiIKKyJcbiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjI1CisjLCBmdXp6eQorI3wgbXNnaWQgIjx1bmtub3duPiIKK21zZ2N0eHQgImFyY2hpdGVjdHVyZSIKK21zZ2lkICI8dW5rbm93bj4iCittc2dzdHIgIjxlemV6YWd1bmE+IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyNDQgZHBrZy1zcGxpdC9qb2luLmM6MTA1CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgcmVxdWlyZXMgb25lIG9yIG1vcmUgcGFydCBmaWxlIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS0lcyhlKWsgemF0aS1maXR4YXRlZ2lrbyBhcmd1bWVudHUgYmF0IGVkbyBnZWhpYWdvIGJlaGFyIGRpdHUiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjI1NQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlcycgaXMgbm90IGFuIGFyY2hpdmUgcGFydFxuIgorbXNnc3RyICInJXMnIGZpdHhhdGVnaWEgZXogZGEgYXJ0eGliby16YXRpYVxuIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo0NAorIywgYy1mb3JtYXQKK21zZ2lkICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0OiAiCittc2dpZF9wbHVyYWwgIlB1dHRpbmcgcGFja2FnZSAlcyB0b2dldGhlciBmcm9tICVkIHBhcnRzOiAiCittc2dzdHJbMF0gIiVzIHBha2V0ZWEgYmF0emVuIHphdGkgJWRldGlrOiAiCittc2dzdHJbMV0gIiVzIHBha2V0ZWEgYmF0emVuICVkIHphdGl0YXRpazogIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBvdXRwdXQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiZXppbiBkYSBpcnRlZXJha28gJyUuMjUwcycgZml0eGF0ZWdpYSBpcmVraSIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIChyZSlvcGVuIGlucHV0IHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiZXppbiBkYSBzYXJyZXJha28gJyUuMjUwcycgemF0aS1maXR4YXRlZ2lhIChiZXJyKWlyZWtpICIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NTgKKyMsIGZ1enp5CisjfCBtc2dpZCAiU2tpcHBpbmcgZGVzZWxlY3RlZCBwYWNrYWdlICVzLlxuIgorbXNnaWQgInNraXBwaW5nIHNwbGl0IHBhY2thZ2UgaGVhZGVyIgorbXNnc3RyICJIYXV0YXBlbmEga2VuZHV0YWtvICVzIHBha2V0ZWEgc2FsdGF0emVuLlxuIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1OQorIywgZnV6enkKKyN8IG1zZ2lkICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0OiAiCisjfCBtc2dpZF9wbHVyYWwgIlB1dHRpbmcgcGFja2FnZSAlcyB0b2dldGhlciBmcm9tICVkIHBhcnRzOiAiCittc2dpZCAic3BsaXQgcGFja2FnZSBwYXJ0IgorbXNnc3RyICIlcyBwYWtldGVhIGJhdHplbiB6YXRpICVkZXRpazogIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo2OSBkcGtnLXNwbGl0L3NwbGl0LmM6MjM3CisjLCBjLWZvcm1hdAorbXNnaWQgImRvbmVcbiIKK21zZ3N0ciAiZWdpbmRhXG4iCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjg1CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGVzIGAlLjI1MHMnIGFuZCBgJS4yNTBzJyBhcmUgbm90IHBhcnRzIG9mIHRoZSBzYW1lIGZpbGUiCittc2dzdHIgIiclLjI1MHMnIGV0YSAnJS4yNTBzJyBmaXR4YXRlZ2lhayBleiBkaXJhIGZpdHhhdGVnaSBiZXJhcmVuIHphdGlhayIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAidGhlcmUgYXJlIHNldmVyYWwgdmVyc2lvbnMgb2YgcGFydCAlZCAtIGF0IGxlYXN0IGAlLjI1MHMnIGFuZCBgJS4yNTBzJyIKK21zZ3N0ciAiJWQgemF0aWFyZW4gaGFpbmJhdCBiZXJ0c2lvIGRhdWRlIC0gJyUuMjUwcycgZXRhICclLjI1MHMnIGd1dHhpZW5leiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6MTI4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhcnQgJWQgaXMgbWlzc2luZyIKK21zZ3N0ciAiJWQgemF0aWEgZmFsdGEgZGEiCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjQ3CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiBgJXMnIHBhY2thZ2Ugc3BsaXQvam9pbiB0b29sOyB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICJEZWJpYW4gcGFrZXRlYWsgemF0aXR1L2JhdHpla28gJyVzJyB0cmVzbmE7ICVzIGJlcnRzaW9hLlxuIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo0OQorIywgYy1mb3JtYXQKK21zZ2lkICJDb3B5cmlnaHQgKEMpIDE5OTQtMTk5NiBJYW4gSmFja3Nvbi5cbiIKK21zZ3N0ciAiQ29weXJpZ2h0IChDKSAxOTk0LTE5OTYgSWFuIEphY2tzb24uXG4iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjY3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1zfC0tc3BsaXQgPGZpbGU+IFs8cHJlZml4Pl0gICAgIFNwbGl0IGFuIGFyY2hpdmUuXG4iCisiICAtanwtLWpvaW4gPHBhcnQ+IDxwYXJ0PiAuLi4gICAgICBKb2luIHBhcnRzIHRvZ2V0aGVyLlxuIgorIiAgLUl8LS1pbmZvIDxwYXJ0PiAuLi4gICAgICAgICAgICAgRGlzcGxheSBpbmZvIGFib3V0IGEgcGFydC5cbiIKKyIgIC1hfC0tYXV0byAtbyA8Y29tcGxldGU+IDxwYXJ0PiAgIEF1dG8tYWNjdW11bGF0ZSBwYXJ0cy5cbiIKKyIgIC1sfC0tbGlzdHEgICAgICAgICAgICAgICAgICAgICAgIExpc3QgdW5tYXRjaGVkIHBpZWNlcy5cbiIKKyIgIC1kfC0tZGlzY2FyZCBbPGZpbGVuYW1lPiAuLi5dICAgIERpc2NhcmQgdW5tYXRjaGVkIHBpZWNlcy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIktvbWFuZG9hazpcbiIKKyIgIC1zfC0tc3BsaXQgPGZpdHhhdC4+IFs8YXVycml6a2lhPl0gQXJ0eGlib2EgemF0aXR6ZW4gZHUuXG4iCisiICAtanwtLWpvaW4gPHphdGlhPiA8emF0aWE+IC4uLiAgICAgIFphdGlhayBlbGthcnR6ZW4gZGl0dS5cbiIKKyIgIC1JfC0taW5mbyA8emF0aWE+IC4uLiAgICAgICAgICAgICAgRXJha3V0c2kgemF0aWFyZW4gaW5mb3JtYXppb2EuXG4iCisiICAtYXwtLWF1dG8gLW8gPG9zb2E+IDx6YXRpYT4gICAgICAgIE1ldGF0dSBhdXRvbWF0aWtva2kgemF0aWFrLlxuIgorIiAgLWx8LS1saXN0cSAgICAgICAgICAgICAgICAgICAgICAgICBaZXJyZW5kYXR1IGJhdCBleiBkYXRvemVuYWsuXG4iCisiICAtZHwtLWRpc2NhcmQgWzxmaXR4YXRlZ2lhPiAuLi5dICAgIEJhenRlcnR1IGJhdCBleiBkYXRvemVuYWsuXG4iCisiXG4iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjgyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiT3B0aW9uczpcbiIKKyN8ICIgIC0tZGVwb3RkaXIgPGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLyVzLlxuIgorI3wgIiAgLVN8LS1wYXJ0c2l6ZSA8c2l6ZT4gICAgICAgICAgICAgSW4gS2lCLCBmb3IgLXMgKGRlZmF1bHQgaXMgNDUwKS5cbiIKKyN8ICIgIC1vfC0tb3V0cHV0IDxmaWxlPiAgICAgICAgICAgICAgIEZvciAtaiAoZGVmYXVsdCBpcyA8cGFja2FnZT4tPHZlcnNpb24+LiIKKyN8ICJkZWIpLlxuIgorI3wgIiAgLVF8LS1ucHF1aWV0ICAgICAgICAgICAgICAgICAgICAgQmUgcXVpZXQgd2hlbiAtYSBpcyBub3QgYSBwYXJ0LlxuIgorI3wgIiAgLS1tc2RvcyAgICAgICAgICAgICAgICAgICAgICAgICAgR2VuZXJhdGUgOC4zIGZpbGVuYW1lcy5cbiIKKyN8ICJcbiIKKyN8ICJFeGl0IHN0YXR1czogMCA9IE9LOyAgMSA9IC1hIGlzIG5vdCBhIHBhcnQ7ICAyID0gdHJvdWJsZSFcbiIKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tZGVwb3RkaXIgPGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLyVzLlxuIgorIiAgLVN8LS1wYXJ0c2l6ZSA8c2l6ZT4gICAgICAgICAgICAgSW4gS2lCLCBmb3IgLXMgKGRlZmF1bHQgaXMgNDUwKS5cbiIKKyIgIC1vfC0tb3V0cHV0IDxmaWxlPiAgICAgICAgICAgICAgIEZpbGVuYW1lLCBmb3IgLWogKGRlZmF1bHQgaXNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhY2thZ2U+Xzx2ZXJzaW9uPl88YXJjaD4uZGViKS5cbiIKKyIgIC1RfC0tbnBxdWlldCAgICAgICAgICAgICAgICAgICAgIEJlIHF1aWV0IHdoZW4gLWEgaXMgbm90IGEgcGFydC5cbiIKKyIgIC0tbXNkb3MgICAgICAgICAgICAgICAgICAgICAgICAgIEdlbmVyYXRlIDguMyBmaWxlbmFtZXMuXG4iCisiXG4iCittc2dzdHIgIiIKKyJBdWtlcmFrOlxuIgorIiAgIC0tZGVwb3RkaXIgPGRpcmVrdG9yaW9hPiAgICAgICAgPGRpcmVrdG9yaW9hPiBlcmFiaWxpICVzLyVzIG9yZGV6XG4iCisiICAtU3wtLXBhcnRzaXplIDx0YW1haW5hPiAgICAgICAgICBLaUItdGFuLCAnLXMncmVraW4gKGxlaGVuZXRzaWE6IDQ1MClcbiIKKyIgIC1vfC0tb3V0cHV0IDxmaXR4YXRlZ2lhPiAgICAgICAgICAoJy1qJ3Jla2luLCBsZWhlbmV0c2lhOiA8cGFrZXRlYT4tIgorIjxiZXJ0c2lvYT4uZGViKVxuIgorIiAgLVF8LS1ucHF1aWV0ICAgICAgICAgICAgICAgICAgICAgICAgICAgIChleiBlcmFrdXRzaSBlemVyIC1hIHphdGlhIGV6ICIKKyJkZW5lYW4pXG4iCisiICAtLW1zZG9zICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChzb3J0dSA4LjMgZml0eGF0ZWdpLWl6ZW5haylcbiIKKyJcbiIKKyJJcnRlZXJhIGVnb2VyYTogMCA9IEFkb3M7ICAxID0gLWEgZXogZGEgemF0aWE7ICAyID0gYXJhem9hayFcbiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6OTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkV4aXQgc3RhdHVzOlxuIgorIiAgMCA9IG9rXG4iCisiICAxID0gd2l0aCAtLWF1dG8sIGZpbGUgaXMgbm90IGEgcGFydFxuIgorIiAgMiA9IHRyb3VibGVcbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMDMKK21zZ2lkICJUeXBlIGRwa2ctc3BsaXQgLS1oZWxwIGZvciBoZWxwLiIKK21zZ3N0ciAiSWRhdHppIGRwa2ctc3BsaXQgLS1oZWxwIGxhZ3VudHphIGxvcnR6ZWtvLiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6MTE1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGZpbGUgaW4gJS4yNTBzIgorbXNnc3RyICJ1c3Rla2FiZWtvIGZpdHhhdGVnaSBhbWFpZXJhICUuMjUwcy1lbiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6MTI2Cittc2dpZCAicGFydCBzaXplIGlzIGZhciB0b28gbGFyZ2Ugb3IgaXMgbm90IHBvc2l0aXZlIgorbXNnc3RyICJ6YXRpYXJlbiB0YW1haW5hIGhhbmRpZWdpYSBkYSwgZWRvIGV6IGRhIHBvc2l0aWJvYSIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6MTMwCisjLCBjLWZvcm1hdAorbXNnaWQgInBhcnQgc2l6ZSBtdXN0IGJlIGF0IGxlYXN0ICVkIEtpQiAodG8gYWxsb3cgZm9yIGhlYWRlcikiCittc2dzdHIgInphdGlhcmVuIHRhbWFpbmFrICVkIEtpQiBpemFuIGJlaGFyIGR1IGd1dHhpZW5leiAoZ29pYnVydWEgb25hcnR6ZWtvKSIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjkwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIGRlcG90IGRpcmVjdG9yeSBgJS4yNTBzJyIKK21zZ3N0ciAiZXppbiBkYSAnJS4yNTBzJyBiaWx0ZWdpLWRpcmVrdG9yaW9hIGlyYWt1cnJpIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTM0Cittc2dpZCAiLS1hdXRvIHJlcXVpcmVzIHRoZSB1c2Ugb2YgdGhlIC0tb3V0cHV0IG9wdGlvbiIKK21zZ3N0ciAiLS1hdXRvIGF1a2VyYWsgLS1vdXRwdXQgZXJhYmlsdHplYSBlc2thdHplbiBkdSIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjEzNgorbXNnaWQgIi0tYXV0byByZXF1aXJlcyBleGFjdGx5IG9uZSBwYXJ0IGZpbGUgYXJndW1lbnQiCittc2dzdHIgIi0tYXV0bzogemF0aSBmaXR4YXRlZ2lrbyBhcmd1bWVudHUgYmF0IGJlaGFyIGR1IHplaGF6a2kiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxNDAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJlemluIGRhICclLjI1MHMnIHphdGktZml0eGF0ZWdpYSBpcmFrdXJyaSIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE0MworIywgYy1mb3JtYXQKK21zZ2lkICJGaWxlIGAlLjI1MHMnIGlzIG5vdCBwYXJ0IG9mIGEgbXVsdGlwYXJ0IGFyY2hpdmUuXG4iCittc2dzdHIgIiclLjI1MHMnIGZpdHhhdGVnaWEgZXogZGEgemF0aSBhbml0emVrbyBhcnR4aWJvIGJhdGVuIHphdGlhLlxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTc5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW9wZW4gcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJlemluIGRhICclLjI1MHMnIHphdGktZml0eGF0ZWdpYSBiZXJyaXJvIGlyZWtpIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTgyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIG5ldyBkZXBvdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJlemluIGRhICclLjI1MHMnIGJpbHRlZ2ktZml0eGF0ZWdpIGJlcnJpYSBpcmVraSIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE4NAorbXNnaWQgImV4dHJhY3Rpbmcgc3BsaXQgcGFydCIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTkyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW5hbWUgbmV3IGRlcG90IGZpbGUgYCUuMjUwcycgdG8gYCUuMjUwcyciCittc2dzdHIgImV6aW4gemFpbyAnJS4yNTBzJyBiaWx0ZWdpLWZpdHhhdGVnaSBiZXJyaWFyaSAnJS4yNTBzJyBpemVuYSBqYXJyaSIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE5NgorIywgYy1mb3JtYXQKK21zZ2lkICJQYXJ0ICVkIG9mIHBhY2thZ2UgJXMgZmlsZWQgKHN0aWxsIHdhbnQgIgorbXNnc3RyICIlMiRzIHBha2V0ZWFyZW4gJTEkZCB6YXRpLWZpdHhhdGVnaWFuIChvcmFpbmRpayBmYWx0YTogIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjAwCittc2dpZCAiIGFuZCAiCittc2dzdHIgIiBldGEgIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjE0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkZWxldGUgdXNlZC11cCBkZXBvdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJlemluIGRhIGVyYWJpbGl0YWtvICclLjI1MHMnIGJpbHRlZ2ktZml0eGF0ZWdpYSBlemFiYXR1IgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjM1Cittc2dpZCAiSnVuayBmaWxlcyBsZWZ0IGFyb3VuZCBpbiB0aGUgZGVwb3QgZGlyZWN0b3J5OlxuIgorbXNnc3RyICJGaXR4YXRlZ2kgYmF6dGVyZ2FycmkgYmF0enVrIGJpbHRlZ2ktZGlyZWt0b3Jpb2FuIHV0emkgZGlyYTpcbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI0MCBkcGtnLXNwbGl0L3F1ZXVlLmM6MjY5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGAlLjI1MHMnIgorbXNnc3RyICJlemluIGRhICclLjI1MHMnIGF0eml0dSIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI0MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiICVzICglbHUgYnl0ZXMpXG4iCittc2dpZCAiICVzICglamQgYnl0ZXMpXG4iCittc2dzdHIgIiAlcyAoJWx1IGJ5dGUpXG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICVzIChub3QgYSBwbGFpbiBmaWxlKVxuIgorbXNnc3RyICIgJXMgKGV6IGRhIGZpdHhhdGVnaSBhcnJ1bnRhKVxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjUwCittc2dpZCAiUGFja2FnZXMgbm90IHlldCByZWFzc2VtYmxlZDpcbiIKK21zZ3N0ciAiUGFrZXRlYWsgb3JhaW5kaWsgZXogZGlyYSBtdW50YXR1IGJlcnJpcm86XG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIFBhY2thZ2UgJXM6IHBhcnQocykgIgorbXNnc3RyICIgJXMgcGFrZXRlYTogemF0aShhaykgIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjcxCisjLCBjLWZvcm1hdAorbXNnaWQgInBhcnQgZmlsZSBgJS4yNTBzJyBpcyBub3QgYSBwbGFpbiBmaWxlIgorbXNnc3RyICInJS4yNTBzJyB6YXRpLWZpdHhhdGVnaWEgZXogZGEgZml0eGF0ZWdpIGFycnVudGEiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNzgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIih0b3RhbCAlbHUgYnl0ZXMpXG4iCittc2dpZCAiKHRvdGFsICVqZCBieXRlcylcbiIKK21zZ3N0ciAiKCVsdSBieXRlIGd1enRpcmEpXG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzozMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRpc2NhcmQgYCUuMjUwcyciCittc2dzdHIgImV6aW4gZGEgJyUuMjUwcycgYmF6dGVydHUiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzozMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGVsZXRlZCAlcy5cbiIKK21zZ3N0ciAiJXMgZXphYmF0dSBkYS5cbiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjcwIGRwa2ctc3BsaXQvc3BsaXQuYzo3NiBkcGtnLXNwbGl0L3NwbGl0LmM6ODEKKyMsIGZ1enp5CisjfCBtc2dpZCAiZHBrZy1kZWIgZmllbGQgZXh0cmFjdGlvbiIKK21zZ2lkICJwYWNrYWdlIGZpZWxkIHZhbHVlIGV4dHJhY3Rpb24iCittc2dzdHIgImRwa2ctZGViIGVyZW11YXJlbiBlcmF1c2tldGEiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxMzEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gc291cmNlIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImV6aW4gZGEgaXR1cmJ1cnVrbyAnJS4yNTBzJyBmaXR4YXRlZ2lhIGlyZWtpIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTMzCittc2dpZCAidW5hYmxlIHRvIGZzdGF0IHNvdXJjZSBmaWxlIgorbXNnc3RyICJlemluIGRhIGZzdGF0IGVnaW4gaXR1cmJ1cnVrbyBmaXR4YXRlZ2lhbiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjEzNQorIywgYy1mb3JtYXQKK21zZ2lkICJzb3VyY2UgZmlsZSBgJS4yNTBzJyBub3QgYSBwbGFpbiBmaWxlIgorbXNnc3RyICJoZWxidXJ1a28gJyUuMjUwcycgZml0eGF0ZWdpYSBleiBkYSBmaXR4YXRlZ2kgYXJydW50YSIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjE1MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiUHV0dGluZyBwYWNrYWdlICVzIHRvZ2V0aGVyIGZyb20gJWQgcGFydDogIgorI3wgbXNnaWRfcGx1cmFsICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0czogIgorbXNnaWQgIlNwbGl0dGluZyBwYWNrYWdlICVzIGludG8gJWQgcGFydDogIgorbXNnaWRfcGx1cmFsICJTcGxpdHRpbmcgcGFja2FnZSAlcyBpbnRvICVkIHBhcnRzOiAiCittc2dzdHJbMF0gIiVzIHBha2V0ZWEgYmF0emVuIHphdGkgJWRldGlrOiAiCittc2dzdHJbMV0gIiVzIHBha2V0ZWEgYmF0emVuICVkIHphdGl0YXRpazogIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTkzCittc2dpZCAiIgorIkhlYWRlciBpcyB0b28gbG9uZywgbWFraW5nIHBhcnQgdG9vIGxvbmcuIFlvdXIgcGFja2FnZSBuYW1lIG9yIHZlcnNpb25cbiIKKyJudW1iZXJzIG11c3QgYmUgZXh0cmFvcmRpbmFyaWx5IGxvbmcsIG9yIHNvbWV0aGluZy4gR2l2aW5nIHVwLlxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoyNDkKK21zZ2lkICItLXNwbGl0IG5lZWRzIGEgc291cmNlIGZpbGVuYW1lIGFyZ3VtZW50IgorbXNnc3RyICItLXNwbGl0OiBpdHVyYnVydWtvIGZpdHhhdGVnaS1pemVuYSBiZWhhciBkdSBhcmd1bWVudHUgZ2lzYSIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjI1MgorbXNnaWQgIi0tc3BsaXQgdGFrZXMgYXQgbW9zdCBhIHNvdXJjZSBmaWxlbmFtZSBhbmQgZGVzdGluYXRpb24gcHJlZml4IgorbXNnc3RyICIiCisiLS1zcGxpdDogaXR1cmJ1cnVrbyBmaXR4YXRlZ2ktaXplbiBiYXQgZXRhIGhlbGJ1cnVrbyBhdXJyaXpraSBiYXQgaGFydHplbiBkdSAiCisiZ2VoaWVuZXoiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo4NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMC0yMDAyIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDA5LTIwMTAgUmFwaGFlbCBIZXJ0em9nLlxuIgorbXNnc3RyICIiCisiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMC0yMDAyIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDA5LTIwMTAgUmFwaGFlbCBIZXJ0em9nLlxuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTAxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIDxjb21tYW5kPlxuIgorI3wgIlxuIgorI3wgIkNvbW1hbmRzOlxuIgorI3wgIiAgLS1pbnN0YWxsIDxsaW5rPiA8bmFtZT4gPHBhdGg+IDxwcmlvcml0eT5cbiIKKyN8ICIgICAgWy0tc2xhdmUgPGxpbms+IDxuYW1lPiA8cGF0aD5dIC4uLlxuIgorI3wgIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGFkZCBhIGdyb3VwIG9mIGFsdGVybmF0aXZlcyB0byB0aGUgc3lzdGVtLlxuIgorI3wgIiAgLS1yZW1vdmUgPG5hbWU+IDxwYXRoPiAgIHJlbW92ZSA8cGF0aD4gZnJvbSB0aGUgPG5hbWU+IGdyb3VwICIKKyN8ICJhbHRlcm5hdGl2ZS5cbiIKKyN8ICIgIC0tcmVtb3ZlLWFsbCA8bmFtZT4gICAgICByZW1vdmUgPG5hbWU+IGdyb3VwIGZyb20gdGhlIGFsdGVybmF0aXZlcyAiCisjfCAic3lzdGVtLlxuIgorI3wgIiAgLS1hdXRvIDxuYW1lPiAgICAgICAgICAgIHN3aXRjaCB0aGUgbWFzdGVyIGxpbmsgPG5hbWU+IHRvIGF1dG9tYXRpYyAiCisjfCAibW9kZS5cbiIKKyN8ICIgIC0tZGlzcGxheSA8bmFtZT4gICAgICAgICBkaXNwbGF5IGluZm9ybWF0aW9uIGFib3V0IHRoZSA8bmFtZT4gZ3JvdXAuXG4iCisjfCAiICAtLXF1ZXJ5IDxuYW1lPiAgICAgICAgICAgbWFjaGluZSBwYXJzZWFibGUgdmVyc2lvbiBvZiAtLWRpc3BsYXkgIgorI3wgIjxuYW1lPi5cbiIKKyN8ICIgIC0tbGlzdCA8bmFtZT4gICAgICAgICAgICBkaXNwbGF5IGFsbCB0YXJnZXRzIG9mIHRoZSA8bmFtZT4gZ3JvdXAuXG4iCisjfCAiICAtLWNvbmZpZyA8bmFtZT4gICAgICAgICAgc2hvdyBhbHRlcm5hdGl2ZXMgZm9yIHRoZSA8bmFtZT4gZ3JvdXAgYW5kIGFzayAiCisjfCAidGhlXG4iCisjfCAiICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlciB0byBzZWxlY3Qgd2hpY2ggb25lIHRvIHVzZS5cbiIKKyN8ICIgIC0tc2V0IDxuYW1lPiA8cGF0aD4gICAgICBzZXQgPHBhdGg+IGFzIGFsdGVybmF0aXZlIGZvciA8bmFtZT4uXG4iCisjfCAiICAtLWFsbCAgICAgICAgICAgICAgICAgICAgY2FsbCAtLWNvbmZpZyBvbiBhbGwgYWx0ZXJuYXRpdmVzLlxuIgorI3wgIlxuIgorI3wgIjxsaW5rPiBpcyB0aGUgc3ltbGluayBwb2ludGluZyB0byAlcy88bmFtZT4uXG4iCisjfCAiICAoZS5nLiAvdXNyL2Jpbi9wYWdlcilcbiIKKyN8ICI8bmFtZT4gaXMgdGhlIG1hc3RlciBuYW1lIGZvciB0aGlzIGxpbmsgZ3JvdXAuXG4iCisjfCAiICAoZS5nLiBwYWdlcilcbiIKKyN8ICI8cGF0aD4gaXMgdGhlIGxvY2F0aW9uIG9mIG9uZSBvZiB0aGUgYWx0ZXJuYXRpdmUgdGFyZ2V0IGZpbGVzLlxuIgorI3wgIiAgKGUuZy4gL3Vzci9iaW4vbGVzcylcbiIKKyN8ICI8cHJpb3JpdHk+IGlzIGFuIGludGVnZXI7IG9wdGlvbnMgd2l0aCBoaWdoZXIgbnVtYmVycyBoYXZlIGhpZ2hlciAiCisjfCAicHJpb3JpdHkgaW5cbiIKKyN8ICIgIGF1dG9tYXRpYyBtb2RlLlxuIgorI3wgIlxuIgorI3wgIk9wdGlvbnM6XG4iCisjfCAiICAtLWFsdGRpciA8ZGlyZWN0b3J5PiAgICAgY2hhbmdlIHRoZSBhbHRlcm5hdGl2ZXMgZGlyZWN0b3J5LlxuIgorI3wgIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIGNoYW5nZSB0aGUgYWRtaW5pc3RyYXRpdmUgZGlyZWN0b3J5LlxuIgorI3wgIiAgLS1za2lwLWF1dG8gICAgICAgICAgICAgIHNraXAgcHJvbXB0IGZvciBhbHRlcm5hdGl2ZXMgY29ycmVjdGx5ICIKKyN8ICJjb25maWd1cmVkXG4iCisjfCAiICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gYXV0b21hdGljIG1vZGUgKHJlbGV2YW50IGZvciAtLWNvbmZpZyAiCisjfCAib25seSlcbiIKKyN8ICIgIC0tdmVyYm9zZSAgICAgICAgICAgICAgICB2ZXJib3NlIG9wZXJhdGlvbiwgbW9yZSBvdXRwdXQuXG4iCisjfCAiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgcXVpZXQgb3BlcmF0aW9uLCBtaW5pbWFsIG91dHB1dC5cbiIKKyN8ICIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorI3wgIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLS1pbnN0YWxsIDxsaW5rPiA8bmFtZT4gPHBhdGg+IDxwcmlvcml0eT5cbiIKKyIgICAgWy0tc2xhdmUgPGxpbms+IDxuYW1lPiA8cGF0aD5dIC4uLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGFkZCBhIGdyb3VwIG9mIGFsdGVybmF0aXZlcyB0byB0aGUgc3lzdGVtLlxuIgorIiAgLS1yZW1vdmUgPG5hbWU+IDxwYXRoPiAgIHJlbW92ZSA8cGF0aD4gZnJvbSB0aGUgPG5hbWU+IGdyb3VwIGFsdGVybmF0aXZlLlxuIgorIiAgLS1yZW1vdmUtYWxsIDxuYW1lPiAgICAgIHJlbW92ZSA8bmFtZT4gZ3JvdXAgZnJvbSB0aGUgYWx0ZXJuYXRpdmVzICIKKyJzeXN0ZW0uXG4iCisiICAtLWF1dG8gPG5hbWU+ICAgICAgICAgICAgc3dpdGNoIHRoZSBtYXN0ZXIgbGluayA8bmFtZT4gdG8gYXV0b21hdGljIG1vZGUuXG4iCisiICAtLWRpc3BsYXkgPG5hbWU+ICAgICAgICAgZGlzcGxheSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgPG5hbWU+IGdyb3VwLlxuIgorIiAgLS1xdWVyeSA8bmFtZT4gICAgICAgICAgIG1hY2hpbmUgcGFyc2VhYmxlIHZlcnNpb24gb2YgLS1kaXNwbGF5IDxuYW1lPi5cbiIKKyIgIC0tbGlzdCA8bmFtZT4gICAgICAgICAgICBkaXNwbGF5IGFsbCB0YXJnZXRzIG9mIHRoZSA8bmFtZT4gZ3JvdXAuXG4iCisiICAtLWdldC1zZWxlY3Rpb25zICAgICAgICAgbGlzdCBtYXN0ZXIgYWx0ZXJuYXRpdmUgbmFtZXMgYW5kIHRoZWlyIHN0YXR1cy5cbiIKKyIgIC0tc2V0LXNlbGVjdGlvbnMgICAgICAgICByZWFkIGFsdGVybmF0aXZlIHN0YXR1cyBmcm9tIHN0YW5kYXJkIGlucHV0LlxuIgorIiAgLS1jb25maWcgPG5hbWU+ICAgICAgICAgIHNob3cgYWx0ZXJuYXRpdmVzIGZvciB0aGUgPG5hbWU+IGdyb3VwIGFuZCBhc2sgIgorInRoZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzZXIgdG8gc2VsZWN0IHdoaWNoIG9uZSB0byB1c2UuXG4iCisiICAtLXNldCA8bmFtZT4gPHBhdGg+ICAgICAgc2V0IDxwYXRoPiBhcyBhbHRlcm5hdGl2ZSBmb3IgPG5hbWU+LlxuIgorIiAgLS1hbGwgICAgICAgICAgICAgICAgICAgIGNhbGwgLS1jb25maWcgb24gYWxsIGFsdGVybmF0aXZlcy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIkVyYWJpbGVyYTogJXMgWzxhdWtlcmE+IC4uLl0gPGtvbWFuZG9hPlxuIgorIlxuIgorIktvbWFuZG9hazpcbiIKKyIgIC0taW5zdGFsbCA8ZXN0ZWthPiA8aXplbmEgPGJpZGVpemVuYT4gPGxlaGVudGFzdW5hPlxuIgorIiAgICBbLS1zbGF2ZSA8ZXN0ZWthPiA8aXplbmE+IDxiaWRlaXplbmE+XSAuLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBnZWhpdHUgYWx0ZXJuYXRpYmVuIHRhbGRlIGJhdCBzaXN0ZW1hcmkuXG4iCisiICAtLXJlbW92ZSA8aXplbmE+IDxiaWRlaXplbmE+ICAga2VuZHUgPGJpZGVpemVuYT4gIgorImFsdGVybmF0aWJlbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGl6ZW5hPiB0YWxkZXRpay5cbiIKKyIgIC0tcmVtb3ZlLWFsbCA8aXplbmE+ICAgICAga2VuZHUgPGl6ZW5hPiB0YWxkZWEgc2lzdGVtYWtvIGFsdGVybmF0aWJldGlrLlxuIgorIiAgLS1hdXRvIDxpemVuYT4gICAgICAgICAgICAgICBhbGRhdHUgPGl6ZW5hPiBlc3Rla2EgbWFpc3V0aWsgbW9kdVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXV0b21hdGlrb3JhLlxuIgorIiAgLS1kaXNwbGF5IDxpemVuYT4gICAgICAgICBiaXN0YXJhdHUgPGl6ZW5hPiB0YWxkZWFyaSBidXJ1emtvIGluZm9ybWF6aW9hLlxuIgorIiAgLS1xdWVyeSA8aXplbmE+ICAgICAgICAgICAtLWRpc3BsYXkgPGl6ZW5hPiBhdWtlcmFyZW4gYmVydHNpbyAiCisiYW5hbGl6YWdhcnJpXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdXRvbWF0aWtvYS5cbiIKKyIgIC0tbGlzdCA8aXplbmE+ICAgICAgICAgICAgICAgYmlzdGFyYXR1IDxpemVuYT4gdGFsZGVhcmVuIGhlbGJ1cnUgZ3V6dGlhay5cbiIKKyIgIC0tY29uZmlnIDxpemVuYT4gICAgICAgICBlcmFrdXRzaSA8aXplbmE+IHRhbGRlYXJlbiBhbHRlcm5hdGliYWsgZXRhIFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlc2thdHUgZXJhYmlsdHphaWxlYXJpIGJhdCBoYXV0YXR6ZWEgIgorImVyYWJpbHR6ZWtvLlxuIgorIiAgLS1zZXQgPGl6ZW5hPiA8YmlkZWl6ZW5hPiAgICAgIGV6YXJyaSA8YmlkZWl6ZW5hPiA8aXplbmE+cmVuIGFsdGVybmF0aWJhXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdpc2EuXG4iCisiICAtLWFsbCAgICAgICAgICAgICAgICAgICAgZGVpdHUgLS1jb25maWcgYWx0ZXJuYXRpYmEgZ3V6dGlldGFuLlxuIgorIlxuIgorIjxlc3Rla2E+IGVzdGVrYSBzaW5ib2xraWEgZGEsICVzLzxpemVuYT4tcmEgenV6ZW50emVuIGR1ZW5hLlxuIgorIiAgKGFkaWIuIC91c3IvYmluL3BhZ2VyKVxuIgorIjxpemVuYT4gZXN0ZWtlbiB0YWxkZSBob25lbiBpemVuIG1haXN1YSBkYS5cbiIKKyIgIChhZGliLiBwYWdlcilcbiIKKyI8YmlkZWl6ZW5hPiBhbHRlcm5hdGliZW4gaGVsYnVydWtvIGZpdHhhdGVnaWV0YXJpa28gYmF0ZSBrb2thbGVrdWEgZGEuXG4iCisiICAoYWRpYi4gL3Vzci9iaW4vbGVzcylcbiIKKyI8bGVoZW50YXN1bmE+IG9zb2tvIGJhdCBkYTsgemVuYmFraSBhbHR1a28gYXVrZXJlayBsZWhlbnRhc3VuXG4iCisiYWx0dWFnb2EgZHV0ZSBtb2R1IGF1dG9tYXRpa29hbi5cbiIKKyJcbiIKKyJBdWtlcmFrOlxuIgorIiAgLS1hbHRkaXIgPGRpcmVrdG9yaW9hPiAgICAgYWxkYXR1IGFsdGVybmF0aWJlbiBkaXJla3RvcmlvYS5cbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVrdG9yaW9hPiAgIGFsZGF0dSBhZG1pbmlzdHJhdHplLWRpcmVrdG9yaW9hLlxuIgorIiAgLS1za2lwLWF1dG8gICAgICAgICAgICAgIHNhbHRhdHUgb25naSBrb25maWd1cmF0dXRha28gYWx0ZXJuYXRpYmVpIGJ1cnV6XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnYWxkZXR6ZWEgbW9kdSBhdXRvbWF0aWtvYW5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGdhcnJhbnR6aXRzdWEgc29pbGlrIC0tY29uZmlnIGF1a2VyYW4pXG4iCisiICAtLXZlcmJvc2UgICAgICAgICAgICAgICBlcmFnaWtldGEgYmVycml0c3VhLCBpcnRlZXJhIGdlaGlhZ28uXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgIGVyYWdpa2V0YSBpeGlsYSwgZ3V0eGllbmVrbyBpcnRlZXJhLlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgICBlcmFrdXRzaSBsYW5ndW50emFrbyBtZXp1IGhhdS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBlcmFrdXRzaSBiZXJ0c2lvYS5cbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiPGxpbms+IGlzIHRoZSBzeW1saW5rIHBvaW50aW5nIHRvICVzLzxuYW1lPi5cbiIKKyIgIChlLmcuIC91c3IvYmluL3BhZ2VyKVxuIgorIjxuYW1lPiBpcyB0aGUgbWFzdGVyIG5hbWUgZm9yIHRoaXMgbGluayBncm91cC5cbiIKKyIgIChlLmcuIHBhZ2VyKVxuIgorIjxwYXRoPiBpcyB0aGUgbG9jYXRpb24gb2Ygb25lIG9mIHRoZSBhbHRlcm5hdGl2ZSB0YXJnZXQgZmlsZXMuXG4iCisiICAoZS5nLiAvdXNyL2Jpbi9sZXNzKVxuIgorIjxwcmlvcml0eT4gaXMgYW4gaW50ZWdlcjsgb3B0aW9ucyB3aXRoIGhpZ2hlciBudW1iZXJzIGhhdmUgaGlnaGVyIHByaW9yaXR5ICIKKyJpblxuIgorIiAgYXV0b21hdGljIG1vZGUuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzMQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIk9wdGlvbnM6XG4iCisjfCAiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgc2V0IHRoZSBkaXJlY3Rvcnkgd2l0aCB0aGUgc3RhdG92ZXJyaWRlIGZpbGUuXG4iCisjfCAiICAtLXVwZGF0ZSAgICAgICAgICAgICAgICAgaW1tZWRpYXRlbHkgdXBkYXRlIGZpbGUgcGVybWlzc2lvbnMuXG4iCisjfCAiICAtLWZvcmNlICAgICAgICAgICAgICAgICAgZm9yY2UgYW4gYWN0aW9uIGV2ZW4gaWYgYSBzYW5pdHkgY2hlY2sgZmFpbHMuXG4iCisjfCAiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgcXVpZXQgb3BlcmF0aW9uLCBtaW5pbWFsIG91dHB1dC5cbiIKKyN8ICIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorI3wgIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisjfCAiXG4iCittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFsdGRpciA8ZGlyZWN0b3J5PiAgICAgY2hhbmdlIHRoZSBhbHRlcm5hdGl2ZXMgZGlyZWN0b3J5LlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIGNoYW5nZSB0aGUgYWRtaW5pc3RyYXRpdmUgZGlyZWN0b3J5LlxuIgorIiAgLS1sb2cgPGZpbGU+ICAgICAgICAgICAgIGNoYW5nZSB0aGUgbG9nIGZpbGUuXG4iCisiICAtLWZvcmNlICAgICAgICAgICAgICAgICAgYWxsb3cgcmVwbGFjaW5nIGZpbGVzIHdpdGggYWx0ZXJuYXRpdmUgbGlua3MuXG4iCisiICAtLXNraXAtYXV0byAgICAgICAgICAgICAgc2tpcCBwcm9tcHQgZm9yIGFsdGVybmF0aXZlcyBjb3JyZWN0bHkgIgorImNvbmZpZ3VyZWRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBhdXRvbWF0aWMgbW9kZSAocmVsZXZhbnQgZm9yIC0tY29uZmlnIG9ubHkpXG4iCisiICAtLXZlcmJvc2UgICAgICAgICAgICAgICAgdmVyYm9zZSBvcGVyYXRpb24sIG1vcmUgb3V0cHV0LlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHF1aWV0IG9wZXJhdGlvbiwgbWluaW1hbCBvdXRwdXQuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorbXNnc3RyICIiCisiQXVrZXJhazpcbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVrdG9yaW9hPiAgZXphcnJpICdzdGF0b3ZlcnJpZGUnIGZpdHhhdGVnaWFyZW4gIgorImRpcmVrdG9yaW9hLlxuIgorIiAgLS11cGRhdGUgICAgICAgICAgICAgICBlZ3VuZXJhdHUgYmVyZWhhbGEgZml0eGF0ZWdpYXJlbiBiYWltZW5hayAiCisiYmVyZWhhbGEuXG4iCisiICAtLWZvcmNlICAgICAgICAgICAgICAgICAgZGVycmlnb3J0dSBla2ludHphIGJhdCBuYWhpeiBldGEgZWdpYXp0YXBlbmFrICIKKyJodXRzIGVnaW4uXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgZWtpbnR6YSBpeGlsYSwgaXJ0ZWVyYSBndXR4aWtvYS5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICBlcmFrdXRzaSBsYWd1bnR6YXJlbiBtZXp1IGhhdS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgIGVyYWt1dHNpIGJlcnRzaW9hLlxuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNjMKK21zZ2lkICJlcnJvciIKK21zZ3N0ciAiZXJyb3JlYSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE5MworbXNnaWQgIndhcm5pbmciCittc2dzdHIgImFiaXN1YSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjM1NgorIywgYy1mb3JtYXQKK21zZ2lkICJ0d28gY29tbWFuZHMgc3BlY2lmaWVkOiAtLSVzIGFuZCAtLSVzIgorbXNnc3RyICJiaSBrb21hbmRvIHplaGF6dHUgZGlyYTogLS0lcyBldGEgLS0lcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjM4NworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiY2Fubm90IGFwcGVuZCB0byAlczogJXMiCittc2dpZCAiY2Fubm90IGFwcGVuZCB0byAnJXMnIgorbXNnc3RyICJlemluIHphaW8gJXMocilpIGVyYW50c2k6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NTU2CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlICVzOiAlcyIKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlICclcyciCittc2dzdHIgImV6aW4gZGEgJXMgZXphYmF0dTogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTExCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGZpbGUgd2hpbGUgdHJ5aW5nIHRvIHJlYWQgJXMiCittc2dzdHIgInVzdGVrYWJla28gZml0eGF0ZWdpIGFtYWllcmEgJXMgaXJha3VydHplbiBzYWlhdHplYW4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTEzCisjLCBjLWZvcm1hdAorbXNnaWQgIndoaWxlIHJlYWRpbmcgJXM6ICVzIgorbXNnc3RyICIlcyBpcmFrdXJ0emVhbjogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTE5CisjLCBjLWZvcm1hdAorbXNnaWQgImxpbmUgbm90IHRlcm1pbmF0ZWQgd2hpbGUgdHJ5aW5nIHRvIHJlYWQgJXMiCittc2dzdHIgImxlcnJvYSBleiBkYWdvIGFtYWl0dXRhICVzIGlyYWt1cnR6ZW4gc2FpYXR6ZWFuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTEzNworIywgYy1mb3JtYXQKK21zZ2lkICIlcyBjb3JydXB0OiAlcyIKK21zZ3N0ciAiJXMgaG9uZGF0dXRhIGRhZ286ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE1MAorIywgYy1mb3JtYXQKK21zZ2lkICJuZXdsaW5lcyBwcm9oaWJpdGVkIGluIHVwZGF0ZS1hbHRlcm5hdGl2ZXMgZmlsZXMgKCVzKSIKK21zZ3N0ciAidXBkYXRlLWFsdGVybmF0aXZlcyBmaXR4YXRlZ2lhayAoJXMpIGV6aW4gZHUgbGVycm8tamF1emlyaWsgZWR1a2kiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTYzCittc2dpZCAic2xhdmUgbmFtZSIKK21zZ3N0ciAibW9ycm9pYXJlbiBpemVuYSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNzEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImR1cGxpY2F0ZSBzbGF2ZSAlcyIKK21zZ2lkICJkdXBsaWNhdGUgc2xhdmUgbmFtZSAlcyIKK21zZ3N0ciAiYmlrb2l6dHV0YWtvICVzIG1vcnJvaWEiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTc0Cittc2dpZCAic2xhdmUgbGluayIKK21zZ3N0ciAibW9ycm9pYXJlbiBlc3Rla2EiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTc4CisjLCBjLWZvcm1hdAorbXNnaWQgInNsYXZlIGxpbmsgc2FtZSBhcyBtYWluIGxpbmsgJXMiCittc2dzdHIgIm1vcnJvaWFyZW4gZXN0ZWthICVzIGVzdGVrYSBuYWd1c2lhcmVuIGJlcmRpbmEgZGEiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTg1IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDEyCisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBzbGF2ZSBsaW5rICVzIgorbXNnc3RyICIlcyBtb3Jyb2lhcmVuIGVzdGVrYSBiaWtvaXp0dXRhIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIwNAorbXNnaWQgIm1hc3RlciBmaWxlIgorbXNnc3RyICJmaXR4YXRlZ2kgbWFpc3VhIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIxMworIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgcGF0aCAlcyIKK21zZ3N0ciAiJXMgYmlkZS1pemVuYSBiaWtvaXp0dXRhIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIyNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYWx0ZXJuYXRpdmUgJXMgKHBhcnQgb2YgbGluayBncm91cCAlcykgZG9lc24ndCBleGlzdC4gUmVtb3ZpbmcgZnJvbSBsaXN0IG9mICIKKyJhbHRlcm5hdGl2ZXMuIgorbXNnc3RyICIiCisiJXMocillbiBhbHRlcm5hdGliYSAoZXN0ZWtlbiAlcyB0YWxkZWFyZW4gemF0aSkgZXogZGEgZXhpc3RpdHplbi4gIgorIkFsdGVybmF0aWJlbiB6ZXJyZW5kYXRpayBrZW50emVuLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMjkgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyNDAKK21zZ2lkICJwcmlvcml0eSIKK21zZ3N0ciAibGVoZW50YXN1bmEiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjMyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjQ5Cittc2dpZCAic2xhdmUgZmlsZSIKK21zZ3N0ciAibW9ycm9pYXJlbiBmaXR4YXRlZ2lhIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI0NAorIywgYy1mb3JtYXQKK21zZ2lkICJwcmlvcml0eSBvZiAlczogJXMiCittc2dzdHIgIiVzKHIpZW4gbGVoZW50YXN1bmE6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI5NworbXNnaWQgInN0YXR1cyIKK21zZ3N0ciAiZWdvZXJhIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI5OQorbXNnaWQgImludmFsaWQgc3RhdHVzIgorbXNnc3RyICJlZ29lcmEgYmFsaW9nYWJlYSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzMDQKK21zZ2lkICJtYXN0ZXIgbGluayIKK21zZ3N0ciAiZXN0ZWthIG1haXN1YSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGlzY2FyZGluZyBvYnNvbGV0ZSBzbGF2ZSBsaW5rICVzICglcykuIgorbXNnc3RyICIlcyAoJXMpIG1vcnJvaWFyZW4gZXN0ZWthIHphaGFya2l0dWEgYmF6dGVydHplbi4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTAyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTY5CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYzOAorbXNnaWQgImF1dG8gbW9kZSIKK21zZ3N0ciAibW9kdSBhdXRvbWF0aWtvYSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MDIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NzgKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjM5Cittc2dpZCAibWFudWFsIG1vZGUiCittc2dzdHIgImVza3V6a28gbW9kdWEiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTA1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgbGluayBjdXJyZW50bHkgcG9pbnRzIHRvICVzIgorbXNnc3RyICIgZXN0ZWthayB1bmVhbiAlcyhlKXJhIGRhcmFtYSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MDgKK21zZ2lkICIgIGxpbmsgY3VycmVudGx5IGFic2VudCIKK21zZ3N0ciAiIGVzdGVrYSBleiBkYWdvIHVuZSBob25ldGFuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUxMgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyAtIHByaW9yaXR5ICVkIgorbXNnc3RyICIlcyAtICVkIGxlaGVudGFzdW5hIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUxNQorIywgYy1mb3JtYXQKK21zZ2lkICIgIHNsYXZlICVzOiAlcyIKK21zZ3N0ciAiICAlcyBtb3Jyb2lhOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ3VycmVudCAnYmVzdCcgdmVyc2lvbiBpcyAnJXMnLiIKK21zZ3N0ciAiVW5la28gYmVydHNpbyAnb25lbmEnICVzIGRhLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MjQKK21zZ2lkICJObyB2ZXJzaW9ucyBhdmFpbGFibGUuIgorbXNnc3RyICJFeiBkYWdvIGJlcnRzaW9yaWsgZXNrdXJhZ2FycmkuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU1MworIywgYy1mb3JtYXQKK21zZ2lkICJUaGVyZSBpcyAlZCBjaG9pY2UgZm9yIHRoZSBhbHRlcm5hdGl2ZSAlcyAocHJvdmlkaW5nICVzKS4iCittc2dpZF9wbHVyYWwgIlRoZXJlIGFyZSAlZCBjaG9pY2VzIGZvciB0aGUgYWx0ZXJuYXRpdmUgJXMgKHByb3ZpZGluZyAlcykuIgorbXNnc3RyWzBdICJBdWtlcmEgJWQgZGFnbyAlcyBvcmRlenRla28gKCVzIGhvcm5pdHV6KS4iCittc2dzdHJbMV0gIiVkIGF1a2VyYSBkYXVkZSAlcyBvcmRlenRla28gKCVzIGhvcm5pdHV6KS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYwCittc2dpZCAiU2VsZWN0aW9uIgorbXNnc3RyICJIYXV0YXBlbmEiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYxCittc2dpZCAiUGF0aCIKK21zZ3N0ciAiQmlkZS1pemVuYSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NjEKK21zZ2lkICJQcmlvcml0eSIKK21zZ3N0ciAiTGVoZW50YXN1bmEiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYxCittc2dpZCAiU3RhdHVzIgorbXNnc3RyICJFZ29lcmEiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTgyCisjLCBjLWZvcm1hdAorbXNnaWQgIlByZXNzIGVudGVyIHRvIGtlZXAgdGhlIGN1cnJlbnQgY2hvaWNlWypdLCBvciB0eXBlIHNlbGVjdGlvbiBudW1iZXI6ICIKK21zZ3N0ciAiIgorIlNha2F0dSBTYXJ0dSB0ZWtsYSBoYXV0YXBlbmEgbWFudGVudHpla29bKl0sIGVkbyBzYWthdHUgaGF1dGF0emUgemVuYmFraWE6ICIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3MjEKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IHJlcGxhY2luZyAlcyB3aXRoIGEgbGluay4iCittc2dzdHIgImV6IGRhICVzIGVzdGVrYSBiYXRla2luIG9yZGV6dHVrby4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNzYyCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbid0IGluc3RhbGwgdW5rbm93biBjaG9pY2UgJXMiCittc2dzdHIgImV6aW4gZGEgJXMgYXVrZXJhIGV6ZXphZ3VuYSBpbnN0YWxhdHUiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNzgwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJza2lwIGNyZWF0aW9uIG9mICVzIGJlY2F1c2UgYXNzb2NpYXRlZCBmaWxlICVzIChvZiBsaW5rIGdyb3VwICVzKSBkb2Vzbid0ICIKKyJleGlzdC4iCittc2dzdHIgIiIKKyJhbGRlIGJhdGVyYSB1dHppa28gZGEgJXMocillbiBzb3JyZXJhLCBlc2xlaXR1dGFrbyAlcyBmaXR4YXRlZ2lhICglcyBlc3Rla2VuICIKKyJ0YWxkZWtvYSkgZXogZGVsYWtvIGV4aXN0aXR6ZW4uIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTc5MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAibm90IHJlcGxhY2luZyAlcyB3aXRoIGEgbGluay4iCittc2dpZCAibm90IHJlbW92aW5nICVzIHNpbmNlIGl0J3Mgbm90IGEgc3ltbGluay4iCittc2dzdHIgImV6IGRhICVzIGVzdGVrYSBiYXRla2luIG9yZGV6dHVrby4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDQxIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDQ3CisjLCBjLWZvcm1hdAorbXNnaWQgIkNhbGwgJXMuIgorbXNnc3RyICJEZWl0dSAlcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDUxCisjLCBjLWZvcm1hdAorbXNnaWQgIkFsdGVybmF0aXZlICVzIHVuY2hhbmdlZCBiZWNhdXNlIGNob2ljZSAlcyBpcyBub3QgYXZhaWxhYmxlLiIKK21zZ3N0ciAiJXMgYWx0ZXJuYXRpYm9hIGV6IGRhIGFsZGF0dSAlcyBoYXV0YXBlbmEgZXogYmFpdGFnbyBlc2t1cmFnYXJyaS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDU1CisjLCBjLWZvcm1hdAorbXNnaWQgIlNraXAgdW5rbm93biBhbHRlcm5hdGl2ZSAlcy4iCittc2dzdHIgIlV0emkgYWxkZSBiYXRlcmEgJXMgYWx0ZXJuYXRpYmEgZXplemFndW5hLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNzcKKyMsIGMtZm9ybWF0Cittc2dpZCAibGluZSB0b28gbG9uZyBvciBub3QgdGVybWluYXRlZCB3aGlsZSB0cnlpbmcgdG8gcmVhZCAlcyIKK21zZ3N0ciAibGVycm9hIGx1emVlZ2lhIGRhIGVkbyBleiBkYWdvIGFtYWl0dXRhICVzIGlyYWt1cnR6ZW4gc2FpYXR6ZWFuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA5MCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjEwMworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2tpcCBpbnZhbGlkIGxpbmU6ICVzIgorbXNnc3RyICJTYWx0YXR1IGxlcnJvIGJhbGlvZ2FiZWE6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjEzMgorIywgYy1mb3JtYXQKK21zZ2lkICJyZW5hbWluZyAlcyBsaW5rIGZyb20gJXMgdG8gJXMuIgorbXNnc3RyICIlcyBlc3Rla2EgJXMoZSl0aWsgJXMoZSlyYSBiZXJyaXplbmRhdHplbi4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTczCisjLCBjLWZvcm1hdAorbXNnaWQgInJlbmFtaW5nICVzIHNsYXZlIGxpbmsgZnJvbSAlcyB0byAlcy4iCittc2dzdHIgIiVzIG1vcnJvaWFyZW4gZXN0ZWthICVzKGUpdGlrICVzKGUpcmEgYmVycml6ZW5kYXR6ZW4uIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE4OQorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBuYW1lICglcykgbXVzdCBub3QgY29udGFpbiAnLycgYW5kIHNwYWNlcy4iCittc2dzdHIgIml6ZW4gYWx0ZXJuYXRpYm9hayAoJXMpIGV6aW4gZHUgZXogJy8nIGV6IHp1cml1bmVyaWsgaXphbi4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTkzCisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIGxpbmsgaXMgbm90IGFic29sdXRlIGFzIGl0IHNob3VsZCBiZTogJXMiCittc2dzdHIgImVzdGVrYSBhbHRlcm5hdGlib2EgZXogZGEgYWJzb2x1dHVhIGV0YSBpemFuIGJlaGFya28gemVuOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxOTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgcGF0aCBpcyBub3QgYWJzb2x1dGUgYXMgaXQgc2hvdWxkIGJlOiAlcyIKK21zZ3N0ciAiYmlkZS1pemVuIGFsdGVybmF0aWJvYSBleiBkYSBhYnNvbHV0dWEgZXRhIGl6YW4gYmVoYXJrbyB6ZW46ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjIyNAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgbWFzdGVyOiAlcyIKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBtYXN0ZXI6IGl0IGlzIGEgc2xhdmUgb2YgJXMiCittc2dzdHIgIiVzIGFsdGVybmF0aWJvYSBlemluIGRhIG5hZ3VzaWEgaXphbjogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjMyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjY3CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIGxpbmsgJXMgaXMgYWxyZWFkeSBtYW5hZ2VkIGJ5ICVzLiIKK21zZ3N0ciAiJXMgZXN0ZWthIGFsdGVybmF0aWJvYSBkYWdvZW5la28gJXMoZSlrIGt1ZGVhdHplbiBkdSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgcGF0aCAlcyBkb2Vzbid0IGV4aXN0LiIKK21zZ3N0ciAiJXMgYmlkZS1pemVuIGFsdGVybmF0aWJvYSBleiBkYSBleGlzdGl0emVuLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImFsdGVybmF0aXZlICVzIGNhbid0IGJlIHNsYXZlIG9mICVzOiAlcyIKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBzbGF2ZSBvZiAlczogaXQgaXMgYSBtYXN0ZXIgYWx0ZXJuYXRpdmUuIgorbXNnc3RyICIlcyBhbHRlcm5hdGlib2EgZXppbiBkYSAlcyhyKWVuIG1vcnJvaWEgaXphbjogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjU4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBtYXN0ZXI6ICVzIgorbXNnaWQgImFsdGVybmF0aXZlICVzIGNhbid0IGJlIHNsYXZlIG9mICVzOiBpdCBpcyBhIHNsYXZlIG9mICVzIgorbXNnc3RyICIlcyBhbHRlcm5hdGlib2EgZXppbiBkYSBuYWd1c2lhIGl6YW46ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI3OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYWx0ZXJuYXRpdmUgbGluayAlcyBpcyBhbHJlYWR5IG1hbmFnZWQgYnkgJXMuIgorbXNnaWQgImFsdGVybmF0aXZlIGxpbmsgJXMgaXMgYWxyZWFkeSBtYW5hZ2VkIGJ5ICVzIChzbGF2ZSBvZiAlcykuIgorbXNnc3RyICIlcyBlc3Rla2EgYWx0ZXJuYXRpYm9hIGRhZ29lbmVrbyAlcyhlKWsga3VkZWF0emVuIGR1IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjMyNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGFyZ3VtZW50IGAlcyciCittc2dzdHIgIiclcycgYXJndW1lbnR1IGV6ZXphZ3VuYSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNDMKK21zZ2lkICItLWluc3RhbGwgbmVlZHMgPGxpbms+IDxuYW1lPiA8cGF0aD4gPHByaW9yaXR5PiIKK21zZ3N0ciAiIgorIi0taW5zdGFsbCBhdWtlcmFrIDxlc3Rla2E+IDxpemVuYT4gPGJpZGVpemVuYT4gPGxlaGVudGFzdW5hPiBiZWhhciBkaXR1IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM0NiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM5NworbXNnaWQgIjxsaW5rPiBhbmQgPHBhdGg+IGNhbid0IGJlIHRoZSBzYW1lIgorbXNnc3RyICI8ZXN0ZWthPiBldGEgPGJpZGVpemVuYT4gZXppbiBkaXJhIGJlcmRpbmEgaXphbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNDkKK21zZ2lkICJwcmlvcml0eSBtdXN0IGJlIGFuIGludGVnZXIiCittc2dzdHIgImxlaGVudGFzdW5hIG9zb2tvIGJhdCBpemFuIGJlaGFyIGRhIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM2MgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIDxuYW1lPiA8cGF0aD4iCittc2dzdHIgIi0tJXMgYXVrZXJhayA8aXplbmE+IDxiaWRlaXplbmE+IGJlaGFyIGRpdHUiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzc2CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgPG5hbWU+IgorbXNnc3RyICItLSVzIGF1a2VyYWsgPGl6ZW5hPiBiZWhhciBkdSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzODgKK21zZ2lkICItLXNsYXZlIG9ubHkgYWxsb3dlZCB3aXRoIC0taW5zdGFsbCIKK21zZ3N0ciAiLS1zbGF2ZSBhdWtlcmEgLS1pbnN0YWxsIGF1a2VyYXJla2luIHNvaWxpayBvbmFydHplbiBkYSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzOTAKK21zZ2lkICItLXNsYXZlIG5lZWRzIDxsaW5rPiA8bmFtZT4gPHBhdGg+IgorbXNnc3RyICItLXNsYXZlIGF1a2VyYWsgPGVzdGVrYT4gPGl6ZW5hPiA8YmlkZWl6ZW5hPiBiZWhhciBkaXR1IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM5OQorIywgYy1mb3JtYXQKK21zZ2lkICJuYW1lICVzIGlzIGJvdGggcHJpbWFyeSBhbmQgc2xhdmUiCittc2dzdHIgIiVzIGl6ZW5hIGJhaSBuYWd1c2kgYmFpIG1vcnJvaWEgZGEiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDAyCisjLCBjLWZvcm1hdAorbXNnaWQgImxpbmsgJXMgaXMgYm90aCBwcmltYXJ5IGFuZCBzbGF2ZSIKK21zZ3N0ciAiJXMgZXN0ZWthIGJhaSBuYWd1c2kgYmFpIG1vcnJvaWEgZGEiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDIyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSA8ZmlsZT4gYXJndW1lbnQiCittc2dzdHIgIi0tJXMgYXVrZXJhayA8Zml0eGF0ZWdpYT4gYXJndW1lbnR1YSBiZWhhciBkdSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gYCVzJyIKK21zZ3N0ciAiJyVzJyBhdWtlcmEgZXplemFndW5hIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQ1MworbXNnaWQgIiIKKyJuZWVkIC0tZGlzcGxheSwgLS1xdWVyeSwgLS1saXN0LCAtLWdldC1zZWxlY3Rpb25zLCAtLWNvbmZpZywgLS1zZXQsIC0tc2V0LSIKKyJzZWxlY3Rpb25zLCAtLWluc3RhbGwsIC0tcmVtb3ZlLCAtLWFsbCwgLS1yZW1vdmUtYWxsIG9yIC0tYXV0byIKK21zZ3N0ciAiIgorIi0tZGlzcGxheSwgLS1xdWVyeSwgLS1saXN0LCAtLWdldC1zZWxlY3Rpb25zLCAtLWNvbmZpZywgLS1zZXQsIC0tc2V0LSIKKyJzZWxlY3Rpb25zLCAtLWluc3RhbGwsIC0tcmVtb3ZlLCAtLWFsbCwgLS1yZW1vdmUtYWxsIGVkbyAtLWF1dG8gYmVoYXIgZGEiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDkwCittc2dpZCAiPHN0YW5kYXJkIGlucHV0PiIKK21zZ3N0ciAiPHNhcnJlcmEgZXN0YW5kYXJyYT4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTAwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTAzCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIGFsdGVybmF0aXZlcyBmb3IgJXMuIgorbXNnc3RyICJleiBkYWdvICVzKHIpZW4gYWx0ZXJuYXRpYmFyaWsuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUzMAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiJXMgaXMgZGFuZ2xpbmcsIGl0IHdpbGwgYmUgdXBkYXRlZCB3aXRoIGJlc3QgY2hvaWNlLiIKK21zZ2lkICIlcy8lcyBpcyBkYW5nbGluZywgaXQgd2lsbCBiZSB1cGRhdGVkIHdpdGggYmVzdCBjaG9pY2UuIgorbXNnc3RyICIlcyBlc2VraXRhIGRhZ28sIGF1a2VyYSBvbmVuYXJla2luIGVndW5lcmF0dWtvIGRhLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MzQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIlcyBoYXMgYmVlbiBjaGFuZ2VkIChtYW51YWxseSBvciBieSBhIHNjcmlwdCkuIFN3aXRjaGluZyB0byBtYW51YWwgIgorI3wgInVwZGF0ZXMgb25seS4iCittc2dpZCAiIgorIiVzLyVzIGhhcyBiZWVuIGNoYW5nZWQgKG1hbnVhbGx5IG9yIGJ5IGEgc2NyaXB0KS4gU3dpdGNoaW5nIHRvIG1hbnVhbCAiCisidXBkYXRlcyBvbmx5LiIKK21zZ3N0ciAiIgorIiVzIGFsZGF0dSBlZ2luIGRhIChlc2t1eiBlZG8gc2NyaXB0IGJhdGV6KS4gRXNrdXprbyBlZ3VuZXJha2V0YXJhIGFsZGF0emVuLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NDIKKyMsIGMtZm9ybWF0Cittc2dpZCAic2V0dGluZyB1cCBhdXRvbWF0aWMgc2VsZWN0aW9uIG9mICVzLiIKK21zZ3N0ciAiJXMocillbiBoYXV0YXBlbiBhdXRvbWF0aWtvYSBrb25maWd1cmF0emVuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU1MQorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBmb3IgJXMgbm90IHJlZ2lzdGVyZWQsIG5vdCBzZXR0aW5nLiIKK21zZ3N0ciAiIgorIiUyJHMocillbiAlMSRzIGFsdGVybmF0aWJhIGV6IGRhZ28gZXJyZWdpc3RyYXR1dGEsIGV6IGRhIGV6YXJ0emVuIGFyaS4uIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU1NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU2MworIywgYy1mb3JtYXQKK21zZ2lkICJUaGVyZSBpcyBubyBwcm9ncmFtIHdoaWNoIHByb3ZpZGVzICVzLiIKK21zZ3N0ciAiRXogZGFnbyAlcyBob3JuaXR6ZW4gZHVlbiBwcm9ncmFtYXJpay4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTY1IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTc1Cittc2dpZCAiTm90aGluZyB0byBjb25maWd1cmUuIgorbXNnc3RyICJFemVyIGV6IGtvbmZpZ3VyYXR6ZWtvLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiVGhlcmUgaXMgb25seSBvbmUgYWx0ZXJuYXRpdmUgaW4gbGluayBncm91cCAlczogJXMiCittc2dzdHIgIkFsdGVybmF0aWJhIGJhdCBiYWthcnJpayBkYWdvICVzIGVzdGVrZW4gdGFsZGVhbjogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTg0CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlICVzIGZvciAlcyBub3QgcmVnaXN0ZXJlZCwgbm90IHJlbW92aW5nLiIKK21zZ3N0ciAiJTIkcyhyKWVuICUxJHMgYWx0ZXJuYXRpYmEgZXogZGFnbyBlcnJlZ2lzdHJhdHV0YSwgZXogZGEga2VudHplbiBhcmkuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU5MgorIywgYy1mb3JtYXQKK21zZ2lkICJyZW1vdmluZyBtYW51YWxseSBzZWxlY3RlZCBhbHRlcm5hdGl2ZSAtIHN3aXRjaGluZyAlcyB0byBhdXRvIG1vZGUiCittc2dzdHIgIiIKKyJlc2t1eiBoYXV0YXR1dGFrbyBhbHRlcm5hdGliYSBlemFiYXR6ZW4gLSAlcyBtb2R1IGF1dG9tYXRpa29yYSBhbGRhdHplbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MTcKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImF1dG9tYXRpYyB1cGRhdGVzIG9mICVzIGFyZSBkaXNhYmxlZCwgbGVhdmluZyBpdCBhbG9uZS4iCittc2dpZCAiYXV0b21hdGljIHVwZGF0ZXMgb2YgJXMvJXMgYXJlIGRpc2FibGVkLCBsZWF2aW5nIGl0IGFsb25lLiIKK21zZ3N0ciAiJXMocillbiBlZ3VuZXJha2V0YSBhdXRvbWF0aWtvYWsgZGVzZ2FpdHV0YSBkYXVkZSwgZXogZGEgdWtpdHVrby4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjE5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ0byByZXR1cm4gdG8gYXV0b21hdGljIHVwZGF0ZXMgdXNlIGB1cGRhdGUtYWx0ZXJuYXRpdmVzIC0tYXV0byAlcycuIgorbXNnaWQgInRvIHJldHVybiB0byBhdXRvbWF0aWMgdXBkYXRlcyB1c2UgJyVzIC0tYXV0byAlcycuIgorbXNnc3RyICIiCisiZWd1bmVyYWtldGEgYXV0b21hdGlrb2V0YXJhIGl0enVsdHpla28gZXJhYmlsaSAndXBkYXRlLWFsdGVybmF0aXZlcyAtLWF1dG8gIgorIiVzJy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjM2CisjLCBjLWZvcm1hdAorbXNnaWQgInVzaW5nICVzIHRvIHByb3ZpZGUgJXMgKCVzKSBpbiAlcy4iCittc2dzdHIgIiVzIGVyYWJpbHR6ZW4gJXMgKCVzKSBob3JuaXR6ZWtvICVzKGUpbi4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjQ0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmb3JjaW5nIHJlaW5zdGFsbGF0aW9uIG9mIGFsdGVybmF0aXZlICVzIGJlY2F1c2UgbGluayBncm91cCAlcyBpcyBicm9rZW4uIgorbXNnc3RyICIiCisiJXMgYWx0ZXJuYXRpYmFyZW4gYmVycmluc3RhbGF6aW9hIGRlcnJpZ29ydHplbiwgJXMgZXN0ZWtlbiB0YWxkZWEgaGF1dHNpdGEgIgorImRhZ29lbGFrby4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjUxCisjLCBjLWZvcm1hdAorbXNnaWQgImN1cnJlbnQgYWx0ZXJuYXRpdmUgJXMgaXMgdW5rbm93biwgc3dpdGNoaW5nIHRvICVzIGZvciBsaW5rIGdyb3VwICVzLiIKK21zZ3N0ciAiIgorInVuZWtvICVzIGFsdGVybmF0aWJhIGV6ZXphZ3VuYSBkYSwgJXMoZSlyYSBhbGRhdHplbiAlcyBlc3Rla2VuICIKKyJ0YWxkZWFyZW50emFrby4iCisKKyN+IG1zZ2lkICJpdCBpcyBhIG1hc3RlciBhbHRlcm5hdGl2ZS4iCisjfiBtc2dzdHIgImhhdSBhbHRlcm5hdGliYSBuYWd1c2lhIGRhLiIKKworI34gbXNnaWQgIml0IGlzIGEgc2xhdmUgb2YgJXMiCisjfiBtc2dzdHIgIiVzKHIpZW4gbW9ycm9pYSBkYSIKKworI34gbXNnaWQgImNhbm5vdCBzdGF0ICVzOiAlcyIKKyN+IG1zZ3N0ciAiZXppbiBkYSAnJXMnIGF0eml0dTogJXMiCisKKyN+IG1zZ2lkICJyZWFkbGluayglcykgZmFpbGVkOiAlcyIKKyN+IG1zZ3N0ciAicmVhZGxpbmsoJXMpLWVrIGh1dHMgZWdpbiBkdTogJXMiCisKKyN+IG1zZ2lkICJzY2FuIG9mICVzIGZhaWxlZDogJXMiCisjfiBtc2dzdHIgImh1dHMgZWdpbiBkdSAlcyBlc2thbmVhdHplYW46ICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWN1dGUgJXM6ICVzIgorI34gbXNnc3RyICJodXRzIGVnaW4gZHUgJXMgZXhla3V0YXR6ZWFuOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byBtYWtlICVzIGEgc3ltbGluayB0byAlczogJXMiCisjfiBtc2dzdHIgImV6aW4gZGEgJXMgJXMoZSlyYSBlc3Rla2F0dTogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCAlcyBhcyAlczogJXMiCisjfiBtc2dzdHIgImV6aW4gZGEgJXMgaW5zdGFsYXR1ICVzIGdpc2E6ICVzIgorCisjfiBtc2dpZCAid2hpbGUgd3JpdGluZyAlczogJXMiCisjfiBtc2dzdHIgIiVzIGlkYXp0ZWFuOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byByZWFkICVzOiAlcyIKKyN+IG1zZ3N0ciAiZXppbiBkYSAlcyBpcmFrdXJyaTogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gY2xvc2UgJXM6ICVzIgorI34gbXNnc3RyICJlemluIGRhICVzIGl0eGk6ICVzIgorCisjfiBtc2dpZCAiY2Fubm90IHdyaXRlICVzOiAlcyIKKyN+IG1zZ3N0ciAiZXppbiBkYSAlcyBpZGF0emk6ICVzIgorCisjLCBmdXp6eQorI358IG1zZ2lkICJ1bmFibGUgdG8gb3BlbiBmaWxlICclcyciCisjfiBtc2dpZCAidW5hYmxlIHRvIHJlbmFtZSBmaWxlICclcycgdG8gJyVzJyIKKyN+IG1zZ3N0ciAiZXppbiBkYSAnJS4yNTBzJyBmaXR4YXRlZ2lhIGlyZWtpIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHVuYnVmZmVyIGAlLjI1NXMnIgorI34gbXNnc3RyICJlemluIGRhJyUuMjU1cycgYnVmZmVycmV0aWsgYXRlcmEiCisKKyN+IG1zZ2lkICJwYXJ0IGZpbGUgYCUuMjUwcycgaGFzIHRyYWlsaW5nIGdhcmJhZ2UiCisjfiBtc2dzdHIgIiclLjI1MHMnIHphdGktZml0eGF0ZWdpYWsgYW1haWVyYWtvIHphYm9ycmEgZGF1a2EiCisKKyN+IG1zZ2lkICJzaXplICU3ZCBvY2N1cnMgJTVkIHRpbWVzXG4iCisjfiBtc2dzdHIgIiU3ZCB0YW1haW5hICU1ZCBhbGRpeiBnZXJ0YXR1IGRhXG4iCisKKyN+IG1zZ2lkICJvdXQgb2YgbWVtb3J5IHB1c2hpbmcgZXJyb3IgaGFuZGxlcjogIgorI34gbXNnc3RyICJtZW1vcmlhcmlrIGV6IGVycm9yZSBrdWRlYXR6YWlsZWFyZW50emF0OiAiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gdW5sb2NrIGRwa2cgc3RhdHVzIGRhdGFiYXNlIgorI34gbXNnc3RyICJlemluIGRhIGRwa2cgZWdvZXJhcmVuIGRhdHUtYmFzZWEgZGVzYmxva2VhdHUiCisKKyN+IG1zZ2lkICJjb3B5IGluZm8gZmlsZSBgJS4yNTVzJyIKKyN+IG1zZ3N0ciAia29waWF0dSAnJS4yNTVzJyBpbmZvcm1hemlvIGZpdHhhdGVnaWEiCisKKyN+IG1zZ2lkICJwYXJzZSBlcnJvciIKKyN+IG1zZ3N0ciAiYW5hbGlzaS1lcnJvcmVhIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHdyaXRlIHBhcnNpbmcgd2FybmluZyIKKyN+IG1zZ3N0ciAiaHV0cyBlZ2luIGR1IGFuYWxpc2lhcmVuIGFiaXN1YSBpZGF6dGVhbiIKKworI34gbXNnaWQgInVuYWJsZSB0byBsb2NrIHRyaWdnZXJzIGFyZWEiCisjfiBtc2dzdHIgImV6aW4gZGEgYWJpYXJhemxlcmVuIGFyZWEgYmxva2VhdHUiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gcnVuICVzICglLjI1MHMpIgorI34gbXNnc3RyICJodXRzIGVnaW4gZHUgJXMgZXhla3V0YXR6ZWFuICglLjI1MHMpIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgc2hlbGwgKCUuMjUwcykiCisjfiBtc2dzdHIgImh1dHMgZWdpbiBkdSBzaGVsbC1hIGV4ZWt1dGF0emVhbiAoJS4yNTBzKSIKKworI34gbXNnaWQgInVuYWJsZSB0byBjaGVjayBmb3IgZXhpc3RlbmNlIG9mIGAlLjI1MHMnIgorI34gbXNnc3RyICJlemluIGRhIGJlZ2lyYXR1ICclLjI1MHMnIGRhZ29lbiIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIHJtIGZvciBjbGVhbnVwIgorI34gbXNnc3RyICJodXRzIGVnaW4gZHUgJ3JtJyBleGVrdXRhdHplYW4gZ2FyYml0emVrbyIKKworI34gbXNnaWQgIiIKKyN+ICIlcyBkZWJ1Z2dpbmcgb3B0aW9uLCAtLWRlYnVnPTxvY3RhbD4gb3IgLUQ8b2N0YWw+OlxuIgorI34gIlxuIgorI34gIiBudW1iZXIgIHJlZi4gaW4gc291cmNlICAgZGVzY3JpcHRpb25cbiIKKyN+ICIgICAgICAxICAgZ2VuZXJhbCAgICAgICAgICAgR2VuZXJhbGx5IGhlbHBmdWwgcHJvZ3Jlc3MgaW5mb3JtYXRpb25cbiIKKyN+ICIgICAgICAyICAgc2NyaXB0cyAgICAgICAgICAgSW52b2NhdGlvbiBhbmQgc3RhdHVzIG9mIG1haW50YWluZXIgc2NyaXB0c1xuIgorI34gIiAgICAgMTAgICBlYWNoZmlsZSAgICAgICAgICBPdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWRcbiIKKyN+ICIgICAgMTAwICAgZWFjaGZpbGVkZXRhaWwgICAgTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWRcbiIKKyN+ICIgICAgIDIwICAgY29uZmYgICAgICAgICAgICAgT3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZVxuIgorI34gIiAgICAyMDAgICBjb25mZmRldGFpbCAgICAgICBMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGVcbiIKKyN+ICIgICAgIDQwICAgZGVwY29uICAgICAgICAgICAgRGVwZW5kZW5jaWVzIGFuZCBjb25mbGljdHNcbiIKKyN+ICIgICAgNDAwICAgZGVwY29uZGV0YWlsICAgICAgTG90cyBvZiBkZXBlbmRlbmNpZXMvY29uZmxpY3RzIG91dHB1dFxuIgorI34gIiAgMTAwMDAgICB0cmlnZ2VycyAgICAgICAgICBUcmlnZ2VyIGFjdGl2YXRpb24gYW5kIHByb2Nlc3NpbmdcbiIKKyN+ICIgIDIwMDAwICAgdHJpZ2dlcnNkZXRhaWwgICAgTG90cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzXG4iCisjfiAiICA0MDAwMCAgIHRyaWdnZXJzc3R1cGlkICAgIFNpbGx5IGFtb3VudHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2Vyc1xuIgorI34gIiAgIDEwMDAgICB2ZXJ5dmVyYm9zZSAgICAgICBMb3RzIG9mIGRyaXZlbCBhYm91dCBlZyB0aGUgZHBrZy9pbmZvICIKKyN+ICJkaXJlY3RvcnlcbiIKKyN+ICIgICAyMDAwICAgc3R1cGlkbHl2ZXJib3NlICAgSW5zYW5lIGFtb3VudHMgb2YgZHJpdmVsXG4iCisjfiAiXG4iCisjfiAiRGVidWdnaW5nIG9wdGlvbnMgYXJlIGJlIG1peGVkIHVzaW5nIGJpdHdpc2Utb3IuXG4iCisjfiAiTm90ZSB0aGF0IHRoZSBtZWFuaW5ncyBhbmQgdmFsdWVzIGFyZSBzdWJqZWN0IHRvIGNoYW5nZS5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIiVzIGFyYXprZXRhLWF1a2VyYSwgLS1kZWJ1Zz08em9ydHppdGFycmE+IGVkbyAtRDx6b3J0eml0YXJyYT46XG4iCisjfiAiXG4iCisjfiAiIHplbmJha2lhIGl0dXJidXJ1LWVycmVmLiAgYXphbHBlbmFcbiIKKyN+ICIgICAgICAxICAgZ2VuZXJhbCAgICAgICAgICAgUHJvZ3Jlc2lvYXJpIGJ1cnV6a28gaW5mb3JtYXppbyBsYWd1bmdhcnJpYVxuIgorI34gIiAgICAgIDIgICBzY3JpcHRzICAgICAgICAgICBNYW50ZW50emFpbGUtc2NyaXB0ZW4gZGVpYSBldGEgZWdvZXJhXG4iCisjfiAiICAgICAxMCAgIGVhY2hmaWxlICAgICAgICAgIFByb3plc2F0dXRha28gZml0eGF0ZWdpIGJha29pdHphcmVuIGlydGVlcmFcbiIKKyN+ICIgICAgMTAwICAgZWFjaGZpbGVkZXRhaWwgICAgUHJvemVzYXR1dGFrbyBmaXR4YXRlZ2kgYmFrb2l0emFyZW4gaXJ0ZWVyYSAiCisjfiAieGVoZWFcbiIKKyN+ICIgICAgIDIwICAgY29uZmYgICAgICAgICAgICAgS29uZmlndXJhemlvLWZpdHhhdGVnaSBiYWtvaXR6YXJlbiBpcnRlZXJhXG4iCisjfiAiICAgIDIwMCAgIGNvbmZmZGV0YWlsICAgICAgIEtvbmZpZ3VyYXppby1maXR4YXRlZ2kgYmFrb2l0emFyZW4gaXJ0ZWVyYSAiCisjfiAieGVoZWFcbiIKKyN+ICIgICAgIDQwICAgZGVwY29uICAgICAgICAgICAgTWVuZGVrb3Rhc3VuYWsgZXRhIGdhdGF6a2FrXG4iCisjfiAiICAgIDQwMCAgIGRlcGNvbmRldGFpbCAgICAgIE1lbmRla290YXN1bmVuIGV0YSBnYXRhemtlbiBpcnRlZXJhIHhlaGVhXG4iCisjfiAiICAgMTAwMCAgIHZlcnl2ZXJib3NlICAgICAgIGRwa2cvaW5mbyBkaXJla3RvcmlvYXJpIGJ1cnV6a28gYXphbHBlbiAiCisjfiAibHV6ZWFrXG4iCisjfiAiICAgMjAwMCAgIHN0dXBpZGx5dmVyYm9zZSAgIEFtYWlnYWJla28gamFyaW9hXG4iCisjfiAiXG4iCisjfiAiQXJhemtldGEgYXVrZXJhayBPUiBsb2dpa29hcmVraW4ga29uYmluYSBkYWl0ZXprZS5cbiIKKyN+ICJLb250dWFuIGhhcnR1IGVzYW5haGlhayBldGEgYmFsaW9hayBhbGRhIGRhaXRlemtlZWxhLlxuIgorCisjfiBtc2dpZCAiIgorI34gIiVzIGZvcmNpbmcgb3B0aW9ucyAtIGNvbnRyb2wgYmVoYXZpb3VyIHdoZW4gcHJvYmxlbXMgZm91bmQ6XG4iCisjfiAiICB3YXJuIGJ1dCBjb250aW51ZTogIC0tZm9yY2UtPHRoaW5nPiw8dGhpbmc+LC4uLlxuIgorI34gIiAgc3RvcCB3aXRoIGVycm9yOiAgICAtLXJlZnVzZS08dGhpbmc+LDx0aGluZz4sLi4uIHwgLS1uby1mb3JjZS0iCisjfiAiPHRoaW5nPiwuLi5cbiIKKyN+ICIgRm9yY2luZyB0aGluZ3M6XG4iCisjfiAiICBhbGwgWyFdICAgICAgICAgICAgICAgIFNldCBhbGwgZm9yY2Ugb3B0aW9uc1xuIgorI34gIiAgZG93bmdyYWRlIFsqXSAgICAgICAgICBSZXBsYWNlIGEgcGFja2FnZSB3aXRoIGEgbG93ZXIgdmVyc2lvblxuIgorI34gIiAgY29uZmlndXJlLWFueSAgICAgICAgICBDb25maWd1cmUgYW55IHBhY2thZ2Ugd2hpY2ggbWF5IGhlbHAgdGhpcyBvbmVcbiIKKyN+ICIgIGhvbGQgICAgICAgICAgICAgICAgICAgUHJvY2VzcyBpbmNpZGVudGFsIHBhY2thZ2VzIGV2ZW4gd2hlbiBvbiBob2xkXG4iCisjfiAiICBiYWQtcGF0aCAgICAgICAgICAgICAgIFBBVEggaXMgbWlzc2luZyBpbXBvcnRhbnQgcHJvZ3JhbXMsIHByb2JsZW1zICIKKyN+ICJsaWtlbHlcbiIKKyN+ICIgIG5vdC1yb290ICAgICAgICAgICAgICAgVHJ5IHRvIChkZSlpbnN0YWxsIHRoaW5ncyBldmVuIHdoZW4gbm90IHJvb3RcbiIKKyN+ICIgIG92ZXJ3cml0ZSAgICAgICAgICAgICAgT3ZlcndyaXRlIGEgZmlsZSBmcm9tIG9uZSBwYWNrYWdlIHdpdGggYW5vdGhlclxuIgorI34gIiAgb3ZlcndyaXRlLWRpdmVydGVkICAgICBPdmVyd3JpdGUgYSBkaXZlcnRlZCBmaWxlIHdpdGggYW4gdW5kaXZlcnRlZCAiCisjfiAidmVyc2lvblxuIgorI34gIiAgYmFkLXZlcmlmeSAgICAgICAgICAgICBJbnN0YWxsIGEgcGFja2FnZSBldmVuIGlmIGl0IGZhaWxzIGF1dGhlbnRpY2l0eSAiCisjfiAiY2hlY2tcbiIKKyN+ICIgIGRlcGVuZHMtdmVyc2lvbiBbIV0gICAgVHVybiBkZXBlbmRlbmN5IHZlcnNpb24gcHJvYmxlbXMgaW50byB3YXJuaW5nc1xuIgorI34gIiAgZGVwZW5kcyBbIV0gICAgICAgICAgICBUdXJuIGFsbCBkZXBlbmRlbmN5IHByb2JsZW1zIGludG8gd2FybmluZ3NcbiIKKyN+ICIgIGNvbmZuZXcgWyFdICAgICAgICAgICAgQWx3YXlzIHVzZSB0aGUgbmV3IGNvbmZpZyBmaWxlcywgZG9uJ3QgcHJvbXB0XG4iCisjfiAiICBjb25mb2xkIFshXSAgICAgICAgICAgIEFsd2F5cyB1c2UgdGhlIG9sZCBjb25maWcgZmlsZXMsIGRvbid0IHByb21wdFxuIgorI34gIiAgY29uZmRlZiBbIV0gICAgICAgICAgICBVc2UgdGhlIGRlZmF1bHQgb3B0aW9uIGZvciBuZXcgY29uZmlnIGZpbGVzIGlmICIKKyN+ICJvbmVcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgaXMgYXZhaWxhYmxlLCBkb24ndCBwcm9tcHQuIElmIG5vIGRlZmF1bHQgY2FuIGJlICIKKyN+ICJmb3VuZCxcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgeW91IHdpbGwgYmUgcHJvbXB0ZWQgdW5sZXNzIG9uZSBvZiB0aGUgY29uZm9sZCAiCisjfiAib3JcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgY29uZm5ldyBvcHRpb25zIGlzIGFsc28gZ2l2ZW5cbiIKKyN+ICIgIGNvbmZtaXNzIFshXSAgICAgICAgICAgQWx3YXlzIGluc3RhbGwgbWlzc2luZyBjb25maWcgZmlsZXNcbiIKKyN+ICIgIGNvbmZhc2sgWyFdICAgICAgICAgICAgT2ZmZXIgdG8gcmVwbGFjZSBjb25maWcgZmlsZXMgd2l0aCBubyBuZXcgIgorI34gInZlcnNpb25zXG4iCisjfiAiICBicmVha3MgWyFdICAgICAgICAgICAgIEluc3RhbGwgZXZlbiBpZiBpdCB3b3VsZCBicmVhayBhbm90aGVyIHBhY2thZ2VcbiIKKyN+ICIgIGNvbmZsaWN0cyBbIV0gICAgICAgICAgQWxsb3cgaW5zdGFsbGF0aW9uIG9mIGNvbmZsaWN0aW5nIHBhY2thZ2VzXG4iCisjfiAiICBhcmNoaXRlY3R1cmUgWyFdICAgICAgIFByb2Nlc3MgZXZlbiBwYWNrYWdlcyB3aXRoIHdyb25nIGFyY2hpdGVjdHVyZVxuIgorI34gIiAgb3ZlcndyaXRlLWRpciBbIV0gICAgICBPdmVyd3JpdGUgb25lIHBhY2thZ2UncyBkaXJlY3Rvcnkgd2l0aCBhbm90aGVyJ3MgIgorI34gImZpbGVcbiIKKyN+ICIgIHVuc2FmZS1pbyBbIV0gICAgICAgICAgRG8gbm90IHBlcmZvcm0gc2FmZSBJL08gb3BlcmF0aW9ucyB3aGVuICIKKyN+ICJ1bnBhY2tpbmdcbiIKKyN+ICIgIHJlbW92ZS1yZWluc3RyZXEgWyFdICAgUmVtb3ZlIHBhY2thZ2VzIHdoaWNoIHJlcXVpcmUgaW5zdGFsbGF0aW9uXG4iCisjfiAiICByZW1vdmUtZXNzZW50aWFsIFshXSAgIFJlbW92ZSBhbiBlc3NlbnRpYWwgcGFja2FnZVxuIgorI34gIlxuIgorI34gIldBUk5JTkcgLSB1c2Ugb2Ygb3B0aW9ucyBtYXJrZWQgWyFdIGNhbiBzZXJpb3VzbHkgZGFtYWdlIHlvdXIgIgorI34gImluc3RhbGxhdGlvbi5cbiIKKyN+ICJGb3JjaW5nIG9wdGlvbnMgbWFya2VkIFsqXSBhcmUgZW5hYmxlZCBieSBkZWZhdWx0LlxuIgorI34gbXNnc3RyICIiCisjfiAiJXMgYmVoYXJ0emVrbyBhdWtlcmFrIC0gYXJhem9hayBkYXVkZW5lYW4gcG9ydGFlcmEga29udHJvbGF0emVrbzpcbiIKKyN+ICIgIGFiaXNhdHUgYmFpbmEgamFycmFpdHU6ICAtLWZvcmNlLTxnYXV6YT4sPGdhdXphPiwuLi5cbiIKKyN+ICIgIGdlbGRpYXJhemkgZXJyb3JlYXJla2luOiAgICAtLXJlZnVzZS08Z2F1emE+LDxnYXV6YT4sLi4uIHwgLS1uby1mb3JjZS0iCisjfiAiPGdhdXphPiwuLi5cbiIKKyN+ICIgR2F1emFrIGJlaGFydHplYTpcbiIKKyN+ICIgIGFsbCBbIV0gICAgICAgICAgICAgICAgRXphcnJpIGJlaGFydHpla28gYXVrZXJhIGd1enRpYWtcbiIKKyN+ICIgIGRvd25ncmFkZSBbKl0gICAgICAgICAgT3JkZXp0dSBwYWtldGUgYmF0IGJlcnRzaW8gemFoYXJyYWdvYXJla2luXG4iCisjfiAiICBjb25maWd1cmUtYW55ICAgICAgICAgIEtvbmZpZ3VyYXR1IGhvbmkgbGFndW4gZGllemFpb2tlZW4gZWRvemVpbiAiCisjfiAicGFrZXRlXG4iCisjfiAiICBob2xkICAgICAgICAgICAgICAgICAgIFByb3plc2F0dSBzb3IgbGl0ZXprZWVuIHBha2V0ZWFrIGF0eGlraXR6ZWtvYWsgXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICBiYWRpcmEgZXJlXG4iCisjfiAiICBiYWQtcGF0aCAgICAgICAgICAgICAgUEFUSGVhbiBwcm9ncmFtYSBnYXJyYW50eml0c3VhayBmYWx0YSBkaXJhLCBcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgIGFyYXpvYWsgc29yIGxpdGV6a2VcbiIKKyN+ICIgIG5vdC1yb290ICAgICAgICAgICAgICAgU2FpYXR1IChkZXMpaW5zdGFsYXR6ZW4gcm9vdCBleiBpemFuIGFycmVuXG4iCisjfiAiICBvdmVyd3JpdGUgICAgICAgICAgICAgIEdhaW5pZGF0emkgcGFrZXRlIGJhdGVrbyBmaXR4YXRlZ2kgYmF0IGJlc3RlXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmF0ZWtpblxuIgorI34gIiAgb3ZlcndyaXRlLWRpdmVydGVkICAgICBHYWluaWRhdHppIGZpdHhhdGVnaSBkZXNiaWRlcmF0dSBiYXQgIgorI34gImRlc2JpZGVyYXR1IFxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgZ2FiZWtvIGJlcnRzaW8gYmF0ZWtpblxuIgorI34gIiAgYmFkLXZlcmlmeSAgICAgICAgICAgICBJbnN0YWxhdHUgcGFrZXRlYWsgYXV0ZW50aWtvdGFzdW4tYXp0ZXJrZXRhIFxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgZ2FpbmRpdHUgZXogYmFkdXRlIGVyZVxuIgorI34gIiAgZGVwZW5kcy12ZXJzaW9uIFshXSAgICBCaWh1cnR1IGFiaXN1IG1lbmRla290YXN1bi1iZXJ0c2lvYXJlbiBhcmF6b2FrXG4iCisjfiAiICBkZXBlbmRzIFshXSAgICAgICAgICAgIEJpaHVydHUgYWJpc3UgbWVuZGVrb3Rhc3VuLWFyYXpvIGd1enRpYWtcbiIKKyN+ICIgIGNvbmZuZXcgWyFdICAgICAgICAgICAgRXJhYmlsaSBiZXRpIGtvbmYuIGZpdHhhdGVnaSBiZXJyaWFrLCBleiAiCisjfiAiYWJpc2F0dVxuIgorI34gIiAgY29uZm9sZCBbIV0gICAgICAgICAgICBFcmFiaWxpIGJldGkga29uZi4gZml0eGF0ZWdpIHphaGFycmFrLCBleiAiCisjfiAiYWJpc2F0dVxuIgorI34gIiAgY29uZmRlZiBbIV0gICAgICAgICAgICBCYWxkaW4gYmFkYWdvLCBlcmFiaWxpIGtvbmYuIGZpdHhhdGVnaSBiZXJyaWVuIFxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgYXVrZXJhIGxlaGVuZXRzaWE7IGV6IGdhbGRldHUuIExlaGVuZXRzaXJpayAiCisjfiAiZXogXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICBiYWRhZ28sIGdhbGRldHUgZWdpbmdvIGR1LCBjb25mb2xkIGVkbyBjb25mbmV3XG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICBhdWtlcmV0YWtvIGJhdCBlbWFuIGV6IGJhZGFcbiIKKyN+ICIgIGNvbmZtaXNzIFshXSAgICAgICAgICAgSW5zdGFsYXR1IGJldGkgZmFsdGEgZGlyZW4ga29uZi4gZml0eGF0ZWdpYWtcbiIKKyN+ICIgIGNvbmZhc2sgWyFdICAgICAgICAgICAgR2FsZGV0dSBrb25maWd1cmF6aW9rbyBmaXR4YXRlZ2lhayBvcmRldHplYVxuIgorI34gIiAgYnJlYWtzIFshXSAgICAgICAgICAgICBJbnN0YWxhdHUgbmFoaXogZXRhIGhvbmVrIGJlc3RlIHBha2V0ZSBiYXQgIgorI34gImhhdXRzaVxuIgorI34gIiAgY29uZmxpY3RzIFshXSAgICAgICAgICBPbmFydHUgcGFrZXRlIGdhdGF6a2F0c3VhayBpbnN0YWxhdHplYVxuIgorI34gIiAgYXJjaGl0ZWN0dXJlIFshXSAgICAgICBPa2VycmVrbyBhcmtpdGVrdHVyYSBkdXRlbiBwYWtldGVhayBlcmUgIgorI34gInByb3plc2F0dVxuIgorI34gIiAgb3ZlcndyaXRlLWRpciBbIV0gICAgICBHYWluaWRhdHppIHBha2V0ZSBiYXRlbiBkaXJla3RvcmlvYSBiZXN0ZSBiYXRlblxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgZml0eGF0ZWdpYXJla2luXG4iCisjfiAiICB1bnNhZmUtaW8gWyFdICAgICAgICAgIEV6IGxhbmR1IFMvSWtvIGVyYWdpa2V0YSBzZWd1cnVhayAiCisjfiAiZGVza29ucHJpbWl0emVhblxuIgorI34gIiAgcmVtb3ZlLXJlaW5zdHJlcSBbIV0gICBLZW5kdSBpbnN0YWxhemlvYSBiZWhhciBkdXRlbiBwYWtldGVha1xuIgorI34gIiAgcmVtb3ZlLWVzc2VudGlhbCBbIV0gICBLZW5kdSBmdW50c2V6a28gcGFrZXRlIGJhdFxuIgorI34gIlxuIgorI34gIktPTlRVWiAtIFshXSBtYXJrYSBkdXRlbiBhdWtlcmFrIGVyYWJpbHR6ZWFrIGluc3RhbGF6aW9hIGxhcnJpa2kgaG9uZGEgIgorI34gImRlemFrZS5cbiIKKyN+ICJbKl0gbWFya2EgZHV0ZW4gYmVoYXJ0emVrbyBhdWtlcmFrIGdhaXR1dGEgZGF1ZGUgbGVoZW5lc3BlbmV6LlxuIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgZHBrZy1zcGxpdCB0byBzZWUgaWYgaXQncyBwYXJ0IG9mIGEgbXVsdGlwYXJ0ZXIiCisjfiBtc2dzdHIgIiIKKyN+ICJodXRzIGVnaW4gZHUgZHBrZy1zcGxpdCBleGVrdXRhdHplYW4gZml0eGF0ZWdpIHphdGl0dSBiYXRlbiB6YXRpIG90ZSBkZW4gIgorI34gImJlZ2lyYXR6ZWtvIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWNsIGRlYnNpZy12ZXJpZnkiCisjfiBtc2dzdHIgImh1dHMgZWdpbiBkdSBkZWJzaWctdmVyaWZ5IGV4ZWt1dGF0emVhbiAoZXhlY2wpIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgZHBrZy1kZWIgdG8gZXh0cmFjdCBjb250cm9sIGluZm9ybWF0aW9uIgorI34gbXNnc3RyICJodXRzIGVnaW4gZHUgZHBrZy1kZWIgZXhla3V0YXR6ZWFuIGtvbnRyb2wtaW5mb3JtYXppb2EgYXRlcmF0emVrbyIKKworI34gbXNnaWQgInVuYWJsZSB0byBleGVjIGRwa2ctZGViIHRvIGdldCBmaWxlc3lzdGVtIGFyY2hpdmUiCisjfiBtc2dzdHIgImV6aW4gZGEgZHBrZy1kZWIgZXhla3V0YXR1IGZpdHhhdGVnaS1zaXN0ZW1hcmVuIGFydHhpYm9hIGxvcnR6ZWtvIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSBkaXNhcHBlYXJpbmcgY29udHJvbCBpbmZvIGZpbGUgYCUuMjUwcyciCisjfiBtc2dzdHIgImV6aW4gZGEgZXphYmF0dSBkZXNhZ2VydHV0YWtvICclLjI1MHMnIGtvbnRyb2xla28gaW5mLiBmaXR4YXRlZ2lhIgorCisjfiBtc2dpZCAiZHBrZzogJXMgbm90IGZvdW5kLlxuIgorI34gbXNnc3RyICJkcGtnOiAlcyBleiBkYSBhdXJraXR1LlxuIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIC4uLi9ERUJJQU4iCisjfiBtc2dzdHIgImh1dHMgZWdpbiBkdSBjaGRpciBlZ2l0ZWFuOiAuLi4vREVCSUFOIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgdGFyIC1jZiIKKyN+IG1zZ3N0ciAiaHV0cyBlZ2luIGR1IHRhciAtY2YgZXhla3V0YXR6ZWFuIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIG1ha2UgdG1wZmlsZSAoY29udHJvbCkiCisjfiBtc2dzdHIgImh1dHMgZWdpbiBkdSBhbGRpIGJhdGVyYWtvIGZpdHhhdGVnaSBiYXQgc29ydHplYW4gKGtvbnRyb2xhKSIKKworI34gbXNnaWQgImZhaWxlZCB0byB1bmxpbmsgdG1wZmlsZSAoY29udHJvbCksICVzIgorI34gbXNnc3RyICIiCisjfiAiaHV0cyBlZ2luIGR1IGFsZGkgYmF0ZXJha28gZml0eGF0ZWdpIGJhdCBkZXNlc3Rla2F0emVhbiAoa29udHJvbGEpLCAlcyIKKworI34gbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdG1wZmlsZSAoY29udHJvbCkiCisjfiBtc2dzdHIgIiIKKyN+ICJodXRzIGVnaW4gZHUgYWxkaSBiYXRlcmFrbyBmaXR4YXRlZ2lhcmVuIGhhc2llcmFyYSBqb2F0ZWFuIChrb250cm9sYSkiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZnN0YXQgdG1wZmlsZSAoY29udHJvbCkiCisjfiBtc2dzdHIgImZzdGF0OiBodXRzIGVnaW4gZHUgYWxkaSBiYXRlcmFrbyBmaXR4YXRlZ2kgYmF0ZWtpbiAoa29udHJvbGEpIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgZmluZCIKKyN+IG1zZ3N0ciAiaHV0cyBlZ2luIGR1IGZpbmQgZXhla3V0YXR6ZWFuIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgc2ggLWMgbXYgZm9vLyogJmMiCisjfiBtc2dzdHIgImh1dHMgZWdpbiBkdSBzaCAtYyBtdiBmb28vKiAmYyBleGVrdXRhdHplYW4iCisKKyN+IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSAlLjI1MHMgbGVuZ3RoIGNvbnRhaW5zIG51bGxzIgorI34gbXNnc3RyICInJS4yNTBzJyBmaXR4YXRlZ2lhIGhvbmRhdHV0YSBkYWdvIC0gJS4yNTBzIGx1emVyYWsgbnVsdWFrIGRhdXprYSIKKworI34gbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIG5lZ2F0aXZlIG1lbWJlciBsZW5ndGggJXppIgorI34gbXNnc3RyICInJS4yNTBzJyBmaXR4YXRlZ2lhIGhvbmRhdHV0YSBkYWdvIC0ga2lkZWFyZW4gJXppIGx1emVyYSBuZWdhdGlib2EiCisKKyN+IG1zZ2lkICJmYWlsZWQgZ2V0dGluZyB0aGUgY3VycmVudCBmaWxlIHBvc2l0aW9uIgorI34gbXNnc3RyICJodXRzIGVnaW4gZHUgZml0eGF0ZWdpYXJlbiB1bmVrbyBwb3NpemlvYSBsb3J0emVhbiIKKworI34gbXNnaWQgImZhaWxlZCBzZXR0aW5nIHRoZSBjdXJyZW50IGZpbGUgcG9zaXRpb24iCisjfiBtc2dzdHIgImh1dHMgZWdpbiBkdSBmaXR4YXRlZ2lhcmVuIHVuZWtvIHBvc2l6aW9hIGV6YXJ0emVhbiIKKworI34gbXNnaWQgInZlcnNpb24gbnVtYmVyIgorI34gbXNnc3RyICJiZXJ0c2lvLXplbmJha2lhIgorCisjfiBtc2dpZCAibWVtYmVyIGxlbmd0aCIKKyN+IG1zZ3N0ciAia2lkZWFyZW4gbHV6ZXJhIgorCisjfiBtc2dpZCAiaGVhZGVyIGluZm8gbWVtYmVyIgorI34gbXNnc3RyICJnb2lidXJ1YXJlbiBpbmZvcm1hemlva28ga2lkZWEiCisKKyN+IG1zZ2lkICJza2lwcGVkIGNvbnRyb2wgYXJlYSBmcm9tICVzIgorI34gbXNnc3RyICIlczoga29udHJvbGFyZW4gYXJlYSBzYWx0YXR1IGVnaW4gZGEiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHRlbXBvcmFyeSBkaXJlY3RvcnkiCisjfiBtc2dzdHIgImh1dHMgZWdpbiBkdSBhbGRpIGJhdGVyYWtvIGRpcmVrdG9yaW9hIHNvcnR6ZWFuIgorCisjfiBtc2dpZCAiaW5mb19zcGV3IgorI34gbXNnc3RyICJpbmZvX3NwZXciCisKKyN+IG1zZ2lkICJpbmZvIGxlbmd0aCIKKyN+IG1zZ3N0ciAiaW5mb3JtYXppb2FyZW4gbHV6ZXJhIgorCisjfiBtc2dpZCAidG90YWwgbGVuZ3RoIgorI34gbXNnc3RyICJsdXplcmEgZ3V6dGlyYSIKKworI34gbXNnaWQgImRhdGEgbGVuZ3RoIgorI34gbXNnc3RyICJkYXR1ZW4gbHV6ZXJhIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgZHBrZy1kZWIgdG8gZXh0cmFjdCBmaWVsZCB2YWx1ZSIKKyN+IG1zZ3N0ciAiaHV0cyBlZ2luIGR1IGRwa2ctZGViIGV4ZWt1dGF0emVhbiBrb250cm9sLWluZm9ybWF6aW9hIGVyYXV6dGVrbyIKKworI34gbXNnaWQgInVuYWJsZSB0byBzdGF0ICVzOiAlcyIKKyN+IG1zZ3N0ciAiZXppbiBkYSAlcyBhdHppdHU6ICVzIgorCisjfiBtc2dpZCAic2xhdmUgbmFtZSAlcyBkdXBsaWNhdGVkIgorI34gbXNnc3RyICIlcyBtb3Jyb2lhcmVuIGl6ZW5hIGJpa29penR1dGEiCisKKyN+IG1zZ2lkICJzbGF2ZSBsaW5rICVzIGR1cGxpY2F0ZWQiCisjfiBtc2dzdHIgIiVzIG1vcnJvaWFyZW4gZXN0ZWthIGJpa29penR1dGEiCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3BvL2ZyLmdtbyBiL2Rwa2ctMS4xNi4xLjEvcG8vZnIuZ21vCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmMyYTcxOWUKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3BvL2ZyLmdtbwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3BvL2ZyLnBvIGIvZHBrZy0xLjE2LjEuMS9wby9mci5wbwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40ZDZjODg0Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9wby9mci5wbwpAQCAtMCwwICsxLDc0MDUgQEAKKyMgdHJhbnNsYXRpb24gb2YgZnIucG8gdG8gRnJlbmNoCisjIE1lc3NhZ2VzIGZyYW7Dp2FpcyBwb3VyIGRwa2cgKExpbnV4LUdOVSBEZWJpYW4pLgorIyBDb3B5cmlnaHQgKEMpIDE5OTcgQ2hyaXN0b3BoZSBMZSBCYXJzIDxjbGViYXJzQGRlYmlhbi5vcmc+LgorIyBDb3B5cmlnaHQgKEMpIDIwMDAgSmVyb21lIE1hcmFudCA8amVyb21lLm1hcmFudEBmcmVlLmZyPgorIyBDb3B5cmlnaHQgKEMpIDIwMDAsIDIwMDEsIDIwMDIgTWFydGluIFF1aW5zb24gPE1hcnRpbi5RdWluc29uQHR1eGZhbWlseS5vcmc+CisjIENvcHlyaWdodCAoQykgMjAwNS0yMDA5IERlYmlhbiBGcmVuY2ggbDEwbiB0ZWFtIDxkZWJpYW4tbDEwbi1mcmVuY2hAbGlzdHMuZGViaWFuLm9yZz4KKyMKKyMgQ2hyaXN0aWFuIFBlcnJpZXIgPGJ1YnVsbGVAZGViaWFuLm9yZz4sIDIwMDUsIDIwMDYsIDIwMDgsIDIwMDksIDIwMTAsIDIwMTEuCisjIEZyZWRlcmljIEJvdGhhbXkgPGZyZWRlcmljLmJvdGhhbXlAZnJlZS5mcj4sIDIwMDYsIDIwMDcuCisjIEZsb3JlbnQgVVNTRUlMIDxzd2lpcDgxQGZyZWUuZnI+LCAyMDA4LgorbXNnaWQgIiIKK21zZ3N0ciAiIgorIlByb2plY3QtSWQtVmVyc2lvbjogZnJcbiIKKyJSZXBvcnQtTXNnaWQtQnVncy1UbzogZGViaWFuLWRwa2dAbGlzdHMuZGViaWFuLm9yZ1xuIgorIlBPVC1DcmVhdGlvbi1EYXRlOiAyMDExLTEwLTE0IDA3OjExKzAyMDBcbiIKKyJQTy1SZXZpc2lvbi1EYXRlOiAyMDExLTA3LTE4IDE5OjM2KzAyMDBcbiIKKyJMYXN0LVRyYW5zbGF0b3I6IENocmlzdGlhbiBQZXJyaWVyIDxidWJ1bGxlQGRlYmlhbi5vcmc+XG4iCisiTGFuZ3VhZ2UtVGVhbTogRnJlbmNoIDxkZWJpYW4tbDEwbi1mcmVuY2hAbGlzdHMuZGViaWFuLm9yZz5cbiIKKyJMYW5ndWFnZTogZnJcbiIKKyJNSU1FLVZlcnNpb246IDEuMFxuIgorIkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD1VVEYtOFxuIgorIkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXRcbiIKKyJQbHVyYWwtRm9ybXM6IFBsdXJhbC1Gb3JtczogbnBsdXJhbHM9MjsgcGx1cmFsPW4+MTtcbiIKKyJYLUdlbmVyYXRvcjogTG9rYWxpemUgMS4yXG4iCisKKyM6IGxpYi9kcGtnL2FyLmM6NjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgJyVjJyBpbiBhcmNoaXZlICclLjI1MHMnIG1lbWJlciAnJS4xNnMnIHNpemUiCittc2dzdHIgImludmFsaWQgY2hhcmFjdGVyICclYycgaW4gYXJjaGl2ZSAnJS4yNTBzJyBtZW1iZXIgJyUuMTZzJyBzaXplIgorCisjOiBsaWIvZHBrZy9hci5jOjgxIGxpYi9kcGtnL2FyLmM6OTcgbGliL2Rwa2cvYXIuYzoxMDggbGliL2Rwa2cvYXIuYzoxMTIKKyM6IGxpYi9kcGtnL2FyLmM6MTM0IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTU0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBmaWxlICclcyciCittc2dzdHIgImltcG9zc2libGUgZCfDqWNyaXJlIGxlIGZpY2hpZXIgwqvCoCVzwqDCuyIKKworIzogbGliL2Rwa2cvYXIuYzo5NAorIywgYy1mb3JtYXQKK21zZ2lkICJnZW5lcmF0ZWQgY29ycnVwdCBhciBoZWFkZXIgZm9yICclcyciCittc2dzdHIgImwnZW4tdMOqdGUgYXIgY3LDqcOpIHBvdXIgwqvCoCVzwqDCuyBlc3QgY29ycm9tcHUiCisKKyM6IGxpYi9kcGtnL2FyLmM6MTIzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBmc3RhdCBhciBtZW1iZXIgZmlsZSAoJXMpIgorbXNnc3RyICLDqWNoZWMgZGUgwqvCoGZzdGF0wqDCuyBzdXIgdW4gw6lsw6ltZW50IGQndW4gZmljaGllciBhciAoJXMpIgorCisjOiBsaWIvZHBrZy9hci5jOjEzMAorIywgYy1mb3JtYXQKK21zZ2lkICJhciBtZW1iZXIgZmlsZSAoJXMpIgorbXNnc3RyICLDqWzDqW1lbnQgZCd1biBmaWNoaWVyIGFyICglcykiCisKKyM6IGxpYi9kcGtnL2J1ZmZlci5jOjE5NgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCBvbiBidWZmZXIgY29weSBmb3IgJXMiCittc2dzdHIgIsOpY2hlYyBkZSBsZWN0dXJlIGxvcnMgZCd1bmUgY29waWUgZGUgYnVmZmVyIHBvdXIgJXMiCisKKyM6IGxpYi9kcGtnL2J1ZmZlci5jOjIxMgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgaW4gd3JpdGUgb24gYnVmZmVyIGNvcHkgZm9yICVzIgorbXNnc3RyICLDqWNoZWMgZW4gw6ljcml0dXJlIGxvcnMgZCd1bmUgY29waWUgZGUgYnVmZmVyIHBvdXIgJXMiCisKKyM6IGxpYi9kcGtnL2J1ZmZlci5jOjIyMAorIywgYy1mb3JtYXQKK21zZ2lkICJzaG9ydCByZWFkIG9uIGJ1ZmZlciBjb3B5IGZvciAlcyIKK21zZ3N0ciAibGVjdHVyZSBjb3VydGUgKHNob3J0IHJlYWQpIGxvcnMgZCd1bmUgY29waWUgZGUgYnVmZmVyIHBvdXIgJXMiCisKKyM6IGxpYi9kcGtnL2J1ZmZlci5jOjI4OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgdGFyIgorbXNnaWQgImZhaWxlZCB0byBzZWVrICVzIgorbXNnc3RyICJpbXBvc3NpYmxlIGQnZXjDqWN1dGVyIMKrwqB0YXLCoMK7IgorCisjOiBsaWIvZHBrZy9jb21tYW5kLmM6MTc4IGxpYi9kcGtnL2NvbW1hbmQuYzoyMDQgc3JjL2hlbHAuYzo2MjEKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTggc3JjL3Byb2Nlc3NhcmMuYzoxMzggc3JjL3Byb2Nlc3NhcmMuYzo0MzIKKyM6IHNyYy9wcm9jZXNzYXJjLmM6ODM5IGRwa2ctZGViL2J1aWxkLmM6NDU5IGRwa2ctZGViL2J1aWxkLmM6NTM4CisjOiBkcGtnLWRlYi9idWlsZC5jOjU2MSBkcGtnLWRlYi9leHRyYWN0LmM6MzE3IGRwa2ctZGViL2luZm8uYzo2NQorIzogZHBrZy1zcGxpdC9zcGxpdC5jOjY5IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo0NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGV4ZWN1dGUgJXMgKCVzKSIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkJ2V4w6ljdXRlciAlcyAoJXMpIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBkZWNvbXByZXNzaW9uIgorbXNnc3RyICIlc8KgOiBkw6ljb21wcmVzc2lvbiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzo4OQorIywgYy1mb3JtYXQKK21zZ2lkICIlczogY29tcHJlc3Npb24iCittc2dzdHIgIiVzwqA6IGNvbXByZXNzaW9uIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjExMgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZXJyb3IgYmluZGluZyBpbnB1dCB0byBnemlwIHN0cmVhbSIKK21zZ3N0ciAiIgorIiVzwqA6wqB1bmUgZXJyZXVyIHMnZXN0IHByb2R1aXRlIGVuIGxpYW50IGxlcyBkb25uw6llcyBlbnRyYW50ZXMgYXUgZmx1eCBnemlwIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCByZWFkIGVycm9yOiAnJXMnIgorbXNnc3RyICIlc8KgOiBlcnJldXIgZGUgbGVjdHVyZSBpbnRlcm5lIGRlIGd6aXDCoDogwqvCoCVzwqDCuyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxMzIgbGliL2Rwa2cvY29tcHJlc3MuYzoxMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgd3JpdGUgZXJyb3IiCittc2dzdHIgIiVzwqA6IGVycmV1ciBkJ8OpY3JpdHVyZSBpbnRlcm5lIGRlIGd6aXAiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTUwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvciBiaW5kaW5nIG91dHB1dCB0byBnemlwIHN0cmVhbSIKK21zZ3N0ciAiJXM6IGVycmV1ciBlbiBsaWFudCBsYSBzb3J0aWUgYXUgZmx1eCBnemlwIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE1NworIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCByZWFkIGVycm9yIgorbXNnc3RyICIlc8KgOiBlcnJldXIgZGUgbGVjdHVyZSBpbnRlcm5lIGRlIGd6aXAiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTY3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHdyaXRlIGVycm9yOiAnJXMnIgorbXNnc3RyICIlc8KgOiBlcnJldXIgZCfDqWNyaXR1cmUgaW50ZXJuZSBkZSBnemlwwqA6IMKrwqAlc8KgwrsiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTgwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHdyaXRlIGVycm9yOiAlcyIKK21zZ3N0ciAiJXPCoDogZXJyZXVyIGQnw6ljcml0dXJlIGludGVybmUgZGUgZ3ppcMKgOiDCq8KgJXPCoMK7IgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjIyMAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZXJyb3IgYmluZGluZyBpbnB1dCB0byBiemlwMiBzdHJlYW0iCittc2dzdHIgIiIKKyIlc8KgOsKgdW5lIGVycmV1ciBzJ2VzdCBwcm9kdWl0ZSBlbiBsaWFudCBsZXMgZG9ubsOpZXMgZW50cmFudGVzIGF1IGZsdXggYnppcDIiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiByZWFkIGVycm9yOiAnJXMnIgorbXNnc3RyICIlc8KgOiBlcnJldXIgZGUgbGVjdHVyZSBpbnRlcm5lIGRlIGJ6aXAywqA6IMKrwqAlc8KgwrsiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjQwIGxpYi9kcGtnL2NvbXByZXNzLmM6MjQ0IGxpYi9kcGtnL2NvbXByZXNzLmM6Mjk0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiB3cml0ZSBlcnJvciIKK21zZ3N0ciAiJXPCoDogZXJyZXVyIGQnw6ljcml0dXJlIGludGVybmUgZGUgYnppcDIiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjU4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvciBiaW5kaW5nIG91dHB1dCB0byBiemlwMiBzdHJlYW0iCittc2dzdHIgIiVzOiBlcnJldXIgZW4gbGlhbnQgbGEgc29ydGllIGF1IGZsdXggYnppcDIiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjY1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiByZWFkIGVycm9yIgorbXNnc3RyICIlc8KgOiBlcnJldXIgZGUgbGVjdHVyZSBpbnRlcm5lIGRlIGJ6aXAyIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI3NSBsaWIvZHBrZy9jb21wcmVzcy5jOjI4NgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgd3JpdGUgZXJyb3I6ICclcyciCittc2dzdHIgIiVzwqA6IGVycmV1ciBkJ8OpY3JpdHVyZSBpbnRlcm5lIGRlIGJ6aXAywqA6IMKrwqAlc8KgwrsiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjgyCittc2dpZCAidW5leHBlY3RlZCBiemlwMiBlcnJvciIKK21zZ3N0ciAiZXJyZXVyIGluYXR0ZW5kdWUgZGUgYnppcDIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVwZGF0ZXMgZGlyZWN0b3J5IGNvbnRhaW5zIGZpbGUgYCUuMjUwcycgd2hvc2UgbmFtZSBpcyB0b28gbG9uZyAobGVuZ3RoPSVkLCAiCisibWF4PSVkKSIKK21zZ3N0ciAiIgorImxlIHLDqXBlcnRvaXJlIGRlcyBtaXNlcyDDoCBqb3VyIGNvbnRpZW50IHVuIGZpY2hpZXIgwqvCoCUuMjUwc8KgwrsgZG9udCBsZSBub20gIgorImVzdCB0cm9wIGxvbmcgKGxvbmd1ZXVyPSVkLCBtYXg9JWQpIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1cGRhdGVzIGRpcmVjdG9yeSBjb250YWlucyBmaWxlcyB3aXRoIGRpZmZlcmVudCBsZW5ndGggbmFtZXMgKGJvdGggJWQgYW5kICVkKSIKK21zZ3N0ciAiIgorImxlIHLDqXBlcnRvaXJlIGRlcyBtaXNlcyDDoCBqb3VyIGNvbnRpZW50IGRlcyBmaWNoaWVycyBkb250IGxlcyBub21zIHNvbnQgZGUgIgorImRpZmbDqXJlbnRlcyBsb25ndWV1cnMgKMOgIGxhIGZvaXMgJWQgZXQgJWQpIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjg2CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzY2FuIHVwZGF0ZXMgZGlyZWN0b3J5IGAlLjI1NXMnIgorbXNnc3RyICJuZSBwZXV0IHBhcyBwYXJjb3VyaXIgbGUgcsOpcGVydG9pcmUgZGUgbWlzZXMgw6Agam91ciDCq8KgJS4yNTVzwqDCuyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlbW92ZSBpbmNvcnBvcmF0ZWQgdXBkYXRlIGZpbGUgJS4yNTVzIgorbXNnc3RyICJpbXBvc3NpYmxlIGRlIHN1cHByaW1lciBsZSBmaWNoaWVyIGRlIG1pc2Ugw6Agam91ciBpbmNvcnBvcsOpICUuMjU1cyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxMjEgZHBrZy1kZWIvYnVpbGQuYzo0NDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBgJS4yNTVzJyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkZSBjcsOpZXIgwqvCoCUuMjU1c8KgwrsiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTI1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmaWxsICUuMjUwcyB3aXRoIHBhZGRpbmciCittc2dzdHIgImltcG9zc2libGUgZGUgbWV0dHJlIGVuIGZvcm1lICUuMjUwcyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxMjcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoICUuMjUwcyBhZnRlciBwYWRkaW5nIgorbXNnc3RyICJ2aWRhZ2UgaW1wb3NzaWJsZSBkZSAlLjI1MHMgYXByw6hzIGxhIG1pc2UgZW4gZm9ybWUiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTI5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWVrIHRvIHN0YXJ0IG9mICUuMjUwcyBhZnRlciBwYWRkaW5nIgorbXNnc3RyICJkw6lwbGFjZW1lbnQgaW1wb3NzaWJsZSBhdSBkw6lidXQgZGUgJS4yNTBzIGFwcsOocyBsYSBtaXNlIGVuIGZvcm1lIgorCisjICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyBOb3RlcyBkZSB0cmFkdWN0aW9uCisjIHRyaWdnZXIgICAgICAgICAgICAgIDogYWN0aW9uIGRpZmbDqXLDqWUKKyMgdHJpZ2dlcnMtYXdhaXRlZCAgICAgOiDCqyBhY3Rpb25zLWRpZmbDqXLDqWVzLcOgLXZlbmlyIMK7CisjIHRyaWdnZXJzLXBlbmRpbmcgICAgIDogwqsgYWN0aW9ucy1kaWZmw6lyw6llcy1lbi1hdHRlbnRlIMK7CisjIHRyaWdnZXJzLWRlZmVycmVkICAgIDogwqsgYWN0aW9uLWRpZmbDqXLDqWUtcmVwb3J0w6llIMK7CisjIGF3YWl0ZWQgdHJpZ2dlciAgICAgIDogYWN0aW9uIGRpZmbDqXLDqWUgYXR0ZW5kdWUKKyMgcGVuZGluZyB0cmlnZ2VyICAgICAgOiBhY3Rpb24gZGlmZsOpcsOpZSBlbiBhdHRlbnRlCisjIHRyaWdnZXJzIGRlZmVycmVkICAgIDogYWN0aW9ucyBkaWZmw6lyw6llcyByZXBvcnTDqWVzCisjIHRyaWdnZXIgaW50ZXJlc3RzICAgIDogYWN0aW9ucyBkaWZmw6lyw6llcworIyB0cmlnZ2VycyBhcmUgYXdhaXRlZCA6IGFjdGlvbnMgZGlmZsOpcsOpZXMgw6AgdmVuaXIKKyMgdHJpZ2dlcnMgYXJlIHBlbmRpbmcgOiBhY3Rpb25zIGRpZmbDqXLDqWVzIGVuIGF0dGVudGUKKyMgIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjE2MQorIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxOTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gbG9jayBmaWxlICVzIGZvciB0ZXN0aW5nIgorbXNnc3RyICJpbXBvc3NpYmxlIGQnb3V2cmlyIGxlIGZpY2hpZXIgZGUgdmVycm91ICVzIHBvdXIgdGVzdHMiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjIxCittc2dpZCAidW5hYmxlIHRvIG9wZW4vY3JlYXRlIHN0YXR1cyBkYXRhYmFzZSBsb2NrZmlsZSIKK21zZ3N0ciAiIgorImltcG9zc2libGUgZGUgY3LDqWVyL291dnJpciBsZSBmaWNoaWVyIHZlcnJvdSBkZSBsYSBiYXNlIGRlIGRvbm7DqWVzIGQnw6l0YXQiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjMxCittc2dpZCAieW91IGRvIG5vdCBoYXZlIHBlcm1pc3Npb24gdG8gbG9jayB0aGUgZHBrZyBzdGF0dXMgZGF0YWJhc2UiCittc2dzdHIgIiIKKyJ2b3VzIG4nYXZleiBwYXMgbGEgcGVybWlzc2lvbiBkZSB2ZXJyb3VpbGxlciBsYSBiYXNlIGRlIGRvbm7DqWVzIGQnw6l0YXQgZGUgIgorImRwa2ciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjMzCittc2dpZCAiZHBrZyBzdGF0dXMgZGF0YWJhc2UiCittc2dzdHIgImJhc2UgZGUgZG9ubsOpZXMgZCfDqXRhdCBkZSBkcGtnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjI1NworbXNnaWQgInJlcXVlc3RlZCBvcGVyYXRpb24gcmVxdWlyZXMgc3VwZXJ1c2VyIHByaXZpbGVnZSIKK21zZ3N0ciAibCdvcMOpcmF0aW9uIGRlbWFuZMOpZSByZXF1aWVydCBsZXMgcHJpdmlsw6hnZXMgZHUgc3VwZXJ1dGlsaXNhdGV1ciIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyNjIKK21zZ2lkICJ1bmFibGUgdG8gYWNjZXNzIGRwa2cgc3RhdHVzIGFyZWEiCittc2dzdHIgImltcG9zc2libGUgZCdhY2PDqWRlciBhdSByw6lwZXJ0b2lyZSBhZG1pbmlzdHJhdGlmIGRlIGRwa2ciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjY0Cittc2dpZCAib3BlcmF0aW9uIHJlcXVpcmVzIHJlYWQvd3JpdGUgYWNjZXNzIHRvIGRwa2cgc3RhdHVzIGFyZWEiCittc2dzdHIgIiIKKyJvcMOpcmF0aW9uIGRlbWFuZGFudCB1biBhY2PDqHMgZW4gbGVjdHVyZS3DqWNyaXR1cmUgYXUgcsOpcGVydG9pcmUgYWRtaW5pc3RyYXRpZiAiCisiZGUgZHBrZyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozMDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlbW92ZSBteSBvd24gdXBkYXRlIGZpbGUgJS4yNTVzIgorbXNnc3RyICLDqWNoZWMgZGUgbGEgc3VwcHJlc3Npb24gZGUgbW9uIHByb3ByZSBmaWNoaWVyIGRlIG1pc2Ugw6Agam91ciAlLjI1NXMiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzQ3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkJ8OpY3JpcmUgbGUgbm91dmVsIMOpdGF0IGRlIMKrwqAlLjI1MHPCoMK7IgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM0OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgImltcG9zc2libGUgZCfDqWxpbWluZXIgbGUgbm91dmVsIMOpdGF0IGRlIMKrwqAlLjI1MHPCoMK7IgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM1MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gdHJ1bmNhdGUgZm9yIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJpbXBvc3NpYmxlIGRlIHRyb25xdWVyIGxlIG5vdXZlbCDDqXRhdCBkZSDCq8KgJS4yNTBzwqDCuyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZzeW5jIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJpbXBvc3NpYmxlIGRlIHN5bmNocm9uaXNlciBsZSBub3V2ZWwgw6l0YXQgZGUgwqvCoCUuMjUwc8KgwrsiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzU1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkZSBmZXJtZXIgbGUgbm91dmVsIMOpdGF0IGRlIMKrwqAlLjI1MHPCoMK7IgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM1OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkJ2luc3RhbGxlciBsZSBub3V2ZWwgw6l0YXQgZGUgwqvCoCUuMjUwc8KgwrsiCisKKyM6IGxpYi9kcGtnL2Rpci5jOjUwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBnZXQgZmlsZSBkZXNjcmlwdG9yIGZvciBkaXJlY3RvcnkgJyVzJyIKK21zZ3N0ciAiIgorImltcG9zc2libGUgZCdvYnRlbmlyIGxlIGRlc2NyaXB0ZXVyIGRlIGZpY2hpZXIgcG91ciBsZSByw6lwZXJ0b2lyZSDCq8KgJXPCoMK7IgorCisjOiBsaWIvZHBrZy9kaXIuYzo1NAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBkaXJlY3RvcnkgJyVzJyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkZSBzeW5jaHJvbmlzZXIgbGUgcsOpcGVydG9pcmUgwqvCoCVzwqDCuyIKKworIzogbGliL2Rwa2cvZGlyLmM6NjkgbGliL2Rwa2cvZGlyLmM6MTMxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICJpbXBvc3NpYmxlIGQnb3V2cmlyIGxlIHLDqXBlcnRvaXJlIMKrwqAlc8KgwrsiCisKKyM6IGxpYi9kcGtnL2Rpci5jOjEwOSBzcmMvZGl2ZXJ0Y21kLmM6MjE4IGRwa2ctc3BsaXQvc3BsaXQuYzoyMDIKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjkzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIGZpbGUgJyVzJyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkJ291dnJpciBsZSBmaWNoaWVyIMKrwqAlc8KgwrsiCisKKyM6IGxpYi9kcGtnL2Rpci5jOjExMSBzcmMvZGl2ZXJ0Y21kLmM6MjMyIHNyYy9kaXZlcnRjbWQuYzozNzcKKyM6IHNyYy9zdGF0Y21kLmM6MjE3IGRwa2ctZGViL2J1aWxkLmM6NTk4IGRwa2ctc3BsaXQvam9pbi5jOjY1CisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTg3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNDA2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzeW5jIGZpbGUgJyVzJyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkZSBzeW5jaHJvbiDCq8KgJS4yNTBzwqDCuyIKKworIzogbGliL2Rwa2cvZGlyLmM6MTEzIHNyYy9kaXZlcnRjbWQuYzoyMzQgc3JjL2RpdmVydGNtZC5jOjM3OQorIzogZHBrZy1kZWIvYnVpbGQuYzo2MDAgZHBrZy1zcGxpdC9qb2luLmM6NjcgZHBrZy1zcGxpdC9xdWV1ZS5jOjE4OQorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzMTQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE0MDgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIGZpbGUgJyVzJyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkZSBmZXJtZXIgbGUgZmljaGllciDCq8KgJXPCoMK7IgorCisjOiBsaWIvZHBrZy9kdW1wLmM6Mzk2CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB3cml0ZSBkZXRhaWxzIG9mIGAlLjUwcycgdG8gYCUuMjUwcyciCittc2dzdHIgIsOpY2hlYyBkZSBsJ8OpY3JpdHVyZSBkZXMgZMOpdGFpbHMgZGUgwqvCoCUuNTBzwqDCuyBzdXIgwqvCoCUuMjUwc8KgwrsiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0MjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gJyVzJyBmb3Igd3JpdGluZyAlcyBkYXRhYmFzZSIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkJ291dnJpciDCq8KgJXPCoMK7IHBvdXIgw6ljcmlyZSBsYSBiYXNlIGRlIGRvbm7DqWVzICVzIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDI2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgYnVmZmVyaW5nIG9uICVzIGRhdGFiYXNlIGZpbGUiCittc2dzdHIgIiIKKyJpbXBvc3NpYmxlIGRlIHBhcmFtw6l0cmVyIGxhIG1pc2UgZW4gdGFtcG9uIHN1ciBsZSBmaWNoaWVyIGRlIGJhc2UgZGUgZG9ubsOpZXMgIgorIiVzIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDM4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB3cml0ZSAlcyBkYXRhYmFzZSByZWNvcmQgYWJvdXQgJyUuNTBzJyB0byAnJS4yNTBzJyIKK21zZ3N0ciAiw6ljaGVjIGRlIGwnw6ljcml0dXJlIGRlICVzIGVucmVnaXN0cmVtZW50cyBkZSDCq8KgJS41MHPCoMK7IMOgIMKrwqAlLjI1MHPCoMK7IgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDQ2CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBmbHVzaCAlcyBkYXRhYmFzZSB0byAnJS4yNTBzJyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkZSB2aWRlciBsYSBiYXNlIGRlIGRvbm7DqWVzICVzIGRhbnMgwqvCoCUuMjUwc8KgwrsiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZzeW5jICVzIGRhdGFiYXNlIHRvICclLjI1MHMnIgorbXNnc3RyICLDqWNoZWMgZGUgbGEgc3luY2hyb25pc2F0aW9uIGRlIGxhIGJhc2UgZGUgZG9ubsOpZXMgJXMgYXZlYyDCq8KgJS4yNTBzwqDCuyIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ1MQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2xvc2UgJyUuMjUwcycgYWZ0ZXIgd3JpdGluZyAlcyBkYXRhYmFzZSIKK21zZ3N0ciAiIgorIsOpY2hlYyBkZSBjbMO0dHVyZSBkZSDCq8KgJS4yNTBzwqDCuyBhcHLDqHMgbCfDqWNyaXR1cmUgZGUgbGEgYmFzZSBkZSBkb25uw6llcyAlcyIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ1NQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gbGluayAnJS4yNTBzJyB0byAnJS4yNTBzJyBmb3IgYmFja3VwIG9mICVzIGRhdGFiYXNlIgorbXNnc3RyICIiCisiaW1wb3NzaWJsZSBkZSBsaWVyIMKrwqAlLjI1MHPCoMK7IMOgIMKrwqAlLjI1MHPCoMK7IHBvdXIgbGEgc2F1dmVnYXJkZSBkZSBsYSBiYXNlIGRlICIKKyJkb25uw6llcyAlcyIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ1OAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gaW5zdGFsbCAnJS4yNTBzJyBhcyAnJS4yNTBzJyBjb250YWluaW5nICVzIGRhdGFiYXNlIgorbXNnc3RyICIiCisiw6ljaGVjIGRlIGwnaW5zdGFsbGF0aW9uIGRlIMKrwqAlLjI1MHPCoMK7IGNvbW1lIMKrwqAlLjI1MHPCoMK7IGNvbnRlbmFudCBsYSBiYXNlIGRlICIKKyJkb25uw6llcyAlcyIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjk0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogdW5yZWNvdmVyYWJsZSBmYXRhbCBlcnJvciwgYWJvcnRpbmc6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKyIlc8KgOsKgZXJyZXVyIGZhdGFsZSBpcnLDqXZlcnNpYmxlLCBhYmFuZG9uwqA6XG4iCisiICVzXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoxMDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBvdXRzaWRlIGVycm9yIGNvbnRleHQsIGFib3J0aW5nOlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisiJXPCoDrCoGhvcnMgZHUgY29udGV4dGUgZCdlcnJldXIsIGFiYW5kb27CoDpcbiIKKyIgJXNcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjEyMAorbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBlcnJvciBjb250ZXh0IgorbXNnc3RyICJtYW5xdWUgZGUgbcOpbW9pcmUgcG91ciB1biBub3V2ZWF1IGNvbnRleHRlIGQnZXJyZXVyIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MTgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogZXJyb3Igd2hpbGUgY2xlYW5pbmcgdXA6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKyIlc8KgOiBlcnJldXIgbG9ycyBkdSBuZXR0b3lhZ2XCoDpcbiIKKyIgJXNcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjIwMQorIywgYy1mb3JtYXQKK21zZ2lkICIlczogdG9vIG1hbnkgbmVzdGVkIGVycm9ycyBkdXJpbmcgZXJyb3IgcmVjb3ZlcnkhIVxuIgorbXNnc3RyICIlc8KgOiB0cm9wIGQnZXJyZXVycyBpbWJyaXF1w6llcyBsb3JzIGQndW5lIHLDqXBhcmF0aW9uLlxuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MjY4IGxpYi9kcGtnL2VoYW5kbGUuYzozMDcKK21zZ2lkICJvdXQgb2YgbWVtb3J5IGZvciBuZXcgY2xlYW51cCBlbnRyeSIKK21zZ3N0ciAibWFucXVlIGRlIG3DqW1vaXJlIHBvdXIgdW5lIG5vdXZlbGxlIGVudHLDqWUgbmV0dG95w6llIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MjkxCittc2dpZCAib3V0IG9mIG1lbW9yeSBmb3IgbmV3IGNsZWFudXAgZW50cnkgd2l0aCBtYW55IGFyZ3VtZW50cyIKK21zZ3N0ciAiIgorIm1hbnF1ZSBkZSBtw6ltb2lyZSBwb3VyIHVuZSBub3V2ZWxsZSBlbnRyw6llIG5ldHRvecOpZSBhdmVjIGJlYXVjb3VwIGRlICIKKyJwYXJhbcOodHJlcyIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjM1MgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZXJyb3I6ICVzXG4iCittc2dzdHIgIiVzwqA6IGVycmV1csKgOsKgJXNcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjM5MworIywgYy1mb3JtYXQKK21zZ2lkICIlczogd2FybmluZzogJXNcbiIKK21zZ3N0ciAiJXPCoDogYXZlcnRpc3NlbWVudMKgOsKgJXNcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjQxNgorIywgYy1mb3JtYXQKK21zZ2lkICIlczolczolZDogaW50ZXJuYWwgZXJyb3I6ICVzXG4iCittc2dzdHIgIiVzOiVzOiVkOiBlcnJldXIgaW50ZXJuZcKgOsKgJXNcbiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgaXMgbWlzc2luZyIKK21zZ3N0ciAiJXMgZXN0IG1hbnF1YW50IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0OQorIywgYy1mb3JtYXQKK21zZ2lkICInJS41MHMnIGlzIG5vdCBhbGxvd2VkIGZvciAlcyIKK21zZ3N0ciAiwqvCoCUuNTBzwqDCuyBuJ2VzdCBwYXMgYXV0b3Jpc8OpIHBvdXIgJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjczCisjLCBjLWZvcm1hdAorbXNnaWQgImp1bmsgYWZ0ZXIgJXMiCittc2dzdHIgImNlIHF1aSBzdWl0ICVzIGVzdCBpbnV0aWxlIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo4NworIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHBhY2thZ2UgbmFtZSAoJS4yNTBzKSIKK21zZ3N0ciAibm9tIGRlIHBhcXVldCBpbmNvcnJlY3QgKCUuMjUwcykiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJlbXB0eSBmaWxlIGRldGFpbHMgZmllbGQgYCVzJyIKK21zZ3N0ciAiY2hhbXAgIMKrwqAlc8KgwrsgdmlkZSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTA1CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgZGV0YWlscyBmaWVsZCBgJXMnIG5vdCBhbGxvd2VkIGluIHN0YXR1cyBmaWxlIgorbXNnc3RyICJjaGFtcCDCq8KgJXPCoMK7IG5vbiBhdXRvcmlzw6kgZGFucyBsZSBmaWNoaWVyIGQnw6l0YXRzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidG9vIG1hbnkgdmFsdWVzIGluIGZpbGUgZGV0YWlscyBmaWVsZCBgJXMnIChjb21wYXJlZCB0byBvdGhlcnMpIgorbXNnc3RyICIiCisidHJvcCBkZSB2YWxldXJzIGRhbnMgbGUgY2hhbXAgZHUgZmljaGllciDCq8KgJXPCoMK7IChwYXIgcmFwcG9ydCBhdXggYXV0cmVzKSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTMyCisjLCBjLWZvcm1hdAorbXNnaWQgInRvbyBmZXcgdmFsdWVzIGluIGZpbGUgZGV0YWlscyBmaWVsZCBgJXMnIChjb21wYXJlZCB0byBvdGhlcnMpIgorbXNnc3RyICIiCisidHJvcCBwZXUgZGUgdmFsZXVycyBkYW5zIGxlIGNoYW1wIGR1IGZpY2hpZXIgwqvCoCVzwqDCuyAocGFyIHJhcHBvcnQgYXV4IGF1dHJlcykiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE1NAorbXNnaWQgInllcy9ubyBpbiBib29sZWFuIGZpZWxkIgorbXNnc3RyICJ5ZXMvbm8gZGFucyB1biBjaGFtcCBib29sw6llbiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTc0Cittc2dpZCAid29yZCBpbiBgcHJpb3JpdHknIGZpZWxkIgorbXNnc3RyICJtb3QgZGFucyBsZSBjaGFtcCDCq8KgcHJpb3JpdHnCoMK7IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxODYKK21zZ2lkICJ2YWx1ZSBmb3IgYHN0YXR1cycgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICJ2YWxldXIgZHUgY2hhbXAgwqvCoHN0YXR1c8Kgwrsgbm9uIGF1dG9yaXPDqWUgZGFucyBjZSBjb250ZXh0ZSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTkxCittc2dpZCAiZmlyc3QgKHdhbnQpIHdvcmQgaW4gYHN0YXR1cycgZmllbGQiCittc2dzdHIgInByZW1pZXIgbW90ICjCq8Kgd2FudMKgwrspIGRhbnMgbGUgY2hhbXAgwqvCoHN0YXR1c8KgwrsiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE5NAorbXNnaWQgInNlY29uZCAoZXJyb3IpIHdvcmQgaW4gYHN0YXR1cycgZmllbGQiCittc2dzdHIgImRldXhpw6htZSBtb3QgKMKrwqBlcnJvcsKgwrspIGRhbnMgbGUgY2hhbXAgwqvCoHN0YXR1c8KgwrsiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE5NworbXNnaWQgInRoaXJkIChzdGF0dXMpIHdvcmQgaW4gYHN0YXR1cycgZmllbGQiCittc2dzdHIgInRyb2lzacOobWUgbW90ICjCq8Kgc3RhdHVzwqDCuykgZGFucyBsZSBjaGFtcCDCq8Kgc3RhdHVzwqDCuyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjA3CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGluIFZlcnNpb24gc3RyaW5nICclLjI1MHMnIgorbXNnc3RyICJlcnJldXIgZGFucyBsYSBjaGHDrm5lIFZlcnNpb24gwqvCoCUuMjUwc8KgwrsiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjIxOAorbXNnaWQgIm9ic29sZXRlIGBSZXZpc2lvbicgb3IgYFBhY2thZ2UtUmV2aXNpb24nIGZpZWxkIHVzZWQiCittc2dzdHIgInV0aWxpc2F0aW9uIGQndW4gY2hhbXAgb2Jzb2zDqHRlIMKrwqBSZXZpc2lvbsKgwrsgb3UgwqvCoFBhY2thZ2UtUmV2aXNpb27CoMK7IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyMzUKK21zZ2lkICJ2YWx1ZSBmb3IgYGNvbmZpZy12ZXJzaW9uJyBmaWVsZCBub3QgYWxsb3dlZCBpbiB0aGlzIGNvbnRleHQiCittc2dzdHIgInZhbGV1ciBkdSBjaGFtcCDCq8KgY29uZmlnLXZlcnNpb27CoMK7IGludGVyZGl0ZSBkYW5zIGNlIGNvbnRleHRlIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyNDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgaW4gQ29uZmlnLVZlcnNpb24gc3RyaW5nICclLjI1MHMnIgorbXNnc3RyICJlcnJldXIgZGFucyBsYSBjaGHDrm5lIENvbmZpZy1WZXJzaW9uIMKrwqAlLjI1MHPCoMK7IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAidmFsdWUgZm9yIGBjb25mZmlsZXMnIGhhcyBtYWxmb3JtYXR0ZWQgbGluZSBgJS4qcyciCittc2dzdHIgIiIKKyJsYSBsaWduZSBjb250ZW5hbnQgbGVzIGZpY2hpZXJzIGRlIGNvbmZpZ3VyYXRpb24gKMKrwqBjb25mZmlsZXPCoMK7KSBlc3QgbWFsICIKKyJmb3Jtw6llIMKrwqAlLipzwqDCuyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6Mjg3CisjLCBjLWZvcm1hdAorbXNnaWQgInZhbHVlIGZvciBgY29uZmZpbGVzJyBoYXMgbGluZSBzdGFydGluZyB3aXRoIG5vbi1zcGFjZSBgJWMnIgorbXNnc3RyICIiCisibGEgbGlnbmUgY29udGVuYW50IGxlcyBmaWNoaWVycyBkZSBjb25maWd1cmF0aW9uICjCq8KgY29uZmZpbGVzwqDCuykgY29tbWVuY2UgIgorInBhciBsZSBjYXJhY3TDqHJlwqvCoCVjwqDCuyAocXVpIG4nZXN0IHBhcyBibGFuYykiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjMwNAorbXNnaWQgInJvb3Qgb3IgbnVsbCBkaXJlY3RvcnkgaXMgbGlzdGVkIGFzIGEgY29uZmZpbGUiCittc2dzdHIgInLDqXBlcnRvaXJlIHJhY2luZSBvdSBudWwgZMOpY2xhcsOpIGNvbW1lIHVuIMKrwqBjb25mZmlsZcKgwrsiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjM2NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgbWlzc2luZyBwYWNrYWdlIG5hbWUsIG9yIGdhcmJhZ2Ugd2hlcmUgcGFja2FnZSBuYW1lIGV4cGVjdGVkIgorbXNnc3RyICIiCisiY2hhbXAgwqvCoCVzwqDCuywgbm9tIGRlIHBhcXVldCBtYW5xdWFudCwgb3UgYWJzdXJkaXTDqXMgw6AgbGEgcGxhY2UgZCd1biBub20gZGUgIgorInBhcXVldCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MzcwCisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgZmllbGQsIGludmFsaWQgcGFja2FnZSBuYW1lIGAlLjI1NXMnOiAlcyIKK21zZ3N0ciAiY2hhbXAgwqvCoCVzwqDCuywgbm9tIGRlIHBhcXVldCBpbmNvcnJlY3QgwqvCoCUuMjU1c8KgwrvCoDogJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQwNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOlxuIgorIiBiYWQgdmVyc2lvbiByZWxhdGlvbnNoaXAgJWMlYyIKK21zZ3N0ciAiIgorImNoYW1wIMKrwqAlc8KgwrssIHLDqWbDqXJlbmNlIMOgIMKrwqAlLjI1NXPCoMK7wqA6XG4iCisiIG1hdXZhaXNlIHJlbGF0aW9uIGVudHJlIHZlcnNpb25zICVjJWMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQxMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOlxuIgorIiBgJWMnIGlzIG9ic29sZXRlLCB1c2UgYCVjPScgb3IgYCVjJWMnIGluc3RlYWQiCittc2dzdHIgIiIKKyJjaGFtcCDCq8KgJXPCoMK7LCByw6lmw6lyZW5jZSDDoCDCq8KgJS4yNTVzwqDCu8KgOlxuIgorIiDCq8KgJWPCoMK7IGVzdCBvYnNvbMOodGUsIHV0aWxpc2VyIMKrwqAlYz3CoMK7IG91IMKrwqAlYyVjwqDCuyDDoCBsYSBwbGFjZSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDIyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6XG4iCisiIGltcGxpY2l0IGV4YWN0IG1hdGNoIG9uIHZlcnNpb24gbnVtYmVyLCBzdWdnZXN0IHVzaW5nIGA9JyBpbnN0ZWFkIgorbXNnc3RyICIiCisiY2hhbXAgwqvCoCVzwqDCuywgcsOpZsOpcmVuY2Ugw6AgwqvCoCUuMjU1c8KgwrvCoDpcbiIKKyIgY29ycmVzcG9uZGFuY2UgZXhhY3RlIGltcGxpY2l0ZSBwb3VyIGxlIG51bcOpcm8gZGUgdmVyc2lvbiwgdXRpbGlzZXogcGx1dMO0dCAiCisiwqvCoD3CoMK7IMOgIGxhIHBsYWNlIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MzAKK21zZ2lkICJPbmx5IGV4YWN0IHZlcnNpb25zIG1heSBiZSB1c2VkIGZvciBQcm92aWRlcyIKK21zZ3N0ciAiT24gbmUgcGV1dCB1dGlsaXNlciBxdWUgZGVzIHZlcnNpb25zIGV4YWN0ZXMgZGFucyBsZSBjaGFtcCBQcm92aWRlcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6XG4iCisiIHZlcnNpb24gdmFsdWUgc3RhcnRzIHdpdGggbm9uLWFscGhhbnVtZXJpYywgc3VnZ2VzdCBhZGRpbmcgYSBzcGFjZSIKK21zZ3N0ciAiIgorImNoYW1wIMKrwqAlc8KgwrssIHLDqWbDqXJlbmNlIMOgIMKrwqAlLjI1NXPCoMK7wqA6XG4iCisiIHZhbGV1ciBkZSB2ZXJzaW9uIGNvbW1lbsOnYW50IGF2ZWMgdW4gY2FyYWN0w6hyZSBub24tYWxwaGFudW3DqXJpcXVlLCBham91dGV6ICIKKyJwbHV0w7R0IHVuIGVzcGFjZSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDUxIGxpYi9kcGtnL2ZpZWxkcy5jOjQ1NQorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6IHZlcnNpb24gY29udGFpbnMgYCVjJyIKK21zZ3N0ciAiY2hhbXAgwqvCoCVzwqDCuywgcsOpZsOpcmVuY2Ugw6AgwqvCoCUuMjU1c8KgwrvCoDogdmVyc2lvbiBjb250ZW5hbnQgwqvCoCVjwqDCuyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDU5CisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzogdmVyc2lvbiB1bnRlcm1pbmF0ZWQiCittc2dzdHIgImNoYW1wIMKrwqAlc8KgwrssIHLDqWbDqXJlbmNlIMOgIMKrwqAlLjI1NXPCoMK7wqA6IHZlcnNpb24gbm9uIHRlcm1pbsOpZSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDY1CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgZmllbGQsIHJlZmVyZW5jZSB0byAnJS4yNTVzJzogZXJyb3IgaW4gdmVyc2lvbiIKK21zZ3N0ciAiY2hhbXAgwqvCoCVzwqDCuywgcsOpZsOpcmVuY2Ugw6AgwqvCoCUuMjU1c8KgwrvCoDogZXJyZXVyIGRhbnMgbGEgdmVyc2lvbiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDc1CisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgZmllbGQsIHN5bnRheCBlcnJvciBhZnRlciByZWZlcmVuY2UgdG8gcGFja2FnZSBgJS4yNTVzJyIKK21zZ3N0ciAiIgorImNoYW1wIMKrwqAlc8KgwrssIGVycmV1ciBkZSBzeW50YXhlIGFwcsOocyBsYSByw6lmw6lyZW5jZSBhdSBwYXF1ZXQgwqvCoCUuMjU1c8KgwrsiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ4MgorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZXMgKGB8Jykgbm90IGFsbG93ZWQgaW4gJXMgZmllbGQiCittc2dzdHIgImFsdGVybmF0aXZlICjCq8KgfMKgwrspIG5vbiBhdXRvcmlzw6llIGRhbnMgbGUgY2hhbXAgwqvCoCVzwqDCuyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTM2Cittc2dpZCAidmFsdWUgZm9yIGB0cmlnZ2Vycy1wZW5kaW5nJyBmaWVsZCBub3QgYWxsb3dlZCBpbiB0aGlzIGNvbnRleHQiCittc2dzdHIgIiIKKyJ2YWxldXIgZHUgY2hhbXAgwqvCoGFjdGlvbi1kaWZmw6lyw6llLWVuLWF0dGVudGXCoMK7ICjCq8KgdHJpZ2dlcnMtcGVuZGluZ8KgwrspICIKKyJpbnRlcmRpdGUgZGFucyBjZSBjb250ZXh0ZSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTQzCisjLCBjLWZvcm1hdAorbXNnaWQgImlsbGVnYWwgcGVuZGluZyB0cmlnZ2VyIG5hbWUgYCUuMjU1cyc6ICVzIgorbXNnc3RyICJub20gZCdhY3Rpb24gZGlmZsOpcsOpZSBpbGzDqWdhbCDCq8KgJS4yNTVzwqDCu8KgOiAlcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTQ3CisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBwZW5kaW5nIHRyaWdnZXIgYCUuMjU1cyciCittc2dzdHIgImFjdGlvbiBkaWZmw6lyw6llIGVuIGRvdWJsZSDCq8KgJS4yNTVzwqDCuyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTYxCittc2dpZCAidmFsdWUgZm9yIGB0cmlnZ2Vycy1hd2FpdGVkJyBmaWVsZCBub3QgYWxsb3dlZCBpbiB0aGlzIGNvbnRleHQiCittc2dzdHIgIiIKKyJ2YWxldXIgZHUgY2hhbXAgZGUgwqvCoGFjdGlvbi1kaWZmw6lyw6llLcOgLXZlbmlywqDCuyAowqvCoHRyaWdnZXJzLWF3YWl0ZWTCoMK7KSBub24gIgorImF1dG9yaXPDqWUgZGFucyBjZSBjb250ZXh0ZSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTY4CisjLCBjLWZvcm1hdAorbXNnaWQgImlsbGVnYWwgcGFja2FnZSBuYW1lIGluIGF3YWl0ZWQgdHJpZ2dlciBgJS4yNTVzJzogJXMiCittc2dzdHIgIm5vbSBkZSBwYXF1ZXQgaWxsw6lnYWwgZGFucyBsJ2FjdGlvbiBkaWZmw6lyw6llwqDCq8KgJS4yNTVzwqDCu8KgOiAlcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTc0CisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBhd2FpdGVkIHRyaWdnZXIgcGFja2FnZSBgJS4yNTVzJyIKK21zZ3N0ciAiYWN0aW9uIGRpZmbDqXLDqWXCoGVuIGRvdWJsZSDCq8KgJS4yNTVzwqDCuyIKKworIzogbGliL2Rwa2cvZmlsZS5jOjUxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IHNvdXJjZSBmaWxlICclLjI1MHMnIgorbXNnc3RyICJpbXBvc3NpYmxlIGQnb3V2cmlyIGxlIGZpY2hpZXIgc291cmNlIMKrwqAlLjI1MHPCoMK7IgorCisjOiBsaWIvZHBrZy9maWxlLmM6NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoYW5nZSBvd25lcnNoaXAgb2YgdGFyZ2V0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgImltcG9zc2libGUgZGUgY2hhbmdlciBsZSBwcm9wcmnDqXRhaXJlIGR1IGZpY2hpZXIgY2libGUgwqvCoCUuMjUwc8KgwrsiCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzo1OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IG1vZGUgb2YgdGFyZ2V0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgImltcG9zc2libGUgZGUgY2hhbmdlciBsZXMgcGVybWlzc2lvbnMgZHUgZmljaGllciBjaWJsZSDCq8KgJS4yNTBzwqDCuyIKKworIzogbGliL2Rwa2cvZmlsZS5jOjg1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB1bmxvY2sgJXMiCittc2dzdHIgImltcG9zc2libGUgZGUgZMOpdmVycm91aWxsZXIgJXMiCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzoxMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoZWNrIGZpbGUgJyVzJyBsb2NrIHN0YXR1cyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkZSB2w6lyaWZpZXIgbCfDqXRhdCBkZSB2ZXJyb3VpbGxhZ2UgZHUgZmljaGllciDCq8KgJXPCoMK7IgorCisjOiBsaWIvZHBrZy9maWxlLmM6MTQ2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGlzIGxvY2tlZCBieSBhbm90aGVyIHByb2Nlc3MiCittc2dzdHIgIiVzIGVzdCB2ZXJyb3VpbGzDqSBwYXIgdW4gYXV0cmUgcHJvY2Vzc3VzIgorCisjOiBsaWIvZHBrZy9maWxlLmM6MTQ4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBsb2NrICVzIgorbXNnc3RyICJpbXBvc3NpYmxlIGRlIGTDqXZlcnJvdWlsbGVyICVzIgorCisjOiBsaWIvZHBrZy9sb2cuYzo1MworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBvcGVuIGxvZyBgJXMnOiAlc1xuIgorbXNnc3RyICJpbXBvc3NpYmxlIGQnb3V2cmlyIGxlIGZpY2hpZXIgZGUgam91cm5hbCDCq8KgJXPCoMK7wqA6ICVzXG4iCisKKyM6IGxpYi9kcGtnL2xvZy5jOjg1Cittc2dpZCAiPHBhY2thZ2Ugc3RhdHVzIGFuZCBwcm9ncmVzcyBmaWxlIGRlc2NyaXB0b3I+IgorbXNnc3RyICI8ZGVzY3JpcHRldXIgZGUgZmljaGllciBkJ8OpdGF0IGRlIHBhcXVldCBldCBkZSBwcm9ncmVzc2lvbj4iCisKKyM6IGxpYi9kcGtnL2xvZy5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgdG8gc3RhdHVzIGZkICVkIgorbXNnc3RyICJpbXBvc3NpYmxlIGQnw6ljcmlyZSBsZSBkZXNjcmlwdGV1ciBkZSBmaWNoaWVyIGQnw6l0YXQgJWQiCisKKyM6IGxpYi9kcGtnL21saWIuYzo0NCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYyCisjLCBjLWZvcm1hdAorbXNnaWQgIm1hbGxvYyBmYWlsZWQgKCV6dSBieXRlcykiCittc2dzdHIgIsOpY2hlYyBkZSDCq8KgbWFsbG9jwqDCuyAoJXp1IG9jdGV0cykiCisKKyM6IGxpYi9kcGtnL21saWIuYzo1OAorIywgYy1mb3JtYXQKK21zZ2lkICJyZWFsbG9jIGZhaWxlZCAoJXp1IGJ5dGVzKSIKK21zZ3N0ciAiw6ljaGVjIGRlIMKrwqByZWFsbG9jwqDCuyAoJXp1IG9jdGV0cykiCisKKyM6IGxpYi9kcGtnL21saWIuYzo3MiBsaWIvZHBrZy9tbGliLmM6OTAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI3NworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjMzNCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTEwNworbXNnaWQgImZhaWxlZCB0byBhbGxvY2F0ZSBtZW1vcnkiCittc2dzdHIgIsOpY2hlYyBkJ2FsbG9jYXRpb24gbcOpbW9pcmUiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGR1cCBmb3Igc3RkJXMiCittc2dzdHIgIsOpY2hlYyBkZSDCq8KgZHVwwqDCuyBzdXIgc3RkJXMiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGR1cCBmb3IgZmQgJWQiCittc2dzdHIgIsOpY2hlYyBkZSBkdXAgc3VyIGZkICVkIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTA5Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBwaXBlIgorbXNnc3RyICJpbXBvc3NpYmxlIGRlIGNyw6llciB1biB0dWJlIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTE3CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHdyaXRpbmcgdG8gJyVzJyIKK21zZ3N0ciAiZXJyZXVyIGxvcnMgZGUgbCfDqWNyaXR1cmUgZGUgwqvCoCVzwqDCuyIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBmaWxlZGVzY3JpcHRvciBmbGFncyBmb3IgJS4yNTBzIgorbXNnc3RyICJpbXBvc3NpYmxlIGRlIGxpcmUgbGVzIGRyYXBlYXV4IGRlIGRlc2NyaXB0ZXVyIGRlIGZpY2hpZXIgcG91ciAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMjYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNldCBjbG9zZS1vbi1leGVjIGZsYWcgZm9yICUuMjUwcyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkZSBwb3NpdGlvbm5lciBsZSBkcmFwZWF1IMKrwqBjbG9zZS1vbi1leGVjwqDCuyBwb3VyICUuMjUwcyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjYzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZpZ3VyYXRpb24gZXJyb3I6ICVzOiVkOiAlcyIKK21zZ3N0ciAiZXJyZXVyIGRlIGNvbmZpZ3VyYXRpb27CoDogJXM6JWTCoDrCoCVzIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gY29uZmlndXJhdGlvbiBmaWxlICclLjI1NXMnIGZvciByZWFkaW5nOiAlcyIKK21zZ3N0ciAiw6ljaGVjIGQnb3V2ZXJ0dXJlIGR1IGZpY2hpZXIgZGUgY29uZmlndXJhdGlvbiAlLjI1NXPCoGVuIGxlY3R1cmXCoDrCoCVzIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYmFsYW5jZWQgcXVvdGVzIGluICclcyciCittc2dzdHIgImd1aWxsZW1ldHMgbm9uIGFwcGFpcsOpcyBkYW5zIMKrwqAlc8KgwrsiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gJyVzJyIKK21zZ3N0ciAib3B0aW9uIMKrwqAlc8KgwrsgaW5jb25udWUiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBuZWVkcyBhIHZhbHVlIgorbXNnc3RyICLCq8KgJXPCoMK7IGEgYmVzb2luIGQndW5lIHZhbGV1ciIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjEyNworIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGRvZXMgbm90IHRha2UgYSB2YWx1ZSIKK21zZ3N0ciAiwqvCoCVzwqDCuyBuJ3V0aWxpc2UgcGFzIGRlIHZhbGV1ciIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjEzMworIywgYy1mb3JtYXQKK21zZ2lkICJyZWFkIGVycm9yIGluIGNvbmZpZ3VyYXRpb24gZmlsZSBgJS4yNTVzJyIKK21zZ3N0ciAiZXJyZXVyIGRlIGxlY3R1cmUgc3VyIGxlIGZpY2hpZXIgZGUgY29uZmlndXJhdGlvbiDCq8KgJS4yNTVzwqDCuyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nIGNvbmZpZ3VyYXRpb24gZmlsZSBgJS4yNTVzJyIKK21zZ3N0ciAiZXJyZXVyIGxvcnMgZGUgbGEgZmVybWV0dXJlIGR1IGZpY2hpZXIgZGUgY29uZmlndXJhdGlvbiDCq8KgJS4yNTVzwqDCuyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjE3MAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBvcGVuaW5nIGNvbmZpZ3VyYXRpb24gZGlyZWN0b3J5ICclcyciCittc2dzdHIgImVycmV1ciBsb3JzIGRlIGwnb3V2ZXJ0dXJlIGR1IHLDqXBlcnRvaXJlIGRlIGNvbmZpZ3VyYXRpb24gwqvCoCVzwqDCuyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjIyOAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiAtLSVzIgorbXNnc3RyICJvcHRpb24gLS0lcyBpbmNvbm51ZSIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjIzMgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG9wdGlvbiB0YWtlcyBhIHZhbHVlIgorbXNnc3RyICJsJ29wdGlvbiAtLSVzIHByZW5kIHVuZSB2YWxldXIgZW4gcGFyYW3DqHRyZSIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjIzNworIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG9wdGlvbiBkb2VzIG5vdCB0YWtlIGEgdmFsdWUiCittc2dzdHIgImwnb3B0aW9uIC0tJXMgbmUgcHJlbmQgcGFzIGRlIHZhbGV1ciBlbiBwYXJhbcOodHJlIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gb3B0aW9uIC0lYyIKK21zZ3N0ciAib3B0aW9uIC0lYyBpbmNvbm51ZSIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI1MAorIywgYy1mb3JtYXQKK21zZ2lkICItJWMgb3B0aW9uIHRha2VzIGEgdmFsdWUiCittc2dzdHIgImwnb3B0aW9uIC0lYyBwcmVuZCB1bmUgdmFsZXVyIGVuIHBhcmFtw6h0cmUiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiLSVjIG9wdGlvbiBkb2VzIG5vdCB0YWtlIGEgdmFsdWUiCittc2dzdHIgImwnb3B0aW9uIC0lYyBuZSBwcmVuZCBwYXMgZGUgdmFsZXVyIGVuIHBhcmFtw6h0cmUiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAib2Jzb2xldGUgb3B0aW9uICctLSVzJ1xuIgorbXNnc3RyICJvcHRpb24gb2Jzb2zDqHRlIMKrwqAtLSVzwqDCu1xuIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6Mjg3CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZsaWN0aW5nIGFjdGlvbnMgLSVjICgtLSVzKSBhbmQgLSVjICgtLSVzKSIKK21zZ3N0ciAiYWN0aW9ucyBjb25mbGljdHVlbGxlcyAtJWMgKC0tJXMpIGV0IC0lYyAoLS0lcykiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSB2YWx1ZSBmb3IgYCVzJyBmaWVsZCIKK21zZ3N0ciAidmFsZXVyIGVuIGRvdWJsZSBwb3VyIGxlIGNoYW1wIMKrwqAlc8KgwrsiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MTQ2CisjLCBjLWZvcm1hdAorbXNnaWQgInVzZXItZGVmaW5lZCBmaWVsZCBuYW1lIGAlLipzJyB0b28gc2hvcnQiCittc2dzdHIgIm5vbSBkZSBjaGFtcCDCq8KgJS4qc8KgwrsgZMOpZmluaSBwYXIgbCd1dGlsaXNhdGV1ciB0cm9wIGNvdXJ0IgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgdmFsdWUgZm9yIHVzZXItZGVmaW5lZCBmaWVsZCBgJS4qcyciCittc2dzdHIgInZhbGV1ciBlbiBkb3VibGUgcG91ciBsZSBjaGFtcCDCq8KgJS4qc8KgwrsgZMOpZmluaSBwYXIgbCd1dGlsaXNhdGV1ciIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMDcKK21zZ2lkICJDb25maWd1cmVkLVZlcnNpb24gZm9yIHBhY2thZ2Ugd2l0aCBpbmFwcHJvcHJpYXRlIFN0YXR1cyIKK21zZ3N0ciAiwqvCoENvbmZpZ3VyZWQtVmVyc2lvbsKgwrsgZHUgcGFxdWV0IGRhbnMgdW4gw6l0YXQgaW5hcHByb3ByacOpIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjIxOAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGhhcyBzdGF0dXMgJXMgYnV0IHRyaWdnZXJzIGFyZSBhd2FpdGVkIgorbXNnc3RyICJwYXF1ZXQgZGFucyBsJ8OpdGF0IMKrwqAlc8KgwrsgbWFpcyBkZXMgYWN0aW9ucyBkaWZmw6lyw6llcyBzb250IMOgIHZlbmlyIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjIyMgorbXNnaWQgInBhY2thZ2UgaGFzIHN0YXR1cyB0cmlnZ2Vycy1hd2FpdGVkIGJ1dCBubyB0cmlnZ2VycyBhd2FpdGVkIgorbXNnc3RyICIiCisicGFxdWV0IGRhbnMgbCfDqXRhdCDCq8KgYWN0aW9ucy1kaWZmw6lyw6llcy3DoC12ZW5pcsKgwrsgKMKrwqB0cmlnZ2Vycy1hd2FpdGVkwqDCuykgbWFpcyAiCisiYXVjdW5lIGFjdGlvbiBkaWZmw6lyw6llIG4nZXN0IMOgIHZlbmlyIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjIyOAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGhhcyBzdGF0dXMgJXMgYnV0IHRyaWdnZXJzIGFyZSBwZW5kaW5nIgorbXNnc3RyICJwYXF1ZXQgZGFucyBsJ8OpdGF0IMKrwqAlc8KgwrsgbWFpcyBhdWN1bmUgYWN0aW9uIGRpZmbDqXLDqWUgbidlc3QgZW4gYXR0ZW50ZSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMzIKK21zZ2lkICJwYWNrYWdlIGhhcyBzdGF0dXMgdHJpZ2dlcnMtcGVuZGluZyBidXQgbm8gdHJpZ2dlcnMgcGVuZGluZyIKK21zZ3N0ciAiIgorInBhcXVldCBkYW5zIGwnw6l0YXQgwqvCoGFjdGlvbnMtZGlmZsOpcsOpZXMtZW4tYXR0ZW50ZcKgwrsgKMKrwqB0cmlnZ2Vycy1wZW5kaW5nwqDCuykgIgorIm1haXMgc2FucyBhY3Rpb24gZGlmZsOpcsOpZSBlbiBhdHRlbnRlIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjI0MgorbXNnaWQgIlBhY2thZ2Ugd2hpY2ggaW4gc3RhdGUgbm90LWluc3RhbGxlZCBoYXMgY29uZmZpbGVzLCBmb3JnZXR0aW5nIHRoZW0iCittc2dzdHIgIiIKKyJQYXF1ZXQgZGFucyBsJ8OpdGF0IMKrwqBub24taW5zdGFsbMOpwqDCuyBwb3Nzw6lkYW50IGRlcyBmaWNoaWVycyBkZSBjb25maWd1cmF0aW9uLCAiCisiZmljaGllcnMgaWdub3LDqXMiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzM1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuIHBhY2thZ2UgaW5mbyBmaWxlIGAlLjI1NXMnIGZvciByZWFkaW5nIgorbXNnc3RyICJsYSBsZWN0dXJlIGR1IGZpY2hpZXIgwqvCoGluZm/CoMK7IMKrwqAlLjI1NXPCoMK7IGR1IHBhcXVldCBhIMOpY2hvdcOpIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjM0MQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW4ndCBzdGF0IHBhY2thZ2UgaW5mbyBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICIiCisiaW1wb3NzaWJsZSBkZSBmYWlyZSB1biDCq8Kgc3RhdMKgwrsgc3VyIGxlIGZpY2hpZXIgZCdpbmZvIGR1IHBhcXVldCDCq8KgJS4yNTVzwqDCuyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2FuJ3QgbW1hcCBwYWNrYWdlIGluZm8gZmlsZSBgJS4yNTVzJyIKK21zZ3N0ciAiIgorImltcG9zc2libGUgZGUgZmFpcmUgdW4gwqvCoG1tYXDCoMK7IHN1ciBsZSBmaWNoaWVyIGQnaW5mbyBkdSBwYXF1ZXQgwqvCoCUuMjU1c8KgwrsiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzUyCisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWRpbmcgcGFja2FnZSBpbmZvIGZpbGUgJyUuMjU1cyciCittc2dzdHIgImxlY3RldXIgZHUgZmljaGllciBkJ2luZm9ybWF0aW9ucyBkZSBwYXF1ZXQgwqvCoCUuMjU1c8KgwrsiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzYzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjbG9zZSBhZnRlciByZWFkOiBgJS4yNTVzJyIKK21zZ3N0ciAiw6ljaGVjIGRlIGxhIGZlcm1ldHVyZSBhcHLDqHMgbGVjdHVyZcKgOiDCq8KgJS4yNTVzwqDCuyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiRU9GIGFmdGVyIGZpZWxkIG5hbWUgYCUuKnMnIgorbXNnc3RyICJFT0YgYXByw6hzIGxlIG5vbSBkZSBjaGFtcCDCq8KgJS4qc8KgwrsiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDA3CisjLCBjLWZvcm1hdAorbXNnaWQgIm5ld2xpbmUgaW4gZmllbGQgbmFtZSBgJS4qcyciCittc2dzdHIgInNhdXQgZGUgbGlnbmUgZGFucyBsZSBub20gZGUgY2hhbXAgwqvCoCUuKnPCoMK7IgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQxMAorIywgYy1mb3JtYXQKK21zZ2lkICJNU0RPUyBFT0YgKF5aKSBpbiBmaWVsZCBuYW1lIGAlLipzJyIKK21zZ3N0ciAiRU9GIGRlIE1TRE9TICheWikgZGFucyBsZSBub20gZGUgY2hhbXAgwqvCoCUuKnPCoMK7IgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQxNAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWVsZCBuYW1lIGAlLipzJyBtdXN0IGJlIGZvbGxvd2VkIGJ5IGNvbG9uIgorbXNnc3RyICJsZSBub20gZGUgY2hhbXAgwqvCoCUuKnPCoMK7IGRvaXQgw6p0cmUgc3VpdmkgZGUgZGV1eCBwb2ludHMgKDopIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQyNQorIywgYy1mb3JtYXQKK21zZ2lkICJFT0YgYmVmb3JlIHZhbHVlIG9mIGZpZWxkIGAlLipzJyAobWlzc2luZyBmaW5hbCBuZXdsaW5lKSIKK21zZ3N0ciAiIgorIkVPRiBhdmFudCBsYSB2YWxldXIgZHUgY2hhbXAgwqvCoCUuKnPCoMK7IChpbCBtYW5xdWUgbGUgc2F1dCBkZSBsaWduZSBmaW5hbCkiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDI5CisjLCBjLWZvcm1hdAorbXNnaWQgIk1TRE9TIEVPRiBjaGFyIGluIHZhbHVlIG9mIGZpZWxkIGAlLipzJyAobWlzc2luZyBuZXdsaW5lPykiCittc2dzdHIgIiIKKyJjYXJhY3TDqHJlIEVPRiBkZSBNUy1ET1MgZGFucyBsYSB2YWxldXIgZHUgY2hhbXAgwqvCoCUuKnPCoMK7IChtYW5xdWUtdC1pbCB1biAiCisic2F1dCBkZSBsaWduZcKgPykiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDQwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJuZXdsaW5lIGluIGZpZWxkIG5hbWUgYCUuKnMnIgorbXNnaWQgImJsYW5rIGxpbmUgaW4gdmFsdWUgb2YgZmllbGQgJyUuKnMnIgorbXNnc3RyICJzYXV0IGRlIGxpZ25lIGRhbnMgbGUgbm9tIGRlIGNoYW1wIMKrwqAlLipzwqDCuyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiRU9GIGR1cmluZyB2YWx1ZSBvZiBmaWVsZCBgJS4qcycgKG1pc3NpbmcgZmluYWwgbmV3bGluZSkiCittc2dzdHIgIiIKKyJFT0YgZGFucyBsYSB2YWxldXIgZHUgY2hhbXAgwqvCoCUuKnPCoMK7IChpbCBtYW5xdWUgbGUgc2F1dCBkZSBsaWduZSBmaW5hbCkiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NTQ2Cittc2dpZCAic2V2ZXJhbCBwYWNrYWdlIGluZm8gZW50cmllcyBmb3VuZCwgb25seSBvbmUgYWxsb3dlZCIKK21zZ3N0ciAiIgorInBsdXNpZXVycyBlbnRyw6llcyBkJ2luZm9ybWF0aW9uIGRlIHBhcXVldCB0cm91dsOpZXMsIHVuZSBzZXVsZSBlc3QgYXV0b3Jpc8OpZSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo1NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gcGFja2FnZSBpbmZvcm1hdGlvbiBpbiBgJS4yNTVzJyIKK21zZ3N0ciAicGFzIGQnaW5mb3JtYXRpb24gZGUgcGFxdWV0IGRhbnMgwqvCoCUuMjU1c8KgwrsiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJwYXJzaW5nIGZpbGUgJyUuMjU1cycgbmVhciBsaW5lICVkIHBhY2thZ2UgJyUuMjU1cyc6XG4iCisiICUuMjU1cyIKK21zZ3N0ciAiIgorImFuYWx5c2UgZHUgZmljaGllciAnJS4yNTVzJyB2ZXJzIGxhIGxpZ25lICVkIHBhcXVldCAnJS4yNTVzJ8KgOlxuIgorIiAlLjI1NXMgIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzo0OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisicGFyc2luZyBmaWxlICclLjI1NXMnIG5lYXIgbGluZSAlZDpcbiIKKyIgJS4yNTVzIgorbXNnc3RyICIiCisiYW5hbHlzZSBkdSBmaWNoaWVyIMKrwqAlLjI1NXPCoMK7IHZlcnMgbGEgbGlnbmUgJWQ6XG4iCisiICUuMjU1cyAiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjEyNQorbXNnaWQgIm1heSBub3QgYmUgZW1wdHkgc3RyaW5nIgorbXNnc3RyICJuZSBkb2l0IHBhcyDDqnRyZSB1bmUgY2hhw65uZSB2aWRlIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoxMjcKK21zZ2lkICJtdXN0IHN0YXJ0IHdpdGggYW4gYWxwaGFudW1lcmljIGNoYXJhY3RlciIKK21zZ3N0ciAiZG9pdCBjb21tZW5jZXIgcGFyIHVuIGNhcmFjdMOocmUgYWxwaGFudW3DqXJpcXVlIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoxMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2hhcmFjdGVyIGAlYycgbm90IGFsbG93ZWQgKG9ubHkgbGV0dGVycywgZGlnaXRzIGFuZCBjaGFyYWN0ZXJzIGAlcycpIgorbXNnc3RyICIiCisiY2FyYWN0w6hyZSDCq8KgJWPCoMK7IG5vbiBhdXRvcmlzw6kgKHNldWxzIGxlcyBsZXR0cmVzLCBsZXMgY2hpZmZyZXMgZXQgwqvCoCVzwqDCuyBsZSAiCisic29udCkiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjE3OAorbXNnY3R4dCAidmVyc2lvbiIKK21zZ2lkICI8bm9uZT4iCittc2dzdHIgIjxhdWN1bj4iCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjIwOQorbXNnaWQgInZlcnNpb24gc3RyaW5nIGlzIGVtcHR5IgorbXNnc3RyICJsYSBjaGHDrm5lIGRlIHZlcnNpb24gZXN0IHZpZGUiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjIyNAorbXNnaWQgInZlcnNpb24gc3RyaW5nIGhhcyBlbWJlZGRlZCBzcGFjZXMiCittc2dzdHIgImxhIGNoYcOubmUgZGUgdmVyc2lvbiBjb250aWVudCBkZXMgZXNwYWNlcyIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjMwCittc2dpZCAiZXBvY2ggaW4gdmVyc2lvbiBpcyBub3QgbnVtYmVyIgorbXNnc3RyICJsJ8OpcG9xdWUgKGVwb2NoKSBkYW5zIGxhIHZlcnNpb24gbidlc3QgcGFzIHVuIG5vbWJyZSIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjMyCittc2dpZCAibm90aGluZyBhZnRlciBjb2xvbiBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAicmllbiBhcHLDqHMgbGVzIGRldXggcG9pbnRzICg6KSBkYW5zIGxlIG51bcOpcm8gZGUgbGEgdmVyc2lvbiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjQ3Cittc2dpZCAidmVyc2lvbiBudW1iZXIgZG9lcyBub3Qgc3RhcnQgd2l0aCBkaWdpdCIKK21zZ3N0ciAibGUgbnVtw6lybyBkZSB2ZXJzaW9uIG5lIGNvbW1lbmNlIHBhcyBwYXIgdW4gY2hpZmZyZSIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjUwCittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgaW4gdmVyc2lvbiBudW1iZXIiCittc2dzdHIgImNhcmFjdMOocmUgbm9uIHZhbGFibGUgZGFucyBsZSBudW3DqXJvIGRlIHZlcnNpb24iCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjI1NAorbXNnaWQgImludmFsaWQgY2hhcmFjdGVyIGluIHJldmlzaW9uIG51bWJlciIKK21zZ3N0ciAiY2FyYWN0w6hyZSBub24gdmFsYWJsZSBkYW5zIGxlIG51bcOpcm8gZGUgcsOpdmlzaW9uIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyOTkgbGliL2Rwa2cvcGFyc2VoZWxwLmM6MzExCisjLCBjLWZvcm1hdAorbXNnaWQgIm1pc3NpbmcgJXMiCittc2dzdHIgIiAlcyBtYW5xdWUiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjMwMSBsaWIvZHBrZy9wYXJzZWhlbHAuYzozMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZW1wdHkgdmFsdWUgZm9yICVzIgorbXNnc3RyICIgJXMgZGUgdmFsZXVyIG51bGxlIgorCisjOiBsaWIvZHBrZy9wa2ctZm9ybWF0LmM6ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgYCVjJyBpbiBmaWVsZCB3aWR0aFxuIgorbXNnc3RyICJjYXJhY3TDqHJlIMKrwqAlY8KgwrsgaW52YWxpZGUgZGFucyBsYSBsb25ndWV1ciBkdSBjaGFtcFxuIgorCisjOiBsaWIvZHBrZy9wa2ctZm9ybWF0LmM6MTcyCisjLCBjLWZvcm1hdAorbXNnaWQgIkNsb3NpbmcgYnJhY2UgbWlzc2luZyBpbiBmb3JtYXRcbiIKK21zZ3N0ciAiUGFyZW50aMOoc2UgZmVybWFudGUgbWFucXVhbnRlIGRhbnMgbGUgZm9ybWF0XG4iCisKKyM6IGxpYi9kcGtnL3BrZy1zaG93LmM6NDAKK21zZ2lkICIobm8gZGVzY3JpcHRpb24gYXZhaWxhYmxlKSIKK21zZ3N0ciAiKGF1Y3VuZSBkZXNjcmlwdGlvbiBuJ2VzdCBkaXNwb25pYmxlKSIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjU1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpZ25vcmUgc2lnbmFsICVzIGJlZm9yZSBydW5uaW5nICUuMjUwcyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkJ2lnbm9yZXIgbGUgc2lnbmFsICVzIGF2YW50IGwnZXjDqWN1dGlvbiBkZSAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzo2OAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciB1bi1jYXRjaGluZyBzaWduYWwgJXM6ICVzXG4iCittc2dzdHIgImVycmV1ciBzaWduYWwgJXMgbm9uLWNhcHR1csOpwqA6ICVzXG4iCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzo3OAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyAoc3VicHJvY2Vzcyk6ICVzXG4iCittc2dzdHIgIiVzIChzb3VzLXByb2Nlc3N1cynCoDogJXNcbiIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjg5IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo0NTQKK21zZ2lkICJmb3JrIGZhaWxlZCIKK21zZ3N0ciAiw6ljaGVjIGRlIMKrwqBmb3JrwqDCuyIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjExOQorIywgYy1mb3JtYXQKK21zZ2lkICJzdWJwcm9jZXNzICVzIHJldHVybmVkIGVycm9yIGV4aXQgc3RhdHVzICVkIgorbXNnc3RyICJsZSBzb3VzLXByb2Nlc3N1cyAlcyBhIHJldG91cm7DqSB1bmUgZXJyZXVyIGRlIHNvcnRpZSBkJ8OpdGF0ICVkIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTI4CisjLCBjLWZvcm1hdAorbXNnaWQgInN1YnByb2Nlc3MgJXMgd2FzIGludGVycnVwdGVkIgorbXNnc3RyICJpbnRlcnJ1cHRpb24gZHUgc291cy1wcm9jZXNzdXMgJXMiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMzAKKyMsIGMtZm9ybWF0Cittc2dpZCAic3VicHJvY2VzcyAlcyB3YXMga2lsbGVkIGJ5IHNpZ25hbCAoJXMpJXMiCittc2dzdHIgImxlIHNvdXMtcHJvY2Vzc3VzICVzIGEgw6l0w6kgdHXDqSBwYXIgbGUgc2lnbmFsICglcyklcyIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEzMgorbXNnaWQgIiwgY29yZSBkdW1wZWQiCittc2dzdHIgIiwgaW5mb3JtYXRpb25zIGRlIGTDqWJvZ2FnZSDDqWNyaXRlcyAowqvCoGNvcmUgZHVtcGVkwqDCuykiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAic3VicHJvY2VzcyAlcyBmYWlsZWQgd2l0aCB3YWl0IHN0YXR1cyBjb2RlICVkIgorbXNnc3RyICJsZSBzb3VzLXByb2Nlc3N1cyAlcyBhIMOpY2hvdcOpIGF2ZWMgbGUgY29kZSBkJ8OpdGF0IGQnYXR0ZW50ZSAlZCIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjE1MSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NDYxCisjLCBjLWZvcm1hdAorbXNnaWQgIndhaXQgZm9yIHN1YnByb2Nlc3MgJXMgZmFpbGVkIgorbXNnc3RyICLDqWNoZWMgZGUgbCdhdHRlbnRlIGR1IHNvdXMtcHJvY2Vzc3VzICVzIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDo3MgorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHBhY2thZ2UgbmFtZSBgJS4yNTBzJyBpbiB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisibm9tIGRlIHBhcXVldCDCq8KgJS4yNTVzwqDCuyBub24gdmFsYWJsZSBkYW5zIGxlIGZpY2hpZXIgZGVzIGFjdGlvbnMgZGlmZsOpcsOpZXMgIgorIsKrwqAlLjI1NXPCoMK7IgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDo4MQorIywgYy1mb3JtYXQKK21zZ2lkICJ0cnVuY2F0ZWQgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiZmljaGllciBkZXMgYWN0aW9ucyBkaWZmw6lyw6llcyB0cm9ucXXDqSDCq8KgJS4yNTVzwqDCuyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yIGluIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcycgYXQgY2hhcmFjdGVyIGAlcyclcyIKK21zZ3N0ciAiIgorImVycmV1ciBkZSBzeW50YXhlIGRhbnMgbGUgZmljaGllciBkZXMgYWN0aW9ucyBkaWZmw6lyw6llcyDCq8KgJS4yNTVzwqDCuyDDoCBsYSAiCisicG9zaXRpb24gwqvCoCVzwqDCuyAlcyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuL2NyZWF0ZSB0cmlnZ2VycyBsb2NrZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorImltcG9zc2libGUgZCdvdXZyaXIgb3UgY3LDqWVyIGxlIHZlcnJvdSBkdSBmaWNoaWVyIGRlcyBhY3Rpb25zIGRpZmbDqXLDqWVzICIKKyLCq8KgJS4yNTVzwqDCuyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MTQxCittc2dpZCAidHJpZ2dlcnMgYXJlYSIKK21zZ3N0ciAiem9uZSBkZXMgYWN0aW9ucyBkaWZmw6lyw6llcyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MTUxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImltcG9zc2libGUgZCdhbmFseXNlciBsZSBmaWNoaWVyIGRlcyBhY3Rpb25zIGRpZmbDqXLDqWVzIMKrwqAlLjI1NXPCoMK7IgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkJ291dnJpciBsZSBmaWNoaWVyIGRlcyBhY3Rpb25zIGRpZmbDqXLDqWVzIMKrwqAlLjI1NXPCoMK7IgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4vY3JlYXRlIG5ldyB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisiaW1wb3NzaWJsZSBkJ291dnJpciBvdSBjcsOpZXIgdW4gbm91dmVhdSBmaWNoaWVyIGRlcyBhY3Rpb25zIGRpZmbDqXLDqWVzICIKKyLCq8KgJS4yNTVzwqDCuyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MjE1CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHJlYWRpbmcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiZXJyZXVyIGRlIGxlY3R1cmUgZHUgZmljaGllciBkZXMgYWN0aW9ucyBkaWZmw6lyw6llcyDCq8KgJS4yNTVzwqDCuyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MjIzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorImltcG9zc2libGUgZCdlbnJlZ2lzdHJlciBsZSBub3V2ZWF1IGZpY2hpZXIgZGVzIGFjdGlvbnMgZGlmZsOpcsOpZXMgwqvCoCUuMjU1c8KgwrsiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjIyOAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKyJpbXBvc3NpYmxlIGRlIGZlcm1lciBsZSBub3V2ZWF1IGZpY2hpZXIgZGVzIGFjdGlvbnMgZGlmZsOpcsOpZXMgwqvCoCUuMjU1c8KgwrsiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjIzMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorImltcG9zc2libGUgZCdpbnN0YWxsZXIgbGUgbm91dmVhdSBmaWNoaWVyIGRlcyBhY3Rpb25zIGRpZmbDqXLDqWVzIMKrwqAlLjI1NXPCoMK7IgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MjIyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpbnZhbGlkIG9yIHVua25vd24gc3ludGF4IGluIHRyaWdnZXIgbmFtZSBgJS4yNTBzJyAoaW4gdHJpZ2dlciBpbnRlcmVzdHMgZm9yICIKKyJwYWNrYWdlIGAlLjI1MHMnKSIKK21zZ3N0ciAiIgorInN5bnRheGUgaW5jb25udWUgb3UgaW52YWxpZGUgZGFucyBsZSBub20gZGUgbCdhY3Rpb24gZGlmZsOpcsOpZSAiCisiwqvCoCUuMjU1c8KgwrsgKCBkYW5zIGxlcyBhY3Rpb25zIGRpZmbDqXLDqWVzIGRlbWFuZMOpZXMgcGFyIGxlIHBhcXVldCDCq8KgJS4yNTVzwqDCuykiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzoyNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gdHJpZ2dlciBpbnRlcmVzdCBsaXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKyJpbXBvc3NpYmxlIGQnb3V2cmlyIGxlIGZpY2hpZXIgbGlzdGUgZGVzIGFjdGlvbnMgZGlmZsOpcsOpZXMgZGVtYW5kw6llcyBwYXIgbGUgIgorInBhcXVldCDCq8KgJS4yNTVzwqDCuyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjI5MgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmV3aW5kIHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorImltcG9zc2libGUgZGUgcmVsaXJlIGxlIGZpY2hpZXIgZGVzIGFjdGlvbnMgZGlmZsOpcsOpZXMgZGVtYW5kw6llcyDCq8KgJS4yNTVzwqDCuyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMwNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIHN5bnRheCBlcnJvcjsgaWxsZWdhbCBwYWNrYWdlIG5hbWUgYCUuMjUwcyc6ICIKKyIlLjI1MHMiCittc2dzdHIgIiIKKyJlcnJldXIgZGUgc3ludGF4ZSBkYW5zIGxlIGZpY2hpZXIgZGVzIGFjdGlvbnMgZGlmZsOpcsOpZXMgZGVtYW5kw6llcyAiCisiwqvCoCUuMjU1c8KgwrvCoDsgbm9tIGR1IGZpY2hpZXIgwqvCoCUuMjU1c8KgwrsgaWxsw6lnYWzCoDogJS4yNTBzIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzE4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisiaW1wb3NzaWJsZSBkJ2VucmVnaXN0cmVyIHVuIG5vdXZlYXUgZmljaGllciBkZXMgYWN0aW9ucyBkaWZmw6lyw6llcyBkZW1hbmTDqWVzICIKKyLCq8KgJS4yNTBzwqDCuyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMyMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAiIgorImltcG9zc2libGUgZGUgdmlkZXIgbGUgbm91dmVhdSBmaWNoaWVyIGRlcyBhY3Rpb25zIGRpZmbDqXLDqWVzIGRlbWFuZMOpZXMgIgorIsKrwqAlLjI1MHPCoMK7IgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzI0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzeW5jIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgIiIKKyJpbXBvc3NpYmxlIGRlIHN5bmNocm9uaXNlciBsZSBub3V2ZWF1IGZpY2hpZXIgZGVzIGFjdGlvbnMgZGlmZsOpcsOpZXMgIgorImRlbWFuZMOpZXMgwqvCoCUuMjUwc8KgwrsiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorImltcG9zc2libGUgZCdpbnN0YWxsZXIgdW5lIG5vdXZlbGxlIHZlcnNpb24gZGUgZmljaGllciBkZXMgYWN0aW9ucyBkaWZmw6lyw6llcyAiCisiZGVtYW5kw6llcyDCq8KgJS4yNTVzwqDCuyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjM0MCBsaWIvZHBrZy90cmlnbGliLmM6MzQyIGxpYi9kcGtnL3RyaWdsaWIuYzo0NzIKKyM6IHNyYy9yZW1vdmUuYzoyODYgc3JjL3JlbW92ZS5jOjM3NworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVtb3ZlIGAlLjI1MHMnIgorbXNnc3RyICJuZSBwZXV0IHBhcyBzdXBwcmltZXIgwqvCoCUuMjUwc8KgwrsiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozNjAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisiaW1wb3NzaWJsZSBkZSBjcsOpZXIgdW4gbm91dmVhdSBmaWNoaWVyIGRlcyBhY3Rpb25zIGRpZmbDqXLDqWVzIGRlbWFuZMOpZXMgIgorIsKrwqAlLjI1MHPCoMK7IgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzgzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisiaW1wb3NzaWJsZSBkZSBmZXJtZXIgbGUgbm91dmVhdSBmaWNoaWVyIGRlcyBhY3Rpb25zIGRpZmbDqXLDqWVzIGRlbWFuZMOpZXMgIgorIsKrwqAlLjI1MHPCoMK7IgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDU2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkdXBsaWNhdGUgZmlsZSB0cmlnZ2VyIGludGVyZXN0IGZvciBmaWxlbmFtZSBgJS4yNTBzJyBhbmQgcGFja2FnZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorImZpY2hpZXIgZGVzIGFjdGlvbnMgZGlmZsOpcsOpZXMgZGVtYW5kw6llcyBlbiBkb3VibGUgYXZlYyBsZSBub20gwqvCoCUuMjUwc8KgwrsgIgorInBvdXIgbGUgcGFxdWV0IMKrwqAlLjI1MHPCoMK7IgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDgzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkZSBjcsOpZXIgdW4gbm91dmVhdSBmaWNoaWVyIGQnYWN0aW9ucyBkaWZmw6lyw6llcyDCq8KgJS4yNTBzwqDCuyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ5MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorImltcG9zc2libGUgZCdlbnJlZ2lzdHJlciBsZSBub3V2ZWF1IGZpY2hpZXIgZGVzIGFjdGlvbnMgZGlmZsOpcsOpZXMgwqvCoCUuMjUwc8KgwrsiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0OTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgJyUuMjUwcyciCittc2dzdHIgImltcG9zc2libGUgZGUgdmlkZXIgbGUgbm91dmVhdSBmaWNoaWVyIGQnYWN0aW9ucyBkaWZmw6lyw6llcyDCq8KgJS4yNTBzwqDCuyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ5OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlICclLjI1MHMnIgorbXNnc3RyICIiCisiaW1wb3NzaWJsZSBkZSBzeW5jaHJvbmlzZXIgbGUgbm91dmVhdSBmaWNoaWVyIGQnYWN0aW9ucyBkaWZmw6lyw6llcyDCq8KgJS4yNTBzwqDCuyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjUwMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkZSBmZXJtZXIgbGUgbm91dmVhdSBmaWNoaWVyIGQnYWN0aW9ucyBkaWZmw6lyw6llcyDCq8KgJS4yNTBzwqDCuyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjUwNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGFzIGAlLjI1MHMnIgorbXNnc3RyICIiCisiaW1wb3NzaWJsZSBkJ2luc3RhbGxlciBsZSBub3V2ZWF1IGZpY2hpZXIgZGVzIGFjdGlvbnMgZGlmZsOpcsOpZXMgY29tbWUgIgorIsKrwqAlLjI1MHPCoMK7IgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTQyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkZSBsaXJlIGxlIGZpY2hpZXIgZGVzIGFjdGlvbnMgZGlmZsOpcsOpZXMgwqvCoCUuMjUwc8KgwrsiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1NTIKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yIGluIGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiZXJyZXVyIGRlIHN5bnRheGUgZGFucyBsZSBmaWNoaWVyIGRlcyBhY3Rpb25zIGRpZmbDqXLDqWVzIMKrwqAlLjI1NXPCoMK7IgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTYzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmaWxlIHRyaWdnZXJzIHJlY29yZCBtZW50aW9ucyBpbGxlZ2FsIHBhY2thZ2UgbmFtZSBgJS4yNTBzJyAoZm9yIGludGVyZXN0IGluICIKKyJmaWxlIGAlLjI1MHMnKTogJS4yNTBzIgorbXNnc3RyICIiCisibCdlbnJlZ2lzdHJlbWVudCBkdSBmaWNoaWVyIGRlcyBhY3Rpb25zIGRpZmbDqXLDqWVzIGluZGlxdWUgdW4gbm9tIGRlIHBhcXVldCAiCisiaWxsw6lnYWwgcG91ciDCq8KgJS4yNTBzwqDCuyAoIGxlIG5vbSBkdSBmaWNoaWVyIGVzdCDCq8KgJS4yNTBzwqDCuyApwqA6ICUuMjUwcyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjY2NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidHJpZ2dlcnMgY2kgZmlsZSBgJS4yNTBzJyBjb250YWlucyBpbGxlZ2FsIHRyaWdnZXIgc3ludGF4IGluIHRyaWdnZXIgbmFtZSBgIgorIiUuMjUwcyc6ICUuMjUwcyIKK21zZ3N0ciAiIgorImxlIGZpY2hpZXIgQ0kgZGVzIGFjdGlvbnMgZGlmZsOpcsOpZXMgwqvCoCUuMjUwc8KgwrsgY29udGllbnQgdW5lIHN5bnRheGUgaWxsw6lnYWxlICIKKyJkYW5zIGwnYWN0aW9uIGRpZmbDqXLDqWUgZGUgbm9tIMKrwqAlLjI1MHPCoMK7wqA6ICUuMjUwcyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjY4NAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiB0cmlnZ2VycyBjaSBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJpbXBvc3NpYmxlIGQnb3V2cmlyIGxlIGZpY2hpZXIgQ0kgZGVzIGFjdGlvbnMgZGlmZsOpcsOpZXMgwqvCoCUuMjUwc8KgwrsiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo2OTkKK21zZ2lkICJ0cmlnZ2VycyBjaSBmaWxlIGNvbnRhaW5zIHVua25vd24gZGlyZWN0aXZlIHN5bnRheCIKK21zZ3N0ciAiIgorImxlIGZpY2hpZXIgQ0kgZGVzIGFjdGlvbnMgZGlmZsOpcsOpZXMgY29udGllbnQgdW5lIGRpcmVjdGl2ZSBkZSBzeW50YXhlICIKKyJpbmNvbm51ZSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjcxMgorIywgYy1mb3JtYXQKK21zZ2lkICJ0cmlnZ2VycyBjaSBmaWxlIGNvbnRhaW5zIHVua25vd24gZGlyZWN0aXZlIGAlLjI1MHMnIgorbXNnc3RyICIiCisibGUgZmljaGllciBDSSBkZXMgYWN0aW9ucyBkaWZmw6lyw6llcyBjb250aWVudCBsYSBkaXJlY3RpdmUgaW5jb25udWUgwqvCoCUuMjUwc8KgwrsiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo3NzYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSB0cmlnZ2VycyBzdGF0ZSBkaXJlY3RvcnkgYCUuMjUwcyciCittc2dzdHIgIiIKKyJpbXBvc3NpYmxlIGRlIGNyw6llciBsZSByw6lwZXJ0b2lyZSBkJ8OpdGF0IGRlcyBhY3Rpb25zIGRpZmbDqXLDqWVzIMKrwqAlLjI1MHPCoMK7IgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Nzc5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgb3duZXJzaGlwIG9mIHRyaWdnZXJzIHN0YXRlIGRpcmVjdG9yeSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorImltcG9zc2libGUgZGUgcG9zaXRpb25uZXIgbGUgcHJvcHJpw6l0YWlyZSBkdSByw6lwZXJ0b2lyZSBkJ8OpdGF0IGRlcyBhY3Rpb25zICIKKyJkaWZmw6lyw6llcyDCq8KgJS4yNTBzwqDCuyIKKworIzogbGliL2Rwa2cvdHJpZ25hbWUuYzozNAorbXNnaWQgImVtcHR5IHRyaWdnZXIgbmFtZXMgYXJlIG5vdCBwZXJtaXR0ZWQiCittc2dzdHIgIm5vbXMgdmlkZXMgaW50ZXJkaXRzIHBvdXIgbGVzIGFjdGlvbnMgZGlmZsOpcsOpZXMiCisKKyM6IGxpYi9kcGtnL3RyaWduYW1lLmM6MzgKK21zZ2lkICJ0cmlnZ2VyIG5hbWUgY29udGFpbnMgaW52YWxpZCBjaGFyYWN0ZXIiCittc2dzdHIgIm5vbSBkJ2FjdGlvbiBkaWZmw6lyw6llIGNvbnRlbmFudCB1biBjYXJhY3TDqHJlIGludmFsaWRlIgorCisjOiBsaWIvZHBrZy91dGlscy5jOjU2CisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWQgZXJyb3IgaW4gYCUuMjUwcyciCittc2dzdHIgImVycmV1ciBkZSBsZWN0dXJlIGRhbnMgwqvCoCUuMjUwc8KgwrsiCisKKyM6IGxpYi9kcGtnL3V0aWxzLmM6NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmdldHMgZ2F2ZSBhbiBlbXB0eSBzdHJpbmcgZnJvbSBgJS4yNTBzJyIKK21zZ3N0ciAiwqvCoGZnZXRzwqDCuyBhIHJlbnZvecOpIHVuZSBjaGHDrm5lIHZpZGUgcHJvdmVuYW50IGRlIMKrwqAlLjI1MHPCoMK7IgorCisjOiBsaWIvZHBrZy91dGlscy5jOjYzCisjLCBjLWZvcm1hdAorbXNnaWQgInRvby1sb25nIGxpbmUgb3IgbWlzc2luZyBuZXdsaW5lIGluIGAlLjI1MHMnIgorbXNnc3RyICJsaWduZSB0cm9wIGxvbmd1ZSBvdSBub3V2ZWxsZSBsaWduZSBtYW5xdWFudGUgZGFucyDCq8KgJS4yNTBzwqDCuyIKKworIzogbGliL2Rwa2cvdXRpbHMuYzo3NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVvZiByZWFkaW5nIGAlLjI1MHMnIgorbXNnc3RyICJmaW4gZGUgZmljaGllciBpbmF0dGVuZHVlIHBvdXIgwqvCoCUuMjUwc8KgwrsiCisKKyM6IGxpYi9kcGtnL3ZhcmJ1Zi5jOjgyIGxpYi9kcGtnL3ZhcmJ1Zi5jOjg4Cittc2dpZCAiZXJyb3IgZm9ybWF0dGluZyBzdHJpbmcgaW50byB2YXJidWYgdmFyaWFibGUiCittc2dzdHIgImVycmV1ciBkZSBmb3JtYXRhZ2UgZGUgbGEgY2hhw65uZSBkYW5zIGxhIHZhcmlhYmxlIHZhcmJ1ZiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTc5IHNyYy9hcmNoaXZlcy5jOjIwMCBzcmMvYXJjaGl2ZXMuYzo3MjQKK21zZ2lkICJlcnJvciByZWFkaW5nIGZyb20gZHBrZy1kZWIgcGlwZSIKK21zZ3N0ciAiZXJyZXVyIGRlIGxlY3R1cmUgZHUgdHViZSBkZSBkcGtnLWRlYiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTk1CisjLCBjLWZvcm1hdAorbXNnaWQgInNraXBwZWQgdW5wYWNraW5nIGZpbGUgJyUuMjU1cycgKHJlcGxhY2VkIG9yIGV4Y2x1ZGVkPykiCittc2dzdHIgIiIKKyJvbWlzc2lvbiBkZSBsYSBkw6ljb21wcmVzc2lvbiBkdSBmaWNoaWVyIMKrwqAlLjI1NXPCoMK7IChyZW1wbGFjw6kgb3UgZXhjbHXCoD8pIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoyNDYgc3JjL2FyY2hpdmVzLmM6MjUwCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHNldHRpbmcgdGltZXN0YW1wcyBvZiBgJS4yNTVzJyIKK21zZ3N0ciAiZXJyZXVyIGRlIHBhcmFtw6l0cmFnZSBkZXMgY2FjaGV0cyBkZSBkYXRlIGRlIMKrwqAlLjI1NXPCoMK7IgorCisjOiBzcmMvYXJjaGl2ZXMuYzoyNjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igc2V0dGluZyBvd25lcnNoaXAgb2Ygc3ltbGluayBgJS4yNTVzJyIKK21zZ3N0ciAiZXJyZXVyIHBlbmRhbnQgbGEgZMOpZmluaXRpb24gZGVzIGRyb2l0cyBkdSBsaWVuIHN5bWJvbGlxdWUgwqvCoCUuMjU1c8KgwrsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjI2NSBzcmMvYXJjaGl2ZXMuYzo3MzQgc3JjL3N0YXRjbWQuYzoxNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igc2V0dGluZyBvd25lcnNoaXAgb2YgYCUuMjU1cyciCittc2dzdHIgImVycmV1ciBkZSBwYXJhbcOpdHJhZ2UgZGVzIGRyb2l0cyBkZSDCq8KgJS4yNTVzwqDCuyIKKworIzogc3JjL2FyY2hpdmVzLmM6MjY3IHNyYy9hcmNoaXZlcy5jOjczNiBzcmMvc3RhdGNtZC5jOjE2NQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIHBlcm1pc3Npb25zIG9mIGAlLjI1NXMnIgorbXNnc3RyICJlcnJldXIgZGUgcGFyYW3DqXRyYWdlIGRlcyBwZXJtaXNzaW9ucyBkZSDCq8KgJS4yNTVzwqDCuyIKKworIzogc3JjL2FyY2hpdmVzLmM6Mzk1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBzdGF0IChkZXJlZmVyZW5jZSkgZXhpc3Rpbmcgc3ltbGluayBgJS4yNTBzJyIKK21zZ3N0ciAiIgorImltcG9zc2libGUgZCdhbmFseXNlciAoZMOpcsOpZsOpcmVuY2VyKSBsZSBsaWVuIHN5bWJvbGlxdWUgZXhpc3RhbnQgwqvCoCUuMjUwc8KgwrsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjQxNworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZmFpbGVkIHRvIHN0YXQgKGRlcmVmZXJlbmNlKSBwcm9wb3NlZCBuZXcgc3ltbGluayB0YXJnZXQgYCUuMjUwcycgZm9yICIKKyJzeW1saW5rIGAlLjI1MHMnIgorbXNnc3RyICIiCisiaW1wb3NzaWJsZSBkJ2FuYWx5c2VyIChkw6lyw6lmw6lyZW5jZXIpIGxhIGNpYmxlIHByb3Bvc8OpZSBkdSBub3V2ZWF1IGxpZW4gIgorInN5bWJvbGlxdWUgwqvCoCUuMjUwc8KgwrsgcG91ciBsZSBsaWVuIHN5bWJvbGlxdWUgwqvCoCUuMjUwc8KgwrsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjQ3NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidHJ5aW5nIHRvIG92ZXJ3cml0ZSBgJS4yNTBzJywgd2hpY2ggaXMgdGhlIGRpdmVydGVkIHZlcnNpb24gb2YgYCIKKyIlLjI1MHMnIChwYWNrYWdlOiAlLjEwMHMpIgorbXNnc3RyICIiCisidGVudGF0aXZlIGRlIHJlbXBsYWNlbWVudCBkZSDCq8KgJS4yNTBzwqDCuywgcXVpIGVzdCBsYSB2ZXJzaW9uIGTDqXRvdXJuw6llIGRlICIKKyLCq8KgJS4yNTBzwqDCuyAocGFxdWV0wqA6ICUuMTAwcykiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjQ4MQorIywgYy1mb3JtYXQKK21zZ2lkICJ0cnlpbmcgdG8gb3ZlcndyaXRlIGAlLjI1MHMnLCB3aGljaCBpcyB0aGUgZGl2ZXJ0ZWQgdmVyc2lvbiBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiIgorInRlbnRhdGl2ZSBkZSByZW1wbGFjZW1lbnQgZGUgwqvCoCUuMjUwc8KgwrssIHF1aSBlc3QgbGEgdmVyc2lvbiBkw6l0b3VybsOpZSBkZSAiCisiwqvCoCUuMjUwc8KgwrsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjUxMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBgJS4yNTVzJyAod2hpY2ggSSB3YXMgYWJvdXQgdG8gaW5zdGFsbCkiCittc2dzdHIgIiIKKyJpbXBvc3NpYmxlIGQnYW5hbHlzZXIgwqvCoCUuMjU1c8KgwrsgKHF1aSDDqXRhaXQgc3VyIGxlIHBvaW50IGQnw6p0cmUgaW5zdGFsbMOpKSIKKworIzogc3JjL2FyY2hpdmVzLmM6NTE5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1bmFibGUgdG8gY2xlYW4gdXAgbWVzcyBzdXJyb3VuZGluZyBgJS4yNTVzJyBiZWZvcmUgaW5zdGFsbGluZyBhbm90aGVyICIKKyJ2ZXJzaW9uIgorbXNnc3RyICIiCisiaW1wb3NzaWJsZSBkZSBmYWlyZSBsZSBtw6luYWdlIGF1dG91ciBkZSDCq8KgJS4yNTVzwqDCuyBhdmFudCBkJ2luc3RhbGxlciB1bmUgIgorImF1dHJlIHZlcnNpb24iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjUyNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCByZXN0b3JlZCBgJS4yNTVzJyBiZWZvcmUgaW5zdGFsbGluZyBhbm90aGVyIHZlcnNpb24iCittc2dzdHIgIiIKKyJpbXBvc3NpYmxlIGQnYW5hbHlzZXIgwqvCoCUuMjU1c8KgwrsgcmVzdGF1csOpIGF2YW50IGQnaW5zdGFsbGVyIHVuZSBhdXRyZSB2ZXJzaW9uIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo1NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiYXJjaGl2ZSBjb250YWluZWQgb2JqZWN0IGAlLjI1NXMnIG9mIHVua25vd24gdHlwZSAweCV4IgorbXNnc3RyICJsJ2FyY2hpdmUgY29udGllbnQgdW4gb2JqZXQgwqvCoCUuMjU1c8KgwrsgZGUgdHlwZSBpbmNvbm51IDB4JXgiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjYyNiBzcmMvZGl2ZXJ0Y21kLmM6MTUwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo2ODIKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjIyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjg0CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTQ0MSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTY4MAorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxNjcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNDQKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTI3CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzdGF0IGZpbGUgJyVzJyIKK21zZ3N0ciAiYW5hbHlzZSBpbXBvc3NpYmxlIGR1IGZpY2hpZXIgwqvCoCVzwqDCuyIKKworIzogc3JjL2FyY2hpdmVzLmM6NjQxCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlcGxhY2luZyBmaWxlcyBpbiBvbGQgcGFja2FnZSAlcyAuLi5cbiIKK21zZ3N0ciAiUmVtcGxhY2VtZW50IGRlIGZpY2hpZXJzIGRhbnMgbCdhbmNpZW4gcGFxdWV0ICVzIC4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVwbGFjZWQgYnkgZmlsZXMgaW4gaW5zdGFsbGVkIHBhY2thZ2UgJXMgLi4uXG4iCittc2dzdHIgIlJlbXBsYWPDqXMgcGFyIGRlcyBmaWNoaWVycyBkdSBwYXF1ZXQgJXMgZMOpasOgIGluc3RhbGzDqS4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInRyeWluZyB0byBvdmVyd3JpdGUgZGlyZWN0b3J5ICclLjI1MHMnIGluIHBhY2thZ2UgJS4yNTBzICUuMjUwcyB3aXRoICIKKyJub25kaXJlY3RvcnkiCittc2dzdHIgIiIKKyJ0ZW50YXRpdmUgZGUgcmVtcGxhY2VtZW50IGR1IHLDqXBlcnRvaXJlIMKrwqAlLjI1MHPCoMK7IGRhbnMgbGUgcGFxdWV0ICUuMjUwcyAiCisiJS4yNTBzIGF2ZWMgdW4gw6lsw6ltZW50IGRlIHR5cGUgZGlmZsOpcmVudCIKKworIzogc3JjL2FyY2hpdmVzLmM6NjYxCisjLCBjLWZvcm1hdAorbXNnaWQgInRyeWluZyB0byBvdmVyd3JpdGUgJyUuMjUwcycsIHdoaWNoIGlzIGFsc28gaW4gcGFja2FnZSAlLjI1MHMgJS4yNTBzIgorbXNnc3RyICIiCisidGVudGF0aXZlIGRlIHJlbXBsYWNlbWVudCBkZSDCq8KgJS4yNTBzwqDCuywgcXVpIGFwcGFydGllbnQgYXVzc2kgYXUgcGFxdWV0ICIKKyIlLjI1MHMgJS4yNTBzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3MTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBgJS4yNTVzJyAod2hpbGUgcHJvY2Vzc2luZyBgJS4yNTVzJykiCittc2dzdHIgImltcG9zc2libGUgZGUgY3LDqWVyIMKrwqAlLjI1NXPCoMK7IChwZW5kYW50IGxlIHRyYWl0ZW1lbnQgZGUgwqvCoCUuMjU1c8KgwrspIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3MTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFja2VuZCBkcGtnLWRlYiBkdXJpbmcgYCUuMjU1cyciCittc2dzdHIgImJhY2tlbmQgZHBrZy1kZWIgcGVuZGFudCDCq8KgJS4yNTVzwqDCuyIKKworIzogc3JjL2FyY2hpdmVzLmM6NzQ0IHNyYy9hcmNoaXZlcy5jOjkwOCBzcmMvYXJjaGl2ZXMuYzo5NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZy93cml0aW5nIGAlLjI1NXMnIgorbXNnc3RyICJlcnJldXIgcGVuZGFudCBsYSBmZXJtZXR1cmUvw6ljcml0dXJlIGRlIMKrwqAlLjI1NXPCoMK7IgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgcGlwZSBgJS4yNTVzJyIKK21zZ3N0ciAiZXJyZXVyIHBlbmRhbnQgbGEgY3LDqWF0aW9uIGR1IHR1YmUgwqvCoCUuMjU1c8KgwrsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc1MyBzcmMvYXJjaGl2ZXMuYzo3NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgZGV2aWNlIGAlLjI1NXMnIgorbXNnc3RyICJlcnJldXIgcGVuZGFudCBsYSBjcsOpYXRpb24gZHUgcMOpcmlwaMOpcmlxdWUgwqvCoCUuMjU1c8KgwrsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc3MQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBoYXJkIGxpbmsgYCUuMjU1cyciCittc2dzdHIgImVycmV1ciBwZW5kYW50IGxhIGNyw6lhdGlvbiBkdSBsaWVuIHBoeXNpcXVlIMKrwqAlLjI1NXPCoMK7IgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NzcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjUzOQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBzeW1ib2xpYyBsaW5rIGAlLjI1NXMnIgorbXNnc3RyICJlcnJldXIgcGVuZGFudCBsYSBjcsOpYXRpb24gZHUgbGllbiBzeW1ib2xpcXVlIMKrwqAlLjI1NXPCoMK7IgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgZGlyZWN0b3J5IGAlLjI1NXMnIgorbXNnc3RyICJlcnJldXIgcGVuZGFudCBsYSBjcsOpYXRpb24gZHUgcsOpcGVydG9pcmUgwqvCoCUuMjU1c8KgwrsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjgyMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gbW92ZSBhc2lkZSBgJS4yNTVzJyB0byBpbnN0YWxsIG5ldyB2ZXJzaW9uIgorbXNnc3RyICIiCisiaW1wb3NzaWJsZSBkZSBkw6lwbGFjZXIgYWlsbGV1cnMgwqvCoCUuMjU1c8KgwrsgYWZpbiBkJ2VuIGluc3RhbGxlciB1bmUgbm91dmVsbGUgIgorInZlcnNpb24iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjgzMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MzIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIGxpbmsgYCUuMjU1cyciCittc2dzdHIgImltcG9zc2libGUgZGUgbGlyZSBsZSBsaWVuIMKrwqAlLjI1NXPCoMK7IgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4MzQgc3JjL2NvbmZpZ3VyZS5jOjQyMworIywgYy1mb3JtYXQKK21zZ2lkICJzeW1ib2xpYyBsaW5rICclLjI1MHMnIHNpemUgaGFzIGNoYW5nZWQgZnJvbSAlamQgdG8gJXpkIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjgzOQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gbWFrZSBiYWNrdXAgc3ltbGluayBmb3IgYCUuMjU1cyciCittc2dzdHIgImltcG9zc2libGUgZGUgY3LDqWVyIHVuIGxpZW4gc3ltYm9saXF1ZSBkZSBzZWNvdXJzIHBvdXIgwqvCoCUuMjU1c8KgwrsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjg0MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hvd24gYmFja3VwIHN5bWxpbmsgZm9yIGAlLjI1NXMnIgorbXNnc3RyICIiCisiaW1wb3NzaWJsZSBkZSBtb2RpZmllciBsZXMgZHJvaXRzIGR1IGxpZW4gc3ltYm9saXF1ZSBkZSBzZWNvdXJzIHBvdXIgIgorIsKrwqAlLjI1NXPCoMK7IgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4NDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG1ha2UgYmFja3VwIGxpbmsgb2YgYCUuMjU1cycgYmVmb3JlIGluc3RhbGxpbmcgbmV3IHZlcnNpb24iCittc2dzdHIgIiIKKyJpbXBvc3NpYmxlIGRlIGNyw6llciB1biBsaWVuIHN5bWJvbGlxdWUgZGUgc2Vjb3VycyBkZSDCq8KgJS4yNTVzwqDCuyBhdmFudCAiCisiZCdpbnN0YWxsZXIgdW5lIG5vdXZlbGxlIHZlcnNpb24iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjg2MyBzcmMvYXJjaGl2ZXMuYzo5NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IHZlcnNpb24gb2YgYCUuMjU1cyciCittc2dzdHIgImltcG9zc2libGUgZCdpbnN0YWxsZXIgdW5lIG5vdXZlbGxlIHZlcnNpb24gZGUgwqvCoCUuMjU1c8KgwrsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjkwMiBzcmMvYXJjaGl2ZXMuYzo5NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gJyUuMjU1cyciCittc2dzdHIgImltcG9zc2libGUgZCdvdXZyaXIgwqvCoCUuMjU1c8KgwrsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjk0NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBmaWxlICclLjI1NXMnIgorbXNnc3RyICJpbXBvc3NpYmxlIGRlIHN5bmNocm9uaXNlciBsZSBmaWNoaWVyIMKrwqAlLjI1NXPCoMK7IgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDAwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpZ25vcmluZyBkZXBlbmRlbmN5IHByb2JsZW0gd2l0aCAlczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorInByb2Jsw6htZSBkZSBkw6lwZW5kYW5jZSBhdmVjICVzwqA6XG4iCisiJXMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImNvbnNpZGVyaW5nIGRlY29uZmlndXJhdGlvbiBvZiBlc3NlbnRpYWxcbiIKKyIgcGFja2FnZSAlcywgdG8gZW5hYmxlICVzLiIKK21zZ3N0ciAiIgorInRlbnRhdGl2ZSBkZSBkw6ljb25maWd1cmF0aW9uIGR1IHBhcXVldCBlc3NlbnRpZWxcbiIKKyIlcyBwb3VyIGFjdGl2ZXIgJXMuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDA4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBubywgJXMgaXMgZXNzZW50aWFsLCB3aWxsIG5vdCBkZWNvbmZpZ3VyZVxuIgorIiBpdCBpbiBvcmRlciB0byBlbmFibGUgJXMuXG4iCittc2dzdHIgIiIKKyJkcGtnwqA6IG5vbiwgJXMgZXN0IGVzc2VudGllbCwgaWwgbmUgc2VyYSBwYXMgZMOpY29uZmlndXLDqVxuIgorIiBwb3VyIGF1dG9yaXNlciAlcy5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAyMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogbm8sIGNhbm5vdCBwcm9jZWVkIHdpdGggJXMgKC0tYXV0by1kZWNvbmZpZ3VyZSB3aWxsIGhlbHApOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZ8KgOiBub24sIGltcG9zc2libGUgZCdlZmZlY3R1ZXIgJXMgKHZvaXIgLS1hdXRvLWRlY29uZmlndXJlKcKgOlxuIgorIiVzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDMyCisjLCBjLWZvcm1hdAorbXNnaWQgInJlbW92YWwgb2YgJS4yNTBzIgorbXNnc3RyICJsYSBzdXBwcmVzc2lvbiBkZSAlLjI1MHMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW5zdGFsbGF0aW9uIG9mICUuMjUwcyIKK21zZ3N0ciAibCdpbnN0YWxsYXRpb24gZGUgJS4yNTBzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDU4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBjb25zaWRlcmluZyBkZWNvbmZpZ3VyYXRpb24gb2YgJXMsIHdoaWNoIHdvdWxkIGJlIGJyb2tlbiBieSAlcyAuLi5cbiIKK21zZ3N0ciAiIgorImRwa2fCoDogdGVudGF0aXZlIGRlIGTDqWNvbmZpZ3VyYXRpb24gZGUgJXMsIHF1aSBzZXJhaXQgY2Fzc8OpIHBhciAlcyAuLi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA2NQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiB5ZXMsIHdpbGwgZGVjb25maWd1cmUgJXMgKGJyb2tlbiBieSAlcykuXG4iCittc2dzdHIgImRwa2fCoDogb3VpLCBkw6ljb25maWd1cmF0aW9uIGRlICVzIChjYXNzw6kgcGFyICVzKS5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA2OSBzcmMvYXJjaGl2ZXMuYzoxMTg3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiByZWdhcmRpbmcgJXMgY29udGFpbmluZyAlczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2fCoDogY29uY2VybmFudCAlcyBjb250ZW5hbnQgJXPCoDpcbiIKKyIlcyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA3NworbXNnaWQgImlnbm9yaW5nIGJyZWFrYWdlLCBtYXkgcHJvY2VlZCBhbnl3YXkhIgorbXNnc3RyICJwcm9ibMOobWUgaWdub3LDqSwgaWwgZXN0IHBldXQtw6p0cmUgcG9zc2libGUgZGUgY29udGludWVywqAhIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDgyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpbnN0YWxsaW5nICUuMjUwcyB3b3VsZCBicmVhayAlLjI1MHMsIGFuZFxuIgorIiBkZWNvbmZpZ3VyYXRpb24gaXMgbm90IHBlcm1pdHRlZCAoLS1hdXRvLWRlY29uZmlndXJlIG1pZ2h0IGhlbHApIgorbXNnc3RyICIiCisibCdpbnN0YWxsYXRpb24gZGUgJS4yNTBzIGNhc3NlcmFpdCAlLjI1MHNcbiIKKyIgZXQgbGEgZMOpY29uZmlndXJhdGlvbiBuJ2VzdCBwYXMgYXV0b3Jpc8OpZSAoLS1hdXRvLWRlY29uZmlndXJlIHBvdXJyYWl0ICIKKyJhaWRlcikiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW5zdGFsbGluZyAlLjI1MHMgd291bGQgYnJlYWsgZXhpc3Rpbmcgc29mdHdhcmUiCittc2dzdHIgImwnaW5zdGFsbGF0aW9uIGRlICUuMjUwcyBjYXNzZXJhaXQgdW4gbG9naWNpZWwgZXhpc3RhbnQiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExMTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogY29uc2lkZXJpbmcgcmVtb3ZpbmcgJXMgaW4gZmF2b3VyIG9mICVzIC4uLlxuIgorbXNnc3RyICJkcGtnwqA6IHJldGlyZXIgJXMgZW4gZmF2ZXVyIGRlICVzIC4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTIyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGlzIG5vdCBwcm9wZXJseSBpbnN0YWxsZWQgLSBpZ25vcmluZyBhbnkgZGVwZW5kZW5jaWVzIG9uIGl0LlxuIgorbXNnc3RyICIlcyBuJ2VzdCBwYXMgY29ycmVjdGVtZW50IGluc3RhbGzDqSAtIHNlcyBkw6lwZW5kYW5jZXMgc29udCBpZ25vcsOpZXMuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogbWF5IGhhdmUgdHJvdWJsZSByZW1vdmluZyAlcywgYXMgaXQgcHJvdmlkZXMgJXMgLi4uXG4iCittc2dzdHIgIiIKKyJkcGtnwqA6IGxhIHN1cHByZXNzaW9uIGRlICVzIHBldXQgw6p0cmUgcHJvYmzDqW1hdGlxdWUsIHB1aXNxdSdpbCBmb3Vybml0IgorIiVzIC4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTY2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBwYWNrYWdlICVzIHJlcXVpcmVzIHJlaW5zdGFsbGF0aW9uLCBidXQgd2lsbCByZW1vdmUgYW55d2F5IGFzIHlvdSAiCisicmVxdWVzdGVkLlxuIgorbXNnc3RyICIiCisiZHBrZ8KgOiBsZSBwYXF1ZXQgJXMgcmVxdWllcnQgdW5lIHLDqWluc3RhbGxhdGlvbiBtYWlzIHNlcmEgc3VwcHJpbcOpIHF1YW5kICIKKyJtw6ptZSwgY29tbWUgZGVtYW5kw6kuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExNjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogcGFja2FnZSAlcyByZXF1aXJlcyByZWluc3RhbGxhdGlvbiwgd2lsbCBub3QgcmVtb3ZlLlxuIgorbXNnc3RyICIiCisiZHBrZ8KgOiBsZSBwYXF1ZXQgJXMgcmVxdWllcnQgdW5lIHLDqWluc3RhbGxhdGlvbiwgc3VwcHJlc3Npb24gYW5udWzDqWUuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogeWVzLCB3aWxsIHJlbW92ZSAlcyBpbiBmYXZvdXIgb2YgJXMuXG4iCittc2dzdHIgImRwa2fCoDogb3VpLCBzdXBwcmVzc2lvbiBkZSAlcyBlbiBmYXZldXIgZGUgJXMuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmxpY3RpbmcgcGFja2FnZXMgLSBub3QgaW5zdGFsbGluZyAlLjI1MHMiCittc2dzdHIgInBhcXVldHMgZW4gY29uZmxpdCAtICUuMjUwcyBub24gaW5zdGFsbMOpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTkxCittc2dpZCAiaWdub3JpbmcgY29uZmxpY3QsIG1heSBwcm9jZWVkIGFueXdheSEiCittc2dzdHIgImNvbmZsaXQgaWdub3LDqSwgaWwgZXN0IHBldXQtw6p0cmUgcG9zc2libGUgZGUgY29udGludWVyIG1hbGdyw6kgdG91dC4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyMzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyAtLXJlY3Vyc2l2ZSBuZWVkcyBhdCBsZWFzdCBvbmUgcGF0aCBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyAtLXJlY3Vyc2l2ZSBhIGJlc29pbiBkJ2F1IG1vaW5zIHVuIGNoZW1pbiBjb21tZSBwYXJhbcOodHJlIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjQ1Cittc2dpZCAiZmluZCBmb3IgZHBrZyAtLXJlY3Vyc2l2ZSIKK21zZ3N0ciAiwqvCoGZpbmTCoMK7IHBvdXIgZHBrZyAtLXJlY3Vyc2l2ZSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI2NgorbXNnaWQgImZhaWxlZCB0byBmZG9wZW4gZmluZCdzIHBpcGUiCittc2dzdHIgIsOpY2hlYyBkZSDCq8KgZmRvcGVuwqDCuyBzdXIgbGUgdHViZSBkZSDCq8KgZmluZMKgwrsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNzIKK21zZ2lkICJlcnJvciByZWFkaW5nIGZpbmQncyBwaXBlIgorbXNnc3RyICJlcnJldXIgcGVuZGFudCBsYSBsZWN0dXJlIHN1ciBsZSB0dWJlIGRlIMKrwqBmaW5kwqDCuyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3MworbXNnaWQgImVycm9yIGNsb3NpbmcgZmluZCdzIHBpcGUiCittc2dzdHIgImVycmV1ciBwZW5kYW50IGxhIGZlcm1ldHVyZSBkdSB0dWJlIGRlIMKrwqBmaW5kwqDCuyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3NgorIywgYy1mb3JtYXQKK21zZ2lkICJmaW5kIGZvciAtLXJlY3Vyc2l2ZSByZXR1cm5lZCB1bmhhbmRsZWQgZXJyb3IgJWkiCittc2dzdHIgIkxlIGZpbmQgcG91ciAtLXJlY3Vyc2l2ZSBhIHJlbnZvecOpIHVuZSBlcnJldXIgJWkgbm9uIGfDqXLDqWUiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNzkKK21zZ2lkICJzZWFyY2hlZCwgYnV0IGZvdW5kIG5vIHBhY2thZ2VzIChmaWxlcyBtYXRjaGluZyAqLmRlYikiCittc2dzdHIgInJlY2hlcmNow6ksIG1haXMgYXVjdW4gcGFxdWV0IHRyb3V2w6kgKGZpY2hpZXJzICouZGViIGNvcnJlc3BvbmRhbnQpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjkwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYXQgbGVhc3Qgb25lIHBhY2thZ2UgYXJjaGl2ZSBmaWxlIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIGEgYmVzb2luIGQnYXUgbW9pbnMgdW4gZmljaGllciBhcmNoaXZlIGRlIHBhcXVldCBjb21tZSBwYXJhbcOodHJlIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzI1IHNyYy9kaXZlcnRjbWQuYzo3OCBzcmMvZGl2ZXJ0Y21kLmM6MTE4CisjOiBzcmMvZW5xdWlyeS5jOjE2NiBzcmMvZW5xdWlyeS5jOjI3OSBzcmMvZW5xdWlyeS5jOjQ0OSBzcmMvZW5xdWlyeS5jOjQ1MQorIzogc3JjL2VucXVpcnkuYzo0NjQgc3JjL21haW4uYzo2NiBzcmMvbWFpbi5jOjE2MyBzcmMvbWFpbi5jOjMxNAorIzogc3JjL21haW4uYzo0OTMgc3JjL3BhY2thZ2VzLmM6MjU0IHNyYy9xdWVyeWNtZC5jOjI1MiBzcmMvcXVlcnljbWQuYzozNTUKKyM6IHNyYy9xdWVyeWNtZC5jOjM5NiBzcmMvcXVlcnljbWQuYzo0MDQgc3JjL3F1ZXJ5Y21kLmM6NDQ4IHNyYy9xdWVyeWNtZC5jOjUxNworIzogc3JjL3F1ZXJ5Y21kLmM6NjA2IHNyYy9xdWVyeWNtZC5jOjY1MCBzcmMvc2VsZWN0LmM6Nzkgc3JjL3N0YXRjbWQuYzo2OAorIzogc3JjL3N0YXRjbWQuYzo5OCBzcmMvdHJpZ2NtZC5jOjU4IHNyYy90cmlnY21kLmM6OTAgZHBrZy1kZWIvYnVpbGQuYzo0NDEKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyMTcgZHBrZy1kZWIvZXh0cmFjdC5jOjI1MCBkcGtnLWRlYi9pbmZvLmM6MjAzCisjOiBkcGtnLWRlYi9pbmZvLmM6MjY1IGRwa2ctZGViL21haW4uYzo2MCBkcGtnLWRlYi9tYWluLmM6MTI2CisjOiBkcGtnLXNwbGl0L2luZm8uYzoyNTcgZHBrZy1zcGxpdC9tYWluLmM6NTQgZHBrZy1zcGxpdC9tYWluLmM6OTgKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxNDQgZHBrZy1zcGxpdC9xdWV1ZS5jOjI4MAorbXNnaWQgIjxzdGFuZGFyZCBvdXRwdXQ+IgorbXNnc3RyICI8c29ydGllIHN0YW5kYXJkPiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTMyNiBzcmMvcGFja2FnZXMuYzoyNTUgc3JjL3F1ZXJ5Y21kLmM6MjUzCisjOiBzcmMvcXVlcnljbWQuYzozNTMgc3JjL3F1ZXJ5Y21kLmM6NDU0IHNyYy9xdWVyeWNtZC5jOjUxOCBzcmMvc2VsZWN0LmM6ODAKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjE2OSBkcGtnLXNwbGl0L3F1ZXVlLmM6MjE4Cittc2dpZCAiPHN0YW5kYXJkIGVycm9yPiIKK21zZ3N0ciAiPGVycmV1ciBzdGFuZGFyZD4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzNjcKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIlNlbGVjdGluZyBwcmV2aW91c2x5IGRlc2VsZWN0ZWQgcGFja2FnZSAlcy5cbiIKK21zZ2lkICJTZWxlY3RpbmcgcHJldmlvdXNseSB1bnNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dzdHIgIlPDqWxlY3Rpb24gZHUgcGFxdWV0ICVzIHByw6ljw6lkZW1tZW50IGTDqXPDqWxlY3Rpb25uw6kuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzNzEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIlNraXBwaW5nIGRlc2VsZWN0ZWQgcGFja2FnZSAlcy5cbiIKK21zZ2lkICJTa2lwcGluZyB1bnNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dzdHIgIlBhcXVldCBkw6lzw6lsZWN0aW9ubsOpICVzIGlnbm9yw6kuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiVmVyc2lvbiAlLjI1MHMgb2YgJS4yNTBzIGFscmVhZHkgaW5zdGFsbGVkLCBza2lwcGluZy5cbiIKK21zZ3N0ciAiVmVyc2lvbiAlLjI1MHMgZGUgJS4yNTBzIGTDqWrDoCBpbnN0YWxsw6llLCBwYXF1ZXQgaWdub3LDqS5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTM5NworIywgYy1mb3JtYXQKK21zZ2lkICJkb3duZ3JhZGluZyAlLjI1MHMgZnJvbSAlLjI1MHMgdG8gJS4yNTBzLiIKK21zZ3N0ciAiZMOpZ3JhZGF0aW9uICjCq8KgZG93bmdyYWRlwqDCuykgZGUgJS4yNTBzIGRlcHVpcyAlLjI1MHMgdmVycyAlLjI1MHMuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxNDAyCisjLCBjLWZvcm1hdAorbXNnaWQgIldpbGwgbm90IGRvd25ncmFkZSAlLjI1MHMgZnJvbSB2ZXJzaW9uICUuMjUwcyB0byAlLjI1MHMsIHNraXBwaW5nLlxuIgorbXNnc3RyICIiCisiTWlzZSDDoCBqb3VyIGRlICUuMjUwcyBkZSBsYSB2ZXJzaW9uICUuMjUwcyB2ZXJzIGwnYW5jaWVubmUgJS4yNTBzIGlnbm9yw6llLlxuIgorCisjOiBzcmMvY2xlYW51cC5jOjg2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1bmFibGUgdG8gcmVtb3ZlIG5ld2x5LWluc3RhbGxlZCB2ZXJzaW9uIG9mIGAlLjI1MHMnIHRvIGFsbG93IHJlaW5zdGFsbGF0aW9uICIKKyJvZiBiYWNrdXAgY29weSIKK21zZ3N0ciAiIgorImltcG9zc2libGUgZGUgc3VwcHJpbWVyIGxhIHZlcnNpb24gbm91dmVsbGVtZW50IGluc3RhbGzDqWUgZGUgwqvCoCUuMjUwc8KgwrsgcG91ciAiCisicGVybWV0dHJlIGxhIHLDqWluc3RhbGxhdGlvbiBkJ3VuZSBjb3BpZSBkZSBzZWNvdXJzIgorCisjOiBzcmMvY2xlYW51cC5jOjkzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZXN0b3JlIGJhY2t1cCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICJpbXBvc3NpYmxlIGRlIHLDqWluc3RhbGxlciBsYSBjb3BpZSBkZSBzZWNvdXJzIGRlIMKrwqAlLjI1MHPCoMK7IgorCisjOiBzcmMvY2xlYW51cC5jOjk3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgYmFja3VwIGNvcHkgb2YgJyUuMjUwcyciCittc2dzdHIgImltcG9zc2libGUgZGUgc3VwcHJpbWVyIGxhIGNvcGllIGRlIHNlY291cnMgZGUgwqvCoCUuMjUwc8KgwrsiCisKKyM6IHNyYy9jbGVhbnVwLmM6MTAxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgbmV3bHktaW5zdGFsbGVkIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dzdHIgIiIKKyJpbXBvc3NpYmxlIGRlIHN1cHByaW1lciBsYSB2ZXJzaW9uIG5vdXZlbGxlbWVudCBpbnN0YWxsw6llIGRlIMKrwqAlLjI1MHPCoMK7IgorCisjOiBzcmMvY2xlYW51cC5jOjEwOAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIG5ld2x5LWV4dHJhY3RlZCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICJpbXBvc3NpYmxlIGRlIHN1cHByaW1lciBsYSB2ZXJzaW9uIG5vdXZlbGxlbWVudCBleHRyYWl0ZSBkZSDCq8KgJS4yNTBzwqDCuyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjEwNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBuZXcgZGlzdHJpYnV0ZWQgY29uZmZpbGUgJyUuMjUwcyciCittc2dzdHIgIiIKKyJpbXBvc3NpYmxlIGQnYW5hbHlzZXIgbGUgbm91dmVhdSBmaWNoaWVyIGRlIGNvbmZpZ3VyYXRpb24gwqvCoCUuMjUwc8KgwrssIGZvdXJuaSAiCisiYXZlYyBsYSBkaXN0cmlidXRpb24iCisKKyM6IHNyYy9jb25maWd1cmUuYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgY3VycmVudCBpbnN0YWxsZWQgY29uZmZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKyJpbXBvc3NpYmxlIGQnYW5hbHlzZXIgbGUgZmljaGllciBkZSBjb25maWd1cmF0aW9uIGFjdHVlbGxlbWVudCBpbnN0YWxsw6kgIgorIsKrwqAlLjI1MHPCoMK7IgorCisjOiBzcmMvY29uZmlndXJlLmM6MTI2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJDb25maWd1cmF0aW9uIGZpbGUgYCVzJywgZG9lcyBub3QgZXhpc3Qgb24gc3lzdGVtLlxuIgorIkluc3RhbGxpbmcgbmV3IGNvbmZpZyBmaWxlIGFzIHlvdSByZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiIKKyJcbiIKKyJMZSBmaWNoaWVyIGRlIGNvbmZpZ3VyYXRpb24gwqvCoCVzwqDCuyBuJ2V4aXN0ZSBwYXMgc3VyIGxlIHN5c3TDqG1lLlxuIgorIkluc3RhbGxhdGlvbiBkJ3VuIG5vdXZlYXUgZmljaGllciBkZSBjb25maWd1cmF0aW9uIGNvbW1lIGRlbWFuZMOpLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTY4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlIG9sZCBiYWNrdXAgJyUuMjUwcyc6ICVzIgorbXNnc3RyICIlczogbidhIHBhcyBwdSBzdXBwcmltZXIgbCdhbmNpZW5uZSBzYXV2ZWdhcmRlIMKrwqAlLjI1MHPCoMK7wqA6ICVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTc2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVuYW1lICclLjI1MHMnIHRvICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiJXM6IG4nYSBwYXMgcHUgcmVub21tZXIgwqvCoCUuMjUwc8KgwrsgZW4gwqvCoCUuMjUwc8KgwrvCoDogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW1vdmUgJyUuMjUwcyc6ICVzIgorbXNnc3RyICIlczogaW1wb3NzaWJsZSBkZSBzdXBwcmltZXIgwqvCoCUuMjUwc8KgwrvCoDogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxODgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW1vdmUgb2xkIGRpc3RyaWJ1dGVkIHZlcnNpb24gJyUuMjUwcyc6ICVzIgorbXNnc3RyICIiCisiJXPCoDogw6ljaGVjIGRlIGxhIHN1cHByZXNzaW9uIGRlIGxhIHZlcnNpb24gZGUgbCdhbmNpZW5uZSBkaXN0cmlidXRpb24gIgorIsKrwqAlLjI1MHPCoMK7wqA6ICVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTkyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlICclLjI1MHMnIChiZWZvcmUgb3ZlcndyaXRlKTogJXMiCittc2dzdHIgIiVzwqA6IMOpY2hlYyBkZSBsYSBzdXBwcmVzc2lvbiBkZSDCq8KgJS4yNTBzwqDCuyAoYXZhbnQgcmVtcGxhY2VtZW50KcKgOiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE5NgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIGxpbmsgJyUuMjUwcycgdG8gJyUuMjUwcyc6ICVzIgorbXNnc3RyICIlc8KgOsOpY2hlYyBkZSBsYSBsaWFpc29uIGRlIMKrwqAlLjI1MHPCoMK7IMOgIMKrwqAlLjI1MHPCoMK7wqA6ICVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjAwCisjLCBjLWZvcm1hdAorbXNnaWQgIkluc3RhbGxpbmcgbmV3IHZlcnNpb24gb2YgY29uZmlnIGZpbGUgJXMgLi4uXG4iCittc2dzdHIgIiIKKyJJbnN0YWxsYXRpb24gZGUgbGEgbm91dmVsbGUgdmVyc2lvbiBkdSBmaWNoaWVyIGRlIGNvbmZpZ3VyYXRpb24gJXMgLi4uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzoyMDYgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjU0NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBgJS4yNTBzJyBhcyBgJS4yNTBzJyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkJ2luc3RhbGxlciDCq8KgJS4yNTBzwqDCuyBjb21tZSDCq8KgJS4yNTBzwqDCuyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI1NworIywgYy1mb3JtYXQKK21zZ2lkICJubyBwYWNrYWdlIG5hbWVkIGAlcycgaXMgaW5zdGFsbGVkLCBjYW5ub3QgY29uZmlndXJlIgorbXNnc3RyICJhdWN1biBwYXF1ZXQgbm9tbcOpIMKrwqAlc8Kgwrsgbidlc3QgaW5zdGFsbMOpLCBjb25maWd1cmF0aW9uIGltcG9zc2libGUiCisKKyM6IHNyYy9jb25maWd1cmUuYzoyNjAKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlLjI1MHMgaXMgYWxyZWFkeSBpbnN0YWxsZWQgYW5kIGNvbmZpZ3VyZWQiCittc2dzdHIgImxlIHBhcXVldCAlLjI1MHMgZXN0IGTDqWrDoCBpbnN0YWxsw6kgZXQgY29uZmlndXLDqSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI2MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisicGFja2FnZSAlLjI1MHMgaXMgbm90IHJlYWR5IGZvciBjb25maWd1cmF0aW9uXG4iCisiIGNhbm5vdCBjb25maWd1cmUgKGN1cnJlbnQgc3RhdHVzIGAlLjI1MHMnKSIKK21zZ3N0ciAiIgorImxlIHBhcXVldCAlLjI1MHMgbidlc3QgcGFzIHByw6p0IHBvdXIgbGEgY29uZmlndXJhdGlvblxuIgorIiBjb25maWd1cmF0aW9uIGltcG9zc2libGUgKMOpdGF0IGFjdHVlbCDCq8KgJS4yNTBzwqDCuykiCisKKyM6IHNyYy9jb25maWd1cmUuYzoyOTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IGRlcGVuZGVuY3kgcHJvYmxlbXMgcHJldmVudCBjb25maWd1cmF0aW9uIG9mICVzOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZ8KgOiBkZXMgcHJvYmzDqG1lcyBkZSBkw6lwZW5kYW5jZXMgZW1ww6pjaGVudCBsYSBjb25maWd1cmF0aW9uIGRlICVzwqA6XG4iCisiJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoyOTcKK21zZ2lkICJkZXBlbmRlbmN5IHByb2JsZW1zIC0gbGVhdmluZyB1bmNvbmZpZ3VyZWQiCittc2dzdHIgInByb2Jsw6htZXMgZGUgZMOpcGVuZGFuY2VzIC0gbGFpc3PDqSBub24gY29uZmlndXLDqSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjMwMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogJXM6IGRlcGVuZGVuY3kgcHJvYmxlbXMsIGJ1dCBjb25maWd1cmluZyBhbnl3YXkgYXMgeW91IHJlcXVlc3RlZDpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2fCoDogJXPCoDogcHJvYmzDqG1lcyBkZSBkw6lwZW5kYW5jZXMsIG1haXMgY29uZmlndXJhdGlvbiBjb21tZSBkZW1hbmTDqcKgOlxuIgorIiVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MzA5Cittc2dpZCAiIgorIlBhY2thZ2UgaXMgaW4gYSB2ZXJ5IGJhZCBpbmNvbnNpc3RlbnQgc3RhdGUgLSB5b3Ugc2hvdWxkXG4iCisiIHJlaW5zdGFsbCBpdCBiZWZvcmUgYXR0ZW1wdGluZyBjb25maWd1cmF0aW9uLiIKK21zZ3N0ciAiIgorIkxlIHBhcXVldCBlc3QgZGFucyB1biDDqXRhdCB2cmFpbWVudCBpbmNvaMOpcmVudCAtIHZvdXMgZGV2cmllelxuIgorIiBsZSByw6lpbnN0YWxsZXIgYXZhbnQgZGUgdGVudGVyIGRlIGxlIGNvbmZpZ3VyZXIuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MzEyCisjLCBjLWZvcm1hdAorbXNnaWQgIlNldHRpbmcgdXAgJXMgKCVzKSAuLi5cbiIKK21zZ3N0ciAiUGFyYW3DqXRyYWdlIGRlICVzICglcykgLi4uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzozOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiB1bmFibGUgdG8gc3RhdCBjb25maWcgZmlsZSAnJXMnXG4iCisiICg9ICclcycpOiAlcyIKK21zZ3N0ciAiIgorIiVzwqA6IGltcG9zc2libGUgZCdhbmFseXNlciBsZSBmaWNoaWVyIGRlICBjb25maWd1cmF0aW9uIMKrwqAlc8KgwrsgKD0gwqvCoCVzwqDCuynCoDogIgorIiVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDA5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogY29uZmlnIGZpbGUgJyVzJyBpcyBhIGNpcmN1bGFyIGxpbmtcbiIKKyIgKD0gJyVzJykiCittc2dzdHIgIiIKKyIlc8KgOiBsZSBmaWNoaWVyIGRlIGNvbmZpZ3VyYXRpb24gwqvCoCVzwqDCuyBlc3QgdW4gbGllbiBjaXJjdWxhaXJlICg9IMKrwqAlc8KgwrspIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDE4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogdW5hYmxlIHRvIHJlYWRsaW5rIGNvbmZmaWxlICclcydcbiIKKyIgKD0gJyVzJyk6ICVzIgorbXNnc3RyICIiCisiJXPCoDogaW1wb3NzaWJsZSBkZSBsaXJlIGxlIGxpZW4gY29ycmVzcG9uZGFudCBhdSBmaWNoaWVyIGRlIGNvbmZpZ3VyYXRpb24gIgorIsKrwqAlc8KgwrsgKD0gwqvCoCVzwqDCuynCoDogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzo0NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBjb25mZmlsZSAnJS4yNTBzJyByZXNvbHZlcyB0byBkZWdlbmVyYXRlIGZpbGVuYW1lXG4iCisiICgnJXMnIGlzIGEgc3ltbGluayB0byAnJXMnKSIKK21zZ3N0ciAiIgorIiVzwqA6IGxlIGZpY2hpZXIgZGUgY29uZmlndXJhdGlvbiDCq8KgJS4yNTBzwqDCuyBlc3QgdW4gbm9tIGRlIGZpY2hpZXIgZMOpZ8OpbsOpcsOpLlxuIgorIijCq8KgJXPCoMK7IGVzdCB1biBsaWVuIHN5bWJvbGlxdWUgdmVycyDCq8KgJXPCoMK7KSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQ2MAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogY29uZmZpbGUgJyUuMjUwcycgaXMgbm90IGEgcGxhaW4gZmlsZSBvciBzeW1saW5rICg9ICclcycpIgorbXNnc3RyICIiCisiJXPCoDogbGUgZmljaGllciBkZSBjb25maWd1cmF0aW9uIMKrwqAlLjI1MHPCoMK7IG4nZXN0IG5pIHVuIHZyYWkgZmljaGllciBuaSB1biAiCisibGllbiAoPSDCq8KgJXPCoMK7KSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQ4NgorbXNnaWQgIm1kNWhhc2giCittc2dzdHIgIm1kNWhhc2giCisKKyM6IHNyYy9jb25maWd1cmUuYzo0OTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IHVuYWJsZSB0byBvcGVuIGNvbmZmaWxlICVzIGZvciBoYXNoOiAlcyIKK21zZ3N0ciAiIgorIiVzwqA6IGltcG9zc2libGUgZCdvdXZyaXIgbGUgZmljaGllciBkZSBjb25maWd1cmF0aW9uICVzIHBvdXIgaGFjaGFnZcKgOiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjUyMiBzcmMvY29uZmlndXJlLmM6NTI2Cittc2dpZCAiY29uZmZpbGUgZGlmZmVyZW5jZSB2aXN1YWxpemVyIgorbXNnc3RyICJ2aXN1YWxpc2F0aW9uIGRlcyBkaWZmw6lyZW5jZXMgZGFucyBsZSBmaWNoaWVyIGRlIGNvbmZpZ3VyYXRpb24iCisKKyM6IHNyYy9jb25maWd1cmUuYzo1NDMKK21zZ2lkICJUeXBlIGBleGl0JyB3aGVuIHlvdSdyZSBkb25lLlxuIgorbXNnc3RyICJUYXBleiDCq8KgZXhpdMKgwrsgbG9yc3F1ZSB2b3VzIGF1cmV6IGZpbmkuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo1NTIgc3JjL2NvbmZpZ3VyZS5jOjU1NgorbXNnaWQgImNvbmZmaWxlIHNoZWxsIgorbXNnc3RyICJwcm9jZXNzZXVyIGRlIGNvbW1hbmRlcyBkdSBmaWNoaWVyIGRlIGNvbmZpZ3VyYXRpb24iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIkNvbmZpZ3VyYXRpb24gZmlsZSBgJXMnIgorbXNnc3RyICIiCisiXG4iCisiRmljaGllciBkZSBjb25maWd1cmF0aW9uIMKrwqAlc8KgwrsiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIChhY3R1YWxseSBgJXMnKSIKK21zZ3N0ciAiIChlbiByw6lhbGl0w6kgwqvCoCVzwqDCuykiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiA9PT4gRmlsZSBvbiBzeXN0ZW0gY3JlYXRlZCBieSB5b3Ugb3IgYnkgYSBzY3JpcHQuXG4iCisiID09PiBGaWxlIGFsc28gaW4gcGFja2FnZSBwcm92aWRlZCBieSBwYWNrYWdlIG1haW50YWluZXIuXG4iCittc2dzdHIgIiIKKyJcbiIKKyIgPT0+IEZpY2hpZXIgZHUgc3lzdMOobWUgY3LDqcOpIHBhciB2b3VzIG91IHBhciB1biBzY3JpcHQuXG4iCisiID09PiBGaWNoaWVyIMOpZ2FsZW1lbnQgcHLDqXNlbnQgZGFucyBsZSBwYXF1ZXQgZm91cm5pIHBhciBsZSByZXNwb25zYWJsZSBkdSAiCisicGFxdWV0LlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjEzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgICAgIE5vdCBtb2RpZmllZCBzaW5jZSBpbnN0YWxsYXRpb24uXG4iCittc2dzdHIgIiIKKyJcbiIKKyIgICAgIEluY2hhbmfDqSBkZXB1aXMgbCdpbnN0YWxsYXRpb24uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiA9PT4gTW9kaWZpZWQgKGJ5IHlvdSBvciBieSBhIHNjcmlwdCkgc2luY2UgaW5zdGFsbGF0aW9uLlxuIgorbXNnc3RyICIiCisiXG4iCisiID09PiBNb2RpZmnDqSAocGFyIHZvdXMgb3UgcGFyIHVuIHNjcmlwdCkgZGVwdWlzIGwnaW5zdGFsbGF0aW9uLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjE2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgPT0+IERlbGV0ZWQgKGJ5IHlvdSBvciBieSBhIHNjcmlwdCkgc2luY2UgaW5zdGFsbGF0aW9uLlxuIgorbXNnc3RyICIiCisiXG4iCisiID09PiBTdXBwcmltw6kgKHBhciB2b3VzIG91IHBhciB1biBzY3JpcHQpIGRlcHVpcyBsJ2luc3RhbGxhdGlvbi5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYxOQorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IFBhY2thZ2UgZGlzdHJpYnV0b3IgaGFzIHNoaXBwZWQgYW4gdXBkYXRlZCB2ZXJzaW9uLlxuIgorbXNnc3RyICIgPT0+IExlIGRpc3RyaWJ1dGV1ciBkdSBwYXF1ZXQgYSBmb3VybmkgdW5lIHZlcnNpb24gbWlzZSDDoCBqb3VyLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjIwCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgICAgVmVyc2lvbiBpbiBwYWNrYWdlIGlzIHRoZSBzYW1lIGFzIGF0IGxhc3QgaW5zdGFsbGF0aW9uLlxuIgorbXNnc3RyICIiCisiICAgICAgTGEgdmVyc2lvbiBkdSBwYXF1ZXQgZXN0IGxhIG3Dqm1lIHF1ZSBjZWxsZSBkZSBsYSBwcsOpY8OpZGVudGUgIgorImluc3RhbGxhdGlvbi5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYyOAorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IFVzaW5nIG5ldyBmaWxlIGFzIHlvdSByZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiA9PT4gVXRpbGlzYXRpb24gZCd1biBub3V2ZWF1IGZpY2hpZXIgY29tbWUgZGVtYW5kw6kuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBVc2luZyBjdXJyZW50IG9sZCBmaWxlIGFzIHlvdSByZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiA9PT4gVXRpbGlzYXRpb24gZGUgbCdhbmNpZW4gZmljaGllciBjb3VyYW50IGNvbW1lIGRlbWFuZMOpLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjQxCisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gS2VlcGluZyBvbGQgY29uZmlnIGZpbGUgYXMgZGVmYXVsdC5cbiIKK21zZ3N0ciAiIgorIiA9PT4gQ29uc2VydmF0aW9uIGRlIGwnYW5jaWVuIGZpY2hpZXIgZGUgY29uZmlndXJhdGlvbiBjb21tZSBmaWNoaWVyIHBhciAiCisiZMOpZmF1dC5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY0NQorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IFVzaW5nIG5ldyBjb25maWcgZmlsZSBhcyBkZWZhdWx0LlxuIgorbXNnc3RyICIiCisiID09PiBVdGlsaXNhdGlvbiBkJ3VuIG5vdXZlYXUgZmljaGllciBkZSBjb25maWd1cmF0aW9uIGNvbW1lIGZpY2hpZXIgcGFyICIKKyJkw6lmYXV0LlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjUyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIgICBXaGF0IHdvdWxkIHlvdSBsaWtlIHRvIGRvIGFib3V0IGl0ID8gIFlvdXIgb3B0aW9ucyBhcmU6XG4iCisiICAgIFkgb3IgSSAgOiBpbnN0YWxsIHRoZSBwYWNrYWdlIG1haW50YWluZXIncyB2ZXJzaW9uXG4iCisiICAgIE4gb3IgTyAgOiBrZWVwIHlvdXIgY3VycmVudGx5LWluc3RhbGxlZCB2ZXJzaW9uXG4iCisiICAgICAgRCAgICAgOiBzaG93IHRoZSBkaWZmZXJlbmNlcyBiZXR3ZWVuIHRoZSB2ZXJzaW9uc1xuIgorIiAgICAgIFogICAgIDogc3RhcnQgYSBzaGVsbCB0byBleGFtaW5lIHRoZSBzaXR1YXRpb25cbiIKK21zZ3N0ciAiIgorIiAgIFF1ZSB2b3VsZXotdm91cyBmYWlyZcKgPyBWb3Mgb3B0aW9ucyBzb250IGxlcyBzdWl2YW50ZXPCoDpcbiIKKyIgICAgWSBvdSBJIMKgOiBpbnN0YWxsZXIgbGEgdmVyc2lvbiBkdSByZXNwb25zYWJsZSBkdSBwYXF1ZXRcbiIKKyIgICAgTiBvdSBPIMKgOiBnYXJkZXIgdm90cmUgdmVyc2lvbiBhY3R1ZWxsZW1lbnQgaW5zdGFsbMOpZVxuIgorIiAgICAgIEQgICAgwqA6IGFmZmljaGVyIGxlcyBkaWZmw6lyZW5jZXMgZW50cmUgbGVzIHZlcnNpb25zXG4iCisiICAgICAgWiAgICDCoDogc3VzcGVuZHJlIGNlIHByb2Nlc3N1cyBwb3VyIGV4YW1pbmVyIGxhIHNpdHVhdGlvblxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjU5CisjLCBjLWZvcm1hdAorbXNnaWQgIiBUaGUgZGVmYXVsdCBhY3Rpb24gaXMgdG8ga2VlcCB5b3VyIGN1cnJlbnQgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIEwnYWN0aW9uIHBhciBkw6lmYXV0IGdhcmRlIHZvdHJlIHZlcnNpb24gYWN0dWVsbGUuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIFRoZSBkZWZhdWx0IGFjdGlvbiBpcyB0byBpbnN0YWxsIHRoZSBuZXcgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIEwnYWN0aW9uIHBhciBkw6lmYXV0IGluc3RhbGxlIGxhIG5vdXZlbGxlIHZlcnNpb24uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NjYKK21zZ2lkICJbZGVmYXVsdD1OXSIKK21zZ3N0ciAiW2TDqWZhdXQ9Tl0iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NjcKK21zZ2lkICJbZGVmYXVsdD1ZXSIKK21zZ3N0ciAiW2TDqWZhdXQ9WV0iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NjgKK21zZ2lkICJbbm8gZGVmYXVsdF0iCittc2dzdHIgIltwYXMgZGUgY2hvaXggcGFyIGTDqWZhdXRdIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjcxCittc2dpZCAiZXJyb3Igd3JpdGluZyB0byBzdGRlcnIsIGRpc2NvdmVyZWQgYmVmb3JlIGNvbmZmaWxlIHByb21wdCIKK21zZ3N0ciAiIgorImVycmV1ciBkJ8OpY3JpdHVyZSBzdXIgwqvCoHN0ZGVycsKgwrssIGNvbnN0YXTDqWUgYXZhbnQgbCdpbnZpdGUgZGUgY29uZmlndXJhdGlvbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY4MAorbXNnaWQgInJlYWQgZXJyb3Igb24gc3RkaW4gYXQgY29uZmZpbGUgcHJvbXB0IgorbXNnc3RyICJlcnJldXIgZGUgbGVjdHVyZSBzdXIgbCdlbnRyw6llIHN0YW5kYXJkIMOgIGwnaW52aXRlIGRlIGNvbmZpZ3VyYXRpb24iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2ODEKK21zZ2lkICJFT0Ygb24gc3RkaW4gYXQgY29uZmZpbGUgcHJvbXB0IgorbXNnc3RyICJFT0Ygc3VyIGwnZW50csOpZSBzdGFuZGFyZCDDoCBsJ2ludml0ZSBkZSBjb25maWd1cmF0aW9uIgorCisjOiBzcmMvZGVwY29uLmM6MTc1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGRlcGVuZHMgb24gJXMiCittc2dzdHIgIiVzIGTDqXBlbmQgZGUgJXMiCisKKyM6IHNyYy9kZXBjb24uYzoxNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcHJlLWRlcGVuZHMgb24gJXMiCittc2dzdHIgIiVzIHByw6ktZMOpcGVuZCBkZSAlcyIKKworIzogc3JjL2RlcGNvbi5jOjE4MQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyByZWNvbW1lbmRzICVzIgorbXNnc3RyICIlcyByZWNvbW1hbmRlICVzIgorCisjOiBzcmMvZGVwY29uLmM6MTg0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHN1Z2dlc3RzICVzIgorbXNnc3RyICIlcyBzdWdnw6hyZSAlcyIKKworIzogc3JjL2RlcGNvbi5jOjE4NworIywgYy1mb3JtYXQKK21zZ2lkICIlcyBicmVha3MgJXMiCittc2dzdHIgIiVzIGNhc3NlICjCq8KgYnJlYWtzwqDCuykgJXMiCisKKyM6IHNyYy9kZXBjb24uYzoxOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgY29uZmxpY3RzIHdpdGggJXMiCittc2dzdHIgIiVzIGVudHJlIGVuIGNvbmZsaXQgYXZlYyAlcyIKKworIzogc3JjL2RlcGNvbi5jOjE5MworIywgYy1mb3JtYXQKK21zZ2lkICIlcyBlbmhhbmNlcyAlcyIKK21zZ3N0ciAiJXMgYW3DqWxpb3JlICVzIgorCisjOiBzcmMvZGVwY29uLmM6Mjk2CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHRvIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIGRvaXQgw6p0cmUgc3VwcHJpbcOpLlxuIgorCisjOiBzcmMvZGVwY29uLmM6Mjk5CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHRvIGJlIGRlY29uZmlndXJlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMgZG9pdCDDqnRyZSBkw6ljb25maWd1csOpLlxuIgorCisjOiBzcmMvZGVwY29uLmM6MzA0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHRvIGJlIGluc3RhbGxlZCwgYnV0IGlzIHZlcnNpb24gJS4yNTBzLlxuIgorbXNnc3RyICIgICUuMjUwcyBkb2l0IMOqdHJlIGluc3RhbGzDqSwgbWFpcyBzYSB2ZXJzaW9uIGVzdCAlLjI1MHMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgaW5zdGFsbGVkLCBidXQgaXMgdmVyc2lvbiAlLjI1MHMuXG4iCittc2dzdHIgIiAgJS4yNTBzIGVzdCBpbnN0YWxsw6ksIG1haXMgc2EgdmVyc2lvbiBlc3QgJS4yNTBzLlxuIgorCisjOiBzcmMvZGVwY29uLmM6MzMzCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHVucGFja2VkLCBidXQgaGFzIG5ldmVyIGJlZW4gY29uZmlndXJlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMgZXN0IGTDqXBhcXVldMOpLCBtYWlzIG4nYSBqYW1haXMgw6l0w6kgY29uZmlndXLDqS5cbiIKKworIzogc3JjL2RlcGNvbi5jOjMzNworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB1bnBhY2tlZCwgYnV0IGlzIHZlcnNpb24gJS4yNTBzLlxuIgorbXNnc3RyICIgICUuMjUwcyBlc3QgZMOpcGFxdWV0w6ksIG1haXMgc2EgdmVyc2lvbiBlc3QgJS4yNTBzLlxuIgorCisjOiBzcmMvZGVwY29uLmM6MzQzCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGxhdGVzdCBjb25maWd1cmVkIHZlcnNpb24gaXMgJS4yNTBzLlxuIgorbXNnc3RyICIgIGxhIGRlcm5pw6hyZSB2ZXJzaW9uIGNvbmZpZ3Vyw6llIGRlICUuMjUwcyBlc3QgJS4yNTBzLlxuIgorCisjOiBzcmMvZGVwY29uLmM6MzUzCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzICVzLlxuIgorbXNnc3RyICIgICUuMjUwcyBlc3QgJXMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozODgKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGJ1dCBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyBmb3Vybml0ICUuMjUwcyBtYWlzIGRvaXQgw6p0cmUgc3VwcHJpbcOpLlxuIgorCisjOiBzcmMvZGVwY29uLmM6MzkyCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBidXQgaXMgdG8gYmUgZGVjb25maWd1cmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyBmb3Vybml0ICUuMjUwcyBtYWlzIGRvaXQgw6p0cmUgZMOpY29uZmlndXLDqS5cbiIKKworIzogc3JjL2RlcGNvbi5jOjQwMQorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYnV0IGlzICVzLlxuIgorbXNnc3RyICIgICUuMjUwcyBmb3Vybml0ICUuMjUwcyBtYWlzIGVzdCAlcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjQxNQorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIgICUuMjUwcyBuJ2VzdCBwYXMgaW5zdGFsbMOpLlxuIgorCisjOiBzcmMvZGVwY29uLmM6NDQzCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzICh2ZXJzaW9uICUuMjUwcykgaXMgdG8gYmUgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIgICUuMjUwcyAodmVyc2lvbiAlLjI1MHMpIGRvaXQgw6p0cmUgaW5zdGFsbMOpLlxuIgorCisjOiBzcmMvZGVwY29uLmM6NDY4CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzICh2ZXJzaW9uICUuMjUwcykgaXMgcHJlc2VudCBhbmQgJXMuXG4iCittc2dzdHIgIiAgwqvCoCUuMjUwc8KgwrsgKHZlcnNpb24gwqvCoCUuMjUwc8KgwrspIGVzdCBwcsOpc2VudCBhaW5zaSBxdWUgwqvCoCVzwqDCuy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjQ5NQorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYW5kIGlzIHRvIGJlIGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMgZm91cm5pdCAlLjI1MHMgZXQgZG9pdCDDqnRyZSBpbnN0YWxsw6kuXG4iCisKKyM6IHNyYy9kZXBjb24uYzo1MzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGFuZCBpcyBwcmVzZW50IGFuZCAlcy5cbiIKK21zZ3N0ciAiICDCq8KgJS4yNTBzwqDCuyBmb3Vybml0IMKrwqAlLjI1MHPCoMK7IGV0IGVzdCBwcsOpc2VudCBhaW5zaSBkZSAgwqvCoCVzwqDCuy5cbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjUwCisjLCBmdXp6eQorI3wgbXNnaWQgIlVzZSAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgcXVlcnlpbmcgcGFja2FnZXMuIgorbXNnaWQgIlVzZSAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgZGl2ZXJ0aW5nIGZpbGVzLiIKK21zZ3N0ciAiVXRpbGlzZXIgLS1oZWxwIHBvdXIgZGUgbCdhaWRlIHN1ciBsYSByZWNoZXJjaGUgZGUgcGFxdWV0cy4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo2NiBzcmMvc3RhdGNtZC5jOjU3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo4MAorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gJXMgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiRGViaWFuICVzIHZlcnNpb24gJXMuXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo3MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDEwIEd1aWxsZW0gSm92ZXIuXG4iCittc2dzdHIgIiIKKyJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMTAgR3VpbGxlbSBKb3Zlci5cbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjc1IHNyYy9tYWluLmM6NjMgc3JjL3F1ZXJ5Y21kLmM6NjAzIHNyYy9zdGF0Y21kLmM6NjUKKyM6IHNyYy90cmlnY21kLmM6NTUgZHBrZy1kZWIvbWFpbi5jOjU3IGRwa2ctc3BsaXQvbWFpbi5jOjUxCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6ODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgb3JcbiIKKyJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKK21zZ3N0ciAiIgorIkNlIHByb2dyYW1tZSBlc3QgdW4gbG9naWNpZWwgbGlicmXCoDsgdmV1aWxsZXogY29uc3VsdGVyIGxhIMKrwqBHTlUgR2VuZXJhbFxuIgorIlB1YmxpYyBMaWNlbnNlwqDCuyB2ZXJzaW9uIDIgb3Ugc3Vww6lyaWV1cmUgcG91ciBwcmVuZHJlIGNvbm5haXNzYW5jZSBkZXNcbiIKKyJjb25kaXRpb25zIGRlIHJlcHJvZHVjdGlvbi4gQVVDVU5FIGdhcmFudGllIG4nZXN0IG9mZmVydGUuXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo4NyBzcmMvbWFpbi5jOjgxIHNyYy9xdWVyeWNtZC5jOjYxNSBzcmMvc3RhdGNtZC5jOjc3CisjOiBkcGtnLWRlYi9tYWluLmM6NjkgZHBrZy1zcGxpdC9tYWluLmM6NjMgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjk3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gPGNvbW1hbmQ+XG4iCisiXG4iCittc2dzdHIgIiIKKyJTeW50YXhlwqA6ICVzIFs8b3B0aW9uPiAuLi5dIDxjb21tYW5kZT5cbiIKKyJcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjkxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIFstLWFkZF0gPGZpbGU+ICAgICAgICAgICBhZGQgYSBkaXZlcnNpb24uXG4iCisiICAtLXJlbW92ZSA8ZmlsZT4gICAgICAgICAgcmVtb3ZlIHRoZSBkaXZlcnNpb24uXG4iCisiICAtLWxpc3QgWzxnbG9iLXBhdHRlcm4+XSAgc2hvdyBmaWxlIGRpdmVyc2lvbnMuXG4iCisiICAtLWxpc3RwYWNrYWdlIDxmaWxlPiAgICAgc2hvdyB3aGF0IHBhY2thZ2UgZGl2ZXJ0cyB0aGUgZmlsZS5cbiIKKyIgIC0tdHJ1ZW5hbWUgPGZpbGU+ICAgICAgICByZXR1cm4gdGhlIGRpdmVydGVkIGZpbGUuXG4iCisiXG4iCittc2dzdHIgIiIKKyJDb21tYW5kZXPCoDpcbiIKKyIgIFstLWFkZF0gPGZpY2hpZXI+ICAgICAgICBham91dGVyIHVuIGTDqXRvdXJuZW1lbnQuXG4iCisiICAtLXJlbW92ZSA8ZmljaGllcj4gICAgICAgc3VwcHJpbWVyIHVuIGTDqXRvdXJuZW1lbnQuXG4iCisiICAtLWxpc3QgWzxtb3RpZj5dICAgICAgICAgYWZmaWNoZXIgbGVzIGTDqXRvdXJuZW1lbnRzIGRlIGZpY2hpZXIuXG4iCisiICAtLWxpc3RwYWNrYWdlIDxmaWNoaWVyPiAgYWZmaWNoZXIgbGVzIHBhcXVldHMgcXVpIG9udCB1biBkw6l0b3VybmVtZW50IHBvdXIgIgorImxlIGZpY2hpZXIuXG4iCisiICAtLXRydWVuYW1lIDxmaWNoaWVyPiAgICAgYWZmaWNoZSBsZSBub20gZHUgZmljaGllciBkw6l0b3VybsOpLlxuIgorIlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MTAwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1wYWNrYWdlIDxwYWNrYWdlPiAgICAgIG5hbWUgb2YgdGhlIHBhY2thZ2Ugd2hvc2UgY29weSBvZiA8ZmlsZT4gd2lsbCAiCisibm90XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiZSBkaXZlcnRlZC5cbiIKKyIgIC0tbG9jYWwgICAgICAgICAgICAgICAgICBhbGwgcGFja2FnZXMnIHZlcnNpb25zIGFyZSBkaXZlcnRlZC5cbiIKKyIgIC0tZGl2ZXJ0IDxkaXZlcnQtdG8+ICAgICB0aGUgbmFtZSB1c2VkIGJ5IG90aGVyIHBhY2thZ2VzJyB2ZXJzaW9ucy5cbiIKKyIgIC0tcmVuYW1lICAgICAgICAgICAgICAgICBhY3R1YWxseSBtb3ZlIHRoZSBmaWxlIGFzaWRlIChvciBiYWNrKS5cbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICBzZXQgdGhlIGRpcmVjdG9yeSB3aXRoIHRoZSBkaXZlcnNpb25zIGZpbGUuXG4iCisiICAtLXRlc3QgICAgICAgICAgICAgICAgICAgZG9uJ3QgZG8gYW55dGhpbmcsIGp1c3QgZGVtb25zdHJhdGUuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgcXVpZXQgb3BlcmF0aW9uLCBtaW5pbWFsIG91dHB1dC5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCittc2dzdHIgIiIKKyJPcHRpb25zwqA6XG4iCisiICAtLXBhY2thZ2UgPHBhcXVldD4gICAgICAgbm9tIGR1IHBhcXVldCBkb250IGxhIGNvcGllIGRlIDxmaWNoaWVyPiBuZSBzZXJhXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXMgZMOpdG91cm7DqWUuXG4iCisiICAtLWxvY2FsICAgICAgICAgICAgICAgICAgdG91dGVzIGxlcyB2ZXJzaW9ucyBkZXMgcGFxdWV0cyBzb250IGTDqXRvdXJuw6llcy5cbiIKKyIgIC0tZGl2ZXJ0IDxkw6l0b3VybmVtZW50LXZlcnM+IGxlIG5vbSB1dGlsaXPDqSBwYXIgbGVzIHZlcnNpb25zIGQnYXV0cmVzXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXF1ZXRzLlxuIgorIiAgLS1yZW5hbWUgICAgICAgICAgICAgICAgIHZyYWltZW50IG1ldHRyZSBsZSBmaWNoaWVyIGRlIGPDtHTDqSAob3UgbGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlbWV0dHJlIGVuIHBsYWNlKS5cbiIKKyIgIC0tYWRtaW5kaXIgPHLDqXBlcnRvaXJlPiAgcG9zaXRpb25uZXIgbGUgcsOpcGVydG9pcmUgZHUgZmljaGllciBkZXNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGTDqXRvdXJuZW1lbnRzLlxuIgorIiAgLS10ZXN0ICAgICAgICAgICAgICAgICAgIG5lIHJpZW4gZmFpcmUsIG1vbnRyZXIgc2ltcGxlbWVudC5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBvcMOpcmF0aW9uIGRpc2Nyw6h0ZSwgYWZmaWNoYWdlIG1pbmltYWwuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgYWZmaWNoZXIgY2UgbWVzc2FnZSBkJ2FpZGUuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgYWZmaWNoZXIgbGEgdmVyc2lvbi5cbiIKKyJcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiV2hlbiBhZGRpbmcsIGRlZmF1bHQgaXMgLS1sb2NhbCBhbmQgLS1kaXZlcnQgPG9yaWdpbmFsPi5kaXN0cmliLlxuIgorIldoZW4gcmVtb3ZpbmcsIC0tcGFja2FnZSBvciAtLWxvY2FsIGFuZCAtLWRpdmVydCBtdXN0IG1hdGNoIGlmIHNwZWNpZmllZC5cbiIKKyJQYWNrYWdlIHByZWluc3QvcG9zdHJtIHNjcmlwdHMgc2hvdWxkIGFsd2F5cyBzcGVjaWZ5IC0tcGFja2FnZSBhbmQgLS0iCisiZGl2ZXJ0LlxuIgorbXNnc3RyICIiCisiTG9ycyBkJ3VuIGFqb3V0LCBsZXMgb3B0aW9ucyBwYXIgZMOpZmF1dCBzb250IC0tbG9jYWwgZXQgLS1kaXZlcnQgPG9yaWdpbmFsPi4iCisiZGlzdHJpYi5cbiIKKyJMb3JzIGQndW5lIHN1cHByZXNzaW9uLCAtLXBhY2thZ2Ugb3UgLS1sb2NhbCBldCAtLWRpdmVydCBkb2l2ZW50ICIKKyJjb3JyZXNwb25kcmUgc2kgZWxsZXNcbiIKKyJzb250IHNww6ljaWZpw6llcy4gTGVzIHNjcmlwdHMgcHJlaW5zdC9wb3N0cm0gZGUgcGFxdWV0cyBkb2l2ZW50IHRvdWpvdXJzICIKKyJzcMOpY2lmaWVyXG4iCisiLS1wYWNrYWdlIGV0IC0tZGl2ZXJ0LlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MTY4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNoZWNraW5nICclcyciCittc2dzdHIgImVycmV1ciBsb3JzIGRlIGxhIHbDqXJpZmljYXRpb24gZGUgwqvCoCVzwqDCuyIKKworIzogc3JjL2RpdmVydGNtZC5jOjIwMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisicmVuYW1lIGludm9sdmVzIG92ZXJ3cml0aW5nIGAlcycgd2l0aFxuIgorIiAgZGlmZmVyZW50IGZpbGUgYCVzJywgbm90IGFsbG93ZWQiCittc2dzdHIgIiIKKyJsZSByZW5vbW1hZ2UgaW1wbGlxdWUgbCfDqWNyYXNlbWVudCBkZSDCq8KgJXPCoMK7IGF2ZWNcbiIKKyIgIHVuIGZpY2hpZXIgZGlmZsOpcmVudCDCq8KgJXPCoMK7LCBjZSBuJ2VzdCBwYXMgYXV0b3Jpc8OpIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjIzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzczCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgZmlsZSAnJXMnIgorbXNnc3RyICJpbXBvc3NpYmxlIGRlIGNyw6llciBsZSBmaWNoaWVyIMKrwqAlc8KgwrsiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyMjcKK21zZ2lkICJmaWxlIGNvcHkiCittc2dzdHIgImNvcGllIGRlIGZpY2hpZXIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyMzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlbmFtZSAnJXMnIHRvICclcyciCittc2dzdHIgImltcG9zc2libGUgZGUgcmVub21tZXIgwqvCoCVzwqDCu8KgZW4gwqvCoCVzwqDCuyIKKworIzogc3JjL2RpdmVydGNtZC5jOjI1MgorIywgYy1mb3JtYXQKK21zZ2lkICJyZW5hbWU6IHJlbW92ZSBkdXBsaWNhdGUgb2xkIGxpbmsgJyVzJyIKK21zZ3N0ciAicmVub21tYWdlwqA6IHN1cHByZXNzaW9uIGRlIGwnYW5jaWVuIGxpZW4gZHVwbGlxdcOpIMKrwqAlc8KgwrsiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyNjIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBjb3BpZWQgc291cmNlIGZpbGUgJyVzJyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkZSBzdXBwcmltZXIgbGUgZmljaGllciBzb3VyY2UgY29wacOpIMKrwqAlc8KgwrsiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyODQKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9jYWwgZGl2ZXJzaW9uIG9mICVzIgorbXNnc3RyICJkw6l0b3VybmVtZW50IGxvY2FsIGRlICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mjg2CisjLCBjLWZvcm1hdAorbXNnaWQgImxvY2FsIGRpdmVyc2lvbiBvZiAlcyB0byAlcyIKK21zZ3N0ciAiZMOpdG91cm5lbWVudCBsb2NhbCBkZSAlcyBlbsKgJXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJzaW9uIG9mICVzIGJ5ICVzIgorbXNnc3RyICJkw6l0b3VybmVtZW50IGRlICVzIHBhciAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjI5MworIywgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnNpb24gb2YgJXMgdG8gJXMgYnkgJXMiCittc2dzdHIgImTDqXRvdXJuZW1lbnQgZGUgJXMgZW7CoCVzIHBhciAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjMwOQorIywgYy1mb3JtYXQKK21zZ2lkICJhbnkgZGl2ZXJzaW9uIG9mICVzIgorbXNnc3RyICJ0b3V0IGTDqXRvdXJuZW1lbnQgZGUgJXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiYW55IGRpdmVyc2lvbiBvZiAlcyB0byAlcyIKK21zZ3N0ciAidG91dCBkw6l0b3VybmVtZW50IGRlICVzIGVuICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MzU3CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBjcmVhdGUgbmV3ICVzIGZpbGUiCittc2dzdHIgImltcG9zc2libGUgZGUgY3LDqWVyIHVuIG5vdXZlYXUgZmljaGllciAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjM3NSBzcmMvc3RhdGNtZC5jOjIxNSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTQwNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggZmlsZSAnJXMnIgorbXNnc3RyICJpbXBvc3NpYmxlIGRlIHN1cHByaW1lciBsZSBmaWNoaWVyIMKrwqAlc8KgwrsiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozODIKK21zZ2lkICJlcnJvciByZW1vdmluZyBvbGQgZGl2ZXJzaW9ucy1vbGQiCittc2dzdHIgImVycmV1ciBsb3JzIGRlIGxhIHN1cHByZXNzaW9uIGRlIGwnYW5jaWVuIGZpY2hpZXIgZGl2ZXJzaW9ucy1vbGQiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozODQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBuZXcgZGl2ZXJzaW9ucy1vbGQiCittc2dzdHIgImVycmV1ciBwZW5kYW50IGxhIGNyw6lhdGlvbiBkdSBub3V2ZWF1IGZpY2hpZXIgZGl2ZXJzaW9ucy1vbGQiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozODYKK21zZ2lkICJlcnJvciBpbnN0YWxsaW5nIG5ldyBkaXZlcnNpb25zIgorbXNnc3RyICJlcnJldXIgZCdpbnN0YWxsYXRpb24gZGVzIG5vdXZlYXV4IGTDqXRvdXJuZW1lbnRzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDA2IHNyYy9kaXZlcnRjbWQuYzo1MDMgc3JjL2RpdmVydGNtZC5jOjYxMAorIzogc3JjL2RpdmVydGNtZC5jOjYzMCBzcmMvc3RhdGNtZC5jOjI5MAorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGEgc2luZ2xlIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIGRlbWFuZGUgdW4gc2V1bCBwYXJhbcOodHJlIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDA5IHNyYy9kaXZlcnRjbWQuYzo0MzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZW5hbWUgXCIlc1wiIGlzIG5vdCBhYnNvbHV0ZSIKK21zZ3N0ciAibGUgbm9tIGRlIGZpY2hpZXIgwqvCoCVzwqDCuyBuJ2VzdCBwYXMgYWJzb2x1IgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDExIHNyYy9zdGF0Y21kLmM6MjQ5Cittc2dpZCAiZmlsZSBtYXkgbm90IGNvbnRhaW4gbmV3bGluZXMiCittc2dzdHIgImxlIGZpY2hpZXIgbmUgZG9pdCBwYXMgY29udGVuaXIgZGUgcmV0b3VyIGNoYXJpb3QiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MTgKK21zZ2lkICJDYW5ub3QgZGl2ZXJ0IGRpcmVjdG9yaWVzIgorbXNnc3RyICJJbXBvc3NpYmxlIGRlIGTDqXRvdXJuZXIgZGVzIHLDqXBlcnRvaXJlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjQzMworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgZGl2ZXJ0IGZpbGUgJyVzJyB0byBpdHNlbGYiCittc2dzdHIgImltcG9zc2libGUgZGUgZMOpdG91cm5lciBsZSBmaWNoaWVyICQlcyB2ZXJzIGx1aS1tw6ptZSIKKworIzogc3JjL2RpdmVydGNtZC5jOjQ1MworIywgYy1mb3JtYXQKK21zZ2lkICJMZWF2aW5nICclcydcbiIKK21zZ3N0ciAiQ29uc2VydmF0aW9uIGRlIMKrwqAlc8KgwrtcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjQ1OAorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGNsYXNoZXMgd2l0aCBgJXMnIgorbXNnc3RyICLCq8KgJXPCoMK7IGVudHJlIGVuIGNvbmZsaXQgYXZlYyDCq8KgJXPCoMK7IgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDgxCisjLCBjLWZvcm1hdAorbXNnaWQgIkFkZGluZyAnJXMnXG4iCittc2dzdHIgIkFqb3V0IGRlIMKrwqAlc8KgwrtcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjUxMAorIywgYy1mb3JtYXQKK21zZ2lkICJObyBkaXZlcnNpb24gJyVzJywgbm9uZSByZW1vdmVkLlxuIgorbXNnc3RyICJQYXMgZGUgZMOpdG91cm5lbWVudCDCq8KgJXPCoMK7LCBhdWN1biBzdXBwcmltw6kuXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm1pc21hdGNoIG9uIGRpdmVydC10b1xuIgorIiAgd2hlbiByZW1vdmluZyBgJXMnXG4iCisiICBmb3VuZCBgJXMnIgorbXNnc3RyICIiCisiZXJyZXVyIGRlIGNvcnJlc3BvbmRhbmNlIGRhbnMgZGl2ZXJ0LXRvXG4iCisiICBsb3JzIGRlIGxhIHN1cHByZXNzaW9uIGRlIMKrwqAlc8KgwrtcbiIKKyIgIMKrwqAlc8KgwrsgdHJvdXbDqSIKKworIzogc3JjL2RpdmVydGNtZC5jOjUzMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisibWlzbWF0Y2ggb24gcGFja2FnZVxuIgorIiAgd2hlbiByZW1vdmluZyBgJXMnXG4iCisiICBmb3VuZCBgJXMnIgorbXNnc3RyICIiCisiZXJyZXVyIGRlIGNvcnJlc3BvbmRhbmNlIHN1ciBwYXF1ZXRcbiIKKyIgIGxvcnMgZGUgbGEgc3VwcHJlc3Npb24gZGUgwqvCoCVzwqDCu1xuIgorIiAgwqvCoCVzwqDCuyB0cm91dsOpIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTM5CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlbW92aW5nICclcydcbiIKK21zZ3N0ciAiU3VwcHJlc3Npb24gZGUgwqvCoCVzwqDCu1xuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjU3Cittc2dpZCAicGFja2FnZSBtYXkgbm90IGNvbnRhaW4gbmV3bGluZXMiCittc2dzdHIgImxlIHBhcXVldCBuZSBwZXV0IHBhcyBjb250ZW5pciBkZSByZXRvdXIgY2hhcmlvdCIKKworIzogc3JjL2RpdmVydGNtZC5jOjY2NgorbXNnaWQgImRpdmVydC10byBtYXkgbm90IGNvbnRhaW4gbmV3bGluZXMiCittc2dzdHIgImTDqXRvdXJuZW1lbnQtdmVycyBuZSBwZXV0IHBhcyBjb250ZW5pciBkZSByZXRvdXIgY2hhcmlvdCIKKworIzogc3JjL2RpdmVydGRiLmM6NjQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiBkaXZlcnNpb25zIGZpbGUiCittc2dzdHIgImltcG9zc2libGUgZCdvdXZyaXIgZmljaGllciBkZXMgZMOpdG91cm5lbWVudHMiCisKKyM6IHNyYy9kaXZlcnRkYi5jOjcxCittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IHByZXZpb3VzIGRpdmVyc2lvbnMgZmlsZSIKK21zZ3N0ciAiw6ljaGVjIGRlIMKrwqBmc3RhdMKgwrsgc3VyIGwnYW5jaWVuIGZpY2hpZXIgZGVzIGTDqXRvdXJuZW1lbnRzIgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzo3MworbXNnaWQgImZhaWxlZCB0byBmc3RhdCBkaXZlcnNpb25zIGZpbGUiCittc2dzdHIgIsOpY2hlYyBkZSDCq8KgZnN0YXTCoMK7IHN1ciBsZSBmaWNoaWVyIGRlcyBkw6l0b3VybmVtZW50cyIKKworIzogc3JjL2RpdmVydGRiLmM6MTEzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZsaWN0aW5nIGRpdmVyc2lvbnMgaW52b2x2aW5nIGAlLjI1MHMnIG9yIGAlLjI1MHMnIgorbXNnc3RyICJkw6l0b3VybmVtZW50cyBjb250cmFkaWN0b2lyZXMgaW1wbGlxdWFudCDCq8KgJS4yNTBzwqDCuyBvdSDCq8KgJS4yNTBzwqDCuyIKKworIzogc3JjL2VucXVpcnkuYzo3MworbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBpbiBhIG1lc3MgZHVlIHRvIHNlcmlvdXMgcHJvYmxlbXMgZHVyaW5nXG4iCisiaW5zdGFsbGF0aW9uLiAgVGhleSBtdXN0IGJlIHJlaW5zdGFsbGVkIGZvciB0aGVtIChhbmQgYW55IHBhY2thZ2VzXG4iCisidGhhdCBkZXBlbmQgb24gdGhlbSkgdG8gZnVuY3Rpb24gcHJvcGVybHk6XG4iCittc2dzdHIgIiIKKyJMZXMgcGFxdWV0cyBzdWl2YW50cyBzb250IGRhbnMgdW4gw6l0YXQgaW5jb2jDqXJlbnQgw6AgY2F1c2UgZGUgc8OpcmlldXhcbiIKKyJwcm9ibMOobWVzIHN1cnZlbnVzIGxvcnMgZGUgbCdpbnN0YWxsYXRpb24uIElscyBkb2l2ZW50IMOqdHJlIHLDqWluc3RhbGzDqXNcbiIKKyIoYWluc2kgcXVlIHRvdXMgbGVzIHBhcXVldHMgcXVpIGVuIGTDqXBlbmRlbnQpIHBvdXIgcG91dm9pciBmb25jdGlvbm5lclxuIgorImNvcnJlY3RlbWVudMKgOlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjgwCittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgaGF2ZSBiZWVuIHVucGFja2VkIGJ1dCBub3QgeWV0IGNvbmZpZ3VyZWQuXG4iCisiVGhleSBtdXN0IGJlIGNvbmZpZ3VyZWQgdXNpbmcgZHBrZyAtLWNvbmZpZ3VyZSBvciB0aGUgY29uZmlndXJlXG4iCisibWVudSBvcHRpb24gaW4gZHNlbGVjdCBmb3IgdGhlbSB0byB3b3JrOlxuIgorbXNnc3RyICIiCisiTGVzIHBhcXVldHMgc3VpdmFudHMgb250IMOpdMOpIGTDqXBhcXVldMOpcyBtYWlzIG5lIHNvbnQgcGFzIGNvbmZpZ3Vyw6lzLiBJbHNcbiIKKyJkb2l2ZW50IMOqdHJlIGNvbmZpZ3Vyw6lzIGVuIHV0aWxpc2FudCBkcGtnIC0tY29uZmlndXJlIG91IGwnb3B0aW9uIGNvbmZpZ3VyZVxuIgorImR1IG1lbnUgZGUgZHNlbGVjdCBwb3VyIHBvdXZvaXIgZm9uY3Rpb25uZXLCoDpcbiIKKworIzogc3JjL2VucXVpcnkuYzo4NworbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBvbmx5IGhhbGYgY29uZmlndXJlZCwgcHJvYmFibHkgZHVlIHRvIHByb2JsZW1zXG4iCisiY29uZmlndXJpbmcgdGhlbSB0aGUgZmlyc3QgdGltZS4gIFRoZSBjb25maWd1cmF0aW9uIHNob3VsZCBiZSByZXRyaWVkIHVzaW5nXG4iCisiZHBrZyAtLWNvbmZpZ3VyZSA8cGFja2FnZT4gb3IgdGhlIGNvbmZpZ3VyZSBtZW51IG9wdGlvbiBpbiBkc2VsZWN0OlxuIgorbXNnc3RyICIiCisiTGVzIHBhcXVldHMgc3VpdmFudHMgc29udCDDoCBkZW1pIGNvbmZpZ3Vyw6lzLCBwcm9iYWJsZW1lbnQgw6AgY2F1c2UgZGVcbiIKKyJwcm9ibMOobWVzIHN1cnZlbnVzIGxvcnMgZGUgbGEgcHJlbWnDqHJlIGNvbmZpZ3VyYXRpb24uIElsIGZhdWRyYWl0IHLDqWVzc2F5ZXJcbiIKKyJkZSBsZXMgY29uZmlndXJlciBlbiB1dGlsaXNhbnQgZHBrZyAtLWNvbmZpZ3VyZSA8cGFxdWV0PiBvdSBsJ29wdGlvblxuIgorImNvbmZpZ3VyZSBkdSBtZW51IGRlIGRzZWxlY3TCoDpcbiIKKworIzogc3JjL2VucXVpcnkuYzo5NAorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBvbmx5IGhhbGYgaW5zdGFsbGVkLCBkdWUgdG8gcHJvYmxlbXMgZHVyaW5nXG4iCisiaW5zdGFsbGF0aW9uLiAgVGhlIGluc3RhbGxhdGlvbiBjYW4gcHJvYmFibHkgYmUgY29tcGxldGVkIGJ5IHJldHJ5aW5nIGl0O1xuIgorInRoZSBwYWNrYWdlcyBjYW4gYmUgcmVtb3ZlZCB1c2luZyBkc2VsZWN0IG9yIGRwa2cgLS1yZW1vdmU6XG4iCittc2dzdHIgIiIKKyJMZXMgcGFxdWV0cyBzdWl2YW50cyBzb250IMOgIGRlbWkgaW5zdGFsbMOpcyDDoCBjYXVzZSBkZSBwcm9ibMOobWVzIHN1cnZlbnVzXG4iCisibG9ycyBkZSBsJ2luc3RhbGxhdGlvbi4gTCdpbnN0YWxsYXRpb24gcGV1dCBjZXJ0YWluZW1lbnQgw6p0cmUgYWNoZXbDqWUgZW5cbiIKKyJyw6llc3NheWFudMKgOyBsZXMgcGFxdWV0cyBwZXV2ZW50IMOqdHJlIHN1cHByaW3DqXMgZW4gdXRpbGlzYW50IGRzZWxlY3Qgb3VcbiIKKyJkcGtnIC0tcmVtb3ZlwqA6XG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTAxCittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgYXJlIGF3YWl0aW5nIHByb2Nlc3Npbmcgb2YgdHJpZ2dlcnMgdGhhdCB0aGV5XG4iCisiaGF2ZSBhY3RpdmF0ZWQgaW4gb3RoZXIgcGFja2FnZXMuICBUaGlzIHByb2Nlc3NpbmcgY2FuIGJlIHJlcXVlc3RlZCB1c2luZ1xuIgorImRzZWxlY3Qgb3IgZHBrZyAtLWNvbmZpZ3VyZSAtLXBlbmRpbmcgKG9yIGRwa2cgLS10cmlnZ2Vycy1vbmx5KTpcbiIKK21zZ3N0ciAiIgorIkxlcyBwYXF1ZXRzIHN1aXZhbnRzIHNvbnQgZW4gYXR0ZW50ZSBkdSB0cmFpdGVtZW50IGRlcyBhY3Rpb25zIGRpZmbDqXLDqWVzICIKKyJxdSdpbHNcbiIKKyJvbnQgYWN0aXbDqWVzIGRhbnMgZCdhdXRyZXMgcGFxdWV0cy4gQ2UgdHJhaXRlbWVudCBwZXV0IMOqdHJlIGRlbWFuZMOpIHZpYSAiCisiwqvCoGRzZWxlY3TCoMK7XG4iCisib3UgwqvCoGRwa2cgLS1jb25maWd1cmUgLS1wZW5kaW5nwqDCuyAoIG91IGVuY29yZSDCq8KgZHBrZyAtLXRyaWdnZXJzLW9ubHnCoMK7ICnCoDogXG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTA4Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgaGF2ZSBiZWVuIHRyaWdnZXJlZCwgYnV0IHRoZSB0cmlnZ2VyIHByb2Nlc3NpbmdcbiIKKyJoYXMgbm90IHlldCBiZWVuIGRvbmUuICBUcmlnZ2VyIHByb2Nlc3NpbmcgY2FuIGJlIHJlcXVlc3RlZCB1c2luZ1xuIgorImRzZWxlY3Qgb3IgZHBrZyAtLWNvbmZpZ3VyZSAtLXBlbmRpbmcgKG9yIGRwa2cgLS10cmlnZ2Vycy1vbmx5KTpcbiIKK21zZ3N0ciAiIgorIkxlcyBwYXF1ZXRzIHN1aXZhbnRzIG9udCBhY3RpdsOpIGxlIHRyYWl0ZW1lbnQgZCdhY3Rpb25zIGRpZmbDqXLDqWVzLFxuIgorIm1haXMgY2UgdHJhaXRlbWVudCBuJ2VzdCBwYXMgdGVybWluw6kuIExlIHRyYWl0ZW1lbnQgZCdhY3Rpb25zIGRpZmbDqXLDqWVzXG4iCisicGV1dCDDqnRyZSBkZW1hbmTDqSB2aWEgwqvCoGRzZWxlY3TCoMK7IG91IMKrwqBkcGtnIC0tY29uZmlndXJlIC0tcGVuZGluZ8KgwrtcbiIKKyIoIG91IGVuY29yZSDCq8KgZHBrZyAtLXRyaWdnZXJzLW9ubHnCoMK7ICnCoDogXG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTM3IHNyYy9lbnF1aXJ5LmM6MjExIHNyYy9lbnF1aXJ5LmM6MjkyIHNyYy9lbnF1aXJ5LmM6MzczCisjOiBzcmMvZW5xdWlyeS5jOjQ2MCBzcmMvc2VsZWN0LmM6OTggc3JjL3NlbGVjdC5jOjE2NCBzcmMvdHJpZ2NtZC5jOjE5OQorIzogc3JjL3VwZGF0ZS5jOjQ4IHNyYy91cGRhdGUuYzoxMTMgZHBrZy1zcGxpdC9xdWV1ZS5jOjIzMgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIHRha2VzIG5vIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS0lcyBuZSBwcmVuZCBwYXMgZGUgcGFyYW3DqHRyZSIKKworIzogc3JjL2VucXVpcnkuYzoxNTIKK21zZ2lkICIiCisiQW5vdGhlciBwcm9jZXNzIGhhcyBsb2NrZWQgdGhlIGRhdGFiYXNlIGZvciB3cml0aW5nLCBhbmQgbWlnaHQgY3VycmVudGx5IGJlXG4iCisibW9kaWZ5aW5nIGl0LCBzb21lIG9mIHRoZSBmb2xsb3dpbmcgcHJvYmxlbXMgbWlnaHQganVzdCBiZSBkdWUgdG8gdGhhdC5cbiIKK21zZ3N0ciAiIgorIlVuIGF1dHJlIHByb2Nlc3N1cyBhIHZlcnJvdWlsbMOpIGxhIGJhc2UgZGUgZG9ubsOpZXMgZW4gw6ljcml0dXJlIGV0IHBvdXJyYWl0XG4iCisiw6p0cmUgZW4gdHJhaW4gZGUgbGEgbW9kaWZpZXIsIGNlIHF1aSBwZXV0IMOqdHJlIGxhIHNvdXJjZSBkZSBjZXJ0YWlucyBkZXNcbiIKKyJwcm9ibMOobWVzIHN1aXZhbnRzLlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjE5MQorbXNnY3R4dCAic2VjdGlvbiIKK21zZ2lkICI8dW5rbm93bj4iCittc2dzdHIgIjxpbmNvbm51PiIKKworIzogc3JjL2VucXVpcnkuYzoyNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiICVkIGluICVzOiAiCittc2dzdHIgIiAlZCBkYW5zICVzwqA6ICIKKworIzogc3JjL2VucXVpcnkuYzoyNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiICVkIHBhY2thZ2UsIGZyb20gdGhlIGZvbGxvd2luZyBzZWN0aW9uOiIKK21zZ2lkX3BsdXJhbCAiICVkIHBhY2thZ2VzLCBmcm9tIHRoZSBmb2xsb3dpbmcgc2VjdGlvbnM6IgorbXNnc3RyWzBdICIgJWQgcGFxdWV0LCBhcHBhcnRlbmFudCBhdXggc2VjdGlvbnMgc3VpdmFudGVzwqA6IgorbXNnc3RyWzFdICIgJWQgcGFxdWV0cywgYXBwYXJ0ZW5hbnQgYXV4IHNlY3Rpb25zIHN1aXZhbnRlc8KgOiIKKworIzogc3JjL2VucXVpcnkuYzozMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlZlcnNpb24gb2YgZHBrZyB3aXRoIHdvcmtpbmcgJXMgc3VwcG9ydCBub3QgeWV0IGNvbmZpZ3VyZWQuXG4iCisiIFBsZWFzZSB1c2UgJ2Rwa2cgLS1jb25maWd1cmUgZHBrZycsIGFuZCB0aGVuIHRyeSBhZ2Fpbi5cbiIKK21zZ3N0ciAiIgorIkxhIHZlcnNpb24gZGUgZHBrZyBxdWkgZ8OocmUgJXMgbidlc3QgcGFzIGVuY29yZSBjb25maWd1csOpZS5cbiIKKyIgVmV1aWxsZXogdXRpbGlzZXIgwqvCoGRwa2cgLS1jb25maWd1cmUgZHBrZ8KgwrsgZXQgZXNzYXllciDDoCBub3V2ZWF1LlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjMxMAorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnIG5vdCByZWNvcmRlZCBhcyBpbnN0YWxsZWQsIGNhbm5vdCBjaGVjayBmb3IgJXMgc3VwcG9ydCFcbiIKK21zZ3N0ciAiIgorImRwa2cgbm9uIGVucmVnaXN0csOpIGNvbW1lIGluc3RhbGzDqSwgaW1wb3NzaWJsZSBkZSB2w6lyaWZpZXIgbGEgZ2VzdGlvbiBkZSAiCisiJXMuXG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzIxCittc2dpZCAiUHJlLURlcGVuZHMgZmllbGQiCittc2dzdHIgImNoYW1wIFByZS1EZXBlbmRzIgorCisjOiBzcmMvZW5xdWlyeS5jOjMyOQorbXNnaWQgImVwb2NoIgorbXNnc3RyICLDqXBvcXVlICjCq8KgZXBvY2jCoMK7KSIKKworIzogc3JjL2VucXVpcnkuYzozMzcKK21zZ2lkICJsb25nIGZpbGVuYW1lcyIKK21zZ3N0ciAibm9tcyBkZSBmaWNoaWVycyBsb25ncyIKKworIzogc3JjL2VucXVpcnkuYzozNDYKK21zZ2lkICJtdWx0aXBsZSBDb25mbGljdHMgYW5kIFJlcGxhY2VzIgorbXNnc3RyICLCq8KgQ29uZmxpY3RzwqDCuyBldCDCq8KgUmVwbGFjZXPCoMK7IG11bHRpcGxlcyIKKworIzogc3JjL2VucXVpcnkuYzo0MzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IGNhbm5vdCBzZWUgaG93IHRvIHNhdGlzZnkgcHJlLWRlcGVuZGVuY3k6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKyJkcGtnwqA6IG5lIHNhaXQgcGFzIGNvbW1lbnQgc2F0aXNmYWlyZSBsZXMgcHLDqS1kw6lwZW5kYW5jZXPCoDpcbiIKKyIgJXNcbiIKKworIzogc3JjL2VucXVpcnkuYzo0MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHNhdGlzZnkgcHJlLWRlcGVuZGVuY2llcyBmb3IgJS4yNTBzICh3YW50ZWQgZHVlIHRvICUuMjUwcykiCittc2dzdHIgIiIKKyJuZSBwZXV0IHNhdGlzZmFpcmUgbGVzIHByw6ktZMOpcGVuZGFuY2VzIHBvdXIgJS4yNTBzIChyw6ljbGFtw6kgcGFyICUuMjUwcykiCisKKyM6IHNyYy9lbnF1aXJ5LmM6NDcyCisjLCBjLWZvcm1hdAorbXNnaWQgIm9ic29sZXRlIG9wdGlvbiAnLS0lcycsIHBsZWFzZSB1c2UgJy0tJXMnIGluc3RlYWQuIgorbXNnc3RyICJvcHRpb24gb2Jzb2zDqHRlIMKrwqAtLSVzwqDCuywgdmV1aWxsZXogdXRpbGlzZXIgwqvCoC0tJXPCoMK7IMOgIGxhIHBsYWNlLiIKKworIzogc3JjL2VucXVpcnkuYzo1MTkKK21zZ2lkICIiCisiLS1jb21wYXJlLXZlcnNpb25zIHRha2VzIHRocmVlIGFyZ3VtZW50czogPHZlcnNpb24+IDxyZWxhdGlvbj4gPHZlcnNpb24+IgorbXNnc3RyICIiCisiLS1jb21wYXJlLXZlcnNpb25zIHByZW5kIHRyb2lzIHBhcmFtw6h0cmVzwqA6IDx2ZXJzaW9uPiA8cmVsYXRpb24+IDx2ZXJzaW9uPiIKKworIzogc3JjL2VucXVpcnkuYzo1MjQKK21zZ2lkICItLWNvbXBhcmUtdmVyc2lvbnMgYmFkIHJlbGF0aW9uIgorbXNnc3RyICItLWNvbXBhcmUtdmVyc2lvbnPCoDogbWF1dmFpc2UgcmVsYXRpb24iCisKKyM6IHNyYy9lbnF1aXJ5LmM6NTI5IHNyYy9lbnF1aXJ5LmM6NTMxIHNyYy9lbnF1aXJ5LmM6NTQwIHNyYy9lbnF1aXJ5LmM6NTQyCisjLCBjLWZvcm1hdAorbXNnaWQgInZlcnNpb24gJyVzJyBoYXMgYmFkIHN5bnRheDogJXMiCittc2dzdHIgIm1hdXZhaXNlIHN5bnRheGUgZGUgbGEgdmVyc2lvbiDCq8KgJXPCoMK7wqA6ICVzIgorCisjOiBzcmMvZXJyb3JzLmM6NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBlcnJvciBwcm9jZXNzaW5nICVzICgtLSVzKTpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorIiVzwqA6IGVycmV1ciBkZSB0cmFpdGVtZW50IGRlICVzICgtLSVzKcKgOlxuIgorIiAlc1xuIgorCisjOiBzcmMvZXJyb3JzLmM6NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBmYWlsZWQgdG8gYWxsb2NhdGUgbWVtb3J5IGZvciBuZXcgZW50cnkgaW4gbGlzdCBvZiBmYWlsZWQgcGFja2FnZXM6ICVzIgorbXNnc3RyICIiCisiJXPCoDogaW1wb3NzaWJsZSBkJ2FsbG91ZXIgZGUgbGEgbcOpbW9pcmUgcG91ciB1bmUgbm91dmVsbGUgZW50csOpZSBkYW5zIGxhICIKKyJsaXN0ZSBkZXMgcGFxdWV0cyBlbiDDqWNoZWPCoDrCoCVzIgorCisjOiBzcmMvZXJyb3JzLmM6NzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IHRvbyBtYW55IGVycm9ycywgc3RvcHBpbmdcbiIKK21zZ3N0ciAiJXPCoDogdHJvcCBkJ2VycmV1cnMsIGFycsOqdFxuIgorCisjOiBzcmMvZXJyb3JzLmM6ODcKK21zZ2lkICJFcnJvcnMgd2VyZSBlbmNvdW50ZXJlZCB3aGlsZSBwcm9jZXNzaW5nOlxuIgorbXNnc3RyICJEZXMgZXJyZXVycyBvbnQgw6l0w6kgcmVuY29udHLDqWVzIHBlbmRhbnQgbCdleMOpY3V0aW9uwqA6XG4iCisKKyM6IHNyYy9lcnJvcnMuYzo5NAorbXNnaWQgIlByb2Nlc3Npbmcgd2FzIGhhbHRlZCBiZWNhdXNlIHRoZXJlIHdlcmUgdG9vIG1hbnkgZXJyb3JzLlxuIgorbXNnc3RyICJMJ2V4w6ljdXRpb24gYSDDqXTDqSBhcnLDqnTDqWUgY2FyIGlsIHkgYXZhaXQgdHJvcCBkJ2VycmV1cnMuXG4iCisKKyM6IHNyYy9lcnJvcnMuYzoxMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSAlcyB3YXMgb24gaG9sZCwgcHJvY2Vzc2luZyBpdCBhbnl3YXkgYXMgeW91IHJlcXVlc3RlZFxuIgorbXNnc3RyICIiCisiTGUgcGFxdWV0ICVzIMOpdGFpdCDDoCBnYXJkZXIgKG9uIGhvbGQpLCB0cmFpdGVtZW50IGVuIGNvdXJzIG1hbGdyw6kgdG91dCBjb21tZSAiCisiZGVtYW5kw6lcbiIKKworIzogc3JjL2Vycm9ycy5jOjEwOQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiUGFja2FnZSAlcyBpcyBvbiBob2xkLCBub3QgdG91Y2hpbmcgaXQuICBVc2UgLS1mb3JjZS1ob2xkIHRvIG92ZXJyaWRlLlxuIgorbXNnc3RyICIiCisiTGUgcGFxdWV0ICVzIGVzdCDDoCBnYXJkZXIgKG9uIGhvbGQpLCBldCBsYWlzc8OpIHRlbCBxdWVsLiBVdGlsaXNleiAtLWZvcmNlLSIKKyJob2xkIHBvdXIgcGFzc2VyIG91dHJlLlxuIgorCisjOiBzcmMvZXJyb3JzLmM6MTE5Cittc2dpZCAib3ZlcnJpZGluZyBwcm9ibGVtIGJlY2F1c2UgLS1mb3JjZSBlbmFibGVkOiIKK21zZ3N0ciAicHJvYmzDqG1lIGNvbnRvdXJuw6kgcGFyIHV0aWxpc2F0aW9uIGRlIC0tZm9yY2XCoDoiCisKKyM6IHNyYy9maWxlc2RiLmM6MzA3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorImltcG9zc2libGUgZCdvdXZyaXIgbGUgZmljaGllciBjb250ZW5hbnQgbGEgbGlzdGUgZGVzIGZpY2hpZXJzIGR1IHBhcXVldCAiCisiwqvCoCUuMjUwc8KgwrsiCisKKyM6IHNyYy9maWxlc2RiLmM6MzExCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcycgbWlzc2luZywgYXNzdW1pbmcgcGFja2FnZSBoYXMgbm8gZmlsZXMgIgorImN1cnJlbnRseSBpbnN0YWxsZWQuIgorbXNnc3RyICIiCisibGUgZmljaGllciBjb250ZW5hbnQgbGEgbGlzdGUgZGVzIGZpY2hpZXJzIGR1IHBhcXVldCDCq8KgJS4yNTBzwqDCuyDDqXRhbnQgIgorIm1hbnF1YW50LCBpbCBlc3QgY29uc2lkw6lyw6kgcXUnYXVjdW4gZmljaGllciBkdSBwYXF1ZXQgbidlc3QgYWN0dWVsbGVtZW50ICIKKyJpbnN0YWxsw6kuIgorCisjOiBzcmMvZmlsZXNkYi5jOjMyMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJyUuMjUwcyciCittc2dzdHIgIiIKKyJpbXBvc3NpYmxlIGQnb3V2cmlyIGxlIGZpY2hpZXIgY29udGVuYW50IGxhIGxpc3RlIGRlcyBmaWNoaWVycyBkdSBwYXF1ZXQgIgorIsKrwqAlLjI1MHPCoMK7IgorCisjOiBzcmMvZmlsZXNkYi5jOjMzMAorIywgYy1mb3JtYXQKK21zZ2lkICJyZWFkaW5nIGZpbGVzIGxpc3QgZm9yIHBhY2thZ2UgJyUuMjUwcyciCittc2dzdHIgImxlY3R1cmUgZGUgbGEgbGlzdGUgZGVzIGZpY2hpZXJzIGR1IHBhcXVldCDCq8KgJS4yNTBzwqDCuyIKKworIzogc3JjL2ZpbGVzZGIuYzozMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICclLjI1MHMnIGlzIG1pc3NpbmcgZmluYWwgbmV3bGluZSIKK21zZ3N0ciAiIgorImxhIGxpc3RlIGRlcyBmaWNoaWVycyBwb3VyIGxlIHBhcXVldCDCq8KgJS4yNTBzwqDCuyBuJ2EgcGFzIGRlIHJldG91ciDDoCBsYSBsaWduZSAiCisiZW4gZmluIGRlIGZpY2hpZXIiCisKKyM6IHNyYy9maWxlc2RiLmM6MzQ0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSBgJS4yNTBzJyBjb250YWlucyBlbXB0eSBmaWxlbmFtZSIKK21zZ3N0ciAiIgorImxhIGxpc3RlIGRlcyBmaWNoaWVycyBwb3VyIGxlIHBhcXVldCDCq8KgJS4yNTBzwqDCuyBjb250aWVudCB1biBub20gZGUgZmljaGllciAiCisidmlkZSIKKworIzogc3JjL2ZpbGVzZGIuYzozNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcyciCittc2dzdHIgIiIKKyJlcnJldXIgZGUgZmVybWV0dXJlIGR1IGZpY2hpZXIgY29udGVuYW50IGxhIGxpc3RlIGRlcyBmaWNoaWVycyBkdSBwYXF1ZXQgIgorIsKrwqAlLjI1MHPCoMK7IgorCisjOiBzcmMvZmlsZXNkYi5jOjQ2MgorbXNnaWQgIihSZWFkaW5nIGRhdGFiYXNlIC4uLiAiCittc2dzdHIgIihMZWN0dXJlIGRlIGxhIGJhc2UgZGUgZG9ubsOpZXMuLi4gIgorCisjOiBzcmMvZmlsZXNkYi5jOjQ4MworIywgYy1mb3JtYXQKK21zZ2lkICIlZCBmaWxlIG9yIGRpcmVjdG9yeSBjdXJyZW50bHkgaW5zdGFsbGVkLilcbiIKK21zZ2lkX3BsdXJhbCAiJWQgZmlsZXMgYW5kIGRpcmVjdG9yaWVzIGN1cnJlbnRseSBpbnN0YWxsZWQuKVxuIgorbXNnc3RyWzBdICIlZCBmaWNoaWVyIGV0IHLDqXBlcnRvaXJlIGTDqWrDoCBpbnN0YWxsw6kuKVxuIgorbXNnc3RyWzFdICIlZCBmaWNoaWVycyBldCByw6lwZXJ0b2lyZXMgZMOpasOgIGluc3RhbGzDqXMuKVxuIgorCisjOiBzcmMvZmlsZXNkYi5jOjUxNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICIiCisiaW1wb3NzaWJsZSBkZSBjcsOpZXIgbGUgZmljaGllciBjb250ZW5hbnQgbGEgbGlzdGUgbWlzZSDDoCBqb3VyIGRlcyBmaWNoaWVycyAiCisiZHUgcGFxdWV0ICVzIgorCisjOiBzcmMvZmlsZXNkYi5jOjUyNgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgdG8gdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIiIKKyLDqWNoZWMgZGUgbCfDqWNyaXR1cmUgZHUgZmljaGllciBjb250ZW5hbnQgbGEgbGlzdGUgbWlzZSDDoCBqb3VyIGRlcyBmaWNoaWVycyAiCisiZHUgcGFxdWV0ICVzIgorCisjOiBzcmMvZmlsZXNkYi5jOjUyOAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZmx1c2ggdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIiIKKyJJbXBvc3NpYmxlIGQnw6lsaW1pbmVyIGxlIGZpY2hpZXIgY29udGVuYW50IGxhIGxpc3RlIG1pc2Ugw6Agam91ciBkZXMgZmljaGllcnMgIgorImR1IHBhcXVldCAlcyIKKworIzogc3JjL2ZpbGVzZGIuYzo1MzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHN5bmMgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIiIKKyJpbXBvc3NpYmxlIGRlIHN5bmNocm9uaXNlciBsZSBmaWNoaWVyIGNvbnRlbmFudCBsYSBsaXN0ZSBtaXNlIMOgIGpvdXIgZGVzICIKKyJmaWNoaWVycyBkdSBwYXF1ZXQgJXMiCisKKyM6IHNyYy9maWxlc2RiLmM6NTMzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjbG9zZSB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAiIgorImltcG9zc2libGUgZGUgZmVybWVyIGxlIGZpY2hpZXIgY29udGVuYW50IGxhIGxpc3RlIG1pc2Ugw6Agam91ciBkZXMgZmljaGllcnMgIgorImR1IHBhcXVldCAlcyIKKworIzogc3JjL2ZpbGVzZGIuYzo1MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGluc3RhbGwgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIiIKKyJpbXBvc3NpYmxlIGQnaW5zdGFsbGVyIGZpY2hpZXIgY29udGVuYW50IGxhIGxpc3RlIG1pc2Ugw6Agam91ciBkZXMgZmljaGllcnMgIgorImR1IHBhcXVldCAlcyIKKworIzogc3JjL2hlbHAuYzo0OAorbXNnaWQgIm5vdCBpbnN0YWxsZWQiCittc2dzdHIgIm5vbiBpbnN0YWxsw6kiCisKKyM6IHNyYy9oZWxwLmM6NDkKK21zZ2lkICJub3QgaW5zdGFsbGVkIGJ1dCBjb25maWdzIHJlbWFpbiIKK21zZ3N0ciAibm9uIGluc3RhbGzDqSBtYWlzIGxhIGNvbmZpZ3VyYXRpb24gcmVzdGUiCisKKyM6IHNyYy9oZWxwLmM6NTAKK21zZ2lkICJicm9rZW4gZHVlIHRvIGZhaWxlZCByZW1vdmFsIG9yIGluc3RhbGxhdGlvbiIKK21zZ3N0ciAiY2Fzc8OpIMOgIGNhdXNlIGRlIGwnw6ljaGVjIGQndW5lIHN1cHByZXNzaW9uIG91IGQndW5lIGluc3RhbGxhdGlvbiIKKworIzogc3JjL2hlbHAuYzo1MQorbXNnaWQgInVucGFja2VkIGJ1dCBub3QgY29uZmlndXJlZCIKK21zZ3N0ciAiZMOpcGFxdWV0w6kgbWFpcyBub24gY29uZmlndXLDqSIKKworIzogc3JjL2hlbHAuYzo1MgorbXNnaWQgImJyb2tlbiBkdWUgdG8gcG9zdGluc3QgZmFpbHVyZSIKK21zZ3N0ciAiY2Fzc8OpIMOgIGNhdXNlIGRlIGwnw6ljaGVjIGRlIMKrwqBwb3N0aW5zdMKgwrsiCisKKyM6IHNyYy9oZWxwLmM6NTMKK21zZ2lkICJhd2FpdGluZyB0cmlnZ2VyIHByb2Nlc3NpbmcgYnkgYW5vdGhlciBwYWNrYWdlIgorbXNnc3RyICIiCisiZW4gYXR0ZW50ZSBkdSB0cmFpdGVtZW50IGRlIGwnYWN0aW9uIGRpZmbDqXLDqWUgZGVtYW5kw6llIHBhciB1biBhdXRyZSBwYXF1ZXQiCisKKyM6IHNyYy9oZWxwLmM6NTQKK21zZ2lkICJ0cmlnZ2VyZWQiCittc2dzdHIgImRpZmbDqXLDqSIKKworIzogc3JjL2hlbHAuYzo1NQorbXNnaWQgImluc3RhbGxlZCIKK21zZ3N0ciAiaW5zdGFsbMOpIgorCisjOiBzcmMvaGVscC5jOjEwNworIywgZnV6enkKKyN8IG1zZ2lkICJlcnJvcjogUEFUSCBpcyBub3Qgc2V0LiIKK21zZ2lkICJQQVRIIGlzIG5vdCBzZXQuIgorbXNnc3RyICJlcnJldXLCoDogbGEgdmFyaWFibGUgUEFUSCBuJ2VzdCBwYXMgZMOpZmluaWUuIgorCisjOiBzcmMvaGVscC5jOjEyOQorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIG5vdCBmb3VuZCBpbiBQQVRIIG9yIG5vdCBleGVjdXRhYmxlLiIKK21zZ3N0ciAiwqvCoCVzwqDCuyBpbnRyb3V2YWJsZSBkYW5zIGxhIHZhcmlhYmxlIFBBVEggb3Ugbm9uIGV4w6ljdXRhYmxlIgorCisjOiBzcmMvaGVscC5jOjEzOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJWQgZXhwZWN0ZWQgcHJvZ3JhbSBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS5cbiIKKyIlcyIKK21zZ2lkX3BsdXJhbCAiIgorIiVkIGV4cGVjdGVkIHByb2dyYW1zIG5vdCBmb3VuZCBpbiBQQVRIIG9yIG5vdCBleGVjdXRhYmxlLlxuIgorIiVzIgorbXNnc3RyWzBdICIiCisiJWQgcHJvZ3JhbW1lIGF0dGVuZHUgbm9uIHRyb3V2w6kgZGFucyBsYSB2YXJpYWJsZSBQQVRIIG91IG5vbiBleMOpY3V0YWJsZS5cbiIKKyIlcyIKK21zZ3N0clsxXSAiIgorIiVkIHByb2dyYW1tZXMgYXR0ZW5kdXMgbm9uIHRyb3V2w6lzIGRhbnMgbGEgdmFyaWFibGUgUEFUSCBvdSBub24gIgorImV4w6ljdXRhYmxlcy5cbiIKKyIlcyIKKworIzogc3JjL2hlbHAuYzoxNDEKK21zZ2lkICIiCisiTm90ZTogcm9vdCdzIFBBVEggc2hvdWxkIHVzdWFsbHkgY29udGFpbiAvdXNyL2xvY2FsL3NiaW4sIC91c3Ivc2JpbiBhbmQgLyIKKyJzYmluLiIKK21zZ3N0ciAiIgorIk5vdGXCoDogbGEgdmFyaWFibGUgUEFUSCBkdSBzdXBlcnV0aWxpc2F0ZXVyIGRvaXQgbm9ybWFsZW1lbnQgY29udGVuaXIgL3Vzci8iCisibG9jYWwvc2JpbiwgL3Vzci9zYmluIGV0IC9zYmluLiIKKworIzogc3JjL2hlbHAuYzoxODgKK21zZ2lkICJhZG1pbmRpciBtdXN0IGJlIGluc2lkZSBpbnN0ZGlyIGZvciBkcGtnIHRvIHdvcmsgcHJvcGVybHkiCittc2dzdHIgIiIKKyJsZSByw6lwZXJ0b2lyZSBkJ2FkbWluaXN0cmF0aW9uIChhZG1pbmRpcikgZG9pdCDDqnRyZSBzb3VzIGxlIHLDqXBlcnRvaXJlICIKKyJkJ2luc3RhbGxhdGlvbiAoaW5zdGRpcikgcG91ciBxdWUgZHBrZyBmb25jdGlvbm5lIGNvcnJlY3RlbWVudCIKKworIzogc3JjL2hlbHAuYzoxOTAgc3JjL21haW4uYzo3NDcKK21zZ2lkICJ1bmFibGUgdG8gc2V0ZW52IGZvciBzdWJwcm9jZXNzZXMiCittc2dzdHIgImltcG9zc2libGUgZCd1dGlsaXNlciDCq8Kgc2V0ZW52wqDCuyBwb3VyIGxlcyBzb3VzLXByb2Nlc3N1cyIKKworIzogc3JjL2hlbHAuYzoxOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNocm9vdCB0byBgJS4yNTBzJyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkZSBjaGFuZ2VyIGRlIHLDqXBlcnRvaXJlIHJhY2luZSBwb3VyIMKrwqAlLjI1MHPCoMK7IgorCisjOiBzcmMvaGVscC5jOjE5NCBkcGtnLWRlYi9idWlsZC5jOjQ1NSBkcGtnLWRlYi9idWlsZC5jOjQ1NworIzogZHBrZy1kZWIvYnVpbGQuYzo1MzYgZHBrZy1kZWIvYnVpbGQuYzo1NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIGAlLjI1NXMnIgorbXNnc3RyICJpbXBvc3NpYmxlIGRlIGNoYW5nZXIgZGUgcsOpcGVydG9pcmUgdmVycyDCq8KgJS4yNTVzwqDCuyIKKworIzogc3JjL2hlbHAuYzoyNTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNldCBleGVjdXRlIHBlcm1pc3Npb25zIG9uIGAlLjI1MHMnIgorbXNnc3RyICJpbXBvc3NpYmxlIGRlIHBhcmFtw6l0cmVyIGxlcyBwZXJtaXNzaW9ucyBlbiBleMOpY3V0aW9uIHN1ciDCq8KgJS4yNTBzwqDCuyIKKworIzogc3JjL2hlbHAuYzoyNzYKK21zZ2lkICJ1bmFibGUgdG8gc2V0ZW52IGZvciBtYWludGFpbmVyIHNjcmlwdCIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkJ3V0aWxpc2VyIMKrwqBzZXRlbnbCoMK7IHBvdXIgbGUgc2NyaXB0IGR1IHJlc3BvbnNhYmxlIgorCisjOiBzcmMvaGVscC5jOjMwMAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnN0YWxsZWQgJXMgc2NyaXB0IgorbXNnc3RyICJzY3JpcHQgJXMgaW5zdGFsbMOpIgorCisjOiBzcmMvaGVscC5jOjMxMyBzcmMvaGVscC5jOjM4MiBzcmMvaGVscC5jOjQ0MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCAlcyBgJS4yNTBzJyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkJ2FuYWx5c2VyICVzIMKrwqAlLjI1MHPCoMK7IgorCisjOiBzcmMvaGVscC5jOjM2OCBzcmMvaGVscC5jOjQyOAorIywgYy1mb3JtYXQKK21zZ2lkICJuZXcgJXMgc2NyaXB0IgorbXNnc3RyICJub3V2ZWF1IHNjcmlwdCAlcyIKKworIzogc3JjL2hlbHAuYzo0MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAib2xkICVzIHNjcmlwdCIKK21zZ3N0ciAiYW5jaWVuIHNjcmlwdCAlcyIKKworIzogc3JjL2hlbHAuYzo0MTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgJXMgJyUuMjUwcyc6ICVzIgorbXNnc3RyICJpbXBvc3NpYmxlIGQnYW5hbHlzZXIgJXMgwqvCoCUuMjUwc8KgwrvCoDrCoCVzIgorCisjOiBzcmMvaGVscC5jOjQyNQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnIC0gdHJ5aW5nIHNjcmlwdCBmcm9tIHRoZSBuZXcgcGFja2FnZSBpbnN0ZWFkIC4uLlxuIgorbXNnc3RyICIiCisiZHBrZyAtIHRlbnRhdGl2ZSBkJ2V4w6ljdXRpb24gZHUgc2NyaXB0IGR1IG5vdXZlYXUgcGFxdWV0IMOgIGxhIHBsYWNlIC4uLlxuIgorCisjOiBzcmMvaGVscC5jOjQzOQorbXNnaWQgInRoZXJlIGlzIG5vIHNjcmlwdCBpbiB0aGUgbmV3IHZlcnNpb24gb2YgdGhlIHBhY2thZ2UgLSBnaXZpbmcgdXAiCittc2dzdHIgImlsIG4neSBhIHBhcyBkZSBzY3JpcHQgZGFucyBjZXR0ZSBub3V2ZWxsZSB2ZXJzaW9uIGR1IHBhcXVldCAtIGFiYW5kb24iCisKKyM6IHNyYy9oZWxwLmM6NDQ1CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IC4uLiBpdCBsb29rcyBsaWtlIHRoYXQgd2VudCBPSy5cbiIKK21zZ3N0ciAiZHBrZ8KgOiAuLi4gb24gZGlyYWl0IHF1ZSB0b3V0IGEgZm9uY3Rpb25uw6kgY29ycmVjdGVtZW50LlxuIgorCisjOiBzcmMvaGVscC5jOjYxNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2VjdXJlbHkgcmVtb3ZlICclLjI1NXMnIgorbXNnc3RyICJpbXBvc3NpYmxlIGRlIHN1cHByaW1lciDCq8KgJS4yNTVzwqDCuyBkZSBmYcOnb24gc8O7cmUiCisKKyM6IHNyYy9oZWxwLmM6NjIxIGRwa2ctZGViL2luZm8uYzo2NSBkcGtnLWRlYi9pbmZvLmM6NjcKK21zZ2lkICJybSBjb21tYW5kIGZvciBjbGVhbnVwIgorbXNnc3RyICJjb21tYW5kZSBybSBwb3VyIGxlIG5ldHRveWFnZSIKKworIzogc3JjL2luZm9kYi5jOjUyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGVjayBleGlzdGVuY2Ugb2YgYCUuMjUwcyciCittc2dzdHIgImltcG9zc2libGUgZGUgdsOpcmlmaWVyIGwnZXhpc3RlbmNlIGRlIMKrwqAlLjI1MHPCoMK7IgorCisjOiBzcmMvaW5mb2RiLmM6NzAKK21zZ2lkICJjYW5ub3QgcmVhZCBpbmZvIGRpcmVjdG9yeSIKK21zZ3N0ciAibmUgcGV1dCBwYXMgbGlyZSBsZSByw6lwZXJ0b2lyZSBpbmZvIgorCisjOiBzcmMvbWFpbi5jOjYwCisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiBgJXMnIHBhY2thZ2UgbWFuYWdlbWVudCBwcm9ncmFtIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIlByb2dyYW1tZSDCq8KgJXPCoMK7IGRlIGdlc3Rpb24gZGUgcGFxdWV0cyBEZWJpYW4gdmVyc2lvbiAlcy5cbiIKKworIzogc3JjL21haW4uYzo4NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtaXwtLWluc3RhbGwgICAgICAgPC5kZWIgZmlsZSBuYW1lPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyZWN0b3J5PiAuLi5cbiIKKyIgIC0tdW5wYWNrICAgICAgICAgICA8LmRlYiBmaWxlIG5hbWU+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXJlY3Rvcnk+IC4uLlxuIgorIiAgLUF8LS1yZWNvcmQtYXZhaWwgIDwuZGViIGZpbGUgbmFtZT4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRpcmVjdG9yeT4gLi4uXG4iCisiICAtLWNvbmZpZ3VyZSAgICAgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLS10cmlnZ2Vycy1vbmx5ICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC1yfC0tcmVtb3ZlICAgICAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtUHwtLXB1cmdlICAgICAgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLS1nZXQtc2VsZWN0aW9ucyBbPHBhdHRlcm4+IC4uLl0gR2V0IGxpc3Qgb2Ygc2VsZWN0aW9ucyB0byBzdGRvdXQuXG4iCisiICAtLXNldC1zZWxlY3Rpb25zICAgICAgICAgICAgICAgICBTZXQgcGFja2FnZSBzZWxlY3Rpb25zIGZyb20gc3RkaW4uXG4iCisiICAtLWNsZWFyLXNlbGVjdGlvbnMgICAgICAgICAgICAgICBEZXNlbGVjdCBldmVyeSBub24tZXNzZW50aWFsIHBhY2thZ2UuXG4iCisiICAtLXVwZGF0ZS1hdmFpbCA8UGFja2FnZXMtZmlsZT4gICBSZXBsYWNlIGF2YWlsYWJsZSBwYWNrYWdlcyBpbmZvLlxuIgorIiAgLS1tZXJnZS1hdmFpbCA8UGFja2FnZXMtZmlsZT4gICAgTWVyZ2Ugd2l0aCBpbmZvIGZyb20gZmlsZS5cbiIKKyIgIC0tY2xlYXItYXZhaWwgICAgICAgICAgICAgICAgICAgIEVyYXNlIGV4aXN0aW5nIGF2YWlsYWJsZSBpbmZvLlxuIgorIiAgLS1mb3JnZXQtb2xkLXVuYXZhaWwgICAgICAgICAgICAgRm9yZ2V0IHVuaW5zdGFsbGVkIHVuYXZhaWxhYmxlIHBrZ3MuXG4iCisiICAtc3wtLXN0YXR1cyA8cGFja2FnZT4gLi4uICAgICAgICBEaXNwbGF5IHBhY2thZ2Ugc3RhdHVzIGRldGFpbHMuXG4iCisiICAtcHwtLXByaW50LWF2YWlsIDxwYWNrYWdlPiAuLi4gICBEaXNwbGF5IGF2YWlsYWJsZSB2ZXJzaW9uIGRldGFpbHMuXG4iCisiICAtTHwtLWxpc3RmaWxlcyA8cGFja2FnZT4gLi4uICAgICBMaXN0IGZpbGVzIGBvd25lZCcgYnkgcGFja2FnZShzKS5cbiIKKyIgIC1sfC0tbGlzdCBbPHBhdHRlcm4+IC4uLl0gICAgICAgIExpc3QgcGFja2FnZXMgY29uY2lzZWx5LlxuIgorIiAgLVN8LS1zZWFyY2ggPHBhdHRlcm4+IC4uLiAgICAgICAgRmluZCBwYWNrYWdlKHMpIG93bmluZyBmaWxlKHMpLlxuIgorIiAgLUN8LS1hdWRpdCAgICAgICAgICAgICAgICAgICAgICAgQ2hlY2sgZm9yIGJyb2tlbiBwYWNrYWdlKHMpLlxuIgorIiAgLS1wcmludC1hcmNoaXRlY3R1cmUgICAgICAgICAgICAgUHJpbnQgZHBrZyBhcmNoaXRlY3R1cmUuXG4iCisiICAtLWNvbXBhcmUtdmVyc2lvbnMgPGE+IDxvcD4gPGI+ICBDb21wYXJlIHZlcnNpb24gbnVtYmVycyAtIHNlZSBiZWxvdy5cbiIKKyIgIC0tZm9yY2UtaGVscCAgICAgICAgICAgICAgICAgICAgIFNob3cgaGVscCBvbiBmb3JjaW5nLlxuIgorIiAgLURofC0tZGVidWc9aGVscCAgICAgICAgICAgICAgICAgU2hvdyBoZWxwIG9uIGRlYnVnZ2luZy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIkNvbW1hbmRlc8KgOlxuIgorIiAgLWl8LS1pbnN0YWxsICAgICAgPG5vbSBmaWNoaWVyIC5kZWI+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxyw6lwPiAuLi5cbiIKKyIgIC0tdW5wYWNrICAgICAgICAgIDxub20gZmljaGllciAuZGViPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8csOpcD4gLi4uXG4iCisiICAtQXwtLXJlY29yZC1hdmFpbCA8bm9tIGZpY2hpZXIgLmRlYj4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPHLDqXA+IC4uLlxuIgorIiAgLS1jb25maWd1cmUgICAgICAgICAgIDxub20gcGFxdWV0PiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC0tdHJpZ2dlcnMtb25seSAgIDxub20gcGFxdWV0PiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC1yfC0tcmVtb3ZlICAgICAgICAgICA8bm9tIHBhcXVldD4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtUHwtLXB1cmdlICAgICAgICAgICAgPG5vbSBwYXF1ZXQ+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLS1nZXQtc2VsZWN0aW9ucyBbPG1vdGlmPiAuLi5dICAgICBBZmZpY2hlciBsYSBsaXN0ZSBkZXMgc8OpbGVjdGlvbnNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdXIgbGEgc29ydGllIHN0YW5kYXJkXG4iCisiICAtLXNldC1zZWxlY3Rpb25zICAgICAgICAgICAgICAgICAgIFBhcmFtw6l0cmVyIGxhIGxpc3RlIGRlcyBzw6lsZWN0aW9uc1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIMOgIHBhcnRpciBkZSBsJ2VudHLDqWUgc3RhbmRhcmRcbiIKKyIgIC0tY2xlYXItc2VsZWN0aW9ucyAgICAgICAgICAgICAgICAgU3VwcHJpbWVyIHRvdXMgbGVzIHBhcXVldHNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbm9uIGVzc2VudGllbHNcbiIKKyIgIC0tdXBkYXRlLWF2YWlsIDxmaWNoaWVyIHBhcXVldHM+ICAgUmVtcGxhY2VyIGxlcyBpbmZvcm1hdGlvbnMgc3VyXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVzIHBhcXVldHMgZGlzcG9uaWJsZXNcbiIKKyIgIC0tbWVyZ2UtYXZhaWwgPGZpY2hpZXIgcGFxdWV0cz4gICAgRnVzaW9ubmVyIGxlcyBpbmZvcm1hdGlvbnMgYXZlY1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNlbGxlcyBpc3N1ZXMgZHUgZmljaGllclxuIgorIiAgLS1jbGVhci1hdmFpbCAgICAgICAgICAgICAgICAgICAgICBFZmZhY2VyIGxlcyBpbmZvcm1hdGlvbnMgc3VyIGxlc1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhcXVldHNcbiIKKyIgIC0tZm9yZ2V0LW9sZC11bmF2YWlsICAgICAgICAgICAgICAgT3VibGllciBsZXMgcGFxdWV0cyBub24gaW5zdGFsbMOpc1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV0IG5vbi1kaXNwb25pYmxlc1xuIgorIiAgLXN8LS1zdGF0dXMgPG5vbSBwYXF1ZXQ+IC4uLiAgICAgICBBZmZpY2hlciBsZXMgZMOpdGFpbHMgZGUgbCfDqXRhdCBkdVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhcXVldFxuIgorIiAgLXB8LS1wcmludC1hdmFpbCA8bm9tIHBhcXVldD4gLi4uICBBZmZpY2hlciBsZXMgZMOpdGFpbHMgZGUgbGFcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2ZXJzaW9uIGRpc3BvbmlibGVcbiIKKyIgIC1MfC0tbGlzdGZpbGVzIDxub20gcGFxdWV0PiAuLi4gICAgTGlzdGVyIGxlcyBmaWNoaWVycyBhcHBhcnRlbmFudFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF1KHgpIHBhcXVldChzKVxuIgorIiAgLWx8LS1saXN0IFs8bW90aWY+IC4uLl0gICAgICAgICAgICBMaXN0ZXIgbGVzIHBhcXVldHMgZW4gY29uZGVuc8OpXG4iCisiICAtU3wtLXNlYXJjaCA8bW90aWY+IC4uLiAgICAgICAgICAgIFRyb3V2ZXIgbGUocykgcGFxdWV0KHMpIGNvbnRlbmFudFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlKHMpIGZpY2hpZXIocylcbiIKKyIgIC1DfC0tYXVkaXQgICAgICAgICAgICAgICAgICAgICAgICAgQ2hlcmNoZXIgZCfDqXZlbnR1ZWwocykgcGFxdWV0KHMpXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWLDrm3DqShzKVxuIgorIiAgLS1wcmludC1hcmNoaXRlY3R1cmUgICAgICAgICAgICAgICBBZmZpY2hlciBsJ2FyY2hpdGVjdHVyZSBjaWJsZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICh1dGlsaXNlIEdDQylcbiIKKyIgIC0tY29tcGFyZS12ZXJzaW9ucyA8YT4gPHJlbD4gPGI+ICAgQ29tcGFyZXIgbGVzIG51bcOpcm9zIGRlIHZlcnNpb25cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAodm9pciBjaS1kZXNzb3VzKVxuIgorIiAgLS1oZWxwIHwgLS12ZXJzaW9uICAgICAgICAgICAgICAgICBBZmZpY2hlciBjZXR0ZSBhaWRlIGV0IGxlIG51bcOpcm9cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZSB2ZXJzaW9uXG4iCisiICAtLWZvcmNlLWhlbHAgICAgICAgICAgICAgICAgICAgICAgIEFmZmljaGVyIGwnYWlkZSBzdXIgbGUgZm9yw6dhZ2VcbiIKKyIgIC1EaHwtLWRlYnVnPWhlbHAgICAgICAgICAgICAgICAgICAgQWZmaWNoZXIgbCdhaWRlIHN1ciBsZSBkw6lib2dhZ2VcbiIKKyJcbiIKKworIzogc3JjL21haW4uYzoxMTMgc3JjL3F1ZXJ5Y21kLmM6NjMxIHNyYy90cmlnY21kLmM6NzcgZHBrZy1kZWIvbWFpbi5jOjg4CisjOiBkcGtnLXNwbGl0L21haW4uYzo3NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiICAtaHwtLWhlbHAgICAgICAgICAgICAgICAgICAgICAgICBTaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICAgICAgICAgU2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIiAgLWh8LS1oZWxwICAgICAgICAgICAgICAgICAgICAgICAgIEFmZmljaGVyIGNlIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgICAgICAgICAgQWZmaWNoZXIgbGEgdmVyc2lvbi5cbiIKKyJcbiIKKworIzogc3JjL21haW4uYzoxMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlVzZSBkcGtnIC1ifC0tYnVpbGR8LWN8LS1jb250ZW50c3wtZXwtLWNvbnRyb2x8LUl8LS1pbmZvfC1mfC0tZmllbGR8XG4iCisiIC14fC0tZXh0cmFjdHwtWHwtLXZleHRyYWN0fC0tZnN5cy10YXJmaWxlICBvbiBhcmNoaXZlcyAodHlwZSAlcyAtLWhlbHApLlxuIgorIlxuIgorbXNnc3RyICIiCisiVXRpbGlzZXIgZHBrZyAtYnwtLWJ1aWxkfC1jfC0tY29udGVudHN8LWV8LS1jb250cm9sfC1JfC0taW5mb3wtZnwtLWZpZWxkfFxuIgorIiAteHwtLWV4dHJhY3R8LVh8LS12ZXh0cmFjdHwtLWZzeXMtdGFyZmlsZSBzdXIgbGVzIGFyY2hpdmVzXG4iCisiICh0YXBlciAlcyAtLWhlbHAuKVxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjEyMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiRm9yIGludGVybmFsIHVzZTogZHBrZyAtLWFzc2VydC1zdXBwb3J0LXByZWRlcGVuZHMgfCAtLXByZWRlcC1wYWNrYWdlIHxcbiIKKyIgIC0tYXNzZXJ0LXdvcmtpbmctZXBvY2ggfCAtLWFzc2VydC1sb25nLWZpbGVuYW1lcyB8IC0tYXNzZXJ0LW11bHRpLWNvbnJlcC5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIsOAIHVzYWdlIGludGVybmXCoDogZHBrZyAtLWFzc2VydC1zdXBwb3J0LXByZWRlcGVuZHMgfCAtLXByZWRlcC1wYWNrYWdlIHxcbiIKKyIgIC0tYXNzZXJ0LXdvcmtpbmctZXBvY2ggfCAtLWFzc2VydC1sb25nLWZpbGVuYW1lcyB8IC0tYXNzZXJ0LW11bHRpLWNvbnJlcFxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjEyOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT4gICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorIiAgLS1yb290PTxkaXJlY3Rvcnk+ICAgICAgICAgSW5zdGFsbCBvbiBhIGRpZmZlcmVudCByb290IGRpcmVjdG9yeS5cbiIKKyIgIC0taW5zdGRpcj08ZGlyZWN0b3J5PiAgICAgIENoYW5nZSBpbnN0YWxsYXRpb24gZGlyIHdpdGhvdXQgY2hhbmdpbmcgYWRtaW4gIgorImRpci5cbiIKKyIgIC0tcGF0aC1leGNsdWRlPTxwYXR0ZXJuPiAgIERvIG5vdCBpbnN0YWxsIHBhdGhzIHdoaWNoIG1hdGNoIGEgc2hlbGwgIgorInBhdHRlcm4uXG4iCisiICAtLXBhdGgtaW5jbHVkZT08cGF0dGVybj4gICBSZS1pbmNsdWRlIGEgcGF0dGVybiBhZnRlciBhIHByZXZpb3VzICIKKyJleGNsdXNpb24uXG4iCisiICAtT3wtLXNlbGVjdGVkLW9ubHkgICAgICAgICBTa2lwIHBhY2thZ2VzIG5vdCBzZWxlY3RlZCBmb3IgaW5zdGFsbC8iCisidXBncmFkZS5cbiIKKyIgIC1FfC0tc2tpcC1zYW1lLXZlcnNpb24gICAgIFNraXAgcGFja2FnZXMgd2hvc2Ugc2FtZSB2ZXJzaW9uIGlzIGluc3RhbGxlZC5cbiIKKyIgIC1HfC0tcmVmdXNlLWRvd25ncmFkZSAgICAgIFNraXAgcGFja2FnZXMgd2l0aCBlYXJsaWVyIHZlcnNpb24gdGhhbiAiCisiaW5zdGFsbGVkLlxuIgorIiAgLUJ8LS1hdXRvLWRlY29uZmlndXJlICAgICAgSW5zdGFsbCBldmVuIGlmIGl0IHdvdWxkIGJyZWFrIHNvbWUgb3RoZXIgIgorInBhY2thZ2UuXG4iCisiICAtLVtuby1ddHJpZ2dlcnMgICAgICAgICAgICBTa2lwIG9yIGZvcmNlIGNvbnNlcXVlbnRpYWwgdHJpZ2dlciAiCisicHJvY2Vzc2luZy5cbiIKKyIgIC0tbm8tZGVic2lnICAgICAgICAgICAgICAgIERvIG5vdCB0cnkgdG8gdmVyaWZ5IHBhY2thZ2Ugc2lnbmF0dXJlcy5cbiIKKyIgIC0tbm8tYWN0fC0tZHJ5LXJ1bnwtLXNpbXVsYXRlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBKdXN0IHNheSB3aGF0IHdlIHdvdWxkIGRvIC0gZG9uJ3QgZG8gaXQuXG4iCisiICAtRHwtLWRlYnVnPTxvY3RhbD4gICAgICAgICBFbmFibGUgZGVidWdnaW5nIChzZWUgLURoZWxwIG9yIC0tZGVidWc9aGVscCkuXG4iCisiICAtLXN0YXR1cy1mZCA8bj4gICAgICAgICAgICBTZW5kIHN0YXR1cyBjaGFuZ2UgdXBkYXRlcyB0byBmaWxlIGRlc2NyaXB0b3IgIgorIjxuPi5cbiIKKyIgIC0tbG9nPTxmaWxlbmFtZT4gICAgICAgICAgIExvZyBzdGF0dXMgY2hhbmdlcyBhbmQgYWN0aW9ucyB0byA8ZmlsZW5hbWU+LlxuIgorIiAgLS1pZ25vcmUtZGVwZW5kcz08cGFja2FnZT4sLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZ25vcmUgZGVwZW5kZW5jaWVzIGludm9sdmluZyA8cGFja2FnZT4uXG4iCisiICAtLWZvcmNlLS4uLiAgICAgICAgICAgICAgICBPdmVycmlkZSBwcm9ibGVtcyAoc2VlIC0tZm9yY2UtaGVscCkuXG4iCisiICAtLW5vLWZvcmNlLS4uLnwtLXJlZnVzZS0uLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3Agd2hlbiBwcm9ibGVtcyBlbmNvdW50ZXJlZC5cbiIKKyIgIC0tYWJvcnQtYWZ0ZXIgPG4+ICAgICAgICAgIEFib3J0IGFmdGVyIGVuY291bnRlcmluZyA8bj4gZXJyb3JzLlxuIgorIlxuIgorbXNnc3RyICIiCisiT3B0aW9uc8KgOlxuIgorIiAgLS1hZG1pbmRpcj08csOpcC4+ICAgICAgICAgIFV0aWxpc2VyIGxlIHLDqXBlcnRvaXJlIDxyw6lwLj4gYXUgbGlldSBkZSAlcy5cbiIKKyIgIC0tcm9vdD08csOpcC4+ICAgICAgICAgICAgICBJbnN0YWxsZXIgc3VyIHVuIHN5c3TDqG1lIGFsdGVybmF0aWYgZG9udCBsYVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJhY2luZSBlc3Qgc2l0dcOpZSDDoCB1biBhdXRyZSBlbmRyb2l0LlxuIgorIiAgLS1pbnN0ZGlyPTxyw6lwLj4gICAgICAgICAgIENoYW5nZXIgbGEgcmFjaW5lIGQnaW5zdGFsbGF0aW9uIHNhbnMgY2hhbmdlclxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlIHLDqXBlcnRvaXJlIGQnYWRtaW5pc3RyYXRpb24uXG4iCisiICAtLXBhdGgtZXhjbHVkZT08bW90aWY+ICAgICBOZSBwYXMgaW5zdGFsbGVyIGxlcyBjaGVtaW5zIHF1aSBjb3JyZXNwb25kZW50ICIKKyLDoFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuIG1vdGlmIGR1IHNoZWxsLlxuIgorIiAgLS1wYXRoLWluY2x1ZGU9PHBhdHRlcm4+ICAgUsOpaW5jbHVyZSB1biBtb3RpZiBhcHLDqHMgdW5lIGV4Y2x1c2lvbiAiCisiYW50w6lyaWV1cmUuXG4iCisiICAtT3wtLXNlbGVjdGVkLW9ubHkgICAgICAgICBJZ25vcmVyIGxlcyBwYXF1ZXRzIG5vbiBzw6lsZWN0aW9ubsOpZXMgcG91ciAiCisiw6p0cmVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnN0YWxsw6lzL21pcyDDoCBuaXZlYXUuXG4iCisiICAtRXwtLXNraXAtc2FtZS12ZXJzaW9uICAgICBJZ25vcmVyIGxlcyBwYXF1ZXRzIGRvbnQgbGEgdmVyc2lvbiBlc3QgbGEgIgorIm3Dqm1lXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcXVlIGNlbGxlIGluc3RhbGzDqWUuXG4iCisiICAtR3wtLXJlZnVzZS1kb3duZ3JhZGUgICAgICBJZ25vcmVyIGxlcyBwYXF1ZXRzIGRvbnQgbGEgdmVyc2lvbiBlc3QgbW9pbnNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByw6ljZW50ZSBxdWUgY2VsbGUgaW5zdGFsbMOpZS5cbiIKKyIgIC1CfC0tYXV0by1kZWNvbmZpZ3VyZSAgICAgIEluc3RhbGxlciBtw6ptZSBzaSBjZWxhIGVudHJhw65uZSBsYSBydXB0dXJlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZCdhdXRyZXMgcGFxdWV0cy5cbiIKKyIgIC0tW25vLV10cmlnZ2VycyAgICAgICAgICAgIFBhc3NlIG91IGZvcmNlIGxlcyBhY3Rpb25zIGRpZmbDqXLDqWVzXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW52b3F1w6lzIHBhciBsZSB0cmFpdGVtZW50LlxuIgorIiAgLS1uby1kZWJzaWcgICAgICAgICAgICAgICAgTmUgcGFzIHRlbnRlciBkJ2F1dGhlbnRpZmllciBsZXMgc2lnbmF0dXJlc1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlcyBwYXF1ZXRzLlxuIgorIiAgLS1uby1hY3R8LS1kcnktcnVufC0tc2ltdWxhdGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNldWxlbWVudCBhZmZpY2hlciBsZXMgYWN0aW9ucyDDoCBlZmZlY3R1ZXIgc2FucyAiCisibGVzXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcsOpYWxpc2VyLlxuIgorIiAgLUR8LS1kZWJ1Zz08b2N0YWw+ICAgICAgICAgQWN0aXZlciBsZSBkw6lib2dhZ2UgKHZvaXIgLURoZWxwIG91IC0tIgorImRlYnVnPWhlbHApLlxuIgorIiAgLS1zdGF0dXMtZmQgPG4+ICAgICAgICAgICAgRW52b3llciBsZXMgbWlzZXMgw6Agam91ciBkJ8OpdGF0IGF1IGRlc2NyaXB0ZXVyXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGUgZmljaGllciA8bj4uXG4iCisiICAtLWxvZz08ZmljaGllcj4gICAgICAgICAgICBFbnJlZ2lzdHJlciBkYW5zIDxmaWNoaWVyPiBsZXMgY2hhbmdlbWVudHNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkJ8OpdGF0IGV0IGxlcyBhY3Rpb25zIGVmZmVjdHXDqWVzLlxuIgorIiAgLS1pZ25vcmUtZGVwZW5kcz08cGFxdWV0PiwuLi4gSWdub3JlciBsZXMgZMOpcGVuZGFuY2VzIGltcGxpcXVhbnQgIgorIjxwYXF1ZXQ+LlxuIgorIiAgLS1mb3JjZS0uLi4gICAgICAgICAgICAgICAgICAgT3V0cmVwYXNzZXIgbGVzIHByb2Jsw6htZXMgLSB2b2lyIC0tZm9yY2UtIgorImhlbHAuXG4iCisiICAtLW5vLWZvcmNlLS4uLnwtLXJlZnVzZS0uLi4gICBBcnLDqnRlciBlbiBjYXMgZGUgcHJvYmzDqG1lcy5cbiIKKyIgIC0tYWJvcnQtYWZ0ZXIgPG4+ICAgICAgICAgICAgIEFycsOqdGVyIGFwcsOocyBhdm9pciByZW5jb250csOpIDxuPiBlcnJldXJzLlxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjE1NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tcGFyaXNvbiBvcGVyYXRvcnMgZm9yIC0tY29tcGFyZS12ZXJzaW9ucyBhcmU6XG4iCisiICBsdCBsZSBlcSBuZSBnZSBndCAgICAgICAodHJlYXQgZW1wdHkgdmVyc2lvbiBhcyBlYXJsaWVyIHRoYW4gYW55ICIKKyJ2ZXJzaW9uKTtcbiIKKyIgIGx0LW5sIGxlLW5sIGdlLW5sIGd0LW5sICh0cmVhdCBlbXB0eSB2ZXJzaW9uIGFzIGxhdGVyIHRoYW4gYW55IHZlcnNpb24pO1xuIgorIiAgPCA8PCA8PSA9ID49ID4+ID4gICAgICAgKG9ubHkgZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBjb250cm9sIGZpbGUgIgorInN5bnRheCkuXG4iCisiXG4iCittc2dzdHIgIiIKKyIgTGVzIG9ww6lyYXRldXJzIGRlIGNvbXBhcmFpc29uIHBvdXIgLS1jb21wYXJlLXZlcnNpb25zIHNvbnQgbGVzICBzdWl2YW50c8KgOlxuIgorIiAgbHQgbGUgZXEgbmUgZ2UgZ3QgICAgICAgKG5lIGNvbnNpZMOpcmVyIGF1Y3VuZSB2ZXJzaW9uIGNvbW1lIHBsdXMgIHRhcmRpdmVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBxdWUgbidpbXBvcnRlIHF1ZWxsZSB2ZXJzaW9uKVxuIgorIiAgbHQtbmwgbGUtbmwgZ2UtbmwgZ3QtbmwgKG5lIGNvbnNpZMOpcmVyIGF1Y3VuZSB2ZXJzaW9uIGNvbW1lIHBsdXMgcsOpY2VudGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBxdWUgbidpbXBvcnRlIHF1ZWxsZSB2ZXJzaW9uKVxuIgorIiAgPCA8PCA8PSA9ID49ID4+ID4gICAgICAgKHVuaXF1ZW1lbnQgcG91ciBkZXMgcmFpc29uIGRlIGNvbXBhdGliaWxpdMOpICAiCisiYXZlY1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhIHN5bnRheGUgZHUgZmljaGllciBjb250cm9sKVxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjE2MQorIywgYy1mb3JtYXQKK21zZ2lkICJVc2UgYGRzZWxlY3QnIG9yIGBhcHRpdHVkZScgZm9yIHVzZXItZnJpZW5kbHkgcGFja2FnZSBtYW5hZ2VtZW50LlxuIgorbXNnc3RyICIiCisiVXRpbGlzZXogwqvCoGRzZWxlY3TCoMK7IG91IMKrwqBhcHRpdHVkZcKgwrsgcG91ciBnw6lyZXIgbGVzIHBhcXVldHMgZGUgbWFuacOocmUgcGx1cyAiCisiY29udml2aWFsZS5cbiIKKworIzogc3JjL21haW4uYzoxNzAKK21zZ2lkICIiCisiVHlwZSBkcGtnIC0taGVscCBmb3IgaGVscCBhYm91dCBpbnN0YWxsaW5nIGFuZCBkZWluc3RhbGxpbmcgcGFja2FnZXMgWypdO1xuIgorIlVzZSBgZHNlbGVjdCcgb3IgYGFwdGl0dWRlJyBmb3IgdXNlci1mcmllbmRseSBwYWNrYWdlIG1hbmFnZW1lbnQ7XG4iCisiVHlwZSBkcGtnIC1EaGVscCBmb3IgYSBsaXN0IG9mIGRwa2cgZGVidWcgZmxhZyB2YWx1ZXM7XG4iCisiVHlwZSBkcGtnIC0tZm9yY2UtaGVscCBmb3IgYSBsaXN0IG9mIGZvcmNpbmcgb3B0aW9ucztcbiIKKyJUeXBlIGRwa2ctZGViIC0taGVscCBmb3IgaGVscCBhYm91dCBtYW5pcHVsYXRpbmcgKi5kZWIgZmlsZXM7XG4iCisiXG4iCisiT3B0aW9ucyBtYXJrZWQgWypdIHByb2R1Y2UgYSBsb3Qgb2Ygb3V0cHV0IC0gcGlwZSBpdCB0aHJvdWdoIGBsZXNzJyBvciAiCisiYG1vcmUnICEiCittc2dzdHIgIiIKKyJVdGlsaXNlciDCq8KgZHBrZyAtLWhlbHDCoMK7IHBvdXIgdW5lIG9idGVuaXIgdW5lIGFpZGUgc3VyIGwnaW5zdGFsbGF0aW9uIGV0IGxhICIKKyJkw6lzaW5zdGFsbGF0aW9uIGRlcyBwYXF1ZXRzIFsqXcKgO1xuIgorIlV0aWxpc2VyIMKrwqBkc2VsZWN0wqDCuyBvdSDCq8KgYXB0aXR1ZGXCoMK7IHBvdXIgZ8OpcmVyIGxlcyBwYXF1ZXRzIGRlIG1hbmnDqHJlXG4iCisicGx1cyBjb252aXZpYWxlwqA7XG4iCisiVXRpbGlzZXIgwqvCoGRwa2cgLURoZWxwwqDCuyBwb3VyIG9idGVuaXIgdW5lIGxpc3RlIGRlcyB2YWxldXJzIGRyYXBlYXV4IGRlICIKKyJkw6lib2dhZ2XCoDtcbiIKKyJVdGlsaXNlciDCq8KgZHBrZyAtLWZvcmNlLWhlbHDCoMK7IHBvdXIgY29uc3VsdGVyIGxhIGxpc3RlIGRlcyBvcHRpb25zIGRlICIKKyJmb3LDp2FnZcKgO1xuIgorIlV0aWxpc2VyIMKrwqBkcGtnLWRlYiAtLWhlbHDCoMK7IHBvdXIgb2J0ZW5pciB1bmUgYWlkZSBzdXIgbGEgbWFuaXB1bGF0aW9uIGRlcyAiCisiZmljaGllcnMgKi5kZWLCoDtcbiIKKyJcbiIKKyJMZXMgb3B0aW9ucyBtYXJxdcOpZXMgZCd1biBbKl0gYWZmaWNoZW50IGJlYXVjb3VwIGQnaW5mb3JtYXRpb25zIC0gdHViZXotbGVzICIKKyLDoCB0cmF2ZXJzIMKrwqBsZXNzwqDCuyBvdSDCq8KgbW9yZcKgwrsuIgorCisjOiBzcmMvbWFpbi5jOjIxOQorbXNnaWQgIlNldCBhbGwgZm9yY2Ugb3B0aW9ucyIKK21zZ3N0ciAiVXRpbGlzZXIgbGUgZm9yw6dhZ2UgKGZvcmNlKSBwb3VyIHRvdXRlcyBsZXMgb3B0aW9ucyIKKworIzogc3JjL21haW4uYzoyMjEKK21zZ2lkICJSZXBsYWNlIGEgcGFja2FnZSB3aXRoIGEgbG93ZXIgdmVyc2lvbiIKK21zZ3N0ciAiUmVtcGxhY2VyIHVuIHBhcXVldCBwYXIgdW5lIHZlcnNpb24gaW5mw6lyaWV1cmUiCisKKyM6IHNyYy9tYWluLmM6MjIzCittc2dpZCAiQ29uZmlndXJlIGFueSBwYWNrYWdlIHdoaWNoIG1heSBoZWxwIHRoaXMgb25lIgorbXNnc3RyICJDb25maWd1cmVyIHRvdXQgcGFxdWV0IHF1aSBwb3VycmFpdCDDqnRyZSB1dGlsZSDDoCBjZWx1aS1jaSIKKworIzogc3JjL21haW4uYzoyMjUKK21zZ2lkICJQcm9jZXNzIGluY2lkZW50YWwgcGFja2FnZXMgZXZlbiB3aGVuIG9uIGhvbGQiCittc2dzdHIgIlRyYWl0ZXIgbGVzIHBhcXVldHMgaW5jaWRlbnRzIG3Dqm1lIHMnaWxzIHNvbnQgw6AgZ2FyZGVyIChvbiBob2xkKSIKKworIzogc3JjL21haW4uYzoyMjcKK21zZ2lkICJUcnkgdG8gKGRlKWluc3RhbGwgdGhpbmdzIGV2ZW4gd2hlbiBub3Qgcm9vdCIKK21zZ3N0ciAiVGVudGVyIGQnaW5zdGFsbGVyIG91IGTDqXNpbnN0YWxsZXIgbcOqbWUgc2FucyDDqnRyZSBsZSBzdXBlcnV0aWxpc2F0ZXVyIgorCisjOiBzcmMvbWFpbi5jOjIyOQorbXNnaWQgIlBBVEggaXMgbWlzc2luZyBpbXBvcnRhbnQgcHJvZ3JhbXMsIHByb2JsZW1zIGxpa2VseSIKK21zZ3N0ciAiIgorImRlcyBwcm9ncmFtbWVzIGltcG9ydGFudHMgc29udCBhYnNlbnRzIGRhbnMgUEFUSCwgZGVzIHByb2Jsw6htZXMgc29udCDDoCAiCisicHLDqXZvaXIiCisKKyM6IHNyYy9tYWluLmM6MjMxCittc2dpZCAiSW5zdGFsbCBhIHBhY2thZ2UgZXZlbiBpZiBpdCBmYWlscyBhdXRoZW50aWNpdHkgY2hlY2siCittc2dzdHIgIkluc3RhbGxlciB1biBwYXF1ZXQgbcOqbWUgc2kgbGUgY29udHLDtGxlIGQnYXV0aGVudGljaXTDqSDDqWNob3VlIgorCisjOiBzcmMvbWFpbi5jOjIzMworIywgZnV6enkKKyN8IG1zZ2lkICJQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyBvciBubyBhcmNoaXRlY3R1cmUiCittc2dpZCAiUHJvY2VzcyBldmVuIHBhY2thZ2VzIHdpdGggd3JvbmcgdmVyc2lvbnMiCittc2dzdHIgIiIKKyJUcmFpdGVyIGxlcyBwYXF1ZXRzIG3Dqm1lIHNhbnMgYXJjaGl0ZWN0dXJlIG91IGF2ZWMgdW5lIGFyY2hpdGVjdHVyZSAiCisiaW5jb3JyZWN0ZSIKKworIzogc3JjL21haW4uYzoyMzUKK21zZ2lkICJPdmVyd3JpdGUgYSBmaWxlIGZyb20gb25lIHBhY2thZ2Ugd2l0aCBhbm90aGVyIgorbXNnc3RyICLDiWNyYXNlciB1biBmaWNoaWVyIGQndW4gcGFxdWV0IHBhciBjZWx1aSBkJ3VuIGF1dHJlIgorCisjOiBzcmMvbWFpbi5jOjIzNworbXNnaWQgIk92ZXJ3cml0ZSBhIGRpdmVydGVkIGZpbGUgd2l0aCBhbiB1bmRpdmVydGVkIHZlcnNpb24iCittc2dzdHIgIsOJY3Jhc2VyIHVuIGZpY2hpZXIgZMOpdG91cm7DqSBwb3VyIHVuZSB2ZXJzaW9uIG5vbiBkw6l0b3VybsOpZSIKKworIzogc3JjL21haW4uYzoyMzkKK21zZ2lkICJPdmVyd3JpdGUgb25lIHBhY2thZ2UncyBkaXJlY3Rvcnkgd2l0aCBhbm90aGVyJ3MgZmlsZSIKK21zZ3N0ciAiw4ljcmFzZXIgbGUgcsOpcGVydG9pcmUgZCd1biBwYXF1ZXQgcGFyIGxlIGZpY2hpZXIgZCd1biBhdXRyZSIKKworIzogc3JjL21haW4uYzoyNDEKK21zZ2lkICJEbyBub3QgcGVyZm9ybSBzYWZlIEkvTyBvcGVyYXRpb25zIHdoZW4gdW5wYWNraW5nIgorbXNnc3RyICIiCisiTmUgcGFzIGVmZmVjdHVlciBkJ29ww6lyYXRpb25zIGQnZW50csOpZS9zb3J0aWUgc8O7cmVzIGxvcnMgZGUgbGEgZMOpY29tcHJlc3Npb24iCisKKyM6IHNyYy9tYWluLmM6MjQzCittc2dpZCAiQWx3YXlzIHVzZSB0aGUgbmV3IGNvbmZpZyBmaWxlcywgZG9uJ3QgcHJvbXB0IgorbXNnc3RyICIiCisiVG91am91cnMgdXRpbGlzZXIgbGVzIG5vdXZlYXV4IGZpY2hpZXJzIGRlIGNvbmZpZ3VyYXRpb24sIG5lIHBhcyBkZW1hbmRlciIKKworIzogc3JjL21haW4uYzoyNDUKK21zZ2lkICJBbHdheXMgdXNlIHRoZSBvbGQgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHQiCittc2dzdHIgIiIKKyJUb3Vqb3VycyB1dGlsaXNlciBsZXMgYW5jaWVucyBmaWNoaWVycyBkZSBjb25maWd1cmF0aW9uLCBuZSBwYXMgZGVtYW5kZXIiCisKKyM6IHNyYy9tYWluLmM6MjQ4Cittc2dpZCAiIgorIlVzZSB0aGUgZGVmYXVsdCBvcHRpb24gZm9yIG5ldyBjb25maWcgZmlsZXMgaWYgb25lXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgIGlzIGF2YWlsYWJsZSwgZG9uJ3QgcHJvbXB0LiBJZiBubyBkZWZhdWx0IGNhbiBiZSAiCisiZm91bmQsXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgIHlvdSB3aWxsIGJlIHByb21wdGVkIHVubGVzcyBvbmUgb2YgdGhlIGNvbmZvbGQgb3JcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgY29uZm5ldyBvcHRpb25zIGlzIGFsc28gZ2l2ZW4iCittc2dzdHIgIiIKKyJDaG9pc2lyIGwnb3B0aW9uIHBhciBkw6lmYXV0IHBvdXIgbGVzIG5vdXZlYXV4IGZpY2hpZXJzIGRlXG4iCisiICAgICBzaSBlbGxlIGV4aXN0ZSwgbmUgcGFzIGRlbWFuZGVyLiBTJ2lsIG4nZXhpc3RlIHBhc1xuIgorIiAgICAgZCdvcHRpb24gcGFyIGTDqWZhdXQsIGxhIHF1ZXN0aW9uIHNlcmEgcG9zw6llIMOgIG1vaW5zXG4iCisiICAgICBxdWUgbCd1bmUgZGVzIG9wdGlvbnMgwqvCoGNvbmZvbGTCoMK7IG91IMKrwqBjb25mbmV3wqDCuyBuZSBzb2l0XFwgICAgICAiCisidXRpbGlzw6llLiIKKworIzogc3JjL21haW4uYzoyNTMKK21zZ2lkICJBbHdheXMgaW5zdGFsbCBtaXNzaW5nIGNvbmZpZyBmaWxlcyIKK21zZ3N0ciAiVG91am91cnMgaW5zdGFsbGVyIGxlcyBmaWNoaWVycyBkZSBjb25maWd1cmF0aW9uIG1hbnF1YW50cyIKKworIzogc3JjL21haW4uYzoyNTUKK21zZ2lkICJPZmZlciB0byByZXBsYWNlIGNvbmZpZyBmaWxlcyB3aXRoIG5vIG5ldyB2ZXJzaW9ucyIKK21zZ3N0ciAiIgorIlByb3Bvc2VyIGRlIHJlbXBsYWNlciBsZXMgZmljaGllcnMgZGUgY29uZmlndXJhdGlvbiBzYW5zIG5vdXZlbGxlcyB2ZXJzaW9ucyIKKworIzogc3JjL21haW4uYzoyNTcKK21zZ2lkICJQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyBvciBubyBhcmNoaXRlY3R1cmUiCittc2dzdHIgIiIKKyJUcmFpdGVyIGxlcyBwYXF1ZXRzIG3Dqm1lIHNhbnMgYXJjaGl0ZWN0dXJlIG91IGF2ZWMgdW5lIGFyY2hpdGVjdHVyZSAiCisiaW5jb3JyZWN0ZSIKKworIzogc3JjL21haW4uYzoyNTkKK21zZ2lkICJJbnN0YWxsIGV2ZW4gaWYgaXQgd291bGQgYnJlYWsgYW5vdGhlciBwYWNrYWdlIgorbXNnc3RyICJJbnN0YWxsZXIgbcOqbWUgc2kgY2VsYSBjYXNzZSB1biBhdXRyZSBwYXF1ZXQiCisKKyM6IHNyYy9tYWluLmM6MjYxCittc2dpZCAiQWxsb3cgaW5zdGFsbGF0aW9uIG9mIGNvbmZsaWN0aW5nIHBhY2thZ2VzIgorbXNnc3RyICJBdXRvcmlzZXIgbCdpbnN0YWxsYXRpb24gZGUgcGFxdWV0cyBlbiBjb25mbGl0IgorCisjOiBzcmMvbWFpbi5jOjI2MworbXNnaWQgIlR1cm4gYWxsIGRlcGVuZGVuY3kgcHJvYmxlbXMgaW50byB3YXJuaW5ncyIKK21zZ3N0ciAiQ2hhbmdlciB0b3VzIGxlcyBwcm9ibMOobWVzIGRlIGTDqXBlbmRhbmNlcyBlbiBhdmVydGlzc2VtZW50cyAiCisKKyM6IHNyYy9tYWluLmM6MjY1Cittc2dpZCAiVHVybiBkZXBlbmRlbmN5IHZlcnNpb24gcHJvYmxlbXMgaW50byB3YXJuaW5ncyIKK21zZ3N0ciAiIgorIkNoYW5nZXIgdG91cyBsZXMgcHJvYmzDqG1lcyBkZSBkw6lwZW5kYW5jZXMgZGUgdmVyc2lvbnMgZW4gYXZlcnRpc3NlbWVudHMgIgorCisjOiBzcmMvbWFpbi5jOjI2NworbXNnaWQgIlJlbW92ZSBwYWNrYWdlcyB3aGljaCByZXF1aXJlIGluc3RhbGxhdGlvbiIKK21zZ3N0ciAiU3VwcHJpbWVyIGxlcyBwYXF1ZXRzIHF1aSBvbnQgYmVzb2luIGQnaW5zdGFsbGF0aW9uIgorCisjOiBzcmMvbWFpbi5jOjI2OQorbXNnaWQgIlJlbW92ZSBhbiBlc3NlbnRpYWwgcGFja2FnZSIKK21zZ3N0ciAiU3VwcHJpbWVyIHVuIHBhcXVldCBlc3NlbnRpZWwiCisKKyM6IHNyYy9tYWluLmM6MjgxCittc2dpZCAiR2VuZXJhbGx5IGhlbHBmdWwgcHJvZ3Jlc3MgaW5mb3JtYXRpb24iCittc2dzdHIgIkluZm9ybWF0aW9ucyBkZSBwcm9ncmVzc2lvbiBlbiBnw6luw6lyYWwgdXRpbGVzIgorCisjOiBzcmMvbWFpbi5jOjI4MgorbXNnaWQgIkludm9jYXRpb24gYW5kIHN0YXR1cyBvZiBtYWludGFpbmVyIHNjcmlwdHMiCittc2dzdHIgIkxhbmNlbWVudCBldCDDqXRhdCBkZXMgc2NyaXB0cyBkZSBtYWludGVuYW5jZSIKKworIzogc3JjL21haW4uYzoyODMKK21zZ2lkICJPdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWQiCittc2dzdHIgIkFmZmljaGFnZSBkZSBjaGFxdWUgZmljaGllciB0cmFpdMOpIgorCisjOiBzcmMvbWFpbi5jOjI4NAorbXNnaWQgIkxvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkIgorbXNnc3RyICJBZmZpY2hhZ2UgdmVyYmV1eCBwb3VyIGNoYXF1ZSBmaWNoaWVyIHRyYWl0w6kiCisKKyM6IHNyYy9tYWluLmM6Mjg1Cittc2dpZCAiT3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZSIKK21zZ3N0ciAiQWZmaWNoYWdlIHBvdXIgY2hhcXVlIGZpY2hpZXIgZGUgY29uZmlndXJhdGlvbiIKKworIzogc3JjL21haW4uYzoyODYKK21zZ2lkICJMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGUiCittc2dzdHIgIkFmZmljaGFnZSB2ZXJiZXV4IHBvdXIgY2hhcXVlIGZpY2hpZXIgZGUgY29uZmlndXJhdGlvbiIKKworIzogc3JjL21haW4uYzoyODcKK21zZ2lkICJEZXBlbmRlbmNpZXMgYW5kIGNvbmZsaWN0cyIKK21zZ3N0ciAiRMOpcGVuZGFuY2VzIGV0IGNvbmZsaXRzIgorCisjOiBzcmMvbWFpbi5jOjI4OAorbXNnaWQgIkxvdHMgb2YgZGVwZW5kZW5jaWVzL2NvbmZsaWN0cyBvdXRwdXQiCittc2dzdHIgIkFmZmljaGFnZSB2ZXJiZXV4IHBvdXIgbGVzIGTDqXBlbmRhbmNlcyBldCBjb25mbGl0cyIKKworIzogc3JjL21haW4uYzoyODkKK21zZ2lkICJUcmlnZ2VyIGFjdGl2YXRpb24gYW5kIHByb2Nlc3NpbmciCittc2dzdHIgIkFjdGl2YXRpb24gZXQgdHJhaXRlbWVudCBkZXMgYWN0aW9ucyBkaWZmw6lyw6llcyIKKworIzogc3JjL21haW4uYzoyOTAKK21zZ2lkICJMb3RzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnMiCittc2dzdHIgIkFmZmljaGFnZSB2ZXJiZXV4IHBvdXIgbGVzIGFjdGlvbnMgZGlmZsOpcsOpZXMiCisKKyM6IHNyYy9tYWluLmM6MjkxCittc2dpZCAiU2lsbHkgYW1vdW50cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzIgorbXNnc3RyICJBZmZpY2hhZ2UgZMOpbGlyYW50IHBvdXIgbGVzIGFjdGlvbnMgZGlmZsOpcsOpZXMiCisKKyM6IHNyYy9tYWluLmM6MjkyCittc2dpZCAiTG90cyBvZiBkcml2ZWwgYWJvdXQgZWcgdGhlIGRwa2cvaW5mbyBkaXJlY3RvcnkiCittc2dzdHIgIkJlYXVjb3VwIGRlIGJydWl0IMOgIHByb3BvcyBwLmV4LiBkdSByw6lwZXJ0b2lyZSBkcGtnL2luZm8iCisKKyM6IHNyYy9tYWluLmM6MjkzCittc2dpZCAiSW5zYW5lIGFtb3VudHMgb2YgZHJpdmVsIgorbXNnc3RyICJCcnVpdCBkw6lsaXJhbnQgKE5kVMKgOsKgbidpbXBvcnRlIHF1b2kpIgorCisjOiBzcmMvbWFpbi5jOjMwNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXMgZGVidWdnaW5nIG9wdGlvbiwgLS1kZWJ1Zz08b2N0YWw+IG9yIC1EPG9jdGFsPjpcbiIKKyJcbiIKKyIgTnVtYmVyICBSZWYuIGluIHNvdXJjZSAgIERlc2NyaXB0aW9uXG4iCittc2dzdHIgIiIKKyIlcyBvcHRpb24gZGUgZMOpYm9nYWdlLCAtLWRlYnVnPTxvY3RhbD4gb3IgLUQ8b2N0YWw+OlxuIgorIlxuIgorIiBOb21icmUgIFLDqWYuIGRzIHNvdXJjZSAgIERlc2NyaXB0aW9uXG4iCisKKyM6IHNyYy9tYWluLmM6MzExCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJEZWJ1Z2dpbmcgb3B0aW9ucyBjYW4gYmUgbWl4ZWQgdXNpbmcgYml0d2lzZS1vci5cbiIKKyJOb3RlIHRoYXQgdGhlIG1lYW5pbmdzIGFuZCB2YWx1ZXMgYXJlIHN1YmplY3QgdG8gY2hhbmdlLlxuIgorbXNnc3RyICIiCisiXG4iCisiTGVzIG9wdGlvbnMgZGUgZMOpYm9nYWdlIHBldXZlbnQgw6p0cmUgY29tYmluw6llcyBhdmVjIHVuIMKrwqBvcsKgwrsgKGJpdHdpc2Utb3IpLlxuIgorIk5vdGVyIHF1ZSBsZXMgdmFsZXVycyBldCBsZXVyIHNpZ25pZmljYXRpb24gcGV1dmVudCBjaGFuZ2VyLlxuIgorCisjOiBzcmMvbWFpbi5jOjMxOQorbXNnaWQgIi0tZGVidWcgcmVxdWlyZXMgYW4gb2N0YWwgYXJndW1lbnQiCittc2dzdHIgIi0tZGVidWcgcmVxdWllcnQgdW4gcGFyYW3DqHRyZSBvY3RhbCIKKworIzogc3JjL21haW4uYzozNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAibnVsbCBwYWNrYWdlIG5hbWUgaW4gLS1pZ25vcmUtZGVwZW5kcyBjb21tYS1zZXBhcmF0ZWQgbGlzdCBgJS4yNTBzJyIKK21zZ3N0ciAiIgorIm5vbSBkZSBwYXF1ZXQgdmlkZSBkYW5zIGxhIGxpc3RlIMKrwqAlLjI1MHPCoMK7IGQnw6lsw6ltZW50cyBzw6lwYXLDqXMgcGFyIGRlcyAiCisidmlyZ3VsZXMgZGUgLS1pZ25vcmUtZGVwZW5kcyIKKworIzogc3JjL21haW4uYzozNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS1pZ25vcmUtZGVwZW5kcyByZXF1aXJlcyBhIGxlZ2FsIHBhY2thZ2UgbmFtZS4gYCUuMjUwcycgaXMgbm90OyAlcyIKK21zZ3N0ciAiIgorIi0taWdub3JlLWRlcGVuZHMgcmVxdWllcnQgdW4gbm9tIGRlIHBhcXVldCBsw6lnYWwuIMKrwqAlLjI1MHPCoMK7IG5lIGwnZXN0IHBhc8KgOyAiCisiJXMiCisKKyM6IHNyYy9tYWluLmM6MzcxIHNyYy9tYWluLmM6MzgxIHNyYy9tYWluLmM6NjQ5IGRwa2ctc3BsaXQvbWFpbi5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGludGVnZXIgZm9yIC0tJXM6IGAlLjI1MHMnIgorbXNnc3RyICJlbnRpZXIgaW5jb3JyZWN0IHBvdXIgLS0lcyDCq8KgJS4yNTBzwqDCuyIKKworIzogc3JjL21haW4uYzo0MzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgZXhlY3V0aW5nIGhvb2sgJyVzJywgZXhpdCBjb2RlICVkIgorbXNnc3RyICJlcnJldXIgw6AgbCdleMOpY3V0aW9uIGR1IHBvaW50IGQnZW50csOpZSAoaG9vaykgwqvCoCVzwqDCuywgY29kZSBkJ2VycmV1ciAlZCIKKworIzogc3JjL21haW4uYzo0NjUKK21zZ2lkICJzdGF0dXMgbG9nZ2VyIgorbXNnc3RyICJqb3VybmFsaXNhdGlvbiBkZSBsJ8OpdGF0IgorCisjOiBzcmMvbWFpbi5jOjQ4MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXMgZm9yY2luZyBvcHRpb25zIC0gY29udHJvbCBiZWhhdmlvdXIgd2hlbiBwcm9ibGVtcyBmb3VuZDpcbiIKKyIgIHdhcm4gYnV0IGNvbnRpbnVlOiAgLS1mb3JjZS08dGhpbmc+LDx0aGluZz4sLi4uXG4iCisiICBzdG9wIHdpdGggZXJyb3I6ICAgIC0tcmVmdXNlLTx0aGluZz4sPHRoaW5nPiwuLi4gfCAtLW5vLWZvcmNlLTx0aGluZz4sLi4uXG4iCisiIEZvcmNpbmcgdGhpbmdzOlxuIgorbXNnc3RyICIiCisib3B0aW9ucyBkZSBmb3LDp2FnZSBkZSAlcyAtIGNvbnRyw7RsZSBsZXMgYWN0aW9ucyBlbiBjYXMgZGUgcHJvYmzDqG1lOlxuIgorIiAgYXZlcnRpciBldCBjb250aW51ZXLCoDogIC0tZm9yY2UtPG9wdGlvbj4sPG9wdGlvbj4sLi4uXG4iCisiICBhcnLDqnRlciBzdXIgZXJyZXVywqA6ICAgIC0tcmVmdXNlLTxvcHRpb24+LDxvcHRpb24+LC4uLiB8IC0tbm8tZm9yY2UtIgorIjxvcHRpb24+LC4uLlxuIgorIiBDZSBxdWkgcGV1dCDDqnRyZSBmb3Jjw6k6XG4iCisKKyM6IHNyYy9tYWluLmM6NDkwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJXQVJOSU5HIC0gdXNlIG9mIG9wdGlvbnMgbWFya2VkIFshXSBjYW4gc2VyaW91c2x5IGRhbWFnZSB5b3VyIGluc3RhbGxhdGlvbi5cbiIKKyJGb3JjaW5nIG9wdGlvbnMgbWFya2VkIFsqXSBhcmUgZW5hYmxlZCBieSBkZWZhdWx0LlxuIgorbXNnc3RyICIiCisiXG4iCisiQVZFUlRJU1NFTUVOVCAtIGxlcyBvcHRpb25zIG1hcnF1w6llcyBhdmVjIFshXSBjYW4gc2VyaW91c2x5IGRhbWFnZSB5b3VyICIKKyJpbnN0YWxsYXRpb24uXG4iCisiRm9yY2luZyBvcHRpb25zIG1hcmtlZCBbKl0gYXJlIGVuYWJsZWQgYnkgZGVmYXVsdC5cbiIKKyJBVFRFTlRJT07CoDogdXRpbGlzZXIgdW5lIG9wdGlvbiBtYXJxdcOpZSBbIV0gcGV1dCBzw6lyaWV1c2VtZW50IGVuZG9tbWFnZXIgIgorInZvdHJlXG4iCisiaW5zdGFsbGF0aW9uLlxuIgorIkxlcyBvcHRpb25zIGRlIGZvcsOnYWdlIG1hcnF1w6llcyBbKl0gc29udCBhY3RpdsOpZXMgcGFyIGTDqWZhdXQuXG4iCisKKyM6IHNyYy9tYWluLmM6NTA0CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gZm9yY2UvcmVmdXNlIG9wdGlvbiBgJS4qcyciCittc2dzdHIgIm9wdGlvbiBkZSBmb3LDp2FnZS9yZWZ1cyDCq8KgJS4qc8KgwrsgaW5jb25udWUiCisKKyM6IHNyYy9tYWluLmM6NTEzCisjLCBjLWZvcm1hdAorbXNnaWQgIm9ic29sZXRlIGZvcmNlL3JlZnVzZSBvcHRpb24gJyVzJ1xuIgorbXNnc3RyICJvcHRpb24gZGUgZm9yw6dhZ2UvcmVmdXMgwqvCoCVzwqDCuyBvYnNvbMOodGVcbiIKKworIzogc3JjL21haW4uYzo2NDMKK21zZ2lkICItLWNvbW1hbmQtZmQgdGFrZXMgb25lIGFyZ3VtZW50LCBub3QgemVybyIKK21zZ3N0ciAiLS1jb21tYW5kLWZkIHByZW5kIHVuIHBhcmFtw6h0cmUgZXQgbm9uIHrDqXJvIgorCisjOiBzcmMvbWFpbi5jOjY0NQorbXNnaWQgIi0tY29tbWFuZC1mZCBvbmx5IHRha2VzIG9uZSBhcmd1bWVudCIKK21zZ3N0ciAiLS1jb21tYW5kLWZkIG5lIHByZW5kIHF1J3VuIHBhcmFtw6h0cmUiCisKKyM6IHNyYy9tYWluLmM6NjUxCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkbid0IG9wZW4gYCVpJyBmb3Igc3RyZWFtIgorbXNnc3RyICJpbXBvc3NpYmxlIGQnb3V2cmlyIGxlIGZsdXggZCdlbnRyw6llIMKrwqAlacKgwrsiCisKKyM6IHNyYy9tYWluLmM6Njc2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW9mIGJlZm9yZSBlbmQgb2YgbGluZSAlZCIKK21zZ3N0ciAiRU9GIGluYXR0ZW5kdSBhdmFudCBsYSBmaW4gZGUgbGEgbGlnbmUgJWQiCisKKyM6IHNyYy9tYWluLmM6NzE5IHNyYy9tYWluLmM6NzQxIHNyYy9xdWVyeWNtZC5jOjY5MiBzcmMvc3RhdGNtZC5jOjM3OQorIzogZHBrZy1kZWIvbWFpbi5jOjIwMSBkcGtnLXNwbGl0L21haW4uYzoxNjMKK21zZ2lkICJuZWVkIGFuIGFjdGlvbiBvcHRpb24iCittc2dzdHIgInJlcXVpZXJ0IHVuZSBvcHRpb24gZCdhY3Rpb24iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjExMworbXNnaWQgIiIKKyJ5b3UgbXVzdCBzcGVjaWZ5IHBhY2thZ2VzIGJ5IHRoZWlyIG93biBuYW1lcywgbm90IGJ5IHF1b3RpbmcgdGhlIG5hbWVzIG9mICIKKyJ0aGUgZmlsZXMgdGhleSBjb21lIGluIgorbXNnc3RyICIiCisidm91cyBkZXZleiBzcMOpY2lmaWVyIGxlcyBwYXF1ZXRzIHBhciBsZXVyIG5vbSwgZXQgbm9uIHBhciBsZSBub20gZGVzICIKKyJmaWNoaWVycyBxdWkgbGVzIGNvbnRpZW5uZW50IgorCisjOiBzcmMvcGFja2FnZXMuYzoxMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyAtLXBlbmRpbmcgZG9lcyBub3QgdGFrZSBhbnkgbm9uLW9wdGlvbiBhcmd1bWVudHMiCittc2dzdHIgIi0tJXMgLS1wZW5kaW5nIG5lIHByZW5kIHBhcyBkZSBwYXJhbcOodHJlIG5vbiBvcHRpb25uZWwiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjEzOCBzcmMvcXVlcnljbWQuYzozNzUgc3JjL3F1ZXJ5Y21kLmM6NTY1CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYXQgbGVhc3Qgb25lIHBhY2thZ2UgbmFtZSBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyBhIGJlc29pbiBkJ2F1IG1vaW5zIHVuIG5vbSBkZSBwYXF1ZXQgY29tbWUgcGFyYW3DqHRyZSIKKworIzogc3JjL3BhY2thZ2VzLmM6MTc5CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgJXMgbGlzdGVkIG1vcmUgdGhhbiBvbmNlLCBvbmx5IHByb2Nlc3Npbmcgb25jZS5cbiIKK21zZ3N0ciAiUGFxdWV0ICVzIGxpc3TDqSBwbHVzIGQndW5lIGZvaXMsIG1haXMgdHJhaXTDqSB1bmUgc2V1bGUgZm9pcy5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MTgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJNb3JlIHRoYW4gb25lIGNvcHkgb2YgcGFja2FnZSAlcyBoYXMgYmVlbiB1bnBhY2tlZFxuIgorIiBpbiB0aGlzIHJ1biAhICBPbmx5IGNvbmZpZ3VyaW5nIGl0IG9uY2UuXG4iCittc2dzdHIgIiIKKyJQbHVzIGQndW5lIGNvcGllIGR1IHBhcXVldCAlcyBvbnQgw6l0w6kgZMOpcGFxdWV0w6llc1xuIgorIiBsb3JzIGRlIGNlIHRyYWl0ZW1lbnQuIFVuZSBzZXVsZSBjb25maWd1cmF0aW9uIGVmZmVjdHXDqWUuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjIzMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisicGFja2FnZSAlLjI1MHMgaXMgbm90IHJlYWR5IGZvciB0cmlnZ2VyIHByb2Nlc3NpbmdcbiIKKyIgKGN1cnJlbnQgc3RhdHVzIGAlLjI1MHMnIHdpdGggbm8gcGVuZGluZyB0cmlnZ2VycykiCittc2dzdHIgIiIKKyJsZSBwYXF1ZXQgwqvCoCUuMjUwc8Kgwrsgbidlc3QgcGFzIHByw6p0IHBvdXIgbGVzIHRyYWl0ZW1lbnQgZGVzIGFjdGlvbnMgIgorImRpZmbDqXLDqWVzXG4iCisiICggw6l0YXQgYWN0dWVsIMKrwqAlLjI1MHPCoMK7IHNhbnMgYWN0aW9uIGRpZmbDqXLDqWUgZW4gYXR0ZW50ZSkiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjMzNAorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgd2hpY2ggcHJvdmlkZXMgJXMgaXMgdG8gYmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiICBMZSBwYXF1ZXQgJXMgcXVpIGZvdXJuaXQgJXMgZG9pdCDDqnRyZSBzdXBwcmltw6kuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjMzNworIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgaXMgdG8gYmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiICBMZSBwYXF1ZXQgJXMgZG9pdCDDqnRyZSBzdXBwcmltw6kuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjM1NAorIywgYy1mb3JtYXQKK21zZ2lkICIgIFZlcnNpb24gb2YgJXMgb24gc3lzdGVtIGlzICVzLlxuIgorbXNnc3RyICIgIExhIHZlcnNpb24gZGUgJXMgc3VyIGxlIHN5c3TDqG1lIGVzdCAlcy5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6Mzc2CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyB3aGljaCBwcm92aWRlcyAlcyBhd2FpdHMgdHJpZ2dlciBwcm9jZXNzaW5nLlxuIgorbXNnc3RyICIiCisiICBMZSBwYXF1ZXQgwqvCoCVzwqDCuyBxdWkgZm91cm5pdCDCq8KgJXPCoMK7IGF0dGVuZCBsZSB0cmFpdGVtZW50IGQnYWN0aW9ucyAiCisiZGlmZsOpcsOpZXMuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjM4MAorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgYXdhaXRzIHRyaWdnZXIgcHJvY2Vzc2luZy5cbiIKK21zZ3N0ciAiICBMZSBwYXF1ZXQgwqvCoCVzwqDCuyBhdHRlbmQgbGUgdHJhaXRlbWVudCBkJ2FjdGlvbnMgZGlmZsOpcsOpZXMuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQxMAorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiBhbHNvIGNvbmZpZ3VyaW5nIGAlcycgKHJlcXVpcmVkIGJ5IGAlcycpXG4iCittc2dzdHIgImRwa2fCoDogY29uZmlndXJhdGlvbiBhZGRpdGlvbm5lbGxlIGRlIMKrwqAlc8KgwrsgKHJlcXVpc2UgcGFyIMKrwqAlc8KgwrspXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQxOAorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgd2hpY2ggcHJvdmlkZXMgJXMgaXMgbm90IGNvbmZpZ3VyZWQgeWV0LlxuIgorbXNnc3RyICIgIExlIHBhcXVldCAlcyBxdWkgZm91cm5pdCAlcyBuJ2VzdCBwYXMgZW5jb3JlIGNvbmZpZ3Vyw6kuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQyMQorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgaXMgbm90IGNvbmZpZ3VyZWQgeWV0LlxuIgorbXNnc3RyICIgTGUgcGFxdWV0ICVzIG4nZXN0IHBhcyBlbmNvcmUgY29uZmlndXLDqS5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyB3aGljaCBwcm92aWRlcyAlcyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIgIExlIHBhcXVldCAlcyBxdWkgZm91cm5pdCAlcyBuJ2VzdCBwYXMgaW5zdGFsbMOpLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIGlzIG5vdCBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgTGUgcGFxdWV0ICVzIG4nZXN0IHBhcyBpbnN0YWxsw6kuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQ3MgorIywgYy1mb3JtYXQKK21zZ2lkICIgJXMgKCVzKSBicmVha3MgJXMgYW5kIGlzICVzLlxuIgorbXNnc3RyICIgJXMgKCVzKSBjYXNzZSAlcyBldCBlc3QgJXMuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQ3OAorIywgYy1mb3JtYXQKK21zZ2lkICIgICVzICglcykgcHJvdmlkZXMgJXMuXG4iCittc2dzdHIgIiVzICglcykgZm91cm5pdCAlcy5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDgyCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgVmVyc2lvbiBvZiAlcyB0byBiZSBjb25maWd1cmVkIGlzICVzLlxuIgorbXNnc3RyICIgIExhIHZlcnNpb24gZGUgJXMgw6AgY29uZmlndXJlciBlc3QgJXMuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjU5NgorbXNnaWQgIiBkZXBlbmRzIG9uICIKK21zZ3N0ciAiIGTDqXBlbmQgZGUgIgorCisjOiBzcmMvcGFja2FnZXMuYzo2MDIKK21zZ2lkICI7IGhvd2V2ZXI6XG4iCittc2dzdHIgIsKgOyBjZXBlbmRhbnTCoDpcbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo3MQorIywgYy1mb3JtYXQKK21zZ2lkICIuLi4vJXMiCittc2dzdHIgIi4uLi8lcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5MQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBlbnN1cmluZyBgJS4yNTBzJyBkb2Vzbid0IGV4aXN0IgorbXNnc3RyICJlcnJldXIgb2J0ZW51ZSBlbiB2b3VsYW50IHMnYXNzdXJlciBxdWUgwqvCoCUuMjUwc8KgwrsgbidleGlzdGUgcGFzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjk5Cittc2dpZCAic3BsaXQgcGFja2FnZSByZWFzc2VtYmx5IgorbXNnc3RyICJyw6lhc3NlbWJsYWdlIGQndW4gcGFxdWV0IHRyb27Dp29ubsOpIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEwOAorbXNnaWQgInJlYXNzZW1ibGVkIHBhY2thZ2UgZmlsZSIKK21zZ3N0ciAiZmljaGllciBkdSBwYXF1ZXQgcmFzc2VtYmzDqSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiQXV0aGVudGljYXRpbmcgJXMgLi4uXG4iCittc2dzdHIgIkF1dGhlbnRpZmljYXRpb24gZGUgJXMgLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTM5Cittc2dpZCAicGFja2FnZSBzaWduYXR1cmUgdmVyaWZpY2F0aW9uIgorbXNnc3RyICJjb250csO0bGUgZGUgbGEgc2lnbmF0dXJlIGR1IHBhcXVldCIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxNDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiVmVyaWZpY2F0aW9uIG9uIHBhY2thZ2UgJXMgZmFpbGVkISIKK21zZ3N0ciAiTGEgdsOpcmlmaWNhdGlvbiBkdSBwYXF1ZXQgJXMgYSDDqWNob3XDqS4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTQ4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJWZXJpZmljYXRpb24gb24gcGFja2FnZSAlcyBmYWlsZWQsXG4iCisiYnV0IGluc3RhbGxpbmcgYW55d2F5IGFzIHlvdSByZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiIKKyJMYSB2w6lyaWZpY2F0aW9uIGR1IHBhcXVldCAlcyBhIMOpY2hvdcOpLCBtYWlzIHRyYWl0ZW1lbnQgZW4gY291cnMgbWFsZ3LDqSB0b3V0XG4iCisiY29tbWUgZGVtYW5kw6kuXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTUyCisjLCBjLWZvcm1hdAorbXNnaWQgInBhc3NlZFxuIgorbXNnc3RyICJyw6l1c3NpXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTY1IGRwa2ctZGViL2luZm8uYzo4MQorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdGVtcG9yYXJ5IGRpcmVjdG9yeSIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkZSBjcsOpZXIgdW4gcsOpcGVydG9pcmUgdGVtcG9yYWlyZSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlcyBoYXMgdG9vIG1hbnkgQ29uZmxpY3RzL1JlcGxhY2VzIHBhaXJzIgorbXNnc3RyICJsZSBwYXF1ZXQgJXMgYSB0cm9wIGRlIHBhaXJlcyBDb25mbGljdHMvUmVwbGFjZXMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MjQzCisjLCBjLWZvcm1hdAorbXNnaWQgIm9sZCB2ZXJzaW9uIG9mIHBhY2thZ2UgaGFzIG92ZXJseS1sb25nIGluZm8gZmlsZSBuYW1lIHN0YXJ0aW5nIGAlLjI1MHMnIgorbXNnc3RyICIiCisibCdhbmNpZW5uZSB2ZXJzaW9uIGR1IHBhcXVldCBhIHVuIG5vbSBkZSBmaWNoaWVyIGQnaW5mb3JtYXRpb24gY29tbWVuw6dhbnQgIgorInBhciDCq8KgJS4yNTBzwqDCuyB0cm9wIGxvbmciCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MjgxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgb2Jzb2xldGUgaW5mbyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJpbXBvc3NpYmxlIGRlIHN1cHByaW1lciBsZSBmaWNoaWVyIGluZm8gb2Jzb2zDqHRlIMKrwqAlLjI1MHPCoMK7IgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjI4NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCAoc3VwcG9zZWQpIG5ldyBpbmZvIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImltcG9zc2libGUgZCdpbnN0YWxsZXIgbGUgKHN1cHBvc8OpKSBub3V2ZWF1IGZpY2hpZXIgaW5mbyDCq8KgJS4yNTBzwqDCuyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyOTYKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiB0ZW1wIGNvbnRyb2wgZGlyZWN0b3J5IgorbXNnc3RyICJpbXBvc3NpYmxlIGQnb3V2cmlyIGxlIHLDqXBlcnRvaXJlIGRlIGNvbnRyw7RsZSB0ZW1wb3JhaXJlIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMwNworIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGNvbnRhaW5zIG92ZXJseS1sb25nIGNvbnRyb2wgaW5mbyBmaWxlIG5hbWUgKHN0YXJ0aW5nIGAlLjUwcycpIgorbXNnc3RyICIiCisibGUgcGFxdWV0IGNvbnRpZW50IHVuIG5vbSBkZSBmaWNoaWVyIGRlIGNvbnRyw7RsZSB0cm9wIGxvbmcgKGNvbW1lbsOnYW50IHBhciAiCisiwqvCoCUuNTBzwqDCuykiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzE0CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgY29udHJvbCBpbmZvIGNvbnRhaW5lZCBkaXJlY3RvcnkgYCUuMjUwcyciCittc2dzdHIgImwnaW5mb3JtYXRpb24gZGUgY29udHLDtGxlIGR1IHBhcXVldCBjb250aWVudCBsZSByw6lwZXJ0b2lyZSDCq8KgJS4yNTBzwqDCuyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMTYKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBjb250cm9sIGluZm8gcm1kaXIgb2YgYCUuMjUwcycgZGlkbid0IHNheSBub3QgYSBkaXIiCittc2dzdHIgIiIKKyJsJ2luZm9ybWF0aW9uIGRlIGNvbnRyw7RsZSBkdSBwYXF1ZXQgwqvCoHJtZGlywqDCuyBkZSDCq8KgJS4yNTBzwqDCuyBuZSBkaXQgcGFzIHF1ZSAiCisiY2Ugbidlc3QgcGFzIHVuIHLDqXBlcnRvaXJlIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMyNgorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlICVzIGNvbnRhaW5lZCBsaXN0IGFzIGluZm8gZmlsZSIKK21zZ3N0ciAibGUgcGFxdWV0ICVzIGNvbnRpZW50IHVuZSBsaXN0ZSBjb21tZSBmaWNoaWVyIGQnaW5mb3JtYXRpb24iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzMzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyBpbmZvIGZpbGUgYCUuMjUwcycgYXMgYCUuMjUwcyciCittc2dzdHIgIiIKKyJpbXBvc3NpYmxlIGQnaW5zdGFsbGVyIGxlIG5vdXZlYXUgZmljaGllciBpbmZvIMKrwqAlLjI1MHPCoMK7IGNvbW1lIMKrwqAlLjI1MHPCoMK7IgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjM0OSBzcmMvcmVtb3ZlLmM6MTk4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkZWxldGUgY29udHJvbCBpbmZvIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImltcG9zc2libGUgZGUgc3VwcHJpbWVyIGxlIGZpY2hpZXIgaW5mbyBkZSBjb250csO0bGUgwqvCoCUuMjUwc8KgwrsiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDExCittc2dpZCAiY2Fubm90IGFjY2VzcyBhcmNoaXZlIgorbXNnc3RyICJuZSBwZXV0IHBhcyBhY2PDqWRlciDDoCBsJ2FyY2hpdmUiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDMzCittc2dpZCAicGFja2FnZSBjb250cm9sIGluZm9ybWF0aW9uIGV4dHJhY3Rpb24iCittc2dzdHIgImV4dHJhY3Rpb24gZGUgbCdpbmZvcm1hdGlvbiBkZSBjb250csO0bGUgZHUgcGFxdWV0IgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjQ2MAorIywgYy1mb3JtYXQKK21zZ2lkICJSZWNvcmRlZCBpbmZvIGFib3V0ICVzIGZyb20gJXMuXG4iCittc2dzdHIgIkVucmVnaXN0cmVtZW50IGRlIGwnaW5mb3JtYXRpb24gc3VyICVzIGRlICVzLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjQ2OAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGFyY2hpdGVjdHVyZSAoJXMpIGRvZXMgbm90IG1hdGNoIHN5c3RlbSAoJXMpIgorbXNnc3RyICIiCisibCdhcmNoaXRlY3R1cmUgZHUgcGFxdWV0ICglcykgbmUgY29ycmVzcG9uZCBwYXMgw6AgY2VsbGUgZHUgc3lzdMOobWUgKCVzKSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1MjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IHJlZ2FyZGluZyAlcyBjb250YWluaW5nICVzLCBwcmUtZGVwZW5kZW5jeSBwcm9ibGVtOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZ8KgOiBjb25jZXJuYW50ICVzIGNvbnRlbmFudCAlcywgcHJvYmzDqG1lIGRlIHByw6ktZMOpcGVuZGFuY2XCoDpcbiIKKyIlcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1MjYKKyMsIGMtZm9ybWF0Cittc2dpZCAicHJlLWRlcGVuZGVuY3kgcHJvYmxlbSAtIG5vdCBpbnN0YWxsaW5nICUuMjUwcyIKK21zZ3N0ciAicHJvYmzDqG1lIGRlIHByw6ktZMOpcGVuZGFuY2UgLSAlLjI1MHMgbm9uIGluc3RhbGzDqSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1MjcKK21zZ2lkICJpZ25vcmluZyBwcmUtZGVwZW5kZW5jeSBwcm9ibGVtISIKK21zZ3N0ciAicHJvYmzDqG1lIGRlIHByw6ktZMOpcGVuZGFuY2UgaWdub3LDqSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHJlcGFyaW5nIHRvIHJlcGxhY2UgJXMgJXMgKHVzaW5nICVzKSAuLi5cbiIKK21zZ3N0ciAiUHLDqXBhcmF0aW9uIGR1IHJlbXBsYWNlbWVudCBkZSAlcyAlcyAoZW4gdXRpbGlzYW50ICVzKSAuLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiVW5wYWNraW5nICVzIChmcm9tICVzKSAuLi5cbiIKK21zZ3N0ciAiRMOpcGFxdWV0YWdlIGRlICVzICjDoCBwYXJ0aXIgZGUgJXMpIC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjU4MAorIywgYy1mb3JtYXQKK21zZ2lkICJuYW1lIG9mIGNvbmZmaWxlIChzdGFydGluZyBgJS4yNTBzJykgaXMgdG9vIGxvbmcgKD4lZCBjaGFyYWN0ZXJzKSIKK21zZ3N0ciAiIgorImxlIG5vbSBkdSBjb25mZmlsZSAoY29tbWVuw6dhbnQgcGFyIMKrwqAlLjI1MHPCoMK7KSBlc3QgdHJvcCBsb25nICg+JWQgY2FyYWN0w6hyZXMpIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjYzMyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA3MQorIywgYy1mb3JtYXQKK21zZ2lkICJyZWFkIGVycm9yIGluICUuMjUwcyIKK21zZ3N0ciAiZXJyZXVyIGRlIGxlY3R1cmUgZGFucyAlLjI1MHMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjM1CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgJS4yNTBzIgorbXNnc3RyICJlcnJldXIgZGUgZmVybWV0dXJlIGRlICUuMjUwcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2MzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgdHJ5aW5nIHRvIG9wZW4gJS4yNTBzIgorbXNnc3RyICJlcnJldXIgc3VydmVudWUgZW4gZXNzYXlhbnQgZCdvdXZyaXIgJS4yNTBzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjY3OAorIywgYy1mb3JtYXQKK21zZ2lkICJEZS1jb25maWd1cmluZyAlcywgdG8gYWxsb3cgcmVtb3ZhbCBvZiAlcyAuLi5cbiIKK21zZ3N0ciAiRMOpY29uZmlndXJhdGlvbiBkZSAlcywgcG91ciBwb3V2b2lyIHN1cHByaW1lciAlcyAuLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGUtY29uZmlndXJpbmcgJXMgLi4uXG4iCittc2dzdHIgIkTDqWNvbmZpZ3VyYXRpb24gZGUgJXMgLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NzU1CisjLCBjLWZvcm1hdAorbXNnaWQgIlVucGFja2luZyByZXBsYWNlbWVudCAlLjI1MHMgLi4uXG4iCittc2dzdHIgIkTDqXBhcXVldGFnZSBkZSBsYSBtaXNlIMOgIGpvdXIgZGUgJS4yNTBzIC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjg0MAorbXNnaWQgInBhY2thZ2UgZmlsZXN5c3RlbSBhcmNoaXZlIGV4dHJhY3Rpb24iCittc2dzdHIgImV4dHJhY3Rpb24gZGUgbCdhcmNoaXZlIGR1IHN5c3TDqG1lIGRlIGZpY2hpZXJzIGR1IHBhcXVldCIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NTQKK21zZ2lkICJlcnJvciByZWFkaW5nIGRwa2ctZGViIHRhciBvdXRwdXQiCittc2dzdHIgImVycmV1ciBkZSBsZWN0dXJlIHN1ciBsYSBzb3J0aWUgZHUgwqvCoHRhcsKgwrsgZGUgZHBrZy1kZWIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6ODU2Cittc2dpZCAiY29ycnVwdGVkIGZpbGVzeXN0ZW0gdGFyZmlsZSAtIGNvcnJ1cHRlZCBwYWNrYWdlIGFyY2hpdmUiCittc2dzdHIgImFyY2hpdmUgZHUgc3lzdMOobWUgZGUgZmljaGllcnMgY29ycm9tcHVlIC0gYXJjaGl2ZSBkdSBwYXF1ZXQgY29ycm9tcHVlIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjg1OQorbXNnaWQgImRwa2ctZGViOiB6YXAgcG9zc2libGUgdHJhaWxpbmcgemVyb3MiCittc2dzdHIgIiIKKyJkcGtnLWRlYsKgOiBzdXBwcmVzc2lvbiBkZSBwb3NzaWJsZXMgesOpcm9zIGZpbmF1eCAoaS5lLiBkZSDCq8KgdHJhaWxpbmfCoMK7KSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5MTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHN0YXQgb2xkIGZpbGUgJyUuMjUwcycgc28gbm90IGRlbGV0aW5nIGl0OiAlcyIKK21zZ3N0ciAiIgorImltcG9zc2libGUgZCdhbmFseXNlciBsJ2FuY2llbiBmaWNoaWVyIMKrwqAlLjI1MHPCoMK7LiBJbCBuJ2EgZG9uYyBwYXMgw6l0w6kgIgorImVmZmFjw6nCoDogJXMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTI1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkZWxldGUgb2xkIGRpcmVjdG9yeSAnJS4yNTBzJzogJXMiCittc2dzdHIgImltcG9zc2libGUgZGUgc3VwcHJpbWVyIGwnYW5jaWVuIHLDqXBlcnRvaXJlICDCq8KgJS4yNTBzwqDCu8KgOiAlcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAib2xkIGNvbmZmaWxlICclLjI1MHMnIHdhcyBhbiBlbXB0eSBkaXJlY3RvcnkgKGFuZCBoYXMgbm93IGJlZW4gZGVsZXRlZCkiCittc2dzdHIgIiIKKyJsJ2FuY2llbiBmaWNoaWVyIGRlIGNvbmZpZ3VyYXRpb24gwqvCoCUuMjUwc8Kgwrsgw6l0YWl0IHVuIHLDqXBlcnRvaXJlIHZpZGUgZXQgYSAiCisiw6l0w6kgc3VwcHJpbcOpIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjk3NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBvdGhlciBuZXcgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkJ2FuYWx5c2VyIHVuIGF1dHJlIG5vdXZlYXUgZmljaGllciDCq8KgJS4yNTBzwqDCuyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm9sZCBmaWxlICclLjI1MHMnIGlzIHRoZSBzYW1lIGFzIHNldmVyYWwgbmV3IGZpbGVzISAoYm90aCAnJS4yNTBzJyBhbmQgIgorIiclLjI1MHMnKSIKK21zZ3N0ciAiIgorImwnYW5jaWVuIGZpY2hpZXIgwqvCoCUuMjUwc8KgwrsgZXN0IGlkZW50aXF1ZSDDoCBwbHVzaWV1cnMgIG5vdXZlYXV4IGZpY2hpZXJzICjDoCAiCisibGEgZm9pcyDCq8KgJS4yNTBzwqDCuyBldCDCq8KgJS4yNTBzwqDCuykiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTAyNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2VjdXJlbHkgcmVtb3ZlIG9sZCBmaWxlICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkZSBzdXBwcmltZXIgbCdhbmNpZW4gZmljaGllciDCq8KgJS4yNTBzwqDCuyBkZSBmYcOnb24gc8O7cmXCoDogJXMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTIwNgorIywgYy1mb3JtYXQKK21zZ2lkICIoTm90aW5nIGRpc2FwcGVhcmFuY2Ugb2YgJXMsIHdoaWNoIGhhcyBiZWVuIGNvbXBsZXRlbHkgcmVwbGFjZWQuKVxuIgorbXNnc3RyICIow4Agbm90ZXIgbGEgZGlzcGFyaXRpb24gZGUgJXMsIHF1aSBhIMOpdMOpIGNvbXBsw6h0ZW1lbnQgcmVtcGxhY8OpLilcbiIKKworIy4gVFJBTlNMQVRPUlM6IFRoaXMgaXMgdGhlIGhlYWRlciB0aGF0IGFwcGVhcnMgb24gJ2Rwa2ctcXVlcnkgLWwnLiBUaGUKKyMuICogc3RyaW5nIHNob3VsZCByZW1haW4gdW5kZXIgODAgY2hhcmFjdGVycy4gVGhlIHVwcGVyY2FzZSBsZXR0ZXJzIGluCisjLiAqIHRoZSBzdGF0ZSB2YWx1ZXMgZGVub3RlIHRoZSBhYmJyZXZpYXRlZCBsZXR0ZXIgdGhhdCB3aWxsIGFwcGVhciBvbgorIy4gKiB0aGUgZmlyc3QgdGhyZWUgY29sdW1ucywgd2hpY2ggc2hvdWxkIGlkZWFsbHkgbWF0Y2ggdGhlIEVuZ2xpc2ggb25lCisjLiAqIChlLmcuIFJlbW92ZSDihpIgc3VwUmltZWl4KSwgc2VlIGRwa2ctcXVlcnkoMSkgZm9yIGZ1cnRoZXIgZGV0YWlscy4gVGhlCisjLiAqIHRyYW5zbGF0ZWQgbWVzc2FnZSBjYW4gdXNlIGFkZGl0aW9uYWwgbGluZXMgaWYgbmVlZGVkLgorIzogc3JjL3F1ZXJ5Y21kLmM6MTQ5Cittc2dpZCAiIgorIkRlc2lyZWQ9VW5rbm93bi9JbnN0YWxsL1JlbW92ZS9QdXJnZS9Ib2xkXG4iCisifCBTdGF0dXM9Tm90L0luc3QvQ29uZi1maWxlcy9VbnBhY2tlZC9oYWxGLWNvbmYvSGFsZi1pbnN0L3RyaWctYVdhaXQvVHJpZy0iCisicGVuZFxuIgorInwvIEVycj89KG5vbmUpL1JlaW5zdC1yZXF1aXJlZCAoU3RhdHVzLEVycjogdXBwZXJjYXNlPWJhZClcbiIKK21zZ3N0ciAiIgorIlNvdWhhaXQ9aW5jb25uVS9JbnN0YWxsw6kvc3VwcFJpbcOpL1B1cmfDqS9IPcOgIGdhcmRlclxuIgorInwgw4l0YXQ9Tm9uL0luc3RhbGzDqS9maWNoaWVyLUNvbmZpZy9kw6lwYXFVZXTDqS/DqWNoZWMtY29uRmlnL0g9c2VtaS1pbnN0YWxsw6kvIgorIlc9YXR0ZW5kLXRyYWl0ZW1lbnQtZMOpY2xlbmNoZW1lbnRzXG4iCisifC8gRXJyPz0oYXVjdW5lKS9iZXNvaW4gUsOpaW5zdGFsbGF0aW9uICjDiXRhdCxFcnI6IG1hanVzY3VsZT1tYXV2YWlzKVxuIgorCisjOiBzcmMvcXVlcnljbWQuYzoxNTMKK21zZ2lkICJOYW1lIgorbXNnc3RyICJOb20iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjE1MworbXNnaWQgIlZlcnNpb24iCittc2dzdHIgIlZlcnNpb24iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjE1NAorbXNnaWQgIkRlc2NyaXB0aW9uIgorbXNnc3RyICJEZXNjcmlwdGlvbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MjQ2IHNyYy9xdWVyeWNtZC5jOjUxMSBzcmMvc2VsZWN0LmM6NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiTm8gcGFja2FnZXMgZm91bmQgbWF0Y2hpbmcgJXMuXG4iCittc2dzdHIgIkF1Y3VuIHBhcXVldCBuZSBjb3JyZXNwb25kIMOgICVzLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJzaW9uIGJ5ICVzIGZyb206ICVzXG4iCittc2dzdHIgImTDqXRvdXJuZW1lbnQgcGFyICVzIGRlcHVpc8KgOiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJzaW9uIGJ5ICVzIHRvOiAlc1xuIgorbXNnc3RyICJkw6l0b3VybmVtZW50IHBhciAlcyBlbsKgOiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9jYWwgZGl2ZXJzaW9uIGZyb206ICVzXG4iCittc2dzdHIgImTDqXRvdXJuZW1lbnQgbG9jYWwgZGVwdWlzwqA6ICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI3OQorIywgYy1mb3JtYXQKK21zZ2lkICJsb2NhbCBkaXZlcnNpb24gdG86ICVzXG4iCittc2dzdHIgImTDqXRvdXJuZW1lbnQgbG9jYWxlbWVudCBlbsKgOiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzozMDkKK21zZ2lkICItLXNlYXJjaCBuZWVkcyBhdCBsZWFzdCBvbmUgZmlsZSBuYW1lIHBhdHRlcm4gYXJndW1lbnQiCittc2dzdHIgIiIKKyItLXNlYXJjaCBhIGJlc29pbiBkJ2F1IG1vaW5zIHVuIG1vdGlmIGRlIG5vbSBkZSBmaWNoaWVyIGNvbW1lIHBhcmFtw6h0cmUiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjM1MAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogbm8gcGF0aCBmb3VuZCBtYXRjaGluZyBwYXR0ZXJuICVzLlxuIgorbXNnc3RyICIlc8KgOsKgYXVjdW4gY2hlbWluIG5lIGNvcnJlc3BvbmQgw6AgJXMuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjM5MworIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlIGAlcycgaXMgbm90IGluc3RhbGxlZCBhbmQgbm8gaW5mbyBpcyBhdmFpbGFibGUuXG4iCittc2dzdHIgIiIKKyJMZSBwYXF1ZXQgwqvCoCVzwqDCuyBuJ2VzdCBwYXMgaW5zdGFsbMOpIGV0IGF1Y3VuZSBpbmZvcm1hdGlvbiBuJ2VzdCBkaXNwb25pYmxlLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSBgJXMnIGlzIG5vdCBhdmFpbGFibGUuXG4iCittc2dzdHIgIkxlIHBhcXVldCDCq8KgJXPCoMK7IG4nZXN0IHBhcyBkaXNwb25pYmxlLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MTAgc3JjL3F1ZXJ5Y21kLmM6NTg1CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgYCVzJyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICJMZSBwYXF1ZXQgwqvCoCVzwqDCuyBuJ2VzdCBwYXMgaW5zdGFsbMOpLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSBgJXMnIGRvZXMgbm90IGNvbnRhaW4gYW55IGZpbGVzICghKVxuIgorbXNnc3RyICJMZSBwYXF1ZXQgwqvCoCVzwqDCuyBuZSBjb250aWVudCBhdWN1biBmaWNoaWVyICghKVxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9jYWxseSBkaXZlcnRlZCB0bzogJXNcbiIKK21zZ3N0ciAiZMOpdG91cm7DqSBsb2NhbGVtZW50IGVuwqA6wqAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBkaXZlcnRzIG90aGVycyB0bzogJXNcbiIKK21zZ3N0ciAicGFxdWV0IGTDqXRvdXJuYW50IGxlcyBhdXRyZXMgdmVyc8KgOsKgJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDMxCisjLCBjLWZvcm1hdAorbXNnaWQgImRpdmVydGVkIGJ5ICVzIHRvOiAlc1xuIgorbXNnc3RyICJkw6l0b3VybsOpIHBhciAlcyB2ZXJzwqA6wqAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0NTIKK21zZ2lkICIiCisiVXNlIGRwa2cgLS1pbmZvICg9IGRwa2ctZGViIC0taW5mbykgdG8gZXhhbWluZSBhcmNoaXZlIGZpbGVzLFxuIgorImFuZCBkcGtnIC0tY29udGVudHMgKD0gZHBrZy1kZWIgLS1jb250ZW50cykgdG8gbGlzdCB0aGVpciBjb250ZW50cy5cbiIKK21zZ3N0ciAiIgorIlV0aWxpc2V6IGRwa2cgLS1pbmZvICg9IGRwa2ctZGViIC0taW5mbykgcG91ciBleGFtaW5lciBsZXMgZmljaGllcnNcbiIKKyJhcmNoaXZlcywgZXQgZHBrZyAtLWNvbnRlbnRzICg9IGRwa2ctZGViIC0tY29udGVudHMpIHBvdXIgYWZmaWNoZXIgbGV1clxuIgorImNvbnRlbnUuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjU3MAorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIHRha2VzIGF0IG1vc3QgdHdvIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS0lcyBwcmVuZCBhdSBwbHVzIGRldXggcGFyYW3DqHRyZXMiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjU3OAorIywgYy1mb3JtYXQKK21zZ2lkICJjb250cm9sIGZpbGUgY29udGFpbnMgJWMiCittc2dzdHIgImxlIGZpY2hpZXIgZGUgY29udHLDtGxlIGNvbnRpZW50ICVjIgorCisjOiBzcmMvcXVlcnljbWQuYzo2MDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuICVzIHBhY2thZ2UgbWFuYWdlbWVudCBwcm9ncmFtIHF1ZXJ5IHRvb2wgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiIgorIk91dGlsIMKrwqAlc8KgwrsgZCdpbnRlcnJvZ2F0aW9uIGR1IHByb2dyYW1tZSBkZSBnZXN0aW9uIGRlIHBhcXVldHMgRGViaWFuICIKKyJ2ZXJzaW9uICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjYxOQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtc3wtLXN0YXR1cyA8cGFja2FnZT4gLi4uICAgICAgICBEaXNwbGF5IHBhY2thZ2Ugc3RhdHVzIGRldGFpbHMuXG4iCisiICAtcHwtLXByaW50LWF2YWlsIDxwYWNrYWdlPiAuLi4gICBEaXNwbGF5IGF2YWlsYWJsZSB2ZXJzaW9uIGRldGFpbHMuXG4iCisiICAtTHwtLWxpc3RmaWxlcyA8cGFja2FnZT4gLi4uICAgICBMaXN0IGZpbGVzIGBvd25lZCcgYnkgcGFja2FnZShzKS5cbiIKKyIgIC1sfC0tbGlzdCBbPHBhdHRlcm4+IC4uLl0gICAgICAgIExpc3QgcGFja2FnZXMgY29uY2lzZWx5LlxuIgorIiAgLVd8LS1zaG93IFs8cGF0dGVybj4gLi4uXSAgICAgICAgU2hvdyBpbmZvcm1hdGlvbiBvbiBwYWNrYWdlKHMpLlxuIgorIiAgLVN8LS1zZWFyY2ggPHBhdHRlcm4+IC4uLiAgICAgICAgRmluZCBwYWNrYWdlKHMpIG93bmluZyBmaWxlKHMpLlxuIgorIiAgLWN8LS1jb250cm9sLXBhdGggPHBhY2thZ2U+IFs8ZmlsZT5dXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQcmludCBwYXRoIGZvciBwYWNrYWdlIGNvbnRyb2wgZmlsZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIkNvbW1hbmRlc8KgOlxuIgorIiAgLXN8LS1zdGF0dXMgPG5vbS1kZS1wYXF1ZXQ+IC4uLiAgICAgIGFmZmljaGUgbCfDqXRhdCBkdSBwYXF1ZXQgZW4gZMOpdGFpbFxuIgorIiAgLXB8LS1wcmludC1hdmFpbCA8bm9tLWRlLXBhcXVldD4gLi4uIGFmZmljaGUgbGVzIHZlcnNpb25zIGRpc3BvbmlibGVzIGVuXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZMOpdGFpbC5cbiIKKyIgIC1MfC0tbGlzdGZpbGVzIDxub20tZGUtcGFxdWV0PiAuLi4gICBsaXN0ZSBsZXMgZmljaGllcnMgwqvCoHBvc3PDqWTDqXPCoMK7IHBhclxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlKHMpIHBhcXVldChzKS5cbiIKKyIgIC1sfC0tbGlzdCBbPG1vdGlmPiAuLi5dICAgICAgICAgICAgICBsaXN0ZSBsZShzKSBwYXF1ZXQocykgYnJpw6h2ZW1lbnQuXG4iCisiICAtV3wtLXNob3cgPG1vdGlmPiAuLi4gICAgICAgICAgICAgICAgbW9udHJlIGRlcyBpbmZvcm1hdGlvbnMgc3VyIGxlKHMpXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFxdWV0KHMpLlxuIgorIiAgLVN8LS1zZWFyY2ggPG1vdGlmPiAuLi4gICAgICAgICAgICAgIGNoZXJjaGUgbGUgcGFxdWV0IHBvc3PDqWRhbnQgbGUocylcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWNoaWVycy5cbiIKKyIgIC1jfC0tY29udHJvbC1wYXRoIDxwYXF1ZXQ+IFs8ZmljaGllcj5dXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWZmaWNoZSBsZSBjaGVtaW4gZHUgZmljaGllciBkZSAiCisiY29udHLDtGxlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZHUgcGFxdWV0LlxuIgorIlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo2MzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgICAgICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyIgIC1mfC0tc2hvd2Zvcm1hdD08Zm9ybWF0PiAgICAgICAgIFVzZSBhbHRlcm5hdGl2ZSBmb3JtYXQgZm9yIC0tc2hvdy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIk9wdGlvbnPCoDpcbiIKKyIgIC0tYWRtaW5kaXI9PHLDqXBlcnRvaXJlPiAgIFV0aWxpc2VyIDxyw6lwZXJ0b2lyZT4gw6AgbGEgcGxhY2UgZGUgJXNcbiIKKyIgIC0tc2hvd2Zvcm1hdD08Zm9ybWF0PiAgICAgVXRpbGlzZXIgdW4gZm9ybWF0YWdlIGFsdGVybmF0aWYgcG91ciAtLXNob3dcbiIKKyJcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjQyIGRwa2ctZGViL21haW4uYzoxMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkZvcm1hdCBzeW50YXg6XG4iCisiICBBIGZvcm1hdCBpcyBhIHN0cmluZyB0aGF0IHdpbGwgYmUgb3V0cHV0IGZvciBlYWNoIHBhY2thZ2UuIFRoZSBmb3JtYXRcbiIKKyIgIGNhbiBpbmNsdWRlIHRoZSBzdGFuZGFyZCBlc2NhcGUgc2VxdWVuY2VzIFxcbiAobmV3bGluZSksIFxcciAoY2FycmlhZ2VcbiIKKyIgIHJldHVybikgb3IgXFxcXCAocGxhaW4gYmFja3NsYXNoKS4gUGFja2FnZSBpbmZvcm1hdGlvbiBjYW4gYmUgaW5jbHVkZWRcbiIKKyIgIGJ5IGluc2VydGluZyB2YXJpYWJsZSByZWZlcmVuY2VzIHRvIHBhY2thZ2UgZmllbGRzIHVzaW5nIHRoZSAke3Zhcls7IgorIndpZHRoXX1cbiIKKyIgIHN5bnRheC4gRmllbGRzIHdpbGwgYmUgcmlnaHQtYWxpZ25lZCB1bmxlc3MgdGhlIHdpZHRoIGlzIG5lZ2F0aXZlIGluICIKKyJ3aGljaFxuIgorIiAgY2FzZSBsZWZ0IGFsaWdubWVudCB3aWxsIGJlIHVzZWQuXG4iCittc2dzdHIgIiIKKyJTeW50YXhlIGR1IGZvcm1hdGFnZcKgOlxuIgorIiAgVW4gZm9ybWF0YWdlIGVzdCB1bmUgY2hhw65uZSBxdWkgc2VyYSBhZmZpY2jDqWUgcG91ciBjaGFxdWUgcGFxdWV0LlxuIgorIiAgRWxsZSBwZXV0IGNvbnRlbmlyIGxlcyDDqWNoYXBwZW1lbnRzIGNsYXNzaXF1ZXMgXFxuIChub3V2ZWxsZSBsaWduZSksXG4iCisiICBcXHIgKHJldG91ciDDoCBsYSBsaWduZSkgb3UgXFxcXCAoYmFja3NsYXNoKS4gRGVzIGluZm9ybWF0aW9ucyBzdXJcbiIKKyIgIGxlcyBwYXF1ZXRzIHBldXZlbnQgw6p0cmUgaW5jbHVzZXMgZW4gdXRpbGlzYW50IGxhIHN5bnRheGVcbiIKKyIgICR7dmFyWzt3aWR0aF19ICh0YWlsbGUpLiBMZXMgY2hhbXBzIHNlcm9udCBhbGlnbsOpcyDDoCBkcm9pdGUsIMOgIG1vaW5zIHF1ZSAiCisibGFcbiIKKyIgIHRhaWxsZSBzcMOpY2lmacOpZSBuZSBzb2l0IG7DqWdhdGl2ZSwgYXVxdWVsIGNhcyB1biBhbGlnbmVtZW50IMOgIGdhdWNoZVxuIgorIiAgc2VyYSBhcHBsaXF1w6kuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjY1NgorbXNnaWQgIlVzZSAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgcXVlcnlpbmcgcGFja2FnZXMuIgorbXNnc3RyICJVdGlsaXNlciAtLWhlbHAgcG91ciBkZSBsJ2FpZGUgc3VyIGxhIHJlY2hlcmNoZSBkZSBwYXF1ZXRzLiIKKworIzogc3JjL3JlbW92ZS5jOjg4CisjLCBjLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nIHJlcXVlc3QgdG8gcmVtb3ZlICUuMjUwcyB3aGljaCBpc24ndCBpbnN0YWxsZWQuIgorbXNnc3RyICJyZXF1w6p0ZSBpZ25vcsOpZcKgOiBzdXBwcmVzc2lvbiBkZSAlLjI1MHMsIHF1aSBuJ2VzdCBwYXMgaW5zdGFsbMOpLiIKKworIzogc3JjL3JlbW92ZS5jOjk1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpZ25vcmluZyByZXF1ZXN0IHRvIHJlbW92ZSAlLjI1MHMsIG9ubHkgdGhlIGNvbmZpZ1xuIgorIiBmaWxlcyBvZiB3aGljaCBhcmUgb24gdGhlIHN5c3RlbS4gVXNlIC0tcHVyZ2UgdG8gcmVtb3ZlIHRoZW0gdG9vLiIKK21zZ3N0ciAiIgorInJlcXXDqnRlIHBvdXIgc3VwcHJpbWVyICUuMjUwcyBpZ25vcsOpZSwgc2V1bHMgbGVzIGZpY2hpZXJzXG4iCisiZGUgY29uZmlndXJhdGlvbiBzb250IGluc3RhbGzDqXMuIFV0aWxpc2VyIC0tcHVyZ2UgcG91ciBsZXMgc3VwcHJpbWVyIGF1c3NpLiIKKworIzogc3JjL3JlbW92ZS5jOjEwMworbXNnaWQgIlRoaXMgaXMgYW4gZXNzZW50aWFsIHBhY2thZ2UgLSBpdCBzaG91bGQgbm90IGJlIHJlbW92ZWQuIgorbXNnc3RyICJDJ2VzdCB1biBwYXF1ZXQgaW5kaXNwZW5zYWJsZSAtIGlsIG5lIGRvaXQgcGFzIMOqdHJlIHN1cHByaW3DqS4iCisKKyM6IHNyYy9yZW1vdmUuYzoxMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IGRlcGVuZGVuY3kgcHJvYmxlbXMgcHJldmVudCByZW1vdmFsIG9mICVzOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZ8KgOiB1biBwcm9ibMOobWUgZGUgZMOpcGVuZGFuY2UgZW1ww6pjaGUgbGEgc3VwcHJlc3Npb24gZGUgJXPCoDpcbiIKKyIlcyIKKworIzogc3JjL3JlbW92ZS5jOjEzMAorbXNnaWQgImRlcGVuZGVuY3kgcHJvYmxlbXMgLSBub3QgcmVtb3ZpbmciCittc2dzdHIgInByb2Jsw6htZSBkZSBkw6lwZW5kYW5jZSAtIHN1cHByZXNzaW9uIGlnbm9yw6llIgorCisjOiBzcmMvcmVtb3ZlLmM6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiAlczogZGVwZW5kZW5jeSBwcm9ibGVtcywgYnV0IHJlbW92aW5nIGFueXdheSBhcyB5b3UgcmVxdWVzdGVkOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZ8KgOiAlc8KgOiBwcm9ibMOobWUgZGUgZMOpcGVuZGFuY2UsIG1haXMgc3VwcHJlc3Npb24gY29tbWUgZGVtYW5kw6nCoDpcbiIKKyIlcyIKKworIzogc3JjL3JlbW92ZS5jOjE0MgorbXNnaWQgIiIKKyJQYWNrYWdlIGlzIGluIGEgdmVyeSBiYWQgaW5jb25zaXN0ZW50IHN0YXRlIC0geW91IHNob3VsZFxuIgorIiByZWluc3RhbGwgaXQgYmVmb3JlIGF0dGVtcHRpbmcgYSByZW1vdmFsLiIKK21zZ3N0ciAiIgorIkxlIHBhcXVldCBlc3QgZGFucyB1biDDqXRhdCBpbmNvaMOpcmVudCAtIHZvdXMgZGV2cmllelxuIgorIiBsZSByw6lpbnN0YWxsZXIgYXZhbnQgZCdlc3NheWVyIGRlIGxlIHN1cHByaW1lci4iCisKKyM6IHNyYy9yZW1vdmUuYzoxNDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiV291bGQgcmVtb3ZlIG9yIHB1cmdlICVzIC4uLlxuIgorbXNnc3RyICJEZXZyYWl0IHN1cHByaW1lciBvdSBwdXJnZXIgJXMgLi4uXG4iCisKKyM6IHNyYy9yZW1vdmUuYzoxNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVtb3ZpbmcgJXMgLi4uXG4iCittc2dzdHIgIlN1cHByZXNzaW9uIGRlICVzIC4uLlxuIgorCisjOiBzcmMvcmVtb3ZlLmM6Mjc1IHNyYy9yZW1vdmUuYzozNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIndoaWxlIHJlbW92aW5nICUuMjUwcywgdW5hYmxlIHRvIHJlbW92ZSBkaXJlY3RvcnkgJyUuMjUwcyc6ICVzIC0gZGlyZWN0b3J5ICIKKyJtYXkgYmUgYSBtb3VudCBwb2ludD8iCittc2dzdHIgIiIKKyJsb3JzIGRlIGxhIHN1cHByZXNzaW9uIGRlICUuMjUwcywgaW1wb3NzaWJsZSBkZSByZXRpcmVyIMKrwqAlLjI1MHPCoMK7wqA6ICVzIC0gIgorInBldXQtw6p0cmUgbGUgcsOpcGVydG9pcmUgZXN0LWlsIHVuIHBvaW50IGRlIG1vbnRhZ2XCoD8iCisKKyM6IHNyYy9yZW1vdmUuYzoyODkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNlY3VyZWx5IHJlbW92ZSAnJS4yNTBzJyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkZSBzdXBwcmltZXIgwqvCoCUuMjU1c8KgwrsgZGUgZmHDp29uIHPDu3JlLiIKKworIzogc3JjL3JlbW92ZS5jOjM2MQorIywgYy1mb3JtYXQKK21zZ2lkICJ3aGlsZSByZW1vdmluZyAlLjI1MHMsIGRpcmVjdG9yeSAnJS4yNTBzJyBub3QgZW1wdHkgc28gbm90IHJlbW92ZWQuIgorbXNnc3RyICIiCisibG9ycyBkZSBsYSBzdXBwcmVzc2lvbiBkZSAlLjI1MHMsIGxlIHLDqXBlcnRvaXJlIMKrwqAlLjI1MHPCoMK7IG4nw6l0YWl0IHBhcyB2aWRlLCAiCisiZG9uYyBpbCBuJ2EgcGFzIMOpdMOpIHN1cHByaW3DqS4iCisKKyM6IHNyYy9yZW1vdmUuYzozODMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImNhbm5vdCByZW1vdmUgYCUuMjUwcyciCittc2dpZCAiY2Fubm90IHJlbW92ZSAnJS4yNTBzJyIKK21zZ3N0ciAibmUgcGV1dCBwYXMgc3VwcHJpbWVyIMKrwqAlLjI1MHPCoMK7IgorCisjOiBzcmMvcmVtb3ZlLmM6NDA5CisjLCBjLWZvcm1hdAorbXNnaWQgIlB1cmdpbmcgY29uZmlndXJhdGlvbiBmaWxlcyBmb3IgJXMgLi4uXG4iCittc2dzdHIgIlB1cmdlIGRlcyBmaWNoaWVycyBkZSBjb25maWd1cmF0aW9uIGRlICVzIC4uLlxuIgorCisjOiBzcmMvcmVtb3ZlLmM6NDU5CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZW1vdmUgb2xkIGNvbmZpZyBmaWxlIGAlLjI1MHMnICg9IGAlLjI1MHMnKSIKK21zZ3N0ciAiIgorIm5lIHBldXQgcGFzIHN1cHByaW1lciBsJ2FuY2llbiBmaWNoaWVyIGRlIGNvbmZpZ3VyYXRpb24gwqvCoCUuMjUwc8KgwrsgKD0gIgorIsKrwqAlLjI1MHPCoMK7KSIKKworIzogc3JjL3JlbW92ZS5jOjQ3NAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVhZCBjb25maWcgZmlsZSBkaXIgYCUuMjUwcycgKGZyb20gYCUuMjUwcycpIgorbXNnc3RyICIiCisibmUgcGV1dCBwYXMgbGlyZSBsZSByw6lwZXJ0b2lyZSBkdSBmaWNoaWVyIGRlIGNvbmZpZ3VyYXRpb24gwqvCoCUuMjUwc8KgwrsgKGRlICIKKyLCq8KgJS4yNTBzwqDCuykiCisKKyM6IHNyYy9yZW1vdmUuYzo1MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlbW92ZSBvbGQgYmFja3VwIGNvbmZpZyBmaWxlIGAlLjI1MHMnIChvZiBgJS4yNTBzJykiCittc2dzdHIgIiIKKyJuZSBwZXV0IHBhcyBzdXBwcmltZXIgbCdhbmNpZW4gZmljaGllciBkZSBjb25maWd1cmF0aW9uIGRlIHNlY291cnMgIgorIsKrwqAlLjI1MHPCoMK7IChkZSDCq8KgJS4yNTBzwqDCuykiCisKKyM6IHNyYy9yZW1vdmUuYzo1NjgKK21zZ2lkICJjYW5ub3QgcmVtb3ZlIG9sZCBmaWxlcyBsaXN0IgorbXNnc3RyICJuZSBwZXV0IHBhcyBzdXBwcmltZXIgbGEgbGlzdGUgZGVzIGFuY2llbnMgZmljaGllcnMiCisKKyM6IHNyYy9yZW1vdmUuYzo1NzQKK21zZ2lkICJjYW4ndCByZW1vdmUgb2xkIHBvc3RybSBzY3JpcHQiCittc2dzdHIgIm5lIHBldXQgcGFzIHN1cHByaW1lciBsJ2FuY2llbiBzY3JpcHQgwqvCoHBvc3RybcKgwrsiCisKKyM6IHNyYy9zZWxlY3QuYzoxMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgaW4gcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQiCittc2dzdHIgIkVPRiBpbmF0dGVuZHUgZGFucyBsZSBub20gZHUgcGFxdWV0IMOgIGxhIGxpZ25lICVkIgorCisjOiBzcmMvc2VsZWN0LmM6MTE2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGxpbmUgaW4gcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQiCittc2dzdHIgImZpbiBkZSBsaWduZSBpbmF0dGVuZHVlIGRhbnMgbGUgbm9tIGR1IHBhcXVldCDDoCBsYSBsaWduZSAlZCIKKworIzogc3JjL3NlbGVjdC5jOjEyMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVvZiBhZnRlciBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZCIKK21zZ3N0ciAiRU9GIGluYXR0ZW5kdSBhcHLDqHMgbGUgbm9tIGR1IHBhcXVldCDDoCBsYSBsaWduZSAlZCIKKworIzogc3JjL3NlbGVjdC5jOjEyMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBsaW5lIGFmdGVyIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICJmaW4gZGUgbGlnbmUgaW5hdHRlbmR1ZSBhcHLDqHMgbGUgbm9tIGR1IHBhcXVldCDDoCBsYSBsaWduZSAlZCIKKworIzogc3JjL3NlbGVjdC5jOjEzNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGRhdGEgYWZ0ZXIgcGFja2FnZSBhbmQgc2VsZWN0aW9uIGF0IGxpbmUgJWQiCittc2dzdHIgImRvbm7DqWVzIGluYXR0ZW5kdWVzIGFwcsOocyBsZSBwYXF1ZXQgZXQgbGEgc8OpbGVjdGlvbiDDoCBsYSBsaWduZSAlZCIKKworIzogc3JjL3NlbGVjdC5jOjEzOQorIywgYy1mb3JtYXQKK21zZ2lkICJpbGxlZ2FsIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkOiAlLjI1MHMiCittc2dzdHIgIm5vbSBkZSBwYXF1ZXQgaWxsw6lnYWwgw6AgbGEgbGlnbmUgJWTCoDogJS4yNTBzIgorCisjOiBzcmMvc2VsZWN0LmM6MTQzCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gd2FudGVkIHN0YXR1cyBhdCBsaW5lICVkOiAlLjI1MHMiCittc2dzdHIgIsOpdGF0IGTDqXNpcsOpIGluY29ubnUgw6AgbGEgbGlnbmUgJWTCoDogJS4yNTBzIgorCisjOiBzcmMvc2VsZWN0LmM6MTQ5Cittc2dpZCAicmVhZCBlcnJvciBvbiBzdGFuZGFyZCBpbnB1dCIKK21zZ3N0ciAiZXJyZXVyIGRlIGxlY3R1cmUgc3VyIGwnZW50csOpZSBzdGFuZGFyZCIKKworIzogc3JjL3N0YXRjbWQuYzo1MgorIywgZnV6enkKKyN8IG1zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IHF1ZXJ5aW5nIHBhY2thZ2VzLiIKK21zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IG92ZXJyaWRpbmcgZmlsZSBzdGF0IGluZm9ybWF0aW9uLiIKK21zZ3N0ciAiVXRpbGlzZXIgLS1oZWxwIHBvdXIgZGUgbCdhaWRlIHN1ciBsYSByZWNoZXJjaGUgZGUgcGFxdWV0cy4iCisKKyM6IHNyYy9zdGF0Y21kLmM6NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvcHlyaWdodCAoQykgMjAwMCwgMjAwMSBXaWNoZXJ0IEFra2VybWFuLlxuIgorIkNvcHlyaWdodCAoQykgMjAwNi0yMDA5IEd1aWxsZW0gSm92ZXIuXG4iCittc2dzdHIgIiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsIDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDYtMjAwOSBHdWlsbGVtIEpvdmVyLlxuIgorCisjOiBzcmMvc3RhdGNtZC5jOjgxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC0tYWRkIDxvd25lcj4gPGdyb3VwPiA8bW9kZT4gPGZpbGU+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkIGEgbmV3IGVudHJ5IGludG8gdGhlIGRhdGFiYXNlLlxuIgorIiAgLS1yZW1vdmUgPGZpbGU+ICAgICAgICAgIHJlbW92ZSBmaWxlIGZyb20gdGhlIGRhdGFiYXNlLlxuIgorIiAgLS1saXN0IFs8Z2xvYi1wYXR0ZXJuPl0gIGxpc3QgY3VycmVudCBvdmVycmlkZXMgaW4gdGhlIGRhdGFiYXNlLlxuIgorIlxuIgorbXNnc3RyICIiCisiQ29tbWFuZGVzwqA6XG4iCisiICAtLWFkZCA8cHJvcHJpw6l0YWlyZT4gPGdyb3VwZT4gPG1vZGU+IDxmaWNoaWVyPlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGFqb3V0ZXIgdW5lIG5vdXZlbGxlIGVudHLDqWUgZGFucyBsYSBiYXNlIGRlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgZG9ubsOpZXMuXG4iCisiICAtLXJlbW92ZSA8ZmljaGllcj4gICAgICAgc3VwcHJpbWVyIGxlIGZpY2hpZXIgZGUgbGEgYmFzZSBkZSBkb25uw6llcy5cbiIKKyIgIC0tbGlzdCBbPG1vdGlmPl0gICAgICAgICBsaXN0ZSBsZXMgZMOpcm9nYXRpb25zICjCq8Kgb3ZlcnJpZGVzwqDCuykgYWN0dWVsbGVzXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgZGFucyBsYSBiYXNlIGRlIGRvbm7DqWVzLlxuIgorCisjOiBzcmMvc3RhdGNtZC5jOjg5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIHNldCB0aGUgZGlyZWN0b3J5IHdpdGggdGhlIHN0YXRvdmVycmlkZSBmaWxlLlxuIgorIiAgLS11cGRhdGUgICAgICAgICAgICAgICAgIGltbWVkaWF0ZWx5IHVwZGF0ZSBmaWxlIHBlcm1pc3Npb25zLlxuIgorIiAgLS1mb3JjZSAgICAgICAgICAgICAgICAgIGZvcmNlIGFuIGFjdGlvbiBldmVuIGlmIGEgc2FuaXR5IGNoZWNrIGZhaWxzLlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHF1aWV0IG9wZXJhdGlvbiwgbWluaW1hbCBvdXRwdXQuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorbXNnc3RyICIiCisiT3B0aW9uc8KgOlxuIgorIiAgLS1hZG1pbmRpciA8csOpcGVydG9pcmU+ICBwb3NpdGlvbm5lIGxlIHLDqXBlcnRvaXJlIGF2ZWMgbGUgZmljaGllciBkZXNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBwZXJtaXNzaW9ucyAoc3RhdG92ZXJyaWRlKS5cbiIKKyIgIC0tdXBkYXRlICAgICAgICAgICAgICAgICBtZXR0cmUgw6Agam91ciBsZSBmaWNoaWVyIGRlcyBwZXJtaXNzaW9uc1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGltbcOpZGlhdGVtZW50LlxuIgorIiAgLS1mb3JjZSAgICAgICAgICAgICAgICAgIGZvcmNlciB1bmUgYWN0aW9uIHNpIHVuIGNvbnRyw7RsZSBkZSBjb2jDqXJlbmNlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgw6ljaG91ZS5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBvcMOpcmF0aW9uIGRpc2Nyw6h0ZSwgYWZmaWNoYWdlIG1pbmltYWwuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgYWZmaWNoZXIgY2UgbWVzc2FnZSBkJ2FpZGUuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgYWZmaWNoZXIgbGEgdmVyc2lvbi5cbiIKKworIzogc3JjL3N0YXRjbWQuYzoxMTYKK21zZ2lkICJzdHJpcHBpbmcgdHJhaWxpbmcgLyIKK21zZ3N0ciAic3VwcHJlc3Npb24gZHUgLyBmaW5hbCIKKworIzogc3JjL3N0YXRjbWQuYzoyMDcKK21zZ2lkICJjYW5ub3Qgb3BlbiBuZXcgc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgImltcG9zc2libGUgZCdvdXZyaXIgbGUgbm91dmVhdSBmaWNoaWVyIHN0YXRvdmVycmlkZSIKKworIzogc3JjL3N0YXRjbWQuYzoyMjIKK21zZ2lkICJlcnJvciByZW1vdmluZyBzdGF0b3ZlcnJpZGUtb2xkIgorbXNnc3RyICJlcnJldXIgZGUgc3VwcHJlc3Npb24gZGUgc3RhdG92ZXJyaWRlLW9sZCIKKworIzogc3JjL3N0YXRjbWQuYzoyMjQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBuZXcgc3RhdG92ZXJyaWRlLW9sZCIKK21zZ3N0ciAiZXJyZXVyIHBlbmRhbnQgbGEgY3LDqWF0aW9uIGR1IG5vdXZlYXUgc3RhdG92ZXJyaWRlLW9sZCIKKworIzogc3JjL3N0YXRjbWQuYzoyMjYKK21zZ2lkICJlcnJvciBpbnN0YWxsaW5nIG5ldyBzdGF0b3ZlcnJpZGUiCittc2dzdHIgImVycmV1ciBkJ2luc3RhbGxhdGlvbiBkdSBub3V2ZWF1IHN0YXRvdmVycmlkZSIKKworIzogc3JjL3N0YXRjbWQuYzoyNDYKK21zZ2lkICItLWFkZCBuZWVkcyBmb3VyIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS1hZGQgYSBiZXNvaW4gZGUgcXVhdHJlIHBhcmFtw6h0cmVzIgorCisjOiBzcmMvc3RhdGNtZC5jOjI1NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQW4gb3ZlcnJpZGUgZm9yICclcycgYWxyZWFkeSBleGlzdHMsIGJ1dCAtLWZvcmNlIHNwZWNpZmllZCBzbyB3aWxsIGJlICIKKyJpZ25vcmVkLiIKK21zZ3N0ciAiIgorIlVuZSBkw6lyb2dhdGlvbiAowqvCoG92ZXJyaWRlwqDCuykgcG91ciDCq8KgJXPCoMK7IGV4aXN0ZSBkw6lqw6AgbWFpcyAtLWZvcmNlIGEgw6l0w6kgIgorInNww6ljaWZpw6kuIElsIHNlcmEgZG9uYyBpZ25vcsOpLiIKKworIzogc3JjL3N0YXRjbWQuYzoyNjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiQW4gb3ZlcnJpZGUgZm9yICclcycgYWxyZWFkeSBleGlzdHMsIGFib3J0aW5nLiIKK21zZ3N0ciAiVW5lIGTDqXJvZ2F0aW9uIHBvdXIgwqvCoCVzwqDCuyBleGlzdGUgZMOpasOgLCBBYmFuZG9uLiIKKworIzogc3JjL3N0YXRjbWQuYzoyNzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS11cGRhdGUgZ2l2ZW4gYnV0ICVzIGRvZXMgbm90IGV4aXN0IgorbXNnc3RyICItLXVwZGF0ZSBzcMOpY2lmacOpLCBtYWlzICVzIG4nZXhpc3RlIHBhcyIKKworIzogc3JjL3N0YXRjbWQuYzoyOTYKK21zZ2lkICJObyBvdmVycmlkZSBwcmVzZW50LiIKK21zZ3N0ciAiUGFzIGRlIGTDqXJvZ2F0aW9uICjCq8Kgb3ZlcnJpZGXCoMK7KSBwcsOpc2VudGUuIgorCisjOiBzcmMvc3RhdGNtZC5jOjMwNAorbXNnaWQgIi0tdXBkYXRlIGlzIHVzZWxlc3MgZm9yIC0tcmVtb3ZlIgorbXNnc3RyICItLXVwZGF0ZSBlc3QgaW51dGlsZSBwb3VyIC0tcmVtb3ZlIgorCisjOiBzcmMvc3RhdGRiLmM6NTkKK21zZ2lkICJzeW50YXggZXJyb3I6IGludmFsaWQgdWlkIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICIiCisiZXJyZXVyIGRlIHN5bnRheGXCoDrCoFVJRCBub24gdmFsYWJsZSBkYW5zIGxlIGZpY2hpZXIgZGVzIHBlcm1pc3Npb25zICIKKyIowqvCoHN0YXRvdmVycmlkZcKgwrspIgorCisjOiBzcmMvc3RhdGRiLmM6NjQKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yOiB1bmtub3duIHVzZXIgJyVzJyBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiIgorImVycmV1ciBkZSBzeW50YXhlwqA6wqB1dGlsaXNhdGV1ciDCq8KgJXPCoMK7IGluY29ubnUgZGFucyBsZSBmaWNoaWVyIGRlcyAiCisicGVybWlzc2lvbnMgKMKrwqBzdGF0b3ZlcnJpZGXCoMK7KSIKKworIzogc3JjL3N0YXRkYi5jOjgzCittc2dpZCAic3ludGF4IGVycm9yOiBpbnZhbGlkIGdpZCBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiIgorImVycmV1ciBkZSBzeW50YXhlwqA6IEdJRCBub24gdmFsYWJsZSBkYW5zIGxlIGZpY2hpZXIgZGVzIHBlcm1pc3Npb25zICIKKyIowqvCoHN0YXRvdmVycmlkZcKgwrspIgorCisjOiBzcmMvc3RhdGRiLmM6ODgKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yOiB1bmtub3duIGdyb3VwICclcycgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIiIKKyJlcnJldXIgZGUgc3ludGF4ZcKgOsKgZ3JvdXAgwqvCoCVzwqDCuyBpbmNvbm51IGRhbnMgbGUgZmljaGllciBkZXMgcGVybWlzc2lvbnMgIgorIijCq8Kgc3RhdG92ZXJyaWRlwqDCuykiCisKKyM6IHNyYy9zdGF0ZGIuYzoxMDQKK21zZ2lkICJzeW50YXggZXJyb3I6IGludmFsaWQgbW9kZSBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiIgorImVycmV1ciBkZSBzeW50YXhlwqA6wqBtb2RlIG5vbiB2YWxhYmxlIGRhbnMgbGUgZmljaGllciBkZXMgcGVybWlzc2lvbnMgIgorIijCq8Kgc3RhdG92ZXJyaWRlwqDCuykiCisKKyM6IHNyYy9zdGF0ZGIuYzoxMjcKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkJ291dnJpciBmaWNoaWVyIGRlcyBwZXJtaXNzaW9ucyAoc3RhdG92ZXJyaWRlKSIKKworIzogc3JjL3N0YXRkYi5jOjEzNAorbXNnaWQgImZhaWxlZCB0byBmc3RhdCBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiw6ljaGVjIGRlIMKrwqBmc3RhdMKgwrsgc3VyIGxlIGZpY2hpZXIgZGVzIHBlcm1pc3Npb25zIChzdGF0b3ZlcnJpZGUpIgorCisjOiBzcmMvc3RhdGRiLmM6MTM3Cittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IHByZXZpb3VzIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICLDqWNoZWMgZGUgwqvCoGZzdGF0wqDCuyBzdXIgbCdhbmNpZW4gZmljaGllciBkZXMgcGVybWlzc2lvbnMgKHN0YXRvdmVycmlkZSkiCisKKyM6IHNyYy9zdGF0ZGIuYzoxNjIKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVhZGluZyBzdGF0b3ZlcnJpZGUgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAibGVjdHVyZSBkdSBmaWNoaWVyIGRlcyBwZXJtaXNzaW9ucyDCq8KgJS4yNTBzwqDCuyIKKworIzogc3JjL3N0YXRkYi5jOjE2OQorbXNnaWQgInN0YXRvdmVycmlkZSBmaWxlIGlzIG1pc3NpbmcgZmluYWwgbmV3bGluZSIKK21zZ3N0ciAiIgorImxlIGZpY2hpZXIgZGVzIHBlcm1pc3Npb25zICjCq8Kgc3RhdG92ZXJyaWRlwqDCuykgY29udGllbnQgdW5lIGxpZ25lIGZpbmFsZSB2aWRlIgorCisjOiBzcmMvc3RhdGRiLmM6MTczCittc2dpZCAic3RhdG92ZXJyaWRlIGZpbGUgY29udGFpbnMgZW1wdHkgbGluZSIKK21zZ3N0ciAibGUgZmljaGllciBkZXMgcGVybWlzc2lvbnMgKMKrwqBzdGF0b3ZlcnJpZGXCoMK7KSBjb250aWVudCB1bmUgbGlnbmUgdmlkZSIKKworIzogc3JjL3N0YXRkYi5jOjE3OCBzcmMvc3RhdGRiLmM6MTkwIHNyYy9zdGF0ZGIuYzoyMDIKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgImltcG9zc2libGUgZCdvdXZyaXIgZmljaGllciBkZXMgcGVybWlzc2lvbnMgKMKrwqBzdGF0b3ZlcnJpZGXCoMK7KSIKKworIzogc3JjL3N0YXRkYi5jOjE4NiBzcmMvc3RhdGRiLmM6MTk4IHNyYy9zdGF0ZGIuYzoyMTAKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBsaW5lIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICIiCisiZmluIGRlIGxpZ25lIGluYXR0ZW5kdWUgZGFucyBsZSBmaWNoaWVyIGRlcyBwZXJtaXNzaW9ucyAowqvCoHN0YXRvdmVycmlkZcKgwrspIgorCisjOiBzcmMvc3RhdGRiLmM6MjE0CisjLCBjLWZvcm1hdAorbXNnaWQgIm11bHRpcGxlIHN0YXR1c292ZXJyaWRlcyBwcmVzZW50IGZvciBmaWxlICclLjI1MHMnIgorbXNnc3RyICJmb3LDp2FnZXMgZCfDqXRhdCAoc3RhdHVzb3ZlcnJpZGVzKSBtdWx0aXBsZXMgcG91ciBsZSBmaWNoaWVyIMKrwqAlLjI1MHPCoMK7IgorCisjOiBzcmMvdHJpZ2NtZC5jOjQ2Cittc2dpZCAiVHlwZSBkcGtnLXRyaWdnZXIgLS1oZWxwIGZvciBoZWxwIGFib3V0IHRoaXMgdXRpbGl0eS4iCittc2dzdHIgIlRhcGVyIMKrwqBkcGtnLXRyaWdnZXIgLS1oZWxwwqDCuyBwb3VyIG9idGVuaXIgZGUgbCdhaWRlLiIKKworIzogc3JjL3RyaWdjbWQuYzo1MQorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gJXMgcGFja2FnZSB0cmlnZ2VyIHV0aWxpdHkgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiIgorIk91dGlsIGQnYWN0aW9ucyBkaWZmw6lyw6llcyAowqvCoHRyaWdnZXJzwqDCuynCoGR1IHBhcXVldCBEZWJpYW4gJXMsIHZlcnNpb24gJXNcbiIKKworIzogc3JjL3RyaWdjbWQuYzo2NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9ucz4gLi4uXSA8dHJpZ2dlci1uYW1lPlxuIgorIiAgICAgICAlcyBbPG9wdGlvbnM+IC4uLl0gPGNvbW1hbmQ+XG4iCisiXG4iCittc2dzdHIgIiIKKyJTeW50YXhlwqA6ICVzIFs8b3B0aW9ucz4gLi4uXSA8bm9tLWFjdGlvbi1kaWZmw6lyw6llPlxuIgorIiAgICAgICAlcyBbPG9wdGlvbnM+IC4uLl0gPGNvbW1hbmRlPlxuIgorIlxuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC0tY2hlY2stc3VwcG9ydGVkICAgICAgICAgICAgICAgIENoZWNrIGlmIHRoZSBydW5uaW5nIGRwa2cgc3VwcG9ydHMgIgorInRyaWdnZXJzLlxuIgorIlxuIgorbXNnc3RyICIiCisiQ29tbWFuZGVzOlxuIgorIiAgLS1jaGVjay1zdXBwb3J0ZWQgICAgICAgICAgICAgICAgVsOpcmlmaWUgcXVlIGxhIHZlcnNpb24gZGUgZHBrZyBhY2NlcHRlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXMgYWN0aW9ucyBkaWZmw6lyw6llcyAowqvCoHRyaWdnZXJzwqDCuykuXG4iCisiXG4iCisKKyM6IHNyYy90cmlnY21kLmM6ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgICAgICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyIgIC0tYnktcGFja2FnZT08cGFja2FnZT4gICAgICAgICAgIE92ZXJyaWRlIHRyaWdnZXIgYXdhaXRlciAobm9ybWFsbHkgc2V0XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ5IGRwa2cpLlxuIgorIiAgLS1uby1hd2FpdCAgICAgICAgICAgICAgICAgICAgICAgTm8gcGFja2FnZSBuZWVkcyB0byBhd2FpdCB0aGUgIgorInByb2Nlc3NpbmcuXG4iCisiICAtLW5vLWFjdCAgICAgICAgICAgICAgICAgICAgICAgICBKdXN0IHRlc3QgLSBkb24ndCBhY3R1YWxseSBjaGFuZ2UgIgorImFueXRoaW5nLlxuIgorIlxuIgorbXNnc3RyICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXI9PHLDqXBlcnRvaXJlPiAgICAgICAgICAgVXRpbGlzZSA8csOpcGVydG9pcmU+IGF1IGxpZXUgZGUgwqvCoCVzwqDCuy5cbiIKKyIgIC0tYnktcGFja2FnZT08cGFxdWV0PiAgICAgICAgICAgICBQYXNzZSBvdXRyZSBsZSB0cmFpdGVtZW50IGRlcyBhY3Rpb25zXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlmZsOpcsOpZXMgKMKrwqB0cmlnZ2Vyc8KgwrspXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG5vcm1hbGVtZW50IGNvbW1hbmRpdMOpIHBhciBkcGtnKS5cbiIKKyIgIC0tbm8tYXdhaXQgICAgICAgICAgICAgICAgICAgICAgICBMZXMgcGFxdWV0cyBuJ2F0dGVuZGVudCBwbHVzIGxlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhaXRlbWVudCBkZXMgYWN0aW9ucyBkaWZmw6lyw6llc1xuIgorIiAgLS1uby1hY3QgICAgICAgICAgICAgICAgICAgICAgICAgIFBvdXIgdGVzdCAtIHBvdXIgbGUgbW9tZW50LCBuJ29ww6hyZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF1Y3VuIGNoYW5nZW1lbnQuXG4iCisiXG4iCisKKyM6IHNyYy90cmlnY21kLmM6MTUyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB0cmlnZ2VycyBkYXRhIGRpcmVjdG9yeSBub3QgeWV0IGNyZWF0ZWRcbiIKK21zZ3N0ciAiIgorIiVzwqA6IHLDqXBlcnRvaXJlIHBvdXIgbGVzIGRvbm7DqWVzIGQnYWN0aW9ucyBkaWZmw6lyw6llcyAowqvCoHRyaWdnZXJzwqDCuykgcGFzICIKKyJlbmNvcmUgY3LDqcOpIFxuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjE1NgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogdHJpZ2dlciByZWNvcmRzIG5vdCB5ZXQgaW4gZXhpc3RlbmNlXG4iCittc2dzdHIgIiIKKyIlc8KgOiByZWdpc3RyZSBkZXMgYWN0aW9ucyBkaWZmw6lyw6llcyAowqvCoHRyaWdnZXJzwqDCuykgcGFzIGVuY29yZSBwcsOpc2VudFxuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIwNQorbXNnaWQgInRha2VzIG9uZSBhcmd1bWVudCwgdGhlIHRyaWdnZXIgbmFtZSIKK21zZ3N0ciAiIgorImEgYmVzb2luIGQndW4gc2V1bCBwYXJhbcOodHJlICwgbGUgbm9tIGRlIGwnYWN0aW9uIGRpZmbDqXLDqWUgKMKrwqB0cmlnZ2VywqDCuykiCisKKyM6IHNyYy90cmlnY21kLmM6MjEwCittc2dpZCAibXVzdCBiZSBjYWxsZWQgZnJvbSBhIG1haW50YWluZXIgc2NyaXB0IChvciB3aXRoIGEgLS1ieS1wYWNrYWdlIG9wdGlvbikiCittc2dzdHIgIiIKKyJkb2l0IMOqdHJlIGFwcGVsw6kgZGVwdWlzIHVuIHNjcmlwdCBkdSByZXNwb25zYWJsZSAob3UgYXZlYyBsJ29wdGlvbiDCq8KgLS1ieS0iCisicGFja2FnZcKgwrspIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIxNQorIywgYy1mb3JtYXQKK21zZ2lkICJpbGxlZ2FsIGF3YWl0ZWQgcGFja2FnZSBuYW1lICclLjI1MHMnOiAlLjI1MHMiCittc2dzdHIgIm5vbSBkZSBwYXF1ZXQgYXR0ZW5kdSBpbGzDqWdhbCDCq8KgJS4yNTBzwqDCu8KgOiDCq8KgJS4yNTBzwqDCuyIKKworIzogc3JjL3RyaWdjbWQuYzoyMjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCB0cmlnZ2VyIG5hbWUgYCUuMjUwcyc6ICUuMjUwcyIKK21zZ3N0ciAibm9tIGQnYWN0aW9uIGRpZmbDqXLDqWUgbm9uIHZhbGFibGUgwqvCoCUuMjUwc8KgwrvCoDogwqvCoCUuMjUwc8KgwrsiCisKKyM6IHNyYy90cmlncHJvYy5jOjI1MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IGN5Y2xlIGZvdW5kIHdoaWxlIHByb2Nlc3NpbmcgdHJpZ2dlcnM6XG4iCisiIGNoYWluIG9mIHBhY2thZ2VzIHdob3NlIHRyaWdnZXJzIGFyZSBvciBtYXkgYmUgcmVzcG9uc2libGU6XG4iCittc2dzdHIgIiIKKyLCq8KgJXPCoMK7wqA6IGJvdWNsZSBkw6l0ZWN0w6llIGR1cmFudCBsZSB0cmFpdGVtZW50IGRlcyBhY3Rpb25zIGRpZmbDqXLDqWVzwqA6XG4iCisiIGxpc3RlcyBkZXMgcGFxdWV0cyBxdWkgZW4gc29udCByZXNwb25zYWJsZXMgKG5vcm1hbGVtZW50KcKgOlxuIgorCisjOiBzcmMvdHJpZ3Byb2MuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiBwYWNrYWdlcycgcGVuZGluZyB0cmlnZ2VycyB3aGljaCBhcmUgb3IgbWF5IGJlIHVucmVzb2x2YWJsZTpcbiIKK21zZ3N0ciAiIgorIlxuIgorIiBwYXF1ZXRzIGJsb3F1w6lzIHBhciBsZSB0cmFpdGVtZW50IGltcG9zc2libGUgZCdhY3Rpb25zIGRpZmbDqXLDqWVzICIKKyJyZXF1aXNlc8KgOlxuIgorCisjOiBzcmMvdHJpZ3Byb2MuYzoyODEKK21zZ2lkICJ0cmlnZ2VycyBsb29waW5nLCBhYmFuZG9uZWQiCittc2dzdHIgIiIKKyJibG9xdcOpIGVuIGJvdWNsZSBzdXIgbGUgdHJhaXRlbWVudCBkZXMgYWN0aW9ucyBkaWZmw6lyw6llcyAowqvCoHRyaWdnZXJzwqDCuyksICIKKyJhYmFuZG9uIgorCisjOiBzcmMvdHJpZ3Byb2MuYzozMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHJvY2Vzc2luZyB0cmlnZ2VycyBmb3IgJXMgLi4uXG4iCittc2dzdHIgIlRyYWl0ZW1lbnQgZGVzIGFjdGlvbnMgZGlmZsOpcsOpZXMgKMKrwqB0cmlnZ2Vyc8KgwrspIHBvdXIgwqvCoCVzwqDCuy4uLlxuIgorCisjOiBzcmMvdXBkYXRlLmM6NTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIi0tJXMgbmVlZHMgZXhhY3RseSBvbmUgUGFja2FnZXMgZmlsZSBhcmd1bWVudCIKK21zZ2lkICItLSVzIG5lZWRzIGV4YWN0bHkgb25lIFBhY2thZ2VzLWZpbGUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMgYSBiZXNvaW4gZCdleGFjdGVtZW50IHVuIGZpY2hpZXIgwqvCoFBhY2thZ2VzwqDCuyIKKworIzogc3JjL3VwZGF0ZS5jOjYyCittc2dpZCAidW5hYmxlIHRvIGFjY2VzcyBkcGtnIHN0YXR1cyBhcmVhIGZvciBidWxrIGF2YWlsYWJsZSB1cGRhdGUiCittc2dzdHIgIiIKKyJpbXBvc3NpYmxlIGQnYWNjw6lkZXIgw6AgbGEgem9uZSBkZXMgw6l0YXRzIGRlIGRwa2cgcG91ciB1bmUgbWlzZSDDoCBqb3VyIG1hc3NpdmUiCisKKyM6IHNyYy91cGRhdGUuYzo2NAorbXNnaWQgImJ1bGsgYXZhaWxhYmxlIHVwZGF0ZSByZXF1aXJlcyB3cml0ZSBhY2Nlc3MgdG8gZHBrZyBzdGF0dXMgYXJlYSIKK21zZ3N0ciAiIgorInVuZSBtaXNlIMOgIGpvdXIgbWFzc2l2ZSByZXF1aWVydCB1biBhY2PDqHMgZW4gw6ljcml0dXJlIGRhbnMgbGEgem9uZSBkZXMgw6l0YXRzICIKKyJkZSBkcGtnIgorCisjOiBzcmMvdXBkYXRlLmM6NzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVwbGFjaW5nIGF2YWlsYWJsZSBwYWNrYWdlcyBpbmZvLCB1c2luZyAlcy5cbiIKK21zZ3N0ciAiIgorIlJlbXBsYWNlbWVudCBkZSBsJ2luZm9ybWF0aW9uIHN1ciBsZXMgcGFxdWV0cyBkaXNwb25pYmxlcywgZW4gdXRpbGlzYW50ICVzLlxuIgorCisjOiBzcmMvdXBkYXRlLmM6NzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiVXBkYXRpbmcgYXZhaWxhYmxlIHBhY2thZ2VzIGluZm8sIHVzaW5nICVzLlxuIgorbXNnc3RyICIiCisiTWlzZSDDoCBqb3VyIGRlIGwnaW5mb3JtYXRpb24gc3VyIGxlcyBwYXF1ZXRzIGRpc3BvbmlibGVzLCBlbiB1dGlsaXNhbnQgJXMuXG4iCisKKyM6IHNyYy91cGRhdGUuYzoxMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW5mb3JtYXRpb24gYWJvdXQgJWQgcGFja2FnZSB3YXMgdXBkYXRlZC5cbiIKK21zZ2lkX3BsdXJhbCAiSW5mb3JtYXRpb24gYWJvdXQgJWQgcGFja2FnZXMgd2FzIHVwZGF0ZWQuXG4iCittc2dzdHJbMF0gIkwnaW5mb3JtYXRpb24gc3VyICVkIHBhcXVldCBhIMOpdMOpIG1pc2Ugw6Agam91ci5cbiIKK21zZ3N0clsxXSAiTCdpbmZvcm1hdGlvbiBzdXIgJWQgcGFxdWV0cyBhIMOpdMOpIG1pc2Ugw6Agam91ci5cbiIKKworIzogc3JjL3VwZGF0ZS5jOjExNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisib2Jzb2xldGUgJy0tJXMnIG9wdGlvbiwgdW5hdmFpbGFibGUgcGFja2FnZXMgYXJlIGF1dG9tYXRpY2FsbHkgY2xlYW5lZCB1cC4iCittc2dzdHIgIiIKKyJvcHRpb24gwqvCoC0tJXPCoMK7IG9ic29sw6h0ZcKgOsKgbGVzIHBhcXVldHMgaW5kaXNwb25pYmxlcyBzb250IG5ldHRvecOpcyAiCisiYXV0b21hdGlxdWVtZW50LiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBuYW1lICclLjUwcy4uLicgaXMgdG9vIGxvbmciCittc2dzdHIgImxlIG5vbSBkZSBmaWNoaWVyIMKrwqAlLjUwcy4uLsKgwrsgZXN0IHRyb3AgbG9uZyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoxMjkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgZmlsZSBuYW1lICclLjI1MHMnIgorbXNnc3RyICJpbXBvc3NpYmxlIGQnYW5hbHlzZXIgbGUgbm9tIGRlIGZpY2hpZXIgwqvCoCUuMjUwc8KgwrsiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTg5Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgY29udHJvbCBkaXJlY3RvcnkiCittc2dzdHIgImltcG9zc2libGUgZCdhY2PDqWRlciBhdSByw6lwZXJ0b2lyZSBkZSBjb250csO0bGUiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTkxCittc2dpZCAiY29udHJvbCBkaXJlY3RvcnkgaXMgbm90IGEgZGlyZWN0b3J5IgorbXNnc3RyICJsZSByw6lwZXJ0b2lyZSDCq8KgY29udHJvbMKgwrsgbidlc3QgcGFzIHVuIHLDqXBlcnRvaXJlIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjE5MworIywgYy1mb3JtYXQKK21zZ2lkICJjb250cm9sIGRpcmVjdG9yeSBoYXMgYmFkIHBlcm1pc3Npb25zICUwM2xvIChtdXN0IGJlID49MDc1NSBhbmQgPD0wNzc1KSIKK21zZ3N0ciAiIgorImxlIHLDqXBlcnRvaXJlIGRlIGNvbnRyw7RsZSBuJ2EgcGFzIGxlcyBib25uZXMgcGVybWlzc2lvbnMgJTAzbG8gKGRvaXQgw6p0cmUgIgorIj49MDc1NSBldCA8PTA3NzUpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjIwNAorIywgYy1mb3JtYXQKK21zZ2lkICJtYWludGFpbmVyIHNjcmlwdCBgJS41MHMnIGlzIG5vdCBhIHBsYWluIGZpbGUgb3Igc3ltbGluayIKK21zZ3N0ciAiIgorImxlIHNjcmlwdCDCq8KgJS41MHPCoMK7IGR1IHJlc3BvbnNhYmxlIG4nZXN0IHBhcyB1biBzaW1wbGUgZmljaGllciBvdSB1biBsaWVuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjIwNworIywgYy1mb3JtYXQKK21zZ2lkICIiCisibWFpbnRhaW5lciBzY3JpcHQgYCUuNTBzJyBoYXMgYmFkIHBlcm1pc3Npb25zICUwM2xvIChtdXN0IGJlID49MDU1NSBhbmQgIgorIjw9MDc3NSkiCittc2dzdHIgIiIKKyJsZSBzY3JpcHQgwqvCoCUuNTBzwqDCuyBkdSByZXNwb25zYWJsZSBuJ2EgcGFzIGxlcyBib25uZXMgcGVybWlzc2lvbnMgJTAzbG8gIgorIihkb2l0IMOqdHJlID49MDc1NSBldCA8PTA3NzUpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjIxMQorIywgYy1mb3JtYXQKK21zZ2lkICJtYWludGFpbmVyIHNjcmlwdCBgJS41MHMnIGlzIG5vdCBzdGF0dGFibGUiCittc2dzdHIgImxlIHNjcmlwdCDCq8KgJS41MHPCoMK7IGR1IHJlc3BvbnNhYmxlIG4nZXN0IHBhcyB0ZXN0YWJsZSAoc3RhdHRhYmxlKSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyMzcKK21zZ2lkICJlcnJvciBvcGVuaW5nIGNvbmZmaWxlcyBmaWxlIgorbXNnc3RyICJlcnJldXIgbG9ycyBkZSBsJ291dmVydHVyZSBkdSBmaWNoaWVyIGNvbmZmaWxlcyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNDYKK21zZ2lkICJlbXB0eSBzdHJpbmcgZnJvbSBmZ2V0cyByZWFkaW5nIGNvbmZmaWxlcyIKK21zZ3N0ciAiwqvCoGZnZXRzwqDCuyByZW52b2llIHVuZSBjaGHDrm5lIHZpZGUgZW4gbGlzYW50IGxlcyBjb25mZmlsZXMiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjUxCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIG5hbWUgJyUuNTBzLi4uJyBpcyB0b28gbG9uZywgb3IgbWlzc2luZyBmaW5hbCBuZXdsaW5lIgorbXNnc3RyICIiCisibGUgbm9tIGR1IGZpY2hpZXIgZGUgY29uZmlndXJhdGlvbiDCq8KgJS41MHMuLi7CoMK7IGVzdCB0cm9wIGxvbmcsIG91IGlsIG1hbnF1ZSAiCisibGUgc2F1dCBkZSBsaWduZSBmaW5hbCIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgZmlsZW5hbWUgJyVzJyBjb250YWlucyB0cmFpbGluZyB3aGl0ZSBzcGFjZXMiCittc2dzdHIgImxlIGZpY2hpZXIgZGUgY29uZmlndXJhdGlvbiDCq8KgJXPCoMK7IGNvbnRpZW50IGRlcyBlc3BhY2VzIGZpbmF1eCIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgYCUuMjUwcycgZG9lcyBub3QgYXBwZWFyIGluIHBhY2thZ2UiCittc2dzdHIgImxlIGNvbmZmaWxlIMKrwqAlLjI1MHPCoMK7IG4nYXBwYXJhw650IHBhcyBkYW5zIGxlIHBhcXVldCIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgYCUuMjUwcycgaXMgbm90IHN0YXR0YWJsZSIKK21zZ3N0ciAibGUgY29uZmZpbGUgwqvCoCUuMjUwc8Kgwrsgbidlc3QgcGFzIHRlc3RhYmxlIChzdGF0dGFibGUpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI3MAorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSAnJXMnIGlzIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgImxlIGZpY2hpZXIgZGUgY29uZmlndXJhdGlvbiDCq8KgJXPCoMK7IG4nZXN0IHBhcyB2cmFpbWVudCB1biBmaWNoaWVyIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI3NAorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBuYW1lICclcycgaXMgZHVwbGljYXRlZCIKK21zZ3N0ciAiTGUgZmljaGllciBkZSBjb25maWd1cmF0aW9uIMKrwqAlc8KgwrsgZXN0IGR1cGxpcXXDqSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyODcKK21zZ2lkICJlcnJvciByZWFkaW5nIGNvbmZmaWxlcyBmaWxlIgorbXNnc3RyICJpbXBvc3NpYmxlIGQnb3V2cmlyIGxlIGZpY2hpZXIgY29uZmZpbGUiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MzM5Cittc2dpZCAicGFja2FnZSBuYW1lIGhhcyBjaGFyYWN0ZXJzIHRoYXQgYXJlbid0IGxvd2VyY2FzZSBhbHBoYW51bXMgb3IgYC0rLiciCittc2dzdHIgIiIKKyJsZSBub20gZGUgcGFxdWV0IGNvbnRpZW50IGRlcyBjYXJhY3TDqHJlcyBxdWkgbmUgc29udCBwYXMgZGVzIG1pbnVzY3VsZXMgIgorImFscGhhbnVtw6lyaXF1ZXMgb3UgwqvCoC0rLsKgwrsiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MzQxCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgY29udGFpbnMgdXNlci1kZWZpbmVkIFByaW9yaXR5IHZhbHVlICclcyciCittc2dzdHIgIiIKKyLCq8KgJXPCoMK7IGNvbnRpZW50IHVuZSB2YWxldXIgwqvCoFByaW9yaXR5wqDCuyDCq8KgJXPCoMK7IGTDqWZpbmllIHBhciBsJ3V0aWxpc2F0ZXVyIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjM0NworIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGNvbnRhaW5zIHVzZXItZGVmaW5lZCBmaWVsZCAnJXMnIgorbXNnc3RyICLCq8KgJXPCoMK7IGNvbnRpZW50IGxlIGNoYW1wIMKrwqAlc8KgwrsgZMOpZmluaSBwYXIgbCd1dGlsaXNhdGV1ciIKKworIzogZHBrZy1kZWIvYnVpbGQuYzozNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgJWQgd2FybmluZyBhYm91dCB0aGUgY29udHJvbCBmaWxlKHMpXG4iCittc2dpZF9wbHVyYWwgImlnbm9yaW5nICVkIHdhcm5pbmdzIGFib3V0IHRoZSBjb250cm9sIGZpbGUocylcbiIKK21zZ3N0clswXSAiJWQgYXZlcnRpc3NlbWVudCBpZ25vcsOpIHN1ciBsZShzKSBmaWNoaWVyKHMpIMKrwqBjb250cm9swqDCu1xuIgorbXNnc3RyWzFdICIlZCBhdmVydGlzc2VtZW50cyBpZ25vcsOpcyBzdXIgbGUocykgZmljaGllcihzKSDCq8KgY29udHJvbMKgwrtcbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MDMgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MjkKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDM2CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSA8ZGlyZWN0b3J5PiBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyBhIGJlc29pbiBkJ3VuIHBhcmFtw6h0cmUgPHLDqXBlcnRvaXJlPiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MDkKK21zZ2lkICItLWJ1aWxkIHRha2VzIGF0IG1vc3QgdHdvIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS1idWlsZCBwcmVuZCBhdSBwbHVzIGRldXggcGFyYW3DqHRyZXMiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDEzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGVjayBmb3IgZXhpc3RlbmNlIG9mIGFyY2hpdmUgYCUuMjUwcyciCittc2dzdHIgImltcG9zc2libGUgZGUgdsOpcmlmaWVyIGwnZXhpc3RlbmNlIGRlIGwnYXJjaGl2ZSDCq8KgJS4yNTBzwqDCuyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzAKK21zZ2lkICJ0YXJnZXQgaXMgZGlyZWN0b3J5IC0gY2Fubm90IHNraXAgY29udHJvbCBmaWxlIGNoZWNrIgorbXNnc3RyICIiCisibGEgY2libGUgZXN0IHVuIHLDqXBlcnRvaXJlIC0gbmUgcGV1dCBwYXMgaWdub3JlciBsYSB2w6lyaWZpY2F0aW9uIGR1IGZpY2hpZXIgIgorIsKrwqBjb250cm9swqDCuyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzEKK21zZ2lkICJub3QgY2hlY2tpbmcgY29udGVudHMgb2YgY29udHJvbCBhcmVhLiIKK21zZ3N0ciAicGFzIGRlIGNvbnRyw7RsZSBkdSBjb250ZW51IGRlIGxhIHpvbmUgZGUgY29udHLDtGxlLiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZy1kZWI6IGJ1aWxkaW5nIGFuIHVua25vd24gcGFja2FnZSBpbiAnJXMnLlxuIgorbXNnc3RyICJkcGtnLWRlYsKgOiBjb25zdHJ1Y3Rpb24gZCd1biBwYXF1ZXQgaW5jb25udSBkYW5zIMKrwqAlc8KgwrsuXG4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDM5CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2ctZGViOiBidWlsZGluZyBwYWNrYWdlIGAlcycgaW4gYCVzJy5cbiIKK21zZ3N0ciAiZHBrZy1kZWLCoDogY29uc3RydWN0aW9uIGR1IHBhcXVldCDCq8KgJXPCoMK7IGRhbnMgwqvCoCVzwqDCuy5cbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0NjcgZHBrZy1kZWIvYnVpbGQuYzo1MjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG1ha2UgdGVtcG9yYXJ5IGZpbGUgKCVzKSIKK21zZ3N0ciAiw6ljaGVjIGRlIGxhIGNyw6lhdGlvbiBkJ3VuIGZpY2hpZXIgdGVtcG9yYWlyZSAoJXMpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ2NyBkcGtnLWRlYi9idWlsZC5jOjQ3MCBkcGtnLWRlYi9idWlsZC5jOjQ3NworIzogZHBrZy1kZWIvYnVpbGQuYzo0ODUgZHBrZy1kZWIvYnVpbGQuYzo0OTQgZHBrZy1kZWIvYnVpbGQuYzo0OTkKK21zZ2lkICJjb250cm9sIG1lbWJlciIKK21zZ3N0ciAiw6lsw6ltZW50IGRlIGNvbnRyw7RsZSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0NzAgZHBrZy1kZWIvYnVpbGQuYzo1MjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHVubGluayB0ZW1wb3JhcnkgZmlsZSAoJXMpLCAlcyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkZSBkw6lsaWVyIHVuIGZpY2hpZXIgdGVtcG9yYWlyZSAoJXMpLCAlcyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0ODUgZHBrZy1kZWIvYnVpbGQuYzo1OTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJld2luZCB0ZW1wb3JhcnkgZmlsZSAoJXMpIgorbXNnc3RyICLDqWNoZWMgZGUgwqvCoHJld2luZMKgwrsgc3VyIHVuIGZpY2hpZXIgdGVtcG9yYWlyZSAoJXMpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ5NAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gc3RhdCB0ZW1wb3JhcnkgZmlsZSAoJXMpIgorbXNnc3RyICLDqWNoZWMgZGUgwqvCoHN0YXTCoMK7IHN1ciB1biBmaWNoaWVyIHRlbXBvcmFpcmUgKCVzKSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0OTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igd3JpdGluZyBgJXMnIgorbXNnc3RyICJlcnJldXIgbG9ycyBkZSBsJ8OpY3JpdHVyZSBkZSDCq8KgJXPCoMK7IgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjUyMSBkcGtnLWRlYi9idWlsZC5jOjUyNCBkcGtnLWRlYi9idWlsZC5jOjU0NgorIzogZHBrZy1kZWIvYnVpbGQuYzo1NzIgZHBrZy1kZWIvYnVpbGQuYzo1ODAgZHBrZy1kZWIvYnVpbGQuYzo1OTMKK21zZ2lkICJkYXRhIG1lbWJlciIKK21zZ3N0ciAiw6lsw6ltZW50IGRlIGRvbm7DqWVzIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjU3MSBkcGtnLWRlYi9idWlsZC5jOjU4MAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgZmlsZW5hbWUgdG8gdGFyIHBpcGUgKCVzKSIKK21zZ3N0ciAibCfDqWNyaXR1cmUgZCd1biBub20gZGUgZmljaGllciDDoCB0cmF2ZXJzIHVuIHR1YmUgdGFyICjCq8KgJXPCoMK7KSBhIMOpY2hvdcOpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjU4NAorbXNnaWQgIjxjb21wcmVzcz4gZnJvbSB0YXIgLWNmIgorbXNnc3RyICI8Y29tcHJlc3M+IGRlcHVpcyB0YXIgLWNmIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6NjEgZHBrZy1kZWIvZXh0cmFjdC5jOjYzCittc2dpZCAic2hlbGwgY29tbWFuZCB0byBtb3ZlIGZpbGVzIgorbXNnc3RyICJwcm9jZXNzZXVyIGRlIGNvbW1hbmRlcyBwb3VyIGTDqXBsYWNlciBkZXMgZmljaGllcnMiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzo3MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBmaWxlIGluICVzIGluICUuMjU1cyIKK21zZ3N0ciAiZmluIGRlIGZpY2hpZXIgaW5hdHRlbmR1ZSBkYW5zICVzIGRhbnMgJS4yNTVzIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcmVhZGluZyAlcyBmcm9tIGZpbGUgJS4yNTVzIgorbXNnc3RyICJlcnJldXIgZGUgbGVjdHVyZSBkZSAlcyBkZXB1aXMgbGUgZmljaGllciAlLjI1NXMiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxMjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgYXJjaGl2ZSBgJS4yNTVzJyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkZSBsaXJlIGwnYXJjaGl2ZSDCq8KgJS4yNTVzwqDCuyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjEyNworbXNnaWQgImZhaWxlZCB0byBmc3RhdCBhcmNoaXZlIgorbXNnc3RyICLDqWNoZWMgZGUgwqvCoGZzdGF0wqDCuyBzdXIgbCdhcmNoaXZlIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTMxCittc2dpZCAiYXJjaGl2ZSBtYWdpYyB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAibnVtw6lybyBtYWdpcXVlIGRlIHZlcnNpb24gZGUgbCdhcmNoaXZlIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTQzCittc2dpZCAiYXJjaGl2ZSBtZW1iZXIgaGVhZGVyIgorbXNnc3RyICJlbi10w6p0ZSBkZSBsJ8OpbMOpbWVudCBkZSBsJ2FyY2hpdmUiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIGFyY2hpdmUgaGVhZGVyIG1hZ2ljIgorbXNnc3RyICIiCisibGUgZmljaGllciDCq8KgJS4yNTBzwqDCuyBlc3QgY29ycm9tcHUgLSBtYXV2YWlzIG5vbWJyZSBtYWdpcXVlIGQnZW4tdMOqdGUgIgorImQnYXJjaGl2ZSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE1NQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIG5vdCBhIGRlYmlhbiBiaW5hcnkgYXJjaGl2ZSAodHJ5IGRwa2ctc3BsaXQ/KSIKK21zZ3N0ciAiIgorImxlIGZpY2hpZXIgwqvCoCUuMjUwc8Kgwrsgbidlc3QgcGFzIHVuZSBhcmNoaXZlIGJpbmFpcmUgRGViaWFuIChlc3NheWVyIGRwa2ctIgorInNwbGl0wqA/KSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE1OQorbXNnaWQgImFyY2hpdmUgaW5mb3JtYXRpb24gaGVhZGVyIG1lbWJlciIKK21zZ3N0ciAiw6lsw6ltZW50IGVuLXTDqnRlIGQnaW5mb3JtYXRpb24gZGUgbCdhcmNoaXZlIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTYyCittc2dpZCAiYXJjaGl2ZSBoYXMgbm8gbmV3bGluZXMgaW4gaGVhZGVyIgorbXNnc3RyICJsJ2FyY2hpdmUgbidhIHBhcyBkZSBzYXV0IGRlIGxpZ25lIGRhbnMgbCdlbi10w6p0ZSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE2NQorbXNnaWQgImFyY2hpdmUgaGFzIG5vIGRvdCBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAibCdhcmNoaXZlIG4nYSBwYXMgZGUgcG9pbnQgZGFucyBsZSBudW3DqXJvIGRlIGxhIHZlcnNpb24iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiYXJjaGl2ZSB2ZXJzaW9uICUuMjUwcyBub3QgdW5kZXJzdG9vZCwgZ2V0IG5ld2VyIGRwa2ctZGViIgorbXNnc3RyICIiCisidmVyc2lvbiAlLjI1MHMgZGUgbCdhcmNoaXZlIG5vbiBjb21wcmlzZSwgcsOpY3Vww6lyZXIgdW5lIHZlcnNpb24gcGx1cyByw6ljZW50ZSAiCisiZGUgZHBrZy1kZWIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNzkgZHBrZy1kZWIvZXh0cmFjdC5jOjIwNQorIywgYy1mb3JtYXQKK21zZ2lkICJza2lwcGVkIGFyY2hpdmUgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ3N0ciAiw6lsw6ltZW50IGRlIGRvbm7DqWVzIGQnYXJjaGl2ZSBpZ25vcsOpZXMgZGFucyAlcyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE5NAorIywgYy1mb3JtYXQKK21zZ2lkICJhcmNoaXZlICclLjI1MHMnIGNvbnRhaW5zIG5vdCB1bmRlcnN0b29kIGRhdGEgbWVtYmVyICUuKnMsIGdpdmluZyB1cCIKK21zZ3N0ciAiIgorImwnYXJjaGl2ZSDCq8KgJS4yNTBzwqDCuyBjb250aWVudCBsJ8OpbMOpbWVudCBkZSBkb25uw6llcyBub24gY29tcHJpcyAlLipzLCBBYmFuZG9uIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTk5CisjLCBjLWZvcm1hdAorbXNnaWQgImFyY2hpdmUgJyUuMjUwcycgY29udGFpbnMgdHdvIGNvbnRyb2wgbWVtYmVycywgZ2l2aW5nIHVwIgorbXNnc3RyICJsJ2FyY2hpdmUgwqvCoCUuMjUwc8KgwrsgY29udGllbnQgZGV1eCDDqWzDqW1lbnRzIGRlIGNvbnRyw7RsZS4gQWJhbmRvbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIxNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiIG5ldyBkZWJpYW4gcGFja2FnZSwgdmVyc2lvbiAlcy5cbiIKKyIgc2l6ZSAlamQgYnl0ZXM6IGNvbnRyb2wgYXJjaGl2ZT0gJWpkIGJ5dGVzLlxuIgorbXNnc3RyICIiCisiIG5vdXZlYXUgcGFxdWV0IERlYmlhbiwgdmVyc2lvbiAlcy5cbiIKKyIgdGFpbGxlICVqZCBvY3RldHPCoDogYXJjaGl2ZSBkZSBjb250csO0bGUgPSAlamQgb2N0ZXRzLlxuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjMyCittc2dpZCAiYXJjaGl2ZSBjb250cm9sIG1lbWJlciBzaXplIgorbXNnc3RyICJ0YWlsbGUgZGUgbCfDqWzDqW1lbnQgZGUgY29udHLDtGxlIGRlIGwnYXJjaGl2ZSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIzNQorIywgYy1mb3JtYXQKK21zZ2lkICJhcmNoaXZlIGhhcyBtYWxmb3JtYXR0ZWQgY29udHJvbCBtZW1iZXIgc2l6ZSAnJXMnIgorbXNnc3RyICIiCisibCdhcmNoaXZlIHBvc3PDqGRlIHVuZSBpbmZvcm1hdGlvbiBkZSBjb250csO0bGUgZGUgdGFpbGxlIMKrwqAlc8KgwrsgbWFsIGZvcm3DqWUiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNDIKKyMsIGMtZm9ybWF0Cittc2dpZCAic2tpcHBlZCBhcmNoaXZlIGNvbnRyb2wgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ3N0ciAiZG9ubsOpZXMgZGUgbCfDqWzDqW1lbnQgZGUgY29udHLDtGxlIGRlIGwnYXJjaGl2ZSBkYW5zICVzIGlnbm9yw6llcyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI0NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiIG9sZCBkZWJpYW4gcGFja2FnZSwgdmVyc2lvbiAlcy5cbiIKKyIgc2l6ZSAlamQgYnl0ZXM6IGNvbnRyb2wgYXJjaGl2ZT0gJWpkLCBtYWluIGFyY2hpdmU9ICVqZC5cbiIKK21zZ3N0ciAiIgorIiBhbmNpZW4gcGFxdWV0IERlYmlhbiwgdmVyc2lvbiAlcy5cbiIKKyIgdGFpbGxlICVqZCBvY3RldHPCoDogYXJjaGl2ZSBkZSBjb250csO0bGU9ICVqZCwgYXJjaGl2ZSBwcmluY2lwYWxlPSAlamQuXG4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2ctZGViOiBmaWxlIGxvb2tzIGxpa2UgaXQgbWlnaHQgYmUgYW4gYXJjaGl2ZSB3aGljaCBoYXMgYmVlblxuIgorImRwa2ctZGViOiAgICBjb3JydXB0ZWQgYnkgYmVpbmcgZG93bmxvYWRlZCBpbiBBU0NJSSBtb2RlXG4iCittc2dzdHIgIiIKKyJkcGtnLWRlYsKgOiBsZSBmaWNoaWVyIHJlc3NlbWJsZSBhcHBhcmVtbWVudCDDoCB1bmUgYXJjaGl2ZVxuIgorImRwa2ctZGViwqA6ICAgIGNvcnJvbXB1ZSBwYXIgdW4gdMOpbMOpY2hhcmdlbWVudCBlbiBtb2RlIEFTQ0lJXG4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCUuMjU1cycgaXMgbm90IGEgZGViaWFuIGZvcm1hdCBhcmNoaXZlIgorbXNnc3RyICJgJS4yNTVzwqDCuyBuJ2VzdCBwYXMgdW5lIGFyY2hpdmUgZGUgZm9ybWF0IERlYmlhbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI2NgorbXNnaWQgImZhaWxlZCB0byB3cml0ZSB0byBwaXBlIGluIGNvcHkiCittc2dzdHIgImltcG9zc2libGUgZCfDqWNyaXJlIGRhbnMgbGUgdHViZSBwb3VyIGNvcGllIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjY4Cittc2dpZCAiZmFpbGVkIHRvIGNsb3NlIHBpcGUgaW4gY29weSIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkZSBmZXJtZXIgbGUgdHViZSBlbiBjb3BpZSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI4NAorbXNnaWQgImRhdGEiCittc2dzdHIgImRvbm7DqWVzIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzA3Cittc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIGRpcmVjdG9yeSIKK21zZ3N0ciAiw6ljaGVjIGRlIMKrwqBjaGRpcsKgwrsgdmVycyBsZSByw6lwZXJ0b2lyZSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMxMAorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgZGlyZWN0b3J5IgorbXNnc3RyICJpbXBvc3NpYmxlIGRlIGNyw6llciBsZSByw6lwZXJ0b2lyZSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMxMgorbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byBkaXJlY3RvcnkgYWZ0ZXIgY3JlYXRpbmcgaXQiCittc2dzdHIgIsOpY2hlYyBkZSDCq8KgY2hkaXLCoMK7IHZlcnMgdW4gcsOpcGVydG9pcmUgYXByw6hzIGwnYXZvaXIgY3LDqcOpIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzIzCittc2dpZCAiPGRlY29tcHJlc3M+IgorbXNnc3RyICI8ZGVjb21wcmVzcz4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozMjUKK21zZ2lkICJwYXN0ZSIKK21zZ3N0ciAiY29sbGVyIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzQyIGRwa2ctZGViL2V4dHJhY3QuYzozNjMgZHBrZy1kZWIvZXh0cmFjdC5jOjQwMgorIzogZHBrZy1kZWIvaW5mby5jOjc3CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSAuZGViIGZpbGVuYW1lIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIGEgYmVzb2luIGQndW4gZmljaGllciAuZGViIGNvbW1lIHBhcmFtw6h0cmUiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozNDcgZHBrZy1kZWIvZXh0cmFjdC5jOjQwNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiLS0lcyBuZWVkcyBhIHRhcmdldCBkaXJlY3RvcnkuXG4iCisiUGVyaGFwcyB5b3Ugc2hvdWxkIGJlIHVzaW5nIGRwa2cgLS1pbnN0YWxsID8iCittc2dzdHIgIiIKKyItLSVzIGEgYmVzb2luIGQndW4gcsOpcGVydG9pcmUgY2libGUuXG4iCisiUGV1dC3DqnRyZSBkZXZyaWV6LXZvdXMgdXRpbGlzZXIgZHBrZyAtLWluc3RhbGzCoD8iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozNTAgZHBrZy1kZWIvZXh0cmFjdC5jOjQxMAorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIHRha2VzIGF0IG1vc3QgdHdvIGFyZ3VtZW50cyAoLmRlYiBhbmQgZGlyZWN0b3J5KSIKK21zZ3N0ciAiLS0lcyBhIGJlc29pbiBkJ2F1IHBsdXMgZGV1eCBwYXJhbcOodHJlcyAoLmRlYiBldCByw6lwZXJ0b2lyZSkiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyB0YWtlcyBvbmx5IG9uZSBhcmd1bWVudCAoLmRlYiBmaWxlbmFtZSkiCittc2dzdHIgIi0tJXMgYSBiZXNvaW4gZCd1biBzZXVsIHBhcmFtw6h0cmUgKG5vbSBkZSBmaWNoaWVyIC5kZWIpIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6NjMKK21zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gYC8nIGZvciBjbGVhbnVwIgorbXNnc3RyICLDqWNoZWMgZGUgwqvCoGNoZGlywqDCuyB2ZXJzIMKrwqAvwqDCuyBwb3VyIG5ldHRveWFnZSIKKworIzogZHBrZy1kZWIvaW5mby5jOjEwNgorIywgYy1mb3JtYXQKK21zZ2lkICJjb250cm9sIGZpbGUgJyVzJyIKK21zZ3N0ciAiZmljaGllciBkZSBjb250csO0bGUgwqvCoCVzwqDCuyIKKworIzogZHBrZy1kZWIvaW5mby5jOjExMAorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnLWRlYjogYCUuMjU1cycgY29udGFpbnMgbm8gY29udHJvbCBjb21wb25lbnQgYCUuMjU1cydcbiIKK21zZ3N0ciAiIgorImRwa2ctZGViwqA6IMKrwqAlLjI1NXPCoMK7IG5lIGNvbnRpZW50IHBhcyBkZSBjb21wb3NhbnQgZGUgY29udHLDtGxlIMKrwqAlLjI1NXPCoMK7XG4iCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAib3BlbiBjb21wb25lbnQgYCUuMjU1cycgKGluICUuMjU1cykgZmFpbGVkIGluIGFuIHVuZXhwZWN0ZWQgd2F5IgorbXNnc3RyICIiCisiw6ljaGVjIGRlIGwnb3V2ZXJ0dXJlIGR1IGNvbXBvc2FudCDCq8KgJS4yNTVzwqDCuyAoZGFucyAlLjI1NXMpIGQndW5lIG1hbmnDqHJlICIKKyJpbmF0dGVuZHVlIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTIxCisjLCBjLWZvcm1hdAorbXNnaWQgIiVkIHJlcXVlc3RlZCBjb250cm9sIGNvbXBvbmVudCBpcyBtaXNzaW5nIgorbXNnaWRfcGx1cmFsICIlZCByZXF1ZXN0ZWQgY29udHJvbCBjb21wb25lbnRzIGFyZSBtaXNzaW5nIgorbXNnc3RyWzBdICIlZCBjb21wb3NhbnQgZGUgY29udHLDtGxlIG7DqWNlc3NhaXJlIG1hbnF1ZSIKK21zZ3N0clsxXSAiJWQgY29tcG9zYW50cyBkZSBjb250csO0bGUgbsOpY2Vzc2FpcmVzIG1hbnF1ZW50IgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTM5IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo0MjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHNjYW4gZGlyZWN0b3J5IGAlLjI1NXMnIgorbXNnc3RyICJuZSBwZXV0IHBhcyBwYXJjb3VyaXIgbGUgcsOpcGVydG9pcmUgwqvCoCUuMjU1c8KgwrsiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHN0YXQgYCUuMjU1cycgKGluIGAlLjI1NXMnKSIKK21zZ3N0ciAibmUgcGV1dCBwYXMgYW5hbHlzZXIgwqvCoCUuMjU1c8KgwrsgKGRhbnMgwqvCoCUuMjU1c8KgwrspIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTUyCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBvcGVuIGAlLjI1NXMnIChpbiBgJS4yNTVzJykiCittc2dzdHIgIm5lIHBldXQgcGFzIG91dnJpciDCq8KgJS4yNTVzwqDCuyAoZGFucyDCq8KgJS4yNTVzwqDCuykiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxNjcgZHBrZy1kZWIvaW5mby5jOjE4NSBkcGtnLWRlYi9pbmZvLmM6MTk5CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZWFkIGAlLjI1NXMnIChpbiBgJS4yNTVzJykiCittc2dzdHIgIsOpY2hlYyBkZSBsYSBsZWN0dXJlIMKrwqAlLjI1NXPCoMK7IChkYW5zIMKrwqAlLjI1NXPCoMK7KSIKKworIzogZHBrZy1kZWIvaW5mby5jOjE3MAorIywgYy1mb3JtYXQKK21zZ2lkICIgJTdqZCBieXRlcywgJTVkIGxpbmVzICAgJWMgICUtMjAuMTI3cyAlLjEyN3NcbiIKK21zZ3N0ciAiICU3amQgb2N0ZXRzLCAlNWQgbGlnbmVzICAgJWMgICUtMjAuMTI3cyAlLjEyN3NcbiIKKworIzogZHBrZy1kZWIvaW5mby5jOjE3NAorIywgYy1mb3JtYXQKK21zZ2lkICIgICAgIG5vdCBhIHBsYWluIGZpbGUgICAgICAgICAgJS4yNTVzXG4iCittc2dzdHIgIiAgICAgbidlc3QgcGFzIHVuIHNpbXBsZSBmaWNoaWVyICAgICAgICAgICUuMjU1c1xuIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTg2Cittc2dpZCAiKG5vIGBjb250cm9sJyBmaWxlIGluIGNvbnRyb2wgYXJjaGl2ZSEpXG4iCittc2dzdHIgIihwYXMgZGUgZmljaGllciDCq8KgY29udHJvbMKgwrsgZGFucyBsJ2FyY2hpdmUgZGUgY29udHLDtGxlwqAhKVxuIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MjIyCittc2dpZCAiY291bGQgbm90IG9wZW4gdGhlIGBjb250cm9sJyBjb21wb25lbnQiCittc2dzdHIgIm5lIHBldXQgcGFzIG91dnJpciBsZSBjb21wb3NhbnQgwqvCoGNvbnRyb2zCoMK7IgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MjYxCittc2dpZCAiZmFpbGVkIGR1cmluZyByZWFkIG9mIGBjb250cm9sJyBjb21wb25lbnQiCittc2dzdHIgIsOpY2hlYyBzdXJ2ZW51IHBlbmRhbnQgbGEgbGVjdHVyZSBkdSBjb21wb3NhbnQgwqvCoGNvbnRyb2zCoMK7IgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MjYzCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgdGhlICclcycgY29tcG9uZW50IgorbXNnc3RyICJlcnJldXIgcGVuZGFudCBsYSBmZXJtZXR1cmUgZHUgY29tcG9zYW50IMKrwqAlc8KgwrsiCisKKyM6IGRwa2ctZGViL2luZm8uYzoyNzgKK21zZ2lkICJFcnJvciBpbiBmb3JtYXQiCittc2dzdHIgIkVycmV1ciBkYW5zIGxlIGZvcm1hdCIKKworIzogZHBrZy1kZWIvaW5mby5jOjMyOAorbXNnaWQgIi0tY29udGVudHMgdGFrZXMgZXhhY3RseSBvbmUgYXJndW1lbnQiCittc2dzdHIgIi0tY29udGVudHMgcHJlbmQgZXhhY3RlbWVudCB1biBwYXJhbcOodHJlIgorCisjOiBkcGtnLWRlYi9tYWluLmM6NTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuIGAlcycgcGFja2FnZSBhcmNoaXZlIGJhY2tlbmQgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiT3V0aWwgJXMgZGUgZ2VzdGlvbiBlbiBhcnJpw6hyZS1wbGFuIGRlcyBhcmNoaXZlcyBEZWJpYW4sIHZlcnNpb24gJXMuXG4iCisKKyM6IGRwa2ctZGViL21haW4uYzo3MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIkNvbW1hbmRzOlxuIgorI3wgIiAgLWJ8LS1idWlsZCA8ZGlyZWN0b3J5PiBbPGRlYj5dICAgQnVpbGQgYW4gYXJjaGl2ZS5cbiIKKyN8ICIgIC1jfC0tY29udGVudHMgPGRlYj4gICAgICAgICAgICAgIExpc3QgY29udGVudHMuXG4iCisjfCAiICAtSXwtLWluZm8gPGRlYj4gWzxjZmlsZT4gLi4uXSAgICBTaG93IGluZm8gdG8gc3Rkb3V0LlxuIgorI3wgIiAgLVd8LS1zaG93IDxkZWI+ICAgICAgICAgICAgICAgICAgU2hvdyBpbmZvcm1hdGlvbiBvbiBwYWNrYWdlKHMpXG4iCisjfCAiICAtZnwtLWZpZWxkIDxkZWI+IFs8Y2ZpZWxkPiAuLi5dICBTaG93IGZpZWxkKHMpIHRvIHN0ZG91dC5cbiIKKyN8ICIgIC1lfC0tY29udHJvbCA8ZGViPiBbPGRpcmVjdG9yeT5dIEV4dHJhY3QgY29udHJvbCBpbmZvLlxuIgorI3wgIiAgLXh8LS1leHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+ICAgRXh0cmFjdCBmaWxlcy5cbiIKKyN8ICIgIC1YfC0tdmV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gIEV4dHJhY3QgJiBsaXN0IGZpbGVzLlxuIgorI3wgIiAgLS1mc3lzLXRhcmZpbGUgPGRlYj4gICAgICAgICAgICAgT3V0cHV0IGZpbGVzeXN0ZW0gdGFyZmlsZS5cbiIKKyN8ICJcbiIKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtYnwtLWJ1aWxkIDxkaXJlY3Rvcnk+IFs8ZGViPl0gICBCdWlsZCBhbiBhcmNoaXZlLlxuIgorIiAgLWN8LS1jb250ZW50cyA8ZGViPiAgICAgICAgICAgICAgTGlzdCBjb250ZW50cy5cbiIKKyIgIC1JfC0taW5mbyA8ZGViPiBbPGNmaWxlPiAuLi5dICAgIFNob3cgaW5mbyB0byBzdGRvdXQuXG4iCisiICAtV3wtLXNob3cgPGRlYj4gICAgICAgICAgICAgICAgICBTaG93IGluZm9ybWF0aW9uIG9uIHBhY2thZ2UocylcbiIKKyIgIC1mfC0tZmllbGQgPGRlYj4gWzxjZmllbGQ+IC4uLl0gIFNob3cgZmllbGQocykgdG8gc3Rkb3V0LlxuIgorIiAgLWV8LS1jb250cm9sIDxkZWI+IFs8ZGlyZWN0b3J5Pl0gRXh0cmFjdCBjb250cm9sIGluZm8uXG4iCisiICAteHwtLWV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gICBFeHRyYWN0IGZpbGVzLlxuIgorIiAgLVh8LS12ZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PiAgRXh0cmFjdCAmIGxpc3QgZmlsZXMuXG4iCisiICAtUnwtLXJhdy1leHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFeHRyYWN0IGNvbnRyb2wgaW5mbyBhbmQgZmlsZXMuXG4iCisiICAtLWZzeXMtdGFyZmlsZSA8ZGViPiAgICAgICAgICAgICBPdXRwdXQgZmlsZXN5c3RlbSB0YXJmaWxlLlxuIgorIlxuIgorbXNnc3RyICIiCisiIENvbW1hbmRlc8KgOlxuIgorIiAgIC1ifC0tYnVpbGQgPHLDqXBlcnRvaXJlPiBbPGRlYj5dICAgQ29uc3RydWlyZSB1bmUgYXJjaGl2ZS5cbiIKKyIgICAtY3wtLWNvbnRlbnRzIDxkZWI+ICAgICAgICAgICAgICAgTGlzdGVyIGxlIGNvbnRlbnUuXG4iCisiICAgLUl8LS1pbmZvIDxkZWI+IFs8Y2ZpbGU+Li4uXSAgICAgIEFmZmljaGVyIGxlcyBpbmZvcm1hdGlvbnMgc3VyXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhIHNvcnRpZSBzdGFuZGFyZC5cbiIKKyIgICAtV3wtLXNob3cgPGRlYj4gICAgICAgICAgICAgICAgICAgTW9udHJlciBkZXMgaW5mb3JtYXRpb25zIHN1clxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZSBwYXF1ZXQuXG4iCisiICAgLWZ8LS1maWVsZCA8ZGViPiBbPGNmaWVsZD4uLi5dICAgIEFmZmljaGVyIGxlKHMpIGNoYW1wKHMpIHN1ciBsYVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzb3J0aWUgc3RhbmRhcmQuXG4iCisiICAgLWV8LS1jb250cm9sIDxkZWI+IFs8csOpcGVydG9pcmU+XSBFeHRyYWlyZSBsJ2luZm9ybWF0aW9uIGRlIGNvbnRyw7RsZS5cbiIKKyIgICAteHwtLWV4dHJhY3QgPGRlYj4gPHLDqXBlcnRvaXJlPiAgIEV4dHJhaXJlIGxlcyBmaWNoaWVycy5cbiIKKyIgICAtWHwtLXZleHRyYWN0IDxkZWI+IDxyw6lwZXJ0b2lyZT4gIEV4dHJhaXJlIGV0IGxpc3RlciBsZXMgZmljaGllcnMuXG4iCisiICAgLS1mc3lzLXRhcmZpbGUgPGRlYj4gICAgICAgICAgICAgIFJlc3RpdHVlciBsZSBzeXN0w6htZSBkZSBmaWNoaWVyc1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZSBsJ2FyY2hpdmUgdGFyLlxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6OTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIjxkZWI+IGlzIHRoZSBmaWxlbmFtZSBvZiBhIERlYmlhbiBmb3JtYXQgYXJjaGl2ZS5cbiIKKyI8Y2ZpbGU+IGlzIHRoZSBuYW1lIG9mIGFuIGFkbWluaXN0cmF0aXZlIGZpbGUgY29tcG9uZW50LlxuIgorIjxjZmllbGQ+IGlzIHRoZSBuYW1lIG9mIGEgZmllbGQgaW4gdGhlIG1haW4gYGNvbnRyb2wnIGZpbGUuXG4iCisiXG4iCittc2dzdHIgIiIKKyI8ZGViPiBlc3QgbGUgbm9tIGRlIGZpY2hpZXIgZCd1bmUgYXJjaGl2ZSBhdSBmb3JtYXQgRGViaWFuLlxuIgorIjxjZmlsZT4gZXN0IGxlIG5vbSBkJ3VuIGNvbXBvc2FudCBmaWNoaWVyIGFkbWluaXN0cmF0aWYuXG4iCisiPGNmaWVsZD4gZXN0IGxlIG5vbSBkJ3VuIGNoYW1wIGRhbnMgbGUgZmljaGllciDCq8KgY29udHJvbMKgwrsgcHJpbmNpcGFsLlxuIgorIlxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6OTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJPcHRpb25zOlxuIgorI3wgIiAgLS1zaG93Zm9ybWF0PTxmb3JtYXQ+ICAgICAgICAgICAgVXNlIGFsdGVybmF0aXZlIGZvcm1hdCBmb3IgLS1zaG93LlxuIgorI3wgIiAgLUQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRW5hYmxlIGRlYnVnZ2luZyBvdXRwdXQuXG4iCisjfCAiICAtLW9sZCwgLS1uZXcgICAgICAgICAgICAgICAgICAgICBTZWxlY3QgYXJjaGl2ZSBmb3JtYXQuXG4iCisjfCAiICAtLW5vY2hlY2sgICAgICAgICAgICAgICAgICAgICAgICBTdXBwcmVzcyBjb250cm9sIGZpbGUgY2hlY2sgKGJ1aWxkICIKKyN8ICJiYWRcbiIKKyN8ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFja2FnZXMpLlxuIgorI3wgIiAgLXojICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU2V0IHRoZSBjb21wcmVzc2lvbiBsZXZlbCB3aGVuICIKKyN8ICJidWlsZGluZy5cbiIKKyN8ICIgIC1aPHR5cGU+ICAgICAgICAgICAgICAgICAgICAgICAgIFNldCB0aGUgY29tcHJlc3Npb24gdHlwZSB1c2VkIHdoZW4gIgorI3wgImJ1aWxkaW5nLlxuIgorI3wgIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBbGxvd2VkIHR5cGVzOiBnemlwLCB4eiwgYnppcDIsICIKKyN8ICJsem1hLCBub25lLlxuIgorI3wgIlxuIgorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1zaG93Zm9ybWF0PTxmb3JtYXQ+ICAgICAgICAgICAgVXNlIGFsdGVybmF0aXZlIGZvcm1hdCBmb3IgLS1zaG93LlxuIgorIiAgLXYsIC0tdmVyYm9zZSAgICAgICAgICAgICAgICAgICAgRW5hYmxlIHZlcmJvc2Ugb3V0cHV0LlxuIgorIiAgLUQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRW5hYmxlIGRlYnVnZ2luZyBvdXRwdXQuXG4iCisiICAtLW9sZCwgLS1uZXcgICAgICAgICAgICAgICAgICAgICBTZWxlY3QgYXJjaGl2ZSBmb3JtYXQuXG4iCisiICAtLW5vY2hlY2sgICAgICAgICAgICAgICAgICAgICAgICBTdXBwcmVzcyBjb250cm9sIGZpbGUgY2hlY2sgKGJ1aWxkIGJhZFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWNrYWdlcykuXG4iCisiICAteiMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTZXQgdGhlIGNvbXByZXNzaW9uIGxldmVsIHdoZW4gYnVpbGRpbmcuXG4iCisiICAtWjx0eXBlPiAgICAgICAgICAgICAgICAgICAgICAgICBTZXQgdGhlIGNvbXByZXNzaW9uIHR5cGUgdXNlZCB3aGVuICIKKyJidWlsZGluZy5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWxsb3dlZCB0eXBlczogZ3ppcCwgeHosIGJ6aXAyLCBsem1hLCAiCisibm9uZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIk9wdGlvbnPCoDpcbiIKKyIgIC0tc2hvd2Zvcm1hdD08Zm9ybWF0PiAgVXRpbGlzZXIgdW4gZm9ybWF0YWdlIGFsdGVybmF0aWYgcG91ciAtLXNob3cuXG4iCisiICAtRCAgICAgICAgICAgICAgICAgICAgIEFjdGl2ZXIgbGEgc29ydGllIGRlIGTDqWJvZ2FnZS5cbiIKKyIgIC0tb2xkLCAtLW5ldyAgICAgICAgICAgQ29udHLDtGxlciBsZSBmb3JtYXQgZCdhcmNoaXZlLlxuIgorIiAgLS1uby1jaGVjayAgICAgICAgICAgICBTdXBwcmltZXIgbGEgdsOpcmlmaWNhdGlvbiBkdSBmaWNoaWVyIGNvbnRyb2xcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgKGNvbnN0cnVpdCBkZXMgcGFxdWV0cyBhYsOubcOpcykuXG4iCisiICAteiMgICAgICAgICAgICAgICAgICAgIFV0aWxpc2VyIGxhIGNvbXByZXNzaW9uIGxvcnMgZGUgbGEgY29uc3RydWN0aW9uLlxuIgorIiAgLVo8dHlwZT4gICAgICAgICAgICAgICBJbmRpcXVlciBsZSB0eXBlIGRlIGNvbXByZXNzaW9uIHV0aWxpc8OpZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICBwb3VyIGxhIGNvbnN0cnVjdGlvbi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgVmFsZXVycyBwb3NzaWJsZXPCoDogZ3ppcCwgeHosIGJ6aXAyLCBsem1hLCBub25lLlxuIgorIlxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTIxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJVc2UgYGRwa2cnIHRvIGluc3RhbGwgYW5kIHJlbW92ZSBwYWNrYWdlcyBmcm9tIHlvdXIgc3lzdGVtLCBvclxuIgorImBkc2VsZWN0JyBvciBgYXB0aXR1ZGUnIGZvciB1c2VyLWZyaWVuZGx5IHBhY2thZ2UgbWFuYWdlbWVudC4gIFBhY2thZ2VzXG4iCisidW5wYWNrZWQgdXNpbmcgYGRwa2ctZGViIC0tZXh0cmFjdCcgd2lsbCBiZSBpbmNvcnJlY3RseSBpbnN0YWxsZWQgIVxuIgorbXNnc3RyICIiCisiXG4iCisiVXRpbGlzZXogwqvCoGRwa2fCoMK7IHBvdXIgaW5zdGFsbGVyIGV0IHN1cHByaW1lciBkZXMgcGFxdWV0cyBkZSB2b3RyZVxuIgorInN5c3TDqG1lLCBvdSDCq8KgZHNlbGVjdMKgwrsgb3UgwqvCoGFwdGl0dWRlwqDCuyBwb3VyIHVuZSBnZXN0aW9uIGNvbnZpdmlhbGVcbiIKKyJkZXMgcGFxdWV0cy5cbiIKKyJMZXMgcGFxdWV0cyBkw6lwYXF1ZXTDqXMgZW4gdXRpbGlzYW50IMKrwqBkcGtnLWRlYiAtLWV4dHJhY3TCoMK7IHNlcm9udFxuIgorImluY29ycmVjdGVtZW50IGluc3RhbGzDqXMuXG4iCisKKyM6IGRwa2ctZGViL21haW4uYzoxMzIKK21zZ2lkICIiCisiVHlwZSBkcGtnLWRlYiAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgbWFuaXB1bGF0aW5nICouZGViIGZpbGVzO1xuIgorIlR5cGUgZHBrZyAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgaW5zdGFsbGluZyBhbmQgZGVpbnN0YWxsaW5nIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorIlRhcGVyIGRwa2ctZGViIC0taGVscCBwb3VyIG9idGVuaXIgdW5lIGFpZGUgw6AgcHJvcG9zIGRlIGxhIG1hbmlwdWxhdGlvbiBkZXMgIgorImZpY2hpZXJzICouZGViwqA7XG4iCisiVGFwZXIgZHBrZyAtLWhlbHAgcG91ciBvYnRlbmlyIHVuZSBhaWRlIHN1ciBsJ2luc3RhbGxhdGlvbiBldCBsYSAiCisiZMOpc2luc3RhbGxhdGlvbiBkZXMgcGFxdWV0cy4iCisKKyM6IGRwa2ctZGViL21haW4uYzoxNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBpbnRlZ2VyIGZvciAtJWM6ICclLjI1MHMnIgorbXNnc3RyICJlbnRpZXIgaW5jb3JyZWN0IHBvdXIgLS0lY8KgOyDCq8KgJS4yNTBzwqDCuyIKKworIzogZHBrZy1kZWIvbWFpbi5jOjE1MQorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGNvbXByZXNzaW9uIGxldmVsIGZvciAtJWM6ICVsZCciCittc2dzdHIgImZvcm1hdCBkZSBjb21wcmVzc2lvbiBub24gdmFsYWJsZSBwb3VyIC0lY8KgOiAlbGQiCisKKyM6IGRwa2ctZGViL21haW4uYzoxNjEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBjb21wcmVzc2lvbiB0eXBlIGAlcychIgorbXNnc3RyICJ0eXBlIGRlIGNvbXByZXNzaW9uICVzIGluY29ubnUiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjUyCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBkaWdpdCAoY29kZSAlZCkgaW4gJXMiCittc2dzdHIgImxlIGZpY2hpZXIgwqvCoCUuMjUwc8KgwrsgZXN0IGNvcnJvbXB1IC0gbWF1dmFpcyBjaGlmZnJlIChjb2RlICVkKSBkYW5zICVzIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzo2MAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSAlLjI1MHMgbWlzc2luZyIKK21zZ3N0ciAibGUgZmljaGllciDCq8KgJS4yNTBzwqDCuyBlc3QgY29ycm9tcHUgLSAlLjI1MHMgbWFucXVhbnQiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjYzCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIG1pc3NpbmcgbmV3bGluZSBhZnRlciAlLjI1MHMiCittc2dzdHIgIiIKKyJsZSBmaWNoaWVyIMKrwqAlLjI1MHPCoMK7IGVzdCBjb3Jyb21wdSAtIHNhdXQgZGUgbGlnbmUgYXByw6hzICUuMjUwcyBtYW5xdWFudCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6ODkgZHBrZy1zcGxpdC9tYWluLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHJlYWRpbmcgJS4yNTBzIgorbXNnc3RyICJlcnJldXIgZGUgbGVjdHVyZSBzdXIgJS4yNTBzIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIG1hZ2ljIGF0IGVuZCBvZiBmaXJzdCBoZWFkZXIiCittc2dzdHIgIiIKKyJsZSBmaWNoaWVyIMKrwqAlLjI1MHPCoMK7IGVzdCBjb3Jyb21wdSAtIG1hdXZhaXMgbm9tYnJlIG1hZ2lxdWUgKMKrwqBtYWdpY8KgwrspIMOgIGxhICIKKyJmaW4gIGR1IHByZW1pZXIgZW4tdMOqdGUiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjExMworIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgcGFkZGluZyBjaGFyYWN0ZXIgKGNvZGUgJWQpIgorbXNnc3RyICIiCisibGUgZmljaGllciDCq8KgJS4yNTBzwqDCuyBlc3QgY29ycm9tcHUgLSBtaXNlIGVuIGZvcm1lIGluY29ycmVjdGXCoDogY2FyYWN0w6hyZSAiCisiKGNvZGUgJWQpIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gbnVsbHMgaW4gaW5mbyBzZWN0aW9uIgorbXNnc3RyICIiCisibGUgZmljaGllciDCq8KgJS4yNTBzwqDCuyBlc3QgY29ycm9tcHUgLSBjYXJhY3TDqHJlcyBudWxzIHJlbmNvbnRyw6lzIGRhbnMgbGEgIgorInNlY3Rpb24gaW5mbyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTIyCittc2dpZCAiZm9ybWF0IHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICJudW3DqXJvIGRlIHZlcnNpb24gZGUgZm9ybWF0IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBmb3JtYXQgdmVyc2lvbiBgJS4yNTBzJyAtIHlvdSBuZWVkIGEgbmV3ZXIgZHBrZy1zcGxpdCIKK21zZ3N0ciAiIgorImxlIGZpY2hpZXIgwqvCoCUuMjUwc8KgwrsgYSDCq8KgJS4yNTBzwqDCuyBwb3VyIHZlcnNpb24gZGUgZm9ybWF0IC0gdm91cyBhdmV6IGJlc29pbiAiCisiZCd1biBkcGtnLXNwbGl0IHBsdXMgcsOpY2VudCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTI3Cittc2dpZCAicGFja2FnZSBuYW1lIgorbXNnc3RyICJub20gZHUgcGFxdWV0IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMjgKK21zZ2lkICJwYWNrYWdlIHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICJudW3DqXJvIGRlIHZlcnNpb24gZHUgcGFxdWV0IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMjkKK21zZ2lkICJwYWNrYWdlIGZpbGUgTUQ1IGNoZWNrc3VtIgorbXNnc3RyICJzb21tZSBkZSBjb250csO0bGUgTUQ1IGR1IGZpY2hpZXIgZHUgcGFxdWV0IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIE1ENSBjaGVja3N1bSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorImxlIGZpY2hpZXIgwqvCoCUuMjUwc8KgwrsgZXN0IGNvcnJvbXB1IC0gbWF1dmFpcyBjb2RlIGRlIGNvbnRyw7RsZSBNRDUgwqvCoCUuMjUwc8KgwrsiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEzNCBkcGtnLXNwbGl0L2luZm8uYzoxMzUKK21zZ2lkICJhcmNoaXZlIHRvdGFsIHNpemUiCittc2dzdHIgInRhaWxsZSB0b3RhbGUgZGUgbCdhcmNoaXZlIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMzYgZHBrZy1zcGxpdC9pbmZvLmM6MTM3Cittc2dpZCAiYXJjaGl2ZSBwYXJ0IG9mZnNldCIKK21zZ3N0ciAiZMOpY2FsYWdlIGRlIGxhIHBhcnRpZSBkJ2FyY2hpdmUiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEzOQorbXNnaWQgImFyY2hpdmUgcGFydCBudW1iZXJzIgorbXNnc3RyICJudW3DqXJvcyBkZXMgcGFydGllcyBkJ2FyY2hpdmUiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE0MgorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBubyBzbGFzaCBiZXR3ZWVuIGFyY2hpdmUgcGFydCBudW1iZXJzIgorbXNnc3RyICIiCisibGUgZmljaGllciDCq8KgJS4yNTBzwqDCuyBlc3QgY29ycm9tcHUgLSBwYXMgZGUgYmFycmUgb2JsaXF1ZSBlbnRyZSBsZXMgbnVtw6lyb3MgIgorImRlIHBhcnRpZXMgZCdhcmNoaXZlIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDUKK21zZ2lkICJudW1iZXIgb2YgYXJjaGl2ZSBwYXJ0cyIKK21zZ3N0ciAibm9tYnJlIGRlIHBhcnRpZXMgZCdhcmNoaXZlIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIG51bWJlciBvZiBhcmNoaXZlIHBhcnRzIgorbXNnc3RyICIiCisibGUgZmljaGllciDCq8KgJS4yNTBzwqDCuyBlc3QgY29ycm9tcHUgLSBtYXV2YWlzIG5vbWJyZSBkZSBwYXJ0aWVzIGQnYXJjaGl2ZSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTQ5Cittc2dpZCAiYXJjaGl2ZSBwYXJ0cyBudW1iZXIiCittc2dzdHIgIm51bcOpcm8gZGVzIHBhcnRpZXMgZCdhcmNoaXZlIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIGFyY2hpdmUgcGFydCBudW1iZXIiCittc2dzdHIgIiIKKyJsZSBmaWNoaWVyIMKrwqAlLjI1MHPCoMK7IGVzdCBjb3Jyb21wdSAtIG1hdXZhaXMgbm9tYnJlIGRlIHBhcnRpZXMgZCdhcmNoaXZlIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNTcKKyMsIGZ1enp5CisjfCBtc2dpZCAicGFja2FnZSBuYW1lIgorbXNnaWQgInBhY2thZ2UgYXJjaGl0ZWN0dXJlIgorbXNnc3RyICJub20gZHUgcGFxdWV0IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIG1hZ2ljIGF0IGVuZCBvZiBzZWNvbmQgaGVhZGVyIgorbXNnc3RyICIiCisibGUgZmljaGllciDCq8KgJS4yNTBzwqDCuyBlc3QgY29ycm9tcHUgLSBtYXV2YWlzIMKrwqBtYWdpY8Kgwrsgw6AgbGEgZmluIGRlIGxhICIKKyJzZWN0aW9uIGQnZW4tdMOqdGUiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE2OAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBzZWNvbmQgbWVtYmVyIGlzIG5vdCBkYXRhIG1lbWJlciIKK21zZ3N0ciAiIgorImxlIGZpY2hpZXIgwqvCoCUuMjUwc8KgwrsgZXN0IGNvcnJvbXB1IC0gbGUgZGV1eGnDqG1lIMOpbMOpbWVudCBuJ2VzdCBwYXMgdW4gIgorIsOpbMOpbWVudCBkZSBkb25uw6llcyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTc0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIHdyb25nIG51bWJlciBvZiBwYXJ0cyBmb3IgcXVvdGVkIHNpemVzIgorbXNnc3RyICIiCisibGUgZmljaGllciDCq8KgJS4yNTBzwqDCuyBlc3QgY29ycm9tcHUgLSBtYXV2YWlzIG5vbWJyZSBkZSBwYXJ0aWVzIHBvdXIgbGVzICIKKyJ0YWlsbGVzXG4iCisiY2l0w6llcyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTc4CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIHNpemUgaXMgd3JvbmcgZm9yIHF1b3RlZCBwYXJ0IG51bWJlciIKK21zZ3N0ciAiIgorImxlIGZpY2hpZXIgwqvCoCUuMjUwc8KgwrsgZXN0IGNvcnJvbXB1IC0gbWF1dmFpc2UgdGFpbGxlIGR1IG5vbWJyZSBkZSBwYXJ0aWVzICIKKyJjaXTDqWVzIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxODQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZzdGF0IHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkJ2V4w6ljdXRlciDCq8KgZnN0YXTCoMK7IHN1ciBsZSBmaWNoaWVyIMKrwqAlLjI1MHPCoMK7IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gdG9vIHNob3J0IgorbXNnc3RyICJsZSBmaWNoaWVyIMKrwqAlLjI1MHPCoMK7IGVzdCBjb3Jyb21wdSAtIHRyb3AgY291cnQiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjIwMiBkcGtnLXNwbGl0L2luZm8uYzoyNDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IG9wZW4gYXJjaGl2ZSBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5lIHBldXQgcGFzIG91dnJpciBsZSBmaWNoaWVyIMKrwqAlLjI1MHPCoMK7IGRlIGwnYXJjaGl2ZSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjA0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgbm90IGFuIGFyY2hpdmUgcGFydCIKK21zZ3N0ciAibGUgZmljaGllciDCq8KgJS4yNTBzwqDCuyBuJ2VzdCBwYXMgdW5lIHBhcnRpZSBkZSBsJ2FyY2hpdmUiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjIwOQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiVzOlxuIgorI3wgIiAgICBQYXJ0IGZvcm1hdCB2ZXJzaW9uOiAgICAgICAgICAgICVzXG4iCisjfCAiICAgIFBhcnQgb2YgcGFja2FnZTogICAgICAgICAgICAgICAgJXNcbiIKKyN8ICIgICAgICAgIC4uLiB2ZXJzaW9uOiAgICAgICAgICAgICAgICAlc1xuIgorI3wgIiAgICAgICAgLi4uIE1ENSBjaGVja3N1bTogICAgICAgICAgICVzXG4iCisjfCAiICAgICAgICAuLi4gbGVuZ3RoOiAgICAgICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisjfCAiICAgICAgICAuLi4gc3BsaXQgZXZlcnk6ICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisjfCAiICAgIFBhcnQgbnVtYmVyOiAgICAgICAgICAgICAgICAgICAgJWQvJWRcbiIKKyN8ICIgICAgUGFydCBsZW5ndGg6ICAgICAgICAgICAgICAgICAgICAlamQgYnl0ZXNcbiIKKyN8ICIgICAgUGFydCBvZmZzZXQ6ICAgICAgICAgICAgICAgICAgICAlamQgYnl0ZXNcbiIKKyN8ICIgICAgUGFydCBmaWxlIHNpemUgKHVzZWQgcG9ydGlvbik6ICAlamQgYnl0ZXNcbiIKKyN8ICJcbiIKK21zZ2lkICIiCisiJXM6XG4iCisiICAgIFBhcnQgZm9ybWF0IHZlcnNpb246ICAgICAgICAgICAgJXNcbiIKKyIgICAgUGFydCBvZiBwYWNrYWdlOiAgICAgICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIHZlcnNpb246ICAgICAgICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gYXJjaGl0ZWN0dXJlOiAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiBNRDUgY2hlY2tzdW06ICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIGxlbmd0aDogICAgICAgICAgICAgICAgICVqZCBieXRlc1xuIgorIiAgICAgICAgLi4uIHNwbGl0IGV2ZXJ5OiAgICAgICAgICAgICVqZCBieXRlc1xuIgorIiAgICBQYXJ0IG51bWJlcjogICAgICAgICAgICAgICAgICAgICVkLyVkXG4iCisiICAgIFBhcnQgbGVuZ3RoOiAgICAgICAgICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgIFBhcnQgb2Zmc2V0OiAgICAgICAgICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgIFBhcnQgZmlsZSBzaXplICh1c2VkIHBvcnRpb24pOiAgJWpkIGJ5dGVzXG4iCisiXG4iCittc2dzdHIgIiIKKyIlc8KgOlxuIgorIiAgICBWZXJzaW9uIGR1IGZvcm1hdCBkZSBwYXJ0aWXCoDogICAgICAgICAgICAgICAgICAlc1xuIgorIiAgICBQYXJ0aWUgZHUgcGFxdWV0wqA6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIHZlcnNpb27CoDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIGNvZGUgZGUgY29udHLDtGxlIE1ENcKgOiAgICAgICAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiBsb25ndWV1csKgOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJWpkIG9jdGV0c1xuIgorIiAgICAgICAgLi4uIGNvdXDDqSB0b3VzIGxlc8KgOiAgICAgICAgICAgICAgICAgICAgICAgJWpkIG9jdGV0c1xuIgorIiAgICBOdW3DqXJvIGRlIHBhcnRpZcKgOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJWQvJWRcbiIKKyIgICAgTG9uZ3VldXIgZGUgbGEgcGFydGllwqA6ICAgICAgICAgICAgICAgICAgICAgICAgJWpkIG9jdGV0c1xuIgorIiAgICBEw6ljYWxhZ2UgZGUgbGEgcGFydGllwqA6ICAgICAgICAgICAgICAgICAgICAgICAgJWpkIG9jdGV0c1xuIgorIiAgICBUYWlsbGUgZHUgZmljaGllciAocG9ydGlvbiB1dGlsaXPDqWUpwqA6ICAgICAgICAgJWpkIG9jdGV0c1xuIgorIlxuIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyMjUKKyMsIGZ1enp5CisjfCBtc2djdHh0ICJzZWN0aW9uIgorI3wgbXNnaWQgIjx1bmtub3duPiIKK21zZ2N0eHQgImFyY2hpdGVjdHVyZSIKK21zZ2lkICI8dW5rbm93bj4iCittc2dzdHIgIjxpbmNvbm51PiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjQ0IGRwa2ctc3BsaXQvam9pbi5jOjEwNQorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIHJlcXVpcmVzIG9uZSBvciBtb3JlIHBhcnQgZmlsZSBhcmd1bWVudHMiCittc2dzdHIgIi0tJXMgcmVxdWllcnQgdW4gb3UgcGx1c2lldXJzIGZpY2hpZXJzIGRlIHBhcnRpZXMgY29tbWUgcGFyYW3DqHRyZXMiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjI1NQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlcycgaXMgbm90IGFuIGFyY2hpdmUgcGFydFxuIgorbXNnc3RyICJsZSBmaWNoaWVyIMKrwqAlc8Kgwrsgbidlc3QgcGFzIHVuZSBwYXJ0aWUgZCdhcmNoaXZlXG4iCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjQ0CisjLCBjLWZvcm1hdAorbXNnaWQgIlB1dHRpbmcgcGFja2FnZSAlcyB0b2dldGhlciBmcm9tICVkIHBhcnQ6ICIKK21zZ2lkX3BsdXJhbCAiUHV0dGluZyBwYWNrYWdlICVzIHRvZ2V0aGVyIGZyb20gJWQgcGFydHM6ICIKK21zZ3N0clswXSAiQXNzZW1ibGFnZSBkdSBwYXF1ZXQgJXMgw6AgcGFydGlyIGRlICVkIHBhcnRpZcKgOiIKK21zZ3N0clsxXSAiQXNzZW1ibGFnZSBkdSBwYXF1ZXQgJXMgw6AgcGFydGlyIGRlICVkIHBhcnRpZXPCoDoiCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjUxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIG91dHB1dCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJpbXBvc3NpYmxlIGQnb3V2cmlyIGxlIGZpY2hpZXIgZGUgc29ydGllIMKrwqAlLjI1MHPCoMK7IgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gKHJlKW9wZW4gaW5wdXQgcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJpbXBvc3NpYmxlIGRlIChyKW91dnJpciBsZSBmaWNoaWVyIGQnZW50csOpZSDCq8KgJS4yNTBzwqDCuyIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NTgKK21zZ2lkICJza2lwcGluZyBzcGxpdCBwYWNrYWdlIGhlYWRlciIKK21zZ3N0ciAiZW4tdMOqdGUgZGUgcGFxdWV0IGTDqWNvdXDDqSBpZ25vcsOpIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1OQorbXNnaWQgInNwbGl0IHBhY2thZ2UgcGFydCIKK21zZ3N0ciAicGFydGllIGQndW4gcGFxdWV0IGTDqWNvdXDDqSIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NjkgZHBrZy1zcGxpdC9zcGxpdC5jOjIzNworIywgYy1mb3JtYXQKK21zZ2lkICJkb25lXG4iCittc2dzdHIgImZhaXRcbiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZXMgYCUuMjUwcycgYW5kIGAlLjI1MHMnIGFyZSBub3QgcGFydHMgb2YgdGhlIHNhbWUgZmlsZSIKK21zZ3N0ciAiIgorImxlcyBmaWNoaWVycyDCq8KgJS4yNTBzwqDCuyBldCDCq8KgJS4yNTBzwqDCuyBuZSBzb250IHBhcyBkZXMgcGFydGllcyBkdSBtw6ptZSBmaWNoaWVyIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo5MAorIywgYy1mb3JtYXQKK21zZ2lkICJ0aGVyZSBhcmUgc2V2ZXJhbCB2ZXJzaW9ucyBvZiBwYXJ0ICVkIC0gYXQgbGVhc3QgYCUuMjUwcycgYW5kIGAlLjI1MHMnIgorbXNnc3RyICIiCisiaWwgeSBhIHBsdXNpZXVycyB2ZXJzaW9ucyBkZSBsYSBwYXJ0aWUgJWQgLSBhdSBtb2lucyDCq8KgJS4yNTBzwqDCuyBldCDCq8KgJS4yNTBzwqDCuyIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6MTI4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhcnQgJWQgaXMgbWlzc2luZyIKK21zZ3N0ciAibGEgcGFydGllICVkIGVzdCBtYW5xdWFudGUiCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjQ3CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiBgJXMnIHBhY2thZ2Ugc3BsaXQvam9pbiB0b29sOyB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICJPdXRpbCDCq8KgJXPCoMK7IGRlIChkw6lzKWFzc2VtYmxhZ2UgZGUgcGFxdWV0cyBEZWJpYW4sIHZlcnNpb24lcy5cbiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ29weXJpZ2h0IChDKSAxOTk0LTE5OTYgSWFuIEphY2tzb24uXG4iCittc2dzdHIgIkNvcHlyaWdodCAoQykgMTk5NC0xOTk2IElhbiBKYWNrc29uLlxuIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo2NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtc3wtLXNwbGl0IDxmaWxlPiBbPHByZWZpeD5dICAgICBTcGxpdCBhbiBhcmNoaXZlLlxuIgorIiAgLWp8LS1qb2luIDxwYXJ0PiA8cGFydD4gLi4uICAgICAgSm9pbiBwYXJ0cyB0b2dldGhlci5cbiIKKyIgIC1JfC0taW5mbyA8cGFydD4gLi4uICAgICAgICAgICAgIERpc3BsYXkgaW5mbyBhYm91dCBhIHBhcnQuXG4iCisiICAtYXwtLWF1dG8gLW8gPGNvbXBsZXRlPiA8cGFydD4gICBBdXRvLWFjY3VtdWxhdGUgcGFydHMuXG4iCisiICAtbHwtLWxpc3RxICAgICAgICAgICAgICAgICAgICAgICBMaXN0IHVubWF0Y2hlZCBwaWVjZXMuXG4iCisiICAtZHwtLWRpc2NhcmQgWzxmaWxlbmFtZT4gLi4uXSAgICBEaXNjYXJkIHVubWF0Y2hlZCBwaWVjZXMuXG4iCisiXG4iCittc2dzdHIgIiIKKyJDb21tYW5kZXPCoDpcbiIKKyIgICAgICAgLXN8LS1zcGxpdCA8ZmljaGllcj4gWzxwcsOpZml4ZT5dICAgRMOpY291cGVyIHVuZSBhcmNoaXZlLlxuIgorIiAgICAgICAtanwtLWpvaW4gPHBhcnRpZT4gPHBhcnRpZT4gLi4uICAgIEZ1c2lvbm5lciBsZXMgcGFydGllcy5cbiIKKyIgICAgICAgLUl8LS1pbmZvIDxwYXJ0aWU+IC4uLiAgICAgICAgICAgICBBZmZpY2hlciBsJ2luZm9ybWF0aW9uIHN1ciB1bmUgIgorInBhcnRpZS5cbiIKKyIgICAgICAgLWF8LS1hdXRvIC1vIDxjb21wbGV0PiA8cGFydGllPiAgICBBdXRvLWFzc2VtYmxlciBsZXMgcGFydGllcy5cbiIKKyIgICAgICAgLWx8LS1saXN0cSAgICAgICAgICAgICAgICAgICAgICAgICBMaXN0ZXIgbGVzIHBpw6hjZXMgaXNvbMOpZXMuXG4iCisiICAgICAgIC1kfC0tZGlzY2FyZCBbPG5vbSBmaWNoaWVyPiAuLi5dICAgQW5udWxlciBsZXMgcGnDqGNlcyBpc29sw6llcy5cbiIKKyJcbiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6ODIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJPcHRpb25zOlxuIgorI3wgIiAgLS1kZXBvdGRpciA8ZGlyZWN0b3J5PiAgICAgICAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMvJXMuXG4iCisjfCAiICAtU3wtLXBhcnRzaXplIDxzaXplPiAgICAgICAgICAgICBJbiBLaUIsIGZvciAtcyAoZGVmYXVsdCBpcyA0NTApLlxuIgorI3wgIiAgLW98LS1vdXRwdXQgPGZpbGU+ICAgICAgICAgICAgICAgRm9yIC1qIChkZWZhdWx0IGlzIDxwYWNrYWdlPi08dmVyc2lvbj4uIgorI3wgImRlYikuXG4iCisjfCAiICAtUXwtLW5wcXVpZXQgICAgICAgICAgICAgICAgICAgICBCZSBxdWlldCB3aGVuIC1hIGlzIG5vdCBhIHBhcnQuXG4iCisjfCAiICAtLW1zZG9zICAgICAgICAgICAgICAgICAgICAgICAgICBHZW5lcmF0ZSA4LjMgZmlsZW5hbWVzLlxuIgorI3wgIlxuIgorI3wgIkV4aXQgc3RhdHVzOiAwID0gT0s7ICAxID0gLWEgaXMgbm90IGEgcGFydDsgIDIgPSB0cm91YmxlIVxuIgorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1kZXBvdGRpciA8ZGlyZWN0b3J5PiAgICAgICAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMvJXMuXG4iCisiICAtU3wtLXBhcnRzaXplIDxzaXplPiAgICAgICAgICAgICBJbiBLaUIsIGZvciAtcyAoZGVmYXVsdCBpcyA0NTApLlxuIgorIiAgLW98LS1vdXRwdXQgPGZpbGU+ICAgICAgICAgICAgICAgRmlsZW5hbWUsIGZvciAtaiAoZGVmYXVsdCBpc1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGFja2FnZT5fPHZlcnNpb24+XzxhcmNoPi5kZWIpLlxuIgorIiAgLVF8LS1ucHF1aWV0ICAgICAgICAgICAgICAgICAgICAgQmUgcXVpZXQgd2hlbiAtYSBpcyBub3QgYSBwYXJ0LlxuIgorIiAgLS1tc2RvcyAgICAgICAgICAgICAgICAgICAgICAgICAgR2VuZXJhdGUgOC4zIGZpbGVuYW1lcy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIk9wdGlvbnPCoDpcbiIKKyIgICAtLWRlcG90ZGlyIDxyw6lwZXJ0b2lyZT4gIChwYXIgZMOpZmF1dCAlcyAlcylcbiIKKyIgICAtU3wtLXBhcnRzaXplIDx0YWlsbGU+ICAgKHBvdXIgLXMsIHBhciBkw6lmYXV0IDQ1MMKga28pXG4iCisiICAgLW98LS1vdXRwdXQgPGZpY2hpZXI+ICAgIChwb3VyIC1qLCBwYXIgZMOpZmF1dCA8cGFxdWV0Pi08dmVyc2lvbj4uZGViKVxuIgorIiAgIC1RfC0tbnBxdWlldCAgICAgICAgICAgICAobmUgcmllbiBhZmZpY2hlciBxdWFuZCAtYSBuJ2VzdCBwYXMgdW5lICIKKyJwYXJ0aWUpXG4iCisiICAgLS1tc2RvcyAgICAgICAgICAgICAgICAgIChnw6luw6lyZXIgZGVzIG5vbXMgZGUgZmljaGllcnMgYXUgZm9ybWF0IDguMylcbiIKKyJcbiIKKyJDb2RlIGRlIHNvcnRpZcKgOiAwID0gT0vCoDsgIDEgPSAtYSBuJ2VzdCBwYXMgdW5lIHBhcnRpZcKgOyAgMiA9IHByb2Jsw6htZcKgIVxuIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo5MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiRXhpdCBzdGF0dXM6XG4iCisiICAwID0gb2tcbiIKKyIgIDEgPSB3aXRoIC0tYXV0bywgZmlsZSBpcyBub3QgYSBwYXJ0XG4iCisiICAyID0gdHJvdWJsZVxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjEwMworbXNnaWQgIlR5cGUgZHBrZy1zcGxpdCAtLWhlbHAgZm9yIGhlbHAuIgorbXNnc3RyICJUYXBlciBkcGtnLXNwbGl0IC0taGVscCBwb3VyIG9idGVuaXIgZGUgbCdhaWRlLiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6MTE1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGZpbGUgaW4gJS4yNTBzIgorbXNnc3RyICJmaW4gZGUgZmljaGllciBpbmF0dGVuZHVlIGRhbnMgJS4yNTBzIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMjYKK21zZ2lkICJwYXJ0IHNpemUgaXMgZmFyIHRvbyBsYXJnZSBvciBpcyBub3QgcG9zaXRpdmUiCittc2dzdHIgInRhaWxsZSBkZSBwYXJ0aWUgYmVhdWNvdXAgdHJvcCBncmFuZGUgb3UgbsOpZ2F0aXZlIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMzAKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFydCBzaXplIG11c3QgYmUgYXQgbGVhc3QgJWQgS2lCICh0byBhbGxvdyBmb3IgaGVhZGVyKSIKK21zZ3N0ciAiIgorImxhIHRhaWxsZSBkZSBwYXJ0aWUgZG9pdCDDqnRyZSBkJ2F1IG1vaW5zICVkwqBrbyAocG91ciBhdXRvcmlzZXIgbGVzIGVuLXTDqnRlcykiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzo5MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBkZXBvdCBkaXJlY3RvcnkgYCUuMjUwcyciCittc2dzdHIgImltcG9zc2libGUgZGUgbGlyZSBsZSByw6lwZXJ0b2lyZSBkZSBkw6lww7R0IMKrwqAlLjI1MHPCoMK7IgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTM0Cittc2dpZCAiLS1hdXRvIHJlcXVpcmVzIHRoZSB1c2Ugb2YgdGhlIC0tb3V0cHV0IG9wdGlvbiIKK21zZ3N0ciAiLS1hdXRvIHJlcXVpZXJ0IGwndXRpbGlzYXRpb24gZGUgbCdvcHRpb24gLS1vdXRwdXQiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxMzYKK21zZ2lkICItLWF1dG8gcmVxdWlyZXMgZXhhY3RseSBvbmUgcGFydCBmaWxlIGFyZ3VtZW50IgorbXNnc3RyICItLWF1dG8gcmVxdWllcnQgZXhhY3RlbWVudCB1biBmaWNoaWVyIGNvbW1lIHBhcmFtw6h0cmUiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxNDAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJpbXBvc3NpYmxlIGRlIGxpcmUgbGUgZmljaGllciDCq8KgJS4yNTBzwqDCuyIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE0MworIywgYy1mb3JtYXQKK21zZ2lkICJGaWxlIGAlLjI1MHMnIGlzIG5vdCBwYXJ0IG9mIGEgbXVsdGlwYXJ0IGFyY2hpdmUuXG4iCittc2dzdHIgIkxlIGZpY2hpZXIgwqvCoCUuMjUwc8KgwrsgbidhcHBhcnRpZW50IHBhcyDDoCB1bmUgYXJjaGl2ZSBtdWx0aS1wYXJ0aWVcbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE3OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVvcGVuIHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkZSByw6lvdXZyaXIgbGUgZmljaGllciDCq8KgJS4yNTBzwqDCuyIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE4MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBuZXcgZGVwb3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkJ291dnJpciB1biBub3V2ZWF1IGZpY2hpZXIgZGUgZMOpcMO0dCDCq8KgJS4yNTBzwqDCuyIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE4NAorbXNnaWQgImV4dHJhY3Rpbmcgc3BsaXQgcGFydCIKK21zZ3N0ciAiZXh0cmFjdGlvbiBkZSBsYSBwYXJ0aWUiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbmFtZSBuZXcgZGVwb3QgZmlsZSBgJS4yNTBzJyB0byBgJS4yNTBzJyIKK21zZ3N0ciAiIgorImltcG9zc2libGUgZGUgY2hhbmdlciBsZSBub20gZHUgZmljaGllciBkZSBkw6lww7R0IMKrwqAlLjI1MHPCoMK7IGVuIMKrwqAlLjI1MHPCoMK7IgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTk2CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhcnQgJWQgb2YgcGFja2FnZSAlcyBmaWxlZCAoc3RpbGwgd2FudCAiCittc2dzdHIgIlBhcnRpZSAlZCBkdSBwYXF1ZXQgJXMgbWlzZSBlbiBmaWxlIChtYW5xdWUgdG91am91cnMgIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjAwCittc2dpZCAiIGFuZCAiCittc2dzdHIgIiBldCAiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSB1c2VkLXVwIGRlcG90IGZpbGUgYCUuMjUwcyciCittc2dzdHIgImltcG9zc2libGUgZGUgc3VwcHJpbWVyIGxlIGZpY2hpZXIgZGUgZMOpcMO0dCB2aWTDqSDCq8KgJS4yNTBzwqDCuyIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjIzNQorbXNnaWQgIkp1bmsgZmlsZXMgbGVmdCBhcm91bmQgaW4gdGhlIGRlcG90IGRpcmVjdG9yeTpcbiIKK21zZ3N0ciAiRmljaGllcnMgaW51dGlsZXMgbGFpc3PDqXMgZGFucyBsZSByw6lwZXJ0b2lyZSBkZSBkw6lww7R0wqA6XG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNDAgZHBrZy1zcGxpdC9xdWV1ZS5jOjI2OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBgJS4yNTBzJyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkJ2FuYWx5c2VyIMKrwqAlLjI1MHPCoMK7IgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjQzCisjLCBjLWZvcm1hdAorbXNnaWQgIiAlcyAoJWpkIGJ5dGVzKVxuIgorbXNnc3RyICIgJXMgKCVqZCBvY3RldHMpXG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICVzIChub3QgYSBwbGFpbiBmaWxlKVxuIgorbXNnc3RyICIgJXMgKGNlIG4nZXN0IHBhcyB1biBzaW1wbGUgZmljaGllcilcbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI1MAorbXNnaWQgIlBhY2thZ2VzIG5vdCB5ZXQgcmVhc3NlbWJsZWQ6XG4iCittc2dzdHIgIlBhcXVldHMgbm9uIGVuY29yZSByw6lhc3NlbWJsw6lzwqA6XG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIFBhY2thZ2UgJXM6IHBhcnQocykgIgorbXNnc3RyICJQYXF1ZXQgJXPCoDrCoHBhcnRpZShzKSIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI3MQorIywgYy1mb3JtYXQKK21zZ2lkICJwYXJ0IGZpbGUgYCUuMjUwcycgaXMgbm90IGEgcGxhaW4gZmlsZSIKK21zZ3N0ciAibGUgZmljaGllciBwYXJ0aWUgwqvCoCUuMjUwc8Kgwrsgbidlc3QgcGFzIHVuIHNpbXBsZSBmaWNoaWVyIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6Mjc4CisjLCBjLWZvcm1hdAorbXNnaWQgIih0b3RhbCAlamQgYnl0ZXMpXG4iCittc2dzdHIgIiglamQgb2N0ZXRzIGF1IHRvdGFsKVxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MzA0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkaXNjYXJkIGAlLjI1MHMnIgorbXNnc3RyICJpbXBvc3NpYmxlIGQnYW5udWxlciDCq8KgJS4yNTBzwqDCuyIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjMwNQorIywgYy1mb3JtYXQKK21zZ2lkICJEZWxldGVkICVzLlxuIgorbXNnc3RyICIlcyBzdXBwcmltw6kuXG4iCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzo3MCBkcGtnLXNwbGl0L3NwbGl0LmM6NzYgZHBrZy1zcGxpdC9zcGxpdC5jOjgxCittc2dpZCAicGFja2FnZSBmaWVsZCB2YWx1ZSBleHRyYWN0aW9uIgorbXNnc3RyICJleHRyYWN0aW9uIGRlIGxhIHZhbGV1ciBkdSBjaGFtcCIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjEzMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBzb3VyY2UgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkJ291dnJpciBsZSBmaWNoaWVyIHNvdXJjZSDCq8KgJS4yNTBzwqDCuyIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjEzMworbXNnaWQgInVuYWJsZSB0byBmc3RhdCBzb3VyY2UgZmlsZSIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkZSDCq8KgZnN0YXTCoMK7IGxlIGZpY2hpZXIgc291cmNlIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTM1CisjLCBjLWZvcm1hdAorbXNnaWQgInNvdXJjZSBmaWxlIGAlLjI1MHMnIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgImxlIGZpY2hpZXIgc291cmNlIMKrwqAlLjI1MHPCoMK7IG4nZXN0IHBhcyB1biBzaW1wbGUgZmljaGllciIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjE1MworIywgYy1mb3JtYXQKK21zZ2lkICJTcGxpdHRpbmcgcGFja2FnZSAlcyBpbnRvICVkIHBhcnQ6ICIKK21zZ2lkX3BsdXJhbCAiU3BsaXR0aW5nIHBhY2thZ2UgJXMgaW50byAlZCBwYXJ0czogIgorbXNnc3RyWzBdICJEw6ljb3VwYWdlIGR1IHBhcXVldCAlcyBlbiAlZCBwYXJ0aWXCoDoiCittc2dzdHJbMV0gIkTDqWNvdXBhZ2UgZHUgcGFxdWV0ICVzIGVuICVkIHBhcnRpZXPCoDoiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxOTMKK21zZ2lkICIiCisiSGVhZGVyIGlzIHRvbyBsb25nLCBtYWtpbmcgcGFydCB0b28gbG9uZy4gWW91ciBwYWNrYWdlIG5hbWUgb3IgdmVyc2lvblxuIgorIm51bWJlcnMgbXVzdCBiZSBleHRyYW9yZGluYXJpbHkgbG9uZywgb3Igc29tZXRoaW5nLiBHaXZpbmcgdXAuXG4iCittc2dzdHIgIiIKKyJMJ2VuLXTDqnRlIGVzdCB0cm9wIGxvbmcsIGNlIHF1aSByZW5kIGxhIHBhcnRpZSB0cm9wIGxvbmd1ZS4gTGUgbm9tIGR1ICIKKyJwYXF1ZXRcbiIKKyJvdSBsZSBudW3DqXJvIGRlIHZlcnNpb24gZG9pdCDDqnRyZSBwYXJ0aWN1bGnDqHJlbWVudCBsb25nLiBBYmFuZG9uLlxuIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MjQ5Cittc2dpZCAiLS1zcGxpdCBuZWVkcyBhIHNvdXJjZSBmaWxlbmFtZSBhcmd1bWVudCIKK21zZ3N0ciAiLS1zcGxpdCBhIGJlc29pbiBkJ3VuIG5vbSBkZSBmaWNoaWVyIHNvdXJjZSBjb21tZSBwYXJhbcOodHJlIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MjUyCittc2dpZCAiLS1zcGxpdCB0YWtlcyBhdCBtb3N0IGEgc291cmNlIGZpbGVuYW1lIGFuZCBkZXN0aW5hdGlvbiBwcmVmaXgiCittc2dzdHIgIiIKKyItLXNwbGl0IHByZW5kIGF1IHBsdXMgdW4gbm9tIGRlIGZpY2hpZXIgc291cmNlIGV0IHVuIHByw6lmaXhlIGRlIGRlc3RpbmF0aW9uIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6ODQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAtMjAwMiBXaWNoZXJ0IEFra2VybWFuLlxuIgorIkNvcHlyaWdodCAoQykgMjAwOS0yMDEwIFJhcGhhZWwgSGVydHpvZy5cbiIKK21zZ3N0ciAiIgorIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAtMjAwMiBXaWNoZXJ0IEFra2VybWFuLlxuIgorIkNvcHlyaWdodCAoQykgMjAwOS0yMDEwIFJhcGhhZWwgSGVydHpvZy5cbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEwMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtLWluc3RhbGwgPGxpbms+IDxuYW1lPiA8cGF0aD4gPHByaW9yaXR5PlxuIgorIiAgICBbLS1zbGF2ZSA8bGluaz4gPG5hbWU+IDxwYXRoPl0gLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkIGEgZ3JvdXAgb2YgYWx0ZXJuYXRpdmVzIHRvIHRoZSBzeXN0ZW0uXG4iCisiICAtLXJlbW92ZSA8bmFtZT4gPHBhdGg+ICAgcmVtb3ZlIDxwYXRoPiBmcm9tIHRoZSA8bmFtZT4gZ3JvdXAgYWx0ZXJuYXRpdmUuXG4iCisiICAtLXJlbW92ZS1hbGwgPG5hbWU+ICAgICAgcmVtb3ZlIDxuYW1lPiBncm91cCBmcm9tIHRoZSBhbHRlcm5hdGl2ZXMgIgorInN5c3RlbS5cbiIKKyIgIC0tYXV0byA8bmFtZT4gICAgICAgICAgICBzd2l0Y2ggdGhlIG1hc3RlciBsaW5rIDxuYW1lPiB0byBhdXRvbWF0aWMgbW9kZS5cbiIKKyIgIC0tZGlzcGxheSA8bmFtZT4gICAgICAgICBkaXNwbGF5IGluZm9ybWF0aW9uIGFib3V0IHRoZSA8bmFtZT4gZ3JvdXAuXG4iCisiICAtLXF1ZXJ5IDxuYW1lPiAgICAgICAgICAgbWFjaGluZSBwYXJzZWFibGUgdmVyc2lvbiBvZiAtLWRpc3BsYXkgPG5hbWU+LlxuIgorIiAgLS1saXN0IDxuYW1lPiAgICAgICAgICAgIGRpc3BsYXkgYWxsIHRhcmdldHMgb2YgdGhlIDxuYW1lPiBncm91cC5cbiIKKyIgIC0tZ2V0LXNlbGVjdGlvbnMgICAgICAgICBsaXN0IG1hc3RlciBhbHRlcm5hdGl2ZSBuYW1lcyBhbmQgdGhlaXIgc3RhdHVzLlxuIgorIiAgLS1zZXQtc2VsZWN0aW9ucyAgICAgICAgIHJlYWQgYWx0ZXJuYXRpdmUgc3RhdHVzIGZyb20gc3RhbmRhcmQgaW5wdXQuXG4iCisiICAtLWNvbmZpZyA8bmFtZT4gICAgICAgICAgc2hvdyBhbHRlcm5hdGl2ZXMgZm9yIHRoZSA8bmFtZT4gZ3JvdXAgYW5kIGFzayAiCisidGhlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlciB0byBzZWxlY3Qgd2hpY2ggb25lIHRvIHVzZS5cbiIKKyIgIC0tc2V0IDxuYW1lPiA8cGF0aD4gICAgICBzZXQgPHBhdGg+IGFzIGFsdGVybmF0aXZlIGZvciA8bmFtZT4uXG4iCisiICAtLWFsbCAgICAgICAgICAgICAgICAgICAgY2FsbCAtLWNvbmZpZyBvbiBhbGwgYWx0ZXJuYXRpdmVzLlxuIgorIlxuIgorbXNnc3RyICIiCisiQ29tbWFuZGVzwqA6XG4iCisiICAtLWluc3RhbGwgPGxpZW4+IDxub20+IDxjaGVtaW4+IDxwcmlvcml0w6k+XG4iCisiICAgIFstLXNsYXZlIDxsaWVuPiA8bm9tPiA8Y2hlbWluPl0gLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgYWpvdXRlciB1biBncm91cGUgZCdhbHRlcm5hdGl2ZXMgYXUgc3lzdMOobWUuXG4iCisiICAtLXJlbW92ZSA8bm9tPiA8Y2hlbWluPiAgc3VwcHJpbWVyIDxjaGVtaW4+IGRlIGwnYWx0ZXJuYXRpdmUgZGUgZ3JvdXBlICIKKyI8bm9tPi5cbiIKKyIgIC0tcmVtb3ZlLWFsbCA8bm9tPiAgICAgICBzdXBwcmltZXIgbGUgZ3JvdXBlIDxub20+IGR1IHN5c3TDqG1lICIKKyJkJ2FsdGVybmF0aXZlcy5cbiIKKyIgIC0tYXV0byA8bm9tPiAgICAgICAgICAgICBiYXNjdWxlciBsZSBsaWVuIG1hw650cmUgPG5vbT4gZW4gbW9kZSAiCisiYXV0b21hdGlxdWUuXG4iCisiICAtLWRpc3BsYXkgPG5vbT4gICAgICAgICAgYWZmaWNoZXIgZGVzIGluZm9ybWF0aW9ucyDDoCBwcm9wb3MgZHUgZ3JvdXBlICIKKyI8bm9tPi5cbiIKKyIgIC0tcXVlcnkgPG5vbT4gICAgICAgICAgICB2ZXJzaW9uIGFuYWx5c2FibGUgYXV0b21hdGlxdWVtZW50IGRlIC0tZGlzcGxheSAiCisiPG5vbT4uXG4iCisiICAtLWxpc3QgPG5vbT4gICAgICAgICAgICAgYWZmaWNoZXIgdG91dGVzIGxlcyBjaWJsZXMgZHUgZ3JvdXBlIDxub20+LlxuIgorIiAgLS1nZXQtc2VsZWN0aW9ucyAgICAgICAgIGFmZmljaGVyIGxlcyBub21zIHByaW5jaXBhdXggZCdhbHRlcm5hdGl2ZXMgZXQgIgorImxldXIgw6l0YXQuXG4iCisiICAtLXNldC1zZWxlY3Rpb25zICAgICAgICAgbGlyZSBsJ8OpdGF0IGRlcyBhbHRlcm5hdGl2ZXMgZGVwdWlzIGwnZW50csOpZSAiCisic3RhbmRhcmQuXG4iCisiICAtLWNvbmZpZyA8bm9tPiAgICAgICAgICAgYWZmaWNoZXIgbCdhbHRlcm5hdGl2ZSBwb3VyIGxlIGdyb3VwZSA8bm9tPiBldCAiCisiZGVtYW5kZSDDoFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGwndXRpbGlzYXRldXIgZGUgc8OpbGVjdGlvbm5lciBjZWxsZSBxdSdpbCB2ZXV0ICIKKyJ1dGlsaXNlci5cbiIKKyIgIC0tc2V0IDxub20+IDxjaGVtaW4+ICAgICBwb3NpdGlvbm5lciA8Y2hlbWluPiBlbiB0YW50IHF1J2FsdGVybmF0aXZlIHBvdXIgIgorIjxub20+LlxuIgorIiAgLS1hbGwgICAgICAgICAgICAgICAgICAgIGV4w6ljdXRlciAtLWNvbmZpZyBwb3VyIHRvdXRlcyBsZXMgYWx0ZXJuYXRpdmVzLlxuIgorIlxuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyI8bGluaz4gaXMgdGhlIHN5bWxpbmsgcG9pbnRpbmcgdG8gJXMvPG5hbWU+LlxuIgorIiAgKGUuZy4gL3Vzci9iaW4vcGFnZXIpXG4iCisiPG5hbWU+IGlzIHRoZSBtYXN0ZXIgbmFtZSBmb3IgdGhpcyBsaW5rIGdyb3VwLlxuIgorIiAgKGUuZy4gcGFnZXIpXG4iCisiPHBhdGg+IGlzIHRoZSBsb2NhdGlvbiBvZiBvbmUgb2YgdGhlIGFsdGVybmF0aXZlIHRhcmdldCBmaWxlcy5cbiIKKyIgIChlLmcuIC91c3IvYmluL2xlc3MpXG4iCisiPHByaW9yaXR5PiBpcyBhbiBpbnRlZ2VyOyBvcHRpb25zIHdpdGggaGlnaGVyIG51bWJlcnMgaGF2ZSBoaWdoZXIgcHJpb3JpdHkgIgorImluXG4iCisiICBhdXRvbWF0aWMgbW9kZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIjxsaWVuPiBlc3QgbGUgbGllbiBzeW1ib2xpcXVlIHBvaW50YW50IHZlcnMgJXMvPG5vbT4uXG4iCisiICAocGFyIGV4ZW1wbGUsIC91c3IvYmluL3BhZ2VyKVxuIgorIjxub20+IGVzdCBsZSBub20gcHJpbmNpcGFsIHBvdXIgY2UgZ3JvdXBlIGRlIGxpZW5zLlxuIgorIiAgKHBhciBleGVtcGxlLCBwYWdlcilcbiIKKyI8Y2hlbWluPiBlc3QgbCdlbXBsYWNlbWVudCBkZSBsJ3VuIGRlcyBmaWNoaWVycyBjaWJsZXMgYWx0ZXJuYXRpZnMuXG4iCisiICAocGFyIGV4ZW1wbGUsIC91c3IvYmluL2xlc3MpXG4iCisiPHByaW9yaXTDqT4gZXN0IHVuIGVudGllcsKgOyBsZXMgb3B0aW9ucyBhdmVjIGRlcyBub21icmVzIMOpbGV2w6lzIG9udCB1bmUgIgorInByaW9yaXTDqVxuIgorIiAgc3Vww6lyaWV1cmUgZW4gbW9kZSBhdXRvbWF0aXF1ZS5cbiIKKyJcbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWx0ZGlyIDxkaXJlY3Rvcnk+ICAgICBjaGFuZ2UgdGhlIGFsdGVybmF0aXZlcyBkaXJlY3RvcnkuXG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgY2hhbmdlIHRoZSBhZG1pbmlzdHJhdGl2ZSBkaXJlY3RvcnkuXG4iCisiICAtLWxvZyA8ZmlsZT4gICAgICAgICAgICAgY2hhbmdlIHRoZSBsb2cgZmlsZS5cbiIKKyIgIC0tZm9yY2UgICAgICAgICAgICAgICAgICBhbGxvdyByZXBsYWNpbmcgZmlsZXMgd2l0aCBhbHRlcm5hdGl2ZSBsaW5rcy5cbiIKKyIgIC0tc2tpcC1hdXRvICAgICAgICAgICAgICBza2lwIHByb21wdCBmb3IgYWx0ZXJuYXRpdmVzIGNvcnJlY3RseSAiCisiY29uZmlndXJlZFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGluIGF1dG9tYXRpYyBtb2RlIChyZWxldmFudCBmb3IgLS1jb25maWcgb25seSlcbiIKKyIgIC0tdmVyYm9zZSAgICAgICAgICAgICAgICB2ZXJib3NlIG9wZXJhdGlvbiwgbW9yZSBvdXRwdXQuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgcXVpZXQgb3BlcmF0aW9uLCBtaW5pbWFsIG91dHB1dC5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCittc2dzdHIgIiIKKyJPcHRpb25zwqA6XG4iCisiICAtLWFsdGRpciA8csOpcGVydG9pcmU+ICAgIGNoYW5nZXIgbGUgcsOpcGVydG9pcmUgZCdhbHRlcm5hdGl2ZXMuXG4iCisiICAtLWFkbWluZGlyIDxyw6lwZXJ0b2lyZT4gIGNoYW5nZXIgbGUgcsOpcGVydG9pcmUgZCdhZG1pbmlzdHJhdGlvbi5cbiIKKyIgIC0tbG9nIDxmaWNoaWVyPiAgICAgICAgICBub20gZHUgZmljaGllciBkZSBqb3VybmFsaXNhdGlvbi5cbiIKKyIgIC0tZm9yY2UgICAgICAgICAgICAgICAgICBhdXRvcmlzZXIgbGUgcmVtcGxhY2VtZW50IGRlIGZpY2hpZXJzIHBhciIKKyJcXCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVzIGxpZW5zIGQnYWx0ZXJuYXRpdmVzLlxuIgorIiAgLS1za2lwLWF1dG8gICAgICAgICAgICAgIGlnbm9yZXIgbGEgZGVtYW5kZSBwb3VyIGxlcyBhbHRlcm5hdGl2ZXNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29ycmVjdGVtZW50IGNvbmZpZ3Vyw6llcyBlbiBtb2RlIGF1dG9tYXRpcXVlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICh1bmlxdWVtZW50IHBlcnRpbmVudCBwb3VyIC0tY29uZmlnKVxuIgorIiAgLS12ZXJib3NlICAgICAgICAgICAgICAgIG9ww6lyYXRpb24gZMOpdGFpbGzDqWUsIHBsdXMgZCdhZmZpY2hhZ2UuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgb3DDqXJhdGlvbiBkaXNjcsOodGUsIGFmZmljaGFnZSBtaW5pbWFsLlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIGFmZmljaGVyIGNlIG1lc3NhZ2UgZCdhaWRlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIGFmZmljaGVyIGxhIHZlcnNpb24uXG4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE2MworbXNnaWQgImVycm9yIgorbXNnc3RyICJlcnJldXIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxOTMKK21zZ2lkICJ3YXJuaW5nIgorbXNnc3RyICJhdmVydGlzc2VtZW50IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MzU2CisjLCBjLWZvcm1hdAorbXNnaWQgInR3byBjb21tYW5kcyBzcGVjaWZpZWQ6IC0tJXMgYW5kIC0tJXMiCittc2dzdHIgImRldXggY29tbWFuZGVzIHNww6ljaWZpw6llc8KgOiAtLSVzIGV0IC0tJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzozODcKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImNhbm5vdCBhcHBlbmQgdG8gJXM6ICVzIgorbXNnaWQgImNhbm5vdCBhcHBlbmQgdG8gJyVzJyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkJ2Fqb3V0ZXIgw6AgJXPCoDrCoCVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NTU2CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlICVzOiAlcyIKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlICclcyciCittc2dzdHIgImltcG9zc2libGUgZGUgc3VwcHJpbWVyICVzwqA6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTExMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBmaWxlIHdoaWxlIHRyeWluZyB0byByZWFkICVzIgorbXNnc3RyICJmaW4gZGUgZmljaGllciBpbmF0dGVuZHVlIGxvcnMgZGUgbGEgbGVjdHVyZSBkZSAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAid2hpbGUgcmVhZGluZyAlczogJXMiCittc2dzdHIgImxvcnMgZGUgbGEgbGVjdHVyZSBkZSAlc8KgOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMTkKKyMsIGMtZm9ybWF0Cittc2dpZCAibGluZSBub3QgdGVybWluYXRlZCB3aGlsZSB0cnlpbmcgdG8gcmVhZCAlcyIKK21zZ3N0ciAibGlnbmUgbm9uIHRlcm1pbsOpZSBsb3JzIGRlIGxhIGxlY3R1cmUgZGUgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGNvcnJ1cHQ6ICVzIgorbXNnc3RyICIlcyBjb3Jyb21wdcKgOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAibmV3bGluZXMgcHJvaGliaXRlZCBpbiB1cGRhdGUtYWx0ZXJuYXRpdmVzIGZpbGVzICglcykiCittc2dzdHIgIiIKKyJMZXMgcmV0b3VycyBjaGFyaW90IHNvbnQgaW50ZXJkaXRzIGRhbnMgZGVzIGZpY2hpZXJzIHVwZGF0ZS1hbHRlcm5hdGl2ZXMgKCVzKSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNjMKK21zZ2lkICJzbGF2ZSBuYW1lIgorbXNnc3RyICJub20gZHUgc2Vjb25kYWlyZSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNzEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHNsYXZlIG5hbWUgJXMiCittc2dzdHIgIiVzIGVzdCB1biBub20gc2Vjb25kYWlyZSBkdXBsaXF1w6kiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTc0Cittc2dpZCAic2xhdmUgbGluayIKK21zZ3N0ciAibGllbiBzZWNvbmRhaXJlIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE3OAorIywgYy1mb3JtYXQKK21zZ2lkICJzbGF2ZSBsaW5rIHNhbWUgYXMgbWFpbiBsaW5rICVzIgorbXNnc3RyICJsaWVuIHNlY29uZGFpcmUgaWRlbnRpcXVlIGF1IGxpZW4gcHJpbmNpcGFsICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE4NSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQxMgorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgc2xhdmUgbGluayAlcyIKK21zZ3N0ciAibGllbiBzZWNvbmRhaXJlIGR1cGxpcXXDqSAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMDQKK21zZ2lkICJtYXN0ZXIgZmlsZSIKK21zZ3N0ciAiZmljaGVyIG1hw650cmUiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjEzCisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBwYXRoICVzIgorbXNnc3RyICJjaGVtaW4gZHVwbGlxdcOpICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIyNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYWx0ZXJuYXRpdmUgJXMgKHBhcnQgb2YgbGluayBncm91cCAlcykgZG9lc24ndCBleGlzdC4gUmVtb3ZpbmcgZnJvbSBsaXN0IG9mICIKKyJhbHRlcm5hdGl2ZXMuIgorbXNnc3RyICIiCisibCdhbHRlcm5hdGl2ZSAlcyAocXVpIGZhaXQgcGFydGllIGR1IGdyb3VwZSBkZSBsaWVucyAlcykgbidhIHBhcyDDqXTDqSAiCisidHJvdXbDqWUuIFN1cHByZXNzaW9uIGRlIGxhIGxpc3RlIGRlcyBhbHRlcm5hdGl2ZXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIyOSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI0MAorbXNnaWQgInByaW9yaXR5IgorbXNnc3RyICJwcmlvcml0w6kiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjMyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjQ5Cittc2dpZCAic2xhdmUgZmlsZSIKK21zZ3N0ciAiZmljaGllciBzZWNvbmRhaXJlIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI0NAorIywgYy1mb3JtYXQKK21zZ2lkICJwcmlvcml0eSBvZiAlczogJXMiCittc2dzdHIgInByaW9yaXTDqSBkZSAlc8KgOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyOTcKK21zZ2lkICJzdGF0dXMiCittc2dzdHIgIsOpdGF0IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI5OQorbXNnaWQgImludmFsaWQgc3RhdHVzIgorbXNnc3RyICLDqXRhdCBub24gdmFsYWJsZSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzMDQKK21zZ2lkICJtYXN0ZXIgbGluayIKK21zZ3N0ciAibGllbiBtYcOudHJlIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTM0OAorIywgYy1mb3JtYXQKK21zZ2lkICJkaXNjYXJkaW5nIG9ic29sZXRlIHNsYXZlIGxpbmsgJXMgKCVzKS4iCittc2dzdHIgImFiYW5kb24gZHUgbGllbiBzZWNvbmRhaXJlIG9ic29sw6h0ZSAlcyAoJXMpLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MDIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NjkKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjM4Cittc2dpZCAiYXV0byBtb2RlIgorbXNnc3RyICJtb2RlIGF1dG9tYXRpcXVlIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU3OAorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MzkKK21zZ2lkICJtYW51YWwgbW9kZSIKK21zZ3N0ciAibW9kZSBtYW51ZWwiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTA1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgbGluayBjdXJyZW50bHkgcG9pbnRzIHRvICVzIgorbXNnc3RyICIgbGUgbGllbiBwb2ludGUgYWN0dWVsbGVtZW50IHN1ciAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MDgKK21zZ2lkICIgIGxpbmsgY3VycmVudGx5IGFic2VudCIKK21zZ3N0ciAiIGxlIGxpZW4gZXN0IGFjdHVlbGxlbWVudCBhYnNlbnQiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTEyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIC0gcHJpb3JpdHkgJWQiCittc2dzdHIgIiVzIC0gcHJpb3JpdMOpICVkIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUxNQorIywgYy1mb3JtYXQKK21zZ2lkICIgIHNsYXZlICVzOiAlcyIKK21zZ3N0ciAiIGxpZW4gc2Vjb25kYWlyZSAlc8KgOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ3VycmVudCAnYmVzdCcgdmVyc2lvbiBpcyAnJXMnLiIKK21zZ3N0ciAiTGEgwqvCoG1laWxsZXVyZcKgwrsgdmVyc2lvbiBhY3R1ZWxsZSBlc3QgwqvCoCVzwqDCuy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTI0Cittc2dpZCAiTm8gdmVyc2lvbnMgYXZhaWxhYmxlLiIKK21zZ3N0ciAiQXVjdW5lIHZlcnNpb24gZGlzcG9uaWJsZS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTUzCisjLCBjLWZvcm1hdAorbXNnaWQgIlRoZXJlIGlzICVkIGNob2ljZSBmb3IgdGhlIGFsdGVybmF0aXZlICVzIChwcm92aWRpbmcgJXMpLiIKK21zZ2lkX3BsdXJhbCAiVGhlcmUgYXJlICVkIGNob2ljZXMgZm9yIHRoZSBhbHRlcm5hdGl2ZSAlcyAocHJvdmlkaW5nICVzKS4iCittc2dzdHJbMF0gIklsIGV4aXN0ZSAlZCBjaG9peCBwb3VyIGwnYWx0ZXJuYXRpdmUgJXMgKHF1aSBmb3Vybml0ICVzKS4iCittc2dzdHJbMV0gIklsIGV4aXN0ZSAlZCBjaG9peCBwb3VyIGwnYWx0ZXJuYXRpdmUgJXMgKHF1aSBmb3Vybml0ICVzKS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYwCittc2dpZCAiU2VsZWN0aW9uIgorbXNnc3RyICJTw6lsZWN0aW9uIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2MQorbXNnaWQgIlBhdGgiCittc2dzdHIgIkNoZW1pbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NjEKK21zZ2lkICJQcmlvcml0eSIKK21zZ3N0ciAiUHJpb3JpdMOpIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2MQorbXNnaWQgIlN0YXR1cyIKK21zZ3N0ciAiw4l0YXQiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTgyCisjLCBjLWZvcm1hdAorbXNnaWQgIlByZXNzIGVudGVyIHRvIGtlZXAgdGhlIGN1cnJlbnQgY2hvaWNlWypdLCBvciB0eXBlIHNlbGVjdGlvbiBudW1iZXI6ICIKK21zZ3N0ciAiIgorIkFwcHV5ZXogc3VyIDxFbnRyw6llPiBwb3VyIGNvbnNlcnZlciBsYSB2YWxldXIgcGFyIGTDqWZhdXRbKl0gb3UgY2hvaXNpc3NleiBsZSAiCisibnVtw6lybyBzw6lsZWN0aW9ubsOpwqA6IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTcyMQorIywgYy1mb3JtYXQKK21zZ2lkICJub3QgcmVwbGFjaW5nICVzIHdpdGggYSBsaW5rLiIKK21zZ3N0ciAiJXMgbmUgc2VyYSBwYXMgcmVtcGxhY8OpIHBhciB1biBsaWVuLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3NjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2FuJ3QgaW5zdGFsbCB1bmtub3duIGNob2ljZSAlcyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkJ2luc3RhbGxlciBsZSBjaG9peCBpbmNvbm51ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTc4MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisic2tpcCBjcmVhdGlvbiBvZiAlcyBiZWNhdXNlIGFzc29jaWF0ZWQgZmlsZSAlcyAob2YgbGluayBncm91cCAlcykgZG9lc24ndCAiCisiZXhpc3QuIgorbXNnc3RyICIiCisiY3LDqWF0aW9uIGRlICVzIGFiYW5kb25uw6llIGNhciBsZSBmaWNoaWVyIGFzc29jacOpICVzIChkdSBncm91cGUgZGUgbGllbnMgJXMpICIKKyJuJ2V4aXN0ZSBwYXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTc5MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAibm90IHJlcGxhY2luZyAlcyB3aXRoIGEgbGluay4iCittc2dpZCAibm90IHJlbW92aW5nICVzIHNpbmNlIGl0J3Mgbm90IGEgc3ltbGluay4iCittc2dzdHIgIiVzIG5lIHNlcmEgcGFzIHJlbXBsYWPDqSBwYXIgdW4gbGllbi4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDQxIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDQ3CisjLCBjLWZvcm1hdAorbXNnaWQgIkNhbGwgJXMuIgorbXNnc3RyICJBcHBlbGVyICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiQWx0ZXJuYXRpdmUgJXMgdW5jaGFuZ2VkIGJlY2F1c2UgY2hvaWNlICVzIGlzIG5vdCBhdmFpbGFibGUuIgorbXNnc3RyICIiCisiTCdhbHRlcm5hdGl2ZSAlcyBuJ2EgcGFzIMOpdMOpIG1vZGlmacOpZSBjYXIgbGUgY2hvaXggJXMgbidlc3QgcGFzIGRpc3BvbmlibGUuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA1NQorIywgYy1mb3JtYXQKK21zZ2lkICJTa2lwIHVua25vd24gYWx0ZXJuYXRpdmUgJXMuIgorbXNnc3RyICJBbHRlcm5hdGl2ZSBpbmNvbm51ZSDCq8KgJXPCoMK7IGlnbm9yw6llLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNzcKKyMsIGMtZm9ybWF0Cittc2dpZCAibGluZSB0b28gbG9uZyBvciBub3QgdGVybWluYXRlZCB3aGlsZSB0cnlpbmcgdG8gcmVhZCAlcyIKK21zZ3N0ciAibGlnbmUgdHJvcCBsb25ndWUgb3Ugbm9uIHRlcm1pbsOpZSBsb3JzIGRlIGxhIGxlY3R1cmUgZGUgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDkwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTAzCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjExMworIywgYy1mb3JtYXQKK21zZ2lkICJTa2lwIGludmFsaWQgbGluZTogJXMiCittc2dzdHIgIkxpZ25lIG5vbiB2YWxhYmxlIHNhdXTDqWXCoDrCoCVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjEzMgorIywgYy1mb3JtYXQKK21zZ2lkICJyZW5hbWluZyAlcyBsaW5rIGZyb20gJXMgdG8gJXMuIgorbXNnc3RyICJSZW5vbW1hZ2UgZHUgbGllbiAlcyBkZSAlcyBlbiAlcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTczCisjLCBjLWZvcm1hdAorbXNnaWQgInJlbmFtaW5nICVzIHNsYXZlIGxpbmsgZnJvbSAlcyB0byAlcy4iCittc2dzdHIgIlJlbm9tbWFnZSBkdSBsaWVuIHNlY29uZGFpcmUgJXMgZGUgJXMgdmVycyAlcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTg5CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIG5hbWUgKCVzKSBtdXN0IG5vdCBjb250YWluICcvJyBhbmQgc3BhY2VzLiIKK21zZ3N0ciAiIgorImxlIG5vbSBhbHRlcm5hdGlmICglcykgbmUgZG9pdCBwYXMgY29udGVuaXIgbGUgY2FyYWN0w6hyZSDCq8KgL8Kgwrsgb3UgZGVzICIKKyJlc3BhY2VzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgbGluayBpcyBub3QgYWJzb2x1dGUgYXMgaXQgc2hvdWxkIGJlOiAlcyIKK21zZ3N0ciAibGUgbGllbiBhbHRlcm5hdGlmIG4nZXN0IHBhcyBhYnNvbHUgYWxvcnMgcXUnaWwgZGV2cmFpdCBsJ8OqdHJlwqA6wqAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxOTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgcGF0aCBpcyBub3QgYWJzb2x1dGUgYXMgaXQgc2hvdWxkIGJlOiAlcyIKK21zZ3N0ciAibGUgY2hlbWluIGFsdGVybmF0aWYgbidlc3QgcGFzIGFic29sdSBhbG9ycyBxdSdpbCBkZXZyYWl0IGwnw6p0cmXCoDrCoCVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjIyNAorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBtYXN0ZXI6IGl0IGlzIGEgc2xhdmUgb2YgJXMiCittc2dzdHIgIiIKKyJsJ2FsdGVybmF0aXZlICVzIG5lIHBldXQgcGFzIMOqdHJlIHByaW5jaXBhbGXCoDogZWxsZSBlc3QgdW4gc2Vjb25kYWlyZSBkZSAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyMzIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgbGluayAlcyBpcyBhbHJlYWR5IG1hbmFnZWQgYnkgJXMuIgorbXNnc3RyICJsZSBsaWVuIGFsdGVybmF0aWYgJXMgZXN0IGTDqWrDoCBnw6lyw6kgcGFyICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgcGF0aCAlcyBkb2Vzbid0IGV4aXN0LiIKK21zZ3N0ciAibGUgY2hlbWluIGFsdGVybmF0aWYgJXMgbidleGlzdGUgcGFzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImFsdGVybmF0aXZlICVzIGNhbid0IGJlIHNsYXZlIG9mICVzOiAlcyIKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBzbGF2ZSBvZiAlczogaXQgaXMgYSBtYXN0ZXIgYWx0ZXJuYXRpdmUuIgorbXNnc3RyICJsJ2FsdGVybmF0aXZlICVzIG5lIHBldXQgcGFzIMOqdHJlIHNlY29uZGFpcmUgZGUgJXPCoDrCoCVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI1OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgbWFzdGVyOiBpdCBpcyBhIHNsYXZlIG9mICVzIgorbXNnaWQgImFsdGVybmF0aXZlICVzIGNhbid0IGJlIHNsYXZlIG9mICVzOiBpdCBpcyBhIHNsYXZlIG9mICVzIgorbXNnc3RyICIiCisibCdhbHRlcm5hdGl2ZSAlcyBuZSBwZXV0IHBhcyDDqnRyZSBwcmluY2lwYWxlwqA6IGVsbGUgZXN0IHVuIHNlY29uZGFpcmUgZGUgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjc4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJhbHRlcm5hdGl2ZSBsaW5rICVzIGlzIGFscmVhZHkgbWFuYWdlZCBieSAlcy4iCittc2dpZCAiYWx0ZXJuYXRpdmUgbGluayAlcyBpcyBhbHJlYWR5IG1hbmFnZWQgYnkgJXMgKHNsYXZlIG9mICVzKS4iCittc2dzdHIgImxlIGxpZW4gYWx0ZXJuYXRpZiAlcyBlc3QgZMOpasOgIGfDqXLDqSBwYXIgJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjMyNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGFyZ3VtZW50IGAlcyciCittc2dzdHIgInBhcmFtw6h0cmUgaW5jb25udSDCq8KgJXPCoMK7IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM0MworbXNnaWQgIi0taW5zdGFsbCBuZWVkcyA8bGluaz4gPG5hbWU+IDxwYXRoPiA8cHJpb3JpdHk+IgorbXNnc3RyICItLWluc3RhbGwgYSBiZXNvaW4gZGUgPGxpZW4+IDxub20+IDxjaGVtaW4+IDxwcmlvcml0w6k+IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM0NiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM5NworbXNnaWQgIjxsaW5rPiBhbmQgPHBhdGg+IGNhbid0IGJlIHRoZSBzYW1lIgorbXNnc3RyICI8bGluaz4gZXQgPHBhdGg+IG5lIHBldXZlbnQgw6p0cmUgbGVzIG3Dqm1lcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNDkKK21zZ2lkICJwcmlvcml0eSBtdXN0IGJlIGFuIGludGVnZXIiCittc2dzdHIgImxhIHByaW9yaXTDqSBkb2l0IMOqdHJlIHVuIGVudGllciIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyA8bmFtZT4gPHBhdGg+IgorbXNnc3RyICItLSVzIGEgYmVzb2luIGRlIDxub20+IDxjaGVtaW4+IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM3NgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIDxuYW1lPiIKK21zZ3N0ciAiLS0lcyBhIGJlc29pbiBkZSA8bm9tPiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzODgKK21zZ2lkICItLXNsYXZlIG9ubHkgYWxsb3dlZCB3aXRoIC0taW5zdGFsbCIKK21zZ3N0ciAiLS1zbGF2ZSBuJ2VzdCBhdXRvcmlzw6kgcXUnYXZlYyAtLWluc3RhbGwiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzkwCittc2dpZCAiLS1zbGF2ZSBuZWVkcyA8bGluaz4gPG5hbWU+IDxwYXRoPiIKK21zZ3N0ciAiLS1zbGF2ZSBhIGJlc29pbiBkZSA8bGllbj4gPG5vbT4gPGNoZW1pbj4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzk5CisjLCBjLWZvcm1hdAorbXNnaWQgIm5hbWUgJXMgaXMgYm90aCBwcmltYXJ5IGFuZCBzbGF2ZSIKK21zZ3N0ciAibGUgbm9tICVzIGVzdCDDoCBsYSBmb2lzIHByaW5jaXBhbCBldCBzZWNvbmRhaXJlIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQwMgorIywgYy1mb3JtYXQKK21zZ2lkICJsaW5rICVzIGlzIGJvdGggcHJpbWFyeSBhbmQgc2xhdmUiCittc2dzdHIgImxlIGxpZW4gJXMgZXN0IMOgIGxhIGZvaXMgcHJpbmNpcGFsIGV0IHNlY29uZGFpcmUiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDIyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSA8ZmlsZT4gYXJndW1lbnQiCittc2dzdHIgIi0tJXMgYSBiZXNvaW4gZCd1biBwYXJhbcOodHJlIDxmaWxlPiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gYCVzJyIKK21zZ3N0ciAib3B0aW9uIMKrwqAlc8KgwrsgaW5jb25udWUiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDUzCittc2dpZCAiIgorIm5lZWQgLS1kaXNwbGF5LCAtLXF1ZXJ5LCAtLWxpc3QsIC0tZ2V0LXNlbGVjdGlvbnMsIC0tY29uZmlnLCAtLXNldCwgLS1zZXQtIgorInNlbGVjdGlvbnMsIC0taW5zdGFsbCwgLS1yZW1vdmUsIC0tYWxsLCAtLXJlbW92ZS1hbGwgb3IgLS1hdXRvIgorbXNnc3RyICIiCisiYSBiZXNvaW4gZGUgLS1kaXNwbGF5LCAtLXF1ZXJ5LCAtLWxpc3QsIC0tZ2V0LXNlbGVjdGlvbnMsIC0tY29uZmlnLCAtLXNldCwgLS0iCisic2V0LXNlbGVjdGlvbnMsIC0taW5zdGFsbCwgLS1yZW1vdmUsIC0tYWxsLCAtLXJlbW92ZS1hbGwgb3UgLS1hdXRvIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQ5MAorbXNnaWQgIjxzdGFuZGFyZCBpbnB1dD4iCittc2dzdHIgIjxlbnRyw6llIHN0YW5kYXJkPiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MDAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MDMKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gYWx0ZXJuYXRpdmVzIGZvciAlcy4iCittc2dzdHIgInBhcyBkJ2FsdGVybmF0aXZlcyBwb3VyICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMvJXMgaXMgZGFuZ2xpbmcsIGl0IHdpbGwgYmUgdXBkYXRlZCB3aXRoIGJlc3QgY2hvaWNlLiIKK21zZ3N0ciAiIgorIiVzLyVzIHBvaW50ZSBkYW5zIGxlIHZpZGUgZXQgc2VyYSBtaXMgw6Agam91ciBhdmVjIGxlIGNob2l4IGxlIHBsdXMgYWRhcHTDqS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlcy8lcyBoYXMgYmVlbiBjaGFuZ2VkIChtYW51YWxseSBvciBieSBhIHNjcmlwdCkuIFN3aXRjaGluZyB0byBtYW51YWwgIgorInVwZGF0ZXMgb25seS4iCittc2dzdHIgIiIKKyIlcy8lcyBhIMOpdMOpIGNoYW5nw6kgKG1hbnVlbGxlbWVudCBvdSBwYXIgdW4gc2NyaXB0KS4gQmFzY3VsZSB2ZXJzIGRlcyBtaXNlcyDDoCAiCisiam91ciBtYW51ZWxsZXMgdW5pcXVlbWVudC4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTQyCisjLCBjLWZvcm1hdAorbXNnaWQgInNldHRpbmcgdXAgYXV0b21hdGljIHNlbGVjdGlvbiBvZiAlcy4iCittc2dzdHIgImNvbmZpZ3VyYXRpb24gZGUgbGEgc8OpbGVjdGlvbiBhdXRvbWF0aXF1ZSBwb3VyICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgZm9yICVzIG5vdCByZWdpc3RlcmVkLCBub3Qgc2V0dGluZy4iCittc2dzdHIgImwnYWx0ZXJuYXRpdmUgJXMgcG91ciAlcyBuJ2VzdCBwYXMgZW5yZWdpc3Ryw6llLCBwYXMgZGUgY29uZmlndXJhdGlvbi4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTU3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTYzCisjLCBjLWZvcm1hdAorbXNnaWQgIlRoZXJlIGlzIG5vIHByb2dyYW0gd2hpY2ggcHJvdmlkZXMgJXMuIgorbXNnc3RyICJJbCBuJ2V4aXN0ZSBhdWN1biBwcm9ncmFtbWUgZm91cm5pc3NhbnQgJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU2NSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU3NQorbXNnaWQgIk5vdGhpbmcgdG8gY29uZmlndXJlLiIKK21zZ3N0ciAiUmllbiDDoCBjb25maWd1cmVyLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiVGhlcmUgaXMgb25seSBvbmUgYWx0ZXJuYXRpdmUgaW4gbGluayBncm91cCAlczogJXMiCittc2dzdHIgIklsIG4nZXhpc3RlIHF1J3VuZSDCq8KgYWx0ZXJuYXRpdmXCoMK7IGRhbnMgbGUgZ3JvdXBlIGRlIGxpZW5zICVzwqA6wqAlcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTg0CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlICVzIGZvciAlcyBub3QgcmVnaXN0ZXJlZCwgbm90IHJlbW92aW5nLiIKK21zZ3N0ciAibCdhbHRlcm5hdGl2ZSAlcyBwb3VyICVzIG4nZXN0IHBhcyBlbnJlZ2lzdHLDqWUsIHBhcyBkZSBzdXBwcmVzc2lvbi4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTkyCisjLCBjLWZvcm1hdAorbXNnaWQgInJlbW92aW5nIG1hbnVhbGx5IHNlbGVjdGVkIGFsdGVybmF0aXZlIC0gc3dpdGNoaW5nICVzIHRvIGF1dG8gbW9kZSIKK21zZ3N0ciAiIgorInN1cHByZXNzaW9uIGRlIGwnYWx0ZXJuYXRpdmUgc8OpbGVjdGlvbm7DqWUgbWFudWVsbGVtZW50IC0gYmFzY3VsZSBkZSAlcyB2ZXJzICIKKyJsZSBtb2RlIGF1dG9tYXRpcXVlIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYxNworIywgYy1mb3JtYXQKK21zZ2lkICJhdXRvbWF0aWMgdXBkYXRlcyBvZiAlcy8lcyBhcmUgZGlzYWJsZWQsIGxlYXZpbmcgaXQgYWxvbmUuIgorbXNnc3RyICJsZXMgbWlzZXMgw6Agam91ciBhdXRvbWF0aXF1ZXMgZGUgJXMvJXMgc29udCBkw6lzYWN0aXbDqWVzLCBjb25zZXJ2YXRpb24uIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYxOQorIywgYy1mb3JtYXQKK21zZ2lkICJ0byByZXR1cm4gdG8gYXV0b21hdGljIHVwZGF0ZXMgdXNlICclcyAtLWF1dG8gJXMnLiIKK21zZ3N0ciAicG91ciByZXZlbmlyIGF1eCBtaXNlcyDDoCBqb3VyIGF1dG9tYXRpcXVlcywgdXRpbGlzZXIgwqvCoCVzIC0tYXV0byAlc8KgwrsuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYzNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1c2luZyAlcyB0byBwcm92aWRlICVzICglcykgaW4gJXMuIgorbXNnc3RyICJ1dGlsaXNhdGlvbiBkZSDCq8KgJXPCoMK7IHBvdXIgZm91cm5pciDCq8KgJXPCoMK7ICglcykgZW4gJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjY0NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZm9yY2luZyByZWluc3RhbGxhdGlvbiBvZiBhbHRlcm5hdGl2ZSAlcyBiZWNhdXNlIGxpbmsgZ3JvdXAgJXMgaXMgYnJva2VuLiIKK21zZ3N0ciAiIgorImZvcsOnYWdlIGRlIGxhIHLDqWluc3RhbGxhdGlvbiBkZSBsJ2FsdGVybmF0aXZlICVzIGNhciBsZSBncm91cGUgZGUgbGllbnMgJXMgIgorImVzdCBjYXNzw6kiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjUxCisjLCBjLWZvcm1hdAorbXNnaWQgImN1cnJlbnQgYWx0ZXJuYXRpdmUgJXMgaXMgdW5rbm93biwgc3dpdGNoaW5nIHRvICVzIGZvciBsaW5rIGdyb3VwICVzLiIKK21zZ3N0ciAiIgorImwnYWx0ZXJuYXRpdmUgYWN0dWVsbGUgJXMgZXN0IGluY29ubnVlLCBiYXNjdWxlIHZlcnMgJXMgcG91ciBsZSBncm91cGUgZGUgIgorImxpZW5zICVzLiIKKworI34gbXNnaWQgIml0IGlzIGEgbWFzdGVyIGFsdGVybmF0aXZlLiIKKyN+IG1zZ3N0ciAiZXN0IHVuZSBhbHRlcm5hdGl2ZSBwcmluY2lwYWxlIgorCisjfiBtc2dpZCAiaXQgaXMgYSBzbGF2ZSBvZiAlcyIKKyN+IG1zZ3N0ciAiYydlc3QgdW4gbGllbiBzZWNvbmRhaXJlIGRlICVzIgorCisjfiBtc2dpZCAiY2Fubm90IHN0YXQgJXM6ICVzIgorI34gbXNnc3RyICJhbmFseXNlIGltcG9zc2libGUgZGUgJXPCoDogJXMiCisKKyN+IG1zZ2lkICJyZWFkbGluayglcykgZmFpbGVkOiAlcyIKKyN+IG1zZ3N0ciAicmVhZGxpbmsoJXMpIGEgw6ljaG91w6nCoDrCoCVzIgorCisjfiBtc2dpZCAic2NhbiBvZiAlcyBmYWlsZWQ6ICVzIgorI34gbXNnc3RyICLDqWNoZWMgZGUgbCdhbmFseXNlIGRlICVzwqA6wqAlcyIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjdXRlICVzOiAlcyIKKyN+IG1zZ3N0ciAiw6ljaGVjIGRlIGwnZXjDqWN1dGlvbiBkZSAlc8KgOsKgJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gbWFrZSAlcyBhIHN5bWxpbmsgdG8gJXM6ICVzIgorI34gbXNnc3RyICJpbXBvc3NpYmxlIGRlIGZhaXJlIGRlICVzIHVuIGxpZW4gc3ltYm9saXF1ZSB2ZXJzICVzwqA6ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgJXMgYXMgJXM6ICVzIgorI34gbXNnc3RyICJpbXBvc3NpYmxlIGQnaW5zdGFsbGVyICVzIGVuIHRhbnQgcXVlICVzwqA6ICVzIgorCisjfiBtc2dpZCAid2hpbGUgd3JpdGluZyAlczogJXMiCisjfiBtc2dzdHIgImxvcnMgZGUgbCfDqWNyaXR1cmUgZGUgJXPCoDogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcmVhZCAlczogJXMiCisjfiBtc2dzdHIgImltcG9zc2libGUgZGUgbGlyZSAlc8KgOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byBjbG9zZSAlczogJXMiCisjfiBtc2dzdHIgImltcG9zc2libGUgZGUgZmVybWVyICVzwqA6ICVzIgorCisjfiBtc2dpZCAiY2Fubm90IHdyaXRlICVzOiAlcyIKKyN+IG1zZ3N0ciAiaW1wb3NzaWJsZSBkJ8OpY3JpcmUgJXPCoDogJXMiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgInVuYWJsZSB0byByZW5hbWUgJXMgdG8gJXM6ICVzIgorI34gbXNnaWQgInVuYWJsZSB0byByZW5hbWUgZmlsZSAnJXMnIHRvICclcyciCisjfiBtc2dzdHIgImltcG9zc2libGUgZGUgcmVub21tZXIgJXMgZW4gJXPCoDogJXMiCisKKyN+IG1zZ2lkICJtYWxsb2MgZmFpbGVkICglbGQgYnl0ZXMpIgorI34gbXNnc3RyICLDqWNoZWMgZGUgwqvCoG1hbGxvY8KgwrsgKCVsZCBvY3RldHMpIgorCisjfiBtc2dpZCAicmVhbGxvYyBmYWlsZWQgKCVsZCBieXRlcykiCisjfiBtc2dzdHIgIsOpY2hlYyBkZSDCq8KgcmVhbGxvY8KgwrsgKCVsZCBvY3RldHMpIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHVuYnVmZmVyIGAlLjI1NXMnIgorI34gbXNnc3RyICJpbXBvc3NpYmxlIGRlIMKrwqB1bmJ1ZmZlcsKgwrsgwqvCoCUuMjU1c8KgwrsiCisKKyN+IG1zZ2lkICJwYXJ0IGZpbGUgYCUuMjUwcycgaGFzIHRyYWlsaW5nIGdhcmJhZ2UiCisjfiBtc2dzdHIgImxlIGZpY2hpZXIgwqvCoCUuMjUwc8KgwrsgY29udGllbnQgZGVzIGFic3VyZGl0w6lzIgorCisjfiBtc2dpZCAic2l6ZSAlN2Qgb2NjdXJzICU1ZCB0aW1lc1xuIgorI34gbXNnc3RyICJsYSB0YWlsbGUgJTdkIGFwcGFyYcOudCAlNWQgZm9pc1xuIgorCisjfiBtc2dpZCAib3V0IG9mIG1lbW9yeSBwdXNoaW5nIGVycm9yIGhhbmRsZXI6ICIKKyN+IG1zZ3N0ciAibWFucXVlIGRlIG3DqW1vaXJlIGTDqWNsZW5jaGFudCBsZSBnZXN0aW9ubmFpcmUgZCdlcnJldXLCoDogIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHVubG9jayBkcGtnIHN0YXR1cyBkYXRhYmFzZSIKKyN+IG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSBkw6l2ZXJyb3VpbGxlciBsYSBiYXNlIGRlIGRvbm7DqWVzIGQnw6l0YXQgZGUgZHBrZyIKKworI34gbXNnaWQgImNvcHkgaW5mbyBmaWxlIGAlLjI1NXMnIgorI34gbXNnc3RyICJjb3BpZSBsZSBmaWNoaWVyIGQnaW5mbyDCq8KgJS4yNTVzwqDCuyIKKworI34gbXNnaWQgInBhcnNlIGVycm9yIgorI34gbXNnc3RyICJlcnJldXIgZCdhbmFseXNlIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHdyaXRlIHBhcnNpbmcgd2FybmluZyIKKyN+IG1zZ3N0ciAiw6ljaGVjIGRlIGwnw6ljcml0dXJlIGQndW4gYXZlcnRpc3NlbWVudCBkJ2FuYWx5c2Ugc3ludGF4aXF1ZSIKKworI34gbXNnaWQgInVuYWJsZSB0byBsb2NrIHRyaWdnZXJzIGFyZWEiCisjfiBtc2dzdHIgImltcG9zc2libGUgZGUgdmVycm91aWxsZXIgbCdlc3BhY2UgZGVzIGFjdGlvbnMgZGlmZsOpcsOpZXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gcnVuICVzICglLjI1MHMpIgorI34gbXNnc3RyICJsJ2V4w6ljdXRpb24gZGUgJXMgKCUuMjUwcykgYSDDqWNob3XDqSIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIHNoZWxsICglLjI1MHMpIgorI34gbXNnc3RyICLDqWNoZWMgZGUgbCdleMOpY3V0aW9uIGR1IHNoZWxsICglLjI1MHMpIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGNoZWNrIGZvciBleGlzdGVuY2Ugb2YgYCUuMjUwcyciCisjfiBtc2dzdHIgImltcG9zc2libGUgZGUgdsOpcmlmaWVyIGwnZXhpc3RlbmNlIGRlIMKrwqAlLjI1MHPCoMK7IgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgcm0gZm9yIGNsZWFudXAiCisjfiBtc2dzdHIgIsOpY2hlYyBkZSBsJ2V4w6ljdXRpb24gZGUgwqvCoHJtwqDCuyBwb3VyIG5ldHRveWFnZSIKKworI34gbXNnaWQgIiIKKyN+ICIlcyBkZWJ1Z2dpbmcgb3B0aW9uLCAtLWRlYnVnPTxvY3RhbD4gb3IgLUQ8b2N0YWw+OlxuIgorI34gIlxuIgorI34gIiBudW1iZXIgIHJlZi4gaW4gc291cmNlICAgZGVzY3JpcHRpb25cbiIKKyN+ICIgICAgICAxICAgZ2VuZXJhbCAgICAgICAgICAgR2VuZXJhbGx5IGhlbHBmdWwgcHJvZ3Jlc3MgaW5mb3JtYXRpb25cbiIKKyN+ICIgICAgICAyICAgc2NyaXB0cyAgICAgICAgICAgSW52b2NhdGlvbiBhbmQgc3RhdHVzIG9mIG1haW50YWluZXIgc2NyaXB0c1xuIgorI34gIiAgICAgMTAgICBlYWNoZmlsZSAgICAgICAgICBPdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWRcbiIKKyN+ICIgICAgMTAwICAgZWFjaGZpbGVkZXRhaWwgICAgTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWRcbiIKKyN+ICIgICAgIDIwICAgY29uZmYgICAgICAgICAgICAgT3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZVxuIgorI34gIiAgICAyMDAgICBjb25mZmRldGFpbCAgICAgICBMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGVcbiIKKyN+ICIgICAgIDQwICAgZGVwY29uICAgICAgICAgICAgRGVwZW5kZW5jaWVzIGFuZCBjb25mbGljdHNcbiIKKyN+ICIgICAgNDAwICAgZGVwY29uZGV0YWlsICAgICAgTG90cyBvZiBkZXBlbmRlbmNpZXMvY29uZmxpY3RzIG91dHB1dFxuIgorI34gIiAgMTAwMDAgICB0cmlnZ2VycyAgICAgICAgICBUcmlnZ2VyIGFjdGl2YXRpb24gYW5kIHByb2Nlc3NpbmdcbiIKKyN+ICIgIDIwMDAwICAgdHJpZ2dlcnNkZXRhaWwgICAgTG90cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzXG4iCisjfiAiICA0MDAwMCAgIHRyaWdnZXJzc3R1cGlkICAgIFNpbGx5IGFtb3VudHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2Vyc1xuIgorI34gIiAgIDEwMDAgICB2ZXJ5dmVyYm9zZSAgICAgICBMb3RzIG9mIGRyaXZlbCBhYm91dCBlZyB0aGUgZHBrZy9pbmZvICIKKyN+ICJkaXJlY3RvcnlcbiIKKyN+ICIgICAyMDAwICAgc3R1cGlkbHl2ZXJib3NlICAgSW5zYW5lIGFtb3VudHMgb2YgZHJpdmVsXG4iCisjfiAiXG4iCisjfiAiRGVidWdnaW5nIG9wdGlvbnMgYXJlIGJlIG1peGVkIHVzaW5nIGJpdHdpc2Utb3IuXG4iCisjfiAiTm90ZSB0aGF0IHRoZSBtZWFuaW5ncyBhbmQgdmFsdWVzIGFyZSBzdWJqZWN0IHRvIGNoYW5nZS5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIiVzIG9wdGlvbiBkZSBkw6lib2dhZ2UsIC0tZGVidWc9PG9jdGFsPiBvdSAtRDxvY3RhbD7CoDpcbiIKKyN+ICJcbiIKKyN+ICIgbnVtw6lybyAgcsOpZi4gZGFucyBzb3VyY2UgIGRlc2NyaXB0aW9uXG4iCisjfiAiICAgICAgMSAgIGdlbmVyYWwgICAgICAgICAgIEfDqW7DqXJhbGVtZW50LCBpbmZvcm1hdGlvbnMgZGUgcHJvZ3Jlc3Npb24gIgorI34gInV0aWxlc1xuIgorI34gIiAgICAgIDIgICBzY3JpcHRzICAgICAgICAgICBBcHBlbCBldCDDqXRhdCBkZXMgc2NyaXB0cyBkdSByZXNwb25zYWJsZSBkZSAiCisjfiAicGFxdWV0XG4iCisjfiAiICAgICAxMCAgIGVhY2hmaWxlICAgICAgICAgIFNvcnRpZSBkZSBjaGFxdWUgZmljaGllciB0cmFpdMOpXG4iCisjfiAiICAgIDEwMCAgIGVhY2hmaWxlZGV0YWlsICAgIEFmZmljaGFnZSBkw6l0YWlsbMOpIHBvdXIgY2hhcXVlIGZpY2hpZXIgZGUgICIKKyN+ICJ0cmFpdMOpXG4iCisjfiAiICAgICAyMCAgIGNvbmZmICAgICAgICAgICAgIFNvcnRpZSBkZSBjaGFxdWUgZmljaGllciBkZSBjb25maWd1cmF0aW9uXG4iCisjfiAiICAgIDIwMCAgIGNvbmZmZGV0YWlsICAgICAgIEFmZmljaGFnZSBkw6l0YWlsbMOpIHBvdXIgY2hhcXVlIGZpY2hpZXIgZGUgIgorI34gImNvbmZpZ3VyYXRpb24gdHJhaXTDqVxuIgorI34gIiAgICAgNDAgICBkZXBjb24gICAgICAgICAgICBEw6lwZW5kYW5jZXMgZXQgY29uZmxpdHNcbiIKKyN+ICIgICAgNDAwICAgZGVwY29uZGV0YWlsICAgICAgU29ydGllIGRlIG5vbWJyZXVzZXMgZMOpcGVuZGFuY2VzL2NvbmZsaXRzXG4iCisjfiAiICAxMDAwMCAgIHRyaWdnZXJzICAgICAgICAgIEFjdGl2YXRpb24gZXQgdHJhaXRlbWVudCBkZXMgYWN0aW9ucyAiCisjfiAiZGlmZsOpcsOpZXNcbiIKKyN+ICIgIDIwMDAwICAgdHJpZ2dlcnNkZXRhaWwgICAgQWZmaWNoYWdlIGTDqXRhaWxsw6kgZGVzIGFjdGlvbnMgZGlmZsOpcsOpZXNcbiIKKyN+ICIgIDQwMDAwICAgdHJpZ2dlcnNzdHVwaWQgICAgQWZmaWNoYWdlIHRyw6hzIGTDqXRhaWxsw6kgcG91ciBsZXNcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWN0aW9ucyBkaWZmw6lyw6llc1xuIgorI34gIiAgIDEwMDAgICB2ZXJ5dmVyYm9zZSAgICAgICBCZWF1Y291cCBkZSByYWRvdGFnZSDDoCBwcm9wb3MgZHUgcsOpcGVydG9pcmUgIgorI34gImRwa2cvaW5mb1xuIgorI34gIiAgIDIwMDAgICBzdHVwaWRseXZlcmJvc2UgICBRdWFudGl0w6kgc3R1cGlkZSBkZSByYWRvdGFnZVxuIgorI34gIlxuIgorI34gIkxlcyBvcHRpb25zIGRlIGTDqWJvZ2FnZSBwZXV2ZW50IMOqdHJlIGdyb3Vww6llcyBhdmVjIHVuIMKrwqBvdcKgwrsgbG9naXF1ZS5cbiIKKyN+ICJOb3RleiBxdWUgbGEgc2lnbmlmaWNhdGlvbiBldCBsZXMgdmFsZXVycyBzb250IHN1amV0dGVzIMOgIGNoYW5nZW1lbnRzLlxuIgorCisjfiBtc2dpZCAiIgorI34gIiVzIGZvcmNpbmcgb3B0aW9ucyAtIGNvbnRyb2wgYmVoYXZpb3VyIHdoZW4gcHJvYmxlbXMgZm91bmQ6XG4iCisjfiAiICB3YXJuIGJ1dCBjb250aW51ZTogIC0tZm9yY2UtPHRoaW5nPiw8dGhpbmc+LC4uLlxuIgorI34gIiAgc3RvcCB3aXRoIGVycm9yOiAgICAtLXJlZnVzZS08dGhpbmc+LDx0aGluZz4sLi4uIHwgLS1uby1mb3JjZS0iCisjfiAiPHRoaW5nPiwuLi5cbiIKKyN+ICIgRm9yY2luZyB0aGluZ3M6XG4iCisjfiAiICBhbGwgWyFdICAgICAgICAgICAgICAgIFNldCBhbGwgZm9yY2Ugb3B0aW9uc1xuIgorI34gIiAgZG93bmdyYWRlIFsqXSAgICAgICAgICBSZXBsYWNlIGEgcGFja2FnZSB3aXRoIGEgbG93ZXIgdmVyc2lvblxuIgorI34gIiAgY29uZmlndXJlLWFueSAgICAgICAgICBDb25maWd1cmUgYW55IHBhY2thZ2Ugd2hpY2ggbWF5IGhlbHAgdGhpcyBvbmVcbiIKKyN+ICIgIGhvbGQgICAgICAgICAgICAgICAgICAgUHJvY2VzcyBpbmNpZGVudGFsIHBhY2thZ2VzIGV2ZW4gd2hlbiBvbiBob2xkXG4iCisjfiAiICBiYWQtcGF0aCAgICAgICAgICAgICAgIFBBVEggaXMgbWlzc2luZyBpbXBvcnRhbnQgcHJvZ3JhbXMsIHByb2JsZW1zICIKKyN+ICJsaWtlbHlcbiIKKyN+ICIgIG5vdC1yb290ICAgICAgICAgICAgICAgVHJ5IHRvIChkZSlpbnN0YWxsIHRoaW5ncyBldmVuIHdoZW4gbm90IHJvb3RcbiIKKyN+ICIgIG92ZXJ3cml0ZSAgICAgICAgICAgICAgT3ZlcndyaXRlIGEgZmlsZSBmcm9tIG9uZSBwYWNrYWdlIHdpdGggYW5vdGhlclxuIgorI34gIiAgb3ZlcndyaXRlLWRpdmVydGVkICAgICBPdmVyd3JpdGUgYSBkaXZlcnRlZCBmaWxlIHdpdGggYW4gdW5kaXZlcnRlZCAiCisjfiAidmVyc2lvblxuIgorI34gIiAgYmFkLXZlcmlmeSAgICAgICAgICAgICBJbnN0YWxsIGEgcGFja2FnZSBldmVuIGlmIGl0IGZhaWxzIGF1dGhlbnRpY2l0eSAiCisjfiAiY2hlY2tcbiIKKyN+ICIgIGRlcGVuZHMtdmVyc2lvbiBbIV0gICAgVHVybiBkZXBlbmRlbmN5IHZlcnNpb24gcHJvYmxlbXMgaW50byB3YXJuaW5nc1xuIgorI34gIiAgZGVwZW5kcyBbIV0gICAgICAgICAgICBUdXJuIGFsbCBkZXBlbmRlbmN5IHByb2JsZW1zIGludG8gd2FybmluZ3NcbiIKKyN+ICIgIGNvbmZuZXcgWyFdICAgICAgICAgICAgQWx3YXlzIHVzZSB0aGUgbmV3IGNvbmZpZyBmaWxlcywgZG9uJ3QgcHJvbXB0XG4iCisjfiAiICBjb25mb2xkIFshXSAgICAgICAgICAgIEFsd2F5cyB1c2UgdGhlIG9sZCBjb25maWcgZmlsZXMsIGRvbid0IHByb21wdFxuIgorI34gIiAgY29uZmRlZiBbIV0gICAgICAgICAgICBVc2UgdGhlIGRlZmF1bHQgb3B0aW9uIGZvciBuZXcgY29uZmlnIGZpbGVzIGlmICIKKyN+ICJvbmVcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgaXMgYXZhaWxhYmxlLCBkb24ndCBwcm9tcHQuIElmIG5vIGRlZmF1bHQgY2FuIGJlICIKKyN+ICJmb3VuZCxcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgeW91IHdpbGwgYmUgcHJvbXB0ZWQgdW5sZXNzIG9uZSBvZiB0aGUgY29uZm9sZCAiCisjfiAib3JcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgY29uZm5ldyBvcHRpb25zIGlzIGFsc28gZ2l2ZW5cbiIKKyN+ICIgIGNvbmZtaXNzIFshXSAgICAgICAgICAgQWx3YXlzIGluc3RhbGwgbWlzc2luZyBjb25maWcgZmlsZXNcbiIKKyN+ICIgIGNvbmZhc2sgWyFdICAgICAgICAgICAgT2ZmZXIgdG8gcmVwbGFjZSBjb25maWcgZmlsZXMgd2l0aCBubyBuZXcgIgorI34gInZlcnNpb25zXG4iCisjfiAiICBicmVha3MgWyFdICAgICAgICAgICAgIEluc3RhbGwgZXZlbiBpZiBpdCB3b3VsZCBicmVhayBhbm90aGVyIHBhY2thZ2VcbiIKKyN+ICIgIGNvbmZsaWN0cyBbIV0gICAgICAgICAgQWxsb3cgaW5zdGFsbGF0aW9uIG9mIGNvbmZsaWN0aW5nIHBhY2thZ2VzXG4iCisjfiAiICBhcmNoaXRlY3R1cmUgWyFdICAgICAgIFByb2Nlc3MgZXZlbiBwYWNrYWdlcyB3aXRoIHdyb25nIGFyY2hpdGVjdHVyZVxuIgorI34gIiAgb3ZlcndyaXRlLWRpciBbIV0gICAgICBPdmVyd3JpdGUgb25lIHBhY2thZ2UncyBkaXJlY3Rvcnkgd2l0aCBhbm90aGVyJ3MgIgorI34gImZpbGVcbiIKKyN+ICIgIHVuc2FmZS1pbyBbIV0gICAgICAgICAgRG8gbm90IHBlcmZvcm0gc2FmZSBJL08gb3BlcmF0aW9ucyB3aGVuICIKKyN+ICJ1bnBhY2tpbmdcbiIKKyN+ICIgIHJlbW92ZS1yZWluc3RyZXEgWyFdICAgUmVtb3ZlIHBhY2thZ2VzIHdoaWNoIHJlcXVpcmUgaW5zdGFsbGF0aW9uXG4iCisjfiAiICByZW1vdmUtZXNzZW50aWFsIFshXSAgIFJlbW92ZSBhbiBlc3NlbnRpYWwgcGFja2FnZVxuIgorI34gIlxuIgorI34gIldBUk5JTkcgLSB1c2Ugb2Ygb3B0aW9ucyBtYXJrZWQgWyFdIGNhbiBzZXJpb3VzbHkgZGFtYWdlIHlvdXIgIgorI34gImluc3RhbGxhdGlvbi5cbiIKKyN+ICJGb3JjaW5nIG9wdGlvbnMgbWFya2VkIFsqXSBhcmUgZW5hYmxlZCBieSBkZWZhdWx0LlxuIgorI34gbXNnc3RyICIiCisjfiAiT3B0aW9ucyBkZSBmb3LDp2FnZSBkZSAlcyAtIGNvbnRyw7RsZXIgbGUgY29tcG9ydGVtZW50IGVuIGNhcyBkZSAiCisjfiAicHJvYmzDqG1lc8KgOlxuIgorI34gIiAgYXZlcnRpciBtYWlzIGNvbnRpbnVlcsKgOiAtLWZvcmNlLTxvcHRpb24+LDxvcHRpb24+LC4uLlxuIgorI34gIiAgc29ydGlyIGVuIGVycmV1csKgOiAgICAgIC0tcmVmdXNlLTxvcHRpb24+LDxvcHRpb24+LC4uLiB8IC0tbm8tZm9yY2UtIgorI34gIjxvcHRpb24+LC4uLlxuIgorI34gIiBGb3JjZXIgZGVzIGNob3Nlc8KgOlxuIgorI34gIiAgYWxsIFshXSAgICAgICAgICAgICAgICBTw6lsZWN0aW9ubmVyIHRvdXRlcyBsZXMgb3B0aW9ucyBkZSBmb3LDp2FnZVxuIgorI34gIiAgZG93bmdyYWRlIFsqXSAgICAgICAgICBSZW1wbGFjZXIgdW4gcGFxdWV0IGF2ZWMgdW5lIHZlcnNpb24gaW5mw6lyaWV1cmVcbiIKKyN+ICIgIGNvbmZpZ3VyZS1hbnkgICAgICAgICAgQ29uZmlndXJlciB0b3VzIGxlcyBwYXF1ZXRzIGVuIHJhcHBvcnRcbiIKKyN+ICIgIGhvbGQgICAgICAgICAgICAgICAgICAgVHJhaXRlciBtw6ptZSBsZXMgcGFxdWV0cyDDoCBnYXJkZXIgKG9uIGhvbGQpXG4iCisjfiAiICBiYWQtcGF0aCAgICAgICAgICAgICAgIFByb2dyYW1tZXMgbm9uIHZpc2libGVzIHBhciBsYSB2YXJpYWJsZSBQQVRIIGV0XG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByb2Jsw6htZXMgc2ltaWxhaXJlc1xuIgorI34gIiAgbm90LXJvb3QgICAgICAgICAgICAgICBUZW50ZXIgZGUgKGTDqSlpbnN0YWxsZXIgbcOqbWUgc2FucyDDqnRyZSByb290XG4iCisjfiAiICBvdmVyd3JpdGUgICAgICAgICAgICAgIFJlbXBsYWNlciB1biBmaWNoaWVyIGQndW4gcGFxdWV0IHBhciBjZWx1aSBkJ3VuICIKKyN+ICJhdXRyZVxuIgorI34gIiAgb3ZlcndyaXRlLWRpdmVydGVkICAgICBSZW1wbGFjZXIgdW4gZmljaGllciBkw6l0b3VybsOpIGF2ZWMgdW5lIHZlcnNpb25cbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgbm9uLWTDqXRvdXJuw6llXG4iCisjfiAiICBiYWQtdmVyaWZ5ICAgICAgICAgICAgIEluc3RhbGxlciB1biBwYXF1ZXQgbcOqbWUgc2kgc29uIGF1dGhlbnRpY2l0w6kgbmUgIgorI34gInBldXRcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgw6p0cmUgdsOpcmlmacOpZVxuIgorI34gIiAgZGVwZW5kcy12ZXJzaW9uIFshXSAgICBDaGFuZ2VyIGxlcyBwcm9ibMOobWVzIGRlIGTDqXBlbmRhbmNlIHZlcnNpb25uw6kgIgorI34gImVuXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF2ZXJ0aXNzZW1lbnRzXG4iCisjfiAiICBkZXBlbmRzIFshXSAgICAgICAgICAgIENoYW5nZXIgdG91cyBsZXMgcHJvYmzDqG1lcyBkZSBkw6lwZW5kYW5jZSBlblxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdmVydGlzc2VtZW50c1xuIgorI34gIiAgY29uZm5ldyBbIV0gICAgICAgICAgICBUb3Vqb3VycyB1dGlsaXNlciBsZXMgbm91dmVhdXggZmljaGllcnMgZGVcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uZmlndXJhdGlvbiBldCBuZSByaWVuIGRlbWFuZGVyXG4iCisjfiAiICBjb25mb2xkIFshXSAgICAgICAgICAgIFRvdWpvdXJzIHV0aWxpc2VyIGxlcyBhbmNpZW5zIGZpY2hpZXJzIGRlXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmZpZ3VyYXRpb24gZXQgbmUgcmllbiBkZW1hbmRlclxuIgorI34gIiAgY29uZmRlZiBbIV0gICAgICAgICAgICBVdGlsaXNlciBsJ29wdGlvbiBwYXIgZMOpZmF1dCBkZXMgbm91dmVhdXggIgorI34gImZpY2hpZXJzXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlIGNvbmZpZ3VyYXRpb24gc2kgY2VsbGUtY2kgZXN0IGRpc3BvbmlibGUgIgorI34gImV0IG5lXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJpZW4gZGVtYW5kZXIuXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIFNpIGF1Y3VuZSBvcHRpb24gcGFyIGTDqWZhdXQgbidlc3QgdHJvdXbDqWUsIHZvdXMgIgorI34gInNlcmV6XG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgaW52aXTDqSDDoCBlbiBzYWlzaXIgdW5lIMOgIG1vaW5zIHF1ZSBsJ3VuZSBkZXMgIgorI34gIm9wdGlvbnNcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25mb2xkIG91IGNvbmZuZXcgc29pdCBhdXNzaSBjaG9pc2llXG4iCisjfiAiICBjb25mbWlzcyBbIV0gICAgICAgICAgIFRvdWpvdXJzIGluc3RhbGxlciBsZXMgZmljaGllcnMgZGUgIgorI34gImNvbmZpZ3VyYXRpb25cbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICBtYW5xdWFudHNcbiIKKyN+ICIgIGNvbmZhc2sgWyFdICAgICAgICAgICAgUHJvcG9zZXIgZGUgcmVtcGxhY2VyIGxlcyBmaWNoaWVycyBkZSAiCisjfiAiY29uZmlndXJhdGlvblxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHF1aSBuJ29udCBwYXMgZGUgbm91dmVsbGUgdmVyc2lvbiAgYnJlYWtzICIKKyN+ICJbIV0gICAgICAgICAgICAgSW5zdGFsbGVyIG3Dqm1lIHNpIGNlbGEgY2Fzc2UgdW4gYXV0cmUgcGFxdWV0XG4iCisjfiAiICBjb25mbGljdHMgWyFdICAgICAgICAgIEF1dG9yaXNlciBsJ2luc3RhbGxhdGlvbiBkZSBwYXF1ZXRzICIKKyN+ICJjb25mbGljdHVlbHNcbiIKKyN+ICIgIGFyY2hpdGVjdHVyZSBbIV0gICAgICAgVHJhaXRlciBtw6ptZSBsZXMgcGFxdWV0cyBkJ3VuZSBhdXRyZSAiCisjfiAiYXJjaGl0ZWN0dXJlXG4iCisjfiAiICBvdmVyd3JpdGUtZGlyIFshXSAgICAgIFJlbXBsYWNlciBsZSByw6lwZXJ0b2lyZSBkJ3VuIHBhcXVldCBwYXIgbGUgIgorI34gImZpY2hpZXJcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICBkJ3VuIGF1dHJlXG4iCisjfiAiICB1bnNhZmUtaW8gWyFdICAgICAgICAgIE5lIHBhcyBlZmZlY3R1ZXIgZCdhY3Rpb25zIGQnZW50csOpZS9zb3J0aWUgbm9uXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgc8O7cmVzIGxvcnMgZHUgZMOpY29tcGFjdGFnZVxuIgorI34gIiAgcmVtb3ZlLXJlaW5zdHJlcSBbIV0gICBTdXBwcmltZXIgbGVzIHBhcXVldHMgcmVxdcOpcmFudCB1bmUgIgorI34gInLDqWluc3RhbGxhdGlvblxuIgorI34gIiAgcmVtb3ZlLWVzc2VudGlhbCBbIV0gICBTdXBwcmltZXIgdW4gcGFxdWV0IGVzc2VudGllbFxuIgorI34gIlxuIgorI34gIkFUVEVOVElPTsKgOiB1dGlsaXNlciB1bmUgb3B0aW9uIG1hcnF1w6llIFshXSBwZXV0IHPDqXJpZXVzZW1lbnQgZW5kb21tYWdlciAiCisjfiAidm90cmVcbiIKKyN+ICIgICAgICAgICAgIGluc3RhbGxhdGlvbi5cbiIKKyN+ICJMZXMgb3B0aW9ucyBkZSBmb3LDp2FnZSBtYXJxdcOpZXMgWypdIHNvbnQgYWN0aXbDqWVzIHBhciBkw6lmYXV0LlxuIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgZHBrZy1zcGxpdCB0byBzZWUgaWYgaXQncyBwYXJ0IG9mIGEgbXVsdGlwYXJ0ZXIiCisjfiBtc2dzdHIgIiIKKyN+ICJpbXBvc3NpYmxlIGQnZXjDqWN1dGVyIGRwa2ctc3BsaXQgcG91ciB2b2lyIHMnaWwgcydhZ2l0IGQndW5lIHBhcnRpZSBkJ3VuICIKKyN+ICJmaWNoaWVyIGTDqWNvdXDDqSIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjbCBkZWJzaWctdmVyaWZ5IgorI34gbXNnc3RyICLDqWNoZWMgZGUgbCdleMOpY3V0aW9uIChwYXIgZXhlY2wpIGRlIMKrwqBkZWJzaWctdmVyaWZ5wqDCuyIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIGRwa2ctZGViIHRvIGV4dHJhY3QgY29udHJvbCBpbmZvcm1hdGlvbiIKKyN+IG1zZ3N0ciAiIgorI34gImltcG9zc2libGUgZCdleMOpY3V0ZXIgZHBrZy1kZWIgcG91ciBsJ2V4dHJhY3Rpb24gZGVzIGluZm9ybWF0aW9ucyBkZSAiCisjfiAiY29udHLDtGxlIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGV4ZWMgZHBrZy1kZWIgdG8gZ2V0IGZpbGVzeXN0ZW0gYXJjaGl2ZSIKKyN+IG1zZ3N0ciAiIgorI34gImltcG9zc2libGUgZCdleMOpY3V0ZXIgZHBrZy1kZWIgcG91ciBvYnRlbmlyIGwnYXJjaGl2ZSBkdSBzeXN0w6htZSBkZSAiCisjfiAiZmljaGllcnMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gZGVsZXRlIGRpc2FwcGVhcmluZyBjb250cm9sIGluZm8gZmlsZSBgJS4yNTBzJyIKKyN+IG1zZ3N0ciAiIgorI34gImltcG9zc2libGUgZGUgc3VwcHJpbWVyIGxlIGZpY2hpZXIgaW5mbyBkZSBjb250csO0bGUgZGlzcGFydSDCq8KgJS4yNTBzwqDCuyIKKworI34gbXNnaWQgImRwa2c6ICVzIG5vdCBmb3VuZC5cbiIKKyN+IG1zZ3N0ciAiZHBrZ8KgOiAlcyBpbnRyb3V2YWJsZS5cbiIKKworI34gbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byAuLi4vREVCSUFOIgorI34gbXNnc3RyICJpbXBvc3NpYmxlIGRlIGNoYW5nZXIgZGUgcsOpcGVydG9pcmUgdmVycyAuLi4vREVCSUFOIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgdGFyIC1jZiIKKyN+IG1zZ3N0ciAiaW1wb3NzaWJsZSBkJ2V4w6ljdXRlciAgwqvCoHRhciAtY2bCoMK7IgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIG1ha2UgdG1wZmlsZSAoY29udHJvbCkiCisjfiBtc2dzdHIgImltcG9zc2libGUgZGUgY3LDqWVyIHVuIGZpY2hpZXIgdGVtcG9yYWlyZSAowqvCoGNvbnRyb2zCoMK7KSIKKworI34gbXNnaWQgImZhaWxlZCB0byB1bmxpbmsgdG1wZmlsZSAoY29udHJvbCksICVzIgorI34gbXNnc3RyICJpbXBvc3NpYmxlIGRlIGTDqWxpZXIgdW4gZmljaGllciB0ZW1wb3JhaXJlICjCq8KgY29udHJvbMKgwrspLCAlcyIKKworI34gbXNnaWQgImNvbnRyb2wiCisjfiBtc2dzdHIgImNvbnRyb2wiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gcmV3aW5kIHRtcGZpbGUgKGNvbnRyb2wpIgorI34gbXNnc3RyICJsZSDCq8KgcmV3aW5kwqDCuyBzdXIgdW4gZmljaGllciB0ZW1wb3JhaXJlICjCq8KgY29udHJvbMKgwrspIGEgw6ljaG91w6kiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZnN0YXQgdG1wZmlsZSAoY29udHJvbCkiCisjfiBtc2dzdHIgIsOpY2hlYyBkZSDCq8KgZnN0YXTCoMK7IHN1ciB1biBmaWNoaWVyIHRlbXBvcmFpcmUgKMKrwqBjb250cm9swqDCuykiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBmaW5kIgorI34gbXNnc3RyICJpbXBvc3NpYmxlIGQnZXjDqWN1dGVyIMKrwqBmaW5kwqDCuyIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIHNoIC1jIG12IGZvby8qICZjIgorI34gbXNnc3RyICJpbXBvc3NpYmxlIGQnZXjDqWN1dGVyIMKrwqBzaCAtYyBtdiBmb28vKiAmY8KgwrsiCisKKyN+IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSAlLjI1MHMgbGVuZ3RoIGNvbnRhaW5zIG51bGxzIgorI34gbXNnc3RyICIiCisjfiAibGUgZmljaGllciDCq8KgJS4yNTBzwqDCuyBlc3QgY29ycm9tcHUgLSBsYSBsb25ndWV1ciAlLjI1MHMgY29udGllbnQgZGVzICIKKyN+ICJjYXJhY3TDqHJlcyBudWxzIgorCisjfiBtc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gbmVnYXRpdmUgbWVtYmVyIGxlbmd0aCAlemkiCisjfiBtc2dzdHIgIiIKKyN+ICJsZSBmaWNoaWVyIMKrwqAlLjI1MHPCoMK7IGVzdCBjb3Jyb21wdSAtIGxvbmd1ZXVyIG7DqWdhdGl2ZSBkZSBsJ8OpbMOpbWVudCAlemkiCisKKyN+IG1zZ2lkICJmYWlsZWQgZ2V0dGluZyB0aGUgY3VycmVudCBmaWxlIHBvc2l0aW9uIgorI34gbXNnc3RyICLDqWNoZWMgZGUgcsOpY3Vww6lyYXRpb24gZGUgbGEgcG9zaXRpb24gY291cmFudGUgZGFucyBsZSBmaWNoaWVyIgorCisjfiBtc2dpZCAiZmFpbGVkIHNldHRpbmcgdGhlIGN1cnJlbnQgZmlsZSBwb3NpdGlvbiIKKyN+IG1zZ3N0ciAiw6ljaGVjIGRlIG1vZGlmaWNhdGlvbiBkZSBsYSBwb3NpdGlvbiBjb3VyYW50ZSBkYW5zIGxlIGZpY2hpZXIiCisKKyN+IG1zZ2lkICJ2ZXJzaW9uIG51bWJlciIKKyN+IG1zZ3N0ciAibnVtw6lybyBkZSB2ZXJzaW9uIgorCisjfiBtc2dpZCAibWVtYmVyIGxlbmd0aCIKKyN+IG1zZ3N0ciAibG9uZ3VldXIgZHUgbWVtYnJlIgorCisjfiBtc2dpZCAiaGVhZGVyIGluZm8gbWVtYmVyIgorI34gbXNnc3RyICLDqWzDqW1lbnQgaW5mbyBkZSBsJ2VuLXTDqnRlIgorCisjfiBtc2dpZCAic2tpcHBlZCBjb250cm9sIGFyZWEgZnJvbSAlcyIKKyN+IG1zZ3N0ciAic2F1dCBkZSBsYSB6b25lIGRlIGNvbnRyw7RsZSDDoCBwYXJ0aXIgZGUgJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHRlbXBvcmFyeSBkaXJlY3RvcnkiCisjfiBtc2dzdHIgImltcG9zc2libGUgZGUgY3LDqWVyIHVuIHLDqXBlcnRvaXJlIHRlbXBvcmFpcmUiCisKKyN+IG1zZ2lkICJpbmZvX3NwZXciCisjfiBtc2dzdHIgImluZm9fc3BldyIKKworI34gbXNnaWQgImluZm8gbGVuZ3RoIgorI34gbXNnc3RyICJ0YWlsbGUgZGUgbCdpbmZvcm1hdGlvbiIKKworI34gbXNnaWQgInRvdGFsIGxlbmd0aCIKKyN+IG1zZ3N0ciAidGFpbGxlIHRvdGFsZSIKKworI34gbXNnaWQgImRhdGEgbGVuZ3RoIgorI34gbXNnc3RyICJ0YWlsbGUgZGVzIGRvbm7DqWVzIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgZHBrZy1kZWIgdG8gZXh0cmFjdCBmaWVsZCB2YWx1ZSIKKyN+IG1zZ3N0ciAiIgorI34gImltcG9zc2libGUgZCdleMOpY3V0ZXIgZHBrZy1kZWIgcG91ciBsJ2V4dHJhY3Rpb24gZGUgbGEgdmFsZXVyIGQndW4gY2hhbXAiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gc3RhdCAlczogJXMiCisjfiBtc2dzdHIgImltcG9zc2libGUgZCdhbmFseXNlciAlc8KgOiAlcyIKKworI34gbXNnaWQgInNsYXZlIG5hbWUgJXMgZHVwbGljYXRlZCIKKyN+IG1zZ3N0ciAibGUgbm9tIHNlY29uZGFpcmUgKMKrwqBzbGF2ZcKgwrspICVzIGVzdCBkdXBsaXF1w6kiCisKKyN+IG1zZ2lkICJzbGF2ZSBsaW5rICVzIGR1cGxpY2F0ZWQiCisjfiBtc2dzdHIgImxlIGxpZW4gc2Vjb25kYWlyZSAowqvCoHNsYXZlwqDCuykgJXMgZXN0IGR1cGxpcXXDqSIKKworI34gbXNnaWQgIiVkIHJlcXVlc3RlZCBjb250cm9sIGNvbXBvbmVudHMgYXJlIG1pc3NpbmciCisjfiBtc2dzdHIgIiVkIGNvbXBvc2FudHMgZGUgY29udHLDtGxlIG7DqWNlc3NhaXJlcyBtYW5xdWVudCIKKworI34gbXNnaWQgImNhdCAoZGF0YSkiCisjfiBtc2dzdHIgImNhdCAoZGF0YSkiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gb3BlbiBwaXBlIGRlc2NyaXB0b3IgYDEnIGluIHBhc3RlIgorI34gbXNnc3RyICIiCisjfiAiw6ljaGVjIGQnb3V2ZXJ0dXJlIGRlIGRlc2NyaXB0ZXVyIGRlIHR1YmUgKMKrwqBwaXBlwqDCuykgwqvCoDHCoMK7IGxvcnMgZHUgY29sbGFnZSIKKworI34gbXNnaWQgImZhaWxlZCB0byB3cml0ZSB0byBnemlwIC1kYyIKKyN+IG1zZ3N0ciAiw6ljaGVjIGRlIGwnw6ljcml0dXJlIHZlcnMgwqvCoGd6aXAgLWRjwqDCuyIKKworI34gbXNnaWQgImZhaWxlZCB0byBjbG9zZSBnemlwIC1kYyIKKyN+IG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSBmZXJtZXIgwqvCoGd6aXAgLWRjwqDCuyIKKworI34gbXNnaWQgImZhaWxlZCB0byBzeXNjYWxsIGxzZWVrIHRvIGZpbGVzIGFyY2hpdmUgcG9ydGlvbiIKKyN+IG1zZ3N0ciAiIgorI34gIsOpY2hlYyBkZSBsJ2FwcGVsIHN5c3TDqG1lIMKrwqBsc2Vla8KgwrsgcG91ciBsYSBwb3J0aW9uIGQnYXJjaGl2ZSBkZXMgZmljaGllcnMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gZXhlYyBta3NwbGl0IgorI34gbXNnc3RyICJpbXBvc3NpYmxlIGQnZXjDqWN1dGVyIG1rc3BsaXQiCisKKyN+IG1zZ2lkICIiCisjfiAiXG4iCisjfiAiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorI34gIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uIgorI34gbXNnc3RyICIiCisjfiAiXG4iCisjfiAiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorI34gIkNvcHlyaWdodCAoQykgMjAwMCwgMjAwMSBXaWNoZXJ0IEFra2VybWFuLiIKKworI34gbXNnaWQgInR3byBjb21tYW5kcyBzcGVjaWZpZWQ6ICVzIGFuZCAtLSVzIgorI34gbXNnc3RyICJkZXV4IGNvbW1hbmRlcyBzcMOpY2lmacOpZXPCoDogJXMgZXQgLS0lcyIKKworI34gbXNnaWQgIi0tJXMgbmVlZHMgYSBkaXZlcnQtdG8gYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tJXMgYSBiZXNvaW4gZCd1biBwYXJhbcOodHJlIGTDqXRvdXJuZW1lbnQtdmVycyIKKworI34gbXNnaWQgIi0tJXMgbmVlZHMgYSA8cGFja2FnZT4gYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tJXMgYSBiZXNvaW4gZCd1biBwYXJhbcOodHJlIDxwYXF1ZXQ+IgorCisjfiBtc2dpZCAiY2Fubm90IG9wZW4gZGl2ZXJzaW9uczogJXMiCisjfiBtc2dzdHIgImltcG9zc2libGUgZCdvdXZyaXIgbGUgZmljaGllciBkZXMgZMOpdG91cm5lbWVudHPCoDogJXMiCisKKyN+IG1zZ2lkICJtaXNzaW5nIGFsdG5hbWUiCisjfiBtc2dzdHIgImFsdG5hbWUgbWFucXVlIgorCisjfiBtc2dpZCAibWlzc2luZyBwYWNrYWdlIgorI34gbXNnc3RyICJwYXF1ZXQgbWFucXVlIgorCisjfiBtc2dpZCAiaW50ZXJuYWwgZXJyb3IgLSBiYWQgbW9kZSBgJXMnIgorI34gbXNnc3RyICJlcnJldXIgaW50ZXJuZSAtIG1vZGUgwqvCoCVzwqDCuyBpbmNvcnJlY3QiCisKKyN+IG1zZ2lkICJjYW5ub3Qgc3RhdCBvbGQgbmFtZSBgJXMnOiAlcyIKKyN+IG1zZ3N0ciAiYW5hbHlzZSBpbXBvc3NpYmxlIHN1ciBsJ2FuY2llbiBub20gwqvCoCVzwqDCu8KgOiAlcyIKKworI34gbXNnaWQgInJlbmFtZTogcmVuYW1lIGAlcycgdG8gYCVzJzogJXMiCisjfiBtc2dzdHIgInJlbm9tbWFnZcKgOiByZW5vbW1hZ2UgZGUgwqvCoCVzwqDCuyBlbiDCq8KgJXPCoMK7wqA6ICVzIgorCisjfiBtc2dpZCAiY3JlYXRlIGRpdmVyc2lvbnMtbmV3OiAlcyIKKyN+IG1zZ3N0ciAiY3LDqWF0aW9uIGRlIGRpdmVyc2lvbnMtbmV3wqA6ICVzIgorCisjfiBtc2dpZCAid3JpdGUgZGl2ZXJzaW9ucy1uZXc6ICVzIgorI34gbXNnc3RyICLDqWNyaXR1cmUgZGUgZGl2ZXJzaW9ucy1uZXfCoDogJXMiCisKKyN+IG1zZ2lkICJjbG9zZSBkaXZlcnNpb25zLW5ldzogJXMiCisjfiBtc2dzdHIgImZlcm1ldHVyZSBkZSBkaXZlcnNpb25zLW5ld8KgOiAlcyIKKworI34gbXNnaWQgImNyZWF0ZSBuZXcgZGl2ZXJzaW9ucy1vbGQ6ICVzIgorI34gbXNnc3RyICLDqWNyaXR1cmUgZHUgbm91dmVhdSBkaXZlcnNpb25zLW9sZMKgOiAlcyIKKworI34gbXNnaWQgImluc3RhbGwgbmV3IGRpdmVyc2lvbnM6ICVzIgorI34gbXNnc3RyICJpbnN0YWxsYXRpb24gZGVzIG5vdXZlbGxlcyBkaXZlcnNpb25zwqA6ICVzIgorCisjfiBtc2dpZCAiaW50ZXJuYWwgZXJyb3I6ICVzIGNvcnJ1cHQ6ICVzIgorI34gbXNnc3RyICJlcnJldXIgaW50ZXJuZcKgOiAlcyBjb3Jyb21wdcKgOiAlcyIKKworI34gbXNnaWQgImRwa2ctZGViIC0gZXJyb3I6ICVzIChgJXMnKSBkb2Vzbid0IGNvbnRhaW4gYW55IGRpZ2l0c1xuIgorI34gbXNnc3RyICJkcGtnLWRlYiAtIGVycmV1csKgOiAlcyAowqvCoCVzwqDCuykgbmUgY29udGllbnQgcGFzIGRlIGNoaWZmcmVzXG4iCisKKyN+IG1zZ2lkICIodXBzdHJlYW0pIHZlcnNpb24iCisjfiBtc2dzdHIgInZlcnNpb24gKGFtb250KSIKKworI34gbXNnaWQgIkRlYmlhbiByZXZpc2lvbiIKKyN+IG1zZ3N0ciAicsOpdmlzaW9uIERlYmlhbiIKKworI34gbXNnaWQgIiVkIGVycm9ycyBpbiBjb250cm9sIGZpbGUiCisjfiBtc2dzdHIgIiVkIGVycmV1cnMgZGFucyBsZSBmaWNoaWVyIGRlIGNvbnRyw7RsZSIKKworIywgZnV6enkKKyN+fCBtc2dpZCAidW5hYmxlIHRvIHJlYWQgJXM6ICVzIgorI34gbXNnaWQgImNhbid0IHJlYWRkaXIgJXM6ICVzIgorI34gbXNnc3RyICJpbXBvc3NpYmxlIGRlIGxpcmUgJXPCoDogJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgaW4gYnVmZmVyX3dyaXRlKGZkKSAoJWksIHJldD0lbGkpOiAlcyIKKyN+IG1zZ3N0ciAiw6ljaGVjIGRhbnMgwqvCoGJ1ZmZlcl93cml0ZShmZCnCoMK7ICglaSwgcmV0PSVsaSnCoDogJXMiCisKKyN+IG1zZ2lkICJlb2YgaW4gYnVmZmVyX3dyaXRlKHN0cmVhbSk6ICVzIgorI34gbXNnc3RyICJmaW4gZGUgZmljaGllciBkYW5zIMKrwqBidWZmZXJfd3JpdGUoc3RyZWFtKcKgwrvCoDogJXMiCisKKyN+IG1zZ2lkICJlcnJvciBpbiBidWZmZXJfd3JpdGUoc3RyZWFtKTogJXMiCisjfiBtc2dzdHIgIsOpY2hlYyBkYW5zIMKrwqBidWZmZXJfd3JpdGUoc3RyZWFtKcKgwrvCoDogJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgaW4gYnVmZmVyX3JlYWQoZmQpOiAlcyIKKyN+IG1zZ3N0ciAiw6ljaGVjIGRhbnMgwqvCoGJ1ZmZlcl9yZWFkKGZkKcKgwrvCoDogJXMiCisKKyN+IG1zZ2lkICJlcnJvciBpbiBidWZmZXJfcmVhZChzdHJlYW0pOiAlcyIKKyN+IG1zZ3N0ciAiw6ljaGVjIGRhbnMgwqvCoGJ1ZmZlcl9yZWFkKHN0cmVhbSnCoMK7wqA6ICVzIgorCisjfiBtc2dpZCAiJXMgcmV0dXJuZWQgZXJyb3IgZXhpdCBzdGF0dXMgJWQiCisjfiBtc2dzdHIgIiVzIGEgcmV0b3VybsOpIHVuZSBlcnJldXIgZGUgc29ydGllIGQnw6l0YXQgJWQiCisKKyN+IG1zZ2lkICIlcyBraWxsZWQgYnkgc2lnbmFsICglcyklcyIKKyN+IG1zZ3N0ciAiJXMgdHXDqSBwYXIgbGUgc2lnbmFsICglcyklcyIKKworI34gbXNnaWQgIiIKKyN+ICJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgdmVyc2lvbiAyIG9yXG4iCisjfiAibGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJDZSBwcm9ncmFtbWUgZXN0IHVuIGxvZ2ljaWVsIGxpYnJlwqA7IHZldWlsbGV6IGNvbnN1bHRlciBsYSDCq8KgR05VIEdlbmVyYWxcbiIKKyN+ICJQdWJsaWMgTGljZW5zZcKgwrsgdmVyc2lvbiAyIG91IHN1cMOpcmlldXJlIHBvdXIgcHJlbmRyZSBjb25uYWlzc2FuY2UgZGVzXG4iCisjfiAiY29uZGl0aW9ucyBkZSByZXByb2R1Y3Rpb24uIEFVQ1VORSBnYXJhbnRpZSBuJ2VzdCBvZmZlcnRlLlxuIgorCisjfiBtc2dpZCAiIgorI34gIlxuIgorI34gIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSB2ZXJzaW9uIDIgb3JcbiIKKyN+ICJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIlxuIgorI34gIkNlIHByb2dyYW1tZSBlc3QgdW4gbG9naWNpZWwgbGlicmXCoDsgdmV1aWxsZXogY29uc3VsdGVyIGxhIMKrwqBHTlUgR2VuZXJhbFxuIgorI34gIlB1YmxpYyAgTGljZW5zZcKgwrsgdmVyc2lvbiAyIG91IHN1cMOpcmlldXJlIHBvdXIgcHJlbmRyZSBjb25uYWlzc2FuY2UgZGVzXG4iCisjfiAiY29uZGl0aW9ucyBkZSByZXByb2R1Y3Rpb24uIEFVQ1VORSBnYXJhbnRpZSBuJ2VzdCBvZmZlcnRlLlxuIgorCisjfiBtc2dpZCAiJXM6IGZhaWxlZCB0byBleGVjICclcyAlcyciCisjfiBtc2dzdHIgIiVzwqA6IMOpY2hlYyBkZSBsJ2V4w6ljdXRpb24gZGUgwqvCoCVzICVzwqDCuyIKKworI34gbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIGVycm9yOiByZWFkOiBgJXMnIgorI34gbXNnc3RyICIlc8KgOiBlcnJldXIgaW50ZXJuZSBkZSBnemlwwqA6IGx1wqA6IMKrwqAlc8KgwrsiCisKKyN+IG1zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCBlcnJvcjogd3JpdGU6IGAlcyciCisjfiBtc2dzdHIgIiVzwqA6IGVycmV1ciBpbnRlcm5lIGRlIGd6aXDCoDogw6ljcml0wqA6IMKrwqAlc8KgwrsiCisKKyN+IG1zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCBlcnJvcjogcmVhZCglaSkgIT0gd3JpdGUoJWkpIgorI34gbXNnc3RyICIlc8KgOiBlcnJldXIgaW50ZXJuZSBkZSBnemlwwqA6IGx1KCVpKcKgIT0gw6ljcml0KCVpKSIKKworI34gbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiBlcnJvcjogcmVhZDogYCVzJyIKKyN+IG1zZ3N0ciAiJXPCoDogZXJyZXVyIGludGVybmUgZGUgYnppcDLCoDogbHXCoDogwqvCoCVzwqDCuyIKKworI34gbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiBlcnJvcjogd3JpdGU6IGAlcyciCisjfiBtc2dzdHIgIiVzwqA6IGVycmV1ciBpbnRlcm5lIGRlIGJ6aXAywqA6IMOpY3JpdMKgOiDCq8KgJXPCoMK7IgorCisjfiBtc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIGVycm9yOiByZWFkKCVpKSAhPSB3cml0ZSglaSkiCisjfiBtc2dzdHIgIiVzwqA6IGVycmV1ciBpbnRlcm5lIGRlIGJ6aXAywqA6IGx1KCVpKcKgIT0gw6ljcml0KCVpKSIKKworI34gbXNnaWQgIkRvbid0IGZvcmdldCB0byBmb3JlZ3JvdW5kIChgZmcnKSB0aGlzIHByb2Nlc3Mgd2hlbiB5b3UncmUgZG9uZSAhXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJOJ291YmxpZXogcGFzIGRlIG1ldHRyZSDDoCBsJ2F2YW50LXBsYW4gKMKrwqBmZ8KgwrspIGNlIHByb2Nlc3N1cyBsb3JzcXVlIHZvdXMgIgorI34gImF1cmV6IGZpbmkuXG4iCisKKyN+IG1zZ2lkICIiCisjfiAiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvclxuIgorI34gImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LlxuIgorI34gIlNlZSAlcyAtLWxpY2Vuc2UgZm9yIGNvcHlyaWdodCBhbmQgbGljZW5zZSBkZXRhaWxzLlxuIgorI34gbXNnc3RyICIiCisjfiAiQ2UgcHJvZ3JhbW1lIGVzdCB1biBsb2dpY2llbCBsaWJyZcKgOyBwcmnDqHJlIGRlIGNvbnN1bHRlciBsYSDCq8KgR05VICIKKyN+ICJHZW5lcmFsXG4iCisjfiAiUHVibGljICBMaWNlbnNlwqDCuyB2ZXJzaW9uIDIgb3Ugc3Vww6lyaWV1cmUgcG91ciBwcmVuZHJlIGNvbm5haXNzYW5jZSBkZXNcbiIKKyN+ICJjb25kaXRpb25zIGRlIHJlcHJvZHVjdGlvbi4gQVVDVU5FIGdhcmFudGllIG4nZXN0IG9mZmVydGUuXG4iCisjfiAiVm9pciDCq8KgJXMgLS1saWNlbnNlwqDCuyBwb3VyIGxlcyBkw6l0YWlscyBkZSBsaWNlbmNlIGV0IGRyb2l0cyBkZSAiCisjfiAicmVwcm9kdWN0aW9uLlxuIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGdldCB1bmlxdWUgZmlsZW5hbWUgZm9yIGNvbnRyb2wgaW5mbyIKKyN+IG1zZ3N0ciAiIgorI34gImltcG9zc2libGUgZCdvYnRlbmlyIHVuIG5vbSBkZSBmaWNoaWVyIHVuaXF1ZSBwb3VyIGxlcyBpbmZvcm1hdGlvbnMgZGUgIgorI34gImNvbnRyw7RsZSIKKworI34gbXNnaWQgIkRlYmlhbiBgJXMnIHBhY2thZ2UgbWFuYWdlbWVudCBwcm9ncmFtIHF1ZXJ5IHRvb2xcbiIKKyN+IG1zZ3N0ciAiIgorI34gIk91dGlsIMKrwqAlc8KgwrsgZCdpbnRlcnJvZ2F0aW9uIGR1IHByb2dyYW1tZSBkZSBnZXN0aW9uIGRlIHBhcXVldHMgRGViaWFuXG4iCisKKyN+IG1zZ2lkICIiCisjfiAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBxdWVyeWluZyBwYWNrYWdlcztcbiIKKyN+ICJVc2UgLS1saWNlbnNlIGZvciBjb3B5cmlnaHQgbGljZW5zZSBhbmQgbGFjayBvZiB3YXJyYW50eSAoR05VIEdQTCkuIgorI34gbXNnc3RyICIiCisjfiAiVXRpbGlzZXogLS1oZWxwIHBvdXIgc2F2b2lyIGNvbW1lbnQgZWZmZWN0dWVyIHVuZSByZXF1w6p0ZSBzdXIgbGVzICIKKyN+ICJwYXF1ZXRzwqA7XG4iCisjfiAiVXRpbGlzZXogLS1saWNlbmNlIHBvdXIgbGUgY29weXJpZ2h0LCBldCBsJ2Fic2VuY2UgZGUgZ2FyYW50aWUgKEdOVSBHUEwpLiIKKworI34gbXNnaWQgImZhaWxlZCB0byBjaG93biAlczogJXMiCisjfiBtc2dzdHIgIsOpY2hlYyBkZSBjaG93biBzdXIgJXPCoDogJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gY2htb2QgJXM6ICVzIgorI34gbXNnc3RyICLDqWNoZWMgZGUgY2htb2Qgc3VyICVzwqA6ICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGZvcmsgZm9yIGNsZWFudXAiCisjfiBtc2dzdHIgIsOpY2hlYyBkZSDCq8KgZm9ya8KgwrsgcG91ciBuZXR0b3lhZ2UiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gd2FpdCBmb3Igcm0gY2xlYW51cCIKKyN+IG1zZ3N0ciAiw6ljaGVjIGRlIMKrwqB3YWl0wqDCuyBwb3VyIG5ldHRveWFnZSBwYXIgwqvCoHJtwqDCuyIKKworI34gbXNnaWQgInJtIGNsZWFudXAgZmFpbGVkLCBjb2RlICVkXG4iCisjfiBtc2dzdHIgImltcG9zc2libGUgZGUgbmV0dG95ZXIgcGFyIHJtLCBjb2RlICVkXG4iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBybSAtcmYiCisjfiBtc2dzdHIgImltcG9zc2libGUgZCdleMOpY3V0ZXIgcm0gLXJmIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHJlYWQgYGNvbnRyb2wnIChpbiBgJS4yNTVzJykiCisjfiBtc2dzdHIgImltcG9zc2libGUgZGUgbGlyZSDCq8KgY29udHJvbMKgwrsgKGRhbnMgwqvCoCUuMjU1c8KgwrspIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHNlZWsgYmFjayIKKyN+IG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSByZXZlbmlyIGVuIGFycmnDqHJlIgorCisjfiBtc2dpZCAidW5rbm93biBkYXRhIHR5cGUgYCVpJyBpbiBidWZmZXJfd3JpdGVcbiIKKyN+IG1zZ3N0ciAiVHlwZSBkZSBkb25uw6llIMKrwqAlacKgwrsgaW5jb25udSBkYW5zIMKrwqBidWZmZXJfd3JpdGXCoMK7XG4iCisKKyN+IG1zZ2lkICJ1bmtub3duIGRhdGEgdHlwZSBgJWknIGluIGJ1ZmZlcl9yZWFkXG4iCisjfiBtc2dzdHIgIlR5cGUgZGUgZG9ubsOpZXMgwqvCoCVpwqDCuyBpbmNvbm51IGRhbnMgYnVmZmVyX3JlYWRcbiIKKworI34gbXNnaWQgIndhaXQgZm9yIHNoZWxsIGZhaWxlZCIKKyN+IG1zZ3N0ciAibCdhdHRlbnRlIGRlIGwnaW50ZXJwcsOpdGV1ciBkZSBjb21tYW5kZXMgYSDDqWNob3XDqSIKKworI34gbXNnaWQgInJlYWQgZXJyb3IgaW4gZGl2ZXJzaW9ucyBbaV0iCisjfiBtc2dzdHIgImVycmV1ciBkZSBsZWN0dXJlIGRhbnMgbGVzIGTDqXRvdXJuZW1lbnRzIFtpXSIKKworI34gbXNnaWQgInVubGluayIKKyN+IG1zZ3N0ciAiZGUgZMOpbGllciIKKworI34gbXNnaWQgImNobW9kIgorI34gbXNnc3RyICJkZSBtb2RpZmllciBsZXMgcGVybWlzc2lvbnMgZGUiCisKKyN+IG1zZ2lkICJkZWxldGUiCisjfiBtc2dzdHIgImQnZWZmYWNlciIKKworI34gbXNnaWQgImZhaWxlZCB0byAlcyAnJS4yNTVzJyIKKyN+IG1zZ3N0ciAiw6ljaGVjIGRlICVzIMKrwqAlLjI1NXPCoMK7IgorCisjfiBtc2dpZCAid2FpdCBmb3IgZHBrZy1zcGxpdCBmYWlsZWQiCisjfiBtc2dzdHIgImwnYXR0ZW50ZSBkZSBkcGtnLXNwbGl0IGEgw6ljaG91w6kiCisKKyN+IG1zZ2lkICJjYW5ub3QgcmVtb3ZlIGZpbGUgYCUuMjUwcyciCisjfiBtc2dzdHIgIm5lIHBldXQgcGFzIHN1cHByaW1lciBsZSBmaWNoaWVyIMKrwqAlLjI1MHPCoMK7IgorCisjfiBtc2dpZCAiIgorI34gIlxuIgorI34gIkNvcHlyaWdodCAoQykgMjAwMCBXaWNoZXJ0IEFra2VybWFuLiIKKyN+IG1zZ3N0ciAiIgorI34gIlxuIgorI34gIkNvcHlyaWdodCAoQykgMjAwMCBXaWNoZXJ0IEFra2VybWFuLiIKKworI34gbXNnaWQgIm5vIG1vZGUgc3BlY2lmaWVkIgorI34gbXNnc3RyICJwYXMgZGUgbW9kZSBzcMOpY2lmacOpIgorCisjfiBtc2dpZCAiaWxsZWdhbCB1c2VyICVzIgorI34gbXNnc3RyICJ1dGlsaXNhdGV1ciAlcyBpbGzDqWdhbCIKKworI34gbXNnaWQgIm5vbi1leGlzdGluZyB1c2VyICVzIgorI34gbXNnc3RyICJ1dGlsaXNhdGV1ciAlcyBub24gZXhpc3RhbnQiCisKKyN+IG1zZ2lkICJpbGxlZ2FsIGdyb3VwICVzIgorI34gbXNnc3RyICJncm91cGUgJXMgaWxsw6lnYWwiCisKKyN+IG1zZ2lkICJub24tZXhpc3RpbmcgZ3JvdXAgJXMiCisjfiBtc2dzdHIgImdyb3VwZSAlcyBub24gZXhpc3RhbnQiCisKKyN+IG1zZ2lkICJpbGxlZ2FsIG1vZGUgJXMiCisjfiBtc2dzdHIgIm1vZGUgJXMgaWxsw6lnYWwiCisKKyN+IG1zZ2lkICJhYm9ydGluZyIKKyN+IG1zZ3N0ciAiYWJhbmRvbiIKKworI34gbXNnaWQgImNhbm5vdCBvcGVuIHN0YXRvdmVycmlkZTogJXMiCisjfiBtc2dzdHIgImltcG9zc2libGUgZCdvdXZyaXIgbGUgZmljaGllciBkZXMgcGVybWlzc2lvbnMgKHN0YXRvdmVycmlkZSnCoDogJXMiCisKKyN+IG1zZ2lkICJNdWx0aXBsZSBvdmVycmlkZXMgZm9yIFwiJXNcIiwgYWJvcnRpbmciCisjfiBtc2dzdHIgIkZvcsOnYWdlIG11bHRpcGxlcyBwb3VyIMKrwqAlc8KgwrssIGFiYW5kb24iCisKKyN+IG1zZ2lkICJmYWlsZWQgd3JpdGUgZHVyaW5nIGhhc2hyZXBvcnQiCisjfiBtc2dzdHIgIsOpY2hlYyBkZSBsJ8OpY3JpdHVyZSBkdXJhbnQgwqvCoGhhc2hyZXBvcnTCoMK7IgorCisjfiBtc2dpZCAiY29uZmlndXJhdGlvbiBlcnJvcjogdW5rbm93biBvcHRpb24gJXMiCisjfiBtc2dzdHIgImVycmV1ciBkZSBjb25maWd1cmF0aW9uwqA6ICVzIGVzdCB1bmUgb3B0aW9uIGluY29ubnVlIgorCisjfiBtc2dpZCAiY29uZmlndXJhdGlvbiBlcnJvcjogJXMgZG9lcyBub3QgdGFrZSBhIHZhbHVlIgorI34gbXNnc3RyICJlcnJldXIgZGUgY29uZmlndXJhdGlvbsKgOiAlcyBuZSBwcmVuZCBwYXMgZGUgdmFsZXVyIgorCisjfiBtc2dpZCAidW5leGVjcHRlZCBlbmQgb2YgbGluZSBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKKyN+IG1zZ3N0ciAiIgorI34gImZpbiBkZSBsaWduZSBpbmF0dGVuZHVlIGRhbnMgbGUgZmljaGllciBkZXMgcGVybWlzc2lvbnMgKMKrwqBzdGF0b3ZlcnJpZGXCoMK7KSIKKworI34gbXNnaWQgIi0tY2hlY2stc3VwcG9ydGVkIHRha2VzIG5vIGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiwqvCoC0tY2hlY2stc3VwcG9ydGVkwqDCuyBuZSBwcmVuZCBwYXMgZGUgcGFyYW3DqHRyZSIKKworI34gbXNnaWQgIi0tZm9yZ2V0LW9sZC11bmF2YWlsIHRha2VzIG5vIGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiLS1mb3JnZXQtb2xkLXVuYXZhaWwgbmUgcHJlbmQgcGFzIGRlIHBhcmFtw6h0cmVzIgorCisjfiBtc2dpZCAiIgorI34gIlxuIgorI34gIkNvcHlyaWdodCAoQykgMTk5NCwxOTk1IElhbiBKYWNrc29uLiIKKyN+IG1zZ3N0ciAiIgorI34gIlxuIgorI34gIkNvcHlyaWdodCAoQykgMTk5NCwgMTk5NSBJYW4gSmFja3Nvbi4iCisKKyN+IG1zZ2lkICIiCisjfiAiVXNhZ2U6ICVzIFs8b3B0aW9ucz4gLi4uXSBbLS1dIDxmaWxlbmFtZT5cbiIKKyN+ICJcbiIKKyN+ICJPcHRpb25zOlxuIgorI34gIiAgLS1zZWN0aW9uIDxyZWdleHA+IDx0aXRsZT5cbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICBwdXQgdGhlIG5ldyBlbnRyeSBpbiB0aGUgPHJlZ2V4PiBtYXRjaGVkICIKKyN+ICJzZWN0aW9uXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgb3IgY3JlYXRlIGEgbmV3IG9uZSB3aXRoIDx0aXRsZT4gaWYgbm9uLSIKKyN+ICJleGlzdGVudC5cbiIKKyN+ICIgIC0tbWVudWVudHJ5PTx0ZXh0PiAgICAgICBzZXQgdGhlIG1lbnUgZW50cnkuXG4iCisjfiAiICAtLWRlc2NyaXB0aW9uPTx0ZXh0PiAgICAgc2V0IHRoZSBkZXNjcmlwdGlvbiB0byBiZSB1c2VkIGluIHRoZSBtZW51ICIKKyN+ICJlbnRyeS5cbiIKKyN+ICIgIC0taW5mby1maWxlPTxwYXRoPiAgICAgICBzcGVjaWZ5IGluZm8gZmlsZSB0byBpbnN0YWxsIGluIHRoZSAiCisjfiAiZGlyZWN0b3J5LlxuIgorI34gIiAgLS1kaXItZmlsZT08cGF0aD4gICAgICAgIHNwZWNpZnkgZmlsZSBuYW1lIG9mIGluZm8gZGlyZWN0b3J5IGZpbGUuXG4iCisjfiAiICAtLWluZm9kaXI9PGRpcmVjdG9yeT4gICAgc2FtZSBhcyAnLS1kaXItZmlsZT08ZGlyZWN0b3J5Pi9kaXInLlxuIgorI34gIiAgLS1pbmZvLWRpcj08ZGlyZWN0b3J5PiAgIGxpa2V3aXNlLlxuIgorI34gIiAgLS1rZWVwLW9sZCAgICAgICAgICAgICAgIGRvIG5vdCByZXBsYWNlIGVudHJpZXMgbm9yIHJlbW92ZSBlbXB0eSBvbmVzLlxuIgorI34gIiAgLS1yZW1vdmUgICAgICAgICAgICAgICAgIHJlbW92ZSB0aGUgZW50cnkgc3BlY2lmaWVkIGJ5IDxmaWxlbmFtZT4gIgorI34gImJhc2VuYW1lLlxuIgorI34gIiAgLS1yZW1vdmUtZXhhY3RseSAgICAgICAgIHJlbW92ZSB0aGUgZXhhY3QgPGZpbGVuYW1lPiBlbnRyeS5cbiIKKyN+ICIgIC0tdGVzdCAgICAgICAgICAgICAgICAgICBlbmFibGVzIHRlc3QgbW9kZSAobm8gYWN0aW9ucyB0YWtlbikuXG4iCisjfiAiICAtLWRlYnVnICAgICAgICAgICAgICAgICAgZW5hYmxlcyBkZWJ1ZyBtb2RlIChzaG93IG1vcmUgaW5mb3JtYXRpb24pLlxuIgorI34gIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIGRvIG5vdCBzaG93IG91dHB1dCBtZXNzYWdlcy5cbiIKKyN+ICIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorI34gIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJTeW50YXhlwqA6ICVzIFs8b3B0aW9ucz4gLi4uXSBbLS1dIDxub20tZmljaGllcj5cbiIKKyN+ICJcbiIKKyN+ICJPcHRpb25zwqA6XG4iCisjfiAiICAtLXNlY3Rpb24gPGV4cC1yYXRpb25uZWxsZT4gPHRpdHJlPlxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlciBsYSBub3V2ZWxsZSBlbnRyw6llIGRhbnMgbGEgc2VjdGlvbiAiCisjfiAiY29ycmVzcG9uZGFudGVcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZXhwLXJhdGlvbm5lbGxlPiBvdSBlbiBjcsOpZXIgdW5lIG5vdXZlbGxlICIKKyN+ICJhdmVjIDx0aXRyZT5cbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICBzaSBub24gZXhpc3RhbnRlLlxuIgorI34gIiAgLS1tZW51ZW50cnk9PHRleHRlPiAgICAgIGTDqWZpbmlyIGwnZW50csOpZSBkZSBtZW51LlxuIgorI34gIiAgLS1kZXNjcmlwdGlvbj08dGV4dGU+ICAgIGTDqWZpbmlyIGxhIGRlc2NyaXB0aW9uIMOgIHV0aWxpc2VyIGRhbnMgIgorI34gImwnZW50csOpZSBkZSBtZW51LlxuIgorI34gIiAgLS1pbmZvLWZpbGU9PGNoZW1pbj4gICAgIHNww6ljaWZpZXIgbGUgZmljaGllciBpbmZvIMOgIGluc3RhbGxlciBkYW5zIGxlICIKKyN+ICJyw6lwZXJ0b2lyZS5cbiIKKyN+ICIgIC0tZGlyLWZpbGU9PGNoZW1pbj4gICAgICBzcMOpY2lmaWVyIGxlIG5vbSBkZSByw6lwZXJ0b2lyZSBpbmZvLlxuIgorI34gIiAgLS1pbmZvZGlyPTxyw6lwZXJ0b2lyZT4gICBpZGVudGlxdWUgw6AgwqvCoC0tZGlyLWZpbGU9PHLDqXBlcnRvaXJlPi9kaXLCoMK7LlxuIgorI34gIiAgLS1pbmZvLWRpcj08csOpcGVydG9pcmU+ICBpZGVudGlxdWUuXG4iCisjfiAiICAtLWtlZXAtb2xkICAgICAgICAgICAgICAgbmUgcGFzIHJlbXBsYWNlciBkJ2VudHLDqWVzLCBuaSBzdXBwcmltZXIgZGVzICIKKyN+ICJlbnRyw6llcyB2aWRlcy5cbiIKKyN+ICIgIC0tcmVtb3ZlICAgICAgICAgICAgICAgICBzdXBwcmltZXIgbCdlbnRyw6llIHNww6ljaWZpw6llIHBhciBsZSBub20gZGUgIgorI34gImJhc2UgPG5vbS1maWNoaWVyPi5cbiIKKyN+ICIgIC0tcmVtb3ZlLWV4YWN0bHkgICAgICAgICBzdXBwcmltZXIgbCdlbnRyw6llIGV4YWN0ZSA8bm9tLWZpY2hpZXI+LlxuIgorI34gIiAgLS10ZXN0ICAgICAgICAgICAgICAgICAgIGFjdGl2ZXIgbGUgbW9kZSBkZSB0ZXN0IChhdWN1bmUgYWN0aW9uICIKKyN+ICJlZmZlY3R1w6llKS5cbiIKKyN+ICIgIC0tZGVidWcgICAgICAgICAgICAgICAgICBhY3RpdmVyIGxlIG1vZGUgZGUgZMOpYm9nYWdlIChhZmZpY2hlciBwbHVzICIKKyN+ICJkJ2luZm9ybWF0aW9ucykuXG4iCisjfiAiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgbmUgcGFzIGFmZmljaGVyIGxlcyBtZXNzYWdlcyBkJ2FmZmljaGFnZS5cbiIKKyN+ICIgIC0taGVscCAgICAgICAgICAgICAgICAgICBhZmZpY2hlciBjZSBtZXNzYWdlIGQnYWlkZS5cbiIKKyN+ICIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBhZmZpY2hlciBsYSB2ZXJzaW9uLlxuIgorCisjfiBtc2dpZCAiY291bGQgbm90IG9wZW4gc3RkZXJyIGZvciBvdXRwdXQhICVzIgorI34gbXNnc3RyICJpbXBvc3NpYmxlIGQnb3V2cmlyIHN0ZGVycsKgISAlcyIKKworI34gbXNnaWQgIiVzOiAtLXNlY3Rpb24gbmVlZHMgdHdvIG1vcmUgYXJncyIKKyN+IG1zZ3N0ciAiJXPCoDogLS1zZWN0aW9uIGEgYmVzb2luIGRlIGRldXggcGFyYW3DqHRyZXMgc3VwcGzDqW1lbnRhaXJlcyIKKworI34gbXNnaWQgIiVzOiBvcHRpb24gLS0lcyBpcyBkZXByZWNhdGVkIChpZ25vcmVkKSIKKyN+IG1zZ3N0ciAiJXPCoDogbCdvcHRpb24gLS0lcyBlc3Qgb2Jzb2zDqHRlIChpZ25vcsOpKSIKKworI34gbXNnaWQgIiVzOiB1bmtub3duIG9wdGlvbiBgJXMnIgorI34gbXNnc3RyICIlc8KgOiBvcHRpb24gwqvCoCVzwqDCuyBpbmNvbm51ZSIKKworI34gbXNnaWQgIiVzOiB0b28gbWFueSBhcmd1bWVudHMiCisjfiBtc2dzdHIgIiVzwqA6IHRyb3AgZGUgcGFyYW3DqHRyZXMiCisKKyN+IG1zZ2lkICIlczogLS1zZWN0aW9uIGlnbm9yZWQgd2l0aCAtLXJlbW92ZSIKKyN+IG1zZ3N0ciAiJXPCoDogLS1zZWN0aW9uIGlnbm9yw6kgYXZlYyAtLXJlbW92ZSIKKworI34gbXNnaWQgIiVzOiAtLWRlc2NyaXB0aW9uIGlnbm9yZWQgd2l0aCAtLXJlbW92ZSIKKyN+IG1zZ3N0ciAiJXM6IC0tZGVzY3JpcHRpb24gaWdub3LDqSBhdmVjIC0tcmVtb3ZlIgorCisjfiBtc2dpZCAiJXM6IHRlc3QgbW9kZSAtIGRpciBmaWxlIHdpbGwgbm90IGJlIHVwZGF0ZWQiCisjfiBtc2dzdHIgIiVzwqA6IG1vZGUgZGUgdGVzdCAtIGxlIGZpY2hpZXIgZGlyIG5lIHNlcmEgcGFzIG1pcyDDoCBqb3VyIgorCisjfiBtc2dpZCAiJXM6IHdhcm5pbmcsIGlnbm9yaW5nIGNvbmZ1c2luZyBJTkZPLURJUi1FTlRSWSBpbiBmaWxlLiIKKyN+IG1zZ3N0ciAiIgorI34gIiVzwqA6IGF2ZXJ0aXNzZW1lbnQsIElORk8tRElSLUVOVFJZIGTDqXJvdXRhbnRlIGlnbm9yw6llIGRhbnMgbGUgZmljaGllci4iCisKKyN+IG1zZ2lkICJpbnZhbGlkIGluZm8gZW50cnkiCisjfiBtc2dzdHIgIiVzwqA6IGVudHLDqWUgaW5mbyBpbnZhbGlkZSIKKworI34gbXNnaWQgIiIKKyN+ICJcbiIKKyN+ICJObyBgU1RBUlQtSU5GTy1ESVItRU5UUlknIGFuZCBubyBgVGhpcyBmaWxlIGRvY3VtZW50cycuXG4iCisjfiAiJXM6IHVuYWJsZSB0byBkZXRlcm1pbmUgZGVzY3JpcHRpb24gZm9yIGBkaXInIGVudHJ5IC0gZ2l2aW5nIHVwXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJcbiIKKyN+ICJQYXMgZGUgwqvCoFNUQVJULUlORk8tRElSLUVOVFJZwqDCuyBldCBwYXMgZGUgwqvCoFRoaXMgZmlsZSBkb2N1bWVudHPCoMK7LlxuIgorI34gIiVzwqA6IGltcG9zc2libGUgZGUgZMOpdGVybWluZXIgbGEgZGVzY3JpcHRpb24gcG91ciBsJ2VudHLDqWUgwqvCoGRpcsKgwrsgLSAiCisjfiAiYWJhbmRvblxuIgorCisjfiBtc2dpZCAiJXM6IG5vIGZpbGUgJXMsIHJldHJpZXZpbmcgYmFja3VwIGZpbGUgJXMuIgorI34gbXNnc3RyICIlc8KgOiBwYXMgZGUgZmljaGllciAlcywgcsOpY3Vww6lyYXRpb24gZHUgZmljaGllciBkZSBzYXV2ZWdhcmRlICVzLiIKKworI34gbXNnaWQgIiVzOiBjb3B5aW5nICVzIHRvICVzIGZhaWxlZCwgZ2l2aW5nIHVwOiAlcyIKKyN+IG1zZ3N0ciAiJXPCoDogw6ljaGVjIGRlIGxhIGNvcGllIGRlICVzIHZlcnMgJXMsIGFiYW5kb27CoDogJXMiCisKKyN+IG1zZ2lkICIlczogbm8gYmFja3VwIGZpbGUgJXMgYXZhaWxhYmxlLCByZXRyaWV2aW5nIGRlZmF1bHQgZmlsZS4iCisjfiBtc2dzdHIgIiIKKyN+ICIlc8KgOiBwYXMgZGUgZmljaGllciBkZSBzYXV2ZWdhcmRlICVzIGRpc3BvbmlibGUsIHLDqWN1cMOpcmF0aW9uIGR1IGZpY2hpZXIgIgorI34gInBhciBkw6lmYXV0LiIKKworI34gbXNnaWQgIiVzOiBubyBiYWNrdXAgZmlsZSAlcyBhdmFpbGFibGUuIgorI34gbXNnc3RyICIlc8KgOiBwYXMgZGUgZmljaGllciBkZSBzYXV2ZWdhcmRlICVzIGRpc3BvbmlibGUuIgorCisjfiBtc2dpZCAiJXM6IG5vIGRlZmF1bHQgZmlsZSAlcyBhdmFpbGFibGUsIGdpdmluZyB1cC4iCisjfiBtc2dzdHIgIiVzwqA6IHBhcyBkZSBmaWNoaWVyIHBhciBkw6lmYXV0ICVzIGRpc3BvbmlibGUsIGFiYW5kb24uIgorCisjfiBtc2dpZCAiJXM6IGZhaWxlZCB0byBsb2NrIGRpciBmb3IgZWRpdGluZyEgJXMiCisjfiBtc2dzdHIgIiVzwqA6IMOpY2hlYyBkdSB2ZXJyb3VpbGxhZ2UgZGUgZGlyIHBvdXIgbCfDqWRpdGlvbi4gJXMiCisKKyN+IG1zZ2lkICJ0cnkgZGVsZXRpbmcgJXM/IgorI34gbXNnc3RyICJlc3NhaSBkZSBzdXBwcmVzc2lvbiBkZSAlc8KgPyIKKworI34gbXNnaWQgInVuYWJsZSB0byBvcGVuICVzOiAlcyIKKyN+IG1zZ3N0ciAiaW1wb3NzaWJsZSBkJ291dnJpciAlc8KgOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byBjbG9zZSAlcyBhZnRlciByZWFkOiAlcyIKKyN+IG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSBmZXJtZXIgJXMgYXByw6hzIGxlY3R1cmXCoDogJXMiCisKKyN+IG1zZ2lkICIlczogZXhpc3RpbmcgZW50cnkgZm9yIGAlcycgbm90IHJlcGxhY2VkIgorI34gbXNnc3RyICIlc8KgOiBlbnRyw6llIGV4aXN0YW50ZSBwb3VyIMKrwqAlc8Kgwrsgbm9uIHJlbXBsYWPDqWUiCisKKyN+IG1zZ2lkICIlczogcmVwbGFjaW5nIGV4aXN0aW5nIGRpciBlbnRyeSBmb3IgYCVzJyIKKyN+IG1zZ3N0ciAiJXPCoDogcmVtcGxhY2VtZW50IGRlIGwnZW50csOpZSBkaXIgZXhpc3RhbnRlIHBvdXIgwqvCoCVzwqDCuyIKKworI34gbXNnaWQgIiVzOiBjcmVhdGluZyBuZXcgc2VjdGlvbiBgJXMnIgorI34gbXNnc3RyICIlc8KgOiBjcsOpYXRpb24gZGUgbGEgbm91dmVsbGUgc2VjdGlvbiDCq8KgJXPCoMK7IgorCisjfiBtc2dpZCAiJXM6IG5vIHNlY3Rpb25zIHlldCwgY3JlYXRpbmcgTWlzY2VsbGFuZW91cyBzZWN0aW9uIHRvby4iCisjfiBtc2dzdHIgIiVzwqA6IGF1Y3VuZSBzZWN0aW9uLCBjcsOpYXRpb24gZGUgbGEgc2VjdGlvbiBNaXNjZWxsYW5lb3VzLiIKKworI34gbXNnaWQgIiVzOiBubyBzZWN0aW9uIHNwZWNpZmllZCBmb3IgbmV3IGVudHJ5LCBwbGFjaW5nIGF0IGVuZCIKKyN+IG1zZ3N0ciAiIgorI34gIiVzwqA6IHBhcyBkZSBzZWN0aW9uIHNww6ljaWZpw6llIHBvdXIgbGEgbm91dmVsbGUgZW50csOpZSwgcGxhY2VtZW50IMOgIGxhIGZpbiIKKworI34gbXNnaWQgIiVzOiBkZWxldGluZyBlbnRyeSBgJXMgLi4uJyIKKyN+IG1zZ3N0ciAiJXPCoDogc3VwcHJlc3Npb24gZGUgbCdlbnRyw6llIMKrwqAlcy4uLsK7wqAiCisKKyN+IG1zZ2lkICIlczogZW1wdHkgc2VjdGlvbiBgJXMnIG5vdCByZW1vdmVkIgorI34gbXNnc3RyICIlc8KgOiBzZWN0aW9uIHZpZGUgwqvCoCVzwqDCuyBub24gc3VwcHJpbcOpZSIKKworI34gbXNnaWQgIiVzOiBkZWxldGluZyBlbXB0eSBzZWN0aW9uIGAlcyciCisjfiBtc2dzdHIgIiVzwqA6IHN1cHByZXNzaW9uIGRlIGxhIHNlY3Rpb24gdmlkZSDCq8KgJXPCoMK7IgorCisjfiBtc2dpZCAiJXM6IG5vIGVudHJ5IGZvciBmaWxlIGAlcycgYW5kIG1lbnUgZW50cnkgYCVzJyIKKyN+IG1zZ3N0ciAiJXPCoDogcGFzIGQnZW50csOpZSBwb3VyIGxlIGZpY2hpZXIgwqvCoCVzwqDCuyBldCBlbnRyw6llIGRlIG1lbnUgwqvCoCVzwqDCuyIKKworI34gbXNnaWQgIiVzOiBubyBlbnRyeSBmb3IgZmlsZSBgJXMnIgorI34gbXNnc3RyICIlc8KgOiBwYXMgZCdlbnRyw6llIHBvdXIgbGUgZmljaGllciDCq8KgJXPCoMK7IgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGJhY2t1cCBvbGQgJXMsIGdpdmluZyB1cDogJXMiCisjfiBtc2dzdHIgImltcG9zc2libGUgZGUgc2F1dmVnYXJkZXIgbCdhbmNpZW4gJXMsIGFiYW5kb27CoDogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgJXM6ICVzIgorI34gbXNnc3RyICJpbXBvc3NpYmxlIGQnaW5zdGFsbGVyIGxlIG5vdXZlYXUgJXPCoDogJXMiCisKKyN+IG1zZ2lkICIlczogY291bGQgbm90IGJhY2t1cCAlcyBpbiAlczogJXMiCisjfiBtc2dzdHIgIiVzwqA6IGltcG9zc2libGUgZGUgc2F1dmVnYXJkZXIgJXMgZGFucyAlc8KgOiAlcyIKKworI34gbXNnaWQgIiVzOiB3YXJuaW5nIC0gdW5hYmxlIHRvIHVubG9jayAlczogJXMiCisjfiBtc2dzdHIgIiVzwqA6IGF2ZXJ0aXNzZW1lbnQgLSBpbXBvc3NpYmxlIGRlIGTDqXZlcnJvdWlsbGVyICVzwqA6ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHJlYWQgJXM6ICVkIgorI34gbXNnc3RyICJpbXBvc3NpYmxlIGRlIGxpcmUgJXPCoDogJWQiCisKKyN+IG1zZ2lkICJkYmc6ICVzIgorI34gbXNnc3RyICJkYmfCoDogJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gb3BlbiB0bXBmaWxlIChjb250cm9sKSwgJXMiCisjfiBtc2dzdHIgImwnb3V2ZXJ0dXJlIGQndW4gZmljaGllciB0ZW1wb3JhaXJlICjCq8KgY29udHJvbMKgwrspICVzIGEgw6ljaG91w6kiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gb3BlbiB0bXBmaWxlIChkYXRhKSwgJXMiCisjfiBtc2dzdHIgImwnb3V2ZXJ0dXJlIGQndW4gZmljaGllciB0ZW1wb3JhaXJlICjCq8KgZGF0YcKgwrspLCAlcyBhIMOpY2hvdcOpIgorCisjfiBtc2dpZCAiaW52YWxpZCBudW1iZXIgZm9yIC0tY29tbWFuZC1mZCIKKyN+IG1zZ3N0ciAibm9tYnJlIGludmFsaWRlIHBvdXIgLS1jb21tYW5kLWZkIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHJld2luZCBhdCBzdGFydCBvZiB2c25wcmludGYiCisjfiBtc2dzdHIgImltcG9zc2libGUgZGUgcmV2ZW5pciBhdSBkw6lidXQgZGUgwqvCoHZzbnByaW50ZsKgwrsiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gdHJ1bmNhdGUgaW4gdnNucHJpbnRmIgorI34gbXNnc3RyICJ0cm9uY2F0aW9uIGltcG9zc2libGUgZGFucyDCq8KgdnNucHJpbnRmwqDCuyIKKworI34gbXNnaWQgIndyaXRlIGVycm9yIGluIHZzbnByaW50ZiIKKyN+IG1zZ3N0ciAiZXJyZXVyIGQnw6ljcml0dXJlIGRhbnMgwqvCoHZzbnByaW50ZsKgwrsiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gc3RhdCBpbiB2c25wcmludGYiCisjfiBtc2dzdHIgImFuYWx5c2UgaW1wb3NzaWJsZSBkYW5zIMKrwqB2c25wcmludGbCoMK7IgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHJld2luZCBpbiB2c25wcmludGYiCisjfiBtc2dzdHIgInJldG91ciBhdSBkw6lidXQgaW1wb3NzaWJsZSBkYW5zIMKrwqB2c25wcmludGbCoMK7IgorCisjIEMnZXN0IHBhcyB0cm9uY2F0aW9uLiBNYWlzIGMnZXN0IHF1b2kgPworIyBsYSB0cm9uY2F0dXJlIDogw6l0YXQgZGUgY2UgcXVpIGVzdCB0cm9ucXXDqSA7IGRvbmMgdnNucHJpbnRmIHRydW5jYXRlZAorIyBjJ2VzdCB1bmUgdHJvbmNhdHVyZSBkdWUgw6Agdm5zcHJpbnRmLiBub24gPworI34gbXNnaWQgInJlYWQgZXJyb3IgaW4gdnNucHJpbnRmIHRydW5jYXRlZCIKKyN+IG1zZ3N0ciAiZXJyZXVyIGRlIGxlY3R1cmUgZGFucyB1bmUgdHJvbmNhdHVyZSBmYWl0ZSBwYXIgdnNucHJpbnRmIgorCisjfiBtc2dpZCAiU3lzdGVtIGVycm9yIG5vLiVkIgorI34gbXNnc3RyICJFcnJldXIgc3lzdMOobWUgbsKwICVkIgorCisjfiBtc2dpZCAiU2lnbmFsIG5vLiVkIgorI34gbXNnc3RyICJTaWduYWwgbsKwwqAlZCIKKworI34gbXNnaWQgImRwa2c6IHdhcm5pbmcgLSAlcyByZXR1cm5lZCBlcnJvciBleGl0IHN0YXR1cyAlZFxuIgorI34gbXNnc3RyICIiCisjfiAiZHBrZ8KgOiBhdmVydGlzc2VtZW50IC0gJXMgYSByZXRvdXJuw6kgdW4gY29kZSBkJ2VycmV1ciBkZSBzb3J0aWUgJWRcbiIKKworI34gbXNnaWQgImRwa2c6IHdhcm5pbmcgLSAlcyBraWxsZWQgYnkgc2lnbmFsICglcyklc1xuIgorI34gbXNnc3RyICJkcGtnwqA6IGF2ZXJ0aXNzZW1lbnQgLSAlcyBhIMOpdMOpIHR1w6kgcGFyIGxlIHNpZ25hbCAoJXMpJXNcbiIKKworI34gbXNnaWQgImZhaWxlZCB0byByZWFkIGAlcycgYXQgbGluZSAlZCIKKyN+IG1zZ3N0ciAiw6ljaGVjIGRlIGxhIGxlY3R1cmUgZGUgwqvCoCVzwqDCuyDDoCBsYSBsaWduZSAlZCIKKworI34gbXNnaWQgInBhcnNlIGVycm9yLCBpbiBmaWxlIGAlLjI1NXMnIG5lYXIgbGluZSAlZCIKKyN+IG1zZ3N0ciAiIgorI34gImVycmV1ciBkJ2FuYWx5c2Ugc3ludGF4aXF1ZSwgZGFucyBsZSBmaWNoaWVyIMKrwqAlLjI1NXPCoMK7IHByw6hzIGRlIGxhIGxpZ25lICIKKyN+ICIlZCIKKworI34gbXNnaWQgIiBwYWNrYWdlIGAlLjI1NXMnIgorI34gbXNnc3RyICIgcGFxdWV0IMKrwqAlLjI1NXPCoMK7IgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHJlYWxsb2MgZm9yIHZhcmlhYmxlIGJ1ZmZlciIKKyN+IG1zZ3N0ciAiw6ljaGVjIGRlIHLDqWFsbG9jYXRpb24gZGUgbGEgbcOpbW9pcmUgdGFtcG9uIGRlIHZhcmlhYmxlIgorCisjfiBtc2dpZCAicHJvY2Vzc19hcmNoaXZlIC4uLiAgYWxyZWFkeSBkaXNhcHBlYXJlZCAhIgorI34gbXNnc3RyICJwcm9jZXNzX2FyY2hpdmUgLi4uIGEgZMOpasOgIGRpc3BhcnUuIgorCisjfiBtc2dpZCAiZ29iYmxlIHJlcGxhY2VkIGZpbGUgYCUuMjU1cyciCisjfiBtc2dzdHIgIsOpY3Jhc2VtZW50IGR1IGZpY2hpZXIgcmVtcGxhY8OpIMKrwqAlLjI1NXPCoMK7IgorCisjfiBtc2dpZCAiZHBrZzogJXM6IHdhcm5pbmcgLSBmYWlsZWQgdG8gcmVtb3ZlIGAlLjI1MHMnOiAlc1xuIgorI34gbXNnc3RyICIiCisjfiAiZHBrZ8KgOiAlc8KgOiBhdmVydGlzc2VtZW50IC0gw6ljaGVjIGRlIGxhIHN1cHByZXNzaW9uIGRlIMKrwqAlLjI1MHPCoMK7wqA6ICVzXG4iCisKKyN+IG1zZ2lkICItLWF1ZGl0IGRvZXMgbm90IHRha2UgYW55IGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiLS1hdWRpdCBuZSBwcmVuZCBhdWN1biBwYXJhbcOodHJlIgorCisjfiBtc2dpZCAiLS15ZXQtdG8tdW5wYWNrIGRvZXMgbm90IHRha2UgYW55IGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiLS15ZXQtdG8tdW5wYWNrIG5lIHByZW5kIGF1Y3VuIHBhcmFtw6h0cmUiCisKKyN+IG1zZ2lkICItLWFzc2VydC0qIGRvZXMgbm90IHRha2UgYW55IGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiLS1hc3NlcnQtKiBuZSBwcmVuZCBhdWN1biBwYXJhbcOodHJlIgorCisjfiBtc2dpZCAiLS1wcmVkZXAtcGFja2FnZSBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudCIKKyN+IG1zZ3N0ciAiLS1wcmVkZXAtcGFja2FnZSBuZSBwcmVuZCBhdWN1biBwYXJhbcOodHJlIgorCisjfiBtc2dpZCAiLS1wcmludC1hcmNoaXRlY3R1cmUgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tcHJpbnQtYXJjaGl0ZWN0dXJlIG5lIHByZW5kIGF1Y3VuIHBhcmFtw6h0cmUiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gc3RhdCBpbnN0YWxsZWQgJXMgc2NyaXB0IGAlLjI1MHMnIgorI34gbXNnc3RyICJpbXBvc3NpYmxlIGQnYW5hbHlzZXIgbGUgc2NyaXB0IGluc3RhbGzDqSAlcyDCq8KgJS4yNTBzwqDCuyIKKworI34gbXNnaWQgInVuYWJsZSB0byBzdGF0IG5ldyAlcyBzY3JpcHQgYCUuMjUwcyciCisjfiBtc2dzdHIgImltcG9zc2libGUgZCdhbmFseXNlciBsZSBub3V2ZWF1IHNjcmlwdCAlcyDCq8KgJS4yNTBzwqDCuyIKKworI34gbXNnaWQgInVuYWJsZSB0byBleGVjdXRlIG5ldyAlcyIKKyN+IG1zZ3N0ciAiaW1wb3NzaWJsZSBkJ2V4w6ljdXRlciBsZSBub3V2ZWF1ICVzIgorCisjfiBtc2dpZCAiZHBrZzogd2FybmluZyAtIHVuYWJsZSB0byBzdGF0ICVzIGAlLjI1MHMnOiAlc1xuIgorI34gbXNnc3RyICJkcGtnwqA6IGF2ZXJ0aXNzZW1lbnQgLSBpbXBvc3NpYmxlIGQnYW5hbHlzZXIgJXMgwqvCoCUuMjUwc8KgwrvCoDogJXNcbiIKKworI34gbXNnaWQgIi0tc2V0LXNlbGVjdGlvbnMgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tc2V0LXNlbGVjdGlvbnMgbmUgcHJlbmQgYXVjdW4gcGFyYW3DqHRyZSIKKworI34gbXNnaWQgIi0tY2xlYXItc2VsZWN0aW9ucyBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudCIKKyN+IG1zZ3N0ciAiLS1jbGVhci1zZWxlY3Rpb25zIG5lIHByZW5kIGF1Y3VuIHBhcmFtw6h0cmUiCisKKyN+IG1zZ2lkICItLWJ1aWxkIG5lZWRzIGEgZGlyZWN0b3J5IGFyZ3VtZW50IgorI34gbXNnc3RyICItLWJ1aWxkIGEgYmVzb2luIGQndW4gcsOpcGVydG9pcmUgY29tbWUgcGFyYW3DqHRyZSIKKworI34gbXNnaWQgIiIKKyN+ICJkcGtnLWRlYjogd2FybmluZywgbm90IGNoZWNraW5nIGNvbnRlbnRzIG9mIGNvbnRyb2wgYXJlYS5cbiIKKyN+ICJkcGtnLWRlYjogYnVpbGRpbmcgYW4gdW5rbm93biBwYWNrYWdlIGluIGAlcycuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJkcGtnLWRlYsKgOiBhdmVydGlzc2VtZW50LCBub24gdsOpcmlmaWNhdGlvbiBkdSBjb250ZW51IGRlIGxhIHpvbmUgZGUgIgorI34gImNvbnRyw7RsZS5cbiIKKyN+ICJkcGtnLWRlYsKgOiBjb25zdHJ1Y3Rpb24gZCd1biBwYXF1ZXQgaW5jb25udSBkYW5zIMKrwqAlc8KgwrsuXG4iCisKKyN+IG1zZ2lkICJJbnRlcm5hbCBlcnJvciwgY29tcHJlc3NfdHlwZSBgJWknIHVua25vd24hIgorI34gbXNnc3RyICJFcnJldXIgaW50ZXJuZSwgdHlwZSBkZSBjb21wcmVzc2lvbiBpbmNvbm51wqA6ICVpIgorCisjfiBtc2dpZCAiLS1qb2luIHJlcXVpcmVzIG9uZSBvciBtb3JlIHBhcnQgZmlsZSBhcmd1bWVudHMiCisjfiBtc2dzdHIgIi0tam9pbiByZXF1aWVydCB1biBvdSBwbHVzaWV1cnMgZmljaGllcnMgY29tbWUgcGFyYW3DqHRyZXMiCisKKyN+IG1zZ2lkICItLWxpc3RxIGRvZXMgbm90IHRha2UgYW55IGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiLS1saXN0cSBuZSBwcmVuZCBhdWN1biBwYXJhbcOodHJlIgorCisjfiBtc2dpZCAiIgorI34gIlxuIgorI34gIkNvcHlyaWdodCAoQykgMTk5NiBLaW0tTWluaCBLYXBsYW4uIgorI34gbXNnc3RyICIiCisjfiAiXG4iCisjfiAiQ29weXJpZ2h0IChDKSAxOTk2IEtpbS1NaW5oIEthcGxhbi4iCisKKyN+IG1zZ2lkICIiCisjfiAiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIFstLV0gWzxkaXJuYW1lPl1cbiIKKyN+ICJcbiIKKyN+ICJPcHRpb25zOlxuIgorI34gIiAgLS11bnNhZmUgICAgIHNldCBzb21lIGFkZGl0aW9uYWwgcG9zc2libHkgdXNlZnVsIG9wdGlvbnMuXG4iCisjfiAiICAgICAgICAgICAgICAgd2FybmluZzogdGhpcyBvcHRpb24gbWF5IGdhcmJsZSBhbiBvdGhlcndpc2UgY29ycmVjdCAiCisjfiAiZmlsZS5cbiIKKyN+ICIgIC0taGVscCAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorI34gIiAgLS12ZXJzaW9uICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJTeW50YXhlwqA6ICVzIFs8b3B0aW9uPiAuLi5dIFstLV0gWzxub21yw6lwPl1cbiIKKyN+ICJcbiIKKyN+ICJPcHRpb25zwqA6XG4iCisjfiAiICAtLXVuc2FmZSAgICAgcG9zaXRpb25uZXIgZCdhdXRyZXMgb3B0aW9ucyDDqXZlbnR1ZWxsZW1lbnQgdXRpbGVzLlxuIgorI34gIiAgICAgICAgICAgICAgIEF2ZXJ0aXNzZW1lbnTCoDogY2V0dGUgb3B0aW9uIHBldXQgZW5kb21tYWdlciB1biBmaWNoaWVyICIKKyN+ICJjb3JyZWN0LlxuIgorI34gIiAgLS1oZWxwICAgICAgIGFmZmljaGVyIGNlIG1lc3NhZ2UgZCdhaWRlLlxuIgorI34gIiAgLS12ZXJzaW9uICAgIGFmZmljaGVyIGxhIHZlcnNpb24uXG4iCisKKyN+IG1zZ2lkICJ0cnkgZGVsZXRpbmcgJXMiCisjfiBtc2dzdHIgInRlbnRhdGl2ZSBkZSBzdXBwcmVzc2lvbiBkZSAlcyIKKworI34gbXNnaWQgImZhaWxlZCB0byBpbnN0YWxsICVzOyBpdCB3aWxsIGJlIGxlZnQgYXMgJXM6ICVzIgorI34gbXNnc3RyICLDqWNoZWMgZGUgbCdpbnN0YWxsYXRpb24gZGUgJXPCoDsgY29uc2VydmF0aW9uIGRlICVzwqA6ICVzIgorCisjfiBtc2dpZCAiJXM6IHVuYWJsZSB0byB1bmxvY2sgJXM6ICVzIgorI34gbXNnc3RyICIlc8KgOiDDqWNoZWMgZHUgZMOpdmVycm91aWxsYWdlIGRlICVzwqA6ICVzIgorCisjfiBtc2dpZCAiJXMgLSBzdGF0dXMgaXMgJXMuIgorI34gbXNnc3RyICIlcyAtIGwnw6l0YXQgZXN0ICVzLiIKKworI34gbXNnaWQgIiBsaW5rIHVucmVhZGFibGUgLSAlcyIKKyN+IG1zZ3N0ciAiIGxpZW4gbm9uIGxpc2libGUgLSAlcyIKKworI34gbXNnaWQgIiIKKyN+ICJ3YXJuaW5nOiAlcyBpcyBzdXBwb3NlZCB0byBiZSBhIHN5bWxpbmsgdG8gJXMsIFxuIgorI34gIm9yIG5vbmV4aXN0ZW50OyBob3dldmVyLCByZWFkbGluayBmYWlsZWQ6ICVzIgorI34gbXNnc3RyICIiCisjfiAiQXZlcnRpc3NlbWVudMKgOiAlcyBlc3QgY2Vuc8OpIMOqdHJlIHVuIGxpZW4gc3ltYm9saXF1ZSB2ZXJzICVzXG4iCisjfiAiIG91IG5lIHBhcyBleGlzdGVywqA7IGNlcGVuZGFudCwgw6ljaGVjIGRlIHJlYWRsaW5rwqA6ICVzIgorCisjfiBtc2dpZCAiTGVhdmluZyAlcyAoJXMpIHBvaW50aW5nIHRvICVzLiIKKyN+IG1zZ3N0ciAiQ29uc2VydmF0aW9uIGRlICVzICglcykgcG9pbnRhbnQgc3VyICVzLiIKKworI34gbXNnaWQgIlVwZGF0aW5nICVzICglcykgdG8gcG9pbnQgdG8gJXMuIgorI34gbXNnc3RyICJNaXNlIMOgIGpvdXIgZGUgJXMgKCVzKSBwb2ludGFudCBzdXIgJXMuIgorCisjfiBtc2dpZCAiUmVtb3ZpbmcgJXMgKCVzKSwgbm90IGFwcHJvcHJpYXRlIHdpdGggJXMuIgorI34gbXNnc3RyICJTdXBwcmVzc2lvbiBkZSAlcyAoJXMpLCBub24gYXBwcm9wcmnDqSBhdmVjICVzLiIKKworI34gbXNnaWQgIiIKKyN+ICJDaGVja2luZyBhdmFpbGFibGUgdmVyc2lvbnMgb2YgJXMsIHVwZGF0aW5nIGxpbmtzIGluICVzIC4uLlxuIgorI34gIihZb3UgbWF5IG1vZGlmeSB0aGUgc3ltbGlua3MgdGhlcmUgeW91cnNlbGYgaWYgZGVzaXJlZCAtIHNlZSBgbWFuIGxuJy4pIgorI34gbXNnc3RyICIiCisjfiAiVsOpcmlmaWNhdGlvbiBkZXMgdmVyc2lvbnMgZGlzcG9uaWJsZXMgcG91ciAlcywgbWlzZSDDoCBqb3VyIGRlcyBsaWVucyBkYW5zICIKKyN+ICIlcy4uLlxuIgorI34gIihWb3VzIHBvdXZleiBtb2RpZmllciBpY2kgbGVzIGxpZW5zIHN5bWJvbGlxdWVzIHZvdXMtbcOqbWUgc2kgdm91cyBsZSAiCisjfiAiZMOpc2lyZXogLVxuIgorI34gInZvaXIgwqvCoG1hbiBsbsKgwrspLiIKKworI34gbXNnaWQgInNsYXZlIGxpbmsgbmFtZSAlcyBkdXBsaWNhdGVkIgorI34gbXNnc3RyICJub20gZGUgbGllbiBzZWNvbmRhaXJlICVzIGR1cGxpcXXDqSIKKworI34gbXNnaWQgIlJlY292ZXJpbmcgZnJvbSBwcmV2aW91cyBmYWlsZWQgdXBkYXRlIG9mICVzIC4uLiIKKyN+IG1zZ3N0ciAiUsOpY3Vww6lyYXRpb24gZGUgbGEgcHLDqWPDqWRlbnRlIG1pc2Ugw6Agam91ciBkw6lmZWN0dWV1c2UgZGUgJXMuLi4iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gb3BlbiAlcyBmb3Igd3JpdGU6ICVzIgorI34gbXNnc3RyICJpbXBvc3NpYmxlIGQnb3V2cmlyICVzIGVuIMOpY3JpdHVyZcKgOiAlcyIKKworI34gbXNnaWQgIkxhc3QgcGFja2FnZSBwcm92aWRpbmcgJXMgKCVzKSByZW1vdmVkLCBkZWxldGluZyBpdC4iCisjfiBtc2dzdHIgIiIKKyN+ICJEZXJuaWVyIHBhcXVldCBmb3Vybmlzc2FudCAlcyAoJXMpIHN1cHByaW3DqSwgc3VwcHJlc3Npb24gZGUgY2VsdWktY2kuIgorCisjfiBtc2dpZCAiIgorI34gIlRoZXJlIGlzIG9ubHkgMSBwcm9ncmFtIHdoaWNoIHByb3ZpZGVzICVzXG4iCisjfiAiKCVzKS4gTm90aGluZyB0byBjb25maWd1cmUuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJJbCBuJ3kgYSBxdSd1biBwcm9ncmFtbWUgZm91cm5pc3NhbnQgJXMgKCVzKS5cbiIKKyN+ICJSaWVuIMOgIGNvbmZpZ3VyZXIuXG4iCisKKyN+IG1zZ2lkICIiCisjfiAiVGhlcmUgYXJlICVzIGFsdGVybmF0aXZlcyB3aGljaCBwcm92aWRlIGAlcycuXG4iCisjfiAiXG4iCisjfiAiICBTZWxlY3Rpb24gICAgQWx0ZXJuYXRpdmVcbiIKKyN+ICItLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIgorI34gbXNnc3RyICIiCisjfiAiSWwgeSBhICVzIGFsdGVybmF0aXZlcyBmb3Vybmlzc2FudCDCq8KgJXPCoMK7LlxuIgorI34gIlxuIgorI34gIiAgU8OpbGVjdGlvbiAgICBBbHRlcm5hdGl2ZVxuIgorI34gIi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4iCisKKyN+IG1zZ2lkICJlcnJvciBvciBlb2YgcmVhZGluZyAlcyBmb3IgJXMgKCVzKSIKKyN+IG1zZ3N0ciAiZXJyZXVyIG91IGZpbiBkZSBmaWNoaWVyIGxvcnMgZGUgbGEgbGVjdHVyZSBkZSAlcyBwb3VyICVzICglcykiCisKKyN+IG1zZ2lkICJtaXNzaW5nIG5ld2xpbmUgYWZ0ZXIgJXMiCisjfiBtc2dzdHIgInJldG91ciBjaGFyaW90IGFic2VudCBhcHLDqHMgJXMiCisKKyN+IG1zZ2lkICJTZXJpb3VzIHByb2JsZW06ICVzIgorI34gbXNnc3RyICJQcm9ibMOobWUgZ3JhdmXCoDogJXMiCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3BvL2dsLmdtbyBiL2Rwa2ctMS4xNi4xLjEvcG8vZ2wuZ21vCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjJjYzE1MDgKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3BvL2dsLmdtbwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3BvL2dsLnBvIGIvZHBrZy0xLjE2LjEuMS9wby9nbC5wbwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iYTU5M2UyCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9wby9nbC5wbwpAQCAtMCwwICsxLDc0MTIgQEAKKyMgdHJhbnNsYXRpb24gb2YgZ2wucG8gdG8gZ2FsaWNpYW4KKyMgR2FsaWNpYW4gdHJhbnNsYXRpb24gb2YgZHBrZworIyBDb3B5cmlnaHQgKEMpIDIwMDUgU29mdHdhcmUgaW4gdGhlIFB1YmxpYyBJbnRlcmVzdCwgSW5jLgorIworIyBKYWNvYm8gVGFycsOtbyA8anRhcnJpb0BkZWJpYW4ub3JnPiwgMjAwNSwgMjAwNiwgMjAwNywgMjAwOC4KKyMgSMOpY3RvciBGZXJuw6FuZGV6IEzDs3BleiA8dHJvcnJyQHlhaG9vLmVzPiwgMjAwMC4KKyMgbXZpbGxhcmlubyA8bXZpbGxhcmlub0B1c2Vycy5zb3VyY2Vmb3JnZS5uZXQ+LCAyMDA4LgorbXNnaWQgIiIKK21zZ3N0ciAiIgorIlByb2plY3QtSWQtVmVyc2lvbjogZ2xcbiIKKyJSZXBvcnQtTXNnaWQtQnVncy1UbzogZGViaWFuLWRwa2dAbGlzdHMuZGViaWFuLm9yZ1xuIgorIlBPVC1DcmVhdGlvbi1EYXRlOiAyMDExLTEwLTE0IDA3OjExKzAyMDBcbiIKKyJQTy1SZXZpc2lvbi1EYXRlOiAyMDA4LTEyLTE3IDIxOjUxKzAxMDBcbiIKKyJMYXN0LVRyYW5zbGF0b3I6IG12aWxsYXJpbm8gPG12aWxsYXJpbm9AdXNlcnMuc291cmNlZm9yZ2UubmV0PlxuIgorIkxhbmd1YWdlLVRlYW06IGdhbGljaWFuIDxwcm94ZWN0b0B0cmFzbm8ubmV0PlxuIgorIkxhbmd1YWdlOiBnbFxuIgorIk1JTUUtVmVyc2lvbjogMS4wXG4iCisiQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PVVURi04XG4iCisiQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdFxuIgorIlgtR2VuZXJhdG9yOiBLQmFiZWwgMS4xMS40XG4iCisiUGx1cmFsLUZvcm1zOiBucGx1cmFscz0yOyBwbHVyYWw9biAhPSAxO1xuIgorCisjOiBsaWIvZHBrZy9hci5jOjY2CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgY2hhcmFjdGVyICclYycgaW4gYXJjaGl2ZSAnJS4yNTBzJyBtZW1iZXIgJyUuMTZzJyBzaXplIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2FyLmM6ODEgbGliL2Rwa2cvYXIuYzo5NyBsaWIvZHBrZy9hci5jOjEwOCBsaWIvZHBrZy9hci5jOjExMgorIzogbGliL2Rwa2cvYXIuYzoxMzQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBmaWxlICclcyciCittc2dzdHIgIm5vbiBzZSBwb2RlIGFicmlyIG8gZmljaGVpcm8gb3JpeGUgXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvYXIuYzo5NAorIywgYy1mb3JtYXQKK21zZ2lkICJnZW5lcmF0ZWQgY29ycnVwdCBhciBoZWFkZXIgZm9yICclcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvYXIuYzoxMjMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBmc3RhdCBhciBtZW1iZXIgZmlsZSAoJXMpIgorbXNnc3RyICJub24gc2UgcHVpZG8gY3JlYXIgbyBmaWNoZWlybyB0ZW1wb3JhbCAoZGF0b3MpIgorCisjOiBsaWIvZHBrZy9hci5jOjEzMAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiYXIgbWVtYmVyIGZpbGUgKCVzKSIKK21zZ3N0ciAibm9uIHNlIHB1aWRvIGNyZWFyIG8gZmljaGVpcm8gdGVtcG9yYWwgKGRhdG9zKSIKKworIzogbGliL2Rwa2cvYnVmZmVyLmM6MTk2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCBvbiBidWZmZXIgY29weSBmb3IgJXMiCittc2dzdHIgImZhbGxvIGVuIGJ1ZmZlcl9jb3B5ICglcykiCisKKyM6IGxpYi9kcGtnL2J1ZmZlci5jOjIxMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIGluIHdyaXRlIG9uIGJ1ZmZlciBjb3B5IGZvciAlcyIKK21zZ3N0ciAiZmFsbG8gZW4gYnVmZmVyX2NvcHkgKCVzKSIKKworIzogbGliL2Rwa2cvYnVmZmVyLmM6MjIwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJzaG9ydCByZWFkIG9uIGJ1ZmZlciBjb3B5IGZvciAlcyIKK21zZ3N0ciAibGVjdHVyYSBjdXJ0YSBlbiBidWZmZXJfY29weSAoJXMpIgorCisjOiBsaWIvZHBrZy9idWZmZXIuYzoyODgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byBleGVjIHRhciIKK21zZ2lkICJmYWlsZWQgdG8gc2VlayAlcyIKK21zZ3N0ciAibm9uIHNlIHB1aWRvIGV4ZWN1dGFyIHRhciIKKworIzogbGliL2Rwa2cvY29tbWFuZC5jOjE3OCBsaWIvZHBrZy9jb21tYW5kLmM6MjA0IHNyYy9oZWxwLmM6NjIxCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjk4IHNyYy9wcm9jZXNzYXJjLmM6MTM4IHNyYy9wcm9jZXNzYXJjLmM6NDMyCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjgzOSBkcGtnLWRlYi9idWlsZC5jOjQ1OSBkcGtnLWRlYi9idWlsZC5jOjUzOAorIzogZHBrZy1kZWIvYnVpbGQuYzo1NjEgZHBrZy1kZWIvZXh0cmFjdC5jOjMxNyBkcGtnLWRlYi9pbmZvLmM6NjUKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzo2OSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NDU3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZXhlY3V0ZSAlcyAoJXMpIgorbXNnc3RyICJub24gc2UgcG9kZSBleGVjdXRhciAlcyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzo4MworIywgYy1mb3JtYXQKK21zZ2lkICIlczogZGVjb21wcmVzc2lvbiIKK21zZ3N0ciAiJXM6IGRlc2NvbXByZXNpw7NuIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjg5CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBjb21wcmVzc2lvbiIKK21zZ3N0ciAiJXM6IGNvbXByZXNpw7NuIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjExMgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZXJyb3IgYmluZGluZyBpbnB1dCB0byBnemlwIHN0cmVhbSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjEyNAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgcmVhZCBlcnJvcjogJyVzJyIKK21zZ3N0ciAiJXM6IGVycm8gaW50ZXJubyBkZSBnemlwOiBcIiVzXCIiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTMyIGxpYi9kcGtnL2NvbXByZXNzLmM6MTM2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCB3cml0ZSBlcnJvciIKK21zZ3N0ciAiJXM6IGVycm8gaW50ZXJubyBkZSBnemlwOiBcIiVzXCIiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTUwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvciBiaW5kaW5nIG91dHB1dCB0byBnemlwIHN0cmVhbSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE1NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgcmVhZCBlcnJvciIKK21zZ3N0ciAiJXM6IGVycm8gaW50ZXJubyBkZSBnemlwOiBcIiVzXCIiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTY3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCB3cml0ZSBlcnJvcjogJyVzJyIKK21zZ3N0ciAiJXM6IGVycm8gaW50ZXJubyBkZSBnemlwOiBcIiVzXCIiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTgwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCB3cml0ZSBlcnJvcjogJXMiCittc2dzdHIgIiVzOiBlcnJvIGludGVybm8gZGUgZ3ppcDogXCIlc1wiIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjIyMAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZXJyb3IgYmluZGluZyBpbnB1dCB0byBiemlwMiBzdHJlYW0iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyMzIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiByZWFkIGVycm9yOiAnJXMnIgorbXNnc3RyICIlczogZXJybyBpbnRlcm5vIGRlIGJ6aXAyOiBcIiVzXCIiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjQwIGxpYi9kcGtnL2NvbXByZXNzLmM6MjQ0IGxpYi9kcGtnL2NvbXByZXNzLmM6Mjk0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgd3JpdGUgZXJyb3IiCittc2dzdHIgIiVzOiBlcnJvIGludGVybm8gZGUgYnppcDI6IFwiJXNcIiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yIGJpbmRpbmcgb3V0cHV0IHRvIGJ6aXAyIHN0cmVhbSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI2NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIHJlYWQgZXJyb3IiCittc2dzdHIgIiVzOiBlcnJvIGludGVybm8gZGUgYnppcDI6IFwiJXNcIiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyNzUgbGliL2Rwa2cvY29tcHJlc3MuYzoyODYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiB3cml0ZSBlcnJvcjogJyVzJyIKK21zZ3N0ciAiJXM6IGVycm8gaW50ZXJubyBkZSBiemlwMjogXCIlc1wiIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI4MgorbXNnaWQgInVuZXhwZWN0ZWQgYnppcDIgZXJyb3IiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzo2OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidXBkYXRlcyBkaXJlY3RvcnkgY29udGFpbnMgZmlsZSBgJS4yNTBzJyB3aG9zZSBuYW1lIGlzIHRvbyBsb25nIChsZW5ndGg9JWQsICIKKyJtYXg9JWQpIgorbXNnc3RyICIiCisibyBkaXJlY3RvcmlvIGRlIGFjdHVhbGl6YWNpw7NucyBjb250w6luIG8gZmljaGVpcm8gXCIlLjI1MHNcIiwgcXVlIHRlbiB1biBub21lICIKKyJsb25nbyBkZSBtw6FpcyAobG9ueGl0dWRlPSVkLCBtw6F4PSVkKSIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzo3MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidXBkYXRlcyBkaXJlY3RvcnkgY29udGFpbnMgZmlsZXMgd2l0aCBkaWZmZXJlbnQgbGVuZ3RoIG5hbWVzIChib3RoICVkIGFuZCAlZCkiCittc2dzdHIgIiIKKyJvIGRpcmVjdG9yaW8gZGUgYWN0dWFsaXphY2nDs25zIGNvbnTDqW4gZmljaGVpcm9zIGNvbiBub21lcyBkZSBsb254aXR1ZGVzICIKKyJkaWZlcmVudGVzICglZCBlICVkKSIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzo4NgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc2NhbiB1cGRhdGVzIGRpcmVjdG9yeSBgJS4yNTVzJyIKK21zZ3N0ciAibm9uIHNlIHBvZGUgZXhwbG9yYXIgbyBkaXJlY3RvcmlvIGRlIGFjdHVhbGl6YWNpw7NucyBcIiUuMjU1c1wiIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVtb3ZlIGluY29ycG9yYXRlZCB1cGRhdGUgZmlsZSAlLjI1NXMiCittc2dzdHIgIm5vbiBzZSBwdWlkbyBib3JyYXIgbyBmaWNoZWlybyBkZSBhY3R1YWxpemFjacOzbnMgaW5jb3Jwb3JhZG8gJS4yNTVzIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEyMSBkcGtnLWRlYi9idWlsZC5jOjQ0NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGAlLjI1NXMnIgorbXNnc3RyICJub24gc2UgcG9kZSBjcmVhciBcIiUuMjU1c1wiIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEyNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmlsbCAlLjI1MHMgd2l0aCBwYWRkaW5nIgorbXNnc3RyICJub24gc2UgcG9kZSBlbmNoZXIgJS4yNTBzIGNvbiBjYXJhY3RlcmVzIGRlIHJlY2hlbyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxMjcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoICUuMjUwcyBhZnRlciBwYWRkaW5nIgorbXNnc3RyICJub24gc2UgcG9kZSBiYWxlaXJhciAlLjI1MHMgZGVzcG9pcyBkbyByZWNoZW8iCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTI5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWVrIHRvIHN0YXJ0IG9mICUuMjUwcyBhZnRlciBwYWRkaW5nIgorbXNnc3RyICJub24gc2UgcG9kZSBpciBhbyBjb21lem8gZGUgJS4yNTBzIGRlc3BvaXMgZG8gcmVjaGVvIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjE5NQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIG9wZW4gdG1wZmlsZSBmb3IgdnNucHJpbnRmIgorbXNnaWQgInVuYWJsZSB0byBvcGVuIGxvY2sgZmlsZSAlcyBmb3IgdGVzdGluZyIKK21zZ3N0ciAibm9uIHNlIHBvZGUgYWJyaXIgbyBmaWNoZWlybyB0ZW1wb3JhbCBwYXJhIHZzbnByaW50ZiIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyMjEKK21zZ2lkICJ1bmFibGUgdG8gb3Blbi9jcmVhdGUgc3RhdHVzIGRhdGFiYXNlIGxvY2tmaWxlIgorbXNnc3RyICIiCisibm9uIHNlIHBvZGUgYWJyaXIvY3JlYXIgbyBmaWNoZWlybyBkZSBibG9xdWVvIGRhIGJhc2UgZGUgZGF0b3MgZGUgZXN0YWRvIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjIzMQorbXNnaWQgInlvdSBkbyBub3QgaGF2ZSBwZXJtaXNzaW9uIHRvIGxvY2sgdGhlIGRwa2cgc3RhdHVzIGRhdGFiYXNlIgorbXNnc3RyICJub24gdGVuIHBlcm1pc29zIHBhcmEgYmxvcXVlYXIgYSBiYXNlIGRlIGRhdG9zIGRlIGVzdGFkbyBkZSBkcGtnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjIzMworIywgZnV6enkKKyN8IG1zZ2lkICJ1bmFibGUgdG8gbG9jayBkcGtnIHN0YXR1cyBkYXRhYmFzZSIKK21zZ2lkICJkcGtnIHN0YXR1cyBkYXRhYmFzZSIKK21zZ3N0ciAibm9uIHNlIHBvZGUgYmxvcXVlYXIgYSBiYXNlIGRlIGRhdG9zIGRlIGVzdGFkbyBkZSBkcGtnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjI1NworbXNnaWQgInJlcXVlc3RlZCBvcGVyYXRpb24gcmVxdWlyZXMgc3VwZXJ1c2VyIHByaXZpbGVnZSIKK21zZ3N0ciAiYSBvcGVyYWNpw7NuIHNvbGljaXRhZGEgcHJlY2lzYSBkZSBwcml2aWxleGlvcyBkZSBzdXBlcnVzdWFyaW8iCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjYyCittc2dpZCAidW5hYmxlIHRvIGFjY2VzcyBkcGtnIHN0YXR1cyBhcmVhIgorbXNnc3RyICJub24gc2UgcG9kZSBhY2NlZGVyIMOhIMOhcmVhIGRlIGVzdGFkbyBkZSBkcGtnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjI2NAorbXNnaWQgIm9wZXJhdGlvbiByZXF1aXJlcyByZWFkL3dyaXRlIGFjY2VzcyB0byBkcGtnIHN0YXR1cyBhcmVhIgorbXNnc3RyICIiCisiYSBvcGVyYWNpw7NuIHByZWNpc2EgZGUgYWNjZXNvIGRlIGxlY3R1cmEvZXNjcml0dXJhIMOhIMOhcmVhIGRlIGVzdGFkbyBkZSBkcGtnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjMwOQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVtb3ZlIG15IG93biB1cGRhdGUgZmlsZSAlLjI1NXMiCittc2dzdHIgIm5vbiBzZSBwdWlkbyBlbGltaW5hciBvIGZpY2hlaXJvIGRlIGFjdHVhbGl6YWNpw7NucyAlLjI1NXMiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzQ3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAibm9uIHNlIHBvZGUgZ3JhdmFyIG8gZXN0YWRvIGFjdHVhbGl6YWRvIGRlIFwiJS4yNTBzXCIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzQ5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAibm9uIHNlIHBvZGUgYmFsZWlyYXIgbyBidWZmZXIgY28gZXN0YWRvIGFjdHVhbGl6YWRvIGRlIFwiJS4yNTBzXCIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzUxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB0cnVuY2F0ZSBmb3IgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgIm5vbiBzZSBwb2RlIHRydW5jYXIgcGFyYSBvIGVzdGFkbyBhY3R1YWxpemFkbyBkZSBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM1MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZnN5bmMgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgIm5vbiBzZSBwb2RlIHNpbmNyb25pemFyIG8gZXN0YWRvIGFjdHVhbGl6YWRvIGRlIFwiJS4yNTBzXCIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzU1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAibm9uIHNlIHBvZGUgcGVjaGFyIG8gZXN0YWRvIGFjdHVhbGl6YWRvIGRlIFwiJS4yNTBzXCIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzU4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJub24gc2UgcG9kZSBpbnN0YWxhciBvIGVzdGFkbyBhY3R1YWxpemFkbyBkZSBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy9kaXIuYzo1MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHJlYWQgZmlsZWRlc2NyaXB0b3IgZmxhZ3MgZm9yICUuMjUwcyIKK21zZ2lkICJ1bmFibGUgdG8gZ2V0IGZpbGUgZGVzY3JpcHRvciBmb3IgZGlyZWN0b3J5ICclcyciCittc2dzdHIgIm5vbiBzZSBwdWlkbyBsZXIgb3MgbW9kaWZpY2Fkb3JlcyBkbyBkZXNjcml0b3IgZGUgZmljaGVpcm9zIGRlICUuMjUwcyIKKworIzogbGliL2Rwa2cvZGlyLmM6NTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzeW5jIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICJub24gc2UgcG9kZSBhYnJpciBvIGZpY2hlaXJvIG9yaXhlIFwiJS4yNTBzXCIiCisKKyM6IGxpYi9kcGtnL2Rpci5jOjY5IGxpYi9kcGtnL2Rpci5jOjEzMQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gZGlyZWN0b3J5ICclcyciCittc2dzdHIgIm5vbiBzZSBwb2RlIGFicmlyIG8gZmljaGVpcm8gb3JpeGUgXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvZGlyLmM6MTA5IHNyYy9kaXZlcnRjbWQuYzoyMTggZHBrZy1zcGxpdC9zcGxpdC5jOjIwMgorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyOTMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIGZpbGUgJyVzJyIKK21zZ3N0ciAibm9uIHNlIHBvZGUgYWJyaXIgbyBmaWNoZWlybyBvcml4ZSBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy9kaXIuYzoxMTEgc3JjL2RpdmVydGNtZC5jOjIzMiBzcmMvZGl2ZXJ0Y21kLmM6Mzc3CisjOiBzcmMvc3RhdGNtZC5jOjIxNyBkcGtnLWRlYi9idWlsZC5jOjU5OCBkcGtnLXNwbGl0L2pvaW4uYzo2NQorIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE4NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTQwNgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgZmlsZSAnJXMnIgorbXNnc3RyICJub24gc2UgcG9kZSBhYnJpciBvIGZpY2hlaXJvIG9yaXhlIFwiJS4yNTBzXCIiCisKKyM6IGxpYi9kcGtnL2Rpci5jOjExMyBzcmMvZGl2ZXJ0Y21kLmM6MjM0IHNyYy9kaXZlcnRjbWQuYzozNzkKKyM6IGRwa2ctZGViL2J1aWxkLmM6NjAwIGRwa2ctc3BsaXQvam9pbi5jOjY3IGRwa2ctc3BsaXQvcXVldWUuYzoxODkKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzE0IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNDA4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgZmlsZSAnJXMnIgorbXNnc3RyICJub24gc2UgcG9kZSBiYWxlaXJhciBvIGJ1ZmZlciBlbiB2c25wcmludGYiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzozOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIGRldGFpbHMgb2YgYCUuNTBzJyB0byBgJS4yNTBzJyIKK21zZ3N0ciAibm9uIHNlIHB1aWRlcm9uIGdyYXZhciBvcyBkZXRhbGxlcyBkZSBcIiUuNTBzXCIgZW4gXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQyMworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gJyVzJyBmb3Igd3JpdGluZyAlcyBkYXRhYmFzZSIKK21zZ3N0ciAibm9uIHNlIHB1aWRvIGFicmlyIFwiJXNcIiBwYXJhIGdyYXZhciBpbmZvcm1hY2nDs24gZGUgXCIlc1wiIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDI2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IGJ1ZmZlcmluZyBvbiAlcyBkYXRhYmFzZSBmaWxlIgorbXNnc3RyICJub24gc2UgcG9kZSBlc3RhYmxlY2VyIG8gYnVmZmVyIGRvIGZpY2hlaXJvIGRlIGVzdGFkbyIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQzOAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlICVzIGRhdGFiYXNlIHJlY29yZCBhYm91dCAnJS41MHMnIHRvICclLjI1MHMnIgorbXNnc3RyICJub24gc2UgcHVpZG8gZ3JhdmFyIG8gcmV4aXN0cm8gZGUgXCIlc1wiIHNvYnJlIFwiJS41MHNcIiBlbiBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDQ2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZmx1c2ggJXMgZGF0YWJhc2UgdG8gJyUuMjUwcyciCittc2dzdHIgIm5vbiBzZSBwdWlkbyBiYWxlaXJhciBvIGJ1ZmZlciBjb2EgaW5mb3JtYWNpw7NuIGRlIFwiJXNcIiBlbiBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDQ4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZnN5bmMgJXMgZGF0YWJhc2UgdG8gJyUuMjUwcyciCittc2dzdHIgIm5vbiBzZSBwdWlkbyBzaW5jcm9uaXphciBhIGluZm9ybWFjacOzbiBkZSBcIiVzXCIgZW4gXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ1MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNsb3NlICclLjI1MHMnIGFmdGVyIHdyaXRpbmcgJXMgZGF0YWJhc2UiCittc2dzdHIgIiIKKyJub24gc2UgcHVpZG8gcGVjaGFyIFwiJS4yNTBzXCIgZGVzcG9pcyBkZSBncmF2YXIgYSBpbmZvcm1hY2nDs24gZGUgXCIlc1wiIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDU1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gbGluayAnJS4yNTBzJyB0byAnJS4yNTBzJyBmb3IgYmFja3VwIG9mICVzIGRhdGFiYXNlIgorbXNnc3RyICIiCisibm9uIHNlIHB1aWRvIGxpZ2FyIFwiJS4yNTBzXCIgYSBcIiUuMjUwc1wiIHBhcmEgY29waWFyIGEgaW5mb3JtYWNpw7NuIGRlIFwiJXMiCisiXCIiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NTgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBpbnN0YWxsICclLjI1MHMnIGFzICclLjI1MHMnIGNvbnRhaW5pbmcgJXMgZGF0YWJhc2UiCittc2dzdHIgIiIKKyJub24gc2UgcHVpZG8gaW5zdGFsYXIgXCIlLjI1MHNcIiBjb21hIFwiJS4yNTBzXCIgcXVlIGNvbnTDqW4gaW5mb3JtYWNpw7NuIGRlICIKKyJcIiVzXCIiCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzo5NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IHVucmVjb3ZlcmFibGUgZmF0YWwgZXJyb3IsIGFib3J0aW5nOlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisiJXM6IGVycm8gZmF0YWwgbm9uIHJlY3VwZXJhYmxlLCBhIGFib3J0YXI6XG4iCisiICVzXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoxMDAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIlczogdW5yZWNvdmVyYWJsZSBmYXRhbCBlcnJvciwgYWJvcnRpbmc6XG4iCisjfCAiICVzXG4iCittc2dpZCAiIgorIiVzOiBvdXRzaWRlIGVycm9yIGNvbnRleHQsIGFib3J0aW5nOlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisiJXM6IGVycm8gZmF0YWwgbm9uIHJlY3VwZXJhYmxlLCBhIGFib3J0YXI6XG4iCisiICVzXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoxMjAKKyMsIGZ1enp5CisjfCBtc2dpZCAib3V0IG9mIG1lbW9yeSBmb3IgbmV3IGNsZWFudXAgZW50cnkiCittc2dpZCAib3V0IG9mIG1lbW9yeSBmb3IgbmV3IGVycm9yIGNvbnRleHQiCittc2dzdHIgImVzZ290b3VzZSBhIG1lbW9yaWEgcGFyYSB1bmhhIG5vdmEgZW50cmFkYSBkZSBsaW1wZXphIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MTgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogZXJyb3Igd2hpbGUgY2xlYW5pbmcgdXA6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKyIlczogZXJybyBhbyBsaW1wYXI6XG4iCisiICVzXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoyMDEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImRwa2c6IHRvbyBtYW55IG5lc3RlZCBlcnJvcnMgZHVyaW5nIGVycm9yIHJlY292ZXJ5ICEhXG4iCittc2dpZCAiJXM6IHRvbyBtYW55IG5lc3RlZCBlcnJvcnMgZHVyaW5nIGVycm9yIHJlY292ZXJ5ISFcbiIKK21zZ3N0ciAiZHBrZzogaGFpIGVycm9zIGFuacOxYWRvcyBkZSBtw6FpcyBkdXJhbnRlIGEgcmVjdXBlcmFjacOzbiBkZSBlcnJvc1xuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MjY4IGxpYi9kcGtnL2VoYW5kbGUuYzozMDcKK21zZ2lkICJvdXQgb2YgbWVtb3J5IGZvciBuZXcgY2xlYW51cCBlbnRyeSIKK21zZ3N0ciAiZXNnb3RvdXNlIGEgbWVtb3JpYSBwYXJhIHVuaGEgbm92YSBlbnRyYWRhIGRlIGxpbXBlemEiCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoyOTEKK21zZ2lkICJvdXQgb2YgbWVtb3J5IGZvciBuZXcgY2xlYW51cCBlbnRyeSB3aXRoIG1hbnkgYXJndW1lbnRzIgorbXNnc3RyICIiCisiZXNnb3RvdXNlIGEgbWVtb3JpYSBwYXJhIHVuaGEgbm92YSBlbnRyYWRhIGRlIGxpbXBlemEgY29uIGFyZ3VtZW50b3MgZGUgbcOhaXMiCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzozNTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvcjogJXNcbiIKK21zZ3N0ciAiIgorIiVzOiBlcnJvIGFvIGxpbXBhcjpcbiIKKyIgJXNcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjM5MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IHdhcm5pbmc6ICVzXG4iCittc2dzdHIgIiIKKyIlczogZXJybyBhbyBsaW1wYXI6XG4iCisiICVzXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzo0MTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiVzOiVkOiBpbnRlcm5hbCBlcnJvcjogJXNcbiIKK21zZ3N0ciAiJXM6JWQ6IGVycm8gaW50ZXJubyBcIiVzXCJcbiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgaXMgbWlzc2luZyIKK21zZ3N0ciAiZmFsbGEgJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJgJS4qcycgaXMgbm90IGFsbG93ZWQgZm9yICVzIgorbXNnaWQgIiclLjUwcycgaXMgbm90IGFsbG93ZWQgZm9yICVzIgorbXNnc3RyICJub24gc2UgcGVybWl0ZSBcIiUuKnNcIiBwYXJhICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo3MworIywgYy1mb3JtYXQKK21zZ2lkICJqdW5rIGFmdGVyICVzIgorbXNnc3RyICJsaXhvIGRlc3BvaXMgZGUgJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjg3CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgcGFja2FnZSBuYW1lICglLjI1MHMpIgorbXNnc3RyICJub21lIGRlIHBhcXVldGUgbm9uIHbDoWxpZG8gKCUuMjUwcykiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJlbXB0eSBmaWxlIGRldGFpbHMgZmllbGQgYCVzJyIKK21zZ3N0ciAiY2FtcG8gZGUgZGV0YWxsZXMgZGUgZmljaGVpcm8gXCIlc1wiIGJhbGVpcm8iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjEwNQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGRldGFpbHMgZmllbGQgYCVzJyBub3QgYWxsb3dlZCBpbiBzdGF0dXMgZmlsZSIKK21zZ3N0ciAiIgorIm5vbiBzZSBwZXJtaXRlIG8gY2FtcG8gZGUgZGV0YWxsZXMgZGUgZmljaGVpcm8gXCIlc1wiIG5vIGZpY2hlaXJvIGRlIGVzdGFkbyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTE4CisjLCBjLWZvcm1hdAorbXNnaWQgInRvbyBtYW55IHZhbHVlcyBpbiBmaWxlIGRldGFpbHMgZmllbGQgYCVzJyAoY29tcGFyZWQgdG8gb3RoZXJzKSIKK21zZ3N0ciAiIgorImhhaSB2YWxvcmVzIGRlIG3DoWlzIG5vIGNhbXBvIGRlIGRldGFsbGVzIGRlIGZpY2hlaXJvIFwiJXNcIiAoY29tcGFyYWRvIGNvbiAiCisib3V0cm9zKSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTMyCisjLCBjLWZvcm1hdAorbXNnaWQgInRvbyBmZXcgdmFsdWVzIGluIGZpbGUgZGV0YWlscyBmaWVsZCBgJXMnIChjb21wYXJlZCB0byBvdGhlcnMpIgorbXNnc3RyICIiCisiaGFpIHZhbG9yZXMgZGUgbWVub3Mgbm8gY2FtcG8gZGUgZGV0YWxsZXMgZGUgZmljaGVpcm8gXCIlc1wiIChjb21wYXJhZG8gY29uICIKKyJvdXRyb3MpIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxNTQKK21zZ2lkICJ5ZXMvbm8gaW4gYm9vbGVhbiBmaWVsZCIKK21zZ3N0ciAic2kvbm9uIG51biBjYW1wbyBib29sZWFubyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTc0Cittc2dpZCAid29yZCBpbiBgcHJpb3JpdHknIGZpZWxkIgorbXNnc3RyICJwYWxhYnJhIG5vIGNhbXBvIFwicHJpb3JpdHlcIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTg2Cittc2dpZCAidmFsdWUgZm9yIGBzdGF0dXMnIGZpZWxkIG5vdCBhbGxvd2VkIGluIHRoaXMgY29udGV4dCIKK21zZ3N0ciAibm9uIHNlIGFkbWl0ZSBvIHZhbG9yIGRvIGNhbXBvIFwic3RhdHVzXCIgbmVzdGUgY29udGV4dG8iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE5MQorbXNnaWQgImZpcnN0ICh3YW50KSB3b3JkIGluIGBzdGF0dXMnIGZpZWxkIgorbXNnc3RyICJwcmltZWlyYSBwYWxhYnJhICh3YW50KSBubyBjYW1wbyBcInN0YXR1c1wiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxOTQKK21zZ2lkICJzZWNvbmQgKGVycm9yKSB3b3JkIGluIGBzdGF0dXMnIGZpZWxkIgorbXNnc3RyICJzZWd1bmRhIHBhbGFicmEgKGVycm9yKSBubyBjYW1wbyBcInN0YXR1c1wiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxOTcKK21zZ2lkICJ0aGlyZCAoc3RhdHVzKSB3b3JkIGluIGBzdGF0dXMnIGZpZWxkIgorbXNnc3RyICJ0ZXJjZWlyYSBwYWxhYnJhIChzdGF0dXMpIG5vIGNhbXBvIFwic3RhdHVzXCIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjIwNworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZXJyb3IgaW4gVmVyc2lvbiBzdHJpbmcgYCUuMjUwcyc6ICUuMjUwcyIKK21zZ2lkICJlcnJvciBpbiBWZXJzaW9uIHN0cmluZyAnJS4yNTBzJyIKK21zZ3N0ciAiZXJybyBuYSBjYWRlYSBkbyBjYW1wbyBWZXJzaW9uIFwiJS4yNTBzXCI6ICUuMjUwcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjE4Cittc2dpZCAib2Jzb2xldGUgYFJldmlzaW9uJyBvciBgUGFja2FnZS1SZXZpc2lvbicgZmllbGQgdXNlZCIKK21zZ3N0ciAiZW1wcsOpZ2FzZSB1biBjYW1wbyBvYnNvbGV0byBcIlJldmlzaW9uXCIgb3UgXCJQYWNrYWdlLVJldmlzaW9uXCIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjIzNQorbXNnaWQgInZhbHVlIGZvciBgY29uZmlnLXZlcnNpb24nIGZpZWxkIG5vdCBhbGxvd2VkIGluIHRoaXMgY29udGV4dCIKK21zZ3N0ciAibm9uIHNlIGFkbWl0ZSBvIHZhbG9yIGRvIGNhbXBvIFwiY29uZmlnLXZlcnNpb25cIiBuZXN0ZSBjb250ZXh0byIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjQwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJlcnJvciBpbiBDb25maWctVmVyc2lvbiBzdHJpbmcgYCUuMjUwcyc6ICUuMjUwcyIKK21zZ2lkICJlcnJvciBpbiBDb25maWctVmVyc2lvbiBzdHJpbmcgJyUuMjUwcyciCittc2dzdHIgImVycm8gbmEgY2FkZWEgZG8gY2FtcG8gQ29uZmlnLVZFcnNpb24gXCIlLjI1MHNcIjogJS4yNTBzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAidmFsdWUgZm9yIGBjb25mZmlsZXMnIGhhcyBtYWxmb3JtYXR0ZWQgbGluZSBgJS4qcyciCittc2dzdHIgIm8gdmFsb3IgZGUgXCJjb25mZmlsZXNcIiB0ZW4gdW5oYSBsacOxYSBtYWwgZm9ybWFkYSBcIiUuKnNcIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6Mjg3CisjLCBjLWZvcm1hdAorbXNnaWQgInZhbHVlIGZvciBgY29uZmZpbGVzJyBoYXMgbGluZSBzdGFydGluZyB3aXRoIG5vbi1zcGFjZSBgJWMnIgorbXNnc3RyICIiCisibyB2YWxvciBkZSBcImNvbmZmaWxlc1wiIHRlbiB1bmhhIGxpw7FhIHF1ZSBjb21lemEgcG9yIGFsZ28gZGlzdGludG8gZHVuICIKKyJlc3BhY2lvIFwiJWNcIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MzA0Cittc2dpZCAicm9vdCBvciBudWxsIGRpcmVjdG9yeSBpcyBsaXN0ZWQgYXMgYSBjb25mZmlsZSIKK21zZ3N0ciAibMOtc3Rhc2UgY29tYSBmaWNoZWlybyBkZSBjb25maWd1cmFjacOzbiBvIGRpcmVjdG9yaW8gcmHDrXogb3UgdW4gbnVsbyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MzY1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJgJXMnIGZpZWxkLCBtaXNzaW5nIHBhY2thZ2UgbmFtZSwgb3IgZ2FyYmFnZSB3aGVyZSBwYWNrYWdlIG5hbWUgZXhwZWN0ZWQiCittc2dzdHIgIiIKKyJjYW1wbyBcIiVzXCIsIGZhbGxhIG8gbm9tZSBkbyBwYXF1ZXRlLCBvdSBoYWkgbGl4byBvbmRlIHNlIGVzcGVyYWJhIG8gbm9tZSAiCisiZHVuIHBhcXVldGUiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjM3MAorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGZpZWxkLCBpbnZhbGlkIHBhY2thZ2UgbmFtZSBgJS4yNTVzJzogJXMiCittc2dzdHIgImNhbXBvIFwiJXNcIiwgbm9tZSBkZSBwYXF1ZXRlIFwiJS4yNTVzXCIgbm9uIHbDoWxpZG86ICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgYmFkIHZlcnNpb24gcmVsYXRpb25zaGlwICVjJWMiCittc2dzdHIgIiIKKyJjYW1wbyBcIiVzXCIsIHJlZmVyZW5jaWEgYSBcIiUuMjU1c1wiOlxuIgorIiByZWxhY2nDs24gZGUgdmVyc2nDs25zICVjJWMgaW5jb3JyZWN0YSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDEyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6XG4iCisiIGAlYycgaXMgb2Jzb2xldGUsIHVzZSBgJWM9JyBvciBgJWMlYycgaW5zdGVhZCIKK21zZ3N0ciAiIgorImNhbXBvIFwiJXNcIiwgcmVmZXJlbmNpYSBhIFwiJS4yNTVzXCI6XG4iCisiIFwiJWNcIiBlc3TDoSBvYnNvbGV0bywgZW1wcmVndWUgXCIlYz1cIiBvdSBcIiVjJWNcIiBubyBzZXUgY2FudG8iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQyMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOlxuIgorIiBpbXBsaWNpdCBleGFjdCBtYXRjaCBvbiB2ZXJzaW9uIG51bWJlciwgc3VnZ2VzdCB1c2luZyBgPScgaW5zdGVhZCIKK21zZ3N0ciAiIgorImNhbXBvIFwiJXNcIiwgcmVmZXJlbmNpYSBhIFwiJS4yNTVzXCI6XG4iCisiIGNvaW5jaWRlbmNpYSBleGFjdGEgaW1wbMOtY2l0YSBubyBuw7ptZXJvIGRlIHZlcnNpw7NuLCBzdXjDrXJlc2UgZW1wcmVnYXIgXCI9XCIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQzMAorbXNnaWQgIk9ubHkgZXhhY3QgdmVyc2lvbnMgbWF5IGJlIHVzZWQgZm9yIFByb3ZpZGVzIgorbXNnc3RyICJTw7Mgc2UgcG9kZW4gZW1wcmVnYXIgdmVyc2nDs25zIGV4YWN0YXMgbm8gY2FtcG8gUHJvdmlkZXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQzNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOlxuIgorIiB2ZXJzaW9uIHZhbHVlIHN0YXJ0cyB3aXRoIG5vbi1hbHBoYW51bWVyaWMsIHN1Z2dlc3QgYWRkaW5nIGEgc3BhY2UiCittc2dzdHIgIiIKKyJjYW1wbyBcIiVzXCIsIHJlZmVyZW5jaWEgYSBcIiUuMjU1c1wiOlxuIgorIiBvIHZhbG9yIGRhIHZlcnNpw7NuIGNvbWV6YSBwb3IgdW4gY2Fyw6FjdGVyIG5vbiBhbGZhbnVtw6lyaWNvLCBzdXjDrXJlc2UgIgorImVuZ2FkaXIgdW4gZXNwYXpvIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NTEgbGliL2Rwa2cvZmllbGRzLmM6NDU1CisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzogdmVyc2lvbiBjb250YWlucyBgJWMnIgorbXNnc3RyICJjYW1wbyBcIiVzXCIsIHJlZmVyZW5jaWEgYSBcIiUuMjU1c1wiOiBhIHZlcnNpw7NuIGNvbnTDqW4gXCIlY1wiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOiB2ZXJzaW9uIHVudGVybWluYXRlZCIKK21zZ3N0ciAiY2FtcG8gXCIlc1wiLCByZWZlcmVuY2lhIGEgXCIlLjI1NXNcIjogdmVyc2nDs24gc2VuIHJlbWF0YXIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ2NQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOiBlcnJvciBpbiB2ZXJzaW9uOiAlLjI1NXMiCittc2dpZCAiJyVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvICclLjI1NXMnOiBlcnJvciBpbiB2ZXJzaW9uIgorbXNnc3RyICJjYW1wbyBcIiVzXCIsIHJlZmVyZW5jaWEgYSBcIiUuMjU1c1wiOiBlcnJvIG5hIHZlcnNpw7NuOiAlLjI1NXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ3NQorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGZpZWxkLCBzeW50YXggZXJyb3IgYWZ0ZXIgcmVmZXJlbmNlIHRvIHBhY2thZ2UgYCUuMjU1cyciCittc2dzdHIgImNhbXBvIFwiJXNcIiwgZXJybyBkZSBzaW50YXhlIHRyYWxhIHJlZmVyZW5jaWEgYW8gcGFxdWV0ZSBcIiUuMjU1c1wiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmVzIChgfCcpIG5vdCBhbGxvd2VkIGluICVzIGZpZWxkIgorbXNnc3RyICJub24gc2UgYWRtaXRlbiBhbHRlcm5hdGl2YXMgKFwifFwiKSBubyBjYW1wbyAlcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTM2Cittc2dpZCAidmFsdWUgZm9yIGB0cmlnZ2Vycy1wZW5kaW5nJyBmaWVsZCBub3QgYWxsb3dlZCBpbiB0aGlzIGNvbnRleHQiCittc2dzdHIgIm5vbiBzZSBhZG1pdGUgbyB2YWxvciBkbyBjYW1wbyBcInRyaWdnZXJzLXBlbmRpbmdcIiBuZXN0ZSBjb250ZXh0byIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTQzCisjLCBjLWZvcm1hdAorbXNnaWQgImlsbGVnYWwgcGVuZGluZyB0cmlnZ2VyIG5hbWUgYCUuMjU1cyc6ICVzIgorbXNnc3RyICJub21lIGRlIGRpc3BhcmFkb3IgcGVuZGVudGUgXCIlLjI1NXNcIiBub24gdsOhbGlkbzogJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU0NworIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgcGVuZGluZyB0cmlnZ2VyIGAlLjI1NXMnIgorbXNnc3RyICJkaXNwYXJhZG9yIHBlbmRlbnRlIFwiJS4yNTVzXCIgZHVwbGljYWRvIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NjEKK21zZ2lkICJ2YWx1ZSBmb3IgYHRyaWdnZXJzLWF3YWl0ZWQnIGZpZWxkIG5vdCBhbGxvd2VkIGluIHRoaXMgY29udGV4dCIKK21zZ3N0ciAibm9uIHNlIGFkbWl0ZSBvIHZhbG9yIGRvIGNhbXBvIFwidHJpZ2dlcnMtYXdhaXRlZFwiIG5lc3RlIGNvbnRleHRvIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWxsZWdhbCBwYWNrYWdlIG5hbWUgaW4gYXdhaXRlZCB0cmlnZ2VyIGAlLjI1NXMnOiAlcyIKK21zZ3N0ciAibm9tZSBkZSBwYXF1ZXRlIG5vbiB2w6FsaWRvIG5vIGRpc3BhcmFkb3IgZW4gZXNwZXJhIFwiJS4yNTVzXCI6ICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIGF3YWl0ZWQgdHJpZ2dlciBwYWNrYWdlIGAlLjI1NXMnIgorbXNnc3RyICJwYXF1ZXRlIGN1biBkaXNwYXJhZG9yIGVuIGVzcGVyYSBkdXBsaWNhZG8gXCIlLjI1NXNcIiIKKworIzogbGliL2Rwa2cvZmlsZS5jOjUxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBzb3VyY2UgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAibm9uIHNlIHBvZGUgYWJyaXIgbyBmaWNoZWlybyBvcml4ZSBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy9maWxlLmM6NTUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGFuZ2Ugb3duZXJzaGlwIG9mIHRhcmdldCBmaWxlICclLjI1MHMnIgorbXNnc3RyICIiCisibm9uIHNlIHBvZGUgY2FtYmlhciBvIHByb3BpZXRhcmlvIGRvIG5vdm8gZmljaGVpcm8gZGUgY29uZmlndXJhY2nDs24gXCIlLjI1MHMiCisiXCIiCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzo1OQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNldCBtb2RlIG9mIHRhcmdldCBmaWxlICclLjI1MHMnIgorbXNnc3RyICIiCisibm9uIHNlIHBvZGUgZXN0YWJsZWNlciBvIG1vZG8gZG8gbm92byBmaWNoZWlybyBkZSBjb25maWd1cmFjacOzbiBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy9maWxlLmM6ODUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byB1bmxvY2sgJXM6ICVzIgorbXNnaWQgInVuYWJsZSB0byB1bmxvY2sgJXMiCittc2dzdHIgIm5vbiBzZSBwb2RlIGRlc2Jsb3F1ZWFyICVzOiAlcyIKKworIzogbGliL2Rwa2cvZmlsZS5jOjExMQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoZWNrIGZpbGUgJyVzJyBsb2NrIHN0YXR1cyIKK21zZ3N0ciAibm9uIHNlIHBvZGUgYWJyaXIgbyBmaWNoZWlybyBvcml4ZSBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy9maWxlLmM6MTQ2CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJzdGF0dXMgZGF0YWJhc2UgYXJlYSBpcyBsb2NrZWQgYnkgYW5vdGhlciBwcm9jZXNzIgorbXNnaWQgIiVzIGlzIGxvY2tlZCBieSBhbm90aGVyIHByb2Nlc3MiCittc2dzdHIgImEgw6FyZWEgZGEgYmFzZSBkZSBkYXRvcyBkZSBlc3RhZG8gZXN0w6EgYmxvcXVlYWRhIHBvciBvdXRybyBwcm9jZXNvIgorCisjOiBsaWIvZHBrZy9maWxlLmM6MTQ4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gdW5sb2NrICVzOiAlcyIKK21zZ2lkICJ1bmFibGUgdG8gbG9jayAlcyIKK21zZ3N0ciAibm9uIHNlIHBvZGUgZGVzYmxvcXVlYXIgJXM6ICVzIgorCisjOiBsaWIvZHBrZy9sb2cuYzo1MworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBvcGVuIGxvZyBgJXMnOiAlc1xuIgorbXNnc3RyICJub24gc2UgcHVpZG8gYWJyaXIgbyByZXhpc3RybyBcIiVzXCI6ICVzXG4iCisKKyM6IGxpYi9kcGtnL2xvZy5jOjg1Cittc2dpZCAiPHBhY2thZ2Ugc3RhdHVzIGFuZCBwcm9ncmVzcyBmaWxlIGRlc2NyaXB0b3I+IgorbXNnc3RyICI8ZGVzY3JpcHRvciBkbyBmaWNoZWlybyBkZSBlc3RhZG8gZSBwcm9ncmVzbyBkb3MgcGFxdWV0ZXM+IgorCisjOiBsaWIvZHBrZy9sb2cuYzoxMTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSB0byBzdGF0dXMgZmQgJWQiCittc2dzdHIgIm5vbiBzZSBwb2RlIGdyYXZhciBvIGVzdGFkbyBhY3R1YWxpemFkbyBkZSBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy9tbGliLmM6NDQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAicmVhbGxvYyBmYWlsZWQgKCV6dSBieXRlcykiCittc2dpZCAibWFsbG9jIGZhaWxlZCAoJXp1IGJ5dGVzKSIKK21zZ3N0ciAiYSBjaGFtYWRhIGEgcmVhbGxvYyBmYWxsb3UgKCV6dSBieXRlcykiCisKKyM6IGxpYi9kcGtnL21saWIuYzo1OAorIywgYy1mb3JtYXQKK21zZ2lkICJyZWFsbG9jIGZhaWxlZCAoJXp1IGJ5dGVzKSIKK21zZ3N0ciAiYSBjaGFtYWRhIGEgcmVhbGxvYyBmYWxsb3UgKCV6dSBieXRlcykiCisKKyM6IGxpYi9kcGtnL21saWIuYzo3MiBsaWIvZHBrZy9tbGliLmM6OTAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI3NworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjMzNCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTEwNworbXNnaWQgImZhaWxlZCB0byBhbGxvY2F0ZSBtZW1vcnkiCittc2dzdHIgIm5vbiBzZSBwdWlkbyByZXNlcnZhciBtZW1vcmlhIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBkdXAgZm9yIHN0ZCVzIgorbXNnc3RyICJhIGNoYW1hZGEgYSBkdXAyIGZhbGxvdSBwYXJhIHN0ZCVzIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTAzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBkdXAgZm9yIGZkICVkIgorbXNnc3RyICJhIGNoYW1hZGEgYSBkdXAyIGZhbGxvdSBwYXJhIG8gZGVzY3JpdG9yICVkIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTA5Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBwaXBlIgorbXNnc3RyICJub24gc2UgcHVpZG8gY3JlYXIgdW5oYSBjYW5sZSIKKworIzogbGliL2Rwa2cvbWxpYi5jOjExNworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igd3JpdGluZyB0byAnJXMnIgorbXNnc3RyICJlcnJvIGFvIGdyYXZhciBcIiVzXCIiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgZmlsZWRlc2NyaXB0b3IgZmxhZ3MgZm9yICUuMjUwcyIKK21zZ3N0ciAibm9uIHNlIHB1aWRvIGxlciBvcyBtb2RpZmljYWRvcmVzIGRvIGRlc2NyaXRvciBkZSBmaWNoZWlyb3MgZGUgJS4yNTBzIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTI2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgY2xvc2Utb24tZXhlYyBmbGFnIGZvciAlLjI1MHMiCittc2dzdHIgIm5vbiBzZSBwdWlkbyBlc3RhYmxlY2VyIG8gbW9kaWZpY2Fkb3IgY2xvc2Utb24tZXhlYyBkZSAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzo2MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiY29uZmlndXJhdGlvbiBlcnJvcjogJXM6JWQ6ICVzIgorbXNnc3RyICJlcnJvIG5hIGNvbmZpZ3VyYWNpw7NuOiAlcyBwcmVjaXNhIGR1biB2YWxvciIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjc1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiBjb25maWd1cmF0aW9uIGZpbGUgJyUuMjU1cycgZm9yIHJlYWRpbmc6ICVzIgorbXNnc3RyICJub24gc2UgcHVpZG8gYWJyaXIgbyBmaWNoZWlybyBkZSBjb25maWd1cmFjacOzbiBcIiUuMjU1c1wiIHBhcmEgbGVjdHVyYSIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmJhbGFuY2VkIHF1b3RlcyBpbiAnJXMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMTcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gb3B0aW9uICclcyciCittc2dzdHIgIm9wY2nDs24gXCIlc1wiIGRlc2Nvw7FlY2lkYSIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjEyMQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBuZWVkcyBhIHZhbHVlIgorbXNnc3RyICJhIG9wY2nDs24gLS0lcyB0b21hIHVuIHZhbG9yIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTI3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICInJXMnIGRvZXMgbm90IHRha2UgYSB2YWx1ZSIKK21zZ3N0ciAiYSBvcGNpw7NuIC0tJXMgbm9uIHRvbWEgdW4gdmFsb3IiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVhZCBlcnJvciBpbiBjb25maWd1cmF0aW9uIGZpbGUgYCUuMjU1cyciCittc2dzdHIgImVycm8gZGUgbGVjdHVyYSBubyBmaWNoZWlybyBkZSBjb25maWd1cmFjacOzbiBcIiUuMjU1c1wiIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgY29uZmlndXJhdGlvbiBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICJlcnJvIGFvIHBlY2hhciBvIGZpY2hlaXJvIGRlIGNvbmZpZ3VyYWNpw7NuIFwiJS4yNTVzXCIiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxNzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImVycm9yIG9wZW5pbmcgY29uZmlndXJhdGlvbiBkaXJlY3RvcnkgJyVzJyIKK21zZ3N0ciAiZXJybyBhbyBwZWNoYXIgbyBmaWNoZWlybyBkZSBjb25maWd1cmFjacOzbiBcIiUuMjU1c1wiIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjI4CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gb3B0aW9uIC0tJXMiCittc2dzdHIgIm9wY2nDs24gLS0lcyBkZXNjb8OxZWNpZGEiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBvcHRpb24gdGFrZXMgYSB2YWx1ZSIKK21zZ3N0ciAiYSBvcGNpw7NuIC0tJXMgdG9tYSB1biB2YWxvciIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjIzNworIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG9wdGlvbiBkb2VzIG5vdCB0YWtlIGEgdmFsdWUiCittc2dzdHIgImEgb3BjacOzbiAtLSVzIG5vbiB0b21hIHVuIHZhbG9yIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gb3B0aW9uIC0lYyIKK21zZ3N0ciAib3BjacOzbiAtJWMgZGVzY2/DsWVjaWRhIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjUwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0lYyBvcHRpb24gdGFrZXMgYSB2YWx1ZSIKK21zZ3N0ciAiYSBvcGNpw7NuIC0lYyB0b21hIHVuIHZhbG9yIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjU4CisjLCBjLWZvcm1hdAorbXNnaWQgIi0lYyBvcHRpb24gZG9lcyBub3QgdGFrZSBhIHZhbHVlIgorbXNnc3RyICJhIG9wY2nDs24gLSVjIG5vbiB0b21hIHVuIHZhbG9yIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjcxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJvYnNvbGV0ZSBvcHRpb24gJy0tJXMnXG4iCittc2dzdHIgIkF2aXNvOiBvcGNpw7NuIFwiLS0lc1wiIG9ic29sZXRhXG4iCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmxpY3RpbmcgYWN0aW9ucyAtJWMgKC0tJXMpIGFuZCAtJWMgKC0tJXMpIgorbXNnc3RyICJhcyBhY2Npw7NucyAtJWMgKC0tJXMpIGUgLSVjICgtLSVzKSB0ZcOxZW4gdW4gY29uZmxpY3RvIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgdmFsdWUgZm9yIGAlcycgZmllbGQiCittc2dzdHIgInZhbG9yIGR1cGxpY2FkbyBwYXJhIG8gY2FtcG8gXCIlc1wiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjE0NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1c2VyLWRlZmluZWQgZmllbGQgbmFtZSBgJS4qcycgdG9vIHNob3J0IgorbXNnc3RyICJvIG5vbWUgZG8gY2FtcG8gZGVmaW5pZG8gcG9sbyB1c3VhcmlvIFwiJS4qc1wiIMOpIGN1cnRvIGRlIG3DoWlzIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgdmFsdWUgZm9yIHVzZXItZGVmaW5lZCBmaWVsZCBgJS4qcyciCittc2dzdHIgInZhbG9yIGR1cGxpY2FkbyBwYXJhIG8gY2FtcG8gZGVmaW5pZG8gcG9sbyB1c3VhcmlvIFwiJS4qc1wiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjIwNworbXNnaWQgIkNvbmZpZ3VyZWQtVmVyc2lvbiBmb3IgcGFja2FnZSB3aXRoIGluYXBwcm9wcmlhdGUgU3RhdHVzIgorbXNnc3RyICJDb25maWd1cmVkLVZlcnNpb24gcGFyYSB1biBwYXF1ZXRlIGNvbiBTdGF0dXMgbm9uIGFwcm9waWFkbyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzICVzIGJ1dCB0cmlnZ2VycyBhcmUgYXdhaXRlZCIKK21zZ3N0ciAibyBwYXF1ZXRlIHRlbiBlc3RhZG8gJXMgcGVybyBoYWkgZGlzcGFyYWRvcmVzIGVuIGVzcGVyYSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMjIKK21zZ2lkICJwYWNrYWdlIGhhcyBzdGF0dXMgdHJpZ2dlcnMtYXdhaXRlZCBidXQgbm8gdHJpZ2dlcnMgYXdhaXRlZCIKK21zZ3N0ciAiIgorIm8gcGFxdWV0ZSB0ZW4gZXN0YWRvIHRyaWdnZXJzLWF3YWl0ZWQgcGVybyBub24gaGFpIGRpc3BhcmFkb3JlcyBlbiBlc3BlcmEiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjI4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgaGFzIHN0YXR1cyAlcyBidXQgdHJpZ2dlcnMgYXJlIHBlbmRpbmciCittc2dzdHIgIm8gcGFxdWV0ZSB0ZW4gZXN0YWRvICVzIHBlcm8gaGFpIGRpc3BhcmFkb3JlcyBwZW5kZW50ZXMiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjMyCittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzIHRyaWdnZXJzLXBlbmRpbmcgYnV0IG5vIHRyaWdnZXJzIHBlbmRpbmciCittc2dzdHIgIiIKKyJvIHBhcXVldGUgdGVuIGVzdGFkbyB0cmlnZ2Vycy1wZW5kaW5nIHBlcm8gbm9uIGhhaSBkaXNwYXJhZG9yZXMgcGVuZGVudGVzIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjI0MgorbXNnaWQgIlBhY2thZ2Ugd2hpY2ggaW4gc3RhdGUgbm90LWluc3RhbGxlZCBoYXMgY29uZmZpbGVzLCBmb3JnZXR0aW5nIHRoZW0iCittc2dzdHIgIiIKKyJVbiBwYXF1ZXRlIGVuIGVzdGFkbyBcIm5vbiBpbnN0YWxhZG9cIiB0ZW4gZmljaGVpcm9zIGRlIGNvbmZpZ3VyYWNpw7NuOyAiCisiZXNxdcOpY2Vuc2UiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzM1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuIHBhY2thZ2UgaW5mbyBmaWxlIGAlLjI1NXMnIGZvciByZWFkaW5nIgorbXNnc3RyICIiCisibm9uIHNlIHB1aWRvIGFicmlyIG8gZmljaGVpcm8gZGUgaW5mb3JtYWNpw7NuIGRlIHBhcXVldGVzIFwiJS4yNTVzXCIgcGFyYSAiCisibGVjdHVyYSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozNDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2FuJ3Qgc3RhdCBwYWNrYWdlIGluZm8gZmlsZSBgJS4yNTVzJyIKK21zZ3N0ciAibm9uIHNlIGF0b3BvdSBvIGZpY2hlaXJvIGRlIGluZm9ybWFjacOzbiBkZSBwYXF1ZXRlcyBcIiUuMjU1c1wiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjM0NworIywgYy1mb3JtYXQKK21zZ2lkICJjYW4ndCBtbWFwIHBhY2thZ2UgaW5mbyBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICIiCisibm9uIHNlIHBvZGUgZmFjZXIgbW1hcCBkbyBmaWNoZWlybyBkZSBpbmZvcm1hY2nDs24gZGUgcGFxdWV0ZXMgXCIlLjI1NXNcIiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozNTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImNhbid0IHN0YXQgcGFja2FnZSBpbmZvIGZpbGUgYCUuMjU1cyciCittc2dpZCAicmVhZGluZyBwYWNrYWdlIGluZm8gZmlsZSAnJS4yNTVzJyIKK21zZ3N0ciAibm9uIHNlIGF0b3BvdSBvIGZpY2hlaXJvIGRlIGluZm9ybWFjacOzbiBkZSBwYXF1ZXRlcyBcIiUuMjU1c1wiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjM2MworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2xvc2UgYWZ0ZXIgcmVhZDogYCUuMjU1cyciCittc2dzdHIgIm5vbiBzZSBwdWlkbyBwZWNoYXIgZGVzcG9pcyBkZSBsZXI6IFwiJS4yNTVzXCIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDA0CisjLCBjLWZvcm1hdAorbXNnaWQgIkVPRiBhZnRlciBmaWVsZCBuYW1lIGAlLipzJyIKK21zZ3N0ciAiZmluIGRlIGZpY2hlaXJvIHRyYWxvIG5vbWUgZGUgY2FtcG8gXCIlLipzXCIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDA3CisjLCBjLWZvcm1hdAorbXNnaWQgIm5ld2xpbmUgaW4gZmllbGQgbmFtZSBgJS4qcyciCittc2dzdHIgInNhbHRvIGRlIGxpw7FhIG5vIG5vbWUgZGUgY2FtcG8gXCIlLipzXCIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDEwCisjLCBjLWZvcm1hdAorbXNnaWQgIk1TRE9TIEVPRiAoXlopIGluIGZpZWxkIG5hbWUgYCUuKnMnIgorbXNnc3RyICJmaW4gZGUgZmljaGVpcm8gZGUgTVMtRE9TICheWikgbm8gbm9tZSBkZSBjYW1wbyBcIiUuKnNcIiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmllbGQgbmFtZSBgJS4qcycgbXVzdCBiZSBmb2xsb3dlZCBieSBjb2xvbiIKK21zZ3N0ciAibyBub21lIGRlIGNhbXBvIFwiJS4qc1wiIGRlYmUgaXIgc2VndWlkbyBkdW4gc2lnbm8gZGUgZG91cyBwdW50b3MiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDI1CisjLCBjLWZvcm1hdAorbXNnaWQgIkVPRiBiZWZvcmUgdmFsdWUgb2YgZmllbGQgYCUuKnMnIChtaXNzaW5nIGZpbmFsIG5ld2xpbmUpIgorbXNnc3RyICIiCisiZmluIGRlIGZpY2hlaXJvIGFudGVzIGRvIHZhbG9yIGRvIGNhbXBvIFwiJS4qc1wiIChmYWxsYSBvIHNhbHRvIGRlIGxpw7FhICIKKyJmaW5hbCkiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDI5CisjLCBjLWZvcm1hdAorbXNnaWQgIk1TRE9TIEVPRiBjaGFyIGluIHZhbHVlIG9mIGZpZWxkIGAlLipzJyAobWlzc2luZyBuZXdsaW5lPykiCittc2dzdHIgIiIKKyJjYXLDoWN0ZXIgZGUgZmluIGRlIGZpY2hlaXJvIGRlIE1TLURPUyBubyB2YWxvciBkbyBjYW1wbyBcIiUuKnNcIiAowr9mYWxsYSBvICIKKyJzYWx0byBkZSBsacOxYSBmaW5hbD8pIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQ0MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAibmV3bGluZSBpbiBmaWVsZCBuYW1lIGAlLipzJyIKK21zZ2lkICJibGFuayBsaW5lIGluIHZhbHVlIG9mIGZpZWxkICclLipzJyIKK21zZ3N0ciAic2FsdG8gZGUgbGnDsWEgbm8gbm9tZSBkZSBjYW1wbyBcIiUuKnNcIiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiRU9GIGR1cmluZyB2YWx1ZSBvZiBmaWVsZCBgJS4qcycgKG1pc3NpbmcgZmluYWwgbmV3bGluZSkiCittc2dzdHIgIiIKKyJmaW4gZGUgZmljaGVpcm8gbm8gdmFsb3IgZG8gY2FtcG8gXCIlLipzXCIgKGZhbGxhIG8gc2FsdG8gZGUgbGnDsWEgZmluYWwpIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjU0NgorbXNnaWQgInNldmVyYWwgcGFja2FnZSBpbmZvIGVudHJpZXMgZm91bmQsIG9ubHkgb25lIGFsbG93ZWQiCittc2dzdHIgIiIKKyJhdG9ww6Fyb25zZSB2YXJpYXMgZW50cmFkYXMgZGUgaW5mb3JtYWNpw7NuIGRvIHBhcXVldGUsIHPDsyBzZSBhZG1pdGUgdW5oYSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo1NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gcGFja2FnZSBpbmZvcm1hdGlvbiBpbiBgJS4yNTVzJyIKK21zZ3N0ciAibm9uIGhhaSBpbmZvcm1hY2nDs24gZGUgcGFxdWV0ZXMgZW4gXCIlLjI1NXNcIiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6NDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJwYXJzaW5nIGZpbGUgJyUuMjU1cycgbmVhciBsaW5lICVkIHBhY2thZ2UgJyUuMjU1cyc6XG4iCisiICUuMjU1cyIKK21zZ3N0ciAiYXZpc28sIG5vIGZpY2hlaXJvIFwiJS4yNTVzXCIgcHJldG8gZGEgbGnDsWEgJWQiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjQ4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisicGFyc2luZyBmaWxlICclLjI1NXMnIG5lYXIgbGluZSAlZDpcbiIKKyIgJS4yNTVzIgorbXNnc3RyICJhdmlzbywgbm8gZmljaGVpcm8gXCIlLjI1NXNcIiBwcmV0byBkYSBsacOxYSAlZCIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MTI1Cittc2dpZCAibWF5IG5vdCBiZSBlbXB0eSBzdHJpbmciCittc2dzdHIgIm5vbiBwb2RlIHNlciB1bmhhIGNhZGVhIGJhbGVpcmEiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjEyNworIywgZnV6enkKKyN8IG1zZ2lkICJtdXN0IHN0YXJ0IHdpdGggYW4gYWxwaGFudW1lcmljIgorbXNnaWQgIm11c3Qgc3RhcnQgd2l0aCBhbiBhbHBoYW51bWVyaWMgY2hhcmFjdGVyIgorbXNnc3RyICJkZWJlIGNvbWV6YXIgcG9yIHVuIGNhcsOhY3RlciBhbGZhbnVtw6lyaWNvIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoxMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2hhcmFjdGVyIGAlYycgbm90IGFsbG93ZWQgKG9ubHkgbGV0dGVycywgZGlnaXRzIGFuZCBjaGFyYWN0ZXJzIGAlcycpIgorbXNnc3RyICIiCisibm9uIHNlIGFkbWl0ZSBvIGNhcsOhY3RlciBcIiVjXCIgKHPDsyBzZSBhZG1pdGVuIGxldHJhcywgbsO6bWVyb3MgZSBjYXJhY3RlcmVzICIKKyJcIiVzXCIpIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoxNzgKKyMsIGZ1enp5CisjfCBtc2dpZCAiPG5vbmU+IgorbXNnY3R4dCAidmVyc2lvbiIKK21zZ2lkICI8bm9uZT4iCittc2dzdHIgIjxuaW5nw7puPiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjA5Cittc2dpZCAidmVyc2lvbiBzdHJpbmcgaXMgZW1wdHkiCittc2dzdHIgImEgY2FkZWEgZGUgdmVyc2nDs24gZXN0w6EgYmFsZWlyYSIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjI0Cittc2dpZCAidmVyc2lvbiBzdHJpbmcgaGFzIGVtYmVkZGVkIHNwYWNlcyIKK21zZ3N0ciAiYSBjYWRlYSBkZSB2ZXJzacOzbiB0ZW4gZXNwYXpvcyIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjMwCittc2dpZCAiZXBvY2ggaW4gdmVyc2lvbiBpcyBub3QgbnVtYmVyIgorbXNnc3RyICJhIMOpcG9jYSBuYSB2ZXJzacOzbiBub24gw6kgdW4gbsO6bWVybyIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjMyCittc2dpZCAibm90aGluZyBhZnRlciBjb2xvbiBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAibm9uIGhhaSBoYWRhIGRlc3BvaXMgZG9zIGRvdXMgcHVudG9zIG5vIG7Dum1lcm8gZGUgdmVyc2nDs24iCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjI0NworbXNnaWQgInZlcnNpb24gbnVtYmVyIGRvZXMgbm90IHN0YXJ0IHdpdGggZGlnaXQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjUwCisjLCBmdXp6eQorI3wgbXNnaWQgIm5vdGhpbmcgYWZ0ZXIgY29sb24gaW4gdmVyc2lvbiBudW1iZXIiCittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgaW4gdmVyc2lvbiBudW1iZXIiCittc2dzdHIgIm5vbiBoYWkgaGFkYSBkZXNwb2lzIGRvcyBkb3VzIHB1bnRvcyBubyBuw7ptZXJvIGRlIHZlcnNpw7NuIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyNTQKKyMsIGZ1enp5CisjfCBtc2dpZCAibm90aGluZyBhZnRlciBjb2xvbiBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ2lkICJpbnZhbGlkIGNoYXJhY3RlciBpbiByZXZpc2lvbiBudW1iZXIiCittc2dzdHIgIm5vbiBoYWkgaGFkYSBkZXNwb2lzIGRvcyBkb3VzIHB1bnRvcyBubyBuw7ptZXJvIGRlIHZlcnNpw7NuIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyOTkgbGliL2Rwa2cvcGFyc2VoZWxwLmM6MzExCisjLCBjLWZvcm1hdAorbXNnaWQgIm1pc3NpbmcgJXMiCittc2dzdHIgImZhbGxhICVzIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzozMDEgbGliL2Rwa2cvcGFyc2VoZWxwLmM6MzE0CisjLCBjLWZvcm1hdAorbXNnaWQgImVtcHR5IHZhbHVlIGZvciAlcyIKK21zZ3N0ciAidmFsb3IgYmFsZWlybyBwYXJhICVzIgorCisjOiBsaWIvZHBrZy9wa2ctZm9ybWF0LmM6ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgYCVjJyBpbiBmaWVsZCB3aWR0aFxuIgorbXNnc3RyICJjYXLDoWN0ZXIgXCIlY1wiIG5vbiB2w6FsaWRvIG5hIGFuY2h1cmEgZG8gY2FtcG9cbiIKKworIzogbGliL2Rwa2cvcGtnLWZvcm1hdC5jOjE3MgorIywgYy1mb3JtYXQKK21zZ2lkICJDbG9zaW5nIGJyYWNlIG1pc3NpbmcgaW4gZm9ybWF0XG4iCittc2dzdHIgIkZhbGxhIGEgY2hhdmUgZGUgcGVjaGUgbm8gZm9ybWF0b1xuIgorCisjOiBsaWIvZHBrZy9wa2ctc2hvdy5jOjQwCittc2dpZCAiKG5vIGRlc2NyaXB0aW9uIGF2YWlsYWJsZSkiCittc2dzdHIgIihub24gaGFpIHVuaGEgZGVzY3JpY2nDs24gZGlzcG/DsWlibGUpIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6NTUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpZ25vcmUgc2lnbmFsICVzIGJlZm9yZSBydW5uaW5nICUuMjUwcyIKK21zZ3N0ciAibm9uIHNlIHBvZGUgaWdub3JhciBvIHNpbmFsICVzIGFudGVzIGRlIGV4ZWN1dGFyIG8gc2NyaXB0IgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgdW4tY2F0Y2hpbmcgc2lnbmFsICVzOiAlc1xuIgorbXNnc3RyICJlcnJvIGFvIGRlcy1jYXB0dXJhciBvIHNpbmFsICVzOiAlc1xuIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgKHN1YnByb2Nlc3MpOiAlc1xuIgorbXNnc3RyICIlcyAoc3VicHJvY2Vzbyk6ICVzXG4iCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzo4OSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NDU0Cittc2dpZCAiZm9yayBmYWlsZWQiCittc2dzdHIgImEgY2hhbWFkYSBhIGZvcmsgZmFsbG91IgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTE5CisjLCBjLWZvcm1hdAorbXNnaWQgInN1YnByb2Nlc3MgJXMgcmV0dXJuZWQgZXJyb3IgZXhpdCBzdGF0dXMgJWQiCittc2dzdHIgIm8gc3VicHJvY2VzbyAlcyBkZXZvbHZldSBvIGVzdGFkbyBkZSBzYcOtZGEgZGUgZXJybyAlZCIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEyOAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAic3VicHJvY2VzcyAlcyB3YXMgaW50ZXJydXB0ZWQiCittc2dzdHIgImEgZXNwZXJhIGRlICVzIGZhbGxvdSIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEzMAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic3VicHJvY2VzcyAlcyBraWxsZWQgYnkgc2lnbmFsICglcyklcyIKK21zZ2lkICJzdWJwcm9jZXNzICVzIHdhcyBraWxsZWQgYnkgc2lnbmFsICglcyklcyIKK21zZ3N0ciAibyBzdWJwcm9jZXNvICVzIG1vcnJldSBwb3IgdW4gc2luYWwgKCVzKSVzIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTMyCittc2dpZCAiLCBjb3JlIGR1bXBlZCIKK21zZ3N0ciAiLCB2ZXJxdWV1c2UgYSBtZW1vcmlhIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgInN1YnByb2Nlc3MgJXMgZmFpbGVkIHdpdGggd2FpdCBzdGF0dXMgY29kZSAlZCIKK21zZ3N0ciAibyBzdWJwcm9jZXNvICVzIGZhbGxvdSBjbyBjw7NkaWdvIGRlIGVzdGFkbyBkZSBlc3BlcmEgJWQiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxNTEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQ2MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAid2FpdCBmb3Igc3VicHJvY2VzcyAlcyBmYWlsZWQiCittc2dzdHIgImEgZXNwZXJhIGRlICVzIGZhbGxvdSIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBwYWNrYWdlIG5hbWUgYCUuMjUwcycgaW4gdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorIm5vbWUgZGUgcGFxdWV0ZSBcIiUuMjUwc1wiIG5vbiB2w6FsaWRvIG5vIGZpY2hlaXJvIGRlIGRpc3BhcmFkb3JlcyBwb3Nwb3N0b3MgIgorIlwiJS4yNTBzXCIiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjgxCisjLCBjLWZvcm1hdAorbXNnaWQgInRydW5jYXRlZCB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJmaWNoZWlybyBkZSBkaXNwYXJhZG9yZXMgcG9zcG9zdG9zIFwiJS4yNTBzXCIgdHJ1bmNhZG8iCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjg1CisjLCBjLWZvcm1hdAorbXNnaWQgInN5bnRheCBlcnJvciBpbiB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIGF0IGNoYXJhY3RlciBgJXMnJXMiCittc2dzdHIgIiIKKyJlcnJvIGRlIHNpbnRheGUgbm8gZmljaGVpcm8gZGUgZGlzcGFyYWRvcmVzIHBvc3Bvc3RvcyBcIiUuMjUwc1wiIG5vIGNhcsOhY3RlciAiCisiXCIlc1wiJXMiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3Blbi9jcmVhdGUgdHJpZ2dlcnMgbG9ja2ZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKyJub24gc2UgcG9kZSBhYnJpci9jcmVhciBvIGZpY2hlaXJvIGRlIGJsb3F1ZW8gZGUgZGlzcGFyYWRvcmVzIFwiJS4yNTBzXCIiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjE0MQorIywgZnV6enkKKyN8IG1zZ2lkICJ0cmlnZ2VyZWQiCittc2dpZCAidHJpZ2dlcnMgYXJlYSIKK21zZ3N0ciAiZGlzcGFyYWRvIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibm9uIHNlIGF0b3BvdSBvIGZpY2hlaXJvIGRlIGRpc3BhcmFkb3JlcyBwb3Nwb3N0b3MgXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MTY1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5vbiBzZSBwb2RlIGFicmlyIG8gZmljaGVpcm8gZGUgZGlzcGFyYWRvcmVzIHBvc3Bvc3RvcyBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4vY3JlYXRlIG5ldyB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisibm9uIHNlIHBvZGUgYWJyaXIvY3JlYXIgbyBub3ZvIGZpY2hlaXJvIGRlIGRpc3BhcmFkb3JlcyBwb3Nwb3N0b3MgXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MjE1CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHJlYWRpbmcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiZXJybyBhbyBsZXIgbyBmaWNoZWlybyBkZSBkaXNwYXJhZG9yZXMgcG9zcG9zdG9zIFwiJS4yNTBzXCIiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjIyMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKyJub24gc2UgcG9kZSBncmF2YXIgbm8gbm92byBmaWNoZWlybyBkZSBkaXNwYXJhZG9yZXMgcG9zcG9zdG9zIFwiJS4yNTBzXCIiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjIyOAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKyJub24gc2UgcG9kZSBwZWNoYXIgbyBub3ZvIGZpY2hlaXJvIGRlIGRpc3BhcmFkb3JlcyBwb3Nwb3N0b3MgXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MjMyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisibm9uIHNlIHBvZGUgaW5zdGFsYXIgbyBub3ZvIGZpY2hlaXJvIGRlIGRpc3BhcmFkb3JlcyBwb3Nwb3N0b3MgXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjIyMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiaW52YWxpZCBvciB1bmtub3duIHN5bnRheCBpbiB0cmlnZ2VyIG5hbWUgYCUuMjUwcycgKGluIHRyaWdnZXIgaW50ZXJlc3RzIGZvciAiCisicGFja2FnZSBgJS4yNTBzJykiCittc2dzdHIgIiIKKyJzaW50YXhlIG5vbiB2w6FsaWRhIG91IGRlc2Nvw7FlY2lkYSBubyBub21lIGRvIGRpc3BhcmFkb3IgXCIlLjI1MHNcIiAobm9zICIKKyJkaXNwYXJhZG9yZXMgZGUgaW50ZXJlc2UgcGFyYSBvIHBhcXVldGUgXCIlLjI1MHNcIikiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzoyNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gdHJpZ2dlciBpbnRlcmVzdCBsaXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5vbiBzZSBwb2RlIGFicmlyIG8gZmljaGVpcm8gZGUgZGlzcGFyYWRvcmVzIGRlIGludGVyZXNlIFwiJS4yNTBzXCIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzoyOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJld2luZCB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKyJub24gc2UgcG9kZSByZXRyb2NlZGVyIG5vIGZpY2hlaXJvIGRlIGRpc3BhcmFkb3JlcyBkZSBpbnRlcmVzZSBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzA1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcycgc3ludGF4IGVycm9yOyBpbGxlZ2FsIHBhY2thZ2UgbmFtZSBgJS4yNTBzJzogIgorIiUuMjUwcyIKK21zZ3N0ciAiIgorImVycm8gZGUgc2ludGF4ZSBubyBmaWNoZWlybyBkZSBkaXNwYXJhZG9yZXMgZGUgaW50ZXJlc2UgXCIlLjI1MHNcIjsgbm9tZSBkZSAiCisicGFxdWV0ZSBcIiUuMjUwc1wiIG5vbiB2w6FsaWRvOiAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKyJub24gc2UgcG9kZSBncmF2YXIgbm8gbm92byBmaWNoZWlybyBkZSBkaXNwYXJhZG9yZXMgZGUgaW50ZXJlc2UgXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMyMQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgIiIKKyJub24gc2UgcG9kZSBjcmVhciBvIG5vdm8gZmljaGVpcm8gZGUgZGlzcGFyYWRvcmVzIGRlIGludGVyZXNlIFwiJS4yNTBzXCIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMjQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzeW5jIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgIiIKKyJub24gc2UgcG9kZSBjcmVhciBvIG5vdm8gZmljaGVpcm8gZGUgZGlzcGFyYWRvcmVzIGRlIGludGVyZXNlIFwiJS4yNTBzXCIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorIm5vbiBzZSBwb2RlIGluc3RhbGFyIG8gbm92byBmaWNoZWlybyBkZSBkaXNwYXJhZG9yZXMgZGUgaW50ZXJlc2UgXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjM0MCBsaWIvZHBrZy90cmlnbGliLmM6MzQyIGxpYi9kcGtnL3RyaWdsaWIuYzo0NzIKKyM6IHNyYy9yZW1vdmUuYzoyODYgc3JjL3JlbW92ZS5jOjM3NworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVtb3ZlIGAlLjI1MHMnIgorbXNnc3RyICJub24gc2UgcG9kZSBlbGltaW5hciBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzYwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorIm5vbiBzZSBwb2RlIGNyZWFyIG8gbm92byBmaWNoZWlybyBkZSBkaXNwYXJhZG9yZXMgZGUgaW50ZXJlc2UgXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjM4MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKyJub24gc2UgcG9kZSBjcmVhciBvIG5vdm8gZmljaGVpcm8gZGUgZGlzcGFyYWRvcmVzIGRlIGludGVyZXNlIFwiJS4yNTBzXCIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0NTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImR1cGxpY2F0ZSBmaWxlIHRyaWdnZXIgaW50ZXJlc3QgZm9yIGZpbGVuYW1lIGAlLjI1MHMnIGFuZCBwYWNrYWdlIGAlLjI1MHMnIgorbXNnc3RyICIiCisiZGlzcGFyYWRvciBkZSBpbnRlcmVzZSBudW4gZmljaGVpcm8gZHVwbGljYWRvIHBhcmEgbyBmaWNoZWlybyBcIiUuMjUwc1wiIGUgbyAiCisicGFxdWV0ZSBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDgzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorIm5vbiBzZSBwb2RlIGNyZWFyIG8gbm92byBmaWNoZWlybyBkZSBkaXNwYXJhZG9yZXMgZGUgZmljaGVpcm8gXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ5MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorIm5vbiBzZSBwb2RlIGdyYXZhciBubyBub3ZvIGZpY2hlaXJvIGRlIGRpc3BhcmFkb3JlcyBkZSBmaWNoZWlybyBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDk2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAiIgorIm5vbiBzZSBwb2RlIGNyZWFyIG8gbm92byBmaWNoZWlybyBkZSBkaXNwYXJhZG9yZXMgZGUgZmljaGVpcm8gXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ5OQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAiIgorIm5vbiBzZSBwb2RlIGNyZWFyIG8gbm92byBmaWNoZWlybyBkZSBkaXNwYXJhZG9yZXMgZGUgZmljaGVpcm8gXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjUwMworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKyJub24gc2UgcG9kZSBjcmVhciBvIG5vdm8gZmljaGVpcm8gZGUgZGlzcGFyYWRvcmVzIGRlIGZpY2hlaXJvIFwiJS4yNTBzXCIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1MDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSBhcyBgJS4yNTBzJyIKK21zZ3N0ciAiIgorIm5vbiBzZSBwb2RlIGluc3RhbGFyIG8gbm92byBmaWNoZWlybyBkZSBkaXNwYXJhZG9yZXMgZGUgZmljaGVpcm8gXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjU0MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5vbiBzZSBwb2RlIGxlciBvIGZpY2hlaXJvIGRlIGRpc3BhcmFkb3JlcyBkZSBmaWNoZWlybyBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTUyCisjLCBjLWZvcm1hdAorbXNnaWQgInN5bnRheCBlcnJvciBpbiBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImVycm8gZGUgc2ludGF4ZSBubyBmaWNoZWlybyBkZSBkaXNwYXJhZG9yZXMgZGUgZmljaGVpcm8gXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjU2MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZmlsZSB0cmlnZ2VycyByZWNvcmQgbWVudGlvbnMgaWxsZWdhbCBwYWNrYWdlIG5hbWUgYCUuMjUwcycgKGZvciBpbnRlcmVzdCBpbiAiCisiZmlsZSBgJS4yNTBzJyk6ICUuMjUwcyIKK21zZ3N0ciAiIgorIm8gcmV4aXN0cm8gZGUgZGlzcGFyYWRvcmVzIGRlIGZpY2hlaXJvIG1lbmNpb25hIG8gcGFxdWV0ZSBkZSBub21lIG5vbiB2w6FsaWRvICIKKyJcIiUuMjUwc1wiIChwYXJhIHVuIGludGVyZXNlIG5vIGZpY2hlaXJvIFwiJS4yNTBzXCIpOiAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo2NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInRyaWdnZXJzIGNpIGZpbGUgYCUuMjUwcycgY29udGFpbnMgaWxsZWdhbCB0cmlnZ2VyIHN5bnRheCBpbiB0cmlnZ2VyIG5hbWUgYCIKKyIlLjI1MHMnOiAlLjI1MHMiCittc2dzdHIgIiIKKyJvIGZpY2hlaXJvIGNpIGRlIGRpc3BhcmFkb3JlcyBcIiUuMjUwc1wiIGNvbnTDqW4gdW5oYSBzaW50YXhlIGRlIGRpc3BhcmFkb3IgIgorIm5vbiB2w6FsaWRhIG5vIG5vbWUgZGUgZGlzcGFyYWRvciBcIiUuMjUwc1wiOiAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo2ODQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gdHJpZ2dlcnMgY2kgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibm9uIHNlIHBvZGUgYWJyaXIgbyBmaWNoZWlybyBjaSBkZSBkaXNwYXJhZG9yZXMgXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjY5OQorbXNnaWQgInRyaWdnZXJzIGNpIGZpbGUgY29udGFpbnMgdW5rbm93biBkaXJlY3RpdmUgc3ludGF4IgorbXNnc3RyICIiCisibyBmaWNoZWlybyBjaSBkZSBkaXNwYXJhZG9yZXMgY29udMOpbiB1bmhhIHNpbnRheGUgZGUgZGlyZWN0aXZhIG5vbiBjb8OxZWNpZGEiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo3MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJpZ2dlcnMgY2kgZmlsZSBjb250YWlucyB1bmtub3duIGRpcmVjdGl2ZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorIm8gZmljaGVpcm8gY2kgZGUgZGlzcGFyYWRvcmVzIGNvbnTDqW4gdW5oYSBkaXJlY3RpdmEgZGVzY2/DsWVjaWRhIFwiJS4yNTBzXCIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo3NzYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSB0cmlnZ2VycyBzdGF0ZSBkaXJlY3RvcnkgYCUuMjUwcyciCittc2dzdHIgIm5vbiBzZSBwb2RlIGNyZWFyIG8gZGlyZWN0b3JpbyBkZSBlc3RhZG8gZG9zIGRpc3BhcmFkb3JlcyBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Nzc5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgb3duZXJzaGlwIG9mIHRyaWdnZXJzIHN0YXRlIGRpcmVjdG9yeSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorIm5vbiBzZSBwb2RlIGVzdGFibGVjZXIgYSBwcm9waWVkYWRlIGRvIGRpcmVjdG9yaW8gZGUgZXN0YWRvIGRvcyBkaXNwYXJhZG9yZXMgIgorIlwiJS4yNTBzXCIiCisKKyM6IGxpYi9kcGtnL3RyaWduYW1lLmM6MzQKK21zZ2lkICJlbXB0eSB0cmlnZ2VyIG5hbWVzIGFyZSBub3QgcGVybWl0dGVkIgorbXNnc3RyICJub24gc2UgYWRtaXRlbiBkaXNwYXJhZG9yZXMgY29uIG5vbWVzIGVuIGJyYW5jbyIKKworIzogbGliL2Rwa2cvdHJpZ25hbWUuYzozOAorbXNnaWQgInRyaWdnZXIgbmFtZSBjb250YWlucyBpbnZhbGlkIGNoYXJhY3RlciIKK21zZ3N0ciAibyBub21lIGRvIGRpc3BhcmFkb3IgY29udMOpbiB1biBjYXLDoWN0ZXIgbm9uIHbDoWxpZG8iCisKKyM6IGxpYi9kcGtnL3V0aWxzLmM6NTYKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVhZCBlcnJvciBpbiBgJS4yNTBzJyIKK21zZ3N0ciAiZXJybyBkZSBsZWN0dXJhIGVuIFwiJS4yNTBzXCIiCisKKyM6IGxpYi9kcGtnL3V0aWxzLmM6NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmdldHMgZ2F2ZSBhbiBlbXB0eSBzdHJpbmcgZnJvbSBgJS4yNTBzJyIKK21zZ3N0ciAiZmdldHMgZGV2b2x2ZXUgdW5oYSBjYWRlYSBiYWxlaXJhIGRlIFwiJS4yNTBzXCIiCisKKyM6IGxpYi9kcGtnL3V0aWxzLmM6NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAidG9vLWxvbmcgbGluZSBvciBtaXNzaW5nIG5ld2xpbmUgaW4gYCUuMjUwcyciCittc2dzdHIgImxpw7FhIGxvbmdhIGRlIG3DoWlzIG91IGZhbGxhIHVuIHJldG9ybm8gZGUgY2Fycm8gZW4gXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvdXRpbHMuYzo3NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVvZiByZWFkaW5nIGAlLjI1MHMnIgorbXNnc3RyICJmaW4gZGUgZmljaGVpcm8gaW5lc3BlcmFkYSBhbyBsZXIgXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvdmFyYnVmLmM6ODIgbGliL2Rwa2cvdmFyYnVmLmM6ODgKK21zZ2lkICJlcnJvciBmb3JtYXR0aW5nIHN0cmluZyBpbnRvIHZhcmJ1ZiB2YXJpYWJsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxNzkgc3JjL2FyY2hpdmVzLmM6MjAwIHNyYy9hcmNoaXZlcy5jOjcyNAorbXNnaWQgImVycm9yIHJlYWRpbmcgZnJvbSBkcGtnLWRlYiBwaXBlIgorbXNnc3RyICJlcnJvIGFvIGxlciBkYSBjYW5sZSBkZSBkcGtnLWRlYiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTk1CisjLCBjLWZvcm1hdAorbXNnaWQgInNraXBwZWQgdW5wYWNraW5nIGZpbGUgJyUuMjU1cycgKHJlcGxhY2VkIG9yIGV4Y2x1ZGVkPykiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MjQ2IHNyYy9hcmNoaXZlcy5jOjI1MAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIHRpbWVzdGFtcHMgb2YgYCUuMjU1cyciCittc2dzdHIgImVycm8gYW8gZXN0YWJsZWNlciBhcyBtYXJjYXMgZGUgdGVtcG8gZGUgXCIlLjI1NXNcIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MjYyCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHNldHRpbmcgb3duZXJzaGlwIG9mIHN5bWxpbmsgYCUuMjU1cyciCittc2dzdHIgImVycm8gYW8gZXN0YWJsZWNlciBvIHByb3BpZXRhcmlvIGRhIGxpZ2F6w7NuIHNpbWLDs2xpY2EgXCIlLjI1NXNcIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MjY1IHNyYy9hcmNoaXZlcy5jOjczNCBzcmMvc3RhdGNtZC5jOjE2MworIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIG93bmVyc2hpcCBvZiBgJS4yNTVzJyIKK21zZ3N0ciAiZXJybyBhbyBlc3RhYmxlY2VyIG8gcHJvcGlldGFyaW8gZGUgXCIlLjI1NXNcIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MjY3IHNyYy9hcmNoaXZlcy5jOjczNiBzcmMvc3RhdGNtZC5jOjE2NQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIHBlcm1pc3Npb25zIG9mIGAlLjI1NXMnIgorbXNnc3RyICJlcnJvIGFvIGVzdGFibGVjZXIgb3MgcGVybWlzb3MgZGUgXCIlLjI1NXNcIiIKKworIzogc3JjL2FyY2hpdmVzLmM6Mzk1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBzdGF0IChkZXJlZmVyZW5jZSkgZXhpc3Rpbmcgc3ltbGluayBgJS4yNTBzJyIKK21zZ3N0ciAiIgorIm5vbiBzZSBwdWlkbyBhdG9wYXIgKGRlc3JlZmVyZW5jaWFyKSBhIGxpZ2F6w7NuIHNpbWLDs2xpY2EgZXhpc3RlbnRlIFwiJS4yNTBzXCIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjQxNworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZmFpbGVkIHRvIHN0YXQgKGRlcmVmZXJlbmNlKSBwcm9wb3NlZCBuZXcgc3ltbGluayB0YXJnZXQgYCUuMjUwcycgZm9yICIKKyJzeW1saW5rIGAlLjI1MHMnIgorbXNnc3RyICIiCisibm9uIHNlIHB1aWRvIGF0b3BhciAoZGVzcmVmZXJlbmNpYXIpIG8gbm92byBkZXN0aW5vIHByb3Bvc3RvIFwiJS4yNTBzXCIgcGFyYSAiCisiYSBsaWdhesOzbiBzaW1iw7NsaWNhIFwiJS4yNTBzXCIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjQ3NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidHJ5aW5nIHRvIG92ZXJ3cml0ZSBgJS4yNTBzJywgd2hpY2ggaXMgdGhlIGRpdmVydGVkIHZlcnNpb24gb2YgYCIKKyIlLjI1MHMnIChwYWNrYWdlOiAlLjEwMHMpIgorbXNnc3RyICIiCisidMOpbnRhc2Ugc29icmVzY3JpYmlyIFwiJS4yNTBzXCIsIHF1ZSDDqSBhIHZlcnNpw7NuIGRlc3ZpYWRhIGRlIFwiJS4yNTBzIgorIlwiIChwYXF1ZXRlOiAlLjEwMHMpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo0ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJ5aW5nIHRvIG92ZXJ3cml0ZSBgJS4yNTBzJywgd2hpY2ggaXMgdGhlIGRpdmVydGVkIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dzdHIgIiIKKyJ0w6ludGFzZSBzb2JyZXNjcmliaXIgXCIlLjI1MHNcIiwgcXVlIMOpIGEgdmVyc2nDs24gZGVzdmlhZGEgZGUgXCIlLjI1MHNcIiIKKworIzogc3JjL2FyY2hpdmVzLmM6NTExCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGAlLjI1NXMnICh3aGljaCBJIHdhcyBhYm91dCB0byBpbnN0YWxsKSIKK21zZ3N0ciAibm9uIHNlIHBvZGUgYXRvcGFyIFwiJS4yNTVzXCIgKHF1ZSBzZSDDrWEgaW5zdGFsYXIpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo1MTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVuYWJsZSB0byBjbGVhbiB1cCBtZXNzIHN1cnJvdW5kaW5nIGAlLjI1NXMnIGJlZm9yZSBpbnN0YWxsaW5nIGFub3RoZXIgIgorInZlcnNpb24iCittc2dzdHIgIiIKKyJub24gc2UgcG9kZSBsaW1wYXIgbyBiYXJ1bGxvIHF1ZSByb2RlYSBhIFwiJS4yNTVzXCIgYW50ZXMgZGUgaW5zdGFsYXIgb3V0cmEgIgorInZlcnNpw7NuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo1MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgcmVzdG9yZWQgYCUuMjU1cycgYmVmb3JlIGluc3RhbGxpbmcgYW5vdGhlciB2ZXJzaW9uIgorbXNnc3RyICIiCisibm9uIHNlIHBvZGUgYXRvcGFyIG8gXCIlLjI1NXNcIiByZXN0YXVyYWRvIGFudGVzIGRlIGluc3RhbGFyIG91dHJhIHZlcnNpw7NuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo1NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiYXJjaGl2ZSBjb250YWluZWQgb2JqZWN0IGAlLjI1NXMnIG9mIHVua25vd24gdHlwZSAweCV4IgorbXNnc3RyICJvIGFycXVpdm8gY29udGnDsWEgdW4gb2J4ZWN0byBcIiUuMjU1c1wiIGRlIHRpcG8gMHgleCBkZXNjb8OxZWNpZG8iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjYyNiBzcmMvZGl2ZXJ0Y21kLmM6MTUwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo2ODIKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjIyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjg0CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTQ0MSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTY4MAorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxNjcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNDQKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTI3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW5ub3Qgc3RhdCBvbGQgbmFtZSBgJXMnOiAlcyIKK21zZ2lkICJjYW5ub3Qgc3RhdCBmaWxlICclcyciCittc2dzdHIgIm5vbiBzZSBhdG9wYSBvIG5vbWUgYW50aWdvIFwiJXNcIjogJXMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjY0MQorIywgYy1mb3JtYXQKK21zZ2lkICJSZXBsYWNpbmcgZmlsZXMgaW4gb2xkIHBhY2thZ2UgJXMgLi4uXG4iCittc2dzdHIgIkEgc3Vic3RpdHXDrXIgb3MgZmljaGVpcm9zIGRvIHBhcXVldGUgYW50aWdvICVzIC4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVwbGFjZWQgYnkgZmlsZXMgaW4gaW5zdGFsbGVkIHBhY2thZ2UgJXMgLi4uXG4iCittc2dzdHIgIlN1YnN0aXR1w61yb25zZSBwb3IgZmljaGVpcm9zIGRvIHBhcXVldGUgaW5zdGFsYWRvICVzIC4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ0cnlpbmcgdG8gb3ZlcndyaXRlIGRpcmVjdG9yeSAnJS4yNTBzJyBpbiBwYWNrYWdlICUuMjUwcyAlLjI1MHMgd2l0aCAiCisibm9uZGlyZWN0b3J5IgorbXNnc3RyICIiCisidMOpbnRhc2Ugc29icmVzY3JpYmlyIG8gZGlyZWN0b3JpbyBcIiUuMjUwc1wiIGRvIHBhcXVldGUgJS4yNTBzIGNvbiBhbGdvIHF1ZSAiCisibm9uIMOpIHVuIGRpcmVjdG9yaW8iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjY2MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidHJ5aW5nIHRvIG92ZXJ3cml0ZSAnJS4yNTBzJywgd2hpY2ggaXMgYWxzbyBpbiBwYWNrYWdlICUuMjUwcyAlLjI1MHMiCittc2dzdHIgInTDqW50YXNlIHNvYnJlc2NyaWJpciBcIiUuMjUwc1wiLCBxdWUgdGFtw6luIGVzdMOhIG5vIHBhcXVldGUgJS4yNTBzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3MTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgYCUuMjU1cycgKHdoaWxlIHByb2Nlc3NpbmcgYCUuMjU1cycpIgorbXNnc3RyICJub24gc2UgcG9kZSBsZXIgXCIlLjI1NXNcIiAoZW4gXCIlLjI1NXNcIikiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjcxOAorIywgYy1mb3JtYXQKK21zZ2lkICJiYWNrZW5kIGRwa2ctZGViIGR1cmluZyBgJS4yNTVzJyIKK21zZ3N0ciAiYmFjay1lbmQgZHBrZy1kZWIgZHVyYW50ZSBcIiUuMjU1c1wiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NDQgc3JjL2FyY2hpdmVzLmM6OTA4IHNyYy9hcmNoaXZlcy5jOjk0OQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nL3dyaXRpbmcgYCUuMjU1cyciCittc2dzdHIgImVycm8gYW8gcGVjaGFyIG91IGdyYXZhciBlbiBcIiUuMjU1c1wiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgcGlwZSBgJS4yNTVzJyIKK21zZ3N0ciAiZXJybyBhbyBjcmVhciBhIGNhbmxlIFwiJS4yNTVzXCIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc1MyBzcmMvYXJjaGl2ZXMuYzo3NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgZGV2aWNlIGAlLjI1NXMnIgorbXNnc3RyICJlcnJvIGFvIGNyZWFyIG8gZGlzcG9zaXRpdm8gXCIlLjI1NXNcIiIKKworIzogc3JjL2FyY2hpdmVzLmM6NzcxCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIGhhcmQgbGluayBgJS4yNTVzJyIKK21zZ3N0ciAiZXJybyBhbyBjcmVhciBhIGxpZ2F6w7NuIGR1cmEgXCIlLjI1NXNcIiIKKworIzogc3JjL2FyY2hpdmVzLmM6Nzc3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo1MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgc3ltYm9saWMgbGluayBgJS4yNTVzJyIKK21zZ3N0ciAiZXJybyBhbyBjcmVhciBhIGxpZ2F6w7NuIHNpbWLDs2xpY2EgXCIlLjI1NXNcIiIKKworIzogc3JjL2FyY2hpdmVzLmM6NzgzCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIGRpcmVjdG9yeSBgJS4yNTVzJyIKK21zZ3N0ciAiZXJybyBhbyBjcmVhciBvIGRpcmVjdG9yaW8gXCIlLjI1NXNcIiIKKworIzogc3JjL2FyY2hpdmVzLmM6ODIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBtb3ZlIGFzaWRlIGAlLjI1NXMnIHRvIGluc3RhbGwgbmV3IHZlcnNpb24iCittc2dzdHIgIm5vbiBzZSBwb2RlIGFwYXJ0YXIgXCIlLjI1NXNcIiBwYXJhIGluc3RhbGFyIGEgbm92YSB2ZXJzacOzbiIKKworIzogc3JjL2FyY2hpdmVzLmM6ODMyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzozMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgbGluayBgJS4yNTVzJyIKK21zZ3N0ciAibm9uIHNlIHBvZGUgbGVyIGEgbGlnYXrDs24gXCIlLjI1NXNcIiIKKworIzogc3JjL2FyY2hpdmVzLmM6ODM0IHNyYy9jb25maWd1cmUuYzo0MjMKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ltYm9saWMgbGluayAnJS4yNTBzJyBzaXplIGhhcyBjaGFuZ2VkIGZyb20gJWpkIHRvICV6ZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG1ha2UgYmFja3VwIHN5bWxpbmsgZm9yIGAlLjI1NXMnIgorbXNnc3RyICJub24gc2UgcG9kZSBmYWNlciB1bmhhIGNvcGlhIGRhIGxpZ2F6w7NuIHNpbWLDs2xpY2EgXCIlLjI1NXNcIiIKKworIzogc3JjL2FyY2hpdmVzLmM6ODQxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaG93biBiYWNrdXAgc3ltbGluayBmb3IgYCUuMjU1cyciCittc2dzdHIgIiIKKyJub24gc2UgcG9kZSBjYW1iaWFyIG8gcHJvcGlldGFyaW8gZGEgY29waWEgZGEgbGlnYXrDs24gc2ltYsOzbGljYSBcIiUuMjU1c1wiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4NDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG1ha2UgYmFja3VwIGxpbmsgb2YgYCUuMjU1cycgYmVmb3JlIGluc3RhbGxpbmcgbmV3IHZlcnNpb24iCittc2dzdHIgIiIKKyJub24gc2UgcG9kZSBmYWNlciB1bmhhIGNvcGlhIGRhIGxpZ2F6w7NuIHNpbWLDs2xpY2EgXCIlLjI1NXNcIiBhbnRlcyBkZSAiCisiaW5zdGFsYXIgYSBub3ZhIHZlcnNpw7NuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4NjMgc3JjL2FyY2hpdmVzLmM6OTU3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyB2ZXJzaW9uIG9mIGAlLjI1NXMnIgorbXNnc3RyICJub24gc2UgcG9kZSBpbnN0YWxhciB1bmhhIG5vdmEgdmVyc2nDs24gZGUgXCIlLjI1NXNcIiIKKworIzogc3JjL2FyY2hpdmVzLmM6OTAyIHNyYy9hcmNoaXZlcy5jOjk0NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gJyUuMjU1cyciCittc2dzdHIgIm5vbiBzZSBwb2RlIGNyZWFyIFwiJS4yNTVzXCIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjk0NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgZmlsZSAnJS4yNTVzJyIKK21zZ3N0ciAibm9uIHNlIHB1aWRvIHNhY2FyIGRvIGJ1ZmZlciBcIiUuMjU1c1wiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDAwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiaWdub3JpbmcgZGVwZW5kZW5jeSBwcm9ibGVtIHdpdGggJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiBhdmlzbyAtIGlnbsOzcmFzZSBvIHByb2JsZW1hIGRlIGRlcGVuZGVuY2lhcyBjb24gJXM6XG4iCisiJXMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJjb25zaWRlcmluZyBkZWNvbmZpZ3VyYXRpb24gb2YgZXNzZW50aWFsXG4iCisiIHBhY2thZ2UgJXMsIHRvIGVuYWJsZSAlcy4iCittc2dzdHIgIiIKKyJkcGtnOiBhdmlzbyAtIGEgY29uc2lkZXJhciBhIGRlc2NvbmZpZ3VyYWNpw7NuIGRvIHBhcXVldGUgZXNlbmNpYWxcbiIKKyIgJXMsIHBhcmEgYWN0aXZhciAlcy5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAwOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogbm8sICVzIGlzIGVzc2VudGlhbCwgd2lsbCBub3QgZGVjb25maWd1cmVcbiIKKyIgaXQgaW4gb3JkZXIgdG8gZW5hYmxlICVzLlxuIgorbXNnc3RyICIiCisiZHBrZzogbm9uLCAlcyDDqSBlc2VuY2lhbCwgbm9uIHNlIGhhIGRlc2NvbmZpZ3VyYXIgcGFyYVxuIgorIiBhY3RpdmFyICVzLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDIyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBubywgY2Fubm90IHByb2NlZWQgd2l0aCAlcyAoLS1hdXRvLWRlY29uZmlndXJlIHdpbGwgaGVscCk6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiBub24sIG5vbiBzZSBwb2RlIGNvbnRpbnVhciBjb24gJXMgKC0tYXV0by1kZWNvbmZpZ3VyZSBoYSBheHVkYXIpOlxuIgorIiVzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDMyCisjLCBjLWZvcm1hdAorbXNnaWQgInJlbW92YWwgb2YgJS4yNTBzIgorbXNnc3RyICJlbGltaW5hY2nDs24gZGUgJS4yNTBzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDU3CisjLCBjLWZvcm1hdAorbXNnaWQgImluc3RhbGxhdGlvbiBvZiAlLjI1MHMiCittc2dzdHIgImluc3RhbGFjacOzbiBkZSAlLjI1MHMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IGNvbnNpZGVyaW5nIGRlY29uZmlndXJhdGlvbiBvZiAlcywgd2hpY2ggd291bGQgYmUgYnJva2VuIGJ5ICVzIC4uLlxuIgorbXNnc3RyICIiCisiZHBrZzogYSBjb25zaWRlcmFyIGEgZGVzY29uZmlndXJhY2nDs24gZGUgJXMsIHF1ZSBoYWLDrWEgcm9tcGVyIHBvciAlcyAuLi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA2NQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiB5ZXMsIHdpbGwgZGVjb25maWd1cmUgJXMgKGJyb2tlbiBieSAlcykuXG4iCittc2dzdHIgImRwa2c6IHNpLCBoYXNlIGRlc2NvbmZpZ3VyYXIgJXMgKHJvdG8gcG9yICVzKS5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA2OSBzcmMvYXJjaGl2ZXMuYzoxMTg3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiByZWdhcmRpbmcgJXMgY29udGFpbmluZyAlczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6IHJlc3BlY3RvIGEgJXMgcXVlIGNvbnTDqW4gJXM6XG4iCisiJXMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNzcKKyMsIGZ1enp5Cittc2dpZCAiaWdub3JpbmcgYnJlYWthZ2UsIG1heSBwcm9jZWVkIGFueXdheSEiCittc2dzdHIgImRwa2c6IGF2aXNvIC0gYSBpZ25vcmFyIGEgcm90dXJhLCBoYXNlIGNvbnRpbnVhciBpZ3VhbG1lbnRlXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImluc3RhbGxpbmcgJS4yNTBzIHdvdWxkIGJyZWFrICUuMjUwcywgYW5kXG4iCisiIGRlY29uZmlndXJhdGlvbiBpcyBub3QgcGVybWl0dGVkICgtLWF1dG8tZGVjb25maWd1cmUgbWlnaHQgaGVscCkiCittc2dzdHIgIiIKKyJhIGluc3RhbGFjacOzbiBkZSAlLjI1MHMgaGFiw61hIHJvbXBlciAlLjI1MHMsIGVcbiIKKyIgbm9uIHNlIHBlcm1pdGUgYSBkZXNjb25maWd1cmFjacOzbiAoLS1hdXRvLWRlY29uZmlndXJlIHBvZGUgYXh1ZGFyKSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA4NgorIywgYy1mb3JtYXQKK21zZ2lkICJpbnN0YWxsaW5nICUuMjUwcyB3b3VsZCBicmVhayBleGlzdGluZyBzb2Z0d2FyZSIKK21zZ3N0ciAiYSBpbnN0YWxhY2nDs24gZGUgJS4yNTBzIGhhYsOtYSByb21wZXIgc29mdHdhcmUgZXhpc3RlbnRlIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTE2CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IGNvbnNpZGVyaW5nIHJlbW92aW5nICVzIGluIGZhdm91ciBvZiAlcyAuLi5cbiIKK21zZ3N0ciAiZHBrZzogYSBjb25zaWRlcmFyIGEgZWxpbWluYWNpw7NuIGRlICVzIGVuIGZhdm9yIGRlICVzIC4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTIyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGlzIG5vdCBwcm9wZXJseSBpbnN0YWxsZWQgLSBpZ25vcmluZyBhbnkgZGVwZW5kZW5jaWVzIG9uIGl0LlxuIgorbXNnc3RyICIiCisiJXMgbm9uIGVzdMOhIGluc3RhbGFkbyBjb3JyZWN0YW1lbnRlIC0gaWduw7NyYW5zZSB0w7NkYWxhcyBkZXBlbmRlbmNpYXMgZGVsLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTUxCisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IG1heSBoYXZlIHRyb3VibGUgcmVtb3ZpbmcgJXMsIGFzIGl0IHByb3ZpZGVzICVzIC4uLlxuIgorbXNnc3RyICJkcGtnOiBwb2RlIHRlcnNlIHByb2JsZW1hcyBwYXJhIGVsaW1pbmFyICVzLCB4YSBxdWUgZm9ybmVjZSAlcyAuLi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE2NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IHBhY2thZ2UgJXMgcmVxdWlyZXMgcmVpbnN0YWxsYXRpb24sIGJ1dCB3aWxsIHJlbW92ZSBhbnl3YXkgYXMgeW91ICIKKyJyZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiIKKyJkcGtnOiBvIHBhcXVldGUgJXMgcHJlY2lzYSBkdW5oYSByZWluc3RhbGFjacOzbiwgcGVybyBoYXNlIGVsaW1pbmFyIGNvbW8gIgorInBpZGUuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExNjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogcGFja2FnZSAlcyByZXF1aXJlcyByZWluc3RhbGxhdGlvbiwgd2lsbCBub3QgcmVtb3ZlLlxuIgorbXNnc3RyICJkcGtnOiBvIHBhcXVldGUgJXMgcHJlY2lzYSBkdW5oYSByZWluc3RhbGFjacOzbiwgbm9uIHNlIGhhIGVsaW1pbmFyLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTc4CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IHllcywgd2lsbCByZW1vdmUgJXMgaW4gZmF2b3VyIG9mICVzLlxuIgorbXNnc3RyICJkcGtnOiBzaSwgaGFzZSBlbGltaW5hciAlcyBlbiBmYXZvciBkZSAlcy5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE5MAorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mbGljdGluZyBwYWNrYWdlcyAtIG5vdCBpbnN0YWxsaW5nICUuMjUwcyIKK21zZ3N0ciAicGFxdWV0ZXMgY29uIGNvbmZsaWN0b3MgLSBub24gc2UgaW5zdGFsYSAlLjI1MHMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExOTEKKyMsIGZ1enp5Cittc2dpZCAiaWdub3JpbmcgY29uZmxpY3QsIG1heSBwcm9jZWVkIGFueXdheSEiCittc2dzdHIgImRwa2c6IGF2aXNvIC0gYSBpZ25vcmFyIG8gY29uZmxpY3RvLCBoYXNlIGNvbnRpbnVhciBpZ3VhbG1lbnRlXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyMzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyAtLXJlY3Vyc2l2ZSBuZWVkcyBhdCBsZWFzdCBvbmUgcGF0aCBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyAtLXJlY3Vyc2l2ZSBwcmVjaXNhIGRlIGFsb21lbm9zIHVuIGFyZ3VtZW50byBkZSBydXRhIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjQ1CisjLCBmdXp6eQorbXNnaWQgImZpbmQgZm9yIGRwa2cgLS1yZWN1cnNpdmUiCittc2dzdHIgIm5vbiBzZSBwdWlkbyBleGVjdXRhciBcImZpbmRcIiBwYXJhIC0tcmVjdXJzaXZlIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjY2Cittc2dpZCAiZmFpbGVkIHRvIGZkb3BlbiBmaW5kJ3MgcGlwZSIKK21zZ3N0ciAibm9uIHNlIHB1aWRvIGFicmlyIGEgY2FubGUgZGUgZmluZCIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3MgorbXNnaWQgImVycm9yIHJlYWRpbmcgZmluZCdzIHBpcGUiCittc2dzdHIgImVycm8gYW8gbGVyIGRhIGNhbmxlIGRlIGZpbmQiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNzMKK21zZ2lkICJlcnJvciBjbG9zaW5nIGZpbmQncyBwaXBlIgorbXNnc3RyICJlcnJvIGFvIHBlY2hhciBhIGNhbmxlIGRlIGZpbmQiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmluZCBmb3IgLS1yZWN1cnNpdmUgcmV0dXJuZWQgdW5oYW5kbGVkIGVycm9yICVpIgorbXNnc3RyICJhIGV4ZWN1Y2nDs24gZGUgXCJmaW5kXCIgcGFyYSAtLXJlY3Vyc2l2ZSB2b2x0b3UgbyBlcnJvICVpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjc5Cittc2dpZCAic2VhcmNoZWQsIGJ1dCBmb3VuZCBubyBwYWNrYWdlcyAoZmlsZXMgbWF0Y2hpbmcgKi5kZWIpIgorbXNnc3RyICIiCisiYnVzY291c2UsIHBlcm8gbm9uIHNlIGF0b3BvdSBuaW5nw7puIHBhcXVldGUgKGZpY2hlaXJvcyBxdWUgZW5jYWl4YW4gY29uICouIgorImRlYikiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhdCBsZWFzdCBvbmUgcGFja2FnZSBhcmNoaXZlIGZpbGUgYXJndW1lbnQiCittc2dzdHIgIiIKKyItLSVzIHByZWNpc2EgZGUgYWxvbWVub3MgdW4gYXJndW1lbnRvIGRlIGZpY2hlaXJvIGRlIGFycXVpdm8gZGUgcGFxdWV0ZSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTMyNSBzcmMvZGl2ZXJ0Y21kLmM6Nzggc3JjL2RpdmVydGNtZC5jOjExOAorIzogc3JjL2VucXVpcnkuYzoxNjYgc3JjL2VucXVpcnkuYzoyNzkgc3JjL2VucXVpcnkuYzo0NDkgc3JjL2VucXVpcnkuYzo0NTEKKyM6IHNyYy9lbnF1aXJ5LmM6NDY0IHNyYy9tYWluLmM6NjYgc3JjL21haW4uYzoxNjMgc3JjL21haW4uYzozMTQKKyM6IHNyYy9tYWluLmM6NDkzIHNyYy9wYWNrYWdlcy5jOjI1NCBzcmMvcXVlcnljbWQuYzoyNTIgc3JjL3F1ZXJ5Y21kLmM6MzU1CisjOiBzcmMvcXVlcnljbWQuYzozOTYgc3JjL3F1ZXJ5Y21kLmM6NDA0IHNyYy9xdWVyeWNtZC5jOjQ0OCBzcmMvcXVlcnljbWQuYzo1MTcKKyM6IHNyYy9xdWVyeWNtZC5jOjYwNiBzcmMvcXVlcnljbWQuYzo2NTAgc3JjL3NlbGVjdC5jOjc5IHNyYy9zdGF0Y21kLmM6NjgKKyM6IHNyYy9zdGF0Y21kLmM6OTggc3JjL3RyaWdjbWQuYzo1OCBzcmMvdHJpZ2NtZC5jOjkwIGRwa2ctZGViL2J1aWxkLmM6NDQxCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjE3IGRwa2ctZGViL2V4dHJhY3QuYzoyNTAgZHBrZy1kZWIvaW5mby5jOjIwMworIzogZHBrZy1kZWIvaW5mby5jOjI2NSBkcGtnLWRlYi9tYWluLmM6NjAgZHBrZy1kZWIvbWFpbi5jOjEyNgorIzogZHBrZy1zcGxpdC9pbmZvLmM6MjU3IGRwa2ctc3BsaXQvbWFpbi5jOjU0IGRwa2ctc3BsaXQvbWFpbi5jOjk4CisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTQ0IGRwa2ctc3BsaXQvcXVldWUuYzoyODAKK21zZ2lkICI8c3RhbmRhcmQgb3V0cHV0PiIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzI2IHNyYy9wYWNrYWdlcy5jOjI1NSBzcmMvcXVlcnljbWQuYzoyNTMKKyM6IHNyYy9xdWVyeWNtZC5jOjM1MyBzcmMvcXVlcnljbWQuYzo0NTQgc3JjL3F1ZXJ5Y21kLmM6NTE4IHNyYy9zZWxlY3QuYzo4MAorIzogZHBrZy1zcGxpdC9tYWluLmM6MTY5IGRwa2ctc3BsaXQvcXVldWUuYzoyMTgKK21zZ2lkICI8c3RhbmRhcmQgZXJyb3I+IgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzNjcKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIlNlbGVjdGluZyBwcmV2aW91c2x5IGRlc2VsZWN0ZWQgcGFja2FnZSAlcy5cbiIKK21zZ2lkICJTZWxlY3RpbmcgcHJldmlvdXNseSB1bnNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dzdHIgIkEgZXNjb2xsZXIgbyBwYXF1ZXRlICVzIGFudGVyaW9ybWVudGUgZGVzZWxlY2Npb25hZG8uXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzNzEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIlNraXBwaW5nIGRlc2VsZWN0ZWQgcGFja2FnZSAlcy5cbiIKK21zZ2lkICJTa2lwcGluZyB1bnNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dzdHIgIkEgb21pdGlyIG8gcGFxdWV0ZSBkZXNlbGVjY2lvbmFkbyAlcy5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTM4NworIywgYy1mb3JtYXQKK21zZ2lkICJWZXJzaW9uICUuMjUwcyBvZiAlLjI1MHMgYWxyZWFkeSBpbnN0YWxsZWQsIHNraXBwaW5nLlxuIgorbXNnc3RyICJBIHZlcnNpw7NuICUuMjUwcyBkZSAlLjI1MHMgeGEgZXN0w6EgaW5zdGFsYWRhLCBvbcOtdGVzZS5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTM5NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZG93bmdyYWRpbmcgJS4yNTBzIGZyb20gJS4yNTBzIHRvICUuMjUwcy4iCittc2dzdHIgIiVzIC0gYXZpc286IGEgZGVzYWN0dWFsaXphciAlLjI1MHMgZGUgJS4yNTBzIGEgJS4yNTBzLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxNDAyCisjLCBjLWZvcm1hdAorbXNnaWQgIldpbGwgbm90IGRvd25ncmFkZSAlLjI1MHMgZnJvbSB2ZXJzaW9uICUuMjUwcyB0byAlLjI1MHMsIHNraXBwaW5nLlxuIgorbXNnc3RyICJOb24gc2UgaGEgZGVzYWN0dWFsaXphciAlLjI1MHMgZGEgdmVyc2nDs24gJS4yNTBzIGEgJS4yNTBzLCBvbcOtdGVzZS5cbiIKKworIzogc3JjL2NsZWFudXAuYzo4NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidW5hYmxlIHRvIHJlbW92ZSBuZXdseS1pbnN0YWxsZWQgdmVyc2lvbiBvZiBgJS4yNTBzJyB0byBhbGxvdyByZWluc3RhbGxhdGlvbiAiCisib2YgYmFja3VwIGNvcHkiCittc2dzdHIgIiIKKyJub24gc2UgcG9kZSBlbGltaW5hciBhIHZlcnNpw7NuIHJlY8OpbiBpbnN0YWxhZGEgZGUgXCIlLjI1MHNcIiBwYXJhIHBlcm1pdGlyIGEgIgorInJlaW5zdGFsYWNpw7NuIGRhIGNvcGlhIGRlIHNlZ3VyaWRhZGUiCisKKyM6IHNyYy9jbGVhbnVwLmM6OTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlc3RvcmUgYmFja3VwIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dzdHIgIm5vbiBzZSBwb2RlIHJlY3VwZXJhciBhIGNvcGlhIGRlIHNlZ3VyaWRhZGUgZGUgXCIlLjI1MHNcIiIKKworIzogc3JjL2NsZWFudXAuYzo5NworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHJlc3RvcmUgYmFja3VwIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBiYWNrdXAgY29weSBvZiAnJS4yNTBzJyIKK21zZ3N0ciAibm9uIHNlIHBvZGUgcmVjdXBlcmFyIGEgY29waWEgZGUgc2VndXJpZGFkZSBkZSBcIiUuMjUwc1wiIgorCisjOiBzcmMvY2xlYW51cC5jOjEwMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIG5ld2x5LWluc3RhbGxlZCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICJub24gc2UgcG9kZSBlbGltaW5hciBhIHZlcnNpw7NuIHJlY8OpbiBpbnN0YWxhZGEgZGUgXCIlLjI1MHNcIiIKKworIzogc3JjL2NsZWFudXAuYzoxMDgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBuZXdseS1leHRyYWN0ZWQgdmVyc2lvbiBvZiBgJS4yNTBzJyIKK21zZ3N0ciAibm9uIHNlIHBvZGUgZWxpbWluYXIgYSB2ZXJzacOzbiByZWPDqW4gZXh0cmHDrWRhIGRlIFwiJS4yNTBzXCIiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxMDQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byBzdGF0IG5ldyBkaXN0IGNvbmZmaWxlIGAlLjI1MHMnIgorbXNnaWQgInVuYWJsZSB0byBzdGF0IG5ldyBkaXN0cmlidXRlZCBjb25mZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAibm9uIHNlIGF0b3BhIG8gbm92byBmaWNoZWlybyBkZSBjb25maWd1cmFjacOzbiBcIiUuMjUwc1wiIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGN1cnJlbnQgaW5zdGFsbGVkIGNvbmZmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisibm9uIHNlIGF0b3BhIG8gZmljaGVpcm8gZGUgY29uZmlndXJhY2nDs24gaW5zdGFsYWRvIGFjdHVhbG1lbnRlIFwiJS4yNTBzXCIiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxMjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIkNvbmZpZ3VyYXRpb24gZmlsZSBgJXMnLCBkb2VzIG5vdCBleGlzdCBvbiBzeXN0ZW0uXG4iCisiSW5zdGFsbGluZyBuZXcgY29uZmlnIGZpbGUgYXMgeW91IHJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiIgorIlxuIgorIk8gZmljaGVpcm8gZGUgY29uZmlndXJhY2nDs24gXCIlc1wiIG5vbiBleGlzdGUgbm8gc2V1IHNpc3RlbWEuXG4iCisiQSBpbnN0YWxhciBvIG5vdm8gZmljaGVpcm8gZGUgY29uZmlndXJhY2nDs24gcG9sYSBzw7phIHBldGljacOzbi5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE2OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW1vdmUgb2xkIGJhY2t1cCAnJS4yNTBzJzogJXMiCittc2dzdHIgImRwa2c6ICVzOiBhdmlzbyAtIG5vbiBzZSBwdWlkbyBib3JyYXIgYSBjb3BpYSBhbnRpZ2EgXCIlLjI1MHNcIjogJXNcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE3NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW5hbWUgJyUuMjUwcycgdG8gJyUuMjUwcyc6ICVzIgorbXNnc3RyICIiCisiZHBrZzogJXM6IGF2aXNvIC0gbm9uIHNlIHB1aWRvIGNhbWJpYXIgbyBub21lIGRlIFwiJS4yNTBzXCIgYSBcIiUuMjUwc1wiOiAiCisiJXNcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE4MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW1vdmUgJyUuMjUwcyc6ICVzIgorbXNnc3RyICIlczogbm9uIHNlIHB1aWRvIGV4ZWN1dGFyIFwiJXMgJXNcIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE4OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW1vdmUgb2xkIGRpc3RyaWJ1dGVkIHZlcnNpb24gJyUuMjUwcyc6ICVzIgorbXNnc3RyICIiCisiZHBrZzogJXM6IGF2aXNvIC0gbm9uIHNlIHB1aWRvIGJvcnJhciBhIHZlcnNpw7NuIGFudGlnYSBcIiUuMjUwc1wiOiAlc1xuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTkyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIHJlbW92ZSAnJS4yNTBzJyAoYmVmb3JlIG92ZXJ3cml0ZSk6ICVzIgorbXNnc3RyICIiCisiZHBrZzogJXM6IGF2aXNvIC0gbm9uIHNlIHB1aWRvIGJvcnJhciBcIiUuMjUwc1wiIChhbnRlcyBkYSBzb2JyZXNjcml0dXJhKTogIgorIiVzXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzoxOTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gbGluayAnJS4yNTBzJyB0byAnJS4yNTBzJzogJXMiCittc2dzdHIgImRwa2c6ICVzOiBhdmlzbyAtIG5vbiBzZSBwdWlkbyBsaWdhciBcIiUuMjUwc1wiIGEgXCIlLjI1MHNcIjogJXNcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjIwMAorIywgYy1mb3JtYXQKK21zZ2lkICJJbnN0YWxsaW5nIG5ldyB2ZXJzaW9uIG9mIGNvbmZpZyBmaWxlICVzIC4uLlxuIgorbXNnc3RyICJBIGluc3RhbGFyIGEgbm92YSB2ZXJzacOzbiBkbyBmaWNoZWlybyBkZSBjb25maWd1cmFjacOzbiAlcyAuLi5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjIwNiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NTQ2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIGAlLjI1MHMnIGFzIGAlLjI1MHMnIgorbXNnc3RyICJub24gc2UgcG9kZSBpbnN0YWxhciBcIiUuMjUwc1wiIGNvbWEgXCIlLjI1MHNcIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI1NworIywgYy1mb3JtYXQKK21zZ2lkICJubyBwYWNrYWdlIG5hbWVkIGAlcycgaXMgaW5zdGFsbGVkLCBjYW5ub3QgY29uZmlndXJlIgorbXNnc3RyICJub24gaGFpIG5pbmfDum4gcGFxdWV0ZSBjaGFtYWRvIFwiJXNcIiwgbm9uIHNlIHBvZGUgY29uZmlndXJhciIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI2MAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlICUuMjUwcyBpcyBhbHJlYWR5IGluc3RhbGxlZCBhbmQgY29uZmlndXJlZCIKK21zZ3N0ciAibyBwYXF1ZXRlICUuMjUwcyB4YSBlc3TDoSBpbnN0YWxhZG8gZSBjb25maWd1cmFkbyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI2MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisicGFja2FnZSAlLjI1MHMgaXMgbm90IHJlYWR5IGZvciBjb25maWd1cmF0aW9uXG4iCisiIGNhbm5vdCBjb25maWd1cmUgKGN1cnJlbnQgc3RhdHVzIGAlLjI1MHMnKSIKK21zZ3N0ciAiIgorIm8gcGFxdWV0ZSAlLjI1MHMgbm9uIGVzdMOhIGxpc3RvIHBhcmEgYSBzw7phIGNvbmZpZ3VyYWNpw7NuXG4iCisiIG5vbiBzZSBwb2RlIGNvbmZpZ3VyYXIgKGVzdGFkbyBhY3R1YWwgXCIlLjI1MHNcIikiCisKKyM6IHNyYy9jb25maWd1cmUuYzoyOTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IGRlcGVuZGVuY3kgcHJvYmxlbXMgcHJldmVudCBjb25maWd1cmF0aW9uIG9mICVzOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogcHJvYmxlbWFzIGRlIGRlcGVuZGVuY2lhcyBpbXBpZGVuIGEgY29uZmlndXJhY2nDs24gZGUgJXM6XG4iCisiJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoyOTcKK21zZ2lkICJkZXBlbmRlbmN5IHByb2JsZW1zIC0gbGVhdmluZyB1bmNvbmZpZ3VyZWQiCittc2dzdHIgInByb2JsZW1hcyBkZSBkZXBlbmRlbmNpYXMgLSBkw6lpeGFzZSBzZW4gY29uZmlndXJhciIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjMwMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogJXM6IGRlcGVuZGVuY3kgcHJvYmxlbXMsIGJ1dCBjb25maWd1cmluZyBhbnl3YXkgYXMgeW91IHJlcXVlc3RlZDpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiBwcm9ibGVtYXMgZGUgZGVwZW5kZW5jaWFzLCBwZXJvIGNvbmZpZ8O6cmFzZSBpZ3VhbG1lbnRlIHBvbGEgc8O6YSAiCisicGV0aWNpw7NuOlxuIgorIiVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MzA5Cittc2dpZCAiIgorIlBhY2thZ2UgaXMgaW4gYSB2ZXJ5IGJhZCBpbmNvbnNpc3RlbnQgc3RhdGUgLSB5b3Ugc2hvdWxkXG4iCisiIHJlaW5zdGFsbCBpdCBiZWZvcmUgYXR0ZW1wdGluZyBjb25maWd1cmF0aW9uLiIKK21zZ3N0ciAiIgorIk8gcGFxdWV0ZSBlc3TDoSBudW4gZXN0YWRvIG1vaSBpbmNvbnNpc3RlbnRlIC0gZGViZXLDrWFcbiIKKyIgcmVpbnN0YWxhbG8gYW50ZXMgZGUgdGVudGFyIGEgc8O6YSBjb25maWd1cmFjacOzbi4iCisKKyM6IHNyYy9jb25maWd1cmUuYzozMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2V0dGluZyB1cCAlcyAoJXMpIC4uLlxuIgorbXNnc3RyICJBIGNvbmZpZ3VyYXIgJXMgKCVzKSAuLi5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjM5NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiB1bmFibGUgdG8gc3RhdCBjb25maWcgZmlsZSAnJXMnXG4iCisiICg9ICclcycpOiAlcyIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiBhdmlzbyAtIG5vbiBzZSBhdG9wYSBvIGZpY2hlaXJvIGRlIGNvbmZpZ3VyYWNpw7NuIFwiJXNcIlxuIgorIiAoPSBcIiVzXCIpOiAlc1xuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDA5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IGNvbmZpZyBmaWxlICclcycgaXMgYSBjaXJjdWxhciBsaW5rXG4iCisiICg9ICclcycpIgorbXNnc3RyICIiCisiZHBrZzogJXM6IGF2aXNvIC0gbyBmaWNoZWlybyBkZSBjb25maWd1cmFjacOzbiBcIiVzXCIgw6kgdW5oYSBsaWdhesOzbiAiCisiY2lyY3VsYXJcbiIKKyIgKD0gXCIlc1wiKVxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDE4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IHVuYWJsZSB0byByZWFkbGluayBjb25mZmlsZSAnJXMnXG4iCisiICg9ICclcycpOiAlcyIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiBhdmlzbyAtIG5vbiBzZSBwb2RlIGxlciBhIGxpZ2F6w7NuIGRvIGZpY2hlaXJvIGRlIGNvbmZpZ3VyYWNpw7NuIFwiJXMiCisiXCJcbiIKKyIgKD0gXCIlc1wiKTogJXNcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQ0NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBjb25mZmlsZSAnJS4yNTBzJyByZXNvbHZlcyB0byBkZWdlbmVyYXRlIGZpbGVuYW1lXG4iCisiICgnJXMnIGlzIGEgc3ltbGluayB0byAnJXMnKSIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiBhdmlzbyAtIG8gZmljaGVpcm8gZGUgY29uZmlndXJhY2nDs24gXCIlLjI1MHNcIiByZXPDs2x2ZXNlIGEgdW4gbm9tZSAiCisiZGUgZmljaGVpcm8gZGV4ZW5lcmFkb1xuIgorIiAoXCIlc1wiIMOpIHVuaGEgbGlnYXrDs24gc2ltYsOzbGljYSBhIFwiJXNcIilcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQ2MAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGNvbmZmaWxlICclLjI1MHMnIGlzIG5vdCBhIHBsYWluIGZpbGUgb3Igc3ltbGluayAoPSAnJXMnKSIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiBhdmlzbyAtIG8gZmljaGVpcm8gZGUgY29uZmlndXJhY2nDs24gXCIlLjI1MHNcIiBub24gw6kgdW4gZmljaGVpcm8gIgorIm5vcm1hbCBvdSBsaWdhesOzbiBzaW1iw7NsaWNhICg9IFwiJXNcIilcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQ4NgorbXNnaWQgIm1kNWhhc2giCittc2dzdHIgIm1kNWhhc2giCisKKyM6IHNyYy9jb25maWd1cmUuYzo0OTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiB1bmFibGUgdG8gb3BlbiBjb25mZmlsZSAlcyBmb3IgaGFzaDogJXMiCittc2dzdHIgIiIKKyJkcGtnOiAlczogYXZpc28gLSBub24gc2UgcG9kZSBhYnJpciBvIGZpY2hlaXJvIGRlIGNvbmZpZ3VyYWNpw7NuICVzIHBhcmEgIgorImNhbGN1bGFyIG8gc2V1IGhhc2g6ICVzXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo1MjIgc3JjL2NvbmZpZ3VyZS5jOjUyNgorbXNnaWQgImNvbmZmaWxlIGRpZmZlcmVuY2UgdmlzdWFsaXplciIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NTQzCittc2dpZCAiVHlwZSBgZXhpdCcgd2hlbiB5b3UncmUgZG9uZS5cbiIKK21zZ3N0ciAiRXNjcmliYSBcImV4aXRcIiBjYW5kbyB0ZcOxYSByZW1hdGFkby5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjU1MiBzcmMvY29uZmlndXJlLmM6NTU2Cittc2dpZCAiY29uZmZpbGUgc2hlbGwiCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYwMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiQ29uZmlndXJhdGlvbiBmaWxlIGAlcyciCittc2dzdHIgIiIKKyJcbiIKKyJGaWNoZWlybyBkZSBjb25maWd1cmFjacOzbiBcIiVzXCIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIChhY3R1YWxseSBgJXMnKSIKK21zZ3N0ciAiIChyZWFsbWVudGUgXCIlc1wiKSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYwOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiID09PiBGaWxlIG9uIHN5c3RlbSBjcmVhdGVkIGJ5IHlvdSBvciBieSBhIHNjcmlwdC5cbiIKKyIgPT0+IEZpbGUgYWxzbyBpbiBwYWNrYWdlIHByb3ZpZGVkIGJ5IHBhY2thZ2UgbWFpbnRhaW5lci5cbiIKK21zZ3N0ciAiIgorIlxuIgorIiA9PT4gSGFpIHVuIGZpY2hlaXJvIG5vIHNpc3RlbWEgY3JlYWRvIHBvciB2b3N0ZWRlIG91IHVuIHNjcmlwdC5cbiIKKyIgPT0+IFRhbcOpbiBoYWkgdW4gZmljaGVpcm8gbm8gcGFxdWV0ZSBmb3JuZWNpZG8gcG9sbyBtYW50ZWRvciBkbyBwYXF1ZXRlLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjEzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgICAgIE5vdCBtb2RpZmllZCBzaW5jZSBpbnN0YWxsYXRpb24uXG4iCittc2dzdHIgIiIKKyJcbiIKKyIgICAgIFNlbiBtb2RpZmljYXIgdHJhbGEgaW5zdGFsYWNpw7NuLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjE1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgPT0+IE1vZGlmaWVkIChieSB5b3Ugb3IgYnkgYSBzY3JpcHQpIHNpbmNlIGluc3RhbGxhdGlvbi5cbiIKK21zZ3N0ciAiIgorIlxuIgorIiA9PT4gTW9kaWZpY2FkbyAocG9yIHZvc3RlZGUgb3UgdW4gc2NyaXB0KSB0cmFsYSBpbnN0YWxhY2nDs24uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiA9PT4gRGVsZXRlZCAoYnkgeW91IG9yIGJ5IGEgc2NyaXB0KSBzaW5jZSBpbnN0YWxsYXRpb24uXG4iCittc2dzdHIgIiIKKyJcbiIKKyIgPT0+IEJvcnJhZG8gKHBvciB2b3N0ZWRlIG91IHVuIHNjcmlwdCkgdHJhbGEgaW5zdGFsYWNpw7NuLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjE5CisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gUGFja2FnZSBkaXN0cmlidXRvciBoYXMgc2hpcHBlZCBhbiB1cGRhdGVkIHZlcnNpb24uXG4iCittc2dzdHIgIiA9PT4gTyBkaXN0cmlidWlkb3IgZG8gcGFxdWV0ZSBmb3JuZWNlIHVuaGEgdmVyc2nDs24gYWN0dWFsaXphZGEuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAgICBWZXJzaW9uIGluIHBhY2thZ2UgaXMgdGhlIHNhbWUgYXMgYXQgbGFzdCBpbnN0YWxsYXRpb24uXG4iCittc2dzdHIgIiAgICAgQSB2ZXJzacOzbiBkbyBwYXF1ZXRlIMOpIGEgbWVzbWEgcXVlIGEgZGEgw7psdGltYSBpbnN0YWxhY2nDs24uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBVc2luZyBuZXcgZmlsZSBhcyB5b3UgcmVxdWVzdGVkLlxuIgorbXNnc3RyICIgPT0+IEVtcHLDqWdhc2UgbyBub3ZvIGZpY2hlaXJvIGNvbW8gc29saWNpdG91LlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gVXNpbmcgY3VycmVudCBvbGQgZmlsZSBhcyB5b3UgcmVxdWVzdGVkLlxuIgorbXNnc3RyICIgPT0+IEVtcHLDqWdhc2UgbyBmaWNoZWlybyBhY3R1YWwgY29tbyBzb2xpY2l0b3UuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBLZWVwaW5nIG9sZCBjb25maWcgZmlsZSBhcyBkZWZhdWx0LlxuIgorbXNnc3RyICIgPT0+IEfDoXJkYXNlIG8gZmljaGVpcm8gZGUgY29uZmlndXJhY2nDs24gYW50aWdvIHBvciBkZWZlY3RvLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gVXNpbmcgbmV3IGNvbmZpZyBmaWxlIGFzIGRlZmF1bHQuXG4iCittc2dzdHIgIiA9PT4gRW1wcsOpZ2FzZSBvIG5vdm8gZmljaGVpcm8gZGUgY29uZmlndXJhY2nDs24gcG9yIGRlZmVjdG8uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyIgICBXaGF0IHdvdWxkIHlvdSBsaWtlIHRvIGRvIGFib3V0IGl0ID8gIFlvdXIgb3B0aW9ucyBhcmU6XG4iCisiICAgIFkgb3IgSSAgOiBpbnN0YWxsIHRoZSBwYWNrYWdlIG1haW50YWluZXIncyB2ZXJzaW9uXG4iCisiICAgIE4gb3IgTyAgOiBrZWVwIHlvdXIgY3VycmVudGx5LWluc3RhbGxlZCB2ZXJzaW9uXG4iCisiICAgICAgRCAgICAgOiBzaG93IHRoZSBkaWZmZXJlbmNlcyBiZXR3ZWVuIHRoZSB2ZXJzaW9uc1xuIgorIiAgICAgIFogICAgIDogc3RhcnQgYSBzaGVsbCB0byBleGFtaW5lIHRoZSBzaXR1YXRpb25cbiIKK21zZ3N0ciAiIgorIiAgIMK/UXVlIHF1ZXJlIGZhY2VyIGNvbiBlbD8gQXMgb3BjacOzbnMgc29uOlxuIgorIiAgICBZIG91IEkgIDogaW5zdGFsYXIgYSB2ZXJzacOzbiBkbyBtYW50ZWRvciBkbyBwYXF1ZXRlXG4iCisiICAgIE4gb3UgTyAgOiBnYXJkYXIgYSB2ZXJzacOzbiBpbnN0YWxhZGEgYWN0dWFsbWVudGVcbiIKKyIgICAgICBEICAgICA6IGFtb3NhciBhcyBkaWZlcmVuY2lhcyBlbnRyZSBhcyB2ZXJzacOzbnNcbiIKKyIgICAgICBaICAgICA6IGRlaXhhciBlc3RlIHByb2Nlc28gbm8gZm9uZG8gcGFyYSBleGFtaW5hciBhIHNpdHVhY2nDs25cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY1OQorIywgYy1mb3JtYXQKK21zZ2lkICIgVGhlIGRlZmF1bHQgYWN0aW9uIGlzIHRvIGtlZXAgeW91ciBjdXJyZW50IHZlcnNpb24uXG4iCittc2dzdHIgIiBBIGFjY2nDs24gcG9yIGRlZmVjdG8gw6kgZ2FyZGFyIGEgdmVyc2nDs24gYWN0dWFsLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjYxCisjLCBjLWZvcm1hdAorbXNnaWQgIiBUaGUgZGVmYXVsdCBhY3Rpb24gaXMgdG8gaW5zdGFsbCB0aGUgbmV3IHZlcnNpb24uXG4iCittc2dzdHIgIiBBIGFjY2nDs24gcG9yIGRlZmVjdG8gw6kgaW5zdGFsYXIgYSBub3ZhIHZlcnNpw7NuLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjY2Cittc2dpZCAiW2RlZmF1bHQ9Tl0iCittc2dzdHIgIltwb3IgZGVmZWN0bz1OXSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY2NworbXNnaWQgIltkZWZhdWx0PVldIgorbXNnc3RyICJbcG9yIGRlZmVjdG89WV0iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NjgKK21zZ2lkICJbbm8gZGVmYXVsdF0iCittc2dzdHIgIltub24gaGFpIG9wY2nDs24gcG9yIGRlZmVjdG9dIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjcxCittc2dpZCAiZXJyb3Igd3JpdGluZyB0byBzdGRlcnIsIGRpc2NvdmVyZWQgYmVmb3JlIGNvbmZmaWxlIHByb21wdCIKK21zZ3N0ciAiIgorImVycm8gYW8gZ3JhdmFyIG5vIGVycm8gZXN0w6FuZGFyLCBkZXNjdWJyaXVzZSBhbnRlcyBkZSBwcmVndW50YXIgcG9sbyAiCisiZmljaGVpcm8gZGUgY29uZmlndXJhY2nDs24iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2ODAKK21zZ2lkICJyZWFkIGVycm9yIG9uIHN0ZGluIGF0IGNvbmZmaWxlIHByb21wdCIKK21zZ3N0ciAiIgorImVycm8gZGUgbGVjdHVyYSBuYSBlbnRyYWRhIGVzdMOhbmRhciBuYSBwcmVndW50YSBkbyBmaWNoZWlybyBkZSBjb25maWd1cmFjacOzbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY4MQorbXNnaWQgIkVPRiBvbiBzdGRpbiBhdCBjb25mZmlsZSBwcm9tcHQiCittc2dzdHIgIiIKKyJmaW4gZGUgZmljaGVpcm8gbmEgZW50cmFkYSBlc3TDoW5kYXIgbmEgcHJlZ3VudGEgZG8gZmljaGVpcm8gZGUgY29uZmlndXJhY2nDs24iCisKKyM6IHNyYy9kZXBjb24uYzoxNzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgZGVwZW5kcyBvbiAlcyIKK21zZ3N0ciAiJXMgZGVwZW5kZSBkZSAlcyIKKworIzogc3JjL2RlcGNvbi5jOjE3OAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBwcmUtZGVwZW5kcyBvbiAlcyIKK21zZ3N0ciAiJXMgcHJlLWRlcGVuZGUgZGUgJXMiCisKKyM6IHNyYy9kZXBjb24uYzoxODEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcmVjb21tZW5kcyAlcyIKK21zZ3N0ciAiJXMgcmVjb21lbmRhICVzIgorCisjOiBzcmMvZGVwY29uLmM6MTg0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHN1Z2dlc3RzICVzIgorbXNnc3RyICIlcyBzdXhpcmUgJXMiCisKKyM6IHNyYy9kZXBjb24uYzoxODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgYnJlYWtzICVzIgorbXNnc3RyICIlcyByb21wZSAlcyIKKworIzogc3JjL2RlcGNvbi5jOjE5MAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBjb25mbGljdHMgd2l0aCAlcyIKK21zZ3N0ciAiJXMgdGVuIGNvbmZsaWN0b3MgY29uICVzIgorCisjOiBzcmMvZGVwY29uLmM6MTkzCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGVuaGFuY2VzICVzIgorbXNnc3RyICIlcyBtZWxsb3JhICVzIgorCisjOiBzcmMvZGVwY29uLmM6Mjk2CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHRvIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIGhhc2UgZWxpbWluYXIuXG4iCisKKyM6IHNyYy9kZXBjb24uYzoyOTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdG8gYmUgZGVjb25maWd1cmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyBoYXNlIGRlc2NvbmZpZ3VyYXIuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdG8gYmUgaW5zdGFsbGVkLCBidXQgaXMgdmVyc2lvbiAlLjI1MHMuXG4iCittc2dzdHIgIiAgJS4yNTBzIGhhc2UgaW5zdGFsYXIsIHBlcm8gw6kgYSB2ZXJzacOzbiAlLjI1MHMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgaW5zdGFsbGVkLCBidXQgaXMgdmVyc2lvbiAlLjI1MHMuXG4iCittc2dzdHIgIiAgJS4yNTBzIGVzdMOhIGluc3RhbGFkbywgcGVybyDDqSBhIHZlcnNpw7NuICUuMjUwcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjMzMworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB1bnBhY2tlZCwgYnV0IGhhcyBuZXZlciBiZWVuIGNvbmZpZ3VyZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIGVzdMOhIGRlc2VtcGFxdWV0YWRvLCBwZXJvIG5vbiBzZSBjb25maWd1cm91LlxuIgorCisjOiBzcmMvZGVwY29uLmM6MzM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHVucGFja2VkLCBidXQgaXMgdmVyc2lvbiAlLjI1MHMuXG4iCittc2dzdHIgIiAgJS4yNTBzIGVzdMOhIGRlc2VtcGFxdWV0YWRvLCBwZXJvIMOpIGEgdmVyc2nDs24gJS4yNTBzLlxuIgorCisjOiBzcmMvZGVwY29uLmM6MzQzCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGxhdGVzdCBjb25maWd1cmVkIHZlcnNpb24gaXMgJS4yNTBzLlxuIgorbXNnc3RyICIgICUuMjUwcyB0ZW4gZGUgw7psdGltYSB2ZXJzacOzbiBjb25maWd1cmFkYSAlLjI1MHMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozNTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgJXMuXG4iCittc2dzdHIgIiAgJS4yNTBzIGVzdMOhICVzLlxuIgorCisjOiBzcmMvZGVwY29uLmM6Mzg4CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBidXQgaXMgdG8gYmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMgZm9ybmVjZSAlLjI1MHMgcGVybyBoYXNlIGVsaW1pbmFyLlxuIgorCisjOiBzcmMvZGVwY29uLmM6MzkyCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBidXQgaXMgdG8gYmUgZGVjb25maWd1cmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyBmb3JuZWNlICUuMjUwcyBwZXJvIGhhc2UgZGVzY29uZmlndXJhci5cbiIKKworIzogc3JjL2RlcGNvbi5jOjQwMQorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYnV0IGlzICVzLlxuIgorbXNnc3RyICIgICUuMjUwcyBmb3JuZWNlICUuMjUwcyBwZXJvIGVzdMOhICVzLlxuIgorCisjOiBzcmMvZGVwY29uLmM6NDE1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIG5vdCBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIG5vbiBlc3TDoSBpbnN0YWxhZG8uXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgKHZlcnNpb24gJS4yNTBzKSBpcyB0byBiZSBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzICh2ZXJzacOzbiAlLjI1MHMpIGhhc2UgaW5zdGFsYXIuXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgKHZlcnNpb24gJS4yNTBzKSBpcyBwcmVzZW50IGFuZCAlcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgKHZlcnNpw7NuICUuMjUwcykgZXN0w6EgcHJlc2VudGUgZSAlcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjQ5NQorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYW5kIGlzIHRvIGJlIGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMgZm9ybmVjZSAlLjI1MHMgZSBoYXNlIGluc3RhbGFyLlxuIgorCisjOiBzcmMvZGVwY29uLmM6NTM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBhbmQgaXMgcHJlc2VudCBhbmQgJXMuXG4iCittc2dzdHIgIiAgJS4yNTBzIGZvcm5lY2UgJS4yNTBzIGUgZXN0w6EgcHJlc2VudGUgZSAlcy5cbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjUwCisjLCBmdXp6eQorI3wgbXNnaWQgIlR5cGUgZHBrZy10cmlnZ2VyIC0taGVscCBmb3IgaGVscCBhYm91dCB0aGlzIHV0aWxpdHkuIgorbXNnaWQgIlVzZSAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgZGl2ZXJ0aW5nIGZpbGVzLiIKK21zZ3N0ciAiRXNjcmliYSBkcGtnLXRyaWdnZXIgLS1oZWxwIHBhcmEgb2J0ZXIgYXh1ZGEgc29icmUgZXN0YSB1dGlsaWRhZGUuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjYgc3JjL3N0YXRjbWQuYzo1NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuICVzIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIiVzIGRlIERlYmlhbiwgdmVyc2nDs24gJXMuXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo3MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIlxuIgorI3wgIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyN8ICJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLiIKK21zZ2lkICIiCisiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDEwIEd1aWxsZW0gSm92ZXIuXG4iCittc2dzdHIgIiIKKyJcbiIKKyJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo3NSBzcmMvbWFpbi5jOjYzIHNyYy9xdWVyeWNtZC5jOjYwMyBzcmMvc3RhdGNtZC5jOjY1CisjOiBzcmMvdHJpZ2NtZC5jOjU1IGRwa2ctZGViL21haW4uYzo1NyBkcGtnLXNwbGl0L21haW4uYzo1MQorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjg5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvclxuIgorImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LlxuIgorbXNnc3RyICIiCisiXG4iCisiRXN0ZSDDqSBzb2Z0d2FyZSBsaWJyZTsgdmV4YSBhIExpY2VuY2lhIFDDumJsaWNhIFhlcmFsIGRlIEdOVSAoR05VIEdQTCkgIgorInZlcnNpw7NuXG4iCisiMiBvdSB1bmhhIHBvc3RlcmlvciBwYXJhIGFzIGNvbmRpY2nDs25zIGRlIGNvcGlhLiBOT04gaGFpIGdhcmFudMOtYS5cbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjg3IHNyYy9tYWluLmM6ODEgc3JjL3F1ZXJ5Y21kLmM6NjE1IHNyYy9zdGF0Y21kLmM6NzcKKyM6IGRwa2ctZGViL21haW4uYzo2OSBkcGtnLXNwbGl0L21haW4uYzo2MyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6OTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSA8Y29tbWFuZD5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIkVtcHJlZ286ICVzIFs8b3BjacOzbj4gLi4uXSA8b3JkZT5cbiIKKyJcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjkxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIFstLWFkZF0gPGZpbGU+ICAgICAgICAgICBhZGQgYSBkaXZlcnNpb24uXG4iCisiICAtLXJlbW92ZSA8ZmlsZT4gICAgICAgICAgcmVtb3ZlIHRoZSBkaXZlcnNpb24uXG4iCisiICAtLWxpc3QgWzxnbG9iLXBhdHRlcm4+XSAgc2hvdyBmaWxlIGRpdmVyc2lvbnMuXG4iCisiICAtLWxpc3RwYWNrYWdlIDxmaWxlPiAgICAgc2hvdyB3aGF0IHBhY2thZ2UgZGl2ZXJ0cyB0aGUgZmlsZS5cbiIKKyIgIC0tdHJ1ZW5hbWUgPGZpbGU+ICAgICAgICByZXR1cm4gdGhlIGRpdmVydGVkIGZpbGUuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjEwMAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLXBhY2thZ2UgPHBhY2thZ2U+ICAgICAgbmFtZSBvZiB0aGUgcGFja2FnZSB3aG9zZSBjb3B5IG9mIDxmaWxlPiB3aWxsICIKKyJub3RcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJlIGRpdmVydGVkLlxuIgorIiAgLS1sb2NhbCAgICAgICAgICAgICAgICAgIGFsbCBwYWNrYWdlcycgdmVyc2lvbnMgYXJlIGRpdmVydGVkLlxuIgorIiAgLS1kaXZlcnQgPGRpdmVydC10bz4gICAgIHRoZSBuYW1lIHVzZWQgYnkgb3RoZXIgcGFja2FnZXMnIHZlcnNpb25zLlxuIgorIiAgLS1yZW5hbWUgICAgICAgICAgICAgICAgIGFjdHVhbGx5IG1vdmUgdGhlIGZpbGUgYXNpZGUgKG9yIGJhY2spLlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIHNldCB0aGUgZGlyZWN0b3J5IHdpdGggdGhlIGRpdmVyc2lvbnMgZmlsZS5cbiIKKyIgIC0tdGVzdCAgICAgICAgICAgICAgICAgICBkb24ndCBkbyBhbnl0aGluZywganVzdCBkZW1vbnN0cmF0ZS5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBxdWlldCBvcGVyYXRpb24sIG1pbmltYWwgb3V0cHV0LlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIkVtcHJlZ286ICVzIFs8b3BjacOzbj4gLi4uXSA8b3JkZT5cbiIKKyJcbiIKKyJPcmRlczpcbiIKKyIgIFstLWFkZF0gPGZpY2hlaXJvPiAgICAgICBlbmdhZGUgdW4gZGVzdsOtby5cbiIKKyIgIC0tcmVtb3ZlIDxmaWNoZWlybz4gICAgICBlbGltaW5hIG8gZGVzdsOtby5cbiIKKyIgIC0tbGlzdCBbPHBhdHLDs24+XSAgICAgICAgYW1vc2Egb3MgZGVzdsOtb3MuXG4iCisiICAtLXRydWVuYW1lIDxmaWNoZWlybz4gICAgYW1vc2EgbyBmaWNoZWlybyBkZXN2aWFkby5cbiIKKyJcbiIKKyJPcGNpw7NuczpcbiIKKyIgIC0tcGFja2FnZSA8cGFxdWV0ZT4gICAgICBvIG5vbWUgZG8gcGFxdWV0ZSBkbyBxdWUgbm9uIHNlIGhhIGRlc3ZpYXIgYSBzw7phXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb3BpYSBkbyA8ZmljaGVpcm8+LlxuIgorIiAgLS1sb2NhbCAgICAgICAgICAgICAgICAgIGRlc3bDrWEgYXMgdmVyc2nDs25zIGRlIHTDs2RvbG9zIHBhcXVldGVzLlxuIgorIiAgLS1kaXZlcnQgPGRlc3ZpYXItYT4gICAgIG8gbm9tZSBlbXByZWdhZG8gcG9sYXMgdmVyc2nDs25zIGRlIG91dHJvcyAiCisicGFxdWV0ZXMuXG4iCisiICAtLXJlbmFtZSAgICAgICAgICAgICAgICAgYXBhcnRhIG91IHJlY3VwZXJhIG8gZmljaGVpcm8uXG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3RvcmlvPiAgZXN0YWJsZWNlIG8gZGlyZWN0b3JpbyBkbyBmaWNoZWlybyBkZSBkZXN2w61vcy5cbiIKKyIgIC0tdGVzdCAgICAgICAgICAgICAgICAgICBub24gZmFpIG5hZGE7IHPDsyBvIGFtb3NhLlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIG9wZXJhY2nDs24gc2VuIHNpbGVuY2lvc2EsIHNhw61kYSBtw61uaW1hLlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIGFtb3NhIGVzdGEgbWVuc2F4ZSBkZSBheHVkYS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBhbW9zYSBhIHZlcnNpw7NuLlxuIgorIlxuIgorIkFvIGVuZ2FkaXIsIHBvciBkZWZlY3RvIGFzw7ptZXNlIC0tbG9jYWwgZSAtLWRpdmVydCA8b3JpeGluYWw+LmRpc3RyaWIuXG4iCisiQW8gZWxpbWluYXIgZGViZW4gZW5jYWl4YXIgLS1wYWNrYWdlIG91IC0tbG9jYWwgZSAtLWRpdmVydCBzZSBzZSBpbmRpY2FuLlxuIgorIk9zIHNjcmlwdHMgZGUgcHJlaW5zdC9wb3N0cm0gZGViZXLDrWFuIGVzcGVjaWZpY2FyIC0tcGFja2FnZSBlIC0tZGl2ZXJ0LlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJXaGVuIGFkZGluZywgZGVmYXVsdCBpcyAtLWxvY2FsIGFuZCAtLWRpdmVydCA8b3JpZ2luYWw+LmRpc3RyaWIuXG4iCisiV2hlbiByZW1vdmluZywgLS1wYWNrYWdlIG9yIC0tbG9jYWwgYW5kIC0tZGl2ZXJ0IG11c3QgbWF0Y2ggaWYgc3BlY2lmaWVkLlxuIgorIlBhY2thZ2UgcHJlaW5zdC9wb3N0cm0gc2NyaXB0cyBzaG91bGQgYWx3YXlzIHNwZWNpZnkgLS1wYWNrYWdlIGFuZCAtLSIKKyJkaXZlcnQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjE2OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZXJyb3IgY2hlY2tpbmcgYCVzJzogJXMiCittc2dpZCAiZXJyb3IgY2hlY2tpbmcgJyVzJyIKK21zZ3N0ciAiZXJybyBhbyBjb21wcm9iYXIgXCIlc1wiOiAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjIwMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisicmVuYW1lIGludm9sdmVzIG92ZXJ3cml0aW5nIGAlcycgd2l0aFxuIgorIiAgZGlmZmVyZW50IGZpbGUgYCVzJywgbm90IGFsbG93ZWQiCittc2dzdHIgIiIKKyJvIGNhbWJpbyBkZSBub21lIHN1cMOzbiBzb2JyZXNjcmliaXIgXCIlc1wiIGNvXG4iCisiICBmaWNoZWlybyBkaWZlcmVudGUgXCIlc1wiLCBub24gc2UgcGVybWl0ZSIKKworIzogc3JjL2RpdmVydGNtZC5jOjIyMyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTM3MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBmaWxlICclcyciCittc2dzdHIgIm5vbiBzZSBwb2RlIGFicmlyIG8gZmljaGVpcm8gb3JpeGUgXCIlLjI1MHNcIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjIyNworbXNnaWQgImZpbGUgY29weSIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjM5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW5ub3Qgc3RhdCBuZXcgbmFtZSBgJXMnOiAlcyIKK21zZ2lkICJjYW5ub3QgcmVuYW1lICclcycgdG8gJyVzJyIKK21zZ3N0ciAibm9uIHNlIGF0b3BhIG8gbm92byBub21lIFwiJXNcIjogJXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyNTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInJlbmFtZTogcmVtb3ZlIGR1cGxpY2F0ZSBvbGQgbGluayBgJXMnOiAlcyIKK21zZ2lkICJyZW5hbWU6IHJlbW92ZSBkdXBsaWNhdGUgb2xkIGxpbmsgJyVzJyIKK21zZ3N0ciAicmVuYW1lOiBlbGltaW5hY2nDs24gZGEgbGlnYXrDs24gYW50aWdhIGR1cGxpY2FkYSBcIiVzXCI6ICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjYyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gb3BlbiBzb3VyY2UgZmlsZSBgJS4yNTBzJyIKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIGNvcGllZCBzb3VyY2UgZmlsZSAnJXMnIgorbXNnc3RyICJub24gc2UgcG9kZSBhYnJpciBvIGZpY2hlaXJvIG9yaXhlIFwiJS4yNTBzXCIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyODQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImxvY2FsIGRpdmVyc2lvbiB0bzogJXNcbiIKK21zZ2lkICJsb2NhbCBkaXZlcnNpb24gb2YgJXMiCittc2dzdHIgImRlc3bDrW8gbG9jYWwgYTogJXNcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjI4NgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAibG9jYWwgZGl2ZXJzaW9uIHRvOiAlc1xuIgorbXNnaWQgImxvY2FsIGRpdmVyc2lvbiBvZiAlcyB0byAlcyIKK21zZ3N0ciAiZGVzdsOtbyBsb2NhbCBhOiAlc1xuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjkwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJkaXZlcnNpb24gYnkgJXMgdG86ICVzXG4iCittc2dpZCAiZGl2ZXJzaW9uIG9mICVzIGJ5ICVzIgorbXNnc3RyICJkZXN2w61vIGZlaXRvIHBvciAlcyBhOiAlc1xuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjkzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJkaXZlcnNpb24gYnkgJXMgdG86ICVzXG4iCittc2dpZCAiZGl2ZXJzaW9uIG9mICVzIHRvICVzIGJ5ICVzIgorbXNnc3RyICJkZXN2w61vIGZlaXRvIHBvciAlcyBhOiAlc1xuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MzA5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJsb2NhbCBkaXZlcnNpb24gdG86ICVzXG4iCittc2dpZCAiYW55IGRpdmVyc2lvbiBvZiAlcyIKK21zZ3N0ciAiZGVzdsOtbyBsb2NhbCBhOiAlc1xuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MzExCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJkaXZlcnNpb24gYnkgJXMgdG86ICVzXG4iCittc2dpZCAiYW55IGRpdmVyc2lvbiBvZiAlcyB0byAlcyIKK21zZ3N0ciAiZGVzdsOtbyBmZWl0byBwb3IgJXMgYTogJXNcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjM1NworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiY2Fubm90IG9wZW4gR1BMIGZpbGUiCittc2dpZCAiY2Fubm90IGNyZWF0ZSBuZXcgJXMgZmlsZSIKK21zZ3N0ciAibm9uIHNlIHBvZGUgYWJyaXIgbyBmaWNoZWlybyBHUEwiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozNzUgc3JjL3N0YXRjbWQuYzoyMTUgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE0MDQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCBmaWxlICclcyciCittc2dzdHIgIm5vbiBzZSBwb2RlIGJhbGVpcmFyIG8gYnVmZmVyIGVuIHZzbnByaW50ZiIKKworIzogc3JjL2RpdmVydGNtZC5jOjM4MgorIywgZnV6enkKKyN8IG1zZ2lkICJyZW1vdmUgb2xkIGRpdmVyc2lvbnMtb2xkOiAlcyIKK21zZ2lkICJlcnJvciByZW1vdmluZyBvbGQgZGl2ZXJzaW9ucy1vbGQiCittc2dzdHIgImVsaW1pbmFjacOzbiBkbyBhbnRpZ28gZmljaGVpcm8gZGl2ZXJzaW9ucy1vbGQ6ICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mzg0CisjLCBmdXp6eQorbXNnaWQgImVycm9yIGNyZWF0aW5nIG5ldyBkaXZlcnNpb25zLW9sZCIKK21zZ3N0ciAiZXJybyBhbyBjcmVhciBvIG5vdm8gZmljaGVpcm8gc3RhdG92ZXJyaWRlLW9sZDogJXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozODYKKyMsIGZ1enp5Cittc2dpZCAiZXJyb3IgaW5zdGFsbGluZyBuZXcgZGl2ZXJzaW9ucyIKK21zZ3N0ciAiZXJybyBhbyBpbnN0YWxhciBvIG5vdm8gZmljaGVpcm8gc3RhdG92ZXJyaWRlOiAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjQwNiBzcmMvZGl2ZXJ0Y21kLmM6NTAzIHNyYy9kaXZlcnRjbWQuYzo2MTAKKyM6IHNyYy9kaXZlcnRjbWQuYzo2MzAgc3JjL3N0YXRjbWQuYzoyOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhIHNpbmdsZSBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyBwcmVjaXNhIGR1biBzw7MgYXJndW1lbnRvIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDA5IHNyYy9kaXZlcnRjbWQuYzo0MzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZW5hbWUgXCIlc1wiIGlzIG5vdCBhYnNvbHV0ZSIKK21zZ3N0ciAibyBub21lIGRlIGZpY2hlaXJvIFwiJXNcIiBub24gw6kgYWJzb2x1dG8iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MTEgc3JjL3N0YXRjbWQuYzoyNDkKK21zZ2lkICJmaWxlIG1heSBub3QgY29udGFpbiBuZXdsaW5lcyIKK21zZ3N0ciAibyBub21lIGRvIGZpY2hlaXJvIG5vbiBwb2RlIGNvbnRlciBzYWx0b3MgZGUgbGnDsWEiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MTgKK21zZ2lkICJDYW5ub3QgZGl2ZXJ0IGRpcmVjdG9yaWVzIgorbXNnc3RyICJOb24gc2UgcG9kZW4gZGVzdmlhciBkaXJlY3RvcmlvcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjQzMworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGRpdmVydCBmaWxlICclcycgdG8gaXRzZWxmIgorbXNnc3RyICJOb24gc2UgcG9kZW4gZGVzdmlhciBkaXJlY3RvcmlvcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjQ1MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiTGVhdmluZyBgJXMnIgorbXNnaWQgIkxlYXZpbmcgJyVzJ1xuIgorbXNnc3RyICJEw6lpeGFzZSBcIiVzXCIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBjbGFzaGVzIHdpdGggYCVzJyIKK21zZ3N0ciAiXCIlc1wiIGNob2NhIGNvbiBcIiVzXCIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0ODEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIkFkZGluZyBgJXMnIgorbXNnaWQgIkFkZGluZyAnJXMnXG4iCittc2dzdHIgIkEgZW5nYWRpciBcIiVzXCIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MTAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIk5vIGRpdmVyc2lvbiBgJXMnLCBub25lIHJlbW92ZWQiCittc2dpZCAiTm8gZGl2ZXJzaW9uICclcycsIG5vbmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiTm9uIGV4aXN0ZSBvIGRlc3bDrW8gXCIlc1wiLCBub24gc2UgZWxpbWlub3UgbmluZ8O6biIKKworIzogc3JjL2RpdmVydGNtZC5jOjUyNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisibWlzbWF0Y2ggb24gZGl2ZXJ0LXRvXG4iCisiICB3aGVuIHJlbW92aW5nIGAlcydcbiIKKyIgIGZvdW5kIGAlcyciCittc2dzdHIgIiIKKyJpbmNvbmdydWVuY2lhIG5vIGRlc3Rpbm8gZG8gZGVzdsOtb1xuIgorIiAgYW8gZWxpbWluYXIgXCIlc1wiXG4iCisiICBhdG9wb3VzZSBcIiVzXCIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm1pc21hdGNoIG9uIHBhY2thZ2VcbiIKKyIgIHdoZW4gcmVtb3ZpbmcgYCVzJ1xuIgorIiAgZm91bmQgYCVzJyIKK21zZ3N0ciAiIgorImluY29uZ3J1ZW5jaWEgbm8gcGFxdWV0ZVxuIgorIiAgYW8gZWxpbWluYXIgXCIlc1wiXG4iCisiICBhdG9wb3VzZSBcIiVzXCIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MzkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIlJlbW92aW5nIGAlcyciCittc2dpZCAiUmVtb3ZpbmcgJyVzJ1xuIgorbXNnc3RyICJBIGVsaW1pbmFyIFwiJXNcIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjY1NworbXNnaWQgInBhY2thZ2UgbWF5IG5vdCBjb250YWluIG5ld2xpbmVzIgorbXNnc3RyICJvIG5vbWUgZG8gcGFxdWV0ZSBub24gcG9kZSBjb250ZXIgc2FsdG9zIGRlIGxpw7FhIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjY2Cittc2dpZCAiZGl2ZXJ0LXRvIG1heSBub3QgY29udGFpbiBuZXdsaW5lcyIKK21zZ3N0ciAibyBkZXN0aW5vIGRvIGRlc3bDrW8gbm9uIHBvZGUgY29udGVyIHNhbHRvcyBkZSBsacOxYSIKKworIzogc3JjL2RpdmVydGRiLmM6NjQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiBkaXZlcnNpb25zIGZpbGUiCittc2dzdHIgIm5vbiBzZSBwdWlkbyBhYnJpciBvIGZpY2hlaXJvIGRlIGRlc3bDrW9zIgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzo3MQorbXNnaWQgImZhaWxlZCB0byBmc3RhdCBwcmV2aW91cyBkaXZlcnNpb25zIGZpbGUiCittc2dzdHIgIm5vbiBzZSBhdG9wb3UgbyBhbnRlcmlvciBmaWNoZWlybyBkZSBkZXN2w61vcyIKKworIzogc3JjL2RpdmVydGRiLmM6NzMKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgZGl2ZXJzaW9ucyBmaWxlIgorbXNnc3RyICJub24gc2UgYXRvcG91IG8gZmljaGVpcm8gZGUgZGVzdsOtb3MiCisKKyM6IHNyYy9kaXZlcnRkYi5jOjExMworIywgYy1mb3JtYXQKK21zZ2lkICJjb25mbGljdGluZyBkaXZlcnNpb25zIGludm9sdmluZyBgJS4yNTBzJyBvciBgJS4yNTBzJyIKK21zZ3N0ciAiaGFpIGRlc3bDrW9zIGVuIGNvbmZsaWN0byBxdWUgaW52b2x1Y3JhbiBhIFwiJS4yNTBzXCIgb3UgXCIlLjI1MHNcIiIKKworIzogc3JjL2VucXVpcnkuYzo3MworbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBpbiBhIG1lc3MgZHVlIHRvIHNlcmlvdXMgcHJvYmxlbXMgZHVyaW5nXG4iCisiaW5zdGFsbGF0aW9uLiAgVGhleSBtdXN0IGJlIHJlaW5zdGFsbGVkIGZvciB0aGVtIChhbmQgYW55IHBhY2thZ2VzXG4iCisidGhhdCBkZXBlbmQgb24gdGhlbSkgdG8gZnVuY3Rpb24gcHJvcGVybHk6XG4iCittc2dzdHIgIiIKKyJPcyBzZWd1aW50ZXMgcGFxdWV0ZXMgZXN0w6FuIGVtYmFydWxsYWRvcyBkZWJpZG8gYSBwcm9ibGVtYXMgZ3JhdmVzIGR1cmFudGVcbiIKKyJhIGluc3RhbGFjacOzbi4gVGXDsWVuIHF1ZSBzZSByZWluc3RhbGFyIHBhcmEgcXVlIGVsZXMgKGUgb3V0cm9zIHBhcXVldGVzXG4iCisicXVlIGRlcGVuZGFuIGRlbGVzKSBmdW5jaW9uZW4gY29ycmVjdGFtZW50ZTpcbiIKKworIzogc3JjL2VucXVpcnkuYzo4MAorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGhhdmUgYmVlbiB1bnBhY2tlZCBidXQgbm90IHlldCBjb25maWd1cmVkLlxuIgorIlRoZXkgbXVzdCBiZSBjb25maWd1cmVkIHVzaW5nIGRwa2cgLS1jb25maWd1cmUgb3IgdGhlIGNvbmZpZ3VyZVxuIgorIm1lbnUgb3B0aW9uIGluIGRzZWxlY3QgZm9yIHRoZW0gdG8gd29yazpcbiIKK21zZ3N0ciAiIgorIk9zIHNlZ3VpbnRlcyBwYXF1ZXRlcyBkZXNlbXBhcXVldMOhcm9uc2UgcGVybyBub24gZXN0w6FuIGNvbmZpZ3VyYWRvcy5cbiIKKyJEZWJlbiBjb25maWd1cmFyc2UgZW1wcmVnYW5kbyBkcGtnIC0tY29uZmlndXJlIG91IGEgb3BjacOzbiBkZSBtZW7DulxuIgorIlwiY29uZmlndXJhclwiIGRlIGRzZWxlY3QgcGFyYSBxdWUgZnVuY2lvbmVuOlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjg3Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgYXJlIG9ubHkgaGFsZiBjb25maWd1cmVkLCBwcm9iYWJseSBkdWUgdG8gcHJvYmxlbXNcbiIKKyJjb25maWd1cmluZyB0aGVtIHRoZSBmaXJzdCB0aW1lLiAgVGhlIGNvbmZpZ3VyYXRpb24gc2hvdWxkIGJlIHJldHJpZWQgdXNpbmdcbiIKKyJkcGtnIC0tY29uZmlndXJlIDxwYWNrYWdlPiBvciB0aGUgY29uZmlndXJlIG1lbnUgb3B0aW9uIGluIGRzZWxlY3Q6XG4iCittc2dzdHIgIiIKKyJPcyBzZWd1aW50ZXMgcGFxdWV0ZXMgZXN0w6FuIHPDsyBjb25maWd1cmFkb3MgYSBtZWRpYXMsIHNlZ3VyYW1lbnRlIGRlYmlkb1xuIgorImEgcHJvYmxlbWFzIGFvIGNvbmZpZ3VyYWxvcyBhIHByaW1laXJhIHZlei4gRGViZXLDrWEgdm9sdmVyc2UgdGVudGFyIGFcbiIKKyJjb25maWd1cmFjacOzbiBlbXByZWdhbmRvIGRwa2cgLS1jb25maWd1cmUgPHBhcXVldGU+IG91IGEgb3BjacOzbiBkZSBtZW7DulxuIgorIlwiY29uZmlndXJhclwiIGRlIGRzZWxlY3Q6XG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6OTQKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgb25seSBoYWxmIGluc3RhbGxlZCwgZHVlIHRvIHByb2JsZW1zIGR1cmluZ1xuIgorImluc3RhbGxhdGlvbi4gIFRoZSBpbnN0YWxsYXRpb24gY2FuIHByb2JhYmx5IGJlIGNvbXBsZXRlZCBieSByZXRyeWluZyBpdDtcbiIKKyJ0aGUgcGFja2FnZXMgY2FuIGJlIHJlbW92ZWQgdXNpbmcgZHNlbGVjdCBvciBkcGtnIC0tcmVtb3ZlOlxuIgorbXNnc3RyICIiCisiT3Mgc2VndWludGVzIHBhcXVldGVzIGVzdMOhbiBzw7MgaW5zdGFsYWRvcyBhIG1lZGlhcywgZGViaWRvIGEgcHJvYmxlbWFzXG4iCisiZHVyYW50ZSBhIGluc3RhbGFjacOzbi4gU2VndXJhbWVudGUgc2UgcG9pZGEgY29tcGxldGFyIGEgaW5zdGFsYWNpw7NuXG4iCisic2Ugc2Ugdm9sdmUgdGVudGFyOyBvcyBwYXF1ZXRlcyBww7NkZW5zZSBlbGltaW5hciBlbXByZWdhbmRvIGRzZWxlY3RcbiIKKyJvdSBkcGtnIC0tcmVtb3ZlOlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjEwMQorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBhd2FpdGluZyBwcm9jZXNzaW5nIG9mIHRyaWdnZXJzIHRoYXQgdGhleVxuIgorImhhdmUgYWN0aXZhdGVkIGluIG90aGVyIHBhY2thZ2VzLiAgVGhpcyBwcm9jZXNzaW5nIGNhbiBiZSByZXF1ZXN0ZWQgdXNpbmdcbiIKKyJkc2VsZWN0IG9yIGRwa2cgLS1jb25maWd1cmUgLS1wZW5kaW5nIChvciBkcGtnIC0tdHJpZ2dlcnMtb25seSk6XG4iCittc2dzdHIgIiIKKyJPcyBzZWd1aW50ZXMgcGFxdWV0ZXMgZXN0w6FuIGEgYWdhcmRhciBvIHByb2Nlc2FtZW50byBkZSBkaXNwYXJhZG9yZXMgcXVlXG4iCisiYWN0aXZhcm9uIG5vdXRyb3MgcGFxdWV0ZXMuIEVzdGUgcHJvY2VzYW1lbnRvIHDDs2Rlc2Ugc29saWNpdGFyIGVtcHJlZ2FuZG9cbiIKKyJkc2VsZWN0IG91IGRwa2cgLS1jb25maWd1cmUgLS1wZW5kaW5nIChvdSBkcGtnIC0tdHJpZ2dlcnMtb25seSk6XG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTA4Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgaGF2ZSBiZWVuIHRyaWdnZXJlZCwgYnV0IHRoZSB0cmlnZ2VyIHByb2Nlc3NpbmdcbiIKKyJoYXMgbm90IHlldCBiZWVuIGRvbmUuICBUcmlnZ2VyIHByb2Nlc3NpbmcgY2FuIGJlIHJlcXVlc3RlZCB1c2luZ1xuIgorImRzZWxlY3Qgb3IgZHBrZyAtLWNvbmZpZ3VyZSAtLXBlbmRpbmcgKG9yIGRwa2cgLS10cmlnZ2Vycy1vbmx5KTpcbiIKK21zZ3N0ciAiIgorIkRpc3BhcsOhcm9uc2Ugb3Mgc2VndWludGVzIHBhcXVldGVzLCBwZXJvIGHDrW5kYSBub24gc2UgcmVhbGl6b3UgbyAiCisicHJvY2VzYW1lbnRvXG4iCisiZG9zIGRpc3BhcmFkb3Jlcy4gUMOzZGVzZSBzb2xpY2l0YXIgbyBwcm9jZXNhbWVudG8gZG9zIGRpc3BhcmFkb3JlcyAiCisiZW1wcmVnYW5kb1xuIgorImRzZWxlY3Qgb3UgZHBrZyAtLWNvbmZpZ3VyZSAtLXBlbmRpbmcgKG91IGRwa2cgLS10cmlnZ2Vycy1vbmx5KTpcbiIKKworIzogc3JjL2VucXVpcnkuYzoxMzcgc3JjL2VucXVpcnkuYzoyMTEgc3JjL2VucXVpcnkuYzoyOTIgc3JjL2VucXVpcnkuYzozNzMKKyM6IHNyYy9lbnF1aXJ5LmM6NDYwIHNyYy9zZWxlY3QuYzo5OCBzcmMvc2VsZWN0LmM6MTY0IHNyYy90cmlnY21kLmM6MTk5CisjOiBzcmMvdXBkYXRlLmM6NDggc3JjL3VwZGF0ZS5jOjExMyBkcGtnLXNwbGl0L3F1ZXVlLmM6MjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgbm8gYXJndW1lbnRzIgorbXNnc3RyICItLSVzIG5vbiB0b21hIG5pbmfDum4gYXJndW1lbnRvIgorCisjOiBzcmMvZW5xdWlyeS5jOjE1MgorbXNnaWQgIiIKKyJBbm90aGVyIHByb2Nlc3MgaGFzIGxvY2tlZCB0aGUgZGF0YWJhc2UgZm9yIHdyaXRpbmcsIGFuZCBtaWdodCBjdXJyZW50bHkgYmVcbiIKKyJtb2RpZnlpbmcgaXQsIHNvbWUgb2YgdGhlIGZvbGxvd2luZyBwcm9ibGVtcyBtaWdodCBqdXN0IGJlIGR1ZSB0byB0aGF0LlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTkxCisjLCBmdXp6eQorI3wgbXNnaWQgIjx1bmtub3duPiIKK21zZ2N0eHQgInNlY3Rpb24iCittc2dpZCAiPHVua25vd24+IgorbXNnc3RyICI8ZGVzY2/DsWVjaWRvPiIKKworIzogc3JjL2VucXVpcnkuYzoyNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiICVkIGluICVzOiAiCittc2dzdHIgIiAlZCBlbiAlczogIgorCisjOiBzcmMvZW5xdWlyeS5jOjI2NgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiICVkIHBhY2thZ2VzLCBmcm9tIHRoZSBmb2xsb3dpbmcgc2VjdGlvbnM6IgorbXNnaWQgIiAlZCBwYWNrYWdlLCBmcm9tIHRoZSBmb2xsb3dpbmcgc2VjdGlvbjoiCittc2dpZF9wbHVyYWwgIiAlZCBwYWNrYWdlcywgZnJvbSB0aGUgZm9sbG93aW5nIHNlY3Rpb25zOiIKK21zZ3N0clswXSAiICVkIHBhcXVldGVzLCBkYXMgc2VndWludGVzIHNlY2Npw7NuczoiCittc2dzdHJbMV0gIiAlZCBwYXF1ZXRlcywgZGFzIHNlZ3VpbnRlcyBzZWNjacOzbnM6IgorCisjOiBzcmMvZW5xdWlyeS5jOjMwNQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIlZlcnNpb24gb2YgZHBrZyB3aXRoIHdvcmtpbmcgJXMgc3VwcG9ydCBub3QgeWV0IGNvbmZpZ3VyZWQuXG4iCisiIFBsZWFzZSB1c2UgJ2Rwa2cgLS1jb25maWd1cmUgZHBrZycsIGFuZCB0aGVuIHRyeSBhZ2Fpbi5cbiIKK21zZ3N0ciAiIgorIkHDrW5kYSBub24gaGFpIGNvbmZpZ3VyYWRhIG5pbmd1bmhhIHZlcnNpw7NuIGRlIGRwa2cgY29uIHNvcG9ydGUgZGUgw6lwb2Nhcy5cbiIKKyIgRW1wcmVndWUgXCJkcGtnIC0tY29uZmlndXJlIGRwa2dcIiBlIHZvbHZhIHRlbnRhbG8uXG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzEwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJkcGtnIG5vdCByZWNvcmRlZCBhcyBpbnN0YWxsZWQsIGNhbm5vdCBjaGVjayBmb3IgJXMgc3VwcG9ydCFcbiIKK21zZ3N0ciAiIgorImRwa2cgbm9uIGNvbnN0YSBjb21hIGluc3RhbGFkbywgbm9uIHNlIHBvZGUgY29tcHJvYmFyIG8gc29wb3J0ZSBkZSDDqXBvY2FzLlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjMyMQorbXNnaWQgIlByZS1EZXBlbmRzIGZpZWxkIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzI5Cittc2dpZCAiZXBvY2giCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzozMzcKK21zZ2lkICJsb25nIGZpbGVuYW1lcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZW5xdWlyeS5jOjM0NgorbXNnaWQgIm11bHRpcGxlIENvbmZsaWN0cyBhbmQgUmVwbGFjZXMiCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzo0MzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IGNhbm5vdCBzZWUgaG93IHRvIHNhdGlzZnkgcHJlLWRlcGVuZGVuY3k6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKyJkcGtnOiBub24gc2UgcG9kZSBkZXRlcm1pbmFyIGNvbW8gc2F0aXNmYWNlciBhIHByZWRlcGVuZGVuY2lhOlxuIgorIiAlc1xuIgorCisjOiBzcmMvZW5xdWlyeS5jOjQzNQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc2F0aXNmeSBwcmUtZGVwZW5kZW5jaWVzIGZvciAlLjI1MHMgKHdhbnRlZCBkdWUgdG8gJS4yNTBzKSIKK21zZ3N0ciAibm9uIHNlIHBvZGVuIHNhdGlzZmFjZXIgYXMgcHJlZGVwZW5kZW5jaWFzIGRlICUuMjUwcyAoZGViaWRvIGEgJS4yNTBzKSIKKworIzogc3JjL2VucXVpcnkuYzo0NzIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIm9ic29sZXRlIG9wdGlvbiAnLS0lcycsIHBsZWFzZSB1c2UgJy0tJXMnIGluc3RlYWQuIgorbXNnc3RyICJBdmlzbzogb3BjacOzbiBcIi0tJXNcIiBvYnNvbGV0YVxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjUxOQorbXNnaWQgIiIKKyItLWNvbXBhcmUtdmVyc2lvbnMgdGFrZXMgdGhyZWUgYXJndW1lbnRzOiA8dmVyc2lvbj4gPHJlbGF0aW9uPiA8dmVyc2lvbj4iCittc2dzdHIgIiIKKyItLWNvbXBhcmUtdmVyc2lvbnMgdG9tYSB0cmVzIGFyZ3VtZW50b3M6IDx2ZXJzacOzbj4gPHJlbGFjacOzbj4gPHZlcnNpw7NuPiIKKworIzogc3JjL2VucXVpcnkuYzo1MjQKK21zZ2lkICItLWNvbXBhcmUtdmVyc2lvbnMgYmFkIHJlbGF0aW9uIgorbXNnc3RyICJyZWxhY2nDs24gaW5jb3JyZWN0YSBwYXJhIC0tY29tcGFyZS12ZXJzaW9ucyIKKworIzogc3JjL2VucXVpcnkuYzo1Mjkgc3JjL2VucXVpcnkuYzo1MzEgc3JjL2VucXVpcnkuYzo1NDAgc3JjL2VucXVpcnkuYzo1NDIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInZlcnNpb24gJyVzJyBoYXMgYmFkIHN5bnRheDogJXMiCittc2dzdHIgImRwa2c6IGEgdmVyc2nDs24gXCIlc1wiIHRlbiB1bmhhIHNpbnRheGUgaW5jb3JyZWN0YTogJXNcbiIKKworIzogc3JjL2Vycm9ycy5jOjYwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogZXJyb3IgcHJvY2Vzc2luZyAlcyAoLS0lcyk6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKyIlczogZXJybyBhbyBwcm9jZXNhciAlcyAoLS0lcyk6XG4iCisiICVzXG4iCisKKyM6IHNyYy9lcnJvcnMuYzo2OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgImRwa2c6IGZhaWxlZCB0byBhbGxvY2F0ZSBtZW1vcnkgZm9yIG5ldyBlbnRyeSBpbiBsaXN0IG9mIGZhaWxlZCBwYWNrYWdlcy4iCittc2dpZCAiIgorIiVzOiBmYWlsZWQgdG8gYWxsb2NhdGUgbWVtb3J5IGZvciBuZXcgZW50cnkgaW4gbGlzdCBvZiBmYWlsZWQgcGFja2FnZXM6ICVzIgorbXNnc3RyICIiCisiZHBrZzogbm9uIHNlIHB1aWRvIHJlc2VydmFyIG1lbW9yaWEgcGFyYSBhIG5vdmEgZW50cmFkYSBkYSBsaXN0YSBkZSBwYXF1ZXRlcyAiCisiZmFsbGlkb3MuIgorCisjOiBzcmMvZXJyb3JzLmM6NzkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImRwa2c6IHRvbyBtYW55IGVycm9ycywgc3RvcHBpbmdcbiIKK21zZ2lkICIlczogdG9vIG1hbnkgZXJyb3JzLCBzdG9wcGluZ1xuIgorbXNnc3RyICJkcGtnOiBoYWkgZXJyb3MgZGUgbcOhaXMsIGRldGVuc2VcbiIKKworIzogc3JjL2Vycm9ycy5jOjg3Cittc2dpZCAiRXJyb3JzIHdlcmUgZW5jb3VudGVyZWQgd2hpbGUgcHJvY2Vzc2luZzpcbiIKK21zZ3N0ciAiQXBhcmVjZXJvbiBlcnJvcyBhbyBwcm9jZXNhcjpcbiIKKworIzogc3JjL2Vycm9ycy5jOjk0Cittc2dpZCAiUHJvY2Vzc2luZyB3YXMgaGFsdGVkIGJlY2F1c2UgdGhlcmUgd2VyZSB0b28gbWFueSBlcnJvcnMuXG4iCittc2dzdHIgIk8gcHJvY2VzYW1lbnRvIGRldGV1c2UgcG9ycXVlIGhvdWJvIGVycm9zIGRlIG3DoWlzLlxuIgorCisjOiBzcmMvZXJyb3JzLmM6MTA1CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgJXMgd2FzIG9uIGhvbGQsIHByb2Nlc3NpbmcgaXQgYW55d2F5IGFzIHlvdSByZXF1ZXN0ZWRcbiIKK21zZ3N0ciAiTyBwYXF1ZXRlICVzIGVzdGFiYSByZXRpZG8sIHByb2PDqXNhc2UgaWd1YWxtZW50ZSBwb2xhIHPDumEgcGV0aWNpw7NuXG4iCisKKyM6IHNyYy9lcnJvcnMuYzoxMDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlBhY2thZ2UgJXMgaXMgb24gaG9sZCwgbm90IHRvdWNoaW5nIGl0LiAgVXNlIC0tZm9yY2UtaG9sZCB0byBvdmVycmlkZS5cbiIKK21zZ3N0ciAiIgorIk8gcGFxdWV0ZSAlcyBlc3TDoSByZXRpZG8sIG5vbiBzZSB0b2NhLiBFbXByZWd1ZSAtLWZvcmNlLWhvbGQgcGFyYSBvIGZhY2VyLlxuIgorCisjOiBzcmMvZXJyb3JzLmM6MTE5CisjLCBmdXp6eQorbXNnaWQgIm92ZXJyaWRpbmcgcHJvYmxlbSBiZWNhdXNlIC0tZm9yY2UgZW5hYmxlZDoiCittc2dzdHIgIiIKKyJkcGtnIC0gYXZpc28sIG9tw610ZXNlIG8gcHJvYmxlbWEgcG9ycXVlIC0tZm9yY2UgZXN0w6EgYWN0aXZhZG86XG4iCisiICIKKworIzogc3JjL2ZpbGVzZGIuYzozMDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlIGAlLjI1MHMnIgorbXNnc3RyICJub24gc2UgcHVpZG8gYWJyaXIgYSBsaXN0YSBkZSBmaWNoZWlyb3MgZG8gcGFxdWV0ZSBcIiUuMjUwc1wiIgorCisjOiBzcmMvZmlsZXNkYi5jOjMxMQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorImZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSBgJS4yNTBzJyBtaXNzaW5nLCBhc3N1bWluZyBwYWNrYWdlIGhhcyBubyBmaWxlcyAiCisiY3VycmVudGx5IGluc3RhbGxlZC4iCittc2dzdHIgIiIKKyJkcGtnOiBhdmlzbyBncmF2ZTogYSBsaXN0YSBkZSBmaWNoZWlyb3MgZG8gcGFxdWV0ZSBcIiUuMjUwc1wiIG5vbiBhcGFyZWNlLCAiCisic3Vwb25zZSBxdWUgbyBwYXF1ZXRlIG5vbiB0ZW4gZmljaGVpcm9zIGluc3RhbGFkb3MgYWN0dWFsbWVudGUuXG4iCisKKyM6IHNyYy9maWxlc2RiLmM6MzIyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJyUuMjUwcyciCittc2dzdHIgIm5vbiBzZSBwdWlkbyBhYnJpciBhIGxpc3RhIGRlIGZpY2hlaXJvcyBkbyBwYXF1ZXRlIFwiJS4yNTBzXCIiCisKKyM6IHNyYy9maWxlc2RiLmM6MzMwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlcyBsaXN0IGZvciBwYWNrYWdlIGAlLjI1MHMnIgorbXNnaWQgInJlYWRpbmcgZmlsZXMgbGlzdCBmb3IgcGFja2FnZSAnJS4yNTBzJyIKK21zZ3N0ciAibGlzdGEgZGUgZmljaGVpcm9zIGRvIHBhcXVldGUgXCIlLjI1MHNcIiIKKworIzogc3JjL2ZpbGVzZGIuYzozMzYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAnJS4yNTBzJyBpcyBtaXNzaW5nIGZpbmFsIG5ld2xpbmUiCittc2dzdHIgIiIKKyJhIGxpc3RhIGRlIGZpY2hlaXJvcyBkbyBwYXF1ZXRlIFwiJS4yNTBzXCIgY29udMOpbiB1biBub21lIGRlIGZpY2hlaXJvIGJhbGVpcm8iCisKKyM6IHNyYy9maWxlc2RiLmM6MzQ0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSBgJS4yNTBzJyBjb250YWlucyBlbXB0eSBmaWxlbmFtZSIKK21zZ3N0ciAiIgorImEgbGlzdGEgZGUgZmljaGVpcm9zIGRvIHBhcXVldGUgXCIlLjI1MHNcIiBjb250w6luIHVuIG5vbWUgZGUgZmljaGVpcm8gYmFsZWlybyIKKworIzogc3JjL2ZpbGVzZGIuYzozNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcyciCittc2dzdHIgImVycm8gYW8gcGVjaGFyIGEgbGlzdGEgZGUgZmljaGVpcm9zIGRvIHBhcXVldGUgXCIlLjI1MHNcIiIKKworIzogc3JjL2ZpbGVzZGIuYzo0NjIKK21zZ2lkICIoUmVhZGluZyBkYXRhYmFzZSAuLi4gIgorbXNnc3RyICIoQSBsZXIgYSBiYXNlIGRlIGRhdG9zIC4uLiAiCisKKyM6IHNyYy9maWxlc2RiLmM6NDgzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIlZCBmaWxlcyBhbmQgZGlyZWN0b3JpZXMgY3VycmVudGx5IGluc3RhbGxlZC4pXG4iCittc2dpZCAiJWQgZmlsZSBvciBkaXJlY3RvcnkgY3VycmVudGx5IGluc3RhbGxlZC4pXG4iCittc2dpZF9wbHVyYWwgIiVkIGZpbGVzIGFuZCBkaXJlY3RvcmllcyBjdXJyZW50bHkgaW5zdGFsbGVkLilcbiIKK21zZ3N0clswXSAiaGFpICVkIGZpY2hlaXJvcyBlIGRpcmVjdG9yaW9zIGluc3RhbGFkb3MgYWN0dWFsbWVudGUuKVxuIgorbXNnc3RyWzFdICJoYWkgJWQgZmljaGVpcm9zIGUgZGlyZWN0b3Jpb3MgaW5zdGFsYWRvcyBhY3R1YWxtZW50ZS4pXG4iCisKKyM6IHNyYy9maWxlc2RiLmM6NTE2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIm5vbiBzZSBwb2RlIGNyZWFyIGEgbGlzdGEgZGUgZmljaGVpcm9zIGFjdHVhbGl6YWRhIHBhcmEgbyBwYXF1ZXRlICVzIgorCisjOiBzcmMvZmlsZXNkYi5jOjUyNgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgdG8gdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIm5vbiBzZSBwdWlkbyBncmF2YXIgYSBsaXN0YSBkZSBmaWNoZWlyb3MgZG8gcGFxdWV0ZSAlcyIKKworIzogc3JjL2ZpbGVzZGIuYzo1MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZsdXNoIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICIiCisibm9uIHNlIHB1aWRvIGJhbGVpcmFyIG8gYnVmZmVyIGRhIGxpc3RhIGRlIGZpY2hlaXJvcyBhY3R1YWxpemFkYSBkbyBwYXF1ZXRlICIKKyIlcyIKKworIzogc3JjL2ZpbGVzZGIuYzo1MzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHN5bmMgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIm5vbiBzZSBwdWlkbyBzaW5jcm9uaXphciBhIGxpc3RhIGRlIGZpY2hlaXJvcyBkbyBwYXF1ZXRlICVzIgorCisjOiBzcmMvZmlsZXNkYi5jOjUzMworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2xvc2UgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIm5vbiBzZSBwdWlkbyBwZWNoYXIgYSBsaXN0YSBkZSBmaWNoZWlyb3MgYWN0dWFsaXphZGEgZG8gcGFxdWV0ZSAlcyIKKworIzogc3JjL2ZpbGVzZGIuYzo1MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGluc3RhbGwgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIm5vbiBzZSBwdWlkbyBpbnN0YWxhciBhIGxpc3RhIGRlIGZpY2hlaXJvcyBhY3R1YWxpemFkYSBkbyBwYXF1ZXRlICVzIgorCisjOiBzcmMvaGVscC5jOjQ4Cittc2dpZCAibm90IGluc3RhbGxlZCIKK21zZ3N0ciAic2VuIGluc3RhbGFyIgorCisjOiBzcmMvaGVscC5jOjQ5Cittc2dpZCAibm90IGluc3RhbGxlZCBidXQgY29uZmlncyByZW1haW4iCittc2dzdHIgInNlbiBpbnN0YWxhciBwZXJvIGhhaSBmaWNoZWlyb3MgZGUgY29uZmlndXJhY2nDs24iCisKKyM6IHNyYy9oZWxwLmM6NTAKK21zZ2lkICJicm9rZW4gZHVlIHRvIGZhaWxlZCByZW1vdmFsIG9yIGluc3RhbGxhdGlvbiIKK21zZ3N0ciAicm90byBkZWJpZG8gYSB1bmhhIGVsaW1pbmFjacOzbiBvdSBpbnN0YWxhY2nDs24gZmFsbGlkYSIKKworIzogc3JjL2hlbHAuYzo1MQorbXNnaWQgInVucGFja2VkIGJ1dCBub3QgY29uZmlndXJlZCIKK21zZ3N0ciAiZGVzZW1wYXF1ZXRhZG8gcGVybyBzZW4gY29uZmlndXJhciIKKworIzogc3JjL2hlbHAuYzo1MgorbXNnaWQgImJyb2tlbiBkdWUgdG8gcG9zdGluc3QgZmFpbHVyZSIKK21zZ3N0ciAicm90byBwb3IgdW4gZmFsbG8gbm8gcG9zdGluc3QiCisKKyM6IHNyYy9oZWxwLmM6NTMKK21zZ2lkICJhd2FpdGluZyB0cmlnZ2VyIHByb2Nlc3NpbmcgYnkgYW5vdGhlciBwYWNrYWdlIgorbXNnc3RyICJhIGFnYXJkYXIgYSBxdWUgb3V0cm8gcGFxdWV0ZSBwcm9jZXNlIGRpc3BhcmFkb3JlcyIKKworIzogc3JjL2hlbHAuYzo1NAorbXNnaWQgInRyaWdnZXJlZCIKK21zZ3N0ciAiZGlzcGFyYWRvIgorCisjOiBzcmMvaGVscC5jOjU1Cittc2dpZCAiaW5zdGFsbGVkIgorbXNnc3RyICJpbnN0YWxhZG8iCisKKyM6IHNyYy9oZWxwLmM6MTA3CisjLCBmdXp6eQorbXNnaWQgIlBBVEggaXMgbm90IHNldC4iCittc2dzdHIgImRwa2cgLSBlcnJvOiBhIHZhcmlhYmxlIGRlIGFtYmllbnRlIFBBVEggbm9uIGVzdMOhIGVzdGFibGVjaWRhLlxuIgorCisjOiBzcmMvaGVscC5jOjEyOQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS4iCittc2dzdHIgImRwa2c6IFwiJXNcIiBub24gYXBhcmVjZSBuYSB2YXJpYWJsZSBQQVRILlxuIgorCisjOiBzcmMvaGVscC5jOjEzOAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIiVkIGV4cGVjdGVkIHByb2dyYW0gbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuXG4iCisiJXMiCittc2dpZF9wbHVyYWwgIiIKKyIlZCBleHBlY3RlZCBwcm9ncmFtcyBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS5cbiIKKyIlcyIKK21zZ3N0clswXSAiZHBrZzogXCIlc1wiIG5vbiBhcGFyZWNlIG5hIHZhcmlhYmxlIFBBVEguXG4iCittc2dzdHJbMV0gImRwa2c6IFwiJXNcIiBub24gYXBhcmVjZSBuYSB2YXJpYWJsZSBQQVRILlxuIgorCisjOiBzcmMvaGVscC5jOjE0MQorIywgZnV6enkKK21zZ2lkICIiCisiTm90ZTogcm9vdCdzIFBBVEggc2hvdWxkIHVzdWFsbHkgY29udGFpbiAvdXNyL2xvY2FsL3NiaW4sIC91c3Ivc2JpbiBhbmQgLyIKKyJzYmluLiIKK21zZ3N0ciAiIgorIk5vbiBzZSBhdG9wYXJvbiAlZCBwcm9ncmFtYShzKSBlc3BlcmFkb3MgbmEgdmFyaWFibGUgUEFUSC5cbiIKKyJOb3RhOiBvIFBBVEggZGUgcm9vdCBkZWJlcsOtYSBjb250ZXIgL3Vzci9sb2NhbC9zYmluLCAvdXNyL3NiaW4gZSAvc2Jpbi4iCisKKyM6IHNyYy9oZWxwLmM6MTg4Cittc2dpZCAiYWRtaW5kaXIgbXVzdCBiZSBpbnNpZGUgaW5zdGRpciBmb3IgZHBrZyB0byB3b3JrIHByb3Blcmx5IgorbXNnc3RyICIiCisKKyM6IHNyYy9oZWxwLmM6MTkwIHNyYy9tYWluLmM6NzQ3CisjLCBmdXp6eQorbXNnaWQgInVuYWJsZSB0byBzZXRlbnYgZm9yIHN1YnByb2Nlc3NlcyIKK21zZ3N0ciAibm9uIHNlIHBvZGUgbW9kaWZpY2FyIG8gYW1iaWVudGUgcGFyYSBvIHNjcmlwdCBkZSBtYW50ZWRvciIKKworIzogc3JjL2hlbHAuYzoxOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNocm9vdCB0byBgJS4yNTBzJyIKK21zZ3N0ciAibm9uIHNlIHB1aWRvIGZhY2VyIGNocm9vdCBhIFwiJS4yNTBzXCIiCisKKyM6IHNyYy9oZWxwLmM6MTk0IGRwa2ctZGViL2J1aWxkLmM6NDU1IGRwa2ctZGViL2J1aWxkLmM6NDU3CisjOiBkcGtnLWRlYi9idWlsZC5jOjUzNiBkcGtnLWRlYi9idWlsZC5jOjU1OAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gYCUuMjU1cyciCittc2dzdHIgIm5vbiBzZSBwdWlkbyBjYW1iaWFyIGEgXCIlLjI1NXNcIiIKKworIzogc3JjL2hlbHAuYzoyNTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNldCBleGVjdXRlIHBlcm1pc3Npb25zIG9uIGAlLjI1MHMnIgorbXNnc3RyICJub24gc2UgcG9kZW4gZXN0YWJsZWNlciBwZXJtaXNvcyBkZSBleGVjdWNpw7NuIGVuIFwiJS4yNTBzXCIiCisKKyM6IHNyYy9oZWxwLmM6Mjc2CisjLCBmdXp6eQorbXNnaWQgInVuYWJsZSB0byBzZXRlbnYgZm9yIG1haW50YWluZXIgc2NyaXB0IgorbXNnc3RyICJub24gc2UgcG9kZSBtb2RpZmljYXIgbyBhbWJpZW50ZSBwYXJhIG8gc2NyaXB0IGRlIG1hbnRlZG9yIgorCisjOiBzcmMvaGVscC5jOjMwMAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiaW5zdGFsbGVkICVzIHNjcmlwdCIKK21zZ3N0ciAiYW50aWdvIHNjcmlwdCBkZSAlcyIKKworIzogc3JjL2hlbHAuYzozMTMgc3JjL2hlbHAuYzozODIgc3JjL2hlbHAuYzo0NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgJXMgYCUuMjUwcyciCittc2dzdHIgIm5vbiBzZSBwb2RlIGF0b3BhciBvICVzIFwiJXMuMjUwc1wiIgorCisjOiBzcmMvaGVscC5jOjM2OCBzcmMvaGVscC5jOjQyOAorIywgYy1mb3JtYXQKK21zZ2lkICJuZXcgJXMgc2NyaXB0IgorbXNnc3RyICJub3ZvIHNjcmlwdCBkZSAlcyIKKworIzogc3JjL2hlbHAuYzo0MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAib2xkICVzIHNjcmlwdCIKK21zZ3N0ciAiYW50aWdvIHNjcmlwdCBkZSAlcyIKKworIzogc3JjL2hlbHAuYzo0MTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0ICVzICclLjI1MHMnOiAlcyIKK21zZ3N0ciAibm9uIHNlIHBvZGUgYXRvcGFyIG8gJXMgXCIlcy4yNTBzXCIiCisKKyM6IHNyYy9oZWxwLmM6NDI1CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2cgLSB0cnlpbmcgc2NyaXB0IGZyb20gdGhlIG5ldyBwYWNrYWdlIGluc3RlYWQgLi4uXG4iCittc2dzdHIgImRwa2cgLSBwcsOzYmFzZSBvIHNjcmlwdCBkbyBub3ZvIHBhcXVldGUgbm8gc2V1IGNhbnRvIC4uLlxuIgorCisjOiBzcmMvaGVscC5jOjQzOQorbXNnaWQgInRoZXJlIGlzIG5vIHNjcmlwdCBpbiB0aGUgbmV3IHZlcnNpb24gb2YgdGhlIHBhY2thZ2UgLSBnaXZpbmcgdXAiCittc2dzdHIgIm5vbiBoYWkgdW4gc2NyaXB0IG5hIG5vdmEgdmVyc2nDs24gZG8gcGFxdWV0ZSAtIGFiYW5kw7NuYXNlIgorCisjOiBzcmMvaGVscC5jOjQ0NQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiAuLi4gaXQgbG9va3MgbGlrZSB0aGF0IHdlbnQgT0suXG4iCittc2dzdHIgImRwa2c6IC4uLiBzZW1lbGxhIHF1ZSBpc28gZm9pIGJlbi5cbiIKKworIzogc3JjL2hlbHAuYzo2MTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWN1cmVseSByZW1vdmUgJyUuMjU1cyciCittc2dzdHIgIm5vbiBzZSBwb2RlIGNyZWFyIFwiJS4yNTVzXCIiCisKKyM6IHNyYy9oZWxwLmM6NjIxIGRwa2ctZGViL2luZm8uYzo2NSBkcGtnLWRlYi9pbmZvLmM6NjcKK21zZ2lkICJybSBjb21tYW5kIGZvciBjbGVhbnVwIgorbXNnc3RyICIiCisKKyM6IHNyYy9pbmZvZGIuYzo1MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hlY2sgZXhpc3RlbmNlIG9mIGAlLjI1MHMnIgorbXNnc3RyICJub24gc2UgcG9kZSBjb21wcm9iYXIgYSBleGlzdGVuY2lhIGRlIFwiJS4yNTBzXCIiCisKKyM6IHNyYy9pbmZvZGIuYzo3MAorbXNnaWQgImNhbm5vdCByZWFkIGluZm8gZGlyZWN0b3J5IgorbXNnc3RyICJub24gc2UgcG9kZSBsZXIgbyBkaXJlY3RvcmlvIGRlIGluZm9ybWFjacOzbiIKKworIzogc3JjL21haW4uYzo2MAorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIG1hbmFnZW1lbnQgcHJvZ3JhbSB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICJQcm9ncmFtYSBkZSB4ZXN0acOzbiBkZSBwYXF1ZXRlcyBcIiVzXCIgZGUgRGViaWFuIHZlcnNpw7NuICVzLlxuIgorCisjOiBzcmMvbWFpbi5jOjg1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1pfC0taW5zdGFsbCAgICAgICA8LmRlYiBmaWxlIG5hbWU+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXJlY3Rvcnk+IC4uLlxuIgorIiAgLS11bnBhY2sgICAgICAgICAgIDwuZGViIGZpbGUgbmFtZT4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRpcmVjdG9yeT4gLi4uXG4iCisiICAtQXwtLXJlY29yZC1hdmFpbCAgPC5kZWIgZmlsZSBuYW1lPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyZWN0b3J5PiAuLi5cbiIKKyIgIC0tY29uZmlndXJlICAgICAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtLXRyaWdnZXJzLW9ubHkgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLXJ8LS1yZW1vdmUgICAgICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC1QfC0tcHVyZ2UgICAgICAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtLWdldC1zZWxlY3Rpb25zIFs8cGF0dGVybj4gLi4uXSBHZXQgbGlzdCBvZiBzZWxlY3Rpb25zIHRvIHN0ZG91dC5cbiIKKyIgIC0tc2V0LXNlbGVjdGlvbnMgICAgICAgICAgICAgICAgIFNldCBwYWNrYWdlIHNlbGVjdGlvbnMgZnJvbSBzdGRpbi5cbiIKKyIgIC0tY2xlYXItc2VsZWN0aW9ucyAgICAgICAgICAgICAgIERlc2VsZWN0IGV2ZXJ5IG5vbi1lc3NlbnRpYWwgcGFja2FnZS5cbiIKKyIgIC0tdXBkYXRlLWF2YWlsIDxQYWNrYWdlcy1maWxlPiAgIFJlcGxhY2UgYXZhaWxhYmxlIHBhY2thZ2VzIGluZm8uXG4iCisiICAtLW1lcmdlLWF2YWlsIDxQYWNrYWdlcy1maWxlPiAgICBNZXJnZSB3aXRoIGluZm8gZnJvbSBmaWxlLlxuIgorIiAgLS1jbGVhci1hdmFpbCAgICAgICAgICAgICAgICAgICAgRXJhc2UgZXhpc3RpbmcgYXZhaWxhYmxlIGluZm8uXG4iCisiICAtLWZvcmdldC1vbGQtdW5hdmFpbCAgICAgICAgICAgICBGb3JnZXQgdW5pbnN0YWxsZWQgdW5hdmFpbGFibGUgcGtncy5cbiIKKyIgIC1zfC0tc3RhdHVzIDxwYWNrYWdlPiAuLi4gICAgICAgIERpc3BsYXkgcGFja2FnZSBzdGF0dXMgZGV0YWlscy5cbiIKKyIgIC1wfC0tcHJpbnQtYXZhaWwgPHBhY2thZ2U+IC4uLiAgIERpc3BsYXkgYXZhaWxhYmxlIHZlcnNpb24gZGV0YWlscy5cbiIKKyIgIC1MfC0tbGlzdGZpbGVzIDxwYWNrYWdlPiAuLi4gICAgIExpc3QgZmlsZXMgYG93bmVkJyBieSBwYWNrYWdlKHMpLlxuIgorIiAgLWx8LS1saXN0IFs8cGF0dGVybj4gLi4uXSAgICAgICAgTGlzdCBwYWNrYWdlcyBjb25jaXNlbHkuXG4iCisiICAtU3wtLXNlYXJjaCA8cGF0dGVybj4gLi4uICAgICAgICBGaW5kIHBhY2thZ2Uocykgb3duaW5nIGZpbGUocykuXG4iCisiICAtQ3wtLWF1ZGl0ICAgICAgICAgICAgICAgICAgICAgICBDaGVjayBmb3IgYnJva2VuIHBhY2thZ2UocykuXG4iCisiICAtLXByaW50LWFyY2hpdGVjdHVyZSAgICAgICAgICAgICBQcmludCBkcGtnIGFyY2hpdGVjdHVyZS5cbiIKKyIgIC0tY29tcGFyZS12ZXJzaW9ucyA8YT4gPG9wPiA8Yj4gIENvbXBhcmUgdmVyc2lvbiBudW1iZXJzIC0gc2VlIGJlbG93LlxuIgorIiAgLS1mb3JjZS1oZWxwICAgICAgICAgICAgICAgICAgICAgU2hvdyBoZWxwIG9uIGZvcmNpbmcuXG4iCisiICAtRGh8LS1kZWJ1Zz1oZWxwICAgICAgICAgICAgICAgICBTaG93IGhlbHAgb24gZGVidWdnaW5nLlxuIgorIlxuIgorbXNnc3RyICIiCisiT3JkZXM6XG4iCisiICAtaXwtLWluc3RhbGwgICAgICAgPGZpY2hlaXJvIC5kZWI+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXJlY3RvcmlvPiAuLi5cbiIKKyIgIC0tdW5wYWNrICAgICAgICAgICA8ZmljaGVpcm8gLmRlYj4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRpcmVjdG9yaW8+IC4uLlxuIgorIiAgLUF8LS1yZWNvcmQtYXZhaWwgIDxmaWNoZWlybyAuZGViPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyZWN0b3Jpbz4gLi4uXG4iCisiICAtLWNvbmZpZ3VyZSAgICAgICAgPHBhcXVldGU+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLS10cmlnZ2Vycy1vbmx5ICAgIDxwYXF1ZXRlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC1yfC0tcmVtb3ZlICAgICAgICA8cGFxdWV0ZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtUHwtLXB1cmdlICAgICAgICAgPHBhcXVldGU+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLS1nZXQtc2VsZWN0aW9ucyBbPHBhdHLDs24+IC4uLl0gICAgICBBbW9zYSBhIGxpc3RhIGRlIHNlbGVjY2nDs25zLlxuIgorIiAgLS1zZXQtc2VsZWN0aW9ucyAgICAgICAgICAgICAgICAgICAgIEVzdGFibGVjZSBhcyBzZWxlY2Npw7NucyBkZSBwYXF1ZXRlcy5cbiIKKyIgIC0tY2xlYXItc2VsZWN0aW9ucyAgICAgICAgICAgICAgICAgICBEZXNlbGVjY2lvbmEgb3MgcGFxdWV0ZXMgbm9uICIKKyJlc2VuY2lhaXMuXG4iCisiICAtLXVwZGF0ZS1hdmFpbCA8ZmljaGVpcm8tUGFja2FnZXM+ICAgU3Vic3RpdMO6ZSBhIGluZm9ybWFjacOzbiBkZSBwYXF1ZXRlcy5cbiIKKyIgIC0tbWVyZ2UtYXZhaWwgPGZpY2hlaXJvLVBhY2thZ2VzPiAgICBNZXN0dXJhIGNvYSBpbmZvcm1hY2nDs24gZG8gZmljaGVpcm8uXG4iCisiICAtLWNsZWFyLWF2YWlsICAgICAgICAgICAgICAgICAgICAgICAgQm9ycmEgYSBpbmZvcm1hY2nDs24gZGUgZGlzcG/DsWlibGVzLlxuIgorIiAgLS1mb3JnZXQtb2xkLXVuYXZhaWwgICAgICAgICAgICAgICAgIEVzcXVlY2Ugb3MgcGFxdWV0ZXMgZGVzaW5zdGFsYWRvc1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlIG5vbiBkaXNwb8OxaWJsZXMuXG4iCisiICAtc3wtLXN0YXR1cyA8cGFxdWV0ZT4gLi4uICAgICAgICAgICAgQW1vc2EgZGV0YWxsZXMgZG8gZXN0YWRvIGRvIHBhcXVldGUuXG4iCisiICAtcHwtLXByaW50LWF2YWlsIDxwYXF1ZXRlPiAuLi4gICAgICAgQW1vc2EgZGV0YWxsZXMgZGEgdmVyc2nDs24gIgorImRpc3Bvw7FpYmxlLlxuIgorIiAgLUx8LS1saXN0ZmlsZXMgPHBhcXVldGU+IC4uLiAgICAgICAgIEFtb3NhIG9zIGZpY2hlaXJvcyBkbyBwYXF1ZXRlLlxuIgorIiAgLWx8LS1saXN0IFs8cGF0csOzbj4gLi4uXSAgICAgICAgICAgICBBbW9zYSB1bmhhIGxpc3RhIGNvbmNpc2EgZGUgIgorInBhcXVldGVzLlxuIgorIiAgLVN8LS1zZWFyY2ggPHBhdHLDs24+IC4uLiAgICAgICAgICAgICBCdXNjYSBwYXF1ZXRlcyBxdWUgY29udGXDsWVuIG8gIgorImZpY2hlaXJvLlxuIgorIiAgLUN8LS1hdWRpdCAgICAgICAgICAgICAgICAgICAgICAgICAgIEJ1c2NhIHBhcXVldGVzIHJvdG9zLlxuIgorIiAgLS1wcmludC1hcmNoaXRlY3R1cmUgICAgICAgICAgICAgICAgIEFtb3NhIGEgYXJxdWl0ZWN0dXJhIGRlIGRwa2cuXG4iCisiICAtLWNvbXBhcmUtdmVyc2lvbnMgPGE+IDxvcD4gPGI+ICAgICAgQ29tcGFyYSB2ZXJzacOzbnMgLSBtaXJlIGVtYmFpeG8uXG4iCisiICAtLWZvcmNlLWhlbHAgICAgICAgICAgICAgICAgICAgICAgICAgQXh1ZGEgc29icmUgbyBmb3J6YWRvLlxuIgorIiAgLURofC0tZGVidWc9aGVscCAgICAgICAgICAgICAgICAgICAgIEF4dWRhIHNvYnJlIGEgZGVwdXJhY2nDs24uXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTEzIHNyYy9xdWVyeWNtZC5jOjYzMSBzcmMvdHJpZ2NtZC5jOjc3IGRwa2ctZGViL21haW4uYzo4OAorIzogZHBrZy1zcGxpdC9tYWluLmM6NzcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyIgIC1ofC0taGVscCAgICAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgICAgICAgICBTaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorbXNnc3RyICIiCisiICAtaHwtLWhlbHAgICAgICAgICAgICAgICAgICAgICAgICBBbW9zYSBlc3RhIG1lbnNheGUgZGUgYXh1ZGEuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgICAgICAgICBBbW9zYSBhIHZlcnNpw7NuLlxuIgorIiAgLS1saWNlbnNlfC0tbGljZW5jZSAgICAgICAgICAgICAgQW1vc2Egb3MgdGVybW9zIGRhIGxpY2VuY2lhLlxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjExOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVXNlIGRwa2cgLWJ8LS1idWlsZHwtY3wtLWNvbnRlbnRzfC1lfC0tY29udHJvbHwtSXwtLWluZm98LWZ8LS1maWVsZHxcbiIKKyIgLXh8LS1leHRyYWN0fC1YfC0tdmV4dHJhY3R8LS1mc3lzLXRhcmZpbGUgIG9uIGFyY2hpdmVzICh0eXBlICVzIC0taGVscCkuXG4iCisiXG4iCittc2dzdHIgIiIKKyJFbXByZWd1ZSBkcGtnIC1ifC0tYnVpbGR8LWN8LS1jb250ZW50c3wtZXwtLWNvbnRyb2x8LUl8LS1pbmZvfC1mfC0tZmllbGR8XG4iCisiIC14fC0tZXh0cmFjdHwtWHwtLXZleHRyYWN0fC0tZnN5cy10YXJmaWxlICBub3MgYXJxdWl2b3MgKGVzY3JpYmEgJXMgLS0iCisiaGVscCkuXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTIzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJGb3IgaW50ZXJuYWwgdXNlOiBkcGtnIC0tYXNzZXJ0LXN1cHBvcnQtcHJlZGVwZW5kcyB8IC0tcHJlZGVwLXBhY2thZ2UgfFxuIgorIiAgLS1hc3NlcnQtd29ya2luZy1lcG9jaCB8IC0tYXNzZXJ0LWxvbmctZmlsZW5hbWVzIHwgLS1hc3NlcnQtbXVsdGktY29ucmVwLlxuIgorIlxuIgorbXNnc3RyICIiCisiUGFyYSB1c28gaW50ZXJubzogZHBrZyAtLWFzc2VydC1zdXBwb3J0LXByZWRlcGVuZHMgfCAtLXByZWRlcC1wYWNrYWdlIHxcbiIKKyIgIC0tYXNzZXJ0LXdvcmtpbmctZXBvY2ggfCAtLWFzc2VydC1sb25nLWZpbGVuYW1lcyB8IC0tYXNlcnQtbXVsdGktY29ucmVwLlxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjEyOAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIk9wdGlvbnM6XG4iCisjfCAiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyN8ICIgIC0tcm9vdD08ZGlyZWN0b3J5PiAgICAgICAgIEluc3RhbGwgb24gYSBkaWZmZXJlbnQgcm9vdCBkaXJlY3RvcnkuXG4iCisjfCAiICAtLWluc3RkaXI9PGRpcmVjdG9yeT4gICAgICBDaGFuZ2UgaW5zdGFsbGF0aW9uIGRpciB3aXRob3V0IGNoYW5naW5nICIKKyN8ICJhZG1pbiBkaXIuXG4iCisjfCAiICAtT3wtLXNlbGVjdGVkLW9ubHkgICAgICAgICBTa2lwIHBhY2thZ2VzIG5vdCBzZWxlY3RlZCBmb3IgaW5zdGFsbC8iCisjfCAidXBncmFkZS5cbiIKKyN8ICIgIC1FfC0tc2tpcC1zYW1lLXZlcnNpb24gICAgIFNraXAgcGFja2FnZXMgd2hvc2Ugc2FtZSB2ZXJzaW9uIGlzICIKKyN8ICJpbnN0YWxsZWQuXG4iCisjfCAiICAtR3wtLXJlZnVzZS1kb3duZ3JhZGUgICAgICBTa2lwIHBhY2thZ2VzIHdpdGggZWFybGllciB2ZXJzaW9uIHRoYW4gIgorI3wgImluc3RhbGxlZC5cbiIKKyN8ICIgIC1CfC0tYXV0by1kZWNvbmZpZ3VyZSAgICAgIEluc3RhbGwgZXZlbiBpZiBpdCB3b3VsZCBicmVhayBzb21lIG90aGVyICIKKyN8ICJwYWNrYWdlLlxuIgorI3wgIiAgLS1bbm8tXXRyaWdnZXJzICAgICAgICAgICAgU2tpcCBvciBmb3JjZSBjb25zZXF1ZW50aWFsIHRyaWdnZXIgIgorI3wgInByb2Nlc3NpbmcuXG4iCisjfCAiICAtLW5vLWRlYnNpZyAgICAgICAgICAgICAgICBEbyBub3QgdHJ5IHRvIHZlcmlmeSBwYWNrYWdlIHNpZ25hdHVyZXMuXG4iCisjfCAiICAtLW5vLWFjdHwtLWRyeS1ydW58LS1zaW11bGF0ZVxuIgorI3wgIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSnVzdCBzYXkgd2hhdCB3ZSB3b3VsZCBkbyAtIGRvbid0IGRvIGl0LlxuIgorI3wgIiAgLUR8LS1kZWJ1Zz08b2N0YWw+ICAgICAgICAgRW5hYmxlIGRlYnVnZ2luZyAoc2VlIC1EaGVscCBvciAtLSIKKyN8ICJkZWJ1Zz1oZWxwKS5cbiIKKyN8ICIgIC0tc3RhdHVzLWZkIDxuPiAgICAgICAgICAgIFNlbmQgc3RhdHVzIGNoYW5nZSB1cGRhdGVzIHRvIGZpbGUgIgorI3wgImRlc2NyaXB0b3IgPG4+LlxuIgorI3wgIiAgLS1sb2c9PGZpbGVuYW1lPiAgICAgICAgICAgTG9nIHN0YXR1cyBjaGFuZ2VzIGFuZCBhY3Rpb25zIHRvICIKKyN8ICI8ZmlsZW5hbWU+LlxuIgorI3wgIiAgLS1pZ25vcmUtZGVwZW5kcz08cGFja2FnZT4sLi4uXG4iCisjfCAiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZ25vcmUgZGVwZW5kZW5jaWVzIGludm9sdmluZyA8cGFja2FnZT4uXG4iCisjfCAiICAtLWZvcmNlLS4uLiAgICAgICAgICAgICAgICBPdmVycmlkZSBwcm9ibGVtcyAoc2VlIC0tZm9yY2UtaGVscCkuXG4iCisjfCAiICAtLW5vLWZvcmNlLS4uLnwtLXJlZnVzZS0uLi5cbiIKKyN8ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3Agd2hlbiBwcm9ibGVtcyBlbmNvdW50ZXJlZC5cbiIKKyN8ICIgIC0tYWJvcnQtYWZ0ZXIgPG4+ICAgICAgICAgIEFib3J0IGFmdGVyIGVuY291bnRlcmluZyA8bj4gZXJyb3JzLlxuIgorI3wgIlxuIgorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hZG1pbmRpcj08ZGlyZWN0b3J5PiAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMuXG4iCisiICAtLXJvb3Q9PGRpcmVjdG9yeT4gICAgICAgICBJbnN0YWxsIG9uIGEgZGlmZmVyZW50IHJvb3QgZGlyZWN0b3J5LlxuIgorIiAgLS1pbnN0ZGlyPTxkaXJlY3Rvcnk+ICAgICAgQ2hhbmdlIGluc3RhbGxhdGlvbiBkaXIgd2l0aG91dCBjaGFuZ2luZyBhZG1pbiAiCisiZGlyLlxuIgorIiAgLS1wYXRoLWV4Y2x1ZGU9PHBhdHRlcm4+ICAgRG8gbm90IGluc3RhbGwgcGF0aHMgd2hpY2ggbWF0Y2ggYSBzaGVsbCAiCisicGF0dGVybi5cbiIKKyIgIC0tcGF0aC1pbmNsdWRlPTxwYXR0ZXJuPiAgIFJlLWluY2x1ZGUgYSBwYXR0ZXJuIGFmdGVyIGEgcHJldmlvdXMgIgorImV4Y2x1c2lvbi5cbiIKKyIgIC1PfC0tc2VsZWN0ZWQtb25seSAgICAgICAgIFNraXAgcGFja2FnZXMgbm90IHNlbGVjdGVkIGZvciBpbnN0YWxsLyIKKyJ1cGdyYWRlLlxuIgorIiAgLUV8LS1za2lwLXNhbWUtdmVyc2lvbiAgICAgU2tpcCBwYWNrYWdlcyB3aG9zZSBzYW1lIHZlcnNpb24gaXMgaW5zdGFsbGVkLlxuIgorIiAgLUd8LS1yZWZ1c2UtZG93bmdyYWRlICAgICAgU2tpcCBwYWNrYWdlcyB3aXRoIGVhcmxpZXIgdmVyc2lvbiB0aGFuICIKKyJpbnN0YWxsZWQuXG4iCisiICAtQnwtLWF1dG8tZGVjb25maWd1cmUgICAgICBJbnN0YWxsIGV2ZW4gaWYgaXQgd291bGQgYnJlYWsgc29tZSBvdGhlciAiCisicGFja2FnZS5cbiIKKyIgIC0tW25vLV10cmlnZ2VycyAgICAgICAgICAgIFNraXAgb3IgZm9yY2UgY29uc2VxdWVudGlhbCB0cmlnZ2VyICIKKyJwcm9jZXNzaW5nLlxuIgorIiAgLS1uby1kZWJzaWcgICAgICAgICAgICAgICAgRG8gbm90IHRyeSB0byB2ZXJpZnkgcGFja2FnZSBzaWduYXR1cmVzLlxuIgorIiAgLS1uby1hY3R8LS1kcnktcnVufC0tc2ltdWxhdGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEp1c3Qgc2F5IHdoYXQgd2Ugd291bGQgZG8gLSBkb24ndCBkbyBpdC5cbiIKKyIgIC1EfC0tZGVidWc9PG9jdGFsPiAgICAgICAgIEVuYWJsZSBkZWJ1Z2dpbmcgKHNlZSAtRGhlbHAgb3IgLS1kZWJ1Zz1oZWxwKS5cbiIKKyIgIC0tc3RhdHVzLWZkIDxuPiAgICAgICAgICAgIFNlbmQgc3RhdHVzIGNoYW5nZSB1cGRhdGVzIHRvIGZpbGUgZGVzY3JpcHRvciAiCisiPG4+LlxuIgorIiAgLS1sb2c9PGZpbGVuYW1lPiAgICAgICAgICAgTG9nIHN0YXR1cyBjaGFuZ2VzIGFuZCBhY3Rpb25zIHRvIDxmaWxlbmFtZT4uXG4iCisiICAtLWlnbm9yZS1kZXBlbmRzPTxwYWNrYWdlPiwuLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIElnbm9yZSBkZXBlbmRlbmNpZXMgaW52b2x2aW5nIDxwYWNrYWdlPi5cbiIKKyIgIC0tZm9yY2UtLi4uICAgICAgICAgICAgICAgIE92ZXJyaWRlIHByb2JsZW1zIChzZWUgLS1mb3JjZS1oZWxwKS5cbiIKKyIgIC0tbm8tZm9yY2UtLi4ufC0tcmVmdXNlLS4uLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcCB3aGVuIHByb2JsZW1zIGVuY291bnRlcmVkLlxuIgorIiAgLS1hYm9ydC1hZnRlciA8bj4gICAgICAgICAgQWJvcnQgYWZ0ZXIgZW5jb3VudGVyaW5nIDxuPiBlcnJvcnMuXG4iCisiXG4iCittc2dzdHIgIiIKKyJPcGNpw7NuczpcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yaW8+ICAgIEVtcHJlZ2EgbyA8ZGlyZWN0b3Jpbz4gbm8gY2FudG8gZGUgJXMuXG4iCisiICAtLXJvb3Q9PGRpcmVjdG9yaW8+ICAgICAgICBJbnN0YWxhIG51biBkaXJlY3RvcmlvIHJhw616IGRpZmVyZW50ZS5cbiIKKyIgIC0taW5zdGRpcj08ZGlyZWN0b3Jpbz4gICAgIENhbWJpYSBvIGRpcmVjdG9yaW8gZGUgaW5zdGFsYWNpw7NuIHNlbiBjYW1iaWFyICIKKyJvXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXJlY3RvcmlvIGRlIGFkbWluaXN0cmFjacOzbi5cbiIKKyIgIC1PfC0tc2VsZWN0ZWQtb25seSAgICAgICAgIE9taXRlIG9zIHBhcXVldGVzIG5vbiBzZWxlY2Npb25hZG9zIHBhcmEgaW5zdC8iCisiYWN0LlxuIgorIiAgLUV8LS1za2lwLXNhbWUtdmVyc2lvbiAgICAgT21pdGUgb3MgcGFxdWV0ZXMgeGEgaW5zdGFsYWRvcyBuYSBtZXNtYSAiCisidmVyc2nDs24uXG4iCisiICAtR3wtLXJlZnVzZS1kb3duZ3JhZGUgICAgICBPbWl0ZSBvcyBwYXF1ZXRlcyBkZSB2ZXJzacOzbiBhbnRlcmlvciDDoSAiCisiaW5zdGFsYWRhLlxuIgorIiAgLUJ8LS1hdXRvLWRlY29uZmlndXJlICAgICAgSW5zdGFsYSBpbmNsdXNvIHNlIGhhYsOtYSByb21wZXIgb3V0cm8gcGFxdWV0ZS5cbiIKKyIgIC0tW25vLV10cmlnZ2VycyAgICAgICAgICAgIE9taXRlIG91IGZvcnphIG8gcHJvY2VzYW1lbnRvIGRlIGRpc3BhcmFkb3Jlcy5cbiIKKyIgIC0tbm8tZGVic2lnICAgICAgICAgICAgICAgIE5vbiB0ZW50YSB2ZXJpZmljYXIgYXMgc2luYXR1cmFzIGRvcyBwYXF1ZXRlcy5cbiIKKyIgIC0tbm8tYWN0fC0tZHJ5LXJ1bnwtLXNpbXVsYXRlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTw7MgZGkgbyBxdWUgaGFiw61hIGZhY2VyIC0gbm9uIG8gZmFpLlxuIgorIiAgLUR8LS1kZWJ1Zz08b2N0YWw+ICAgICAgICAgQWN0aXZhIGEgZGVwdXJhY2nDs24gKHZleGEgLURoZWxwIG91IC0tIgorImRlYnVnPWhlbHApLlxuIgorIiAgLS1zdGF0dXMtZmQgPG4+ICAgICAgICAgICAgRW52w61hIG9zIGNhbWJpb3MgZGUgZXN0YWRvIGFvIGRlc2NyaXRvclxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGUgZmljaGVpcm9zIG7Dum1lcm8gPG4+LlxuIgorIiAgLS1sb2c9PGZpY2hlaXJvPiAgICAgICAgICAgUmV4aXN0cmEgb3MgY2FtYmlvcyBlIGFjY2nDs25zIG5vIDxmaWNoZWlybz4uXG4iCisiICAtLWlnbm9yZS1kZXBlbmRzPTxwYXF1ZXRlPiwuLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIElnbm9yYSBhcyBkZXBlbmRlbmNpYXMgcmVsYWNpb25hZGFzIGNvICIKKyI8cGFxdWV0ZT4uXG4iCisiICAtLWZvcmNlLS4uLiAgICAgICAgICAgICAgICBJZ25vcmEgb3MgcHJvYmxlbWFzICh2ZXhhIC0tZm9yY2UtaGVscCkuXG4iCisiICAtLW5vLWZvcmNlLS4uLnwtLXJlZnVzZS0uLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIERldGVuc2UgYW8gYXRvcGFyIHByb2JsZW1hcy5cbiIKKyIgIC0tYWJvcnQtYWZ0ZXIgPG4+ICAgICAgICAgIERldGVuc2UgZGVzcG9pcyBkZSBhdG9wYXIgPG4+IGVycm9zLlxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjE1NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tcGFyaXNvbiBvcGVyYXRvcnMgZm9yIC0tY29tcGFyZS12ZXJzaW9ucyBhcmU6XG4iCisiICBsdCBsZSBlcSBuZSBnZSBndCAgICAgICAodHJlYXQgZW1wdHkgdmVyc2lvbiBhcyBlYXJsaWVyIHRoYW4gYW55ICIKKyJ2ZXJzaW9uKTtcbiIKKyIgIGx0LW5sIGxlLW5sIGdlLW5sIGd0LW5sICh0cmVhdCBlbXB0eSB2ZXJzaW9uIGFzIGxhdGVyIHRoYW4gYW55IHZlcnNpb24pO1xuIgorIiAgPCA8PCA8PSA9ID49ID4+ID4gICAgICAgKG9ubHkgZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBjb250cm9sIGZpbGUgIgorInN5bnRheCkuXG4iCisiXG4iCittc2dzdHIgIiIKKyJPcyBvcGVyYWRvcmVzIGRlIGNvbXBhcmFjacOzbiBwYXJhIC0tY29tcGFyZS12ZXJzaW9ucyBzb246XG4iCisiICBsdCBsZSBlcSBuZSBnZSBndCAgICAgICAodHJhdGFuIGEgdmVyc2nDs24gYmFsZWlyYSBjb21hIGFudGVyaW9yIGEgIgorImNhbHF1ZXJhKTtcbiIKKyIgIGx0LW5sIGxlLW5sIGdlLW5sIGd0LW5sICh0cmF0YW4gYSB2ZXJzacOzbiBiYWxlaXJhIGNvbWEgcG9zdGVyaW9yIGEgIgorImNhbHF1ZXJhKTtcbiIKKyIgIDwgPDwgPD0gPSA+PSA+PiA+ICAgICAgIChzw7MgcG9yIGNvbXBhdGliaWxpZGFkZSBjb3MgZmljaGVpcm9zIGRlICIKKyJjb250cm9sKS5cbiIKKyJcbiIKKworIzogc3JjL21haW4uYzoxNjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiVXNlIGBkc2VsZWN0JyBvciBgYXB0aXR1ZGUnIGZvciB1c2VyLWZyaWVuZGx5IHBhY2thZ2UgbWFuYWdlbWVudC5cbiIKK21zZ3N0ciAiIgorIkVtcHJlZ3VlIFwiZHNlbGVjdFwiIG91IFwiYXB0aXR1ZGVcIiBwYXJhIHhlc3Rpw7NuIGRlIHBhcXVldGVzIGFtaWdhYmxlIGNvICIKKyJ1c3VhcmlvLlxuIgorCisjOiBzcmMvbWFpbi5jOjE3MAorIywgZnV6enkKK21zZ2lkICIiCisiVHlwZSBkcGtnIC0taGVscCBmb3IgaGVscCBhYm91dCBpbnN0YWxsaW5nIGFuZCBkZWluc3RhbGxpbmcgcGFja2FnZXMgWypdO1xuIgorIlVzZSBgZHNlbGVjdCcgb3IgYGFwdGl0dWRlJyBmb3IgdXNlci1mcmllbmRseSBwYWNrYWdlIG1hbmFnZW1lbnQ7XG4iCisiVHlwZSBkcGtnIC1EaGVscCBmb3IgYSBsaXN0IG9mIGRwa2cgZGVidWcgZmxhZyB2YWx1ZXM7XG4iCisiVHlwZSBkcGtnIC0tZm9yY2UtaGVscCBmb3IgYSBsaXN0IG9mIGZvcmNpbmcgb3B0aW9ucztcbiIKKyJUeXBlIGRwa2ctZGViIC0taGVscCBmb3IgaGVscCBhYm91dCBtYW5pcHVsYXRpbmcgKi5kZWIgZmlsZXM7XG4iCisiXG4iCisiT3B0aW9ucyBtYXJrZWQgWypdIHByb2R1Y2UgYSBsb3Qgb2Ygb3V0cHV0IC0gcGlwZSBpdCB0aHJvdWdoIGBsZXNzJyBvciAiCisiYG1vcmUnICEiCittc2dzdHIgIiIKKyJFc2NyaWJhIGRwa2cgLS1oZWxwIHBhcmEgb2J0ZXIgYXh1ZGEgcGFyYSBpbnN0YWxhciBlIGRlc2ludGFsYXIgcGFxdWV0ZXMgIgorIlsqXTtcbiIKKyJFbXByZWd1ZSBcImRzZWxlY3RcIiBvdSBcImFwdGl0dWRlXCIgcGFyYSB4ZXN0acOzbiBkZSBwYXF1ZXRlcyBhbWlnYWJsZSBjbyAiCisidXN1YXJpbztcbiIKKyJFc2NyaWJhIGRwa2cgLURoZWxwIHBhcmEgdW5oYSBsaXN0YSBkZSBtb2RpZmljYWRvcmVzIGRlIGRlcHVyYWNpw7NuIGRlIGRwa2c7XG4iCisiRXNjcmliYSBkcGtnIC0tZm9yY2UtaGVscCBwYXJhIHVuaGEgbGlzdGEgZGUgb3BjacOzbnMgZGUgZm9yemFkbztcbiIKKyJFc2NyaWJhIGRwa2ctZGViIC0taGVscCBwYXJhIGF4dWRhIHNvYnJlIGEgbWFuaXB1bGFjacOzbiBkZSBmaWNoZWlyb3MgKi5kZWI7XG4iCisiRXNjcmliYSBkcGtnIC0tbGljZW5zZSBwYXJhIGEgbGljZW5jaWEgZSBmYWxsYSBkZSBnYXJhbnTDrWEgKEdOVSBHUEwpIFsqXS5cbiIKKyJcbiIKKyJBcyBvcGNpw7NucyBtYXJjYWRhcyBbKl0gcHJvZHVjZW4gbW9pdGEgc2HDrWRhIC0gcMOhc2VhIHBvciBcImxlc3NcIiBvdSBcIm1vcmUiCisiXCIuIgorCisjOiBzcmMvbWFpbi5jOjIxOQorbXNnaWQgIlNldCBhbGwgZm9yY2Ugb3B0aW9ucyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIyMQorbXNnaWQgIlJlcGxhY2UgYSBwYWNrYWdlIHdpdGggYSBsb3dlciB2ZXJzaW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjIzCittc2dpZCAiQ29uZmlndXJlIGFueSBwYWNrYWdlIHdoaWNoIG1heSBoZWxwIHRoaXMgb25lIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjI1Cittc2dpZCAiUHJvY2VzcyBpbmNpZGVudGFsIHBhY2thZ2VzIGV2ZW4gd2hlbiBvbiBob2xkIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjI3Cittc2dpZCAiVHJ5IHRvIChkZSlpbnN0YWxsIHRoaW5ncyBldmVuIHdoZW4gbm90IHJvb3QiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjkKK21zZ2lkICJQQVRIIGlzIG1pc3NpbmcgaW1wb3J0YW50IHByb2dyYW1zLCBwcm9ibGVtcyBsaWtlbHkiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzEKK21zZ2lkICJJbnN0YWxsIGEgcGFja2FnZSBldmVuIGlmIGl0IGZhaWxzIGF1dGhlbnRpY2l0eSBjaGVjayIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzMworbXNnaWQgIlByb2Nlc3MgZXZlbiBwYWNrYWdlcyB3aXRoIHdyb25nIHZlcnNpb25zIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjM1Cittc2dpZCAiT3ZlcndyaXRlIGEgZmlsZSBmcm9tIG9uZSBwYWNrYWdlIHdpdGggYW5vdGhlciIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzNworbXNnaWQgIk92ZXJ3cml0ZSBhIGRpdmVydGVkIGZpbGUgd2l0aCBhbiB1bmRpdmVydGVkIHZlcnNpb24iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzkKK21zZ2lkICJPdmVyd3JpdGUgb25lIHBhY2thZ2UncyBkaXJlY3Rvcnkgd2l0aCBhbm90aGVyJ3MgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI0MQorbXNnaWQgIkRvIG5vdCBwZXJmb3JtIHNhZmUgSS9PIG9wZXJhdGlvbnMgd2hlbiB1bnBhY2tpbmciCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDMKK21zZ2lkICJBbHdheXMgdXNlIHRoZSBuZXcgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDUKK21zZ2lkICJBbHdheXMgdXNlIHRoZSBvbGQgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDgKK21zZ2lkICIiCisiVXNlIHRoZSBkZWZhdWx0IG9wdGlvbiBmb3IgbmV3IGNvbmZpZyBmaWxlcyBpZiBvbmVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgaXMgYXZhaWxhYmxlLCBkb24ndCBwcm9tcHQuIElmIG5vIGRlZmF1bHQgY2FuIGJlICIKKyJmb3VuZCxcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgeW91IHdpbGwgYmUgcHJvbXB0ZWQgdW5sZXNzIG9uZSBvZiB0aGUgY29uZm9sZCBvclxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICBjb25mbmV3IG9wdGlvbnMgaXMgYWxzbyBnaXZlbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI1MworbXNnaWQgIkFsd2F5cyBpbnN0YWxsIG1pc3NpbmcgY29uZmlnIGZpbGVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjU1Cittc2dpZCAiT2ZmZXIgdG8gcmVwbGFjZSBjb25maWcgZmlsZXMgd2l0aCBubyBuZXcgdmVyc2lvbnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNTcKK21zZ2lkICJQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyBvciBubyBhcmNoaXRlY3R1cmUiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNTkKK21zZ2lkICJJbnN0YWxsIGV2ZW4gaWYgaXQgd291bGQgYnJlYWsgYW5vdGhlciBwYWNrYWdlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjYxCittc2dpZCAiQWxsb3cgaW5zdGFsbGF0aW9uIG9mIGNvbmZsaWN0aW5nIHBhY2thZ2VzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjYzCisjLCBmdXp6eQorI3wgbXNnaWQgImRlcGVuZGVuY3kgcHJvYmxlbXMgLSBub3QgcmVtb3ZpbmciCittc2dpZCAiVHVybiBhbGwgZGVwZW5kZW5jeSBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzIgorbXNnc3RyICJwcm9ibGVtYXMgZGUgZGVwZW5kZW5jaWFzIC0gbm9uIHNlIGVsaW1pbmEiCisKKyM6IHNyYy9tYWluLmM6MjY1CisjLCBmdXp6eQorI3wgbXNnaWQgImRlcGVuZGVuY3kgcHJvYmxlbXMgLSBub3QgcmVtb3ZpbmciCittc2dpZCAiVHVybiBkZXBlbmRlbmN5IHZlcnNpb24gcHJvYmxlbXMgaW50byB3YXJuaW5ncyIKK21zZ3N0ciAicHJvYmxlbWFzIGRlIGRlcGVuZGVuY2lhcyAtIG5vbiBzZSBlbGltaW5hIgorCisjOiBzcmMvbWFpbi5jOjI2NworbXNnaWQgIlJlbW92ZSBwYWNrYWdlcyB3aGljaCByZXF1aXJlIGluc3RhbGxhdGlvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI2OQorbXNnaWQgIlJlbW92ZSBhbiBlc3NlbnRpYWwgcGFja2FnZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4MQorbXNnaWQgIkdlbmVyYWxseSBoZWxwZnVsIHByb2dyZXNzIGluZm9ybWF0aW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjgyCisjLCBmdXp6eQorbXNnaWQgIkludm9jYXRpb24gYW5kIHN0YXR1cyBvZiBtYWludGFpbmVyIHNjcmlwdHMiCittc2dzdHIgIm5vbiBzZSBwb2RlIG1vZGlmaWNhciBvIGFtYmllbnRlIHBhcmEgbyBzY3JpcHQgZGUgbWFudGVkb3IiCisKKyM6IHNyYy9tYWluLmM6MjgzCittc2dpZCAiT3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg0Cittc2dpZCAiTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODUKKyMsIGZ1enp5CisjfCBtc2dpZCAicmVhZCBlcnJvciBpbiBjb25maWd1cmF0aW9uIGZpbGUgYCUuMjU1cyciCittc2dpZCAiT3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZSIKK21zZ3N0ciAiZXJybyBkZSBsZWN0dXJhIG5vIGZpY2hlaXJvIGRlIGNvbmZpZ3VyYWNpw7NuIFwiJS4yNTVzXCIiCisKKyM6IHNyYy9tYWluLmM6Mjg2Cittc2dpZCAiTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggY29uZmlndXJhdGlvbiBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg3Cittc2dpZCAiRGVwZW5kZW5jaWVzIGFuZCBjb25mbGljdHMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODgKK21zZ2lkICJMb3RzIG9mIGRlcGVuZGVuY2llcy9jb25mbGljdHMgb3V0cHV0IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg5Cittc2dpZCAiVHJpZ2dlciBhY3RpdmF0aW9uIGFuZCBwcm9jZXNzaW5nIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjkwCittc2dpZCAiTG90cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjkxCittc2dpZCAiU2lsbHkgYW1vdW50cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjkyCittc2dpZCAiTG90cyBvZiBkcml2ZWwgYWJvdXQgZWcgdGhlIGRwa2cvaW5mbyBkaXJlY3RvcnkiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyOTMKK21zZ2lkICJJbnNhbmUgYW1vdW50cyBvZiBkcml2ZWwiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzozMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzIGRlYnVnZ2luZyBvcHRpb24sIC0tZGVidWc9PG9jdGFsPiBvciAtRDxvY3RhbD46XG4iCisiXG4iCisiIE51bWJlciAgUmVmLiBpbiBzb3VyY2UgICBEZXNjcmlwdGlvblxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MzExCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJEZWJ1Z2dpbmcgb3B0aW9ucyBjYW4gYmUgbWl4ZWQgdXNpbmcgYml0d2lzZS1vci5cbiIKKyJOb3RlIHRoYXQgdGhlIG1lYW5pbmdzIGFuZCB2YWx1ZXMgYXJlIHN1YmplY3QgdG8gY2hhbmdlLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MzE5Cittc2dpZCAiLS1kZWJ1ZyByZXF1aXJlcyBhbiBvY3RhbCBhcmd1bWVudCIKK21zZ3N0ciAiLS1kZWJ1ZyBwcmVjaXNhIGR1biBhcmd1bWVudG8gb2N0YWwiCisKKyM6IHNyYy9tYWluLmM6MzQ4CisjLCBjLWZvcm1hdAorbXNnaWQgIm51bGwgcGFja2FnZSBuYW1lIGluIC0taWdub3JlLWRlcGVuZHMgY29tbWEtc2VwYXJhdGVkIGxpc3QgYCUuMjUwcyciCittc2dzdHIgIiIKKyJub21lIGRlIHBhcXVldGUgbnVsbyBuYSBsaXN0YSBzZXBhcmFkYSBwb3IgY29tYXMgZGUgLS1pZ25vcmUtZGVwZW5kcyBcIiUuMjUwcyIKKyJcIiIKKworIzogc3JjL21haW4uYzozNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS1pZ25vcmUtZGVwZW5kcyByZXF1aXJlcyBhIGxlZ2FsIHBhY2thZ2UgbmFtZS4gYCUuMjUwcycgaXMgbm90OyAlcyIKK21zZ3N0ciAiIgorIi0taWdub3JlLWRlcGVuZHMgcHJlY2lzYSBkdW4gbm9tZSB2w6FsaWRvIGRlIHBhcXVldGUuIFwiJS4yNTBzXCIgbm9uIG8gw6k7ICVzIgorCisjOiBzcmMvbWFpbi5jOjM3MSBzcmMvbWFpbi5jOjM4MSBzcmMvbWFpbi5jOjY0OSBkcGtnLXNwbGl0L21haW4uYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBpbnRlZ2VyIGZvciAtLSVzOiBgJS4yNTBzJyIKK21zZ3N0ciAibsO6bWVybyBlbnRlaXJvIG5vbiB2w6FsaWRvIHBhcmEgLS0lczogXCIlLjI1MHNcIiIKKworIzogc3JjL21haW4uYzo0MzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgZXhlY3V0aW5nIGhvb2sgJyVzJywgZXhpdCBjb2RlICVkIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6NDY1Cittc2dpZCAic3RhdHVzIGxvZ2dlciIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjQ4MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXMgZm9yY2luZyBvcHRpb25zIC0gY29udHJvbCBiZWhhdmlvdXIgd2hlbiBwcm9ibGVtcyBmb3VuZDpcbiIKKyIgIHdhcm4gYnV0IGNvbnRpbnVlOiAgLS1mb3JjZS08dGhpbmc+LDx0aGluZz4sLi4uXG4iCisiICBzdG9wIHdpdGggZXJyb3I6ICAgIC0tcmVmdXNlLTx0aGluZz4sPHRoaW5nPiwuLi4gfCAtLW5vLWZvcmNlLTx0aGluZz4sLi4uXG4iCisiIEZvcmNpbmcgdGhpbmdzOlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6NDkwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJXQVJOSU5HIC0gdXNlIG9mIG9wdGlvbnMgbWFya2VkIFshXSBjYW4gc2VyaW91c2x5IGRhbWFnZSB5b3VyIGluc3RhbGxhdGlvbi5cbiIKKyJGb3JjaW5nIG9wdGlvbnMgbWFya2VkIFsqXSBhcmUgZW5hYmxlZCBieSBkZWZhdWx0LlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6NTA0CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gZm9yY2UvcmVmdXNlIG9wdGlvbiBgJS4qcyciCittc2dzdHIgIm9wY2nDs24gZGUgZm9yemFyL3JleGVpdGFyIFwiJS4qc1wiIGRlc2Nvw7FlY2lkYSIKKworIzogc3JjL21haW4uYzo1MTMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIm9ic29sZXRlIGZvcmNlL3JlZnVzZSBvcHRpb24gJyVzJ1xuIgorbXNnc3RyICJBdmlzbzogb3BjacOzbiBkZSBmb3J6YWRvL3JleGVpdGFkbyBcIiVzXCIgb2Jzb2xldGFcbiIKKworIzogc3JjL21haW4uYzo2NDMKK21zZ2lkICItLWNvbW1hbmQtZmQgdGFrZXMgb25lIGFyZ3VtZW50LCBub3QgemVybyIKK21zZ3N0ciAiLS1jb21tYW5kLWZkIHRvbWEgdW4gYXJndW1lbnRvLCBub24gY2VybyIKKworIzogc3JjL21haW4uYzo2NDUKK21zZ2lkICItLWNvbW1hbmQtZmQgb25seSB0YWtlcyBvbmUgYXJndW1lbnQiCittc2dzdHIgIi0tY29tbWFuZC1mZCBzw7MgdG9tYSB1biBhcmd1bWVudG8iCisKKyM6IHNyYy9tYWluLmM6NjUxCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkbid0IG9wZW4gYCVpJyBmb3Igc3RyZWFtIgorbXNnc3RyICJub24gc2UgcHVpZG8gYWJyaXIgXCIlaVwiIHBhcmEgZmx1eG8iCisKKyM6IHNyYy9tYWluLmM6Njc2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW9mIGJlZm9yZSBlbmQgb2YgbGluZSAlZCIKK21zZ3N0ciAiZmluIGRlIGZpY2hlaXJvIGluZXNwZXJhZGEgYW50ZXMgZGEgZmluIGRhIGxpw7FhICVkIgorCisjOiBzcmMvbWFpbi5jOjcxOSBzcmMvbWFpbi5jOjc0MSBzcmMvcXVlcnljbWQuYzo2OTIgc3JjL3N0YXRjbWQuYzozNzkKKyM6IGRwa2ctZGViL21haW4uYzoyMDEgZHBrZy1zcGxpdC9tYWluLmM6MTYzCittc2dpZCAibmVlZCBhbiBhY3Rpb24gb3B0aW9uIgorbXNnc3RyICJwcmVjw61zYXNlIGR1bmhhIG9wY2nDs24gZGUgYWNjacOzbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MTEzCittc2dpZCAiIgorInlvdSBtdXN0IHNwZWNpZnkgcGFja2FnZXMgYnkgdGhlaXIgb3duIG5hbWVzLCBub3QgYnkgcXVvdGluZyB0aGUgbmFtZXMgb2YgIgorInRoZSBmaWxlcyB0aGV5IGNvbWUgaW4iCittc2dzdHIgIiIKKyJkZWJlIGVzcGVjaWZpY2FyIG9zIHBhcXVldGVzIHBvbG9zIHNldXMgbm9tZXMsIG5vbiBwb2xvcyBub21lcyBkb3MgZmljaGVpcm9zICIKKyJub3MgcXVlIHZpw7FhbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MTMzCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgLS1wZW5kaW5nIGRvZXMgbm90IHRha2UgYW55IG5vbi1vcHRpb24gYXJndW1lbnRzIgorbXNnc3RyICItLSVzIC0tcGVuZGluZyBub24gdG9tYSBuaW5nw7puIGFyZ3VtZW50byBxdWUgbm9uIHNleGEgdW5oYSBvcGNpw7NuIgorCisjOiBzcmMvcGFja2FnZXMuYzoxMzggc3JjL3F1ZXJ5Y21kLmM6Mzc1IHNyYy9xdWVyeWNtZC5jOjU2NQorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGF0IGxlYXN0IG9uZSBwYWNrYWdlIG5hbWUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMgcHJlY2lzYSBkZSBhbG9tZW5vcyB1biBhcmd1bWVudG8gZGUgbm9tZSBkZSBwYXF1ZXRlIgorCisjOiBzcmMvcGFja2FnZXMuYzoxNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSAlcyBsaXN0ZWQgbW9yZSB0aGFuIG9uY2UsIG9ubHkgcHJvY2Vzc2luZyBvbmNlLlxuIgorbXNnc3RyICJPIHBhcXVldGUgJXMgYXBhcmVjZSBtw6FpcyBkdW5oYSB2ZXosIHPDsyBzZSBwcm9jZXNhIHVuaGEgdmV6LlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzoxODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk1vcmUgdGhhbiBvbmUgY29weSBvZiBwYWNrYWdlICVzIGhhcyBiZWVuIHVucGFja2VkXG4iCisiIGluIHRoaXMgcnVuICEgIE9ubHkgY29uZmlndXJpbmcgaXQgb25jZS5cbiIKK21zZ3N0ciAiIgorIkRlc2VtcGFxdWV0b3VzZSBtw6FpcyBkdW5oYSBjb3BpYSBkbyBwYXF1ZXRlICVzIG5lc3RhIGV4ZWN1Y2nDs24uXG4iCisiU8OzIHNlIGNvbmZpZ3VyYSB1bmhhIHZlei5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJwYWNrYWdlICUuMjUwcyBpcyBub3QgcmVhZHkgZm9yIHRyaWdnZXIgcHJvY2Vzc2luZ1xuIgorIiAoY3VycmVudCBzdGF0dXMgYCUuMjUwcycgd2l0aCBubyBwZW5kaW5nIHRyaWdnZXJzKSIKK21zZ3N0ciAiIgorIm8gcGFxdWV0ZSAlLjI1MHMgbm9uIGVzdMOhIGxpc3RvIHBhcmEgbyBwcm9jZXNhbWVudG8gZG9zIGRpc3BhcmFkb3Jlc1xuIgorIiAoZXN0YWRvIGFjdHVhbCBcIiUuMjUwc1wiIHNlbiBkaXNwYXJhZG9yZXMgcGVuZGVudGVzKSIKKworIzogc3JjL3BhY2thZ2VzLmM6MzM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyB3aGljaCBwcm92aWRlcyAlcyBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIgIEhhc2UgZWxpbWluYXIgbyBwYXF1ZXRlICVzLCBxdWUgZm9ybmVjZSAlcy5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MzM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIgIEhhc2UgZWxpbWluYXIgbyBwYXF1ZXRlICVzLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzozNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBWZXJzaW9uIG9mICVzIG9uIHN5c3RlbSBpcyAlcy5cbiIKK21zZ3N0ciAiICBBIHZlcnNpw7NuIGRlICVzIG5vIHNpc3RlbWEgw6kgJXMuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjM3NgorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgd2hpY2ggcHJvdmlkZXMgJXMgYXdhaXRzIHRyaWdnZXIgcHJvY2Vzc2luZy5cbiIKK21zZ3N0ciAiIgorIiAgTyBwYXF1ZXRlICVzIHF1ZSBmb3JuZWNlICVzIGVzcGVyYSBvIHByb2Nlc2FtZW50byBkb3MgZGlzcGFyYWRvcmVzLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzozODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIGF3YWl0cyB0cmlnZ2VyIHByb2Nlc3NpbmcuXG4iCittc2dzdHIgIiAgTyBwYXF1ZXRlICVzIGVzcGVyYSBvIHByb2Nlc2FtZW50byBkb3MgZGlzcGFyYWRvcmVzLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogYWxzbyBjb25maWd1cmluZyBgJXMnIChyZXF1aXJlZCBieSBgJXMnKVxuIgorbXNnc3RyICJkcGtnOiB0YW3DqW4gc2UgY29uZmlndXJhIFwiJXNcIiAocmVxdWlyaWRvIHBvciBcIiVzXCIpXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQxOAorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgd2hpY2ggcHJvdmlkZXMgJXMgaXMgbm90IGNvbmZpZ3VyZWQgeWV0LlxuIgorbXNnc3RyICIgIE8gcGFxdWV0ZSAlcywgcXVlIGZvcm5lY2UgJXMsIGHDrW5kYSBub24gZXN0w6EgY29uZmlndXJhZG8uXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQyMQorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgaXMgbm90IGNvbmZpZ3VyZWQgeWV0LlxuIgorbXNnc3RyICIgIE8gcGFxdWV0ZSAlcyBhw61uZGEgbm9uIGVzdMOhIGNvbmZpZ3VyYWRvLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIHdoaWNoIHByb3ZpZGVzICVzIGlzIG5vdCBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgTyBwYXF1ZXRlICVzLCBxdWUgZm9ybmVjZSAlcywgbm9uIGVzdMOhIGluc3RhbGFkby5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDM1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIgIE8gcGFxdWV0ZSAlcyBub24gZXN0w6EgaW5zdGFsYWRvLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICVzICglcykgYnJlYWtzICVzIGFuZCBpcyAlcy5cbiIKK21zZ3N0ciAiICAlcyAoJXMpIHJvbXBlICVzIGUgZXN0w6EgJXMuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQ3OAorIywgYy1mb3JtYXQKK21zZ2lkICIgICVzICglcykgcHJvdmlkZXMgJXMuXG4iCittc2dzdHIgIiAgJXMgKCVzKSBmb3JuZWNlICVzLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBWZXJzaW9uIG9mICVzIHRvIGJlIGNvbmZpZ3VyZWQgaXMgJXMuXG4iCittc2dzdHIgIiAgQSB2ZXJzacOzbiBkZSAlcyBhIGNvbmZpZ3VyYXIgw6kgJXMuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjU5NgorbXNnaWQgIiBkZXBlbmRzIG9uICIKK21zZ3N0ciAiIGRlcGVuZGUgZGUgIgorCisjOiBzcmMvcGFja2FnZXMuYzo2MDIKK21zZ2lkICI7IGhvd2V2ZXI6XG4iCittc2dzdHIgIjsgbmVtYmFyZ2FudGVzOlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjcxCisjLCBjLWZvcm1hdAorbXNnaWQgIi4uLi8lcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjkxCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGVuc3VyaW5nIGAlLjI1MHMnIGRvZXNuJ3QgZXhpc3QiCittc2dzdHIgImVycm8gYW8gYXNlZ3VyYXJzZSBkZSBxdWUgXCIlLjI1MHNcIiBub24gZXhpc3RlIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjk5Cittc2dpZCAic3BsaXQgcGFja2FnZSByZWFzc2VtYmx5IgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTA4Cittc2dpZCAicmVhc3NlbWJsZWQgcGFja2FnZSBmaWxlIgorbXNnc3RyICJmaWNoZWlybyBkZSBwYXF1ZXRlIHJlZW5zYW1ibGFkbyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiQXV0aGVudGljYXRpbmcgJXMgLi4uXG4iCittc2dzdHIgIkEgYXV0ZW50aWNhciAlcyAuLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxMzkKK21zZ2lkICJwYWNrYWdlIHNpZ25hdHVyZSB2ZXJpZmljYXRpb24iCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxNDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiVmVyaWZpY2F0aW9uIG9uIHBhY2thZ2UgJXMgZmFpbGVkISIKK21zZ3N0ciAiQSB2ZXJpZmljYWNpw7NuIGRvIHBhcXVldGUgJXMgZmFsbG91IgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE0OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVmVyaWZpY2F0aW9uIG9uIHBhY2thZ2UgJXMgZmFpbGVkLFxuIgorImJ1dCBpbnN0YWxsaW5nIGFueXdheSBhcyB5b3UgcmVxdWVzdGVkLlxuIgorbXNnc3RyICIiCisiQSB2ZXJpZmljYWNpw7NuIGRvIHBhcXVldGUgJXMgZmFsbG91LFxuIgorInBlcm8gaW5zdMOhbGFzZSBpZ3VhbG1lbnRlIGNvbW8gc29saWNpdG91LlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICJwYXNzZWRcbiIKK21zZ3N0ciAiYXByb2JhZG9cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxNjUgZHBrZy1kZWIvaW5mby5jOjgxCisjLCBmdXp6eQorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdGVtcG9yYXJ5IGRpcmVjdG9yeSIKK21zZ3N0ciAibm9uIHNlIHB1aWRvIGNyZWFyIHVuIG5vbWUgcGFyYSBvIGRpcmVjdG9yaW8gdGVtcG9yYWwiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MjA1CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgJXMgaGFzIHRvbyBtYW55IENvbmZsaWN0cy9SZXBsYWNlcyBwYWlycyIKK21zZ3N0ciAibyBwYXF1ZXRlICVzIHRlbiBkZW1hc2lhZGFzIHBhcmVsbGFzIENvbmZsaWN0cy9SZXBsYWNlcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyNDMKKyMsIGMtZm9ybWF0Cittc2dpZCAib2xkIHZlcnNpb24gb2YgcGFja2FnZSBoYXMgb3Zlcmx5LWxvbmcgaW5mbyBmaWxlIG5hbWUgc3RhcnRpbmcgYCUuMjUwcyciCittc2dzdHIgIiIKKyJhIGFudGlnYSB2ZXJzacOzbiBkbyBwYXF1ZXRlIHRlbiB1biBub21lIGRlIGZpY2hlaXJvIGRlIGluZm9ybWFjacOzbiBsb25nbyBkZSAiCisibcOhaXMsIHF1ZSBjb21lemEgcG9yIFwiJS4yNTBzXCIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MjgxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgb2Jzb2xldGUgaW5mbyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJub24gc2UgcG9kZSBlbGltaW5hciBvIGZpY2hlaXJvIGRlIGluZm9ybWFjacOzbiBvYnNvbGV0byBcIiUuMjUwc1wiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjI4NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCAoc3VwcG9zZWQpIG5ldyBpbmZvIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKyJub24gc2UgcG9kZSBpbnN0YWxhciBvIChzdXBvc3RvKSBub3ZvIGZpY2hlaXJvIGRlIGluZm9ybWFjacOzbiBcIiUuMjUwc1wiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjI5NgorbXNnaWQgInVuYWJsZSB0byBvcGVuIHRlbXAgY29udHJvbCBkaXJlY3RvcnkiCittc2dzdHIgIm5vbiBzZSBwb2RlIGFicmlyIG8gZGlyZWN0b3JpbyBkZSBjb250cm9sIHRlbXBvcmFsIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMwNworIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGNvbnRhaW5zIG92ZXJseS1sb25nIGNvbnRyb2wgaW5mbyBmaWxlIG5hbWUgKHN0YXJ0aW5nIGAlLjUwcycpIgorbXNnc3RyICIiCisibyBwYXF1ZXRlIGNvbnTDqW4gdW4gbm9tZSBkZSBmaWNoZWlybyBkZSBpbmZvcm1hY2nDs24gZGUgY29udHJvbCBsb25nbyBkZSBtw6FpcyAiCisiKHF1ZSBjb21lemEgcG9yIFwiJS41MHNcIikiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzE0CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgY29udHJvbCBpbmZvIGNvbnRhaW5lZCBkaXJlY3RvcnkgYCUuMjUwcyciCittc2dzdHIgImEgaW5mb3JtYWNpw7NuIGRlIGNvbnRyb2wgZG8gcGFxdWV0ZSBjb250acOxYSBvIGRpcmVjdG9yaW8gXCIlLjI1MHNcIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMTYKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBjb250cm9sIGluZm8gcm1kaXIgb2YgYCUuMjUwcycgZGlkbid0IHNheSBub3QgYSBkaXIiCittc2dzdHIgIiIKKyJhIHByb2JhIGRlIGJvcnJhciBvIGZpY2hlaXJvIGRlIGNvbnRyb2wgZG8gcGFxdWV0ZSBcIiUuMjUwc1wiIGNvbWEgIgorImRpcmVjdG9yaW8gbm9uIGRldSB1biBlcnJvIHBvciBub24gc2VyIHVuIGRpcmVjdG9yaW8iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzI2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlICVzIGNvbnRhaW5lZCBsaXN0IGFzIGluZm8gZmlsZSIKK21zZ3N0ciAiIgorImRwa2c6IGF2aXNvIC0gbyBwYXF1ZXRlICVzIGNvbnRpw7FhIHVuaGEgbGlzdGEgY29tYSBmaWNoZWlybyBkZSBpbmZvcm1hY2nDs24iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzMzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyBpbmZvIGZpbGUgYCUuMjUwcycgYXMgYCUuMjUwcyciCittc2dzdHIgIiIKKyJub24gc2UgcG9kZSBpbnN0YWxhciBvIG5vdm8gZmljaGVpcm8gZGUgaW5mb3JtYWNpw7NuIFwiJS4yNTBzXCIgY29tYSBcIiUuMjUwcyIKKyJcIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozNDkgc3JjL3JlbW92ZS5jOjE5OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGVsZXRlIGNvbnRyb2wgaW5mbyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJub24gc2UgcG9kZSBib3JyYXIgbyBmaWNoZWlybyBkZSBpbmZvcm1hY2nDs24gZGUgY29udHJvbCBcIiUuMjUwc1wiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjQxMQorbXNnaWQgImNhbm5vdCBhY2Nlc3MgYXJjaGl2ZSIKK21zZ3N0ciAibm9uIHNlIHBvZGUgYWNjZWRlciBhbyBhcnF1aXZvIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjQzMworIywgZnV6enkKKyN8IG1zZ2lkICJjb250cm9sIGluZm9ybWF0aW9uIGxlbmd0aCIKK21zZ2lkICJwYWNrYWdlIGNvbnRyb2wgaW5mb3JtYXRpb24gZXh0cmFjdGlvbiIKK21zZ3N0ciAibG9ueGl0dWRlIGRhIGluZm9ybWFjacOzbiBkZSBjb250cm9sIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjQ2MAorIywgYy1mb3JtYXQKK21zZ2lkICJSZWNvcmRlZCBpbmZvIGFib3V0ICVzIGZyb20gJXMuXG4iCittc2dzdHIgIlJleGlzdHJvdXNlIGEgaW5mb3JtYWNpw7NuIHNvYnJlICVzIGRlICVzLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjQ2OAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGFyY2hpdGVjdHVyZSAoJXMpIGRvZXMgbm90IG1hdGNoIHN5c3RlbSAoJXMpIgorbXNnc3RyICJhIGFycXVpdGVjdHVyYSBkbyBwYXF1ZXRlICglcykgbm9uIGNvaW5jaWRlIGNvIHNpc3RlbWEgKCVzKSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1MjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IHJlZ2FyZGluZyAlcyBjb250YWluaW5nICVzLCBwcmUtZGVwZW5kZW5jeSBwcm9ibGVtOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogYSBwcm9ww7NzaXRvIGRlICVzIHF1ZSBjb250w6luICVzLCBwcm9ibGVtYSBkZSBwcmVkZXBlbmRlbmNpYXM6XG4iCisiJXMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTI2CisjLCBjLWZvcm1hdAorbXNnaWQgInByZS1kZXBlbmRlbmN5IHByb2JsZW0gLSBub3QgaW5zdGFsbGluZyAlLjI1MHMiCittc2dzdHIgInByb2JsZW1hIGRlIHByZWRlcGVuZGVuY2lhcyAtIG5vbiBzZSBpbnN0YWxhICUuMjUwcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1MjcKKyMsIGZ1enp5Cittc2dpZCAiaWdub3JpbmcgcHJlLWRlcGVuZGVuY3kgcHJvYmxlbSEiCittc2dzdHIgImRwa2c6IGF2aXNvIC0gaWduw7NyYXNlIG8gcHJvYmxlbWEgZGUgcHJlZGVwZW5kZW5jaWFzXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTQzCisjLCBjLWZvcm1hdAorbXNnaWQgIlByZXBhcmluZyB0byByZXBsYWNlICVzICVzICh1c2luZyAlcykgLi4uXG4iCittc2dzdHIgIkEgc2UgcHJlcGFyYXIgcGFyYSBzdWJzdGl0dcOtciAlcyAlcyAoZW1wcsOpZ2FzZSAlcykgLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIlVucGFja2luZyAlcyAoZnJvbSAlcykgLi4uXG4iCittc2dzdHIgIkEgZGVzZW1wYXF1ZXRhciAlcyAoZGUgJXMpIC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjU4MAorIywgYy1mb3JtYXQKK21zZ2lkICJuYW1lIG9mIGNvbmZmaWxlIChzdGFydGluZyBgJS4yNTBzJykgaXMgdG9vIGxvbmcgKD4lZCBjaGFyYWN0ZXJzKSIKK21zZ3N0ciAiIgorIm8gbm9tZSBkbyBmaWNoZWlybyBkZSBjb25maWd1cmFjacOzbiAocXVlIGNvbWV6YSBwb3IgXCIlLjI1MHNcIikgw6kgbG9uZ28gZGUgIgorIm3DoWlzIChtw6FpcyBkZSAlZCBjYXJhY3RlcmVzKSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2MzMgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVhZCBlcnJvciBpbiAlLjI1MHMiCittc2dzdHIgImVycm8gZGUgbGVjdHVyYSBlbiAlLjI1MHMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjM1CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgJS4yNTBzIgorbXNnc3RyICJlcnJvIGFvIHBlY2hhciAlLjI1MHMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjM3CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHRyeWluZyB0byBvcGVuICUuMjUwcyIKK21zZ3N0ciAiZXJybyBhbyB0ZW50YXIgYWJyaXIgJS4yNTBzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjY3OAorIywgYy1mb3JtYXQKK21zZ2lkICJEZS1jb25maWd1cmluZyAlcywgdG8gYWxsb3cgcmVtb3ZhbCBvZiAlcyAuLi5cbiIKK21zZ3N0ciAiQSBkZXNjb25maWd1cmFyICVzLCBwYXJhIHBvZGVyIGVsaW1pbmFyICVzIC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjY4MQorIywgYy1mb3JtYXQKK21zZ2lkICJEZS1jb25maWd1cmluZyAlcyAuLi5cbiIKK21zZ3N0ciAiQSBkZXNjb25maWd1cmFyICVzIC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjc1NQorIywgYy1mb3JtYXQKK21zZ2lkICJVbnBhY2tpbmcgcmVwbGFjZW1lbnQgJS4yNTBzIC4uLlxuIgorbXNnc3RyICJBIGRlc2VtcGFxdWV0YXIgbyAlLjI1MHMgc3Vic3RpdHV0byAuLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NDAKK21zZ2lkICJwYWNrYWdlIGZpbGVzeXN0ZW0gYXJjaGl2ZSBleHRyYWN0aW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6ODU0Cittc2dpZCAiZXJyb3IgcmVhZGluZyBkcGtnLWRlYiB0YXIgb3V0cHV0IgorbXNnc3RyICJlcnJvIGFvIGxlciBhIHNhw61kYSBkZSB0YXIgZGUgZHBrZy1kZWIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6ODU2Cittc2dpZCAiY29ycnVwdGVkIGZpbGVzeXN0ZW0gdGFyZmlsZSAtIGNvcnJ1cHRlZCBwYWNrYWdlIGFyY2hpdmUiCittc2dzdHIgIiIKKyJhcnF1aXZvIHRhciBkbyBzaXN0ZW1hIGRlIGZpY2hlaXJvcyBjb3Jyb21waWRvIC0gYXJxdWl2byBkZSBwYXF1ZXRlICIKKyJjb3Jyb21waWRvIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjg1OQorbXNnaWQgImRwa2ctZGViOiB6YXAgcG9zc2libGUgdHJhaWxpbmcgemVyb3MiCittc2dzdHIgImRwa2ctZGViOiBhIGJvcnJhciBvcyBwb3NpYmxlcyBjZXJvcyBmaW5haXMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTE5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgc3RhdCBvbGQgZmlsZSAnJS4yNTBzJyBzbyBub3QgZGVsZXRpbmcgaXQ6ICVzIgorbXNnc3RyICIiCisiZHBrZzogYXZpc28gLSBub24gc2UgcG9kZSBhdG9wYXIgbyBmaWNoZWlybyBhbnRpZ28gXCIlLjI1MHNcIiwgYXPDrSBxdWUgbm9uICIKKyJzZSBib3JyYTogJXMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTI1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGVsZXRlIG9sZCBkaXJlY3RvcnkgJyUuMjUwcyc6ICVzIgorbXNnc3RyICJkcGtnOiBhdmlzbyAtIG5vbiBzZSBwb2RlIGJvcnJhciBvIGRpcmVjdG9yaW8gYW50aWdvIFwiJS4yNTBzXCI6ICVzXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTI4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJvbGQgY29uZmZpbGUgJyUuMjUwcycgd2FzIGFuIGVtcHR5IGRpcmVjdG9yeSAoYW5kIGhhcyBub3cgYmVlbiBkZWxldGVkKSIKK21zZ3N0ciAiIgorImRwa2c6IGF2aXNvIC0gbyBmaWNoZWlybyBkZSBjb25maWd1cmFjacOzbiBhbnRpZ28gXCIlLjI1MHNcIiBlcmEgdW4gIgorImRpcmVjdG9yaW8gYmFsZWlybyAoZSBib3Jyb3VzZSBhZ29yYSlcbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgb3RoZXIgbmV3IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5vbiBzZSBhdG9wb3Ugb3V0cm8gZmljaGVpcm8gbm92byBcIiUuMjUwc1wiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjk4NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIm9sZCBmaWxlICclLjI1MHMnIGlzIHRoZSBzYW1lIGFzIHNldmVyYWwgbmV3IGZpbGVzISAoYm90aCAnJS4yNTBzJyBhbmQgIgorIiclLjI1MHMnKSIKK21zZ3N0ciAiIgorImRwa2c6IGF2aXNvIC0gbyBmaWNoZWlybyBhbnRpZ28gXCIlLjI1MHNcIiDDqSBvIG1lc21vIHF1ZSB2YXJpb3MgZmljaGVpcm9zICIKKyJub3ZvcyAoXCIlLjI1MHNcIiBlIFwiJS4yNTBzXCIpXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTAyNQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNlY3VyZWx5IHJlbW92ZSBvbGQgZmlsZSAnJS4yNTBzJzogJXMiCittc2dzdHIgImRwa2c6IGF2aXNvIC0gbm9uIHNlIHBvZGUgJXMgbyBmaWNoZWlybyBhbnRpZ28gXCIlJS4yNTBzXCI6ICUlc1xuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEyMDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiKE5vdGluZyBkaXNhcHBlYXJhbmNlIG9mICVzLCB3aGljaCBoYXMgYmVlbiBjb21wbGV0ZWx5IHJlcGxhY2VkLilcbiIKK21zZ3N0ciAiIgorIihUZW5zZSBlbiBjb250YSBhIGRlc2FwYXJpY2nDs24gZGUgJXMsIHF1ZSBmb2kgc3Vic3RpdHVpZG8gdG90YWxtZW50ZSkuXG4iCisKKyMuIFRSQU5TTEFUT1JTOiBUaGlzIGlzIHRoZSBoZWFkZXIgdGhhdCBhcHBlYXJzIG9uICdkcGtnLXF1ZXJ5IC1sJy4gVGhlCisjLiAqIHN0cmluZyBzaG91bGQgcmVtYWluIHVuZGVyIDgwIGNoYXJhY3RlcnMuIFRoZSB1cHBlcmNhc2UgbGV0dGVycyBpbgorIy4gKiB0aGUgc3RhdGUgdmFsdWVzIGRlbm90ZSB0aGUgYWJicmV2aWF0ZWQgbGV0dGVyIHRoYXQgd2lsbCBhcHBlYXIgb24KKyMuICogdGhlIGZpcnN0IHRocmVlIGNvbHVtbnMsIHdoaWNoIHNob3VsZCBpZGVhbGx5IG1hdGNoIHRoZSBFbmdsaXNoIG9uZQorIy4gKiAoZS5nLiBSZW1vdmUg4oaSIHN1cFJpbWVpeCksIHNlZSBkcGtnLXF1ZXJ5KDEpIGZvciBmdXJ0aGVyIGRldGFpbHMuIFRoZQorIy4gKiB0cmFuc2xhdGVkIG1lc3NhZ2UgY2FuIHVzZSBhZGRpdGlvbmFsIGxpbmVzIGlmIG5lZWRlZC4KKyM6IHNyYy9xdWVyeWNtZC5jOjE0OQorIywgZnV6enkKK21zZ2lkICIiCisiRGVzaXJlZD1Vbmtub3duL0luc3RhbGwvUmVtb3ZlL1B1cmdlL0hvbGRcbiIKKyJ8IFN0YXR1cz1Ob3QvSW5zdC9Db25mLWZpbGVzL1VucGFja2VkL2hhbEYtY29uZi9IYWxmLWluc3QvdHJpZy1hV2FpdC9UcmlnLSIKKyJwZW5kXG4iCisifC8gRXJyPz0obm9uZSkvUmVpbnN0LXJlcXVpcmVkIChTdGF0dXMsRXJyOiB1cHBlcmNhc2U9YmFkKVxuIgorbXNnc3RyICIiCisiRGVzZXhhZG89RGVzY2/DsWVjaWRvKFUpL0luc3RhbGFyL0VsaW1pbmFyKFIpL1B1cmdhci9SZXRlcihIKVxuIgorInwgRXN0YWRvPU5vbi9JbnN0L0NvbmYvRGVzZW1wcShVKS9GYWxsby1jb25mL01lZGlvLWluc3QoSCkvRGlzcC1hZ2FyKFcpL3BlbmQiCisiKFQpXG4iCisifC8gRXJybz0obmluZ8O6bikvUmV0ZXIoSCkvUmVpbnN0YWxhci9YPcOBbWJvbG9zIGRvdXMgKEVzdGFkbyxFcnI6ICIKKyJtYWnDunNjPW1hbG8pXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjE1MworbXNnaWQgIk5hbWUiCittc2dzdHIgIk5vbWUiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjE1MworbXNnaWQgIlZlcnNpb24iCittc2dzdHIgIlZlcnNpw7NuIgorCisjOiBzcmMvcXVlcnljbWQuYzoxNTQKK21zZ2lkICJEZXNjcmlwdGlvbiIKK21zZ3N0ciAiRGVzY3JpY2nDs24iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI0NiBzcmMvcXVlcnljbWQuYzo1MTEgc3JjL3NlbGVjdC5jOjc1CisjLCBjLWZvcm1hdAorbXNnaWQgIk5vIHBhY2thZ2VzIGZvdW5kIG1hdGNoaW5nICVzLlxuIgorbXNnc3RyICJOb24gc2UgYXRvcG91IG5pbmfDum4gcGFxdWV0ZSBxdWUgY29pbmNpZGEgY29uICVzLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJzaW9uIGJ5ICVzIGZyb206ICVzXG4iCittc2dzdHIgImRlc3bDrW8gZmVpdG8gcG9yICVzIGRlc2RlOiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJzaW9uIGJ5ICVzIHRvOiAlc1xuIgorbXNnc3RyICJkZXN2w61vIGZlaXRvIHBvciAlcyBhOiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9jYWwgZGl2ZXJzaW9uIGZyb206ICVzXG4iCittc2dzdHIgImRlc3bDrW8gbG9jYWwgZGVzZGU6ICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI3OQorIywgYy1mb3JtYXQKK21zZ2lkICJsb2NhbCBkaXZlcnNpb24gdG86ICVzXG4iCittc2dzdHIgImRlc3bDrW8gbG9jYWwgYTogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MzA5Cittc2dpZCAiLS1zZWFyY2ggbmVlZHMgYXQgbGVhc3Qgb25lIGZpbGUgbmFtZSBwYXR0ZXJuIGFyZ3VtZW50IgorbXNnc3RyICIiCisiLS1zZWFyY2ggcHJlY2lzYSBkZSBhbG9tZW5vcyB1biBhcmd1bWVudG8gZGUgcGF0csOzbiBkZSBub21lcyBkZSBmaWNoZWlyb3MiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjM1MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiTm8gcGFja2FnZXMgZm91bmQgbWF0Y2hpbmcgJXMuXG4iCittc2dpZCAiJXM6IG5vIHBhdGggZm91bmQgbWF0Y2hpbmcgcGF0dGVybiAlcy5cbiIKK21zZ3N0ciAiTm9uIHNlIGF0b3BvdSBuaW5nw7puIHBhcXVldGUgcXVlIGNvaW5jaWRhIGNvbiAlcy5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MzkzCisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgYCVzJyBpcyBub3QgaW5zdGFsbGVkIGFuZCBubyBpbmZvIGlzIGF2YWlsYWJsZS5cbiIKK21zZ3N0ciAiIgorIk8gcGFxdWV0ZSBcIiVzXCIgbm9uIGVzdMOhIGluc3RhbGFkbyBlIG5vbiBoYWkgaW5mb3JtYWNpw7NuIGRpc3Bvw7FpYmxlLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSBgJXMnIGlzIG5vdCBhdmFpbGFibGUuXG4iCittc2dzdHIgIk8gcGFxdWV0ZSBcIiVzXCIgbm9uIGVzdMOhIGRpc3Bvw7FpYmxlLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MTAgc3JjL3F1ZXJ5Y21kLmM6NTg1CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgYCVzJyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICJPIHBhcXVldGUgXCIlc1wiIG5vbiBlc3TDoSBpbnN0YWxhZG8uXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQxOAorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlIGAlcycgZG9lcyBub3QgY29udGFpbiBhbnkgZmlsZXMgKCEpXG4iCittc2dzdHIgIk8gcGFxdWV0ZSAlcyBub24gY29udMOpbiBuaW5nw7puIGZpY2hlaXJvICghKVxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9jYWxseSBkaXZlcnRlZCB0bzogJXNcbiIKK21zZ3N0ciAiZGVzdmlhZG8gbG9jYWxtZW50ZSBhOiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBkaXZlcnRzIG90aGVycyB0bzogJXNcbiIKK21zZ3N0ciAibyBwYXF1ZXRlIGRlc3bDrWEgb3V0cm9zIGE6ICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQzMQorIywgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnRlZCBieSAlcyB0bzogJXNcbiIKK21zZ3N0ciAiZGVzdmlhZG8gcG9yICVzIGE6ICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQ1MgorbXNnaWQgIiIKKyJVc2UgZHBrZyAtLWluZm8gKD0gZHBrZy1kZWIgLS1pbmZvKSB0byBleGFtaW5lIGFyY2hpdmUgZmlsZXMsXG4iCisiYW5kIGRwa2cgLS1jb250ZW50cyAoPSBkcGtnLWRlYiAtLWNvbnRlbnRzKSB0byBsaXN0IHRoZWlyIGNvbnRlbnRzLlxuIgorbXNnc3RyICIiCisiRW1wcmVndWUgZHBrZyAtLWluZm8gKD0gZHBrZy1kZWIgLS1pbmZvKSBwYXJhIGV4YW1pbmFyIG9zIGFycXVpdm9zLFxuIgorImUgZHBrZyAtLWNvbnRlbnRzICg9IGRwa2ctZGViIC0tY29udGVudHMpIHBhcmEgdmVyIHVuaGEgbGlzdGEgZG8gc2V1ICIKKyJjb250aWRvLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo1NzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgYXQgbW9zdCB0d28gYXJndW1lbnRzIgorbXNnc3RyICItLWJ1aWxkIHRvbWEgZG91cyBhcmd1bWVudG9zIGNvbW8gbcOheGltbyIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NTc4CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbnRyb2wgZmlsZSBjb250YWlucyAlYyIKK21zZ3N0ciAiIgorCisjOiBzcmMvcXVlcnljbWQuYzo2MDAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiAlcyBwYWNrYWdlIG1hbmFnZW1lbnQgcHJvZ3JhbSBxdWVyeSB0b29sIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIlByb2dyYW1hIGRlIHhlc3Rpw7NuIGRlIHBhcXVldGVzIFwiJXNcIiBkZSBEZWJpYW4gdmVyc2nDs24gJXMuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjYxOQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLXN8LS1zdGF0dXMgPHBhY2thZ2U+IC4uLiAgICAgICAgRGlzcGxheSBwYWNrYWdlIHN0YXR1cyBkZXRhaWxzLlxuIgorIiAgLXB8LS1wcmludC1hdmFpbCA8cGFja2FnZT4gLi4uICAgRGlzcGxheSBhdmFpbGFibGUgdmVyc2lvbiBkZXRhaWxzLlxuIgorIiAgLUx8LS1saXN0ZmlsZXMgPHBhY2thZ2U+IC4uLiAgICAgTGlzdCBmaWxlcyBgb3duZWQnIGJ5IHBhY2thZ2UocykuXG4iCisiICAtbHwtLWxpc3QgWzxwYXR0ZXJuPiAuLi5dICAgICAgICBMaXN0IHBhY2thZ2VzIGNvbmNpc2VseS5cbiIKKyIgIC1XfC0tc2hvdyBbPHBhdHRlcm4+IC4uLl0gICAgICAgIFNob3cgaW5mb3JtYXRpb24gb24gcGFja2FnZShzKS5cbiIKKyIgIC1TfC0tc2VhcmNoIDxwYXR0ZXJuPiAuLi4gICAgICAgIEZpbmQgcGFja2FnZShzKSBvd25pbmcgZmlsZShzKS5cbiIKKyIgIC1jfC0tY29udHJvbC1wYXRoIDxwYWNrYWdlPiBbPGZpbGU+XVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHJpbnQgcGF0aCBmb3IgcGFja2FnZSBjb250cm9sIGZpbGUuXG4iCisiXG4iCittc2dzdHIgIiIKKyJPcmRlczpcbiIKKyIgIC1zfC0tc3RhdHVzIDxwYXF1ZXRlPiAuLi4gICAgICAgIEFtb3NhIGRldGFsbGVzIGRvIGVzdGFkbyBkbyBwYXF1ZXRlLlxuIgorIiAgLXB8LS1wcmludC1hdmFpbCA8cGFxdWV0ZT4gLi4uICAgQW1vc2EgZGV0YWxsZXMgZGEgdmVyc2nDs24gZGlzcG/DsWlibGUuXG4iCisiICAtTHwtLWxpc3RmaWxlcyA8cGFxdWV0ZT4gLi4uICAgICBBbW9zYSBvcyBmaWNoZWlyb3MgZG8ocykgcGFxdWV0ZShzKS5cbiIKKyIgIC1sfC0tbGlzdCBbPHBhdHLDs24+IC4uLl0gICAgICAgICBBbW9zYSB1bmhhIGxpc3RhIGNvbmNpc2EgZGUgcGFxdWV0ZXMuXG4iCisiICAtV3wtLXNob3cgPHBhdHLDs24+IC4uLiAgICAgICAgICAgQW1vc2EgaW5mb3JtYWNpw7NuIGRvKHMpIHBhcXVldGUocykuXG4iCisiICAtU3wtLXNlYXJjaCA8cGF0csOzbj4gLi4uICAgICAgICAgQnVzY2EgbyhzKSBmaWNoZWlybyhzKSBub3MgcGFxdWV0ZXMuXG4iCisiXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjYzNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorIiAgLWZ8LS1zaG93Zm9ybWF0PTxmb3JtYXQ+ICAgICAgICAgVXNlIGFsdGVybmF0aXZlIGZvcm1hdCBmb3IgLS1zaG93LlxuIgorIlxuIgorbXNnc3RyICIiCisiT3BjacOzbnM6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3RvcmlvPiAgICAgICAgICBFbXByZWdhIG8gPGRpcmVjdG9yaW8+IG5vIGNhbnRvIGRlICVzLlxuIgorIiAgLWZ8LS1zaG93Zm9ybWF0PTxmb3JtYXRvPiAgICAgICAgRW1wcmVnYSBvdXRybyBmb3JtYXRvIHBhcmEgLS1zaG93LlxuIgorIlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo2NDIgZHBrZy1kZWIvbWFpbi5jOjExMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiRm9ybWF0IHN5bnRheDpcbiIKKyIgIEEgZm9ybWF0IGlzIGEgc3RyaW5nIHRoYXQgd2lsbCBiZSBvdXRwdXQgZm9yIGVhY2ggcGFja2FnZS4gVGhlIGZvcm1hdFxuIgorIiAgY2FuIGluY2x1ZGUgdGhlIHN0YW5kYXJkIGVzY2FwZSBzZXF1ZW5jZXMgXFxuIChuZXdsaW5lKSwgXFxyIChjYXJyaWFnZVxuIgorIiAgcmV0dXJuKSBvciBcXFxcIChwbGFpbiBiYWNrc2xhc2gpLiBQYWNrYWdlIGluZm9ybWF0aW9uIGNhbiBiZSBpbmNsdWRlZFxuIgorIiAgYnkgaW5zZXJ0aW5nIHZhcmlhYmxlIHJlZmVyZW5jZXMgdG8gcGFja2FnZSBmaWVsZHMgdXNpbmcgdGhlICR7dmFyWzsiCisid2lkdGhdfVxuIgorIiAgc3ludGF4LiBGaWVsZHMgd2lsbCBiZSByaWdodC1hbGlnbmVkIHVubGVzcyB0aGUgd2lkdGggaXMgbmVnYXRpdmUgaW4gIgorIndoaWNoXG4iCisiICBjYXNlIGxlZnQgYWxpZ25tZW50IHdpbGwgYmUgdXNlZC5cbiIKK21zZ3N0ciAiIgorIlNpbnRheGUgZG8gZm9ybWF0bzpcbiIKKyIgIFVuIGZvcm1hdG8gw6kgdW5oYSBjYWRlYSBxdWUgc2UgaGEgYW1vc2FyIHBvciBjYWRhIHBhcXVldGUuIE8gZm9ybWF0byBwb2RlXG4iCisiICBpbmNsdcOtciBhcyBzZWN1ZW5jaWFzIGRlIGVzY2FwZSBlc3TDoW5kYXIgXFxuIChzYWx0byBkZSBsacOxYSksIFxcciAocmV0b3JubyAiCisiZGVcbiIKKyIgIGNhcnJvKSBvdSBcXFxcIChiYXJyYSBpbnZlcnRpZGEpLiBQw7NkZXNlIGluY2x1w61yIGluZm9ybWFjacOzbiBkb3MgcGFxdWV0ZXNcbiIKKyIgIGluc2VyaW5kbyByZWZlcmVuY2lhcyB2YXJpYWJsZXMgYW9zIGNhbXBvcyBkbyBwYXF1ZXRlIGVtcHJlZ2FuZG8gYSAiCisic2ludGF4ZVxuIgorIiAgJHt2YXJbO2FuY2hvXX0uIE9zIGNhbXBvcyB2YW4gYWxpw7FhZG9zIMOhIGRlcmVpdGEgYSBtZW5vcyBxdWUgYSBhbmNodXJhICIKKyJzZXhhXG4iCisiICBuZWdhdGl2YTsgbmVzdGUgY2FzbyBoYXNlIGVtcHJlZ2FyIGFsacOxYW1lbnRvIMOhIGVzcXVlcmRhLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo2NTYKK21zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IHF1ZXJ5aW5nIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcmVtb3ZlLmM6ODgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nIHJlcXVlc3QgdG8gcmVtb3ZlICUuMjUwcyB3aGljaCBpc24ndCBpbnN0YWxsZWQuIgorbXNnc3RyICIiCisiZHBrZyAtIGF2aXNvOiBpZ27Ds3Jhc2UgYSBwZXRpY2nDs24gZGUgZWxpbWluYXIgJS4yNTBzLCBxdWUgbm9uIGVzdMOhICIKKyJpbnN0YWxhZG8uXG4iCisKKyM6IHNyYy9yZW1vdmUuYzo5NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorImlnbm9yaW5nIHJlcXVlc3QgdG8gcmVtb3ZlICUuMjUwcywgb25seSB0aGUgY29uZmlnXG4iCisiIGZpbGVzIG9mIHdoaWNoIGFyZSBvbiB0aGUgc3lzdGVtLiBVc2UgLS1wdXJnZSB0byByZW1vdmUgdGhlbSB0b28uIgorbXNnc3RyICIiCisiZHBrZyAtIGF2aXNvOiBpZ27Ds3Jhc2UgYSBwZXRpY2nDs24gZGUgZWxpbWluYXIgJS4yNTBzLCBkbyBxdWUgc8OzIHF1ZWRhbiBvc1xuIgorIiBmaWNoZWlyb3MgZGUgY29uZmlndXJhY2nDs24gbm8gc2lzdGVtYS4gRW1wcmVndWUgLS1wdXJnZSBwYXJhIG9zIGVsaW1pbmFyLlxuIgorCisjOiBzcmMvcmVtb3ZlLmM6MTAzCittc2dpZCAiVGhpcyBpcyBhbiBlc3NlbnRpYWwgcGFja2FnZSAtIGl0IHNob3VsZCBub3QgYmUgcmVtb3ZlZC4iCittc2dzdHIgIkVzdGUgw6kgdW4gcGFxdWV0ZSBlc2VuY2lhbCAtIG5vbiBzZSBkZWJlcsOtYSBlbGltaW5hci4iCisKKyM6IHNyYy9yZW1vdmUuYzoxMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IGRlcGVuZGVuY3kgcHJvYmxlbXMgcHJldmVudCByZW1vdmFsIG9mICVzOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogcHJvYmxlbWFzIGRlIGRlcGVuZGVuY2lhcyBpbXBpZGVuIGEgZWxpbWluYWNpw7NuIGRlICVzOlxuIgorIiVzIgorCisjOiBzcmMvcmVtb3ZlLmM6MTMwCittc2dpZCAiZGVwZW5kZW5jeSBwcm9ibGVtcyAtIG5vdCByZW1vdmluZyIKK21zZ3N0ciAicHJvYmxlbWFzIGRlIGRlcGVuZGVuY2lhcyAtIG5vbiBzZSBlbGltaW5hIgorCisjOiBzcmMvcmVtb3ZlLmM6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiAlczogZGVwZW5kZW5jeSBwcm9ibGVtcywgYnV0IHJlbW92aW5nIGFueXdheSBhcyB5b3UgcmVxdWVzdGVkOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogJXM6IHByb2JsZW1hcyBkZSBkZXBlbmRlbmNpYXMsIHBlcm8gZWxpbcOtbmFzZSBwb2xhIHPDumEgcGV0aWNpw7NuOlxuIgorIiVzIgorCisjOiBzcmMvcmVtb3ZlLmM6MTQyCittc2dpZCAiIgorIlBhY2thZ2UgaXMgaW4gYSB2ZXJ5IGJhZCBpbmNvbnNpc3RlbnQgc3RhdGUgLSB5b3Ugc2hvdWxkXG4iCisiIHJlaW5zdGFsbCBpdCBiZWZvcmUgYXR0ZW1wdGluZyBhIHJlbW92YWwuIgorbXNnc3RyICIiCisiTyBwYXF1ZXRlIGVzdMOhIG51biBlc3RhZG8gbW9pIGluY29uc2lzdGVudGUgLSBkZWJlcsOtYSByZWluc3RhbGFsb1xuIgorIiBhbnRlcyBkZSB0ZW50YXIgZWxpbWluYWxvLiIKKworIzogc3JjL3JlbW92ZS5jOjE0OQorIywgYy1mb3JtYXQKK21zZ2lkICJXb3VsZCByZW1vdmUgb3IgcHVyZ2UgJXMgLi4uXG4iCittc2dzdHIgIkhhYsOtYSBlbGltaW5hciBvdSBwdXJnYXIgJXMgLi4uXG4iCisKKyM6IHNyYy9yZW1vdmUuYzoxNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVtb3ZpbmcgJXMgLi4uXG4iCittc2dzdHIgIkEgZWxpbWluYXIgJXMgLi4uXG4iCisKKyM6IHNyYy9yZW1vdmUuYzoyNzUgc3JjL3JlbW92ZS5jOjM2NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIndoaWxlIHJlbW92aW5nICUuMjUwcywgdW5hYmxlIHRvIHJlbW92ZSBkaXJlY3RvcnkgJyUuMjUwcyc6ICVzIC0gZGlyZWN0b3J5ICIKKyJtYXkgYmUgYSBtb3VudCBwb2ludD8iCittc2dzdHIgIiIKKyJkcGtnIC0gYXZpc286IGFvIGVsaW1pbmFyICVzLjI1MHMgbm9uIHNlIHB1aWRvIGJvcnJhciBvIGRpcmVjdG9yaW8gXCIlLjI1MHMiCisiXCI6ICVzIC0gbyBkaXJlY3RvcmlvIHBvZGUgc2VyIHVuIHB1bnRvIGRlIG1vbnRheGVcbiIKKworIzogc3JjL3JlbW92ZS5jOjI4OQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNlY3VyZWx5IHJlbW92ZSAnJS4yNTBzJyIKK21zZ3N0ciAibm9uIHNlIHBvZGUgY3JlYXIgXCIlLjI1NXNcIiIKKworIzogc3JjL3JlbW92ZS5jOjM2MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAid2hpbGUgcmVtb3ZpbmcgJS4yNTBzLCBkaXJlY3RvcnkgJyUuMjUwcycgbm90IGVtcHR5IHNvIG5vdCByZW1vdmVkLiIKK21zZ3N0ciAiIgorImRwa2cgLSBhdmlzbzogYW8gZWxpbWluYXIgJS4yNTBzIG8gZGlyZWN0b3JpbyBcIiUuMjUwc1wiIG5vbiBxdWVkb3UgYmFsZWlybyAiCisicG9sbyBxdWUgbm9uIHNlIGVsaW1pbm91LlxuIgorCisjOiBzcmMvcmVtb3ZlLmM6MzgzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW5ub3QgcmVtb3ZlIGAlLjI1MHMnIgorbXNnaWQgImNhbm5vdCByZW1vdmUgJyUuMjUwcyciCittc2dzdHIgIm5vbiBzZSBwb2RlIGVsaW1pbmFyIFwiJS4yNTBzXCIiCisKKyM6IHNyYy9yZW1vdmUuYzo0MDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHVyZ2luZyBjb25maWd1cmF0aW9uIGZpbGVzIGZvciAlcyAuLi5cbiIKK21zZ3N0ciAiQSBwdXJnYXIgb3MgZmljaGVpcm9zIGRlIGNvbmZpZ3VyYWNpw7NuIGRlICVzIC4uLlxuIgorCisjOiBzcmMvcmVtb3ZlLmM6NDU5CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZW1vdmUgb2xkIGNvbmZpZyBmaWxlIGAlLjI1MHMnICg9IGAlLjI1MHMnKSIKK21zZ3N0ciAiIgorIm5vbiBzZSBwb2RlIGVsaW1pbmFyIG8gYW50aWdvIGZpY2hlaXJvIGRlIGNvbmZpZ3VyYWNpw7NuIFwiJS4yNTBzXCIgKD0gIgorIlwiJS4yNTBzXCIpIgorCisjOiBzcmMvcmVtb3ZlLmM6NDc0CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZWFkIGNvbmZpZyBmaWxlIGRpciBgJS4yNTBzJyAoZnJvbSBgJS4yNTBzJykiCittc2dzdHIgIiIKKyJub24gc2UgcG9kZSBsZXIgbyBkaXJlY3RvcmlvIGRlIGZpY2hlaXJvcyBkZSBjb25maWd1cmFjacOzbiBcIiUuMjUwc1wiIChkZSAiCisiXCIlLjI1MHNcIikiCisKKyM6IHNyYy9yZW1vdmUuYzo1MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlbW92ZSBvbGQgYmFja3VwIGNvbmZpZyBmaWxlIGAlLjI1MHMnIChvZiBgJS4yNTBzJykiCittc2dzdHIgIiIKKyJub24gc2UgcG9kZSBlbGltaW5hciBhIGNvcGlhIGRvIGFudGlnbyBmaWNoZWlybyBkZSBjb25maWd1cmFjacOzbiBcIiUuMjUwcyIKKyJcIiAoZGUgXCIlLjI1MHNcIikiCisKKyM6IHNyYy9yZW1vdmUuYzo1NjgKK21zZ2lkICJjYW5ub3QgcmVtb3ZlIG9sZCBmaWxlcyBsaXN0IgorbXNnc3RyICJub24gc2UgcG9kZSBlbGltaW5hciBhIGFudGlnYSBsaXN0YSBkZSBmaWNoZWlyc28iCisKKyM6IHNyYy9yZW1vdmUuYzo1NzQKK21zZ2lkICJjYW4ndCByZW1vdmUgb2xkIHBvc3RybSBzY3JpcHQiCittc2dzdHIgIm5vbiBzZSBwb2RlIGVsaW1pbmFyIG8gYW50aWdvIHNjcmlwdCBkZSBwb3N0cm0iCisKKyM6IHNyYy9zZWxlY3QuYzoxMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgaW4gcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQiCittc2dzdHIgImZpbiBkZSBmaWNoZWlybyBpbmVzcGVyYWRhIG5vIG5vbWUgZG8gcGFxdWV0ZSBuYSBsacOxYSAlZCIKKworIzogc3JjL3NlbGVjdC5jOjExNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBsaW5lIGluIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICJmaW4gZGUgbGnDsWEgaW5lc3BlcmFkYSBubyBub21lIGRvIHBhcXVldGUgbmEgbGnDsWEgJWQiCisKKyM6IHNyYy9zZWxlY3QuYzoxMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgYWZ0ZXIgcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQiCittc2dzdHIgImZpbiBkZSBmaWNoZWlybyBpbmVzcGVyYWRhIHRyYWxvIG5vbWUgZG8gcGFxdWV0ZSBuYSBsacOxYSAlZCIKKworIzogc3JjL3NlbGVjdC5jOjEyMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBsaW5lIGFmdGVyIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICJmaW4gZGUgbGnDsWEgaW5lc3BlcmFkYSB0cmFsbyBub21lIGRvIHBhcXVldGUgbmEgbGnDsWEgJWQiCisKKyM6IHNyYy9zZWxlY3QuYzoxMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBkYXRhIGFmdGVyIHBhY2thZ2UgYW5kIHNlbGVjdGlvbiBhdCBsaW5lICVkIgorbXNnc3RyICJkYXRvcyBpbmVzcGVyYWRvcyB0cmFsbyBwYXF1ZXRlIGUgc2VsZWNjacOzbiBuYSBsacOxYSAlZCIKKworIzogc3JjL3NlbGVjdC5jOjEzOQorIywgYy1mb3JtYXQKK21zZ2lkICJpbGxlZ2FsIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkOiAlLjI1MHMiCittc2dzdHIgIm5vbWUgZGUgcGFxdWV0ZSBub24gdsOhbGlkbyBuYSBsacOxYSAlZDogJS4yNTBzIgorCisjOiBzcmMvc2VsZWN0LmM6MTQzCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gd2FudGVkIHN0YXR1cyBhdCBsaW5lICVkOiAlLjI1MHMiCittc2dzdHIgImVzdGFkbyBkZXNleGFkbyBub24gdsOhbGlkbyBuYSBsacOxYSAlZDogJS4yNTBzIgorCisjOiBzcmMvc2VsZWN0LmM6MTQ5Cittc2dpZCAicmVhZCBlcnJvciBvbiBzdGFuZGFyZCBpbnB1dCIKK21zZ3N0ciAiZXJybyBkZSBsZWN0dXJhIG5hIGVudHJhZGEgZXN0w6FuZGFyIgorCisjOiBzcmMvc3RhdGNtZC5jOjUyCittc2dpZCAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBvdmVycmlkaW5nIGZpbGUgc3RhdCBpbmZvcm1hdGlvbi4iCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRjbWQuYzo2MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvcHlyaWdodCAoQykgMjAwMCwgMjAwMSBXaWNoZXJ0IEFra2VybWFuLlxuIgorIkNvcHlyaWdodCAoQykgMjAwNi0yMDA5IEd1aWxsZW0gSm92ZXIuXG4iCittc2dzdHIgIiIKKyJcbiIKKyJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLTIwMDIgV2ljaGVydCBBa2tlcm1hbi4iCisKKyM6IHNyYy9zdGF0Y21kLmM6ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLS1hZGQgPG93bmVyPiA8Z3JvdXA+IDxtb2RlPiA8ZmlsZT5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBhZGQgYSBuZXcgZW50cnkgaW50byB0aGUgZGF0YWJhc2UuXG4iCisiICAtLXJlbW92ZSA8ZmlsZT4gICAgICAgICAgcmVtb3ZlIGZpbGUgZnJvbSB0aGUgZGF0YWJhc2UuXG4iCisiICAtLWxpc3QgWzxnbG9iLXBhdHRlcm4+XSAgbGlzdCBjdXJyZW50IG92ZXJyaWRlcyBpbiB0aGUgZGF0YWJhc2UuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRjbWQuYzo4OQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgc2V0IHRoZSBkaXJlY3Rvcnkgd2l0aCB0aGUgc3RhdG92ZXJyaWRlIGZpbGUuXG4iCisiICAtLXVwZGF0ZSAgICAgICAgICAgICAgICAgaW1tZWRpYXRlbHkgdXBkYXRlIGZpbGUgcGVybWlzc2lvbnMuXG4iCisiICAtLWZvcmNlICAgICAgICAgICAgICAgICAgZm9yY2UgYW4gYWN0aW9uIGV2ZW4gaWYgYSBzYW5pdHkgY2hlY2sgZmFpbHMuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgcXVpZXQgb3BlcmF0aW9uLCBtaW5pbWFsIG91dHB1dC5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCittc2dzdHIgIiIKKyJFbXByZWdvOiAlcyBbPG9wY2nDs24+IC4uLl0gPG9yZGU+XG4iCisiXG4iCisiT3JkZXM6XG4iCisiICAtLWFkZCA8cHJvcGlldGFyaW8+IDxncnVwbz4gPG1vZG8+IDxmaWNoZWlybz5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBlbmdhZGUgdW5oYSBub3ZhIGVudHJhZGEgbmEgYmFzZSBkZSBkYXRvcy5cbiIKKyIgIC0tcmVtb3ZlIDxmaWNoZWlybz4gICAgICBlbGltaW5hIG8gZmljaGVpcm8gZGEgYmFzZSBkZSBkYXRvcy5cbiIKKyIgIC0tbGlzdCBbPHBhdHLDs24+XSAgICAgICAgYW1vc2EgYXMgc3Vic3RpdHVjacOzbnMgYWN0dWFpcyBkYSBiYXNlIGRlIGRhdG9zLlxuIgorIlxuIgorIk9wY2nDs25zOlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3Jpbz4gIGVzdGFibGVjZSBvIGRpcmVjdG9yaW8gZG8gZmljaGVpcm8gc3RhdG92ZXJyaWRlLlxuIgorIiAgLS11cGRhdGUgICAgICAgICAgICAgICAgIGFjdHVhbGl6YSBkZSBpbm1lZGlhdG8gb3MgcGVybWlzb3MgZG9zICIKKyJmaWNoZWlyb3MuXG4iCisiICAtLWZvcmNlICAgICAgICAgICAgICAgICAgZm9yemEgdW5oYSBhY2Npw7NuIGluY2x1c28gc2UgYWxnbyBub24gZXN0w6EgYmVuLlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIG9wZXJhY2nDs24gc2lsZW5jaW9zYSwgc2HDrWRhIG3DrW5pbWEuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgYW1vc2EgZXN0YSBtZW5zYXhlIGRlIGF4dWRhLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIGFtb3NhIGEgdmVyc2nDs24uXG4iCisKKyM6IHNyYy9zdGF0Y21kLmM6MTE2Cittc2dpZCAic3RyaXBwaW5nIHRyYWlsaW5nIC8iCittc2dzdHIgIm9tw610ZXNlIG8gXCIvXCIgYW8gZmluYWwiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjA3CisjLCBmdXp6eQorbXNnaWQgImNhbm5vdCBvcGVuIG5ldyBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAibm9uIHNlIHBvZGUgYWJyaXIgbyBub3ZvIGZpY2hlaXJvIHN0YXRvdmVycmlkZTogJXMiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjIyCisjLCBmdXp6eQorbXNnaWQgImVycm9yIHJlbW92aW5nIHN0YXRvdmVycmlkZS1vbGQiCittc2dzdHIgImVycm8gYW8gZWxpbWluYXIgbyBmaWNoZWlybyBzdGF0b3ZlcnJpZGUtb2xkOiAlcyIKKworIzogc3JjL3N0YXRjbWQuYzoyMjQKKyMsIGZ1enp5Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgbmV3IHN0YXRvdmVycmlkZS1vbGQiCittc2dzdHIgImVycm8gYW8gY3JlYXIgbyBub3ZvIGZpY2hlaXJvIHN0YXRvdmVycmlkZS1vbGQ6ICVzIgorCisjOiBzcmMvc3RhdGNtZC5jOjIyNgorIywgZnV6enkKK21zZ2lkICJlcnJvciBpbnN0YWxsaW5nIG5ldyBzdGF0b3ZlcnJpZGUiCittc2dzdHIgImVycm8gYW8gaW5zdGFsYXIgbyBub3ZvIGZpY2hlaXJvIHN0YXRvdmVycmlkZTogJXMiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjQ2Cittc2dpZCAiLS1hZGQgbmVlZHMgZm91ciBhcmd1bWVudHMiCittc2dzdHIgIi0tYWRkIHByZWNpc2EgZGUgY2F0cm8gYXJndW1lbnRvcyIKKworIzogc3JjL3N0YXRjbWQuYzoyNTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJBbiBvdmVycmlkZSBmb3IgJyVzJyBhbHJlYWR5IGV4aXN0cywgYnV0IC0tZm9yY2Ugc3BlY2lmaWVkIHNvIHdpbGwgYmUgIgorImlnbm9yZWQuIgorbXNnc3RyICJwZXJvIGluZGljb3VzZSAtLWZvcmNlLCBhc8OtIHF1ZSBzZSBoYSBpZ25vcmFyLiIKKworIzogc3JjL3N0YXRjbWQuYzoyNjAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIkFuIG92ZXJyaWRlIGZvciAnJXMnIGFscmVhZHkgZXhpc3RzLCBhYm9ydGluZy4iCittc2dzdHIgIlhhIGV4aXN0ZSB1bmhhIHN1YnN0aXR1Y2nDs24gcGFyYSBcIiVzXCIsICIKKworIzogc3JjL3N0YXRjbWQuYzoyNzIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIi0tdXBkYXRlIGdpdmVuIGJ1dCAlcyBkb2VzIG5vdCBleGlzdCIKK21zZ3N0ciAiYXZpc286IGluZGljb3VzZSAtLXVwZGF0ZSBwZXJvICVzIG5vbiBleGlzdGUiCisKKyM6IHNyYy9zdGF0Y21kLmM6Mjk2Cittc2dpZCAiTm8gb3ZlcnJpZGUgcHJlc2VudC4iCittc2dzdHIgIk5vbiBoYWkgdW5oYSBzdWJzdGl0dWNpw7NuIHByZXNlbnRlLiIKKworIzogc3JjL3N0YXRjbWQuYzozMDQKKyMsIGZ1enp5Cittc2dpZCAiLS11cGRhdGUgaXMgdXNlbGVzcyBmb3IgLS1yZW1vdmUiCittc2dzdHIgImF2aXNvOiAtLXVwZGF0ZSDDqSBpbsO6dGlsIGNvbiAtLXJlbW92ZSIKKworIzogc3JjL3N0YXRkYi5jOjU5CisjLCBmdXp6eQorbXNnaWQgInN5bnRheCBlcnJvcjogaW52YWxpZCB1aWQgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgImVycm8gYW8gaW5zdGFsYXIgbyBub3ZvIGZpY2hlaXJvIHN0YXRvdmVycmlkZTogJXMiCisKKyM6IHNyYy9zdGF0ZGIuYzo2NAorIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3I6IHVua25vd24gdXNlciAnJXMnIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0ZGIuYzo4MworIywgZnV6enkKK21zZ2lkICJzeW50YXggZXJyb3I6IGludmFsaWQgZ2lkIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJlcnJvIGFvIGluc3RhbGFyIG8gbm92byBmaWNoZWlybyBzdGF0b3ZlcnJpZGU6ICVzIgorCisjOiBzcmMvc3RhdGRiLmM6ODgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInN5bnRheCBlcnJvcjogdW5rbm93biBncm91cCAnJXMnIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJub24gc2UgcHVpZG8gYWJyaXIgbyBmaWNoZWlybyBcInN0YXRvdmVycmlkZVwiIgorCisjOiBzcmMvc3RhdGRiLmM6MTA0CisjLCBmdXp6eQorbXNnaWQgInN5bnRheCBlcnJvcjogaW52YWxpZCBtb2RlIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJub24gc2UgcHVpZG8gYWJyaXIgbyBmaWNoZWlybyBcInN0YXRvdmVycmlkZVwiIgorCisjOiBzcmMvc3RhdGRiLmM6MTI3Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIm5vbiBzZSBwdWlkbyBhYnJpciBvIGZpY2hlaXJvIFwic3RhdG92ZXJyaWRlXCIiCisKKyM6IHNyYy9zdGF0ZGIuYzoxMzQKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIm5vbiBzZSBhdG9wb3UgbyBmaWNoZWlybyBcInN0YXRvdmVycmlkZVwiIgorCisjOiBzcmMvc3RhdGRiLmM6MTM3Cittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IHByZXZpb3VzIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJub24gc2UgYXRvcG91IG8gZmljaGVpcm8gXCJzdGF0b3ZlcnJpZGVcIiBhbnRlcmlvciIKKworIzogc3JjL3N0YXRkYi5jOjE2MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic3RhdG92ZXJyaWRlIGZpbGUgYCUuMjUwcyciCittc2dpZCAicmVhZGluZyBzdGF0b3ZlcnJpZGUgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAiZmljaGVpcm8gXCJzdGF0b3ZlcnJpZGVcIiBcIiUuMjUwc1wiIgorCisjOiBzcmMvc3RhdGRiLmM6MTY5CisjLCBmdXp6eQorbXNnaWQgInN0YXRvdmVycmlkZSBmaWxlIGlzIG1pc3NpbmcgZmluYWwgbmV3bGluZSIKK21zZ3N0ciAibyBmaWNoZWlybyBcInN0YXRvdmVycmlkZVwiIGNvbnTDqW4gdW5oYSBsacOxYSBiYWxlaXJhIgorCisjOiBzcmMvc3RhdGRiLmM6MTczCittc2dpZCAic3RhdG92ZXJyaWRlIGZpbGUgY29udGFpbnMgZW1wdHkgbGluZSIKK21zZ3N0ciAibyBmaWNoZWlybyBcInN0YXRvdmVycmlkZVwiIGNvbnTDqW4gdW5oYSBsacOxYSBiYWxlaXJhIgorCisjOiBzcmMvc3RhdGRiLmM6MTc4IHNyYy9zdGF0ZGIuYzoxOTAgc3JjL3N0YXRkYi5jOjIwMgorIywgZnV6enkKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIm5vbiBzZSBwdWlkbyBhYnJpciBvIGZpY2hlaXJvIFwic3RhdG92ZXJyaWRlXCIiCisKKyM6IHNyYy9zdGF0ZGIuYzoxODYgc3JjL3N0YXRkYi5jOjE5OCBzcmMvc3RhdGRiLmM6MjEwCisjLCBmdXp6eQorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGxpbmUgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgImZpbiBkZSBsacOxYSBpbmVzcGVyYWRhIG5vIG5vbWUgZG8gcGFxdWV0ZSBuYSBsacOxYSAlZCIKKworIzogc3JjL3N0YXRkYi5jOjIxNAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAibXVsdGlwbGUgc3RhdHVzb3ZlcnJpZGVzIHByZXNlbnQgZm9yIGZpbGUgJyUuMjUwcyciCittc2dzdHIgImZpY2hlaXJvIFwic3RhdG92ZXJyaWRlXCIgXCIlLjI1MHNcIiIKKworIzogc3JjL3RyaWdjbWQuYzo0NgorbXNnaWQgIlR5cGUgZHBrZy10cmlnZ2VyIC0taGVscCBmb3IgaGVscCBhYm91dCB0aGlzIHV0aWxpdHkuIgorbXNnc3RyICJFc2NyaWJhIGRwa2ctdHJpZ2dlciAtLWhlbHAgcGFyYSBvYnRlciBheHVkYSBzb2JyZSBlc3RhIHV0aWxpZGFkZS4iCisKKyM6IHNyYy90cmlnY21kLmM6NTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiAlcyBwYWNrYWdlIHRyaWdnZXIgdXRpbGl0eSB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICJVdGlsaWRhZGUgZGUgZGlzcGFyYWRvcmVzIGRlIHBhcXVldGVzICVzIGRlIERlYmlhbi5cbiIKKworIzogc3JjL3RyaWdjbWQuYzo2NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9ucz4gLi4uXSA8dHJpZ2dlci1uYW1lPlxuIgorIiAgICAgICAlcyBbPG9wdGlvbnM+IC4uLl0gPGNvbW1hbmQ+XG4iCisiXG4iCittc2dzdHIgIiIKKyJFbXByZWdvOiAlcyBbPG9wY2nDs25zPiAuLi5dIDxub21lLWRpc3BhcmFkb3I+XG4iCisiICAgICAgICAgJXMgWzxvcGNpw7Nucz4gLi4uXSA8b3JkZT5cbiIKKyJcbiIKKworIzogc3JjL3RyaWdjbWQuYzo3MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtLWNoZWNrLXN1cHBvcnRlZCAgICAgICAgICAgICAgICBDaGVjayBpZiB0aGUgcnVubmluZyBkcGtnIHN1cHBvcnRzICIKKyJ0cmlnZ2Vycy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIk9yZGVzOlxuIgorIiAgLS1jaGVjay1zdXBwb3J0ZWQgICAgICAgICAgICAgICAgQ29tcHJvYmEgc2UgYSB2ZXJzacOzbiBhY3R1YWwgZGUgZHBrZ1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZW4gc29wb3J0ZSBkZSBkaXNwYXJhZG9yZXMuXG4iCisiXG4iCisKKyM6IHNyYy90cmlnY21kLmM6ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgICAgICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyIgIC0tYnktcGFja2FnZT08cGFja2FnZT4gICAgICAgICAgIE92ZXJyaWRlIHRyaWdnZXIgYXdhaXRlciAobm9ybWFsbHkgc2V0XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ5IGRwa2cpLlxuIgorIiAgLS1uby1hd2FpdCAgICAgICAgICAgICAgICAgICAgICAgTm8gcGFja2FnZSBuZWVkcyB0byBhd2FpdCB0aGUgIgorInByb2Nlc3NpbmcuXG4iCisiICAtLW5vLWFjdCAgICAgICAgICAgICAgICAgICAgICAgICBKdXN0IHRlc3QgLSBkb24ndCBhY3R1YWxseSBjaGFuZ2UgIgorImFueXRoaW5nLlxuIgorIlxuIgorbXNnc3RyICIiCisiT3BjacOzbnM6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3RvcmlvPiAgICAgRW1wcmVnYSBvIDxkaXJlY3RvcmlvPiBubyBjYW50byBkZSAlcy5cbiIKKyIgIC0tYnktcGFja2FnZT08cGFxdWV0ZT4gICAgICBTdWJzdGl0w7plIG8gZXNwZXJhZG9yIGRlIGRpc3BhcmFkb3Jlc1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChub3JtYWxtZW50ZSBlc3RhYmxlY2lkbyBwb3IgZHBrZykuXG4iCisiICAtLW5vLWF3YWl0ICAgICAgICAgICAgICAgICAgTmluZ8O6biBwYXF1ZXRlIHByZWNpc2EgZGUgYWdhcmRhci5cbiIKKyIgIC0tbm8tYWN0ICAgICAgICAgICAgICAgICAgICBTw7MgcHJvYmEgLSBub24gZmFjZXIgY2FtYmlvcyBlbiByZWFsaWRhZGUuXG4iCisiXG4iCisKKyM6IHNyYy90cmlnY21kLmM6MTUyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB0cmlnZ2VycyBkYXRhIGRpcmVjdG9yeSBub3QgeWV0IGNyZWF0ZWRcbiIKK21zZ3N0ciAiJXM6IGHDrW5kYSBub24gc2UgY3Jlb3UgbyBkaXJlY3RvcmlvIGRlIGRhdG9zIGRlIGRpc3BhcmFkb3Jlc1xuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjE1NgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogdHJpZ2dlciByZWNvcmRzIG5vdCB5ZXQgaW4gZXhpc3RlbmNlXG4iCittc2dzdHIgIiVzOiBhw61uZGEgbm9uIGV4aXN0ZW4gb3MgcmV4aXN0cm9zIGRlIGRpc3BhcmFkb3Jlc1xuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIwNQorIywgZnV6enkKK21zZ2lkICJ0YWtlcyBvbmUgYXJndW1lbnQsIHRoZSB0cmlnZ2VyIG5hbWUiCittc2dzdHIgImRwa2ctdHJpZ2dlciB0b21hIHPDsyB1biBhcmd1bWVudG8sIG8gbm9tZSBkbyBkaXNwYXJhZG9yIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIxMAorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiZHBrZy10cmlnZ2VyIG11c3QgYmUgY2FsbGVkIGZyb20gYSBtYWludGFpbmVyIHNjcmlwdCAob3Igd2l0aCBhIC0tYnktIgorI3wgInBhY2thZ2Ugb3B0aW9uKSIKK21zZ2lkICJtdXN0IGJlIGNhbGxlZCBmcm9tIGEgbWFpbnRhaW5lciBzY3JpcHQgKG9yIHdpdGggYSAtLWJ5LXBhY2thZ2Ugb3B0aW9uKSIKK21zZ3N0ciAiIgorIkTDqWJlc2UgY2hhbWFyIGEgZHBrZy10cmlnZ2VyIGRlc2RlIHVuIHNjcmlwdCBkZSBtYW50ZWRvciAob3UgY3VuaGEgb3BjacOzbiAtLSIKKyJieS1wYWNrYWdlKSIKKworIzogc3JjL3RyaWdjbWQuYzoyMTUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImRwa2ctdHJpZ2dlcjogaWxsZWdhbCBhd2FpdGVkIHBhY2thZ2UgbmFtZSBgJS4yNTBzJzogJS4yNTBzIgorbXNnaWQgImlsbGVnYWwgYXdhaXRlZCBwYWNrYWdlIG5hbWUgJyUuMjUwcyc6ICUuMjUwcyIKK21zZ3N0ciAiZHBrZy10cmlnZ2VyOiBub21lIGRlIHBhcXVldGUgYWdhcmRhZG8gXCIlLjI1MHNcIiBub24gdsOhbGlkbzogJS4yNTBzIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIyMQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCB0cmlnZ2VyIG5hbWUgYCUuMjUwcyc6ICUuMjUwcyIKK21zZ3N0ciAiZHBrZy10cmlnZ2VyOiBub21lIGRlIGRpc3BhcmFkb3IgXCIlLjI1NXNcIiBub24gdsOhbGlkbzogJS4yNTBzIgorCisjOiBzcmMvdHJpZ3Byb2MuYzoyNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBjeWNsZSBmb3VuZCB3aGlsZSBwcm9jZXNzaW5nIHRyaWdnZXJzOlxuIgorIiBjaGFpbiBvZiBwYWNrYWdlcyB3aG9zZSB0cmlnZ2VycyBhcmUgb3IgbWF5IGJlIHJlc3BvbnNpYmxlOlxuIgorbXNnc3RyICIiCisiJXM6IGF0b3BvdXNlIHVuIGNpY2xvIGFvIHByb2Nlc2FyIG9zIGRpc3BhcmFkb3JlczpcbiIKKyIgIGNhZGVhIGRlIHBhcXVldGVzIGRvcyBxdWUgb3MgZGlzcGFyYWRvcmVzIHNvbiBvdSBwb2RlbiBzZXIgcmVzcG9uc2FibGVzOlxuIgorCisjOiBzcmMvdHJpZ3Byb2MuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiBwYWNrYWdlcycgcGVuZGluZyB0cmlnZ2VycyB3aGljaCBhcmUgb3IgbWF5IGJlIHVucmVzb2x2YWJsZTpcbiIKK21zZ3N0ciAiIgorIlxuIgorIiBkaXNwYXJhZG9yZXMgcGVuZGVudGVzIHF1ZSBzb24gb3UgcG9kZXLDrWFuIHNlciBpcnJlc29sdWJsZXM6XG4iCisKKyM6IHNyYy90cmlncHJvYy5jOjI4MQorbXNnaWQgInRyaWdnZXJzIGxvb3BpbmcsIGFiYW5kb25lZCIKK21zZ3N0ciAib3MgZGlzcGFyYWRvcmVzIGVzdMOhbiBudW4gY2ljbG8sIGFiYW5kw7NuYW5zZSIKKworIzogc3JjL3RyaWdwcm9jLmM6MzEyCisjLCBjLWZvcm1hdAorbXNnaWQgIlByb2Nlc3NpbmcgdHJpZ2dlcnMgZm9yICVzIC4uLlxuIgorbXNnc3RyICJBIHByb2Nlc2FyIG9zIGRpc3BhcmFkb3JlcyBkZSAlcyAuLi5cbiIKKworIzogc3JjL3VwZGF0ZS5jOjUyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICItLSVzIG5lZWRzIGV4YWN0bHkgb25lIFBhY2thZ2VzIGZpbGUgYXJndW1lbnQiCittc2dpZCAiLS0lcyBuZWVkcyBleGFjdGx5IG9uZSBQYWNrYWdlcy1maWxlIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIHByZWNpc2EgZGUgZXhhY3RhbWVudGUgdW4gYXJndW1lbnRvIGRlIGZpY2hlaXJvIFBhY2thZ2VzIgorCisjOiBzcmMvdXBkYXRlLmM6NjIKK21zZ2lkICJ1bmFibGUgdG8gYWNjZXNzIGRwa2cgc3RhdHVzIGFyZWEgZm9yIGJ1bGsgYXZhaWxhYmxlIHVwZGF0ZSIKK21zZ3N0ciAiIgorIm5vbiBzZSBwb2RlIGFjY2VkZXIgYSDDoXJlYSBkZSBlc3RhZG8gZGUgZHBrZyBwYXJhIGFjdHVhbGl6YXIgb3MgZGlzcG/DsWlibGVzICIKKyJlbiBicnV0byIKKworIzogc3JjL3VwZGF0ZS5jOjY0Cittc2dpZCAiYnVsayBhdmFpbGFibGUgdXBkYXRlIHJlcXVpcmVzIHdyaXRlIGFjY2VzcyB0byBkcGtnIHN0YXR1cyBhcmVhIgorbXNnc3RyICIiCisiYSBhY3R1YWxpemFjacOzbiBlbiBicnV0byBkZSBkaXNwb8OxaWJsZXMgcmVxdWlyZSBhY2Nlc28gZGUgZXNjcml0dXJhIG5hIMOhcmVhICIKKyJkZSBlc3RhZG8gZGUgZHBrZyIKKworIzogc3JjL3VwZGF0ZS5jOjcxCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlcGxhY2luZyBhdmFpbGFibGUgcGFja2FnZXMgaW5mbywgdXNpbmcgJXMuXG4iCittc2dzdHIgIkEgc3Vic3RpdHXDrXIgYSBpbmZvcm1hY2nDs24gZGUgcGFxdWV0ZXMgZGlzcG/DsWlibGVzLCBlbXByZWdhbmRvICVzLlxuIgorCisjOiBzcmMvdXBkYXRlLmM6NzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiVXBkYXRpbmcgYXZhaWxhYmxlIHBhY2thZ2VzIGluZm8sIHVzaW5nICVzLlxuIgorbXNnc3RyICJBIGFjdHVhbGl6YXIgYSBpbmZvcm1hY2nDs24gZGUgcGFxdWV0ZXMgZGlzcG/DsWlibGVzLCBlbXByZWdhbmRvICVzLlxuIgorCisjOiBzcmMvdXBkYXRlLmM6MTAxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJJbmZvcm1hdGlvbiBhYm91dCAlZCBwYWNrYWdlKHMpIHdhcyB1cGRhdGVkLlxuIgorbXNnaWQgIkluZm9ybWF0aW9uIGFib3V0ICVkIHBhY2thZ2Ugd2FzIHVwZGF0ZWQuXG4iCittc2dpZF9wbHVyYWwgIkluZm9ybWF0aW9uIGFib3V0ICVkIHBhY2thZ2VzIHdhcyB1cGRhdGVkLlxuIgorbXNnc3RyWzBdICJBY3R1YWxpem91c2UgYSBpbmZvcm1hY2nDs24gc29icmUgJWQgcGFxdWV0ZShzKS5cbiIKK21zZ3N0clsxXSAiQWN0dWFsaXpvdXNlIGEgaW5mb3JtYWNpw7NuIHNvYnJlICVkIHBhcXVldGUocykuXG4iCisKKyM6IHNyYy91cGRhdGUuYzoxMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm9ic29sZXRlICctLSVzJyBvcHRpb24sIHVuYXZhaWxhYmxlIHBhY2thZ2VzIGFyZSBhdXRvbWF0aWNhbGx5IGNsZWFuZWQgdXAuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgbmFtZSAnJS41MHMuLi4nIGlzIHRvbyBsb25nIgorbXNnc3RyICJvIG5vbWUgZGUgZmljaGVpcm8gXCIlLjUwcy4uLlwiIMOpIGxvbmdvIGRlIG3DoWlzIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjEyOQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgZmlsZSBuYW1lICclLjI1MHMnIgorbXNnc3RyICJub24gc2UgcG9kZSBhYnJpciBvIGZpY2hlaXJvIG9yaXhlIFwiJS4yNTBzXCIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTg5CisjLCBmdXp6eQorbXNnaWQgInVuYWJsZSB0byBzdGF0IGNvbnRyb2wgZGlyZWN0b3J5IgorbXNnc3RyICJub24gc2UgcG9kZSBhYnJpciBvIGRpcmVjdG9yaW8gZGUgY29udHJvbCB0ZW1wb3JhbCIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoxOTEKKyMsIGZ1enp5Cittc2dpZCAiY29udHJvbCBkaXJlY3RvcnkgaXMgbm90IGEgZGlyZWN0b3J5IgorbXNnc3RyICJub24gc2UgcG9kZSBsZXIgbyBkaXJlY3RvcmlvIGRlIGluZm9ybWFjacOzbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoxOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29udHJvbCBkaXJlY3RvcnkgaGFzIGJhZCBwZXJtaXNzaW9ucyAlMDNsbyAobXVzdCBiZSA+PTA3NTUgYW5kIDw9MDc3NSkiCittc2dzdHIgIiIKKyJvIGRpcmVjdG9yaW8gZGUgY29udHJvbCB0ZW4gdW5zIHBlcm1pc29zICUwM2xvIGluY29ycmVjdG9zIChkZWJlbiBlc3RhciAiCisiZW50cmUgMDc1NSBlIDA3NzUpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjIwNAorIywgYy1mb3JtYXQKK21zZ2lkICJtYWludGFpbmVyIHNjcmlwdCBgJS41MHMnIGlzIG5vdCBhIHBsYWluIGZpbGUgb3Igc3ltbGluayIKK21zZ3N0ciAiIgorIm8gc2NyaXB0IGRlIG1hbnRlZG9yIFwiJS41MHNcIiBub24gw6kgdW4gZmljaGVpcm8gbm9ybWFsIG91IGxpZ2F6w7NuIHNpbWLDs2xpY2EiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjA3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJtYWludGFpbmVyIHNjcmlwdCBgJS41MHMnIGhhcyBiYWQgcGVybWlzc2lvbnMgJTAzbG8gKG11c3QgYmUgPj0wNTU1IGFuZCAiCisiPD0wNzc1KSIKK21zZ3N0ciAiIgorIm8gc2NyaXB0IGRlIG1hbnRlZG9yIFwiJS41MHNcIiB0ZW4gdW5zIHBlcm1pc29zICUwM2xvIGluY29ycmVjdG9zIChkZWJlbiAiCisiZXN0YXIgZW50cmUgMDU1NSBlIDA3NzUpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjIxMQorIywgYy1mb3JtYXQKK21zZ2lkICJtYWludGFpbmVyIHNjcmlwdCBgJS41MHMnIGlzIG5vdCBzdGF0dGFibGUiCittc2dzdHIgIm5vbiBzZSBhdG9wYSBvIHNjcmlwdCBkZSBtYW50ZWRvciBcIiUuNTBzXCIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjM3Cittc2dpZCAiZXJyb3Igb3BlbmluZyBjb25mZmlsZXMgZmlsZSIKK21zZ3N0ciAiZXJybyBhbyBhYnJpciBvIGZpY2hlaXJvIGRlIGZpY2hlaXJvcyBkZSBjb25maWd1cmFjacOzbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNDYKK21zZ2lkICJlbXB0eSBzdHJpbmcgZnJvbSBmZ2V0cyByZWFkaW5nIGNvbmZmaWxlcyIKK21zZ3N0ciAiIgorInJlY2liaXVzZSB1bmhhIGNhZGVhIGJhbGVpcmEgZGUgZmdldHMgYW8gbGVyIG9zIGZpY2hlaXJvcyBkZSBjb25maWd1cmFjacOzbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIG5hbWUgJyUuNTBzLi4uJyBpcyB0b28gbG9uZywgb3IgbWlzc2luZyBmaW5hbCBuZXdsaW5lIgorbXNnc3RyICIiCisiYXZpc28sIG8gbm9tZSBkbyBmaWNoZWlybyBkZSBjb25maWd1cmFjacOzbiBcIiUuNTBzLi4uXCIgw6kgbG9uZ28gZGUgbcOhaXMgb3UgIgorImZhbGxhIG8gcmV0b3JubyBkZSBjYXJybyBmaW5hbFxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI2NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgZmlsZW5hbWUgJyVzJyBjb250YWlucyB0cmFpbGluZyB3aGl0ZSBzcGFjZXMiCittc2dzdHIgIiIKKyJhdmlzbywgbyBmaWNoZWlybyBkZSBjb25maWd1cmFjacOzbiBcIiVzXCIgY29udMOpbiBlc3Bhem9zIGVuIGJyYW5jbyBhbyBmaW5hbFxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI2NgorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBgJS4yNTBzJyBkb2VzIG5vdCBhcHBlYXIgaW4gcGFja2FnZSIKK21zZ3N0ciAibyBmaWNoZWlybyBkZSBjb25maWd1cmFjacOzbiBcIiUuMjUwc1wiIG5vbiBhcGFyZWNlIG5vIHBhcXVldGUiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjY4CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIGAlLjI1MHMnIGlzIG5vdCBzdGF0dGFibGUiCittc2dzdHIgIm5vbiBzZSBhdG9wYSBvIGZpY2hlaXJvIGRlIGNvbmZpZ3VyYWNpw7NuIFwiJS4yNTBzXCIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjcwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSAnJXMnIGlzIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgImF2aXNvLCBvIGZpY2hlaXJvIGRlIGNvbmZpZ3VyYWNpw7NuIFwiJXNcIiBub24gw6kgdW4gZmljaGVpcm8gbm9ybWFsXG4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6Mjc0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBuYW1lICclcycgaXMgZHVwbGljYXRlZCIKK21zZ3N0ciAibm9tZSBkZSBlc2NyYXZvICVzIGR1cGxpY2FkbyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyODcKK21zZ2lkICJlcnJvciByZWFkaW5nIGNvbmZmaWxlcyBmaWxlIgorbXNnc3RyICJlcnJvIGFvIGxlciBvIGZpY2hlaXJvIGRlIGZpY2hlaXJvcyBkZSBjb25maWd1cmFjacOzbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzozMzkKK21zZ2lkICJwYWNrYWdlIG5hbWUgaGFzIGNoYXJhY3RlcnMgdGhhdCBhcmVuJ3QgbG93ZXJjYXNlIGFscGhhbnVtcyBvciBgLSsuJyIKK21zZ3N0ciAiIgorIm8gbm9tZSBkbyBwYXF1ZXRlIHRlbiBjYXJhY3RlcmVzIHF1ZSBub24gc29uIGFsZmFudW3DqXJpY29zIG1pbsO6c2N1bG9zIG91IFwiLSIKKyIrLlwiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjM0MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBjb250YWlucyB1c2VyLWRlZmluZWQgUHJpb3JpdHkgdmFsdWUgJyVzJyIKK21zZ3N0ciAiIgorImF2aXNvLCBcIiVzXCIgY29udMOpbiBvIHZhbG9yIGRlIHByaW9yaWRhZGUgZGVmaW5pZG8gcG9sbyB1c3VhcmlvIFwiJXNcIlxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjM0NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBjb250YWlucyB1c2VyLWRlZmluZWQgZmllbGQgJyVzJyIKK21zZ3N0ciAiYXZpc28sIFwiJXNcIiBjb250w6luIG8gY2FtcG8gZGVmaW5pZG8gcG9sbyB1c3VhcmlvIFwiJXNcIlxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjM1OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgJWQgd2FybmluZyBhYm91dCB0aGUgY29udHJvbCBmaWxlKHMpXG4iCittc2dpZF9wbHVyYWwgImlnbm9yaW5nICVkIHdhcm5pbmdzIGFib3V0IHRoZSBjb250cm9sIGZpbGUocylcbiIKK21zZ3N0clswXSAiZHBrZy1kZWI6IGlnbsOzcmFuc2UgJWQgYXZpc29zIHNvYnJlIG8ocykgZmljaGVpcm9zKHMpIGRlIGNvbnRyb2xcbiIKK21zZ3N0clsxXSAiZHBrZy1kZWI6IGlnbsOzcmFuc2UgJWQgYXZpc29zIHNvYnJlIG8ocykgZmljaGVpcm9zKHMpIGRlIGNvbnRyb2xcbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MDMgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MjkKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDM2CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSA8ZGlyZWN0b3J5PiBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyBwcmVjaXNhIGR1biBhcmd1bWVudG8gZGUgZGlyZWN0b3JpbyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MDkKK21zZ2lkICItLWJ1aWxkIHRha2VzIGF0IG1vc3QgdHdvIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS1idWlsZCB0b21hIGRvdXMgYXJndW1lbnRvcyBjb21vIG3DoXhpbW8iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDEzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGVjayBmb3IgZXhpc3RlbmNlIG9mIGFyY2hpdmUgYCUuMjUwcyciCittc2dzdHIgIm5vbiBzZSBwb2RlIGNvbXByb2JhciBhIGV4aXN0ZW5jaWEgZG8gYXJxdWl2byBcIiUuMjUwc1wiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQzMAorbXNnaWQgInRhcmdldCBpcyBkaXJlY3RvcnkgLSBjYW5ub3Qgc2tpcCBjb250cm9sIGZpbGUgY2hlY2siCittc2dzdHIgIiIKKyJvIGRlc3Rpbm8gw6kgdW4gZGlyZWN0b3JpbyAtIG5vbiBzZSBwb2RlIG9taXRpciBhIGNvbXByb2JhY2nDs24gZG8gZmljaGVpcm8gZGUgIgorImNvbnRyb2wiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDMxCittc2dpZCAibm90IGNoZWNraW5nIGNvbnRlbnRzIG9mIGNvbnRyb2wgYXJlYS4iCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImRwa2ctZGViOiBidWlsZGluZyBhbiB1bmtub3duIHBhY2thZ2UgaW4gJyVzJy5cbiIKK21zZ3N0ciAiZHBrZy1kZWI6IGEgY29uc3RydcOtciBvIHBhcXVldGUgXCIlc1wiIGVuIFwiJXNcIi5cbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZy1kZWI6IGJ1aWxkaW5nIHBhY2thZ2UgYCVzJyBpbiBgJXMnLlxuIgorbXNnc3RyICJkcGtnLWRlYjogYSBjb25zdHJ1w61yIG8gcGFxdWV0ZSBcIiVzXCIgZW4gXCIlc1wiLlxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ2NyBkcGtnLWRlYi9idWlsZC5jOjUyMQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIG1ha2UgdG1wZmlsZSAoZGF0YSkiCittc2dpZCAiZmFpbGVkIHRvIG1ha2UgdGVtcG9yYXJ5IGZpbGUgKCVzKSIKK21zZ3N0ciAibm9uIHNlIHB1aWRvIGNyZWFyIG8gZmljaGVpcm8gdGVtcG9yYWwgKGRhdG9zKSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0NjcgZHBrZy1kZWIvYnVpbGQuYzo0NzAgZHBrZy1kZWIvYnVpbGQuYzo0NzcKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDg1IGRwa2ctZGViL2J1aWxkLmM6NDk0IGRwa2ctZGViL2J1aWxkLmM6NDk5CisjLCBmdXp6eQorI3wgbXNnaWQgImNvbnRyb2wgYXJlYSIKK21zZ2lkICJjb250cm9sIG1lbWJlciIKK21zZ3N0ciAiw6FyZWEgZGUgY29udHJvbCIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0NzAgZHBrZy1kZWIvYnVpbGQuYzo1MjQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byB1bmxpbmsgdG1wZmlsZSAoZGF0YSksICVzIgorbXNnaWQgImZhaWxlZCB0byB1bmxpbmsgdGVtcG9yYXJ5IGZpbGUgKCVzKSwgJXMiCittc2dzdHIgIm5vbiBzZSBwdWlkbyBib3JyYXIgbyBmaWNoZWlybyB0ZW1wb3JhbCAoZGF0b3MpLCAlcyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0ODUgZHBrZy1kZWIvYnVpbGQuYzo1OTMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdG1wZmlsZSAoZGF0YSkiCittc2dpZCAiZmFpbGVkIHRvIHJld2luZCB0ZW1wb3JhcnkgZmlsZSAoJXMpIgorbXNnc3RyICJub24gc2UgcHVpZG8gcmV0cm9jZWRlciBubyBmaWNoZWlybyB0ZW1wb3JhbCAoZGF0b3MpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ5NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHN0YXQgdGVtcG9yYXJ5IGZpbGUgKCVzKSIKK21zZ3N0ciAibm9uIHNlIHB1aWRvIGNyZWFyIG8gZmljaGVpcm8gdGVtcG9yYWwgKGRhdG9zKSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0OTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igd3JpdGluZyBgJXMnIgorbXNnc3RyICJlcnJvIGFvIGdyYXZhciBcIiVzXCIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTIxIGRwa2ctZGViL2J1aWxkLmM6NTI0IGRwa2ctZGViL2J1aWxkLmM6NTQ2CisjOiBkcGtnLWRlYi9idWlsZC5jOjU3MiBkcGtnLWRlYi9idWlsZC5jOjU4MCBkcGtnLWRlYi9idWlsZC5jOjU5MworIywgZnV6enkKKyN8IG1zZ2lkICJiZXR3ZWVuIG1lbWJlcnMiCittc2dpZCAiZGF0YSBtZW1iZXIiCittc2dzdHIgImVudHJlIG1lbWJyb3MiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTcxIGRwa2ctZGViL2J1aWxkLmM6NTgwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gd3JpdGUgZmlsZW5hbWUgdG8gdGFyIHBpcGUgKGRhdGEpIgorbXNnaWQgImZhaWxlZCB0byB3cml0ZSBmaWxlbmFtZSB0byB0YXIgcGlwZSAoJXMpIgorbXNnc3RyICJub24gc2UgcHVpZG8gZ3JhdmFyIG8gbm9tZSBkbyBmaWNoZWlybyBuYSBjYW5sZSBkZSB0YXIgKGRhdG9zKSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo1ODQKK21zZ2lkICI8Y29tcHJlc3M+IGZyb20gdGFyIC1jZiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6NjEgZHBrZy1kZWIvZXh0cmFjdC5jOjYzCittc2dpZCAic2hlbGwgY29tbWFuZCB0byBtb3ZlIGZpbGVzIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzo3MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBmaWxlIGluICVzIGluICUuMjU1cyIKK21zZ3N0ciAiZmluIGRlIGZpY2hlaXJvIGluZXNwZXJhZG8gZW4gXCIlc1wiIGVuICUuMjU1cyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHJlYWRpbmcgJXMgZnJvbSBmaWxlICUuMjU1cyIKK21zZ3N0ciAiZXJybyBhbyBsZXIgJXMgZG8gZmljaGVpcm8gJS4yNTVzIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTI1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZWFkIGFyY2hpdmUgYCUuMjU1cyciCittc2dzdHIgIm5vbiBzZSBwdWlkbyBsZXIgbyBhcnF1aXZvIFwiJS4yNTVzXCIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxMjcKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgYXJjaGl2ZSIKK21zZ3N0ciAibm9uIHNlIGF0b3BvdSBvIGFycXVpdm8iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxMzEKKyMsIGZ1enp5CisjfCBtc2dpZCAiYXJjaGl2ZSBoYXMgbm8gZG90IGluIHZlcnNpb24gbnVtYmVyIgorbXNnaWQgImFyY2hpdmUgbWFnaWMgdmVyc2lvbiBudW1iZXIiCittc2dzdHIgIm8gYXJxdWl2byBub24gdGVuIHVuIHB1bnRvIG5vIG7Dum1lcm8gZGUgdmVyc2nDs24iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNDMKKyMsIGZ1enp5CisjfCBtc2dpZCAiYXJjaGl2ZSBoYXMgbm8gbmV3bGluZXMgaW4gaGVhZGVyIgorbXNnaWQgImFyY2hpdmUgbWVtYmVyIGhlYWRlciIKK21zZ3N0ciAibyBhcnF1aXZvIG5vbiB0ZW4gcmV0b3Jub3MgZGUgY2Fycm8gbmEgY2FiZWNlaXJhIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTQ4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgcGFydCBudW1iZXIiCittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIGFyY2hpdmUgaGVhZGVyIG1hZ2ljIgorbXNnc3RyICJvIGZpY2hlaXJvIFwiJS4yNTBzXCIgZXN0w6EgY29ycm9tcGlkbyAtIG7Dum1lcm8gZGUgcGFydGUgaW5jb3JyZWN0byIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE1NQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIG5vdCBhIGRlYmlhbiBiaW5hcnkgYXJjaGl2ZSAodHJ5IGRwa2ctc3BsaXQ/KSIKK21zZ3N0ciAiIgorIm8gZmljaGVpcm8gXCIlLjI1MHNcIiBub24gw6kgdW4gYXJxdWl2byBiaW5hcmlvIGRlIERlYmlhbiAocHJvYmUgZHBrZy1zcGxpdCkiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNTkKKyMsIGZ1enp5CisjfCBtc2dpZCAiYXJjaGl2ZSBoYXMgbm8gZG90IGluIHZlcnNpb24gbnVtYmVyIgorbXNnaWQgImFyY2hpdmUgaW5mb3JtYXRpb24gaGVhZGVyIG1lbWJlciIKK21zZ3N0ciAibyBhcnF1aXZvIG5vbiB0ZW4gdW4gcHVudG8gbm8gbsO6bWVybyBkZSB2ZXJzacOzbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE2MgorbXNnaWQgImFyY2hpdmUgaGFzIG5vIG5ld2xpbmVzIGluIGhlYWRlciIKK21zZ3N0ciAibyBhcnF1aXZvIG5vbiB0ZW4gcmV0b3Jub3MgZGUgY2Fycm8gbmEgY2FiZWNlaXJhIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTY1Cittc2dpZCAiYXJjaGl2ZSBoYXMgbm8gZG90IGluIHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICJvIGFycXVpdm8gbm9uIHRlbiB1biBwdW50byBubyBuw7ptZXJvIGRlIHZlcnNpw7NuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTY4CisjLCBjLWZvcm1hdAorbXNnaWQgImFyY2hpdmUgdmVyc2lvbiAlLjI1MHMgbm90IHVuZGVyc3Rvb2QsIGdldCBuZXdlciBkcGtnLWRlYiIKK21zZ3N0ciAiIgorIm5vbiBzZSBlbnRlbmRlIGEgdmVyc2nDs24gJS4yNTBzIGRvIGFycXVpdm8sIG9idGXDsWEgdW4gZHBrZy1kZWIgbcOhaXMgbW9kZXJubyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE3OSBkcGtnLWRlYi9leHRyYWN0LmM6MjA1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJza2lwcGVkIG1lbWJlciBkYXRhIGZyb20gJXMiCittc2dpZCAic2tpcHBlZCBhcmNoaXZlIG1lbWJlciBkYXRhIGZyb20gJXMiCittc2dzdHIgIm9tw610ZW5zZSBkYXRvcyBkbyBtZW1icm8gZGUgJXMiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxOTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgY29udGFpbnMgdW51bmRlcnN0b29kIGRhdGEgbWVtYmVyICUuKnMsIGdpdmluZyB1cCIKK21zZ2lkICJhcmNoaXZlICclLjI1MHMnIGNvbnRhaW5zIG5vdCB1bmRlcnN0b29kIGRhdGEgbWVtYmVyICUuKnMsIGdpdmluZyB1cCIKK21zZ3N0ciAiIgorIm8gZmljaGVpcm8gXCIlLjI1MHNcIiBjb250w6luIG8gbWVtYnJvIGRlIGRhdG9zICUuKnMgcXVlIG5vbiBzZSBlbnRlbmRlLCAiCisiZMOpaXhhc2UiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxOTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgY29udGFpbnMgdHdvIGNvbnRyb2wgbWVtYmVycywgZ2l2aW5nIHVwIgorbXNnaWQgImFyY2hpdmUgJyUuMjUwcycgY29udGFpbnMgdHdvIGNvbnRyb2wgbWVtYmVycywgZ2l2aW5nIHVwIgorbXNnc3RyICJvIGZpY2hlaXJvIFwiJS4yNTBzXCIgY29udMOpbiBkb3VzIG1lbWJyb3MgZGUgY29udHJvbCwgZMOpaXhhc2UiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyMTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIgbmV3IGRlYmlhbiBwYWNrYWdlLCB2ZXJzaW9uICVzLlxuIgorI3wgIiBzaXplICVsZCBieXRlczogY29udHJvbCBhcmNoaXZlPSAlemkgYnl0ZXMuXG4iCittc2dpZCAiIgorIiBuZXcgZGViaWFuIHBhY2thZ2UsIHZlcnNpb24gJXMuXG4iCisiIHNpemUgJWpkIGJ5dGVzOiBjb250cm9sIGFyY2hpdmU9ICVqZCBieXRlcy5cbiIKK21zZ3N0ciAiIgorIiBub3ZvIHBhcXVldGUgRGViaWFuLCB2ZXJzacOzbiAlcy5cbiIKKyIgdGFtYcOxbyAlbGQgYnl0ZXM6IGFycXVpdm8gZGUgY29udHJvbD0gJXppIGJ5dGVzLlxuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjMyCittc2dpZCAiYXJjaGl2ZSBjb250cm9sIG1lbWJlciBzaXplIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyMzUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImFyY2hpdmUgaGFzIG1hbGZvcm1hdHRlZCBjb250cm9sIGxlbmd0aCBgJXMnIgorbXNnaWQgImFyY2hpdmUgaGFzIG1hbGZvcm1hdHRlZCBjb250cm9sIG1lbWJlciBzaXplICclcyciCittc2dzdHIgIm8gYXJxdWl2byB0ZW4gdW5oYSBsb254aXR1ZGUgZGUgY29udHJvbCBtYWwgZm9ybWF0YWRhIFwiJXNcIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI0MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic2tpcHBlZCBtZW1iZXIgZGF0YSBmcm9tICVzIgorbXNnaWQgInNraXBwZWQgYXJjaGl2ZSBjb250cm9sIG1lbWJlciBkYXRhIGZyb20gJXMiCittc2dzdHIgIm9tw610ZW5zZSBkYXRvcyBkbyBtZW1icm8gZGUgJXMiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNDYKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIgb2xkIGRlYmlhbiBwYWNrYWdlLCB2ZXJzaW9uICVzLlxuIgorI3wgIiBzaXplICVsZCBieXRlczogY29udHJvbCBhcmNoaXZlPSAlemksIG1haW4gYXJjaGl2ZT0gJWxkLlxuIgorbXNnaWQgIiIKKyIgb2xkIGRlYmlhbiBwYWNrYWdlLCB2ZXJzaW9uICVzLlxuIgorIiBzaXplICVqZCBieXRlczogY29udHJvbCBhcmNoaXZlPSAlamQsIG1haW4gYXJjaGl2ZT0gJWpkLlxuIgorbXNnc3RyICIiCisiIGFudGlnbyBwYXF1ZXRlIERlYmlhbiwgdmVyc2nDs24gJXMuXG4iCisiIHRhbWHDsW8gJWxkIGJ5dGVzOiBhcnF1aXZvIGRlIGNvbnRyb2w9ICV6aSwgYXJxdWl2byBwcmluY2lwYWw9ICVsZC5cbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI1NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZy1kZWI6IGZpbGUgbG9va3MgbGlrZSBpdCBtaWdodCBiZSBhbiBhcmNoaXZlIHdoaWNoIGhhcyBiZWVuXG4iCisiZHBrZy1kZWI6ICAgIGNvcnJ1cHRlZCBieSBiZWluZyBkb3dubG9hZGVkIGluIEFTQ0lJIG1vZGVcbiIKK21zZ3N0ciAiIgorImRwa2ctZGViOiBzZW1lbGxhIHF1ZSBvIGFycXVpdm8gcXVlZG91IGNvcnJvbXBpZG9cbiIKKyJkcGtnLWRlYjogICAgcG9yIHNlIHRlciBkZXNjYXJnYWRvIGVuIG1vZG8gQVNDSUlcbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI1OQorIywgYy1mb3JtYXQKK21zZ2lkICJgJS4yNTVzJyBpcyBub3QgYSBkZWJpYW4gZm9ybWF0IGFyY2hpdmUiCittc2dzdHIgIlwiJS4yNTVzXCIgbm9uIMOpIHVuIGFycXVpdm8gZGUgZm9ybWF0byBEZWJpYW4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNjYKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgdG8gcGlwZSBpbiBjb3B5IgorbXNnc3RyICJub24gc2UgcHVpZG8gZ3JhdmFyIG5hIGNhbmxlIGRhIGNvcGlhIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjY4Cittc2dpZCAiZmFpbGVkIHRvIGNsb3NlIHBpcGUgaW4gY29weSIKK21zZ3N0ciAibm9uIHNlIHB1aWRvIHBlY2hhciBhIGNhbmxlIGRhIGNvcGlhIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6Mjg0Cittc2dpZCAiZGF0YSIKK21zZ3N0ciAiZGF0b3MiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozMDcKK21zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gZGlyZWN0b3J5IgorbXNnc3RyICJub24gc2UgcHVpZG8gY2FtYmlhciBhbyBkaXJlY3RvcmlvIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzEwCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBkaXJlY3RvcnkiCittc2dzdHIgIm5vbiBzZSBwdWlkbyBjcmVhciBvIGRpcmVjdG9yaW8iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozMTIKK21zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gZGlyZWN0b3J5IGFmdGVyIGNyZWF0aW5nIGl0IgorbXNnc3RyICJub24gc2UgcHVpZG8gY2FtYmlhciBhbyBkaXJlY3RvcmlvIGRlc3BvaXMgZGUgbyBjcmVhciIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMyMworIywgZnV6enkKK21zZ2lkICI8ZGVjb21wcmVzcz4iCittc2dzdHIgIiVzOiBkZXNjb21wcmVzacOzbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMyNQorIywgZnV6enkKK21zZ2lkICJwYXN0ZSIKK21zZ3N0ciAiYXByb2JhZG9cbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjM0MiBkcGtnLWRlYi9leHRyYWN0LmM6MzYzIGRwa2ctZGViL2V4dHJhY3QuYzo0MDIKKyM6IGRwa2ctZGViL2luZm8uYzo3NworIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGEgLmRlYiBmaWxlbmFtZSBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyBwcmVjaXNhIGR1biBhcmd1bWVudG8gZGUgbm9tZSBkZSBmaWNoZWlybyAuZGViIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzQ3IGRwa2ctZGViL2V4dHJhY3QuYzo0MDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIi0tJXMgbmVlZHMgYSB0YXJnZXQgZGlyZWN0b3J5LlxuIgorIlBlcmhhcHMgeW91IHNob3VsZCBiZSB1c2luZyBkcGtnIC0taW5zdGFsbCA/IgorbXNnc3RyICIiCisiLS0lcyBwcmVjaXNhIGR1biBkaXJlY3RvcmlvIGRlc3Rpbm8uXG4iCisiwr9Qb2RlIHNlciBxdWUgdGXDsWEgcXVlIGVtcHJlZ2FyIGRwa2cgLS1pbnN0YWxsPyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjM1MCBkcGtnLWRlYi9leHRyYWN0LmM6NDEwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgYXQgbW9zdCB0d28gYXJndW1lbnRzICguZGViIGFuZCBkaXJlY3RvcnkpIgorbXNnc3RyICItLSVzIHRvbWEgY29tbyBtb2l0byBkb3VzIGFyZ3VtZW50b3MgKC5kZWIgZSBkaXJlY3RvcmlvKSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjM2NQorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIHRha2VzIG9ubHkgb25lIGFyZ3VtZW50ICguZGViIGZpbGVuYW1lKSIKK21zZ3N0ciAiLS0lcyB0b21hIHPDsyB1biBhcmd1bWVudG8gKG5vbWUgZGUgZmljaGVpcm8gLmRlYikiCisKKyM6IGRwa2ctZGViL2luZm8uYzo2MworbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byBgLycgZm9yIGNsZWFudXAiCittc2dzdHIgIm5vbiBzZSBwdWlkbyBjYW1iaWFyIGEgXCIvXCIgcGFyYSBmYWNlciBsaW1wZXphIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTA2CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW5ub3Qgc3RhdCBvbGQgbmFtZSBgJXMnOiAlcyIKK21zZ2lkICJjb250cm9sIGZpbGUgJyVzJyIKK21zZ3N0ciAibm9uIHNlIGF0b3BhIG8gbm9tZSBhbnRpZ28gXCIlc1wiOiAlcyIKKworIzogZHBrZy1kZWIvaW5mby5jOjExMAorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnLWRlYjogYCUuMjU1cycgY29udGFpbnMgbm8gY29udHJvbCBjb21wb25lbnQgYCUuMjU1cydcbiIKK21zZ3N0ciAiZHBrZy1kZWI6IFwiJS4yNTVzXCIgbm9uIGNvbnTDqW4gdW4gY29tcG/DsWVudGUgZGUgY29udHJvbCBcIiUuMjU1c1wiXG4iCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAib3BlbiBjb21wb25lbnQgYCUuMjU1cycgKGluICUuMjU1cykgZmFpbGVkIGluIGFuIHVuZXhwZWN0ZWQgd2F5IgorbXNnc3RyICIiCisiYSBhcGVydHVyYSBkbyBjb21wb8OxZW50ZSBcIiUuMjU1c1wiIChlbiAlLjI1NXMpIGZhbGxvdSBkdW4geGVpdG8gaW5lc3BlcmFkbyIKKworIzogZHBrZy1kZWIvaW5mby5jOjEyMQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiT25lIHJlcXVlc3RlZCBjb250cm9sIGNvbXBvbmVudCBpcyBtaXNzaW5nIgorbXNnaWQgIiVkIHJlcXVlc3RlZCBjb250cm9sIGNvbXBvbmVudCBpcyBtaXNzaW5nIgorbXNnaWRfcGx1cmFsICIlZCByZXF1ZXN0ZWQgY29udHJvbCBjb21wb25lbnRzIGFyZSBtaXNzaW5nIgorbXNnc3RyWzBdICJGYWxsYSB1biBjb21wb8OxZW50ZSBkZSBjb250cm9sIHNvbGljaXRhZG8iCittc2dzdHJbMV0gIkZhbGxhIHVuIGNvbXBvw7FlbnRlIGRlIGNvbnRyb2wgc29saWNpdGFkbyIKKworIzogZHBrZy1kZWIvaW5mby5jOjEzOSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NDI0CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzY2FuIGRpcmVjdG9yeSBgJS4yNTVzJyIKK21zZ3N0ciAibm9uIHNlIHBvZGUgZXhwbG9yYXIgbyBkaXJlY3RvcmlvIFwiJS4yNTVzXCIiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHN0YXQgYCUuMjU1cycgKGluIGAlLjI1NXMnKSIKK21zZ3N0ciAibm9uIHNlIGF0b3BhIFwiJS4yNTVzXCIgKGVuIFwiJS4yNTVzXCIpIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTUyCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBvcGVuIGAlLjI1NXMnIChpbiBgJS4yNTVzJykiCittc2dzdHIgIm5vbiBzZSBwb2RlIGFicmlyIFwiJS4yNTVzXCIgKGVuIFwiJS4yNTVzXCIpIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTY3IGRwa2ctZGViL2luZm8uYzoxODUgZHBrZy1kZWIvaW5mby5jOjE5OQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCBgJS4yNTVzJyAoaW4gYCUuMjU1cycpIgorbXNnc3RyICJub24gc2UgcG9kZSBsZXIgXCIlLjI1NXNcIiAoZW4gXCIlLjI1NXNcIikiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxNzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiAlN2xkIGJ5dGVzLCAlNWQgbGluZXMgICAlYyAgJS0yMC4xMjdzICUuMTI3c1xuIgorbXNnaWQgIiAlN2pkIGJ5dGVzLCAlNWQgbGluZXMgICAlYyAgJS0yMC4xMjdzICUuMTI3c1xuIgorbXNnc3RyICIgJTdsZCBieXRlcywgJTVkIGxpw7FhcyAgICVjICAlLTIwLjEyN3MgJS4xMjdzXG4iCisKKyM6IGRwa2ctZGViL2luZm8uYzoxNzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAgICBub3QgYSBwbGFpbiBmaWxlICAgICAgICAgICUuMjU1c1xuIgorbXNnc3RyICIgICAgIG5vbiDDqSB1biBmaWNoZWlybyBub3JtYWwgICUuMjU1c1xuIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTg2Cittc2dpZCAiKG5vIGBjb250cm9sJyBmaWxlIGluIGNvbnRyb2wgYXJjaGl2ZSEpXG4iCittc2dzdHIgIihub24gaGFpIHVuIGZpY2hlaXJvIFwiY29udHJvbFwiIG5vIGFycXVpdm8gZGUgY29udHJvbClcbiIKKworIzogZHBrZy1kZWIvaW5mby5jOjIyMgorbXNnaWQgImNvdWxkIG5vdCBvcGVuIHRoZSBgY29udHJvbCcgY29tcG9uZW50IgorbXNnc3RyICJub24gc2UgcHVpZG8gYWJyaXIgbyBjb21wb8OxZW50ZSBcImNvbnRyb2xcIiIKKworIzogZHBrZy1kZWIvaW5mby5jOjI2MQorbXNnaWQgImZhaWxlZCBkdXJpbmcgcmVhZCBvZiBgY29udHJvbCcgY29tcG9uZW50IgorbXNnc3RyICJob3VibyB1biBmYWxsbyBkdXJhbnRlIGEgbGVjdHVyYSBkbyBjb21wb8OxZW50ZSBcImNvbnRyb2xcIiIKKworIzogZHBrZy1kZWIvaW5mby5jOjI2MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyB0aGUgJyVzJyBjb21wb25lbnQiCittc2dzdHIgImVycm8gYW8gcGVjaGFyIGEgY2FubGUgZGUgZmluZCIKKworIzogZHBrZy1kZWIvaW5mby5jOjI3OAorbXNnaWQgIkVycm9yIGluIGZvcm1hdCIKK21zZ3N0ciAiRXJybyBubyBmb3JtYXRvIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MzI4Cittc2dpZCAiLS1jb250ZW50cyB0YWtlcyBleGFjdGx5IG9uZSBhcmd1bWVudCIKK21zZ3N0ciAiLS1jb250ZW50cyB0b21hIGV4YWN0YW1lbnRlIHVuIGFyZ3VtZW50byIKKworIzogZHBrZy1kZWIvbWFpbi5jOjU0CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiBgJXMnIHBhY2thZ2UgYXJjaGl2ZSBiYWNrZW5kIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkJhY2tlbmQgZGUgYXJxdWl2b3MgZGUgcGFxdWV0ZXMgXCIlc1wiIGRlIERlYmlhbiwgdmVyc2nDs24gJXMuXG4iCisKKyM6IGRwa2ctZGViL21haW4uYzo3MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIkNvbW1hbmRzOlxuIgorI3wgIiAgLWJ8LS1idWlsZCA8ZGlyZWN0b3J5PiBbPGRlYj5dICAgQnVpbGQgYW4gYXJjaGl2ZS5cbiIKKyN8ICIgIC1jfC0tY29udGVudHMgPGRlYj4gICAgICAgICAgICAgIExpc3QgY29udGVudHMuXG4iCisjfCAiICAtSXwtLWluZm8gPGRlYj4gWzxjZmlsZT4gLi4uXSAgICBTaG93IGluZm8gdG8gc3Rkb3V0LlxuIgorI3wgIiAgLVd8LS1zaG93IDxkZWI+ICAgICAgICAgICAgICAgICAgU2hvdyBpbmZvcm1hdGlvbiBvbiBwYWNrYWdlKHMpXG4iCisjfCAiICAtZnwtLWZpZWxkIDxkZWI+IFs8Y2ZpZWxkPiAuLi5dICBTaG93IGZpZWxkKHMpIHRvIHN0ZG91dC5cbiIKKyN8ICIgIC1lfC0tY29udHJvbCA8ZGViPiBbPGRpcmVjdG9yeT5dIEV4dHJhY3QgY29udHJvbCBpbmZvLlxuIgorI3wgIiAgLXh8LS1leHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+ICAgRXh0cmFjdCBmaWxlcy5cbiIKKyN8ICIgIC1YfC0tdmV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gIEV4dHJhY3QgJiBsaXN0IGZpbGVzLlxuIgorI3wgIiAgLS1mc3lzLXRhcmZpbGUgPGRlYj4gICAgICAgICAgICAgT3V0cHV0IGZpbGVzeXN0ZW0gdGFyZmlsZS5cbiIKKyN8ICJcbiIKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtYnwtLWJ1aWxkIDxkaXJlY3Rvcnk+IFs8ZGViPl0gICBCdWlsZCBhbiBhcmNoaXZlLlxuIgorIiAgLWN8LS1jb250ZW50cyA8ZGViPiAgICAgICAgICAgICAgTGlzdCBjb250ZW50cy5cbiIKKyIgIC1JfC0taW5mbyA8ZGViPiBbPGNmaWxlPiAuLi5dICAgIFNob3cgaW5mbyB0byBzdGRvdXQuXG4iCisiICAtV3wtLXNob3cgPGRlYj4gICAgICAgICAgICAgICAgICBTaG93IGluZm9ybWF0aW9uIG9uIHBhY2thZ2UocylcbiIKKyIgIC1mfC0tZmllbGQgPGRlYj4gWzxjZmllbGQ+IC4uLl0gIFNob3cgZmllbGQocykgdG8gc3Rkb3V0LlxuIgorIiAgLWV8LS1jb250cm9sIDxkZWI+IFs8ZGlyZWN0b3J5Pl0gRXh0cmFjdCBjb250cm9sIGluZm8uXG4iCisiICAteHwtLWV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gICBFeHRyYWN0IGZpbGVzLlxuIgorIiAgLVh8LS12ZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PiAgRXh0cmFjdCAmIGxpc3QgZmlsZXMuXG4iCisiICAtUnwtLXJhdy1leHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFeHRyYWN0IGNvbnRyb2wgaW5mbyBhbmQgZmlsZXMuXG4iCisiICAtLWZzeXMtdGFyZmlsZSA8ZGViPiAgICAgICAgICAgICBPdXRwdXQgZmlsZXN5c3RlbSB0YXJmaWxlLlxuIgorIlxuIgorbXNnc3RyICIiCisiT3JkZXM6XG4iCisiICAtYnwtLWJ1aWxkIDxkaXJlY3RvcmlvPiBbPGRlYj5dICBDb25zdHLDumUgdW4gYXJxdWl2by5cbiIKKyIgIC1jfC0tY29udGVudHMgPGRlYj4gICAgICAgICAgICAgIEFtb3NhIHVuaGEgbGlzdGEgZG8gY29udGlkby5cbiIKKyIgIC1JfC0taW5mbyA8ZGViPiBbPGZpY2hlaXJvYz4uLi5dIEFtb3NhIGluZm9ybWFjacOzbiBuYSBzYcOtZGEgZXN0w6FuZGFyLlxuIgorIiAgLVd8LS1zaG93IDxkZWI+ICAgICAgICAgICAgICAgICAgQW1vc2EgaW5mb3JtYWNpw7NuIHNvYnJlIG8ocykgcGFxdWV0ZShzKVxuIgorIiAgLWZ8LS1maWVsZCA8ZGViPiBbPGNhbXBvYz4uLi5dICAgQW1vc2EgbyhzKSBjYW1wbyhzKSBuYSBzYcOtZGEgZXN0w6FuZGFyLlxuIgorIiAgLWV8LS1jb250cm9sIDxkZWI+IFs8ZGlyZWN0b3Jpbz5dXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFeHRyYWUgYSBpbmZvcm1hY2nDs24gZGUgY29udHJvbC5cbiIKKyIgIC14fC0tZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3Jpbz4gIEV4dHJhZSBmaWNoZWlyb3MuXG4iCisiICAtWHwtLXZleHRyYWN0IDxkZWI+IDxkaXJlY3RvcmlvPiBFeHRyYWUgZmljaGVpcm9zIGUgYW1vc2EgdW5oYSBsaXN0YS5cbiIKKyIgIC0tZnN5cy10YXJmaWxlIDxkZWI+ICAgICAgICAgICAgIE9idMOpbiBvIGFycXVpdm8gdGFyIGRvIHNpc3RlbWEgZGUgIgorImZpY2hlaXJvcy5cbiIKKyJcbiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjkzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyI8ZGViPiBpcyB0aGUgZmlsZW5hbWUgb2YgYSBEZWJpYW4gZm9ybWF0IGFyY2hpdmUuXG4iCisiPGNmaWxlPiBpcyB0aGUgbmFtZSBvZiBhbiBhZG1pbmlzdHJhdGl2ZSBmaWxlIGNvbXBvbmVudC5cbiIKKyI8Y2ZpZWxkPiBpcyB0aGUgbmFtZSBvZiBhIGZpZWxkIGluIHRoZSBtYWluIGBjb250cm9sJyBmaWxlLlxuIgorIlxuIgorbXNnc3RyICIiCisiPGRlYj4gw6kgbyBub21lIGR1biBhcnF1aXZvIGRlIGZvcm1hdG8gRGViaWFuLlxuIgorIjxmaWNoZWlyb2M+IMOpIG8gbm9tZSBkdW4gY29tcG/DsWVudGUgZGUgZmljaGVpcm8gYWRtaW5pc3RyYXRpdm8uXG4iCisiPGNhbXBvYz4gw6kgbyBub21lIGR1biBjYW1wbyBkbyBmaWNoZWlybyBcImNvbnRyb2xcIiBwcmluY2lwYWwuXG4iCisiXG4iCisKKyM6IGRwa2ctZGViL21haW4uYzo5OQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLXNob3dmb3JtYXQ9PGZvcm1hdD4gICAgICAgICAgICBVc2UgYWx0ZXJuYXRpdmUgZm9ybWF0IGZvciAtLXNob3cuXG4iCisiICAtdiwgLS12ZXJib3NlICAgICAgICAgICAgICAgICAgICBFbmFibGUgdmVyYm9zZSBvdXRwdXQuXG4iCisiICAtRCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbmFibGUgZGVidWdnaW5nIG91dHB1dC5cbiIKKyIgIC0tb2xkLCAtLW5ldyAgICAgICAgICAgICAgICAgICAgIFNlbGVjdCBhcmNoaXZlIGZvcm1hdC5cbiIKKyIgIC0tbm9jaGVjayAgICAgICAgICAgICAgICAgICAgICAgIFN1cHByZXNzIGNvbnRyb2wgZmlsZSBjaGVjayAoYnVpbGQgYmFkXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhY2thZ2VzKS5cbiIKKyIgIC16IyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNldCB0aGUgY29tcHJlc3Npb24gbGV2ZWwgd2hlbiBidWlsZGluZy5cbiIKKyIgIC1aPHR5cGU+ICAgICAgICAgICAgICAgICAgICAgICAgIFNldCB0aGUgY29tcHJlc3Npb24gdHlwZSB1c2VkIHdoZW4gIgorImJ1aWxkaW5nLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBbGxvd2VkIHR5cGVzOiBnemlwLCB4eiwgYnppcDIsIGx6bWEsICIKKyJub25lLlxuIgorIlxuIgorbXNnc3RyICIiCisiT3BjacOzbnM6XG4iCisiICAtLXNob3dmb3JtYXQ9PGZvcm1hdG8+ICAgICBFbXByZWdhIHVuIGZvcm1hdG8gYWx0ZXJuYXRpdm8gcGFyYSAtLXNob3cuXG4iCisiICAtRCAgICAgICAgICAgICAgICAgICAgICAgICBBY3RpdmEgYSBzYcOtZGEgZGUgZGVwdXJhY2nDs24uXG4iCisiICAtLW9sZCwgLS1uZXcgICAgICAgICAgICAgICBFc2NvbGxlIG8gZm9ybWF0byBkbyBhcnF1aXZvLlxuIgorIiAgLS1ub2NoZWNrICAgICAgICAgICAgICAgICAgU3VwcmltZSBhIGNvbXByb2JhY2nDs24gZG8gZmljaGVpcm8gZGUgY29udHJvbFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNvbnN0csO6ZSB1biBwYXF1ZXRlIGluY29ycmVjdG8pLlxuIgorIiAgLXojICAgICAgICAgICAgICAgICAgICAgICAgRXN0YWJsZWNlIG8gbml2ZWwgZGUgY29tcHJlc2nDs24gZG8gcGFxdWV0ZS5cbiIKKyIgIC1aPHRpcG8+ICAgICAgICAgICAgICAgICAgIEVzdGFibGVjZSBvIHRpcG8gZGUgY29tcHJlc2nDs24gZG8gcGFxdWV0ZS5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRtw610ZW5zZTogZ3ppcCwgYnppcDIsIGx6bWEsIG5vbmUgKG5pbmfDum4pLlxuIgorIlxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTIxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJVc2UgYGRwa2cnIHRvIGluc3RhbGwgYW5kIHJlbW92ZSBwYWNrYWdlcyBmcm9tIHlvdXIgc3lzdGVtLCBvclxuIgorImBkc2VsZWN0JyBvciBgYXB0aXR1ZGUnIGZvciB1c2VyLWZyaWVuZGx5IHBhY2thZ2UgbWFuYWdlbWVudC4gIFBhY2thZ2VzXG4iCisidW5wYWNrZWQgdXNpbmcgYGRwa2ctZGViIC0tZXh0cmFjdCcgd2lsbCBiZSBpbmNvcnJlY3RseSBpbnN0YWxsZWQgIVxuIgorbXNnc3RyICIiCisiXG4iCisiRW1wcmVndWUgXCJkcGtnXCIgcGFyYSBpbnN0YWxhciBlIGVsaW1pbmFyIHBhcXVldGVzIGRvIHNldSBzaXN0ZW1hLCBvdVxuIgorIlwiZHNlbGVjdFwiIG91IFwiYXB0aXR1ZGVcIiBwYXJhIHVuaGEgeGVzdGnDs24gZGUgcGFxdWV0ZXMgYW1pZ2FibGUgY28gIgorInVzdWFyaW8uXG4iCisiT3MgcGFxdWV0ZXMgcXVlIHNlIGRlc2NvbXByaW1hbiBjb24gXCJkcGtnLWRlYiAtLWV4dHJhY3RcIiBoYW5zZSBpbnN0YWxhciAiCisibWFsLlxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTMyCittc2dpZCAiIgorIlR5cGUgZHBrZy1kZWIgLS1oZWxwIGZvciBoZWxwIGFib3V0IG1hbmlwdWxhdGluZyAqLmRlYiBmaWxlcztcbiIKKyJUeXBlIGRwa2cgLS1oZWxwIGZvciBoZWxwIGFib3V0IGluc3RhbGxpbmcgYW5kIGRlaW5zdGFsbGluZyBwYWNrYWdlcy4iCittc2dzdHIgIiIKKyJFc2NyaWJhIGRwa2ctZGViIC0taGVscCBwYXJhIGF4dWRhIHNvYnJlIGEgbWFuaXB1bGFjacOzbiBkZSBmaWNoZWlyb3MgKi5kZWI7XG4iCisiRXNjcmliYSBkcGtnIC0taGVscCBwYXJhIGF4dWRhIHNvYnJlIGluc3RhbGFjacOzbiBlIGRlc2luc3RhbGFjacOzbiBkZSAiCisicGFxdWV0ZXMuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTQ4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGludGVnZXIgZm9yIC0lYzogJyUuMjUwcyciCittc2dzdHIgIm7Dum1lcm8gZW50ZWlybyBub24gdsOhbGlkbyBwYXJhIC0tJXM6IFwiJS4yNTBzXCIiCisKKyM6IGRwa2ctZGViL21haW4uYzoxNTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgY29tcHJlc3Npb24gbGV2ZWwgZm9yIC0lYzogJWxkJyIKK21zZ3N0ciAibsO6bWVybyBlbnRlaXJvIG5vbiB2w6FsaWRvIHBhcmEgLS0lczogXCIlLjI1MHNcIiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjE2MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGNvbXByZXNzaW9uIHR5cGUgYCVzJyEiCittc2dzdHIgInRpcG8gZGUgY29tcHJlc2nDs24gXCIlc1wiIGRlc2Nvw7FlY2lkbyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6NTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIGRpZ2l0IChjb2RlICVkKSBpbiAlcyIKK21zZ3N0ciAiIgorIm8gZmljaGVpcm8gXCIlLjI1MHNcIiBlc3TDoSBjb3Jyb21waWRvIC0gZMOteGl0byBpbmNvcnJlY3RvIChjw7NkaWdvICVkKSBlbiBcIiVzIgorIlwiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzo2MAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSAlLjI1MHMgbWlzc2luZyIKK21zZ3N0ciAibyBmaWNoZWlybyBcIiUuMjUwc1wiIGVzdMOhIGNvcnJvbXBpZG8gLSBmYWxsYSBcIiUuMjUwc1wiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzo2MworIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBtaXNzaW5nIG5ld2xpbmUgYWZ0ZXIgJS4yNTBzIgorbXNnc3RyICIiCisibyBmaWNoZWlybyBcIiUuMjUwc1wiIGVzdMOhIGNvcnJvbXBpZG8gLSBmYWxsYSB1biByZXRvcm5vIGRlIGNhcnJvIHRyYXMgIgorIlwiJS4yNTBzXCIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjg5IGRwa2ctc3BsaXQvbWFpbi5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciByZWFkaW5nICUuMjUwcyIKK21zZ3N0ciAiZXJybyBhbyBsZXIgJS4yNTBzIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIG1hZ2ljIGF0IGVuZCBvZiBmaXJzdCBoZWFkZXIiCittc2dzdHIgIiIKKyJvIGZpY2hlaXJvIFwiJS4yNTBzXCIgZXN0w6EgY29ycm9tcGlkbyAtIG7Dum1lcm8gbcOheGljbyBpbmNvcnJlY3RvIG5hIGZpbiBkYSAiCisicHJpbWVpcmEgY2FiZWNlaXJhIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIHBhZGRpbmcgY2hhcmFjdGVyIChjb2RlICVkKSIKK21zZ3N0ciAiIgorIm8gZmljaGVpcm8gXCIlLjI1MHNcIiBlc3TDoSBjb3Jyb21waWRvIC0gY2Fyw6FjdGVyIGRlIHJlY2hlbyBpbmNvcnJlY3RvICIKKyIoY8OzZGlnbyAlZCkiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjExNworIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBudWxscyBpbiBpbmZvIHNlY3Rpb24iCittc2dzdHIgIiIKKyJvIGZpY2hlaXJvIFwiJS4yNTBzXCIgZXN0w6EgY29ycm9tcGlkbyAtIGhhaSBjYXJhY3RlcmVzIG51bG9zIG5hIHNlY2Npw7NuIGRlICIKKyJpbmZvcm1hY2nDs24iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyMgorIywgZnV6enkKK21zZ2lkICJmb3JtYXQgdmVyc2lvbiBudW1iZXIiCittc2dzdHIgIm7Dum1lcm8gZGUgdmVyc2nDs24iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGZvcm1hdCB2ZXJzaW9uIGAlLjI1MHMnIC0geW91IG5lZWQgYSBuZXdlciBkcGtnLXNwbGl0IgorbXNnc3RyICIiCisibyBmaWNoZWlybyBcIiUuMjUwc1wiIHRlbiB1biBmb3JtYXRvIGRlIHZlcnNpw7NuIFwiJS4yNTBzXCIgLSBwcmVjaXNhIGR1biAiCisiZHBrZy1zcGxpdCBtw6FpcyBtb2Rlcm5vIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMjcKK21zZ2lkICJwYWNrYWdlIG5hbWUiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTI4CisjLCBmdXp6eQorbXNnaWQgInBhY2thZ2UgdmVyc2lvbiBudW1iZXIiCittc2dzdHIgIm7Dum1lcm8gZGUgdmVyc2nDs24iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyOQorbXNnaWQgInBhY2thZ2UgZmlsZSBNRDUgY2hlY2tzdW0iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTMyCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBNRDUgY2hlY2tzdW0gYCUuMjUwcyciCittc2dzdHIgIm8gZmljaGVpcm8gXCIlLjI1MHNcIiBlc3TDoSBjb3Jyb21waWRvIC0gc3VtYSBNRDUgXCIlLjI1MHNcIiBpbmNvcnJlY3RhIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMzQgZHBrZy1zcGxpdC9pbmZvLmM6MTM1Cittc2dpZCAiYXJjaGl2ZSB0b3RhbCBzaXplIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEzNiBkcGtnLXNwbGl0L2luZm8uYzoxMzcKK21zZ2lkICJhcmNoaXZlIHBhcnQgb2Zmc2V0IgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEzOQorIywgZnV6enkKK21zZ2lkICJhcmNoaXZlIHBhcnQgbnVtYmVycyIKK21zZ3N0ciAibsO6bWVybyBkZSB2ZXJzacOzbiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTQyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBubyBzbGFzaCBiZXR3ZWVuIHBhcnQgbnVtYmVycyIKK21zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBubyBzbGFzaCBiZXR3ZWVuIGFyY2hpdmUgcGFydCBudW1iZXJzIgorbXNnc3RyICIiCisibyBmaWNoZWlybyBcIiUuMjUwc1wiIGVzdMOhIGNvcnJvbXBpZG8gLSBub24gaGFpIHVuaGEgYmFycmEgZW50cmUgb3MgbsO6bWVyb3MgIgorImRlIHBhcnRlIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDUKK21zZ2lkICJudW1iZXIgb2YgYXJjaGl2ZSBwYXJ0cyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBudW1iZXIgb2YgYXJjaGl2ZSBwYXJ0cyIKK21zZ3N0ciAibyBmaWNoZWlybyBcIiUuMjUwc1wiIGVzdMOhIGNvcnJvbXBpZG8gLSBuw7ptZXJvIGRlIHBhcnRlIGluY29ycmVjdG8iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE0OQorIywgZnV6enkKK21zZ2lkICJhcmNoaXZlIHBhcnRzIG51bWJlciIKK21zZ3N0ciAibsO6bWVybyBkZSB2ZXJzacOzbiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTUxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgcGFydCBudW1iZXIiCittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIGFyY2hpdmUgcGFydCBudW1iZXIiCittc2dzdHIgIm8gZmljaGVpcm8gXCIlLjI1MHNcIiBlc3TDoSBjb3Jyb21waWRvIC0gbsO6bWVybyBkZSBwYXJ0ZSBpbmNvcnJlY3RvIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNTcKK21zZ2lkICJwYWNrYWdlIGFyY2hpdGVjdHVyZSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIG1hZ2ljIGF0IGVuZCBvZiBzZWNvbmQgaGVhZGVyIgorbXNnc3RyICIiCisibyBmaWNoZWlybyBcIiUuMjUwc1wiIGVzdMOhIGNvcnJvbXBpZG8gLSBuw7ptZXJvIG3DoXhpYyBpbmNvcnJlY3RvIG5hIGZpbiBkYSAiCisic2VndW5kYSBjYWJlY2VpcmEiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE2OAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBzZWNvbmQgbWVtYmVyIGlzIG5vdCBkYXRhIG1lbWJlciIKK21zZ3N0ciAiIgorIm8gZmljaGVpcm8gXCIlLjI1MHNcIiBlc3TDoSBjb3Jyb21waWRvIC0gbyBzZWd1bmRvIG1lbWJybyBub24gw6kgdW4gbWVtYnJvIGRlICIKKyJkYXRvcyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTc0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIHdyb25nIG51bWJlciBvZiBwYXJ0cyBmb3IgcXVvdGVkIHNpemVzIgorbXNnc3RyICIiCisibyBmaWNoZWlybyBcIiUuMjUwc1wiIGVzdMOhIGNvcnJvbXBpZG8gLSBuw7ptZXJvIGRlIHBhcnRlcyBpbmNvcnJlY3RvIHBhcmEgb3MgIgorInRhbWHDsW9zIGNpdGFkb3MiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE3OAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBzaXplIGlzIHdyb25nIGZvciBxdW90ZWQgcGFydCBudW1iZXIiCittc2dzdHIgIiIKKyJvIGZpY2hlaXJvIFwiJS4yNTBzXCIgZXN0w6EgY29ycm9tcGlkbyAtIG8gdGFtYcOxbyDDqSBpbmNvcnJlY3RvIHBhcmEgbyBuw7ptZXJvICIKKyJkZSBwYXJ0ZSBjaXRhZG8iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE4NAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZnN0YXQgcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJub24gc2UgYXRvcG91IG8gZmljaGVpcm8gZGUgcGFydGVzIFwiJS4yNTBzXCIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE4OQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSB0b28gc2hvcnQiCittc2dzdHIgIm8gZmljaGVpcm8gXCIlLjI1MHNcIiBlc3TDoSBjb3Jyb21waWRvIC0gY3VydG8gZGUgbcOhaXMiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjIwMiBkcGtnLXNwbGl0L2luZm8uYzoyNDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IG9wZW4gYXJjaGl2ZSBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5vbiBzZSBwb2RlIGFicmlyIG8gZmljaGVpcm8gZGUgcGFydGVzIGRvIGFycXVpdm8gXCIlLjI1MHNcIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjA0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgbm90IGFuIGFyY2hpdmUgcGFydCIKK21zZ3N0ciAibyBmaWNoZWlybyBcIiUuMjUwc1wiIG5vbiDDqSB1bmhhIHBhcnRlIGRvIGFycXVpdm8iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjIwOQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiVzOlxuIgorI3wgIiAgICBQYXJ0IGZvcm1hdCB2ZXJzaW9uOiAgICAgICAgICAgICVzXG4iCisjfCAiICAgIFBhcnQgb2YgcGFja2FnZTogICAgICAgICAgICAgICAgJXNcbiIKKyN8ICIgICAgICAgIC4uLiB2ZXJzaW9uOiAgICAgICAgICAgICAgICAlc1xuIgorI3wgIiAgICAgICAgLi4uIE1ENSBjaGVja3N1bTogICAgICAgICAgICVzXG4iCisjfCAiICAgICAgICAuLi4gbGVuZ3RoOiAgICAgICAgICAgICAgICAgJWx1IGJ5dGVzXG4iCisjfCAiICAgICAgICAuLi4gc3BsaXQgZXZlcnk6ICAgICAgICAgICAgJWx1IGJ5dGVzXG4iCisjfCAiICAgIFBhcnQgbnVtYmVyOiAgICAgICAgICAgICAgICAgICAgJWQvJWRcbiIKKyN8ICIgICAgUGFydCBsZW5ndGg6ICAgICAgICAgICAgICAgICAgICAlemkgYnl0ZXNcbiIKKyN8ICIgICAgUGFydCBvZmZzZXQ6ICAgICAgICAgICAgICAgICAgICAlbHUgYnl0ZXNcbiIKKyN8ICIgICAgUGFydCBmaWxlIHNpemUgKHVzZWQgcG9ydGlvbik6ICAlbHUgYnl0ZXNcbiIKKyN8ICJcbiIKK21zZ2lkICIiCisiJXM6XG4iCisiICAgIFBhcnQgZm9ybWF0IHZlcnNpb246ICAgICAgICAgICAgJXNcbiIKKyIgICAgUGFydCBvZiBwYWNrYWdlOiAgICAgICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIHZlcnNpb246ICAgICAgICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gYXJjaGl0ZWN0dXJlOiAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiBNRDUgY2hlY2tzdW06ICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIGxlbmd0aDogICAgICAgICAgICAgICAgICVqZCBieXRlc1xuIgorIiAgICAgICAgLi4uIHNwbGl0IGV2ZXJ5OiAgICAgICAgICAgICVqZCBieXRlc1xuIgorIiAgICBQYXJ0IG51bWJlcjogICAgICAgICAgICAgICAgICAgICVkLyVkXG4iCisiICAgIFBhcnQgbGVuZ3RoOiAgICAgICAgICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgIFBhcnQgb2Zmc2V0OiAgICAgICAgICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgIFBhcnQgZmlsZSBzaXplICh1c2VkIHBvcnRpb24pOiAgJWpkIGJ5dGVzXG4iCisiXG4iCittc2dzdHIgIiIKKyIlczpcbiIKKyIgICAgVmVyc2nDs24gZG8gZm9ybWF0byBkZSBwYXJ0ZXM6ICAgJXNcbiIKKyIgICAgUGFydGUgZG8gcGFxdWV0ZTogICAgICAgICAgICAgICAlc1xuIgorIiAgICAgICAgIC4uLiB2ZXJzacOzbjogICAgICAgICAgICAgICAlc1xuIgorIiAgICAgICAgIC4uLiBzdW1hIE1ENTogICAgICAgICAgICAgICVzXG4iCisiICAgICAgICAgLi4uIGxvbnhpdHVkZTogICAgICAgICAgICAgJWx1IGJ5dGVzXG4iCisiICAgICAgICAgLi4uIHBhcnRpZG8gY2FkYTogICAgICAgICAgJWx1IGJ5dGVzXG4iCisiICAgIE7Dum1lcm8gZGEgcGFydGU6ICAgICAgICAgICAgICAgICVkLyVkXG4iCisiICAgIExvbnhpdHVkZSBkYSBwYXJ0ZTogICAgICAgICAgICAgJXppIGJ5dGVzXG4iCisiICAgIERlc3ByYXphbWVudG8gZGEgcGFydGU6ICAgICAgICAgJWx1IGJ5dGVzXG4iCisiICAgIFRhbWHDsW8gZG8gZmljaGVpcm8gZGUgcGFydGVzOiAgICVsdSBieXRlc1xuIgorIlxuIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyMjUKKyMsIGZ1enp5CisjfCBtc2dpZCAiPHVua25vd24+IgorbXNnY3R4dCAiYXJjaGl0ZWN0dXJlIgorbXNnaWQgIjx1bmtub3duPiIKK21zZ3N0ciAiPGRlc2Nvw7FlY2lkbz4iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjI0NCBkcGtnLXNwbGl0L2pvaW4uYzoxMDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgcmVxdWlyZXMgb25lIG9yIG1vcmUgcGFydCBmaWxlIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS1pbmZvIHByZWNpc2EgZGUgdW4gb3UgbcOhaXMgYXJndW1lbnRvcyBkZSBmaWNoZWlyb3MgZGUgcGFydGVzIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJXMnIGlzIG5vdCBhbiBhcmNoaXZlIHBhcnRcbiIKK21zZ3N0ciAibyBmaWNoZWlybyBcIiVzXCIgbm9uIMOpIHVuaGEgcGFydGUgZG8gYXJxdWl2b1xuIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo0NAorIywgYy1mb3JtYXQKK21zZ2lkICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0OiAiCittc2dpZF9wbHVyYWwgIlB1dHRpbmcgcGFja2FnZSAlcyB0b2dldGhlciBmcm9tICVkIHBhcnRzOiAiCittc2dzdHJbMF0gIiIKK21zZ3N0clsxXSAiIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBvdXRwdXQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibm9uIHNlIHBvZGUgYWJyaXIgbyBmaWNoZWlybyBkZSBzYcOtZGEgXCIlLjI1MHNcIiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIChyZSlvcGVuIGlucHV0IHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibm9uIHNlIHBvZGUgKHZvbHZlcikgYWJyaXIgbyBmaWNoZWlybyBkZSBwYXJ0ZXMgZGUgZW50cmFkYSBcIiUuMjUwc1wiIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1OAorIywgZnV6enkKKyN8IG1zZ2lkICJTa2lwcGluZyBkZXNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dpZCAic2tpcHBpbmcgc3BsaXQgcGFja2FnZSBoZWFkZXIiCittc2dzdHIgIkEgb21pdGlyIG8gcGFxdWV0ZSBkZXNlbGVjY2lvbmFkbyAlcy5cbiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NTkKKyMsIGZ1enp5CisjfCBtc2dpZCAibWlzc2luZyBwYWNrYWdlIgorbXNnaWQgInNwbGl0IHBhY2thZ2UgcGFydCIKK21zZ3N0ciAiZmFsbGEgbyBub21lIGRvIHBhcXVldGUiCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjY5IGRwa2ctc3BsaXQvc3BsaXQuYzoyMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZG9uZVxuIgorbXNnc3RyICJyZW1hdGFkb1xuIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo4NQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlcyBgJS4yNTBzJyBhbmQgYCUuMjUwcycgYXJlIG5vdCBwYXJ0cyBvZiB0aGUgc2FtZSBmaWxlIgorbXNnc3RyICJvcyBmaWNoZWlyb3MgXCIlLjI1MHNcIiBlIFwiJS4yNTBzXCIgbm9uIHNvbiBwYXJ0ZXMgZG8gbWVzbW8gZmljaGVpcm8iCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjkwCisjLCBjLWZvcm1hdAorbXNnaWQgInRoZXJlIGFyZSBzZXZlcmFsIHZlcnNpb25zIG9mIHBhcnQgJWQgLSBhdCBsZWFzdCBgJS4yNTBzJyBhbmQgYCUuMjUwcyciCittc2dzdHIgImhhaSB2YXJpYXMgdmVyc2nDs25zIGRhIHBhcnRlICVkIC0gYWxvbWVub3MgXCIlLjI1MHNcIiBlIFwiJS4yNTBzXCIiCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjEyOAorIywgYy1mb3JtYXQKK21zZ2lkICJwYXJ0ICVkIGlzIG1pc3NpbmciCittc2dzdHIgImZhbGxhIGEgcGFydGUgJWQiCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjQ3CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiBgJXMnIHBhY2thZ2Ugc3BsaXQvam9pbiB0b29sOyB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICJGZXJyYW1lbnRhIHBhcmEgcGFydGlyL3VuaXIgcGFxdWV0ZXMgZGUgRGViaWFuIFwiJXNcIiwgdmVyc2nDs24gJXMuXG4iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIkNvcHlyaWdodCAoQykgMTk5NC0xOTk2IElhbiBKYWNrc29uLlxuIgorbXNnc3RyICJDb3B5cmlnaHQgKEMpIDE5OTQtMTk5NiBJYW4gSmFja3Nvbi5cbiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6NjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLXN8LS1zcGxpdCA8ZmlsZT4gWzxwcmVmaXg+XSAgICAgU3BsaXQgYW4gYXJjaGl2ZS5cbiIKKyIgIC1qfC0tam9pbiA8cGFydD4gPHBhcnQ+IC4uLiAgICAgIEpvaW4gcGFydHMgdG9nZXRoZXIuXG4iCisiICAtSXwtLWluZm8gPHBhcnQ+IC4uLiAgICAgICAgICAgICBEaXNwbGF5IGluZm8gYWJvdXQgYSBwYXJ0LlxuIgorIiAgLWF8LS1hdXRvIC1vIDxjb21wbGV0ZT4gPHBhcnQ+ICAgQXV0by1hY2N1bXVsYXRlIHBhcnRzLlxuIgorIiAgLWx8LS1saXN0cSAgICAgICAgICAgICAgICAgICAgICAgTGlzdCB1bm1hdGNoZWQgcGllY2VzLlxuIgorIiAgLWR8LS1kaXNjYXJkIFs8ZmlsZW5hbWU+IC4uLl0gICAgRGlzY2FyZCB1bm1hdGNoZWQgcGllY2VzLlxuIgorIlxuIgorbXNnc3RyICIiCisiT3JkZXM6XG4iCisiICAtc3wtLXNwbGl0IDxmaWNoZWlybz4gWzxwcmVmaXhvPl1cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBhcnRlIHVuIGFycXVpdm8uXG4iCisiICAtanwtLWpvaW4gPHBhcnRlPiA8cGFydGU+IC4uLiAgICBVbmUgdmFyaWFzIHBhcnRlcy5cbiIKKyIgIC1JfC0taW5mbyA8cGFydGU+IC4uLiAgICAgICAgICAgIEFtb3NhIGluZm9ybWFjacOzbiBkdW5oYSBwYXJ0ZS5cbiIKKyIgIC1hfC0tYXV0byAtbyA8Y29tcGxldG8+IDxwYXJ0ZT4gIEF1dG9hY3VtdWxhIHBhcnRlcy5cbiIKKyIgIC1sfC0tbGlzdHEgICAgICAgICAgICAgICAgICAgICAgIExpc3RhIGRlIGFuYWNvcyBwZXJkaWRvcy5cbiIKKyIgIC1kfC0tZGlzY2FyZCBbPGZpY2hlaXJvPl0gICAgICAgIE9taXRlIG9zIGFuYWNvcyBwZXJkaWRvcy5cbiIKKyJcbiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6ODIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJPcHRpb25zOlxuIgorI3wgIiAgLS1kZXBvdGRpciA8ZGlyZWN0b3J5PiAgICAgICAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMvJXMuXG4iCisjfCAiICAtU3wtLXBhcnRzaXplIDxzaXplPiAgICAgICAgICAgICBJbiBLaUIsIGZvciAtcyAoZGVmYXVsdCBpcyA0NTApLlxuIgorI3wgIiAgLW98LS1vdXRwdXQgPGZpbGU+ICAgICAgICAgICAgICAgRm9yIC1qIChkZWZhdWx0IGlzIDxwYWNrYWdlPi08dmVyc2lvbj4uIgorI3wgImRlYikuXG4iCisjfCAiICAtUXwtLW5wcXVpZXQgICAgICAgICAgICAgICAgICAgICBCZSBxdWlldCB3aGVuIC1hIGlzIG5vdCBhIHBhcnQuXG4iCisjfCAiICAtLW1zZG9zICAgICAgICAgICAgICAgICAgICAgICAgICBHZW5lcmF0ZSA4LjMgZmlsZW5hbWVzLlxuIgorI3wgIlxuIgorI3wgIkV4aXQgc3RhdHVzOiAwID0gT0s7ICAxID0gLWEgaXMgbm90IGEgcGFydDsgIDIgPSB0cm91YmxlIVxuIgorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1kZXBvdGRpciA8ZGlyZWN0b3J5PiAgICAgICAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMvJXMuXG4iCisiICAtU3wtLXBhcnRzaXplIDxzaXplPiAgICAgICAgICAgICBJbiBLaUIsIGZvciAtcyAoZGVmYXVsdCBpcyA0NTApLlxuIgorIiAgLW98LS1vdXRwdXQgPGZpbGU+ICAgICAgICAgICAgICAgRmlsZW5hbWUsIGZvciAtaiAoZGVmYXVsdCBpc1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGFja2FnZT5fPHZlcnNpb24+XzxhcmNoPi5kZWIpLlxuIgorIiAgLVF8LS1ucHF1aWV0ICAgICAgICAgICAgICAgICAgICAgQmUgcXVpZXQgd2hlbiAtYSBpcyBub3QgYSBwYXJ0LlxuIgorIiAgLS1tc2RvcyAgICAgICAgICAgICAgICAgICAgICAgICAgR2VuZXJhdGUgOC4zIGZpbGVuYW1lcy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIk9wY2nDs25zOlxuIgorIiAgLS1kZXBvdGRpciA8ZGlyZWN0b3Jpbz4gICAgICBFbXByZWdhIG8gPGRpcmVjdG9yaW8+IG5vIGNhbnRvIGRlICVzLyVzLlxuIgorIiAgLVN8LS1wYXJ0c2l6ZSA8dGFtYcOxbz4gICAgICAgRW4gS2liLCBwYXJhIC1zIChwb3IgZGVmZWN0byDDqSA0NTApLlxuIgorIiAgLW98LS1vdXRwdXQgPGZpY2hlaXJvPiAgICAgICBQYXJhIC1qIChwb3IgZGVmZWN0byDDqSA8cGFxdWV0ZT4tPHZlcnNpw7NuPi4iCisiZGViKS5cbiIKKyIgIC1RfC0tbnBxdWlldCAgICAgICAgICAgICAgICAgQ2FsYSBjYW5kbyAtYSBub24gw6kgdW5oYSBwYXJ0ZS5cbiIKKyIgIC0tbXNkb3MgICAgICAgICAgICAgICAgICAgICAgWGVyYSBub21lcyBkZSBmaWNoZWlybyA4LjMuXG4iCisiXG4iCisiRXN0YWRvIGRlIHNhw61kYTogMCA9IE9rOyAgMSA9IC1hIG5vbiDDqSB1bmhhIHBhcnRlOyAgMiA9IMKhcHJvYmxlbWFzIVxuIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo5MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiRXhpdCBzdGF0dXM6XG4iCisiICAwID0gb2tcbiIKKyIgIDEgPSB3aXRoIC0tYXV0bywgZmlsZSBpcyBub3QgYSBwYXJ0XG4iCisiICAyID0gdHJvdWJsZVxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjEwMworbXNnaWQgIlR5cGUgZHBrZy1zcGxpdCAtLWhlbHAgZm9yIGhlbHAuIgorbXNnc3RyICJFc2NyaWJhIGRwa2ctc3BsaXQgLS1oZWxwIHBhcmEgb2J0ZXIgYXh1ZGEuIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgZmlsZSBpbiAlLjI1MHMiCittc2dzdHIgImZpbiBkZSBmaWNoZWlybyBpbmVzcGVyYWRhIGVuICUuMjUwcyIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6MTI2Cittc2dpZCAicGFydCBzaXplIGlzIGZhciB0b28gbGFyZ2Ugb3IgaXMgbm90IHBvc2l0aXZlIgorbXNnc3RyICJvIHRhbWHDsW8gZGEgcGFydGUgw6kgZ3JhbmRlIGRlIG3DoWlzIG91IG5vbiDDqSBwb3NpdGl2byIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6MTMwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJwYXJ0IHNpemUgbXVzdCBiZSBhdCBsZWFzdCAlZCBLaUIgKHRvIGFsbG93IGZvciBoZWFkZXIpIgorbXNnc3RyICJvIHRhbWHDsW8gZGEgcGFydGUgZGViZSBzZXIgYWxvbWVub3MgJWRrIChwYXJhIHF1ZSBjYWliYSBhIGNhYmVjZWlyYSkiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzo5MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBkZXBvdCBkaXJlY3RvcnkgYCUuMjUwcyciCittc2dzdHIgIm5vbiBzZSBwb2RlIGxlciBvIGRpcmVjdG9yaW8gZGUgYXJtYWPDqW4gXCIlLjI1MHNcIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjEzNAorbXNnaWQgIi0tYXV0byByZXF1aXJlcyB0aGUgdXNlIG9mIHRoZSAtLW91dHB1dCBvcHRpb24iCittc2dzdHIgIi0tYXV0byBwcmVjaXNhIGRlIHF1ZSBzZSBlbXByZWd1ZSBhIG9wY2nDs24gLS1vdXRwdXQiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxMzYKK21zZ2lkICItLWF1dG8gcmVxdWlyZXMgZXhhY3RseSBvbmUgcGFydCBmaWxlIGFyZ3VtZW50IgorbXNnc3RyICItLWF1dG8gcHJlY2lzYSBkZSBleGFjdGFtZW50ZSB1biBhcmd1bWVudG8gZGUgZmljaGVpcm8gZGUgcGFydGVzIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTQwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibm9uIHNlIHBvZGUgbGVyIG8gZmljaGVpcm8gZGUgcGFydGVzIFwiJS4yNTBzXCIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxNDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiRmlsZSBgJS4yNTBzJyBpcyBub3QgcGFydCBvZiBhIG11bHRpcGFydCBhcmNoaXZlLlxuIgorbXNnc3RyICJPIGZpY2hlaXJvIFwiJS4yNTBzXCIgbm9uIMOpIHBhcnRlIGR1biBhcnF1aXZvIG11bHRpcGFydGVzLlxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTc5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW9wZW4gcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJub24gc2UgcG9kZSByZWFicmlyIG8gZmljaGVpcm8gZGUgcGFydGVzIFwiJS4yNTBzXCIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxODIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gbmV3IGRlcG90IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5vbiBzZSBwb2RlIGFicmlyIG8gbm92byBmaWNoZWlybyBkZSBhcm1hY8OpbiBcIiUuMjUwc1wiIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTg0Cittc2dpZCAiZXh0cmFjdGluZyBzcGxpdCBwYXJ0IgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbmFtZSBuZXcgZGVwb3QgZmlsZSBgJS4yNTBzJyB0byBgJS4yNTBzJyIKK21zZ3N0ciAiIgorIm5vbiBzZSBwb2RlIGNhbWJpYXIgbyBub21lIGRvIGZpY2hlaXJvIGRlIGFybWFjw6luIFwiJS4yNTBzXCIgYSBcIiUuMjUwc1wiIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTk2CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhcnQgJWQgb2YgcGFja2FnZSAlcyBmaWxlZCAoc3RpbGwgd2FudCAiCittc2dzdHIgIkFycXVpdm91c2UgYSBwYXJ0ZSAlZCBkbyBwYXF1ZXRlICVzIChhw61uZGEgcXVlZGFuICIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjIwMAorbXNnaWQgIiBhbmQgIgorbXNnc3RyICIgZSAiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSB1c2VkLXVwIGRlcG90IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5vbiBzZSBwb2RlIGJvcnJhciBvIGZpY2hlaXJvIGRlIGFybWFjw6luIGVtcHJlZ2FkbyBcIiUuMjUwc1wiIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjM1Cittc2dpZCAiSnVuayBmaWxlcyBsZWZ0IGFyb3VuZCBpbiB0aGUgZGVwb3QgZGlyZWN0b3J5OlxuIgorbXNnc3RyICJGaWNoZWlyb3MgZGUgbGl4byBxdWUgcXVlZGFuIG5vIGRpcmVjdG9yaW8gZGUgYXJtYWPDqW46XG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNDAgZHBrZy1zcGxpdC9xdWV1ZS5jOjI2OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBgJS4yNTBzJyIKK21zZ3N0ciAibm9uIHNlIGF0b3BhIFwiJS4yNTBzXCIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNDMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiAlcyAoJWx1IGJ5dGVzKVxuIgorbXNnaWQgIiAlcyAoJWpkIGJ5dGVzKVxuIgorbXNnc3RyICIgJXMgKCVsdSBieXRlcylcbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI0NQorIywgYy1mb3JtYXQKK21zZ2lkICIgJXMgKG5vdCBhIHBsYWluIGZpbGUpXG4iCittc2dzdHIgIiAlcyAobm9uIMOpIHVuIGZpY2hlaXJvIG5vcm1hbClcbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI1MAorbXNnaWQgIlBhY2thZ2VzIG5vdCB5ZXQgcmVhc3NlbWJsZWQ6XG4iCittc2dzdHIgIlBhcXVldGVzIHF1ZSBhw61uZGEgbm9uIHNlIHJlZW5zYW1ibGFyb246XG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIFBhY2thZ2UgJXM6IHBhcnQocykgIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFydCBmaWxlIGAlLjI1MHMnIGlzIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgIm8gZmljaGVpcm8gZGUgcGFydGVzIFwiJS4yNTBzXCIgbm9uIMOpIHVuIGZpY2hlaXJvIG5vcm1hbCIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI3OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiKHRvdGFsICVsdSBieXRlcylcbiIKK21zZ2lkICIodG90YWwgJWpkIGJ5dGVzKVxuIgorbXNnc3RyICIodG90YWwgJWx1IGJ5dGVzKVxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MzA0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkaXNjYXJkIGAlLjI1MHMnIgorbXNnc3RyICJub24gc2UgcG9kZSBkZXNjYXJ0YXIgXCIlLjI1MHNcIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjMwNQorIywgYy1mb3JtYXQKK21zZ2lkICJEZWxldGVkICVzLlxuIgorbXNnc3RyICJCb3Jyb3VzZSAlcy5cbiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjcwIGRwa2ctc3BsaXQvc3BsaXQuYzo3NiBkcGtnLXNwbGl0L3NwbGl0LmM6ODEKK21zZ2lkICJwYWNrYWdlIGZpZWxkIHZhbHVlIGV4dHJhY3Rpb24iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjEzMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBzb3VyY2UgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibm9uIHNlIHBvZGUgYWJyaXIgbyBmaWNoZWlybyBvcml4ZSBcIiUuMjUwc1wiIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTMzCittc2dpZCAidW5hYmxlIHRvIGZzdGF0IHNvdXJjZSBmaWxlIgorbXNnc3RyICJub24gc2UgYXRvcGEgbyBmaWNoZWlybyBkZSBvcml4ZSIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjEzNQorIywgYy1mb3JtYXQKK21zZ2lkICJzb3VyY2UgZmlsZSBgJS4yNTBzJyBub3QgYSBwbGFpbiBmaWxlIgorbXNnc3RyICJvIGZpY2hlaXJvIGRlIG9yaXhlIFwiJS4yNTBzXCIgbm9uIMOpIHVuIGZpY2hlaXJvIG5vcm1hbCIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjE1MworIywgYy1mb3JtYXQKK21zZ2lkICJTcGxpdHRpbmcgcGFja2FnZSAlcyBpbnRvICVkIHBhcnQ6ICIKK21zZ2lkX3BsdXJhbCAiU3BsaXR0aW5nIHBhY2thZ2UgJXMgaW50byAlZCBwYXJ0czogIgorbXNnc3RyWzBdICIiCittc2dzdHJbMV0gIiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjE5MworbXNnaWQgIiIKKyJIZWFkZXIgaXMgdG9vIGxvbmcsIG1ha2luZyBwYXJ0IHRvbyBsb25nLiBZb3VyIHBhY2thZ2UgbmFtZSBvciB2ZXJzaW9uXG4iCisibnVtYmVycyBtdXN0IGJlIGV4dHJhb3JkaW5hcmlseSBsb25nLCBvciBzb21ldGhpbmcuIEdpdmluZyB1cC5cbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MjQ5Cittc2dpZCAiLS1zcGxpdCBuZWVkcyBhIHNvdXJjZSBmaWxlbmFtZSBhcmd1bWVudCIKK21zZ3N0ciAiLS1zcGxpdCBwcmVjaXNhIGR1biBhcmd1bWVudG8gZGUgbm9tZSBkZSBmaWNoZWlybyBvcml4ZSIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjI1MgorbXNnaWQgIi0tc3BsaXQgdGFrZXMgYXQgbW9zdCBhIHNvdXJjZSBmaWxlbmFtZSBhbmQgZGVzdGluYXRpb24gcHJlZml4IgorbXNnc3RyICItLXNwbGl0IHRvbWEgY29tbyBtb2l0byB1biBmaWNoZWlybyBvcml4ZSBlIHVuIHByZWZpeG8gZGUgZGVzdGlubyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjg0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiXG4iCisjfCAiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorI3wgIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uIgorbXNnaWQgIiIKKyJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLTIwMDIgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDktMjAxMCBSYXBoYWVsIEhlcnR6b2cuXG4iCittc2dzdHIgIiIKKyJcbiIKKyJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMDEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gPGNvbW1hbmQ+XG4iCisjfCAiXG4iCisjfCAiQ29tbWFuZHM6XG4iCisjfCAiICAtLWluc3RhbGwgPGxpbms+IDxuYW1lPiA8cGF0aD4gPHByaW9yaXR5PlxuIgorI3wgIiAgICBbLS1zbGF2ZSA8bGluaz4gPG5hbWU+IDxwYXRoPl0gLi4uXG4iCisjfCAiICAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkIGEgZ3JvdXAgb2YgYWx0ZXJuYXRpdmVzIHRvIHRoZSBzeXN0ZW0uXG4iCisjfCAiICAtLXJlbW92ZSA8bmFtZT4gPHBhdGg+ICAgcmVtb3ZlIDxwYXRoPiBmcm9tIHRoZSA8bmFtZT4gZ3JvdXAgIgorI3wgImFsdGVybmF0aXZlLlxuIgorI3wgIiAgLS1yZW1vdmUtYWxsIDxuYW1lPiAgICAgIHJlbW92ZSA8bmFtZT4gZ3JvdXAgZnJvbSB0aGUgYWx0ZXJuYXRpdmVzICIKKyN8ICJzeXN0ZW0uXG4iCisjfCAiICAtLWF1dG8gPG5hbWU+ICAgICAgICAgICAgc3dpdGNoIHRoZSBtYXN0ZXIgbGluayA8bmFtZT4gdG8gYXV0b21hdGljICIKKyN8ICJtb2RlLlxuIgorI3wgIiAgLS1kaXNwbGF5IDxuYW1lPiAgICAgICAgIGRpc3BsYXkgaW5mb3JtYXRpb24gYWJvdXQgdGhlIDxuYW1lPiBncm91cC5cbiIKKyN8ICIgIC0tbGlzdCA8bmFtZT4gICAgICAgICAgICBkaXNwbGF5IGFsbCB0YXJnZXRzIG9mIHRoZSA8bmFtZT4gZ3JvdXAuXG4iCisjfCAiICAtLWNvbmZpZyA8bmFtZT4gICAgICAgICAgc2hvdyBhbHRlcm5hdGl2ZXMgZm9yIHRoZSA8bmFtZT4gZ3JvdXAgYW5kIGFzayAiCisjfCAidGhlXG4iCisjfCAiICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlciB0byBzZWxlY3Qgd2hpY2ggb25lIHRvIHVzZS5cbiIKKyN8ICIgIC0tc2V0IDxuYW1lPiA8cGF0aD4gICAgICBzZXQgPHBhdGg+IGFzIGFsdGVybmF0aXZlIGZvciA8bmFtZT4uXG4iCisjfCAiICAtLWFsbCAgICAgICAgICAgICAgICAgICAgY2FsbCAtLWNvbmZpZyBvbiBhbGwgYWx0ZXJuYXRpdmVzLlxuIgorI3wgIlxuIgorI3wgIjxsaW5rPiBpcyB0aGUgc3ltbGluayBwb2ludGluZyB0byAlcy88bmFtZT4uXG4iCisjfCAiICAoZS5nLiAvdXNyL2Jpbi9wYWdlcilcbiIKKyN8ICI8bmFtZT4gaXMgdGhlIG1hc3RlciBuYW1lIGZvciB0aGlzIGxpbmsgZ3JvdXAuXG4iCisjfCAiICAoZS5nLiBwYWdlcilcbiIKKyN8ICI8cGF0aD4gaXMgdGhlIGxvY2F0aW9uIG9mIG9uZSBvZiB0aGUgYWx0ZXJuYXRpdmUgdGFyZ2V0IGZpbGVzLlxuIgorI3wgIiAgKGUuZy4gL3Vzci9iaW4vbGVzcylcbiIKKyN8ICI8cHJpb3JpdHk+IGlzIGFuIGludGVnZXI7IG9wdGlvbnMgd2l0aCBoaWdoZXIgbnVtYmVycyBoYXZlIGhpZ2hlciAiCisjfCAicHJpb3JpdHkgaW5cbiIKKyN8ICIgIGF1dG9tYXRpYyBtb2RlLlxuIgorI3wgIlxuIgorI3wgIk9wdGlvbnM6XG4iCisjfCAiICAtLWFsdGRpciA8ZGlyZWN0b3J5PiAgICAgY2hhbmdlIHRoZSBhbHRlcm5hdGl2ZXMgZGlyZWN0b3J5LlxuIgorI3wgIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIGNoYW5nZSB0aGUgYWRtaW5pc3RyYXRpdmUgZGlyZWN0b3J5LlxuIgorI3wgIiAgLS12ZXJib3NlICAgICAgICAgICAgICAgIHZlcmJvc2Ugb3BlcmF0aW9uLCBtb3JlIG91dHB1dC5cbiIKKyN8ICIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBxdWlldCBvcGVyYXRpb24sIG1pbmltYWwgb3V0cHV0LlxuIgorI3wgIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisjfCAiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtLWluc3RhbGwgPGxpbms+IDxuYW1lPiA8cGF0aD4gPHByaW9yaXR5PlxuIgorIiAgICBbLS1zbGF2ZSA8bGluaz4gPG5hbWU+IDxwYXRoPl0gLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkIGEgZ3JvdXAgb2YgYWx0ZXJuYXRpdmVzIHRvIHRoZSBzeXN0ZW0uXG4iCisiICAtLXJlbW92ZSA8bmFtZT4gPHBhdGg+ICAgcmVtb3ZlIDxwYXRoPiBmcm9tIHRoZSA8bmFtZT4gZ3JvdXAgYWx0ZXJuYXRpdmUuXG4iCisiICAtLXJlbW92ZS1hbGwgPG5hbWU+ICAgICAgcmVtb3ZlIDxuYW1lPiBncm91cCBmcm9tIHRoZSBhbHRlcm5hdGl2ZXMgIgorInN5c3RlbS5cbiIKKyIgIC0tYXV0byA8bmFtZT4gICAgICAgICAgICBzd2l0Y2ggdGhlIG1hc3RlciBsaW5rIDxuYW1lPiB0byBhdXRvbWF0aWMgbW9kZS5cbiIKKyIgIC0tZGlzcGxheSA8bmFtZT4gICAgICAgICBkaXNwbGF5IGluZm9ybWF0aW9uIGFib3V0IHRoZSA8bmFtZT4gZ3JvdXAuXG4iCisiICAtLXF1ZXJ5IDxuYW1lPiAgICAgICAgICAgbWFjaGluZSBwYXJzZWFibGUgdmVyc2lvbiBvZiAtLWRpc3BsYXkgPG5hbWU+LlxuIgorIiAgLS1saXN0IDxuYW1lPiAgICAgICAgICAgIGRpc3BsYXkgYWxsIHRhcmdldHMgb2YgdGhlIDxuYW1lPiBncm91cC5cbiIKKyIgIC0tZ2V0LXNlbGVjdGlvbnMgICAgICAgICBsaXN0IG1hc3RlciBhbHRlcm5hdGl2ZSBuYW1lcyBhbmQgdGhlaXIgc3RhdHVzLlxuIgorIiAgLS1zZXQtc2VsZWN0aW9ucyAgICAgICAgIHJlYWQgYWx0ZXJuYXRpdmUgc3RhdHVzIGZyb20gc3RhbmRhcmQgaW5wdXQuXG4iCisiICAtLWNvbmZpZyA8bmFtZT4gICAgICAgICAgc2hvdyBhbHRlcm5hdGl2ZXMgZm9yIHRoZSA8bmFtZT4gZ3JvdXAgYW5kIGFzayAiCisidGhlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlciB0byBzZWxlY3Qgd2hpY2ggb25lIHRvIHVzZS5cbiIKKyIgIC0tc2V0IDxuYW1lPiA8cGF0aD4gICAgICBzZXQgPHBhdGg+IGFzIGFsdGVybmF0aXZlIGZvciA8bmFtZT4uXG4iCisiICAtLWFsbCAgICAgICAgICAgICAgICAgICAgY2FsbCAtLWNvbmZpZyBvbiBhbGwgYWx0ZXJuYXRpdmVzLlxuIgorIlxuIgorbXNnc3RyICIiCisiRW1wcmVnbzogJXMgWzxvcGNpw7NuPiAuLi5dIDxvcmRlPlxuIgorIlxuIgorIk9yZGVzOlxuIgorIiAgLS1pbnN0YWxsIDxsaWdhesOzbj4gPG5vbWU+IDxydXRhPiA8cHJpb3JpZGFkZT5cbiIKKyIgICAgWy0tc2xhdmUgPGxpZ2F6w7NuPiA8bm9tZT4gPHJ1dGE+XSAuLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBlbmdhZGUgdW4gZ3J1cG8gZGUgYWx0ZXJuYXRpdmFzIGFvIHNpc3RlbWEuXG4iCisiICAtLXJlbW92ZSA8bm9tZT4gPHJ1dGE+ICAgZWxpbWluYSA8cnV0YT4gZG8gZ3J1cG8gZGUgYWx0ZXJuYXRpdmFzIDxub21lPi5cbiIKKyIgIC0tcmVtb3ZlLWFsbCA8bm9tZT4gICAgICBlbGltaW5hIG8gZ3J1cG8gPG5vbWU+IGRvIHNpc3RlbWEgZGUgIgorImFsdGVybmF0aXZhcy5cbiIKKyIgIC0tYXV0byA8bm9tZT4gICAgICAgICAgICBjYW1iaWEgYSBsaWdhesOzbiBtZXN0cmEgPG5vbWU+IGFvIG1vZG8gIgorImF1dG9tw6F0aWNvLlxuIgorIiAgLS1kaXNwbGF5IDxub21lPiAgICAgICAgIGFtb3NhIGluZm9ybWFjacOzbiBzb2JyZSBvIGdydXBvIDxub21lPi5cbiIKKyIgIC0tbGlzdCA8bm9tZT4gICAgICAgICAgICBhbW9zYSB0w7Nkb2xvcyBkZXN0aW5vcyBkbyBncnVwbyA8bm9tZT4uXG4iCisiICAtLWNvbmZpZyA8bm9tZT4gICAgICAgICAgYW1vc2EgYXMgYWx0ZXJuYXRpdmFzIGRvIGdydXBvIDxub21lPiBlIHByZWd1bnRhXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgYW8gdXN1YXJpbyBjYWwgZW1wcmVnYXIuXG4iCisiICAtLXNldCA8bm9tZT4gPHJ1dGE+ICAgICAgZXN0YWJsZWNlIDxydXRhPiBjb21hIHVuaGEgYWx0ZXJuYXRpdmEgZGUgIgorIjxub21lPi5cbiIKKyIgIC0tYWxsICAgICAgICAgICAgICAgICAgICBleGVjdXRhIC0tY29uZmlnIGVuIHTDs2RhbGFzIGFsdGVybmF0aXZhcy5cbiIKKyJcbiIKKyI8bGlnYXrDs24+IMOpIGEgbGlnYXrDs24gcXVlIGFwdW50YSBhICVzLzxub21lPi5cbiIKKyIgIChwLiBleC4gL3Vzci9iaW4vcGFnZXIpXG4iCisiPG5vbWU+IMOpIG8gbm9tZSBtZXN0cmUgZGVzdGUgZ3J1cG8gZGUgbGlnYXrDs25zLlxuIgorIiAgKHAuIGV4LiBwYWdlcilcbiIKKyI8cnV0YT4gw6kgYSB1YmljYWNpw7NuIGR1biBkb3MgZmljaGVpcm9zIGRlc3Rpbm8gYWx0ZXJuYXRpdm9zLlxuIgorIiAgKHAuIGV4LiAvdXNyL2Jpbi9sZXNzKVxuIgorIjxwcmlvcmlkYWRlPiDDqSB1biBuw7ptZXJvIGVudGVpcm87IGFzIG9wY2nDs25zIGNvbiBuw7ptZXJvcyBtYWlvcmVzIHRlw7FlbiBtw6Fpc1xuIgorIiAgcHJpb3JpZGFkZSBubyBtb2RvIGF1dG9tw6F0aWNvLlxuIgorIlxuIgorIk9wY2nDs25zOlxuIgorIiAgLS1hbHRkaXIgPGRpcmVjdG9yaW8+ICAgIGNhbWJpYSBvIGRpcmVjdG9yaW8gZGUgYWx0ZXJuYXRpdmFzLlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3Jpbz4gIGNhbWJpYSBvIGRpcmVjdG9yaW8gYWRtaW5pc3RyYXRpdm8uXG4iCisiICAtLXZlcmJvc2UgICAgICAgICAgICAgICAgb3BlcmFjacOzbiBjb24gbcOhaXMgc2HDrWRhLlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIG9wZXJhY2nDs24gc2lsZW5jaW9zYSwgc2HDrWRhIG3DrW5pbWEuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgYW1vc2EgZXN0YSBtZW5zYXhlIGRlIGF4dWRhLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIGFtb3NhIGEgdmVyc2nDs24uXG4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIjxsaW5rPiBpcyB0aGUgc3ltbGluayBwb2ludGluZyB0byAlcy88bmFtZT4uXG4iCisiICAoZS5nLiAvdXNyL2Jpbi9wYWdlcilcbiIKKyI8bmFtZT4gaXMgdGhlIG1hc3RlciBuYW1lIGZvciB0aGlzIGxpbmsgZ3JvdXAuXG4iCisiICAoZS5nLiBwYWdlcilcbiIKKyI8cGF0aD4gaXMgdGhlIGxvY2F0aW9uIG9mIG9uZSBvZiB0aGUgYWx0ZXJuYXRpdmUgdGFyZ2V0IGZpbGVzLlxuIgorIiAgKGUuZy4gL3Vzci9iaW4vbGVzcylcbiIKKyI8cHJpb3JpdHk+IGlzIGFuIGludGVnZXI7IG9wdGlvbnMgd2l0aCBoaWdoZXIgbnVtYmVycyBoYXZlIGhpZ2hlciBwcmlvcml0eSAiCisiaW5cbiIKKyIgIGF1dG9tYXRpYyBtb2RlLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hbHRkaXIgPGRpcmVjdG9yeT4gICAgIGNoYW5nZSB0aGUgYWx0ZXJuYXRpdmVzIGRpcmVjdG9yeS5cbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICBjaGFuZ2UgdGhlIGFkbWluaXN0cmF0aXZlIGRpcmVjdG9yeS5cbiIKKyIgIC0tbG9nIDxmaWxlPiAgICAgICAgICAgICBjaGFuZ2UgdGhlIGxvZyBmaWxlLlxuIgorIiAgLS1mb3JjZSAgICAgICAgICAgICAgICAgIGFsbG93IHJlcGxhY2luZyBmaWxlcyB3aXRoIGFsdGVybmF0aXZlIGxpbmtzLlxuIgorIiAgLS1za2lwLWF1dG8gICAgICAgICAgICAgIHNraXAgcHJvbXB0IGZvciBhbHRlcm5hdGl2ZXMgY29ycmVjdGx5ICIKKyJjb25maWd1cmVkXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gYXV0b21hdGljIG1vZGUgKHJlbGV2YW50IGZvciAtLWNvbmZpZyBvbmx5KVxuIgorIiAgLS12ZXJib3NlICAgICAgICAgICAgICAgIHZlcmJvc2Ugb3BlcmF0aW9uLCBtb3JlIG91dHB1dC5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBxdWlldCBvcGVyYXRpb24sIG1pbmltYWwgb3V0cHV0LlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIgorIkVtcHJlZ286ICVzIFs8b3BjacOzbj4gLi4uXSA8b3JkZT5cbiIKKyJcbiIKKyJPcmRlczpcbiIKKyIgIC0tYWRkIDxwcm9waWV0YXJpbz4gPGdydXBvPiA8bW9kbz4gPGZpY2hlaXJvPlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGVuZ2FkZSB1bmhhIG5vdmEgZW50cmFkYSBuYSBiYXNlIGRlIGRhdG9zLlxuIgorIiAgLS1yZW1vdmUgPGZpY2hlaXJvPiAgICAgIGVsaW1pbmEgbyBmaWNoZWlybyBkYSBiYXNlIGRlIGRhdG9zLlxuIgorIiAgLS1saXN0IFs8cGF0csOzbj5dICAgICAgICBhbW9zYSBhcyBzdWJzdGl0dWNpw7NucyBhY3R1YWlzIGRhIGJhc2UgZGUgZGF0b3MuXG4iCisiXG4iCisiT3BjacOzbnM6XG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3RvcmlvPiAgZXN0YWJsZWNlIG8gZGlyZWN0b3JpbyBkbyBmaWNoZWlybyBzdGF0b3ZlcnJpZGUuXG4iCisiICAtLXVwZGF0ZSAgICAgICAgICAgICAgICAgYWN0dWFsaXphIGRlIGlubWVkaWF0byBvcyBwZXJtaXNvcyBkb3MgIgorImZpY2hlaXJvcy5cbiIKKyIgIC0tZm9yY2UgICAgICAgICAgICAgICAgICBmb3J6YSB1bmhhIGFjY2nDs24gaW5jbHVzbyBzZSBhbGdvIG5vbiBlc3TDoSBiZW4uXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgb3BlcmFjacOzbiBzaWxlbmNpb3NhLCBzYcOtZGEgbcOtbmltYS5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICBhbW9zYSBlc3RhIG1lbnNheGUgZGUgYXh1ZGEuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgYW1vc2EgYSB2ZXJzacOzbi5cbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTYzCittc2dpZCAiZXJyb3IiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE5MworIywgZnV6enkKK21zZ2lkICJ3YXJuaW5nIgorbXNnc3RyICJhIGFib3J0YXIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzozNTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInR3byBjb21tYW5kcyBzcGVjaWZpZWQ6ICVzIGFuZCAtLSVzIgorbXNnaWQgInR3byBjb21tYW5kcyBzcGVjaWZpZWQ6IC0tJXMgYW5kIC0tJXMiCittc2dzdHIgImVzcGVjaWZpY8Ohcm9uc2UgZMO6YXMgb3JkZXM6ICVzIGUgLS0lcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjM4NworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiY2Fubm90IG9wZW4gZGl2ZXJzaW9uczogJXMiCittc2dpZCAiY2Fubm90IGFwcGVuZCB0byAnJXMnIgorbXNnc3RyICJub24gc2UgcHVpZG8gYWJyaXIgbyBmaWNoZWlybyBkZSBkZXN2w61vczogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo1NTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byByZW1vdmUgJXM6ICVzIgorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgJyVzJyIKK21zZ3N0ciAibm9uIHNlIHBvZGUgZWxpbWluYXIgJXM6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTExMQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgZmlsZSB3aGlsZSB0cnlpbmcgdG8gcmVhZCAlcyIKK21zZ3N0ciAiZmluIGRlIGZpY2hlaXJvIGluZXNwZXJhZG8gZW4gXCIlc1wiIGVuICUuMjU1cyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMTMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIndoaWxlIHJlYWRpbmcgJXM6ICVzIgorbXNnc3RyICJub24gc2UgcG9kZSBsZXIgJXM6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTExOQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAibGluZSBub3QgdGVybWluYXRlZCB3aGlsZSB0cnlpbmcgdG8gcmVhZCAlcyIKK21zZ3N0ciAiZmluIGRlIGZpY2hlaXJvIGluZXNwZXJhZG8gZW4gXCIlc1wiIGVuICUuMjU1cyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMzcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzIGNvcnJ1cHQ6ICVzIgorbXNnc3RyICJlcnJvIGludGVybm86ICVzIGVzdMOhIGNvcnJvbXBpZG86ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE1MAorIywgYy1mb3JtYXQKK21zZ2lkICJuZXdsaW5lcyBwcm9oaWJpdGVkIGluIHVwZGF0ZS1hbHRlcm5hdGl2ZXMgZmlsZXMgKCVzKSIKK21zZ3N0ciAiIgorIm5vbiBzZSBhZG1pdGVuIHNhbHRvcyBkZSBsacOxYSBub3MgZmljaGVpcm9zIGRlIHVwZGF0ZS1hbHRlcm5hdGl2ZXMgKCVzKSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNjMKK21zZ2lkICJzbGF2ZSBuYW1lIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTcxIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDA1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJkdXBsaWNhdGUgc2xhdmUgJXMiCittc2dpZCAiZHVwbGljYXRlIHNsYXZlIG5hbWUgJXMiCittc2dzdHIgImVzY3Jhdm8gJXMgZHVwbGljYWRvIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE3NAorIywgZnV6enkKK21zZ2lkICJzbGF2ZSBsaW5rIgorbXNnc3RyICJsaWdhesOzbiBlc2NyYXZhICVzIGR1cGxpY2FkYSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAic2xhdmUgbGluayBzYW1lIGFzIG1haW4gbGluayAlcyIKK21zZ3N0ciAiYSBsaWdhesOzbiBlc2NyYXZhIMOpIGlndWFsIMOhIGxpZ2F6w7NuIHByaW5jaXBhbCAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExODUgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHNsYXZlIGxpbmsgJXMiCittc2dzdHIgImxpZ2F6w7NuIGVzY3JhdmEgJXMgZHVwbGljYWRhIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIwNAorbXNnaWQgIm1hc3RlciBmaWxlIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjEzCisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBwYXRoICVzIgorbXNnc3RyICJydXRhICVzIGR1cGxpY2FkYSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMjYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJhbHRlcm5hdGl2ZSAlcyAocGFydCBvZiBsaW5rIGdyb3VwICVzKSBkb2Vzbid0IGV4aXN0LiBSZW1vdmluZyBmcm9tIGxpc3Qgb2YgIgorImFsdGVybmF0aXZlcy4iCittc2dzdHIgIiIKKyJBIGFsdGVybmF0aXZhIGRlICVzIGFwdW50YSBhICVzLCBxdWUgbm9uIHNlIGF0b3BvdS4gRWxpbcOtbmFzZSBkYSBsaXN0YSBkZSAiCisiYWx0ZXJuYXRpdmFzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMjkgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyNDAKKyMsIGZ1enp5Cittc2dpZCAicHJpb3JpdHkiCittc2dzdHIgInByaW9yaWRhZGUgJXMgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjMyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjQ5Cittc2dpZCAic2xhdmUgZmlsZSIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI0NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAicHJpb3JpdHkgb2YgJXM6ICVzIgorbXNnc3RyICJwcmlvcmlkYWRlICVzICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI5NworbXNnaWQgInN0YXR1cyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI5OQorIywgZnV6enkKK21zZ2lkICJpbnZhbGlkIHN0YXR1cyIKK21zZ3N0ciAibW9kbyBkZSBhY3R1YWxpemFjacOzbiBub24gdsOhbGlkbyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzMDQKKyMsIGZ1enp5Cittc2dpZCAibWFzdGVyIGxpbmsiCittc2dzdHIgImxpZ2F6w7NuIGVzY3JhdmEgJXMgZHVwbGljYWRhIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTM0OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZGlzY2FyZGluZyBvYnNvbGV0ZSBzbGF2ZSBsaW5rICVzICglcykuIgorbXNnc3RyICJBIGRlc2NhcmdhciBhIGxpZ2F6w7NuIGVzY3JhdmEgb2Jzb2xldGEgJXMgKCVzKS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTAyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTY5CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYzOAorbXNnaWQgImF1dG8gbW9kZSIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU3OAorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MzkKK21zZ2lkICJtYW51YWwgbW9kZSIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwNQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiICBsaW5rIGN1cnJlbnRseSBwb2ludHMgdG8gJXMiCittc2dzdHIgIiBhIGxpZ2F6w7NuIGFwdW50YSBhICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwOAorIywgZnV6enkKK21zZ2lkICIgIGxpbmsgY3VycmVudGx5IGFic2VudCIKK21zZ3N0ciAiIGEgbGlnYXrDs24gZXN0w6EgYXVzZW50ZSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiVzIC0gcHJpb3JpdHkgJXMiCittc2dpZCAiJXMgLSBwcmlvcml0eSAlZCIKK21zZ3N0ciAiJXMgLSBwcmlvcmlkYWRlICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUxNQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiICBzbGF2ZSAlczogJXMiCittc2dzdHIgIiBlc2NyYXZvICVzOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MjIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIkN1cnJlbnQgJ2Jlc3QnIHZlcnNpb24gaXMgJyVzJy4iCittc2dzdHIgIkEgdmVyc2nDs24gXCJtZWxsb3JcIiBhY3R1YWwgw6kgJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUyNAorbXNnaWQgIk5vIHZlcnNpb25zIGF2YWlsYWJsZS4iCittc2dzdHIgIk5vbiBoaWEgbmluZ3VuaGEgdmVyc2nDs24gZGlzcG/DsWlibGUuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU1MworIywgYy1mb3JtYXQKK21zZ2lkICJUaGVyZSBpcyAlZCBjaG9pY2UgZm9yIHRoZSBhbHRlcm5hdGl2ZSAlcyAocHJvdmlkaW5nICVzKS4iCittc2dpZF9wbHVyYWwgIlRoZXJlIGFyZSAlZCBjaG9pY2VzIGZvciB0aGUgYWx0ZXJuYXRpdmUgJXMgKHByb3ZpZGluZyAlcykuIgorbXNnc3RyWzBdICIiCittc2dzdHJbMV0gIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NjAKKyMsIGZ1enp5Cittc2dpZCAiU2VsZWN0aW9uIgorbXNnc3RyICJEZXNjcmljacOzbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NjEKK21zZ2lkICJQYXRoIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYxCisjLCBmdXp6eQorbXNnaWQgIlByaW9yaXR5IgorbXNnc3RyICJwcmlvcmlkYWRlICVzICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2MQorbXNnaWQgIlN0YXR1cyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU4MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiUHJlc3MgZW50ZXIgdG8ga2VlcCB0aGUgY3VycmVudCBjaG9pY2VbKl0sIG9yIHR5cGUgc2VsZWN0aW9uIG51bWJlcjogIgorbXNnc3RyICIiCisiUHJlbWEgSW50cm8gcGFyYSBtYW50ZXIgbyB2YWxvciBwb3IgZGVmZWN0b1sqXSBvdSBlc2NyaWJhIG8gbsO6bWVybyBkYSAiCisiZXNjb2xsYTogIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTcyMQorIywgYy1mb3JtYXQKK21zZ2lkICJub3QgcmVwbGFjaW5nICVzIHdpdGggYSBsaW5rLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTc2MgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW4ndCBpbnN0YWxsIHVua25vd24gY2hvaWNlICVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNzgwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJza2lwIGNyZWF0aW9uIG9mICVzIGJlY2F1c2UgYXNzb2NpYXRlZCBmaWxlICVzIChvZiBsaW5rIGdyb3VwICVzKSBkb2Vzbid0ICIKKyJleGlzdC4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IHJlbW92aW5nICVzIHNpbmNlIGl0J3Mgbm90IGEgc3ltbGluay4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNDEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2FsbCAlcy4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiQWx0ZXJuYXRpdmUgJXMgdW5jaGFuZ2VkIGJlY2F1c2UgY2hvaWNlICVzIGlzIG5vdCBhdmFpbGFibGUuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDU1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJTa2lwIHVua25vd24gYWx0ZXJuYXRpdmUgJXMuIgorbXNnc3RyICJOb24gc2UgcG9kZSBhdG9wYXIgYSBhbHRlcm5hdGl2YSBcIiVzXCIuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA3NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAibGluZSB0b28gbG9uZyBvciBub3QgdGVybWluYXRlZCB3aGlsZSB0cnlpbmcgdG8gcmVhZCAlcyIKK21zZ3N0ciAiZmluIGRlIGZpY2hlaXJvIGluZXNwZXJhZG8gZW4gXCIlc1wiIGVuICUuMjU1cyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwOTAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxMDMKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTEzCisjLCBjLWZvcm1hdAorbXNnaWQgIlNraXAgaW52YWxpZCBsaW5lOiAlcyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjEzMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAicmVuYW1pbmcgJXMgbGluayBmcm9tICVzIHRvICVzLiIKK21zZ3N0ciAiQSBjYW1iaWFyIG8gbm9tZSBkYSBsaWdhesOzbiAlcyBkZSAlcyBhICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxNzMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInJlbmFtaW5nICVzIHNsYXZlIGxpbmsgZnJvbSAlcyB0byAlcy4iCittc2dzdHIgIkEgY2FtYmlhciBvIG5vbWUgZGEgbGlnYXrDs24gZXNjcmF2YSAlcyBkZSAlcyBhICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgbmFtZSAoJXMpIG11c3Qgbm90IGNvbnRhaW4gJy8nIGFuZCBzcGFjZXMuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTkzCisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIGxpbmsgaXMgbm90IGFic29sdXRlIGFzIGl0IHNob3VsZCBiZTogJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxOTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgcGF0aCBpcyBub3QgYWJzb2x1dGUgYXMgaXQgc2hvdWxkIGJlOiAlcyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjIyNAorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBtYXN0ZXI6IGl0IGlzIGEgc2xhdmUgb2YgJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyMzIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgbGluayAlcyBpcyBhbHJlYWR5IG1hbmFnZWQgYnkgJXMuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjQxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBwYXRoICVzIGRvZXNuJ3QgZXhpc3QuIgorbXNnc3RyICJhdmlzbzogaW5kaWNvdXNlIC0tdXBkYXRlIHBlcm8gJXMgbm9uIGV4aXN0ZSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlICVzIGNhbid0IGJlIHNsYXZlIG9mICVzOiBpdCBpcyBhIG1hc3RlciBhbHRlcm5hdGl2ZS4iCittc2dzdHIgIiIKKyJBIGFsdGVybmF0aXZhIGRlICVzIGFwdW50YSBhICVzLCBxdWUgbm9uIHNlIGF0b3BvdS4gRWxpbcOtbmFzZSBkYSBsaXN0YSBkZSAiCisiYWx0ZXJuYXRpdmFzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgc2xhdmUgb2YgJXM6IGl0IGlzIGEgc2xhdmUgb2YgJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgbGluayAlcyBpcyBhbHJlYWR5IG1hbmFnZWQgYnkgJXMgKHNsYXZlIG9mICVzKS4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBhcmd1bWVudCBgJXMnIgorbXNnc3RyICJhcmd1bWVudG8gXCIlc1wiIGRlc2Nvw7FlY2lkbyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNDMKK21zZ2lkICItLWluc3RhbGwgbmVlZHMgPGxpbms+IDxuYW1lPiA8cGF0aD4gPHByaW9yaXR5PiIKK21zZ3N0ciAiLS1pbnN0YWxsIHByZWNpc2EgZG9zIGFyZ3VtZW50b3MgZGUgbGlnYXrDs24sIG5vbWUsIHJ1dGEgZSBwcmlvcmlkYWRlIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM0NiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM5NworbXNnaWQgIjxsaW5rPiBhbmQgPHBhdGg+IGNhbid0IGJlIHRoZSBzYW1lIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzQ5Cittc2dpZCAicHJpb3JpdHkgbXVzdCBiZSBhbiBpbnRlZ2VyIgorbXNnc3RyICJhIHByaW9yaWRhZGUgdGVuIHF1ZSBzZXIgdW4gbsO6bWVybyBlbnRlaXJvIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM2MgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIDxuYW1lPiA8cGF0aD4iCittc2dzdHIgIi0tJXMgcHJlY2lzYSBkb3MgYXJndW1lbnRvcyBkZSBub21lIGUgcnV0YSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyA8bmFtZT4iCittc2dzdHIgIi0tJXMgcHJlY2lzYSBkbyBhcmd1bWVudG8gZGUgbm9tZSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzODgKK21zZ2lkICItLXNsYXZlIG9ubHkgYWxsb3dlZCB3aXRoIC0taW5zdGFsbCIKK21zZ3N0ciAic8OzIHNlIGFkbWl0ZSAtLXNsYXZlIGNvbiAtLWluc3RhbGwiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzkwCittc2dpZCAiLS1zbGF2ZSBuZWVkcyA8bGluaz4gPG5hbWU+IDxwYXRoPiIKK21zZ3N0ciAiLS1zbGF2ZSBwcmVjaXNhIGRvcyBhcmd1bWVudG9zIGRlIGxpZ2F6w7NuLCBub21lIGUgcnV0YSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzOTkKKyMsIGMtZm9ybWF0Cittc2dpZCAibmFtZSAlcyBpcyBib3RoIHByaW1hcnkgYW5kIHNsYXZlIgorbXNnc3RyICJvIG5vbWUgJXMgw6kgcHJpbWFyaW8gZSBlc2NyYXZvIGFvIG1lc21vIHRlbXBvIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQwMgorIywgYy1mb3JtYXQKK21zZ2lkICJsaW5rICVzIGlzIGJvdGggcHJpbWFyeSBhbmQgc2xhdmUiCittc2dzdHIgImEgbGlnYXrDs24gJXMgw6kgcHJpbWFyaWEgZSBlc2NyYXZhIGFvIG1lc21vIHRlbXBvIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQyMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhIDxmaWxlPiBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyBwcmVjaXNhIGR1biBzw7MgYXJndW1lbnRvIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQ0OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiBgJXMnIgorbXNnc3RyICJvcGNpw7NuIFwiJXNcIiBkZXNjb8OxZWNpZGEiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDUzCisjLCBmdXp6eQorbXNnaWQgIiIKKyJuZWVkIC0tZGlzcGxheSwgLS1xdWVyeSwgLS1saXN0LCAtLWdldC1zZWxlY3Rpb25zLCAtLWNvbmZpZywgLS1zZXQsIC0tc2V0LSIKKyJzZWxlY3Rpb25zLCAtLWluc3RhbGwsIC0tcmVtb3ZlLCAtLWFsbCwgLS1yZW1vdmUtYWxsIG9yIC0tYXV0byIKK21zZ3N0ciAiIgorInByZWPDrXNhc2UgZGUgLS1kaXNwbGF5LCAtLWNvbmZpZywgLS1zZXQsIC0taW5zdGFsbCwgLS1yZW1vdmUsIC0tYWxsLCAtLSIKKyJyZW1vdmUtYWxsIG91IC1hdXRvIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQ5MAorIywgZnV6enkKKyN8IG1zZ2lkICJyZWFkIGVycm9yIG9uIHN0YW5kYXJkIGlucHV0IgorbXNnaWQgIjxzdGFuZGFyZCBpbnB1dD4iCittc2dzdHIgImVycm8gZGUgbGVjdHVyYSBuYSBlbnRyYWRhIGVzdMOhbmRhciIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MDAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MDMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIm5vIGFsdGVybmF0aXZlcyBmb3IgJXMuIgorbXNnc3RyICJOb24gaGFpIGFsdGVybmF0aXZhcyBwYXJhICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMvJXMgaXMgZGFuZ2xpbmcsIGl0IHdpbGwgYmUgdXBkYXRlZCB3aXRoIGJlc3QgY2hvaWNlLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUzNAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzLyVzIGhhcyBiZWVuIGNoYW5nZWQgKG1hbnVhbGx5IG9yIGJ5IGEgc2NyaXB0KS4gU3dpdGNoaW5nIHRvIG1hbnVhbCAiCisidXBkYXRlcyBvbmx5LiIKK21zZ3N0ciAiIgorIiVzIGNhbWJpb3UgKG1hbnVhbG1lbnRlIG91IG1lZGlhbnRlIHVuIHNjcmlwdCkuXG4iCisiQ8OhbWJpYXNlIGEgc8OzIGFjdHVhbGl6YWNpw7NucyBtYW51YWlzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NDIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInNldHRpbmcgdXAgYXV0b21hdGljIHNlbGVjdGlvbiBvZiAlcy4iCittc2dzdHIgIkEgZXN0YWJsZWNlciBhIHNlbGVjY2nDs24gYXV0b23DoXRpY2EgZGUgJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU1MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgZm9yICVzIG5vdCByZWdpc3RlcmVkLCBub3Qgc2V0dGluZy4iCittc2dzdHIgIkEgYWx0ZXJuYXRpdmEgJXMgZGUgJXMgbm9uIGVzdMOhIHJleGlzdHJhZGEsIG5vbiBzZSBlbGltaW5hLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NTcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NjMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIlRoZXJlIGlzIG5vIHByb2dyYW0gd2hpY2ggcHJvdmlkZXMgJXMuIgorbXNnc3RyICIiCisiU8OzIGhhaSBuaW5nw7puIHByb2dyYW1hIHF1ZSBmb3JuZXphICVzLlxuIgorIk5vbiBoYWkgbmFkYSBxdWUgY29uZmlndXJhci5cbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NjUgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NzUKK21zZ2lkICJOb3RoaW5nIHRvIGNvbmZpZ3VyZS4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiVGhlcmUgaXMgb25seSBvbmUgYWx0ZXJuYXRpdmUgaW4gbGluayBncm91cCAlczogJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1ODQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlICVzIGZvciAlcyBub3QgcmVnaXN0ZXJlZCwgbm90IHJlbW92aW5nLiIKK21zZ3N0ciAiQSBhbHRlcm5hdGl2YSAlcyBkZSAlcyBub24gZXN0w6EgcmV4aXN0cmFkYSwgbm9uIHNlIGVsaW1pbmEuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU5MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAicmVtb3ZpbmcgbWFudWFsbHkgc2VsZWN0ZWQgYWx0ZXJuYXRpdmUgLSBzd2l0Y2hpbmcgJXMgdG8gYXV0byBtb2RlIgorbXNnc3RyICIiCisiQSBlbGltaW5hciBhIGFsdGVybmF0aXZhIHNlbGVjY2lvbmFkYSBtYW51YWxtZW50ZSAtIGPDoW1iaWFzZSBhIG1vZG8gIgorImF1dG9tw6F0aWNvLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MTcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImF1dG9tYXRpYyB1cGRhdGVzIG9mICVzLyVzIGFyZSBkaXNhYmxlZCwgbGVhdmluZyBpdCBhbG9uZS4iCittc2dzdHIgIkFzIGFjdHVhbGl6YWNpw7NucyBhdXRvbcOhdGljYXMgZGUgJXMgZXN0w6FuIGRlc2FjdGl2YWRhcywgb23DrXRlc2UuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYxOQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidG8gcmV0dXJuIHRvIGF1dG9tYXRpYyB1cGRhdGVzIHVzZSAnJXMgLS1hdXRvICVzJy4iCittc2dzdHIgIiIKKyJQYXJhIHZvbHRhciDDoXMgYWN0dWFsaXphY2nDs25zIGF1dG9tw6F0aWNhcyBlbXByZWd1ZSBcInVwZGF0ZS1hbHRlcm5hdGl2ZXMgLS0iCisiYXV0byAlc1wiLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MzYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVzaW5nICVzIHRvIHByb3ZpZGUgJXMgKCVzKSBpbiAlcy4iCittc2dzdHIgIkEgZW1wcmVnYXIgXCIlc1wiIHBhcmEgZm9ybmVjZXIgXCIlc1wiLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImZvcmNpbmcgcmVpbnN0YWxsYXRpb24gb2YgYWx0ZXJuYXRpdmUgJXMgYmVjYXVzZSBsaW5rIGdyb3VwICVzIGlzIGJyb2tlbi4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY3VycmVudCBhbHRlcm5hdGl2ZSAlcyBpcyB1bmtub3duLCBzd2l0Y2hpbmcgdG8gJXMgZm9yIGxpbmsgZ3JvdXAgJXMuIgorbXNnc3RyICIiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiaXQgaXMgYSBzbGF2ZSBvZiAlcyIKKyN+IG1zZ3N0ciAiIGVzY3Jhdm8gJXM6ICVzIgorCisjLCBmdXp6eQorI358IG1zZ2lkICJjYW5ub3Qgc3RhdCBvbGQgbmFtZSBgJXMnOiAlcyIKKyN+IG1zZ2lkICJjYW5ub3Qgc3RhdCAlczogJXMiCisjfiBtc2dzdHIgIm5vbiBzZSBhdG9wYSBvIG5vbWUgYW50aWdvIFwiJXNcIjogJXMiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgIiVzOiBjb3B5aW5nICVzIHRvICVzIGZhaWxlZCwgZ2l2aW5nIHVwOiAlcyIKKyN+IG1zZ2lkICJzY2FuIG9mICVzIGZhaWxlZDogJXMiCisjfiBtc2dzdHIgIiVzOiBmYWxsb3UgYSBjb3BpYSBkZSAlcyBhICVzLCBhYsOzcnRhc2U6ICVzIgorCisjLCBmdXp6eQorI358IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyAlcyIKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlY3V0ZSAlczogJXMiCisjfiBtc2dzdHIgIm5vbiBzZSBwdWlkbyBleGVjdXRhciAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byBtYWtlICVzIGEgc3ltbGluayB0byAlczogJXMiCisjfiBtc2dzdHIgIm5vbiBzZSBwb2RlIGNvbnZlcnRlciAlcyBudW5oYSBsaWdhesOzbiBzaW1iw7NsaWNhIGEgJXM6ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgJXMgYXMgJXM6ICVzIgorI34gbXNnc3RyICJub24gc2UgcG9kZSBpbnN0YWxhciAlcyBjb21hICVzOiAlcyIKKworIywgZnV6enkKKyN+IG1zZ2lkICJ3aGlsZSB3cml0aW5nICVzOiAlcyIKKyN+IG1zZ3N0ciAiZXJybyBhbyBncmF2YXIgbmEgc2HDrWRhIGVzdMOhbmRhcjogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcmVhZCAlczogJXMiCisjfiBtc2dzdHIgIm5vbiBzZSBwb2RlIGxlciAlczogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gY2xvc2UgJXM6ICVzIgorI34gbXNnc3RyICJub24gc2UgcG9kZSBwZWNoYXIgJXM6ICVzIgorCisjLCBmdXp6eQorI358IG1zZ2lkICJ1bmFibGUgdG8gd3JpdGUgJXM6ICVzIgorI34gbXNnaWQgImNhbm5vdCB3cml0ZSAlczogJXMiCisjfiBtc2dzdHIgIm5vbiBzZSBwb2RlIGVzY3JpYmlyIGVuICVzOiAlcyIKKworIywgZnV6enkKKyN+fCBtc2dpZCAidW5hYmxlIHRvIHJlbmFtZSAlcyB0byAlczogJXMiCisjfiBtc2dpZCAidW5hYmxlIHRvIHJlbmFtZSBmaWxlICclcycgdG8gJyVzJyIKKyN+IG1zZ3N0ciAibm9uIHNlIHBvZGUgY2FtYmlhciBvIG5vbWUgZGUgJXMgYSAlczogJXMiCisKKyN+IG1zZ2lkICJtYWxsb2MgZmFpbGVkICglbGQgYnl0ZXMpIgorI34gbXNnc3RyICJhIGNoYW1hZGEgYSBtYWxsb2MgZmFsbG91ICglbGQgYnl0ZXMpIgorCisjfiBtc2dpZCAicmVhbGxvYyBmYWlsZWQgKCVsZCBieXRlcykiCisjfiBtc2dzdHIgImEgY2hhbWFkYSBhIHJlYWxsb2MgZmFsbG91ICglbGQgYnl0ZXMpIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHVuYnVmZmVyIGAlLjI1NXMnIgorI34gbXNnc3RyICJub24gc2UgcHVpZG8gc2FjYXIgZG8gYnVmZmVyIFwiJS4yNTVzXCIiCisKKyN+IG1zZ2lkICJwYXJ0IGZpbGUgYCUuMjUwcycgaGFzIHRyYWlsaW5nIGdhcmJhZ2UiCisjfiBtc2dzdHIgIm8gZmljaGVpcm8gZGUgcGFydGVzIFwiJS4yNTBzXCIgdGVuIGxpeG8gw7MgZmluYWwiCisKKyN+IG1zZ2lkICJzaXplICU3ZCBvY2N1cnMgJTVkIHRpbWVzXG4iCisjfiBtc2dzdHIgIm8gdGFtYcOxbyAlN2QgYXBhcmVjZSAlNWQgdmVjZXNcbiIKKworI34gbXNnaWQgIm91dCBvZiBtZW1vcnkgcHVzaGluZyBlcnJvciBoYW5kbGVyOiAiCisjfiBtc2dzdHIgIm1lbW9yaWEgZXNnb3RhZGEgYW8gZW5nYWRpciBvIG1hbmV4YWRvciBkZSBlcnJvczogIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHVubG9jayBkcGtnIHN0YXR1cyBkYXRhYmFzZSIKKyN+IG1zZ3N0ciAibm9uIHNlIHBvZGUgZGVzYmxvcXVlYXIgYSBiYXNlIGRlIGRhdG9zIGRlIGVzdGFkbyBkZSBkcGtnIgorCisjfiBtc2dpZCAiY29weSBpbmZvIGZpbGUgYCUuMjU1cyciCisjfiBtc2dzdHIgImNvcGlhciBvIGZpY2hlaXJvIGRlIGluZm9ybWFjacOzbiBcIiUuMjU1c1wiIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHdyaXRlIHBhcnNpbmcgd2FybmluZyIKKyN+IG1zZ3N0ciAibm9uIHNlIHB1aWRvIGdyYXZhciBvIGF2aXNvIGRlIGFuw6FsaXNlIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGxvY2sgdHJpZ2dlcnMgYXJlYSIKKyN+IG1zZ3N0ciAibm9uIHNlIHBvZGUgYmxvcXVlYXIgYSDDoXJlYSBkZSBkaXNwYXJhZG9yZXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gcnVuICVzICglLjI1MHMpIgorI34gbXNnc3RyICJub24gc2UgcHVpZG8gZXhlY3V0YXIgJXMgKCUuMjUwcykiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBzaGVsbCAoJS4yNTBzKSIKKyN+IG1zZ3N0ciAibm9uIHNlIHB1aWRvIGV4ZWN1dGFyIG8gaW50w6lycHJldGUgZGUgb3JkZXMgKCUuMjUwcykiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gY2hlY2sgZm9yIGV4aXN0ZW5jZSBvZiBgJS4yNTBzJyIKKyN+IG1zZ3N0ciAibm9uIHNlIHBvZGUgY29tcHJvYmFyIGEgZXhpc3RlbmNpYSBkZSBcIiUuMjUwc1wiIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgcm0gZm9yIGNsZWFudXAiCisjfiBtc2dzdHIgIm5vbiBzZSBwdWlkbyBleGVjdXRhciBybSBwYXJhIGEgbGltcGV6YSIKKworI34gbXNnaWQgIiIKKyN+ICIlcyBkZWJ1Z2dpbmcgb3B0aW9uLCAtLWRlYnVnPTxvY3RhbD4gb3IgLUQ8b2N0YWw+OlxuIgorI34gIlxuIgorI34gIiBudW1iZXIgIHJlZi4gaW4gc291cmNlICAgZGVzY3JpcHRpb25cbiIKKyN+ICIgICAgICAxICAgZ2VuZXJhbCAgICAgICAgICAgR2VuZXJhbGx5IGhlbHBmdWwgcHJvZ3Jlc3MgaW5mb3JtYXRpb25cbiIKKyN+ICIgICAgICAyICAgc2NyaXB0cyAgICAgICAgICAgSW52b2NhdGlvbiBhbmQgc3RhdHVzIG9mIG1haW50YWluZXIgc2NyaXB0c1xuIgorI34gIiAgICAgMTAgICBlYWNoZmlsZSAgICAgICAgICBPdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWRcbiIKKyN+ICIgICAgMTAwICAgZWFjaGZpbGVkZXRhaWwgICAgTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWRcbiIKKyN+ICIgICAgIDIwICAgY29uZmYgICAgICAgICAgICAgT3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZVxuIgorI34gIiAgICAyMDAgICBjb25mZmRldGFpbCAgICAgICBMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGVcbiIKKyN+ICIgICAgIDQwICAgZGVwY29uICAgICAgICAgICAgRGVwZW5kZW5jaWVzIGFuZCBjb25mbGljdHNcbiIKKyN+ICIgICAgNDAwICAgZGVwY29uZGV0YWlsICAgICAgTG90cyBvZiBkZXBlbmRlbmNpZXMvY29uZmxpY3RzIG91dHB1dFxuIgorI34gIiAgMTAwMDAgICB0cmlnZ2VycyAgICAgICAgICBUcmlnZ2VyIGFjdGl2YXRpb24gYW5kIHByb2Nlc3NpbmdcbiIKKyN+ICIgIDIwMDAwICAgdHJpZ2dlcnNkZXRhaWwgICAgTG90cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzXG4iCisjfiAiICA0MDAwMCAgIHRyaWdnZXJzc3R1cGlkICAgIFNpbGx5IGFtb3VudHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2Vyc1xuIgorI34gIiAgIDEwMDAgICB2ZXJ5dmVyYm9zZSAgICAgICBMb3RzIG9mIGRyaXZlbCBhYm91dCBlZyB0aGUgZHBrZy9pbmZvICIKKyN+ICJkaXJlY3RvcnlcbiIKKyN+ICIgICAyMDAwICAgc3R1cGlkbHl2ZXJib3NlICAgSW5zYW5lIGFtb3VudHMgb2YgZHJpdmVsXG4iCisjfiAiXG4iCisjfiAiRGVidWdnaW5nIG9wdGlvbnMgYXJlIGJlIG1peGVkIHVzaW5nIGJpdHdpc2Utb3IuXG4iCisjfiAiTm90ZSB0aGF0IHRoZSBtZWFuaW5ncyBhbmQgdmFsdWVzIGFyZSBzdWJqZWN0IHRvIGNoYW5nZS5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIk9wY2nDs24gZGUgZGVwdXJhY2nDs24gZGUgJXMsIC0tZGVidWc9PG9jdGFsPiBvdSAtRDxvY3RhbD46XG4iCisjfiAiXG4iCisjfiAiIG7Dum1lcm8gIHJlZi4gbm8gY8OzZC4gZm9udGUgZGVzY3JpY2nDs25cbiIKKyN+ICIgICAgICAxICAgZ2VuZXJhbCAgICAgICAgICAgSW5mb3JtYWNpw7NuIGRlIHByb2dyZXNvIG5vcm1hbG1lbnRlIMO6dGlsXG4iCisjfiAiICAgICAgMiAgIHNjcmlwdHMgICAgICAgICAgIENoYW1hZGFzIGUgZXN0YWRvIGRvcyBzY3JpcHRzIGRlIG1hbnRlZG9yXG4iCisjfiAiICAgICAxMCAgIGVhY2hmaWxlICAgICAgICAgIEluZm9ybWFjacOzbiBzb2JyZSBjYWRhIGZpY2hlaXJvIHByb2Nlc2Fkb1xuIgorI34gIiAgICAxMDAgICBlYWNoZmlsZWRldGFpbCAgICBNb2l0YSBpbmZvcm1hY2nDs24gc29icmUgY2FkYSBmaWNoZWlybyAiCisjfiAicHJvY2VzYWRvXG4iCisjfiAiICAgICAyMCAgIGNvbmZmICAgICAgICAgICAgIEluZm9ybWFjacOzbiBzb2JyZSBjYWRhIGZpY2hlaXJvIGRlICIKKyN+ICJjb25maWd1cmFjacOzblxuIgorI34gIiAgICAyMDAgICBjb25mZmRldGFpbCAgICAgICBNb2l0b3MgZGF0b3Mgc29icmUgY2FkYSBmaWNoZWlybyBkZSAiCisjfiAiY29uZmlndXJhY2nDs25cbiIKKyN+ICIgICAgIDQwICAgZGVwY29uICAgICAgICAgICAgRGVwZW5kZW5jaWFzIGFuZCBjb25mbGljdG9zXG4iCisjfiAiICAgIDQwMCAgIGRlcGNvbmRldGFpbCAgICAgIE1vaXRhIGluZm9ybWFjacOzbiBkZSBkZXBlbmRlbmNpYXMvY29uZmxpY3Rvc1xuIgorI34gIiAgMTAwMDAgICB0cmlnZ2VycyAgICAgICAgICBBY3RpdmFjacOzbiBlIHByb2Nlc2FtZW50byBkZSBkaXNwYXJhZG9yZXNcbiIKKyN+ICIgIDIwMDAwICAgdHJpZ2dlcnNkZXRhaWwgICAgTW9pdGEgaW5mb3JtYWNpw7NuIHNvYnJlIG9zIGRpc3BhcmFkb3Jlc1xuIgorI34gIiAgNDAwMDAgICB0cmlnZ2Vyc3N0dXBpZCAgICBVbmhhIGNhbnRpZGFkZSBhYnN1cmRhIGRlIGRhdG9zIHNvYnJlICIKKyN+ICJkaXNwYXJhZG9yZXNcbiIKKyN+ICIgICAxMDAwICAgdmVyeXZlcmJvc2UgICAgICAgTW9pdGEgbGVyaWEgc29icmUgcC5leC4gbyBkaXJlY3RvcmlvIGRwa2cvIgorI34gImluZm9cbiIKKyN+ICIgICAyMDAwICAgc3R1cGlkbHl2ZXJib3NlICAgQ2FudGlkYWRlcyBhYnN1cmRhcyBkZSBsZXJpYVxuIgorI34gIlxuIgorI34gIkFzIG9wY2nDs25zIGRlIGRlcHVyYWNpw7NuIG1lc3TDunJhbnNlIHN1bcOhbmRvYXMuXG4iCisjfiAiVGXDsWEgZW4gY29udGEgcXVlIG9zIHNpZ25pZmljYWRvcyBlIHZhbG9yZXMgcG9kZW4gY2FtYmlhci5cbiIKKworIywgZnV6enkKKyN+fCBtc2dpZCAiIgorI358ICIlcyBmb3JjaW5nIG9wdGlvbnMgLSBjb250cm9sIGJlaGF2aW91ciB3aGVuIHByb2JsZW1zIGZvdW5kOlxuIgorI358ICIgIHdhcm4gYnV0IGNvbnRpbnVlOiAgLS1mb3JjZS08dGhpbmc+LDx0aGluZz4sLi4uXG4iCisjfnwgIiAgc3RvcCB3aXRoIGVycm9yOiAgICAtLXJlZnVzZS08dGhpbmc+LDx0aGluZz4sLi4uIHwgLS1uby1mb3JjZS0iCisjfnwgIjx0aGluZz4sLi4uXG4iCisjfnwgIiBGb3JjaW5nIHRoaW5nczpcbiIKKyN+fCAiICBhbGwgWyFdICAgICAgICAgICAgICAgIFNldCBhbGwgZm9yY2Ugb3B0aW9uc1xuIgorI358ICIgIGRvd25ncmFkZSBbKl0gICAgICAgICAgUmVwbGFjZSBhIHBhY2thZ2Ugd2l0aCBhIGxvd2VyIHZlcnNpb25cbiIKKyN+fCAiICBjb25maWd1cmUtYW55ICAgICAgICAgIENvbmZpZ3VyZSBhbnkgcGFja2FnZSB3aGljaCBtYXkgaGVscCB0aGlzIG9uZVxuIgorI358ICIgIGhvbGQgICAgICAgICAgICAgICAgICAgUHJvY2VzcyBpbmNpZGVudGFsIHBhY2thZ2VzIGV2ZW4gd2hlbiBvbiBob2xkXG4iCisjfnwgIiAgYmFkLXBhdGggICAgICAgICAgICAgICBQQVRIIGlzIG1pc3NpbmcgaW1wb3J0YW50IHByb2dyYW1zLCBwcm9ibGVtcyAiCisjfnwgImxpa2VseVxuIgorI358ICIgIG5vdC1yb290ICAgICAgICAgICAgICAgVHJ5IHRvIChkZSlpbnN0YWxsIHRoaW5ncyBldmVuIHdoZW4gbm90IHJvb3RcbiIKKyN+fCAiICBvdmVyd3JpdGUgICAgICAgICAgICAgIE92ZXJ3cml0ZSBhIGZpbGUgZnJvbSBvbmUgcGFja2FnZSB3aXRoIGFub3RoZXJcbiIKKyN+fCAiICBvdmVyd3JpdGUtZGl2ZXJ0ZWQgICAgIE92ZXJ3cml0ZSBhIGRpdmVydGVkIGZpbGUgd2l0aCBhbiB1bmRpdmVydGVkICIKKyN+fCAidmVyc2lvblxuIgorI358ICIgIGJhZC12ZXJpZnkgICAgICAgICAgICAgSW5zdGFsbCBhIHBhY2thZ2UgZXZlbiBpZiBpdCBmYWlscyBhdXRoZW50aWNpdHkgIgorI358ICJjaGVja1xuIgorI358ICIgIGRlcGVuZHMtdmVyc2lvbiBbIV0gICAgVHVybiBkZXBlbmRlbmN5IHZlcnNpb24gcHJvYmxlbXMgaW50byB3YXJuaW5nc1xuIgorI358ICIgIGRlcGVuZHMgWyFdICAgICAgICAgICAgVHVybiBhbGwgZGVwZW5kZW5jeSBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzXG4iCisjfnwgIiAgY29uZm5ldyBbIV0gICAgICAgICAgICBBbHdheXMgdXNlIHRoZSBuZXcgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHRcbiIKKyN+fCAiICBjb25mb2xkIFshXSAgICAgICAgICAgIEFsd2F5cyB1c2UgdGhlIG9sZCBjb25maWcgZmlsZXMsIGRvbid0IHByb21wdFxuIgorI358ICIgIGNvbmZkZWYgWyFdICAgICAgICAgICAgVXNlIHRoZSBkZWZhdWx0IG9wdGlvbiBmb3IgbmV3IGNvbmZpZyBmaWxlcyBpZiAiCisjfnwgIm9uZVxuIgorI358ICIgICAgICAgICAgICAgICAgICAgICAgICAgaXMgYXZhaWxhYmxlLCBkb24ndCBwcm9tcHQuIElmIG5vIGRlZmF1bHQgY2FuICIKKyN+fCAiYmUgZm91bmQsXG4iCisjfnwgIiAgICAgICAgICAgICAgICAgICAgICAgICB5b3Ugd2lsbCBiZSBwcm9tcHRlZCB1bmxlc3Mgb25lIG9mIHRoZSBjb25mb2xkICIKKyN+fCAib3JcbiIKKyN+fCAiICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmZuZXcgb3B0aW9ucyBpcyBhbHNvIGdpdmVuXG4iCisjfnwgIiAgY29uZm1pc3MgWyFdICAgICAgICAgICBBbHdheXMgaW5zdGFsbCBtaXNzaW5nIGNvbmZpZyBmaWxlc1xuIgorI358ICIgIGJyZWFrcyBbIV0gICAgICAgICAgICAgSW5zdGFsbCBldmVuIGlmIGl0IHdvdWxkIGJyZWFrIGFub3RoZXIgcGFja2FnZVxuIgorI358ICIgIGNvbmZsaWN0cyBbIV0gICAgICAgICAgQWxsb3cgaW5zdGFsbGF0aW9uIG9mIGNvbmZsaWN0aW5nIHBhY2thZ2VzXG4iCisjfnwgIiAgYXJjaGl0ZWN0dXJlIFshXSAgICAgICBQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyBhcmNoaXRlY3R1cmVcbiIKKyN+fCAiICBvdmVyd3JpdGUtZGlyIFshXSAgICAgIE92ZXJ3cml0ZSBvbmUgcGFja2FnZSdzIGRpcmVjdG9yeSB3aXRoICIKKyN+fCAiYW5vdGhlcidzIGZpbGVcbiIKKyN+fCAiICByZW1vdmUtcmVpbnN0cmVxIFshXSAgIFJlbW92ZSBwYWNrYWdlcyB3aGljaCByZXF1aXJlIGluc3RhbGxhdGlvblxuIgorI358ICIgIHJlbW92ZS1lc3NlbnRpYWwgWyFdICAgUmVtb3ZlIGFuIGVzc2VudGlhbCBwYWNrYWdlXG4iCisjfnwgIlxuIgorI358ICJXQVJOSU5HIC0gdXNlIG9mIG9wdGlvbnMgbWFya2VkIFshXSBjYW4gc2VyaW91c2x5IGRhbWFnZSB5b3VyICIKKyN+fCAiaW5zdGFsbGF0aW9uLlxuIgorI358ICJGb3JjaW5nIG9wdGlvbnMgbWFya2VkIFsqXSBhcmUgZW5hYmxlZCBieSBkZWZhdWx0LlxuIgorI34gbXNnaWQgIiIKKyN+ICIlcyBmb3JjaW5nIG9wdGlvbnMgLSBjb250cm9sIGJlaGF2aW91ciB3aGVuIHByb2JsZW1zIGZvdW5kOlxuIgorI34gIiAgd2FybiBidXQgY29udGludWU6ICAtLWZvcmNlLTx0aGluZz4sPHRoaW5nPiwuLi5cbiIKKyN+ICIgIHN0b3Agd2l0aCBlcnJvcjogICAgLS1yZWZ1c2UtPHRoaW5nPiw8dGhpbmc+LC4uLiB8IC0tbm8tZm9yY2UtIgorI34gIjx0aGluZz4sLi4uXG4iCisjfiAiIEZvcmNpbmcgdGhpbmdzOlxuIgorI34gIiAgYWxsIFshXSAgICAgICAgICAgICAgICBTZXQgYWxsIGZvcmNlIG9wdGlvbnNcbiIKKyN+ICIgIGRvd25ncmFkZSBbKl0gICAgICAgICAgUmVwbGFjZSBhIHBhY2thZ2Ugd2l0aCBhIGxvd2VyIHZlcnNpb25cbiIKKyN+ICIgIGNvbmZpZ3VyZS1hbnkgICAgICAgICAgQ29uZmlndXJlIGFueSBwYWNrYWdlIHdoaWNoIG1heSBoZWxwIHRoaXMgb25lXG4iCisjfiAiICBob2xkICAgICAgICAgICAgICAgICAgIFByb2Nlc3MgaW5jaWRlbnRhbCBwYWNrYWdlcyBldmVuIHdoZW4gb24gaG9sZFxuIgorI34gIiAgYmFkLXBhdGggICAgICAgICAgICAgICBQQVRIIGlzIG1pc3NpbmcgaW1wb3J0YW50IHByb2dyYW1zLCBwcm9ibGVtcyAiCisjfiAibGlrZWx5XG4iCisjfiAiICBub3Qtcm9vdCAgICAgICAgICAgICAgIFRyeSB0byAoZGUpaW5zdGFsbCB0aGluZ3MgZXZlbiB3aGVuIG5vdCByb290XG4iCisjfiAiICBvdmVyd3JpdGUgICAgICAgICAgICAgIE92ZXJ3cml0ZSBhIGZpbGUgZnJvbSBvbmUgcGFja2FnZSB3aXRoIGFub3RoZXJcbiIKKyN+ICIgIG92ZXJ3cml0ZS1kaXZlcnRlZCAgICAgT3ZlcndyaXRlIGEgZGl2ZXJ0ZWQgZmlsZSB3aXRoIGFuIHVuZGl2ZXJ0ZWQgIgorI34gInZlcnNpb25cbiIKKyN+ICIgIGJhZC12ZXJpZnkgICAgICAgICAgICAgSW5zdGFsbCBhIHBhY2thZ2UgZXZlbiBpZiBpdCBmYWlscyBhdXRoZW50aWNpdHkgIgorI34gImNoZWNrXG4iCisjfiAiICBkZXBlbmRzLXZlcnNpb24gWyFdICAgIFR1cm4gZGVwZW5kZW5jeSB2ZXJzaW9uIHByb2JsZW1zIGludG8gd2FybmluZ3NcbiIKKyN+ICIgIGRlcGVuZHMgWyFdICAgICAgICAgICAgVHVybiBhbGwgZGVwZW5kZW5jeSBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzXG4iCisjfiAiICBjb25mbmV3IFshXSAgICAgICAgICAgIEFsd2F5cyB1c2UgdGhlIG5ldyBjb25maWcgZmlsZXMsIGRvbid0IHByb21wdFxuIgorI34gIiAgY29uZm9sZCBbIV0gICAgICAgICAgICBBbHdheXMgdXNlIHRoZSBvbGQgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHRcbiIKKyN+ICIgIGNvbmZkZWYgWyFdICAgICAgICAgICAgVXNlIHRoZSBkZWZhdWx0IG9wdGlvbiBmb3IgbmV3IGNvbmZpZyBmaWxlcyBpZiAiCisjfiAib25lXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIGlzIGF2YWlsYWJsZSwgZG9uJ3QgcHJvbXB0LiBJZiBubyBkZWZhdWx0IGNhbiBiZSAiCisjfiAiZm91bmQsXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIHlvdSB3aWxsIGJlIHByb21wdGVkIHVubGVzcyBvbmUgb2YgdGhlIGNvbmZvbGQgIgorI34gIm9yXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmZuZXcgb3B0aW9ucyBpcyBhbHNvIGdpdmVuXG4iCisjfiAiICBjb25mbWlzcyBbIV0gICAgICAgICAgIEFsd2F5cyBpbnN0YWxsIG1pc3NpbmcgY29uZmlnIGZpbGVzXG4iCisjfiAiICBjb25mYXNrIFshXSAgICAgICAgICAgIE9mZmVyIHRvIHJlcGxhY2UgY29uZmlnIGZpbGVzIHdpdGggbm8gbmV3ICIKKyN+ICJ2ZXJzaW9uc1xuIgorI34gIiAgYnJlYWtzIFshXSAgICAgICAgICAgICBJbnN0YWxsIGV2ZW4gaWYgaXQgd291bGQgYnJlYWsgYW5vdGhlciBwYWNrYWdlXG4iCisjfiAiICBjb25mbGljdHMgWyFdICAgICAgICAgIEFsbG93IGluc3RhbGxhdGlvbiBvZiBjb25mbGljdGluZyBwYWNrYWdlc1xuIgorI34gIiAgYXJjaGl0ZWN0dXJlIFshXSAgICAgICBQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyBhcmNoaXRlY3R1cmVcbiIKKyN+ICIgIG92ZXJ3cml0ZS1kaXIgWyFdICAgICAgT3ZlcndyaXRlIG9uZSBwYWNrYWdlJ3MgZGlyZWN0b3J5IHdpdGggYW5vdGhlcidzICIKKyN+ICJmaWxlXG4iCisjfiAiICB1bnNhZmUtaW8gWyFdICAgICAgICAgIERvIG5vdCBwZXJmb3JtIHNhZmUgSS9PIG9wZXJhdGlvbnMgd2hlbiAiCisjfiAidW5wYWNraW5nXG4iCisjfiAiICByZW1vdmUtcmVpbnN0cmVxIFshXSAgIFJlbW92ZSBwYWNrYWdlcyB3aGljaCByZXF1aXJlIGluc3RhbGxhdGlvblxuIgorI34gIiAgcmVtb3ZlLWVzc2VudGlhbCBbIV0gICBSZW1vdmUgYW4gZXNzZW50aWFsIHBhY2thZ2VcbiIKKyN+ICJcbiIKKyN+ICJXQVJOSU5HIC0gdXNlIG9mIG9wdGlvbnMgbWFya2VkIFshXSBjYW4gc2VyaW91c2x5IGRhbWFnZSB5b3VyICIKKyN+ICJpbnN0YWxsYXRpb24uXG4iCisjfiAiRm9yY2luZyBvcHRpb25zIG1hcmtlZCBbKl0gYXJlIGVuYWJsZWQgYnkgZGVmYXVsdC5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIk9wY2nDs25zIGRlIGZvcnphZG8gZGUgJXMgLSBjb250cm9sYW4gbyBjb21wb3J0YW1lbnRvIGNhbmRvIGhhaSAiCisjfiAicHJvYmxlbWFzOlxuIgorI34gIiAgYXZpc2FyIHBlcm8gY29udGludWFyOiAtLWZvcmNlLTxjb3VzYT4sPGNvdXNhPiwuLi5cbiIKKyN+ICIgIHBhcmFyIGN1biBlcnJvOiAgICAgICAgLS1yZWZ1c2UtPGNvdXNhPiw8Y291c2E+LC4uLiB8IC0tbm8tZm9yY2UtIgorI34gIjxjb3VzYT4sLi4uXG4iCisjfiAiIEZvcnphciBjb3VzYXM6XG4iCisjfiAiICBhbGwgWyFdICAgICAgICAgICAgICBFc3RhYmxlY2UgdMOzZGFsYXMgb3BjacOzbnMgZGUgZm9yemFkb1xuIgorI34gIiAgZG93bmdyYWRlIFsqXSAgICAgICAgU3Vic3RpdMO6ZSB1biBwYXF1ZXRlIHBvciB1bmhhIHZlcnNpw7NuIGFudGVyaW9yXG4iCisjfiAiICBjb25maWd1cmUtYW55ICAgICAgICBDb25maWd1cmEgdW4gcGFxdWV0ZSBxdWUgcG9pZGEgYXh1ZGFyIGEgZXN0ZVxuIgorI34gIiAgaG9sZCAgICAgICAgICAgICAgICAgUHJvY2VzYSBvcyBwYXF1ZXRlcyBpbmNpZGVudGFpcyBtZXNtbyBzZSBlc3TDoW4gIgorI34gInJldGlkb3NcbiIKKyN+ICIgIGJhZC1wYXRoICAgICAgICAgICAgIEZhbGxhbiBwcm9ncmFtYXMgaW1wb3JhbnRlcyBlbiBQQVRILCBwcm9ibGVtYSAiCisjfiAic2VndXJvXG4iCisjfiAiICBub3Qtcm9vdCAgICAgICAgICAgICBUZW50YSAoZGVzKWluc3RhbGFyIGNvdXNhcyBpbmNsdXNvIHNlbiBzZXIgcm9vdFxuIgorI34gIiAgb3ZlcndyaXRlICAgICAgICAgICAgU29icmVzY3JpYmUgdW4gZmljaGVpcm8gZHVuIHBhcXVldGUgY29uIG91dHJvXG4iCisjfiAiICBvdmVyd3JpdGUtZGl2ZXJ0ZWQgICBTb2JyZXNjcmliZSB1biBmaWNoZWlybyBkZXN2aWFkbyBjdW4gc2VuIGRlc3ZpYXJcbiIKKyN+ICIgIGJhZC12ZXJpZnkgICAgICAgICAgIEluc3RhbGEgYcOtbmRhIHF1ZSBzZSBmYWxsZSBhIHByb2JhIGRlICIKKyN+ICJhdXRlbnRpY2lkYWRlXG4iCisjfiAiICBkZXBlbmRzLXZlcnNpb24gWyFdICBDb252aXJ0ZSBvcyBlcnJvcyBkZSBkZXBlbmRlbmNpYSBwb3IgdmVyc2nDs24gZW4gIgorI34gImF2aXNvc1xuIgorI34gIiAgZGVwZW5kcyBbIV0gICAgICAgICAgQ29udmlydGUgdMOzZG9sb3MgZXJyb3MgZGUgZGVwZW5kZW5jaWFzIGVuIGF2aXNvc1xuIgorI34gIiAgY29uZm5ldyBbIV0gICAgICAgICAgRW1wcmVnYSBzZW1wcmUgb3Mgbm92b3MgZmljaGVpcm9zIGRlICIKKyN+ICJjb25maWd1cmFjacOzblxuIgorI34gIiAgY29uZm9sZCBbIV0gICAgICAgICAgRW1wcmVnYSBzZW1wcmUgb3MgZmljaGVpcm9zIGRlIGNvbmZpZ3VyYWNpw7NuICIKKyN+ICJhbnRpZ29zXG4iCisjfiAiICBjb25mZGVmIFshXSAgICAgICAgICBFbXByZWdhIGEgb3BjacOzbiBwb3IgZGVmZWN0byBwYXJhIGZpY2hlaXJvcyBkZVxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgY29uZmlndXJhY2nDs24gbm92b3MuIFNlIG5vbiBoYWkgdW5oYSwgaGFsbGUgIgorI34gInByZWd1bnRhclxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgc2Ugbm9uIGTDoSB0YW3DqW4gdW5oYSBvcGNpw7NuIGNvbmZuZXcgb3UgY29uZm9sZFxuIgorI34gIiAgY29uZm1pc3MgWyFdICAgICAgICAgU2VtcHJlIGluc3RhbGEgb3MgZmljaGVpcm9zIGRlIGNvbmZpZ3VyYWNpw7NuIHF1ZSAiCisjfiAiZmFsbGFuXG4iCisjfiAiICBicmVha3MgWyFdICAgICAgICAgICBJbnN0YWxhIGluY2x1c28gc2UgaGFiw61hIHJvbXBlciBvdXRybyBwYXF1ZXRlXG4iCisjfiAiICBjb25mbGljdHMgWyFdICAgICAgICBQZXJtaXRlIGluc3RhbGFyIHBhcXVldGVzIHF1ZSB0ZcOxZW4gdW4gY29uZmxpY3RvXG4iCisjfiAiICBhcmNoaXRlY3R1cmUgWyFdICAgICBQcm9jZXNhIGluY2x1c28gcGFxdWV0ZXMgZHVuaGEgYXJxdWl0ZWN0dXJhICIKKyN+ICJpbmNvcnJlY3RhXG4iCisjfiAiICBvdmVyd3JpdGUtZGlyIFshXSAgICBTb2JyZXNjcmliZSB1biBkaXJlY3RvcmlvIGR1biBwYXF1ZXRlIGN1biAiCisjfiAiZmljaGVpcm9cbiIKKyN+ICIgIHJlbW92ZS1yZWluc3RyZXEgWyFdIEVsaW1pbmEgcGFxdWV0ZXMgcXVlIHByZWNpc2FuIGR1bmhhIGluc3RhbGFjacOzblxuIgorI34gIiAgcmVtb3ZlLWVzc2VudGlhbCBbIV0gRWxpbWluYSB1biBwYXF1ZXRlIGVzZW5jaWFsXG4iCisjfiAiXG4iCisjfiAiQVZJU08gLSBvIGVtcHJlZ28gZGFzIG9wY2nDs25zIG1hcmNhZGFzIFshXSBwb2RlIGRhbmFyIGdyYXZlbWVudGUgYSBzw7phXG4iCisjfiAiaW5zdGFsYWNpw7NuLiBPIGZvcnphZG8gZGFzIG9wY2nDs25zIG1hcmNhZGFzIFsqXSBlc3TDoSBhY3RpdmFkbyBwb3IgIgorI34gImRlZmVjdG8uXG4iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBkcGtnLXNwbGl0IHRvIHNlZSBpZiBpdCdzIHBhcnQgb2YgYSBtdWx0aXBhcnRlciIKKyN+IG1zZ3N0ciAiIgorI34gIm5vbiBzZSBwdWlkbyBleGVjdXRhciBkcGtnLXNwbGl0IHBhcmEgdmVyIHNlIMOpIHBhcnRlIGR1biBhcnF1aXZvICIKKyN+ICJtdWx0aXBhcnRlIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWNsIGRlYnNpZy12ZXJpZnkiCisjfiBtc2dzdHIgIm5vbiBzZSBwdWlkbyBleGVjdXRhciBkZWJzaWctdmVyaWZ5IgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgZHBrZy1kZWIgdG8gZXh0cmFjdCBjb250cm9sIGluZm9ybWF0aW9uIgorI34gbXNnc3RyICIiCisjfiAibm9uIHNlIHB1aWRvIGV4ZWN1dGFyIGRwa2ctZGViIHBhcmEgZXh0cmFlciBhIGluZm9ybWFjacOzbiBkZSBjb250cm9sIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGV4ZWMgZHBrZy1kZWIgdG8gZ2V0IGZpbGVzeXN0ZW0gYXJjaGl2ZSIKKyN+IG1zZ3N0ciAiIgorI34gIm5vbiBzZSBwb2RlIGV4ZWN1dGFyIGRwa2ctZGViIHBhcmEgb2J0ZXIgbyBhcnF1aXZvIGRvIHNpc3RlbWEgZGUgZmljaGVpcm9zIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSBkaXNhcHBlYXJpbmcgY29udHJvbCBpbmZvIGZpbGUgYCUuMjUwcyciCisjfiBtc2dzdHIgIiIKKyN+ICJub24gc2UgcG9kZSBib3JyYXIgbyBmaWNoZWlybyBkZSBpbmZvcm1hY2nDs24gZGUgY29udHJvbCBcIiUuMjUwc1wiLCBxdWUgIgorI34gImRlc2FwYXJlY2V1IgorCisjfiBtc2dpZCAiZHBrZzogJXMgbm90IGZvdW5kLlxuIgorI34gbXNnc3RyICJkcGtnOiBub24gc2UgYXRvcG91ICVzXG4iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gLi4uL0RFQklBTiIKKyN+IG1zZ3N0ciAibm9uIHNlIHB1aWRvIGNhbWJpYXIgYSAuLi4vREVCSUFOIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgdGFyIC1jZiIKKyN+IG1zZ3N0ciAibm9uIHNlIHB1aWRvIGV4ZWN1dGFyIHRhciAtY2YiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gbWFrZSB0bXBmaWxlIChjb250cm9sKSIKKyN+IG1zZ3N0ciAibm9uIHNlIHB1aWRvIGNyZWFyIG8gZmljaGVpcm8gdGVtcG9yYWwgKGNvbnRyb2wpIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHVubGluayB0bXBmaWxlIChjb250cm9sKSwgJXMiCisjfiBtc2dzdHIgIm5vbiBzZSBwdWlkbyBib3JyYXIgbyBmaWNoZWlybyB0ZW1wb3JhbCAoY29udHJvbCksICVzIgorCisjfiBtc2dpZCAiY29udHJvbCIKKyN+IG1zZ3N0ciAiY29udHJvbCIKKworI34gbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdG1wZmlsZSAoY29udHJvbCkiCisjfiBtc2dzdHIgIm5vbiBzZSBwdWlkbyByZXRyb2NlZGVyIG5vIGZpY2hlaXJvIHRlbXBvcmFsIChjb250cm9sKSIKKworI34gbXNnaWQgImZhaWxlZCB0byBmc3RhdCB0bXBmaWxlIChjb250cm9sKSIKKyN+IG1zZ3N0ciAibm9uIHNlIGF0b3BvdSBvIGZpY2hlaXJvIHRlbXBvcmFsIChjb250cm9sKSIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIGZpbmQiCisjfiBtc2dzdHIgIm5vbiBzZSBwdWlkbyBleGVjdXRhciBmaW5kIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgc2ggLWMgbXYgZm9vLyogJmMiCisjfiBtc2dzdHIgIm5vbiBzZSBwdWlkbyBleGVjdXRhciBzaCAtYyBtdiBmb28vKiAmYyIKKworI34gbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtICUuMjUwcyBsZW5ndGggY29udGFpbnMgbnVsbHMiCisjfiBtc2dzdHIgIiIKKyN+ICJvIGZpY2hlaXJvIFwiJS4yNTBzXCIgZXN0w6EgY29ycm9tcGlkbyAtIFwiJS4yNTBzXCIgY29udMOpbiBjYXJhY3RlcmVzIG51bG9zIgorCisjfiBtc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gbmVnYXRpdmUgbWVtYmVyIGxlbmd0aCAlemkiCisjfiBtc2dzdHIgIiIKKyN+ICJvIGZpY2hlaXJvIFwiJS4yNTBzXCIgZXN0w6EgY29ycm9tcGlkbyAtIGxvbnhpdHVkZSBkbyBtZW1icm8gbmVnYXRpdmEgJXppIgorCisjfiBtc2dpZCAiZmFpbGVkIGdldHRpbmcgdGhlIGN1cnJlbnQgZmlsZSBwb3NpdGlvbiIKKyN+IG1zZ3N0ciAibm9uIHNlIHB1aWRvIG9idGVyIGEgcG9zaWNpw7NuIGFjdHVhbCBubyBmaWNoZWlybyIKKworI34gbXNnaWQgImZhaWxlZCBzZXR0aW5nIHRoZSBjdXJyZW50IGZpbGUgcG9zaXRpb24iCisjfiBtc2dzdHIgIm5vbiBzZSBwdWlkbyBlc3RhYmxlY2VyIGEgcG9zaWNpw7NuIGFjdHVhbCBubyBmaWNoZWlybyIKKworI34gbXNnaWQgInZlcnNpb24gbnVtYmVyIgorI34gbXNnc3RyICJuw7ptZXJvIGRlIHZlcnNpw7NuIgorCisjfiBtc2dpZCAiaGVhZGVyIGluZm8gbWVtYmVyIgorI34gbXNnc3RyICJtZW1icm8gZGEgaW5mb3JtYWNpw7NuIGRlIGNhYmVjZWlyYSIKKworIywgZnV6enkKKyN+fCBtc2dpZCAic2tpcHBlZCBtZW1iZXIgZGF0YSBmcm9tICVzIgorI34gbXNnaWQgInNraXBwZWQgY29udHJvbCBhcmVhIGZyb20gJXMiCisjfiBtc2dzdHIgIm9tw610ZW5zZSBkYXRvcyBkbyBtZW1icm8gZGUgJXMiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSB0ZW1wb3JhcnkgZGlyZWN0b3J5IgorI34gbXNnc3RyICJub24gc2UgcHVpZG8gY3JlYXIgdW4gbm9tZSBwYXJhIG8gZGlyZWN0b3JpbyB0ZW1wb3JhbCIKKworI34gbXNnaWQgImluZm9fc3BldyIKKyN+IG1zZ3N0ciAiaW5mb19zcGV3IgorCisjLCBmdXp6eQorI358IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBkcGtnLWRlYiB0byBleHRyYWN0IGNvbnRyb2wgaW5mb3JtYXRpb24iCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgZHBrZy1kZWIgdG8gZXh0cmFjdCBmaWVsZCB2YWx1ZSIKKyN+IG1zZ3N0ciAiIgorI34gIm5vbiBzZSBwdWlkbyBleGVjdXRhciBkcGtnLWRlYiBwYXJhIGV4dHJhZXIgYSBpbmZvcm1hY2nDs24gZGUgY29udHJvbCIKKworIywgZnV6enkKKyN+fCBtc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSAlczogJXMiCisjfiBtc2dpZCAidW5hYmxlIHRvIHN0YXQgJXM6ICVzIgorI34gbXNnc3RyICJub24gc2UgcG9kZSBjcmVhciAlczogJXMiCisKKyN+IG1zZ2lkICJzbGF2ZSBuYW1lICVzIGR1cGxpY2F0ZWQiCisjfiBtc2dzdHIgIm5vbWUgZGUgZXNjcmF2byAlcyBkdXBsaWNhZG8iCisKKyN+IG1zZ2lkICJzbGF2ZSBsaW5rICVzIGR1cGxpY2F0ZWQiCisjfiBtc2dzdHIgImxpZ2F6w7NuIGVzY3JhdmEgJXMgZHVwbGljYWRhIgorCisjfiBtc2dpZCAiJWQgcmVxdWVzdGVkIGNvbnRyb2wgY29tcG9uZW50cyBhcmUgbWlzc2luZyIKKyN+IG1zZ3N0ciAiRmFsbGFuICVkIGNvbXBvw7FlbnRlcyBkZSBjb250cm9sIHNvbGljaXRhZG9zIgorCisjfiBtc2dpZCAiY2F0IChkYXRhKSIKKyN+IG1zZ3N0ciAiY2F0IChkYXRvcykiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gb3BlbiBwaXBlIGRlc2NyaXB0b3IgYDEnIGluIHBhc3RlIgorI34gbXNnc3RyICJub24gc2UgcHVpZG8gYWJyaXIgbyBkZXNjcml0b3IgZGUgY2FubGUgXCIxXCIgcGFyYSBwZWdhciIKKworI34gbXNnaWQgImZhaWxlZCB0byB3cml0ZSB0byBnemlwIC1kYyIKKyN+IG1zZ3N0ciAibm9uIHNlIHB1aWRvIGVzY3JpYmlyIGVuIGd6aXAgLWRjIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGNsb3NlIGd6aXAgLWRjIgorI34gbXNnc3RyICJub24gc2UgcHVpZG8gcGVjaGFyIGd6aXAgLWRjIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHN5c2NhbGwgbHNlZWsgdG8gZmlsZXMgYXJjaGl2ZSBwb3J0aW9uIgorI34gbXNnc3RyICJub24gc2UgcHVpZG8gY2hhbWFyIGEgbHNlZWsgcGFyYSBhIHBvcmNpw7NuIGRlIGZpY2hlaXJvcyBkbyBhcnF1aXZvIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGV4ZWMgbWtzcGxpdCIKKyN+IG1zZ3N0ciAibm9uIHNlIHBvZGUgZXhlY3V0YXIgbWtzcGxpdCIKKworI34gbXNnaWQgIiIKKyN+ICJcbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisjfiAiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi4iCisjfiBtc2dzdHIgIiIKKyN+ICJcbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisjfiAiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi4iCisKKyN+IG1zZ2lkICJ0d28gY29tbWFuZHMgc3BlY2lmaWVkOiAlcyBhbmQgLS0lcyIKKyN+IG1zZ3N0ciAiZXNwZWNpZmljw6Fyb25zZSBkw7phcyBvcmRlczogJXMgZSAtLSVzIgorCisjfiBtc2dpZCAiLS0lcyBuZWVkcyBhIGRpdmVydC10byBhcmd1bWVudCIKKyN+IG1zZ3N0ciAiLS0lcyBwcmVjaXNhIGR1biBhcmd1bWVudG8gcXVlIGluZGlxdWUgb25kZSBkZXN2aWFyIgorCisjfiBtc2dpZCAiLS0lcyBuZWVkcyBhIDxwYWNrYWdlPiBhcmd1bWVudCIKKyN+IG1zZ3N0ciAiLS0lcyBwcmVjaXNhIGR1biBhcmd1bWVudG8gZGUgbm9tZSBkZSBwYXF1ZXRlIgorCisjfiBtc2dpZCAiY2Fubm90IG9wZW4gZGl2ZXJzaW9uczogJXMiCisjfiBtc2dzdHIgIm5vbiBzZSBwdWlkbyBhYnJpciBvIGZpY2hlaXJvIGRlIGRlc3bDrW9zOiAlcyIKKworI34gbXNnaWQgIm1pc3NpbmcgYWx0bmFtZSIKKyN+IG1zZ3N0ciAiZmFsbGEgbyBub21lIGFsdGVybmF0aXZvIgorCisjfiBtc2dpZCAiaW50ZXJuYWwgZXJyb3IgLSBiYWQgbW9kZSBgJXMnIgorI34gbXNnc3RyICJlcnJvIGludGVybm8gLSBtb2RvIFwiJXNcIiBpbmNvcnJlY3RvIgorCisjfiBtc2dpZCAiY2Fubm90IHN0YXQgb2xkIG5hbWUgYCVzJzogJXMiCisjfiBtc2dzdHIgIm5vbiBzZSBhdG9wYSBvIG5vbWUgYW50aWdvIFwiJXNcIjogJXMiCisKKyN+IG1zZ2lkICJyZW5hbWU6IHJlbmFtZSBgJXMnIHRvIGAlcyc6ICVzIgorI34gbXNnc3RyICJyZW5hbWU6IGNhbWJpbyBkbyBub21lIGRlIFwiJXNcIiBhIFwiJXNcIjogJXMiCisKKyN+IG1zZ2lkICJjcmVhdGUgZGl2ZXJzaW9ucy1uZXc6ICVzIgorI34gbXNnc3RyICJjcmVhY2nDs24gZG8gZmljaGVpcm8gZGl2ZXJzaW9ucy1uZXc6ICVzIgorCisjfiBtc2dpZCAid3JpdGUgZGl2ZXJzaW9ucy1uZXc6ICVzIgorI34gbXNnc3RyICJlc2NyaXR1cmEgZG8gZmljaGVpcm8gZGl2ZXJzaW9ucy1uZXc6ICVzIgorCisjfiBtc2dpZCAiY2xvc2UgZGl2ZXJzaW9ucy1uZXc6ICVzIgorI34gbXNnc3RyICJwZWNoZSBkbyBmaWNoZWlybyBkaXZlcnNpb25zLW5ldzogJXMiCisKKyN+IG1zZ2lkICJjcmVhdGUgbmV3IGRpdmVyc2lvbnMtb2xkOiAlcyIKKyN+IG1zZ3N0ciAiY3JlYWNpw7NuIGRvIG5vdm8gZmljaGVpcm8gZGl2ZXJzaW9ucy1vbGQ6ICVzIgorCisjfiBtc2dpZCAiaW5zdGFsbCBuZXcgZGl2ZXJzaW9uczogJXMiCisjfiBtc2dzdHIgImluc3RhbGFjacOzbiBkZSBub3ZvcyBkZXN2w61vczogJXMiCisKKyN+IG1zZ2lkICJpbnRlcm5hbCBlcnJvcjogJXMgY29ycnVwdDogJXMiCisjfiBtc2dzdHIgImVycm8gaW50ZXJubzogJXMgZXN0w6EgY29ycm9tcGlkbzogJXMiCisKKyN+IG1zZ2lkICJkcGtnLWRlYiAtIGVycm9yOiAlcyAoYCVzJykgZG9lc24ndCBjb250YWluIGFueSBkaWdpdHNcbiIKKyN+IG1zZ3N0ciAiZHBrZy1kZWIgLSBlcnJvOiAlcyAoXCIlc1wiKSBub24gY29udMOpbiBuaW5nw7puIGTDrXhpdG9cbiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJEZWJpYW4gcmV2aXNpb24iCisjfiBtc2dzdHIgIiVzIGRlIERlYmlhbiwgdmVyc2nDs24gJXMuXG4iCisKKyN+IG1zZ2lkICIlZCBlcnJvcnMgaW4gY29udHJvbCBmaWxlIgorI34gbXNnc3RyICIlZCBlcnJvcyBubyBmaWNoZWlybyBkZSBjb250cm9sIgorCisjLCBmdXp6eQorI358IG1zZ2lkICJ1bmFibGUgdG8gcmVhZCAlczogJXMiCisjfiBtc2dpZCAiY2FuJ3QgcmVhZGRpciAlczogJXMiCisjfiBtc2dzdHIgIm5vbiBzZSBwb2RlIGxlciAlczogJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgaW4gYnVmZmVyX3dyaXRlKGZkKSAoJWksIHJldD0lbGkpOiAlcyIKKyN+IG1zZ3N0ciAiZmFsbG8gZW4gYnVmZmVyX3dyaXRlKGZkKSAoJWksIHJldD0lbGkpOiAlcyIKKworI34gbXNnaWQgImVvZiBpbiBidWZmZXJfd3JpdGUoc3RyZWFtKTogJXMiCisjfiBtc2dzdHIgImZpbiBkZSBmaWNoZWlybyBlbiBidWZmZXJfd3JpdGUoc3RyZWFtKTogJXMiCisKKyN+IG1zZ2lkICJlcnJvciBpbiBidWZmZXJfd3JpdGUoc3RyZWFtKTogJXMiCisjfiBtc2dzdHIgImVycm8gZW4gYnVmZmVyX3dyaXRlKHN0cmVhbSk6ICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIGluIGJ1ZmZlcl9yZWFkKGZkKTogJXMiCisjfiBtc2dzdHIgImZhbGxvIGVuIGJ1ZmZlcl9yZWFkKGZkKTogJXMiCisKKyN+IG1zZ2lkICJlcnJvciBpbiBidWZmZXJfcmVhZChzdHJlYW0pOiAlcyIKKyN+IG1zZ3N0ciAiZXJybyBlbiBidWZmZXJfcmVhZChzdHJlYW0pOiAlcyIKKworIywgZnV6enkKKyN+IG1zZ2lkICIlcyByZXR1cm5lZCBlcnJvciBleGl0IHN0YXR1cyAlZCIKKyN+IG1zZ3N0ciAibyBzdWJwcm9jZXNvICVzIGRldm9sdmV1IG8gZXN0YWRvIGRlIHNhw61kYSBkZSBlcnJvICVkIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiVzIGtpbGxlZCBieSBzaWduYWwgKCVzKSVzIgorI34gbXNnc3RyICJvIHN1YnByb2Nlc28gJXMgbW9ycmV1IHBvciB1biBzaW5hbCAoJXMpJXMiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiIgorI34gIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSB2ZXJzaW9uIDIgb3JcbiIKKyN+ICJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIlxuIgorI34gIkVzdGUgw6kgc29mdHdhcmUgbGlicmU7IHZleGEgYSBMaWNlbmNpYSBQw7pibGljYSBYZXJhbCBkZSBHTlUgKEdOVSBHUEwpICIKKyN+ICJ2ZXJzacOzblxuIgorI34gIjIgb3UgdW5oYSBwb3N0ZXJpb3IgcGFyYSBhcyBjb25kaWNpw7NucyBkZSBjb3BpYS4gTk9OIGhhaSBnYXJhbnTDrWEuXG4iCisKKyN+IG1zZ2lkICIiCisjfiAiXG4iCisjfiAiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbmNlIHZlcnNpb24gMiBvclxuIgorI34gImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LlxuIgorI34gbXNnc3RyICIiCisjfiAiXG4iCisjfiAiRXN0ZSDDqSBzb2Z0d2FyZSBsaWJyZTsgdmV4YSBhIExpY2VuY2lhIFDDumJsaWNhIFhlcmFsIGRlIEdOVSAoR05VIEdQTCkgIgorI34gInZlcnNpw7NuXG4iCisjfiAiMiBvdSB1bmhhIHBvc3RlcmlvciBwYXJhIGFzIGNvbmRpY2nDs25zIGRlIGNvcGlhLiBOT04gaGFpIGdhcmFudMOtYS5cbiIKKworI34gbXNnaWQgIiVzOiBmYWlsZWQgdG8gZXhlYyAnJXMgJXMnIgorI34gbXNnc3RyICIlczogbm9uIHNlIHB1aWRvIGV4ZWN1dGFyIFwiJXMgJXNcIiIKKworI34gbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIGVycm9yOiByZWFkOiBgJXMnIgorI34gbXNnc3RyICIlczogZXJybyBpbnRlcm5vIGRlIGd6aXA6IGxlY3R1cmE6IFwiJXNcIiIKKworI34gbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIGVycm9yOiB3cml0ZTogYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IGVycm8gaW50ZXJubyBkZSBnemlwOiBlc2NyaXR1cmE6IFwiJXNcIiIKKworI34gbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIGVycm9yOiByZWFkKCVpKSAhPSB3cml0ZSglaSkiCisjfiBtc2dzdHIgIiVzOiBlcnJvIGludGVybm8gZGUgZ3ppcDogbMOpcm9uc2UgJWkgZSBlc2NyaWLDrXJvbnNlICVpIgorCisjfiBtc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIGVycm9yOiByZWFkOiBgJXMnIgorI34gbXNnc3RyICIlczogZXJybyBpbnRlcm5vIGRlIGJ6aXAyOiBsZWN0dXJhOiBcIiVzXCIiCisKKyN+IG1zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgZXJyb3I6IHdyaXRlOiBgJXMnIgorI34gbXNnc3RyICIlczogZXJybyBpbnRlcm5vIGRlIGJ6aXAyOiBlc2NyaXR1cmE6IFwiJXNcIiIKKworI34gbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiBlcnJvcjogcmVhZCglaSkgIT0gd3JpdGUoJWkpIgorI34gbXNnc3RyICIlczogZXJybyBpbnRlcm5vIGRlIGJ6aXAgMjogbMOpcm9uc2UgJWkgZSBlc2NyaWLDrXJvbnNlICVpIgorCisjfiBtc2dpZCAiRG9uJ3QgZm9yZ2V0IHRvIGZvcmVncm91bmQgKGBmZycpIHRoaXMgcHJvY2VzcyB3aGVuIHlvdSdyZSBkb25lICFcbiIKKyN+IG1zZ3N0ciAiIgorI34gIk5vbiBlc3F1ZXphIHZvbHZlciBwb8OxZXIgZXN0ZSBwcm9jZXNvIGVuIHByaW1laXJvIHBsYW5vIChcImZnXCIpIGNhbmRvICIKKyN+ICJ0ZcOxYSByZW1hdGFkby5cbiIKKworI34gbXNnaWQgIiIKKyN+ICJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAyIG9yXG4iCisjfiAibGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuXG4iCisjfiAiU2VlICVzIC0tbGljZW5zZSBmb3IgY29weXJpZ2h0IGFuZCBsaWNlbnNlIGRldGFpbHMuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJFc3RlIMOpIHNvZnR3YXJlIGxpYnJlOyB2ZXhhIGEgTGljZW5jaWEgUMO6YmxpY2EgWGVyYWwgZGUgR05VIChHTlUgR1BMKSAiCisjfiAidmVyc2nDs25cbiIKKyN+ICIyIG91IHVuaGEgcG9zdGVyaW9yIHBhcmEgYXMgY29uZGljacOzbnMgZGUgY29waWEuIE5PTiBoYWkgZ2FyYW50w61hLlxuIgorI34gIlZleGEgJXMgLS1saWNlbnNlIHBhcmEgb3MgZGV0YWxsZXMgZGUgY29weXJpZ2h0IGUgbGljZW5jaWEuXG4iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gZ2V0IHVuaXF1ZSBmaWxlbmFtZSBmb3IgY29udHJvbCBpbmZvIgorI34gbXNnc3RyICIiCisjfiAibm9uIHNlIHB1aWRvIG9idGVyIHVuIG5vbWUgZGUgZmljaGVpcm8gw7puaWNvIHBhcmEgYSBpbmZvcm1hY2nDs24gZGUgY29udHJvbCIKKworI34gbXNnaWQgIkRlYmlhbiBgJXMnIHBhY2thZ2UgbWFuYWdlbWVudCBwcm9ncmFtIHF1ZXJ5IHRvb2xcbiIKKyN+IG1zZ3N0ciAiRmVycmFtZW50YSBkZSBjb25zdWx0YSBkZSB4ZXN0acOzbiBkZSBwYXF1ZXRlcyBcIiVzXCIgZGUgRGViaWFuXG4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiIgorI34gIlVzZSAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgcXVlcnlpbmcgcGFja2FnZXM7XG4iCisjfiAiVXNlIC0tbGljZW5zZSBmb3IgY29weXJpZ2h0IGxpY2Vuc2UgYW5kIGxhY2sgb2Ygd2FycmFudHkgKEdOVSBHUEwpLiIKKyN+IG1zZ3N0ciAiIgorI34gIkVtcHJlZ3VlIC0taGVscCBwYXJhIG9idGVyIGF4dWRhIHNvYnJlIGNvbnN1bHRhcyBzb2JyZSBwYXF1ZXRlcztcbiIKKyN+ICJFbXByZWd1ZSAtLWxpY2Vuc2UgcGFyYSBhIGxpY2VuY2lhIGRlIGNvcHlyaWdodCBlIGZhbGxhIGRlIGdhcmFudMOtYSAoR05VICIKKyN+ICJHUEwpLlxuIgorI34gIlxuIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGNob3duICVzOiAlcyIKKyN+IG1zZ3N0ciAibm9uIHNlIHB1aWRvIGNhbWJpYXIgbyBwcm9waWV0YXJpbyBkZSAlczogJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gY2htb2QgJXM6ICVzIgorI34gbXNnc3RyICJub24gc2UgcHVpZG8gY2FtYmlhciBvcyBwZXJtaXNvcyBkZSAlczogJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZm9yayBmb3IgY2xlYW51cCIKKyN+IG1zZ3N0ciAibm9uIHNlIHB1aWRvIGxhbnphciB1biBwcm9jZXNvIGRlIGZvbmRvIHBhcmEgZmFjZXIgbGltcGV6YSIKKworI34gbXNnaWQgImZhaWxlZCB0byB3YWl0IGZvciBybSBjbGVhbnVwIgorI34gbXNnc3RyICJub24gc2UgcHVpZG8gYWdhcmRhciBwb2xvIHJtIHF1ZSBmYWPDrWEgbGltcGV6YSIKKworI34gbXNnaWQgInJtIGNsZWFudXAgZmFpbGVkLCBjb2RlICVkXG4iCisjfiBtc2dzdHIgIm8gcm0gcXVlIGZhY8OtYSBsaW1wZXphIGZhbGxvdSwgY8OzZGlnbyAlZFxuIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgcm0gLXJmIgorI34gbXNnc3RyICJub24gc2UgcHVpZG8gZXhlY3V0YXIgcm0gLXJmIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHJlYWQgYGNvbnRyb2wnIChpbiBgJS4yNTVzJykiCisjfiBtc2dzdHIgIm5vbiBzZSBwdWlkbyBsZXIgXCJjb250cm9sXCIgKGVuIFwiJS4yNTVzXCIpIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHNlZWsgYmFjayIKKyN+IG1zZ3N0ciAibm9uIHNlIHBvZGUgcmV0cm9jZWRlciIKKworI34gbXNnaWQgInVua25vd24gZGF0YSB0eXBlIGAlaScgaW4gYnVmZmVyX3dyaXRlXG4iCisjfiBtc2dzdHIgInRpcG8gZGUgZGF0b3MgXCIlaVwiIGRlc2Nvw7FlY2lkbyBlbiBidWZmZXJfd3JpdGVcbiIKKworI34gbXNnaWQgInVua25vd24gZGF0YSB0eXBlIGAlaScgaW4gYnVmZmVyX3JlYWRcbiIKKyN+IG1zZ3N0ciAidGlwbyBkZSBkYXRvcyBcIiVpXCIgZGVzY2/DsWVjaWRvIGVuIGJ1ZmZlcl9yZWFkXG4iCisKKyN+IG1zZ2lkICJ3YWl0IGZvciBzaGVsbCBmYWlsZWQiCisjfiBtc2dzdHIgImhvdWJvIHVuIGZhbGxvIGFvIGFnYXJkYXIgcG9sbyBpbnTDqXJwcmV0ZSBkZSBvcmRlcyIKKworI34gbXNnaWQgInJlYWQgZXJyb3IgaW4gZGl2ZXJzaW9ucyBbaV0iCisjfiBtc2dzdHIgImVycm8gZGUgbGVjdHVyYSBubyBmaWNoZWlybyBkZSBkZXN2w61vcyBbaV0iCisKKyN+IG1zZ2lkICJ1bmxpbmsiCisjfiBtc2dzdHIgImJvcnJhciIKKworI34gbXNnaWQgImNobW9kIgorI34gbXNnc3RyICJjYW1iaWFyIG9zIHBlcm1pc29zIGRlIgorCisjfiBtc2dpZCAiZGVsZXRlIgorI34gbXNnc3RyICJib3JyYXIiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiZmFpbGVkIHRvICVzICclLjI1NXMnIgorI34gbXNnc3RyICJub24gc2UgcHVpZG8gJXMgXCIlJS4yNTVzXCIiCisKKyN+IG1zZ2lkICJ3YWl0IGZvciBkcGtnLXNwbGl0IGZhaWxlZCIKKyN+IG1zZ3N0ciAiYSBlc3BlcmEgcG9yIGRwa2ctc3BsaXQgZmFsbG91IgorCisjfiBtc2dpZCAiY2Fubm90IHJlbW92ZSBmaWxlIGAlLjI1MHMnIgorI34gbXNnc3RyICJub24gc2UgcG9kZSBib3JyYXIgbyBmaWNoZWlybyBcIiUuMjUwc1wiIgorCisjfiBtc2dpZCAiIgorI34gIlxuIgorI34gIkNvcHlyaWdodCAoQykgMjAwMCBXaWNoZXJ0IEFra2VybWFuLiIKKyN+IG1zZ3N0ciAiIgorI34gIlxuIgorI34gIkNvcHlyaWdodCAoQykgMjAwMCBXaWNoZXJ0IEFra2VybWFuLiIKKworI34gbXNnaWQgIm5vIG1vZGUgc3BlY2lmaWVkIgorI34gbXNnc3RyICJub24gc2UgZXNwZWNpZmljb3UgdW4gbW9kbyIKKworI34gbXNnaWQgImlsbGVnYWwgdXNlciAlcyIKKyN+IG1zZ3N0ciAidXN1YXJpbyAlcyBub24gdsOhbGlkbyIKKworI34gbXNnaWQgIm5vbi1leGlzdGluZyB1c2VyICVzIgorI34gbXNnc3RyICJ1c3VhcmlvICVzIG5vbiBleGlzdGVudGUiCisKKyN+IG1zZ2lkICJpbGxlZ2FsIGdyb3VwICVzIgorI34gbXNnc3RyICJncnVwbyAlcyBub24gdsOhbGlkbyIKKworI34gbXNnaWQgIm5vbi1leGlzdGluZyBncm91cCAlcyIKKyN+IG1zZ3N0ciAiZ3J1cG8gJXMgbm9uIGV4aXN0ZW50ZSIKKworI34gbXNnaWQgImlsbGVnYWwgbW9kZSAlcyIKKyN+IG1zZ3N0ciAibW9kbyAlcyBub24gdsOhbGlkbyIKKworI34gbXNnaWQgImFib3J0aW5nIgorI34gbXNnc3RyICJhIGFib3J0YXIiCisKKyN+IG1zZ2lkICJjYW5ub3Qgb3BlbiBzdGF0b3ZlcnJpZGU6ICVzIgorI34gbXNnc3RyICJub24gc2UgcG9kZSBhYnJpciBvIGZpY2hlaXJvIHN0YXRvdmVycmlkZTogJXMiCisKKyN+IG1zZ2lkICJNdWx0aXBsZSBvdmVycmlkZXMgZm9yIFwiJXNcIiwgYWJvcnRpbmciCisjfiBtc2dzdHIgIkV4aXN0ZW4gdmFyaWFzIHN1YnN0aXR1Y2nDs25zIHBhcmEgXCIlc1wiLCBhYsOzcnRhc2UiCisKKyN+IG1zZ2lkICJmYWlsZWQgd3JpdGUgZHVyaW5nIGhhc2hyZXBvcnQiCisjfiBtc2dzdHIgImZhbGxvdSBhIGVzY3JpdHVyYSBlbiBoYXNocmVwb3J0IgorCisjfiBtc2dpZCAiY29uZmlndXJhdGlvbiBlcnJvcjogdW5rbm93biBvcHRpb24gJXMiCisjfiBtc2dzdHIgImVycm8gbmEgY29uZmlndXJhY2nDs246IG9wY2nDs24gJXMgZGVzY2/DsWVjaWRhIgorCisjfiBtc2dpZCAiY29uZmlndXJhdGlvbiBlcnJvcjogJXMgZG9lcyBub3QgdGFrZSBhIHZhbHVlIgorI34gbXNnc3RyICJlcnJvIG5hIGNvbmZpZ3VyYWNpw7NuOiAlcyBub24gdG9tYSB1biB2YWxvciIKKworIywgZnV6enkKKyN+IG1zZ2lkICJ1bmV4ZWNwdGVkIGVuZCBvZiBsaW5lIGluIHN0YXRvdmVycmlkZSBmaWxlIgorI34gbXNnc3RyICJmaW4gZGUgbGnDsWEgaW5lc3BlcmFkYSBubyBub21lIGRvIHBhcXVldGUgbmEgbGnDsWEgJWQiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiLS1jaGVjay1zdXBwb3J0ZWQgdGFrZXMgbm8gYXJndW1lbnRzIgorI34gbXNnc3RyICJkcGtnLXRyaWdnZXIgLS1jaGVjay1zdXBwb3J0ZWQgbm9uIHRvbWEgbmluZ8O6biBhcmd1bWVudG8iCisKKyN+IG1zZ2lkICItLWZvcmdldC1vbGQtdW5hdmFpbCB0YWtlcyBubyBhcmd1bWVudHMiCisjfiBtc2dzdHIgIi0tZm9yZ2V0LW9sZC11bmF2YWlsIG5vbiB0b21hIG5pbmfDum4gYXJndW1lbnRvIgorCisjfiBtc2dpZCAiIgorI34gIlxuIgorI34gIkNvcHlyaWdodCAoQykgMTk5NCwxOTk1IElhbiBKYWNrc29uLiIKKyN+IG1zZ3N0ciAiIgorI34gIlxuIgorI34gIkNvcHlyaWdodCAoQykgMTk5NCwxOTk1IElhbiBKYWNrc29uLiIKKworI34gbXNnaWQgIiIKKyN+ICJVc2FnZTogJXMgWzxvcHRpb25zPiAuLi5dIFstLV0gPGZpbGVuYW1lPlxuIgorI34gIlxuIgorI34gIk9wdGlvbnM6XG4iCisjfiAiICAtLXNlY3Rpb24gPHJlZ2V4cD4gPHRpdGxlPlxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHB1dCB0aGUgbmV3IGVudHJ5IGluIHRoZSA8cmVnZXg+IG1hdGNoZWQgIgorI34gInNlY3Rpb25cbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICBvciBjcmVhdGUgYSBuZXcgb25lIHdpdGggPHRpdGxlPiBpZiBub24tIgorI34gImV4aXN0ZW50LlxuIgorI34gIiAgLS1tZW51ZW50cnk9PHRleHQ+ICAgICAgIHNldCB0aGUgbWVudSBlbnRyeS5cbiIKKyN+ICIgIC0tZGVzY3JpcHRpb249PHRleHQ+ICAgICBzZXQgdGhlIGRlc2NyaXB0aW9uIHRvIGJlIHVzZWQgaW4gdGhlIG1lbnUgIgorI34gImVudHJ5LlxuIgorI34gIiAgLS1pbmZvLWZpbGU9PHBhdGg+ICAgICAgIHNwZWNpZnkgaW5mbyBmaWxlIHRvIGluc3RhbGwgaW4gdGhlICIKKyN+ICJkaXJlY3RvcnkuXG4iCisjfiAiICAtLWRpci1maWxlPTxwYXRoPiAgICAgICAgc3BlY2lmeSBmaWxlIG5hbWUgb2YgaW5mbyBkaXJlY3RvcnkgZmlsZS5cbiIKKyN+ICIgIC0taW5mb2Rpcj08ZGlyZWN0b3J5PiAgICBzYW1lIGFzICctLWRpci1maWxlPTxkaXJlY3Rvcnk+L2RpcicuXG4iCisjfiAiICAtLWluZm8tZGlyPTxkaXJlY3Rvcnk+ICAgbGlrZXdpc2UuXG4iCisjfiAiICAtLWtlZXAtb2xkICAgICAgICAgICAgICAgZG8gbm90IHJlcGxhY2UgZW50cmllcyBub3IgcmVtb3ZlIGVtcHR5IG9uZXMuXG4iCisjfiAiICAtLXJlbW92ZSAgICAgICAgICAgICAgICAgcmVtb3ZlIHRoZSBlbnRyeSBzcGVjaWZpZWQgYnkgPGZpbGVuYW1lPiAiCisjfiAiYmFzZW5hbWUuXG4iCisjfiAiICAtLXJlbW92ZS1leGFjdGx5ICAgICAgICAgcmVtb3ZlIHRoZSBleGFjdCA8ZmlsZW5hbWU+IGVudHJ5LlxuIgorI34gIiAgLS10ZXN0ICAgICAgICAgICAgICAgICAgIGVuYWJsZXMgdGVzdCBtb2RlIChubyBhY3Rpb25zIHRha2VuKS5cbiIKKyN+ICIgIC0tZGVidWcgICAgICAgICAgICAgICAgICBlbmFibGVzIGRlYnVnIG1vZGUgKHNob3cgbW9yZSBpbmZvcm1hdGlvbikuXG4iCisjfiAiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgZG8gbm90IHNob3cgb3V0cHV0IG1lc3NhZ2VzLlxuIgorI34gIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisjfiAiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIkVtcHJlZ286ICVzIFs8b3BjacOzbnM+IC4uLl0gWy0tXSA8ZmljaGVpcm8+XG4iCisjfiAiXG4iCisjfiAiT3BjacOzbnM6XG4iCisjfiAiICAtLXNlY3Rpb24gPGV4cHJlc2nDs24tcmVndWxhcj4gPHTDrXR1bG8+XG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgZ3JhdmEgYSBub3ZhIGVudHJhZGEgbmEgc2VjY2nDs24gcXVlIGVuY2FpeGEgIgorI34gImNvYVxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4cHJlc2nDs24gcmVndWxhciBvdSBjcmVhIHVuaGEgbm92YSBjbyB0w610dWxvXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5kaWNhZG8gc2Ugbm9uIGV4aXN0ZS5cbiIKKyN+ICIgIC0tbWVudWVudHJ5PTx0ZXh0bz4gICAgICBlc3RhYmxlY2UgYSBlbnRyYWRhIGRvIG1lbsO6LlxuIgorI34gIiAgLS1kZXNjcmlwdGlvbj08dGV4dG8+ICAgIGVzdGFibGVjZSBhIGRlc2NyaWNpw7NuIHBhcmEgYSBlbnRyYWRhIGRvICIKKyN+ICJtZW7Dui5cbiIKKyN+ICIgIC0taW5mby1maWxlPTxydXRhPiAgICAgICBpbmRpY2EgbyBmaWNoZWlybyBpbmZvIGEgaW5zdGFsYXIgbm8gIgorI34gImRpcmVjdG9yaW8uXG4iCisjfiAiICAtLWRpci1maWxlPTxydXRhPiAgICAgICAgaW5kaWNhIG8gbm9tZSBkbyBmaWNoZWlybyBkbyBkaXJlY3RvcmlvIGRlICIKKyN+ICJpbmZvLlxuIgorI34gIiAgLS1pbmZvZGlyPTxkaXJlY3RvcmlvPiAgIGlndWFsIHF1ZSBcIi0tZGlyLWZpbGU9PGRpcmVjdG9yaW8+L2RpclwiLlxuIgorI34gIiAgLS1pbmZvLWRpcj08ZGlyZWN0b3Jpbz4gIG8gbWVzbW8uXG4iCisjfiAiICAtLWtlZXAtb2xkICAgICAgICAgICAgICAgbm9uIHN1YnN0aXTDumUgZW50cmFkYXMgbmluIGVsaW1pbmEgYXMgIgorI34gImJhbGVpcmFzLlxuIgorI34gIiAgLS1yZW1vdmUgICAgICAgICAgICAgICAgIGVsaW1pbmEgYSBlbnRyYWRhIGluZGljYWRhIHBvbGEgYmFzZSBkbyAiCisjfiAiPGZpY2hlaXJvPi5cbiIKKyN+ICIgIC0tcmVtb3ZlLWV4YWN0bHkgICAgICAgICBlbGltaW5hIGEgZW50cmFkYSBkbyA8ZmljaGVpcm8+IGV4YWN0YS5cbiIKKyN+ICIgIC0tdGVzdCAgICAgICAgICAgICAgICAgICBhY3RpdmEgbyBtb2RvIGRlIHByb2JhcyAobm9uIHNlIHJlYWxpemFuICIKKyN+ICJhY2Npw7NucykuXG4iCisjfiAiICAtLWRlYnVnICAgICAgICAgICAgICAgICAgYWN0aXZhIG8gbW9kbyBkZSBkZXB1cmFjacOzbiAobcOhaXMgIgorI34gImluZm9ybWFjacOzbikuXG4iCisjfiAiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgbm9uIGFtb3NhIGFzIG1lbnNheGVzLlxuIgorI34gIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIGFtb3NhIGVzdGEgbWVuc2F4ZSBkZSBheHVkYS5cbiIKKyN+ICIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBhbW9zYSBhIHZlcnNpw7NuLlxuIgorCisjfiBtc2dpZCAiY291bGQgbm90IG9wZW4gc3RkZXJyIGZvciBvdXRwdXQhICVzIgorI34gbXNnc3RyICJub24gc2UgcHVpZG8gYWJyaXIgc3RkZXJyIHBhcmEgc2HDrWRhLiAlcyIKKworI34gbXNnaWQgIiVzOiAtLXNlY3Rpb24gbmVlZHMgdHdvIG1vcmUgYXJncyIKKyN+IG1zZ3N0ciAiJXM6IC0tc2VjdGlvbiBwcmVjaXNhIGRlIGRvdXMgb3UgbcOhaXMgYXJndW1lbnRvcyIKKworI34gbXNnaWQgIiVzOiBvcHRpb24gLS0lcyBpcyBkZXByZWNhdGVkIChpZ25vcmVkKSIKKyN+IG1zZ3N0ciAiJXM6IGEgb3BjacOzbiAtLSVzIGVzdMOhIGEgZXh0aW5ndWlyIChvbcOtdGVzZSkiCisKKyN+IG1zZ2lkICIlczogdW5rbm93biBvcHRpb24gYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IG9wY2nDs24gXCIlc1wiIGRlc2Nvw7FlY2lkYSIKKworI34gbXNnaWQgIiVzOiB0b28gbWFueSBhcmd1bWVudHMiCisjfiBtc2dzdHIgIiVzOiBhcmd1bWVudG9zIGRlIG3DoWlzIgorCisjfiBtc2dpZCAiJXM6IC0tc2VjdGlvbiBpZ25vcmVkIHdpdGggLS1yZW1vdmUiCisjfiBtc2dzdHIgIiVzOiBvbcOtdGVzZSAtLXNlY3Rpb24gY29uIC0tcmVtb3ZlIgorCisjfiBtc2dpZCAiJXM6IC0tZGVzY3JpcHRpb24gaWdub3JlZCB3aXRoIC0tcmVtb3ZlIgorI34gbXNnc3RyICIlczogb23DrXRlc2UgLS1kZXNjcmlwdGlvbiBjb24gLS1yZW1vdmUiCisKKyN+IG1zZ2lkICIlczogdGVzdCBtb2RlIC0gZGlyIGZpbGUgd2lsbCBub3QgYmUgdXBkYXRlZCIKKyN+IG1zZ3N0ciAiJXM6IG1vZG8gZGUgcHJvYmFzIC0gbm9uIHNlIGhhIGFjdHVhbGl6YXIgbyBmaWNoZWlybyBkaXIiCisKKyN+IG1zZ2lkICIlczogd2FybmluZywgaWdub3JpbmcgY29uZnVzaW5nIElORk8tRElSLUVOVFJZIGluIGZpbGUuIgorI34gbXNnc3RyICIlczogYXZpc28sIG9tw610ZXNlIGEgSU5GTy1ESVItRU5UUlkgY29uZnVzYSBkbyBmaWNoZWlyby4iCisKKyN+IG1zZ2lkICJpbnZhbGlkIGluZm8gZW50cnkiCisjfiBtc2dzdHIgImVudHJhZGEgZGUgaW5mbyBub24gdsOhbGlkYSIKKworI34gbXNnaWQgIiIKKyN+ICJcbiIKKyN+ICJObyBgU1RBUlQtSU5GTy1ESVItRU5UUlknIGFuZCBubyBgVGhpcyBmaWxlIGRvY3VtZW50cycuXG4iCisjfiAiJXM6IHVuYWJsZSB0byBkZXRlcm1pbmUgZGVzY3JpcHRpb24gZm9yIGBkaXInIGVudHJ5IC0gZ2l2aW5nIHVwXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJcbiIKKyN+ICJOb24gc2UgYXRvcGEgXCJTVEFSVC1JTkZPLURJUi1FTlRSWVwiIG5pbiBcIlRoaXMgZmlsZSBkb2N1bWVudHNcIi5cbiIKKyN+ICIlczogbm9uIHNlIHBvZGUgZGV0ZXJtaW5hciBhIGRlc2NyaWNpw7NuIGRhIGVudHJhZGEgXCJkaXJcIiAtIGFiYW5kw7NuYXNlXG4iCisKKyN+IG1zZ2lkICIlczogbm8gZmlsZSAlcywgcmV0cmlldmluZyBiYWNrdXAgZmlsZSAlcy4iCisjfiBtc2dzdHIgIiVzOiBub24gZXhpc3RlIG8gZmljaGVpcm8gJXMsIHJlY3Vww6lyYXNlIGEgY29waWEgJXMuIgorCisjfiBtc2dpZCAiJXM6IG5vIGJhY2t1cCBmaWxlICVzIGF2YWlsYWJsZSwgcmV0cmlldmluZyBkZWZhdWx0IGZpbGUuIgorI34gbXNnc3RyICIiCisjfiAiJXM6IG5vbiBoYWkgdW4gZmljaGVpcm8gZGUgY29waWEgJXMgZGlzcG/DsWlibGUsIHJlY3Vww6lyYXNlIG8gZmljaGVpcm8gcG9yICIKKyN+ICJkZWZlY3RvLiIKKworI34gbXNnaWQgIiVzOiBubyBiYWNrdXAgZmlsZSAlcyBhdmFpbGFibGUuIgorI34gbXNnc3RyICIlczogbm9uIGhhaSB1biBmaWNoZWlybyBkZSBjb3BpYSAlcyBkaXNwb8OxaWJsZS4iCisKKyN+IG1zZ2lkICIlczogbm8gZGVmYXVsdCBmaWxlICVzIGF2YWlsYWJsZSwgZ2l2aW5nIHVwLiIKKyN+IG1zZ3N0ciAiJXM6IG5vbiBoYWkgdW4gZmljaGVpcm8gcG9yIGRlZmVjdG8gJXMgZGlzcG/DsWlibGUsIGFiw7NydGFzZS4iCisKKyN+IG1zZ2lkICIlczogZmFpbGVkIHRvIGxvY2sgZGlyIGZvciBlZGl0aW5nISAlcyIKKyN+IG1zZ3N0ciAiJXM6IG5vbiBzZSBwdWlkbyBibG9xdWVhciBvIGRpcmVjdG9yaW8gcGFyYSBlZGljacOzbi4gJXMiCisKKyN+IG1zZ2lkICJ0cnkgZGVsZXRpbmcgJXM/IgorI34gbXNnc3RyICJwcm9iZSBhIGJvcnJhciAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byBvcGVuICVzOiAlcyIKKyN+IG1zZ3N0ciAibm9uIHNlIHBvZGUgYWJyaXIgJXM6ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGNsb3NlICVzIGFmdGVyIHJlYWQ6ICVzIgorI34gbXNnc3RyICJub24gc2UgcG9kZSBwZWNoYXIgJXMgdHJhbGEgbGVjdHVyYTogJXMiCisKKyN+IG1zZ2lkICIlczogZXhpc3RpbmcgZW50cnkgZm9yIGAlcycgbm90IHJlcGxhY2VkIgorI34gbXNnc3RyICIlczogbm9uIHNlIHN1YnN0aXR1w611IGEgZW50cmFkYSBleGlzdGVudGUgcGFyYSBcIiVzXCIiCisKKyN+IG1zZ2lkICIlczogcmVwbGFjaW5nIGV4aXN0aW5nIGRpciBlbnRyeSBmb3IgYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IGEgc3Vic3RpdHXDrXIgYSBlbnRyYWRhIGRlIGRpcmVjdG9yaW8gZXhpc3RlbnRlIHBhcmEgXCIlc1wiIgorCisjfiBtc2dpZCAiJXM6IGNyZWF0aW5nIG5ldyBzZWN0aW9uIGAlcyciCisjfiBtc2dzdHIgIiVzOiBhIGNyZWFyIGEgbm92YSBzZWNjacOzbiBcIiVzXCIiCisKKyN+IG1zZ2lkICIlczogbm8gc2VjdGlvbnMgeWV0LCBjcmVhdGluZyBNaXNjZWxsYW5lb3VzIHNlY3Rpb24gdG9vLiIKKyN+IG1zZ3N0ciAiIgorI34gIiVzOiBhw61uZGEgbm9uIGhhaSBzZWNjacOzbnMsIHRhbcOpbiBzZSBjcmVhIGEgc2VjY2nDs24gXCJNaXNjZWxsYW5lb3VzXCIuIgorCisjfiBtc2dpZCAiJXM6IG5vIHNlY3Rpb24gc3BlY2lmaWVkIGZvciBuZXcgZW50cnksIHBsYWNpbmcgYXQgZW5kIgorI34gbXNnc3RyICIlczogbm9uIHNlIGluZGljb3UgdW5oYSBzZWNjacOzbiBwYXJhIGEgbm92YSBlbnRyYWRhLCBwb25zZSBhbyBmaW5hbCIKKworI34gbXNnaWQgIiVzOiBkZWxldGluZyBlbnRyeSBgJXMgLi4uJyIKKyN+IG1zZ3N0ciAiJXM6IGEgYm9ycmFyIGEgZW50cmFkYSBcIiVzIC4uLlwiIgorCisjfiBtc2dpZCAiJXM6IGVtcHR5IHNlY3Rpb24gYCVzJyBub3QgcmVtb3ZlZCIKKyN+IG1zZ3N0ciAiJXM6IG5vbiBzZSBlbGltaW5vdSBhIHNlY2Npw7NuIGJhbGVpcmEgXCIlc1wiIgorCisjfiBtc2dpZCAiJXM6IGRlbGV0aW5nIGVtcHR5IHNlY3Rpb24gYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IGEgYm9ycmFyIGEgc2VjY2nDs24gYmFsZWlyYSBcIiVzXCIiCisKKyN+IG1zZ2lkICIlczogbm8gZW50cnkgZm9yIGZpbGUgYCVzJyBhbmQgbWVudSBlbnRyeSBgJXMnIgorI34gbXNnc3RyICIiCisjfiAiJXM6IG5vbiBoYWkgdW5oYSBlbnRyYWRhIHBhcmEgbyBmaWNoZWlybyBcIiVzXCIgZSBhIGVudHJhZGEgZGUgbWVuw7ogXCIlc1wiIgorCisjfiBtc2dpZCAiJXM6IG5vIGVudHJ5IGZvciBmaWxlIGAlcyciCisjfiBtc2dzdHIgIiVzOiBub24gaGFpIHVuaGEgZW50cmFkYSBwYXJhIG8gZmljaGVpcm8gXCIlc1wiIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGJhY2t1cCBvbGQgJXMsIGdpdmluZyB1cDogJXMiCisjfiBtc2dzdHIgIm5vbiBzZSBwb2RlIGNvcGlhciBvIGZpY2hlaXJvICVzIGFudGlnbywgYWLDs3J0YXNlOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyAlczogJXMiCisjfiBtc2dzdHIgIm5vbiBzZSBwb2RlIGluc3RhbGFyIG8gbm92byAlczogJXMiCisKKyN+IG1zZ2lkICIlczogY291bGQgbm90IGJhY2t1cCAlcyBpbiAlczogJXMiCisjfiBtc2dzdHIgIiVzOiBub24gc2UgcHVpZG8gY29waWFyICVzIGVuICVzOiAlcyIKKworI34gbXNnaWQgIiVzOiB3YXJuaW5nIC0gdW5hYmxlIHRvIHVubG9jayAlczogJXMiCisjfiBtc2dzdHIgIiVzOiBhdmlzbyAtIG5vbiBzZSBwb2RlIGRlc2Jsb3F1ZWFyICVzOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byByZWFkICVzOiAlZCIKKyN+IG1zZ3N0ciAibm9uIHNlIHBvZGUgbGVyICVzOiAlZCIKKworI34gbXNnaWQgImRiZzogJXMiCisjfiBtc2dzdHIgImRlcHVyYWNpw7NuOiAlcyIKKworI34gbXNnaWQgImZhaWxlZCB0byBvcGVuIHRtcGZpbGUgKGNvbnRyb2wpLCAlcyIKKyN+IG1zZ3N0ciAibm9uIHNlIHB1aWRvIGFicmlyIG8gZmljaGVpcm8gdGVtcG9yYWwgKGNvbnRyb2wpLCAlcyIKKworI34gbXNnaWQgImZhaWxlZCB0byBvcGVuIHRtcGZpbGUgKGRhdGEpLCAlcyIKKyN+IG1zZ3N0ciAibm9uIHNlIHB1aWRvIGFicmlyIG8gZmljaGVpcm8gdGVtcG9yYWwgKGRhdG9zKSwgJXMiCisKKyN+IG1zZ2lkICJpbnZhbGlkIG51bWJlciBmb3IgLS1jb21tYW5kLWZkIgorI34gbXNnc3RyICJuw7ptZXJvIG5vbiB2w6FsaWRvIHBhcmEgLS1jb21tYW5kLWZkIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHJld2luZCBhdCBzdGFydCBvZiB2c25wcmludGYiCisjfiBtc2dzdHIgIm5vbiBzZSBwb2RlIHJldHJvY2VkZXIgYW8gY29tZXpvIGRlIHZzbnByaW50ZiIKKworI34gbXNnaWQgInVuYWJsZSB0byB0cnVuY2F0ZSBpbiB2c25wcmludGYiCisjfiBtc2dzdHIgIm5vbiBzZSBwb2RlIHRydW5jYXIgZW4gdnNucHJpbnRmIgorCisjfiBtc2dpZCAid3JpdGUgZXJyb3IgaW4gdnNucHJpbnRmIgorI34gbXNnc3RyICJlcnJvIGRlIGVzY3JpdHVyYSBlbiB2c25wcmludGYiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gc3RhdCBpbiB2c25wcmludGYiCisjfiBtc2dzdHIgIm5vbiBzZSBwb2RlIGFuYWxpemFyIHVuIGZpY2hlaXJvIGVuIHZzbnByaW50ZiIKKworI34gbXNnaWQgInVuYWJsZSB0byByZXdpbmQgaW4gdnNucHJpbnRmIgorI34gbXNnc3RyICJub24gc2UgcG9kZSByZXRyb2NlZGVyIGVuIHZzbnByaW50ZiIKKworI34gbXNnaWQgInJlYWQgZXJyb3IgaW4gdnNucHJpbnRmIHRydW5jYXRlZCIKKyN+IG1zZ3N0ciAiZXJybyBkZSBsZWN0dXJhIGVuIHZzbnByaW50ZiAodHJ1bmNhZG8pIgorCisjfiBtc2dpZCAiU3lzdGVtIGVycm9yIG5vLiVkIgorI34gbXNnc3RyICJFcnJvIGRvIHNpc3RlbWEgbsO6bWVybyAlZCIKKworI34gbXNnaWQgIlNpZ25hbCBuby4lZCIKKyN+IG1zZ3N0ciAiU2luYWwgbsO6bWVybyAlZCIKKworI34gbXNnaWQgImRwa2c6IHdhcm5pbmcgLSAlcyByZXR1cm5lZCBlcnJvciBleGl0IHN0YXR1cyAlZFxuIgorI34gbXNnc3RyICJkcGtnOiBhdmlzbyAtICVzIGRldm9sdmV1IG8gZXN0YWRvIGRlIHNhw61kYSBkZSBlcnJvICVkXG4iCisKKyN+IG1zZ2lkICJkcGtnOiB3YXJuaW5nIC0gJXMga2lsbGVkIGJ5IHNpZ25hbCAoJXMpJXNcbiIKKyN+IG1zZ3N0ciAiZHBrZzogYXZpc28gLSAlcyBtb3JyZXUgcG9yIHVuIHNpbmFsICglcyklc1xuIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHJlYWQgYCVzJyBhdCBsaW5lICVkIgorI34gbXNnc3RyICJub24gc2UgcHVpZG8gbGVyIFwiJXNcIiBuYSBsacOxYSAlZCIKKworI34gbXNnaWQgInBhcnNlIGVycm9yLCBpbiBmaWxlIGAlLjI1NXMnIG5lYXIgbGluZSAlZCIKKyN+IG1zZ3N0ciAiZXJybyBkZSBhbsOhbGlzZSwgbm8gZmljaGVpcm8gXCIlLjI1NXNcIiBwcmV0byBkYSBsacOxYSAlZCIKKworI34gbXNnaWQgIiBwYWNrYWdlIGAlLjI1NXMnIgorI34gbXNnc3RyICIgcGFxdWV0ZSBcIiUuMjU1c1wiIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHJlYWxsb2MgZm9yIHZhcmlhYmxlIGJ1ZmZlciIKKyN+IG1zZ3N0ciAibm9uIHNlIHB1aWRvIGZhY2VyIHJlYWxsb2MgcGFyYSBvIGJ1ZmZlciB2YXJpYWJsZSIKKworI34gbXNnaWQgInByb2Nlc3NfYXJjaGl2ZSAuLi4gIGFscmVhZHkgZGlzYXBwZWFyZWQgISIKKyN+IG1zZ3N0ciAicHJvY2Vzc19hcmNoaXZlIC4uLiAgeGEgZGVzYXBhcmVjZXUiCisKKyN+IG1zZ2lkICJnb2JibGUgcmVwbGFjZWQgZmlsZSBgJS4yNTVzJyIKKyN+IG1zZ3N0ciAibGV1c2UgZSBvbWl0aXVzZSBvIGZpY2hlaXJvIFwiJS4yNTVzXCIiCisKKyN+IG1zZ2lkICJkcGtnOiAlczogd2FybmluZyAtIGZhaWxlZCB0byByZW1vdmUgYCUuMjUwcyc6ICVzXG4iCisjfiBtc2dzdHIgImRwa2c6ICVzOiBhdmlzbyAtIG5vbiBzZSBwdWlkbyBib3JyYXIgXCIlLjI1MHNcIjogJXNcbiIKKworI34gbXNnaWQgIi0tYXVkaXQgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnRzIgorI34gbXNnc3RyICItLWF1ZGl0IG5vbiB0b21hIG5pbmfDum4gYXJndW1lbnRvIgorCisjfiBtc2dpZCAiLS15ZXQtdG8tdW5wYWNrIGRvZXMgbm90IHRha2UgYW55IGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiLS15ZXQtdG8tdW5wYWNrIG5vbiB0b21hIG5pbmfDum4gYXJndW1lbnRvIgorCisjfiBtc2dpZCAiLS1hc3NlcnQtKiBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudHMiCisjfiBtc2dzdHIgIi0tYXNzZXJ0LSogbm9uIHRvbWEgbmluZ8O6biBhcmd1bWVudG8iCisKKyN+IG1zZ2lkICItLXByZWRlcC1wYWNrYWdlIGRvZXMgbm90IHRha2UgYW55IGFyZ3VtZW50IgorI34gbXNnc3RyICItLXByZWRlcC1wYWNrYWdlIG5vbiB0b21hIG5pbmfDum4gYXJndW1lbnRvIgorCisjfiBtc2dpZCAiLS1wcmludC1hcmNoaXRlY3R1cmUgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tcHJpbnQtYXJjaGl0ZWN0dXJlIG5vbiB0b21hIG5pbmfDum4gYXJndW1lbnRvIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHN0YXQgaW5zdGFsbGVkICVzIHNjcmlwdCBgJS4yNTBzJyIKKyN+IG1zZ3N0ciAibm9uIHNlIHBvZGUgYXRvcGFyIG8gc2NyaXB0IGRlICVzIGluc3RhbGFkbyBcIiUuMjUwc1wiIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHN0YXQgbmV3ICVzIHNjcmlwdCBgJS4yNTBzJyIKKyN+IG1zZ3N0ciAibm9uIHNlIHBvZGUgYXRvcGFyIG8gbm92byBzY3JpcHQgZGUgJXMgXCIlLjI1MHNcIiIKKworI34gbXNnaWQgInVuYWJsZSB0byBleGVjdXRlIG5ldyAlcyIKKyN+IG1zZ3N0ciAibm9uIHNlIHBvZGUgZXhlY3V0YXIgbyBub3ZvICVzIgorCisjfiBtc2dpZCAiZHBrZzogd2FybmluZyAtIHVuYWJsZSB0byBzdGF0ICVzIGAlLjI1MHMnOiAlc1xuIgorI34gbXNnc3RyICJkcGtnOiBhdmlzbyAtIG5vbiBzZSBwb2RlIGF0b3BhciBvICVzIFwiJXMuMjUwc1wiOiAlc1xuIgorCisjfiBtc2dpZCAiLS1zZXQtc2VsZWN0aW9ucyBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudCIKKyN+IG1zZ3N0ciAiLS1zZXQtc2VsZWN0aW9ucyBub24gdG9tYSBuaW5nw7puIGFyZ3VtZW50byIKKworI34gbXNnaWQgIi0tY2xlYXItc2VsZWN0aW9ucyBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudCIKKyN+IG1zZ3N0ciAiLS1jbGVhci1zZWxlY3Rpb25zIG5vbiB0b21hIG5pbmfDum4gYXJndW1lbnRvIgorCisjfiBtc2dpZCAiLS1idWlsZCBuZWVkcyBhIGRpcmVjdG9yeSBhcmd1bWVudCIKKyN+IG1zZ3N0ciAiLS1idWlsZCBwcmVjaXNhIGR1biBhcmd1bWVudG8gZGUgZGlyZWN0b3JpbyIKKworI34gbXNnaWQgIiIKKyN+ICJkcGtnLWRlYjogd2FybmluZywgbm90IGNoZWNraW5nIGNvbnRlbnRzIG9mIGNvbnRyb2wgYXJlYS5cbiIKKyN+ICJkcGtnLWRlYjogYnVpbGRpbmcgYW4gdW5rbm93biBwYWNrYWdlIGluIGAlcycuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJkcGtnLWRlYjogYXZpc28sIG5vbiBzZSBjb21wcm9iYSBvIGNvbnRpZG8gZGEgw6FyZWEgZGUgY29udHJvbC5cbiIKKyN+ICJkcGtnLWRlYjogY29uc3Ryw7plc2UgdW4gcGFxdWV0ZSBkZXNjb8OxZWNpZG8gZW4gXCIlc1wiLlxuIgorCisjfiBtc2dpZCAiSW50ZXJuYWwgZXJyb3IsIGNvbXByZXNzX3R5cGUgYCVpJyB1bmtub3duISIKKyN+IG1zZ3N0ciAiRXJybyBpbnRlcm5vLCB0aXBvIGRlIGNvbXByZXNpw7NuIFwiJWlcIiBkZXNjb8OxZWNpZG8iCisKKyN+IG1zZ2lkICItLWpvaW4gcmVxdWlyZXMgb25lIG9yIG1vcmUgcGFydCBmaWxlIGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiLS1qb2luIHByZWNpc2EgZGUgdW4gb3UgbcOhaXMgYXJndW1lbnRvcyBkZSBmaWNoZWlybyBkZSBwYXJ0ZXMiCisKKyN+IG1zZ2lkICItLWxpc3RxIGRvZXMgbm90IHRha2UgYW55IGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiLS1saXN0cSBub24gdG9tYSBuaW5nw7puIGFyZ3VtZW50byIKKworI34gbXNnaWQgIiIKKyN+ICJcbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDE5OTYgS2ltLU1pbmggS2FwbGFuLiIKKyN+IG1zZ3N0ciAiIgorI34gIlxuIgorI34gIkNvcHlyaWdodCAoQykgMTk5NiBLaW0tTWluaCBLYXBsYW4uIgorCisjfiBtc2dpZCAiIgorI34gIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSBbLS1dIFs8ZGlybmFtZT5dXG4iCisjfiAiXG4iCisjfiAiT3B0aW9uczpcbiIKKyN+ICIgIC0tdW5zYWZlICAgICBzZXQgc29tZSBhZGRpdGlvbmFsIHBvc3NpYmx5IHVzZWZ1bCBvcHRpb25zLlxuIgorI34gIiAgICAgICAgICAgICAgIHdhcm5pbmc6IHRoaXMgb3B0aW9uIG1heSBnYXJibGUgYW4gb3RoZXJ3aXNlIGNvcnJlY3QgIgorI34gImZpbGUuXG4iCisjfiAiICAtLWhlbHAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyN+ICIgIC0tdmVyc2lvbiAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorI34gbXNnc3RyICIiCisjfiAiRW1wcmVnbzogJXMgWzxvcGNpw7NuPiAuLi5dIFstLV0gWzxkaXJlY3RvcmlvPl1cbiIKKyN+ICJcbiIKKyN+ICJPcGNpw7NuczpcbiIKKyN+ICIgIC0tdW5zYWZlICAgICBhY3RpdmEgYWxndW5oYXMgb3BjacOzbnMgYWRpY2lvbmFpcyBwb3NpYmxlbWVudGUgw7p0aWxlcy5cbiIKKyN+ICIgICAgICAgICAgICAgICBhdmlzbzogZXN0YSBvcGNpw7NuIHBvZGUgZXN0cmFnYXIgdW4gZmljaGVpcm8gY29ycmVjdG8uXG4iCisjfiAiICAtLWhlbHAgICAgICAgYW1vc2EgZXN0YSBtZW5zYXhlIGRlIGF4dWRhLlxuIgorI34gIiAgLS12ZXJzaW9uICAgIGFtb3NhIGEgdmVyc2nDs24uXG4iCisKKyN+IG1zZ2lkICJ0cnkgZGVsZXRpbmcgJXMiCisjfiBtc2dzdHIgInByb2JlIGEgYm9ycmFyICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGluc3RhbGwgJXM7IGl0IHdpbGwgYmUgbGVmdCBhcyAlczogJXMiCisjfiBtc2dzdHIgIm5vbiBzZSBwdWlkbyBpbnN0YWxhciAlczsgaGFzZSBkZWl4YXIgY29tYSAlczogJXMiCisKKyN+IG1zZ2lkICIlczogdW5hYmxlIHRvIHVubG9jayAlczogJXMiCisjfiBtc2dzdHIgIiVzOiBub24gc2UgcG9kZSBkZXNibG9xdWVhciAlczogJXMiCisKKyN+IG1zZ2lkICIlcyAtIHN0YXR1cyBpcyAlcy4iCisjfiBtc2dzdHIgIiVzIC0gbyBlc3RhZG8gw6kgJXMuIgorCisjfiBtc2dpZCAiIGxpbmsgdW5yZWFkYWJsZSAtICVzIgorI34gbXNnc3RyICIgbGlnYXrDs24gaWxleGlibGUgLSAlcyIKKworI34gbXNnaWQgIiIKKyN+ICJ3YXJuaW5nOiAlcyBpcyBzdXBwb3NlZCB0byBiZSBhIHN5bWxpbmsgdG8gJXMsIFxuIgorI34gIm9yIG5vbmV4aXN0ZW50OyBob3dldmVyLCByZWFkbGluayBmYWlsZWQ6ICVzIgorI34gbXNnc3RyICIiCisjfiAiYXZpc286IHN1cG9uc2UgcXVlICVzIMOpIHVuaGEgbGlnYXrDs24gc2ltYsOzbGljYSBhICVzLCBcbiIKKyN+ICJvdSBxdWUgbm9uIGV4aXN0ZTsgbmVtYmFyZ2FudGVzLCBub24gc2UgcHVpZG8gbGVyIGEgbGlnYXrDs246ICVzIgorCisjfiBtc2dpZCAiTGVhdmluZyAlcyAoJXMpIHBvaW50aW5nIHRvICVzLiIKKyN+IG1zZ3N0ciAiRMOpaXhhc2UgJXMgKCVzKSBhcHVudGFuZG8gYSAlcy4iCisKKyN+IG1zZ2lkICJVcGRhdGluZyAlcyAoJXMpIHRvIHBvaW50IHRvICVzLiIKKyN+IG1zZ3N0ciAiQSBhY3R1YWxpemFyICVzICglcykgcGFyYSBxdWUgYXB1bnRlIGEgJXMuIgorCisjfiBtc2dpZCAiUmVtb3ZpbmcgJXMgKCVzKSwgbm90IGFwcHJvcHJpYXRlIHdpdGggJXMuIgorI34gbXNnc3RyICJBIGVsaW1pbmFyICVzICglcyk7IG5vbiDDqSBhcHJvcGlhZG8gY29uICVzLiIKKworI34gbXNnaWQgIiIKKyN+ICJDaGVja2luZyBhdmFpbGFibGUgdmVyc2lvbnMgb2YgJXMsIHVwZGF0aW5nIGxpbmtzIGluICVzIC4uLlxuIgorI34gIihZb3UgbWF5IG1vZGlmeSB0aGUgc3ltbGlua3MgdGhlcmUgeW91cnNlbGYgaWYgZGVzaXJlZCAtIHNlZSBgbWFuIGxuJy4pIgorI34gbXNnc3RyICIiCisjfiAiQSBjb21wcm9iYXIgYXMgdmVyc2nDs25zIGRpc3Bvw7FpYmxlcyBkZSAlcywgYSBhY3R1YWxpemFyIGFzIGxpZ2F6w7NucyBkZSAiCisjfiAiJXMgLi4uXG4iCisjfiAiKFBvZGUgbW9kaWZpY2FyIGFzIGxpZ2F6w7NucyB2b3N0ZWRlIHNlIG8gcHJlZmlyZSAtIGNvbnN1bHRlIFwibWFuIGxuXCIpLiIKKworI34gbXNnaWQgInNsYXZlIGxpbmsgbmFtZSAlcyBkdXBsaWNhdGVkIgorI34gbXNnc3RyICJub21lIGRlIGxpZ2F6w7NuIGVzY3JhdmEgJXMgZHVwbGljYWRvIgorCisjfiBtc2dpZCAiUmVjb3ZlcmluZyBmcm9tIHByZXZpb3VzIGZhaWxlZCB1cGRhdGUgb2YgJXMgLi4uIgorI34gbXNnc3RyICJBIHJlY3VwZXJhcnNlIGR1bmhhIGFudGVyaW9yIGFjdHVhbGl6YWNpw7NuIGZhbGxpZGEgZGUgJXMgLi4uIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIG9wZW4gJXMgZm9yIHdyaXRlOiAlcyIKKyN+IG1zZ3N0ciAibm9uIHNlIHBvZGUgYWJyaXIgJXMgcGFyYSBlc2NyaXR1cmE6ICVzIgorCisjfiBtc2dpZCAiTGFzdCBwYWNrYWdlIHByb3ZpZGluZyAlcyAoJXMpIHJlbW92ZWQsIGRlbGV0aW5nIGl0LiIKKyN+IG1zZ3N0ciAiRWxpbWlub3VzZSBvIGRlcnJhZGVpcm8gZmljaGVpcm8gcXVlIGZvcm5lY8OtYSAlcyAoJXMpLCBhIGVsaW1pbmFsby4iCisKKyN+IG1zZ2lkICIiCisjfiAiVGhlcmUgaXMgb25seSAxIHByb2dyYW0gd2hpY2ggcHJvdmlkZXMgJXNcbiIKKyN+ICIoJXMpLiBOb3RoaW5nIHRvIGNvbmZpZ3VyZS5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIlPDsyBoYWkgdW4gcHJvZ3JhbWEgcXVlIGZvcm5lemEgJXNcbiIKKyN+ICIoJXMpLiBOb24gaGFpIG5hZGEgcXVlIGNvbmZpZ3VyYXIuXG4iCisKKyN+IG1zZ2lkICIiCisjfiAiVGhlcmUgYXJlICVzIGFsdGVybmF0aXZlcyB3aGljaCBwcm92aWRlIGAlcycuXG4iCisjfiAiXG4iCisjfiAiICBTZWxlY3Rpb24gICAgQWx0ZXJuYXRpdmVcbiIKKyN+ICItLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIgorI34gbXNnc3RyICIiCisjfiAiSGFpICVzIGFsdGVybmF0aXZhcyBxdWUgZm9ybmVjZW4gXCIlc1wiLlxuIgorI34gIlxuIgorI34gIiAgU2VsZWNjacOzbiAgICBBbHRlcm5hdGl2YVxuIgorI34gIi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4iCisKKyN+IG1zZ2lkICJlcnJvciBvciBlb2YgcmVhZGluZyAlcyBmb3IgJXMgKCVzKSIKKyN+IG1zZ3N0ciAiZXJybyBvdSBmaW4gZGUgZmljaGVpcm8gYW8gbGVyIGRlICVzIHBhcmEgJXMgKCVzKSIKKworI34gbXNnaWQgIm1pc3NpbmcgbmV3bGluZSBhZnRlciAlcyIKKyN+IG1zZ3N0ciAiZmFsbGEgdW4gc2FsdG8gZGUgbGnDsWEgZGVzcG9pcyBkZSAlcyIKKworI34gbXNnaWQgIlNlcmlvdXMgcHJvYmxlbTogJXMiCisjfiBtc2dzdHIgIlByb2JsZW1hIGdyYXZlOiAlcyIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvcG8vaHUuZ21vIGIvZHBrZy0xLjE2LjEuMS9wby9odS5nbW8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNTI2ZDE2YQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvcG8vaHUuZ21vCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvcG8vaHUucG8gYi9kcGtnLTEuMTYuMS4xL3BvL2h1LnBvCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjUzMjVmNTEKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3BvL2h1LnBvCkBAIC0wLDAgKzEsNzA4NCBAQAorIyBIdW5nYXJpYW4gZHBrZyB0cmFuc2xhdGlvbgorIyBDb3B5cmlnaHQgKEMpIDIwMDYgU29mdHdhcmUgaW4gdGhlIFB1YmxpYyBJbnRlcmVzdCwgSW5jLgorIyBUaGlzIGZpbGUgaXMgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIHNhbWUgbGljZW5zZSBhcyB0aGUgZHBrZyBwYWNrYWdlLgorIyBTWkVSVsOBQyBBdHRpbGEgPHNhc0AzMjE+LCAyMDA1LgorIyBLRUxFTUVOIEfDoWJvciA8a2VsZW1lbmdAZ25vbWU+ICYgU1pFUlbDgUMgQXR0aWxhIDxzYXNAMzIxPiAyMDA2LgorIworbXNnaWQgIiIKK21zZ3N0ciAiIgorIlByb2plY3QtSWQtVmVyc2lvbjogXG4iCisiUmVwb3J0LU1zZ2lkLUJ1Z3MtVG86IGRlYmlhbi1kcGtnQGxpc3RzLmRlYmlhbi5vcmdcbiIKKyJQT1QtQ3JlYXRpb24tRGF0ZTogMjAxMS0xMC0xNCAwNzoxMSswMjAwXG4iCisiUE8tUmV2aXNpb24tRGF0ZTogMjAwOC0wNS0wMiAxNTo0NSswMTAwXG4iCisiTGFzdC1UcmFuc2xhdG9yOiBTWkVSVsOBQyBBdHRpbGEgPHNhc0AzMjEuaHU+XG4iCisiTGFuZ3VhZ2UtVGVhbTogaHVcbiIKKyJMYW5ndWFnZTogaHVcbiIKKyJNSU1FLVZlcnNpb246IDEuMFxuIgorIkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD1VVEYtOFxuIgorIkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXRcbiIKKyJYLVBvZWRpdC1MYW5ndWFnZTogSHVuZ2FyaWFuXG4iCisiWC1Qb2VkaXQtQ291bnRyeTogSFVOR0FSWVxuIgorIlBsdXJhbC1Gb3JtczogbnBsdXJhbHM9MTsgcGx1cmFsPTA7XG4iCisKKyM6IGxpYi9kcGtnL2FyLmM6NjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgJyVjJyBpbiBhcmNoaXZlICclLjI1MHMnIG1lbWJlciAnJS4xNnMnIHNpemUiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvYXIuYzo4MSBsaWIvZHBrZy9hci5jOjk3IGxpYi9kcGtnL2FyLmM6MTA4IGxpYi9kcGtnL2FyLmM6MTEyCisjOiBsaWIvZHBrZy9hci5jOjEzNCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE1NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIGZpbGUgJyVzJyIKK21zZ3N0ciAiZSBmb3Jyw6FzZsOhamwgbmVtIG1lZ255aXRoYXTDszogYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2FyLmM6OTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZ2VuZXJhdGVkIGNvcnJ1cHQgYXIgaGVhZGVyIGZvciAnJXMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2FyLmM6MTIzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgYXIgbWVtYmVyIGZpbGUgKCVzKSIKK21zZ3N0ciAidG1wZsOhamwgbMOpdHJlaG96w6FzYSBzaWtlcnRlbGVuIChhZGF0KSIKKworIzogbGliL2Rwa2cvYXIuYzoxMzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImFyIG1lbWJlciBmaWxlICglcykiCittc2dzdHIgInRtcGbDoWpsIGzDqXRyZWhvesOhc2Egc2lrZXJ0ZWxlbiAoYWRhdCkiCisKKyM6IGxpYi9kcGtnL2J1ZmZlci5jOjE5NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgb24gYnVmZmVyIGNvcHkgZm9yICVzIgorbXNnc3RyICJoaWJhIGEgcGlww6FiYSDDrXLDoXNrb3IgbcOhc29sw6FzbsOhbCIKKworIzogbGliL2Rwa2cvYnVmZmVyLmM6MjEyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgaW4gd3JpdGUgb24gYnVmZmVyIGNvcHkgZm9yICVzIgorbXNnc3RyICJoaWJhIGEgcGlww6FiYSDDrXLDoXNrb3IgbcOhc29sw6FzbsOhbCIKKworIzogbGliL2Rwa2cvYnVmZmVyLmM6MjIwCisjLCBjLWZvcm1hdAorbXNnaWQgInNob3J0IHJlYWQgb24gYnVmZmVyIGNvcHkgZm9yICVzIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2J1ZmZlci5jOjI4OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgdGFyIgorbXNnaWQgImZhaWxlZCB0byBzZWVrICVzIgorbXNnc3RyICJoaWJhIGEgdGFyIGZ1dHRhdMOhc2Frb3IiCisKKyM6IGxpYi9kcGtnL2NvbW1hbmQuYzoxNzggbGliL2Rwa2cvY29tbWFuZC5jOjIwNCBzcmMvaGVscC5jOjYyMQorIzogc3JjL3Byb2Nlc3NhcmMuYzo5OCBzcmMvcHJvY2Vzc2FyYy5jOjEzOCBzcmMvcHJvY2Vzc2FyYy5jOjQzMgorIzogc3JjL3Byb2Nlc3NhcmMuYzo4MzkgZHBrZy1kZWIvYnVpbGQuYzo0NTkgZHBrZy1kZWIvYnVpbGQuYzo1MzgKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTYxIGRwa2ctZGViL2V4dHJhY3QuYzozMTcgZHBrZy1kZWIvaW5mby5jOjY1CisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6NjkgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQ1NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGV4ZWN1dGUgJXMgKCVzKSIKK21zZ3N0ciAic2lrZXJ0ZWxlbiBmdXR0YXTDoXM6ICVzIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBkZWNvbXByZXNzaW9uIgorbXNnc3RyICIlczoga2ljc29tYWdvbMOhcyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzo4OQorIywgYy1mb3JtYXQKK21zZ2lkICIlczogY29tcHJlc3Npb24iCittc2dzdHIgIiVzOiB0w7Ztw7Zyw610w6lzIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjExMgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZXJyb3IgYmluZGluZyBpbnB1dCB0byBnemlwIHN0cmVhbSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjEyNAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgcmVhZCBlcnJvcjogJyVzJyIKK21zZ3N0ciAiJXM6IGJlbHPFkSBnemlwIGhpYmE6IGAlcyciCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTMyIGxpYi9kcGtnL2NvbXByZXNzLmM6MTM2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCB3cml0ZSBlcnJvciIKK21zZ3N0ciAiJXM6IGJlbHPFkSBnemlwIGhpYmE6IGAlcyciCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTUwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvciBiaW5kaW5nIG91dHB1dCB0byBnemlwIHN0cmVhbSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE1NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgcmVhZCBlcnJvciIKK21zZ3N0ciAiJXM6IGJlbHPFkSBnemlwIGhpYmE6IGAlcyciCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTY3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCB3cml0ZSBlcnJvcjogJyVzJyIKK21zZ3N0ciAiJXM6IGJlbHPFkSBnemlwIGhpYmE6IGAlcyciCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTgwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCB3cml0ZSBlcnJvcjogJXMiCittc2dzdHIgIiVzOiBiZWxzxZEgZ3ppcCBoaWJhOiBgJXMnIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjIyMAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZXJyb3IgYmluZGluZyBpbnB1dCB0byBiemlwMiBzdHJlYW0iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyMzIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiByZWFkIGVycm9yOiAnJXMnIgorbXNnc3RyICIlczogYmVsc8WRIGJ6aXAyIGhpYmE6IGAlcyciCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjQwIGxpYi9kcGtnL2NvbXByZXNzLmM6MjQ0IGxpYi9kcGtnL2NvbXByZXNzLmM6Mjk0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgd3JpdGUgZXJyb3IiCittc2dzdHIgIiVzOiBiZWxzxZEgYnppcDIgaGliYTogYCVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yIGJpbmRpbmcgb3V0cHV0IHRvIGJ6aXAyIHN0cmVhbSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI2NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIHJlYWQgZXJyb3IiCittc2dzdHIgIiVzOiBiZWxzxZEgYnppcDIgaGliYTogYCVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyNzUgbGliL2Rwa2cvY29tcHJlc3MuYzoyODYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiB3cml0ZSBlcnJvcjogJyVzJyIKK21zZ3N0ciAiJXM6IGJlbHPFkSBiemlwMiBoaWJhOiBgJXMnIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI4MgorbXNnaWQgInVuZXhwZWN0ZWQgYnppcDIgZXJyb3IiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzo2OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidXBkYXRlcyBkaXJlY3RvcnkgY29udGFpbnMgZmlsZSBgJS4yNTBzJyB3aG9zZSBuYW1lIGlzIHRvbyBsb25nIChsZW5ndGg9JWQsICIKKyJtYXg9JWQpIgorbXNnc3RyICIiCisiQXogdXBkYXRlcyBrw7ZueXZ0w6FyYmFuIGzDqXbFkSBgJS4yNTBzJyBmw6FqbCBuZXZlIHTDumwgaG9zc3rDuiAoaG9zc3o9JWQsIG1heD0lZCkiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVwZGF0ZXMgZGlyZWN0b3J5IGNvbnRhaW5zIGZpbGVzIHdpdGggZGlmZmVyZW50IGxlbmd0aCBuYW1lcyAoYm90aCAlZCBhbmQgJWQpIgorbXNnc3RyICJBeiB1cGRhdGVzIGvDtm55dnTDoXIgZWx0w6lyxZEgaG9zc3rDuiBmw6FqbG5ldmVrZXQgdGFydGFsbWF6ICglZCDDqXMgJWQgaXMpIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjg2CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzY2FuIHVwZGF0ZXMgZGlyZWN0b3J5IGAlLjI1NXMnIgorbXNnc3RyICJuZW0gdHVkb20gw6F0bsOpem5pIGF6IHVwZGF0ZXMga8O2bnl2dMOhcmF0OiBgJS4yNTVzJyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlbW92ZSBpbmNvcnBvcmF0ZWQgdXBkYXRlIGZpbGUgJS4yNTVzIgorbXNnc3RyICJuZW0gdHVkb20gdMO2csO2bG5pIGEgYmXDqXDDrXRldHQgJS4yNTVzIGbDoWpsdCIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxMjEgZHBrZy1kZWIvYnVpbGQuYzo0NDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBgJS4yNTVzJyIKK21zZ3N0ciAiYCUuMjU1cycgbmVtIGhvemhhdMOzIGzDqXRyZSIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxMjUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZpbGwgJS4yNTBzIHdpdGggcGFkZGluZyIKK21zZ3N0ciAiJS4yNTBzIGtpdMO2bHTDqXNlIGJlaMO6esOhc3NhbCBzaWtlcnRlbGVuIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEyNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggJS4yNTBzIGFmdGVyIHBhZGRpbmciCittc2dzdHIgIiUuMjUwcyBmZWx0w7ZsdMOpc2UgYSBiZWjDunrDoXMgdXTDoW4gc2lrZXJ0ZWxlbiIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxMjkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNlZWsgdG8gc3RhcnQgb2YgJS4yNTBzIGFmdGVyIHBhZGRpbmciCittc2dzdHIgIm5lbSB0dWRvayAlLjI1MHMgZWxlasOpcmUgbWVubmkgYSBiZWjDunrDoXMgdXTDoW4iCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTk1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gb3BlbiB0bXBmaWxlIGZvciB2c25wcmludGYiCittc2dpZCAidW5hYmxlIHRvIG9wZW4gbG9jayBmaWxlICVzIGZvciB0ZXN0aW5nIgorbXNnc3RyICJuZW0gbnlpdGhhdMOzIHRtcGZpbGUgYSB2c25wcmludGYtaGV6IgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjIyMQorbXNnaWQgInVuYWJsZSB0byBvcGVuL2NyZWF0ZSBzdGF0dXMgZGF0YWJhc2UgbG9ja2ZpbGUiCittc2dzdHIgImEgZHBrZyDDoWxsYXBvdCBhZGF0YsOhemlzIGxlesOhcsOzIGbDoWpsIGtpbnlpdMOhc2EvbGV6w6Fyw6FzYSBzaWtlcnRlbGVuIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjIzMQorbXNnaWQgInlvdSBkbyBub3QgaGF2ZSBwZXJtaXNzaW9uIHRvIGxvY2sgdGhlIGRwa2cgc3RhdHVzIGRhdGFiYXNlIgorbXNnc3RyICJuaW5jcyBqb2dvZCBsZXrDoXJuaSBhIGRwa2cgw6FsbGFwb3QgYWRhdGLDoXppc3QiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjMzCisjLCBmdXp6eQorI3wgbXNnaWQgInVuYWJsZSB0byBsb2NrIGRwa2cgc3RhdHVzIGRhdGFiYXNlIgorbXNnaWQgImRwa2cgc3RhdHVzIGRhdGFiYXNlIgorbXNnc3RyICJhIGRwa2cgw6FsbGFwb3QgYWRhdGLDoXppcyBsZXrDoXLDoXNhIHNpa2VydGVsZW4iCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjU3Cittc2dpZCAicmVxdWVzdGVkIG9wZXJhdGlvbiByZXF1aXJlcyBzdXBlcnVzZXIgcHJpdmlsZWdlIgorbXNnc3RyICJhIGvDqXJ0IG3FsXZlbGV0IHJlbmRzemVyZ2F6ZGEgam9nb2thdCBpZ8OpbnllbCIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyNjIKK21zZ2lkICJ1bmFibGUgdG8gYWNjZXNzIGRwa2cgc3RhdHVzIGFyZWEiCittc2dzdHIgIm5lbSDDqXJlbSBlbCBhIGRwa2cgw6FsbGFwb3QgdGVyw7xsZXRldCIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyNjQKK21zZ2lkICJvcGVyYXRpb24gcmVxdWlyZXMgcmVhZC93cml0ZSBhY2Nlc3MgdG8gZHBrZyBzdGF0dXMgYXJlYSIKK21zZ3N0ciAiYSBtxbF2ZWxldCBvbHZhc8Ohcy/DrXLDoXMgam9nb3Qga8OpciBhIGRwa2cgw6FsbGFwb3QgdGVyw7xsZXRoZXoiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzA5CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZW1vdmUgbXkgb3duIHVwZGF0ZSBmaWxlICUuMjU1cyIKK21zZ3N0ciAiZSBmcmlzc8OtdMWRIGbDoWpsb20gdMO2cmzDqXNlIG5lbSBzaWtlcsO8bHQ6ICUuMjU1cyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJgJS4yNTBzJyBmcmlzc8OtdGV0dCDDoWxsYXBvdMOhbmFrIMOtcsOhc2Egc2lrZXJ0ZWxlbiIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNDkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJgJS4yNTBzJyBmcmlzc8OtdGV0dCDDoWxsYXBvdMOhbmFrIGZlbHTDtmx0w6lzZSBzaWtlcnRlbGVuIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM1MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gdHJ1bmNhdGUgZm9yIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJgJS4yNTBzJyBmcmlzc8OtdGV0dCDDoWxsYXBvdMOhbmFrIHbDoWfDoXNhIHNpa2VydGVsZW4iCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzUzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmc3luYyB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiYCUuMjUwcycgZnJpc3PDrXRldHQgw6FsbGFwb3TDoW5hayBmc3luYy1qZSBzaWtlcnRlbGVuIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM1NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgImAlLjI1MHMnIGZyaXNzw610ZXR0IMOhbGxhcG90w6FuYWsgbGV6w6Fyw6FzYSBzaWtlcnRlbGVuIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM1OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiYCUuMjUwcycgZnJpc3PDrXRldHQgw6FsbGFwb3TDoW5hayB0ZWxlcMOtdMOpc2Ugc2lrZXJ0ZWxlbiIKKworIzogbGliL2Rwa2cvZGlyLmM6NTAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byByZWFkIGZpbGVkZXNjcmlwdG9yIGZsYWdzIGZvciAlLjI1MHMiCittc2dpZCAidW5hYmxlIHRvIGdldCBmaWxlIGRlc2NyaXB0b3IgZm9yIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICIlLjI1MHMgZsOhamwtbGXDrXLDsyBrYXBjc29sw7NpIG9sdmFzw6FzYSBzaWtlcmVsZW4iCisKKyM6IGxpYi9kcGtnL2Rpci5jOjU0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBkaXJlY3RvcnkgJyVzJyIKK21zZ3N0ciAiZSBmb3Jyw6FzZsOhamwgbmVtIG1lZ255aXRoYXTDszogYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2Rpci5jOjY5IGxpYi9kcGtnL2Rpci5jOjEzMQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gZGlyZWN0b3J5ICclcyciCittc2dzdHIgImUgZm9ycsOhc2bDoWpsIG5lbSBtZWdueWl0aGF0w7M6IGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy9kaXIuYzoxMDkgc3JjL2RpdmVydGNtZC5jOjIxOCBkcGtnLXNwbGl0L3NwbGl0LmM6MjAyCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI5MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gZmlsZSAnJXMnIgorbXNnc3RyICJlIGZvcnLDoXNmw6FqbCBuZW0gbWVnbnlpdGhhdMOzOiBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZGlyLmM6MTExIHNyYy9kaXZlcnRjbWQuYzoyMzIgc3JjL2RpdmVydGNtZC5jOjM3NworIzogc3JjL3N0YXRjbWQuYzoyMTcgZHBrZy1kZWIvYnVpbGQuYzo1OTggZHBrZy1zcGxpdC9qb2luLmM6NjUKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxODcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE0MDYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzeW5jIGZpbGUgJyVzJyIKK21zZ3N0ciAiZSBmb3Jyw6FzZsOhamwgbmVtIG1lZ255aXRoYXTDszogYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2Rpci5jOjExMyBzcmMvZGl2ZXJ0Y21kLmM6MjM0IHNyYy9kaXZlcnRjbWQuYzozNzkKKyM6IGRwa2ctZGViL2J1aWxkLmM6NjAwIGRwa2ctc3BsaXQvam9pbi5jOjY3IGRwa2ctc3BsaXQvcXVldWUuYzoxODkKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzE0IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNDA4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgZmlsZSAnJXMnIgorbXNnc3RyICJuZW0gbGVoZXQga2nDvHLDrXRlbmkgYSB2c25wcmludGYtYmVuIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6Mzk2CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB3cml0ZSBkZXRhaWxzIG9mIGAlLjUwcycgdG8gYCUuMjUwcyciCittc2dzdHIgImAlLjUwcycgcsOpc3psZXRlaSBuZW0gw61yaGF0w7NrIGlkZTogYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0MjMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuICclcycgZm9yIHdyaXRpbmcgJXMgZGF0YWJhc2UiCittc2dzdHIgImAlcycgbmVtIG55aXRoYXTDsyBtZWcgJXMgaW5mb3Jtw6FjacOzIGlyw6Fzw6FyYSIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQyNgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNldCBidWZmZXJpbmcgb24gJXMgZGF0YWJhc2UgZmlsZSIKK21zZ3N0ciAiYSBzdGF0dXMgZsOhamxvbiBhIHB1ZmZlcmVsw6lzIGJlw6FsbMOtdMOhc2Egc2lrZXJ0ZWxlbiIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQzOAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlICVzIGRhdGFiYXNlIHJlY29yZCBhYm91dCAnJS41MHMnIHRvICclLjI1MHMnIgorbXNnc3RyICIiCisibmVtIHNpa2Vyw7xsdCAlcyByZWtvcmQga2nDrXLDoXNhIGEga8O2dmV0a2V6xZFyxZFsOiBcIiUuNTBzXCIgaWRlOiBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDQ2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZmx1c2ggJXMgZGF0YWJhc2UgdG8gJyUuMjUwcyciCittc2dzdHIgIm5lbSBzaWtlcsO8bHQgZnN5bmMtZWxuaSAlcyBpbmZvcm3DoWNpw7N0IGlkZTogXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ0OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZzeW5jICVzIGRhdGFiYXNlIHRvICclLjI1MHMnIgorbXNnc3RyICJuZW0gc2lrZXLDvGx0IGZzeW5jLWVsbmkgJXMgaW5mb3Jtw6FjacOzdCBpZGU6IFwiJS4yNTBzXCIiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjbG9zZSAnJS4yNTBzJyBhZnRlciB3cml0aW5nICVzIGRhdGFiYXNlIgorbXNnc3RyICJgJXMnIG5lbSBueWl0aGF0w7MgbWVnICVzIGluZm9ybcOhY2nDsyBpcsOhc8OhcmEiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NTUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBsaW5rICclLjI1MHMnIHRvICclLjI1MHMnIGZvciBiYWNrdXAgb2YgJXMgZGF0YWJhc2UiCittc2dzdHIgImRwa2c6ICVzOiBmaWd5ZWxlbSAtIG1lZ2hpw7pzdWx0IGAlLjI1MHMnIGzDoW5jb2zDoXNhIGlkZTogYCUuMjUwcyc6ICVzXG4iCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NTgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBpbnN0YWxsICclLjI1MHMnIGFzICclLjI1MHMnIGNvbnRhaW5pbmcgJXMgZGF0YWJhc2UiCittc2dzdHIgIm5lbSBzaWtlcsO8bHQgdGVsZXDDrXRlbmkgYCUuMjUwcyctdCBgJS4yNTBzJy1rw6ludCIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjk0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogdW5yZWNvdmVyYWJsZSBmYXRhbCBlcnJvciwgYWJvcnRpbmc6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjEwMAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IG91dHNpZGUgZXJyb3IgY29udGV4dCwgYWJvcnRpbmc6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjEyMAorbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBlcnJvciBjb250ZXh0IgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoxODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBlcnJvciB3aGlsZSBjbGVhbmluZyB1cDpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorIiVzOiBoaWJhIGEgdGlzenTDrXTDoXMgc29yw6FuOlxuIgorIiAlc1xuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MjAxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJkcGtnOiB0b28gbWFueSBuZXN0ZWQgZXJyb3JzIGR1cmluZyBlcnJvciByZWNvdmVyeSAhIVxuIgorbXNnaWQgIiVzOiB0b28gbWFueSBuZXN0ZWQgZXJyb3JzIGR1cmluZyBlcnJvciByZWNvdmVyeSEhXG4iCittc2dzdHIgImRwa2c6IHTDumwgc29rIGJlw6FneWF6b3R0IGhpYmEgYSBoaWJhIGhlbHlyZcOhbGzDrXTDoXNhIHNvcsOhbiFcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjI2OCBsaWIvZHBrZy9laGFuZGxlLmM6MzA3Cittc2dpZCAib3V0IG9mIG1lbW9yeSBmb3IgbmV3IGNsZWFudXAgZW50cnkiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjI5MQorbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBjbGVhbnVwIGVudHJ5IHdpdGggbWFueSBhcmd1bWVudHMiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjM1MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yOiAlc1xuIgorbXNnc3RyICIiCisiJXM6IGhpYsOhcyBmZWxkb2xnb3rDoXM6ICVzICgtLSVzKTpcbiIKKyIgJXNcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjM5MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IHdhcm5pbmc6ICVzXG4iCittc2dzdHIgIiVzOiBoaWJhICVzIMOtcsOhc2Frb3I6ICVzIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6NDE2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczolczolZDogaW50ZXJuYWwgZXJyb3I6ICVzXG4iCittc2dzdHIgIiVzOiVkOiBiZWxzxZEgYCVzJyBoaWJhXG4iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGlzIG1pc3NpbmciCittc2dzdHIgIiVzIGhpw6FueXppayIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImAlLipzJyBpcyBub3QgYWxsb3dlZCBmb3IgJXMiCittc2dpZCAiJyUuNTBzJyBpcyBub3QgYWxsb3dlZCBmb3IgJXMiCittc2dzdHIgImAlLipzJyB0aWxvcyAlcyBzesOhbcOhcmEiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjczCisjLCBjLWZvcm1hdAorbXNnaWQgImp1bmsgYWZ0ZXIgJXMiCittc2dzdHIgInN6ZW3DqXQgJXMgdXTDoW4iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjg3CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgcGFja2FnZSBuYW1lICglLjI1MHMpIgorbXNnc3RyICJoaWLDoXMgY3NvbWFnbsOpdiAoJS4yNTBzKSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgImVtcHR5IGZpbGUgZGV0YWlscyBmaWVsZCBgJXMnIgorbXNnc3RyICLDvHJlcyBgJXMnIGbDoWpsIHLDqXN6bGV0ZWsgbWV6xZEiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjEwNQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGRldGFpbHMgZmllbGQgYCVzJyBub3QgYWxsb3dlZCBpbiBzdGF0dXMgZmlsZSIKK21zZ3N0ciAiYCVzJyBmw6FqbCByw6lzemxldGVrIG1lesWRIHRpbG9zIGF6IMOhbGxhcG90IGbDoWpsYmFuIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidG9vIG1hbnkgdmFsdWVzIGluIGZpbGUgZGV0YWlscyBmaWVsZCBgJXMnIChjb21wYXJlZCB0byBvdGhlcnMpIgorbXNnc3RyICJ0w7psIHNvayDDqXJ0w6lrIGAlcycgZsOhamwgcsOpc3psZXRlayBtZXrFkWJlbiAobcOhcyBtZXrFkWtow7Z6IGvDqXBlc3QpIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAidG9vIGZldyB2YWx1ZXMgaW4gZmlsZSBkZXRhaWxzIGZpZWxkIGAlcycgKGNvbXBhcmVkIHRvIG90aGVycykiCittc2dzdHIgImtldsOpcyDDqXJ0w6lrIGAlcycgZsOhamwgcsOpc3psZXRlayBtZXrFkWJlbiAobcOhcyBtZXrFkWtow7Z6IGvDqXBlc3QpIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxNTQKK21zZ2lkICJ5ZXMvbm8gaW4gYm9vbGVhbiBmaWVsZCIKK21zZ3N0ciAieWVzL25vIGEgbG9naWthaSBtZXrFkWJlbiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTc0Cittc2dpZCAid29yZCBpbiBgcHJpb3JpdHknIGZpZWxkIgorbXNnc3RyICJzesOzIGEgYHByaW9yaXR5JyBtZXrFkWJlbiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTg2Cittc2dpZCAidmFsdWUgZm9yIGBzdGF0dXMnIGZpZWxkIG5vdCBhbGxvd2VkIGluIHRoaXMgY29udGV4dCIKK21zZ3N0ciAiw6lydMOpayBhIGBzdGF0dXMnIG1lesWRYmVuIHRpbG9zIGUga8O2cm55ZXpldGJlbiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTkxCittc2dpZCAiZmlyc3QgKHdhbnQpIHdvcmQgaW4gYHN0YXR1cycgZmllbGQiCittc2dzdHIgIjEuIChrw6lydCkgc3rDsyBhIGBzdGF0dXMnIG1lesWRYmVuIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxOTQKK21zZ2lkICJzZWNvbmQgKGVycm9yKSB3b3JkIGluIGBzdGF0dXMnIGZpZWxkIgorbXNnc3RyICIyLiAoaGliYSkgc3rDsyBhIGBzdGF0dXMnIG1lesWRYmVuIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxOTcKK21zZ2lkICJ0aGlyZCAoc3RhdHVzKSB3b3JkIGluIGBzdGF0dXMnIGZpZWxkIgorbXNnc3RyICIzLiAow6FsbGFwb3QpIHdvcmQgaW4gYHN0YXR1cycgZmllbGQiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjIwNworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZXJyb3IgaW4gVmVyc2lvbiBzdHJpbmcgYCUuMjUwcyc6ICUuMjUwcyIKK21zZ2lkICJlcnJvciBpbiBWZXJzaW9uIHN0cmluZyAnJS4yNTBzJyIKK21zZ3N0ciAiaGliYSBhIGAlLjI1MHMnIFZlcnppw7Mgc3rDtnZlZ2JlbjogJS4yNTBzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyMTgKK21zZ2lkICJvYnNvbGV0ZSBgUmV2aXNpb24nIG9yIGBQYWNrYWdlLVJldmlzaW9uJyBmaWVsZCB1c2VkIgorbXNnc3RyICJlbGF2dWx0IGBSZXZpc2lvbicgdmFneSBgUGFja2FnZS1SZXZpc2lvbicgbWV6xZEiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjIzNQorbXNnaWQgInZhbHVlIGZvciBgY29uZmlnLXZlcnNpb24nIGZpZWxkIG5vdCBhbGxvd2VkIGluIHRoaXMgY29udGV4dCIKK21zZ3N0ciAiw6lydMOpayBhIGBjb25maWctdmVyc2lvbicgbWV6xZFiZW4gdGlsb3MgZSBrw7ZybnllemV0YmVuIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyNDAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImVycm9yIGluIENvbmZpZy1WZXJzaW9uIHN0cmluZyBgJS4yNTBzJzogJS4yNTBzIgorbXNnaWQgImVycm9yIGluIENvbmZpZy1WZXJzaW9uIHN0cmluZyAnJS4yNTBzJyIKK21zZ3N0ciAiaGliYSBhIGAlLjI1MHMnIENvbmZpZy1WZXJzaW9uIHN6w7Z2ZWdiZW46ICUuMjUwcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjY2CisjLCBjLWZvcm1hdAorbXNnaWQgInZhbHVlIGZvciBgY29uZmZpbGVzJyBoYXMgbWFsZm9ybWF0dGVkIGxpbmUgYCUuKnMnIgorbXNnc3RyICLDqXJ0w6lrIGEgYGNvbmZmaWxlcyctaG96IHJvc3N6IGAlLipzJyBzb3J0IHRhcnRhbG1heiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6Mjg3CisjLCBjLWZvcm1hdAorbXNnaWQgInZhbHVlIGZvciBgY29uZmZpbGVzJyBoYXMgbGluZSBzdGFydGluZyB3aXRoIG5vbi1zcGFjZSBgJWMnIgorbXNnc3RyICLDqXJ0w6lrIGEgYGNvbmZmaWxlcyctaG96IG5lbS1zesOza8O2eiBgJWMnIGthcmFrdGVydCB0YXJ0YWxtYXoiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjMwNAorbXNnaWQgInJvb3Qgb3IgbnVsbCBkaXJlY3RvcnkgaXMgbGlzdGVkIGFzIGEgY29uZmZpbGUiCittc2dzdHIgImd5w7Zrw6lyIHZhZ3kgw7xyZXMga8O2bnl2dMOhciBrb25mZsOhamxrw6ludCBsaXN0w6F6dmEiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjM2NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgbWlzc2luZyBwYWNrYWdlIG5hbWUsIG9yIGdhcmJhZ2Ugd2hlcmUgcGFja2FnZSBuYW1lIGV4cGVjdGVkIgorbXNnc3RyICJgJXMnIG1lesWRLCBoacOhbnl6w7MgY3NvbWFnbsOpdiB2YWd5IHRvcmzDs2TDoXMgYW5uYWsgaGVsecOpbiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MzcwCisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgZmllbGQsIGludmFsaWQgcGFja2FnZSBuYW1lIGAlLjI1NXMnOiAlcyIKK21zZ3N0ciAiYCVzJyBtZXrFkSwgw6lydsOpbnl0ZWxlbiBgJS4yNTVzJyBjc29tYWduw6l2OiAlcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDA2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6XG4iCisiIGJhZCB2ZXJzaW9uIHJlbGF0aW9uc2hpcCAlYyVjIgorbXNnc3RyICIiCisiYCVzJyBtZXrFkSwgaGl2YXRrb3rDoXMgZXJyZTogYCUuMjU1cyc6XG4iCisiIHJvc3N6IHZlcnppw7MgcmVsw6FjacOzICVjJWMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQxMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOlxuIgorIiBgJWMnIGlzIG9ic29sZXRlLCB1c2UgYCVjPScgb3IgYCVjJWMnIGluc3RlYWQiCittc2dzdHIgIiIKKyJgJXMnIG1lesWRLCBoaXZhdGtvesOhcyBlcnJlOiBgJS4yNTVzJzpcbiIKKyIgYCVjJyBlbGF2dWx0LCBoYXN6bsOhbGQgYSBgJWM9Jy10IHZhZ3kgYCVjJWMnLXQiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQyMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOlxuIgorIiBpbXBsaWNpdCBleGFjdCBtYXRjaCBvbiB2ZXJzaW9uIG51bWJlciwgc3VnZ2VzdCB1c2luZyBgPScgaW5zdGVhZCIKK21zZ3N0ciAiIgorImAlcycgbWV6xZEsIGhpdmF0a296w6FzIGVycmU6IGAlLjI1NXMnOlxuIgorIiB2YWzDs2rDoWJhbiBwb250b3MgdmVyemnDs3JhIGhpdmF0a296aWssIGA9JyBqYXZhc29sdCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDMwCittc2dpZCAiT25seSBleGFjdCB2ZXJzaW9ucyBtYXkgYmUgdXNlZCBmb3IgUHJvdmlkZXMiCittc2dzdHIgIkNzYWsgcG9udG9zIHZlcnppw7NrIGhhc3puw6FsaGF0w7NrIGEgUHJvdmlkZXMgbWV6xZFow7Z6IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgdmVyc2lvbiB2YWx1ZSBzdGFydHMgd2l0aCBub24tYWxwaGFudW1lcmljLCBzdWdnZXN0IGFkZGluZyBhIHNwYWNlIgorbXNnc3RyICIiCisiYCVzJyBtZXrFkSwgaGl2YXRrb3rDoXMgZXJyZTogYCUuMjU1cyc6XG4iCisiIGEgdmVyemnDsyDDqXJ0w6lrIG5lbS1hbGZhbnVtZXJpa3Vzc2FsIGtlemTFkWRpaywgc3rDs2vDtnogamF2YXNvbHQiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ1MSBsaWIvZHBrZy9maWVsZHMuYzo0NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOiB2ZXJzaW9uIGNvbnRhaW5zIGAlYyciCittc2dzdHIgImAlcycgbWV6xZEsIGhpdmF0a296w6FzIGVycmU6IGAlLjI1NXMnOiBhIHZlcnppw7MgYCVjJy10IHRhcnRhbG1heiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDU5CisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzogdmVyc2lvbiB1bnRlcm1pbmF0ZWQiCittc2dzdHIgImAlcycgbWV6xZEsIGhpdmF0a296w6FzIGVycmU6IGAlLjI1NXMnOiBsZXrDoXJhdGxhbiB2ZXJ6acOzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NjUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzogZXJyb3IgaW4gdmVyc2lvbjogJS4yNTVzIgorbXNnaWQgIiclcycgZmllbGQsIHJlZmVyZW5jZSB0byAnJS4yNTVzJzogZXJyb3IgaW4gdmVyc2lvbiIKK21zZ3N0ciAiYCVzJyBtZXrFkSwgaGl2YXRrb3rDoXMgZXJyZTogYCUuMjU1cyc6IGhpYsOhcyB2ZXJ6acOzOiAlLjI1NXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ3NQorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGZpZWxkLCBzeW50YXggZXJyb3IgYWZ0ZXIgcmVmZXJlbmNlIHRvIHBhY2thZ2UgYCUuMjU1cyciCittc2dzdHIgImAlcycgbWV6xZEsIG55ZWx2dGFuaSBoaWJhIGUgY3NvbWFnaGl2YXRrb3rDoXMgdXTDoW46IGAlLjI1NXMnIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmVzIChgfCcpIG5vdCBhbGxvd2VkIGluICVzIGZpZWxkIgorbXNnc3RyICJhbHRlcm5hdMOtdmEgKGB8JykgdGlsb3MgZSBtZXrFkWJlbjogJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjUzNgorIywgZnV6enkKK21zZ2lkICJ2YWx1ZSBmb3IgYHRyaWdnZXJzLXBlbmRpbmcnIGZpZWxkIG5vdCBhbGxvd2VkIGluIHRoaXMgY29udGV4dCIKK21zZ3N0ciAiw6lydMOpayBhIGBjb25maWctdmVyc2lvbicgbWV6xZFiZW4gdGlsb3MgZSBrw7ZybnllemV0YmVuIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NDMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImlsbGVnYWwgcGVuZGluZyB0cmlnZ2VyIG5hbWUgYCUuMjU1cyc6ICVzIgorbXNnc3RyICJgJXMnIG1lesWRLCDDqXJ2w6lueXRlbGVuIGAlLjI1NXMnIGNzb21hZ27DqXY6ICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHBlbmRpbmcgdHJpZ2dlciBgJS4yNTVzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NjEKKyMsIGZ1enp5Cittc2dpZCAidmFsdWUgZm9yIGB0cmlnZ2Vycy1hd2FpdGVkJyBmaWVsZCBub3QgYWxsb3dlZCBpbiB0aGlzIGNvbnRleHQiCittc2dzdHIgIsOpcnTDqWsgYSBgc3RhdHVzJyBtZXrFkWJlbiB0aWxvcyBlIGvDtnJueWV6ZXRiZW4iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU2OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiaWxsZWdhbCBwYWNrYWdlIG5hbWUgaW4gYXdhaXRlZCB0cmlnZ2VyIGAlLjI1NXMnOiAlcyIKK21zZ3N0ciAicm9zc3ogY3NvbWFnbsOpdiBhICVkLiBzb3JiYW46ICUuMjUwcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTc0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgYXdhaXRlZCB0cmlnZ2VyIHBhY2thZ2UgYCUuMjU1cyciCittc2dzdHIgImbDoWpsbGlzdGEgZSBjc29tYWdob3o6IGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy9maWxlLmM6NTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IHNvdXJjZSBmaWxlICclLjI1MHMnIgorbXNnc3RyICJlIGZvcnLDoXNmw6FqbCBuZW0gbWVnbnlpdGhhdMOzOiBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZmlsZS5jOjU1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hhbmdlIG93bmVyc2hpcCBvZiB0YXJnZXQgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAiYCUuMjUwcycgw7pqIHRlcmplc3p0xZFpIGJlw6FsbMOtdMOzZsOhamwgdHVsYWpkb25vc2EgbmVtIG3Ds2Rvc8OtdGhhdMOzIgorCisjOiBsaWIvZHBrZy9maWxlLmM6NTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgbW9kZSBvZiB0YXJnZXQgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAiYCUuMjUwcycgw7pqIHRlcmplc3p0xZFpIGJlw6FsbMOtdMOzZsOhamwgbcOzZGphIG5lbSDDoWxsw610aGF0w7MgYmUiCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzo4NQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHVubG9jayAlczogJXMiCittc2dpZCAidW5hYmxlIHRvIHVubG9jayAlcyIKK21zZ3N0ciAibmVtIHR1ZG9tIGtpb2xkYW5pICVzLXQ6ICVzIgorCisjOiBsaWIvZHBrZy9maWxlLmM6MTExCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hlY2sgZmlsZSAnJXMnIGxvY2sgc3RhdHVzIgorbXNnc3RyICJlIGZvcnLDoXNmw6FqbCBuZW0gbWVnbnlpdGhhdMOzOiBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZmlsZS5jOjE0NgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic3RhdHVzIGRhdGFiYXNlIGFyZWEgaXMgbG9ja2VkIGJ5IGFub3RoZXIgcHJvY2VzcyIKK21zZ2lkICIlcyBpcyBsb2NrZWQgYnkgYW5vdGhlciBwcm9jZXNzIgorbXNnc3RyICJheiDDoWxsYXBvdCBhZGF0YsOhemlzIHRlcsO8bGV0ZXQgbcOhcyBmb2x5YW1hdCB6w6Fyb2xqYSIKKworIzogbGliL2Rwa2cvZmlsZS5jOjE0OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHVubG9jayAlczogJXMiCittc2dpZCAidW5hYmxlIHRvIGxvY2sgJXMiCittc2dzdHIgIm5lbSB0dWRvbSBraW9sZGFuaSAlcy10OiAlcyIKKworIzogbGliL2Rwa2cvbG9nLmM6NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGRuJ3Qgb3BlbiBsb2cgYCVzJzogJXNcbiIKK21zZ3N0ciAiYCVzJyBuYXBsw7MgbmVtIG55aXRoYXTDsyBtZWc6ICVzXG4iCisKKyM6IGxpYi9kcGtnL2xvZy5jOjg1Cittc2dpZCAiPHBhY2thZ2Ugc3RhdHVzIGFuZCBwcm9ncmVzcyBmaWxlIGRlc2NyaXB0b3I+IgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2xvZy5jOjExNAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIHRvIHN0YXR1cyBmZCAlZCIKK21zZ3N0ciAiYCUuMjUwcycgZnJpc3PDrXRldHQgw6FsbGFwb3TDoW5hayDDrXLDoXNhIHNpa2VydGVsZW4iCisKKyM6IGxpYi9kcGtnL21saWIuYzo0NCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJyZWFsbG9jIGZhaWxlZCAoJXp1IGJ5dGVzKSIKK21zZ2lkICJtYWxsb2MgZmFpbGVkICglenUgYnl0ZXMpIgorbXNnc3RyICJyZWFsbG9jIGhpYmEgKCV6dSBiw6FqdCkiCisKKyM6IGxpYi9kcGtnL21saWIuYzo1OAorIywgYy1mb3JtYXQKK21zZ2lkICJyZWFsbG9jIGZhaWxlZCAoJXp1IGJ5dGVzKSIKK21zZ3N0ciAicmVhbGxvYyBoaWJhICglenUgYsOhanQpIgorCisjOiBsaWIvZHBrZy9tbGliLmM6NzIgbGliL2Rwa2cvbWxpYi5jOjkwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNzcKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzozMzQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMDcKKyMsIGZ1enp5Cittc2dpZCAiZmFpbGVkIHRvIGFsbG9jYXRlIG1lbW9yeSIKK21zZ3N0ciAic2lrZXJ0ZWxlbiBrw7ZueXZ0w6FyIGzDqXRyZWhvesOhcyIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZHVwIGZvciBzdGQlcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTAzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBkdXAgZm9yIGZkICVkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMDkKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHBpcGUiCittc2dzdHIgImEgY3PFkSBsw6l0cmVob3rDoXNhIHNpa2VydGVsZW4iCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMTcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHdyaXRpbmcgdG8gJyVzJyIKK21zZ3N0ciAiaGliYSBgJXMnIMOtcsOhc2Frb3IiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgZmlsZWRlc2NyaXB0b3IgZmxhZ3MgZm9yICUuMjUwcyIKK21zZ3N0ciAiJS4yNTBzIGbDoWpsLWxlw61yw7Mga2FwY3NvbMOzaSBvbHZhc8Ohc2Egc2lrZXJlbGVuIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTI2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgY2xvc2Utb24tZXhlYyBmbGFnIGZvciAlLjI1MHMiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjYzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJjb25maWd1cmF0aW9uIGVycm9yOiAlczolZDogJXMiCittc2dzdHIgImJlw6FsbMOtdMOhc2kgaGliYTogJXMgZWd5IMOpcnTDqWtldCB2w6FyIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6NzUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuIGNvbmZpZ3VyYXRpb24gZmlsZSAnJS4yNTVzJyBmb3IgcmVhZGluZzogJXMiCittc2dzdHIgIm1lZ2hpw7pzdWx0IGF6IGFsw6FiYmkgYmXDoWxsw610w7MgZsOhamwgbWVnbnlpdMOhc2Egb2x2YXPDoXNyYTogYCUuMjU1cyciCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5iYWxhbmNlZCBxdW90ZXMgaW4gJyVzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTE3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiAnJXMnIgorbXNnc3RyICJpc21lcmV0bGVuIGAlcycgbGVoZXTFkXPDqWciCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiclcycgbmVlZHMgYSB2YWx1ZSIKK21zZ3N0ciAiQSAtLSVzIG9wY2nDsyDDqXJ0w6lrZXQgdsOhciIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjEyNworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBkb2VzIG5vdCB0YWtlIGEgdmFsdWUiCittc2dzdHIgIkEgLS0lcyBvcGNpw7MgbmVtIHbDoXIgw6lydMOpa2V0IgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTMzCisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWQgZXJyb3IgaW4gY29uZmlndXJhdGlvbiBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICJiZcOhbGzDrXTDsyBmw6FqbCBvbHZhc8Ohc2kgaGliYTogYCUuMjU1cyciCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyBjb25maWd1cmF0aW9uIGZpbGUgYCUuMjU1cyciCittc2dzdHIgImhpYmEgZSBiZcOhbGzDrXTDsyBmw6FqbCBsZXrDoXLDoXNha29yOiBgJS4yNTVzJyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjE3MAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igb3BlbmluZyBjb25maWd1cmF0aW9uIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICJoaWJhIGUgYmXDoWxsw610w7MgZsOhamwgbGV6w6Fyw6FzYWtvcjogYCUuMjU1cyciCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gLS0lcyIKK21zZ3N0ciAiaXNtZXJldGxlbiBsZWhldMWRc8OpZyAtLSAlcyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjIzMgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG9wdGlvbiB0YWtlcyBhIHZhbHVlIgorbXNnc3RyICJBIC0tJXMgb3BjacOzIMOpcnTDqWtldCB2w6FyIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjM3CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgb3B0aW9uIGRvZXMgbm90IHRha2UgYSB2YWx1ZSIKK21zZ3N0ciAiQSAtLSVzIG9wY2nDsyBuZW0gdsOhciDDqXJ0w6lrZXQiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyNDUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gLSVjIgorbXNnc3RyICJpc21lcmV0bGVuIGxlaGV0xZFzw6lnIC0lYyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI1MAorIywgYy1mb3JtYXQKK21zZ2lkICItJWMgb3B0aW9uIHRha2VzIGEgdmFsdWUiCittc2dzdHIgIkEgLSVjIG9wY2nDsyDDqXJ0w6lrZXQgdsOhciIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI1OAorIywgYy1mb3JtYXQKK21zZ2lkICItJWMgb3B0aW9uIGRvZXMgbm90IHRha2UgYSB2YWx1ZSIKK21zZ3N0ciAiQSAtJWMgb3BjacOzIG5lbSB2w6FyIMOpcnTDqWtldCIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI3MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAib2Jzb2xldGUgb3B0aW9uICctLSVzJ1xuIgorbXNnc3RyICJGaWd5ZWxlbTogZWxhdnVsdCBsZWhldMWRc8OpZyBgLS0lcydcbiIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI4NworIywgYy1mb3JtYXQKK21zZ2lkICJjb25mbGljdGluZyBhY3Rpb25zIC0lYyAoLS0lcykgYW5kIC0lYyAoLS0lcykiCittc2dzdHIgIsO8dGvDtnrFkSBtxbF2ZWxldGVrIC0lYyAoLS0lcykgYW5kIC0lYyAoLS0lcykiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSB2YWx1ZSBmb3IgYCVzJyBmaWVsZCIKK21zZ3N0ciAia2V0dMWRcyDDqXJ0w6lrIGUgbWV6xZFiZW46IGAlcyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MTQ2CisjLCBjLWZvcm1hdAorbXNnaWQgInVzZXItZGVmaW5lZCBmaWVsZCBuYW1lIGAlLipzJyB0b28gc2hvcnQiCittc2dzdHIgImEgZmVsaGFzem7DoWzDsyDDoWx0YWwgbWVnbmV2ZXpldHQgYCUuKnMnIG1lesWRIHTDumwgcsO2dmlkIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgdmFsdWUgZm9yIHVzZXItZGVmaW5lZCBmaWVsZCBgJS4qcyciCittc2dzdHIgImtldHTFkXMgw6lydMOpayBlIGZlbGhhc3puw6Fsw7NpIG1lesWRYmVuOiBgJS4qcyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjA3Cittc2dpZCAiQ29uZmlndXJlZC1WZXJzaW9uIGZvciBwYWNrYWdlIHdpdGggaW5hcHByb3ByaWF0ZSBTdGF0dXMiCittc2dzdHIgIkNvbmZpZ3VyZWQtVmVyc2lvbiB2YW4gaGliw6FzIMOhbGxhcG90w7ogY3NvbWFnaG96IgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjIxOAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGhhcyBzdGF0dXMgJXMgYnV0IHRyaWdnZXJzIGFyZSBhd2FpdGVkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjIyCittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzIHRyaWdnZXJzLWF3YWl0ZWQgYnV0IG5vIHRyaWdnZXJzIGF3YWl0ZWQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzICVzIGJ1dCB0cmlnZ2VycyBhcmUgcGVuZGluZyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjIzMgorbXNnaWQgInBhY2thZ2UgaGFzIHN0YXR1cyB0cmlnZ2Vycy1wZW5kaW5nIGJ1dCBubyB0cmlnZ2VycyBwZW5kaW5nIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjQyCittc2dpZCAiUGFja2FnZSB3aGljaCBpbiBzdGF0ZSBub3QtaW5zdGFsbGVkIGhhcyBjb25mZmlsZXMsIGZvcmdldHRpbmcgdGhlbSIKK21zZ3N0ciAibmVtLXRlbGVww610ZXR0IGNzb21hZ2hveiBrb25maWd1csOhY2nDs3MgZsOhamxvayB2YW5uYWssIGVsZmVsZWp0ZW0gxZFrZXQiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzM1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuIHBhY2thZ2UgaW5mbyBmaWxlIGAlLjI1NXMnIGZvciByZWFkaW5nIgorbXNnc3RyICJuZW0gdHVkdGFtIG1lZ255aXRuaSBgJS4yNTVzJyBjc29tYWcgaW5mbyBmw6FqbHQgb2x2YXPDoXNyYSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozNDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2FuJ3Qgc3RhdCBwYWNrYWdlIGluZm8gZmlsZSBgJS4yNTVzJyIKK21zZ3N0ciAibmVtIGxlbGVtIGAlLjI1NXMnIGNzb21hZyBpbmZvIGbDoWpsdCIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2FuJ3QgbW1hcCBwYWNrYWdlIGluZm8gZmlsZSBgJS4yNTVzJyIKK21zZ3N0ciAibmVtIHR1ZG9tIG1tYXBvbG5pIGAlLjI1NXMnIGNzb21hZyBpbmZvIGbDoWpsdCIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozNTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImNhbid0IHN0YXQgcGFja2FnZSBpbmZvIGZpbGUgYCUuMjU1cyciCittc2dpZCAicmVhZGluZyBwYWNrYWdlIGluZm8gZmlsZSAnJS4yNTVzJyIKK21zZ3N0ciAibmVtIGxlbGVtIGAlLjI1NXMnIGNzb21hZyBpbmZvIGbDoWpsdCIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNsb3NlIGFmdGVyIHJlYWQ6IGAlLjI1NXMnIgorbXNnc3RyICJzaWtlcnRlbGVuIGxlesOhcsOhcyBvbHZhc8OhcyB1dMOhbjogYCUuMjU1cyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDA0CisjLCBjLWZvcm1hdAorbXNnaWQgIkVPRiBhZnRlciBmaWVsZCBuYW1lIGAlLipzJyIKK21zZ3N0ciAiRU9GIGUgbWV6xZEgdXTDoW46IGAlLipzJyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MDcKKyMsIGMtZm9ybWF0Cittc2dpZCAibmV3bGluZSBpbiBmaWVsZCBuYW1lIGAlLipzJyIKK21zZ3N0ciAiw7pqIHNvciBlIG1lesWRYmVuOiBgJS4qcyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDEwCisjLCBjLWZvcm1hdAorbXNnaWQgIk1TRE9TIEVPRiAoXlopIGluIGZpZWxkIG5hbWUgYCUuKnMnIgorbXNnc3RyICJNU0RPUyBFT0YgKF5aKSBlIG1lesWRYmVuOiBgJS4qcyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDE0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpZWxkIG5hbWUgYCUuKnMnIG11c3QgYmUgZm9sbG93ZWQgYnkgY29sb24iCittc2dzdHIgImAlLipzJyBtZXrFkW7DqXYgdXTDoW4gOiBrZWxsIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQyNQorIywgYy1mb3JtYXQKK21zZ2lkICJFT0YgYmVmb3JlIHZhbHVlIG9mIGZpZWxkIGAlLipzJyAobWlzc2luZyBmaW5hbCBuZXdsaW5lKSIKK21zZ3N0ciAiRU9GIGUgbWV6xZEgw6lydMOpa2UgZWzFkXR0OiBgJS4qcycgKGhpw6FueXrDsyBsZXrDoXLDsyDDumogc29yKSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiTVNET1MgRU9GIGNoYXIgaW4gdmFsdWUgb2YgZmllbGQgYCUuKnMnIChtaXNzaW5nIG5ld2xpbmU/KSIKK21zZ3N0ciAiTVNET1MgRU9GIGUgbWV6xZEgw6lydMOpa8OpYmVuOiBgJS4qcycgKGhpw6FueXrDsyDDumogc29yPykiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDQwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJuZXdsaW5lIGluIGZpZWxkIG5hbWUgYCUuKnMnIgorbXNnaWQgImJsYW5rIGxpbmUgaW4gdmFsdWUgb2YgZmllbGQgJyUuKnMnIgorbXNnc3RyICLDumogc29yIGUgbWV6xZFiZW46IGAlLipzJyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiRU9GIGR1cmluZyB2YWx1ZSBvZiBmaWVsZCBgJS4qcycgKG1pc3NpbmcgZmluYWwgbmV3bGluZSkiCittc2dzdHIgIkVPRiBlIG1lesWRIMOpcnTDqWvDqWJlbjogYCUuKnMnIChoacOhbnl6w7MgbGV6w6Fyw7Mgw7pqIHNvcikiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NTQ2Cittc2dpZCAic2V2ZXJhbCBwYWNrYWdlIGluZm8gZW50cmllcyBmb3VuZCwgb25seSBvbmUgYWxsb3dlZCIKK21zZ3N0ciAidMO2YmIgY3NvbWFnaW5mw7MgYmVqZWd5esOpcyBsw6l0ZXppaywgY3NhayAxIGxlaGV0IgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjU3MgorIywgYy1mb3JtYXQKK21zZ2lkICJubyBwYWNrYWdlIGluZm9ybWF0aW9uIGluIGAlLjI1NXMnIgorbXNnc3RyICJuZW0gdGFsw6Fsb2sgY3NvbWFnIGluZsOzdCBlYmJlbjogYCUuMjU1cyciCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjQ1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisicGFyc2luZyBmaWxlICclLjI1NXMnIG5lYXIgbGluZSAlZCBwYWNrYWdlICclLjI1NXMnOlxuIgorIiAlLjI1NXMiCittc2dzdHIgIiVzLCBlIGbDoWpsIGAlLjI1NXMnICVkLiBzb3LDoW7DoWwiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjQ4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisicGFyc2luZyBmaWxlICclLjI1NXMnIG5lYXIgbGluZSAlZDpcbiIKKyIgJS4yNTVzIgorbXNnc3RyICIlcywgZSBmw6FqbCBgJS4yNTVzJyAlZC4gc29yw6Fuw6FsIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoxMjUKK21zZ2lkICJtYXkgbm90IGJlIGVtcHR5IHN0cmluZyIKK21zZ3N0ciAibmVtIGxlaGV0IMO8cmVzIHN6w7Z2ZWciCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjEyNworIywgZnV6enkKKyN8IG1zZ2lkICJtdXN0IHN0YXJ0IHdpdGggYW4gYWxwaGFudW1lcmljIgorbXNnaWQgIm11c3Qgc3RhcnQgd2l0aCBhbiBhbHBoYW51bWVyaWMgY2hhcmFjdGVyIgorbXNnc3RyICJhbGZhbnVtZXJpa3Vzc2FsIGtlbGwga2V6ZMWRZG5pZSIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MTM2CisjLCBjLWZvcm1hdAorbXNnaWQgImNoYXJhY3RlciBgJWMnIG5vdCBhbGxvd2VkIChvbmx5IGxldHRlcnMsIGRpZ2l0cyBhbmQgY2hhcmFjdGVycyBgJXMnKSIKK21zZ3N0ciAiIgorImAlYycga2FyYWt0ZXIgdGlsb3MgKGNzYWsgYmV0xbFrLCBzesOhbW9rIMOpcyBgJXMnIGthcmFrdGVyZWsgYWRoYXTDs2sgbWVnKSIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MTc4CisjLCBmdXp6eQorI3wgbXNnaWQgIjxub25lPiIKK21zZ2N0eHQgInZlcnNpb24iCittc2dpZCAiPG5vbmU+IgorbXNnc3RyICI8bmluY3M+IgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyMDkKK21zZ2lkICJ2ZXJzaW9uIHN0cmluZyBpcyBlbXB0eSIKK21zZ3N0ciAiYSB2ZXJ6acOzIGhlbHllIMO8cmVzIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyMjQKK21zZ2lkICJ2ZXJzaW9uIHN0cmluZyBoYXMgZW1iZWRkZWQgc3BhY2VzIgorbXNnc3RyICJhIHZlcnppw7NzesOhbWJhbiBzesOza8O2esO2ayB2YW5uYWsiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjIzMAorbXNnaWQgImVwb2NoIGluIHZlcnNpb24gaXMgbm90IG51bWJlciIKK21zZ3N0ciAiaGnDoW55esOzIHN6w6FtIGEgdmVyemnDs2JhbiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjMyCittc2dpZCAibm90aGluZyBhZnRlciBjb2xvbiBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAibmluY3Mgc2VtbWkgYSA6IHV0w6FuIGEgdmVyemnDs3N6w6FtYmFuIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyNDcKK21zZ2lkICJ2ZXJzaW9uIG51bWJlciBkb2VzIG5vdCBzdGFydCB3aXRoIGRpZ2l0IgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjI1MAorIywgZnV6enkKKyN8IG1zZ2lkICJub3RoaW5nIGFmdGVyIGNvbG9uIGluIHZlcnNpb24gbnVtYmVyIgorbXNnaWQgImludmFsaWQgY2hhcmFjdGVyIGluIHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICJuaW5jcyBzZW1taSBhIDogdXTDoW4gYSB2ZXJ6acOzc3rDoW1iYW4iCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjI1NAorIywgZnV6enkKKyN8IG1zZ2lkICJub3RoaW5nIGFmdGVyIGNvbG9uIGluIHZlcnNpb24gbnVtYmVyIgorbXNnaWQgImludmFsaWQgY2hhcmFjdGVyIGluIHJldmlzaW9uIG51bWJlciIKK21zZ3N0ciAibmluY3Mgc2VtbWkgYSA6IHV0w6FuIGEgdmVyemnDs3N6w6FtYmFuIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyOTkgbGliL2Rwa2cvcGFyc2VoZWxwLmM6MzExCisjLCBjLWZvcm1hdAorbXNnaWQgIm1pc3NpbmcgJXMiCittc2dzdHIgImhpw6FueXppazogJXMiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjMwMSBsaWIvZHBrZy9wYXJzZWhlbHAuYzozMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZW1wdHkgdmFsdWUgZm9yICVzIgorbXNnc3RyICLDvHJlcyDDqXJ0w6lrIGVoaGV6OiAlcyIKKworIzogbGliL2Rwa2cvcGtnLWZvcm1hdC5jOjgwCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgY2hhcmFjdGVyIGAlYycgaW4gZmllbGQgd2lkdGhcbiIKK21zZ3N0ciAiw6lydsOpbnl0ZWxlbiBgJWMnIGthcmFrdGVyIGEgbWV6xZEgc3rDqWxlc3PDqWdiZW5cbiIKKworIzogbGliL2Rwa2cvcGtnLWZvcm1hdC5jOjE3MgorIywgYy1mb3JtYXQKK21zZ2lkICJDbG9zaW5nIGJyYWNlIG1pc3NpbmcgaW4gZm9ybWF0XG4iCittc2dzdHIgIkEgbGV6w6Fyw7Mga2Fwb2NzIGhpw6FueXppayBhIGZvcm3DoXR1bWJhblxuIgorCisjOiBsaWIvZHBrZy9wa2ctc2hvdy5jOjQwCittc2dpZCAiKG5vIGRlc2NyaXB0aW9uIGF2YWlsYWJsZSkiCittc2dzdHIgIihuaW5jcyBsZcOtcsOhcykiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzo1NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGlnbm9yZSBzaWduYWwgJXMgYmVmb3JlIHJ1bm5pbmcgJS4yNTBzIgorbXNnc3RyICJuZW0gdHVkb20gZWxkb2JuaSBhICVzIGplbGV0IGEgc3prcmlwdCBmdXR0YXTDoXNhIGVsxZF0dCIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjY4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHVuLWNhdGNoaW5nIHNpZ25hbCAlczogJXNcbiIKK21zZ3N0ciAiaGliYSBhICVzIGplbCBlbGVuZ2Vkw6lzZWtvcjogJXNcbiIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjc4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIChzdWJwcm9jZXNzKTogJXNcbiIKK21zZ3N0ciAiJXMgKGFsZm9seWFtYXQpOiAlc1xuIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6ODkgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQ1NAorbXNnaWQgImZvcmsgZmFpbGVkIgorbXNnc3RyICJmb3JrIGhpYmEiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMTkKKyMsIGMtZm9ybWF0Cittc2dpZCAic3VicHJvY2VzcyAlcyByZXR1cm5lZCBlcnJvciBleGl0IHN0YXR1cyAlZCIKK21zZ3N0ciAiJXMgYWxmb2x5YW1hdCAlZCBoaWJha8OzZGRhbCBraWzDqXBldHQiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMjgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInN1YnByb2Nlc3MgJXMgd2FzIGludGVycnVwdGVkIgorbXNnc3RyICIlcyBrw7NkcmEgdsOhcmFrb3rDoXMgbWVnaGnDunN1bHQiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInN1YnByb2Nlc3MgJXMga2lsbGVkIGJ5IHNpZ25hbCAoJXMpJXMiCittc2dpZCAic3VicHJvY2VzcyAlcyB3YXMga2lsbGVkIGJ5IHNpZ25hbCAoJXMpJXMiCittc2dzdHIgIiVzIGFsZm9seWFtYXQgbWVnw7ZsdmUsIGEgaGFsw6FsdCBva296w7MgamVsOiAoJXMpJXMiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMzIKK21zZ2lkICIsIGNvcmUgZHVtcGVkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAic3VicHJvY2VzcyAlcyBmYWlsZWQgd2l0aCB3YWl0IHN0YXR1cyBjb2RlICVkIgorbXNnc3RyICIlcyBhbGZvbHlhbWF0IG1lZ2hpw7pzdWx0ICVkIMOhbGxhcG90IGvDs2RyYSB2w6FydmEiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxNTEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQ2MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAid2FpdCBmb3Igc3VicHJvY2VzcyAlcyBmYWlsZWQiCittc2dzdHIgIiVzIGvDs2RyYSB2w6FyYWtvesOhcyBtZWdoacO6c3VsdCIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBwYWNrYWdlIG5hbWUgYCUuMjUwcycgaW4gdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDo4MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidHJ1bmNhdGVkIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgInN0YXRvdmVycmlkZSBmw6FqbDogYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjg1CisjLCBjLWZvcm1hdAorbXNnaWQgInN5bnRheCBlcnJvciBpbiB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIGF0IGNoYXJhY3RlciBgJXMnJXMiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MTM0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3Blbi9jcmVhdGUgdHJpZ2dlcnMgbG9ja2ZpbGUgYCUuMjUwcyciCittc2dzdHIgImUgZm9ycsOhc2bDoWpsIG5lbSBtZWdueWl0aGF0w7M6IGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNDEKKyMsIGZ1enp5Cittc2dpZCAidHJpZ2dlcnMgYXJlYSIKK21zZ3N0ciAibmVtIHR1ZG9tIGtpb2xkYW5pICVzLXQ6ICVzIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5lbSB0YWzDoWxvbSBhIG3DoXNpayBgJS4yNTBzJyDDumogZsOhamx0IgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNjUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImUgZm9ycsOhc2bDoWpsIG5lbSBtZWdueWl0aGF0w7M6IGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNzkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuL2NyZWF0ZSBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAic2lrZXJ0ZWxlbiBheiDDumogcmFrdMOhciBmw6FqbCBtZWdueWl0w6FzYTogYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjIxNQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcmVhZGluZyB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJoaWLDoXMgJXMgb2x2YXPDoXMgZSBmw6FqbGLDs2w6ICUuMjU1cyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MjIzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgInNpa2VydGVsZW4gYXogw7pqIHJha3TDoXIgZsOhamwgbWVnbnlpdMOhc2E6IGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoyMjgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAic2lrZXJ0ZWxlbiBheiDDumogcmFrdMOhciBmw6FqbCBtZWdueWl0w6FzYTogYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjIzMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5lbSB0dWRvbSB0ZWxlcMOtdGVuaSBgJS4yNTVzJyDDumogdmVyemnDs2rDoXQiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzoyMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImludmFsaWQgb3IgdW5rbm93biBzeW50YXggaW4gdHJpZ2dlciBuYW1lIGAlLjI1MHMnIChpbiB0cmlnZ2VyIGludGVyZXN0cyBmb3IgIgorInBhY2thZ2UgYCUuMjUwcycpIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzoyNjMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuIHRyaWdnZXIgaW50ZXJlc3QgbGlzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJzaWtlcnRlbGVuIGF6IMO6aiByYWt0w6FyIGbDoWpsIG1lZ255aXTDoXNhOiBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjI5MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJld2luZCB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgImAlLjI1MHMnIHLDqXN6IGbDoWpsIG5lbSBvbHZhc2hhdMOzIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzA1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcycgc3ludGF4IGVycm9yOyBpbGxlZ2FsIHBhY2thZ2UgbmFtZSBgJS4yNTBzJzogIgorIiUuMjUwcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzE4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmVtIHRhbMOhbG9tIGEgbcOhc2lrIGAlLjI1MHMnIMO6aiBmw6FqbHQiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlICclLjI1MHMnIgorbXNnc3RyICJuZW0gdGFsw6Fsb20gYSBtw6FzaWsgYCUuMjUwcycgw7pqIGbDoWpsdCIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMyNAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAibmVtIHRhbMOhbG9tIGEgbcOhc2lrIGAlLjI1MHMnIMO6aiBmw6FqbHQiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMzIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5lbSB0dWRvbSB0ZWxlcMOtdGVuaSBgJS4yNTVzJyDDumogdmVyemnDs2rDoXQiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozNDAgbGliL2Rwa2cvdHJpZ2xpYi5jOjM0MiBsaWIvZHBrZy90cmlnbGliLmM6NDcyCisjOiBzcmMvcmVtb3ZlLmM6Mjg2IHNyYy9yZW1vdmUuYzozNzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlbW92ZSBgJS4yNTBzJyIKK21zZ3N0ciAibmVtIHTDtnLDtmxoZXTFkTogYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozNjAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmVtIHRhbMOhbG9tIGEgbcOhc2lrIGAlLjI1MHMnIMO6aiBmw6FqbHQiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozODMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuZW0gdGFsw6Fsb20gYSBtw6FzaWsgYCUuMjUwcycgw7pqIGbDoWpsdCIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ1NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorImR1cGxpY2F0ZSBmaWxlIHRyaWdnZXIgaW50ZXJlc3QgZm9yIGZpbGVuYW1lIGAlLjI1MHMnIGFuZCBwYWNrYWdlIGAlLjI1MHMnIgorbXNnc3RyICJuZW0gdHVkb20gdGVsZXDDrXRlbmkgYXogw7pqIGAlLjI1MHMnIGluZm8gZsOhamx0LCBtaW50IGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDgzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgInNpa2VydGVsZW4gYXogw7pqIHJha3TDoXIgZsOhamwgbWVnbnlpdMOhc2E6IGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDkzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAic2lrZXJ0ZWxlbiBheiDDumogcmFrdMOhciBmw6FqbCBtZWdueWl0w6FzYTogYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0OTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlICclLjI1MHMnIgorbXNnc3RyICJzaWtlcnRlbGVuIGF6IMO6aiByYWt0w6FyIGbDoWpsIG1lZ255aXTDoXNhOiBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ5OQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAic2lrZXJ0ZWxlbiBheiDDumogcmFrdMOhciBmw6FqbCBtZWdueWl0w6FzYTogYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1MDMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJzaWtlcnRlbGVuIGF6IMO6aiByYWt0w6FyIGbDoWpsIG1lZ255aXTDoXNhOiBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjUwNworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSBhcyBgJS4yNTBzJyIKK21zZ3N0ciAibmVtIHR1ZG9tIHRlbGVww610ZW5pIGF6IMO6aiBgJS4yNTBzJyBpbmZvIGbDoWpsdCwgbWludCBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjU0MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJgJS4yNTBzJyByw6lzeiBmw6FqbCBuZW0gb2x2YXNoYXTDsyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjU1MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yIGluIGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiYmXDoWxsw610w7MgZsOhamwgb2x2YXPDoXNpIGhpYmE6IGAlLjI1NXMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTYzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmaWxlIHRyaWdnZXJzIHJlY29yZCBtZW50aW9ucyBpbGxlZ2FsIHBhY2thZ2UgbmFtZSBgJS4yNTBzJyAoZm9yIGludGVyZXN0IGluICIKKyJmaWxlIGAlLjI1MHMnKTogJS4yNTBzIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo2NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInRyaWdnZXJzIGNpIGZpbGUgYCUuMjUwcycgY29udGFpbnMgaWxsZWdhbCB0cmlnZ2VyIHN5bnRheCBpbiB0cmlnZ2VyIG5hbWUgYCIKKyIlLjI1MHMnOiAlLjI1MHMiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjY4NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gdHJpZ2dlcnMgY2kgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiZSBmb3Jyw6FzZsOhamwgbmVtIG1lZ255aXRoYXTDszogYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo2OTkKK21zZ2lkICJ0cmlnZ2VycyBjaSBmaWxlIGNvbnRhaW5zIHVua25vd24gZGlyZWN0aXZlIHN5bnRheCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NzEyCisjLCBjLWZvcm1hdAorbXNnaWQgInRyaWdnZXJzIGNpIGZpbGUgY29udGFpbnMgdW5rbm93biBkaXJlY3RpdmUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjc3NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSB0cmlnZ2VycyBzdGF0ZSBkaXJlY3RvcnkgYCUuMjUwcyciCittc2dzdHIgImAlLjI1MHMnIHJha3TDoXIga8O2bnl2dMOhciBuZW0gb2x2YXNoYXTDsyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjc3OQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNldCBvd25lcnNoaXAgb2YgdHJpZ2dlcnMgc3RhdGUgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICJgJS4yNTBzJyByYWt0w6FyIGvDtm55dnTDoXIgbmVtIG9sdmFzaGF0w7MiCisKKyM6IGxpYi9kcGtnL3RyaWduYW1lLmM6MzQKK21zZ2lkICJlbXB0eSB0cmlnZ2VyIG5hbWVzIGFyZSBub3QgcGVybWl0dGVkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWduYW1lLmM6MzgKK21zZ2lkICJ0cmlnZ2VyIG5hbWUgY29udGFpbnMgaW52YWxpZCBjaGFyYWN0ZXIiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdXRpbHMuYzo1NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAicmVhZCBlcnJvciBpbiBgJS4yNTBzJyIKK21zZ3N0ciAib2x2YXPDoXNpIGhpYmEgaXR0OiAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL3V0aWxzLmM6NjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZnZXRzIGdhdmUgYW4gZW1wdHkgc3RyaW5nIGZyb20gYCUuMjUwcyciCittc2dzdHIgImZnZXRzIMO8cmVzIHNvcnQgYWRvdHQgYXogZWx0w6lyw610w6lzZWtixZFsIFtpXSIKKworIzogbGliL2Rwa2cvdXRpbHMuYzo2MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidG9vLWxvbmcgbGluZSBvciBtaXNzaW5nIG5ld2xpbmUgaW4gYCUuMjUwcyciCittc2dzdHIgIkUgZsOhamw6IGAlLjI1MHMnIGhpYsOhcyAtIGhpw6FueXrDsyDDumogc29yIGV6dXTDoW46ICUuMjUwcyIKKworIzogbGliL2Rwa2cvdXRpbHMuYzo3NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgcmVhZGluZyBgJS4yNTBzJyIKK21zZ3N0ciAidsOhcmF0bGFuIGbDoWpsIHbDqWdlIGplbCBpdHQ6ICUuMjUwcyIKKworIzogbGliL2Rwa2cvdmFyYnVmLmM6ODIgbGliL2Rwa2cvdmFyYnVmLmM6ODgKK21zZ2lkICJlcnJvciBmb3JtYXR0aW5nIHN0cmluZyBpbnRvIHZhcmJ1ZiB2YXJpYWJsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxNzkgc3JjL2FyY2hpdmVzLmM6MjAwIHNyYy9hcmNoaXZlcy5jOjcyNAorbXNnaWQgImVycm9yIHJlYWRpbmcgZnJvbSBkcGtnLWRlYiBwaXBlIgorbXNnc3RyICJoaWJhIGEgZHBrZy1kZWIgY3PFkSBvbHZhc8Ohc2Frb3IiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjE5NQorIywgYy1mb3JtYXQKK21zZ2lkICJza2lwcGVkIHVucGFja2luZyBmaWxlICclLjI1NXMnIChyZXBsYWNlZCBvciBleGNsdWRlZD8pIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjI0NiBzcmMvYXJjaGl2ZXMuYzoyNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igc2V0dGluZyB0aW1lc3RhbXBzIG9mIGAlLjI1NXMnIgorbXNnc3RyICJuZW0gc2lrZXLDvGx0IGJlw6FsbMOtdGFuaSBgJS4yNTVzJyBpZMWRcGVjc8OpdGrDqXQiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjI2MgorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIG93bmVyc2hpcCBvZiBzeW1saW5rIGAlLjI1NXMnIgorbXNnc3RyICJoaWJhIGF6IGFsw6FiYmkgamzDoW5jIHR1bGFqZG9ub3PDoW5hayBiZcOhbGzDrXTDoXNha29yOiBgJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6MjY1IHNyYy9hcmNoaXZlcy5jOjczNCBzcmMvc3RhdGNtZC5jOjE2MworIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIG93bmVyc2hpcCBvZiBgJS4yNTVzJyIKK21zZ3N0ciAibmVtIHNpa2Vyw7xsdCBiZcOhbGzDrXRhbmkgYCUuMjU1cycgdHVsYWpkb25vc8OhdCIKKworIzogc3JjL2FyY2hpdmVzLmM6MjY3IHNyYy9hcmNoaXZlcy5jOjczNiBzcmMvc3RhdGNtZC5jOjE2NQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIHBlcm1pc3Npb25zIG9mIGAlLjI1NXMnIgorbXNnc3RyICJuZW0gc2lrZXLDvGx0IGJlw6FsbMOtdGFuaSBgJS4yNTVzJyBqb2dhaXQiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjM5NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHN0YXQgKGRlcmVmZXJlbmNlKSBleGlzdGluZyBzeW1saW5rIGAlLjI1MHMnIgorbXNnc3RyICJgJS4yNTBzJyBmdXR0YXTDoXNpIGpvZ2FpbmFrIGJlw6FsbMOtdMOhc2Egc2lrZXJ0ZWxlbiIKKworIzogc3JjL2FyY2hpdmVzLmM6NDE3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmYWlsZWQgdG8gc3RhdCAoZGVyZWZlcmVuY2UpIHByb3Bvc2VkIG5ldyBzeW1saW5rIHRhcmdldCBgJS4yNTBzJyBmb3IgIgorInN5bWxpbmsgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6NDc1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisidHJ5aW5nIHRvIG92ZXJ3cml0ZSBgJS4yNTBzJywgd2hpY2ggaXMgdGhlIGRpdmVydGVkIHZlcnNpb24gb2YgYCIKKyIlLjI1MHMnIChwYWNrYWdlOiAlLjEwMHMpIgorbXNnc3RyICIiCisia8Otc8OpcmxldCBgJS4yNTVzJyBmZWzDvGzDrXLDoXPDoXJhLCBhbWkgYSh6KSBgJS4yNTBzJyUuMTBzJS4xMDBzJS4xMHMgZWx0w6lyw610ZXR0ICIKKyJ2ZXJ6acOzamEuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo0ODEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInRyeWluZyB0byBvdmVyd3JpdGUgYCUuMjUwcycsIHdoaWNoIGlzIHRoZSBkaXZlcnRlZCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICIiCisia8Otc8OpcmxldCBgJS4yNTVzJyBmZWzDvGzDrXLDoXPDoXJhLCBhbWkgYSh6KSBgJS4yNTBzJyUuMTBzJS4xMDBzJS4xMHMgZWx0w6lyw610ZXR0ICIKKyJ2ZXJ6acOzamEuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo1MTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgYCUuMjU1cycgKHdoaWNoIEkgd2FzIGFib3V0IHRvIGluc3RhbGwpIgorbXNnc3RyICJuZW0gdGFsw6Fsb20gYCUuMjU1cyctdCAobWVseWV0IHRlbGVww610ZW5lbSBrw6luZSkiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjUxOQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidW5hYmxlIHRvIGNsZWFuIHVwIG1lc3Mgc3Vycm91bmRpbmcgYCUuMjU1cycgYmVmb3JlIGluc3RhbGxpbmcgYW5vdGhlciAiCisidmVyc2lvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo1MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgcmVzdG9yZWQgYCUuMjU1cycgYmVmb3JlIGluc3RhbGxpbmcgYW5vdGhlciB2ZXJzaW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjU2MQorIywgYy1mb3JtYXQKK21zZ2lkICJhcmNoaXZlIGNvbnRhaW5lZCBvYmplY3QgYCUuMjU1cycgb2YgdW5rbm93biB0eXBlIDB4JXgiCittc2dzdHIgImF6IGFyY2jDrXZ1bSBgJS4yNTVzJyBvYmpla3R1bWEgaXNtZXJldGxlbiAweCV4IHTDrXB1c8O6IgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2MjYgc3JjL2RpdmVydGNtZC5jOjE1MCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NjgyCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIyMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI4NAorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE0NDEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE2ODAKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTY3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjQ0CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUyNworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiY2Fubm90IHN0YXQgb2xkIG5hbWUgYCVzJzogJXMiCittc2dpZCAiY2Fubm90IHN0YXQgZmlsZSAnJXMnIgorbXNnc3RyICJhIHLDqWdpIGAlcycgbsOpdiBuZW0gdGFsw6FsaGF0w7M6ICVzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVwbGFjaW5nIGZpbGVzIGluIG9sZCBwYWNrYWdlICVzIC4uLlxuIgorbXNnc3RyICJGw6FqbG9rIGNzZXLDqWplIGEgcsOpZ2kgJXMgY3NvbWFnYmFuLi4uXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjY0NQorIywgYy1mb3JtYXQKK21zZ2lkICJSZXBsYWNlZCBieSBmaWxlcyBpbiBpbnN0YWxsZWQgcGFja2FnZSAlcyAuLi5cbiIKK21zZ3N0ciAiQSB0ZWxlcMOtdGV0dCAlcyBjc29tYWcgZsOhamxqYWkgY3NlcsOpbHTDqWsgLi4uXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjY1NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorInRyeWluZyB0byBvdmVyd3JpdGUgZGlyZWN0b3J5ICclLjI1MHMnIGluIHBhY2thZ2UgJS4yNTBzICUuMjUwcyB3aXRoICIKKyJub25kaXJlY3RvcnkiCittc2dzdHIgIiIKKyJgJS4yNTBzJyBrw7ZueXZ0w6FyIGZlbMO8bMOtcsOhc2kga8Otc8OpcmxldGUgYSBjc29tYWdiYW46ICUuMjUwcyBtw6FzIGbDoWpsdMOtcHVzc2FsIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInRyeWluZyB0byBvdmVyd3JpdGUgJyUuMjUwcycsIHdoaWNoIGlzIGFsc28gaW4gcGFja2FnZSAlLjI1MHMgJS4yNTBzIgorbXNnc3RyICIiCisiYCUuMjUwcycgZmVsw7xsw61yw6FzaSBrw61zw6lybGV0ZSwgbWVseSBheiBhbMOhYmJpIGNzb21hZ2JhbiBpcyBzemVyZXBlbDogJS4yNTBzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3MTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgYCUuMjU1cycgKHdoaWxlIHByb2Nlc3NpbmcgYCUuMjU1cycpIgorbXNnc3RyICJgJS4yNTVzJyBvbHZhc8Ohc2kgaGliYSAoaXR0OiBgJS4yNTVzJykiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjcxOAorIywgYy1mb3JtYXQKK21zZ2lkICJiYWNrZW5kIGRwa2ctZGViIGR1cmluZyBgJS4yNTVzJyIKK21zZ3N0ciAiaMOhdHTDqXIgZHBrZy1kZWIgYCUuMjU1cycgc29yw6FuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NDQgc3JjL2FyY2hpdmVzLmM6OTA4IHNyYy9hcmNoaXZlcy5jOjk0OQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nL3dyaXRpbmcgYCUuMjU1cyciCittc2dzdHIgImhpYmEgYXogYWzDoWJiaSBsZXrDoXLDoXNha29yL8OtcsOhc2Frb3I6IGAlLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgcGlwZSBgJS4yNTVzJyIKK21zZ3N0ciAiaGliYSBheiBhbMOhYmJpIGNzxZEgbMOpdHJlaG96w6FzYWtvcjogYCUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc1MyBzcmMvYXJjaGl2ZXMuYzo3NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgZGV2aWNlIGAlLjI1NXMnIgorbXNnc3RyICJoaWJhIGF6IGFsw6FiYmkgZXN6a8O2eiBsw6l0cmVob3rDoXNha29yOiBgJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6NzcxCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIGhhcmQgbGluayBgJS4yNTVzJyIKK21zZ3N0ciAiaGliYSBheiBhbMOhYmJpIG1lcmV2IGzDoW5jIGzDqXRyZWhvesOhc2Frb3I6IGAlLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NzcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjUzOQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBzeW1ib2xpYyBsaW5rIGAlLjI1NXMnIgorbXNnc3RyICJoaWJhIGF6IGFsw6FiYmkgamVsa8OpcGVzIGzDoW5jIGzDqXRyZWhvesOhc2Frb3I6IGAlLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgZGlyZWN0b3J5IGAlLjI1NXMnIgorbXNnc3RyICJoaWJhIGF6IGFsw6FiYmkga8O2bnl2dMOhciBsw6l0cmVob3rDoXNha29yOiBgJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6ODIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBtb3ZlIGFzaWRlIGAlLjI1NXMnIHRvIGluc3RhbGwgbmV3IHZlcnNpb24iCittc2dzdHIgIm5lbSB0dWRvbSBlbG1vemTDrXRhbmkgYCUuMjU1cyctdCBheiDDumogdsOhbHRvemF0IHRlbGVww610w6lzw6loZXoiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjgzMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MzIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIGxpbmsgYCUuMjU1cyciCittc2dzdHIgIm1lZ2hpw7pzdWx0IGUgbMOhbmMgb2x2YXPDoXNhOiBgJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6ODM0IHNyYy9jb25maWd1cmUuYzo0MjMKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ltYm9saWMgbGluayAnJS4yNTBzJyBzaXplIGhhcyBjaGFuZ2VkIGZyb20gJWpkIHRvICV6ZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG1ha2UgYmFja3VwIHN5bWxpbmsgZm9yIGAlLjI1NXMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjg0MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hvd24gYmFja3VwIHN5bWxpbmsgZm9yIGAlLjI1NXMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjg0NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gbWFrZSBiYWNrdXAgbGluayBvZiBgJS4yNTVzJyBiZWZvcmUgaW5zdGFsbGluZyBuZXcgdmVyc2lvbiIKK21zZ3N0ciAiIgorIm5lbSB0dWRvbSBlbGvDqXN6w610ZW5pIGAlLjI1NXMnIG1lbnTFkSBsw6FuY8OhdCBheiDDumogdsOhbHRvemF0IHRlbGVww610w6lzZSBlbMWRdHQiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjg2MyBzcmMvYXJjaGl2ZXMuYzo5NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IHZlcnNpb24gb2YgYCUuMjU1cyciCittc2dzdHIgIm5lbSB0dWRvbSB0ZWxlcMOtdGVuaSBgJS4yNTVzJyDDumogdmVyemnDs2rDoXQiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjkwMiBzcmMvYXJjaGl2ZXMuYzo5NDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuICclLjI1NXMnIgorbXNnc3RyICJgJS4yNTVzJyBuZW0gaG96aGF0w7MgbMOpdHJlIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo5NDcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzeW5jIGZpbGUgJyUuMjU1cyciCittc2dzdHIgImUgZm9ycsOhc2bDoWpsIG5lbSBtZWdueWl0aGF0w7M6IGAlLjI1MHMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDAwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiaWdub3JpbmcgZGVwZW5kZW5jeSBwcm9ibGVtIHdpdGggJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiBmaWd5ZWxlbSAtIG5lbSB2ZXN6ZW0gZmlneWVsZW1iZSBhKHopICVzIGVsdMOhdm9sw610w6Fzw6F2YWwgasOhcsOzICIKKyJmw7xnZ8WRc8OpZ2kgZ29uZG9rYXQ6XG4iCisiJXMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJjb25zaWRlcmluZyBkZWNvbmZpZ3VyYXRpb24gb2YgZXNzZW50aWFsXG4iCisiIHBhY2thZ2UgJXMsIHRvIGVuYWJsZSAlcy4iCittc2dzdHIgIiIKKyJkcGtnOiBmaWd5ZWxlbSAtIGVneSBsw6lueWVnZXMgY3NvbWFnOiAlcyBkZWtvbmZpZ3Vyw6Fsw6Fzw6F0XG4iCisiIHbDoWxhc3p0b3R0YWQgJXMgZWx0w6F2b2zDrXTDoXPDocOpcnQuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMDgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBubywgJXMgaXMgZXNzZW50aWFsLCB3aWxsIG5vdCBkZWNvbmZpZ3VyZVxuIgorIiBpdCBpbiBvcmRlciB0byBlbmFibGUgJXMuXG4iCittc2dzdHIgIiIKKyJkcGtnOiBuZW0sICVzIGzDqW55ZWdlcywgbmVtIGRla29uZmlndXLDoWxvbVxuIgorIiAlcyBlbHTDoXZvbMOtdMOhc8Ohw6lydC5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAyMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IG5vLCBjYW5ub3QgcHJvY2VlZCB3aXRoICVzICgtLWF1dG8tZGVjb25maWd1cmUgd2lsbCBoZWxwKTpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6IG5lbSwgbmVtIHR1ZG9tIHTDtnLDtmxuaSAlcy10ICgtLWF1dG8tZGVjb25maWd1cmUgc2Vnw610KTpcbiIKKyIlcyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAzMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAicmVtb3ZhbCBvZiAlLjI1MHMiCittc2dzdHIgIm9sdmFzw6FzaSBoaWJhIGl0dDogJS4yNTBzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDU3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJpbnN0YWxsYXRpb24gb2YgJS4yNTBzIgorbXNnc3RyICJuZW0gdHVkb20gdGVsZXDDrXRlbmkgYCUuMjU1cycgw7pqIHZlcnppw7Nqw6F0IgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDU4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogY29uc2lkZXJpbmcgZGVjb25maWd1cmF0aW9uIG9mICVzLCB3aGljaCB3b3VsZCBiZSBicm9rZW4gYnkgJXMgLi4uXG4iCittc2dzdHIgImRwa2c6ICVzIHTDtnJsw6lzZSAlcyBqYXbDoXJhLi4uXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNjUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IHllcywgd2lsbCBkZWNvbmZpZ3VyZSAlcyAoYnJva2VuIGJ5ICVzKS5cbiIKK21zZ3N0ciAiZHBrZzogaWdlbiwgdMO2cmzDtm0gJXMtdCAlcyBqYXbDoXJhLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDY5IHNyYy9hcmNoaXZlcy5jOjExODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IHJlZ2FyZGluZyAlcyBjb250YWluaW5nICVzOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogJXMgbWlhdHQgJXMtdCBpcyB0YXJ0YWxtYXp6YTpcbiIKKyIlcyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA3NworIywgZnV6enkKK21zZ2lkICJpZ25vcmluZyBicmVha2FnZSwgbWF5IHByb2NlZWQgYW55d2F5ISIKK21zZ3N0ciAiZHBrZzogZmlneWVsZW0gLSBheiDDvHRrw7Z6w6lzZWsgZmlneWVsbWVuIGvDrXbDvGwgaGFnecOhc8OhdmFsIGZvbHl0YXRvbSAhXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImluc3RhbGxpbmcgJS4yNTBzIHdvdWxkIGJyZWFrICUuMjUwcywgYW5kXG4iCisiIGRlY29uZmlndXJhdGlvbiBpcyBub3QgcGVybWl0dGVkICgtLWF1dG8tZGVjb25maWd1cmUgbWlnaHQgaGVscCkiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA4NgorIywgYy1mb3JtYXQKK21zZ2lkICJpbnN0YWxsaW5nICUuMjUwcyB3b3VsZCBicmVhayBleGlzdGluZyBzb2Z0d2FyZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTE2CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IGNvbnNpZGVyaW5nIHJlbW92aW5nICVzIGluIGZhdm91ciBvZiAlcyAuLi5cbiIKK21zZ3N0ciAiZHBrZzogJXMgdMO2cmzDqXNlICVzIGphdsOhcmEuLi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTEyMgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgcHJvcGVybHkgaW5zdGFsbGVkIC0gaWdub3JpbmcgYW55IGRlcGVuZGVuY2llcyBvbiBpdC5cbiIKK21zZ3N0ciAiJXMgbmluY3MgcmVuZGJlbiB0ZWxlcMOtdHZlIC0ga2loYWd5b20sIGFtaWsgdMWRbGUgZsO8Z2dlbmVrLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTUxCisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IG1heSBoYXZlIHRyb3VibGUgcmVtb3ZpbmcgJXMsIGFzIGl0IHByb3ZpZGVzICVzIC4uLlxuIgorbXNnc3RyICJkcGtnOiBnb25kIGxlaGV0ICVzIHTDtnJsw6lzZWtvciwgbWl2ZWwgJXMtdCBhZGphIC4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTY2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogcGFja2FnZSAlcyByZXF1aXJlcyByZWluc3RhbGxhdGlvbiwgYnV0IHdpbGwgcmVtb3ZlIGFueXdheSBhcyB5b3UgIgorInJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiZHBrZyAlcyDDumpyYXRlbGVww610w6lzdCBrw612w6FuLCBkZSBrw6lyw6lzZWRyZSB0w7ZybMO2bS5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE2OQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiBwYWNrYWdlICVzIHJlcXVpcmVzIHJlaW5zdGFsbGF0aW9uLCB3aWxsIG5vdCByZW1vdmUuXG4iCittc2dzdHIgImRwa2cgJXMgw7pqcmF0ZWxlcMOtdMOpc3Qga8OtdsOhbiwgbmVtIHTDtnJsw7ZtLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTc4CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IHllcywgd2lsbCByZW1vdmUgJXMgaW4gZmF2b3VyIG9mICVzLlxuIgorbXNnc3RyICJkcGtnOiBpZ2VuLCB0w7ZybMO2bSAlcy10ICVzIGphdsOhcmEuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmxpY3RpbmcgcGFja2FnZXMgLSBub3QgaW5zdGFsbGluZyAlLjI1MHMiCittc2dzdHIgIsO8dGvDtnrFkSBjc29tYWdvayAtIG5lbSB0ZWxlcMOtdGVtICUuMjUwcy10IgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTkxCisjLCBmdXp6eQorbXNnaWQgImlnbm9yaW5nIGNvbmZsaWN0LCBtYXkgcHJvY2VlZCBhbnl3YXkhIgorbXNnc3RyICJkcGtnOiBmaWd5ZWxlbSAtIGF6IMO8dGvDtnrDqXNlayBmaWd5ZWxtZW4ga8OtdsO8bCBoYWd5w6Fzw6F2YWwgZm9seXRhdG9tICFcbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTIzNQorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIC0tcmVjdXJzaXZlIG5lZWRzIGF0IGxlYXN0IG9uZSBwYXRoIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIC0tcmVjdXJzaXZlIGxlZ2Fsw6FiYiAxIMO2c3bDqW55IGFyZ3VtZW50dW1vdCB2w6FyIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjQ1CisjLCBmdXp6eQorbXNnaWQgImZpbmQgZm9yIGRwa2cgLS1yZWN1cnNpdmUiCittc2dzdHIgImZpbmQgZnV0dGF0w6FzYSBhIC0tcmVjdXJzaXZlLWhveiBzaWtlcnRlbGVuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjY2Cittc2dpZCAiZmFpbGVkIHRvIGZkb3BlbiBmaW5kJ3MgcGlwZSIKK21zZ3N0ciAic2lrZXJ0ZWxlbiBmZG9wZW4gYSBmaW5kIGNzxZFow7Z6IgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjcyCittc2dpZCAiZXJyb3IgcmVhZGluZyBmaW5kJ3MgcGlwZSIKK21zZ3N0ciAiaGliYSBhIGZpbmQgY3PFkSBvbHZhc8Ohc2Frb3IiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNzMKK21zZ2lkICJlcnJvciBjbG9zaW5nIGZpbmQncyBwaXBlIgorbXNnc3RyICJoaWJhIGEgZmluZCBjc8WRIGxlesOhcsOhc2Frb3IiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmluZCBmb3IgLS1yZWN1cnNpdmUgcmV0dXJuZWQgdW5oYW5kbGVkIGVycm9yICVpIgorbXNnc3RyICJhIGZpbmQgYSAtLXJlY3Vyc2l2ZS1ob3oga2V6ZWxldGxlbiBoaWLDoXZhbCB0w6lydCB2aXNzemE6ICVpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjc5Cittc2dpZCAic2VhcmNoZWQsIGJ1dCBmb3VuZCBubyBwYWNrYWdlcyAoZmlsZXMgbWF0Y2hpbmcgKi5kZWIpIgorbXNnc3RyICJrZXJlc3RlbSwgZGUgbmVtIGxlbHRlbSBjc29tYWdva2F0ICgqLmRlYiBmw6FqbG9rYXQpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjkwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYXQgbGVhc3Qgb25lIHBhY2thZ2UgYXJjaGl2ZSBmaWxlIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIGxlZ2Fsw6FiYiAxIGNzb21hZ2FyY2jDrXZ1bSBmw6FqbCBhcmd1bWVudHVtb3QgdsOhciIKKworIzogc3JjL2FyY2hpdmVzLmM6MTMyNSBzcmMvZGl2ZXJ0Y21kLmM6Nzggc3JjL2RpdmVydGNtZC5jOjExOAorIzogc3JjL2VucXVpcnkuYzoxNjYgc3JjL2VucXVpcnkuYzoyNzkgc3JjL2VucXVpcnkuYzo0NDkgc3JjL2VucXVpcnkuYzo0NTEKKyM6IHNyYy9lbnF1aXJ5LmM6NDY0IHNyYy9tYWluLmM6NjYgc3JjL21haW4uYzoxNjMgc3JjL21haW4uYzozMTQKKyM6IHNyYy9tYWluLmM6NDkzIHNyYy9wYWNrYWdlcy5jOjI1NCBzcmMvcXVlcnljbWQuYzoyNTIgc3JjL3F1ZXJ5Y21kLmM6MzU1CisjOiBzcmMvcXVlcnljbWQuYzozOTYgc3JjL3F1ZXJ5Y21kLmM6NDA0IHNyYy9xdWVyeWNtZC5jOjQ0OCBzcmMvcXVlcnljbWQuYzo1MTcKKyM6IHNyYy9xdWVyeWNtZC5jOjYwNiBzcmMvcXVlcnljbWQuYzo2NTAgc3JjL3NlbGVjdC5jOjc5IHNyYy9zdGF0Y21kLmM6NjgKKyM6IHNyYy9zdGF0Y21kLmM6OTggc3JjL3RyaWdjbWQuYzo1OCBzcmMvdHJpZ2NtZC5jOjkwIGRwa2ctZGViL2J1aWxkLmM6NDQxCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjE3IGRwa2ctZGViL2V4dHJhY3QuYzoyNTAgZHBrZy1kZWIvaW5mby5jOjIwMworIzogZHBrZy1kZWIvaW5mby5jOjI2NSBkcGtnLWRlYi9tYWluLmM6NjAgZHBrZy1kZWIvbWFpbi5jOjEyNgorIzogZHBrZy1zcGxpdC9pbmZvLmM6MjU3IGRwa2ctc3BsaXQvbWFpbi5jOjU0IGRwa2ctc3BsaXQvbWFpbi5jOjk4CisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTQ0IGRwa2ctc3BsaXQvcXVldWUuYzoyODAKK21zZ2lkICI8c3RhbmRhcmQgb3V0cHV0PiIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzI2IHNyYy9wYWNrYWdlcy5jOjI1NSBzcmMvcXVlcnljbWQuYzoyNTMKKyM6IHNyYy9xdWVyeWNtZC5jOjM1MyBzcmMvcXVlcnljbWQuYzo0NTQgc3JjL3F1ZXJ5Y21kLmM6NTE4IHNyYy9zZWxlY3QuYzo4MAorIzogZHBrZy1zcGxpdC9tYWluLmM6MTY5IGRwa2ctc3BsaXQvcXVldWUuYzoyMTgKK21zZ2lkICI8c3RhbmRhcmQgZXJyb3I+IgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzNjcKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIlNlbGVjdGluZyBwcmV2aW91c2x5IGRlc2VsZWN0ZWQgcGFja2FnZSAlcy5cbiIKK21zZ2lkICJTZWxlY3RpbmcgcHJldmlvdXNseSB1bnNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dzdHIgIsOaaiBjc29tYWcga2l2w6FsYXN6dMOhc2E6ICVzLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzcxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJTa2lwcGluZyBkZXNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dpZCAiU2tpcHBpbmcgdW5zZWxlY3RlZCBwYWNrYWdlICVzLlxuIgorbXNnc3RyICJLaWplbMO2bGV0bGVuICVzIGNzb21hZyDDoXR1Z3LDoXNhLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzg3CisjLCBjLWZvcm1hdAorbXNnaWQgIlZlcnNpb24gJS4yNTBzIG9mICUuMjUwcyBhbHJlYWR5IGluc3RhbGxlZCwgc2tpcHBpbmcuXG4iCittc2dzdHIgIkUgY3NvbWFnICUuMjUwcyB2ZXppw7NqYTogJS4yNTBzIG3DoXIgdGVsZXDDrXRldHQsIMOhdHVncm9tLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzk3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJkb3duZ3JhZGluZyAlLjI1MHMgZnJvbSAlLjI1MHMgdG8gJS4yNTBzLiIKK21zZ3N0ciAiJXMgLSBmaWd5ZWxlbTogJS4yNTBzIMO2cmVnYsOtdMOpc2UgaW5uZW46ICUuMjUwcyBpZGU6ICUuMjUwcy5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTQwMgorIywgYy1mb3JtYXQKK21zZ2lkICJXaWxsIG5vdCBkb3duZ3JhZGUgJS4yNTBzIGZyb20gdmVyc2lvbiAlLjI1MHMgdG8gJS4yNTBzLCBza2lwcGluZy5cbiIKK21zZ3N0ciAiIgorIk5lbSBmb2dvbSDDtnJnZWdiw610ZW5pICUuMjUwcy10ICUuMjUwcyB2ZXJ6acOzcsOzbCBlcnJlOiAlLjI1MHMsIGtpaGFneW9tLlxuIgorCisjOiBzcmMvY2xlYW51cC5jOjg2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1bmFibGUgdG8gcmVtb3ZlIG5ld2x5LWluc3RhbGxlZCB2ZXJzaW9uIG9mIGAlLjI1MHMnIHRvIGFsbG93IHJlaW5zdGFsbGF0aW9uICIKKyJvZiBiYWNrdXAgY29weSIKK21zZ3N0ciAiIgorIm5lbSBsZWhldCB0w7Zyw7ZsbmkgYCUuMjUwcycgw7pqb25uYW4gdGVsZXDDrXRldHQgdmVyemnDs2rDoXQgYSBiaXp0b25zw6FnaSBtw6Fzb2xhdCAiCisiw7pqcmF0ZWxlcMOtdMOpc8OpaGV6IgorCisjOiBzcmMvY2xlYW51cC5jOjkzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZXN0b3JlIGJhY2t1cCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICJuZW0gbGVoZXQgdmlzc3phw6FsbMOtdGFuaSBcIiUuMjUwc1wiIG1lbnRldHQgdsOhbHRvemF0w6F0IgorCisjOiBzcmMvY2xlYW51cC5jOjk3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gcmVzdG9yZSBiYWNrdXAgdmVyc2lvbiBvZiBgJS4yNTBzJyIKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIGJhY2t1cCBjb3B5IG9mICclLjI1MHMnIgorbXNnc3RyICJuZW0gbGVoZXQgdmlzc3phw6FsbMOtdGFuaSBcIiUuMjUwc1wiIG1lbnRldHQgdsOhbHRvemF0w6F0IgorCisjOiBzcmMvY2xlYW51cC5jOjEwMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIG5ld2x5LWluc3RhbGxlZCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICJuZW0gdHVkb20gZWx0w6F2b2zDrXRhbmkgYCUuMjUwcycgw7pqb25uYW4tdGVsZXDDrXRldHQgdmVyemnDs2rDoXQiCisKKyM6IHNyYy9jbGVhbnVwLmM6MTA4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgbmV3bHktZXh0cmFjdGVkIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dzdHIgIm5lbSB0dWRvbSBlbHTDoXZvbMOtdGFuaSBgJS4yNTBzJyDDumpvbm5hbi1raWNzb21hZ29sdCB2ZXJ6acOzasOhdCIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjEwNAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHN0YXQgbmV3IGRpc3QgY29uZmZpbGUgYCUuMjUwcyciCittc2dpZCAidW5hYmxlIHRvIHN0YXQgbmV3IGRpc3RyaWJ1dGVkIGNvbmZmaWxlICclLjI1MHMnIgorbXNnc3RyICJuZW0gw6lyaGV0xZEgZWwgYXogw7pqIHRlcmplc3p0w6lzaSBiZcOhbGzDrXTDs2bDoWpsOiAlLjI1MHMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgY3VycmVudCBpbnN0YWxsZWQgY29uZmZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5lbSDDqXJoZXTFkSBlbCBhIGplbGVubGVnIHRlbGVww610ZXR0IGJlw6FsbMOtdMOzZsOhamw6ICUuMjUwcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjEyNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiQ29uZmlndXJhdGlvbiBmaWxlIGAlcycsIGRvZXMgbm90IGV4aXN0IG9uIHN5c3RlbS5cbiIKKyJJbnN0YWxsaW5nIG5ldyBjb25maWcgZmlsZSBhcyB5b3UgcmVxdWVzdGVkLlxuIgorbXNnc3RyICIiCisiXG4iCisiTmluY3MgYCVzJyBiZcOhbGzDrXTDsyBmw6FqbCBhIHJlbmRzemVyZW4uXG4iCisiS8OpcsOpc2VkcmUgw7pqYXQgdGVsZXDDrXRlay5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE2OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW1vdmUgb2xkIGJhY2t1cCAnJS4yNTBzJzogJXMiCittc2dzdHIgImRwa2c6ICVzOiBmaWd5ZWxlbSAtIGEgcsOpZ2kgYCUuMjUwcycgbWVudMOpcyB0w7ZybMOpc2UgbWVnaGnDunN1bHQ6ICVzXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzoxNzYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVuYW1lICclLjI1MHMnIHRvICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiBmaWd5ZWxlbSAtIG5lbSBzaWtlcsO8bHQgw6F0bmV2ZXpuaSBgJS4yNTBzJy10IGVycmU6IGAlLjI1MHMnOiAlc1xuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTgyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIHJlbW92ZSAnJS4yNTBzJzogJXMiCittc2dzdHIgIiVzOiBzaWtlcnRlbGVuIGd6aXAgJXMgZnV0dGF0w6FzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTg4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIHJlbW92ZSBvbGQgZGlzdHJpYnV0ZWQgdmVyc2lvbiAnJS4yNTBzJzogJXMiCittc2dzdHIgImRwa2c6ICVzOiBmaWd5ZWxlbSAtIGEgcsOpZ2kgYCUuMjUwcycgbWVudMOpcyB0w7ZybMOpc2UgbWVnaGnDunN1bHQ6ICVzXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzoxOTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlICclLjI1MHMnIChiZWZvcmUgb3ZlcndyaXRlKTogJXMiCittc2dzdHIgIiIKKyJkcGtnOiAlczogZmlneWVsZW0gLSBuZW0gc2lrZXLDvGx0IGAlLjI1MHMnIGVsdMOhdm9sw610w6FzYSAoZmVsw7xsw61yw6FzIGVsxZF0dCk6ICIKKyIlc1xuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTk2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIGxpbmsgJyUuMjUwcycgdG8gJyUuMjUwcyc6ICVzIgorbXNnc3RyICJkcGtnOiAlczogZmlneWVsZW0gLSBtZWdoacO6c3VsdCBgJS4yNTBzJyBsw6FuY29sw6FzYSBpZGU6IGAlLjI1MHMnOiAlc1xuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjAwCisjLCBjLWZvcm1hdAorbXNnaWQgIkluc3RhbGxpbmcgbmV3IHZlcnNpb24gb2YgY29uZmlnIGZpbGUgJXMgLi4uXG4iCittc2dzdHIgIsOaaiBiZcOhbGzDrXTDsyBmw6FqbCB0ZWxlcMOtdMOpc2UgJXMgLi4uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzoyMDYgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjU0NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBgJS4yNTBzJyBhcyBgJS4yNTBzJyIKK21zZ3N0ciAibmVtIHNpa2Vyw7xsdCB0ZWxlcMOtdGVuaSBgJS4yNTBzJy10IGAlLjI1MHMnLWvDqW50IgorCisjOiBzcmMvY29uZmlndXJlLmM6MjU3CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHBhY2thZ2UgbmFtZWQgYCVzJyBpcyBpbnN0YWxsZWQsIGNhbm5vdCBjb25maWd1cmUiCittc2dzdHIgIm5pbmNzIGAlcycgY3NvbWFnIHRlbGVww610dmUsIMOtZ3kgbmVtIGJlw6FsbMOtdGhhdMOzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjYwCisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgJS4yNTBzIGlzIGFscmVhZHkgaW5zdGFsbGVkIGFuZCBjb25maWd1cmVkIgorbXNnc3RyICJBKHopICUuMjUwcyBjc29tYWcgbcOhciB0ZWxlcMO8bHQgw6lzIGJlIHZhbiDDoWxsw610dmEiCisKKyM6IHNyYy9jb25maWd1cmUuYzoyNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInBhY2thZ2UgJS4yNTBzIGlzIG5vdCByZWFkeSBmb3IgY29uZmlndXJhdGlvblxuIgorIiBjYW5ub3QgY29uZmlndXJlIChjdXJyZW50IHN0YXR1cyBgJS4yNTBzJykiCittc2dzdHIgIiIKKyJBKHopICUuMjUwcyBjc29tYWcgbmVtIGJlw6FsbMOtdGhhdMOzXG4iCisiIChqZWxlbmxlZ2kgw6FsbGFwb3RhOiBgJS4yNTBzJykiCisKKyM6IHNyYy9jb25maWd1cmUuYzoyOTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IGRlcGVuZGVuY3kgcHJvYmxlbXMgcHJldmVudCBjb25maWd1cmF0aW9uIG9mICVzOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogZsO8Z2fFkXPDqWdpIGdvbmRvayBtaWF0dCBuZW0gYmXDoWxsw610aGF0w7MgZSBjc29tYWc6ICVzOlxuIgorIiVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6Mjk3Cittc2dpZCAiZGVwZW5kZW5jeSBwcm9ibGVtcyAtIGxlYXZpbmcgdW5jb25maWd1cmVkIgorbXNnc3RyICJmw7xnZ8WRc8OpZ2kgaGliw6FrIC0gZSBjc29tYWcgYmXDoWxsw610YXRsYW4gbWFyYWR0IgorCisjOiBzcmMvY29uZmlndXJlLmM6MzAxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiAlczogZGVwZW5kZW5jeSBwcm9ibGVtcywgYnV0IGNvbmZpZ3VyaW5nIGFueXdheSBhcyB5b3UgcmVxdWVzdGVkOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogJXM6IGbDvGdnxZFzw6lnaSBoaWLDoWssIG3DqWdpcyBrb25maWd1csOhbG9tLCBtZXJ0IGV6dCBha2FydGFkOlxuIgorIiVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MzA5Cittc2dpZCAiIgorIlBhY2thZ2UgaXMgaW4gYSB2ZXJ5IGJhZCBpbmNvbnNpc3RlbnQgc3RhdGUgLSB5b3Ugc2hvdWxkXG4iCisiIHJlaW5zdGFsbCBpdCBiZWZvcmUgYXR0ZW1wdGluZyBjb25maWd1cmF0aW9uLiIKK21zZ3N0ciAiIgorIkUgY3NvbWFnIG5hZ3lvbiByb3Nzeiwga8O2dmV0a2V6ZXRsZW4gw6FsbGFwb3RiYW4gdmFuIC0gw7pqcmEga2VsbCBcbiIKKyIgdGVsZXDDrXRlbmVkIGEgYmXDoWxsw610w6FzIGVsxZF0dC4iCisKKyM6IHNyYy9jb25maWd1cmUuYzozMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2V0dGluZyB1cCAlcyAoJXMpIC4uLlxuIgorbXNnc3RyICJCZcOhbGzDrXTDoXM6ICVzICglcykgLi4uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzozOTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogdW5hYmxlIHRvIHN0YXQgY29uZmlnIGZpbGUgJyVzJ1xuIgorIiAoPSAnJXMnKTogJXMiCittc2dzdHIgIiIKKyJkcGtnOiAlczogZmlneWVsZW0gLSBuZW0gbGVsZW0gZSBiZcOhbGzDrXTDs2bDoWpsdDogYCVzJ1xuIgorIiAoPSBgJXMnKTogJXNcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQwOQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBjb25maWcgZmlsZSAnJXMnIGlzIGEgY2lyY3VsYXIgbGlua1xuIgorIiAoPSAnJXMnKSIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiBmaWd5ZWxlbSAtIGAlcycgYmXDoWxsw610w7Nmw6FqbCBlZ3kga8O2cmvDtnLDtnMgbMOhbmNcbiIKKyIgKD0gYCVzJylcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQxOAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiB1bmFibGUgdG8gcmVhZGxpbmsgY29uZmZpbGUgJyVzJ1xuIgorIiAoPSAnJXMnKTogJXMiCittc2dzdHIgIiIKKyJkcGtnOiAlczogZmlneWVsZW0gLSBuZW0gbGVsZW0gZSBiZcOhbGzDrXTDs2bDoWpsdDogYCVzJ1xuIgorIiAoPSBgJXMnKTogJXNcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQ0NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBjb25mZmlsZSAnJS4yNTBzJyByZXNvbHZlcyB0byBkZWdlbmVyYXRlIGZpbGVuYW1lXG4iCisiICgnJXMnIGlzIGEgc3ltbGluayB0byAnJXMnKSIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiBmaWd5ZWxlbSAtIGAlLjI1MHMnIGtvbmZmw6FqbCBuZW0tZXJlZGV0aSBmw6FqbG5ldmV0IG9sZCBmZWxcbiIKKyIgKGAlcycgamzDoW5jIGlkZTogYCVzJylcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQ2MAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGNvbmZmaWxlICclLjI1MHMnIGlzIG5vdCBhIHBsYWluIGZpbGUgb3Igc3ltbGluayAoPSAnJXMnKSIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiBmaWd5ZWxlbSAtIGAlLjI1MHMnIGtvbmZmw6FqbCBuZW0gc2ltYSBmw6FqbCB2YWd5IGpsw6FuYyAoPSBgJXMnKVxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDg2Cittc2dpZCAibWQ1aGFzaCIKK21zZ3N0ciAibWQ1aGFzaCIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQ5MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IHVuYWJsZSB0byBvcGVuIGNvbmZmaWxlICVzIGZvciBoYXNoOiAlcyIKK21zZ3N0ciAibmVtIHR1ZG9tIG1lZ255aXRuaSAlcy10IMOtcsOhc3JhOiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjUyMiBzcmMvY29uZmlndXJlLmM6NTI2Cittc2dpZCAiY29uZmZpbGUgZGlmZmVyZW5jZSB2aXN1YWxpemVyIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo1NDMKK21zZ2lkICJUeXBlIGBleGl0JyB3aGVuIHlvdSdyZSBkb25lLlxuIgorbXNnc3RyICLDjXJkIGJlIGF6IGBleGl0Jy1ldCwgaGEga8Opc3ogdmFneS5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjU1MiBzcmMvY29uZmlndXJlLmM6NTU2Cittc2dpZCAiY29uZmZpbGUgc2hlbGwiCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYwMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiQ29uZmlndXJhdGlvbiBmaWxlIGAlcyciCittc2dzdHIgIiIKKyJcbiIKKyJCZcOhbGzDrXTDsyBmw6FqbDogYCVzJyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYwNAorIywgYy1mb3JtYXQKK21zZ2lkICIgKGFjdHVhbGx5IGAlcycpIgorbXNnc3RyICIgKGplbGVubGVnIGAlcycpIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjA4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgPT0+IEZpbGUgb24gc3lzdGVtIGNyZWF0ZWQgYnkgeW91IG9yIGJ5IGEgc2NyaXB0LlxuIgorIiA9PT4gRmlsZSBhbHNvIGluIHBhY2thZ2UgcHJvdmlkZWQgYnkgcGFja2FnZSBtYWludGFpbmVyLlxuIgorbXNnc3RyICIiCisiXG4iCisiID09PiBBIHJlbmRzemVyZW4gbMOpdsWRIGbDoWpsdCBUZSwgdmFneSBlZ3kgbcOhc2lrIHBhcmFuY3Nmw6FqbCDDrXJ0YS5cbiIKKyIgPT0+IEEgZsOhamwgYSBrYXJiYW50YXJ0w7Mgw6FsdGFsIGvDqXN6w610ZXR0IGNzb21hZ2JhbiBpcyBsw6l0ZXppay5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYxMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiICAgICBOb3QgbW9kaWZpZWQgc2luY2UgaW5zdGFsbGF0aW9uLlxuIgorbXNnc3RyICIiCisiXG4iCisiICAgICBOZW0gbcOzZG9zdWx0IGEgdGVsZXDDrXTDqXMgw7N0YS5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYxNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiID09PiBNb2RpZmllZCAoYnkgeW91IG9yIGJ5IGEgc2NyaXB0KSBzaW5jZSBpbnN0YWxsYXRpb24uXG4iCittc2dzdHIgIiIKKyJcbiIKKyIgPT0+IE3Ds2Rvc8OtdG90dGFkIChUZSB2YWd5IGVneSBwYXJhbmNzZsOhamwpIGEgdGVsZXDDrXTDqXMgw7N0YS5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYxNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiID09PiBEZWxldGVkIChieSB5b3Ugb3IgYnkgYSBzY3JpcHQpIHNpbmNlIGluc3RhbGxhdGlvbi5cbiIKK21zZ3N0ciAiIgorIlxuIgorIiA9PT4gVMO2csO2bHRlZCAoVGUsIHZhZ3kgZWd5IHBhcmFuY3Nmw6FqbCkgYSB0ZWxlcMOtdMOpcyDDs3RhLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjE5CisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gUGFja2FnZSBkaXN0cmlidXRvciBoYXMgc2hpcHBlZCBhbiB1cGRhdGVkIHZlcnNpb24uXG4iCittc2dzdHIgIiA9PT4gQSBjc29tYWcgdGVyamVzenTFkWplIGZyaXNzw610ZXR0LlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjIwCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgICAgVmVyc2lvbiBpbiBwYWNrYWdlIGlzIHRoZSBzYW1lIGFzIGF0IGxhc3QgaW5zdGFsbGF0aW9uLlxuIgorbXNnc3RyICIgICAgIEEgY3NvbWFnYmFuIGzDqXbFkSB2w6FsdG96YXQgbWVnZmVsZWwgYSBsZWd1dMOzYmIgdGVsZXDDrXRldHRuZWtcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYyOAorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IFVzaW5nIG5ldyBmaWxlIGFzIHlvdSByZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiA9PT4gS8OpcsOpc2VkcmUgYXogw7pqIGbDoWpsdCBoYXN6bsOhbG9tLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gVXNpbmcgY3VycmVudCBvbGQgZmlsZSBhcyB5b3UgcmVxdWVzdGVkLlxuIgorbXNnc3RyICIgPT0+IEvDqXLDqXNlZHJlIGEgbW9zdGFuaSByw6lnaSBmw6FqbHQgaGFzem7DoWxvbS5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY0MQorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IEtlZXBpbmcgb2xkIGNvbmZpZyBmaWxlIGFzIGRlZmF1bHQuXG4iCittc2dzdHIgIj09PiBSw6lnaSBmw6FqbCBtZWd0YXJ0w6FzYSBhbGFww6lydGVsbWV6ZXR0a8OpbnQuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBVc2luZyBuZXcgY29uZmlnIGZpbGUgYXMgZGVmYXVsdC5cbiIKK21zZ3N0ciAiID09PiDDmmogZsOhamwgaGFzem7DoWxhdGEgYWxhcMOpcnRlbG1lemV0dGvDqW50LlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjUyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiICAgV2hhdCB3b3VsZCB5b3UgbGlrZSB0byBkbyBhYm91dCBpdCA/ICBZb3VyIG9wdGlvbnMgYXJlOlxuIgorIiAgICBZIG9yIEkgIDogaW5zdGFsbCB0aGUgcGFja2FnZSBtYWludGFpbmVyJ3MgdmVyc2lvblxuIgorIiAgICBOIG9yIE8gIDoga2VlcCB5b3VyIGN1cnJlbnRseS1pbnN0YWxsZWQgdmVyc2lvblxuIgorIiAgICAgIEQgICAgIDogc2hvdyB0aGUgZGlmZmVyZW5jZXMgYmV0d2VlbiB0aGUgdmVyc2lvbnNcbiIKKyIgICAgICBaICAgICA6IHN0YXJ0IGEgc2hlbGwgdG8gZXhhbWluZSB0aGUgc2l0dWF0aW9uXG4iCittc2dzdHIgIiIKKyIgICBNaXQgdGVnecO8bmsgPyAgQSBsZWhldMWRc8OpZ2VrOlxuIgorIiAgICBZIG9yIEkgIDogYSBjc29tYWdrYXJiYW50YXJ0w7MgdsOhbHRvemF0YSB0ZWxlcMOtdMOpc2VcbiIKKyIgICAgTiBvciBPICA6IGplbGVubGVnaSB2w6FsdG96YXRvZCBtZWd0YXJ0w6FzYVxuIgorIiAgICAgIEQgICAgIDoga8O8bMO2bmJzw6lnZWsgbWVndGVraW50w6lzZVxuIgorIiAgICAgIFogICAgIDogYSBrw6lyZMOpcyBow6F0dMOpcmJlIHJha8Ohc2EgYSBtw6lybGVnZWzDqXNpZ1xuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjU5CisjLCBjLWZvcm1hdAorbXNnaWQgIiBUaGUgZGVmYXVsdCBhY3Rpb24gaXMgdG8ga2VlcCB5b3VyIGN1cnJlbnQgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIEF6IGFsYXBtxbF2ZWxldCBhIGplbGVubGVnaSB2w6FsdG96YXRvZCBtZWd0YXJ0w6FzYS5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY2MQorIywgYy1mb3JtYXQKK21zZ2lkICIgVGhlIGRlZmF1bHQgYWN0aW9uIGlzIHRvIGluc3RhbGwgdGhlIG5ldyB2ZXJzaW9uLlxuIgorbXNnc3RyICIgQXogYWxhcG3FsXZlbGV0IGF6IMO6aiB2w6FsdG96YXQgdGVsZXDDrXTDqXNlLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjY2Cittc2dpZCAiW2RlZmF1bHQ9Tl0iCittc2dzdHIgIlthbGFwbcWxdmVsZXQ9TjpuZW1dIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjY3Cittc2dpZCAiW2RlZmF1bHQ9WV0iCittc2dzdHIgIlthbGFwbcWxdmVsZXQ9WTppZ2VuXSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY2OAorbXNnaWQgIltubyBkZWZhdWx0XSIKK21zZ3N0ciAiW25pbmNzIGFsYXBtxbF2ZWxldF0iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NzEKK21zZ2lkICJlcnJvciB3cml0aW5nIHRvIHN0ZGVyciwgZGlzY292ZXJlZCBiZWZvcmUgY29uZmZpbGUgcHJvbXB0IgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2ODAKK21zZ2lkICJyZWFkIGVycm9yIG9uIHN0ZGluIGF0IGNvbmZmaWxlIHByb21wdCIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjgxCittc2dpZCAiRU9GIG9uIHN0ZGluIGF0IGNvbmZmaWxlIHByb21wdCIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGVwY29uLmM6MTc1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlcyBkZXBlbmRzIG9uICVzIgorbXNnc3RyICIgZsO8Z2fFkXPDqWdlazogIgorCisjOiBzcmMvZGVwY29uLmM6MTc4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlcyBwcmUtZGVwZW5kcyBvbiAlcyIKK21zZ3N0ciAiIGVsxZEtZsO8Z2fFkXPDqWdlazogIgorCisjOiBzcmMvZGVwY29uLmM6MTgxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlcyByZWNvbW1lbmRzICVzIgorbXNnc3RyICIgYWrDoW5sw6Fzb2s6IgorCisjOiBzcmMvZGVwY29uLmM6MTg0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlcyBzdWdnZXN0cyAlcyIKK21zZ3N0ciAiIHRpcHBlazoiCisKKyM6IHNyYy9kZXBjb24uYzoxODcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzIGJyZWFrcyAlcyIKK21zZ3N0ciAiJXMgKGFsZm9seWFtYXQpOiAlc1xuIgorCisjOiBzcmMvZGVwY29uLmM6MTkwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlcyBjb25mbGljdHMgd2l0aCAlcyIKK21zZ3N0ciAiIMO8dGvDtnrDqXNlazoiCisKKyM6IHNyYy9kZXBjb24uYzoxOTMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzIGVuaGFuY2VzICVzIgorbXNnc3RyICIga2l0ZXJqZXN6dGkgIgorCisjOiBzcmMvZGVwY29uLmM6Mjk2CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHRvIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIGVsdMOhdm9sw610w6FzcmEgamVsw7ZsdC5cbiIKKworIzogc3JjL2RlcGNvbi5jOjI5OQorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB0byBiZSBkZWNvbmZpZ3VyZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIGRla29uZmlndXLDoWzDoXNyYSBqZWzDtmx0LlxuIgorCisjOiBzcmMvZGVwY29uLmM6MzA0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHRvIGJlIGluc3RhbGxlZCwgYnV0IGlzIHZlcnNpb24gJS4yNTBzLlxuIgorbXNnc3RyICIgICUuMjUwcyB0ZWxlcMOtdMOpc3JlIGplbMO2bHQsIGRlIHZlcnppw7NqYSAlLjI1MHMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgaW5zdGFsbGVkLCBidXQgaXMgdmVyc2lvbiAlLjI1MHMuXG4iCittc2dzdHIgIiAgJS4yNTBzIHRlbGVww610ZXR0LCBkZSB2ZXJ6acOzamEgJS4yNTBzLlxuIgorCisjOiBzcmMvZGVwY29uLmM6MzMzCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHVucGFja2VkLCBidXQgaGFzIG5ldmVyIGJlZW4gY29uZmlndXJlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMgaXMga2lib250dmEsIGRlIHNvc2VtIGtlcsO8bHQga29uZmlndXLDoWzDoXNyYS5cbiIKKworIzogc3JjL2RlcGNvbi5jOjMzNworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB1bnBhY2tlZCwgYnV0IGlzIHZlcnNpb24gJS4yNTBzLlxuIgorbXNnc3RyICIgICUuMjUwcyBraWJvbnR2YSwgZGUgdmVyemnDs2phICUuMjUwcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjM0MworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBsYXRlc3QgY29uZmlndXJlZCB2ZXJzaW9uIGlzICUuMjUwcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgbGVndXRvbHPDsyBiZcOhbGzDrXRvdHQgdmVyemnDs2phICUuMjUwcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjM1MworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyAlcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgJXMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozODgKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGJ1dCBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyBhZGphICUuMjUwcy10IGRlIHTDtnJsw6lzcmUgamVsw7ZsdC5cbiIKKworIzogc3JjL2RlcGNvbi5jOjM5MgorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYnV0IGlzIHRvIGJlIGRlY29uZmlndXJlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMgYWRqYSAlLjI1MHMtdCBkZSBkZWtvbmZyYSBqZWzDtmx0LlxuIgorCisjOiBzcmMvZGVwY29uLmM6NDAxCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBidXQgaXMgJXMuXG4iCittc2dzdHIgIiAgJS4yNTBzIGFkamEgJS4yNTBzLXQgZGUgJXMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0MTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgbm90IGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMgbmluY3MgdGVsZXDDrXR2ZS5cbiIKKworIzogc3JjL2RlcGNvbi5jOjQ0MworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyAodmVyc2lvbiAlLjI1MHMpIGlzIHRvIGJlIGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMgKCUuMjUwcyB2ZXJ6acOzKSB0ZWxlcMOtdMOpc3JlIGplbMO2bHQuXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0NjgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzICh2ZXJzaW9uICUuMjUwcykgaXMgcHJlc2VudCBhbmQgJXMuXG4iCittc2dzdHIgIiAgJS4yNTBzICglLjI1MHMgdmVyemnDsykgJXMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGFuZCBpcyB0byBiZSBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIGFkamEgJS4yNTBzLXQgw6lzIHRlbGVww610w6lzcmUgamVsw7ZsdC5cbiIKKworIzogc3JjL2RlcGNvbi5jOjUzNworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGFuZCBpcyBwcmVzZW50IGFuZCAlcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgYWRqYSAlLjI1MHMtdCDDqXMgJXMuXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MAorIywgZnV6enkKK21zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IGRpdmVydGluZyBmaWxlcy4iCittc2dzdHIgIkEgZHBrZy1zcGxpdCAtLWhlbHAgcGFyYW5jcyBzZWfDrXQiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo2NiBzcmMvc3RhdGNtZC5jOjU3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo4MAorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gJXMgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiRGViaWFuICVzICVzIHZlcnppw7MuXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo3MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIlxuIgorI3wgIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyN8ICJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLiIKK21zZ2lkICIiCisiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDEwIEd1aWxsZW0gSm92ZXIuXG4iCittc2dzdHIgIiIKKyJcbiIKKyJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo3NSBzcmMvbWFpbi5jOjYzIHNyYy9xdWVyeWNtZC5jOjYwMyBzcmMvc3RhdGNtZC5jOjY1CisjOiBzcmMvdHJpZ2NtZC5jOjU1IGRwa2ctZGViL21haW4uYzo1NyBkcGtnLXNwbGl0L21haW4uYzo1MQorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjg5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvclxuIgorImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LlxuIgorbXNnc3RyICIiCisiXG4iCisiRXogZWd5IFN6YWJhZCBTem9mdHZlcjsgbC4gYSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSAyLWVzIHZhZ3kgbmFneW9iYlxuIgorInbDoWx0b3phdMOhdCBhIG3DoXNvbMOhc2kgZmVsdMOpdGVsZWvDqXJ0LiBOSU5DUyBnYXJhbmNpYS5cbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjg3IHNyYy9tYWluLmM6ODEgc3JjL3F1ZXJ5Y21kLmM6NjE1IHNyYy9zdGF0Y21kLmM6NzcKKyM6IGRwa2ctZGViL21haW4uYzo2OSBkcGtnLXNwbGl0L21haW4uYzo2MyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6OTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSA8Y29tbWFuZD5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIkhhc3puw6FsYXQ6ICVzIFs8b3BjacOzPiAuLi5dIDxwYXJhbmNzPlxuIgorIlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6OTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgWy0tYWRkXSA8ZmlsZT4gICAgICAgICAgIGFkZCBhIGRpdmVyc2lvbi5cbiIKKyIgIC0tcmVtb3ZlIDxmaWxlPiAgICAgICAgICByZW1vdmUgdGhlIGRpdmVyc2lvbi5cbiIKKyIgIC0tbGlzdCBbPGdsb2ItcGF0dGVybj5dICBzaG93IGZpbGUgZGl2ZXJzaW9ucy5cbiIKKyIgIC0tbGlzdHBhY2thZ2UgPGZpbGU+ICAgICBzaG93IHdoYXQgcGFja2FnZSBkaXZlcnRzIHRoZSBmaWxlLlxuIgorIiAgLS10cnVlbmFtZSA8ZmlsZT4gICAgICAgIHJldHVybiB0aGUgZGl2ZXJ0ZWQgZmlsZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MTAwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tcGFja2FnZSA8cGFja2FnZT4gICAgICBuYW1lIG9mIHRoZSBwYWNrYWdlIHdob3NlIGNvcHkgb2YgPGZpbGU+IHdpbGwgIgorIm5vdFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmUgZGl2ZXJ0ZWQuXG4iCisiICAtLWxvY2FsICAgICAgICAgICAgICAgICAgYWxsIHBhY2thZ2VzJyB2ZXJzaW9ucyBhcmUgZGl2ZXJ0ZWQuXG4iCisiICAtLWRpdmVydCA8ZGl2ZXJ0LXRvPiAgICAgdGhlIG5hbWUgdXNlZCBieSBvdGhlciBwYWNrYWdlcycgdmVyc2lvbnMuXG4iCisiICAtLXJlbmFtZSAgICAgICAgICAgICAgICAgYWN0dWFsbHkgbW92ZSB0aGUgZmlsZSBhc2lkZSAob3IgYmFjaykuXG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgc2V0IHRoZSBkaXJlY3Rvcnkgd2l0aCB0aGUgZGl2ZXJzaW9ucyBmaWxlLlxuIgorIiAgLS10ZXN0ICAgICAgICAgICAgICAgICAgIGRvbid0IGRvIGFueXRoaW5nLCBqdXN0IGRlbW9uc3RyYXRlLlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHF1aWV0IG9wZXJhdGlvbiwgbWluaW1hbCBvdXRwdXQuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorbXNnc3RyICIiCisiSGFzem7DoWxhdDogJXMgWzxvcGNpw7M+IC4uLl0gPHBhcmFuY3M+XG4iCisiXG4iCisiUGFyYW5jc29rOlxuIgorIiAgLS1hZGQgPHR1bGFqZG9ub3M+IDxjc29wb3J0PiA8bcOzZD4gPGbDoWpsPlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIMO6aiBiZWplZ3l6w6lzIGhvenrDoWFkw6FzYSBheiBhZGF0YsOhemlzaG96LlxuIgorIiAgLS1yZW1vdmUgPGbDoWpsPiAgICAgICAgICBmw6FqbCBlbHTDoXZvbMOtdMOhc2EgYXogYWRhdGLDoXppc2LDs2wuXG4iCisiICAtLWxpc3QgWzxnbG9iLXBhdHRlcm4+XSAgYWRhdGLDoXppc2JhbiBsw6l2xZEgZmVsw7xsYsOtcsOhbMOhc29rIGxpc3TDoWphLlxuIgorIlxuIgorIk9wY2nDs2s6XG4iCisiICAtLWFkbWluZGlyIDxrw7ZueXZ0w6FyPiAgICBrw7ZueXZ0w6FyIGJlw6FsbMOtdMOhc2EgYSBzdGF0b3ZlcnJpZGUgZsOhamxsYWwuXG4iCisiICAtLXVwZGF0ZSAgICAgICAgICAgICAgICAgZsOhamwgam9nb2sgYXpvbm5hbGkgZnJpc3PDrXTDqXNlLlxuIgorIiAgLS1mb3JjZSAgICAgICAgICAgICAgICAgIG3FsXZlbGV0IGvDqW55c3plcsOtdMOpc2UuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgY3NlbmRlcyBtxbF2ZWxldCwgbWluaW3DoWxpcyBraW1lbmV0LlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIGUgc8O6Z8OzIMO8emVuZXQgbXV0YXTDoXNhLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHZlcnppw7MgbXV0YXTDoXNhLlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJXaGVuIGFkZGluZywgZGVmYXVsdCBpcyAtLWxvY2FsIGFuZCAtLWRpdmVydCA8b3JpZ2luYWw+LmRpc3RyaWIuXG4iCisiV2hlbiByZW1vdmluZywgLS1wYWNrYWdlIG9yIC0tbG9jYWwgYW5kIC0tZGl2ZXJ0IG11c3QgbWF0Y2ggaWYgc3BlY2lmaWVkLlxuIgorIlBhY2thZ2UgcHJlaW5zdC9wb3N0cm0gc2NyaXB0cyBzaG91bGQgYWx3YXlzIHNwZWNpZnkgLS1wYWNrYWdlIGFuZCAtLSIKKyJkaXZlcnQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjE2OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZXJyb3IgY2hlY2tpbmcgYCVzJzogJXMiCittc2dpZCAiZXJyb3IgY2hlY2tpbmcgJyVzJyIKK21zZ3N0ciAiaGliYSBgJXMnIGVsbGVuxZFyesOpc2Vrb3I6ICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjAzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJyZW5hbWUgaW52b2x2ZXMgb3ZlcndyaXRpbmcgYCVzJyB3aXRoXG4iCisiICBkaWZmZXJlbnQgZmlsZSBgJXMnLCBub3QgYWxsb3dlZCIKK21zZ3N0ciAiIgorIsOhdG5ldmV6w6lzIGAlcycgZmVsw7xsw61yw6Fzw6F2YWwgasOhcm5hXG4iCisiICBgJXMnIGVsdMOpcsWRIGbDoWpsbGFsLCBleiBuZW0gZW5nZWTDqWx5ZXpldHQiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyMjMgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzNzMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgZmlsZSAnJXMnIgorbXNnc3RyICJlIGZvcnLDoXNmw6FqbCBuZW0gbWVnbnlpdGhhdMOzOiBgJS4yNTBzJyIKKworIzogc3JjL2RpdmVydGNtZC5jOjIyNworbXNnaWQgImZpbGUgY29weSIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjM5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW5ub3Qgc3RhdCBuZXcgbmFtZSBgJXMnOiAlcyIKK21zZ2lkICJjYW5ub3QgcmVuYW1lICclcycgdG8gJyVzJyIKK21zZ3N0ciAiYXogw7pqIGAlcycgbsOpdiBuZW0gYmVoYXTDoXJvbGhhdMOzOiAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjI1MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAicmVuYW1lOiByZW1vdmUgZHVwbGljYXRlIG9sZCBsaW5rIGAlcyc6ICVzIgorbXNnaWQgInJlbmFtZTogcmVtb3ZlIGR1cGxpY2F0ZSBvbGQgbGluayAnJXMnIgorbXNnc3RyICLDoXRuZXZlesOpczoga2V0dMWRcyByw6lnaSBgJXMnIGzDoW5jIHTDtnJsw6lzZTogJXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyNjIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byBvcGVuIHNvdXJjZSBmaWxlIGAlLjI1MHMnIgorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgY29waWVkIHNvdXJjZSBmaWxlICclcyciCittc2dzdHIgImUgZm9ycsOhc2bDoWpsIG5lbSBtZWdueWl0aGF0w7M6IGAlLjI1MHMnIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mjg0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJsb2NhbCBkaXZlcnNpb24gb2YgJXMiCittc2dzdHIgImhlbHliZW4gZWx0w6lyw610dmUgaWRlOiAlc1xuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mjg2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJsb2NhbCBkaXZlcnNpb24gb2YgJXMgdG8gJXMiCittc2dzdHIgImhlbHliZW4gZWx0w6lyw610dmUgaWRlOiAlc1xuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjkwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJkaXZlcnNpb24gYnkgJXMiCittc2dpZCAiZGl2ZXJzaW9uIG9mICVzIGJ5ICVzIgorbXNnc3RyICIlcyDDoWx0YWxpIGVsdMOpcsOtdMOpc2VrIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjkzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnNpb24gb2YgJXMgdG8gJXMgYnkgJXMiCittc2dzdHIgImVsdMOpcsOtdHZlICVzIMOhbHRhbCBpZGU6ICVzXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozMDkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImRpdmVyc2lvbiBieSAlcyIKK21zZ2lkICJhbnkgZGl2ZXJzaW9uIG9mICVzIgorbXNnc3RyICIlcyDDoWx0YWxpIGVsdMOpcsOtdMOpc2VrIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MzExCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJhbnkgZGl2ZXJzaW9uIG9mICVzIHRvICVzIgorbXNnc3RyICJlbHTDqXLDrXR2ZSAlcyDDoWx0YWwgaWRlOiAlc1xuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MzU3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW5ub3Qgb3BlbiBHUEwgZmlsZSIKK21zZ2lkICJjYW5ub3QgY3JlYXRlIG5ldyAlcyBmaWxlIgorbXNnc3RyICJhIEdQTCBmw6FqbCBuZW0gbnlpdGhhdMOzIG1lZyIKKworIzogc3JjL2RpdmVydGNtZC5jOjM3NSBzcmMvc3RhdGNtZC5jOjIxNSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTQwNAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIGZpbGUgJyVzJyIKK21zZ3N0ciAibmVtIGxlaGV0IGtpw7xyw610ZW5pIGEgdnNucHJpbnRmLWJlbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjM4MgorIywgZnV6enkKKyN8IG1zZ2lkICJyZW1vdmUgb2xkIGRpdmVyc2lvbnMtb2xkOiAlcyIKK21zZ2lkICJlcnJvciByZW1vdmluZyBvbGQgZGl2ZXJzaW9ucy1vbGQiCittc2dzdHIgInLDqWdpIGRpdmVyc2lvbnMtb2xkIGVsdMOhdm9sdMOhc2E6ICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mzg0CisjLCBmdXp6eQorbXNnaWQgImVycm9yIGNyZWF0aW5nIG5ldyBkaXZlcnNpb25zLW9sZCIKK21zZ3N0ciAiaGliYSBheiDDumogc3RhdG92ZXJyaWRlLW9sZCBsw6l0cmVob3rDoXNha29yOiAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjM4NgorIywgZnV6enkKK21zZ2lkICJlcnJvciBpbnN0YWxsaW5nIG5ldyBkaXZlcnNpb25zIgorbXNnc3RyICJoaWJhIGF6IMO6aiBzdGF0b3ZlcnJpZGUgdGVsZXDDrXTDqXNla29yOiAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjQwNiBzcmMvZGl2ZXJ0Y21kLmM6NTAzIHNyYy9kaXZlcnRjbWQuYzo2MTAKKyM6IHNyYy9kaXZlcnRjbWQuYzo2MzAgc3JjL3N0YXRjbWQuYzoyOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhIHNpbmdsZSBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyAxIGFyZ3VtZW50dW1vdCB2w6FyIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDA5IHNyYy9kaXZlcnRjbWQuYzo0MzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZW5hbWUgXCIlc1wiIGlzIG5vdCBhYnNvbHV0ZSIKK21zZ3N0ciAiXCIlc1wiIGbDoWpsbsOpdiBuZW0gYWJzem9sw7p0IgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDExIHNyYy9zdGF0Y21kLmM6MjQ5Cittc2dpZCAiZmlsZSBtYXkgbm90IGNvbnRhaW4gbmV3bGluZXMiCittc2dzdHIgImbDoWpsIG5lbSB0YXJ0YWxtYXpoYXQgw7pqc29yb2thdCIKKworIzogc3JjL2RpdmVydGNtZC5jOjQxOAorbXNnaWQgIkNhbm5vdCBkaXZlcnQgZGlyZWN0b3JpZXMiCittc2dzdHIgIkvDtm55dnTDoXJhayBlbHTDqXLDrXTDqXNlIHNpa2VydGVsZW4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MzMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBkaXZlcnQgZmlsZSAnJXMnIHRvIGl0c2VsZiIKK21zZ3N0ciAiS8O2bnl2dMOhcmFrIGVsdMOpcsOtdMOpc2Ugc2lrZXJ0ZWxlbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjQ1MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiTGVhdmluZyBgJXMnIgorbXNnaWQgIkxlYXZpbmcgJyVzJ1xuIgorbXNnc3RyICJgJXMnIGVsaGFnecOhc2EiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBjbGFzaGVzIHdpdGggYCVzJyIKK21zZ3N0ciAiYCVzJyDDvHRrw7Z6aWsgZXp6ZWw6IGAlcyciCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0ODEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIkFkZGluZyBgJXMnIgorbXNnaWQgIkFkZGluZyAnJXMnXG4iCittc2dzdHIgImAlcycgaG96esOhYWTDoXNhIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTEwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJObyBkaXZlcnNpb24gYCVzJywgbm9uZSByZW1vdmVkIgorbXNnaWQgIk5vIGRpdmVyc2lvbiAnJXMnLCBub25lIHJlbW92ZWQuXG4iCittc2dzdHIgIk5pbmNzIGAlcycgZWx0w6lyw610w6lzLCBuZW0gdm9sdCBlbHTDoXZvbMOtdMOhcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjUyNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisibWlzbWF0Y2ggb24gZGl2ZXJ0LXRvXG4iCisiICB3aGVuIHJlbW92aW5nIGAlcydcbiIKKyIgIGZvdW5kIGAlcyciCittc2dzdHIgIiIKKyJuZW0taWxsZXN6a2VkxZEgZGl2ZXJ0LXRvXG4iCisiICBgJXMnIGVsdMOhdm9sw610w6FzYWtvclxuIgorIiAgYCVzJy10IHRhbMOhbHRhbSIKKworIzogc3JjL2RpdmVydGNtZC5jOjUzMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisibWlzbWF0Y2ggb24gcGFja2FnZVxuIgorIiAgd2hlbiByZW1vdmluZyBgJXMnXG4iCisiICBmb3VuZCBgJXMnIgorbXNnc3RyICIiCisibmVtLWlsbGVzemtlZMWRIGNzb21hZ1xuIgorIiAgYCVzJyBlbHTDoXZvbMOtdMOhc2Frb3JcbiIKKyIgIGAlcyctdCB0YWzDoWx0YW0iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MzkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIlJlbW92aW5nIGAlcyciCittc2dpZCAiUmVtb3ZpbmcgJyVzJ1xuIgorbXNnc3RyICIlcyBlbHTDoXZvbMOtdMOhc2EiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo2NTcKK21zZ2lkICJwYWNrYWdlIG1heSBub3QgY29udGFpbiBuZXdsaW5lcyIKK21zZ3N0ciAiY3NvbWFnIG5lbSB0YXJ0YWxtYXpoYXQgw7pqc29yb2thdCIKKworIzogc3JjL2RpdmVydGNtZC5jOjY2NgorbXNnaWQgImRpdmVydC10byBtYXkgbm90IGNvbnRhaW4gbmV3bGluZXMiCittc2dzdHIgImRpdmVydC10byBuZW0gdGFydGFsbWF6aGF0IMO6anNvcm9rYXQiCisKKyM6IHNyYy9kaXZlcnRkYi5jOjY0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gZGl2ZXJzaW9ucyBmaWxlIgorbXNnc3RyICJlbHTDqXLDrXTDqXMgZsOhamwgbWVnbnlpdMOhc2Egc2lrZXJ0ZWxlbiIKKworIzogc3JjL2RpdmVydGRiLmM6NzEKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgcHJldmlvdXMgZGl2ZXJzaW9ucyBmaWxlIgorbXNnc3RyICJlbMWResWRIGVsdMOpcsOtdMOpcyBmw6FqbCBmc3RhdCBzaWtlcnRlbGVuIgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzo3MworbXNnaWQgImZhaWxlZCB0byBmc3RhdCBkaXZlcnNpb25zIGZpbGUiCittc2dzdHIgImVsdMOpcsOtdMOpcyBmw6FqbCBmc3RhdCBzaWtlcnRlbGVuIgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzoxMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmxpY3RpbmcgZGl2ZXJzaW9ucyBpbnZvbHZpbmcgYCUuMjUwcycgb3IgYCUuMjUwcyciCittc2dzdHIgImAlLjI1MHMnLXQgdmFneSBgJS4yNTBzJy10IMOpcmludMWRIMO8dGvDtnrFkSBlbHTDqXLDrXTDqXNlayIKKworIzogc3JjL2VucXVpcnkuYzo3MworbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBpbiBhIG1lc3MgZHVlIHRvIHNlcmlvdXMgcHJvYmxlbXMgZHVyaW5nXG4iCisiaW5zdGFsbGF0aW9uLiAgVGhleSBtdXN0IGJlIHJlaW5zdGFsbGVkIGZvciB0aGVtIChhbmQgYW55IHBhY2thZ2VzXG4iCisidGhhdCBkZXBlbmQgb24gdGhlbSkgdG8gZnVuY3Rpb24gcHJvcGVybHk6XG4iCittc2dzdHIgIiIKKyJBeiBhbMOhYmJpIGNzb21hZ29rIGZvbnRvcyB0ZWxlcMOtdMOpc2kgZ29uZG9rIG1pYXR0IGt1c3rDoWsuXG4iCisiw5pqcmEga2VsbCB0ZWxlcMOtdGVuaSDFkWtldCAow6lzIGEgdMWRbMO8ayBmw7xnZ8WRa2V0KSBhIGhlbHllcyBtxbFrw7Zkw6lzaGV6OlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjgwCittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgaGF2ZSBiZWVuIHVucGFja2VkIGJ1dCBub3QgeWV0IGNvbmZpZ3VyZWQuXG4iCisiVGhleSBtdXN0IGJlIGNvbmZpZ3VyZWQgdXNpbmcgZHBrZyAtLWNvbmZpZ3VyZSBvciB0aGUgY29uZmlndXJlXG4iCisibWVudSBvcHRpb24gaW4gZHNlbGVjdCBmb3IgdGhlbSB0byB3b3JrOlxuIgorbXNnc3RyICIiCisiQXogYWzDoWJiaSBjc29tYWdvayBraWNzb21hZ29sdGFrLCBkZSBuaW5jc2VuZWsgYmXDoWxsw610dmEuXG4iCisiQSBkcGtnIC0tY29uZmlndXJlIHBhcmFuY2NzYWwgdmFneSBlZ3kgYXB0aXR1ZGUtaG96LCBkc2VsZWN0LWhleiBoYXNvbmzDs1xuIgorImZlbMO8bGV0dGVsIGJlIGtlbGwgw6FsbMOtdGFuaSDFkWtldCBhIG3FsWvDtmTDqXNoZXo6XG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6ODcKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgb25seSBoYWxmIGNvbmZpZ3VyZWQsIHByb2JhYmx5IGR1ZSB0byBwcm9ibGVtc1xuIgorImNvbmZpZ3VyaW5nIHRoZW0gdGhlIGZpcnN0IHRpbWUuICBUaGUgY29uZmlndXJhdGlvbiBzaG91bGQgYmUgcmV0cmllZCB1c2luZ1xuIgorImRwa2cgLS1jb25maWd1cmUgPHBhY2thZ2U+IG9yIHRoZSBjb25maWd1cmUgbWVudSBvcHRpb24gaW4gZHNlbGVjdDpcbiIKK21zZ3N0ciAiIgorIkF6IGFsw6FiYmkgY3NvbWFnb2sgZsOpbC1iZcOhbGzDrXRvdHRhaywgdmFsw7NzesOtbsWxbGVnIGF6IDEuIGJlw6FsbMOtdMOhcyBhbGF0dGkgIgorImhpYsOhayBtaWF0dC5cbiIKKyJBIGJlw6FsbMOtdMOhcyDDumpyYSBtZWdrw61zw6lyZWxoZXTFkSBhIGRwa2cgLS1jb25maWd1cmUgPHBhY2thZ2U+IHBhcmFuY2NzYWxcbiIKKyJ2YWd5IGVneSBhcHRpdHVkZS1ob3osIGRzZWxlY3QtaGV6IGhhc29ubMOzXG4iCisiZmVsw7xsZXR0ZWw6XG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6OTQKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgb25seSBoYWxmIGluc3RhbGxlZCwgZHVlIHRvIHByb2JsZW1zIGR1cmluZ1xuIgorImluc3RhbGxhdGlvbi4gIFRoZSBpbnN0YWxsYXRpb24gY2FuIHByb2JhYmx5IGJlIGNvbXBsZXRlZCBieSByZXRyeWluZyBpdDtcbiIKKyJ0aGUgcGFja2FnZXMgY2FuIGJlIHJlbW92ZWQgdXNpbmcgZHNlbGVjdCBvciBkcGtnIC0tcmVtb3ZlOlxuIgorbXNnc3RyICIiCisiQXogYWzDoWJiaSBjc29tYWdvayBmw6lsaWcgdGVsZXDDrXRldHRlaywgYSB0ZWxlcMOtdMOpcyBhbGF0dGkgaGliw6FrIG1pYXR0LlxuIgorIkEgdGVsZXDDrXTDqXMgdmFsw7NzesOtbsWxbGVnIGJlZmVqZXpoZXTFkSDDumpyYSBtZWdrw61zw6lybMOpc8OpdmVsO1xuIgorImEgY3NvbWFnb2sgYSBkcGtnIC0tcmVtb3ZlIHBhcmFuY2NzYWwgdmFneVxuIgorImVneSBhcHRpdHVkZS1ob3osIGRzZWxlY3QtaGV6IGhhc29ubMOzIGZlbMO8bGV0dGVsIGVsIGlzIHTDoXZvbMOtdGhhdMOzazpcbiIKKworIzogc3JjL2VucXVpcnkuYzoxMDEKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgYXdhaXRpbmcgcHJvY2Vzc2luZyBvZiB0cmlnZ2VycyB0aGF0IHRoZXlcbiIKKyJoYXZlIGFjdGl2YXRlZCBpbiBvdGhlciBwYWNrYWdlcy4gIFRoaXMgcHJvY2Vzc2luZyBjYW4gYmUgcmVxdWVzdGVkIHVzaW5nXG4iCisiZHNlbGVjdCBvciBkcGtnIC0tY29uZmlndXJlIC0tcGVuZGluZyAob3IgZHBrZyAtLXRyaWdnZXJzLW9ubHkpOlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTA4Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgaGF2ZSBiZWVuIHRyaWdnZXJlZCwgYnV0IHRoZSB0cmlnZ2VyIHByb2Nlc3NpbmdcbiIKKyJoYXMgbm90IHlldCBiZWVuIGRvbmUuICBUcmlnZ2VyIHByb2Nlc3NpbmcgY2FuIGJlIHJlcXVlc3RlZCB1c2luZ1xuIgorImRzZWxlY3Qgb3IgZHBrZyAtLWNvbmZpZ3VyZSAtLXBlbmRpbmcgKG9yIGRwa2cgLS10cmlnZ2Vycy1vbmx5KTpcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZW5xdWlyeS5jOjEzNyBzcmMvZW5xdWlyeS5jOjIxMSBzcmMvZW5xdWlyeS5jOjI5MiBzcmMvZW5xdWlyeS5jOjM3MworIzogc3JjL2VucXVpcnkuYzo0NjAgc3JjL3NlbGVjdC5jOjk4IHNyYy9zZWxlY3QuYzoxNjQgc3JjL3RyaWdjbWQuYzoxOTkKKyM6IHNyYy91cGRhdGUuYzo0OCBzcmMvdXBkYXRlLmM6MTEzIGRwa2ctc3BsaXQvcXVldWUuYzoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyB0YWtlcyBubyBhcmd1bWVudHMiCittc2dzdHIgIi0tJXMgbmVtIHbDoXIgYXJndW1lbnR1bW90IgorCisjOiBzcmMvZW5xdWlyeS5jOjE1MgorbXNnaWQgIiIKKyJBbm90aGVyIHByb2Nlc3MgaGFzIGxvY2tlZCB0aGUgZGF0YWJhc2UgZm9yIHdyaXRpbmcsIGFuZCBtaWdodCBjdXJyZW50bHkgYmVcbiIKKyJtb2RpZnlpbmcgaXQsIHNvbWUgb2YgdGhlIGZvbGxvd2luZyBwcm9ibGVtcyBtaWdodCBqdXN0IGJlIGR1ZSB0byB0aGF0LlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTkxCisjLCBmdXp6eQorI3wgbXNnaWQgIjx1bmtub3duPiIKK21zZ2N0eHQgInNlY3Rpb24iCittc2dpZCAiPHVua25vd24+IgorbXNnc3RyICI8aXNtZXJldGxlbj4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MjUxCisjLCBjLWZvcm1hdAorbXNnaWQgIiAlZCBpbiAlczogIgorbXNnc3RyICIgJWQgaXR0OiAlczogIgorCisjOiBzcmMvZW5xdWlyeS5jOjI2NgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiICVkIHBhY2thZ2VzLCBmcm9tIHRoZSBmb2xsb3dpbmcgc2VjdGlvbnM6IgorbXNnaWQgIiAlZCBwYWNrYWdlLCBmcm9tIHRoZSBmb2xsb3dpbmcgc2VjdGlvbjoiCittc2dpZF9wbHVyYWwgIiAlZCBwYWNrYWdlcywgZnJvbSB0aGUgZm9sbG93aW5nIHNlY3Rpb25zOiIKK21zZ3N0clswXSAiICVkIGNzb21hZyBheiBhbMOhYmJpIHN6YWthc3pva2LDs2w6IgorCisjOiBzcmMvZW5xdWlyeS5jOjMwNQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIlZlcnNpb24gb2YgZHBrZyB3aXRoIHdvcmtpbmcgJXMgc3VwcG9ydCBub3QgeWV0IGNvbmZpZ3VyZWQuXG4iCisiIFBsZWFzZSB1c2UgJ2Rwa2cgLS1jb25maWd1cmUgZHBrZycsIGFuZCB0aGVuIHRyeSBhZ2Fpbi5cbiIKK21zZ3N0ciAiIgorIkUgZHBrZyB2ZXJ6acOzIGVwb2NoIHTDoW1vZ2F0w6FzYSBuaW5jcyBiZcOhbGzDrXR2YS5cbiIKKyIgRnV0dGFzZCBhIGBkcGtnIC0tY29uZmlndXJlIGRwa2cnLXQsIMOpcyBwcsOzYsOhbGQgw7pqcmEuXG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzEwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJkcGtnIG5vdCByZWNvcmRlZCBhcyBpbnN0YWxsZWQsIGNhbm5vdCBjaGVjayBmb3IgJXMgc3VwcG9ydCFcbiIKK21zZ3N0ciAiIgorImEgZHBrZyBuaW5jcyBiZWplZ3llenZlIHRlbGVww610ZXR0a8OpbnQsIGF6IGVwb2NoIHTDoW1vZ2F0w6FzIG5lbSAiCisiZWxsZW7FkXJpemhldMWRICFcbiIKKworIzogc3JjL2VucXVpcnkuYzozMjEKK21zZ2lkICJQcmUtRGVwZW5kcyBmaWVsZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvZW5xdWlyeS5jOjMyOQorbXNnaWQgImVwb2NoIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzM3Cittc2dpZCAibG9uZyBmaWxlbmFtZXMiCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzozNDYKK21zZ2lkICJtdWx0aXBsZSBDb25mbGljdHMgYW5kIFJlcGxhY2VzIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6NDM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBjYW5ub3Qgc2VlIGhvdyB0byBzYXRpc2Z5IHByZS1kZXBlbmRlbmN5OlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisiZHBrZzogbmVtIGzDoXRoYXTDsyBheiBlbMWRLWbDvGdnxZFzw6lnIHRlbGplc8OtdMOpc8OpbmVrIG3Ds2RqYTpcbiIKKyIgJXNcbiIKKworIzogc3JjL2VucXVpcnkuYzo0MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHNhdGlzZnkgcHJlLWRlcGVuZGVuY2llcyBmb3IgJS4yNTBzICh3YW50ZWQgZHVlIHRvICUuMjUwcykiCittc2dzdHIgInRlbGplc8OtdGV0bGVuIGVsxZEtZsO8Z2fFkXPDqWdlayBlaGhlejogJS4yNTBzICglLjI1MHMgbWlhdHQga2VsbGVuZWspIgorCisjOiBzcmMvZW5xdWlyeS5jOjQ3MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAib2Jzb2xldGUgb3B0aW9uICctLSVzJywgcGxlYXNlIHVzZSAnLS0lcycgaW5zdGVhZC4iCittc2dzdHIgIkZpZ3llbGVtOiBlbGF2dWx0IGxlaGV0xZFzw6lnIGAtLSVzJ1xuIgorCisjOiBzcmMvZW5xdWlyeS5jOjUxOQorbXNnaWQgIiIKKyItLWNvbXBhcmUtdmVyc2lvbnMgdGFrZXMgdGhyZWUgYXJndW1lbnRzOiA8dmVyc2lvbj4gPHJlbGF0aW9uPiA8dmVyc2lvbj4iCittc2dzdHIgIiIKKyJhIC0tY29tcGFyZS12ZXJzaW9ucyAzIGFyZ3VtZW50dW1vdCB2w6FyOiA8dmVyc2lvbj4gPHJlbGF0aW9uPiA8dmVyc2lvbj4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6NTI0Cittc2dpZCAiLS1jb21wYXJlLXZlcnNpb25zIGJhZCByZWxhdGlvbiIKK21zZ3N0ciAicm9zc3ogLS1jb21wYXJlLXZlcnNpb25zIHJlbMOhY2nDsyIKKworIzogc3JjL2VucXVpcnkuYzo1Mjkgc3JjL2VucXVpcnkuYzo1MzEgc3JjL2VucXVpcnkuYzo1NDAgc3JjL2VucXVpcnkuYzo1NDIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInZlcnNpb24gJyVzJyBoYXMgYmFkIHN5bnRheDogJXMiCittc2dzdHIgImF6IGEgdmVyemnDsyBueWVsdnRhbmEgaGliw6FzOiAlc1xuIgorCisjOiBzcmMvZXJyb3JzLmM6NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBlcnJvciBwcm9jZXNzaW5nICVzICgtLSVzKTpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorIiVzOiBoaWLDoXMgZmVsZG9sZ296w6FzOiAlcyAoLS0lcyk6XG4iCisiICVzXG4iCisKKyM6IHNyYy9lcnJvcnMuYzo2OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgImRwa2c6IGZhaWxlZCB0byBhbGxvY2F0ZSBtZW1vcnkgZm9yIG5ldyBlbnRyeSBpbiBsaXN0IG9mIGZhaWxlZCBwYWNrYWdlcy4iCittc2dpZCAiIgorIiVzOiBmYWlsZWQgdG8gYWxsb2NhdGUgbWVtb3J5IGZvciBuZXcgZW50cnkgaW4gbGlzdCBvZiBmYWlsZWQgcGFja2FnZXM6ICVzIgorbXNnc3RyICIiCisiZHBrZzogc2lrZXJ0ZWxlbiBtZW3Ds3JpYWZvZ2xhbMOhcyBhIHNpa2VydGVsZW4gY3NvbWFnb2sgbGlzdMOhasOhbmFrIMO6aiAiCisiZWxlbcOpaGV6LiIKKworIzogc3JjL2Vycm9ycy5jOjc5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJkcGtnOiB0b28gbWFueSBlcnJvcnMsIHN0b3BwaW5nXG4iCittc2dpZCAiJXM6IHRvbyBtYW55IGVycm9ycywgc3RvcHBpbmdcbiIKK21zZ3N0ciAiZHBrZzogdMO6bCBzb2sgaGliYSwgbGXDoWxsb2tcbiIKKworIzogc3JjL2Vycm9ycy5jOjg3Cittc2dpZCAiRXJyb3JzIHdlcmUgZW5jb3VudGVyZWQgd2hpbGUgcHJvY2Vzc2luZzpcbiIKK21zZ3N0ciAiSGliw6FrIHTDtnJ0w6ludGVrIGEgZmVsZG9sZ296w6Fza29yOlxuIgorCisjOiBzcmMvZXJyb3JzLmM6OTQKK21zZ2lkICJQcm9jZXNzaW5nIHdhcyBoYWx0ZWQgYmVjYXVzZSB0aGVyZSB3ZXJlIHRvbyBtYW55IGVycm9ycy5cbiIKK21zZ3N0ciAiQSBmZWxkb2xnb3rDoXMgdMO6bCBzb2sgaGliYSBtaWF0dCBsZcOhbGx0LlxuIgorCisjOiBzcmMvZXJyb3JzLmM6MTA1CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgJXMgd2FzIG9uIGhvbGQsIHByb2Nlc3NpbmcgaXQgYW55d2F5IGFzIHlvdSByZXF1ZXN0ZWRcbiIKK21zZ3N0ciAiJXMgdmlzc3phIHZvbHQgZm9ndmEsIGRlIGvDqXLDqXNlZHJlIG3DqWdpcyBmZWxkb2xnb3pvbVxuIgorCisjOiBzcmMvZXJyb3JzLmM6MTA5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJQYWNrYWdlICVzIGlzIG9uIGhvbGQsIG5vdCB0b3VjaGluZyBpdC4gIFVzZSAtLWZvcmNlLWhvbGQgdG8gb3ZlcnJpZGUuXG4iCittc2dzdHIgIiIKKyJWaXNzemFmb2fDoXNiYW4gbMOpdsWRIGNzb21hZzogJXMsIG5lbSBtw7Nkb3PDrXRvbS4gSGFzem7DoWxkIGEgLS1mb3JjZS1ob2xkLW90IGEgIgorImZlbMO8bGLDrXLDoWzDoXNob3ouXG4iCisKKyM6IHNyYy9lcnJvcnMuYzoxMTkKKyMsIGZ1enp5Cittc2dpZCAib3ZlcnJpZGluZyBwcm9ibGVtIGJlY2F1c2UgLS1mb3JjZSBlbmFibGVkOiIKK21zZ3N0ciAiIgorImRwa2cgLSBmaWd5ZWxlbSwgZmVsw7xsYsOtcsOhbG9tIGEgaGliw6F0LCBtaXZlbCBhIC0tZm9yY2Ugw6lydsOpbnllczpcbiIKKyIgIgorCisjOiBzcmMvZmlsZXNkYi5jOjMwNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcyciCittc2dzdHIgIm5lbSB0dWRvbSBtZWdueWl0bmkgYSBmw6FqbGxpc3RhIGbDoWpsdCBlIGNzb21hZ2hvejogYCUuMjUwcyciCisKKyM6IHNyYy9maWxlc2RiLmM6MzExCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlIGAlLjI1MHMnIG1pc3NpbmcsIGFzc3VtaW5nIHBhY2thZ2UgaGFzIG5vIGZpbGVzICIKKyJjdXJyZW50bHkgaW5zdGFsbGVkLiIKK21zZ3N0ciAiIgorImRwa2c6IEZpZ3llbG1lenRldMOpczogbmluY3MgZsOhamxsaXN0YSBmw6FqbCBlIGNzb21hZ2hvejogYCUuMjUwcycsICIKKyJmZWx0w6l0ZWxlemVtLCBob2d5IGEgY3NvbWFnbmFrIG1vc3QgbmluY3NlbmVrIHRlbGVww610ZXR0IGbDoWpsamFpXG4iCisKKyM6IHNyYy9maWxlc2RiLmM6MzIyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJyUuMjUwcyciCittc2dzdHIgIm5lbSB0dWRvbSBtZWdueWl0bmkgYSBmw6FqbGxpc3RhIGbDoWpsdCBlIGNzb21hZ2hvejogYCUuMjUwcyciCisKKyM6IHNyYy9maWxlc2RiLmM6MzMwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlcyBsaXN0IGZvciBwYWNrYWdlIGAlLjI1MHMnIgorbXNnaWQgInJlYWRpbmcgZmlsZXMgbGlzdCBmb3IgcGFja2FnZSAnJS4yNTBzJyIKK21zZ3N0ciAiZsOhamxsaXN0YSBlIGNzb21hZ2hvejogYCUuMjUwcyciCisKKyM6IHNyYy9maWxlc2RiLmM6MzM2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJyUuMjUwcycgaXMgbWlzc2luZyBmaW5hbCBuZXdsaW5lIgorbXNnc3RyICJlIGNzb21hZzogYCUuMjUwcycgZsOhamxsaXN0YSBmw6FqbGphIMO8cmVzIGbDoWpsbmV2ZXQgdGFydGFsbWF6IgorCisjOiBzcmMvZmlsZXNkYi5jOjM0NAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcycgY29udGFpbnMgZW1wdHkgZmlsZW5hbWUiCittc2dzdHIgImUgY3NvbWFnOiBgJS4yNTBzJyBmw6FqbGxpc3RhIGbDoWpsamEgw7xyZXMgZsOhamxuZXZldCB0YXJ0YWxtYXoiCisKKyM6IHNyYy9maWxlc2RiLmM6MzUyCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlIGAlLjI1MHMnIgorbXNnc3RyICJuZW0gc2lrZXLDvGx0IGxlesOhcm5pIGEgZsOhamxsaXN0YSBmw6FqbHQgZSBjc29tYWdob3o6IGAlLjI1MHMnIgorCisjOiBzcmMvZmlsZXNkYi5jOjQ2MgorbXNnaWQgIihSZWFkaW5nIGRhdGFiYXNlIC4uLiAiCittc2dzdHIgIihBZGF0YsOhemlzIG9sdmFzw6FzYSAuLi4gIgorCisjOiBzcmMvZmlsZXNkYi5jOjQ4MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiJWQgZmlsZXMgYW5kIGRpcmVjdG9yaWVzIGN1cnJlbnRseSBpbnN0YWxsZWQuKVxuIgorbXNnaWQgIiVkIGZpbGUgb3IgZGlyZWN0b3J5IGN1cnJlbnRseSBpbnN0YWxsZWQuKVxuIgorbXNnaWRfcGx1cmFsICIlZCBmaWxlcyBhbmQgZGlyZWN0b3JpZXMgY3VycmVudGx5IGluc3RhbGxlZC4pXG4iCittc2dzdHJbMF0gIk1vc3QgJWQgZsOhamwgw6lzIGvDtm55dnTDoXIgdGVsZXDDrXRldHQuKVxuIgorCisjOiBzcmMvZmlsZXNkYi5jOjUxNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICJuZW0gc2lrZXLDvGx0IGZyaXNzIGbDoWpsbGlzdGEgZsOhamx0IGzDqXRyZWhvem5pIGNzb21hZ2hvejogJXMiCisKKyM6IHNyYy9maWxlc2RiLmM6NTI2CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB3cml0ZSB0byB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAic2lrZXJ0ZWxlbiDDrXLDoXMgYSBmcmlzcyBmw6FqbGxpc3RhIGbDoWpsYmEgZSBjc29tYWdob3o6ICVzIgorCisjOiBzcmMvZmlsZXNkYi5jOjUyOAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZmx1c2ggdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIm5lbSBzaWtlcsO8bHQga2nDvHLDrXRlbmkgYSBmcmlzc8OtdGV0dCBmw6FqbGxpc3RhIGbDoWpsdCBlIGNzb21hZ2hvejogJXMiCisKKyM6IHNyYy9maWxlc2RiLmM6NTMwCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBzeW5jIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICIiCisibmVtIHNpa2Vyw7xsdCBzemlua3Jvbml6w6FsbmkgYSBmcmlzc8OtdGV0dCBmw6FqbGxpc3RhIGbDoWpsdCBlIGNzb21hZ2hvejogJXMiCisKKyM6IHNyYy9maWxlc2RiLmM6NTMzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjbG9zZSB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAibmVtIHNpa2Vyw7xsdCBiZXrDoXJuaSBhIGZyaXNzw610ZXR0IGbDoWpsbGlzdGEgZsOhamx0IGUgY3NvbWFnaG96OiAlcyIKKworIzogc3JjL2ZpbGVzZGIuYzo1MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGluc3RhbGwgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIm5lbSBzaWtlcsO8bHQgdGVsZXDDrXRlbmkgYSBmcmlzc8OtdGV0dCBmw6FqbGxpc3RhIGbDoWpsdCBlIGNzb21hZ2hvejogJXMiCisKKyM6IHNyYy9oZWxwLmM6NDgKK21zZ2lkICJub3QgaW5zdGFsbGVkIgorbXNnc3RyICJuZW0gdGVsZXDDrXRldHQiCisKKyM6IHNyYy9oZWxwLmM6NDkKK21zZ2lkICJub3QgaW5zdGFsbGVkIGJ1dCBjb25maWdzIHJlbWFpbiIKK21zZ3N0ciAibmVtIHRlbGVww610ZXR0LCBkZSBiZcOhbGzDrXTDoXNhaSBtw6lnIG90dCB2YW5uYWsiCisKKyM6IHNyYy9oZWxwLmM6NTAKKyMsIGZ1enp5Cittc2dpZCAiYnJva2VuIGR1ZSB0byBmYWlsZWQgcmVtb3ZhbCBvciBpbnN0YWxsYXRpb24iCittc2dzdHIgInNpa2VydGVsZW4gZWx0w6F2b2zDrXTDoXMgbWlhdHQgdMO2csO2dHQiCisKKyM6IHNyYy9oZWxwLmM6NTEKK21zZ2lkICJ1bnBhY2tlZCBidXQgbm90IGNvbmZpZ3VyZWQiCittc2dzdHIgImtpY3NvbWFnb2x0IGRlIG5pbmNzIGJlw6FsbMOtdHZhIgorCisjOiBzcmMvaGVscC5jOjUyCittc2dpZCAiYnJva2VuIGR1ZSB0byBwb3N0aW5zdCBmYWlsdXJlIgorbXNnc3RyICJwb3N0aW5zdCBoaWJhIG1pYXR0IHTDtnLDtnR0IgorCisjOiBzcmMvaGVscC5jOjUzCittc2dpZCAiYXdhaXRpbmcgdHJpZ2dlciBwcm9jZXNzaW5nIGJ5IGFub3RoZXIgcGFja2FnZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvaGVscC5jOjU0Cittc2dpZCAidHJpZ2dlcmVkIgorbXNnc3RyICIiCisKKyM6IHNyYy9oZWxwLmM6NTUKK21zZ2lkICJpbnN0YWxsZWQiCittc2dzdHIgInRlbGVww610ZXR0IgorCisjOiBzcmMvaGVscC5jOjEwNworIywgZnV6enkKK21zZ2lkICJQQVRIIGlzIG5vdCBzZXQuIgorbXNnc3RyICJkcGtnIC0gaGliYTogYSBQQVRIIHbDoWx0b3rDsyBuaW5jcyBiZcOhbGzDrXR2YS5cbiIKKworIzogc3JjL2hlbHAuYzoxMjkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiclcycgbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuIgorbXNnc3RyICJkcGtnOiBgJXMnIG5pbmNzIGEgUEFUSCB2w6FsdG96w7NiYW4gbWVnYWRvdHQgaGVseWVrZW4uXG4iCisKKyM6IHNyYy9oZWxwLmM6MTM4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiJWQgZXhwZWN0ZWQgcHJvZ3JhbSBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS5cbiIKKyIlcyIKK21zZ2lkX3BsdXJhbCAiIgorIiVkIGV4cGVjdGVkIHByb2dyYW1zIG5vdCBmb3VuZCBpbiBQQVRIIG9yIG5vdCBleGVjdXRhYmxlLlxuIgorIiVzIgorbXNnc3RyWzBdICJkcGtnOiBgJXMnIG5pbmNzIGEgUEFUSCB2w6FsdG96w7NiYW4gbWVnYWRvdHQgaGVseWVrZW4uXG4iCisKKyM6IHNyYy9oZWxwLmM6MTQxCisjLCBmdXp6eQorbXNnaWQgIiIKKyJOb3RlOiByb290J3MgUEFUSCBzaG91bGQgdXN1YWxseSBjb250YWluIC91c3IvbG9jYWwvc2JpbiwgL3Vzci9zYmluIGFuZCAvIgorInNiaW4uIgorbXNnc3RyICIiCisiJWQga8OpcnQgcHJvZ3JhbSBuaW5jcyBhIFBBVEgtYmFuIG1lZ2Fkb3R0IGhlbHlla2VuLlxuIgorIk1lZ2ouOiBhIHJvb3QgZmVsaGFzem7DoWzDsyBQQVRIIHbDoWx0b3rDs2phIMOhbHRhbMOhYmFuIHRhcnRhbG1henphIGEgL3Vzci9sb2NhbC8iCisic2JpbiwgYSAvdXNyL3NiaW4gw6lzIGEgL3NiaW4ga8O2bnl2dMOhcmFrYXQuIgorCisjOiBzcmMvaGVscC5jOjE4OAorbXNnaWQgImFkbWluZGlyIG11c3QgYmUgaW5zaWRlIGluc3RkaXIgZm9yIGRwa2cgdG8gd29yayBwcm9wZXJseSIKK21zZ3N0ciAiIgorCisjOiBzcmMvaGVscC5jOjE5MCBzcmMvbWFpbi5jOjc0NworIywgZnV6enkKK21zZ2lkICJ1bmFibGUgdG8gc2V0ZW52IGZvciBzdWJwcm9jZXNzZXMiCittc2dzdHIgIm5lbSBsZWhldCBzdGF0LW9sbmkgYSB2c25wcmludGYtYmVuIgorCisjOiBzcmMvaGVscC5jOjE5MgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2hyb290IHRvIGAlLjI1MHMnIgorbXNnc3RyICJtZWdoacO6c3VsdCBhIGNocm9vdCBpZGU6IGAlLjI1MHMnIgorCisjOiBzcmMvaGVscC5jOjE5NCBkcGtnLWRlYi9idWlsZC5jOjQ1NSBkcGtnLWRlYi9idWlsZC5jOjQ1NworIzogZHBrZy1kZWIvYnVpbGQuYzo1MzYgZHBrZy1kZWIvYnVpbGQuYzo1NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIGAlLjI1NXMnIgorbXNnc3RyICJzaWtlcnRlbGVuIGNoZGlyIGlkZTogYCUuMjU1cyciCisKKyM6IHNyYy9oZWxwLmM6MjU2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgZXhlY3V0ZSBwZXJtaXNzaW9ucyBvbiBgJS4yNTBzJyIKK21zZ3N0ciAiYCUuMjUwcycgZnV0dGF0w6FzaSBqb2dhaW5hayBiZcOhbGzDrXTDoXNhIHNpa2VydGVsZW4iCisKKyM6IHNyYy9oZWxwLmM6Mjc2CisjLCBmdXp6eQorbXNnaWQgInVuYWJsZSB0byBzZXRlbnYgZm9yIG1haW50YWluZXIgc2NyaXB0IgorbXNnc3RyICJuZW0gbGVoZXQgc3RhdC1vbG5pIGEgdnNucHJpbnRmLWJlbiIKKworIzogc3JjL2hlbHAuYzozMDAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImluc3RhbGxlZCAlcyBzY3JpcHQiCittc2dzdHIgInLDqWdpICVzIHN6a3JpcHQiCisKKyM6IHNyYy9oZWxwLmM6MzEzIHNyYy9oZWxwLmM6MzgyIHNyYy9oZWxwLmM6NDQxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0ICVzIGAlLjI1MHMnIgorbXNnc3RyICJuZW0gbGVsZW0gJXMgYCUuMjUwcyctdCIKKworIzogc3JjL2hlbHAuYzozNjggc3JjL2hlbHAuYzo0MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAibmV3ICVzIHNjcmlwdCIKK21zZ3N0ciAiw7pqICVzIHN6a3JpcHQiCisKKyM6IHNyYy9oZWxwLmM6NDAyCisjLCBjLWZvcm1hdAorbXNnaWQgIm9sZCAlcyBzY3JpcHQiCittc2dzdHIgInLDqWdpICVzIHN6a3JpcHQiCisKKyM6IHNyYy9oZWxwLmM6NDE2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCAlcyAnJS4yNTBzJzogJXMiCittc2dzdHIgIm5lbSBsZWxlbSAlcyBgJS4yNTBzJy10IgorCisjOiBzcmMvaGVscC5jOjQyNQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnIC0gdHJ5aW5nIHNjcmlwdCBmcm9tIHRoZSBuZXcgcGFja2FnZSBpbnN0ZWFkIC4uLlxuIgorbXNnc3RyICJkcGtnIC0gaW5rw6FiYiBtZWduw6l6ZW0gYXogw7pqIGNzb21hZyBzemtyaXB0asOpdCAuLi5cbiIKKworIzogc3JjL2hlbHAuYzo0MzkKK21zZ2lkICJ0aGVyZSBpcyBubyBzY3JpcHQgaW4gdGhlIG5ldyB2ZXJzaW9uIG9mIHRoZSBwYWNrYWdlIC0gZ2l2aW5nIHVwIgorbXNnc3RyICJuaW5jcyDDumogc3prcmlwdCBhIGNzb21hZyDDumogdsOhbHRvemF0w6FiYW4gLSBmZWxhZG9tIgorCisjOiBzcmMvaGVscC5jOjQ0NQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiAuLi4gaXQgbG9va3MgbGlrZSB0aGF0IHdlbnQgT0suXG4iCittc2dzdHIgImRwa2c6IC4uLiDDumd5IGZlc3QsIHJlbmRiZW4gbWVudC5cbiIKKworIzogc3JjL2hlbHAuYzo2MTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWN1cmVseSByZW1vdmUgJyUuMjU1cyciCittc2dzdHIgImAlLjI1NXMnIG5lbSBob3poYXTDsyBsw6l0cmUiCisKKyM6IHNyYy9oZWxwLmM6NjIxIGRwa2ctZGViL2luZm8uYzo2NSBkcGtnLWRlYi9pbmZvLmM6NjcKK21zZ2lkICJybSBjb21tYW5kIGZvciBjbGVhbnVwIgorbXNnc3RyICIiCisKKyM6IHNyYy9pbmZvZGIuYzo1MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hlY2sgZXhpc3RlbmNlIG9mIGAlLjI1MHMnIgorbXNnc3RyICJuZW0gZWxsZW7FkXJpemhldMWRIGAlLjI1MHMnIGzDqXRlIgorCisjOiBzcmMvaW5mb2RiLmM6NzAKK21zZ2lkICJjYW5ub3QgcmVhZCBpbmZvIGRpcmVjdG9yeSIKK21zZ3N0ciAiYXogaW5mbyBrw7ZueXZ0w6FyIG5lbSBvbHZhc2hhdMOzIgorCisjOiBzcmMvbWFpbi5jOjYwCisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiBgJXMnIHBhY2thZ2UgbWFuYWdlbWVudCBwcm9ncmFtIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkRlYmlhbiBgJXMnIGNzb21hZ2tlemVsxZEgcHJvZ3JhbSAlcyB2ZXJ6acOzLlxuIgorCisjOiBzcmMvbWFpbi5jOjg1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtaXwtLWluc3RhbGwgICAgICAgPC5kZWIgZmlsZSBuYW1lPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyZWN0b3J5PiAuLi5cbiIKKyIgIC0tdW5wYWNrICAgICAgICAgICA8LmRlYiBmaWxlIG5hbWU+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXJlY3Rvcnk+IC4uLlxuIgorIiAgLUF8LS1yZWNvcmQtYXZhaWwgIDwuZGViIGZpbGUgbmFtZT4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRpcmVjdG9yeT4gLi4uXG4iCisiICAtLWNvbmZpZ3VyZSAgICAgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLS10cmlnZ2Vycy1vbmx5ICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC1yfC0tcmVtb3ZlICAgICAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtUHwtLXB1cmdlICAgICAgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLS1nZXQtc2VsZWN0aW9ucyBbPHBhdHRlcm4+IC4uLl0gR2V0IGxpc3Qgb2Ygc2VsZWN0aW9ucyB0byBzdGRvdXQuXG4iCisiICAtLXNldC1zZWxlY3Rpb25zICAgICAgICAgICAgICAgICBTZXQgcGFja2FnZSBzZWxlY3Rpb25zIGZyb20gc3RkaW4uXG4iCisiICAtLWNsZWFyLXNlbGVjdGlvbnMgICAgICAgICAgICAgICBEZXNlbGVjdCBldmVyeSBub24tZXNzZW50aWFsIHBhY2thZ2UuXG4iCisiICAtLXVwZGF0ZS1hdmFpbCA8UGFja2FnZXMtZmlsZT4gICBSZXBsYWNlIGF2YWlsYWJsZSBwYWNrYWdlcyBpbmZvLlxuIgorIiAgLS1tZXJnZS1hdmFpbCA8UGFja2FnZXMtZmlsZT4gICAgTWVyZ2Ugd2l0aCBpbmZvIGZyb20gZmlsZS5cbiIKKyIgIC0tY2xlYXItYXZhaWwgICAgICAgICAgICAgICAgICAgIEVyYXNlIGV4aXN0aW5nIGF2YWlsYWJsZSBpbmZvLlxuIgorIiAgLS1mb3JnZXQtb2xkLXVuYXZhaWwgICAgICAgICAgICAgRm9yZ2V0IHVuaW5zdGFsbGVkIHVuYXZhaWxhYmxlIHBrZ3MuXG4iCisiICAtc3wtLXN0YXR1cyA8cGFja2FnZT4gLi4uICAgICAgICBEaXNwbGF5IHBhY2thZ2Ugc3RhdHVzIGRldGFpbHMuXG4iCisiICAtcHwtLXByaW50LWF2YWlsIDxwYWNrYWdlPiAuLi4gICBEaXNwbGF5IGF2YWlsYWJsZSB2ZXJzaW9uIGRldGFpbHMuXG4iCisiICAtTHwtLWxpc3RmaWxlcyA8cGFja2FnZT4gLi4uICAgICBMaXN0IGZpbGVzIGBvd25lZCcgYnkgcGFja2FnZShzKS5cbiIKKyIgIC1sfC0tbGlzdCBbPHBhdHRlcm4+IC4uLl0gICAgICAgIExpc3QgcGFja2FnZXMgY29uY2lzZWx5LlxuIgorIiAgLVN8LS1zZWFyY2ggPHBhdHRlcm4+IC4uLiAgICAgICAgRmluZCBwYWNrYWdlKHMpIG93bmluZyBmaWxlKHMpLlxuIgorIiAgLUN8LS1hdWRpdCAgICAgICAgICAgICAgICAgICAgICAgQ2hlY2sgZm9yIGJyb2tlbiBwYWNrYWdlKHMpLlxuIgorIiAgLS1wcmludC1hcmNoaXRlY3R1cmUgICAgICAgICAgICAgUHJpbnQgZHBrZyBhcmNoaXRlY3R1cmUuXG4iCisiICAtLWNvbXBhcmUtdmVyc2lvbnMgPGE+IDxvcD4gPGI+ICBDb21wYXJlIHZlcnNpb24gbnVtYmVycyAtIHNlZSBiZWxvdy5cbiIKKyIgIC0tZm9yY2UtaGVscCAgICAgICAgICAgICAgICAgICAgIFNob3cgaGVscCBvbiBmb3JjaW5nLlxuIgorIiAgLURofC0tZGVidWc9aGVscCAgICAgICAgICAgICAgICAgU2hvdyBoZWxwIG9uIGRlYnVnZ2luZy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIlBhcmFuY3NvazpcbiIKKyIgIC1pfC0taW5zdGFsbCAgICAgICAgPC5kZWIgZsOhamwgbsOpdj4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGvDtm55dnTDoXI+IC4uLlxuIgorIiAgLS11bnBhY2sgICAgICAgICAgICA8LmRlYiBmw6FqbCBuw6l2PiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8a8O2bnl2dMOhcj4gLi4uXG4iCisiICAtQXwtLXJlY29yZC1hdmFpbCAgIDwuZGViIGbDoWpsIG7DqXY+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxrw7ZueXZ0w6FyPiAuLi5cbiIKKyIgIC0tY29uZmlndXJlICAgICAgICAgPGNzb21hZz4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtcnwtLXJlbW92ZSAgICAgICAgIDxjc29tYWc+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLVB8LS1wdXJnZSAgICAgICAgICA8Y3NvbWFnPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC0tZ2V0LXNlbGVjdGlvbnMgICBbPG1pbnRhPiAuLi5dIEEga2l2w6FsYXN6dG90dGFrYXQgYSBzdGRvdXQtcmEga8O8bGRpLlxuIgorIiAgLS1zZXQtc2VsZWN0aW9ucyAgICAgICAgICAgICAgICAgS2l2w6FsYXN6dCBhIHN0ZGluLXLFkWwuXG4iCisiICAtLWNsZWFyLXNlbGVjdGlvbnMgICAgICAgICAgICAgICBOw6lsa8O8bMO2emhldMWRIGNzb21hZ29rIGtpdsOhbGFzenTDoXPDoXQgIgorInTDtnJsaS5cbiIKKyIgIC0tdXBkYXRlLWF2YWlsIDxQYWNrYWdlcy1mw6FqbD4gICBFbMOpcmhldMWRIGNzb21hZ29rIGFkYXRhaXQgY3NlcsOpbGlcbiIKKyIgIC0tbWVyZ2UtYXZhaWwgPFBhY2thZ2VzLWbDoWpsPiAgICBNZXJnZSB3aXRoIGluZm8gZnJvbSBmaWxlLlxuIgorIiAgLS1jbGVhci1hdmFpbCAgICAgICAgICAgICAgICAgICAgVMO2cmxpIGF6IGVsw6lyaGV0xZFzw6lnaSBhZGF0b2thdC5cbiIKKyIgIC0tZm9yZ2V0LW9sZC11bmF2YWlsICAgICAgICAgICAgIEZlbGVkaSBhIHRlbGVww610ZXRsZW4gZWzDqXJoZXRldGxlbiAiCisiY3NvbWFnb2thdC5cbiIKKyIgIC1zfC0tc3RhdHVzIDxjc29tYWc+IC4uLiAgICAgICAgIFLDqXN6bGV0ZXMgY3NvbWFnIMOhbGxhcG90IGtpw61yw6FzLlxuIgorIiAgLXB8LS1wcmludC1hdmFpbCA8Y3NvbWFnPiAuLi4gICAgUsOpc3psZXRlcyBlbMOpcmhldMWRIHZlcnppw7Mga2nDrXLDoXMuXG4iCisiICAtTHwtLWxpc3RmaWxlcyA8Y3NvbWFnPiAuLi4gICAgICBDc29tYWcob2spIMOhbHRhbCBhZG90dCBmw6FqbG9rLlxuIgorIiAgLWx8LS1saXN0IFs8bWludGE+IC4uLl0gICAgICAgICAgQ3NvbWFnb2sgdMO2bcO2ciBracOtcsOhc2EuXG4iCisiICAtU3wtLXNlYXJjaCA8bWludGE+IC4uLiAgICAgICAgICBDc29tYWcob2spIGFkdGEgZsOhamwob2spIGtlcmVzw6lzZS5cbiIKKyIgIC1DfC0tYXVkaXQgICAgICAgICAgICAgICAgICAgICAgIFTDtnLDtnR0IGNzb21hZyhvaykga2VyZXPDqXNlLlxuIgorIiAgLS1wcmludC1hcmNoaXRlY3R1cmUgICAgICAgICAgICAgZHBrZyBhcmNoaXRla3TDunJhIGtpw61yw6FzYS5cbiIKKyIgIC0tY29tcGFyZS12ZXJzaW9ucyA8YT4gPG9wPiA8Yj4gIFZlcnppw7Mgc3rDoW1vayDDtnNzemV2ZXTDqXNlIC0gbMOhc2QgYWzDoWJiLlxuIgorIiAgLS1mb3JjZS1oZWxwICAgICAgICAgICAgICAgICAgICAgU8O6Z8OzIG11dGF0w6FzYSBrw6lueXN6ZXLDrXTDqXNrb3IuXG4iCisiICAtRGh8LS1kZWJ1Zz1oZWxwICAgICAgICAgICAgICAgICBTw7pnw7MgbXV0YXTDoXNhIGhpYmFrZXJlc8Opc2tvci5cbiIKKyJcbiIKKworIzogc3JjL21haW4uYzoxMTMgc3JjL3F1ZXJ5Y21kLmM6NjMxIHNyYy90cmlnY21kLmM6NzcgZHBrZy1kZWIvbWFpbi5jOjg4CisjOiBkcGtnLXNwbGl0L21haW4uYzo3NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIiAgLWh8LS1oZWxwICAgICAgICAgICAgICAgICAgICAgICAgU2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCittc2dzdHIgIiIKKyIgIC1ofC0taGVscCAgICAgICAgICAgICAgICAgICAgICAgIEtpw61yamEgZSBzw7pnw7N0LlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICAgICAgICAgS2nDrXJqYSBhIHZlcnppw7N0LlxuIgorIiAgLS1saWNlbnNlfC0tbGljZW5jZSAgICAgICAgICAgICAgS2nDrXJqYSBhIGxpY2VuY2V0LlxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjExOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVXNlIGRwa2cgLWJ8LS1idWlsZHwtY3wtLWNvbnRlbnRzfC1lfC0tY29udHJvbHwtSXwtLWluZm98LWZ8LS1maWVsZHxcbiIKKyIgLXh8LS1leHRyYWN0fC1YfC0tdmV4dHJhY3R8LS1mc3lzLXRhcmZpbGUgIG9uIGFyY2hpdmVzICh0eXBlICVzIC0taGVscCkuXG4iCisiXG4iCittc2dzdHIgIiIKKyJIYXN6bsOhbGQgYSBkcGtnIC1ifC0tYnVpbGR8LWN8LS1jb250ZW50c3wtZXwtLWNvbnRyb2x8LUl8LS1pbmZvfC1mfC0tZmllbGR8XG4iCisiIC14fC0tZXh0cmFjdHwtWHwtLXZleHRyYWN0fC0tZnN5cy10YXJmaWxlIC10IGF6IGFyY2jDrXZ1bW9rb24gKGfDqXBlbGQgYmUgIgorImV6dDogJXMgLS1oZWxwKS5cbiIKKyJcbiIKKworIzogc3JjL21haW4uYzoxMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkZvciBpbnRlcm5hbCB1c2U6IGRwa2cgLS1hc3NlcnQtc3VwcG9ydC1wcmVkZXBlbmRzIHwgLS1wcmVkZXAtcGFja2FnZSB8XG4iCisiICAtLWFzc2VydC13b3JraW5nLWVwb2NoIHwgLS1hc3NlcnQtbG9uZy1maWxlbmFtZXMgfCAtLWFzc2VydC1tdWx0aS1jb25yZXAuXG4iCisiXG4iCittc2dzdHIgIiIKKyJCZWxzxZEgaGFzem7DoWxhdHJhOiBkcGtnIC0tYXNzZXJ0LXN1cHBvcnQtcHJlZGVwZW5kcyB8IC0tcHJlZGVwLXBhY2thZ2UgfFxuIgorIiAgLS1hc3NlcnQtd29ya2luZy1lcG9jaCB8IC0tYXNzZXJ0LWxvbmctZmlsZW5hbWVzIHwgLS1hc3NlcnQtbXVsdGktY29ucmVwLlxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjEyOAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyIgIC0tcm9vdD08ZGlyZWN0b3J5PiAgICAgICAgIEluc3RhbGwgb24gYSBkaWZmZXJlbnQgcm9vdCBkaXJlY3RvcnkuXG4iCisiICAtLWluc3RkaXI9PGRpcmVjdG9yeT4gICAgICBDaGFuZ2UgaW5zdGFsbGF0aW9uIGRpciB3aXRob3V0IGNoYW5naW5nIGFkbWluICIKKyJkaXIuXG4iCisiICAtLXBhdGgtZXhjbHVkZT08cGF0dGVybj4gICBEbyBub3QgaW5zdGFsbCBwYXRocyB3aGljaCBtYXRjaCBhIHNoZWxsICIKKyJwYXR0ZXJuLlxuIgorIiAgLS1wYXRoLWluY2x1ZGU9PHBhdHRlcm4+ICAgUmUtaW5jbHVkZSBhIHBhdHRlcm4gYWZ0ZXIgYSBwcmV2aW91cyAiCisiZXhjbHVzaW9uLlxuIgorIiAgLU98LS1zZWxlY3RlZC1vbmx5ICAgICAgICAgU2tpcCBwYWNrYWdlcyBub3Qgc2VsZWN0ZWQgZm9yIGluc3RhbGwvIgorInVwZ3JhZGUuXG4iCisiICAtRXwtLXNraXAtc2FtZS12ZXJzaW9uICAgICBTa2lwIHBhY2thZ2VzIHdob3NlIHNhbWUgdmVyc2lvbiBpcyBpbnN0YWxsZWQuXG4iCisiICAtR3wtLXJlZnVzZS1kb3duZ3JhZGUgICAgICBTa2lwIHBhY2thZ2VzIHdpdGggZWFybGllciB2ZXJzaW9uIHRoYW4gIgorImluc3RhbGxlZC5cbiIKKyIgIC1CfC0tYXV0by1kZWNvbmZpZ3VyZSAgICAgIEluc3RhbGwgZXZlbiBpZiBpdCB3b3VsZCBicmVhayBzb21lIG90aGVyICIKKyJwYWNrYWdlLlxuIgorIiAgLS1bbm8tXXRyaWdnZXJzICAgICAgICAgICAgU2tpcCBvciBmb3JjZSBjb25zZXF1ZW50aWFsIHRyaWdnZXIgIgorInByb2Nlc3NpbmcuXG4iCisiICAtLW5vLWRlYnNpZyAgICAgICAgICAgICAgICBEbyBub3QgdHJ5IHRvIHZlcmlmeSBwYWNrYWdlIHNpZ25hdHVyZXMuXG4iCisiICAtLW5vLWFjdHwtLWRyeS1ydW58LS1zaW11bGF0ZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSnVzdCBzYXkgd2hhdCB3ZSB3b3VsZCBkbyAtIGRvbid0IGRvIGl0LlxuIgorIiAgLUR8LS1kZWJ1Zz08b2N0YWw+ICAgICAgICAgRW5hYmxlIGRlYnVnZ2luZyAoc2VlIC1EaGVscCBvciAtLWRlYnVnPWhlbHApLlxuIgorIiAgLS1zdGF0dXMtZmQgPG4+ICAgICAgICAgICAgU2VuZCBzdGF0dXMgY2hhbmdlIHVwZGF0ZXMgdG8gZmlsZSBkZXNjcmlwdG9yICIKKyI8bj4uXG4iCisiICAtLWxvZz08ZmlsZW5hbWU+ICAgICAgICAgICBMb2cgc3RhdHVzIGNoYW5nZXMgYW5kIGFjdGlvbnMgdG8gPGZpbGVuYW1lPi5cbiIKKyIgIC0taWdub3JlLWRlcGVuZHM9PHBhY2thZ2U+LC4uLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSWdub3JlIGRlcGVuZGVuY2llcyBpbnZvbHZpbmcgPHBhY2thZ2U+LlxuIgorIiAgLS1mb3JjZS0uLi4gICAgICAgICAgICAgICAgT3ZlcnJpZGUgcHJvYmxlbXMgKHNlZSAtLWZvcmNlLWhlbHApLlxuIgorIiAgLS1uby1mb3JjZS0uLi58LS1yZWZ1c2UtLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9wIHdoZW4gcHJvYmxlbXMgZW5jb3VudGVyZWQuXG4iCisiICAtLWFib3J0LWFmdGVyIDxuPiAgICAgICAgICBBYm9ydCBhZnRlciBlbmNvdW50ZXJpbmcgPG4+IGVycm9ycy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIkxlaGV0xZFzw6lnZWs6XG4iCisiICAtLWFkbWluZGlyPTxrw7ZueXZ0w6FyPiAgICAgIEEgPGvDtm55dnTDoXI+IGhhc3puw6FsYXRhICVzIGhlbHlldHRcbiIKKyIgIC0tcm9vdD08a8O2bnl2dMOhcj4gICAgICAgICAgVGVsZXDDrXTDqXMgYXogYWRvdHQgZ3nDtmtlcsWxIGFsdGVybmF0w612ICIKKyJyZW5kc3plcnJlXG4iCisiICAtLWluc3RkaXI9PGvDtm55dnTDoXI+ICAgICAgIFRlbGVww610w6lzaSBnecO2a8OpciBtw7Nkb3PDrXTDoXNhIGF6IGFkbWluIGvDtm55dnTDoXJcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbcOzZG9zw610w6FzYSBuw6lsa8O8bFxuIgorIiAgLU98LS1zZWxlY3RlZC1vbmx5ICAgICAgICAgQSB0ZWxlcMOtdMOpc3JlL2ZyaXNzw610w6lzcmUga2kgbmVtIHbDoWxhc3p0b3R0XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNzb21hZ29rIGtpaGFnecOhc2FcbiIKKyIgIC1FfC0tc2tpcC1zYW1lLXZlcnNpb24gICAgIEF6b25vcyB0ZWxlcMOtdGV0dCB2ZXJ6acOzasO6IGNzb21hZ29rIGtpaGFnecOhc2FcbiIKKyIgIC1HfC0tcmVmdXNlLWRvd25ncmFkZSAgICAgIEEgdGVsZXDDrXRldHRuw6lsIGtvcsOhYmJpIHZlcnppw7Nqw7ogY3NvbWFnb2sgIgorImtpaGFnecOhc2EgIC1CfC0tYXV0by1kZWNvbmZpZ3VyZSAgICAgIFRlbGVww610w6lzLCBtw6lnIGhhIG3DoXMgY3NvbWFnIHTDtnLDtnR0w6kgIgorImlzIHbDoWxpa1xuIgorIiAgLS1uby1kZWJzaWcgICAgICAgICAgICAgICAgTmUgcHLDs2LDoWxqYSBlbGxlbsWRcml6bmkgYSBjc29tYWdhbMOhw61yw6Fzb2thdFxuIgorIiAgLS1uby1hY3R8LS1kcnktcnVufC0tc2ltdWxhdGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENzYWsga2nDrXJqYSBtaSB0w7ZydMOpbm5lIC0gZGUgbmVtIHRlc3ppIG1lZ1xuIgorIiAgLUR8LS1kZWJ1Zz08b2t0w6FsaXM+ICAgICAgIEhpYmFrZXJlc8OpcyBlbmdlZMOpbHllesOpc2UgLSBsw6FzZCAtRGhlbHAgdmFneVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtLWRlYnVnPWhlbHBcbiIKKyIgIC0tc3RhdHVzLWZkIDxuPiAgICAgICAgICAgIMOBbGxhcG90bcOzZG9zw610w6FzIGvDvGxkw6lzZSBhKHopIDxuPiBmw6FqbGxlw61yw7NuYWtcbiIKKyIgIC0tbG9nPTxmw6FqbG7DqXY+ICAgICAgICAgICAgw4FsbGFwb3Rtw7Nkb3PDrXTDoXNvayDDqXMgdGV2w6lrZW55c8OpZ2VrIG5hcGzDs3rDoXNhXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGEgbWVnYWRvdHQgZsOhamxiYVxuIgorIiAgLS1pZ25vcmUtZGVwZW5kcz08Y3NvbWFnPiwuLi5BIDxjc29tYWdvdD4gw6lyaW50xZEgZsO8Z2fFkXPDqWdlayBraWhhZ3nDoXNhXG4iCisiICAtLWZvcmNlLS4uLiAgICAgICAgICAgICAgICAgIFByb2Jsw6ltw6FrIGZlbMO8bGLDrXLDoWzDoXNhLCBsw6FzZDogLS1mb3JjZS1oZWxwXG4iCisiICAtLW5vLWZvcmNlLS4uLnwtLXJlZnVzZS0uLi4gIExlw6FsbMOhcyBoYSBwcm9ibMOpbWEgbMOpcCBmZWxcbiIKKyIgIC0tYWJvcnQtYWZ0ZXIgPG4+ICAgICAgICAgICAgTWVnc3pha8OtdMOhcyA8bj4gaGliYSBiZWvDtnZldGtlenRlIHV0w6FuXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTU0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21wYXJpc29uIG9wZXJhdG9ycyBmb3IgLS1jb21wYXJlLXZlcnNpb25zIGFyZTpcbiIKKyIgIGx0IGxlIGVxIG5lIGdlIGd0ICAgICAgICh0cmVhdCBlbXB0eSB2ZXJzaW9uIGFzIGVhcmxpZXIgdGhhbiBhbnkgIgorInZlcnNpb24pO1xuIgorIiAgbHQtbmwgbGUtbmwgZ2UtbmwgZ3QtbmwgKHRyZWF0IGVtcHR5IHZlcnNpb24gYXMgbGF0ZXIgdGhhbiBhbnkgdmVyc2lvbik7XG4iCisiICA8IDw8IDw9ID0gPj0gPj4gPiAgICAgICAob25seSBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIGNvbnRyb2wgZmlsZSAiCisic3ludGF4KS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIkEgLS1jb21wYXJlLXZlcnNpb25zIGthcGNzb2zDsyDDtnNzemVoYXNvbmzDrXTDsyBvcGVyw6F0b3JhaTpcbiIKKyIgbHQgbGUgZXEgbmUgZ2UgZ3QgICAgICAgKMO8cmVzIHZlcnppw7Mga2V6ZWzDqXNlIG1pbmRlbiB2ZXJ6acOzbsOhbCAiCisia29yw6FiYmlrw6ludCk7XG4iCisiIGx0LW5sIGxlLW5sIGdlLW5sIGd0LW5sICjDvHJlcyB2ZXJ6acOzIGtlemVsw6lzZSBtaW5kZW4gdmVyemnDs27DoWwgIgorImvDqXPFkWJiaWvDqW50KTtcbiIKKyIgPCA8PCA8PSA9ID49ID4+ID4gICAgICAgKGNzYWsgYSBjb250cm9sIGbDoWpsIHN6aW50YXhpc8OhdmFsIHZhbMOzICIKKyJrb21wYXRpYmlsaXTDoXNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWlhdHQpLlxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjE2MQorIywgYy1mb3JtYXQKK21zZ2lkICJVc2UgYGRzZWxlY3QnIG9yIGBhcHRpdHVkZScgZm9yIHVzZXItZnJpZW5kbHkgcGFja2FnZSBtYW5hZ2VtZW50LlxuIgorbXNnc3RyICIiCisiSGFzem7DoWxkIGEgYGFwdGl0dWRlJyAodmFneSBgZHNlbGVjdCcpIGZlbGhhc3puw6Fsw7MtYmFyw6F0IGNzb21hZy1rZXplbMWRa2V0XG4iCisKKyM6IHNyYy9tYWluLmM6MTcwCisjLCBmdXp6eQorbXNnaWQgIiIKKyJUeXBlIGRwa2cgLS1oZWxwIGZvciBoZWxwIGFib3V0IGluc3RhbGxpbmcgYW5kIGRlaW5zdGFsbGluZyBwYWNrYWdlcyBbKl07XG4iCisiVXNlIGBkc2VsZWN0JyBvciBgYXB0aXR1ZGUnIGZvciB1c2VyLWZyaWVuZGx5IHBhY2thZ2UgbWFuYWdlbWVudDtcbiIKKyJUeXBlIGRwa2cgLURoZWxwIGZvciBhIGxpc3Qgb2YgZHBrZyBkZWJ1ZyBmbGFnIHZhbHVlcztcbiIKKyJUeXBlIGRwa2cgLS1mb3JjZS1oZWxwIGZvciBhIGxpc3Qgb2YgZm9yY2luZyBvcHRpb25zO1xuIgorIlR5cGUgZHBrZy1kZWIgLS1oZWxwIGZvciBoZWxwIGFib3V0IG1hbmlwdWxhdGluZyAqLmRlYiBmaWxlcztcbiIKKyJcbiIKKyJPcHRpb25zIG1hcmtlZCBbKl0gcHJvZHVjZSBhIGxvdCBvZiBvdXRwdXQgLSBwaXBlIGl0IHRocm91Z2ggYGxlc3MnIG9yICIKKyJgbW9yZScgISIKK21zZ3N0ciAiIgorIkEgZHBrZyAtLWhlbHAgcGFyYW5jcyBhZGphIGEgc8O6Z8OzdCBjc29tYWdvayB0ZWxlcMOtdMOpc8OpaGV6WypdO1xuIgorIkEgZHNlbGVjdCBwYXJhbmNzIGEgZHBrZyBjc29tYWdrZXplbMWRIGVneSBmZWxoYXN6bsOhbMOzYmFyw6F0YWJiIGZlbMO8bGV0ZTtcbiIKKyJBIGRwa2cgLURoZWxwIGEgZHBrZyBoaWJha2VyZXPFkSDDqXJ0w6lrZWl0IGFkamE7XG4iCisiQSBkcGtnIC0tZm9yY2UtaGVscCBhIGvDqW55c3plcsOtdMWRIGxlaGV0xZFzw6lnZWtldDtcbiIKKyJBIGRwa2ctZGViIC0taGVscCBhICouZGViIGbDoWpsb2sga2V6ZWzDqXPDqXLFkWwgc8O6ZztcbiIKKyJBIGRwa2cgLS1saWNlbmNlIGEgR05VIEdQTCBzemVyaW50aSBzemVyesWRaSBqb2dpIGxpY2VuY3LFkWwgw6lzICIKKyJnYXJhbmNpYWhpw6FueXLDs2wgc3rDs2xbKl0uXG4iCisiXG4iCisiQSBbKl0tZ2FsIGplbMO2bHQgbGVoZXTFkXPDqWdlayBuYWd5IGtpbWVuZXRldCDDrXJuYWsgLSBoYXN6bsOhbGQgYSBwaXDDoXQgYSAiCisiYGxlc3MnIHZhZ3kgYG1vcmUnIHBhcmFuY3NvbiBrZXJlc3p0w7xsISIKKworIzogc3JjL21haW4uYzoyMTkKK21zZ2lkICJTZXQgYWxsIGZvcmNlIG9wdGlvbnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjEKK21zZ2lkICJSZXBsYWNlIGEgcGFja2FnZSB3aXRoIGEgbG93ZXIgdmVyc2lvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIyMworbXNnaWQgIkNvbmZpZ3VyZSBhbnkgcGFja2FnZSB3aGljaCBtYXkgaGVscCB0aGlzIG9uZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIyNQorbXNnaWQgIlByb2Nlc3MgaW5jaWRlbnRhbCBwYWNrYWdlcyBldmVuIHdoZW4gb24gaG9sZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIyNworbXNnaWQgIlRyeSB0byAoZGUpaW5zdGFsbCB0aGluZ3MgZXZlbiB3aGVuIG5vdCByb290IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjI5Cittc2dpZCAiUEFUSCBpcyBtaXNzaW5nIGltcG9ydGFudCBwcm9ncmFtcywgcHJvYmxlbXMgbGlrZWx5IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjMxCittc2dpZCAiSW5zdGFsbCBhIHBhY2thZ2UgZXZlbiBpZiBpdCBmYWlscyBhdXRoZW50aWNpdHkgY2hlY2siCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzMKK21zZ2lkICJQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyB2ZXJzaW9ucyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzNQorbXNnaWQgIk92ZXJ3cml0ZSBhIGZpbGUgZnJvbSBvbmUgcGFja2FnZSB3aXRoIGFub3RoZXIiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzcKK21zZ2lkICJPdmVyd3JpdGUgYSBkaXZlcnRlZCBmaWxlIHdpdGggYW4gdW5kaXZlcnRlZCB2ZXJzaW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjM5Cittc2dpZCAiT3ZlcndyaXRlIG9uZSBwYWNrYWdlJ3MgZGlyZWN0b3J5IHdpdGggYW5vdGhlcidzIGZpbGUiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDEKK21zZ2lkICJEbyBub3QgcGVyZm9ybSBzYWZlIEkvTyBvcGVyYXRpb25zIHdoZW4gdW5wYWNraW5nIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjQzCittc2dpZCAiQWx3YXlzIHVzZSB0aGUgbmV3IGNvbmZpZyBmaWxlcywgZG9uJ3QgcHJvbXB0IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjQ1Cittc2dpZCAiQWx3YXlzIHVzZSB0aGUgb2xkIGNvbmZpZyBmaWxlcywgZG9uJ3QgcHJvbXB0IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjQ4Cittc2dpZCAiIgorIlVzZSB0aGUgZGVmYXVsdCBvcHRpb24gZm9yIG5ldyBjb25maWcgZmlsZXMgaWYgb25lXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgIGlzIGF2YWlsYWJsZSwgZG9uJ3QgcHJvbXB0LiBJZiBubyBkZWZhdWx0IGNhbiBiZSAiCisiZm91bmQsXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgIHlvdSB3aWxsIGJlIHByb21wdGVkIHVubGVzcyBvbmUgb2YgdGhlIGNvbmZvbGQgb3JcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgY29uZm5ldyBvcHRpb25zIGlzIGFsc28gZ2l2ZW4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNTMKK21zZ2lkICJBbHdheXMgaW5zdGFsbCBtaXNzaW5nIGNvbmZpZyBmaWxlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI1NQorbXNnaWQgIk9mZmVyIHRvIHJlcGxhY2UgY29uZmlnIGZpbGVzIHdpdGggbm8gbmV3IHZlcnNpb25zIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjU3Cittc2dpZCAiUHJvY2VzcyBldmVuIHBhY2thZ2VzIHdpdGggd3Jvbmcgb3Igbm8gYXJjaGl0ZWN0dXJlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjU5Cittc2dpZCAiSW5zdGFsbCBldmVuIGlmIGl0IHdvdWxkIGJyZWFrIGFub3RoZXIgcGFja2FnZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI2MQorbXNnaWQgIkFsbG93IGluc3RhbGxhdGlvbiBvZiBjb25mbGljdGluZyBwYWNrYWdlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI2MworIywgZnV6enkKKyN8IG1zZ2lkICJkZXBlbmRlbmN5IHByb2JsZW1zIC0gbm90IHJlbW92aW5nIgorbXNnaWQgIlR1cm4gYWxsIGRlcGVuZGVuY3kgcHJvYmxlbXMgaW50byB3YXJuaW5ncyIKK21zZ3N0ciAiZsO8Z2fFkXPDqWdlayB2YW5uYWsgLSBuZW0gdMO2cmzDtm0iCisKKyM6IHNyYy9tYWluLmM6MjY1CisjLCBmdXp6eQorI3wgbXNnaWQgImRlcGVuZGVuY3kgcHJvYmxlbXMgLSBub3QgcmVtb3ZpbmciCittc2dpZCAiVHVybiBkZXBlbmRlbmN5IHZlcnNpb24gcHJvYmxlbXMgaW50byB3YXJuaW5ncyIKK21zZ3N0ciAiZsO8Z2fFkXPDqWdlayB2YW5uYWsgLSBuZW0gdMO2cmzDtm0iCisKKyM6IHNyYy9tYWluLmM6MjY3Cittc2dpZCAiUmVtb3ZlIHBhY2thZ2VzIHdoaWNoIHJlcXVpcmUgaW5zdGFsbGF0aW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjY5Cittc2dpZCAiUmVtb3ZlIGFuIGVzc2VudGlhbCBwYWNrYWdlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjgxCittc2dpZCAiR2VuZXJhbGx5IGhlbHBmdWwgcHJvZ3Jlc3MgaW5mb3JtYXRpb24iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODIKKyMsIGZ1enp5Cittc2dpZCAiSW52b2NhdGlvbiBhbmQgc3RhdHVzIG9mIG1haW50YWluZXIgc2NyaXB0cyIKK21zZ3N0ciAibmVtIGxlaGV0IHN0YXQtb2xuaSBhIHZzbnByaW50Zi1iZW4iCisKKyM6IHNyYy9tYWluLmM6MjgzCittc2dpZCAiT3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg0Cittc2dpZCAiTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODUKKyMsIGZ1enp5CisjfCBtc2dpZCAicmVhZCBlcnJvciBpbiBjb25maWd1cmF0aW9uIGZpbGUgYCUuMjU1cyciCittc2dpZCAiT3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZSIKK21zZ3N0ciAiYmXDoWxsw610w7MgZsOhamwgb2x2YXPDoXNpIGhpYmE6IGAlLjI1NXMnIgorCisjOiBzcmMvbWFpbi5jOjI4NgorbXNnaWQgIkxvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4NworbXNnaWQgIkRlcGVuZGVuY2llcyBhbmQgY29uZmxpY3RzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg4Cittc2dpZCAiTG90cyBvZiBkZXBlbmRlbmNpZXMvY29uZmxpY3RzIG91dHB1dCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4OQorbXNnaWQgIlRyaWdnZXIgYWN0aXZhdGlvbiBhbmQgcHJvY2Vzc2luZyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MAorbXNnaWQgIkxvdHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2VycyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MQorbXNnaWQgIlNpbGx5IGFtb3VudHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2VycyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MgorbXNnaWQgIkxvdHMgb2YgZHJpdmVsIGFib3V0IGVnIHRoZSBkcGtnL2luZm8gZGlyZWN0b3J5IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjkzCittc2dpZCAiSW5zYW5lIGFtb3VudHMgb2YgZHJpdmVsIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MzA0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlcyBkZWJ1Z2dpbmcgb3B0aW9uLCAtLWRlYnVnPTxvY3RhbD4gb3IgLUQ8b2N0YWw+OlxuIgorIlxuIgorIiBOdW1iZXIgIFJlZi4gaW4gc291cmNlICAgRGVzY3JpcHRpb25cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjMxMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiRGVidWdnaW5nIG9wdGlvbnMgY2FuIGJlIG1peGVkIHVzaW5nIGJpdHdpc2Utb3IuXG4iCisiTm90ZSB0aGF0IHRoZSBtZWFuaW5ncyBhbmQgdmFsdWVzIGFyZSBzdWJqZWN0IHRvIGNoYW5nZS5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjMxOQorbXNnaWQgIi0tZGVidWcgcmVxdWlyZXMgYW4gb2N0YWwgYXJndW1lbnQiCittc2dzdHIgImEgLS1kZWJ1ZyBlZ3kgb2t0w6FsaXMgYXJndW1lbnR1bW90IGlnw6lueWVsIgorCisjOiBzcmMvbWFpbi5jOjM0OAorIywgYy1mb3JtYXQKK21zZ2lkICJudWxsIHBhY2thZ2UgbmFtZSBpbiAtLWlnbm9yZS1kZXBlbmRzIGNvbW1hLXNlcGFyYXRlZCBsaXN0IGAlLjI1MHMnIgorbXNnc3RyICIiCisibmluY3MgY3NvbWFnbsOpdiBheiAtLWlnbm9yZS1kZXBlbmRzIHZlc3N6xZF2ZWwgZWx2w6FsYXN6dG90dCBsaXN0w6Fqw6FiYW46IGAiCisiJS4yNTBzJyIKKworIzogc3JjL21haW4uYzozNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS1pZ25vcmUtZGVwZW5kcyByZXF1aXJlcyBhIGxlZ2FsIHBhY2thZ2UgbmFtZS4gYCUuMjUwcycgaXMgbm90OyAlcyIKK21zZ3N0ciAiQXogLS1pZ25vcmUtZGVwZW5kcyBoZWx5ZXMgY3NvbWFnbmV2ZXQga8O2dmV0ZWwuIGAlLjI1MHMnIG5lbSBhejsgJXMiCisKKyM6IHNyYy9tYWluLmM6MzcxIHNyYy9tYWluLmM6MzgxIHNyYy9tYWluLmM6NjQ5IGRwa2ctc3BsaXQvbWFpbi5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGludGVnZXIgZm9yIC0tJXM6IGAlLjI1MHMnIgorbXNnc3RyICLDqXJ2w6lueXRlbGVtIGVnw6lzeiBhIC0tJXMgc3rDoW3DoXJhOiBgJS4yNTBzJyIKKworIzogc3JjL21haW4uYzo0MzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgZXhlY3V0aW5nIGhvb2sgJyVzJywgZXhpdCBjb2RlICVkIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6NDY1Cittc2dpZCAic3RhdHVzIGxvZ2dlciIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjQ4MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXMgZm9yY2luZyBvcHRpb25zIC0gY29udHJvbCBiZWhhdmlvdXIgd2hlbiBwcm9ibGVtcyBmb3VuZDpcbiIKKyIgIHdhcm4gYnV0IGNvbnRpbnVlOiAgLS1mb3JjZS08dGhpbmc+LDx0aGluZz4sLi4uXG4iCisiICBzdG9wIHdpdGggZXJyb3I6ICAgIC0tcmVmdXNlLTx0aGluZz4sPHRoaW5nPiwuLi4gfCAtLW5vLWZvcmNlLTx0aGluZz4sLi4uXG4iCisiIEZvcmNpbmcgdGhpbmdzOlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6NDkwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJXQVJOSU5HIC0gdXNlIG9mIG9wdGlvbnMgbWFya2VkIFshXSBjYW4gc2VyaW91c2x5IGRhbWFnZSB5b3VyIGluc3RhbGxhdGlvbi5cbiIKKyJGb3JjaW5nIG9wdGlvbnMgbWFya2VkIFsqXSBhcmUgZW5hYmxlZCBieSBkZWZhdWx0LlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6NTA0CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gZm9yY2UvcmVmdXNlIG9wdGlvbiBgJS4qcyciCittc2dzdHIgImlzbWVyZXRsZW4gYCUuKnMnIGvDqW55c3plcsOtdMWRL2VsdXRhc8OtdMOzIG9wY2nDsyIKKworIzogc3JjL21haW4uYzo1MTMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIm9ic29sZXRlIGZvcmNlL3JlZnVzZSBvcHRpb24gJyVzJ1xuIgorbXNnc3RyICJGaWd5ZWxlbTogZWxhdnVsdCBgLS0lcycga8OpbnlzemVyw610xZEvZWx1dGFzw610w7Mgb3BjacOzXG4iCisKKyM6IHNyYy9tYWluLmM6NjQzCittc2dpZCAiLS1jb21tYW5kLWZkIHRha2VzIG9uZSBhcmd1bWVudCwgbm90IHplcm8iCittc2dzdHIgImEgLS1jb21tYW5kLWZkIDEgYXJndW1lbnR1bW90IHbDoXIiCisKKyM6IHNyYy9tYWluLmM6NjQ1Cittc2dpZCAiLS1jb21tYW5kLWZkIG9ubHkgdGFrZXMgb25lIGFyZ3VtZW50IgorbXNnc3RyICJhIC0tY29tbWFuZC1mZCBjc2FrIDEgYXJndW1lbnR1bW90IHbDoXIiCisKKyM6IHNyYy9tYWluLmM6NjUxCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkbid0IG9wZW4gYCVpJyBmb3Igc3RyZWFtIgorbXNnc3RyICJgJWknIG5lbSBueWl0aGF0w7MgbWVnIGF6IMOhcmFtb2x0YXTDoXNyYSIKKworIzogc3JjL21haW4uYzo2NzYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgYmVmb3JlIGVuZCBvZiBsaW5lICVkIgorbXNnc3RyICJ2w6FyYXRsYW4gZW9mIGUgc29yIHbDqWdlIGVsxZF0dDogJWQiCisKKyM6IHNyYy9tYWluLmM6NzE5IHNyYy9tYWluLmM6NzQxIHNyYy9xdWVyeWNtZC5jOjY5MiBzcmMvc3RhdGNtZC5jOjM3OQorIzogZHBrZy1kZWIvbWFpbi5jOjIwMSBkcGtnLXNwbGl0L21haW4uYzoxNjMKK21zZ2lkICJuZWVkIGFuIGFjdGlvbiBvcHRpb24iCittc2dzdHIgImVneSBtxbF2ZWxldCBvcGNpw7N0IGlnw6lueWVsIgorCisjOiBzcmMvcGFja2FnZXMuYzoxMTMKK21zZ2lkICIiCisieW91IG11c3Qgc3BlY2lmeSBwYWNrYWdlcyBieSB0aGVpciBvd24gbmFtZXMsIG5vdCBieSBxdW90aW5nIHRoZSBuYW1lcyBvZiAiCisidGhlIGZpbGVzIHRoZXkgY29tZSBpbiIKK21zZ3N0ciAiYSBjc29tYWdvayBzaW1hIG5ldsOpdCBrZWxsIG1lZ2Fkbm9kLCBuZW0gYXogxZFrZXQgdGFydGFsbWF6w7MgZsOhamxva8OpdCIKKworIzogc3JjL3BhY2thZ2VzLmM6MTMzCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgLS1wZW5kaW5nIGRvZXMgbm90IHRha2UgYW55IG5vbi1vcHRpb24gYXJndW1lbnRzIgorbXNnc3RyICJhIC0tJXMgLS1wZW5kaW5nIG5lbSBmb2dhZCBub24tb3BjaW9uw6FsaXMgYXJndW1lbnR1bW90IgorCisjOiBzcmMvcGFja2FnZXMuYzoxMzggc3JjL3F1ZXJ5Y21kLmM6Mzc1IHNyYy9xdWVyeWNtZC5jOjU2NQorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGF0IGxlYXN0IG9uZSBwYWNrYWdlIG5hbWUgYXJndW1lbnQiCittc2dzdHIgImEgLS0lcyBsZWdhbMOhYmIgMSBjc29tYWduw6l2IGFyZ3VtZW50b3QgdsOhciIKKworIzogc3JjL3BhY2thZ2VzLmM6MTc5CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgJXMgbGlzdGVkIG1vcmUgdGhhbiBvbmNlLCBvbmx5IHByb2Nlc3Npbmcgb25jZS5cbiIKK21zZ3N0ciAiRSBjc29tYWc6ICVzIHTDtmJic3rDtnIgc3plcmVwZWwsIGNzYWsgZWd5c3plciBkb2xnb3pvbSBmZWwuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjE4MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiTW9yZSB0aGFuIG9uZSBjb3B5IG9mIHBhY2thZ2UgJXMgaGFzIGJlZW4gdW5wYWNrZWRcbiIKKyIgaW4gdGhpcyBydW4gISAgT25seSBjb25maWd1cmluZyBpdCBvbmNlLlxuIgorbXNnc3RyICIiCisiQSh6KSAlcyBjc29tYWcgdMO2YmIgbcOhc29sYXRhIGtpY3NvbWFnb2x0IGVneSBrw7ZyYmVuICFcbiIKKyIgQ3NhayBlZ3lzemVyIMOhbGzDrXRvbSBiZS5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MjMyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisicGFja2FnZSAlLjI1MHMgaXMgbm90IHJlYWR5IGZvciB0cmlnZ2VyIHByb2Nlc3NpbmdcbiIKKyIgKGN1cnJlbnQgc3RhdHVzIGAlLjI1MHMnIHdpdGggbm8gcGVuZGluZyB0cmlnZ2VycykiCittc2dzdHIgIiIKKyJBKHopICUuMjUwcyBjc29tYWcgbmVtIGJlw6FsbMOtdGhhdMOzXG4iCisiIChqZWxlbmxlZ2kgw6FsbGFwb3RhOiBgJS4yNTBzJykiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjMzNAorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgd2hpY2ggcHJvdmlkZXMgJXMgaXMgdG8gYmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiICAlLnMsIG1lbHkgJXMtdCBhZGphIGVsdMOhdm9sw610w6FzcmEgamVsw7ZsdC5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MzM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIgICUucyBlbHTDoXZvbMOtdMOhc3JhIGplbMO2bHQuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjM1NAorIywgYy1mb3JtYXQKK21zZ2lkICIgIFZlcnNpb24gb2YgJXMgb24gc3lzdGVtIGlzICVzLlxuIgorbXNnc3RyICIgICVzIHJlbmRzemVyZW4gbMOpdsWRIHZlcnppw7NqYSAlcy5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6Mzc2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgd2hpY2ggcHJvdmlkZXMgJXMgYXdhaXRzIHRyaWdnZXIgcHJvY2Vzc2luZy5cbiIKK21zZ3N0ciAiICAlLnMsIG1lbHkgJXMtdCBhZGphIGVsdMOhdm9sw610w6FzcmEgamVsw7ZsdC5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MzgwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgYXdhaXRzIHRyaWdnZXIgcHJvY2Vzc2luZy5cbiIKK21zZ3N0ciAiICAlLnMgZWx0w6F2b2zDrXTDoXNyYSBqZWzDtmx0LlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogYWxzbyBjb25maWd1cmluZyBgJXMnIChyZXF1aXJlZCBieSBgJXMnKVxuIgorbXNnc3RyICJkcGtnOiBleiBpcyBiZcOhbGzDrXTDoXNyYSBrZXLDvGw6IGAlcycgKGAlcycga8OpcmkpXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQxOAorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgd2hpY2ggcHJvdmlkZXMgJXMgaXMgbm90IGNvbmZpZ3VyZWQgeWV0LlxuIgorbXNnc3RyICIgICUucywgbWVseSAlcy10IGFkamEgbmluY3MgYmXDoWxsw610dmEuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQyMQorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgaXMgbm90IGNvbmZpZ3VyZWQgeWV0LlxuIgorbXNnc3RyICIgICVzIGNzb21hZyBtw6lnIGJlw6FsbMOtdGF0bGFuLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIHdoaWNoIHByb3ZpZGVzICVzIGlzIG5vdCBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgYCVzJyBjc29tYWcsIG1lbHkgJXMtdCBhZGphIG5pbmNzIHRlbGVww610dmUuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQzNQorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgaXMgbm90IGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiICAgYCVzJyBjc29tYWcgbmluY3MgdGVsZXDDrXR2ZS5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDcyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIgJXMgKCVzKSBicmVha3MgJXMgYW5kIGlzICVzLlxuIgorbXNnc3RyICIgICUuMjUwcyBhZGphICUuMjUwcy10IMOpcyAlcy5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDc4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIgICVzICglcykgcHJvdmlkZXMgJXMuXG4iCittc2dzdHIgIiVzIChhbGZvbHlhbWF0KTogJXNcbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDgyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIgIFZlcnNpb24gb2YgJXMgdG8gYmUgY29uZmlndXJlZCBpcyAlcy5cbiIKK21zZ3N0ciAiICAlcyByZW5kc3plcmVuIGzDqXbFkSB2ZXJ6acOzamEgJXMuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjU5NgorbXNnaWQgIiBkZXBlbmRzIG9uICIKK21zZ3N0ciAiIGbDvGdnxZFzw6lnZWs6ICIKKworIzogc3JjL3BhY2thZ2VzLmM6NjAyCittc2dpZCAiOyBob3dldmVyOlxuIgorbXNnc3RyICI7IMOhbTpcbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo3MQorIywgYy1mb3JtYXQKK21zZ2lkICIuLi4vJXMiCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5MQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBlbnN1cmluZyBgJS4yNTBzJyBkb2Vzbid0IGV4aXN0IgorbXNnc3RyICJoaWJhIGAlLjI1MHMnIGhpw6FueWEgZWxsZW7FkXJ6w6lzZWtvciIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5OQorbXNnaWQgInNwbGl0IHBhY2thZ2UgcmVhc3NlbWJseSIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEwOAorbXNnaWQgInJlYXNzZW1ibGVkIHBhY2thZ2UgZmlsZSIKK21zZ3N0ciAiw7pqcmFyZW5kZXpldHQgY3NvbWFnIGbDoWpsIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEzMworIywgYy1mb3JtYXQKK21zZ2lkICJBdXRoZW50aWNhdGluZyAlcyAuLi5cbiIKK21zZ3N0ciAiJXMgaGl0ZWxlc8OtdMOpc2UgLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTM5Cittc2dpZCAicGFja2FnZSBzaWduYXR1cmUgdmVyaWZpY2F0aW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTQ2CisjLCBjLWZvcm1hdAorbXNnaWQgIlZlcmlmaWNhdGlvbiBvbiBwYWNrYWdlICVzIGZhaWxlZCEiCittc2dzdHIgIiVzIGNzb21hZyBoaXRlbGVzw610w6lzZSBtZWdoacO6c3VsdCEiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTQ4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJWZXJpZmljYXRpb24gb24gcGFja2FnZSAlcyBmYWlsZWQsXG4iCisiYnV0IGluc3RhbGxpbmcgYW55d2F5IGFzIHlvdSByZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiIKKyIlcyBjc29tYWcgaGl0ZWxlc8OtdMOpc2UgbWVnaGnDunN1bHQsXG4iCisiZGUgdGVsZXDDrXRlbSwgbWVydCDDrWd5IGFrYXJ0YWQuXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTUyCisjLCBjLWZvcm1hdAorbXNnaWQgInBhc3NlZFxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTY1IGRwa2ctZGViL2luZm8uYzo4MQorIywgZnV6enkKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHRlbXBvcmFyeSBkaXJlY3RvcnkiCittc2dzdHIgImhpYmEgYXogw6F0bWVuZXRpIGvDtm55dnTDoXJuw6l2IGzDqXRyZWhvesOhc2Frb3IiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MjA1CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgJXMgaGFzIHRvbyBtYW55IENvbmZsaWN0cy9SZXBsYWNlcyBwYWlycyIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjI0MworIywgYy1mb3JtYXQKK21zZ2lkICJvbGQgdmVyc2lvbiBvZiBwYWNrYWdlIGhhcyBvdmVybHktbG9uZyBpbmZvIGZpbGUgbmFtZSBzdGFydGluZyBgJS4yNTBzJyIKK21zZ3N0ciAiIgorImEgY3NvbWFnIHLDqWdpIHZlcnppw7Nqw6FiYW4gdMO6bCBob3NzesO6IGluZm8gZsOhamxuw6l2IHZhbiwga2V6ZGV0ZTogYCUuMjUwcyciCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MjgxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgb2Jzb2xldGUgaW5mbyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuZW0gdHVkb20gZWx0w6F2b2zDrXRhbmkgYXogZWxhdnVsdCBgJS4yNTBzJyBpbmZvIGbDoWpsdCIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyODYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgKHN1cHBvc2VkKSBuZXcgaW5mbyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuZW0gdHVkb20gdGVsZXDDrXRlbmkgYXogKMOhbGzDrXTDs2xhZ29zKSDDumogYCUuMjUwcycgaW5mbyBmw6FqbHQiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6Mjk2Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gdGVtcCBjb250cm9sIGRpcmVjdG9yeSIKK21zZ3N0ciAibmVtIHR1ZG9tIG1lZ255aXRuaSBheiDDoXRtZW5ldGkgZWxsZW7FkXJ6xZEga8O2bnl2dMOhcmF0IgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMwNworIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGNvbnRhaW5zIG92ZXJseS1sb25nIGNvbnRyb2wgaW5mbyBmaWxlIG5hbWUgKHN0YXJ0aW5nIGAlLjUwcycpIgorbXNnc3RyICJhIGNzb21hZ2JhbiB0w7psIGhvc3N6w7ogY29udHJvbCBpbmZvIGbDoWpsbsOpdiB2YW4gKGtlemRldGU6IGAlLjUwcycpIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMxNAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGNvbnRyb2wgaW5mbyBjb250YWluZWQgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzE2CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgY29udHJvbCBpbmZvIHJtZGlyIG9mIGAlLjI1MHMnIGRpZG4ndCBzYXkgbm90IGEgZGlyIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzI2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlICVzIGNvbnRhaW5lZCBsaXN0IGFzIGluZm8gZmlsZSIKK21zZ3N0ciAiZHBrZzogZmlneWVsZW0gLSAlcyBjc29tYWcgbGlzdMOhdCB0YXJ0YWxtYXpvdHQgaW5mbyBmw6FqbGvDqW50IgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMzMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgaW5mbyBmaWxlIGAlLjI1MHMnIGFzIGAlLjI1MHMnIgorbXNnc3RyICJuZW0gdHVkb20gdGVsZXDDrXRlbmkgYXogw7pqIGAlLjI1MHMnIGluZm8gZsOhamx0LCBtaW50IGAlLjI1MHMnIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjM0OSBzcmMvcmVtb3ZlLmM6MTk4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkZWxldGUgY29udHJvbCBpbmZvIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5lbSB0dWRvbSB0w7Zyw7ZsbmkgYCUuMjUwcycga29udHJvbGwgaW5mbyBmw6FqbHQiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDExCittc2dpZCAiY2Fubm90IGFjY2VzcyBhcmNoaXZlIgorbXNnc3RyICJheiBhcmNow612dW0gbmVtIGVsw6lyaGV0xZEiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDMzCisjLCBmdXp6eQorI3wgbXNnaWQgImNvbnRyb2wgaW5mb3JtYXRpb24gbGVuZ3RoIgorbXNnaWQgInBhY2thZ2UgY29udHJvbCBpbmZvcm1hdGlvbiBleHRyYWN0aW9uIgorbXNnc3RyICJlbGxlbsWRcnrFkSBpbmZvcm3DoWNpw7MgaG9zc3oiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDYwCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlY29yZGVkIGluZm8gYWJvdXQgJXMgZnJvbSAlcy5cbiIKK21zZ3N0ciAiJXMgaW5mb3Jtw6FjacOzaXQgcsO2Z3rDrXRldHRlbSBpbm5lbjogJXMuXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDY4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgYXJjaGl0ZWN0dXJlICglcykgZG9lcyBub3QgbWF0Y2ggc3lzdGVtICglcykiCittc2dzdHIgImEgY3NvbWFnIGfDqXB0w61wdXNhICglcykgZWx0w6lyIGEgcmVuZHN6ZXJ0xZFsICglcykiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTIzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiByZWdhcmRpbmcgJXMgY29udGFpbmluZyAlcywgcHJlLWRlcGVuZGVuY3kgcHJvYmxlbTpcbiIKKyIlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjUyNgorIywgYy1mb3JtYXQKK21zZ2lkICJwcmUtZGVwZW5kZW5jeSBwcm9ibGVtIC0gbm90IGluc3RhbGxpbmcgJS4yNTBzIgorbXNnc3RyICJlbMWRLWbDvGdnxZFzw6lnaSBnb25kIC0gJS4yNTBzIG5lbSB0ZWxlcMO8bCIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1MjcKKyMsIGZ1enp5Cittc2dpZCAiaWdub3JpbmcgcHJlLWRlcGVuZGVuY3kgcHJvYmxlbSEiCittc2dzdHIgImRwa2c6IGZpZ3llbGVtIC0gZWzFkS1mw7xnZ8WRc8OpZ2kgZ29uZG9rIMOhdGzDqXDDqXNlICFcbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHJlcGFyaW5nIHRvIHJlcGxhY2UgJXMgJXMgKHVzaW5nICVzKSAuLi5cbiIKK21zZ3N0ciAiJXMgJXMgY3NlcsOpasOpbmVrIGVsxZFrw6lzesOtdMOpc2UgKGUgY3NvbWFnZ2FsOiAlcykgLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIlVucGFja2luZyAlcyAoZnJvbSAlcykgLi4uXG4iCittc2dzdHIgIktpY3NvbWFnb2zDoXM6ICVzIGlubmVuOiAlcyAuLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAibmFtZSBvZiBjb25mZmlsZSAoc3RhcnRpbmcgYCUuMjUwcycpIGlzIHRvbyBsb25nICg+JWQgY2hhcmFjdGVycykiCittc2dzdHIgImEga29uZmbDoWpsIG5ldmUgKGtlemRldGU6IGAlLjI1MHMnKSB0w7psIGhvc3N6w7ogKD4lZCBrYXJha3RlcikiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjMzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDcxCisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWQgZXJyb3IgaW4gJS4yNTBzIgorbXNnc3RyICJvbHZhc8Ohc2kgaGliYSBpdHQ6ICUuMjUwcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyAlLjI1MHMiCittc2dzdHIgImhpYmEgJS4yNTBzIGJlesOhcsOhc2Frb3IiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjM3CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHRyeWluZyB0byBvcGVuICUuMjUwcyIKK21zZ3N0ciAiaGliYSAlLjI1MHMgbWVnbnlpdMOhc2Frb3IiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6Njc4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJEZS1jb25maWd1cmluZyAlcywgdG8gYWxsb3cgcmVtb3ZhbCBvZiAlcyAuLi5cbiIKK21zZ3N0ciAiJXMgZGVrb25maWd1csOhbMOhc2EsIMOtZ3kgJXMgZWx0w6F2b2zDrXRoYXTDs3bDoSB2w6FsaWsuLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2ODEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIkRlLWNvbmZpZ3VyaW5nICVzIC4uLlxuIgorbXNnc3RyICJFbHTDoXZvbMOtdMOhczogJXMgLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NzU1CisjLCBjLWZvcm1hdAorbXNnaWQgIlVucGFja2luZyByZXBsYWNlbWVudCAlLjI1MHMgLi4uXG4iCittc2dzdHIgIkNzZXJlIGtpY3NvbWFnb2zDoXNhOiAlLjI1MHMgLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6ODQwCittc2dpZCAicGFja2FnZSBmaWxlc3lzdGVtIGFyY2hpdmUgZXh0cmFjdGlvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjg1NAorbXNnaWQgImVycm9yIHJlYWRpbmcgZHBrZy1kZWIgdGFyIG91dHB1dCIKK21zZ3N0ciAiaGliYSBhIGRwa2ctZGViIHRhciBraW1lbmV0IG9sdmFzw6FzYWtvciIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NTYKK21zZ2lkICJjb3JydXB0ZWQgZmlsZXN5c3RlbSB0YXJmaWxlIC0gY29ycnVwdGVkIHBhY2thZ2UgYXJjaGl2ZSIKK21zZ3N0ciAiaGliw6FzIGbDoWpscmVuZHN6ZXIgdGFyZsOhamwgLS0gaGliw6FzIGNzb21hZyBhcmNow612dW0iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6ODU5Cittc2dpZCAiZHBrZy1kZWI6IHphcCBwb3NzaWJsZSB0cmFpbGluZyB6ZXJvcyIKK21zZ3N0ciAiZHBrZy1kZWI6IGxlaGV0c8OpZ2VzIHZlemV0xZEgMC3DoWsgbGV2w6Fnw6FzYSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5MTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBzdGF0IG9sZCBmaWxlICclLjI1MHMnIHNvIG5vdCBkZWxldGluZyBpdDogJXMiCittc2dzdHIgImRwa2c6IGZpZ3llbGVtIC0gbmVtIGxlbGVtIGEgcsOpZ2kgZsOhamx0OiBgJS4yNTBzJyDDrWd5IG5lbSB0w7ZybMO2bTogJXMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTI1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGVsZXRlIG9sZCBkaXJlY3RvcnkgJyUuMjUwcyc6ICVzIgorbXNnc3RyICJkcGtnOiBmaWd5ZWxlbSAtIG5lbSB0w7Zyw7ZsaGV0xZEgYSByw6lnaSBrw7ZueXZ0w6FyOiBgJS4yNTBzJzogJXNcbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5MjgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIm9sZCBjb25mZmlsZSAnJS4yNTBzJyB3YXMgYW4gZW1wdHkgZGlyZWN0b3J5IChhbmQgaGFzIG5vdyBiZWVuIGRlbGV0ZWQpIgorbXNnc3RyICIiCisiZHBrZzogZmlneWVsZW0gLSBhIHLDqWdpIGtvbmZmw6FqbDogYCUuMjUwcycgZWd5IMO8cmVzIGvDtm55dnTDoXIgdm9sdCAoZXp0IG1vc3QgIgorInTDtnJsw7ZtKVxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjk3NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBvdGhlciBuZXcgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmVtIHRhbMOhbG9tIGEgbcOhc2lrIGAlLjI1MHMnIMO6aiBmw6FqbHQiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTg2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisib2xkIGZpbGUgJyUuMjUwcycgaXMgdGhlIHNhbWUgYXMgc2V2ZXJhbCBuZXcgZmlsZXMhIChib3RoICclLjI1MHMnIGFuZCAiCisiJyUuMjUwcycpIgorbXNnc3RyICIiCisiZHBrZzogZmlneWVsZW0gLSBgJS4yNTBzJyByw6lnaSBmw6FqbCDDumogZsOhamxva2thbCBlZ3llemlrISAgKGAlLjI1MHMnIMOpcyBgIgorIiUuMjUwcycpIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEwMjUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWN1cmVseSByZW1vdmUgb2xkIGZpbGUgJyUuMjUwcyc6ICVzIgorbXNnc3RyICJkcGtnOiBmaWd5ZWxlbSAtIG5lbSB0dWRvbSAlcyBhIHLDqWdpIGbDoWpsdCBgJSUuMjUwcyc6ICUlc1xuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEyMDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiKE5vdGluZyBkaXNhcHBlYXJhbmNlIG9mICVzLCB3aGljaCBoYXMgYmVlbiBjb21wbGV0ZWx5IHJlcGxhY2VkLilcbiIKK21zZ3N0ciAiIgorCisjLiBUUkFOU0xBVE9SUzogVGhpcyBpcyB0aGUgaGVhZGVyIHRoYXQgYXBwZWFycyBvbiAnZHBrZy1xdWVyeSAtbCcuIFRoZQorIy4gKiBzdHJpbmcgc2hvdWxkIHJlbWFpbiB1bmRlciA4MCBjaGFyYWN0ZXJzLiBUaGUgdXBwZXJjYXNlIGxldHRlcnMgaW4KKyMuICogdGhlIHN0YXRlIHZhbHVlcyBkZW5vdGUgdGhlIGFiYnJldmlhdGVkIGxldHRlciB0aGF0IHdpbGwgYXBwZWFyIG9uCisjLiAqIHRoZSBmaXJzdCB0aHJlZSBjb2x1bW5zLCB3aGljaCBzaG91bGQgaWRlYWxseSBtYXRjaCB0aGUgRW5nbGlzaCBvbmUKKyMuICogKGUuZy4gUmVtb3ZlIOKGkiBzdXBSaW1laXgpLCBzZWUgZHBrZy1xdWVyeSgxKSBmb3IgZnVydGhlciBkZXRhaWxzLiBUaGUKKyMuICogdHJhbnNsYXRlZCBtZXNzYWdlIGNhbiB1c2UgYWRkaXRpb25hbCBsaW5lcyBpZiBuZWVkZWQuCisjOiBzcmMvcXVlcnljbWQuYzoxNDkKKyMsIGZ1enp5Cittc2dpZCAiIgorIkRlc2lyZWQ9VW5rbm93bi9JbnN0YWxsL1JlbW92ZS9QdXJnZS9Ib2xkXG4iCisifCBTdGF0dXM9Tm90L0luc3QvQ29uZi1maWxlcy9VbnBhY2tlZC9oYWxGLWNvbmYvSGFsZi1pbnN0L3RyaWctYVdhaXQvVHJpZy0iCisicGVuZFxuIgorInwvIEVycj89KG5vbmUpL1JlaW5zdC1yZXF1aXJlZCAoU3RhdHVzLEVycjogdXBwZXJjYXNlPWJhZClcbiIKK21zZ3N0ciAiIgorIkvDqXJ0PUlzbWVyZXRsZW4vVGVsZXDDrXQvRWx0w6F2b2zDrXQvVMO2csO2bC9Gb2dcbiIKKyJ8IMOBbGxhcG90PU5lbS9UZWxlcMOtdGV0dC9Lb25maWctZsOhamxvay9LaWJvbnRhdGxhbi9IaWLDoXMta29uZmlnL0bDqWxpZy0iCisidGVsZXDDvGx0XG4iCisifC8gSGliPz0obmVtKS9Gb2cvUmVpbnN0YWxsdC1rw6lydC9YPW1pbmRrw6l0LWdvbmQgKMOBbGxhcG90LEhpYjogIgorIm5hZ3liZXTFsT1yb3NzeilcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MTUzCittc2dpZCAiTmFtZSIKK21zZ3N0ciAiTsOpdiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MTUzCittc2dpZCAiVmVyc2lvbiIKK21zZ3N0ciAiVmVyemnDsyIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MTU0Cittc2dpZCAiRGVzY3JpcHRpb24iCittc2dzdHIgIkxlw61yw6FzIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNDYgc3JjL3F1ZXJ5Y21kLmM6NTExIHNyYy9zZWxlY3QuYzo3NQorIywgYy1mb3JtYXQKK21zZ2lkICJObyBwYWNrYWdlcyBmb3VuZCBtYXRjaGluZyAlcy5cbiIKK21zZ3N0ciAiTmluY3MgaWx5ZW4gY3NvbWFnOiAlcy5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MjczCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnNpb24gYnkgJXMgZnJvbTogJXNcbiIKK21zZ3N0ciAiZWx0w6lyw610dmUgJXMgw6FsdGFsIGlkZTogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6Mjc1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnNpb24gYnkgJXMgdG86ICVzXG4iCittc2dzdHIgImVsdMOpcsOtdHZlICVzIMOhbHRhbCBpZGU6ICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI3OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAibG9jYWwgZGl2ZXJzaW9uIGZyb206ICVzXG4iCittc2dzdHIgImhlbHlpIGVsdMOpcsOtdMOpcyIKKworIzogc3JjL3F1ZXJ5Y21kLmM6Mjc5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJsb2NhbCBkaXZlcnNpb24gdG86ICVzXG4iCittc2dzdHIgImhlbHliZW4gZWx0w6lyw610dmUgaWRlOiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzozMDkKK21zZ2lkICItLXNlYXJjaCBuZWVkcyBhdCBsZWFzdCBvbmUgZmlsZSBuYW1lIHBhdHRlcm4gYXJndW1lbnQiCittc2dzdHIgIkEgLS1zZWFyY2ggbGVnYWzDoWJiIDEgZsOhamxuw6l2IG1pbnTDoXQgdsOhciBhcmd1bWVudHVta8OpbnQiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjM1MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiTm8gcGFja2FnZXMgZm91bmQgbWF0Y2hpbmcgJXMuXG4iCittc2dpZCAiJXM6IG5vIHBhdGggZm91bmQgbWF0Y2hpbmcgcGF0dGVybiAlcy5cbiIKK21zZ3N0ciAiTmluY3MgaWx5ZW4gY3NvbWFnOiAlcy5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MzkzCisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgYCVzJyBpcyBub3QgaW5zdGFsbGVkIGFuZCBubyBpbmZvIGlzIGF2YWlsYWJsZS5cbiIKK21zZ3N0ciAiQXogYWzDoWJiaSBjc29tYWc6IGAlcycgbmluY3MgdGVsZXDDrXR2ZSDDqXMgbmluY3MgaW5mb3Jtw6FjacOzIHLDs2xhLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSBgJXMnIGlzIG5vdCBhdmFpbGFibGUuXG4iCittc2dzdHIgIkEoeikgYCVzJyBjc29tYWcgbmVtIGVsw6lyaGV0xZEuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQxMCBzcmMvcXVlcnljbWQuYzo1ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSBgJXMnIGlzIG5vdCBpbnN0YWxsZWQuXG4iCittc2dzdHIgIkEoeikgYCVzJyBjc29tYWcgbmluY3MgdGVsZXDDrXR2ZS5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDE4CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgYCVzJyBkb2VzIG5vdCBjb250YWluIGFueSBmaWxlcyAoISlcbiIKK21zZ3N0ciAiQSh6KSBgJXMnIGNzb21hZyBuZW0gdGFydGFsbWF6IHNlbW1pbHllbiBmw6FqbHQgKCEpLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9jYWxseSBkaXZlcnRlZCB0bzogJXNcbiIKK21zZ3N0ciAiaGVseWJlbiBlbHTDqXLDrXR2ZSBpZGU6ICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQyOAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGRpdmVydHMgb3RoZXJzIHRvOiAlc1xuIgorbXNnc3RyICJjc29tYWcgZWx0w6lyw610IG3DoXNva2F0IGlkZTogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDMxCisjLCBjLWZvcm1hdAorbXNnaWQgImRpdmVydGVkIGJ5ICVzIHRvOiAlc1xuIgorbXNnc3RyICJlbHTDqXLDrXR2ZSAlcyDDoWx0YWwgaWRlOiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0NTIKK21zZ2lkICIiCisiVXNlIGRwa2cgLS1pbmZvICg9IGRwa2ctZGViIC0taW5mbykgdG8gZXhhbWluZSBhcmNoaXZlIGZpbGVzLFxuIgorImFuZCBkcGtnIC0tY29udGVudHMgKD0gZHBrZy1kZWIgLS1jb250ZW50cykgdG8gbGlzdCB0aGVpciBjb250ZW50cy5cbiIKK21zZ3N0ciAiIgorIkEgZHBrZyAtLWluZm8gKD0gZHBrZy1kZWIgLS1pbmZvKSBracOtcmphIGF6IGFyY2jDrXZ1bSBmw6FqbG9rYXQsXG4iCisiYSBkcGtnIC0tY29udGVudHMgKD0gZHBrZy1kZWIgLS1jb250ZW50cykgYSB0YXJ0YWxtdWthdC5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NTcwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICItLSVzIHRha2VzIGF0IG1vc3QgdHdvIGFyZ3VtZW50cyIKK21zZ3N0ciAiYSAtLWJ1aWxkcyAyIGFyZ3VtZW50dW1vdCBmb2dhZCIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NTc4CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbnRyb2wgZmlsZSBjb250YWlucyAlYyIKK21zZ3N0ciAiIgorCisjOiBzcmMvcXVlcnljbWQuYzo2MDAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiAlcyBwYWNrYWdlIG1hbmFnZW1lbnQgcHJvZ3JhbSBxdWVyeSB0b29sIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkRlYmlhbiBgJXMnIGNzb21hZ2tlemVsxZEgcHJvZ3JhbSAlcyB2ZXJ6acOzLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo2MTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1zfC0tc3RhdHVzIDxwYWNrYWdlPiAuLi4gICAgICAgIERpc3BsYXkgcGFja2FnZSBzdGF0dXMgZGV0YWlscy5cbiIKKyIgIC1wfC0tcHJpbnQtYXZhaWwgPHBhY2thZ2U+IC4uLiAgIERpc3BsYXkgYXZhaWxhYmxlIHZlcnNpb24gZGV0YWlscy5cbiIKKyIgIC1MfC0tbGlzdGZpbGVzIDxwYWNrYWdlPiAuLi4gICAgIExpc3QgZmlsZXMgYG93bmVkJyBieSBwYWNrYWdlKHMpLlxuIgorIiAgLWx8LS1saXN0IFs8cGF0dGVybj4gLi4uXSAgICAgICAgTGlzdCBwYWNrYWdlcyBjb25jaXNlbHkuXG4iCisiICAtV3wtLXNob3cgWzxwYXR0ZXJuPiAuLi5dICAgICAgICBTaG93IGluZm9ybWF0aW9uIG9uIHBhY2thZ2UocykuXG4iCisiICAtU3wtLXNlYXJjaCA8cGF0dGVybj4gLi4uICAgICAgICBGaW5kIHBhY2thZ2Uocykgb3duaW5nIGZpbGUocykuXG4iCisiICAtY3wtLWNvbnRyb2wtcGF0aCA8cGFja2FnZT4gWzxmaWxlPl1cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFByaW50IHBhdGggZm9yIHBhY2thZ2UgY29udHJvbCBmaWxlLlxuIgorIlxuIgorbXNnc3RyICIiCisiUGFyYW5jc29rOlxuIgorIiAgLXN8LS1zdGF0dXMgPGNzb21hZz4gLi4uICAgICAgICAgUsOpc3psZXRlcyBjc29tYWcgw6FsbGFwb3Qga2nDrXLDoXMuXG4iCisiICAtcHwtLXByaW50LWF2YWlsIDxjc29tYWc+IC4uLiAgICBSw6lzemxldGVzIGVsw6lyaGV0xZEgdmVyemnDsyBracOtcsOhcy5cbiIKKyIgIC1MfC0tbGlzdGZpbGVzIDxjc29tYWc+IC4uLiAgICAgIENzb21hZyhvaykgw6FsdGFsIGFkb3R0IGbDoWpsb2suXG4iCisiICAtbHwtLWxpc3QgWzxtaW50YT4gLi4uXSAgICAgICAgIENzb21hZ29rIHTDtm3DtnIga2nDrXLDoXNhLlxuIgorIiAgLVd8LS1zaG93IDxtaW50YT4gLi4uICAgICAgICAgICAgQ3NvbWFnKG9rKSBhZGF0YWluYWsgbXV0YXTDoXNhLlxuIgorIiAgLVN8LS1zZWFyY2ggPG1pbnRhPiAuLi4gICAgICAgICAgQ3NvbWFnKG9rKSBhZHRhIGbDoWpsKG9rKSBrZXJlc8Opc2UuXG4iCisiXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjYzNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorIiAgLWZ8LS1zaG93Zm9ybWF0PTxmb3JtYXQ+ICAgICAgICAgVXNlIGFsdGVybmF0aXZlIGZvcm1hdCBmb3IgLS1zaG93LlxuIgorIlxuIgorbXNnc3RyICIiCisiTGVoZXTFkXPDqWdlazpcbiIKKyIgIC0tYWRtaW5kaXI9PGvDtm55dnTDoXI+ICAgICAgICAgICAgPGvDtm55dnTDoXI+IGhhc3puw6FsYXRhICVzIGhlbHlldHQuXG4iCisiICAtZnwtLXNob3dmb3JtYXQ9PGZvcm1hPiAgICAgICAgICBNw6FzIGZvcm1hIGEgLS1zaG93IG9wY2nDs2hvei5cbiIKKyJcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjQyIGRwa2ctZGViL21haW4uYzoxMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkZvcm1hdCBzeW50YXg6XG4iCisiICBBIGZvcm1hdCBpcyBhIHN0cmluZyB0aGF0IHdpbGwgYmUgb3V0cHV0IGZvciBlYWNoIHBhY2thZ2UuIFRoZSBmb3JtYXRcbiIKKyIgIGNhbiBpbmNsdWRlIHRoZSBzdGFuZGFyZCBlc2NhcGUgc2VxdWVuY2VzIFxcbiAobmV3bGluZSksIFxcciAoY2FycmlhZ2VcbiIKKyIgIHJldHVybikgb3IgXFxcXCAocGxhaW4gYmFja3NsYXNoKS4gUGFja2FnZSBpbmZvcm1hdGlvbiBjYW4gYmUgaW5jbHVkZWRcbiIKKyIgIGJ5IGluc2VydGluZyB2YXJpYWJsZSByZWZlcmVuY2VzIHRvIHBhY2thZ2UgZmllbGRzIHVzaW5nIHRoZSAke3Zhcls7IgorIndpZHRoXX1cbiIKKyIgIHN5bnRheC4gRmllbGRzIHdpbGwgYmUgcmlnaHQtYWxpZ25lZCB1bmxlc3MgdGhlIHdpZHRoIGlzIG5lZ2F0aXZlIGluICIKKyJ3aGljaFxuIgorIiAgY2FzZSBsZWZ0IGFsaWdubWVudCB3aWxsIGJlIHVzZWQuXG4iCittc2dzdHIgIiIKKyJGb3Jtw6F0dW0gbnllbHZ0YW46XG4iCisiICBBIGZvcm3DoXR1bSBlZ3kgZsO8esOpciwgbWVseSBtaW5kZW4gY3NvbWFncmEga2ltZWd5LiBBIGZvcm1hXG4iCisiICBzemFidsOhbnkgZXNjYXBlIHNvcm9rYXQgaXMgdGFydGFsbWF6aGF0LCBww6lsZMOhdWw6IFxcbiAow7pqc29yKSwgXFxyIChrb2NzaVxuIgorIiAgdmlzc3phKSB2YWd5IFxcXFwgKHNpbWEgcGVyKS4gQ3NvbWFnIGFkYXRvayBhIGNzb21hZ1xuIgorIiAgbWV6xZFpcmUgdXRhbMOzIHbDoWx0b3rDs2trYWwgc3rDunJoYXTDs2sgYmUgYSAke3Zhcls7d2lkdGhdfSBzemludGF4aXNcbiIKKyIgIMOhbHRhbC4gQSBtZXrFkWsgam9iYnJhIGlnYXrDrXRvdHRhaywgaGEgYSBzesOpbGVzc8OpZyBuZWdhdMOtdiwgYWtrb3JcbiIKKyIgIGJhbHJhLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo2NTYKK21zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IHF1ZXJ5aW5nIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcmVtb3ZlLmM6ODgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nIHJlcXVlc3QgdG8gcmVtb3ZlICUuMjUwcyB3aGljaCBpc24ndCBpbnN0YWxsZWQuIgorbXNnc3RyICIiCisiZHBrZyAtIGZpZ3llbGVtOiDDoXR1Z3JvbSBhKHopICUuMjUwcyBjc29tYWcgdMO2cmzDqXPDqXQsIGhpc3onIG5pbmNzICIKKyJ0ZWxlcMOtdHZlLlxuIgorCisjOiBzcmMvcmVtb3ZlLmM6OTUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpZ25vcmluZyByZXF1ZXN0IHRvIHJlbW92ZSAlLjI1MHMsIG9ubHkgdGhlIGNvbmZpZ1xuIgorIiBmaWxlcyBvZiB3aGljaCBhcmUgb24gdGhlIHN5c3RlbS4gVXNlIC0tcHVyZ2UgdG8gcmVtb3ZlIHRoZW0gdG9vLiIKK21zZ3N0ciAiIgorImRwa2cgLSBmaWd5ZWxlbTogw6F0dWdyb20gYSh6KSAlLjI1MHMgY3NvbWFnIHTDtnJsw6lzw6l0LCBtZXJ0IGNzYWsgYSBiZcOhbGzDrXTDs1xuIgorIiBmw6FqbGphaSB2YW5uYWsgYSByZW5kc3plcmVuLiBBIC0tcHVyZ2UgcGFyYW5jY3NhbCBsZXZlaGV0ZWQgxZFrZXQuXG4iCisKKyM6IHNyYy9yZW1vdmUuYzoxMDMKK21zZ2lkICJUaGlzIGlzIGFuIGVzc2VudGlhbCBwYWNrYWdlIC0gaXQgc2hvdWxkIG5vdCBiZSByZW1vdmVkLiIKK21zZ3N0ciAiRXogZWd5IHN6w7xrc8OpZ2VzIGNzb21hZyAtIG5lbSB0w7ZybMO2bS4iCisKKyM6IHNyYy9yZW1vdmUuYzoxMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IGRlcGVuZGVuY3kgcHJvYmxlbXMgcHJldmVudCByZW1vdmFsIG9mICVzOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogZsO8Z2fFkXPDqWdlayB2YW5uYWssIMOtZ3kgbmVtIHTDtnJsw7ZtIGV6dDogJXM6XG4iCisiJXMiCisKKyM6IHNyYy9yZW1vdmUuYzoxMzAKK21zZ2lkICJkZXBlbmRlbmN5IHByb2JsZW1zIC0gbm90IHJlbW92aW5nIgorbXNnc3RyICJmw7xnZ8WRc8OpZ2VrIHZhbm5hayAtIG5lbSB0w7ZybMO2bSIKKworIzogc3JjL3JlbW92ZS5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogJXM6IGRlcGVuZGVuY3kgcHJvYmxlbXMsIGJ1dCByZW1vdmluZyBhbnl3YXkgYXMgeW91IHJlcXVlc3RlZDpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiBmw7xnZ8WRc8OpZ2kgZ29uZG9rIHZhbm5haywgZGUga8OpcsOpc2VkcmUgdMO2cmzDtm06XG4iCisiJXMiCisKKyM6IHNyYy9yZW1vdmUuYzoxNDIKK21zZ2lkICIiCisiUGFja2FnZSBpcyBpbiBhIHZlcnkgYmFkIGluY29uc2lzdGVudCBzdGF0ZSAtIHlvdSBzaG91bGRcbiIKKyIgcmVpbnN0YWxsIGl0IGJlZm9yZSBhdHRlbXB0aW5nIGEgcmVtb3ZhbC4iCittc2dzdHIgIiIKKyJBIGNzb21hZyBuYWd5b24gcm9zc3osIGvDtnZldGtlemV0bGVuIMOhbGxhcG90YmFuIHZhblxuIgorIiB0ZWxlcMOtdHNkIMO6anJhIG1pZWzFkXR0IGVsdMOhdm9sw610b2QuIgorCisjOiBzcmMvcmVtb3ZlLmM6MTQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIldvdWxkIHJlbW92ZSBvciBwdXJnZSAlcyAuLi5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcmVtb3ZlLmM6MTU3CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlbW92aW5nICVzIC4uLlxuIgorbXNnc3RyICJFbHTDoXZvbMOtdMOhczogJXMgLi4uXG4iCisKKyM6IHNyYy9yZW1vdmUuYzoyNzUgc3JjL3JlbW92ZS5jOjM2NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIndoaWxlIHJlbW92aW5nICUuMjUwcywgdW5hYmxlIHRvIHJlbW92ZSBkaXJlY3RvcnkgJyUuMjUwcyc6ICVzIC0gZGlyZWN0b3J5ICIKKyJtYXkgYmUgYSBtb3VudCBwb2ludD8iCittc2dzdHIgIiIKKyJkcGtnIC0gZmlneWVsZW06IGEoeikgJS4yNTBzIHTDtnJsw6lzZWtvciBuZW0gdHVkdGFtIHTDtnLDtmxuaSBhKHopIGAlLjI1MHMnICIKKyJrw7ZueXZ0w6FyYXQ6ICVzIC0gIGEga8O2bnl2dMOhciBlZ3kgY3NhdG9sw6FzaSBwb250ID9cbiIKKworIzogc3JjL3JlbW92ZS5jOjI4OQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNlY3VyZWx5IHJlbW92ZSAnJS4yNTBzJyIKK21zZ3N0ciAiJS4yNTBzIGzDqXRyZWhvesOhc2Egc2lrZXJ0ZWxlbiIKKworIzogc3JjL3JlbW92ZS5jOjM2MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAid2hpbGUgcmVtb3ZpbmcgJS4yNTBzLCBkaXJlY3RvcnkgJyUuMjUwcycgbm90IGVtcHR5IHNvIG5vdCByZW1vdmVkLiIKK21zZ3N0ciAiIgorImRwa2cgLSBmaWd5ZWxlbTogYSh6KSAlLjI1MHMgdMO2cmzDqXNla29yIGEoeikgYCUuMjUwcycga8O2bnl2dMOhciBuZW0gw7xyZXMsIMOtZ3kgIgorImF6dCBuZW0gdMO2csO2bHRlbS5cbiIKKworIzogc3JjL3JlbW92ZS5jOjM4MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiY2Fubm90IHJlbW92ZSBgJS4yNTBzJyIKK21zZ2lkICJjYW5ub3QgcmVtb3ZlICclLjI1MHMnIgorbXNnc3RyICJuZW0gdMO2csO2bGhldMWROiBgJS4yNTBzJyIKKworIzogc3JjL3JlbW92ZS5jOjQwOQorIywgYy1mb3JtYXQKK21zZ2lkICJQdXJnaW5nIGNvbmZpZ3VyYXRpb24gZmlsZXMgZm9yICVzIC4uLlxuIgorbXNnc3RyICIlcyBiZcOhbGzDrXTDsyBmw6FqbG9rIHTDtnJsw6lzZSAuLi5cbiIKKworIzogc3JjL3JlbW92ZS5jOjQ1OQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVtb3ZlIG9sZCBjb25maWcgZmlsZSBgJS4yNTBzJyAoPSBgJS4yNTBzJykiCittc2dzdHIgIm5lbSB0dWRvbSB0w7Zyw7ZsbmkgYSByw6lnaSBgJS4yNTBzJyAoPSBgJS4yNTBzJykga29uZmlnIGbDoWpsdCIKKworIzogc3JjL3JlbW92ZS5jOjQ3NAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVhZCBjb25maWcgZmlsZSBkaXIgYCUuMjUwcycgKGZyb20gYCUuMjUwcycpIgorbXNnc3RyICJvbHZhc2hhdGF0bGFuIGAlLjI1MHMnIGtvbmZpZyBmw6FqbCBrw7ZueXZ0w6FyIChpbm5lbjogYCUuMjUwcycpIgorCisjOiBzcmMvcmVtb3ZlLmM6NTEwCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZW1vdmUgb2xkIGJhY2t1cCBjb25maWcgZmlsZSBgJS4yNTBzJyAob2YgYCUuMjUwcycpIgorbXNnc3RyICJgJS4yNTBzJyAoZXrDqTogYCUuMjUwcycpIHLDqWdpIG1lbnRldHQga29uZmlnIGbDoWpsIGVsdMOhdm9sw610aGF0YXRsYW4iCisKKyM6IHNyYy9yZW1vdmUuYzo1NjgKK21zZ2lkICJjYW5ub3QgcmVtb3ZlIG9sZCBmaWxlcyBsaXN0IgorbXNnc3RyICJuZW0gdHVkb20gdMO2csO2bG5pIGEgcsOpZ2kgZsOhamwgbGlzdMOhdCIKKworIzogc3JjL3JlbW92ZS5jOjU3NAorbXNnaWQgImNhbid0IHJlbW92ZSBvbGQgcG9zdHJtIHNjcmlwdCIKK21zZ3N0ciAibmVtIHR1ZG9tIHTDtnLDtmxuaSBhIHLDqWdpIHBvc3RybSBzemtyaXB0ZXQiCisKKyM6IHNyYy9zZWxlY3QuYzoxMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgaW4gcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQiCittc2dzdHIgInbDoXJhdGxhbiBlb2YgYSBjc29tYWduw6l2YmVuIGEgJWQuIHNvcmJhbiIKKworIzogc3JjL3NlbGVjdC5jOjExNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBsaW5lIGluIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICJ2w6FyYXRsYW4gc29ydsOpZyBhIGNzb21hZ27DqXZiZW4gYSAlZC4gc29yYmFuIgorCisjOiBzcmMvc2VsZWN0LmM6MTIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW9mIGFmdGVyIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICJ2w6FyYXRsYW4gZW9mIGEgY3NvbWFnbsOpdiB1dMOhbiBhICVkLiBzb3JiYW4iCisKKyM6IHNyYy9zZWxlY3QuYzoxMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgbGluZSBhZnRlciBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZCIKK21zZ3N0ciAidsOhcmF0bGFuIHNvcnbDqWcgYSBjc29tYWduw6l2IHV0w6FuIGEgJWQuIHNvcmJhbiIKKworIzogc3JjL3NlbGVjdC5jOjEzNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGRhdGEgYWZ0ZXIgcGFja2FnZSBhbmQgc2VsZWN0aW9uIGF0IGxpbmUgJWQiCittc2dzdHIgInbDoXJhdGxhbiBhZGF0b2sgYSBjc29tYWcgw6lzIHbDoWxhc3p0w6FzIHV0w6FuIGEgJWQuIHNvcmJhbiIKKworIzogc3JjL3NlbGVjdC5jOjEzOQorIywgYy1mb3JtYXQKK21zZ2lkICJpbGxlZ2FsIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkOiAlLjI1MHMiCittc2dzdHIgInJvc3N6IGNzb21hZ27DqXYgYSAlZC4gc29yYmFuOiAlLjI1MHMiCisKKyM6IHNyYy9zZWxlY3QuYzoxNDMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biB3YW50ZWQgc3RhdHVzIGF0IGxpbmUgJWQ6ICUuMjUwcyIKK21zZ3N0ciAiaXNtZXJldGxlbiBrw6lydCDDoWxsYXBvdCBhICVkLiBzb3JiYW46ICUuMjUwcyIKKworIzogc3JjL3NlbGVjdC5jOjE0OQorbXNnaWQgInJlYWQgZXJyb3Igb24gc3RhbmRhcmQgaW5wdXQiCittc2dzdHIgIm9sdmFzw6FzaSBoaWJhIGEgc3phYnbDoW55IGJlbWVuZXRlbiIKKworIzogc3JjL3N0YXRjbWQuYzo1MgorbXNnaWQgIlVzZSAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgb3ZlcnJpZGluZyBmaWxlIHN0YXQgaW5mb3JtYXRpb24uIgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0Y21kLmM6NjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsIDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDYtMjAwOSBHdWlsbGVtIEpvdmVyLlxuIgorbXNnc3RyICIiCisiXG4iCisiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMC0yMDAyIFdpY2hlcnQgQWtrZXJtYW4uIgorCisjOiBzcmMvc3RhdGNtZC5jOjgxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC0tYWRkIDxvd25lcj4gPGdyb3VwPiA8bW9kZT4gPGZpbGU+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkIGEgbmV3IGVudHJ5IGludG8gdGhlIGRhdGFiYXNlLlxuIgorIiAgLS1yZW1vdmUgPGZpbGU+ICAgICAgICAgIHJlbW92ZSBmaWxlIGZyb20gdGhlIGRhdGFiYXNlLlxuIgorIiAgLS1saXN0IFs8Z2xvYi1wYXR0ZXJuPl0gIGxpc3QgY3VycmVudCBvdmVycmlkZXMgaW4gdGhlIGRhdGFiYXNlLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0Y21kLmM6ODkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIHNldCB0aGUgZGlyZWN0b3J5IHdpdGggdGhlIHN0YXRvdmVycmlkZSBmaWxlLlxuIgorIiAgLS11cGRhdGUgICAgICAgICAgICAgICAgIGltbWVkaWF0ZWx5IHVwZGF0ZSBmaWxlIHBlcm1pc3Npb25zLlxuIgorIiAgLS1mb3JjZSAgICAgICAgICAgICAgICAgIGZvcmNlIGFuIGFjdGlvbiBldmVuIGlmIGEgc2FuaXR5IGNoZWNrIGZhaWxzLlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHF1aWV0IG9wZXJhdGlvbiwgbWluaW1hbCBvdXRwdXQuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorbXNnc3RyICIiCisiSGFzem7DoWxhdDogJXMgWzxvcGNpw7M+IC4uLl0gPHBhcmFuY3M+XG4iCisiXG4iCisiUGFyYW5jc29rOlxuIgorIiAgLS1hZGQgPHR1bGFqZG9ub3M+IDxjc29wb3J0PiA8bcOzZD4gPGbDoWpsPlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIMO6aiBiZWplZ3l6w6lzIGhvenrDoWFkw6FzYSBheiBhZGF0YsOhemlzaG96LlxuIgorIiAgLS1yZW1vdmUgPGbDoWpsPiAgICAgICAgICBmw6FqbCBlbHTDoXZvbMOtdMOhc2EgYXogYWRhdGLDoXppc2LDs2wuXG4iCisiICAtLWxpc3QgWzxnbG9iLXBhdHRlcm4+XSAgYWRhdGLDoXppc2JhbiBsw6l2xZEgZmVsw7xsYsOtcsOhbMOhc29rIGxpc3TDoWphLlxuIgorIlxuIgorIk9wY2nDs2s6XG4iCisiICAtLWFkbWluZGlyIDxrw7ZueXZ0w6FyPiAgICBrw7ZueXZ0w6FyIGJlw6FsbMOtdMOhc2EgYSBzdGF0b3ZlcnJpZGUgZsOhamxsYWwuXG4iCisiICAtLXVwZGF0ZSAgICAgICAgICAgICAgICAgZsOhamwgam9nb2sgYXpvbm5hbGkgZnJpc3PDrXTDqXNlLlxuIgorIiAgLS1mb3JjZSAgICAgICAgICAgICAgICAgIG3FsXZlbGV0IGvDqW55c3plcsOtdMOpc2UuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgY3NlbmRlcyBtxbF2ZWxldCwgbWluaW3DoWxpcyBraW1lbmV0LlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIGUgc8O6Z8OzIMO8emVuZXQgbXV0YXTDoXNhLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHZlcnppw7MgbXV0YXTDoXNhLlxuIgorCisjOiBzcmMvc3RhdGNtZC5jOjExNgorbXNnaWQgInN0cmlwcGluZyB0cmFpbGluZyAvIgorbXNnc3RyICIvIGxlc3plZMOpc2UiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjA3CisjLCBmdXp6eQorbXNnaWQgImNhbm5vdCBvcGVuIG5ldyBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAibmVtIG1lZ255aXRoYXTDsyDDumogc3RhdG92ZXJyaWRlIGbDoWpsOiAlcyIKKworIzogc3JjL3N0YXRjbWQuYzoyMjIKKyMsIGZ1enp5Cittc2dpZCAiZXJyb3IgcmVtb3Zpbmcgc3RhdG92ZXJyaWRlLW9sZCIKK21zZ3N0ciAiaGliYSBhIHN0YXRvdmVycmlkZS1vbGQgdMO2cmzDqXNla29yOiAlcyIKKworIzogc3JjL3N0YXRjbWQuYzoyMjQKKyMsIGZ1enp5Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgbmV3IHN0YXRvdmVycmlkZS1vbGQiCittc2dzdHIgImhpYmEgYXogw7pqIHN0YXRvdmVycmlkZS1vbGQgbMOpdHJlaG96w6FzYWtvcjogJXMiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjI2CisjLCBmdXp6eQorbXNnaWQgImVycm9yIGluc3RhbGxpbmcgbmV3IHN0YXRvdmVycmlkZSIKK21zZ3N0ciAiaGliYSBheiDDumogc3RhdG92ZXJyaWRlIHRlbGVww610w6lzZWtvcjogJXMiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjQ2Cittc2dpZCAiLS1hZGQgbmVlZHMgZm91ciBhcmd1bWVudHMiCittc2dzdHIgImEgLS1hZGQgNCBhcmd1bWVudHVtb3QgdsOhciIKKworIzogc3JjL3N0YXRjbWQuYzoyNTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJBbiBvdmVycmlkZSBmb3IgJyVzJyBhbHJlYWR5IGV4aXN0cywgYnV0IC0tZm9yY2Ugc3BlY2lmaWVkIHNvIHdpbGwgYmUgIgorImlnbm9yZWQuIgorbXNnc3RyICJkZSAtLWZvcmNlIG1pYXR0IGZpZ3llbG1lbiBrw612w7xsIGhhZ3lvbSIKKworIzogc3JjL3N0YXRjbWQuYzoyNjAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIkFuIG92ZXJyaWRlIGZvciAnJXMnIGFscmVhZHkgZXhpc3RzLCBhYm9ydGluZy4iCittc2dzdHIgIlwiJXNcIiBlZ3kgZmVsw7xsYsOtcsOhbMOhc2EgbcOhciBsw6l0ZXppaywgIgorCisjOiBzcmMvc3RhdGNtZC5jOjI3MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiLS11cGRhdGUgZ2l2ZW4gYnV0ICVzIGRvZXMgbm90IGV4aXN0IgorbXNnc3RyICJmaWd5ZWxlbTogLS11cGRhdGUgbWVnYWR2YSwgZGUgJXMgbmVtIGzDqXRlemlrIgorCisjOiBzcmMvc3RhdGNtZC5jOjI5NgorbXNnaWQgIk5vIG92ZXJyaWRlIHByZXNlbnQuIgorbXNnc3RyICJOaW5jcyBmZWzDvGxiw61yw6Fsw6FzLiIKKworIzogc3JjL3N0YXRjbWQuYzozMDQKKyMsIGZ1enp5Cittc2dpZCAiLS11cGRhdGUgaXMgdXNlbGVzcyBmb3IgLS1yZW1vdmUiCittc2dzdHIgImZpZ3llbGVtOiBhIC0tdXBkYXRlIMOpcnRlbG1ldGxlbiAtLXJlbW92ZSBlc2V0w6luIgorCisjOiBzcmMvc3RhdGRiLmM6NTkKKyMsIGZ1enp5Cittc2dpZCAic3ludGF4IGVycm9yOiBpbnZhbGlkIHVpZCBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiaGliYSBheiDDumogc3RhdG92ZXJyaWRlIHRlbGVww610w6lzZWtvcjogJXMiCisKKyM6IHNyYy9zdGF0ZGIuYzo2NAorIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3I6IHVua25vd24gdXNlciAnJXMnIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0ZGIuYzo4MworIywgZnV6enkKK21zZ2lkICJzeW50YXggZXJyb3I6IGludmFsaWQgZ2lkIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJoaWJhIGF6IMO6aiBzdGF0b3ZlcnJpZGUgdGVsZXDDrXTDqXNla29yOiAlcyIKKworIzogc3JjL3N0YXRkYi5jOjg4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3I6IHVua25vd24gZ3JvdXAgJyVzJyBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAibmVtIHNpa2Vyw7xsdCBtZWdueWl0bmkgYSBzdGF0b3ZlcnJpZGUgZsOhamx0IgorCisjOiBzcmMvc3RhdGRiLmM6MTA0CisjLCBmdXp6eQorbXNnaWQgInN5bnRheCBlcnJvcjogaW52YWxpZCBtb2RlIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJuZW0gc2lrZXLDvGx0IG1lZ255aXRuaSBhIHN0YXRvdmVycmlkZSBmw6FqbHQiCisKKyM6IHNyYy9zdGF0ZGIuYzoxMjcKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAibmVtIHNpa2Vyw7xsdCBtZWdueWl0bmkgYSBzdGF0b3ZlcnJpZGUgZsOhamx0IgorCisjOiBzcmMvc3RhdGRiLmM6MTM0Cittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJuZW0gc2lrZXLDvGx0IGZzdGF0LW9sbmkgYSBzdGF0b3ZlcnJpZGUgZsOhamx0IgorCisjOiBzcmMvc3RhdGRiLmM6MTM3Cittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IHByZXZpb3VzIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJuZW0gc2lrZXLDvGx0IGZzdGF0LW9sbmkgYXogZWzFkXrFkSBzdGF0b3ZlcnJpZGUgZsOhamx0IgorCisjOiBzcmMvc3RhdGRiLmM6MTYyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJzdGF0b3ZlcnJpZGUgZmlsZSBgJS4yNTBzJyIKK21zZ2lkICJyZWFkaW5nIHN0YXRvdmVycmlkZSBmaWxlICclLjI1MHMnIgorbXNnc3RyICJzdGF0b3ZlcnJpZGUgZsOhamw6IGAlLjI1MHMnIgorCisjOiBzcmMvc3RhdGRiLmM6MTY5CisjLCBmdXp6eQorbXNnaWQgInN0YXRvdmVycmlkZSBmaWxlIGlzIG1pc3NpbmcgZmluYWwgbmV3bGluZSIKK21zZ3N0ciAiYSBzdGF0b3ZlcnJpZGUgZsOhamwgw7xyZXMgc29ydCB0YXJ0YWxtYXoiCisKKyM6IHNyYy9zdGF0ZGIuYzoxNzMKK21zZ2lkICJzdGF0b3ZlcnJpZGUgZmlsZSBjb250YWlucyBlbXB0eSBsaW5lIgorbXNnc3RyICJhIHN0YXRvdmVycmlkZSBmw6FqbCDDvHJlcyBzb3J0IHRhcnRhbG1heiIKKworIzogc3JjL3N0YXRkYi5jOjE3OCBzcmMvc3RhdGRiLmM6MTkwIHNyYy9zdGF0ZGIuYzoyMDIKKyMsIGZ1enp5Cittc2dpZCAic3ludGF4IGVycm9yIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJuZW0gc2lrZXLDvGx0IG1lZ255aXRuaSBhIHN0YXRvdmVycmlkZSBmw6FqbHQiCisKKyM6IHNyYy9zdGF0ZGIuYzoxODYgc3JjL3N0YXRkYi5jOjE5OCBzcmMvc3RhdGRiLmM6MjEwCisjLCBmdXp6eQorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGxpbmUgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgInbDoXJhdGxhbiBzb3J2w6lnIGEgY3NvbWFnbsOpdmJlbiBhICVkLiBzb3JiYW4iCisKKyM6IHNyYy9zdGF0ZGIuYzoyMTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIm11bHRpcGxlIHN0YXR1c292ZXJyaWRlcyBwcmVzZW50IGZvciBmaWxlICclLjI1MHMnIgorbXNnc3RyICJzdGF0b3ZlcnJpZGUgZsOhamw6IGAlLjI1MHMnIgorCisjOiBzcmMvdHJpZ2NtZC5jOjQ2CisjLCBmdXp6eQorbXNnaWQgIlR5cGUgZHBrZy10cmlnZ2VyIC0taGVscCBmb3IgaGVscCBhYm91dCB0aGlzIHV0aWxpdHkuIgorbXNnc3RyICJBIGRwa2ctc3BsaXQgLS1oZWxwIHBhcmFuY3Mgc2Vnw610IgorCisjOiBzcmMvdHJpZ2NtZC5jOjUxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gJXMgcGFja2FnZSB0cmlnZ2VyIHV0aWxpdHkgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiRGViaWFuIGAlcycgY3NvbWFna2V6ZWzFkSBwcm9ncmFtIGxla8OpcmRlesWRIGVzemvDtnpcbiIKKworIzogc3JjL3RyaWdjbWQuYzo2NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbnM+IC4uLl0gPHRyaWdnZXItbmFtZT5cbiIKKyIgICAgICAgJXMgWzxvcHRpb25zPiAuLi5dIDxjb21tYW5kPlxuIgorIlxuIgorbXNnc3RyICIiCisiSGFzem7DoWxhdDogJXMgWzxvcGNpw7M+IC4uLl0gPHBhcmFuY3M+XG4iCisiXG4iCisKKyM6IHNyYy90cmlnY21kLmM6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLS1jaGVjay1zdXBwb3J0ZWQgICAgICAgICAgICAgICAgQ2hlY2sgaWYgdGhlIHJ1bm5pbmcgZHBrZyBzdXBwb3J0cyAiCisidHJpZ2dlcnMuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogc3JjL3RyaWdjbWQuYzo4MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorIiAgLS1ieS1wYWNrYWdlPTxwYWNrYWdlPiAgICAgICAgICAgT3ZlcnJpZGUgdHJpZ2dlciBhd2FpdGVyIChub3JtYWxseSBzZXRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnkgZHBrZykuXG4iCisiICAtLW5vLWF3YWl0ICAgICAgICAgICAgICAgICAgICAgICBObyBwYWNrYWdlIG5lZWRzIHRvIGF3YWl0IHRoZSAiCisicHJvY2Vzc2luZy5cbiIKKyIgIC0tbm8tYWN0ICAgICAgICAgICAgICAgICAgICAgICAgIEp1c3QgdGVzdCAtIGRvbid0IGFjdHVhbGx5IGNoYW5nZSAiCisiYW55dGhpbmcuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogc3JjL3RyaWdjbWQuYzoxNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IHRyaWdnZXJzIGRhdGEgZGlyZWN0b3J5IG5vdCB5ZXQgY3JlYXRlZFxuIgorbXNnc3RyICIiCisKKyM6IHNyYy90cmlnY21kLmM6MTU2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB0cmlnZ2VyIHJlY29yZHMgbm90IHlldCBpbiBleGlzdGVuY2VcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIwNQorIywgZnV6enkKK21zZ2lkICJ0YWtlcyBvbmUgYXJndW1lbnQsIHRoZSB0cmlnZ2VyIG5hbWUiCittc2dzdHIgIi0tJXMgY3NhayAxIGFyZ3VtZW50dW1vdCBmb2dhZCAoLmRlYiBmw6FqbG7DqXYpIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIxMAorbXNnaWQgIm11c3QgYmUgY2FsbGVkIGZyb20gYSBtYWludGFpbmVyIHNjcmlwdCAob3Igd2l0aCBhIC0tYnktcGFja2FnZSBvcHRpb24pIgorbXNnc3RyICIiCisKKyM6IHNyYy90cmlnY21kLmM6MjE1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJpbGxlZ2FsIGF3YWl0ZWQgcGFja2FnZSBuYW1lICclLjI1MHMnOiAlLjI1MHMiCittc2dzdHIgImAlcycgbWV6xZEsIMOpcnbDqW55dGVsZW4gYCUuMjU1cycgY3NvbWFnbsOpdjogJXMiCisKKyM6IHNyYy90cmlnY21kLmM6MjIxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHRyaWdnZXIgbmFtZSBgJS4yNTBzJzogJS4yNTBzIgorbXNnc3RyICJgJXMnIG1lesWRLCDDqXJ2w6lueXRlbGVuIGAlLjI1NXMnIGNzb21hZ27DqXY6ICVzIgorCisjOiBzcmMvdHJpZ3Byb2MuYzoyNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBjeWNsZSBmb3VuZCB3aGlsZSBwcm9jZXNzaW5nIHRyaWdnZXJzOlxuIgorIiBjaGFpbiBvZiBwYWNrYWdlcyB3aG9zZSB0cmlnZ2VycyBhcmUgb3IgbWF5IGJlIHJlc3BvbnNpYmxlOlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy90cmlncHJvYy5jOjI1OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiIHBhY2thZ2VzJyBwZW5kaW5nIHRyaWdnZXJzIHdoaWNoIGFyZSBvciBtYXkgYmUgdW5yZXNvbHZhYmxlOlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy90cmlncHJvYy5jOjI4MQorbXNnaWQgInRyaWdnZXJzIGxvb3BpbmcsIGFiYW5kb25lZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvdHJpZ3Byb2MuYzozMTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIlByb2Nlc3NpbmcgdHJpZ2dlcnMgZm9yICVzIC4uLlxuIgorbXNnc3RyICIlcyBiZcOhbGzDrXTDsyBmw6FqbG9rIHTDtnJsw6lzZSAuLi5cbiIKKworIzogc3JjL3VwZGF0ZS5jOjUyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICItLSVzIG5lZWRzIGV4YWN0bHkgb25lIFBhY2thZ2VzIGZpbGUgYXJndW1lbnQiCittc2dpZCAiLS0lcyBuZWVkcyBleGFjdGx5IG9uZSBQYWNrYWdlcy1maWxlIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIHBvbnRvc2FuIDEgUGFja2FnZXMgZsOhamwgYXJndW1lbnR1bW90IHbDoXIiCisKKyM6IHNyYy91cGRhdGUuYzo2MgorbXNnaWQgInVuYWJsZSB0byBhY2Nlc3MgZHBrZyBzdGF0dXMgYXJlYSBmb3IgYnVsayBhdmFpbGFibGUgdXBkYXRlIgorbXNnc3RyICIiCisibmVtIHR1ZG9rIGhvenrDoWbDqXJuaSBhIGRwa2cgw6FsbGFwb3QgdGVyw7xsZXRoZXogYSB0w7ZtZWdlcyBhdmFpbGFibGUgIgorImZyaXNzw610w6lzaGV6IgorCisjOiBzcmMvdXBkYXRlLmM6NjQKK21zZ2lkICJidWxrIGF2YWlsYWJsZSB1cGRhdGUgcmVxdWlyZXMgd3JpdGUgYWNjZXNzIHRvIGRwa2cgc3RhdHVzIGFyZWEiCittc2dzdHIgIiIKKyJhIHTDtm1lZ2VzIGF2YWlsYWJsZSBmcmlzc8OtdMOpcyBhIGRwa2cgw6FsbGFwb3QgdGVyw7xsZXRoZXogw61yw6FzaSBqb2dvdCBpZ8OpbnllbCIKKworIzogc3JjL3VwZGF0ZS5jOjcxCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlcGxhY2luZyBhdmFpbGFibGUgcGFja2FnZXMgaW5mbywgdXNpbmcgJXMuXG4iCittc2dzdHIgIkF6IGVsw6lyaGV0xZEgKGF2YWlsYWJsZSkgY3NvbWFnb2sgbGlzdMOhasOhbmFrIGNzZXLDqWplIGV6emVsOiAlcy5cbiIKKworIzogc3JjL3VwZGF0ZS5jOjc0CisjLCBjLWZvcm1hdAorbXNnaWQgIlVwZGF0aW5nIGF2YWlsYWJsZSBwYWNrYWdlcyBpbmZvLCB1c2luZyAlcy5cbiIKK21zZ3N0ciAiQXogZWzDqXJoZXTFkSAoYXZhaWxhYmxlKSBjc29tYWdvayBsaXN0w6Fqw6FuYWsgZnJpc3PDrXTDqXNlIGV6emVsOiAlcy5cbiIKKworIzogc3JjL3VwZGF0ZS5jOjEwMQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiSW5mb3JtYXRpb24gYWJvdXQgJWQgcGFja2FnZShzKSB3YXMgdXBkYXRlZC5cbiIKK21zZ2lkICJJbmZvcm1hdGlvbiBhYm91dCAlZCBwYWNrYWdlIHdhcyB1cGRhdGVkLlxuIgorbXNnaWRfcGx1cmFsICJJbmZvcm1hdGlvbiBhYm91dCAlZCBwYWNrYWdlcyB3YXMgdXBkYXRlZC5cbiIKK21zZ3N0clswXSAiJWQgY3NvbWFnIGluZm9ybcOhY2nDs2phIGZyaXNzw7xsdC5cbiIKKworIzogc3JjL3VwZGF0ZS5jOjExNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisib2Jzb2xldGUgJy0tJXMnIG9wdGlvbiwgdW5hdmFpbGFibGUgcGFja2FnZXMgYXJlIGF1dG9tYXRpY2FsbHkgY2xlYW5lZCB1cC4iCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBuYW1lICclLjUwcy4uLicgaXMgdG9vIGxvbmciCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoxMjkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGZpbGUgbmFtZSAnJS4yNTBzJyIKK21zZ3N0ciAiZSBmb3Jyw6FzZsOhamwgbmVtIG1lZ255aXRoYXTDszogYCUuMjUwcyciCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTg5CisjLCBmdXp6eQorbXNnaWQgInVuYWJsZSB0byBzdGF0IGNvbnRyb2wgZGlyZWN0b3J5IgorbXNnc3RyICJuZW0gdHVkb20gbWVnbnlpdG5pIGF6IMOhdG1lbmV0aSBlbGxlbsWRcnrFkSBrw7ZueXZ0w6FyYXQiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTkxCisjLCBmdXp6eQorbXNnaWQgImNvbnRyb2wgZGlyZWN0b3J5IGlzIG5vdCBhIGRpcmVjdG9yeSIKK21zZ3N0ciAiYXogaW5mbyBrw7ZueXZ0w6FyIG5lbSBvbHZhc2hhdMOzIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjE5MworIywgYy1mb3JtYXQKK21zZ2lkICJjb250cm9sIGRpcmVjdG9yeSBoYXMgYmFkIHBlcm1pc3Npb25zICUwM2xvIChtdXN0IGJlID49MDc1NSBhbmQgPD0wNzc1KSIKK21zZ3N0ciAiIgorImF6IGVsbGVuxZFyesWRIGvDtm55dnTDoXJuYWsgaGliw6FzICUwM2xvIGpvZ2FpIHZhbm5hayAoPj0wNzU1IMOpcyA8PTc3NSBrZWxsICIKKyJsZWd5ZW4pIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjIwNAorIywgYy1mb3JtYXQKK21zZ2lkICJtYWludGFpbmVyIHNjcmlwdCBgJS41MHMnIGlzIG5vdCBhIHBsYWluIGZpbGUgb3Igc3ltbGluayIKK21zZ3N0ciAiQSBrYXJiYW50YXJ0w7NpIHN6a3JpcHQgKGAlLjUwcycpIG5lbSBzaW1hIGbDoWpsIHZhZ3kgamVsa8OpcGVzIGzDoW5jIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjIwNworIywgYy1mb3JtYXQKK21zZ2lkICIiCisibWFpbnRhaW5lciBzY3JpcHQgYCUuNTBzJyBoYXMgYmFkIHBlcm1pc3Npb25zICUwM2xvIChtdXN0IGJlID49MDU1NSBhbmQgIgorIjw9MDc3NSkiCittc2dzdHIgIiIKKyJgJS41MHMnIGthcmJhbnRhcnTDs2kgc3prcmlwdCBqb2dvayBoaWLDoXNhayAoJTAzbG8pICg+PTA1NTUgw6lzIDw9MDc3NSBrZWxsKSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAibWFpbnRhaW5lciBzY3JpcHQgYCUuNTBzJyBpcyBub3Qgc3RhdHRhYmxlIgorbXNnc3RyICJgJS41MHMnIGthcmJhbnRhcnTDs2kgc3prcmlwdCBuZW0gdGFsw6FsaGF0w7MiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjM3Cittc2dpZCAiZXJyb3Igb3BlbmluZyBjb25mZmlsZXMgZmlsZSIKK21zZ3N0ciAiaGliYSBhIGNvbmZmaWxlcyBmw6FqbCBtZWdueWl0w6FzYWtvciIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNDYKK21zZ2lkICJlbXB0eSBzdHJpbmcgZnJvbSBmZ2V0cyByZWFkaW5nIGNvbmZmaWxlcyIKK21zZ3N0ciAiw7xyZXMgc3rDtnZlZyBheiBmZ2V0cy1ixZFsIGEga29uZmbDoWpsIG9sdmFzw6FzYWtvciIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIG5hbWUgJyUuNTBzLi4uJyBpcyB0b28gbG9uZywgb3IgbWlzc2luZyBmaW5hbCBuZXdsaW5lIgorbXNnc3RyICIiCisiZmlneWVsZW0sIGAlLjUwcy4uLicga29uZmbDoWpsIG7DqXYgdMO6bCBob3NzesO6LCB2YWd5IGhpw6FueXrDsyB2w6lnc8WRIMO6anNvclxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI2NAorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBmaWxlbmFtZSAnJXMnIGNvbnRhaW5zIHRyYWlsaW5nIHdoaXRlIHNwYWNlcyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI2NgorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBgJS4yNTBzJyBkb2VzIG5vdCBhcHBlYXIgaW4gcGFja2FnZSIKK21zZ3N0ciAiw7pneSBmZXN0LCBgJS4yNTBzJyBrb25mZsOhamwgbmluY3MgYSBjc29tYWdiYW4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjY4CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIGAlLjI1MHMnIGlzIG5vdCBzdGF0dGFibGUiCittc2dzdHIgImAlLjI1MHMnIGtvbmZmw6FqbCBuZW0gdGFsw6FsaGF0w7MiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjcwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSAnJXMnIGlzIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgImZpZ3llbGVtLCBgJXMnIGtvbmZmw6FqbCBuZW0gc2ltYSBmw6FqbFxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI3NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgbmFtZSAnJXMnIGlzIGR1cGxpY2F0ZWQiCittc2dzdHIgIiVzIHN6b2xnYSBuw6l2IG1lZ2tldHTFkXrDtnR0IgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI4NworbXNnaWQgImVycm9yIHJlYWRpbmcgY29uZmZpbGVzIGZpbGUiCittc2dzdHIgImhpYmEgYSBjb25mZmlsZXMgZsOhamwgb2x2YXPDoXNha29yIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjMzOQorbXNnaWQgInBhY2thZ2UgbmFtZSBoYXMgY2hhcmFjdGVycyB0aGF0IGFyZW4ndCBsb3dlcmNhc2UgYWxwaGFudW1zIG9yIGAtKy4nIgorbXNnc3RyICIiCisiYSBjc29tYWduw6l2IGtpc2JldMWxcyBhbGZhbnVtZXJpa3VzIMOpcyBgLSsuJy10w7NsIGVsdMOpcsWRIGthcmFrdGVyZWtldCB0YXJ0YWxtYXoiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MzQxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICInJXMnIGNvbnRhaW5zIHVzZXItZGVmaW5lZCBQcmlvcml0eSB2YWx1ZSAnJXMnIgorbXNnc3RyICJmaWd5ZWxlbSwgYCVzJyBmZWxoYXN6bsOhbMOzaSBgJXMnIGVsc8WRYmJzw6lnaSDDqXJ0w6lrZXQgdGFydGFsbWF6XG4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MzQ3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICInJXMnIGNvbnRhaW5zIHVzZXItZGVmaW5lZCBmaWVsZCAnJXMnIgorbXNnc3RyICJmaWd5ZWxlbSwgYCVzJyBmZWxoYXN6bsOhbMOzaSBgJXMnIG1lesWRdCB0YXJ0YWxtYXpcbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzozNTgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nICVkIHdhcm5pbmcgYWJvdXQgdGhlIGNvbnRyb2wgZmlsZShzKVxuIgorbXNnaWRfcGx1cmFsICJpZ25vcmluZyAlZCB3YXJuaW5ncyBhYm91dCB0aGUgY29udHJvbCBmaWxlKHMpXG4iCittc2dzdHJbMF0gImRwa2ctZGViOiAlZCBmaWd5ZWxtZXp0ZXTDqXMgw6F0bMOpcMOpc2UgYXogZWxsZW7FkXJ6xZEgZsOhamwob2spcsOzbFxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQwMyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQyOQorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhIDxkaXJlY3Rvcnk+IGFyZ3VtZW50IgorbXNnc3RyICItLSVzIGVneSA8a8O2bnl2dMOhcj4gYXJndW1lbnR1bW90IHbDoXIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDA5Cittc2dpZCAiLS1idWlsZCB0YWtlcyBhdCBtb3N0IHR3byBhcmd1bWVudHMiCittc2dzdHIgImEgLS1idWlsZHMgMiBhcmd1bWVudHVtb3QgZm9nYWQiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDEzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGVjayBmb3IgZXhpc3RlbmNlIG9mIGFyY2hpdmUgYCUuMjUwcyciCittc2dzdHIgIm5lbSBlbGxlbsWRcml6aGV0xZEgYXogYWzDoWJiaSBhcmNow612dW0gbMOpdGU6IGAlLjI1MHMnIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQzMAorbXNnaWQgInRhcmdldCBpcyBkaXJlY3RvcnkgLSBjYW5ub3Qgc2tpcCBjb250cm9sIGZpbGUgY2hlY2siCittc2dzdHIgImEgY8OpbCBlZ3kga8O2bnl2dMOhciAtIG5lbSBtZWxsxZF6aGV0xZEgYSBjb250cm9sIGbDoWpsIGVsbGVuxZFyesOpc2UiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDMxCittc2dpZCAibm90IGNoZWNraW5nIGNvbnRlbnRzIG9mIGNvbnRyb2wgYXJlYS4iCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImRwa2ctZGViOiBidWlsZGluZyBhbiB1bmtub3duIHBhY2thZ2UgaW4gJyVzJy5cbiIKK21zZ3N0ciAiZHBrZy1kZWI6IGAlcycgY3NvbWFnIMOpcMOtdMOpc2UgaXR0OiBgJXMnLlxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQzOQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnLWRlYjogYnVpbGRpbmcgcGFja2FnZSBgJXMnIGluIGAlcycuXG4iCittc2dzdHIgImRwa2ctZGViOiBgJXMnIGNzb21hZyDDqXDDrXTDqXNlIGl0dDogYCVzJy5cbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0NjcgZHBrZy1kZWIvYnVpbGQuYzo1MjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byBtYWtlIHRtcGZpbGUgKGRhdGEpIgorbXNnaWQgImZhaWxlZCB0byBtYWtlIHRlbXBvcmFyeSBmaWxlICglcykiCittc2dzdHIgInRtcGbDoWpsIGzDqXRyZWhvesOhc2Egc2lrZXJ0ZWxlbiAoYWRhdCkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDY3IGRwa2ctZGViL2J1aWxkLmM6NDcwIGRwa2ctZGViL2J1aWxkLmM6NDc3CisjOiBkcGtnLWRlYi9idWlsZC5jOjQ4NSBkcGtnLWRlYi9idWlsZC5jOjQ5NCBkcGtnLWRlYi9idWlsZC5jOjQ5OQorIywgZnV6enkKKyN8IG1zZ2lkICJjb250cm9sIGFyZWEiCittc2dpZCAiY29udHJvbCBtZW1iZXIiCittc2dzdHIgImVsbGVuxZFyesWRIHRlcsO8bGV0IgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ3MCBkcGtnLWRlYi9idWlsZC5jOjUyNAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIHVubGluayB0bXBmaWxlIChkYXRhKSwgJXMiCittc2dpZCAiZmFpbGVkIHRvIHVubGluayB0ZW1wb3JhcnkgZmlsZSAoJXMpLCAlcyIKK21zZ3N0ciAidG1wZsOhamwgZWxsw6FuY29sw6FzYSBzaWtlcnRlbGVuIChhZGF0KSwgJXMiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDg1IGRwa2ctZGViL2J1aWxkLmM6NTkzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gcmV3aW5kIHRtcGZpbGUgKGRhdGEpIgorbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdGVtcG9yYXJ5IGZpbGUgKCVzKSIKK21zZ3N0ciAiYXogaWRlaWdsZW5lcyBmw6FqbCAoYWRhdG9rKSB2aXNzemHDoWxsw610w6FzYSBtZWdoacO6c3VsdCIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0OTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBzdGF0IHRlbXBvcmFyeSBmaWxlICglcykiCittc2dzdHIgInRtcGbDoWpsIGzDqXRyZWhvesOhc2Egc2lrZXJ0ZWxlbiAoYWRhdCkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDk4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHdyaXRpbmcgYCVzJyIKK21zZ3N0ciAiaGliYSBgJXMnIMOtcsOhc2Frb3IiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTIxIGRwa2ctZGViL2J1aWxkLmM6NTI0IGRwa2ctZGViL2J1aWxkLmM6NTQ2CisjOiBkcGtnLWRlYi9idWlsZC5jOjU3MiBkcGtnLWRlYi9idWlsZC5jOjU4MCBkcGtnLWRlYi9idWlsZC5jOjU5MworIywgZnV6enkKKyN8IG1zZ2lkICJiZXR3ZWVuIG1lbWJlcnMiCittc2dpZCAiZGF0YSBtZW1iZXIiCittc2dzdHIgInRhZ29rIGvDtnp0IgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjU3MSBkcGtnLWRlYi9idWlsZC5jOjU4MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIHdyaXRlIGZpbGVuYW1lIHRvIHRhciBwaXBlIChkYXRhKSIKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgZmlsZW5hbWUgdG8gdGFyIHBpcGUgKCVzKSIKK21zZ3N0ciAiZsOhamxuw6l2IMOtcsOhcyBhIHRhciBjc8WRYmUgKGFkYXRvaykgbWVnaGnDunN1bHQiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTg0Cittc2dpZCAiPGNvbXByZXNzPiBmcm9tIHRhciAtY2YiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjYxIGRwa2ctZGViL2V4dHJhY3QuYzo2MworbXNnaWQgInNoZWxsIGNvbW1hbmQgdG8gbW92ZSBmaWxlcyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6NzAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgZmlsZSBpbiAlcyBpbiAlLjI1NXMiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHJlYWRpbmcgJXMgZnJvbSBmaWxlICUuMjU1cyIKK21zZ3N0ciAiaGliw6FzICVzIG9sdmFzw6FzIGUgZsOhamxiw7NsOiAlLjI1NXMiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxMjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgYXJjaGl2ZSBgJS4yNTVzJyIKK21zZ3N0ciAic2lrZXJ0ZWxlbiBhcmNow612dW0gb2x2YXPDoXM6IGAlLjI1NXMnIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTI3Cittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGFyY2hpdmUiCittc2dzdHIgInNpa2VydGVsZW4gYXJjaMOtdnVtIGZzdGF0IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTMxCisjLCBmdXp6eQorI3wgbXNnaWQgImFyY2hpdmUgaGFzIG5vIGRvdCBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ2lkICJhcmNoaXZlIG1hZ2ljIHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICJuaW5jcyAuIGF6IGFyY2jDrXZ1bSB2ZXJ6acOzc3rDoW3DoWJhbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE0MworIywgZnV6enkKKyN8IG1zZ2lkICJhcmNoaXZlIGhhcyBubyBuZXdsaW5lcyBpbiBoZWFkZXIiCittc2dpZCAiYXJjaGl2ZSBtZW1iZXIgaGVhZGVyIgorbXNnc3RyICJuaW5jcyDDumpzb3IgYXogYXJjaMOtdnVtIGZlamzDqWPDqWJlbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE0OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIHBhcnQgbnVtYmVyIgorbXNnaWQgImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBhcmNoaXZlIGhlYWRlciBtYWdpYyIKK21zZ3N0ciAiQXogYWzDoWJiaSBmw6FqbDogYCUuMjUwcycgc8OpcsO8bHQgLSByb3NzeiByw6lzenN6w6FtIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTU1CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgbm90IGEgZGViaWFuIGJpbmFyeSBhcmNoaXZlICh0cnkgZHBrZy1zcGxpdD8pIgorbXNnc3RyICJgJS4yNTBzJyBuZW0gZWd5IERlYmlhbiBiaW7DoXJpcyBhcmNow612dW0gKGRwa2ctc3BsaXQ/KSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE1OQorIywgZnV6enkKKyN8IG1zZ2lkICJhcmNoaXZlIGhhcyBubyBkb3QgaW4gdmVyc2lvbiBudW1iZXIiCittc2dpZCAiYXJjaGl2ZSBpbmZvcm1hdGlvbiBoZWFkZXIgbWVtYmVyIgorbXNnc3RyICJuaW5jcyAuIGF6IGFyY2jDrXZ1bSB2ZXJ6acOzc3rDoW3DoWJhbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE2MgorbXNnaWQgImFyY2hpdmUgaGFzIG5vIG5ld2xpbmVzIGluIGhlYWRlciIKK21zZ3N0ciAibmluY3Mgw7pqc29yIGF6IGFyY2jDrXZ1bSBmZWpsw6ljw6liZW4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNjUKK21zZ2lkICJhcmNoaXZlIGhhcyBubyBkb3QgaW4gdmVyc2lvbiBudW1iZXIiCittc2dzdHIgIm5pbmNzIC4gYXogYXJjaMOtdnVtIHZlcnppw7NzesOhbcOhYmFuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTY4CisjLCBjLWZvcm1hdAorbXNnaWQgImFyY2hpdmUgdmVyc2lvbiAlLjI1MHMgbm90IHVuZGVyc3Rvb2QsIGdldCBuZXdlciBkcGtnLWRlYiIKK21zZ3N0ciAiw6lydGhldGV0bGVuICUuMjUwcyBmb3Jtw6Fqw7ogYXJjaMOtdnVtLCDDumphYmIgZHBrZy1kZWIga2VsbCIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE3OSBkcGtnLWRlYi9leHRyYWN0LmM6MjA1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJza2lwcGVkIG1lbWJlciBkYXRhIGZyb20gJXMiCittc2dpZCAic2tpcHBlZCBhcmNoaXZlIG1lbWJlciBkYXRhIGZyb20gJXMiCittc2dzdHIgImtpaGFneW90dCB0YWcgYWRhdCBpbm5lbjogJXMiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxOTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgY29udGFpbnMgdW51bmRlcnN0b29kIGRhdGEgbWVtYmVyICUuKnMsIGdpdmluZyB1cCIKK21zZ2lkICJhcmNoaXZlICclLjI1MHMnIGNvbnRhaW5zIG5vdCB1bmRlcnN0b29kIGRhdGEgbWVtYmVyICUuKnMsIGdpdmluZyB1cCIKK21zZ3N0ciAiQSh6KSBgJS4yNTBzJyBmw6FqbCDDqXJ0aGV0ZXRsZW4gJS4qcyBhZGF0dGFnb3QgdGFydGFsbWF6LCBmZWxhZG9tIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTk5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGNvbnRhaW5zIHR3byBjb250cm9sIG1lbWJlcnMsIGdpdmluZyB1cCIKK21zZ2lkICJhcmNoaXZlICclLjI1MHMnIGNvbnRhaW5zIHR3byBjb250cm9sIG1lbWJlcnMsIGdpdmluZyB1cCIKK21zZ3N0ciAiQSh6KSBgJS4yNTBzJyBmw6FqbCAyIGVsbGVuxZFyesWRIHRhZ290IHRhcnRhbG1heiwgZmVsYWRvbSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIxNAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiBuZXcgZGViaWFuIHBhY2thZ2UsIHZlcnNpb24gJXMuXG4iCisjfCAiIHNpemUgJWxkIGJ5dGVzOiBjb250cm9sIGFyY2hpdmU9ICV6aSBieXRlcy5cbiIKK21zZ2lkICIiCisiIG5ldyBkZWJpYW4gcGFja2FnZSwgdmVyc2lvbiAlcy5cbiIKKyIgc2l6ZSAlamQgYnl0ZXM6IGNvbnRyb2wgYXJjaGl2ZT0gJWpkIGJ5dGVzLlxuIgorbXNnc3RyICIiCisiIMO6aiBEZWJpYW4gY3NvbWFnLCAlcyB2ZXJ6acOzLlxuIgorIiBtw6lyZXQ6ICVsZCBiw6FqdDogZWxsZW7FkXJ6xZEgYXJjaMOtdnVtPSAlemkgYsOhanQuXG4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyMzIKK21zZ2lkICJhcmNoaXZlIGNvbnRyb2wgbWVtYmVyIHNpemUiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIzNQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYXJjaGl2ZSBoYXMgbWFsZm9ybWF0dGVkIGNvbnRyb2wgbGVuZ3RoIGAlcyciCittc2dpZCAiYXJjaGl2ZSBoYXMgbWFsZm9ybWF0dGVkIGNvbnRyb2wgbWVtYmVyIHNpemUgJyVzJyIKK21zZ3N0ciAiYXogYXJjaMOtdnVtIGAlcycgZWxsZW7FkXJ6xZEgaG9zc3phIHJvc3N6IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjQyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJza2lwcGVkIG1lbWJlciBkYXRhIGZyb20gJXMiCittc2dpZCAic2tpcHBlZCBhcmNoaXZlIGNvbnRyb2wgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ3N0ciAia2loYWd5b3R0IHRhZyBhZGF0IGlubmVuOiAlcyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI0NgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiBvbGQgZGViaWFuIHBhY2thZ2UsIHZlcnNpb24gJXMuXG4iCisjfCAiIHNpemUgJWxkIGJ5dGVzOiBjb250cm9sIGFyY2hpdmU9ICV6aSwgbWFpbiBhcmNoaXZlPSAlbGQuXG4iCittc2dpZCAiIgorIiBvbGQgZGViaWFuIHBhY2thZ2UsIHZlcnNpb24gJXMuXG4iCisiIHNpemUgJWpkIGJ5dGVzOiBjb250cm9sIGFyY2hpdmU9ICVqZCwgbWFpbiBhcmNoaXZlPSAlamQuXG4iCittc2dzdHIgIiIKKyIgcsOpZ2kgRGViaWFuIGNzb21hZywgJXMgdmVyemnDsy5cbiIKKyIgbcOpcmV0OiAlbGQgYsOhanQ6IGVsbGVuxZFyesWRIGFyY2jDrXZ1bT0gJXppLCBmxZEgYXJjaMOtdnVtOiAlbGQuXG4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2ctZGViOiBmaWxlIGxvb2tzIGxpa2UgaXQgbWlnaHQgYmUgYW4gYXJjaGl2ZSB3aGljaCBoYXMgYmVlblxuIgorImRwa2ctZGViOiAgICBjb3JydXB0ZWQgYnkgYmVpbmcgZG93bmxvYWRlZCBpbiBBU0NJSSBtb2RlXG4iCittc2dzdHIgIiIKKyJkcGtnLWRlYjogw7pneSBmZXN0IGV6IGVneSBvbHlhbiBhcmNow612dW0sIGFtZWx5IGF6XG4iCisiZHBrZy1kZWI6ICAgIEFTQ0lJIG3Ds2TDuiBsZXTDtmx0w6lzdMWRbCBtZWdzw6lyw7xsdFxuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjU5CisjLCBjLWZvcm1hdAorbXNnaWQgImAlLjI1NXMnIGlzIG5vdCBhIGRlYmlhbiBmb3JtYXQgYXJjaGl2ZSIKK21zZ3N0ciAiYCUuMjU1cycgbmVtIERlYmlhbiBhcmNow612dW0iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNjYKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgdG8gcGlwZSBpbiBjb3B5IgorbXNnc3RyICJoaWJhIGEgcGlww6FiYSDDrXLDoXNrb3IgbcOhc29sw6FzbsOhbCIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI2OAorbXNnaWQgImZhaWxlZCB0byBjbG9zZSBwaXBlIGluIGNvcHkiCittc2dzdHIgInBpcGEgYmV6w6Fyw6FzIGhpYmEgYSBtw6Fzb2zDoXNrb3IiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyODQKK21zZ2lkICJkYXRhIgorbXNnc3RyICJhZGF0b2siCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozMDcKK21zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gZGlyZWN0b3J5IgorbXNnc3RyICJoaWJhIGEga8O2bnl2dMOhcnbDoWx0w6Fza29yIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzEwCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBkaXJlY3RvcnkiCittc2dzdHIgInNpa2VydGVsZW4ga8O2bnl2dMOhciBsw6l0cmVob3rDoXMiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozMTIKK21zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gZGlyZWN0b3J5IGFmdGVyIGNyZWF0aW5nIGl0IgorbXNnc3RyICJoaWJhIGEga8O2bnl2dMOhcmJhIGzDqXDDqXNrb3IgbMOpdHJlaG96w6FzYSB1dMOhbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMyMworIywgZnV6enkKK21zZ2lkICI8ZGVjb21wcmVzcz4iCittc2dzdHIgIiVzOiBraWNzb21hZ29sw6FzIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzI1Cittc2dpZCAicGFzdGUiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjM0MiBkcGtnLWRlYi9leHRyYWN0LmM6MzYzIGRwa2ctZGViL2V4dHJhY3QuYzo0MDIKKyM6IGRwa2ctZGViL2luZm8uYzo3NworIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGEgLmRlYiBmaWxlbmFtZSBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyBlZ3kgLmRlYiBmw6FqbG7DqXYgYXJndW1lbnRtb3QgdsOhciIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjM0NyBkcGtnLWRlYi9leHRyYWN0LmM6NDA2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyItLSVzIG5lZWRzIGEgdGFyZ2V0IGRpcmVjdG9yeS5cbiIKKyJQZXJoYXBzIHlvdSBzaG91bGQgYmUgdXNpbmcgZHBrZyAtLWluc3RhbGwgPyIKK21zZ3N0ciAiIgorIi0tJXMgZWd5IGPDqWxrw7ZueXZ0w6FyYXQgaWfDqW55ZWwuXG4iCisiTGVoZXQsIGhvZ3kgYSBkcGtnIC0taW5zdGFsbC10IGtlbGwgaGFzem7DoWxub2QgPyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjM1MCBkcGtnLWRlYi9leHRyYWN0LmM6NDEwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgYXQgbW9zdCB0d28gYXJndW1lbnRzICguZGViIGFuZCBkaXJlY3RvcnkpIgorbXNnc3RyICItLSVzIDIgYXJndW1lbnR1bW90IGZvZ2FkICguZGViIMOpcyBrw7ZueXZ0w6FyKSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjM2NQorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIHRha2VzIG9ubHkgb25lIGFyZ3VtZW50ICguZGViIGZpbGVuYW1lKSIKK21zZ3N0ciAiLS0lcyBjc2FrIDEgYXJndW1lbnR1bW90IGZvZ2FkICguZGViIGbDoWpsbsOpdikiCisKKyM6IGRwa2ctZGViL2luZm8uYzo2MworbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byBgLycgZm9yIGNsZWFudXAiCittc2dzdHIgIm5lbSB0dWRvayBhIC8tcmUgdsOhbHRhbmkgYSB0aXN6dMOtdMOhc2hveiIKKworIzogZHBrZy1kZWIvaW5mby5jOjEwNgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiY2Fubm90IHN0YXQgb2xkIG5hbWUgYCVzJzogJXMiCittc2dpZCAiY29udHJvbCBmaWxlICclcyciCittc2dzdHIgImEgcsOpZ2kgYCVzJyBuw6l2IG5lbSB0YWzDoWxoYXTDszogJXMiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZy1kZWI6IGAlLjI1NXMnIGNvbnRhaW5zIG5vIGNvbnRyb2wgY29tcG9uZW50IGAlLjI1NXMnXG4iCittc2dzdHIgImRwa2ctZGViOiBgJS4yNTVzJyBuZW0gdGFydGFsbWF6IGAlLjI1NXMnIGVsbGVuxZFyesWRIMO2c3N6ZXRldsWRdFxuIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgIm9wZW4gY29tcG9uZW50IGAlLjI1NXMnIChpbiAlLjI1NXMpIGZhaWxlZCBpbiBhbiB1bmV4cGVjdGVkIHdheSIKK21zZ3N0ciAiIgorImAlLjI1NXMnIMO2c3N6ZXRldsWRIG1lZ255aXTDoXNhIChlYmJlbjogJS4yNTVzKSB2w6FyYXRsYW4gbcOzZG9uIG1lZ2hpw7pzdWx0IgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTIxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJPbmUgcmVxdWVzdGVkIGNvbnRyb2wgY29tcG9uZW50IGlzIG1pc3NpbmciCittc2dpZCAiJWQgcmVxdWVzdGVkIGNvbnRyb2wgY29tcG9uZW50IGlzIG1pc3NpbmciCittc2dpZF9wbHVyYWwgIiVkIHJlcXVlc3RlZCBjb250cm9sIGNvbXBvbmVudHMgYXJlIG1pc3NpbmciCittc2dzdHJbMF0gIjEga8OpcnQgZWxsZW7FkXJ6xZEgw7Zzc3pldGV2xZEgaGnDoW55emlrIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTM5IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo0MjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHNjYW4gZGlyZWN0b3J5IGAlLjI1NXMnIgorbXNnc3RyICJgJS4yNTVzJyBrw7ZueXZ0w6FyIG5lbSBuw6l6aGV0xZEgw6F0IgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTQ4CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzdGF0IGAlLjI1NXMnIChpbiBgJS4yNTVzJykiCittc2dzdHIgImAlLjI1NXMnIG5lbSB0YWzDoWxoYXTDsyAoZWJiZW46IGAlLjI1NXMnKSIKKworIzogZHBrZy1kZWIvaW5mby5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgb3BlbiBgJS4yNTVzJyAoaW4gYCUuMjU1cycpIgorbXNnc3RyICJgJS4yNTVzJyBuZW0gbnlpdGhhdMOzIG1lZyAoZWJiZW46IGAlLjI1NXMnKSIKKworIzogZHBrZy1kZWIvaW5mby5jOjE2NyBkcGtnLWRlYi9pbmZvLmM6MTg1IGRwa2ctZGViL2luZm8uYzoxOTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgYCUuMjU1cycgKGluIGAlLjI1NXMnKSIKK21zZ3N0ciAiYCUuMjU1cycgb2x2YXPDoXNpIGhpYmEgKGl0dDogYCUuMjU1cycpIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTcwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIgJTdsZCBieXRlcywgJTVkIGxpbmVzICAgJWMgICUtMjAuMTI3cyAlLjEyN3NcbiIKK21zZ2lkICIgJTdqZCBieXRlcywgJTVkIGxpbmVzICAgJWMgICUtMjAuMTI3cyAlLjEyN3NcbiIKK21zZ3N0ciAiICU3bGQgYsOhanQsICU1ZCBzb3IgICAlYyAgJS0yMC4xMjdzICUuMTI3c1xuIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTc0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgICAgbm90IGEgcGxhaW4gZmlsZSAgICAgICAgICAlLjI1NXNcbiIKK21zZ3N0ciAiICAgICBuZW0gc2ltYSBmw6FqbCAgICAgICAgICAgICAlLjI1NXNcbiIKKworIzogZHBrZy1kZWIvaW5mby5jOjE4NgorbXNnaWQgIihubyBgY29udHJvbCcgZmlsZSBpbiBjb250cm9sIGFyY2hpdmUhKVxuIgorbXNnc3RyICIobmluY3MgYGNvbnRyb2wnIGbDoWpsIGF6IGVsbGVuxZFyesWRIGFyY2jDrXZ1bWJhbiEpXG4iCisKKyM6IGRwa2ctZGViL2luZm8uYzoyMjIKK21zZ2lkICJjb3VsZCBub3Qgb3BlbiB0aGUgYGNvbnRyb2wnIGNvbXBvbmVudCIKK21zZ3N0ciAiYSBgY29udHJvbCcgw7Zzc3pldGV2xZEgbmVtIG55aXRoYXTDsyBtZWciCisKKyM6IGRwa2ctZGViL2luZm8uYzoyNjEKK21zZ2lkICJmYWlsZWQgZHVyaW5nIHJlYWQgb2YgYGNvbnRyb2wnIGNvbXBvbmVudCIKK21zZ3N0ciAiaGliYSBhIGBjb250cm9sJyDDtnNzemV0ZXbFkSBvbHZhc8Ohc2Frb3IiCisKKyM6IGRwa2ctZGViL2luZm8uYzoyNjMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgdGhlICclcycgY29tcG9uZW50IgorbXNnc3RyICJoaWJhIGEgZmluZCBjc8WRIGxlesOhcsOhc2Frb3IiCisKKyM6IGRwa2ctZGViL2luZm8uYzoyNzgKK21zZ2lkICJFcnJvciBpbiBmb3JtYXQiCittc2dzdHIgIkhpYsOhcyBmb3JtYSIKKworIzogZHBrZy1kZWIvaW5mby5jOjMyOAorbXNnaWQgIi0tY29udGVudHMgdGFrZXMgZXhhY3RseSBvbmUgYXJndW1lbnQiCittc2dzdHIgImEgLS1jb250ZW50cyAxIGFyZ3VtZW50dW1vdCB2w6FyIgorCisjOiBkcGtnLWRlYi9tYWluLmM6NTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuIGAlcycgcGFja2FnZSBhcmNoaXZlIGJhY2tlbmQgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiRGViaWFuIGAlcycgY3NvbWFnIGFyY2jDrXZ1bSBow6F0dMOpciAlcyB2w6FsdG96YXQgLlxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6NzMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJDb21tYW5kczpcbiIKKyN8ICIgIC1ifC0tYnVpbGQgPGRpcmVjdG9yeT4gWzxkZWI+XSAgIEJ1aWxkIGFuIGFyY2hpdmUuXG4iCisjfCAiICAtY3wtLWNvbnRlbnRzIDxkZWI+ICAgICAgICAgICAgICBMaXN0IGNvbnRlbnRzLlxuIgorI3wgIiAgLUl8LS1pbmZvIDxkZWI+IFs8Y2ZpbGU+IC4uLl0gICAgU2hvdyBpbmZvIHRvIHN0ZG91dC5cbiIKKyN8ICIgIC1XfC0tc2hvdyA8ZGViPiAgICAgICAgICAgICAgICAgIFNob3cgaW5mb3JtYXRpb24gb24gcGFja2FnZShzKVxuIgorI3wgIiAgLWZ8LS1maWVsZCA8ZGViPiBbPGNmaWVsZD4gLi4uXSAgU2hvdyBmaWVsZChzKSB0byBzdGRvdXQuXG4iCisjfCAiICAtZXwtLWNvbnRyb2wgPGRlYj4gWzxkaXJlY3Rvcnk+XSBFeHRyYWN0IGNvbnRyb2wgaW5mby5cbiIKKyN8ICIgIC14fC0tZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PiAgIEV4dHJhY3QgZmlsZXMuXG4iCisjfCAiICAtWHwtLXZleHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+ICBFeHRyYWN0ICYgbGlzdCBmaWxlcy5cbiIKKyN8ICIgIC0tZnN5cy10YXJmaWxlIDxkZWI+ICAgICAgICAgICAgIE91dHB1dCBmaWxlc3lzdGVtIHRhcmZpbGUuXG4iCisjfCAiXG4iCittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLWJ8LS1idWlsZCA8ZGlyZWN0b3J5PiBbPGRlYj5dICAgQnVpbGQgYW4gYXJjaGl2ZS5cbiIKKyIgIC1jfC0tY29udGVudHMgPGRlYj4gICAgICAgICAgICAgIExpc3QgY29udGVudHMuXG4iCisiICAtSXwtLWluZm8gPGRlYj4gWzxjZmlsZT4gLi4uXSAgICBTaG93IGluZm8gdG8gc3Rkb3V0LlxuIgorIiAgLVd8LS1zaG93IDxkZWI+ICAgICAgICAgICAgICAgICAgU2hvdyBpbmZvcm1hdGlvbiBvbiBwYWNrYWdlKHMpXG4iCisiICAtZnwtLWZpZWxkIDxkZWI+IFs8Y2ZpZWxkPiAuLi5dICBTaG93IGZpZWxkKHMpIHRvIHN0ZG91dC5cbiIKKyIgIC1lfC0tY29udHJvbCA8ZGViPiBbPGRpcmVjdG9yeT5dIEV4dHJhY3QgY29udHJvbCBpbmZvLlxuIgorIiAgLXh8LS1leHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+ICAgRXh0cmFjdCBmaWxlcy5cbiIKKyIgIC1YfC0tdmV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gIEV4dHJhY3QgJiBsaXN0IGZpbGVzLlxuIgorIiAgLVJ8LS1yYXctZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRXh0cmFjdCBjb250cm9sIGluZm8gYW5kIGZpbGVzLlxuIgorIiAgLS1mc3lzLXRhcmZpbGUgPGRlYj4gICAgICAgICAgICAgT3V0cHV0IGZpbGVzeXN0ZW0gdGFyZmlsZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIlBhcmFuY3NvazpcbiIKKyIgIC1ifC0tYnVpbGQgPGvDtm55dnTDoXI+IFs8ZGViPl0gICAgIGFyY2jDrXZ1bSDDqXDDrXTDqXNlLlxuIgorIiAgLWN8LS1jb250ZW50cyA8ZGViPiAgICAgICAgICAgICAgIHRhcnRhbG9tIGZlbHNvcm9sw6FzYS5cbiIKKyIgIC1JfC0taW5mbyA8ZGViPiBbPGNmw6FqbD4uLi5dICAgICAgaW5mb3Jtw6FjacOzayBracOtcsOhc2Egc3phYnbDoW55IGtpbWVuZXRyZS5cbiIKKyIgIC1XfC0tc2hvdyA8ZGViPiAgICAgICAgICAgICAgICAgICBpbmZvcm3DoWNpw7NrIGtpw61yw6FzYSBhIGNzb21hZ29rcsOzbFxuIgorIiAgLWZ8LS1maWVsZCA8ZGViPiBbPGNtZXrFkT4uLi5dICAgICBtZXrFkWsga2nDrXLDoXNhIGEgc3phYnbDoW55IGtpbWVuZXRyZS5cbiIKKyIgIC1lfC0tY29udHJvbCA8ZGViPiBbPGvDtm55dnTDoXI+XSAgIHZlesOpcmzFkWluZm9ybcOhY2nDs2sga2lueWVyw6lzZS5cbiIKKyIgIC14fC0tZXh0cmFjdCA8ZGViPiA8a8O2bnl2dMOhcj4gICAgIGbDoWpsb2sga2lueWVyw6lzZS5cbiIKKyIgIC1YfC0tdmV4dHJhY3QgPGRlYj4gPGvDtm55dnTDoXI+ICAgIGbDoWpsb2sga2lueWVyw6lzZSDDqXMgZmVsc29yb2zDoXNhLlxuIgorIiAgLS1mc3lzLXRhcmZpbGUgPGRlYj4gICAgICAgICAgICAgIGbDoWpscmVuZHN6ZXIgdGFyZsOhamwga2nDrXLDoXNhLlxuIgorIlxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6OTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIjxkZWI+IGlzIHRoZSBmaWxlbmFtZSBvZiBhIERlYmlhbiBmb3JtYXQgYXJjaGl2ZS5cbiIKKyI8Y2ZpbGU+IGlzIHRoZSBuYW1lIG9mIGFuIGFkbWluaXN0cmF0aXZlIGZpbGUgY29tcG9uZW50LlxuIgorIjxjZmllbGQ+IGlzIHRoZSBuYW1lIG9mIGEgZmllbGQgaW4gdGhlIG1haW4gYGNvbnRyb2wnIGZpbGUuXG4iCisiXG4iCittc2dzdHIgIiIKKyJBIDxkZWI+IGVneSBEZWJpYW4gZm9ybcOhdHVtw7ogYXJjaMOtdnVtIGbDoWpsbmV2ZS5cbiIKKyJBIDxjZmlsZT4gZWd5IGFkbWluaXN6dHJhdMOtdiBmw6FqbCDDtnNzemV0ZXbFkSBuZXZlLlxuIgorIkEgPGNmaWVsZD4gRWd5IGEgZsWRIGBjb250cm9sJyBmw6FqbGJhbiBoYXN6bsOhbHQgbWV6xZEgbmV2ZS5cbiIKKyJcbiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjk5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tc2hvd2Zvcm1hdD08Zm9ybWF0PiAgICAgICAgICAgIFVzZSBhbHRlcm5hdGl2ZSBmb3JtYXQgZm9yIC0tc2hvdy5cbiIKKyIgIC12LCAtLXZlcmJvc2UgICAgICAgICAgICAgICAgICAgIEVuYWJsZSB2ZXJib3NlIG91dHB1dC5cbiIKKyIgIC1EICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVuYWJsZSBkZWJ1Z2dpbmcgb3V0cHV0LlxuIgorIiAgLS1vbGQsIC0tbmV3ICAgICAgICAgICAgICAgICAgICAgU2VsZWN0IGFyY2hpdmUgZm9ybWF0LlxuIgorIiAgLS1ub2NoZWNrICAgICAgICAgICAgICAgICAgICAgICAgU3VwcHJlc3MgY29udHJvbCBmaWxlIGNoZWNrIChidWlsZCBiYWRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFja2FnZXMpLlxuIgorIiAgLXojICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU2V0IHRoZSBjb21wcmVzc2lvbiBsZXZlbCB3aGVuIGJ1aWxkaW5nLlxuIgorIiAgLVo8dHlwZT4gICAgICAgICAgICAgICAgICAgICAgICAgU2V0IHRoZSBjb21wcmVzc2lvbiB0eXBlIHVzZWQgd2hlbiAiCisiYnVpbGRpbmcuXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFsbG93ZWQgdHlwZXM6IGd6aXAsIHh6LCBiemlwMiwgbHptYSwgIgorIm5vbmUuXG4iCisiXG4iCittc2dzdHIgIiIKKyJMZWhldMWRc8OpZ2VrOlxuIgorIiAgLS1zaG93Zm9ybWF0PTxmb3Jtw6F0dW0+ICAgICAgICAgIE3DoXMgZm9ybcOhdHVtIC0tc2hvdy1ob3ouXG4iCisiICAtRCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBIaWJha2VyZXPFkSBraW1lbmV0LlxuIgorIiAgLS1vbGQsIC0tbmV3ICAgICAgICAgICAgICAgICAgICAgQXJjaMOtdnVtIGZvcm3DoXR1bS5cbiIKKyIgIC0tbm9jaGVjayAgICAgICAgICAgICAgICAgICAgICAgIE5pbmNzIGVsbGVuxZFyesOpcyAocm9zc3p1bCBrw6lzesOtdGV0dFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjc29tYWdvaykuXG4iCisiICAteiMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUw7Ztw7Zyw610w6lzIHN6aW50IGJlw6FsbMOtdMOhc2EgYSAiCisia8Opc3rDrXTDqXNoZXouXG4iCisiICAtWjx0w61wdXM+ICAgICAgICAgICAgICAgICAgICAgICAgS8Opc3rDrXTDqXNoZXogaGFzem7DoWx0IHTDtm3DtnLDrXTFkSB0w61wdXMuXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExlaGV0xZFzw6lnZWs6IGd6aXAsIGJ6aXAyLCBsem1hLCBuaW5jcy5cbiIKKyJcbiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjEyMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiVXNlIGBkcGtnJyB0byBpbnN0YWxsIGFuZCByZW1vdmUgcGFja2FnZXMgZnJvbSB5b3VyIHN5c3RlbSwgb3JcbiIKKyJgZHNlbGVjdCcgb3IgYGFwdGl0dWRlJyBmb3IgdXNlci1mcmllbmRseSBwYWNrYWdlIG1hbmFnZW1lbnQuICBQYWNrYWdlc1xuIgorInVucGFja2VkIHVzaW5nIGBkcGtnLWRlYiAtLWV4dHJhY3QnIHdpbGwgYmUgaW5jb3JyZWN0bHkgaW5zdGFsbGVkICFcbiIKK21zZ3N0ciAiIgorIlxuIgorIkhhc3puw6FsZCBhIGBkcGtnJy10IGNzb21hZ29rIHRlbGVww610w6lzw6lyZSDDqXMgZWx0w6F2b2zDrXTDoXPDoXJhIGEgcmVuZHN6ZXJyxZFsLCAiCisidmFneVxuIgorImF6IGBhcHRpdHVkZSctb3QgKHZhZ3kgYGRzZWxlY3QnLXQpIGEgZmVsaGFzem7DoWzDsy1iYXLDoXQgY3NvbWFnIGtlemVsw6lzaGV6LlxuIgorIkEgYGRwa2ctZGViIC0tZXh0cmFjdCcgw6FsdGFsIGtpYm9udG90dCBjc29tYWdvayBoZWx5dGVsZW7DvGwgdGVsZXDDvGxuZWsgIVxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTMyCittc2dpZCAiIgorIlR5cGUgZHBrZy1kZWIgLS1oZWxwIGZvciBoZWxwIGFib3V0IG1hbmlwdWxhdGluZyAqLmRlYiBmaWxlcztcbiIKKyJUeXBlIGRwa2cgLS1oZWxwIGZvciBoZWxwIGFib3V0IGluc3RhbGxpbmcgYW5kIGRlaW5zdGFsbGluZyBwYWNrYWdlcy4iCittc2dzdHIgIiIKKyJBIGRwa2ctZGViIC0taGVscCBzw7pnIGEgKi5kZWIgZsOhamxvayBrZXplbMOpc8OpcsWRbDtcbiIKKyJBIGRwa2cgLS1oZWxwIHPDumcgY3NvbWFnb2sgdGVsZXDDrXTDqXPDqXLFkWwvZWx0w6F2b2zDrXTDoXPDoXLDs2wgZHBrZy12YWwuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTQ4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGludGVnZXIgZm9yIC0lYzogJyUuMjUwcyciCittc2dzdHIgIsOpcnbDqW55dGVsZW0gZWfDqXN6IGEgLS0lcyBzesOhbcOhcmE6IGAlLjI1MHMnIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTUxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGNvbXByZXNzaW9uIGxldmVsIGZvciAtJWM6ICVsZCciCittc2dzdHIgIsOpcnbDqW55dGVsZW0gZWfDqXN6IGEgLS0lcyBzesOhbcOhcmE6IGAlLjI1MHMnIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTYxCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gY29tcHJlc3Npb24gdHlwZSBgJXMnISIKK21zZ3N0ciAiaXNtZXJldGxlbiB0w7Ztw7Zyw610w6lzOiBgJXMnISIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6NTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIGRpZ2l0IChjb2RlICVkKSBpbiAlcyIKK21zZ3N0ciAiYCUuMjUwcycgaGliw6FzIC0gcm9zc3ogc3rDoW0gKCVkIGvDs2QpIGViYmVuOiAlcyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gJS4yNTBzIG1pc3NpbmciCittc2dzdHIgIkUgZsOhamw6IGAlLjI1MHMnIGhpYsOhcyAtICUuMjUwcyBoacOhbnl6aWsiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjYzCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIG1pc3NpbmcgbmV3bGluZSBhZnRlciAlLjI1MHMiCittc2dzdHIgIkUgZsOhamw6IGAlLjI1MHMnIGhpYsOhcyAtIGhpw6FueXrDsyDDumogc29yIGV6dXTDoW46ICUuMjUwcyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6ODkgZHBrZy1zcGxpdC9tYWluLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHJlYWRpbmcgJS4yNTBzIgorbXNnc3RyICJvbHZhc8Ohc2kgaGliYTogJS4yNTBzIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIG1hZ2ljIGF0IGVuZCBvZiBmaXJzdCBoZWFkZXIiCittc2dzdHIgImAlLjI1MHMnIGhpYsOhcyAtIHJvc3N6IGLFsXbDtnMgc3rDoW0gYXogMS4gZmVqbMOpYyB2w6lnw6luIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIHBhZGRpbmcgY2hhcmFjdGVyIChjb2RlICVkKSIKK21zZ3N0ciAiRSBmw6FqbDogYCUuMjUwcycgaGliw6FzIC0gcm9zc3ogYmVow7p6w7Mga2FyYWt0ZXIgKCVkIGvDs2QpIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gbnVsbHMgaW4gaW5mbyBzZWN0aW9uIgorbXNnc3RyICJFIGbDoWpsOiBgJS4yNTBzJyBoaWLDoXMgLSBudWxsw6FrIGF6IGluZm8gc3pha2FzemJhbiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTIyCisjLCBmdXp6eQorbXNnaWQgImZvcm1hdCB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAidmVyemnDs3N6w6FtIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBmb3JtYXQgdmVyc2lvbiBgJS4yNTBzJyAtIHlvdSBuZWVkIGEgbmV3ZXIgZHBrZy1zcGxpdCIKK21zZ3N0ciAiYCUuMjUwcycgZsOhamwgZm9ybcOhdHVtIHZlcnppw7NqYSBgJS4yNTBzJyAtIMO6amFiYiBkcGtnLXNwbGl0IGtlbGwiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyNworIywgZnV6enkKK21zZ2lkICJwYWNrYWdlIG5hbWUiCittc2dzdHIgIiAoY3NvbWFnOiAiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyOAorIywgZnV6enkKK21zZ2lkICJwYWNrYWdlIHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICJ2ZXJ6acOzc3rDoW0iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyOQorbXNnaWQgInBhY2thZ2UgZmlsZSBNRDUgY2hlY2tzdW0iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTMyCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBNRDUgY2hlY2tzdW0gYCUuMjUwcyciCittc2dzdHIgIkF6IGFsw6FiYmkgZsOhamw6IGAlLjI1MHMnIHPDqXLDvGx0IC0gcm9zc3ogTUQ1IGVsbGVuxZFyesWRw7Zzc3plZzogYCUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEzNCBkcGtnLXNwbGl0L2luZm8uYzoxMzUKK21zZ2lkICJhcmNoaXZlIHRvdGFsIHNpemUiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTM2IGRwa2ctc3BsaXQvaW5mby5jOjEzNworbXNnaWQgImFyY2hpdmUgcGFydCBvZmZzZXQiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTM5CisjLCBmdXp6eQorbXNnaWQgImFyY2hpdmUgcGFydCBudW1iZXJzIgorbXNnc3RyICJ2ZXJ6acOzc3rDoW0iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE0MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gbm8gc2xhc2ggYmV0d2VlbiBwYXJ0IG51bWJlcnMiCittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gbm8gc2xhc2ggYmV0d2VlbiBhcmNoaXZlIHBhcnQgbnVtYmVycyIKK21zZ3N0ciAiQXogYWzDoWJiaSBmw6FqbDogYCUuMjUwcycgc8OpcsO8bHQgLSBuaW5jcyBwZXIgamVsIGEgcsOpc3pzesOhbW9rIGvDtnrDtnR0IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDUKK21zZ2lkICJudW1iZXIgb2YgYXJjaGl2ZSBwYXJ0cyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBudW1iZXIgb2YgYXJjaGl2ZSBwYXJ0cyIKK21zZ3N0ciAiQXogYWzDoWJiaSBmw6FqbDogYCUuMjUwcycgc8OpcsO8bHQgLSByb3NzeiByw6lzenN6w6FtIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDkKKyMsIGZ1enp5Cittc2dpZCAiYXJjaGl2ZSBwYXJ0cyBudW1iZXIiCittc2dzdHIgInZlcnppw7NzesOhbSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTUxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgcGFydCBudW1iZXIiCittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIGFyY2hpdmUgcGFydCBudW1iZXIiCittc2dzdHIgIkF6IGFsw6FiYmkgZsOhamw6IGAlLjI1MHMnIHPDqXLDvGx0IC0gcm9zc3ogcsOpc3pzesOhbSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTU3CisjLCBmdXp6eQorbXNnaWQgInBhY2thZ2UgYXJjaGl0ZWN0dXJlIgorbXNnc3RyICIgKGNzb21hZzogIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIG1hZ2ljIGF0IGVuZCBvZiBzZWNvbmQgaGVhZGVyIgorbXNnc3RyICJBeiBhbMOhYmJpIGbDoWpsOiBgJS4yNTBzJyBzw6lyw7xsdCAtIHJvc3N6IHZhcsOhenMgYSBtw6Fzb2RpayBmZWpsw6ljIHbDqWfDqW4iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE2OAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBzZWNvbmQgbWVtYmVyIGlzIG5vdCBkYXRhIG1lbWJlciIKK21zZ3N0ciAiQXogYWzDoWJiaSBmw6FqbDogYCUuMjUwcycgc8OpcsO8bHQgLSBhIG3DoXNvZGlrIHRhZyBuZW0gYWRhdHRhZyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTc0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIHdyb25nIG51bWJlciBvZiBwYXJ0cyBmb3IgcXVvdGVkIHNpemVzIgorbXNnc3RyICIiCisiQXogYWzDoWJiaSBmw6FqbDogYCUuMjUwcycgc8OpcsO8bHQgLSBhIHLDqXN6ZWsgc3rDoW1hIHJvc3N6IGF6IGlkw6l6ZXR0IG3DqXJldGVraGV6IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gc2l6ZSBpcyB3cm9uZyBmb3IgcXVvdGVkIHBhcnQgbnVtYmVyIgorbXNnc3RyICJBeiBhbMOhYmJpIGbDoWpsOiBgJS4yNTBzJyBzw6lyw7xsdCAtIGEgbcOpcmV0IHJvc3N6IGF6IGlkw6l6ZXR0IHLDqXN6c3rDoW1ob3oiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE4NAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZnN0YXQgcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJgJS4yNTBzJyByw6lzeiBmw6FqbCBmc3RhdCBzaWtlcnRlbGVuIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gdG9vIHNob3J0IgorbXNnc3RyICJFIGbDoWpsOiBgJS4yNTBzJyBoaWLDoXMgLSB0w7psIHLDtnZpZCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjAyIGRwa2ctc3BsaXQvaW5mby5jOjI0OQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgb3BlbiBhcmNoaXZlIHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmVtIG1lZ255aXRoYXTDsyBhcmNow612dW0gcsOpc3ogZsOhamw6IGAlLjI1MHMnIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBub3QgYW4gYXJjaGl2ZSBwYXJ0IgorbXNnc3RyICJBIGAlLjI1MHMnIGbDoWpsIG5lbSBlZ3kgYXJjaMOtdnVtIHLDqXN6IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyMDkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIlczpcbiIKKyN8ICIgICAgUGFydCBmb3JtYXQgdmVyc2lvbjogICAgICAgICAgICAlc1xuIgorI3wgIiAgICBQYXJ0IG9mIHBhY2thZ2U6ICAgICAgICAgICAgICAgICVzXG4iCisjfCAiICAgICAgICAuLi4gdmVyc2lvbjogICAgICAgICAgICAgICAgJXNcbiIKKyN8ICIgICAgICAgIC4uLiBNRDUgY2hlY2tzdW06ICAgICAgICAgICAlc1xuIgorI3wgIiAgICAgICAgLi4uIGxlbmd0aDogICAgICAgICAgICAgICAgICVsdSBieXRlc1xuIgorI3wgIiAgICAgICAgLi4uIHNwbGl0IGV2ZXJ5OiAgICAgICAgICAgICVsdSBieXRlc1xuIgorI3wgIiAgICBQYXJ0IG51bWJlcjogICAgICAgICAgICAgICAgICAgICVkLyVkXG4iCisjfCAiICAgIFBhcnQgbGVuZ3RoOiAgICAgICAgICAgICAgICAgICAgJXppIGJ5dGVzXG4iCisjfCAiICAgIFBhcnQgb2Zmc2V0OiAgICAgICAgICAgICAgICAgICAgJWx1IGJ5dGVzXG4iCisjfCAiICAgIFBhcnQgZmlsZSBzaXplICh1c2VkIHBvcnRpb24pOiAgJWx1IGJ5dGVzXG4iCisjfCAiXG4iCittc2dpZCAiIgorIiVzOlxuIgorIiAgICBQYXJ0IGZvcm1hdCB2ZXJzaW9uOiAgICAgICAgICAgICVzXG4iCisiICAgIFBhcnQgb2YgcGFja2FnZTogICAgICAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiB2ZXJzaW9uOiAgICAgICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIGFyY2hpdGVjdHVyZTogICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gTUQ1IGNoZWNrc3VtOiAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiBsZW5ndGg6ICAgICAgICAgICAgICAgICAlamQgYnl0ZXNcbiIKKyIgICAgICAgIC4uLiBzcGxpdCBldmVyeTogICAgICAgICAgICAlamQgYnl0ZXNcbiIKKyIgICAgUGFydCBudW1iZXI6ICAgICAgICAgICAgICAgICAgICAlZC8lZFxuIgorIiAgICBQYXJ0IGxlbmd0aDogICAgICAgICAgICAgICAgICAgICVqZCBieXRlc1xuIgorIiAgICBQYXJ0IG9mZnNldDogICAgICAgICAgICAgICAgICAgICVqZCBieXRlc1xuIgorIiAgICBQYXJ0IGZpbGUgc2l6ZSAodXNlZCBwb3J0aW9uKTogICVqZCBieXRlc1xuIgorIlxuIgorbXNnc3RyICIiCisiJXM6XG4iCisiICAgIFLDqXN6Zm9ybcOhdHVtIHZlcnppw7NqYTogICAgICAgICAgJXNcbiIKKyIgICAgRXplbiBjc29tYWcgcsOpc3plOiAgICAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiB2ZXJ6acOzOiAgICAgICAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiBNRDUgZWxsZW7FkXJ6xZHDtnNzemVnOiAgICAlc1xuIgorIiAgICAgICAgLi4uIGhvc3N6OiAgICAgICAgICAgICAgICAgICVsdSBiw6FqdFxuIgorIiAgICAgICAgLi4uIGRhcmFib2zDoXM6ICAgICAgICAgICAgICAlbHUgYsOhanRcbiIKKyIgICAgUsOpc3pzesOhbTogICAgICAgICAgICAgICAgICAgICAgICVkLyVkXG4iCisiICAgIFLDqXN6aG9zc3o6ICAgICAgICAgICAgICAgICAgICAgICV6aSBieXRlc1xuIgorIiAgICBSw6lzemVsdG9sw6FzOiAgICAgICAgICAgICAgICAgICAgJWx1IGJ5dGVzXG4iCisiICAgIFLDqXN6ZsOhamwgbcOpcmV0ZSAoaGFzem7DoWx0IGRhcmFiKTogICVsdSBieXRlc1xuIgorIlxuIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyMjUKKyMsIGZ1enp5CisjfCBtc2dpZCAiPHVua25vd24+IgorbXNnY3R4dCAiYXJjaGl0ZWN0dXJlIgorbXNnaWQgIjx1bmtub3duPiIKK21zZ3N0ciAiPGlzbWVyZXRsZW4+IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyNDQgZHBrZy1zcGxpdC9qb2luLmM6MTA1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICItLSVzIHJlcXVpcmVzIG9uZSBvciBtb3JlIHBhcnQgZmlsZSBhcmd1bWVudHMiCittc2dzdHIgImEgLS1pbmZvIGVneSB2YWd5IHTDtmJiIHLDqXN6ZsOhamwgYXJndW1lbnR1bW90IHbDoXIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjI1NQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlcycgaXMgbm90IGFuIGFyY2hpdmUgcGFydFxuIgorbXNnc3RyICJBIGAlcycgZsOhamwgbmVtIGVneSBhcmNow612dW0gcsOpc3pcbiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHV0dGluZyBwYWNrYWdlICVzIHRvZ2V0aGVyIGZyb20gJWQgcGFydDogIgorbXNnaWRfcGx1cmFsICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0czogIgorbXNnc3RyWzBdICIiCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjUxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIG91dHB1dCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJgJS4yNTBzJyBraW1lbsWRIGbDoWpsIG5lbSBueWl0aGF0w7MgbWVnIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gKHJlKW9wZW4gaW5wdXQgcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJgJS4yNTBzJyByw6lzeiBmw6FqbCBuZW0gbnlpdGhhdMOzIG1lZyAow7pqcmEpIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1OAorIywgZnV6enkKKyN8IG1zZ2lkICJTa2lwcGluZyBkZXNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dpZCAic2tpcHBpbmcgc3BsaXQgcGFja2FnZSBoZWFkZXIiCittc2dzdHIgIktpamVsw7ZsZXRsZW4gJXMgY3NvbWFnIMOhdHVncsOhc2EuXG4iCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjU5CisjLCBmdXp6eQorI3wgbXNnaWQgIm1pc3NpbmcgcGFja2FnZSIKK21zZ2lkICJzcGxpdCBwYWNrYWdlIHBhcnQiCittc2dzdHIgImhpw6FueXrDsyBjc29tYWciCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjY5IGRwa2ctc3BsaXQvc3BsaXQuYzoyMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZG9uZVxuIgorbXNnc3RyICJrw6lzelxuIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo4NQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlcyBgJS4yNTBzJyBhbmQgYCUuMjUwcycgYXJlIG5vdCBwYXJ0cyBvZiB0aGUgc2FtZSBmaWxlIgorbXNnc3RyICJhIGvDqXQgZsOhamw6IGAlLjI1MHMgw6lzIGAlLjI1MHMnIG5lbSB1Z3lhbmFubmFrIHLDqXN6ZWkiCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjkwCisjLCBjLWZvcm1hdAorbXNnaWQgInRoZXJlIGFyZSBzZXZlcmFsIHZlcnNpb25zIG9mIHBhcnQgJWQgLSBhdCBsZWFzdCBgJS4yNTBzJyBhbmQgYCUuMjUwcyciCittc2dzdHIgIiVkLiByw6lzem5layB0w7ZiYiB2w6FsdG96YXRhIHZhbiAtIGxlZ2Fsw6FiYiBgJS4yNTBzJyDDqXMgYCUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjEyOAorIywgYy1mb3JtYXQKK21zZ2lkICJwYXJ0ICVkIGlzIG1pc3NpbmciCittc2dzdHIgImhpw6FueXrDsyAlZC4gcsOpc3oiCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjQ3CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiBgJXMnIHBhY2thZ2Ugc3BsaXQvam9pbiB0b29sOyB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICJEZWJpYW4gYCVzJyBjc29tYWcgdsOhZ8OzL2bFsXrFkSBlc3prw7Z6OyAlcyB2ZXJ6acOzLlxuIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo0OQorIywgYy1mb3JtYXQKK21zZ2lkICJDb3B5cmlnaHQgKEMpIDE5OTQtMTk5NiBJYW4gSmFja3Nvbi5cbiIKK21zZ3N0ciAiQ29weXJpZ2h0IChDKSAxOTk0LTE5OTYgSWFuIEphY2tzb24uXG4iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjY3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1zfC0tc3BsaXQgPGZpbGU+IFs8cHJlZml4Pl0gICAgIFNwbGl0IGFuIGFyY2hpdmUuXG4iCisiICAtanwtLWpvaW4gPHBhcnQ+IDxwYXJ0PiAuLi4gICAgICBKb2luIHBhcnRzIHRvZ2V0aGVyLlxuIgorIiAgLUl8LS1pbmZvIDxwYXJ0PiAuLi4gICAgICAgICAgICAgRGlzcGxheSBpbmZvIGFib3V0IGEgcGFydC5cbiIKKyIgIC1hfC0tYXV0byAtbyA8Y29tcGxldGU+IDxwYXJ0PiAgIEF1dG8tYWNjdW11bGF0ZSBwYXJ0cy5cbiIKKyIgIC1sfC0tbGlzdHEgICAgICAgICAgICAgICAgICAgICAgIExpc3QgdW5tYXRjaGVkIHBpZWNlcy5cbiIKKyIgIC1kfC0tZGlzY2FyZCBbPGZpbGVuYW1lPiAuLi5dICAgIERpc2NhcmQgdW5tYXRjaGVkIHBpZWNlcy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIlBhcmFuY3NvazpcbiIKKyIgIC1zfC0tc3BsaXQgPGbDoWpsPiBbPGVsxZF0YWc+XSAgICAgQXJjaMOtdnVtIHN6w6l0dsOhZ8Ohc2EuXG4iCisiICAtanwtLWpvaW4gPHLDqXN6PiA8csOpc3o+IC4uLiAgICAgIFLDqXN6ZWsgw7Zzc3plcmFrw6FzYS5cbiIKKyIgIC1JfC0taW5mbyA8csOpc3o+IC4uLiAgICAgICAgICAgICBFZ3kgcsOpc3ogYWRhdGFpbmFrIGtpw61yw6FzYS5cbiIKKyIgIC1hfC0tYXV0byAtbyA8dGVsamVzPiA8csOpc3o+ICAgIFLDqXN6ZWsgYXV0b21hdGEgw7Zzc3plaG96w6FzYS5cbiIKKyIgIC1sfC0tbGlzdHEgICAgICAgICAgICAgICAgICAgICAgIE5lbSBpbGzFkSBlbGVtZWsgbGlzdMOhamEuXG4iCisiICAtZHwtLWRpc2NhcmQgWzxmw6FqbG7DqXY+IC4uLl0gICAgTmVtIGlsbMWRIGVsZW1layBlbHZldMOpc2UuXG4iCisiXG4iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjgyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiT3B0aW9uczpcbiIKKyN8ICIgIC0tZGVwb3RkaXIgPGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLyVzLlxuIgorI3wgIiAgLVN8LS1wYXJ0c2l6ZSA8c2l6ZT4gICAgICAgICAgICAgSW4gS2lCLCBmb3IgLXMgKGRlZmF1bHQgaXMgNDUwKS5cbiIKKyN8ICIgIC1vfC0tb3V0cHV0IDxmaWxlPiAgICAgICAgICAgICAgIEZvciAtaiAoZGVmYXVsdCBpcyA8cGFja2FnZT4tPHZlcnNpb24+LiIKKyN8ICJkZWIpLlxuIgorI3wgIiAgLVF8LS1ucHF1aWV0ICAgICAgICAgICAgICAgICAgICAgQmUgcXVpZXQgd2hlbiAtYSBpcyBub3QgYSBwYXJ0LlxuIgorI3wgIiAgLS1tc2RvcyAgICAgICAgICAgICAgICAgICAgICAgICAgR2VuZXJhdGUgOC4zIGZpbGVuYW1lcy5cbiIKKyN8ICJcbiIKKyN8ICJFeGl0IHN0YXR1czogMCA9IE9LOyAgMSA9IC1hIGlzIG5vdCBhIHBhcnQ7ICAyID0gdHJvdWJsZSFcbiIKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tZGVwb3RkaXIgPGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLyVzLlxuIgorIiAgLVN8LS1wYXJ0c2l6ZSA8c2l6ZT4gICAgICAgICAgICAgSW4gS2lCLCBmb3IgLXMgKGRlZmF1bHQgaXMgNDUwKS5cbiIKKyIgIC1vfC0tb3V0cHV0IDxmaWxlPiAgICAgICAgICAgICAgIEZpbGVuYW1lLCBmb3IgLWogKGRlZmF1bHQgaXNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhY2thZ2U+Xzx2ZXJzaW9uPl88YXJjaD4uZGViKS5cbiIKKyIgIC1RfC0tbnBxdWlldCAgICAgICAgICAgICAgICAgICAgIEJlIHF1aWV0IHdoZW4gLWEgaXMgbm90IGEgcGFydC5cbiIKKyIgIC0tbXNkb3MgICAgICAgICAgICAgICAgICAgICAgICAgIEdlbmVyYXRlIDguMyBmaWxlbmFtZXMuXG4iCisiXG4iCittc2dzdHIgIiIKKyJMZWhldMWRc8OpZ2VrOlxuIgorIiAgLS1kZXBvdGRpciA8a8O2bnl2dMOhcj4gKGFsYXDDqXJ0ZWxtZXpldHQ6ICVzLyVzKVxuIgorIiAgLVN8LS1wYXJ0c2l6ZSA8bcOpcmV0PiAgIChLYi1iYW4sIGEgLXMga2FwY3NvbMOzaG96LCBhbGFww6lydGVsbWV6ZXR0OiA0NTApXG4iCisiICAtb3wtLW91dHB1dCA8ZsOhamw+ICAgICAgKGEgLWoga2FwY3NvbMOzaG96LCBhbGFww6lydGVsbWV6ZXR0OlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjc29tYWc+LTx2ZXJ6acOzPi5kZWIpXG4iCisiICAtUXwtLW5wcXVpZXQgICAgICAgICAgICAobmUgc3rDs2xqb24sIGhhIGEgLWEgbmVtIGVneSByw6lzeilcbiIKKyIgIC0tbXNkb3MgICAgICAgICAgICAgICAgICg4LjMgZsOhamxuZXZlayBlbMWRw6FsbMOtdMOhc2EpXG4iCisiXG4iCisiS2lsw6lww6lzaSDDoWxsYXBvdDogMCA9IE9LOyAgMSA9IC1hIG5lbSBlZ3kgcsOpc3o7ICAyID0gQmFqIHZhbiFcbiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6OTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkV4aXQgc3RhdHVzOlxuIgorIiAgMCA9IG9rXG4iCisiICAxID0gd2l0aCAtLWF1dG8sIGZpbGUgaXMgbm90IGEgcGFydFxuIgorIiAgMiA9IHRyb3VibGVcbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMDMKK21zZ2lkICJUeXBlIGRwa2ctc3BsaXQgLS1oZWxwIGZvciBoZWxwLiIKK21zZ3N0ciAiQSBkcGtnLXNwbGl0IC0taGVscCBwYXJhbmNzIHNlZ8OtdCIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6MTE1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGZpbGUgaW4gJS4yNTBzIgorbXNnc3RyICJ2w6FyYXRsYW4gZsOhamwgdsOpZ2UgamVsIGl0dDogJS4yNTBzIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMjYKK21zZ2lkICJwYXJ0IHNpemUgaXMgZmFyIHRvbyBsYXJnZSBvciBpcyBub3QgcG9zaXRpdmUiCittc2dzdHIgImEgcsOpc3ogbcOpcmV0ZSBixZF2ZW4gdMO6bCB2YWd5IG5lbSBwb3ppdMOtdiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6MTMwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJwYXJ0IHNpemUgbXVzdCBiZSBhdCBsZWFzdCAlZCBLaUIgKHRvIGFsbG93IGZvciBoZWFkZXIpIgorbXNnc3RyICJhIHLDqXN6IG3DqXJldGUgbGVnYWzDoWJiICVkayBrZWxsIGxlZ3llbiAoYSBmZWpsw6ljaGV6KSIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjkwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIGRlcG90IGRpcmVjdG9yeSBgJS4yNTBzJyIKK21zZ3N0ciAiYCUuMjUwcycgcmFrdMOhciBrw7ZueXZ0w6FyIG5lbSBvbHZhc2hhdMOzIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTM0Cittc2dpZCAiLS1hdXRvIHJlcXVpcmVzIHRoZSB1c2Ugb2YgdGhlIC0tb3V0cHV0IG9wdGlvbiIKK21zZ3N0ciAiYSAtLWF1dG8gYSAtLW91dHB1dCBvcGNpw7N0IGlnw6lueWxpIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTM2Cittc2dpZCAiLS1hdXRvIHJlcXVpcmVzIGV4YWN0bHkgb25lIHBhcnQgZmlsZSBhcmd1bWVudCIKK21zZ3N0ciAiYSAtLWF1dG8gMSByw6lzeiBmw6FqbCBhcmd1bWVudHVtb3QgdsOhciIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE0MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgImAlLjI1MHMnIHLDqXN6IGbDoWpsIG5lbSBvbHZhc2hhdMOzIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTQzCisjLCBjLWZvcm1hdAorbXNnaWQgIkZpbGUgYCUuMjUwcycgaXMgbm90IHBhcnQgb2YgYSBtdWx0aXBhcnQgYXJjaGl2ZS5cbiIKK21zZ3N0ciAiYCUuMjUwcycgZsOhamwgbmVtIGVneSB0w7ZiYiByw6lzemVzIGFyY2jDrXZ1bSByw6lzemUuXG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlb3BlbiBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgImAlLjI1MHMnIHLDqXN6IGbDoWpsIMO6anJhbnlpdMOhc2Egc2lrZXJ0ZWxlbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE4MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBuZXcgZGVwb3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAic2lrZXJ0ZWxlbiBheiDDumogcmFrdMOhciBmw6FqbCBtZWdueWl0w6FzYTogYCUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxODQKK21zZ2lkICJleHRyYWN0aW5nIHNwbGl0IHBhcnQiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE5MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVuYW1lIG5ldyBkZXBvdCBmaWxlIGAlLjI1MHMnIHRvIGAlLjI1MHMnIgorbXNnc3RyICJuZW0gc2lrZXLDvGx0IMOhdG5ldmV6bmkgZSByYWt0w6FyIGbDoWpsdDogYCUuMjUwcycgZXJyZTogYCUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFydCAlZCBvZiBwYWNrYWdlICVzIGZpbGVkIChzdGlsbCB3YW50ICIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjAwCittc2dpZCAiIGFuZCAiCittc2dzdHIgIiDDqXMiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSB1c2VkLXVwIGRlcG90IGZpbGUgYCUuMjUwcyciCittc2dzdHIgInNpa2VydGVsZW4gZSBmZWxoYXN6bsOhbHQgcmFrdMOhciBmw6FqbCB0w7ZybMOpc2U6IGAlLjI1MHMnIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjM1Cittc2dpZCAiSnVuayBmaWxlcyBsZWZ0IGFyb3VuZCBpbiB0aGUgZGVwb3QgZGlyZWN0b3J5OlxuIgorbXNnc3RyICJTemVtw6l0IGbDoWpsb2sgbWFyYWR0YWsgYSByYWt0w6FyIGvDtm55dnTDoXJiYW46XG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNDAgZHBrZy1zcGxpdC9xdWV1ZS5jOjI2OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBgJS4yNTBzJyIKK21zZ3N0ciAibmVtIGxlbGVtIGAlLjI1MHMnLXQiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNDMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiAlcyAoJWx1IGJ5dGVzKVxuIgorbXNnaWQgIiAlcyAoJWpkIGJ5dGVzKVxuIgorbXNnc3RyICIgJXMgKCVsdSBiw6FqdClcbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI0NQorIywgYy1mb3JtYXQKK21zZ2lkICIgJXMgKG5vdCBhIHBsYWluIGZpbGUpXG4iCittc2dzdHIgIiAlcyAobmVtIHNpbWEgZsOhamwpXG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNTAKK21zZ2lkICJQYWNrYWdlcyBub3QgeWV0IHJlYXNzZW1ibGVkOlxuIgorbXNnc3RyICJNw6lnIG5pbmNzZW5layDDumpyYWd5xbFqdHZlIGEgY3NvbWFnb2s6XG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIFBhY2thZ2UgJXM6IHBhcnQocykgIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFydCBmaWxlIGAlLjI1MHMnIGlzIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgImAlLjI1MHMnIHLDqXN6IGbDoWpsIG5lbSBzaW1hIGbDoWpsIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6Mjc4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIodG90YWwgJWx1IGJ5dGVzKVxuIgorbXNnaWQgIih0b3RhbCAlamQgYnl0ZXMpXG4iCittc2dzdHIgIijDtnNzemVzZW4gJWx1IGLDoWp0KVxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MzA0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkaXNjYXJkIGAlLjI1MHMnIgorbXNnc3RyICJuZW0gdHVkb20gZWxkb2JuaSBgJS4yNTBzJy10IgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MzA1CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlbGV0ZWQgJXMuXG4iCittc2dzdHIgIiVzIHTDtnLDtmx2ZS5cbiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjcwIGRwa2ctc3BsaXQvc3BsaXQuYzo3NiBkcGtnLXNwbGl0L3NwbGl0LmM6ODEKK21zZ2lkICJwYWNrYWdlIGZpZWxkIHZhbHVlIGV4dHJhY3Rpb24iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjEzMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBzb3VyY2UgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiZSBmb3Jyw6FzZsOhamwgbmVtIG1lZ255aXRoYXTDszogYCUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxMzMKK21zZ2lkICJ1bmFibGUgdG8gZnN0YXQgc291cmNlIGZpbGUiCittc2dzdHIgImZvcnLDoXMgZsOhamwgZnN0YXQgc2lrZXJ0ZWxlbiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjEzNQorIywgYy1mb3JtYXQKK21zZ2lkICJzb3VyY2UgZmlsZSBgJS4yNTBzJyBub3QgYSBwbGFpbiBmaWxlIgorbXNnc3RyICJgJS4yNTBzJyBmb3Jyw6FzIGbDoWpsIG5lbSBzaW1hIGbDoWpsIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTUzCisjLCBjLWZvcm1hdAorbXNnaWQgIlNwbGl0dGluZyBwYWNrYWdlICVzIGludG8gJWQgcGFydDogIgorbXNnaWRfcGx1cmFsICJTcGxpdHRpbmcgcGFja2FnZSAlcyBpbnRvICVkIHBhcnRzOiAiCittc2dzdHJbMF0gIiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjE5MworbXNnaWQgIiIKKyJIZWFkZXIgaXMgdG9vIGxvbmcsIG1ha2luZyBwYXJ0IHRvbyBsb25nLiBZb3VyIHBhY2thZ2UgbmFtZSBvciB2ZXJzaW9uXG4iCisibnVtYmVycyBtdXN0IGJlIGV4dHJhb3JkaW5hcmlseSBsb25nLCBvciBzb21ldGhpbmcuIEdpdmluZyB1cC5cbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MjQ5Cittc2dpZCAiLS1zcGxpdCBuZWVkcyBhIHNvdXJjZSBmaWxlbmFtZSBhcmd1bWVudCIKK21zZ3N0ciAiYSAtLXNwbGl0IGVneSBmb3Jyw6FzIGbDoWpsbsOpdiBhcmd1bWVudHVtb3QgdsOhciIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjI1MgorbXNnaWQgIi0tc3BsaXQgdGFrZXMgYXQgbW9zdCBhIHNvdXJjZSBmaWxlbmFtZSBhbmQgZGVzdGluYXRpb24gcHJlZml4IgorbXNnc3RyICJhIC0tc3BsaXQgZWd5IGZvcnLDoXMgZsOhamxuZXZldCDDqXMgY8OpbCBlbMWRdGFnb3QgZm9nYWQiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo4NAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIlxuIgorI3wgIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyN8ICJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLiIKK21zZ2lkICIiCisiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMC0yMDAyIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDA5LTIwMTAgUmFwaGFlbCBIZXJ0em9nLlxuIgorbXNnc3RyICIiCisiXG4iCisiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTAxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC0taW5zdGFsbCA8bGluaz4gPG5hbWU+IDxwYXRoPiA8cHJpb3JpdHk+XG4iCisiICAgIFstLXNsYXZlIDxsaW5rPiA8bmFtZT4gPHBhdGg+XSAuLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBhZGQgYSBncm91cCBvZiBhbHRlcm5hdGl2ZXMgdG8gdGhlIHN5c3RlbS5cbiIKKyIgIC0tcmVtb3ZlIDxuYW1lPiA8cGF0aD4gICByZW1vdmUgPHBhdGg+IGZyb20gdGhlIDxuYW1lPiBncm91cCBhbHRlcm5hdGl2ZS5cbiIKKyIgIC0tcmVtb3ZlLWFsbCA8bmFtZT4gICAgICByZW1vdmUgPG5hbWU+IGdyb3VwIGZyb20gdGhlIGFsdGVybmF0aXZlcyAiCisic3lzdGVtLlxuIgorIiAgLS1hdXRvIDxuYW1lPiAgICAgICAgICAgIHN3aXRjaCB0aGUgbWFzdGVyIGxpbmsgPG5hbWU+IHRvIGF1dG9tYXRpYyBtb2RlLlxuIgorIiAgLS1kaXNwbGF5IDxuYW1lPiAgICAgICAgIGRpc3BsYXkgaW5mb3JtYXRpb24gYWJvdXQgdGhlIDxuYW1lPiBncm91cC5cbiIKKyIgIC0tcXVlcnkgPG5hbWU+ICAgICAgICAgICBtYWNoaW5lIHBhcnNlYWJsZSB2ZXJzaW9uIG9mIC0tZGlzcGxheSA8bmFtZT4uXG4iCisiICAtLWxpc3QgPG5hbWU+ICAgICAgICAgICAgZGlzcGxheSBhbGwgdGFyZ2V0cyBvZiB0aGUgPG5hbWU+IGdyb3VwLlxuIgorIiAgLS1nZXQtc2VsZWN0aW9ucyAgICAgICAgIGxpc3QgbWFzdGVyIGFsdGVybmF0aXZlIG5hbWVzIGFuZCB0aGVpciBzdGF0dXMuXG4iCisiICAtLXNldC1zZWxlY3Rpb25zICAgICAgICAgcmVhZCBhbHRlcm5hdGl2ZSBzdGF0dXMgZnJvbSBzdGFuZGFyZCBpbnB1dC5cbiIKKyIgIC0tY29uZmlnIDxuYW1lPiAgICAgICAgICBzaG93IGFsdGVybmF0aXZlcyBmb3IgdGhlIDxuYW1lPiBncm91cCBhbmQgYXNrICIKKyJ0aGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2VyIHRvIHNlbGVjdCB3aGljaCBvbmUgdG8gdXNlLlxuIgorIiAgLS1zZXQgPG5hbWU+IDxwYXRoPiAgICAgIHNldCA8cGF0aD4gYXMgYWx0ZXJuYXRpdmUgZm9yIDxuYW1lPi5cbiIKKyIgIC0tYWxsICAgICAgICAgICAgICAgICAgICBjYWxsIC0tY29uZmlnIG9uIGFsbCBhbHRlcm5hdGl2ZXMuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiPGxpbms+IGlzIHRoZSBzeW1saW5rIHBvaW50aW5nIHRvICVzLzxuYW1lPi5cbiIKKyIgIChlLmcuIC91c3IvYmluL3BhZ2VyKVxuIgorIjxuYW1lPiBpcyB0aGUgbWFzdGVyIG5hbWUgZm9yIHRoaXMgbGluayBncm91cC5cbiIKKyIgIChlLmcuIHBhZ2VyKVxuIgorIjxwYXRoPiBpcyB0aGUgbG9jYXRpb24gb2Ygb25lIG9mIHRoZSBhbHRlcm5hdGl2ZSB0YXJnZXQgZmlsZXMuXG4iCisiICAoZS5nLiAvdXNyL2Jpbi9sZXNzKVxuIgorIjxwcmlvcml0eT4gaXMgYW4gaW50ZWdlcjsgb3B0aW9ucyB3aXRoIGhpZ2hlciBudW1iZXJzIGhhdmUgaGlnaGVyIHByaW9yaXR5ICIKKyJpblxuIgorIiAgYXV0b21hdGljIG1vZGUuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzMQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFsdGRpciA8ZGlyZWN0b3J5PiAgICAgY2hhbmdlIHRoZSBhbHRlcm5hdGl2ZXMgZGlyZWN0b3J5LlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIGNoYW5nZSB0aGUgYWRtaW5pc3RyYXRpdmUgZGlyZWN0b3J5LlxuIgorIiAgLS1sb2cgPGZpbGU+ICAgICAgICAgICAgIGNoYW5nZSB0aGUgbG9nIGZpbGUuXG4iCisiICAtLWZvcmNlICAgICAgICAgICAgICAgICAgYWxsb3cgcmVwbGFjaW5nIGZpbGVzIHdpdGggYWx0ZXJuYXRpdmUgbGlua3MuXG4iCisiICAtLXNraXAtYXV0byAgICAgICAgICAgICAgc2tpcCBwcm9tcHQgZm9yIGFsdGVybmF0aXZlcyBjb3JyZWN0bHkgIgorImNvbmZpZ3VyZWRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBhdXRvbWF0aWMgbW9kZSAocmVsZXZhbnQgZm9yIC0tY29uZmlnIG9ubHkpXG4iCisiICAtLXZlcmJvc2UgICAgICAgICAgICAgICAgdmVyYm9zZSBvcGVyYXRpb24sIG1vcmUgb3V0cHV0LlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHF1aWV0IG9wZXJhdGlvbiwgbWluaW1hbCBvdXRwdXQuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorbXNnc3RyICIiCisiSGFzem7DoWxhdDogJXMgWzxvcGNpw7M+IC4uLl0gPHBhcmFuY3M+XG4iCisiXG4iCisiUGFyYW5jc29rOlxuIgorIiAgLS1hZGQgPHR1bGFqZG9ub3M+IDxjc29wb3J0PiA8bcOzZD4gPGbDoWpsPlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIMO6aiBiZWplZ3l6w6lzIGhvenrDoWFkw6FzYSBheiBhZGF0YsOhemlzaG96LlxuIgorIiAgLS1yZW1vdmUgPGbDoWpsPiAgICAgICAgICBmw6FqbCBlbHTDoXZvbMOtdMOhc2EgYXogYWRhdGLDoXppc2LDs2wuXG4iCisiICAtLWxpc3QgWzxnbG9iLXBhdHRlcm4+XSAgYWRhdGLDoXppc2JhbiBsw6l2xZEgZmVsw7xsYsOtcsOhbMOhc29rIGxpc3TDoWphLlxuIgorIlxuIgorIk9wY2nDs2s6XG4iCisiICAtLWFkbWluZGlyIDxrw7ZueXZ0w6FyPiAgICBrw7ZueXZ0w6FyIGJlw6FsbMOtdMOhc2EgYSBzdGF0b3ZlcnJpZGUgZsOhamxsYWwuXG4iCisiICAtLXVwZGF0ZSAgICAgICAgICAgICAgICAgZsOhamwgam9nb2sgYXpvbm5hbGkgZnJpc3PDrXTDqXNlLlxuIgorIiAgLS1mb3JjZSAgICAgICAgICAgICAgICAgIG3FsXZlbGV0IGvDqW55c3plcsOtdMOpc2UuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgY3NlbmRlcyBtxbF2ZWxldCwgbWluaW3DoWxpcyBraW1lbmV0LlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIGUgc8O6Z8OzIMO8emVuZXQgbXV0YXTDoXNhLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHZlcnppw7MgbXV0YXTDoXNhLlxuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNjMKKyMsIGZ1enp5CisjfCBtc2dpZCAicGFyc2UgZXJyb3IiCittc2dpZCAiZXJyb3IiCittc2dzdHIgImVsZW16w6lzaSBoaWJhIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTkzCittc2dpZCAid2FybmluZyIKK21zZ3N0ciAiZmlneWVsaiEiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzozNTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInR3byBjb21tYW5kcyBzcGVjaWZpZWQ6ICVzIGFuZCAtLSVzIgorbXNnaWQgInR3byBjb21tYW5kcyBzcGVjaWZpZWQ6IC0tJXMgYW5kIC0tJXMiCittc2dzdHIgIjIgcGFyYW5jcyBtZWdhZHZhOiAlcyDDqXMgLS0lcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjM4NworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiJXM6IGNhbid0IG9wZW4gJXM6ICVzIgorbXNnaWQgImNhbm5vdCBhcHBlbmQgdG8gJyVzJyIKK21zZ3N0ciAiJXM6ICVzIG5lbSBueWl0aGF0w7MgbWVnOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjU1NgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHJlbW92ZSAlczogJXMiCittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSAnJXMnIgorbXNnc3RyICJuZW0gdHVkb20gdMO2csO2bG5pICVzLXQ6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTExMQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgZmlsZSB3aGlsZSB0cnlpbmcgdG8gcmVhZCAlcyIKK21zZ3N0ciAidsOhcmF0bGFuIGbDoWpsIHbDqWdlIGplbCBpdHQ6ICUuMjUwcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMTMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIndoaWxlIHJlYWRpbmcgJXM6ICVzIgorbXNnc3RyICIlcyBvbHZhc8Ohc2Egc2lrZXJ0ZWxlbjogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTE5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJsaW5lIG5vdCB0ZXJtaW5hdGVkIHdoaWxlIHRyeWluZyB0byByZWFkICVzIgorbXNnc3RyICJ2w6FyYXRsYW4gZsOhamwgdsOpZ2UgamVsIGl0dDogJS4yNTBzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTEzNworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXMgY29ycnVwdDogJXMiCittc2dzdHIgImJlbHPFkSBoaWJhOiAlcyByb3NzejogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTUwCisjLCBjLWZvcm1hdAorbXNnaWQgIm5ld2xpbmVzIHByb2hpYml0ZWQgaW4gdXBkYXRlLWFsdGVybmF0aXZlcyBmaWxlcyAoJXMpIgorbXNnc3RyICLDumpzb3JvayB0aWxvc2FrIGF6IHVwZGF0ZS1hbHRlcm5hdGl2ZXMgZsOhamxva2JhbiAoJXMpIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE2MworbXNnaWQgInNsYXZlIG5hbWUiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNzEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImR1cGxpY2F0ZSBzbGF2ZSAlcyIKK21zZ2lkICJkdXBsaWNhdGUgc2xhdmUgbmFtZSAlcyIKK21zZ3N0ciAia2V0dMWRcyAlcyBzem9sZ2EiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTc0CisjLCBmdXp6eQorbXNnaWQgInNsYXZlIGxpbmsiCittc2dzdHIgImtldHTFkXMgJXMgc3pvbGdhIGzDoW5jIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE3OAorIywgYy1mb3JtYXQKK21zZ2lkICJzbGF2ZSBsaW5rIHNhbWUgYXMgbWFpbiBsaW5rICVzIgorbXNnc3RyICJzem9sZ2EgbMOhbmMgw6lzICVzIGbFkSBsw6FuYyBhem9ub3MiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTg1IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDEyCisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBzbGF2ZSBsaW5rICVzIgorbXNnc3RyICJrZXR0xZFzICVzIHN6b2xnYSBsw6FuYyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMDQKK21zZ2lkICJtYXN0ZXIgZmlsZSIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIxMworIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgcGF0aCAlcyIKK21zZ3N0ciAia2V0dMWRcyAlcyDDtnN2w6lueSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMjYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJhbHRlcm5hdGl2ZSAlcyAocGFydCBvZiBsaW5rIGdyb3VwICVzKSBkb2Vzbid0IGV4aXN0LiBSZW1vdmluZyBmcm9tIGxpc3Qgb2YgIgorImFsdGVybmF0aXZlcy4iCittc2dzdHIgIiIKKyIlcyB2w6FsYXN6dMOhc2EgZXJyZSBtdXRhdDogJXMgLSBtZWx5ZXQgbmVtIGxlbHRlbS4gRWx0w6F2b2zDrXRvbSBhIHbDoWxhc3p0w6FzaSAiCisibGlzdMOhYsOzbC4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjI5IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjQwCisjLCBmdXp6eQorbXNnaWQgInByaW9yaXR5IgorbXNnc3RyICIlcyBlbHPFkWJic8OpZyAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMzIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyNDkKK21zZ2lkICJzbGF2ZSBmaWxlIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjQ0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJwcmlvcml0eSBvZiAlczogJXMiCittc2dzdHIgIiVzIGVsc8WRYmJzw6lnICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI5NworbXNnaWQgInN0YXR1cyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI5OQorbXNnaWQgImludmFsaWQgc3RhdHVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzA0CisjLCBmdXp6eQorbXNnaWQgIm1hc3RlciBsaW5rIgorbXNnc3RyICJrZXR0xZFzICVzIHN6b2xnYSBsw6FuYyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzNDgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImRpc2NhcmRpbmcgb2Jzb2xldGUgc2xhdmUgbGluayAlcyAoJXMpLiIKK21zZ3N0ciAiRWxhdnVsdCAlcyBzem9sZ2EgbMOhbmMgw6F0dWdyw6FzYSAoJXMpLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MDIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NjkKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjM4Cittc2dpZCAiYXV0byBtb2RlIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTAyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTc4CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYzOQorbXNnaWQgIm1hbnVhbCBtb2RlIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTA1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIgIGxpbmsgY3VycmVudGx5IHBvaW50cyB0byAlcyIKK21zZ3N0ciAiIGzDoW5jIG1vc3QgaWRlIG11dGF0OiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MDgKKyMsIGZ1enp5Cittc2dpZCAiICBsaW5rIGN1cnJlbnRseSBhYnNlbnQiCittc2dzdHIgIiBsw6FuYyBtb3N0IGhpw6FueXppayIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiVzIC0gcHJpb3JpdHkgJXMiCittc2dpZCAiJXMgLSBwcmlvcml0eSAlZCIKK21zZ3N0ciAiJXMgLSAlcyBlbHPFkWJic8OpZyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MTUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiAgc2xhdmUgJXM6ICVzIgorbXNnc3RyICIgJXMgc3pvbGdhOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MjIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIkN1cnJlbnQgJ2Jlc3QnIHZlcnNpb24gaXMgJyVzJy4iCittc2dzdHIgIkEgamVsZW5sZWdpIGBsZWdqb2JiJyB2ZXJ6acOzOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MjQKK21zZ2lkICJObyB2ZXJzaW9ucyBhdmFpbGFibGUuIgorbXNnc3RyICJOaW5jcyBlbMOpcmhldMWRIHZlcnppw7MuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU1MworIywgYy1mb3JtYXQKK21zZ2lkICJUaGVyZSBpcyAlZCBjaG9pY2UgZm9yIHRoZSBhbHRlcm5hdGl2ZSAlcyAocHJvdmlkaW5nICVzKS4iCittc2dpZF9wbHVyYWwgIlRoZXJlIGFyZSAlZCBjaG9pY2VzIGZvciB0aGUgYWx0ZXJuYXRpdmUgJXMgKHByb3ZpZGluZyAlcykuIgorbXNnc3RyWzBdICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYwCisjLCBmdXp6eQorbXNnaWQgIlNlbGVjdGlvbiIKK21zZ3N0ciAiTGXDrXLDoXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYxCittc2dpZCAiUGF0aCIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2MQorIywgZnV6enkKK21zZ2lkICJQcmlvcml0eSIKK21zZ3N0ciAiJXMgZWxzxZFiYnPDqWcgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYxCittc2dpZCAiU3RhdHVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTgyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJQcmVzcyBlbnRlciB0byBrZWVwIHRoZSBjdXJyZW50IGNob2ljZVsqXSwgb3IgdHlwZSBzZWxlY3Rpb24gbnVtYmVyOiAiCittc2dzdHIgIsOcc3MgZW50ZXJ0IGF6IGFsYXBbKl0taG96LCB2YWd5IGEgdsOhbGFzenTDoXMgc3rDoW3DoXQ6ICIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3MjEKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IHJlcGxhY2luZyAlcyB3aXRoIGEgbGluay4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3NjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2FuJ3QgaW5zdGFsbCB1bmtub3duIGNob2ljZSAlcyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTc4MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisic2tpcCBjcmVhdGlvbiBvZiAlcyBiZWNhdXNlIGFzc29jaWF0ZWQgZmlsZSAlcyAob2YgbGluayBncm91cCAlcykgZG9lc24ndCAiCisiZXhpc3QuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNzkwCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vdCByZW1vdmluZyAlcyBzaW5jZSBpdCdzIG5vdCBhIHN5bWxpbmsuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDQxIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDQ3CisjLCBjLWZvcm1hdAorbXNnaWQgIkNhbGwgJXMuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDUxCisjLCBjLWZvcm1hdAorbXNnaWQgIkFsdGVybmF0aXZlICVzIHVuY2hhbmdlZCBiZWNhdXNlIGNob2ljZSAlcyBpcyBub3QgYXZhaWxhYmxlLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA1NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiU2tpcCB1bmtub3duIGFsdGVybmF0aXZlICVzLiIKK21zZ3N0ciAiTmVtIHRhbMOhbG9tIGEgYCVzJyBraXbDoWxhc3p0w6FzdCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNzcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImxpbmUgdG9vIGxvbmcgb3Igbm90IHRlcm1pbmF0ZWQgd2hpbGUgdHJ5aW5nIHRvIHJlYWQgJXMiCittc2dzdHIgInbDoXJhdGxhbiBmw6FqbCB2w6lnZSBqZWwgaXR0OiAlLjI1MHMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDkwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTAzCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjExMworIywgYy1mb3JtYXQKK21zZ2lkICJTa2lwIGludmFsaWQgbGluZTogJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxMzIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInJlbmFtaW5nICVzIGxpbmsgZnJvbSAlcyB0byAlcy4iCittc2dzdHIgIiVzIGzDoW5jIMOhdG5ldmV6w6lzZSBlcnLFkWw6ICVzIGVycmU6ICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxNzMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInJlbmFtaW5nICVzIHNsYXZlIGxpbmsgZnJvbSAlcyB0byAlcy4iCittc2dzdHIgIiVzIHN6b2xnYSBsw6FuYyBuw6l2IMOhdG5ldmV6w6lzZSBpbm5lbjogJXMgaWRlOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgbmFtZSAoJXMpIG11c3Qgbm90IGNvbnRhaW4gJy8nIGFuZCBzcGFjZXMuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTkzCisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIGxpbmsgaXMgbm90IGFic29sdXRlIGFzIGl0IHNob3VsZCBiZTogJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxOTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgcGF0aCBpcyBub3QgYWJzb2x1dGUgYXMgaXQgc2hvdWxkIGJlOiAlcyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjIyNAorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBtYXN0ZXI6IGl0IGlzIGEgc2xhdmUgb2YgJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyMzIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgbGluayAlcyBpcyBhbHJlYWR5IG1hbmFnZWQgYnkgJXMuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjQxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBwYXRoICVzIGRvZXNuJ3QgZXhpc3QuIgorbXNnc3RyICJmaWd5ZWxlbTogLS11cGRhdGUgbWVnYWR2YSwgZGUgJXMgbmVtIGzDqXRlemlrIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI1NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgc2xhdmUgb2YgJXM6IGl0IGlzIGEgbWFzdGVyIGFsdGVybmF0aXZlLiIKK21zZ3N0ciAiIgorIiVzIHbDoWxhc3p0w6FzYSBlcnJlIG11dGF0OiAlcyAtIG1lbHlldCBuZW0gbGVsdGVtLiBFbHTDoXZvbMOtdG9tIGEgdsOhbGFzenTDoXNpICIKKyJsaXN0w6Fiw7NsLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgc2xhdmUgb2YgJXM6IGl0IGlzIGEgc2xhdmUgb2YgJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgbGluayAlcyBpcyBhbHJlYWR5IG1hbmFnZWQgYnkgJXMgKHNsYXZlIG9mICVzKS4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBhcmd1bWVudCBgJXMnIgorbXNnc3RyICJpc21lcmV0bGVuICVzIGFyZ3VtZW50dW0iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzQzCittc2dpZCAiLS1pbnN0YWxsIG5lZWRzIDxsaW5rPiA8bmFtZT4gPHBhdGg+IDxwcmlvcml0eT4iCittc2dzdHIgImEgLS1pbnN0YWxsIGvDtnZldGVsbcOpbnllaTogPGzDoW5jPiA8bsOpdj4gPMO2c3bDqW55PiA8ZWxzxZFiYnPDqWc+IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM0NiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM5NworbXNnaWQgIjxsaW5rPiBhbmQgPHBhdGg+IGNhbid0IGJlIHRoZSBzYW1lIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzQ5Cittc2dpZCAicHJpb3JpdHkgbXVzdCBiZSBhbiBpbnRlZ2VyIgorbXNnc3RyICJheiBlbHPFkWJic8OpZyBlZ8Opc3ogc3rDoW0ga2VsbCBsZWd5ZW4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzYyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgPG5hbWU+IDxwYXRoPiIKK21zZ3N0ciAiLS0lcyBzesOhbcOhcmEgPG7DqXY+IMOpcyA8w7ZzdsOpbnk+IGtlbGwiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzc2CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgPG5hbWU+IgorbXNnc3RyICItLSVzIHN6w6Ftw6FyYSA8bsOpdj4ga2VsbCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzODgKK21zZ2lkICItLXNsYXZlIG9ubHkgYWxsb3dlZCB3aXRoIC0taW5zdGFsbCIKK21zZ3N0ciAiYSAtLXNsYXZlIGNzYWsgLS1pbnN0YWxsIG1lbGxldHQgZW5nZWTDqWx5ZXpldHQiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzkwCittc2dpZCAiLS1zbGF2ZSBuZWVkcyA8bGluaz4gPG5hbWU+IDxwYXRoPiIKK21zZ3N0ciAiYSAtLXNsYXZlIGvDtnZldGVsbcOpbnllaTogPGzDoW5jPiA8bsOpdj4gPMO2c3bDqW55PiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzOTkKKyMsIGMtZm9ybWF0Cittc2dpZCAibmFtZSAlcyBpcyBib3RoIHByaW1hcnkgYW5kIHNsYXZlIgorbXNnc3RyICIlcyBlbHPFkWRsZWdlcyDDqXMgc3pvbGdhIG7DqXYgaXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDAyCisjLCBjLWZvcm1hdAorbXNnaWQgImxpbmsgJXMgaXMgYm90aCBwcmltYXJ5IGFuZCBzbGF2ZSIKK21zZ3N0ciAiJXMgZWxzxZFkbGVnZXMgw6lzIHN6b2xnYSBsw6FuYyBpcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MjIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSA8ZmlsZT4gYXJndW1lbnQiCittc2dzdHIgIi0tJXMgMSBhcmd1bWVudHVtb3QgdsOhciIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gYCVzJyIKK21zZ3N0ciAiaXNtZXJldGxlbiBgJXMnIGxlaGV0xZFzw6lnIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQ1MworIywgZnV6enkKK21zZ2lkICIiCisibmVlZCAtLWRpc3BsYXksIC0tcXVlcnksIC0tbGlzdCwgLS1nZXQtc2VsZWN0aW9ucywgLS1jb25maWcsIC0tc2V0LCAtLXNldC0iCisic2VsZWN0aW9ucywgLS1pbnN0YWxsLCAtLXJlbW92ZSwgLS1hbGwsIC0tcmVtb3ZlLWFsbCBvciAtLWF1dG8iCittc2dzdHIgIiIKKyJpZ8OpbnllIC0tZGlzcGxheSwgLS1jb25maWcsIC0tc2V0LCAtLWluc3RhbGwsIC0tcmVtb3ZlLCAtLWFsbCwgLS1yZW1vdmUtYWxsICIKKyJ2YWd5IC0tYXV0byIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0OTAKKyMsIGZ1enp5CisjfCBtc2dpZCAicmVhZCBlcnJvciBvbiBzdGFuZGFyZCBpbnB1dCIKK21zZ2lkICI8c3RhbmRhcmQgaW5wdXQ+IgorbXNnc3RyICJvbHZhc8Ohc2kgaGliYSBhIHN6YWJ2w6FueSBiZW1lbmV0ZW4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTAwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTAzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJubyBhbHRlcm5hdGl2ZXMgZm9yICVzLiIKK21zZ3N0ciAiTmluY3Mga2l2w6FsYXN6dMOhcyBlcnJlOiAlcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTMwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzLyVzIGlzIGRhbmdsaW5nLCBpdCB3aWxsIGJlIHVwZGF0ZWQgd2l0aCBiZXN0IGNob2ljZS4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MzQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlcy8lcyBoYXMgYmVlbiBjaGFuZ2VkIChtYW51YWxseSBvciBieSBhIHNjcmlwdCkuIFN3aXRjaGluZyB0byBtYW51YWwgIgorInVwZGF0ZXMgb25seS4iCittc2dzdHIgIiIKKyIlcy10IG3Ds2Rvc8OtdG90dGFkIChrw6l6emVsIHZhZ3kgZWd5IHBhcmFuY3Nmw6FqbGxhbCkuXG4iCisiQ3Nhay1rw6l6aS1mcmlzc8OtdMOpc3JlIHbDoWx0b2suIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU0MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAic2V0dGluZyB1cCBhdXRvbWF0aWMgc2VsZWN0aW9uIG9mICVzLiIKK21zZ3N0ciAiJXMgYXV0b21hdGEga2lqZWzDtmzDqXPDqW5layBiZcOhbGzDrXTDoXNhLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlICVzIGZvciAlcyBub3QgcmVnaXN0ZXJlZCwgbm90IHNldHRpbmcuIgorbXNnc3RyICIlcyBraXbDoWxhc3p0w6FzYSBlaGhlejogJXMgbmluY3MgYmVqZWd5ZXp2ZSwgbmVtIHTDtnJsw7ZtIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU1NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU2MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiVGhlcmUgaXMgbm8gcHJvZ3JhbSB3aGljaCBwcm92aWRlcyAlcy4iCittc2dzdHIgIiIKKyJOaW5jcyBwcm9ncmFtLCBtZWx5IGV6dCBhZGphOiAlcy5cbiIKKyJOaW5jcyBiZcOhbGzDrXRhbmTDsy5cbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NjUgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NzUKK21zZ2lkICJOb3RoaW5nIHRvIGNvbmZpZ3VyZS4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiVGhlcmUgaXMgb25seSBvbmUgYWx0ZXJuYXRpdmUgaW4gbGluayBncm91cCAlczogJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1ODQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlICVzIGZvciAlcyBub3QgcmVnaXN0ZXJlZCwgbm90IHJlbW92aW5nLiIKK21zZ3N0ciAiJXMga2l2w6FsYXN6dMOhc2EgZWhoZXo6ICVzIG5pbmNzIGJlamVneWV6dmUsIG5lbSB0w7ZybMO2bSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1OTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInJlbW92aW5nIG1hbnVhbGx5IHNlbGVjdGVkIGFsdGVybmF0aXZlIC0gc3dpdGNoaW5nICVzIHRvIGF1dG8gbW9kZSIKK21zZ3N0ciAiS8Opemkga2l2w6FsYXN6dMOhcyB0w7ZybMOpc2UgLSBhdXRvbWF0YSBtw7NkcmEgdsOhbHRvayIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MTcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImF1dG9tYXRpYyB1cGRhdGVzIG9mICVzLyVzIGFyZSBkaXNhYmxlZCwgbGVhdmluZyBpdCBhbG9uZS4iCittc2dzdHIgIiVzIGF1dG9tYXRhIGZyaXNzw610w6lzZWkga2lrYXBjc29sdmEsIG1hZ8OhcmEgaGFneW9tLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInRvIHJldHVybiB0byBhdXRvbWF0aWMgdXBkYXRlcyB1c2UgJyVzIC0tYXV0byAlcycuIgorbXNnc3RyICIiCisiQXogYXV0b21hdGlrdXMgZnJpc3PDrXTDqXNla2hleiB2YWzDsyB2aXNzemF0w6lyw6lzaGV6IGhhc3puw6FsZCBheiBgdXBkYXRlLSIKKyJhbHRlcm5hdGl2ZXMgLS1hdXRvICVzJy10IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYzNgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidXNpbmcgJXMgdG8gcHJvdmlkZSAlcyAoJXMpIGluICVzLiIKK21zZ3N0ciAiJyVzJyBoYXN6bsOhbGF0YSAnJXMnIHN6w6Ftw6FyYS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjQ0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmb3JjaW5nIHJlaW5zdGFsbGF0aW9uIG9mIGFsdGVybmF0aXZlICVzIGJlY2F1c2UgbGluayBncm91cCAlcyBpcyBicm9rZW4uIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjUxCisjLCBjLWZvcm1hdAorbXNnaWQgImN1cnJlbnQgYWx0ZXJuYXRpdmUgJXMgaXMgdW5rbm93biwgc3dpdGNoaW5nIHRvICVzIGZvciBsaW5rIGdyb3VwICVzLiIKK21zZ3N0ciAiIgorCisjLCBmdXp6eQorI34gbXNnaWQgIml0IGlzIGEgc2xhdmUgb2YgJXMiCisjfiBtc2dzdHIgIiAlcyBzem9sZ2E6ICVzIgorCisjLCBmdXp6eQorI358IG1zZ2lkICJjYW5ub3Qgc3RhdCBvbGQgbmFtZSBgJXMnOiAlcyIKKyN+IG1zZ2lkICJjYW5ub3Qgc3RhdCAlczogJXMiCisjfiBtc2dzdHIgImEgcsOpZ2kgYCVzJyBuw6l2IG5lbSB0YWzDoWxoYXTDszogJXMiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgIiVzOiBjb3B5aW5nICVzIHRvICVzIGZhaWxlZCwgZ2l2aW5nIHVwOiAlcyIKKyN+IG1zZ2lkICJzY2FuIG9mICVzIGZhaWxlZDogJXMiCisjfiBtc2dzdHIgIiVzOiAlcyBtw6Fzb2zDoXNhIGlkZTogJXMgc2lrZXJ0ZWxlbiwgZmVsYWRvbTogJXMiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgImZhaWxlZCB0byBleGVjICVzIgorI34gbXNnaWQgImZhaWxlZCB0byBleGVjdXRlICVzOiAlcyIKKyN+IG1zZ3N0ciAic2lrZXJ0ZWxlbiBmdXR0YXTDoXM6ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIG1ha2UgJXMgYSBzeW1saW5rIHRvICVzOiAlcyIKKyN+IG1zZ3N0ciAiJXMgamzDoW5jIGvDqXN6w610w6lzZSBpZGU6ICVzIG5lbSBzaWtlcsO8bHQ6ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgJXMgYXMgJXM6ICVzIgorI34gbXNnc3RyICJuZW0gc2lrZXLDvGx0IHRlbGVww610ZW5pICVzLXQgbWludCAlczogJXMiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAid2hpbGUgd3JpdGluZyAlczogJXMiCisjfiBtc2dzdHIgIiVzOiBoaWJhICVzIMOtcsOhc2Frb3I6ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHJlYWQgJXM6ICVzIgorI34gbXNnc3RyICIlcyBvbHZhc8Ohc2Egc2lrZXJ0ZWxlbjogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gY2xvc2UgJXM6ICVzIgorI34gbXNnc3RyICJuZW0gdHVkb20gbGV6w6FybmkgJXMtdDogJXMiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgInVuYWJsZSB0byB3cml0ZSAlczogJXMiCisjfiBtc2dpZCAiY2Fubm90IHdyaXRlICVzOiAlcyIKKyN+IG1zZ3N0ciAiJXMgw61yw6FzYSBzaWtlcnRlbGVuOiAlcyIKKworIywgZnV6enkKKyN+fCBtc2dpZCAidW5hYmxlIHRvIHJlbmFtZSAlcyB0byAlczogJXMiCisjfiBtc2dpZCAidW5hYmxlIHRvIHJlbmFtZSBmaWxlICclcycgdG8gJyVzJyIKKyN+IG1zZ3N0ciAibmVtIHR1ZG9tIMOhdG5ldmV6bmkgJXMtdCBlcnJlOiAlczogJXMiCisKKyN+IG1zZ2lkICJtYWxsb2MgZmFpbGVkICglbGQgYnl0ZXMpIgorI34gbXNnc3RyICJtYWxsb2MgaGliYSAoJWxkIGJ5dGVzKSIKKworI34gbXNnaWQgInJlYWxsb2MgZmFpbGVkICglbGQgYnl0ZXMpIgorI34gbXNnc3RyICJyZWFsbG9jIGhpYmEgKCVsZCBieXRlcykiCisKKyN+IG1zZ2lkICJzaXplICU3ZCBvY2N1cnMgJTVkIHRpbWVzXG4iCisjfiBtc2dzdHIgIiU3ZCBtw6lyZXQgJTVkIGFsa2Fsb21tYWwgZm9yZHVsIGVsxZFcbiIKKworI34gbXNnaWQgInVuYWJsZSB0byB1bmxvY2sgZHBrZyBzdGF0dXMgZGF0YWJhc2UiCisjfiBtc2dzdHIgImEgZHBrZyDDoWxsYXBvdCBhZGF0YsOhemlzIGtpbnlpdMOhc2Egc2lrZXJ0ZWxlbiIKKworI34gbXNnaWQgImNvcHkgaW5mbyBmaWxlIGAlLjI1NXMnIgorI34gbXNnc3RyICJgJS4yNTVzJyBpbmZvIGbDoWpsIG3DoXNvbMOhc2EiCisKKyN+IG1zZ2lkICJwYXJzZSBlcnJvciIKKyN+IG1zZ3N0ciAiZWxlbXrDqXNpIGhpYmEiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gd3JpdGUgcGFyc2luZyB3YXJuaW5nIgorI34gbXNnc3RyICJheiBlbGVtesOpc2kgw6lydGVzw610w6lzIGtpw61yw6FzYSBzaWtlcnRlbGVuIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHJ1biAlcyAoJS4yNTBzKSIKKyN+IG1zZ3N0ciAiJXMgZnV0dGF0w6FzYSBtZWdoacO6c3VsdCAoJS4yNTBzKSIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIHNoZWxsICglLjI1MHMpIgorI34gbXNnc3RyICJzaWtlcnRlbGVuIGjDqWogZnV0dGF0w6FzICglLjI1MHMpIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGNoZWNrIGZvciBleGlzdGVuY2Ugb2YgYCUuMjUwcyciCisjfiBtc2dzdHIgIm5lbSBlbGxlbsWRcml6aGV0xZEgYCUuMjUwcycgbMOpdGUiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBybSBmb3IgY2xlYW51cCIKKyN+IG1zZ3N0ciAiYXogcm0gZnV0dGF0w6FzYSBhIHRpc3p0w610w6FzaG96IG5lbSBzaWtlcsO8bHQiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiIgorI34gIiVzIGRlYnVnZ2luZyBvcHRpb24sIC0tZGVidWc9PG9jdGFsPiBvciAtRDxvY3RhbD46XG4iCisjfiAiXG4iCisjfiAiIG51bWJlciAgcmVmLiBpbiBzb3VyY2UgICBkZXNjcmlwdGlvblxuIgorI34gIiAgICAgIDEgICBnZW5lcmFsICAgICAgICAgICBHZW5lcmFsbHkgaGVscGZ1bCBwcm9ncmVzcyBpbmZvcm1hdGlvblxuIgorI34gIiAgICAgIDIgICBzY3JpcHRzICAgICAgICAgICBJbnZvY2F0aW9uIGFuZCBzdGF0dXMgb2YgbWFpbnRhaW5lciBzY3JpcHRzXG4iCisjfiAiICAgICAxMCAgIGVhY2hmaWxlICAgICAgICAgIE91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZFxuIgorI34gIiAgICAxMDAgICBlYWNoZmlsZWRldGFpbCAgICBMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZFxuIgorI34gIiAgICAgMjAgICBjb25mZiAgICAgICAgICAgICBPdXRwdXQgZm9yIGVhY2ggY29uZmlndXJhdGlvbiBmaWxlXG4iCisjfiAiICAgIDIwMCAgIGNvbmZmZGV0YWlsICAgICAgIExvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZVxuIgorI34gIiAgICAgNDAgICBkZXBjb24gICAgICAgICAgICBEZXBlbmRlbmNpZXMgYW5kIGNvbmZsaWN0c1xuIgorI34gIiAgICA0MDAgICBkZXBjb25kZXRhaWwgICAgICBMb3RzIG9mIGRlcGVuZGVuY2llcy9jb25mbGljdHMgb3V0cHV0XG4iCisjfiAiICAxMDAwMCAgIHRyaWdnZXJzICAgICAgICAgIFRyaWdnZXIgYWN0aXZhdGlvbiBhbmQgcHJvY2Vzc2luZ1xuIgorI34gIiAgMjAwMDAgICB0cmlnZ2Vyc2RldGFpbCAgICBMb3RzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnNcbiIKKyN+ICIgIDQwMDAwICAgdHJpZ2dlcnNzdHVwaWQgICAgU2lsbHkgYW1vdW50cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzXG4iCisjfiAiICAgMTAwMCAgIHZlcnl2ZXJib3NlICAgICAgIExvdHMgb2YgZHJpdmVsIGFib3V0IGVnIHRoZSBkcGtnL2luZm8gIgorI34gImRpcmVjdG9yeVxuIgorI34gIiAgIDIwMDAgICBzdHVwaWRseXZlcmJvc2UgICBJbnNhbmUgYW1vdW50cyBvZiBkcml2ZWxcbiIKKyN+ICJcbiIKKyN+ICJEZWJ1Z2dpbmcgb3B0aW9ucyBhcmUgYmUgbWl4ZWQgdXNpbmcgYml0d2lzZS1vci5cbiIKKyN+ICJOb3RlIHRoYXQgdGhlIG1lYW5pbmdzIGFuZCB2YWx1ZXMgYXJlIHN1YmplY3QgdG8gY2hhbmdlLlxuIgorI34gbXNnc3RyICIiCisjfiAiJXMgaGliYWtlcmVzxZEga2FwY3NvbMOzLCAtLWRlYnVnPTxva3TDoWxpcz4gdmFneSAtRDxva3TDoWxpcz46XG4iCisjfiAiXG4iCisjfiAiICAgc3rDoW0gICBoaXYuIGEgZm9ycsOhc2JhbiAgbGXDrXLDoXNcbiIKKyN+ICIgICAgICAxICAgZ2VuZXJhbCAgICAgICAgICAgw4FsdGFsw6Fub3NhbiBoYXN6bm9zIGZvbHlhbWF0aW5mb3Jtw6FjacOza1xuIgorI34gIiAgICAgIDIgICBzY3JpcHRzICAgICAgICAgICBBIGthcmJhbnRhcnTDsyBwYXJhbmNzZsOhamxvayBtZWdow612w6FzYSDDqXMgIgorI34gIsOhbGxhcG90YVxuIgorI34gIiAgICAgMTAgICBlYWNoZmlsZSAgICAgICAgICBLaW1lbmV0IG1pbmRlbiBmZWxkb2xnb3pvdHQgZsOhamxob3pcbiIKKyN+ICIgICAgMTAwICAgZWFjaGZpbGVkZXRhaWwgICAgUmVuZ2V0ZWcga2ltZW5ldCBtaW5kZW4gZmVsZG9sZ296b3R0IGbDoWpsaG96XG4iCisjfiAiICAgICAyMCAgIGNvbmZmICAgICAgICAgICAgIEtpbWVuZXQgbWluZGVuIGJlw6FsbMOtdMOzZsOhamxob3pcbiIKKyN+ICIgICAgMjAwICAgY29uZmZkZXRhaWwgICAgICAgUmVuZ2V0ZWcga2ltZW5ldCBtaW5kZW4gYmXDoWxsw610w7Nmw6FqbGhvelxuIgorI34gIiAgICAgNDAgICBkZXBjb24gICAgICAgICAgICBGw7xnZ8WRc8OpZ2VrIMOpcyDDvHRrw7Z6w6lzZWtcbiIKKyN+ICIgICAgNDAwICAgZGVwY29uZGV0YWlsICAgICAgUmVuZ2V0ZWcga2ltZW5ldCBhIGbDvGdnxZFzw6lnZWtyxZFsIMOpcyAiCisjfiAiw7x0a8O2esOpc2VrcsWRbFxuIgorI34gIiAgIDEwMDAgICB2ZXJ5dmVyYm9zZSAgICAgICBSZW5nZXRlZyBmZWNzZWfDqXMgcGwuIGEgZHBrZy9pbmZvICIKKyN+ICJrw7ZueXZ0w6FycsOzbFxuIgorI34gIiAgIDIwMDAgICBzdHVwaWRseXZlcmJvc2UgICDFkHLDvGx0IG1lbm55aXPDqWfFsSBmZWNzZWfDqXNcbiIKKyN+ICJcbiIKKyN+ICJBIGhpYmFrZXJlc8Opc2kga2FwY3NvbMOzayBrZXZlcmhldMWRayBiaXRlbmvDqW50aSB2YWd5IHNlZ8OtdHPDqWfDqXZlbC5cbiIKKyN+ICJOZSBmZWxlZGQsIGhvZ3kgYSBqZWxlbnTDqXNlayDDqXMgw6lydMOpa2VrIHbDoWx0b3poYXRuYWsuXG4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiIgorI34gIiVzIGZvcmNpbmcgb3B0aW9ucyAtIGNvbnRyb2wgYmVoYXZpb3VyIHdoZW4gcHJvYmxlbXMgZm91bmQ6XG4iCisjfiAiICB3YXJuIGJ1dCBjb250aW51ZTogIC0tZm9yY2UtPHRoaW5nPiw8dGhpbmc+LC4uLlxuIgorI34gIiAgc3RvcCB3aXRoIGVycm9yOiAgICAtLXJlZnVzZS08dGhpbmc+LDx0aGluZz4sLi4uIHwgLS1uby1mb3JjZS0iCisjfiAiPHRoaW5nPiwuLi5cbiIKKyN+ICIgRm9yY2luZyB0aGluZ3M6XG4iCisjfiAiICBhbGwgWyFdICAgICAgICAgICAgICAgIFNldCBhbGwgZm9yY2Ugb3B0aW9uc1xuIgorI34gIiAgZG93bmdyYWRlIFsqXSAgICAgICAgICBSZXBsYWNlIGEgcGFja2FnZSB3aXRoIGEgbG93ZXIgdmVyc2lvblxuIgorI34gIiAgY29uZmlndXJlLWFueSAgICAgICAgICBDb25maWd1cmUgYW55IHBhY2thZ2Ugd2hpY2ggbWF5IGhlbHAgdGhpcyBvbmVcbiIKKyN+ICIgIGhvbGQgICAgICAgICAgICAgICAgICAgUHJvY2VzcyBpbmNpZGVudGFsIHBhY2thZ2VzIGV2ZW4gd2hlbiBvbiBob2xkXG4iCisjfiAiICBiYWQtcGF0aCAgICAgICAgICAgICAgIFBBVEggaXMgbWlzc2luZyBpbXBvcnRhbnQgcHJvZ3JhbXMsIHByb2JsZW1zICIKKyN+ICJsaWtlbHlcbiIKKyN+ICIgIG5vdC1yb290ICAgICAgICAgICAgICAgVHJ5IHRvIChkZSlpbnN0YWxsIHRoaW5ncyBldmVuIHdoZW4gbm90IHJvb3RcbiIKKyN+ICIgIG92ZXJ3cml0ZSAgICAgICAgICAgICAgT3ZlcndyaXRlIGEgZmlsZSBmcm9tIG9uZSBwYWNrYWdlIHdpdGggYW5vdGhlclxuIgorI34gIiAgb3ZlcndyaXRlLWRpdmVydGVkICAgICBPdmVyd3JpdGUgYSBkaXZlcnRlZCBmaWxlIHdpdGggYW4gdW5kaXZlcnRlZCAiCisjfiAidmVyc2lvblxuIgorI34gIiAgYmFkLXZlcmlmeSAgICAgICAgICAgICBJbnN0YWxsIGEgcGFja2FnZSBldmVuIGlmIGl0IGZhaWxzIGF1dGhlbnRpY2l0eSAiCisjfiAiY2hlY2tcbiIKKyN+ICIgIGRlcGVuZHMtdmVyc2lvbiBbIV0gICAgVHVybiBkZXBlbmRlbmN5IHZlcnNpb24gcHJvYmxlbXMgaW50byB3YXJuaW5nc1xuIgorI34gIiAgZGVwZW5kcyBbIV0gICAgICAgICAgICBUdXJuIGFsbCBkZXBlbmRlbmN5IHByb2JsZW1zIGludG8gd2FybmluZ3NcbiIKKyN+ICIgIGNvbmZuZXcgWyFdICAgICAgICAgICAgQWx3YXlzIHVzZSB0aGUgbmV3IGNvbmZpZyBmaWxlcywgZG9uJ3QgcHJvbXB0XG4iCisjfiAiICBjb25mb2xkIFshXSAgICAgICAgICAgIEFsd2F5cyB1c2UgdGhlIG9sZCBjb25maWcgZmlsZXMsIGRvbid0IHByb21wdFxuIgorI34gIiAgY29uZmRlZiBbIV0gICAgICAgICAgICBVc2UgdGhlIGRlZmF1bHQgb3B0aW9uIGZvciBuZXcgY29uZmlnIGZpbGVzIGlmICIKKyN+ICJvbmVcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgaXMgYXZhaWxhYmxlLCBkb24ndCBwcm9tcHQuIElmIG5vIGRlZmF1bHQgY2FuIGJlICIKKyN+ICJmb3VuZCxcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgeW91IHdpbGwgYmUgcHJvbXB0ZWQgdW5sZXNzIG9uZSBvZiB0aGUgY29uZm9sZCAiCisjfiAib3JcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgY29uZm5ldyBvcHRpb25zIGlzIGFsc28gZ2l2ZW5cbiIKKyN+ICIgIGNvbmZtaXNzIFshXSAgICAgICAgICAgQWx3YXlzIGluc3RhbGwgbWlzc2luZyBjb25maWcgZmlsZXNcbiIKKyN+ICIgIGNvbmZhc2sgWyFdICAgICAgICAgICAgT2ZmZXIgdG8gcmVwbGFjZSBjb25maWcgZmlsZXMgd2l0aCBubyBuZXcgIgorI34gInZlcnNpb25zXG4iCisjfiAiICBicmVha3MgWyFdICAgICAgICAgICAgIEluc3RhbGwgZXZlbiBpZiBpdCB3b3VsZCBicmVhayBhbm90aGVyIHBhY2thZ2VcbiIKKyN+ICIgIGNvbmZsaWN0cyBbIV0gICAgICAgICAgQWxsb3cgaW5zdGFsbGF0aW9uIG9mIGNvbmZsaWN0aW5nIHBhY2thZ2VzXG4iCisjfiAiICBhcmNoaXRlY3R1cmUgWyFdICAgICAgIFByb2Nlc3MgZXZlbiBwYWNrYWdlcyB3aXRoIHdyb25nIGFyY2hpdGVjdHVyZVxuIgorI34gIiAgb3ZlcndyaXRlLWRpciBbIV0gICAgICBPdmVyd3JpdGUgb25lIHBhY2thZ2UncyBkaXJlY3Rvcnkgd2l0aCBhbm90aGVyJ3MgIgorI34gImZpbGVcbiIKKyN+ICIgIHVuc2FmZS1pbyBbIV0gICAgICAgICAgRG8gbm90IHBlcmZvcm0gc2FmZSBJL08gb3BlcmF0aW9ucyB3aGVuICIKKyN+ICJ1bnBhY2tpbmdcbiIKKyN+ICIgIHJlbW92ZS1yZWluc3RyZXEgWyFdICAgUmVtb3ZlIHBhY2thZ2VzIHdoaWNoIHJlcXVpcmUgaW5zdGFsbGF0aW9uXG4iCisjfiAiICByZW1vdmUtZXNzZW50aWFsIFshXSAgIFJlbW92ZSBhbiBlc3NlbnRpYWwgcGFja2FnZVxuIgorI34gIlxuIgorI34gIldBUk5JTkcgLSB1c2Ugb2Ygb3B0aW9ucyBtYXJrZWQgWyFdIGNhbiBzZXJpb3VzbHkgZGFtYWdlIHlvdXIgIgorI34gImluc3RhbGxhdGlvbi5cbiIKKyN+ICJGb3JjaW5nIG9wdGlvbnMgbWFya2VkIFsqXSBhcmUgZW5hYmxlZCBieSBkZWZhdWx0LlxuIgorI34gbXNnc3RyICIiCisjfiAiJXMga8OpbnlzemVyw610w6lzaSBrYXBjc29sw7NpIC0gcHJvYmzDqW1hIGVzZXTDqW4gYSB2aXNlbGtlZMOpcyBpcsOhbnnDrXTDoXNhOlxuIgorI34gIiAgZmlneWVsbWV6dGV0LCBkZSBmb2x5dGF0amE6ICAtLWZvcmNlLTx2YWxhbWk+LDx2YWxhbWk+LC4uLlxuIgorI34gIiAgbGXDoWxsw6FzIGhpYsOhdmFsOiAgICAtLXJlZnVzZS08dmFsYW1pPiw8dmFsYW1pPiwuLi4gfCAtLW5vLWZvcmNlLSIKKyN+ICI8dmFsYW1pPiwuLi5cbiIKKyN+ICIgS8OpbnlzemVyw610aGV0xZEgZG9sZ29rOlxuIgorI34gIiAgYWxsICAgICAgICAgICAgICAgICAgICBBeiDDtnNzemVzIGvDqW55c3plcsOtdMOpc2kgbGVoZXTFkXPDqWcgYmXDoWxsw610w6FzYVxuIgorI34gIiAgYXV0by1zZWxlY3QgWypdICAgICAgICBDc29tYWdvayBraWplbMO2bMOpc2UgdGVsZXDDrXTDqXNyZSAoZWx0w6F2b2zDrXTDoXNyYSlcbiIKKyN+ICIgIGRvd25ncmFkZSBbKl0gICAgICAgICAgQ3NvbWFnIGhlbHlldHRlc8OtdMOpc2UgZWd5IGFsYWNzb255YWJiIHZlcnppw7N2YWxcbiIKKyN+ICIgIGNvbmZpZ3VyZS1hbnkgICAgICAgICAgTWluZGVuIGNzb21hZyBiZcOhbGzDrXTDoXNhLCBhbWVseSBzZWfDrXRoZXQgZXplblxuIgorI34gIiAgaG9sZCAgICAgICAgICAgICAgICAgICBBem9ub3MgY3NvbWFnb2sgZmVsZG9sZ296w6FzYSBtw6lnIG1lZ3RhcnTDoXMgIgorI34gImVzZXTDqW4gaXNcbiIKKyN+ICIgIGJhZC1wYXRoICAgICAgICAgICAgICAgQSBQQVRIIHbDoWx0b3rDs2LDs2wgZm9udG9zIHByb2dyYW1vayBoacOhbnlvem5hayxcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICBwcm9ibMOpbcOhayBsw6lwaGV0bmVrIGZlbFxuIgorI34gIiAgbm90LXJvb3QgICAgICAgICAgICAgICBNZWdwcsOzYsOhbGphIHRlbGVww610ZW5pIChlbHTDoXZvbMOtdGFuaSkgYSAiCisjfiAiY3NvbWFnb2thdCxcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICBha2tvciBpcywgaGEgbmVtIHJvb3RcbiIKKyN+ICIgIG92ZXJ3cml0ZSAgICAgICAgICAgICAgRWd5IGNzb21hZyBmw6FqbGrDoW5hayBmZWzDvGzDrXLDoXNhIGVneSBtw6FzaWsgIgorI34gImNzb21hZ8OpdmFsXG4iCisjfiAiICBvdmVyd3JpdGUtZGl2ZXJ0ZWQgICAgIEVsdMOpcsOtdGV0dCBmw6FqbCBmZWzDvGzDrXLDoXNhIGVneSBlbCBuZW0gdMOpcsOtdGV0dFxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHZlcnppw7N2YWxcbiIKKyN+ICIgIGJhZC12ZXJpZnkgICAgICAgICAgICAgQ3NvbWFnIHRlbGVww610w6lzZSBha2tvciBpcywgaGEgYSAiCisjfiAiaGl0ZWxlc3PDqWdlbGxlbsWRcnrDqXNcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICBtZWdoacO6c3VsXG4iCisjfiAiICBkZXBlbmRzLXZlcnNpb24gWyFdICAgIFZlcnppw7Nmw7xnZ8WRc8OpZ2kgcHJvYmzDqW3DoWsgZmlneWVsbWV6dGV0w6lzZWtrw6kgIgorI34gImFsYWvDrXTDoXNhXG4iCisjfiAiICBkZXBlbmRzIFshXSAgICAgICAgICAgIE1pbmRlbiBmw7xnZ8WRc8OpZ2kgcHJvYmzDqW1hIGZpZ3llbG1lenRldMOpc2Vra8OpICIKKyN+ICJhbGFrw610w6FzYVxuIgorI34gIiAgY29uZm5ldyBbIV0gICAgICAgICAgICBLw6lyZMOpcyBuw6lsa8O8bCBtaW5kaWcgYXogw7pqIGJlw6FsbMOtdMOzZsOhamxva2F0XG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgaGFzem7DoWxqYVxuIgorI34gIiAgY29uZm9sZCBbIV0gICAgICAgICAgICBLw6lyZMOpcyBuw6lsa8O8bCBtaW5kaWcgYSByw6lnaSBiZcOhbGzDrXTDs2bDoWpsb2thdFxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhc3puw6FsamFcbiIKKyN+ICIgIGNvbmZkZWYgWyFdICAgICAgICAgICAgQXogYWxhcMOpcnRlbG1lemV0dCBiZcOhbGzDrXTDoXMgaGFzem7DoWxhdGEgYXogw7pqXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIGJlw6FsbMOtdMOzZsOhamxva2hveiwgbmUga8OpcmRlenplbiwgaGEgdmFuICIKKyN+ICJlbMOpcmhldMWRLlxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICBIYSBheiBhbGFww6lydGVsbWV6w6lzIG5lbSB0YWzDoWxoYXTDsywgYSBwcm9ncmFtICIKKyN+ICJyw6Frw6lyZGV6LFxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICBoYWNzYWsgYSBjb25mb2xkIHZhZ3kgY29uZm5ldyBrYXBjc29sw7NrIGVneWlrZSAiCisjfiAiaXMgbWVnXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIG5pbmNzIGFkdmFcbiIKKyN+ICIgIGNvbmZtaXNzIFshXSAgICAgICAgICAgTWluZGlnIHRlbGVww610c2UgYSBoacOhbnl6w7MgYmXDoWxsw610w7Nmw6FqbG9rYXRcbiIKKyN+ICIgIGNvbmZsaWN0cyBbIV0gICAgICAgICAgw5x0a8O2esWRIGNzb21hZ29rIHRlbGVww610w6lzw6luZWsgZW5nZWTDqWx5ZXrDqXNlXG4iCisjfiAiICBhcmNoaXRlY3R1cmUgWyFdICAgICAgIE5lbSBtZWdmZWxlbMWRIGFyY2hpdGVrdMO6csOhasO6IGNzb21hZ29rICIKKyN+ICJmZWxkb2xnb3rDoXNhXG4iCisjfiAiICBvdmVyd3JpdGUtZGlyIFshXSAgICAgIEF6IGVneWlrIGNzb21hZyBrw7ZueXZ0w6Fyw6FuYWsgZmVsw7xsw61yw6FzYSBlZ3kgIgorI34gIm3DoXNpa1xuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGbDoWpsasOhdmFsXG4iCisjfiAiICByZW1vdmUtcmVpbnN0cmVxIFshXSAgIFRlbGVww610w6lzdCBpZ8OpbnlsxZEgY3NvbWFnb2sgZWx0w6F2b2zDrXTDoXNhXG4iCisjfiAiICByZW1vdmUtZXNzZW50aWFsIFshXSAgIEFsYXB2ZXTFkSBjc29tYWcgZWx0w6F2b2zDrXTDoXNhXG4iCisjfiAiXG4iCisjfiAiRklHWUVMTUVaVEVUw4lTIC0gYSBbIV0gamVsxbEga2FwY3NvbMOzayBoYXN6bsOhbGF0YSBzw7pseW9zYW4ga8Ohcm9zw610aGF0amEgYVxuIgorI34gInRlbGVww610w6lzdC4gQSBbKl0gamVsxbEga2FwY3NvbMOzayBhbGFww6lydGVsbWV6w6lzYmVuIGVuZ2Vkw6lseWV6ZXR0ZWsuXG4iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlY2wgZGVic2lnLXZlcmlmeSIKKyN+IG1zZ3N0ciAic2lrZXJ0ZWxlbiBkZWJzaWctdmVyaWZ5IGZ1dHRhdMOhcyIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIGRwa2ctZGViIHRvIGV4dHJhY3QgY29udHJvbCBpbmZvcm1hdGlvbiIKKyN+IG1zZ3N0ciAiYSBkcGtnLWRlYiBmdXR0YXTDoXNhIHNpa2VydGVsZW4gYXogZWxsZW7FkXJ6xZEgYWRhdG9rIGtpYm9udMOhc8OhaG96IgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGV4ZWMgZHBrZy1kZWIgdG8gZ2V0IGZpbGVzeXN0ZW0gYXJjaGl2ZSIKKyN+IG1zZ3N0ciAibmVtIGZ1dHRhdGhhdMOzIGEgZHBrZy1kZWIgYSBmw6FqbHJlbmRzemVyIGFyY2jDrXZ1bSBlbMOpcsOpc8OpaGV6IgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSBkaXNhcHBlYXJpbmcgY29udHJvbCBpbmZvIGZpbGUgYCUuMjUwcyciCisjfiBtc2dzdHIgIm5lbSB0dWRvbSB0w7Zyw7ZsbmkgYXogZWx0xbFudCBgJS4yNTBzJyBrb250cm9sbCBpbmZvIGbDoWpsdCIKKworI34gbXNnaWQgImRwa2c6ICVzIG5vdCBmb3VuZC5cbiIKKyN+IG1zZ3N0ciAiZHBrZzogJXMgbmVtIHRhbMOhbGhhdMOzLlxuIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIC4uLi9ERUJJQU4iCisjfiBtc2dzdHIgIm5lbSB0dWR0YW0gYSAuLi9ERUJJQU4ga8O2bnl2dMOhcmJhIHbDoWx0YW5pIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgdGFyIC1jZiIKKyN+IG1zZ3N0ciAic2lrZXJ0ZWxlbiB0YXIgLWQgZnV0dGF0w6FzIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIG1ha2UgdG1wZmlsZSAoY29udHJvbCkiCisjfiBtc2dzdHIgImF6IGlkZWlnbGVuZXMgZsOhamwgKHZlesOpcmzFkSkgbMOpdHJlaG96w6FzYSBtZWdoacO6c3VsdCIKKworI34gbXNnaWQgImZhaWxlZCB0byB1bmxpbmsgdG1wZmlsZSAoY29udHJvbCksICVzIgorI34gbXNnc3RyICJheiBpZGVpZ2xlbmVzIGbDoWpsICh2ZXrDqXJsxZEpIHTDtnJsw6lzZSBtZWdoacO6c3VsdCwgJXMiCisKKyN+IG1zZ2lkICJjb250cm9sIgorI34gbXNnc3RyICJ2ZXrDqXJsw6lzIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHJld2luZCB0bXBmaWxlIChjb250cm9sKSIKKyN+IG1zZ3N0ciAiYXogaWRlaWdsZW5lcyBmw6FqbCAodmV6w6lybMWRKSB2aXNzemHDoWxsw610w6FzYSBtZWdoacO6c3VsdCIKKworI34gbXNnaWQgImZhaWxlZCB0byBmc3RhdCB0bXBmaWxlIChjb250cm9sKSIKKyN+IG1zZ3N0ciAiYXogaWRlaWdsZW5lcyBmw6FqbCAodmV6w6lybMWRKSBmc3RhdC1vbMOhc2EgbWVnaGnDunN1bHQiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBmaW5kIgorI34gbXNnc3RyICJzaWtlcnRlbGVuIGZpbmQgZnV0dGF0w6FzIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgc2ggLWMgbXYgZm9vLyogJmMiCisjfiBtc2dzdHIgInNpa2VydGVsZW4gZnV0dGF0w6FzOiBzaCAtYyBtdiBmb28vKiAmYyIKKworI34gbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtICUuMjUwcyBsZW5ndGggY29udGFpbnMgbnVsbHMiCisjfiBtc2dzdHIgImAlLjI1MHMnIGhpYsOhcyAtICUuMjUwcyBob3NzeiAwLWthdCB0YXJ0YWxtYXoiCisKKyN+IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBuZWdhdGl2ZSBtZW1iZXIgbGVuZ3RoICV6aSIKKyN+IG1zZ3N0ciAiYCUuMjUwcycgaGliw6FzIC0gbmVnYXTDrXYgJXppIHRhZyBob3NzeiIKKworI34gbXNnaWQgImZhaWxlZCBnZXR0aW5nIHRoZSBjdXJyZW50IGZpbGUgcG9zaXRpb24iCisjfiBtc2dzdHIgImF6IGFkb3R0IGbDoWpsIHBvesOtY2nDsyBuZW0gb2x2YXNoYXTDsyIKKworI34gbXNnaWQgImZhaWxlZCBzZXR0aW5nIHRoZSBjdXJyZW50IGZpbGUgcG9zaXRpb24iCisjfiBtc2dzdHIgImF6IGFkb3R0IGbDoWpsIHBvesOtY2nDsyBuZW0gw6FsbMOtdGhhdMOzIGJlIgorCisjfiBtc2dpZCAidmVyc2lvbiBudW1iZXIiCisjfiBtc2dzdHIgInZlcnppw7NzesOhbSIKKworI34gbXNnaWQgImhlYWRlciBpbmZvIG1lbWJlciIKKyN+IG1zZ3N0ciAiZmVqbMOpYyBpbmZvIHRhZyIKKworIywgZnV6enkKKyN+fCBtc2dpZCAic2tpcHBlZCBtZW1iZXIgZGF0YSBmcm9tICVzIgorI34gbXNnaWQgInNraXBwZWQgY29udHJvbCBhcmVhIGZyb20gJXMiCisjfiBtc2dzdHIgImtpaGFneW90dCB0YWcgYWRhdCBpbm5lbjogJXMiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSB0ZW1wb3JhcnkgZGlyZWN0b3J5IgorI34gbXNnc3RyICJoaWJhIGF6IMOhdG1lbmV0aSBrw7ZueXZ0w6FybsOpdiBsw6l0cmVob3rDoXNha29yIgorCisjLCBmdXp6eQorI358IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBkcGtnLWRlYiB0byBleHRyYWN0IGNvbnRyb2wgaW5mb3JtYXRpb24iCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgZHBrZy1kZWIgdG8gZXh0cmFjdCBmaWVsZCB2YWx1ZSIKKyN+IG1zZ3N0ciAiYSBkcGtnLWRlYiBmdXR0YXTDoXNhIHNpa2VydGVsZW4gYXogZWxsZW7FkXJ6xZEgYWRhdG9rIGtpYm9udMOhc8OhaG96IgorCisjLCBmdXp6eQorI358IG1zZ2lkICJ1bmFibGUgdG8gY3JlYXRlICVzOiAlcyIKKyN+IG1zZ2lkICJ1bmFibGUgdG8gc3RhdCAlczogJXMiCisjfiBtc2dzdHIgIiVzIGzDqXRyZWhvesOhc2Egc2lrZXJ0ZWxlbjogJXMiCisKKyN+IG1zZ2lkICJzbGF2ZSBuYW1lICVzIGR1cGxpY2F0ZWQiCisjfiBtc2dzdHIgIiVzIHN6b2xnYSBuw6l2IG1lZ2tldHTFkXrDtnR0IgorCisjfiBtc2dpZCAic2xhdmUgbGluayAlcyBkdXBsaWNhdGVkIgorI34gbXNnc3RyICIlcyBzem9sZ2EgbMOhbmMgbWVna2V0dMWResO2dHQiCisKKyN+IG1zZ2lkICIlZCByZXF1ZXN0ZWQgY29udHJvbCBjb21wb25lbnRzIGFyZSBtaXNzaW5nIgorI34gbXNnc3RyICIlZCBrw6lydCBlbGxlbsWRcnrFkSDDtnNzemV0ZXbFkSBoacOhbnl6aWsiCisKKyN+IG1zZ2lkICJjYXQgKGRhdGEpIgorI34gbXNnc3RyICJjYXQgKGFkYXRvaykiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gb3BlbiBwaXBlIGRlc2NyaXB0b3IgYDEnIGluIHBhc3RlIgorI34gbXNnc3RyICJheiBgMScgY3PFkWxlw61yw7MgbWVnbnlpdMOhc2Egc2lrZXJ0ZWxlbiBhIGJlc3rDunLDoXNiYW4iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gd3JpdGUgdG8gZ3ppcCAtZGMiCisjfiBtc2dzdHIgIsOtcsOhc2kgaGliYSBnemlwIC1kYy1iZSIKKworI34gbXNnaWQgImZhaWxlZCB0byBjbG9zZSBnemlwIC1kYyIKKyN+IG1zZ3N0ciAic2lrZXJ0ZWxlbiBnemlwIC1kYyBiZXrDoXLDoXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gc3lzY2FsbCBsc2VlayB0byBmaWxlcyBhcmNoaXZlIHBvcnRpb24iCisjfiBtc2dzdHIgInNpa2VydGVsZW4gbHNlZWsgcmVuZHN6ZXJow612w6FzIGF6IGFyY2jDrXYgcsOpc3pmw6FqbG9rcmEiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gZXhlYyBta3NwbGl0IgorI34gbXNnc3RyICJhIG1rc3BsaXQgbmVtIGZ1dHRhdGhhdMOzIgorCisjfiBtc2dpZCAiIgorI34gIlxuIgorI34gIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLiIKKyN+IG1zZ3N0ciAiIgorI34gIlxuIgorI34gIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLiIKKworI34gbXNnaWQgInR3byBjb21tYW5kcyBzcGVjaWZpZWQ6ICVzIGFuZCAtLSVzIgorI34gbXNnc3RyICIyIHBhcmFuY3MgbWVnYWR2YTogJXMgw6lzIC0tJXMiCisKKyN+IG1zZ2lkICItLSVzIG5lZWRzIGEgZGl2ZXJ0LXRvIGFyZ3VtZW50IgorI34gbXNnc3RyICItLSVzIGVneSBkaXZlcnQtdG8gYXJndW1lbnR1bW90IHbDoXIiCisKKyN+IG1zZ2lkICItLSVzIG5lZWRzIGEgPHBhY2thZ2U+IGFyZ3VtZW50IgorI34gbXNnc3RyICItLSVzIGVneSA8Y3NvbWFnPiBhcmd1bWVudHVtb3QgdsOhciIKKworI34gbXNnaWQgImNhbm5vdCBvcGVuIGRpdmVyc2lvbnM6ICVzIgorI34gbXNnc3RyICJuZW0gbWVnbnlpdGhhdMOzIGVsdMOpcsOtdMOpc2VrOiAlcyIKKworI34gbXNnaWQgIm1pc3NpbmcgYWx0bmFtZSIKKyN+IG1zZ3N0ciAiaGnDoW55esOzIGFsdG5hbWUiCisKKyN+IG1zZ2lkICJpbnRlcm5hbCBlcnJvciAtIGJhZCBtb2RlIGAlcyciCisjfiBtc2dzdHIgImJlbHPFkSBoaWJhIC0gcm9zc3ogYCVzJyBtw7NkIgorCisjfiBtc2dpZCAiY2Fubm90IHN0YXQgb2xkIG5hbWUgYCVzJzogJXMiCisjfiBtc2dzdHIgImEgcsOpZ2kgYCVzJyBuw6l2IG5lbSB0YWzDoWxoYXTDszogJXMiCisKKyN+IG1zZ2lkICJyZW5hbWU6IHJlbmFtZSBgJXMnIHRvIGAlcyc6ICVzIgorI34gbXNnc3RyICLDoXRuZXZlesOpczogYCVzJyDDoXRuZXZlesOpc2UgZXJyZTogYCVzJzogJXMiCisKKyN+IG1zZ2lkICJjcmVhdGUgZGl2ZXJzaW9ucy1uZXc6ICVzIgorI34gbXNnc3RyICJkaXZlcnNpb25zLW5ldyBsw6l0cmVob3rDoXNhOiAlcyIKKworI34gbXNnaWQgIndyaXRlIGRpdmVyc2lvbnMtbmV3OiAlcyIKKyN+IG1zZ3N0ciAiZGl2ZXJzaW9ucy1uZXcgw61yw6FzYTogJXMiCisKKyN+IG1zZ2lkICJjbG9zZSBkaXZlcnNpb25zLW5ldzogJXMiCisjfiBtc2dzdHIgImRpdmVyc2lvbnMtbmV3IGxlesOhcsOhc2E6ICVzIgorCisjfiBtc2dpZCAiY3JlYXRlIG5ldyBkaXZlcnNpb25zLW9sZDogJXMiCisjfiBtc2dzdHIgIsO6aiBkaXZlcnNpb25zLW9sZCBsw6l0cmVob3rDoXNhOiAlcyIKKworI34gbXNnaWQgImluc3RhbGwgbmV3IGRpdmVyc2lvbnM6ICVzIgorI34gbXNnc3RyICLDumogZWx0w6lyw610w6lzZWsgdGVsZXDDrXTDqXNlOiAlcyIKKworI34gbXNnaWQgImludGVybmFsIGVycm9yOiAlcyBjb3JydXB0OiAlcyIKKyN+IG1zZ3N0ciAiYmVsc8WRIGhpYmE6ICVzIHJvc3N6OiAlcyIKKworI34gbXNnaWQgImRwa2ctZGViIC0gZXJyb3I6ICVzIChgJXMnKSBkb2Vzbid0IGNvbnRhaW4gYW55IGRpZ2l0c1xuIgorI34gbXNnc3RyICJkcGtnLWRlYiAtIGVycm9yOiAlcyAoYCVzJykgbmVtIHRhcnRhbG1heiBzesOhbW90XG4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiRGViaWFuIHJldmlzaW9uIgorI34gbXNnc3RyICJEZWJpYW4gJXMgJXMgdmVyemnDsy5cbiIKKworI34gbXNnaWQgIiVkIGVycm9ycyBpbiBjb250cm9sIGZpbGUiCisjfiBtc2dzdHIgIiVkIGhpYmEgYXogZWxsZW7FkXJ6xZEgZsOhamxiYW4iCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgIiVzOiBjYW4ndCBvcGVuICVzOiAlcyIKKyN+IG1zZ2lkICJjYW4ndCByZWFkZGlyICVzOiAlcyIKKyN+IG1zZ3N0ciAiJXM6ICVzIG5lbSBueWl0aGF0w7MgbWVnOiAlcyIKKworI34gbXNnaWQgImVvZiBpbiBidWZmZXJfd3JpdGUoc3RyZWFtKTogJXMiCisjfiBtc2dzdHIgImVvZiBhIGJ1ZmZlcl93cml0ZShzdHJlYW0pLWJlbjogJXMiCisKKyN+IG1zZ2lkICJlcnJvciBpbiBidWZmZXJfd3JpdGUoc3RyZWFtKTogJXMiCisjfiBtc2dzdHIgImhpYmEgYSBidWZmZXJfd3JpdGUoc3RyZWFtKS1iZW46ICVzIgorCisjfiBtc2dpZCAiZXJyb3IgaW4gYnVmZmVyX3JlYWQoc3RyZWFtKTogJXMiCisjfiBtc2dzdHIgImhpYmEgYSBidWZmZXJfcmVhZChzdHJlYW0pLWJlbjogJXMiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiJXMgcmV0dXJuZWQgZXJyb3IgZXhpdCBzdGF0dXMgJWQiCisjfiBtc2dzdHIgIiVzIGFsZm9seWFtYXQgJWQgaGliYWvDs2RkYWwga2lsw6lwZXR0IgorCisjLCBmdXp6eQorI34gbXNnaWQgIiVzIGtpbGxlZCBieSBzaWduYWwgKCVzKSVzIgorI34gbXNnc3RyICIlcyBhbGZvbHlhbWF0IG1lZ8O2bHZlLCBhIGhhbMOhbHQgb2tvesOzIGplbDogKCVzKSVzIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgdmVyc2lvbiAyIG9yXG4iCisjfiAibGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJcbiIKKyN+ICJFeiBlZ3kgU3phYmFkIFN6b2Z0dmVyOyBsLiBhIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbmNlIDItZXMgdmFneSAiCisjfiAibmFneW9iYlxuIgorI34gInbDoWx0b3phdMOhdCBhIG3DoXNvbMOhc2kgZmVsdMOpdGVsZWvDqXJ0LiBOSU5DUyBnYXJhbmNpYS5cbiIKKworI34gbXNnaWQgIiIKKyN+ICJcbiIKKyN+ICJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgdmVyc2lvbiAyIG9yXG4iCisjfiAibGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJcbiIKKyN+ICJFeiBlZ3kgU3phYmFkIFN6b2Z0dmVyOyBsLiBhIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbmNlIDItZXMgdmFneSAiCisjfiAibmFneW9iYlxuIgorI34gInbDoWx0b3phdMOhdCBhIG3DoXNvbMOhc2kgZmVsdMOpdGVsZWvDqXJ0LiBOSU5DUyBnYXJhbmNpYS5cbiIKKworIywgZnV6enkKKyN+IG1zZ2lkICIlczogZmFpbGVkIHRvIGV4ZWMgJyVzICVzJyIKKyN+IG1zZ3N0ciAiJXM6IHNpa2VydGVsZW4gZ3ppcCAlcyBmdXR0YXTDoXMiCisKKyN+IG1zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCBlcnJvcjogcmVhZDogYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IGJlbHPFkSBnemlwIGhpYmE6IG9sdmFzw6FzOiBgJXMnIgorCisjfiBtc2dpZCAiJXM6IGludGVybmFsIGd6aXAgZXJyb3I6IHdyaXRlOiBgJXMnIgorI34gbXNnc3RyICIlczogYmVsc8WRIGd6aXAgaGliYTogw61yw6FzOiBgJXMnIgorCisjfiBtc2dpZCAiJXM6IGludGVybmFsIGd6aXAgZXJyb3I6IHJlYWQoJWkpICE9IHdyaXRlKCVpKSIKKyN+IG1zZ3N0ciAiJXM6IGJlbHPFkSBnemlwIGhpYmE6IG9sdmFzw6FzKCVpKSAhPSDDrXLDoXMoJWkpIgorCisjfiBtc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIGVycm9yOiByZWFkOiBgJXMnIgorI34gbXNnc3RyICIlczogYmVsc8WRIGJ6aXAyIGhpYmE6IG9sdmFzw6FzOiBgJXMnIgorCisjfiBtc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIGVycm9yOiB3cml0ZTogYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IGJlbHPFkSBiemlwMiBoaWJhOiDDrXLDoXM6IGAlcyciCisKKyN+IG1zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgZXJyb3I6IHJlYWQoJWkpICE9IHdyaXRlKCVpKSIKKyN+IG1zZ3N0ciAiJXM6IGJlbHPFkSBiemlwMiBoaWJhOiBvbHZhc8OhcyglaSkgIT0gw61yw6FzKCVpKSIKKworI34gbXNnaWQgIkRvbid0IGZvcmdldCB0byBmb3JlZ3JvdW5kIChgZmcnKSB0aGlzIHByb2Nlc3Mgd2hlbiB5b3UncmUgZG9uZSAhXG4iCisjfiBtc2dzdHIgIk5lIGZlbGVkZCBlbMWRaG96bmkgKGBmZycpIGUgZm9seWFtYXRvdCwgbWlrb3Iga8Opc3ogdmFneSAhXG4iCisKKyN+IG1zZ2lkICIiCisjfiAiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvclxuIgorI34gImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LlxuIgorI34gIlNlZSAlcyAtLWxpY2Vuc2UgZm9yIGNvcHlyaWdodCBhbmQgbGljZW5zZSBkZXRhaWxzLlxuIgorI34gbXNnc3RyICIiCisjfiAiRXogZWd5IFN6YWJhZCBTem9mdHZlcjsgbC4gYSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSAyLWVzIHZhZ3kgIgorI34gIm5hZ3lvYmJcbiIKKyN+ICJ2w6FsdG96YXTDoXQgYSBtw6Fzb2zDoXNpIGZlbHTDqXRlbGVrw6lydC4gIE5JTkNTIGdhcmFuY2lhLlxuIgorI34gIkwuIGEgJXMgIC0tbGljZW5jZSBvcGNpw7N0IGEgc3plcnrFkWkgam9naSDDqXMgbGljZW5jIHLDqXN6bGV0ZWvDqXJ0LlxuIgorCisjfiBtc2dpZCAiRGViaWFuIGAlcycgcGFja2FnZSBtYW5hZ2VtZW50IHByb2dyYW0gcXVlcnkgdG9vbFxuIgorI34gbXNnc3RyICJEZWJpYW4gYCVzJyBjc29tYWdrZXplbMWRIHByb2dyYW0gbGVrw6lyZGV6xZEgZXN6a8O2elxuIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IHF1ZXJ5aW5nIHBhY2thZ2VzO1xuIgorI34gIlVzZSAtLWxpY2Vuc2UgZm9yIGNvcHlyaWdodCBsaWNlbnNlIGFuZCBsYWNrIG9mIHdhcnJhbnR5IChHTlUgR1BMKS4iCisjfiBtc2dzdHIgIiIKKyN+ICJIYXN6bsOhbGQgYSAtLWhlbHAgb3BjacOzdCBhIGNzb21hZ29rIGxla8OpcmRlesOpc8OpbmVrIHPDumfDs2rDoWhvejtcbiIKKyN+ICJIYXN6bsOhbGQgYSAtLWxpY2Vuc2Ugb3BjacOzdCBhIHN6ZXJ6xZFpIGpvZ2ksIGxpY2VuYyDDqXMgZ2FyYW5jaWFcbiIKKyN+ICJoacOhbnnDoXLDs2wgc3rDs2zDsyBpbmZvcm3DoWNpw7NrIGxlw61yw6FzaG96IChHTlUgR1BMKS5cbiIKKyN+ICJcbiIKKworI34gbXNnaWQgImZhaWxlZCB0byBjaG93biAlczogJXMiCisjfiBtc2dzdHIgInNpa2VydGVsZW4gJXMgY2hvd246ICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGNobW9kICVzOiAlcyIKKyN+IG1zZ3N0ciAic2lrZXJ0ZWxlbiAlcyBjaG1vZDogJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZm9yayBmb3IgY2xlYW51cCIKKyN+IG1zZ3N0ciAibmVtIHNpa2Vyw7xsdCBlbMOhZ2F6bmkgYSB0aXN6dMOtdMOhc2hveiIKKworI34gbXNnaWQgImZhaWxlZCB0byB3YWl0IGZvciBybSBjbGVhbnVwIgorI34gbXNnc3RyICJuZW0gc2lrZXLDvGx0IGtpdsOhcm5pIGF6IHJtIHRpc3p0w610w6FzdCIKKworI34gbXNnaWQgInJtIGNsZWFudXAgZmFpbGVkLCBjb2RlICVkXG4iCisjfiBtc2dzdHIgImF6IHJtIHRpc3p0w610w6FzIHNpa2VydGVsZW4sIGvDs2Q6ICVkXG4iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBybSAtcmYiCisjfiBtc2dzdHIgIm5lbSBmdXR0YXRoYXTDsyBybSAtcmYiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gcmVhZCBgY29udHJvbCcgKGluIGAlLjI1NXMnKSIKKyN+IG1zZ3N0ciAiYGNvbnRyb2wnIG9sdmFzw6FzaSBoaWJhIChpdHQ6IGAlLjI1NXMnKSIKKworI34gbXNnaWQgInVuYWJsZSB0byBzZWVrIGJhY2siCisjfiBtc2dzdHIgImxlaGV0ZXRsZW4gaMOhdHJhbWVubmkiCisKKyN+IG1zZ2lkICJ3YWl0IGZvciBzaGVsbCBmYWlsZWQiCisjfiBtc2dzdHIgIm5lbSBqw7Z0dCBhIGjDqWoiCisKKyN+IG1zZ2lkICJyZWFkIGVycm9yIGluIGRpdmVyc2lvbnMgW2ldIgorI34gbXNnc3RyICJkaXZlcnNpb25zIG9sdmFzw6FzIGhpYmEgW2ldIgorCisjfiBtc2dpZCAidW5saW5rIgorI34gbXNnc3RyICJlbGzDoW5jb2zDoXMiCisKKyN+IG1zZ2lkICJjaG1vZCIKKyN+IG1zZ3N0ciAiY2htb2QiCisKKyN+IG1zZ2lkICJkZWxldGUiCisjfiBtc2dzdHIgInTDtnJsw6lzIgorCisjLCBmdXp6eQorI34gbXNnaWQgImZhaWxlZCB0byAlcyAnJS4yNTVzJyIKKyN+IG1zZ3N0ciAibWVnaGnDunN1bHQgZWhoZXo6ICVzIGAlJS4yNTBzJyIKKworI34gbXNnaWQgIndhaXQgZm9yIGRwa2ctc3BsaXQgZmFpbGVkIgorI34gbXNnc3RyICJhIGRwa2ctc3BsaXQtcmUgdsOhcsOhcyBzaWtlcnRlbGVuIgorCisjfiBtc2dpZCAiY2Fubm90IHJlbW92ZSBmaWxlIGAlLjI1MHMnIgorI34gbXNnc3RyICJuZW0gdMO2csO2bGhldMWRIGbDoWpsOiBgJS4yNTBzJyIKKworI34gbXNnaWQgIiIKKyN+ICJcbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDIwMDAgV2ljaGVydCBBa2tlcm1hbi4iCisjfiBtc2dzdHIgIiIKKyN+ICJcbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDIwMDAgV2ljaGVydCBBa2tlcm1hbi4iCisKKyN+IG1zZ2lkICJubyBtb2RlIHNwZWNpZmllZCIKKyN+IG1zZ3N0ciAibmluY3MgbcOzZCBtZWdhZHZhIgorCisjfiBtc2dpZCAiaWxsZWdhbCB1c2VyICVzIgorI34gbXNnc3RyICJzemFiw6FseXRhbGFuICVzIGZlbGhhc3puw6Fsw7MiCisKKyN+IG1zZ2lkICJub24tZXhpc3RpbmcgdXNlciAlcyIKKyN+IG1zZ3N0ciAibmVtIGzDqXRlesWRICVzIGZlbGhhc3puw6Fsw7MiCisKKyN+IG1zZ2lkICJpbGxlZ2FsIGdyb3VwICVzIgorI34gbXNnc3RyICJzemFiw6FseXRhbGFuICVzIGNzb3BvcnQiCisKKyN+IG1zZ2lkICJub24tZXhpc3RpbmcgZ3JvdXAgJXMiCisjfiBtc2dzdHIgIm5lbSBsw6l0ZXrFkSAlcyBjc29wb3J0IgorCisjfiBtc2dpZCAiaWxsZWdhbCBtb2RlICVzIgorI34gbXNnc3RyICJ0aWxvcyAlcyBtw7NkIgorCisjfiBtc2dpZCAiYWJvcnRpbmciCisjfiBtc2dzdHIgInTDtnJsw6lzIgorCisjfiBtc2dpZCAiY2Fubm90IG9wZW4gc3RhdG92ZXJyaWRlOiAlcyIKKyN+IG1zZ3N0ciAibmVtIG1lZ255aXRoYXTDsyBzdGF0b3ZlcnJpZGU6ICVzIgorCisjfiBtc2dpZCAiTXVsdGlwbGUgb3ZlcnJpZGVzIGZvciBcIiVzXCIsIGFib3J0aW5nIgorI34gbXNnc3RyICJcIiVzXCIgdMO2YmJzesO2cmkgZmVsw7xsYsOtcsOhbMOhc2EsIG1lZ3N6YWvDrXR2YSIKKworI34gbXNnaWQgImZhaWxlZCB3cml0ZSBkdXJpbmcgaGFzaHJlcG9ydCIKKyN+IG1zZ3N0ciAic2lrZXJ0ZWxlbiDDrXLDoXMgaGFzaHJlcG9ydCBrw7Z6YmVuIgorCisjfiBtc2dpZCAiY29uZmlndXJhdGlvbiBlcnJvcjogdW5rbm93biBvcHRpb24gJXMiCisjfiBtc2dzdHIgImJlw6FsbMOtdMOhc2kgaGliYTogaXNtZXJldGxlbiAlcyBsZWhldMWRc8OpZyIKKworI34gbXNnaWQgImNvbmZpZ3VyYXRpb24gZXJyb3I6ICVzIGRvZXMgbm90IHRha2UgYSB2YWx1ZSIKKyN+IG1zZ3N0ciAiYmXDoWxsw610w6FzIGhpYmE6ICVzIG5lbSB2w6FyIMOpcnTDqWtldCIKKworI34gbXNnaWQgImRwa2c6IHZlcnNpb24gJyVzJyBoYXMgYmFkIHN5bnRheDogJXNcbiIKKyN+IG1zZ3N0ciAiZHBrZzogJyVzJyB2ZXJ6acOzIG55ZWx2dGFuYSBoaWLDoXM6ICVzXG4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAidW5leGVjcHRlZCBlbmQgb2YgbGluZSBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKKyN+IG1zZ3N0ciAidsOhcmF0bGFuIHNvcnbDqWcgYSBjc29tYWduw6l2YmVuIGEgJWQuIHNvcmJhbiIKKworIywgZnV6enkKKyN+IG1zZ2lkICItLWNoZWNrLXN1cHBvcnRlZCB0YWtlcyBubyBhcmd1bWVudHMiCisjfiBtc2dzdHIgIi0tJXMgbmVtIHbDoXIgYXJndW1lbnR1bW90IgorCisjfiBtc2dpZCAiLS1mb3JnZXQtb2xkLXVuYXZhaWwgdGFrZXMgbm8gYXJndW1lbnRzIgorI34gbXNnc3RyICJBIC0tZm9yZ2V0LW9sZC11bmF2YWlsIG5lbSB2w6FyIGFyZ3VtZW50dW1vdCIKKworI34gbXNnaWQgIiIKKyN+ICJcbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDE5OTQsMTk5NSBJYW4gSmFja3Nvbi4iCisjfiBtc2dzdHIgIiIKKyN+ICJcbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDE5OTQsMTk5NSBJYW4gSmFja3Nvbi4iCisKKyN+IG1zZ2lkICIiCisjfiAiVXNhZ2U6ICVzIFs8b3B0aW9ucz4gLi4uXSBbLS1dIDxmaWxlbmFtZT5cbiIKKyN+ICJcbiIKKyN+ICJPcHRpb25zOlxuIgorI34gIiAgLS1zZWN0aW9uIDxyZWdleHA+IDx0aXRsZT5cbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICBwdXQgdGhlIG5ldyBlbnRyeSBpbiB0aGUgPHJlZ2V4PiBtYXRjaGVkICIKKyN+ICJzZWN0aW9uXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgb3IgY3JlYXRlIGEgbmV3IG9uZSB3aXRoIDx0aXRsZT4gaWYgbm9uLSIKKyN+ICJleGlzdGVudC5cbiIKKyN+ICIgIC0tbWVudWVudHJ5PTx0ZXh0PiAgICAgICBzZXQgdGhlIG1lbnUgZW50cnkuXG4iCisjfiAiICAtLWRlc2NyaXB0aW9uPTx0ZXh0PiAgICAgc2V0IHRoZSBkZXNjcmlwdGlvbiB0byBiZSB1c2VkIGluIHRoZSBtZW51ICIKKyN+ICJlbnRyeS5cbiIKKyN+ICIgIC0taW5mby1maWxlPTxwYXRoPiAgICAgICBzcGVjaWZ5IGluZm8gZmlsZSB0byBpbnN0YWxsIGluIHRoZSAiCisjfiAiZGlyZWN0b3J5LlxuIgorI34gIiAgLS1kaXItZmlsZT08cGF0aD4gICAgICAgIHNwZWNpZnkgZmlsZSBuYW1lIG9mIGluZm8gZGlyZWN0b3J5IGZpbGUuXG4iCisjfiAiICAtLWluZm9kaXI9PGRpcmVjdG9yeT4gICAgc2FtZSBhcyAnLS1kaXItZmlsZT08ZGlyZWN0b3J5Pi9kaXInLlxuIgorI34gIiAgLS1pbmZvLWRpcj08ZGlyZWN0b3J5PiAgIGxpa2V3aXNlLlxuIgorI34gIiAgLS1rZWVwLW9sZCAgICAgICAgICAgICAgIGRvIG5vdCByZXBsYWNlIGVudHJpZXMgbm9yIHJlbW92ZSBlbXB0eSBvbmVzLlxuIgorI34gIiAgLS1yZW1vdmUgICAgICAgICAgICAgICAgIHJlbW92ZSB0aGUgZW50cnkgc3BlY2lmaWVkIGJ5IDxmaWxlbmFtZT4gIgorI34gImJhc2VuYW1lLlxuIgorI34gIiAgLS1yZW1vdmUtZXhhY3RseSAgICAgICAgIHJlbW92ZSB0aGUgZXhhY3QgPGZpbGVuYW1lPiBlbnRyeS5cbiIKKyN+ICIgIC0tdGVzdCAgICAgICAgICAgICAgICAgICBlbmFibGVzIHRlc3QgbW9kZSAobm8gYWN0aW9ucyB0YWtlbikuXG4iCisjfiAiICAtLWRlYnVnICAgICAgICAgICAgICAgICAgZW5hYmxlcyBkZWJ1ZyBtb2RlIChzaG93IG1vcmUgaW5mb3JtYXRpb24pLlxuIgorI34gIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIGRvIG5vdCBzaG93IG91dHB1dCBtZXNzYWdlcy5cbiIKKyN+ICIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorI34gIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJIYXN6bsOhbGF0OiAlcyBbPGxlaGV0xZFzw6lnZWs+IC4uLl0gWy0tXSA8ZsOhamxuw6l2PlxuIgorI34gIlxuIgorI34gIkxlaGV0xZFzw6lnZWs6XG4iCisjfiAiICAtLXNlY3Rpb24gPHJlZ2V4cD4gPGPDrW0+XG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgw7pqIGJlamVneXrDqXN0IGhlbHlleiBhIDxyZWdleD4gc3pha2FzemJhXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFneSBsw6l0cmVob3ogZWd5IDxjw61tPiBuZXbFsXQsIGhhIG5lbSAiCisjfiAibMOpdGV6aWsuXG4iCisjfiAiICAtLW1lbnVlbnRyeT08c3rDtnZlZz4gICAgIGJlw6FsbMOtdGphIGEgbWVuw7wgYmVqZWd5esOpc3QuXG4iCisjfiAiICAtLWRlc2NyaXB0aW9uPTxzesO2dmVnPiAgIGJlw6FsbMOtdGphIGEgbWVuw7wgYmVqZWd5esOpcyBsZcOtcsOhc8OhdC5cbiIKKyN+ICIgIC0taW5mby1maWxlPTzDtnN2w6lueT4gICAgIG1lZ2FkamEgYXogaW5mbyBmw6FqbCB0ZWxlcMOtdMWRIGvDtm55dnTDoXLDoXQuXG4iCisjfiAiICAtLWRpci1maWxlPTzDtnN2w6lueT4gICAgICBtZWdhZGphIGF6IGluZm8ga8O2bnl2dMOhciBmw6FqbCBuZXbDqXQuXG4iCisjfiAiICAtLWluZm9kaXI9PGvDtm55dnTDoXI+ICAgICB1Z3lhbmF6LCBtaW50IGEgJy0tZGlyLWZpbGU9PGvDtm55dnTDoXI+L2RpcicuXG4iCisjfiAiICAtLWluZm8tZGlyPTxrw7ZueXZ0w6FyPiAgICBoYXNvbmzDsy5cbiIKKyN+ICIgIC0ta2VlcC1vbGQgICAgICAgICAgICAgICBuZW0gY3NlcsOpbCBiZWplZ3l6w6lzdCDDqXMgbmVtIHTDtnLDtmwgw7xyZXNla2V0LlxuIgorI34gIiAgLS1yZW1vdmUgICAgICAgICAgICAgICAgIHTDtnJsaSBhIDxmw6FqbG7DqXY+IGFsYXBuw6l2dmVsIG1lZ2Fkb3R0ICIKKyN+ICJiZWplZ3l6w6lzdC5cbiIKKyN+ICIgIC0tcmVtb3ZlLWV4YWN0bHkgICAgICAgICB0w7ZybGkgYSA8ZsOhamxuw6l2PiBiZWplZ3l6w6lzdC5cbiIKKyN+ICIgIC0tdGVzdCAgICAgICAgICAgICAgICAgICB0ZXN6dCBtw7NkIChuZW0gdsOpZ2V6IG3FsXZlbGV0ZXQpLlxuIgorI34gIiAgLS1kZWJ1ZyAgICAgICAgICAgICAgICAgIGhpYmEgbcOzZCAodMO2YmIgaW5mb3Jtw6FjacOzdCBtdXRhdCkuXG4iCisjfiAiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgbmVtIG11dGF0IMO8emVuZXRla2V0LlxuIgorI34gIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIGUgc8O6Z8OzLlxuIgorI34gIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHZlcnppw7MgbWVnamVsZW7DrXTDqXNlLlxuIgorCisjfiBtc2dpZCAiY291bGQgbm90IG9wZW4gc3RkZXJyIGZvciBvdXRwdXQhICVzIgorI34gbXNnc3RyICJzdGRlcnIgbmVtIG55aXRoYXTDsyBtZWcgYSBraW1lbmV0aGV6ISAlcyIKKworI34gbXNnaWQgIiVzOiAtLXNlY3Rpb24gbmVlZHMgdHdvIG1vcmUgYXJncyIKKyN+IG1zZ3N0ciAiJXM6IGEgLS1zZWN0aW9uIG3DqWcgMiBhcmcuLW90IHbDoXIiCisKKyN+IG1zZ2lkICIlczogb3B0aW9uIC0tJXMgaXMgZGVwcmVjYXRlZCAoaWdub3JlZCkiCisjfiBtc2dzdHIgIiVzOiAtLSVzIGxlaGV0xZFzw6lnIGVsYXZ1bHQgKGtpaGFneXZhKSIKKworI34gbXNnaWQgIiVzOiB1bmtub3duIG9wdGlvbiBgJXMnIgorI34gbXNnc3RyICIlczogaXNtZXJldGxlbiBgJXMnIGxlaGV0xZFzw6lnIgorCisjfiBtc2dpZCAiJXM6IHRvbyBtYW55IGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiJXM6IHTDumwgc29rIGFyZ3VtZW50dW0iCisKKyN+IG1zZ2lkICIlczogLS1zZWN0aW9uIGlnbm9yZWQgd2l0aCAtLXJlbW92ZSIKKyN+IG1zZ3N0ciAiJXM6IC0tc2VjdGlvbiBraWhhZ3l2YSAtLXJlbW92ZS12YWwiCisKKyN+IG1zZ2lkICIlczogLS1kZXNjcmlwdGlvbiBpZ25vcmVkIHdpdGggLS1yZW1vdmUiCisjfiBtc2dzdHIgIiVzOiAtLWRlc2NyaXB0aW9uIGtpaGFneXZhIC0tcmVtb3ZlLXZhbCIKKworI34gbXNnaWQgIiVzOiB0ZXN0IG1vZGUgLSBkaXIgZmlsZSB3aWxsIG5vdCBiZSB1cGRhdGVkIgorI34gbXNnc3RyICIlczogcHLDs2JhIG3Ds2QgLSBhIGt2dHIuIGbDoWpsIG5lbSBsZXN6IGZyaXNzw610dmUiCisKKyN+IG1zZ2lkICIlczogd2FybmluZywgaWdub3JpbmcgY29uZnVzaW5nIElORk8tRElSLUVOVFJZIGluIGZpbGUuIgorI34gbXNnc3RyICIlczogZmlneWVsZW0sIGtpaGFneW9tIGEgemF2YXJvcyBJTkZPLURJUi1FTlRSWS10IGEgZsOhamxiYW4uIgorCisjfiBtc2dpZCAiaW52YWxpZCBpbmZvIGVudHJ5IgorI34gbXNnc3RyICJyb3NzeiBpbmZvIGJlamVneXrDqXMiCisKKyN+IG1zZ2lkICIiCisjfiAiXG4iCisjfiAiTm8gYFNUQVJULUlORk8tRElSLUVOVFJZJyBhbmQgbm8gYFRoaXMgZmlsZSBkb2N1bWVudHMnLlxuIgorI34gIiVzOiB1bmFibGUgdG8gZGV0ZXJtaW5lIGRlc2NyaXB0aW9uIGZvciBgZGlyJyBlbnRyeSAtIGdpdmluZyB1cFxuIgorI34gbXNnc3RyICIiCisjfiAiXG4iCisjfiAiTmluY3MgYFNUQVJULUlORk8tRElSLUVOVFJZJyBzZW0gYFRoaXMgZmlsZSBkb2N1bWVudHMnLlxuIgorI34gIiVzOiBuZW0gdHVkb20gbWVnaGF0w6Fyb3puaSBhIGxlw61yw6FzdCBhIGBkaXInIGJlamVneXrDqXNoZXogLSBmZWxhZG9tXG4iCisKKyN+IG1zZ2lkICIlczogbm8gZmlsZSAlcywgcmV0cmlldmluZyBiYWNrdXAgZmlsZSAlcy4iCisjfiBtc2dzdHIgIiVzOiBuaW5jcyAlcyBmw6FqbCwgJXMgbcOhc29sYXQgZsOhamx0IGhhc3puw6Fsb20uIgorCisjfiBtc2dpZCAiJXM6IG5vIGJhY2t1cCBmaWxlICVzIGF2YWlsYWJsZSwgcmV0cmlldmluZyBkZWZhdWx0IGZpbGUuIgorI34gbXNnc3RyICIlczogbmluY3MgJXMgbcOhc29sYXQgZsOhamwsIGF6IGFsYXDDqXJ0ZWxtZXpldHRldCBoYXN6bsOhbG9tLiIKKworI34gbXNnaWQgIiVzOiBubyBiYWNrdXAgZmlsZSAlcyBhdmFpbGFibGUuIgorI34gbXNnc3RyICIlczogbmluY3MgJXMgbcOhc29sYXQgZsOhamwuIgorCisjfiBtc2dpZCAiJXM6IG5vIGRlZmF1bHQgZmlsZSAlcyBhdmFpbGFibGUsIGdpdmluZyB1cC4iCisjfiBtc2dzdHIgIiVzOiBuaW5jcyBhbGFwICVzIGbDoWpsLCBmZWxhZG9tLiIKKworI34gbXNnaWQgIiVzOiBmYWlsZWQgdG8gbG9jayBkaXIgZm9yIGVkaXRpbmchICVzIgorI34gbXNnc3RyICIlczogc2lrZXJ0ZWxlbiBrw7ZueXZ0w6FyIHrDoXLDoXMgc3plcmtlc3p0w6lzaGV6ISAlcyIKKworI34gbXNnaWQgInRyeSBkZWxldGluZyAlcz8iCisjfiBtc2dzdHIgInTDtnJsw7ZkICVzLXQ/IgorCisjfiBtc2dpZCAidW5hYmxlIHRvIG9wZW4gJXM6ICVzIgorI34gbXNnc3RyICIlcyBtZWdueWl0w6FzYSBzaWtlcnRlbGVuOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byBjbG9zZSAlcyBhZnRlciByZWFkOiAlcyIKKyN+IG1zZ3N0ciAibmVtIHR1ZG9tIGxlesOhcm5pICVzLXQgb2x2YXPDoXMgdXTDoW46ICVzIgorCisjfiBtc2dpZCAiJXM6IGV4aXN0aW5nIGVudHJ5IGZvciBgJXMnIG5vdCByZXBsYWNlZCIKKyN+IG1zZ3N0ciAiJXM6IG5lbSBjc2Vyw6lsdGVtIGAlcycgYmVqZWd5esOpc8OpdCIKKworI34gbXNnaWQgIiVzOiByZXBsYWNpbmcgZXhpc3RpbmcgZGlyIGVudHJ5IGZvciBgJXMnIgorI34gbXNnc3RyICIlczogY3NlcsOpbGVtIGAlcycga8O2bnl2dMOhciBiZWplZ3l6w6lzw6l0IgorCisjfiBtc2dpZCAiJXM6IGNyZWF0aW5nIG5ldyBzZWN0aW9uIGAlcyciCisjfiBtc2dzdHIgIiVzOiDDumogYCVzJyBzemFrYXN6IGzDqXRyZWhvesOhc2EiCisKKyN+IG1zZ2lkICIlczogbm8gc2VjdGlvbnMgeWV0LCBjcmVhdGluZyBNaXNjZWxsYW5lb3VzIHNlY3Rpb24gdG9vLiIKKyN+IG1zZ3N0ciAiIgorI34gIiVzOiBuaW5jc2VuZWsgbcOpZyBzemFrYXN6b2ssIGEgTWlzY2VsbGFuZW91cyBzemFrYXN6dCBpcyBsw6l0cmVob3pvbS4iCisKKyN+IG1zZ2lkICIlczogbm8gc2VjdGlvbiBzcGVjaWZpZWQgZm9yIG5ldyBlbnRyeSwgcGxhY2luZyBhdCBlbmQiCisjfiBtc2dzdHIgIiVzOiBuaW5jcyBtZWdhZHZhIHN6YWthZCBheiDDumogYmVqZWd5esOpc2hleiwgYSB2w6lnw6lyZSByYWtvbSIKKworI34gbXNnaWQgIiVzOiBkZWxldGluZyBlbnRyeSBgJXMgLi4uJyIKKyN+IG1zZ3N0ciAiJXM6IGAlcyAuLi4nIGJlamVneXrDqXMgdMO2cmzDqXNlIgorCisjfiBtc2dpZCAiJXM6IGVtcHR5IHNlY3Rpb24gYCVzJyBub3QgcmVtb3ZlZCIKKyN+IG1zZ3N0ciAiJXM6IGAlcycgw7xyZXMgc3pha2FzeiBuaW5jcyBlbHTDoXZvbMOtdHZhIgorCisjfiBtc2dpZCAiJXM6IGRlbGV0aW5nIGVtcHR5IHNlY3Rpb24gYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IGAlcycgw7xyZXMgc3pha2FzeiB0w7ZybMOpc2UiCisKKyN+IG1zZ2lkICIlczogbm8gZW50cnkgZm9yIGZpbGUgYCVzJyBhbmQgbWVudSBlbnRyeSBgJXMnIgorI34gbXNnc3RyICIlczogbmluY3MgYmVqZWd5esOpcyBgJXMnIGbDoWpsaG96IMOpcyBgJXMnIG1lbsO8IGJlamVneXrDqXMiCisKKyN+IG1zZ2lkICIlczogbm8gZW50cnkgZm9yIGZpbGUgYCVzJyIKKyN+IG1zZ3N0ciAiJXMgbmluY3MgYmVqZWd5esOpcyBlIGbDoWpsaG96OiBgJXMnIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGJhY2t1cCBvbGQgJXMsIGdpdmluZyB1cDogJXMiCisjfiBtc2dzdHIgIm5lbSB0dWRvbSBtZW50ZW5pIGEgcsOpZ2kgJXMtdCwgZmVsYWRvbTogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgJXM6ICVzIgorI34gbXNnc3RyICJuZW0gdHVkb20gdGVsZXDDrXRlbmkgYXogw7pqICVzLXQ6ICVzIgorCisjfiBtc2dpZCAiJXM6IGNvdWxkIG5vdCBiYWNrdXAgJXMgaW4gJXM6ICVzIgorI34gbXNnc3RyICIlczogbmVtIHR1ZG9tIG1lbnRlbmkgJXMtdCBpdHQ6ICVzOiAlcyIKKworI34gbXNnaWQgIiVzOiB3YXJuaW5nIC0gdW5hYmxlIHRvIHVubG9jayAlczogJXMiCisjfiBtc2dzdHIgIiVzOiBmaWd5ZWxlbSAtIG5lbSB0dWRvbSBraW9sZGFuaSAlcy10OiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byByZWFkICVzOiAlZCIKKyN+IG1zZ3N0ciAiJXMgb2x2YXPDoXNhIHNpa2VydGVsZW46ICVkIgorCisjfiBtc2dpZCAiZGJnOiAlcyIKKyN+IG1zZ3N0ciAiaGJrOiAlcyIKKworI34gbXNnaWQgImZhaWxlZCB0byBvcGVuIHRtcGZpbGUgKGNvbnRyb2wpLCAlcyIKKyN+IG1zZ3N0ciAiYXogaWRlaWdsZW5lcyBmw6FqbCAodmV6w6lybMWRKSBtZWdueWl0w6FzYSBtZWdoacO6c3VsdCwgJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gb3BlbiB0bXBmaWxlIChkYXRhKSwgJXMiCisjfiBtc2dzdHIgInRtcGbDoWpsIG1lZ255aXTDoXNhIHNpa2VydGVsZW4gKGFkYXQpLCAlcyIKKworI34gbXNnaWQgImludmFsaWQgbnVtYmVyIGZvciAtLWNvbW1hbmQtZmQiCisjfiBtc2dzdHIgIsOpcnbDqW55dGVsZW4gc3rDoW0gYSAtLWNvbW1hbmQtZmQgc3rDoW3DoXJhIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHJld2luZCBhdCBzdGFydCBvZiB2c25wcmludGYiCisjfiBtc2dzdHIgIm5lbSBsZWhldCB2aXNzemHDoWxsbmkgYSB2c25wcmludGYgZWxlasOpcmUiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gdHJ1bmNhdGUgaW4gdnNucHJpbnRmIgorI34gbXNnc3RyICJuZW0gbGVoZXQgY3NvbmtvbG5pIGEgdnNucHJpbnRmLWJlbiIKKworI34gbXNnaWQgIndyaXRlIGVycm9yIGluIHZzbnByaW50ZiIKKyN+IG1zZ3N0ciAiw61yw6FzaSBoaWJhIGEgdnNucHJpbnRmLWJlbiIKKworI34gbXNnaWQgInVuYWJsZSB0byBzdGF0IGluIHZzbnByaW50ZiIKKyN+IG1zZ3N0ciAibmVtIGxlaGV0IHN0YXQtb2xuaSBhIHZzbnByaW50Zi1iZW4iCisKKyN+IG1zZ2lkICJTeXN0ZW0gZXJyb3Igbm8uJWQiCisjfiBtc2dzdHIgIlJlbmRzemVyaGliYSAtICVkIgorCisjfiBtc2dpZCAiU2lnbmFsIG5vLiVkIgorI34gbXNnc3RyICJTemlnbsOhbCAtICVkIgorCisjfiBtc2dpZCAiZHBrZzogd2FybmluZyAtICVzIHJldHVybmVkIGVycm9yIGV4aXQgc3RhdHVzICVkXG4iCisjfiBtc2dzdHIgImRwa2c6IGZpZ3llbGVtIC0gJXMgJWQgaGliYWvDs2RkYWwga2lsw6lwZXR0XG4iCisKKyN+IG1zZ2lkICJkcGtnOiB3YXJuaW5nIC0gJXMga2lsbGVkIGJ5IHNpZ25hbCAoJXMpJXNcbiIKKyN+IG1zZ3N0ciAiZHBrZzogZmlneWVsZW0gLSAlcyBtZWfDtmx2ZSwgYSBoYWzDoWx0IG9rb3rDsyBqZWw6ICglcyklc1xuIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHJlYWQgYCVzJyBhdCBsaW5lICVkIgorI34gbXNnc3RyICJzaWtlcnRlbGVuIGAlcycgb2x2YXPDoXMgYSVkLiBzb3JiYW4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAicGFyc2UgZXJyb3IsIGluIGZpbGUgYCUuMjU1cycgbmVhciBsaW5lICVkIgorI34gbXNnc3RyICIlcywgZSBmw6FqbCBgJS4yNTVzJyAlZC4gc29yw6Fuw6FsIgorCisjfiBtc2dpZCAiIHBhY2thZ2UgYCUuMjU1cyciCisjfiBtc2dzdHIgIiBgJS4yNTVzJyBjc29tYWciCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gcmVhbGxvYyBmb3IgdmFyaWFibGUgYnVmZmVyIgorI34gbXNnc3RyICJuZW0gdHVkdGFtIMO6anJhZm9nbGFsbmkgYSB2w6FsdG96w7MgcHVmZmVyIHN6w6Ftw6FyYSIKKworI34gbXNnaWQgInByb2Nlc3NfYXJjaGl2ZSAuLi4gIGFscmVhZHkgZGlzYXBwZWFyZWQgISIKKyN+IG1zZ3N0ciAicHJvY2Vzc19hcmNoaXZlIC4uLiBtw6FyIGVsdMWxbnQhIgorCisjfiBtc2dpZCAiZHBrZzogJXM6IHdhcm5pbmcgLSBmYWlsZWQgdG8gcmVtb3ZlIGAlLjI1MHMnOiAlc1xuIgorI34gbXNnc3RyICJkcGtnOiAlczogZmlneWVsZW0gLSBgJS4yNTBzJyBlbHTDoXZvbMOtdMOhc2EgbWVnaGnDunN1bHQ6ICVzXG4iCisKKyN+IG1zZ2lkICItLWF1ZGl0IGRvZXMgbm90IHRha2UgYW55IGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiYXogLS1hdWRpdCBuZW0gdsOhciBhcmd1bWVudHVtb3QiCisKKyN+IG1zZ2lkICItLXlldC10by11bnBhY2sgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnRzIgorI34gbXNnc3RyICJhIC0teWV0LXRvLXVucGFjayBuZW0gdsOhciBhcmd1bWVudHVtb3QiCisKKyN+IG1zZ2lkICItLWFzc2VydC0qIGRvZXMgbm90IHRha2UgYW55IGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiYSAtLWFzc2VydC0qIG5lbSB2w6FyIGFyZ3VtZW50dW1vdCIKKworI34gbXNnaWQgIi0tcHJlZGVwLXBhY2thZ2UgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnQiCisjfiBtc2dzdHIgImEgLS1wcmVkZXAtcGFja2FnZSBuZW0gdsOhciBhcmd1bWVudHVtb3QiCisKKyN+IG1zZ2lkICItLXByaW50LWFyY2hpdGVjdHVyZSBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudCIKKyN+IG1zZ3N0ciAiYSAtLXByaW50LWFyY2hpdGVjdHVyZSBuZW0gdsOhciBhcmd1bWVudHVtb3QiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gc3RhdCBpbnN0YWxsZWQgJXMgc2NyaXB0IGAlLjI1MHMnIgorI34gbXNnc3RyICJuZW0gbGVsZW0gdGVsZXDDrXRldHQgJXMgYCUuMjUwcycgc3prcmlwdGrDqXQiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gc3RhdCBuZXcgJXMgc2NyaXB0IGAlLjI1MHMnIgorI34gbXNnc3RyICJuZW0gbGVsZW0gYXogw7pqICVzIGAlLjI1MHMnIHN6a3JpcHRqw6l0IgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGV4ZWN1dGUgbmV3ICVzIgorI34gbXNnc3RyICJheiDDumogJXMgZnV0dGF0w6FzYSBtZWdoacO6c3VsdCIKKworI34gbXNnaWQgImRwa2c6IHdhcm5pbmcgLSB1bmFibGUgdG8gc3RhdCAlcyBgJS4yNTBzJzogJXNcbiIKKyN+IG1zZ3N0ciAiZHBrZzogZmlneWVsZW0gLSBuZW0gbGVsZW0gJXMgYCUuMjUwcyctdDogJXNcbiIKKworI34gbXNnaWQgIi0tc2V0LXNlbGVjdGlvbnMgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnQiCisjfiBtc2dzdHIgIkEgLS1zZXQtc2VsZWN0aW9ucyBuZW0gdsOhciBhcmd1bWVudHVtb3QiCisKKyN+IG1zZ2lkICItLWNsZWFyLXNlbGVjdGlvbnMgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnQiCisjfiBtc2dzdHIgIkEgLS1jbGVhci1zZWxlY3Rpb25zIG5lbSB2w6FyIGFyZ3VtZW50dW1vdCIKKworI34gbXNnaWQgIi0tYnVpbGQgbmVlZHMgYSBkaXJlY3RvcnkgYXJndW1lbnQiCisjfiBtc2dzdHIgImEgLS1idWlsZCBlZ3kga8O2bnl2dMOhciBhcmd1bWVudHVtb3QgdsOhciIKKworI34gbXNnaWQgIiIKKyN+ICJkcGtnLWRlYjogd2FybmluZywgbm90IGNoZWNraW5nIGNvbnRlbnRzIG9mIGNvbnRyb2wgYXJlYS5cbiIKKyN+ICJkcGtnLWRlYjogYnVpbGRpbmcgYW4gdW5rbm93biBwYWNrYWdlIGluIGAlcycuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJkcGtnLWRlYjogZmlneWVsZW0sIG5lbSBlbGxlbsWRcnrFkW0gYXogZWxsZW7FkXJ6xZEgdGVyw7xsZXQgdGFydGFsbcOhdC5cbiIKKyN+ICJkcGtnLWRlYjogaXNtZXJldGxlbiBjc29tYWcgw6lww610w6lzZSBpdHQ6IGAlcycuXG4iCisKKyN+IG1zZ2lkICJJbnRlcm5hbCBlcnJvciwgY29tcHJlc3NfdHlwZSBgJWknIHVua25vd24hIgorI34gbXNnc3RyICJCZWxzxZEgaGliYSwgYCVpJyB0w7Ztw7Zyw610xZEgdMOtcHVzIGlzbWVyZXRsZW4hIgorCisjfiBtc2dpZCAiLS1qb2luIHJlcXVpcmVzIG9uZSBvciBtb3JlIHBhcnQgZmlsZSBhcmd1bWVudHMiCisjfiBtc2dzdHIgImEgLS1qb2luIGVneSB2YWd5IHTDtmJiIHLDqXN6IGbDoWpsIGFyZ3VtZW50dW1vdCB2w6FyIgorCisjfiBtc2dpZCAiLS1saXN0cSBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudHMiCisjfiBtc2dzdHIgImEgLS1saXN0cSBuZW0gdsOhciBhcmd1bWVudHVtb3QiCisKKyN+IG1zZ2lkICIiCisjfiAiXG4iCisjfiAiQ29weXJpZ2h0IChDKSAxOTk2IEtpbS1NaW5oIEthcGxhbi4iCisjfiBtc2dzdHIgIiIKKyN+ICJcbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDE5OTYgS2ltLU1pbmggS2FwbGFuLiIKKworI34gbXNnaWQgIiIKKyN+ICJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gWy0tXSBbPGRpcm5hbWU+XVxuIgorI34gIlxuIgorI34gIk9wdGlvbnM6XG4iCisjfiAiICAtLXVuc2FmZSAgICAgc2V0IHNvbWUgYWRkaXRpb25hbCBwb3NzaWJseSB1c2VmdWwgb3B0aW9ucy5cbiIKKyN+ICIgICAgICAgICAgICAgICB3YXJuaW5nOiB0aGlzIG9wdGlvbiBtYXkgZ2FyYmxlIGFuIG90aGVyd2lzZSBjb3JyZWN0ICIKKyN+ICJmaWxlLlxuIgorI34gIiAgLS1oZWxwICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisjfiAiICAtLXZlcnNpb24gICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIkhhc3puw6FsYXQ6ICVzIFs8bGVoZXTFkXPDqWc+IC4uLl0gWy0tXSBbPGvDtm55dnTDoXJfbsOpdj5dXG4iCisjfiAiXG4iCisjfiAiTGVoZXTFkXPDqWdlazpcbiIKKyN+ICIgIC0tdW5zYWZlICAgICBww6FyIHRvdsOhYmJpIHRhbMOhbiBoYXN6bm9zIG9wY2nDsyBiZcOhbGzDrXTDoXNhLlxuIgorI34gIiAgICAgICAgICAgICAgIGZpZ3llbGVtOiBlIGxlaGV0xZFzw6lnIGVscm9udGhhdCBlZ3kgYW3Dumd5IGtvcnJla3QgZsOhamx0LlxuIgorI34gIiAgLS1oZWxwICAgICAgIGUgc8O6Z8OzIG11dGF0w6FzYS5cbiIKKyN+ICIgIC0tdmVyc2lvbiAgICB2ZXJ6acOzIG11dGF0w6FzYS5cbiIKKworI34gbXNnaWQgImZhaWxlZCB0byBpbnN0YWxsICVzOyBpdCB3aWxsIGJlIGxlZnQgYXMgJXM6ICVzIgorI34gbXNnc3RyICIlcyB0ZWxlcMOtdMOpc2Ugc2lrZXJ0ZWxlbjsgbWFyYWQgbWludCAlczogJXMiCisKKyN+IG1zZ2lkICIlczogdW5hYmxlIHRvIHVubG9jayAlczogJXMiCisjfiBtc2dzdHIgIiVzOiBuZW0gdHVkb20ga2lvbGRhbmkgJXMtdDogJXMiCisKKyN+IG1zZ2lkICIlcyAtIHN0YXR1cyBpcyAlcy4iCisjfiBtc2dzdHIgIiVzIC0gw6FsbGFwb3Q6ICVzLiIKKworI34gbXNnaWQgIiBsaW5rIHVucmVhZGFibGUgLSAlcyIKKyN+IG1zZ3N0ciAiIGzDoW5jIG9sdmFzaGF0YXRsYW4gLSAlcyIKKworI34gbXNnaWQgIkxlYXZpbmcgJXMgKCVzKSBwb2ludGluZyB0byAlcy4iCisjfiBtc2dzdHIgIk1lZ2hhZ3lvbSAlcyAoJXMpLXQgZXplbjogJXMiCisKKyN+IG1zZ2lkICJVcGRhdGluZyAlcyAoJXMpIHRvIHBvaW50IHRvICVzLiIKKyN+IG1zZ3N0ciAiRnJpc3PDrXRlbSAlcyAoJXMpLXQgZXJyZTogJXMiCisKKyN+IG1zZ2lkICJSZW1vdmluZyAlcyAoJXMpLCBub3QgYXBwcm9wcmlhdGUgd2l0aCAlcy4iCisjfiBtc2dzdHIgIlTDtnJsw7ZtICVzICglcyktdCwgbmVtIGlsbGlrIGVoaGV6OiAlcy4iCisKKyN+IG1zZ2lkICIiCisjfiAiQ2hlY2tpbmcgYXZhaWxhYmxlIHZlcnNpb25zIG9mICVzLCB1cGRhdGluZyBsaW5rcyBpbiAlcyAuLi5cbiIKKyN+ICIoWW91IG1heSBtb2RpZnkgdGhlIHN5bWxpbmtzIHRoZXJlIHlvdXJzZWxmIGlmIGRlc2lyZWQgLSBzZWUgYG1hbiBsbicuKSIKKyN+IG1zZ3N0ciAiIgorI34gIiVzIGVsw6lyaGV0xZEgdmVyemnDs2kgZWxsZW7FkXJ6w6lzZSwgbMOhbmNvayBmcmlzc8OtdMOpc2UgaXR0OiAlcyAuLi5cbiIKKyN+ICIoTWFnYWQgaXMgbcOzZG9zw610aGF0b2QgZXpla2V0IC0gbMOhc2QgYSBgbWFuIGxuJy10LikiCisKKyN+IG1zZ2lkICJzbGF2ZSBsaW5rIG5hbWUgJXMgZHVwbGljYXRlZCIKKyN+IG1zZ3N0ciAiJXMgc3pvbGdhIGzDoW5jIG7DqXYgbWVna2V0dMWResO2dHQiCisKKyN+IG1zZ2lkICJSZWNvdmVyaW5nIGZyb20gcHJldmlvdXMgZmFpbGVkIHVwZGF0ZSBvZiAlcyAuLi4iCisjfiBtc2dzdHIgIiVzIGVsxZF6xZEgc2lrZXJ0ZWxlbiBmcmlzc8OtdMOpc8OpbmVrIHZpc3N6YcOhbGzDrXTDoXNhLi4uIgorCisjfiBtc2dpZCAiTGFzdCBwYWNrYWdlIHByb3ZpZGluZyAlcyAoJXMpIHJlbW92ZWQsIGRlbGV0aW5nIGl0LiIKKyN+IG1zZ3N0ciAiVXRvbHPDsyAlcy10ICglcykgYWTDsyBjc29tYWcgZWx0w6F2b2zDrXR2YSwgdMO2cmzDtm0uIgorCisjfiBtc2dpZCAiIgorI34gIlRoZXJlIGlzIG9ubHkgMSBwcm9ncmFtIHdoaWNoIHByb3ZpZGVzICVzXG4iCisjfiAiKCVzKS4gTm90aGluZyB0byBjb25maWd1cmUuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJDc2FrIDEgcHJvZ3JhbSBhZGphIGV6dDogJXNcbiIKKyN+ICIoJXMpLiBOaW5jcyBiZcOhbGzDrXRhbmTDsy5cbiIKKworI34gbXNnaWQgIiIKKyN+ICJUaGVyZSBhcmUgJXMgYWx0ZXJuYXRpdmVzIHdoaWNoIHByb3ZpZGUgYCVzJy5cbiIKKyN+ICJcbiIKKyN+ICIgIFNlbGVjdGlvbiAgICBBbHRlcm5hdGl2ZVxuIgorI34gIi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4iCisjfiBtc2dzdHIgIiIKKyN+ICIlcyB2w6FsYXN6dMOhcyBhZGphIGV6dDogYCVzJy5cbiIKKyN+ICJcbiIKKyN+ICIgIEtpamVsw7Zsw6lzICAgIFbDoWxhc3p0w6FzXG4iCisjfiAiLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiIKKworI34gbXNnaWQgImVycm9yIHdyaXRpbmcgc3Rkb3V0OiAlcyIKKyN+IG1zZ3N0ciAiaGliYSBzdGRvdXQgw61yw6Fza29yOiAlcyIKKworI34gbXNnaWQgImVycm9yIG9yIGVvZiByZWFkaW5nICVzIGZvciAlcyAoJXMpIgorI34gbXNnc3RyICJlb2YgaGliYSAlcyBvbHZhc8Ohc2Frb3IgZWhoZXo6ICVzICglcykiCisKKyN+IG1zZ2lkICJtaXNzaW5nIG5ld2xpbmUgYWZ0ZXIgJXMiCisjfiBtc2dzdHIgImhpw6FueXrDsyDDumogc29yIGV6dXTDoW46ICVzIgorCisjfiBtc2dpZCAiU2VyaW91cyBwcm9ibGVtOiAlcyIKKyN+IG1zZ3N0ciAiS29tb2x5IGdvbmQ6ICVzIgorCisjfiBtc2dpZCAiY291bGRuJ3QgYWxsb2NhdGUgbWVtb3J5IGZvciBzdHJkdXAgaW4gZmluZHBhY2thZ2UoJXMpIgorI34gbXNnc3RyICIiCisjfiAibmVtIGxlaGV0IG1lbcOzcmnDoXQgZm9nbGFsbmkgYXogc3RyZHVwIHN6w6Ftw6FyYSBlYmJlbjogZmluZHBhY2thZ2UoJXMpIgorCisjfiBtc2dpZCAiRXJyb3IgYWxsb2NhdGluZyBtZW1vcnkgZm9yIGNmZ2ZpbGVuYW1lIgorI34gbXNnc3RyICJIaWJhIGEgY2ZnZmlsZW5hbWUgbWVtw7NyaWFmb2dsYWzDoXNha29yIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIG1hbGxvYyBmb3IgaW5mbyBmaWxlIGAlLjI1NXMnIgorI34gbXNnc3RyICJtYWxsb2MgYSBgJS4yNTVzJyBpbmbDsyBmw6FqbGhveiBzaWtlcnRlbGVuIgorCisjfiBtc2dpZCAiZGl2ZXJzaW9ucyBmaWxlIGhhcyB0b28tbG9uZyBsaW5lIG9yIEVPRiBbaV0iCisjfiBtc2dzdHIgImVsdMOpcsOtdMOpcyBmw6FqbGJhbiB0w7psIGhvc3N6w7ogc29yIHZhZ3kgRU9GIFtpXSIKKworI34gbXNnaWQgInJlYWQgZXJyb3IgaW4gZGl2ZXJzaW9ucyBbaWldIgorI34gbXNnc3RyICJkaXZlcnNpb25zIG9sdmFzw6FzIGhpYmEgW2lpXSIKKworI34gbXNnaWQgInVuZXhwZWN0ZWQgRU9GIGluIGRpdmVyc2lvbnMgW2lpXSIKKyN+IG1zZ3N0ciAidsOhcmF0bGFuIEVPRiBheiBlbHTDqXLDrXTDqXNiZW4gW2lpXSIKKworI34gbXNnaWQgImZnZXRzIGdhdmUgYW4gZW1wdHkgc3RyaW5nIGZyb20gZGl2ZXJzaW9ucyBbaWldIgorI34gbXNnc3RyICJmZ2V0cyDDvHJlcyBmw7x6w6lydCBhZG90dCBheiBlbHTDqXLDrXTDqXNixZFsIFtpaV0iCisKKyN+IG1zZ2lkICJkaXZlcnNpb25zIGZpbGUgaGFzIHRvby1sb25nIGxpbmUgb3IgRU9GIFtpaV0iCisjfiBtc2dzdHIgImVsdMOpcsOtdMOpcyBmw6FqbGJhbiB0w7psIGhvc3N6w7ogc29yIHZhZ3kgRU9GIFtpaV0iCisKKyN+IG1zZ2lkICJyZWFkIGVycm9yIGluIGRpdmVyc2lvbnMgW2lpaV0iCisjfiBtc2dzdHIgIm9sdmFzw6FzaSBoaWJhIGF6IGVsdMOpcsOtdMOpc2JlbiBbaWlpXSIKKworI34gbXNnaWQgInVuZXhwZWN0ZWQgRU9GIGluIGRpdmVyc2lvbnMgW2lpaV0iCisjfiBtc2dzdHIgInbDoXJhdGxhbiBFT0YgYXogZWx0w6lyw610w6lzYmVuIFtpaWldIgorCisjfiBtc2dpZCAiZmdldHMgZ2F2ZSBhbiBlbXB0eSBzdHJpbmcgZnJvbSBkaXZlcnNpb25zIFtpaWldIgorI34gbXNnc3RyICJmZ2V0cyDDvHJlcyBmw7x6w6lydCBhZG90dCBheiBlbHTDqXLDrXTDqXNixZFsIFtpaWldIgorCisjfiBtc2dpZCAiY291bGRuJ3QgbWFsbG9jIGluIGV4ZWNiYWNrZW5kIgorI34gbXNnc3RyICJzaWtlcnRlbGVuIG1hbGxvYyBheiBleGVjYmFja2VuZC1iZW4iCisKKyN+IG1zZ2lkICJjb3VsZG4ndCBzdHJkdXAgaW4gZXhlY2JhY2tlbmQiCisjfiBtc2dzdHIgInNpa2VydGVsZW4gc3RyZHVwIGF6IGV4ZWNiYWNrZW5kLWJlbiIKKworI34gbXNnaWQgImZhaWxlZCBhbGxvY2F0aW5nIG1lbW9yeSBmb3IgdmFyaWFibGUgYGN0cmxhcmVhJyIKKyN+IG1zZ3N0ciAiYSBgY3RybGFyZWEnIHbDoWx0b3rDsyBtZW3Ds3JpYSBsZWZvZ2xhbMOhc2Egc2lrZXJ0ZWxlbiIKKworI34gbXNnaWQgIkNhbm5vdCBnZXQgRU5PRU5UIHZhbHVlIGZyb20gJXM6ICVzIgorI34gbXNnc3RyICJOZW0ga2Fwb2sgRU5PRU5UIMOpcnTDqWtldCBpbm5lbjogJXM6ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGVuc3VyZSAlcyBub25leGlzdGVudDogJXMiCisjfiBtc2dzdHIgIm5lbSBiaXp0b3MsIGhvZ3kgJXMgbmVtIGzDqXRlemlrOiAlcyIKKworI34gbXNnaWQgInVuc3VwcG9ydGVkIGRlcGVuZGVuY3kgcHJvYmxlbSAtIG5vdCBpbnN0YWxsaW5nICUuMjUwcyIKKyN+IG1zZ3N0ciAibmVtIHTDoW1vZ2F0b3R0IGbDvGdnxZFzw6lnaSBnb25kIC0gJS4yNTBzIG5lbSB0ZWxlcMO8bCIKKworI34gbXNnaWQgInRvIgorI34gbXNnc3RyICJpZGU6IgorCisjfiBtc2dpZCAiZnJvbSIKKyN+IG1zZ3N0ciAiaW5uZW46IgorCisjfiBtc2dpZCAiZXJyb3IgcmVhZGluZyAlcyIKKyN+IG1zZ3N0ciAib2x2YXPDoXNpIGhpYmE6ICVzIgorCisjfiBtc2dpZCAidHdvIG1vZGVzIHNwZWNpZmllZDogJXMgYW5kIC0tJXMiCisjfiBtc2dzdHIgIjIgbcOzZCBtZWdhZHZhOiAlcyDDqXMgLS0lcyIKKworI34gbXNnaWQgIm1hbmZsYWciCisjfiBtc2dzdHIgIm1hbmZsYWciCisKKyN+IG1zZ2lkICIlczogZmFpbGVkIHRvIGV4ZWMgZ3ppcCAtZGMiCisjfiBtc2dzdHIgIiVzOiBzaWtlcnRlbGVuIGd6aXAgLWRjIGZ1dHRhdMOhcyIKKworI34gbXNnaWQgIiVzOiBmYWlsZWQgdG8gZXhlYyBiemlwMiAtZGMiCisjfiBtc2dzdHIgIiVzOiBzaWtlcnRlbGVuIGJ6aXAyIC1kYyBmdXR0YXTDoXMiCisKKyN+IG1zZ2lkICIlczogZmFpbGVkIHRvIGV4ZWMgYnppcDIgJXMiCisjfiBtc2dzdHIgIiVzOiBzaWtlcnRlbGVuIGJ6aXAyICVzIGZ1dHRhdMOhcyIKKworI34gbXNnaWQgImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzogdmVyc2lvbiBjb250YWlucyBgICciCisjfiBtc2dzdHIgImAlcycgbWV6xZEsIGhpdmF0a296w6FzIGVycmU6IGAlLjI1NXMnOiBgICcgYSB2ZXJ6acOzYmFuIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiVzOiBjbG9zZSAlcyBhZnRlciByZWFkOiAlcyIKKyN+IG1zZ3N0ciAic2lrZXJ0ZWxlbiBsZXrDoXLDoXMgb2x2YXPDoXMgdXTDoW46IGAlLjI1NXMnIgorCisjfiBtc2dpZCAiLS1hZG1pbmRpciBuZWVkcyBhIGRpcmVjdG9yeSBhcmd1bWVudCIKKyN+IG1zZ3N0ciAiYSAtLWFkbWluZGlyIDEga8O2bnl2dMOhciBhcmd1bWVudHVtb3QgdsOhciIKKworI34gbXNnaWQgIi0tcmVtb3ZlIG5lZWRzIGEgc2luZ2xlIGFyZ3VtZW50IgorI34gbXNnc3RyICJhIC0tcmVtb3ZlIDEgYXJndW1lbnR1bW90IHbDoXIiCisKKyN+IG1zZ2lkICItLXRydWVuYW1lIG5lZWRzIGEgc2luZ2xlIGFyZ3VtZW50IgorI34gbXNnc3RyICJhIC0tdHJ1ZW5hbWUgMSBhcmd1bWVudHVtb3QgdsOhciIKKworI34gbXNnaWQgImRwa2ctZGl2ZXJ0OiAlcyIKKyN+IG1zZ3N0ciAiZHBrZy1kaXZlcnQ6ICVzIgorCisjfiBtc2dpZCAiWW91IG5lZWQgLS1oZWxwIgorI34gbXNnc3RyICItLWhlbHAga2VsbCBuZWtlZCIKKworI34gbXNnaWQgIi0tcmVtb3ZlIG5lZWRzIG9uZSBhcmd1bWVudHMiCisjfiBtc2dzdHIgImEgLS1yZW1vdmUgMSBhcmd1bWVudHVtb3QgdsOhciIKKworI34gbXNnaWQgIi0tYWRtaW5kaXIgbmVlZHMgYSA8ZGlyZWN0b3J5PiBhcmd1bWVudCIKKyN+IG1zZ3N0ciAiYSAtLWFkbWluZGlyIGVneSA8a8O2bnl2dMOhcj4gYXJndW1lbnR1bW90IHbDoXIiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gb3BlbiAlczogJXMiCisjfiBtc2dzdHIgIm5lbSB0dWR0YW0gbWVnbnlpdG5pICVzLXQ6ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgJXMgYXMgJXMiCisjfiBtc2dzdHIgIm5lbSBzaWtlcsO8bHQgdGVsZXDDrXRlbmkgJXMtdCBtaW50ICVzIgorCisjfiBtc2dpZCAiICBQYWNrYWdlICIKKyN+IG1zZ3N0ciAiICBFIGNzb21hZzogIgorCisjfiBtc2dpZCAiIHdoaWNoIHByb3ZpZGVzICIKKyN+IG1zZ3N0ciAiIG1lbHkgYXogYWzDoWJiaXQgYWRqYTogIgorCisjfiBtc2dpZCAiIGlzIHRvIGJlIHJlbW92ZWQuXG4iCisjfiBtc2dzdHIgIiBlbHTDoXZvbMOtdMOhc3JhIGplbMO2bHQuXG4iCisKKyN+IG1zZ2lkICIgb24gc3lzdGVtIGlzICIKKyN+IG1zZ3N0ciAiIGEgcmVuZHN6ZXJlbiIKKworI34gbXNnaWQgIiBpcyBub3QgaW5zdGFsbGVkLlxuIgorI34gbXNnc3RyICIgbmluY3MgdGVsZXDDrXR2ZS5cbiIKKworI34gbXNnaWQgIiB0bzogJXNcbiIKKyN+IG1zZ3N0ciAiIGlkZTogJXNcbiIKKworI34gbXNnaWQgImZnZXRwb3MgZmFpbGVkIgorI34gbXNnc3RyICJzaWtlcnRlbGVuIGZnZXRwb3MiCisKKyN+IG1zZ2lkICJmc2V0cG9zIGZhaWxlZCIKKyN+IG1zZ3N0ciAic2lrZXJ0ZWxlbiBmc2V0cG9zIgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9wby9pZC5nbW8gYi9kcGtnLTEuMTYuMS4xL3BvL2lkLmdtbwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yZGYyMmM0Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9wby9pZC5nbW8KQmluYXJ5IGZpbGVzIGRpZmZlcgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9wby9pZC5wbyBiL2Rwa2ctMS4xNi4xLjEvcG8vaWQucG8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTViODhiMwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvcG8vaWQucG8KQEAgLTAsMCArMSw2NDkwIEBACisjIEluZG9uZXNpYW4gbWVzc2FnZXMgZm9yIGRwa2cKKyMgQ29weXJpZ2h0IChDKSAyMDAzIFNvZnR3YXJlIGluIHRoZSBQdWJsaWMgSW50ZXJlc3QsIEluYworIyBUaGlzIGZpbGUgaXMgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIHNhbWUgbGljZW5zZSBhcyBkcGtnLgorIyBEZWJpYW4gSW5kb25lc2lhIEwxME4gVGVhbSA8ZGViaWFuLWwxMG4taWRAZ3VyYW1lLmZpc2lrYS51aS5hYy5pZD4sIDIwMDQtMjAxMC4KKyMgVHJhbnNsYXRvcjoKKyMgCVBhcmxpbiBJbWFudWVsIDxwYXJsaW5faUB5YWhvby5jb20+LCAyMDA1CisjIAlBcmllZiBTIEZpdHJpYW50byA8YXJpZWZAZ3VyYW1lLmZpc2lrYS51aS5hYy5pZD4sIDIwMDUtMjAxMAorbXNnaWQgIiIKK21zZ3N0ciAiIgorIlByb2plY3QtSWQtVmVyc2lvbjogZHBrZyAxLjE1XG4iCisiUmVwb3J0LU1zZ2lkLUJ1Z3MtVG86IGRlYmlhbi1kcGtnQGxpc3RzLmRlYmlhbi5vcmdcbiIKKyJQT1QtQ3JlYXRpb24tRGF0ZTogMjAxMS0xMC0xNCAwNzoxMSswMjAwXG4iCisiUE8tUmV2aXNpb24tRGF0ZTogMjAxMC0xMS0yOCAyMDozNSswNzAwXG4iCisiTGFzdC1UcmFuc2xhdG9yOiBBcmllZiBTIEZpdHJpYW50byA8YXJpZWZAZ3VyYW1lLmZpc2lrYS51aS5hYy5pZD5cbiIKKyJMYW5ndWFnZS1UZWFtOiBEZWJpYW4gSW5kb25lc2lhIEwxME4gVGVhbSA8ZGViaWFuLWwxMG4taWRAZ3VyYW1lLmZpc2lrYS51aS4iCisiYWMuaWQ+XG4iCisiTGFuZ3VhZ2U6IGlkXG4iCisiTUlNRS1WZXJzaW9uOiAxLjBcbiIKKyJDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9VVRGLThcbiIKKyJDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiA4Yml0XG4iCisiUGx1cmFsLUZvcm1zOiBucGx1cmFscz0xLCBwbHVyYWw9MDtcbiIKKworIzogbGliL2Rwa2cvYXIuYzo2NgorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGNoYXJhY3RlciAnJWMnIGluIGFyY2hpdmUgJyUuMjUwcycgbWVtYmVyICclLjE2cycgc2l6ZSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9hci5jOjgxIGxpYi9kcGtnL2FyLmM6OTcgbGliL2Rwa2cvYXIuYzoxMDggbGliL2Rwa2cvYXIuYzoxMTIKKyM6IGxpYi9kcGtnL2FyLmM6MTM0IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTU0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBmaWxlICclcyciCittc2dzdHIgImdhZ2FsIG1lbnVsaXMga2UgYmVya2FzICclcyciCisKKyM6IGxpYi9kcGtnL2FyLmM6OTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZ2VuZXJhdGVkIGNvcnJ1cHQgYXIgaGVhZGVyIGZvciAnJXMnIgorbXNnc3RyICJtZW1idWF0IGhlYWRlciAnYXInIHRlcmtvcnVwc2kgdW50dWsgJyVzJyIKKworIzogbGliL2Rwa2cvYXIuYzoxMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGFyIG1lbWJlciBmaWxlICglcykiCittc2dzdHIgImdhZ2FsIG1lbmF0YSBzdGF0dXMgYmVya2FzIGFuZ2dvdGEgYXIgKCVzKSIKKworIzogbGliL2Rwa2cvYXIuYzoxMzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byBmc3RhdCBhciBtZW1iZXIgZmlsZSAoJXMpIgorbXNnaWQgImFyIG1lbWJlciBmaWxlICglcykiCittc2dzdHIgImdhZ2FsIG1lbmF0YSBzdGF0dXMgYmVya2FzIGFuZ2dvdGEgYXIgKCVzKSIKKworIzogbGliL2Rwa2cvYnVmZmVyLmM6MTk2CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZWFkIG9uIGJ1ZmZlciBjb3B5IGZvciAlcyIKK21zZ3N0ciAiZ2FnYWwgbWVtYmFjYSBzYWF0IG1lbnlhbGluIGJ1ZmZlciB1bnR1ayAlcyIKKworIzogbGliL2Rwa2cvYnVmZmVyLmM6MjEyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCBpbiB3cml0ZSBvbiBidWZmZXIgY29weSBmb3IgJXMiCittc2dzdHIgImdhZ2FsIG1lbnVsaXMgc2FhdCBtZW55YWxpbiBidWZmZXIgdW50dWsgJXMiCisKKyM6IGxpYi9kcGtnL2J1ZmZlci5jOjIyMAorIywgYy1mb3JtYXQKK21zZ2lkICJzaG9ydCByZWFkIG9uIGJ1ZmZlciBjb3B5IGZvciAlcyIKK21zZ3N0ciAicGVtYmFjYWFuIHRlcnB1dHVzIHNhYXQgbWVueWFsaW4gYnVmZmVyIHVudHVrICVzIgorCisjOiBsaWIvZHBrZy9idWZmZXIuYzoyODgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byBleGVjIHRhciIKK21zZ2lkICJmYWlsZWQgdG8gc2VlayAlcyIKK21zZ3N0ciAiZ2FnYWwgbWVuamFsYW5rYW4gcGVyaW50YWggdGFyIgorCisjOiBsaWIvZHBrZy9jb21tYW5kLmM6MTc4IGxpYi9kcGtnL2NvbW1hbmQuYzoyMDQgc3JjL2hlbHAuYzo2MjEKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTggc3JjL3Byb2Nlc3NhcmMuYzoxMzggc3JjL3Byb2Nlc3NhcmMuYzo0MzIKKyM6IHNyYy9wcm9jZXNzYXJjLmM6ODM5IGRwa2ctZGViL2J1aWxkLmM6NDU5IGRwa2ctZGViL2J1aWxkLmM6NTM4CisjOiBkcGtnLWRlYi9idWlsZC5jOjU2MSBkcGtnLWRlYi9leHRyYWN0LmM6MzE3IGRwa2ctZGViL2luZm8uYzo2NQorIzogZHBrZy1zcGxpdC9zcGxpdC5jOjY5IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo0NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGV4ZWN1dGUgJXMgKCVzKSIKK21zZ3N0ciAiZ2FnYWwgbWVuamFsYW5rYW4gJXMgKCVzKSIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzo4MworIywgYy1mb3JtYXQKK21zZ2lkICIlczogZGVjb21wcmVzc2lvbiIKK21zZ3N0ciAiJXM6IGRla29tcHJlc2kiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6ODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGNvbXByZXNzaW9uIgorbXNnc3RyICIlczoga29tcHJlc2kiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTEyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvciBiaW5kaW5nIGlucHV0IHRvIGd6aXAgc3RyZWFtIgorbXNnc3RyICIlczogc2FsYWggbWVuZ2lyaW1rYW4gbWFzdWthbiBrZSBzdHJlYW0gZ3ppcCIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgcmVhZCBlcnJvcjogJyVzJyIKK21zZ3N0ciAiJXM6IGFkYSBnYWxhdCBpbnRlcm5hbCBzYWF0IG1lbWJhY2EgZ3ppcDogJyVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxMzIgbGliL2Rwa2cvY29tcHJlc3MuYzoxMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgd3JpdGUgZXJyb3IiCittc2dzdHIgIiVzOiBhZGEgZ2FsYXQgaW50ZXJuYWwgc2FhdCBtZW51bGlzIGd6aXAiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTUwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvciBiaW5kaW5nIG91dHB1dCB0byBnemlwIHN0cmVhbSIKK21zZ3N0ciAiJXM6IHNhbGFoIG1lbmdpcmlta2FuIGtlbHVhcmFuIGtlIHN0cmVhbSBnemlwIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE1NworIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCByZWFkIGVycm9yIgorbXNnc3RyICIlczogYWRhIGdhbGF0IGludGVybmFsIHNhYXQgbWVtYmFjYSBnemlwIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE2NworIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCB3cml0ZSBlcnJvcjogJyVzJyIKK21zZ3N0ciAiJXM6IGFkYSBnYWxhdCBpbnRlcm5hbCBzYWF0IG1lbnVsaXMgZ3ppcDogJyVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgd3JpdGUgZXJyb3I6ICVzIgorbXNnc3RyICIlczogYWRhIGdhbGF0IGludGVybmFsIHNhYXQgbWVudWxpcyBnemlwOiAlcyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyMjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yIGJpbmRpbmcgaW5wdXQgdG8gYnppcDIgc3RyZWFtIgorbXNnc3RyICIlczogc2FsYWggbWVuZ2lyaW1rYW4gbWFzdWthbiBrZSBzdHJlYW0gYnppcDIiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiByZWFkIGVycm9yOiAnJXMnIgorbXNnc3RyICIlczogYWRhIGdhbGF0IGludGVybmFsIHNhYXQgbWVtYmFjYSBiemlwMjogJyVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyNDAgbGliL2Rwa2cvY29tcHJlc3MuYzoyNDQgbGliL2Rwa2cvY29tcHJlc3MuYzoyOTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIHdyaXRlIGVycm9yIgorbXNnc3RyICIlczogYWRhIGdhbGF0IGludGVybmFsIHNhYXQgbWVudWxpcyBiemlwMiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yIGJpbmRpbmcgb3V0cHV0IHRvIGJ6aXAyIHN0cmVhbSIKK21zZ3N0ciAiJXM6IHNhbGFoIG1lbmdpcmlta2FuIGtlbHVhcmFuIGtlIHN0cmVhbSBiemlwMiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIHJlYWQgZXJyb3IiCittc2dzdHIgIiVzOiBhZGEgZ2FsYXQgaW50ZXJuYWwgc2FhdCBtZW1iYWNhIGJ6aXAyIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI3NSBsaWIvZHBrZy9jb21wcmVzcy5jOjI4NgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgd3JpdGUgZXJyb3I6ICclcyciCittc2dzdHIgIiVzOiBhZGEgZ2FsYXQgaW50ZXJuYWwgbWVudWxpcyBiemlwMjogJyVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyODIKK21zZ2lkICJ1bmV4cGVjdGVkIGJ6aXAyIGVycm9yIgorbXNnc3RyICJnYWxhdCB0YWsgdGVyZHVnYSBwYWRhIGJ6aXAyIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjY4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1cGRhdGVzIGRpcmVjdG9yeSBjb250YWlucyBmaWxlIGAlLjI1MHMnIHdob3NlIG5hbWUgaXMgdG9vIGxvbmcgKGxlbmd0aD0lZCwgIgorIm1heD0lZCkiCittc2dzdHIgIiIKKyJkaXJla3RvcmkgJ3VwZGF0ZXMnIGJlcmlzaSBiZXJrYXMgJyUuMjUwcycgeWFuZyBuYW1hbnlhIHRlcmxhbHUgcGFuamFuZyBcbiIKKyIocGFuamFuZz0lZCwgbWFrcz0lZCkiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVwZGF0ZXMgZGlyZWN0b3J5IGNvbnRhaW5zIGZpbGVzIHdpdGggZGlmZmVyZW50IGxlbmd0aCBuYW1lcyAoYm90aCAlZCBhbmQgJWQpIgorbXNnc3RyICIiCisiZGlyZWt0b3JpICd1cGRhdGVzJyBiZXJpc2kgYmVya2FzIGRlbmdhbiBwYW5qYW5nIG5hbWFueWEgYmVyYmVkYSBcbiIKKyIoa2VkdWFueWEgJWQgZGFuICVkKSIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzo4NgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc2NhbiB1cGRhdGVzIGRpcmVjdG9yeSBgJS4yNTVzJyIKK21zZ3N0ciAidGlkYWsgZGFwYXQgbWVtaW5kYWkgZGlyZWt0b3JpICd1cGRhdGVzJyAnJS4yNTVzJyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlbW92ZSBpbmNvcnBvcmF0ZWQgdXBkYXRlIGZpbGUgJS4yNTVzIgorbXNnc3RyICJnYWdhbCBtZW1idWFuZyBiZXJrYXMgJ3VwZGF0ZScgZ2FidW5nYW4gJS4yNTVzIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEyMSBkcGtnLWRlYi9idWlsZC5jOjQ0NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGAlLjI1NXMnIgorbXNnc3RyICJnYWdhbCBtZW1idWF0ICclLjI1NXMnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEyNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmlsbCAlLjI1MHMgd2l0aCBwYWRkaW5nIgorbXNnc3RyICJnYWdhbCBtZW5naXNpICUuMjUwcyBkZW5nYW4gcGFkZGluZyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxMjcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoICUuMjUwcyBhZnRlciBwYWRkaW5nIgorbXNnc3RyICJHYWdhbCBtZW5nb3NvbmdrYW4gJS4yNTBzIHNldGVsYWggcGFkZGluZyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxMjkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNlZWsgdG8gc3RhcnQgb2YgJS4yNTBzIGFmdGVyIHBhZGRpbmciCittc2dzdHIgIkdhZ2FsIG1lbmNvYmEgbWVtdWxhaSAlLjI1MHMgc2V0ZWxhaCBwYWRkaW5nIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjE5NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBsb2NrIGZpbGUgJXMgZm9yIHRlc3RpbmciCittc2dzdHIgIkdhZ2FsIG1lbWJ1a2EgYmVya2FzIHBlbmd1bmNpICVzIHVudHVrIHVqaWNvYmEiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjIxCittc2dpZCAidW5hYmxlIHRvIG9wZW4vY3JlYXRlIHN0YXR1cyBkYXRhYmFzZSBsb2NrZmlsZSIKK21zZ3N0ciAiZ2FnYWwgbWVtYnVrYS9tZW1idWF0IGJlcmthcyBrdW5jaShsb2NrKSBiYXNpcyBkYXRhIHN0YXR1cyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyMzEKK21zZ2lkICJ5b3UgZG8gbm90IGhhdmUgcGVybWlzc2lvbiB0byBsb2NrIHRoZSBkcGtnIHN0YXR1cyBkYXRhYmFzZSIKK21zZ3N0ciAiQW5kYSB0aWRhayBtZW1pbGlraSBpemluIHVudHVrIG1lbmd1bmNpIGJhc2lzIGRhdGEgc3RhdHVzIGRwa2ciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjMzCisjLCBmdXp6eQorI3wgbXNnaWQgInVuYWJsZSB0byBsb2NrIGRwa2cgc3RhdHVzIGRhdGFiYXNlIgorbXNnaWQgImRwa2cgc3RhdHVzIGRhdGFiYXNlIgorbXNnc3RyICJnYWdhbCBtZW5ndW5jaSBiYXNpcyBkYXRhIHN0YXR1cyBkcGtnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjI1NworbXNnaWQgInJlcXVlc3RlZCBvcGVyYXRpb24gcmVxdWlyZXMgc3VwZXJ1c2VyIHByaXZpbGVnZSIKK21zZ3N0ciAib3BlcmFzaSB5YW5nIGRpbWludGEgbWVtYnV0dWhrYW4ga2V3ZW5hbmdhbiBzdXBlcnVzZXIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjYyCittc2dpZCAidW5hYmxlIHRvIGFjY2VzcyBkcGtnIHN0YXR1cyBhcmVhIgorbXNnc3RyICJnYWdhbCBtZW5nYWtzZXMgYXJlYSBzdGF0dXMgZHBrZyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyNjQKK21zZ2lkICJvcGVyYXRpb24gcmVxdWlyZXMgcmVhZC93cml0ZSBhY2Nlc3MgdG8gZHBrZyBzdGF0dXMgYXJlYSIKK21zZ3N0ciAib3BlcmFzaSBpbmkgbWVtYnV0dWhrYW4gYWtzZXMgYmFjYS90dWxpcyBrZSBhcmVhIHN0YXR1cyBkcGtnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjMwOQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVtb3ZlIG15IG93biB1cGRhdGUgZmlsZSAlLjI1NXMiCittc2dzdHIgImdhZ2FsIG1lbWJ1YW5nIGJlcmthcyAndXBkYXRlJyBzYXlhOiAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzQ3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiZ2FnYWwgbWVudWxpcyBzdGF0dXMgdGVyYmFydSBkYXJpICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM0OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgImdhZ2FsIG1lbmdvc29uZ2thbiBzdGF0dXMgdGVyYmFydSBkYXJpICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM1MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gdHJ1bmNhdGUgZm9yIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJnYWdhbCBtZW1vdG9uZyB1bnR1ayBzdGF0dXMgdGVyYmFydSBkYXJpICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM1MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZnN5bmMgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgImdhZ2FsIHNpbmtyb25pc2FzaSBiZXJrYXMgc3RhdHVzIHRlcmJhcnUgZGFyaSAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJnYWdhbCBtZW51dHVwIHN0YXR1cyB0ZXJiYXJ1IGRhcmkgJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzU4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJnYWdhbCBtZW1hc2FuZyBzdGF0dXMgdGVyYmFydSBkYXJpICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy9kaXIuYzo1MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHJlYWQgZmlsZWRlc2NyaXB0b3IgZmxhZ3MgZm9yICUuMjUwcyIKK21zZ2lkICJ1bmFibGUgdG8gZ2V0IGZpbGUgZGVzY3JpcHRvciBmb3IgZGlyZWN0b3J5ICclcyciCittc2dzdHIgImdhZ2FsIG1lbWJhY2EgdGFuZGEgZGVza3JpcHRvciBiZXJrYXMgdW50dWsgJS4yNTBzIgorCisjOiBsaWIvZHBrZy9kaXIuYzo1NAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHN5bmMgZmlsZSAnJXMnIgorbXNnaWQgInVuYWJsZSB0byBzeW5jIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICJnYWdhbCBzaW5rcm9uaXNhc2kgYmVya2FzICclcyciCisKKyM6IGxpYi9kcGtnL2Rpci5jOjY5IGxpYi9kcGtnL2Rpci5jOjEzMQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIG9wZW4gZmlsZSAnJXMnIgorbXNnaWQgInVuYWJsZSB0byBvcGVuIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICJnYWdhbCBtZW1idWthIGJlcmthcyAnJXMnIgorCisjOiBsaWIvZHBrZy9kaXIuYzoxMDkgc3JjL2RpdmVydGNtZC5jOjIxOCBkcGtnLXNwbGl0L3NwbGl0LmM6MjAyCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI5MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBmaWxlICclcyciCittc2dzdHIgImdhZ2FsIG1lbWJ1a2EgYmVya2FzICclcyciCisKKyM6IGxpYi9kcGtnL2Rpci5jOjExMSBzcmMvZGl2ZXJ0Y21kLmM6MjMyIHNyYy9kaXZlcnRjbWQuYzozNzcKKyM6IHNyYy9zdGF0Y21kLmM6MjE3IGRwa2ctZGViL2J1aWxkLmM6NTk4IGRwa2ctc3BsaXQvam9pbi5jOjY1CisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTg3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNDA2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzeW5jIGZpbGUgJyVzJyIKK21zZ3N0ciAiZ2FnYWwgc2lua3JvbmlzYXNpIGJlcmthcyAnJXMnIgorCisjOiBsaWIvZHBrZy9kaXIuYzoxMTMgc3JjL2RpdmVydGNtZC5jOjIzNCBzcmMvZGl2ZXJ0Y21kLmM6Mzc5CisjOiBkcGtnLWRlYi9idWlsZC5jOjYwMCBkcGtnLXNwbGl0L2pvaW4uYzo2NyBkcGtnLXNwbGl0L3F1ZXVlLmM6MTg5CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTMxNCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTQwOAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgZmlsZSAnJXMnIgorbXNnc3RyICJnYWdhbCBtZW51dHVwIGJlcmthcyAnJXMnIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6Mzk2CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB3cml0ZSBkZXRhaWxzIG9mIGAlLjUwcycgdG8gYCUuMjUwcyciCittc2dzdHIgImdhZ2FsIG1lbnVsaXMgcmluY2lhbiB0ZW50YW5nICclLjUwcycga2UgJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0MjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gJyVzJyBmb3Igd3JpdGluZyAlcyBkYXRhYmFzZSIKK21zZ3N0ciAiR2FnYWwgbWVtYnVrYSAnJXMnIHVudHVrIG1lbnVsaXMgYmFzaXNkYXRhICVzIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDI2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgYnVmZmVyaW5nIG9uICVzIGRhdGFiYXNlIGZpbGUiCittc2dzdHIgImdhZ2FsIG1lbmF0YSBwZW55YW5nZ2EgKGJ1ZmZlcikgcGFkYSBiZXJrYXMgYmFzaXNkYXRhICVzIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDM4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB3cml0ZSAlcyBkYXRhYmFzZSByZWNvcmQgYWJvdXQgJyUuNTBzJyB0byAnJS4yNTBzJyIKK21zZ3N0ciAiZ2FnYWwgbWVudWxpcyByZWthbWFuIGJhc2lzZGF0YSAlcyB0ZW50YW5nICclLjUwcycga2UgJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZsdXNoICVzIGRhdGFiYXNlIHRvICclLjI1MHMnIgorbXNnc3RyICJnYWdhbCBtZW1pbmRhaGthbiBiYXNpc2RhdGEgJXMga2UgJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZzeW5jICVzIGRhdGFiYXNlIHRvICclLjI1MHMnIgorbXNnc3RyICJnYWdhbCBzaW5rcm9zaW5hc2kgYmVya2FzIGJhc2lzZGF0YSAlcyBrZSAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ1MQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2xvc2UgJyUuMjUwcycgYWZ0ZXIgd3JpdGluZyAlcyBkYXRhYmFzZSIKK21zZ3N0ciAiZ2FnYWwgbWVudXR1cCAnJS4yNTBzJyBzZXRlbGFoIG1lbnVsaXMgYmFzaXNkYXRhICVzIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDU1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBsaW5rICclLjI1MHMnIHRvICclLjI1MHMnIGZvciBiYWNrdXAgb2YgJXMgZGF0YWJhc2UiCittc2dzdHIgImdhZ2FsIG1lbWJ1YXQgbmFyYSAnJS4yNTBzJyBrZSAnJS4yNTBzJyB1bnR1ayBjYWRhbmdhbiBiYXNpc2RhdGEgJXMiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGluc3RhbGwgJyUuMjUwcycgYXMgJyUuMjUwcycgY29udGFpbmluZyAlcyBkYXRhYmFzZSIKK21zZ3N0ciAiZ2FnYWwgbWVtYXNhbmcgJyUuMjUwcycgc2ViYWdhaSAnJS4yNTBzJyB5YW5nIGJlcmlzaSBiYXNpc2RhdGEgJXMiCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzo5NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IHVucmVjb3ZlcmFibGUgZmF0YWwgZXJyb3IsIGFib3J0aW5nOlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisiJXM6IGtlc2FsYWhhbiBmYXRhbCB0YWsgdGVyYmFpa2k7IHNlZGFuZyBtZW1iYXRhbGthbjpcbiIKKyIlc1xuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MTAwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiJXM6IHVucmVjb3ZlcmFibGUgZmF0YWwgZXJyb3IsIGFib3J0aW5nOlxuIgorI3wgIiAlc1xuIgorbXNnaWQgIiIKKyIlczogb3V0c2lkZSBlcnJvciBjb250ZXh0LCBhYm9ydGluZzpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorIiVzOiBrZXNhbGFoYW4gZmF0YWwgdGFrIHRlcmJhaWtpOyBzZWRhbmcgbWVtYmF0YWxrYW46XG4iCisiJXNcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjEyMAorIywgZnV6enkKKyN8IG1zZ2lkICJvdXQgb2YgbWVtb3J5IGZvciBuZXcgY2xlYW51cCBlbnRyeSIKK21zZ2lkICJvdXQgb2YgbWVtb3J5IGZvciBuZXcgZXJyb3IgY29udGV4dCIKK21zZ3N0ciAia2VoYWJpc2FuIG1lbW9yeSB1bnR1ayBtYXN1a2FuICdjbGVhbnVwJyBiYXJ1IgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MTgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogZXJyb3Igd2hpbGUgY2xlYW5pbmcgdXA6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKyIlczogYWRhIGdhbGF0IHNhYXQgbWVtYmVyc2loa2FuOiBcbiIKKyIgJXMgXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoyMDEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImRwa2c6IHRvbyBtYW55IG5lc3RlZCBlcnJvcnMgZHVyaW5nIGVycm9yIHJlY292ZXJ5ICEhXG4iCittc2dpZCAiJXM6IHRvbyBtYW55IG5lc3RlZCBlcnJvcnMgZHVyaW5nIGVycm9yIHJlY292ZXJ5ISFcbiIKK21zZ3N0ciAiZHBrZzogdGVybGFsdSBiYW55YWsga2VzYWxhaGFuIGJlcmFudGFpIHNhYXQgbWVtcGVyYmFpa2kga2VzYWxhaGFuIVxuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MjY4IGxpYi9kcGtnL2VoYW5kbGUuYzozMDcKK21zZ2lkICJvdXQgb2YgbWVtb3J5IGZvciBuZXcgY2xlYW51cCBlbnRyeSIKK21zZ3N0ciAia2VoYWJpc2FuIG1lbW9yeSB1bnR1ayBtYXN1a2FuICdjbGVhbnVwJyBiYXJ1IgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MjkxCittc2dpZCAib3V0IG9mIG1lbW9yeSBmb3IgbmV3IGNsZWFudXAgZW50cnkgd2l0aCBtYW55IGFyZ3VtZW50cyIKK21zZ3N0ciAia2VoYWJpc2FuIG1lbW9yeSB1bnR1ayBtYXN1a2FuICdjbGVhbnVwJyBiYXJ1IGRlbmdhbiBiYW55YWsgYXJndW1lbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjM1MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiJXM6IHdhcm5pbmc6ICVzXG4iCittc2dpZCAiJXM6IGVycm9yOiAlc1xuIgorbXNnc3RyICIlczogcGVyaW5nYXRhbjogJXNcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjM5MworIywgYy1mb3JtYXQKK21zZ2lkICIlczogd2FybmluZzogJXNcbiIKK21zZ3N0ciAiJXM6IHBlcmluZ2F0YW46ICVzXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzo0MTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6JXM6JWQ6IGludGVybmFsIGVycm9yOiAlc1xuIgorbXNnc3RyICIlczogJXM6ICVkOiBnYWxhdCBpbnRlcm5hbDogJXNcbiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgaXMgbWlzc2luZyIKK21zZ3N0ciAiJXMgaGlsYW5nIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0OQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYCUuKnMnIGlzIG5vdCBhbGxvd2VkIGZvciAlcyIKK21zZ2lkICInJS41MHMnIGlzIG5vdCBhbGxvd2VkIGZvciAlcyIKK21zZ3N0ciAiJyUuKnMnIHRpZGFrIGRpcGVya2VuYW5rYW4gdW50dWsgJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjczCisjLCBjLWZvcm1hdAorbXNnaWQgImp1bmsgYWZ0ZXIgJXMiCittc2dzdHIgInJvbmdzb2thbiBzZXRlbGFoICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo4NworIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHBhY2thZ2UgbmFtZSAoJS4yNTBzKSIKK21zZ3N0ciAibmFtYSBwYWtldCAoJS4yNTBzKSB0aWRhayBzYWguIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZW1wdHkgZmlsZSBkZXRhaWxzIGZpZWxkIGAlcyciCittc2dzdHIgInJ1YXMgJ2ZpbGUgZGV0YWlscycgJyVzJyBrb3NvbmciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjEwNQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGRldGFpbHMgZmllbGQgYCVzJyBub3QgYWxsb3dlZCBpbiBzdGF0dXMgZmlsZSIKK21zZ3N0ciAicnVhcyAnZmlsZSBkZXRhaWxzJyAnJXMnIHRpZGFrIGRpaXppbmthbiBkYWxhbSBiZXJrYXMgc3RhdHVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidG9vIG1hbnkgdmFsdWVzIGluIGZpbGUgZGV0YWlscyBmaWVsZCBgJXMnIChjb21wYXJlZCB0byBvdGhlcnMpIgorbXNnc3RyICIiCisidGVybGFsdSBiYW55YWsgbmlsYWkgZGFsYW0gcnVhcyAnZmlsZSBkZXRhaWxzJyAnJXMnIChkaWJhbmRpbmdrYW4gbGFpbm55YSkiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjEzMgorIywgYy1mb3JtYXQKK21zZ2lkICJ0b28gZmV3IHZhbHVlcyBpbiBmaWxlIGRldGFpbHMgZmllbGQgYCVzJyAoY29tcGFyZWQgdG8gb3RoZXJzKSIKK21zZ3N0ciAiIgorInRlcmxhbHUgc2VkaWtpdCBuaWxhaSBkYWxhbSBydWFzICdmaWxlIGRldGFpbHMnICclcycgKGRpYmFuZGluZ2thbiBsYWlubnlhKSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTU0Cittc2dpZCAieWVzL25vIGluIGJvb2xlYW4gZmllbGQiCittc2dzdHIgInlhL3RpZGFrIGRhbGFtIHJ1YXMgYm9vbGVhbiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTc0Cittc2dpZCAid29yZCBpbiBgcHJpb3JpdHknIGZpZWxkIgorbXNnc3RyICJrYXRhIGRhbGFtIHJ1YXMgJ3ByaW9yaXRhcyciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE4NgorbXNnaWQgInZhbHVlIGZvciBgc3RhdHVzJyBmaWVsZCBub3QgYWxsb3dlZCBpbiB0aGlzIGNvbnRleHQiCittc2dzdHIgIm5pbGFpIHVudHVrIHJ1YXMgJ3N0YXR1cycgdGlkYWsgZGlpemlua2FuIGRhbGFtIGtvbnRla3MgaW5pIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxOTEKK21zZ2lkICJmaXJzdCAod2FudCkgd29yZCBpbiBgc3RhdHVzJyBmaWVsZCIKK21zZ3N0ciAia2FsaW1hdCAoaW5naW4pIHBlcnRhbWEgZGFsYW0gcnVhcyAnc3RhdHVzJyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTk0Cittc2dpZCAic2Vjb25kIChlcnJvcikgd29yZCBpbiBgc3RhdHVzJyBmaWVsZCIKK21zZ3N0ciAia2FsaW1hdCAoZ2FsYXQpIGtlZHVhIGRhbGFtIHJ1YXMgJ3N0YXR1cyciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE5NworbXNnaWQgInRoaXJkIChzdGF0dXMpIHdvcmQgaW4gYHN0YXR1cycgZmllbGQiCittc2dzdHIgImthbGltYXQgKHN0YXR1cykga2V0aWdhIGRhbGFtIHJ1YXMgYHN0YXR1cyciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjIwNworIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBpbiBWZXJzaW9uIHN0cmluZyAnJS4yNTBzJyIKK21zZ3N0ciAiQWRhIGdhbGF0IGRhbGFtIHN0cmluZyAnVmVyc2lvbicgJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjIxOAorbXNnaWQgIm9ic29sZXRlIGBSZXZpc2lvbicgb3IgYFBhY2thZ2UtUmV2aXNpb24nIGZpZWxkIHVzZWQiCittc2dzdHIgIlJ1YXMgJ1JldmlzaW9uJyBhdGF1ICdQYWNrYWdlLVJldmlzaW9uJyB5YW5nIHN1ZGFoIHVzYW5nIGRpZ3VuYWthbiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjM1Cittc2dpZCAidmFsdWUgZm9yIGBjb25maWctdmVyc2lvbicgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICJuaWxhaSB1bnR1ayBydWFzICdjb25maWctdmVyc2lvbicgdGlkYWsgZGlpemlua2FuIGRhbGFtIGtvbnRla3MgaW5pIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyNDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgaW4gQ29uZmlnLVZlcnNpb24gc3RyaW5nICclLjI1MHMnIgorbXNnc3RyICJBZGEgZ2FsYXQgZGFsYW0gc3RyaW5nICdDb25maWctVmVyc2lvbicgJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjI2NgorIywgYy1mb3JtYXQKK21zZ2lkICJ2YWx1ZSBmb3IgYGNvbmZmaWxlcycgaGFzIG1hbGZvcm1hdHRlZCBsaW5lIGAlLipzJyIKK21zZ3N0ciAibmlsYWkgdW50dWsgJ2NvbmZmaWxlcycgbWVuZ2FuZHVuZyBiYXJpcyB5YW5nIHNhbGFoIGJlbnR1azogJyUuKnMnIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyODcKKyMsIGMtZm9ybWF0Cittc2dpZCAidmFsdWUgZm9yIGBjb25mZmlsZXMnIGhhcyBsaW5lIHN0YXJ0aW5nIHdpdGggbm9uLXNwYWNlIGAlYyciCittc2dzdHIgIm5pbGFpIHVudHVrICdjb25mZmlsZXMnIGJlaXNpIGJhcmlzIHlhbmcgZGlhd2FsaSB0YW5wYS1zcGFzaTogJyVjJyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MzA0Cittc2dpZCAicm9vdCBvciBudWxsIGRpcmVjdG9yeSBpcyBsaXN0ZWQgYXMgYSBjb25mZmlsZSIKK21zZ3N0ciAiIgorImRpcmVrdG9yaSBrb3NvbmcgYXRhdSByb290IHRlcmRhZnRhciBzZWJhZ2FpIHNlYnVhaCBiZXJrYXMga29uZmlnIChjb25mZmlsZSkiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjM2NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgbWlzc2luZyBwYWNrYWdlIG5hbWUsIG9yIGdhcmJhZ2Ugd2hlcmUgcGFja2FnZSBuYW1lIGV4cGVjdGVkIgorbXNnc3RyICIiCisicnVhcyAnJXMnLCBkaSB0ZW1wYXQgeWFuZyBzZWhhcnVzbnlhIGFkYSBuYW1hIHBha2V0LCBuYW1hIHBha2V0IGhpbGFuZyBhdGF1ICIKKyJzYWxhaCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MzcwCisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgZmllbGQsIGludmFsaWQgcGFja2FnZSBuYW1lIGAlLjI1NXMnOiAlcyIKK21zZ3N0ciAicnVhcyAnJXMnLCBuYW1hIHBha2V0ICclLjI1NXMnOiAlcyB0aWRhayBzYWgiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQwNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOlxuIgorIiBiYWQgdmVyc2lvbiByZWxhdGlvbnNoaXAgJWMlYyIKK21zZ3N0ciAiIgorInJ1YXMgJyVzJywgeWFuZyBtZW5nYWN1IGtlICclLjI1NXMnOiBcbiIKKyJtZW1pbGlraSBodWJ1bmdhbiB2ZXJzaSAlYyVjIHlhbmcgYnVydWsuIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgYCVjJyBpcyBvYnNvbGV0ZSwgdXNlIGAlYz0nIG9yIGAlYyVjJyBpbnN0ZWFkIgorbXNnc3RyICIiCisicnVhcyAnJXMnLCB5YW5nIG1lbmdhY3Uga2UgJyUuMjU1cyc6XG4iCisiJyVjJyBzdWRhaCB1c2FuZywgZ3VuYWthbiBzYWphICclYz0nIGF0YXUgJyVjJWMnIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgaW1wbGljaXQgZXhhY3QgbWF0Y2ggb24gdmVyc2lvbiBudW1iZXIsIHN1Z2dlc3QgdXNpbmcgYD0nIGluc3RlYWQiCittc2dzdHIgIiIKKyJydWFzICclcycsIHlhbmcgbWVuZ2FjdSBrZSAnJS4yNTVzJzpcbiIKKyJub21vciB2ZXJzaSBjb2NvayBzZWNhcmEgdGVyc2lyYXQsIHNhcmFuOiBndW5ha2FuIHNhamEgJz0nIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MzAKK21zZ2lkICJPbmx5IGV4YWN0IHZlcnNpb25zIG1heSBiZSB1c2VkIGZvciBQcm92aWRlcyIKK21zZ3N0ciAiSGFueWEgdmVyc2kgeWFuZyB0ZXBhdCB5YW5nIGRhcGF0IGRpZ3VuYWthbiB1bnR1ayAnUHJvdmlkZXMnIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgdmVyc2lvbiB2YWx1ZSBzdGFydHMgd2l0aCBub24tYWxwaGFudW1lcmljLCBzdWdnZXN0IGFkZGluZyBhIHNwYWNlIgorbXNnc3RyICIiCisicnVhcyAnJXMnLCB5YW5nIG1lbmdhY3Uga2UgJyUuMjU1cyc6XG4iCisibmlsYWkgdmVyc2kgZGltdWxhaSB0YW5wYSBhbHBoYW51bWVyaWssIHNhcmFuOiB0YW1iYWhrYW4gc2VidWFoIHNwYXNpIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NTEgbGliL2Rwa2cvZmllbGRzLmM6NDU1CisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzogdmVyc2lvbiBjb250YWlucyBgJWMnIgorbXNnc3RyICJydWFzICclcycsIHlhbmcgbWVuZ2FjdSBrZSAnJS4yNTVzJzogdmVyc2kgYmVyaXNpICclYyciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ1OQorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6IHZlcnNpb24gdW50ZXJtaW5hdGVkIgorbXNnc3RyICJydWFzICclcycsIHlhbmcgbWVuZ2FjdSBrZSAnJS4yNTVzJzogdmVyc2kgdGlkYWsgZGlha2hpcmkiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ2NQorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gJyUuMjU1cyc6IGVycm9yIGluIHZlcnNpb24iCittc2dzdHIgInJ1YXMgJyVzJywgeWFuZyBtZW5nYWN1IGtlICclLjI1NXMnOiBhZGEgZ2FsYXQgZGFsYW0gdmVyc2kiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ3NQorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGZpZWxkLCBzeW50YXggZXJyb3IgYWZ0ZXIgcmVmZXJlbmNlIHRvIHBhY2thZ2UgYCUuMjU1cyciCittc2dzdHIgInJ1YXMgJyVzJywgc2FsYWggc3ludGFrcyBzZXRlbGFoIG1lbmdhY3Uga2UgcGFrZXQgJyUuMjU1cyciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ4MgorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZXMgKGB8Jykgbm90IGFsbG93ZWQgaW4gJXMgZmllbGQiCittc2dzdHIgImFsdGVybmF0aWYgKCd8JykgdGlkYWsgZGlpemlua2FuIGRhbGFtIHJ1YXMgJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjUzNgorbXNnaWQgInZhbHVlIGZvciBgdHJpZ2dlcnMtcGVuZGluZycgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICJuaWxhaSB1bnR1ayBydWFzICd0cmlnZ2Vycy1wZW5kaW5nJyB0aWRhayBkaWl6aW5rYW4gZGFsYW0ga29udGVrcyBpbmkiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU0MworIywgYy1mb3JtYXQKK21zZ2lkICJpbGxlZ2FsIHBlbmRpbmcgdHJpZ2dlciBuYW1lIGAlLjI1NXMnOiAlcyIKK21zZ3N0ciAibmFtYSBwZW1pY3UgdGVydHVuZGEgJyUuMjU1cyc6ICVzIHRpZGFrIHNhaCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTQ3CisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBwZW5kaW5nIHRyaWdnZXIgYCUuMjU1cyciCittc2dzdHIgInBlbWljdSB0ZXJ0dW5kYSAnJS4yNTVzJyBnYW5kYSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTYxCittc2dpZCAidmFsdWUgZm9yIGB0cmlnZ2Vycy1hd2FpdGVkJyBmaWVsZCBub3QgYWxsb3dlZCBpbiB0aGlzIGNvbnRleHQiCittc2dzdHIgIm5pbGFpIHVudHVrIHJ1YXMgJ3RyaWdnZXJzLWF3YWl0ZWQnIHRpZGFrIGRpaXppbmthbiBkYWxhbSBrb250ZWtzIGluaSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTY4CisjLCBjLWZvcm1hdAorbXNnaWQgImlsbGVnYWwgcGFja2FnZSBuYW1lIGluIGF3YWl0ZWQgdHJpZ2dlciBgJS4yNTVzJzogJXMiCittc2dzdHIgIm5hbWEgcGFrZXQgZGFsYW0gcGVtaWN1IHRlcnR1bmdndSAnJS4yNTVzJzogJXMgdGlkYWsgc2FoIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIGF3YWl0ZWQgdHJpZ2dlciBwYWNrYWdlIGAlLjI1NXMnIgorbXNnc3RyICJwYWtldCBwZW1pY3UgdGVydHVuZ2d1ICclLjI1MHMnIGdhbmRhIgorCisjOiBsaWIvZHBrZy9maWxlLmM6NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgc291cmNlIGZpbGUgJyUuMjUwcyciCittc2dzdHIgImdhZ2FsIG1lbmF0YSBzdGF0dXMgYmVya2FzIHN1bWJlciAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZmlsZS5jOjU1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGFuZ2Ugb3duZXJzaGlwIG9mIHRhcmdldCBmaWxlICclLjI1MHMnIgorbXNnc3RyICJnYWdhbCBtZW5ndWJhaCBrZXBlbWlsaWthbiBiZXJrYXMgdGFyZ2V0ICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy9maWxlLmM6NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNldCBtb2RlIG9mIHRhcmdldCBmaWxlICclLjI1MHMnIgorbXNnc3RyICJnYWdhbCBtZW5hdGEgbW9kdXMgYmVya2FzIHRhcmdldCAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZmlsZS5jOjg1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gY2xvc2UgJXM6ICVzIgorbXNnaWQgInVuYWJsZSB0byB1bmxvY2sgJXMiCittc2dzdHIgImdhZ2FsIG1lbnV0dXAgJXM6ICVzIgorCisjOiBsaWIvZHBrZy9maWxlLmM6MTExCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGVjayBmaWxlICclcycgbG9jayBzdGF0dXMiCittc2dzdHIgImdhZ2FsIG1lbWVyaWtzYSBzdGF0dXMgcGVuZ3VuY2kgYmVya2FzICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy9maWxlLmM6MTQ2CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJzdGF0dXMgZGF0YWJhc2UgYXJlYSBpcyBsb2NrZWQgYnkgYW5vdGhlciBwcm9jZXNzIgorbXNnaWQgIiVzIGlzIGxvY2tlZCBieSBhbm90aGVyIHByb2Nlc3MiCittc2dzdHIgImFyZWEgYmFzaXMgZGF0YSBzdGF0dXMgZGlrdW5jaSBvbGVoIHByb3NlcyBsYWluIgorCisjOiBsaWIvZHBrZy9maWxlLmM6MTQ4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gY2xvc2UgJXM6ICVzIgorbXNnaWQgInVuYWJsZSB0byBsb2NrICVzIgorbXNnc3RyICJnYWdhbCBtZW51dHVwICVzOiAlcyIKKworIzogbGliL2Rwa2cvbG9nLmM6NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGRuJ3Qgb3BlbiBsb2cgYCVzJzogJXNcbiIKK21zZ3N0ciAiZ2FnYWwgbWVtYnVrYSBsb2cgJyVzJzogJXNcbiIKKworIzogbGliL2Rwa2cvbG9nLmM6ODUKK21zZ2lkICI8cGFja2FnZSBzdGF0dXMgYW5kIHByb2dyZXNzIGZpbGUgZGVzY3JpcHRvcj4iCittc2dzdHIgIjxkZXNrcmlwdG9yIHN0YXR1cyBwYWtldCBkYW4gYmVya2FzIGtlbWFqdWFuPiIKKworIzogbGliL2Rwa2cvbG9nLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSB0byBzdGF0dXMgZmQgJWQiCittc2dzdHIgImdhZ2FsIG1lbnVsaXMgc3RhdHVzIGZkICVkIgorCisjOiBsaWIvZHBrZy9tbGliLmM6NDQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAibWFsbG9jIGZhaWxlZCAoJWxkIGJ5dGVzKSIKK21zZ2lkICJtYWxsb2MgZmFpbGVkICglenUgYnl0ZXMpIgorbXNnc3RyICJtYWxsb2MgZ2FnYWwgKCVsZCBiaXRhKSIKKworIzogbGliL2Rwa2cvbWxpYi5jOjU4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJyZWFsbG9jIGZhaWxlZCAoJWxkIGJ5dGVzKSIKK21zZ2lkICJyZWFsbG9jIGZhaWxlZCAoJXp1IGJ5dGVzKSIKK21zZ3N0ciAicmVhbGxvYyBnYWdhbCAoJWxkIGJpdGEpIgorCisjOiBsaWIvZHBrZy9tbGliLmM6NzIgbGliL2Rwa2cvbWxpYi5jOjkwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNzcKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzozMzQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMDcKK21zZ2lkICJmYWlsZWQgdG8gYWxsb2NhdGUgbWVtb3J5IgorbXNnc3RyICJnYWdhbCBtZW5nYWxva2FzaWthbiBtZW1vcmkiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGR1cCBmb3Igc3RkJXMiCittc2dzdHIgImdhZ2FsIG1lbGFrdWthbiAnZHVwJyB1bnR1ayBzdGQlcyIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEwMworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZHVwIGZvciBmZCAlZCIKK21zZ3N0ciAiZ2FnYWwgbWVsYWt1a2FuICdkdXAnIHVudHVrIGZkICVkIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTA5Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBwaXBlIgorbXNnc3RyICJnYWdhbCBtZW1idWF0IHBpcGUiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igd3JpdGluZyB0byAnJXMnIgorbXNnc3RyICJBZGEgZ2FsYXQgc2FhdCBtZW51bGlzIGtlICclcyciCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgZmlsZWRlc2NyaXB0b3IgZmxhZ3MgZm9yICUuMjUwcyIKK21zZ3N0ciAiZ2FnYWwgbWVtYmFjYSB0YW5kYSBkZXNrcmlwdG9yIGJlcmthcyB1bnR1ayAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMjYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNldCBjbG9zZS1vbi1leGVjIGZsYWcgZm9yICUuMjUwcyIKK21zZ3N0ciAiZ2FnYWwgbWVuYXRhIHRhbmRhICdjbG9zZS1vbi1leGVjJyB1bnR1ayAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzo2MworIywgYy1mb3JtYXQKK21zZ2lkICJjb25maWd1cmF0aW9uIGVycm9yOiAlczolZDogJXMiCittc2dzdHIgImdhbGF0IGtvbmZpZ3VyYXNpOiAlczogJWQ6ICVzIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gY29uZmlndXJhdGlvbiBmaWxlICclLjI1NXMnIGZvciByZWFkaW5nOiAlcyIKK21zZ3N0ciAiZ2FnYWwgbWVtYnVrYSBiZXJrYXMga29uZmlndXJhc2kgJyUuMjU1cycgdW50dWsgZGliYWNhOiAlcyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmJhbGFuY2VkIHF1b3RlcyBpbiAnJXMnIgorbXNnc3RyICJ0YW5kYSBrdXRpcCBkaSAnJXMnIHRpZGFrIGtsb3AiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gJyVzJyIKK21zZ3N0ciAicGlsaWhhbiAnJXMnIHRhayBkaWtlbmFsIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTIxCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgbmVlZHMgYSB2YWx1ZSIKK21zZ3N0ciAicGlsaWhhbiAnJXMnIGJ1dHVoIHN1YXR1IG5pbGFpIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTI3CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgZG9lcyBub3QgdGFrZSBhIHZhbHVlIgorbXNnc3RyICJwaWxpaGFuICclcycgdGlkYWsgYWRhIG5pbGFpbnlhIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTMzCisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWQgZXJyb3IgaW4gY29uZmlndXJhdGlvbiBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICJhZGEga2VzYWxhaGFuIG1lbWJhY2EgYmVya2FzIGtvbmZpZ3VyYXNpICclLjI1NXMnIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgY29uZmlndXJhdGlvbiBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICJhZGEga2VzYWxhaGFuIG1lbnV0dXAgYmVya2FzIGtvbmZpZ3VyYXNpICclLjI1NXMnIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTcwCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIG9wZW5pbmcgY29uZmlndXJhdGlvbiBkaXJlY3RvcnkgJyVzJyIKK21zZ3N0ciAiYWRhIGdhbGF0IG1lbWJ1a2EgZGlyZWt0b3JpIGtvbmZpZ3VyYXNpICclcyciCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gLS0lcyIKK21zZ3N0ciAicGlsaWhhbiAtLSVzIHRhayBkaWtlbmFsIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgb3B0aW9uIHRha2VzIGEgdmFsdWUiCittc2dzdHIgInBpbGloYW4gLS0lcyBidXR1aCBzdWF0dSBuaWxhaSIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjIzNworIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG9wdGlvbiBkb2VzIG5vdCB0YWtlIGEgdmFsdWUiCittc2dzdHIgInBpbGloYW4gLS0lcyB0aWRhayBhZGEgbmlsYWlueWEiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyNDUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gLSVjIgorbXNnc3RyICJwaWxpaGFuIC0lYyB0YWsgZGlrZW5hbCIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI1MAorIywgYy1mb3JtYXQKK21zZ2lkICItJWMgb3B0aW9uIHRha2VzIGEgdmFsdWUiCittc2dzdHIgInBpbGloYW4gLSVjIGJ1dHVoIHN1YXR1IG5pbGFpIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjU4CisjLCBjLWZvcm1hdAorbXNnaWQgIi0lYyBvcHRpb24gZG9lcyBub3QgdGFrZSBhIHZhbHVlIgorbXNnc3RyICJwaWxpaGFuIC0lYyB0aWRhayBhZGEgbmlsYWlueWEiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAib2Jzb2xldGUgb3B0aW9uICctLSVzJ1xuIgorbXNnc3RyICJwaWxpaGFuICctLSVzJyBzdWRhaCB1c2FuZyBcbiIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI4NworIywgYy1mb3JtYXQKK21zZ2lkICJjb25mbGljdGluZyBhY3Rpb25zIC0lYyAoLS0lcykgYW5kIC0lYyAoLS0lcykiCittc2dzdHIgImFrc2kgLSVjICgtLSVzKSBkYW4gLSVjICgtLSVzKSBiZW50cm9rIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgdmFsdWUgZm9yIGAlcycgZmllbGQiCittc2dzdHIgIm5pbGFpIGdhbmRhIHVudHVrIHJ1YXMgJyVzJyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoxNDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidXNlci1kZWZpbmVkIGZpZWxkIG5hbWUgYCUuKnMnIHRvbyBzaG9ydCIKK21zZ3N0ciAibmFtYSBydWFzIGRlZmluaXNpIHBlbmdndW5hICclLipzJyB0ZXJsYWx1IHNpbmdrYXQiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MTUyCisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSB2YWx1ZSBmb3IgdXNlci1kZWZpbmVkIGZpZWxkIGAlLipzJyIKK21zZ3N0ciAibmlsYWkgZ2FuZGEgdW50dWsgcnVhcyBkZWZpbmlzaSBwZW5nZ3VuYSAnJS4qcyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjA3Cittc2dpZCAiQ29uZmlndXJlZC1WZXJzaW9uIGZvciBwYWNrYWdlIHdpdGggaW5hcHByb3ByaWF0ZSBTdGF0dXMiCittc2dzdHIgIkNvbmZpZ3VyZWQtVmVyc2lvbiB1bnR1ayBwYWtldCBkZW5nYW4gU3RhdHVzIHRhayBzZXN1YWkiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjE4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgaGFzIHN0YXR1cyAlcyBidXQgdHJpZ2dlcnMgYXJlIGF3YWl0ZWQiCittc2dzdHIgInBha2V0IGJlcnN0YXR1cyAlcywgdGV0YXBpIGFkYSBwZW1pY3UgeWFuZyBkaXR1bmdndSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMjIKK21zZ2lkICJwYWNrYWdlIGhhcyBzdGF0dXMgdHJpZ2dlcnMtYXdhaXRlZCBidXQgbm8gdHJpZ2dlcnMgYXdhaXRlZCIKK21zZ3N0ciAicGFrZXQgYmVyc3RhdHVzIHR1bmdndS1wZW1pY3UgdGV0YXBpIHRpZGFrIGFkYSBwZW1pY3UgeWFuZyBkaXR1bmdndSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzICVzIGJ1dCB0cmlnZ2VycyBhcmUgcGVuZGluZyIKK21zZ3N0ciAicGFrZXQgYmVyc3RhdHVzICVzIHRldGFwaSBhZGEgcGVtaWN1IHlhbmcgdGVydHVuZGEiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjMyCittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzIHRyaWdnZXJzLXBlbmRpbmcgYnV0IG5vIHRyaWdnZXJzIHBlbmRpbmciCittc2dzdHIgInBha2V0IGJlcnN0YXR1cyB0dW5kYS1wZW1pY3UgdGV0YXBpIHRpZGFrIGFkYSBwZW1pY3UgeWFuZyB0ZXJ0dW5kYSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyNDIKK21zZ2lkICJQYWNrYWdlIHdoaWNoIGluIHN0YXRlIG5vdC1pbnN0YWxsZWQgaGFzIGNvbmZmaWxlcywgZm9yZ2V0dGluZyB0aGVtIgorbXNnc3RyICIiCisiUGFrZXQgZGVuZ2FuIHN0YXR1cyAndGFrLXRlcnBhc2FuZycgbWVtaWxpa2kgYmVya2FzIGtvbmZpZywgYWJhaWthbiBzYWphIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjMzNQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiBwYWNrYWdlIGluZm8gZmlsZSBgJS4yNTVzJyBmb3IgcmVhZGluZyIKK21zZ3N0ciAiZ2FnYWwgbWVtYnVrYSBiZXJrYXMgaW5mbyBwYWtldCAnJS4yNTVzJyB1bnR1ayBkaWJhY2EiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzQxCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbid0IHN0YXQgcGFja2FnZSBpbmZvIGZpbGUgYCUuMjU1cyciCittc2dzdHIgImdhZ2FsIG1lbmF0YSBzdGF0dXMgYmVya2FzIGluZm8gcGFrZXQgJyUuMjU1cyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzQ3CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbid0IG1tYXAgcGFja2FnZSBpbmZvIGZpbGUgYCUuMjU1cyciCittc2dzdHIgImdhZ2FsIG1lbGFrdWthbiAnbW1hcCcgcGFkYSBiZXJrYXMgaW5mbyBwYWtldCAnJS4yNTVzJyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozNTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImNhbid0IHN0YXQgcGFja2FnZSBpbmZvIGZpbGUgYCUuMjU1cyciCittc2dpZCAicmVhZGluZyBwYWNrYWdlIGluZm8gZmlsZSAnJS4yNTVzJyIKK21zZ3N0ciAiZ2FnYWwgbWVuYXRhIHN0YXR1cyBiZXJrYXMgaW5mbyBwYWtldCAnJS4yNTVzJyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNsb3NlIGFmdGVyIHJlYWQ6IGAlLjI1NXMnIgorbXNnc3RyICJnYWdhbCBtZW51dHVwIHNldGVsYWggbWVtYmFjYTogJyUuMjU1cyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDA0CisjLCBjLWZvcm1hdAorbXNnaWQgIkVPRiBhZnRlciBmaWVsZCBuYW1lIGAlLipzJyIKK21zZ3N0ciAiQWRhIEVPRiBzZXRlbGFoIG5hbWEgcnVhcyAnJS4qcyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDA3CisjLCBjLWZvcm1hdAorbXNnaWQgIm5ld2xpbmUgaW4gZmllbGQgbmFtZSBgJS4qcyciCittc2dzdHIgImFkYSBiYXJpcy1iYXJ1IGRhbGFtIG5hbWEgcnVhcyAnJS4qcyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDEwCisjLCBjLWZvcm1hdAorbXNnaWQgIk1TRE9TIEVPRiAoXlopIGluIGZpZWxkIG5hbWUgYCUuKnMnIgorbXNnc3RyICJFT0YgTVNET1MgKF5aKSBkYWxhbSBuYW1hIHJ1YXMgJyUuKnMnIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQxNAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWVsZCBuYW1lIGAlLipzJyBtdXN0IGJlIGZvbGxvd2VkIGJ5IGNvbG9uIgorbXNnc3RyICJuYW1hIHJ1YXMgJyUuKnMnIGhhcnVzIGRpaWt1dGkgb2xlaCB0aXRpay1kdWEiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDI1CisjLCBjLWZvcm1hdAorbXNnaWQgIkVPRiBiZWZvcmUgdmFsdWUgb2YgZmllbGQgYCUuKnMnIChtaXNzaW5nIGZpbmFsIG5ld2xpbmUpIgorbXNnc3RyICJBZGEgRU9GIHNlYmVsdW0gbmlsYWkgcnVhcyAnJS4qcycgKGJhcmlzLWJhcnUgdGVyYWtoaXIgdGlhZGEpIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQyOQorIywgYy1mb3JtYXQKK21zZ2lkICJNU0RPUyBFT0YgY2hhciBpbiB2YWx1ZSBvZiBmaWVsZCBgJS4qcycgKG1pc3NpbmcgbmV3bGluZT8pIgorbXNnc3RyICJLYXJha3RlciBFT0YgTVNET1MgZGFsYW0gbmlsYWkgcnVhcyAnJS4qcycgKGJhcmlzLWJhcnUgdGlhZGE/KSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0NDAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIm5ld2xpbmUgaW4gZmllbGQgbmFtZSBgJS4qcyciCittc2dpZCAiYmxhbmsgbGluZSBpbiB2YWx1ZSBvZiBmaWVsZCAnJS4qcyciCittc2dzdHIgImFkYSBiYXJpcy1iYXJ1IGRhbGFtIG5hbWEgcnVhcyAnJS4qcyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDYxCisjLCBjLWZvcm1hdAorbXNnaWQgIkVPRiBkdXJpbmcgdmFsdWUgb2YgZmllbGQgYCUuKnMnIChtaXNzaW5nIGZpbmFsIG5ld2xpbmUpIgorbXNnc3RyICJBZGEgRU9GIHNla2l0YXIgbmlsYWkgcnVhcyAnJS4qcycgKGJhcmlzLWJhcnUgdGVyYWtoaXIgdGlhZGEpIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjU0NgorbXNnaWQgInNldmVyYWwgcGFja2FnZSBpbmZvIGVudHJpZXMgZm91bmQsIG9ubHkgb25lIGFsbG93ZWQiCittc2dzdHIgImRpdGVtdWthbiBiZWJlcmFwYSBiYXJpcyBpbmZvIHBha2V0OyBoYW55YSBzYXR1IHlhbmcgZGlpemlua2FuIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjU3MgorIywgYy1mb3JtYXQKK21zZ2lkICJubyBwYWNrYWdlIGluZm9ybWF0aW9uIGluIGAlLjI1NXMnIgorbXNnc3RyICJ0aWRhayBhZGEgaW5mb3JtYXNpIHBha2V0IGRhbGFtICclLjI1NXMnIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzo0NQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiVzLCBpbiBmaWxlICclLjI1NXMnIG5lYXIgbGluZSAlZCBwYWNrYWdlICclLjI1NXMnOlxuIgorI3wgIiAiCittc2dpZCAiIgorInBhcnNpbmcgZmlsZSAnJS4yNTVzJyBuZWFyIGxpbmUgJWQgcGFja2FnZSAnJS4yNTVzJzpcbiIKKyIgJS4yNTVzIgorbXNnc3RyICIlcywgZGFsYW0gYmVya2FzICclLjI1NXMnIGRla2F0IGJhcmlzICVkIGRpIHBha2V0ICclLjI1NXMnOiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6NDgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIlcywgaW4gZmlsZSAnJS4yNTVzJyBuZWFyIGxpbmUgJWQ6XG4iCisjfCAiICIKK21zZ2lkICIiCisicGFyc2luZyBmaWxlICclLjI1NXMnIG5lYXIgbGluZSAlZDpcbiIKKyIgJS4yNTVzIgorbXNnc3RyICIlcywgZGFsYW0gYmVya2FzICclLjI1NXMnIGRla2F0IGJhcmlzICVkOiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MTI1Cittc2dpZCAibWF5IG5vdCBiZSBlbXB0eSBzdHJpbmciCittc2dzdHIgInRpZGFrIGJvbGVoIHN0cmluZyBrb3NvbmciCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjEyNworIywgZnV6enkKKyN8IG1zZ2lkICJtdXN0IHN0YXJ0IHdpdGggYW4gYWxwaGFudW1lcmljIgorbXNnaWQgIm11c3Qgc3RhcnQgd2l0aCBhbiBhbHBoYW51bWVyaWMgY2hhcmFjdGVyIgorbXNnc3RyICJoYXJ1cyBkaW11bGFpIGRlbmdhbiBzZWJ1YWggYWxmYW51bWVyaWsiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjEzNgorIywgYy1mb3JtYXQKK21zZ2lkICJjaGFyYWN0ZXIgYCVjJyBub3QgYWxsb3dlZCAob25seSBsZXR0ZXJzLCBkaWdpdHMgYW5kIGNoYXJhY3RlcnMgYCVzJykiCittc2dzdHIgImFrc2FyYSAnJWMnIHRpZGFrIGRpaXppbmthbiAoaGFueWEgaHVydWYsIGRpZ2l0LCBkYW4gYWtzYXJhICclcycgc2FqYSkiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjE3OAorIywgZnV6enkKKyN8IG1zZ2lkICI8bm9uZT4iCittc2djdHh0ICJ2ZXJzaW9uIgorbXNnaWQgIjxub25lPiIKK21zZ3N0ciAiPHRpYWRhPiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjA5Cittc2dpZCAidmVyc2lvbiBzdHJpbmcgaXMgZW1wdHkiCittc2dzdHIgInN0cmluZyB2ZXJzaSBrb3NvbmciCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjIyNAorbXNnaWQgInZlcnNpb24gc3RyaW5nIGhhcyBlbWJlZGRlZCBzcGFjZXMiCittc2dzdHIgInN0cmluZyB2ZXJzaSBtZW5nYW5kdW5nIHNwYXNpIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyMzAKK21zZ2lkICJlcG9jaCBpbiB2ZXJzaW9uIGlzIG5vdCBudW1iZXIiCittc2dzdHIgImVwb2NoIHBhZGEgdmVyc2kgYnVrYW4gc3VhdHUgYW5na2EiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjIzMgorbXNnaWQgIm5vdGhpbmcgYWZ0ZXIgY29sb24gaW4gdmVyc2lvbiBudW1iZXIiCittc2dzdHIgInRpZGFrIGFkYSBhcGEtYXBhIHNldGVsYWggdGl0aWstZHVhIHBhZGEgbm9tb3IgdmVyc2kiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjI0NworbXNnaWQgInZlcnNpb24gbnVtYmVyIGRvZXMgbm90IHN0YXJ0IHdpdGggZGlnaXQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjUwCittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgaW4gdmVyc2lvbiBudW1iZXIiCittc2dzdHIgIm5vbW9yIHZlcnNpIGJlcmlzaSBha3NhcmEgdGlkYWsgc2FoIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyNTQKK21zZ2lkICJpbnZhbGlkIGNoYXJhY3RlciBpbiByZXZpc2lvbiBudW1iZXIiCittc2dzdHIgIm5vbW9yIHJldmlzaSBiZXJpc2kgYWtzYXJhIHRpZGFrIHNhaCIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6Mjk5IGxpYi9kcGtnL3BhcnNlaGVscC5jOjMxMQorIywgYy1mb3JtYXQKK21zZ2lkICJtaXNzaW5nICVzIgorbXNnc3RyICIlcyBoaWxhbmciCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjMwMSBsaWIvZHBrZy9wYXJzZWhlbHAuYzozMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZW1wdHkgdmFsdWUgZm9yICVzIgorbXNnc3RyICJuaWxhaSBrb3NvbmcgdW50dWsgJXMiCisKKyM6IGxpYi9kcGtnL3BrZy1mb3JtYXQuYzo4MAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGNoYXJhY3RlciBgJWMnIGluIGZpZWxkIHdpZHRoXG4iCittc2dzdHIgImFrc2FyYSAnJWMnIHRpZGFrIHNhaCBkYWxhbSBsZWJhciBydWFzXG4iCisKKyM6IGxpYi9kcGtnL3BrZy1mb3JtYXQuYzoxNzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2xvc2luZyBicmFjZSBtaXNzaW5nIGluIGZvcm1hdFxuIgorbXNnc3RyICJrdXJ1bmcgdHV0dXAgdGlkYWsgYWRhIGRhbGFtIGZvcm1hdFxuIgorCisjOiBsaWIvZHBrZy9wa2ctc2hvdy5jOjQwCittc2dpZCAiKG5vIGRlc2NyaXB0aW9uIGF2YWlsYWJsZSkiCittc2dzdHIgIih0aWRhayBhZGEga2V0ZXJhbmdhbiB5YW5nIHRlcnNlZGlhKSIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjU1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpZ25vcmUgc2lnbmFsICVzIGJlZm9yZSBydW5uaW5nICUuMjUwcyIKK21zZ3N0ciAiZ2FnYWwgbWVuZ2FiYWlrYW4gc2lueWFsICVzIHNlYmVsdW0gbWVuamFsYW5rYW4gJS4yNTBzIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgdW4tY2F0Y2hpbmcgc2lnbmFsICVzOiAlc1xuIgorbXNnc3RyICJBZGEga2VzYWxhaGFuIHNhYXQgbWVsZXBhc2thbiBzaW55YWwgJXM6ICVzXG4iCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzo3OAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyAoc3VicHJvY2Vzcyk6ICVzXG4iCittc2dzdHIgIiVzIChzdWJwcm9zZXMpOiAlcyBcbiIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjg5IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo0NTQKK21zZ2lkICJmb3JrIGZhaWxlZCIKK21zZ3N0ciAiJ2ZvcmsnIGdhZ2FsICIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjExOQorIywgYy1mb3JtYXQKK21zZ2lkICJzdWJwcm9jZXNzICVzIHJldHVybmVkIGVycm9yIGV4aXQgc3RhdHVzICVkIgorbXNnc3RyICJzdWJwcm9zZXMgJXMgbWVuZ2hhc2lsa2FuIGtlc2FsYWhhbiBzdGF0dXMga2VsdWFyYW46ICVkIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTI4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ3YWl0IGZvciBzdWJwcm9jZXNzICVzIGZhaWxlZCIKK21zZ2lkICJzdWJwcm9jZXNzICVzIHdhcyBpbnRlcnJ1cHRlZCIKK21zZ3N0ciAiZ2FnYWwgbWVudW5nZ3Ugc3VicHJvc2VzICVzIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTMwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJzdWJwcm9jZXNzICVzIGtpbGxlZCBieSBzaWduYWwgKCVzKSVzIgorbXNnaWQgInN1YnByb2Nlc3MgJXMgd2FzIGtpbGxlZCBieSBzaWduYWwgKCVzKSVzIgorbXNnc3RyICJzdWJwcm9zZXMgJXMgZGloZW50aWthbiBvbGVoIHNpbnlhbCAoJXMpJXMiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMzIKK21zZ2lkICIsIGNvcmUgZHVtcGVkIgorbXNnc3RyICIsIGNvcmUgZGlidWF0IgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgInN1YnByb2Nlc3MgJXMgZmFpbGVkIHdpdGggd2FpdCBzdGF0dXMgY29kZSAlZCIKK21zZ3N0ciAic3VicHJvc2VzICVzIGdhZ2FsIGRlbmdhbiBrb2RlIHN0YXR1cyB0dW5nZ3UgJWQiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxNTEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQ2MQorIywgYy1mb3JtYXQKK21zZ2lkICJ3YWl0IGZvciBzdWJwcm9jZXNzICVzIGZhaWxlZCIKK21zZ3N0ciAiZ2FnYWwgbWVudW5nZ3Ugc3VicHJvc2VzICVzIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDo3MgorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHBhY2thZ2UgbmFtZSBgJS4yNTBzJyBpbiB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisibmFtZSBwYWtldCB0aWRhayBzYWggJyUuMjUwcycgZGkgcGVtaWN1IG1lbmdoYWxhbmdpIHBlbXJvc2VzYW4gYmVya2FzICIKKyInJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJ1bmNhdGVkIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImJlcmthcyBwZW1pY3UgdGVydHVuZGEgJyUuMjUwcycgdGVycG90b25nIGlzaW55YSIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yIGluIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcycgYXQgY2hhcmFjdGVyIGAlcyclcyIKK21zZ3N0ciAiIgorImtlc2FsYWhhbiBzaW50YWtzIGRpIHBlbWljdSBtZW5naGFsYW5naSBwZW1yb3Nlc2FuIGJlcmthcyAnJS4yNTBzJyBkaSBha3NhcmEgIgorIiclcyclcyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuL2NyZWF0ZSB0cmlnZ2VycyBsb2NrZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiZ2FnYWwgbWVtYnVrYS9tZW1idWF0IGJlcmthcy1rdW5jaSBwZW1pY3UgJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjE0MQorIywgZnV6enkKKyN8IG1zZ2lkICJ0cmlnZ2VyZWQiCittc2dpZCAidHJpZ2dlcnMgYXJlYSIKK21zZ3N0ciAiZGlwaWN1IgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiZ2FnYWwgbWVuYXRhIHN0YXR1cyBiZXJrYXMgdHVuZGEgcGVtaWN1ICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiZ2FnYWwgbWVtYnVrYSBiZXJrYXMgdHVuZGEgcGVtaWN1ICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4vY3JlYXRlIG5ldyB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJnYWdhbCBtZW1idWthL21lbWJ1YXQgYmVya2FzIHR1bmRhIHBlbWljdSAnJS4yNTBzJyB5YW5nIGJhcnUiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjIxNQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciByZWFkaW5nIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImFkYSBnYWxhdCBzYWF0IG1lbWJhY2EgYmVya2FzIHR1bmRhIHBlbWljdSAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MjIzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiZ2FnYWwgbWVudWxpcyBrZSBiZXJrYXMgdHVuZGEgcGVtaWN1ICclLjI1MHMnIHlhbmcgYmFydSIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MjI4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiZ2FnYWwgbWV1dHVwIGJlcmthcyB0dW5kYSBwZW1pY3UgJyUuMjUwcycgeWFuZyBiYXJ1IgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImdhZ2FsIG1lbWFzYW5nIGJlcmthcyB0dW5kYSBwZW1pY3UgJyUuMjU1cycgeWFuZyBiYXJ1IgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MjIyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpbnZhbGlkIG9yIHVua25vd24gc3ludGF4IGluIHRyaWdnZXIgbmFtZSBgJS4yNTBzJyAoaW4gdHJpZ2dlciBpbnRlcmVzdHMgZm9yICIKKyJwYWNrYWdlIGAlLjI1MHMnKSIKK21zZ3N0ciAiIgorInNpbnRha3MgdGlkYWsgc2FoIGF0YXUgdGFrIGRpa2VuYWwgZGkgbmFtYSBwZW1pY3UgJyUuMjUwcycgKGRpIHR1anVhbiBwZW1pY3UgIgorInVudHVrIHBha2V0ICclLjI1MHMnKSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjI2MworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiB0cmlnZ2VyIGludGVyZXN0IGxpc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiZ2FnYWwgbWVtYnVrYSBiZXJrYXMgZGFmdGFyIHR1anVhbiBwZW1pY3UgJyUuMjUwcycgIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MjkyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJnYWdhbCBtZW5ndWxhbmcgYmVya2FzIHR1anVhbiBwZW1pY3UgJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyBzeW50YXggZXJyb3I7IGlsbGVnYWwgcGFja2FnZSBuYW1lIGAlLjI1MHMnOiAiCisiJS4yNTBzIgorbXNnc3RyICIiCisiYWRhIGtlc2FsYWhhbiBiZXJrYXMgdHVqdWFuIHBlbWljdSAnJS4yNTBzJzsgbmFtYSBwYWtldCB0aWRhayBzYWggJyUuMjUwcyc6ICIKKyIlLjI1MHMiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgImdhZ2FsIG1lbnVsaXMgYmVya2FzIHR1anVhbiBwZW1pY3UgJyUuMjUwcycgeWFuZyBiYXJ1IgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzIxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlICclLjI1MHMnIgorbXNnc3RyICJnYWdhbCBtZW5nb3NvbmdrYW4gYmVya2FzIHR1anVhbiBwZW1pY3UgJyUuMjUwcycgeWFuZyBiYXJ1IgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzI0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzeW5jIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgImdhZ2FsIHNpbmtyb25pc2FzaSBiZXJrYXMgdHVqdWFuIHBlbWljdSAnJS4yNTBzJyB5YW5nIGJhcnUiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiZ2FnYWwgbWVtYXNhbmcgYmVya2FzIHR1anVhbiBwZW1pY3UgJyUuMjU1cycgeWFuZyBiYXJ1IgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzQwIGxpYi9kcGtnL3RyaWdsaWIuYzozNDIgbGliL2Rwa2cvdHJpZ2xpYi5jOjQ3MgorIzogc3JjL3JlbW92ZS5jOjI4NiBzcmMvcmVtb3ZlLmM6Mzc3CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZW1vdmUgYCUuMjUwcyciCittc2dzdHIgInRpZGFrIGRhcGF0IG1lbWJ1YW5nICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzYwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiZ2FnYWwgbWVtYnVhdCBiZXJrYXMgdHVqdWFuIHBlbWljdSAnJS4yNTBzJyB5YW5nIGJhcnUiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozODMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgImdhZ2FsIG1lbnV0dXAgYmVya2FzIHR1anVhbiBwZW1pY3UgJyUuMjUwcycgeWFuZyBiYXJ1IgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDU2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkdXBsaWNhdGUgZmlsZSB0cmlnZ2VyIGludGVyZXN0IGZvciBmaWxlbmFtZSBgJS4yNTBzJyBhbmQgcGFja2FnZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorImJlcmthcyB0dWp1YW4gcGVtaWN1IGdhbmRhIHVudHVrIG5hbWEgYmVya2FzICclLjI1MHMnIGRhbiBwYWtldCAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ4MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImdhZ2FsIG1lbWJ1YXQgYmVya2FzIHBlbWljdSBiZXJrYXMgJyUuMjUwcycgeWFuZyBiYXJ1IgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDkzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJnYWdhbCBtZW51bGlzIGJlcmthcyBwZW1pY3UgYmVya2FzICclLjI1MHMnIHlhbmcgYmFydSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ5NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAiZ2FnYWwgbWVuZ29zb25na2FuIGJlcmthcyBwZW1pY3UgYmVya2FzICclLjI1MHMnIHlhbmcgYmFydSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ5OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlICclLjI1MHMnIgorbXNnc3RyICJnYWdhbCBzaW5rcm9uaXNhc2kgYmVya2FzIHBlbWljdSBiZXJrYXMgJyUuMjUwcycgeWFuZyBiYXJ1IgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTAzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJnYWdhbCBtZW51dHVwIGJlcmthcyBwZW1pY3UgYmVya2FzICclLjI1MHMnIHlhbmcgYmFydSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjUwNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGFzIGAlLjI1MHMnIgorbXNnc3RyICJnYWdhbCBtZW1hc2FuZyBiZXJrYXMgcGVtaWN1IGJlcmthcyBiYXJ1IHNlYmFnYWkgJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1NDIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJnYWdhbCBtZW1iYWNhIGJlcmthcyBwZW1pY3UgYmVya2FzICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTUyCisjLCBjLWZvcm1hdAorbXNnaWQgInN5bnRheCBlcnJvciBpbiBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImFkYSBnYWxhdCBzaW50YWtzIGRhbGFtIGJlcmthcyBwZW1pY3UgYmVya2FzICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTYzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmaWxlIHRyaWdnZXJzIHJlY29yZCBtZW50aW9ucyBpbGxlZ2FsIHBhY2thZ2UgbmFtZSBgJS4yNTBzJyAoZm9yIGludGVyZXN0IGluICIKKyJmaWxlIGAlLjI1MHMnKTogJS4yNTBzIgorbXNnc3RyICIiCisicmVrYW0gYmVya2FzIHBlbWljdSBiZXJpc2kgbmFtYSBwYWtldCB0aWRhayBzYWggJyVzLjI1MHMnICh1bnR1ayB0dWp1YW4gZGkgIgorImJlcmthcyAnJS4yNTBzKTogJS4yNTBzIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NjY1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ0cmlnZ2VycyBjaSBmaWxlIGAlLjI1MHMnIGNvbnRhaW5zIGlsbGVnYWwgdHJpZ2dlciBzeW50YXggaW4gdHJpZ2dlciBuYW1lIGAiCisiJS4yNTBzJzogJS4yNTBzIgorbXNnc3RyICIiCisiYmVya2FzIGNpIHBlbWljdSAnJS4yNTBzJyBiZXJpc2kgc2ludGFrcyBwZW1pY3UgdGlkYWsgc2FoIGRpIG5hbWEgcGVtaWN1ICIKKyInJS4yNTBzJzogJS4yNTBzIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Njg0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIHRyaWdnZXJzIGNpIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImdhZ2FsIG1lbWJ1a2EgYmVya2FzIGNpIHBlbWljdTogJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo2OTkKK21zZ2lkICJ0cmlnZ2VycyBjaSBmaWxlIGNvbnRhaW5zIHVua25vd24gZGlyZWN0aXZlIHN5bnRheCIKK21zZ3N0ciAiYmVya2FzIGNpIHBlbWljdSBiZXJpc2kgc2ludGFrcyBrb25maWd1cmFzaSB5YW5nIHRhayBkaWtlbmFsIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NzEyCisjLCBjLWZvcm1hdAorbXNnaWQgInRyaWdnZXJzIGNpIGZpbGUgY29udGFpbnMgdW5rbm93biBkaXJlY3RpdmUgYCUuMjUwcyciCittc2dzdHIgImJlcmthcyBjaSBwZW1pY3UgYmVyaXNpIGtvbmZpZ3VyYXNpIHRhayBkaWtlbmFsICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Nzc2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdHJpZ2dlcnMgc3RhdGUgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICJnYWdhbCBtZW1idWF0IGRpcmVrdG9yaSBzdGF0dXMgcGVtaWN1OiAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjc3OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IG93bmVyc2hpcCBvZiB0cmlnZ2VycyBzdGF0ZSBkaXJlY3RvcnkgYCUuMjUwcyciCittc2dzdHIgImdhZ2FsIG1lbmF0YSBrZXBlbWlsaWthbiBkaXJla3Rvcmkgc3RhdHVzIHBlbWljdTogJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWduYW1lLmM6MzQKK21zZ2lkICJlbXB0eSB0cmlnZ2VyIG5hbWVzIGFyZSBub3QgcGVybWl0dGVkIgorbXNnc3RyICJuYW1hIHBlbWljdSBrb3NvbmcgdGlkYWsgZGlpemlua2FuIgorCisjOiBsaWIvZHBrZy90cmlnbmFtZS5jOjM4Cittc2dpZCAidHJpZ2dlciBuYW1lIGNvbnRhaW5zIGludmFsaWQgY2hhcmFjdGVyIgorbXNnc3RyICJuYW1hIHBlbWljdSBiZXJpc2kgYWtzYXJhIHRpZGFrIHNhaCIKKworIzogbGliL2Rwa2cvdXRpbHMuYzo1NgorIywgYy1mb3JtYXQKK21zZ2lkICJyZWFkIGVycm9yIGluIGAlLjI1MHMnIgorbXNnc3RyICJhZGEgZ2FsYXQgZGkgJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3V0aWxzLmM6NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmdldHMgZ2F2ZSBhbiBlbXB0eSBzdHJpbmcgZnJvbSBgJS4yNTBzJyIKK21zZ3N0ciAiZmdldHMgbWVtYmVyaWthbiBzdHJpbmcga29zb25nIGRhcmkgJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3V0aWxzLmM6NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAidG9vLWxvbmcgbGluZSBvciBtaXNzaW5nIG5ld2xpbmUgaW4gYCUuMjUwcyciCittc2dzdHIgImJhcmlzIHRlcmxhbHUgcGFuamFuZyBhdGF1IGJhcmlzLWJhcnUgaGlsYW5nIGRhbGFtICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy91dGlscy5jOjc1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW9mIHJlYWRpbmcgYCUuMjUwcyciCittc2dzdHIgImFraGlyYW4gYmVya2FzIHRhayB0ZXJkdWdhIHNhYXQgbWVtYmFjYSAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdmFyYnVmLmM6ODIgbGliL2Rwa2cvdmFyYnVmLmM6ODgKK21zZ2lkICJlcnJvciBmb3JtYXR0aW5nIHN0cmluZyBpbnRvIHZhcmJ1ZiB2YXJpYWJsZSIKK21zZ3N0ciAic2FsYWggbWVuYXRhIHN0cmluZyBrZSBkYWxhbSB2YXJpYWJlbCB2YXJidWYiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjE3OSBzcmMvYXJjaGl2ZXMuYzoyMDAgc3JjL2FyY2hpdmVzLmM6NzI0Cittc2dpZCAiZXJyb3IgcmVhZGluZyBmcm9tIGRwa2ctZGViIHBpcGUiCittc2dzdHIgImFkYSBrZXNhbGFoYW4gc2FhdCBtZW1iYWNhIHBpcGUgZHBrZy1kZWIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjE5NQorIywgYy1mb3JtYXQKK21zZ2lkICJza2lwcGVkIHVucGFja2luZyBmaWxlICclLjI1NXMnIChyZXBsYWNlZCBvciBleGNsdWRlZD8pIgorbXNnc3RyICJsZXdhdGkgYmVya2FzIHlhbmcgdGFrIHRlcmJ1a2EgJyUuMjU1cycgKGdhbnRpIGF0YXUgZGlzaXNpaGthbj8pIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoyNDYgc3JjL2FyY2hpdmVzLmM6MjUwCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHNldHRpbmcgdGltZXN0YW1wcyBvZiBgJS4yNTVzJyIKK21zZ3N0ciAiQWRhIGtlc2FsYWhhbiBwZW5hdGFhbiB3YWt0dSBwYWRhICclLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoyNjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igc2V0dGluZyBvd25lcnNoaXAgb2Ygc3ltbGluayBgJS4yNTVzJyIKK21zZ3N0ciAiYWRhIGtlc2FsYWhhbiBzYWF0IG1lbmF0YSBrZXBlbWlsaWthbiBuYXJhIHNpbWJvbGlrICclLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoyNjUgc3JjL2FyY2hpdmVzLmM6NzM0IHNyYy9zdGF0Y21kLmM6MTYzCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHNldHRpbmcgb3duZXJzaGlwIG9mIGAlLjI1NXMnIgorbXNnc3RyICJBZGEga2VzYWxhaGFuIHBlbmF0YWFuIGtlcGVtaWxpa2FuIHBhZGEgJyUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjI2NyBzcmMvYXJjaGl2ZXMuYzo3MzYgc3JjL3N0YXRjbWQuYzoxNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igc2V0dGluZyBwZXJtaXNzaW9ucyBvZiBgJS4yNTVzJyIKK21zZ3N0ciAiQWRhIGtlc2FsYWhhbiBwZW5hdGFhbiBwZXJpemluYW4gcGFkYSAnJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6Mzk1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBzdGF0IChkZXJlZmVyZW5jZSkgZXhpc3Rpbmcgc3ltbGluayBgJS4yNTBzJyIKK21zZ3N0ciAiZ2FnYWwgbWVuYXRhIHN0YXR1cyAoZGVyZWZlcmVuc2kpIG5hcmEgc2ltYm9saWsgJyUuMjUwcycgeWFuZyBhZGEiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjQxNworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZmFpbGVkIHRvIHN0YXQgKGRlcmVmZXJlbmNlKSBwcm9wb3NlZCBuZXcgc3ltbGluayB0YXJnZXQgYCUuMjUwcycgZm9yICIKKyJzeW1saW5rIGAlLjI1MHMnIgorbXNnc3RyICIiCisiZ2FnYWwgbWVuYXRhIHN0YXR1cyAoZGVyZWZlcmVuc2kpIHRhcmdldCBzeW1saW5rICclLjI1MHMnIHlhbmcgZGl0YXdhcmthbiAiCisidW50dWsgbmFyYSBzaW1ib2xpayAnJS4yNTBzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6NDc1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ0cnlpbmcgdG8gb3ZlcndyaXRlIGAlLjI1MHMnLCB3aGljaCBpcyB0aGUgZGl2ZXJ0ZWQgdmVyc2lvbiBvZiBgIgorIiUuMjUwcycgKHBhY2thZ2U6ICUuMTAwcykiCittc2dzdHIgIiIKKyJtZW5jb2JhIG1lbmltcGEgJyUuMjUwcycsIHlhbmcgbWVydXBha2FuIHZlcnNpICclLjI1MHMnIHlhbmcgZGlhbGloa2FuICIKKyIocGFrZXQ6ICUuMTAwcykiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjQ4MQorIywgYy1mb3JtYXQKK21zZ2lkICJ0cnlpbmcgdG8gb3ZlcndyaXRlIGAlLjI1MHMnLCB3aGljaCBpcyB0aGUgZGl2ZXJ0ZWQgdmVyc2lvbiBvZiBgJS4yNTBzJyIKK21zZ3N0ciAibWVuY29iYSBtZW5pbXBhICclLjI1MHMnLCB5YW5nIG1lcnVwYWthbiB2ZXJzaSAnJS4yNTBzJyB5YW5nIGRpYWxpaGthbiIKKworIzogc3JjL2FyY2hpdmVzLmM6NTExCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGAlLjI1NXMnICh3aGljaCBJIHdhcyBhYm91dCB0byBpbnN0YWxsKSIKK21zZ3N0ciAiZ2FnYWwgbWVuYXRhIHN0YXR1cyAnJS4yNTVzJyAoeWFuZyBpbmdpbiBzYXlhIHBhc2FuZykiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjUxOQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidW5hYmxlIHRvIGNsZWFuIHVwIG1lc3Mgc3Vycm91bmRpbmcgYCUuMjU1cycgYmVmb3JlIGluc3RhbGxpbmcgYW5vdGhlciAiCisidmVyc2lvbiIKK21zZ3N0ciAiIgorImdhZ2FsIG1lbWJlcnNpaGthbiBrZWthY2F1YW4gc2VraXRhciAnJS4yNTVzJyBzZWJlbHVtIG1lbWFzYW5nIHZlcnNpIGxhaW4uIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo1MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgcmVzdG9yZWQgYCUuMjU1cycgYmVmb3JlIGluc3RhbGxpbmcgYW5vdGhlciB2ZXJzaW9uIgorbXNnc3RyICJnYWdhbCBtZW5hdGEgc3RhdHVzICclLjI1NXMnIHNlYmVsdW0gbWVtYXNhbmcgdmVyc2kgbGFpbiAiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjU2MQorIywgYy1mb3JtYXQKK21zZ2lkICJhcmNoaXZlIGNvbnRhaW5lZCBvYmplY3QgYCUuMjU1cycgb2YgdW5rbm93biB0eXBlIDB4JXgiCittc2dzdHIgImFyc2lwIGJlcmlzaSBvYnllayAnJS4yNTVzJyBkYXJpIGplbmlzIDB4JXggeWFuZyB0YWsgZGlrZW5hbCIKKworIzogc3JjL2FyY2hpdmVzLmM6NjI2IHNyYy9kaXZlcnRjbWQuYzoxNTAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjY4MgorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMjIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyODQKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNDQxIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNjgwCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE2NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI0NAorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHN0YXQgZmlsZSAnJXMnIgorbXNnc3RyICJnYWdhbCBtZW5hdGEgc3RhdHVzICclcyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjY0MQorIywgYy1mb3JtYXQKK21zZ2lkICJSZXBsYWNpbmcgZmlsZXMgaW4gb2xkIHBhY2thZ2UgJXMgLi4uXG4iCittc2dzdHIgIlNlZGFuZyBtZW5nZ2FudGkgYmVya2FzLWJlcmthcyBkYWxhbSBwYWtldCBsYW1hICVzIC4uLiBcbiIKKworIzogc3JjL2FyY2hpdmVzLmM6NjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlcGxhY2VkIGJ5IGZpbGVzIGluIGluc3RhbGxlZCBwYWNrYWdlICVzIC4uLlxuIgorbXNnc3RyICJEaWdhbnRpIG9sZWggYmVya2FzLWJlcmthcyBkYWxhbSBwYWtldCB0ZXJwYXNhbmcgJXMgLi4uIFxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInRyeWluZyB0byBvdmVyd3JpdGUgZGlyZWN0b3J5ICclLjI1MHMnIGluIHBhY2thZ2UgJS4yNTBzICUuMjUwcyB3aXRoICIKKyJub25kaXJlY3RvcnkiCittc2dzdHIgIiIKKyJtZW5jb2JhIG1lbmltcGEgZGlyZWt0b3JpICclLjI1MHMnIGRhbGFtIHBha2V0ICUuMjUwcyAlLjI1MHMgZGVuZ2FuIG5vbi0iCisiZGlyZWt0b3JpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJ5aW5nIHRvIG92ZXJ3cml0ZSAnJS4yNTBzJywgd2hpY2ggaXMgYWxzbyBpbiBwYWNrYWdlICUuMjUwcyAlLjI1MHMiCittc2dzdHIgIm1lbmNvYmEgbWVuaW1wYSAnJS4yNTBzJywgeWFuZyBqdWdhIGFkYSBkYWxhbSBwYWtldCAlLjI1MHMgJS4yNTBzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3MTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBgJS4yNTVzJyAod2hpbGUgcHJvY2Vzc2luZyBgJS4yNTVzJykiCittc2dzdHIgImdhZ2FsIG1lbWJ1YXQgJyUuMjU1cycgKHNhYXQgbWVtcHJvc2VzICclLjI1NXMnKSIKKworIzogc3JjL2FyY2hpdmVzLmM6NzE4CisjLCBjLWZvcm1hdAorbXNnaWQgImJhY2tlbmQgZHBrZy1kZWIgZHVyaW5nIGAlLjI1NXMnIgorbXNnc3RyICJiYWNrZW5kIGRwa2ctZGViIHNhYXQgJyUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc0NCBzcmMvYXJjaGl2ZXMuYzo5MDggc3JjL2FyY2hpdmVzLmM6OTQ5CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3Npbmcvd3JpdGluZyBgJS4yNTVzJyIKK21zZ3N0ciAiQWRhIGtlc2FsYWhhbiBtZW51dHVwL21lbnVsaXMgJyUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc0OAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBwaXBlIGAlLjI1NXMnIgorbXNnc3RyICJBZGEga2VzYWxhaGFuIHNhYXQgbWVtYnVhdCBwaXBlICclLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NTMgc3JjL2FyY2hpdmVzLmM6NzU4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIGRldmljZSBgJS4yNTVzJyIKK21zZ3N0ciAiQWRhIGtlc2FsYWhhbiBzYWF0IG1lbWJ1YXQgcGlyYW50aSAnJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6NzcxCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIGhhcmQgbGluayBgJS4yNTVzJyIKK21zZ3N0ciAiYWRhIGtlc2FsYWhhbiBzYWF0IG1lbWJ1YXQgJ2hhcmQgbGluaycgJyUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc3NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NTM5CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIHN5bWJvbGljIGxpbmsgYCUuMjU1cyciCittc2dzdHIgImFkYSBrZXNhbGFoYW4gc2FhdCBtZW1idWF0IG5hcmEgc2ltYm9saWsgJyUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc4MworIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBkaXJlY3RvcnkgYCUuMjU1cyciCittc2dzdHIgIkFkYSBrZXNhbGFoYW4gc2FhdCBtZW1idWF0IGRpcmVrdG9yaSAnJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6ODIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBtb3ZlIGFzaWRlIGAlLjI1NXMnIHRvIGluc3RhbGwgbmV3IHZlcnNpb24iCittc2dzdHIgImdhZ2FsIG1lbWluZGFoa2FuICclLjI1NXMnIHVudHVrIG1lbWFzYW5nIHZlcnNpIHlhbmcgYmFydSIKKworIzogc3JjL2FyY2hpdmVzLmM6ODMyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzozMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgbGluayBgJS4yNTVzJyIKK21zZ3N0ciAiZ2FnYWwgbWVtYmFjYSBsaW5rICclLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4MzQgc3JjL2NvbmZpZ3VyZS5jOjQyMworIywgYy1mb3JtYXQKK21zZ2lkICJzeW1ib2xpYyBsaW5rICclLjI1MHMnIHNpemUgaGFzIGNoYW5nZWQgZnJvbSAlamQgdG8gJXpkIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjgzOQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gbWFrZSBiYWNrdXAgc3ltbGluayBmb3IgYCUuMjU1cyciCittc2dzdHIgImdhZ2FsIG1lbWJ1YXQgbmFyYSBzaW1ib2xpayBjYWRhbmdhbiB1bnR1ayAnJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6ODQxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaG93biBiYWNrdXAgc3ltbGluayBmb3IgYCUuMjU1cyciCittc2dzdHIgImdhZ2FsIG1lbmd1YmFoIGtlcGVtaWxpa2FuIG5hcmEgc2ltYm9saWsgY2FkYW5nYW4gdW50dWsgJyUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjg0NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gbWFrZSBiYWNrdXAgbGluayBvZiBgJS4yNTVzJyBiZWZvcmUgaW5zdGFsbGluZyBuZXcgdmVyc2lvbiIKK21zZ3N0ciAiZ2FnYWwgbWVtYnVhdCBuYXJhIGNhZGFuZ2FuIHVudHVrICclLjI1NXMnIHNlYmVsdW0gbWVtYXNhbmcgdmVyc2kgYmFydSIKKworIzogc3JjL2FyY2hpdmVzLmM6ODYzIHNyYy9hcmNoaXZlcy5jOjk1NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgdmVyc2lvbiBvZiBgJS4yNTVzJyIKK21zZ3N0ciAiZ2FnYWwgbWVtYXNhbmcgdmVyc2kgYmFydSBkYXJpICclLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo5MDIgc3JjL2FyY2hpdmVzLmM6OTQ1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuICclLjI1NXMnIgorbXNnc3RyICJnYWdhbCBtZW1idWthICclLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo5NDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgZmlsZSAnJS4yNTVzJyIKK21zZ3N0ciAiZ2FnYWwgc2lua3JvbmlzYXNpICclLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDAwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpZ25vcmluZyBkZXBlbmRlbmN5IHByb2JsZW0gd2l0aCAlczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorIm1lbmdhYmFpa2FuIG1hc2FsYWgga2V0ZXJnYW50dW5nYW4gZGVuZ2FuICVzOiBcbiIKKyIlcyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAwNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiY29uc2lkZXJpbmcgZGVjb25maWd1cmF0aW9uIG9mIGVzc2VudGlhbFxuIgorIiBwYWNrYWdlICVzLCB0byBlbmFibGUgJXMuIgorbXNnc3RyICIiCisibWVuY29iYSBkZWtvbmZpZ3VyYXNpIHBha2V0LXBha2V0IHNhbmdhdCBwZW50aW5nIFxuIgorIiVzLCBhZ2FyIGRhcGF0IG1lbmF0YSAlcy4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IG5vLCAlcyBpcyBlc3NlbnRpYWwsIHdpbGwgbm90IGRlY29uZmlndXJlXG4iCisiIGl0IGluIG9yZGVyIHRvIGVuYWJsZSAlcy5cbiIKK21zZ3N0ciAiIgorImRwa2c6IHRpZGFrLCAlcyBzYW5nYXQgcGVudGluZywgdGlkYWsgYWRhIGRla29uZmlndXJhc2kgXG4iCisidW50dWsgbWVuYXRhICVzLiBcbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAyMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogbm8sIGNhbm5vdCBwcm9jZWVkIHdpdGggJXMgKC0tYXV0by1kZWNvbmZpZ3VyZSB3aWxsIGhlbHApOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogdGlkYWssIGdhZ2FsIG1lbXByb3NlcyAlcyAoLS1hdXRvLWRlY29uZmlndXJlIG11bmdraW4gYWthbiBtZW1iYW50dSk6XG4iCisiJXMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVtb3ZhbCBvZiAlLjI1MHMiCittc2dzdHIgInBlbmdoYXB1c2FuICUuMjUwcyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA1NworIywgYy1mb3JtYXQKK21zZ2lkICJpbnN0YWxsYXRpb24gb2YgJS4yNTBzIgorbXNnc3RyICJwZW1hc2FuZ2FuICUuMjU1cyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA1OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogY29uc2lkZXJpbmcgZGVjb25maWd1cmF0aW9uIG9mICVzLCB3aGljaCB3b3VsZCBiZSBicm9rZW4gYnkgJXMgLi4uXG4iCittc2dzdHIgImRwa2c6IG1lbmNvYmEgZGVrb25maWd1cmFzaSAlcywgeWFuZyBha2FuIGRpa2FjYXVrYW4gb2xlaCAlcyAuLi4gXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogeWVzLCB3aWxsIGRlY29uZmlndXJlICVzIChicm9rZW4gYnkgJXMpLlxuIgorbXNnc3RyICJkcGtnOiB5YSwgbGFrdWthbiBkZWtvbmZpZ3VyYXNpICVzIChkaWthY2F1a2FuIG9sZWggJXMpLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDY5IHNyYy9hcmNoaXZlcy5jOjExODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IHJlZ2FyZGluZyAlcyBjb250YWluaW5nICVzOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogbWVtYW5kYW5nICVzIGJlcmlzaSAlczogXG4iCisiJXMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNzcKK21zZ2lkICJpZ25vcmluZyBicmVha2FnZSwgbWF5IHByb2NlZWQgYW55d2F5ISIKK21zZ3N0ciAiYWJhaWthbiBrZWthY2F1YW4sIHByb3NlcyBkaWxhbmp1dGthbiEgIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDgyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpbnN0YWxsaW5nICUuMjUwcyB3b3VsZCBicmVhayAlLjI1MHMsIGFuZFxuIgorIiBkZWNvbmZpZ3VyYXRpb24gaXMgbm90IHBlcm1pdHRlZCAoLS1hdXRvLWRlY29uZmlndXJlIG1pZ2h0IGhlbHApIgorbXNnc3RyICIiCisibWVtYXNhbmcgJS4yNTBzIGFrYW4gbWVydXNhayAlLjI1MHMsIGRhblxuIgorImRla29uZmlndXJhc2kgdGlkYWsgZGlpemlua2FuICgtLWF1dG8tZGVjb25maWd1cmUgbXVuZ2tpbiBtZW1iYW50dSkiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW5zdGFsbGluZyAlLjI1MHMgd291bGQgYnJlYWsgZXhpc3Rpbmcgc29mdHdhcmUiCittc2dzdHIgIm1lbWFzYW5nICUuMjUwcyBha2FuIG1lcnVzYWsgcGVyYW5na2F0IGx1bmFrIHlhbmcgYWRhIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTE2CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IGNvbnNpZGVyaW5nIHJlbW92aW5nICVzIGluIGZhdm91ciBvZiAlcyAuLi5cbiIKK21zZ3N0ciAiZHBrZzogc2VkYW5nIG1lbmNvYmEgbWVtYnVhbmcgJXMgc2VodWJ1bmdhbiBkZW5nYW4gcGFrZXQgJXMgLi4uIFxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTIyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGlzIG5vdCBwcm9wZXJseSBpbnN0YWxsZWQgLSBpZ25vcmluZyBhbnkgZGVwZW5kZW5jaWVzIG9uIGl0LlxuIgorbXNnc3RyICIiCisiJXMgdGlkYWsgdGVycGFzYW5nIGRlbmdhbiBiZW5hciAtIGFiYWlrYW4gc2VtdWEga2V0ZXJnYW50dW5nYW4gZGVuZ2FuIHBha2V0ICIKKyJpbmkuIFxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTUxCisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IG1heSBoYXZlIHRyb3VibGUgcmVtb3ZpbmcgJXMsIGFzIGl0IHByb3ZpZGVzICVzIC4uLlxuIgorbXNnc3RyICIiCisiZHBrZzogbXVuZ2tpbiBhZGEgbWFzYWxhaCBzYWF0IG1lbWJ1YW5nICVzLCBrYXJlbmEgcGFrZXQgaW5pIG1lbnllZGlha2FuICIKKyIlcyAuLi4gXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IHBhY2thZ2UgJXMgcmVxdWlyZXMgcmVpbnN0YWxsYXRpb24sIGJ1dCB3aWxsIHJlbW92ZSBhbnl3YXkgYXMgeW91ICIKKyJyZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiIKKyJkcGtnOiBwYWtldCAlcyBwZXJsdSBkaXBhc2FuZyB1bGFuZywgdGV0YXBpIGFrYW4gZGlidWFuZyBzZXN1YWkgZGVuZ2FuICIKKyJwZXJtaW50YWFuIEFuZGEuIFxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTY5CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IHBhY2thZ2UgJXMgcmVxdWlyZXMgcmVpbnN0YWxsYXRpb24sIHdpbGwgbm90IHJlbW92ZS5cbiIKK21zZ3N0ciAiZHBrZzogcGFrZXQgJXMgcGVybHUgZGlwYXNhbmcgdWxhbmcsIHRpZGFrIGFrYW4gZGlidWFuZy5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE3OAorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiB5ZXMsIHdpbGwgcmVtb3ZlICVzIGluIGZhdm91ciBvZiAlcy5cbiIKK21zZ3N0ciAiZHBrZzogeWEsIGFrYW4gbWVtYnVhbmcgJXMgc2VodWJ1bmdhbiBkZW5nYW4gcGFrZXQgJXMuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmxpY3RpbmcgcGFja2FnZXMgLSBub3QgaW5zdGFsbGluZyAlLjI1MHMiCittc2dzdHIgInBha2V0LXBha2V0IGJlcmJlbnR1cmFuIC0gdGlkYWsgYWthbiBtZW1hc2FuZyAlLjI1MHMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExOTEKK21zZ2lkICJpZ25vcmluZyBjb25mbGljdCwgbWF5IHByb2NlZWQgYW55d2F5ISIKK21zZ3N0ciAiYWJhaWthbiBwYWtldCB5YW5nIGJlbnRyb2ssIHByb3NlcyBkaWxhbmp1dGthbiEgIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjM1CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgLS1yZWN1cnNpdmUgbmVlZHMgYXQgbGVhc3Qgb25lIHBhdGggYXJndW1lbnQiCittc2dzdHIgIi0tJXMgLS1yZWN1cnNpdmUgcGVybHUgc2VkaWtpdG55YSBzYXR1IGFyZ3VtZW4gcGF0aCIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI0NQorbXNnaWQgImZpbmQgZm9yIGRwa2cgLS1yZWN1cnNpdmUiCittc2dzdHIgInBlcmludGFoICdmaW5kJyB1bnR1ayBkcGtnIC0tcmVjdXJzaXZlIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjY2Cittc2dpZCAiZmFpbGVkIHRvIGZkb3BlbiBmaW5kJ3MgcGlwZSIKK21zZ3N0ciAiR2FnYWwgbWVtYnVrYSBkZXNrcmlwdG9yLWJlcmthcyBwaXBlICdmaW5kJyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3MgorbXNnaWQgImVycm9yIHJlYWRpbmcgZmluZCdzIHBpcGUiCittc2dzdHIgIkFkYSBrZXNhbGFoYW4gc2FhdCBtZW1iYWNhIHBpcGUgJ2ZpbmQnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjczCittc2dpZCAiZXJyb3IgY2xvc2luZyBmaW5kJ3MgcGlwZSIKK21zZ3N0ciAiQWRhIGtlc2FsYWhhbiBzYWF0IG1lbnV0dXAgcGlwZSAnZmluZCciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmluZCBmb3IgLS1yZWN1cnNpdmUgcmV0dXJuZWQgdW5oYW5kbGVkIGVycm9yICVpIgorbXNnc3RyICIiCisicGVyaW50YWggJ2ZpbmQnIHVudHVrIC0tcmVjdXJzaXZlIG1lbmdoYXNpbGthbiBrZXNhbGFoYW4geWFuZyB0YWsgdGVyYXRhc2k6ICIKKyIlaSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3OQorbXNnaWQgInNlYXJjaGVkLCBidXQgZm91bmQgbm8gcGFja2FnZXMgKGZpbGVzIG1hdGNoaW5nICouZGViKSIKK21zZ3N0ciAiIgorInRlbGFoIGRpY2FyaSwgdGV0YXBpIHRpZGFrIG1lbmVtdWthbiBzdWF0dSBwYWtldCBwdW4gKGJlcmthcy1iZXJrYXMgeWFuZyAiCisiY29jb2sgZGVuZ2FuICouZGViKSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI5MAorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGF0IGxlYXN0IG9uZSBwYWNrYWdlIGFyY2hpdmUgZmlsZSBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyBidXR1aCBzZWRpa2l0bnlhIHNhdHUgYXJndW1lbiBiZXJrYXMgYXJzaXAgcGFrZXQiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzMjUgc3JjL2RpdmVydGNtZC5jOjc4IHNyYy9kaXZlcnRjbWQuYzoxMTgKKyM6IHNyYy9lbnF1aXJ5LmM6MTY2IHNyYy9lbnF1aXJ5LmM6Mjc5IHNyYy9lbnF1aXJ5LmM6NDQ5IHNyYy9lbnF1aXJ5LmM6NDUxCisjOiBzcmMvZW5xdWlyeS5jOjQ2NCBzcmMvbWFpbi5jOjY2IHNyYy9tYWluLmM6MTYzIHNyYy9tYWluLmM6MzE0CisjOiBzcmMvbWFpbi5jOjQ5MyBzcmMvcGFja2FnZXMuYzoyNTQgc3JjL3F1ZXJ5Y21kLmM6MjUyIHNyYy9xdWVyeWNtZC5jOjM1NQorIzogc3JjL3F1ZXJ5Y21kLmM6Mzk2IHNyYy9xdWVyeWNtZC5jOjQwNCBzcmMvcXVlcnljbWQuYzo0NDggc3JjL3F1ZXJ5Y21kLmM6NTE3CisjOiBzcmMvcXVlcnljbWQuYzo2MDYgc3JjL3F1ZXJ5Y21kLmM6NjUwIHNyYy9zZWxlY3QuYzo3OSBzcmMvc3RhdGNtZC5jOjY4CisjOiBzcmMvc3RhdGNtZC5jOjk4IHNyYy90cmlnY21kLmM6NTggc3JjL3RyaWdjbWQuYzo5MCBkcGtnLWRlYi9idWlsZC5jOjQ0MQorIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIxNyBkcGtnLWRlYi9leHRyYWN0LmM6MjUwIGRwa2ctZGViL2luZm8uYzoyMDMKKyM6IGRwa2ctZGViL2luZm8uYzoyNjUgZHBrZy1kZWIvbWFpbi5jOjYwIGRwa2ctZGViL21haW4uYzoxMjYKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjI1NyBkcGtnLXNwbGl0L21haW4uYzo1NCBkcGtnLXNwbGl0L21haW4uYzo5OAorIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE0NCBkcGtnLXNwbGl0L3F1ZXVlLmM6MjgwCittc2dpZCAiPHN0YW5kYXJkIG91dHB1dD4iCittc2dzdHIgIjxrZWx1YXJhbiBzdGFuZGFyPiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTMyNiBzcmMvcGFja2FnZXMuYzoyNTUgc3JjL3F1ZXJ5Y21kLmM6MjUzCisjOiBzcmMvcXVlcnljbWQuYzozNTMgc3JjL3F1ZXJ5Y21kLmM6NDU0IHNyYy9xdWVyeWNtZC5jOjUxOCBzcmMvc2VsZWN0LmM6ODAKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjE2OSBkcGtnLXNwbGl0L3F1ZXVlLmM6MjE4Cittc2dpZCAiPHN0YW5kYXJkIGVycm9yPiIKK21zZ3N0ciAiPGdhbGF0IHN0YW5kYXI+IgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzY3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJTZWxlY3RpbmcgcHJldmlvdXNseSBkZXNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dpZCAiU2VsZWN0aW5nIHByZXZpb3VzbHkgdW5zZWxlY3RlZCBwYWNrYWdlICVzLlxuIgorbXNnc3RyICJNZW1pbGloIHBha2V0ICVzIHlhbmcgc2ViZWx1bW55YSB0aWRhayBkaXBpbGloLiBcbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTM3MQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiU2tpcHBpbmcgZGVzZWxlY3RlZCBwYWNrYWdlICVzLlxuIgorbXNnaWQgIlNraXBwaW5nIHVuc2VsZWN0ZWQgcGFja2FnZSAlcy5cbiIKK21zZ3N0ciAiQWJhaWthbiBwYWtldCB5YW5nIHRhayBkaXBpbGloOiAlcy4gXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiVmVyc2lvbiAlLjI1MHMgb2YgJS4yNTBzIGFscmVhZHkgaW5zdGFsbGVkLCBza2lwcGluZy5cbiIKK21zZ3N0ciAiVmVyc2kgJS4yNTBzIGRhcmkgcGFrZXQgJS4yNTBzIHRlbGFoIGRpcGFzYW5nLCBkaWxld2F0aS5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTM5NworIywgYy1mb3JtYXQKK21zZ2lkICJkb3duZ3JhZGluZyAlLjI1MHMgZnJvbSAlLjI1MHMgdG8gJS4yNTBzLiIKK21zZ3N0ciAibWVudXJ1bmthbiB2ZXJzaSBwYWtldCAlLjI1MHMgZGFyaSAlLjI1MHMga2UgJS4yNTBzLiAiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjE0MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiV2lsbCBub3QgZG93bmdyYWRlICUuMjUwcyBmcm9tIHZlcnNpb24gJS4yNTBzIHRvICUuMjUwcywgc2tpcHBpbmcuXG4iCittc2dzdHIgIiIKKyJUaWRhayBha2FuIG1lbnVydW5rYW4gdmVyc2kgcGFrZXQgJS4yNTBzIGRhcmkgdmVyc2kgJS4yNTBzIGtlICUuMjUwcywgIgorImRpbGV3YXRpLiBcbiIKKworIzogc3JjL2NsZWFudXAuYzo4NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidW5hYmxlIHRvIHJlbW92ZSBuZXdseS1pbnN0YWxsZWQgdmVyc2lvbiBvZiBgJS4yNTBzJyB0byBhbGxvdyByZWluc3RhbGxhdGlvbiAiCisib2YgYmFja3VwIGNvcHkiCittc2dzdHIgIiIKKyJnYWdhbCBtZW1idWFuZyB2ZXJzaSB0ZXJiYXJ1IGRhcmkgcGFrZXQgJyUuMjUwcycgYWdhciBkYXBhdCBtZW1hc2FuZyB1bGFuZyAiCisic2FsaW5hbiBjYWRhbmdhbm55YSIKKworIzogc3JjL2NsZWFudXAuYzo5MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVzdG9yZSBiYWNrdXAgdmVyc2lvbiBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiZ2FnYWwgbWVuZ2VtYmFsaWthbiB2ZXJzaSBjYWRhbmdhbiBkYXJpIHBha2V0ICclLjI1MHMnIgorCisjOiBzcmMvY2xlYW51cC5jOjk3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgYmFja3VwIGNvcHkgb2YgJyUuMjUwcyciCittc2dzdHIgImdhZ2FsIG1lbWJ1YW5nIHZlcnNpIGNhZGFuZ2FuIGRhcmkgcGFrZXQgJyUuMjUwcyciCisKKyM6IHNyYy9jbGVhbnVwLmM6MTAxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgbmV3bHktaW5zdGFsbGVkIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dzdHIgImdhZ2FsIG1lbWJ1YW5nIHZlcnNpIHlhbmcgYmFydSBkaWluc3RhbCBkYXJpICclLjI1MHMnIgorCisjOiBzcmMvY2xlYW51cC5jOjEwOAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIG5ld2x5LWV4dHJhY3RlZCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICJnYWdhbCBtZW1idWFuZyB2ZXJzaSB5YW5nIGJhcnUgZGl1cmFpIGRhcmkgJyUuMjUwcyciCisKKyM6IHNyYy9jb25maWd1cmUuYzoxMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgbmV3IGRpc3RyaWJ1dGVkIGNvbmZmaWxlICclLjI1MHMnIgorbXNnc3RyICJnYWdhbCBtZW5hdGEgc3RhdHVzIGJlcmthcyBrb25maWcgdGVyZGlzdHJpYnVzaSAnJS4yNTBzJyB5YW5nIGJhcnUiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgY3VycmVudCBpbnN0YWxsZWQgY29uZmZpbGUgYCUuMjUwcyciCittc2dzdHIgImdhZ2FsIG1lbmF0YSBiZXJrYXMga29uZmlnICclLjI1MHMnIHlhbmcgdGVsYWggZGlwYXNhbmciCisKKyM6IHNyYy9jb25maWd1cmUuYzoxMjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIkNvbmZpZ3VyYXRpb24gZmlsZSBgJXMnLCBkb2VzIG5vdCBleGlzdCBvbiBzeXN0ZW0uXG4iCisiSW5zdGFsbGluZyBuZXcgY29uZmlnIGZpbGUgYXMgeW91IHJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiIgorIlxuIgorIkJlcmthcyBrb25maWd1cmFzaSAnJXMnIHRpZGFrIGFkYSBwYWRhIHNpc3RlbS4gXG4iCisiTWVtYXNhbmcgYmVya2FzIGtvbmZpZ3VyYXNpIGJhcnUgc2VzdWFpIHBlcm1pbnRhYW4uIFxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTY4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlIG9sZCBiYWNrdXAgJyUuMjUwcyc6ICVzIgorbXNnc3RyICIlczogZ2FnYWwgbWVtYnVhbmcgYmVya2FzIGNhZGFuZ2FuIGxhbWEgJyUuMjUwcyc6ICVzICIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE3NgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIHJlbmFtZSAnJS4yNTBzJyB0byAnJS4yNTBzJzogJXMiCittc2dzdHIgIiVzOiBnYWdhbCBtZW5nZ2FudGkgbmFtYSAnJS4yNTBzJyBrZSAnJS4yNTBzJzogJXMgIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTgyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiJXM6IGdhZ2FsIG1lbWJ1YW5nICclLjI1MHMnOiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE4OAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIHJlbW92ZSBvbGQgZGlzdHJpYnV0ZWQgdmVyc2lvbiAnJS4yNTBzJzogJXMiCittc2dzdHIgIiVzOiBnYWdhbCBtZW1idWFuZyB2ZXJzaSB0ZXJkaXN0cmlidXNpICclLjI1MHMnIHlhbmcgbGFtYTogJXMgIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTkyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlICclLjI1MHMnIChiZWZvcmUgb3ZlcndyaXRlKTogJXMiCittc2dzdHIgIiVzOiBnYWdhbCBtZW1idWFuZyAnJS4yNTBzJyAoc2ViZWx1bSBtZW5pbXBhKTogJXMgIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTk2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gbGluayAnJS4yNTBzJyB0byAnJS4yNTBzJzogJXMiCittc2dzdHIgIiVzOiBnYWdhbCBtZW1idWF0IG5hcmEgJyUuMjUwcycga2UgJyUuMjUwczogJXMgIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjAwCisjLCBjLWZvcm1hdAorbXNnaWQgIkluc3RhbGxpbmcgbmV3IHZlcnNpb24gb2YgY29uZmlnIGZpbGUgJXMgLi4uXG4iCittc2dzdHIgIk1lbWFzYW5nIGJlcmthcyBrb25maWd1cmFzaSBiYXJ1ICVzIC4uLiBcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjIwNiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NTQ2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIGAlLjI1MHMnIGFzIGAlLjI1MHMnIgorbXNnc3RyICJnYWdhbCBtZW1hc2FuZyAnJS4yNTBzJyBzZWJhZ2FpICclLjI1MHMnIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjU3CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHBhY2thZ2UgbmFtZWQgYCVzJyBpcyBpbnN0YWxsZWQsIGNhbm5vdCBjb25maWd1cmUiCittc2dzdHIgInRpZGFrIGFkYSBwYWtldCBiZXJuYW1hICclcycgeWFuZyBkaXBhc2FuZzsgdGlkYWsgZGFwYXQgZGlrb25maWd1cmFzaSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI2MAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlICUuMjUwcyBpcyBhbHJlYWR5IGluc3RhbGxlZCBhbmQgY29uZmlndXJlZCIKK21zZ3N0ciAicGFrZXQgJS4yNTBzIHRlbGFoIGRpcGFzYW5nIGRhbiBkaWtvbmZpZ3VyYXNpIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjYzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJwYWNrYWdlICUuMjUwcyBpcyBub3QgcmVhZHkgZm9yIGNvbmZpZ3VyYXRpb25cbiIKKyIgY2Fubm90IGNvbmZpZ3VyZSAoY3VycmVudCBzdGF0dXMgYCUuMjUwcycpIgorbXNnc3RyICIiCisicGFrZXQgJS4yNTBzIGJlbHVtIHNpYXAgZGlrb25maWd1cmFzaVxuIgorIiAgdGlkYWsgZGFwYXQgZGlrb25maWd1cmFzaSAoc3RhdHVzIHNla2FyYW5nICclLjI1MHMnKSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI5NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogZGVwZW5kZW5jeSBwcm9ibGVtcyBwcmV2ZW50IGNvbmZpZ3VyYXRpb24gb2YgJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiBtYXNhbGFoIGtldGVyZ2FudHVuZ2FuIG1lbmNla2FsIGtvbmZpZ3VyYXNpICVzOiBcbiIKKyIgJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoyOTcKK21zZ2lkICJkZXBlbmRlbmN5IHByb2JsZW1zIC0gbGVhdmluZyB1bmNvbmZpZ3VyZWQiCittc2dzdHIgImFkYSBtYXNhbGFoIGtldGVyZ2FudHVuZ2FuIC0gYmlhcmthbiB0aWRhayBkaWtvbmZpZ3VyYXNpIgorCisjOiBzcmMvY29uZmlndXJlLmM6MzAxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiAlczogZGVwZW5kZW5jeSBwcm9ibGVtcywgYnV0IGNvbmZpZ3VyaW5nIGFueXdheSBhcyB5b3UgcmVxdWVzdGVkOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogJXM6IGFkYSBtYXNhbGFoIGtldGVyZ2FudHVuZ2FuLCBuYW11biB0ZXRhcCBkaWtvbmZpZ3VyYXNpIHNlc3VhaSAiCisicGVybWludGFhbjogXG4iCisiJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzozMDkKK21zZ2lkICIiCisiUGFja2FnZSBpcyBpbiBhIHZlcnkgYmFkIGluY29uc2lzdGVudCBzdGF0ZSAtIHlvdSBzaG91bGRcbiIKKyIgcmVpbnN0YWxsIGl0IGJlZm9yZSBhdHRlbXB0aW5nIGNvbmZpZ3VyYXRpb24uIgorbXNnc3RyICIiCisiUGFrZXQgZGFsYW0ga2VhZGFhbiB0aWRhayBrb25zaXN0ZW4geWFuZyBwYXJhaCAtIFxuIgorIkFuZGEgaGFydXMgbWVtYXNhbmcgdWxhbmcgc2ViZWx1bSBtZWxha3VrYW4ga29uZmlndXJhc2kiCisKKyM6IHNyYy9jb25maWd1cmUuYzozMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2V0dGluZyB1cCAlcyAoJXMpIC4uLlxuIgorbXNnc3RyICJTZWRhbmcgbWVuYXRhICVzICglcykgLi4uIFxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6Mzk2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogdW5hYmxlIHRvIHN0YXQgY29uZmlnIGZpbGUgJyVzJ1xuIgorIiAoPSAnJXMnKTogJXMiCittc2dzdHIgIiIKKyIlczogZ2FnYWwgbWVuYXRhIHN0YXR1cyBiZXJrYXMga29uZmlndXJhc2kgJyVzJyBcbiIKKyIgKD0gJyVzJyk6ICVzICIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQwOQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IGNvbmZpZyBmaWxlICclcycgaXMgYSBjaXJjdWxhciBsaW5rXG4iCisiICg9ICclcycpIgorbXNnc3RyICIiCisiJXM6IGJlcmthcyBrb25maWd1cmFzaSAnJXMnIGFkYWxhaCBuYXJhIHNpcmt1bGFyIFxuIgorIiAoPSAnJXMnKSAiCisKKyM6IHNyYy9jb25maWd1cmUuYzo0MTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiB1bmFibGUgdG8gcmVhZGxpbmsgY29uZmZpbGUgJyVzJ1xuIgorIiAoPSAnJXMnKTogJXMiCittc2dzdHIgIiIKKyIlczogZ2FnYWwgbWVtYmFjYS1iYXJpcyBiZXJrYXMga29uZmlndXJhc2kgJyVzJ1xuIgorIiAgKD0gJyVzJyk6ICVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDQ0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogY29uZmZpbGUgJyUuMjUwcycgcmVzb2x2ZXMgdG8gZGVnZW5lcmF0ZSBmaWxlbmFtZVxuIgorIiAoJyVzJyBpcyBhIHN5bWxpbmsgdG8gJyVzJykiCittc2dzdHIgIiIKKyIlczogYmVya2FzIGtvbmZpZ3VyYXNpICclLjI1MHMnIG1lbmdoYXNpbGthbiBuYW1hIGJlcmthcyB5YW5nICIKKyJ0ZXJkZWdlbmVyYXNpIFxuIgorIiAoJyVzJyBhZGFsYWggbmFyYSBzaW1ib2xpayBrZSAnJXMnKSAiCisKKyM6IHNyYy9jb25maWd1cmUuYzo0NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGNvbmZmaWxlICclLjI1MHMnIGlzIG5vdCBhIHBsYWluIGZpbGUgb3Igc3ltbGluayAoPSAnJXMnKSIKK21zZ3N0ciAiIgorIiVzOiBiZXJrYXMga29uZmlndXJhc2kgJyUuMjUwcycgYnVrYW4gc2VidWFoIGJlcmthcyBub3JtYWwgYXRhdSBuYXJhICIKKyJzaW1ib2xpayAoPSAnJXMnKSAiCisKKyM6IHNyYy9jb25maWd1cmUuYzo0ODYKK21zZ2lkICJtZDVoYXNoIgorbXNnc3RyICJoYXNoIG1kNSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQ5MgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogdW5hYmxlIHRvIG9wZW4gY29uZmZpbGUgJXMgZm9yIGhhc2g6ICVzIgorbXNnc3RyICIlczogZ2FnYWwgbWVtYnVrYSBiZXJrYXMga29uZmlndXJhc2kgJXMgdW50dWsgZGktaGFzaDogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzo1MjIgc3JjL2NvbmZpZ3VyZS5jOjUyNgorbXNnaWQgImNvbmZmaWxlIGRpZmZlcmVuY2UgdmlzdWFsaXplciIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NTQzCittc2dpZCAiVHlwZSBgZXhpdCcgd2hlbiB5b3UncmUgZG9uZS5cbiIKK21zZ3N0ciAiS2V0aWsgJ2V4aXQnIGJpbGEgdGVsYWggc2VsZXNhaS5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjU1MiBzcmMvY29uZmlndXJlLmM6NTU2Cittc2dpZCAiY29uZmZpbGUgc2hlbGwiCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYwMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiQ29uZmlndXJhdGlvbiBmaWxlIGAlcyciCittc2dzdHIgIiIKKyJcbiIKKyJCZXJrYXMga29uZmlndXJhc2kgJyVzJyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYwNAorIywgYy1mb3JtYXQKK21zZ2lkICIgKGFjdHVhbGx5IGAlcycpIgorbXNnc3RyICIgKHNlYmVuYXJueWEgJyVzJykiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiA9PT4gRmlsZSBvbiBzeXN0ZW0gY3JlYXRlZCBieSB5b3Ugb3IgYnkgYSBzY3JpcHQuXG4iCisiID09PiBGaWxlIGFsc28gaW4gcGFja2FnZSBwcm92aWRlZCBieSBwYWNrYWdlIG1haW50YWluZXIuXG4iCittc2dzdHIgIiIKKyJcbiIKKyIgPT0+IEJlcmthcyBwYWRhIHNpc3RlbSB5YW5nIGRpYnVhdCBvbGVoIEFuZGEgYXRhdSBzdWF0dSBza3JpcC5cbiIKKyIgPT0+IEJlcmthcyBqdWdhIGFkYSBkYWxhbSBwYWtldCB5YW5nIGRpc2VkaWFrYW4gb2xlaCBwZW5nZWxvbGEgcGFrZXQuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiAgICAgTm90IG1vZGlmaWVkIHNpbmNlIGluc3RhbGxhdGlvbi5cbiIKK21zZ3N0ciAiIgorIlxuIgorIiAgICAgVGlkYWsgZGl1YmFoIHNlamFrIHBlbWFzYW5nYW4uIFxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjE1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgPT0+IE1vZGlmaWVkIChieSB5b3Ugb3IgYnkgYSBzY3JpcHQpIHNpbmNlIGluc3RhbGxhdGlvbi5cbiIKK21zZ3N0ciAiIgorIlxuIgorIiA9PT4gVGVsYWggZGl1YmFoIChvbGVoIEFuZGEgYXRhdSBzdWF0dSBza3JpcCkgc2VqYWsgcGVtYXNhbmdhbi5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYxNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiID09PiBEZWxldGVkIChieSB5b3Ugb3IgYnkgYSBzY3JpcHQpIHNpbmNlIGluc3RhbGxhdGlvbi5cbiIKK21zZ3N0ciAiIgorIlxuIgorIiA9PT4gVGVsYWggZGlidWFuZyAob2xlaCBBbmRhIGF0YXUgc3VhdHUgc2tyaXApIHNlamFrIHBlbWFzYW5nYW4uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBQYWNrYWdlIGRpc3RyaWJ1dG9yIGhhcyBzaGlwcGVkIGFuIHVwZGF0ZWQgdmVyc2lvbi5cbiIKK21zZ3N0ciAiID09PiBEaXN0cmlidXRvciBwYWtldCB0ZWxhaCBtZW1iYXdhIHN1YXR1IHZlcnNpIHRlcmJhcnUuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAgICBWZXJzaW9uIGluIHBhY2thZ2UgaXMgdGhlIHNhbWUgYXMgYXQgbGFzdCBpbnN0YWxsYXRpb24uXG4iCittc2dzdHIgIiAgICAgVmVyc2kgZGFsYW0gcGFrZXQgc2FtYSBkZW5nYW4gcGVtYXNhbmdhbiB0ZXJha2hpci5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYyOAorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IFVzaW5nIG5ldyBmaWxlIGFzIHlvdSByZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiA9PT4gR3VuYWthbiBiZXJrYXMgYmFydSBzZXN1YWkgcGVybWludGFhbi5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYzMgorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IFVzaW5nIGN1cnJlbnQgb2xkIGZpbGUgYXMgeW91IHJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiID09PiBHdW5ha2FuIGJlcmthcyBsYW1hIHNlc3VhaSBwZXJtaW50YWFuLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjQxCisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gS2VlcGluZyBvbGQgY29uZmlnIGZpbGUgYXMgZGVmYXVsdC5cbiIKK21zZ3N0ciAiID09PiBQZXJ0YWhhbmthbiBiZXJrYXMga29uZmlndXJhc2kgbGFtYSBzZWJhZ2FpIGJhd2Fhbi5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY0NQorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IFVzaW5nIG5ldyBjb25maWcgZmlsZSBhcyBkZWZhdWx0LlxuIgorbXNnc3RyICIgPT0+IEd1bmFrYW4gYmVya2FzIGtvbmZpZ3VyYXNpIGJhcnUgc2ViYWdhaSBiYXdhYW4uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiAgIFdoYXQgd291bGQgeW91IGxpa2UgdG8gZG8gYWJvdXQgaXQgPyAgWW91ciBvcHRpb25zIGFyZTpcbiIKKyIgICAgWSBvciBJICA6IGluc3RhbGwgdGhlIHBhY2thZ2UgbWFpbnRhaW5lcidzIHZlcnNpb25cbiIKKyIgICAgTiBvciBPICA6IGtlZXAgeW91ciBjdXJyZW50bHktaW5zdGFsbGVkIHZlcnNpb25cbiIKKyIgICAgICBEICAgICA6IHNob3cgdGhlIGRpZmZlcmVuY2VzIGJldHdlZW4gdGhlIHZlcnNpb25zXG4iCisiICAgICAgWiAgICAgOiBzdGFydCBhIHNoZWxsIHRvIGV4YW1pbmUgdGhlIHNpdHVhdGlvblxuIgorbXNnc3RyICIiCisiICAgQXBhIHlhbmcgaW5naW4gQW5kYSBsYWt1a2FuPyBQaWxpaGFuIEFuZGEgYWRhbGFoOlxuIgorIiAgIFkgYXRhdSBJIDogcGFzYW5nIHBha2V0IHZlcnNpIHBlbmdlbG9sYSBwYWtldFxuIgorIiAgIE4gYXRhdSBPIDogcGVydGFoYW5rYW4gdmVyc2kgeWFuZyB0ZXJwYXNhbmdcbiIKKyIgICAgICAgRCAgICA6IHR1bmp1a2thbiBwZXJiZWRhYW4gYW50YXJhIGtlZHVhbnlhXG4iCisiICAgICAgIFogICAgOiBqYWRpa2FuIHByb3NlcyBpbmkgc2ViYWdhaSAncHJvc2VzIGxhdGFyJyB1bnR1ayBtZWxpaGF0ICIKKyJrZWFkYWFuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIFRoZSBkZWZhdWx0IGFjdGlvbiBpcyB0byBrZWVwIHlvdXIgY3VycmVudCB2ZXJzaW9uLlxuIgorbXNnc3RyICIgVGluZGFrYW4gYmF3YWFuIGFkYWxhaCBtZW1wZXJ0YWhhbmthbiB2ZXJzaSB5YW5nIGFkYS5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY2MQorIywgYy1mb3JtYXQKK21zZ2lkICIgVGhlIGRlZmF1bHQgYWN0aW9uIGlzIHRvIGluc3RhbGwgdGhlIG5ldyB2ZXJzaW9uLlxuIgorbXNnc3RyICIgVGluZGFrYW4gYmF3YWFuIGFkYWxhaCBtZW1hc2FuZyB2ZXJzaSB5YW5nIGJhcnUuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NjYKK21zZ2lkICJbZGVmYXVsdD1OXSIKK21zZ3N0ciAiW2Jhd2Fhbj1UXSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY2NworbXNnaWQgIltkZWZhdWx0PVldIgorbXNnc3RyICJbYmF3YWFuPVldIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjY4Cittc2dpZCAiW25vIGRlZmF1bHRdIgorbXNnc3RyICJbdGlhZGEgYmF3YWFuXSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY3MQorbXNnaWQgImVycm9yIHdyaXRpbmcgdG8gc3RkZXJyLCBkaXNjb3ZlcmVkIGJlZm9yZSBjb25mZmlsZSBwcm9tcHQiCittc2dzdHIgIiIKKyJhZGEga2VzYWxhaGFuIHNhYXQgbWVudWxpcyBrZSBzdGRlcnIsIGRpdGVtdWthbiBzZWJlbHVtIHByb21wdCAnY29uZmZpbGUnIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjgwCittc2dpZCAicmVhZCBlcnJvciBvbiBzdGRpbiBhdCBjb25mZmlsZSBwcm9tcHQiCittc2dzdHIgImFkYSBrZXNhbGFoYW4gcGFkYSBzdGRpbiBkaSBwcm9tcHQgJ2NvbmZmaWxlJyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY4MQorbXNnaWQgIkVPRiBvbiBzdGRpbiBhdCBjb25mZmlsZSBwcm9tcHQiCittc2dzdHIgIkFkYSBFT0YgcGFkYSBzdGRpbiBkaSBwcm9tcHQgJ2NvbmZmaWxlJyIKKworIzogc3JjL2RlcGNvbi5jOjE3NQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBkZXBlbmRzIG9uICVzIgorbXNnc3RyICIlcyBiZXJnYW50dW5nIHBhZGEgJXMiCisKKyM6IHNyYy9kZXBjb24uYzoxNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcHJlLWRlcGVuZHMgb24gJXMiCittc2dzdHIgIiVzIHByYS1zeWFyYXQgYXdhbG55YSAlcyIKKworIzogc3JjL2RlcGNvbi5jOjE4MQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyByZWNvbW1lbmRzICVzIgorbXNnc3RyICIlcyBtZW5nYW5qdXJrYW4gJXMiCisKKyM6IHNyYy9kZXBjb24uYzoxODQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgc3VnZ2VzdHMgJXMiCittc2dzdHIgIiVzIG1lbnlhcmFua2FuICVzIgorCisjOiBzcmMvZGVwY29uLmM6MTg3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGJyZWFrcyAlcyIKK21zZ3N0ciAiJXMgbWVuZ2FjYXVrYW4gJXMgIgorCisjOiBzcmMvZGVwY29uLmM6MTkwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGNvbmZsaWN0cyB3aXRoICVzIgorbXNnc3RyICIlcyBiZW50cm9rIGRlbmdhbiAlcyIKKworIzogc3JjL2RlcGNvbi5jOjE5MworIywgYy1mb3JtYXQKK21zZ2lkICIlcyBlbmhhbmNlcyAlcyIKK21zZ3N0ciAiJXMgbWVuaW5na2F0a2FuICVzIgorCisjOiBzcmMvZGVwY29uLmM6Mjk2CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHRvIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiAgICUuMjUwcyBha2FuIGRpYnVhbmcuXG4iCisKKyM6IHNyYy9kZXBjb24uYzoyOTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdG8gYmUgZGVjb25maWd1cmVkLlxuIgorbXNnc3RyICIgICAlLjI1MHMgYWthbiBkaWRla29uZmlndXJhc2kuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdG8gYmUgaW5zdGFsbGVkLCBidXQgaXMgdmVyc2lvbiAlLjI1MHMuXG4iCittc2dzdHIgIiAgICUuMjUwcyBha2FuIGRpcGFzYW5nLCB0ZXRhcGkgdmVyc2kgJS4yNTBzXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgaW5zdGFsbGVkLCBidXQgaXMgdmVyc2lvbiAlLjI1MHMuXG4iCittc2dzdHIgIiAgJS4yNTBzIHRlcnBhc2FuZywgdGV0YXBpIHZlcnNpICUuMjUwcy4gXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdW5wYWNrZWQsIGJ1dCBoYXMgbmV2ZXIgYmVlbiBjb25maWd1cmVkLlxuIgorbXNnc3RyICIgICAlLjI1MHMgdGVsYWggZGlidWthLCB0ZXRhcGkgYmVsdW0gcGVybmFoIGRpa29uZmlndXJhc2kuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdW5wYWNrZWQsIGJ1dCBpcyB2ZXJzaW9uICUuMjUwcy5cbiIKK21zZ3N0ciAiICAgJS4yNTBzIHRlbGFoIGRpYnVrYSwgdGV0YXBpIHZlcnNpICUuMjUwcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjM0MworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBsYXRlc3QgY29uZmlndXJlZCB2ZXJzaW9uIGlzICUuMjUwcy5cbiIKK21zZ3N0ciAiICAgJS4yNTBzIHZlcnNpIHRlcmFraGlyIHlhbmcgdGVya29uZmlndXJhc2kgYWRhbGFoICUuMjUwcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjM1MworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyAlcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgYWRhbGFoICVzLiBcbiIKKworIzogc3JjL2RlcGNvbi5jOjM4OAorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYnV0IGlzIHRvIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiAgICUuMjUwcyBtZW55ZWRpYWthbiAlLjI1MHMgdGV0YXBpIGFrYW4gZGlidWFuZy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjM5MgorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYnV0IGlzIHRvIGJlIGRlY29uZmlndXJlZC5cbiIKK21zZ3N0ciAiICAgJS4yNTBzIG1lbnllZGlha2FuICUuMjUwcyB0ZXRhcGkgYWthbiBkaWRla29uZmlndXJhc2kuXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0MDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGJ1dCBpcyAlcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgbWVueWVkaWFrYW4gJS4yNTBzLCB0ZXRhcGkgJXMuIFxuIgorCisjOiBzcmMvZGVwY29uLmM6NDE1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIG5vdCBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIHRpZGFrIHRlcnBhc2FuZy4gXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgKHZlcnNpb24gJS4yNTBzKSBpcyB0byBiZSBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgICUuMjUwcyAodmVyc2kgJS4yNTBzKSBha2FuIGRpcGFzYW5nLlxuIgorCisjOiBzcmMvZGVwY29uLmM6NDY4CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzICh2ZXJzaW9uICUuMjUwcykgaXMgcHJlc2VudCBhbmQgJXMuXG4iCittc2dzdHIgIiAgJS4yNTBzICh2ZXJzaSAlLjI1MHMpIHN1ZGFoIGFkYSBkYW4gYWRhbGFoICVzLiBcbiIKKworIzogc3JjL2RlcGNvbi5jOjQ5NQorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYW5kIGlzIHRvIGJlIGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiICAgJS4yNTBzIG1lbnllZGlha2FuICUuMjUwcyBkYW4gYWthbiBkaXBhc2FuZy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjUzNworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYW5kIGlzIHByZXNlbnQgYW5kICVzLlxuIgorbXNnc3RyICIgICUuMjUwcyBtZW55ZWRpYWthbiAlLjI1MHMgZGFuICVzIHNlcnRhIHN1ZGFoIGFkYS4gXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MAorIywgZnV6enkKKyN8IG1zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IHF1ZXJ5aW5nIHBhY2thZ2VzLiIKK21zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IGRpdmVydGluZyBmaWxlcy4iCittc2dzdHIgIkd1bmFrYW4gLS1oZWxwIHVudHVrIHBhbmR1YW4gdGVudGFuZyBwZW5jYXJpYW4gcGFrZXQuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjYgc3JjL3N0YXRjbWQuYzo1NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuICVzIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkRlYmlhbiAlcyB2ZXJzaSAlcy5cbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjcwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMTAgR3VpbGxlbSBKb3Zlci5cbiIKK21zZ3N0ciAiIgorIkhhayBDaXB0YSAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyJIYWsgQ2lwdGEgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLlxuIgorIkhhayBDaXB0YSAoQykgMjAxMCBHdWlsbGVtIEpvdmVyLlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NzUgc3JjL21haW4uYzo2MyBzcmMvcXVlcnljbWQuYzo2MDMgc3JjL3N0YXRjbWQuYzo2NQorIzogc3JjL3RyaWdjbWQuYzo1NSBkcGtnLWRlYi9tYWluLmM6NTcgZHBrZy1zcGxpdC9tYWluLmM6NTEKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo4OQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvclxuIgorImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LlxuIgorbXNnc3RyICIiCisiSW5pIGFkYWxhaCBwZXJhbmdrYXQgbHVuYWsgYmViYXM7IGxpaGF0IEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbmNlIHZlcnNpIDJcbiIKKyJhdGF1IHNlbGFuanV0bnlhIHVudHVrIHBlcnN5YXJhdGFuIHBlbmdnYW5kYWFuLiBUSURBSyBBREEgamFtaW5hbi4gXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo4NyBzcmMvbWFpbi5jOjgxIHNyYy9xdWVyeWNtZC5jOjYxNSBzcmMvc3RhdGNtZC5jOjc3CisjOiBkcGtnLWRlYi9tYWluLmM6NjkgZHBrZy1zcGxpdC9tYWluLmM6NjMgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjk3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gPGNvbW1hbmQ+XG4iCisiXG4iCittc2dzdHIgIiIKKyJQZW5nZ3VuYWFuOiAlcyBbPHBpbGloYW4+IC4uLl0gPHBlcmludGFoPlxuIgorIlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6OTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgWy0tYWRkXSA8ZmlsZT4gICAgICAgICAgIGFkZCBhIGRpdmVyc2lvbi5cbiIKKyIgIC0tcmVtb3ZlIDxmaWxlPiAgICAgICAgICByZW1vdmUgdGhlIGRpdmVyc2lvbi5cbiIKKyIgIC0tbGlzdCBbPGdsb2ItcGF0dGVybj5dICBzaG93IGZpbGUgZGl2ZXJzaW9ucy5cbiIKKyIgIC0tbGlzdHBhY2thZ2UgPGZpbGU+ICAgICBzaG93IHdoYXQgcGFja2FnZSBkaXZlcnRzIHRoZSBmaWxlLlxuIgorIiAgLS10cnVlbmFtZSA8ZmlsZT4gICAgICAgIHJldHVybiB0aGUgZGl2ZXJ0ZWQgZmlsZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIlBlcmludGFoOlxuIgorIiAgWy0tYWRkXSA8YmVya2FzPiAgICAgICAgIG1lbmFtYmFoIHBlbmdhbGloLlxuIgorIiAgLS1yZW1vdmUgPGJlcmthcz4gICAgICAgIG1lbmdoYXB1cyBwZW5nYWxpaC5cbiIKKyIgIC0tbGlzdCBbPHBvbGEtZ2xvYmFsPl0gICBsaWhhdCBiZXJrYXMgcGVuZ2FsaWguXG4iCisiICAtLWxpc3RwYWNrYWdlIDxiZXJrYXM+ICAgbGloYXQgcGFrZXQgeWFuZyBqYWRpIHBlbmdhbGloIGJlcmthcyBpbmkuXG4iCisiICAtLXRydWVuYW1lIDxiZXJrYXM+ICAgICAga2VtYmFsaWthbiBiZXJrYXMgeWFuZyBkaWFsaWhrYW4uXG4iCisiXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoxMDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLXBhY2thZ2UgPHBhY2thZ2U+ICAgICAgbmFtZSBvZiB0aGUgcGFja2FnZSB3aG9zZSBjb3B5IG9mIDxmaWxlPiB3aWxsICIKKyJub3RcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJlIGRpdmVydGVkLlxuIgorIiAgLS1sb2NhbCAgICAgICAgICAgICAgICAgIGFsbCBwYWNrYWdlcycgdmVyc2lvbnMgYXJlIGRpdmVydGVkLlxuIgorIiAgLS1kaXZlcnQgPGRpdmVydC10bz4gICAgIHRoZSBuYW1lIHVzZWQgYnkgb3RoZXIgcGFja2FnZXMnIHZlcnNpb25zLlxuIgorIiAgLS1yZW5hbWUgICAgICAgICAgICAgICAgIGFjdHVhbGx5IG1vdmUgdGhlIGZpbGUgYXNpZGUgKG9yIGJhY2spLlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIHNldCB0aGUgZGlyZWN0b3J5IHdpdGggdGhlIGRpdmVyc2lvbnMgZmlsZS5cbiIKKyIgIC0tdGVzdCAgICAgICAgICAgICAgICAgICBkb24ndCBkbyBhbnl0aGluZywganVzdCBkZW1vbnN0cmF0ZS5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBxdWlldCBvcGVyYXRpb24sIG1pbmltYWwgb3V0cHV0LlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIlBpbGloYW46XG4iCisiICAtLXBhY2thZ2UgPHBha2V0PiAgICAgICAgIG5hbWEgcGFrZXQgeWFuZyBiZXJpc2kgc2FsaW5hbiA8YmVya2FzPiB5YW5nICIKKyJ0aWRha1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFrYW4gZGlhbGloa2FuLlxuIgorIiAgLS1sb2NhbCAgICAgICAgICAgICAgICAgICBzZW11YSB2ZXJzaSBwYWtldCBha2FuIGRpYWxpaGthbi5cbiIKKyIgIC0tZGl2ZXJ0IDxuYW1hIHBlbmdhbGloPiAgbmFtYSB5YW5nIGRpZ3VuYWthbiBvbGVoIHZlcnNpIHBha2V0IGxhaW5ueWEuXG4iCisiICAtLXJlbmFtZSAgICAgICAgICAgICAgICAgIGxhbmdzdW5nIGdhbnRpIG5hbWEgYmVya2FzIChkYXJpIGF0YXUga2UpLlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWt0b3JpPiAgICB0YXRhIGRpcmVrdG9yaSB0ZW1wYXQgYmVya2FzLWJlcmthcyBwZW5nYWxpaC5cbiIKKyIgIC0tdGVzdCAgICAgICAgICAgICAgICAgICAgaGFueWEgdWppY29iYSwgbGFpbiB0aWRhay5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICAgb3BlcmFzaSBzZW55YXAsIGtlbHVhcmFuIG1pbmltYWwuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgIGxpaGF0IHBlc2FuIGJhbnR1YW4gaW5pLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICBsaWhhdCB2ZXJzaS5cbiIKKyJcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiV2hlbiBhZGRpbmcsIGRlZmF1bHQgaXMgLS1sb2NhbCBhbmQgLS1kaXZlcnQgPG9yaWdpbmFsPi5kaXN0cmliLlxuIgorIldoZW4gcmVtb3ZpbmcsIC0tcGFja2FnZSBvciAtLWxvY2FsIGFuZCAtLWRpdmVydCBtdXN0IG1hdGNoIGlmIHNwZWNpZmllZC5cbiIKKyJQYWNrYWdlIHByZWluc3QvcG9zdHJtIHNjcmlwdHMgc2hvdWxkIGFsd2F5cyBzcGVjaWZ5IC0tcGFja2FnZSBhbmQgLS0iCisiZGl2ZXJ0LlxuIgorbXNnc3RyICIiCisiS2V0aWthIG1lbmFtYmFoLCBiYWt1bnlhIGFkYWxhaCAtLWxvY2FsIGRhbiAtLWRpdmVydCA8b3JpZ2luYWw+LmRpc3RyaWIuXG4iCisiS2V0aWthIG1lbmdoYXB1cywgLS1wYWNrYWdlIGF0YXUgLS1sb2NhbCBkYW4gLS1kaXZlcnQgaGFydXMgY29jb2sgamlrYSAiCisiZGlndW5ha2FuLlxuIgorIlNjcmlwdCBwcmVpbnN0L3Bvc3RybSBwYWtldCBoYXJ1cyBzZWxhbHUgbWVuZW50dWthbiAtLXBhY2thZ2UgZGFuIC0tZGl2ZXJ0LlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MTY4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNoZWNraW5nICclcyciCittc2dzdHIgIkFkYSBnYWxhdCBzYWF0IG1lbWVyaWtzYSAnJXMnIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjAzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJyZW5hbWUgaW52b2x2ZXMgb3ZlcndyaXRpbmcgYCVzJyB3aXRoXG4iCisiICBkaWZmZXJlbnQgZmlsZSBgJXMnLCBub3QgYWxsb3dlZCIKK21zZ3N0ciAiIgorImdhbnRpIG5hbWEgeWFuZyBtZW5pbXBhICclcycgZGVuZ2FuXG4iCisiICBiZXJrYXMgJyVzJyBiZXJiZWRhLCB0aWRhayBkaWl6aW5rYW4uIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjIzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzczCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gd3JpdGUgZmlsZSAnJXMnIgorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgZmlsZSAnJXMnIgorbXNnc3RyICJnYWdhbCBtZW51bGlzIGtlIGJlcmthcyAnJXMnIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjI3Cittc2dpZCAiZmlsZSBjb3B5IgorbXNnc3RyICJzYWxpbiBiZXJrYXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyMzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlbmFtZSAnJXMnIHRvICclcyciCittc2dzdHIgImdhZ2FsIG1lbmdnYW50aSBuYW1hICclcycga2UgJyVzJyIKKworIzogc3JjL2RpdmVydGNtZC5jOjI1MgorIywgYy1mb3JtYXQKK21zZ2lkICJyZW5hbWU6IHJlbW92ZSBkdXBsaWNhdGUgb2xkIGxpbmsgJyVzJyIKK21zZ3N0ciAicmVuYW1lOiBidWFuZyBuYXJhICclcycgbGFtYSB5YW5nIGdhbmRhIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjYyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gb3BlbiBzb3VyY2UgZmlsZSBgJS4yNTBzJyIKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIGNvcGllZCBzb3VyY2UgZmlsZSAnJXMnIgorbXNnc3RyICJnYWdhbCBtZW1idWthIGJlcmthcyBzdW1iZXIgJyUuMjUwcyciCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyODQKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9jYWwgZGl2ZXJzaW9uIG9mICVzIgorbXNnc3RyICIlcyBkaWFsaWhrYW4gc2VjYXJhIGxva2FsIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mjg2CisjLCBjLWZvcm1hdAorbXNnaWQgImxvY2FsIGRpdmVyc2lvbiBvZiAlcyB0byAlcyIKK21zZ3N0ciAicGVuZ2FsaWhhbiAlcyBzZWNhcmEgbG9rYWwga2UgJXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJzaW9uIG9mICVzIGJ5ICVzIgorbXNnc3RyICJwZW5nYWxpaGFuICVzIG9sZWggJXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJzaW9uIG9mICVzIHRvICVzIGJ5ICVzIgorbXNnc3RyICJwZW5nYWxpaGFuICVzIGtlICVzIG9sZWggJXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozMDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiYW55IGRpdmVyc2lvbiBvZiAlcyIKK21zZ3N0ciAicGVuZ2FsaWhhbiBzZW1iYXJhbmcgZGFyaSAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjMxMQorIywgYy1mb3JtYXQKK21zZ2lkICJhbnkgZGl2ZXJzaW9uIG9mICVzIHRvICVzIgorbXNnc3RyICJwZW5nYWxpaGFuIHNlbWJhcmFuZyBkYXJpICVzIGtlICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MzU3CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBjcmVhdGUgbmV3ICVzIGZpbGUiCittc2dzdHIgImdhZ2FsIG1lbWJ1YXQgYmVya2FzIGJhcnUgJXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozNzUgc3JjL3N0YXRjbWQuYzoyMTUgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE0MDQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIGZpbGUgJyVzJyIKK21zZ3N0ciAiZ2FnYWwgbWVuZ29zb25na2FuIGJlcmthcyAnJXMnIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MzgyCittc2dpZCAiZXJyb3IgcmVtb3Zpbmcgb2xkIGRpdmVyc2lvbnMtb2xkIgorbXNnc3RyICJhZGEgZ2FsYXQgc2FhdCBtZW1idWFuZyBiZXJrYXMgJ2RpdmVyc2lvbnMtb2xkJyB5YW5nIGxhbWEiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozODQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBuZXcgZGl2ZXJzaW9ucy1vbGQiCittc2dzdHIgImdhZ2FsIG1lbWJ1YXQgYmVya2FzICdkaXZlcnNpb25zLW9sZCcgeWFuZyBiYXJ1IgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mzg2Cittc2dpZCAiZXJyb3IgaW5zdGFsbGluZyBuZXcgZGl2ZXJzaW9ucyIKK21zZ3N0ciAiZ2FnYWwgbWVtYXNhbmcgYmVya2FzICdkaXZlcnNpb25zJyB5YW5nIGJhcnUiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MDYgc3JjL2RpdmVydGNtZC5jOjUwMyBzcmMvZGl2ZXJ0Y21kLmM6NjEwCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjMwIHNyYy9zdGF0Y21kLmM6MjkwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSBzaW5nbGUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMgYnV0dWggc2VidWFoIGFyZ3VtZW4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MDkgc3JjL2RpdmVydGNtZC5jOjQzMAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlbmFtZSBcIiVzXCIgaXMgbm90IGFic29sdXRlIgorbXNnc3RyICJuYW1hIGJlcmthcyBcIiVzXCIgdGlkYWsgbXV0bGFrIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDExIHNyYy9zdGF0Y21kLmM6MjQ5Cittc2dpZCAiZmlsZSBtYXkgbm90IGNvbnRhaW4gbmV3bGluZXMiCittc2dzdHIgImJlcmthcyB0aWRhayBib2xlaCBiZXJpc2kgYmFyaXMtYmFydSIKKworIzogc3JjL2RpdmVydGNtZC5jOjQxOAorbXNnaWQgIkNhbm5vdCBkaXZlcnQgZGlyZWN0b3JpZXMiCittc2dzdHIgImdhZ2FsIG1lbmdhbGloa2FuIGRpcmVrdG9yaSIKKworIzogc3JjL2RpdmVydGNtZC5jOjQzMworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgZGl2ZXJ0IGZpbGUgJyVzJyB0byBpdHNlbGYiCittc2dzdHIgImdhZ2FsIG1lbmdhbGloa2FuIGJlcmthcyAnJXMnIGtlIGRpcmlueWEgc2VuZGlyaSIKKworIzogc3JjL2RpdmVydGNtZC5jOjQ1MworIywgYy1mb3JtYXQKK21zZ2lkICJMZWF2aW5nICclcydcbiIKK21zZ3N0ciAiVGluZ2dhbGthbiAnJXMnIGFwYSBhZGFueWFcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjQ1OAorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGNsYXNoZXMgd2l0aCBgJXMnIgorbXNnc3RyICInJXMnIGJlbnRyb2sgZGVuZ2FuICclcyciCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAiQWRkaW5nICclcydcbiIKK21zZ3N0ciAiTWVuYW1iYWggJyVzJ1xuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTEwCisjLCBjLWZvcm1hdAorbXNnaWQgIk5vIGRpdmVyc2lvbiAnJXMnLCBub25lIHJlbW92ZWQuXG4iCittc2dzdHIgIlRpZGFrIGFkYSBwZW5nYWxpaGFuICclcycsIHRhayBhZGEgeWFuZyBkaWJ1YW5nLlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTI1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJtaXNtYXRjaCBvbiBkaXZlcnQtdG9cbiIKKyIgIHdoZW4gcmVtb3ZpbmcgYCVzJ1xuIgorIiAgZm91bmQgYCVzJyIKK21zZ3N0ciAiIgorImRpdGVtdWthbiBrZXRpZGFrY29jb2thblxuIgorIiAgc2FhdCBtZW5naGFwdXMgJyVzJ1xuIgorIiAgZGFsYW0gbmFtYS1wZW5nYWxpaCAnJXMnIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJtaXNtYXRjaCBvbiBwYWNrYWdlXG4iCisiICB3aGVuIHJlbW92aW5nIGAlcydcbiIKKyIgIGZvdW5kIGAlcyciCittc2dzdHIgIiIKKyJkaXRlbXVrYW4ga2V0aWRha2NvY29rYW5cbiIKKyIgIHNhYXQgbWVuZ2hhcHVzICclcydcbiIKKyIgIGRhbGFtIHBha2V0ICclcyciCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVtb3ZpbmcgJyVzJ1xuIgorbXNnc3RyICJTZWRhbmcgbWVtYnVhbmcgJyVzJyBcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjY1NworbXNnaWQgInBhY2thZ2UgbWF5IG5vdCBjb250YWluIG5ld2xpbmVzIgorbXNnc3RyICJQYWtldCBtdW5na2luIHRpZGFrIGJlcmlzaSBiYXJpcy1iYXJ1IgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjY2Cittc2dpZCAiZGl2ZXJ0LXRvIG1heSBub3QgY29udGFpbiBuZXdsaW5lcyIKK21zZ3N0ciAibmFtYS1wZW5nYWxpaCB0aWRhayBib2xlaCBiZXJpc2kgYmFyaXMtYmFydSIKKworIzogc3JjL2RpdmVydGRiLmM6NjQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiBkaXZlcnNpb25zIGZpbGUiCittc2dzdHIgImdhZ2FsIG1lbWJ1a2EgYmVya2FzICdkaXZlcnNpb25zJyIKKworIzogc3JjL2RpdmVydGRiLmM6NzEKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgcHJldmlvdXMgZGl2ZXJzaW9ucyBmaWxlIgorbXNnc3RyICJnYWdhbCBtZW5hdGEgc3RhdHVzIGJlcmthcyAnZGl2ZXJzaW9ucycgc2ViZWx1bW55YSIKKworIzogc3JjL2RpdmVydGRiLmM6NzMKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgZGl2ZXJzaW9ucyBmaWxlIgorbXNnc3RyICJHYWdhbCBtZW5hdGEgc3RhdHVzIGJlcmthcyAnZGl2ZXJzaW9ucyciCisKKyM6IHNyYy9kaXZlcnRkYi5jOjExMworIywgYy1mb3JtYXQKK21zZ2lkICJjb25mbGljdGluZyBkaXZlcnNpb25zIGludm9sdmluZyBgJS4yNTBzJyBvciBgJS4yNTBzJyIKK21zZ3N0ciAiYmVya2FzICdkaXZlcnNpb25zJyB5YW5nIGJlbnRyb2sgbWVsaWJhdGthbiAnJS4yNTBzJyBhdGF1ICclLjI1MHMnIgorCisjOiBzcmMvZW5xdWlyeS5jOjczCittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgYXJlIGluIGEgbWVzcyBkdWUgdG8gc2VyaW91cyBwcm9ibGVtcyBkdXJpbmdcbiIKKyJpbnN0YWxsYXRpb24uICBUaGV5IG11c3QgYmUgcmVpbnN0YWxsZWQgZm9yIHRoZW0gKGFuZCBhbnkgcGFja2FnZXNcbiIKKyJ0aGF0IGRlcGVuZCBvbiB0aGVtKSB0byBmdW5jdGlvbiBwcm9wZXJseTpcbiIKK21zZ3N0ciAiIgorIlBha2V0LXBha2V0IGJlcmlrdXQgaW5pIGthY2F1LWJhbGF1IGthcmVuYSBtYXNhbGFoIHNlcml1cyBcbiIKKyJzZWxhbWEgcGVtYXNhbmdhbi4gU2VtdWFueWEgaGFydXMgZGlwYXNhbmcgdWxhbmcgKHNlcnRhIHNlbXVhIFxuIgorInBha2V0IHlhbmcgYmVyaHVidW5nYW4pIGFnYXIgZGFwYXQgYmVyZnVuZ3NpIG5vcm1hbDpcbiIKKworIzogc3JjL2VucXVpcnkuYzo4MAorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGhhdmUgYmVlbiB1bnBhY2tlZCBidXQgbm90IHlldCBjb25maWd1cmVkLlxuIgorIlRoZXkgbXVzdCBiZSBjb25maWd1cmVkIHVzaW5nIGRwa2cgLS1jb25maWd1cmUgb3IgdGhlIGNvbmZpZ3VyZVxuIgorIm1lbnUgb3B0aW9uIGluIGRzZWxlY3QgZm9yIHRoZW0gdG8gd29yazpcbiIKK21zZ3N0ciAiIgorIlBha2V0LXBha2V0IGJlcmlrdXQgaW5pIHRlbGFoIGRpYnVrYSwgdGV0YXBpIGJlbHVtIGRpa29uZmlndXJhc2kuIFxuIgorIlNlbXVhbnlhIGhhcnVzIGRpa29uZmlndXJhc2kgZGVuZ2FuICdkcGtnIC0tY29uZmlndXJlJyBcbiIKKyJhdGF1IHBpbGloYW4gbWVudSBrb25maWd1cmFzaSBwYWRhIGRzZWxlY3QgYWdhciBkYXBhdCBiZXJmdW5nc2k6XG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6ODcKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgb25seSBoYWxmIGNvbmZpZ3VyZWQsIHByb2JhYmx5IGR1ZSB0byBwcm9ibGVtc1xuIgorImNvbmZpZ3VyaW5nIHRoZW0gdGhlIGZpcnN0IHRpbWUuICBUaGUgY29uZmlndXJhdGlvbiBzaG91bGQgYmUgcmV0cmllZCB1c2luZ1xuIgorImRwa2cgLS1jb25maWd1cmUgPHBhY2thZ2U+IG9yIHRoZSBjb25maWd1cmUgbWVudSBvcHRpb24gaW4gZHNlbGVjdDpcbiIKK21zZ3N0ciAiIgorIlBha2V0LXBha2V0IGJlcmlrdXQgaW5pIGhhbnlhIHNldGVuZ2FoIHRlcmtvbmZpZ3VyYXNpLCBtdW5na2luIGthcmVuYSBcbiIKKyJtYXNhbGFoIGtvbmZpZ3VyYXNpIHBlcnRhbWEga2FsaS4gS29uZmlndXJhc2kgaGFydXMgZGl1bGFuZ2kgZGVuZ2FuIFxuIgorIidkcGtnIC0tY29uZmlndXJlIDxwYWtldD4nIGF0YXUgcGlsaWhhbiBtZW51IGtvbmZpZ3VyYXNpIHBhZGEgZHNlbGVjdDpcbiIKKworIzogc3JjL2VucXVpcnkuYzo5NAorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBvbmx5IGhhbGYgaW5zdGFsbGVkLCBkdWUgdG8gcHJvYmxlbXMgZHVyaW5nXG4iCisiaW5zdGFsbGF0aW9uLiAgVGhlIGluc3RhbGxhdGlvbiBjYW4gcHJvYmFibHkgYmUgY29tcGxldGVkIGJ5IHJldHJ5aW5nIGl0O1xuIgorInRoZSBwYWNrYWdlcyBjYW4gYmUgcmVtb3ZlZCB1c2luZyBkc2VsZWN0IG9yIGRwa2cgLS1yZW1vdmU6XG4iCittc2dzdHIgIiIKKyJQYWtldC1wYWtldCBiZXJpa3V0IGluaSBoYW55YSBzZXRlbmdhaCB0ZXJwYXNhbmcga2FyZW5hIG1hc2FsYWggc2VsYW1hIFxuIgorInBlbWFzYW5nYW4uIFBlbWFzYW5nYW4gbXVuZ2tpbiBkYXBhdCBkaXNlbXB1cm5ha2FuIGRlbmdhbiBtZW5ndWxhbmdpbnlhO1xuIgorInBha2V0LXBha2V0IHRlcnNlYnV0IGRhcGF0IGRpYnVhbmcgZGVuZ2FuIGRzZWxlY3QgYXRhdSAnZHBrZyAtLXJlbW92ZSc6XG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTAxCittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgYXJlIGF3YWl0aW5nIHByb2Nlc3Npbmcgb2YgdHJpZ2dlcnMgdGhhdCB0aGV5XG4iCisiaGF2ZSBhY3RpdmF0ZWQgaW4gb3RoZXIgcGFja2FnZXMuICBUaGlzIHByb2Nlc3NpbmcgY2FuIGJlIHJlcXVlc3RlZCB1c2luZ1xuIgorImRzZWxlY3Qgb3IgZHBrZyAtLWNvbmZpZ3VyZSAtLXBlbmRpbmcgKG9yIGRwa2cgLS10cmlnZ2Vycy1vbmx5KTpcbiIKK21zZ3N0ciAiIgorIlBha2V0LXBha2V0IGJlcmlrdXQgaW5pIG1lbnVuZ2d1IHBlbXJvc2VzYW4gcGVtaWN1LXBlbWljdSB5YW5nXG4iCisidGVsYWggZGlha3RpZmthbiBkaSBwYWtldC1wYWtldCBsYWlubnlhLiBQZW1yb3Nlc2FuIGluaSBkYXBhdCBkaWFqdWthblxuIgorImRlbmdhbiBwZXJpbnRhaCBkc2VsZWN0IGF0YXUgJ2Rwa2cgLS1jb25maWd1cmUgLS1wZW5kaW5nJyAoYXRhdSBcbiIKKyInZHBrZyAtLXRyaWdnZXJzLW9ubHknKTpcbiIKKworIzogc3JjL2VucXVpcnkuYzoxMDgKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBoYXZlIGJlZW4gdHJpZ2dlcmVkLCBidXQgdGhlIHRyaWdnZXIgcHJvY2Vzc2luZ1xuIgorImhhcyBub3QgeWV0IGJlZW4gZG9uZS4gIFRyaWdnZXIgcHJvY2Vzc2luZyBjYW4gYmUgcmVxdWVzdGVkIHVzaW5nXG4iCisiZHNlbGVjdCBvciBkcGtnIC0tY29uZmlndXJlIC0tcGVuZGluZyAob3IgZHBrZyAtLXRyaWdnZXJzLW9ubHkpOlxuIgorbXNnc3RyICIiCisiUGFrZXQtcGFrZXQgYmVyaWt1dCBpbmkgdGVsYWggZGlha3RpZmthbiBwZW1pY3VueWEsIHRldGFwaSBwZW1yb3Nlc2FuXG4iCisiYmVsdW0gZGlsYWt1a2FuLiBQZW1yb3Nlc2FuIHBlbWljdSBkYXBhdCBkaWFqdWthbiBkZW5nYW5cbiIKKyJwZXJpbnRhaCBkc2VsZWN0IGF0YXUgJ2Rwa2cgLS1jb25maWd1cmUgLS1wZW5kaW5nJyAoYXRhdSBcbiIKKyInZHBrZyAtLXRyaWdnZXJzLW9ubHknKTpcbiIKKworIzogc3JjL2VucXVpcnkuYzoxMzcgc3JjL2VucXVpcnkuYzoyMTEgc3JjL2VucXVpcnkuYzoyOTIgc3JjL2VucXVpcnkuYzozNzMKKyM6IHNyYy9lbnF1aXJ5LmM6NDYwIHNyYy9zZWxlY3QuYzo5OCBzcmMvc2VsZWN0LmM6MTY0IHNyYy90cmlnY21kLmM6MTk5CisjOiBzcmMvdXBkYXRlLmM6NDggc3JjL3VwZGF0ZS5jOjExMyBkcGtnLXNwbGl0L3F1ZXVlLmM6MjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgbm8gYXJndW1lbnRzIgorbXNnc3RyICItLSVzIHRpZGFrIGJ1dHVoIGFyZ3VtZW4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTUyCittc2dpZCAiIgorIkFub3RoZXIgcHJvY2VzcyBoYXMgbG9ja2VkIHRoZSBkYXRhYmFzZSBmb3Igd3JpdGluZywgYW5kIG1pZ2h0IGN1cnJlbnRseSBiZVxuIgorIm1vZGlmeWluZyBpdCwgc29tZSBvZiB0aGUgZm9sbG93aW5nIHByb2JsZW1zIG1pZ2h0IGp1c3QgYmUgZHVlIHRvIHRoYXQuXG4iCittc2dzdHIgIiIKKyJQcm9zZXMgbGFpbm55YSB0ZWxhaCBtZW5ndW5jaSBwZW51bGlzYW4gYmFzaXMtZGF0YSBkYW4gbXVuZ2tpbiBzZWRhbmdcbiIKKyJtZW55dW50aW5nbnlhLiBCZWJlcmFwYSBtYXNhbGFoIGJlcmlrdXQgbXVuZ2tpbiBkaXNlYmFia2FuIGhhbCBpbmkuXG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTkxCisjLCBmdXp6eQorI3wgbXNnaWQgIjx1bmtub3duPiIKK21zZ2N0eHQgInNlY3Rpb24iCittc2dpZCAiPHVua25vd24+IgorbXNnc3RyICI8dGFrIGRpa2VuYWw+IgorCisjOiBzcmMvZW5xdWlyeS5jOjI1MQorIywgYy1mb3JtYXQKK21zZ2lkICIgJWQgaW4gJXM6ICIKK21zZ3N0ciAiICAlZCBkYWxhbSAlczogIgorCisjOiBzcmMvZW5xdWlyeS5jOjI2NgorIywgYy1mb3JtYXQKK21zZ2lkICIgJWQgcGFja2FnZSwgZnJvbSB0aGUgZm9sbG93aW5nIHNlY3Rpb246IgorbXNnaWRfcGx1cmFsICIgJWQgcGFja2FnZXMsIGZyb20gdGhlIGZvbGxvd2luZyBzZWN0aW9uczoiCittc2dzdHJbMF0gIiAlZCBwYWtldCwgZGFyaSBzZWtzaSBiZXJpa3V0IGluaToiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzA1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJWZXJzaW9uIG9mIGRwa2cgd2l0aCB3b3JraW5nICVzIHN1cHBvcnQgbm90IHlldCBjb25maWd1cmVkLlxuIgorIiBQbGVhc2UgdXNlICdkcGtnIC0tY29uZmlndXJlIGRwa2cnLCBhbmQgdGhlbiB0cnkgYWdhaW4uXG4iCittc2dzdHIgIiIKKyJWZXJzaSBkcGtnIGRlbmdhbiBkdWt1bmdhbiAlcyBiYWd1cyBiZWx1bSBkaWtvbmZpZ3VyYXNpLlxuIgorIiAgTW9ob24gZ3VuYWthbiAnZHBrZyAtLWNvbmZpZ3VyZSBkcGtnJywgbGFsdSBzaWxha2FuIGNvYmEgbGFnaS5cbiIKKworIzogc3JjL2VucXVpcnkuYzozMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZyBub3QgcmVjb3JkZWQgYXMgaW5zdGFsbGVkLCBjYW5ub3QgY2hlY2sgZm9yICVzIHN1cHBvcnQhXG4iCittc2dzdHIgIiIKKyJkcGtnIHRlcmNhdGF0IHNlYmFnYWkgdGlkYWsgdGVycGFzYW5nLCBcbiIKKyIgICBnYWdhbCBtZW1lcmlrc2EgZHVrdW5nYW4gdGVyaGFkYXAgJyVzJyFcbiIKKworIzogc3JjL2VucXVpcnkuYzozMjEKK21zZ2lkICJQcmUtRGVwZW5kcyBmaWVsZCIKK21zZ3N0ciAiUnVhcyBQcmUtRGVwZW5kcyIKKworIzogc3JjL2VucXVpcnkuYzozMjkKK21zZ2lkICJlcG9jaCIKK21zZ3N0ciAiZXBvY2giCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzM3Cittc2dpZCAibG9uZyBmaWxlbmFtZXMiCittc2dzdHIgIm5hbWEtYmVya2FzIHBhbmphbmciCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzQ2Cittc2dpZCAibXVsdGlwbGUgQ29uZmxpY3RzIGFuZCBSZXBsYWNlcyIKK21zZ3N0ciAiYmFueWFrIENvbmZsaWN0cyBkYW4gUmVwbGFjZXMiCisKKyM6IHNyYy9lbnF1aXJ5LmM6NDM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBjYW5ub3Qgc2VlIGhvdyB0byBzYXRpc2Z5IHByZS1kZXBlbmRlbmN5OlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisiZHBrZzogdGlkYWsgZGFwYXQgbWVuZ2V0YWh1aSBjYXJhIG1lbWVudWhpIHByYS1zeWFyYXQgYXdhbDpcbiIKKyIgJXNcbiIKKworIzogc3JjL2VucXVpcnkuYzo0MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHNhdGlzZnkgcHJlLWRlcGVuZGVuY2llcyBmb3IgJS4yNTBzICh3YW50ZWQgZHVlIHRvICUuMjUwcykiCittc2dzdHIgIiIKKyJ0aWRhayBkYXBhdCBtZW1lbnVoaSBwcmEtc3lhcmF0IGF3YWwgdW50dWsgJS4yNTBzIChkaWJ1dHVoa2FuIG9sZWggJS4yNTBzKSIKKworIzogc3JjL2VucXVpcnkuYzo0NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAib2Jzb2xldGUgb3B0aW9uICctLSVzJywgcGxlYXNlIHVzZSAnLS0lcycgaW5zdGVhZC4iCittc2dzdHIgInBpbGloYW4gJy0tJXMnIHN1ZGFoIHVzYW5nLCBtb2hvbiBndW5ha2FuICctLSVzJy4gIgorCisjOiBzcmMvZW5xdWlyeS5jOjUxOQorbXNnaWQgIiIKKyItLWNvbXBhcmUtdmVyc2lvbnMgdGFrZXMgdGhyZWUgYXJndW1lbnRzOiA8dmVyc2lvbj4gPHJlbGF0aW9uPiA8dmVyc2lvbj4iCittc2dzdHIgIi0tY29tcGFyZS12ZXJzaW9ucyBidXR1aCB0aWdhIGFyZ3VtZW46IDx2ZXJzaT4gPGh1YnVuZ2FuPiA8dmVyc2k+IgorCisjOiBzcmMvZW5xdWlyeS5jOjUyNAorbXNnaWQgIi0tY29tcGFyZS12ZXJzaW9ucyBiYWQgcmVsYXRpb24iCittc2dzdHIgImh1YnVuZ2FuIGJ1cnVrIC0tY29tcGFyZS12ZXJzaW9uIgorCisjOiBzcmMvZW5xdWlyeS5jOjUyOSBzcmMvZW5xdWlyeS5jOjUzMSBzcmMvZW5xdWlyeS5jOjU0MCBzcmMvZW5xdWlyeS5jOjU0MgorIywgYy1mb3JtYXQKK21zZ2lkICJ2ZXJzaW9uICclcycgaGFzIGJhZCBzeW50YXg6ICVzIgorbXNnc3RyICJ2ZXJzaSAnJXMnIG1lbmdhbmR1bmcgc2FsYWggc2ludGFrczogJXMiCisKKyM6IHNyYy9lcnJvcnMuYzo2MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IGVycm9yIHByb2Nlc3NpbmcgJXMgKC0tJXMpOlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisiJXM6IGFkYSBrZXNhbGFoYW4gc2FhdCBtZW1wcm9zZXMgJXMgKC0tJXMpOiBcbiIKKyIgJXMgXG4iCisKKyM6IHNyYy9lcnJvcnMuYzo2OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgImRwa2c6IGZhaWxlZCB0byBhbGxvY2F0ZSBtZW1vcnkgZm9yIG5ldyBlbnRyeSBpbiBsaXN0IG9mIGZhaWxlZCBwYWNrYWdlcy4iCittc2dpZCAiIgorIiVzOiBmYWlsZWQgdG8gYWxsb2NhdGUgbWVtb3J5IGZvciBuZXcgZW50cnkgaW4gbGlzdCBvZiBmYWlsZWQgcGFja2FnZXM6ICVzIgorbXNnc3RyICIiCisiZHBrZzogZ2FnYWwgbWVuZ2Fsb2thc2lrYW4gbWVtb3J5IHVudHVrIGRhdGEgYmFydSBkYWxhbSBkYWZ0YXIgcGFrZXQtcGFrZXQgIgorInlhbmcgZ2FnYWwiCisKKyM6IHNyYy9lcnJvcnMuYzo3OQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZHBrZzogdG9vIG1hbnkgZXJyb3JzLCBzdG9wcGluZ1xuIgorbXNnaWQgIiVzOiB0b28gbWFueSBlcnJvcnMsIHN0b3BwaW5nXG4iCittc2dzdHIgImRwa2c6IHRlcmxhbHUgYmFueWFrIGtlc2FsYWhhbiwgZGloZW50aWthbi4gXG4iCisKKyM6IHNyYy9lcnJvcnMuYzo4NworbXNnaWQgIkVycm9ycyB3ZXJlIGVuY291bnRlcmVkIHdoaWxlIHByb2Nlc3Npbmc6XG4iCittc2dzdHIgIkFkYSBrZXNhbGFoYW4gc2FhdCBtZW1wcm9zZXM6IFxuIgorCisjOiBzcmMvZXJyb3JzLmM6OTQKK21zZ2lkICJQcm9jZXNzaW5nIHdhcyBoYWx0ZWQgYmVjYXVzZSB0aGVyZSB3ZXJlIHRvbyBtYW55IGVycm9ycy5cbiIKK21zZ3N0ciAiUGVtcm9zZXNhbiBkaWhlbnRpa2FuIGthcmVuYSB0ZXJsYWx1IGJhbnlhayBrZXNhbGFoYW4uXG4iCisKKyM6IHNyYy9lcnJvcnMuYzoxMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSAlcyB3YXMgb24gaG9sZCwgcHJvY2Vzc2luZyBpdCBhbnl3YXkgYXMgeW91IHJlcXVlc3RlZFxuIgorbXNnc3RyICJQYWtldCAlcyB0ZWxhaCBkaWNla2FsLCB0ZXRhcCBtZW1wcm9zZXMgc2VzdWFpIHBlcm1pbnRhYW5cbiIKKworIzogc3JjL2Vycm9ycy5jOjEwOQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiUGFja2FnZSAlcyBpcyBvbiBob2xkLCBub3QgdG91Y2hpbmcgaXQuICBVc2UgLS1mb3JjZS1ob2xkIHRvIG92ZXJyaWRlLlxuIgorbXNnc3RyICIiCisiUGFrZXQgJXMgc2VkYW5nIGRpY2VrYWwsIHRpZGFrIGFrYW4gZGlzZW50dWguIFxuIgorIkd1bmFrYW4gJy0tZm9yY2UtaG9sZCcgdW50dWsgbWVtcHJvc2VzbnlhLlxuIgorCisjOiBzcmMvZXJyb3JzLmM6MTE5Cittc2dpZCAib3ZlcnJpZGluZyBwcm9ibGVtIGJlY2F1c2UgLS1mb3JjZSBlbmFibGVkOiIKK21zZ3N0ciAiYWRhIG1hc2FsYWggcGVuaW1wYWFuIGthcmVuYSAtLWZvcmNlIGRpaGlkdXBrYW46IgorCisjOiBzcmMvZmlsZXNkYi5jOjMwNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcyciCittc2dzdHIgImdhZ2FsIG1lbWJ1a2EgYmVya2FzIGRhZnRhciBiZXJrYXMgdW50dWsgcGFrZXQgJyUuMjUwcyciCisKKyM6IHNyYy9maWxlc2RiLmM6MzExCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcycgbWlzc2luZywgYXNzdW1pbmcgcGFja2FnZSBoYXMgbm8gZmlsZXMgIgorImN1cnJlbnRseSBpbnN0YWxsZWQuIgorbXNnc3RyICIiCisiYmVya2FzIGRhZnRhciBiZXJrYXMgdW50dWsgcGFrZXQgJyUuMjUwcycgaGlsYW5nOyBcbiIKKyJhbmdnYXAgcGFrZXQgdGlkYWsgbWVtaWxpa2kgYmVya2FzIHlhbmcgc3VkYWggdGVycGFzYW5nLiIKKworIzogc3JjL2ZpbGVzZGIuYzozMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICclLjI1MHMnIgorbXNnc3RyICJnYWdhbCBtZW5hdGEgc3RhdHVzIGJlcmthcyBkYWZ0YXIgYmVya2FzIHVudHVrIHBha2V0ICclLjI1MHMnIgorCisjOiBzcmMvZmlsZXNkYi5jOjMzMAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZXMgbGlzdCBmb3IgcGFja2FnZSBgJS4yNTBzJyIKK21zZ2lkICJyZWFkaW5nIGZpbGVzIGxpc3QgZm9yIHBhY2thZ2UgJyUuMjUwcyciCittc2dzdHIgImRhZnRhciBiZXJrYXMgdW50dWsgcGFrZXQgJyUuMjUwcyciCisKKyM6IHNyYy9maWxlc2RiLmM6MzM2CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAnJS4yNTBzJyBpcyBtaXNzaW5nIGZpbmFsIG5ld2xpbmUiCittc2dzdHIgImJlcmthcyBkYWZ0YXIgYmVya2FzIHVudHVrIHBha2V0ICclLjI1MHMnIHRpZGFrIGFkYSBiYXJpcy1iYXJ1IHBlbnV0dXAiCisKKyM6IHNyYy9maWxlc2RiLmM6MzQ0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSBgJS4yNTBzJyBjb250YWlucyBlbXB0eSBmaWxlbmFtZSIKK21zZ3N0ciAiYmVya2FzIGRhZnRhciBiZXJrYXMgdW50dWsgcGFrZXQgJyUuMjUwcycgYmVyaXNpIG5hbWEgYmVya2FzIGtvc29uZyIKKworIzogc3JjL2ZpbGVzZGIuYzozNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcyciCittc2dzdHIgImFkYSBrZXNhbGFoYW4gc2FhdCBtZW51dHVwIGJlcmthcyBkYWZ0YXIgYmVya2FzIHVudHVrIHBha2V0ICclLjI1MHMnIgorCisjOiBzcmMvZmlsZXNkYi5jOjQ2MgorbXNnaWQgIihSZWFkaW5nIGRhdGFiYXNlIC4uLiAiCittc2dzdHIgIihTZWRhbmcgbWVtYmFjYSBiYXNpcyBkYXRhIC4uLiAiCisKKyM6IHNyYy9maWxlc2RiLmM6NDgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiVkIGZpbGUgb3IgZGlyZWN0b3J5IGN1cnJlbnRseSBpbnN0YWxsZWQuKVxuIgorbXNnaWRfcGx1cmFsICIlZCBmaWxlcyBhbmQgZGlyZWN0b3JpZXMgY3VycmVudGx5IGluc3RhbGxlZC4pXG4iCittc2dzdHJbMF0gIiAlZCBiZXJrYXMgYXRhdSBkaXJla3RvcmkgdGVsYWggdGVycGFzYW5nLilcbiIKKworIzogc3JjL2ZpbGVzZGIuYzo1MTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAiZ2FnYWwgbWVtYnVhdCBiZXJrYXMgZGFmdGFyIGJlcmthcyB0ZXJiYXJ1IHVudHVrIHBha2V0ICVzIgorCisjOiBzcmMvZmlsZXNkYi5jOjUyNgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgdG8gdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgImdhZ2FsIG1lbnVsaXMgYmVya2FzIGRhZnRhciBiZXJrYXMgdGVyYmFydSB1bnR1ayBwYWtldCAlcyIKKworIzogc3JjL2ZpbGVzZGIuYzo1MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZsdXNoIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICJnYWdhbCBtZW1iZXJzaWhrYW4gYmVya2FzIHRlcmJhcnUgZGFmdGFyIGJlcmthcyB1bnR1ayBwYWtldCAlcyIKKworIzogc3JjL2ZpbGVzZGIuYzo1MzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHN5bmMgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgImdhZ2FsIHNpbmtyb25pc2FzaSBiZXJrYXMgZGFmdGFyIGJlcmthcy1iZXJrYXMgdGVyYmFydSB1bnR1ayBwYWtldCAlcyIKKworIzogc3JjL2ZpbGVzZGIuYzo1MzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNsb3NlIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICJnYWdhbCBtZW51dHVwIGJlcmthcyBkYWZ0YXIgYmVya2FzLWJlcmthcyB0ZXJiYXJ1IHVudHVrIHBha2V0ICVzIgorCisjOiBzcmMvZmlsZXNkYi5jOjUzNQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gaW5zdGFsbCB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAiZ2FnYWwgbWVtYXNhbmcgYmVya2FzIGRhZnRhciBiZXJrYXMtYmVya2FzIHRlcmJhcnUgdW50dWsgcGFrZXQgJXMiCisKKyM6IHNyYy9oZWxwLmM6NDgKK21zZ2lkICJub3QgaW5zdGFsbGVkIgorbXNnc3RyICJ0YWsgZGlwYXNhbmciCisKKyM6IHNyYy9oZWxwLmM6NDkKK21zZ2lkICJub3QgaW5zdGFsbGVkIGJ1dCBjb25maWdzIHJlbWFpbiIKK21zZ3N0ciAidGlkYWsgdGVycGFzYW5nIHRldGFwaSBrb25maWd1cmFzaSBtYXNpaCBhZGEiCisKKyM6IHNyYy9oZWxwLmM6NTAKK21zZ2lkICJicm9rZW4gZHVlIHRvIGZhaWxlZCByZW1vdmFsIG9yIGluc3RhbGxhdGlvbiIKK21zZ3N0ciAicnVzYWsga2FyZW5hIGtlZ2FnYWxhbiBzYWF0IG1lbWJ1YW5nIGF0YXUgbWVtYXNhbmciCisKKyM6IHNyYy9oZWxwLmM6NTEKK21zZ2lkICJ1bnBhY2tlZCBidXQgbm90IGNvbmZpZ3VyZWQiCittc2dzdHIgImRpYnVrYSB0ZXRhcGkgdGlkYWsgZGlrb25maWd1cmFzaSIKKworIzogc3JjL2hlbHAuYzo1MgorbXNnaWQgImJyb2tlbiBkdWUgdG8gcG9zdGluc3QgZmFpbHVyZSIKK21zZ3N0ciAicnVzYWsga2FyZW5hIGtlZ2FnYWxhbiAncG9zdGluc3QnIgorCisjOiBzcmMvaGVscC5jOjUzCittc2dpZCAiYXdhaXRpbmcgdHJpZ2dlciBwcm9jZXNzaW5nIGJ5IGFub3RoZXIgcGFja2FnZSIKK21zZ3N0ciAibWVudW5nZ3UgcGVtcm9zZXNhbiBwZW1pY3Ugb2xlaCBwYWtldCBsYWlubnlhIgorCisjOiBzcmMvaGVscC5jOjU0Cittc2dpZCAidHJpZ2dlcmVkIgorbXNnc3RyICJkaXBpY3UiCisKKyM6IHNyYy9oZWxwLmM6NTUKK21zZ2lkICJpbnN0YWxsZWQiCittc2dzdHIgInRlcnBhc2FuZyIKKworIzogc3JjL2hlbHAuYzoxMDcKKyMsIGZ1enp5CisjfCBtc2dpZCAiZXJyb3I6IFBBVEggaXMgbm90IHNldC4iCittc2dpZCAiUEFUSCBpcyBub3Qgc2V0LiIKK21zZ3N0ciAiZ2FsYXQ6IFBBVEggdGlkYWsgZGlzZXRlbC4iCisKKyM6IHNyYy9oZWxwLmM6MTI5CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuIgorbXNnc3RyICInJXMnIHRpZGFrIGRpdGVtdWthbiBwYWRhIFBBVEggYXRhdSB0aWRhayBkYXBhdCBkaWVrc2VrdXNpLiIKKworIzogc3JjL2hlbHAuYzoxMzgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiclcycgbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuIgorbXNnaWQgIiIKKyIlZCBleHBlY3RlZCBwcm9ncmFtIG5vdCBmb3VuZCBpbiBQQVRIIG9yIG5vdCBleGVjdXRhYmxlLlxuIgorIiVzIgorbXNnaWRfcGx1cmFsICIiCisiJWQgZXhwZWN0ZWQgcHJvZ3JhbXMgbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuXG4iCisiJXMiCittc2dzdHJbMF0gIiclcycgdGlkYWsgZGl0ZW11a2FuIHBhZGEgUEFUSCBhdGF1IHRpZGFrIGRhcGF0IGRpZWtzZWt1c2kuIgorCisjOiBzcmMvaGVscC5jOjE0MQorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiJWQgZXhwZWN0ZWQgcHJvZ3JhbSBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS5cbiIKKyN8ICJOQjogcm9vdCdzIFBBVEggc2hvdWxkIHVzdWFsbHkgY29udGFpbiAvdXNyL2xvY2FsL3NiaW4sIC91c3Ivc2JpbiBhbmQgLyIKKyN8ICJzYmluLiIKKyN8IG1zZ2lkX3BsdXJhbCAiIgorI3wgIiVkIGV4cGVjdGVkIHByb2dyYW1zIG5vdCBmb3VuZCBpbiBQQVRIIG9yIG5vdCBleGVjdXRhYmxlLlxuIgorI3wgIk5COiByb290J3MgUEFUSCBzaG91bGQgdXN1YWxseSBjb250YWluIC91c3IvbG9jYWwvc2JpbiwgL3Vzci9zYmluIGFuZCAvIgorI3wgInNiaW4uIgorbXNnaWQgIiIKKyJOb3RlOiByb290J3MgUEFUSCBzaG91bGQgdXN1YWxseSBjb250YWluIC91c3IvbG9jYWwvc2JpbiwgL3Vzci9zYmluIGFuZCAvIgorInNiaW4uIgorbXNnc3RyICIiCisiJWQgcHJvZ3JhbSB5YW5nIGRpaGFyYXBrYW4gdGlkYWsgZGl0ZW11a2FuIHBhZGEgUEFUSCBcbiIKKyIgICBhdGF1IHRpZGFrIGRhcGF0IGRpZWtzZWt1c2kuXG4iCisiUFM6IFBBVEggcm9vdCBoYXJ1cyBzZWxhbHUgYmVyaXNpIC91c3IvbG9jYWwvc2JpbiwgL3Vzci9zYmluLCBkYW4gL3NiaW4iCisKKyM6IHNyYy9oZWxwLmM6MTg4Cittc2dpZCAiYWRtaW5kaXIgbXVzdCBiZSBpbnNpZGUgaW5zdGRpciBmb3IgZHBrZyB0byB3b3JrIHByb3Blcmx5IgorbXNnc3RyICIiCisKKyM6IHNyYy9oZWxwLmM6MTkwIHNyYy9tYWluLmM6NzQ3CisjLCBmdXp6eQorI3wgbXNnaWQgInVuYWJsZSB0byBzZXRlbnYgZm9yIG1haW50YWluZXIgc2NyaXB0IgorbXNnaWQgInVuYWJsZSB0byBzZXRlbnYgZm9yIHN1YnByb2Nlc3NlcyIKK21zZ3N0ciAiZ2FnYWwgbWVuYXRhIGVudiB1bnR1ayBza3JpcCBwZW5nZWxvbGEgcGFrZXQiCisKKyM6IHNyYy9oZWxwLmM6MTkyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjaHJvb3QgdG8gYCUuMjUwcyciCittc2dzdHIgImdhZ2FsIG1lbWluZGFoa2FuIHJvb3Qga2UgJyUuMjUwcyciCisKKyM6IHNyYy9oZWxwLmM6MTk0IGRwa2ctZGViL2J1aWxkLmM6NDU1IGRwa2ctZGViL2J1aWxkLmM6NDU3CisjOiBkcGtnLWRlYi9idWlsZC5jOjUzNiBkcGtnLWRlYi9idWlsZC5jOjU1OAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gYCUuMjU1cyciCittc2dzdHIgIkdhZ2FsIG1lbWluZGFoa2FuIGRpcmVrdG9yaSBrZSAnJS4yNTVzJyIKKworIzogc3JjL2hlbHAuYzoyNTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNldCBleGVjdXRlIHBlcm1pc3Npb25zIG9uIGAlLjI1MHMnIgorbXNnc3RyICJnYWdhbCBtZW5hdGEgaXppbiBla3Nla3VzaSB1bnR1ayAnJS4yNTBzJyIKKworIzogc3JjL2hlbHAuYzoyNzYKK21zZ2lkICJ1bmFibGUgdG8gc2V0ZW52IGZvciBtYWludGFpbmVyIHNjcmlwdCIKK21zZ3N0ciAiZ2FnYWwgbWVuYXRhIGVudiB1bnR1ayBza3JpcCBwZW5nZWxvbGEgcGFrZXQiCisKKyM6IHNyYy9oZWxwLmM6MzAwCisjLCBjLWZvcm1hdAorbXNnaWQgImluc3RhbGxlZCAlcyBzY3JpcHQiCittc2dzdHIgInNrcmlwICVzIHRlcnBhc2FuZyIKKworIzogc3JjL2hlbHAuYzozMTMgc3JjL2hlbHAuYzozODIgc3JjL2hlbHAuYzo0NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgJXMgYCUuMjUwcyciCittc2dzdHIgImdhZ2FsIG1lbmF0YSBzdGF0dXMgJXMgJyUuMjUwcyciCisKKyM6IHNyYy9oZWxwLmM6MzY4IHNyYy9oZWxwLmM6NDI4CisjLCBjLWZvcm1hdAorbXNnaWQgIm5ldyAlcyBzY3JpcHQiCittc2dzdHIgInNrcmlwICVzIGJhcnUiCisKKyM6IHNyYy9oZWxwLmM6NDAyCisjLCBjLWZvcm1hdAorbXNnaWQgIm9sZCAlcyBzY3JpcHQiCittc2dzdHIgInNrcmlwICVzIGxhbWEiCisKKyM6IHNyYy9oZWxwLmM6NDE2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0ICVzICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiZ2FnYWwgbWVuYXRhIHN0YXR1cyAlcyAnJS4yNTBzJzogJXMiCisKKyM6IHNyYy9oZWxwLmM6NDI1CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2cgLSB0cnlpbmcgc2NyaXB0IGZyb20gdGhlIG5ldyBwYWNrYWdlIGluc3RlYWQgLi4uXG4iCittc2dzdHIgImRwa2cgLSBtZW5jb2JhIHNrcmlwIGRhcmkgcGFrZXQgYmFydSBzYWphIC4uLiBcbiIKKworIzogc3JjL2hlbHAuYzo0MzkKK21zZ2lkICJ0aGVyZSBpcyBubyBzY3JpcHQgaW4gdGhlIG5ldyB2ZXJzaW9uIG9mIHRoZSBwYWNrYWdlIC0gZ2l2aW5nIHVwIgorbXNnc3RyICJ0aWRhayBhZGEgc2tyaXAgZGFsYW0gcGFrZXQgdmVyc2kgdGVyYmFydSAtIG1lbnllcmFoIgorCisjOiBzcmMvaGVscC5jOjQ0NQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiAuLi4gaXQgbG9va3MgbGlrZSB0aGF0IHdlbnQgT0suXG4iCittc2dzdHIgImRwa2c6IC4uLiB0YW1wYWtueWEgc2VtdWEgQkVSRVMuXG4iCisKKyM6IHNyYy9oZWxwLmM6NjE2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWN1cmVseSByZW1vdmUgJyUuMjU1cyciCittc2dzdHIgImdhZ2FsIHNlY2FyYSBoYXRpLWhhdGkgbWVtYnVhbmcgJyUuMjU1cyciCisKKyM6IHNyYy9oZWxwLmM6NjIxIGRwa2ctZGViL2luZm8uYzo2NSBkcGtnLWRlYi9pbmZvLmM6NjcKK21zZ2lkICJybSBjb21tYW5kIGZvciBjbGVhbnVwIgorbXNnc3RyICIiCisKKyM6IHNyYy9pbmZvZGIuYzo1MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hlY2sgZXhpc3RlbmNlIG9mIGAlLjI1MHMnIgorbXNnc3RyICJnYWdhbCBtZW1lcmlrc2Ega2ViZXJhZGFhbiAnJS4yNTBzJyIKKworIzogc3JjL2luZm9kYi5jOjcwCittc2dpZCAiY2Fubm90IHJlYWQgaW5mbyBkaXJlY3RvcnkiCittc2dzdHIgImdhZ2FsIG1lbWJhY2EgZGlyZWt0b3JpICdpbmZvJyIKKworIzogc3JjL21haW4uYzo2MAorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIG1hbmFnZW1lbnQgcHJvZ3JhbSB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICJQcm9ncmFtIHBlbmdlbG9sYWFuIHBha2V0IERlYmlhbiAnJXMnIHZlcnNpICVzLlxuIgorCisjOiBzcmMvbWFpbi5jOjg1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1pfC0taW5zdGFsbCAgICAgICA8LmRlYiBmaWxlIG5hbWU+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXJlY3Rvcnk+IC4uLlxuIgorIiAgLS11bnBhY2sgICAgICAgICAgIDwuZGViIGZpbGUgbmFtZT4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRpcmVjdG9yeT4gLi4uXG4iCisiICAtQXwtLXJlY29yZC1hdmFpbCAgPC5kZWIgZmlsZSBuYW1lPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyZWN0b3J5PiAuLi5cbiIKKyIgIC0tY29uZmlndXJlICAgICAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtLXRyaWdnZXJzLW9ubHkgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLXJ8LS1yZW1vdmUgICAgICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC1QfC0tcHVyZ2UgICAgICAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtLWdldC1zZWxlY3Rpb25zIFs8cGF0dGVybj4gLi4uXSBHZXQgbGlzdCBvZiBzZWxlY3Rpb25zIHRvIHN0ZG91dC5cbiIKKyIgIC0tc2V0LXNlbGVjdGlvbnMgICAgICAgICAgICAgICAgIFNldCBwYWNrYWdlIHNlbGVjdGlvbnMgZnJvbSBzdGRpbi5cbiIKKyIgIC0tY2xlYXItc2VsZWN0aW9ucyAgICAgICAgICAgICAgIERlc2VsZWN0IGV2ZXJ5IG5vbi1lc3NlbnRpYWwgcGFja2FnZS5cbiIKKyIgIC0tdXBkYXRlLWF2YWlsIDxQYWNrYWdlcy1maWxlPiAgIFJlcGxhY2UgYXZhaWxhYmxlIHBhY2thZ2VzIGluZm8uXG4iCisiICAtLW1lcmdlLWF2YWlsIDxQYWNrYWdlcy1maWxlPiAgICBNZXJnZSB3aXRoIGluZm8gZnJvbSBmaWxlLlxuIgorIiAgLS1jbGVhci1hdmFpbCAgICAgICAgICAgICAgICAgICAgRXJhc2UgZXhpc3RpbmcgYXZhaWxhYmxlIGluZm8uXG4iCisiICAtLWZvcmdldC1vbGQtdW5hdmFpbCAgICAgICAgICAgICBGb3JnZXQgdW5pbnN0YWxsZWQgdW5hdmFpbGFibGUgcGtncy5cbiIKKyIgIC1zfC0tc3RhdHVzIDxwYWNrYWdlPiAuLi4gICAgICAgIERpc3BsYXkgcGFja2FnZSBzdGF0dXMgZGV0YWlscy5cbiIKKyIgIC1wfC0tcHJpbnQtYXZhaWwgPHBhY2thZ2U+IC4uLiAgIERpc3BsYXkgYXZhaWxhYmxlIHZlcnNpb24gZGV0YWlscy5cbiIKKyIgIC1MfC0tbGlzdGZpbGVzIDxwYWNrYWdlPiAuLi4gICAgIExpc3QgZmlsZXMgYG93bmVkJyBieSBwYWNrYWdlKHMpLlxuIgorIiAgLWx8LS1saXN0IFs8cGF0dGVybj4gLi4uXSAgICAgICAgTGlzdCBwYWNrYWdlcyBjb25jaXNlbHkuXG4iCisiICAtU3wtLXNlYXJjaCA8cGF0dGVybj4gLi4uICAgICAgICBGaW5kIHBhY2thZ2Uocykgb3duaW5nIGZpbGUocykuXG4iCisiICAtQ3wtLWF1ZGl0ICAgICAgICAgICAgICAgICAgICAgICBDaGVjayBmb3IgYnJva2VuIHBhY2thZ2UocykuXG4iCisiICAtLXByaW50LWFyY2hpdGVjdHVyZSAgICAgICAgICAgICBQcmludCBkcGtnIGFyY2hpdGVjdHVyZS5cbiIKKyIgIC0tY29tcGFyZS12ZXJzaW9ucyA8YT4gPG9wPiA8Yj4gIENvbXBhcmUgdmVyc2lvbiBudW1iZXJzIC0gc2VlIGJlbG93LlxuIgorIiAgLS1mb3JjZS1oZWxwICAgICAgICAgICAgICAgICAgICAgU2hvdyBoZWxwIG9uIGZvcmNpbmcuXG4iCisiICAtRGh8LS1kZWJ1Zz1oZWxwICAgICAgICAgICAgICAgICBTaG93IGhlbHAgb24gZGVidWdnaW5nLlxuIgorIlxuIgorbXNnc3RyICIiCisiUGVyaW50YWg6IFxuIgorIiAgLWl8LS1pbnN0YWxsICAgICAgPG5hbWEgYmVya2FzIC5kZWI+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXI+IC4uLlxuIgorIiAgLS11bnBhY2sgICAgICAgICAgPG5hbWEgYmVya2FzIC5kZWI+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXI+IC4uLlxuIgorIiAgLUF8LS1yZWNvcmQtYXZhaWwgPG5hbWEgYmVya2FzIC5kZWI+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXI+IC4uLlxuIgorIiAgLS1jb25maWd1cmUgICAgICAgPG5hbWEgcGFrZXQ+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLS10cmlnZ2Vycy1vbmx5ICAgPG5hbWEgcGFrZXQ+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLXJ8LS1yZW1vdmUgICAgICAgPG5hbWEgcGFrZXQ+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLVB8LS1wdXJnZSAgICAgICAgPG5hbWEgcGFrZXQ+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLS1nZXQtc2VsZWN0aW9ucyAgWzxwb2xhPiAuLi5dICAgICAgQW1iaWwgZGFmdGFyIHBpbGloYW4ga2Ugc3Rkb3V0LlxuIgorIiAgLS1zZXQtc2VsZWN0aW9ucyAgICAgICAgICAgICAgICAgICAgU2V0IHBpbGloYW4gcGFrZXQtcGFrZXQgZGFyaSBzdGRpbi5cbiIKKyIgIC0tY2xlYXItc2VsZWN0aW9ucyAgICAgICAgICAgICAgICAgIEJhdGFsIHBpbGloIHNlbXVhIHBha2V0IHRhayBwZW50aW5nLlxuIgorIiAgLS11cGRhdGUtYXZhaWwgPGJlcmthcyBQYWNrYWdlcz4gICAgR2FudGkgaW5mbyBwYWtldCB5YW5nIHRlcnNlZGlhLlxuIgorIiAgLS1tZXJnZS1hdmFpbCAgPGJlcmthcyBQYWNrYWdlcz4gICAgR2FidW5na2FuIGRlbmdhbiBpbmZvIGRhcmkgYmVya2FzLlxuIgorIiAgLS1jbGVhci1hdmFpbCAgICAgICAgICAgICAgICAgICAgICAgSGFwdXMgaW5mbyB5YW5nIHRlcnNlZGlhIHNhYXQgaW5pLlxuIgorIiAgLS1mb3JnZXQtb2xkLXVuYXZhaWwgICAgICAgICAgICAgICAgTHVwYWthbiBwYWtldCB0YWstdGVyaW5zdGFsIHRhay0iCisidGVyc2VkaWEuXG4iCisiICAtc3wtLXN0YXR1cyA8bmFtYS1wYWtldD4gLi4uICAgICAgICBUYW1waWxrYW4gcmluY2lhbiBzdGF0dXMgcGFrZXQuXG4iCisiICAtcHwtLXByaW50LWF2YWlsIDxuYW1hLXBha2V0PiAuLi4gICBUYW1waWxrYW4gcmluY2lhbiB2ZXJzaSB5ZyB0ZXJzZWRpYS5cbiIKKyIgIC1MfC0tbGlzdGZpbGVzIDxuYW1hLXBha2V0PiAuLi4gICAgIFRhbXBpbGthbiBzZW11YSBiZXJrYXMgbWlsaWsgcGFrZXQuXG4iCisiICAtbHwtLWxpc3QgWzxwb2xhPiAuLi5dICAgICAgICAgICAgICBUYW1waWxrYW4gcGFrZXQtcGFrZXQgdGVyaW5zdGFsLlxuIgorIiAgLVN8LS1zZWFyY2ggPHBvbGE+IC4uLiAgICAgICAgICAgICAgQ2FyaSBwYWtldCB5YW5nIG1lbWlsaWtpIGJlcmthcy5cbiIKKyIgIC1DfC0tYXVkaXQgICAgICAgICAgICAgICAgICAgICAgICAgIFBlcmlrc2EgcGFrZXQtcGFrZXQgeWFuZyBydXNhay5cbiIKKyIgIC0tcHJpbnQtYXJjaGl0ZWN0dXJlICAgICAgICAgICAgICAgIENldGFrIGFyc2l0ZWt0dXIgZHBrZy4gXG4iCisiICAtLWNvbXBhcmUtdmVyc2lvbnMgPGE+IDxvcD4gPGI+ICAgICBCYW5kaW5na2FuIHZlcnNpIC0gbGloYXQgZGliYXdhaC5cbiIKKyIgIC0tZm9yY2UtaGVscCAgICAgICAgICAgICAgICAgICAgICAgIFRhbXBpbGthbiBiYW50dWFuIHNhYXQgcHJvc2VzIHBha3NhLlxuIgorIiAgLURofC0tZGVidWc9aGVscCAgICAgICAgICAgICAgICAgICAgVGFtcGlsa2FuIGJhbnR1YW4gc2FhdCBwcm9zZXMgZGVidWcuXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTEzIHNyYy9xdWVyeWNtZC5jOjYzMSBzcmMvdHJpZ2NtZC5jOjc3IGRwa2ctZGViL21haW4uYzo4OAorIzogZHBrZy1zcGxpdC9tYWluLmM6NzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiAgLWh8LS1oZWxwICAgICAgICAgICAgICAgICAgICAgICAgU2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCittc2dzdHIgIiIKKyIgIC1ofC0taGVscCAgICAgICAgICAgICAgICAgICAgICAgIExpaGF0IHBlc2FuIHBhbmR1YW4gaW5pLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICAgICAgICAgTGloYXQgdmVyc2kuXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTE4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJVc2UgZHBrZyAtYnwtLWJ1aWxkfC1jfC0tY29udGVudHN8LWV8LS1jb250cm9sfC1JfC0taW5mb3wtZnwtLWZpZWxkfFxuIgorIiAteHwtLWV4dHJhY3R8LVh8LS12ZXh0cmFjdHwtLWZzeXMtdGFyZmlsZSAgb24gYXJjaGl2ZXMgKHR5cGUgJXMgLS1oZWxwKS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIkd1bmFrYW4gZHBrZyAtYnwtLWJ1aWxkfC1jfC0tY29udGVudHN8LWV8LS1jb250cm9sfC1JfC0taW5mb3xcbiIKKyIgIC1mfC0tZmllbGR8LXh8LS1leHRyYWN0fC1YfC0tdmV4dHJhY3R8LS1mc3lzLXRhcmZpbGUgcGFkYSBhcnNpcFxuIgorIiAgKGtldGlrICVzIC0taGVscCkuXG4iCisKKyM6IHNyYy9tYWluLmM6MTIzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJGb3IgaW50ZXJuYWwgdXNlOiBkcGtnIC0tYXNzZXJ0LXN1cHBvcnQtcHJlZGVwZW5kcyB8IC0tcHJlZGVwLXBhY2thZ2UgfFxuIgorIiAgLS1hc3NlcnQtd29ya2luZy1lcG9jaCB8IC0tYXNzZXJ0LWxvbmctZmlsZW5hbWVzIHwgLS1hc3NlcnQtbXVsdGktY29ucmVwLlxuIgorIlxuIgorbXNnc3RyICIiCisiVW50dWsgcGVtYWthaWFuIGludGVybmFsOiBkcGtnIC0tYXNzZXJ0LXN1cHBvcnQtcHJlZGVwZW5kcyB8XG4iCisiICAtLXByZWRlcC1wYWNrYWdlIHwgLS1hc3NlcnQtd29ya2luZy1lcG9jaCB8IC0tYXNzZXJ0LWxvbmctZmlsZW5hbWVzIHxcbiIKKyIgIC0tYXNzZXJ0LW11bHRpLWNvbnJlcC5cbiIKKyJcbiIKKworIzogc3JjL21haW4uYzoxMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyIgIC0tcm9vdD08ZGlyZWN0b3J5PiAgICAgICAgIEluc3RhbGwgb24gYSBkaWZmZXJlbnQgcm9vdCBkaXJlY3RvcnkuXG4iCisiICAtLWluc3RkaXI9PGRpcmVjdG9yeT4gICAgICBDaGFuZ2UgaW5zdGFsbGF0aW9uIGRpciB3aXRob3V0IGNoYW5naW5nIGFkbWluICIKKyJkaXIuXG4iCisiICAtLXBhdGgtZXhjbHVkZT08cGF0dGVybj4gICBEbyBub3QgaW5zdGFsbCBwYXRocyB3aGljaCBtYXRjaCBhIHNoZWxsICIKKyJwYXR0ZXJuLlxuIgorIiAgLS1wYXRoLWluY2x1ZGU9PHBhdHRlcm4+ICAgUmUtaW5jbHVkZSBhIHBhdHRlcm4gYWZ0ZXIgYSBwcmV2aW91cyAiCisiZXhjbHVzaW9uLlxuIgorIiAgLU98LS1zZWxlY3RlZC1vbmx5ICAgICAgICAgU2tpcCBwYWNrYWdlcyBub3Qgc2VsZWN0ZWQgZm9yIGluc3RhbGwvIgorInVwZ3JhZGUuXG4iCisiICAtRXwtLXNraXAtc2FtZS12ZXJzaW9uICAgICBTa2lwIHBhY2thZ2VzIHdob3NlIHNhbWUgdmVyc2lvbiBpcyBpbnN0YWxsZWQuXG4iCisiICAtR3wtLXJlZnVzZS1kb3duZ3JhZGUgICAgICBTa2lwIHBhY2thZ2VzIHdpdGggZWFybGllciB2ZXJzaW9uIHRoYW4gIgorImluc3RhbGxlZC5cbiIKKyIgIC1CfC0tYXV0by1kZWNvbmZpZ3VyZSAgICAgIEluc3RhbGwgZXZlbiBpZiBpdCB3b3VsZCBicmVhayBzb21lIG90aGVyICIKKyJwYWNrYWdlLlxuIgorIiAgLS1bbm8tXXRyaWdnZXJzICAgICAgICAgICAgU2tpcCBvciBmb3JjZSBjb25zZXF1ZW50aWFsIHRyaWdnZXIgIgorInByb2Nlc3NpbmcuXG4iCisiICAtLW5vLWRlYnNpZyAgICAgICAgICAgICAgICBEbyBub3QgdHJ5IHRvIHZlcmlmeSBwYWNrYWdlIHNpZ25hdHVyZXMuXG4iCisiICAtLW5vLWFjdHwtLWRyeS1ydW58LS1zaW11bGF0ZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSnVzdCBzYXkgd2hhdCB3ZSB3b3VsZCBkbyAtIGRvbid0IGRvIGl0LlxuIgorIiAgLUR8LS1kZWJ1Zz08b2N0YWw+ICAgICAgICAgRW5hYmxlIGRlYnVnZ2luZyAoc2VlIC1EaGVscCBvciAtLWRlYnVnPWhlbHApLlxuIgorIiAgLS1zdGF0dXMtZmQgPG4+ICAgICAgICAgICAgU2VuZCBzdGF0dXMgY2hhbmdlIHVwZGF0ZXMgdG8gZmlsZSBkZXNjcmlwdG9yICIKKyI8bj4uXG4iCisiICAtLWxvZz08ZmlsZW5hbWU+ICAgICAgICAgICBMb2cgc3RhdHVzIGNoYW5nZXMgYW5kIGFjdGlvbnMgdG8gPGZpbGVuYW1lPi5cbiIKKyIgIC0taWdub3JlLWRlcGVuZHM9PHBhY2thZ2U+LC4uLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSWdub3JlIGRlcGVuZGVuY2llcyBpbnZvbHZpbmcgPHBhY2thZ2U+LlxuIgorIiAgLS1mb3JjZS0uLi4gICAgICAgICAgICAgICAgT3ZlcnJpZGUgcHJvYmxlbXMgKHNlZSAtLWZvcmNlLWhlbHApLlxuIgorIiAgLS1uby1mb3JjZS0uLi58LS1yZWZ1c2UtLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9wIHdoZW4gcHJvYmxlbXMgZW5jb3VudGVyZWQuXG4iCisiICAtLWFib3J0LWFmdGVyIDxuPiAgICAgICAgICBBYm9ydCBhZnRlciBlbmNvdW50ZXJpbmcgPG4+IGVycm9ycy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIlBpbGloYW46XG4iCisiICAtLWFkbWluZGlyPTxkaXJla3Rvcmk+ICAgICBHdW5ha2FuIDxkaXJla3Rvcmk+IGRhcmlwYWRhICVzLlxuIgorIiAgLS1yb290PTxkaXJla3Rvcmk+ICAgICAgICAgUGFzYW5nIGRpIGRpcmVrdG9yaSByb290IHlhbmcgYmVyYmVkYS5cbiIKKyIgIC0taW5zdGRpcj08ZGlyZWt0b3JpPiAgICAgIEdhbnRpIGRpciBwZW1hc2FuZ2FuIHRhbnBhIG1lbmdnYW50aSBkaXIgIgorImFkbWluLlxuIgorIiAgLS1wYXRoLWV4Y2x1ZGU9PHBvbGE+ICAgICAgSmFuZ2FuIG1lbWFzYW5nIHBhdGggeWFuZyBzZXN1YWkgcG9sYSBzaGVsbCAiCisiaW5pLlxuIgorIiAgLS1wYXRoLWluY2x1ZGU9PHBvbGE+ICAgICAgTWFzdWtrYW4ga2VtYmFsaSBwb2xhIHNoZWxsIHNldGVsYWggIgorInBlbmdlY3VhbGlhbi5cbiIKKyIgIC1PfC0tc2VsZWN0ZWQtb25seSAgICAgICAgIEhpbmRhcmkgcGFrZXQgeWFuZyB0aWRhayBkaXBpbGloLlxuIgorIiAgLUV8LS1za2lwLXNhbWUtdmVyc2lvbiAgICAgSGluZGFyaSBwYWtldCB5YW5nIHNhbWEgZGVuZ2FuIHBha2V0ICIKKyJ0ZXJwYXNhbmcuXG4iCisiICAtR3wtLXJlZnVzZS1kb3duZ3JhZGUgICAgICBIaW5kYXJpIHBha2V0IGRlbmdhbiB2ZXJzaSBsZWJpaCByZW5kYWguXG4iCisiICAtQnwtLWF1dG8tZGVjb25maWd1cmUgICAgICBQYXNhbmcgcGFrZXQgd2FsYXVwdW4gYWthbiBtZXJ1c2FrIHBha2V0IGxhaW4uXG4iCisiICAtLVtuby1ddHJpZ2dlcnMgICAgICAgICAgICBIaW5kYXJpIGF0YXUgcGFrc2EgcGVtcm9zZXNhbiBwZW1pY3UgYmVydW50dW4uXG4iCisiICAtLW5vLWRlYnNpZyAgICAgICAgICAgICAgICBKYW5nYW4gdmVyaWZpa2FzaSB0YW5kYSB0YW5nYW4gcGFrZXQuXG4iCisiICAtLW5vLWFjdHwtLWRyeS1ydW58LS1zaW11bGF0ZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSGFueWEgbGloYXQgeWFuZyBha2FuIGRpbGFrdWthbiAtIGJ1a2FuICIKKyJzdW5nZ3VoYW4uXG4iCisiICAtRHwtLWRlYnVnPTxvY3RhbD4gICAgICAgICBIaWR1cGthbiBkZWJ1Z2dpbmcgKGxpaGF0IC1EaGVscCBhdGF1IC0tIgorImRlYnVnPWhlbHApLlxuIgorIiAgLS1zdGF0dXMtZmQgPG4+ICAgICAgICAgICAgS2lyaW0gcGVydWJhaGFuIHN0YXR1cyBrZSBkZXNjcmlwdG9yIGJlcmthcyAiCisiPG4+LlxuIgorIiAgLS1sb2c9PG5hbWEtYmVya2FzPiAgICAgICAgTG9nIHBlcnViYWhhbiBzdGF0dXMgZGFuIGFrc2kga2UgPG5hbWEtIgorImJlcmthcz4uXG4iCisiICAtLWlnbm9yZS1kZXBlbmRzPTxwYWtldD4sLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBY3Voa2FuIGRlcGVuZGVuc2kgeWcgbWVsaWJhdGthbiA8cGFrZXQ+LlxuIgorIiAgLS1mb3JjZS0uLi4gICAgICAgICAgICAgICAgTWFzYWxhaCBwZW5pbXBhYW4gKGxpaGF0IC0tZm9yY2UtaGVscCkuXG4iCisiICAtLW5vLWZvcmNlLS4uLnwtLXJlZnVzZS0uLi4gICAgXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBCZXJoZW50aSBiaWxhIGRpdGVtdWthbiBtYXNhbGFoLlxuIgorIiAgLS1hYm9ydC1hZnRlciA8bj4gICAgICAgICAgQmF0YWxrYW4gYmlsYSBtZW5kYXBhdGthbiA8bj4gZ2FsYXQuXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTU0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21wYXJpc29uIG9wZXJhdG9ycyBmb3IgLS1jb21wYXJlLXZlcnNpb25zIGFyZTpcbiIKKyIgIGx0IGxlIGVxIG5lIGdlIGd0ICAgICAgICh0cmVhdCBlbXB0eSB2ZXJzaW9uIGFzIGVhcmxpZXIgdGhhbiBhbnkgIgorInZlcnNpb24pO1xuIgorIiAgbHQtbmwgbGUtbmwgZ2UtbmwgZ3QtbmwgKHRyZWF0IGVtcHR5IHZlcnNpb24gYXMgbGF0ZXIgdGhhbiBhbnkgdmVyc2lvbik7XG4iCisiICA8IDw8IDw9ID0gPj0gPj4gPiAgICAgICAob25seSBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIGNvbnRyb2wgZmlsZSAiCisic3ludGF4KS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIk9wZXJhdG9yIHBlcmJhbmRpbmdhbiB1bnR1ayAtLWNvbXBhcmUtdmVyc2lvbnMgc2JiOlxuIgorIiBsdCBsZSBlcSBuZSBnZSBndCAgICAgICAocGVybGFrdWthbiB2ZXJzaSBrb3Nvbmcgc2VsYWx1IGxlYmloIGF3YWwpO1xuIgorIiBsdC1ubCBsZS1ubCBnZS1ubCBndC1ubCAocGVybGFrdWthbiB2ZXJzaSBrb3Nvbmcgc2VsYWx1IGxlYmloIGJhcnUpO1xuIgorIiA8IDw8IDw9ID0gPj0gPj4gPiAgICAgICAoaGFueWEgdW50dWsga29tcGF0aWJpbGl0YXMgZGduIHNpbnRha3MgYmVya2FzICIKKyJjb250cm9sKS5cbiIKKyJcbiIKKworIzogc3JjL21haW4uYzoxNjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiVXNlIGBkc2VsZWN0JyBvciBgYXB0aXR1ZGUnIGZvciB1c2VyLWZyaWVuZGx5IHBhY2thZ2UgbWFuYWdlbWVudC5cbiIKK21zZ3N0ciAiIgorIkd1bmFrYW4gJ2RzZWxlY3QnIGF0YXUgJ2FwdGl0dWRlJyB1bnR1ayBwZW5nZWxvbGFhbiBwYWtldCBkZW5nYW4gbGViaWggIgorIm11ZGFoLlxuIgorCisjOiBzcmMvbWFpbi5jOjE3MAorbXNnaWQgIiIKKyJUeXBlIGRwa2cgLS1oZWxwIGZvciBoZWxwIGFib3V0IGluc3RhbGxpbmcgYW5kIGRlaW5zdGFsbGluZyBwYWNrYWdlcyBbKl07XG4iCisiVXNlIGBkc2VsZWN0JyBvciBgYXB0aXR1ZGUnIGZvciB1c2VyLWZyaWVuZGx5IHBhY2thZ2UgbWFuYWdlbWVudDtcbiIKKyJUeXBlIGRwa2cgLURoZWxwIGZvciBhIGxpc3Qgb2YgZHBrZyBkZWJ1ZyBmbGFnIHZhbHVlcztcbiIKKyJUeXBlIGRwa2cgLS1mb3JjZS1oZWxwIGZvciBhIGxpc3Qgb2YgZm9yY2luZyBvcHRpb25zO1xuIgorIlR5cGUgZHBrZy1kZWIgLS1oZWxwIGZvciBoZWxwIGFib3V0IG1hbmlwdWxhdGluZyAqLmRlYiBmaWxlcztcbiIKKyJcbiIKKyJPcHRpb25zIG1hcmtlZCBbKl0gcHJvZHVjZSBhIGxvdCBvZiBvdXRwdXQgLSBwaXBlIGl0IHRocm91Z2ggYGxlc3MnIG9yICIKKyJgbW9yZScgISIKK21zZ3N0ciAiIgorIktldGlrIGRwa2cgLS1oZWxwIHVudHVrIHBhbmR1YW4gdGVudGFuZyBtZW1hc2FuZyBkYW4gbWVtYnVhbmcgcGFrZXQgWypdO1xuIgorIkd1bmFrYW4gJ2RzZWxlY3QnIGF0YXUgJ2FwdGl0dWRlJyB1bnR1ayBwZW5nZWxvbGFhbiBwYWtldCBzZWNhcmEgIgorImludGVyYWt0aWY7XG4iCisiS2V0aWsgZHBrZyAtRGhlbHAgdW50dWsgbWVsaWhhdCBkYWZ0YXIgbmlsYWkgZGVidWcgZHBrZztcbiIKKyJLZXRpayBkcGtnIC0tZm9yY2UtaGVscCB1bnR1ayBtZWxpaGF0IGRhZnRhciBwaWxpaGFuLXBha3NhO1xuIgorIktldGlrIGRwa2ctZGViIC0taGVscCB1bnR1ayBwYW5kdWFuIHRlbnRhbmcgbWFuaXB1bGFzaSBiZXJrYXMgKi5kZWI7XG4iCisiXG4iCisiUGlsaWhhbiBiZXJ0YW5kYSBbKl0gbWVuZ2hhc2lsa2FuIGJhbnlhayBrZWx1YXJhbiAtIGd1bmFrYW4gcGlwZSBrZSAnbGVzcycgIgorImF0YXUgJ21vcmUnISIKKworIzogc3JjL21haW4uYzoyMTkKK21zZ2lkICJTZXQgYWxsIGZvcmNlIG9wdGlvbnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjEKK21zZ2lkICJSZXBsYWNlIGEgcGFja2FnZSB3aXRoIGEgbG93ZXIgdmVyc2lvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIyMworbXNnaWQgIkNvbmZpZ3VyZSBhbnkgcGFja2FnZSB3aGljaCBtYXkgaGVscCB0aGlzIG9uZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIyNQorbXNnaWQgIlByb2Nlc3MgaW5jaWRlbnRhbCBwYWNrYWdlcyBldmVuIHdoZW4gb24gaG9sZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIyNworbXNnaWQgIlRyeSB0byAoZGUpaW5zdGFsbCB0aGluZ3MgZXZlbiB3aGVuIG5vdCByb290IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjI5Cittc2dpZCAiUEFUSCBpcyBtaXNzaW5nIGltcG9ydGFudCBwcm9ncmFtcywgcHJvYmxlbXMgbGlrZWx5IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjMxCittc2dpZCAiSW5zdGFsbCBhIHBhY2thZ2UgZXZlbiBpZiBpdCBmYWlscyBhdXRoZW50aWNpdHkgY2hlY2siCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzMKK21zZ2lkICJQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyB2ZXJzaW9ucyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzNQorbXNnaWQgIk92ZXJ3cml0ZSBhIGZpbGUgZnJvbSBvbmUgcGFja2FnZSB3aXRoIGFub3RoZXIiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzcKK21zZ2lkICJPdmVyd3JpdGUgYSBkaXZlcnRlZCBmaWxlIHdpdGggYW4gdW5kaXZlcnRlZCB2ZXJzaW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjM5Cittc2dpZCAiT3ZlcndyaXRlIG9uZSBwYWNrYWdlJ3MgZGlyZWN0b3J5IHdpdGggYW5vdGhlcidzIGZpbGUiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDEKK21zZ2lkICJEbyBub3QgcGVyZm9ybSBzYWZlIEkvTyBvcGVyYXRpb25zIHdoZW4gdW5wYWNraW5nIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjQzCittc2dpZCAiQWx3YXlzIHVzZSB0aGUgbmV3IGNvbmZpZyBmaWxlcywgZG9uJ3QgcHJvbXB0IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjQ1Cittc2dpZCAiQWx3YXlzIHVzZSB0aGUgb2xkIGNvbmZpZyBmaWxlcywgZG9uJ3QgcHJvbXB0IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjQ4Cittc2dpZCAiIgorIlVzZSB0aGUgZGVmYXVsdCBvcHRpb24gZm9yIG5ldyBjb25maWcgZmlsZXMgaWYgb25lXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgIGlzIGF2YWlsYWJsZSwgZG9uJ3QgcHJvbXB0LiBJZiBubyBkZWZhdWx0IGNhbiBiZSAiCisiZm91bmQsXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgIHlvdSB3aWxsIGJlIHByb21wdGVkIHVubGVzcyBvbmUgb2YgdGhlIGNvbmZvbGQgb3JcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgY29uZm5ldyBvcHRpb25zIGlzIGFsc28gZ2l2ZW4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNTMKK21zZ2lkICJBbHdheXMgaW5zdGFsbCBtaXNzaW5nIGNvbmZpZyBmaWxlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI1NQorbXNnaWQgIk9mZmVyIHRvIHJlcGxhY2UgY29uZmlnIGZpbGVzIHdpdGggbm8gbmV3IHZlcnNpb25zIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjU3Cittc2dpZCAiUHJvY2VzcyBldmVuIHBhY2thZ2VzIHdpdGggd3Jvbmcgb3Igbm8gYXJjaGl0ZWN0dXJlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjU5Cittc2dpZCAiSW5zdGFsbCBldmVuIGlmIGl0IHdvdWxkIGJyZWFrIGFub3RoZXIgcGFja2FnZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI2MQorbXNnaWQgIkFsbG93IGluc3RhbGxhdGlvbiBvZiBjb25mbGljdGluZyBwYWNrYWdlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI2MworIywgZnV6enkKKyN8IG1zZ2lkICJkZXBlbmRlbmN5IHByb2JsZW1zIC0gbm90IHJlbW92aW5nIgorbXNnaWQgIlR1cm4gYWxsIGRlcGVuZGVuY3kgcHJvYmxlbXMgaW50byB3YXJuaW5ncyIKK21zZ3N0ciAiYWRhIG1hc2FsYWgga2V0ZXJnYW50dW5nYW4gLSB0aWRhayBkaWJ1YW5nIgorCisjOiBzcmMvbWFpbi5jOjI2NQorIywgZnV6enkKKyN8IG1zZ2lkICJkZXBlbmRlbmN5IHByb2JsZW1zIC0gbm90IHJlbW92aW5nIgorbXNnaWQgIlR1cm4gZGVwZW5kZW5jeSB2ZXJzaW9uIHByb2JsZW1zIGludG8gd2FybmluZ3MiCittc2dzdHIgImFkYSBtYXNhbGFoIGtldGVyZ2FudHVuZ2FuIC0gdGlkYWsgZGlidWFuZyIKKworIzogc3JjL21haW4uYzoyNjcKK21zZ2lkICJSZW1vdmUgcGFja2FnZXMgd2hpY2ggcmVxdWlyZSBpbnN0YWxsYXRpb24iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNjkKK21zZ2lkICJSZW1vdmUgYW4gZXNzZW50aWFsIHBhY2thZ2UiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODEKK21zZ2lkICJHZW5lcmFsbHkgaGVscGZ1bCBwcm9ncmVzcyBpbmZvcm1hdGlvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4MgorIywgZnV6enkKKyN8IG1zZ2lkICJ1bmFibGUgdG8gc2V0ZW52IGZvciBtYWludGFpbmVyIHNjcmlwdCIKK21zZ2lkICJJbnZvY2F0aW9uIGFuZCBzdGF0dXMgb2YgbWFpbnRhaW5lciBzY3JpcHRzIgorbXNnc3RyICJnYWdhbCBtZW5hdGEgZW52IHVudHVrIHNrcmlwIHBlbmdlbG9sYSBwYWtldCIKKworIzogc3JjL21haW4uYzoyODMKK21zZ2lkICJPdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODQKK21zZ2lkICJMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4NQorIywgZnV6enkKKyN8IG1zZ2lkICJyZWFkIGVycm9yIGluIGNvbmZpZ3VyYXRpb24gZmlsZSBgJS4yNTVzJyIKK21zZ2lkICJPdXRwdXQgZm9yIGVhY2ggY29uZmlndXJhdGlvbiBmaWxlIgorbXNnc3RyICJhZGEga2VzYWxhaGFuIG1lbWJhY2EgYmVya2FzIGtvbmZpZ3VyYXNpICclLjI1NXMnIgorCisjOiBzcmMvbWFpbi5jOjI4NgorbXNnaWQgIkxvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4NworbXNnaWQgIkRlcGVuZGVuY2llcyBhbmQgY29uZmxpY3RzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg4Cittc2dpZCAiTG90cyBvZiBkZXBlbmRlbmNpZXMvY29uZmxpY3RzIG91dHB1dCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4OQorbXNnaWQgIlRyaWdnZXIgYWN0aXZhdGlvbiBhbmQgcHJvY2Vzc2luZyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MAorbXNnaWQgIkxvdHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2VycyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MQorbXNnaWQgIlNpbGx5IGFtb3VudHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2VycyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MgorbXNnaWQgIkxvdHMgb2YgZHJpdmVsIGFib3V0IGVnIHRoZSBkcGtnL2luZm8gZGlyZWN0b3J5IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjkzCittc2dpZCAiSW5zYW5lIGFtb3VudHMgb2YgZHJpdmVsIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MzA0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlcyBkZWJ1Z2dpbmcgb3B0aW9uLCAtLWRlYnVnPTxvY3RhbD4gb3IgLUQ8b2N0YWw+OlxuIgorIlxuIgorIiBOdW1iZXIgIFJlZi4gaW4gc291cmNlICAgRGVzY3JpcHRpb25cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjMxMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiRGVidWdnaW5nIG9wdGlvbnMgY2FuIGJlIG1peGVkIHVzaW5nIGJpdHdpc2Utb3IuXG4iCisiTm90ZSB0aGF0IHRoZSBtZWFuaW5ncyBhbmQgdmFsdWVzIGFyZSBzdWJqZWN0IHRvIGNoYW5nZS5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjMxOQorbXNnaWQgIi0tZGVidWcgcmVxdWlyZXMgYW4gb2N0YWwgYXJndW1lbnQiCittc2dzdHIgIi0tZGVidWcgbWVtYnV0dWhrYW4gc2VidWFoIGFyZ3VtZW4gb2t0YWwiCisKKyM6IHNyYy9tYWluLmM6MzQ4CisjLCBjLWZvcm1hdAorbXNnaWQgIm51bGwgcGFja2FnZSBuYW1lIGluIC0taWdub3JlLWRlcGVuZHMgY29tbWEtc2VwYXJhdGVkIGxpc3QgYCUuMjUwcyciCittc2dzdHIgIm5hbWEgcGFrZXQgbmloaWwgZGFsYW0gZGFmdGFyIHRlcnBpc2FoLWtvbWEgLS1pZ25vcmUtZGVwZW5kcyAnJS4yNTBzJyIKKworIzogc3JjL21haW4uYzozNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS1pZ25vcmUtZGVwZW5kcyByZXF1aXJlcyBhIGxlZ2FsIHBhY2thZ2UgbmFtZS4gYCUuMjUwcycgaXMgbm90OyAlcyIKK21zZ3N0ciAiIgorIi0taWdub3JlLWRlcGVuZHMgbWVtZXJsdWthbiBzZWJ1YWggbmFtYSBwYWtldCB5YW5nIHNhaC4gJyUuMjUwcycgdGlkYWs7ICVzIgorCisjOiBzcmMvbWFpbi5jOjM3MSBzcmMvbWFpbi5jOjM4MSBzcmMvbWFpbi5jOjY0OSBkcGtnLXNwbGl0L21haW4uYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBpbnRlZ2VyIGZvciAtLSVzOiBgJS4yNTBzJyIKK21zZ3N0ciAiaW50ZWdlciB1bnR1ayAtLSVzIHRpZGFrIHNhaDogJyUuMjUwcyciCisKKyM6IHNyYy9tYWluLmM6NDM4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGV4ZWN1dGluZyBob29rICclcycsIGV4aXQgY29kZSAlZCIKK21zZ3N0ciAiYWRhIGdhbGF0IHNhYXQgbWVuamFsYW5rYW4gJyVzJywga29kZSBrZWx1YXJhbjogJWQiCisKKyM6IHNyYy9tYWluLmM6NDY1CisjLCBmdXp6eQorI3wgbXNnaWQgInN0YXR1cyIKK21zZ2lkICJzdGF0dXMgbG9nZ2VyIgorbXNnc3RyICJzdGF0dXMiCisKKyM6IHNyYy9tYWluLmM6NDgwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlcyBmb3JjaW5nIG9wdGlvbnMgLSBjb250cm9sIGJlaGF2aW91ciB3aGVuIHByb2JsZW1zIGZvdW5kOlxuIgorIiAgd2FybiBidXQgY29udGludWU6ICAtLWZvcmNlLTx0aGluZz4sPHRoaW5nPiwuLi5cbiIKKyIgIHN0b3Agd2l0aCBlcnJvcjogICAgLS1yZWZ1c2UtPHRoaW5nPiw8dGhpbmc+LC4uLiB8IC0tbm8tZm9yY2UtPHRoaW5nPiwuLi5cbiIKKyIgRm9yY2luZyB0aGluZ3M6XG4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzo0OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIldBUk5JTkcgLSB1c2Ugb2Ygb3B0aW9ucyBtYXJrZWQgWyFdIGNhbiBzZXJpb3VzbHkgZGFtYWdlIHlvdXIgaW5zdGFsbGF0aW9uLlxuIgorIkZvcmNpbmcgb3B0aW9ucyBtYXJrZWQgWypdIGFyZSBlbmFibGVkIGJ5IGRlZmF1bHQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzo1MDQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBmb3JjZS9yZWZ1c2Ugb3B0aW9uIGAlLipzJyIKK21zZ3N0ciAiUGlsaWhhbiBmb3JjZS9yZWZ1c2UgJyUuKnMnIHRhayBkaWtlbmFsIgorCisjOiBzcmMvbWFpbi5jOjUxMworIywgYy1mb3JtYXQKK21zZ2lkICJvYnNvbGV0ZSBmb3JjZS9yZWZ1c2Ugb3B0aW9uICclcydcbiIKK21zZ3N0ciAicGlsaWhhbiBmb3JjZS9yZWZ1c2UgJy0tJXMnIHN1ZGFoIHVzYW5nIFxuIgorCisjOiBzcmMvbWFpbi5jOjY0MworbXNnaWQgIi0tY29tbWFuZC1mZCB0YWtlcyBvbmUgYXJndW1lbnQsIG5vdCB6ZXJvIgorbXNnc3RyICItLWNvbW1hbmQtZmQgYnV0dWggc2F0dSBhcmd1bWVuLCBidWthbiAwIgorCisjOiBzcmMvbWFpbi5jOjY0NQorbXNnaWQgIi0tY29tbWFuZC1mZCBvbmx5IHRha2VzIG9uZSBhcmd1bWVudCIKK21zZ3N0ciAiLS1jb21tYW5kLWZkIGhhbnlhIGJ1dHVoIHNhdHUgYXJndW1lbiIKKworIzogc3JjL21haW4uYzo2NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGRuJ3Qgb3BlbiBgJWknIGZvciBzdHJlYW0iCittc2dzdHIgImdhZ2FsIG1lbWJ1a2EgJyVpJyB1bnR1ayBzdHJlYW0iCisKKyM6IHNyYy9tYWluLmM6Njc2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW9mIGJlZm9yZSBlbmQgb2YgbGluZSAlZCIKK21zZ3N0ciAiZW9mIHRpZGFrIGRpaGFyYXBrYW4gc2ViZWx1bSBha2hpciBiYXJpcyAlZCIKKworIzogc3JjL21haW4uYzo3MTkgc3JjL21haW4uYzo3NDEgc3JjL3F1ZXJ5Y21kLmM6NjkyIHNyYy9zdGF0Y21kLmM6Mzc5CisjOiBkcGtnLWRlYi9tYWluLmM6MjAxIGRwa2ctc3BsaXQvbWFpbi5jOjE2MworbXNnaWQgIm5lZWQgYW4gYWN0aW9uIG9wdGlvbiIKK21zZ3N0ciAiYnV0dWggc3VhdHUgcGlsaWhhbiBha3NpIgorCisjOiBzcmMvcGFja2FnZXMuYzoxMTMKK21zZ2lkICIiCisieW91IG11c3Qgc3BlY2lmeSBwYWNrYWdlcyBieSB0aGVpciBvd24gbmFtZXMsIG5vdCBieSBxdW90aW5nIHRoZSBuYW1lcyBvZiAiCisidGhlIGZpbGVzIHRoZXkgY29tZSBpbiIKK21zZ3N0ciAiIgorIkFuZGEgaGFydXMgbWVuZW50dWthbiBwYWtldCBkZW5nYW4gbmFtYW55YSBtYXNpbmctbWFzaW5nLCBidWthbiBkZW5nYW4gIgorIm1lbmd1dGlwIG5hbWEgYmVya2FzLWJlcmthcyB5YW5nIGRpYmF3YW55YS4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjEzMworIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIC0tcGVuZGluZyBkb2VzIG5vdCB0YWtlIGFueSBub24tb3B0aW9uIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS0lcyAtLXBlbmRpbmcgdGlkYWsgYnV0dWggc3VhdHUgYXJndW1lbiBidWthbi1waWxpaGFuIgorCisjOiBzcmMvcGFja2FnZXMuYzoxMzggc3JjL3F1ZXJ5Y21kLmM6Mzc1IHNyYy9xdWVyeWNtZC5jOjU2NQorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGF0IGxlYXN0IG9uZSBwYWNrYWdlIG5hbWUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMgYnV0dWggc2VkaWtpdG55YSBzYXR1IGFyZ3VtZW4gbmFtYSBwYWtldCIKKworIzogc3JjL3BhY2thZ2VzLmM6MTc5CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgJXMgbGlzdGVkIG1vcmUgdGhhbiBvbmNlLCBvbmx5IHByb2Nlc3Npbmcgb25jZS5cbiIKK21zZ3N0ciAiUGFrZXQgJXMgdGVyZGFmdGFyIGxlYmloIGRhcmkgc2VrYWxpLCBoYW55YSBtZW1wcm9zZXNueWEgc2VrYWxpLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzoxODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk1vcmUgdGhhbiBvbmUgY29weSBvZiBwYWNrYWdlICVzIGhhcyBiZWVuIHVucGFja2VkXG4iCisiIGluIHRoaXMgcnVuICEgIE9ubHkgY29uZmlndXJpbmcgaXQgb25jZS5cbiIKK21zZ3N0ciAiIgorIkxlYmloIGRhcmkgc2F0dSBzYWxpbmFuIHBha2V0ICVzIHlhbmcgdGVsYWggZGlidWthXG4iCisiIGRhbGFtIHBlbWFzYW5nYW4gaW5pISBIYW55YSBha2FuIG1lbmdvbmZpZ3VyYXNpIHNla2FsaSBzYWphLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInBhY2thZ2UgJS4yNTBzIGlzIG5vdCByZWFkeSBmb3IgdHJpZ2dlciBwcm9jZXNzaW5nXG4iCisiIChjdXJyZW50IHN0YXR1cyBgJS4yNTBzJyB3aXRoIG5vIHBlbmRpbmcgdHJpZ2dlcnMpIgorbXNnc3RyICIiCisicGFrZXQgJS4yNTBzIGJlbHVtIHNpYXAgdW50dWsgcGVtcm9zZXNhbiBwZW1pY3VcbiIKKyIgIChzdGF0dXMgc2VrYXJhbmcgJyUuMjUwcycgdGFucGEgcGVtaWN1IHRlcnR1bmRhKSIKKworIzogc3JjL3BhY2thZ2VzLmM6MzM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyB3aGljaCBwcm92aWRlcyAlcyBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIgICBQYWtldCAlcyBtZW55ZWRpYWthbiAlcyBha2FuIGRpYnVhbmcuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjMzNworIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgaXMgdG8gYmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiICAgUGFrZXQgJXMgYWthbiBkaWJ1YW5nLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzozNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBWZXJzaW9uIG9mICVzIG9uIHN5c3RlbSBpcyAlcy5cbiIKK21zZ3N0ciAiICBWZXJzaSAlcyBwYWRhIHNpc3RlbSBhZGFsYWggJXMuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjM3NgorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgd2hpY2ggcHJvdmlkZXMgJXMgYXdhaXRzIHRyaWdnZXIgcHJvY2Vzc2luZy5cbiIKK21zZ3N0ciAiICAgUGFrZXQgJXMgbWVueWVkaWFrYW4gJXMgbWVudW5nZ3UgcGVtcm9zZXNhbiBwZW1pY3UuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjM4MAorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgYXdhaXRzIHRyaWdnZXIgcHJvY2Vzc2luZy5cbiIKK21zZ3N0ciAiICAgUGFrZXQgJXMgbWVudW5nZ3UgcGVtcm9zZXNhbiBwZW1pY3UuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQxMAorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiBhbHNvIGNvbmZpZ3VyaW5nIGAlcycgKHJlcXVpcmVkIGJ5IGAlcycpXG4iCittc2dzdHIgImRwa2c6IGp1Z2EgbWVuZ29uZmlndXJhc2kgJyVzJyAoZGlwZXJsdWthbiBvbGVoICclcycpXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQxOAorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgd2hpY2ggcHJvdmlkZXMgJXMgaXMgbm90IGNvbmZpZ3VyZWQgeWV0LlxuIgorbXNnc3RyICIgICBQYWtldCAlcyB5YW5nIG1lbnllZGlha2FuICVzIGJlbHVtIGRpa29uZmlndXJhc2kuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQyMQorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgaXMgbm90IGNvbmZpZ3VyZWQgeWV0LlxuIgorbXNnc3RyICIgIFBha2V0ICVzIGJlbHVtIGRpa29uZmlndXJhc2kuIFxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIHdoaWNoIHByb3ZpZGVzICVzIGlzIG5vdCBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgUGFrZXQgJXMgeWFuZyBtZW55ZWRpYWthbiAlcyB0aWRhayB0ZXJwYXNhbmcuIFxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIGlzIG5vdCBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgUGFrZXQgJXMgdGlkYWsgdGVycGFzYW5nLiBcbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDcyCisjLCBjLWZvcm1hdAorbXNnaWQgIiAlcyAoJXMpIGJyZWFrcyAlcyBhbmQgaXMgJXMuXG4iCittc2dzdHIgIiAgJXMgKCVzKSBtZXJ1c2FrICVzIGRhbiBhZGFsYWggJXMuIFxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlcyAoJXMpIHByb3ZpZGVzICVzLlxuIgorbXNnc3RyICIgICVzICglcykgbWVueWVkaWFrYW4gJXMuIFxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBWZXJzaW9uIG9mICVzIHRvIGJlIGNvbmZpZ3VyZWQgaXMgJXMuXG4iCittc2dzdHIgIiAgVmVyc2kgJXMgeWFuZyBha2FuIGRpa29uZmlndXJhc2kgYWRhbGFoICVzLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo1OTYKK21zZ2lkICIgZGVwZW5kcyBvbiAiCittc2dzdHIgIiBiZXJnYW50dW5nIHBhZGEgIgorCisjOiBzcmMvcGFja2FnZXMuYzo2MDIKK21zZ2lkICI7IGhvd2V2ZXI6XG4iCittc2dzdHIgIjsgdGV0YXBpOlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjcxCisjLCBjLWZvcm1hdAorbXNnaWQgIi4uLi8lcyIKK21zZ3N0ciAiLi4uLyVzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjkxCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGVuc3VyaW5nIGAlLjI1MHMnIGRvZXNuJ3QgZXhpc3QiCittc2dzdHIgImFkYSBrZXNhbGFoYW4gc2FhdCBtZW1hc3Rpa2FuIGJhaHdhICclLjI1MHMnIHRpZGFrIGFkYSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5OQorbXNnaWQgInNwbGl0IHBhY2thZ2UgcmVhc3NlbWJseSIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEwOAorbXNnaWQgInJlYXNzZW1ibGVkIHBhY2thZ2UgZmlsZSIKK21zZ3N0ciAibWVueXVzdW4gdWxhbmcgYmVya2FzIHBha2V0IgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEzMworIywgYy1mb3JtYXQKK21zZ2lkICJBdXRoZW50aWNhdGluZyAlcyAuLi5cbiIKK21zZ3N0ciAiTWVsYWt1a2FuIG90ZW50aWthc2kgKCVzKSAuLi4gXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTM5Cittc2dpZCAicGFja2FnZSBzaWduYXR1cmUgdmVyaWZpY2F0aW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTQ2CisjLCBjLWZvcm1hdAorbXNnaWQgIlZlcmlmaWNhdGlvbiBvbiBwYWNrYWdlICVzIGZhaWxlZCEiCittc2dzdHIgIlBlbWVyaWtzYWFuIHBha2V0ICVzIGdhZ2FsISIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlZlcmlmaWNhdGlvbiBvbiBwYWNrYWdlICVzIGZhaWxlZCxcbiIKKyJidXQgaW5zdGFsbGluZyBhbnl3YXkgYXMgeW91IHJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiIgorIlZlcmlmaWthc2kgcGFrZXQgJXMgZ2FnYWwsXG4iCisidGV0YXBpIHRldGFwIG1lbWFzYW5nbnlhIHNlc3VhaSBwZXJtaW50YWFuLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICJwYXNzZWRcbiIKK21zZ3N0ciAiZGlsZXdhdGlcbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxNjUgZHBrZy1kZWIvaW5mby5jOjgxCittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSB0ZW1wb3JhcnkgZGlyZWN0b3J5IgorbXNnc3RyICJnYWdhbCBtZW1idWF0IGRpcmVrdG9yaSBzZW1lbnRhcmEiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MjA1CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgJXMgaGFzIHRvbyBtYW55IENvbmZsaWN0cy9SZXBsYWNlcyBwYWlycyIKK21zZ3N0ciAicGFrZXQgJXMgYmVyaXNpIHBhc2FuZ2FuIENvbmZsaWN0cy9SZXBsYWNlcyB0ZXJsYW1wYXUgYmFueWFrIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjI0MworIywgYy1mb3JtYXQKK21zZ2lkICJvbGQgdmVyc2lvbiBvZiBwYWNrYWdlIGhhcyBvdmVybHktbG9uZyBpbmZvIGZpbGUgbmFtZSBzdGFydGluZyBgJS4yNTBzJyIKK21zZ3N0ciAiIgorInZlcnNpIGxhbWEgcGFrZXQgaW5pIG1lbWlsaWtpIG5hbWEgYmVya2FzICdpbmZvJyB5YW5nIHRlcmxhbHUgcGFuamFuZyBtdWxhaSAiCisiZGFyaSAnJS4yNTBzJyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyODEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBvYnNvbGV0ZSBpbmZvIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImdhZ2FsIG1lbWJ1YW5nIGJlcmthcyAnaW5mbycgJyUuMjUwcycgeWFuZyBzdWRhaCB1c2FuZyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyODYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgKHN1cHBvc2VkKSBuZXcgaW5mbyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJnYWdhbCBtZW1hc2FuZyBiZXJrYXMgJ2luZm8nICh0YW1wYWtueWEpIGJhcnUgJyUuMTUwcyciCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6Mjk2Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gdGVtcCBjb250cm9sIGRpcmVjdG9yeSIKK21zZ3N0ciAiZ2FnYWwgbWVtYnVrYSBkaXJla3RvcmkgJ2NvbnRyb2wnIHNlbWVudGFyYSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMDcKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBjb250YWlucyBvdmVybHktbG9uZyBjb250cm9sIGluZm8gZmlsZSBuYW1lIChzdGFydGluZyBgJS41MHMnKSIKK21zZ3N0ciAiIgorInBha2V0IGJlcmlzaSBuYW1hIGJlcmthcyBpbmZvICdjb250cm9sJyB5YW5nIHRlcmxhbHUgcGFuamFuZyAobXVsYWkgZGFyaSAiCisiJyUuMjUwcykiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzE0CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgY29udHJvbCBpbmZvIGNvbnRhaW5lZCBkaXJlY3RvcnkgYCUuMjUwcyciCittc2dzdHIgImluZm8gJ2NvbnRyb2wnIHBha2V0IGJlcmlzaSBkaXJla3RvcmkgJyUuMjUwcyciCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzE2CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgY29udHJvbCBpbmZvIHJtZGlyIG9mIGAlLjI1MHMnIGRpZG4ndCBzYXkgbm90IGEgZGlyIgorbXNnc3RyICIiCisicHJvc2VzIHJtZGlyIGRhcmkgaW5mbyAnY29udHJvbCcgcGFrZXQgJyUuMjUwcycgbWVuZ2F0YWthbiBpbmkgYnVrYW4gZGlyIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMyNgorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlICVzIGNvbnRhaW5lZCBsaXN0IGFzIGluZm8gZmlsZSIKK21zZ3N0ciAicGFrZXQgJXMgYmVyaXNpIGRhZnRhciBzZWJhZ2FpIGJlcmthcyAnaW5mbyciCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzMzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyBpbmZvIGZpbGUgYCUuMjUwcycgYXMgYCUuMjUwcyciCittc2dzdHIgImdhZ2FsIG1lbWFzYW5nIGJlcmthcyAnaW5mbycgYmFydSAnJS4yNTBzJyBzZWJhZ2FpICclLjI1MHMnIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjM0OSBzcmMvcmVtb3ZlLmM6MTk4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkZWxldGUgY29udHJvbCBpbmZvIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImdhZ2FsIG1lbmdoYXB1cyBiZXJrYXMgaW5mbyAnY29udHJvbCcgJyUuMjUwcyciCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDExCittc2dpZCAiY2Fubm90IGFjY2VzcyBhcmNoaXZlIgorbXNnc3RyICJnYWdhbCBtZW5nYWtzZXMgYXJzaXAiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDMzCisjLCBmdXp6eQorI3wgbXNnaWQgImNvbnRyb2wgaW5mb3JtYXRpb24gbGVuZ3RoIgorbXNnaWQgInBhY2thZ2UgY29udHJvbCBpbmZvcm1hdGlvbiBleHRyYWN0aW9uIgorbXNnc3RyICJwYW5qYW5nIGluZm9ybWFzaSAnY29udHJvbCciCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDYwCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlY29yZGVkIGluZm8gYWJvdXQgJXMgZnJvbSAlcy5cbiIKK21zZ3N0ciAiTWVyZWthbSBpbmZvIHRlbnRhbmcgJXMgZGFyaSAlcy5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo0NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBhcmNoaXRlY3R1cmUgKCVzKSBkb2VzIG5vdCBtYXRjaCBzeXN0ZW0gKCVzKSIKK21zZ3N0ciAiYXJzaXRla3R1ciBwYWtldCAoJXMpIHRpZGFrIGNvY29rIGRlbmdhbiBzaXN0ZW0gKCVzKSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1MjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IHJlZ2FyZGluZyAlcyBjb250YWluaW5nICVzLCBwcmUtZGVwZW5kZW5jeSBwcm9ibGVtOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogbWVtYW5kYW5nICVzIGJlcmlzaSAlcywgbWFzYWxhaCBwcmEta2V0ZXJnYW50dW5nYW46XG4iCisiJXMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTI2CisjLCBjLWZvcm1hdAorbXNnaWQgInByZS1kZXBlbmRlbmN5IHByb2JsZW0gLSBub3QgaW5zdGFsbGluZyAlLjI1MHMiCittc2dzdHIgIkFkYSBtYXNhbGFoIHByYS1rZXRlcmdhbnR1bmdhbiAtIHRpZGFrIGFrYW4gbWVtYXNhbmcgJS4yNTBzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjUyNworbXNnaWQgImlnbm9yaW5nIHByZS1kZXBlbmRlbmN5IHByb2JsZW0hIgorbXNnc3RyICJtZW5nYWJhaWthbiBtYXNhbGFoIHByYS1rZXRlcmdhbnR1bmdhbiEgIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjU0MworIywgYy1mb3JtYXQKK21zZ2lkICJQcmVwYXJpbmcgdG8gcmVwbGFjZSAlcyAlcyAodXNpbmcgJXMpIC4uLlxuIgorbXNnc3RyICJCZXJzaWFwLXNpYXAgbWVuZ2dhbnRpICVzICVzIChkZW5nYW4gJXMpIC4uLiBcbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiVW5wYWNraW5nICVzIChmcm9tICVzKSAuLi5cbiIKK21zZ3N0ciAiU2VkYW5nIG1lbWJ1a2EgcGFrZXQgJXMgKGRhcmkgJXMpIC4uLiBcbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAibmFtZSBvZiBjb25mZmlsZSAoc3RhcnRpbmcgYCUuMjUwcycpIGlzIHRvbyBsb25nICg+JWQgY2hhcmFjdGVycykiCittc2dzdHIgIiIKKyJuYW1hIGJlcmthcyBrb25maWcgKGRpbXVsYWkgZGVuZ2FuICclLjI1MHMnKSB0ZXJsYWx1IHBhbmphbmcgKD4lZCBha3NhcmEpIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjYzMyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA3MQorIywgYy1mb3JtYXQKK21zZ2lkICJyZWFkIGVycm9yIGluICUuMjUwcyIKK21zZ3N0ciAiQWRhIGtlc2FsYWhhbiBzYWF0IG1lbWJhY2EgJS4yNTBzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjYzNQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nICUuMjUwcyIKK21zZ3N0ciAiQWRhIGtlc2FsYWhhbiBzYWF0IG1lbnV0dXAgJS4yNTBzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjYzNworIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciB0cnlpbmcgdG8gb3BlbiAlLjI1MHMiCittc2dzdHIgIkFkYSBrZXNhbGFoYW4gc2FhdCBtZW1idWthICUuMjUwcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGUtY29uZmlndXJpbmcgJXMsIHRvIGFsbG93IHJlbW92YWwgb2YgJXMgLi4uXG4iCittc2dzdHIgIlNlZGFuZyBkZWtvbmZpZ3VyYXNpICVzLCBhZ2FyIGRhcGF0IG1lbWJ1YW5nICVzIC4uLiBcbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGUtY29uZmlndXJpbmcgJXMgLi4uXG4iCittc2dzdHIgIlNlZGFuZyBkZWtvbmZpZ3VyYXNpICVzIC4uLiBcbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo3NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiVW5wYWNraW5nIHJlcGxhY2VtZW50ICUuMjUwcyAuLi5cbiIKK21zZ3N0ciAiU2VkYW5nIG1lbWJ1a2EgcGVuZ2dhbnRpICUuMjUwcyAuLi4gXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6ODQwCisjLCBmdXp6eQorI3wgbXNnaWQgImRwa2ctZGViIGZpZWxkIGV4dHJhY3Rpb24iCittc2dpZCAicGFja2FnZSBmaWxlc3lzdGVtIGFyY2hpdmUgZXh0cmFjdGlvbiIKK21zZ3N0ciAiZHBrZy1kZWIgcGVuZ3VyYWlhbiBydWFzIGlzaWFuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjg1NAorbXNnaWQgImVycm9yIHJlYWRpbmcgZHBrZy1kZWIgdGFyIG91dHB1dCIKK21zZ3N0ciAiYWRhIGtlc2FsYWhhbiBzYWF0IG1lbWJhY2Ega2VsdWFyYW4gdGFyIGRwa2ctZGViIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjg1NgorbXNnaWQgImNvcnJ1cHRlZCBmaWxlc3lzdGVtIHRhcmZpbGUgLSBjb3JydXB0ZWQgcGFja2FnZSBhcmNoaXZlIgorbXNnc3RyICJiZXJrYXMgdGFyIGRhcmkgc2lzdGVtIGJlcmthcyB0ZXJrb3J1cHNpIC0gYXJzaXAgcGFrZXQgdGVya29ydXBzaSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NTkKK21zZ2lkICJkcGtnLWRlYjogemFwIHBvc3NpYmxlIHRyYWlsaW5nIHplcm9zIgorbXNnc3RyICJkcGtnLWRlYjoga2VtdW5na2luYW4gJ3phcCcgYmVyYWtoaXJhbiBiYW55YWsgbm9sIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjkxOQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgc3RhdCBvbGQgZmlsZSAnJS4yNTBzJyBzbyBub3QgZGVsZXRpbmcgaXQ6ICVzIgorbXNnc3RyICJnYWdhbCBtZW5hdGEgc3RhdHVzIGJlcmthcyAnJS4yNTBzJyB5YW5nIGxhbWEsIGphZGkgdGlkYWsgZGlidWFuZzogJXMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTI1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkZWxldGUgb2xkIGRpcmVjdG9yeSAnJS4yNTBzJzogJXMiCittc2dzdHIgImdhZ2FsIG1lbmdoYXB1cyBkaXJla3RvcmkgbGFtYSAnJS4yNTBzJzogJXMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTI4CisjLCBjLWZvcm1hdAorbXNnaWQgIm9sZCBjb25mZmlsZSAnJS4yNTBzJyB3YXMgYW4gZW1wdHkgZGlyZWN0b3J5IChhbmQgaGFzIG5vdyBiZWVuIGRlbGV0ZWQpIgorbXNnc3RyICIiCisiYmVya2FzIGtvbmZpZyAnJS4yNTBzJyBsYW1hIGJlcnVwYSBkaXJla3Rvcmkga29zb25nIChkYW4gc2VrYXJhbmcgc3VkYWggIgorImRpaGFwdXMpIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjk3NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBvdGhlciBuZXcgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiZ2FnYWwgbWVuYXRhIHN0YXR1cyBiZXJrYXMgYmFydSBsYWlubnlhICclLjI1MHMnIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjk4NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisib2xkIGZpbGUgJyUuMjUwcycgaXMgdGhlIHNhbWUgYXMgc2V2ZXJhbCBuZXcgZmlsZXMhIChib3RoICclLjI1MHMnIGFuZCAiCisiJyUuMjUwcycpIgorbXNnc3RyICIiCisiYmVya2FzICclLjI1MHMnIGxhbWEgc2FtYSBkZW5nYW4gYmViZXJhcGEgYmVya2FzIGJhcnUhIChrZWR1YW55YSAnJS4yNTBzJyAiCisiZGFuICclLjI1MHMnKSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxMDI1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWN1cmVseSByZW1vdmUgb2xkIGZpbGUgJyUuMjUwcyc6ICVzIgorbXNnc3RyICJnYWdhbCBzZWNhcmEgaGF0aS1oYXRpIG1lbmdoYXB1cyBiZXJrYXMgbGFtYSAnJS4yNTBzJzogJXMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTIwNgorIywgYy1mb3JtYXQKK21zZ2lkICIoTm90aW5nIGRpc2FwcGVhcmFuY2Ugb2YgJXMsIHdoaWNoIGhhcyBiZWVuIGNvbXBsZXRlbHkgcmVwbGFjZWQuKVxuIgorbXNnc3RyICIoTWVuY2F0YXQgbGVueWFwbnlhICVzLCB5YW5nIHRlbGFoIGRpZ2FudGkgc2V1dHVobnlhLikgXG4iCisKKyMuIFRSQU5TTEFUT1JTOiBUaGlzIGlzIHRoZSBoZWFkZXIgdGhhdCBhcHBlYXJzIG9uICdkcGtnLXF1ZXJ5IC1sJy4gVGhlCisjLiAqIHN0cmluZyBzaG91bGQgcmVtYWluIHVuZGVyIDgwIGNoYXJhY3RlcnMuIFRoZSB1cHBlcmNhc2UgbGV0dGVycyBpbgorIy4gKiB0aGUgc3RhdGUgdmFsdWVzIGRlbm90ZSB0aGUgYWJicmV2aWF0ZWQgbGV0dGVyIHRoYXQgd2lsbCBhcHBlYXIgb24KKyMuICogdGhlIGZpcnN0IHRocmVlIGNvbHVtbnMsIHdoaWNoIHNob3VsZCBpZGVhbGx5IG1hdGNoIHRoZSBFbmdsaXNoIG9uZQorIy4gKiAoZS5nLiBSZW1vdmUg4oaSIHN1cFJpbWVpeCksIHNlZSBkcGtnLXF1ZXJ5KDEpIGZvciBmdXJ0aGVyIGRldGFpbHMuIFRoZQorIy4gKiB0cmFuc2xhdGVkIG1lc3NhZ2UgY2FuIHVzZSBhZGRpdGlvbmFsIGxpbmVzIGlmIG5lZWRlZC4KKyM6IHNyYy9xdWVyeWNtZC5jOjE0OQorbXNnaWQgIiIKKyJEZXNpcmVkPVVua25vd24vSW5zdGFsbC9SZW1vdmUvUHVyZ2UvSG9sZFxuIgorInwgU3RhdHVzPU5vdC9JbnN0L0NvbmYtZmlsZXMvVW5wYWNrZWQvaGFsRi1jb25mL0hhbGYtaW5zdC90cmlnLWFXYWl0L1RyaWctIgorInBlbmRcbiIKKyJ8LyBFcnI/PShub25lKS9SZWluc3QtcmVxdWlyZWQgKFN0YXR1cyxFcnI6IHVwcGVyY2FzZT1iYWQpXG4iCittc2dzdHIgIiIKKyJIYXJhcGFuPXRhay1kaUtlbmFsL1Bhc2FuZy9CdWFuZy9NdXNuYWhrYW4vQ2VrYWxcbiIKKyJ8IFN0YXR1cz10RGsvUHNuZy9icmtzLUtvbmZnL2RpQnVrYS9rb25mZy1HYWdhbC9TdGdhaC1wc25nL3RuZ3UtcG1pY1UvdHVuZGEtIgorInBtaUN1XG4iCisifC8gR2FsYXQ/PSh0aWFkYSkvSHJzLXBzZy1sYWdpIChTdGF0dXMsR2FsYXQ6IGh1cnVmLWJlc2FyPWJ1cnVrKVxuIgorCisjOiBzcmMvcXVlcnljbWQuYzoxNTMKK21zZ2lkICJOYW1lIgorbXNnc3RyICJOYW1hIgorCisjOiBzcmMvcXVlcnljbWQuYzoxNTMKK21zZ2lkICJWZXJzaW9uIgorbXNnc3RyICJWZXJzaSIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MTU0Cittc2dpZCAiRGVzY3JpcHRpb24iCittc2dzdHIgIktldGVyYW5nYW4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI0NiBzcmMvcXVlcnljbWQuYzo1MTEgc3JjL3NlbGVjdC5jOjc1CisjLCBjLWZvcm1hdAorbXNnaWQgIk5vIHBhY2thZ2VzIGZvdW5kIG1hdGNoaW5nICVzLlxuIgorbXNnc3RyICJUaWRhayBhZGEgcGFrZXQgeWFuZyBjb2NvayBkZW5nYW4gJXMuIFxuIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJzaW9uIGJ5ICVzIGZyb206ICVzXG4iCittc2dzdHIgIkRpYWxpaGthbiBvbGVoICVzIGRhcmk6ICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI3NQorIywgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnNpb24gYnkgJXMgdG86ICVzXG4iCittc2dzdHIgIkRpYWxpaGthbiBvbGVoICVzIGtlOiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9jYWwgZGl2ZXJzaW9uIGZyb206ICVzXG4iCittc2dzdHIgIlBlbmdhbGloYW4gbG9rYWwgZGFyaTogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6Mjc5CisjLCBjLWZvcm1hdAorbXNnaWQgImxvY2FsIGRpdmVyc2lvbiB0bzogJXNcbiIKK21zZ3N0ciAiZGlhbGloa2FuIHNlY2FyYSBsb2thbCBrZTogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MzA5Cittc2dpZCAiLS1zZWFyY2ggbmVlZHMgYXQgbGVhc3Qgb25lIGZpbGUgbmFtZSBwYXR0ZXJuIGFyZ3VtZW50IgorbXNnc3RyICItLXNlYXJjaCBidXR1aCBzZXRpZGFrbnlhIHNhdHUgYXJndW1lbiBwb2xhIG5hbWEgYmVya2FzIgorCisjOiBzcmMvcXVlcnljbWQuYzozNTAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIk5vIHBhY2thZ2VzIGZvdW5kIG1hdGNoaW5nICVzLlxuIgorbXNnaWQgIiVzOiBubyBwYXRoIGZvdW5kIG1hdGNoaW5nIHBhdHRlcm4gJXMuXG4iCittc2dzdHIgIlRpZGFrIGFkYSBwYWtldCB5YW5nIGNvY29rIGRlbmdhbiAlcy4gXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjM5MworIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlIGAlcycgaXMgbm90IGluc3RhbGxlZCBhbmQgbm8gaW5mbyBpcyBhdmFpbGFibGUuXG4iCittc2dzdHIgIlBha2V0ICclcycgdGlkYWsgdGVycGFzYW5nIGRhbiB0aWRhayBhZGEgaW5mbyB5YW5nIHRlcnNlZGlhLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSBgJXMnIGlzIG5vdCBhdmFpbGFibGUuXG4iCittc2dzdHIgIlBha2V0ICclcycgdGlkYWsgdGVyc2VkaWEuIFxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MTAgc3JjL3F1ZXJ5Y21kLmM6NTg1CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgYCVzJyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICJQYWtldCAnJXMnIHRpZGFrIHRlcnBhc2FuZy4gXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQxOAorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlIGAlcycgZG9lcyBub3QgY29udGFpbiBhbnkgZmlsZXMgKCEpXG4iCittc2dzdHIgIlBha2V0ICclcycgdGlkYWsgYmVyaXNpIHN1YXR1IGJlcmthcyBwdW4hXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQyNQorIywgYy1mb3JtYXQKK21zZ2lkICJsb2NhbGx5IGRpdmVydGVkIHRvOiAlc1xuIgorbXNnc3RyICJkaWFsaWhrYW4gc2VjYXJhIGxva2FsIGtlOiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBkaXZlcnRzIG90aGVycyB0bzogJXNcbiIKK21zZ3N0ciAicGFrZXQgbWVuZ2FsaWhrYW4gcGFrZXQgbGFpbiBrZTogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDMxCisjLCBjLWZvcm1hdAorbXNnaWQgImRpdmVydGVkIGJ5ICVzIHRvOiAlc1xuIgorbXNnc3RyICJEaWFsaWhrYW4gb2xlaCAlcyBrZTogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDUyCittc2dpZCAiIgorIlVzZSBkcGtnIC0taW5mbyAoPSBkcGtnLWRlYiAtLWluZm8pIHRvIGV4YW1pbmUgYXJjaGl2ZSBmaWxlcyxcbiIKKyJhbmQgZHBrZyAtLWNvbnRlbnRzICg9IGRwa2ctZGViIC0tY29udGVudHMpIHRvIGxpc3QgdGhlaXIgY29udGVudHMuXG4iCittc2dzdHIgIiIKKyJHdW5ha2FuIGRwa2cgLS1pbmZvICg9IGRwa2ctZGViIC0taW5mbykgdW50dWsgbWVuZWxpdGkgYmVya2FzIGFyc2lwLFxuIgorImRhbiBkcGtnIC0tY29udGVudHMgKD1kcGtnLWRlYiAtLWNvbnRlbnRzKSB1bnR1ayBtZWxpaGF0IGlzaW55YS5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NTcwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgYXQgbW9zdCB0d28gYXJndW1lbnRzIgorbXNnc3RyICItLSVzIGJ1dHVoIHBhbGluZyBiYW55YWsgZHVhIGFyZ3VtZW4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjU3OAorIywgYy1mb3JtYXQKK21zZ2lkICJjb250cm9sIGZpbGUgY29udGFpbnMgJWMiCittc2dzdHIgImJlcmthcyBjb250cm9sIGJlcmlzaSAlYyIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjAwCisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiAlcyBwYWNrYWdlIG1hbmFnZW1lbnQgcHJvZ3JhbSBxdWVyeSB0b29sIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIlBlcmtha2FzIHBlbmNhcmlhbiBwcm9ncmFtIHBlbmdlbG9sYSBwYWtldCBEZWJpYW4gJXMgdmVyc2kgJXMuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjYxOQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIkNvbW1hbmRzOlxuIgorI3wgIiAgLXN8LS1zdGF0dXMgPHBhY2thZ2U+IC4uLiAgICAgICAgRGlzcGxheSBwYWNrYWdlIHN0YXR1cyBkZXRhaWxzLlxuIgorI3wgIiAgLXB8LS1wcmludC1hdmFpbCA8cGFja2FnZT4gLi4uICAgRGlzcGxheSBhdmFpbGFibGUgdmVyc2lvbiBkZXRhaWxzLlxuIgorI3wgIiAgLUx8LS1saXN0ZmlsZXMgPHBhY2thZ2U+IC4uLiAgICAgTGlzdCBmaWxlcyBgb3duZWQnIGJ5IHBhY2thZ2UocykuXG4iCisjfCAiICAtbHwtLWxpc3QgWzxwYXR0ZXJuPiAuLi5dICAgICAgICBMaXN0IHBhY2thZ2VzIGNvbmNpc2VseS5cbiIKKyN8ICIgIC1XfC0tc2hvdyA8cGF0dGVybj4gLi4uICAgICAgICAgIFNob3cgaW5mb3JtYXRpb24gb24gcGFja2FnZShzKS5cbiIKKyN8ICIgIC1TfC0tc2VhcmNoIDxwYXR0ZXJuPiAuLi4gICAgICAgIEZpbmQgcGFja2FnZShzKSBvd25pbmcgZmlsZShzKS5cbiIKKyN8ICIgIC1jfC0tY29udHJvbC1wYXRoIDxwYWNrYWdlPiBbPGZpbGU+XVxuIgorI3wgIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHJpbnQgcGF0aCBmb3IgcGFja2FnZSBjb250cm9sIGZpbGUuXG4iCisjfCAiXG4iCittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLXN8LS1zdGF0dXMgPHBhY2thZ2U+IC4uLiAgICAgICAgRGlzcGxheSBwYWNrYWdlIHN0YXR1cyBkZXRhaWxzLlxuIgorIiAgLXB8LS1wcmludC1hdmFpbCA8cGFja2FnZT4gLi4uICAgRGlzcGxheSBhdmFpbGFibGUgdmVyc2lvbiBkZXRhaWxzLlxuIgorIiAgLUx8LS1saXN0ZmlsZXMgPHBhY2thZ2U+IC4uLiAgICAgTGlzdCBmaWxlcyBgb3duZWQnIGJ5IHBhY2thZ2UocykuXG4iCisiICAtbHwtLWxpc3QgWzxwYXR0ZXJuPiAuLi5dICAgICAgICBMaXN0IHBhY2thZ2VzIGNvbmNpc2VseS5cbiIKKyIgIC1XfC0tc2hvdyBbPHBhdHRlcm4+IC4uLl0gICAgICAgIFNob3cgaW5mb3JtYXRpb24gb24gcGFja2FnZShzKS5cbiIKKyIgIC1TfC0tc2VhcmNoIDxwYXR0ZXJuPiAuLi4gICAgICAgIEZpbmQgcGFja2FnZShzKSBvd25pbmcgZmlsZShzKS5cbiIKKyIgIC1jfC0tY29udHJvbC1wYXRoIDxwYWNrYWdlPiBbPGZpbGU+XVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHJpbnQgcGF0aCBmb3IgcGFja2FnZSBjb250cm9sIGZpbGUuXG4iCisiXG4iCittc2dzdHIgIiIKKyJQZXJpbnRhaDpcbiIKKyIgIC1zfC0tc3RhdHVzIDxuYW1hLXBha2V0PiAuLi4gICAgICAgVGFtcGlsa2FuIHJpbmNpYW4gc3RhdHVzIHBha2V0LlxuIgorIiAgLXB8LS1wcmludC1hdmFpbCA8bmFtYS1wYWtldD4gLi4uICBUYW1waWxrYW4gcmluY2lhbiB2ZXJzaSB5YW5nIHRlcnNlZGlhLlxuIgorIiAgLUx8LS1saXN0ZmlsZXMgPG5hbWEtcGFrZXQ+IC4uLiAgICBUYW1waWxrYW4gZGFmdGFyIGJlcmthcyAnbWlsaWsnIHBha2V0LlxuIgorIiAgLWx8LS1saXN0IFs8cG9sYT4gLi4uXSAgICAgICAgICAgICBUYW1waWxrYW4gZGFmdGFyIHBha2V0IGRlbmdhbiBzaW5na2F0LlxuIgorIiAgLVd8LS1zaG93IDxwb2xhPiAuLi4gICAgICAgICAgICAgICBMaWhhdCBpbmZvcm1hc2kgc3VhdHUgcGFrZXQuXG4iCisiICAtU3wtLXNlYXJjaCA8cG9sYT4gLi4uICAgICAgICAgICAgIENhcmkgcGFrZXQgeWFuZyBiZXJpc2kgYmVya2FzLlxuIgorIiAgLWN8LS1jb250cm9sLXBhdGggPHBha2V0PiBbPGJlcmthcz5dXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExpaGF0IHBhdGggdW50dWsgYmVya2FzIGNvbnRyb2wgcGFrZXQuXG4iCisiXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjYzNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorIiAgLWZ8LS1zaG93Zm9ybWF0PTxmb3JtYXQ+ICAgICAgICAgVXNlIGFsdGVybmF0aXZlIGZvcm1hdCBmb3IgLS1zaG93LlxuIgorIlxuIgorbXNnc3RyICIiCisiUGlsaWhhbjpcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVrdG9yaT4gICAgICAgICBHdW5ha2FuIDxkaXJla3Rvcmk+IGRhcmlwYWRhICVzLlxuIgorIiAgLWZ8LS1zaG93Zm9ybWF0PTxmb3JtYXQ+ICAgICAgIEd1bmFrYW4gZm9ybWF0IGxhaW4gdW50dWsgLS1zaG93LlxuIgorIlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo2NDIgZHBrZy1kZWIvbWFpbi5jOjExMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiRm9ybWF0IHN5bnRheDpcbiIKKyIgIEEgZm9ybWF0IGlzIGEgc3RyaW5nIHRoYXQgd2lsbCBiZSBvdXRwdXQgZm9yIGVhY2ggcGFja2FnZS4gVGhlIGZvcm1hdFxuIgorIiAgY2FuIGluY2x1ZGUgdGhlIHN0YW5kYXJkIGVzY2FwZSBzZXF1ZW5jZXMgXFxuIChuZXdsaW5lKSwgXFxyIChjYXJyaWFnZVxuIgorIiAgcmV0dXJuKSBvciBcXFxcIChwbGFpbiBiYWNrc2xhc2gpLiBQYWNrYWdlIGluZm9ybWF0aW9uIGNhbiBiZSBpbmNsdWRlZFxuIgorIiAgYnkgaW5zZXJ0aW5nIHZhcmlhYmxlIHJlZmVyZW5jZXMgdG8gcGFja2FnZSBmaWVsZHMgdXNpbmcgdGhlICR7dmFyWzsiCisid2lkdGhdfVxuIgorIiAgc3ludGF4LiBGaWVsZHMgd2lsbCBiZSByaWdodC1hbGlnbmVkIHVubGVzcyB0aGUgd2lkdGggaXMgbmVnYXRpdmUgaW4gIgorIndoaWNoXG4iCisiICBjYXNlIGxlZnQgYWxpZ25tZW50IHdpbGwgYmUgdXNlZC5cbiIKK21zZ3N0ciAiIgorIlNpbnRha3MgZm9ybWF0OlxuIgorIiAgU2VidWFoIGZvcm1hdCBhZGFsYWggc3RyaW5nIHlhbmcgbWVuamFkaSBrZWx1YXJhbiBzZXRpYW4gcGFrZXQuIEZvcm1hdFxuIgorIiAgZGFwYXQgYmVyaXNpIHJhbmdrYWlhbiBlc2NhcGUgc3RhbmRhciBcXG4gIChiYXJpcy1iYXJ1KSwgXFxyIChjYXJyaWFnZVxuIgorIiAgcmV0dXJuKSBhdGF1IFxcXFwgKGdhcmluZy1iYWxpayBiaWFzYSkuIEluZm9ybWFzaSBwYWtldCBkYXBhdCBkaXNlcnRha2FuXG4iCisiICBkZW5nYW4gbWVtYXN1a2thbiB2YXJpYWJlbCB5YW5nIG1lbmdhY3UgcGFkYSBydWFzIHBha2V0IGRlbmdhblxuIgorIiAgc2ludGFrcyAke3ZhcjpbO3dpZHRoXX0uIFNlbXVhIGlzaWFuIGFrYW4gZGlyYXRhLWthbmFua2FuIGtlY3VhbGkgbGViYXJcbiIKKyIgIHJ1YXMgaXNpYW4gbmVnYXRpZiwgeWFuZyBiZXJhcnRpIGFrYW4gZGlyYXRhLWtpcmlrYW4uXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjY1NgorbXNnaWQgIlVzZSAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgcXVlcnlpbmcgcGFja2FnZXMuIgorbXNnc3RyICJHdW5ha2FuIC0taGVscCB1bnR1ayBwYW5kdWFuIHRlbnRhbmcgcGVuY2FyaWFuIHBha2V0LiIKKworIzogc3JjL3JlbW92ZS5jOjg4CisjLCBjLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nIHJlcXVlc3QgdG8gcmVtb3ZlICUuMjUwcyB3aGljaCBpc24ndCBpbnN0YWxsZWQuIgorbXNnc3RyICJtZW5nYWJhaWthbiBwZXJtaW50YWFuIHVudHVrIG1lbWJ1YW5nICUuMjUwcyB5YW5nIHRhayB0ZXJwYXNhbmcuIgorCisjOiBzcmMvcmVtb3ZlLmM6OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImlnbm9yaW5nIHJlcXVlc3QgdG8gcmVtb3ZlICUuMjUwcywgb25seSB0aGUgY29uZmlnXG4iCisiIGZpbGVzIG9mIHdoaWNoIGFyZSBvbiB0aGUgc3lzdGVtLiBVc2UgLS1wdXJnZSB0byByZW1vdmUgdGhlbSB0b28uIgorbXNnc3RyICIiCisibWVuZ2FiYWlrYW4gcGVybWludGFhbiB1bnR1ayBtZW1idWFuZyAlLjI1MHMsIGhhbnlhIFxuIgorIiAgYmVya2FzIGtvbmZpZ3VyYXNpIHRlcnNpc2EuIEd1bmFrYW4gLS1wdXJnZSB1bnR1ayBtZW1idWFuZ255YSBwdWxhLiIKKworIzogc3JjL3JlbW92ZS5jOjEwMworbXNnaWQgIlRoaXMgaXMgYW4gZXNzZW50aWFsIHBhY2thZ2UgLSBpdCBzaG91bGQgbm90IGJlIHJlbW92ZWQuIgorbXNnc3RyICJJbmkgYWRhbGFoIHBha2V0IGludGkgLSBqYW5nYW4gZGlidWFuZy4iCisKKyM6IHNyYy9yZW1vdmUuYzoxMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IGRlcGVuZGVuY3kgcHJvYmxlbXMgcHJldmVudCByZW1vdmFsIG9mICVzOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogbWFzYWxhaCBrZXRlcmdhbnR1bmdhbiBtZW5jZWthbCBwZW5naGFwdXNhbiAlczogXG4iCisiICVzIgorCisjOiBzcmMvcmVtb3ZlLmM6MTMwCittc2dpZCAiZGVwZW5kZW5jeSBwcm9ibGVtcyAtIG5vdCByZW1vdmluZyIKK21zZ3N0ciAiYWRhIG1hc2FsYWgga2V0ZXJnYW50dW5nYW4gLSB0aWRhayBkaWJ1YW5nIgorCisjOiBzcmMvcmVtb3ZlLmM6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiAlczogZGVwZW5kZW5jeSBwcm9ibGVtcywgYnV0IHJlbW92aW5nIGFueXdheSBhcyB5b3UgcmVxdWVzdGVkOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogJXM6IGFkYSBtYXNhbGFoIGtldGVyZ2FudHVuZ2FuLCBuYW11biB0ZXRhcCBtZW1idWFuZ255YSBzZXN1YWkgIgorInBlcm1pbnRhYW46IFxuIgorIiVzIgorCisjOiBzcmMvcmVtb3ZlLmM6MTQyCittc2dpZCAiIgorIlBhY2thZ2UgaXMgaW4gYSB2ZXJ5IGJhZCBpbmNvbnNpc3RlbnQgc3RhdGUgLSB5b3Ugc2hvdWxkXG4iCisiIHJlaW5zdGFsbCBpdCBiZWZvcmUgYXR0ZW1wdGluZyBhIHJlbW92YWwuIgorbXNnc3RyICIiCisiUGFrZXQgZGFsYW0ga2VhZGFhbiB0aWRhayBrb25zaXN0ZW4geWFuZyBwYXJhaCAtIFxuIgorIkFuZGEgaGFydXMgbWVtYXNhbmcgdWxhbmcgc2ViZWx1bSBiZXJ1c2FoYSBtZW1idWFuZ255YS4iCisKKyM6IHNyYy9yZW1vdmUuYzoxNDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiV291bGQgcmVtb3ZlIG9yIHB1cmdlICVzIC4uLlxuIgorbXNnc3RyICJBa2FuIG1lbWJ1YW5nIGF0YXUgbWVtdXNuYWhrYW4gJXMgLi4uIFxuIgorCisjOiBzcmMvcmVtb3ZlLmM6MTU3CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlbW92aW5nICVzIC4uLlxuIgorbXNnc3RyICJTZWRhbmcgbWVtYnVhbmcgJXMgLi4uIFxuIgorCisjOiBzcmMvcmVtb3ZlLmM6Mjc1IHNyYy9yZW1vdmUuYzozNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIndoaWxlIHJlbW92aW5nICUuMjUwcywgdW5hYmxlIHRvIHJlbW92ZSBkaXJlY3RvcnkgJyUuMjUwcyc6ICVzIC0gZGlyZWN0b3J5ICIKKyJtYXkgYmUgYSBtb3VudCBwb2ludD8iCittc2dzdHIgIiIKKyJrZXRpa2EgbWVtYnVhbmcgJS4yNTBzLCBnYWdhbCBtZW1idWFuZyBkaXJla3RvcmkgJyUuMjUwcyc6ICVzIC0gZGlyZWt0b3JpICIKKyJtdW5na2luIHN1YXR1IHRpdGlrIGthaXQ/IgorCisjOiBzcmMvcmVtb3ZlLmM6Mjg5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWN1cmVseSByZW1vdmUgJyUuMjUwcyciCittc2dzdHIgImdhZ2FsIHNlY2FyYSBoYXRpLWhhdGkgbWVtYnVhbmcgJyUuMjUwcyciCisKKyM6IHNyYy9yZW1vdmUuYzozNjEKKyMsIGMtZm9ybWF0Cittc2dpZCAid2hpbGUgcmVtb3ZpbmcgJS4yNTBzLCBkaXJlY3RvcnkgJyUuMjUwcycgbm90IGVtcHR5IHNvIG5vdCByZW1vdmVkLiIKK21zZ3N0ciAiIgorImtldGlrYSBtZW1idWFuZyAlLjI1MHMsIGRpcmVrdG9yaSAnJS4yNTBzJyB0aWRhayBrb3NvbmcsIGphZGkgdGlkYWsgZGlidWFuZy4iCisKKyM6IHNyYy9yZW1vdmUuYzozODMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImNhbm5vdCByZW1vdmUgYCUuMjUwcyciCittc2dpZCAiY2Fubm90IHJlbW92ZSAnJS4yNTBzJyIKK21zZ3N0ciAidGlkYWsgZGFwYXQgbWVtYnVhbmcgJyUuMjUwcyciCisKKyM6IHNyYy9yZW1vdmUuYzo0MDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHVyZ2luZyBjb25maWd1cmF0aW9uIGZpbGVzIGZvciAlcyAuLi5cbiIKK21zZ3N0ciAiU2VkYW5nIG1lbXVzbmFoa2FuIGJlcmthcyBrb25maWd1cmFzaSB1bnR1ayAlcyAuLi4gXG4iCisKKyM6IHNyYy9yZW1vdmUuYzo0NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlbW92ZSBvbGQgY29uZmlnIGZpbGUgYCUuMjUwcycgKD0gYCUuMjUwcycpIgorbXNnc3RyICJnYWdhbCBtZW1idWFuZyBiZXJrYXMga29uZmlndXJhc2kgbGFtYSAnJS4yNTBzJyg9JyUuMjUwcycpIgorCisjOiBzcmMvcmVtb3ZlLmM6NDc0CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZWFkIGNvbmZpZyBmaWxlIGRpciBgJS4yNTBzJyAoZnJvbSBgJS4yNTBzJykiCittc2dzdHIgImdhZ2FsIG1lbWJhY2EgZGlyIGJlcmthcyBrb25maWd1cmFzaSAnJS4yNTBzJyAoZGFyaSAnJS4yNTBzJykiCisKKyM6IHNyYy9yZW1vdmUuYzo1MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlbW92ZSBvbGQgYmFja3VwIGNvbmZpZyBmaWxlIGAlLjI1MHMnIChvZiBgJS4yNTBzJykiCittc2dzdHIgIiIKKyJnYWdhbCBtZW1idWFuZyBiZXJrYXMga29uZmlndXJhc2kgY2FkYW5nYW4gbGFtYSAnJS4yNTBzJyAoZGFyaSAnJS4yNTBzJykiCisKKyM6IHNyYy9yZW1vdmUuYzo1NjgKK21zZ2lkICJjYW5ub3QgcmVtb3ZlIG9sZCBmaWxlcyBsaXN0IgorbXNnc3RyICJnYWdhbCBtZW1idWFuZyBkYWZ0YXIgYmVya2FzIGxhbWEiCisKKyM6IHNyYy9yZW1vdmUuYzo1NzQKK21zZ2lkICJjYW4ndCByZW1vdmUgb2xkIHBvc3RybSBzY3JpcHQiCittc2dzdHIgImdhZ2FsIG1lbWJ1YW5nIHNrcmlwICdwb3N0cm0nIGxhbWEiCisKKyM6IHNyYy9zZWxlY3QuYzoxMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgaW4gcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQiCittc2dzdHIgIkVPRiB0YWsgdGVyZHVnYSBkYWxhbSBuYW1hIHBha2V0IHBhZGEgYmFyaXMgJWQiCisKKyM6IHNyYy9zZWxlY3QuYzoxMTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgbGluZSBpbiBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZCIKK21zZ3N0ciAiYWtoaXIgYmFyaXMgdGFrIHRlcmR1Z2EgZGFsYW0gbmFtYSBwYWtldCBwYWRhIGJhcmlzICVkIgorCisjOiBzcmMvc2VsZWN0LmM6MTIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW9mIGFmdGVyIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICJlb2YgdGFrIHRlcmR1Z2Egc2V0ZWxhaCBuYW1hIHBha2V0IHBhZGEgYmFyaXMgJWQiCisKKyM6IHNyYy9zZWxlY3QuYzoxMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgbGluZSBhZnRlciBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZCIKK21zZ3N0ciAiYWtoaXIgYmFyaXMgdGFrIHRlcmR1Z2Egc2V0ZWxhaCBuYW1hIHBha2V0IHBhZGEgYmFyaXMgJWQiCisKKyM6IHNyYy9zZWxlY3QuYzoxMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBkYXRhIGFmdGVyIHBhY2thZ2UgYW5kIHNlbGVjdGlvbiBhdCBsaW5lICVkIgorbXNnc3RyICJkYXRhIHRhayB0ZXJkdWdhIHNldGVsYWggbmFtYSBwYWtldCBkYW4gcGVtaWxpaGFuIHBhZGEgYmFyaXMgJWQiCisKKyM6IHNyYy9zZWxlY3QuYzoxMzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWxsZWdhbCBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZDogJS4yNTBzIgorbXNnc3RyICJuYW1hIHBha2V0IHRpZGFrIHNhaCBwYWRhIGJhcmlzICVkOiAlLjI1MHMiCisKKyM6IHNyYy9zZWxlY3QuYzoxNDMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biB3YW50ZWQgc3RhdHVzIGF0IGxpbmUgJWQ6ICUuMjUwcyIKK21zZ3N0ciAic3RhdHVzIHlhbmcgZGlpbmdpbmthbiB0YWsgZGlrZW5hbCBwYWRhIGJhcmlzICVkOiAlLjI1MHMiCisKKyM6IHNyYy9zZWxlY3QuYzoxNDkKK21zZ2lkICJyZWFkIGVycm9yIG9uIHN0YW5kYXJkIGlucHV0IgorbXNnc3RyICJhZGEga2VzYWxhaGFuIG1lbWJhY2EgbWFzdWthbiBzdGFuZGFyIChzdGRpbikiCisKKyM6IHNyYy9zdGF0Y21kLmM6NTIKKyMsIGZ1enp5CisjfCBtc2dpZCAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBxdWVyeWluZyBwYWNrYWdlcy4iCittc2dpZCAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBvdmVycmlkaW5nIGZpbGUgc3RhdCBpbmZvcm1hdGlvbi4iCittc2dzdHIgIkd1bmFrYW4gLS1oZWxwIHVudHVrIHBhbmR1YW4gdGVudGFuZyBwZW5jYXJpYW4gcGFrZXQuIgorCisjOiBzcmMvc3RhdGNtZC5jOjYxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsIDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDYtMjAwOSBHdWlsbGVtIEpvdmVyLlxuIgorbXNnc3RyICIiCisiSGFrIENpcHRhIChDKSAyMDAwLCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiSGFrIENpcHRhIChDKSAyMDA2LTIwMDkgR3VpbGxlbSBKb3Zlci5cbiIKKworIzogc3JjL3N0YXRjbWQuYzo4MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtLWFkZCA8b3duZXI+IDxncm91cD4gPG1vZGU+IDxmaWxlPlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGFkZCBhIG5ldyBlbnRyeSBpbnRvIHRoZSBkYXRhYmFzZS5cbiIKKyIgIC0tcmVtb3ZlIDxmaWxlPiAgICAgICAgICByZW1vdmUgZmlsZSBmcm9tIHRoZSBkYXRhYmFzZS5cbiIKKyIgIC0tbGlzdCBbPGdsb2ItcGF0dGVybj5dICBsaXN0IGN1cnJlbnQgb3ZlcnJpZGVzIGluIHRoZSBkYXRhYmFzZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIlBlcmludGFoOlxuIgorIiAgLS1hZGQgPHBlbWlsaWs+IDxncnVwPiA8bW9kdXM+IDxiZXJrYXM+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRhbWJhaGthbiBpc2lhbiBiYXJ1IGtlIGJhc2lzZGF0YS5cbiIKKyIgIC0tcmVtb3ZlIDxiZXJrYXM+ICAgICAgICAgaGFwdXMgYmVya2FzIGRhcmkgYmFzaXNkYXRhLlxuIgorIiAgLS1saXN0IFs8cG9sYS1nbG9iYWw+XSAgICBsaWhhdCBzdGF0dXMgJ292ZXJyaWRlcycgZGkgYmFzaXNkYXRhLlxuIgorIlxuIgorCisjOiBzcmMvc3RhdGNtZC5jOjg5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIHNldCB0aGUgZGlyZWN0b3J5IHdpdGggdGhlIHN0YXRvdmVycmlkZSBmaWxlLlxuIgorIiAgLS11cGRhdGUgICAgICAgICAgICAgICAgIGltbWVkaWF0ZWx5IHVwZGF0ZSBmaWxlIHBlcm1pc3Npb25zLlxuIgorIiAgLS1mb3JjZSAgICAgICAgICAgICAgICAgIGZvcmNlIGFuIGFjdGlvbiBldmVuIGlmIGEgc2FuaXR5IGNoZWNrIGZhaWxzLlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHF1aWV0IG9wZXJhdGlvbiwgbWluaW1hbCBvdXRwdXQuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorbXNnc3RyICIiCisiUGlsaWhhbjpcbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVrdG9yaT4gICBidWF0IGRpcmVrdG9yaSBkZW5nYW4gYmVya2FzICdzdGF0b3ZlcnJpZGUnLlxuIgorIiAgLS11cGRhdGUgICAgICAgICAgICAgICAgIHNlZ2FyYSBtdXRha2hpcmthbiBwZXJpemluYW4gYmVya2FzLlxuIgorIiAgLS1mb3JjZSAgICAgICAgICAgICAgICAgIHBha3Nha2FuIHN1YXR1IHRpbmRha2FuIGFwYXB1biB5YW5nIHRlcmphZGkuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgb3BlcmFzaSBzZW55YXAsIGtlbHVhcmFuIG1pbmltYWwuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgbGloYXQgcGVzYW4gYmFudHVhbiBpbmkuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgbGloYXQgdmVyc2kuXG4iCisiXG4iCisKKyM6IHNyYy9zdGF0Y21kLmM6MTE2Cittc2dpZCAic3RyaXBwaW5nIHRyYWlsaW5nIC8iCittc2dzdHIgImxlbnlhcGthbiAvIHBlbnV0dXAiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjA3Cittc2dpZCAiY2Fubm90IG9wZW4gbmV3IHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJnYWdhbCBtZW1idWthIGJlcmthcyAnc3RhdG92ZXJyaWRlJyB5YW5nIGJhcnUiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjIyCittc2dpZCAiZXJyb3IgcmVtb3Zpbmcgc3RhdG92ZXJyaWRlLW9sZCIKK21zZ3N0ciAiQWRhIGdhbGF0IHNhYXQgbWVuZ2hhcHVzIGJlcmthcyAnc3RhdG92ZXJyaWRlLW9sZCciCisKKyM6IHNyYy9zdGF0Y21kLmM6MjI0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgbmV3IHN0YXRvdmVycmlkZS1vbGQiCittc2dzdHIgIkFkYSBnYWxhdCBzYWF0IG1lbWJ1YXQgYmVya2FzICdzdGF0b3ZlcnJpZGUtb2xkJyIKKworIzogc3JjL3N0YXRjbWQuYzoyMjYKK21zZ2lkICJlcnJvciBpbnN0YWxsaW5nIG5ldyBzdGF0b3ZlcnJpZGUiCittc2dzdHIgIkFkYSBnYWxhdCBzYWF0IG1lbWJ1YXQgYmVya2FzICdzdGF0b3ZlcnJpZGUnIHlhbmcgYmFydSIKKworIzogc3JjL3N0YXRjbWQuYzoyNDYKK21zZ2lkICItLWFkZCBuZWVkcyBmb3VyIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS1hZGQgYnV0dWggZW1wYXQgYXJndW1lbiIKKworIzogc3JjL3N0YXRjbWQuYzoyNTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkFuIG92ZXJyaWRlIGZvciAnJXMnIGFscmVhZHkgZXhpc3RzLCBidXQgLS1mb3JjZSBzcGVjaWZpZWQgc28gd2lsbCBiZSAiCisiaWdub3JlZC4iCittc2dzdHIgIiIKKyJTZWJ1YWggYmVya2FzICdvdmVycmlkZScgJyVzJyBzdWRhaCBhZGEsIHRldGFwaSAtLWZvcmNlIGRpcGFrYWkuIEphZGksICIKKyJsYW5qdXQgdGVydXMuIgorCisjOiBzcmMvc3RhdGNtZC5jOjI2MAorIywgYy1mb3JtYXQKK21zZ2lkICJBbiBvdmVycmlkZSBmb3IgJyVzJyBhbHJlYWR5IGV4aXN0cywgYWJvcnRpbmcuIgorbXNnc3RyICJTZWJ1YWggYmVya2FzICdvdmVycmlkZScgJyVzJyB0ZWxhaCBhZGEuIERpYmF0YWxrYW4uIgorCisjOiBzcmMvc3RhdGNtZC5jOjI3MgorIywgYy1mb3JtYXQKK21zZ2lkICItLXVwZGF0ZSBnaXZlbiBidXQgJXMgZG9lcyBub3QgZXhpc3QiCittc2dzdHIgIi0tdXBkYXRlIGRpc2VydGFrYW4sIHRldGFwaSAlcyB0aWRhayBhZGEiCisKKyM6IHNyYy9zdGF0Y21kLmM6Mjk2Cittc2dpZCAiTm8gb3ZlcnJpZGUgcHJlc2VudC4iCittc2dzdHIgIlRpZGFrIGFkYSBiZXJrYXMgJ292ZXJyaWRlJy4iCisKKyM6IHNyYy9zdGF0Y21kLmM6MzA0Cittc2dpZCAiLS11cGRhdGUgaXMgdXNlbGVzcyBmb3IgLS1yZW1vdmUiCittc2dzdHIgIi0tdXBkYXRlIHRpZGFrIGJlcmd1bmEgYmVyc2FtYSAtLXJlbW92ZSIKKworIzogc3JjL3N0YXRkYi5jOjU5Cittc2dpZCAic3ludGF4IGVycm9yOiBpbnZhbGlkIHVpZCBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAic2FsYWggc2ludGFrczogdWlkIHRpZGFrIHNhaCBkYWxhbSBiZXJrYXMgJ3N0YXRvdmVycmlkZSciCisKKyM6IHNyYy9zdGF0ZGIuYzo2NAorIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3I6IHVua25vd24gdXNlciAnJXMnIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJnYWxhdCBzaW50YWtzOiBwZW5nZ3VuYSAnJXMnIHRpZGFrIGRpa2VuYWwgZGFsYW0gYmVya2FzICdzdGF0b3ZlcnJpZGUnIgorCisjOiBzcmMvc3RhdGRiLmM6ODMKK21zZ2lkICJzeW50YXggZXJyb3I6IGludmFsaWQgZ2lkIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJzYWxhaCBzaW50YWtzOiBnaWQgdGlkYWsgc2FoIGRhbGFtIGJlcmthcyAnc3RhdG92ZXJyaWRlJyIKKworIzogc3JjL3N0YXRkYi5jOjg4CisjLCBjLWZvcm1hdAorbXNnaWQgInN5bnRheCBlcnJvcjogdW5rbm93biBncm91cCAnJXMnIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJzYWxhaCBzaW50YWtzOiBncnVwICclcycgdGlkYWsgZGlrZW5hbCBkYWxhbSBiZXJrYXMgJ3N0YXRvdmVycmlkZSciCisKKyM6IHNyYy9zdGF0ZGIuYzoxMDQKK21zZ2lkICJzeW50YXggZXJyb3I6IGludmFsaWQgbW9kZSBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAic2FsYWggc2ludGFrczogbW9kdXMgdGlkYWsgc2FoIGRhbGFtIGJlcmthcyAnc3RhdG92ZXJyaWRlJyIKKworIzogc3JjL3N0YXRkYi5jOjEyNworbXNnaWQgImZhaWxlZCB0byBvcGVuIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJnYWdhbCBtZW1idWthIGJlcmthcyAnc3RhdG92ZXJyaWRlJyIKKworIzogc3JjL3N0YXRkYi5jOjEzNAorbXNnaWQgImZhaWxlZCB0byBmc3RhdCBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiR2FnYWwgbWVuamFsYW5rYW4gJ2ZzdGF0JyBwYWRhIGJlcmthcyAnc3RhdG92ZXJyaWRlJyIKKworIzogc3JjL3N0YXRkYi5jOjEzNworbXNnaWQgImZhaWxlZCB0byBmc3RhdCBwcmV2aW91cyBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiZ2FnYWwgbWVsYWt1a2FuICdmc3RhdCcgcGFkYSBiZXJrYXMgJ3N0YXRwdmVycmlkZScgc2ViZWx1bW55YSIKKworIzogc3JjL3N0YXRkYi5jOjE2MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic3RhdG92ZXJyaWRlIGZpbGUgYCUuMjUwcyciCittc2dpZCAicmVhZGluZyBzdGF0b3ZlcnJpZGUgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAiYmVya2FzICdzdGF0b3ZlcnJpZGUnICclLjI1MHMnIgorCisjOiBzcmMvc3RhdGRiLmM6MTY5Cittc2dpZCAic3RhdG92ZXJyaWRlIGZpbGUgaXMgbWlzc2luZyBmaW5hbCBuZXdsaW5lIgorbXNnc3RyICJiZXJrYXMgJ3N0YXRvdmVycmlkZScgdGlkYWsgYWRhIGJhcmlzLWJhcnUgcGVudXR1cCIKKworIzogc3JjL3N0YXRkYi5jOjE3MworbXNnaWQgInN0YXRvdmVycmlkZSBmaWxlIGNvbnRhaW5zIGVtcHR5IGxpbmUiCittc2dzdHIgImJlcmthcyAnc3RhdG92ZXJyaWRlJyBiZXJpc2kgYmFyaXMga29zb25nIgorCisjOiBzcmMvc3RhdGRiLmM6MTc4IHNyYy9zdGF0ZGIuYzoxOTAgc3JjL3N0YXRkYi5jOjIwMgorbXNnaWQgInN5bnRheCBlcnJvciBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAic2FsYWggc2ludGFrcyBkYWxhbSBiZXJrYXMgJ3N0YXRvdmVycmlkZSciCisKKyM6IHNyYy9zdGF0ZGIuYzoxODYgc3JjL3N0YXRkYi5jOjE5OCBzcmMvc3RhdGRiLmM6MjEwCittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgbGluZSBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiYWtoaXIgYmFyaXMgdGFrIHRlcmR1Z2EgZGFsYW0gYmVya2FzICdzdGF0b3ZlcnJpZGUnIgorCisjOiBzcmMvc3RhdGRiLmM6MjE0CisjLCBjLWZvcm1hdAorbXNnaWQgIm11bHRpcGxlIHN0YXR1c292ZXJyaWRlcyBwcmVzZW50IGZvciBmaWxlICclLjI1MHMnIgorbXNnc3RyICJiYW55YWsgYmVya2FzICdzdGF0b3ZlcnJpZGUnIHRlcmRhZnRhciB1bnR1ayBiZXJrYXMgJyUuMjUwcyciCisKKyM6IHNyYy90cmlnY21kLmM6NDYKK21zZ2lkICJUeXBlIGRwa2ctdHJpZ2dlciAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgdGhpcyB1dGlsaXR5LiIKK21zZ3N0ciAiS2V0aWsgJ2Rwa2ctdHJpZ2dlciAtLWhlbHAnIHVudHVrIHBhbmR1YW4gdGVudGFuZyBwZXJrYWthcyBpbmkuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjUxCisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiAlcyBwYWNrYWdlIHRyaWdnZXIgdXRpbGl0eSB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICIgUGVya2FrYXMgcGVtaWN1IHBha2V0IERlYmlhbiAlcyB2ZXJzaSAlcy5cbiIKKworIzogc3JjL3RyaWdjbWQuYzo2NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9ucz4gLi4uXSA8dHJpZ2dlci1uYW1lPlxuIgorIiAgICAgICAlcyBbPG9wdGlvbnM+IC4uLl0gPGNvbW1hbmQ+XG4iCisiXG4iCittc2dzdHIgIiIKKyJHdW5ha2FuOiAlcyBbPHBpbGloYW4+IC4uLl0gPG5hbWEtcGVtaWN1PlxuIgorIiAgICAgICAgICVzIFs8cGlsaWhhbj4gLi4uXSA8cGVyaW50YWg+XG4iCisiXG4iCisKKyM6IHNyYy90cmlnY21kLmM6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLS1jaGVjay1zdXBwb3J0ZWQgICAgICAgICAgICAgICAgQ2hlY2sgaWYgdGhlIHJ1bm5pbmcgZHBrZyBzdXBwb3J0cyAiCisidHJpZ2dlcnMuXG4iCisiXG4iCittc2dzdHIgIiIKKyJQZXJpbnRhaDpcbiIKKyIgICAtLWNoZWNrLXN1cHBvcnRlZCAgICAgICAgICAgICAgICBQYXN0aWthbiBiYWh3YSBkcGtnIG1lbmR1a3VuZyBwZW1pY3UuXG4iCisiXG4iCisKKyM6IHNyYy90cmlnY21kLmM6ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgICAgICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyIgIC0tYnktcGFja2FnZT08cGFja2FnZT4gICAgICAgICAgIE92ZXJyaWRlIHRyaWdnZXIgYXdhaXRlciAobm9ybWFsbHkgc2V0XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ5IGRwa2cpLlxuIgorIiAgLS1uby1hd2FpdCAgICAgICAgICAgICAgICAgICAgICAgTm8gcGFja2FnZSBuZWVkcyB0byBhd2FpdCB0aGUgIgorInByb2Nlc3NpbmcuXG4iCisiICAtLW5vLWFjdCAgICAgICAgICAgICAgICAgICAgICAgICBKdXN0IHRlc3QgLSBkb24ndCBhY3R1YWxseSBjaGFuZ2UgIgorImFueXRoaW5nLlxuIgorIlxuIgorbXNnc3RyICIiCisiUGlsaWhhbjpcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVrdG9yaT4gICAgICBHdW5ha2FuIDxkaXJla3Rvcmk+LCBidWthbiAlcy5cbiIKKyIgIC0tYnktcGFja2FnZT08cGFrZXQ+ICAgICAgICBUaW1wYSBwcm9zZXMgcGVtaWN1IChiaWFzYW55YSBcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpYnVhdCBvbGVoIGRwa2cpLlxuIgorIiAgLS1uby1hd2FpdCAgICAgICAgICAgICAgICAgIFRpZGFrIGFkYSBwYWtldCB5YW5nIHBlcmx1IG1lbnVuZ2d1XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwZW1yb3Nlc2FuIHBlbWljdS5cbiIKKyIgIC0tbm8tYWN0ICAgICAgICAgICAgICAgICAgICBIYW55YSB1amljb2JhIC0gamFuZ2FuIGxha3VrYW4gYXBhcHVuLlxuIgorIlxuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogdHJpZ2dlcnMgZGF0YSBkaXJlY3Rvcnkgbm90IHlldCBjcmVhdGVkXG4iCittc2dzdHIgIiVzOiBkaXJla3RvcmkgZGF0YSBwZW1pY3UgYmVsdW0gZGlidWF0XG4iCisKKyM6IHNyYy90cmlnY21kLmM6MTU2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB0cmlnZ2VyIHJlY29yZHMgbm90IHlldCBpbiBleGlzdGVuY2VcbiIKK21zZ3N0ciAiJXM6IHJla2FtLWRhdGEgcGVtaWN1IGJlbHVtIGFkYVxuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIwNQorbXNnaWQgInRha2VzIG9uZSBhcmd1bWVudCwgdGhlIHRyaWdnZXIgbmFtZSIKK21zZ3N0ciAiYnV0dWggc2F0dSBhcmd1bWVuLCBuYW1hIHBlbWljdSIKKworIzogc3JjL3RyaWdjbWQuYzoyMTAKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgImRwa2ctdHJpZ2dlciBtdXN0IGJlIGNhbGxlZCBmcm9tIGEgbWFpbnRhaW5lciBzY3JpcHQgKG9yIHdpdGggYSAtLWJ5LSIKKyN8ICJwYWNrYWdlIG9wdGlvbikiCittc2dpZCAibXVzdCBiZSBjYWxsZWQgZnJvbSBhIG1haW50YWluZXIgc2NyaXB0IChvciB3aXRoIGEgLS1ieS1wYWNrYWdlIG9wdGlvbikiCittc2dzdHIgIiIKKyJkcGtnLXRyaWdnZXIgaGFydXMgZGlqYWxhbmthbiBkYXJpIHNjcmlwdCBwZW5nZWxvbGEgcGFrZXQgKGF0YXUgZGVuZ2FuICIKKyJwaWxpaGFuIC0tYnktcGFja2FnZSkiCisKKyM6IHNyYy90cmlnY21kLmM6MjE1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJkcGtnLXRyaWdnZXI6IGlsbGVnYWwgYXdhaXRlZCBwYWNrYWdlIG5hbWUgYCUuMjUwcyc6ICUuMjUwcyIKK21zZ2lkICJpbGxlZ2FsIGF3YWl0ZWQgcGFja2FnZSBuYW1lICclLjI1MHMnOiAlLjI1MHMiCittc2dzdHIgImRwa2ctdHJpZ2dlcjogbmFtYSBwYWtldCB0ZXJ0dW5nZ3UgJyUuMjUwcycgdGlkYWsgc2FoOiAlLjI1MHMiCisKKyM6IHNyYy90cmlnY21kLmM6MjIxCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgdHJpZ2dlciBuYW1lIGAlLjI1MHMnOiAlLjI1MHMiCittc2dzdHIgIm5hbWEgcGVtaWN1ICclLjI1MHMnIHRpZGFrIHNhaDogJS4yNTBzIgorCisjOiBzcmMvdHJpZ3Byb2MuYzoyNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBjeWNsZSBmb3VuZCB3aGlsZSBwcm9jZXNzaW5nIHRyaWdnZXJzOlxuIgorIiBjaGFpbiBvZiBwYWNrYWdlcyB3aG9zZSB0cmlnZ2VycyBhcmUgb3IgbWF5IGJlIHJlc3BvbnNpYmxlOlxuIgorbXNnc3RyICIiCisiJXM6IHBlcnVsYW5nYW4gZGl0ZW11a2FuIHNhYXQgbWVtcHJvc2VzIHBlbWljdTpcbiIKKyIgIHNlanVtbGFoIHBha2V0IGRlbmdhbiBwZW1pY3UgeWFuZyBtdW5na2luIHRlcmxpYmF0OlxuIgorCisjOiBzcmMvdHJpZ3Byb2MuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiBwYWNrYWdlcycgcGVuZGluZyB0cmlnZ2VycyB3aGljaCBhcmUgb3IgbWF5IGJlIHVucmVzb2x2YWJsZTpcbiIKK21zZ3N0ciAiIgorIlxuIgorIiAgcGVtaWN1LXBlbWljdSBwYWtldCB5YW5nIHRlcnR1bmRhIHlhbmcgbXVuZ2tpbiB0YWsgdGVycGVjYWhrYW46XG4iCisKKyM6IHNyYy90cmlncHJvYy5jOjI4MQorbXNnaWQgInRyaWdnZXJzIGxvb3BpbmcsIGFiYW5kb25lZCIKK21zZ3N0ciAicGVtaWN1IGJlcnVsYW5nOyBkaWhlbnRpa2FuIHNhamEuIgorCisjOiBzcmMvdHJpZ3Byb2MuYzozMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHJvY2Vzc2luZyB0cmlnZ2VycyBmb3IgJXMgLi4uXG4iCittc2dzdHIgIlNlZGFuZyBtZW1wcm9zZXMgcGVtaWN1IHVudHVrICVzIC4uLiBcbiIKKworIzogc3JjL3VwZGF0ZS5jOjUyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICItLSVzIG5lZWRzIGV4YWN0bHkgb25lIFBhY2thZ2VzIGZpbGUgYXJndW1lbnQiCittc2dpZCAiLS0lcyBuZWVkcyBleGFjdGx5IG9uZSBQYWNrYWdlcy1maWxlIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIGJ1dHVoIHRlcGF0IHNhdHUgYXJndW1lbiBiZXJrYXMgcGFrZXQiCisKKyM6IHNyYy91cGRhdGUuYzo2MgorbXNnaWQgInVuYWJsZSB0byBhY2Nlc3MgZHBrZyBzdGF0dXMgYXJlYSBmb3IgYnVsayBhdmFpbGFibGUgdXBkYXRlIgorbXNnc3RyICIiCisiZ2FnYWwgbWVuZ2Frc2VzIGFyZWEgc3RhdHVzIGRwa2cgdW50dWsgcGVtYmFoYXJ1YW4gbWFzc2FsIHBha2V0IHlhbmcgdGVyc2VkaWEiCisKKyM6IHNyYy91cGRhdGUuYzo2NAorbXNnaWQgImJ1bGsgYXZhaWxhYmxlIHVwZGF0ZSByZXF1aXJlcyB3cml0ZSBhY2Nlc3MgdG8gZHBrZyBzdGF0dXMgYXJlYSIKK21zZ3N0ciAiIgorInBlbWJhaGFydWFuIG1hc3NhbCBwYWtldCB5YW5nIHRlcnNlZGlhIG1lbWVybHVrYW4gYWtzZXMgdHVsaXMga2UgYXJlYSBzdGF0dXMgIgorImRwa2ciCisKKyM6IHNyYy91cGRhdGUuYzo3MQorIywgYy1mb3JtYXQKK21zZ2lkICJSZXBsYWNpbmcgYXZhaWxhYmxlIHBhY2thZ2VzIGluZm8sIHVzaW5nICVzLlxuIgorbXNnc3RyICJTZWRhbmcgbWVuZ2dhbnRpIGluZm8gcGFrZXQgeWFuZyB0ZXJzZWRpYSwgZGVuZ2FuICVzLlxuIgorCisjOiBzcmMvdXBkYXRlLmM6NzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiVXBkYXRpbmcgYXZhaWxhYmxlIHBhY2thZ2VzIGluZm8sIHVzaW5nICVzLlxuIgorbXNnc3RyICJTZWRhbmcgbWVtcGVyYmFoYXJ1aSBpbmZvIHBha2V0IHlhbmcgdGVyc2VkaWEsIGRlbmdhbiAlcy5cbiIKKworIzogc3JjL3VwZGF0ZS5jOjEwMQorIywgYy1mb3JtYXQKK21zZ2lkICJJbmZvcm1hdGlvbiBhYm91dCAlZCBwYWNrYWdlIHdhcyB1cGRhdGVkLlxuIgorbXNnaWRfcGx1cmFsICJJbmZvcm1hdGlvbiBhYm91dCAlZCBwYWNrYWdlcyB3YXMgdXBkYXRlZC5cbiIKK21zZ3N0clswXSAiSW5mb3JtYXNpIHRlbnRhbmcgJWQgcGFrZXQgdGVsYWggZGlwZXJiYWhhcnVpLlxuIgorCisjOiBzcmMvdXBkYXRlLmM6MTE1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJvYnNvbGV0ZSAnLS0lcycgb3B0aW9uLCB1bmF2YWlsYWJsZSBwYWNrYWdlcyBhcmUgYXV0b21hdGljYWxseSBjbGVhbmVkIHVwLiIKK21zZ3N0ciAiIgorIlBpbGloYW4gJyVzJyBzdWRhaCB1c2FuZy4gUGFrZXQtcGFrZXQgeWFuZyB0YWsgdGVyc2VkaWEgb3RvbWF0aXMgZGliZXJzaWhrYW4uIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIG5hbWUgJyUuNTBzLi4uJyBpcyB0b28gbG9uZyIKK21zZ3N0ciAibmFtYSBiZXJrYXMgJyUuNTBzIC4uLicgdGVybGFsdSBwYW5qYW5nIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjEyOQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBmaWxlIG5hbWUgJyUuMjUwcyciCittc2dzdHIgImdhZ2FsIG1lbmF0YSBzdGF0dXMgbmFtYSBiZXJrYXMgJyUuMjUwcyciCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTg5Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgY29udHJvbCBkaXJlY3RvcnkiCittc2dzdHIgImdhZ2FsIG1lbmF0YSBzdGF0dXMgZGlyZWt0b3JpICdjb250cm9sJyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoxOTEKK21zZ2lkICJjb250cm9sIGRpcmVjdG9yeSBpcyBub3QgYSBkaXJlY3RvcnkiCittc2dzdHIgImRpcmVrdG9yaSAnY29udHJvbCcgYnVrYW4gc2VidWFoIGRpcmVrdG9yaSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoxOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29udHJvbCBkaXJlY3RvcnkgaGFzIGJhZCBwZXJtaXNzaW9ucyAlMDNsbyAobXVzdCBiZSA+PTA3NTUgYW5kIDw9MDc3NSkiCittc2dzdHIgIiIKKyJkaXJla3RvcmkgJ2NvbnRyb2wnIG1lbWlsaWtpIGl6aW4geWFuZyBidXJ1azogJTAzbG8gKHNlaGFydXNueWEgPj0gMDc1NSBkYW4gIgorIjw9MDc1NSkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjA0CisjLCBjLWZvcm1hdAorbXNnaWQgIm1haW50YWluZXIgc2NyaXB0IGAlLjUwcycgaXMgbm90IGEgcGxhaW4gZmlsZSBvciBzeW1saW5rIgorbXNnc3RyICJza3JpcCBwZW5nZWxvbGEgcGFrZXQgJyUuMjUwcycgYnVrYW4gYmVya2FzIGJpYXNhIGF0YXUgc3ltbGluayIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyMDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm1haW50YWluZXIgc2NyaXB0IGAlLjUwcycgaGFzIGJhZCBwZXJtaXNzaW9ucyAlMDNsbyAobXVzdCBiZSA+PTA1NTUgYW5kICIKKyI8PTA3NzUpIgorbXNnc3RyICIiCisic2tyaXAgcGVuZ2Vsb2xhIHBha2V0ICclLjUwcycgbWVtaWxpa2kgaXppbiB5YW5nIGJ1cnVrOiAlMDNsbyAoc2VoYXJ1c255YSAiCisiPj0wNTU1IGRhbiA8PTA3NTUpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjIxMQorIywgYy1mb3JtYXQKK21zZ2lkICJtYWludGFpbmVyIHNjcmlwdCBgJS41MHMnIGlzIG5vdCBzdGF0dGFibGUiCittc2dzdHIgInNrcmlwIHBlbmdlbG9sYSBwYWtldCAnJS41MHMnIHRpZGFrIGRhcGF0IGRpYWtzZXMiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjM3Cittc2dpZCAiZXJyb3Igb3BlbmluZyBjb25mZmlsZXMgZmlsZSIKK21zZ3N0ciAiYWRhIGtlc2FsYWhhbiBzYWF0IG1lbWJ1a2EgYmVya2FzICdjb25mZmlsZXMnIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI0NgorbXNnaWQgImVtcHR5IHN0cmluZyBmcm9tIGZnZXRzIHJlYWRpbmcgY29uZmZpbGVzIgorbXNnc3RyICJzdHJpbmcga29zb25nIGRhcmkgZmdldHMgeWFuZyBtZW1iYWNhIGJlcmthcyBrb25maWciCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjUxCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIG5hbWUgJyUuNTBzLi4uJyBpcyB0b28gbG9uZywgb3IgbWlzc2luZyBmaW5hbCBuZXdsaW5lIgorbXNnc3RyICIiCisibmFtYSBiZXJrYXMga29uZmlnICclLjUwcy4uLicgdGVybGFsdSBwYW5qYW5nLCBhdGF1IHRpZGFrIGFkYSBiYXJpcy1iYXJ1bnlhIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI2NAorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBmaWxlbmFtZSAnJXMnIGNvbnRhaW5zIHRyYWlsaW5nIHdoaXRlIHNwYWNlcyIKK21zZ3N0ciAibmFtYSBiZXJrYXMga29uZmlnICclcycgYmVyYWtoaXJhbiBzcGFzaSBrb3NvbmcgIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI2NgorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBgJS4yNTBzJyBkb2VzIG5vdCBhcHBlYXIgaW4gcGFja2FnZSIKK21zZ3N0ciAiYmVya2FzICdjb25mZmlsZScgJyUuMjUwcycgdGlkYWsgYWRhIGRhbGFtIHBha2V0IgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI2OAorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBgJS4yNTBzJyBpcyBub3Qgc3RhdHRhYmxlIgorbXNnc3RyICJiZXJrYXMga29uZmlnICclLjI1MHMnIHRpZGFrIGRhcGF0IGRpYWtzZXMiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjcwCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlICclcycgaXMgbm90IGEgcGxhaW4gZmlsZSIKK21zZ3N0ciAiYmVya2FzIGtvbmZpZyAnJXMnIGJ1a2FuIGJlcmthcyBiaWFzYSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgbmFtZSAnJXMnIGlzIGR1cGxpY2F0ZWQiCittc2dzdHIgImJlcmthcyBrb25maWcgJyVzJyBnYW5kYSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyODcKK21zZ2lkICJlcnJvciByZWFkaW5nIGNvbmZmaWxlcyBmaWxlIgorbXNnc3RyICJhZGEga2VzYWxhaGFuIHNhYXQgbWVtYmFjYSBiZXJrYXMgJ2NvbmZmaWxlcyciCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MzM5Cittc2dpZCAicGFja2FnZSBuYW1lIGhhcyBjaGFyYWN0ZXJzIHRoYXQgYXJlbid0IGxvd2VyY2FzZSBhbHBoYW51bXMgb3IgYC0rLiciCittc2dzdHIgIm5hbWEgcGFrZXQgYmVyaXNpIGFrc2FyYSB5YW5nIGJ1a2FuIGh1cnVmIGtlY2lsIGF0YXUgYC0rJyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzozNDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBjb250YWlucyB1c2VyLWRlZmluZWQgUHJpb3JpdHkgdmFsdWUgJyVzJyIKK21zZ3N0ciAiJyVzJyBiZXJpc2kgbmlsYWkgUHJpb3JpdGFzIGRlZmluaXNpIHBlbmdndW5hICclcyciCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MzQ3CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgY29udGFpbnMgdXNlci1kZWZpbmVkIGZpZWxkICclcyciCittc2dzdHIgIiclcycgYmVyaXNpIHJ1YXMgZGVmaW5pc2kgcGVuZ2d1bmEgJyVzJyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzozNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgJWQgd2FybmluZyBhYm91dCB0aGUgY29udHJvbCBmaWxlKHMpXG4iCittc2dpZF9wbHVyYWwgImlnbm9yaW5nICVkIHdhcm5pbmdzIGFib3V0IHRoZSBjb250cm9sIGZpbGUocylcbiIKK21zZ3N0clswXSAibWVuZ2FiYWlrYW4gJWQgcGVyaW5nYXRhbiB0ZW50YW5nIGJlcmthcyAnY29udHJvbCdcbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MDMgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MjkKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDM2CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSA8ZGlyZWN0b3J5PiBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyBidXR1aCBzZWJ1YWggYXJndW1lbiA8ZGlyZWt0b3JpPiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MDkKK21zZ2lkICItLWJ1aWxkIHRha2VzIGF0IG1vc3QgdHdvIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS1idWlsZCBidXR1aCBwYWxpbmcgYmFueWFrIGR1YSBhcmd1bWVuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQxMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hlY2sgZm9yIGV4aXN0ZW5jZSBvZiBhcmNoaXZlIGAlLjI1MHMnIgorbXNnc3RyICJnYWdhbCBtZW1lcmlrc2Ega2ViZXJhZGFhbiBhcnNpcCAnJS4yNTBzJyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzAKK21zZ2lkICJ0YXJnZXQgaXMgZGlyZWN0b3J5IC0gY2Fubm90IHNraXAgY29udHJvbCBmaWxlIGNoZWNrIgorbXNnc3RyICIiCisidGFyZ2V0IGFkYWxhaCBkaXJla3RvcmkgLSB0aWRhayBkYXBhdCBtZW5naGluZGFyaSBwZW1lcmlrc2FhbiBiZXJrYXMgIgorIidjb250cm9sJyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzEKK21zZ2lkICJub3QgY2hlY2tpbmcgY29udGVudHMgb2YgY29udHJvbCBhcmVhLiIKK21zZ3N0ciAidGlkYWsgbWVtZXJpa3NhIGlzaSBhcmVhIGNvbnRyb2wuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQzMgorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnLWRlYjogYnVpbGRpbmcgYW4gdW5rbm93biBwYWNrYWdlIGluICclcycuXG4iCittc2dzdHIgImRwa2ctZGViOiBtZW1idWF0IHBha2V0IHRhayBkaWtlbmFsIGRpIGRhbGFtICclcycuXG4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDM5CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2ctZGViOiBidWlsZGluZyBwYWNrYWdlIGAlcycgaW4gYCVzJy5cbiIKK21zZ3N0ciAiZHBrZy1kZWI6IG1lbWJ1YXQgcGFrZXQgJyVzJyBkaSBkYWxhbSAnJXMnLlxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ2NyBkcGtnLWRlYi9idWlsZC5jOjUyMQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIG1ha2UgdG1wZmlsZSAoZGF0YSkiCittc2dpZCAiZmFpbGVkIHRvIG1ha2UgdGVtcG9yYXJ5IGZpbGUgKCVzKSIKK21zZ3N0ciAiZ2FnYWwgbWVtYnVhdCBiZXJrYXMgdG1wIChkYXRhKSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0NjcgZHBrZy1kZWIvYnVpbGQuYzo0NzAgZHBrZy1kZWIvYnVpbGQuYzo0NzcKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDg1IGRwa2ctZGViL2J1aWxkLmM6NDk0IGRwa2ctZGViL2J1aWxkLmM6NDk5CisjLCBmdXp6eQorI3wgbXNnaWQgImNvbnRyb2wiCittc2dpZCAiY29udHJvbCBtZW1iZXIiCittc2dzdHIgImNvbnRyb2wiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDcwIGRwa2ctZGViL2J1aWxkLmM6NTI0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gdW5saW5rIHRtcGZpbGUgKGRhdGEpLCAlcyIKK21zZ2lkICJmYWlsZWQgdG8gdW5saW5rIHRlbXBvcmFyeSBmaWxlICglcyksICVzIgorbXNnc3RyICJnYWdhbCBtZW1idWFuZyBsaW5rIGJlcmthcyB0bXAgKGRhdGEpLCAlcyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0ODUgZHBrZy1kZWIvYnVpbGQuYzo1OTMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdG1wZmlsZSAoZGF0YSkiCittc2dpZCAiZmFpbGVkIHRvIHJld2luZCB0ZW1wb3JhcnkgZmlsZSAoJXMpIgorbXNnc3RyICJHYWdhbCBtZW5ndWxhbmdpIGJlcmthcyB0bXAgKGRhdGEpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ5NAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGFyIG1lbWJlciBmaWxlICglcykiCittc2dpZCAiZmFpbGVkIHRvIHN0YXQgdGVtcG9yYXJ5IGZpbGUgKCVzKSIKK21zZ3N0ciAiZ2FnYWwgbWVuYXRhIHN0YXR1cyBiZXJrYXMgYW5nZ290YSBhciAoJXMpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ5OAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciB3cml0aW5nIGAlcyciCittc2dzdHIgIkFkYSBnYWxhdCBzYWF0IG1lbnVsaXMgJyVzJyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo1MjEgZHBrZy1kZWIvYnVpbGQuYzo1MjQgZHBrZy1kZWIvYnVpbGQuYzo1NDYKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTcyIGRwa2ctZGViL2J1aWxkLmM6NTgwIGRwa2ctZGViL2J1aWxkLmM6NTkzCisjLCBmdXp6eQorI3wgbXNnaWQgImJldHdlZW4gbWVtYmVycyIKK21zZ2lkICJkYXRhIG1lbWJlciIKK21zZ3N0ciAiYW50YXJhIGFuZ2dvdGEiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTcxIGRwa2ctZGViL2J1aWxkLmM6NTgwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gd3JpdGUgZmlsZW5hbWUgdG8gdGFyIHBpcGUgKGRhdGEpIgorbXNnaWQgImZhaWxlZCB0byB3cml0ZSBmaWxlbmFtZSB0byB0YXIgcGlwZSAoJXMpIgorbXNnc3RyICJnYWdhbCBtZW51bGlzIG5hbWEgYmVya2FzIGtlIHBpcGUgdGFyIChkYXRhKSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo1ODQKK21zZ2lkICI8Y29tcHJlc3M+IGZyb20gdGFyIC1jZiIKK21zZ3N0ciAiPGNvbXByZXNzPiBkYXJpIHRhciAtY2YiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzo2MSBkcGtnLWRlYi9leHRyYWN0LmM6NjMKK21zZ2lkICJzaGVsbCBjb21tYW5kIHRvIG1vdmUgZmlsZXMiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjcwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGZpbGUgaW4gJXMgaW4gJS4yNTVzIgorbXNnc3RyICJha2hpciBiZXJrYXMgeWFuZyB0YWsgdGVyZHVnYSBwYWRhICVzIGRhbGFtICUuMjU1cyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHJlYWRpbmcgJXMgZnJvbSBmaWxlICUuMjU1cyIKK21zZ3N0ciAiYWRhIGdhbGF0IG1lbWJhY2EgJXMgZGFyaSBiZXJrYXMgJS4yNTVzIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTI1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZWFkIGFyY2hpdmUgYCUuMjU1cyciCittc2dzdHIgImdhZ2FsIG1lbWJhY2EgYXJzaXAgJyUuMjU1cyciCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxMjcKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgYXJjaGl2ZSIKK21zZ3N0ciAiR2FnYWwgbWVsYWt1a2FuICdmc3RhdCcgcGFkYSBhcnNpcCIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjEzMQorIywgZnV6enkKKyN8IG1zZ2lkICJhcmNoaXZlIGhhcyBubyBkb3QgaW4gdmVyc2lvbiBudW1iZXIiCittc2dpZCAiYXJjaGl2ZSBtYWdpYyB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAiYXJzaXAgdGlkYWsgbWVuZ2FuZHVuZyB0aXRpayBwYWRhIG5vbW9yIHZlcnNpbnlhIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTQzCisjLCBmdXp6eQorI3wgbXNnaWQgImFyY2hpdmUgaGFzIG5vIG5ld2xpbmVzIGluIGhlYWRlciIKK21zZ2lkICJhcmNoaXZlIG1lbWJlciBoZWFkZXIiCittc2dzdHIgImFyc2lwIHRpZGFrIG1lbmdhbmR1bmcgYmFyaXMtYmFydSBkaSBoZWFkZXJueWEiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNDgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBwYXJ0IG51bWJlciIKK21zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgYXJjaGl2ZSBoZWFkZXIgbWFnaWMiCittc2dzdHIgImJlcmthcyAnJS4yNTBzJyB0ZXJrb3J1cHNpIC0gbm9tb3IgYmFnaWFuIGJ1cnVrIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTU1CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgbm90IGEgZGViaWFuIGJpbmFyeSBhcmNoaXZlICh0cnkgZHBrZy1zcGxpdD8pIgorbXNnc3RyICJiZXJrYXMgJyUuMjUwcycgYnVrYW4gc3VhdHUgYXJzaXAgYmluZXIgZGViaWFuIChjb2JhIGRwa2ctc3BsaXQ/KSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE1OQorIywgZnV6enkKKyN8IG1zZ2lkICJhcmNoaXZlIGhhcyBubyBkb3QgaW4gdmVyc2lvbiBudW1iZXIiCittc2dpZCAiYXJjaGl2ZSBpbmZvcm1hdGlvbiBoZWFkZXIgbWVtYmVyIgorbXNnc3RyICJhcnNpcCB0aWRhayBtZW5nYW5kdW5nIHRpdGlrIHBhZGEgbm9tb3IgdmVyc2lueWEiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNjIKK21zZ2lkICJhcmNoaXZlIGhhcyBubyBuZXdsaW5lcyBpbiBoZWFkZXIiCittc2dzdHIgImFyc2lwIHRpZGFrIG1lbmdhbmR1bmcgYmFyaXMtYmFydSBkaSBoZWFkZXJueWEiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNjUKK21zZ2lkICJhcmNoaXZlIGhhcyBubyBkb3QgaW4gdmVyc2lvbiBudW1iZXIiCittc2dzdHIgImFyc2lwIHRpZGFrIG1lbmdhbmR1bmcgdGl0aWsgcGFkYSBub21vciB2ZXJzaW55YSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE2OAorIywgYy1mb3JtYXQKK21zZ2lkICJhcmNoaXZlIHZlcnNpb24gJS4yNTBzIG5vdCB1bmRlcnN0b29kLCBnZXQgbmV3ZXIgZHBrZy1kZWIiCittc2dzdHIgInZlcnNpIGFyc2lwICUuMjUwcyB0aWRhayBkaXBhaGFtaSwgZ3VuYWthbiBkcGtnLWRlYiB0ZXJiYXJ1IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTc5IGRwa2ctZGViL2V4dHJhY3QuYzoyMDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInNraXBwZWQgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ2lkICJza2lwcGVkIGFyY2hpdmUgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ3N0ciAiYWJhaWthbiBkYXRhIGFuZ2dvdGEgZGFyaSAlcyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE5NAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZSBgJS4yNTBzJyBjb250YWlucyB1bnVuZGVyc3Rvb2QgZGF0YSBtZW1iZXIgJS4qcywgZ2l2aW5nIHVwIgorbXNnaWQgImFyY2hpdmUgJyUuMjUwcycgY29udGFpbnMgbm90IHVuZGVyc3Rvb2QgZGF0YSBtZW1iZXIgJS4qcywgZ2l2aW5nIHVwIgorbXNnc3RyICJiZXJrYXMgJyUuMjUwcycgYmVyaXNpIGFuZ2dvdGEgZGF0YSAlLipzIHlhbmcgdGFrIGRpcGFoYW1pLCBtZW55ZXJhaCIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE5OQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZSBgJS4yNTBzJyBjb250YWlucyB0d28gY29udHJvbCBtZW1iZXJzLCBnaXZpbmcgdXAiCittc2dpZCAiYXJjaGl2ZSAnJS4yNTBzJyBjb250YWlucyB0d28gY29udHJvbCBtZW1iZXJzLCBnaXZpbmcgdXAiCittc2dzdHIgImJlcmthcyAnJS4yNTBzJyBiZXJpc2kgZHVhIGFuZ2dvdGEgJ2NvbnRyb2wnLCBtZW55ZXJhaCIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIxNAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiBuZXcgZGViaWFuIHBhY2thZ2UsIHZlcnNpb24gJXMuXG4iCisjfCAiIHNpemUgJWxkIGJ5dGVzOiBjb250cm9sIGFyY2hpdmU9ICV6aSBieXRlcy5cbiIKK21zZ2lkICIiCisiIG5ldyBkZWJpYW4gcGFja2FnZSwgdmVyc2lvbiAlcy5cbiIKKyIgc2l6ZSAlamQgYnl0ZXM6IGNvbnRyb2wgYXJjaGl2ZT0gJWpkIGJ5dGVzLlxuIgorbXNnc3RyICIiCisiIHBha2V0IGJhcnUgZGViaWFuLCB2ZXJzaSAlcy5cbiIKKyIgYmVzYXIgJWxkIGJ5dGU6IGFyc2lwICdjb250cm9sJz0gJXppIGJ5dGUuXG4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyMzIKK21zZ2lkICJhcmNoaXZlIGNvbnRyb2wgbWVtYmVyIHNpemUiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIzNQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYXJjaGl2ZSBoYXMgbWFsZm9ybWF0dGVkIGNvbnRyb2wgbGVuZ3RoIGAlcyciCittc2dpZCAiYXJjaGl2ZSBoYXMgbWFsZm9ybWF0dGVkIGNvbnRyb2wgbWVtYmVyIHNpemUgJyVzJyIKK21zZ3N0ciAiYXJzaXAgbWVuZ2FuZHVuZyBwYW5qYW5nICdjb250cm9sJyAnJXMnIHlhbmcgc2FsYWggYmVudHVrIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjQyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJza2lwcGVkIG1lbWJlciBkYXRhIGZyb20gJXMiCittc2dpZCAic2tpcHBlZCBhcmNoaXZlIGNvbnRyb2wgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ3N0ciAiYWJhaWthbiBkYXRhIGFuZ2dvdGEgZGFyaSAlcyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI0NgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiBvbGQgZGViaWFuIHBhY2thZ2UsIHZlcnNpb24gJXMuXG4iCisjfCAiIHNpemUgJWxkIGJ5dGVzOiBjb250cm9sIGFyY2hpdmU9ICV6aSwgbWFpbiBhcmNoaXZlPSAlbGQuXG4iCittc2dpZCAiIgorIiBvbGQgZGViaWFuIHBhY2thZ2UsIHZlcnNpb24gJXMuXG4iCisiIHNpemUgJWpkIGJ5dGVzOiBjb250cm9sIGFyY2hpdmU9ICVqZCwgbWFpbiBhcmNoaXZlPSAlamQuXG4iCittc2dzdHIgIiIKKyIgcGFrZXQgbGFtYSBkZWJpYW4sIHZlcnNpICVzLlxuIgorIiBiZXNhciAlbGQgYnl0ZTogYXJzaXAgJ2NvbnRyb2wnPSAlemksIGFyc2lwIHV0YW1hPSAlbGQuXG4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2ctZGViOiBmaWxlIGxvb2tzIGxpa2UgaXQgbWlnaHQgYmUgYW4gYXJjaGl2ZSB3aGljaCBoYXMgYmVlblxuIgorImRwa2ctZGViOiAgICBjb3JydXB0ZWQgYnkgYmVpbmcgZG93bmxvYWRlZCBpbiBBU0NJSSBtb2RlXG4iCittc2dzdHIgIiIKKyJkcGtnLWRlYjogYmVya2FzIHRhbXBha255YSBzZXBlcnRpIHN1YXR1IGFyc2lwIHlhbmcgdGVsYWggXG4iCisiZHBrZy1kZWI6ICAgICAgdGVya29ydXBzaSBzYWF0IGRpYW1iaWwgZGVuZ2FuIG1vZHVzIEFTQ0lJXG4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCUuMjU1cycgaXMgbm90IGEgZGViaWFuIGZvcm1hdCBhcmNoaXZlIgorbXNnc3RyICInJS4yNTBzJyBidWthbiBzdWF0dSBhcnNpcCBiZXJmb3JtYXQgZGViaWFuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjY2Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIHRvIHBpcGUgaW4gY29weSIKK21zZ3N0ciAiZ2FnYWwgbWVudWxpcyBrZSBwaXBlIGRhbGFtIHBlbnlhbGluYW4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNjgKK21zZ2lkICJmYWlsZWQgdG8gY2xvc2UgcGlwZSBpbiBjb3B5IgorbXNnc3RyICJnYWdhbCBtZW51dHVwIHBpcGUgZGFsYW0gcGVueWFsaW5hbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI4NAorbXNnaWQgImRhdGEiCittc2dzdHIgImRhdGEiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozMDcKK21zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gZGlyZWN0b3J5IgorbXNnc3RyICJnYWdhbCBiZXJwaW5kYWgga2UgZGlyZWt0b3JpIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzEwCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBkaXJlY3RvcnkiCittc2dzdHIgImdhZ2FsIG1lbWJ1YXQgZGlyZWt0b3JpIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzEyCittc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIGRpcmVjdG9yeSBhZnRlciBjcmVhdGluZyBpdCIKK21zZ3N0ciAiZ2FnYWwgYmVycGluZGFoIGtlIGRpcmVrdG9yaSBzZXRlbGFoIG1lbWJ1YXRueWEiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozMjMKK21zZ2lkICI8ZGVjb21wcmVzcz4iCittc2dzdHIgIjxkZWtvbXByZXNpPiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMyNQorbXNnaWQgInBhc3RlIgorbXNnc3RyICJ0ZW1wZWwiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozNDIgZHBrZy1kZWIvZXh0cmFjdC5jOjM2MyBkcGtnLWRlYi9leHRyYWN0LmM6NDAyCisjOiBkcGtnLWRlYi9pbmZvLmM6NzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhIC5kZWIgZmlsZW5hbWUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMgYnV0dWggc3VhdHUgYXJndW1lbiBuYW1hIGJlcmthcyAuZGViIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzQ3IGRwa2ctZGViL2V4dHJhY3QuYzo0MDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIi0tJXMgbmVlZHMgYSB0YXJnZXQgZGlyZWN0b3J5LlxuIgorIlBlcmhhcHMgeW91IHNob3VsZCBiZSB1c2luZyBkcGtnIC0taW5zdGFsbCA/IgorbXNnc3RyICIiCisiLS0lcyBidXR1aCBzdWF0dSBkaXJla3RvcmkgdGFyZ2V0LlxuIgorIk11bmdraW4gQW5kYSBoYXJ1cyBtZW5nZ3VuYWthbiBkcGtnIC0taW5zdGFsbCA/IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzUwIGRwa2ctZGViL2V4dHJhY3QuYzo0MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyB0YWtlcyBhdCBtb3N0IHR3byBhcmd1bWVudHMgKC5kZWIgYW5kIGRpcmVjdG9yeSkiCittc2dzdHIgIi0tJXMgYnV0dWggcGFsaW5nIGJhbnlhayBkdWEgYXJndW1lbiAoLmRlYiBkYW4gZGlyZWt0b3JpKSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjM2NQorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIHRha2VzIG9ubHkgb25lIGFyZ3VtZW50ICguZGViIGZpbGVuYW1lKSIKK21zZ3N0ciAiLS0lcyBoYW55YSBidXR1aCBzYXR1IGFyZ3VtZW4gKG5hbWEgYmVya2FzIC5kZWIpIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6NjMKK21zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gYC8nIGZvciBjbGVhbnVwIgorbXNnc3RyICJnYWdhbCBtZW1pbmRhaGthbiBkaXJla3Rvcmkga2UgYC8nIHVudHVrIG1lbWJlcnNpaGthbiIKKworIzogZHBrZy1kZWIvaW5mby5jOjEwNgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiY2Fubm90IHN0YXQgZmlsZSAnJXMnIgorbXNnaWQgImNvbnRyb2wgZmlsZSAnJXMnIgorbXNnc3RyICJnYWdhbCBtZW5hdGEgc3RhdHVzICclcyciCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZy1kZWI6IGAlLjI1NXMnIGNvbnRhaW5zIG5vIGNvbnRyb2wgY29tcG9uZW50IGAlLjI1NXMnXG4iCittc2dzdHIgImRwa2ctZGViOiAnJS4yNTVzJyB0aWRhayBiZXJpc2kga29tcG9uZW4gJ2NvbnRyb2wnICclLjI1NXMnXG4iCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAib3BlbiBjb21wb25lbnQgYCUuMjU1cycgKGluICUuMjU1cykgZmFpbGVkIGluIGFuIHVuZXhwZWN0ZWQgd2F5IgorbXNnc3RyICIiCisiZ2FnYWwgbWVtYnVrYSBrb21wb25lbiAnJS4yNTVzJyAoZGFsYW0gJS4yNTVzKSBkZW5nYW4gaGFzaWwgeWFuZyB0YWsgdGVyZHVnYSIKKworIzogZHBrZy1kZWIvaW5mby5jOjEyMQorIywgYy1mb3JtYXQKK21zZ2lkICIlZCByZXF1ZXN0ZWQgY29udHJvbCBjb21wb25lbnQgaXMgbWlzc2luZyIKK21zZ2lkX3BsdXJhbCAiJWQgcmVxdWVzdGVkIGNvbnRyb2wgY29tcG9uZW50cyBhcmUgbWlzc2luZyIKK21zZ3N0clswXSAiJWQga29tcG9uZW4gJ2NvbnRyb2wnIHlhbmcgZGlwZXJsdWthbiBoaWxhbmciCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMzkgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQyNAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc2NhbiBkaXJlY3RvcnkgYCUuMjU1cyciCittc2dzdHIgImdhZ2FsIG1lbWluZGFpIGRpcmVrdG9yaSAnJS4yNTVzJyIKKworIzogZHBrZy1kZWIvaW5mby5jOjE0OAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc3RhdCBgJS4yNTVzJyAoaW4gYCUuMjU1cycpIgorbXNnc3RyICJnYWdhbCBtZWxha3VrYW4gJ3N0YXQnIHBhZGEgJyUuMjU1cycgKGRhbGFtICclLjI1NXMnKSIKKworIzogZHBrZy1kZWIvaW5mby5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgb3BlbiBgJS4yNTVzJyAoaW4gYCUuMjU1cycpIgorbXNnc3RyICJnYWdhbCBtZW1idWthICclLjI1NXMnIChkYWxhbSAnJS4yNTVzJykiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxNjcgZHBrZy1kZWIvaW5mby5jOjE4NSBkcGtnLWRlYi9pbmZvLmM6MTk5CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZWFkIGAlLjI1NXMnIChpbiBgJS4yNTVzJykiCittc2dzdHIgImdhZ2FsIG1lbWJhY2EgJyUuMjU1cycgKGRhbGFtICclLjI1NXMnKSIKKworIzogZHBrZy1kZWIvaW5mby5jOjE3MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiICU3bGQgYnl0ZXMsICU1ZCBsaW5lcyAgICVjICAlLTIwLjEyN3MgJS4xMjdzXG4iCittc2dpZCAiICU3amQgYnl0ZXMsICU1ZCBsaW5lcyAgICVjICAlLTIwLjEyN3MgJS4xMjdzXG4iCittc2dzdHIgIiAgJTdsZCBieXRlLCAlNWQgYnl0ZSAgJWMgICUtMjAuMTI3cyAgJS4xMjdzIFxuIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTc0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgICAgbm90IGEgcGxhaW4gZmlsZSAgICAgICAgICAlLjI1NXNcbiIKK21zZ3N0ciAiICAgICBidWthbiBzZWJ1YWggYmVya2FzIGJpYXNhICAgICAgICAgJS4yNTVzXG4iCisKKyM6IGRwa2ctZGViL2luZm8uYzoxODYKK21zZ2lkICIobm8gYGNvbnRyb2wnIGZpbGUgaW4gY29udHJvbCBhcmNoaXZlISlcbiIKK21zZ3N0ciAiKHRpZGFrIGFkYSBiZXJrYXMgJ2NvbnRyb2wnIGRhbGFtIGFyc2lwISkgXG4iCisKKyM6IGRwa2ctZGViL2luZm8uYzoyMjIKK21zZ2lkICJjb3VsZCBub3Qgb3BlbiB0aGUgYGNvbnRyb2wnIGNvbXBvbmVudCIKK21zZ3N0ciAiZ2FnYWwgbWVtYnVrYSBrb21wb25lbiAnY29udHJvbCciCisKKyM6IGRwa2ctZGViL2luZm8uYzoyNjEKK21zZ2lkICJmYWlsZWQgZHVyaW5nIHJlYWQgb2YgYGNvbnRyb2wnIGNvbXBvbmVudCIKK21zZ3N0ciAiZ2FnYWwgc2VsYW1hIG1lbWJhY2Ega29tcG9uZW4gJ2NvbnRyb2wnIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MjYzCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgdGhlICclcycgY29tcG9uZW50IgorbXNnc3RyICJBZGEgZ2FsYXQgbWVudXR1cCBrb21wb25lbiAnJXMnIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6Mjc4Cittc2dpZCAiRXJyb3IgaW4gZm9ybWF0IgorbXNnc3RyICJzYWxhaCBmb3JtYXQiCisKKyM6IGRwa2ctZGViL2luZm8uYzozMjgKK21zZ2lkICItLWNvbnRlbnRzIHRha2VzIGV4YWN0bHkgb25lIGFyZ3VtZW50IgorbXNnc3RyICItLWNvbnRlbnRzIGJ1dHVoIHRlcGF0IHNhdHUgYXJndW1lbiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjU0CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiBgJXMnIHBhY2thZ2UgYXJjaGl2ZSBiYWNrZW5kIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIidCYWNrZW5kJyBhcnNpcCBwYWtldCBEZWJpYW4gJXMgdmVyc2kgJXMuXG4iCisKKyM6IGRwa2ctZGViL21haW4uYzo3MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIkNvbW1hbmRzOlxuIgorI3wgIiAgLWJ8LS1idWlsZCA8ZGlyZWN0b3J5PiBbPGRlYj5dICAgQnVpbGQgYW4gYXJjaGl2ZS5cbiIKKyN8ICIgIC1jfC0tY29udGVudHMgPGRlYj4gICAgICAgICAgICAgIExpc3QgY29udGVudHMuXG4iCisjfCAiICAtSXwtLWluZm8gPGRlYj4gWzxjZmlsZT4gLi4uXSAgICBTaG93IGluZm8gdG8gc3Rkb3V0LlxuIgorI3wgIiAgLVd8LS1zaG93IDxkZWI+ICAgICAgICAgICAgICAgICAgU2hvdyBpbmZvcm1hdGlvbiBvbiBwYWNrYWdlKHMpXG4iCisjfCAiICAtZnwtLWZpZWxkIDxkZWI+IFs8Y2ZpZWxkPiAuLi5dICBTaG93IGZpZWxkKHMpIHRvIHN0ZG91dC5cbiIKKyN8ICIgIC1lfC0tY29udHJvbCA8ZGViPiBbPGRpcmVjdG9yeT5dIEV4dHJhY3QgY29udHJvbCBpbmZvLlxuIgorI3wgIiAgLXh8LS1leHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+ICAgRXh0cmFjdCBmaWxlcy5cbiIKKyN8ICIgIC1YfC0tdmV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gIEV4dHJhY3QgJiBsaXN0IGZpbGVzLlxuIgorI3wgIiAgLS1mc3lzLXRhcmZpbGUgPGRlYj4gICAgICAgICAgICAgT3V0cHV0IGZpbGVzeXN0ZW0gdGFyZmlsZS5cbiIKKyN8ICJcbiIKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtYnwtLWJ1aWxkIDxkaXJlY3Rvcnk+IFs8ZGViPl0gICBCdWlsZCBhbiBhcmNoaXZlLlxuIgorIiAgLWN8LS1jb250ZW50cyA8ZGViPiAgICAgICAgICAgICAgTGlzdCBjb250ZW50cy5cbiIKKyIgIC1JfC0taW5mbyA8ZGViPiBbPGNmaWxlPiAuLi5dICAgIFNob3cgaW5mbyB0byBzdGRvdXQuXG4iCisiICAtV3wtLXNob3cgPGRlYj4gICAgICAgICAgICAgICAgICBTaG93IGluZm9ybWF0aW9uIG9uIHBhY2thZ2UocylcbiIKKyIgIC1mfC0tZmllbGQgPGRlYj4gWzxjZmllbGQ+IC4uLl0gIFNob3cgZmllbGQocykgdG8gc3Rkb3V0LlxuIgorIiAgLWV8LS1jb250cm9sIDxkZWI+IFs8ZGlyZWN0b3J5Pl0gRXh0cmFjdCBjb250cm9sIGluZm8uXG4iCisiICAteHwtLWV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gICBFeHRyYWN0IGZpbGVzLlxuIgorIiAgLVh8LS12ZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PiAgRXh0cmFjdCAmIGxpc3QgZmlsZXMuXG4iCisiICAtUnwtLXJhdy1leHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFeHRyYWN0IGNvbnRyb2wgaW5mbyBhbmQgZmlsZXMuXG4iCisiICAtLWZzeXMtdGFyZmlsZSA8ZGViPiAgICAgICAgICAgICBPdXRwdXQgZmlsZXN5c3RlbSB0YXJmaWxlLlxuIgorIlxuIgorbXNnc3RyICIiCisiUGVyaW50YWg6XG4iCisiICAtYnwtLWJ1aWxkIDxkaXJla3Rvcmk+IFs8ZGViPl0gICAgQnVhdCBzZWJ1YWggYXJzaXAuXG4iCisiICAtY3wtLWNvbnRlbnRzIDxkZWI+ICAgICAgICAgICAgICAgTGloYXQgaXNpLlxuIgorIiAgLUl8LS1pbmZvIDxkZWI+IFs8a29tcD4gLi4uXSAgICAgIExpaGF0IGluZm8gZGkgbGF5YXIuXG4iCisiICAtV3wtLXNob3cgPGRlYj4gICAgICAgICAgICAgICAgICAgTGloYXQgaW5mbyBwYWtldC5cbiIKKyIgIC1mfC1maWVsZCA8ZGViPiBbPGlzaWFuPiAuLi5dICAgICBMaWhhdCBpdGVtIGRpIGxheWFyLlxuIgorIiAgLWV8LS1jb250cm9sIDxkZWI+IFs8ZGlyZWt0b3JpPl0gIEJ1a2EgaW5mbyBjb250cm9sLlxuIgorIiAgLXh8LS1leHRyYWN0IDxkZWI+IDxkaXJla3Rvcmk+ICAgIEJ1a2EgYmVya2FzIGFyc2lwLlxuIgorIiAgLVh8LS12ZXh0cmFjdCA8ZGViPiA8ZGlyZWt0b3JpPiAgIEJ1a2EgYXJzaXAgZGFuIGxpaGF0IGJlcmthcy5cbiIKKyIgIC0tZnN5cy10YXJmaWxlIDxkZWI+ICAgICAgICAgICAgICBLZWx1YXJrYW4gc2lzdGVtIGJlcmthcyB0YXIuXG4iCisiXG4iCisKKyM6IGRwa2ctZGViL21haW4uYzo5MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiPGRlYj4gaXMgdGhlIGZpbGVuYW1lIG9mIGEgRGViaWFuIGZvcm1hdCBhcmNoaXZlLlxuIgorIjxjZmlsZT4gaXMgdGhlIG5hbWUgb2YgYW4gYWRtaW5pc3RyYXRpdmUgZmlsZSBjb21wb25lbnQuXG4iCisiPGNmaWVsZD4gaXMgdGhlIG5hbWUgb2YgYSBmaWVsZCBpbiB0aGUgbWFpbiBgY29udHJvbCcgZmlsZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIjxkZWI+IGFkYWxhaCBuYW1hIGJlcmthcyBkZW5nYW4gZm9ybWF0IGFyc2lwIERlYmlhbi5cbiIKKyI8a29tcD4gYWRhbGFoIG5hbWEga29tcG9uZW4gYmVya2FzIGFkbWluaXN0cmF0aWYuXG4iCisiPGlzaWFuPiBhZGFsYWggbmFtYSBydWFzIGlzaWFuIGRhbGFtIGJlcmthcyAnY29udHJvbCcgdXRhbWEuXG4iCisiXG4iCisKKyM6IGRwa2ctZGViL21haW4uYzo5OQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIk9wdGlvbnM6XG4iCisjfCAiICAtLXNob3dmb3JtYXQ9PGZvcm1hdD4gICAgICAgICAgICBVc2UgYWx0ZXJuYXRpdmUgZm9ybWF0IGZvciAtLXNob3cuXG4iCisjfCAiICAtRCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbmFibGUgZGVidWdnaW5nIG91dHB1dC5cbiIKKyN8ICIgIC0tb2xkLCAtLW5ldyAgICAgICAgICAgICAgICAgICAgIFNlbGVjdCBhcmNoaXZlIGZvcm1hdC5cbiIKKyN8ICIgIC0tbm9jaGVjayAgICAgICAgICAgICAgICAgICAgICAgIFN1cHByZXNzIGNvbnRyb2wgZmlsZSBjaGVjayAoYnVpbGQgIgorI3wgImJhZFxuIgorI3wgIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWNrYWdlcykuXG4iCisjfCAiICAteiMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTZXQgdGhlIGNvbXByZXNzaW9uIGxldmVsIHdoZW4gIgorI3wgImJ1aWxkaW5nLlxuIgorI3wgIiAgLVo8dHlwZT4gICAgICAgICAgICAgICAgICAgICAgICAgU2V0IHRoZSBjb21wcmVzc2lvbiB0eXBlIHVzZWQgd2hlbiAiCisjfCAiYnVpbGRpbmcuXG4iCisjfCAiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFsbG93ZWQgdHlwZXM6IGd6aXAsIHh6LCBiemlwMiwgIgorI3wgImx6bWEsIG5vbmUuXG4iCisjfCAiXG4iCittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLXNob3dmb3JtYXQ9PGZvcm1hdD4gICAgICAgICAgICBVc2UgYWx0ZXJuYXRpdmUgZm9ybWF0IGZvciAtLXNob3cuXG4iCisiICAtdiwgLS12ZXJib3NlICAgICAgICAgICAgICAgICAgICBFbmFibGUgdmVyYm9zZSBvdXRwdXQuXG4iCisiICAtRCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbmFibGUgZGVidWdnaW5nIG91dHB1dC5cbiIKKyIgIC0tb2xkLCAtLW5ldyAgICAgICAgICAgICAgICAgICAgIFNlbGVjdCBhcmNoaXZlIGZvcm1hdC5cbiIKKyIgIC0tbm9jaGVjayAgICAgICAgICAgICAgICAgICAgICAgIFN1cHByZXNzIGNvbnRyb2wgZmlsZSBjaGVjayAoYnVpbGQgYmFkXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhY2thZ2VzKS5cbiIKKyIgIC16IyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNldCB0aGUgY29tcHJlc3Npb24gbGV2ZWwgd2hlbiBidWlsZGluZy5cbiIKKyIgIC1aPHR5cGU+ICAgICAgICAgICAgICAgICAgICAgICAgIFNldCB0aGUgY29tcHJlc3Npb24gdHlwZSB1c2VkIHdoZW4gIgorImJ1aWxkaW5nLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBbGxvd2VkIHR5cGVzOiBnemlwLCB4eiwgYnppcDIsIGx6bWEsICIKKyJub25lLlxuIgorIlxuIgorbXNnc3RyICIiCisiUGlsaWhhbjpcbiIKKyIgIC0tc2hvd2Zvcm1hdD08Zm9ybWF0PiAgICAgIEd1bmFrYW4gZm9ybWF0IGxhaW4gdW50dWsgLS1zaG93LlxuIgorIiAgLUQgICAgICAgICAgICAgICAgICAgICAgICAgQWt0aWZrYW4ga2VsdWFyYW4gZGVidWdnaW5nLlxuIgorIiAgLS1vbGQsIC0tbmV3ICAgICAgICAgICAgICAgUGlsaWggZm9ybWF0IGFyc2lwLlxuIgorIiAgLS1ub2NoZWNrICAgICAgICAgICAgICAgICAgTGV3YXRpIHBlbWVyaWtzYWFuIGJlcmthcyBjb250cm9sXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoaGFzaWxrYW4gcGFrZXQgYnVydWspLlxuIgorIiAgLXojICAgICAgICAgICAgICAgICAgICAgICAgVGVudHVrYW4gdGluZ2thdCBrb21wcmVzaSBzYWF0IG1lbWJ1YXQgcGFrZXQuXG4iCisiICAtWjxqZW5pcz4gICAgICAgICAgICAgICAgICBUZW50dWthbiBqZW5pcyBrb21wcmVzaSB1bnR1ayBtZW1idWF0IHBha2V0LlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSmVuaXMgeWFuZyBkaXRlcmltYTogZ3ppcCwgeHosIGJ6aXAyLCBsem1hLCAiCisidGlhZGEuXG4iCisiXG4iCisKKyM6IGRwa2ctZGViL21haW4uYzoxMjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIlVzZSBgZHBrZycgdG8gaW5zdGFsbCBhbmQgcmVtb3ZlIHBhY2thZ2VzIGZyb20geW91ciBzeXN0ZW0sIG9yXG4iCisiYGRzZWxlY3QnIG9yIGBhcHRpdHVkZScgZm9yIHVzZXItZnJpZW5kbHkgcGFja2FnZSBtYW5hZ2VtZW50LiAgUGFja2FnZXNcbiIKKyJ1bnBhY2tlZCB1c2luZyBgZHBrZy1kZWIgLS1leHRyYWN0JyB3aWxsIGJlIGluY29ycmVjdGx5IGluc3RhbGxlZCAhXG4iCittc2dzdHIgIiIKKyJcbiIKKyJHdW5ha2FuICdkcGtnJyB1bnR1ayBtZW1hc2FuZyBkYW4gbWVtYnVhbmcgcGFrZXQgZGFyaSBzaXN0ZW0gQW5kYSxcbiIKKyJhdGF1ICdkc2VsZWN0JyBhdGF1ICdhcHRpdHVkZScgdW50dWsgcGVuZ2Vsb2xhYW4gcGFrZXQgeWFuZyBsZWJpaCBtdWRhaC5cbiIKKyJQYWtldC1wYWtldCB5YW5nIGRpYnVrYSBkZW5nYW4gJ2Rwa2ctZGViIC0tZXh0cmFjdCcgYmlzYSBqYWRpIGFrYW4gc2FsYWhcbiIKKyJwYXNhbmchXG4iCisKKyM6IGRwa2ctZGViL21haW4uYzoxMzIKK21zZ2lkICIiCisiVHlwZSBkcGtnLWRlYiAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgbWFuaXB1bGF0aW5nICouZGViIGZpbGVzO1xuIgorIlR5cGUgZHBrZyAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgaW5zdGFsbGluZyBhbmQgZGVpbnN0YWxsaW5nIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorIktldGlrIGRwa2ctZGViIC0taGVscCB1bnR1ayBwYW5kdWFuIGRhbGFtIG1hbmlwdWxhc2kgYmVya2FzICouZGViO1xuIgorIktldGlrIGRwa2cgLS1oZWxwIHVudHVrIHBhbmR1YW4gZGFsYW0gcGVtYXNhbmdhbiBkYW4gcGVtYnVhbmdhbiBwYWtldC4iCisKKyM6IGRwa2ctZGViL21haW4uYzoxNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBpbnRlZ2VyIGZvciAtJWM6ICclLjI1MHMnIgorbXNnc3RyICJpbnRlZ2VyIHVudHVrIC0lYyB0aWRhayBzYWg6ICclLjI1MHMnIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTUxCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgY29tcHJlc3Npb24gbGV2ZWwgZm9yIC0lYzogJWxkJyIKK21zZ3N0ciAidGluZ2thdCBrb21wcmVzaSB1bnR1ayAtJWMgdGlkYWsgc2FoOiAlbGQnIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTYxCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gY29tcHJlc3Npb24gdHlwZSBgJXMnISIKK21zZ3N0ciAiamVuaXMga29tcHJlc2kgJyVzJyB0aWRhayBkaWtlbmFsISIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6NTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIGRpZ2l0IChjb2RlICVkKSBpbiAlcyIKK21zZ3N0ciAiYmVya2FzICclLjI1MHMnIHRlcmtvcnVwc2kgLSBkaWdpdCBidXJ1ayAoa29kZSAlZCkgZGFsYW0gJXMiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjYwCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtICUuMjUwcyBtaXNzaW5nIgorbXNnc3RyICJiZXJrYXMgJyUuMjUwcycgdGVya29ydXBzaSAtICUuMjUwcyBoaWxhbmciCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjYzCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIG1pc3NpbmcgbmV3bGluZSBhZnRlciAlLjI1MHMiCittc2dzdHIgImJlcmthcyAnJS4yNTBzJyB0ZXJrb3J1cHNpIC0gYmFyaXMtYmFydSBoaWxhbmcgc2V0ZWxhaCAlLjI1MHMiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjg5IGRwa2ctc3BsaXQvbWFpbi5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciByZWFkaW5nICUuMjUwcyIKK21zZ3N0ciAiYWRhIGtlc2FsYWhhbiBzYWF0IG1lbWJhY2EgJS4yNTBzIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIG1hZ2ljIGF0IGVuZCBvZiBmaXJzdCBoZWFkZXIiCittc2dzdHIgImJlcmthcyAnJS4yNTBzJyB0ZXJrb3J1cHNpIC0gJ21hZ2ljJyBidXJ1ayBwYWRhIGFraGlyIGhlYWRlciBwZXJ0YW1hIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIHBhZGRpbmcgY2hhcmFjdGVyIChjb2RlICVkKSIKK21zZ3N0ciAiYmVya2FzICclLjI1MHMnIHRlcmtvcnVwc2kgLSBrYXJla3RlciAncGFkZGluZycgYnVydWsgKGtvZGUgJWQpIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gbnVsbHMgaW4gaW5mbyBzZWN0aW9uIgorbXNnc3RyICJiZXJrYXMgJyUuMjUwcycgdGVya29ydXBzaSAtIGJhZ2lhbiAnaW5mbycga29zb25nIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMjIKK21zZ2lkICJmb3JtYXQgdmVyc2lvbiBudW1iZXIiCittc2dzdHIgIm5vbW9yIHZlcnNpIGZvcm1hdCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgZm9ybWF0IHZlcnNpb24gYCUuMjUwcycgLSB5b3UgbmVlZCBhIG5ld2VyIGRwa2ctc3BsaXQiCittc2dzdHIgIiIKKyJiZXJrYXMgJyUuMjUwcycgYmVyZm9ybWF0IHZlcnNpICclLjI1MHMnIC0gQW5kYSBidXR1aCBkcGtnLXNwbGl0IHRlcmJhcnUiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyNworbXNnaWQgInBhY2thZ2UgbmFtZSIKK21zZ3N0ciAibmFtYSBwYWtldCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTI4Cittc2dpZCAicGFja2FnZSB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAibm9tb3IgdmVyc2kgcGFrZXQiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyOQorbXNnaWQgInBhY2thZ2UgZmlsZSBNRDUgY2hlY2tzdW0iCittc2dzdHIgInBlbWVyaWtzYWFuIE1ENSBiZXJrYXMgcGFrZXQiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEzMgorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgTUQ1IGNoZWNrc3VtIGAlLjI1MHMnIgorbXNnc3RyICJiZXJrYXMgJyUuMjUwcycgdGVya29ydXBzaSAtIGNoZWNrc3VtIE1ENSBidXJ1azogJyUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEzNCBkcGtnLXNwbGl0L2luZm8uYzoxMzUKK21zZ2lkICJhcmNoaXZlIHRvdGFsIHNpemUiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTM2IGRwa2ctc3BsaXQvaW5mby5jOjEzNworIywgZnV6enkKKyN8IG1zZ2lkICJwYXJ0IG9mZnNldCIKK21zZ2lkICJhcmNoaXZlIHBhcnQgb2Zmc2V0IgorbXNnc3RyICJvZmZzZXQgYmFnaWFuIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMzkKKyMsIGZ1enp5CisjfCBtc2dpZCAicGFydCBudW1iZXJzIgorbXNnaWQgImFyY2hpdmUgcGFydCBudW1iZXJzIgorbXNnc3RyICJub21vciBiYWdpYW4iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE0MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gbm8gc2xhc2ggYmV0d2VlbiBwYXJ0IG51bWJlcnMiCittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gbm8gc2xhc2ggYmV0d2VlbiBhcmNoaXZlIHBhcnQgbnVtYmVycyIKK21zZ3N0ciAiYmVya2FzICclLjI1MHMnIHRlcmtvcnVwc2kgLSB0aWRhayBhZGEgZ2FyaXMgbWlyaW5nIGFudGFyIG5vbW9yIGJhZ2lhbiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTQ1CisjLCBmdXp6eQorI3wgbXNnaWQgIm51bWJlciBvZiBwYXJ0cyIKK21zZ2lkICJudW1iZXIgb2YgYXJjaGl2ZSBwYXJ0cyIKK21zZ3N0ciAianVtbGFoIGJhZ2lhbiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTQ3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgbnVtYmVyIG9mIHBhcnRzIgorbXNnaWQgImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBudW1iZXIgb2YgYXJjaGl2ZSBwYXJ0cyIKK21zZ3N0ciAiYmVya2FzICclLjI1MHMnIHRlcmtvcnVwc2kgLSBzZWp1bWxhaCBiYWdpYW4gYnVydWsiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE0OQorIywgZnV6enkKKyN8IG1zZ2lkICJwYXJ0cyBudW1iZXIiCittc2dpZCAiYXJjaGl2ZSBwYXJ0cyBudW1iZXIiCittc2dzdHIgIm5vbW9yIGJhZ2lhbiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTUxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgcGFydCBudW1iZXIiCittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIGFyY2hpdmUgcGFydCBudW1iZXIiCittc2dzdHIgImJlcmthcyAnJS4yNTBzJyB0ZXJrb3J1cHNpIC0gbm9tb3IgYmFnaWFuIGJ1cnVrIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNTcKKyMsIGZ1enp5CisjfCBtc2dpZCAicGFja2FnZSBuYW1lIgorbXNnaWQgInBhY2thZ2UgYXJjaGl0ZWN0dXJlIgorbXNnc3RyICJuYW1hIHBha2V0IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIG1hZ2ljIGF0IGVuZCBvZiBzZWNvbmQgaGVhZGVyIgorbXNnc3RyICJiZXJrYXMgJyUuMjUwcycgdGVya29ydXBzaSAtICdtYWdpYycgYnVydWsgcGFkYSBha2hpciBoZWFkZXIga2VkdWEiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE2OAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBzZWNvbmQgbWVtYmVyIGlzIG5vdCBkYXRhIG1lbWJlciIKK21zZ3N0ciAiYmVya2FzICclLjI1MHMnIHRlcmtvcnVwc2kgLSBhbmdnb3RhIGtlZHVhIGJ1a2FuIGFuZ2dvdGEgZGF0YSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTc0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIHdyb25nIG51bWJlciBvZiBwYXJ0cyBmb3IgcXVvdGVkIHNpemVzIgorbXNnc3RyICIiCisiYmVya2FzICclLjI1MHMnIHRlcmtvcnVwc2kgLSBzYWxhaCBub21vciBiYWdpYW4gdW50dWsgdWt1cmFuIHlhbmcgdGVybWFrdHViIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gc2l6ZSBpcyB3cm9uZyBmb3IgcXVvdGVkIHBhcnQgbnVtYmVyIgorbXNnc3RyICJiZXJrYXMgJyUuMjUwcycgdGVya29ydXBzaSAtIHNhbGFoIHVrdXJhbiB1bnR1ayBub21vciBiYWdpYW4gdGVybWFrdHViIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxODQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZzdGF0IHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiZ2FnYWwgbWVuYXRhIHN0YXR1cyBiZXJrYXMgYmFnaWFuICclLjI1MHMnIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gdG9vIHNob3J0IgorbXNnc3RyICJiZXJrYXMgJyUuMjUwcycgdGVya29ydXBzaSAtIHRlcmxhbHUgcGVuZGVrIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyMDIgZHBrZy1zcGxpdC9pbmZvLmM6MjQ5CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBvcGVuIGFyY2hpdmUgcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJ0aWRhayBkYXBhdCBtZW1idWthIGJlcmthcyBiYWdpYW4gYXJzaXAgJyUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjIwNAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIG5vdCBhbiBhcmNoaXZlIHBhcnQiCittc2dzdHIgImJlcmthcyAnJS4yNTBzJyBidWthbiBzdWF0dSBiYWdpYW4gYXJzaXAiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjIwOQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiVzOlxuIgorI3wgIiAgICBQYXJ0IGZvcm1hdCB2ZXJzaW9uOiAgICAgICAgICAgICVzXG4iCisjfCAiICAgIFBhcnQgb2YgcGFja2FnZTogICAgICAgICAgICAgICAgJXNcbiIKKyN8ICIgICAgICAgIC4uLiB2ZXJzaW9uOiAgICAgICAgICAgICAgICAlc1xuIgorI3wgIiAgICAgICAgLi4uIE1ENSBjaGVja3N1bTogICAgICAgICAgICVzXG4iCisjfCAiICAgICAgICAuLi4gbGVuZ3RoOiAgICAgICAgICAgICAgICAgJWx1IGJ5dGVzXG4iCisjfCAiICAgICAgICAuLi4gc3BsaXQgZXZlcnk6ICAgICAgICAgICAgJWx1IGJ5dGVzXG4iCisjfCAiICAgIFBhcnQgbnVtYmVyOiAgICAgICAgICAgICAgICAgICAgJWQvJWRcbiIKKyN8ICIgICAgUGFydCBsZW5ndGg6ICAgICAgICAgICAgICAgICAgICAlemkgYnl0ZXNcbiIKKyN8ICIgICAgUGFydCBvZmZzZXQ6ICAgICAgICAgICAgICAgICAgICAlbHUgYnl0ZXNcbiIKKyN8ICIgICAgUGFydCBmaWxlIHNpemUgKHVzZWQgcG9ydGlvbik6ICAlbHUgYnl0ZXNcbiIKKyN8ICJcbiIKK21zZ2lkICIiCisiJXM6XG4iCisiICAgIFBhcnQgZm9ybWF0IHZlcnNpb246ICAgICAgICAgICAgJXNcbiIKKyIgICAgUGFydCBvZiBwYWNrYWdlOiAgICAgICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIHZlcnNpb246ICAgICAgICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gYXJjaGl0ZWN0dXJlOiAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiBNRDUgY2hlY2tzdW06ICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIGxlbmd0aDogICAgICAgICAgICAgICAgICVqZCBieXRlc1xuIgorIiAgICAgICAgLi4uIHNwbGl0IGV2ZXJ5OiAgICAgICAgICAgICVqZCBieXRlc1xuIgorIiAgICBQYXJ0IG51bWJlcjogICAgICAgICAgICAgICAgICAgICVkLyVkXG4iCisiICAgIFBhcnQgbGVuZ3RoOiAgICAgICAgICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgIFBhcnQgb2Zmc2V0OiAgICAgICAgICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgIFBhcnQgZmlsZSBzaXplICh1c2VkIHBvcnRpb24pOiAgJWpkIGJ5dGVzXG4iCisiXG4iCittc2dzdHIgIiIKKyIlczpcbiIKKyIgICAgVmVyc2kgZm9ybWF0IGJhZ2lhbjogICAgICAgICAgICAgICAgICAgICAgJXNcbiIKKyIgICAgQmFnaWFuLWJhZ2lhbiBwYWtldDogICAgICAgICAgICAgICAgICAgICAgJXNcbiIKKyIgICAgICAgICAuLi4gdmVyc2k6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJXNcbiIKKyIgICAgICAgICAuLi4gY2hlY2tzdW0gTUQ1OiAgICAgICAgICAgICAgICAgICAgJXNcbiIKKyIgICAgICAgICAuLi4gcGFuamFuZzogICAgICAgICAgICAgICAgICAgICAgICAgJWx1IGJ5dGVcbiIKKyIgICAgICAgICAuLi4gZGliYWdpIHNldGlhcDogICAgICAgICAgICAgICAgICAgJWx1IGJ5dGVcbiIKKyIgICAgTm9tb3IgYmFnaWFuOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJWQvJWRcbiIKKyIgICAgUGFuamFuZyBiYWdpYW46ICAgICAgICAgICAgICAgICAgICAgICAgICAgJXppIGJ5dGVcbiIKKyIgICAgT2Zmc2V0IGJhZ2lhbjogICAgICAgICAgICAgICAgICAgICAgICAgICAgJWx1IGJ5dGVcbiIKKyIgICAgVWt1cmFuIGJlcmthcyBiYWdpYW4gKHlhbmcgZGlndW5ha2FuKTogICAgJWx1IGJ5dGVcbiIKKyJcbiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjI1CisjLCBmdXp6eQorI3wgbXNnaWQgIjx1bmtub3duPiIKK21zZ2N0eHQgImFyY2hpdGVjdHVyZSIKK21zZ2lkICI8dW5rbm93bj4iCittc2dzdHIgIjx0YWsgZGlrZW5hbD4iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjI0NCBkcGtnLXNwbGl0L2pvaW4uYzoxMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyByZXF1aXJlcyBvbmUgb3IgbW9yZSBwYXJ0IGZpbGUgYXJndW1lbnRzIgorbXNnc3RyICItLSVzIGJ1dHVoIHNhdHUgYXRhdSBsZWJpaCBhcmd1bWVuIGJlcmthcyBiYWdpYW4iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjI1NQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlcycgaXMgbm90IGFuIGFyY2hpdmUgcGFydFxuIgorbXNnc3RyICJiZXJrYXMgJyVzJyBidWthbiBiYWdpYW4gZGFyaSBhcnNpcFxuIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo0NAorIywgYy1mb3JtYXQKK21zZ2lkICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0OiAiCittc2dpZF9wbHVyYWwgIlB1dHRpbmcgcGFja2FnZSAlcyB0b2dldGhlciBmcm9tICVkIHBhcnRzOiAiCittc2dzdHJbMF0gIk1lbmdnYWJ1bmdrYW4gcGFrZXQgJXMgamFkaSBzYXR1IGRhcmkgJWQgYmFnaWFuOiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gb3V0cHV0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgImdhZ2FsIG1lbWJ1a2EgYmVya2FzIGtlbHVhcmFuICclLjI1MHMnIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gKHJlKW9wZW4gaW5wdXQgcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJnYWdhbCBtZW1idWthIHVsYW5nIGJlcmthcyBiYWdpYW4gaW5wdXQgJyUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjU4CisjLCBmdXp6eQorI3wgbXNnaWQgIlNraXBwaW5nIGRlc2VsZWN0ZWQgcGFja2FnZSAlcy5cbiIKK21zZ2lkICJza2lwcGluZyBzcGxpdCBwYWNrYWdlIGhlYWRlciIKK21zZ3N0ciAiQWJhaWthbiBwYWtldCB5YW5nIHRhayBkaXBpbGloOiAlcy4gXG4iCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjU5CisjLCBmdXp6eQorI3wgbXNnaWQgIlB1dHRpbmcgcGFja2FnZSAlcyB0b2dldGhlciBmcm9tICVkIHBhcnQ6ICIKKyN8IG1zZ2lkX3BsdXJhbCAiUHV0dGluZyBwYWNrYWdlICVzIHRvZ2V0aGVyIGZyb20gJWQgcGFydHM6ICIKK21zZ2lkICJzcGxpdCBwYWNrYWdlIHBhcnQiCittc2dzdHIgIk1lbmdnYWJ1bmdrYW4gcGFrZXQgJXMgamFkaSBzYXR1IGRhcmkgJWQgYmFnaWFuOiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NjkgZHBrZy1zcGxpdC9zcGxpdC5jOjIzNworIywgYy1mb3JtYXQKK21zZ2lkICJkb25lXG4iCittc2dzdHIgInNlbGVzYWkuXG4iCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjg1CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGVzIGAlLjI1MHMnIGFuZCBgJS4yNTBzJyBhcmUgbm90IHBhcnRzIG9mIHRoZSBzYW1lIGZpbGUiCittc2dzdHIgImJlcmthcyAnJS4yNTBzJyBkYW4gJyUuMjUwcycgYnVrYW4gYmFnaWFuIGRhcmkgYmVya2FzIHlhbmcgc2FtYSIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAidGhlcmUgYXJlIHNldmVyYWwgdmVyc2lvbnMgb2YgcGFydCAlZCAtIGF0IGxlYXN0IGAlLjI1MHMnIGFuZCBgJS4yNTBzJyIKK21zZ3N0ciAiYWRhIGJlYmVyYXBhIHZlcnNpIGRhcmkgYmFnaWFuICVkIC0gc2V0aWRha255YSAnJS4yNTBzJyBkYW4gJyUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjEyOAorIywgYy1mb3JtYXQKK21zZ2lkICJwYXJ0ICVkIGlzIG1pc3NpbmciCittc2dzdHIgImJhZ2lhbiAlZCBoaWxhbmciCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjQ3CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiBgJXMnIHBhY2thZ2Ugc3BsaXQvam9pbiB0b29sOyB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICJQZXJrYWthcyBwZW1pc2FoL3BlbWFkdSBwYWtldCBEZWJpYW4gJyVzJzsgdmVyc2kgJXMuXG4iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIkNvcHlyaWdodCAoQykgMTk5NC0xOTk2IElhbiBKYWNrc29uLlxuIgorbXNnc3RyICJIYWsgQ2lwdGEgKEMpIDE5OTQtMTk5NiBJYW4gSmFja3Nvbi5cbiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6NjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLXN8LS1zcGxpdCA8ZmlsZT4gWzxwcmVmaXg+XSAgICAgU3BsaXQgYW4gYXJjaGl2ZS5cbiIKKyIgIC1qfC0tam9pbiA8cGFydD4gPHBhcnQ+IC4uLiAgICAgIEpvaW4gcGFydHMgdG9nZXRoZXIuXG4iCisiICAtSXwtLWluZm8gPHBhcnQ+IC4uLiAgICAgICAgICAgICBEaXNwbGF5IGluZm8gYWJvdXQgYSBwYXJ0LlxuIgorIiAgLWF8LS1hdXRvIC1vIDxjb21wbGV0ZT4gPHBhcnQ+ICAgQXV0by1hY2N1bXVsYXRlIHBhcnRzLlxuIgorIiAgLWx8LS1saXN0cSAgICAgICAgICAgICAgICAgICAgICAgTGlzdCB1bm1hdGNoZWQgcGllY2VzLlxuIgorIiAgLWR8LS1kaXNjYXJkIFs8ZmlsZW5hbWU+IC4uLl0gICAgRGlzY2FyZCB1bm1hdGNoZWQgcGllY2VzLlxuIgorIlxuIgorbXNnc3RyICIiCisiUGVyaW50YWg6XG4iCisiICAgLXN8LS1zcGxpdCA8YmVya2FzPiBbPGF3YWxhbj5dICAgQmVsYWggc2VidWFoIGFyc2lwLlxuIgorIiAgIC1qfC0tam9pbiA8YmFnaWFuPiA8YmFnaWFuPiAuLi4gIEdhYnVuZyBiYWdpYW4gamFkaSBzYXR1LlxuIgorIiAgIC1JfC0taW5mbyA8YmFnaWFuPiAgICAgICAgICAgICAgIExpaGF0IGluZm8gc3VhdHUgYmFnaWFuLlxuIgorIiAgIC1hfC0tYXV0byAtbyA8bGVuZ2thcD4gPGJhZ2lhbj4gIEt1bXB1bGthbiBiYWdpYW4gc2VjYXJhIG90b21hdGlzLlxuIgorIiAgIC1sfC0tbGlzdHEgICAgICAgICAgICAgICAgICAgICAgIExpaGF0IHBvdG9uZ2FuIHlhbmcgdGlkYWsgY29jb2suXG4iCisiICAgLWR8LS1kaXNjYXJkIFs8bmFtYWJlcmthcz4gLi4uXSAgQWJhaWthbiBwb3RvbmdhbiB5YW5nIHRpZGFrIGNvY29rLlxuIgorIlxuIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo4MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIk9wdGlvbnM6XG4iCisjfCAiICAtLWRlcG90ZGlyIDxkaXJlY3Rvcnk+ICAgICAgICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy8lcy5cbiIKKyN8ICIgIC1TfC0tcGFydHNpemUgPHNpemU+ICAgICAgICAgICAgIEluIEtpQiwgZm9yIC1zIChkZWZhdWx0IGlzIDQ1MCkuXG4iCisjfCAiICAtb3wtLW91dHB1dCA8ZmlsZT4gICAgICAgICAgICAgICBGb3IgLWogKGRlZmF1bHQgaXMgPHBhY2thZ2U+LTx2ZXJzaW9uPi4iCisjfCAiZGViKS5cbiIKKyN8ICIgIC1RfC0tbnBxdWlldCAgICAgICAgICAgICAgICAgICAgIEJlIHF1aWV0IHdoZW4gLWEgaXMgbm90IGEgcGFydC5cbiIKKyN8ICIgIC0tbXNkb3MgICAgICAgICAgICAgICAgICAgICAgICAgIEdlbmVyYXRlIDguMyBmaWxlbmFtZXMuXG4iCisjfCAiXG4iCisjfCAiRXhpdCBzdGF0dXM6IDAgPSBPSzsgIDEgPSAtYSBpcyBub3QgYSBwYXJ0OyAgMiA9IHRyb3VibGUhXG4iCittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWRlcG90ZGlyIDxkaXJlY3Rvcnk+ICAgICAgICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy8lcy5cbiIKKyIgIC1TfC0tcGFydHNpemUgPHNpemU+ICAgICAgICAgICAgIEluIEtpQiwgZm9yIC1zIChkZWZhdWx0IGlzIDQ1MCkuXG4iCisiICAtb3wtLW91dHB1dCA8ZmlsZT4gICAgICAgICAgICAgICBGaWxlbmFtZSwgZm9yIC1qIChkZWZhdWx0IGlzXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYWNrYWdlPl88dmVyc2lvbj5fPGFyY2g+LmRlYikuXG4iCisiICAtUXwtLW5wcXVpZXQgICAgICAgICAgICAgICAgICAgICBCZSBxdWlldCB3aGVuIC1hIGlzIG5vdCBhIHBhcnQuXG4iCisiICAtLW1zZG9zICAgICAgICAgICAgICAgICAgICAgICAgICBHZW5lcmF0ZSA4LjMgZmlsZW5hbWVzLlxuIgorIlxuIgorbXNnc3RyICIiCisiUGlsaWhhbjpcbiIKKyIgICAtLWRlcG90ZGlyIDxkaXJla3Rvcmk+ICAgICAgICBHdW5ha2FuIDxkaXJla3Rvcmk+LCBidWthbiAlcy8lcy5cbiIKKyIgICAtU3wtLXBhcnRzaXplIDxiZXNhcj4gICAgICAgICBEYWxhbSBLaUIsIHVudHVrIC1zIChiYWt1IGFkYWxhaCA0NTApLlxuIgorIiAgIC1vfC0tb3V0cHV0IDxiZXJrYXM+ICAgICAgICAgIFVudHVrIC1qIChiYWt1IGFkYWxhaCA8cGFrZXQ+LTx2ZXJzaT4uIgorImRlYikuXG4iCisiICAgLVF8LS1ucHF1aWV0ICAgICAgICAgICAgICAgICAgTW9kdXMgc2VueWFwIGJpbGEgLWEgYnVrYW4gc3VhdHUgYmFnaWFuLlxuIgorIiAgIC0tbXNkb3MgICAgICAgICAgICAgICAgICAgICAgIEJ1YXQgbmFtYSBiZXJrYXMgYmVyZm9ybWF0IDguMyAoTVNET1MpLlxuIgorIlxuIgorIlN0YXR1cyBrZWx1YXJhbjogMCA9IEJlcmVzOyAxID0gLWEgYnVrYSBzdWF0dSBiYWdpYW47IDIgPSBhZGEgbWFzYWxhaCFcbiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6OTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkV4aXQgc3RhdHVzOlxuIgorIiAgMCA9IG9rXG4iCisiICAxID0gd2l0aCAtLWF1dG8sIGZpbGUgaXMgbm90IGEgcGFydFxuIgorIiAgMiA9IHRyb3VibGVcbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMDMKK21zZ2lkICJUeXBlIGRwa2ctc3BsaXQgLS1oZWxwIGZvciBoZWxwLiIKK21zZ3N0ciAiS2V0aWsgJ2Rwa2ctc3BsaXQgLS1oZWxwJyB1bnR1ayBwYW5kdWFuIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgZmlsZSBpbiAlLjI1MHMiCittc2dzdHIgImFraGlyYW4gYmVya2FzIGRhbGFtICUuMjUwcyB0aWRhayBkaWhhcmFwa2FuIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMjYKK21zZ2lkICJwYXJ0IHNpemUgaXMgZmFyIHRvbyBsYXJnZSBvciBpcyBub3QgcG9zaXRpdmUiCittc2dzdHIgInVrdXJhbiBiYWdpYW4gdGVybGFtcGF1IGJlc2FyIGF0YXUgdGlkYWsgcG9zaXRpZiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6MTMwCisjLCBjLWZvcm1hdAorbXNnaWQgInBhcnQgc2l6ZSBtdXN0IGJlIGF0IGxlYXN0ICVkIEtpQiAodG8gYWxsb3cgZm9yIGhlYWRlcikiCittc2dzdHIgInVrdXJhbiBiYWdpYW4gaGFydXMgc2VrdXJhbmdueWEgJWQgS2lCICh0ZXJtYXN1ayBoZWFkZXIpIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgZGVwb3QgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICJnYWdhbCBtZW1iYWNhIGRpcmVrdG9yaSAnZGVwb3QnICclLjI1MHMnIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTM0Cittc2dpZCAiLS1hdXRvIHJlcXVpcmVzIHRoZSB1c2Ugb2YgdGhlIC0tb3V0cHV0IG9wdGlvbiIKK21zZ3N0ciAiLS1hdXRvIGJ1dHVoIHBlbmdndW5hYW4gcGlsaWhhbiAtLW91dHB1dCIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjEzNgorbXNnaWQgIi0tYXV0byByZXF1aXJlcyBleGFjdGx5IG9uZSBwYXJ0IGZpbGUgYXJndW1lbnQiCittc2dzdHIgIi0tYXV0byBidXR1aCB0ZXBhdCBzYXR1IGFyZ3VtZW4gYmVya2FzIGJhZ2lhbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE0MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgImdhZ2FsIG1lbWJhY2EgYmVya2FzIGJhZ2lhbiAnJS4yNTBzJyIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE0MworIywgYy1mb3JtYXQKK21zZ2lkICJGaWxlIGAlLjI1MHMnIGlzIG5vdCBwYXJ0IG9mIGEgbXVsdGlwYXJ0IGFyY2hpdmUuXG4iCittc2dzdHIgIkJlcmthcyAnJS4yNTBzJyBidWthbiBiYWdpYW4gZGFyaSBhcnNpcCBiYW55YWstYmFnaWFuLlxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTc5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW9wZW4gcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJnYWdhbCBtZW1idWthIHVsYW5nIGJlcmthcyBiYWdpYW4gJyUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxODIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gbmV3IGRlcG90IGZpbGUgYCUuMjUwcyciCittc2dzdHIgImdhZ2FsIG1lbWJ1a2EgYmVya2FzICdkZXBvdCcgJyUuMjUwcycgeWFuZyBiYXJ1IgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTg0Cittc2dpZCAiZXh0cmFjdGluZyBzcGxpdCBwYXJ0IgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbmFtZSBuZXcgZGVwb3QgZmlsZSBgJS4yNTBzJyB0byBgJS4yNTBzJyIKK21zZ3N0ciAiZ2FnYWwgbWVuZ2dhbnRpIG5hbWEgYmVya2FzICdkZXBvdCcgJyUuMjUwcycgeWFuZyBiYXJ1IGtlICclLjI1MHMnIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTk2CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhcnQgJWQgb2YgcGFja2FnZSAlcyBmaWxlZCAoc3RpbGwgd2FudCAiCittc2dzdHIgIkJhZ2lhbiAlZCBkYXJpIHBha2V0ICVzIHRlbGFoIGRpYmVya2Fza2FuIChtYXNpaCBpbmdpbiAiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyMDAKK21zZ2lkICIgYW5kICIKK21zZ3N0ciAiIGRhbiAiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSB1c2VkLXVwIGRlcG90IGZpbGUgYCUuMjUwcyciCittc2dzdHIgImdhZ2FsIG1lbmdoYXB1cyBiZXJrYXMgJ2RlcG90JyAnJS4yNTBzJyB5YW5nIHRlbGFoIHRlcnBha2FpIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjM1Cittc2dpZCAiSnVuayBmaWxlcyBsZWZ0IGFyb3VuZCBpbiB0aGUgZGVwb3QgZGlyZWN0b3J5OlxuIgorbXNnc3RyICJCZXJrYXMtYmVya2FzIHNhbXBhaCB5YW5nIHRlcnRpbmdnYWwgZGkgZGFsYW0gZGlyZWt0b3JpICdkZXBvdCc6IFxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjQwIGRwa2ctc3BsaXQvcXVldWUuYzoyNjkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgYCUuMjUwcyciCittc2dzdHIgImdhZ2FsIG1lbmF0YSBzdGF0dXMgJyUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNDMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiAlcyAoJWx1IGJ5dGVzKVxuIgorbXNnaWQgIiAlcyAoJWpkIGJ5dGVzKVxuIgorbXNnc3RyICIlcyAoJWx1IGJ5dGVzKVxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAlcyAobm90IGEgcGxhaW4gZmlsZSlcbiIKK21zZ3N0ciAiJXMgKGJ1a2FuIGJlcmthcyBiaWFzYSlcbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI1MAorbXNnaWQgIlBhY2thZ2VzIG5vdCB5ZXQgcmVhc3NlbWJsZWQ6XG4iCittc2dzdHIgIlBha2V0IGJlbHVtIGRpc3VzdW4gdWxhbmc6IFxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjU4CisjLCBjLWZvcm1hdAorbXNnaWQgIiBQYWNrYWdlICVzOiBwYXJ0KHMpICIKK21zZ3N0ciAiUGFrZXQgJXM6IGJhZ2lhbiAiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFydCBmaWxlIGAlLjI1MHMnIGlzIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgImJlcmthcyBiYWdpYW4gJyUuMjUwcycgYnVrYW4gc3VhdHUgYmVya2FzIGJpYXNhIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6Mjc4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIodG90YWwgJWx1IGJ5dGVzKVxuIgorbXNnaWQgIih0b3RhbCAlamQgYnl0ZXMpXG4iCittc2dzdHIgIihzZWx1cnVobnlhICVsdSBiaXRhKVxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MzA0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkaXNjYXJkIGAlLjI1MHMnIgorbXNnc3RyICJnYWdhbCBtZW5nYWJhaWthbiAnJS4yNTBzJyIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjMwNQorIywgYy1mb3JtYXQKK21zZ2lkICJEZWxldGVkICVzLlxuIgorbXNnc3RyICIlcyB0ZWxhaCBkaWhhcHVzLlxuIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6NzAgZHBrZy1zcGxpdC9zcGxpdC5jOjc2IGRwa2ctc3BsaXQvc3BsaXQuYzo4MQorIywgZnV6enkKKyN8IG1zZ2lkICJkcGtnLWRlYiBmaWVsZCBleHRyYWN0aW9uIgorbXNnaWQgInBhY2thZ2UgZmllbGQgdmFsdWUgZXh0cmFjdGlvbiIKK21zZ3N0ciAiZHBrZy1kZWIgcGVuZ3VyYWlhbiBydWFzIGlzaWFuIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTMxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIHNvdXJjZSBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJnYWdhbCBtZW1idWthIGJlcmthcyBzdW1iZXIgJyUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxMzMKK21zZ2lkICJ1bmFibGUgdG8gZnN0YXQgc291cmNlIGZpbGUiCittc2dzdHIgIkdhZ2FsIG1lbmF0YSBzdGF0dXMgYmVya2FzIHN1bWJlciIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjEzNQorIywgYy1mb3JtYXQKK21zZ2lkICJzb3VyY2UgZmlsZSBgJS4yNTBzJyBub3QgYSBwbGFpbiBmaWxlIgorbXNnc3RyICJiZXJrYXMgc3VtYmVyICclLjI1MHMnIGJ1a2FuIHN1YXR1IGJlcmthcyBiaWFzYSIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjE1MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiUHV0dGluZyBwYWNrYWdlICVzIHRvZ2V0aGVyIGZyb20gJWQgcGFydDogIgorI3wgbXNnaWRfcGx1cmFsICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0czogIgorbXNnaWQgIlNwbGl0dGluZyBwYWNrYWdlICVzIGludG8gJWQgcGFydDogIgorbXNnaWRfcGx1cmFsICJTcGxpdHRpbmcgcGFja2FnZSAlcyBpbnRvICVkIHBhcnRzOiAiCittc2dzdHJbMF0gIk1lbmdnYWJ1bmdrYW4gcGFrZXQgJXMgamFkaSBzYXR1IGRhcmkgJWQgYmFnaWFuOiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjE5MworbXNnaWQgIiIKKyJIZWFkZXIgaXMgdG9vIGxvbmcsIG1ha2luZyBwYXJ0IHRvbyBsb25nLiBZb3VyIHBhY2thZ2UgbmFtZSBvciB2ZXJzaW9uXG4iCisibnVtYmVycyBtdXN0IGJlIGV4dHJhb3JkaW5hcmlseSBsb25nLCBvciBzb21ldGhpbmcuIEdpdmluZyB1cC5cbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MjQ5Cittc2dpZCAiLS1zcGxpdCBuZWVkcyBhIHNvdXJjZSBmaWxlbmFtZSBhcmd1bWVudCIKK21zZ3N0ciAiLS1zcGxpdCBidXR1aCBzdWF0dSBhcmd1bWVuIG5hbWEgYmVya2FzIHN1bWJlciIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjI1MgorbXNnaWQgIi0tc3BsaXQgdGFrZXMgYXQgbW9zdCBhIHNvdXJjZSBmaWxlbmFtZSBhbmQgZGVzdGluYXRpb24gcHJlZml4IgorbXNnc3RyICItLXNwbGl0IGJ1dHVoIHBhbGluZyBiYW55YWsgc2F0dSBuYW1hIGJlcmthcyBzdW1iZXIgZGFuIGF3YWxhbiB0dWp1YW4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo4NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMC0yMDAyIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDA5LTIwMTAgUmFwaGFlbCBIZXJ0em9nLlxuIgorbXNnc3RyICIiCisiSGFrIENpcHRhIChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorIkhhayBDaXB0YSAoQykgMjAwMC0yMDAyIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiSGFrIENpcHRhIChDKSAyMDA5LTIwMTAgUmFwaGFlbCBIZXJ0em9nLlxuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTAxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIDxjb21tYW5kPlxuIgorI3wgIlxuIgorI3wgIkNvbW1hbmRzOlxuIgorI3wgIiAgLS1pbnN0YWxsIDxsaW5rPiA8bmFtZT4gPHBhdGg+IDxwcmlvcml0eT5cbiIKKyN8ICIgICAgWy0tc2xhdmUgPGxpbms+IDxuYW1lPiA8cGF0aD5dIC4uLlxuIgorI3wgIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGFkZCBhIGdyb3VwIG9mIGFsdGVybmF0aXZlcyB0byB0aGUgc3lzdGVtLlxuIgorI3wgIiAgLS1yZW1vdmUgPG5hbWU+IDxwYXRoPiAgIHJlbW92ZSA8cGF0aD4gZnJvbSB0aGUgPG5hbWU+IGdyb3VwICIKKyN8ICJhbHRlcm5hdGl2ZS5cbiIKKyN8ICIgIC0tcmVtb3ZlLWFsbCA8bmFtZT4gICAgICByZW1vdmUgPG5hbWU+IGdyb3VwIGZyb20gdGhlIGFsdGVybmF0aXZlcyAiCisjfCAic3lzdGVtLlxuIgorI3wgIiAgLS1hdXRvIDxuYW1lPiAgICAgICAgICAgIHN3aXRjaCB0aGUgbWFzdGVyIGxpbmsgPG5hbWU+IHRvIGF1dG9tYXRpYyAiCisjfCAibW9kZS5cbiIKKyN8ICIgIC0tZGlzcGxheSA8bmFtZT4gICAgICAgICBkaXNwbGF5IGluZm9ybWF0aW9uIGFib3V0IHRoZSA8bmFtZT4gZ3JvdXAuXG4iCisjfCAiICAtLXF1ZXJ5IDxuYW1lPiAgICAgICAgICAgbWFjaGluZSBwYXJzZWFibGUgdmVyc2lvbiBvZiAtLWRpc3BsYXkgIgorI3wgIjxuYW1lPi5cbiIKKyN8ICIgIC0tbGlzdCA8bmFtZT4gICAgICAgICAgICBkaXNwbGF5IGFsbCB0YXJnZXRzIG9mIHRoZSA8bmFtZT4gZ3JvdXAuXG4iCisjfCAiICAtLWNvbmZpZyA8bmFtZT4gICAgICAgICAgc2hvdyBhbHRlcm5hdGl2ZXMgZm9yIHRoZSA8bmFtZT4gZ3JvdXAgYW5kIGFzayAiCisjfCAidGhlXG4iCisjfCAiICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlciB0byBzZWxlY3Qgd2hpY2ggb25lIHRvIHVzZS5cbiIKKyN8ICIgIC0tc2V0IDxuYW1lPiA8cGF0aD4gICAgICBzZXQgPHBhdGg+IGFzIGFsdGVybmF0aXZlIGZvciA8bmFtZT4uXG4iCisjfCAiICAtLWFsbCAgICAgICAgICAgICAgICAgICAgY2FsbCAtLWNvbmZpZyBvbiBhbGwgYWx0ZXJuYXRpdmVzLlxuIgorI3wgIlxuIgorI3wgIjxsaW5rPiBpcyB0aGUgc3ltbGluayBwb2ludGluZyB0byAlcy88bmFtZT4uXG4iCisjfCAiICAoZS5nLiAvdXNyL2Jpbi9wYWdlcilcbiIKKyN8ICI8bmFtZT4gaXMgdGhlIG1hc3RlciBuYW1lIGZvciB0aGlzIGxpbmsgZ3JvdXAuXG4iCisjfCAiICAoZS5nLiBwYWdlcilcbiIKKyN8ICI8cGF0aD4gaXMgdGhlIGxvY2F0aW9uIG9mIG9uZSBvZiB0aGUgYWx0ZXJuYXRpdmUgdGFyZ2V0IGZpbGVzLlxuIgorI3wgIiAgKGUuZy4gL3Vzci9iaW4vbGVzcylcbiIKKyN8ICI8cHJpb3JpdHk+IGlzIGFuIGludGVnZXI7IG9wdGlvbnMgd2l0aCBoaWdoZXIgbnVtYmVycyBoYXZlIGhpZ2hlciAiCisjfCAicHJpb3JpdHkgaW5cbiIKKyN8ICIgIGF1dG9tYXRpYyBtb2RlLlxuIgorI3wgIlxuIgorI3wgIk9wdGlvbnM6XG4iCisjfCAiICAtLWFsdGRpciA8ZGlyZWN0b3J5PiAgICAgY2hhbmdlIHRoZSBhbHRlcm5hdGl2ZXMgZGlyZWN0b3J5LlxuIgorI3wgIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIGNoYW5nZSB0aGUgYWRtaW5pc3RyYXRpdmUgZGlyZWN0b3J5LlxuIgorI3wgIiAgLS1za2lwLWF1dG8gICAgICAgICAgICAgIHNraXAgcHJvbXB0IGZvciBhbHRlcm5hdGl2ZXMgY29ycmVjdGx5ICIKKyN8ICJjb25maWd1cmVkXG4iCisjfCAiICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gYXV0b21hdGljIG1vZGUgKHJlbGV2YW50IGZvciAtLWNvbmZpZyAiCisjfCAib25seSlcbiIKKyN8ICIgIC0tdmVyYm9zZSAgICAgICAgICAgICAgICB2ZXJib3NlIG9wZXJhdGlvbiwgbW9yZSBvdXRwdXQuXG4iCisjfCAiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgcXVpZXQgb3BlcmF0aW9uLCBtaW5pbWFsIG91dHB1dC5cbiIKKyN8ICIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorI3wgIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLS1pbnN0YWxsIDxsaW5rPiA8bmFtZT4gPHBhdGg+IDxwcmlvcml0eT5cbiIKKyIgICAgWy0tc2xhdmUgPGxpbms+IDxuYW1lPiA8cGF0aD5dIC4uLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGFkZCBhIGdyb3VwIG9mIGFsdGVybmF0aXZlcyB0byB0aGUgc3lzdGVtLlxuIgorIiAgLS1yZW1vdmUgPG5hbWU+IDxwYXRoPiAgIHJlbW92ZSA8cGF0aD4gZnJvbSB0aGUgPG5hbWU+IGdyb3VwIGFsdGVybmF0aXZlLlxuIgorIiAgLS1yZW1vdmUtYWxsIDxuYW1lPiAgICAgIHJlbW92ZSA8bmFtZT4gZ3JvdXAgZnJvbSB0aGUgYWx0ZXJuYXRpdmVzICIKKyJzeXN0ZW0uXG4iCisiICAtLWF1dG8gPG5hbWU+ICAgICAgICAgICAgc3dpdGNoIHRoZSBtYXN0ZXIgbGluayA8bmFtZT4gdG8gYXV0b21hdGljIG1vZGUuXG4iCisiICAtLWRpc3BsYXkgPG5hbWU+ICAgICAgICAgZGlzcGxheSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgPG5hbWU+IGdyb3VwLlxuIgorIiAgLS1xdWVyeSA8bmFtZT4gICAgICAgICAgIG1hY2hpbmUgcGFyc2VhYmxlIHZlcnNpb24gb2YgLS1kaXNwbGF5IDxuYW1lPi5cbiIKKyIgIC0tbGlzdCA8bmFtZT4gICAgICAgICAgICBkaXNwbGF5IGFsbCB0YXJnZXRzIG9mIHRoZSA8bmFtZT4gZ3JvdXAuXG4iCisiICAtLWdldC1zZWxlY3Rpb25zICAgICAgICAgbGlzdCBtYXN0ZXIgYWx0ZXJuYXRpdmUgbmFtZXMgYW5kIHRoZWlyIHN0YXR1cy5cbiIKKyIgIC0tc2V0LXNlbGVjdGlvbnMgICAgICAgICByZWFkIGFsdGVybmF0aXZlIHN0YXR1cyBmcm9tIHN0YW5kYXJkIGlucHV0LlxuIgorIiAgLS1jb25maWcgPG5hbWU+ICAgICAgICAgIHNob3cgYWx0ZXJuYXRpdmVzIGZvciB0aGUgPG5hbWU+IGdyb3VwIGFuZCBhc2sgIgorInRoZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzZXIgdG8gc2VsZWN0IHdoaWNoIG9uZSB0byB1c2UuXG4iCisiICAtLXNldCA8bmFtZT4gPHBhdGg+ICAgICAgc2V0IDxwYXRoPiBhcyBhbHRlcm5hdGl2ZSBmb3IgPG5hbWU+LlxuIgorIiAgLS1hbGwgICAgICAgICAgICAgICAgICAgIGNhbGwgLS1jb25maWcgb24gYWxsIGFsdGVybmF0aXZlcy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIlBpbGloYW46ICVzIFs8cGlsaWhhbj4gLi4uXSA8cGVyaW50YWg+XG4iCisiXG4iCisiUGVyaW50YWg6XG4iCisiICAgLS1pbnN0YWxsIDxuYXJhPiA8bmFtYT4gPHBhdGg+IDxwcmlvcml0YXM+XG4iCisiICAgICBbLS1zbGF2ZSA8bmFyYT4gPG5hbWE+IDxwYXRoPl0gLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRhbWJhaCBzZWJ1YWggZ3J1cCBhbHRlcm5hdGlmIGtlIHNpc3RlbS5cbiIKKyIgICAtLXJlbW92ZSA8bmFtZT4gPHBhdGg+ICAgaGFwdXMgPHBhdGg+IGRhcmkgZ3J1cCBhbHRlcm5hdGlmIDxuYW1hPi5cbiIKKyIgICAtLXJlbW92ZS1hbGwgPG5hbWE+ICAgICAgaGFwdXMgZ3J1cCA8bmFtYT4gZGFyaSBzaXN0ZW0gYWx0ZXJuYXRpZi5cbiIKKyIgICAtLWF1dG8gPG5hbWU+ICAgICAgICAgICAgZ2FudGkgbmFyYSB1dGFtYSA8bmFtYT4ga2UgbW9kdXMgb3RvbWF0aXMuXG4iCisiICAgLS1kaXNwbGF5IDxuYW1hPiAgICAgICAgIGxpaGF0IGluZm9ybWFzaSB0ZW50YW5nIGdydXAgPG5hbWE+LlxuIgorIiAgIC0tcXVlcnkgPG5hbWE+ICAgICAgICAgICB2ZXJzaSAtLWRpc3BsYXkgPG5hbWE+IHlhbmcgZGlwYWhhbWkgbWVzaW4uXG4iCisiICAgLS1saXN0IDxuYW1hPiAgICAgICAgICAgIGxpaGF0IHNlbXVhIHRhcmdldCBkYXJpIGdydXAgPG5hbWE+LlxuIgorIiAgIC0tY29uZmlnIDxuYW1hPiAgICAgICAgICBsaWhhdCBzZW11YSBhbHRlcm5hdGlmIHVudHVrIGdydXAgPG5hbWE+IGRhbiAiCisidGFueWFcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGVuZ2d1bmEgdW50dWsgbWVtaWxpaCBzYWxhaCBzYXR1bnlhLlxuIgorIiAgIC0tc2V0IDxuYW1hPiA8cGF0aD4gICAgICB0ZXRhcGthbiA8cGF0aD4gc2ViYWdhaSBhbHRlcm5hdGlmIHVudHVrICIKKyI8bmFtYT4uXG4iCisiICAgLS1hbGwgICAgICAgICAgICAgICAgICAgIGphbGFua2FuIC0tY29uZmlnIHVudHVrIHNlbXVhIGFsdGVybmF0aWYuXG4iCisiXG4iCisiPG5hcmE+IGFkYWxhaCBuYXJhIHNpbWJvbGlrIHlhbmcgbWVuZ2FjdSBrZSAlcy88bmFtYT4uXG4iCisiICAgIChtaXMuIC91c3IvYmluL3BhZ2VyKVxuIgorIjxuYW1hPiBhZGFsYWggbmFtYSB1dGFtYSB1bnR1ayBncnVwIG5hcmEgaW5pLlxuIgorIiAgICAobWlzLiBwYWdlcilcbiIKKyI8cGF0aD4gYWRhbGFoIGxva2FzaSBzYWxhaCBzYXR1IGRhcmkgYmVya2FzIHRhcmdldCBhbHRlcm5hdGlmLlxuIgorIiAgICAobWlzLiAvdXNyL2Jpbi9sZXNzKVxuIgorIjxwcmlvcml0YXM+IGFkYWxhaCBzdWF0dSBiaWxhbmdhbiBidWxhdDsgcGlsaWhhbiBkZW5nYW4gYW5na2EgbGViaWggdGluZ2dpIFxuIgorIiAgICBtZW1pbGlraSBwcmlvcml0YXMgbGViaWggdGluZ2dpIGRhbGFtIG1vZHVzIG90b21hdGlzLlxuIgorIlxuIgorIlBpbGloYW46XG4iCisiICAgLS1hbHRkaXIgPGRpcmVrdG9yaT4gICAgIFViYWggZGlyZWt0b3JpIGFsdGVybmF0aWYuXG4iCisiICAgLS1hZG1pbmRpciA8ZGlyZWt0b3JpPiAgIFViYWggZGlyZWt0b3JpIGFkbWluaXN0cmF0aWYuXG4iCisiICAgLS1za2lwLWF1dG8gICAgICAgICAgICAgIExld2F0aSBwcm9tcHQgdW50dWsgYWx0ZXJuYXRpZiB5YW5nICIKKyJ0ZXJrb25maWd1cmFzaVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZW5nYW4gYmVuYXIgZGFsYW0gbW9kdXMgb3RvbWF0aXMgKGhhbnlhICIKKyJyZWxldmFuXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVudHVrIC0tY29uZmlnKVxuIgorIiAgIC0tdmVyYm9zZSAgICAgICAgICAgICAgICBPcGVyYXNpIHJhbWFpLCBrZWx1YXJhbiBsZWJpaCBiYW55YWsuXG4iCisiICAgLS1xdWlldCAgICAgICAgICAgICAgICAgIE9wZXJhc2kgc2VueWFwLCBrZWx1YXJhbiBtaW5pbWFsLlxuIgorIiAgIC0taGVscCAgICAgICAgICAgICAgICAgICBMaWhhdCBwZXNhbiBiYW50dWFuIGluaS5cbiIKKyIgICAtLXZlcnNpb24gICAgICAgICAgICAgICAgTGloYXQgdmVyc2kuICBcbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiPGxpbms+IGlzIHRoZSBzeW1saW5rIHBvaW50aW5nIHRvICVzLzxuYW1lPi5cbiIKKyIgIChlLmcuIC91c3IvYmluL3BhZ2VyKVxuIgorIjxuYW1lPiBpcyB0aGUgbWFzdGVyIG5hbWUgZm9yIHRoaXMgbGluayBncm91cC5cbiIKKyIgIChlLmcuIHBhZ2VyKVxuIgorIjxwYXRoPiBpcyB0aGUgbG9jYXRpb24gb2Ygb25lIG9mIHRoZSBhbHRlcm5hdGl2ZSB0YXJnZXQgZmlsZXMuXG4iCisiICAoZS5nLiAvdXNyL2Jpbi9sZXNzKVxuIgorIjxwcmlvcml0eT4gaXMgYW4gaW50ZWdlcjsgb3B0aW9ucyB3aXRoIGhpZ2hlciBudW1iZXJzIGhhdmUgaGlnaGVyIHByaW9yaXR5ICIKKyJpblxuIgorIiAgYXV0b21hdGljIG1vZGUuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzMQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIk9wdGlvbnM6XG4iCisjfCAiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgc2V0IHRoZSBkaXJlY3Rvcnkgd2l0aCB0aGUgc3RhdG92ZXJyaWRlIGZpbGUuXG4iCisjfCAiICAtLXVwZGF0ZSAgICAgICAgICAgICAgICAgaW1tZWRpYXRlbHkgdXBkYXRlIGZpbGUgcGVybWlzc2lvbnMuXG4iCisjfCAiICAtLWZvcmNlICAgICAgICAgICAgICAgICAgZm9yY2UgYW4gYWN0aW9uIGV2ZW4gaWYgYSBzYW5pdHkgY2hlY2sgZmFpbHMuXG4iCisjfCAiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgcXVpZXQgb3BlcmF0aW9uLCBtaW5pbWFsIG91dHB1dC5cbiIKKyN8ICIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorI3wgIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisjfCAiXG4iCittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFsdGRpciA8ZGlyZWN0b3J5PiAgICAgY2hhbmdlIHRoZSBhbHRlcm5hdGl2ZXMgZGlyZWN0b3J5LlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIGNoYW5nZSB0aGUgYWRtaW5pc3RyYXRpdmUgZGlyZWN0b3J5LlxuIgorIiAgLS1sb2cgPGZpbGU+ICAgICAgICAgICAgIGNoYW5nZSB0aGUgbG9nIGZpbGUuXG4iCisiICAtLWZvcmNlICAgICAgICAgICAgICAgICAgYWxsb3cgcmVwbGFjaW5nIGZpbGVzIHdpdGggYWx0ZXJuYXRpdmUgbGlua3MuXG4iCisiICAtLXNraXAtYXV0byAgICAgICAgICAgICAgc2tpcCBwcm9tcHQgZm9yIGFsdGVybmF0aXZlcyBjb3JyZWN0bHkgIgorImNvbmZpZ3VyZWRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBhdXRvbWF0aWMgbW9kZSAocmVsZXZhbnQgZm9yIC0tY29uZmlnIG9ubHkpXG4iCisiICAtLXZlcmJvc2UgICAgICAgICAgICAgICAgdmVyYm9zZSBvcGVyYXRpb24sIG1vcmUgb3V0cHV0LlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHF1aWV0IG9wZXJhdGlvbiwgbWluaW1hbCBvdXRwdXQuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorbXNnc3RyICIiCisiUGlsaWhhbjpcbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVrdG9yaT4gICBidWF0IGRpcmVrdG9yaSBkZW5nYW4gYmVya2FzICdzdGF0b3ZlcnJpZGUnLlxuIgorIiAgLS11cGRhdGUgICAgICAgICAgICAgICAgIHNlZ2FyYSBtdXRha2hpcmthbiBwZXJpemluYW4gYmVya2FzLlxuIgorIiAgLS1mb3JjZSAgICAgICAgICAgICAgICAgIHBha3Nha2FuIHN1YXR1IHRpbmRha2FuIGFwYXB1biB5YW5nIHRlcmphZGkuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgb3BlcmFzaSBzZW55YXAsIGtlbHVhcmFuIG1pbmltYWwuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgbGloYXQgcGVzYW4gYmFudHVhbiBpbmkuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgbGloYXQgdmVyc2kuXG4iCisiXG4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE2MworbXNnaWQgImVycm9yIgorbXNnc3RyICJnYWxhdCBwcm9zZXMgJ3BhcnNlJyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE5MworbXNnaWQgIndhcm5pbmciCittc2dzdHIgIlBFUklOR0FUQU4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzozNTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidHdvIGNvbW1hbmRzIHNwZWNpZmllZDogLS0lcyBhbmQgLS0lcyIKK21zZ3N0ciAiZHVhIHBlcmludGFoIGRpYmVyaWthbjogLS0lcyBkYW4gLS0lcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjM4NworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiY2Fubm90IGFwcGVuZCB0byAlczogJXMiCittc2dpZCAiY2Fubm90IGFwcGVuZCB0byAnJXMnIgorbXNnc3RyICJnYWdhbCBtZW5hbWJhaGthbiBrZSAlczogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo1NTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byByZW1vdmUgJXM6ICVzIgorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgJyVzJyIKK21zZ3N0ciAiZ2FnYWwgbWVtYnVhbmcgJXM6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTExMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBmaWxlIHdoaWxlIHRyeWluZyB0byByZWFkICVzIgorbXNnc3RyICJha2hpciBiZXJrYXMgdGFrIHRlcmR1Z2Egc2FhdCBtZW1iYWNhICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTExMworIywgYy1mb3JtYXQKK21zZ2lkICJ3aGlsZSByZWFkaW5nICVzOiAlcyIKK21zZ3N0ciAic2FhdCBtZW1iYWNhICVzOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMTkKKyMsIGMtZm9ybWF0Cittc2dpZCAibGluZSBub3QgdGVybWluYXRlZCB3aGlsZSB0cnlpbmcgdG8gcmVhZCAlcyIKK21zZ3N0ciAiYmFyaXMgdGlkYWsgZGlha2hpcmkgc2FhdCBtZW1iYWNhICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTEzNworIywgYy1mb3JtYXQKK21zZ2lkICIlcyBjb3JydXB0OiAlcyIKK21zZ3N0ciAiJXMgdGVya29ydXBzaTogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTUwCisjLCBjLWZvcm1hdAorbXNnaWQgIm5ld2xpbmVzIHByb2hpYml0ZWQgaW4gdXBkYXRlLWFsdGVybmF0aXZlcyBmaWxlcyAoJXMpIgorbXNnc3RyICJiYXJpcy1iYXJ1IGRpbGFyYW5nIGRhbGFtIGJlcmthcyAndXBkYXRlLWFsdGVybmF0aXZlcycgKCVzKSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNjMKK21zZ2lkICJzbGF2ZSBuYW1lIgorbXNnc3RyICJuYW1hIHRpcnVhbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNzEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImR1cGxpY2F0ZSBzbGF2ZSAlcyIKK21zZ2lkICJkdXBsaWNhdGUgc2xhdmUgbmFtZSAlcyIKK21zZ3N0ciAidGlydWFuIGdhbmRhIHVudHVrICclcyciCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTc0Cittc2dpZCAic2xhdmUgbGluayIKK21zZ3N0ciAibmFyYSB0aXJ1YW4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTc4CisjLCBjLWZvcm1hdAorbXNnaWQgInNsYXZlIGxpbmsgc2FtZSBhcyBtYWluIGxpbmsgJXMiCittc2dzdHIgIm5hcmEgdGlydWFuIHNhbWEgZGVuZ2FuIG5hbWEgdXRhbWEgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTg1IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDEyCisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBzbGF2ZSBsaW5rICVzIgorbXNnc3RyICJuYXJhIHRpcnVhbiAlcyBnYW5kYSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMDQKK21zZ2lkICJtYXN0ZXIgZmlsZSIKK21zZ3N0ciAiYmVya2FzIHV0YW1hIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIxMworIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgcGF0aCAlcyIKK21zZ3N0ciAicGF0aCAlcyBnYW5kYSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImFsdGVybmF0aXZlICVzIChwYXJ0IG9mIGxpbmsgZ3JvdXAgJXMpIGRvZXNuJ3QgZXhpc3QuIFJlbW92aW5nIGZyb20gbGlzdCBvZiAiCisiYWx0ZXJuYXRpdmVzLiIKK21zZ3N0ciAiIgorIiVzIGFsdGVybmF0aWYgKGJhZ2lhbiBkYXJpIGdydXAgbmFyYSAlcykgdGlkYWsgYWRhLiBTZWRhbmcgZGloYXB1cyBkYXJpICIKKyJkYWZ0YXIgYWx0ZXJuYXRpZiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMjkgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyNDAKK21zZ2lkICJwcmlvcml0eSIKK21zZ3N0ciAicHJpb3JpdGFzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIzMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI0OQorbXNnaWQgInNsYXZlIGZpbGUiCittc2dzdHIgImJlcmthcyB0aXJ1YW4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjQ0CisjLCBjLWZvcm1hdAorbXNnaWQgInByaW9yaXR5IG9mICVzOiAlcyIKK21zZ3N0ciAicHJpb3JpdGFzIGRhcmkgJXM6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI5NworbXNnaWQgInN0YXR1cyIKK21zZ3N0ciAic3RhdHVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI5OQorbXNnaWQgImludmFsaWQgc3RhdHVzIgorbXNnc3RyICJzdGF0dXMgdGlkYWsgc2FoIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTMwNAorbXNnaWQgIm1hc3RlciBsaW5rIgorbXNnc3RyICJuYXJhIHV0YW1hIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTM0OAorIywgYy1mb3JtYXQKK21zZ2lkICJkaXNjYXJkaW5nIG9ic29sZXRlIHNsYXZlIGxpbmsgJXMgKCVzKS4iCittc2dzdHIgIm1lbmdhYmFpa2FuIG5hcmEgdGlydWFuIHVzYW5nICVzICglcykuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2OQorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MzgKK21zZ2lkICJhdXRvIG1vZGUiCittc2dzdHIgIm1vZHVzIG90b21hdGlzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU3OAorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MzkKK21zZ2lkICJtYW51YWwgbW9kZSIKK21zZ3N0ciAibW9kdXMgbWFudWFsIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwNQorIywgYy1mb3JtYXQKK21zZ2lkICIgIGxpbmsgY3VycmVudGx5IHBvaW50cyB0byAlcyIKK21zZ3N0ciAiICAgbmFyYSBzYWF0IGluaSBtZW5nYWN1IGtlICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwOAorbXNnaWQgIiAgbGluayBjdXJyZW50bHkgYWJzZW50IgorbXNnc3RyICIgICBuYXJhIHNhYXQgaW5pIGxlbnlhcCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgLSBwcmlvcml0eSAlZCIKK21zZ3N0ciAiJXMgLSBwcmlvcml0YXMgJWQiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTE1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgc2xhdmUgJXM6ICVzIgorbXNnc3RyICIgIHRpcnVhbiAlczogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTIyCisjLCBjLWZvcm1hdAorbXNnaWQgIkN1cnJlbnQgJ2Jlc3QnIHZlcnNpb24gaXMgJyVzJy4iCittc2dzdHIgIlZlcnNpIHRlcmJhaWsgc2FhdCBpbmkgYWRhbGFoICclcycuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUyNAorbXNnaWQgIk5vIHZlcnNpb25zIGF2YWlsYWJsZS4iCittc2dzdHIgIlRpYWRhIHZlcnNpIHlhbmcgdGVyc2VkaWEuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU1MworIywgYy1mb3JtYXQKK21zZ2lkICJUaGVyZSBpcyAlZCBjaG9pY2UgZm9yIHRoZSBhbHRlcm5hdGl2ZSAlcyAocHJvdmlkaW5nICVzKS4iCittc2dpZF9wbHVyYWwgIlRoZXJlIGFyZSAlZCBjaG9pY2VzIGZvciB0aGUgYWx0ZXJuYXRpdmUgJXMgKHByb3ZpZGluZyAlcykuIgorbXNnc3RyWzBdICJBZGEgJWQgcGlsaWhhbiB1bnR1ayBhbHRlcm5hdGlmICVzIChzZWx1cnVobnlhICVzKS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYwCittc2dpZCAiU2VsZWN0aW9uIgorbXNnc3RyICJQZW1pbGloYW4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYxCittc2dpZCAiUGF0aCIKK21zZ3N0ciAiUGF0aCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NjEKK21zZ2lkICJQcmlvcml0eSIKK21zZ3N0ciAiUHJpb3JpdGFzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2MQorbXNnaWQgIlN0YXR1cyIKK21zZ3N0ciAiU3RhdHVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU4MgorIywgYy1mb3JtYXQKK21zZ2lkICJQcmVzcyBlbnRlciB0byBrZWVwIHRoZSBjdXJyZW50IGNob2ljZVsqXSwgb3IgdHlwZSBzZWxlY3Rpb24gbnVtYmVyOiAiCittc2dzdHIgIlRla2FuIGVudGVyIHVudHVrIHBpbGloYW4gc2FhdCBpbmkgWypdLCBhdGF1IGtldGlrIG5vbW9yIHBpbGloYW46ICIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3MjEKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IHJlcGxhY2luZyAlcyB3aXRoIGEgbGluay4iCittc2dzdHIgInRpZGFrIG1lbmdnYW50aSAlcyBkZW5nYW4gc3VhdHUgbmFyYS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNzYyCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbid0IGluc3RhbGwgdW5rbm93biBjaG9pY2UgJXMiCittc2dzdHIgInRpZGFrIGRhcGF0IG1lbWFzYW5nIHBpbGloYW4gJXMgeWFuZyB0YWsgZGlrZW5hbCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInNraXAgY3JlYXRpb24gb2YgJXMgYmVjYXVzZSBhc3NvY2lhdGVkIGZpbGUgJXMgKG9mIGxpbmsgZ3JvdXAgJXMpIGRvZXNuJ3QgIgorImV4aXN0LiIKK21zZ3N0ciAiIgorImhpbmRhcmkgcGVtYnVhdGFuICVzIGthcmVuYSBiZXJrYXMgJXMgKGRhcmkgZ3J1cCBsaW5rICVzKSB5YW5nIGJlcmh1YnVuZ2FuICIKKyJ0aWRhayBhZGEuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTc5MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAibm90IHJlcGxhY2luZyAlcyB3aXRoIGEgbGluay4iCittc2dpZCAibm90IHJlbW92aW5nICVzIHNpbmNlIGl0J3Mgbm90IGEgc3ltbGluay4iCittc2dzdHIgInRpZGFrIG1lbmdnYW50aSAlcyBkZW5nYW4gc3VhdHUgbmFyYS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDQxIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDQ3CisjLCBjLWZvcm1hdAorbXNnaWQgIkNhbGwgJXMuIgorbXNnc3RyICJKYWxhbmthbiAlcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDUxCisjLCBjLWZvcm1hdAorbXNnaWQgIkFsdGVybmF0aXZlICVzIHVuY2hhbmdlZCBiZWNhdXNlIGNob2ljZSAlcyBpcyBub3QgYXZhaWxhYmxlLiIKK21zZ3N0ciAiQWx0ZXJuYXRpZiAlcyB0aWRhayBkaXViYWgga2FyZW5hIHBpbGloYW4gJXMgdGlkYWsgdGVyc2VkaWEuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA1NQorIywgYy1mb3JtYXQKK21zZ2lkICJTa2lwIHVua25vd24gYWx0ZXJuYXRpdmUgJXMuIgorbXNnc3RyICJMZXdhdGkgYWx0ZXJuYXRpZiAlcyB5YW5nIHRhayBkaWtlbmFsLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNzcKKyMsIGMtZm9ybWF0Cittc2dpZCAibGluZSB0b28gbG9uZyBvciBub3QgdGVybWluYXRlZCB3aGlsZSB0cnlpbmcgdG8gcmVhZCAlcyIKK21zZ3N0ciAiYmFyaXMgdGVybGFsdSBwYW5qYW5nIGF0YXUgdGFrIGRpYWtoaXJpIHNhYXQgbWVtYmFjYSAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwOTAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxMDMKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTEzCisjLCBjLWZvcm1hdAorbXNnaWQgIlNraXAgaW52YWxpZCBsaW5lOiAlcyIKK21zZ3N0ciAiSGluZGFyaSBiYXJpcyB0aWRhayBzYWg6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjEzMgorIywgYy1mb3JtYXQKK21zZ2lkICJyZW5hbWluZyAlcyBsaW5rIGZyb20gJXMgdG8gJXMuIgorbXNnc3RyICJtZW5nZ2FudGkgbmFyYSAlcyBkYXJpICVzIGtlICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxNzMKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVuYW1pbmcgJXMgc2xhdmUgbGluayBmcm9tICVzIHRvICVzLiIKK21zZ3N0ciAibWVuZ2dhbnRpIG5hcmEgdGlydWFuICVzIGRhcmkgJXMga2UgJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE4OQorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBuYW1lICglcykgbXVzdCBub3QgY29udGFpbiAnLycgYW5kIHNwYWNlcy4iCittc2dzdHIgIm5hbWEgYWx0ZXJuYXRpZiAoJXMpIHRpZGFrIGJvbGVoIGJlcmlzaSAnLycgZGFuIHNwYXNpLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgbGluayBpcyBub3QgYWJzb2x1dGUgYXMgaXQgc2hvdWxkIGJlOiAlcyIKK21zZ3N0ciAibmFyYSBhbHRlcm5hdGlmIHRpZGFrIG11dGxhayBzZWJhZ2FpbWFuYSBzZWhhcnVzbnlhOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxOTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgcGF0aCBpcyBub3QgYWJzb2x1dGUgYXMgaXQgc2hvdWxkIGJlOiAlcyIKK21zZ3N0ciAicGF0aCBhbHRlcm5hdGlmIHRpZGFrIG11dGxhayBzZWJhZ2FpbWFuYSBzZWhhcnVzbnlhOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyMjQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImFsdGVybmF0aXZlICVzIGNhbid0IGJlIG1hc3RlcjogJXMiCittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgbWFzdGVyOiBpdCBpcyBhIHNsYXZlIG9mICVzIgorbXNnc3RyICJhbHRlcm5hdGlmICVzIHRpZGFrIGJpc2EgamFkaSB1dGFtYTogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjMyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjY3CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIGxpbmsgJXMgaXMgYWxyZWFkeSBtYW5hZ2VkIGJ5ICVzLiIKK21zZ3N0ciAibmFyYSBhbHRlcm5hdGlmICVzIHRlbGFoIGRpa2Vsb2xhIG9sZWggJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI0MQorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBwYXRoICVzIGRvZXNuJ3QgZXhpc3QuIgorbXNnc3RyICJwYXRoIGFsdGVybmF0aWYgJXMgdGlkYWsgYWRhIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI1NAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgc2xhdmUgb2YgJXM6ICVzIgorbXNnaWQgImFsdGVybmF0aXZlICVzIGNhbid0IGJlIHNsYXZlIG9mICVzOiBpdCBpcyBhIG1hc3RlciBhbHRlcm5hdGl2ZS4iCittc2dzdHIgImFsdGVybmF0aWYgJXMgdGlkYWsgZGFwYXQgbWVuamFkaSB0aXJ1YW4gZGFyaSAlczogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjU4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBtYXN0ZXI6ICVzIgorbXNnaWQgImFsdGVybmF0aXZlICVzIGNhbid0IGJlIHNsYXZlIG9mICVzOiBpdCBpcyBhIHNsYXZlIG9mICVzIgorbXNnc3RyICJhbHRlcm5hdGlmICVzIHRpZGFrIGJpc2EgamFkaSB1dGFtYTogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjc4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJhbHRlcm5hdGl2ZSBsaW5rICVzIGlzIGFscmVhZHkgbWFuYWdlZCBieSAlcy4iCittc2dpZCAiYWx0ZXJuYXRpdmUgbGluayAlcyBpcyBhbHJlYWR5IG1hbmFnZWQgYnkgJXMgKHNsYXZlIG9mICVzKS4iCittc2dzdHIgIm5hcmEgYWx0ZXJuYXRpZiAlcyB0ZWxhaCBkaWtlbG9sYSBvbGVoICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBhcmd1bWVudCBgJXMnIgorbXNnc3RyICJhcmd1bWVuICclcycgdGFrIGRpa2VuYWwiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzQzCittc2dpZCAiLS1pbnN0YWxsIG5lZWRzIDxsaW5rPiA8bmFtZT4gPHBhdGg+IDxwcmlvcml0eT4iCittc2dzdHIgIi0taW5zdGFsbCBwZXJsdSA8bmFyYT4gPG5hbWE+IDxwYXRoPiA8cHJpb3JpdGFzPiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNDYgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzOTcKK21zZ2lkICI8bGluaz4gYW5kIDxwYXRoPiBjYW4ndCBiZSB0aGUgc2FtZSIKK21zZ3N0ciAiPG5hcmE+IGRhbiA8cGF0aD4gdGlkYWsgYm9sZWggc2FtYSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNDkKK21zZ2lkICJwcmlvcml0eSBtdXN0IGJlIGFuIGludGVnZXIiCittc2dzdHIgInByaW9yaXRhcyBoYXJ1cyBiaWxhbmdhbiBidWxhdCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyA8bmFtZT4gPHBhdGg+IgorbXNnc3RyICItLSVzIGJ1dHVoIDxuYW1hPiA8cGF0aD4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzc2CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgPG5hbWU+IgorbXNnc3RyICItLSVzIGJ1dHVoIDxuYW1hPiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzODgKK21zZ2lkICItLXNsYXZlIG9ubHkgYWxsb3dlZCB3aXRoIC0taW5zdGFsbCIKK21zZ3N0ciAiLS1zbGF2ZSBoYW55YSBiaXNhIGJlcnNhbWEgLS1pbnN0YWxsIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM5MAorbXNnaWQgIi0tc2xhdmUgbmVlZHMgPGxpbms+IDxuYW1lPiA8cGF0aD4iCittc2dzdHIgIi0tc2xhdmUgcGVybHUgPG5hcmE+IDxuYW1hPiA8cGF0aD4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzk5CisjLCBjLWZvcm1hdAorbXNnaWQgIm5hbWUgJXMgaXMgYm90aCBwcmltYXJ5IGFuZCBzbGF2ZSIKK21zZ3N0ciAibmFtYSAlcyBhZGFsYWggbmFtYSB1dGFtYSBkYW4gdGlydWFuIHNla2FsaWd1cyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAibGluayAlcyBpcyBib3RoIHByaW1hcnkgYW5kIHNsYXZlIgorbXNnc3RyICJuYXJhICVzIGFkYWxhaCBuYXJhIHV0YW1hIGRhbiB0aXJ1YW4gc2VrYWxpZ3VzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQyMgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGEgPGZpbGU+IGFyZ3VtZW50IgorbXNnc3RyICItLSVzIGJ1dHVoIHNlYnVhaCBhcmd1bWVuIDxiZXJrYXM+IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQ0OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiBgJXMnIgorbXNnc3RyICJwaWxpaGFuICclcycgdGFrIGRpa2VuYWwiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDUzCittc2dpZCAiIgorIm5lZWQgLS1kaXNwbGF5LCAtLXF1ZXJ5LCAtLWxpc3QsIC0tZ2V0LXNlbGVjdGlvbnMsIC0tY29uZmlnLCAtLXNldCwgLS1zZXQtIgorInNlbGVjdGlvbnMsIC0taW5zdGFsbCwgLS1yZW1vdmUsIC0tYWxsLCAtLXJlbW92ZS1hbGwgb3IgLS1hdXRvIgorbXNnc3RyICIiCisiYnV0dWggLS1kaXNwbGF5LCAtLXF1ZXJ5LCAtLWxpc3QsIC0tZ2V0LXNlbGVjdGlvbnMsIC0tY29uZmlnLCAtLXNldCwgLS1zZXQtIgorInNlbGVjdGlvbnMsIC0taW5zdGFsbCwgLS1yZW1vdmUsIC0tYWxsLCAtLXJlbW92ZS1hbGwsIGF0YXUgLS1hdXRvIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQ5MAorbXNnaWQgIjxzdGFuZGFyZCBpbnB1dD4iCittc2dzdHIgImFkYSBnYWxhdCBiYWNhIGRpIG1hc3VrYW4gc3RhbmRhciIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MDAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MDMKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gYWx0ZXJuYXRpdmVzIGZvciAlcy4iCittc2dzdHIgInRpZGFrIGFkYSBhbHRlcm5hdGlmIHVudHVrICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiVzIGlzIGRhbmdsaW5nLCBpdCB3aWxsIGJlIHVwZGF0ZWQgd2l0aCBiZXN0IGNob2ljZS4iCittc2dpZCAiJXMvJXMgaXMgZGFuZ2xpbmcsIGl0IHdpbGwgYmUgdXBkYXRlZCB3aXRoIGJlc3QgY2hvaWNlLiIKK21zZ3N0ciAiJXMgdGFrIGplbGFzIHN0YXR1c255YSwgYWthbiBkaXBlcmJhcnVpIGRlbmdhbiBwaWxpaGFuIHRlcmJhaWsuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUzNAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiVzIGhhcyBiZWVuIGNoYW5nZWQgKG1hbnVhbGx5IG9yIGJ5IGEgc2NyaXB0KS4gU3dpdGNoaW5nIHRvIG1hbnVhbCAiCisjfCAidXBkYXRlcyBvbmx5LiIKK21zZ2lkICIiCisiJXMvJXMgaGFzIGJlZW4gY2hhbmdlZCAobWFudWFsbHkgb3IgYnkgYSBzY3JpcHQpLiBTd2l0Y2hpbmcgdG8gbWFudWFsICIKKyJ1cGRhdGVzIG9ubHkuIgorbXNnc3RyICIiCisiJXMgdGVsYWggZGl1YmFoIChzZWNhcmEgbWFudWFsIGF0YXUgb2xlaCBzdWF0dSBza3JpcCkuIEJlcnBpbmRhaCBrZSAiCisicGVtdXRha2hpcmFuIG1hbnVhbC4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTQyCisjLCBjLWZvcm1hdAorbXNnaWQgInNldHRpbmcgdXAgYXV0b21hdGljIHNlbGVjdGlvbiBvZiAlcy4iCittc2dzdHIgIm1lbmF0YSBwZW1pbGloYW4gb3RvbWF0aXMgZGFyaSAlcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTUxCisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlICVzIGZvciAlcyBub3QgcmVnaXN0ZXJlZCwgbm90IHNldHRpbmcuIgorbXNnc3RyICJhbHRlcm5hdGlmICVzIHVudHVrICVzIHRpZGFrIHRlcmRhZnRhciwgdGlkYWsgZGlrb25maWd1cmFzaS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTU3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTYzCisjLCBjLWZvcm1hdAorbXNnaWQgIlRoZXJlIGlzIG5vIHByb2dyYW0gd2hpY2ggcHJvdmlkZXMgJXMuIgorbXNnc3RyICJ0aWRhayBhZGEgcHJvZ3JhbSB5YW5nIG1lbnllZGlha2FuICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NjUgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NzUKK21zZ2lkICJOb3RoaW5nIHRvIGNvbmZpZ3VyZS4iCittc2dzdHIgIlRpYWRhIHlhbmcgZGlrb25maWd1cmFzaSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiVGhlcmUgaXMgb25seSBvbmUgYWx0ZXJuYXRpdmUgaW4gbGluayBncm91cCAlczogJXMiCittc2dzdHIgIkhhbnlhIGFkYSBzYXR1IGFsdGVybmF0aWYgZGkgZ3J1cCBuYXJhICVzOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1ODQKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgZm9yICVzIG5vdCByZWdpc3RlcmVkLCBub3QgcmVtb3ZpbmcuIgorbXNnc3RyICJhbHRlcm5hdGlmICVzIHVudHVrICVzIHRpZGFrIHRlcmRhZnRhciwgdGlkYWsgbWVuZ2hhcHVzbnlhLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1OTIKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVtb3ZpbmcgbWFudWFsbHkgc2VsZWN0ZWQgYWx0ZXJuYXRpdmUgLSBzd2l0Y2hpbmcgJXMgdG8gYXV0byBtb2RlIgorbXNnc3RyICIiCisic2VkYW5nIG1lbmdoYXB1cyBhbHRlcm5hdGlmIHRlcnBpbGloIHNlY2FyYSBtYW51YWwgLSBtZW1pbmRhaCAlcyBrZSBtb2R1cyAiCisib3RvbWF0aXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjE3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJhdXRvbWF0aWMgdXBkYXRlcyBvZiAlcyBhcmUgZGlzYWJsZWQsIGxlYXZpbmcgaXQgYWxvbmUuIgorbXNnaWQgImF1dG9tYXRpYyB1cGRhdGVzIG9mICVzLyVzIGFyZSBkaXNhYmxlZCwgbGVhdmluZyBpdCBhbG9uZS4iCittc2dzdHIgInBlbWJhcnVhbiAlcyBzZWNhcmEgb3RvbWF0aXMgZGltYXRpa2FuLCBiaWFya2FuIGFwYSBhZGFueWEuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYxOQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidG8gcmV0dXJuIHRvIGF1dG9tYXRpYyB1cGRhdGVzIHVzZSBgdXBkYXRlLWFsdGVybmF0aXZlcyAtLWF1dG8gJXMnLiIKK21zZ2lkICJ0byByZXR1cm4gdG8gYXV0b21hdGljIHVwZGF0ZXMgdXNlICclcyAtLWF1dG8gJXMnLiIKK21zZ3N0ciAiIgorInVudHVrIGtlbWJhbGkga2UgbW9kdXMgcGVtYmFydWFuIG90b21hdGlzLCBndW5ha2FuICd1cGRhdGUtYWx0ZXJuYXRpdmVzIC0tIgorImF1dG8gJXMnIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYzNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1c2luZyAlcyB0byBwcm92aWRlICVzICglcykgaW4gJXMuIgorbXNnc3RyICJtZW5nZ3VuYWthbiAlcyB1bnR1ayBtZW55ZWRpYWthbiAlcyAoJXMpIGRpICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImZvcmNpbmcgcmVpbnN0YWxsYXRpb24gb2YgYWx0ZXJuYXRpdmUgJXMgYmVjYXVzZSBsaW5rIGdyb3VwICVzIGlzIGJyb2tlbi4iCittc2dzdHIgIm1lbWFrc2EgcGVtYXNhbmdhbiB1bGFuZyBhbHRlcm5hdGlmICVzIGthcmVuYSBncnVwIG5hcmEgJXMgcnVzYWsuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjY1MQorIywgYy1mb3JtYXQKK21zZ2lkICJjdXJyZW50IGFsdGVybmF0aXZlICVzIGlzIHVua25vd24sIHN3aXRjaGluZyB0byAlcyBmb3IgbGluayBncm91cCAlcy4iCittc2dzdHIgIiIKKyJhbHRlcm5hdGlmICVzIHNhYXQgaW5pIHRpZGFrIGRpa2VuYWwsIGJlcnBpbmRhaCBrZSAlcyB1bnR1ayBncnVwIG5hcmEgJXMuIgorCisjfiBtc2dpZCAiaXQgaXMgYSBtYXN0ZXIgYWx0ZXJuYXRpdmUuIgorI34gbXNnc3RyICJpbmkgYWRhbGFoIGFsdGVybmF0aWYgdXRhbWEuIgorCisjfiBtc2dpZCAiaXQgaXMgYSBzbGF2ZSBvZiAlcyIKKyN+IG1zZ3N0ciAiaW5pIGFkYWxhaCB0aXJ1YW4gZGFyaSAlcyIKKworI34gbXNnaWQgImNhbm5vdCBzdGF0ICVzOiAlcyIKKyN+IG1zZ3N0ciAiZ2FnYWwgbWVuYXRhIHN0YXR1cyAlczogJXMiCisKKyN+IG1zZ2lkICJyZWFkbGluayglcykgZmFpbGVkOiAlcyIKKyN+IG1zZ3N0ciAicHJvc2VzIHJlYWRsaW5rKCVzKSBnYWdhbDogJXMiCisKKyN+IG1zZ2lkICJzY2FuIG9mICVzIGZhaWxlZDogJXMiCisjfiBtc2dzdHIgInBlbWluZGFpYW4gJXMgZ2FnYWw6ICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWN1dGUgJXM6ICVzIgorI34gbXNnc3RyICJHYWdhbCBtZW5qYWxhbmthbiAlczogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gbWFrZSAlcyBhIHN5bWxpbmsgdG8gJXM6ICVzIgorI34gbXNnc3RyICJnYWdhbCBtZW1idWF0IG5hcmEgc2ltYm9saWsgJXMga2UgJXM6ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgJXMgYXMgJXM6ICVzIgorI34gbXNnc3RyICJnYWdhbCBtZW1hc2FuZyAlcyBzZWJhZ2FpICVzOiAlcyIKKworI34gbXNnaWQgIndoaWxlIHdyaXRpbmcgJXM6ICVzIgorI34gbXNnc3RyICJzYWF0IG1lbnVsaXMgJXM6ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHJlYWQgJXM6ICVzIgorI34gbXNnc3RyICJnYWdhbCBtZW1iYWNhICVzOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byBjbG9zZSAlczogJXMiCisjfiBtc2dzdHIgImdhZ2FsIG1lbnV0dXAgJXM6ICVzIgorCisjfiBtc2dpZCAiY2Fubm90IHdyaXRlICVzOiAlcyIKKyN+IG1zZ3N0ciAiZ2FnYWwgbWVudWxpcyAlczogJXMiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgInVuYWJsZSB0byBvcGVuIGZpbGUgJyVzJyIKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcmVuYW1lIGZpbGUgJyVzJyB0byAnJXMnIgorI34gbXNnc3RyICJnYWdhbCBtZW1idWthIGJlcmthcyAnJXMnIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHVuYnVmZmVyIGAlLjI1NXMnIgorI34gbXNnc3RyICJnYWdhbCBtZW1hdGlrYW4gcGVueWFuZ2dhIChidWZmZXIpICclLjI1NXMnIgorCisjfiBtc2dpZCAicGFydCBmaWxlIGAlLjI1MHMnIGhhcyB0cmFpbGluZyBnYXJiYWdlIgorI34gbXNnc3RyICJiZXJrYXMgYmFnaWFuICclLjI1MHMnIGJlcmlzaSBha2hpcmFuIHNhbXBhaCIKKworI34gbXNnaWQgInNpemUgJTdkIG9jY3VycyAlNWQgdGltZXNcbiIKKyN+IG1zZ3N0ciAidWt1cmFuICU3ZCBtdW5jdWwgJTVkIGthbGlcbiIKKworI34gbXNnaWQgIm91dCBvZiBtZW1vcnkgcHVzaGluZyBlcnJvciBoYW5kbGVyOiAiCisjfiBtc2dzdHIgImtlaGFiaXNhbiBtZW1vcnkgc2FhdCBtZW1ha3NhIHBlbmFuZ2FuYW4ga2VzYWxhaGFuOiAiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gdW5sb2NrIGRwa2cgc3RhdHVzIGRhdGFiYXNlIgorI34gbXNnc3RyICJnYWdhbCBtZW5ndW5jaSBiYXNpcyBkYXRhIHN0YXR1cyBkcGtnIgorCisjfiBtc2dpZCAiY29weSBpbmZvIGZpbGUgYCUuMjU1cyciCisjfiBtc2dzdHIgIm1lbnlhbGluIGJlcmthcyBpbmZvICclLjI1NXMnIgorCisjfiBtc2dpZCAicGFyc2UgZXJyb3IiCisjfiBtc2dzdHIgIkFkYSBrZXNhbGFoYW4gJ3BhcnNlJyIKKworI34gbXNnaWQgImZhaWxlZCB0byB3cml0ZSBwYXJzaW5nIHdhcm5pbmciCisjfiBtc2dzdHIgImdhZ2FsIG1lbnVsaXMgcGVyaW5nYXRhbiB5YW5nIGRpdXJhaWthbiIKKworI34gbXNnaWQgInVuYWJsZSB0byBsb2NrIHRyaWdnZXJzIGFyZWEiCisjfiBtc2dzdHIgImdhZ2FsIG1lbmd1bmNpIGFyZWEgcGVtaWN1IgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHJ1biAlcyAoJS4yNTBzKSIKKyN+IG1zZ3N0ciAiR2FnYWwgbWVuamFsYW5rYW4gJXMgKCUuMjUwcykiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBzaGVsbCAoJS4yNTBzKSIKKyN+IG1zZ3N0ciAiZ2FnYWwgbWVuamFsYW5rYW4gc2hlbGwgKCUuMjUwcykiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gY2hlY2sgZm9yIGV4aXN0ZW5jZSBvZiBgJS4yNTBzJyIKKyN+IG1zZ3N0ciAiZ2FnYWwgbWVtZXJpa3NhIGtlYmVyYWRhYW4gJyUuMjUwcyciCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBybSBmb3IgY2xlYW51cCIKKyN+IG1zZ3N0ciAiZ2FnYWwgbWVuamFsYW5rYW4gcGVyaW50YWggJ3JtJyB1bnR1ayBtZW1iZXJzaWhrYW4iCisKKyN+IG1zZ2lkICIiCisjfiAiJXMgZGVidWdnaW5nIG9wdGlvbiwgLS1kZWJ1Zz08b2N0YWw+IG9yIC1EPG9jdGFsPjpcbiIKKyN+ICJcbiIKKyN+ICIgbnVtYmVyICByZWYuIGluIHNvdXJjZSAgIGRlc2NyaXB0aW9uXG4iCisjfiAiICAgICAgMSAgIGdlbmVyYWwgICAgICAgICAgIEdlbmVyYWxseSBoZWxwZnVsIHByb2dyZXNzIGluZm9ybWF0aW9uXG4iCisjfiAiICAgICAgMiAgIHNjcmlwdHMgICAgICAgICAgIEludm9jYXRpb24gYW5kIHN0YXR1cyBvZiBtYWludGFpbmVyIHNjcmlwdHNcbiIKKyN+ICIgICAgIDEwICAgZWFjaGZpbGUgICAgICAgICAgT3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkXG4iCisjfiAiICAgIDEwMCAgIGVhY2hmaWxlZGV0YWlsICAgIExvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkXG4iCisjfiAiICAgICAyMCAgIGNvbmZmICAgICAgICAgICAgIE91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGVcbiIKKyN+ICIgICAgMjAwICAgY29uZmZkZXRhaWwgICAgICAgTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggY29uZmlndXJhdGlvbiBmaWxlXG4iCisjfiAiICAgICA0MCAgIGRlcGNvbiAgICAgICAgICAgIERlcGVuZGVuY2llcyBhbmQgY29uZmxpY3RzXG4iCisjfiAiICAgIDQwMCAgIGRlcGNvbmRldGFpbCAgICAgIExvdHMgb2YgZGVwZW5kZW5jaWVzL2NvbmZsaWN0cyBvdXRwdXRcbiIKKyN+ICIgIDEwMDAwICAgdHJpZ2dlcnMgICAgICAgICAgVHJpZ2dlciBhY3RpdmF0aW9uIGFuZCBwcm9jZXNzaW5nXG4iCisjfiAiICAyMDAwMCAgIHRyaWdnZXJzZGV0YWlsICAgIExvdHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2Vyc1xuIgorI34gIiAgNDAwMDAgICB0cmlnZ2Vyc3N0dXBpZCAgICBTaWxseSBhbW91bnRzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnNcbiIKKyN+ICIgICAxMDAwICAgdmVyeXZlcmJvc2UgICAgICAgTG90cyBvZiBkcml2ZWwgYWJvdXQgZWcgdGhlIGRwa2cvaW5mbyAiCisjfiAiZGlyZWN0b3J5XG4iCisjfiAiICAgMjAwMCAgIHN0dXBpZGx5dmVyYm9zZSAgIEluc2FuZSBhbW91bnRzIG9mIGRyaXZlbFxuIgorI34gIlxuIgorI34gIkRlYnVnZ2luZyBvcHRpb25zIGFyZSBiZSBtaXhlZCB1c2luZyBiaXR3aXNlLW9yLlxuIgorI34gIk5vdGUgdGhhdCB0aGUgbWVhbmluZ3MgYW5kIHZhbHVlcyBhcmUgc3ViamVjdCB0byBjaGFuZ2UuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJwaWxpaGFuIGRlYnVnICVzLCAtLWRlYnVnPTxva3RhbD4gYXRhdSAtRDxvY3RhbD46IFxuIgorI34gIlxuIgorI34gIiAgYW5na2EgIHJlZi4gZGkgc3VtYmVyICAgICBrZXRlcmFuZ2FuXG4iCisjfiAiICAgICAgMSAgIHVtdW0gICAgICAgICAgICAgIEluZm9ybWFzaSBrZW1hanVhbiB5YW5nIHNhbmdhdCBtZW1iYW50dVxuIgorI34gIiAgICAgIDIgICBza3JpcCAgICAgICAgICAgICBQZW5lcmFwYW4gZGFuIHN0YXR1cyBza3JpcCBwZW5nZWxvbGFcbiIKKyN+ICIgICAgIDEwICAgdGlhcGJlcmthcyAgICAgICAgSGFzaWwgZGFyaSBzZXRpYXAgYmVya2FzIHlhbmcgZGlwcm9zZXNcbiIKKyN+ICIgICAgMTAwICAgcmluY2l0aWFwYmVya2FzICAgSGFzaWwgcmluY2kgZGFyaSBzZXRpYXAgYmVya2FzIHlhbmcgZGlwcm9zZXNcbiIKKyN+ICIgICAgIDIwICAgYmVya2Fza29uZiAgICAgICAgSGFzaWwgZGFyaSBzZXRpYXAgYmVya2FzIGtvbmZpZ3VyYXNpXG4iCisjfiAiICAgIDIwMCAgIHJpYW5jaWJlcmthc2tvbmYgIEhhc2lsIHJpbmNpIGRhcmkgc2V0aWFwIGJlcmthcyBrb25maWd1cmFzaVxuIgorI34gIiAgICAgNDAgICBkZXBjb24gICAgICAgICAgICBLZXRlcmdhbnR1bmdhbiBkYW4gYmVudHJva1xuIgorI34gIiAgICA0MDAgICByaW5jaWRlcGNvbiAgICAgICBIYXNpbCByaW5jaSBkYXJpIGtldGVyZ2FudHVuZ2FuIGRhbmJlbnRyb2tcbiIKKyN+ICIgICAxMDAwICAgc2FuZ2F0cmluY2kgICAgICAgSGFzaWwgcmluY2lhbiBkcml2ZWwgdGVudGFuZywgbWlzYWxueWEsICIKKyN+ICJkaXJla3RvcmkgZHBrZy9pbmZvXG4iCisjfiAiICAgMjAwMCAgIHJpbmNpYW5ib2RvaCAgICAgIFNlZ2FsYSBoYXNpbCBkYXJpIGRyaXZlbFxuIgorI34gIlxuIgorI34gIlBpbGloYW4tcGlsaWhhbiBkZWJ1ZyBha2FuIHNhbGluZyBkaXBhZHVrYW4gZGVuZ2FuIG9wZXJhc2kgJ2JpdCBvcicuXG4iCisjfiAiSW5nYXQgYmFod2EgYXJ0aSBkYW4gbmlsYWkgZGkgYXRhcyBiaXNhIHNhamEgYmVydWJhaC5cbiIKKworI34gbXNnaWQgIiIKKyN+ICIlcyBmb3JjaW5nIG9wdGlvbnMgLSBjb250cm9sIGJlaGF2aW91ciB3aGVuIHByb2JsZW1zIGZvdW5kOlxuIgorI34gIiAgd2FybiBidXQgY29udGludWU6ICAtLWZvcmNlLTx0aGluZz4sPHRoaW5nPiwuLi5cbiIKKyN+ICIgIHN0b3Agd2l0aCBlcnJvcjogICAgLS1yZWZ1c2UtPHRoaW5nPiw8dGhpbmc+LC4uLiB8IC0tbm8tZm9yY2UtIgorI34gIjx0aGluZz4sLi4uXG4iCisjfiAiIEZvcmNpbmcgdGhpbmdzOlxuIgorI34gIiAgYWxsIFshXSAgICAgICAgICAgICAgICBTZXQgYWxsIGZvcmNlIG9wdGlvbnNcbiIKKyN+ICIgIGRvd25ncmFkZSBbKl0gICAgICAgICAgUmVwbGFjZSBhIHBhY2thZ2Ugd2l0aCBhIGxvd2VyIHZlcnNpb25cbiIKKyN+ICIgIGNvbmZpZ3VyZS1hbnkgICAgICAgICAgQ29uZmlndXJlIGFueSBwYWNrYWdlIHdoaWNoIG1heSBoZWxwIHRoaXMgb25lXG4iCisjfiAiICBob2xkICAgICAgICAgICAgICAgICAgIFByb2Nlc3MgaW5jaWRlbnRhbCBwYWNrYWdlcyBldmVuIHdoZW4gb24gaG9sZFxuIgorI34gIiAgYmFkLXBhdGggICAgICAgICAgICAgICBQQVRIIGlzIG1pc3NpbmcgaW1wb3J0YW50IHByb2dyYW1zLCBwcm9ibGVtcyAiCisjfiAibGlrZWx5XG4iCisjfiAiICBub3Qtcm9vdCAgICAgICAgICAgICAgIFRyeSB0byAoZGUpaW5zdGFsbCB0aGluZ3MgZXZlbiB3aGVuIG5vdCByb290XG4iCisjfiAiICBvdmVyd3JpdGUgICAgICAgICAgICAgIE92ZXJ3cml0ZSBhIGZpbGUgZnJvbSBvbmUgcGFja2FnZSB3aXRoIGFub3RoZXJcbiIKKyN+ICIgIG92ZXJ3cml0ZS1kaXZlcnRlZCAgICAgT3ZlcndyaXRlIGEgZGl2ZXJ0ZWQgZmlsZSB3aXRoIGFuIHVuZGl2ZXJ0ZWQgIgorI34gInZlcnNpb25cbiIKKyN+ICIgIGJhZC12ZXJpZnkgICAgICAgICAgICAgSW5zdGFsbCBhIHBhY2thZ2UgZXZlbiBpZiBpdCBmYWlscyBhdXRoZW50aWNpdHkgIgorI34gImNoZWNrXG4iCisjfiAiICBkZXBlbmRzLXZlcnNpb24gWyFdICAgIFR1cm4gZGVwZW5kZW5jeSB2ZXJzaW9uIHByb2JsZW1zIGludG8gd2FybmluZ3NcbiIKKyN+ICIgIGRlcGVuZHMgWyFdICAgICAgICAgICAgVHVybiBhbGwgZGVwZW5kZW5jeSBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzXG4iCisjfiAiICBjb25mbmV3IFshXSAgICAgICAgICAgIEFsd2F5cyB1c2UgdGhlIG5ldyBjb25maWcgZmlsZXMsIGRvbid0IHByb21wdFxuIgorI34gIiAgY29uZm9sZCBbIV0gICAgICAgICAgICBBbHdheXMgdXNlIHRoZSBvbGQgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHRcbiIKKyN+ICIgIGNvbmZkZWYgWyFdICAgICAgICAgICAgVXNlIHRoZSBkZWZhdWx0IG9wdGlvbiBmb3IgbmV3IGNvbmZpZyBmaWxlcyBpZiAiCisjfiAib25lXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIGlzIGF2YWlsYWJsZSwgZG9uJ3QgcHJvbXB0LiBJZiBubyBkZWZhdWx0IGNhbiBiZSAiCisjfiAiZm91bmQsXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIHlvdSB3aWxsIGJlIHByb21wdGVkIHVubGVzcyBvbmUgb2YgdGhlIGNvbmZvbGQgIgorI34gIm9yXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmZuZXcgb3B0aW9ucyBpcyBhbHNvIGdpdmVuXG4iCisjfiAiICBjb25mbWlzcyBbIV0gICAgICAgICAgIEFsd2F5cyBpbnN0YWxsIG1pc3NpbmcgY29uZmlnIGZpbGVzXG4iCisjfiAiICBjb25mYXNrIFshXSAgICAgICAgICAgIE9mZmVyIHRvIHJlcGxhY2UgY29uZmlnIGZpbGVzIHdpdGggbm8gbmV3ICIKKyN+ICJ2ZXJzaW9uc1xuIgorI34gIiAgYnJlYWtzIFshXSAgICAgICAgICAgICBJbnN0YWxsIGV2ZW4gaWYgaXQgd291bGQgYnJlYWsgYW5vdGhlciBwYWNrYWdlXG4iCisjfiAiICBjb25mbGljdHMgWyFdICAgICAgICAgIEFsbG93IGluc3RhbGxhdGlvbiBvZiBjb25mbGljdGluZyBwYWNrYWdlc1xuIgorI34gIiAgYXJjaGl0ZWN0dXJlIFshXSAgICAgICBQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyBhcmNoaXRlY3R1cmVcbiIKKyN+ICIgIG92ZXJ3cml0ZS1kaXIgWyFdICAgICAgT3ZlcndyaXRlIG9uZSBwYWNrYWdlJ3MgZGlyZWN0b3J5IHdpdGggYW5vdGhlcidzICIKKyN+ICJmaWxlXG4iCisjfiAiICB1bnNhZmUtaW8gWyFdICAgICAgICAgIERvIG5vdCBwZXJmb3JtIHNhZmUgSS9PIG9wZXJhdGlvbnMgd2hlbiAiCisjfiAidW5wYWNraW5nXG4iCisjfiAiICByZW1vdmUtcmVpbnN0cmVxIFshXSAgIFJlbW92ZSBwYWNrYWdlcyB3aGljaCByZXF1aXJlIGluc3RhbGxhdGlvblxuIgorI34gIiAgcmVtb3ZlLWVzc2VudGlhbCBbIV0gICBSZW1vdmUgYW4gZXNzZW50aWFsIHBhY2thZ2VcbiIKKyN+ICJcbiIKKyN+ICJXQVJOSU5HIC0gdXNlIG9mIG9wdGlvbnMgbWFya2VkIFshXSBjYW4gc2VyaW91c2x5IGRhbWFnZSB5b3VyICIKKyN+ICJpbnN0YWxsYXRpb24uXG4iCisjfiAiRm9yY2luZyBvcHRpb25zIG1hcmtlZCBbKl0gYXJlIGVuYWJsZWQgYnkgZGVmYXVsdC5cbiIKKyN+IG1zZ3N0ciAiIgorI34gInBpbGloYW4gcGFrc2FhbiAlcyAtIHBlbmdlbmRhbGlhbiBrZXRpa2EgbWFzYWxhaCB0aW1idWw6XG4iCisjfiAiICBwZXJpbmdhdGthbiB0YXBpIGphbGFuIHRlcnVzOiAtLWZvcmNlLTxzZXN1YXR1Piw8c2VzdWF0dT4sLi4uXG4iCisjfiAiICBoZW50aWthbiBkZW5nYW4gbGFwb3JhbjogICAgICAtLXJlZnVzZS08c2VzdWF0dT4sPHNlc3VhdHU+LC4uLnwgLS1uby0iCisjfiAiZm9yY2UtPHRoaW5nPiwuLi5cbiIKKyN+ICIgIFBha3Nha2FuIHNlc3VhdHU6XG4iCisjfiAiICBhbGwgWyFdICAgICAgICAgICAgICBTZXRlbCBzZW11YSBwaWxpaGFuIHBha3NhYW5cbiIKKyN+ICIgIGRvd25ncmFkZSBbKl0gICAgICAgIEdhbnRpIHBha2V0IGRlbmdhbiB2ZXJzaSBsZWJpaCByZW5kYWhcbiIKKyN+ICIgIGNvbmZpZ3VyZS1hbnkgICAgICAgIEtvbmZpZ3VyYXNpIHNlbWJhcmFuZyBwYWtldCB5YW5nIG11bmdraW4gbWVtYmFudHVcbiIKKyN+ICIgIGhvbGQgICAgICAgICAgICAgICAgIFByb3NlcyBwYWtldC1wYWtldCBkYXJ1cmF0IHdhbGF1IHNlZGFuZyBkaWNla2FsXG4iCisjfiAiICBiYWQtcGF0aCAgICAgICAgICAgICBQQVRIIGtlaGlsYW5nYW4gcHJvZ3JhbS1wcm9ncmFtIHBlbnRpbmcsIG1hc2FsYWggIgorI34gInRhbXBha255YVxuIgorI34gIiAgbm90LXJvb3QgICAgICAgICAgICAgQ29iYSB1bnR1ayAoamFuZ2FuKW1lbWFzYW5nIHNlc3VhdHUgd2FsYXUgYnVrYW4gIgorI34gInJvb3RcbiIKKyN+ICIgIG92ZXJ3cml0ZSAgICAgICAgICAgIFRpbXBhIGJlcmthcyBkYXJpIHNhdHUgcGFrZXQgZGVuZ2FuIGRhcmkgcGFrZXQgIgorI34gImxhaW5cbiIKKyN+ICIgIG92ZXJ3cml0ZS1kaXZlcnRlZCAgIFRpbXBhIGJlcmthcyB5YW5nIGRpYWxpaGthbiBkZW5nYW4geWFuZyB0aWRha1xuIgorI34gIiAgYmFkLXZlcmlmeSAgICAgICAgICAgUGFzYW5nIHBha2V0IHdhbGF1IGdhZ2FsIG1lbGFsdWkgcGVtZXJpa3NhYW4gIgorI34gIm90ZW50aWthc2lcbiIKKyN+ICIgIGRlcGVuZHMtdmVyc2lvbiBbIV0gIEphZGlrYW4gbWFzYWxhaCBrZXRlcmdhbnR1bmdhbiB2ZXJzaSBzZWJhZ2FpICIKKyN+ICJwZXJpbmdhdGFuXG4iCisjfiAiICBkZXBlbmRzIFshXSAgICAgICAgICBKYWRpa2FuIHNlbXVhIG1hc2FsYWgga2V0ZXJnYW50dW5nYW4gdmVyc2kgc2ViYWdhaSAiCisjfiAicGVyaW5nYXRhblxuIgorI34gIiAgY29uZm5ldyBbIV0gICAgICAgICAgU2VsYWx1IGd1bmFrYW4gYmVya2FzIGtvbmZpZyBiYXJ1LCBqYW5nYW4gdGFueWFcbiIKKyN+ICIgIGNvbmZvbGQgWyFdICAgICAgICAgIFNlbGFsdSBndW5ha2FuIGJlcmthcyBrb25maWcgbGFtYSwgamFuZ2FuIHRhbnlhXG4iCisjfiAiICBjb25mZGVmIFshXSAgICAgICAgICBHdW5ha2FuIHBpbGloYW4gYmF3YWFuIHVudHVrIGJlcmthcyBrb25maWcgYmFydSAiCisjfiAiamlrYSBcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgIHRlcnNlZGlhLCBqYW5nYW4gdGFueWEuIEppa2EgdGlkYWsgYWRhIGJlcmthcyAiCisjfiAiYmF3YWFuLCBcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgIEFuZGEgYWthbiBkaXRhbnlhIGtlY3VhbGkgYmlsYSBzYWxhaCBzYXR1IGRhcmkgIgorI34gInBpbGloYW4gXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICBjb25mb2xkIGF0YXUgY29uZm5ldyBqdWdhIGFkYVxuIgorI34gIiAgY29uZm1pc3MgWyFdICAgICAgICAgU2VsYWx1IHBhc2FuZyBiZXJrYXMga29uZmlnIHlhbmcgaGlsYW5nXG4iCisjfiAiICBjb25mYXNrIFshXSAgICAgICAgICBUYW55YWthbiB1bnR1ayBtZW5nZ2FudGkgYXRhdSB0aWRhayBiZXJrYXMgY29uZmlnXG4iCisjfiAiICBicmVha3MgWyFdICAgICAgICAgICBQYXNhbmcgc2FqYSB3YWxhdXB1biBha2FuIG1lcnVzYWsgcGFrZXQgbGFpbm55YVxuIgorI34gIiAgY29uZmxpY3RzIFshXSAgICAgICAgSXppbmthbiBwZW1hc2FuZ2FuIHBha2V0LXBha2V0IHlhbmcgYmVudHJva1xuIgorI34gIiAgYXJjaGl0ZWN0dXJlIFshXSAgICAgVGV0YXAgZGlwcm9zZXMgd2FsYXUgc2FsYWggYXJzaXRla3R1clxuIgorI34gIiAgb3ZlcndyaXRlLWRpciBbIV0gICAgVGltcGEgZGlyZWt0b3JpIHN1YXR1IHBha2V0IGRlbmdhbiBiZXJrYXMgbGFpblxuIgorI34gIiAgdW5zYWZlLWlvIFshXSAgICAgICAgSmFuZ2FuIGxha3VrYW4gb3BlcmFzaSBJL08gc2VoYXQgc2FhdCBtZW1idWthICIKKyN+ICJiZXJrYXNcbiIKKyN+ICIgIHJlbW92ZS1yZWluc3RyZXEgWyFdIEJ1YW5nIHBha2V0IHlhbmcgcGVybHUgZGlwYXNhbmdcbiIKKyN+ICIgIHJlbW92ZS1lc3NlbnRpYWwgWyFdIEJ1YW5nIHN1YXR1IHBha2V0IHBlbnRpbmdcbiIKKyN+ICJcbiIKKyN+ICJQRVJJTkdBVEFOIC0gcGVuZ2d1bmFhbiBwaWxpaGFuIGJlcnRhbmRhIFshXSBkYXBhdCBtZW1idWF0IHNpc3RlbSBydXNhayAiCisjfiAicGFyYWguXG4iCisjfiAiUGlsaWhhbiBwYWtzYWFuIGJlcnRhbmRhIFsqXSBha2FuIGxhbmdzdW5nIGRpYWt0aWZrYW4uXG4iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBkcGtnLXNwbGl0IHRvIHNlZSBpZiBpdCdzIHBhcnQgb2YgYSBtdWx0aXBhcnRlciIKKyN+IG1zZ3N0ciAiIgorI34gImdhZ2FsIG1lbmphbGFua2FuICdkcGtnLXNwbGl0JyB1bnR1ayBtZWxpaGF0IGppa2EgYmFnaWFubnlhIG1lcnVwYWthbiAiCisjfiAic3VhdHUgYmFueWFrLWJhZ2lhbiAobXVsdGlwYXJ0ZXIpIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWNsIGRlYnNpZy12ZXJpZnkiCisjfiBtc2dzdHIgImdhZ2FsIG1lbmphbGFua2FuICdkZWJzaWctdmVyaWZ5JyIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIGRwa2ctZGViIHRvIGV4dHJhY3QgY29udHJvbCBpbmZvcm1hdGlvbiIKKyN+IG1zZ3N0ciAiR2FnYWwgbWVuamFsYW5rYW4gJ2Rwa2ctZGViJyB1bnR1ayBtZW5ndXJhaSBpbmZvcm1hc2kgJ2NvbnRyb2wnIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGV4ZWMgZHBrZy1kZWIgdG8gZ2V0IGZpbGVzeXN0ZW0gYXJjaGl2ZSIKKyN+IG1zZ3N0ciAiZ2FnYWwgbWVuamFsYW5rYW4gJ2Rwa2ctZGViJyB1bnR1ayBtZW5kYXBhdGthbiBhcnNpcCBiZXJrYXMgc2lzdGVtIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSBkaXNhcHBlYXJpbmcgY29udHJvbCBpbmZvIGZpbGUgYCUuMjUwcyciCisjfiBtc2dzdHIgImdhZ2FsIG1lbmdoYXB1cyBiZXJrYXMgaW5mbyAnY29udHJvbCcgJyUuMjUwcycgeWFuZyBsZW55YXAiCisKKyN+IG1zZ2lkICJkcGtnOiAlcyBub3QgZm91bmQuXG4iCisjfiBtc2dzdHIgImRwa2c6ICVzIHRpZGFrIGFkYS4gXG4iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gLi4uL0RFQklBTiIKKyN+IG1zZ3N0ciAiZ2FnYWwgbWVtaW5kYWggZGlyZWt0b3JpIGtlIC4uLi9ERUJJQU4iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyB0YXIgLWNmIgorI34gbXNnc3RyICJnYWdhbCBtZW5qYWxhbmthbiBwZXJpbnRhaCAndGFyIC1jZiciCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gbWFrZSB0bXBmaWxlIChjb250cm9sKSIKKyN+IG1zZ3N0ciAiZ2FnYWwgbWVtYnVhdCBiZXJrYXMgdG1wIChjb250cm9sKSIKKworI34gbXNnaWQgImZhaWxlZCB0byB1bmxpbmsgdG1wZmlsZSAoY29udHJvbCksICVzIgorI34gbXNnc3RyICJHYWdhbCBtZW1idWFuZyBsaW5rIGJlcmthcyB0bXAgKGNvbnRyb2wpLCAlcyIKKworI34gbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdG1wZmlsZSAoY29udHJvbCkiCisjfiBtc2dzdHIgImdhZ2FsIG1lbmd1bGFuZ2kgYmVya2FzIHRtcCAoY29udHJvbCkiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZnN0YXQgdG1wZmlsZSAoY29udHJvbCkiCisjfiBtc2dzdHIgImdhZ2FsIG1lbGFrdWthbiAnZnN0YXQnIHBhZGEgYmVya2FzIHRtcCAoY29udHJvbCkiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBmaW5kIgorI34gbXNnc3RyICJnYWdhbCBtZW5qYWxhbmthbiBwZXJpbnRhaCAnZmluZCciCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBzaCAtYyBtdiBmb28vKiAmYyIKKyN+IG1zZ3N0ciAiZ2FnYWwgbWVuamFsYW5rYW4gJ3NoIC1jIG12IGZvby8qICZjJyIKKworI34gbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtICUuMjUwcyBsZW5ndGggY29udGFpbnMgbnVsbHMiCisjfiBtc2dzdHIgImJlcmthcyAnJS4yNTBzJyB0ZXJrb3J1cHNpIC0gcGFuamFuZyAlLjI1MHMgdGlkYWsgYmVyaXNpIGFwYS1hcGEuIgorCisjfiBtc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gbmVnYXRpdmUgbWVtYmVyIGxlbmd0aCAlemkiCisjfiBtc2dzdHIgImJlcmthcyAnJS4yNTBzJyB0ZXJrb3J1cHNpIC0gcGFuamFuZyBhbmdnb3RhIG5lZ2F0aWY6ICV6aSIKKworI34gbXNnaWQgImZhaWxlZCBnZXR0aW5nIHRoZSBjdXJyZW50IGZpbGUgcG9zaXRpb24iCisjfiBtc2dzdHIgImdhZ2FsIG1lbmVtdWthbiBwb3Npc2kgYmVya2FzIGluaSIKKworI34gbXNnaWQgImZhaWxlZCBzZXR0aW5nIHRoZSBjdXJyZW50IGZpbGUgcG9zaXRpb24iCisjfiBtc2dzdHIgImdhZ2FsIG1lbmF0YSBwb3Npc2kgYmVya2FzIGluaSIKKworI34gbXNnaWQgInZlcnNpb24gbnVtYmVyIgorI34gbXNnc3RyICJub21vciB2ZXJzaSIKKworI34gbXNnaWQgIm1lbWJlciBsZW5ndGgiCisjfiBtc2dzdHIgInBhbmphbmcgYW5nZ290YSIKKworI34gbXNnaWQgImhlYWRlciBpbmZvIG1lbWJlciIKKyN+IG1zZ3N0ciAia2V0ZXJhbmdhbiBoZWFkZXIgYW5nZ290YSIKKworI34gbXNnaWQgInNraXBwZWQgY29udHJvbCBhcmVhIGZyb20gJXMiCisjfiBtc2dzdHIgImhpbmRhcmkgYXJlYSBjb250cm9sIGRhcmkgJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHRlbXBvcmFyeSBkaXJlY3RvcnkiCisjfiBtc2dzdHIgImdhZ2FsIG1lbWJ1YXQgZGlyZWt0b3JpIHNlbWVudGFyYSIKKworI34gbXNnaWQgImluZm9fc3BldyIKKyN+IG1zZ3N0ciAiaW5mb19zcGV3IgorCisjfiBtc2dpZCAiaW5mbyBsZW5ndGgiCisjfiBtc2dzdHIgInBhbmphbmcgaW5mbyIKKworI34gbXNnaWQgInRvdGFsIGxlbmd0aCIKKyN+IG1zZ3N0ciAicGFuamFuZyB0b3RhbCIKKworI34gbXNnaWQgImRhdGEgbGVuZ3RoIgorI34gbXNnc3RyICJwYW5qYW5nIGRhdGEiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBkcGtnLWRlYiB0byBleHRyYWN0IGZpZWxkIHZhbHVlIgorI34gbXNnc3RyICJHYWdhbCBtZW5qYWxhbmthbiAnZHBrZy1kZWInIHVudHVrIG1lbmd1cmFpIG5pbGFpIHJ1YXMgaXNpYW4iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gc3RhdCAlczogJXMiCisjfiBtc2dzdHIgImdhZ2FsIG1lbmF0YSBzdGF0dXMgJXM6ICVzIgorCisjfiBtc2dpZCAic2xhdmUgbmFtZSAlcyBkdXBsaWNhdGVkIgorI34gbXNnc3RyICJuYW1hIHRpcnVhbiAlcyBnYW5kYSIKKworI34gbXNnaWQgInNsYXZlIGxpbmsgJXMgZHVwbGljYXRlZCIKKyN+IG1zZ3N0ciAibmFyYSB0aXJ1YW4gJXMgZ2FuZGEiCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3BvL2luc2VydC1oZWFkZXIuc2luIGIvZHBrZy0xLjE2LjEuMS9wby9pbnNlcnQtaGVhZGVyLnNpbgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iMjZkZTAxCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9wby9pbnNlcnQtaGVhZGVyLnNpbgpAQCAtMCwwICsxLDIzIEBACisjIFNlZCBzY3JpcHQgdGhhdCBpbnNlcnRzIHRoZSBmaWxlIGNhbGxlZCBIRUFERVIgYmVmb3JlIHRoZSBoZWFkZXIgZW50cnkuCisjCisjIEF0IGVhY2ggb2NjdXJyZW5jZSBvZiBhIGxpbmUgc3RhcnRpbmcgd2l0aCAibXNnaWQgIiwgd2UgZXhlY3V0ZSB0aGUgZm9sbG93aW5nCisjIGNvbW1hbmRzLiBBdCB0aGUgZmlyc3Qgb2NjdXJyZW5jZSwgaW5zZXJ0IHRoZSBmaWxlLiBBdCB0aGUgZm9sbG93aW5nCisjIG9jY3VycmVuY2VzLCBkbyBub3RoaW5nLiBUaGUgZGlzdGluY3Rpb24gYmV0d2VlbiB0aGUgZmlyc3QgYW5kIHRoZSBmb2xsb3dpbmcKKyMgb2NjdXJyZW5jZXMgaXMgYWNoaWV2ZWQgYnkgbG9va2luZyBhdCB0aGUgaG9sZCBzcGFjZS4KKy9ebXNnaWQgL3sKK3gKKyMgVGVzdCBpZiB0aGUgaG9sZCBzcGFjZSBpcyBlbXB0eS4KK3MvbS9tLwordGEKKyMgWWVzIGl0IHdhcyBlbXB0eS4gRmlyc3Qgb2NjdXJyZW5jZS4gUmVhZCB0aGUgZmlsZS4KK3IgSEVBREVSCisjIE91dHB1dCB0aGUgZmlsZSdzIGNvbnRlbnRzIGJ5IHJlYWRpbmcgdGhlIG5leHQgbGluZS4gQnV0IGRvbid0IGxvc2UgdGhlCisjIGN1cnJlbnQgbGluZSB3aGlsZSBkb2luZyB0aGlzLgorZworTgorYmIKKzphCisjIFRoZSBob2xkIHNwYWNlIHdhcyBub25lbXB0eS4gRm9sbG93aW5nIG9jY3VycmVuY2VzLiBEbyBub3RoaW5nLgoreAorOmIKK30KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvcG8vaXQuZ21vIGIvZHBrZy0xLjE2LjEuMS9wby9pdC5nbW8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNmE5ZDkxZQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvcG8vaXQuZ21vCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvcG8vaXQucG8gYi9kcGtnLTEuMTYuMS4xL3BvL2l0LnBvCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmFkMmE1OWEKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3BvL2l0LnBvCkBAIC0wLDAgKzEsNjc4MCBAQAorIyBJdGFsaWFuIHRyYW5zbGF0aW9uIG9mIGRwa2cKKyMgQ29weXJpZ2h0IChDKSAyMDAwLTIwMDgsIDIwMDksIDIwMTAgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCisjIFRoaXMgZmlsZSBpcyBkaXN0cmlidXRlZCB1bmRlciB0aGUgc2FtZSBsaWNlbnNlIGFzIHRoZSBkcGtnIHBhY2thZ2UuCisjIExlbGUgR2FpZmF4IDxsZWxlQHNlbGRhdGkuaXQ+LCAyMDAwLCAyMDAxLCAyMDAyLCAyMDAzLCAyMDA0LCAyMDA1LCAyMDA2LgorIyBTdGVmYW5vIENhbmVwYSA8c2NAbGludXguaXQ+LCAyMDA0LCAyMDA1LgorIworIyAnYmFkIG1hZ2ljJyAuLi4uLi4uLjogJ2NvZGljZSBkaSBjb250cm9sbG8gZXJyYXRvJworIyAnYnJva2VuJyAuLi4uLi4uLi4uLjogJ2RpZmV0dG9zbycKKyMgJ2J1bGsgdXBkYXRlJyAuLi4uLi46ICdhZ2dpb3JuYW1lbnRvIG1hc3Npdm8nCisjICdkaXZlcnRlZCBieScgLi4uLi4uOiAnZGl2ZXJzaWZpY2F0byBkYScKKyMgJ2ZpbGUgZGV0YWlscyBmaWVsZCc6ICdjYW1wbyBkZXR0YWdsaSBkZWwgZmlsZScKKyMgJ21haW50YWluZXInIC4uLi4uLi46ICdyZXNwb25zYWJpbGUnCisjICduZXN0ZWQgZXJyb3JzJyAuLi4uOiAnZXJyb3JpIGNvcnJlbGF0aScKKyMgJ3BhZCcgLi4uLi4uLi4uLi4uLi46ICdyaWVtcGltZW50bycKKyMgJ3BhbicgLi4uLi4uLi4uLi4uLi46ICdzbGl0dGFyZScKKyMgJ3B1cmdlJyAuLi4uLi4uLi4uLi46ICdlbGltaW5hJworIyAncmVxdWlyZWQnIC4uLi4uLi4uLjogJ2Vzc2VuemlhbGUnCisjCisjIENvbGxlZ2FtZW50byB1dGlsZQorIworIyBodHRwczovL2xpc3RzLnVidW50dS5jb20vYXJjaGl2ZXMvdWJ1bnR1LWRldmVsLzIwMDctSmFudWFyeS8wMjMyMTIuaHRtbAorIyBNaWxvIENhc2FncmFuZGUgPG1pbG9AdWJ1bnR1LmNvbT4sIDIwMDksIDIwMTAuCittc2dpZCAiIgorbXNnc3RyICIiCisiUHJvamVjdC1JZC1WZXJzaW9uOiBkcGtnLTEuMTUuOC41XG4iCisiUmVwb3J0LU1zZ2lkLUJ1Z3MtVG86IGRlYmlhbi1kcGtnQGxpc3RzLmRlYmlhbi5vcmdcbiIKKyJQT1QtQ3JlYXRpb24tRGF0ZTogMjAxMS0xMC0xNCAwNzoxMSswMjAwXG4iCisiUE8tUmV2aXNpb24tRGF0ZTogMjAxMC0xMi0xNiAyMjozOCswMTAwXG4iCisiTGFzdC1UcmFuc2xhdG9yOiBNaWxvIENhc2FncmFuZGUgPG1pbG9AdWJ1bnR1LmNvbT5cbiIKKyJMYW5ndWFnZS1UZWFtOiBJdGFsaWFuIDx0cEBsaXN0cy5saW51eC5pdD5cbiIKKyJMYW5ndWFnZTogaXRcbiIKKyJNSU1FLVZlcnNpb246IDEuMFxuIgorIkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD1VVEYtOFxuIgorIkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXRcbiIKKyJQbHVyYWwtRm9ybXM6IG5wbHVyYWxzPTI7IHBsdXJhbD0obiAhPSAxKTtcbiIKKworIzogbGliL2Rwa2cvYXIuYzo2NgorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGNoYXJhY3RlciAnJWMnIGluIGFyY2hpdmUgJyUuMjUwcycgbWVtYmVyICclLjE2cycgc2l6ZSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9hci5jOjgxIGxpYi9kcGtnL2FyLmM6OTcgbGliL2Rwa2cvYXIuYzoxMDggbGliL2Rwa2cvYXIuYzoxMTIKKyM6IGxpYi9kcGtnL2FyLmM6MTM0IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTU0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBmaWxlICclcyciCittc2dzdHIgImltcG9zc2liaWxlIHNjcml2ZXJlIGlsIGZpbGUgXCIlc1wiIgorCisjOiBsaWIvZHBrZy9hci5jOjk0CisjLCBjLWZvcm1hdAorbXNnaWQgImdlbmVyYXRlZCBjb3JydXB0IGFyIGhlYWRlciBmb3IgJyVzJyIKK21zZ3N0ciAiZ2VuZXJhdGEgaW50ZXN0YXppb25lIGFyIGRhbm5lZ2dpYXRhIHBlciBcIiVzXCIiCisKKyM6IGxpYi9kcGtnL2FyLmM6MTIzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBmc3RhdCBhciBtZW1iZXIgZmlsZSAoJXMpIgorbXNnc3RyICJlc2VjdXppb25lIGRpIGZzdGF0IHN1bCBmaWxlIGFyIG5vbiByaXVzY2l0YSAoJXMpIgorCisjOiBsaWIvZHBrZy9hci5jOjEzMAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGFyIG1lbWJlciBmaWxlICglcykiCittc2dpZCAiYXIgbWVtYmVyIGZpbGUgKCVzKSIKK21zZ3N0ciAiZXNlY3V6aW9uZSBkaSBmc3RhdCBzdWwgZmlsZSBhciBub24gcml1c2NpdGEgKCVzKSIKKworIzogbGliL2Rwa2cvYnVmZmVyLmM6MTk2CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZWFkIG9uIGJ1ZmZlciBjb3B5IGZvciAlcyIKK21zZ3N0ciAibGV0dHVyYSBkdXJhbnRlIGxhIGNvcGlhIGRlbCBidWZmZXIgcGVyICVzIG5vbiByaXVzY2l0YSIKKworIzogbGliL2Rwa2cvYnVmZmVyLmM6MjEyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCBpbiB3cml0ZSBvbiBidWZmZXIgY29weSBmb3IgJXMiCittc2dzdHIgInNjcml0dHVyYSBkdXJhbnRlIGxhIGNvcGlhIGRlbCBidWZmZXIgcGVyICVzIG5vbiByaXVzY2l0YSIKKworIyAobmR0KSBvIGxhc2NpYXJlIHNob3J0IHJlYWQ/CisjOiBsaWIvZHBrZy9idWZmZXIuYzoyMjAKKyMsIGMtZm9ybWF0Cittc2dpZCAic2hvcnQgcmVhZCBvbiBidWZmZXIgY29weSBmb3IgJXMiCittc2dzdHIgImxldHR1cmEgYnJldmUgZHVyYW50ZSBsYSBjb3BpYSBkZWwgYnVmZmVyIHBlciAlcyIKKworIzogbGliL2Rwa2cvYnVmZmVyLmM6Mjg4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyB0YXIiCittc2dpZCAiZmFpbGVkIHRvIHNlZWsgJXMiCittc2dzdHIgImVzZWN1emlvbmUgZGkgdGFyIG5vbiByaXVzY2l0YSIKKworIzogbGliL2Rwa2cvY29tbWFuZC5jOjE3OCBsaWIvZHBrZy9jb21tYW5kLmM6MjA0IHNyYy9oZWxwLmM6NjIxCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjk4IHNyYy9wcm9jZXNzYXJjLmM6MTM4IHNyYy9wcm9jZXNzYXJjLmM6NDMyCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjgzOSBkcGtnLWRlYi9idWlsZC5jOjQ1OSBkcGtnLWRlYi9idWlsZC5jOjUzOAorIzogZHBrZy1kZWIvYnVpbGQuYzo1NjEgZHBrZy1kZWIvZXh0cmFjdC5jOjMxNyBkcGtnLWRlYi9pbmZvLmM6NjUKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzo2OSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NDU3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBleGVjdXRlICVzICglcykiCittc2dzdHIgImltcG9zc2liaWxlIGVzZWd1aXJlICVzICglcykiCisKKyMgKG5kdCkgY29tcHJpbWVyZSAtPiBkZWNvbXByaW1lcmUuLi4KKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGRlY29tcHJlc3Npb24iCittc2dzdHIgIiVzOiBkZWNvbXByZXNzaW9uZSIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzo4OQorIywgYy1mb3JtYXQKK21zZ2lkICIlczogY29tcHJlc3Npb24iCittc2dzdHIgIiVzOiBjb21wcmVzc2lvbmUiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTEyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvciBiaW5kaW5nIGlucHV0IHRvIGd6aXAgc3RyZWFtIgorbXNnc3RyICIlczogZXJyb3JlIG5lbCBsZWdhcmUgbCdpbnB1dCBhbGxvIHN0cmVhbSBkaSBnemlwIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCByZWFkIGVycm9yOiAnJXMnIgorbXNnc3RyICIlczogZXJyb3JlIGludGVybm8gZGkgbGV0dHVyYSBkaSBnemlwOiBcIiVzXCIiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTMyIGxpYi9kcGtnL2NvbXByZXNzLmM6MTM2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHdyaXRlIGVycm9yIgorbXNnc3RyICIlczogZXJyb3JlIGludGVybm8gZGkgc2NyaXR0dXJhIGRpIGd6aXAiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTUwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvciBiaW5kaW5nIG91dHB1dCB0byBnemlwIHN0cmVhbSIKK21zZ3N0ciAiJXM6IGVycm9yZSBuZWwgbGVnYXJlIGwnb3V0cHV0IGFsbG8gc3RyZWFtIGRpIGd6aXAiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTU3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHJlYWQgZXJyb3IiCittc2dzdHIgIiVzOiBlcnJvcmUgaW50ZXJubyBkaSBsZXR0dXJhIGRpIGd6aXAiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTY3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHdyaXRlIGVycm9yOiAnJXMnIgorbXNnc3RyICIlczogZXJyb3JlIGludGVybm8gZGkgc2NyaXR0dXJhIGRpIGd6aXA6IFwiJXNcIiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgd3JpdGUgZXJyb3I6ICVzIgorbXNnc3RyICIlczogZXJyb3JlIGludGVybm8gZGkgc2NyaXR0dXJhIGRpIGd6aXA6ICVzIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjIyMAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZXJyb3IgYmluZGluZyBpbnB1dCB0byBiemlwMiBzdHJlYW0iCittc2dzdHIgIiVzOiBlcnJvcmUgbmVsIGxlZ2FyZSBsJ2lucHV0IGFsbG8gc3RyZWFtIGRpIGJ6aXAyIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjIzMgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgcmVhZCBlcnJvcjogJyVzJyIKK21zZ3N0ciAiJXM6IGVycm9yZSBpbnRlcm5vIGRpIGxldHR1cmEgZGkgYnppcDI6IFwiJXNcIiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyNDAgbGliL2Rwa2cvY29tcHJlc3MuYzoyNDQgbGliL2Rwa2cvY29tcHJlc3MuYzoyOTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIHdyaXRlIGVycm9yIgorbXNnc3RyICIlczogZXJyb3JlIGludGVybm8gZGkgc2NyaXR0dXJhIGRpIGJ6aXAyIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI1OAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZXJyb3IgYmluZGluZyBvdXRwdXQgdG8gYnppcDIgc3RyZWFtIgorbXNnc3RyICIlczogZXJyb3JlIG5lbCBsZWdhcmUgbCdvdXRwdXQgYWxsbyBzdHJlYW0gZGkgYnppcDIiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjY1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiByZWFkIGVycm9yIgorbXNnc3RyICIlczogZXJyb3JlIGludGVybm8gZGkgbGV0dHVyYSBkaSBiemlwMiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyNzUgbGliL2Rwa2cvY29tcHJlc3MuYzoyODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIHdyaXRlIGVycm9yOiAnJXMnIgorbXNnc3RyICIlczogZXJyb3JlIGludGVybm8gZGkgc2NyaXR0dXJhIGRpIGJ6aXAyOiBcIiVzXCIiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjgyCittc2dpZCAidW5leHBlY3RlZCBiemlwMiBlcnJvciIKK21zZ3N0ciAiZXJyb3JlIGluYXR0ZXNvIGRpIGJ6aXAyIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjY4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1cGRhdGVzIGRpcmVjdG9yeSBjb250YWlucyBmaWxlIGAlLjI1MHMnIHdob3NlIG5hbWUgaXMgdG9vIGxvbmcgKGxlbmd0aD0lZCwgIgorIm1heD0lZCkiCittc2dzdHIgIiIKKyJsYSBkaXJlY3RvcnkgdXBkYXRlcyBjb250aWVuZSBpbCBmaWxlIFwiJS4yNTBzXCIgaWwgY3VpIG5vbWUgw6ggdHJvcHBvIGx1bmdvICIKKyIobHVuZ2g9JWQsIG1heD0lZCkiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVwZGF0ZXMgZGlyZWN0b3J5IGNvbnRhaW5zIGZpbGVzIHdpdGggZGlmZmVyZW50IGxlbmd0aCBuYW1lcyAoYm90aCAlZCBhbmQgJWQpIgorbXNnc3RyICIiCisibGEgZGlyZWN0b3J5IHVwZGF0ZXMgY29udGllbmUgZmlsZSBjb24gbm9taSBkaSBkaXZlcnNhIGx1bmdoZXp6YSAoc2lhICVkIGNoZSAiCisiJWQpIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjg2CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzY2FuIHVwZGF0ZXMgZGlyZWN0b3J5IGAlLjI1NXMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSBhbmFsaXp6YXJlIGxhIGRpcmVjdG9yeSB1cGRhdGVzIFwiJS4yNTVzXCIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZW1vdmUgaW5jb3Jwb3JhdGVkIHVwZGF0ZSBmaWxlICUuMjU1cyIKK21zZ3N0ciAicmltb3ppb25lIGRlbCBmaWxlIGRpIHVwZGF0ZSBpbmNvcnBvcmF0byAlLjI1NXMgbm9uIHJpdXNjaXRhIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEyMSBkcGtnLWRlYi9idWlsZC5jOjQ0NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGAlLjI1NXMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSBjcmVhcmUgXCIlLjI1NXNcIiIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxMjUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZpbGwgJS4yNTBzIHdpdGggcGFkZGluZyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgY29tcGxldGFyZSBpbCByaWVtcGltZW50byBkaSAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTI3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCAlLjI1MHMgYWZ0ZXIgcGFkZGluZyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgZXNlZ3VpcmUgaWwgZmx1c2ggZGkgJS4yNTBzIGRvcG8gaWwgcmllbXBpbWVudG8iCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTI5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWVrIHRvIHN0YXJ0IG9mICUuMjUwcyBhZnRlciBwYWRkaW5nIgorbXNnc3RyICJpbXBvc3NpYmlsZSBzcG9zdGFyc2kgYWxsJ2luaXppbyBkaSAlLjI1MHMgZG9wbyBpbCByaWVtcGltZW50byIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxOTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gbG9jayBmaWxlICVzIGZvciB0ZXN0aW5nIgorbXNnc3RyICJpbXBvc3NpYmlsZSBhcHJpcmUgaWwgZmlsZSBkaSBibG9jY28gJXMgcGVyIGxhIHZlcmlmaWNhIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjIyMQorbXNnaWQgInVuYWJsZSB0byBvcGVuL2NyZWF0ZSBzdGF0dXMgZGF0YWJhc2UgbG9ja2ZpbGUiCittc2dzdHIgImltcG9zc2liaWxlIGFwcmlyZS9jcmVhcmUgaWwgZmlsZSBkaSBibG9jY28gcGVyIGlsIGRhdGFiYXNlIGRpIHN0YXRvIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjIzMQorbXNnaWQgInlvdSBkbyBub3QgaGF2ZSBwZXJtaXNzaW9uIHRvIGxvY2sgdGhlIGRwa2cgc3RhdHVzIGRhdGFiYXNlIgorbXNnc3RyICJwZXJtZXNzaSBpbnN1ZmZpY2llbnRpIHBlciBibG9jY2FyZSBpbCBkYXRhYmFzZSBkaSBzdGF0byBkaSBkcGtnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjIzMworIywgZnV6enkKKyN8IG1zZ2lkICJ1bmFibGUgdG8gbG9jayBkcGtnIHN0YXR1cyBkYXRhYmFzZSIKK21zZ2lkICJkcGtnIHN0YXR1cyBkYXRhYmFzZSIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgb3R0ZW5lcmUgaWwgYmxvY2NvIGRlbCBkYXRhYmFzZSBkaSBzdGF0byBkaSBkcGtnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjI1NworbXNnaWQgInJlcXVlc3RlZCBvcGVyYXRpb24gcmVxdWlyZXMgc3VwZXJ1c2VyIHByaXZpbGVnZSIKK21zZ3N0ciAibCdvcGVyYXppb25lIHJpY2hpZXN0YSBuZWNlc3NpdGEgZGVpIHByaXZpbGVnaSBkaSBzdXBlci11dGVudGUiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjYyCittc2dpZCAidW5hYmxlIHRvIGFjY2VzcyBkcGtnIHN0YXR1cyBhcmVhIgorbXNnc3RyICJpbXBvc3NpYmlsZSBhY2NlZGVyZSBhbGwnYXJlYSBkaSBzdGF0byBkaSBkcGtnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjI2NAorbXNnaWQgIm9wZXJhdGlvbiByZXF1aXJlcyByZWFkL3dyaXRlIGFjY2VzcyB0byBkcGtnIHN0YXR1cyBhcmVhIgorbXNnc3RyICIiCisibCdvcGVyYXppb25lIG5lY2Vzc2l0YSBpIHBlcm1lc3NpIGRpIGxldHR1cmEvc2NyaXR0dXJhIGFsbCdhcmVhIGRpIHN0YXRvIGRpICIKKyJkcGtnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjMwOQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVtb3ZlIG15IG93biB1cGRhdGUgZmlsZSAlLjI1NXMiCittc2dzdHIgImltcG9zc2liaWxlIHJpbXVvdmVyZSBxdWVzdG8gc3Rlc3NvIGZpbGUgZGkgdXBkYXRlICUuMjU1cyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSBzY3JpdmVyZSBsbyBzdGF0byBhZ2dpb3JuYXRvIGRpIFwiJS4yNTBzXCIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzQ5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgZXNlZ3VpcmUgZmx1c2ggZGVsbG8gc3RhdG8gYWdnaW9ybmF0byBkaSBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM1MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gdHJ1bmNhdGUgZm9yIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSBlc2VndWlyZSB0cnVuY2F0ZSBwZXIgbG8gc3RhdG8gYWdnaW9ybmF0byBkaSBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM1MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZnN5bmMgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgImltcG9zc2liaWxlIGVzZWd1aXJlIGZzeW5jIHBlciBsbyBzdGF0byBhZ2dpb3JuYXRvIGRpIFwiJS4yNTBzXCIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzU1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgY2hpdWRlcmUgbG8gc3RhdG8gYWdnaW9ybmF0byBkaSBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM1OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgaW5zdGFsbGFyZSBsbyBzdGF0byBhZ2dpb3JuYXRvIGRpIFwiJS4yNTBzXCIiCisKKyM6IGxpYi9kcGtnL2Rpci5jOjUwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gcmVhZCBmaWxlZGVzY3JpcHRvciBmbGFncyBmb3IgJS4yNTBzIgorbXNnaWQgInVuYWJsZSB0byBnZXQgZmlsZSBkZXNjcmlwdG9yIGZvciBkaXJlY3RvcnkgJyVzJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgbGVnZ2VyZSBpIGZsYWcgZmlsZWRlc2NyaXB0b3IgcGVyICUuMjUwcyIKKworIzogbGliL2Rwa2cvZGlyLmM6NTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byBzeW5jIGZpbGUgJyVzJyIKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBkaXJlY3RvcnkgJyVzJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgc2luY3Jvbml6emFyZSBpbCBmaWxlIFwiJXNcIiIKKworIzogbGliL2Rwa2cvZGlyLmM6NjkgbGliL2Rwa2cvZGlyLmM6MTMxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gb3BlbiBmaWxlICclcyciCittc2dpZCAidW5hYmxlIHRvIG9wZW4gZGlyZWN0b3J5ICclcyciCittc2dzdHIgImltcG9zc2liaWxlIGFwcmlyZSBpbCBmaWxlIFwiJXNcIiIKKworIzogbGliL2Rwa2cvZGlyLmM6MTA5IHNyYy9kaXZlcnRjbWQuYzoyMTggZHBrZy1zcGxpdC9zcGxpdC5jOjIwMgorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gZmlsZSAnJXMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSBhcHJpcmUgaWwgZmlsZSBcIiVzXCIiCisKKyM6IGxpYi9kcGtnL2Rpci5jOjExMSBzcmMvZGl2ZXJ0Y21kLmM6MjMyIHNyYy9kaXZlcnRjbWQuYzozNzcKKyM6IHNyYy9zdGF0Y21kLmM6MjE3IGRwa2ctZGViL2J1aWxkLmM6NTk4IGRwa2ctc3BsaXQvam9pbi5jOjY1CisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTg3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNDA2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzeW5jIGZpbGUgJyVzJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgc2luY3Jvbml6emFyZSBpbCBmaWxlIFwiJXNcIiIKKworIzogbGliL2Rwa2cvZGlyLmM6MTEzIHNyYy9kaXZlcnRjbWQuYzoyMzQgc3JjL2RpdmVydGNtZC5jOjM3OQorIzogZHBrZy1kZWIvYnVpbGQuYzo2MDAgZHBrZy1zcGxpdC9qb2luLmM6NjcgZHBrZy1zcGxpdC9xdWV1ZS5jOjE4OQorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzMTQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE0MDgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIGZpbGUgJyVzJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgY2hpdWRlcmUgaWwgZmlsZSBcIiVzXCIiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzozOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIGRldGFpbHMgb2YgYCUuNTBzJyB0byBgJS4yNTBzJyIKK21zZ3N0ciAic2NyaXR0dXJhIGRlaSBkZXR0YWdsaSBkaSBcIiUuNTBzXCIgaW4gXCIlLjI1MHNcIiBub24gcml1c2NpdGEiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0MjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gJyVzJyBmb3Igd3JpdGluZyAlcyBkYXRhYmFzZSIKK21zZ3N0ciAiYXBlcnR1cmEgZGkgXCIlc1wiIHBlciBsYSBzY3JpdHR1cmEgZGVsIGRhdGFiYXNlICVzIG5vbiByaXVzY2l0YSIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQyNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IGJ1ZmZlcmluZyBvbiAlcyBkYXRhYmFzZSBmaWxlIgorbXNnc3RyICJpbXBvc3NpYmlsZSBpbXBvc3RhcmUgbGEgYnVmZmVyaXp6YXppb25lIHN1bCBmaWxlICVzIGRlbCBkYXRhYmFzZSIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQzOAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgJXMgZGF0YWJhc2UgcmVjb3JkIGFib3V0ICclLjUwcycgdG8gJyUuMjUwcyciCittc2dzdHIgIiIKKyJzY3JpdHR1cmEgZGVsIHJlY29yZCAlcyBkZWwgZGF0YWJhc2UsIHJlbGF0aXZvIGEgXCIlLjUwc1wiIGluIFwiJS4yNTBzXCIsICIKKyJub24gcml1c2NpdGEiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZsdXNoICVzIGRhdGFiYXNlIHRvICclLjI1MHMnIgorbXNnc3RyICJlc2VjdXppb25lIGRpIGZsdXNoIGRlbCBkYXRhYmFzZSAlcyBpbiBcIiUuMjUwc1wiIG5vbiByaXVzY2l0YSIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ0OAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZnN5bmMgJXMgZGF0YWJhc2UgdG8gJyUuMjUwcyciCittc2dzdHIgImVzZWN1emlvbmUgZGkgZnN5bmMgZGVsIGRhdGFiYXNlICVzIGluIFwiJS4yNTBzXCIgbm9uIHJpdXNjaXRhIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDUxCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjbG9zZSAnJS4yNTBzJyBhZnRlciB3cml0aW5nICVzIGRhdGFiYXNlIgorbXNnc3RyICJjaGl1c3VyYSBkaSBcIiUuMjUwc1wiIGRvcG8gbGEgc2NyaXR0dXJhIGRlbCBkYXRhYmFzZSAlcyBub24gcml1c2NpdGEiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGxpbmsgJyUuMjUwcycgdG8gJyUuMjUwcycgZm9yIGJhY2t1cCBvZiAlcyBkYXRhYmFzZSIKK21zZ3N0ciAiIgorImNyZWF6aW9uZSBkZWwgY29sbGVnYW1lbnRvIGRhIFwiJS4yNTBzXCIgYSBcIiUuMjUwc1wiIHBlciBpbCBiYWNrdXAgZGVsICIKKyJkYXRhYmFzZSAlcyBub24gcml1c2NpdGEiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGluc3RhbGwgJyUuMjUwcycgYXMgJyUuMjUwcycgY29udGFpbmluZyAlcyBkYXRhYmFzZSIKK21zZ3N0ciAiIgorImluc3RhbGxhemlvbmUgZGkgXCIlLjI1MHNcIiBjb21lIFwiJS4yNTBzXCIgY29udGVuZW50ZSBpbCBkYXRhYmFzZSAlcyBub24gIgorInJpdXNjaXRhIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6OTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiB1bnJlY292ZXJhYmxlIGZhdGFsIGVycm9yLCBhYm9ydGluZzpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorIiVzOiBlcnJvcmUgZmF0YWxlIG5vbiByZWN1cGVyYWJpbGUsIHVzY2l0YTpcbiIKKyIgJXNcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjEwMAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiVzOiB1bnJlY292ZXJhYmxlIGZhdGFsIGVycm9yLCBhYm9ydGluZzpcbiIKKyN8ICIgJXNcbiIKK21zZ2lkICIiCisiJXM6IG91dHNpZGUgZXJyb3IgY29udGV4dCwgYWJvcnRpbmc6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKyIlczogZXJyb3JlIGZhdGFsZSBub24gcmVjdXBlcmFiaWxlLCB1c2NpdGE6XG4iCisiICVzXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoxMjAKKyMsIGZ1enp5CisjfCBtc2dpZCAib3V0IG9mIG1lbW9yeSBmb3IgbmV3IGNsZWFudXAgZW50cnkiCittc2dpZCAib3V0IG9mIG1lbW9yeSBmb3IgbmV3IGVycm9yIGNvbnRleHQiCittc2dzdHIgIm1lbW9yaWEgZXNhdXJpdGEgcGVyIGxhIG51b3ZhIHZvY2UgZGkgY2xlYW51cCIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjE4MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IGVycm9yIHdoaWxlIGNsZWFuaW5nIHVwOlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisiJXM6IGVycm9yZSBkdXJhbnRlIGxhIHB1bGl6aWE6XG4iCisiICVzXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoyMDEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImRwa2c6IHRvbyBtYW55IG5lc3RlZCBlcnJvcnMgZHVyaW5nIGVycm9yIHJlY292ZXJ5ICEhXG4iCittc2dpZCAiJXM6IHRvbyBtYW55IG5lc3RlZCBlcnJvcnMgZHVyaW5nIGVycm9yIHJlY292ZXJ5ISFcbiIKK21zZ3N0ciAiZHBrZzogdHJvcHBpIGVycm9yaSBjb3JyZWxhdGkgZHVyYW50ZSBpbCByaXByaXN0aW5vIGRlbGwnZXJyb3JlLlxuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MjY4IGxpYi9kcGtnL2VoYW5kbGUuYzozMDcKK21zZ2lkICJvdXQgb2YgbWVtb3J5IGZvciBuZXcgY2xlYW51cCBlbnRyeSIKK21zZ3N0ciAibWVtb3JpYSBlc2F1cml0YSBwZXIgbGEgbnVvdmEgdm9jZSBkaSBjbGVhbnVwIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MjkxCittc2dpZCAib3V0IG9mIG1lbW9yeSBmb3IgbmV3IGNsZWFudXAgZW50cnkgd2l0aCBtYW55IGFyZ3VtZW50cyIKK21zZ3N0ciAibWVtb3JpYSBlc2F1cml0YSBwZXIgbGEgbnVvdmEgdm9jZSBkaSBjbGVhbnVwIGNvbiBtb2x0aSBhcmdvbWVudGkiCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzozNTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiVzOiB3YXJuaW5nOiAlc1xuIgorbXNnaWQgIiVzOiBlcnJvcjogJXNcbiIKK21zZ3N0ciAiJXM6IGF0dGVuemlvbmU6ICVzXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzozOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IHdhcm5pbmc6ICVzXG4iCittc2dzdHIgIiVzOiBhdHRlbnppb25lOiAlc1xuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6NDE2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiVzOiVkOiBpbnRlcm5hbCBlcnJvcjogJXNcbiIKK21zZ3N0ciAiJXM6JXM6JWQ6IGVycm9yZSBpbnRlcm5vICVzXG4iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGlzIG1pc3NpbmciCittc2dzdHIgIm1hbmNhICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0OQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYCUuKnMnIGlzIG5vdCBhbGxvd2VkIGZvciAlcyIKK21zZ2lkICInJS41MHMnIGlzIG5vdCBhbGxvd2VkIGZvciAlcyIKK21zZ3N0ciAiXCIlLipzXCIgbm9uIMOoIGNvbnNlbnRpdG8gcGVyICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo3MworIywgYy1mb3JtYXQKK21zZ2lkICJqdW5rIGFmdGVyICVzIgorbXNnc3RyICIlcyDDqCBzZWd1aXRvIGRhIGNvc2UgaW51dGlsaSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6ODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBwYWNrYWdlIG5hbWUgKCUuMjUwcykiCittc2dzdHIgIm5vbWUgZGVsIHBhY2NoZXR0byBub24gdmFsaWRvICglLjI1MHMpIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZW1wdHkgZmlsZSBkZXRhaWxzIGZpZWxkIGAlcyciCittc2dzdHIgImlsIGNhbXBvIGRlaSBkZXR0YWdsaSBkZWwgZmlsZSBcIiVzXCIgw6ggdnVvdG8iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjEwNQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGRldGFpbHMgZmllbGQgYCVzJyBub3QgYWxsb3dlZCBpbiBzdGF0dXMgZmlsZSIKK21zZ3N0ciAiIgorImlsIGNhbXBvIGRlaSBkZXR0YWdsaSBkZWwgZmlsZSBcIiVzXCIgbm9uIMOoIGNvbnNlbnRpdG8gbmVsIGZpbGUgZGkgc3RhdG8iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjExOAorIywgYy1mb3JtYXQKK21zZ2lkICJ0b28gbWFueSB2YWx1ZXMgaW4gZmlsZSBkZXRhaWxzIGZpZWxkIGAlcycgKGNvbXBhcmVkIHRvIG90aGVycykiCittc2dzdHIgIiIKKyJ0cm9wcGkgdmFsb3JpIG5lbCBjYW1wbyBkZWkgZGV0dGFnbGkgZGVsIGZpbGUgXCIlc1wiIChyaXNwZXR0byBhZ2xpIGFsdHJpKSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTMyCisjLCBjLWZvcm1hdAorbXNnaWQgInRvbyBmZXcgdmFsdWVzIGluIGZpbGUgZGV0YWlscyBmaWVsZCBgJXMnIChjb21wYXJlZCB0byBvdGhlcnMpIgorbXNnc3RyICIiCisidHJvcHBvIHBvY2hpIHZhbG9yaSBuZWwgY2FtcG8gZGVpIGRldHRhZ2xpIGRlbCBmaWxlIFwiJXNcIiAocmlzcGV0dG8gYWdsaSAiCisiYWx0cmkpIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxNTQKK21zZ2lkICJ5ZXMvbm8gaW4gYm9vbGVhbiBmaWVsZCIKK21zZ3N0ciAieWVzL25vIGluIHVuIGNhbXBvIGJvb2xlYW5vIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxNzQKK21zZ2lkICJ3b3JkIGluIGBwcmlvcml0eScgZmllbGQiCittc2dzdHIgInBhcm9sYSBuZWwgY2FtcG8gXCJwcmlvcml0eVwiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxODYKK21zZ2lkICJ2YWx1ZSBmb3IgYHN0YXR1cycgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICJ2YWxvcmUgcGVyIGlsIGNhbXBvIFwic3RhdHVzXCIgbm9uIGNvbnNlbnRpdG8gaW4gcXVlc3RvIGNvbnRlc3RvIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxOTEKK21zZ2lkICJmaXJzdCAod2FudCkgd29yZCBpbiBgc3RhdHVzJyBmaWVsZCIKK21zZ3N0ciAibGEgcHJpbWEgcGFyb2xhIG5lbCBjYW1wbyBcInN0YXR1c1wiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxOTQKK21zZ2lkICJzZWNvbmQgKGVycm9yKSB3b3JkIGluIGBzdGF0dXMnIGZpZWxkIgorbXNnc3RyICJsYSBzZWNvbmRhIHBhcm9sYSBuZWwgY2FtcG8gXCJzdGF0dXNcIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTk3Cittc2dpZCAidGhpcmQgKHN0YXR1cykgd29yZCBpbiBgc3RhdHVzJyBmaWVsZCIKK21zZ3N0ciAibGEgdGVyemEgcGFyb2xhIG5lbCBjYW1wbyBcInN0YXR1c1wiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyMDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgaW4gVmVyc2lvbiBzdHJpbmcgJyUuMjUwcyciCittc2dzdHIgImVycm9yZSBuZWxsYSBzdHJpbmdhIFZlcnNpb24gXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjE4Cittc2dpZCAib2Jzb2xldGUgYFJldmlzaW9uJyBvciBgUGFja2FnZS1SZXZpc2lvbicgZmllbGQgdXNlZCIKK21zZ3N0ciAidXNhdGkgaSBjYW1waSBvYnNvbGV0aSBcIlJldmlzaW9uXCIgbyBcIlBhY2thZ2UtUmV2aXNpb25cIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjM1Cittc2dpZCAidmFsdWUgZm9yIGBjb25maWctdmVyc2lvbicgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICIiCisidmFsb3JlIHBlciBpbCBjYW1wbyBcImNvbmZpZy12ZXJzaW9uXCIgbm9uIGNvbnNlbnRpdG8gaW4gcXVlc3RvIGNvbnRlc3RvIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyNDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgaW4gQ29uZmlnLVZlcnNpb24gc3RyaW5nICclLjI1MHMnIgorbXNnc3RyICJlcnJvcmUgbmVsbGEgc3RyaW5nYSBDb25maWctVmVyc2lvbiBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAidmFsdWUgZm9yIGBjb25mZmlsZXMnIGhhcyBtYWxmb3JtYXR0ZWQgbGluZSBgJS4qcyciCittc2dzdHIgIiIKKyJpbCB2YWxvcmUgcGVyIFwiY29uZmZpbGVzXCIgY29udGllbmUgdW5hIHJpZ2EgY29uIHVuIGZvcm1hdG8gZXJyYXRvIFwiJS4qc1wiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyODcKKyMsIGMtZm9ybWF0Cittc2dpZCAidmFsdWUgZm9yIGBjb25mZmlsZXMnIGhhcyBsaW5lIHN0YXJ0aW5nIHdpdGggbm9uLXNwYWNlIGAlYyciCittc2dzdHIgIiIKKyJpbCB2YWxvcmUgcGVyIFwiY29uZmZpbGVzXCIgY29udGllbmUgdW5hIHJpZ2EgY2hlIGluaXppYSBjb24gdW4gY2FyYXR0ZXJlICIKKyJcIiVjXCIgZGl2ZXJzbyBkYSBzcGF6aW8iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjMwNAorbXNnaWQgInJvb3Qgb3IgbnVsbCBkaXJlY3RvcnkgaXMgbGlzdGVkIGFzIGEgY29uZmZpbGUiCittc2dzdHIgImxhIGRpcmVjdG9yeSByb290IG9wcHVyZSB1biBub21lIG51bGxvIMOoIGluZGljYXRvIGNvbWUgdW4gXCJjb25mZmlsZVwiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzozNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIG1pc3NpbmcgcGFja2FnZSBuYW1lLCBvciBnYXJiYWdlIHdoZXJlIHBhY2thZ2UgbmFtZSBleHBlY3RlZCIKK21zZ3N0ciAiIgorImNhbXBvIFwiJXNcIiwgbWFuY2EgaWwgbm9tZSBkZWwgcGFjY2hldHRvIG9wcHVyZSBpbCB2YWxvcmUgw6ggaW5kZWNpZnJhYmlsZSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MzcwCisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgZmllbGQsIGludmFsaWQgcGFja2FnZSBuYW1lIGAlLjI1NXMnOiAlcyIKK21zZ3N0ciAiY2FtcG8gXCIlc1wiLCBub21lIGRlbCBwYWNjaGV0dG8gXCIlLjI1NXNcIiBub24gdmFsaWRvOiAlcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDA2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6XG4iCisiIGJhZCB2ZXJzaW9uIHJlbGF0aW9uc2hpcCAlYyVjIgorbXNnc3RyICIiCisiY2FtcG8gXCIlc1wiLCByaWZlcmltZW50byBhIFwiJS4yNTVzXCI6XG4iCisiIGxhIHJlbGF6aW9uZSB0cmEgbGUgdmVyc2lvbmkgJWMlYyDDqCBlcnJhdGEiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQxMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOlxuIgorIiBgJWMnIGlzIG9ic29sZXRlLCB1c2UgYCVjPScgb3IgYCVjJWMnIGluc3RlYWQiCittc2dzdHIgIiIKKyJjYW1wbyBcIiVzXCIsIHJpZmVyaW1lbnRvIGEgXCIlLjI1NXNcIjpcbiIKKyIgXCIlY1wiIMOoIG9ic29sZXRvLCB1c2FyZSBcIiVjPVwiIG8gXCIlYyVjXCIgYWwgc3VvIHBvc3RvIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgaW1wbGljaXQgZXhhY3QgbWF0Y2ggb24gdmVyc2lvbiBudW1iZXIsIHN1Z2dlc3QgdXNpbmcgYD0nIGluc3RlYWQiCittc2dzdHIgIiIKKyJjYW1wbyBcIiVzXCIsIHJpZmVyaW1lbnRvIGEgXCIlLjI1NXNcIjpcbiIKKyIgY29ycmlzcG9uZGVuemEgaW1wbGljaXRhIGVzYXR0YSBzdWwgbnVtZXJvIGRpIHZlcnNpb25lLCDDqCBjb25zaWdsaWF0byBsJ3VzbyAiCisiZGkgXCI9XCIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQzMAorbXNnaWQgIk9ubHkgZXhhY3QgdmVyc2lvbnMgbWF5IGJlIHVzZWQgZm9yIFByb3ZpZGVzIgorbXNnc3RyICJTb2xvIGxlIHZlcnNpb25pIGVzYXR0ZSBwb3Nzb25vIGVzc2VyZSB1c2F0ZSBwZXIgXCJQcm92aWRlc1wiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgdmVyc2lvbiB2YWx1ZSBzdGFydHMgd2l0aCBub24tYWxwaGFudW1lcmljLCBzdWdnZXN0IGFkZGluZyBhIHNwYWNlIgorbXNnc3RyICIiCisiY2FtcG8gXCIlc1wiLCByaWZlcmltZW50byBhIFwiJS4yNTVzXCI6XG4iCisiIG51bWVybyBkaSB2ZXJzaW9uZSBpbml6aWFudGUgY29uIHVuIGNhcmF0dGVyZSBub24gYWxmYW51bWVyaWNvLFxuIgorIiDDqCBjb25zaWdsaWF0byBhZ2dpdW5nZXJlIHVubyBzcGF6aW8iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ1MSBsaWIvZHBrZy9maWVsZHMuYzo0NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOiB2ZXJzaW9uIGNvbnRhaW5zIGAlYyciCittc2dzdHIgImNhbXBvIFwiJXNcIiwgcmlmZXJpbWVudG8gYSBcIiUuMjU1c1wiOiBsYSB2ZXJzaW9uZSBjb250aWVuZSBcIiVjXCIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ1OQorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6IHZlcnNpb24gdW50ZXJtaW5hdGVkIgorbXNnc3RyICJjYW1wbyBcIiVzXCIsIHJpZmVyaW1lbnRvIGEgXCIlLjI1NXNcIjogdmVyc2lvbmUgbm9uIHRlcm1pbmF0YSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDY1CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgZmllbGQsIHJlZmVyZW5jZSB0byAnJS4yNTVzJzogZXJyb3IgaW4gdmVyc2lvbiIKK21zZ3N0ciAiY2FtcG8gXCIlc1wiLCByaWZlcmltZW50byBhIFwiJS4yNTVzXCI6IGVycm9yZSBuZWxsYSB2ZXJzaW9uZSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDc1CisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgZmllbGQsIHN5bnRheCBlcnJvciBhZnRlciByZWZlcmVuY2UgdG8gcGFja2FnZSBgJS4yNTVzJyIKK21zZ3N0ciAiIgorImNhbXBvIFwiJXNcIiwgZXJyb3JlIGRpIHNpbnRhc3NpIGRvcG8gaWwgcmlmZXJpbWVudG8gYWwgcGFjY2hldHRvIFwiJS4yNTVzXCIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ4MgorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZXMgKGB8Jykgbm90IGFsbG93ZWQgaW4gJXMgZmllbGQiCittc2dzdHIgImFsdGVybmF0aXZlIChcInxcIikgbm9uIGNvbnNlbnRpdGUgbmVsIGNhbXBvICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1MzYKK21zZ2lkICJ2YWx1ZSBmb3IgYHRyaWdnZXJzLXBlbmRpbmcnIGZpZWxkIG5vdCBhbGxvd2VkIGluIHRoaXMgY29udGV4dCIKK21zZ3N0ciAiIgorInZhbG9yZSBwZXIgaWwgY2FtcG8gXCJ0cmlnZ2Vycy1wZW5kaW5nXCIgbm9uIGNvbnNlbnRpdG8gaW4gcXVlc3RvIGNvbnRlc3RvIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWxsZWdhbCBwZW5kaW5nIHRyaWdnZXIgbmFtZSBgJS4yNTVzJzogJXMiCittc2dzdHIgIm5vbWUgZGVsIHRyaWdnZXIgaW1taW5lbnRlIFwiJS4yNTVzXCIgbm9uIHZhbGlkbzogJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU0NworIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgcGVuZGluZyB0cmlnZ2VyIGAlLjI1NXMnIgorbXNnc3RyICJ0cmlnZ2VyIGltbWluZW50ZSBcIiUuMjU1c1wiIGR1cGxpY2F0byIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTYxCittc2dpZCAidmFsdWUgZm9yIGB0cmlnZ2Vycy1hd2FpdGVkJyBmaWVsZCBub3QgYWxsb3dlZCBpbiB0aGlzIGNvbnRleHQiCittc2dzdHIgIiIKKyJ2YWxvcmUgcGVyIGlsIGNhbXBvIFwidHJpZ2dlcnMtYXdhaXRlZFwiIG5vbiBjb25zZW50aXRvIGluIHF1ZXN0byBjb250ZXN0byIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTY4CisjLCBjLWZvcm1hdAorbXNnaWQgImlsbGVnYWwgcGFja2FnZSBuYW1lIGluIGF3YWl0ZWQgdHJpZ2dlciBgJS4yNTVzJzogJXMiCittc2dzdHIgIm5vbWUgZGkgcGFjY2hldHRvIG5vbiB2YWxpZG8gbmVsIHRyaWdnZXIgaW4gYXR0ZXNhIFwiJS4yNTVzXCI6ICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIGF3YWl0ZWQgdHJpZ2dlciBwYWNrYWdlIGAlLjI1NXMnIgorbXNnc3RyICJ0cmlnZ2VyIGRlbCBwYWNjaGV0dG8gaW4gYXR0ZXNhIFwiJS4yNTBzXCIgZHVwbGljYXRvIgorCisjOiBsaWIvZHBrZy9maWxlLmM6NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgc291cmNlIGZpbGUgJyUuMjUwcyciCittc2dzdHIgImltcG9zc2liaWxlIGVzZWd1aXJlIHN0YXQgc3VsIGZpbGUgc29yZ2VudGUgXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvZmlsZS5jOjU1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGFuZ2Ugb3duZXJzaGlwIG9mIHRhcmdldCBmaWxlICclLjI1MHMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSBtb2RpZmljYXJlIGlsIHByb3ByaWV0YXJpbyBkZWwgZmlsZSBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy9maWxlLmM6NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNldCBtb2RlIG9mIHRhcmdldCBmaWxlICclLjI1MHMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSBpbXBvc3RhcmUgbGEgbW9kYWxpdMOgIGRlbCBmaWxlIFwiJS4yNTBzXCIiCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzo4NQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIGNsb3NlICVzOiAlcyIKK21zZ2lkICJ1bmFibGUgdG8gdW5sb2NrICVzIgorbXNnc3RyICJpbXBvc3NpYmlsZSBjaGl1ZGVyZSAlczogJXMiCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzoxMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoZWNrIGZpbGUgJyVzJyBsb2NrIHN0YXR1cyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgdmVyaWZpY2FyZSBsbyBzdGF0byBkaSBibG9jY28gZGVsIGZpbGUgXCIlc1wiIgorCisjOiBsaWIvZHBrZy9maWxlLmM6MTQ2CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJzdGF0dXMgZGF0YWJhc2UgYXJlYSBpcyBsb2NrZWQgYnkgYW5vdGhlciBwcm9jZXNzIgorbXNnaWQgIiVzIGlzIGxvY2tlZCBieSBhbm90aGVyIHByb2Nlc3MiCittc2dzdHIgInF1YWxjaGUgYWx0cm8gcHJvY2Vzc28gZGV0aWVuZSBpbCBibG9jY28gc3VsIGRhdGFiYXNlIGRpIHN0YXRvIgorCisjOiBsaWIvZHBrZy9maWxlLmM6MTQ4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gY2xvc2UgJXM6ICVzIgorbXNnaWQgInVuYWJsZSB0byBsb2NrICVzIgorbXNnc3RyICJpbXBvc3NpYmlsZSBjaGl1ZGVyZSAlczogJXMiCisKKyM6IGxpYi9kcGtnL2xvZy5jOjUzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkbid0IG9wZW4gbG9nIGAlcyc6ICVzXG4iCittc2dzdHIgImltcG9zc2liaWxlIGFwcmlyZSBpbCByZWdpc3RybyBcIiVzXCI6ICVzXG4iCisKKyM6IGxpYi9kcGtnL2xvZy5jOjg1Cittc2dpZCAiPHBhY2thZ2Ugc3RhdHVzIGFuZCBwcm9ncmVzcyBmaWxlIGRlc2NyaXB0b3I+IgorbXNnc3RyICI8c3RhdG8gZGVsIHBhY2NoZXR0byBlIGRlc2NyaXR0b3JlIGRlbCBmaWxlIGRpIGF2YW56YW1lbnRvPiIKKworIzogbGliL2Rwa2cvbG9nLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSB0byBzdGF0dXMgZmQgJWQiCittc2dzdHIgImltcG9zc2liaWxlIHNjcml2ZXJlIHN1bCBmaWxlIGRpIHN0YXRvICVkIgorCisjOiBsaWIvZHBrZy9tbGliLmM6NDQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAibWFsbG9jIGZhaWxlZCAoJWxkIGJ5dGVzKSIKK21zZ2lkICJtYWxsb2MgZmFpbGVkICglenUgYnl0ZXMpIgorbXNnc3RyICJtYWxsb2Mgbm9uIHJpdXNjaXRhICglbGQgYnl0ZSkiCisKKyM6IGxpYi9kcGtnL21saWIuYzo1OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAicmVhbGxvYyBmYWlsZWQgKCVsZCBieXRlcykiCittc2dpZCAicmVhbGxvYyBmYWlsZWQgKCV6dSBieXRlcykiCittc2dzdHIgInJlYWxsb2Mgbm9uIHJpdXNjaXRhICglbGQgYnl0ZSkiCisKKyM6IGxpYi9kcGtnL21saWIuYzo3MiBsaWIvZHBrZy9tbGliLmM6OTAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI3NworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjMzNCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTEwNworbXNnaWQgImZhaWxlZCB0byBhbGxvY2F0ZSBtZW1vcnkiCittc2dzdHIgImFsbG9jYXppb25lIGRlbGxhIG1lbW9yaWEgbm9uIHJpdXNjaXRhIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBkdXAgZm9yIHN0ZCVzIgorbXNnc3RyICJlc2VjdXppb25lIGRpIGR1cCBwZXIgc3RkJXMgbm9uIHJpdXNjaXRhIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTAzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBkdXAgZm9yIGZkICVkIgorbXNnc3RyICJlc2VjdXppb25lIGRpIGR1cCBwZXIgZmQ9JWQgbm9uIHJpdXNjaXRhIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTA5Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBwaXBlIgorbXNnc3RyICJjcmVhemlvbmUgZGVsbGEgcGlwZSBub24gcml1c2NpdGEiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igd3JpdGluZyB0byAnJXMnIgorbXNnc3RyICJlcnJvcmUgbmVsbG8gc2NyaXZlcmUgc3UgXCIlc1wiIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIGZpbGVkZXNjcmlwdG9yIGZsYWdzIGZvciAlLjI1MHMiCittc2dzdHIgImltcG9zc2liaWxlIGxlZ2dlcmUgaSBmbGFnIGZpbGVkZXNjcmlwdG9yIHBlciAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMjYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNldCBjbG9zZS1vbi1leGVjIGZsYWcgZm9yICUuMjUwcyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgaW1wb3N0YXJlIGlsIGZsYWcgY2xvc2Utb24tZXhlYyBwZXIgJS4yNTBzIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmlndXJhdGlvbiBlcnJvcjogJXM6JWQ6ICVzIgorbXNnc3RyICJlcnJvcmUgZGkgY29uZmlndXJhemlvbmU6ICVzOiVkOiAlcyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjc1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuIGNvbmZpZ3VyYXRpb24gZmlsZSAnJS4yNTVzJyBmb3IgcmVhZGluZzogJXMiCittc2dzdHIgIiIKKyJhcGVydHVyYSBkZWwgZmlsZSBkaSBjb25maWd1cmF6aW9uZSBcIiUuMjU1c1wiIHBlciBsYSBsZXR0dXJhIG5vbiByaXVzY2l0YTogIgorIiVzIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYmFsYW5jZWQgcXVvdGVzIGluICclcyciCittc2dzdHIgInZpcmdvbGV0dGUgbm9uIGJpbGFuY2lhdGUgaW4gXCIlc1wiIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTE3CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gb3B0aW9uICclcyciCittc2dzdHIgIm9wemlvbmUgXCIlc1wiIHNjb25vc2NpdXRhIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTIxCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgbmVlZHMgYSB2YWx1ZSIKK21zZ3N0ciAiXCIlc1wiIHJpY2hpZWRlIHVuIHZhbG9yZSIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjEyNworIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGRvZXMgbm90IHRha2UgYSB2YWx1ZSIKK21zZ3N0ciAiXCIlc1wiIG5vbiBhY2NldHRhIGFsY3VuIHZhbG9yZSIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjEzMworIywgYy1mb3JtYXQKK21zZ2lkICJyZWFkIGVycm9yIGluIGNvbmZpZ3VyYXRpb24gZmlsZSBgJS4yNTVzJyIKK21zZ3N0ciAiZXJyb3JlIG5lbCBsZWdnZXJlIGlsIGZpbGUgZGkgY29uZmlndXJhemlvbmUgXCIlLjI1NXNcIiIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nIGNvbmZpZ3VyYXRpb24gZmlsZSBgJS4yNTVzJyIKK21zZ3N0ciAiZXJyb3JlIG5lbCBjaGl1ZGVyZSBpbCBmaWxlIGRpIGNvbmZpZ3VyYXppb25lIFwiJS4yNTVzXCIiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxNzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igb3BlbmluZyBjb25maWd1cmF0aW9uIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICJlcnJvcmUgbmVsbCdhcHJpcmUgbGEgZGlyZWN0b3J5IGRpIGNvbmZpZ3VyYXppb25lIFwiJXNcIiIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjIyOAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiAtLSVzIgorbXNnc3RyICJvcHppb25lIC0tJXMgc2Nvbm9zY2l1dGEiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBvcHRpb24gdGFrZXMgYSB2YWx1ZSIKK21zZ3N0ciAibCdvcHppb25lIC0tJXMgcmljaGllZGUgdW4gdmFsb3JlIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjM3CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgb3B0aW9uIGRvZXMgbm90IHRha2UgYSB2YWx1ZSIKK21zZ3N0ciAibCdvcHppb25lIC0tJXMgbm9uIGFjY2V0dGEgYWxjdW4gdmFsb3JlIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gb3B0aW9uIC0lYyIKK21zZ3N0ciAib3B6aW9uZSAtJWMgc2Nvbm9zY2l1dGEiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLSVjIG9wdGlvbiB0YWtlcyBhIHZhbHVlIgorbXNnc3RyICJsJ29wemlvbmUgLSVjIHJpY2hpZWRlIHVuIHZhbG9yZSIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI1OAorIywgYy1mb3JtYXQKK21zZ2lkICItJWMgb3B0aW9uIGRvZXMgbm90IHRha2UgYSB2YWx1ZSIKK21zZ3N0ciAibCdvcHppb25lIC0lYyBub24gYWNjZXR0YSBhbGN1biB2YWxvcmUiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAib2Jzb2xldGUgb3B0aW9uICctLSVzJ1xuIgorbXNnc3RyICJvcHppb25lIFwiLS0lc1wiIG9ic29sZXRhXG4iCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmxpY3RpbmcgYWN0aW9ucyAtJWMgKC0tJXMpIGFuZCAtJWMgKC0tJXMpIgorbXNnc3RyICJhemlvbmkgLSVjICgtLSVzKSBlIC0lYyAoLS0lcykgaW4gY29uZmxpdHRvIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgdmFsdWUgZm9yIGAlcycgZmllbGQiCittc2dzdHIgInZhbG9yZSBkdXBsaWNhdG8gcGVyIGlsIGNhbXBvIFwiJXNcIiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoxNDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidXNlci1kZWZpbmVkIGZpZWxkIG5hbWUgYCUuKnMnIHRvbyBzaG9ydCIKK21zZ3N0ciAiaWwgbm9tZSBkZWwgY2FtcG8gZGVmaW5pdG8gZGFsbCd1dGVudGUgXCIlLipzXCIgw6ggdHJvcHBvIGNvcnRvIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgdmFsdWUgZm9yIHVzZXItZGVmaW5lZCBmaWVsZCBgJS4qcyciCittc2dzdHIgInZhbG9yZSBkdXBsaWNhdG8gcGVyIGlsIGNhbXBvIGRlZmluaXRvIGRhbGwndXRlbnRlIFwiJS4qc1wiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjIwNworbXNnaWQgIkNvbmZpZ3VyZWQtVmVyc2lvbiBmb3IgcGFja2FnZSB3aXRoIGluYXBwcm9wcmlhdGUgU3RhdHVzIgorbXNnc3RyICJTdGF0dXMgaW5hcHByb3ByaWF0byBjb21lIHZhbG9yZSBkaSBDb25maWd1cmVkLVZlcnNpb24gZGVsIHBhY2NoZXR0byIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzICVzIGJ1dCB0cmlnZ2VycyBhcmUgYXdhaXRlZCIKK21zZ3N0ciAibG8gc3RhdG8gZGVsIHBhY2NoZXR0byDDqCAlcywgbWEgc29ubyBhdHRlc2kgZGVpIHRyaWdnZXIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjIyCittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzIHRyaWdnZXJzLWF3YWl0ZWQgYnV0IG5vIHRyaWdnZXJzIGF3YWl0ZWQiCittc2dzdHIgImxvIHN0YXRvIGRlbCBwYWNjaGV0dG8gw6ggdHJpZ2dlcnMtYXdhaXRlZCwgbWEgbmVzc3VuIHRyaWdnZXIgYXR0ZXNvIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjIyOAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGhhcyBzdGF0dXMgJXMgYnV0IHRyaWdnZXJzIGFyZSBwZW5kaW5nIgorbXNnc3RyICJsbyBzdGF0byBkZWwgcGFjY2hldHRvIMOoICVzLCBtYSBkZWkgdHJpZ2dlciBzb25vIGltbWluZW50aSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMzIKK21zZ2lkICJwYWNrYWdlIGhhcyBzdGF0dXMgdHJpZ2dlcnMtcGVuZGluZyBidXQgbm8gdHJpZ2dlcnMgcGVuZGluZyIKK21zZ3N0ciAibG8gc3RhdG8gZGVsIHBhY2NoZXR0byDDqCB0cmlnZ2Vycy1wZW5kaW5nLCBtYSBuZXNzdW4gdHJpZ2dlciBpbW1pbmVudGUiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjQyCittc2dpZCAiUGFja2FnZSB3aGljaCBpbiBzdGF0ZSBub3QtaW5zdGFsbGVkIGhhcyBjb25mZmlsZXMsIGZvcmdldHRpbmcgdGhlbSIKK21zZ3N0ciAiSWwgcGFjY2hldHRvIG5vbiBpbnN0YWxsYXRvIGhhIGRlaSBmaWxlIGRpIGNvbmZpZ3VyYXppb25lLCBpZ25vcmF0aSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozMzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gcGFja2FnZSBpbmZvIGZpbGUgYCUuMjU1cycgZm9yIHJlYWRpbmciCittc2dzdHIgIiIKKyJhcGVydHVyYSBkZWwgZmlsZSBkaSBpbmZvcm1hemlvbmkgc3VpIHBhY2NoZXR0aSBcIiUuMjU1c1wiIGluIGxldHR1cmEgbm9uICIKKyJyaXVzY2l0YSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozNDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2FuJ3Qgc3RhdCBwYWNrYWdlIGluZm8gZmlsZSBgJS4yNTVzJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgZXNlZ3VpcmUgc3RhdCBzdWxsZSBpbmZvcm1hemlvbmkgZGVsIHBhY2NoZXR0byBcIiUuMjU1c1wiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjM0NworIywgYy1mb3JtYXQKK21zZ2lkICJjYW4ndCBtbWFwIHBhY2thZ2UgaW5mbyBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSBlc2VndWlyZSBtbWFwIHN1bGxlIGluZm9ybWF6aW9uaSBkZWwgcGFjY2hldHRvIFwiJS4yNTVzXCIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzUyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW4ndCBzdGF0IHBhY2thZ2UgaW5mbyBmaWxlIGAlLjI1NXMnIgorbXNnaWQgInJlYWRpbmcgcGFja2FnZSBpbmZvIGZpbGUgJyUuMjU1cyciCittc2dzdHIgImltcG9zc2liaWxlIGVzZWd1aXJlIHN0YXQgc3VsbGUgaW5mb3JtYXppb25pIGRlbCBwYWNjaGV0dG8gXCIlLjI1NXNcIiIKKworIyAobmR0KSBzZW1icmEgZXNzZXJlIGlsIG5vbWUgZGVsIGZpbGUKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzYzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjbG9zZSBhZnRlciByZWFkOiBgJS4yNTVzJyIKK21zZ3N0ciAiY2hpdXN1cmEgZG9wbyB1bmEgbGV0dHVyYSBkaSBcIiUuMjU1c1wiIG5vbiByaXVzY2l0YSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiRU9GIGFmdGVyIGZpZWxkIG5hbWUgYCUuKnMnIgorbXNnc3RyICJFT0YgZG9wbyBpbCBub21lIGRlbCBjYW1wbyBcIiUuKnNcIiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MDcKKyMsIGMtZm9ybWF0Cittc2dpZCAibmV3bGluZSBpbiBmaWVsZCBuYW1lIGAlLipzJyIKK21zZ3N0ciAibmV3bGluZSBuZWwgbm9tZSBkZWwgY2FtcG8gXCIlLipzXCIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDEwCisjLCBjLWZvcm1hdAorbXNnaWQgIk1TRE9TIEVPRiAoXlopIGluIGZpZWxkIG5hbWUgYCUuKnMnIgorbXNnc3RyICJFT0YgTVNET1MgKF5aKSBuZWwgbm9tZSBkZWwgY2FtcG8gXCIlLipzXCIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDE0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpZWxkIG5hbWUgYCUuKnMnIG11c3QgYmUgZm9sbG93ZWQgYnkgY29sb24iCittc2dzdHIgImlsIG5vbWUgZGVsIGNhbXBvIFwiJS4qc1wiIGRldmUgZXNzZXJlIHNlZ3VpdG8gZGFpIGR1ZSBwdW50aSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiRU9GIGJlZm9yZSB2YWx1ZSBvZiBmaWVsZCBgJS4qcycgKG1pc3NpbmcgZmluYWwgbmV3bGluZSkiCittc2dzdHIgIkVPRiBwcmltYSBkZWwgdmFsb3JlIHBlciBpbCBjYW1wbyBcIiUuKnNcIiAobmV3bGluZSBmaW5hbGUgbWFuY2FudGUpIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQyOQorIywgYy1mb3JtYXQKK21zZ2lkICJNU0RPUyBFT0YgY2hhciBpbiB2YWx1ZSBvZiBmaWVsZCBgJS4qcycgKG1pc3NpbmcgbmV3bGluZT8pIgorbXNnc3RyICJFT0YgTVNET1MgbmVsIHZhbG9yZSBkZWwgY2FtcG8gXCIlLipzXCIgKG5ld2xpbmUgbWFuY2FudGU/KSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0NDAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIm5ld2xpbmUgaW4gZmllbGQgbmFtZSBgJS4qcyciCittc2dpZCAiYmxhbmsgbGluZSBpbiB2YWx1ZSBvZiBmaWVsZCAnJS4qcyciCittc2dzdHIgIm5ld2xpbmUgbmVsIG5vbWUgZGVsIGNhbXBvIFwiJS4qc1wiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQ2MQorIywgYy1mb3JtYXQKK21zZ2lkICJFT0YgZHVyaW5nIHZhbHVlIG9mIGZpZWxkIGAlLipzJyAobWlzc2luZyBmaW5hbCBuZXdsaW5lKSIKK21zZ3N0ciAiRU9GIG5lbCB2YWxvcmUgZGVsIGNhbXBvIFwiJS4qc1wiIChuZXdsaW5lIGZpbmFsZSBtYW5jYW50ZSkiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NTQ2Cittc2dpZCAic2V2ZXJhbCBwYWNrYWdlIGluZm8gZW50cmllcyBmb3VuZCwgb25seSBvbmUgYWxsb3dlZCIKK21zZ3N0ciAidHJvdmF0ZSBtb2x0ZXBsaWNpIGRlc2NyaXppb25pIGRlbCBwYWNjaGV0dG8sIG5lIMOoIGNvbnNlbnRpdGEgc29sbyB1bmEiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NTcyCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHBhY2thZ2UgaW5mb3JtYXRpb24gaW4gYCUuMjU1cyciCittc2dzdHIgIm5lc3N1bmEgaW5mb3JtYXppb25lIHN1bCBwYWNjaGV0dG8gaW4gXCIlLjI1NXNcIiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6NDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIlcywgaW4gZmlsZSAnJS4yNTVzJyBuZWFyIGxpbmUgJWQgcGFja2FnZSAnJS4yNTVzJzpcbiIKKyN8ICIgIgorbXNnaWQgIiIKKyJwYXJzaW5nIGZpbGUgJyUuMjU1cycgbmVhciBsaW5lICVkIHBhY2thZ2UgJyUuMjU1cyc6XG4iCisiICUuMjU1cyIKK21zZ3N0ciAiIgorIiVzLCBuZWwgZmlsZSBcIiUuMjU1c1wiIHZpY2lubyBhbGxhIHJpZ2EgJWQgcGFjY2hldHRvIFwiJS4yNTVzXCI6XG4iCisiICIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6NDgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIlcywgaW4gZmlsZSAnJS4yNTVzJyBuZWFyIGxpbmUgJWQ6XG4iCisjfCAiICIKK21zZ2lkICIiCisicGFyc2luZyBmaWxlICclLjI1NXMnIG5lYXIgbGluZSAlZDpcbiIKKyIgJS4yNTVzIgorbXNnc3RyICIiCisiJXMsIG5lbCBmaWxlIFwiJS4yNTVzXCIgdmljaW5vIGFsbGEgcmlnYSAlZDpcbiIKKyIgIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoxMjUKK21zZ2lkICJtYXkgbm90IGJlIGVtcHR5IHN0cmluZyIKK21zZ3N0ciAibm9uIHB1w7IgZXNzZXJlIHVuYSBzdHJpbmdhIHZ1b3RhIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoxMjcKKyMsIGZ1enp5CisjfCBtc2dpZCAibXVzdCBzdGFydCB3aXRoIGFuIGFscGhhbnVtZXJpYyIKK21zZ2lkICJtdXN0IHN0YXJ0IHdpdGggYW4gYWxwaGFudW1lcmljIGNoYXJhY3RlciIKK21zZ3N0ciAiZGV2ZSBpbml6aWFyZSBjb24gdW4gY2FyYXR0ZXJlIGFsZmFudW1lcmljbyIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MTM2CisjLCBjLWZvcm1hdAorbXNnaWQgImNoYXJhY3RlciBgJWMnIG5vdCBhbGxvd2VkIChvbmx5IGxldHRlcnMsIGRpZ2l0cyBhbmQgY2hhcmFjdGVycyBgJXMnKSIKK21zZ3N0ciAiIgorImlsIGNhcmF0dGVyZSBcIiVjXCIgbm9uIMOoIGNvbnNlbnRpdG8gKHNvbG8gbGV0dGVyZSwgbnVtZXJpIGUgY2FyYXR0ZXJpIFwiJXMiCisiXCIpIgorCisjIChuZHQpIGRvdnJlYmJlIGVzc2VyZSByZWxhdml0byBhbGxhIHZlcnNpb25lCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoxNzgKKyMsIGZ1enp5CisjfCBtc2dpZCAiPG5vbmU+IgorbXNnY3R4dCAidmVyc2lvbiIKK21zZ2lkICI8bm9uZT4iCittc2dzdHIgIjxub24gZGVmaW5pdGE+IgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyMDkKK21zZ2lkICJ2ZXJzaW9uIHN0cmluZyBpcyBlbXB0eSIKK21zZ3N0ciAibGEgc3RyaW5nYSBkaSB2ZXJzaW9uZSDDqCB2dW90YSIKKworIyAobmR0KSBpZGVlIG1pZ2xpb3JpPworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjI0Cittc2dpZCAidmVyc2lvbiBzdHJpbmcgaGFzIGVtYmVkZGVkIHNwYWNlcyIKK21zZ3N0ciAibGEgc3RyaW5nYSBkaSB2ZXJzaW9uZSBwcmVzZW50YSBkZWdsaSBzcGF6aSIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjMwCittc2dpZCAiZXBvY2ggaW4gdmVyc2lvbiBpcyBub3QgbnVtYmVyIgorbXNnc3RyICJpbCB2YWxvcmUgZXBvY2ggbmVsbGEgdmVyc2lvbmUgbm9uIMOoIHVuIG51bWVybyIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjMyCittc2dpZCAibm90aGluZyBhZnRlciBjb2xvbiBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAibm9uIMOoIHByZXNlbnRlIG51bGxhIGRvcG8gaSBkdWUgcHVudGkgbmVsIG51bWVybyBkaSB2ZXJzaW9uZSIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjQ3Cittc2dpZCAidmVyc2lvbiBudW1iZXIgZG9lcyBub3Qgc3RhcnQgd2l0aCBkaWdpdCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyNTAKK21zZ2lkICJpbnZhbGlkIGNoYXJhY3RlciBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAiY2FyYXR0ZXJlIG5vbiB2YWxpZG8gbmVsIG51bWVybyBkaSB2ZXJzaW9uZSIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjU0Cittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgaW4gcmV2aXNpb24gbnVtYmVyIgorbXNnc3RyICJjYXJhdHRlcmUgbm9uIHZhbGlkbyBuZWwgbnVtZXJvIGRpIHJldmlzaW9uZSIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6Mjk5IGxpYi9kcGtnL3BhcnNlaGVscC5jOjMxMQorIywgYy1mb3JtYXQKK21zZ2lkICJtaXNzaW5nICVzIgorbXNnc3RyICIlcyBtYW5jYW50ZSIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MzAxIGxpYi9kcGtnL3BhcnNlaGVscC5jOjMxNAorIywgYy1mb3JtYXQKK21zZ2lkICJlbXB0eSB2YWx1ZSBmb3IgJXMiCittc2dzdHIgInZhbG9yZSB2dW90byBwZXIgJXMiCisKKyM6IGxpYi9kcGtnL3BrZy1mb3JtYXQuYzo4MAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGNoYXJhY3RlciBgJWMnIGluIGZpZWxkIHdpZHRoXG4iCittc2dzdHIgImNhcmF0dGVyZSBcIiVjXCIgbm9uIHZhbGlkbyBuZWwgY2FtcG8gXCJ3aWR0aFwiXG4iCisKKyM6IGxpYi9kcGtnL3BrZy1mb3JtYXQuYzoxNzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2xvc2luZyBicmFjZSBtaXNzaW5nIGluIGZvcm1hdFxuIgorbXNnc3RyICJQYXJlbnRlc2kgZGkgY2hpdXN1cmEgbWFuY2FudGUgbmVsIGZvcm1hdG9cbiIKKworIzogbGliL2Rwa2cvcGtnLXNob3cuYzo0MAorbXNnaWQgIihubyBkZXNjcmlwdGlvbiBhdmFpbGFibGUpIgorbXNnc3RyICIobmVzc3VuYSBkZXNjcml6aW9uZSBkaXNwb25pYmlsZSkiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzo1NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaWdub3JlIHNpZ25hbCAlcyBiZWZvcmUgcnVubmluZyAlLjI1MHMiCittc2dzdHIgImltcG9zc2liaWxlIGlnbm9yYXJlIGlsIHNlZ25hbGUgJXMgcHJpbWEgZGkgZXNlZ3VpcmUgJS4yNTBzIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgdW4tY2F0Y2hpbmcgc2lnbmFsICVzOiAlc1xuIgorbXNnc3RyICJlcnJvcmUgbmVsIHJpcHJpc3Rpbm8gZGVsIHNlZ25hbGUgJXM6ICVzXG4iCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzo3OAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyAoc3VicHJvY2Vzcyk6ICVzXG4iCittc2dzdHIgIiVzIChzb3R0b3Byb2Nlc3NvKTogJXNcbiIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjg5IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo0NTQKK21zZ2lkICJmb3JrIGZhaWxlZCIKK21zZ3N0ciAiZm9yayBub24gcml1c2NpdGEiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMTkKKyMsIGMtZm9ybWF0Cittc2dpZCAic3VicHJvY2VzcyAlcyByZXR1cm5lZCBlcnJvciBleGl0IHN0YXR1cyAlZCIKK21zZ3N0ciAiaWwgc290dG9wcm9jZXNzbyAlcyBoYSByZXN0aXR1aXRvIGxvIHN0YXRvIGRpIGVycm9yZSAlZCIKKworIyAobmR0KSBpZGVlPz8/CisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTI4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ3YWl0IGZvciBzdWJwcm9jZXNzICVzIGZhaWxlZCIKK21zZ2lkICJzdWJwcm9jZXNzICVzIHdhcyBpbnRlcnJ1cHRlZCIKK21zZ3N0ciAid2FpdCBkZWwgc290dG8tcHJvY2Vzc28gJXMgbm9uIHJpdXNjaXRhIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTMwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJzdWJwcm9jZXNzICVzIGtpbGxlZCBieSBzaWduYWwgKCVzKSVzIgorbXNnaWQgInN1YnByb2Nlc3MgJXMgd2FzIGtpbGxlZCBieSBzaWduYWwgKCVzKSVzIgorbXNnc3RyICJpbCBzb3R0b3Byb2Nlc3NvICVzIMOoIHN0YXRvIHRlcm1pbmF0byBkYWwgc2VnbmFsZSAoJXMpJXMiCisKKyMgKG5kdCkgZG92cmViYmUgYW5kYXJlIGEgY29sbGVnYXJzaSBjb24gcXVlbGxhIHNvcHJhCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTMyCittc2dpZCAiLCBjb3JlIGR1bXBlZCIKK21zZ3N0ciAiLCBlc2VndWl0byB1biBjb3JlIGR1bXAiCisKKyMgKG5kdCkgdXNhcmUgZmFsbGl0byBvIG5vbiByaXVzY2l0byBpbiBxdWVzdG8gY2FzbyBub24gbWkgCisjIGNvbnZpbmNlIGRlbCB0dXR0by4uLgorIzogbGliL2Rwa2cvc3VicHJvYy5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJzdWJwcm9jZXNzICVzIGZhaWxlZCB3aXRoIHdhaXQgc3RhdHVzIGNvZGUgJWQiCittc2dzdHIgImlsIHNvdHRvcHJvY2Vzc28gJXMgw6ggdGVybWluYXRvIGNvbiB1biBjb2RpY2UgZGkgd2FpdCAlZCIKKworIyAobmR0KSBpZGVlPz8/CisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTUxIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo0NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAid2FpdCBmb3Igc3VicHJvY2VzcyAlcyBmYWlsZWQiCittc2dzdHIgIndhaXQgZGVsIHNvdHRvLXByb2Nlc3NvICVzIG5vbiByaXVzY2l0YSIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBwYWNrYWdlIG5hbWUgYCUuMjUwcycgaW4gdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorIm5vbWUgZGkgcGFjY2hldHRvIFwiJS4yNTBzXCIgbm9uIHZhbGlkbyBuZWwgZmlsZSBkZWkgdHJpZ2dlciByaW52aWF0aSAiCisiXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJ1bmNhdGVkIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImZpbGUgZGVpIHRyaWdnZXIgcmludmlhdGkgXCIlLjI1MHNcIiB0cm9uY2F0byIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yIGluIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcycgYXQgY2hhcmFjdGVyIGAlcyclcyIKK21zZ3N0ciAiIgorImVycm9yZSBkaSBzaW50YXNzaSBuZWwgZmlsZSBkZWkgdHJpZ2dlciByaW52aWF0aSBcIiUuMjUwc1wiIGFsIGNhcmF0dGVyZSBcIiVzIgorIlwiJXMiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3Blbi9jcmVhdGUgdHJpZ2dlcnMgbG9ja2ZpbGUgYCUuMjUwcyciCittc2dzdHIgImltcG9zc2liaWxlIGFwcmlyZS9jcmVhcmUgaWwgZmlsZSBkaSBibG9jY28gZGVpIHRyaWdnZXIgXCIlLjI1MHNcIiIKKworIyAobmR0KSBzdGF0dXNzdHJpbmcKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjE0MQorIywgZnV6enkKKyN8IG1zZ2lkICJ0cmlnZ2VyZWQiCittc2dpZCAidHJpZ2dlcnMgYXJlYSIKK21zZ3N0ciAidHJpZ2dlcmVkIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgZXNlZ3VpcmUgc3RhdCBzdWwgZmlsZSBkZWkgdHJpZ2dlciByaW52aWF0aSBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgYXByaXJlIGlsIGZpbGUgZGVpIHRyaWdnZXIgcmludmlhdGkgXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MTc5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuL2NyZWF0ZSBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorImltcG9zc2liaWxlIGFwcmlyZS9jcmVhcmUgaWwgbnVvdm8gZmlsZSBkZWkgdHJpZ2dlciByaW52aWF0aSBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoyMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcmVhZGluZyB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJlcnJvcmUgbmVsIGxlZ2dlcmUgaWwgZmlsZSBkZWkgdHJpZ2dlciByaW52aWF0aSBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoyMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ldyB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSBzY3JpdmVyIGlsIG51b3ZvIGZpbGUgZGVpIHRyaWdnZXIgcmludmlhdGkgXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MjI4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgY2hpdWRlcmUgaWwgbnVvdm8gZmlsZSBkZWkgdHJpZ2dlciByaW52aWF0aSBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImltcG9zc2liaWxlIGluc3RhbGxhcmUgaWwgbnVvdm8gZmlsZSBkZWkgdHJpZ2dlciByaW52aWF0aSBcIiUuMjU1c1wiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MjIyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpbnZhbGlkIG9yIHVua25vd24gc3ludGF4IGluIHRyaWdnZXIgbmFtZSBgJS4yNTBzJyAoaW4gdHJpZ2dlciBpbnRlcmVzdHMgZm9yICIKKyJwYWNrYWdlIGAlLjI1MHMnKSIKK21zZ3N0ciAiIgorInNpbnRhc3NpIG5vbiB2YWxpZGEgbyBzY29ub3NjaXV0YSBuZWwgbm9tZSBkZWwgdHJpZ2dlciBcIiUuMjUwc1wiIChuZWwgIgorInRyaWdnZXIgZGkgaW50ZXJlc3NlIHBlciBpbCBwYWNjaGV0dG8gXCIlLjI1MHNcIikiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzoyNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gdHJpZ2dlciBpbnRlcmVzdCBsaXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKyJhcGVydHVyYSBkZWwgZmlsZSBcIiUuMjUwc1wiIGNvbiBsJ2VsZW5jbyBkZWkgdHJpZ2dlciBkaSBpbnRlcmVzc2Ugbm9uICIKKyJyaXVzY2l0YSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjI5MgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmV3aW5kIHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorImltcG9zc2liaWxlIHRvcm5hcmUgYWxsJ2luaXppbyBkZWwgZmlsZSBkZWkgdHJpZ2dlciBkaSBpbnRlcmVzc2UgXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMwNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIHN5bnRheCBlcnJvcjsgaWxsZWdhbCBwYWNrYWdlIG5hbWUgYCUuMjUwcyc6ICIKKyIlLjI1MHMiCittc2dzdHIgIiIKKyJlcnJvcmUgZGkgc2ludGFzc2kgbmVsIGZpbGUgZGVpIHRyaWdnZXIgZGkgaW50ZXJlc3NlIFwiJS4yNTBzXCIsIG5vbiBkaSAiCisicGFjY2hldHRvIFwiJTI1MHNcIiBub24gdmFsaWRvOiAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgImltcG9zc2liaWxlIHNjcml2ZXJlIGlsIG51b3ZvIGZpbGUgZGVsIHRyaWdnZXIgZGkgaW50ZXJlc3NlIFwiJS4yMDVzXCIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMjEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgIiIKKyJpbXBvc3NpYmlsZSBlc2VndWlyZSBpbCBmbHVzaCBkZWwgbnVvdm8gZmlsZSBkZWwgdHJpZ2dlciBkaSBpbnRlcmVzc2UgIgorIlwiJS4yNTBzXCIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAiIgorImltcG9zc2liaWxlIHNpbmNyb25penphcmUgaWwgbnVvdm8gZmlsZSBkZWwgdHJpZ2dlciBkaSBpbnRlcmVzc2UgXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMzMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisiaW1wb3NzaWJpbGUgaW5zdGFsbGFyZSBpbCBudW92byBmaWxlIGRlbCB0cmlnZ2VyIGRpIGludGVyZXNzZSBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzQwIGxpYi9kcGtnL3RyaWdsaWIuYzozNDIgbGliL2Rwa2cvdHJpZ2xpYi5jOjQ3MgorIzogc3JjL3JlbW92ZS5jOjI4NiBzcmMvcmVtb3ZlLmM6Mzc3CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZW1vdmUgYCUuMjUwcyciCittc2dzdHIgImltcG9zc2liaWxlIHJpbXVvdmVyZSBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzYwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgY3JlYXJlIGlsIG51b3ZvIGZpbGUgZGVpIHRyaWdnZXIgZGkgaW50ZXJlc3NlIFwiJS4yNTBzXCIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozODMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgImltcG9zc2liaWxlIGNoaXVkZXJlIGlsIG51b3ZvIGZpbGUgZGVsIHRyaWdnZXIgZGkgaW50ZXJlc3NlIFwiJS4yNTBzXCIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0NTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImR1cGxpY2F0ZSBmaWxlIHRyaWdnZXIgaW50ZXJlc3QgZm9yIGZpbGVuYW1lIGAlLjI1MHMnIGFuZCBwYWNrYWdlIGAlLjI1MHMnIgorbXNnc3RyICIiCisiZmlsZSBkZWwgdHJpZ2dlciBkaSBpbnRlcmVzc2UgZHVwbGljYXRvIHBlciBpbCBub21lIGZpbGUgXCIlLjI1MHNcIiBlIGlsICIKKyJwYWNjaGV0dG8gXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ4MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImltcG9zc2liaWxlIGNyZWFyZSBpbCBudW92byBmaWxlIGRlaSB0cmlnZ2VyIFwiJS4yNTBzXCIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0OTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImltcG9zc2liaWxlIHNjcml2ZXJlIGlsIG51b3ZvIGZpbGUgZGVpIHRyaWdnZXIgXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ5NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgZXNlZ3VpcmUgaWwgZmx1c2ggZGVsIG51b3ZvIGZpbGUgZGVpIHRyaWdnZXIgXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ5OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlICclLjI1MHMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSBzaW5jcm9uaXp6YXJlIGlsIG51b3ZvIGZpbGUgZGVpIHRyaWdnZXIgXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjUwMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgY2hpdWRlcmUgaWwgbnVvdm8gZmlsZSBkZWkgdHJpZ2dlciBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTA3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgYXMgYCUuMjUwcyciCittc2dzdHIgImltcG9zc2liaWxlIGluc3RhbGxhcmUgaWwgbnVvdm8gZmlsZSBkZWkgdHJpZ2dlciBjb21lIFwiJS4yNTBzXCIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1NDIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSBsZWdnZXJlIGlsIGZpbGUgZGVpIHRyaWdnZXIgXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjU1MgorIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJlcnJvcmUgZGkgc2ludGFzc2kgbmVsIGZpbGUgZGVpIHRyaWdnZXIgXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjU2MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZmlsZSB0cmlnZ2VycyByZWNvcmQgbWVudGlvbnMgaWxsZWdhbCBwYWNrYWdlIG5hbWUgYCUuMjUwcycgKGZvciBpbnRlcmVzdCBpbiAiCisiZmlsZSBgJS4yNTBzJyk6ICUuMjUwcyIKK21zZ3N0ciAiIgorImlsIHJlY29yZCBuZWwgZmlsZSBkZWkgdHJpZ2dlciBpbmRpY2EgdW4gbm9tZSBkaSBwYWNjaGV0dG8gXCIlLjI1MHNcIiBub24gIgorInZhbGlkbyAocGVyIGwnaW50ZXJlc3NlIG5lbCBmaWxlIFwiJS4yNTBzXCIpOiAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo2NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInRyaWdnZXJzIGNpIGZpbGUgYCUuMjUwcycgY29udGFpbnMgaWxsZWdhbCB0cmlnZ2VyIHN5bnRheCBpbiB0cmlnZ2VyIG5hbWUgYCIKKyIlLjI1MHMnOiAlLjI1MHMiCittc2dzdHIgIiIKKyJpbCBmaWxlIGRlaSB0cmlnZ2VyIGNpIFwiJS4yNTBzXCIgY29udGllbmUgdW5hIHNpbnRhc3NpIG5vbiB2YWxpZGEgbmVsIG5vbWUgIgorImRlbCB0cmlnZ2VyIFwiJS4yNTBzXCI6ICUuMjUwcyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjY4NAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiB0cmlnZ2VycyBjaSBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSBhcHJpcmUgaWwgZmlsZSBkZWkgdHJpZ2dlciBjaSBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Njk5Cittc2dpZCAidHJpZ2dlcnMgY2kgZmlsZSBjb250YWlucyB1bmtub3duIGRpcmVjdGl2ZSBzeW50YXgiCittc2dzdHIgImlsIGZpbGUgZGVpIHRyaWdnZXIgY2kgY29udGllbmUgdW5hIHNpbnRhc3NpIHNjb25vc2NpdXRhIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NzEyCisjLCBjLWZvcm1hdAorbXNnaWQgInRyaWdnZXJzIGNpIGZpbGUgY29udGFpbnMgdW5rbm93biBkaXJlY3RpdmUgYCUuMjUwcyciCittc2dzdHIgImlsIGZpbGUgZGVpIHRyaWdnZXIgY2kgY29udGllbmUgdW5hIGRpcmV0dGl2YSBcIiUuMjUwc1wiIHNjb25vc2NpdXRhIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Nzc2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdHJpZ2dlcnMgc3RhdGUgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSBjcmVhcmUgbGEgZGlyZWN0b3J5IGRpIHN0YXRvIGRlaSB0cmlnZ2VyIFwiJS4yNTBzXCIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo3NzkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNldCBvd25lcnNoaXAgb2YgdHJpZ2dlcnMgc3RhdGUgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICIiCisiaW1wb3NzaWJpbGUgaW1wb3N0YXJlIGlsIHByb3ByaWV0YXJpbyBkZWxsYSBkaXJlY3RvcnkgZGkgc3RhdG8gZGVpIHRyaWdnZXIgIgorIlwiJS4yNTBzXCIiCisKKyM6IGxpYi9kcGtnL3RyaWduYW1lLmM6MzQKK21zZ2lkICJlbXB0eSB0cmlnZ2VyIG5hbWVzIGFyZSBub3QgcGVybWl0dGVkIgorbXNnc3RyICJub21pIGRpIHRyaWdnZXIgbnVsbGkgbm9uIHNvbm8gcGVybWVzc2kiCisKKyM6IGxpYi9kcGtnL3RyaWduYW1lLmM6MzgKK21zZ2lkICJ0cmlnZ2VyIG5hbWUgY29udGFpbnMgaW52YWxpZCBjaGFyYWN0ZXIiCittc2dzdHIgImlsIG5vbWUgZGVsIHRyaWdnZXIgY29udGllbmUgY2FyYXR0ZXJpIG5vbiB2YWxpZGkiCisKKyM6IGxpYi9kcGtnL3V0aWxzLmM6NTYKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVhZCBlcnJvciBpbiBgJS4yNTBzJyIKK21zZ3N0ciAiZXJyb3JlIGRpIGxldHR1cmEgaW4gXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvdXRpbHMuYzo2MQorIywgYy1mb3JtYXQKK21zZ2lkICJmZ2V0cyBnYXZlIGFuIGVtcHR5IHN0cmluZyBmcm9tIGAlLjI1MHMnIgorbXNnc3RyICJmZ2V0cyBoYSByZXN0aXR1aXRvIHVuYSBzdHJpbmdhIHZ1b3RhIGRhIFwiJS4yNTBzXCIiCisKKyM6IGxpYi9kcGtnL3V0aWxzLmM6NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAidG9vLWxvbmcgbGluZSBvciBtaXNzaW5nIG5ld2xpbmUgaW4gYCUuMjUwcyciCittc2dzdHIgInJpZ2EgdHJvcHBvIGx1bmdhIG8gbmV3bGluZSBtYW5jYW50ZSBpbiBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy91dGlscy5jOjc1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW9mIHJlYWRpbmcgYCUuMjUwcyciCittc2dzdHIgImVvZiBub24gYXR0ZXNhIGluIFwiJS4yNTBzXCIiCisKKyM6IGxpYi9kcGtnL3ZhcmJ1Zi5jOjgyIGxpYi9kcGtnL3ZhcmJ1Zi5jOjg4Cittc2dpZCAiZXJyb3IgZm9ybWF0dGluZyBzdHJpbmcgaW50byB2YXJidWYgdmFyaWFibGUiCittc2dzdHIgImVycm9yZSBuZWwgZm9ybWF0dGFyZSBsYSBzdHJpbmdhIGluIHVuYSB2YXJpYWJpbGUgdmFyYnVmIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxNzkgc3JjL2FyY2hpdmVzLmM6MjAwIHNyYy9hcmNoaXZlcy5jOjcyNAorbXNnaWQgImVycm9yIHJlYWRpbmcgZnJvbSBkcGtnLWRlYiBwaXBlIgorbXNnc3RyICJlcnJvcmUgbmVsIGxlZ2dlcmUgZGFsbGEgcGlwZSBkcGtnLWRlYiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTk1CisjLCBjLWZvcm1hdAorbXNnaWQgInNraXBwZWQgdW5wYWNraW5nIGZpbGUgJyUuMjU1cycgKHJlcGxhY2VkIG9yIGV4Y2x1ZGVkPykiCittc2dzdHIgImVzdHJhemlvbmUgZGVsIGZpbGUgXCIlLjI1NXNcIiBzYWx0YXRhIChzb3N0aXR1aXRvIG8gZXNjbHVzbz8pIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoyNDYgc3JjL2FyY2hpdmVzLmM6MjUwCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHNldHRpbmcgdGltZXN0YW1wcyBvZiBgJS4yNTVzJyIKK21zZ3N0ciAiZXJyb3JlIG5lbGwnaW1wb3N0YXJlIGwnb3JhcmlvIGRpIFwiJS4yNTVzXCIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjI2MgorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIG93bmVyc2hpcCBvZiBzeW1saW5rIGAlLjI1NXMnIgorbXNnc3RyICIiCisiZXJyb3JlIG5lbGwnaW1wb3N0YXJlIGlsIHByb3ByaWV0YXJpbyBkZWwgY29sbGVnYW1lbnRvIHNpbWJvbGljbyBcIiUuMjU1c1wiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoyNjUgc3JjL2FyY2hpdmVzLmM6NzM0IHNyYy9zdGF0Y21kLmM6MTYzCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHNldHRpbmcgb3duZXJzaGlwIG9mIGAlLjI1NXMnIgorbXNnc3RyICJlcnJvcmUgbmVsbCdpbXBvc3RhcmUgaWwgcHJvcHJpZXRhcmlvIGRpIFwiJS4yNTVzXCIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjI2NyBzcmMvYXJjaGl2ZXMuYzo3MzYgc3JjL3N0YXRjbWQuYzoxNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igc2V0dGluZyBwZXJtaXNzaW9ucyBvZiBgJS4yNTVzJyIKK21zZ3N0ciAiZXJyb3JlIG5lbGwnaW1wb3N0YXJlIGkgcGVybWVzc2kgZGkgXCIlLjI1NXNcIiIKKworIzogc3JjL2FyY2hpdmVzLmM6Mzk1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBzdGF0IChkZXJlZmVyZW5jZSkgZXhpc3Rpbmcgc3ltbGluayBgJS4yNTBzJyIKK21zZ3N0ciAiIgorImVzZWN1emlvbmUgZGkgc3RhdCAoZGVyZWZlcmVuY2UpIHN1bCBjb2xsZWdhbWVudG8gc2ltYm9saWNvIGVzaXN0ZW50ZSAiCisiXCIlLjI1MHNcIiBub24gcml1c2NpdGEiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjQxNworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZmFpbGVkIHRvIHN0YXQgKGRlcmVmZXJlbmNlKSBwcm9wb3NlZCBuZXcgc3ltbGluayB0YXJnZXQgYCUuMjUwcycgZm9yICIKKyJzeW1saW5rIGAlLjI1MHMnIgorbXNnc3RyICIiCisiZXNlY3V6aW9uZSBkaSBzdGF0IChkZXJlZmVyZW5jZSkgc3VsIG51b3ZvIGNvbGxlZ2FtZW50byBzaW1ib2xpY28gcHJvcG9zdG8gIgorIlwiJS4yNTBzXCIgcGVyIFwiJS4yNTBzXCIgbm9uIHJpdXNjaXRhIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo0NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInRyeWluZyB0byBvdmVyd3JpdGUgYCUuMjUwcycsIHdoaWNoIGlzIHRoZSBkaXZlcnRlZCB2ZXJzaW9uIG9mIGAiCisiJS4yNTBzJyAocGFja2FnZTogJS4xMDBzKSIKK21zZ3N0ciAiIgorInRlbnRhdGEgc292cmFzY3JpdHR1cmEgZGkgXCIlLjI1MHNcIiwgbGEgdmVyc2lvbmUgZGl2ZXJnZW50ZSBkaSBcIiUuMjUwcyIKKyJcIiAocGFjY2hldHRvOiAlLjEwMHMpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo0ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJ5aW5nIHRvIG92ZXJ3cml0ZSBgJS4yNTBzJywgd2hpY2ggaXMgdGhlIGRpdmVydGVkIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dzdHIgIiIKKyJ0ZW50YXRhIHNvdnJhc2NyaXR0dXJhIGRpIFwiJS4yNTBzXCIsIGxhIHZlcnNpb25lIGRpdmVyZ2VudGUgZGkgXCIlLjI1MHNcIiIKKworIzogc3JjL2FyY2hpdmVzLmM6NTExCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGAlLjI1NXMnICh3aGljaCBJIHdhcyBhYm91dCB0byBpbnN0YWxsKSIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgZXNlZ3VpcmUgc3RhdCBzdSBcIiUuMjU1c1wiIChzdGF2YSBwZXIgZXNzZXJlIGluc3RhbGxhdG8pIgorCisjIChuZHQpIHVuIHBvJyBtb2x0byBsaWJlcmEsIG1hIHNpc3RlbWF0YSBhbGxhIG1lbm8gcGVnZ2lvCisjOiBzcmMvYXJjaGl2ZXMuYzo1MTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVuYWJsZSB0byBjbGVhbiB1cCBtZXNzIHN1cnJvdW5kaW5nIGAlLjI1NXMnIGJlZm9yZSBpbnN0YWxsaW5nIGFub3RoZXIgIgorInZlcnNpb24iCittc2dzdHIgIiIKKyJpbXBvc3NpYmlsZSByaXNvbHZlcmUgaSBwcm9ibGVtaSBjb24gXCIlLjI1NXNcIiBwcmltYSBkaSBpbnN0YWxsYXJuZSAiCisidW4nYWx0cmEgdmVyc2lvbmUiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjUyNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCByZXN0b3JlZCBgJS4yNTVzJyBiZWZvcmUgaW5zdGFsbGluZyBhbm90aGVyIHZlcnNpb24iCittc2dzdHIgIiIKKyJpbXBvc3NpYmlsZSBlc2VndWlyZSBzdGF0IHN1IFwiJS4yNTVzXCIgYXBwZW5hIHJpcHJpc3RpbmF0byBwcmltYSBkaSAiCisiaW5zdGFsbGFybmUgdW4nYWx0cmEgdmVyc2lvbmUiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjU2MQorIywgYy1mb3JtYXQKK21zZ2lkICJhcmNoaXZlIGNvbnRhaW5lZCBvYmplY3QgYCUuMjU1cycgb2YgdW5rbm93biB0eXBlIDB4JXgiCittc2dzdHIgImwnYXJjaGl2aW8gY29udGllbmUgbCdvZ2dldHRvIFwiJS4yNTVzXCIgZGkgdGlwbyBzY29ub3NjaXV0byAweCV4IgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2MjYgc3JjL2RpdmVydGNtZC5jOjE1MCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NjgyCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIyMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI4NAorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE0NDEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE2ODAKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTY3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjQ0CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUyNworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc3RhdCBmaWxlICclcyciCittc2dzdHIgImltcG9zc2liaWxlIGVzZWd1aXJlIHN0YXQgc3VsIGZpbGUgXCIlc1wiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVwbGFjaW5nIGZpbGVzIGluIG9sZCBwYWNrYWdlICVzIC4uLlxuIgorbXNnc3RyICJTb3N0aXR1emlvbmUgZGVpIGZpbGUgbmVsbGEgdmVyc2lvbmUgcHJlY2VkZW50ZSBkZWwgcGFjY2hldHRvICVzLi4uXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjY0NQorIywgYy1mb3JtYXQKK21zZ2lkICJSZXBsYWNlZCBieSBmaWxlcyBpbiBpbnN0YWxsZWQgcGFja2FnZSAlcyAuLi5cbiIKK21zZ3N0ciAiU29zdGl0dWl0aSBkYWkgZmlsZSBuZWwgcGFjY2hldHRvICVzIGluc3RhbGxhdG8uLi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6NjU0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ0cnlpbmcgdG8gb3ZlcndyaXRlIGRpcmVjdG9yeSAnJS4yNTBzJyBpbiBwYWNrYWdlICUuMjUwcyAlLjI1MHMgd2l0aCAiCisibm9uZGlyZWN0b3J5IgorbXNnc3RyICIiCisidGVudGF0YSBzb3ZyYXNjcml0dHVyYSBkZWxsYSBkaXJlY3RvcnkgXCIlLjI1MHNcIiBuZWwgcGFjY2hldHRvICUuMjUwcyAiCisiJS4yNTBzIGNvbiB1biBvZ2dldHRvIG5vbi1kaXJlY3RvcnkiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjY2MQorIywgYy1mb3JtYXQKK21zZ2lkICJ0cnlpbmcgdG8gb3ZlcndyaXRlICclLjI1MHMnLCB3aGljaCBpcyBhbHNvIGluIHBhY2thZ2UgJS4yNTBzICUuMjUwcyIKK21zZ3N0ciAiIgorInRlbnRhdGEgc292cmFzY3JpdHR1cmEgZGkgXCIlLjI1MHNcIiBwcmVzZW50ZSBhbmNoZSBuZWwgcGFjY2hldHRvICUuMjUwcyAiCisiJS4yNTBzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3MTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBgJS4yNTVzJyAod2hpbGUgcHJvY2Vzc2luZyBgJS4yNTVzJykiCittc2dzdHIgImltcG9zc2liaWxlIGNyZWFyZSBcIiUuMjU1c1wiIChkdXJhbnRlIGwnZWxhYm9yYXppb25lIGRpIFwiJS4yNTVzXCIpIgorCisjIChuZHQpIG9zY3VyYS4uLgorIzogc3JjL2FyY2hpdmVzLmM6NzE4CisjLCBjLWZvcm1hdAorbXNnaWQgImJhY2tlbmQgZHBrZy1kZWIgZHVyaW5nIGAlLjI1NXMnIgorbXNnc3RyICJkcGtnLWRlYiBiYWNrZW5kIHN1IFwiJS4yNTVzXCIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc0NCBzcmMvYXJjaGl2ZXMuYzo5MDggc3JjL2FyY2hpdmVzLmM6OTQ5CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3Npbmcvd3JpdGluZyBgJS4yNTVzJyIKK21zZ3N0ciAiZXJyb3JlIG5lbGxvIHNjcml2ZXJlL2NoaXVkZXJlIFwiJS4yNTVzXCIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc0OAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBwaXBlIGAlLjI1NXMnIgorbXNnc3RyICJlcnJvcmUgbmVsIGNyZWFyZSBsYSBwaXBlIFwiJS4yNTVzXCIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc1MyBzcmMvYXJjaGl2ZXMuYzo3NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgZGV2aWNlIGAlLjI1NXMnIgorbXNnc3RyICJlcnJvcmUgbmVsIGNyZWFyZSBpbCBkZXZpY2UgXCIlLjI1NXNcIiIKKworIzogc3JjL2FyY2hpdmVzLmM6NzcxCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIGhhcmQgbGluayBgJS4yNTVzJyIKK21zZ3N0ciAiZXJyb3JlIG5lbCBjcmVhcmUgaWwgY29sbGVnYW1lbnRvIGZpc2ljbyBcIiUuMjU1c1wiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NzcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjUzOQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBzeW1ib2xpYyBsaW5rIGAlLjI1NXMnIgorbXNnc3RyICJlcnJvcmUgbmVsIGNyZWFyZSBpbCBjb2xsZWdhbWVudG8gc2ltYm9saWNvIFwiJS4yNTVzXCIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc4MworIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBkaXJlY3RvcnkgYCUuMjU1cyciCittc2dzdHIgImVycm9yZSBuZWwgY3JlYXJlIGxhIGRpcmVjdG9yeSBcIiUuMjU1c1wiIgorCisjIChuZHQpIHZvbHV0YW1lbnRlIHRvbHRvICdhc2lkZScgZGFsbGEgdHJhZHV6aW9uZQorIzogc3JjL2FyY2hpdmVzLmM6ODIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBtb3ZlIGFzaWRlIGAlLjI1NXMnIHRvIGluc3RhbGwgbmV3IHZlcnNpb24iCittc2dzdHIgImltcG9zc2liaWxlIHNwb3N0YXJlIFwiJS4yNTVzXCIgcGVyIGluc3RhbGxhcm5lIGxhIG51b3ZhIHZlcnNpb25lIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4MzIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjMyMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBsaW5rIGAlLjI1NXMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSBsZWdnZXJlIGlsIGNvbGxlZ2FtZW50byBcIiUuMjU1c1wiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4MzQgc3JjL2NvbmZpZ3VyZS5jOjQyMworIywgYy1mb3JtYXQKK21zZ2lkICJzeW1ib2xpYyBsaW5rICclLjI1MHMnIHNpemUgaGFzIGNoYW5nZWQgZnJvbSAlamQgdG8gJXpkIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjgzOQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gbWFrZSBiYWNrdXAgc3ltbGluayBmb3IgYCUuMjU1cyciCittc2dzdHIgIiIKKyJpbXBvc3NpYmlsZSBjcmVhcmUgaWwgY29sbGVnYW1lbnRvIHNpbWJvbGljbyBhbGxhIGNvcGlhIGRpIGJhY2t1cCBkaSBcIiUuMjU1cyIKKyJcIiIKKworIzogc3JjL2FyY2hpdmVzLmM6ODQxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaG93biBiYWNrdXAgc3ltbGluayBmb3IgYCUuMjU1cyciCittc2dzdHIgIiIKKyJpbXBvc3NpYmlsZSBpbXBvc3RhcmUgaWwgcHJvcHJpZXRhcmlvIGRlbCBjb2xsZWdhbWVudG8gc2ltYm9saWNvIGFsbGEgY29waWEgIgorImRpIGJhY2t1cCBkaSBcIiUuMjU1c1wiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4NDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG1ha2UgYmFja3VwIGxpbmsgb2YgYCUuMjU1cycgYmVmb3JlIGluc3RhbGxpbmcgbmV3IHZlcnNpb24iCittc2dzdHIgIiIKKyJpbXBvc3NpYmlsZSBjcmVhcmUgaWwgY29sbGVnYW1lbnRvIGFsbGEgY29waWEgZGkgYmFja3VwIGRpIFwiJS4yNTVzXCIgcHJpbWEgIgorImRpIGluc3RhbGxhcm5lIGxhIG51b3ZhIHZlcnNpb25lIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4NjMgc3JjL2FyY2hpdmVzLmM6OTU3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyB2ZXJzaW9uIG9mIGAlLjI1NXMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSBpbnN0YWxsYXJlIGxhIG51b3ZhIHZlcnNpb25lIGRpIFwiJS4yNTVzXCIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjkwMiBzcmMvYXJjaGl2ZXMuYzo5NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gJyUuMjU1cyciCittc2dzdHIgImltcG9zc2liaWxlIGFwcmlyZSBcIiUuMjU1c1wiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo5NDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgZmlsZSAnJS4yNTVzJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgc2luY3Jvbml6emFyZSBpbCBmaWxlIFwiJS4yNTVzXCIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImlnbm9yaW5nIGRlcGVuZGVuY3kgcHJvYmxlbSB3aXRoICVzOlxuIgorIiVzIgorbXNnc3RyICIiCisiaWdub3JhdGkgaSBwcm9ibGVtaSBkaSBkaXBlbmRlbnplIGNvbiAlczpcbiIKKyIlcyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAwNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiY29uc2lkZXJpbmcgZGVjb25maWd1cmF0aW9uIG9mIGVzc2VudGlhbFxuIgorIiBwYWNrYWdlICVzLCB0byBlbmFibGUgJXMuIgorbXNnc3RyICIiCisicG9zc2liaWxlIGRlY29uZmlndXJhemlvbmUgZGVsIHBhY2NoZXR0b1xuIgorIiBlc3NlbnppYWxlICVzIHBlciBhYmlsaXRhcmUgJXMuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDA4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBubywgJXMgaXMgZXNzZW50aWFsLCB3aWxsIG5vdCBkZWNvbmZpZ3VyZVxuIgorIiBpdCBpbiBvcmRlciB0byBlbmFibGUgJXMuXG4iCittc2dzdHIgIiIKKyJkcGtnOiAlcyDDqCBlc3NlbnppYWxlIGUgbm9uIHZlcnLDoCBkZWNvbmZpZ3VyYXRvXG4iCisiIHBlciBwb3RlciBhYmlsaXRhcmUgJXMuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IG5vLCBjYW5ub3QgcHJvY2VlZCB3aXRoICVzICgtLWF1dG8tZGVjb25maWd1cmUgd2lsbCBoZWxwKTpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6IGltcG9zc2liaWxlIHByb2NlZGVyZSBjb24gJXMgKHByb3ZhcmUgY29uIC0tYXV0by1kZWNvbmZpZ3VyZSk6XG4iCisiJXMiCisKKyMgKG5kdCkgcXVlc3RlIGR1ZSBwYXJlIHNpIGFnZ2FuY2lubyBhIHF1ZWxsZSBwcmVjZWRlbnRpCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDMyCisjLCBjLWZvcm1hdAorbXNnaWQgInJlbW92YWwgb2YgJS4yNTBzIgorbXNnc3RyICJsYSByaW1vemlvbmUgZGkgJS4yNTBzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDU3CisjLCBjLWZvcm1hdAorbXNnaWQgImluc3RhbGxhdGlvbiBvZiAlLjI1MHMiCittc2dzdHIgImwnaW5zdGFsbGF6aW9uZSBkaSAlLjI1MHMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IGNvbnNpZGVyaW5nIGRlY29uZmlndXJhdGlvbiBvZiAlcywgd2hpY2ggd291bGQgYmUgYnJva2VuIGJ5ICVzIC4uLlxuIgorbXNnc3RyICIiCisiZHBrZzogcG9zc2liaWxlIGRlY29uZmlndXJhemlvbmUgZGkgJXMgY2hlIHBvdHJlYmJlIGVzc2VyZSByb3ZpbmF0byBhIGNhdXNhICIKKyJkaSAlcy4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDY1CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IHllcywgd2lsbCBkZWNvbmZpZ3VyZSAlcyAoYnJva2VuIGJ5ICVzKS5cbiIKK21zZ3N0ciAiZHBrZzogJXMgdmllbmUgZGVjb25maWd1cmF0byAocm92aW5hdG8gZGEgJXMpLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDY5IHNyYy9hcmNoaXZlcy5jOjExODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IHJlZ2FyZGluZyAlcyBjb250YWluaW5nICVzOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogaW5mb3JtYXppb25pIHN1ICVzIGNoZSBjb250aWVuZSAlczpcbiIKKyIlcyIKKworIyAobmR0KSBtYWguLi4uCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDc3Cittc2dpZCAiaWdub3JpbmcgYnJlYWthZ2UsIG1heSBwcm9jZWVkIGFueXdheSEiCittc2dzdHIgImRhbm5lZ2dpYW1lbnRpIGlnbm9yYXRpLCDDqCBwb3NzaWJpbGUgcHJvY2VkZXJlIHVndWFsbWVudGUuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDgyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpbnN0YWxsaW5nICUuMjUwcyB3b3VsZCBicmVhayAlLjI1MHMsIGFuZFxuIgorIiBkZWNvbmZpZ3VyYXRpb24gaXMgbm90IHBlcm1pdHRlZCAoLS1hdXRvLWRlY29uZmlndXJlIG1pZ2h0IGhlbHApIgorbXNnc3RyICIiCisibCdpbnN0YWxsYXppb25lIGRpICUuMjUwcyBwb3RyZWJiZSBkYW5uZWdnaWFyZSAlLjI1MHMgZVxuIgorIiBsYSBkZWNvbmZpZ3VyYXppb25lIG5vbiDDqCBjb25zZW50aXRhICgtLWF1dG8tZGVjb25maWd1cmUgcG90cmViYmUgZXNzZXJlICIKKyJ1dGlsZSkiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW5zdGFsbGluZyAlLjI1MHMgd291bGQgYnJlYWsgZXhpc3Rpbmcgc29mdHdhcmUiCittc2dzdHIgImwnaW5zdGFsbGF6aW9uZSBkaSAlLjI1MHMgcG90cmViYmUgZGFubmVnZ2lhcmUgaWwgc29mdHdhcmUgZXNpc3RlbnRlIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTE2CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IGNvbnNpZGVyaW5nIHJlbW92aW5nICVzIGluIGZhdm91ciBvZiAlcyAuLi5cbiIKK21zZ3N0ciAiZHBrZzogcG9zc2liaWxlIHJpbW96aW9uZSBkaSAlcyBhbCBwb3N0byBkaSAlcy4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTIyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGlzIG5vdCBwcm9wZXJseSBpbnN0YWxsZWQgLSBpZ25vcmluZyBhbnkgZGVwZW5kZW5jaWVzIG9uIGl0LlxuIgorbXNnc3RyICIiCisiJXMgbm9uIMOoIGluc3RhbGxhdG8gY29ycmV0dGFtZW50ZSAtIGxlIHJlbGF0aXZlIGRpcGVuZGVuemUgdmVycmFubm8gIgorImlnbm9yYXRlLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTUxCisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IG1heSBoYXZlIHRyb3VibGUgcmVtb3ZpbmcgJXMsIGFzIGl0IHByb3ZpZGVzICVzIC4uLlxuIgorbXNnc3RyICIiCisiZHBrZzogbGEgcmltb3ppb25lIGRpICVzIHBvdHJlYmJlIGNhdXNhcmUgZGVpIHByb2JsZW1pIHBvaWNow6kgZm9ybmlzY2UgIgorIiVzLi4uXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IHBhY2thZ2UgJXMgcmVxdWlyZXMgcmVpbnN0YWxsYXRpb24sIGJ1dCB3aWxsIHJlbW92ZSBhbnl3YXkgYXMgeW91ICIKKyJyZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiIKKyJkcGtnOiBpbCBwYWNjaGV0dG8gJXMgcmljaGllZGUgZGkgZXNzZXJlIHJlaW5zdGFsbGF0bywgbWEgdmVycsOgIGNvbXVucXVlICIKKyJyaW1vc3NvLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTY5CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IHBhY2thZ2UgJXMgcmVxdWlyZXMgcmVpbnN0YWxsYXRpb24sIHdpbGwgbm90IHJlbW92ZS5cbiIKK21zZ3N0ciAiIgorImRwa2c6IGlsIHBhY2NoZXR0byAlcyByaWNoaWVkZSBkaSBlc3NlcmUgcmVpbnN0YWxsYXRvLCBub24gdmVycsOgIHJpbW9zc28uXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogeWVzLCB3aWxsIHJlbW92ZSAlcyBpbiBmYXZvdXIgb2YgJXMuXG4iCittc2dzdHIgImRwa2c6IGlsIHBhY2NoZXR0byAlcyB2ZXJyw6Agcmltb3NzbyBhbCBwb3N0byBkaSAlcy5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE5MAorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mbGljdGluZyBwYWNrYWdlcyAtIG5vdCBpbnN0YWxsaW5nICUuMjUwcyIKK21zZ3N0ciAicGFjY2hldHRpIGluIGNvbmZsaXR0byAtICUuMjUwcyBub24gdmVycsOgIGluc3RhbGxhdG8iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExOTEKK21zZ2lkICJpZ25vcmluZyBjb25mbGljdCwgbWF5IHByb2NlZWQgYW55d2F5ISIKK21zZ3N0ciAiY29uZmxpdHRpIGlnbm9yYXRpLCDDqCBwb3NzaWJpbGUgcHJvY2VkZXJlIHVndWFsbWVudGUuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjM1CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgLS1yZWN1cnNpdmUgbmVlZHMgYXQgbGVhc3Qgb25lIHBhdGggYXJndW1lbnQiCittc2dzdHIgIi0tJXMgLS1yZWN1cnNpdmUgcmljaGllZGUgYWxtZW5vIHVuIHBlcmNvcnNvIGNvbWUgYXJnb21lbnRvIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjQ1Cittc2dpZCAiZmluZCBmb3IgZHBrZyAtLXJlY3Vyc2l2ZSIKK21zZ3N0ciAiZmluZCBwZXIgZHBrZyAtLXJlY3Vyc2l2ZSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI2NgorbXNnaWQgImZhaWxlZCB0byBmZG9wZW4gZmluZCdzIHBpcGUiCittc2dzdHIgImZkb3BlbiBkZWxsYSBwaXBlIGRpIGZpbmQgbm9uIHJpdXNjaXRhIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjcyCittc2dpZCAiZXJyb3IgcmVhZGluZyBmaW5kJ3MgcGlwZSIKK21zZ3N0ciAiZXJyb3JlIG5lbCBsZWdnZXJlIGxhIHBpcGUgZGkgZmluZCIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3MworbXNnaWQgImVycm9yIGNsb3NpbmcgZmluZCdzIHBpcGUiCittc2dzdHIgImVycm9yZSBuZWwgY2hpdWRlcmUgbGEgcGlwZSBkaSBmaW5kIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjc2CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbmQgZm9yIC0tcmVjdXJzaXZlIHJldHVybmVkIHVuaGFuZGxlZCBlcnJvciAlaSIKK21zZ3N0ciAiZmluZCBwZXIgLS1yZWN1cnNpdmUgaGEgcmVzdGl0dWl0byBsJ2Vycm9yZSBub24gZ2VzdGl0byAlaSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3OQorbXNnaWQgInNlYXJjaGVkLCBidXQgZm91bmQgbm8gcGFja2FnZXMgKGZpbGVzIG1hdGNoaW5nICouZGViKSIKK21zZ3N0ciAicmljZXJjYSBjb21wbGV0YXRhIHNlbnphIHRyb3ZhcmUgYWxjdW4gcGFjY2hldHRvIChmaWxlICouZGViKSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI5MAorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGF0IGxlYXN0IG9uZSBwYWNrYWdlIGFyY2hpdmUgZmlsZSBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyByaWNoaWVkZSBhbG1lbm8gdW4gYXJjaGl2aW8gZGkgcGFjY2hldHRvIGNvbWUgYXJnb21lbnRvIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzI1IHNyYy9kaXZlcnRjbWQuYzo3OCBzcmMvZGl2ZXJ0Y21kLmM6MTE4CisjOiBzcmMvZW5xdWlyeS5jOjE2NiBzcmMvZW5xdWlyeS5jOjI3OSBzcmMvZW5xdWlyeS5jOjQ0OSBzcmMvZW5xdWlyeS5jOjQ1MQorIzogc3JjL2VucXVpcnkuYzo0NjQgc3JjL21haW4uYzo2NiBzcmMvbWFpbi5jOjE2MyBzcmMvbWFpbi5jOjMxNAorIzogc3JjL21haW4uYzo0OTMgc3JjL3BhY2thZ2VzLmM6MjU0IHNyYy9xdWVyeWNtZC5jOjI1MiBzcmMvcXVlcnljbWQuYzozNTUKKyM6IHNyYy9xdWVyeWNtZC5jOjM5NiBzcmMvcXVlcnljbWQuYzo0MDQgc3JjL3F1ZXJ5Y21kLmM6NDQ4IHNyYy9xdWVyeWNtZC5jOjUxNworIzogc3JjL3F1ZXJ5Y21kLmM6NjA2IHNyYy9xdWVyeWNtZC5jOjY1MCBzcmMvc2VsZWN0LmM6Nzkgc3JjL3N0YXRjbWQuYzo2OAorIzogc3JjL3N0YXRjbWQuYzo5OCBzcmMvdHJpZ2NtZC5jOjU4IHNyYy90cmlnY21kLmM6OTAgZHBrZy1kZWIvYnVpbGQuYzo0NDEKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyMTcgZHBrZy1kZWIvZXh0cmFjdC5jOjI1MCBkcGtnLWRlYi9pbmZvLmM6MjAzCisjOiBkcGtnLWRlYi9pbmZvLmM6MjY1IGRwa2ctZGViL21haW4uYzo2MCBkcGtnLWRlYi9tYWluLmM6MTI2CisjOiBkcGtnLXNwbGl0L2luZm8uYzoyNTcgZHBrZy1zcGxpdC9tYWluLmM6NTQgZHBrZy1zcGxpdC9tYWluLmM6OTgKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxNDQgZHBrZy1zcGxpdC9xdWV1ZS5jOjI4MAorbXNnaWQgIjxzdGFuZGFyZCBvdXRwdXQ+IgorbXNnc3RyICI8c3RhbmRhcmQgb3V0cHV0PiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTMyNiBzcmMvcGFja2FnZXMuYzoyNTUgc3JjL3F1ZXJ5Y21kLmM6MjUzCisjOiBzcmMvcXVlcnljbWQuYzozNTMgc3JjL3F1ZXJ5Y21kLmM6NDU0IHNyYy9xdWVyeWNtZC5jOjUxOCBzcmMvc2VsZWN0LmM6ODAKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjE2OSBkcGtnLXNwbGl0L3F1ZXVlLmM6MjE4Cittc2dpZCAiPHN0YW5kYXJkIGVycm9yPiIKK21zZ3N0ciAiPHN0YW5kYXJkIGVycm9yPiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTM2NworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiU2VsZWN0aW5nIHByZXZpb3VzbHkgZGVzZWxlY3RlZCBwYWNrYWdlICVzLlxuIgorbXNnaWQgIlNlbGVjdGluZyBwcmV2aW91c2x5IHVuc2VsZWN0ZWQgcGFja2FnZSAlcy5cbiIKK21zZ3N0ciAiU2VsZXppb25hdG8gaWwgcGFjY2hldHRvICVzLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzcxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJTa2lwcGluZyBkZXNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dpZCAiU2tpcHBpbmcgdW5zZWxlY3RlZCBwYWNrYWdlICVzLlxuIgorbXNnc3RyICJJZ25vcmF0byBpbCBwYWNjaGV0dG8gbm9uIHNlbGV6aW9uYXRvICVzLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzg3CisjLCBjLWZvcm1hdAorbXNnaWQgIlZlcnNpb24gJS4yNTBzIG9mICUuMjUwcyBhbHJlYWR5IGluc3RhbGxlZCwgc2tpcHBpbmcuXG4iCittc2dzdHIgIlZlcnNpb25lICUuMjUwcyBkaSAlLjI1MHMgZ2nDoCBpbnN0YWxsYXRhLCBpZ25vcmF0YS5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTM5NworIywgYy1mb3JtYXQKK21zZ2lkICJkb3duZ3JhZGluZyAlLjI1MHMgZnJvbSAlLjI1MHMgdG8gJS4yNTBzLiIKK21zZ3N0ciAicmV0cm9jZXNzaW9uZSBkaSAlLjI1MHMgZGFsbGEgdmVyc2lvbmUgJS4yNTBzIGFsbGEgJS4yNTBzLiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTQwMgorIywgYy1mb3JtYXQKK21zZ2lkICJXaWxsIG5vdCBkb3duZ3JhZGUgJS4yNTBzIGZyb20gdmVyc2lvbiAlLjI1MHMgdG8gJS4yNTBzLCBza2lwcGluZy5cbiIKK21zZ3N0ciAiIgorIklsIHBhY2NoZXR0byAlLjI1MHMgbm9uIHZlcnLDoCByZXRyb2Nlc3NvIGRhbGxhIHZlcnNpb25lICUuMjUwcyBhbGxhICUuMjUwcywgIgorImlnbm9yYXRvLlxuIgorCisjOiBzcmMvY2xlYW51cC5jOjg2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1bmFibGUgdG8gcmVtb3ZlIG5ld2x5LWluc3RhbGxlZCB2ZXJzaW9uIG9mIGAlLjI1MHMnIHRvIGFsbG93IHJlaW5zdGFsbGF0aW9uICIKKyJvZiBiYWNrdXAgY29weSIKK21zZ3N0ciAiIgorImltcG9zc2liaWxlIHJpbXVvdmVyZSBsYSB2ZXJzaW9uZSBhcHBlbmEgaW5zdGFsbGF0YSBkaSBcIiUuMjUwc1wiIHBlciAiCisiY29uc2VudGlyZSBsYSByZWluc3RhbGxhemlvbmUgZGVsbGEgY29waWEgZGkgYmFja3VwIgorCisjOiBzcmMvY2xlYW51cC5jOjkzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZXN0b3JlIGJhY2t1cCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSByaXByaXN0aW5hcmUgbGEgY29waWEgZGkgYmFja3VwIGRpIFwiJS4yNTBzXCIiCisKKyM6IHNyYy9jbGVhbnVwLmM6OTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBiYWNrdXAgY29weSBvZiAnJS4yNTBzJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgcmltdW92ZXJlIGxhIGNvcGlhIGRpIGJhY2t1cCBkaSBcIiUuMjUwc1wiIgorCisjOiBzcmMvY2xlYW51cC5jOjEwMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIG5ld2x5LWluc3RhbGxlZCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSByaW11b3ZlcmUgbGEgdmVyc2lvbmUgYXBwZW5hIGluc3RhbGxhdGEgZGkgXCIlLjI1MHNcIiIKKworIzogc3JjL2NsZWFudXAuYzoxMDgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBuZXdseS1leHRyYWN0ZWQgdmVyc2lvbiBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgcmltdW92ZXJlIGxhIHZlcnNpb25lIGFwcGVuYSBlc3RyYXR0YSBkaSBcIiUuMjUwc1wiIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTA0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IG5ldyBkaXN0cmlidXRlZCBjb25mZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAiIgorImltcG9zc2liaWxlIGVzZWd1aXJlIHN0YXQgc3VsIG51b3ZvIGZpbGUgZGkgY29uZmlndXJhemlvbmUgZGlzdHJpYnVpdG8gIgorIlwiJS4yNTBzXCIiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgY3VycmVudCBpbnN0YWxsZWQgY29uZmZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKyJpbXBvc3NpYmlsZSBlc2VndWlyZSBzdGF0IHN1bCBmaWxlIGRpIGNvbmZpZ3VyYXppb25lIFwiJS4yNTBzXCIgYXR0dWFsbWVudGUgIgorImluc3RhbGxhdG8iCisKKyM6IHNyYy9jb25maWd1cmUuYzoxMjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIkNvbmZpZ3VyYXRpb24gZmlsZSBgJXMnLCBkb2VzIG5vdCBleGlzdCBvbiBzeXN0ZW0uXG4iCisiSW5zdGFsbGluZyBuZXcgY29uZmlnIGZpbGUgYXMgeW91IHJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiIgorIlxuIgorIklsIGZpbGUgZGkgY29uZmlndXJhemlvbmUgXCIlc1wiIG5vbiBlc2lzdGUgbmVsIHNpc3RlbWEuXG4iCisiVmllbmUgaW5zdGFsbGF0byBpbCBudW92byBmaWxlLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTY4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlIG9sZCBiYWNrdXAgJyUuMjUwcyc6ICVzIgorbXNnc3RyICIiCisiJXM6IHJpbW96aW9uZSBkZWxsYSB2ZWNjaGlhIGNvcGlhIGRpIGJhY2t1cCBcIiUuMjUwc1wiIG5vbiByaXVzY2l0YTogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW5hbWUgJyUuMjUwcycgdG8gJyUuMjUwcyc6ICVzIgorbXNnc3RyICIlczogcmlub21pbmEgZGkgXCIlLjI1MHNcIiBpbiBcIiUuMjUwc1wiIG5vbiByaXVzY2l0YTogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW1vdmUgJyUuMjUwcyc6ICVzIgorbXNnc3RyICIlczogcmltb3ppb25lIGRpIFwiJS4yNTBzXCIgbm9uIHJpdXNjaXRhOiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE4OAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIHJlbW92ZSBvbGQgZGlzdHJpYnV0ZWQgdmVyc2lvbiAnJS4yNTBzJzogJXMiCittc2dzdHIgIiIKKyIlczogcmltb3ppb25lIGRlbGxhIHZlY2NoaWEgdmVyc2lvbmUgZGlzdHJpYnVpdGEgXCIlLjI1MHNcIiBub24gcml1c2NpdGE6ICVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTkyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlICclLjI1MHMnIChiZWZvcmUgb3ZlcndyaXRlKTogJXMiCittc2dzdHIgIiVzOiByaW1vemlvbmUgZGkgXCIlLjI1MHNcIiAocHJpbWEgZGkgc292cmFzY3JpdmVybG8pIG5vbiByaXVzY2l0YTogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byBsaW5rICclLjI1MHMnIHRvICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiJXM6IGNvbGxlZ2FtZW50byBkaSBcIiUuMjUwc1wiIGEgXCIlLjI1MHNcIiBub24gcml1c2NpdG86ICVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjAwCisjLCBjLWZvcm1hdAorbXNnaWQgIkluc3RhbGxpbmcgbmV3IHZlcnNpb24gb2YgY29uZmlnIGZpbGUgJXMgLi4uXG4iCittc2dzdHIgIkluc3RhbGxhemlvbmUgZGVsbGEgbnVvdmEgdmVyc2lvbmUgZGVsIGZpbGUgZGkgY29uZmlndXJhemlvbmUgJXMuLi5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjIwNiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NTQ2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIGAlLjI1MHMnIGFzIGAlLjI1MHMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSBpbnN0YWxsYXJlIFwiJS4yNTBzXCIgY29tZSBcIiUuMjUwc1wiIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjU3CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHBhY2thZ2UgbmFtZWQgYCVzJyBpcyBpbnN0YWxsZWQsIGNhbm5vdCBjb25maWd1cmUiCittc2dzdHIgIiIKKyJuZXNzdW4gcGFjY2hldHRvIGNoaWFtYXRvIFwiJXNcIiBpbnN0YWxsYXRvLCBpbXBvc3NpYmlsZSBlc2VndWlyZSBsYSAiCisiY29uZmlndXJhemlvbmUiCisKKyM6IHNyYy9jb25maWd1cmUuYzoyNjAKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlLjI1MHMgaXMgYWxyZWFkeSBpbnN0YWxsZWQgYW5kIGNvbmZpZ3VyZWQiCittc2dzdHIgImlsIHBhY2NoZXR0byAlLjI1MHMgw6ggZ2nDoCBpbnN0YWxsYXRvIGUgY29uZmlndXJhdG8iCisKKyM6IHNyYy9jb25maWd1cmUuYzoyNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInBhY2thZ2UgJS4yNTBzIGlzIG5vdCByZWFkeSBmb3IgY29uZmlndXJhdGlvblxuIgorIiBjYW5ub3QgY29uZmlndXJlIChjdXJyZW50IHN0YXR1cyBgJS4yNTBzJykiCittc2dzdHIgIiIKKyJpbCBwYWNjaGV0dG8gJS4yNTBzIG5vbiDDqCBwcm9udG8gcGVyIGxhIGNvbmZpZ3VyYXppb25lXG4iCisiIGltcG9zc2liaWxlIGNvbmZpZ3VyYXJsbyAoc3RhdG8gY29ycmVudGUgXCIlLjI1MHNcIikiCisKKyM6IHNyYy9jb25maWd1cmUuYzoyOTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IGRlcGVuZGVuY3kgcHJvYmxlbXMgcHJldmVudCBjb25maWd1cmF0aW9uIG9mICVzOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogcHJvYmxlbWkgY29uIGxlIGRpcGVuZGVuemUgaW1wZWRpc2Nvbm8gbGEgY29uZmlndXJhemlvbmUgZGkgJXM6XG4iCisiJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoyOTcKK21zZ2lkICJkZXBlbmRlbmN5IHByb2JsZW1zIC0gbGVhdmluZyB1bmNvbmZpZ3VyZWQiCittc2dzdHIgInByb2JsZW1pIGNvbiBsZSBkaXBlbmRlbnplIC0gbGFzY2lhdG8gbm9uIGNvbmZpZ3VyYXRvIgorCisjOiBzcmMvY29uZmlndXJlLmM6MzAxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiAlczogZGVwZW5kZW5jeSBwcm9ibGVtcywgYnV0IGNvbmZpZ3VyaW5nIGFueXdheSBhcyB5b3UgcmVxdWVzdGVkOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogJXM6IHByb2JsZW1pIGNvbiBsZSBkaXBlbmRlbnplLCBtYSB2aWVuZSBjb25maWd1cmF0byB1Z3VhbG1lbnRlOlxuIgorIiVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MzA5Cittc2dpZCAiIgorIlBhY2thZ2UgaXMgaW4gYSB2ZXJ5IGJhZCBpbmNvbnNpc3RlbnQgc3RhdGUgLSB5b3Ugc2hvdWxkXG4iCisiIHJlaW5zdGFsbCBpdCBiZWZvcmUgYXR0ZW1wdGluZyBjb25maWd1cmF0aW9uLiIKK21zZ3N0ciAiIgorIklsIHBhY2NoZXR0byBzaSB0cm92YSBpbiB1bm8gc3RhdG8gZGkgaW5jb25zaXN0ZW56YSBjcml0aWNvIC0gw6ggY29uc2lnbGlhdG9cbiIKKyIgcmVpbnN0YWxsYXJsbyBwcmltYSBkaSB0ZW50YXJlIGxhIGNvbmZpZ3VyYXppb25lLiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjMxMgorIywgYy1mb3JtYXQKK21zZ2lkICJTZXR0aW5nIHVwICVzICglcykgLi4uXG4iCittc2dzdHIgIkNvbmZpZ3VyYXppb25lIGRpICVzICglcykuLi5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjM5NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IHVuYWJsZSB0byBzdGF0IGNvbmZpZyBmaWxlICclcydcbiIKKyIgKD0gJyVzJyk6ICVzIgorbXNnc3RyICIiCisiJXM6IGltcG9zc2liaWxlIGVzZWd1aXJlIHN0YXQgc3VsIGZpbGUgZGkgY29uZmlndXJhemlvbmUgXCIlc1wiXG4iCisiICg9IFwiJXNcIik6ICVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDA5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogY29uZmlnIGZpbGUgJyVzJyBpcyBhIGNpcmN1bGFyIGxpbmtcbiIKKyIgKD0gJyVzJykiCittc2dzdHIgIiIKKyIlczogaWwgZmlsZSBkaSBjb25maWd1cmF6aW9uZSBcIiVzXCIgw6ggdW4gY29sbGVnYW1lbnRvIGNpcmNvbGFyZVxuIgorIiAoPSBcIiVzXCIpIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDE4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogdW5hYmxlIHRvIHJlYWRsaW5rIGNvbmZmaWxlICclcydcbiIKKyIgKD0gJyVzJyk6ICVzIgorbXNnc3RyICIiCisiJXM6IGltcG9zc2liaWxlIGVzZWd1aXJlIHJlYWRsaW5rIHN1bCBmaWxlIGRpIGNvbmZpZ3VyYXppb25lIFwiJXNcIlxuIgorIiAoPSBcIiVzXCIpOiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQ0NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IGNvbmZmaWxlICclLjI1MHMnIHJlc29sdmVzIHRvIGRlZ2VuZXJhdGUgZmlsZW5hbWVcbiIKKyIgKCclcycgaXMgYSBzeW1saW5rIHRvICclcycpIgorbXNnc3RyICIiCisiJXM6IGlsIGZpbGUgZGkgY29uZmlndXJhemlvbmUgXCIlLjI1MHNcIiBpbmRpY2EgdW4gbm9tZSBmaWxlIHJvdmluYXRvXG4iCisiIChcIiVzXCIgw6ggdW4gY29sbGVnYW1lbnRvIHNpbWJvbGljbyBhIFwiJXNcIikiCisKKyM6IHNyYy9jb25maWd1cmUuYzo0NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGNvbmZmaWxlICclLjI1MHMnIGlzIG5vdCBhIHBsYWluIGZpbGUgb3Igc3ltbGluayAoPSAnJXMnKSIKK21zZ3N0ciAiIgorIiVzOiBpbCBmaWxlIGRpIGNvbmZpZ3VyYXppb25lIFwiJS4yNTBzXCIgbm9uIMOoIHVuIGZpbGUgbm9ybWFsZSBvIHVuICIKKyJjb2xsZWdhbWVudG8gc2ltYm9saWNvICg9IFwiJXNcIikiCisKKyM6IHNyYy9jb25maWd1cmUuYzo0ODYKK21zZ2lkICJtZDVoYXNoIgorbXNnc3RyICJtZDVoYXNoIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDkyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB1bmFibGUgdG8gb3BlbiBjb25mZmlsZSAlcyBmb3IgaGFzaDogJXMiCittc2dzdHIgIiIKKyIlczogaW1wb3NzaWJpbGUgYXByaXJlIGlsIGZpbGUgZGkgY29uZmlndXJhemlvbmUgJXMgcGVyIGNhbGNvbGFybmUgaWwgY29kaWNlICIKKyJoYXNoOiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjUyMiBzcmMvY29uZmlndXJlLmM6NTI2Cittc2dpZCAiY29uZmZpbGUgZGlmZmVyZW5jZSB2aXN1YWxpemVyIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo1NDMKK21zZ2lkICJUeXBlIGBleGl0JyB3aGVuIHlvdSdyZSBkb25lLlxuIgorbXNnc3RyICJEaWdpdGFyZSBcImV4aXRcIiB1bmEgdm9sdGEgdGVybWluYXRvLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NTUyIHNyYy9jb25maWd1cmUuYzo1NTYKK21zZ2lkICJjb25mZmlsZSBzaGVsbCIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjAyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJDb25maWd1cmF0aW9uIGZpbGUgYCVzJyIKK21zZ3N0ciAiIgorIlxuIgorIkZpbGUgZGkgY29uZmlndXJhemlvbmUgXCIlc1wiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjA0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAoYWN0dWFsbHkgYCVzJykiCittc2dzdHIgIiAocmVhbG1lbnRlIFwiJXNcIikiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiA9PT4gRmlsZSBvbiBzeXN0ZW0gY3JlYXRlZCBieSB5b3Ugb3IgYnkgYSBzY3JpcHQuXG4iCisiID09PiBGaWxlIGFsc28gaW4gcGFja2FnZSBwcm92aWRlZCBieSBwYWNrYWdlIG1haW50YWluZXIuXG4iCittc2dzdHIgIiIKKyJcbiIKKyIgPT0+IEZpbGUgbmVsIHNpc3RlbWEgY3JlYXRvIGRhbGwndXRlbnRlIG8gZGEgdW5vIHNjcmlwdC5cbiIKKyIgPT0+IEZpbGUgYW5jaGUgbmVsIHBhY2NoZXR0byBmb3JuaXRvIGRhbCByZXNwb25zYWJpbGUgZGVsIHBhY2NoZXR0by5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYxMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiICAgICBOb3QgbW9kaWZpZWQgc2luY2UgaW5zdGFsbGF0aW9uLlxuIgorbXNnc3RyICIiCisiXG4iCisiICAgICBOb24gbW9kaWZpY2F0byBkb3BvIGwnaW5zdGFsbGF6aW9uZS5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYxNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiID09PiBNb2RpZmllZCAoYnkgeW91IG9yIGJ5IGEgc2NyaXB0KSBzaW5jZSBpbnN0YWxsYXRpb24uXG4iCittc2dzdHIgIiIKKyJcbiIKKyIgPT0+IE1vZGlmaWNhdG8gKGRhbGwndXRlbnRlIG8gZGEgdW5vIHNjcmlwdCkgZG9wbyBsJ2luc3RhbGxhemlvbmUuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiA9PT4gRGVsZXRlZCAoYnkgeW91IG9yIGJ5IGEgc2NyaXB0KSBzaW5jZSBpbnN0YWxsYXRpb24uXG4iCittc2dzdHIgIiIKKyJcbiIKKyIgPT0+IEVsaW1pbmF0byAoZGFsbCd1dGVudGUgbyBkYSB1bm8gc2NyaXB0KSBkb3BvIGwnaW5zdGFsbGF6aW9uZS5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYxOQorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IFBhY2thZ2UgZGlzdHJpYnV0b3IgaGFzIHNoaXBwZWQgYW4gdXBkYXRlZCB2ZXJzaW9uLlxuIgorbXNnc3RyICIiCisiID09PiBJbCBkaXN0cmlidXRvcmUgZGVsIHBhY2NoZXR0byBoYSBmb3JuaXRvIHVuYSB2ZXJzaW9uZSBhZ2dpb3JuYXRhLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjIwCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgICAgVmVyc2lvbiBpbiBwYWNrYWdlIGlzIHRoZSBzYW1lIGFzIGF0IGxhc3QgaW5zdGFsbGF0aW9uLlxuIgorbXNnc3RyICIiCisiICAgICBMYSB2ZXJzaW9uZSBuZWwgcGFjY2hldHRvIMOoIGxhIHN0ZXNzYSBkZWxsJ3VsdGltYSBpbnN0YWxsYXppb25lLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjI4CisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gVXNpbmcgbmV3IGZpbGUgYXMgeW91IHJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiID09PiBWaWVuZSB1c2F0byBpbCBudW92byBmaWxlLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gVXNpbmcgY3VycmVudCBvbGQgZmlsZSBhcyB5b3UgcmVxdWVzdGVkLlxuIgorbXNnc3RyICIgPT0+IFZpZW5lIHVzYXRvIGlsIHZlY2NoaW8gZmlsZS5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY0MQorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IEtlZXBpbmcgb2xkIGNvbmZpZyBmaWxlIGFzIGRlZmF1bHQuXG4iCittc2dzdHIgIiIKKyIgPT0+IFZpZW5lIG1hbnRlbnV0byBpbCB2ZWNjaGlvIGZpbGUgZGkgY29uZmlndXJhemlvbmUgY29tZSB2YWxvcmUgIgorInByZWRlZmluaXRvLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gVXNpbmcgbmV3IGNvbmZpZyBmaWxlIGFzIGRlZmF1bHQuXG4iCittc2dzdHIgIiIKKyIgPT0+IFZpZW5lIHVzYXRvIGlsIG51b3ZvIGZpbGUgZGkgY29uZmlndXJhemlvbmUgY29tZSB2YWxvcmUgcHJlZGVmaW5pdG8uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiAgIFdoYXQgd291bGQgeW91IGxpa2UgdG8gZG8gYWJvdXQgaXQgPyAgWW91ciBvcHRpb25zIGFyZTpcbiIKKyIgICAgWSBvciBJICA6IGluc3RhbGwgdGhlIHBhY2thZ2UgbWFpbnRhaW5lcidzIHZlcnNpb25cbiIKKyIgICAgTiBvciBPICA6IGtlZXAgeW91ciBjdXJyZW50bHktaW5zdGFsbGVkIHZlcnNpb25cbiIKKyIgICAgICBEICAgICA6IHNob3cgdGhlIGRpZmZlcmVuY2VzIGJldHdlZW4gdGhlIHZlcnNpb25zXG4iCisiICAgICAgWiAgICAgOiBzdGFydCBhIHNoZWxsIHRvIGV4YW1pbmUgdGhlIHNpdHVhdGlvblxuIgorbXNnc3RyICIiCisiICAgQ29tZSBwcm9jZWRlcmU/IExlIG9wemlvbmkgc29ubzpcbiIKKyIgICAgWSBvIEkgIDogaW5zdGFsbGEgbGEgdmVyc2lvbmUgZGVsIHJlc3BvbnNhYmlsZSBkZWwgcGFjY2hldHRvXG4iCisiICAgIE4gb2QgTyAgOiBtYW50aWVuZSBsYSB2ZXJzaW9uZSBhdHR1YWxtZW50ZSBpbnN0YWxsYXRhXG4iCisiICAgICAgRCAgICA6IG1vc3RyYSBsZSBkaWZmZXJlbnplIHRyYSBsZSB2ZXJzaW9uaVxuIgorIiAgICAgIFogICAgOiBhdnZpYSB1bmEgc2hlbGwgcGVyIGVzYW1pbmFyZSBsYSBzaXR1YXppb25lXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIFRoZSBkZWZhdWx0IGFjdGlvbiBpcyB0byBrZWVwIHlvdXIgY3VycmVudCB2ZXJzaW9uLlxuIgorbXNnc3RyICIgTCdhemlvbmUgcHJlZGVmaW5pdGEgY29uc2lzdGUgbmVsIG1hbnRlbmVyZSBsYSB2ZXJzaW9uZSBhdHR1YWxlLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjYxCisjLCBjLWZvcm1hdAorbXNnaWQgIiBUaGUgZGVmYXVsdCBhY3Rpb24gaXMgdG8gaW5zdGFsbCB0aGUgbmV3IHZlcnNpb24uXG4iCittc2dzdHIgIiBMJ2F6aW9uZSBwcmVkZWZpbml0YSBjb25zaXN0ZSBuZWxsJ2luc3RhbGxhcmUgbGEgbnVvdmEgdmVyc2lvbmUuXG4iCisKKyMgKG5kdCkgcGVuc28gbm9uIGNpIHNpYW5vIHByb2JsZW1pIG5lbCB0cmFkdXJyZQorIzogc3JjL2NvbmZpZ3VyZS5jOjY2NgorbXNnaWQgIltkZWZhdWx0PU5dIgorbXNnc3RyICJbcHJlZGVmaW5pdG89Tl0iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NjcKK21zZ2lkICJbZGVmYXVsdD1ZXSIKK21zZ3N0ciAiW3ByZWRlZmluaXRvPVldIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjY4Cittc2dpZCAiW25vIGRlZmF1bHRdIgorbXNnc3RyICJbbmVzc3VuIHByZWRlZmluaXRvXSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY3MQorbXNnaWQgImVycm9yIHdyaXRpbmcgdG8gc3RkZXJyLCBkaXNjb3ZlcmVkIGJlZm9yZSBjb25mZmlsZSBwcm9tcHQiCittc2dzdHIgIiIKKyJlcnJvcmUgZGkgc2NyaXR0dXJhIHN1bGxvIHN0ZGVyciB2ZXJpZmljYXRvc2kgcHJpbWEgZGVsIHByb21wdCBwZXIgaWwgZmlsZSAiCisiZGkgY29uZmlndXJhemlvbmUiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2ODAKK21zZ2lkICJyZWFkIGVycm9yIG9uIHN0ZGluIGF0IGNvbmZmaWxlIHByb21wdCIKK21zZ3N0ciAiZXJyb3JlIGRpIGxldHR1cmEgZGEgc3RkaW4gYWwgcHJvbXB0IHBlciBpbCBmaWxlIGRpIGNvbmZpZ3VyYXppb25lIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjgxCittc2dpZCAiRU9GIG9uIHN0ZGluIGF0IGNvbmZmaWxlIHByb21wdCIKK21zZ3N0ciAiRU9GIHN1IHN0ZGluIGFsIHByb21wdCBwZXIgaWwgZmlsZSBkaSBjb25maWd1cmF6aW9uZSIKKworIzogc3JjL2RlcGNvbi5jOjE3NQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBkZXBlbmRzIG9uICVzIgorbXNnc3RyICIlcyBkaXBlbmRlIGRhICVzIgorCisjOiBzcmMvZGVwY29uLmM6MTc4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHByZS1kZXBlbmRzIG9uICVzIgorbXNnc3RyICIlcyBwcmUtZGlwZW5kZSBkYSAlcyIKKworIzogc3JjL2RlcGNvbi5jOjE4MQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyByZWNvbW1lbmRzICVzIgorbXNnc3RyICIlcyByYWNjb21hbmRhICVzIgorCisjOiBzcmMvZGVwY29uLmM6MTg0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHN1Z2dlc3RzICVzIgorbXNnc3RyICIlcyBzdWdnZXJpc2NlICVzIgorCisjOiBzcmMvZGVwY29uLmM6MTg3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGJyZWFrcyAlcyIKK21zZ3N0ciAiJXMgZGFubmVnZ2lhICVzIgorCisjOiBzcmMvZGVwY29uLmM6MTkwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGNvbmZsaWN0cyB3aXRoICVzIgorbXNnc3RyICIlcyDDqCBpbiBjb25mbGl0dG8gY29uICVzIgorCisjOiBzcmMvZGVwY29uLmM6MTkzCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGVuaGFuY2VzICVzIgorbXNnc3RyICIlcyBlc3RlbmRlICVzIgorCisjOiBzcmMvZGVwY29uLmM6Mjk2CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHRvIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIHN0YSBwZXIgZXNzZXJlIHJpbW9zc28uXG4iCisKKyM6IHNyYy9kZXBjb24uYzoyOTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdG8gYmUgZGVjb25maWd1cmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyBzdGEgcGVyIGVzc2VyZSBkZWNvbmZpZ3VyYXRvLlxuIgorCisjOiBzcmMvZGVwY29uLmM6MzA0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHRvIGJlIGluc3RhbGxlZCwgYnV0IGlzIHZlcnNpb24gJS4yNTBzLlxuIgorbXNnc3RyICIgICUuMjUwcyBzdGEgcGVyIGVzc2VyZSBpbnN0YWxsYXRvLCBtYSBsYSB2ZXJzaW9uZSDDqCBsYSAlLjI1MHMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgaW5zdGFsbGVkLCBidXQgaXMgdmVyc2lvbiAlLjI1MHMuXG4iCittc2dzdHIgIiAgJS4yNTBzIMOoIGluc3RhbGxhdG8sIG1hIGxhIHZlcnNpb25lIMOoIGxhICUuMjUwcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjMzMworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB1bnBhY2tlZCwgYnV0IGhhcyBuZXZlciBiZWVuIGNvbmZpZ3VyZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIMOoIHN0YXRvIGVzdHJhdHRvLCBtYSBub24gw6ggbWFpIHN0YXRvIGNvbmZpZ3VyYXRvLlxuIgorCisjOiBzcmMvZGVwY29uLmM6MzM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHVucGFja2VkLCBidXQgaXMgdmVyc2lvbiAlLjI1MHMuXG4iCittc2dzdHIgIiAgJS4yNTBzIMOoIHN0YXRvIGVzdHJhdHRvLCBtYSBsYSB2ZXJzaW9uZSDDqCBsYSAlLjI1MHMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozNDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgbGF0ZXN0IGNvbmZpZ3VyZWQgdmVyc2lvbiBpcyAlLjI1MHMuXG4iCittc2dzdHIgIiAgbCd1bHRpbWEgdmVyc2lvbmUgY29uZmlndXJhdGEgZGkgJS4yNTBzIMOoIGxhICUuMjUwcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjM1MworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyAlcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgw6ggJXMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozODgKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGJ1dCBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyBmb3JuaXNjZSAlLjI1MHMsIG1hIHN0YSBwZXIgZXNzZXJlIHJpbW9zc28uXG4iCisKKyM6IHNyYy9kZXBjb24uYzozOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGJ1dCBpcyB0byBiZSBkZWNvbmZpZ3VyZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIGZvcm5pc2NlICUuMjUwcywgbWEgc3RhIHBlciBlc3NlcmUgZGVjb25maWd1cmF0by5cbiIKKworIzogc3JjL2RlcGNvbi5jOjQwMQorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYnV0IGlzICVzLlxuIgorbXNnc3RyICIgICUuMjUwcyBmb3JuaXNjZSAlLjI1MHMsIG1hIMOoICVzLlxuIgorCisjOiBzcmMvZGVwY29uLmM6NDE1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIG5vdCBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIG5vbiDDqCBpbnN0YWxsYXRvLlxuIgorCisjOiBzcmMvZGVwY29uLmM6NDQzCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzICh2ZXJzaW9uICUuMjUwcykgaXMgdG8gYmUgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIgICUuMjUwcyAodmVyc2lvbmUgJS4yNTBzKSBzdGEgcGVyIGVzc2VyZSBpbnN0YWxsYXRvLlxuIgorCisjOiBzcmMvZGVwY29uLmM6NDY4CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzICh2ZXJzaW9uICUuMjUwcykgaXMgcHJlc2VudCBhbmQgJXMuXG4iCittc2dzdHIgIiAgJS4yNTBzICh2ZXJzaW9uZSAlLjI1MHMpIMOoIHByZXNlbnRlIGUgJXMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGFuZCBpcyB0byBiZSBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIGZvcm5pc2NlICUuMjUwcyBlIHN0YSBwZXIgZXNzZXJlIGluc3RhbGxhdG8uXG4iCisKKyM6IHNyYy9kZXBjb24uYzo1MzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGFuZCBpcyBwcmVzZW50IGFuZCAlcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgZm9ybmlzY2UgJS4yNTBzLCDDqCBwcmVzZW50ZSBlICVzLlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTAKKyMsIGZ1enp5CisjfCBtc2dpZCAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBxdWVyeWluZyBwYWNrYWdlcy4iCittc2dpZCAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBkaXZlcnRpbmcgZmlsZXMuIgorbXNnc3RyICIiCisiVXNhcmUgLS1oZWxwIHBlciB1biBhaXV0byBzdSBjb21lIGVzZWd1aXJlIGludGVycm9nYXppb25pIHN1aSBwYWNjaGV0dGkuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjYgc3JjL3N0YXRjbWQuYzo1NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuICVzIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkRlYmlhbiAlcyB2ZXJzaW9uZSAlcy5cbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjcwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMTAgR3VpbGxlbSBKb3Zlci5cbiIKK21zZ3N0ciAiIgorIkNvcHlyaWdodCDCqSAxOTk1IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCDCqSAyMDAwLCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IMKpIDIwMTAgR3VpbGxlbSBKb3Zlci5cbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjc1IHNyYy9tYWluLmM6NjMgc3JjL3F1ZXJ5Y21kLmM6NjAzIHNyYy9zdGF0Y21kLmM6NjUKKyM6IHNyYy90cmlnY21kLmM6NTUgZHBrZy1kZWIvbWFpbi5jOjU3IGRwa2ctc3BsaXQvbWFpbi5jOjUxCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6ODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgb3JcbiIKKyJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKK21zZ3N0ciAiIgorIlF1ZXN0byDDqCBzb2Z0d2FyZSBsaWJlcm87IGNvbnN1bHRhcmUgbGEgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgdmVyc2lvbmUgIgorIjJcbiIKKyJvIHN1Y2Nlc3NpdmEgcGVyIGxlIGNvbmRpemlvbmkgZGkgY29waWEuIE5PTiBjJ8OoIGFsY3VuYSBnYXJhbnppYS5cbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjg3IHNyYy9tYWluLmM6ODEgc3JjL3F1ZXJ5Y21kLmM6NjE1IHNyYy9zdGF0Y21kLmM6NzcKKyM6IGRwa2ctZGViL21haW4uYzo2OSBkcGtnLXNwbGl0L21haW4uYzo2MyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6OTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSA8Y29tbWFuZD5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIlVzbzogJXMgWzxvcHppb25lPiAuLi5dIDxjb21hbmRvPlxuIgorIlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6OTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgWy0tYWRkXSA8ZmlsZT4gICAgICAgICAgIGFkZCBhIGRpdmVyc2lvbi5cbiIKKyIgIC0tcmVtb3ZlIDxmaWxlPiAgICAgICAgICByZW1vdmUgdGhlIGRpdmVyc2lvbi5cbiIKKyIgIC0tbGlzdCBbPGdsb2ItcGF0dGVybj5dICBzaG93IGZpbGUgZGl2ZXJzaW9ucy5cbiIKKyIgIC0tbGlzdHBhY2thZ2UgPGZpbGU+ICAgICBzaG93IHdoYXQgcGFja2FnZSBkaXZlcnRzIHRoZSBmaWxlLlxuIgorIiAgLS10cnVlbmFtZSA8ZmlsZT4gICAgICAgIHJldHVybiB0aGUgZGl2ZXJ0ZWQgZmlsZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIkNvbWFuZGk6XG4iCisiICBbLS1hZGRdIDxmaWxlPiAgICAgICAgICAgQWdnaXVuZ2UgdW5hIGRldmlhemlvbmVcbiIKKyIgIC0tcmVtb3ZlIDxmaWxlPiAgICAgICAgICBSaW11b3ZlIGxhIGRldmlhemlvbmVcbiIKKyIgIC0tbGlzdCBbPGdsb2ItcGF0dGVybj5dICBNb3N0cmEgaWwgZmlsZSBkZWxsZSBkZXZpYXppb25pXG4iCisiICAtLWxpc3RwYWNrYWdlIDxmaWw+ICAgICAgTW9zdHJhIHF1YWxlIHBhY2NoZXR0byBkaXZlcmdlIGlsIGZpbGVcbiIKKyIgIC0tdHJ1ZW5hbWUgPGZpbGU+ICAgICAgICBSaXRvcm5hIGlsIGZpbGUgZGl2ZXJzaWZpY2F0b1xuIgorIlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MTAwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1wYWNrYWdlIDxwYWNrYWdlPiAgICAgIG5hbWUgb2YgdGhlIHBhY2thZ2Ugd2hvc2UgY29weSBvZiA8ZmlsZT4gd2lsbCAiCisibm90XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiZSBkaXZlcnRlZC5cbiIKKyIgIC0tbG9jYWwgICAgICAgICAgICAgICAgICBhbGwgcGFja2FnZXMnIHZlcnNpb25zIGFyZSBkaXZlcnRlZC5cbiIKKyIgIC0tZGl2ZXJ0IDxkaXZlcnQtdG8+ICAgICB0aGUgbmFtZSB1c2VkIGJ5IG90aGVyIHBhY2thZ2VzJyB2ZXJzaW9ucy5cbiIKKyIgIC0tcmVuYW1lICAgICAgICAgICAgICAgICBhY3R1YWxseSBtb3ZlIHRoZSBmaWxlIGFzaWRlIChvciBiYWNrKS5cbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICBzZXQgdGhlIGRpcmVjdG9yeSB3aXRoIHRoZSBkaXZlcnNpb25zIGZpbGUuXG4iCisiICAtLXRlc3QgICAgICAgICAgICAgICAgICAgZG9uJ3QgZG8gYW55dGhpbmcsIGp1c3QgZGVtb25zdHJhdGUuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgcXVpZXQgb3BlcmF0aW9uLCBtaW5pbWFsIG91dHB1dC5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCittc2dzdHIgIiIKKyJPcHppb25pOlxuIgorIiAgLS1wYWNrYWdlIDxwYWNjaGV0dG8+ICAgIE5vbWUgZGVsIHBhY2NoZXR0byBsYSBjdWkgY29waWEgZGkgPGZpbGU+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgbm9uIHZlcnLDoCBkaXZlcnNpZmljYXRhXG4iCisiICAtLWxvY2FsICAgICAgICAgICAgICAgICAgVHV0dGUgbGUgdmVyc2lvbmkgZGVpIHBhY2NoZXR0aSBzb25vICIKKyJkaXZlcnNpZmljYXRlXG4iCisiICAtLWRpdmVydCA8ZGV2aWF0by1hPiAgICAgSWwgbm9tZSB1c2F0byBkYWxsZSBhbHRyZSB2ZXJzaW9uaSBkZWkgcGFjY2hldHRpXG4iCisiICAtLXJlbmFtZSAgICAgICAgICAgICAgICAgU3Bvc3RhIGlsIGZpbGVcbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICBJbXBvc3RhIGxhIGRpcmVjdG9yeSBjb24gaWwgZmlsZSBkZWxsZSAiCisiZGV2aWF6aW9uaVxuIgorIiAgLS10ZXN0ICAgICAgICAgICAgICAgICAgIE5vbiBmYSBudWxsYSwgc29sYSBkaW1vc3RyYXppb25lXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgT3BlcmF6aW9uZSBzaWxlbnppb3NhLCBvdXRwdXQgbWluaW1vXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgTW9zdHJhIHF1ZXN0byBtZXNzYWdnaW8gZCdhaXV0b1xuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIE1vc3RyYSBsYSB2ZXJzaW9uZVxuIgorIlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJXaGVuIGFkZGluZywgZGVmYXVsdCBpcyAtLWxvY2FsIGFuZCAtLWRpdmVydCA8b3JpZ2luYWw+LmRpc3RyaWIuXG4iCisiV2hlbiByZW1vdmluZywgLS1wYWNrYWdlIG9yIC0tbG9jYWwgYW5kIC0tZGl2ZXJ0IG11c3QgbWF0Y2ggaWYgc3BlY2lmaWVkLlxuIgorIlBhY2thZ2UgcHJlaW5zdC9wb3N0cm0gc2NyaXB0cyBzaG91bGQgYWx3YXlzIHNwZWNpZnkgLS1wYWNrYWdlIGFuZCAtLSIKKyJkaXZlcnQuXG4iCittc2dzdHIgIiIKKyJEdXJhbnRlIGwnYWdnaXVudGEsIGwnb3B6aW9uZSBwcmVkZWZpbml0YSDDqCAtLWxvY2FsIGUgLS1kaXZlcnQgPG9yaWdpbmFsZT4uIgorImRpc3RyaWJ1emlvbmUuXG4iCisiRHVyYW50ZSBsYSByaW1vemlvbmUsIC0tcGFja2FnZSBvIC0tbG9jYWwgZSAtLWRpdmVydCBkZXZvbm8gY29ycmlzcG9uZGVyZSBzZSAiCisic3BlY2lmaWNhdGkuXG4iCisiR2xpIHNjcmlwdCBwcmVpbnN0L3Bvc3RybSBkb3ZyZWJiZXJvIHNlbXByZSBzcGVjaWZpY2FyZSAtLXBhY2thZ2UgZSAtLSIKKyJkaXZlcnQuXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoxNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2hlY2tpbmcgJyVzJyIKK21zZ3N0ciAiZXJyb3JlIG5lbCBjb250cm9sbGFyZSBcIiVzXCIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInJlbmFtZSBpbnZvbHZlcyBvdmVyd3JpdGluZyBgJXMnIHdpdGhcbiIKKyIgIGRpZmZlcmVudCBmaWxlIGAlcycsIG5vdCBhbGxvd2VkIgorbXNnc3RyICIiCisibGEgcmlub21pbmEgY29tcHJlbmRlIGlsIHNvcHJhc2NyaXZlcmUgXCIlc1wiIGNvblxuIgorIiAgIGlsIGZpbGUgXCIlc1wiLCBub24gY29uc2VudGl0byIKKworIzogc3JjL2RpdmVydGNtZC5jOjIyMyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTM3MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHdyaXRlIGZpbGUgJyVzJyIKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGZpbGUgJyVzJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgc2NyaXZlcmUgaWwgZmlsZSBcIiVzXCIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyMjcKK21zZ2lkICJmaWxlIGNvcHkiCittc2dzdHIgImNvcGlhIGZpbGUiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyMzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlbmFtZSAnJXMnIHRvICclcyciCittc2dzdHIgImltcG9zc2liaWxlIHJpbm9taW5hcmUgXCIlc1wiIGluIFwiJXNcIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjI1MgorIywgYy1mb3JtYXQKK21zZ2lkICJyZW5hbWU6IHJlbW92ZSBkdXBsaWNhdGUgb2xkIGxpbmsgJyVzJyIKK21zZ3N0ciAicmVuYW1lOiByaW1vemlvbmUgdmVjY2hpbyBjb2xsZWdhbWVudG8gZHVwbGljYXRvIFwiJXNcIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjI2MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIG9wZW4gc291cmNlIGZpbGUgYCUuMjUwcyciCittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBjb3BpZWQgc291cmNlIGZpbGUgJyVzJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgYXByaXJlIGlsIGZpbGUgc29yZ2VudGUgXCIlLjI1MHNcIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjI4NAorIywgYy1mb3JtYXQKK21zZ2lkICJsb2NhbCBkaXZlcnNpb24gb2YgJXMiCittc2dzdHIgImRldmlhemlvbmUgbG9jYWxlIGRpICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mjg2CisjLCBjLWZvcm1hdAorbXNnaWQgImxvY2FsIGRpdmVyc2lvbiBvZiAlcyB0byAlcyIKK21zZ3N0ciAiZGV2aWF6aW9uZSBsb2NhbGUgZGkgJXMgaW4gJXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJzaW9uIG9mICVzIGJ5ICVzIgorbXNnc3RyICJkZXZpYXppb25lIGRpICVzIGRhICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjkzCisjLCBjLWZvcm1hdAorbXNnaWQgImRpdmVyc2lvbiBvZiAlcyB0byAlcyBieSAlcyIKK21zZ3N0ciAiZGV2aWF6aW9uZSBkaSAlcyBpbiAlcyBkYSAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjMwOQorIywgYy1mb3JtYXQKK21zZ2lkICJhbnkgZGl2ZXJzaW9uIG9mICVzIgorbXNnc3RyICJxdWFsc2lhc2kgZGV2aWF6aW9uZSBkaSAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjMxMQorIywgYy1mb3JtYXQKK21zZ2lkICJhbnkgZGl2ZXJzaW9uIG9mICVzIHRvICVzIgorbXNnc3RyICJxdWFsc2lhc2kgZGV2aWF6aW9uZSBkaSAlcyBpbiAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjM1NworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgY3JlYXRlIG5ldyAlcyBmaWxlIgorbXNnc3RyICJpbXBvc3NpYmlsZSBjcmVhcmUgaWwgbnVvdm8gZmlsZSAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjM3NSBzcmMvc3RhdGNtZC5jOjIxNSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTQwNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggZmlsZSAnJXMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSBlc2VndWlyZSBpbCBmbHVzaCBkZWwgZmlsZSBcIiVzXCIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozODIKK21zZ2lkICJlcnJvciByZW1vdmluZyBvbGQgZGl2ZXJzaW9ucy1vbGQiCittc2dzdHIgImVycm9yZSBuZWwgcmltdW92ZXJlIGlsIHZlY2NoaW8gZGl2ZXJzaW9ucy1vbGQiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozODQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBuZXcgZGl2ZXJzaW9ucy1vbGQiCittc2dzdHIgImVycm9yZSBuZWwgY3JlYXJlIGlsIG51b3ZvIGRpdmVyc2lvbnMtb2xkIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mzg2Cittc2dpZCAiZXJyb3IgaW5zdGFsbGluZyBuZXcgZGl2ZXJzaW9ucyIKK21zZ3N0ciAiZXJyb3JlIG5lbGwnaW5zdGFsbGFyZSBpbCBudW92byBkaXZlcnNpb25zIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDA2IHNyYy9kaXZlcnRjbWQuYzo1MDMgc3JjL2RpdmVydGNtZC5jOjYxMAorIzogc3JjL2RpdmVydGNtZC5jOjYzMCBzcmMvc3RhdGNtZC5jOjI5MAorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGEgc2luZ2xlIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIHJpY2hpZWRlIHVuIHNvbG8gYXJnb21lbnRvIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDA5IHNyYy9kaXZlcnRjbWQuYzo0MzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZW5hbWUgXCIlc1wiIGlzIG5vdCBhYnNvbHV0ZSIKK21zZ3N0ciAiaWwgbm9tZSBkaSBmaWxlIFwiJXNcIiBub24gw6ggYXNzb2x1dG8iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MTEgc3JjL3N0YXRjbWQuYzoyNDkKK21zZ2lkICJmaWxlIG1heSBub3QgY29udGFpbiBuZXdsaW5lcyIKK21zZ3N0ciAiaWwgZmlsZSBub24gZG92cmViYmUgY29udGVuZXJlIG5ld2xpbmUiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MTgKK21zZ2lkICJDYW5ub3QgZGl2ZXJ0IGRpcmVjdG9yaWVzIgorbXNnc3RyICJJbXBvc3NpYmlsZSBkaXZlcmdlcmUgbGUgZGlyZWN0b3J5IgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDMzCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBkaXZlcnQgZmlsZSAnJXMnIHRvIGl0c2VsZiIKK21zZ3N0ciAiSW1wb3NzaWJpbGUgZGl2ZXJnZXJlIGlsIGZpbGUgXCIlc1wiIGEgc2Ugc3Rlc3NvIgorCisjIChuZHQpIG5vbiBtaSBjb252aW5jZS4uLgorIzogc3JjL2RpdmVydGNtZC5jOjQ1MworIywgYy1mb3JtYXQKK21zZ2lkICJMZWF2aW5nICclcydcbiIKK21zZ3N0ciAiVmllbmUgbGFzY2lhdG8gXCIlc1wiXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBjbGFzaGVzIHdpdGggYCVzJyIKK21zZ3N0ciAiXCIlc1wiIMOoIGRpc2NvcmRhbnRlIGRhIFwiJXNcIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjQ4MQorIywgYy1mb3JtYXQKK21zZ2lkICJBZGRpbmcgJyVzJ1xuIgorbXNnc3RyICJWaWVuZSBhZ2dpdW50byBcIiVzXCJcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjUxMAorIywgYy1mb3JtYXQKK21zZ2lkICJObyBkaXZlcnNpb24gJyVzJywgbm9uZSByZW1vdmVkLlxuIgorbXNnc3RyICJOZXNzdW5hIGRldmlhemlvbmUgXCIlc1wiLCBuZXNzdW5hIHJpbW9zc2EuXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm1pc21hdGNoIG9uIGRpdmVydC10b1xuIgorIiAgd2hlbiByZW1vdmluZyBgJXMnXG4iCisiICBmb3VuZCBgJXMnIgorbXNnc3RyICIiCisiY29ycmlzcG9uZGVuemEgZXJyYXRhIHN1IGRpdmVydC10b1xuIgorIiAgbmVsIHJpbXVvdmVyZSBcIiVzXCJcbiIKKyIgIHRyb3ZhdG8gXCIlc1wiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJtaXNtYXRjaCBvbiBwYWNrYWdlXG4iCisiICB3aGVuIHJlbW92aW5nIGAlcydcbiIKKyIgIGZvdW5kIGAlcyciCittc2dzdHIgIiIKKyJjb3JyaXNwb25kZW56YSBlcnJhdGEgc3VsIHBhY2NoZXR0b1xuIgorIiAgbmVsIHJpbXVvdmVyZSBcIiVzXCJcbiIKKyIgIHRyb3ZhdG8gXCIlc1wiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTM5CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlbW92aW5nICclcydcbiIKK21zZ3N0ciAiUmltb3ppb25lIGRpIFwiJXNcIlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjU3Cittc2dpZCAicGFja2FnZSBtYXkgbm90IGNvbnRhaW4gbmV3bGluZXMiCittc2dzdHIgInBhY2NoZXR0byBub24gZG92cmViYmUgY29udGVuZXJlIG5ld2xpbmUiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo2NjYKK21zZ2lkICJkaXZlcnQtdG8gbWF5IG5vdCBjb250YWluIG5ld2xpbmVzIgorbXNnc3RyICJkaXZlcnQtdG8gbm9uIGRvdnJlYmJlIGNvbnRlbmVyZSBuZXdsaW5lIgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzo2NAorbXNnaWQgImZhaWxlZCB0byBvcGVuIGRpdmVyc2lvbnMgZmlsZSIKK21zZ3N0ciAiYXBlcnR1cmEgZGVsIGZpbGUgY29uIGxlIGRldmlhemlvbmkgbm9uIHJpdXNjaXRhIgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzo3MQorbXNnaWQgImZhaWxlZCB0byBmc3RhdCBwcmV2aW91cyBkaXZlcnNpb25zIGZpbGUiCittc2dzdHIgImVzZWN1emlvbmUgZGkgZnN0YXQgc3VsIHByZWNlZGVudGUgZmlsZSBjb24gbGUgZGV2aWF6aW9uaSBub24gcml1c2NpdGEiCisKKyM6IHNyYy9kaXZlcnRkYi5jOjczCittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGRpdmVyc2lvbnMgZmlsZSIKK21zZ3N0ciAiZXNlY3V6aW9uZSBkaSBmc3RhdCBzdWwgZmlsZSBjb24gbGUgZGV2aWF6aW9uaSBub24gcml1c2NpdGEiCisKKyM6IHNyYy9kaXZlcnRkYi5jOjExMworIywgYy1mb3JtYXQKK21zZ2lkICJjb25mbGljdGluZyBkaXZlcnNpb25zIGludm9sdmluZyBgJS4yNTBzJyBvciBgJS4yNTBzJyIKK21zZ3N0ciAiY29uZmxpdHRpIGNvbiBsZSBkZXZpYXppb25pIHJlbGF0aXZlIGEgXCIlLjI1MHNcIiBvIFwiJS4yNTBzXCIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6NzMKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgaW4gYSBtZXNzIGR1ZSB0byBzZXJpb3VzIHByb2JsZW1zIGR1cmluZ1xuIgorImluc3RhbGxhdGlvbi4gIFRoZXkgbXVzdCBiZSByZWluc3RhbGxlZCBmb3IgdGhlbSAoYW5kIGFueSBwYWNrYWdlc1xuIgorInRoYXQgZGVwZW5kIG9uIHRoZW0pIHRvIGZ1bmN0aW9uIHByb3Blcmx5OlxuIgorbXNnc3RyICIiCisiSSBzZWd1ZW50aSBwYWNjaGV0dGkgcHJlc2VudGFubyBkZWdsaSBlcnJvcmkgYSBjYXVzYSBkaSBncmF2aSBwcm9ibGVtaSAiCisiZHVyYW50ZVxuIgorImwnaW5zdGFsbGF6aW9uZS4gw4ggbmVjZXNzYXJpbyByZWluc3RhbGxhcmxpLCBhc3NpZW1lIGEgcXVhbHNpYXNpIHBhY2NoZXR0byAiCisiY2hlXG4iCisidmkgZGlwZW5kYSwgYWZmaW5jaMOpIGZ1bnppb25pbm8gY29ycmV0dGFtZW50ZTpcbiIKKworIzogc3JjL2VucXVpcnkuYzo4MAorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGhhdmUgYmVlbiB1bnBhY2tlZCBidXQgbm90IHlldCBjb25maWd1cmVkLlxuIgorIlRoZXkgbXVzdCBiZSBjb25maWd1cmVkIHVzaW5nIGRwa2cgLS1jb25maWd1cmUgb3IgdGhlIGNvbmZpZ3VyZVxuIgorIm1lbnUgb3B0aW9uIGluIGRzZWxlY3QgZm9yIHRoZW0gdG8gd29yazpcbiIKK21zZ3N0ciAiIgorIkkgc2VndWVudGkgcGFjY2hldHRpIHNvbm8gc3RhdGkgZXN0cmF0dGksIG1hIG5vbiBhbmNvcmEgY29uZmlndXJhdGkuXG4iCisiw4ggbmVjZXNzYXJpbyBjb25maWd1cmFybGkgdXNhbmRvIFwiZHBrZyAtLWNvbmZpZ3VyZVwiIG8gbCdvcHppb25lIGRpXG4iCisiY29uZmlndXJhemlvbmUgbmVsIG1lbsO5IGRpIGRzZWxlY3QgYWZmaW5jaMOpIGZ1bnppb25pbm86XG4iCisKKyMgKG5kdCkgc2VtcGxpZmljYXRlLCBxdWVzdGEgZSBsZSBhbHRyZSBkdWUKKyM6IHNyYy9lbnF1aXJ5LmM6ODcKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgb25seSBoYWxmIGNvbmZpZ3VyZWQsIHByb2JhYmx5IGR1ZSB0byBwcm9ibGVtc1xuIgorImNvbmZpZ3VyaW5nIHRoZW0gdGhlIGZpcnN0IHRpbWUuICBUaGUgY29uZmlndXJhdGlvbiBzaG91bGQgYmUgcmV0cmllZCB1c2luZ1xuIgorImRwa2cgLS1jb25maWd1cmUgPHBhY2thZ2U+IG9yIHRoZSBjb25maWd1cmUgbWVudSBvcHRpb24gaW4gZHNlbGVjdDpcbiIKK21zZ3N0ciAiIgorIkkgc2VndWVudGkgcGFjY2hldHRpIHJpc3VsdGFubyBwYXJ6aWFsbWVudGUgY29uZmlndXJhdGkuIExhIGNvbmZpZ3VyYXppb25lXG4iCisiZG92cmViYmUgZXNzZXJlIHJpdGVudGF0YSB1c2FuZG8gXCJkcGtnIC0tY29uZmlndXJlIDxwYWNjaGV0dG8+XCIgbyBjb25cbiIKKyJsJ29wemlvbmUgZGkgY29uZmlndXJhemlvbmUgbmVsIG1lbsO5IGRpIGRzZWxlY3Q6XG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6OTQKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgb25seSBoYWxmIGluc3RhbGxlZCwgZHVlIHRvIHByb2JsZW1zIGR1cmluZ1xuIgorImluc3RhbGxhdGlvbi4gIFRoZSBpbnN0YWxsYXRpb24gY2FuIHByb2JhYmx5IGJlIGNvbXBsZXRlZCBieSByZXRyeWluZyBpdDtcbiIKKyJ0aGUgcGFja2FnZXMgY2FuIGJlIHJlbW92ZWQgdXNpbmcgZHNlbGVjdCBvciBkcGtnIC0tcmVtb3ZlOlxuIgorbXNnc3RyICIiCisiSSBzZWd1ZW50aSBwYWNjaGV0dGkgcmlzdWx0YW5vIHBhcnppYWxtZW50ZSBpbnN0YWxsYXRpLiBMJ2luc3RhbGxhemlvbmVcbiIKKyJwdcOyIHByb2JhYmlsbWVudGUgZXNzZXJlIGNvbXBsZXRhdGEgcml0ZW50YW5kb2xhOyBpIHBhY2NoZXR0aSBwb3Nzb25vXG4iCisiZXNzZXJlIHJpbW9zc2kgdXNhbmRvIFwiZHNlbGVjdFwiIG8gXCJkcGtnIC0tcmVtb3ZlXCI6XG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTAxCittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgYXJlIGF3YWl0aW5nIHByb2Nlc3Npbmcgb2YgdHJpZ2dlcnMgdGhhdCB0aGV5XG4iCisiaGF2ZSBhY3RpdmF0ZWQgaW4gb3RoZXIgcGFja2FnZXMuICBUaGlzIHByb2Nlc3NpbmcgY2FuIGJlIHJlcXVlc3RlZCB1c2luZ1xuIgorImRzZWxlY3Qgb3IgZHBrZyAtLWNvbmZpZ3VyZSAtLXBlbmRpbmcgKG9yIGRwa2cgLS10cmlnZ2Vycy1vbmx5KTpcbiIKK21zZ3N0ciAiIgorIkkgc2VndWVudGkgcGFjY2hldHRpIHNvbm8gaW4gYXR0ZXNhIGRlbGwnZWxhYm9yYXppb25lIGRlaSB0cmlnZ2VyIGNoZSBoYW5ub1xuIgorImF0dGl2YXRvIGluIGFsdHJpIHBhY2NoZXR0aS4gTCdlbGFib3JhemlvbmUgcHXDsiBlc3NlcmUgYXZ2aWF0YSB1dGlsaXp6YW5kb1xuIgorIlwiZHNlbGVjdFwiIG8gXCJkcGtnIC0tY29uZmlndXJlIC0tcGVuZGluZ1wiIChvcHB1cmUgXCJkcGtnIC0tdHJpZ2dlcnMtb25seSIKKyJcIik6XG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTA4Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgaGF2ZSBiZWVuIHRyaWdnZXJlZCwgYnV0IHRoZSB0cmlnZ2VyIHByb2Nlc3NpbmdcbiIKKyJoYXMgbm90IHlldCBiZWVuIGRvbmUuICBUcmlnZ2VyIHByb2Nlc3NpbmcgY2FuIGJlIHJlcXVlc3RlZCB1c2luZ1xuIgorImRzZWxlY3Qgb3IgZHBrZyAtLWNvbmZpZ3VyZSAtLXBlbmRpbmcgKG9yIGRwa2cgLS10cmlnZ2Vycy1vbmx5KTpcbiIKK21zZ3N0ciAiIgorIkkgc2VndWVudGkgcGFjY2hldHRpIHJpc3VsdGFubyBuZWxsbyBzdGF0byBcInRyaWdnZXJlZFwiLCBtYSBsJ2VsYWJvcmF6aW9uZVxuIgorImRlaSB0cmlnZ2VyIG5vbiBzaSDDqCB2ZXJpZmljYXRhLiDDiCBwb3NzaWJpbGUgYXR0aXZhcmxhIHV0aWxpenphbmRvIFwiZHNlbGVjdCIKKyJcIlxuIgorIm8gXCJkcGtnIC0tY29uZmlndXJlIC0tcGVuZGluZ1wiIChvcHB1cmUgXCJkcGtnIC0tdHJpZ2dlcnMtb25seVwiKTpcbiIKKworIzogc3JjL2VucXVpcnkuYzoxMzcgc3JjL2VucXVpcnkuYzoyMTEgc3JjL2VucXVpcnkuYzoyOTIgc3JjL2VucXVpcnkuYzozNzMKKyM6IHNyYy9lbnF1aXJ5LmM6NDYwIHNyYy9zZWxlY3QuYzo5OCBzcmMvc2VsZWN0LmM6MTY0IHNyYy90cmlnY21kLmM6MTk5CisjOiBzcmMvdXBkYXRlLmM6NDggc3JjL3VwZGF0ZS5jOjExMyBkcGtnLXNwbGl0L3F1ZXVlLmM6MjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgbm8gYXJndW1lbnRzIgorbXNnc3RyICItLSVzIG5vbiBhY2NldHRhIGFsY3VuIGFyZ29tZW50byIKKworIzogc3JjL2VucXVpcnkuYzoxNTIKK21zZ2lkICIiCisiQW5vdGhlciBwcm9jZXNzIGhhcyBsb2NrZWQgdGhlIGRhdGFiYXNlIGZvciB3cml0aW5nLCBhbmQgbWlnaHQgY3VycmVudGx5IGJlXG4iCisibW9kaWZ5aW5nIGl0LCBzb21lIG9mIHRoZSBmb2xsb3dpbmcgcHJvYmxlbXMgbWlnaHQganVzdCBiZSBkdWUgdG8gdGhhdC5cbiIKK21zZ3N0ciAiIgorIlVuIGFsdHJvIHByb2Nlc3NvIGhhIGJsb2NjYXRvIGlsIGRhdGFiYXNlIGluIHNjcml0dHVyYSBlIHBvdHJlYmJlICIKKyJtb2RpZmljYXJsby5cbiIKKyJBbGN1bmkgZGVpIHNlZ3VlbnRpIHByb2JsZW1pIHBvdHJlYmJlcm8gZXNzZXJlIGNhdXNhdGkgZGEgY2nDsi5cbiIKKworIzogc3JjL2VucXVpcnkuYzoxOTEKKyMsIGZ1enp5CisjfCBtc2dpZCAiPHVua25vd24+IgorbXNnY3R4dCAic2VjdGlvbiIKK21zZ2lkICI8dW5rbm93bj4iCittc2dzdHIgIjxzY29ub3NjaXV0YT4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MjUxCisjLCBjLWZvcm1hdAorbXNnaWQgIiAlZCBpbiAlczogIgorbXNnc3RyICIgJWQgaW4gJXM6ICIKKworIzogc3JjL2VucXVpcnkuYzoyNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiICVkIHBhY2thZ2UsIGZyb20gdGhlIGZvbGxvd2luZyBzZWN0aW9uOiIKK21zZ2lkX3BsdXJhbCAiICVkIHBhY2thZ2VzLCBmcm9tIHRoZSBmb2xsb3dpbmcgc2VjdGlvbnM6IgorbXNnc3RyWzBdICIgJWQgcGFjY2hldHRvLCBkYWxsZSBzZWd1ZW50aSBzZXppb25pOiIKK21zZ3N0clsxXSAiICVkIHBhY2NoZXR0aSwgZGFsbGUgc2VndWVudGkgc2V6aW9uaToiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzA1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJWZXJzaW9uIG9mIGRwa2cgd2l0aCB3b3JraW5nICVzIHN1cHBvcnQgbm90IHlldCBjb25maWd1cmVkLlxuIgorIiBQbGVhc2UgdXNlICdkcGtnIC0tY29uZmlndXJlIGRwa2cnLCBhbmQgdGhlbiB0cnkgYWdhaW4uXG4iCittc2dzdHIgIiIKKyJMYSB2ZXJzaW9uZSBkaSBkcGtnIGNvbiBzdXBwb3J0byAlcyBmdW56aW9uYW50ZSBub24gw6ggYW5jb3JhIGNvbmZpZ3VyYXRhLlxuIgorIiBVc2FyZSBcImRwa2cgLS1jb25maWd1cmUgZHBrZ1wiIGUgcHJvdmFyZSBudW92YW1lbnRlLlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjMxMAorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnIG5vdCByZWNvcmRlZCBhcyBpbnN0YWxsZWQsIGNhbm5vdCBjaGVjayBmb3IgJXMgc3VwcG9ydCFcbiIKK21zZ3N0ciAiIgorImRwa2cgbm9uIMOoIHN0YXRvIHJlZ2lzdHJhdG8gY29tZSBpbnN0YWxsYXRvLCBpbXBvc3NpYmlsZSBjb250cm9sbGFyZSBpbCAiCisic3VwcG9ydG8gcGVyICVzLlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjMyMQorbXNnaWQgIlByZS1EZXBlbmRzIGZpZWxkIgorbXNnc3RyICJDYW1wbyBwcmUtZGlwZW5kZSIKKworIzogc3JjL2VucXVpcnkuYzozMjkKK21zZ2lkICJlcG9jaCIKK21zZ3N0ciAiZXBvY2giCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzM3Cittc2dpZCAibG9uZyBmaWxlbmFtZXMiCittc2dzdHIgIm5vbWkgZGkgZmlsZSBsdW5naGkiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzQ2Cittc2dpZCAibXVsdGlwbGUgQ29uZmxpY3RzIGFuZCBSZXBsYWNlcyIKK21zZ3N0ciAiQ29uZmxpY3RzIGUgUmVwbGFjZXMgbXVsdGlwbGkiCisKKyMgKG5kdCkgw6ggdW4gcG8nIGxpYmVyYSBlIGRpdmVyc2EgZGEgcXVlbGxhIGRvcG8KKyMgb3BwdXJlOgorIyBpbXBvc3NpYmlsZSB2ZXJpZmljYXJlIGlsIHNvZGRpc2ZhY2ltZW50byBkZWxsZS4uLgorIzogc3JjL2VucXVpcnkuYzo0MzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IGNhbm5vdCBzZWUgaG93IHRvIHNhdGlzZnkgcHJlLWRlcGVuZGVuY3k6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKyJkcGtnOiBpbXBvc3NpYmlsZSB2ZXJpZmljYXJlIGkgcmVxdWlzaXRpIGRlbGxlIHByZS1kaXBlbmRlbnplOlxuIgorIiAlc1xuIgorCisjOiBzcmMvZW5xdWlyeS5jOjQzNQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc2F0aXNmeSBwcmUtZGVwZW5kZW5jaWVzIGZvciAlLjI1MHMgKHdhbnRlZCBkdWUgdG8gJS4yNTBzKSIKK21zZ3N0ciAiIgorImltcG9zc2liaWxlIHNvZGRpc2ZhcmUgbGUgcHJlLWRpcGVuZGVuemUgcGVyICUuMjUwcyAocmljaGllc3RvIGRhICUuMjUwcykiCisKKyM6IHNyYy9lbnF1aXJ5LmM6NDcyCisjLCBjLWZvcm1hdAorbXNnaWQgIm9ic29sZXRlIG9wdGlvbiAnLS0lcycsIHBsZWFzZSB1c2UgJy0tJXMnIGluc3RlYWQuIgorbXNnc3RyICJvcHppb25lIFwiLS0lc1wiIG9ic29sZXRhLCB1c2FyZSBcIi0tJXNcIiBhbCBzdW8gcG9zdG8uIgorCisjOiBzcmMvZW5xdWlyeS5jOjUxOQorbXNnaWQgIiIKKyItLWNvbXBhcmUtdmVyc2lvbnMgdGFrZXMgdGhyZWUgYXJndW1lbnRzOiA8dmVyc2lvbj4gPHJlbGF0aW9uPiA8dmVyc2lvbj4iCittc2dzdHIgIiIKKyItLWNvbXBhcmUtdmVyc2lvbnMgcmljaGllZGUgdHJlIGFyZ29tZW50aTogPHZlcnNpb25lPiA8cmVsYXppb25lPiA8dmVyc2lvbmU+IgorCisjOiBzcmMvZW5xdWlyeS5jOjUyNAorbXNnaWQgIi0tY29tcGFyZS12ZXJzaW9ucyBiYWQgcmVsYXRpb24iCittc2dzdHIgIi0tY29tcGFyZS12ZXJzaW9ucyByZWxhemlvbmUgZXJyYXRhIgorCisjOiBzcmMvZW5xdWlyeS5jOjUyOSBzcmMvZW5xdWlyeS5jOjUzMSBzcmMvZW5xdWlyeS5jOjU0MCBzcmMvZW5xdWlyeS5jOjU0MgorIywgYy1mb3JtYXQKK21zZ2lkICJ2ZXJzaW9uICclcycgaGFzIGJhZCBzeW50YXg6ICVzIgorbXNnc3RyICJzaW50YXNzaSBkZWxsYSB2ZXJzaW9uZSBcIiVzXCIgZXJyYXRhOiAlcyIKKworIzogc3JjL2Vycm9ycy5jOjYwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogZXJyb3IgcHJvY2Vzc2luZyAlcyAoLS0lcyk6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKyIlczogZXJyb3JlIG5lbGwnZWxhYm9yYXJlICVzICgtLSVzKTpcbiIKKyIgJXNcbiIKKworIzogc3JjL2Vycm9ycy5jOjY4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiZHBrZzogZmFpbGVkIHRvIGFsbG9jYXRlIG1lbW9yeSBmb3IgbmV3IGVudHJ5IGluIGxpc3Qgb2YgZmFpbGVkIHBhY2thZ2VzLiIKK21zZ2lkICIiCisiJXM6IGZhaWxlZCB0byBhbGxvY2F0ZSBtZW1vcnkgZm9yIG5ldyBlbnRyeSBpbiBsaXN0IG9mIGZhaWxlZCBwYWNrYWdlczogJXMiCittc2dzdHIgIiIKKyJkcGtnOiBpbXBvc3NpYmlsZSBhbGxvY2FyZSBtZW1vcmlhIHBlciB1biBudW92byBlbGVtZW50byBuZWxsYSBsaXN0YSBkZWkgIgorInBhY2NoZXR0aSBpbiBlcnJvcmUuIgorCisjOiBzcmMvZXJyb3JzLmM6NzkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImRwa2c6IHRvbyBtYW55IGVycm9ycywgc3RvcHBpbmdcbiIKK21zZ2lkICIlczogdG9vIG1hbnkgZXJyb3JzLCBzdG9wcGluZ1xuIgorbXNnc3RyICJkcGtnOiB0cm9wcGkgZXJyb3JpLCBjaGl1c3VyYSBpbiBjb3Jzb1xuIgorCisjOiBzcmMvZXJyb3JzLmM6ODcKK21zZ2lkICJFcnJvcnMgd2VyZSBlbmNvdW50ZXJlZCB3aGlsZSBwcm9jZXNzaW5nOlxuIgorbXNnc3RyICJTaSBzb25vIHZlcmlmaWNhdGkgZGVnbGkgZXJyb3JpIG5lbGwnZWxhYm9yYXppb25lOlxuIgorCisjOiBzcmMvZXJyb3JzLmM6OTQKK21zZ2lkICJQcm9jZXNzaW5nIHdhcyBoYWx0ZWQgYmVjYXVzZSB0aGVyZSB3ZXJlIHRvbyBtYW55IGVycm9ycy5cbiIKK21zZ3N0ciAiIgorIkwnb3BlcmF6aW9uZSDDqCBzdGF0YSBibG9jY2F0YSBwZXJjaMOpIHNpIHNvbm8gdmVyaWZpY2F0aSB0cm9wcGkgZXJyb3JpLlxuIgorCisjOiBzcmMvZXJyb3JzLmM6MTA1CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgJXMgd2FzIG9uIGhvbGQsIHByb2Nlc3NpbmcgaXQgYW55d2F5IGFzIHlvdSByZXF1ZXN0ZWRcbiIKK21zZ3N0ciAiSWwgcGFjY2hldHRvICVzIGVyYSBibG9jY2F0bywgdmllbmUgZWxhYm9yYXRvIGNvbXVucXVlXG4iCisKKyM6IHNyYy9lcnJvcnMuYzoxMDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlBhY2thZ2UgJXMgaXMgb24gaG9sZCwgbm90IHRvdWNoaW5nIGl0LiAgVXNlIC0tZm9yY2UtaG9sZCB0byBvdmVycmlkZS5cbiIKK21zZ3N0ciAiIgorIklsIHBhY2NoZXR0byAlcyDDqCBibG9jY2F0bywgbm9uIHZpZW5lIGNvbnNpZGVyYXRvLiBVc2FyZSAtLWZvcmNlLWhvbGQgcGVyICIKKyJzb3ZyYXNjcml2ZXJlLlxuIgorCisjOiBzcmMvZXJyb3JzLmM6MTE5Cittc2dpZCAib3ZlcnJpZGluZyBwcm9ibGVtIGJlY2F1c2UgLS1mb3JjZSBlbmFibGVkOiIKK21zZ3N0ciAidmllbmUgaWdub3JhdG8gaWwgcHJvYmxlbWEgcG9pY2jDqSDDqCB1c2F0YSBsJ29wemlvbmUgLS1mb3JjZToiCisKKyM6IHNyYy9maWxlc2RiLmM6MzA3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorImltcG9zc2liaWxlIGFwcmlyZSBpbCBmaWxlIGNvbiBsJ2VsZW5jbyBkZWkgZmlsZSBkZWwgcGFjY2hldHRvIFwiJS4yNTBzXCIiCisKKyM6IHNyYy9maWxlc2RiLmM6MzExCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcycgbWlzc2luZywgYXNzdW1pbmcgcGFja2FnZSBoYXMgbm8gZmlsZXMgIgorImN1cnJlbnRseSBpbnN0YWxsZWQuIgorbXNnc3RyICIiCisiZmlsZSBjb24gbCdlbGVuY28gZGVpIGZpbGUgZGVsIHBhY2NoZXR0byBcIiUuMjUwc1wiIG1hbmNhbnRlLCBpbCBwYWNjaGV0dG8gIgorInZpZW5lIGNvbnNpZGVyYXRvIHNlbnphIGFsY3VuIGZpbGUgYXR0dWFsbWVudGUgaW5zdGFsbGF0by4iCisKKyM6IHNyYy9maWxlc2RiLmM6MzIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAnJS4yNTBzJyIKK21zZ3N0ciAiIgorImltcG9zc2liaWxlIGVzZWd1aXJlIHN0YXQgc3VsIGZpbGUgY29uIGwnZWxlbmNvIGRlaSBmaWxlIGRlbCBwYWNjaGV0dG8gIgorIlwiJS4yNTBzXCIiCisKKyM6IHNyYy9maWxlc2RiLmM6MzMwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlcyBsaXN0IGZvciBwYWNrYWdlIGAlLjI1MHMnIgorbXNnaWQgInJlYWRpbmcgZmlsZXMgbGlzdCBmb3IgcGFja2FnZSAnJS4yNTBzJyIKK21zZ3N0ciAiZWxlbmNvIGRlaSBmaWxlIGRlbCBwYWNjaGV0dG8gXCIlLjI1MHNcIiIKKworIzogc3JjL2ZpbGVzZGIuYzozMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICclLjI1MHMnIGlzIG1pc3NpbmcgZmluYWwgbmV3bGluZSIKK21zZ3N0ciAiIgorImFsIGZpbGUgY29uIGwnZWxlbmNvIGRlaSBmaWxlIGRlbCBwYWNjaGV0dG8gXCIlLjI1MHNcIiBtYW5jYSB1biBuZXdsaW5lICIKKyJmaW5hbGUiCisKKyM6IHNyYy9maWxlc2RiLmM6MzQ0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSBgJS4yNTBzJyBjb250YWlucyBlbXB0eSBmaWxlbmFtZSIKK21zZ3N0ciAiIgorImlsIGZpbGUgY29uIGwnZWxlbmNvIGRlaSBmaWxlIGRlbCBwYWNjaGV0dG8gXCIlLjI1MHNcIiBjb250aWVuZSB1biBub21lIGZpbGUgIgorInZ1b3RvIgorCisjOiBzcmMvZmlsZXNkYi5jOjM1MgorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorImVycm9yZSBuZWwgY2hpdWRlcmUgaWwgZmlsZSBjb24gbCdlbGVuY28gZGVpIGZpbGUgZGVsIHBhY2NoZXR0byBcIiUuMjUwc1wiIgorCisjOiBzcmMvZmlsZXNkYi5jOjQ2MgorbXNnaWQgIihSZWFkaW5nIGRhdGFiYXNlIC4uLiAiCittc2dzdHIgIihMZXR0dXJhIGRlbCBkYXRhYmFzZS4uLiAiCisKKyM6IHNyYy9maWxlc2RiLmM6NDgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiVkIGZpbGUgb3IgZGlyZWN0b3J5IGN1cnJlbnRseSBpbnN0YWxsZWQuKVxuIgorbXNnaWRfcGx1cmFsICIlZCBmaWxlcyBhbmQgZGlyZWN0b3JpZXMgY3VycmVudGx5IGluc3RhbGxlZC4pXG4iCittc2dzdHJbMF0gIiVkIGZpbGUgbyBkaXJlY3RvcnkgYXR0dWFsbWVudGUgaW5zdGFsbGF0by4pXG4iCittc2dzdHJbMV0gIiVkIGZpbGUgZSBkaXJlY3RvcnkgYXR0dWFsbWVudGUgaW5zdGFsbGF0aS4pXG4iCisKKyM6IHNyYy9maWxlc2RiLmM6NTE2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIiIKKyJpbXBvc3NpYmlsZSBjcmVhcmUgaWwgZmlsZSBhZ2dpb3JuYXRvIGNvbiBsJ2VsZW5jbyBkZWkgZmlsZSBkZWwgcGFjY2hldHRvICVzIgorCisjOiBzcmMvZmlsZXNkYi5jOjUyNgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgdG8gdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIiIKKyJzY3JpdHR1cmEgZGVsIGZpbGUgYWdnaW9ybmF0byBjb24gbCdlbGVuY28gZGVpIGZpbGUgZGVsIHBhY2NoZXR0byAlcyBub24gIgorInJpdXNjaXRhIgorCisjOiBzcmMvZmlsZXNkYi5jOjUyOAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZmx1c2ggdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIiIKKyJlc2VjdXppb25lIGRlbCBmbHVzaCBkZWwgZmlsZSBhZ2dpb3JuYXRvIGNvbiBsJ2VsZW5jbyBkZWkgZmlsZSBkZWwgcGFjY2hldHRvICIKKyIlcyBub24gcml1c2NpdGEiCisKKyM6IHNyYy9maWxlc2RiLmM6NTMwCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBzeW5jIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICIiCisic2luY3Jvbml6emF6aW9uZSBkZWwgZmlsZSBhZ2dpb3JuYXRvIGNvbiBsJ2VsZW5jbyBkZWkgZmlsZSBkZWwgcGFjY2hldHRvICVzICIKKyJub24gcml1c2NpdGEiCisKKyM6IHNyYy9maWxlc2RiLmM6NTMzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjbG9zZSB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAiIgorImNoaXVzdXJhIGRlbCBmaWxlIGFnZ2lvcm5hdG8gY29uIGwnZWxlbmNvIGRlaSBmaWxlIGRlbCBwYWNjaGV0dG8gJXMgbm9uICIKKyJyaXVzY2l0YSIKKworIzogc3JjL2ZpbGVzZGIuYzo1MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGluc3RhbGwgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIiIKKyJpbnN0YWxsYXppb25lIGRlbCBmaWxlIGFnZ2lvcm5hdG8gY29uIGwnZWxlbmNvIGRlaSBmaWxlIGRlbCBwYWNjaGV0dG8gJXMgbm9uICIKKyJyaXVzY2l0YSIKKworIyAobmR0KSBzdGF0dXNzdHJpbmcKKyM6IHNyYy9oZWxwLmM6NDgKK21zZ2lkICJub3QgaW5zdGFsbGVkIgorbXNnc3RyICJub24gaW5zdGFsbGF0byIKKworIyAobmR0KSBzdGF0dXNzdHJpbmcKKyM6IHNyYy9oZWxwLmM6NDkKK21zZ2lkICJub3QgaW5zdGFsbGVkIGJ1dCBjb25maWdzIHJlbWFpbiIKK21zZ3N0ciAibm9uIGluc3RhbGxhdG8gbWEgY29uZmlndXJhemlvbmUgcHJlc2VudGUiCisKKyMgKG5kdCkgc3RhdHVzc3RyaW5nCisjOiBzcmMvaGVscC5jOjUwCittc2dpZCAiYnJva2VuIGR1ZSB0byBmYWlsZWQgcmVtb3ZhbCBvciBpbnN0YWxsYXRpb24iCittc2dzdHIgImRpZmV0dG9zbyBwZXIgdW5hIHJpbW96aW9uZSBvIGluc3RhbGxhemlvbmUgbm9uIHJpdXNjaXRhIgorCisjIChuZHQpIHN0YXR1c3N0cmluZworIzogc3JjL2hlbHAuYzo1MQorbXNnaWQgInVucGFja2VkIGJ1dCBub3QgY29uZmlndXJlZCIKK21zZ3N0ciAiZXN0cmF0dG8gbWEgbm9uIGNvbmZpZ3VyYXRvIgorCisjIChuZHQpIHN0YXR1c3N0cmluZworIzogc3JjL2hlbHAuYzo1MgorbXNnaWQgImJyb2tlbiBkdWUgdG8gcG9zdGluc3QgZmFpbHVyZSIKK21zZ3N0ciAiZGlmZXR0b3NvIHBlciB1biBwb3N0aW5zdCBub24gcml1c2NpdG8iCisKKyMgKG5kdCkgc3RhdHVzc3RyaW5nCisjOiBzcmMvaGVscC5jOjUzCittc2dpZCAiYXdhaXRpbmcgdHJpZ2dlciBwcm9jZXNzaW5nIGJ5IGFub3RoZXIgcGFja2FnZSIKK21zZ3N0ciAiaW4gYXR0ZXNhIGRlbGwnZWxhYm9yYXppb25lIGRlbCB0cmlnZ2VyIGRhIHVuIGFsdHJvIHBhY2NoZXR0byIKKworIyAobmR0KSBzdGF0dXNzdHJpbmcKKyM6IHNyYy9oZWxwLmM6NTQKK21zZ2lkICJ0cmlnZ2VyZWQiCittc2dzdHIgInRyaWdnZXJlZCIKKworIzogc3JjL2hlbHAuYzo1NQorbXNnaWQgImluc3RhbGxlZCIKK21zZ3N0ciAiaW5zdGFsbGF0byIKKworIzogc3JjL2hlbHAuYzoxMDcKKyMsIGZ1enp5CisjfCBtc2dpZCAiZXJyb3I6IFBBVEggaXMgbm90IHNldC4iCittc2dpZCAiUEFUSCBpcyBub3Qgc2V0LiIKK21zZ3N0ciAiZXJyb3JlOiB2YXJpYWJpbGUgUEFUSCBub24gaW1wb3N0YXRhLiIKKworIzogc3JjL2hlbHAuYzoxMjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS4iCittc2dzdHIgIlwiJXNcIiBub24gw6ggc3RhdG8gdHJvdmF0byBuZWxsYSB2YXJpYWJpbGUgUEFUSCBvIG5vbiDDqCB1biBlc2VndWliaWxlLiIKKworIzogc3JjL2hlbHAuYzoxMzgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiclcycgbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuIgorbXNnaWQgIiIKKyIlZCBleHBlY3RlZCBwcm9ncmFtIG5vdCBmb3VuZCBpbiBQQVRIIG9yIG5vdCBleGVjdXRhYmxlLlxuIgorIiVzIgorbXNnaWRfcGx1cmFsICIiCisiJWQgZXhwZWN0ZWQgcHJvZ3JhbXMgbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuXG4iCisiJXMiCittc2dzdHJbMF0gIiIKKyJcIiVzXCIgbm9uIMOoIHN0YXRvIHRyb3ZhdG8gbmVsbGEgdmFyaWFiaWxlIFBBVEggbyBub24gw6ggdW4gZXNlZ3VpYmlsZS4iCittc2dzdHJbMV0gIiIKKyJcIiVzXCIgbm9uIMOoIHN0YXRvIHRyb3ZhdG8gbmVsbGEgdmFyaWFiaWxlIFBBVEggbyBub24gw6ggdW4gZXNlZ3VpYmlsZS4iCisKKyM6IHNyYy9oZWxwLmM6MTQxCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICIlZCBleHBlY3RlZCBwcm9ncmFtIG5vdCBmb3VuZCBpbiBQQVRIIG9yIG5vdCBleGVjdXRhYmxlLlxuIgorI3wgIk5COiByb290J3MgUEFUSCBzaG91bGQgdXN1YWxseSBjb250YWluIC91c3IvbG9jYWwvc2JpbiwgL3Vzci9zYmluIGFuZCAvIgorI3wgInNiaW4uIgorI3wgbXNnaWRfcGx1cmFsICIiCisjfCAiJWQgZXhwZWN0ZWQgcHJvZ3JhbXMgbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuXG4iCisjfCAiTkI6IHJvb3QncyBQQVRIIHNob3VsZCB1c3VhbGx5IGNvbnRhaW4gL3Vzci9sb2NhbC9zYmluLCAvdXNyL3NiaW4gYW5kIC8iCisjfCAic2Jpbi4iCittc2dpZCAiIgorIk5vdGU6IHJvb3QncyBQQVRIIHNob3VsZCB1c3VhbGx5IGNvbnRhaW4gL3Vzci9sb2NhbC9zYmluLCAvdXNyL3NiaW4gYW5kIC8iCisic2Jpbi4iCittc2dzdHIgIiIKKyIlZCBwcm9ncmFtbWEgZXNzZW56aWFsZSBub24gw6ggc3RhdG8gdHJvdmF0byBuZWxsYSB2YXJpYWJpbGUgUEFUSCBvIG5vbiDDqCAiCisiZXNlZ3VpYmlsZS5cbiIKKyJOQjogbGEgUEFUSCBkaSByb290IGRvdnJlYmJlIGNvbnRlbmVyZSAvdXNyL2xvY2FsL3NiaW4sIC91c3Ivc2JpbiBlIC9zYmluLiIKKworIzogc3JjL2hlbHAuYzoxODgKK21zZ2lkICJhZG1pbmRpciBtdXN0IGJlIGluc2lkZSBpbnN0ZGlyIGZvciBkcGtnIHRvIHdvcmsgcHJvcGVybHkiCittc2dzdHIgIiIKKworIzogc3JjL2hlbHAuYzoxOTAgc3JjL21haW4uYzo3NDcKKyMsIGZ1enp5CisjfCBtc2dpZCAidW5hYmxlIHRvIHNldGVudiBmb3IgbWFpbnRhaW5lciBzY3JpcHQiCittc2dpZCAidW5hYmxlIHRvIHNldGVudiBmb3Igc3VicHJvY2Vzc2VzIgorbXNnc3RyICJpbXBvc3NpYmlsZSBlc2VndWlyZSBzZXRlbnYgcGVyIGxvIHNjcmlwdCBkaSBtYWludGFpbmVyIgorCisjOiBzcmMvaGVscC5jOjE5MgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2hyb290IHRvIGAlLjI1MHMnIgorbXNnc3RyICJlc2VjdXppb25lIGRpIGNocm9vdCBhIFwiJS4yNTBzXCIgbm9uIHJpdXNjaXRhIgorCisjOiBzcmMvaGVscC5jOjE5NCBkcGtnLWRlYi9idWlsZC5jOjQ1NSBkcGtnLWRlYi9idWlsZC5jOjQ1NworIzogZHBrZy1kZWIvYnVpbGQuYzo1MzYgZHBrZy1kZWIvYnVpbGQuYzo1NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIGAlLjI1NXMnIgorbXNnc3RyICJlc2VjdXppb25lIGRpIGNoZGlyIGEgXCIlLjI1NXNcIiBub24gcml1c2NpdGEiCisKKyM6IHNyYy9oZWxwLmM6MjU2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgZXhlY3V0ZSBwZXJtaXNzaW9ucyBvbiBgJS4yNTBzJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgaW1wb3N0YXJlIGkgcGVybWVzc2kgZGkgZXNlY3V6aW9uZSBzdSBcIiUuMjUwc1wiIgorCisjOiBzcmMvaGVscC5jOjI3NgorbXNnaWQgInVuYWJsZSB0byBzZXRlbnYgZm9yIG1haW50YWluZXIgc2NyaXB0IgorbXNnc3RyICJpbXBvc3NpYmlsZSBlc2VndWlyZSBzZXRlbnYgcGVyIGxvIHNjcmlwdCBkaSBtYWludGFpbmVyIgorCisjOiBzcmMvaGVscC5jOjMwMAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnN0YWxsZWQgJXMgc2NyaXB0IgorbXNnc3RyICJ2ZWNjaGlvIHNjcmlwdCBkaSAlcyIKKworIzogc3JjL2hlbHAuYzozMTMgc3JjL2hlbHAuYzozODIgc3JjL2hlbHAuYzo0NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgJXMgYCUuMjUwcyciCittc2dzdHIgImltcG9zc2liaWxlIGVzZWd1aXJlIHN0YXQgc3UgJXMgXCIlLjI1MHNcIiIKKworIzogc3JjL2hlbHAuYzozNjggc3JjL2hlbHAuYzo0MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAibmV3ICVzIHNjcmlwdCIKK21zZ3N0ciAibnVvdm8gc2NyaXB0ICVzIgorCisjOiBzcmMvaGVscC5jOjQwMgorIywgYy1mb3JtYXQKK21zZ2lkICJvbGQgJXMgc2NyaXB0IgorbXNnc3RyICJ2ZWNjaGlvIHNjcmlwdCBkaSAlcyIKKworIzogc3JjL2hlbHAuYzo0MTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgJXMgJyUuMjUwcyc6ICVzIgorbXNnc3RyICJpbXBvc3NpYmlsZSBlc2VndWlyZSBzdGF0IHN1ICVzIFwiJS4yNTBzXCI6ICVzIgorCisjOiBzcmMvaGVscC5jOjQyNQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnIC0gdHJ5aW5nIHNjcmlwdCBmcm9tIHRoZSBuZXcgcGFja2FnZSBpbnN0ZWFkIC4uLlxuIgorbXNnc3RyICJkcGtnIC0gdmllbmUgcHJvdmF0byBsbyBzY3JpcHQgZGFsIG51b3ZvIHBhY2NoZXR0by4uLlxuIgorCisjOiBzcmMvaGVscC5jOjQzOQorbXNnaWQgInRoZXJlIGlzIG5vIHNjcmlwdCBpbiB0aGUgbmV3IHZlcnNpb24gb2YgdGhlIHBhY2thZ2UgLSBnaXZpbmcgdXAiCittc2dzdHIgIm5vbiBjJ8OoIGFsY3VubyBzY3JpcHQgbmVsbGEgbnVvdmEgdmVyc2lvbmUgZGVsIHBhY2NoZXR0byAtIHNhbHRhdG8iCisKKyM6IHNyYy9oZWxwLmM6NDQ1CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IC4uLiBpdCBsb29rcyBsaWtlIHRoYXQgd2VudCBPSy5cbiIKK21zZ3N0ciAiZHBrZzogLi4uIHNlbWJyYSB0dXR0byBzaWEgYW5kYXRvIGNvcnJldHRhbWVudGUuXG4iCisKKyM6IHNyYy9oZWxwLmM6NjE2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWN1cmVseSByZW1vdmUgJyUuMjU1cyciCittc2dzdHIgImltcG9zc2liaWxlIHJpbXVvdmVyZSBpbiBzaWN1cmV6emEgXCIlLjI1NXNcIiIKKworIzogc3JjL2hlbHAuYzo2MjEgZHBrZy1kZWIvaW5mby5jOjY1IGRwa2ctZGViL2luZm8uYzo2NworbXNnaWQgInJtIGNvbW1hbmQgZm9yIGNsZWFudXAiCittc2dzdHIgIiIKKworIzogc3JjL2luZm9kYi5jOjUyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGVjayBleGlzdGVuY2Ugb2YgYCUuMjUwcyciCittc2dzdHIgImltcG9zc2liaWxlIHZlcmlmaWNhcmUgbCdlc2lzdGVuemEgZGkgXCIlLjI1MHNcIiIKKworIzogc3JjL2luZm9kYi5jOjcwCittc2dpZCAiY2Fubm90IHJlYWQgaW5mbyBkaXJlY3RvcnkiCittc2dzdHIgImltcG9zc2liaWxlIGxlZ2dlcmUgbGEgZGlyZWN0b3J5IGluZm8iCisKKyM6IHNyYy9tYWluLmM6NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuIGAlcycgcGFja2FnZSBtYW5hZ2VtZW50IHByb2dyYW0gdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiRGViaWFuIFwiJXNcIiwgcHJvZ3JhbW1hIGRpIGdlc3Rpb25lIGRlaSBwYWNjaGV0dGkgdmVyc2lvbmUgJXMuXG4iCisKKyM6IHNyYy9tYWluLmM6ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLWl8LS1pbnN0YWxsICAgICAgIDwuZGViIGZpbGUgbmFtZT4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRpcmVjdG9yeT4gLi4uXG4iCisiICAtLXVucGFjayAgICAgICAgICAgPC5kZWIgZmlsZSBuYW1lPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyZWN0b3J5PiAuLi5cbiIKKyIgIC1BfC0tcmVjb3JkLWF2YWlsICA8LmRlYiBmaWxlIG5hbWU+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXJlY3Rvcnk+IC4uLlxuIgorIiAgLS1jb25maWd1cmUgICAgICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC0tdHJpZ2dlcnMtb25seSAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtcnwtLXJlbW92ZSAgICAgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLVB8LS1wdXJnZSAgICAgICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC0tZ2V0LXNlbGVjdGlvbnMgWzxwYXR0ZXJuPiAuLi5dIEdldCBsaXN0IG9mIHNlbGVjdGlvbnMgdG8gc3Rkb3V0LlxuIgorIiAgLS1zZXQtc2VsZWN0aW9ucyAgICAgICAgICAgICAgICAgU2V0IHBhY2thZ2Ugc2VsZWN0aW9ucyBmcm9tIHN0ZGluLlxuIgorIiAgLS1jbGVhci1zZWxlY3Rpb25zICAgICAgICAgICAgICAgRGVzZWxlY3QgZXZlcnkgbm9uLWVzc2VudGlhbCBwYWNrYWdlLlxuIgorIiAgLS11cGRhdGUtYXZhaWwgPFBhY2thZ2VzLWZpbGU+ICAgUmVwbGFjZSBhdmFpbGFibGUgcGFja2FnZXMgaW5mby5cbiIKKyIgIC0tbWVyZ2UtYXZhaWwgPFBhY2thZ2VzLWZpbGU+ICAgIE1lcmdlIHdpdGggaW5mbyBmcm9tIGZpbGUuXG4iCisiICAtLWNsZWFyLWF2YWlsICAgICAgICAgICAgICAgICAgICBFcmFzZSBleGlzdGluZyBhdmFpbGFibGUgaW5mby5cbiIKKyIgIC0tZm9yZ2V0LW9sZC11bmF2YWlsICAgICAgICAgICAgIEZvcmdldCB1bmluc3RhbGxlZCB1bmF2YWlsYWJsZSBwa2dzLlxuIgorIiAgLXN8LS1zdGF0dXMgPHBhY2thZ2U+IC4uLiAgICAgICAgRGlzcGxheSBwYWNrYWdlIHN0YXR1cyBkZXRhaWxzLlxuIgorIiAgLXB8LS1wcmludC1hdmFpbCA8cGFja2FnZT4gLi4uICAgRGlzcGxheSBhdmFpbGFibGUgdmVyc2lvbiBkZXRhaWxzLlxuIgorIiAgLUx8LS1saXN0ZmlsZXMgPHBhY2thZ2U+IC4uLiAgICAgTGlzdCBmaWxlcyBgb3duZWQnIGJ5IHBhY2thZ2UocykuXG4iCisiICAtbHwtLWxpc3QgWzxwYXR0ZXJuPiAuLi5dICAgICAgICBMaXN0IHBhY2thZ2VzIGNvbmNpc2VseS5cbiIKKyIgIC1TfC0tc2VhcmNoIDxwYXR0ZXJuPiAuLi4gICAgICAgIEZpbmQgcGFja2FnZShzKSBvd25pbmcgZmlsZShzKS5cbiIKKyIgIC1DfC0tYXVkaXQgICAgICAgICAgICAgICAgICAgICAgIENoZWNrIGZvciBicm9rZW4gcGFja2FnZShzKS5cbiIKKyIgIC0tcHJpbnQtYXJjaGl0ZWN0dXJlICAgICAgICAgICAgIFByaW50IGRwa2cgYXJjaGl0ZWN0dXJlLlxuIgorIiAgLS1jb21wYXJlLXZlcnNpb25zIDxhPiA8b3A+IDxiPiAgQ29tcGFyZSB2ZXJzaW9uIG51bWJlcnMgLSBzZWUgYmVsb3cuXG4iCisiICAtLWZvcmNlLWhlbHAgICAgICAgICAgICAgICAgICAgICBTaG93IGhlbHAgb24gZm9yY2luZy5cbiIKKyIgIC1EaHwtLWRlYnVnPWhlbHAgICAgICAgICAgICAgICAgIFNob3cgaGVscCBvbiBkZWJ1Z2dpbmcuXG4iCisiXG4iCittc2dzdHIgIiIKKyJDb21hbmRpOiBcbiIKKyIgIC1pfC0taW5zdGFsbCAgICAgICA8ZmlsZSAuZGViPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyPiAuLi5cbiIKKyIgIC0tdW5wYWNrICAgICAgICAgICA8ZmlsZSAuZGViPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyPiAuLi5cbiIKKyIgIC1BfC0tcmVjb3JkLWF2YWlsICA8ZmlsZSAuZGViPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyPiAuLi5cbiIKKyIgIC0tY29uZmlndXJlICAgICAgICA8cGFjY2hldHRvPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC0tdHJpZ2dlcnMtb25seSAgICA8cGFjY2hldHRvPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC1yfC0tcmVtb3ZlICAgICAgICA8cGFjY2hldHRvPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC1QfC0tcHVyZ2UgICAgICAgICA8cGFjY2hldHRvPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC0tZ2V0LXNlbGVjdGlvbnMgICBbPG1vZGVsbG8+IC4uLl0gT3R0aWVuZSBsJ2VsZW5jbyBkZWxsZSBzZWxlemlvbmkgc3VsbG9cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Rkb3V0XG4iCisiICAtLXNldC1zZWxlY3Rpb25zICAgICAgICAgICAgICAgICAgIEltcG9zdGEgbGUgc2VsZXppb25pIGRhbGxvIHN0ZGluXG4iCisiICAtLWNsZWFyLXNlbGVjdGlvbnMgICAgICAgICAgICAgICAgIERlc2VsZXppb25hIGkgcGFjY2hldHRpIG5vbiBlc3NlbnppYWxpXG4iCisiICAtLXVwZGF0ZS1hdmFpbCA8ZmlsZSBQYWNrYWdlcz4gICAgIFNvc3RpdHVpc2NlIGxlIGluZm9ybWF6aW9uaSBzdWkgIgorInBhY2NoZXR0aVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwb25pYmlsaVxuIgorIiAgLS1tZXJnZS1hdmFpbCA8ZmlsZSBQYWNrYWdlcz4gICAgICBVbmlzY2UgY29uIGxlIGluZm9ybWF6aW9uaSBkYWwgZmlsZVxuIgorIiAgLS1jbGVhci1hdmFpbCAgICAgICAgICAgICAgICAgICAgICBFbGltaW5hIGluZm9ybWF6aW9uaSBzdWxsYSAiCisiZGlzcG9uaWJpbGl0w6BcbiIKKyIgIC0tZm9yZ2V0LW9sZC11bmF2YWlsICAgICAgICAgICAgICAgTm9uIGNvbnNpZGVyYSBpIHBhY2NoZXR0aSBub24gIgorImluc3RhbGxhdGlcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbyBub24gZGlzcG9uaWJpbGlcbiIKKyIgIC1zfC0tc3RhdHVzIDxwYWNjaGV0dG8+IC4uLiAgICAgICAgVmlzdWFsaXp6YSBkZXR0YWdsaSBzdWxsbyBzdGF0byBkZWxcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFjY2hldHRvXG4iCisiICAtcHwtLXByaW50LWF2YWlsIDxwYWNjaGV0dG8+IC4uLiAgIFZpc3VhbGl6emEgZGV0dGFnbGkgc3VsbGEgdmVyc2lvbmVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcG9uaWJpbGVcbiIKKyIgIC1MfC0tbGlzdGZpbGVzIDxwYWNjaGV0dG8+IC4uLiAgICAgRWxlbmNhIGkgZmlsZSBjb250ZW51dGkgbmVpIHBhY2NoZXR0aVxuIgorIiAgLWx8LS1saXN0IFs8bW9kZWxsbz4gLi4uXSAgICAgICAgICBFbGVuY2EgaSBwYWNjaGV0dGkgY29uY2lzYW1lbnRlXG4iCisiICAtU3wtLXNlYXJjaCA8bW9kZWxsbz4gLi4uICAgICAgICAgIFRyb3ZhIGkgcGFjY2hldHRpIGNvbnRlbmVudGkgaSBmaWxlXG4iCisiICAtQ3wtLWF1ZGl0ICAgICAgICAgICAgICAgICAgICAgICAgIFZlcmlmaWNhIGxhIHByZXNlbnphIGRpIHBhY2NoZXR0aSAiCisiZGlmZXR0b3NpXG4iCisiICAtLXByaW50LWFyY2hpdGVjdHVyZSAgICAgICAgICAgICAgIE1vc3RyYSBsJ2FyY2hpdGV0dHVyYSBkaSBkcGtnXG4iCisiICAtLWNvbXBhcmUtdmVyc2lvbnMgPGE+IDxvcD4gPGI+ICAgIENvbmZyb250YSBudW1lcmkgZGkgdmVyc2lvbmUgLSAiCisiY29uc3VsdGFyZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzb3R0b1xuIgorIiAgLS1mb3JjZS1oZWxwICAgICAgICAgICAgICAgICAgICAgICBNb3N0cmEgbCdhaXV0byBzdWxsZSBvcHppb25pIGRpIFwiZm9yY2UiCisiXCJcbiIKKyIgIC1EaHwtLWRlYnVnPWhlbHAgICAgICAgICAgICAgICAgICAgTW9zdHJhIGwnYWl1dG8gc3VsIGRlYnVnXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTEzIHNyYy9xdWVyeWNtZC5jOjYzMSBzcmMvdHJpZ2NtZC5jOjc3IGRwa2ctZGViL21haW4uYzo4OAorIzogZHBrZy1zcGxpdC9tYWluLmM6NzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiAgLWh8LS1oZWxwICAgICAgICAgICAgICAgICAgICAgICAgU2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCittc2dzdHIgIiIKKyIgIC1ofC0taGVscCAgICAgICAgICAgICAgICAgICAgICAgIE1vc3RyYSBxdWVzdG8gYWl1dG9cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgICAgICAgIE1vc3RyYSBsYSB2ZXJzaW9uZVxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjExOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVXNlIGRwa2cgLWJ8LS1idWlsZHwtY3wtLWNvbnRlbnRzfC1lfC0tY29udHJvbHwtSXwtLWluZm98LWZ8LS1maWVsZHxcbiIKKyIgLXh8LS1leHRyYWN0fC1YfC0tdmV4dHJhY3R8LS1mc3lzLXRhcmZpbGUgIG9uIGFyY2hpdmVzICh0eXBlICVzIC0taGVscCkuXG4iCisiXG4iCittc2dzdHIgIiIKKyJVc28gZHBrZyAtYnwtLWJ1aWxkfC1jfC0tY29udGVudHN8LWV8LS1jb250cm9sfC1JfC0taW5mb3wtZnwtLWZpZWxkfFxuIgorIiAteHwtLWV4dHJhY3R8LVh8LS12ZXh0cmFjdHwtLWZzeXMtdGFyZmlsZSBzdWdsaSBhcmNoaXZpIChkaWdpdGFyZSAlcyAtLSIKKyJoZWxwKS5cbiIKKyJcbiIKKworIzogc3JjL21haW4uYzoxMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkZvciBpbnRlcm5hbCB1c2U6IGRwa2cgLS1hc3NlcnQtc3VwcG9ydC1wcmVkZXBlbmRzIHwgLS1wcmVkZXAtcGFja2FnZSB8XG4iCisiICAtLWFzc2VydC13b3JraW5nLWVwb2NoIHwgLS1hc3NlcnQtbG9uZy1maWxlbmFtZXMgfCAtLWFzc2VydC1tdWx0aS1jb25yZXAuXG4iCisiXG4iCittc2dzdHIgIiIKKyJQZXIgdXNvIGludGVybm86IGRwa2cgLS1hc3NlcnQtc3VwcG9ydC1wcmVkZXBlbmRzIHwgLS1wcmVkZXAtcGFja2FnZSB8XG4iCisiICAtLWFzc2VydC13b3JraW5nLWVwb2NoIHwgLS1hc3NlcnQtbG9uZy1maWxlbmFtZXMgfCAtLWFzc2VydC1tdWx0aS1jb25yZXAuXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTI4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hZG1pbmRpcj08ZGlyZWN0b3J5PiAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMuXG4iCisiICAtLXJvb3Q9PGRpcmVjdG9yeT4gICAgICAgICBJbnN0YWxsIG9uIGEgZGlmZmVyZW50IHJvb3QgZGlyZWN0b3J5LlxuIgorIiAgLS1pbnN0ZGlyPTxkaXJlY3Rvcnk+ICAgICAgQ2hhbmdlIGluc3RhbGxhdGlvbiBkaXIgd2l0aG91dCBjaGFuZ2luZyBhZG1pbiAiCisiZGlyLlxuIgorIiAgLS1wYXRoLWV4Y2x1ZGU9PHBhdHRlcm4+ICAgRG8gbm90IGluc3RhbGwgcGF0aHMgd2hpY2ggbWF0Y2ggYSBzaGVsbCAiCisicGF0dGVybi5cbiIKKyIgIC0tcGF0aC1pbmNsdWRlPTxwYXR0ZXJuPiAgIFJlLWluY2x1ZGUgYSBwYXR0ZXJuIGFmdGVyIGEgcHJldmlvdXMgIgorImV4Y2x1c2lvbi5cbiIKKyIgIC1PfC0tc2VsZWN0ZWQtb25seSAgICAgICAgIFNraXAgcGFja2FnZXMgbm90IHNlbGVjdGVkIGZvciBpbnN0YWxsLyIKKyJ1cGdyYWRlLlxuIgorIiAgLUV8LS1za2lwLXNhbWUtdmVyc2lvbiAgICAgU2tpcCBwYWNrYWdlcyB3aG9zZSBzYW1lIHZlcnNpb24gaXMgaW5zdGFsbGVkLlxuIgorIiAgLUd8LS1yZWZ1c2UtZG93bmdyYWRlICAgICAgU2tpcCBwYWNrYWdlcyB3aXRoIGVhcmxpZXIgdmVyc2lvbiB0aGFuICIKKyJpbnN0YWxsZWQuXG4iCisiICAtQnwtLWF1dG8tZGVjb25maWd1cmUgICAgICBJbnN0YWxsIGV2ZW4gaWYgaXQgd291bGQgYnJlYWsgc29tZSBvdGhlciAiCisicGFja2FnZS5cbiIKKyIgIC0tW25vLV10cmlnZ2VycyAgICAgICAgICAgIFNraXAgb3IgZm9yY2UgY29uc2VxdWVudGlhbCB0cmlnZ2VyICIKKyJwcm9jZXNzaW5nLlxuIgorIiAgLS1uby1kZWJzaWcgICAgICAgICAgICAgICAgRG8gbm90IHRyeSB0byB2ZXJpZnkgcGFja2FnZSBzaWduYXR1cmVzLlxuIgorIiAgLS1uby1hY3R8LS1kcnktcnVufC0tc2ltdWxhdGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEp1c3Qgc2F5IHdoYXQgd2Ugd291bGQgZG8gLSBkb24ndCBkbyBpdC5cbiIKKyIgIC1EfC0tZGVidWc9PG9jdGFsPiAgICAgICAgIEVuYWJsZSBkZWJ1Z2dpbmcgKHNlZSAtRGhlbHAgb3IgLS1kZWJ1Zz1oZWxwKS5cbiIKKyIgIC0tc3RhdHVzLWZkIDxuPiAgICAgICAgICAgIFNlbmQgc3RhdHVzIGNoYW5nZSB1cGRhdGVzIHRvIGZpbGUgZGVzY3JpcHRvciAiCisiPG4+LlxuIgorIiAgLS1sb2c9PGZpbGVuYW1lPiAgICAgICAgICAgTG9nIHN0YXR1cyBjaGFuZ2VzIGFuZCBhY3Rpb25zIHRvIDxmaWxlbmFtZT4uXG4iCisiICAtLWlnbm9yZS1kZXBlbmRzPTxwYWNrYWdlPiwuLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIElnbm9yZSBkZXBlbmRlbmNpZXMgaW52b2x2aW5nIDxwYWNrYWdlPi5cbiIKKyIgIC0tZm9yY2UtLi4uICAgICAgICAgICAgICAgIE92ZXJyaWRlIHByb2JsZW1zIChzZWUgLS1mb3JjZS1oZWxwKS5cbiIKKyIgIC0tbm8tZm9yY2UtLi4ufC0tcmVmdXNlLS4uLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcCB3aGVuIHByb2JsZW1zIGVuY291bnRlcmVkLlxuIgorIiAgLS1hYm9ydC1hZnRlciA8bj4gICAgICAgICAgQWJvcnQgYWZ0ZXIgZW5jb3VudGVyaW5nIDxuPiBlcnJvcnMuXG4iCisiXG4iCittc2dzdHIgIiIKKyJPcHppb25pOlxuIgorIiAgLS1hZG1pbmRpcj08ZGlyZWN0b3J5PiAgICAgVXNhIDxkaXJlY3Rvcnk+IGludmVjZSBkaSAlc1xuIgorIiAgLS1yb290PTxkaXJlY3Rvcnk+ICAgICAgICAgSW5zdGFsbGEgaW4gdW5hIGRpdmVyc2EgZGlyZWN0b3J5IGRpIHJvb3RcbiIKKyIgIC0taW5zdGRpcj08ZGlyZWN0b3J5PiAgICAgIENhbWJpYSBkaXJlY3RvcnkgZCdpbnN0YWxsYXppb25lIHNlbnphICIKKyJjYW1iaWFyZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcXVlbGxhIGRpIGFtbWluaXN0cmF6aW9uZVxuIgorIiAgLS1wYXRoLWV4Y2x1ZGU9PHBhdHRlcm4+ICAgTm9uIGluc3RhbGxhIHBlcmNvcnNpIGNoZSBjb3JyaXNwb25kb25vIGEgdW4gIgorInBhdHRlcm4gc2hlbGxcbiIKKyIgIC0tcGF0aC1pbmNsdWRlPTxwYXR0ZXJuPiAgIFJlLWluY2x1ZGUgdW4gcGF0dGVybiBwcmVjZWRlbnRlbWVudGUgZXNjbHVzb1xuIgorIiAgLU98LS1zZWxlY3RlZC1vbmx5ICAgICAgICAgU2FsdGEgaSBwYWNjaGV0dGkgbm9uIHNlbGV6aW9uYXRpIHBlciBlc3NlcmVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluc3RhbGxhdGkvYWdnaW9ybmF0aVxuIgorIiAgLUV8LS1za2lwLXNhbWUtdmVyc2lvbiAgICAgU2FsdGEgaSBwYWNjaGV0dGkgbGEgY3VpIHN0ZXNzYSB2ZXJzaW9uZSDDqCBnacOgXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnN0YWxsYXRhXG4iCisiICAtR3wtLXJlZnVzZS1kb3duZ3JhZGUgICAgICBTYWx0YSBpIHBhY2NoZXR0aSBjb24gdW5hIHZlcnNpb25lIHByZWNlZGVudGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJpc3BldHRvIHF1ZWxsYSBpbnN0YWxsYXRhXG4iCisiICAtQnwtLWF1dG8tZGVjb25maWd1cmUgICAgICBJbnN0YWxsYSBhbmNoZSBzZSBwb3RyZWJiZSBkYW5uZWdnaWFyZSBhbHRyaSAiCisicGFjY2hldHRpXG4iCisiICAtLVtuby1ddHJpZ2dlcnMgICAgICAgICAgICBTYWx0YSBvIGZvcnphIGwnZWxhYm9yYXppb25lIGRlaSB0cmlnZ2VyXG4iCisiICAtLW5vLWRlYnNpZyAgICAgICAgICAgICAgICBOb24gY2VyY2EgZGkgdmVyaWZpY2FyZSBsZSBmaXJtZSBkZWkgcGFjY2hldHRpXG4iCisiICAtLW5vLWFjdHwtLWRyeS1ydW58LS1zaW11bGF0ZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSW5kaWNhIHNvbG8gbGUgYXppb25pLCBub24gbGUgZXNlZ3VlXG4iCisiICAtRHwtLWRlYnVnPTxvdHRhbGU+ICAgICAgICBBYmlsaXRhIGlsIGRlYnVnIChjb25zdWx0YXJlIC1EaGVscCBvIC0tIgorImRlYnVnPWhlbHApXG4iCisiICAtLXN0YXR1cy1mZCA8bj4gICAgICAgICAgICBJbnZpYSBnbGkgYWdnaW9ybmFtZW50aSBkaSBzdGF0byBhbCBkZXNjcml0dG9yZSAiCisiZGlcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGUgPG4+XG4iCisiICAtLWxvZz08bm9tZV9maWxlPiAgICAgICAgICBSZWdpc3RyYSBpIGNhbWJpYW1lbnRpIGRpIHN0YXRvIGUgbGUgYXppb25pIHN1XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bm9tZV9maWxlPlxuIgorIiAgLS1pZ25vcmUtZGVwZW5kcz08cGFjY2hldHRvPiwuLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIElnbm9yYSBsZSBkaXBlbmRlbnplIGRlbCA8cGFjY2hldHRvPlxuIgorIiAgLS1mb3JjZS0uLi4gICAgICAgICAgICAgICAgU2NhdmFsY2EgaSBwcm9ibGVtaSAoY29uc3VsdGFyZSAtLWZvcmNlLWhlbHApXG4iCisiICAtLW5vLWZvcmNlLS4uLnwtLXJlZnVzZS0uLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNpIGZlcm1hIHF1YW5kbyBzaSB2ZXJpZmljYSB1biBwcm9ibGVtYVxuIgorIiAgLS1hYm9ydC1hZnRlciA8bj4gICAgICAgICAgVGVybWluYSBkb3BvIDxuPiBlcnJvcmlcbiIKKyJcbiIKKworIzogc3JjL21haW4uYzoxNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbXBhcmlzb24gb3BlcmF0b3JzIGZvciAtLWNvbXBhcmUtdmVyc2lvbnMgYXJlOlxuIgorIiAgbHQgbGUgZXEgbmUgZ2UgZ3QgICAgICAgKHRyZWF0IGVtcHR5IHZlcnNpb24gYXMgZWFybGllciB0aGFuIGFueSAiCisidmVyc2lvbik7XG4iCisiICBsdC1ubCBsZS1ubCBnZS1ubCBndC1ubCAodHJlYXQgZW1wdHkgdmVyc2lvbiBhcyBsYXRlciB0aGFuIGFueSB2ZXJzaW9uKTtcbiIKKyIgIDwgPDwgPD0gPSA+PSA+PiA+ICAgICAgIChvbmx5IGZvciBjb21wYXRpYmlsaXR5IHdpdGggY29udHJvbCBmaWxlICIKKyJzeW50YXgpLlxuIgorIlxuIgorbXNnc3RyICIiCisiT3BlcmF0b3JpIGRpIGNvbXBhcmF6aW9uZSBwZXIgLS1jb21wYXJlLXZlcnNpb25zOlxuIgorIiBsdCBsZSBlcSBuZSBnZSBndCAgICAgICAoc2VuemEgdmVyc2lvbmUgY29uc2lkZXJhIHNlbXByZSBwcmVjZWRlbnRlKVxuIgorIiBsdC1ubCBsZS1ubCBnZS1ubCBndC1ubCAoc2VuemEgdmVyc2lvbmUgY29uc2lkZXJhIHNlbXByZSBzdWNjZXNzaXZvKVxuIgorIiA8IDw8IDw9ID0gPj0gPj4gPiAgICAgICAoc29sbyBwZXIgY29tcGF0aWJpbGl0w6AgY29uIHNpbnRhc3NpIGRlbCBmaWxlIGRpICIKKyJjb250cm9sbG8pXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTYxCisjLCBjLWZvcm1hdAorbXNnaWQgIlVzZSBgZHNlbGVjdCcgb3IgYGFwdGl0dWRlJyBmb3IgdXNlci1mcmllbmRseSBwYWNrYWdlIG1hbmFnZW1lbnQuXG4iCittc2dzdHIgIlVzYXJlIFwiZHNlbGVjdFwiIHBlciB1bidpbnRlcmZhY2NpYSBhbGxhIGdlc3Rpb25lIGRlaSBwYWNjaGV0dGkuXG4iCisKKyM6IHNyYy9tYWluLmM6MTcwCittc2dpZCAiIgorIlR5cGUgZHBrZyAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgaW5zdGFsbGluZyBhbmQgZGVpbnN0YWxsaW5nIHBhY2thZ2VzIFsqXTtcbiIKKyJVc2UgYGRzZWxlY3QnIG9yIGBhcHRpdHVkZScgZm9yIHVzZXItZnJpZW5kbHkgcGFja2FnZSBtYW5hZ2VtZW50O1xuIgorIlR5cGUgZHBrZyAtRGhlbHAgZm9yIGEgbGlzdCBvZiBkcGtnIGRlYnVnIGZsYWcgdmFsdWVzO1xuIgorIlR5cGUgZHBrZyAtLWZvcmNlLWhlbHAgZm9yIGEgbGlzdCBvZiBmb3JjaW5nIG9wdGlvbnM7XG4iCisiVHlwZSBkcGtnLWRlYiAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgbWFuaXB1bGF0aW5nICouZGViIGZpbGVzO1xuIgorIlxuIgorIk9wdGlvbnMgbWFya2VkIFsqXSBwcm9kdWNlIGEgbG90IG9mIG91dHB1dCAtIHBpcGUgaXQgdGhyb3VnaCBgbGVzcycgb3IgIgorImBtb3JlJyAhIgorbXNnc3RyICIiCisiVXNhcmUgZHBrZyAtLWhlbHAgcGVyIHVuIGFpdXRvIHN1bGwnaW5zdGFsbGF6aW9uZSBlIGxhIHJpbW96aW9uZSBkZWkgIgorInBhY2NoZXR0aSBbKl07XG4iCisiVXNhcmUgXCJkc2VsZWN0XCIgbyBcImFwdGl0dWRlXCIgcGVyIHVuJ2ludGVyZmFjY2lhIGFsbGEgZ2VzdGlvbmUgZGVpICIKKyJwYWNjaGV0dGk7XG4iCisiVXNhcmUgZHBrZyAtRGhlbHAgcGVyIGwnZWxlbmNvIGRlbGxlIG9wemlvbmkgZGkgZGVidWcgcGVyIGRwa2c7XG4iCisiVXNhcmUgZHBrZyAtLWZvcmNlLWhlbHAgcGVyIGwnZWxlbmNvIGRlbGxlIG9wemlvbmkgZGkgZm9yemF0dXJhO1xuIgorIlVzYXJlIGRwa2ctZGViIC0taGVscCBwZXIgdW4gYWl1dG8gc3VsbGEgbWFuaXBvbGF6aW9uZSBkZWkgZmlsZSAqLmRlYjtcbiIKKyJcbiIKKyJMZSBvcHppb25pIGluZGljYXRlIGNvbiBbKl0gcHJvZHVjb25vIG91dHB1dCBwcm9saXNzbyAtIGNyZWFyZSB1bmEgcGlwZSBjb24gIgorIlwibGVzc1wiIG8gXCJtb3JlXCIuIgorCisjOiBzcmMvbWFpbi5jOjIxOQorbXNnaWQgIlNldCBhbGwgZm9yY2Ugb3B0aW9ucyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIyMQorbXNnaWQgIlJlcGxhY2UgYSBwYWNrYWdlIHdpdGggYSBsb3dlciB2ZXJzaW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjIzCittc2dpZCAiQ29uZmlndXJlIGFueSBwYWNrYWdlIHdoaWNoIG1heSBoZWxwIHRoaXMgb25lIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjI1Cittc2dpZCAiUHJvY2VzcyBpbmNpZGVudGFsIHBhY2thZ2VzIGV2ZW4gd2hlbiBvbiBob2xkIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjI3Cittc2dpZCAiVHJ5IHRvIChkZSlpbnN0YWxsIHRoaW5ncyBldmVuIHdoZW4gbm90IHJvb3QiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjkKK21zZ2lkICJQQVRIIGlzIG1pc3NpbmcgaW1wb3J0YW50IHByb2dyYW1zLCBwcm9ibGVtcyBsaWtlbHkiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzEKK21zZ2lkICJJbnN0YWxsIGEgcGFja2FnZSBldmVuIGlmIGl0IGZhaWxzIGF1dGhlbnRpY2l0eSBjaGVjayIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzMworbXNnaWQgIlByb2Nlc3MgZXZlbiBwYWNrYWdlcyB3aXRoIHdyb25nIHZlcnNpb25zIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjM1Cittc2dpZCAiT3ZlcndyaXRlIGEgZmlsZSBmcm9tIG9uZSBwYWNrYWdlIHdpdGggYW5vdGhlciIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzNworbXNnaWQgIk92ZXJ3cml0ZSBhIGRpdmVydGVkIGZpbGUgd2l0aCBhbiB1bmRpdmVydGVkIHZlcnNpb24iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzkKK21zZ2lkICJPdmVyd3JpdGUgb25lIHBhY2thZ2UncyBkaXJlY3Rvcnkgd2l0aCBhbm90aGVyJ3MgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI0MQorbXNnaWQgIkRvIG5vdCBwZXJmb3JtIHNhZmUgSS9PIG9wZXJhdGlvbnMgd2hlbiB1bnBhY2tpbmciCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDMKK21zZ2lkICJBbHdheXMgdXNlIHRoZSBuZXcgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDUKK21zZ2lkICJBbHdheXMgdXNlIHRoZSBvbGQgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDgKK21zZ2lkICIiCisiVXNlIHRoZSBkZWZhdWx0IG9wdGlvbiBmb3IgbmV3IGNvbmZpZyBmaWxlcyBpZiBvbmVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgaXMgYXZhaWxhYmxlLCBkb24ndCBwcm9tcHQuIElmIG5vIGRlZmF1bHQgY2FuIGJlICIKKyJmb3VuZCxcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgeW91IHdpbGwgYmUgcHJvbXB0ZWQgdW5sZXNzIG9uZSBvZiB0aGUgY29uZm9sZCBvclxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICBjb25mbmV3IG9wdGlvbnMgaXMgYWxzbyBnaXZlbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI1MworbXNnaWQgIkFsd2F5cyBpbnN0YWxsIG1pc3NpbmcgY29uZmlnIGZpbGVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjU1Cittc2dpZCAiT2ZmZXIgdG8gcmVwbGFjZSBjb25maWcgZmlsZXMgd2l0aCBubyBuZXcgdmVyc2lvbnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNTcKK21zZ2lkICJQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyBvciBubyBhcmNoaXRlY3R1cmUiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNTkKK21zZ2lkICJJbnN0YWxsIGV2ZW4gaWYgaXQgd291bGQgYnJlYWsgYW5vdGhlciBwYWNrYWdlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjYxCittc2dpZCAiQWxsb3cgaW5zdGFsbGF0aW9uIG9mIGNvbmZsaWN0aW5nIHBhY2thZ2VzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjYzCisjLCBmdXp6eQorI3wgbXNnaWQgImRlcGVuZGVuY3kgcHJvYmxlbXMgLSBub3QgcmVtb3ZpbmciCittc2dpZCAiVHVybiBhbGwgZGVwZW5kZW5jeSBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzIgorbXNnc3RyICJwcm9ibGVtaSBjb24gbGUgZGlwZW5kZW56ZSAtIHJpbW96aW9uZSBub24gcG9zc2liaWxlIgorCisjOiBzcmMvbWFpbi5jOjI2NQorIywgZnV6enkKKyN8IG1zZ2lkICJkZXBlbmRlbmN5IHByb2JsZW1zIC0gbm90IHJlbW92aW5nIgorbXNnaWQgIlR1cm4gZGVwZW5kZW5jeSB2ZXJzaW9uIHByb2JsZW1zIGludG8gd2FybmluZ3MiCittc2dzdHIgInByb2JsZW1pIGNvbiBsZSBkaXBlbmRlbnplIC0gcmltb3ppb25lIG5vbiBwb3NzaWJpbGUiCisKKyM6IHNyYy9tYWluLmM6MjY3Cittc2dpZCAiUmVtb3ZlIHBhY2thZ2VzIHdoaWNoIHJlcXVpcmUgaW5zdGFsbGF0aW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjY5Cittc2dpZCAiUmVtb3ZlIGFuIGVzc2VudGlhbCBwYWNrYWdlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjgxCittc2dpZCAiR2VuZXJhbGx5IGhlbHBmdWwgcHJvZ3Jlc3MgaW5mb3JtYXRpb24iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODIKKyMsIGZ1enp5CisjfCBtc2dpZCAidW5hYmxlIHRvIHNldGVudiBmb3IgbWFpbnRhaW5lciBzY3JpcHQiCittc2dpZCAiSW52b2NhdGlvbiBhbmQgc3RhdHVzIG9mIG1haW50YWluZXIgc2NyaXB0cyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgZXNlZ3VpcmUgc2V0ZW52IHBlciBsbyBzY3JpcHQgZGkgbWFpbnRhaW5lciIKKworIzogc3JjL21haW4uYzoyODMKK21zZ2lkICJPdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODQKK21zZ2lkICJMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4NQorIywgZnV6enkKKyN8IG1zZ2lkICJyZWFkIGVycm9yIGluIGNvbmZpZ3VyYXRpb24gZmlsZSBgJS4yNTVzJyIKK21zZ2lkICJPdXRwdXQgZm9yIGVhY2ggY29uZmlndXJhdGlvbiBmaWxlIgorbXNnc3RyICJlcnJvcmUgbmVsIGxlZ2dlcmUgaWwgZmlsZSBkaSBjb25maWd1cmF6aW9uZSBcIiUuMjU1c1wiIgorCisjOiBzcmMvbWFpbi5jOjI4NgorbXNnaWQgIkxvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4NworbXNnaWQgIkRlcGVuZGVuY2llcyBhbmQgY29uZmxpY3RzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg4Cittc2dpZCAiTG90cyBvZiBkZXBlbmRlbmNpZXMvY29uZmxpY3RzIG91dHB1dCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4OQorbXNnaWQgIlRyaWdnZXIgYWN0aXZhdGlvbiBhbmQgcHJvY2Vzc2luZyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MAorbXNnaWQgIkxvdHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2VycyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MQorbXNnaWQgIlNpbGx5IGFtb3VudHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2VycyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MgorbXNnaWQgIkxvdHMgb2YgZHJpdmVsIGFib3V0IGVnIHRoZSBkcGtnL2luZm8gZGlyZWN0b3J5IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjkzCittc2dpZCAiSW5zYW5lIGFtb3VudHMgb2YgZHJpdmVsIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MzA0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlcyBkZWJ1Z2dpbmcgb3B0aW9uLCAtLWRlYnVnPTxvY3RhbD4gb3IgLUQ8b2N0YWw+OlxuIgorIlxuIgorIiBOdW1iZXIgIFJlZi4gaW4gc291cmNlICAgRGVzY3JpcHRpb25cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjMxMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiRGVidWdnaW5nIG9wdGlvbnMgY2FuIGJlIG1peGVkIHVzaW5nIGJpdHdpc2Utb3IuXG4iCisiTm90ZSB0aGF0IHRoZSBtZWFuaW5ncyBhbmQgdmFsdWVzIGFyZSBzdWJqZWN0IHRvIGNoYW5nZS5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjMxOQorbXNnaWQgIi0tZGVidWcgcmVxdWlyZXMgYW4gb2N0YWwgYXJndW1lbnQiCittc2dzdHIgIi0tZGVidWcgcmljaGllZGUgdW4gbnVtZXJvIGluIGJhc2Ugb3R0byBjb21lIGFyZ29tZW50byIKKworIzogc3JjL21haW4uYzozNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAibnVsbCBwYWNrYWdlIG5hbWUgaW4gLS1pZ25vcmUtZGVwZW5kcyBjb21tYS1zZXBhcmF0ZWQgbGlzdCBgJS4yNTBzJyIKK21zZ3N0ciAiIgorIm5vbWUgZGkgcGFjY2hldHRvIG51bGxvIG5lbGwnZWxlbmNvIHNlcGFyYXRvIGRhIHZpcmdvbGUgXCIlLjI1MHNcIiBkaSAtLSIKKyJpZ25vcmUtZGVwZW5kcyIKKworIzogc3JjL21haW4uYzozNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS1pZ25vcmUtZGVwZW5kcyByZXF1aXJlcyBhIGxlZ2FsIHBhY2thZ2UgbmFtZS4gYCUuMjUwcycgaXMgbm90OyAlcyIKK21zZ3N0ciAiIgorIi0taWdub3JlLWRlcGVuZHMgcmljaGllZGUgdW4gbm9tZSBkaSBwYWNjaGV0dG8gdmFsaWRvLiBcIiUuMjUwc1wiIG5vbiBsbyDDqDsgIgorIiVzIgorCisjOiBzcmMvbWFpbi5jOjM3MSBzcmMvbWFpbi5jOjM4MSBzcmMvbWFpbi5jOjY0OSBkcGtnLXNwbGl0L21haW4uYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBpbnRlZ2VyIGZvciAtLSVzOiBgJS4yNTBzJyIKK21zZ3N0ciAibnVtZXJvIGludGVybyBwZXIgLS0lcyBub24gdmFsaWRvOiBcIiUuMjUwc1wiIgorCisjOiBzcmMvbWFpbi5jOjQzOAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBleGVjdXRpbmcgaG9vayAnJXMnLCBleGl0IGNvZGUgJWQiCittc2dzdHIgImVycm9yZSBuZWxsJ2VzZWd1aXJlIGwnaG9vayBcIiVzXCIsIGNvZGljZSBkJ3VzY2l0YSAlZCIKKworIzogc3JjL21haW4uYzo0NjUKKyMsIGZ1enp5CisjfCBtc2dpZCAic3RhdHVzIgorbXNnaWQgInN0YXR1cyBsb2dnZXIiCittc2dzdHIgInN0YXRvIgorCisjOiBzcmMvbWFpbi5jOjQ4MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXMgZm9yY2luZyBvcHRpb25zIC0gY29udHJvbCBiZWhhdmlvdXIgd2hlbiBwcm9ibGVtcyBmb3VuZDpcbiIKKyIgIHdhcm4gYnV0IGNvbnRpbnVlOiAgLS1mb3JjZS08dGhpbmc+LDx0aGluZz4sLi4uXG4iCisiICBzdG9wIHdpdGggZXJyb3I6ICAgIC0tcmVmdXNlLTx0aGluZz4sPHRoaW5nPiwuLi4gfCAtLW5vLWZvcmNlLTx0aGluZz4sLi4uXG4iCisiIEZvcmNpbmcgdGhpbmdzOlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6NDkwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJXQVJOSU5HIC0gdXNlIG9mIG9wdGlvbnMgbWFya2VkIFshXSBjYW4gc2VyaW91c2x5IGRhbWFnZSB5b3VyIGluc3RhbGxhdGlvbi5cbiIKKyJGb3JjaW5nIG9wdGlvbnMgbWFya2VkIFsqXSBhcmUgZW5hYmxlZCBieSBkZWZhdWx0LlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6NTA0CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gZm9yY2UvcmVmdXNlIG9wdGlvbiBgJS4qcyciCittc2dzdHIgIm9wemlvbmUgZm9yY2UvcmVmdXNlIFwiJS4qc1wiIHNjb25vc2NpdXRhIgorCisjOiBzcmMvbWFpbi5jOjUxMworIywgYy1mb3JtYXQKK21zZ2lkICJvYnNvbGV0ZSBmb3JjZS9yZWZ1c2Ugb3B0aW9uICclcydcbiIKK21zZ3N0ciAib3B6aW9uZSBmb3JjZS9yZWZ1c2UgXCIlc1wiIG9ic29sZXRhXG4iCisKKyM6IHNyYy9tYWluLmM6NjQzCittc2dpZCAiLS1jb21tYW5kLWZkIHRha2VzIG9uZSBhcmd1bWVudCwgbm90IHplcm8iCittc2dzdHIgIi0tY29tbWFuZC1mZCBhY2NldHRhIHVuIGFyZ29tZW50bywgbm9uIG5lc3N1bm8iCisKKyM6IHNyYy9tYWluLmM6NjQ1Cittc2dpZCAiLS1jb21tYW5kLWZkIG9ubHkgdGFrZXMgb25lIGFyZ3VtZW50IgorbXNnc3RyICItLWNvbW1hbmQtZmQgYWNjZXR0YSB1biBzb2xvIGFyZ29tZW50byIKKworIzogc3JjL21haW4uYzo2NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGRuJ3Qgb3BlbiBgJWknIGZvciBzdHJlYW0iCittc2dzdHIgImltcG9zc2liaWxlIGFwcmlyZSBcIiVpXCIgcGVyIHJpY2V2ZXJlIGlsIGZsdXNzbyIKKworIzogc3JjL21haW4uYzo2NzYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgYmVmb3JlIGVuZCBvZiBsaW5lICVkIgorbXNnc3RyICJlb2YgaW5hdHRlc28gcHJpbWEgZGVsbGEgZmluZSBkZWxsYSByaWdhICVkIgorCisjOiBzcmMvbWFpbi5jOjcxOSBzcmMvbWFpbi5jOjc0MSBzcmMvcXVlcnljbWQuYzo2OTIgc3JjL3N0YXRjbWQuYzozNzkKKyM6IGRwa2ctZGViL21haW4uYzoyMDEgZHBrZy1zcGxpdC9tYWluLmM6MTYzCittc2dpZCAibmVlZCBhbiBhY3Rpb24gb3B0aW9uIgorbXNnc3RyICJuZWNlc3NhcmlhIHVuJ29wemlvbmUgY2hlIGluZGljaGkgdW4nYXppb25lIgorCisjOiBzcmMvcGFja2FnZXMuYzoxMTMKK21zZ2lkICIiCisieW91IG11c3Qgc3BlY2lmeSBwYWNrYWdlcyBieSB0aGVpciBvd24gbmFtZXMsIG5vdCBieSBxdW90aW5nIHRoZSBuYW1lcyBvZiAiCisidGhlIGZpbGVzIHRoZXkgY29tZSBpbiIKK21zZ3N0ciAiIgorIsOoIG5lY2Vzc2FyaW8gc3BlY2lmaWNhcmUgaSBwYWNjaGV0dGkgY29uIGlsIGxvcm8gbm9tZSwgbm9uIHJpcG9ydGFuZG8gaWwgIgorIm5vbWUgZGVpIGZpbGUgY2hlIGxpIGNvbnRlbmdvbm8iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjEzMworIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIC0tcGVuZGluZyBkb2VzIG5vdCB0YWtlIGFueSBub24tb3B0aW9uIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS0lcyAtLXBlbmRpbmcgbm9uIGFjY2V0dGEgYWxjdW4gYXJnb21lbnRvIGNoZSBub24gc2lhIHVuJ29wemlvbmUiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjEzOCBzcmMvcXVlcnljbWQuYzozNzUgc3JjL3F1ZXJ5Y21kLmM6NTY1CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYXQgbGVhc3Qgb25lIHBhY2thZ2UgbmFtZSBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyByaWNoaWVkZSBpbCBub21lIGRpIGFsbWVubyB1biBwYWNjaGV0dG8gY29tZSBhcmdvbWVudG8iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjE3OQorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlICVzIGxpc3RlZCBtb3JlIHRoYW4gb25jZSwgb25seSBwcm9jZXNzaW5nIG9uY2UuXG4iCittc2dzdHIgIklsIHBhY2NoZXR0byAlcyDDqCBpbmRpY2F0byBwacO5IHZvbHRlLCB2aWVuZSBlbGFib3JhdG8gdW5hIHNvbGEuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjE4MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiTW9yZSB0aGFuIG9uZSBjb3B5IG9mIHBhY2thZ2UgJXMgaGFzIGJlZW4gdW5wYWNrZWRcbiIKKyIgaW4gdGhpcyBydW4gISAgT25seSBjb25maWd1cmluZyBpdCBvbmNlLlxuIgorbXNnc3RyICIiCisiw4ggc3RhdGEgZXN0cmF0dGEgcGnDuSBkaSB1bmEgY29waWEgZGVsIHBhY2NoZXR0byAlc1xuIgorIiBkdXJhbnRlIHF1ZXN0YSBzZXNzaW9uZS4gVmllbmUgY29uZmlndXJhdG8gdW5hIHNvbGEgdm9sdGEuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjIzMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisicGFja2FnZSAlLjI1MHMgaXMgbm90IHJlYWR5IGZvciB0cmlnZ2VyIHByb2Nlc3NpbmdcbiIKKyIgKGN1cnJlbnQgc3RhdHVzIGAlLjI1MHMnIHdpdGggbm8gcGVuZGluZyB0cmlnZ2VycykiCittc2dzdHIgIiIKKyJpbCBwYWNjaGV0dG8gJS4yNTBzIG5vbiDDqCBwcm9udG8gcGVyIGwnZWxhYm9yYXppb25lIGRlaSB0cmlnZ2VyXG4iCisiIChzdGF0byBhdHR1YWxlIFwiJS4yNTBzXCIgY29uIG5lc3N1biB0cmlnZ2VyIGluIGF0dGVzYSkiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjMzNAorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgd2hpY2ggcHJvdmlkZXMgJXMgaXMgdG8gYmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiICBJbCBwYWNjaGV0dG8gJXMgY2hlIGZvcm5pc2NlICVzIHN0YSBwZXIgZXNzZXJlIHJpbW9zc28uXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjMzNworIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgaXMgdG8gYmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiICBJbCBwYWNjaGV0dG8gJXMgc3RhIHBlciBlc3NlcmUgcmltb3Nzby5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MzU0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgVmVyc2lvbiBvZiAlcyBvbiBzeXN0ZW0gaXMgJXMuXG4iCittc2dzdHIgIiAgTGEgdmVyc2lvbmUgZGkgJXMgbmVsIHNpc3RlbWEgw6ggJXMuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjM3NgorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgd2hpY2ggcHJvdmlkZXMgJXMgYXdhaXRzIHRyaWdnZXIgcHJvY2Vzc2luZy5cbiIKK21zZ3N0ciAiIgorIiAgSWwgcGFjY2hldHRvICVzIGNoZSBmb3JuaXNjZSAlcyDDqCBpbiBhdHRlc2EgZGVsbCdlbGFib3JhemlvbmUgZGVpICIKKyJ0cmlnZ2VyLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzozODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIGF3YWl0cyB0cmlnZ2VyIHByb2Nlc3NpbmcuXG4iCittc2dzdHIgIiAgSWwgcGFjY2hldHRvICVzIMOoIGluIGF0dGVzYSBkZWxsJ2VsYWJvcmF6aW9uZSBkZWkgdHJpZ2dlci5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDEwCisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IGFsc28gY29uZmlndXJpbmcgYCVzJyAocmVxdWlyZWQgYnkgYCVzJylcbiIKK21zZ3N0ciAiZHBrZzogdmllbmUgY29uZmlndXJhdG8gYW5jaGUgXCIlc1wiIChyaWNoaWVzdG8gZGEgXCIlc1wiKVxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIHdoaWNoIHByb3ZpZGVzICVzIGlzIG5vdCBjb25maWd1cmVkIHlldC5cbiIKK21zZ3N0ciAiICBJbCBwYWNjaGV0dG8gJXMgY2hlIGZvcm5pc2NlICVzIG5vbiDDqCBhbmNvcmEgY29uZmlndXJhdG8uXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQyMQorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgaXMgbm90IGNvbmZpZ3VyZWQgeWV0LlxuIgorbXNnc3RyICIgIElsIHBhY2NoZXR0byAlcyBub24gw6ggYW5jb3JhIGNvbmZpZ3VyYXRvLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIHdoaWNoIHByb3ZpZGVzICVzIGlzIG5vdCBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgSWwgcGFjY2hldHRvICVzIGNoZSBmb3JuaXNjZSAlcyBub24gw6ggaW5zdGFsbGF0by5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDM1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIgIElsIHBhY2NoZXR0byAlcyBub24gw6ggaW5zdGFsbGF0by5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDcyCisjLCBjLWZvcm1hdAorbXNnaWQgIiAlcyAoJXMpIGJyZWFrcyAlcyBhbmQgaXMgJXMuXG4iCittc2dzdHIgIiAlcyAoJXMpIGRhbm5lZ2dpYSAlcyBlZCDDqCAlcy5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDc4CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJXMgKCVzKSBwcm92aWRlcyAlcy5cbiIKK21zZ3N0ciAiICAlcyAoJXMpIGZvcm5pc2NlICVzLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBWZXJzaW9uIG9mICVzIHRvIGJlIGNvbmZpZ3VyZWQgaXMgJXMuXG4iCittc2dzdHIgIiAgTGEgdmVyc2lvbmUgZGkgJXMgZGEgY29uZmlndXJhcmUgw6ggJXMuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjU5NgorbXNnaWQgIiBkZXBlbmRzIG9uICIKK21zZ3N0ciAiIGRpcGVuZGUgZGEgIgorCisjOiBzcmMvcGFja2FnZXMuYzo2MDIKK21zZ2lkICI7IGhvd2V2ZXI6XG4iCittc2dzdHIgIiwgbWE6XG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiLi4uLyVzIgorbXNnc3RyICIuLi4vJXMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgZW5zdXJpbmcgYCUuMjUwcycgZG9lc24ndCBleGlzdCIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgYXNzaWN1cmFyc2kgY2hlIFwiJS4yNTBzXCIgbm9uIGVzaXN0YSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5OQorbXNnaWQgInNwbGl0IHBhY2thZ2UgcmVhc3NlbWJseSIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEwOAorbXNnaWQgInJlYXNzZW1ibGVkIHBhY2thZ2UgZmlsZSIKK21zZ3N0ciAiZmlsZSBwYWNjaGV0dG8gcmlhc3NlbWJsYXRvIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEzMworIywgYy1mb3JtYXQKK21zZ2lkICJBdXRoZW50aWNhdGluZyAlcyAuLi5cbiIKK21zZ3N0ciAiQXV0ZW50aWNhemlvbmUgZGkgJXMuLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxMzkKK21zZ2lkICJwYWNrYWdlIHNpZ25hdHVyZSB2ZXJpZmljYXRpb24iCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxNDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiVmVyaWZpY2F0aW9uIG9uIHBhY2thZ2UgJXMgZmFpbGVkISIKK21zZ3N0ciAiVmVyaWZpY2EgZGVsIHBhY2NoZXR0byAlcyBub24gcml1c2NpdGEuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE0OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVmVyaWZpY2F0aW9uIG9uIHBhY2thZ2UgJXMgZmFpbGVkLFxuIgorImJ1dCBpbnN0YWxsaW5nIGFueXdheSBhcyB5b3UgcmVxdWVzdGVkLlxuIgorbXNnc3RyICIiCisiVmVyaWZpY2EgZGVsIHBhY2NoZXR0byAlcyBub24gcml1c2NpdGEsXG4iCisibWEgdmllbmUgaW5zdGFsbGF0byBsbyBzdGVzc28uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTUyCisjLCBjLWZvcm1hdAorbXNnaWQgInBhc3NlZFxuIgorbXNnc3RyICJzdXBlcmF0YVxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE2NSBkcGtnLWRlYi9pbmZvLmM6ODEKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHRlbXBvcmFyeSBkaXJlY3RvcnkiCittc2dzdHIgImltcG9zc2liaWxlIGNyZWFyZSB1bmEgZGlyZWN0b3J5IHRlbXBvcmFuZWEiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MjA1CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgJXMgaGFzIHRvbyBtYW55IENvbmZsaWN0cy9SZXBsYWNlcyBwYWlycyIKK21zZ3N0ciAiaWwgcGFjY2hldHRvICVzIGhhIHRyb3BwZSBjb3BwaWUgQ29uZmxpY3RzL1JlcGxhY2VzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjI0MworIywgYy1mb3JtYXQKK21zZ2lkICJvbGQgdmVyc2lvbiBvZiBwYWNrYWdlIGhhcyBvdmVybHktbG9uZyBpbmZvIGZpbGUgbmFtZSBzdGFydGluZyBgJS4yNTBzJyIKK21zZ3N0ciAiIgorImxhIHZlY2NoaWEgdmVyc2lvbmUgZGVsIHBhY2NoZXR0byBoYSB1biBmaWxlIGRpIGNvbmZpZ3VyYXppb25lIHRyb3BwbyBsdW5nbyAiCisiY2hlIGluaXppYSBwZXIgXCIlLjI1MHNcIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyODEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBvYnNvbGV0ZSBpbmZvIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImltcG9zc2liaWxlIHJpbXVvdmVyZSBpbCBmaWxlIGRpIGluZm9ybWF6aW9uaSBvYnNvbGV0byBcIiUuMjUwc1wiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjI4NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCAoc3VwcG9zZWQpIG5ldyBpbmZvIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKyJpbXBvc3NpYmlsZSBpbnN0YWxsYXJlIGlsIChzdXBwb3N0bykgbnVvdm8gZmlsZSBkaSBpbmZvcm1hemlvbmkgXCIlLjI1MHNcIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyOTYKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiB0ZW1wIGNvbnRyb2wgZGlyZWN0b3J5IgorbXNnc3RyICJpbXBvc3NpYmlsZSBhcHJpcmUgbGEgZGlyZWN0b3J5IGRpIGNvbnRyb2xsbyB0ZW1wb3JhbmVhIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMwNworIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGNvbnRhaW5zIG92ZXJseS1sb25nIGNvbnRyb2wgaW5mbyBmaWxlIG5hbWUgKHN0YXJ0aW5nIGAlLjUwcycpIgorbXNnc3RyICIiCisiaWwgcGFjY2hldHRvIGNvbnRpZW5lIHVuIG5vbWUgdHJvcHBvIGx1bmdvIHBlciBpbCBmaWxlIGNvbiBsZSBpbmZvcm1hemlvbmkgIgorImRpIGNvbnRyb2xsbyAoaW5pemlhIHBlciBcIiUuNTBzXCIpIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMxNAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGNvbnRyb2wgaW5mbyBjb250YWluZWQgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICIiCisibGUgaW5mb3JtYXppb25pIGRpIGNvbnRyb2xsbyBkZWwgcGFjY2hldHRvIGNvbnRlbmV2YW5vIGxhIGRpcmVjdG9yeSBcIiUuMjUwcyIKKyJcIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMTYKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBjb250cm9sIGluZm8gcm1kaXIgb2YgYCUuMjUwcycgZGlkbid0IHNheSBub3QgYSBkaXIiCittc2dzdHIgIiIKKyJsYSByaW1vemlvbmUgKHJtZGlyKSBkaSBcIiUuMjUwc1wiIG5lbGxlIGluZm9ybWF6aW9uaSBkaSBjb250cm9sbG8gZGVsICIKKyJwYWNjaGV0dG8gbm9uIGluZGljYXZhbm8gdW5hIGRpcmVjdG9yeSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMjYKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlcyBjb250YWluZWQgbGlzdCBhcyBpbmZvIGZpbGUiCittc2dzdHIgImlsIHBhY2NoZXR0byAlcyBjb250ZW5ldmEgdW4gZWxlbmNvIGNvbWUgZmlsZSBkaSBpbmZvcm1hemlvbmkiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzMzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyBpbmZvIGZpbGUgYCUuMjUwcycgYXMgYCUuMjUwcyciCittc2dzdHIgIiIKKyJpbXBvc3NpYmlsZSBpbnN0YWxsYXJlIGlsIG51b3ZvIGZpbGUgZGkgaW5mb3JtYXppb25pIFwiJS4yNTBzXCIgY29tZSBcIiUuMjUwcyIKKyJcIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozNDkgc3JjL3JlbW92ZS5jOjE5OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGVsZXRlIGNvbnRyb2wgaW5mbyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisiaW1wb3NzaWJpbGUgZWxpbWluYXJlIGlsIGZpbGUgY29uIGxlIGluZm9ybWF6aW9uaSBkaSBjb250cm9sbG8gXCIlLjI1MHNcIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo0MTEKK21zZ2lkICJjYW5ub3QgYWNjZXNzIGFyY2hpdmUiCittc2dzdHIgImltcG9zc2liaWxlIGFjY2VkZXJlIGFsbCdhcmNoaXZpbyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo0MzMKKyMsIGZ1enp5CisjfCBtc2dpZCAiY29udHJvbCBpbmZvcm1hdGlvbiBsZW5ndGgiCittc2dpZCAicGFja2FnZSBjb250cm9sIGluZm9ybWF0aW9uIGV4dHJhY3Rpb24iCittc2dzdHIgImx1bmdoZXp6YSBpbmZvcm1hemlvbmkgY29udHJvbGxvIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjQ2MAorIywgYy1mb3JtYXQKK21zZ2lkICJSZWNvcmRlZCBpbmZvIGFib3V0ICVzIGZyb20gJXMuXG4iCittc2dzdHIgIkluZm9ybWF6aW9uaSByaWd1YXJkbyAlcyBwcm92ZW5pZW50aSBkYSAlcyByZWdpc3RyYXRlLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjQ2OAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGFyY2hpdGVjdHVyZSAoJXMpIGRvZXMgbm90IG1hdGNoIHN5c3RlbSAoJXMpIgorbXNnc3RyICIiCisibCdhcmNoaXRldHR1cmEgZGVsIHBhY2NoZXR0byAoJXMpIG5vbiBjb3JyaXNwb25kZSBhIHF1ZWxsYSBkZWwgc2lzdGVtYSAoJXMpIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjUyMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogcmVnYXJkaW5nICVzIGNvbnRhaW5pbmcgJXMsIHByZS1kZXBlbmRlbmN5IHByb2JsZW06XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiBwcm9ibGVtaSBjb24gbGUgcHJlLWRpcGVuZGVuemUgZGkgJXMgY29udGVuZW50ZSAlczpcbiIKKyIlcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1MjYKKyMsIGMtZm9ybWF0Cittc2dpZCAicHJlLWRlcGVuZGVuY3kgcHJvYmxlbSAtIG5vdCBpbnN0YWxsaW5nICUuMjUwcyIKK21zZ3N0ciAicHJvYmxlbWEgY29uIGxlIHByZS1kaXBlbmRlbnplIC0gJS4yNTBzIG5vbiB2aWVuZSBpbnN0YWxsYXRvIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjUyNworbXNnaWQgImlnbm9yaW5nIHByZS1kZXBlbmRlbmN5IHByb2JsZW0hIgorbXNnc3RyICJ2ZW5nb25vIGlnbm9yYXRpIGkgcHJvYmxlbWkgY29uIGxlIHByZS1kaXBlbmRlbnplLiIKKworIyAobmR0KSBpbCBzZWNvbmRvIMOoIGxhIHZlcnNpb25lCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjU0MworIywgYy1mb3JtYXQKK21zZ2lkICJQcmVwYXJpbmcgdG8gcmVwbGFjZSAlcyAlcyAodXNpbmcgJXMpIC4uLlxuIgorbXNnc3RyICJQcmVwYXJhdGl2aSBwZXIgc29zdGl0dWlyZSAlcyB2LiVzICh1dGlsaXp6YW5kbyAlcykuLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiVW5wYWNraW5nICVzIChmcm9tICVzKSAuLi5cbiIKK21zZ3N0ciAiRXN0cmF6aW9uZSBkaSAlcyAoZGEgJXMpLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTgwCisjLCBjLWZvcm1hdAorbXNnaWQgIm5hbWUgb2YgY29uZmZpbGUgKHN0YXJ0aW5nIGAlLjI1MHMnKSBpcyB0b28gbG9uZyAoPiVkIGNoYXJhY3RlcnMpIgorbXNnc3RyICIiCisibm9tZSBkZWwgZmlsZSBkaSBjb25maWd1cmF6aW9uZSAoaW5pemlhIHBlciBcIiUuMjUwc1wiKSB0cm9wcG8gbHVuZ28gKD4lZCAiCisiY2FyYXR0ZXJpKSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2MzMgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVhZCBlcnJvciBpbiAlLjI1MHMiCittc2dzdHIgImVycm9yZSBkaSBsZXR0dXJhIGluICUuMjUwcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyAlLjI1MHMiCittc2dzdHIgImVycm9yZSBuZWwgY2hpdWRlcmUgJS4yNTBzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjYzNworIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciB0cnlpbmcgdG8gb3BlbiAlLjI1MHMiCittc2dzdHIgImVycm9yZSBuZWwgY2VyY2FyZSBkaSBhcHJpcmUgJS4yNTBzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjY3OAorIywgYy1mb3JtYXQKK21zZ2lkICJEZS1jb25maWd1cmluZyAlcywgdG8gYWxsb3cgcmVtb3ZhbCBvZiAlcyAuLi5cbiIKK21zZ3N0ciAiRGVjb25maWd1cmF6aW9uZSBkaSAlcyBwZXIgcG90ZXIgcmltdW92ZXJlICVzLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjgxCisjLCBjLWZvcm1hdAorbXNnaWQgIkRlLWNvbmZpZ3VyaW5nICVzIC4uLlxuIgorbXNnc3RyICJEZWNvbmZpZ3VyYXppb25lIGRpICVzLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NzU1CisjLCBjLWZvcm1hdAorbXNnaWQgIlVucGFja2luZyByZXBsYWNlbWVudCAlLjI1MHMgLi4uXG4iCittc2dzdHIgIkVzdHJhemlvbmUgZGVsIHNvc3RpdHV0byBkaSAlLjI1MHMuLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NDAKKyMsIGZ1enp5CisjfCBtc2dpZCAiZHBrZy1kZWIgZmllbGQgZXh0cmFjdGlvbiIKK21zZ2lkICJwYWNrYWdlIGZpbGVzeXN0ZW0gYXJjaGl2ZSBleHRyYWN0aW9uIgorbXNnc3RyICJlc3RyYXppb25lIGNhbXBvIGRwa2ctZGViIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjg1NAorbXNnaWQgImVycm9yIHJlYWRpbmcgZHBrZy1kZWIgdGFyIG91dHB1dCIKK21zZ3N0ciAiZXJyb3JlIG5lbCBsZWdnZXJlIGlsIGZpbGUgdGFyIGNyZWF0byBkYSBkcGtnLWRlYiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NTYKK21zZ2lkICJjb3JydXB0ZWQgZmlsZXN5c3RlbSB0YXJmaWxlIC0gY29ycnVwdGVkIHBhY2thZ2UgYXJjaGl2ZSIKK21zZ3N0ciAiaWxlIHRhciByb3ZpbmF0byAtIGwnYXJjaGl2aW8gZGVsIHBhY2NoZXR0byDDqCBkYW5uZWdnaWF0byIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NTkKK21zZ2lkICJkcGtnLWRlYjogemFwIHBvc3NpYmxlIHRyYWlsaW5nIHplcm9zIgorbXNnc3RyICJkcGtnLWRlYjogcmltb3ppb25lIGRpIHBvc3NpYmlsaSBjYXJhdHRlcmkgbnVsbGkgdGVybWluYWxpIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjkxOQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgc3RhdCBvbGQgZmlsZSAnJS4yNTBzJyBzbyBub3QgZGVsZXRpbmcgaXQ6ICVzIgorbXNnc3RyICIiCisiaW1wb3NzaWJpbGUgZXNlZ3VpcmUgc3RhdCBkZWwgdmVjY2hpbyBmaWxlIFwiJS4yNTBzXCIsIG5vbiB2aWVuZSBlbGltaW5hdG86ICIKKyIlcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSBvbGQgZGlyZWN0b3J5ICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgZWxpbWluYXJlIGxhIHZlY2NoaWEgZGlyZWN0b3J5IFwiJS4yNTBzXCI6ICVzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjkyOAorIywgYy1mb3JtYXQKK21zZ2lkICJvbGQgY29uZmZpbGUgJyUuMjUwcycgd2FzIGFuIGVtcHR5IGRpcmVjdG9yeSAoYW5kIGhhcyBub3cgYmVlbiBkZWxldGVkKSIKK21zZ3N0ciAiIgorImlsIHZlY2NoaW8gZmlsZSBkaSBjb25maWd1cmF6aW9uZSBcIiUuMjUwc1wiIGVyYSB1bmEgZGlyZWN0b3J5IHZ1b3RhIChvcmEgw6ggIgorInN0YXRhIGVsaW1pbmF0YSkiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTc1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IG90aGVyIG5ldyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSBlc2VndWlyZSBzdGF0IHN1bGwnYWx0cm8gZmlsZSBudW92byBcIiUuMjUwc1wiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjk4NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisib2xkIGZpbGUgJyUuMjUwcycgaXMgdGhlIHNhbWUgYXMgc2V2ZXJhbCBuZXcgZmlsZXMhIChib3RoICclLjI1MHMnIGFuZCAiCisiJyUuMjUwcycpIgorbXNnc3RyICIiCisiaWwgdmVjY2hpbyBmaWxlIFwiJS4yNTBzXCIgw6ggbG8gc3Rlc3NvIGRpIG1vbHRpIG51b3ZpIGZpbGUgKHNpYSBcIiUuMjUwc1wiICIKKyJjaGUgXCIlLjI1MHNcIikiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTAyNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2VjdXJlbHkgcmVtb3ZlIG9sZCBmaWxlICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgcmltdW92ZXJlIGluIHNpY3VyZXp6YSBpbCB2ZWNjaGlvIGZpbGUgXCIlLjI1MHNcIjogJXMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTIwNgorIywgYy1mb3JtYXQKK21zZ2lkICIoTm90aW5nIGRpc2FwcGVhcmFuY2Ugb2YgJXMsIHdoaWNoIGhhcyBiZWVuIGNvbXBsZXRlbHkgcmVwbGFjZWQuKVxuIgorbXNnc3RyICIoSW1wb3NzaWJpbGUgdHJvdmFyZSAlcyBjaGUgw6ggc3RhdG8gY29tcGxldGFtZW50ZSBzb3N0aXR1aXRvLilcbiIKKworIyAobmR0KSBpZGVlIHN1bCBzaWduaWZpY2F0bz8KKyMuIFRSQU5TTEFUT1JTOiBUaGlzIGlzIHRoZSBoZWFkZXIgdGhhdCBhcHBlYXJzIG9uICdkcGtnLXF1ZXJ5IC1sJy4gVGhlCisjLiAqIHN0cmluZyBzaG91bGQgcmVtYWluIHVuZGVyIDgwIGNoYXJhY3RlcnMuIFRoZSB1cHBlcmNhc2UgbGV0dGVycyBpbgorIy4gKiB0aGUgc3RhdGUgdmFsdWVzIGRlbm90ZSB0aGUgYWJicmV2aWF0ZWQgbGV0dGVyIHRoYXQgd2lsbCBhcHBlYXIgb24KKyMuICogdGhlIGZpcnN0IHRocmVlIGNvbHVtbnMsIHdoaWNoIHNob3VsZCBpZGVhbGx5IG1hdGNoIHRoZSBFbmdsaXNoIG9uZQorIy4gKiAoZS5nLiBSZW1vdmUg4oaSIHN1cFJpbWVpeCksIHNlZSBkcGtnLXF1ZXJ5KDEpIGZvciBmdXJ0aGVyIGRldGFpbHMuIFRoZQorIy4gKiB0cmFuc2xhdGVkIG1lc3NhZ2UgY2FuIHVzZSBhZGRpdGlvbmFsIGxpbmVzIGlmIG5lZWRlZC4KKyM6IHNyYy9xdWVyeWNtZC5jOjE0OQorbXNnaWQgIiIKKyJEZXNpcmVkPVVua25vd24vSW5zdGFsbC9SZW1vdmUvUHVyZ2UvSG9sZFxuIgorInwgU3RhdHVzPU5vdC9JbnN0L0NvbmYtZmlsZXMvVW5wYWNrZWQvaGFsRi1jb25mL0hhbGYtaW5zdC90cmlnLWFXYWl0L1RyaWctIgorInBlbmRcbiIKKyJ8LyBFcnI/PShub25lKS9SZWluc3QtcmVxdWlyZWQgKFN0YXR1cyxFcnI6IHVwcGVyY2FzZT1iYWQpXG4iCittc2dzdHIgIiIKKyJEZXNpcmVkPVVua25vd24vSW5zdGFsbC9SZW1vdmUvUHVyZ2UvSG9sZFxuIgorInwgU3RhdHVzPU5vdC9JbnN0L0NvbmYtZmlsZXMvVW5wYWNrZWQvaGFsRi1jb25mL0hhbGYtaW5zdC90cmlnLWFXYWl0L1RyaWctIgorInBlbmRcbiIKKyJ8LyBFcnI/PShub25lKS9SZWluc3QtcmVxdWlyZWQgKFN0YXR1cyxFcnI6IHVwcGVyY2FzZT1iYWQpXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjE1MworbXNnaWQgIk5hbWUiCittc2dzdHIgIk5vbWUiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjE1MworbXNnaWQgIlZlcnNpb24iCittc2dzdHIgIlZlcnNpb25lIgorCisjOiBzcmMvcXVlcnljbWQuYzoxNTQKK21zZ2lkICJEZXNjcmlwdGlvbiIKK21zZ3N0ciAiRGVzY3JpemlvbmUiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI0NiBzcmMvcXVlcnljbWQuYzo1MTEgc3JjL3NlbGVjdC5jOjc1CisjLCBjLWZvcm1hdAorbXNnaWQgIk5vIHBhY2thZ2VzIGZvdW5kIG1hdGNoaW5nICVzLlxuIgorbXNnc3RyICJOZXNzdW4gcGFjY2hldHRvIGNvcnJpc3BvbmRlbnRlIGEgJXMuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI3MworIywgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnNpb24gYnkgJXMgZnJvbTogJXNcbiIKK21zZ3N0ciAiZGV2aWF6aW9uZSBkaSAlcyBkYTogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6Mjc1CisjLCBjLWZvcm1hdAorbXNnaWQgImRpdmVyc2lvbiBieSAlcyB0bzogJXNcbiIKK21zZ3N0ciAiZGV2aWF6aW9uZSBkaSAlcyBpbjogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6Mjc4CisjLCBjLWZvcm1hdAorbXNnaWQgImxvY2FsIGRpdmVyc2lvbiBmcm9tOiAlc1xuIgorbXNnc3RyICJkZXZpYXppb25lIGxvY2FsZSBkYTogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6Mjc5CisjLCBjLWZvcm1hdAorbXNnaWQgImxvY2FsIGRpdmVyc2lvbiB0bzogJXNcbiIKK21zZ3N0ciAiZGV2aWF6aW9uZSBsb2NhbGUgaW46ICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjMwOQorbXNnaWQgIi0tc2VhcmNoIG5lZWRzIGF0IGxlYXN0IG9uZSBmaWxlIG5hbWUgcGF0dGVybiBhcmd1bWVudCIKK21zZ3N0ciAiLS1zZWFyY2ggcmljaGllZGUgYWxtZW5vIHVuIG1vZGVsbG8gZGkgbm9tZSBmaWxlIGNvbWUgYXJnb21lbnRvIgorCisjOiBzcmMvcXVlcnljbWQuYzozNTAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIk5vIHBhY2thZ2VzIGZvdW5kIG1hdGNoaW5nICVzLlxuIgorbXNnaWQgIiVzOiBubyBwYXRoIGZvdW5kIG1hdGNoaW5nIHBhdHRlcm4gJXMuXG4iCittc2dzdHIgIk5lc3N1biBwYWNjaGV0dG8gY29ycmlzcG9uZGVudGUgYSAlcy5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MzkzCisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgYCVzJyBpcyBub3QgaW5zdGFsbGVkIGFuZCBubyBpbmZvIGlzIGF2YWlsYWJsZS5cbiIKK21zZ3N0ciAiIgorIklsIHBhY2NoZXR0byBcIiVzXCIgbm9uIMOoIGluc3RhbGxhdG8gZSBub24gw6ggZGlzcG9uaWJpbGUgYWxjdW5hICIKKyJpbmZvcm1hemlvbmUuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQwMQorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlIGAlcycgaXMgbm90IGF2YWlsYWJsZS5cbiIKK21zZ3N0ciAiSWwgcGFjY2hldHRvIFwiJXNcIiBub24gw6ggZGlzcG9uaWJpbGUuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQxMCBzcmMvcXVlcnljbWQuYzo1ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSBgJXMnIGlzIG5vdCBpbnN0YWxsZWQuXG4iCittc2dzdHIgIklsIHBhY2NoZXR0byBcIiVzXCIgbm9uIMOoIGluc3RhbGxhdG8uXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQxOAorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlIGAlcycgZG9lcyBub3QgY29udGFpbiBhbnkgZmlsZXMgKCEpXG4iCittc2dzdHIgIklsIHBhY2NoZXR0byBcIiVzXCIgbm9uIGNvbnRpZW5lIGFsY3VuIGZpbGUgKCEpXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQyNQorIywgYy1mb3JtYXQKK21zZ2lkICJsb2NhbGx5IGRpdmVydGVkIHRvOiAlc1xuIgorbXNnc3RyICJkaXZlcmdlIGxvY2FsbWVudGUgaW46ICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQyOAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGRpdmVydHMgb3RoZXJzIHRvOiAlc1xuIgorbXNnc3RyICJpbCBwYWNjaGV0dG8gbmUgZGl2ZXJnZSBhbHRyaSBpbjogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDMxCisjLCBjLWZvcm1hdAorbXNnaWQgImRpdmVydGVkIGJ5ICVzIHRvOiAlc1xuIgorbXNnc3RyICJkaXZlcmdlIGRhICVzIGluOiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0NTIKK21zZ2lkICIiCisiVXNlIGRwa2cgLS1pbmZvICg9IGRwa2ctZGViIC0taW5mbykgdG8gZXhhbWluZSBhcmNoaXZlIGZpbGVzLFxuIgorImFuZCBkcGtnIC0tY29udGVudHMgKD0gZHBrZy1kZWIgLS1jb250ZW50cykgdG8gbGlzdCB0aGVpciBjb250ZW50cy5cbiIKK21zZ3N0ciAiIgorIlVzYXJlIFwiZHBrZyAtLWluZm9cIiAoPSBcImRwa2ctZGViIC0taW5mb1wiKSBwZXIgZXNhbWluYXJlIGdsaSBhcmNoaXZpIGVcbiIKKyJcImRwa2cgLS1jb250ZW50c1wiICg9IFwiZHBrZy1kZWIgLS1jb250ZW50c1wiKSBwZXIgZWxlbmNhcm5lIGlsIGNvbnRlbnV0by5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NTcwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgYXQgbW9zdCB0d28gYXJndW1lbnRzIgorbXNnc3RyICItLSVzIGFjY2V0dGEgYWwgbWFzc2ltbyBkdWUgYXJnb21lbnRpIgorCisjOiBzcmMvcXVlcnljbWQuYzo1NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29udHJvbCBmaWxlIGNvbnRhaW5zICVjIgorbXNnc3RyICJpbCBmaWxlIGRpIGNvbnRyb2xsbyBjb250aWVuZSAlYyIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjAwCisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiAlcyBwYWNrYWdlIG1hbmFnZW1lbnQgcHJvZ3JhbSBxdWVyeSB0b29sIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIiIKKyJTdHJ1bWVudG8gZGkgaW50ZXJyb2dhemlvbmUgZGVsbGEgZ2VzdGlvbmUgZGVpIHBhY2NoZXR0aSBEZWJpYW4gJXMgdmVyc2lvbmUgIgorIiVzLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo2MTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJDb21tYW5kczpcbiIKKyN8ICIgIC1zfC0tc3RhdHVzIDxwYWNrYWdlPiAuLi4gICAgICAgIERpc3BsYXkgcGFja2FnZSBzdGF0dXMgZGV0YWlscy5cbiIKKyN8ICIgIC1wfC0tcHJpbnQtYXZhaWwgPHBhY2thZ2U+IC4uLiAgIERpc3BsYXkgYXZhaWxhYmxlIHZlcnNpb24gZGV0YWlscy5cbiIKKyN8ICIgIC1MfC0tbGlzdGZpbGVzIDxwYWNrYWdlPiAuLi4gICAgIExpc3QgZmlsZXMgYG93bmVkJyBieSBwYWNrYWdlKHMpLlxuIgorI3wgIiAgLWx8LS1saXN0IFs8cGF0dGVybj4gLi4uXSAgICAgICAgTGlzdCBwYWNrYWdlcyBjb25jaXNlbHkuXG4iCisjfCAiICAtV3wtLXNob3cgPHBhdHRlcm4+IC4uLiAgICAgICAgICBTaG93IGluZm9ybWF0aW9uIG9uIHBhY2thZ2UocykuXG4iCisjfCAiICAtU3wtLXNlYXJjaCA8cGF0dGVybj4gLi4uICAgICAgICBGaW5kIHBhY2thZ2Uocykgb3duaW5nIGZpbGUocykuXG4iCisjfCAiICAtY3wtLWNvbnRyb2wtcGF0aCA8cGFja2FnZT4gWzxmaWxlPl1cbiIKKyN8ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFByaW50IHBhdGggZm9yIHBhY2thZ2UgY29udHJvbCBmaWxlLlxuIgorI3wgIlxuIgorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1zfC0tc3RhdHVzIDxwYWNrYWdlPiAuLi4gICAgICAgIERpc3BsYXkgcGFja2FnZSBzdGF0dXMgZGV0YWlscy5cbiIKKyIgIC1wfC0tcHJpbnQtYXZhaWwgPHBhY2thZ2U+IC4uLiAgIERpc3BsYXkgYXZhaWxhYmxlIHZlcnNpb24gZGV0YWlscy5cbiIKKyIgIC1MfC0tbGlzdGZpbGVzIDxwYWNrYWdlPiAuLi4gICAgIExpc3QgZmlsZXMgYG93bmVkJyBieSBwYWNrYWdlKHMpLlxuIgorIiAgLWx8LS1saXN0IFs8cGF0dGVybj4gLi4uXSAgICAgICAgTGlzdCBwYWNrYWdlcyBjb25jaXNlbHkuXG4iCisiICAtV3wtLXNob3cgWzxwYXR0ZXJuPiAuLi5dICAgICAgICBTaG93IGluZm9ybWF0aW9uIG9uIHBhY2thZ2UocykuXG4iCisiICAtU3wtLXNlYXJjaCA8cGF0dGVybj4gLi4uICAgICAgICBGaW5kIHBhY2thZ2Uocykgb3duaW5nIGZpbGUocykuXG4iCisiICAtY3wtLWNvbnRyb2wtcGF0aCA8cGFja2FnZT4gWzxmaWxlPl1cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFByaW50IHBhdGggZm9yIHBhY2thZ2UgY29udHJvbCBmaWxlLlxuIgorIlxuIgorbXNnc3RyICIiCisiQ29tYW5kaTpcbiIKKyIgIC1zfC0tc3RhdHVzIDxwYWNjaGV0dG8+IC4uLiAgICAgIFZpc3VhbGl6emEgZGV0dGFnbGkgc3VsbG8gc3RhdG8gZGVsICIKKyJwYWNjaGV0dG9cbiIKKyIgIC1wfC0tcHJpbnQtYXZhaWwgPHBhY2NoZXR0bz4gLi4uIFZpc3VhbGl6emEgZGV0dGFnbGkgc3VsbGEgdmVyc2lvbmVcbiIKKyIgIC1MfC0tbGlzdGZpbGVzIDxwYWNjaGV0dG8+IC4uLiAgIEVsZW5jYSBpIGZpbGUgZGVsIHBhY2NoZXR0b1xuIgorIiAgLWx8LS1saXN0IFs8bW9kZWxsbz4gLi4uXSAgICAgICAgRWxlbmNhIGJyZXZlbWVudGUgaSBwYWNjaGV0dGlcbiIKKyIgIC1XfC0tc2hvdyA8bW9kZWxsbz4gLi4uICAgICAgICAgIE1vc3RyYSBpbmZvcm1hemlvbmkgc3VpIHBhY2NoZXR0aVxuIgorIiAgLVN8LS1zZWFyY2ggPG1vZGVsbG8+IC4uLiAgICAgICAgVHJvdmEgaSBwYWNjaGV0dGkgYSBjdWkgYXBwYXJ0ZW5nb25vIGkgIgorImZpbGVcbiIKKyIgIC1jfC0tY29udHJvbC1wYXRoIDxwYWNoZXR0bz4gWzxmaWxlPl1cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0YW1wYSBpbCBwZXJjb3JzbyBwZXIgaWwgZmlsZSBkaSAiCisiY29udHJvbGxvIGRlbCBwYWNjaGV0dG9cbiIKKyJcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjM2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hZG1pbmRpcj08ZGlyZWN0b3J5PiAgICAgICAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMuXG4iCisiICAtZnwtLXNob3dmb3JtYXQ9PGZvcm1hdD4gICAgICAgICBVc2UgYWx0ZXJuYXRpdmUgZm9ybWF0IGZvciAtLXNob3cuXG4iCisiXG4iCittc2dzdHIgIiIKKyJPcHppb25pOlxuIgorIiAgLS1hZG1pbmRpcj08ZGlyZWN0b3J5PiAgICAgICAgICAgVXNhIGxhIDxkaXJlY3Rvcnk+IGFsIHBvc3RvIGRpICVzXG4iCisiICAtZnwtLXNob3dmb3JtYXQ9PGZvcm1hdG8+ICAgICAgICBVc2EgdW4gZm9ybWF0byBhbHRlcm5hdGl2byBwZXIgLS1zaG93XG4iCisiXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjY0MiBkcGtnLWRlYi9tYWluLmM6MTEyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJGb3JtYXQgc3ludGF4OlxuIgorIiAgQSBmb3JtYXQgaXMgYSBzdHJpbmcgdGhhdCB3aWxsIGJlIG91dHB1dCBmb3IgZWFjaCBwYWNrYWdlLiBUaGUgZm9ybWF0XG4iCisiICBjYW4gaW5jbHVkZSB0aGUgc3RhbmRhcmQgZXNjYXBlIHNlcXVlbmNlcyBcXG4gKG5ld2xpbmUpLCBcXHIgKGNhcnJpYWdlXG4iCisiICByZXR1cm4pIG9yIFxcXFwgKHBsYWluIGJhY2tzbGFzaCkuIFBhY2thZ2UgaW5mb3JtYXRpb24gY2FuIGJlIGluY2x1ZGVkXG4iCisiICBieSBpbnNlcnRpbmcgdmFyaWFibGUgcmVmZXJlbmNlcyB0byBwYWNrYWdlIGZpZWxkcyB1c2luZyB0aGUgJHt2YXJbOyIKKyJ3aWR0aF19XG4iCisiICBzeW50YXguIEZpZWxkcyB3aWxsIGJlIHJpZ2h0LWFsaWduZWQgdW5sZXNzIHRoZSB3aWR0aCBpcyBuZWdhdGl2ZSBpbiAiCisid2hpY2hcbiIKKyIgIGNhc2UgbGVmdCBhbGlnbm1lbnQgd2lsbCBiZSB1c2VkLlxuIgorbXNnc3RyICIiCisiU2ludGFzc2kgZGVsIGZvcm1hdG86XG4iCisiICBVbiBmb3JtYXRvIMOoIHVuYSBzdHJpbmdhIGRpIG91dHB1dCBwZXIgb2duaSBwYWNjaGV0dG8uIElsIGZvcm1hdG9cbiIKKyIgIHB1w7IgY29tcHJlbmRlcmUgbGUgbm9ybWFsaSBzZXF1ZW56ZSBkaSBlc2NhcGUgXFxuIChuZXdsaW5lKSwgXFxyICIKKyIoY2FycmlhZ2VcbiIKKyIgIHJldHVybikgb3BwdXJlIFxcXFwgKGJhY2tzbGFzaCkuIExlIGluZm9ybWF6aW9uaSBzdWwgcGFjY2hldHRvIHBvc3Nvbm8gIgorImVzc2VyZVxuIgorIiAgaW5jbHVzZSwgaW5zZXJlbmRvIHJpZmVyaW1lbnRpIHZhcmlhYmlsaSBhaSBjYW1waSBkZWkgcGFjY2hldHRpLCAiCisidXRpbGl6emFuZG9cbiIKKyIgIGxhIHNpbnRhc3NpICR7dmFyWzt3aWR0aF19LiBJIGNhbXBpIHNhcmFubm8gYWxsaW5lYXRpIGEgZGVzdHJhIGEgbWVubyBjaGUgIgorImxhXG4iCisiICBsYXJnaGV6emEgbm9uIGFiYmlhIHZhbG9yZSBuZWdhdGl2bywgbmVsIHF1YWwgY2FzbyBsJ2FsbGluZWFtZW50byBzYXLDoCBhXG4iCisiICBzaW5pc3RyYS5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjU2Cittc2dpZCAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBxdWVyeWluZyBwYWNrYWdlcy4iCittc2dzdHIgIiIKKyJVc2FyZSAtLWhlbHAgcGVyIHVuIGFpdXRvIHN1IGNvbWUgZXNlZ3VpcmUgaW50ZXJyb2dhemlvbmkgc3VpIHBhY2NoZXR0aS4iCisKKyM6IHNyYy9yZW1vdmUuYzo4OAorIywgYy1mb3JtYXQKK21zZ2lkICJpZ25vcmluZyByZXF1ZXN0IHRvIHJlbW92ZSAlLjI1MHMgd2hpY2ggaXNuJ3QgaW5zdGFsbGVkLiIKK21zZ3N0ciAiIgorInZpZW5lIGlnbm9yYXRhIGxhIHJpY2hpZXN0YSBkaSByaW11b3ZlcmUgJS4yNTBzIHBvaWNow6kgbm9uIMOoIGluc3RhbGxhdG8uIgorCisjOiBzcmMvcmVtb3ZlLmM6OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImlnbm9yaW5nIHJlcXVlc3QgdG8gcmVtb3ZlICUuMjUwcywgb25seSB0aGUgY29uZmlnXG4iCisiIGZpbGVzIG9mIHdoaWNoIGFyZSBvbiB0aGUgc3lzdGVtLiBVc2UgLS1wdXJnZSB0byByZW1vdmUgdGhlbSB0b28uIgorbXNnc3RyICIiCisidmllbmUgaWdub3JhdGEgbGEgcmljaGllc3RhIGRpIHJpbXVvdmVyZSAlLjI1MHMsIHNvbG8gaSBmaWxlXG4iCisiZGkgY29uZmlndXJhemlvbmUgc29ubyBwcmVzZW50aSBuZWwgc2lzdGVtYS4gVXNhcmUgLS1wdXJnZSBwZXIgcmltdW92ZXJsaS4iCisKKyM6IHNyYy9yZW1vdmUuYzoxMDMKK21zZ2lkICJUaGlzIGlzIGFuIGVzc2VudGlhbCBwYWNrYWdlIC0gaXQgc2hvdWxkIG5vdCBiZSByZW1vdmVkLiIKK21zZ3N0ciAiUXVlc3RvIMOoIHVuIHBhY2NoZXR0byBlc3NlbnppYWxlIC0gbm9uIGRvdnJlYmJlIGVzc2VyZSByaW1vc3NvLiIKKworIzogc3JjL3JlbW92ZS5jOjEyOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogZGVwZW5kZW5jeSBwcm9ibGVtcyBwcmV2ZW50IHJlbW92YWwgb2YgJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiBwcm9ibGVtaSBjb24gbGUgZGlwZW5kZW56ZSBpbXBlZGlzY29ubyBsYSByaW1vemlvbmUgZGkgJXM6XG4iCisiJXMiCisKKyM6IHNyYy9yZW1vdmUuYzoxMzAKK21zZ2lkICJkZXBlbmRlbmN5IHByb2JsZW1zIC0gbm90IHJlbW92aW5nIgorbXNnc3RyICJwcm9ibGVtaSBjb24gbGUgZGlwZW5kZW56ZSAtIHJpbW96aW9uZSBub24gcG9zc2liaWxlIgorCisjOiBzcmMvcmVtb3ZlLmM6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiAlczogZGVwZW5kZW5jeSBwcm9ibGVtcywgYnV0IHJlbW92aW5nIGFueXdheSBhcyB5b3UgcmVxdWVzdGVkOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogJXM6IHByb2JsZW1pIGNvbiBsZSBkaXBlbmRlbnplLCBtYSB2aWVuZSByaW1vc3NvIGNvbXVucXVlOlxuIgorIiVzIgorCisjOiBzcmMvcmVtb3ZlLmM6MTQyCittc2dpZCAiIgorIlBhY2thZ2UgaXMgaW4gYSB2ZXJ5IGJhZCBpbmNvbnNpc3RlbnQgc3RhdGUgLSB5b3Ugc2hvdWxkXG4iCisiIHJlaW5zdGFsbCBpdCBiZWZvcmUgYXR0ZW1wdGluZyBhIHJlbW92YWwuIgorbXNnc3RyICIiCisiSWwgcGFjY2hldHRvIHNpIHRyb3ZhIGluIHVubyBzdGF0byBkaSBpbmNvbnNpc3RlbnphIGdyYXZlIC0gw6hcbiIKKyIgbmVjZXNzYXJpbyByZWluc3RhbGxhcmxvIHByaW1hIGRpIHJpbXVvdmVybG8uIgorCisjOiBzcmMvcmVtb3ZlLmM6MTQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIldvdWxkIHJlbW92ZSBvciBwdXJnZSAlcyAuLi5cbiIKK21zZ3N0ciAiVGVudGF0aXZvIGRpIHJpbXVvdmVyZSBvIGVsaW1pbmFyZSAlcy4uLlxuIgorCisjOiBzcmMvcmVtb3ZlLmM6MTU3CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlbW92aW5nICVzIC4uLlxuIgorbXNnc3RyICJSaW1vemlvbmUgZGkgJXMuLi5cbiIKKworIzogc3JjL3JlbW92ZS5jOjI3NSBzcmMvcmVtb3ZlLmM6MzY2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ3aGlsZSByZW1vdmluZyAlLjI1MHMsIHVuYWJsZSB0byByZW1vdmUgZGlyZWN0b3J5ICclLjI1MHMnOiAlcyAtIGRpcmVjdG9yeSAiCisibWF5IGJlIGEgbW91bnQgcG9pbnQ/IgorbXNnc3RyICIiCisibmVsIHJpbXVvdmVyZSAlLjI1MHMgbm9uIMOoIHN0YXRvIHBvc3NpYmlsZSByaW11b3ZlcmUgbGEgZGlyZWN0b3J5IFwiJS4yNTBzIgorIlwiOiAlcyAtIMOoIHVuIHB1bnRvIGRpIG1vdW50PyIKKworIzogc3JjL3JlbW92ZS5jOjI4OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2VjdXJlbHkgcmVtb3ZlICclLjI1MHMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSByaW11b3ZlcmUgaW4gc2ljdXJlenphIFwiJS4yNTBzXCIiCisKKyM6IHNyYy9yZW1vdmUuYzozNjEKKyMsIGMtZm9ybWF0Cittc2dpZCAid2hpbGUgcmVtb3ZpbmcgJS4yNTBzLCBkaXJlY3RvcnkgJyUuMjUwcycgbm90IGVtcHR5IHNvIG5vdCByZW1vdmVkLiIKK21zZ3N0ciAiIgorIm5lbCByaW11b3ZlcmUgJS4yNTBzIGxhIGRpcmVjdG9yeSBcIiUuMjUwc1wiIMOoIHJpc3VsdGF0YSBub24gdnVvdGEgZSBub24gIgorInZpZW5lIHJpbW9zc2EuIgorCisjOiBzcmMvcmVtb3ZlLmM6MzgzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW5ub3QgcmVtb3ZlIGAlLjI1MHMnIgorbXNnaWQgImNhbm5vdCByZW1vdmUgJyUuMjUwcyciCittc2dzdHIgImltcG9zc2liaWxlIHJpbXVvdmVyZSBcIiUuMjUwc1wiIgorCisjOiBzcmMvcmVtb3ZlLmM6NDA5CisjLCBjLWZvcm1hdAorbXNnaWQgIlB1cmdpbmcgY29uZmlndXJhdGlvbiBmaWxlcyBmb3IgJXMgLi4uXG4iCittc2dzdHIgIkVsaW1pbmF6aW9uZSBkZWkgZmlsZSBkaSBjb25maWd1cmF6aW9uZSBkaSAlcy4uLlxuIgorCisjOiBzcmMvcmVtb3ZlLmM6NDU5CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZW1vdmUgb2xkIGNvbmZpZyBmaWxlIGAlLjI1MHMnICg9IGAlLjI1MHMnKSIKK21zZ3N0ciAiIgorImltcG9zc2liaWxlIHJpbXVvdmVyZSBpbCB2ZWNjaGlvIGZpbGUgZGkgY29uZmlndXJhemlvbmUgXCIlLjI1MHNcIikgKD0gIgorIlwiJS4yNTBzXCIpIgorCisjOiBzcmMvcmVtb3ZlLmM6NDc0CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZWFkIGNvbmZpZyBmaWxlIGRpciBgJS4yNTBzJyAoZnJvbSBgJS4yNTBzJykiCittc2dzdHIgIiIKKyJpbXBvc3NpYmlsZSBsZWdnZXJlIGxhIGRpcmVjdG9yeSBkZWwgZmlsZSBkaSBjb25maWd1cmF6aW9uZSBcIiUuMjUwc1wiIChkYSAiCisiXCIlLjI1MHNcIikiCisKKyM6IHNyYy9yZW1vdmUuYzo1MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlbW92ZSBvbGQgYmFja3VwIGNvbmZpZyBmaWxlIGAlLjI1MHMnIChvZiBgJS4yNTBzJykiCittc2dzdHIgIiIKKyJpbXBvc3NpYmlsZSByaW11b3ZlcmUgbGEgdmVjY2hpYSBjb3BpYSBkaSBiYWNrdXAgZGVsIGZpbGUgZGkgY29uZmlndXJhemlvbmUgIgorIlwiJS4yNTBzXCIpIChkaSBcIiUuMjUwc1wiKSIKKworIzogc3JjL3JlbW92ZS5jOjU2OAorbXNnaWQgImNhbm5vdCByZW1vdmUgb2xkIGZpbGVzIGxpc3QiCittc2dzdHIgImltcG9zc2liaWxlIHJpbXVvdmVyZSBpbCB2ZWNjaGlvIGVsZW5jbyBkZWkgZmlsZSIKKworIzogc3JjL3JlbW92ZS5jOjU3NAorbXNnaWQgImNhbid0IHJlbW92ZSBvbGQgcG9zdHJtIHNjcmlwdCIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgcmltdW92ZXJlIGlsIHZlY2NoaW8gc2NyaXB0IHBvc3RybSIKKworIzogc3JjL3NlbGVjdC5jOjExNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVvZiBpbiBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZCIKK21zZ3N0ciAiZW9mIGluYXR0ZXNvIG5lbCBub21lIGRlbCBwYWNjaGV0dG8gYWxsYSByaWdhICVkIgorCisjOiBzcmMvc2VsZWN0LmM6MTE2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGxpbmUgaW4gcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQiCittc2dzdHIgImZpbmUgcmlnYSBpbmF0dGVzYSBuZWwgbm9tZSBkZWwgcGFjY2hldHRvIGFsbGEgcmlnYSAlZCIKKworIzogc3JjL3NlbGVjdC5jOjEyMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVvZiBhZnRlciBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZCIKK21zZ3N0ciAiZW9mIGluYXR0ZXNvIGRvcG8gaWwgbm9tZSBkZWwgcGFjY2hldHRvIGFsbGEgcmlnYSAlZCIKKworIzogc3JjL3NlbGVjdC5jOjEyMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBsaW5lIGFmdGVyIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICJmaW5lIHJpZ2EgaW5hdHRlc28gZG9wbyBpbCBub21lIGRlbCBwYWNjaGV0dG8gYWxsYSByaWdhICVkIgorCisjOiBzcmMvc2VsZWN0LmM6MTM2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZGF0YSBhZnRlciBwYWNrYWdlIGFuZCBzZWxlY3Rpb24gYXQgbGluZSAlZCIKK21zZ3N0ciAiZGF0aSBpbmFzcGV0dGF0aSBkb3BvIGlsIHBhY2NoZXR0byBlIGxhIHNlbGV6aW9uZSBhbGxhIHJpZ2EgJWQiCisKKyM6IHNyYy9zZWxlY3QuYzoxMzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWxsZWdhbCBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZDogJS4yNTBzIgorbXNnc3RyICJub21lIGRpIHBhY2NoZXR0byBub24gdmFsaWRvIGFsbGEgcmlnYSAlZDogJS4yNTBzIgorCisjOiBzcmMvc2VsZWN0LmM6MTQzCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gd2FudGVkIHN0YXR1cyBhdCBsaW5lICVkOiAlLjI1MHMiCittc2dzdHIgInN0YXRvIGRlc2lkZXJhdG8gc2Nvbm9zY2l1dG8gYWxsYSByaWdhICVkOiAlLjI1MHMiCisKKyM6IHNyYy9zZWxlY3QuYzoxNDkKK21zZ2lkICJyZWFkIGVycm9yIG9uIHN0YW5kYXJkIGlucHV0IgorbXNnc3RyICJlcnJvcmUgZGkgbGV0dHVyYSBzdWxsbyBzdGFuZGFyZCBpbnB1dCIKKworIzogc3JjL3N0YXRjbWQuYzo1MgorIywgZnV6enkKKyN8IG1zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IHF1ZXJ5aW5nIHBhY2thZ2VzLiIKK21zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IG92ZXJyaWRpbmcgZmlsZSBzdGF0IGluZm9ybWF0aW9uLiIKK21zZ3N0ciAiIgorIlVzYXJlIC0taGVscCBwZXIgdW4gYWl1dG8gc3UgY29tZSBlc2VndWlyZSBpbnRlcnJvZ2F6aW9uaSBzdWkgcGFjY2hldHRpLiIKKworIzogc3JjL3N0YXRjbWQuYzo2MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29weXJpZ2h0IChDKSAyMDAwLCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDA2LTIwMDkgR3VpbGxlbSBKb3Zlci5cbiIKK21zZ3N0ciAiIgorIkNvcHlyaWdodCDCqSAyMDAwLCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IMKpIDIwMDYtMjAwOSBHdWlsbGVtIEpvdmVyLlxuIgorCisjOiBzcmMvc3RhdGNtZC5jOjgxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC0tYWRkIDxvd25lcj4gPGdyb3VwPiA8bW9kZT4gPGZpbGU+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkIGEgbmV3IGVudHJ5IGludG8gdGhlIGRhdGFiYXNlLlxuIgorIiAgLS1yZW1vdmUgPGZpbGU+ICAgICAgICAgIHJlbW92ZSBmaWxlIGZyb20gdGhlIGRhdGFiYXNlLlxuIgorIiAgLS1saXN0IFs8Z2xvYi1wYXR0ZXJuPl0gIGxpc3QgY3VycmVudCBvdmVycmlkZXMgaW4gdGhlIGRhdGFiYXNlLlxuIgorIlxuIgorbXNnc3RyICIiCisiQ29tYW5kaTpcbiIKKyIgIC0tYWRkIDxwcm9wcmlldGFyaW8+IDxncnVwcG8+IDxtb2RhbGl0w6A+IDxmaWxlPlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIEFnZ2l1bmdlIHVuYSBudW92YSB2b2NlIGFsIGRhdGFiYXNlXG4iCisiICAtLXJlbW92ZSA8ZmlsZT4gICAgICAgICAgUmltdW92ZSBpbCBmaWxlIGRhbCBkYXRhYmFzZVxuIgorIiAgLS1saXN0IFs8Z2xvYi1wYXR0ZXJuPl0gIEVsZW5jYSBnbGkgb3ZlcnJpZGUgbmVsIGRhdGFiYXNlXG4iCisKKyM6IHNyYy9zdGF0Y21kLmM6ODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgc2V0IHRoZSBkaXJlY3Rvcnkgd2l0aCB0aGUgc3RhdG92ZXJyaWRlIGZpbGUuXG4iCisiICAtLXVwZGF0ZSAgICAgICAgICAgICAgICAgaW1tZWRpYXRlbHkgdXBkYXRlIGZpbGUgcGVybWlzc2lvbnMuXG4iCisiICAtLWZvcmNlICAgICAgICAgICAgICAgICAgZm9yY2UgYW4gYWN0aW9uIGV2ZW4gaWYgYSBzYW5pdHkgY2hlY2sgZmFpbHMuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgcXVpZXQgb3BlcmF0aW9uLCBtaW5pbWFsIG91dHB1dC5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCittc2dzdHIgIiIKKyJPcHppb25pOlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIEltcG9zdGEgbGEgZGlyZWN0b3J5IGNvbiBpbCBmaWxlIGRpIHN0YXRvdmVycmlkZVxuIgorIiAgLS11cGRhdGUgICAgICAgICAgICAgICAgIEFnZ2lvcm5hIGltbWVkaWF0YW1lbnRlIGkgcGVybWVzc2kgZGVsIGZpbGVcbiIKKyIgIC0tZm9yY2UgICAgICAgICAgICAgICAgICBGb3J6YSB1bidhemlvbmUgYW5jaGUgc2UgaWwgY29udHJvbGxvIG5vbiByaWVzY2VcbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBPcGVyYXppb25lIHNpbGVuemlvbmEsIG91dHB1dCBtaW5pbW9cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICBNb3N0cmEgcXVlc3RvIG1lc3NhZ2dpbyBkaSBhaXV0b1xuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIE1vc3RyYSBsYSB2ZXJzaW9uZVxuIgorCisjOiBzcmMvc3RhdGNtZC5jOjExNgorbXNnaWQgInN0cmlwcGluZyB0cmFpbGluZyAvIgorbXNnc3RyICJ2ZW5nb25vIHRvbHRpIGdsaSAvIGluIGNvZGEiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjA3Cittc2dpZCAiY2Fubm90IG9wZW4gbmV3IHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJpbXBvc3NpYmlsZSBhcHJpcmUgaWwgbnVvdm8gZmlsZSBzdGF0b3ZlcnJpZGUiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjIyCittc2dpZCAiZXJyb3IgcmVtb3Zpbmcgc3RhdG92ZXJyaWRlLW9sZCIKK21zZ3N0ciAiZXJyb3JlIG5lbCByaW11b3ZlcmUgc3RhdG92ZXJyaWRlLW9sZCIKKworIzogc3JjL3N0YXRjbWQuYzoyMjQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBuZXcgc3RhdG92ZXJyaWRlLW9sZCIKK21zZ3N0ciAiZXJyb3JlIG5lbCBjcmVhcmUgaWwgbnVvdm8gc3RhdG92ZXJyaWRlLW9sZCIKKworIzogc3JjL3N0YXRjbWQuYzoyMjYKK21zZ2lkICJlcnJvciBpbnN0YWxsaW5nIG5ldyBzdGF0b3ZlcnJpZGUiCittc2dzdHIgImVycm9yZSBuZWxsJ2luc3RhbGxhcmUgaWwgbnVvdm8gc3RhdG92ZXJyaWRlIgorCisjOiBzcmMvc3RhdGNtZC5jOjI0NgorbXNnaWQgIi0tYWRkIG5lZWRzIGZvdXIgYXJndW1lbnRzIgorbXNnc3RyICItLWFkZCByaWNoaWVkZSBxdWF0dHJvIGFyZ29tZW50aSIKKworIzogc3JjL3N0YXRjbWQuYzoyNTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkFuIG92ZXJyaWRlIGZvciAnJXMnIGFscmVhZHkgZXhpc3RzLCBidXQgLS1mb3JjZSBzcGVjaWZpZWQgc28gd2lsbCBiZSAiCisiaWdub3JlZC4iCittc2dzdHIgIiIKKyJFc2lzdGUgZ2nDoCB1biBvdmVycmlkZSBwZXIgXCIlc1wiLCBtYSBsJ29wemlvbmUgLS1mb3JjZSDDqCBzdGF0YSBzcGVjaWZpY2F0YSwgIgorInF1aW5kaSB2aWVuZSBpZ25vcmF0by4iCisKKyM6IHNyYy9zdGF0Y21kLmM6MjYwCisjLCBjLWZvcm1hdAorbXNnaWQgIkFuIG92ZXJyaWRlIGZvciAnJXMnIGFscmVhZHkgZXhpc3RzLCBhYm9ydGluZy4iCittc2dzdHIgIkVzaXN0ZSBnacOgIHVuIG92ZXJyaWRlIHBlciBcIiVzXCIsIHVzY2l0YS4iCisKKyM6IHNyYy9zdGF0Y21kLmM6MjcyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tdXBkYXRlIGdpdmVuIGJ1dCAlcyBkb2VzIG5vdCBleGlzdCIKK21zZ3N0ciAiZm9ybml0byAtLXVwZGF0ZSwgbWEgJXMgbm9uIGVzaXN0ZSIKKworIzogc3JjL3N0YXRjbWQuYzoyOTYKK21zZ2lkICJObyBvdmVycmlkZSBwcmVzZW50LiIKK21zZ3N0ciAiTmVzc3VuIG92ZXJyaWRlIHByZXNlbnRlLiIKKworIzogc3JjL3N0YXRjbWQuYzozMDQKK21zZ2lkICItLXVwZGF0ZSBpcyB1c2VsZXNzIGZvciAtLXJlbW92ZSIKK21zZ3N0ciAiLS11cGRhdGUgw6ggaW51dGlsZSBwZXIgLS1yZW1vdmUiCisKKyM6IHNyYy9zdGF0ZGIuYzo1OQorbXNnaWQgInN5bnRheCBlcnJvcjogaW52YWxpZCB1aWQgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgImVycm9yZSBkaSBzaW50YXNzaTogVUlEIG5vbiB2YWxpZG8gbmVsIGZpbGUgc3RhdG92ZXJyaWRlIgorCisjOiBzcmMvc3RhdGRiLmM6NjQKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yOiB1bmtub3duIHVzZXIgJyVzJyBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiZXJyb3JlIGRpIHNpbnRhc3NpOiB1dGVudGUgXCIlc1wiIHNjb25vc2NpdXRvIG5lbCBmaWxlIHN0YXRvdmVycmlkZSIKKworIzogc3JjL3N0YXRkYi5jOjgzCittc2dpZCAic3ludGF4IGVycm9yOiBpbnZhbGlkIGdpZCBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiZXJyb3JlIGRpIHNpbnRhc3NpOiBHSUQgbm9uIHZhbGlkbyBuZWwgZmlsZSBzdGF0b3ZlcnJpZGUiCisKKyM6IHNyYy9zdGF0ZGIuYzo4OAorIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3I6IHVua25vd24gZ3JvdXAgJyVzJyBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiZXJyb3JlIGRpIHNpbnRhc3NpOiBncnVwcG8gXCIlc1wiIHNjb25vc2NpdXRvIG5lbCBmaWxlIHN0YXRvdmVycmlkZSIKKworIzogc3JjL3N0YXRkYi5jOjEwNAorbXNnaWQgInN5bnRheCBlcnJvcjogaW52YWxpZCBtb2RlIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJlcnJvcmUgZGkgc2ludGFzc2k6IG1vZGFsaXTDoCBlcnJhdGEgbmVsIGZpbGUgc3RhdG92ZXJyaWRlIgorCisjOiBzcmMvc3RhdGRiLmM6MTI3Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgImFwZXJ0dXJhIGRlbCBmaWxlIHN0YXRvdmVycmlkZSBub24gcml1c2NpdGEiCisKKyM6IHNyYy9zdGF0ZGIuYzoxMzQKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgImVzZWN1emlvbmUgZGkgZnN0YXQgc3VsIGZpbGUgc3RhdG92ZXJyaWRlIG5vbiByaXVzY2l0YSIKKworIzogc3JjL3N0YXRkYi5jOjEzNworbXNnaWQgImZhaWxlZCB0byBmc3RhdCBwcmV2aW91cyBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiZXNlY3V6aW9uZSBkaSBmc3RhdCBzdWwgZmlsZSBzdGF0b3ZlcnJpZGUgcHJlY2VkZW50ZSBub24gcml1c2NpdGEiCisKKyM6IHNyYy9zdGF0ZGIuYzoxNjIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInN0YXRvdmVycmlkZSBmaWxlIGAlLjI1MHMnIgorbXNnaWQgInJlYWRpbmcgc3RhdG92ZXJyaWRlIGZpbGUgJyUuMjUwcyciCittc2dzdHIgImZpbGUgc3RhdG92ZXJyaWRlIFwiJS4yNTBzXCIiCisKKyM6IHNyYy9zdGF0ZGIuYzoxNjkKK21zZ2lkICJzdGF0b3ZlcnJpZGUgZmlsZSBpcyBtaXNzaW5nIGZpbmFsIG5ld2xpbmUiCittc2dzdHIgImlsIGZpbGUgc3RhdG92ZXJyaWRlIG5vbiBjb250aWVuZSBpbCBuZXdsaW5lIGZpbmFsZSIKKworIzogc3JjL3N0YXRkYi5jOjE3MworbXNnaWQgInN0YXRvdmVycmlkZSBmaWxlIGNvbnRhaW5zIGVtcHR5IGxpbmUiCittc2dzdHIgImlsIGZpbGUgc3RhdG92ZXJyaWRlIGNvbnRpZW5lIHVuYSByaWdhIHZ1b3RhIgorCisjOiBzcmMvc3RhdGRiLmM6MTc4IHNyYy9zdGF0ZGIuYzoxOTAgc3JjL3N0YXRkYi5jOjIwMgorbXNnaWQgInN5bnRheCBlcnJvciBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiZXJyb3JlIGRpIHNpbnRhc3NpIG5lbCBmaWxlIHN0YXRvdmVycmlkZSIKKworIzogc3JjL3N0YXRkYi5jOjE4NiBzcmMvc3RhdGRiLmM6MTk4IHNyYy9zdGF0ZGIuYzoyMTAKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBsaW5lIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJFT0wgaW5hdHRlc28gbmVsIGZpbGUgc3RhdG92ZXJyaWRlIgorCisjOiBzcmMvc3RhdGRiLmM6MjE0CisjLCBjLWZvcm1hdAorbXNnaWQgIm11bHRpcGxlIHN0YXR1c292ZXJyaWRlcyBwcmVzZW50IGZvciBmaWxlICclLjI1MHMnIgorbXNnc3RyICJwcmVzZW50aSBtb2x0ZXBsaWNpIHN0YXR1c292ZXJyaWRlIHBlciBpbCBmaWxlIFwiJS4yNTBzXCIiCisKKyM6IHNyYy90cmlnY21kLmM6NDYKK21zZ2lkICJUeXBlIGRwa2ctdHJpZ2dlciAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgdGhpcyB1dGlsaXR5LiIKK21zZ3N0ciAiVXNhcmUgXCJkcGtnLXRyaWdnZXIgLS1oZWxwXCIgcGVyIGwnYWl1dG8gcmlndWFyZG8gcXVlc3RhIHV0aWxpdMOgLiIKKworIzogc3JjL3RyaWdjbWQuYzo1MQorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gJXMgcGFja2FnZSB0cmlnZ2VyIHV0aWxpdHkgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiVXRpbGl0w6AgcGVyIGkgdHJpZ2dlciBkZWkgcGFjY2hldHRpIERlYmlhbiAlcyB2ZXJzaW9uZSAlcy5cbiIKKworIzogc3JjL3RyaWdjbWQuYzo2NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9ucz4gLi4uXSA8dHJpZ2dlci1uYW1lPlxuIgorIiAgICAgICAlcyBbPG9wdGlvbnM+IC4uLl0gPGNvbW1hbmQ+XG4iCisiXG4iCittc2dzdHIgIiIKKyJVc286ICVzIFs8b3B6aW9uaT4gLi4uXSA8bm9tZS10cmlnZ2VyPlxuIgorIiAgICAgJXMgWzxvcHppb25pPiAuLi5dIDxjb21hbmRvPlxuIgorIlxuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC0tY2hlY2stc3VwcG9ydGVkICAgICAgICAgICAgICAgIENoZWNrIGlmIHRoZSBydW5uaW5nIGRwa2cgc3VwcG9ydHMgIgorInRyaWdnZXJzLlxuIgorIlxuIgorbXNnc3RyICIiCisiQ29tYW5kaTpcbiIKKyIgIC0tY2hlY2stc3VwcG9ydGVkICAgICAgICAgICAgICAgIFZlcmlmaWNhIGNoZSBkcGtnIHN1cHBvcnRpIGkgdHJpZ2dlclxuIgorIlxuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjgyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hZG1pbmRpcj08ZGlyZWN0b3J5PiAgICAgICAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMuXG4iCisiICAtLWJ5LXBhY2thZ2U9PHBhY2thZ2U+ICAgICAgICAgICBPdmVycmlkZSB0cmlnZ2VyIGF3YWl0ZXIgKG5vcm1hbGx5IHNldFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBieSBkcGtnKS5cbiIKKyIgIC0tbm8tYXdhaXQgICAgICAgICAgICAgICAgICAgICAgIE5vIHBhY2thZ2UgbmVlZHMgdG8gYXdhaXQgdGhlICIKKyJwcm9jZXNzaW5nLlxuIgorIiAgLS1uby1hY3QgICAgICAgICAgICAgICAgICAgICAgICAgSnVzdCB0ZXN0IC0gZG9uJ3QgYWN0dWFsbHkgY2hhbmdlICIKKyJhbnl0aGluZy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIk9wemlvbmk6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgICAgICAgICBVc2EgbGEgPGRpcmVjdG9yeT4gYWwgcG9zdG8gZGkgJXNcbiIKKyIgIC0tYnktcGFja2FnZT08cGFjY2hldHRvPiAgICAgICAgIFNjYXZhbGNhIGwnYXR0ZXNhIHBlciBpIHRyaWdnZXJcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChpbXBvc3RhdGEgbm9ybWFsbWVudGUgZGEgZHBrZylcbiIKKyIgIC0tbm8tYXdhaXQgICAgICAgICAgICAgICAgICAgICAgIE5lc3N1biBwYWNjaGV0dG8gZGV2ZSBhc3BldHRhcmUgIgorImwnZWxhYm9yYXppb25lXG4iCisiICAtLW5vLWFjdCAgICAgICAgICAgICAgICAgICAgICAgICBFc2VndWUgc29sbyBpIHRlc3QsIG5vbiBtb2RpZmljYSBudWxsYVxuIgorIlxuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogdHJpZ2dlcnMgZGF0YSBkaXJlY3Rvcnkgbm90IHlldCBjcmVhdGVkXG4iCittc2dzdHIgIiVzOiBsYSBkaXJlY3RvcnkgZGVpIGRhdGkgZGVpIHRyaWdnZXIgbm9uIMOoIHN0YXRhIGFuY29yYSBjcmVhdGFcbiIKKworIzogc3JjL3RyaWdjbWQuYzoxNTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IHRyaWdnZXIgcmVjb3JkcyBub3QgeWV0IGluIGV4aXN0ZW5jZVxuIgorbXNnc3RyICIlczogaSByZWNvcmQgZGVsIHRyaWdnZXIgbm9uIGVzaXN0b25vIGFuY29yYVxuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIwNQorbXNnaWQgInRha2VzIG9uZSBhcmd1bWVudCwgdGhlIHRyaWdnZXIgbmFtZSIKK21zZ3N0ciAiYWNjZXR0YSB1biBzb2xvIGFyZ29tZW50bywgaWwgbm9tZSBkZWwgdHJpZ2dlciIKKworIzogc3JjL3RyaWdjbWQuYzoyMTAKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgImRwa2ctdHJpZ2dlciBtdXN0IGJlIGNhbGxlZCBmcm9tIGEgbWFpbnRhaW5lciBzY3JpcHQgKG9yIHdpdGggYSAtLWJ5LSIKKyN8ICJwYWNrYWdlIG9wdGlvbikiCittc2dpZCAibXVzdCBiZSBjYWxsZWQgZnJvbSBhIG1haW50YWluZXIgc2NyaXB0IChvciB3aXRoIGEgLS1ieS1wYWNrYWdlIG9wdGlvbikiCittc2dzdHIgIiIKKyJkcGtnLXRyaWdnZXIgZGV2ZSBlc3NlcmUgaW52b2NhdG8gZGEgdW5vIHNjcmlwdCBkaSBtYWludGFpbmVyIChvcHB1cmUgY29uICIKKyJ1bidvcHppb25lIC0tYnktcGFja2FnZSkiCisKKyM6IHNyYy90cmlnY21kLmM6MjE1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJkcGtnLXRyaWdnZXI6IGlsbGVnYWwgYXdhaXRlZCBwYWNrYWdlIG5hbWUgYCUuMjUwcyc6ICUuMjUwcyIKK21zZ2lkICJpbGxlZ2FsIGF3YWl0ZWQgcGFja2FnZSBuYW1lICclLjI1MHMnOiAlLjI1MHMiCittc2dzdHIgImRwa2ctdHJpZ2dlcjogbm9tZSBkZWwgcGFjY2hldHRvIGF0dGVzbyBcIiUuMjUwc1wiIG5vbiB2YWxpZG86ICUuMjUwcyIKKworIzogc3JjL3RyaWdjbWQuYzoyMjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCB0cmlnZ2VyIG5hbWUgYCUuMjUwcyc6ICUuMjUwcyIKK21zZ3N0ciAibm9tZSBkZWwgdHJpZ2dlciBcIiUuMjUwc1wiIG5vbiB2YWxpZG86ICUuMjUwcyIKKworIzogc3JjL3RyaWdwcm9jLmM6MjUwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogY3ljbGUgZm91bmQgd2hpbGUgcHJvY2Vzc2luZyB0cmlnZ2VyczpcbiIKKyIgY2hhaW4gb2YgcGFja2FnZXMgd2hvc2UgdHJpZ2dlcnMgYXJlIG9yIG1heSBiZSByZXNwb25zaWJsZTpcbiIKK21zZ3N0ciAiIgorIiVzOiB0cm92YXRvIHVuIGNpY2xvIG5lbGwnZWxhYm9yYXppb25lIGRlaSB0cmlnZ2VyXG4iCisiIGVsZW5jbyBkZWkgcGFjY2hldHRpIGkgY3VpIHRyaWdnZXIgc29ubyBvIHBvdHJlYmJlcm8gZXNzZXJlIHJlc3BvbnNhYmlsaTpcbiIKKworIzogc3JjL3RyaWdwcm9jLmM6MjU4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgcGFja2FnZXMnIHBlbmRpbmcgdHJpZ2dlcnMgd2hpY2ggYXJlIG9yIG1heSBiZSB1bnJlc29sdmFibGU6XG4iCittc2dzdHIgIiIKKyJcbiIKKyIgdHJpZ2dlciBkZWkgcGFjY2hldHRpIGluIGF0dGVzYSBjaGUgc29ubyBvIHBvdHJlYmJlcm8gZXNzZXJlIGlycmVzb2x1YmlsaTpcbiIKKworIzogc3JjL3RyaWdwcm9jLmM6MjgxCittc2dpZCAidHJpZ2dlcnMgbG9vcGluZywgYWJhbmRvbmVkIgorbXNnc3RyICJjaWNsbyBuZWkgdHJpZ2dlciwgYWJiYW5kb25vIgorCisjOiBzcmMvdHJpZ3Byb2MuYzozMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHJvY2Vzc2luZyB0cmlnZ2VycyBmb3IgJXMgLi4uXG4iCittc2dzdHIgIkVsYWJvcmF6aW9uZSBkZWkgdHJpZ2dlciBwZXIgJXMuLi5cbiIKKworIzogc3JjL3VwZGF0ZS5jOjUyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICItLSVzIG5lZWRzIGV4YWN0bHkgb25lIFBhY2thZ2VzIGZpbGUgYXJndW1lbnQiCittc2dpZCAiLS0lcyBuZWVkcyBleGFjdGx5IG9uZSBQYWNrYWdlcy1maWxlIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIHJpY2hpZWRlIHVuIGZpbGUgUGFja2FnZXMgY29tZSB1bmljbyBhcmdvbWVudG8iCisKKyM6IHNyYy91cGRhdGUuYzo2MgorbXNnaWQgInVuYWJsZSB0byBhY2Nlc3MgZHBrZyBzdGF0dXMgYXJlYSBmb3IgYnVsayBhdmFpbGFibGUgdXBkYXRlIgorbXNnc3RyICIiCisiaW1wb3NzaWJpbGUgYWNjZWRlcmUgYWxsJ2FyZWEgZGkgc3RhdG8gZGkgZHBrZyBwZXIgbCdhZ2dpb3JuYW1lbnRvIG1hc3Npdm8gIgorImRlbGxlIGRpc3BvbmliaWxpdMOgIgorCisjOiBzcmMvdXBkYXRlLmM6NjQKK21zZ2lkICJidWxrIGF2YWlsYWJsZSB1cGRhdGUgcmVxdWlyZXMgd3JpdGUgYWNjZXNzIHRvIGRwa2cgc3RhdHVzIGFyZWEiCittc2dzdHIgIiIKKyJsJ2FnZ2lvcm5hbWVudG8gbWFzc2l2byBkZWxsZSBkaXNwb25pYmlsaXTDoCBuZWNlc3NpdGEgZGVpIHBlcm1lc3NpIGRpICIKKyJzY3JpdHR1cmEgc3VsbCdhcmVhIGRpIHN0YXRvIGRpIGRwa2ciCisKKyM6IHNyYy91cGRhdGUuYzo3MQorIywgYy1mb3JtYXQKK21zZ2lkICJSZXBsYWNpbmcgYXZhaWxhYmxlIHBhY2thZ2VzIGluZm8sIHVzaW5nICVzLlxuIgorbXNnc3RyICJTb3N0aXR1emlvbmUgZGVsbGUgaW5mb3JtYXppb25pIHN1aSBwYWNjaGV0dGkgZGlzcG9uaWJpbGkgdXNhbmRvICVzLlxuIgorCisjOiBzcmMvdXBkYXRlLmM6NzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiVXBkYXRpbmcgYXZhaWxhYmxlIHBhY2thZ2VzIGluZm8sIHVzaW5nICVzLlxuIgorbXNnc3RyICIiCisiQWdnaW9ybmFtZW50byBkZWxsZSBpbmZvcm1hemlvbmkgc3VpIHBhY2NoZXR0aSBkaXNwb25pYmlsaSB1c2FuZG8gJXMuXG4iCisKKyM6IHNyYy91cGRhdGUuYzoxMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW5mb3JtYXRpb24gYWJvdXQgJWQgcGFja2FnZSB3YXMgdXBkYXRlZC5cbiIKK21zZ2lkX3BsdXJhbCAiSW5mb3JtYXRpb24gYWJvdXQgJWQgcGFja2FnZXMgd2FzIHVwZGF0ZWQuXG4iCittc2dzdHJbMF0gIkxlIGluZm9ybWF6aW9uaSByaWd1YXJkbyAlZCBwYWNjaGV0dG8gc29ubyBzdGF0ZSBhZ2dpb3JuYXRlLlxuIgorbXNnc3RyWzFdICJMZSBpbmZvcm1hemlvbmkgcmlndWFyZG8gJWQgcGFjY2hldHRpIHNvbm8gc3RhdGUgYWdnaW9ybmF0ZS5cbiIKKworIzogc3JjL3VwZGF0ZS5jOjExNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisib2Jzb2xldGUgJy0tJXMnIG9wdGlvbiwgdW5hdmFpbGFibGUgcGFja2FnZXMgYXJlIGF1dG9tYXRpY2FsbHkgY2xlYW5lZCB1cC4iCittc2dzdHIgIiIKKyJvcHppb25lIFwiLS0lc1wiIG9ic29sZXRhLCBpIHBhY2NoZXR0aSBub24gZGlzcG9uaWJpbGkgdmVuZ29ubyBjYW5jZWxsYXRpICIKKyJhdXRvbWF0aWNhbWVudGUuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIG5hbWUgJyUuNTBzLi4uJyBpcyB0b28gbG9uZyIKK21zZ3N0ciAibm9tZSBmaWxlIFwiJS41MHMuLi5cIiB0cm9wcG8gbHVuZ28iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTI5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGZpbGUgbmFtZSAnJS4yNTBzJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgZXNlZ3VpcmUgc3RhdCBzdWwgbm9tZSBkaSBmaWxlIFwiJS4yNTBzXCIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTg5Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgY29udHJvbCBkaXJlY3RvcnkiCittc2dzdHIgImltcG9zc2liaWxlIGVzZWd1aXJlIHN0YXQgc3VsbGEgZGlyZWN0b3J5IGRpIGNvbnRyb2xsbyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoxOTEKK21zZ2lkICJjb250cm9sIGRpcmVjdG9yeSBpcyBub3QgYSBkaXJlY3RvcnkiCittc2dzdHIgImxhIGRpcmVjdG9yeSBkaSBjb250cm9sbG8gbm9uIMOoIHVuYSBkaXJlY3RvcnkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTkzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbnRyb2wgZGlyZWN0b3J5IGhhcyBiYWQgcGVybWlzc2lvbnMgJTAzbG8gKG11c3QgYmUgPj0wNzU1IGFuZCA8PTA3NzUpIgorbXNnc3RyICIiCisibGEgZGlyZWN0b3J5IGRpIGNvbnRyb2xsbyBoYSBkZWkgcGVybWVzc2kgZXJyYXRpOiAlMDNsbyAoZGV2b25vIGVzc2VyZSAiCisiPj0wNzU1IGUgPD0wNzc1KSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAibWFpbnRhaW5lciBzY3JpcHQgYCUuNTBzJyBpcyBub3QgYSBwbGFpbiBmaWxlIG9yIHN5bWxpbmsiCittc2dzdHIgIiIKKyJsbyBzY3JpcHQgXCIlLjUwc1wiIGRlbCByZXNwb25zYWJpbGUgbm9uIMOoIHVuIGZpbGUgbm9ybWFsZSBvIHVuIGNvbGxlZ2FtZW50byAiCisic2ltYm9saWNvIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjIwNworIywgYy1mb3JtYXQKK21zZ2lkICIiCisibWFpbnRhaW5lciBzY3JpcHQgYCUuNTBzJyBoYXMgYmFkIHBlcm1pc3Npb25zICUwM2xvIChtdXN0IGJlID49MDU1NSBhbmQgIgorIjw9MDc3NSkiCittc2dzdHIgIiIKKyJsbyBzY3JpcHQgXCIlLjUwc1wiIGRlbCByZXNwb25zYWJpbGUgaGEgZGVpIHBlcm1lc3NpIGVycmF0aSAlMDNsbyAoZGV2b25vICIKKyJlc3NlcmUgPj0wNTU1IGUgPD0wNzc1KSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAibWFpbnRhaW5lciBzY3JpcHQgYCUuNTBzJyBpcyBub3Qgc3RhdHRhYmxlIgorbXNnc3RyICJpbXBvc3NpYmlsZSBlc2VndWlyZSBzdGF0IHN1bGxvIHNjcmlwdCBcIiUuNTBzXCIgZGVsIHJlc3BvbnNhYmlsZSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyMzcKK21zZ2lkICJlcnJvciBvcGVuaW5nIGNvbmZmaWxlcyBmaWxlIgorbXNnc3RyICJlcnJvcmUgbmVsbCdhcHJpcmUgaWwgZmlsZSBjb250ZW5lbnRlIGkgZmlsZSBkaSBjb25maWd1cmF6aW9uZSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNDYKK21zZ2lkICJlbXB0eSBzdHJpbmcgZnJvbSBmZ2V0cyByZWFkaW5nIGNvbmZmaWxlcyIKK21zZ3N0ciAiIgorImZnZXRzIGhhIHJlc3RpdHVpdG8gdW5hIHN0cmluZ2EgdnVvdGEgbGVnZ2VuZG8gaSBmaWxlIGRpIGNvbmZpZ3VyYXppb25lIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI1MQorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBuYW1lICclLjUwcy4uLicgaXMgdG9vIGxvbmcsIG9yIG1pc3NpbmcgZmluYWwgbmV3bGluZSIKK21zZ3N0ciAiIgorImlsIG5vbWUgZGVsIGZpbGUgZGkgY29uZmlndXJhemlvbmUgXCIlLjUwcy4uLlwiIMOoIHRyb3BwbyBsdW5nbyBvIG1hbmNhIGlsICIKKyJuZXdsaW5lIGZpbmFsZSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgZmlsZW5hbWUgJyVzJyBjb250YWlucyB0cmFpbGluZyB3aGl0ZSBzcGFjZXMiCittc2dzdHIgImlsIG5vbWUgZGVsIGZpbGUgZGkgY29uZmlndXJhemlvbmUgXCIlc1wiIGNvbnRpZW5lIHNwYXppIHZ1b3RpIGluIGNvZGEiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjY2CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIGAlLjI1MHMnIGRvZXMgbm90IGFwcGVhciBpbiBwYWNrYWdlIgorbXNnc3RyICJpbCBmaWxlIGRpIGNvbmZpZ3VyYXppb25lIFwiJS4yNTBzXCIgbm9uIGNvbXBhcmUgbmVsIHBhY2NoZXR0byIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgYCUuMjUwcycgaXMgbm90IHN0YXR0YWJsZSIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgZXNlZ3VpcmUgc3RhdCBzdWwgZmlsZSBkaSBjb25maWd1cmF6aW9uZSBcIiUuMjUwc1wiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI3MAorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSAnJXMnIGlzIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgImlsIGZpbGUgZGkgY29uZmlndXJhemlvbmUgXCIlc1wiIG5vbiDDqCB1biBmaWxlIG5vcm1hbGUiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6Mjc0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIG5hbWUgJyVzJyBpcyBkdXBsaWNhdGVkIgorbXNnc3RyICJpbCBmaWxlIGRpIGNvbmZpZ3VyYXppb25lIFwiJXNcIiDDqCBkdXBsaWNhdG8iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6Mjg3Cittc2dpZCAiZXJyb3IgcmVhZGluZyBjb25mZmlsZXMgZmlsZSIKK21zZ3N0ciAiZXJyb3JlIG5lbCBsZWdnZXJlIGlsIGZpbGUgY29udGVuZW50ZSBpIGZpbGUgZGkgY29uZmlndXJhemlvbmUiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MzM5Cittc2dpZCAicGFja2FnZSBuYW1lIGhhcyBjaGFyYWN0ZXJzIHRoYXQgYXJlbid0IGxvd2VyY2FzZSBhbHBoYW51bXMgb3IgYC0rLiciCittc2dzdHIgIiIKKyJpbCBub21lIGRlbCBwYWNjaGV0dG8gY29udGllbmUgY2FyYXR0ZXJpIGNoZSBub24gc29ubyBuw6kgYWxmYW51bWVyaWNpICIKKyJtaW51c2NvbGkgbsOpIFwiLSsuXCIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MzQxCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgY29udGFpbnMgdXNlci1kZWZpbmVkIFByaW9yaXR5IHZhbHVlICclcyciCittc2dzdHIgIlwiJXNcIiBjb250aWVuZSB1biB2YWxvcmUgUHJpb3JpdHkgXCIlc1wiIGRlZmluaXRvIGRhbGwndXRlbnRlIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjM0NworIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGNvbnRhaW5zIHVzZXItZGVmaW5lZCBmaWVsZCAnJXMnIgorbXNnc3RyICJcIiVzXCIgY29udGllbmUgaWwgY2FtcG8gXCIlc1wiIGRlZmluaXRvIGRhbGwndXRlbnRlIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjM1OAorIywgYy1mb3JtYXQKK21zZ2lkICJpZ25vcmluZyAlZCB3YXJuaW5nIGFib3V0IHRoZSBjb250cm9sIGZpbGUocylcbiIKK21zZ2lkX3BsdXJhbCAiaWdub3JpbmcgJWQgd2FybmluZ3MgYWJvdXQgdGhlIGNvbnRyb2wgZmlsZShzKVxuIgorbXNnc3RyWzBdICIlZCBhdnZpc28gcmVsYXRpdm8gYWkgZmlsZSBkaSBjb250cm9sbG8gdmllbmUgaWdub3JhdG9cbiIKK21zZ3N0clsxXSAiJWQgYXZ2aXNpIHJlbGF0aXZpIGFpIGZpbGUgZGkgY29udHJvbGxvIHZlbmdvbm8gaWdub3JhdGlcbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MDMgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MjkKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDM2CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSA8ZGlyZWN0b3J5PiBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyByaWNoaWVkZSB1biBhcmdvbWVudG8gPGRpcmVjdG9yeT4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDA5Cittc2dpZCAiLS1idWlsZCB0YWtlcyBhdCBtb3N0IHR3byBhcmd1bWVudHMiCittc2dzdHIgIi0tYnVpbGQgYWNjZXR0YSBhbCBtYXNzaW1vIGR1ZSBhcmdvbWVudGkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDEzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGVjayBmb3IgZXhpc3RlbmNlIG9mIGFyY2hpdmUgYCUuMjUwcyciCittc2dzdHIgImltcG9zc2liaWxlIHZlcmlmaWNhcmUgbCdlc2lzdGVuemEgZGVsbCdhcmNoaXZpbyBcIiUuMjUwc1wiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQzMAorbXNnaWQgInRhcmdldCBpcyBkaXJlY3RvcnkgLSBjYW5ub3Qgc2tpcCBjb250cm9sIGZpbGUgY2hlY2siCittc2dzdHIgIiIKKyJsYSBkZXN0aW5hemlvbmUgw6ggdW5hIGRpcmVjdG9yeSAtIGltcG9zc2liaWxlIHNhbHRhcmUgbGEgdmVyaWZpY2EgZGVsIGZpbGUgIgorImRpIGNvbnRyb2xsbyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzEKK21zZ2lkICJub3QgY2hlY2tpbmcgY29udGVudHMgb2YgY29udHJvbCBhcmVhLiIKK21zZ3N0ciAibm9uIHZpZW5lIGVzZWd1aXRhIGxhIHZlcmlmaWNhIGRlaSBjb250ZW51dGkgZGVsbCdhcmVhIGRpIGNvbnRyb2xsby4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDMyCisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2ctZGViOiBidWlsZGluZyBhbiB1bmtub3duIHBhY2thZ2UgaW4gJyVzJy5cbiIKK21zZ3N0ciAiZHBrZy1kZWI6IGdlbmVyYXppb25lIGRpIHVuIHBhY2NoZXR0byBzY29ub3NjaXV0byBpbiBcIiVzXCIuXG4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDM5CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2ctZGViOiBidWlsZGluZyBwYWNrYWdlIGAlcycgaW4gYCVzJy5cbiIKK21zZ3N0ciAiZHBrZy1kZWI6IGdlbmVyYXppb25lIGRlbCBwYWNjaGV0dG8gXCIlc1wiIGluIFwiJXNcIi5cbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0NjcgZHBrZy1kZWIvYnVpbGQuYzo1MjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byBtYWtlIHRtcGZpbGUgKGRhdGEpIgorbXNnaWQgImZhaWxlZCB0byBtYWtlIHRlbXBvcmFyeSBmaWxlICglcykiCittc2dzdHIgImNyZWF6aW9uZSBkaSB1biBmaWxlIHRlbXBvcmFuZW8gbm9uIHJpdXNjaXRhIChkYXRpKSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0NjcgZHBrZy1kZWIvYnVpbGQuYzo0NzAgZHBrZy1kZWIvYnVpbGQuYzo0NzcKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDg1IGRwa2ctZGViL2J1aWxkLmM6NDk0IGRwa2ctZGViL2J1aWxkLmM6NDk5CisjLCBmdXp6eQorI3wgbXNnaWQgImNvbnRyb2wiCittc2dpZCAiY29udHJvbCBtZW1iZXIiCittc2dzdHIgImNvbnRyb2wiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDcwIGRwa2ctZGViL2J1aWxkLmM6NTI0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gdW5saW5rIHRtcGZpbGUgKGRhdGEpLCAlcyIKK21zZ2lkICJmYWlsZWQgdG8gdW5saW5rIHRlbXBvcmFyeSBmaWxlICglcyksICVzIgorbXNnc3RyICJyaW1vemlvbmUgZGVsIGNvbGxlZ2FtZW50byBhbCBmaWxlIHRlbXBvcmFuZW8gJXMgbm9uIHJpdXNjaXRhIChkYXRpKSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0ODUgZHBrZy1kZWIvYnVpbGQuYzo1OTMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdG1wZmlsZSAoZGF0YSkiCittc2dpZCAiZmFpbGVkIHRvIHJld2luZCB0ZW1wb3JhcnkgZmlsZSAoJXMpIgorbXNnc3RyICJlc2VjdXppb25lIGRpIHJld2luZCBzdWwgZmlsZSB0ZW1wb3JhbmVvIG5vbiByaXVzY2l0YSAoZGF0aSkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDk0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gZnN0YXQgYXIgbWVtYmVyIGZpbGUgKCVzKSIKK21zZ2lkICJmYWlsZWQgdG8gc3RhdCB0ZW1wb3JhcnkgZmlsZSAoJXMpIgorbXNnc3RyICJlc2VjdXppb25lIGRpIGZzdGF0IHN1bCBmaWxlIGFyIG5vbiByaXVzY2l0YSAoJXMpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ5OAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciB3cml0aW5nIGAlcyciCittc2dzdHIgImVycm9yZSBuZWxsbyBzY3JpdmVyZSBcIiVzXCIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTIxIGRwa2ctZGViL2J1aWxkLmM6NTI0IGRwa2ctZGViL2J1aWxkLmM6NTQ2CisjOiBkcGtnLWRlYi9idWlsZC5jOjU3MiBkcGtnLWRlYi9idWlsZC5jOjU4MCBkcGtnLWRlYi9idWlsZC5jOjU5MworIywgZnV6enkKKyN8IG1zZ2lkICJiZXR3ZWVuIG1lbWJlcnMiCittc2dpZCAiZGF0YSBtZW1iZXIiCittc2dzdHIgInRyYSBpIG1lbWJyaSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo1NzEgZHBrZy1kZWIvYnVpbGQuYzo1ODAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byB3cml0ZSBmaWxlbmFtZSB0byB0YXIgcGlwZSAoZGF0YSkiCittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIGZpbGVuYW1lIHRvIHRhciBwaXBlICglcykiCittc2dzdHIgInNjcml0dHVyYSBkZWwgbm9tZSBkZWwgZmlsZSBzdWxsYSBwaXBlIGRpIHRhciBub24gcml1c2NpdGEgKGRhdGkpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjU4NAorbXNnaWQgIjxjb21wcmVzcz4gZnJvbSB0YXIgLWNmIgorbXNnc3RyICI8Y29tcHJlc3M+IGRhIHRhciAtY2YiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzo2MSBkcGtnLWRlYi9leHRyYWN0LmM6NjMKK21zZ2lkICJzaGVsbCBjb21tYW5kIHRvIG1vdmUgZmlsZXMiCittc2dzdHIgIiIKKworIyAobmR0KSBpbCBzZWNvbmRvIMOoIGlsIG5vbWUgZGVsIGZpbGUKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzo3MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBmaWxlIGluICVzIGluICUuMjU1cyIKK21zZ3N0ciAiZmluZSBkZWwgZmlsZSBpbmF0dGVzYSBpbiAlcyBuZWwgZmlsZSAlLjI1NXMiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzo3MgorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciByZWFkaW5nICVzIGZyb20gZmlsZSAlLjI1NXMiCittc2dzdHIgImVycm9yZSBuZWwgbGVnZ2VyZSAlcyBkYWwgZmlsZSAlLjI1NXMiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxMjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgYXJjaGl2ZSBgJS4yNTVzJyIKK21zZ3N0ciAibGV0dHVyYSBkZWxsJ2FyY2hpdmlvIFwiJS4yNTVzXCIgbm9uIHJpdXNjaXRhIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTI3Cittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGFyY2hpdmUiCittc2dzdHIgImVzZWN1emlvbmUgZGkgZnN0YXQgc3VsbCdhcmNoaXZpbyBub24gcml1c2NpdGEiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxMzEKKyMsIGZ1enp5CisjfCBtc2dpZCAiYXJjaGl2ZSBoYXMgbm8gZG90IGluIHZlcnNpb24gbnVtYmVyIgorbXNnaWQgImFyY2hpdmUgbWFnaWMgdmVyc2lvbiBudW1iZXIiCittc2dzdHIgImlsIG51bWVybyBkaSB2ZXJzaW9uZSBkZWxsJ2FyY2hpdmlvIG5vbiBjb250aWVuZSBhbGN1biBwdW50byAoXCIuXCIpIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTQzCisjLCBmdXp6eQorI3wgbXNnaWQgImFyY2hpdmUgaGFzIG5vIG5ld2xpbmVzIGluIGhlYWRlciIKK21zZ2lkICJhcmNoaXZlIG1lbWJlciBoZWFkZXIiCittc2dzdHIgImwnYXJjaGl2aW8gbm9uIGNvbnRpZW5lIG5ld2xpbmUgbmVsbCdpbnRlc3RhemlvbmUiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNDgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBwYXJ0IG51bWJlciIKK21zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgYXJjaGl2ZSBoZWFkZXIgbWFnaWMiCittc2dzdHIgImlsIGZpbGUgXCIlLjI1MHNcIiDDqCBkYW5uZWdnaWF0byAtIG51bWVybyBkaSBwb3J6aW9uZSBlcnJhdG8iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBub3QgYSBkZWJpYW4gYmluYXJ5IGFyY2hpdmUgKHRyeSBkcGtnLXNwbGl0PykiCittc2dzdHIgIiIKKyJpbCBmaWxlIFwiJS4yNTBzXCIgbm9uIMOoIHVuIGFyY2hpdmlvIG5lbCBmb3JtYXRvIGRlYmlhbiAocHJvdmFyZSBkcGtnLXNwbGl0PykiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNTkKKyMsIGZ1enp5CisjfCBtc2dpZCAiYXJjaGl2ZSBoYXMgbm8gZG90IGluIHZlcnNpb24gbnVtYmVyIgorbXNnaWQgImFyY2hpdmUgaW5mb3JtYXRpb24gaGVhZGVyIG1lbWJlciIKK21zZ3N0ciAiaWwgbnVtZXJvIGRpIHZlcnNpb25lIGRlbGwnYXJjaGl2aW8gbm9uIGNvbnRpZW5lIGFsY3VuIHB1bnRvIChcIi5cIikiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNjIKK21zZ2lkICJhcmNoaXZlIGhhcyBubyBuZXdsaW5lcyBpbiBoZWFkZXIiCittc2dzdHIgImwnYXJjaGl2aW8gbm9uIGNvbnRpZW5lIG5ld2xpbmUgbmVsbCdpbnRlc3RhemlvbmUiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNjUKK21zZ2lkICJhcmNoaXZlIGhhcyBubyBkb3QgaW4gdmVyc2lvbiBudW1iZXIiCittc2dzdHIgImlsIG51bWVybyBkaSB2ZXJzaW9uZSBkZWxsJ2FyY2hpdmlvIG5vbiBjb250aWVuZSBhbGN1biBwdW50byAoXCIuXCIpIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTY4CisjLCBjLWZvcm1hdAorbXNnaWQgImFyY2hpdmUgdmVyc2lvbiAlLjI1MHMgbm90IHVuZGVyc3Rvb2QsIGdldCBuZXdlciBkcGtnLWRlYiIKK21zZ3N0ciAiIgorInZlcnNpb25lICUuMjUwcyBkZWxsJ2FyY2hpdmlvIG5vbiBjb21wcmVuc2liaWxlLCBpbnN0YWxsYXJlIHVuYSB2ZXJzaW9uZSBkaSAiCisiZHBrZy1kZWIgcGnDuSByZWNlbnRlIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTc5IGRwa2ctZGViL2V4dHJhY3QuYzoyMDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInNraXBwZWQgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ2lkICJza2lwcGVkIGFyY2hpdmUgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ3N0ciAiZGF0aSBkZWxsJ2VsZW1lbnRvIGRhICVzIHRyYWxhc2NpYXRpIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTk0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGNvbnRhaW5zIHVudW5kZXJzdG9vZCBkYXRhIG1lbWJlciAlLipzLCBnaXZpbmcgdXAiCittc2dpZCAiYXJjaGl2ZSAnJS4yNTBzJyBjb250YWlucyBub3QgdW5kZXJzdG9vZCBkYXRhIG1lbWJlciAlLipzLCBnaXZpbmcgdXAiCittc2dzdHIgIiIKKyJpbCBmaWxlIFwiJS4yNTBzXCIgY29udGllbmUgdW4gZWxlbWVudG8gZGF0aSBpbmNvbXByZW5zaWJpbGUgJS4qcywgIgorIm9wZXJhemlvbmUgYW5udWxsYXRhIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTk5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGNvbnRhaW5zIHR3byBjb250cm9sIG1lbWJlcnMsIGdpdmluZyB1cCIKK21zZ2lkICJhcmNoaXZlICclLjI1MHMnIGNvbnRhaW5zIHR3byBjb250cm9sIG1lbWJlcnMsIGdpdmluZyB1cCIKK21zZ3N0ciAiIgorImlsIGZpbGUgXCIlLjI1MHNcIiBjb250aWVuZSBkdWUgZWxlbWVudGkgZGkgY29udHJvbGxvLCBvcGVyYXppb25lIGFubnVsbGF0YSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIxNAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiBuZXcgZGViaWFuIHBhY2thZ2UsIHZlcnNpb24gJXMuXG4iCisjfCAiIHNpemUgJWxkIGJ5dGVzOiBjb250cm9sIGFyY2hpdmU9ICV6aSBieXRlcy5cbiIKK21zZ2lkICIiCisiIG5ldyBkZWJpYW4gcGFja2FnZSwgdmVyc2lvbiAlcy5cbiIKKyIgc2l6ZSAlamQgYnl0ZXM6IGNvbnRyb2wgYXJjaGl2ZT0gJWpkIGJ5dGVzLlxuIgorbXNnc3RyICIiCisiIG51b3ZvIHBhY2NoZXR0byBkZWJpYW4sIHZlcnNpb25lICVzLlxuIgorIiBkaW1lbnNpb25lICVsZCBieXRlOiBhcmNoaXZpbyBkaSBjb250cm9sbG89ICV6aSBieXRlLlxuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjMyCittc2dpZCAiYXJjaGl2ZSBjb250cm9sIG1lbWJlciBzaXplIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyMzUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImFyY2hpdmUgaGFzIG1hbGZvcm1hdHRlZCBjb250cm9sIGxlbmd0aCBgJXMnIgorbXNnaWQgImFyY2hpdmUgaGFzIG1hbGZvcm1hdHRlZCBjb250cm9sIG1lbWJlciBzaXplICclcyciCittc2dzdHIgImwnYXJjaGl2aW8gaGEgdW5hIGx1bmdoZXp6YSBkaSBjb250cm9sbG8gXCIlc1wiIG1hbCBmb3JtYXR0YXRhIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjQyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJza2lwcGVkIG1lbWJlciBkYXRhIGZyb20gJXMiCittc2dpZCAic2tpcHBlZCBhcmNoaXZlIGNvbnRyb2wgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ3N0ciAiZGF0aSBkZWxsJ2VsZW1lbnRvIGRhICVzIHRyYWxhc2NpYXRpIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjQ2CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiIG9sZCBkZWJpYW4gcGFja2FnZSwgdmVyc2lvbiAlcy5cbiIKKyN8ICIgc2l6ZSAlbGQgYnl0ZXM6IGNvbnRyb2wgYXJjaGl2ZT0gJXppLCBtYWluIGFyY2hpdmU9ICVsZC5cbiIKK21zZ2lkICIiCisiIG9sZCBkZWJpYW4gcGFja2FnZSwgdmVyc2lvbiAlcy5cbiIKKyIgc2l6ZSAlamQgYnl0ZXM6IGNvbnRyb2wgYXJjaGl2ZT0gJWpkLCBtYWluIGFyY2hpdmU9ICVqZC5cbiIKK21zZ3N0ciAiIgorIiB2ZWNjaGlvIHBhY2NoZXR0byBkZWJpYW4sIHZlcnNpb25lICVzLlxuIgorIiBkaW1lbnNpb25lICVsZCBieXRlOiBhcmNoaXZpbyBkaSBjb250cm9sbG89ICV6aSwgYXJjaGl2aW8gcHJpbmNpcGFsZT0gJWxkLlxuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjU1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnLWRlYjogZmlsZSBsb29rcyBsaWtlIGl0IG1pZ2h0IGJlIGFuIGFyY2hpdmUgd2hpY2ggaGFzIGJlZW5cbiIKKyJkcGtnLWRlYjogICAgY29ycnVwdGVkIGJ5IGJlaW5nIGRvd25sb2FkZWQgaW4gQVNDSUkgbW9kZVxuIgorbXNnc3RyICIiCisiZHBrZy1kZWI6IGlsIGZpbGUgc2VtYnJhIGVzc2VyZSB1biBhcmNoaXZpbyBkYW5uZWdnaWF0b1xuIgorImRwa2ctZGViOiAgcGVyIGVzc2VyZSBzdGF0byBzY2FyaWNhdG8gaW4gbW9kYWxpdMOgIEFTQ0lJXG4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCUuMjU1cycgaXMgbm90IGEgZGViaWFuIGZvcm1hdCBhcmNoaXZlIgorbXNnc3RyICJcIiUuMjU1c1wiIG5vbiDDqCB1biBhcmNoaXZpbyBpbiBmb3JtYXRvIGRlYmlhbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI2NgorbXNnaWQgImZhaWxlZCB0byB3cml0ZSB0byBwaXBlIGluIGNvcHkiCittc2dzdHIgInNjcml0dHVyYSBzdWxsYSBwaXBlIG5lbGxhIGNvcGlhIG5vbiByaXVzY2l0YSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI2OAorbXNnaWQgImZhaWxlZCB0byBjbG9zZSBwaXBlIGluIGNvcHkiCittc2dzdHIgImNoaXVzdXJhIGRlbGxhIHBpcGUgbmVsbGEgY29waWEgbm9uIHJpdXNjaXRhIgorCisjIChuZHQpIG5vbiByaWVzY28gYSBjYXBpcmUgZG92ZSB2ZW5nYSB1c2F0YQorIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI4NAorbXNnaWQgImRhdGEiCittc2dzdHIgImRhdGkiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozMDcKK21zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gZGlyZWN0b3J5IgorbXNnc3RyICJlc2VjdXppb25lIGRpIGNoZGlyIHN1bGxhIGRpcmVjdG9yeSBub24gcml1c2NpdGEiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozMTAKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGRpcmVjdG9yeSIKK21zZ3N0ciAiY3JlYXppb25lIGRpIHVuYSBkaXJlY3Rvcnkgbm9uIHJpdXNjaXRhIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzEyCittc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIGRpcmVjdG9yeSBhZnRlciBjcmVhdGluZyBpdCIKK21zZ3N0ciAiZXNlY3V6aW9uZSBkaSBjaGRpciBzdWxsYSBkaXJlY3RvcnkgZG9wbyBhdmVybGEgY3JlYXRhIG5vbiByaXVzY2l0YSIKKworIyAobmR0KSBjb21wcmltZXJlIC0+IGRlY29tcHJpbWVyZS4uLgorIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMyMworbXNnaWQgIjxkZWNvbXByZXNzPiIKK21zZ3N0ciAiPGRlY29tcHJlc3Npb25lPiIKKworIyAobmR0KSBib2ghPyE/CisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzI1Cittc2dpZCAicGFzdGUiCittc2dzdHIgInBhc3RlIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzQyIGRwa2ctZGViL2V4dHJhY3QuYzozNjMgZHBrZy1kZWIvZXh0cmFjdC5jOjQwMgorIzogZHBrZy1kZWIvaW5mby5jOjc3CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSAuZGViIGZpbGVuYW1lIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIHJpY2hpZWRlIGlsIG5vbWUgZGkgdW4gZmlsZSAuZGViIGNvbWUgYXJnb21lbnRvIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzQ3IGRwa2ctZGViL2V4dHJhY3QuYzo0MDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIi0tJXMgbmVlZHMgYSB0YXJnZXQgZGlyZWN0b3J5LlxuIgorIlBlcmhhcHMgeW91IHNob3VsZCBiZSB1c2luZyBkcGtnIC0taW5zdGFsbCA/IgorbXNnc3RyICIiCisiLS0lcyByaWNoaWVkZSBjb21lIGFyZ29tZW50byB1bmEgZGlyZWN0b3J5IGRpIGRlc3RpbmF6aW9uZS5cbiIKKyJVc2FyZSBcImRwa2cgLS1pbnN0YWxsXCI/IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzUwIGRwa2ctZGViL2V4dHJhY3QuYzo0MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyB0YWtlcyBhdCBtb3N0IHR3byBhcmd1bWVudHMgKC5kZWIgYW5kIGRpcmVjdG9yeSkiCittc2dzdHIgIi0tJXMgYWNjZXR0YSBhbCBtYXNzaW1vIGR1ZSBhcmdvbWVudGkgKHVuIC5kZWIgZSB1bmEgZGlyZWN0b3J5KSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjM2NQorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIHRha2VzIG9ubHkgb25lIGFyZ3VtZW50ICguZGViIGZpbGVuYW1lKSIKK21zZ3N0ciAiLS0lcyBhY2NldHRhIHVuIHNvbG8gYXJnb21lbnRvICh1biBub21lIGRpIGZpbGUgLmRlYikiCisKKyM6IGRwa2ctZGViL2luZm8uYzo2MworbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byBgLycgZm9yIGNsZWFudXAiCittc2dzdHIgImVzZWN1emlvbmUgZGkgY2hkaXIgc3UgXCIvXCIgcGVyIGxhIHB1bGl6aWEgbm9uIHJpdXNjaXRhIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTA2CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW5ub3Qgc3RhdCBmaWxlICclcyciCittc2dpZCAiY29udHJvbCBmaWxlICclcyciCittc2dzdHIgImltcG9zc2liaWxlIGVzZWd1aXJlIHN0YXQgc3VsIGZpbGUgXCIlc1wiIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTEwCisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2ctZGViOiBgJS4yNTVzJyBjb250YWlucyBubyBjb250cm9sIGNvbXBvbmVudCBgJS4yNTVzJ1xuIgorbXNnc3RyICIiCisiZHBrZy1kZWI6IFwiJS4yNTVzXCIgbm9uIGNvbnRpZW5lIGFsY3VuIGNvbXBvbmVudGUgZGkgY29udHJvbGxvIFwiJS4yNTVzXCJcbiIKKworIyAobmR0KSBub24gbWkgw6ggbW9sdG8gY2hpYXJhCisjIHNlIGZvc3NlOiBpbCBjb21wb25lbnRlIGFwZXJ0byAuLi4gPworIzogZHBrZy1kZWIvaW5mby5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICJvcGVuIGNvbXBvbmVudCBgJS4yNTVzJyAoaW4gJS4yNTVzKSBmYWlsZWQgaW4gYW4gdW5leHBlY3RlZCB3YXkiCittc2dzdHIgIiIKKyJhcGVydHVyYSBkZWwgY29tcG9uZW50ZSBcIiUuMjU1c1wiIChpbiAlLjI1NXMpIG5vbiByaXVzY2l0YSBpbiBtb2RvIGluYXR0ZXNvIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTIxCisjLCBjLWZvcm1hdAorbXNnaWQgIiVkIHJlcXVlc3RlZCBjb250cm9sIGNvbXBvbmVudCBpcyBtaXNzaW5nIgorbXNnaWRfcGx1cmFsICIlZCByZXF1ZXN0ZWQgY29udHJvbCBjb21wb25lbnRzIGFyZSBtaXNzaW5nIgorbXNnc3RyWzBdICJNYW5jYSAlZCBkZWkgY29tcG9uZW50aSBkaSBjb250cm9sbG8gcmljaGllc3RvIgorbXNnc3RyWzFdICJNYW5jYW5vICVkIGRlaSBjb21wb25lbnRpIGRpIGNvbnRyb2xsbyByaWNoaWVzdG8iCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMzkgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQyNAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc2NhbiBkaXJlY3RvcnkgYCUuMjU1cyciCittc2dzdHIgImltcG9zc2liaWxlIGFuYWxpenphcmUgbGEgZGlyZWN0b3J5IFwiJS4yNTVzXCIiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHN0YXQgYCUuMjU1cycgKGluIGAlLjI1NXMnKSIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgZXNlZ3VpcmUgc3RhdCBzdSBcIiUuMjU1c1wiIChpbiBcIiUuMjU1c1wiKSIKKworIzogZHBrZy1kZWIvaW5mby5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgb3BlbiBgJS4yNTVzJyAoaW4gYCUuMjU1cycpIgorbXNnc3RyICJpbXBvc3NpYmlsZSBhcHJpcmUgXCIlLjI1NXNcIiAoaW4gXCIlLjI1NXNcIikiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxNjcgZHBrZy1kZWIvaW5mby5jOjE4NSBkcGtnLWRlYi9pbmZvLmM6MTk5CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZWFkIGAlLjI1NXMnIChpbiBgJS4yNTVzJykiCittc2dzdHIgImxldHR1cmEgZGkgXCIlLjI1NXNcIiAoaW4gXCIlLjI1NXNcIikgbm9uIHJpdXNjaXRhIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTcwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIgJTdsZCBieXRlcywgJTVkIGxpbmVzICAgJWMgICUtMjAuMTI3cyAlLjEyN3NcbiIKK21zZ2lkICIgJTdqZCBieXRlcywgJTVkIGxpbmVzICAgJWMgICUtMjAuMTI3cyAlLjEyN3NcbiIKK21zZ3N0ciAiICU3bGQgYnl0ZSwgJTVkIHJpZ2hlICAgJWMgICUtMjAuMTI3cyAlLjEyN3NcbiIKKworIzogZHBrZy1kZWIvaW5mby5jOjE3NAorIywgYy1mb3JtYXQKK21zZ2lkICIgICAgIG5vdCBhIHBsYWluIGZpbGUgICAgICAgICAgJS4yNTVzXG4iCittc2dzdHIgIiAgICAgbm9uIHVuIGZpbGUgbm9ybWFsZSAgICAgICAlLjI1NXNcbiIKKworIzogZHBrZy1kZWIvaW5mby5jOjE4NgorbXNnaWQgIihubyBgY29udHJvbCcgZmlsZSBpbiBjb250cm9sIGFyY2hpdmUhKVxuIgorbXNnc3RyICIobmVzc3VuIGZpbGUgXCJjb250cm9sXCIgbmVsbCdhcmNoaXZpbyBkaSBjb250cm9sbG8pXG4iCisKKyM6IGRwa2ctZGViL2luZm8uYzoyMjIKK21zZ2lkICJjb3VsZCBub3Qgb3BlbiB0aGUgYGNvbnRyb2wnIGNvbXBvbmVudCIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgYXByaXJlIGlsIGNvbXBvbmVudGUgXCJjb250cm9sXCIiCisKKyM6IGRwa2ctZGViL2luZm8uYzoyNjEKK21zZ2lkICJmYWlsZWQgZHVyaW5nIHJlYWQgb2YgYGNvbnRyb2wnIGNvbXBvbmVudCIKK21zZ3N0ciAibGV0dHVyYSBkZWwgY29tcG9uZW50ZSBcImNvbnRyb2xcIiBub24gcml1c2NpdGEiCisKKyM6IGRwa2ctZGViL2luZm8uYzoyNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyB0aGUgJyVzJyBjb21wb25lbnQiCittc2dzdHIgImVycm9yZSBuZWwgY2hpdWRlcmUgaWwgY29tcG9uZW50ZSBcIiVzXCIiCisKKyM6IGRwa2ctZGViL2luZm8uYzoyNzgKK21zZ2lkICJFcnJvciBpbiBmb3JtYXQiCittc2dzdHIgIkVycm9yZSBuZWwgZm9ybWF0byIKKworIzogZHBrZy1kZWIvaW5mby5jOjMyOAorbXNnaWQgIi0tY29udGVudHMgdGFrZXMgZXhhY3RseSBvbmUgYXJndW1lbnQiCittc2dzdHIgIi0tY29udGVudHMgYWNjZXR0YSBlc2F0dGFtZW50ZSB1biBhcmdvbWVudG8iCisKKyM6IGRwa2ctZGViL21haW4uYzo1NAorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIGFyY2hpdmUgYmFja2VuZCB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICIiCisiRGViaWFuIFwiJXNcIiwgYmFja2VuZCBkaSBnZXN0aW9uZSBkZWdsaSBhcmNoaXZpIGRpIHBhY2NoZXR0aSB2ZXJzaW9uZSAlcy5cbiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjczCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiQ29tbWFuZHM6XG4iCisjfCAiICAtYnwtLWJ1aWxkIDxkaXJlY3Rvcnk+IFs8ZGViPl0gICBCdWlsZCBhbiBhcmNoaXZlLlxuIgorI3wgIiAgLWN8LS1jb250ZW50cyA8ZGViPiAgICAgICAgICAgICAgTGlzdCBjb250ZW50cy5cbiIKKyN8ICIgIC1JfC0taW5mbyA8ZGViPiBbPGNmaWxlPiAuLi5dICAgIFNob3cgaW5mbyB0byBzdGRvdXQuXG4iCisjfCAiICAtV3wtLXNob3cgPGRlYj4gICAgICAgICAgICAgICAgICBTaG93IGluZm9ybWF0aW9uIG9uIHBhY2thZ2UocylcbiIKKyN8ICIgIC1mfC0tZmllbGQgPGRlYj4gWzxjZmllbGQ+IC4uLl0gIFNob3cgZmllbGQocykgdG8gc3Rkb3V0LlxuIgorI3wgIiAgLWV8LS1jb250cm9sIDxkZWI+IFs8ZGlyZWN0b3J5Pl0gRXh0cmFjdCBjb250cm9sIGluZm8uXG4iCisjfCAiICAteHwtLWV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gICBFeHRyYWN0IGZpbGVzLlxuIgorI3wgIiAgLVh8LS12ZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PiAgRXh0cmFjdCAmIGxpc3QgZmlsZXMuXG4iCisjfCAiICAtLWZzeXMtdGFyZmlsZSA8ZGViPiAgICAgICAgICAgICBPdXRwdXQgZmlsZXN5c3RlbSB0YXJmaWxlLlxuIgorI3wgIlxuIgorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1ifC0tYnVpbGQgPGRpcmVjdG9yeT4gWzxkZWI+XSAgIEJ1aWxkIGFuIGFyY2hpdmUuXG4iCisiICAtY3wtLWNvbnRlbnRzIDxkZWI+ICAgICAgICAgICAgICBMaXN0IGNvbnRlbnRzLlxuIgorIiAgLUl8LS1pbmZvIDxkZWI+IFs8Y2ZpbGU+IC4uLl0gICAgU2hvdyBpbmZvIHRvIHN0ZG91dC5cbiIKKyIgIC1XfC0tc2hvdyA8ZGViPiAgICAgICAgICAgICAgICAgIFNob3cgaW5mb3JtYXRpb24gb24gcGFja2FnZShzKVxuIgorIiAgLWZ8LS1maWVsZCA8ZGViPiBbPGNmaWVsZD4gLi4uXSAgU2hvdyBmaWVsZChzKSB0byBzdGRvdXQuXG4iCisiICAtZXwtLWNvbnRyb2wgPGRlYj4gWzxkaXJlY3Rvcnk+XSBFeHRyYWN0IGNvbnRyb2wgaW5mby5cbiIKKyIgIC14fC0tZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PiAgIEV4dHJhY3QgZmlsZXMuXG4iCisiICAtWHwtLXZleHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+ICBFeHRyYWN0ICYgbGlzdCBmaWxlcy5cbiIKKyIgIC1SfC0tcmF3LWV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEV4dHJhY3QgY29udHJvbCBpbmZvIGFuZCBmaWxlcy5cbiIKKyIgIC0tZnN5cy10YXJmaWxlIDxkZWI+ICAgICAgICAgICAgIE91dHB1dCBmaWxlc3lzdGVtIHRhcmZpbGUuXG4iCisiXG4iCittc2dzdHIgIiIKKyJDb21hbmRpOlxuIgorIiAgLWJ8LS1idWlsZCA8ZGlyZWN0b3J5PiBbPGRlYj5dICAgR2VuZXJhIHVuIGFyY2hpdmlvXG4iCisiICAtY3wtLWNvbnRlbnRzIDxkZWI+ICAgICAgICAgICAgICBFbGVuY2EgaSBjb250ZW51dGlcbiIKKyIgIC1JfC0taW5mbyA8ZGViPiBbPGNmaWxlPiAuLi5dICAgIE1vc3RyYSBpbmZvcm1hemlvbmkgc3VsbG8gc3Rkb3V0XG4iCisiICAtV3wtLXNob3cgPGRlYj4gICAgICAgICAgICAgICAgICBNb3N0cmEgaW5mb3JtYXppb25pIHN1aSBwYWNjaGV0dGlcbiIKKyIgIC1mfC0tZmllbGQgPGRlYj4gWzxjZmllbGQ+IC4uLl0gIE1vc3RyYSBpIGNhbXBpIHN1bGxvIHN0ZG91dFxuIgorIiAgLWV8LS1jb250cm9sIDxkZWI+IFs8ZGlyZWN0b3J5Pl0gRXN0cmFlIGluZm9ybWF6aW9uaSBkaSBjb250cm9sbG9cbiIKKyIgIC14fC0tZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PiAgIEVzdHJhZSBpIGZpbGVcbiIKKyIgIC1YfC0tdmV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gIEVzdHJhZSBlZCBlbGVuY2EgaSBmaWxlXG4iCisiICAtLWZzeXMtdGFyZmlsZSA8ZGViPiAgICAgICAgICAgICBDcmVhIHVuIGZpbGUgdGFyXG4iCisiXG4iCisKKyM6IGRwa2ctZGViL21haW4uYzo5MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiPGRlYj4gaXMgdGhlIGZpbGVuYW1lIG9mIGEgRGViaWFuIGZvcm1hdCBhcmNoaXZlLlxuIgorIjxjZmlsZT4gaXMgdGhlIG5hbWUgb2YgYW4gYWRtaW5pc3RyYXRpdmUgZmlsZSBjb21wb25lbnQuXG4iCisiPGNmaWVsZD4gaXMgdGhlIG5hbWUgb2YgYSBmaWVsZCBpbiB0aGUgbWFpbiBgY29udHJvbCcgZmlsZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIjxkZWI+IMOoIGlsIG5vbWUgZGkgdW4gYXJjaGl2aW8gbmVsIGZvcm1hdG8gRGViaWFuLlxuIgorIjxjZmlsZT4gw6ggaWwgbm9tZSBkaSB1bm8gZGVpIGZpbGUgZGkgYW1taW5pc3RyYXppb25lLlxuIgorIjxjZmllbGQ+IMOoIGlsIG5vbWUgZGkgdW4gY2FtcG8gbmVsIGZpbGUgXCJjb250cm9sXCIgcHJpbmNpcGFsZS5cbiIKKyJcbiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjk5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiT3B0aW9uczpcbiIKKyN8ICIgIC0tc2hvd2Zvcm1hdD08Zm9ybWF0PiAgICAgICAgICAgIFVzZSBhbHRlcm5hdGl2ZSBmb3JtYXQgZm9yIC0tc2hvdy5cbiIKKyN8ICIgIC1EICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVuYWJsZSBkZWJ1Z2dpbmcgb3V0cHV0LlxuIgorI3wgIiAgLS1vbGQsIC0tbmV3ICAgICAgICAgICAgICAgICAgICAgU2VsZWN0IGFyY2hpdmUgZm9ybWF0LlxuIgorI3wgIiAgLS1ub2NoZWNrICAgICAgICAgICAgICAgICAgICAgICAgU3VwcHJlc3MgY29udHJvbCBmaWxlIGNoZWNrIChidWlsZCAiCisjfCAiYmFkXG4iCisjfCAiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhY2thZ2VzKS5cbiIKKyN8ICIgIC16IyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNldCB0aGUgY29tcHJlc3Npb24gbGV2ZWwgd2hlbiAiCisjfCAiYnVpbGRpbmcuXG4iCisjfCAiICAtWjx0eXBlPiAgICAgICAgICAgICAgICAgICAgICAgICBTZXQgdGhlIGNvbXByZXNzaW9uIHR5cGUgdXNlZCB3aGVuICIKKyN8ICJidWlsZGluZy5cbiIKKyN8ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWxsb3dlZCB0eXBlczogZ3ppcCwgeHosIGJ6aXAyLCAiCisjfCAibHptYSwgbm9uZS5cbiIKKyN8ICJcbiIKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tc2hvd2Zvcm1hdD08Zm9ybWF0PiAgICAgICAgICAgIFVzZSBhbHRlcm5hdGl2ZSBmb3JtYXQgZm9yIC0tc2hvdy5cbiIKKyIgIC12LCAtLXZlcmJvc2UgICAgICAgICAgICAgICAgICAgIEVuYWJsZSB2ZXJib3NlIG91dHB1dC5cbiIKKyIgIC1EICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVuYWJsZSBkZWJ1Z2dpbmcgb3V0cHV0LlxuIgorIiAgLS1vbGQsIC0tbmV3ICAgICAgICAgICAgICAgICAgICAgU2VsZWN0IGFyY2hpdmUgZm9ybWF0LlxuIgorIiAgLS1ub2NoZWNrICAgICAgICAgICAgICAgICAgICAgICAgU3VwcHJlc3MgY29udHJvbCBmaWxlIGNoZWNrIChidWlsZCBiYWRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFja2FnZXMpLlxuIgorIiAgLXojICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU2V0IHRoZSBjb21wcmVzc2lvbiBsZXZlbCB3aGVuIGJ1aWxkaW5nLlxuIgorIiAgLVo8dHlwZT4gICAgICAgICAgICAgICAgICAgICAgICAgU2V0IHRoZSBjb21wcmVzc2lvbiB0eXBlIHVzZWQgd2hlbiAiCisiYnVpbGRpbmcuXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFsbG93ZWQgdHlwZXM6IGd6aXAsIHh6LCBiemlwMiwgbHptYSwgIgorIm5vbmUuXG4iCisiXG4iCittc2dzdHIgIiIKKyJPcHppb25pOlxuIgorIiAgLS1zaG93Zm9ybWF0PTxmb3JtYXRvPiAgICAgICAgICAgVXNhIHVuIGZvcm1hdG8gYWx0ZXJuYXRpdm8gcGVyIC0tc2hvd1xuIgorIiAgLUQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWJpbGl0YSBvdXRwdXQgZGkgZGVidWdcbiIKKyIgIC0tb2xkLCAtLW5ldyAgICAgICAgICAgICAgICAgICAgIFNlbGV6aW9uYSBpbCBmb3JtYXRvIGRlbGwnYXJjaGl2aW9cbiIKKyIgIC0tbm9jaGVjayAgICAgICAgICAgICAgICAgICAgICAgIERpc2F0dGl2YSBsYSB2ZXJpZmljYSBkZWwgZmlsZSBkaSAiCisiY29udHJvbGxvXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY3JlYSBwYWNjaGV0dGkgc2NhZGVudGkpXG4iCisiICAteiMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJbXBvc3RhIGlsIGxpdmVsbG8gZGkgY29tcHJlc3Npb25lIHVzYXRvXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuZWxsYSBnZW5lcmF6aW9uZSBkZWwgcGFjY2hldHRvXG4iCisiICAtWjx0aXBvPiAgICAgICAgICAgICAgICAgICAgICAgICBJbXBvc3RhIGlsIHRpcG8gZGkgY29tcHJlc3Npb25lIHVzYXRvXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuZWxsYSBnZW5lcmF6aW9uZSBkZWwgcGFjY2hldHRvXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZhbG9yaSBhbW1lc3NpOiBnemlwLCB4eiwgYnppcDIsIGx6bWEsICIKKyJub25lXG4iCisiXG4iCisKKyM6IGRwa2ctZGViL21haW4uYzoxMjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIlVzZSBgZHBrZycgdG8gaW5zdGFsbCBhbmQgcmVtb3ZlIHBhY2thZ2VzIGZyb20geW91ciBzeXN0ZW0sIG9yXG4iCisiYGRzZWxlY3QnIG9yIGBhcHRpdHVkZScgZm9yIHVzZXItZnJpZW5kbHkgcGFja2FnZSBtYW5hZ2VtZW50LiAgUGFja2FnZXNcbiIKKyJ1bnBhY2tlZCB1c2luZyBgZHBrZy1kZWIgLS1leHRyYWN0JyB3aWxsIGJlIGluY29ycmVjdGx5IGluc3RhbGxlZCAhXG4iCittc2dzdHIgIiIKKyJcbiIKKyJVc2FyZSBcImRwa2dcIiBwZXIgaW5zdGFsbGFyZSBlIHJpbXVvdmVyZSBwYWNjaGV0dGkgZGFsIHNpc3RlbWEsIG9wcHVyZVxuIgorIlwiZHNlbGVjdFwiIG8gXCJhcHRpdHVkZVwiIHBlciB1bidpbnRlcmZhY2NpYSBncmFmaWNhIGFsbGEgZ2VzdGlvbmUgZGVpXG4iCisicGFjY2hldHRpLiBQYWNjaGV0dGkgZXN0cmF0dGkgY29uIFwiZHBrZy1kZWIgLS1leHRyYWN0XCIgc2FyYW5ubyBpbnN0YWxsYXRpXG4iCisibm9uIGNvcnJldHRhbWVudGUuXG4iCisKKyM6IGRwa2ctZGViL21haW4uYzoxMzIKK21zZ2lkICIiCisiVHlwZSBkcGtnLWRlYiAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgbWFuaXB1bGF0aW5nICouZGViIGZpbGVzO1xuIgorIlR5cGUgZHBrZyAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgaW5zdGFsbGluZyBhbmQgZGVpbnN0YWxsaW5nIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorIlVzYXJlIFwiZHBrZy1kZWIgLS1oZWxwXCIgcGVyIGwnYWl1dG8gc3VsbGEgZ2VzdGlvbmUgZGVpIGZpbGUgKi5kZWI7XG4iCisiVXNhcmUgXCJkcGtnIC0taGVscFwiIHBlciBsJ2FpdXRvIHN1bGwnaW5zdGFsbGF6aW9uZSBlIHJpbW96aW9uZSBkZWkgIgorInBhY2NoZXR0aS4iCisKKyM6IGRwa2ctZGViL21haW4uYzoxNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBpbnRlZ2VyIGZvciAtJWM6ICclLjI1MHMnIgorbXNnc3RyICJudW1lcm8gaW50ZXJvIHBlciAtJWMgbm9uIHZhbGlkbzogXCIlLjI1MHNcIiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjE1MQorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGNvbXByZXNzaW9uIGxldmVsIGZvciAtJWM6ICVsZCciCittc2dzdHIgImxpdmVsbG8gZGkgY29tcHJlc3Npb25lIHBlciAtJWMgbm9uIHZhbGlkbzogXCIlbGRcIiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjE2MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGNvbXByZXNzaW9uIHR5cGUgYCVzJyEiCittc2dzdHIgInRpcG8gZGkgY29tcHJlc3Npb25lIFwiJXNcIiBzY29ub3NjaXV0by4iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjUyCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBkaWdpdCAoY29kZSAlZCkgaW4gJXMiCittc2dzdHIgImlsIGZpbGUgXCIlLjI1MHNcIiDDqCBkYW5uZWdnaWF0byAtIG51bWVybyBlcnJhdG8gKGNvZGljZSAlZCkgaW4gJXMiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjYwCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtICUuMjUwcyBtaXNzaW5nIgorbXNnc3RyICJpbCBmaWxlIFwiJS4yNTBzXCIgw6ggZGFubmVnZ2lhdG8gLSBtYW5jYSAlLjI1MHMiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjYzCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIG1pc3NpbmcgbmV3bGluZSBhZnRlciAlLjI1MHMiCittc2dzdHIgImlsIGZpbGUgXCIlLjI1MHNcIiDDqCByb3ZpbmF0byAtIG1hbmNhIGlsIG5ld2xpbmUgZG9wbyAlLjI1MHMiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjg5IGRwa2ctc3BsaXQvbWFpbi5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciByZWFkaW5nICUuMjUwcyIKK21zZ3N0ciAiZXJyb3JlIG5lbCBsZWdnZXJlICUuMjUwcyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTAzCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBtYWdpYyBhdCBlbmQgb2YgZmlyc3QgaGVhZGVyIgorbXNnc3RyICIiCisiaWwgZmlsZSBcIiUuMjUwc1wiIMOoIGRhbm5lZ2dpYXRvIC0gY29kaWNlIGRpIGNvbnRyb2xsbyBlcnJhdG8gYWxsYSBmaW5lICIKKyJkZWxsYSBwcmltYSBpbnRlc3RhemlvbmUiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjExMworIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgcGFkZGluZyBjaGFyYWN0ZXIgKGNvZGUgJWQpIgorbXNnc3RyICIiCisiaWwgZmlsZSBcIiUuMjUwc1wiIMOoIGRhbm5lZ2dpYXRvIC0gY2FyYXR0ZXJlIGRpIHJpZW1waW1lbnRvIGVycmF0byAoY29kaWNlICIKKyIlZCkiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjExNworIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBudWxscyBpbiBpbmZvIHNlY3Rpb24iCittc2dzdHIgImlsIGZpbGUgXCIlLjI1MHNcIiDDqCByb3ZpbmF0byAtIGNhcmF0dGVyaSBudWxsaSBuZWxsYSBzZXppb25lIGluZm8iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyMgorbXNnaWQgImZvcm1hdCB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAibnVtZXJvIGRpIHZlcnNpb25lIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBmb3JtYXQgdmVyc2lvbiBgJS4yNTBzJyAtIHlvdSBuZWVkIGEgbmV3ZXIgZHBrZy1zcGxpdCIKK21zZ3N0ciAiIgorImxhIHZlcnNpb25lIGRlbCBmb3JtYXRvIGRlbCBmaWxlIFwiJS4yNTBzXCIgw6ggXCIlLjI1MHNcIiAtIMOoIG5lY2Vzc2FyaWEgdW5hICIKKyJ2ZXJzaW9uZSBkaSBkcGtnLXNwbGl0IHBpw7kgcmVjZW50ZSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTI3Cittc2dpZCAicGFja2FnZSBuYW1lIgorbXNnc3RyICJub21lIHBhY2NoZXR0byIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTI4Cittc2dpZCAicGFja2FnZSB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAibnVtZXJvIGRpIHZlcnNpb25lIGRlbCBwYWNjaGV0dG8iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyOQorbXNnaWQgInBhY2thZ2UgZmlsZSBNRDUgY2hlY2tzdW0iCittc2dzdHIgImZpbGUgY2hlY2tzdW0gTUQ1IGRlbCBwYWNjaGV0dG8iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEzMgorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgTUQ1IGNoZWNrc3VtIGAlLjI1MHMnIgorbXNnc3RyICJpbCBmaWxlIFwiJS4yNTBzXCIgw6ggZGFubmVnZ2lhdG8gLSBjaGVja3N1bSBNRDUgXCIlLjI1MHNcIiBlcnJhdG8iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEzNCBkcGtnLXNwbGl0L2luZm8uYzoxMzUKK21zZ2lkICJhcmNoaXZlIHRvdGFsIHNpemUiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTM2IGRwa2ctc3BsaXQvaW5mby5jOjEzNworIywgZnV6enkKKyN8IG1zZ2lkICJwYXJ0IG9mZnNldCIKK21zZ2lkICJhcmNoaXZlIHBhcnQgb2Zmc2V0IgorbXNnc3RyICJvZmZzZXQgZGVsbGEgcG9yemlvbmUiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEzOQorIywgZnV6enkKKyN8IG1zZ2lkICJwYXJ0IG51bWJlcnMiCittc2dpZCAiYXJjaGl2ZSBwYXJ0IG51bWJlcnMiCittc2dzdHIgIm51bWVyaSBkZWxsYSBwb3J6aW9uZSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTQyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBubyBzbGFzaCBiZXR3ZWVuIHBhcnQgbnVtYmVycyIKK21zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBubyBzbGFzaCBiZXR3ZWVuIGFyY2hpdmUgcGFydCBudW1iZXJzIgorbXNnc3RyICIiCisiaWwgZmlsZSBcIiUuMjUwc1wiIMOoIGRhbm5lZ2dpYXRvIC0gbm9uIGNpIHNvbm8gc2xhc2ggKFwiL1wiKSB0cmEgaSBudW1lcmkgIgorImRlbGxlIHBvcnppb25pIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDUKKyMsIGZ1enp5CisjfCBtc2dpZCAibnVtYmVyIG9mIHBhcnRzIgorbXNnaWQgIm51bWJlciBvZiBhcmNoaXZlIHBhcnRzIgorbXNnc3RyICJudW1lcm8gZGkgcG9yemlvbmkiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE0NworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIG51bWJlciBvZiBwYXJ0cyIKK21zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgbnVtYmVyIG9mIGFyY2hpdmUgcGFydHMiCittc2dzdHIgImlsIGZpbGUgXCIlLjI1MHNcIiDDqCBkYW5uZWdnaWF0byAtIG51bWVybyBkaSBwb3J6aW9uaSBlcnJhdG8iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE0OQorIywgZnV6enkKKyN8IG1zZ2lkICJwYXJ0cyBudW1iZXIiCittc2dpZCAiYXJjaGl2ZSBwYXJ0cyBudW1iZXIiCittc2dzdHIgIm51bWVybyBkZWxsZSBwb3J6aW9uaSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTUxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgcGFydCBudW1iZXIiCittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIGFyY2hpdmUgcGFydCBudW1iZXIiCittc2dzdHIgImlsIGZpbGUgXCIlLjI1MHNcIiDDqCBkYW5uZWdnaWF0byAtIG51bWVybyBkaSBwb3J6aW9uZSBlcnJhdG8iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE1NworIywgZnV6enkKKyN8IG1zZ2lkICJwYWNrYWdlIG5hbWUiCittc2dpZCAicGFja2FnZSBhcmNoaXRlY3R1cmUiCittc2dzdHIgIm5vbWUgcGFjY2hldHRvIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIG1hZ2ljIGF0IGVuZCBvZiBzZWNvbmQgaGVhZGVyIgorbXNnc3RyICIiCisiaWwgZmlsZSBcIiUuMjUwc1wiIMOoIGRhbm5lZ2dpYXRvIC0gY29kaWNlIGRpIGNvbnRyb2xsbyBlcnJhdG8gYWxsYSBmaW5lICIKKyJkZWxsYSBzZWNvbmRhIGludGVzdGF6aW9uZSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTY4CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIHNlY29uZCBtZW1iZXIgaXMgbm90IGRhdGEgbWVtYmVyIgorbXNnc3RyICIiCisiaWwgZmlsZSBcIiUuMjUwc1wiIMOoIGRhbm5lZ2dpYXRvIC0gaWwgc2Vjb25kbyBjb21wb25lbnRlIG5vbiDDqCB1biBjb21wb25lbnRlICIKKyJkYXRpIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gd3JvbmcgbnVtYmVyIG9mIHBhcnRzIGZvciBxdW90ZWQgc2l6ZXMiCittc2dzdHIgIiIKKyJpbCBmaWxlIFwiJS4yNTBzXCIgw6ggZGFubmVnZ2lhdG8gLSBudW1lcm8gZGkgcG9yemlvbmkgZXJyYXRvIHBlciBsZSAiCisiZGltZW5zaW9uaSBcInF1b3RhdGVcIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTc4CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIHNpemUgaXMgd3JvbmcgZm9yIHF1b3RlZCBwYXJ0IG51bWJlciIKK21zZ3N0ciAiIgorImlsIGZpbGUgXCIlLjI1MHNcIiDDqCBkYW5uZWdnaWF0byAtIGRpbWVuc2lvbmUgZXJyYXRhIHBlciBpbCBudW1lcm8gZGkgIgorInBvcnppb25lIFwicXVvdGF0b1wiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxODQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZzdGF0IHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgZXNlZ3VpcmUgZnN0YXQgc3VsbGEgcG9yemlvbmUgXCIlLjI1MHNcIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTg5CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIHRvbyBzaG9ydCIKK21zZ3N0ciAiaWwgZmlsZSBcIiUuMjUwc1wiIMOoIGRhbm5lZ2dpYXRvIC0gdHJvcHBvIGNvcnRvIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyMDIgZHBrZy1zcGxpdC9pbmZvLmM6MjQ5CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBvcGVuIGFyY2hpdmUgcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSBhcHJpcmUgbGEgcG9yemlvbmUgZGkgYXJjaGl2aW8gXCIlLjI1MHNcIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjA0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgbm90IGFuIGFyY2hpdmUgcGFydCIKK21zZ3N0ciAiaWwgZmlsZSBcIiUuMjUwc1wiIG5vbiDDqCB1bmEgcG9yemlvbmUgZGkgYXJjaGl2aW8iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjIwOQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiVzOlxuIgorI3wgIiAgICBQYXJ0IGZvcm1hdCB2ZXJzaW9uOiAgICAgICAgICAgICVzXG4iCisjfCAiICAgIFBhcnQgb2YgcGFja2FnZTogICAgICAgICAgICAgICAgJXNcbiIKKyN8ICIgICAgICAgIC4uLiB2ZXJzaW9uOiAgICAgICAgICAgICAgICAlc1xuIgorI3wgIiAgICAgICAgLi4uIE1ENSBjaGVja3N1bTogICAgICAgICAgICVzXG4iCisjfCAiICAgICAgICAuLi4gbGVuZ3RoOiAgICAgICAgICAgICAgICAgJWx1IGJ5dGVzXG4iCisjfCAiICAgICAgICAuLi4gc3BsaXQgZXZlcnk6ICAgICAgICAgICAgJWx1IGJ5dGVzXG4iCisjfCAiICAgIFBhcnQgbnVtYmVyOiAgICAgICAgICAgICAgICAgICAgJWQvJWRcbiIKKyN8ICIgICAgUGFydCBsZW5ndGg6ICAgICAgICAgICAgICAgICAgICAlemkgYnl0ZXNcbiIKKyN8ICIgICAgUGFydCBvZmZzZXQ6ICAgICAgICAgICAgICAgICAgICAlbHUgYnl0ZXNcbiIKKyN8ICIgICAgUGFydCBmaWxlIHNpemUgKHVzZWQgcG9ydGlvbik6ICAlbHUgYnl0ZXNcbiIKKyN8ICJcbiIKK21zZ2lkICIiCisiJXM6XG4iCisiICAgIFBhcnQgZm9ybWF0IHZlcnNpb246ICAgICAgICAgICAgJXNcbiIKKyIgICAgUGFydCBvZiBwYWNrYWdlOiAgICAgICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIHZlcnNpb246ICAgICAgICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gYXJjaGl0ZWN0dXJlOiAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiBNRDUgY2hlY2tzdW06ICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIGxlbmd0aDogICAgICAgICAgICAgICAgICVqZCBieXRlc1xuIgorIiAgICAgICAgLi4uIHNwbGl0IGV2ZXJ5OiAgICAgICAgICAgICVqZCBieXRlc1xuIgorIiAgICBQYXJ0IG51bWJlcjogICAgICAgICAgICAgICAgICAgICVkLyVkXG4iCisiICAgIFBhcnQgbGVuZ3RoOiAgICAgICAgICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgIFBhcnQgb2Zmc2V0OiAgICAgICAgICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgIFBhcnQgZmlsZSBzaXplICh1c2VkIHBvcnRpb24pOiAgJWpkIGJ5dGVzXG4iCisiXG4iCittc2dzdHIgIiIKKyIlczpcbiIKKyIgICAgVmVyc2lvbmUgZm9ybWF0byBkZWxsYSBwb3J6aW9uZTogICAlc1xuIgorIiAgICBQb3J6aW9uZSBkZWwgcGFjY2hldHRvOiAgICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gdmVyc2lvbmU6ICAgICAgICAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiBjaGVja3N1bSBNRDU6ICAgICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIGx1bmdoZXp6YTogICAgICAgICAgICAgICAgICVsdSBieXRlXG4iCisiICAgICAgICAuLi4gc3BlenphdG8gb2duaTogICAgICAgICAgICAgJWx1IGJ5dGVcbiIKKyIgICAgTnVtZXJvIGRlbGxhIHBvcnppb25lOiAgICAgICAgICAgICAlZC8lZFxuIgorIiAgICBMdW5naGV6emEgZGVsbGEgcG9yemlvbmU6ICAgICAgICAgICV6aSBieXRlXG4iCisiICAgIE9mZnNldCBkZWxsYSBwb3J6aW9uZTogICAgICAgICAgICAgJWx1IGJ5dGVcbiIKKyIgICAgRGltZW5zaW9uZSBmaWxlIChwb3J6aW9uZSB1c2F0YSk6ICAlbHUgYnl0ZVxuIgorIlxuIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyMjUKKyMsIGZ1enp5CisjfCBtc2dpZCAiPHVua25vd24+IgorbXNnY3R4dCAiYXJjaGl0ZWN0dXJlIgorbXNnaWQgIjx1bmtub3duPiIKK21zZ3N0ciAiPHNjb25vc2NpdXRhPiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjQ0IGRwa2ctc3BsaXQvam9pbi5jOjEwNQorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIHJlcXVpcmVzIG9uZSBvciBtb3JlIHBhcnQgZmlsZSBhcmd1bWVudHMiCittc2dzdHIgIi0tJXMgcmljaGllZGUgdW5vIG8gcGnDuSBub21pIGRpIHBvcnppb25pIGNvbWUgYXJnb21lbnRpIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJXMnIGlzIG5vdCBhbiBhcmNoaXZlIHBhcnRcbiIKK21zZ3N0ciAiaWwgZmlsZSBcIiVzXCIgbm9uIMOoIHVuYSBwb3J6aW9uZSBkaSBhcmNoaXZpb1xuIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo0NAorIywgYy1mb3JtYXQKK21zZ2lkICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0OiAiCittc2dpZF9wbHVyYWwgIlB1dHRpbmcgcGFja2FnZSAlcyB0b2dldGhlciBmcm9tICVkIHBhcnRzOiAiCittc2dzdHJbMF0gIkNyZWF6aW9uZSBkZWwgcGFjY2hldHRvICVzIGRhICVkIHBvcnppb25lOiAiCittc2dzdHJbMV0gIkNyZWF6aW9uZSBkZWwgcGFjY2hldHRvICVzIGRhICVkIHBvcnppb25pOiAiCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjUxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIG91dHB1dCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSBhcHJpcmUgaWwgZmlsZSBkaSBvdXRwdXQgXCIlLjI1MHNcIiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIChyZSlvcGVuIGlucHV0IHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorImltcG9zc2liaWxlIChyaSlhcHJpcmUgaW4gbGV0dHVyYSBpbCBmaWxlIGRlbGxhIHBvcnppb25lIGRpIGFyY2hpdmlvIFwiJS4yNTBzIgorIlwiIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1OAorIywgZnV6enkKKyN8IG1zZ2lkICJTa2lwcGluZyBkZXNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dpZCAic2tpcHBpbmcgc3BsaXQgcGFja2FnZSBoZWFkZXIiCittc2dzdHIgIklnbm9yYXRvIGlsIHBhY2NoZXR0byBub24gc2VsZXppb25hdG8gJXMuXG4iCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjU5CisjLCBmdXp6eQorI3wgbXNnaWQgIlB1dHRpbmcgcGFja2FnZSAlcyB0b2dldGhlciBmcm9tICVkIHBhcnQ6ICIKKyN8IG1zZ2lkX3BsdXJhbCAiUHV0dGluZyBwYWNrYWdlICVzIHRvZ2V0aGVyIGZyb20gJWQgcGFydHM6ICIKK21zZ2lkICJzcGxpdCBwYWNrYWdlIHBhcnQiCittc2dzdHIgIkNyZWF6aW9uZSBkZWwgcGFjY2hldHRvICVzIGRhICVkIHBvcnppb25lOiAiCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjY5IGRwa2ctc3BsaXQvc3BsaXQuYzoyMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZG9uZVxuIgorbXNnc3RyICJmYXR0b1xuIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo4NQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlcyBgJS4yNTBzJyBhbmQgYCUuMjUwcycgYXJlIG5vdCBwYXJ0cyBvZiB0aGUgc2FtZSBmaWxlIgorbXNnc3RyICJpIGZpbGUgXCIlLjI1MHNcIiBlIFwiJS4yNTBzXCIgbm9uIHNvbm8gcG9yemlvbmkgZGVsbG8gc3Rlc3NvIGZpbGUiCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjkwCisjLCBjLWZvcm1hdAorbXNnaWQgInRoZXJlIGFyZSBzZXZlcmFsIHZlcnNpb25zIG9mIHBhcnQgJWQgLSBhdCBsZWFzdCBgJS4yNTBzJyBhbmQgYCUuMjUwcyciCittc2dzdHIgIiIKKyJjaSBzb25vIGRpdmVyc2UgdmVyc2lvbmkgZGVsbGEgcG9yemlvbmUgJWQgLSBhbG1lbm8gXCIlLjI1MHNcIiBlIFwiJS4yNTBzXCIiCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjEyOAorIywgYy1mb3JtYXQKK21zZ2lkICJwYXJ0ICVkIGlzIG1pc3NpbmciCittc2dzdHIgIm1hbmNhIGxhIHBvcnppb25lICVkIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo0NworIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIHNwbGl0L2pvaW4gdG9vbDsgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiIgorIkRlYmlhbiBcIiVzXCIsIHN0cnVtZW50byBwZXIgbG8gc3BsaXQvam9pbiBkZWkgcGFjY2hldHRpOyB2ZXJzaW9uZSAlcy5cbiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ29weXJpZ2h0IChDKSAxOTk0LTE5OTYgSWFuIEphY2tzb24uXG4iCittc2dzdHIgIkNvcHlyaWdodCDCqSAxOTk0LTE5OTYgSWFuIEphY2tzb24uXG4iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjY3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1zfC0tc3BsaXQgPGZpbGU+IFs8cHJlZml4Pl0gICAgIFNwbGl0IGFuIGFyY2hpdmUuXG4iCisiICAtanwtLWpvaW4gPHBhcnQ+IDxwYXJ0PiAuLi4gICAgICBKb2luIHBhcnRzIHRvZ2V0aGVyLlxuIgorIiAgLUl8LS1pbmZvIDxwYXJ0PiAuLi4gICAgICAgICAgICAgRGlzcGxheSBpbmZvIGFib3V0IGEgcGFydC5cbiIKKyIgIC1hfC0tYXV0byAtbyA8Y29tcGxldGU+IDxwYXJ0PiAgIEF1dG8tYWNjdW11bGF0ZSBwYXJ0cy5cbiIKKyIgIC1sfC0tbGlzdHEgICAgICAgICAgICAgICAgICAgICAgIExpc3QgdW5tYXRjaGVkIHBpZWNlcy5cbiIKKyIgIC1kfC0tZGlzY2FyZCBbPGZpbGVuYW1lPiAuLi5dICAgIERpc2NhcmQgdW5tYXRjaGVkIHBpZWNlcy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIkNvbWFuZGk6XG4iCisiICAtc3wtLXNwbGl0IDxmaWxlPiBbPHByZWZpc3NvPl0gICAgICBTdWRkaXZpZGUgdW4gYXJjaGl2aW9cbiIKKyIgIC1qfC0tam9pbiA8cG9yemlvbmU+IDxwb3J6aW9uZT4uLi4gIFVuaXNjZSBsZSBwb3J6aW9uaVxuIgorIiAgLUl8LS1pbmZvIDxwb3J6aW9uZT4gLi4uICAgICAgICAgICAgTW9zdHJhIGluZm9ybWF6aW9uaSBzdSB1bmEgcG9yemlvbmVcbiIKKyIgIC1hfC0tYXV0byAtbyA8Y29tcGxldG8+IDxwb3J6aW9uZT4gIEFjY3VtdWxhIGF1dG9tYXRpY2FtZW50ZSBsZSBwb3J6aW9uaVxuIgorIiAgLWx8LS1saXN0cSAgICAgICAgICAgICAgICAgICAgICAgICAgRWxlbmNhIGxlIHBvcnppb25pIG5vbiBjb3JyaXNwb25kZW50aVxuIgorIiAgLWR8LS1kaXNjYXJkIFs8cG9yemlvbmU+IC4uLl0gICAgICAgU2NhcnRhIGxlIHBvcnppb25pIG5vbiBjb3JyaXNwb25kZW50aVxuIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo4MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIk9wdGlvbnM6XG4iCisjfCAiICAtLWRlcG90ZGlyIDxkaXJlY3Rvcnk+ICAgICAgICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy8lcy5cbiIKKyN8ICIgIC1TfC0tcGFydHNpemUgPHNpemU+ICAgICAgICAgICAgIEluIEtpQiwgZm9yIC1zIChkZWZhdWx0IGlzIDQ1MCkuXG4iCisjfCAiICAtb3wtLW91dHB1dCA8ZmlsZT4gICAgICAgICAgICAgICBGb3IgLWogKGRlZmF1bHQgaXMgPHBhY2thZ2U+LTx2ZXJzaW9uPi4iCisjfCAiZGViKS5cbiIKKyN8ICIgIC1RfC0tbnBxdWlldCAgICAgICAgICAgICAgICAgICAgIEJlIHF1aWV0IHdoZW4gLWEgaXMgbm90IGEgcGFydC5cbiIKKyN8ICIgIC0tbXNkb3MgICAgICAgICAgICAgICAgICAgICAgICAgIEdlbmVyYXRlIDguMyBmaWxlbmFtZXMuXG4iCisjfCAiXG4iCisjfCAiRXhpdCBzdGF0dXM6IDAgPSBPSzsgIDEgPSAtYSBpcyBub3QgYSBwYXJ0OyAgMiA9IHRyb3VibGUhXG4iCittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWRlcG90ZGlyIDxkaXJlY3Rvcnk+ICAgICAgICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy8lcy5cbiIKKyIgIC1TfC0tcGFydHNpemUgPHNpemU+ICAgICAgICAgICAgIEluIEtpQiwgZm9yIC1zIChkZWZhdWx0IGlzIDQ1MCkuXG4iCisiICAtb3wtLW91dHB1dCA8ZmlsZT4gICAgICAgICAgICAgICBGaWxlbmFtZSwgZm9yIC1qIChkZWZhdWx0IGlzXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYWNrYWdlPl88dmVyc2lvbj5fPGFyY2g+LmRlYikuXG4iCisiICAtUXwtLW5wcXVpZXQgICAgICAgICAgICAgICAgICAgICBCZSBxdWlldCB3aGVuIC1hIGlzIG5vdCBhIHBhcnQuXG4iCisiICAtLW1zZG9zICAgICAgICAgICAgICAgICAgICAgICAgICBHZW5lcmF0ZSA4LjMgZmlsZW5hbWVzLlxuIgorIlxuIgorbXNnc3RyICIiCisiT3B6aW9uaTpcbiIKKyIgIC0tZGVwb3RkaXIgPGRpcmVjdG9yeT4gICAgICAgICAgIFVzYSA8ZGlyZWN0b3J5PiBhbCBwb3N0byBkaSAlcy8lc1xuIgorIiAgLVN8LS1wYXJ0c2l6ZSA8ZGltPiAgICAgICAgICAgICAgSW4gS2lCLCBwZXIgLXMgKHByZWRlZmluaXRvIMOoIDQ1MClcbiIKKyIgIC1vfC0tb3V0cHV0IDxmaWxlPiAgICAgICAgICAgICAgIFBlciAtaiAocHJlZGVmaW5pdG8gPHBhY2NoZXR0bz4tIgorIjx2ZXJzaW9uZT4uZGViKVxuIgorIiAgLVF8LS1ucHF1aWV0ICAgICAgICAgICAgICAgICAgICAgSWdub3JhIHF1YW5kbyAtYSBub24gw6ggdW5hIHBvcnppb25lXG4iCisiICAtLW1zZG9zICAgICAgICAgICAgICAgICAgICAgICAgICBHZW5lcmEgbm9taSBkaSBmaWxlIGluIGZvcm1hdG8gOC4zXG4iCisiXG4iCisiU3RhdG8gZGkgdXNjaXRhOiAwID0gT0s7IDEgPSAtYSBub24gw6ggdW5hIHBvcnppb25lOyAyID0gcHJvYmxlbWlcbiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6OTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkV4aXQgc3RhdHVzOlxuIgorIiAgMCA9IG9rXG4iCisiICAxID0gd2l0aCAtLWF1dG8sIGZpbGUgaXMgbm90IGEgcGFydFxuIgorIiAgMiA9IHRyb3VibGVcbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMDMKK21zZ2lkICJUeXBlIGRwa2ctc3BsaXQgLS1oZWxwIGZvciBoZWxwLiIKK21zZ3N0ciAiVXNhcmUgXCJkcGtnLXNwbGl0IC0taGVscFwiIHBlciBsJ2FpdXRvLiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6MTE1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGZpbGUgaW4gJS4yNTBzIgorbXNnc3RyICJmaW5lIGRlbCBmaWxlIGluYXR0ZXNhIGluICUuMjUwcyIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6MTI2Cittc2dpZCAicGFydCBzaXplIGlzIGZhciB0b28gbGFyZ2Ugb3IgaXMgbm90IHBvc2l0aXZlIgorbXNnc3RyICJsYSBkaW1lbnNpb25lIGRlbGxhIHBvcnppb25lIMOoIHRyb3BwbyBncmFuZGUgb3BwdXJlIG5lZ2F0aXZhIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMzAKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFydCBzaXplIG11c3QgYmUgYXQgbGVhc3QgJWQgS2lCICh0byBhbGxvdyBmb3IgaGVhZGVyKSIKK21zZ3N0ciAiIgorImxhIGRpbWVuc2lvbmUgZGVsbGEgcG9yemlvbmUgZGV2ZSBlc3NlcmUgZGkgYWxtZW5vICVkIEtpQiAocGVyIGNvbnRlbmVyZSAiCisibCdpbnRlc3RhemlvbmUpIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgZGVwb3QgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSBsZWdnZXJlIGxhIGRpcmVjdG9yeSBkaSBkZXBvc2l0byBcIiUuMjUwc1wiIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTM0Cittc2dpZCAiLS1hdXRvIHJlcXVpcmVzIHRoZSB1c2Ugb2YgdGhlIC0tb3V0cHV0IG9wdGlvbiIKK21zZ3N0ciAiLS1hdXRvIHJpY2hpZWRlIGwndXNvIGRlbGwnb3B6aW9uZSAtLW91dHB1dCIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjEzNgorbXNnaWQgIi0tYXV0byByZXF1aXJlcyBleGFjdGx5IG9uZSBwYXJ0IGZpbGUgYXJndW1lbnQiCittc2dzdHIgIiIKKyItLWF1dG8gcmljaGllZGUgZXNhdHRhbWVudGUgaWwgbm9tZSBkaSB1bmEgcG9yemlvbmUgZGkgYXJjaGl2aW8gY29tZSAiCisiYXJnb21lbnRvIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTQwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgbGVnZ2VyZSBsYSBwb3J6aW9uZSBcIiUuMjUwc1wiIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTQzCisjLCBjLWZvcm1hdAorbXNnaWQgIkZpbGUgYCUuMjUwcycgaXMgbm90IHBhcnQgb2YgYSBtdWx0aXBhcnQgYXJjaGl2ZS5cbiIKK21zZ3N0ciAiSWwgZmlsZSBcIiUuMjUwc1wiIG5vbiDDqCBwYXJ0ZSBkaSB1biBhcmNoaXZpbyBtdWx0aS1wb3J6aW9uaS5cbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE3OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVvcGVuIHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgcmlhcHJpcmUgbGEgcG9yemlvbmUgXCIlLjI1MHNcIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE4MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBuZXcgZGVwb3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiaW1wb3NzaWJpbGUgYXByaXJlIGlsIG51b3ZvIGZpbGUgZGkgZGVwb3NpdG8gXCIlLjI1MHNcIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE4NAorbXNnaWQgImV4dHJhY3Rpbmcgc3BsaXQgcGFydCIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTkyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW5hbWUgbmV3IGRlcG90IGZpbGUgYCUuMjUwcycgdG8gYCUuMjUwcyciCittc2dzdHIgIiIKKyJpbXBvc3NpYmlsZSByaW5vbWluYXJlIGlsIG51b3ZvIGZpbGUgZGkgZGVwb3NpdG8gXCIlLjI1MHNcIiBpbiBcIiUuMjUwc1wiIgorCisjIChuZHQpIGZhbnRhc3RpY2hlIHF1ZXN0ZSBzdHJpbmdoZSwKKyMgbWV0dG8gYWwgcGx1cmFsZSwgcHJlZmVyaXNjbyBwcmVuZGVyZQorIyBpbiBlc2FtZSBxdWVsIGNhc28KKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFydCAlZCBvZiBwYWNrYWdlICVzIGZpbGVkIChzdGlsbCB3YW50ICIKK21zZ3N0ciAiTGEgcG9yemlvbmUgJWQgZGVsIHBhY2NoZXR0byAlcyDDqCBzdGF0YSBhY2NvcnBhdGEgKG1hbmNhbm8gYW5jb3JhICIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjIwMAorbXNnaWQgIiBhbmQgIgorbXNnc3RyICIgZSAiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSB1c2VkLXVwIGRlcG90IGZpbGUgYCUuMjUwcyciCittc2dzdHIgImltcG9zc2liaWxlIGVsaW1pbmFyZSBpbCBmaWxlIGRpIGRlcG9zaXRvIHV0aWxpenphdG8gXCIlLjI1MHNcIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjIzNQorbXNnaWQgIkp1bmsgZmlsZXMgbGVmdCBhcm91bmQgaW4gdGhlIGRlcG90IGRpcmVjdG9yeTpcbiIKK21zZ3N0ciAiU29ubyBwcmVzZW50aSBkZWkgZmlsZSBpbnV0aWxpIG5lbGxhIGRpcmVjdG9yeSBkaSBkZXBvc2l0bzpcbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI0MCBkcGtnLXNwbGl0L3F1ZXVlLmM6MjY5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGAlLjI1MHMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSBlc2VndWlyZSBzdGF0IHN1IFwiJS4yNTBzXCIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNDMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiAlcyAoJWx1IGJ5dGVzKVxuIgorbXNnaWQgIiAlcyAoJWpkIGJ5dGVzKVxuIgorbXNnc3RyICIgJXMgKCVsdSBieXRlKVxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAlcyAobm90IGEgcGxhaW4gZmlsZSlcbiIKK21zZ3N0ciAiICVzIChub24gdW4gZmlsZSBub3JtYWxlKVxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjUwCittc2dpZCAiUGFja2FnZXMgbm90IHlldCByZWFzc2VtYmxlZDpcbiIKK21zZ3N0ciAiUGFjY2hldHRpIG5vbiBhbmNvcmEgcmlhc3NlbWJsYXRpOlxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjU4CisjLCBjLWZvcm1hdAorbXNnaWQgIiBQYWNrYWdlICVzOiBwYXJ0KHMpICIKK21zZ3N0ciAiIFBhY2NoZXR0byAlczogcG9yemlvbmkgIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjcxCisjLCBjLWZvcm1hdAorbXNnaWQgInBhcnQgZmlsZSBgJS4yNTBzJyBpcyBub3QgYSBwbGFpbiBmaWxlIgorbXNnc3RyICJpbCBmaWxlIGRlbGxhIHBvcnppb25lIFwiJS4yNTBzXCIgbm9uIMOoIHVuIGZpbGUgbm9ybWFsZSIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI3OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiKHRvdGFsICVsdSBieXRlcylcbiIKK21zZ2lkICIodG90YWwgJWpkIGJ5dGVzKVxuIgorbXNnc3RyICIodG90YWxlICVsdSBieXRlKVxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MzA0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkaXNjYXJkIGAlLjI1MHMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSBlbGltaW5hcmUgXCIlLjI1MHNcIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjMwNQorIywgYy1mb3JtYXQKK21zZ2lkICJEZWxldGVkICVzLlxuIgorbXNnc3RyICIlcyBlbGltaW5hdG8uXG4iCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzo3MCBkcGtnLXNwbGl0L3NwbGl0LmM6NzYgZHBrZy1zcGxpdC9zcGxpdC5jOjgxCisjLCBmdXp6eQorI3wgbXNnaWQgImRwa2ctZGViIGZpZWxkIGV4dHJhY3Rpb24iCittc2dpZCAicGFja2FnZSBmaWVsZCB2YWx1ZSBleHRyYWN0aW9uIgorbXNnc3RyICJlc3RyYXppb25lIGNhbXBvIGRwa2ctZGViIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTMxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIHNvdXJjZSBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSBhcHJpcmUgaWwgZmlsZSBzb3JnZW50ZSBcIiUuMjUwc1wiIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTMzCittc2dpZCAidW5hYmxlIHRvIGZzdGF0IHNvdXJjZSBmaWxlIgorbXNnc3RyICJpbXBvc3NpYmlsZSBlc2VndWlyZSBmc3RhdCBzdWwgZmlsZSBzb3JnZW50ZSIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjEzNQorIywgYy1mb3JtYXQKK21zZ2lkICJzb3VyY2UgZmlsZSBgJS4yNTBzJyBub3QgYSBwbGFpbiBmaWxlIgorbXNnc3RyICJpbCBmaWxlIHNvcmdlbnRlIFwiJS4yNTBzXCIgbm9uIMOoIHVuIGZpbGUgbm9ybWFsZSIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjE1MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiUHV0dGluZyBwYWNrYWdlICVzIHRvZ2V0aGVyIGZyb20gJWQgcGFydDogIgorI3wgbXNnaWRfcGx1cmFsICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0czogIgorbXNnaWQgIlNwbGl0dGluZyBwYWNrYWdlICVzIGludG8gJWQgcGFydDogIgorbXNnaWRfcGx1cmFsICJTcGxpdHRpbmcgcGFja2FnZSAlcyBpbnRvICVkIHBhcnRzOiAiCittc2dzdHJbMF0gIkNyZWF6aW9uZSBkZWwgcGFjY2hldHRvICVzIGRhICVkIHBvcnppb25lOiAiCittc2dzdHJbMV0gIkNyZWF6aW9uZSBkZWwgcGFjY2hldHRvICVzIGRhICVkIHBvcnppb25pOiAiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxOTMKK21zZ2lkICIiCisiSGVhZGVyIGlzIHRvbyBsb25nLCBtYWtpbmcgcGFydCB0b28gbG9uZy4gWW91ciBwYWNrYWdlIG5hbWUgb3IgdmVyc2lvblxuIgorIm51bWJlcnMgbXVzdCBiZSBleHRyYW9yZGluYXJpbHkgbG9uZywgb3Igc29tZXRoaW5nLiBHaXZpbmcgdXAuXG4iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjI0OQorbXNnaWQgIi0tc3BsaXQgbmVlZHMgYSBzb3VyY2UgZmlsZW5hbWUgYXJndW1lbnQiCittc2dzdHIgIi0tc3BsaXQgcmljaGllZGUgdW4gbm9tZSBkaSBmaWxlIHNvcmdlbnRlIGNvbWUgYXJnb21lbnRvIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MjUyCittc2dpZCAiLS1zcGxpdCB0YWtlcyBhdCBtb3N0IGEgc291cmNlIGZpbGVuYW1lIGFuZCBkZXN0aW5hdGlvbiBwcmVmaXgiCittc2dzdHIgIiIKKyItLXNwbGl0IGFjY2V0dGEgYWwgcGnDuSB1biBub21lIGRpIGZpbGUgc29yZ2VudGUgZSB1biBwcmVmaXNzbyBkaSBkZXN0aW5hemlvbmUiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo4NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMC0yMDAyIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDA5LTIwMTAgUmFwaGFlbCBIZXJ0em9nLlxuIgorbXNnc3RyICIiCisiQ29weXJpZ2h0IMKpIDE5OTUgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IMKpIDIwMDAtMjAwMiBXaWNoZXJ0IEFra2VybWFuLlxuIgorIkNvcHlyaWdodCDCqSAyMDA5LTIwMTAgUmFwaGFlbCBIZXJ0em9nLlxuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTAxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIDxjb21tYW5kPlxuIgorI3wgIlxuIgorI3wgIkNvbW1hbmRzOlxuIgorI3wgIiAgLS1pbnN0YWxsIDxsaW5rPiA8bmFtZT4gPHBhdGg+IDxwcmlvcml0eT5cbiIKKyN8ICIgICAgWy0tc2xhdmUgPGxpbms+IDxuYW1lPiA8cGF0aD5dIC4uLlxuIgorI3wgIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGFkZCBhIGdyb3VwIG9mIGFsdGVybmF0aXZlcyB0byB0aGUgc3lzdGVtLlxuIgorI3wgIiAgLS1yZW1vdmUgPG5hbWU+IDxwYXRoPiAgIHJlbW92ZSA8cGF0aD4gZnJvbSB0aGUgPG5hbWU+IGdyb3VwICIKKyN8ICJhbHRlcm5hdGl2ZS5cbiIKKyN8ICIgIC0tcmVtb3ZlLWFsbCA8bmFtZT4gICAgICByZW1vdmUgPG5hbWU+IGdyb3VwIGZyb20gdGhlIGFsdGVybmF0aXZlcyAiCisjfCAic3lzdGVtLlxuIgorI3wgIiAgLS1hdXRvIDxuYW1lPiAgICAgICAgICAgIHN3aXRjaCB0aGUgbWFzdGVyIGxpbmsgPG5hbWU+IHRvIGF1dG9tYXRpYyAiCisjfCAibW9kZS5cbiIKKyN8ICIgIC0tZGlzcGxheSA8bmFtZT4gICAgICAgICBkaXNwbGF5IGluZm9ybWF0aW9uIGFib3V0IHRoZSA8bmFtZT4gZ3JvdXAuXG4iCisjfCAiICAtLXF1ZXJ5IDxuYW1lPiAgICAgICAgICAgbWFjaGluZSBwYXJzZWFibGUgdmVyc2lvbiBvZiAtLWRpc3BsYXkgIgorI3wgIjxuYW1lPi5cbiIKKyN8ICIgIC0tbGlzdCA8bmFtZT4gICAgICAgICAgICBkaXNwbGF5IGFsbCB0YXJnZXRzIG9mIHRoZSA8bmFtZT4gZ3JvdXAuXG4iCisjfCAiICAtLWNvbmZpZyA8bmFtZT4gICAgICAgICAgc2hvdyBhbHRlcm5hdGl2ZXMgZm9yIHRoZSA8bmFtZT4gZ3JvdXAgYW5kIGFzayAiCisjfCAidGhlXG4iCisjfCAiICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlciB0byBzZWxlY3Qgd2hpY2ggb25lIHRvIHVzZS5cbiIKKyN8ICIgIC0tc2V0IDxuYW1lPiA8cGF0aD4gICAgICBzZXQgPHBhdGg+IGFzIGFsdGVybmF0aXZlIGZvciA8bmFtZT4uXG4iCisjfCAiICAtLWFsbCAgICAgICAgICAgICAgICAgICAgY2FsbCAtLWNvbmZpZyBvbiBhbGwgYWx0ZXJuYXRpdmVzLlxuIgorI3wgIlxuIgorI3wgIjxsaW5rPiBpcyB0aGUgc3ltbGluayBwb2ludGluZyB0byAlcy88bmFtZT4uXG4iCisjfCAiICAoZS5nLiAvdXNyL2Jpbi9wYWdlcilcbiIKKyN8ICI8bmFtZT4gaXMgdGhlIG1hc3RlciBuYW1lIGZvciB0aGlzIGxpbmsgZ3JvdXAuXG4iCisjfCAiICAoZS5nLiBwYWdlcilcbiIKKyN8ICI8cGF0aD4gaXMgdGhlIGxvY2F0aW9uIG9mIG9uZSBvZiB0aGUgYWx0ZXJuYXRpdmUgdGFyZ2V0IGZpbGVzLlxuIgorI3wgIiAgKGUuZy4gL3Vzci9iaW4vbGVzcylcbiIKKyN8ICI8cHJpb3JpdHk+IGlzIGFuIGludGVnZXI7IG9wdGlvbnMgd2l0aCBoaWdoZXIgbnVtYmVycyBoYXZlIGhpZ2hlciAiCisjfCAicHJpb3JpdHkgaW5cbiIKKyN8ICIgIGF1dG9tYXRpYyBtb2RlLlxuIgorI3wgIlxuIgorI3wgIk9wdGlvbnM6XG4iCisjfCAiICAtLWFsdGRpciA8ZGlyZWN0b3J5PiAgICAgY2hhbmdlIHRoZSBhbHRlcm5hdGl2ZXMgZGlyZWN0b3J5LlxuIgorI3wgIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIGNoYW5nZSB0aGUgYWRtaW5pc3RyYXRpdmUgZGlyZWN0b3J5LlxuIgorI3wgIiAgLS1za2lwLWF1dG8gICAgICAgICAgICAgIHNraXAgcHJvbXB0IGZvciBhbHRlcm5hdGl2ZXMgY29ycmVjdGx5ICIKKyN8ICJjb25maWd1cmVkXG4iCisjfCAiICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gYXV0b21hdGljIG1vZGUgKHJlbGV2YW50IGZvciAtLWNvbmZpZyAiCisjfCAib25seSlcbiIKKyN8ICIgIC0tdmVyYm9zZSAgICAgICAgICAgICAgICB2ZXJib3NlIG9wZXJhdGlvbiwgbW9yZSBvdXRwdXQuXG4iCisjfCAiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgcXVpZXQgb3BlcmF0aW9uLCBtaW5pbWFsIG91dHB1dC5cbiIKKyN8ICIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorI3wgIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLS1pbnN0YWxsIDxsaW5rPiA8bmFtZT4gPHBhdGg+IDxwcmlvcml0eT5cbiIKKyIgICAgWy0tc2xhdmUgPGxpbms+IDxuYW1lPiA8cGF0aD5dIC4uLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGFkZCBhIGdyb3VwIG9mIGFsdGVybmF0aXZlcyB0byB0aGUgc3lzdGVtLlxuIgorIiAgLS1yZW1vdmUgPG5hbWU+IDxwYXRoPiAgIHJlbW92ZSA8cGF0aD4gZnJvbSB0aGUgPG5hbWU+IGdyb3VwIGFsdGVybmF0aXZlLlxuIgorIiAgLS1yZW1vdmUtYWxsIDxuYW1lPiAgICAgIHJlbW92ZSA8bmFtZT4gZ3JvdXAgZnJvbSB0aGUgYWx0ZXJuYXRpdmVzICIKKyJzeXN0ZW0uXG4iCisiICAtLWF1dG8gPG5hbWU+ICAgICAgICAgICAgc3dpdGNoIHRoZSBtYXN0ZXIgbGluayA8bmFtZT4gdG8gYXV0b21hdGljIG1vZGUuXG4iCisiICAtLWRpc3BsYXkgPG5hbWU+ICAgICAgICAgZGlzcGxheSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgPG5hbWU+IGdyb3VwLlxuIgorIiAgLS1xdWVyeSA8bmFtZT4gICAgICAgICAgIG1hY2hpbmUgcGFyc2VhYmxlIHZlcnNpb24gb2YgLS1kaXNwbGF5IDxuYW1lPi5cbiIKKyIgIC0tbGlzdCA8bmFtZT4gICAgICAgICAgICBkaXNwbGF5IGFsbCB0YXJnZXRzIG9mIHRoZSA8bmFtZT4gZ3JvdXAuXG4iCisiICAtLWdldC1zZWxlY3Rpb25zICAgICAgICAgbGlzdCBtYXN0ZXIgYWx0ZXJuYXRpdmUgbmFtZXMgYW5kIHRoZWlyIHN0YXR1cy5cbiIKKyIgIC0tc2V0LXNlbGVjdGlvbnMgICAgICAgICByZWFkIGFsdGVybmF0aXZlIHN0YXR1cyBmcm9tIHN0YW5kYXJkIGlucHV0LlxuIgorIiAgLS1jb25maWcgPG5hbWU+ICAgICAgICAgIHNob3cgYWx0ZXJuYXRpdmVzIGZvciB0aGUgPG5hbWU+IGdyb3VwIGFuZCBhc2sgIgorInRoZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzZXIgdG8gc2VsZWN0IHdoaWNoIG9uZSB0byB1c2UuXG4iCisiICAtLXNldCA8bmFtZT4gPHBhdGg+ICAgICAgc2V0IDxwYXRoPiBhcyBhbHRlcm5hdGl2ZSBmb3IgPG5hbWU+LlxuIgorIiAgLS1hbGwgICAgICAgICAgICAgICAgICAgIGNhbGwgLS1jb25maWcgb24gYWxsIGFsdGVybmF0aXZlcy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIlVzbzogJXMgWzxvcHppb25pPiAuLi5dIDxjb21hbmRvPlxuIgorIlxuIgorIkNvbWFuZGk6XG4iCisiICAtLWluc3RhbGwgPGNvbGw+IDxub21lPiA8cGVyYz4gPHByaW9yaXTDoD5cbiIKKyIgICAgWy0tc2xhdmUgPGNvbGw+IDxub21lPiA8cGVyYz5dIC4uLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIEFnZ2l1bmdlIHVuIGdydXBwbyBkaSBhbHRlcm5hdGl2ZSBhbCBzaXN0ZW1hXG4iCisiICAtLXJlbW92ZSA8bm9tZT4gPHBlcmM+ICAgUmltdW92ZSA8cGVyYz4gZGFsIGdydXBwbyBkaSBhbHRlcm5hdGl2ZSA8bm9tZT5cbiIKKyIgIC0tcmVtb3ZlLWFsbCA8bm9tZT4gICAgICBSaW11b3ZlIGlsIGdydXBwbyA8bm9tZT4gZGFsbGUgYWx0ZXJuYXRpdmUgZGkgIgorInNpc3RlbWFcbiIKKyIgIC0tYXV0byA8bm9tZT4gICAgICAgICAgICBJbXBvc3RhIGlsIGNvbGxlZ2FtZW50byBtYXN0ZXIgPG5vbWU+IGluIG1vZGFsaXTDoCAiCisiYXV0b21hdGljYVxuIgorIiAgLS1kaXNwbGF5IDxub21lPiAgICAgICAgIFZpc3VhbGl6emEgaW5mb3JtYXppb25pIHJpZ3VhcmRvIGlsIGdydXBwbyAiCisiPG5vbWU+XG4iCisiICAtLXF1ZXJ5IDxub21lPiAgICAgICAgICAgVmVyc2lvbmUgYW5hbGl6emFiaWxlIGRhIGNvbXB1dGVyIGRpIC0tZGlzcGxheSAiCisiPG5vbWU+XG4iCisiICAtLWxpc3QgPG5vbWU+ICAgICAgICAgICAgVmlzdWFsaXp6YSB0dXR0aSBnbGkgb2JpZXR0aXZpIGRlbCBncnVwcG8gPG5vbWU+XG4iCisiICAtLWNvbmZpZyA8bm9tZT4gICAgICAgICAgTW9zdHJhIGFsdGVybmF0aXZlIHBlciBpbCBncnVwcG8gPG5vbWU+IGUgY2hpZWRlICIKKyJhbGwndXRlbnRlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgZGkgc2VsZXppb25hcmUgcXVlbGxhIGRhIHVzYXJlXG4iCisiICAtLXNldCA8bm9tZT4gPHBlcmM+ICAgICAgSW1wb3N0YSA8cGVyYz4gY29tZSBhbHRlcm5hdGl2YSBkaSA8bm9tZT5cbiIKKyIgIC0tYWxsICAgICAgICAgICAgICAgICAgICBDaGlhbWEgLS1jb25maWcgc3UgdHV0dGUgbGUgYWx0ZXJuYXRpdmVcbiIKKyJcbiIKKyI8Y29sbD4gw6ggaWwgY29sbGVnYW1lbnRvIHNpbWJvbGljbyBjaGUgcHVudGEgYSAlcy88bm9tZT4uXG4iCisiICAoZXMuIC91c3IvYmluL3BhZ2VyKVxuIgorIjxub21lPiDDqCBpbCBub21lIHByaW5jaXBhbGUgcGVyIHF1ZXN0byBncnVwcG8uXG4iCisiICAoZXMuIHBhZ2VyKVxuIgorIjxwZXJjPiDDqCBpbCBwZXJjb3JzbyBkaSB1bm8gZGVpIGZpbGUgYWx0ZXJuYXRpdmkuXG4iCisiICAoZXMuIC91c3IvYmluL2xlc3MpXG4iCisiPHByaW9yaXTDoD4gw6ggdW4gaW50ZXJvOyBvcHppb25pIGNvbiBudW1lcmkgbWFnZ2lvcmkgaGFubm8gcHJpb3JpdMOgIG1hZ2dpb3JlICIKKyJpblxuIgorIiAgbW9kYWxpdMOgIGF1dG9tYXRpY2EuXG4iCisiXG4iCisiT3B6aW9uaTpcbiIKKyIgIC0tYWx0ZGlyIDxkaXJlY3Rvcnk+ICAgICBDYW1iaWEgbGEgZGlyZWN0b3J5IGRlbGxlIGFsdGVybmF0aXZlXG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgQ2FtYmlhIGxhIGRpcmVjdG9yeSBkaSBhbW1pbmlzdHJhemlvbmVcbiIKKyIgIC0tc2tpcC1hdXRvICAgICAgICAgICAgICBTYWx0YSBpbCBwcm9tcHQgcGVyIGxlIGFsdGVybmF0aXZhIGNvcnJldHRhbWVudGUgIgorImNvbmZpZ3VyYXRlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gbW9kYWxpdMOgIGF1dG9tYXRpY2EgKHV0aWxlIHNvbG8gcGVyIC0tY29uZmlnKVxuIgorIiAgLS12ZXJib3NlICAgICAgICAgICAgICAgIE1vZGFsaXTDoCBwcm9saXNzYSwgb3V0cHV0IG1hZ2dpb3JlXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgT3BlcmEgaW4gbW9kbyBzaWxlbnppb3NvLCBvdXRwdXQgbWluaW1vXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgTW9zdHJhIHF1ZXN0byBtZXNzYWdnaW8gZGkgYWl1dG9cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBNb3N0cmEgbGEgdmVyc2lvbmVcbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiPGxpbms+IGlzIHRoZSBzeW1saW5rIHBvaW50aW5nIHRvICVzLzxuYW1lPi5cbiIKKyIgIChlLmcuIC91c3IvYmluL3BhZ2VyKVxuIgorIjxuYW1lPiBpcyB0aGUgbWFzdGVyIG5hbWUgZm9yIHRoaXMgbGluayBncm91cC5cbiIKKyIgIChlLmcuIHBhZ2VyKVxuIgorIjxwYXRoPiBpcyB0aGUgbG9jYXRpb24gb2Ygb25lIG9mIHRoZSBhbHRlcm5hdGl2ZSB0YXJnZXQgZmlsZXMuXG4iCisiICAoZS5nLiAvdXNyL2Jpbi9sZXNzKVxuIgorIjxwcmlvcml0eT4gaXMgYW4gaW50ZWdlcjsgb3B0aW9ucyB3aXRoIGhpZ2hlciBudW1iZXJzIGhhdmUgaGlnaGVyIHByaW9yaXR5ICIKKyJpblxuIgorIiAgYXV0b21hdGljIG1vZGUuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzMQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIk9wdGlvbnM6XG4iCisjfCAiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgc2V0IHRoZSBkaXJlY3Rvcnkgd2l0aCB0aGUgc3RhdG92ZXJyaWRlIGZpbGUuXG4iCisjfCAiICAtLXVwZGF0ZSAgICAgICAgICAgICAgICAgaW1tZWRpYXRlbHkgdXBkYXRlIGZpbGUgcGVybWlzc2lvbnMuXG4iCisjfCAiICAtLWZvcmNlICAgICAgICAgICAgICAgICAgZm9yY2UgYW4gYWN0aW9uIGV2ZW4gaWYgYSBzYW5pdHkgY2hlY2sgZmFpbHMuXG4iCisjfCAiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgcXVpZXQgb3BlcmF0aW9uLCBtaW5pbWFsIG91dHB1dC5cbiIKKyN8ICIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorI3wgIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisjfCAiXG4iCittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFsdGRpciA8ZGlyZWN0b3J5PiAgICAgY2hhbmdlIHRoZSBhbHRlcm5hdGl2ZXMgZGlyZWN0b3J5LlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIGNoYW5nZSB0aGUgYWRtaW5pc3RyYXRpdmUgZGlyZWN0b3J5LlxuIgorIiAgLS1sb2cgPGZpbGU+ICAgICAgICAgICAgIGNoYW5nZSB0aGUgbG9nIGZpbGUuXG4iCisiICAtLWZvcmNlICAgICAgICAgICAgICAgICAgYWxsb3cgcmVwbGFjaW5nIGZpbGVzIHdpdGggYWx0ZXJuYXRpdmUgbGlua3MuXG4iCisiICAtLXNraXAtYXV0byAgICAgICAgICAgICAgc2tpcCBwcm9tcHQgZm9yIGFsdGVybmF0aXZlcyBjb3JyZWN0bHkgIgorImNvbmZpZ3VyZWRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBhdXRvbWF0aWMgbW9kZSAocmVsZXZhbnQgZm9yIC0tY29uZmlnIG9ubHkpXG4iCisiICAtLXZlcmJvc2UgICAgICAgICAgICAgICAgdmVyYm9zZSBvcGVyYXRpb24sIG1vcmUgb3V0cHV0LlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHF1aWV0IG9wZXJhdGlvbiwgbWluaW1hbCBvdXRwdXQuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorbXNnc3RyICIiCisiT3B6aW9uaTpcbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICBJbXBvc3RhIGxhIGRpcmVjdG9yeSBjb24gaWwgZmlsZSBkaSBzdGF0b3ZlcnJpZGVcbiIKKyIgIC0tdXBkYXRlICAgICAgICAgICAgICAgICBBZ2dpb3JuYSBpbW1lZGlhdGFtZW50ZSBpIHBlcm1lc3NpIGRlbCBmaWxlXG4iCisiICAtLWZvcmNlICAgICAgICAgICAgICAgICAgRm9yemEgdW4nYXppb25lIGFuY2hlIHNlIGlsIGNvbnRyb2xsbyBub24gcmllc2NlXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgT3BlcmF6aW9uZSBzaWxlbnppb25hLCBvdXRwdXQgbWluaW1vXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgTW9zdHJhIHF1ZXN0byBtZXNzYWdnaW8gZGkgYWl1dG9cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBNb3N0cmEgbGEgdmVyc2lvbmVcbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTYzCittc2dpZCAiZXJyb3IiCittc2dzdHIgImVycm9yZSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE5MworbXNnaWQgIndhcm5pbmciCittc2dzdHIgImF0dGVuemlvbmUiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzozNTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidHdvIGNvbW1hbmRzIHNwZWNpZmllZDogLS0lcyBhbmQgLS0lcyIKK21zZ3N0ciAic3BlY2lmaWNhdGkgZHVlIGNvbWFuZGk6IC0tJXMgZSAtLSVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6Mzg3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW5ub3QgYXBwZW5kIHRvICVzOiAlcyIKK21zZ2lkICJjYW5ub3QgYXBwZW5kIHRvICclcyciCittc2dzdHIgIkltcG9zc2liaWxlIGFwcGVuZGVyZSBhICVzOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjU1NgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHJlbW92ZSAlczogJXMiCittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSAnJXMnIgorbXNnc3RyICJpbXBvc3NpYmlsZSByaW11b3ZlcmUgJXM6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTExMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBmaWxlIHdoaWxlIHRyeWluZyB0byByZWFkICVzIgorbXNnc3RyICJmaW5lIGRlbCBmaWxlIGluYXR0ZXNhIGR1cmFudGUgaWwgdGVudGF0aXZvIGRpIGxlZ2dlcmUgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTEzCisjLCBjLWZvcm1hdAorbXNnaWQgIndoaWxlIHJlYWRpbmcgJXM6ICVzIgorbXNnc3RyICJkdXJhbnRlIGxhIGxldHR1cmEgZGkgJXM6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTExOQorIywgYy1mb3JtYXQKK21zZ2lkICJsaW5lIG5vdCB0ZXJtaW5hdGVkIHdoaWxlIHRyeWluZyB0byByZWFkICVzIgorbXNnc3RyICJyaWdhIG5vbiB0ZXJtaW5hdGEgZHVyYW50ZSBpbCB0ZW50YXRpdm8gZGkgbGVnZ2VyZSAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgY29ycnVwdDogJXMiCittc2dzdHIgIiVzIGRhbm5lZ2dpYXRvOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAibmV3bGluZXMgcHJvaGliaXRlZCBpbiB1cGRhdGUtYWx0ZXJuYXRpdmVzIGZpbGVzICglcykiCittc2dzdHIgIm5ld2xpbmUgcHJvaWJpdGUgbmVpIGZpbGUgdXBkYXRlLWFsdGVybmF0aXZlcyAoJXMpIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE2MworbXNnaWQgInNsYXZlIG5hbWUiCittc2dzdHIgIm5vbWUgc2xhdmUiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTcxIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDA1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJkdXBsaWNhdGUgc2xhdmUgJXMiCittc2dpZCAiZHVwbGljYXRlIHNsYXZlIG5hbWUgJXMiCittc2dzdHIgInNsYXZlICVzIGR1cGxpY2F0byIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNzQKK21zZ2lkICJzbGF2ZSBsaW5rIgorbXNnc3RyICJjb2xsZWdhbWVudG8gc2xhdmUiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTc4CisjLCBjLWZvcm1hdAorbXNnaWQgInNsYXZlIGxpbmsgc2FtZSBhcyBtYWluIGxpbmsgJXMiCittc2dzdHIgImNvbGxlZ2FtZW50byBzbGF2ZSBpZGVudGljbyBhIHF1ZWxsbyBtYWluICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE4NSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQxMgorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgc2xhdmUgbGluayAlcyIKK21zZ3N0ciAiY29sbGVnZW1hbnRvIHNsYXZlICVzIGR1cGxpY2F0byIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMDQKK21zZ2lkICJtYXN0ZXIgZmlsZSIKK21zZ3N0ciAiZmlsZSBtYXN0ZXIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjEzCisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBwYXRoICVzIgorbXNnc3RyICJwZXJjb3JzbyAlcyBkdXBsaWNhdG8iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjI2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJhbHRlcm5hdGl2ZSAlcyAocGFydCBvZiBsaW5rIGdyb3VwICVzKSBkb2Vzbid0IGV4aXN0LiBSZW1vdmluZyBmcm9tIGxpc3Qgb2YgIgorImFsdGVybmF0aXZlcy4iCittc2dzdHIgIiIKKyJsJ2FsdGVybmF0aXZhICVzIChwYXJ0ZSBkZWwgZ3J1cHBvICVzKSBub24gZXNpc3RlLiBWaWVuZSByaW1vc3NhIGRhbGwnZWxlbmNvICIKKyJkZWxsZSBhbHRlcm5hdGl2ZS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjI5IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjQwCittc2dpZCAicHJpb3JpdHkiCittc2dzdHIgInByaW9yaXTDoCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMzIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyNDkKK21zZ2lkICJzbGF2ZSBmaWxlIgorbXNnc3RyICJmaWxlIHNsYXZlIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI0NAorIywgYy1mb3JtYXQKK21zZ2lkICJwcmlvcml0eSBvZiAlczogJXMiCittc2dzdHIgInByaW9yaXTDoCBkaSAlczogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjk3Cittc2dpZCAic3RhdHVzIgorbXNnc3RyICJzdGF0byIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyOTkKK21zZ2lkICJpbnZhbGlkIHN0YXR1cyIKK21zZ3N0ciAic3RhdG8gbm9uIHZhbGlkbyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzMDQKK21zZ2lkICJtYXN0ZXIgbGluayIKK21zZ3N0ciAiY29sbGVnYW1lbnRvIG1hc3RlciIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGlzY2FyZGluZyBvYnNvbGV0ZSBzbGF2ZSBsaW5rICVzICglcykuIgorbXNnc3RyICJlbGltaW5hemlvbmUgZGVsIGNvbGxlZ2FtZW50byBzbGF2ZSAlcyAoJXMpIG9ic29sZXRvLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MDIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NjkKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjM4Cittc2dpZCAiYXV0byBtb2RlIgorbXNnc3RyICJtb2RhbGl0w6AgYXV0b21hdGljYSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MDIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NzgKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjM5Cittc2dpZCAibWFudWFsIG1vZGUiCittc2dzdHIgIm1vZGFsaXTDoCBtYW51YWxlIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwNQorIywgYy1mb3JtYXQKK21zZ2lkICIgIGxpbmsgY3VycmVudGx5IHBvaW50cyB0byAlcyIKK21zZ3N0ciAiICBpbCBjb2xsZWdhbWVudG8gYXR0dWFsbWVudGUgcHVudGEgYSAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MDgKK21zZ2lkICIgIGxpbmsgY3VycmVudGx5IGFic2VudCIKK21zZ3N0ciAiICBjb2xsZWdhbWVudG8gYXR0dWFsbWVudGUgYXNzZW50ZSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgLSBwcmlvcml0eSAlZCIKK21zZ3N0ciAiJXMgLSBwcmlvcml0w6AgJWQiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTE1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgc2xhdmUgJXM6ICVzIgorbXNnc3RyICIgIHNsYXZlICVzOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ3VycmVudCAnYmVzdCcgdmVyc2lvbiBpcyAnJXMnLiIKK21zZ3N0ciAiTGEgdmVyc2lvbmUgXCJiZXN0XCIgYXR0dWFsZSDDqCBcIiVzXCIuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUyNAorbXNnaWQgIk5vIHZlcnNpb25zIGF2YWlsYWJsZS4iCittc2dzdHIgIk5lc3N1bmEgdmVyc2lvbmUgZGlzcG9uaWJpbGUuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU1MworIywgYy1mb3JtYXQKK21zZ2lkICJUaGVyZSBpcyAlZCBjaG9pY2UgZm9yIHRoZSBhbHRlcm5hdGl2ZSAlcyAocHJvdmlkaW5nICVzKS4iCittc2dpZF9wbHVyYWwgIlRoZXJlIGFyZSAlZCBjaG9pY2VzIGZvciB0aGUgYWx0ZXJuYXRpdmUgJXMgKHByb3ZpZGluZyAlcykuIgorbXNnc3RyWzBdICLDiCBkaXNwb25pYmlsZSAlZCBzY2VsdGEgcGVyIGwnYWx0ZXJuYXRpdmEgJXMgKGNoZSBmb3JuaXNjZSAlcykuIgorbXNnc3RyWzFdICJTb25vIGRpc3BvbmliaWxpICVkIHNjZWx0ZSBwZXIgbCdhbHRlcm5hdGl2YSAlcyAoY2hlIGZvcm5pc2NlICVzKS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYwCittc2dpZCAiU2VsZWN0aW9uIgorbXNnc3RyICJTZWxlemlvbmUiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYxCittc2dpZCAiUGF0aCIKK21zZ3N0ciAiUGVyY29yc28iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYxCittc2dpZCAiUHJpb3JpdHkiCittc2dzdHIgIlByaW9yaXTDoCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NjEKK21zZ2lkICJTdGF0dXMiCittc2dzdHIgIlN0YXRvIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU4MgorIywgYy1mb3JtYXQKK21zZ2lkICJQcmVzcyBlbnRlciB0byBrZWVwIHRoZSBjdXJyZW50IGNob2ljZVsqXSwgb3IgdHlwZSBzZWxlY3Rpb24gbnVtYmVyOiAiCittc2dzdHIgIiIKKyJQcmVtZXJlIEludmlvIHBlciBtYW50ZW5lcmUgaWwgdmFsb3JlIHByZWRlZmluaXRvWypdIG8gZGlnaXRhcmUgaWwgbnVtZXJvICIKKyJkZWxsYSBzZWxlemlvbmU6IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTcyMQorIywgYy1mb3JtYXQKK21zZ2lkICJub3QgcmVwbGFjaW5nICVzIHdpdGggYSBsaW5rLiIKK21zZ3N0ciAiJXMgbm9uIHZpZW5lIHNvc3RpdHVpdG8gY29uIHVuIGNvbGxlZ2FtZW50by4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNzYyCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbid0IGluc3RhbGwgdW5rbm93biBjaG9pY2UgJXMiCittc2dzdHIgImltcG9zc2liaWxlIGluc3RhbGxhcmUgbGEgc2NlbHRhICVzIHNjb25vc2NpdXRhIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTc4MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisic2tpcCBjcmVhdGlvbiBvZiAlcyBiZWNhdXNlIGFzc29jaWF0ZWQgZmlsZSAlcyAob2YgbGluayBncm91cCAlcykgZG9lc24ndCAiCisiZXhpc3QuIgorbXNnc3RyICIiCisic2FsdGF0YSBsYSBjcmVhemlvbmUgZGkgJXMgcG9pY2jDqSBpbCBmaWxlICVzIGFzc29jaWF0byAoZGVsIGdydXBwbyAlcykgbm9uICIKKyJlc2lzdGUuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTc5MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAibm90IHJlcGxhY2luZyAlcyB3aXRoIGEgbGluay4iCittc2dpZCAibm90IHJlbW92aW5nICVzIHNpbmNlIGl0J3Mgbm90IGEgc3ltbGluay4iCittc2dzdHIgIiVzIG5vbiB2aWVuZSBzb3N0aXR1aXRvIGNvbiB1biBjb2xsZWdhbWVudG8uIgorCisjIChuZHQpIG5vbiBobyBpZGVhIGRpIGNvc2EgdmFkYSBzb3N0aXR1aXRvLi4uCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA0MSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA0NworIywgYy1mb3JtYXQKK21zZ2lkICJDYWxsICVzLiIKK21zZ3N0ciAiQ2hpYW1hICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiQWx0ZXJuYXRpdmUgJXMgdW5jaGFuZ2VkIGJlY2F1c2UgY2hvaWNlICVzIGlzIG5vdCBhdmFpbGFibGUuIgorbXNnc3RyICJBbHRlcm5hdGl2YSAlcyBub24gbW9kaWZpY2F0YSBwb2ljaMOpIGxhIHNjZWx0YSAlcyBub24gw6ggZGlzcG9uaWJpbGUuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA1NQorIywgYy1mb3JtYXQKK21zZ2lkICJTa2lwIHVua25vd24gYWx0ZXJuYXRpdmUgJXMuIgorbXNnc3RyICJBbHRlcm5hdGl2YSAlcyBzY29ub3NjaXV0YSBzYWx0YXRhLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNzcKKyMsIGMtZm9ybWF0Cittc2dpZCAibGluZSB0b28gbG9uZyBvciBub3QgdGVybWluYXRlZCB3aGlsZSB0cnlpbmcgdG8gcmVhZCAlcyIKK21zZ3N0ciAicmlnYSB0cm9wcG8gbHVuZ2EgbyBub24gdGVybWluYXRhIGR1cmFudGUgaWwgdGVudGF0aXZvIGRpIGxlZ2dlcmUgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDkwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTAzCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjExMworIywgYy1mb3JtYXQKK21zZ2lkICJTa2lwIGludmFsaWQgbGluZTogJXMiCittc2dzdHIgIlNhbHRhIHJpZ2Egbm9uIHZhbGlkYTogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTMyCisjLCBjLWZvcm1hdAorbXNnaWQgInJlbmFtaW5nICVzIGxpbmsgZnJvbSAlcyB0byAlcy4iCittc2dzdHIgInJpbm9taW5hIGRlbCBjb2xsZWdhbWVudG8gJXMgZGEgJXMgYSAlcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTczCisjLCBjLWZvcm1hdAorbXNnaWQgInJlbmFtaW5nICVzIHNsYXZlIGxpbmsgZnJvbSAlcyB0byAlcy4iCittc2dzdHIgInJpbm9taW5hIGRlbCBjb2xsZWdhbWVudG8gc2xhdmUgJXMgZGEgJXMgaW4gJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE4OQorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBuYW1lICglcykgbXVzdCBub3QgY29udGFpbiAnLycgYW5kIHNwYWNlcy4iCittc2dzdHIgImlsIG5vbWUgYWx0ZXJuYXRpdm8gKCVzKSBub24gZGV2ZSBjb250ZW5lcmUgXCIvXCIgZSBzcGF6aS4iCisKKyMgKG5kdCkgYWNjb3JjaWF0YSwgcGVuc28gc2kgY2FwaXNjYSBsbyBzdGVzc28uLi4KKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTkzCisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIGxpbmsgaXMgbm90IGFic29sdXRlIGFzIGl0IHNob3VsZCBiZTogJXMiCittc2dzdHIgImlsIGNvbGxlZ2FtZW50byBhbHRlcm5hdGl2byBub24gw6ggYXNzb2x1dG86ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE5NworIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBwYXRoIGlzIG5vdCBhYnNvbHV0ZSBhcyBpdCBzaG91bGQgYmU6ICVzIgorbXNnc3RyICJpbCBwZXJjb3JzbyBhbHRlcm5hdGl2byBub24gw6ggYXNzb2x1dG86ICVzIgorCisjIChuZHQpIG5vbiByaWVzY28gYSBjYXBpcmUgY29zYSB2aWVuZSBzb3N0aXR1aXRvLi4uCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjIyNAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgbWFzdGVyOiAlcyIKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBtYXN0ZXI6IGl0IGlzIGEgc2xhdmUgb2YgJXMiCittc2dzdHIgImwnYWx0ZXJuYXRpdmEgJXMgbm9uIHB1w7IgZXNzZXJlIG1hc3RlcjogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjMyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjY3CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIGxpbmsgJXMgaXMgYWxyZWFkeSBtYW5hZ2VkIGJ5ICVzLiIKK21zZ3N0ciAiaWwgY29sbGVnYW1lbnRvIGFsdGVybmF0aXZvICVzIMOoIGdpw6AgZ2VzdGl0byBkYSAlcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjQxCisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIHBhdGggJXMgZG9lc24ndCBleGlzdC4iCittc2dzdHIgImlsIHBlcmNvcnNvIGFsdGVybmF0aXZvICVzIG5vbiBlc2lzdGUuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI1NAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgc2xhdmUgb2YgJXM6ICVzIgorbXNnaWQgImFsdGVybmF0aXZlICVzIGNhbid0IGJlIHNsYXZlIG9mICVzOiBpdCBpcyBhIG1hc3RlciBhbHRlcm5hdGl2ZS4iCittc2dzdHIgImwnYWx0ZXJuYXRpdmEgJXMgbm9uIHB1w7IgZXNzZXJlIHNsYXZlIGRpICVzOiAlcyIKKworIyAobmR0KSBub24gcmllc2NvIGEgY2FwaXJlIGNvc2EgdmllbmUgc29zdGl0dWl0by4uLgorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNTgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImFsdGVybmF0aXZlICVzIGNhbid0IGJlIG1hc3RlcjogJXMiCittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgc2xhdmUgb2YgJXM6IGl0IGlzIGEgc2xhdmUgb2YgJXMiCittc2dzdHIgImwnYWx0ZXJuYXRpdmEgJXMgbm9uIHB1w7IgZXNzZXJlIG1hc3RlcjogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjc4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJhbHRlcm5hdGl2ZSBsaW5rICVzIGlzIGFscmVhZHkgbWFuYWdlZCBieSAlcy4iCittc2dpZCAiYWx0ZXJuYXRpdmUgbGluayAlcyBpcyBhbHJlYWR5IG1hbmFnZWQgYnkgJXMgKHNsYXZlIG9mICVzKS4iCittc2dzdHIgImlsIGNvbGxlZ2FtZW50byBhbHRlcm5hdGl2byAlcyDDqCBnacOgIGdlc3RpdG8gZGEgJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjMyNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGFyZ3VtZW50IGAlcyciCittc2dzdHIgImFyZ29tZW50byBcIiVzXCIgc2Nvbm9zY2l1dG8iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzQzCittc2dpZCAiLS1pbnN0YWxsIG5lZWRzIDxsaW5rPiA8bmFtZT4gPHBhdGg+IDxwcmlvcml0eT4iCittc2dzdHIgIi0taW5zdGFsbCByaWNoaWVkZSA8Y29sbGVnYW1lbnRvPiA8bm9tZT4gPHBlcmNvcnNvPiA8cHJpb3JpdMOgPiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNDYgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzOTcKK21zZ2lkICI8bGluaz4gYW5kIDxwYXRoPiBjYW4ndCBiZSB0aGUgc2FtZSIKK21zZ3N0ciAiPGNvbGxlZ2FtZW50bz4gZSA8cGVyY29yc28+IG5vbiBwb3Nzb25vIGVzc2VyZSB1Z3VhbGkiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzQ5Cittc2dpZCAicHJpb3JpdHkgbXVzdCBiZSBhbiBpbnRlZ2VyIgorbXNnc3RyICJsYSBwcmlvcml0w6AgZGV2ZSBlc3NlcmUgdW4gbnVtZXJvIGludGVybyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyA8bmFtZT4gPHBhdGg+IgorbXNnc3RyICItLSVzIHJpY2hpZWRlIDxub21lPiA8cGVyY29yc28+IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM3NgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIDxuYW1lPiIKK21zZ3N0ciAiLS0lcyByaWNoaWVkZSA8bm9tZT4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzg4Cittc2dpZCAiLS1zbGF2ZSBvbmx5IGFsbG93ZWQgd2l0aCAtLWluc3RhbGwiCittc2dzdHIgIi0tc2xhdmUgY29uc2VudGl0YSBzb2xvIGNvbiAtLWluc3RhbGwiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzkwCittc2dpZCAiLS1zbGF2ZSBuZWVkcyA8bGluaz4gPG5hbWU+IDxwYXRoPiIKK21zZ3N0ciAiLS1zbGF2ZSByaWNoaWVkZSA8Y29sbGVnYW1lbnRvPiA8bm9tZT4gPHBlcmNvcnNvPiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzOTkKKyMsIGMtZm9ybWF0Cittc2dpZCAibmFtZSAlcyBpcyBib3RoIHByaW1hcnkgYW5kIHNsYXZlIgorbXNnc3RyICJpbCBub21lICVzIMOoIHNpYSBwcmltYXJpbyBjaGUgc2xhdmUiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDAyCisjLCBjLWZvcm1hdAorbXNnaWQgImxpbmsgJXMgaXMgYm90aCBwcmltYXJ5IGFuZCBzbGF2ZSIKK21zZ3N0ciAiaWwgY29sbGVnYW1lbnRvICVzIMOoIHNpYSBwcmltYXJpbyBjaGUgc2xhdmUiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDIyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSA8ZmlsZT4gYXJndW1lbnQiCittc2dzdHIgIi0tJXMgcmljaGllZGUgdW4gYXJnb21lbnRvIDxmaWxlPiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gYCVzJyIKK21zZ3N0ciAib3B6aW9uZSBcIiVzXCIgc2Nvbm9zY2l1dGEiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDUzCittc2dpZCAiIgorIm5lZWQgLS1kaXNwbGF5LCAtLXF1ZXJ5LCAtLWxpc3QsIC0tZ2V0LXNlbGVjdGlvbnMsIC0tY29uZmlnLCAtLXNldCwgLS1zZXQtIgorInNlbGVjdGlvbnMsIC0taW5zdGFsbCwgLS1yZW1vdmUsIC0tYWxsLCAtLXJlbW92ZS1hbGwgb3IgLS1hdXRvIgorbXNnc3RyICIiCisicmljaGllZGUgLS1kaXNwbGF5LCAtLXF1ZXJ5LCAtLWxpc3QsIC0tZ2V0LXNlbGVjdGlvbnMsIC0tY29uZmlnLCAtLXNldCwgLS0iCisic2V0LXNlbGVjdGlvbnMsIC0taW5zdGFsbCwgLS1yZW1vdmUsIC0tYWxsLCAtLXJlbW92ZS1hbGwgb3BwdXJlIC0tYXV0byIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0OTAKK21zZ2lkICI8c3RhbmRhcmQgaW5wdXQ+IgorbXNnc3RyICI8c3RhbmRhcmQgaW5wdXQ+IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUwMCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUwMworIywgYy1mb3JtYXQKK21zZ2lkICJubyBhbHRlcm5hdGl2ZXMgZm9yICVzLiIKK21zZ3N0ciAibmVzc3VuYSBhbHRlcm5hdGl2YSBwZXIgJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUzMAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiJXMgaXMgZGFuZ2xpbmcsIGl0IHdpbGwgYmUgdXBkYXRlZCB3aXRoIGJlc3QgY2hvaWNlLiIKK21zZ2lkICIlcy8lcyBpcyBkYW5nbGluZywgaXQgd2lsbCBiZSB1cGRhdGVkIHdpdGggYmVzdCBjaG9pY2UuIgorbXNnc3RyICIlcyDDqCBpbiBhdHRlc2EsIHZlcnLDoCBhZ2dpb3JuYXRvIHRyYW1pdGUgdW5hIHNjZWx0YSBvdHRpbWFsZS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTM0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiJXMgaGFzIGJlZW4gY2hhbmdlZCAobWFudWFsbHkgb3IgYnkgYSBzY3JpcHQpLiBTd2l0Y2hpbmcgdG8gbWFudWFsICIKKyN8ICJ1cGRhdGVzIG9ubHkuIgorbXNnaWQgIiIKKyIlcy8lcyBoYXMgYmVlbiBjaGFuZ2VkIChtYW51YWxseSBvciBieSBhIHNjcmlwdCkuIFN3aXRjaGluZyB0byBtYW51YWwgIgorInVwZGF0ZXMgb25seS4iCittc2dzdHIgIiIKKyIlcyDDqCBzdGF0byBtb2RpZmljYXRvIChtYW51YWxtZW50ZSBvIGRhIHVubyBzY3JpcHQpLiBWZW5nb25vIHVzYXRpIGkgc29saSAiCisiYWdnaW9ybmFtZW50aSBtYW51YWxpLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NDIKKyMsIGMtZm9ybWF0Cittc2dpZCAic2V0dGluZyB1cCBhdXRvbWF0aWMgc2VsZWN0aW9uIG9mICVzLiIKK21zZ3N0ciAiaW1wb3N0YXppb25lIHNlbGV6aW9uZSBhdXRvbWF0aWNhIGRpICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgZm9yICVzIG5vdCByZWdpc3RlcmVkLCBub3Qgc2V0dGluZy4iCittc2dzdHIgImFsdGVybmF0aXZhICVzIHBlciAlcyBub24gcmVnaXN0cmF0YSwgbm9uIHZpZW5lIGltcG9zdGF0YS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTU3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTYzCisjLCBjLWZvcm1hdAorbXNnaWQgIlRoZXJlIGlzIG5vIHByb2dyYW0gd2hpY2ggcHJvdmlkZXMgJXMuIgorbXNnc3RyICJOb24gYyfDqCBhbGN1biBwcm9ncmFtbWEgY2hlIGZvcm5pc2NlICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NjUgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NzUKK21zZ2lkICJOb3RoaW5nIHRvIGNvbmZpZ3VyZS4iCittc2dzdHIgIk51bGxhIGRhIGNvbmZpZ3VyYXJlLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiVGhlcmUgaXMgb25seSBvbmUgYWx0ZXJuYXRpdmUgaW4gbGluayBncm91cCAlczogJXMiCittc2dzdHIgIsOIIHByZXNlbnRlIHVuYSBzb2xhIGFsdGVybmF0aXZhIG5lbCBncnVwcG8gJXM6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU4NAorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBmb3IgJXMgbm90IHJlZ2lzdGVyZWQsIG5vdCByZW1vdmluZy4iCittc2dzdHIgImFsdGVybmF0aXZhICVzIHBlciAlcyBub24gcmVnaXN0cmF0YSwgbm9uIHZpZW5lIHJpbW9zc2EuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU5MgorIywgYy1mb3JtYXQKK21zZ2lkICJyZW1vdmluZyBtYW51YWxseSBzZWxlY3RlZCBhbHRlcm5hdGl2ZSAtIHN3aXRjaGluZyAlcyB0byBhdXRvIG1vZGUiCittc2dzdHIgIiIKKyJyaW1vemlvbmUgZGVsbGUgYWx0ZXJuYXRpdmUgc2VsZXppb25hdGUgbWFudWFsbWVudGUgLSB2aWVuZSBhdHRpdmF0YSBsYSAiCisibW9kYWxpdMOgIGF1dG9tYXRpY2EgcGVyICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYxNworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYXV0b21hdGljIHVwZGF0ZXMgb2YgJXMgYXJlIGRpc2FibGVkLCBsZWF2aW5nIGl0IGFsb25lLiIKK21zZ2lkICJhdXRvbWF0aWMgdXBkYXRlcyBvZiAlcy8lcyBhcmUgZGlzYWJsZWQsIGxlYXZpbmcgaXQgYWxvbmUuIgorbXNnc3RyICJnbGkgYWdnaW9ybmFtZW50aSBhdXRvbWF0aWNpIGRpICVzIHNvbm8gZGlzYWJpbGl0YXRpLCBsYXNjaWF0byBjb3PDrC4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjE5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ0byByZXR1cm4gdG8gYXV0b21hdGljIHVwZGF0ZXMgdXNlIGB1cGRhdGUtYWx0ZXJuYXRpdmVzIC0tYXV0byAlcycuIgorbXNnaWQgInRvIHJldHVybiB0byBhdXRvbWF0aWMgdXBkYXRlcyB1c2UgJyVzIC0tYXV0byAlcycuIgorbXNnc3RyICIiCisicGVyIHJpcHJpc3RpbmFyZSBnbGkgYWdnaW9ybmFtZW50aSBhdXRvbWF0aWNpIHVzYXJlIFwidXBkYXRlLWFsdGVybmF0aXZlcyAtLSIKKyJhdXRvICVzXCIuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYzNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1c2luZyAlcyB0byBwcm92aWRlICVzICglcykgaW4gJXMuIgorbXNnc3RyICJ2aWVuZSB1c2F0byAlcyBwZXIgZm9ybmlyZSAlcyAoJXMpIGluICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImZvcmNpbmcgcmVpbnN0YWxsYXRpb24gb2YgYWx0ZXJuYXRpdmUgJXMgYmVjYXVzZSBsaW5rIGdyb3VwICVzIGlzIGJyb2tlbi4iCittc2dzdHIgIiIKKyJ2aWVuZSBmb3J6YXRhIGwnaW5zdGFsbGF6aW9uZSBkZWxsJ2FsdGVybmF0aXZhICVzIHBvaWNow6kgaWwgZ3J1cHBvICVzIMOoICIKKyJkYW5uZWdnaWF0by4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjUxCisjLCBjLWZvcm1hdAorbXNnaWQgImN1cnJlbnQgYWx0ZXJuYXRpdmUgJXMgaXMgdW5rbm93biwgc3dpdGNoaW5nIHRvICVzIGZvciBsaW5rIGdyb3VwICVzLiIKK21zZ3N0ciAiIgorImwnYWx0ZXJuYXRpdmEgJXMgYXR0dWFsZSBub24gw6ggY29ub3NjaXV0YSwgc2kgcGFzc2EgYSAlcyBwZXIgaWwgZ3J1cHBvICVzLiIKKworI34gbXNnaWQgIml0IGlzIGEgbWFzdGVyIGFsdGVybmF0aXZlLiIKKyN+IG1zZ3N0ciAiw6ggdW4nYWx0ZXJuYXRpdmEgbWFzdGVyLiIKKworI34gbXNnaWQgIml0IGlzIGEgc2xhdmUgb2YgJXMiCisjfiBtc2dzdHIgIsOoIHVubyBzbGF2ZSBkaSAlcyIKKworI34gbXNnaWQgImNhbm5vdCBzdGF0ICVzOiAlcyIKKyN+IG1zZ3N0ciAiaW1wb3NzaWJpbGUgZXNlZ3VpcmUgc3RhdCBzdSBcIiVzXCI6ICVzIgorCisjfiBtc2dpZCAicmVhZGxpbmsoJXMpIGZhaWxlZDogJXMiCisjfiBtc2dzdHIgInJlYWRsaW5rKCVzKSBub24gcml1c2NpdGE6ICVzIgorCisjfiBtc2dpZCAic2NhbiBvZiAlcyBmYWlsZWQ6ICVzIgorI34gbXNnc3RyICJzY2Fuc2lvbmUgZGkgJXMgbm9uIHJpdXNjaXRhOiAlcyIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjdXRlICVzOiAlcyIKKyN+IG1zZ3N0ciAiZXNlY3V6aW9uZSBkaSAlcyBub24gcml1c2NpdGE6ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIG1ha2UgJXMgYSBzeW1saW5rIHRvICVzOiAlcyIKKyN+IG1zZ3N0ciAiaW1wb3NzaWJpbGUgY3JlYXJlICVzIGNvbWUgY29sbGVnYW1lbnRvIHNpbWJvbGljbyBhICVzOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsICVzIGFzICVzOiAlcyIKKyN+IG1zZ3N0ciAiaW1wb3NzaWJpbGUgaW5zdGFsbGFyZSAlcyBjb21lICVzOiAlcyIKKworI34gbXNnaWQgIndoaWxlIHdyaXRpbmcgJXM6ICVzIgorI34gbXNnc3RyICJkdXJhbnRlIGxhIHNjcml0dHVyYSBkaSAlczogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcmVhZCAlczogJXMiCisjfiBtc2dzdHIgImltcG9zc2liaWxlIGxlZ2dlcmUgJXM6ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGNsb3NlICVzOiAlcyIKKyN+IG1zZ3N0ciAiaW1wb3NzaWJpbGUgY2hpdWRlcmUgJXM6ICVzIgorCisjfiBtc2dpZCAiY2Fubm90IHdyaXRlICVzOiAlcyIKKyN+IG1zZ3N0ciAiaW1wb3NzaWJpbGUgc2NyaXZlcmUgJXM6ICVzIgorCisjLCBmdXp6eQorI358IG1zZ2lkICJ1bmFibGUgdG8gb3BlbiBmaWxlICclcyciCisjfiBtc2dpZCAidW5hYmxlIHRvIHJlbmFtZSBmaWxlICclcycgdG8gJyVzJyIKKyN+IG1zZ3N0ciAiaW1wb3NzaWJpbGUgYXByaXJlIGlsIGZpbGUgXCIlc1wiIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHVuYnVmZmVyIGAlLjI1NXMnIgorI34gbXNnc3RyICJpbXBvc3NpYmlsZSByaW11b3ZlcmUgbGEgYnVmZmVyaXp6YXppb25lIHN1IFwiJS4yNTVzXCIiCisKKyN+IG1zZ2lkICJwYXJ0IGZpbGUgYCUuMjUwcycgaGFzIHRyYWlsaW5nIGdhcmJhZ2UiCisjfiBtc2dzdHIgImxhIHBvcnppb25lIFwiJS4yNTBzXCIgdGVybWluYSBjb24gZGVsbGUgY29zZSBpbnV0aWxpIgorCisjfiBtc2dpZCAic2l6ZSAlN2Qgb2NjdXJzICU1ZCB0aW1lc1xuIgorI34gbXNnc3RyICJsYSBkaW1lbnNpb25lICU3ZCBzaSByaXByZXNlbnRhICU1ZCB2b2x0ZVxuIgorCisjfiBtc2dpZCAib3V0IG9mIG1lbW9yeSBwdXNoaW5nIGVycm9yIGhhbmRsZXI6ICIKKyN+IG1zZ3N0ciAibWVtb3JpYSBlc2F1cml0YSBpbnN0YWxsYW5kbyBpbCBnZXN0b3JlIGRpIGVycm9yaTogIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHVubG9jayBkcGtnIHN0YXR1cyBkYXRhYmFzZSIKKyN+IG1zZ3N0ciAiaW1wb3NzaWJpbGUgcmlsYXNjaWFyZSBpbCBibG9jY28gc3VsIGRhdGFiYXNlIGRpIHN0YXRvIGRpIGRwa2ciCisKKyMgKG5kdCkgPz8/CisjfiBtc2dpZCAiY29weSBpbmZvIGZpbGUgYCUuMjU1cyciCisjfiBtc2dzdHIgImNvcGlhIGRlbCBmaWxlIGRpIGluZm9ybWF6aW9uaSBcIiUuMjU1c1wiIgorCisjfiBtc2dpZCAicGFyc2UgZXJyb3IiCisjfiBtc2dzdHIgImVycm9yZSBkaSBhbmFsaXNpIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHdyaXRlIHBhcnNpbmcgd2FybmluZyIKKyN+IG1zZ3N0ciAic2NyaXR0dXJhIGRlZ2xpIGF2dmlzaSBkaSBhbmFsaXNpIG5vbiByaXVzY2l0YSIKKworI34gbXNnaWQgInVuYWJsZSB0byBsb2NrIHRyaWdnZXJzIGFyZWEiCisjfiBtc2dzdHIgImltcG9zc2liaWxlIGJsb2NjYXJlIGwnYXJlYSBkZWkgdHJpZ2dlciIKKworI34gbXNnaWQgImZhaWxlZCB0byBydW4gJXMgKCUuMjUwcykiCisjfiBtc2dzdHIgImVzZWN1emlvbmUgZGkgJXMgKCUuMjUwcykgbm9uIHJpdXNjaXRhIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgc2hlbGwgKCUuMjUwcykiCisjfiBtc2dzdHIgImVzZWN1emlvbmUgZGVsbGEgc2hlbGwgKCUuMjUwcykgbm9uIHJpdXNjaXRhIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGNoZWNrIGZvciBleGlzdGVuY2Ugb2YgYCUuMjUwcyciCisjfiBtc2dzdHIgImltcG9zc2liaWxlIHZlcmlmaWNhcmUgbCdlc2lzdGVuemEgZGkgXCIlLjI1MHNcIiIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIHJtIGZvciBjbGVhbnVwIgorI34gbXNnc3RyICJlc2VjdXppb25lIGRpIHJtIHBlciByaXB1bGlyZSBub24gcml1c2NpdGEiCisKKyN+IG1zZ2lkICIiCisjfiAiJXMgZGVidWdnaW5nIG9wdGlvbiwgLS1kZWJ1Zz08b2N0YWw+IG9yIC1EPG9jdGFsPjpcbiIKKyN+ICJcbiIKKyN+ICIgbnVtYmVyICByZWYuIGluIHNvdXJjZSAgIGRlc2NyaXB0aW9uXG4iCisjfiAiICAgICAgMSAgIGdlbmVyYWwgICAgICAgICAgIEdlbmVyYWxseSBoZWxwZnVsIHByb2dyZXNzIGluZm9ybWF0aW9uXG4iCisjfiAiICAgICAgMiAgIHNjcmlwdHMgICAgICAgICAgIEludm9jYXRpb24gYW5kIHN0YXR1cyBvZiBtYWludGFpbmVyIHNjcmlwdHNcbiIKKyN+ICIgICAgIDEwICAgZWFjaGZpbGUgICAgICAgICAgT3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkXG4iCisjfiAiICAgIDEwMCAgIGVhY2hmaWxlZGV0YWlsICAgIExvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkXG4iCisjfiAiICAgICAyMCAgIGNvbmZmICAgICAgICAgICAgIE91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGVcbiIKKyN+ICIgICAgMjAwICAgY29uZmZkZXRhaWwgICAgICAgTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggY29uZmlndXJhdGlvbiBmaWxlXG4iCisjfiAiICAgICA0MCAgIGRlcGNvbiAgICAgICAgICAgIERlcGVuZGVuY2llcyBhbmQgY29uZmxpY3RzXG4iCisjfiAiICAgIDQwMCAgIGRlcGNvbmRldGFpbCAgICAgIExvdHMgb2YgZGVwZW5kZW5jaWVzL2NvbmZsaWN0cyBvdXRwdXRcbiIKKyN+ICIgIDEwMDAwICAgdHJpZ2dlcnMgICAgICAgICAgVHJpZ2dlciBhY3RpdmF0aW9uIGFuZCBwcm9jZXNzaW5nXG4iCisjfiAiICAyMDAwMCAgIHRyaWdnZXJzZGV0YWlsICAgIExvdHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2Vyc1xuIgorI34gIiAgNDAwMDAgICB0cmlnZ2Vyc3N0dXBpZCAgICBTaWxseSBhbW91bnRzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnNcbiIKKyN+ICIgICAxMDAwICAgdmVyeXZlcmJvc2UgICAgICAgTG90cyBvZiBkcml2ZWwgYWJvdXQgZWcgdGhlIGRwa2cvaW5mbyAiCisjfiAiZGlyZWN0b3J5XG4iCisjfiAiICAgMjAwMCAgIHN0dXBpZGx5dmVyYm9zZSAgIEluc2FuZSBhbW91bnRzIG9mIGRyaXZlbFxuIgorI34gIlxuIgorI34gIkRlYnVnZ2luZyBvcHRpb25zIGFyZSBiZSBtaXhlZCB1c2luZyBiaXR3aXNlLW9yLlxuIgorI34gIk5vdGUgdGhhdCB0aGUgbWVhbmluZ3MgYW5kIHZhbHVlcyBhcmUgc3ViamVjdCB0byBjaGFuZ2UuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJPcHppb25pIGRpIGRlYnVnIGRpICVzLCAtLWRlYnVnPTxvdHRhbGU+IG9wcHVyZSAtRDxvdHRhbGU+OlxuIgorI34gIlxuIgorI34gIiBOdW1lcm8gICBNbmVtb25pY28gICAgICAgICBEZXNjcml6aW9uZVxuIgorI34gIiAgICAgIDEgICBnZW5lcmFsICAgICAgICAgICBJbmZvcm1hemlvbmkgZGkgYXZhbnphbWVudG8gZ2VuZXJhbGlcbiIKKyN+ICIgICAgICAyICAgc2NyaXB0cyAgICAgICAgICAgQ2hpYW1hdGEgZSBzdGF0byBkZWdsaSBzY3JpcHQgZGkgZGVpICIKKyN+ICJtYWludGFpbmVyXG4iCisjfiAiICAgICAxMCAgIGVhY2hmaWxlICAgICAgICAgIE91dHB1dCBwZXIgb2duaSBmaWxlIGVsYWJvcmF0b1xuIgorI34gIiAgICAxMDAgICBlYWNoZmlsZWRldGFpbCAgICBNb2xvIG91dHB1dCBwZXIgb2duaSBmaWxlIGVsYWJvcmF0b1xuIgorI34gIiAgICAgMjAgICBjb25mZiAgICAgICAgICAgICBPdXRwdXQgcGVyIG9nbmkgZmlsZSBkaSBjb25maWd1cmF6aW9uZVxuIgorI34gIiAgICAyMDAgICBjb25mZmRldGFpbCAgICAgICBNb2x0byBvdXRwdXQgcGVyIG9nbmkgZmlsZSBkaSBjb25maWd1cmF6aW9uZVxuIgorI34gIiAgICAgNDAgICBkZXBjb24gICAgICAgICAgICBEaXBlbmRlbnplIGUgY29uZmxpdHRpXG4iCisjfiAiICAgIDQwMCAgIGRlcGNvbmRldGFpbCAgICAgIE1vbHRvIG91dHB1dCByaWd1YXJkbyBkaXBlbmRlbnplL2NvbmZsaXR0aVxuIgorI34gIiAgIDEwMDAgICB2ZXJ5dmVyYm9zZSAgICAgICBNb2x0ZSBpbmZvcm1hemlvbmksIHRpcG8gbGEgZGlyZWN0b3J5IGRwa2cvIgorI34gImluZm9cbiIKKyN+ICIgICAyMDAwICAgc3R1cGlkbHl2ZXJib3NlICAgVHJvcHBlIGluZm9ybWF6aW9uaVxuIgorI34gIlxuIgorI34gIkxlIG9wemlvbmkgZGkgZGVidWcgdmVuZ29ubyBjb21iaW5hdGUgdHJhbWl0ZSBiaXR3aXNlLW9yLlxuIgorI34gIk5vdGFyZSBjaGUgaSB2YWxvcmkgZSBsZSBkZXNjcml6aW9uaSBwb3RyZWJiZXJvIGNhbWJpYXJlLlxuIgorCisjfiBtc2dpZCAiIgorI34gIiVzIGZvcmNpbmcgb3B0aW9ucyAtIGNvbnRyb2wgYmVoYXZpb3VyIHdoZW4gcHJvYmxlbXMgZm91bmQ6XG4iCisjfiAiICB3YXJuIGJ1dCBjb250aW51ZTogIC0tZm9yY2UtPHRoaW5nPiw8dGhpbmc+LC4uLlxuIgorI34gIiAgc3RvcCB3aXRoIGVycm9yOiAgICAtLXJlZnVzZS08dGhpbmc+LDx0aGluZz4sLi4uIHwgLS1uby1mb3JjZS0iCisjfiAiPHRoaW5nPiwuLi5cbiIKKyN+ICIgRm9yY2luZyB0aGluZ3M6XG4iCisjfiAiICBhbGwgWyFdICAgICAgICAgICAgICAgIFNldCBhbGwgZm9yY2Ugb3B0aW9uc1xuIgorI34gIiAgZG93bmdyYWRlIFsqXSAgICAgICAgICBSZXBsYWNlIGEgcGFja2FnZSB3aXRoIGEgbG93ZXIgdmVyc2lvblxuIgorI34gIiAgY29uZmlndXJlLWFueSAgICAgICAgICBDb25maWd1cmUgYW55IHBhY2thZ2Ugd2hpY2ggbWF5IGhlbHAgdGhpcyBvbmVcbiIKKyN+ICIgIGhvbGQgICAgICAgICAgICAgICAgICAgUHJvY2VzcyBpbmNpZGVudGFsIHBhY2thZ2VzIGV2ZW4gd2hlbiBvbiBob2xkXG4iCisjfiAiICBiYWQtcGF0aCAgICAgICAgICAgICAgIFBBVEggaXMgbWlzc2luZyBpbXBvcnRhbnQgcHJvZ3JhbXMsIHByb2JsZW1zICIKKyN+ICJsaWtlbHlcbiIKKyN+ICIgIG5vdC1yb290ICAgICAgICAgICAgICAgVHJ5IHRvIChkZSlpbnN0YWxsIHRoaW5ncyBldmVuIHdoZW4gbm90IHJvb3RcbiIKKyN+ICIgIG92ZXJ3cml0ZSAgICAgICAgICAgICAgT3ZlcndyaXRlIGEgZmlsZSBmcm9tIG9uZSBwYWNrYWdlIHdpdGggYW5vdGhlclxuIgorI34gIiAgb3ZlcndyaXRlLWRpdmVydGVkICAgICBPdmVyd3JpdGUgYSBkaXZlcnRlZCBmaWxlIHdpdGggYW4gdW5kaXZlcnRlZCAiCisjfiAidmVyc2lvblxuIgorI34gIiAgYmFkLXZlcmlmeSAgICAgICAgICAgICBJbnN0YWxsIGEgcGFja2FnZSBldmVuIGlmIGl0IGZhaWxzIGF1dGhlbnRpY2l0eSAiCisjfiAiY2hlY2tcbiIKKyN+ICIgIGRlcGVuZHMtdmVyc2lvbiBbIV0gICAgVHVybiBkZXBlbmRlbmN5IHZlcnNpb24gcHJvYmxlbXMgaW50byB3YXJuaW5nc1xuIgorI34gIiAgZGVwZW5kcyBbIV0gICAgICAgICAgICBUdXJuIGFsbCBkZXBlbmRlbmN5IHByb2JsZW1zIGludG8gd2FybmluZ3NcbiIKKyN+ICIgIGNvbmZuZXcgWyFdICAgICAgICAgICAgQWx3YXlzIHVzZSB0aGUgbmV3IGNvbmZpZyBmaWxlcywgZG9uJ3QgcHJvbXB0XG4iCisjfiAiICBjb25mb2xkIFshXSAgICAgICAgICAgIEFsd2F5cyB1c2UgdGhlIG9sZCBjb25maWcgZmlsZXMsIGRvbid0IHByb21wdFxuIgorI34gIiAgY29uZmRlZiBbIV0gICAgICAgICAgICBVc2UgdGhlIGRlZmF1bHQgb3B0aW9uIGZvciBuZXcgY29uZmlnIGZpbGVzIGlmICIKKyN+ICJvbmVcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgaXMgYXZhaWxhYmxlLCBkb24ndCBwcm9tcHQuIElmIG5vIGRlZmF1bHQgY2FuIGJlICIKKyN+ICJmb3VuZCxcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgeW91IHdpbGwgYmUgcHJvbXB0ZWQgdW5sZXNzIG9uZSBvZiB0aGUgY29uZm9sZCAiCisjfiAib3JcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgY29uZm5ldyBvcHRpb25zIGlzIGFsc28gZ2l2ZW5cbiIKKyN+ICIgIGNvbmZtaXNzIFshXSAgICAgICAgICAgQWx3YXlzIGluc3RhbGwgbWlzc2luZyBjb25maWcgZmlsZXNcbiIKKyN+ICIgIGNvbmZhc2sgWyFdICAgICAgICAgICAgT2ZmZXIgdG8gcmVwbGFjZSBjb25maWcgZmlsZXMgd2l0aCBubyBuZXcgIgorI34gInZlcnNpb25zXG4iCisjfiAiICBicmVha3MgWyFdICAgICAgICAgICAgIEluc3RhbGwgZXZlbiBpZiBpdCB3b3VsZCBicmVhayBhbm90aGVyIHBhY2thZ2VcbiIKKyN+ICIgIGNvbmZsaWN0cyBbIV0gICAgICAgICAgQWxsb3cgaW5zdGFsbGF0aW9uIG9mIGNvbmZsaWN0aW5nIHBhY2thZ2VzXG4iCisjfiAiICBhcmNoaXRlY3R1cmUgWyFdICAgICAgIFByb2Nlc3MgZXZlbiBwYWNrYWdlcyB3aXRoIHdyb25nIGFyY2hpdGVjdHVyZVxuIgorI34gIiAgb3ZlcndyaXRlLWRpciBbIV0gICAgICBPdmVyd3JpdGUgb25lIHBhY2thZ2UncyBkaXJlY3Rvcnkgd2l0aCBhbm90aGVyJ3MgIgorI34gImZpbGVcbiIKKyN+ICIgIHVuc2FmZS1pbyBbIV0gICAgICAgICAgRG8gbm90IHBlcmZvcm0gc2FmZSBJL08gb3BlcmF0aW9ucyB3aGVuICIKKyN+ICJ1bnBhY2tpbmdcbiIKKyN+ICIgIHJlbW92ZS1yZWluc3RyZXEgWyFdICAgUmVtb3ZlIHBhY2thZ2VzIHdoaWNoIHJlcXVpcmUgaW5zdGFsbGF0aW9uXG4iCisjfiAiICByZW1vdmUtZXNzZW50aWFsIFshXSAgIFJlbW92ZSBhbiBlc3NlbnRpYWwgcGFja2FnZVxuIgorI34gIlxuIgorI34gIldBUk5JTkcgLSB1c2Ugb2Ygb3B0aW9ucyBtYXJrZWQgWyFdIGNhbiBzZXJpb3VzbHkgZGFtYWdlIHlvdXIgIgorI34gImluc3RhbGxhdGlvbi5cbiIKKyN+ICJGb3JjaW5nIG9wdGlvbnMgbWFya2VkIFsqXSBhcmUgZW5hYmxlZCBieSBkZWZhdWx0LlxuIgorI34gbXNnc3RyICIiCisjfiAiT3B6aW9uaSBkaSBmb3J6YXR1cmEgZGkgJXMgLSBBemlvbmkgZGEgc3ZvbGdlcmUgaW4gY2FzbyBkaSBwcm9ibGVtaTpcbiIKKyN+ICIgIEF2dmlzYXJlIG1hIGNvbnRpbnVhcmU6IC0tZm9yY2UtPG9wemlvbmU+LDxvcHppb25lPiwuLi5cbiIKKyN+ICIgIEZlcm1hcnNpIGNvbiBlcnJvcmU6ICAgIC0tcmVmdXNlLTxvcHppb25lPiw8b3B6aW9uZT4sLi4uIHwgLS1uby1mb3JjZS0iCisjfiAiPG9wemlvbmU+LC4uLlxuIgorI34gIiBPcHppb25pIGRpIGZvcnphdHVyYTpcbiIKKyN+ICIgIGFsbCBbIV0gICAgICAgICAgICAgICAgU2VsZXppb25hIHR1dHRlIGxlIG9wemlvbmkgZGkgZm9yemF0dXJhXG4iCisjfiAiICBkb3duZ3JhZGUgWypdICAgICAgICAgIFNvc3RpdHVpc2NlIHVuIHBhY2NoZXR0byBjb24gdW5hIHZlcnNpb25lICIKKyN+ICJwcmVjZWRlbnRlXG4iCisjfiAiICBjb25maWd1cmUtYW55ICAgICAgICAgIENvbmZpZ3VyYSBxdWFsc2lhc2kgcGFjY2hldHRvIHNlIHB1w7IgZXNzZXJlICIKKyN+ICJ1dGlsZVxuIgorI34gIiAgaG9sZCAgICAgICAgICAgICAgICAgICBFbGFib3JhIGkgcGFjY2hldHRpIGFuY2hlIHNlIGJsb2NjYXRpXG4iCisjfiAiICBiYWQtcGF0aCAgICAgICAgICAgICAgIExhIHZhcmlhYmlsZSBQQVRIIG5vbiBwcmVzZW50YSBwcm9ncmFtbWkgIgorI34gImltcG9ydGFudGksXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIHByb2JhYmlsaSBlcnJvcmlcbiIKKyN+ICIgIG5vdC1yb290ICAgICAgICAgICAgICAgQ2VyY2EgZGkgZGlzL2luc3RhbGxhcmUgaSBwYWNjaGV0dGkgYW5jaGUgc2Ugbm9uICIKKyN+ICJyb290XG4iCisjfiAiICBvdmVyd3JpdGUgICAgICAgICAgICAgIFNvdnJhc2NyaXZlIGlsIGZpbGUgZGkgdW4gcGFjY2hldHRvIGNvbiBxdWVsbG8gIgorI34gImRpIHVuXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIGFsdHJvXG4iCisjfiAiICBvdmVyd3JpdGUtZGl2ZXJ0ZWQgICAgIFNvdnJhc2NyaXZlIHVuIGZpbGUgZGV2aWF0byBjb24gdW5vIG5vcm1hbGVcbiIKKyN+ICIgIGJhZC12ZXJpZnkgICAgICAgICAgICAgSW5zdGFsbGEgdW4gcGFjY2hldHRvIGFuY2hlIHNlIHByZXNlbnRhIGVycm9yaSAiCisjfiAiZGlcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgYXV0ZW50aWNhemlvbmVcbiIKKyN+ICIgIGRlcGVuZHMtdmVyc2lvbiBbIV0gICAgVHJhc2Zvcm1hIGkgcHJvYmxlbWkgY29uIGxlIGRpcGVuZGVuemUgc3VsbGUgIgorI34gInZlcnNpb25pXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIGluIGF2dmlzaVxuIgorI34gIiAgZGVwZW5kcyBbIV0gICAgICAgICAgICBUcmFzZm9ybWEgdHV0dGkgaSBwcm9ibGVtaSBjb24gbGUgZGlwZW5kZW56ZSBpbiAiCisjfiAiYXZ2aXNpXG4iCisjfiAiICBjb25mbmV3IFshXSAgICAgICAgICAgIFVzYSBzZW1wcmUgaSBudW92aSBmaWxlIGRpIGNvbmZpZ3VyYXppb25lIHNlbnphICIKKyN+ICJjaGllZGVyZVxuIgorI34gIiAgY29uZm9sZCBbIV0gICAgICAgICAgICBVc2Egc2VtcHJlIGkgdmVjY2hpIGZpbGUgZGkgY29uZmlndXJhemlvbmUgc2VuemEgIgorI34gImNoaWVkZXJlXG4iCisjfiAiICBjb25mZGVmIFshXSAgICAgICAgICAgIFVzYSBsJ29wemlvbmUgcHJlZGVmaW5pdGEgcGVyIGkgbnVvdmkgZmlsZSBkaSAiCisjfiAiY29uZmlndXJhemlvbmVcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgc2UgZGlzcG9uaWJpbGUsIHNlbnphIGNoaWVkZXJlLiBTZSBub24gdmllbmUgIgorI34gInRyb3ZhdG8gaWxcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgdmFsb3JlIHByZWRlZmluaXRvLCBzYXLDoCByaWNoaWVzdGEgY29uZmVybWEgYSAiCisjfiAibWVubyBjaGVcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgbm9uIHNpYSBpbmRpY2F0YSB1bmEgZGVsbGUgb3B6aW9uaSBjb25mb2xkIG8gIgorI34gImNvbmZuZXdcbiIKKyN+ICIgIGNvbmZtaXNzIFshXSAgICAgICAgICAgSW5zdGFsbGEgc2VtcHJlIGkgZmlsZSBkaSBjb25maWd1cmF6aW9uZSAiCisjfiAibWFuY2FudGlcbiIKKyN+ICIgIGNvbmZhc2sgWyFdICAgICAgICAgICAgT2ZmcmUgZGkgc29zdGl0dWlyZSBpIGZpbGUgZGkgY29uZmlndXJhemlvbmUgY29uICIKKyN+ICJudW92ZSB2ZXJzaW9uaVxuIgorI34gIiAgYnJlYWtzIFshXSAgICAgICAgICAgICBJbnN0YWxsYSBhbmNoZSBzZSBwb3RyZWJiZSBkYW5uZWdnaWFyZSB1biBhbHRybyAiCisjfiAicGFjY2hldHRvXG4iCisjfiAiICBjb25mbGljdHMgWyFdICAgICAgICAgIENvbnNlbnRlIGwnaW5zdGFsbGF6aW9uZSBkaSBwYWNjaGV0dGkgYW5jaGUgc2UgIgorI34gImdlbmVyYW5vXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmZsaXR0aVxuIgorI34gIiAgYXJjaGl0ZWN0dXJlIFshXSAgICAgICBFbGFib3JhIGFuY2hlIHBhY2NoZXR0aSBjb24gYXJjaGl0ZXR0dXJhIGVycmF0YVxuIgorI34gIiAgb3ZlcndyaXRlLWRpciBbIV0gICAgICBTb3ZyYXNjcml2ZSBsYSBkaXJlY3RvcnkgZGkgdW4gcGFjY2hldHRvIGNvbiB1biAiCisjfiAiZmlsZSBkaVxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICB1biBhbHRyb1xuIgorI34gIiAgdW5zYWZlLWlvIFshXSAgICAgICAgICBOb24gZXNlZ3VlIG9wZXJhemlvbmkgc2ljdXJlIGRpIEkvTyBkdXJhbnRlICIKKyN+ICJsJ2VzdHJhemlvbmVcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgZGVpIHBhY2NoZXR0aVxuIgorI34gIiAgcmVtb3ZlLXJlaW5zdHJlcSBbIV0gICBSaW11b3ZlIGkgcGFjY2hldHRpIGNoZSByaWNoaWVkb25vIGxhICIKKyN+ICJyZWluc3RhbGxhemlvbmVcbiIKKyN+ICIgIHJlbW92ZS1lc3NlbnRpYWwgWyFdICAgUmltdW92ZSB1biBwYWNjaGV0dG8gZXNzZW56aWFsZVxuIgorI34gIlxuIgorI34gIkF0dGVuemlvbmU6IGwndXNvIGRlbGxlIG9wemlvbmkgY29udHJhc3NlZ25hdGUgZGEgWyFdIHBvdHJlYmJlIGNhdXNhcmUgIgorI34gImRhbm5pXG4iCisjfiAiYWxsYSBwcm9wcmlhIGluc3RhbGxhemlvbmUuXG4iCisjfiAiTGUgb3B6aW9uaSBjb250cmFzc2VnbmF0ZSBkYSBbKl0gc29ubyBhYmlsaXRhdGUgaW4gbW9kbyBwcmVkZWZpbml0by5cbiIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIGRwa2ctc3BsaXQgdG8gc2VlIGlmIGl0J3MgcGFydCBvZiBhIG11bHRpcGFydGVyIgorI34gbXNnc3RyICIiCisjfiAiZXNlY3V6aW9uZSBkaSBkcGtnLXNwbGl0IHBlciB2ZXJpZmljYXJlIHNlIHNpIHRyYXR0YSBkaSB1biBtdWx0aS1wb3J6aW9uaSAiCisjfiAibm9uIHJpdXNjaXRhIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWNsIGRlYnNpZy12ZXJpZnkiCisjfiBtc2dzdHIgImVzZWN1emlvbmUgZGkgZGVic2lnbi12ZXJpZnkgbm9uIHJpdXNjaXRhIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgZHBrZy1kZWIgdG8gZXh0cmFjdCBjb250cm9sIGluZm9ybWF0aW9uIgorI34gbXNnc3RyICIiCisjfiAiZXNlY3V6aW9uZSBkaSBkcGtnLWRlYiBwZXIgZXN0cmFycmUgbGUgaW5mb3JtYXppb25pIGRpIGNvbnRyb2xsbyBub24gIgorI34gInJpdXNjaXRhIgorCisjIChuZHQpIHF1ZXN0byBzZW1icmEgYXR0aXZhdG8gZGFsbCdvcHppb25lIC0tZnN5cy10YXJmaWxlCisjfiBtc2dpZCAidW5hYmxlIHRvIGV4ZWMgZHBrZy1kZWIgdG8gZ2V0IGZpbGVzeXN0ZW0gYXJjaGl2ZSIKKyN+IG1zZ3N0ciAiIgorI34gImltcG9zc2liaWxlIGVzZWd1aXJlIGRwa2ctZGViIHBlciByZWN1cGVyYXJlIGwnYXJjaGl2aW8gaW4gZm9ybWF0byB0YXIiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gZGVsZXRlIGRpc2FwcGVhcmluZyBjb250cm9sIGluZm8gZmlsZSBgJS4yNTBzJyIKKyN+IG1zZ3N0ciAiIgorI34gImltcG9zc2liaWxlIGVsaW1pbmFyZSBpbCBmaWxlIGNvbiBsZSBpbmZvcm1hemlvbmkgZGkgY29udHJvbGxvIFwiJS4yNTBzXCIiCisKKyN+IG1zZ2lkICJkcGtnOiAlcyBub3QgZm91bmQuXG4iCisjfiBtc2dzdHIgImRwa2c6ICVzIG5vbiB0cm92YXRvLlxuIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIC4uLi9ERUJJQU4iCisjfiBtc2dzdHIgImVzZWN1emlvbmUgZGkgY2hkaXIgYSBcIi4uLi9ERUJJQU5cIiBub24gcml1c2NpdGEiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyB0YXIgLWNmIgorI34gbXNnc3RyICJlc2VjdXppb25lIGRpIFwidGFyIC1jZlwiIG5vbiByaXVzY2l0YSIKKworI34gbXNnaWQgImZhaWxlZCB0byBtYWtlIHRtcGZpbGUgKGNvbnRyb2wpIgorI34gbXNnc3RyICJjcmVhemlvbmUgZGkgdW4gZmlsZSB0ZW1wb3JhbmVvIG5vbiByaXVzY2l0YSAoY29udHJvbCkiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gdW5saW5rIHRtcGZpbGUgKGNvbnRyb2wpLCAlcyIKKyN+IG1zZ3N0ciAiIgorI34gInJpbW96aW9uZSBkZWwgY29sbGVnYW1lbnRvIGFsIGZpbGUgdGVtcG9yYW5lbyAlcyBub24gcml1c2NpdGEgKGNvbnRyb2wpIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHJld2luZCB0bXBmaWxlIChjb250cm9sKSIKKyN+IG1zZ3N0ciAiZXNlY3V6aW9uZSBkaSByZXdpbmQgc3VsIGZpbGUgdGVtcG9yYW5lbyBub24gcml1c2NpdGEgKGNvbnRyb2wpIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGZzdGF0IHRtcGZpbGUgKGNvbnRyb2wpIgorI34gbXNnc3RyICJlc2VjdXppb25lIGRpIGZzdGF0IHN1bCBmaWxlIHRlbXBvcmFuZW8gbm9uIHJpdXNjaXRhIChjb250cm9sKSIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIGZpbmQiCisjfiBtc2dzdHIgImVzZWN1emlvbmUgZGkgZmluZCBub24gcml1c2NpdGEiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBzaCAtYyBtdiBmb28vKiAmYyIKKyN+IG1zZ3N0ciAiZXNlY3V6aW9uZSBkaSBcInNoIC1jIG12IGZvby8qICZjXCIgbm9uIHJpdXNjaXRhIgorCisjfiBtc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gJS4yNTBzIGxlbmd0aCBjb250YWlucyBudWxscyIKKyN+IG1zZ3N0ciAiIgorI34gImlsIGZpbGUgXCIlLjI1MHNcIiDDqCBkYW5uZWdnaWF0byAtICUuMjUwcyBjb250aWVuZSBkZWkgY2FyYXR0ZXJpIG51bGxpIgorCisjfiBtc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gbmVnYXRpdmUgbWVtYmVyIGxlbmd0aCAlemkiCisjfiBtc2dzdHIgIiIKKyN+ICJpbCBmaWxlIFwiJS4yNTBzXCIgw6ggcm92aW5hdG8gLSBsdW5naGV6emEgZGkgdW4gZWxlbWVudG8gbmVnYXRpdmEgKCV6aSkiCisKKyN+IG1zZ2lkICJmYWlsZWQgZ2V0dGluZyB0aGUgY3VycmVudCBmaWxlIHBvc2l0aW9uIgorI34gbXNnc3RyICJyZWN1cGVybyBkZWxsYSBwb3NpemlvbmUgYXR0dWFsZSBkZWwgZmlsZSBub24gcml1c2NpdG8iCisKKyN+IG1zZ2lkICJmYWlsZWQgc2V0dGluZyB0aGUgY3VycmVudCBmaWxlIHBvc2l0aW9uIgorI34gbXNnc3RyICJpbXBvc3RhemlvbmUgZGVsbGEgcG9zaXppb25lIGF0dHVhbGUgZGVsIGZpbGUgbm9uIHJpdXNjaXRhIgorCisjfiBtc2dpZCAidmVyc2lvbiBudW1iZXIiCisjfiBtc2dzdHIgIm51bWVybyBkaSB2ZXJzaW9uZSIKKworIyAobmR0KSBib2guLi4KKyN+IG1zZ2lkICJtZW1iZXIgbGVuZ3RoIgorI34gbXNnc3RyICJsdW5naGV6emEgbWVtYnJvIgorCisjfiBtc2dpZCAiaGVhZGVyIGluZm8gbWVtYmVyIgorI34gbXNnc3RyICJpbnRlc3RhemlvbmUgZWxlbWVudG8iCisKKyN+IG1zZ2lkICJza2lwcGVkIGNvbnRyb2wgYXJlYSBmcm9tICVzIgorI34gbXNnc3RyICJhcmVhIGRpIGNvbnRyb2xsbyBkYSAlcyB0cmFsYXNjaWF0YSIKKworI34gbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgdGVtcG9yYXJ5IGRpcmVjdG9yeSIKKyN+IG1zZ3N0ciAiY3JlYXppb25lIGRlbGxhIGRpcmVjdG9yeSB0ZW1wb3JhbmVhIG5vbiByaXVzY2l0YSIKKworI34gbXNnaWQgImluZm9fc3BldyIKKyN+IG1zZ3N0ciAiaW5mb19zcGV3IgorCisjfiBtc2dpZCAiaW5mbyBsZW5ndGgiCisjfiBtc2dzdHIgImx1bmdoZXp6YSBpbmZvIgorCisjfiBtc2dpZCAidG90YWwgbGVuZ3RoIgorI34gbXNnc3RyICJsdW5naGV6emEgdG90YWxlIgorCisjfiBtc2dpZCAiZGF0YSBsZW5ndGgiCisjfiBtc2dzdHIgImx1bmdoZXp6YSBkYXRpIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgZHBrZy1kZWIgdG8gZXh0cmFjdCBmaWVsZCB2YWx1ZSIKKyN+IG1zZ3N0ciAiIgorI34gImVzZWN1emlvbmUgZGkgZHBrZy1kZWIgcGVyIGVzdHJhcnJlIGlsIHZhbG9yZSBkZWwgY2FtcG8gbm9uIHJpdXNjaXRhIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHN0YXQgJXM6ICVzIgorI34gbXNnc3RyICJpbXBvc3NpYmlsZSBlc2VndWlyZSBzdGF0IGRpICVzOiAlcyIKKworI34gbXNnaWQgInNsYXZlIG5hbWUgJXMgZHVwbGljYXRlZCIKKyN+IG1zZ3N0ciAibm9tZSBzbGF2ZSAlcyBkdXBsaWNhdG8iCisKKyN+IG1zZ2lkICJzbGF2ZSBsaW5rICVzIGR1cGxpY2F0ZWQiCisjfiBtc2dzdHIgImNvbGxlZ2FtZW50byBzbGF2ZSAlcyBkdXBsaWNhdG8iCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3BvL2phLmdtbyBiL2Rwa2ctMS4xNi4xLjEvcG8vamEuZ21vCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjIwYzA1YTMKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3BvL2phLmdtbwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3BvL2phLnBvIGIvZHBrZy0xLjE2LjEuMS9wby9qYS5wbwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44Yjg4YmFmCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9wby9qYS5wbwpAQCAtMCwwICsxLDY1ODYgQEAKKyMgRHBrZyAtLS0gdGhlIERlYmlhbiBHTlUvTGludXggcGFja2FnZSBtYWludGVuYW5jZSBzeXN0ZW0uCisjCisjIENvcHlyaWdodCAoQykgMTk5NCwxOTk1LDE5OTYgSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuZ3JlZW5lbmQub3JnLnVrPgorIyBDb3B5cmlnaHQgKEMpIDE5OTUsMTk5NiBFcmljayBCcmFuZGVyaG9yc3QgPGJyYW5kZXJob3JzdEBoZWVsLmZnZy5ldXIubmw+CisjIENvcHlyaWdodCAoQykgMTk5NiBNaXF1ZWwgdmFuIFNtb29yZW5idXJnIDxtaXF1ZWxzQGNpc3Ryb24ubmw+CisjIENvcHlyaWdodCAoQykgMTk5NiBLaW0tTWluaCBLYXBsYW4gPGtrYXBsYW5AY2RmaHAzLmluMnAzLmZyPgorIyBDb3B5cmlnaHQgKEMpIDE5OTYgTWljaGFlbCBTaGllbGRzIDxzaGllbGRzQGNyb3NzbGluay5uZXQ+CisjIENvcHlyaWdodCAoQykgMTk5NSBCcnVjZSBQZXJlbnMgPGJydWNlQHBpeGFyLmNvbT4KKyMgQ29weXJpZ2h0IChDKSAxOTk0IENhcmwgU3RyZWV0ZXIgPHN0cmVldGVyQGNhZS53aXNjLmVkdT4KKyMgQ29weXJpZ2h0IChDKSAxOTk0IE1hdHQgV2Vsc2ggPG1kd0BzdW5zaXRlLnVuYy5lZHU+CisjIENvcHlyaWdodCAoQykgMTk5NCBJYW4gTXVyZG9jayA8aW11cmRvY2tAZGViaWFuLm9yZz4KKyMgUGFydHMgd3JpdHRlbiBieSBDb2xpbiBQbHVtYiBhbmQgQnJhbmtvIExhbmtlc3RlciBpbiAxOTkzLgorIworIyBkcGtnIOeUqOOBruaXpeacrOiqnuODoeODg+OCu+ODvOOCuCAoTGludXgvR05VIERlYmlhbikuCisjIENvcHlyaWdodCAoQykgMTk5OCBNYXNhdG8gVGFydWlzaGkgPHRhcnVAZGViaWFuLm9yLmpwPgorIyBDb3B5cmlnaHQgKEMpIDE5OTktMjAwNCBLZWl0YSBNYWVoYXJhIDxtYWVoYXJhQGRlYmlhbi5vcmc+CisjIENvcHlyaWdodCAoQykgMjAwNC0yMDEwIEtlbnNoaSBNdXRvIDxrbXV0b0BkZWJpYW4ub3JnPgorbXNnaWQgIiIKK21zZ3N0ciAiIgorIlByb2plY3QtSWQtVmVyc2lvbjogZHBrZyBnaXRcbiIKKyJSZXBvcnQtTXNnaWQtQnVncy1UbzogZGViaWFuLWRwa2dAbGlzdHMuZGViaWFuLm9yZ1xuIgorIlBPVC1DcmVhdGlvbi1EYXRlOiAyMDExLTEwLTE0IDA3OjExKzAyMDBcbiIKKyJQTy1SZXZpc2lvbi1EYXRlOiAyMDEwLTEyLTE2IDE5OjE1KzA5MDBcbiIKKyJMYXN0LVRyYW5zbGF0b3I6IEtlbnNoaSBNdXRvIDxrbXV0b0BkZWJpYW4ub3JnPlxuIgorIkxhbmd1YWdlLVRlYW06IERlYmlhbiBKYXBhbmVhc2UgTGlzdCA8ZGViaWFuLWphcGFuZXNlQGxpc3RzLmRlYmlhbi5vcmc+XG4iCisiTGFuZ3VhZ2U6IGphXG4iCisiTUlNRS1WZXJzaW9uOiAxLjBcbiIKKyJDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9VVRGLThcbiIKKyJDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiA4LWJpdFxuIgorIlBsdXJhbC1Gb3JtczogUGx1cmFsLUZvcm1zOiBucGx1cmFscz0yOyBwbHVyYWw9bj4xO1xuIgorCisjOiBsaWIvZHBrZy9hci5jOjY2CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgY2hhcmFjdGVyICclYycgaW4gYXJjaGl2ZSAnJS4yNTBzJyBtZW1iZXIgJyUuMTZzJyBzaXplIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2FyLmM6ODEgbGliL2Rwa2cvYXIuYzo5NyBsaWIvZHBrZy9hci5jOjEwOCBsaWIvZHBrZy9hci5jOjExMgorIzogbGliL2Rwa2cvYXIuYzoxMzQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIGZpbGUgJyVzJyIKK21zZ3N0ciAi44OV44Kh44Kk44OrICclcycg44Gr5pu444GN6L6844KB44G+44Gb44KTIgorCisjOiBsaWIvZHBrZy9hci5jOjk0CisjLCBjLWZvcm1hdAorbXNnaWQgImdlbmVyYXRlZCBjb3JydXB0IGFyIGhlYWRlciBmb3IgJyVzJyIKK21zZ3N0ciAiJyVzJyDjga7lo4rjgozjgZ8gYXIg44OY44OD44OA44KS55Sf5oiQ44GX44G+44GX44GfIgorCisjOiBsaWIvZHBrZy9hci5jOjEyMworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgYXIgbWVtYmVyIGZpbGUgKCVzKSIKK21zZ3N0ciAiYXIg44Oh44Oz44OQ44OV44Kh44Kk44Or44GuIGZzdGF0IOOBq+WkseaVl+OBl+OBvuOBl+OBnyAoJXMpIgorCisjOiBsaWIvZHBrZy9hci5jOjEzMAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGFyIG1lbWJlciBmaWxlICglcykiCittc2dpZCAiYXIgbWVtYmVyIGZpbGUgKCVzKSIKK21zZ3N0ciAiYXIg44Oh44Oz44OQ44OV44Kh44Kk44Or44GuIGZzdGF0IOOBq+WkseaVl+OBl+OBvuOBl+OBnyAoJXMpIgorCisjOiBsaWIvZHBrZy9idWZmZXIuYzoxOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgb24gYnVmZmVyIGNvcHkgZm9yICVzIgorbXNnc3RyICIlcyDjga7jg5Djg4Pjg5XjgqHjgrPjg5Tjg7zjga7oqq3jgb/lj5bjgorjgavlpLHmlZfjgZfjgb7jgZfjgZ8iCisKKyM6IGxpYi9kcGtnL2J1ZmZlci5jOjIxMgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgaW4gd3JpdGUgb24gYnVmZmVyIGNvcHkgZm9yICVzIgorbXNnc3RyICIlcyDjga7jg5Djg4Pjg5XjgqHjgrPjg5Tjg7zjga7mm7jjgY3ovrzjgb/jgavlpLHmlZfjgZfjgb7jgZfjgZ8iCisKKyM6IGxpYi9kcGtnL2J1ZmZlci5jOjIyMAorIywgYy1mb3JtYXQKK21zZ2lkICJzaG9ydCByZWFkIG9uIGJ1ZmZlciBjb3B5IGZvciAlcyIKK21zZ3N0ciAiJXMg44Gu44OQ44OD44OV44Kh44Kz44OU44O844Gu6Kqt44G/5Y+W44KK44GM5LiN5Y2B5YiG44Gn44GZIgorCisjOiBsaWIvZHBrZy9idWZmZXIuYzoyODgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byBleGVjIHRhciIKK21zZ2lkICJmYWlsZWQgdG8gc2VlayAlcyIKK21zZ3N0ciAidGFyIOOBruWun+ihjOOBq+WkseaVl+OBl+OBvuOBl+OBnyIKKworIzogbGliL2Rwa2cvY29tbWFuZC5jOjE3OCBsaWIvZHBrZy9jb21tYW5kLmM6MjA0IHNyYy9oZWxwLmM6NjIxCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjk4IHNyYy9wcm9jZXNzYXJjLmM6MTM4IHNyYy9wcm9jZXNzYXJjLmM6NDMyCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjgzOSBkcGtnLWRlYi9idWlsZC5jOjQ1OSBkcGtnLWRlYi9idWlsZC5jOjUzOAorIzogZHBrZy1kZWIvYnVpbGQuYzo1NjEgZHBrZy1kZWIvZXh0cmFjdC5jOjMxNyBkcGtnLWRlYi9pbmZvLmM6NjUKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzo2OSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NDU3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBleGVjdXRlICVzICglcykiCittc2dzdHIgIiVzIOOCkuWun+ihjOOBp+OBjeOBvuOBm+OCkyAoJXMpIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBkZWNvbXByZXNzaW9uIgorbXNnc3RyICIlczog5bGV6ZaLIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjg5CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBjb21wcmVzc2lvbiIKK21zZ3N0ciAiJXM6IOWcp+e4riIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yIGJpbmRpbmcgaW5wdXQgdG8gZ3ppcCBzdHJlYW0iCittc2dzdHIgIiVzOiBnemlwIOOCueODiOODquODvOODoOOBuOOBruWFpeWKm+OBruODkOOCpOODs+ODieOCqOODqeODvCIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgcmVhZCBlcnJvcjogJyVzJyIKK21zZ3N0ciAiJXM6IOWGhemDqCBnemlwIOiqreOBv+WPluOCiuOCqOODqeODvDogJyVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxMzIgbGliL2Rwa2cvY29tcHJlc3MuYzoxMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgd3JpdGUgZXJyb3IiCittc2dzdHIgIiVzOiDlhoXpg6ggZ3ppcCDmm7jjgY3ovrzjgb/jgqjjg6njg7wiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTUwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvciBiaW5kaW5nIG91dHB1dCB0byBnemlwIHN0cmVhbSIKK21zZ3N0ciAiJXM6IGd6aXAg44K544OI44Oq44O844Og44G444Gu5Ye65Yqb44Gu44OQ44Kk44Oz44OJ44Ko44Op44O8IgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE1NworIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCByZWFkIGVycm9yIgorbXNnc3RyICIlczog5YaF6YOoIGd6aXAg6Kqt44G/5Y+W44KK44Ko44Op44O8IgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE2NworIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCB3cml0ZSBlcnJvcjogJyVzJyIKK21zZ3N0ciAiJXM6IOWGhemDqCBnemlwIOabuOOBjei+vOOBv+OCqOODqeODvDogJyVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgd3JpdGUgZXJyb3I6ICVzIgorbXNnc3RyICIlczog5YaF6YOoIGd6aXAg5pu444GN6L6844G/44Ko44Op44O8OiAlcyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyMjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yIGJpbmRpbmcgaW5wdXQgdG8gYnppcDIgc3RyZWFtIgorbXNnc3RyICIlczogYnppcDIg44K544OI44Oq44O844Og44G444Gu5YWl5Yqb44Gu44OQ44Kk44Oz44OJ44Ko44Op44O8IgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjIzMgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgcmVhZCBlcnJvcjogJyVzJyIKK21zZ3N0ciAiJXM6IOWGhemDqCBiemlwMiDoqq3jgb/lj5bjgorjgqjjg6njg7w6ICclcyciCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjQwIGxpYi9kcGtnL2NvbXByZXNzLmM6MjQ0IGxpYi9kcGtnL2NvbXByZXNzLmM6Mjk0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiB3cml0ZSBlcnJvciIKK21zZ3N0ciAiJXM6IOWGhemDqCBiemlwMiDmm7jjgY3ovrzjgb/jgqjjg6njg7wiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjU4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvciBiaW5kaW5nIG91dHB1dCB0byBiemlwMiBzdHJlYW0iCittc2dzdHIgIiVzOiBiemlwMiDjgrnjg4jjg6rjg7zjg6Djgbjjga7lh7rlipvjga7jg5DjgqTjg7Pjg4njgqjjg6njg7wiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjY1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiByZWFkIGVycm9yIgorbXNnc3RyICIlczog5YaF6YOoIGJ6aXAyIOiqreOBv+WPluOCiuOCqOODqeODvCIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyNzUgbGliL2Rwa2cvY29tcHJlc3MuYzoyODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIHdyaXRlIGVycm9yOiAnJXMnIgorbXNnc3RyICIlczog5YaF6YOoIGJ6aXAyIOabuOOBjei+vOOBv+OCqOODqeODvDogJyVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyODIKK21zZ2lkICJ1bmV4cGVjdGVkIGJ6aXAyIGVycm9yIgorbXNnc3RyICLkuojmnJ/jgZvjgawgYnppcDIg44Ko44Op44O8IgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjY4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1cGRhdGVzIGRpcmVjdG9yeSBjb250YWlucyBmaWxlIGAlLjI1MHMnIHdob3NlIG5hbWUgaXMgdG9vIGxvbmcgKGxlbmd0aD0lZCwgIgorIm1heD0lZCkiCittc2dzdHIgIiIKKyJ1cGRhdGVzIOODh+OCo+ODrOOCr+ODiOODquOBq+OBguOCi+ODleOCoeOCpOODqyBgJS4yNTBzJyDjga/lkI3liY3jgYzplbfjgZnjgY7jgb7jgZkgKOmVt+OBlT0lZCwg5pyA5aSnIgorIj0lZCkiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVwZGF0ZXMgZGlyZWN0b3J5IGNvbnRhaW5zIGZpbGVzIHdpdGggZGlmZmVyZW50IGxlbmd0aCBuYW1lcyAoYm90aCAlZCBhbmQgJWQpIgorbXNnc3RyICJ1cGRhdGVzIOODh+OCo+ODrOOCr+ODiOODquOBq+OBguOCi+ODleOCoeOCpOODq+WQjeOBrumVt+OBleOBjOeVsOOBquOCiuOBvuOBmSAoJWQg44GoICVkKSIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzo4NgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc2NhbiB1cGRhdGVzIGRpcmVjdG9yeSBgJS4yNTVzJyIKK21zZ3N0ciAidXBkYXRlcyDjg4fjgqPjg6zjgq/jg4jjg6ogYCUuMjU1cycg44KS6LWw5p+744Gn44GN44G+44Gb44KTIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVtb3ZlIGluY29ycG9yYXRlZCB1cGRhdGUgZmlsZSAlLjI1NXMiCittc2dzdHIgIue1seWQiOOBl+OBn+abtOaWsOeUqOODleOCoeOCpOODqyAlLjI1NXMg44Gu5YmK6Zmk44Gr5aSx5pWX44GX44G+44GX44GfIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEyMSBkcGtnLWRlYi9idWlsZC5jOjQ0NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGAlLjI1NXMnIgorbXNnc3RyICJgJS4yNTVzJyDjgpLkvZzmiJDjgafjgY3jgb7jgZvjgpMiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTI1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmaWxsICUuMjUwcyB3aXRoIHBhZGRpbmciCittc2dzdHIgIiUuMjUwcyDjgavmloflrZfjgpLoo5zlhYXjgafjgY3jgb7jgZvjgpMiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTI3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCAlLjI1MHMgYWZ0ZXIgcGFkZGluZyIKK21zZ3N0ciAi5paH5a2X44Gu6KOc5YWF5b6M44GrICUuMjUwcyDjgpLjg5Xjg6njg4Pjgrfjg6XjgafjgY3jgb7jgZvjgpMiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTI5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWVrIHRvIHN0YXJ0IG9mICUuMjUwcyBhZnRlciBwYWRkaW5nIgorbXNnc3RyICLmloflrZfjga7oo5zlhYXlvozjgasgJS4yNTBzIOOBruacgOWIneOBq+aIu+OCjOOBvuOBm+OCkyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxOTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gbG9jayBmaWxlICVzIGZvciB0ZXN0aW5nIgorbXNnc3RyICLjg4bjgrnjg4jjga7jgZ/jgoHjga7jg63jg4Pjgq/jg5XjgqHjgqTjg6sgJXMg44KS44Kq44O844OX44Oz44Gn44GN44G+44Gb44KTIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjIyMQorbXNnaWQgInVuYWJsZSB0byBvcGVuL2NyZWF0ZSBzdGF0dXMgZGF0YWJhc2UgbG9ja2ZpbGUiCittc2dzdHIgIuOCueODhuODvOOCv+OCueODh+ODvOOCv+ODmeODvOOCueOBruODreODg+OCr+ODleOCoeOCpOODq+OCkuOCquODvOODl+ODsy/kvZzmiJDjgafjgY3jgb7jgZvjgpPjgIIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjMxCittc2dpZCAieW91IGRvIG5vdCBoYXZlIHBlcm1pc3Npb24gdG8gbG9jayB0aGUgZHBrZyBzdGF0dXMgZGF0YWJhc2UiCittc2dzdHIgIuOBguOBquOBn+OBq+OBryBkcGtnIOOCueODhuODvOOCv+OCueODh+ODvOOCv+ODmeODvOOCueOCkuODreODg+OCr+OBmeOCi+aoqemZkOOBjOOBguOCiuOBvuOBm+OCkyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyMzMKKyMsIGZ1enp5CisjfCBtc2dpZCAidW5hYmxlIHRvIGxvY2sgZHBrZyBzdGF0dXMgZGF0YWJhc2UiCittc2dpZCAiZHBrZyBzdGF0dXMgZGF0YWJhc2UiCittc2dzdHIgImRwa2cg44K544OG44O844K/44K544OH44O844K/44OZ44O844K544KS44Ot44OD44Kv44Gn44GN44G+44Gb44KTIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjI1NworbXNnaWQgInJlcXVlc3RlZCBvcGVyYXRpb24gcmVxdWlyZXMgc3VwZXJ1c2VyIHByaXZpbGVnZSIKK21zZ3N0ciAi6KaB5rGC44GX44Gf5pON5L2c44Gv44K544O844OR44O844Om44O844K244Gu5qip6ZmQ44GM5b+F6KaB44Gn44GZIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjI2MgorbXNnaWQgInVuYWJsZSB0byBhY2Nlc3MgZHBrZyBzdGF0dXMgYXJlYSIKK21zZ3N0ciAiZHBrZyDjgrnjg4bjg7zjgr/jgrnjgqjjg6rjgqLjgavjgqLjgq/jgrvjgrnjgafjgY3jgb7jgZvjgpMiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjY0Cittc2dpZCAib3BlcmF0aW9uIHJlcXVpcmVzIHJlYWQvd3JpdGUgYWNjZXNzIHRvIGRwa2cgc3RhdHVzIGFyZWEiCittc2dzdHIgIuaTjeS9nOOBryBkcGtnIOOCueODhuODvOOCv+OCueOCqOODquOCouOBuOOBruiqreOBv+abuOOBjeOBruaoqemZkOOBjOW/heimgeOBp+OBmSIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozMDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlbW92ZSBteSBvd24gdXBkYXRlIGZpbGUgJS4yNTVzIgorbXNnc3RyICLkuIDmmYLnmoTjgarmm7TmlrDnlKjjg5XjgqHjgqTjg6sgJS4yNTVzIOOBruWJiumZpOOBq+WkseaVl+OBl+OBvuOBl+OBnyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICLmm7TmlrDjgZfjgZ8gYCUuMjUwcycg44Gu44K544OG44O844K/44K544KS5pu444GN6L6844KB44G+44Gb44KTIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM0OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgIuabtOaWsOOBl+OBnyBgJS4yNTBzJyDjga7jgrnjg4bjg7zjgr/jgrnjgpLjg5Xjg6njg4Pjgrfjg6XjgafjgY3jgb7jgZvjgpMiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzUxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB0cnVuY2F0ZSBmb3IgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgIuabtOaWsOOBl+OBnyBgJS4yNTBzJyDjga7jgrnjg4bjg7zjgr/jgrnjgpLliIfjgoroqbDjgoHjgonjgozjgb7jgZvjgpMiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzUzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmc3luYyB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAi5pu05paw44GX44GfIGAlLjI1MHMnIOOBruOCueODhuODvOOCv+OCueOCkiBmc3luYyDjgafjgY3jgb7jgZvjgpMiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzU1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAi5pu05paw44GX44GfIGAlLjI1MHMnIOOBruOCueODhuODvOOCv+OCueOCkuOCr+ODreODvOOCuuOBp+OBjeOBvuOBm+OCkyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgIuabtOaWsOOBl+OBnyBgJS4yNTBzJyDjga7jgrnjg4bjg7zjgr/jgrnjgpLjgqTjg7Pjgrnjg4jjg7zjg6vjgafjgY3jgb7jgZvjgpMiCisKKyM6IGxpYi9kcGtnL2Rpci5jOjUwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gcmVhZCBmaWxlZGVzY3JpcHRvciBmbGFncyBmb3IgJS4yNTBzIgorbXNnaWQgInVuYWJsZSB0byBnZXQgZmlsZSBkZXNjcmlwdG9yIGZvciBkaXJlY3RvcnkgJyVzJyIKK21zZ3N0ciAiJS4yNTBzIOOBruODleOCoeOCpOODq+iomOi/sOWtkOODleODqeOCsOOCkuiqreOBv+WPluOCi+OBk+OBqOOBjOOBp+OBjeOBvuOBm+OCkyIKKworIzogbGliL2Rwa2cvZGlyLmM6NTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byBzeW5jIGZpbGUgJyVzJyIKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBkaXJlY3RvcnkgJyVzJyIKK21zZ3N0ciAi44OV44Kh44Kk44OrJyVzJyDjgpLlkIzmnJ/jgafjgY3jgb7jgZvjgpMiCisKKyM6IGxpYi9kcGtnL2Rpci5jOjY5IGxpYi9kcGtnL2Rpci5jOjEzMQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIG9wZW4gZmlsZSAnJXMnIgorbXNnaWQgInVuYWJsZSB0byBvcGVuIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICLjg5XjgqHjgqTjg6sgJyVzJyDjgpLjgqrjg7zjg5fjg7PjgafjgY3jgb7jgZvjgpMiCisKKyM6IGxpYi9kcGtnL2Rpci5jOjEwOSBzcmMvZGl2ZXJ0Y21kLmM6MjE4IGRwa2ctc3BsaXQvc3BsaXQuYzoyMDIKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjkzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIGZpbGUgJyVzJyIKK21zZ3N0ciAi44OV44Kh44Kk44OrICclcycg44KS44Kq44O844OX44Oz44Gn44GN44G+44Gb44KTIgorCisjOiBsaWIvZHBrZy9kaXIuYzoxMTEgc3JjL2RpdmVydGNtZC5jOjIzMiBzcmMvZGl2ZXJ0Y21kLmM6Mzc3CisjOiBzcmMvc3RhdGNtZC5jOjIxNyBkcGtnLWRlYi9idWlsZC5jOjU5OCBkcGtnLXNwbGl0L2pvaW4uYzo2NQorIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE4NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTQwNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBmaWxlICclcyciCittc2dzdHIgIuODleOCoeOCpOODqyclcycg44KS5ZCM5pyf44Gn44GN44G+44Gb44KTIgorCisjOiBsaWIvZHBrZy9kaXIuYzoxMTMgc3JjL2RpdmVydGNtZC5jOjIzNCBzcmMvZGl2ZXJ0Y21kLmM6Mzc5CisjOiBkcGtnLWRlYi9idWlsZC5jOjYwMCBkcGtnLXNwbGl0L2pvaW4uYzo2NyBkcGtnLXNwbGl0L3F1ZXVlLmM6MTg5CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTMxNCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTQwOAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgZmlsZSAnJXMnIgorbXNnc3RyICLjg5XjgqHjgqTjg6sgJyVzJyDjgpLjgq/jg63jg7zjgrrjgafjgY3jgb7jgZvjgpMiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzozOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIGRldGFpbHMgb2YgYCUuNTBzJyB0byBgJS4yNTBzJyIKK21zZ3N0ciAiYCUuNTBzJyDjgavjgaTjgYTjgabjga7oqbPntLDjgpIgYCUuMjUwcycg44Gr5pu444GN6L6844KB44G+44Gb44KT44Gn44GX44GfIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDIzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuICclcycgZm9yIHdyaXRpbmcgJXMgZGF0YWJhc2UiCittc2dzdHIgIiUyJHMg44OH44O844K/44OZ44O844K544Gr5pu444GN6L6844KA44Gf44KB44GuICclMSRzJyDjgpLjgqrjg7zjg5fjg7PjgafjgY3jgb7jgZvjgpMiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0MjYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNldCBidWZmZXJpbmcgb24gJXMgZGF0YWJhc2UgZmlsZSIKK21zZ3N0ciAiJXMg44OH44O844K/44OZ44O844K544OV44Kh44Kk44Or55So44Gu44OQ44OD44OV44Kh44Oq44Oz44Kw44KS6Kit5a6a44Gn44GN44G+44Gb44KTIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDM4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB3cml0ZSAlcyBkYXRhYmFzZSByZWNvcmQgYWJvdXQgJyUuNTBzJyB0byAnJS4yNTBzJyIKK21zZ3N0ciAiIgorIiclMiQuNTBzJyDjgavjgaTjgYTjgabjga4gJTEkcyDjg4fjg7zjgr/jg5njg7zjgrnjg6zjgrPjg7zjg4njgpIgJyUzJC4yNTBzJyDjgavmm7jjgY3ovrzjgoHjgb7jgZvjgpMiCisi44Gn44GX44GfIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDQ2CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBmbHVzaCAlcyBkYXRhYmFzZSB0byAnJS4yNTBzJyIKK21zZ3N0ciAiJXMg44OH44O844K/44OZ44O844K544KSICclLjI1MHMnIOOBuOODleODqeODg+OCt+ODpeOBp+OBjeOBvuOBm+OCk+OBp+OBl+OBnyIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ0OAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZnN5bmMgJXMgZGF0YWJhc2UgdG8gJyUuMjUwcyciCittc2dzdHIgIiVzIOODh+ODvOOCv+ODmeODvOOCueOCkiAnJS4yNTBzJyDjgbggZnN5bmMg44Gn44GN44G+44Gb44KT44Gn44GX44GfIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDUxCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjbG9zZSAnJS4yNTBzJyBhZnRlciB3cml0aW5nICVzIGRhdGFiYXNlIgorbXNnc3RyICIlMiRzIOODh+ODvOOCv+ODmeODvOOCueOCkuabuOOBjei+vOOCk+OBoOW+jOOAgSclMSQuMjUwcycg44Gu44Kv44Ot44O844K644Gr5aSx5pWX44GX44G+44GX44GfIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDU1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBsaW5rICclLjI1MHMnIHRvICclLjI1MHMnIGZvciBiYWNrdXAgb2YgJXMgZGF0YWJhc2UiCittc2dzdHIgIiIKKyJgJTEkLjI1MHMnIOOCkiAlMyRzIOODh+ODvOOCv+ODmeODvOOCueOBruODkOODg+OCr+OCouODg+ODl+OBqOOBl+OBpiBgJTIkLjI1MHMnIOOBq+ODquODs+OCr+OBmeOCi+OBriIKKyLjgavlpLHmlZfjgZfjgb7jgZfjgZ8iCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGluc3RhbGwgJyUuMjUwcycgYXMgJyUuMjUwcycgY29udGFpbmluZyAlcyBkYXRhYmFzZSIKK21zZ3N0ciAiIgorImAlMSQuMjUwcycg44KSICUzJHMg44OH44O844K/44OZ44O844K544KS5ZCr44KT44GgIGAlMiQuMjUwcycg44Go44GX44Gm44Kk44Oz44K544OI44O844Or44Gn44GN44G+44GbIgorIuOCk+OBp+OBl+OBnyIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjk0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogdW5yZWNvdmVyYWJsZSBmYXRhbCBlcnJvciwgYWJvcnRpbmc6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKyIlczog5b6p5pen5LiN5Y+v6IO944Gq6Ie05ZG955qE44Gq44Ko44Op44O844Gn44GZ44CC5Lit5q2i44GX44G+44GZOlxuIgorIiAlc1xuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MTAwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiJXM6IHVucmVjb3ZlcmFibGUgZmF0YWwgZXJyb3IsIGFib3J0aW5nOlxuIgorI3wgIiAlc1xuIgorbXNnaWQgIiIKKyIlczogb3V0c2lkZSBlcnJvciBjb250ZXh0LCBhYm9ydGluZzpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorIiVzOiDlvqnml6fkuI3lj6/og73jgaroh7Tlkb3nmoTjgarjgqjjg6njg7zjgafjgZnjgILkuK3mraLjgZfjgb7jgZk6XG4iCisiICVzXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoxMjAKKyMsIGZ1enp5CisjfCBtc2dpZCAib3V0IG9mIG1lbW9yeSBmb3IgbmV3IGNsZWFudXAgZW50cnkiCittc2dpZCAib3V0IG9mIG1lbW9yeSBmb3IgbmV3IGVycm9yIGNvbnRleHQiCittc2dzdHIgIuaWsOOBl+OBhOOCr+ODquODvOODs+OCouODg+ODl+OCqOODs+ODiOODqueUqOOBruODoeODouODquOBjOS4jei2s+OBl+OBpuOBhOOBvuOBmSIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjE4MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IGVycm9yIHdoaWxlIGNsZWFuaW5nIHVwOlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisiJXM6IOOCr+ODquODvOODs+OCouODg+ODl+S4reOBq+OCqOODqeODvOOBjOeZuueUn+OBl+OBvuOBl+OBnzpcbiIKKyIgJXNcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjIwMQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZHBrZzogdG9vIG1hbnkgbmVzdGVkIGVycm9ycyBkdXJpbmcgZXJyb3IgcmVjb3ZlcnkgISFcbiIKK21zZ2lkICIlczogdG9vIG1hbnkgbmVzdGVkIGVycm9ycyBkdXJpbmcgZXJyb3IgcmVjb3ZlcnkhIVxuIgorbXNnc3RyICJkcGtnOiDjgqjjg6njg7zlvqnml6fkuK3jgavjgZXjgonjgavlpKfph4/jga7jgqjjg6njg7zjgYznmbrnlJ/jgZfjgb7jgZfjgZ8hIVxuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MjY4IGxpYi9kcGtnL2VoYW5kbGUuYzozMDcKK21zZ2lkICJvdXQgb2YgbWVtb3J5IGZvciBuZXcgY2xlYW51cCBlbnRyeSIKK21zZ3N0ciAi5paw44GX44GE44Kv44Oq44O844Oz44Ki44OD44OX44Ko44Oz44OI44Oq55So44Gu44Oh44Oi44Oq44GM5LiN6Laz44GX44Gm44GE44G+44GZIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MjkxCittc2dpZCAib3V0IG9mIG1lbW9yeSBmb3IgbmV3IGNsZWFudXAgZW50cnkgd2l0aCBtYW55IGFyZ3VtZW50cyIKK21zZ3N0ciAiIgorIuWkmuOBmeOBjuOCi+W8leaVsOOBruOBn+OCgeOBq+OAgeaWsOOBl+OBhOOCr+ODquODvOODs+OCouODg+ODl+OCqOODs+ODiOODqueUqOOBruODoeODouODquOBjOS4jei2s+OBl+OBpuOBhOOBvuOBmSIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjM1MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiJXM6IHdhcm5pbmc6ICVzXG4iCittc2dpZCAiJXM6IGVycm9yOiAlc1xuIgorbXNnc3RyICIlczog6K2m5ZGKOiAlc1xuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MzkzCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB3YXJuaW5nOiAlc1xuIgorbXNnc3RyICIlczog6K2m5ZGKOiAlc1xuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6NDE2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiVzOiVkOiBpbnRlcm5hbCBlcnJvcjogJXNcbiIKK21zZ3N0ciAiJXM6JXM6JWQ6IOWGhemDqOOCqOODqeODvDogJXNcbiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgaXMgbWlzc2luZyIKK21zZ3N0ciAiJXMg44GM44GC44KK44G+44Gb44KTIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0OQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYCUuKnMnIGlzIG5vdCBhbGxvd2VkIGZvciAlcyIKK21zZ2lkICInJS41MHMnIGlzIG5vdCBhbGxvd2VkIGZvciAlcyIKK21zZ3N0ciAiYCUuKnMnIOOBryAlcyDnlKjjgavoqLHlj6/jgZXjgozjgabjgYTjgb7jgZvjgpMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjczCisjLCBjLWZvcm1hdAorbXNnaWQgImp1bmsgYWZ0ZXIgJXMiCittc2dzdHIgIiVzIOW+jOOBruOCtOODnyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6ODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBwYWNrYWdlIG5hbWUgKCUuMjUwcykiCittc2dzdHIgIueEoeWKueOBquODkeODg+OCseODvOOCuOWQjSAoJS4yNTBzKSDjgafjgZkiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJlbXB0eSBmaWxlIGRldGFpbHMgZmllbGQgYCVzJyIKK21zZ3N0ciAi44OV44Kh44Kk44Or6KiY6L+w44OV44Kj44O844Or44OJIGAlcycg44GM56m644Gn44GZIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBkZXRhaWxzIGZpZWxkIGAlcycgbm90IGFsbG93ZWQgaW4gc3RhdHVzIGZpbGUiCittc2dzdHIgIuODleOCoeOCpOODq+iomOi/sOODleOCo+ODvOODq+ODiSBgJXMnIOOBr+OCueODhuODvOOCv+OCueODleOCoeOCpOODq+OBp+OBr+ioseWPr+OBleOCjOOBpuOBhOOBvuOBm+OCkyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTE4CisjLCBjLWZvcm1hdAorbXNnaWQgInRvbyBtYW55IHZhbHVlcyBpbiBmaWxlIGRldGFpbHMgZmllbGQgYCVzJyAoY29tcGFyZWQgdG8gb3RoZXJzKSIKK21zZ3N0ciAiIgorIuODleOCoeOCpOODq+iomOi/sOODleOCo+ODvOODq+ODiSBgJXMnIOOBruWApOOBjCAo44G744GL44Gu44OV44Kj44O844Or44OJ44Gr5q+U44G544GmKSDlpJrjgZnjgY7jgb7jgZkiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjEzMgorIywgYy1mb3JtYXQKK21zZ2lkICJ0b28gZmV3IHZhbHVlcyBpbiBmaWxlIGRldGFpbHMgZmllbGQgYCVzJyAoY29tcGFyZWQgdG8gb3RoZXJzKSIKK21zZ3N0ciAiIgorIuODleOCoeOCpOODq+iomOi/sOODleOCo+ODvOODq+ODiSBgJXMnIOOBruWApOOBjCAo44G744GL44Gu44OV44Kj44O844Or44OJ44Gr5q+U44G544GmKSDlsJHjgarjgZnjgY7jgb7jgZkiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE1NAorbXNnaWQgInllcy9ubyBpbiBib29sZWFuIGZpZWxkIgorbXNnc3RyICLnnJ/lgb3jg5XjgqPjg7zjg6vjg4njgavjgYrjgZHjgosgeWVzL25vIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxNzQKK21zZ2lkICJ3b3JkIGluIGBwcmlvcml0eScgZmllbGQiCittc2dzdHIgImBwcmlvcml0eScg44OV44Kj44O844Or44OJ44Gu44Ov44O844OJIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxODYKK21zZ2lkICJ2YWx1ZSBmb3IgYHN0YXR1cycgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICJgc3RhdHVzJyDjg5XjgqPjg7zjg6vjg4njga7lgKTjga/jgZPjga7jgrPjg7Pjg4bjgq3jgrnjg4jjgafjga/oqLHlj6/jgZXjgozjgabjgYTjgb7jgZvjgpMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE5MQorbXNnaWQgImZpcnN0ICh3YW50KSB3b3JkIGluIGBzdGF0dXMnIGZpZWxkIgorbXNnc3RyICJgc3RhdHVzJyDjg5XjgqPjg7zjg6vjg4njga7nrKwgMSDjg6/jg7zjg4kgKOimgeacmykiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE5NAorbXNnaWQgInNlY29uZCAoZXJyb3IpIHdvcmQgaW4gYHN0YXR1cycgZmllbGQiCittc2dzdHIgImBzdGF0dXMnIOODleOCo+ODvOODq+ODieOBruesrCAyIOODr+ODvOODiSAo44Ko44Op44O8KSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTk3Cittc2dpZCAidGhpcmQgKHN0YXR1cykgd29yZCBpbiBgc3RhdHVzJyBmaWVsZCIKK21zZ3N0ciAiYHN0YXR1cycg44OV44Kj44O844Or44OJ44Gu56ysIDMg44Ov44O844OJICjnirbmhYspIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyMDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgaW4gVmVyc2lvbiBzdHJpbmcgJyUuMjUwcyciCittc2dzdHIgIuODkOODvOOCuOODp+ODs+aWh+Wtl+WIlyAnJS4yNTBzJyDjgavjgqjjg6njg7wiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjIxOAorbXNnaWQgIm9ic29sZXRlIGBSZXZpc2lvbicgb3IgYFBhY2thZ2UtUmV2aXNpb24nIGZpZWxkIHVzZWQiCittc2dzdHIgIuWPpOOBhCBgUmV2aXNpb24nIOOBguOCi+OBhOOBryBgUGFja2FnZS1SZXZpc2lvbicg44OV44Kj44O844Or44OJ44GM5L2/44KP44KM44Gm44GE44G+44GZIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyMzUKK21zZ2lkICJ2YWx1ZSBmb3IgYGNvbmZpZy12ZXJzaW9uJyBmaWVsZCBub3QgYWxsb3dlZCBpbiB0aGlzIGNvbnRleHQiCittc2dzdHIgIiIKKyJgY29uZmlnLXZlcnNpb24nIOODleOCo+ODvOODq+ODieOBruWApOOBr+OBk+OBruOCs+ODs+ODhuOCreOCueODiOOBp+OBr+ioseWPr+OBleOCjOOBpuOBhOOBvuOBm+OCkyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjQwCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGluIENvbmZpZy1WZXJzaW9uIHN0cmluZyAnJS4yNTBzJyIKK21zZ3N0ciAiQ29uZmlnLVZlcnNpb27mloflrZcgJyUuMjUwcycg44Gr44Ko44Op44O8IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAidmFsdWUgZm9yIGBjb25mZmlsZXMnIGhhcyBtYWxmb3JtYXR0ZWQgbGluZSBgJS4qcyciCittc2dzdHIgImBjb25mZmlsZXMnIOOBruWApOOBq+S4jeato+OBquW9ouW8j+OCkuaMgeOBpOihjCBgJS4qcycg44GM44GC44KK44G+44GZIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyODcKKyMsIGMtZm9ybWF0Cittc2dpZCAidmFsdWUgZm9yIGBjb25mZmlsZXMnIGhhcyBsaW5lIHN0YXJ0aW5nIHdpdGggbm9uLXNwYWNlIGAlYyciCittc2dzdHIgImBjb25mZmlsZXMnIOOBruWApOOBq+epuueZveS7peWkluOBruaWh+WtlyBgJWMnIOOBp+Wni+OBvuOCi+ihjOOBjOOBguOCiuOBvuOBmSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MzA0Cittc2dpZCAicm9vdCBvciBudWxsIGRpcmVjdG9yeSBpcyBsaXN0ZWQgYXMgYSBjb25mZmlsZSIKK21zZ3N0ciAiIgorIuODq+ODvOODiOODh+OCo+ODrOOCr+ODiOODquOBguOCi+OBhOOBr+epuuOBruODh+OCo+ODrOOCr+ODiOODquOBjOioreWumuODleOCoeOCpOODq+OBqOOBl+OBpuaMh+WumuOBleOCjOOBpuOBhOOBviIKKyLjgZkiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjM2NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgbWlzc2luZyBwYWNrYWdlIG5hbWUsIG9yIGdhcmJhZ2Ugd2hlcmUgcGFja2FnZSBuYW1lIGV4cGVjdGVkIgorbXNnc3RyICIiCisiYCVzJyDjg5XjgqPjg7zjg6vjg4njgIHjg5Hjg4PjgrHjg7zjgrjlkI3jgYzlrZjlnKjjgZfjgarjgYTjgYvjgIHjg5Hjg4PjgrHjg7zjgrjlkI3jgYzlhaXjgovjgajmnJ/lvoXjgZXjgozjgovloLQiCisi5omA44Gr44K044Of44GM44GC44KK44G+44GZIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzozNzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBmaWVsZCwgaW52YWxpZCBwYWNrYWdlIG5hbWUgYCUuMjU1cyc6ICVzIgorbXNnc3RyICJgJXMnIOODleOCo+ODvOODq+ODieOAgeeEoeWKueOBquODkeODg+OCseODvOOCuOWQjSBgJS4yNTVzJzogJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQwNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOlxuIgorIiBiYWQgdmVyc2lvbiByZWxhdGlvbnNoaXAgJWMlYyIKK21zZ3N0ciAiIgorImAlMiQuMjU1cycg44GuIGAlMSRzJyDjg5XjgqPjg7zjg6vjg4k6XG4iCisiIOODkOODvOOCuOODp+ODs+mWouS/giAlMyRjJTQkYyDjga/kuI3mraPjgafjgZkiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQxMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOlxuIgorIiBgJWMnIGlzIG9ic29sZXRlLCB1c2UgYCVjPScgb3IgYCVjJWMnIGluc3RlYWQiCittc2dzdHIgIiIKKyJgJTIkLjI1NXMnIOOBriBgJTEkcycg44OV44Kj44O844Or44OJOlxuIgorIiBgJTMkYycg44Gv5pmC5Luj6YGF44KM44Gn44GZ44CC5Luj44KP44KK44GrIGAlNCRjPScg44G+44Gf44GvIGAlNSRjJTYkYycg44KS5L2/44Gj44Gm44GP44Gg44GV44GEIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgaW1wbGljaXQgZXhhY3QgbWF0Y2ggb24gdmVyc2lvbiBudW1iZXIsIHN1Z2dlc3QgdXNpbmcgYD0nIGluc3RlYWQiCittc2dzdHIgIiIKKyJgJTIkLjI1NXMnIOOBriBgJTEkcycg44OV44Kj44O844Or44OJOlxuIgorIiDjg5Djg7zjgrjjg6fjg7Pnlarlj7fjgYzljrPlr4bjgavkuIDoh7TjgZnjgovjgZPjgajjgYzmmI7npLrjgZXjgozjgabjgYTjgb7jgZvjgpPjgILku6Pjgo/jgorjgasgYD0nIOOCkuS9v+OBhiIKKyLjgZPjgajjgpLmj5DmoYjjgZfjgb7jgZkiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQzMAorbXNnaWQgIk9ubHkgZXhhY3QgdmVyc2lvbnMgbWF5IGJlIHVzZWQgZm9yIFByb3ZpZGVzIgorbXNnc3RyICJQcm92aWRlcyDjgavjga/mraPnorrjgarjg5Djg7zjgrjjg6fjg7Pjga7jgb/jgYzkvb/nlKjjgafjgY3jgb7jgZkiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQzNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOlxuIgorIiB2ZXJzaW9uIHZhbHVlIHN0YXJ0cyB3aXRoIG5vbi1hbHBoYW51bWVyaWMsIHN1Z2dlc3QgYWRkaW5nIGEgc3BhY2UiCittc2dzdHIgIiIKKyJgJTIkLjI1NXMnIOOBriBgJTEkcycg44OV44Kj44O844Or44OJOlxuIgorIiDjg5Djg7zjgrjjg6fjg7PlgKTjgYzpnZ7oi7HmlbDlrZfjgaflp4vjgb7jgaPjgabjgYTjgb7jgZnjgILnqbrnmb3jgpLliqDjgYjjgovjgZPjgajjgpLmj5DmoYjjgZfjgb7jgZkiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ1MSBsaWIvZHBrZy9maWVsZHMuYzo0NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOiB2ZXJzaW9uIGNvbnRhaW5zIGAlYyciCittc2dzdHIgImAlMiQuMjU1cycg44GuIGAlMSRzJyDjg5XjgqPjg7zjg6vjg4k6IOODkOODvOOCuOODp+ODs+OBjCBgJTMkYycg44KS5ZCr44KT44Gn44GE44G+44GZIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOiB2ZXJzaW9uIHVudGVybWluYXRlZCIKK21zZ3N0ciAiYCUyJC4yNTVzJyDjga4gYCUxJHMnIOODleOCo+ODvOODq+ODiTog44OQ44O844K444On44Oz44GM5a6M57WQ44GX44Gm44GE44G+44Gb44KTIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvICclLjI1NXMnOiBlcnJvciBpbiB2ZXJzaW9uIgorbXNnc3RyICJgJTIkLjI1NXMnIOOCkuWPgueFp+OBmeOCiyBgJTEkcycg44OV44Kj44O844Or44OJOiDjg5Djg7zjgrjjg6fjg7Pjgavjgqjjg6njg7wiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ3NQorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGZpZWxkLCBzeW50YXggZXJyb3IgYWZ0ZXIgcmVmZXJlbmNlIHRvIHBhY2thZ2UgYCUuMjU1cyciCittc2dzdHIgImAlcycg44OV44Kj44O844Or44OJ44CB44OR44OD44Kx44O844K4IGAlLjI1NXMnIOWPgueFp+W+jOOBruani+aWh+OCqOODqeODvCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDgyCisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlcyAoYHwnKSBub3QgYWxsb3dlZCBpbiAlcyBmaWVsZCIKK21zZ3N0ciAi6YG45oqe6KiY5Y+3IChgfCcpIOOBryAlcyDjg5XjgqPjg7zjg6vjg4nlhoXjgafjga/oqLHlj6/jgZXjgozjgabjgYTjgb7jgZvjgpMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjUzNgorbXNnaWQgInZhbHVlIGZvciBgdHJpZ2dlcnMtcGVuZGluZycgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICIiCisiYHRyaWdnZXJzLXBlbmRpbmcnIOODleOCo+ODvOODq+ODieOBruWApOOBr+OBk+OBruOCs+ODs+ODhuOCreOCueODiOOBp+OBr+ioseWPr+OBleOCjOOBpuOBhOOBvuOBm+OCkyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTQzCisjLCBjLWZvcm1hdAorbXNnaWQgImlsbGVnYWwgcGVuZGluZyB0cmlnZ2VyIG5hbWUgYCUuMjU1cyc6ICVzIgorbXNnc3RyICLnhKHlirnjgarkv53nlZnjg4jjg6rjgqzlkI0gYCUuMjU1cyc6ICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHBlbmRpbmcgdHJpZ2dlciBgJS4yNTVzJyIKK21zZ3N0ciAi6YeN6KSH44GZ44KL5L+d55WZ44OI44Oq44KsIGAlLjI1NXMnIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NjEKK21zZ2lkICJ2YWx1ZSBmb3IgYHRyaWdnZXJzLWF3YWl0ZWQnIGZpZWxkIG5vdCBhbGxvd2VkIGluIHRoaXMgY29udGV4dCIKK21zZ3N0ciAiIgorImB0cmlnZ2Vycy1hd2FpdGVkJyDjg5XjgqPjg7zjg6vjg4njga7lgKTjga/jgZPjga7jgrPjg7Pjg4bjgq3jgrnjg4jjgafjga/oqLHlj6/jgZXjgozjgabjgYTjgb7jgZvjgpMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU2OAorIywgYy1mb3JtYXQKK21zZ2lkICJpbGxlZ2FsIHBhY2thZ2UgbmFtZSBpbiBhd2FpdGVkIHRyaWdnZXIgYCUuMjU1cyc6ICVzIgorbXNnc3RyICLlvoXjgaHlj5fjgZHjg4jjg6rjgqwgYCUuMjU1cycg44Gr5LiN5q2j44Gq44OR44OD44Kx44O844K45ZCN44GM44GC44KK44G+44GZOiAlcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTc0CisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBhd2FpdGVkIHRyaWdnZXIgcGFja2FnZSBgJS4yNTVzJyIKK21zZ3N0ciAi6YeN6KSH44GZ44KL5b6F44Gh5Y+X44GR44OI44Oq44Ks44OR44OD44Kx44O844K4IGAlLjI1NXMnIgorCisjOiBsaWIvZHBrZy9maWxlLmM6NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgc291cmNlIGZpbGUgJyUuMjUwcyciCittc2dzdHIgIuOCveODvOOCueODleOCoeOCpOODqyAnJS4yNTBzJyDjga7nirbmhYvjgpLlj5blvpfjgafjgY3jgb7jgZvjgpMiCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzo1NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hhbmdlIG93bmVyc2hpcCBvZiB0YXJnZXQgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAi44K/44O844Ky44OD44OI44OV44Kh44Kk44OrICclLjI1MHMnIOOBruaJgOacieiAheOCkuWkieabtOOBp+OBjeOBvuOBm+OCkyIKKworIzogbGliL2Rwa2cvZmlsZS5jOjU5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgbW9kZSBvZiB0YXJnZXQgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAi44K/44O844Ky44OD44OI44OV44Kh44Kk44OrICclLjI1MHMnIOOBruODouODvOODieOCkuioreWumuOBp+OBjeOBvuOBm+OCkyIKKworIzogbGliL2Rwa2cvZmlsZS5jOjg1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gY2xvc2UgJXM6ICVzIgorbXNnaWQgInVuYWJsZSB0byB1bmxvY2sgJXMiCittc2dzdHIgIiVzIOOCkuOCr+ODreODvOOCuuOBp+OBjeOBvuOBm+OCkzogJXMiCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzoxMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoZWNrIGZpbGUgJyVzJyBsb2NrIHN0YXR1cyIKK21zZ3N0ciAi44OV44Kh44Kk44OrICclcycg44Gu44Ot44OD44Kv54q25oWL44KS56K66KqN44Gn44GN44G+44Gb44KTIgorCisjOiBsaWIvZHBrZy9maWxlLmM6MTQ2CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJzdGF0dXMgZGF0YWJhc2UgYXJlYSBpcyBsb2NrZWQgYnkgYW5vdGhlciBwcm9jZXNzIgorbXNnaWQgIiVzIGlzIGxvY2tlZCBieSBhbm90aGVyIHByb2Nlc3MiCittc2dzdHIgIuOCueODhuODvOOCv+OCueODh+ODvOOCv+ODmeODvOOCueOCqOODquOCouOBjOWIpeOBruODl+ODreOCu+OCueOBq+OCiOOBo+OBpuODreODg+OCr+OBleOCjOOBpuOBhOOBvuOBmSIKKworIzogbGliL2Rwa2cvZmlsZS5jOjE0OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIGNsb3NlICVzOiAlcyIKK21zZ2lkICJ1bmFibGUgdG8gbG9jayAlcyIKK21zZ3N0ciAiJXMg44KS44Kv44Ot44O844K644Gn44GN44G+44Gb44KTOiAlcyIKKworIzogbGliL2Rwa2cvbG9nLmM6NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGRuJ3Qgb3BlbiBsb2cgYCVzJzogJXNcbiIKK21zZ3N0ciAi44Ot44KwIGAlcycg44KS44Kq44O844OX44Oz44Gn44GN44G+44Gb44KT44Gn44GX44GfOiAlc1xuIgorCisjOiBsaWIvZHBrZy9sb2cuYzo4NQorbXNnaWQgIjxwYWNrYWdlIHN0YXR1cyBhbmQgcHJvZ3Jlc3MgZmlsZSBkZXNjcmlwdG9yPiIKK21zZ3N0ciAiPOODkeODg+OCseODvOOCuOeKtuaFi+OBqOmAsuaNl+ODleOCoeOCpOODq+iomOi/sOWtkD4iCisKKyM6IGxpYi9kcGtnL2xvZy5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgdG8gc3RhdHVzIGZkICVkIgorbXNnc3RyICLnirbmhYvjg5XjgqHjgqTjg6voqJjov7DlrZAgJWQg44Gr5pu444GN6L6844KB44G+44Gb44KTIgorCisjOiBsaWIvZHBrZy9tbGliLmM6NDQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAibWFsbG9jIGZhaWxlZCAoJWxkIGJ5dGVzKSIKK21zZ2lkICJtYWxsb2MgZmFpbGVkICglenUgYnl0ZXMpIgorbXNnc3RyICJtYWxsb2Mg5aSx5pWXICglbGQg44OQ44Kk44OIKSIKKworIzogbGliL2Rwa2cvbWxpYi5jOjU4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJyZWFsbG9jIGZhaWxlZCAoJWxkIGJ5dGVzKSIKK21zZ2lkICJyZWFsbG9jIGZhaWxlZCAoJXp1IGJ5dGVzKSIKK21zZ3N0ciAicmVhbGxvYyDlpLHmlZcgKCVsZCDjg5DjgqTjg4gpIgorCisjOiBsaWIvZHBrZy9tbGliLmM6NzIgbGliL2Rwa2cvbWxpYi5jOjkwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNzcKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzozMzQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMDcKK21zZ2lkICJmYWlsZWQgdG8gYWxsb2NhdGUgbWVtb3J5IgorbXNnc3RyICLjg6Hjg6Ljg6rjga7libLjgorlvZPjgabjgavlpLHmlZfjgZfjgb7jgZfjgZ8iCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGR1cCBmb3Igc3RkJXMiCittc2dzdHIgInN0ZCVzIOOBruikh+ijveOBq+WkseaVl+OBl+OBvuOBl+OBnyIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEwMworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZHVwIGZvciBmZCAlZCIKK21zZ3N0ciAi44OV44Kh44Kk44Or6KiY6L+w5a2QICVkIOOBruikh+ijveOBq+WkseaVl+OBl+OBvuOBl+OBnyIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEwOQorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgcGlwZSIKK21zZ3N0ciAi44OR44Kk44OX44Gu5L2c5oiQ44Gr5aSx5pWX44GX44G+44GX44GfIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTE3CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHdyaXRpbmcgdG8gJyVzJyIKK21zZ3N0ciAiJyVzJyDjgbjjga7mm7jjgY3ovrzjgb/jgqjjg6njg7zjgafjgZkiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgZmlsZWRlc2NyaXB0b3IgZmxhZ3MgZm9yICUuMjUwcyIKK21zZ3N0ciAiJS4yNTBzIOOBruODleOCoeOCpOODq+iomOi/sOWtkOODleODqeOCsOOCkuiqreOBv+WPluOCi+OBk+OBqOOBjOOBp+OBjeOBvuOBm+OCkyIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEyNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IGNsb3NlLW9uLWV4ZWMgZmxhZyBmb3IgJS4yNTBzIgorbXNnc3RyICIlLjI1MHMg44GuIGNsb3NlLW9uLWV4ZWMg44OV44Op44Kw44KS6Kit5a6a44Gn44GN44G+44Gb44KTIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmlndXJhdGlvbiBlcnJvcjogJXM6JWQ6ICVzIgorbXNnc3RyICLoqK3lrprjgqjjg6njg7w6ICVzOiVkOiAlcyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjc1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuIGNvbmZpZ3VyYXRpb24gZmlsZSAnJS4yNTVzJyBmb3IgcmVhZGluZzogJXMiCittc2dzdHIgIuioreWumuODleOCoeOCpOODqyAnJS4yNTVzJyDjga7oqq3jgb/lj5bjgornlKjjga7jgqrjg7zjg5fjg7PjgavlpLHmlZfjgZfjgb7jgZfjgZ86ICVzIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYmFsYW5jZWQgcXVvdGVzIGluICclcyciCittc2dzdHIgIiclcycg44Gu5byV55So56ym44GM6Yej44KK5ZCI44GE44G+44Gb44KTIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTE3CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gb3B0aW9uICclcyciCittc2dzdHIgIuS4jeaYjuOBquOCquODl+OCt+ODp+ODsyAnJXMnIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTIxCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgbmVlZHMgYSB2YWx1ZSIKK21zZ3N0ciAiJyVzJyDjga/lgKTjgYzlv4XopoHjgafjgZkiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBkb2VzIG5vdCB0YWtlIGEgdmFsdWUiCittc2dzdHIgIiclcycg44Gv5YCk44KS44Go44KK44G+44Gb44KTIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTMzCisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWQgZXJyb3IgaW4gY29uZmlndXJhdGlvbiBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICLoqK3lrprjg5XjgqHjgqTjg6sgYCUuMjU1cycg44Gu6Kqt44G/6L6844G/44Ko44Op44O8IgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgY29uZmlndXJhdGlvbiBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICLoqK3lrprjg5XjgqHjgqTjg6sgYCUuMjU1cycg44Gu44Kv44Ot44O844K65pmC44Gr44Ko44Op44O844GM55m655Sf44GX44G+44GX44GfIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTcwCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIG9wZW5pbmcgY29uZmlndXJhdGlvbiBkaXJlY3RvcnkgJyVzJyIKK21zZ3N0ciAi6Kit5a6a44OH44Kj44Os44Kv44OI44OqICclcycg44Gu44Kq44O844OX44Oz5pmC44Gr44Ko44Op44O844GM55m655Sf44GX44G+44GX44GfIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjI4CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gb3B0aW9uIC0tJXMiCittc2dzdHIgIuS4jeaYjuOBquOCquODl+OCt+ODp+ODsyAtLSVzIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgb3B0aW9uIHRha2VzIGEgdmFsdWUiCittc2dzdHIgIi0tJXMg44Kq44OX44K344On44Oz44Gv5YCk44GM5b+F6KaB44Gn44GZIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjM3CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgb3B0aW9uIGRvZXMgbm90IHRha2UgYSB2YWx1ZSIKK21zZ3N0ciAiLS0lcyDjgqrjg5fjgrfjg6fjg7Pjga/lgKTjgpLjgajjgorjgb7jgZvjgpMiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyNDUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gLSVjIgorbXNnc3RyICItJWMg44Gv5LiN5piO44Gq44Kq44OX44K344On44Oz44Gn44GZIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjUwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0lYyBvcHRpb24gdGFrZXMgYSB2YWx1ZSIKK21zZ3N0ciAiLSVjIOOCquODl+OCt+ODp+ODs+OBr+WApOOBjOW/heimgeOBp+OBmSIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI1OAorIywgYy1mb3JtYXQKK21zZ2lkICItJWMgb3B0aW9uIGRvZXMgbm90IHRha2UgYSB2YWx1ZSIKK21zZ3N0ciAiLSVjIOOCquODl+OCt+ODp+ODs+OBr+WApOOCkuOBqOOCiuOBvuOBm+OCkyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI3MQorIywgYy1mb3JtYXQKK21zZ2lkICJvYnNvbGV0ZSBvcHRpb24gJy0tJXMnXG4iCittc2dzdHIgIuaZguS7o+mBheOCjOOBruOCquODl+OCt+ODp+ODsyAnLS0lcydcbiIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI4NworIywgYy1mb3JtYXQKK21zZ2lkICJjb25mbGljdGluZyBhY3Rpb25zIC0lYyAoLS0lcykgYW5kIC0lYyAoLS0lcykiCittc2dzdHIgIuOCouOCr+OCt+ODp+ODsyAtJWMgKC0tJXMpIOOBqCAtJWMgKC0tJXMpIOOBjOertuWQiOOBl+OBvuOBmSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHZhbHVlIGZvciBgJXMnIGZpZWxkIgorbXNnc3RyICJgJXMnIOODleOCo+ODvOODq+ODieOBruWApOOBjOmHjeikh+OBl+OBpuOBhOOBvuOBmSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoxNDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidXNlci1kZWZpbmVkIGZpZWxkIG5hbWUgYCUuKnMnIHRvbyBzaG9ydCIKK21zZ3N0ciAi44Om44O844K25a6a576p44OV44Kj44O844Or44OJ5ZCNIGAlLipzJyDjgYznn63jgYvjgZnjgY7jgb7jgZkiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MTUyCisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSB2YWx1ZSBmb3IgdXNlci1kZWZpbmVkIGZpZWxkIGAlLipzJyIKK21zZ3N0ciAi44Om44O844K25a6a576p44OV44Kj44O844Or44OJIGAlLipzJyDjga7lgKTjgYzph43opIfjgZfjgabjgYTjgb7jgZkiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjA3Cittc2dpZCAiQ29uZmlndXJlZC1WZXJzaW9uIGZvciBwYWNrYWdlIHdpdGggaW5hcHByb3ByaWF0ZSBTdGF0dXMiCittc2dzdHIgIuS4jemBqeWIh+OBquOCueODhuODvOOCv+OCueOCkuaMgeOBpOODkeODg+OCseODvOOCuOOBriBDb25maWd1cmVkLVZlcnNpb24iCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjE4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgaGFzIHN0YXR1cyAlcyBidXQgdHJpZ2dlcnMgYXJlIGF3YWl0ZWQiCittc2dzdHIgIuODkeODg+OCseODvOOCuOOBr+eKtuaFiyAlcyDjgafjgZnjgYzjgIHjg4jjg6rjgqzjgpLlvoXjgaHlj5fjgZHjgabjgYTjgb7jgZkiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjIyCittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzIHRyaWdnZXJzLWF3YWl0ZWQgYnV0IG5vIHRyaWdnZXJzIGF3YWl0ZWQiCittc2dzdHIgIuODkeODg+OCseODvOOCuOOBr+ODiOODquOCrOW+heOBoeWPl+OBkeOBrueKtuaFi+OBp+OBmeOBjOOAgeW+heOBoeWPl+OBkeODiOODquOCrOOBr+OBguOCiuOBvuOBm+OCkyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzICVzIGJ1dCB0cmlnZ2VycyBhcmUgcGVuZGluZyIKK21zZ3N0ciAi44OR44OD44Kx44O844K444Gv54q25oWLICVzIOOBp+OBmeOBjOOAgeODiOODquOCrOOBr+S/neeVmeOBleOCjOOBpuOBhOOBvuOBmSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMzIKK21zZ2lkICJwYWNrYWdlIGhhcyBzdGF0dXMgdHJpZ2dlcnMtcGVuZGluZyBidXQgbm8gdHJpZ2dlcnMgcGVuZGluZyIKK21zZ3N0ciAi44OR44OD44Kx44O844K444Gv44OI44Oq44Ks5L+d55WZ44Gu54q25oWL44Gn44GZ44GM44CB5L+d55WZ44OI44Oq44Ks44Gv44GC44KK44G+44Gb44KTIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjI0MgorbXNnaWQgIlBhY2thZ2Ugd2hpY2ggaW4gc3RhdGUgbm90LWluc3RhbGxlZCBoYXMgY29uZmZpbGVzLCBmb3JnZXR0aW5nIHRoZW0iCittc2dzdHIgIiIKKyLnj77lnKjjgqTjg7Pjgrnjg4jjg7zjg6vjgZXjgozjgabjgYTjgarjgYTjg5Hjg4PjgrHjg7zjgrggKOOCueODhuODvOOCv+OCuSBub3QtaW5zdGFsbGVkKSDjgYwgIgorImNvbmZmaWxlcyDjgpLmjIHjgaPjgabjgYTjgovjga7jgafjgIHjgZ3jgozjgonjga7mg4XloLHjgpLnhKHoppbjgZfjgb7jgZkiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzM1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuIHBhY2thZ2UgaW5mbyBmaWxlIGAlLjI1NXMnIGZvciByZWFkaW5nIgorbXNnc3RyICLjg5Hjg4PjgrHjg7zjgrjmg4XloLHjg5XjgqHjgqTjg6sgYCUuMjU1cycg6Kqt44G/5Y+W44KK55So44Gu44Kq44O844OX44Oz44Gr5aSx5pWX44GX44G+44GX44GfIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjM0MQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW4ndCBzdGF0IHBhY2thZ2UgaW5mbyBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICLjg5Hjg4PjgrHjg7zjgrjmg4XloLHjg5XjgqHjgqTjg6sgYCUuMjU1cycg44Gu54q25oWL44KS5Y+W5b6X44Gn44GN44G+44Gb44KTIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjM0NworIywgYy1mb3JtYXQKK21zZ2lkICJjYW4ndCBtbWFwIHBhY2thZ2UgaW5mbyBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICLjg5Hjg4PjgrHjg7zjgrjmg4XloLHjg5XjgqHjgqTjg6sgYCUuMjU1cycg44KSIG1tYXAg44Gn44GN44G+44Gb44KTIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjM1MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiY2FuJ3Qgc3RhdCBwYWNrYWdlIGluZm8gZmlsZSBgJS4yNTVzJyIKK21zZ2lkICJyZWFkaW5nIHBhY2thZ2UgaW5mbyBmaWxlICclLjI1NXMnIgorbXNnc3RyICLjg5Hjg4PjgrHjg7zjgrjmg4XloLHjg5XjgqHjgqTjg6sgYCUuMjU1cycg44Gu54q25oWL44KS5Y+W5b6X44Gn44GN44G+44Gb44KTIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjM2MworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2xvc2UgYWZ0ZXIgcmVhZDogYCUuMjU1cyciCittc2dzdHIgIuiqreOBv+i+vOOBv+W+jOOBruOCr+ODreODvOOCuuOBq+WkseaVl+OBl+OBvuOBl+OBnzogYCUuMjU1cyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDA0CisjLCBjLWZvcm1hdAorbXNnaWQgIkVPRiBhZnRlciBmaWVsZCBuYW1lIGAlLipzJyIKK21zZ3N0ciAi44OV44Kj44O844Or44OJ5ZCNIGAlLipzJyDjga7lvozjgatFT0YiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDA3CisjLCBjLWZvcm1hdAorbXNnaWQgIm5ld2xpbmUgaW4gZmllbGQgbmFtZSBgJS4qcyciCittc2dzdHIgIuODleOCo+ODvOODq+ODieWQjSBgJS4qcycg44Gr5pS56KGMIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQxMAorIywgYy1mb3JtYXQKK21zZ2lkICJNU0RPUyBFT0YgKF5aKSBpbiBmaWVsZCBuYW1lIGAlLipzJyIKK21zZ3N0ciAi44OV44Kj44O844Or44OJ5ZCNIGAlLipzJyDjgasgTVNET1Mg44GuIEVPRiAoXlopIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQxNAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWVsZCBuYW1lIGAlLipzJyBtdXN0IGJlIGZvbGxvd2VkIGJ5IGNvbG9uIgorbXNnc3RyICLjg5XjgqPjg7zjg6vjg4nlkI0gYCUuKnMnIOOBruW+jOOBr+OCs+ODreODs+OBp+OBquOBkeOCjOOBsOOBquOCiuOBvuOBm+OCkyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiRU9GIGJlZm9yZSB2YWx1ZSBvZiBmaWVsZCBgJS4qcycgKG1pc3NpbmcgZmluYWwgbmV3bGluZSkiCittc2dzdHIgIuODleOCo+ODvOODq+ODiSBgJS4qcycg44Gu5YCk44Gu5YmN44GnIEVPRiAo5pyA5b6M44Gu5pS56KGM44GM44GC44KK44G+44Gb44KTKSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiTVNET1MgRU9GIGNoYXIgaW4gdmFsdWUgb2YgZmllbGQgYCUuKnMnIChtaXNzaW5nIG5ld2xpbmU/KSIKK21zZ3N0ciAi44OV44Kj44O844Or44OJIGAlLipzJyDjga7lgKTjgasgTVNET1MgRU9GIOaWh+WtlyAo5pS56KGM44GM44GC44KK44G+44Gb44KTPykiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDQwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJuZXdsaW5lIGluIGZpZWxkIG5hbWUgYCUuKnMnIgorbXNnaWQgImJsYW5rIGxpbmUgaW4gdmFsdWUgb2YgZmllbGQgJyUuKnMnIgorbXNnc3RyICLjg5XjgqPjg7zjg6vjg4nlkI0gYCUuKnMnIOOBq+aUueihjCIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiRU9GIGR1cmluZyB2YWx1ZSBvZiBmaWVsZCBgJS4qcycgKG1pc3NpbmcgZmluYWwgbmV3bGluZSkiCittc2dzdHIgIuODleOCo+ODvOODq+ODiSBgJS4qcycg44Gu5YCk44Gu6ZaT44GrIEVPRiAo5pyA5b6M44Gu5pS56KGM44GM44GC44KK44G+44Gb44KTKSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo1NDYKK21zZ2lkICJzZXZlcmFsIHBhY2thZ2UgaW5mbyBlbnRyaWVzIGZvdW5kLCBvbmx5IG9uZSBhbGxvd2VkIgorbXNnc3RyICLjg5Hjg4PjgrHjg7zjgrjmg4XloLHjgqjjg7Pjg4jjg6rjgYzopIfmlbDopovjgaTjgYvjgorjgb7jgZfjgZ/jgILoqLHjgZXjgozjgovjga7jga8x44Gk44Gu44G/44Gn44GZIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjU3MgorIywgYy1mb3JtYXQKK21zZ2lkICJubyBwYWNrYWdlIGluZm9ybWF0aW9uIGluIGAlLjI1NXMnIgorbXNnc3RyICJgJS4yNTVzJyDjgavjg5Hjg4PjgrHjg7zjgrjmg4XloLHjgYzjgYLjgorjgb7jgZvjgpMiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjQ1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiJXMsIGluIGZpbGUgJyUuMjU1cycgbmVhciBsaW5lICVkIHBhY2thZ2UgJyUuMjU1cyc6XG4iCisjfCAiICIKK21zZ2lkICIiCisicGFyc2luZyBmaWxlICclLjI1NXMnIG5lYXIgbGluZSAlZCBwYWNrYWdlICclLjI1NXMnOlxuIgorIiAlLjI1NXMiCittc2dzdHIgIiIKKyIlcywg44OV44Kh44Kk44OrICclLjI1NXMnIOOBriAlZCDooYznm67ku5jov5HjgIHjg5Hjg4PjgrHjg7zjgrggJyUuMjU1cyc6XG4iCisiICIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6NDgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIlcywgaW4gZmlsZSAnJS4yNTVzJyBuZWFyIGxpbmUgJWQ6XG4iCisjfCAiICIKK21zZ2lkICIiCisicGFyc2luZyBmaWxlICclLjI1NXMnIG5lYXIgbGluZSAlZDpcbiIKKyIgJS4yNTVzIgorbXNnc3RyICIiCisiJXMsIOODleOCoeOCpOODqyAnJS4yNTVzJyDjga4gJWQg6KGM55uu5LuY6L+ROlxuIgorIiAiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjEyNQorbXNnaWQgIm1heSBub3QgYmUgZW1wdHkgc3RyaW5nIgorbXNnc3RyICLnqbrjga7mloflrZfjgafjga/jgYTjgZHjgb7jgZvjgpMiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjEyNworIywgZnV6enkKKyN8IG1zZ2lkICJtdXN0IHN0YXJ0IHdpdGggYW4gYWxwaGFudW1lcmljIgorbXNnaWQgIm11c3Qgc3RhcnQgd2l0aCBhbiBhbHBoYW51bWVyaWMgY2hhcmFjdGVyIgorbXNnc3RyICLoi7HmlbDlrZfjgaflp4vjgb7jgonjgarjgZHjgozjgbDjgarjgorjgb7jgZvjgpMiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjEzNgorIywgYy1mb3JtYXQKK21zZ2lkICJjaGFyYWN0ZXIgYCVjJyBub3QgYWxsb3dlZCAob25seSBsZXR0ZXJzLCBkaWdpdHMgYW5kIGNoYXJhY3RlcnMgYCVzJykiCittc2dzdHIgIuaWh+WtlyBgJWMnIOOBr+ioseWPr+OBleOCjOOBpuOBhOOBvuOBm+OCkyAo5paH5a2X44CB5pWw5YCk44GoICclcycg44Gu44G/5L2/55So5Y+v6IO944Gn44GZKSIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MTc4CisjLCBmdXp6eQorI3wgbXNnaWQgIjxub25lPiIKK21zZ2N0eHQgInZlcnNpb24iCittc2dpZCAiPG5vbmU+IgorbXNnc3RyICI844Gq44GXPiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjA5Cittc2dpZCAidmVyc2lvbiBzdHJpbmcgaXMgZW1wdHkiCittc2dzdHIgIuODkOODvOOCuOODp+ODs+aWh+Wtl+OBjOepuuOBp+OBmSIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjI0Cittc2dpZCAidmVyc2lvbiBzdHJpbmcgaGFzIGVtYmVkZGVkIHNwYWNlcyIKK21zZ3N0ciAi44OQ44O844K444On44Oz5paH5a2X5YiX44Gr44K544Oa44O844K544GM5Z+L44KB6L6844G+44KM44Gm44GE44G+44GZIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyMzAKK21zZ2lkICJlcG9jaCBpbiB2ZXJzaW9uIGlzIG5vdCBudW1iZXIiCittc2dzdHIgIuODkOODvOOCuOODp+ODs+S4reOBriBlcG9jaCDjgYzmlbDlgKTjgafjga/jgYLjgorjgb7jgZvjgpMiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjIzMgorbXNnaWQgIm5vdGhpbmcgYWZ0ZXIgY29sb24gaW4gdmVyc2lvbiBudW1iZXIiCittc2dzdHIgIuODkOODvOOCuOODp+ODs+eVquWPt+OBruOCs+ODreODs+OBruW+jOOBq+S9leOCguOBguOCiuOBvuOBm+OCkyIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjQ3Cittc2dpZCAidmVyc2lvbiBudW1iZXIgZG9lcyBub3Qgc3RhcnQgd2l0aCBkaWdpdCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyNTAKK21zZ2lkICJpbnZhbGlkIGNoYXJhY3RlciBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAi44OQ44O844K444On44Oz55Wq5Y+344Gr54Sh5Yq544Gq5paH5a2X44GM44GC44KK44G+44GZIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyNTQKK21zZ2lkICJpbnZhbGlkIGNoYXJhY3RlciBpbiByZXZpc2lvbiBudW1iZXIiCittc2dzdHIgIuODquODk+OCuOODp+ODs+eVquWPt+OBq+eEoeWKueOBquaWh+Wtl+OBjOOBguOCiuOBvuOBmSIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6Mjk5IGxpYi9kcGtnL3BhcnNlaGVscC5jOjMxMQorIywgYy1mb3JtYXQKK21zZ2lkICJtaXNzaW5nICVzIgorbXNnc3RyICIlcyDjgYzopovjgaTjgYvjgorjgb7jgZvjgpMiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjMwMSBsaWIvZHBrZy9wYXJzZWhlbHAuYzozMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZW1wdHkgdmFsdWUgZm9yICVzIgorbXNnc3RyICIlcyDjga7nqbrjga7lgKQiCisKKyM6IGxpYi9kcGtnL3BrZy1mb3JtYXQuYzo4MAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGNoYXJhY3RlciBgJWMnIGluIGZpZWxkIHdpZHRoXG4iCittc2dzdHIgIuODleOCo+ODvOODq+ODieW5heOBq+eEoeWKueOBquaWh+WtlyBgJWMnIOOBjOOBguOCiuOBvuOBmVxuIgorCisjOiBsaWIvZHBrZy9wa2ctZm9ybWF0LmM6MTcyCisjLCBjLWZvcm1hdAorbXNnaWQgIkNsb3NpbmcgYnJhY2UgbWlzc2luZyBpbiBmb3JtYXRcbiIKK21zZ3N0ciAi44OV44Kp44O844Oe44OD44OI44Gr6ZaJ44GY5ous5bynICh9KSDjgYzmipzjgZHjgabjgYTjgb7jgZlcbiIKKworIzogbGliL2Rwa2cvcGtnLXNob3cuYzo0MAorbXNnaWQgIihubyBkZXNjcmlwdGlvbiBhdmFpbGFibGUpIgorbXNnc3RyICIo6Kqs5piOIChkZXNjcmlwdGlvbikg44GM44GC44KK44G+44Gb44KTKSIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjU1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpZ25vcmUgc2lnbmFsICVzIGJlZm9yZSBydW5uaW5nICUuMjUwcyIKK21zZ3N0ciAiJTIkLjI1MHMg44Gu5a6f6KGM5YmN44Gr44K344Kw44OK44OrICUxJHMg44KS54Sh6KaW44Gn44GN44G+44Gb44KTIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgdW4tY2F0Y2hpbmcgc2lnbmFsICVzOiAlc1xuIgorbXNnc3RyICLjgqjjg6njg7w6IOeNsuW+l+OBp+OBjeOBquOBhOOCt+OCsOODiuODqyAlcyA6ICVzXG4iCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzo3OAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyAoc3VicHJvY2Vzcyk6ICVzXG4iCittc2dzdHIgIiVzICjjgrXjg5bjg5fjg63jgrvjgrkpOiAlc1xuIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6ODkgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQ1NAorbXNnaWQgImZvcmsgZmFpbGVkIgorbXNnc3RyICJmb3JrIOWkseaVlyIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjExOQorIywgYy1mb3JtYXQKK21zZ2lkICJzdWJwcm9jZXNzICVzIHJldHVybmVkIGVycm9yIGV4aXQgc3RhdHVzICVkIgorbXNnc3RyICLjgrXjg5bjg5fjg63jgrvjgrkgJXMg44Gv44Ko44Op44O857WC5LqG44K544OG44O844K/44K5ICVkIOOCkui/lOOBl+OBvuOBl+OBnyIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEyOAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAid2FpdCBmb3Igc3VicHJvY2VzcyAlcyBmYWlsZWQiCittc2dpZCAic3VicHJvY2VzcyAlcyB3YXMgaW50ZXJydXB0ZWQiCittc2dzdHIgIuOCteODluODl+ODreOCu+OCuSAlcyDjga7lvoXmqZ/jgavlpLHmlZfjgZfjgb7jgZfjgZ8iCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInN1YnByb2Nlc3MgJXMga2lsbGVkIGJ5IHNpZ25hbCAoJXMpJXMiCittc2dpZCAic3VicHJvY2VzcyAlcyB3YXMga2lsbGVkIGJ5IHNpZ25hbCAoJXMpJXMiCittc2dzdHIgIuOCteODluODl+ODreOCu+OCuSAlcyDjgYzjgrfjgrDjg4rjg6sgKCVzKSVzIOOBq+OCiOOBo+OBpuW8t+WItue1guS6huOBl+OBvuOBl+OBnyIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEzMgorbXNnaWQgIiwgY29yZSBkdW1wZWQiCittc2dzdHIgIuOAgeOCs+OCouODgOODs+ODl+OBjOS9nOaIkOOBleOCjOOBvuOBl+OBnyIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJzdWJwcm9jZXNzICVzIGZhaWxlZCB3aXRoIHdhaXQgc3RhdHVzIGNvZGUgJWQiCittc2dzdHIgIuOCteODluODl+ODreOCu+OCuSAlcyDjgYwgd2FpdCDjgrnjg4bjg7zjgr/jgrnjgrPjg7zjg4kgJWQg44KS6L+U44GX44Gm5aSx5pWX44GX44G+44GX44GfIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTUxIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo0NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAid2FpdCBmb3Igc3VicHJvY2VzcyAlcyBmYWlsZWQiCittc2dzdHIgIuOCteODluODl+ODreOCu+OCuSAlcyDjga7lvoXmqZ/jgavlpLHmlZfjgZfjgb7jgZfjgZ8iCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgcGFja2FnZSBuYW1lIGAlLjI1MHMnIGluIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKyLjg4jjg6rjgqzpgYXlu7bjg5XjgqHjgqTjg6sgYCUyJC4yNTBzJyDjgavnhKHlirnjgarjg5Hjg4PjgrHjg7zjgrjlkI0gYCUxJC4yNTBzJyDjgYzjgYLjgorjgb7jgZkiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjgxCisjLCBjLWZvcm1hdAorbXNnaWQgInRydW5jYXRlZCB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLjg4jjg6rjgqzpgYXlu7bjg5XjgqHjgqTjg6sgYCUuMjUwcycg44GM5YiH44KK6Kmw44KB44KJ44KM44G+44GX44GfIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDo4NQorIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyBhdCBjaGFyYWN0ZXIgYCVzJyVzIgorbXNnc3RyICLjg4jjg6rjgqzpgYXlu7bjg5XjgqHjgqTjg6sgYCUuMjUwcycg44Gu5paH5a2XIGAlcyclcyDjga7kvY3nva7jgavmlofms5Xjgqjjg6njg7zjgYzjgYLjgorjgb7jgZkiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3Blbi9jcmVhdGUgdHJpZ2dlcnMgbG9ja2ZpbGUgYCUuMjUwcyciCittc2dzdHIgIuODiOODquOCrOODreODg+OCr+ODleOCoeOCpOODqyBgJS4yNTBzJyDjgpLjgqrjg7zjg5fjg7PjgYrjgojjgbPkvZzmiJDjgafjgY3jgb7jgZvjgpMiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjE0MQorIywgZnV6enkKKyN8IG1zZ2lkICJ0cmlnZ2VyZWQiCittc2dpZCAidHJpZ2dlcnMgYXJlYSIKK21zZ3N0ciAi44OI44Oq44Ks5riI44G/IgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi44OI44Oq44Ks6YGF5bu244OV44Kh44Kk44OrIGAlLjI1MHMnIOOBrueKtuaFi+OCkuWPluW+l+OBp+OBjeOBvuOBm+OCkyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MTY1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuODiOODquOCrOmBheW7tuODleOCoeOCpOODqyBgJS4yNTBzJyDjgpLjgqrjg7zjg5fjg7PjgafjgY3jgb7jgZvjgpMiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjE3OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3Blbi9jcmVhdGUgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuaWsOOBl+OBhOODiOODquOCrOmBheW7tuODleOCoeOCpOODqyBgJS4yNTBzJyDjgpLjgqrjg7zjg5fjg7PjgYrjgojjgbPkvZzmiJDjgafjgY3jgb7jgZvjgpMiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjIxNQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciByZWFkaW5nIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuODiOODquOCrOmBheW7tuODleOCoeOCpOODqyBgJS4yNTBzJyDjga7oqq3jgb/lj5bjgorkuK3jgavjgqjjg6njg7zjgYznmbrnlJ/jgZfjgb7jgZfjgZ8iCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjIyMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuaWsOOBl+OBhOODiOODquOCrOmBheW7tuODleOCoeOCpOODqyBgJS4yNTBzJyDjgpLmm7jjgY3ovrzjgoHjgb7jgZvjgpMiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjIyOAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuaWsOOBl+OBhOODiOODquOCrOmBheW7tuODleOCoeOCpOODqyBgJS4yNTBzJyDjgpLjgq/jg63jg7zjgrrjgafjgY3jgb7jgZvjgpMiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjIzMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi5paw44GX44GE44OI44Oq44Ks6YGF5bu244OV44Kh44Kk44OrIGAlLjI1MHMnIOOCkuOCpOODs+OCueODiOODvOODq+OBp+OBjeOBvuOBm+OCkyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjIyMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiaW52YWxpZCBvciB1bmtub3duIHN5bnRheCBpbiB0cmlnZ2VyIG5hbWUgYCUuMjUwcycgKGluIHRyaWdnZXIgaW50ZXJlc3RzIGZvciAiCisicGFja2FnZSBgJS4yNTBzJykiCittc2dzdHIgIiIKKyLjg4jjg6rjgqzlkI0gYCUuMjUwcycg44Gr54Sh5Yq544G+44Gf44Gv5pyq55+l44Gu5paH5rOV44GM44GC44KK44G+44GZICjjg5Hjg4PjgrHjg7zjgrggYCUuMjUwcycg44Gr6ZaiIgorIuS/guOBmeOCi+ODiOODquOCrCkiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzoyNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gdHJpZ2dlciBpbnRlcmVzdCBsaXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuODquOCueODiOODleOCoeOCpOODqyBgJS4yNTBzJyDjgavplqLkv4LjgZnjgovjg4jjg6rjgqzjgpLjgqrjg7zjg5fjg7PjgafjgY3jgb7jgZvjgpMiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzoyOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJld2luZCB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuODleOCoeOCpOODqyBgJS4yNTBzJyDjgavplqLkv4LjgZnjgovjg4jjg6rjgqzjga7lt7vjgY3miLvjgZfjgavlpLHmlZfjgZfjgb7jgZfjgZ8iCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyBzeW50YXggZXJyb3I7IGlsbGVnYWwgcGFja2FnZSBuYW1lIGAlLjI1MHMnOiAiCisiJS4yNTBzIgorbXNnc3RyICIiCisi44OV44Kh44Kk44OrIGAlLjI1MHMnIOOBq+mWouS/guOBmeOCi+ODiOODquOCrOOBjOaWh+azleOCqOODqeODvOOBp+OBmTsg54Sh5Yq544Gq44OR44OD44Kx44O844K45ZCNIGAiCisiJS4yNTBzJzogJS4yNTBzIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzE4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLjg5XjgqHjgqTjg6sgYCUuMjUwcycg44Gr6Zai5L+C44GZ44KL5paw44GX44GE44OI44Oq44Ks44KS5pu444GN6L6844KB44G+44Gb44KTIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzIxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlICclLjI1MHMnIgorbXNnc3RyICLjg5XjgqHjgqTjg6sgJyUuMjUwcycg44Gr6Zai5L+C44GZ44KL5paw44GX44GE44OI44Oq44Ks44Gu44OV44Op44OD44K344Ol44GM44Gn44GN44G+44Gb44KTIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzI0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzeW5jIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgIuODleOCoeOCpOODqyAnJS4yNTBzJyDjgavplqLkv4LjgZnjgovmlrDjgZfjgYTjg4jjg6rjgqzjga7lkIzmnJ/jgYzjgafjgY3jgb7jgZvjgpMiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi44OV44Kh44Kk44OrIGAlLjI1MHMnIOOBq+mWouS/guOBmeOCi+aWsOOBl+OBhOODiOODquOCrOOCkuOCpOODs+OCueODiOODvOODq+OBp+OBjeOBvuOBm+OCkyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjM0MCBsaWIvZHBrZy90cmlnbGliLmM6MzQyIGxpYi9kcGtnL3RyaWdsaWIuYzo0NzIKKyM6IHNyYy9yZW1vdmUuYzoyODYgc3JjL3JlbW92ZS5jOjM3NworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVtb3ZlIGAlLjI1MHMnIgorbXNnc3RyICJgJS4yNTBzJyDjgpLliYrpmaTjgafjgY3jgb7jgZvjgpMiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozNjAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLjg5XjgqHjgqTjg6sgYCUuMjUwcycg44Gr6Zai5L+C44GZ44KL5paw44GX44GE44OI44Oq44Ks44KS5L2c5oiQ44Gn44GN44G+44Gb44KTIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzgzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLjg5XjgqHjgqTjg6sgJyUuMjUwcycg44Gr6Zai5L+C44GZ44KL5paw44GX44GE44OI44Oq44Ks44Gu44Kv44Ot44O844K644GM44Gn44GN44G+44Gb44KTIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDU2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkdXBsaWNhdGUgZmlsZSB0cmlnZ2VyIGludGVyZXN0IGZvciBmaWxlbmFtZSBgJS4yNTBzJyBhbmQgcGFja2FnZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorIuODleOCoeOCpOODq+WQjSBgJS4yNTBzJyDjgYrjgojjgbPjg5Hjg4PjgrHjg7zjgrggYCUuMjUwcycg44Gr6Zai5L+C44GZ44KL44OV44Kh44Kk44Or44OI44Oq44Ks44GM6YeN6KSHIgorIuOBl+OBpuOBhOOBvuOBmSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ4MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuaWsOOBl+OBhOODleOCoeOCpOODq+ODiOODquOCrOODleOCoeOCpOODqyBgJS4yNTBzJyDjgpLkvZzmiJDjgafjgY3jgb7jgZvjgpMiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0OTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuaWsOOBl+OBhOODiOODquOCrOODleOCoeOCpOODqyBgJS4yNTBzJyDjgpLmm7jjgY3ovrzjgoHjgb7jgZvjgpMiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0OTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgJyUuMjUwcyciCittc2dzdHIgIuaWsOOBl+OBhOODleOCoeOCpOODq+ODiOODquOCrOODleOCoeOCpOODqyAnJS4yNTBzJyDjgpLjg5Xjg6njg4Pjgrfjg6XjgafjgY3jgb7jgZvjgpMiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0OTkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAi5paw44GX44GE44OV44Kh44Kk44Or44OI44Oq44Ks44OV44Kh44Kk44OrICclLjI1MHMnIOOCkuWQjOacn+OBp+OBjeOBvuOBm+OCkyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjUwMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi5paw44GX44GE44OV44Kh44Kk44Or44OI44Oq44Ks44OV44Kh44Kk44OrIGAlLjI1MHMnIOOCkuOCr+ODreODvOOCuuOBp+OBjeOBvuOBm+OCkyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjUwNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGFzIGAlLjI1MHMnIgorbXNnc3RyICLmlrDjgZfjgYTjg5XjgqHjgqTjg6vjg4jjg6rjgqzjg5XjgqHjgqTjg6vjgpIgYCUuMjUwcycg44Go44GX44Gm44Kk44Oz44K544OI44O844Or44Gn44GN44G+44Gb44KTIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTQyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi44OV44Kh44Kk44OrIGAlLjI1MHMnIOOBruODleOCoeOCpOODq+ODiOODquOCrOOCkuiqreOBv+WPluOCjOOBvuOBm+OCkyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjU1MgorIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLjg5XjgqHjgqTjg6sgYCUuMjUwcycg44Gu44OV44Kh44Kk44Or44OI44Oq44Ks44Gr5paH5rOV44Ko44Op44O844GM44GC44KK44G+44GZIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTYzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmaWxlIHRyaWdnZXJzIHJlY29yZCBtZW50aW9ucyBpbGxlZ2FsIHBhY2thZ2UgbmFtZSBgJS4yNTBzJyAoZm9yIGludGVyZXN0IGluICIKKyJmaWxlIGAlLjI1MHMnKTogJS4yNTBzIgorbXNnc3RyICIiCisi44OV44Kh44Kk44Or44OI44Oq44Ks6KiY6Yyy44Gv54Sh5Yq544Gq44OR44OD44Kx44O844K45ZCNIGAlLjI1MHMnIOOBq+OBpOOBhOOBpuiogOWPiuOBl+OBpuOBhOOBvuOBmSAo44OV44KhIgorIuOCpOODqyBgJS4yNTBzJyDjgavplqLkv4IpOiAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo2NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInRyaWdnZXJzIGNpIGZpbGUgYCUuMjUwcycgY29udGFpbnMgaWxsZWdhbCB0cmlnZ2VyIHN5bnRheCBpbiB0cmlnZ2VyIG5hbWUgYCIKKyIlLjI1MHMnOiAlLjI1MHMiCittc2dzdHIgIiIKKyJjaSDjg5XjgqHjgqTjg6sgYCUuMjUwcycg44Gu44OI44Oq44Ks44Gv5LiN5q2j44Gq44OI44Oq44Ks5paH5rOV44KS44OI44Oq44Ks5ZCNIGAlLjI1MHMnIOOBq+WQq+OCk+OBp+OBhCIKKyLjgb7jgZk6ICUuMjUwcyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjY4NAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiB0cmlnZ2VycyBjaSBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJjaSDjg5XjgqHjgqTjg6sgYCUuMjUwcycg44Gu44OI44Oq44Ks44KS44Kq44O844OX44Oz44Gn44GN44G+44Gb44KTIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Njk5Cittc2dpZCAidHJpZ2dlcnMgY2kgZmlsZSBjb250YWlucyB1bmtub3duIGRpcmVjdGl2ZSBzeW50YXgiCittc2dzdHIgImNpIOODleOCoeOCpOODq+OBruODiOODquOCrOOBr+acquefpeOBruODh+OCo+ODrOOCr+ODhuOCo+ODluaWh+azleOCkuWQq+OCk+OBp+OBhOOBvuOBmSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjcxMgorIywgYy1mb3JtYXQKK21zZ2lkICJ0cmlnZ2VycyBjaSBmaWxlIGNvbnRhaW5zIHVua25vd24gZGlyZWN0aXZlIGAlLjI1MHMnIgorbXNnc3RyICJjaSDjg5XjgqHjgqTjg6vjga7jg4jjg6rjgqzjga/mnKrnn6Xjga7jg4fjgqPjg6zjgq/jg4bjgqPjg5YgYCUuMjUwcycg44KS5ZCr44KT44Gn44GE44G+44GZIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Nzc2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdHJpZ2dlcnMgc3RhdGUgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICLnirbmhYvjg4fjgqPjg6zjgq/jg4jjg6ogYCUuMjUwcycg44Gu44OI44Oq44Ks44KS5L2c5oiQ44Gn44GN44G+44Gb44KTIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Nzc5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgb3duZXJzaGlwIG9mIHRyaWdnZXJzIHN0YXRlIGRpcmVjdG9yeSBgJS4yNTBzJyIKK21zZ3N0ciAi54q25oWL44OH44Kj44Os44Kv44OI44OqIGAlLjI1MHMnIOOBruODiOODquOCrOOBruaJgOacieaoqeOCkuioreWumuOBp+OBjeOBvuOBm+OCkyIKKworIzogbGliL2Rwa2cvdHJpZ25hbWUuYzozNAorbXNnaWQgImVtcHR5IHRyaWdnZXIgbmFtZXMgYXJlIG5vdCBwZXJtaXR0ZWQiCittc2dzdHIgIuepuuOBruODiOODquOCrOWQjeOBr+ioseOBleOCjOOBpuOBhOOBvuOBm+OCkyIKKworIzogbGliL2Rwa2cvdHJpZ25hbWUuYzozOAorbXNnaWQgInRyaWdnZXIgbmFtZSBjb250YWlucyBpbnZhbGlkIGNoYXJhY3RlciIKK21zZ3N0ciAi44OI44Oq44Ks5ZCN44Gr54Sh5Yq544Gq5paH5a2X44GM5ZCr44G+44KM44Gm44GE44G+44GZIgorCisjOiBsaWIvZHBrZy91dGlscy5jOjU2CisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWQgZXJyb3IgaW4gYCUuMjUwcyciCittc2dzdHIgIiUuMjUwcyDjgafoqq3jgb/lj5bjgorjgqjjg6njg7wiCisKKyM6IGxpYi9kcGtnL3V0aWxzLmM6NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmdldHMgZ2F2ZSBhbiBlbXB0eSBzdHJpbmcgZnJvbSBgJS4yNTBzJyIKK21zZ3N0ciAiZmdldHMg44GMIGAlLjI1MHMnIOOBi+OCieepuuOBruaWh+Wtl+WIl+OCkuWPluW+l+OBl+OBvuOBl+OBnyIKKworIzogbGliL2Rwa2cvdXRpbHMuYzo2MworIywgYy1mb3JtYXQKK21zZ2lkICJ0b28tbG9uZyBsaW5lIG9yIG1pc3NpbmcgbmV3bGluZSBpbiBgJS4yNTBzJyIKK21zZ3N0ciAiYCUuMjUwcycg44Gu6KGM44GM6ZW344GZ44GO44KL44GL5pS56KGM44GM44GC44KK44G+44Gb44KTIgorCisjOiBsaWIvZHBrZy91dGlscy5jOjc1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW9mIHJlYWRpbmcgYCUuMjUwcyciCittc2dzdHIgImAlLjI1MHMnIOOBruiqreOBv+WPluOCiuS4reOBq+S6iOacn+OBl+OBquOBhOODleOCoeOCpOODq+OBrue1guOCj+OCiuOBp+OBmSIKKworIzogbGliL2Rwa2cvdmFyYnVmLmM6ODIgbGliL2Rwa2cvdmFyYnVmLmM6ODgKK21zZ2lkICJlcnJvciBmb3JtYXR0aW5nIHN0cmluZyBpbnRvIHZhcmJ1ZiB2YXJpYWJsZSIKK21zZ3N0ciAidmFyYnVmIOWkieaVsOWGheOBruODleOCqeODvOODnuODg+ODiOaWh+Wtl+WIl+OBq+OCqOODqeODvOOBjOOBguOCiuOBvuOBmSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTc5IHNyYy9hcmNoaXZlcy5jOjIwMCBzcmMvYXJjaGl2ZXMuYzo3MjQKK21zZ2lkICJlcnJvciByZWFkaW5nIGZyb20gZHBrZy1kZWIgcGlwZSIKK21zZ3N0ciAiZHBrZy1kZWIg44OR44Kk44OX44GL44KJ44Gu6Kqt44G/6L6844G/44Ko44Op44O844Gn44GZIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxOTUKKyMsIGMtZm9ybWF0Cittc2dpZCAic2tpcHBlZCB1bnBhY2tpbmcgZmlsZSAnJS4yNTVzJyAocmVwbGFjZWQgb3IgZXhjbHVkZWQ/KSIKK21zZ3N0ciAiIgorIuWxlemWi+a4iOOBv+ODleOCoeOCpOODqyAnJS4yNTVzJyDjgpLjgrnjgq3jg4Pjg5fjgZfjgb7jgZfjgZ8gKOe9ruOBjeaPm+OBiOOCieOCjOOBn+OBi+mZpOWkluOBleOCjOOBnz8pIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoyNDYgc3JjL2FyY2hpdmVzLmM6MjUwCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHNldHRpbmcgdGltZXN0YW1wcyBvZiBgJS4yNTVzJyIKK21zZ3N0ciAiYCUuMjU1cycg44Gu44K/44Kk44Og44K544K/44Oz44OX6Kit5a6a44Ko44Op44O844Gn44GZIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoyNjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igc2V0dGluZyBvd25lcnNoaXAgb2Ygc3ltbGluayBgJS4yNTVzJyIKK21zZ3N0ciAi44K344Oz44Oc44Oq44OD44Kv44Oq44Oz44KvIGAlLjI1NXMnIOOBruaJgOacieiAheioreWumuS4reOBq+OCqOODqeODvOOBjOeZuueUn+OBl+OBvuOBl+OBnyIKKworIzogc3JjL2FyY2hpdmVzLmM6MjY1IHNyYy9hcmNoaXZlcy5jOjczNCBzcmMvc3RhdGNtZC5jOjE2MworIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIG93bmVyc2hpcCBvZiBgJS4yNTVzJyIKK21zZ3N0ciAiYCUuMjU1cycg44Gu5omA5pyJ6ICF6Kit5a6a44Ko44Op44O844Gn44GZIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoyNjcgc3JjL2FyY2hpdmVzLmM6NzM2IHNyYy9zdGF0Y21kLmM6MTY1CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHNldHRpbmcgcGVybWlzc2lvbnMgb2YgYCUuMjU1cyciCittc2dzdHIgImAlLjI1NXMnIOOBruioseWPr+WxnuaAp+ioreWumuOCqOODqeODvOOBp+OBmSIKKworIzogc3JjL2FyY2hpdmVzLmM6Mzk1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBzdGF0IChkZXJlZmVyZW5jZSkgZXhpc3Rpbmcgc3ltbGluayBgJS4yNTBzJyIKK21zZ3N0ciAiIgorImAlLjI1MHMnIOOBruaXouWtmOOBruOCt+ODs+ODnOODquODg+OCr+ODquODs+OCr+OBrueKtuaFiyAo6YCG5Y+C54WnKSDjgpLlj5blvpfjgafjgY3jgb7jgZvjgpPjgafjgZfjgZ8iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjQxNworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZmFpbGVkIHRvIHN0YXQgKGRlcmVmZXJlbmNlKSBwcm9wb3NlZCBuZXcgc3ltbGluayB0YXJnZXQgYCUuMjUwcycgZm9yICIKKyJzeW1saW5rIGAlLjI1MHMnIgorbXNnc3RyICIiCisi44K344Oz44Oc44Oq44OD44Kv44Oq44Oz44KvIGAlMiQuMjUwcycg44Gu5o+Q5qGI44GV44KM44Gf5paw44GX44GE44K344Oz44Oc44Oq44OD44Kv44K/44O844Ky44OD44OIIGAiCisiJTEkLjI1MHMnIOOBrueKtuaFiyAo6YCG5Y+C54WnKSDjgpLlj5blvpfjgafjgY3jgb7jgZvjgpPjgafjgZfjgZ8iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjQ3NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidHJ5aW5nIHRvIG92ZXJ3cml0ZSBgJS4yNTBzJywgd2hpY2ggaXMgdGhlIGRpdmVydGVkIHZlcnNpb24gb2YgYCIKKyIlLjI1MHMnIChwYWNrYWdlOiAlLjEwMHMpIgorbXNnc3RyICIiCisiYCUuMjUwcycg44KS5LiK5pu444GN44GX44KI44GG44Go44GX44Gm44GE44G+44GZ44CC44GT44KM44GvIGAlLjI1MHMnICjjg5Hjg4PjgrHjg7zjgrg6ICUuMTAwcykg44GuIgorIumAgOmBv+ODkOODvOOCuOODp+ODs+OBp+OBmSIKKworIzogc3JjL2FyY2hpdmVzLmM6NDgxCisjLCBjLWZvcm1hdAorbXNnaWQgInRyeWluZyB0byBvdmVyd3JpdGUgYCUuMjUwcycsIHdoaWNoIGlzIHRoZSBkaXZlcnRlZCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICIiCisiYCUuMjUwcycg44KS5LiK5pu444GN44GX44KI44GG44Go44GX44Gm44GE44G+44GZ44CC44GT44KM44GvIGAlLjI1MHMnIOOBrumAgOmBv+ODkOODvOOCuOODp+ODs+OBp+OBmSIKKworIzogc3JjL2FyY2hpdmVzLmM6NTExCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGAlLjI1NXMnICh3aGljaCBJIHdhcyBhYm91dCB0byBpbnN0YWxsKSIKK21zZ3N0ciAiKOS7iuOCpOODs+OCueODiOODvOODq+OBl+OCiOOBhuOBqOOBl+OBpuOBhOOCiykgYCUuMjU1cycg44Gu54q25oWL44KS5Y+W5b6X44Gn44GN44G+44Gb44KTIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo1MTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVuYWJsZSB0byBjbGVhbiB1cCBtZXNzIHN1cnJvdW5kaW5nIGAlLjI1NXMnIGJlZm9yZSBpbnN0YWxsaW5nIGFub3RoZXIgIgorInZlcnNpb24iCittc2dzdHIgIuWIpeODkOODvOOCuOODp+ODs+OBruOCpOODs+OCueODiOODvOODq+WJjeOBriBgJS4yNTVzJyDjgb7jgo/jgorjga7jgrTjg5/mjoPpmaTjgavlpLHmlZfjgZfjgb7jgZfjgZ8iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjUyNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCByZXN0b3JlZCBgJS4yNTVzJyBiZWZvcmUgaW5zdGFsbGluZyBhbm90aGVyIHZlcnNpb24iCittc2dzdHIgIiIKKyLliKXjg5Djg7zjgrjjg6fjg7Pjga7jgqTjg7Pjgrnjg4jjg7zjg6vliY3jga7lvqnlhYPjgZXjgozjgZ8gYCUuMjU1cycg44Gu54q25oWL44KS5Y+W5b6X44Gn44GN44G+44Gb44KTIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo1NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiYXJjaGl2ZSBjb250YWluZWQgb2JqZWN0IGAlLjI1NXMnIG9mIHVua25vd24gdHlwZSAweCV4IgorbXNnc3RyICLjgqLjg7zjgqvjgqTjg5bjgavlkKvjgb7jgozjgovjgqrjg5bjgrjjgqfjgq/jg4ggYCUuMjU1cycg44GM5LiN5piO44Gq5Z6LIDB4JXgg44Gn44GZIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2MjYgc3JjL2RpdmVydGNtZC5jOjE1MCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NjgyCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIyMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI4NAorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE0NDEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE2ODAKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTY3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjQ0CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUyNworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc3RhdCBmaWxlICclcyciCittc2dzdHIgIuODleOCoeOCpOODqyAnJXMnIOOBrueKtuaFi+OCkuWPluW+l+OBp+OBjeOBvuOBm+OCkyIKKworIzogc3JjL2FyY2hpdmVzLmM6NjQxCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlcGxhY2luZyBmaWxlcyBpbiBvbGQgcGFja2FnZSAlcyAuLi5cbiIKK21zZ3N0ciAi5Y+k44GE44OR44OD44Kx44O844K4ICVzIOS4reOBruODleOCoeOCpOODq+OCkue9ruaPm+OBl+OBpuOBhOOBvuOBmSAuLi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6NjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlcGxhY2VkIGJ5IGZpbGVzIGluIGluc3RhbGxlZCBwYWNrYWdlICVzIC4uLlxuIgorbXNnc3RyICIiCisi44Kk44Oz44K544OI44O844Or44GV44KM44Gf44OR44OD44Kx44O844K4ICVzIOOBruS4reOBruODleOCoeOCpOODq+OBp+e9ruOBjeaPm+OBiOOCieOCjOOBvuOBl+OBnyAuLi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6NjU0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ0cnlpbmcgdG8gb3ZlcndyaXRlIGRpcmVjdG9yeSAnJS4yNTBzJyBpbiBwYWNrYWdlICUuMjUwcyAlLjI1MHMgd2l0aCAiCisibm9uZGlyZWN0b3J5IgorbXNnc3RyICIiCisiJyUuMjUwcycg44OH44Kj44Os44Kv44OI44Oq44KS5LiK5pu444GN44GX44KI44GG44Go44GX44Gm44GE44G+44GZ44CC44OR44OD44Kx44O844K4ICUuMjUwcyAlLjI1MHMg44GnIgorIuOBr+ODh+OCo+ODrOOCr+ODiOODquOBp+OBr+OBguOCiuOBvuOBm+OCk+OBp+OBl+OBnyIKKworIzogc3JjL2FyY2hpdmVzLmM6NjYxCisjLCBjLWZvcm1hdAorbXNnaWQgInRyeWluZyB0byBvdmVyd3JpdGUgJyUuMjUwcycsIHdoaWNoIGlzIGFsc28gaW4gcGFja2FnZSAlLjI1MHMgJS4yNTBzIgorbXNnc3RyICIiCisiJyUuMjUwcycg44KS5LiK5pu444GN44GX44KI44GG44Go44GX44Gm44GE44G+44GZ44CC44GT44KM44Gv44OR44OD44Kx44O844K4ICUuMjUwcyAlLjI1MHMg44Gr44KC5a2Y5ZyoIgorIuOBl+OBvuOBmSIKKworIzogc3JjL2FyY2hpdmVzLmM6NzExCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgYCUuMjU1cycgKHdoaWxlIHByb2Nlc3NpbmcgYCUuMjU1cycpIgorbXNnc3RyICIoYCUyJC4yNTVzJyDjga7lh6bnkIbkuK3jgaspIGAlMSQuMjU1cycg44Gu5L2c5oiQ44Gr5aSx5pWX44GX44G+44GX44GfIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3MTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFja2VuZCBkcGtnLWRlYiBkdXJpbmcgYCUuMjU1cyciCittc2dzdHIgImAlLjI1NXMnIOmWk+OBriBkcGtnLWRlYiDjg5Djg4Pjgq/jgqjjg7Pjg4kiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc0NCBzcmMvYXJjaGl2ZXMuYzo5MDggc3JjL2FyY2hpdmVzLmM6OTQ5CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3Npbmcvd3JpdGluZyBgJS4yNTVzJyIKK21zZ3N0ciAiYCUuMjU1cycg44Gu44Kv44Ot44O844K6L+abuOOBjei+vOOBv+S4reOBq+OCqOODqeODvOOBjOeZuueUn+OBl+OBvuOBl+OBnyIKKworIzogc3JjL2FyY2hpdmVzLmM6NzQ4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIHBpcGUgYCUuMjU1cyciCittc2dzdHIgIuODkeOCpOODlyBgJS4yNTVzJyDjga7kvZzmiJDkuK3jgavjgqjjg6njg7zjgYznmbrnlJ/jgZfjgb7jgZfjgZ8iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc1MyBzcmMvYXJjaGl2ZXMuYzo3NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgZGV2aWNlIGAlLjI1NXMnIgorbXNnc3RyICLjg4fjg5DjgqTjgrkgYCUuMjU1cycg44Gu5L2c5oiQ5Lit44Gr44Ko44Op44O844GM55m655Sf44GX44G+44GX44GfIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgaGFyZCBsaW5rIGAlLjI1NXMnIgorbXNnc3RyICLjg4/jg7zjg4njg6rjg7Pjgq8gYCUuMjU1cycg44Gu5L2c5oiQ5Lit44Gr44Ko44Op44O844GM55m655Sf44GX44G+44GX44GfIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NzcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjUzOQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBzeW1ib2xpYyBsaW5rIGAlLjI1NXMnIgorbXNnc3RyICLjgrfjg7Pjg5zjg6rjg4Pjgq/jg6rjg7Pjgq8gYCUuMjU1cycg44Gu5L2c5oiQ5Lit44Gr44Ko44Op44O844GM55m655Sf44GX44G+44GX44GfIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgZGlyZWN0b3J5IGAlLjI1NXMnIgorbXNnc3RyICLjg4fjgqPjg6zjgq/jg4jjg6ogYCUuMjU1cycg44Gu5L2c5oiQ5Lit44Gr44Ko44Op44O844GM55m655Sf44GX44G+44GX44GfIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4MjIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG1vdmUgYXNpZGUgYCUuMjU1cycgdG8gaW5zdGFsbCBuZXcgdmVyc2lvbiIKK21zZ3N0ciAi5paw44OQ44O844K444On44Oz44KS44Kk44Oz44K544OI44O844Or44GZ44KL44Gf44KB44GuIGAlLjI1NXMnIOOBrumAgOmBv+OBjOOBp+OBjeOBvuOBm+OCk+OBp+OBl+OBnyIKKworIzogc3JjL2FyY2hpdmVzLmM6ODMyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzozMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgbGluayBgJS4yNTVzJyIKK21zZ3N0ciAi44Oq44Oz44KvIGAlLjI1NXMnIOOCkuiqreOCgeOBvuOBm+OCkyIKKworIzogc3JjL2FyY2hpdmVzLmM6ODM0IHNyYy9jb25maWd1cmUuYzo0MjMKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ltYm9saWMgbGluayAnJS4yNTBzJyBzaXplIGhhcyBjaGFuZ2VkIGZyb20gJWpkIHRvICV6ZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG1ha2UgYmFja3VwIHN5bWxpbmsgZm9yIGAlLjI1NXMnIgorbXNnc3RyICJgJS4yNTVzJyDjga7jg5Djg4Pjgq/jgqLjg4Pjg5fnlKjjgrfjg7Pjg5zjg6rjg4Pjgq/jg6rjg7Pjgq/jgpLkvZzmiJDjgafjgY3jgb7jgZvjgpMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjg0MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hvd24gYmFja3VwIHN5bWxpbmsgZm9yIGAlLjI1NXMnIgorbXNnc3RyICJgJS4yNTVzJyDjga7jg5Djg4Pjgq/jgqLjg4Pjg5fnlKjjgrfjg7Pjg5zjg6rjg4Pjgq/jg6rjg7Pjgq/jgpIgY2hvd24g44Gn44GN44G+44Gb44KTIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4NDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG1ha2UgYmFja3VwIGxpbmsgb2YgYCUuMjU1cycgYmVmb3JlIGluc3RhbGxpbmcgbmV3IHZlcnNpb24iCittc2dzdHIgIiIKKyLmlrDjg5Djg7zjgrjjg6fjg7Pjga7jgqTjg7Pjgrnjg4jjg7zjg6vliY3jga4gYCUuMjU1cycg44Gu44OQ44OD44Kv44Ki44OD44OX55So44Oq44Oz44Kv44KS5L2c5oiQ44Gn44GN44G+44GbIgorIuOCkyIKKworIzogc3JjL2FyY2hpdmVzLmM6ODYzIHNyYy9hcmNoaXZlcy5jOjk1NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgdmVyc2lvbiBvZiBgJS4yNTVzJyIKK21zZ3N0ciAiYCUuMjU1cycg44Gu5paw44GX44GE44OQ44O844K444On44Oz44KS44Kk44Oz44K544OI44O844Or44Gn44GN44G+44Gb44KTIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo5MDIgc3JjL2FyY2hpdmVzLmM6OTQ1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuICclLjI1NXMnIgorbXNnc3RyICInJS4yNTVzJyDjgpLjgqrjg7zjg5fjg7PjgafjgY3jgb7jgZvjgpMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjk0NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBmaWxlICclLjI1NXMnIgorbXNnc3RyICLjg5XjgqHjgqTjg6sgJyUuMjU1cycg44KS5ZCM5pyf44Gn44GN44G+44Gb44KTIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDAwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpZ25vcmluZyBkZXBlbmRlbmN5IHByb2JsZW0gd2l0aCAlczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorIiVzIOOBruS+neWtmOmWouS/guOBruWVj+mhjOOCkueEoeimluOBl+OBpuOBhOOBvuOBmTpcbiIKKyIlcyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAwNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiY29uc2lkZXJpbmcgZGVjb25maWd1cmF0aW9uIG9mIGVzc2VudGlhbFxuIgorIiBwYWNrYWdlICVzLCB0byBlbmFibGUgJXMuIgorbXNnc3RyICIiCisiJTIkcyDjgpLmnInlirnjgavjgZnjgovjgZ/jgoHjgIHkuI3lj6/mrKDjg5Hjg4PjgrHjg7zjgrhcbiIKKyIgJTEkcyDjga7oqK3lrprliYrpmaTjgpLogIPmha7jgZfjgabjgYTjgb7jgZnjgIIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IG5vLCAlcyBpcyBlc3NlbnRpYWwsIHdpbGwgbm90IGRlY29uZmlndXJlXG4iCisiIGl0IGluIG9yZGVyIHRvIGVuYWJsZSAlcy5cbiIKK21zZ3N0ciAiIgorImRwa2c6IOWkseaVl+OAgiVzIOOBr+S4jeWPr+asoOODkeODg+OCseODvOOCuOOBp+OBmeOAgiVzIOOCkuacieWKueOBq1xuIgorIiDjgZnjgovjgZ/jgoHjgavjgIHjgZ3jga7oqK3lrprliYrpmaTjgpLooYzjgYTjgb7jgZvjgpPjgIJcbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAyMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogbm8sIGNhbm5vdCBwcm9jZWVkIHdpdGggJXMgKC0tYXV0by1kZWNvbmZpZ3VyZSB3aWxsIGhlbHApOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzog5aSx5pWX44CCJXMg44KS5Yem55CG44Gn44GN44G+44Gb44KTICgtLWF1dG8tZGVjb25maWd1cmUg44KS5L2/44GE44G+44GX44KH44GGKTpcbiIKKyIlcyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAzMgorIywgYy1mb3JtYXQKK21zZ2lkICJyZW1vdmFsIG9mICUuMjUwcyIKK21zZ3N0ciAiJS4yNTBzIOOBruWJiumZpCIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA1NworIywgYy1mb3JtYXQKK21zZ2lkICJpbnN0YWxsYXRpb24gb2YgJS4yNTBzIgorbXNnc3RyICJgJS4yNTBzJyDjga7jgqTjg7Pjgrnjg4jjg7zjg6siCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IGNvbnNpZGVyaW5nIGRlY29uZmlndXJhdGlvbiBvZiAlcywgd2hpY2ggd291bGQgYmUgYnJva2VuIGJ5ICVzIC4uLlxuIgorbXNnc3RyICJkcGtnOiAlMiRzIOOBq+OCiOOBo+OBpuWjiuOCjOOBnyAlMSRzIOOBruioreWumuWJiumZpOOCkuiAg+OBiOOBpuOBhOOBvuOBmSAuLi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA2NQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiB5ZXMsIHdpbGwgZGVjb25maWd1cmUgJXMgKGJyb2tlbiBieSAlcykuXG4iCittc2dzdHIgIiIKKyJkcGtnOiDllY/poYzjgYLjgorjgb7jgZvjgpPjgIIoJTIkcyDjgavjgojjgaPjgablo4rjgozjgZ8pICUxJHMg44Gu6Kit5a6a5YmK6Zmk44KS44GX44G+44GZ44CCXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNjkgc3JjL2FyY2hpdmVzLmM6MTE4NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogcmVnYXJkaW5nICVzIGNvbnRhaW5pbmcgJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiAlcyDjgYwgJXMg44KS5ZCr44KT44Gn44GE44KL44GT44Go44KS6ICD5oWu44GZ44KL44GoOlxuIgorIiVzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDc3Cittc2dpZCAiaWdub3JpbmcgYnJlYWthZ2UsIG1heSBwcm9jZWVkIGFueXdheSEiCittc2dzdHIgIuegtOaQjeOCkueEoeimluOBl+OBpuOBhOOBvuOBmeOAguOBi+OBvuOCj+OBmuOBq+e2muihjOOBl+OBvuOBmSEiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImluc3RhbGxpbmcgJS4yNTBzIHdvdWxkIGJyZWFrICUuMjUwcywgYW5kXG4iCisiIGRlY29uZmlndXJhdGlvbiBpcyBub3QgcGVybWl0dGVkICgtLWF1dG8tZGVjb25maWd1cmUgbWlnaHQgaGVscCkiCittc2dzdHIgIiIKKyIlLjI1MHMg44Gu44Kk44Oz44K544OI44O844Or44GvICUuMjUwcyDjgpLlo4rjgZnlj6/og73mgKfjgYzjgYLjgorjgIFcbiIKKyIg6Kit5a6a5YmK6Zmk44Gv6Kix44GV44KM44Gm44GE44G+44Gb44KTICgtLWF1dG8tZGVjb25maWd1cmUg44GM5Yqp44GR44Gr44Gq44KK44G+44GZKSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA4NgorIywgYy1mb3JtYXQKK21zZ2lkICJpbnN0YWxsaW5nICUuMjUwcyB3b3VsZCBicmVhayBleGlzdGluZyBzb2Z0d2FyZSIKK21zZ3N0ciAiJS4yNTBzIOOBruOCpOODs+OCueODiOODvOODq+OBr+aXouWtmOOBruOCveODleODiOOCpuOCp+OCouOCkuWjiuOBmeWPr+iDveaAp+OBjOOBguOCiuOBvuOBmSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTExNgorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiBjb25zaWRlcmluZyByZW1vdmluZyAlcyBpbiBmYXZvdXIgb2YgJXMgLi4uXG4iCittc2dzdHIgImRwa2c6ICUyJHMg44KS6YG45oqe44GZ44KL44Gf44KB44GrICUxJHMg44Gu5YmK6Zmk44KS6ICD44GI44Gm44GE44G+44GZIC4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTIyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGlzIG5vdCBwcm9wZXJseSBpbnN0YWxsZWQgLSBpZ25vcmluZyBhbnkgZGVwZW5kZW5jaWVzIG9uIGl0LlxuIgorbXNnc3RyICIiCisiJXMg44Gv5q2j44GX44GP44Kk44Oz44K544OI44O844Or44GV44KM44Gm44GE44Gq44GE44Gf44KB44CB44GZ44G544Gm44Gu5L6d5a2Y6Zai5L+C44KS54Sh6KaW44GX44G+44GZ44CCXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogbWF5IGhhdmUgdHJvdWJsZSByZW1vdmluZyAlcywgYXMgaXQgcHJvdmlkZXMgJXMgLi4uXG4iCittc2dzdHIgIiIKKyJkcGtnOiAlcyDjga8gJXMg44KS5o+Q5L6b44GZ44KL44Gf44KB44CB5YmK6Zmk44GZ44KL44Go5ZWP6aGM44GM44GC44KL44GL44KC44GX44KM44G+44Gb44KTIC4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTY2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBwYWNrYWdlICVzIHJlcXVpcmVzIHJlaW5zdGFsbGF0aW9uLCBidXQgd2lsbCByZW1vdmUgYW55d2F5IGFzIHlvdSAiCisicmVxdWVzdGVkLlxuIgorbXNnc3RyICIiCisiZHBrZzog44OR44OD44Kx44O844K4ICVzIOOBr+WGjeOCpOODs+OCueODiOODvOODq+OBjOW/heimgeOBp+OBmeOBjOOAgeimgeaxguOBq+W+k+OBhOOBqOOCguOBi+OBj+WJiumZpOOBl+OBviIKKyLjgZnjgIJcbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE2OQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiBwYWNrYWdlICVzIHJlcXVpcmVzIHJlaW5zdGFsbGF0aW9uLCB3aWxsIG5vdCByZW1vdmUuXG4iCittc2dzdHIgImRwa2c6IOODkeODg+OCseODvOOCuCAlcyDjga/lho3jgqTjg7Pjgrnjg4jjg7zjg6vjgYzlv4XopoHjgafjgZnjgILliYrpmaTjgZfjgb7jgZvjgpPjgIJcbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE3OAorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiB5ZXMsIHdpbGwgcmVtb3ZlICVzIGluIGZhdm91ciBvZiAlcy5cbiIKK21zZ3N0ciAiZHBrZzog5ZWP6aGM44GC44KK44G+44Gb44KT44CCJTIkcyDjgpLpgbjmip7jgZnjgovjgZ/jgoHjgasgJTEkcyDjgpLliYrpmaTjgZfjgb7jgZnjgIJcbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE5MAorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mbGljdGluZyBwYWNrYWdlcyAtIG5vdCBpbnN0YWxsaW5nICUuMjUwcyIKK21zZ3N0ciAi44OR44OD44Kx44O844K444Gu56u25ZCIIC0gJS4yNTBzIOOBruOCpOODs+OCueODiOODvOODq+OBr+ihjOOBhOOBvuOBm+OCkyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE5MQorbXNnaWQgImlnbm9yaW5nIGNvbmZsaWN0LCBtYXkgcHJvY2VlZCBhbnl3YXkhIgorbXNnc3RyICLnq7blkIjjgpLnhKHoppbjgZfjgabjgYTjgb7jgZnjgILjgYvjgb7jgo/jgZrntprooYzjgZfjgb7jgZkhIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjM1CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgLS1yZWN1cnNpdmUgbmVlZHMgYXQgbGVhc3Qgb25lIHBhdGggYXJndW1lbnQiCittc2dzdHIgIi0tJXMgLS1yZWN1cnNpdmUg44Gv5byV5pWw44Go44GX44Gm5pyA5L2OIDEg44Gk44Gu44OR44K544GM5b+F6KaB44Gn44GZIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjQ1Cittc2dpZCAiZmluZCBmb3IgZHBrZyAtLXJlY3Vyc2l2ZSIKK21zZ3N0ciAiZHBrZyAtLXJlY3Vyc2l2ZSDjga7jgZ/jgoHjga4gZmluZCIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI2NgorbXNnaWQgImZhaWxlZCB0byBmZG9wZW4gZmluZCdzIHBpcGUiCittc2dzdHIgImZpbmQg44Gu44OR44Kk44OX44GuIGZkb3BlbiDjgavlpLHmlZfjgZfjgb7jgZfjgZ8iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNzIKK21zZ2lkICJlcnJvciByZWFkaW5nIGZpbmQncyBwaXBlIgorbXNnc3RyICJmaW5kIOOBruODkeOCpOODl+OCkuiqreOBv+i+vOOBv+S4reOBq+OCqOODqeODvOOBjOeZuueUn+OBl+OBvuOBl+OBnyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3MworbXNnaWQgImVycm9yIGNsb3NpbmcgZmluZCdzIHBpcGUiCittc2dzdHIgImZpbmQg44Gu44OR44Kk44OX44Gu44Kv44Ot44O844K65Lit44Gr44Ko44Op44O844GM55m655Sf44GX44G+44GX44GfIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjc2CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbmQgZm9yIC0tcmVjdXJzaXZlIHJldHVybmVkIHVuaGFuZGxlZCBlcnJvciAlaSIKK21zZ3N0ciAiLS1yZWN1cnNpdmUg44Gu44Gf44KB44GuIGZpbmQg44GM44CB5Yem55CG44Gn44GN44Gq44GE44Ko44Op44O8ICVpIOOCkui/lOOBl+OBvuOBl+OBnyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3OQorbXNnaWQgInNlYXJjaGVkLCBidXQgZm91bmQgbm8gcGFja2FnZXMgKGZpbGVzIG1hdGNoaW5nICouZGViKSIKK21zZ3N0ciAiIgorIuaknOe0ouOBl+OBvuOBl+OBn+OBjOOAgeODkeODg+OCseODvOOCuCAoKi5kZWIg44Gr44Oe44OD44OB44GZ44KL44OV44Kh44Kk44OrKSDjgYzopovjgaTjgYvjgorjgb7jgZvjgpPjgafjgZciCisi44GfIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjkwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYXQgbGVhc3Qgb25lIHBhY2thZ2UgYXJjaGl2ZSBmaWxlIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIOOBr+W8leaVsOOBqOOBl+OBpuacgOS9jiAxIOOBpOOBruODkeODg+OCseODvOOCuOOCouODvOOCq+OCpOODluODleOCoeOCpOODq+OBjOW/heimgeOBp+OBmSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTMyNSBzcmMvZGl2ZXJ0Y21kLmM6Nzggc3JjL2RpdmVydGNtZC5jOjExOAorIzogc3JjL2VucXVpcnkuYzoxNjYgc3JjL2VucXVpcnkuYzoyNzkgc3JjL2VucXVpcnkuYzo0NDkgc3JjL2VucXVpcnkuYzo0NTEKKyM6IHNyYy9lbnF1aXJ5LmM6NDY0IHNyYy9tYWluLmM6NjYgc3JjL21haW4uYzoxNjMgc3JjL21haW4uYzozMTQKKyM6IHNyYy9tYWluLmM6NDkzIHNyYy9wYWNrYWdlcy5jOjI1NCBzcmMvcXVlcnljbWQuYzoyNTIgc3JjL3F1ZXJ5Y21kLmM6MzU1CisjOiBzcmMvcXVlcnljbWQuYzozOTYgc3JjL3F1ZXJ5Y21kLmM6NDA0IHNyYy9xdWVyeWNtZC5jOjQ0OCBzcmMvcXVlcnljbWQuYzo1MTcKKyM6IHNyYy9xdWVyeWNtZC5jOjYwNiBzcmMvcXVlcnljbWQuYzo2NTAgc3JjL3NlbGVjdC5jOjc5IHNyYy9zdGF0Y21kLmM6NjgKKyM6IHNyYy9zdGF0Y21kLmM6OTggc3JjL3RyaWdjbWQuYzo1OCBzcmMvdHJpZ2NtZC5jOjkwIGRwa2ctZGViL2J1aWxkLmM6NDQxCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjE3IGRwa2ctZGViL2V4dHJhY3QuYzoyNTAgZHBrZy1kZWIvaW5mby5jOjIwMworIzogZHBrZy1kZWIvaW5mby5jOjI2NSBkcGtnLWRlYi9tYWluLmM6NjAgZHBrZy1kZWIvbWFpbi5jOjEyNgorIzogZHBrZy1zcGxpdC9pbmZvLmM6MjU3IGRwa2ctc3BsaXQvbWFpbi5jOjU0IGRwa2ctc3BsaXQvbWFpbi5jOjk4CisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTQ0IGRwa2ctc3BsaXQvcXVldWUuYzoyODAKK21zZ2lkICI8c3RhbmRhcmQgb3V0cHV0PiIKK21zZ3N0ciAiPOaomea6luWFpeWKmz4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzMjYgc3JjL3BhY2thZ2VzLmM6MjU1IHNyYy9xdWVyeWNtZC5jOjI1MworIzogc3JjL3F1ZXJ5Y21kLmM6MzUzIHNyYy9xdWVyeWNtZC5jOjQ1NCBzcmMvcXVlcnljbWQuYzo1MTggc3JjL3NlbGVjdC5jOjgwCisjOiBkcGtnLXNwbGl0L21haW4uYzoxNjkgZHBrZy1zcGxpdC9xdWV1ZS5jOjIxOAorbXNnaWQgIjxzdGFuZGFyZCBlcnJvcj4iCittc2dzdHIgIjzmqJnmupblh7rlips+IgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzY3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJTZWxlY3RpbmcgcHJldmlvdXNseSBkZXNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dpZCAiU2VsZWN0aW5nIHByZXZpb3VzbHkgdW5zZWxlY3RlZCBwYWNrYWdlICVzLlxuIgorbXNnc3RyICLmnKrpgbjmip7jg5Hjg4PjgrHjg7zjgrggJXMg44KS6YG45oqe44GX44Gm44GE44G+44GZ44CCXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzNzEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIlNraXBwaW5nIGRlc2VsZWN0ZWQgcGFja2FnZSAlcy5cbiIKK21zZ2lkICJTa2lwcGluZyB1bnNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dzdHIgIuacqumBuOaKnuODkeODg+OCseODvOOCuCAlcyDjgpLjgrnjgq3jg4Pjg5fjgZfjgb7jgZnjgIJcbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTM4NworIywgYy1mb3JtYXQKK21zZ2lkICJWZXJzaW9uICUuMjUwcyBvZiAlLjI1MHMgYWxyZWFkeSBpbnN0YWxsZWQsIHNraXBwaW5nLlxuIgorbXNnc3RyICIiCisiJTIkLjI1MHMg44Gu44OQ44O844K444On44OzICUxJC4yNTBzIOOBjOOBmeOBp+OBq+OCpOODs+OCueODiOODvOODq+OBleOCjOOBpuOBhOOBvuOBmeOAguOCueOCreODg+ODl+OBl+OBviIKKyLjgZnjgIJcbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTM5NworIywgYy1mb3JtYXQKK21zZ2lkICJkb3duZ3JhZGluZyAlLjI1MHMgZnJvbSAlLjI1MHMgdG8gJS4yNTBzLiIKK21zZ3N0ciAiJS4yNTBzIOOCkiAlLjI1MHMg44GL44KJICUuMjUwcyDjgavjg4Djgqbjg7PjgrDjg6zjg7zjg4njgZfjgabjgYTjgb7jgZnjgIIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjE0MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiV2lsbCBub3QgZG93bmdyYWRlICUuMjUwcyBmcm9tIHZlcnNpb24gJS4yNTBzIHRvICUuMjUwcywgc2tpcHBpbmcuXG4iCittc2dzdHIgIiIKKyIlLjI1MHMg44Gu44OQ44O844K444On44OzICUuMjUwcyDjgYvjgokgJS4yNTBzIOOBuOOBruODgOOCpuODs+OCsOODrOODvOODieOBr+ihjOOBhOOBvuOBm+OCk+OAguOCueOCreODgyIKKyLjg5fjgZfjgb7jgZnjgIJcbiIKKworIzogc3JjL2NsZWFudXAuYzo4NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidW5hYmxlIHRvIHJlbW92ZSBuZXdseS1pbnN0YWxsZWQgdmVyc2lvbiBvZiBgJS4yNTBzJyB0byBhbGxvdyByZWluc3RhbGxhdGlvbiAiCisib2YgYmFja3VwIGNvcHkiCittc2dzdHIgIiIKKyLjg5Djg4Pjgq/jgqLjg4Pjg5fnlKjjgrPjg5Tjg7zjga7lho3jgqTjg7Pjgrnjg4jjg7zjg6vjgpLoqLHlj6/jgZnjgovjgZ/jgoHjgavjgIFgJS4yNTBzJyDjga7mlrDjgZ/jgavjgqTjg7PjgrkiCisi44OI44O844Or44GV44KM44Gf44OQ44O844K444On44Oz44KS5YmK6Zmk44Gn44GN44G+44Gb44KTIgorCisjOiBzcmMvY2xlYW51cC5jOjkzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZXN0b3JlIGJhY2t1cCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICLjg5Djg7zjgrjjg6fjg7MgYCUuMjUwcycg44Gu44OQ44OD44Kv44Ki44OD44OX44KS5b6p5YWD44Gn44GN44G+44Gb44KTIgorCisjOiBzcmMvY2xlYW51cC5jOjk3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgYmFja3VwIGNvcHkgb2YgJyUuMjUwcyciCittc2dzdHIgIiclLjI1MHMnIOOBruODkOODg+OCr+OCouODg+ODl+OCs+ODlOODvOOCkuWJiumZpOOBp+OBjeOBvuOBm+OCkyIKKworIzogc3JjL2NsZWFudXAuYzoxMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBuZXdseS1pbnN0YWxsZWQgdmVyc2lvbiBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiYCUuMjUwcycg44Gu5paw44Gf44Gr44Kk44Oz44K544OI44O844Or44GX44Gf44OQ44O844K444On44Oz44KS5YmK6Zmk44Gn44GN44G+44Gb44KTIgorCisjOiBzcmMvY2xlYW51cC5jOjEwOAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIG5ld2x5LWV4dHJhY3RlZCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICJgJS4yNTBzJyDjga7mlrDjgZ/jgavlsZXplovjgZfjgZ/jg5Djg7zjgrjjg6fjg7PjgpLliYrpmaTjgafjgY3jgb7jgZvjgpMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgbmV3IGRpc3RyaWJ1dGVkIGNvbmZmaWxlICclLjI1MHMnIgorbXNnc3RyICLmlrDopo/phY3luIPoqK3lrprjg5XjgqHjgqTjg6sgJyUuMjUwcycg44Gu54q25oWL44KS5Y+W5b6X44Gn44GN44G+44Gb44KTIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGN1cnJlbnQgaW5zdGFsbGVkIGNvbmZmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLnj77lnKjjgqTjg7Pjgrnjg4jjg7zjg6vjgZXjgozjgabjgYTjgovoqK3lrprjg5XjgqHjgqTjg6sgYCUuMjUwcycg44Gu54q25oWL44KS5Y+W5b6X44Gn44GN44G+44Gb44KTIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTI2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJDb25maWd1cmF0aW9uIGZpbGUgYCVzJywgZG9lcyBub3QgZXhpc3Qgb24gc3lzdGVtLlxuIgorIkluc3RhbGxpbmcgbmV3IGNvbmZpZyBmaWxlIGFzIHlvdSByZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiIKKyJcbiIKKyLoqK3lrprjg5XjgqHjgqTjg6sgYCVzJyDjgYzjgrfjgrnjg4bjg6DjgavlrZjlnKjjgZfjgb7jgZvjgpPjgIJcbiIKKyLjgYLjgarjgZ/jga7opoHmsYLjgavlvpPjgaPjgabjgIHmlrDjgZfjgYToqK3lrprjg5XjgqHjgqTjg6vjgpLjgqTjg7Pjgrnjg4jjg7zjg6vjgZfjgabjgYTjgb7jgZnjgIJcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE2OAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIHJlbW92ZSBvbGQgYmFja3VwICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiJXM6IOWPpOOBhOODkOODg+OCr+OCouODg+ODlyAnJS4yNTBzJyDjga7liYrpmaTjgavlpLHmlZfjgZfjgb7jgZfjgZ86ICVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTc2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVuYW1lICclLjI1MHMnIHRvICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiJXM6ICclLjI1MHMnIOOBi+OCiSAnJS4yNTBzJyDjgavlkI3liY3jgpLlpInmm7TjgafjgY3jgb7jgZvjgpPjgafjgZfjgZ86ICVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTgyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiJXM6ICclLjI1MHMnIOOBruWJiumZpOOBq+WkseaVl+OBl+OBvuOBl+OBnzogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxODgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW1vdmUgb2xkIGRpc3RyaWJ1dGVkIHZlcnNpb24gJyUuMjUwcyc6ICVzIgorbXNnc3RyICIlczog5pen6YWN5biD44OQ44O844K444On44OzICclLjI1MHMnIOOBruWJiumZpOOBq+WkseaVl+OBl+OBvuOBl+OBnzogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW1vdmUgJyUuMjUwcycgKGJlZm9yZSBvdmVyd3JpdGUpOiAlcyIKK21zZ3N0ciAiJXM6ICclLjI1MHMnIOOBruWJiumZpCAo5LiK5pu444GN5YmNKSDjgavlpLHmlZfjgZfjgb7jgZfjgZ86ICVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTk2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gbGluayAnJS4yNTBzJyB0byAnJS4yNTBzJzogJXMiCittc2dzdHIgIiVzOiAnJS4yNTBzJyDjgYvjgokgJyUuMjUwcycg44G444Gu44Oq44Oz44Kv44Gr5aSx5pWX44GX44G+44GX44GfOiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjIwMAorIywgYy1mb3JtYXQKK21zZ2lkICJJbnN0YWxsaW5nIG5ldyB2ZXJzaW9uIG9mIGNvbmZpZyBmaWxlICVzIC4uLlxuIgorbXNnc3RyICLoqK3lrprjg5XjgqHjgqTjg6sgJXMg44KS5paw6KaP44Gr44Kk44Oz44K544OI44O844Or44GX44Gm44GE44G+44GZIC4uLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjA2IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo1NDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgYCUuMjUwcycgYXMgYCUuMjUwcyciCittc2dzdHIgImAlLjI1MHMnIOOCkiBgJS4yNTBzJyDjgajjgZfjgabjgqTjg7Pjgrnjg4jjg7zjg6vjgafjgY3jgb7jgZvjgpMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoyNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gcGFja2FnZSBuYW1lZCBgJXMnIGlzIGluc3RhbGxlZCwgY2Fubm90IGNvbmZpZ3VyZSIKK21zZ3N0ciAi44OR44OD44Kx44O844K4IGAlcycg44Gv44Kk44Oz44K544OI44O844Or44GV44KM44Gm44GE44Gq44GE44Gu44Gn44CB6Kit5a6a44Gn44GN44G+44Gb44KTIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjYwCisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgJS4yNTBzIGlzIGFscmVhZHkgaW5zdGFsbGVkIGFuZCBjb25maWd1cmVkIgorbXNnc3RyICLjg5Hjg4PjgrHjg7zjgrggJS4yNTBzIOOBr+OBmeOBp+OBq+OCpOODs+OCueODiOODvOODq+OBiuOCiOOBs+ioreWumuOBleOCjOOBpuOBhOOBvuOBmSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI2MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisicGFja2FnZSAlLjI1MHMgaXMgbm90IHJlYWR5IGZvciBjb25maWd1cmF0aW9uXG4iCisiIGNhbm5vdCBjb25maWd1cmUgKGN1cnJlbnQgc3RhdHVzIGAlLjI1MHMnKSIKK21zZ3N0ciAiIgorIuODkeODg+OCseODvOOCuCAlLjI1MHMg44Gv6Kit5a6a44Gu5rqW5YKZ44GM44Gn44GN44Gm44GE44G+44Gb44KT44CCXG4iCisiIOioreWumuOBp+OBjeOBvuOBm+OCkyAo54++5Zyo44Gu44K544OG44O844K/44K5IGAlLjI1MHMnKSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI5NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogZGVwZW5kZW5jeSBwcm9ibGVtcyBwcmV2ZW50IGNvbmZpZ3VyYXRpb24gb2YgJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiDkvp3lrZjplqLkv4Ljga7llY/poYzjgavjgojjgoogJXMg44Gu6Kit5a6a44GM44Gn44GN44G+44Gb44KTOlxuIgorIiVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6Mjk3Cittc2dpZCAiZGVwZW5kZW5jeSBwcm9ibGVtcyAtIGxlYXZpbmcgdW5jb25maWd1cmVkIgorbXNnc3RyICLkvp3lrZjplqLkv4Ljga7llY/poYwgLSDoqK3lrprjgpLopovpgIHjgorjgb7jgZkiCisKKyM6IHNyYy9jb25maWd1cmUuYzozMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6ICVzOiBkZXBlbmRlbmN5IHByb2JsZW1zLCBidXQgY29uZmlndXJpbmcgYW55d2F5IGFzIHlvdSByZXF1ZXN0ZWQ6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiAlczog5L6d5a2Y6Zai5L+C44Gu5ZWP6aGM44CB44GX44GL44GX6KaB5rGC44Gp44GK44KK6Kit5a6a44KS6KGM44GE44G+44GZOlxuIgorIiVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MzA5Cittc2dpZCAiIgorIlBhY2thZ2UgaXMgaW4gYSB2ZXJ5IGJhZCBpbmNvbnNpc3RlbnQgc3RhdGUgLSB5b3Ugc2hvdWxkXG4iCisiIHJlaW5zdGFsbCBpdCBiZWZvcmUgYXR0ZW1wdGluZyBjb25maWd1cmF0aW9uLiIKK21zZ3N0ciAiIgorIuODkeODg+OCseODvOOCuOOBjOmdnuW4uOOBq+efm+ebvuOBl+OBn+eKtuaFi+OBq+mZpeOCiuOBvuOBl+OBn+OAguioreWumuOCkuippuOBv+OCi1xuIgorIuWJjeOBq+WGjeOCpOODs+OCueODiOODvOODq+OBmeOBueOBjeOBp+OBmeOAgiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjMxMgorIywgYy1mb3JtYXQKK21zZ2lkICJTZXR0aW5nIHVwICVzICglcykgLi4uXG4iCittc2dzdHIgIiVzICglcykg44KS6Kit5a6a44GX44Gm44GE44G+44GZIC4uLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6Mzk2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogdW5hYmxlIHRvIHN0YXQgY29uZmlnIGZpbGUgJyVzJ1xuIgorIiAoPSAnJXMnKTogJXMiCittc2dzdHIgIiIKKyIlczog6Kit5a6a44OV44Kh44Kk44OrICclcycg44Gu54q25oWL44KS5Y+W5b6X44Gn44GN44G+44Gb44KTXG4iCisiICg9IGAlcycpOiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQwOQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IGNvbmZpZyBmaWxlICclcycgaXMgYSBjaXJjdWxhciBsaW5rXG4iCisiICg9ICclcycpIgorbXNnc3RyICIiCisiJXM6IOioreWumuODleOCoeOCpOODqyAnJXMnIOOBjOiHquWIhuiHqui6q+OBuOOBruODquODs+OCr+OBq+OBquOBo+OBpuOBhOOBvuOBmVxuIgorIiAoPSAnJXMnKSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQxOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IHVuYWJsZSB0byByZWFkbGluayBjb25mZmlsZSAnJXMnXG4iCisiICg9ICclcycpOiAlcyIKK21zZ3N0ciAiIgorIiVzOiDoqK3lrprjg5XjgqHjgqTjg6sgJyVzJyDjga7jg6rjg7Pjgq/jga7oqq3jgb/lj5bjgorjgYzjgafjgY3jgb7jgZvjgpNcbiIKKyIgKD0gYCVzJyk6ICVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDQ0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogY29uZmZpbGUgJyUuMjUwcycgcmVzb2x2ZXMgdG8gZGVnZW5lcmF0ZSBmaWxlbmFtZVxuIgorIiAoJyVzJyBpcyBhIHN5bWxpbmsgdG8gJyVzJykiCittc2dzdHIgIiIKKyIlczog6Kit5a6a44OV44Kh44Kk44OrICclLjI1MHMnIOOBr+ODleOCoeOCpOODq+WQjeOBrumHjeikh+OCkuino+axuuOBl+OBvuOBmVxuIgorIiAoJyVzJyDjga8gJyVzJyDjgbjjga7jgrfjg7Pjg5zjg6rjg4Pjgq/jg6rjg7Pjgq/jgafjgZkpIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDYwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBjb25mZmlsZSAnJS4yNTBzJyBpcyBub3QgYSBwbGFpbiBmaWxlIG9yIHN5bWxpbmsgKD0gJyVzJykiCittc2dzdHIgIiIKKyIlczog6Kit5a6a44OV44Kh44Kk44OrICclLjI1MHMnIOOBjOODl+ODrOODvOODs+ODleOCoeOCpOODq+OBp+OCguOCt+ODs+ODnOODquODg+OCr+ODquODs+OCryAoPSAnJXMnKSAiCisi44Gn44KC44GC44KK44G+44Gb44KTIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDg2Cittc2dpZCAibWQ1aGFzaCIKK21zZ3N0ciAibWQ1IOODj+ODg+OCt+ODpSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQ5MgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogdW5hYmxlIHRvIG9wZW4gY29uZmZpbGUgJXMgZm9yIGhhc2g6ICVzIgorbXNnc3RyICIlczog44OP44OD44K344Ol55So44Gr6Kit5a6a44OV44Kh44Kk44OrICVzIOOCkuOCquODvOODl+ODs+OBp+OBjeOBvuOBm+OCkzogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzo1MjIgc3JjL2NvbmZpZ3VyZS5jOjUyNgorbXNnaWQgImNvbmZmaWxlIGRpZmZlcmVuY2UgdmlzdWFsaXplciIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NTQzCittc2dpZCAiVHlwZSBgZXhpdCcgd2hlbiB5b3UncmUgZG9uZS5cbiIKK21zZ3N0ciAi57WC5LqG44GX44Gf44KJIGBleGl0JyDjgajlhaXlipvjgZfjgabjgY/jgaDjgZXjgYTjgIJcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjU1MiBzcmMvY29uZmlndXJlLmM6NTU2Cittc2dpZCAiY29uZmZpbGUgc2hlbGwiCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYwMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiQ29uZmlndXJhdGlvbiBmaWxlIGAlcyciCittc2dzdHIgIiIKKyJcbiIKKyLoqK3lrprjg5XjgqHjgqTjg6sgYCVzJyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYwNAorIywgYy1mb3JtYXQKK21zZ2lkICIgKGFjdHVhbGx5IGAlcycpIgorbXNnc3RyICIgKOWun+mam+OBryBgJXMnKSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYwOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiID09PiBGaWxlIG9uIHN5c3RlbSBjcmVhdGVkIGJ5IHlvdSBvciBieSBhIHNjcmlwdC5cbiIKKyIgPT0+IEZpbGUgYWxzbyBpbiBwYWNrYWdlIHByb3ZpZGVkIGJ5IHBhY2thZ2UgbWFpbnRhaW5lci5cbiIKK21zZ3N0ciAiIgorIlxuIgorIiA9PT4g44GC44Gq44Gf44GL44K544Kv44Oq44OX44OI44Gr44KI44Gj44Gm6Kit5a6a44OV44Kh44Kk44Or44GM5L2c5oiQ44GV44KM44Gm44GE44G+44GZ44CCXG4iCisiID09PiDjg5Hjg4PjgrHjg7zjgrjjg6Hjg7Pjg4bjg4rjgYzmj5DkvpvjgZnjgovjg5Hjg4PjgrHjg7zjgrjjgavjgoLjgZPjga7jg5XjgqHjgqTjg6vjgYzlrZjlnKjjgZfjgb7jgZnjgIJcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYxMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiICAgICBOb3QgbW9kaWZpZWQgc2luY2UgaW5zdGFsbGF0aW9uLlxuIgorbXNnc3RyICIiCisiXG4iCisiICAgICDjgZPjgozjga/jgqTjg7Pjgrnjg4jjg7zjg6vjgZXjgozjgabjgYvjgonlpInmm7TjgZXjgozjgabjgYTjgb7jgZvjgpPjgIJcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYxNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiID09PiBNb2RpZmllZCAoYnkgeW91IG9yIGJ5IGEgc2NyaXB0KSBzaW5jZSBpbnN0YWxsYXRpb24uXG4iCittc2dzdHIgIiIKKyJcbiIKKyIgPT0+IOOBk+OCjOOBr+OCpOODs+OCueODiOODvOODq+OBl+OBpuOBi+OCiSAo44GC44Gq44Gf44GL44K544Kv44Oq44OX44OI44Gr44KI44Gj44GmKSDlpInmm7TjgZXjgozjgabjgYTjgb4iCisi44GZ44CCXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiA9PT4gRGVsZXRlZCAoYnkgeW91IG9yIGJ5IGEgc2NyaXB0KSBzaW5jZSBpbnN0YWxsYXRpb24uXG4iCittc2dzdHIgIiIKKyJcbiIKKyIgPT0+IOOBk+OCjOOBr+OCpOODs+OCueODiOODvOODq+OBl+OBpuOBi+OCiSAo44GC44Gq44Gf44GL44K544Kv44Oq44OX44OI44Gr44KI44Gj44GmKSDliYrpmaTjgZXjgozjgabjgYTjgb4iCisi44GZ44CCXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBQYWNrYWdlIGRpc3RyaWJ1dG9yIGhhcyBzaGlwcGVkIGFuIHVwZGF0ZWQgdmVyc2lvbi5cbiIKK21zZ3N0ciAiID09PiDjg5Hjg4PjgrHjg7zjgrjphY3luIPlhYPjgYzmm7TmlrDniYjjgpLmj5DkvpvjgZfjgabjgYTjgb7jgZnjgIJcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYyMAorIywgYy1mb3JtYXQKK21zZ2lkICIgICAgIFZlcnNpb24gaW4gcGFja2FnZSBpcyB0aGUgc2FtZSBhcyBhdCBsYXN0IGluc3RhbGxhdGlvbi5cbiIKK21zZ3N0ciAiICAgICDjg5Hjg4PjgrHjg7zjgrjkuK3jga7jg5Djg7zjgrjjg6fjg7PjgYzliY3lm57jga7jgqTjg7Pjgrnjg4jjg7zjg6vmmYLjgajlkIzjgZjjgafjgZnjgIJcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYyOAorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IFVzaW5nIG5ldyBmaWxlIGFzIHlvdSByZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiA9PT4g6KaB5rGC44GX44Gf44KI44GG44Gr5paw6KaP44OV44Kh44Kk44Or44KS5L2/44GG44CCXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBVc2luZyBjdXJyZW50IG9sZCBmaWxlIGFzIHlvdSByZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiA9PT4g6KaB5rGC44GX44Gf44KI44GG44Gr5Y+k44GE44OV44Kh44Kk44Or44KS5L2/44GG44CCXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBLZWVwaW5nIG9sZCBjb25maWcgZmlsZSBhcyBkZWZhdWx0LlxuIgorbXNnc3RyICIgPT0+IOODh+ODleOCqeODq+ODiOOBp+WPpOOBhOioreWumuODleOCoeOCpOODq+OCkuS/neaMgeOBmeOCi+OAglxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gVXNpbmcgbmV3IGNvbmZpZyBmaWxlIGFzIGRlZmF1bHQuXG4iCittc2dzdHIgIiA9PT4g44OH44OV44Kp44Or44OI44Gn5paw44GX44GE6Kit5a6a44OV44Kh44Kk44Or44KS5L2/44GG44CCXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiAgIFdoYXQgd291bGQgeW91IGxpa2UgdG8gZG8gYWJvdXQgaXQgPyAgWW91ciBvcHRpb25zIGFyZTpcbiIKKyIgICAgWSBvciBJICA6IGluc3RhbGwgdGhlIHBhY2thZ2UgbWFpbnRhaW5lcidzIHZlcnNpb25cbiIKKyIgICAgTiBvciBPICA6IGtlZXAgeW91ciBjdXJyZW50bHktaW5zdGFsbGVkIHZlcnNpb25cbiIKKyIgICAgICBEICAgICA6IHNob3cgdGhlIGRpZmZlcmVuY2VzIGJldHdlZW4gdGhlIHZlcnNpb25zXG4iCisiICAgICAgWiAgICAgOiBzdGFydCBhIHNoZWxsIHRvIGV4YW1pbmUgdGhlIHNpdHVhdGlvblxuIgorbXNnc3RyICIiCisiICAg44Gp44GG44GX44G+44GZ44GLPyDku6XkuIvjga7pgbjmip7ogqLjgYzjgYLjgorjgb7jgZk6XG4iCisiICAgIFkg44GLIEkgIDog44OR44OD44Kx44O844K444Oh44Oz44OG44OK44Gu44OQ44O844K444On44Oz44KS44Kk44Oz44K544OI44O844Or44GZ44KLXG4iCisiICAgIE4g44GLIE8gIDog54++5Zyo44Kk44Oz44K544OI44O844Or44GV44KM44Gm44GE44KL6Ieq5YiG44Gu44OQ44O844K444On44Oz44KS5q6L44GZXG4iCisiICAgICAgRCAgICAgOiDkuKHjg5Djg7zjgrjjg6fjg7Pjga7lt67nlbDjgpLooajnpLrjgZnjgotcbiIKKyIgICAgICBaICAgICA6IOeKtuazgeOCkuiqv+afu+OBmeOCi+OBn+OCgeOBq+OCt+OCp+ODq+OCkumWi+Wni+OBmeOCi1xuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjU5CisjLCBjLWZvcm1hdAorbXNnaWQgIiBUaGUgZGVmYXVsdCBhY3Rpb24gaXMgdG8ga2VlcCB5b3VyIGN1cnJlbnQgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIOODh+ODleOCqeODq+ODiOOBp+OBr+ePvuWcqOS9v+OBo+OBpuOBhOOCi+iHquWIhuOBruODkOODvOOCuOODp+ODs+OCkuaui+OBl+OBvuOBmeOAglxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjYxCisjLCBjLWZvcm1hdAorbXNnaWQgIiBUaGUgZGVmYXVsdCBhY3Rpb24gaXMgdG8gaW5zdGFsbCB0aGUgbmV3IHZlcnNpb24uXG4iCittc2dzdHIgIiDjg4fjg5Xjgqnjg6vjg4jjgafjga/mlrDjgZfjgYTjg5Djg7zjgrjjg6fjg7PjgpLjgqTjg7Pjgrnjg4jjg7zjg6vjgZfjgb7jgZnjgIJcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY2NgorbXNnaWQgIltkZWZhdWx0PU5dIgorbXNnc3RyICJb44OH44OV44Kp44Or44OIPU5dIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjY3Cittc2dpZCAiW2RlZmF1bHQ9WV0iCittc2dzdHIgIlvjg4fjg5Xjgqnjg6vjg4g9WV0iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NjgKK21zZ2lkICJbbm8gZGVmYXVsdF0iCittc2dzdHIgIlvjg4fjg5Xjgqnjg6vjg4jjgarjgZddIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjcxCittc2dpZCAiZXJyb3Igd3JpdGluZyB0byBzdGRlcnIsIGRpc2NvdmVyZWQgYmVmb3JlIGNvbmZmaWxlIHByb21wdCIKK21zZ3N0ciAiIgorIuaomea6luOCqOODqeODvOWHuuWKm+OBuOOBruabuOOBjei+vOOBv+S4reOBq+OCqOODqeODvOOBjOeZuueUn+OBl+OBvuOBl+OBnyAoY29uZmZpbGUg44OX44Ot44Oz44OX44OI5YmN44Gn5qScIgorIuWHuinjgIIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2ODAKK21zZ2lkICJyZWFkIGVycm9yIG9uIHN0ZGluIGF0IGNvbmZmaWxlIHByb21wdCIKK21zZ3N0ciAiY29uZmZpbGUg44OX44Ot44Oz44OX44OI44Gn44Gu5qiZ5rqW5YWl5Yqb5LiK44Gu6Kqt44G/5Y+W44KK44Ko44Op44O844Gn44GZIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjgxCittc2dpZCAiRU9GIG9uIHN0ZGluIGF0IGNvbmZmaWxlIHByb21wdCIKK21zZ3N0ciAiY29uZmZpbGUg44OX44Ot44Oz44OX44OI44Gn5qiZ5rqW5YWl5Yqb5LiK44GuIEVPRiDjgafjgZkiCisKKyM6IHNyYy9kZXBjb24uYzoxNzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgZGVwZW5kcyBvbiAlcyIKK21zZ3N0ciAiJXMg44GvICVzIOOBq+S+neWtmCAoZGVwZW5kcykg44GX44G+44GZIgorCisjOiBzcmMvZGVwY29uLmM6MTc4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHByZS1kZXBlbmRzIG9uICVzIgorbXNnc3RyICIlcyDjga8gJXMg44Gr5YWI6KGM5L6d5a2YIChwcmUtZGVwZW5kcykg44GX44G+44GZIgorCisjOiBzcmMvZGVwY29uLmM6MTgxCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHJlY29tbWVuZHMgJXMiCittc2dzdHIgIiVzIOOBryAlcyDjgpLmjqjlpaggKHJlY29tbWVuZHMpIOOBl+OBvuOBmSIKKworIzogc3JjL2RlcGNvbi5jOjE4NAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBzdWdnZXN0cyAlcyIKK21zZ3N0ciAiJXMg44GvICVzIOOCkuaPkOahiCAoc3VnZ2VzdHMpIOOBl+OBvuOBmSIKKworIzogc3JjL2RlcGNvbi5jOjE4NworIywgYy1mb3JtYXQKK21zZ2lkICIlcyBicmVha3MgJXMiCittc2dzdHIgIiVzIOOBryAlcyDjgpLlo4rjgZfjgb7jgZkiCisKKyM6IHNyYy9kZXBjb24uYzoxOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgY29uZmxpY3RzIHdpdGggJXMiCittc2dzdHIgIiVzIOOBryAlcyDjgajnq7blkIggKGNvbmZsaWN0cykg44GX44G+44GZIgorCisjOiBzcmMvZGVwY29uLmM6MTkzCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGVuaGFuY2VzICVzIgorbXNnc3RyICIlcyDjga8gJXMg44KS5by35YyWIChlbmhhbmNlcykg44GX44G+44GZIgorCisjOiBzcmMvZGVwY29uLmM6Mjk2CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHRvIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIOOBr+WJiumZpOOBleOCjOOCiOOBhuOBqOOBl+OBpuOBhOOBvuOBmeOAglxuIgorCisjOiBzcmMvZGVwY29uLmM6Mjk5CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHRvIGJlIGRlY29uZmlndXJlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMg44Gv6Kit5a6a44GM5raI44GV44KM44KI44GG44Go44GX44Gm44GE44G+44GZ44CCXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdG8gYmUgaW5zdGFsbGVkLCBidXQgaXMgdmVyc2lvbiAlLjI1MHMuXG4iCittc2dzdHIgIiIKKyIgICUuMjUwcyDjgYzjgqTjg7Pjgrnjg4jjg7zjg6vjgZXjgozjgojjgYbjgajjgZfjgabjgYTjgb7jgZnjgYzjgIHjg5Djg7zjgrjjg6fjg7PjgYwgJS4yNTBzIOOBp+OBmeOAglxuIgorCisjOiBzcmMvZGVwY29uLmM6MzE0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIGluc3RhbGxlZCwgYnV0IGlzIHZlcnNpb24gJS4yNTBzLlxuIgorbXNnc3RyICIgICUuMjUwcyDjgYzjgqTjg7Pjgrnjg4jjg7zjg6vjgZXjgozjgabjgYTjgb7jgZnjgYzjgIHjg5Djg7zjgrjjg6fjg7PjgYwgJS4yNTBzIOOBp+OBmeOAglxuIgorCisjOiBzcmMvZGVwY29uLmM6MzMzCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHVucGFja2VkLCBidXQgaGFzIG5ldmVyIGJlZW4gY29uZmlndXJlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMg44Gv5bGV6ZaL44GV44KM44Gm44GE44G+44GZ44GM44CB6Kit5a6a44GV44KM44Gm44GE44G+44Gb44KT44CCXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdW5wYWNrZWQsIGJ1dCBpcyB2ZXJzaW9uICUuMjUwcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMg44Gv5bGV6ZaL44GV44KM44Gm44GE44G+44GZ44GM44CB44OQ44O844K444On44Oz44GMICUuMjUwcyDjgafjgZnjgIJcbiIKKworIzogc3JjL2RlcGNvbi5jOjM0MworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBsYXRlc3QgY29uZmlndXJlZCB2ZXJzaW9uIGlzICUuMjUwcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMg44Gu5pyA5paw6Kit5a6a5riI44G/44OQ44O844K444On44Oz44GvICUuMjUwcyDjgafjgZnjgIJcbiIKKworIzogc3JjL2RlcGNvbi5jOjM1MworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyAlcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMg44GvICVzIOOBp+OBmeOAglxuIgorCisjOiBzcmMvZGVwY29uLmM6Mzg4CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBidXQgaXMgdG8gYmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMg44GvICUuMjUwcyDjgpLmj5DkvpvjgZfjgabjgYTjgb7jgZnjgYzjgIHliYrpmaTjgZXjgozjgojjgYbjgajjgZfjgabjgYTjgb7jgZnjgIJcbiIKKworIzogc3JjL2RlcGNvbi5jOjM5MgorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYnV0IGlzIHRvIGJlIGRlY29uZmlndXJlZC5cbiIKK21zZ3N0ciAiIgorIiAgJS4yNTBzIOOBryAlLjI1MHMg44KS5o+Q5L6b44GX44Gm44GE44G+44GZ44GM44CB6Kit5a6a44GM5YmK6Zmk44GV44KM44KI44GG44Go44GX44Gm44GE44G+44GZ44CCXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0MDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGJ1dCBpcyAlcy5cbiIKK21zZ3N0ciAiICAlMiQuMjUwcyDjgpLmj5DkvpsgKHByb3ZpZGVzKSDjgZnjgosgJTEkLjI1MHMg44GMICUzJHMg44Gn44GZ44CCXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0MTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgbm90IGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMg44Gv44Kk44Oz44K544OI44O844Or44GV44KM44Gm44GE44G+44Gb44KT44CCXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgKHZlcnNpb24gJS4yNTBzKSBpcyB0byBiZSBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzICjjg5Djg7zjgrjjg6fjg7MgJS4yNTBzKSDjgYzjgqTjg7Pjgrnjg4jjg7zjg6vjgZXjgozjgojjgYbjgajjgZfjgabjgYTjgb7jgZnjgIJcbiIKKworIzogc3JjL2RlcGNvbi5jOjQ2OAorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyAodmVyc2lvbiAlLjI1MHMpIGlzIHByZXNlbnQgYW5kICVzLlxuIgorbXNnc3RyICIgICUuMjUwcyAo44OQ44O844K444On44OzICUuMjUwcykg44GM5o+Q5L6b44GV44KM44CBJXMg44Gn44GZ44CCXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGFuZCBpcyB0byBiZSBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgJTIkLjI1MHMg44KS5o+Q5L6b44GZ44KLICUxJC4yNTBzIOOBjOOCpOODs+OCueODiOODvOODq+OBleOCjOOCiOOBhuOBqOOBl+OBpuOBhOOBvuOBmeOAglxuIgorCisjOiBzcmMvZGVwY29uLmM6NTM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBhbmQgaXMgcHJlc2VudCBhbmQgJXMuXG4iCittc2dzdHIgIiAgJTIkLjI1MHMg44KS5o+Q5L6b44GZ44KLICUxJC4yNTBzIOOBjOaPkOS+m+OBleOCjOOAgSUzJHMg44Gn44GZ44CCXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MAorIywgZnV6enkKKyN8IG1zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IHF1ZXJ5aW5nIHBhY2thZ2VzLiIKK21zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IGRpdmVydGluZyBmaWxlcy4iCittc2dzdHIgIuODkeODg+OCseODvOOCuOeFp+S8muOBq+OBpOOBhOOBpuOBruODmOODq+ODl+OBq+OBr+OAgS0taGVscCDjgpLkvb/nlKjjgZfjgabjgY/jgaDjgZXjgYTjgIIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo2NiBzcmMvc3RhdGNtZC5jOjU3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo4MAorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gJXMgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiRGViaWFuICVzIOODkOODvOOCuOODp+ODsyAlc+OAglxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLlxuIgorIkNvcHlyaWdodCAoQykgMjAxMCBHdWlsbGVtIEpvdmVyLlxuIgorbXNnc3RyICIiCisiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDEwIEd1aWxsZW0gSm92ZXIuXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo3NSBzcmMvbWFpbi5jOjYzIHNyYy9xdWVyeWNtZC5jOjYwMyBzcmMvc3RhdGNtZC5jOjY1CisjOiBzcmMvdHJpZ2NtZC5jOjU1IGRwa2ctZGViL21haW4uYzo1NyBkcGtnLXNwbGl0L21haW4uYzo1MQorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjg5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAyIG9yXG4iCisibGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuXG4iCittc2dzdHIgIiIKKyLjgZPjgozjga/jg5Xjg6rjg7zjgr3jg5Xjg4jjgafjgZk7IOOCs+ODlOODvOadoeS7tuOBq+OBpOOBhOOBpuOBryBHTlUg5LiA6Iis5YWs5pyJ5L2/55So6Kix6Ku+5pu444OQ44O844K444OnIgorIuODsyAyXG4iCisi44KC44GX44GP44Gv44Gd44KM5Lul6ZmN44KS5Y+C54Wn44GX44Gm44GP44Gg44GV44GE44CC44GT44Gu44K944OV44OI44Km44Kn44Ki44Gv54Sh5L+d6Ki844Gn44GZ44CCXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo4NyBzcmMvbWFpbi5jOjgxIHNyYy9xdWVyeWNtZC5jOjYxNSBzcmMvc3RhdGNtZC5jOjc3CisjOiBkcGtnLWRlYi9tYWluLmM6NjkgZHBrZy1zcGxpdC9tYWluLmM6NjMgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjk3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gPGNvbW1hbmQ+XG4iCisiXG4iCittc2dzdHIgIiIKKyLkvb/jgYTmlrk6ICVzIFs844Kq44OX44K344On44OzPiAuLi5dIDzjgrPjg57jg7Pjg4k+XG4iCisiXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo5MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICBbLS1hZGRdIDxmaWxlPiAgICAgICAgICAgYWRkIGEgZGl2ZXJzaW9uLlxuIgorIiAgLS1yZW1vdmUgPGZpbGU+ICAgICAgICAgIHJlbW92ZSB0aGUgZGl2ZXJzaW9uLlxuIgorIiAgLS1saXN0IFs8Z2xvYi1wYXR0ZXJuPl0gIHNob3cgZmlsZSBkaXZlcnNpb25zLlxuIgorIiAgLS1saXN0cGFja2FnZSA8ZmlsZT4gICAgIHNob3cgd2hhdCBwYWNrYWdlIGRpdmVydHMgdGhlIGZpbGUuXG4iCisiICAtLXRydWVuYW1lIDxmaWxlPiAgICAgICAgcmV0dXJuIHRoZSBkaXZlcnRlZCBmaWxlLlxuIgorIlxuIgorbXNnc3RyICIiCisi44Kz44Oe44Oz44OJOlxuIgorIiAgWy0tYWRkXSA844OV44Kh44Kk44OrPiAgICAgICAg6YCA6YG/44KS6L+95Yqg44GZ44KLXG4iCisiICAtLXJlbW92ZSA844OV44Kh44Kk44OrPiAgICAgICDpgIDpgb/jgpLliYrpmaTjgZnjgotcbiIKKyIgIC0tbGlzdCBbPOOCsOODreODluODkeOCv+ODvOODsz5dIOODleOCoeOCpOODq+OBrumAgOmBv+OCkuihqOekuuOBmeOCi1xuIgorIiAgLS1saXN0cGFja2FnZSA844OV44Kh44Kk44OrPiAg44Gp44Gu44OR44OD44Kx44O844K444GM44OV44Kh44Kk44Or44KS6YCA6YG/44GZ44KL44GL44KS6KGo56S644GZ44KLXG4iCisiICAtLXRydWVuYW1lIDzjg5XjgqHjgqTjg6s+ICAgICDpgIDpgb/jgZXjgozjgZ/jg5XjgqHjgqTjg6vjgpLov5TjgZlcbiIKKyJcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjEwMAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tcGFja2FnZSA8cGFja2FnZT4gICAgICBuYW1lIG9mIHRoZSBwYWNrYWdlIHdob3NlIGNvcHkgb2YgPGZpbGU+IHdpbGwgIgorIm5vdFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmUgZGl2ZXJ0ZWQuXG4iCisiICAtLWxvY2FsICAgICAgICAgICAgICAgICAgYWxsIHBhY2thZ2VzJyB2ZXJzaW9ucyBhcmUgZGl2ZXJ0ZWQuXG4iCisiICAtLWRpdmVydCA8ZGl2ZXJ0LXRvPiAgICAgdGhlIG5hbWUgdXNlZCBieSBvdGhlciBwYWNrYWdlcycgdmVyc2lvbnMuXG4iCisiICAtLXJlbmFtZSAgICAgICAgICAgICAgICAgYWN0dWFsbHkgbW92ZSB0aGUgZmlsZSBhc2lkZSAob3IgYmFjaykuXG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgc2V0IHRoZSBkaXJlY3Rvcnkgd2l0aCB0aGUgZGl2ZXJzaW9ucyBmaWxlLlxuIgorIiAgLS10ZXN0ICAgICAgICAgICAgICAgICAgIGRvbid0IGRvIGFueXRoaW5nLCBqdXN0IGRlbW9uc3RyYXRlLlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHF1aWV0IG9wZXJhdGlvbiwgbWluaW1hbCBvdXRwdXQuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorbXNnc3RyICIiCisi44Kq44OX44K344On44OzOlxuIgorIiAgLS1wYWNrYWdlIDzjg5Hjg4PjgrHjg7zjgrg+ICAgICA844OV44Kh44Kk44OrPiDjga7jgrPjg5Tjg7zjgpLpgIDpgb/jgZfjgarjgYTjgoLjga7jgYzjgYLjgotcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIOODkeODg+OCseODvOOCuOWQjVxuIgorIiAgLS1sb2NhbCAgICAgICAgICAgICAgICAgICAg44GZ44G544Gm44Gu44OR44OD44Kx44O844K444Gu44OQ44O844K444On44Oz44GM6YCA6YG/44GV44KM44KLXG4iCisiICAtLWRpdmVydCA86YCA6YG/5YWIPiAgICAgICAgICDjgbvjgYvjga7jg5Hjg4PjgrHjg7zjgrjjga7jg5Djg7zjgrjjg6fjg7Pjgafkvb/jgo/jgozjgovlkI3liY1cbiIKKyIgIC0tcmVuYW1lICAgICAgICAgICAgICAgICAgIOWun+mam+OBq+ODleOCoeOCpOODq+OCkuWIpeOBruWgtOaJgOOBq+enu+WLleOBmeOCiyAo44GC44KL44GE44Gv5oi7IgorIuOBmSlcbiIKKyIgIC0tYWRtaW5kaXIgPOODh+OCo+ODrOOCr+ODiOODqj4gIOmAgOmBv+ODleOCoeOCpOODq+OBruODh+OCo+ODrOOCr+ODiOODquOCkuioreWumlxuIgorIiAgLS10ZXN0ICAgICAgICAgICAgICAgICAgICAg5L2V44KC44Gb44Ga44CB5Y2Y44Gr44OH44Oi44KS6KGM44GGXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgICDpnZnjgYvjgarmk43kvZzjgajjgZfjgabjgIHmnIDlsI/pmZDjga7lh7rlipvjgavjgZnjgotcbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICAgIOOBk+OBruODmOODq+ODl+OCkuihqOekulxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICAg44OQ44O844K444On44Oz55Wq5Y+344KS6KGo56S6XG4iCisiXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIldoZW4gYWRkaW5nLCBkZWZhdWx0IGlzIC0tbG9jYWwgYW5kIC0tZGl2ZXJ0IDxvcmlnaW5hbD4uZGlzdHJpYi5cbiIKKyJXaGVuIHJlbW92aW5nLCAtLXBhY2thZ2Ugb3IgLS1sb2NhbCBhbmQgLS1kaXZlcnQgbXVzdCBtYXRjaCBpZiBzcGVjaWZpZWQuXG4iCisiUGFja2FnZSBwcmVpbnN0L3Bvc3RybSBzY3JpcHRzIHNob3VsZCBhbHdheXMgc3BlY2lmeSAtLXBhY2thZ2UgYW5kIC0tIgorImRpdmVydC5cbiIKK21zZ3N0ciAiIgorIui/veWKoOaZguOBruODh+ODleOCqeODq+ODiOOBryAtLWxvY2FsIOOBqCAtLWRpdmVydCA844Kq44Oq44K444OK44OrPi5kaXN0cmliIOOBp+OBmeOAglxuIgorIuWJiumZpOaZguOBryAtLXBhY2thZ2Ug44G+44Gf44GvIC0tbG9jYWwg44Go44CBLS1kaXZlcnQg44GMICjmjIflrprjgZXjgozjgabjgYTjgovloLTlkIjjga8pIOS4gOiHtCIKKyLjgZfjgabjgYTjgovlv4XopoHjgYzjgYLjgorjgb7jgZnjgIJcbiIKKyLjg5Hjg4PjgrHjg7zjgrjjga4gcHJlaW5zdC9wb3N0cm0g44K544Kv44Oq44OX44OI44GvIC0tcGFja2FnZSDjgaggLS1kaXZlcnQg44KS5bi444Gr5oyH5a6a44GZ44G5IgorIuOBjeOBp+OBmeOAglxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MTY4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNoZWNraW5nICclcyciCittc2dzdHIgIiclcycg44Gu56K66KqN5Lit44Gr44Ko44Op44O844GM55m655Sf44GX44G+44GX44GfIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjAzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJyZW5hbWUgaW52b2x2ZXMgb3ZlcndyaXRpbmcgYCVzJyB3aXRoXG4iCisiICBkaWZmZXJlbnQgZmlsZSBgJXMnLCBub3QgYWxsb3dlZCIKK21zZ3N0ciAiIgorIuWQjeWJjeWkieabtOOBryBgJXMnIOOCkueVsOOBquOCi+ODleOCoeOCpOODqyBgJXMnIOOBp+S4iuabuOOBjeOBmeOCi+OBk+OBqOOCkuS8tOOBhOOBvuOBmeOAglxuIgorIuOBk+OCjOOBr+ioseWPr+OBleOCjOOBpuOBhOOBvuOBm+OCk+OAgiIKKworIzogc3JjL2RpdmVydGNtZC5jOjIyMyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTM3MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHdyaXRlIGZpbGUgJyVzJyIKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGZpbGUgJyVzJyIKK21zZ3N0ciAi44OV44Kh44Kk44OrICclcycg44Gr5pu444GN6L6844KB44G+44Gb44KTIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjI3Cittc2dpZCAiZmlsZSBjb3B5IgorbXNnc3RyICLjg5XjgqHjgqTjg6vjgrPjg5Tjg7wiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyMzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlbmFtZSAnJXMnIHRvICclcyciCittc2dzdHIgIiclcycg44KSICclcycg44Gr5ZCN5YmN5aSJ5pu044Gn44GN44G+44Gb44KTIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjUyCisjLCBjLWZvcm1hdAorbXNnaWQgInJlbmFtZTogcmVtb3ZlIGR1cGxpY2F0ZSBvbGQgbGluayAnJXMnIgorbXNnc3RyICLlkI3liY3lpInmm7Q6IOmHjeikh+OBmeOCi+WPpOOBhOODquODs+OCryAnJXMnIOOCkuWJiumZpOOBl+OBpuOBj+OBoOOBleOBhCIKKworIzogc3JjL2RpdmVydGNtZC5jOjI2MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIG9wZW4gc291cmNlIGZpbGUgYCUuMjUwcyciCittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBjb3BpZWQgc291cmNlIGZpbGUgJyVzJyIKK21zZ3N0ciAi44K944O844K544OV44Kh44Kk44OrIGAlLjI1MHMnIOOCkuOCquODvOODl+ODs+OBp+OBjeOBvuOBm+OCkyIKKworIzogc3JjL2RpdmVydGNtZC5jOjI4NAorIywgYy1mb3JtYXQKK21zZ2lkICJsb2NhbCBkaXZlcnNpb24gb2YgJXMiCittc2dzdHIgIiVzIOOBruODreODvOOCq+ODq+OBqumAgOmBvyAoZGl2ZXJ0KSDlhYgiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyODYKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9jYWwgZGl2ZXJzaW9uIG9mICVzIHRvICVzIgorbXNnc3RyICIlcyDjgYvjgokgJXMg44G444Gu44Ot44O844Kr44Or44Gq6YCA6YG/IChkaXZlcnQpIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjkwCisjLCBjLWZvcm1hdAorbXNnaWQgImRpdmVyc2lvbiBvZiAlcyBieSAlcyIKK21zZ3N0ciAiJTIkcyDjgavjgojjgosgJTEkcyDjga7pgIDpgb8gKGRpdmVydCkiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJzaW9uIG9mICVzIHRvICVzIGJ5ICVzIgorbXNnc3RyICIlMyRzIOOBq+OCiOOCiyAlMSRzIOOBi+OCiSAlMiRzIOOBuOOBrumAgOmBvyAoZGl2ZXJ0KSIKKworIzogc3JjL2RpdmVydGNtZC5jOjMwOQorIywgYy1mb3JtYXQKK21zZ2lkICJhbnkgZGl2ZXJzaW9uIG9mICVzIgorbXNnc3RyICIlcyDjga7jgZnjgbnjgabjga7pgIDpgb8iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiYW55IGRpdmVyc2lvbiBvZiAlcyB0byAlcyIKK21zZ3N0ciAiJXMg44GL44KJICVzIOOBuOOBruOBmeOBueOBpuOBrumAgOmBvyIKKworIzogc3JjL2RpdmVydGNtZC5jOjM1NworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgY3JlYXRlIG5ldyAlcyBmaWxlIgorbXNnc3RyICLmlrDjgZfjgYTjg5XjgqHjgqTjg6sgJXMg44KS5L2c5oiQ44Gn44GN44G+44Gb44KTIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mzc1IHNyYy9zdGF0Y21kLmM6MjE1IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNDA0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCBmaWxlICclcyciCittc2dzdHIgIuODleOCoeOCpOODqyAnJXMnIOOCkuODleODqeODg+OCt+ODpeOBp+OBjeOBvuOBm+OCkyIKKworIzogc3JjL2RpdmVydGNtZC5jOjM4MgorbXNnaWQgImVycm9yIHJlbW92aW5nIG9sZCBkaXZlcnNpb25zLW9sZCIKK21zZ3N0ciAi5Y+k44GEIGRpdmVyc2lvbnMtb2xkIOOBruWJiumZpOS4reOBq+OCqOODqeODvOOBjOeZuueUn+OBl+OBvuOBl+OBnyIKKworIzogc3JjL2RpdmVydGNtZC5jOjM4NAorbXNnaWQgImVycm9yIGNyZWF0aW5nIG5ldyBkaXZlcnNpb25zLW9sZCIKK21zZ3N0ciAi5paw44GX44GEIGRpdmVyc2lvbnMtb2xkIOOBruS9nOaIkOS4reOBq+OCqOODqeODvOOBjOeZuueUn+OBl+OBvuOBl+OBnyIKKworIzogc3JjL2RpdmVydGNtZC5jOjM4NgorbXNnaWQgImVycm9yIGluc3RhbGxpbmcgbmV3IGRpdmVyc2lvbnMiCittc2dzdHIgIuaWsOOBl+OBhCBkaXZlcnNpb25zIOOBruOCpOODs+OCueODiOODvOODq+S4reOBq+OCqOODqeODvOOBjOeZuueUn+OBl+OBvuOBl+OBnyIKKworIzogc3JjL2RpdmVydGNtZC5jOjQwNiBzcmMvZGl2ZXJ0Y21kLmM6NTAzIHNyYy9kaXZlcnRjbWQuYzo2MTAKKyM6IHNyYy9kaXZlcnRjbWQuYzo2MzAgc3JjL3N0YXRjbWQuYzoyOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhIHNpbmdsZSBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyDjga/lvJXmlbDjgYwgMSDjgaTlv4XopoHjgafjgZkiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MDkgc3JjL2RpdmVydGNtZC5jOjQzMAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlbmFtZSBcIiVzXCIgaXMgbm90IGFic29sdXRlIgorbXNnc3RyICLjg5XjgqHjgqTjg6vlkI0gXCIlc1wiIOOBr+e1tuWvvuODkeOCueOBp+OBr+OBguOCiuOBvuOBm+OCkyIKKworIzogc3JjL2RpdmVydGNtZC5jOjQxMSBzcmMvc3RhdGNtZC5jOjI0OQorbXNnaWQgImZpbGUgbWF5IG5vdCBjb250YWluIG5ld2xpbmVzIgorbXNnc3RyICLjg5XjgqHjgqTjg6vjga/mlLnooYzjgpLlkKvjgpPjgafjgYTjgabjga/jgarjgorjgb7jgZvjgpMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MTgKK21zZ2lkICJDYW5ub3QgZGl2ZXJ0IGRpcmVjdG9yaWVzIgorbXNnc3RyICLjg4fjgqPjg6zjgq/jg4jjg6rjga/pgIDpgb/jgafjgY3jgb7jgZvjgpMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGRpdmVydCBmaWxlICclcycgdG8gaXRzZWxmIgorbXNnc3RyICLjg5XjgqHjgqTjg6sgJyVzJyDjgpLjgZ3jgozoh6rouqvjgavpgIDpgb/jgZnjgovjgZPjgajjga/jgafjgY3jgb7jgZvjgpMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiTGVhdmluZyAnJXMnXG4iCittc2dzdHIgIiclcycg44KS5q6L44GX44G+44GZXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBjbGFzaGVzIHdpdGggYCVzJyIKK21zZ3N0ciAiYCVzJyDjgYwgYCVzJyDjgajooZ3nqoHjgZfjgb7jgZkiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAiQWRkaW5nICclcydcbiIKK21zZ3N0ciAiJyVzJyDjgpLov73liqDjgZfjgabjgYTjgb7jgZlcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjUxMAorIywgYy1mb3JtYXQKK21zZ2lkICJObyBkaXZlcnNpb24gJyVzJywgbm9uZSByZW1vdmVkLlxuIgorbXNnc3RyICLpgIDpgb/lhYggJyVzJyDjgYzjgarjgYTjga7jgafjgIHkvZXjgoLliYrpmaTjgZXjgozjgb7jgZvjgpPjgIJcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjUyNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisibWlzbWF0Y2ggb24gZGl2ZXJ0LXRvXG4iCisiICB3aGVuIHJlbW92aW5nIGAlcydcbiIKKyIgIGZvdW5kIGAlcyciCittc2dzdHIgIiIKKyLpgIDpgb/lhYjjgYzkuI3mlbTlkIjjgafjgZlcbiIKKyIgIGAlcycg44Gu5YmK6Zmk5Lit44GrXG4iCisiICBgJXMnIOOCkueZuuimi+OBl+OBvuOBl+OBnyIKKworIzogc3JjL2RpdmVydGNtZC5jOjUzMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisibWlzbWF0Y2ggb24gcGFja2FnZVxuIgorIiAgd2hlbiByZW1vdmluZyBgJXMnXG4iCisiICBmb3VuZCBgJXMnIgorbXNnc3RyICIiCisi44OR44OD44Kx44O844K444Gu5LiN5pW05ZCI44Gn44GZXG4iCisiICBgJXMnIOOBruWJiumZpOS4reOBq1xuIgorIiAgYCVzJyDjgpLnmbropovjgZfjgb7jgZfjgZ8iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVtb3ZpbmcgJyVzJ1xuIgorbXNnc3RyICInJXMnIOOCkuWJiumZpOOBl+OBpuOBhOOBvuOBmVxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjU3Cittc2dpZCAicGFja2FnZSBtYXkgbm90IGNvbnRhaW4gbmV3bGluZXMiCittc2dzdHIgIuODkeODg+OCseODvOOCuOOBr+aUueihjOOCkuWQq+OCk+OBp+OBr+OBquOCiuOBvuOBm+OCkyIKKworIzogc3JjL2RpdmVydGNtZC5jOjY2NgorbXNnaWQgImRpdmVydC10byBtYXkgbm90IGNvbnRhaW4gbmV3bGluZXMiCittc2dzdHIgIumAgOmBv+WFiOOBr+aUueihjOOCkuWQq+OCk+OBp+OBr+OBquOCiuOBvuOBm+OCkyIKKworIzogc3JjL2RpdmVydGRiLmM6NjQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiBkaXZlcnNpb25zIGZpbGUiCittc2dzdHIgImRpdmVyc2lvbnMg44OV44Kh44Kk44Or44Gu44Kq44O844OX44Oz44Gr5aSx5pWX44GX44G+44GX44GfIgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzo3MQorbXNnaWQgImZhaWxlZCB0byBmc3RhdCBwcmV2aW91cyBkaXZlcnNpb25zIGZpbGUiCittc2dzdHIgIuWJjeWbnuOBriBkaXZlcnNpb25zIOODleOCoeOCpOODq+OBrueKtuaFi+OCkuWPluW+l+OBp+OBjeOBvuOBm+OCk+OBp+OBl+OBnyAoZnN0YXQg44Gr5aSx5pWXKSIKKworIzogc3JjL2RpdmVydGRiLmM6NzMKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgZGl2ZXJzaW9ucyBmaWxlIgorbXNnc3RyICJkaXZlcnNpb25zIOODleOCoeOCpOODq+OBrueKtuaFi+OCkuWPluW+l+OBp+OBjeOBvuOBm+OCk+OBp+OBl+OBnyAoZnN0YXQg44Gr5aSx5pWXKSIKKworIzogc3JjL2RpdmVydGRiLmM6MTEzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZsaWN0aW5nIGRpdmVyc2lvbnMgaW52b2x2aW5nIGAlLjI1MHMnIG9yIGAlLjI1MHMnIgorbXNnc3RyICJgJS4yNTBzJyDjgYsgYCUuMjUwcycg44GM6Zai5L+C44GZ44KL6YCA6YG/5pON5L2cIChkaXZlcnNpb24pIOOBr+ertuWQiOOBl+OBpuOBhOOBvuOBmSIKKworIzogc3JjL2VucXVpcnkuYzo3MworbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBpbiBhIG1lc3MgZHVlIHRvIHNlcmlvdXMgcHJvYmxlbXMgZHVyaW5nXG4iCisiaW5zdGFsbGF0aW9uLiAgVGhleSBtdXN0IGJlIHJlaW5zdGFsbGVkIGZvciB0aGVtIChhbmQgYW55IHBhY2thZ2VzXG4iCisidGhhdCBkZXBlbmQgb24gdGhlbSkgdG8gZnVuY3Rpb24gcHJvcGVybHk6XG4iCittc2dzdHIgIiIKKyLku6XkuIvjga7jg5Hjg4PjgrHjg7zjgrjjga/jgqTjg7Pjgrnjg4jjg7zjg6vkuK3jgavph43lpKfjgarllY/poYzjgYznmbrnlJ/jgZfjgZ/jgZ/jgoHmt7fkubHjgZfjgabjgYTjgb7jgZnjgIJcbiIKKyLjgZPjgozjgonjga7jg5Hjg4PjgrHjg7zjgrggKOOBqOOBk+OCjOOCieOBq+S+neWtmOOBmeOCi+ODkeODg+OCseODvOOCuCkg44GM5q2j44GX44GP5YuV5L2c44GZ44KL44Gf44KB44GrXG4iCisi44Gv44CB5Lul5LiL44Gu44OR44OD44Kx44O844K444KS5YaN44Kk44Oz44K544OI44O844Or44GX44Gq44GR44KM44Gw44Gq44KK44G+44Gb44KTOlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjgwCittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgaGF2ZSBiZWVuIHVucGFja2VkIGJ1dCBub3QgeWV0IGNvbmZpZ3VyZWQuXG4iCisiVGhleSBtdXN0IGJlIGNvbmZpZ3VyZWQgdXNpbmcgZHBrZyAtLWNvbmZpZ3VyZSBvciB0aGUgY29uZmlndXJlXG4iCisibWVudSBvcHRpb24gaW4gZHNlbGVjdCBmb3IgdGhlbSB0byB3b3JrOlxuIgorbXNnc3RyICIiCisi5Lul5LiL44Gu44OR44OD44Kx44O844K444Gv5bGV6ZaL44GV44KM44G+44GX44Gf44GM44CB44G+44Gg6Kit5a6a44GV44KM44Gm44GE44G+44Gb44KT44CCXG4iCisi44GT44KM44KJ44Gu44OR44OD44Kx44O844K444GM5q2j5bi444Gr5YuV5L2c44GZ44KL44Gf44KB44Gr44Gv44CBZHBrZyAtLWNvbmZpZ3VyZSDjgYtcbiIKKyJkc2VsZWN0IOOBruioreWumiAoY29uZmlndXJlKSDjg6Hjg4vjg6Xjg7zjgqrjg5fjgrfjg6fjg7PjgpLkvb/jgaPjgaboqK3lrprjgpLlrozkuoZcbiIKKyLjgZXjgZvjgarjgZHjgozjgbDjgarjgorjgb7jgZvjgpM6XG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6ODcKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgb25seSBoYWxmIGNvbmZpZ3VyZWQsIHByb2JhYmx5IGR1ZSB0byBwcm9ibGVtc1xuIgorImNvbmZpZ3VyaW5nIHRoZW0gdGhlIGZpcnN0IHRpbWUuICBUaGUgY29uZmlndXJhdGlvbiBzaG91bGQgYmUgcmV0cmllZCB1c2luZ1xuIgorImRwa2cgLS1jb25maWd1cmUgPHBhY2thZ2U+IG9yIHRoZSBjb25maWd1cmUgbWVudSBvcHRpb24gaW4gZHNlbGVjdDpcbiIKK21zZ3N0ciAiIgorIuS7peS4i+OBruODkeODg+OCseODvOOCuOOBr+acgOWIneOBruioreWumuS4reOBq+WVj+mhjOOBjOeZuueUn+OBl+OBn+OBn+OCgeOAgeioreWumuOBjOe1guS6huOBl+OBpuOBhOOBvuOBmyIKKyLjgpPjgIJcbiIKKyJkcGtnIC0tY29uZmlndXJlIDzjg5Hjg4PjgrHjg7zjgrg+IOOBiyBkc2VsZWN0IOOBp+ioreWumiAoY29uZmlndXJlKSDjg6Hjg4vjg6Xjg7zjgqrjg5ciCisi44K344OnXG4iCisi44Oz44KS5L2/44Gj44Gm6Kit5a6a5L2c5qWt44KS5YaN6Kmm6KGM44GX44Gq44GR44KM44Gw44Gq44KK44G+44Gb44KTOlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjk0Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgYXJlIG9ubHkgaGFsZiBpbnN0YWxsZWQsIGR1ZSB0byBwcm9ibGVtcyBkdXJpbmdcbiIKKyJpbnN0YWxsYXRpb24uICBUaGUgaW5zdGFsbGF0aW9uIGNhbiBwcm9iYWJseSBiZSBjb21wbGV0ZWQgYnkgcmV0cnlpbmcgaXQ7XG4iCisidGhlIHBhY2thZ2VzIGNhbiBiZSByZW1vdmVkIHVzaW5nIGRzZWxlY3Qgb3IgZHBrZyAtLXJlbW92ZTpcbiIKK21zZ3N0ciAiIgorIuS7peS4i+OBruODkeODg+OCseODvOOCuOOBr+OCpOODs+OCueODiOODvOODq+aZguOBq+WVj+mhjOOBjOeZuueUn+OBl+OBn+OBn+OCgeOAgeOCpOODs+OCueODiOODvOODq+OBjOWujOS6huOBlyIKKyLjgaZcbiIKKyLjgYTjgb7jgZvjgpPjgILlho3luqbooYzjgYjjgbDjgqTjg7Pjgrnjg4jjg7zjg6vjgYzlrozkuobjgZnjgovloLTlkIjjgYzjgYLjgorjgb7jgZk6XG4iCisi44GT44KM44KJ44Gu44OR44OD44Kx44O844K444GvIGRzZWxlY3Qg44GLIGRwa2cgLS1yZW1vdmUg44KS5L2/55So44GX44Gm5YmK6Zmk44Gn44GN44G+44GZOlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjEwMQorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBhd2FpdGluZyBwcm9jZXNzaW5nIG9mIHRyaWdnZXJzIHRoYXQgdGhleVxuIgorImhhdmUgYWN0aXZhdGVkIGluIG90aGVyIHBhY2thZ2VzLiAgVGhpcyBwcm9jZXNzaW5nIGNhbiBiZSByZXF1ZXN0ZWQgdXNpbmdcbiIKKyJkc2VsZWN0IG9yIGRwa2cgLS1jb25maWd1cmUgLS1wZW5kaW5nIChvciBkcGtnIC0tdHJpZ2dlcnMtb25seSk6XG4iCittc2dzdHIgIiIKKyLku6XkuIvjga7jg5Hjg4PjgrHjg7zjgrjjga/jgIHjgbvjgYvjga7jg5Hjg4PjgrHjg7zjgrjjgavjgojjgaPjgabmtLvmgKfljJbjgZXjgozjgovjg4jjg6rjgqzlh6bnkIbjgpLlvoXjgaNcbiIKKyLjgabjgYTjgb7jgZnjgILjgZPjga7lh6bnkIbjga8gZHNlbGVjdCDjgb7jgZ/jga8gZHBrZyAtLWNvbmZpZ3VyZSAtLXBlbmRpbmcgKOOBguOCi+OBhFxuIgorIuOBryBkcGtnIC0tdHJpZ2dlcnMtb25seSkg44Gu5Yip55So44Gn6KaB5rGC44Gn44GN44G+44GZ44CCXG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTA4Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgaGF2ZSBiZWVuIHRyaWdnZXJlZCwgYnV0IHRoZSB0cmlnZ2VyIHByb2Nlc3NpbmdcbiIKKyJoYXMgbm90IHlldCBiZWVuIGRvbmUuICBUcmlnZ2VyIHByb2Nlc3NpbmcgY2FuIGJlIHJlcXVlc3RlZCB1c2luZ1xuIgorImRzZWxlY3Qgb3IgZHBrZyAtLWNvbmZpZ3VyZSAtLXBlbmRpbmcgKG9yIGRwa2cgLS10cmlnZ2Vycy1vbmx5KTpcbiIKK21zZ3N0ciAiIgorIuS7peS4i+OBruODkeODg+OCseODvOOCuOOBr+ODiOODquOCrOOBleOCjOOBvuOBl+OBn+OBjOOAgeODiOODquOCrOWHpueQhuOBr+OBvuOBoOWujOS6huOBl+OBpuOBhOOBvuOBm+OCk+OAglxuIgorIuODiOODquOCrOWHpueQhuOBryBkc2VsZWN0IOOBvuOBn+OBryBkcGtnIC0tY29uZmlndXJlIC0tcGVuZGluZyAo44GC44KL44GE44GvIGRwa2dcbiIKKyItLXRyaWdnZXJzLW9ubHkpIOOBruWIqeeUqOOBp+imgeaxguOBp+OBjeOBvuOBmeOAglxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjEzNyBzcmMvZW5xdWlyeS5jOjIxMSBzcmMvZW5xdWlyeS5jOjI5MiBzcmMvZW5xdWlyeS5jOjM3MworIzogc3JjL2VucXVpcnkuYzo0NjAgc3JjL3NlbGVjdC5jOjk4IHNyYy9zZWxlY3QuYzoxNjQgc3JjL3RyaWdjbWQuYzoxOTkKKyM6IHNyYy91cGRhdGUuYzo0OCBzcmMvdXBkYXRlLmM6MTEzIGRwa2ctc3BsaXQvcXVldWUuYzoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyB0YWtlcyBubyBhcmd1bWVudHMiCittc2dzdHIgIi0tJXMg44Gv5byV5pWw44KS44Go44KK44G+44Gb44KTIgorCisjOiBzcmMvZW5xdWlyeS5jOjE1MgorbXNnaWQgIiIKKyJBbm90aGVyIHByb2Nlc3MgaGFzIGxvY2tlZCB0aGUgZGF0YWJhc2UgZm9yIHdyaXRpbmcsIGFuZCBtaWdodCBjdXJyZW50bHkgYmVcbiIKKyJtb2RpZnlpbmcgaXQsIHNvbWUgb2YgdGhlIGZvbGxvd2luZyBwcm9ibGVtcyBtaWdodCBqdXN0IGJlIGR1ZSB0byB0aGF0LlxuIgorbXNnc3RyICIiCisi5Yil44Gu44OX44Ot44K744K544GM5pu444GN6L6844G/5a++6LGh44Gu44OH44O844K/44OZ44O844K544KS44Ot44OD44Kv44GX44Gm44GE44Gm54++5Zyo44Gd44KM44KS5aSJ5pu044GX44Gm44GEIgorIuOCi+WPr+iDveaAp+OBjOOBguOCi+OBruOBp+OAgeS7peS4i+OBruWVj+mhjOOBruOBhOOBj+OBpOOBi+OBr+WNmOOBq+OBneOBruOBm+OBhOOBp+OBguOCi+WPr+iDveaAp+OBjOOBguOCiuOBviIKKyLjgZnjgIJcbiIKKworIzogc3JjL2VucXVpcnkuYzoxOTEKKyMsIGZ1enp5CisjfCBtc2dpZCAiPHVua25vd24+IgorbXNnY3R4dCAic2VjdGlvbiIKK21zZ2lkICI8dW5rbm93bj4iCittc2dzdHIgIjzkuI3mmI4+IgorCisjOiBzcmMvZW5xdWlyeS5jOjI1MQorIywgYy1mb3JtYXQKK21zZ2lkICIgJWQgaW4gJXM6ICIKK21zZ3N0ciAiICUyJHMg5Lit44GuICUxJGQ6ICIKKworIzogc3JjL2VucXVpcnkuYzoyNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiICVkIHBhY2thZ2UsIGZyb20gdGhlIGZvbGxvd2luZyBzZWN0aW9uOiIKK21zZ2lkX3BsdXJhbCAiICVkIHBhY2thZ2VzLCBmcm9tIHRoZSBmb2xsb3dpbmcgc2VjdGlvbnM6IgorbXNnc3RyWzBdICIgJWQg44OR44OD44Kx44O844K444Gv44CBKOS7peS4i+OBruOCu+OCr+OCt+ODp+ODs+OBi+OCiSk6IgorbXNnc3RyWzFdICIgJWQg44OR44OD44Kx44O844K444Gv44CBKOS7peS4i+OBruOCu+OCr+OCt+ODp+ODs+OBi+OCiSk6IgorCisjOiBzcmMvZW5xdWlyeS5jOjMwNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVmVyc2lvbiBvZiBkcGtnIHdpdGggd29ya2luZyAlcyBzdXBwb3J0IG5vdCB5ZXQgY29uZmlndXJlZC5cbiIKKyIgUGxlYXNlIHVzZSAnZHBrZyAtLWNvbmZpZ3VyZSBkcGtnJywgYW5kIHRoZW4gdHJ5IGFnYWluLlxuIgorbXNnc3RyICIiCisi5L2c5YuV5Lit44GuICVzIOOCkuOCteODneODvOODiOOBl+OBpuOBhOOCiyBkcGtnIOOBruODkOODvOOCuOODp+ODs+OBjOOBvuOBoOioreWumuOBleOCjOOBpuOBhOOBvuOBm+OCk+OAglxuIgorIiBgZHBrZyAtLWNvbmZpZ3VyZSBkcGtnJyDjgpLooYzjgaPjgZ/lvozjgavjgoLjgYbkuIDluqblrp/ooYzjgZfjgabjgY/jgaDjgZXjgYTjgIJcbiIKKworIzogc3JjL2VucXVpcnkuYzozMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZyBub3QgcmVjb3JkZWQgYXMgaW5zdGFsbGVkLCBjYW5ub3QgY2hlY2sgZm9yICVzIHN1cHBvcnQhXG4iCittc2dzdHIgIiIKKyJkcGtnIOOBjOOCpOODs+OCueODiOODvOODq+a4iOOBv+OBqOOBl+OBpuiomOmMsuOBleOCjOOBpuOBhOOBquOBhOOBn+OCgeOAgSVzIOOCkuOCteODneODvOODiOOBl+OBpuOBhOOCi+OBi+eiuiIKKyLoqo3jgafjgY3jgb7jgZvjgpMhXG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzIxCittc2dpZCAiUHJlLURlcGVuZHMgZmllbGQiCittc2dzdHIgIuWFiOihjOS+neWtmOODleOCo+ODvOODq+ODiSIKKworIzogc3JjL2VucXVpcnkuYzozMjkKK21zZ2lkICJlcG9jaCIKK21zZ3N0ciAi44Ko44Od44OD44KvIgorCisjOiBzcmMvZW5xdWlyeS5jOjMzNworbXNnaWQgImxvbmcgZmlsZW5hbWVzIgorbXNnc3RyICLplbfjgYTjg5XjgqHjgqTjg6vlkI0iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzQ2Cittc2dpZCAibXVsdGlwbGUgQ29uZmxpY3RzIGFuZCBSZXBsYWNlcyIKK21zZ3N0ciAi6KSH5pWw44Gu56u25ZCIIChDb25mbGljdHMpIOOBiuOCiOOBsyDnva7mj5sgKFJlcGxhY2VzKSIKKworIzogc3JjL2VucXVpcnkuYzo0MzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IGNhbm5vdCBzZWUgaG93IHRvIHNhdGlzZnkgcHJlLWRlcGVuZGVuY3k6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKyJkcGtnOiDlhYjooYzkvp3lrZjjgpLop6PmsbrjgZnjgovmlrnms5XjgYzjgo/jgYvjgorjgb7jgZvjgpM6XG4iCisiICVzXG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6NDM1CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzYXRpc2Z5IHByZS1kZXBlbmRlbmNpZXMgZm9yICUuMjUwcyAod2FudGVkIGR1ZSB0byAlLjI1MHMpIgorbXNnc3RyICIiCisiKCUyJC4yNTBzIOOBjOimgeaxguOBmeOCiykgJTEkLjI1MHMg44Gu5YWI6KGM5L6d5a2YIChwcmUtZGVwZW5kZW5jaWVzKSDjgpLop6PmsbrjgafjgY3jgb7jgZvjgpMiCisKKyM6IHNyYy9lbnF1aXJ5LmM6NDcyCisjLCBjLWZvcm1hdAorbXNnaWQgIm9ic29sZXRlIG9wdGlvbiAnLS0lcycsIHBsZWFzZSB1c2UgJy0tJXMnIGluc3RlYWQuIgorbXNnc3RyICLjgqrjg5fjgrfjg6fjg7MgJy0tJXMnIOOBr+aZguS7o+mBheOCjOOBp+OBmeOAgictLSVzJyDjgpLku6Pjgo/jgorjgavkvb/jgaPjgabjgY/jgaDjgZXjgYTjgIIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6NTE5Cittc2dpZCAiIgorIi0tY29tcGFyZS12ZXJzaW9ucyB0YWtlcyB0aHJlZSBhcmd1bWVudHM6IDx2ZXJzaW9uPiA8cmVsYXRpb24+IDx2ZXJzaW9uPiIKK21zZ3N0ciAiIgorIi0tY29tcGFyZS12ZXJzaW9ucyDjga8gMyDjgaTjga7lvJXmlbAgKDzjg5Djg7zjgrjjg6fjg7M+IDzplqLkv4I+IDzjg5Djg7zjgrjjg6fjg7M+KSDjgpLjgajjgorjgb4iCisi44GZIgorCisjOiBzcmMvZW5xdWlyeS5jOjUyNAorbXNnaWQgIi0tY29tcGFyZS12ZXJzaW9ucyBiYWQgcmVsYXRpb24iCittc2dzdHIgIi0tY29tcGFyZS12ZXJzaW9ucyDjga7kuI3mraPjgarmr5TovIMiCisKKyM6IHNyYy9lbnF1aXJ5LmM6NTI5IHNyYy9lbnF1aXJ5LmM6NTMxIHNyYy9lbnF1aXJ5LmM6NTQwIHNyYy9lbnF1aXJ5LmM6NTQyCisjLCBjLWZvcm1hdAorbXNnaWQgInZlcnNpb24gJyVzJyBoYXMgYmFkIHN5bnRheDogJXMiCittc2dzdHIgIuODkOODvOOCuOODp+ODsyAnJXMnIOOBr+S4jeato+OBquani+aWh+OBp+OBmTogJXMiCisKKyM6IHNyYy9lcnJvcnMuYzo2MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IGVycm9yIHByb2Nlc3NpbmcgJXMgKC0tJXMpOlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisiJXM6ICVzIOOBruWHpueQhuS4reOBq+OCqOODqeODvOOBjOeZuueUn+OBl+OBvuOBl+OBnyAoLS0lcyk6XG4iCisiICVzXG4iCisKKyM6IHNyYy9lcnJvcnMuYzo2OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgImRwa2c6IGZhaWxlZCB0byBhbGxvY2F0ZSBtZW1vcnkgZm9yIG5ldyBlbnRyeSBpbiBsaXN0IG9mIGZhaWxlZCBwYWNrYWdlcy4iCittc2dpZCAiIgorIiVzOiBmYWlsZWQgdG8gYWxsb2NhdGUgbWVtb3J5IGZvciBuZXcgZW50cnkgaW4gbGlzdCBvZiBmYWlsZWQgcGFja2FnZXM6ICVzIgorbXNnc3RyICIiCisiZHBrZzog5aSx5pWX44GX44Gf44OR44OD44Kx44O844K45LiA6Kan44Gr5paw44GX44GE44Ko44Oz44OI44Oq44KS6L+95Yqg44GZ44KL44Gf44KB44Gu44Oh44Oi44Oq44KS5Ymy44KK5b2T44GmIgorIuOCi+OBk+OBqOOBjOOBp+OBjeOBvuOBm+OCk+OBp+OBl+OBn+OAgiIKKworIzogc3JjL2Vycm9ycy5jOjc5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJkcGtnOiB0b28gbWFueSBlcnJvcnMsIHN0b3BwaW5nXG4iCittc2dpZCAiJXM6IHRvbyBtYW55IGVycm9ycywgc3RvcHBpbmdcbiIKK21zZ3N0ciAiZHBrZzog5aSn6YeP44Gu44Ko44Op44O844GM55m655Sf44GX44Gf44Gf44KB44CB5Lit5pat44GX44G+44GZXG4iCisKKyM6IHNyYy9lcnJvcnMuYzo4NworbXNnaWQgIkVycm9ycyB3ZXJlIGVuY291bnRlcmVkIHdoaWxlIHByb2Nlc3Npbmc6XG4iCittc2dzdHIgIuS7peS4i+OBruODkeODg+OCseODvOOCuOOBruWHpueQhuS4reOBq+OCqOODqeODvOOBjOeZuueUn+OBl+OBvuOBl+OBnzpcbiIKKworIzogc3JjL2Vycm9ycy5jOjk0Cittc2dpZCAiUHJvY2Vzc2luZyB3YXMgaGFsdGVkIGJlY2F1c2UgdGhlcmUgd2VyZSB0b28gbWFueSBlcnJvcnMuXG4iCittc2dzdHIgIuWkp+mHj+OBruOCqOODqeODvOOBjOeZuueUn+OBl+OBn+OBn+OCgeOAgeWHpueQhuOBjOWBnOatouOBl+OBvuOBl+OBn+OAglxuIgorCisjOiBzcmMvZXJyb3JzLmM6MTA1CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgJXMgd2FzIG9uIGhvbGQsIHByb2Nlc3NpbmcgaXQgYW55d2F5IGFzIHlvdSByZXF1ZXN0ZWRcbiIKK21zZ3N0ciAi44OR44OD44Kx44O844K4ICVzIOOBr+S/neaMgeOBleOCjOOBpuOBhOOBvuOBmeOBjOOAgeimgeaxguOBqeOBiuOCiuWHpueQhuOBl+OBvuOBmVxuIgorCisjOiBzcmMvZXJyb3JzLmM6MTA5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJQYWNrYWdlICVzIGlzIG9uIGhvbGQsIG5vdCB0b3VjaGluZyBpdC4gIFVzZSAtLWZvcmNlLWhvbGQgdG8gb3ZlcnJpZGUuXG4iCittc2dzdHIgIiIKKyLjg5Hjg4PjgrHjg7zjgrggJXMg44Gv5L+d5oyB44GV44KM44Gm44GE44KL44Gf44KB44CB5omL44KS44Gk44GR44G+44Gb44KT44CC5LiK5pu444GN44GZ44KL44Gr44GvIC0tZm9yY2UtIgorImhvbGQg44KS5L2/44Gj44Gm44GP44Gg44GV44GE44CCXG4iCisKKyM6IHNyYy9lcnJvcnMuYzoxMTkKK21zZ2lkICJvdmVycmlkaW5nIHByb2JsZW0gYmVjYXVzZSAtLWZvcmNlIGVuYWJsZWQ6IgorbXNnc3RyICItLWZvcmNlIOOBjOacieWKueOBquOBruOBp+OAgeWVj+mhjOOCkueEoeimluOBl+OBvuOBmToiCisKKyM6IHNyYy9maWxlc2RiLmM6MzA3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSBgJS4yNTBzJyIKK21zZ3N0ciAi44OR44OD44Kx44O844K4IGAlLjI1MHMnIOOBruODleOCoeOCpOODq+S4gOimp+ODleOCoeOCpOODq+OCkuOCquODvOODl+ODs+OBp+OBjeOBvuOBm+OCkyIKKworIzogc3JjL2ZpbGVzZGIuYzozMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSBgJS4yNTBzJyBtaXNzaW5nLCBhc3N1bWluZyBwYWNrYWdlIGhhcyBubyBmaWxlcyAiCisiY3VycmVudGx5IGluc3RhbGxlZC4iCittc2dzdHIgIiIKKyLjg5Hjg4PjgrHjg7zjgrggYCUuMjUwcycg44Gu44OV44Kh44Kk44Or5LiA6Kan44OV44Kh44Kk44Or44GM44GC44KK44G+44Gb44KT44CC44GT44Gu44OR44OD44Kx44O844K444Gr44Gv44CBIgorIuePvuWcqOOCpOODs+OCueODiOODvOODq+OBleOCjOOBpuOBhOOCi+ODleOCoeOCpOODq+OBjOOBquOBhOOCguOBruOBqOOBl+OBvuOBmeOAgiIKKworIzogc3JjL2ZpbGVzZGIuYzozMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICclLjI1MHMnIgorbXNnc3RyICLjg5Hjg4PjgrHjg7zjgrggJyUuMjUwcycg44Gu44OV44Kh44Kk44Or5LiA6Kan44OV44Kh44Kk44Or44Gu54q25oWL44KS5Y+W5b6X44Gn44GN44G+44Gb44KTIgorCisjOiBzcmMvZmlsZXNkYi5jOjMzMAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZXMgbGlzdCBmb3IgcGFja2FnZSBgJS4yNTBzJyIKK21zZ2lkICJyZWFkaW5nIGZpbGVzIGxpc3QgZm9yIHBhY2thZ2UgJyUuMjUwcyciCittc2dzdHIgIuODkeODg+OCseODvOOCuCBgJS4yNTBzJyDjga7jg5XjgqHjgqTjg6vkuIDopqciCisKKyM6IHNyYy9maWxlc2RiLmM6MzM2CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAnJS4yNTBzJyBpcyBtaXNzaW5nIGZpbmFsIG5ld2xpbmUiCittc2dzdHIgIuODkeODg+OCseODvOOCuCAnJS4yNTBzJyDjga7jg5XjgqHjgqTjg6vkuIDopqfjg5XjgqHjgqTjg6vjgavmnIDlvozjga7mlLnooYzjgYzjgYLjgorjgb7jgZvjgpMiCisKKyM6IHNyYy9maWxlc2RiLmM6MzQ0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSBgJS4yNTBzJyBjb250YWlucyBlbXB0eSBmaWxlbmFtZSIKK21zZ3N0ciAiIgorIuODkeODg+OCseODvOOCuCBgJS4yNTBzJyDjga7jg5XjgqHjgqTjg6vkuIDopqfjg5XjgqHjgqTjg6vjgYznqbrjga7jg5XjgqHjgqTjg6vlkI3jgpLlkKvjgpPjgafjgYTjgb7jgZkiCisKKyM6IHNyYy9maWxlc2RiLmM6MzUyCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlIGAlLjI1MHMnIgorbXNnc3RyICIiCisi44OR44OD44Kx44O844K4IGAlLjI1MHMnIOOBruODleOCoeOCpOODq+S4gOimp+ODleOCoeOCpOODq+OBruOCr+ODreODvOOCuuS4reOBq+OCqOODqeODvOOBjOeZuueUn+OBl+OBvuOBl+OBnyIKKworIzogc3JjL2ZpbGVzZGIuYzo0NjIKK21zZ2lkICIoUmVhZGluZyBkYXRhYmFzZSAuLi4gIgorbXNnc3RyICIo44OH44O844K/44OZ44O844K544KS6Kqt44G/6L6844KT44Gn44GE44G+44GZIC4uLiAiCisKKyM6IHNyYy9maWxlc2RiLmM6NDgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiVkIGZpbGUgb3IgZGlyZWN0b3J5IGN1cnJlbnRseSBpbnN0YWxsZWQuKVxuIgorbXNnaWRfcGx1cmFsICIlZCBmaWxlcyBhbmQgZGlyZWN0b3JpZXMgY3VycmVudGx5IGluc3RhbGxlZC4pXG4iCittc2dzdHJbMF0gIuePvuWcqCAlZCDlgIvjga7jg5XjgqHjgqTjg6vjgajjg4fjgqPjg6zjgq/jg4jjg6rjgYzjgqTjg7Pjgrnjg4jjg7zjg6vjgZXjgozjgabjgYTjgb7jgZnjgIIpXG4iCittc2dzdHJbMV0gIuePvuWcqCAlZCDlgIvjga7jg5XjgqHjgqTjg6vjgajjg4fjgqPjg6zjgq/jg4jjg6rjgYzjgqTjg7Pjgrnjg4jjg7zjg6vjgZXjgozjgabjgYTjgb7jgZnjgIIpXG4iCisKKyM6IHNyYy9maWxlc2RiLmM6NTE2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIuODkeODg+OCseODvOOCuCAlcyDnlKjjga7mm7TmlrDjg5XjgqHjgqTjg6vkuIDopqfjg5XjgqHjgqTjg6vjgpLkvZzmiJDjgafjgY3jgb7jgZvjgpMiCisKKyM6IHNyYy9maWxlc2RiLmM6NTI2CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB3cml0ZSB0byB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAi44OR44OD44Kx44O844K4ICVzIOeUqOOBruabtOaWsOODleOCoeOCpOODq+S4gOimp+ODleOCoeOCpOODq+OBuOOBruabuOOBjei+vOOBv+OBq+WkseaVl+OBl+OBvuOBl+OBnyIKKworIzogc3JjL2ZpbGVzZGIuYzo1MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZsdXNoIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICLjg5Hjg4PjgrHjg7zjgrggJXMg55So44Gu5pu05paw44OV44Kh44Kk44Or5LiA6Kan44OV44Kh44Kk44Or44Gu44OV44Op44OD44K344Ol44Gr5aSx5pWX44GX44G+44GX44GfIgorCisjOiBzcmMvZmlsZXNkYi5jOjUzMAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gc3luYyB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAi44OR44OD44Kx44O844K4ICVzIOeUqOOBruabtOaWsOODleOCoeOCpOODq+S4gOimp+ODleOCoeOCpOODq+OBruWQjOacn+OBq+WkseaVl+OBl+OBvuOBl+OBnyIKKworIzogc3JjL2ZpbGVzZGIuYzo1MzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNsb3NlIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICLjg5Hjg4PjgrHjg7zjgrggJXMg55So44Gu5pu05paw44OV44Kh44Kk44Or5LiA6Kan44OV44Kh44Kk44Or44Gu44Kv44Ot44O844K644Gr5aSx5pWX44GX44G+44GX44GfIgorCisjOiBzcmMvZmlsZXNkYi5jOjUzNQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gaW5zdGFsbCB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAi44OR44OD44Kx44O844K4ICVzIOeUqOOBruabtOaWsOODleOCoeOCpOODq+S4gOimp+ODleOCoeOCpOODq+OBruOCpOODs+OCueODiOODvOODq+OBq+WkseaVl+OBl+OBvuOBl+OBnyIKKworIzogc3JjL2hlbHAuYzo0OAorbXNnaWQgIm5vdCBpbnN0YWxsZWQiCittc2dzdHIgIuacquWwjuWFpSIKKworIzogc3JjL2hlbHAuYzo0OQorbXNnaWQgIm5vdCBpbnN0YWxsZWQgYnV0IGNvbmZpZ3MgcmVtYWluIgorbXNnc3RyICLjgqTjg7Pjgrnjg4jjg7zjg6vjgZXjgozjgabjgYTjgb7jgZvjgpPjgYzjgIHoqK3lrprjgYzmrovjgaPjgabjgYTjgb7jgZkiCisKKyM6IHNyYy9oZWxwLmM6NTAKK21zZ2lkICJicm9rZW4gZHVlIHRvIGZhaWxlZCByZW1vdmFsIG9yIGluc3RhbGxhdGlvbiIKK21zZ3N0ciAi5YmK6Zmk44G+44Gf44Gv44Kk44Oz44K544OI44O844Or44Gu5aSx5pWX44Gu44Gf44KB5aOK44KM44Gm44GE44G+44GZIgorCisjOiBzcmMvaGVscC5jOjUxCittc2dpZCAidW5wYWNrZWQgYnV0IG5vdCBjb25maWd1cmVkIgorbXNnc3RyICLlsZXplovmuIjjgb8gKOacquioreWumikiCisKKyM6IHNyYy9oZWxwLmM6NTIKK21zZ2lkICJicm9rZW4gZHVlIHRvIHBvc3RpbnN0IGZhaWx1cmUiCittc2dzdHIgInBvc3RpbnN0IOOBruWkseaVl+OBruOBn+OCgeWjiuOCjOOBpuOBhOOBvuOBmSIKKworIzogc3JjL2hlbHAuYzo1MworbXNnaWQgImF3YWl0aW5nIHRyaWdnZXIgcHJvY2Vzc2luZyBieSBhbm90aGVyIHBhY2thZ2UiCittc2dzdHIgIuWIpeOBruODkeODg+OCseODvOOCuOOBq+OCiOOBo+OBpuODiOODquOCrOWHpueQhuOCkuW+heOBoeWPl+OBkeOBpuOBhOOBvuOBmSIKKworIzogc3JjL2hlbHAuYzo1NAorbXNnaWQgInRyaWdnZXJlZCIKK21zZ3N0ciAi44OI44Oq44Ks5riI44G/IgorCisjOiBzcmMvaGVscC5jOjU1Cittc2dpZCAiaW5zdGFsbGVkIgorbXNnc3RyICLlsI7lhaXmuIjjgb8iCisKKyM6IHNyYy9oZWxwLmM6MTA3CisjLCBmdXp6eQorI3wgbXNnaWQgImVycm9yOiBQQVRIIGlzIG5vdCBzZXQuIgorbXNnaWQgIlBBVEggaXMgbm90IHNldC4iCittc2dzdHIgIlBBVEgg44GM6Kit5a6a44GV44KM44Gm44GE44G+44Gb44KT44CCIgorCisjOiBzcmMvaGVscC5jOjEyOQorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIG5vdCBmb3VuZCBpbiBQQVRIIG9yIG5vdCBleGVjdXRhYmxlLiIKK21zZ3N0ciAiJyVzJyDjgYwgUEFUSCDkuIrjgavopovjgaTjgYvjgonjgarjgYTjgYvlrp/ooYzlj6/og73jgavjgarjgaPjgabjgYTjgb7jgZvjgpPjgIIiCisKKyM6IHNyYy9oZWxwLmM6MTM4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICInJXMnIG5vdCBmb3VuZCBpbiBQQVRIIG9yIG5vdCBleGVjdXRhYmxlLiIKK21zZ2lkICIiCisiJWQgZXhwZWN0ZWQgcHJvZ3JhbSBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS5cbiIKKyIlcyIKK21zZ2lkX3BsdXJhbCAiIgorIiVkIGV4cGVjdGVkIHByb2dyYW1zIG5vdCBmb3VuZCBpbiBQQVRIIG9yIG5vdCBleGVjdXRhYmxlLlxuIgorIiVzIgorbXNnc3RyWzBdICInJXMnIOOBjCBQQVRIIOS4iuOBq+imi+OBpOOBi+OCieOBquOBhOOBi+Wun+ihjOWPr+iDveOBq+OBquOBo+OBpuOBhOOBvuOBm+OCk+OAgiIKK21zZ3N0clsxXSAiJyVzJyDjgYwgUEFUSCDkuIrjgavopovjgaTjgYvjgonjgarjgYTjgYvlrp/ooYzlj6/og73jgavjgarjgaPjgabjgYTjgb7jgZvjgpPjgIIiCisKKyM6IHNyYy9oZWxwLmM6MTQxCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICIlZCBleHBlY3RlZCBwcm9ncmFtIG5vdCBmb3VuZCBpbiBQQVRIIG9yIG5vdCBleGVjdXRhYmxlLlxuIgorI3wgIk5COiByb290J3MgUEFUSCBzaG91bGQgdXN1YWxseSBjb250YWluIC91c3IvbG9jYWwvc2JpbiwgL3Vzci9zYmluIGFuZCAvIgorI3wgInNiaW4uIgorI3wgbXNnaWRfcGx1cmFsICIiCisjfCAiJWQgZXhwZWN0ZWQgcHJvZ3JhbXMgbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuXG4iCisjfCAiTkI6IHJvb3QncyBQQVRIIHNob3VsZCB1c3VhbGx5IGNvbnRhaW4gL3Vzci9sb2NhbC9zYmluLCAvdXNyL3NiaW4gYW5kIC8iCisjfCAic2Jpbi4iCittc2dpZCAiIgorIk5vdGU6IHJvb3QncyBQQVRIIHNob3VsZCB1c3VhbGx5IGNvbnRhaW4gL3Vzci9sb2NhbC9zYmluLCAvdXNyL3NiaW4gYW5kIC8iCisic2Jpbi4iCittc2dzdHIgIiIKKyIlZCDlgIvjga7jg5fjg63jgrDjg6njg6DjgYwgUEFUSCDkuIrjgavopovjgaTjgYvjgorjgb7jgZvjgpPjgafjgZfjgZ/jgIJcbiIKKyIo5rOoKTogcm9vdCDjga4gUEFUSCDjga/pgJrluLjjgIEvdXNyL2xvY2FsL3NiaW7jgIEvdXNyL3NiaW7jgIEvc2JpbiDjgpLlkKvjgpPjgafjgYTjgovjga/jgZoiCisi44Gn44GZ44CCIgorCisjOiBzcmMvaGVscC5jOjE4OAorbXNnaWQgImFkbWluZGlyIG11c3QgYmUgaW5zaWRlIGluc3RkaXIgZm9yIGRwa2cgdG8gd29yayBwcm9wZXJseSIKK21zZ3N0ciAiIgorCisjOiBzcmMvaGVscC5jOjE5MCBzcmMvbWFpbi5jOjc0NworIywgZnV6enkKKyN8IG1zZ2lkICJ1bmFibGUgdG8gc2V0ZW52IGZvciBtYWludGFpbmVyIHNjcmlwdCIKK21zZ2lkICJ1bmFibGUgdG8gc2V0ZW52IGZvciBzdWJwcm9jZXNzZXMiCittc2dzdHIgIuODoeODs+ODhuODiuOCueOCr+ODquODl+ODiOOBpyBzZXRlbnYg44Gn44GN44G+44Gb44KTIgorCisjOiBzcmMvaGVscC5jOjE5MgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2hyb290IHRvIGAlLjI1MHMnIgorbXNnc3RyICJgJS4yNTVzJyDjgbjjga4gY2hyb290IOOBq+WkseaVl+OBl+OBvuOBl+OBnyIKKworIzogc3JjL2hlbHAuYzoxOTQgZHBrZy1kZWIvYnVpbGQuYzo0NTUgZHBrZy1kZWIvYnVpbGQuYzo0NTcKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTM2IGRwa2ctZGViL2J1aWxkLmM6NTU4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byBgJS4yNTVzJyIKK21zZ3N0ciAiYCUuMjU1cycg44OH44Kj44Os44Kv44OI44Oq44G444Gu56e75YuV44Gr5aSx5pWX44GX44G+44GX44GfIgorCisjOiBzcmMvaGVscC5jOjI1NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IGV4ZWN1dGUgcGVybWlzc2lvbnMgb24gYCUuMjUwcyciCittc2dzdHIgImAlLjI1MHMnIOOBruWun+ihjOioseWPr+OCkuioreWumuOBp+OBjeOBvuOBm+OCkyIKKworIzogc3JjL2hlbHAuYzoyNzYKK21zZ2lkICJ1bmFibGUgdG8gc2V0ZW52IGZvciBtYWludGFpbmVyIHNjcmlwdCIKK21zZ3N0ciAi44Oh44Oz44OG44OK44K544Kv44Oq44OX44OI44GnIHNldGVudiDjgafjgY3jgb7jgZvjgpMiCisKKyM6IHNyYy9oZWxwLmM6MzAwCisjLCBjLWZvcm1hdAorbXNnaWQgImluc3RhbGxlZCAlcyBzY3JpcHQiCittc2dzdHIgIuOCpOODs+OCueODiOODvOODq+a4iOOBv+OBriAlcyDjgrnjgq/jg6rjg5fjg4giCisKKyM6IHNyYy9oZWxwLmM6MzEzIHNyYy9oZWxwLmM6MzgyIHNyYy9oZWxwLmM6NDQxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0ICVzIGAlLjI1MHMnIgorbXNnc3RyICIlcyBgJS4yNTBzJyDjga7nirbmhYvjgpLlj5blvpfjgafjgY3jgb7jgZvjgpMiCisKKyM6IHNyYy9oZWxwLmM6MzY4IHNyYy9oZWxwLmM6NDI4CisjLCBjLWZvcm1hdAorbXNnaWQgIm5ldyAlcyBzY3JpcHQiCittc2dzdHIgIuaWsOOBl+OBhCAlcyDjgrnjgq/jg6rjg5fjg4giCisKKyM6IHNyYy9oZWxwLmM6NDAyCisjLCBjLWZvcm1hdAorbXNnaWQgIm9sZCAlcyBzY3JpcHQiCittc2dzdHIgIuWPpOOBhCAlcyDjgrnjgq/jg6rjg5fjg4giCisKKyM6IHNyYy9oZWxwLmM6NDE2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0ICVzICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiJXMgYCUuMjUwcycg44Gu54q25oWL44KS5Y+W5b6X44Gn44GN44G+44Gb44KTOiAlcyIKKworIzogc3JjL2hlbHAuYzo0MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZyAtIHRyeWluZyBzY3JpcHQgZnJvbSB0aGUgbmV3IHBhY2thZ2UgaW5zdGVhZCAuLi5cbiIKK21zZ3N0ciAiZHBrZyAtIOS7o+OCj+OCiuOBq+aWsOimj+ODkeODg+OCseODvOOCuOOBi+OCieOCueOCr+ODquODl+ODiOOCkuWun+ihjOOBl+OBpuOBv+OBvuOBmSAuLi5cbiIKKworIzogc3JjL2hlbHAuYzo0MzkKK21zZ2lkICJ0aGVyZSBpcyBubyBzY3JpcHQgaW4gdGhlIG5ldyB2ZXJzaW9uIG9mIHRoZSBwYWNrYWdlIC0gZ2l2aW5nIHVwIgorbXNnc3RyICLjgZPjga7jg5Hjg4PjgrHjg7zjgrjjga7mlrDjg5Djg7zjgrjjg6fjg7Pjgavjga/jgrnjgq/jg6rjg5fjg4jjgYzjgYLjgorjgb7jgZvjgpPjgILntYLkuobjgZfjgb7jgZkiCisKKyM6IHNyYy9oZWxwLmM6NDQ1CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IC4uLiBpdCBsb29rcyBsaWtlIHRoYXQgd2VudCBPSy5cbiIKK21zZ3N0ciAiZHBrZzogLi4uIE9LIOOBruOCiOOBhuOBp+OBmeOAglxuIgorCisjOiBzcmMvaGVscC5jOjYxNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2VjdXJlbHkgcmVtb3ZlICclLjI1NXMnIgorbXNnc3RyICInJS4yNTVzJyDjgpLlronlhajjgavliYrpmaTjgafjgY3jgb7jgZvjgpMiCisKKyM6IHNyYy9oZWxwLmM6NjIxIGRwa2ctZGViL2luZm8uYzo2NSBkcGtnLWRlYi9pbmZvLmM6NjcKK21zZ2lkICJybSBjb21tYW5kIGZvciBjbGVhbnVwIgorbXNnc3RyICIiCisKKyM6IHNyYy9pbmZvZGIuYzo1MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hlY2sgZXhpc3RlbmNlIG9mIGAlLjI1MHMnIgorbXNnc3RyICJgJS4yNTBzJyDjga7lrZjlnKjjgpLnorroqo3jgafjgY3jgb7jgZvjgpMiCisKKyM6IHNyYy9pbmZvZGIuYzo3MAorbXNnaWQgImNhbm5vdCByZWFkIGluZm8gZGlyZWN0b3J5IgorbXNnc3RyICLmg4XloLHjg4fjgqPjg6zjgq/jg4jjg6rjgpLoqq3jgb/lj5bjgozjgb7jgZvjgpMiCisKKyM6IHNyYy9tYWluLmM6NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuIGAlcycgcGFja2FnZSBtYW5hZ2VtZW50IHByb2dyYW0gdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiRGViaWFuIGAlcycg44OR44OD44Kx44O844K4566h55CG44OX44Ot44Kw44Op44OgIOODkOODvOOCuOODp+ODsyAlc+OAglxuIgorCisjOiBzcmMvbWFpbi5jOjg1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1pfC0taW5zdGFsbCAgICAgICA8LmRlYiBmaWxlIG5hbWU+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXJlY3Rvcnk+IC4uLlxuIgorIiAgLS11bnBhY2sgICAgICAgICAgIDwuZGViIGZpbGUgbmFtZT4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRpcmVjdG9yeT4gLi4uXG4iCisiICAtQXwtLXJlY29yZC1hdmFpbCAgPC5kZWIgZmlsZSBuYW1lPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyZWN0b3J5PiAuLi5cbiIKKyIgIC0tY29uZmlndXJlICAgICAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtLXRyaWdnZXJzLW9ubHkgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLXJ8LS1yZW1vdmUgICAgICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC1QfC0tcHVyZ2UgICAgICAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtLWdldC1zZWxlY3Rpb25zIFs8cGF0dGVybj4gLi4uXSBHZXQgbGlzdCBvZiBzZWxlY3Rpb25zIHRvIHN0ZG91dC5cbiIKKyIgIC0tc2V0LXNlbGVjdGlvbnMgICAgICAgICAgICAgICAgIFNldCBwYWNrYWdlIHNlbGVjdGlvbnMgZnJvbSBzdGRpbi5cbiIKKyIgIC0tY2xlYXItc2VsZWN0aW9ucyAgICAgICAgICAgICAgIERlc2VsZWN0IGV2ZXJ5IG5vbi1lc3NlbnRpYWwgcGFja2FnZS5cbiIKKyIgIC0tdXBkYXRlLWF2YWlsIDxQYWNrYWdlcy1maWxlPiAgIFJlcGxhY2UgYXZhaWxhYmxlIHBhY2thZ2VzIGluZm8uXG4iCisiICAtLW1lcmdlLWF2YWlsIDxQYWNrYWdlcy1maWxlPiAgICBNZXJnZSB3aXRoIGluZm8gZnJvbSBmaWxlLlxuIgorIiAgLS1jbGVhci1hdmFpbCAgICAgICAgICAgICAgICAgICAgRXJhc2UgZXhpc3RpbmcgYXZhaWxhYmxlIGluZm8uXG4iCisiICAtLWZvcmdldC1vbGQtdW5hdmFpbCAgICAgICAgICAgICBGb3JnZXQgdW5pbnN0YWxsZWQgdW5hdmFpbGFibGUgcGtncy5cbiIKKyIgIC1zfC0tc3RhdHVzIDxwYWNrYWdlPiAuLi4gICAgICAgIERpc3BsYXkgcGFja2FnZSBzdGF0dXMgZGV0YWlscy5cbiIKKyIgIC1wfC0tcHJpbnQtYXZhaWwgPHBhY2thZ2U+IC4uLiAgIERpc3BsYXkgYXZhaWxhYmxlIHZlcnNpb24gZGV0YWlscy5cbiIKKyIgIC1MfC0tbGlzdGZpbGVzIDxwYWNrYWdlPiAuLi4gICAgIExpc3QgZmlsZXMgYG93bmVkJyBieSBwYWNrYWdlKHMpLlxuIgorIiAgLWx8LS1saXN0IFs8cGF0dGVybj4gLi4uXSAgICAgICAgTGlzdCBwYWNrYWdlcyBjb25jaXNlbHkuXG4iCisiICAtU3wtLXNlYXJjaCA8cGF0dGVybj4gLi4uICAgICAgICBGaW5kIHBhY2thZ2Uocykgb3duaW5nIGZpbGUocykuXG4iCisiICAtQ3wtLWF1ZGl0ICAgICAgICAgICAgICAgICAgICAgICBDaGVjayBmb3IgYnJva2VuIHBhY2thZ2UocykuXG4iCisiICAtLXByaW50LWFyY2hpdGVjdHVyZSAgICAgICAgICAgICBQcmludCBkcGtnIGFyY2hpdGVjdHVyZS5cbiIKKyIgIC0tY29tcGFyZS12ZXJzaW9ucyA8YT4gPG9wPiA8Yj4gIENvbXBhcmUgdmVyc2lvbiBudW1iZXJzIC0gc2VlIGJlbG93LlxuIgorIiAgLS1mb3JjZS1oZWxwICAgICAgICAgICAgICAgICAgICAgU2hvdyBoZWxwIG9uIGZvcmNpbmcuXG4iCisiICAtRGh8LS1kZWJ1Zz1oZWxwICAgICAgICAgICAgICAgICBTaG93IGhlbHAgb24gZGVidWdnaW5nLlxuIgorIlxuIgorbXNnc3RyICIiCisi44Kz44Oe44Oz44OJOlxuIgorIiAgLWl8LS1pbnN0YWxsICAgICAgPC5kZWIg44OV44Kh44Kk44Or5ZCNPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA844OH44Kj44Os44Kv44OI44OqIgorIj4gLi4uXG4iCisiICAtLXVucGFjayAgICAgICAgICA8LmRlYiDjg5XjgqHjgqTjg6vlkI0+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDzjg4fjgqPjg6zjgq/jg4jjg6oiCisiPiAuLi5cbiIKKyIgIC1BfC0tcmVjb3JkLWF2YWlsIDwuZGViIOODleOCoeOCpOODq+WQjT4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPOODh+OCo+ODrOOCr+ODiOODqiIKKyI+IC4uLlxuIgorIiAgLS1jb25maWd1cmUgICAgICAgPOODkeODg+OCseODvOOCuOWQjT4gLi4uICAgIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtLXRyaWdnZXJzLW9ubHkgICA844OR44OD44Kx44O844K45ZCNPiAuLi4gICAgfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC1yfC0tcmVtb3ZlICAgICAgIDzjg5Hjg4PjgrHjg7zjgrjlkI0+IC4uLiAgICB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLVB8LS1wdXJnZSAgICAgICAgPOODkeODg+OCseODvOOCuOWQjT4gLi4uICAgIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtLWdldC1zZWxlY3Rpb25zIFs844OR44K/44O844OzPiAuLi5dICDmqJnmupblh7rlipvjgavjg5Hjg4PjgrHjg7zjgrjpgbjmip7kuIDopqfjgpLooajnpLpcbiIKKyIgIC0tc2V0LXNlbGVjdGlvbnMgICAgICAgICAgICAgICAgICAg5qiZ5rqW5YWl5Yqb44GL44KJ44OR44OD44Kx44O844K46YG45oqe5LiA6Kan44KS6Kit5a6aXG4iCisiICAtLWNsZWFyLXNlbGVjdGlvbnMgICAgICAgICAgICAgICAgIOOBmeOBueOBpuOBruW/hemgiOOBp+OBquOBhOODkeODg+OCseODvOOCuOOCkumBuOaKnuino+mZpFxuIgorIiAgLS11cGRhdGUtYXZhaWwgPFBhY2thZ2VzIOODleOCoeOCpOODqz4g5Y+W5b6X5Y+v6IO944Gq44OR44OD44Kx44O844K45oOF5aCx44KS5pu05pawXG4iCisiICAtLW1lcmdlLWF2YWlsIDxQYWNrYWdlcyDjg5XjgqHjgqTjg6s+ICDjg5XjgqHjgqTjg6vjgYvjgonjg5Hjg4PjgrHjg7zjgrjmg4XloLHjgpLlkIjmiJBcbiIKKyIgIC0tY2xlYXItYXZhaWwgICAgICAgICAgICAgICAgICAgICAg5pei5a2Y44Gu5Y+W5b6X5Y+v6IO944OR44OD44Kx44O844K45oOF5aCx44KS5raI5Y67XG4iCisiICAtLWZvcmdldC1vbGQtdW5hdmFpbCAgICAgICAgICAgICAgIOacquOCpOODs+OCueODiOODvOODq+OBruWIqeeUqOS4jeWPr+iDveODkeODg+OCseODvOOCuOaDheWgsSIKKyLjga7noLTmo4RcbiIKKyIgIC1zfC0tc3RhdHVzIDzjg5Hjg4PjgrHjg7zjgrjlkI0+IC4uLiAgICAg44OR44OD44Kx44O844K454q25oWL44Gu6Kmz57Sw44KS6KGo56S6XG4iCisiICAtcHwtLXByaW50LWF2YWlsIDzjg5Hjg4PjgrHjg7zjgrjlkI0+IC4uLuWPluW+l+WPr+iDveOBquODkOODvOOCuOODp+ODs+OBruips+e0sOOCkuihqOekulxuIgorIiAgLUx8LS1saXN0ZmlsZXMgPOODkeODg+OCseODvOOCuOWQjT4gLi4uICDjg5Hjg4PjgrHjg7zjgrjjgYzjgIzmiYDmnInjgZnjgovjgI3jg5XjgqHjgqTjg6vkuIDopqfjgpLooagiCisi56S6XG4iCisiICAtbHwtLWxpc3QgWzzjg5Hjgr/jg7zjg7M+IC4uLl0gICAgICAgICDjg5Hjg4PjgrHjg7zjgrjjga7kuIDopqfjgpLnsKHmvZTjgavooajnpLpcbiIKKyIgIC1TfC0tc2VhcmNoIDzjg5Hjgr/jg7zjg7M+IC4uLiAgICAgICAgIOODleOCoeOCpOODq+OCkuaJgOacieOBmeOCi+ODkeODg+OCseODvOOCuOOCkuaknOe0olxuIgorIiAgLUN8LS1hdWRpdCAgICAgICAgICAgICAgICAgICAgICAgICDlo4rjgozjgabjgYTjgovjg5Hjg4PjgrHjg7zjgrjjga7jg4Hjgqfjg4Pjgq9cbiIKKyIgIC0tcHJpbnQtYXJjaGl0ZWN0dXJlICAgICAgICAgICAgICAg5a++6LGh44Ki44O844Kt44OG44Kv44OB44Oj44KS6KGo56S6IChHQ0Mg44KS5L2/55SoKVxuIgorIiAgLS1jb21wYXJlLXZlcnNpb25zIDxhPiA8b3A+IDxiPiAgICDjg5Djg7zjgrjjg6fjg7Pnlarlj7fjgpLmr5TovIMgLSDkuIvoqJjlj4LnhadcbiIKKyIgIC0tZm9yY2UtaGVscCAgICAgICAgICAgICAgICAgICAgICAg5by35Yi244Kq44OX44K344On44Oz44Gu44OY44Or44OXXG4iCisiICAtRGh8LS1kZWJ1Zz1oZWxwICAgICAgICAgICAgICAgICAgIOODh+ODkOODg+OCsOOCquODl+OCt+ODp+ODs+OBruODmOODq+ODl1xuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjExMyBzcmMvcXVlcnljbWQuYzo2MzEgc3JjL3RyaWdjbWQuYzo3NyBkcGtnLWRlYi9tYWluLmM6ODgKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjc3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIgIC1ofC0taGVscCAgICAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgICAgICAgICBTaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorbXNnc3RyICIiCisiICAtaCB8IC0taGVscCAgICAgICAgICAgICAgICAgICAgICAgICDjgZPjga7jg5jjg6vjg5fjgpLooajnpLpcbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgICAgICAgICAgIOODkOODvOOCuOODp+ODs+eVquWPt+OCkuihqOekulxuIgorCisjOiBzcmMvbWFpbi5jOjExOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVXNlIGRwa2cgLWJ8LS1idWlsZHwtY3wtLWNvbnRlbnRzfC1lfC0tY29udHJvbHwtSXwtLWluZm98LWZ8LS1maWVsZHxcbiIKKyIgLXh8LS1leHRyYWN0fC1YfC0tdmV4dHJhY3R8LS1mc3lzLXRhcmZpbGUgIG9uIGFyY2hpdmVzICh0eXBlICVzIC0taGVscCkuXG4iCisiXG4iCittc2dzdHIgIiIKKyLjgqLjg7zjgqvjgqTjg5bjga7mk43kvZzjgavjga8gZHBrZyAtYnwtLWJ1aWxkfC1jfC0tY29udGVudHN8LWV8LS1jb250cm9sfC1JfC0taW5mb3xcbiIKKyIgLWZ8LS1maWVsZHwteHwtLWV4dHJhY3R8LVh8LS12ZXh0cmFjdHwtLWZzeXMtdGFyZmlsZSDjgpLkvb/nlKjjgZnjgovjgZPjgaggKCVzIC0tIgorImhlbHAg44KS5Y+C54WnKVxuIgorCisjOiBzcmMvbWFpbi5jOjEyMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiRm9yIGludGVybmFsIHVzZTogZHBrZyAtLWFzc2VydC1zdXBwb3J0LXByZWRlcGVuZHMgfCAtLXByZWRlcC1wYWNrYWdlIHxcbiIKKyIgIC0tYXNzZXJ0LXdvcmtpbmctZXBvY2ggfCAtLWFzc2VydC1sb25nLWZpbGVuYW1lcyB8IC0tYXNzZXJ0LW11bHRpLWNvbnJlcC5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIuWGhemDqOWIqeeUqOeUqDogZHBrZyAtLWFzc2VydC1zdXBwb3J0LXByZWRlcGVuZHMgfCAtLXByZWRlcC1wYWNrYWdlIHxcbiIKKyIgIC0tYXNzZXJ0LXdvcmtpbmctZXBvY2ggfCAtLWFzc2VydC1sb25nLWZpbGVuYW1lcyB8IC0tYXNzZXJ0LW11bHRpLWNvbnJlcFxuIgorCisjOiBzcmMvbWFpbi5jOjEyOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT4gICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorIiAgLS1yb290PTxkaXJlY3Rvcnk+ICAgICAgICAgSW5zdGFsbCBvbiBhIGRpZmZlcmVudCByb290IGRpcmVjdG9yeS5cbiIKKyIgIC0taW5zdGRpcj08ZGlyZWN0b3J5PiAgICAgIENoYW5nZSBpbnN0YWxsYXRpb24gZGlyIHdpdGhvdXQgY2hhbmdpbmcgYWRtaW4gIgorImRpci5cbiIKKyIgIC0tcGF0aC1leGNsdWRlPTxwYXR0ZXJuPiAgIERvIG5vdCBpbnN0YWxsIHBhdGhzIHdoaWNoIG1hdGNoIGEgc2hlbGwgIgorInBhdHRlcm4uXG4iCisiICAtLXBhdGgtaW5jbHVkZT08cGF0dGVybj4gICBSZS1pbmNsdWRlIGEgcGF0dGVybiBhZnRlciBhIHByZXZpb3VzICIKKyJleGNsdXNpb24uXG4iCisiICAtT3wtLXNlbGVjdGVkLW9ubHkgICAgICAgICBTa2lwIHBhY2thZ2VzIG5vdCBzZWxlY3RlZCBmb3IgaW5zdGFsbC8iCisidXBncmFkZS5cbiIKKyIgIC1FfC0tc2tpcC1zYW1lLXZlcnNpb24gICAgIFNraXAgcGFja2FnZXMgd2hvc2Ugc2FtZSB2ZXJzaW9uIGlzIGluc3RhbGxlZC5cbiIKKyIgIC1HfC0tcmVmdXNlLWRvd25ncmFkZSAgICAgIFNraXAgcGFja2FnZXMgd2l0aCBlYXJsaWVyIHZlcnNpb24gdGhhbiAiCisiaW5zdGFsbGVkLlxuIgorIiAgLUJ8LS1hdXRvLWRlY29uZmlndXJlICAgICAgSW5zdGFsbCBldmVuIGlmIGl0IHdvdWxkIGJyZWFrIHNvbWUgb3RoZXIgIgorInBhY2thZ2UuXG4iCisiICAtLVtuby1ddHJpZ2dlcnMgICAgICAgICAgICBTa2lwIG9yIGZvcmNlIGNvbnNlcXVlbnRpYWwgdHJpZ2dlciAiCisicHJvY2Vzc2luZy5cbiIKKyIgIC0tbm8tZGVic2lnICAgICAgICAgICAgICAgIERvIG5vdCB0cnkgdG8gdmVyaWZ5IHBhY2thZ2Ugc2lnbmF0dXJlcy5cbiIKKyIgIC0tbm8tYWN0fC0tZHJ5LXJ1bnwtLXNpbXVsYXRlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBKdXN0IHNheSB3aGF0IHdlIHdvdWxkIGRvIC0gZG9uJ3QgZG8gaXQuXG4iCisiICAtRHwtLWRlYnVnPTxvY3RhbD4gICAgICAgICBFbmFibGUgZGVidWdnaW5nIChzZWUgLURoZWxwIG9yIC0tZGVidWc9aGVscCkuXG4iCisiICAtLXN0YXR1cy1mZCA8bj4gICAgICAgICAgICBTZW5kIHN0YXR1cyBjaGFuZ2UgdXBkYXRlcyB0byBmaWxlIGRlc2NyaXB0b3IgIgorIjxuPi5cbiIKKyIgIC0tbG9nPTxmaWxlbmFtZT4gICAgICAgICAgIExvZyBzdGF0dXMgY2hhbmdlcyBhbmQgYWN0aW9ucyB0byA8ZmlsZW5hbWU+LlxuIgorIiAgLS1pZ25vcmUtZGVwZW5kcz08cGFja2FnZT4sLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZ25vcmUgZGVwZW5kZW5jaWVzIGludm9sdmluZyA8cGFja2FnZT4uXG4iCisiICAtLWZvcmNlLS4uLiAgICAgICAgICAgICAgICBPdmVycmlkZSBwcm9ibGVtcyAoc2VlIC0tZm9yY2UtaGVscCkuXG4iCisiICAtLW5vLWZvcmNlLS4uLnwtLXJlZnVzZS0uLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3Agd2hlbiBwcm9ibGVtcyBlbmNvdW50ZXJlZC5cbiIKKyIgIC0tYWJvcnQtYWZ0ZXIgPG4+ICAgICAgICAgIEFib3J0IGFmdGVyIGVuY291bnRlcmluZyA8bj4gZXJyb3JzLlxuIgorIlxuIgorbXNnc3RyICIiCisi44Kq44OX44K344On44OzOlxuIgorIiAgLS1hZG1pbmRpcj0844OH44Kj44Os44Kv44OI44OqPiAgJXMg44Gu5Luj44KP44KK44Gr5oyH5a6a44GuIDzjg4fjgqPjg6zjgq/jg4jjg6o+IOOCkuS9v+eUqOOBmeOCi1xuIgorIiAgLS1yb290PTzjg4fjgqPjg6zjgq/jg4jjg6o+ICAgICAg44Or44O844OI44OH44Kj44Os44Kv44OI44Oq44KS5Yil44Gu5aC05omA44Gr44GX44Gm44Kk44Oz44K544OI44O844Or44GZIgorIuOCi1xuIgorIiAgLS1pbnN0ZGlyPTzjg4fjgqPjg6zjgq/jg4jjg6o+ICAg44Kk44Oz44K544OI44O844Or5YWI44Gu44OH44Kj44Os44Kv44OI44Oq44KS5aSJ5pu0ICjnrqHnkIbjg4fjgqPjg6zjgq8iCisi44OI44Oq44Gv6Zmk44GPKVxuIgorIiAgLS1wYXRoLWV4Y2x1ZGU9POODkeOCv+ODvOODsz4gIOOCt+OCp+ODq+ODkeOCv+ODvOODs+OBq+ODnuODg+ODgeOBmeOCi+ODkeOCueOBq+OCpOODs+OCueODiOODvOODq+OBl+OBqiIKKyLjgYRcbiIKKyIgIC0tcGF0aC1pbmNsdWRlPTzjg5Hjgr/jg7zjg7M+ICDkuIroqJjjga7pmaTlpJblvozjgavjg5Hjgr/jg7zjg7PjgpLlho3luqblkKvjgoHjgotcbiIKKyIgIC1PfC0tc2VsZWN0ZWQtb25seSAgICAgICAgIOOCpOODs+OCueODiOODvOODqy/jgqLjg4Pjg5fjgrDjg6zjg7zjg4njgavpgbjmip7jgZXjgozjgabjgYTjgarjgYQiCisi44OR44OD44Kx44O844K444KS44K544Kt44OD44OX44GZ44KLXG4iCisiICAtRXwtLXNraXAtc2FtZS12ZXJzaW9uICAgICDlkIzjg5Djg7zjgrjjg6fjg7PjgYzjgqTjg7Pjgrnjg4jjg7zjg6vmuIjjgb/jga7jg5Hjg4PjgrHjg7zjgrjjgpLjgrkiCisi44Kt44OD44OX44GZ44KLXG4iCisiICAtR3wtLXJlZnVzZS1kb3duZ3JhZGUgICAgICDjgqTjg7Pjgrnjg4jjg7zjg6vmuIjjgb/jg5Hjg4PjgrHjg7zjgrjjgojjgorlj6TjgYTjg5Djg7zjgrjjg6fjg7Pjga4iCisi44OR44OD44Kx44O844K444KS44K544Kt44OD44OX44GZ44KLXG4iCisiICAtQnwtLWF1dG8tZGVjb25maWd1cmUgICAgICDjgbvjgYvjga7jg5Hjg4PjgrHjg7zjgrjjgpLlo4rjgZfjgabjgafjgoLjgqTjg7Pjgrnjg4jjg7zjg6vjgZnjgotcbiIKKyIgIC0tW25vLV10cmlnZ2VycyAgICAgICAgICAgIOmWk+aOpeODiOODquOCrOWHpueQhuOCkuOCueOCreODg+ODl+OBvuOBn+OBr+W8t+WItuOBmeOCi1xuIgorIiAgLS1uby1kZWJzaWcgICAgICAgICAgICAgICAg44OR44OD44Kx44O844K444Gu572y5ZCN44Gu5qSc6Ki844KS44GX44Gq44GEXG4iCisiICAtLW5vLWFjdHwtLWRyeS1ydW58LS1zaW11bGF0ZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg5L2V44KS44GZ44KL44GL6KGo56S644GX44Gm44CB5a6f6Zqb44Gr44Gv5L2V44KC44GX44Gq44GEXG4iCisiICAtRHwtLWRlYnVnPTw46YCy5pWwPiAgICAgICAgIOODh+ODkOODg+OCsOODouODvOODiSAoLURoZWxwIOOBvuOBn+OBryAtLWRlYnVnPWhlbHAg44KS5Y+CIgorIueFpylcbiIKKyIgIC0tc3RhdHVzLWZkIDxuPiAgICAgICAgICAgIOeKtuaFi+WkieWMluOBruabtOaWsOOCkuODleOCoeOCpOODq+iomOi/sOWtkCA8bj4g44Gr6YCB44KLXG4iCisiICAtLWxvZz0844OV44Kh44Kk44Or5ZCNPiAgICAgICAgIOeKtuaFi+WkieabtOOBiuOCiOOBs+OCouOCr+OCt+ODp+ODs+OCkuaMh+WumuOBriA844OV44Kh44Kk44Or5ZCNPiDjgasiCisi6KiY6Yyy44GZ44KLXG4iCisiICAtLWlnbm9yZS1kZXBlbmRzPTzjg5Hjg4PjgrHjg7zjgrg+LC4uLiBcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA844OR44OD44Kx44O844K4PiDjgpLlkbzjgbPlh7rjgZnkvp3lrZjplqLkv4LjgpLnhKHoppbjgZnjgotcbiIKKyIgIC0tZm9yY2UtLi4uICAgICAgICAgICAgICAgICAgICDllY/poYzjgpLnhKHoppbjgZnjgosgKC0tZm9yY2UtaGVscCDjgpLlj4LnhacpXG4iCisiICAtLW5vLWZvcmNlLS4uLnwtLXJlZnVzZS0uLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDllY/poYzjgYznmbrnlJ/jgZfjgZ/mmYLngrnjgafntYLkuobjgZnjgotcbiIKKyIgIC0tYWJvcnQtYWZ0ZXIgPG4+ICAgICAgICAgICAgICA8bj4g5Zue44Ko44Op44O844GM55m655Sf44GX44Gf44KJ5Lit5pat44GZ44KLXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTU0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21wYXJpc29uIG9wZXJhdG9ycyBmb3IgLS1jb21wYXJlLXZlcnNpb25zIGFyZTpcbiIKKyIgIGx0IGxlIGVxIG5lIGdlIGd0ICAgICAgICh0cmVhdCBlbXB0eSB2ZXJzaW9uIGFzIGVhcmxpZXIgdGhhbiBhbnkgIgorInZlcnNpb24pO1xuIgorIiAgbHQtbmwgbGUtbmwgZ2UtbmwgZ3QtbmwgKHRyZWF0IGVtcHR5IHZlcnNpb24gYXMgbGF0ZXIgdGhhbiBhbnkgdmVyc2lvbik7XG4iCisiICA8IDw8IDw9ID0gPj0gPj4gPiAgICAgICAob25seSBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIGNvbnRyb2wgZmlsZSAiCisic3ludGF4KS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIi0tY29tcGFyZS12ZXJzaW9ucyDnlKjmr5TovIPmvJTnrpflrZA6XG4iCisiIGx0IGxlIGVxIG5lIGdlIGd0ICAgICAgICjjg5Djg7zjgrjjg6fjg7PjgarjgZfjga/jganjga7jg5Djg7zjgrjjg6fjg7PjgojjgorjgoLlj6TjgYTjgajopovjgarjgZkpXG4iCisiIGx0LW5sIGxlLW5sIGdlLW5sIGd0LW5sICjjg5Djg7zjgrjjg6fjg7PjgarjgZfjga/jganjga7jg5Djg7zjgrjjg6fjg7PjgojjgorjgoLmlrDjgZfjgYTjgajopovjgaoiCisi44GZKVxuIgorIiA8IDw8IDw9ID0gPj0gPj4gPiAgICAgICAo44Kz44Oz44OI44Ot44O844Or44OV44Kh44Kk44Or44Gu5qeL5paH44Gu5LqS5o+b5oCn44Gu44G/KVxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjE2MQorIywgYy1mb3JtYXQKK21zZ2lkICJVc2UgYGRzZWxlY3QnIG9yIGBhcHRpdHVkZScgZm9yIHVzZXItZnJpZW5kbHkgcGFja2FnZSBtYW5hZ2VtZW50LlxuIgorbXNnc3RyICIiCisi44Om44O844K25ZCR44GR44OR44OD44Kx44O844K4566h55CG44OE44O844Or44Gn44GC44KLIGBkc2VsZWN0JyDjgb7jgZ/jga8gYGFwdGl0dWRlJyDjgpLkvb/jgYTjgb7jgZfjgociCisi44GG44CCXG4iCisKKyM6IHNyYy9tYWluLmM6MTcwCittc2dpZCAiIgorIlR5cGUgZHBrZyAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgaW5zdGFsbGluZyBhbmQgZGVpbnN0YWxsaW5nIHBhY2thZ2VzIFsqXTtcbiIKKyJVc2UgYGRzZWxlY3QnIG9yIGBhcHRpdHVkZScgZm9yIHVzZXItZnJpZW5kbHkgcGFja2FnZSBtYW5hZ2VtZW50O1xuIgorIlR5cGUgZHBrZyAtRGhlbHAgZm9yIGEgbGlzdCBvZiBkcGtnIGRlYnVnIGZsYWcgdmFsdWVzO1xuIgorIlR5cGUgZHBrZyAtLWZvcmNlLWhlbHAgZm9yIGEgbGlzdCBvZiBmb3JjaW5nIG9wdGlvbnM7XG4iCisiVHlwZSBkcGtnLWRlYiAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgbWFuaXB1bGF0aW5nICouZGViIGZpbGVzO1xuIgorIlxuIgorIk9wdGlvbnMgbWFya2VkIFsqXSBwcm9kdWNlIGEgbG90IG9mIG91dHB1dCAtIHBpcGUgaXQgdGhyb3VnaCBgbGVzcycgb3IgIgorImBtb3JlJyAhIgorbXNnc3RyICIiCisi44OR44OD44Kx44O844K444Gu44Kk44Oz44K544OI44O844Or44GK44KI44Gz44Ki44Oz44K544OI44O844Or44Gr44Gk44GE44Gm44Gu5oOF5aCx44GvIGRwa2cgLS1oZWxwIOOBp+WPgiIKKyLnhacgWypdO1xuIgorIuODpuODvOOCtuWQkeOBkeODkeODg+OCseODvOOCuOeuoeeQhuODhOODvOODq+OBp+OBguOCiyBgZHNlbGVjdCcg44G+44Gf44GvIGBhcHRpdHVkZScg44KS5L2/44GE44G+44GX44KHIgorIuOBhjtcbiIKKyLjg4fjg5Djg4PjgrDjg5Xjg6njgrDjga7kuIDopqfjga8gZHBrZyAtRGhlbHAg44Gn5Y+C54WnO1xuIgorIuW8t+WItuOCquODl+OCt+ODp+ODs+OBruS4gOimp+OBryBkcGtnIC0tZm9yY2UtaGVscCDjgaflj4Lnhac7XG4iCisiKi5kZWIg44OV44Kh44Kk44Or5pON5L2c44Gu44OY44Or44OX44GvIGRwa2ctZGViIC0taGVscCDjgaflj4Lnhac7XG4iCisiXG4iCisiWypdIOOBruOBguOCi+OCguOBruOBr+Wkp+mHj+OBruaDheWgseOBjOWHuuWKm+OBleOCjOOBvuOBmeOAgmBsZXNzJyDjgoQgYG1vcmUnIOOBq+ODkeOCpOODl+OBmeOCi+OCiOOBhuOBqyIKKyLjgZfjgabjgY/jgaDjgZXjgYQhIgorCisjOiBzcmMvbWFpbi5jOjIxOQorbXNnaWQgIlNldCBhbGwgZm9yY2Ugb3B0aW9ucyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIyMQorbXNnaWQgIlJlcGxhY2UgYSBwYWNrYWdlIHdpdGggYSBsb3dlciB2ZXJzaW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjIzCittc2dpZCAiQ29uZmlndXJlIGFueSBwYWNrYWdlIHdoaWNoIG1heSBoZWxwIHRoaXMgb25lIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjI1Cittc2dpZCAiUHJvY2VzcyBpbmNpZGVudGFsIHBhY2thZ2VzIGV2ZW4gd2hlbiBvbiBob2xkIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjI3Cittc2dpZCAiVHJ5IHRvIChkZSlpbnN0YWxsIHRoaW5ncyBldmVuIHdoZW4gbm90IHJvb3QiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjkKK21zZ2lkICJQQVRIIGlzIG1pc3NpbmcgaW1wb3J0YW50IHByb2dyYW1zLCBwcm9ibGVtcyBsaWtlbHkiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzEKK21zZ2lkICJJbnN0YWxsIGEgcGFja2FnZSBldmVuIGlmIGl0IGZhaWxzIGF1dGhlbnRpY2l0eSBjaGVjayIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzMworbXNnaWQgIlByb2Nlc3MgZXZlbiBwYWNrYWdlcyB3aXRoIHdyb25nIHZlcnNpb25zIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjM1Cittc2dpZCAiT3ZlcndyaXRlIGEgZmlsZSBmcm9tIG9uZSBwYWNrYWdlIHdpdGggYW5vdGhlciIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzNworbXNnaWQgIk92ZXJ3cml0ZSBhIGRpdmVydGVkIGZpbGUgd2l0aCBhbiB1bmRpdmVydGVkIHZlcnNpb24iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzkKK21zZ2lkICJPdmVyd3JpdGUgb25lIHBhY2thZ2UncyBkaXJlY3Rvcnkgd2l0aCBhbm90aGVyJ3MgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI0MQorbXNnaWQgIkRvIG5vdCBwZXJmb3JtIHNhZmUgSS9PIG9wZXJhdGlvbnMgd2hlbiB1bnBhY2tpbmciCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDMKK21zZ2lkICJBbHdheXMgdXNlIHRoZSBuZXcgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDUKK21zZ2lkICJBbHdheXMgdXNlIHRoZSBvbGQgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDgKK21zZ2lkICIiCisiVXNlIHRoZSBkZWZhdWx0IG9wdGlvbiBmb3IgbmV3IGNvbmZpZyBmaWxlcyBpZiBvbmVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgaXMgYXZhaWxhYmxlLCBkb24ndCBwcm9tcHQuIElmIG5vIGRlZmF1bHQgY2FuIGJlICIKKyJmb3VuZCxcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgeW91IHdpbGwgYmUgcHJvbXB0ZWQgdW5sZXNzIG9uZSBvZiB0aGUgY29uZm9sZCBvclxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICBjb25mbmV3IG9wdGlvbnMgaXMgYWxzbyBnaXZlbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI1MworbXNnaWQgIkFsd2F5cyBpbnN0YWxsIG1pc3NpbmcgY29uZmlnIGZpbGVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjU1Cittc2dpZCAiT2ZmZXIgdG8gcmVwbGFjZSBjb25maWcgZmlsZXMgd2l0aCBubyBuZXcgdmVyc2lvbnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNTcKK21zZ2lkICJQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyBvciBubyBhcmNoaXRlY3R1cmUiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNTkKK21zZ2lkICJJbnN0YWxsIGV2ZW4gaWYgaXQgd291bGQgYnJlYWsgYW5vdGhlciBwYWNrYWdlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjYxCittc2dpZCAiQWxsb3cgaW5zdGFsbGF0aW9uIG9mIGNvbmZsaWN0aW5nIHBhY2thZ2VzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjYzCisjLCBmdXp6eQorI3wgbXNnaWQgImRlcGVuZGVuY3kgcHJvYmxlbXMgLSBub3QgcmVtb3ZpbmciCittc2dpZCAiVHVybiBhbGwgZGVwZW5kZW5jeSBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzIgorbXNnc3RyICLkvp3lrZjplqLkv4Ljga7llY/poYwgLSDliYrpmaTjgZfjgb7jgZvjgpMiCisKKyM6IHNyYy9tYWluLmM6MjY1CisjLCBmdXp6eQorI3wgbXNnaWQgImRlcGVuZGVuY3kgcHJvYmxlbXMgLSBub3QgcmVtb3ZpbmciCittc2dpZCAiVHVybiBkZXBlbmRlbmN5IHZlcnNpb24gcHJvYmxlbXMgaW50byB3YXJuaW5ncyIKK21zZ3N0ciAi5L6d5a2Y6Zai5L+C44Gu5ZWP6aGMIC0g5YmK6Zmk44GX44G+44Gb44KTIgorCisjOiBzcmMvbWFpbi5jOjI2NworbXNnaWQgIlJlbW92ZSBwYWNrYWdlcyB3aGljaCByZXF1aXJlIGluc3RhbGxhdGlvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI2OQorbXNnaWQgIlJlbW92ZSBhbiBlc3NlbnRpYWwgcGFja2FnZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4MQorbXNnaWQgIkdlbmVyYWxseSBoZWxwZnVsIHByb2dyZXNzIGluZm9ybWF0aW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjgyCisjLCBmdXp6eQorI3wgbXNnaWQgInVuYWJsZSB0byBzZXRlbnYgZm9yIG1haW50YWluZXIgc2NyaXB0IgorbXNnaWQgIkludm9jYXRpb24gYW5kIHN0YXR1cyBvZiBtYWludGFpbmVyIHNjcmlwdHMiCittc2dzdHIgIuODoeODs+ODhuODiuOCueOCr+ODquODl+ODiOOBpyBzZXRlbnYg44Gn44GN44G+44Gb44KTIgorCisjOiBzcmMvbWFpbi5jOjI4MworbXNnaWQgIk91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4NAorbXNnaWQgIkxvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg1CisjLCBmdXp6eQorI3wgbXNnaWQgInJlYWQgZXJyb3IgaW4gY29uZmlndXJhdGlvbiBmaWxlIGAlLjI1NXMnIgorbXNnaWQgIk91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGUiCittc2dzdHIgIuioreWumuODleOCoeOCpOODqyBgJS4yNTVzJyDjga7oqq3jgb/ovrzjgb/jgqjjg6njg7wiCisKKyM6IHNyYy9tYWluLmM6Mjg2Cittc2dpZCAiTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggY29uZmlndXJhdGlvbiBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg3Cittc2dpZCAiRGVwZW5kZW5jaWVzIGFuZCBjb25mbGljdHMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODgKK21zZ2lkICJMb3RzIG9mIGRlcGVuZGVuY2llcy9jb25mbGljdHMgb3V0cHV0IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg5Cittc2dpZCAiVHJpZ2dlciBhY3RpdmF0aW9uIGFuZCBwcm9jZXNzaW5nIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjkwCittc2dpZCAiTG90cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjkxCittc2dpZCAiU2lsbHkgYW1vdW50cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjkyCittc2dpZCAiTG90cyBvZiBkcml2ZWwgYWJvdXQgZWcgdGhlIGRwa2cvaW5mbyBkaXJlY3RvcnkiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyOTMKK21zZ2lkICJJbnNhbmUgYW1vdW50cyBvZiBkcml2ZWwiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzozMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzIGRlYnVnZ2luZyBvcHRpb24sIC0tZGVidWc9PG9jdGFsPiBvciAtRDxvY3RhbD46XG4iCisiXG4iCisiIE51bWJlciAgUmVmLiBpbiBzb3VyY2UgICBEZXNjcmlwdGlvblxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MzExCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJEZWJ1Z2dpbmcgb3B0aW9ucyBjYW4gYmUgbWl4ZWQgdXNpbmcgYml0d2lzZS1vci5cbiIKKyJOb3RlIHRoYXQgdGhlIG1lYW5pbmdzIGFuZCB2YWx1ZXMgYXJlIHN1YmplY3QgdG8gY2hhbmdlLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MzE5Cittc2dpZCAiLS1kZWJ1ZyByZXF1aXJlcyBhbiBvY3RhbCBhcmd1bWVudCIKK21zZ3N0ciAiLS1kZWJ1ZyDjga8gOCDpgLLmlbDjga7lvJXmlbDjgYwgMSDjgaTlv4XopoHjgafjgZnjgIIiCisKKyM6IHNyYy9tYWluLmM6MzQ4CisjLCBjLWZvcm1hdAorbXNnaWQgIm51bGwgcGFja2FnZSBuYW1lIGluIC0taWdub3JlLWRlcGVuZHMgY29tbWEtc2VwYXJhdGVkIGxpc3QgYCUuMjUwcyciCittc2dzdHIgIiIKKyItLWlnbm9yZS1kZXBlbmRzIOOBruW8leaVsCAo44Kz44Oz44Oe44Gn5Yy65YiH44KJ44KM44Gf44Oq44K544OIKSBgJS4yNTBzJyDjgavnqbrjga7jg5Hjg4PjgrHjg7zjgrgiCisi5ZCNIgorCisjOiBzcmMvbWFpbi5jOjM1NAorIywgYy1mb3JtYXQKK21zZ2lkICItLWlnbm9yZS1kZXBlbmRzIHJlcXVpcmVzIGEgbGVnYWwgcGFja2FnZSBuYW1lLiBgJS4yNTBzJyBpcyBub3Q7ICVzIgorbXNnc3RyICIiCisiLS1pZ25vcmUtZGVwZW5kcyDjga/mraPlvZPjgarjg5Hjg4PjgrHjg7zjgrjlkI3jgpLlv4XopoHjgajjgZfjgb7jgZnjgIJgJS4yNTBzJyDjga/kuI3mraPjgafjgZk7ICVzIgorCisjOiBzcmMvbWFpbi5jOjM3MSBzcmMvbWFpbi5jOjM4MSBzcmMvbWFpbi5jOjY0OSBkcGtnLXNwbGl0L21haW4uYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBpbnRlZ2VyIGZvciAtLSVzOiBgJS4yNTBzJyIKK21zZ3N0ciAiLS0lcyDjgavlr77jgZnjgovkuI3mraPjgarmlbTmlbDjgafjgZk6IGAlLjI1MHMnIgorCisjOiBzcmMvbWFpbi5jOjQzOAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBleGVjdXRpbmcgaG9vayAnJXMnLCBleGl0IGNvZGUgJWQiCittc2dzdHIgIuODleODg+OCryAnJXMnIOOBruWun+ihjOS4reOBq+OCqOODqeODvOOBjOeZuueUn+OBl+OBvuOBl+OBn+OAgue1guS6huOCs+ODvOODiSAlZCIKKworIzogc3JjL21haW4uYzo0NjUKKyMsIGZ1enp5CisjfCBtc2dpZCAic3RhdHVzIgorbXNnaWQgInN0YXR1cyBsb2dnZXIiCittc2dzdHIgIueKtuaFiyIKKworIzogc3JjL21haW4uYzo0ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzIGZvcmNpbmcgb3B0aW9ucyAtIGNvbnRyb2wgYmVoYXZpb3VyIHdoZW4gcHJvYmxlbXMgZm91bmQ6XG4iCisiICB3YXJuIGJ1dCBjb250aW51ZTogIC0tZm9yY2UtPHRoaW5nPiw8dGhpbmc+LC4uLlxuIgorIiAgc3RvcCB3aXRoIGVycm9yOiAgICAtLXJlZnVzZS08dGhpbmc+LDx0aGluZz4sLi4uIHwgLS1uby1mb3JjZS08dGhpbmc+LC4uLlxuIgorIiBGb3JjaW5nIHRoaW5nczpcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjQ5MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiV0FSTklORyAtIHVzZSBvZiBvcHRpb25zIG1hcmtlZCBbIV0gY2FuIHNlcmlvdXNseSBkYW1hZ2UgeW91ciBpbnN0YWxsYXRpb24uXG4iCisiRm9yY2luZyBvcHRpb25zIG1hcmtlZCBbKl0gYXJlIGVuYWJsZWQgYnkgZGVmYXVsdC5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjUwNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGZvcmNlL3JlZnVzZSBvcHRpb24gYCUuKnMnIgorbXNnc3RyICLkuI3mmI7jgarlvLfliLbjg7vmi5LlkKYgKGZvcmNlL3JlZnVzZSkg44Kq44OX44K344On44OzIGAlLipzJyIKKworIzogc3JjL21haW4uYzo1MTMKKyMsIGMtZm9ybWF0Cittc2dpZCAib2Jzb2xldGUgZm9yY2UvcmVmdXNlIG9wdGlvbiAnJXMnXG4iCittc2dzdHIgIuaZguS7o+mBheOCjOOBruW8t+WItuODu+aLkuWQpiAoZm9yY2UvcmVmdXNlKSDjgqrjg5fjgrfjg6fjg7MgYCVzJ1xuIgorCisjOiBzcmMvbWFpbi5jOjY0MworbXNnaWQgIi0tY29tbWFuZC1mZCB0YWtlcyBvbmUgYXJndW1lbnQsIG5vdCB6ZXJvIgorbXNnc3RyICItLWNvbW1hbmQtZmQg44GvIDEg44Gk44Gu5byV5pWwICjjgarjgZfjgafjga/jgYLjgorjgb7jgZvjgpMpIOOCkuOBqOOCiuOBvuOBmSIKKworIzogc3JjL21haW4uYzo2NDUKK21zZ2lkICItLWNvbW1hbmQtZmQgb25seSB0YWtlcyBvbmUgYXJndW1lbnQiCittc2dzdHIgIi0tY29tbWFuZC1mZCDjga/lvJXmlbDjgpIgMSDjgaTjgaDjgZHlvJXmlbDjgpLjgajjgorjgb7jgZkiCisKKyM6IHNyYy9tYWluLmM6NjUxCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkbid0IG9wZW4gYCVpJyBmb3Igc3RyZWFtIgorbXNnc3RyICJgJWknIOOCkuOCueODiOODquODvOODoOOBqOOBl+OBpuOCquODvOODl+ODs+OBp+OBjeOBvuOBm+OCk+OBp+OBl+OBnyIKKworIzogc3JjL21haW4uYzo2NzYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgYmVmb3JlIGVuZCBvZiBsaW5lICVkIgorbXNnc3RyICIlZCDooYznm67jga7ooYzmnKvjgb7jgafjgavkuojmnJ/jgZfjgarjgYQgZW9mIOOBjOOBguOCiuOBvuOBmSIKKworIzogc3JjL21haW4uYzo3MTkgc3JjL21haW4uYzo3NDEgc3JjL3F1ZXJ5Y21kLmM6NjkyIHNyYy9zdGF0Y21kLmM6Mzc5CisjOiBkcGtnLWRlYi9tYWluLmM6MjAxIGRwa2ctc3BsaXQvbWFpbi5jOjE2MworbXNnaWQgIm5lZWQgYW4gYWN0aW9uIG9wdGlvbiIKK21zZ3N0ciAi44Ki44Kv44K344On44Oz44KS5oyH5a6a44GZ44KL44Kq44OX44K344On44Oz44GM5b+F6KaB44Gn44GZIgorCisjOiBzcmMvcGFja2FnZXMuYzoxMTMKK21zZ2lkICIiCisieW91IG11c3Qgc3BlY2lmeSBwYWNrYWdlcyBieSB0aGVpciBvd24gbmFtZXMsIG5vdCBieSBxdW90aW5nIHRoZSBuYW1lcyBvZiAiCisidGhlIGZpbGVzIHRoZXkgY29tZSBpbiIKK21zZ3N0ciAiIgorIuODkeODg+OCseODvOOCuOWQjeOBqOOBl+OBpuaMh+WumuOBmeOCi+OBruOBr+OAgeOBneOBruS4reOBq+WQq+OBvuOCjOOBpuOBhOOCi+ODleOCoeOCpOODq+OBruWQjeWJjeOBp+OBr+OBquOBj+OAgSIKKyLjg5Hjg4PjgrHjg7zjgrjlkI3jgZ3jga7jgoLjga7jgafjgarjgZHjgozjgbDjgarjgorjgb7jgZvjgpMiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjEzMworIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIC0tcGVuZGluZyBkb2VzIG5vdCB0YWtlIGFueSBub24tb3B0aW9uIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS0lcyAtLXBlbmRpbmcg44Gv44Kq44OX44K344On44Oz5Lul5aSW44Gu5byV5pWw44KS44Go44KK44G+44Gb44KTIgorCisjOiBzcmMvcGFja2FnZXMuYzoxMzggc3JjL3F1ZXJ5Y21kLmM6Mzc1IHNyYy9xdWVyeWNtZC5jOjU2NQorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGF0IGxlYXN0IG9uZSBwYWNrYWdlIG5hbWUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMg44Gv5byV5pWw44Gr5bCR44Gq44GP44Go44KCIDEg44Gk44Gu44OR44OD44Kx44O844K45ZCN44GM5b+F6KaB44Gn44GZIgorCisjOiBzcmMvcGFja2FnZXMuYzoxNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSAlcyBsaXN0ZWQgbW9yZSB0aGFuIG9uY2UsIG9ubHkgcHJvY2Vzc2luZyBvbmNlLlxuIgorbXNnc3RyICLjg5Hjg4PjgrHjg7zjgrggJXMg44GM6KSH5pWw5Zue5YiX5oyZ44GV44KM44G+44GX44Gf44CC5LiA5bqm44Gg44GR5Yem55CG44GX44G+44GZ44CCXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjE4MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiTW9yZSB0aGFuIG9uZSBjb3B5IG9mIHBhY2thZ2UgJXMgaGFzIGJlZW4gdW5wYWNrZWRcbiIKKyIgaW4gdGhpcyBydW4gISAgT25seSBjb25maWd1cmluZyBpdCBvbmNlLlxuIgorbXNnc3RyICIiCisi54++5Zyo44Gu5a6f6KGM5Lit44Gr44OR44OD44Kx44O844K4ICVzIOOBruOCs+ODlOODvOOBjOikh+aVsOWxlemWi+OBleOCjOOBvuOBl+OBnyFcbiIKKyIxIOWbnuOBoOOBkeioreWumuOCkuihjOOBhOOBvuOBmeOAglxuIgorCisjOiBzcmMvcGFja2FnZXMuYzoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInBhY2thZ2UgJS4yNTBzIGlzIG5vdCByZWFkeSBmb3IgdHJpZ2dlciBwcm9jZXNzaW5nXG4iCisiIChjdXJyZW50IHN0YXR1cyBgJS4yNTBzJyB3aXRoIG5vIHBlbmRpbmcgdHJpZ2dlcnMpIgorbXNnc3RyICIiCisi44OR44OD44Kx44O844K4ICUuMjUwcyDjga/jg4jjg6rjgqzlh6bnkIbjga7mupblgpnjgYzjgafjgY3jgabjgYTjgb7jgZvjgpNcbiIKKyIgKOS/neeVmeODiOODquOCrOOCkumZpOOBhOOBn+ePvuWcqOOBruOCueODhuODvOOCv+OCuSBgJS4yNTBzJykiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjMzNAorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgd2hpY2ggcHJvdmlkZXMgJXMgaXMgdG8gYmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiICDjg5Hjg4PjgrHjg7zjgrggJXMg44GvICVzIOOCkuaPkOS+m+OBl+OBpuOBhOOBvuOBmeOBjOOAgeWJiumZpOOBleOCjOOCiOOBhuOBqOOBl+OBpuOBhOOBvuOBmeOAglxuIgorCisjOiBzcmMvcGFja2FnZXMuYzozMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIGlzIHRvIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiAg44OR44OD44Kx44O844K4ICVzIOOBr+WJiumZpOOBleOCjOOCiOOBhuOBqOOBl+OBpuOBhOOBvuOBmeOAglxuIgorCisjOiBzcmMvcGFja2FnZXMuYzozNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBWZXJzaW9uIG9mICVzIG9uIHN5c3RlbSBpcyAlcy5cbiIKK21zZ3N0ciAi44K344K544OG44Og5LiK44GuICVzIOOBruODkOODvOOCuOODp+ODsyDjga8gJXMg44Gn44GZ44CCXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjM3NgorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgd2hpY2ggcHJvdmlkZXMgJXMgYXdhaXRzIHRyaWdnZXIgcHJvY2Vzc2luZy5cbiIKK21zZ3N0ciAiICDjg5Hjg4PjgrHjg7zjgrggJXMg44GvICVzIOOCkuaPkOS+m+OBl+OBpuOBiuOCiuOAgeODiOODquOCrOWHpueQhuOCkuW+heOBo+OBpuOBhOOBvuOBmeOAglxuIgorCisjOiBzcmMvcGFja2FnZXMuYzozODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIGF3YWl0cyB0cmlnZ2VyIHByb2Nlc3NpbmcuXG4iCittc2dzdHIgIiAg44OR44OD44Kx44O844K4ICVzIOOBr+ODiOODquOCrOWHpueQhuOCkuW+heOBo+OBpuOBhOOBvuOBmeOAglxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogYWxzbyBjb25maWd1cmluZyBgJXMnIChyZXF1aXJlZCBieSBgJXMnKVxuIgorbXNnc3RyICJkcGtnOiAoYCUyJHMnIOOBq+OCiOOCiuimgeaxguOBleOCjOOCiykgYCUxJHMnIOOCguioreWumuOBl+OBpuOBhOOBvuOBmVxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIHdoaWNoIHByb3ZpZGVzICVzIGlzIG5vdCBjb25maWd1cmVkIHlldC5cbiIKK21zZ3N0ciAiICDjg5Hjg4PjgrHjg7zjgrggJXMg44GvICVzIOOCkuaPkOS+m+OBl+OBpuOBhOOBvuOBmeOBjOOAgeOBvuOBoOioreWumuOBleOCjOOBpuOBhOOBvuOBm+OCk+OAglxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIGlzIG5vdCBjb25maWd1cmVkIHlldC5cbiIKK21zZ3N0ciAiICDjg5Hjg4PjgrHjg7zjgrggJXMg44Gv44G+44Gg6Kit5a6a44GV44KM44Gm44GE44G+44Gb44KT44CCXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQzMgorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgd2hpY2ggcHJvdmlkZXMgJXMgaXMgbm90IGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiIgorIiAg44OR44OD44Kx44O844K4ICVzIOOBryAlcyDjgpLmj5DkvpvjgZfjgb7jgZnjgYzjgIHjgb7jgaDjgqTjg7Pjgrnjg4jjg7zjg6vjgZXjgozjgabjgYTjgb7jgZvjgpPjgIJcbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDM1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIgIOODkeODg+OCseODvOOCuCAlcyDjga/jgb7jgaDjgqTjg7Pjgrnjg4jjg7zjg6vjgZXjgozjgabjgYTjgb7jgZvjgpPjgIJcbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDcyCisjLCBjLWZvcm1hdAorbXNnaWQgIiAlcyAoJXMpIGJyZWFrcyAlcyBhbmQgaXMgJXMuXG4iCittc2dzdHIgIiVzICglcykg44GvICVzIOOCkuWjiuOBl+OAgSVzIOOBp+OBmeOAglxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlcyAoJXMpIHByb3ZpZGVzICVzLlxuIgorbXNnc3RyICIlcyAoJXMpIOOBryAlcyDjgpLmj5DkvpvjgZfjgb7jgZnjgIJcbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDgyCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgVmVyc2lvbiBvZiAlcyB0byBiZSBjb25maWd1cmVkIGlzICVzLlxuIgorbXNnc3RyICLoqK3lrprjgZXjgozjgosgJXMg44Gu44OQ44O844K444On44OzIOOBryAlcyDjgafjgZnjgIJcbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NTk2Cittc2dpZCAiIGRlcGVuZHMgb24gIgorbXNnc3RyICIg44Gv5Lul5LiL44Gr5L6d5a2YIChkZXBlbmRzKSDjgZfjgb7jgZk6ICIKKworIzogc3JjL3BhY2thZ2VzLmM6NjAyCittc2dpZCAiOyBob3dldmVyOlxuIgorbXNnc3RyICIgLi4u44GX44GL44GXOlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjcxCisjLCBjLWZvcm1hdAorbXNnaWQgIi4uLi8lcyIKK21zZ3N0ciAiLi4uLyVzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjkxCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGVuc3VyaW5nIGAlLjI1MHMnIGRvZXNuJ3QgZXhpc3QiCittc2dzdHIgImAlLjI1MHMnIOOBjOWtmOWcqOOBl+OBquOBhOOBn+OCgeOCqOODqeODvOOBjOeZuueUn+OBl+OBvuOBl+OBnyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5OQorbXNnaWQgInNwbGl0IHBhY2thZ2UgcmVhc3NlbWJseSIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEwOAorbXNnaWQgInJlYXNzZW1ibGVkIHBhY2thZ2UgZmlsZSIKK21zZ3N0ciAi6Kej6YeI44Gn44GN44Gq44GE44OR44OD44Kx44O844K444OV44Kh44Kk44OrIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEzMworIywgYy1mb3JtYXQKK21zZ2lkICJBdXRoZW50aWNhdGluZyAlcyAuLi5cbiIKK21zZ3N0ciAiJXMg44KS6KqN6Ki844GX44Gm44GE44G+44GZIC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEzOQorbXNnaWQgInBhY2thZ2Ugc2lnbmF0dXJlIHZlcmlmaWNhdGlvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE0NgorIywgYy1mb3JtYXQKK21zZ2lkICJWZXJpZmljYXRpb24gb24gcGFja2FnZSAlcyBmYWlsZWQhIgorbXNnc3RyICLjg5Hjg4PjgrHjg7zjgrggJXMg44Gu5qSc6Ki844Gr5aSx5pWX44GX44G+44GX44GfISIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlZlcmlmaWNhdGlvbiBvbiBwYWNrYWdlICVzIGZhaWxlZCxcbiIKKyJidXQgaW5zdGFsbGluZyBhbnl3YXkgYXMgeW91IHJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiIgorIuODkeODg+OCseODvOOCuCAlcyDjga7mpJzoqLzjgavlpLHmlZfjgZfjgb7jgZfjgZ/jgYzjgIFcbiIKKyLopoHmsYLjganjgYrjgorjgqTjg7Pjgrnjg4jjg7zjg6vjgpLooYzjgYTjgb7jgZnjgIJcbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFzc2VkXG4iCittc2dzdHIgIuWQiOagvFxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE2NSBkcGtnLWRlYi9pbmZvLmM6ODEKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHRlbXBvcmFyeSBkaXJlY3RvcnkiCittc2dzdHIgIuS4gOaZguODh+OCo+ODrOOCr+ODiOODquOCkuS9nOaIkOOBp+OBjeOBvuOBm+OCkyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlcyBoYXMgdG9vIG1hbnkgQ29uZmxpY3RzL1JlcGxhY2VzIHBhaXJzIgorbXNnc3RyICLjg5Hjg4PjgrHjg7zjgrggJXMg44Gu6KGd56qBL+e9ruaPm+OBrue1hOOBv+WQiOOCj+OBm+OBjOWkmuOBmeOBjuOBvuOBmSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyNDMKKyMsIGMtZm9ybWF0Cittc2dpZCAib2xkIHZlcnNpb24gb2YgcGFja2FnZSBoYXMgb3Zlcmx5LWxvbmcgaW5mbyBmaWxlIG5hbWUgc3RhcnRpbmcgYCUuMjUwcyciCittc2dzdHIgIiIKKyLml6fjg5Djg7zjgrjjg6fjg7Pjga7jg5Hjg4PjgrHjg7zjgrjjgavlkKvjgb7jgozjgosgYCUuMjUwcycg44Gn5aeL44G+44KL5oOF5aCx44OV44Kh44Kk44Or5ZCN44Gv44GC44G+44KK44GrIgorIuOCgumVt+OBmeOBjuOBvuOBmSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyODEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBvYnNvbGV0ZSBpbmZvIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuWPpOOBhOaDheWgseODleOCoeOCpOODqyBgJS4yNTBzJyDjgpLliYrpmaTjgafjgY3jgb7jgZvjgpMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6Mjg2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIChzdXBwb3NlZCkgbmV3IGluZm8gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiKOOBiuOBneOCieOBjykg5paw44GX44GE5oOF5aCx44OV44Kh44Kk44OrIGAlLjI1MHMnIOOCkuOCpOODs+OCueODiOODvOODq+OBp+OBjeOBvuOBm+OCkyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyOTYKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiB0ZW1wIGNvbnRyb2wgZGlyZWN0b3J5IgorbXNnc3RyICLkuIDmmYLjgrPjg7Pjg4jjg63jg7zjg6vjg4fjgqPjg6zjgq/jg4jjg6rjgpLjgqrjg7zjg5fjg7PjgafjgY3jgb7jgZvjgpMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzA3CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgY29udGFpbnMgb3Zlcmx5LWxvbmcgY29udHJvbCBpbmZvIGZpbGUgbmFtZSAoc3RhcnRpbmcgYCUuNTBzJykiCittc2dzdHIgIiIKKyLjg5Hjg4PjgrHjg7zjgrjjgavlkKvjgb7jgozjgosgKGAlLjUwcycg44Gn5aeL44G+44KLKSDjgrPjg7Pjg4jjg63jg7zjg6vmg4XloLHjg5XjgqHjgqTjg6vlkI3jga/jgYLjgb7jgorjgasiCisi44KC6ZW344GZ44GO44G+44GZIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMxNAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGNvbnRyb2wgaW5mbyBjb250YWluZWQgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICLjg5Hjg4PjgrHjg7zjgrjjgrPjg7Pjg4jjg63jg7zjg6vmg4XloLHjgavjg4fjgqPjg6zjgq/jg4jjg6ogYCUuMjUwcycg44GM5ZCr44G+44KM44Gm44GE44G+44GZIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMxNgorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGNvbnRyb2wgaW5mbyBybWRpciBvZiBgJS4yNTBzJyBkaWRuJ3Qgc2F5IG5vdCBhIGRpciIKK21zZ3N0ciAiIgorIuODkeODg+OCseODvOOCuOOCs+ODs+ODiOODreODvOODq+aDheWgseOBriBgJS4yNTBzJyDjga4gcm1kaXIg44GM44OH44Kj44Os44Kv44OI44Oq44Gn44Gv44Gq44GE44Go6KiA44Gj44GmIgorIuOBhOOBvuOBmeOAgiIKKworIyAjOiBkcGtnL3Byb2Nlc3NhcmMuYzo2ODMKKyMgIywgYy1mb3JtYXQKKyMgbXNnaWQgInBhY2thZ2UgY29udHJvbCBpbmZvIHJtZGlyIG9mIGAlLjI1MHMnIGRpZG4ndCBzYXkgbm90IGEgZGlyIgorIyBtc2dzdHIgImAlLjI1MHMnIOOBruODkeODg+OCseODvOOCuOOCs+ODs+ODiOODreODvOODq+aDheWgsSBybWRpciDjgYzjg4fjgqPjg6zjgq/jg4jjg6rjgafjga/jgarjgYTjgajoqIDjgaPjgabjgYTjgb7jgZkiCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMyNgorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlICVzIGNvbnRhaW5lZCBsaXN0IGFzIGluZm8gZmlsZSIKK21zZ3N0ciAi44OR44OD44Kx44O844K4ICVzIOOBjOS4gOimp+OCkuaDheWgseODleOCoeOCpOODq+OBqOOBl+OBpuWQq+OCk+OBp+OBhOOBvuOBl+OBnyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IGluZm8gZmlsZSBgJS4yNTBzJyBhcyBgJS4yNTBzJyIKK21zZ3N0ciAi5paw6KaP5oOF5aCx44OV44Kh44Kk44OrIGAlLjI1MHMnIOOCkiBgJS4yNTBzJyDjgajjgZfjgabjgqTjg7Pjgrnjg4jjg7zjg6vjgafjgY3jgb7jgZvjgpMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzQ5IHNyYy9yZW1vdmUuYzoxOTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSBjb250cm9sIGluZm8gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi44Kz44Oz44OI44Ot44O844Or5oOF5aCx44OV44Kh44Kk44OrIGAlLjI1MHMnIOOCkuWJiumZpOOBp+OBjeOBvuOBm+OCkyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo0MTEKK21zZ2lkICJjYW5ub3QgYWNjZXNzIGFyY2hpdmUiCittc2dzdHIgIuOCouODvOOCq+OCpOODluOBq+OCouOCr+OCu+OCueOBp+OBjeOBvuOBm+OCkyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo0MzMKKyMsIGZ1enp5CisjfCBtc2dpZCAiY29udHJvbCBpbmZvcm1hdGlvbiBsZW5ndGgiCittc2dpZCAicGFja2FnZSBjb250cm9sIGluZm9ybWF0aW9uIGV4dHJhY3Rpb24iCittc2dzdHIgIuOCs+ODs+ODiOODreODvOODq+aDheWgsemVtyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo0NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVjb3JkZWQgaW5mbyBhYm91dCAlcyBmcm9tICVzLlxuIgorbXNnc3RyICIlcyDjgavjgaTjgYTjgabjga7mg4XloLHjgpIgJXMg44GL44KJ55m76Yyy44GX44G+44GZ44CCXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDY4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgYXJjaGl0ZWN0dXJlICglcykgZG9lcyBub3QgbWF0Y2ggc3lzdGVtICglcykiCittc2dzdHIgIuODkeODg+OCseODvOOCuOOCouODvOOCreODhuOCr+ODgeODoyAoJXMpIOOBjOOCt+OCueODhuODoCAoJXMpIOOBqOS4gOiHtOOBl+OBvuOBm+OCkyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1MjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IHJlZ2FyZGluZyAlcyBjb250YWluaW5nICVzLCBwcmUtZGVwZW5kZW5jeSBwcm9ibGVtOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogJXMg44GMICVzIOOCkuWQq+OCgOOBk+OBqOOCkuiAg+aFruOBmeOCi+OBqOOAgeWFiOihjOS+neWtmOOBruWVj+mhjOOBjOOBguOCiuOBvuOBmTpcbiIKKyIlcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1MjYKKyMsIGMtZm9ybWF0Cittc2dpZCAicHJlLWRlcGVuZGVuY3kgcHJvYmxlbSAtIG5vdCBpbnN0YWxsaW5nICUuMjUwcyIKK21zZ3N0ciAi5YWI6KGM5L6d5a2Y5ZWP6aGMIC0gJS4yNTBzIOOCkuOCpOODs+OCueODiOODvOODq+OBl+OBvuOBm+OCkyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1MjcKK21zZ2lkICJpZ25vcmluZyBwcmUtZGVwZW5kZW5jeSBwcm9ibGVtISIKK21zZ3N0ciAi5YWI6KGM5L6d5a2Y44Gu5ZWP6aGM44KS54Sh6KaW44GX44Gm44GE44G+44GZISIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHJlcGFyaW5nIHRvIHJlcGxhY2UgJXMgJXMgKHVzaW5nICVzKSAuLi5cbiIKK21zZ3N0ciAiJXMgJXMg44KSICglcyDjgacpIOe9ruaPm+OBmeOCi+OBn+OCgeOBrua6luWCmeOCkuOBl+OBpuOBhOOBvuOBmSAuLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiVW5wYWNraW5nICVzIChmcm9tICVzKSAuLi5cbiIKK21zZ3N0ciAiKCUyJHMg44GL44KJKSAlMSRzIOOCkuWxlemWi+OBl+OBpuOBhOOBvuOBmS4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjU4MAorIywgYy1mb3JtYXQKK21zZ2lkICJuYW1lIG9mIGNvbmZmaWxlIChzdGFydGluZyBgJS4yNTBzJykgaXMgdG9vIGxvbmcgKD4lZCBjaGFyYWN0ZXJzKSIKK21zZ3N0ciAiKGAlLjI1MHMnIOOBp+Wni+OBvuOCiykg6Kit5a6a44OV44Kh44Kk44Or5ZCN44GM6ZW344GZ44GO44G+44GZICg+ICVkIOaWh+WtlykgIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjYzMyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA3MQorIywgYy1mb3JtYXQKK21zZ2lkICJyZWFkIGVycm9yIGluICUuMjUwcyIKK21zZ3N0ciAiJS4yNTBzIOOBp+iqreOBv+WPluOCiuaZguOBq+OCqOODqeODvOOBjOeZuueUn+OBl+OBvuOBl+OBnyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyAlLjI1MHMiCittc2dzdHIgIiUuMjUwcyDjga7jgq/jg63jg7zjgrrmmYLjgavjgqjjg6njg7zjgYznmbrnlJ/jgZfjgb7jgZfjgZ8iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjM3CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHRyeWluZyB0byBvcGVuICUuMjUwcyIKK21zZ3N0ciAiJS4yNTBzIOOBruOCquODvOODl+ODs+aZguOBq+OCqOODqeODvOOBjOeZuueUn+OBl+OBvuOBl+OBnyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGUtY29uZmlndXJpbmcgJXMsIHRvIGFsbG93IHJlbW92YWwgb2YgJXMgLi4uXG4iCittc2dzdHIgIiIKKyIlMiRzIOOCkuWJiumZpOOBp+OBjeOCi+OCiOOBhuOBq+OBmeOCi+OBn+OCgeOBqyAlMSRzIOOBruioreWumuWJiumZpCAoZGVjb25maWd1cmUpIOOCkuihjOOBhOOBviIKKyLjgZkgLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjgxCisjLCBjLWZvcm1hdAorbXNnaWQgIkRlLWNvbmZpZ3VyaW5nICVzIC4uLlxuIgorbXNnc3RyICIlcyDjgpLoqK3lrprliYrpmaTjgZfjgabjgYTjgb7jgZkgLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NzU1CisjLCBjLWZvcm1hdAorbXNnaWQgIlVucGFja2luZyByZXBsYWNlbWVudCAlLjI1MHMgLi4uXG4iCittc2dzdHIgIiUuMjUwcyDjgpLlsZXplovjgZfjgIHnva7mj5vjgZfjgabjgYTjgb7jgZkuLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NDAKKyMsIGZ1enp5CisjfCBtc2dpZCAiZHBrZy1kZWIgZmllbGQgZXh0cmFjdGlvbiIKK21zZ2lkICJwYWNrYWdlIGZpbGVzeXN0ZW0gYXJjaGl2ZSBleHRyYWN0aW9uIgorbXNnc3RyICJkcGtnLWRlYiDjg5XjgqPjg7zjg6vjg4njga7mir3lh7oiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6ODU0Cittc2dpZCAiZXJyb3IgcmVhZGluZyBkcGtnLWRlYiB0YXIgb3V0cHV0IgorbXNnc3RyICJkcGtnLWRlYiB0YXIg5Ye65Yqb44Gu6Kqt44G/5Y+W44KK5pmC44Gr44Ko44Op44O844GM55m655Sf44GX44G+44GX44GfIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjg1NgorbXNnaWQgImNvcnJ1cHRlZCBmaWxlc3lzdGVtIHRhcmZpbGUgLSBjb3JydXB0ZWQgcGFja2FnZSBhcmNoaXZlIgorbXNnc3RyICIiCisi5aOK44KM44Gm44GE44KL44OV44Kh44Kk44Or44K344K544OG44Og5LiK44GuIHRhciDjg5XjgqHjgqTjg6sgLSDjg5Hjg4PjgrHjg7zjgrjjgqLjg7zjgqvjgqTjg5bjgYzlo4rjgozjgabjgYQiCisi44G+44GZIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjg1OQorbXNnaWQgImRwa2ctZGViOiB6YXAgcG9zc2libGUgdHJhaWxpbmcgemVyb3MiCittc2dzdHIgImRwa2ctZGViOiDmnKvlsL7jga7kvZnoqIjjgarjgrzjg63jgpLlj5bjgorpmaTjgY3jgb7jgZkiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTE5CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBzdGF0IG9sZCBmaWxlICclLjI1MHMnIHNvIG5vdCBkZWxldGluZyBpdDogJXMiCittc2dzdHIgIuWPpOOBhOODleOCoeOCpOODqyAnJS4yNTBzJyDjga7nirbmhYvjgpLlj5blvpfjgafjgY3jgarjgYTjga7jgafjgIHliYrpmaTjgZfjgb7jgZvjgpM6ICVzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjkyNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGVsZXRlIG9sZCBkaXJlY3RvcnkgJyUuMjUwcyc6ICVzIgorbXNnc3RyICLlj6TjgYTjg4fjgqPjg6zjgq/jg4jjg6ogJyUuMjUwcycg44KS5YmK6Zmk44Gn44GN44G+44Gb44KTOiAlcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAib2xkIGNvbmZmaWxlICclLjI1MHMnIHdhcyBhbiBlbXB0eSBkaXJlY3RvcnkgKGFuZCBoYXMgbm93IGJlZW4gZGVsZXRlZCkiCittc2dzdHIgIuWPpOOBhOioreWumuODleOCoeOCpOODqyAnJS4yNTBzJyDjgYznqbrjga7jg4fjgqPjg6zjgq/jg4jjg6rjgafjgZfjgZ8gKOS7iuWJiumZpOOBleOCjOOBvuOBl+OBnykiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTc1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IG90aGVyIG5ldyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLjgZ3jga7ku5bjga7mlrDjgZfjgYTjg5XjgqHjgqTjg6sgYCUuMjUwcycg44Gu54q25oWL44KS5Y+W5b6X44Gn44GN44G+44Gb44KTIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjk4NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisib2xkIGZpbGUgJyUuMjUwcycgaXMgdGhlIHNhbWUgYXMgc2V2ZXJhbCBuZXcgZmlsZXMhIChib3RoICclLjI1MHMnIGFuZCAiCisiJyUuMjUwcycpIgorbXNnc3RyICIiCisi5Y+k44GE44OV44Kh44Kk44OrICclLjI1MHMnIOOBjOOBhOOBj+OBpOOBi+OBruaWsOOBl+OBhOODleOCoeOCpOODq+OBqOWQjOS4gOOBp+OBmSEgKCclLjI1MHMnIOOBqCAiCisiJyUuMjUwcycg44Gu5Lih5pa5KSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxMDI1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWN1cmVseSByZW1vdmUgb2xkIGZpbGUgJyUuMjUwcyc6ICVzIgorbXNnc3RyICLlj6TjgYTjg5XjgqHjgqTjg6sgJyUuMjUwcycg44KS5a6J5YWo44Gr5YmK6Zmk44Gn44GN44G+44Gb44KTOiAlcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxMjA2CisjLCBjLWZvcm1hdAorbXNnaWQgIihOb3RpbmcgZGlzYXBwZWFyYW5jZSBvZiAlcywgd2hpY2ggaGFzIGJlZW4gY29tcGxldGVseSByZXBsYWNlZC4pXG4iCittc2dzdHIgIiglcyDjga/lrozlhajjgavnva7mj5vjgZXjgozjgabjgYTjgovjgZ/jgoHjgIHmtojjgYjjgabjgYTjgovjgZPjgajjgavms6jmhI/jgIIpXG4iCisKKyMuIFRSQU5TTEFUT1JTOiBUaGlzIGlzIHRoZSBoZWFkZXIgdGhhdCBhcHBlYXJzIG9uICdkcGtnLXF1ZXJ5IC1sJy4gVGhlCisjLiAqIHN0cmluZyBzaG91bGQgcmVtYWluIHVuZGVyIDgwIGNoYXJhY3RlcnMuIFRoZSB1cHBlcmNhc2UgbGV0dGVycyBpbgorIy4gKiB0aGUgc3RhdGUgdmFsdWVzIGRlbm90ZSB0aGUgYWJicmV2aWF0ZWQgbGV0dGVyIHRoYXQgd2lsbCBhcHBlYXIgb24KKyMuICogdGhlIGZpcnN0IHRocmVlIGNvbHVtbnMsIHdoaWNoIHNob3VsZCBpZGVhbGx5IG1hdGNoIHRoZSBFbmdsaXNoIG9uZQorIy4gKiAoZS5nLiBSZW1vdmUg4oaSIHN1cFJpbWVpeCksIHNlZSBkcGtnLXF1ZXJ5KDEpIGZvciBmdXJ0aGVyIGRldGFpbHMuIFRoZQorIy4gKiB0cmFuc2xhdGVkIG1lc3NhZ2UgY2FuIHVzZSBhZGRpdGlvbmFsIGxpbmVzIGlmIG5lZWRlZC4KKyM6IHNyYy9xdWVyeWNtZC5jOjE0OQorbXNnaWQgIiIKKyJEZXNpcmVkPVVua25vd24vSW5zdGFsbC9SZW1vdmUvUHVyZ2UvSG9sZFxuIgorInwgU3RhdHVzPU5vdC9JbnN0L0NvbmYtZmlsZXMvVW5wYWNrZWQvaGFsRi1jb25mL0hhbGYtaW5zdC90cmlnLWFXYWl0L1RyaWctIgorInBlbmRcbiIKKyJ8LyBFcnI/PShub25lKS9SZWluc3QtcmVxdWlyZWQgKFN0YXR1cyxFcnI6IHVwcGVyY2FzZT1iYWQpXG4iCittc2dzdHIgIiIKKyLopoHmnJs9KFUp5LiN5piOLyhJKeOCpOODs+OCueODiOODvOODqy8oUinliYrpmaQvKFAp5a6M5YWo5YmK6ZmkLyhIKee2reaMgVxuIgorInwg54q25oWLPShOKeeEoS8oSSnjgqTjg7Pjgrnjg4jjg7zjg6vmuIgvKEMp6Kit5a6aLyhVKeWxlemWiy8oRinoqK3lrprlpLHmlZcvKEgp5Y2K44Kk44Oz44K544OI44O844OrLyIKKyIoVynjg4jjg6rjgqzlvoXjgaEvKFQp44OI44Oq44Ks5L+d55WZXG4iCisifC8g44Ko44Op44O8Pz0o56m65qyEKeeEoS8oUinopoHlho3jgqTjg7Pjgrnjg4jjg7zjg6sgKOeKtuaFiyzjgqjjg6njg7zjga7lpKfmloflrZc955Ww5bi4KVxuIgorCisjOiBzcmMvcXVlcnljbWQuYzoxNTMKK21zZ2lkICJOYW1lIgorbXNnc3RyICLlkI3liY0iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjE1MworbXNnaWQgIlZlcnNpb24iCittc2dzdHIgIuODkOODvOOCuOODp+ODsyIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MTU0Cittc2dpZCAiRGVzY3JpcHRpb24iCittc2dzdHIgIuiqrOaYjiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MjQ2IHNyYy9xdWVyeWNtZC5jOjUxMSBzcmMvc2VsZWN0LmM6NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiTm8gcGFja2FnZXMgZm91bmQgbWF0Y2hpbmcgJXMuXG4iCittc2dzdHIgIiVzIOOBq+S4gOiHtOOBmeOCi+ODkeODg+OCseODvOOCuOOBjOimi+OBpOOBi+OCiuOBvuOBm+OCk+OAglxuIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJzaW9uIGJ5ICVzIGZyb206ICVzXG4iCittc2dzdHIgIiVzIOOBq+OCiOOCi+mAgOmBvyAoZGl2ZXJ0KSDlhYM6ICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI3NQorIywgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnNpb24gYnkgJXMgdG86ICVzXG4iCittc2dzdHIgIiVzIOOBq+OCiOOCi+mAgOmBvyAoZGl2ZXJ0KSDlhYg6ICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI3OAorIywgYy1mb3JtYXQKK21zZ2lkICJsb2NhbCBkaXZlcnNpb24gZnJvbTogJXNcbiIKK21zZ3N0ciAi44Ot44O844Kr44Or44Gq6YCA6YG/IChkaXZlcnQpIOWFgzogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6Mjc5CisjLCBjLWZvcm1hdAorbXNnaWQgImxvY2FsIGRpdmVyc2lvbiB0bzogJXNcbiIKK21zZ3N0ciAi44Ot44O844Kr44Or44Gq6YCA6YG/IChkaXZlcnQpIOWFiDogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MzA5Cittc2dpZCAiLS1zZWFyY2ggbmVlZHMgYXQgbGVhc3Qgb25lIGZpbGUgbmFtZSBwYXR0ZXJuIGFyZ3VtZW50IgorbXNnc3RyICItLXNlYXJjaCDjga/lvJXmlbDjgavlsJHjgarjgY/jgajjgoIgMSDjgaTjga7jg5XjgqHjgqTjg6vlkI3jg5Hjgr/jg7zjg7PjgYzlv4XopoHjgafjgZkiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjM1MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiTm8gcGFja2FnZXMgZm91bmQgbWF0Y2hpbmcgJXMuXG4iCittc2dpZCAiJXM6IG5vIHBhdGggZm91bmQgbWF0Y2hpbmcgcGF0dGVybiAlcy5cbiIKK21zZ3N0ciAiJXMg44Gr5LiA6Ie044GZ44KL44OR44OD44Kx44O844K444GM6KaL44Gk44GL44KK44G+44Gb44KT44CCXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjM5MworIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlIGAlcycgaXMgbm90IGluc3RhbGxlZCBhbmQgbm8gaW5mbyBpcyBhdmFpbGFibGUuXG4iCittc2dzdHIgIiIKKyLjg5Hjg4PjgrHjg7zjgrggYCVzJyDjga/jgb7jgaDjgqTjg7Pjgrnjg4jjg7zjg6vjgZXjgozjgabjgYrjgonjgZrmg4XloLHjga7liKnnlKjjga/kuI3lj6/og73jgafjgZnjgIJcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDAxCisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgYCVzJyBpcyBub3QgYXZhaWxhYmxlLlxuIgorbXNnc3RyICLjg5Hjg4PjgrHjg7zjgrggYCVzJyDjga/jgb7jgaDliKnnlKjlj6/og73jgafjgYLjgorjgb7jgZvjgpPjgIJcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDEwIHNyYy9xdWVyeWNtZC5jOjU4NQorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlIGAlcycgaXMgbm90IGluc3RhbGxlZC5cbiIKK21zZ3N0ciAi44OR44OD44Kx44O844K4IGAlcycg44Gv44G+44Gg44Kk44Oz44K544OI44O844Or44GV44KM44Gm44GE44G+44Gb44KT44CCXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQxOAorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlIGAlcycgZG9lcyBub3QgY29udGFpbiBhbnkgZmlsZXMgKCEpXG4iCittc2dzdHIgIuODkeODg+OCseODvOOCuCBgJXMnIOOBr+ODleOCoeOCpOODq+OCkuWQq+OCk+OBp+OBhOOBvuOBm+OCkyAoISlcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDI1CisjLCBjLWZvcm1hdAorbXNnaWQgImxvY2FsbHkgZGl2ZXJ0ZWQgdG86ICVzXG4iCittc2dzdHIgIuODreODvOOCq+ODq+OBq+mAgOmBvyAoZGl2ZXJ0KSDjgZXjgozjgZ86ICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQyOAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGRpdmVydHMgb3RoZXJzIHRvOiAlc1xuIgorbXNnc3RyICLjgbvjgYvjga7jg5Hjg4PjgrHjg7zjgrjjga7lkIzlkI3jg5XjgqHjgqTjg6vjga/mrKHjga7lkI3liY3jgavpgIDpgb/jgZfjgZ86ICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQzMQorIywgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnRlZCBieSAlcyB0bzogJXNcbiIKK21zZ3N0ciAiJXMg44Gr44KI44KK6YCA6YG/IChkaXZlcnQpIOOBleOCjOOBnzogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDUyCittc2dpZCAiIgorIlVzZSBkcGtnIC0taW5mbyAoPSBkcGtnLWRlYiAtLWluZm8pIHRvIGV4YW1pbmUgYXJjaGl2ZSBmaWxlcyxcbiIKKyJhbmQgZHBrZyAtLWNvbnRlbnRzICg9IGRwa2ctZGViIC0tY29udGVudHMpIHRvIGxpc3QgdGhlaXIgY29udGVudHMuXG4iCittc2dzdHIgIiIKKyLjgqLjg7zjgqvjgqTjg5bjg5XjgqHjgqTjg6vjgpLoqr/jgbnjgovjgZ/jgoHjgavjga8gZHBrZyAtLWluZm8gKD0gZHBrZy1kZWIgLS1pbmZvKSDjgpLjgIFcbiIKKyLjgZ3jga7lhoXlrrnkuIDopqfjgpLooajnpLrjgZnjgovjgavjga8gZHBrZyAtLWNvbnRlbnRzICg9IGRwa2ctZGViIC0tY29udGVudHMpIOOCkuS9v+OBhOOBviIKKyLjgZnjgIJcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NTcwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgYXQgbW9zdCB0d28gYXJndW1lbnRzIgorbXNnc3RyICItLSVzIOOBr+WkmuOBj+OBqOOCgiAyIOOBpOOBruW8leaVsOOBl+OBi+OBqOOCiuOBvuOBm+OCkyIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NTc4CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbnRyb2wgZmlsZSBjb250YWlucyAlYyIKK21zZ3N0ciAi44Kz44Oz44OI44Ot44O844Or44OV44Kh44Kk44Or44GvICVjIOOCkuWQq+OCk+OBp+OBhOOBvuOBmSIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjAwCisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiAlcyBwYWNrYWdlIG1hbmFnZW1lbnQgcHJvZ3JhbSBxdWVyeSB0b29sIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkRlYmlhbiBgJXMnIOODkeODg+OCseODvOOCuOeuoeeQhuODl+ODreOCsOODqeODoOeFp+S8muODhOODvOODq+ODkOODvOOCuOODp+ODsyAlc+OAglxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo2MTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJDb21tYW5kczpcbiIKKyN8ICIgIC1zfC0tc3RhdHVzIDxwYWNrYWdlPiAuLi4gICAgICAgIERpc3BsYXkgcGFja2FnZSBzdGF0dXMgZGV0YWlscy5cbiIKKyN8ICIgIC1wfC0tcHJpbnQtYXZhaWwgPHBhY2thZ2U+IC4uLiAgIERpc3BsYXkgYXZhaWxhYmxlIHZlcnNpb24gZGV0YWlscy5cbiIKKyN8ICIgIC1MfC0tbGlzdGZpbGVzIDxwYWNrYWdlPiAuLi4gICAgIExpc3QgZmlsZXMgYG93bmVkJyBieSBwYWNrYWdlKHMpLlxuIgorI3wgIiAgLWx8LS1saXN0IFs8cGF0dGVybj4gLi4uXSAgICAgICAgTGlzdCBwYWNrYWdlcyBjb25jaXNlbHkuXG4iCisjfCAiICAtV3wtLXNob3cgPHBhdHRlcm4+IC4uLiAgICAgICAgICBTaG93IGluZm9ybWF0aW9uIG9uIHBhY2thZ2UocykuXG4iCisjfCAiICAtU3wtLXNlYXJjaCA8cGF0dGVybj4gLi4uICAgICAgICBGaW5kIHBhY2thZ2Uocykgb3duaW5nIGZpbGUocykuXG4iCisjfCAiICAtY3wtLWNvbnRyb2wtcGF0aCA8cGFja2FnZT4gWzxmaWxlPl1cbiIKKyN8ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFByaW50IHBhdGggZm9yIHBhY2thZ2UgY29udHJvbCBmaWxlLlxuIgorI3wgIlxuIgorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1zfC0tc3RhdHVzIDxwYWNrYWdlPiAuLi4gICAgICAgIERpc3BsYXkgcGFja2FnZSBzdGF0dXMgZGV0YWlscy5cbiIKKyIgIC1wfC0tcHJpbnQtYXZhaWwgPHBhY2thZ2U+IC4uLiAgIERpc3BsYXkgYXZhaWxhYmxlIHZlcnNpb24gZGV0YWlscy5cbiIKKyIgIC1MfC0tbGlzdGZpbGVzIDxwYWNrYWdlPiAuLi4gICAgIExpc3QgZmlsZXMgYG93bmVkJyBieSBwYWNrYWdlKHMpLlxuIgorIiAgLWx8LS1saXN0IFs8cGF0dGVybj4gLi4uXSAgICAgICAgTGlzdCBwYWNrYWdlcyBjb25jaXNlbHkuXG4iCisiICAtV3wtLXNob3cgWzxwYXR0ZXJuPiAuLi5dICAgICAgICBTaG93IGluZm9ybWF0aW9uIG9uIHBhY2thZ2UocykuXG4iCisiICAtU3wtLXNlYXJjaCA8cGF0dGVybj4gLi4uICAgICAgICBGaW5kIHBhY2thZ2Uocykgb3duaW5nIGZpbGUocykuXG4iCisiICAtY3wtLWNvbnRyb2wtcGF0aCA8cGFja2FnZT4gWzxmaWxlPl1cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFByaW50IHBhdGggZm9yIHBhY2thZ2UgY29udHJvbCBmaWxlLlxuIgorIlxuIgorbXNnc3RyICIiCisi44Kz44Oe44Oz44OJOlxuIgorIiAgLXN8LS1zdGF0dXMgPOODkeODg+OCseODvOOCuOWQjT4gLi4uICAgICAg44OR44OD44Kx44O844K454q25oWL44Gu6Kmz57Sw44KS6KGo56S644GZ44KL44CCXG4iCisiICAtcHwtLXByaW50LWF2YWlsIDzjg5Hjg4PjgrHjg7zjgrjlkI0+IC4uLiDliKnnlKjlj6/og73jgarjg5Djg7zjgrjjg6fjg7Pjga7oqbPntLDjgpLooajnpLrjgZkiCisi44KL44CCXG4iCisiICAtTHwtLWxpc3RmaWxlcyA844OR44OD44Kx44O844K45ZCNPiAuLi4gICDjg5Hjg4PjgrHjg7zjgrjjgYzjgIzmiYDmnInjgZnjgovjgI3jg5XjgqHjgqTjg6vkuIDopqfjgpIiCisi6KGo56S644GZ44KL44CCXG4iCisiICAtbHwtLWxpc3QgWzzjg5Hjgr/jg7zjg7M+IC4uLl0gICAgICAgICAg44OR44OD44Kx44O844K444Gu5LiA6Kan44KS57Ch5r2U44Gr6KGo56S644GZ44KL44CCXG4iCisiICAtV3wtLXNob3cgPOODkeOCv+ODvOODsz4gLi4uICAgICAgICAgICAg44OR44OD44Kx44O844K444Gu5oOF5aCx44Gu6KGo56S644GZ44KL44CCXG4iCisiICAtU3wtLXNlYXJjaCA844OR44K/44O844OzPiAuLi4gICAgICAgICAg44OV44Kh44Kk44Or44KS5omA5pyJ44GZ44KL44OR44OD44Kx44O844K444KS5qSc57Si44GZIgorIuOCi+OAglxuIgorIiAgLWN8LS1jb250cm9sLXBhdGggPOODkeODg+OCseODvOOCuD4gWzzjg5XjgqHjgqTjg6s+XVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg44OR44OD44Kx44O844K444Kz44Oz44OI44Ot44O844Or44OV44Kh44Kk44Or44Gu44OR44K544KSIgorIuihqOekuuOBmeOCi+OAglxuIgorIlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo2MzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgICAgICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyIgIC1mfC0tc2hvd2Zvcm1hdD08Zm9ybWF0PiAgICAgICAgIFVzZSBhbHRlcm5hdGl2ZSBmb3JtYXQgZm9yIC0tc2hvdy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIuOCquODl+OCt+ODp+ODszpcbiIKKyIgIC0tYWRtaW5kaXI9POODh+OCo+ODrOOCr+ODiOODqj4gICAgICVzIOOBruS7o+OCj+OCiuOBqyA844OH44Kj44Os44Kv44OI44OqPiDjgpLkvb/jgYZcbiIKKyIgIC0tZnxzaG93Zm9ybWF0PTzjg5Xjgqnjg7zjg57jg4Pjg4g+IC0tc2hvdyDjgavliKXjga7jg5Xjgqnjg7zjg57jg4Pjg4jjgpLkvb/jgYZcbiIKKyJcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjQyIGRwa2ctZGViL21haW4uYzoxMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkZvcm1hdCBzeW50YXg6XG4iCisiICBBIGZvcm1hdCBpcyBhIHN0cmluZyB0aGF0IHdpbGwgYmUgb3V0cHV0IGZvciBlYWNoIHBhY2thZ2UuIFRoZSBmb3JtYXRcbiIKKyIgIGNhbiBpbmNsdWRlIHRoZSBzdGFuZGFyZCBlc2NhcGUgc2VxdWVuY2VzIFxcbiAobmV3bGluZSksIFxcciAoY2FycmlhZ2VcbiIKKyIgIHJldHVybikgb3IgXFxcXCAocGxhaW4gYmFja3NsYXNoKS4gUGFja2FnZSBpbmZvcm1hdGlvbiBjYW4gYmUgaW5jbHVkZWRcbiIKKyIgIGJ5IGluc2VydGluZyB2YXJpYWJsZSByZWZlcmVuY2VzIHRvIHBhY2thZ2UgZmllbGRzIHVzaW5nIHRoZSAke3Zhcls7IgorIndpZHRoXX1cbiIKKyIgIHN5bnRheC4gRmllbGRzIHdpbGwgYmUgcmlnaHQtYWxpZ25lZCB1bmxlc3MgdGhlIHdpZHRoIGlzIG5lZ2F0aXZlIGluICIKKyJ3aGljaFxuIgorIiAgY2FzZSBsZWZ0IGFsaWdubWVudCB3aWxsIGJlIHVzZWQuXG4iCittc2dzdHIgIiIKKyLjg5Xjgqnjg7zjg57jg4Pjg4jjga7mlofms5U6XG4iCisiICDjg5Xjgqnjg7zjg57jg4Pjg4jjga/jgZ3jgozjgZ7jgozjga7jg5Hjg4PjgrHjg7zjgrjjgavjgaTjgYTjgablh7rlipvjgZnjgovmloflrZfliJfjgajjgarjgorjgb7jgZnjgIJcbiIKKyIgIOODleOCqeODvOODnuODg+ODiOOBq+OBr+aomea6luOBruOCqOOCueOCseODvOODl+OCt+ODvOOCseODs+OCuSBcXG4gKOaUueihjCnjgIFcXHIgKOW+qeW4sCnjgIFcbiIKKyIgIFxcXFwgKOODkOODg+OCr+OCueODqeODg+OCt+ODpSkg44KS5ZCr44KB44KL44GT44Go44GM44Gn44GN44G+44GZ44CC44OR44OD44Kx44O844K45oOF5aCx44Gv44CBXG4iCisiICAke3Zhcls7d2lkdGhdfSDmlofms5XjgpLkvb/jgaPjgabjg5Hjg4PjgrHjg7zjgrjjg5XjgqPjg7zjg6vjg4njgbjjga7lj4LnhafjgpLnpLrjgZnlpInmlbBcbiIKKyIgIOOCkuaMv+WFpeOBmeOCi+OBk+OBqOOBp+OAgeWQq+OCgeOCieOCjOOBvuOBmeOAgndpZHRoIOOBjOiyoCAo5bem5a+E44GbKSDjgafjga/jgarjgYTloLTlkIhcbiIKKyIgIOOCkumZpOOBjeOAgeODleOCo+ODvOODq+ODieOBr+WPs+ipsOOCgeOBleOCjOOBvuOBmeOAglxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo2NTYKK21zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IHF1ZXJ5aW5nIHBhY2thZ2VzLiIKK21zZ3N0ciAi44OR44OD44Kx44O844K454Wn5Lya44Gr44Gk44GE44Gm44Gu44OY44Or44OX44Gr44Gv44CBLS1oZWxwIOOCkuS9v+eUqOOBl+OBpuOBj+OBoOOBleOBhOOAgiIKKworIzogc3JjL3JlbW92ZS5jOjg4CisjLCBjLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nIHJlcXVlc3QgdG8gcmVtb3ZlICUuMjUwcyB3aGljaCBpc24ndCBpbnN0YWxsZWQuIgorbXNnc3RyICLjgqTjg7Pjgrnjg4jjg7zjg6vjgZXjgozjgabjgYTjgarjgYQgJS4yNTBzIOOCkuWJiumZpOOBmeOCi+imgeaxguOCkueEoeimluOBl+OBvuOBmeOAgiIKKworIzogc3JjL3JlbW92ZS5jOjk1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpZ25vcmluZyByZXF1ZXN0IHRvIHJlbW92ZSAlLjI1MHMsIG9ubHkgdGhlIGNvbmZpZ1xuIgorIiBmaWxlcyBvZiB3aGljaCBhcmUgb24gdGhlIHN5c3RlbS4gVXNlIC0tcHVyZ2UgdG8gcmVtb3ZlIHRoZW0gdG9vLiIKK21zZ3N0ciAiIgorIiUuMjUwcyDjga7liYrpmaTjga7opoHmsYLjgpLnhKHoppbjgZfjgb7jgZnjgILjgrfjgrnjg4bjg6DkuIrjgavjga/oqK3lrprjg5XjgqHjgqTjg6vjga7jgb9cbiIKKyLjgYzjgYLjgorjgb7jgZnjgILoqK3lrprjg5XjgqHjgqTjg6vjgoLliYrpmaTjgZnjgovjgavjga8gLS1wdXJnZSDjgpLkvb/nlKjjgZfjgabjgY/jgaDjgZXjgYTjgIIiCisKKyM6IHNyYy9yZW1vdmUuYzoxMDMKK21zZ2lkICJUaGlzIGlzIGFuIGVzc2VudGlhbCBwYWNrYWdlIC0gaXQgc2hvdWxkIG5vdCBiZSByZW1vdmVkLiIKK21zZ3N0ciAi44GT44KM44Gv5LiN5Y+v5qygIChlc3NlbnRpYWwpIOODkeODg+OCseODvOOCuOOBp+OBmSAtIOWJiumZpOOBmeOBueOBjeOBp+OBr+OBguOCiuOBvuOBm+OCk+OAgiIKKworIzogc3JjL3JlbW92ZS5jOjEyOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogZGVwZW5kZW5jeSBwcm9ibGVtcyBwcmV2ZW50IHJlbW92YWwgb2YgJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiDkvp3lrZjplqLkv4Ljga7llY/poYzjgavjgojjgorjgIElcyDjga7liYrpmaTjgYzjgafjgY3jgb7jgZvjgpM6XG4iCisiJXMiCisKKyM6IHNyYy9yZW1vdmUuYzoxMzAKK21zZ2lkICJkZXBlbmRlbmN5IHByb2JsZW1zIC0gbm90IHJlbW92aW5nIgorbXNnc3RyICLkvp3lrZjplqLkv4Ljga7llY/poYwgLSDliYrpmaTjgZfjgb7jgZvjgpMiCisKKyM6IHNyYy9yZW1vdmUuYzoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6ICVzOiBkZXBlbmRlbmN5IHByb2JsZW1zLCBidXQgcmVtb3ZpbmcgYW55d2F5IGFzIHlvdSByZXF1ZXN0ZWQ6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiAlczog5L6d5a2Y6Zai5L+C44Gr5ZWP6aGM44GM44GC44KK44G+44GZ44CC44GX44GL44GX6KaB5rGC44Gr5b6T44GE5YmK6Zmk44GX44Gm44GE44G+44GZOlxuIgorIiVzIgorCisjOiBzcmMvcmVtb3ZlLmM6MTQyCittc2dpZCAiIgorIlBhY2thZ2UgaXMgaW4gYSB2ZXJ5IGJhZCBpbmNvbnNpc3RlbnQgc3RhdGUgLSB5b3Ugc2hvdWxkXG4iCisiIHJlaW5zdGFsbCBpdCBiZWZvcmUgYXR0ZW1wdGluZyBhIHJlbW92YWwuIgorbXNnc3RyICIiCisi44OR44OD44Kx44O844K444GM6Z2e5bi444Gr55+b55u+44GX44Gf54q25oWL44Gr6Zml44KK44G+44GX44Gf44CCXG4iCisi5YmK6Zmk44KS6KGM44GG5YmN44Gr44GT44Gu44OR44OD44Kx44O844K444KS5YaN44Kk44Oz44K544OI44O844Or44GZ44G544GN44Gn44GZ44CCIgorCisjOiBzcmMvcmVtb3ZlLmM6MTQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIldvdWxkIHJlbW92ZSBvciBwdXJnZSAlcyAuLi5cbiIKK21zZ3N0ciAiJXMg44Gu5YmK6Zmk44G+44Gf44Gv5a6M5YWo5YmK6ZmkIC4uLlxuIgorCisjOiBzcmMvcmVtb3ZlLmM6MTU3CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlbW92aW5nICVzIC4uLlxuIgorbXNnc3RyICIlcyDjgpLliYrpmaTjgZfjgabjgYTjgb7jgZkgLi4uXG4iCisKKyM6IHNyYy9yZW1vdmUuYzoyNzUgc3JjL3JlbW92ZS5jOjM2NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisid2hpbGUgcmVtb3ZpbmcgJS4yNTBzLCB1bmFibGUgdG8gcmVtb3ZlIGRpcmVjdG9yeSAnJS4yNTBzJzogJXMgLSBkaXJlY3RvcnkgIgorIm1heSBiZSBhIG1vdW50IHBvaW50PyIKK21zZ3N0ciAiIgorIiUuMjUwcyDjga7liYrpmaTkuK3jgafjgZnjgYzjgIHjg4fjgqPjg6zjgq/jg4jjg6ogJyUuMjUwcycg44KS5YmK6Zmk44Gn44GN44G+44Gb44KTOiAlcyAtIOODh+OCo+ODrOOCryIKKyLjg4jjg6rjga/jg57jgqbjg7Pjg4jjg53jgqTjg7Pjg4jjgafjga/jgYLjgorjgb7jgZvjgpPjgYs/IgorCisjOiBzcmMvcmVtb3ZlLmM6Mjg5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWN1cmVseSByZW1vdmUgJyUuMjUwcyciCittc2dzdHIgIiclLjI1NXMnIOOCkuWuieWFqOOBq+WJiumZpOOBp+OBjeOBvuOBm+OCkyIKKworIzogc3JjL3JlbW92ZS5jOjM2MQorIywgYy1mb3JtYXQKK21zZ2lkICJ3aGlsZSByZW1vdmluZyAlLjI1MHMsIGRpcmVjdG9yeSAnJS4yNTBzJyBub3QgZW1wdHkgc28gbm90IHJlbW92ZWQuIgorbXNnc3RyICIiCisiJS4yNTBzIOOBruWJiumZpOS4reOAgeODh+OCo+ODrOOCr+ODiOODqiAnJS4yNTBzJyDjgYznqbrjgafjgarjgYTjgZ/jgoHliYrpmaTjgafjgY3jgb7jgZvjgpPjgafjgZfjgZ/jgIIiCisKKyM6IHNyYy9yZW1vdmUuYzozODMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImNhbm5vdCByZW1vdmUgYCUuMjUwcyciCittc2dpZCAiY2Fubm90IHJlbW92ZSAnJS4yNTBzJyIKK21zZ3N0ciAiYCUuMjUwcycg44KS5YmK6Zmk44Gn44GN44G+44Gb44KTIgorCisjOiBzcmMvcmVtb3ZlLmM6NDA5CisjLCBjLWZvcm1hdAorbXNnaWQgIlB1cmdpbmcgY29uZmlndXJhdGlvbiBmaWxlcyBmb3IgJXMgLi4uXG4iCittc2dzdHIgIiVzIOOBruioreWumuODleOCoeOCpOODq+OCkuWJiumZpOOBl+OBpuOBhOOBvuOBmSAuLi5cbiIKKworIzogc3JjL3JlbW92ZS5jOjQ1OQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVtb3ZlIG9sZCBjb25maWcgZmlsZSBgJS4yNTBzJyAoPSBgJS4yNTBzJykiCittc2dzdHIgIuWPpOOBhOioreWumuODleOCoeOCpOODqyBgJS4yNTBzJyAoPSBgJS4yNTBzJykg44KS5YmK6Zmk44Gn44GN44G+44Gb44KTIgorCisjOiBzcmMvcmVtb3ZlLmM6NDc0CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZWFkIGNvbmZpZyBmaWxlIGRpciBgJS4yNTBzJyAoZnJvbSBgJS4yNTBzJykiCittc2dzdHIgIihgJTIkLjI1MHMnIOOBi+OCiSkg6Kit5a6a44OV44Kh44Kk44Or44OH44Kj44Os44Kv44OI44OqIGAlMSQuMjUwcycg44KS6Kqt44KB44G+44Gb44KTIgorCisjOiBzcmMvcmVtb3ZlLmM6NTEwCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZW1vdmUgb2xkIGJhY2t1cCBjb25maWcgZmlsZSBgJS4yNTBzJyAob2YgYCUuMjUwcycpIgorbXNnc3RyICIoYCUyJC4yNTBzJyDjga4pIOWPpOOBhOODkOODg+OCr+OCouODg+ODl+ODleOCoeOCpOODqyBgJTEkLjI1MHMnIOOCkuWJiumZpOOBp+OBjeOBvuOBm+OCkyIKKworIzogc3JjL3JlbW92ZS5jOjU2OAorbXNnaWQgImNhbm5vdCByZW1vdmUgb2xkIGZpbGVzIGxpc3QiCittc2dzdHIgIuWPpOOBhOODleOCoeOCpOODq+ODquOCueODiOOCkuWJiumZpOOBp+OBjeOBvuOBm+OCkyIKKworIzogc3JjL3JlbW92ZS5jOjU3NAorbXNnaWQgImNhbid0IHJlbW92ZSBvbGQgcG9zdHJtIHNjcmlwdCIKK21zZ3N0ciAi5Y+k44GEIHBvc3RybSDjgrnjgq/jg6rjg5fjg4jjgpLliYrpmaTjgafjgY3jgb7jgZvjgpMiCisKKyM6IHNyYy9zZWxlY3QuYzoxMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgaW4gcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQiCittc2dzdHIgIiVkIOihjOebruOBruODkeODg+OCseODvOOCuOWQjeOBq+S6iOacn+OBl+OBquOBhCBlb2Yg44GM44GC44KK44G+44GZIgorCisjOiBzcmMvc2VsZWN0LmM6MTE2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGxpbmUgaW4gcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQiCittc2dzdHIgIiVkIOihjOebruOBruODkeODg+OCseODvOOCuOWQjeOBq+S6iOacn+OBl+OBquOBhCBlb2Yg44GM44GC44KK44G+44GZIgorCisjOiBzcmMvc2VsZWN0LmM6MTIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW9mIGFmdGVyIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICIlZCDooYznm67jga7jg5Hjg4PjgrHjg7zjgrjlkI3jga7lvozjgavkuojmnJ/jgZfjgarjgYQgZW9mIOOBjOOBguOCiuOBvuOBmSIKKworIzogc3JjL3NlbGVjdC5jOjEyMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBsaW5lIGFmdGVyIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICIlZCDooYznm67jga7jg5Hjg4PjgrHjg7zjgrjlkI3jga7lvozjgavkuojmnJ/jgZfjgarjgYTmlLnooYzjgYzjgYLjgorjgb7jgZkiCisKKyM6IHNyYy9zZWxlY3QuYzoxMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBkYXRhIGFmdGVyIHBhY2thZ2UgYW5kIHNlbGVjdGlvbiBhdCBsaW5lICVkIgorbXNnc3RyICIlZCDooYznm67jga7jg5Hjg4PjgrHjg7zjgrjjgajpgbjmip7jga7lvozjgavkuojmnJ/jgZfjgarjgYTjg4fjg7zjgr/jgYzjgYLjgorjgb7jgZkiCisKKyM6IHNyYy9zZWxlY3QuYzoxMzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWxsZWdhbCBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZDogJS4yNTBzIgorbXNnc3RyICIlZCDooYznm67jga7jg5Hjg4PjgrHjg7zjgrjlkI3jga/kuI3mraPjgafjgZk6ICUuMjUwcyIKKworIzogc3JjL3NlbGVjdC5jOjE0MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIHdhbnRlZCBzdGF0dXMgYXQgbGluZSAlZDogJS4yNTBzIgorbXNnc3RyICIlZCDooYznm67jga7opoHmsYLnirbmhYvjga/kuI3mmI7jgafjgZk6ICUuMjUwcyIKKworIzogc3JjL3NlbGVjdC5jOjE0OQorbXNnaWQgInJlYWQgZXJyb3Igb24gc3RhbmRhcmQgaW5wdXQiCittc2dzdHIgIuaomea6luWFpeWKm+OBi+OCieOBruiqreOBv+WPluOCiuaZguOBq+OCqOODqeODvOOBjOeZuueUn+OBl+OBvuOBl+OBnyIKKworIzogc3JjL3N0YXRjbWQuYzo1MgorIywgZnV6enkKKyN8IG1zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IHF1ZXJ5aW5nIHBhY2thZ2VzLiIKK21zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IG92ZXJyaWRpbmcgZmlsZSBzdGF0IGluZm9ybWF0aW9uLiIKK21zZ3N0ciAi44OR44OD44Kx44O844K454Wn5Lya44Gr44Gk44GE44Gm44Gu44OY44Or44OX44Gr44Gv44CBLS1oZWxwIOOCkuS9v+eUqOOBl+OBpuOBj+OBoOOBleOBhOOAgiIKKworIzogc3JjL3N0YXRjbWQuYzo2MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29weXJpZ2h0IChDKSAyMDAwLCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDA2LTIwMDkgR3VpbGxlbSBKb3Zlci5cbiIKK21zZ3N0ciAiIgorIkNvcHlyaWdodCAoQykgMjAwMCwgMjAwMSBXaWNoZXJ0IEFra2VybWFuLlxuIgorIkNvcHlyaWdodCAoQykgMjAwNi0yMDA5IEd1aWxsZW0gSm92ZXIuXG4iCisKKyM6IHNyYy9zdGF0Y21kLmM6ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLS1hZGQgPG93bmVyPiA8Z3JvdXA+IDxtb2RlPiA8ZmlsZT5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBhZGQgYSBuZXcgZW50cnkgaW50byB0aGUgZGF0YWJhc2UuXG4iCisiICAtLXJlbW92ZSA8ZmlsZT4gICAgICAgICAgcmVtb3ZlIGZpbGUgZnJvbSB0aGUgZGF0YWJhc2UuXG4iCisiICAtLWxpc3QgWzxnbG9iLXBhdHRlcm4+XSAgbGlzdCBjdXJyZW50IG92ZXJyaWRlcyBpbiB0aGUgZGF0YWJhc2UuXG4iCisiXG4iCittc2dzdHIgIiIKKyLjgrPjg57jg7Pjg4k6XG4iCisiICAtLWFkZCA85omA5pyJ6ICFPiA844Kw44Or44O844OXPiA844Oi44O844OJPiA844OV44Kh44Kk44OrPlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIOaWsOOBl+OBhOOCqOODs+ODiOODquOCkuODh+ODvOOCv+ODmeODvOOCueOBq+i/veWKoOOBmeOCi1xuIgorIiAgLS1yZW1vdmUgPOODleOCoeOCpOODqz4gICAgICAg44OH44O844K/44OZ44O844K544GL44KJ44OV44Kh44Kk44Or44KS5YmK6Zmk44GZ44KLXG4iCisiICAtLWxpc3QgWzzjgrDjg63jg5bjg5Hjgr/jg7zjg7M+XSDjg4fjg7zjgr/jg5njg7zjgrnlhoXjga7nj77lnKjjga4gb3ZlcnJpZGVzIOOBruS4gOimp+OCkuihqOekuuOBmSIKKyLjgotcbiIKKyJcbiIKKworIzogc3JjL3N0YXRjbWQuYzo4OQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICBzZXQgdGhlIGRpcmVjdG9yeSB3aXRoIHRoZSBzdGF0b3ZlcnJpZGUgZmlsZS5cbiIKKyIgIC0tdXBkYXRlICAgICAgICAgICAgICAgICBpbW1lZGlhdGVseSB1cGRhdGUgZmlsZSBwZXJtaXNzaW9ucy5cbiIKKyIgIC0tZm9yY2UgICAgICAgICAgICAgICAgICBmb3JjZSBhbiBhY3Rpb24gZXZlbiBpZiBhIHNhbml0eSBjaGVjayBmYWlscy5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBxdWlldCBvcGVyYXRpb24sIG1pbmltYWwgb3V0cHV0LlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIuOCquODl+OCt+ODp+ODszpcbiIKKyIgIC0tYWRtaW5kaXIgPOODh+OCo+ODrOOCr+ODiOODqj4gIHN0YXJ0b3ZlcnJpZGUg44OV44Kh44Kk44Or44Gu44OH44Kj44Os44Kv44OI44Oq44KS6Kit5a6a44GZ44KLXG4iCisiICAtLXVwZGF0ZSAgICAgICAgICAgICAgICAgICDku4rjgZnjgZDjg5XjgqHjgqTjg6vjg5Hjg7zjg5/jg4Pjgrfjg6fjg7PjgpLmm7TmlrDjgZnjgotcbiIKKyIgIC0tZm9yY2UgICAgICAgICAgICAgICAgICAgIOato+W4uOeKtuaFi+ODgeOCp+ODg+OCr+OBjOWkseaVl+OBl+OBpuOCguW8t+WItueahOOBq+ihjOOBhlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgICAg6Z2Z44GL44Gq5pON5L2c44Go44GX44Gm44CB5pyA5bCP6ZmQ44Gu5Ye65Yqb44Gr44GZ44KLXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgICDjgZPjga7jg5jjg6vjg5fjgpLooajnpLrjgZnjgotcbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgIOODkOODvOOCuOODp+ODs+eVquWPt+OCkuihqOekuuOBmeOCi1xuIgorCisjOiBzcmMvc3RhdGNtZC5jOjExNgorbXNnaWQgInN0cmlwcGluZyB0cmFpbGluZyAvIgorbXNnc3RyICLmnKvlsL7jga4gLyDjgpLlj5bjgorpmaTjgYTjgabjgYTjgb7jgZkiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjA3Cittc2dpZCAiY2Fubm90IG9wZW4gbmV3IHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICLmlrDjgZfjgYQgc3RhdG92ZXJyaWRlIOODleOCoeOCpOODq+OCkuOCquODvOODl+ODs+OBp+OBjeOBvuOBm+OCkyIKKworIzogc3JjL3N0YXRjbWQuYzoyMjIKK21zZ2lkICJlcnJvciByZW1vdmluZyBzdGF0b3ZlcnJpZGUtb2xkIgorbXNnc3RyICJzdGF0b3ZlcnJpZGUtb2xkIOOBruWJiumZpOS4reOBq+OCqOODqeODvOOBjOeZuueUn+OBl+OBvuOBl+OBnyIKKworIzogc3JjL3N0YXRjbWQuYzoyMjQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBuZXcgc3RhdG92ZXJyaWRlLW9sZCIKK21zZ3N0ciAi5paw44GX44GEIHN0YXRvdmVycmlkZS1vbGQg44Gu5L2c5oiQ5Lit44Gr44Ko44Op44O844GM55m655Sf44GX44G+44GX44GfIgorCisjOiBzcmMvc3RhdGNtZC5jOjIyNgorbXNnaWQgImVycm9yIGluc3RhbGxpbmcgbmV3IHN0YXRvdmVycmlkZSIKK21zZ3N0ciAi5paw44GX44GEIHN0YXRvdmVycmlkZSDjga7jgqTjg7Pjgrnjg4jjg7zjg6vkuK3jgavjgqjjg6njg7zjgYznmbrnlJ/jgZfjgb7jgZfjgZ8iCisKKyM6IHNyYy9zdGF0Y21kLmM6MjQ2Cittc2dpZCAiLS1hZGQgbmVlZHMgZm91ciBhcmd1bWVudHMiCittc2dzdHIgIi0tYWRkIOOBryA0IOOBpOOBruW8leaVsOOBjOW/heimgeOBp+OBmSIKKworIzogc3JjL3N0YXRjbWQuYzoyNTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkFuIG92ZXJyaWRlIGZvciAnJXMnIGFscmVhZHkgZXhpc3RzLCBidXQgLS1mb3JjZSBzcGVjaWZpZWQgc28gd2lsbCBiZSAiCisiaWdub3JlZC4iCittc2dzdHIgIiIKKyLjgZnjgafjgavlrZjlnKjjgZnjgosgJyVzJyDjgbjjga4gb3ZlcnJpZGUg44Gn44GZ44GM44CBLS1mb3JjZSDjgYzmjIflrprjgZXjgozjgabjgYTjgovjga7jgafnhKHoppbjgZciCisi44G+44GZ44CCIgorCisjOiBzcmMvc3RhdGNtZC5jOjI2MAorIywgYy1mb3JtYXQKK21zZ2lkICJBbiBvdmVycmlkZSBmb3IgJyVzJyBhbHJlYWR5IGV4aXN0cywgYWJvcnRpbmcuIgorbXNnc3RyICJcIiVzXCIg44GuIG92ZXJyaWRlIOOBjOOBmeOBp+OBq+WtmOWcqOOBmeOCi+OBruOBp+OAgeS4reatouOBl+OBvuOBmeOAgiIKKworIzogc3JjL3N0YXRjbWQuYzoyNzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS11cGRhdGUgZ2l2ZW4gYnV0ICVzIGRvZXMgbm90IGV4aXN0IgorbXNnc3RyICItLXVwZGF0ZSDjgYzmjIflrprjgZXjgozjgb7jgZfjgZ/jgYzjgIElcyDjga/lrZjlnKjjgZfjgb7jgZvjgpMiCisKKyM6IHNyYy9zdGF0Y21kLmM6Mjk2Cittc2dpZCAiTm8gb3ZlcnJpZGUgcHJlc2VudC4iCittc2dzdHIgIm92ZXJyaWRlIOOBjOaPkOS+m+OBleOCjOOBpuOBhOOBvuOBm+OCk+OAgiIKKworIzogc3JjL3N0YXRjbWQuYzozMDQKK21zZ2lkICItLXVwZGF0ZSBpcyB1c2VsZXNzIGZvciAtLXJlbW92ZSIKK21zZ3N0ciAiLS11cGRhdGUg44GvIC0tcmVtb3ZlIOOBq+OBr+eEoeaEj+WRs+OBp+OBmSIKKworIzogc3JjL3N0YXRkYi5jOjU5Cittc2dpZCAic3ludGF4IGVycm9yOiBpbnZhbGlkIHVpZCBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAi5paH5rOV44Ko44Op44O8OiBzdGF0b3ZlcnJpZGUg44OV44Kh44Kk44Or44Gr54Sh5Yq544GqIHVpZCDjgYzjgYLjgorjgb7jgZkiCisKKyM6IHNyYy9zdGF0ZGIuYzo2NAorIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3I6IHVua25vd24gdXNlciAnJXMnIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICLmlofms5Xjgqjjg6njg7w6IHN0YXRvdmVycmlkZSDjg5XjgqHjgqTjg6vjgavmnKrnn6Xjga7jg6bjg7zjgrYgJyVzJyDjgYzjgYLjgorjgb7jgZkiCisKKyM6IHNyYy9zdGF0ZGIuYzo4MworbXNnaWQgInN5bnRheCBlcnJvcjogaW52YWxpZCBnaWQgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIuaWh+azleOCqOODqeODvDogc3RhdG92ZXJyaWRlIOODleOCoeOCpOODq+OBq+eEoeWKueOBqiBnaWQg44GM44GC44KK44G+44GZIgorCisjOiBzcmMvc3RhdGRiLmM6ODgKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yOiB1bmtub3duIGdyb3VwICclcycgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIuaWh+azleOCqOODqeODvDogc3RhdG92ZXJyaWRlIOODleOCoeOCpOODq+OBq+acquefpeOBruOCsOODq+ODvOODlyAnJXMnIOOBjOOBguOCiuOBvuOBmSIKKworIzogc3JjL3N0YXRkYi5jOjEwNAorbXNnaWQgInN5bnRheCBlcnJvcjogaW52YWxpZCBtb2RlIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICLmlofms5Xjgqjjg6njg7w6IHN0YXRvdmVycmlkZSDjg5XjgqHjgqTjg6vjgavnhKHlirnjgarjg6Ljg7zjg4njgYzjgYLjgorjgb7jgZkiCisKKyM6IHNyYy9zdGF0ZGIuYzoxMjcKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAic3RhdG92ZXJyaWRlIOODleOCoeOCpOODq+OBruOCquODvOODl+ODs+OBq+WkseaVl+OBl+OBvuOBl+OBnyIKKworIzogc3JjL3N0YXRkYi5jOjEzNAorbXNnaWQgImZhaWxlZCB0byBmc3RhdCBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAic3RhdG92ZXJyaWRlIOODleOCoeOCpOODq+OBrueKtuaFi+OCkuWPluW+l+OBp+OBjeOBvuOBm+OCk+OBp+OBl+OBnyAoZnN0YXQg44Gr5aSx5pWXKSIKKworIzogc3JjL3N0YXRkYi5jOjEzNworbXNnaWQgImZhaWxlZCB0byBmc3RhdCBwcmV2aW91cyBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAi5YmN5Zue44GuIHN0YXRvdmVycmlkZSDjg5XjgqHjgqTjg6vjga7nirbmhYvjgpLlj5blvpfjgafjgY3jgb7jgZvjgpPjgafjgZfjgZ8gKGZzdGF044Gr5aSx5pWXKSIKKworIzogc3JjL3N0YXRkYi5jOjE2MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic3RhdG92ZXJyaWRlIGZpbGUgYCUuMjUwcyciCittc2dpZCAicmVhZGluZyBzdGF0b3ZlcnJpZGUgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAic3RhdG92ZXJyaWRlIOODleOCoeOCpOODqyBgJS4yNTBzJyIKKworIzogc3JjL3N0YXRkYi5jOjE2OQorbXNnaWQgInN0YXRvdmVycmlkZSBmaWxlIGlzIG1pc3NpbmcgZmluYWwgbmV3bGluZSIKK21zZ3N0ciAic3RhdG92ZXJyaWRlIOODleOCoeOCpOODq+OBruacgOW+jOOBruihjOOBq+aUueihjOOBjOOBguOCiuOBvuOBm+OCkyIKKworIzogc3JjL3N0YXRkYi5jOjE3MworbXNnaWQgInN0YXRvdmVycmlkZSBmaWxlIGNvbnRhaW5zIGVtcHR5IGxpbmUiCittc2dzdHIgInN0YXRvdmVycmlkZSDjg5XjgqHjgqTjg6vjgYznqbrooYzjgpLlkKvjgpPjgafjgYTjgb7jgZkiCisKKyM6IHNyYy9zdGF0ZGIuYzoxNzggc3JjL3N0YXRkYi5jOjE5MCBzcmMvc3RhdGRiLmM6MjAyCittc2dpZCAic3ludGF4IGVycm9yIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJzdGF0b3ZlcnJpZGUg44OV44Kh44Kk44Or44Gr5paH5rOV44Ko44Op44O844GM44GC44KK44G+44GZIgorCisjOiBzcmMvc3RhdGRiLmM6MTg2IHNyYy9zdGF0ZGIuYzoxOTggc3JjL3N0YXRkYi5jOjIxMAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGxpbmUgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgInN0YXRvdmVycmlkZSDjg5XjgqHjgqTjg6vjgavkuojmnJ/jgZvjgawgZW9mIOOBjOOBguOCiuOBvuOBmSIKKworIzogc3JjL3N0YXRkYi5jOjIxNAorIywgYy1mb3JtYXQKK21zZ2lkICJtdWx0aXBsZSBzdGF0dXNvdmVycmlkZXMgcHJlc2VudCBmb3IgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAi6KSH5pWw44GuIHN0YXRvdmVycmlkZXMg44GMIOODleOCoeOCpOODqyAnJS4yNTBzJyDjgavlr77jgZfjgabmj5DkvpvjgZXjgozjgabjgYTjgb7jgZkiCisKKyM6IHNyYy90cmlnY21kLmM6NDYKK21zZ2lkICJUeXBlIGRwa2ctdHJpZ2dlciAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgdGhpcyB1dGlsaXR5LiIKK21zZ3N0ciAiIgorIuOBk+OBruODpuODvOODhuOCo+ODquODhuOCo+OBq+OBpOOBhOOBpuOBruODmOODq+ODl+OBryBkcGtnLXRyaWdnZXIgLS1oZWxwIOOBp+WPgueFp+OBl+OBpuOBj+OBoOOBleOBhOOAgiIKKworIzogc3JjL3RyaWdjbWQuYzo1MQorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gJXMgcGFja2FnZSB0cmlnZ2VyIHV0aWxpdHkgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiRGViaWFuICVzIOODkeODg+OCseODvOOCuOODiOODquOCrOODpuODvOODhuOCo+ODquODhuOCo+ODkOODvOOCuOODp+ODsyAlc+OAglxuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjY3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJVc2FnZTogJXMgWzxvcHRpb25zPiAuLi5dIDx0cmlnZ2VyLW5hbWU+XG4iCisiICAgICAgICVzIFs8b3B0aW9ucz4gLi4uXSA8Y29tbWFuZD5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIuS9v+OBhOaWuTogJXMgWzzjgqrjg5fjgrfjg6fjg7M+IC4uLl0gPOODiOODquOCrOWQjT5cbiIKKyIgICAgICAgICVzIFs844Kq44OX44K344On44OzPiAuLi5dIDzjgrPjg57jg7Pjg4k+XG4iCisiXG4iCisKKyM6IHNyYy90cmlnY21kLmM6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLS1jaGVjay1zdXBwb3J0ZWQgICAgICAgICAgICAgICAgQ2hlY2sgaWYgdGhlIHJ1bm5pbmcgZHBrZyBzdXBwb3J0cyAiCisidHJpZ2dlcnMuXG4iCisiXG4iCittc2dzdHIgIiIKKyLjgrPjg57jg7Pjg4k6XG4iCisiICAtLWNoZWNrLXN1cHBvcnRlZCAgICAgICAgICAgICAgICDlrp/ooYzkuK3jga4gZHBrZyDjgYzjg4jjg6rjgqzjgpLjgrXjg53jg7zjg4jjgZfjgabjgYTjgovjgYsiCisi44Gp44GG44GL44KS6Kq/44G544KL44CCXG4iCisiXG4iCisKKyM6IHNyYy90cmlnY21kLmM6ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgICAgICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyIgIC0tYnktcGFja2FnZT08cGFja2FnZT4gICAgICAgICAgIE92ZXJyaWRlIHRyaWdnZXIgYXdhaXRlciAobm9ybWFsbHkgc2V0XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ5IGRwa2cpLlxuIgorIiAgLS1uby1hd2FpdCAgICAgICAgICAgICAgICAgICAgICAgTm8gcGFja2FnZSBuZWVkcyB0byBhd2FpdCB0aGUgIgorInByb2Nlc3NpbmcuXG4iCisiICAtLW5vLWFjdCAgICAgICAgICAgICAgICAgICAgICAgICBKdXN0IHRlc3QgLSBkb24ndCBhY3R1YWxseSBjaGFuZ2UgIgorImFueXRoaW5nLlxuIgorIlxuIgorbXNnc3RyICIiCisi44Kq44OX44K344On44OzOlxuIgorIiAgLS1hZG1pbmRpcj0844OH44Kj44Os44Kv44OI44OqPiAgICAgICAgJXMg44Gu5Luj44KP44KK44GrIDzjg4fjgqPjg6zjgq/jg4jjg6o+IOOCkuS9v+OBhuOAglxuIgorIiAgLS1ieS1wYWNrYWdlPTzjg5Hjg4PjgrHjg7zjgrg+ICAgICAgICDjg4jjg6rjgqzjga7lvoXjgaHlj5fjgZHlvbnjgpLkuIrmm7jjgY3jgZnjgosgKOmAmuW4uOOBr1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkcGtnIOOBq+OCiOOBo+OBpuioreWumuOBleOCjOOCiynjgIJcbiIKKyIgIC0tbm8tYXdhaXQgICAgICAgICAgICAgICAgICAgICAgIOOBqeOBruODkeODg+OCseODvOOCuOOCguWHpueQhuOCkuW+heOBpOW/heimgeOBjOOBquOBhOOBk+OBqOOCkiIKKyLnpLrjgZnjgIJcbiIKKyIgIC0tbm8tYWN0ICAgICAgICAgICAgICAgICAgICAgICAgIOODhuOCueODiOeUqOmAlOOAguWun+mam+OBq+OBr+S9leOCguWkieabtOOBl+OBquOBhOOAglxuIgorIlxuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogdHJpZ2dlcnMgZGF0YSBkaXJlY3Rvcnkgbm90IHlldCBjcmVhdGVkXG4iCittc2dzdHIgIiVzOiDjg4jjg6rjgqzjga7jg4fjg7zjgr/jg4fjgqPjg6zjgq/jg4jjg6rjgYzjgb7jgaDkvZzmiJDjgZXjgozjgabjgYTjgb7jgZvjgpNcbiIKKworIzogc3JjL3RyaWdjbWQuYzoxNTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IHRyaWdnZXIgcmVjb3JkcyBub3QgeWV0IGluIGV4aXN0ZW5jZVxuIgorbXNnc3RyICIlczog44OI44Oq44Ks6KiY6Yyy44GM44G+44Gg5a2Y5Zyo44GX44G+44Gb44KTXG4iCisKKyM6IHNyYy90cmlnY21kLmM6MjA1Cittc2dpZCAidGFrZXMgb25lIGFyZ3VtZW50LCB0aGUgdHJpZ2dlciBuYW1lIgorbXNnc3RyICLlvJXmlbDjgpLjgbLjgajjgaQgKOODiOODquOCrOWQjSkg44Gg44GR44Go44KK44G+44GZIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIxMAorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiZHBrZy10cmlnZ2VyIG11c3QgYmUgY2FsbGVkIGZyb20gYSBtYWludGFpbmVyIHNjcmlwdCAob3Igd2l0aCBhIC0tYnktIgorI3wgInBhY2thZ2Ugb3B0aW9uKSIKK21zZ2lkICJtdXN0IGJlIGNhbGxlZCBmcm9tIGEgbWFpbnRhaW5lciBzY3JpcHQgKG9yIHdpdGggYSAtLWJ5LXBhY2thZ2Ugb3B0aW9uKSIKK21zZ3N0ciAiIgorImRwa2ctdHJpZ2dlciDjga/jg6Hjg7Pjg4bjg4rjgrnjgq/jg6rjg5fjg4jjgYvjgokgKOOBvuOBn+OBryAtLWJ5LXBhY2thZ2Ug44Kq44OX44K344On44Oz44KS5LuY44GRIgorIuOBpikg5ZG844Gw44KM44Gq44GR44KM44Gw44Gq44KK44G+44Gb44KTIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIxNQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZHBrZy10cmlnZ2VyOiBpbGxlZ2FsIGF3YWl0ZWQgcGFja2FnZSBuYW1lIGAlLjI1MHMnOiAlLjI1MHMiCittc2dpZCAiaWxsZWdhbCBhd2FpdGVkIHBhY2thZ2UgbmFtZSAnJS4yNTBzJzogJS4yNTBzIgorbXNnc3RyICJkcGtnLXRyaWdnZXI6IOeEoeWKueOBquW+heOBoeWPl+OBkeODkeODg+OCseODvOOCuOWQjSBgJS4yNTBzJzogJS4yNTBzIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIyMQorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHRyaWdnZXIgbmFtZSBgJS4yNTBzJzogJS4yNTBzIgorbXNnc3RyICLnhKHlirnjgarjg4jjg6rjgqzlkI0gYCUuMjUwcyc6ICUuMjUwcyIKKworIzogc3JjL3RyaWdwcm9jLmM6MjUwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogY3ljbGUgZm91bmQgd2hpbGUgcHJvY2Vzc2luZyB0cmlnZ2VyczpcbiIKKyIgY2hhaW4gb2YgcGFja2FnZXMgd2hvc2UgdHJpZ2dlcnMgYXJlIG9yIG1heSBiZSByZXNwb25zaWJsZTpcbiIKK21zZ3N0ciAiIgorIiVzOiDjg4jjg6rjgqzlh6bnkIbkuK3jgavlvqrnkrDjgYznmbropovjgZXjgozjgb7jgZfjgZ86XG4iCisiIOODiOODquOCrOOCkuOBl+OBn+ODkeODg+OCseODvOOCuOOBruODgeOCp+OCpOODs+OBq+OBiuOBneOCieOBj+WOn+WboOOBjOOBguOCiuOBvuOBmTpcbiIKKworIzogc3JjL3RyaWdwcm9jLmM6MjU4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgcGFja2FnZXMnIHBlbmRpbmcgdHJpZ2dlcnMgd2hpY2ggYXJlIG9yIG1heSBiZSB1bnJlc29sdmFibGU6XG4iCittc2dzdHIgIiIKKyJcbiIKKyIg44OR44OD44Kx44O844K444Gu5L+d55WZ44OI44Oq44Ks44GM44GK44Gd44KJ44GP6Kej5rG65LiN5Y+v6IO9OlxuIgorCisjOiBzcmMvdHJpZ3Byb2MuYzoyODEKK21zZ2lkICJ0cmlnZ2VycyBsb29waW5nLCBhYmFuZG9uZWQiCittc2dzdHIgIuODiOODquOCrOOBjOODq+ODvOODl+OBl+OBpuOBiuOCiuOAgeaNqOOBpuOCieOCjOOBvuOBl+OBnyIKKworIzogc3JjL3RyaWdwcm9jLmM6MzEyCisjLCBjLWZvcm1hdAorbXNnaWQgIlByb2Nlc3NpbmcgdHJpZ2dlcnMgZm9yICVzIC4uLlxuIgorbXNnc3RyICIlcyDjga7jg4jjg6rjgqzjgpLlh6bnkIbjgZfjgabjgYTjgb7jgZkgLi4uXG4iCisKKyM6IHNyYy91cGRhdGUuYzo1MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiLS0lcyBuZWVkcyBleGFjdGx5IG9uZSBQYWNrYWdlcyBmaWxlIGFyZ3VtZW50IgorbXNnaWQgIi0tJXMgbmVlZHMgZXhhY3RseSBvbmUgUGFja2FnZXMtZmlsZSBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyDjga/lvJXmlbDjgasgUGFja2FnZXMg44OV44Kh44Kk44Or44KSIDEg44Gk44Gg44GR5b+F6KaB44Go44GX44G+44GZIgorCisjOiBzcmMvdXBkYXRlLmM6NjIKK21zZ2lkICJ1bmFibGUgdG8gYWNjZXNzIGRwa2cgc3RhdHVzIGFyZWEgZm9yIGJ1bGsgYXZhaWxhYmxlIHVwZGF0ZSIKK21zZ3N0ciAi5Yip55So5Y+v6IO944Gu5pu05paw44GM5aSa44GZ44GO44KL44Gf44KBIGRwa2cg44K544OG44O844K/44K544Ko44Oq44Ki44Gr44Ki44Kv44K744K544Gn44GN44G+44Gb44KTIgorCisjOiBzcmMvdXBkYXRlLmM6NjQKK21zZ2lkICJidWxrIGF2YWlsYWJsZSB1cGRhdGUgcmVxdWlyZXMgd3JpdGUgYWNjZXNzIHRvIGRwa2cgc3RhdHVzIGFyZWEiCittc2dzdHIgIiIKKyLlpKfpg6jliIbjga7liKnnlKjlj6/og73jgarmm7TmlrDjga8gZHBrZyDjgrnjg4bjg7zjgr/jgrnjgqjjg6rjgqLjgbjjga7mm7jjgY3ovrzjgb/jgqLjgq/jgrvjgrnjgpLlv4XopoHjgajjgZciCisi44G+44GZIgorCisjOiBzcmMvdXBkYXRlLmM6NzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVwbGFjaW5nIGF2YWlsYWJsZSBwYWNrYWdlcyBpbmZvLCB1c2luZyAlcy5cbiIKK21zZ3N0ciAiJXMg44KS5L2/55So44GX44Gm44CB5Y+W5b6X5Y+v6IO944Gq44OR44OD44Kx44O844K45oOF5aCx44KS5pu05paw44GX44Gm44GE44G+44GZ44CCXG4iCisKKyM6IHNyYy91cGRhdGUuYzo3NAorIywgYy1mb3JtYXQKK21zZ2lkICJVcGRhdGluZyBhdmFpbGFibGUgcGFja2FnZXMgaW5mbywgdXNpbmcgJXMuXG4iCittc2dzdHIgIiVzIOOCkuS9v+eUqOOBl+OBpuOAgeWPluW+l+WPr+iDveOBquODkeODg+OCseODvOOCuOaDheWgseOCkui/veWKoOOBl+OBpuOBhOOBvuOBmeOAglxuIgorCisjOiBzcmMvdXBkYXRlLmM6MTAxCisjLCBjLWZvcm1hdAorbXNnaWQgIkluZm9ybWF0aW9uIGFib3V0ICVkIHBhY2thZ2Ugd2FzIHVwZGF0ZWQuXG4iCittc2dpZF9wbHVyYWwgIkluZm9ybWF0aW9uIGFib3V0ICVkIHBhY2thZ2VzIHdhcyB1cGRhdGVkLlxuIgorbXNnc3RyWzBdICIlZCDlgIvjga7jg5Hjg4PjgrHjg7zjgrjmg4XloLHjgYzmm7TmlrDjgZXjgozjgb7jgZfjgZ/jgIJcbiIKK21zZ3N0clsxXSAiJWQg5YCL44Gu44OR44OD44Kx44O844K45oOF5aCx44GM5pu05paw44GV44KM44G+44GX44Gf44CCXG4iCisKKyM6IHNyYy91cGRhdGUuYzoxMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm9ic29sZXRlICctLSVzJyBvcHRpb24sIHVuYXZhaWxhYmxlIHBhY2thZ2VzIGFyZSBhdXRvbWF0aWNhbGx5IGNsZWFuZWQgdXAuIgorbXNnc3RyICIiCisiJy0tJXMnIOOCquODl+OCt+ODp+ODs+OBr+aZguS7o+mBheOCjOOBp+OBmeOAguWIqeeUqOOBp+OBjeOBquOBhOODkeODg+OCseODvOOCuOOBr+iHquWLleeahOOBq+OCr+ODquODvOODs+OCouODgyIKKyLjg5fjgZXjgozjgb7jgZnjgIIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgbmFtZSAnJS41MHMuLi4nIGlzIHRvbyBsb25nIgorbXNnc3RyICLjg5XjgqHjgqTjg6vlkI0gJyUuNTBzLi4uJyDjga/plbfjgZnjgY7jgb7jgZkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTI5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGZpbGUgbmFtZSAnJS4yNTBzJyIKK21zZ3N0ciAi44OV44Kh44Kk44Or5ZCNIGAlLjI1MHMnIOOBrueKtuaFi+OCkuWPluW+l+OBp+OBjeOBvuOBm+OCkyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoxODkKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBjb250cm9sIGRpcmVjdG9yeSIKK21zZ3N0ciAi44Kz44Oz44OI44Ot44O844Or44OH44Kj44Os44Kv44OI44Oq44Gu54q25oWL44KS5Y+W5b6X44Gn44GN44G+44Gb44KTIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjE5MQorbXNnaWQgImNvbnRyb2wgZGlyZWN0b3J5IGlzIG5vdCBhIGRpcmVjdG9yeSIKK21zZ3N0ciAi44Kz44Oz44OI44Ot44O844Or44OH44Kj44Os44Kv44OI44Oq44GM44OH44Kj44Os44Kv44OI44Oq44Gn44Gv44GC44KK44G+44Gb44KTIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjE5MworIywgYy1mb3JtYXQKK21zZ2lkICJjb250cm9sIGRpcmVjdG9yeSBoYXMgYmFkIHBlcm1pc3Npb25zICUwM2xvIChtdXN0IGJlID49MDc1NSBhbmQgPD0wNzc1KSIKK21zZ3N0ciAiIgorIuOCs+ODs+ODiOODreODvOODq+ODh+OCo+ODrOOCr+ODiOODquOBruioseWPr+WxnuaApyAlMDNsbyDjga/kuI3mraPjgafjgZkgKD49MDc1NSDjgYvjgaQgPD0wNzc1IOOBp+OBqiIKKyLjgZHjgozjgbDjgarjgorjgb7jgZvjgpMpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjIwNAorIywgYy1mb3JtYXQKK21zZ2lkICJtYWludGFpbmVyIHNjcmlwdCBgJS41MHMnIGlzIG5vdCBhIHBsYWluIGZpbGUgb3Igc3ltbGluayIKK21zZ3N0ciAiIgorIuODoeODs+ODhuODiuOCueOCr+ODquODl+ODiCBgJS41MHMnIOOBjOODhuOCreOCueODiOODleOCoeOCpOODq+OBi+OCt+ODs+ODnOODquODg+OCr+ODquODs+OCr+OBp+OBr+OBguOCiuOBvuOBmyIKKyLjgpPjgIIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjA3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJtYWludGFpbmVyIHNjcmlwdCBgJS41MHMnIGhhcyBiYWQgcGVybWlzc2lvbnMgJTAzbG8gKG11c3QgYmUgPj0wNTU1IGFuZCAiCisiPD0wNzc1KSIKK21zZ3N0ciAiIgorIuODoeODs+ODhuODiuOCueOCr+ODquODl+ODiCBgJS41MHMnIOOBruioseWPr+WxnuaApyAlMDNsbyDjga/kuI3mraPjgafjgZkgKD49MDU1NSDjgYvjgaQgPD0wNzc1IOOBpyIKKyLjgarjgZHjgozjgbDjgarjgorjgb7jgZvjgpMpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjIxMQorIywgYy1mb3JtYXQKK21zZ2lkICJtYWludGFpbmVyIHNjcmlwdCBgJS41MHMnIGlzIG5vdCBzdGF0dGFibGUiCittc2dzdHIgIuODoeODs+ODhuODiuOCueOCr+ODquODl+ODiCBgJS41MHMnIOOBrueKtuaFi+OCkuWPluW+l+OBp+OBjeOBvuOBm+OCkyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyMzcKK21zZ2lkICJlcnJvciBvcGVuaW5nIGNvbmZmaWxlcyBmaWxlIgorbXNnc3RyICJjb25mZmlsZXMg44OV44Kh44Kk44Or44Gu44Kq44O844OX44Oz5Lit44Gr44Ko44Op44O844GM55m655Sf44GX44G+44GX44GfIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI0NgorbXNnaWQgImVtcHR5IHN0cmluZyBmcm9tIGZnZXRzIHJlYWRpbmcgY29uZmZpbGVzIgorbXNnc3RyICJjb25mZmlsZXMg44Gu6Kqt44G/5Y+W44KK5Lit44GrIGZnZXRzIOOBi+OCieOBruepuuOBruaWh+WtlyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgbmFtZSAnJS41MHMuLi4nIGlzIHRvbyBsb25nLCBvciBtaXNzaW5nIGZpbmFsIG5ld2xpbmUiCittc2dzdHIgIuioreWumuODleOCoeOCpOODq+WQjSAnJS41MHMuLi4nIOOBr+mVt+OBmeOBjuOCi+OBi+OAgeacgOW+jOOBruaUueihjOOBjOOBguOCiuOBvuOBm+OCkyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgZmlsZW5hbWUgJyVzJyBjb250YWlucyB0cmFpbGluZyB3aGl0ZSBzcGFjZXMiCittc2dzdHIgIuioreWumuODleOCoeOCpOODqyAnJXMnIOOBruW+jOOCjeOBq+epuueZveOBjOS7mOOBhOOBpuOBhOOBvuOBmSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgYCUuMjUwcycgZG9lcyBub3QgYXBwZWFyIGluIHBhY2thZ2UiCittc2dzdHIgIuioreWumuODleOCoeOCpOODqyBgJS4yNTBzJyDjgYzjg5Hjg4PjgrHjg7zjgrjlhoXjgavjgYLjgorjgb7jgZvjgpMiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjY4CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIGAlLjI1MHMnIGlzIG5vdCBzdGF0dGFibGUiCittc2dzdHIgIuioreWumuODleOCoeOCpOODqyBgJS4yNTBzJyDjga7nirbmhYvjgpLlj5blvpfjgafjgY3jgb7jgZvjgpMiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjcwCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlICclcycgaXMgbm90IGEgcGxhaW4gZmlsZSIKK21zZ3N0ciAi6Kit5a6a44OV44Kh44Kk44OrICclcycg44GM44OX44Os44O844Oz44OV44Kh44Kk44Or44Gn44Gv44GC44KK44G+44Gb44KTIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI3NAorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBuYW1lICclcycgaXMgZHVwbGljYXRlZCIKK21zZ3N0ciAi6Kit5a6a44OV44Kh44Kk44Or5ZCNICclcycg44GM6YeN6KSH44GX44Gm44GE44G+44GZIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI4NworbXNnaWQgImVycm9yIHJlYWRpbmcgY29uZmZpbGVzIGZpbGUiCittc2dzdHIgImNvbmZmaWxlcyDjg5XjgqHjgqTjg6vjga7oqq3jgb/lj5bjgorkuK3jgavjgqjjg6njg7zjgYznmbrnlJ/jgZfjgb7jgZfjgZ8iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MzM5Cittc2dpZCAicGFja2FnZSBuYW1lIGhhcyBjaGFyYWN0ZXJzIHRoYXQgYXJlbid0IGxvd2VyY2FzZSBhbHBoYW51bXMgb3IgYC0rLiciCittc2dzdHIgIuODkeODg+OCseODvOOCuOWQjeOBq+Wwj+aWh+Wtl+OCouODq+ODleOCoeODmeODg+ODiOOAgeiLseaVsOWtl+OAgWAtKy4nIOS7peWkluOBruaWh+Wtl+OBjOOBguOCiuOBvuOBmSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzozNDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBjb250YWlucyB1c2VyLWRlZmluZWQgUHJpb3JpdHkgdmFsdWUgJyVzJyIKK21zZ3N0ciAiJyVzJyDjgYzjg6bjg7zjgrblrprnvqnjga7lhKrlhYjluqYgJyVzJyDjgpLlkKvjgpPjgafjgYTjgb7jgZkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MzQ3CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgY29udGFpbnMgdXNlci1kZWZpbmVkIGZpZWxkICclcyciCittc2dzdHIgIiclcycg44GM44Om44O844K25a6a576p44Gu44OV44Kj44O844Or44OJICclcycg44KS5ZCr44KT44Gn44GE44G+44GZIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjM1OAorIywgYy1mb3JtYXQKK21zZ2lkICJpZ25vcmluZyAlZCB3YXJuaW5nIGFib3V0IHRoZSBjb250cm9sIGZpbGUocylcbiIKK21zZ2lkX3BsdXJhbCAiaWdub3JpbmcgJWQgd2FybmluZ3MgYWJvdXQgdGhlIGNvbnRyb2wgZmlsZShzKVxuIgorbXNnc3RyWzBdICJkcGtnLWRlYjog44Kz44Oz44OI44Ot44O844Or44OV44Kh44Kk44Or44GuICVkIOWAi+OBruitpuWRiuOCkueEoeimluOBl+OBvuOBmVxuIgorbXNnc3RyWzFdICJkcGtnLWRlYjog44Kz44Oz44OI44Ot44O844Or44OV44Kh44Kk44Or44GuICVkIOWAi+OBruitpuWRiuOCkueEoeimluOBl+OBvuOBmVxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQwMyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQyOQorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhIDxkaXJlY3Rvcnk+IGFyZ3VtZW50IgorbXNnc3RyICItLSVzIOOBr+W8leaVsOOBqOOBl+OBpiA844OH44Kj44Os44Kv44OI44OqPiDjgYzlv4XopoHjgafjgZkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDA5Cittc2dpZCAiLS1idWlsZCB0YWtlcyBhdCBtb3N0IHR3byBhcmd1bWVudHMiCittc2dzdHIgIi0tYnVpbGQg44Gv5aSa44GP44Go44KCIDIg44Gk44Gu5byV5pWw44GX44GL44Go44KK44G+44Gb44KTIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQxMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hlY2sgZm9yIGV4aXN0ZW5jZSBvZiBhcmNoaXZlIGAlLjI1MHMnIgorbXNnc3RyICLjgqLjg7zjgqvjgqTjg5YgYCUuMjUwcycg44Gu5a2Y5Zyo44KS56K66KqN44Gn44GN44G+44Gb44KTIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQzMAorbXNnaWQgInRhcmdldCBpcyBkaXJlY3RvcnkgLSBjYW5ub3Qgc2tpcCBjb250cm9sIGZpbGUgY2hlY2siCittc2dzdHIgIuWvvuixoeOBjOODh+OCo+ODrOOCr+ODiOODquOBp+OBmeOAguOCs+ODs+ODiOODreODvOODq+ODleOCoeOCpOODq+aknOiovOOCkuOCueOCreODg+ODl+OBp+OBjeOBvuOBm+OCkyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzEKK21zZ2lkICJub3QgY2hlY2tpbmcgY29udGVudHMgb2YgY29udHJvbCBhcmVhLiIKK21zZ3N0ciAi44Kz44Oz44OI44Ot44O844Or44Ko44Oq44Ki44Gu44Kz44Oz44OG44Oz44OE44KS56K66KqN44Gn44GN44G+44Gb44KT44CCIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQzMgorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnLWRlYjogYnVpbGRpbmcgYW4gdW5rbm93biBwYWNrYWdlIGluICclcycuXG4iCittc2dzdHIgImRwa2ctZGViOiBgJXMnIOOBq+acquefpeOBruODkeODg+OCseODvOOCuOOCkuani+evieOBl+OBpuOBhOOBvuOBmeOAglxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQzOQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnLWRlYjogYnVpbGRpbmcgcGFja2FnZSBgJXMnIGluIGAlcycuXG4iCittc2dzdHIgImRwa2ctZGViOiBgJTIkcycg44Gr44OR44OD44Kx44O844K4IGAlMSRzJyDjgpLmp4vnr4njgZfjgabjgYTjgb7jgZnjgIJcbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0NjcgZHBrZy1kZWIvYnVpbGQuYzo1MjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byBtYWtlIHRtcGZpbGUgKGRhdGEpIgorbXNnaWQgImZhaWxlZCB0byBtYWtlIHRlbXBvcmFyeSBmaWxlICglcykiCittc2dzdHIgIuS4gOaZguODleOCoeOCpOODq+OBruS9nOaIkOOBq+WkseaVl+OBl+OBvuOBl+OBnyAoZGF0YSkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDY3IGRwa2ctZGViL2J1aWxkLmM6NDcwIGRwa2ctZGViL2J1aWxkLmM6NDc3CisjOiBkcGtnLWRlYi9idWlsZC5jOjQ4NSBkcGtnLWRlYi9idWlsZC5jOjQ5NCBkcGtnLWRlYi9idWlsZC5jOjQ5OQorIywgZnV6enkKKyN8IG1zZ2lkICJjb250cm9sIgorbXNnaWQgImNvbnRyb2wgbWVtYmVyIgorbXNnc3RyICJjb250cm9sIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ3MCBkcGtnLWRlYi9idWlsZC5jOjUyNAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIHVubGluayB0bXBmaWxlIChkYXRhKSwgJXMiCittc2dpZCAiZmFpbGVkIHRvIHVubGluayB0ZW1wb3JhcnkgZmlsZSAoJXMpLCAlcyIKK21zZ3N0ciAi5LiA5pmC44OV44Kh44Kk44Or44Gu44Ki44Oz44Oq44Oz44Kv44Gr5aSx5pWX44GX44G+44GX44GfIChkYXRhKSwgJXMiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDg1IGRwa2ctZGViL2J1aWxkLmM6NTkzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gcmV3aW5kIHRtcGZpbGUgKGRhdGEpIgorbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdGVtcG9yYXJ5IGZpbGUgKCVzKSIKK21zZ3N0ciAi5LiA5pmC44OV44Kh44Kk44Or44GuIHJld2luZCDjgavlpLHmlZfjgZfjgb7jgZfjgZ8gKGRhdGEpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ5NAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGFyIG1lbWJlciBmaWxlICglcykiCittc2dpZCAiZmFpbGVkIHRvIHN0YXQgdGVtcG9yYXJ5IGZpbGUgKCVzKSIKK21zZ3N0ciAiYXIg44Oh44Oz44OQ44OV44Kh44Kk44Or44GuIGZzdGF0IOOBq+WkseaVl+OBl+OBvuOBl+OBnyAoJXMpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ5OAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciB3cml0aW5nIGAlcyciCittc2dzdHIgImAlcycg44Gu5pu444GN6L6844G/44Ko44Op44O844Gn44GZIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjUyMSBkcGtnLWRlYi9idWlsZC5jOjUyNCBkcGtnLWRlYi9idWlsZC5jOjU0NgorIzogZHBrZy1kZWIvYnVpbGQuYzo1NzIgZHBrZy1kZWIvYnVpbGQuYzo1ODAgZHBrZy1kZWIvYnVpbGQuYzo1OTMKKyMsIGZ1enp5CisjfCBtc2dpZCAiYmV0d2VlbiBtZW1iZXJzIgorbXNnaWQgImRhdGEgbWVtYmVyIgorbXNnc3RyICLjg6Hjg7Pjg5Djg7zplpMiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTcxIGRwa2ctZGViL2J1aWxkLmM6NTgwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gd3JpdGUgZmlsZW5hbWUgdG8gdGFyIHBpcGUgKGRhdGEpIgorbXNnaWQgImZhaWxlZCB0byB3cml0ZSBmaWxlbmFtZSB0byB0YXIgcGlwZSAoJXMpIgorbXNnc3RyICJ0YXIg44OR44Kk44OX44G444Gu5pu444GN6L6844G/44Gr5aSx5pWX44GX44G+44GX44GfIChkYXRhKSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo1ODQKK21zZ2lkICI8Y29tcHJlc3M+IGZyb20gdGFyIC1jZiIKK21zZ3N0ciAiPOWcp+e4rj4gdGFyIC1jZiDjgYvjgonjga4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzo2MSBkcGtnLWRlYi9leHRyYWN0LmM6NjMKK21zZ2lkICJzaGVsbCBjb21tYW5kIHRvIG1vdmUgZmlsZXMiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjcwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGZpbGUgaW4gJXMgaW4gJS4yNTVzIgorbXNnc3RyICIlMiQuMjU1cyDkuK3jga4gJTEkcyDjgavkuojmnJ/jgZfjgarjgYTjg5XjgqHjgqTjg6vjga7ntYLjgo/jgorjgYzjgYLjgorjgb7jgZkiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzo3MgorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciByZWFkaW5nICVzIGZyb20gZmlsZSAlLjI1NXMiCittc2dzdHIgIuODleOCoeOCpOODqyAlMiQuMjU1cyDjgYvjgonjga4gJTEkcyDjga7oqq3jgb/lj5bjgorkuK3jgavjgqjjg6njg7zjgYznmbrnlJ/jgZfjgb7jgZfjgZ8iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxMjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgYXJjaGl2ZSBgJS4yNTVzJyIKK21zZ3N0ciAi44Ki44O844Kr44Kk44OWIGAlLjI1NXMnIOOBruiqreOBv+WPluOCiuOBq+WkseaVl+OBl+OBvuOBl+OBnyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjEyNworbXNnaWQgImZhaWxlZCB0byBmc3RhdCBhcmNoaXZlIgorbXNnc3RyICLjgqLjg7zjgqvjgqTjg5bjga7nirbmhYvjgpLlj5blvpfjgafjgY3jgb7jgZvjgpPjgafjgZfjgZ8gKGZzdGF0IOWkseaVlykiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxMzEKKyMsIGZ1enp5CisjfCBtc2dpZCAiYXJjaGl2ZSBoYXMgbm8gZG90IGluIHZlcnNpb24gbnVtYmVyIgorbXNnaWQgImFyY2hpdmUgbWFnaWMgdmVyc2lvbiBudW1iZXIiCittc2dzdHIgIuOCouODvOOCq+OCpOODluOBruODkOODvOOCuOODp+ODs+eVquWPt+OBqyAuIOOBjOOBguOCiuOBvuOBm+OCkyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE0MworIywgZnV6enkKKyN8IG1zZ2lkICJhcmNoaXZlIGhhcyBubyBuZXdsaW5lcyBpbiBoZWFkZXIiCittc2dpZCAiYXJjaGl2ZSBtZW1iZXIgaGVhZGVyIgorbXNnc3RyICLjgqLjg7zjgqvjgqTjg5bjga7jg5jjg4Pjg4DjgavmlLnooYzjgYzjgYLjgorjgb7jgZvjgpMiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNDgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBwYXJ0IG51bWJlciIKK21zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgYXJjaGl2ZSBoZWFkZXIgbWFnaWMiCittc2dzdHIgIuODleOCoeOCpOODqyBgJS4yNTBzJyDjga/lo4rjgozjgabjgYTjgb7jgZkgLSDjg5Hjg7zjg4jnlarlj7fjgYzkuI3mraPjgafjgZkiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBub3QgYSBkZWJpYW4gYmluYXJ5IGFyY2hpdmUgKHRyeSBkcGtnLXNwbGl0PykiCittc2dzdHIgIiIKKyLjg5XjgqHjgqTjg6sgYCUuMjUwcycg44GvIGRlYmlhbiDjg5DjgqTjg4rjg6rjgqLjg7zjgqvjgqTjg5bjgafjgYLjgorjgb7jgZvjgpMgKGRwa2ctc3BsaXQg44KS6Kmm44GXIgorIuOBpuOBv+OBpuOBj+OBoOOBleOBhCkiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNTkKKyMsIGZ1enp5CisjfCBtc2dpZCAiYXJjaGl2ZSBoYXMgbm8gZG90IGluIHZlcnNpb24gbnVtYmVyIgorbXNnaWQgImFyY2hpdmUgaW5mb3JtYXRpb24gaGVhZGVyIG1lbWJlciIKK21zZ3N0ciAi44Ki44O844Kr44Kk44OW44Gu44OQ44O844K444On44Oz55Wq5Y+344GrIC4g44GM44GC44KK44G+44Gb44KTIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTYyCittc2dpZCAiYXJjaGl2ZSBoYXMgbm8gbmV3bGluZXMgaW4gaGVhZGVyIgorbXNnc3RyICLjgqLjg7zjgqvjgqTjg5bjga7jg5jjg4Pjg4DjgavmlLnooYzjgYzjgYLjgorjgb7jgZvjgpMiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNjUKK21zZ2lkICJhcmNoaXZlIGhhcyBubyBkb3QgaW4gdmVyc2lvbiBudW1iZXIiCittc2dzdHIgIuOCouODvOOCq+OCpOODluOBruODkOODvOOCuOODp+ODs+eVquWPt+OBqyAuIOOBjOOBguOCiuOBvuOBm+OCkyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE2OAorIywgYy1mb3JtYXQKK21zZ2lkICJhcmNoaXZlIHZlcnNpb24gJS4yNTBzIG5vdCB1bmRlcnN0b29kLCBnZXQgbmV3ZXIgZHBrZy1kZWIiCittc2dzdHIgIiIKKyLjg5Djg7zjgrjjg6fjg7MgJS4yNTBzIOOBruOCouODvOOCq+OCpOODluOBr+eQhuino+S4jeiDveOBp+OBmeOAguOCiOOCiuaWsOOBl+OBhCBkcGtnLWRlYiDjgpLlhaXmiYvjgZfjgaYiCisi44GP44Gg44GV44GEIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTc5IGRwa2ctZGViL2V4dHJhY3QuYzoyMDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInNraXBwZWQgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ2lkICJza2lwcGVkIGFyY2hpdmUgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ3N0ciAiJXMg44GL44KJ44Oh44Oz44OQ44O844OH44O844K/44KS44K544Kt44OD44OX44GX44G+44GX44GfIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTk0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGNvbnRhaW5zIHVudW5kZXJzdG9vZCBkYXRhIG1lbWJlciAlLipzLCBnaXZpbmcgdXAiCittc2dpZCAiYXJjaGl2ZSAnJS4yNTBzJyBjb250YWlucyBub3QgdW5kZXJzdG9vZCBkYXRhIG1lbWJlciAlLipzLCBnaXZpbmcgdXAiCittc2dzdHIgIiIKKyLjg5XjgqHjgqTjg6sgYCUuMjUwcycg44Gv55CG6Kej5LiN6IO944Gq44OH44O844K/44Oh44Oz44OQ44O8ICUuKnMg44KS5ZCr44KT44Gn44GE44G+44GZ44CC57WC5LqG44GX44G+44GZIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTk5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGNvbnRhaW5zIHR3byBjb250cm9sIG1lbWJlcnMsIGdpdmluZyB1cCIKK21zZ2lkICJhcmNoaXZlICclLjI1MHMnIGNvbnRhaW5zIHR3byBjb250cm9sIG1lbWJlcnMsIGdpdmluZyB1cCIKK21zZ3N0ciAiIgorIuODleOCoeOCpOODqyBgJS4yNTBzJyDjga8gMiDjgaTjga7jgrPjg7Pjg4jjg63jg7zjg6vjg6Hjg7Pjg5Djg7zjgpLlkKvjgpPjgafjgYTjgb7jgZnjgILntYLkuobjgZfjgb7jgZkiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyMTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIgbmV3IGRlYmlhbiBwYWNrYWdlLCB2ZXJzaW9uICVzLlxuIgorI3wgIiBzaXplICVsZCBieXRlczogY29udHJvbCBhcmNoaXZlPSAlemkgYnl0ZXMuXG4iCittc2dpZCAiIgorIiBuZXcgZGViaWFuIHBhY2thZ2UsIHZlcnNpb24gJXMuXG4iCisiIHNpemUgJWpkIGJ5dGVzOiBjb250cm9sIGFyY2hpdmU9ICVqZCBieXRlcy5cbiIKK21zZ3N0ciAiIgorIiDmlrDlvaLlvI8gZGViaWFuIOODkeODg+OCseODvOOCuOOAgeODkOODvOOCuOODp+ODsyAlc+OAglxuIgorIiDjgrXjgqTjgrogJWxkIOODkOOCpOODiDog44Kz44Oz44OI44Ot44O844Or44Ki44O844Kr44Kk44OWID0gJXppIOODkOOCpOODiOOAglxuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjMyCittc2dpZCAiYXJjaGl2ZSBjb250cm9sIG1lbWJlciBzaXplIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyMzUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImFyY2hpdmUgaGFzIG1hbGZvcm1hdHRlZCBjb250cm9sIGxlbmd0aCBgJXMnIgorbXNnaWQgImFyY2hpdmUgaGFzIG1hbGZvcm1hdHRlZCBjb250cm9sIG1lbWJlciBzaXplICclcyciCittc2dzdHIgIuOCouODvOOCq+OCpOODluOBr+S4jeato+OBquOCs+ODs+ODiOODreODvOODq+mVtyBgJXMnIOOCkuWQq+OCk+OBp+OBhOOBvuOBmSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI0MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic2tpcHBlZCBtZW1iZXIgZGF0YSBmcm9tICVzIgorbXNnaWQgInNraXBwZWQgYXJjaGl2ZSBjb250cm9sIG1lbWJlciBkYXRhIGZyb20gJXMiCittc2dzdHIgIiVzIOOBi+OCieODoeODs+ODkOODvOODh+ODvOOCv+OCkuOCueOCreODg+ODl+OBl+OBvuOBl+OBnyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI0NgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiBvbGQgZGViaWFuIHBhY2thZ2UsIHZlcnNpb24gJXMuXG4iCisjfCAiIHNpemUgJWxkIGJ5dGVzOiBjb250cm9sIGFyY2hpdmU9ICV6aSwgbWFpbiBhcmNoaXZlPSAlbGQuXG4iCittc2dpZCAiIgorIiBvbGQgZGViaWFuIHBhY2thZ2UsIHZlcnNpb24gJXMuXG4iCisiIHNpemUgJWpkIGJ5dGVzOiBjb250cm9sIGFyY2hpdmU9ICVqZCwgbWFpbiBhcmNoaXZlPSAlamQuXG4iCittc2dzdHIgIiIKKyIg5pen5b2i5byPIGRlYmlhbiDjg5Hjg4PjgrHjg7zjgrgsIOODkOODvOOCuOODp+ODsyAlc+OAglxuIgorIiDjgrXjgqTjgrogJWxkIOODkOOCpOODiDog44Kz44Oz44OI44Ot44O844Or44Ki44O844Kr44Kk44OWID0gJXpp44CB44Oh44Kk44Oz44Ki44O844Kr44Kk44OWID0gJWxk44CCXG4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2ctZGViOiBmaWxlIGxvb2tzIGxpa2UgaXQgbWlnaHQgYmUgYW4gYXJjaGl2ZSB3aGljaCBoYXMgYmVlblxuIgorImRwa2ctZGViOiAgICBjb3JydXB0ZWQgYnkgYmVpbmcgZG93bmxvYWRlZCBpbiBBU0NJSSBtb2RlXG4iCittc2dzdHIgIiIKKyJkcGtnLWRlYjog44GK44Gd44KJ44GPIEFTQ0lJIOODouODvOODieOBp+ODgOOCpuODs+ODreODvOODieOBl+OBn+OBn+OCgeOBq+OCouODvOOCq+OCpOODllxuIgorImRwa2ctZGViOiAgICDjg5XjgqHjgqTjg6vjgYzlo4rjgozjgabjgYTjgovjgojjgYbjgafjgZlcbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI1OQorIywgYy1mb3JtYXQKK21zZ2lkICJgJS4yNTVzJyBpcyBub3QgYSBkZWJpYW4gZm9ybWF0IGFyY2hpdmUiCittc2dzdHIgImAlLjI1NXMnIOOBryBkZWJpYW4g5b2i5byP44Gu44Ki44O844Kr44Kk44OW44Gn44Gv44GC44KK44G+44Gb44KTIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjY2Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIHRvIHBpcGUgaW4gY29weSIKK21zZ3N0ciAi44Kz44OU44O85Lit44Gr44OR44Kk44OX44G444Gu5pu444GN6L6844G/44Gr5aSx5pWX44GX44G+44GX44GfIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjY4Cittc2dpZCAiZmFpbGVkIHRvIGNsb3NlIHBpcGUgaW4gY29weSIKK21zZ3N0ciAi44Kz44OU44O85Lit44Gr44OR44Kk44OX44Gu44Kv44Ot44O844K644Gr5aSx5pWX44GX44G+44GX44GfIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6Mjg0Cittc2dpZCAiZGF0YSIKK21zZ3N0ciAi44OH44O844K/IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzA3Cittc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIGRpcmVjdG9yeSIKK21zZ3N0ciAi5Lul5LiL44Gu44OH44Kj44Os44Kv44OI44Oq44G444Gu56e75YuV44Gr5aSx5pWX44GX44G+44GX44GfIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzEwCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBkaXJlY3RvcnkiCittc2dzdHIgIuODh+OCo+ODrOOCr+ODiOODquOBruS9nOaIkOOBq+WkseaVl+OBl+OBvuOBl+OBnyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMxMgorbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byBkaXJlY3RvcnkgYWZ0ZXIgY3JlYXRpbmcgaXQiCittc2dzdHIgIuODh+OCo+ODrOOCr+ODiOODquS9nOaIkOW+jOOAgeOBneOBruODh+OCo+ODrOOCr+ODiOODquOBq+enu+WLleOBp+OBjeOBvuOBm+OCkyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMyMworbXNnaWQgIjxkZWNvbXByZXNzPiIKK21zZ3N0ciAiPOS8uOW8tT4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozMjUKK21zZ2lkICJwYXN0ZSIKK21zZ3N0ciAi44Oa44O844K544OIIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzQyIGRwa2ctZGViL2V4dHJhY3QuYzozNjMgZHBrZy1kZWIvZXh0cmFjdC5jOjQwMgorIzogZHBrZy1kZWIvaW5mby5jOjc3CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSAuZGViIGZpbGVuYW1lIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIOOBr+W8leaVsOOBqOOBl+OBpiAuZGViIOODleOCoeOCpOODq+WQjeOBjOW/heimgeOBp+OBmSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjM0NyBkcGtnLWRlYi9leHRyYWN0LmM6NDA2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyItLSVzIG5lZWRzIGEgdGFyZ2V0IGRpcmVjdG9yeS5cbiIKKyJQZXJoYXBzIHlvdSBzaG91bGQgYmUgdXNpbmcgZHBrZyAtLWluc3RhbGwgPyIKK21zZ3N0ciAiIgorIi0tJXMg44Gv5byV5pWw44Gr5a++6LGh44Go44Gq44KL44OH44Kj44Os44Kv44OI44Oq44GM5b+F6KaB44Gn44GZ44CCXG4iCisi44GK44Gd44KJ44GP44CBZHBrZyAtLWluc3RhbGwg44KS5L2/44GK44GG44Go44GX44Gf44Gu44Gn44GX44KH44GG44CCIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzUwIGRwa2ctZGViL2V4dHJhY3QuYzo0MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyB0YWtlcyBhdCBtb3N0IHR3byBhcmd1bWVudHMgKC5kZWIgYW5kIGRpcmVjdG9yeSkiCittc2dzdHIgIi0tJXMg44Gv5pyA5aSn44Gn44KCIDIg44Gk44Gu5byV5pWwICguZGViIOOBqOODh+OCo+ODrOOCr+ODiOODqikg44GX44GL44Go44KK44G+44Gb44KTIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzY1CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgb25seSBvbmUgYXJndW1lbnQgKC5kZWIgZmlsZW5hbWUpIgorbXNnc3RyICItLSVzIOOBr+W8leaVsOOCkuOBsuOBqOOBpCAoLmRlYuODleOCoeOCpOODq+WQjSkg44Gg44GR44Go44KK44G+44GZIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6NjMKK21zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gYC8nIGZvciBjbGVhbnVwIgorbXNnc3RyICLjgq/jg6rjg7zjg7PjgqLjg4Pjg5fjga7jgZ/jgoHjga4gYC8nIOODh+OCo+ODrOOCr+ODiOODquOBuOOBruenu+WLleOBq+WkseaVl+OBl+OBvuOBl+OBnyIKKworIzogZHBrZy1kZWIvaW5mby5jOjEwNgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiY2Fubm90IHN0YXQgZmlsZSAnJXMnIgorbXNnaWQgImNvbnRyb2wgZmlsZSAnJXMnIgorbXNnc3RyICLjg5XjgqHjgqTjg6sgJyVzJyDjga7nirbmhYvjgpLlj5blvpfjgafjgY3jgb7jgZvjgpMiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZy1kZWI6IGAlLjI1NXMnIGNvbnRhaW5zIG5vIGNvbnRyb2wgY29tcG9uZW50IGAlLjI1NXMnXG4iCittc2dzdHIgIiIKKyJkcGtnLWRlYjogYCUuMjU1cycg44Gv44Kz44Oz44OI44Ot44O844Or44Kz44Oz44Od44O844ON44Oz44OIIGAlLjI1NXMnIOOCkuWQq+OCk+OBp+OBhOOBvuOBm+OCk1xuIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgIm9wZW4gY29tcG9uZW50IGAlLjI1NXMnIChpbiAlLjI1NXMpIGZhaWxlZCBpbiBhbiB1bmV4cGVjdGVkIHdheSIKK21zZ3N0ciAiIgorIiglMiQuMjU1cyDjgavjgYLjgospIOOCs+ODs+ODneODvOODjeODs+ODiCBgJTEkLjI1NXMnIOOBruOCquODvOODl+ODs+S4reOBq+S6iOacn+OBl+OBquOBhOWkseaVl+OBjOi1tyIKKyLjgZPjgorjgb7jgZfjgZ8iCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJWQgcmVxdWVzdGVkIGNvbnRyb2wgY29tcG9uZW50IGlzIG1pc3NpbmciCittc2dpZF9wbHVyYWwgIiVkIHJlcXVlc3RlZCBjb250cm9sIGNvbXBvbmVudHMgYXJlIG1pc3NpbmciCittc2dzdHJbMF0gIiVkIOWAi+OBruimgeaxguOBleOCjOOBnyBjb250cm9sIOOCs+ODs+ODneODvOODjeODs+ODiOOBjOOBguOCiuOBvuOBm+OCkyIKK21zZ3N0clsxXSAiJWQg5YCL44Gu6KaB5rGC44GV44KM44GfIGNvbnRyb2wg44Kz44Oz44Od44O844ON44Oz44OI44GM44GC44KK44G+44Gb44KTIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTM5IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo0MjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHNjYW4gZGlyZWN0b3J5IGAlLjI1NXMnIgorbXNnc3RyICLjg4fjgqPjg6zjgq/jg4jjg6ogYCUuMjU1cycg44KS6LWw5p+744Gn44GN44G+44Gb44KTIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTQ4CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzdGF0IGAlLjI1NXMnIChpbiBgJS4yNTVzJykiCittc2dzdHIgIihgJTIkLjI1NXMnIOOBq+OBguOCiykgYCUxJC4yNTVzJyDjga7nirbmhYvjgpLlj5blvpfjgafjgY3jgb7jgZvjgpMiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IG9wZW4gYCUuMjU1cycgKGluIGAlLjI1NXMnKSIKK21zZ3N0ciAiKGAlMiQuMjU1cycg44Gr44GC44KLKSBgJTEkLjI1NXMnIOOCkuOCquODvOODl+ODs+OBp+OBjeOBvuOBm+OCkyIKKworIzogZHBrZy1kZWIvaW5mby5jOjE2NyBkcGtnLWRlYi9pbmZvLmM6MTg1IGRwa2ctZGViL2luZm8uYzoxOTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgYCUuMjU1cycgKGluIGAlLjI1NXMnKSIKK21zZ3N0ciAiKGAlMiQuMjU1cycg44Gr44GC44KLKSBgJTEkLjI1NXMnIOOBruiqreOBv+WPluOCiuOBq+WkseaVl+OBl+OBvuOBl+OBnyIKKworIzogZHBrZy1kZWIvaW5mby5jOjE3MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiICU3bGQgYnl0ZXMsICU1ZCBsaW5lcyAgICVjICAlLTIwLjEyN3MgJS4xMjdzXG4iCittc2dpZCAiICU3amQgYnl0ZXMsICU1ZCBsaW5lcyAgICVjICAlLTIwLjEyN3MgJS4xMjdzXG4iCittc2dzdHIgIiAlN2xkIOODkOOCpOODiOOAgSU1ZCDooYwgICAlYyAgJS0yMC4xMjdzICUuMTI3c1xuIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTc0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgICAgbm90IGEgcGxhaW4gZmlsZSAgICAgICAgICAlLjI1NXNcbiIKK21zZ3N0ciAiICAgICDpnZ7jg5fjg6zjg7zjg7Pjg5XjgqHjgqTjg6sgICAgICAgICAgJS4yNTVzXG4iCisKKyM6IGRwa2ctZGViL2luZm8uYzoxODYKK21zZ2lkICIobm8gYGNvbnRyb2wnIGZpbGUgaW4gY29udHJvbCBhcmNoaXZlISlcbiIKK21zZ3N0ciAiKOOCs+ODs+ODiOODreODvOODq+OCouODvOOCq+OCpOODluOBqyBgY29udHJvbCcg44OV44Kh44Kk44Or44GM44GC44KK44G+44Gb44KTISlcbiIKKworIzogZHBrZy1kZWIvaW5mby5jOjIyMgorbXNnaWQgImNvdWxkIG5vdCBvcGVuIHRoZSBgY29udHJvbCcgY29tcG9uZW50IgorbXNnc3RyICJgY29udHJvbCcg44Kz44Oz44Od44O844ON44Oz44OI44KS44Kq44O844OX44Oz44Gn44GN44G+44Gb44KTIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MjYxCittc2dpZCAiZmFpbGVkIGR1cmluZyByZWFkIG9mIGBjb250cm9sJyBjb21wb25lbnQiCittc2dzdHIgImBjb250cm9sJyDjgrPjg7Pjg53jg7zjg43jg7Pjg4jjga7oqq3jgb/lj5bjgorkuK3jgavlpLHmlZfjgZfjgb7jgZfjgZ8iCisKKyM6IGRwa2ctZGViL2luZm8uYzoyNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyB0aGUgJyVzJyBjb21wb25lbnQiCittc2dzdHIgIiclcycgcWtvbnBvLW5lbnRvcW5v44Kv44Ot44O844K65Lit44Gr44Ko44Op44O844GM55m655Sf44GX44G+44GX44GfIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6Mjc4Cittc2dpZCAiRXJyb3IgaW4gZm9ybWF0IgorbXNnc3RyICLjg5Xjgqnjg7zjg57jg4Pjg4jjgqjjg6njg7wiCisKKyM6IGRwa2ctZGViL2luZm8uYzozMjgKK21zZ2lkICItLWNvbnRlbnRzIHRha2VzIGV4YWN0bHkgb25lIGFyZ3VtZW50IgorbXNnc3RyICItLWNvbnRlbnRzIOOBr+W8leaVsOOCkiAxIOOBpOOBoOOBkeOBqOOCiuOBvuOBmSIKKworIzogZHBrZy1kZWIvbWFpbi5jOjU0CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiBgJXMnIHBhY2thZ2UgYXJjaGl2ZSBiYWNrZW5kIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkRlYmlhbiBgJXMnIOODkeODg+OCseODvOOCuOOCouODvOOCq+OCpOODluODkOODg+OCr+OCqOODs+ODieODkOODvOOCuOODp+ODsyAlc+OAglxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6NzMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJDb21tYW5kczpcbiIKKyN8ICIgIC1ifC0tYnVpbGQgPGRpcmVjdG9yeT4gWzxkZWI+XSAgIEJ1aWxkIGFuIGFyY2hpdmUuXG4iCisjfCAiICAtY3wtLWNvbnRlbnRzIDxkZWI+ICAgICAgICAgICAgICBMaXN0IGNvbnRlbnRzLlxuIgorI3wgIiAgLUl8LS1pbmZvIDxkZWI+IFs8Y2ZpbGU+IC4uLl0gICAgU2hvdyBpbmZvIHRvIHN0ZG91dC5cbiIKKyN8ICIgIC1XfC0tc2hvdyA8ZGViPiAgICAgICAgICAgICAgICAgIFNob3cgaW5mb3JtYXRpb24gb24gcGFja2FnZShzKVxuIgorI3wgIiAgLWZ8LS1maWVsZCA8ZGViPiBbPGNmaWVsZD4gLi4uXSAgU2hvdyBmaWVsZChzKSB0byBzdGRvdXQuXG4iCisjfCAiICAtZXwtLWNvbnRyb2wgPGRlYj4gWzxkaXJlY3Rvcnk+XSBFeHRyYWN0IGNvbnRyb2wgaW5mby5cbiIKKyN8ICIgIC14fC0tZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PiAgIEV4dHJhY3QgZmlsZXMuXG4iCisjfCAiICAtWHwtLXZleHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+ICBFeHRyYWN0ICYgbGlzdCBmaWxlcy5cbiIKKyN8ICIgIC0tZnN5cy10YXJmaWxlIDxkZWI+ICAgICAgICAgICAgIE91dHB1dCBmaWxlc3lzdGVtIHRhcmZpbGUuXG4iCisjfCAiXG4iCittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLWJ8LS1idWlsZCA8ZGlyZWN0b3J5PiBbPGRlYj5dICAgQnVpbGQgYW4gYXJjaGl2ZS5cbiIKKyIgIC1jfC0tY29udGVudHMgPGRlYj4gICAgICAgICAgICAgIExpc3QgY29udGVudHMuXG4iCisiICAtSXwtLWluZm8gPGRlYj4gWzxjZmlsZT4gLi4uXSAgICBTaG93IGluZm8gdG8gc3Rkb3V0LlxuIgorIiAgLVd8LS1zaG93IDxkZWI+ICAgICAgICAgICAgICAgICAgU2hvdyBpbmZvcm1hdGlvbiBvbiBwYWNrYWdlKHMpXG4iCisiICAtZnwtLWZpZWxkIDxkZWI+IFs8Y2ZpZWxkPiAuLi5dICBTaG93IGZpZWxkKHMpIHRvIHN0ZG91dC5cbiIKKyIgIC1lfC0tY29udHJvbCA8ZGViPiBbPGRpcmVjdG9yeT5dIEV4dHJhY3QgY29udHJvbCBpbmZvLlxuIgorIiAgLXh8LS1leHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+ICAgRXh0cmFjdCBmaWxlcy5cbiIKKyIgIC1YfC0tdmV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gIEV4dHJhY3QgJiBsaXN0IGZpbGVzLlxuIgorIiAgLVJ8LS1yYXctZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRXh0cmFjdCBjb250cm9sIGluZm8gYW5kIGZpbGVzLlxuIgorIiAgLS1mc3lzLXRhcmZpbGUgPGRlYj4gICAgICAgICAgICAgT3V0cHV0IGZpbGVzeXN0ZW0gdGFyZmlsZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIuOCs+ODnuODs+ODiTpcbiIKKyIgICAtYnwtLWJ1aWxkIDzjg4fjgqPjg6zjgq/jg4jjg6o+IFs8ZGViPl0gICDjgqLjg7zjgqvjgqTjg5bjgpLkvZzmiJDjgZnjgotcbiIKKyIgICAtY3wtLWNvbnRlbnRzIDxkZWI+ICAgICAgICAgICAgICAgICDlhoXlrrnkuIDopqfjgpLooajnpLrjgZnjgotcbiIKKyIgICAtSXwtLWluZm8gPGRlYj4gWzxjZmlsZT4uLi5dICAgICAgICDmg4XloLHjgpLmqJnmupblh7rlipvjgavooajnpLrjgZnjgotcbiIKKyIgICAtV3wtLXNob3cgPGRlYj4gICAgICAgICAgICAgICAgICAgICDjg5Hjg4PjgrHjg7zjgrjjga7mg4XloLHjgpLooajnpLrjgZnjgotcbiIKKyIgICAtZnwtLWZpZWxkIDxkZWI+IFs8Y2ZpZWxkPi4uLl0gICAgICDjg5XjgqPjg7zjg6vjg4njgpLmqJnmupblh7rlipvjgavooajnpLrjgZnjgotcbiIKKyIgICAtZXwtLWNvbnRyb2wgPGRlYj4gWzzjg4fjgqPjg6zjgq/jg4jjg6o+XSDjgrPjg7Pjg4jjg63jg7zjg6vmg4XloLHjgpLlsZXplovjgZnjgotcbiIKKyIgICAteHwtLWV4dHJhY3QgPGRlYj4gPOODh+OCo+ODrOOCr+ODiOODqj4gICDjg5XjgqHjgqTjg6vjgpLlsZXplovjgZnjgotcbiIKKyIgICAtWHwtLXZleHRyYWN0IDxkZWI+IDzjg4fjgqPjg6zjgq/jg4jjg6o+ICDjg5XjgqHjgqTjg6vjgpLlsZXplovjgZfkuIDopqfooajnpLrjgZnjgotcbiIKKyIgICAtLWZzeXMtdGFyZmlsZSA8ZGViPiAgICAgICAgICAgICAgICDjg5XjgqHjgqTjg6vjgrfjgrnjg4bjg6DjgpIgdGFyZmlsZSDjgavlh7rlipvjgZkiCisi44KLXG4iCisiXG4iCisKKyM6IGRwa2ctZGViL21haW4uYzo5MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiPGRlYj4gaXMgdGhlIGZpbGVuYW1lIG9mIGEgRGViaWFuIGZvcm1hdCBhcmNoaXZlLlxuIgorIjxjZmlsZT4gaXMgdGhlIG5hbWUgb2YgYW4gYWRtaW5pc3RyYXRpdmUgZmlsZSBjb21wb25lbnQuXG4iCisiPGNmaWVsZD4gaXMgdGhlIG5hbWUgb2YgYSBmaWVsZCBpbiB0aGUgbWFpbiBgY29udHJvbCcgZmlsZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIiA8ZGViPiDjga8gRGViaWFuIOW9ouW8j+OBruOCouODvOOCq+OCpOODluOBruODleOCoeOCpOODq+WQjeOAglxuIgorIiA8Y2ZpbGU+IOOBr+euoeeQhueUqOODleOCoeOCpOODq+OBruOCs+ODs+ODneODvOODjeODs+ODiOWQjeOAglxuIgorIiA8Y2ZpZWxkPiDjga8gYGNvbnRyb2wnIOODleOCoeOCpOODq+WGheOBruODleOCo+ODvOODq+ODieWQjeOAglxuIgorIlxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6OTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJPcHRpb25zOlxuIgorI3wgIiAgLS1zaG93Zm9ybWF0PTxmb3JtYXQ+ICAgICAgICAgICAgVXNlIGFsdGVybmF0aXZlIGZvcm1hdCBmb3IgLS1zaG93LlxuIgorI3wgIiAgLUQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRW5hYmxlIGRlYnVnZ2luZyBvdXRwdXQuXG4iCisjfCAiICAtLW9sZCwgLS1uZXcgICAgICAgICAgICAgICAgICAgICBTZWxlY3QgYXJjaGl2ZSBmb3JtYXQuXG4iCisjfCAiICAtLW5vY2hlY2sgICAgICAgICAgICAgICAgICAgICAgICBTdXBwcmVzcyBjb250cm9sIGZpbGUgY2hlY2sgKGJ1aWxkICIKKyN8ICJiYWRcbiIKKyN8ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFja2FnZXMpLlxuIgorI3wgIiAgLXojICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU2V0IHRoZSBjb21wcmVzc2lvbiBsZXZlbCB3aGVuICIKKyN8ICJidWlsZGluZy5cbiIKKyN8ICIgIC1aPHR5cGU+ICAgICAgICAgICAgICAgICAgICAgICAgIFNldCB0aGUgY29tcHJlc3Npb24gdHlwZSB1c2VkIHdoZW4gIgorI3wgImJ1aWxkaW5nLlxuIgorI3wgIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBbGxvd2VkIHR5cGVzOiBnemlwLCB4eiwgYnppcDIsICIKKyN8ICJsem1hLCBub25lLlxuIgorI3wgIlxuIgorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1zaG93Zm9ybWF0PTxmb3JtYXQ+ICAgICAgICAgICAgVXNlIGFsdGVybmF0aXZlIGZvcm1hdCBmb3IgLS1zaG93LlxuIgorIiAgLXYsIC0tdmVyYm9zZSAgICAgICAgICAgICAgICAgICAgRW5hYmxlIHZlcmJvc2Ugb3V0cHV0LlxuIgorIiAgLUQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRW5hYmxlIGRlYnVnZ2luZyBvdXRwdXQuXG4iCisiICAtLW9sZCwgLS1uZXcgICAgICAgICAgICAgICAgICAgICBTZWxlY3QgYXJjaGl2ZSBmb3JtYXQuXG4iCisiICAtLW5vY2hlY2sgICAgICAgICAgICAgICAgICAgICAgICBTdXBwcmVzcyBjb250cm9sIGZpbGUgY2hlY2sgKGJ1aWxkIGJhZFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWNrYWdlcykuXG4iCisiICAteiMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTZXQgdGhlIGNvbXByZXNzaW9uIGxldmVsIHdoZW4gYnVpbGRpbmcuXG4iCisiICAtWjx0eXBlPiAgICAgICAgICAgICAgICAgICAgICAgICBTZXQgdGhlIGNvbXByZXNzaW9uIHR5cGUgdXNlZCB3aGVuICIKKyJidWlsZGluZy5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWxsb3dlZCB0eXBlczogZ3ppcCwgeHosIGJ6aXAyLCBsem1hLCAiCisibm9uZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIuOCquODl+OCt+ODp+ODszpcbiIKKyIgIC0tc2hvd2Zvcm1hdD0844OV44Kp44O844Oe44OD44OIPiAgLS1zaG93IOOBq+WIpeOBruODleOCqeODvOODnuODg+ODiOOCkuS9v+eUqOOBmeOCi1xuIgorIiAgLUQgICAgICAgICAgICAgICAgICAgICAgICAgICDjg4fjg5Djg4PjgrDmg4XloLHjgpLlh7rlipvjgZnjgotcbiIKKyIgIC0tb2xkLCAtLW5ldyAgICAgICAgICAgICAgICAg44Ki44O844Kr44Kk44OW44Gu5b2i5byP44KS5Yi25b6h44GZ44KLXG4iCisiICAtLW5vY2hlY2sgICAgICAgICAgICAgICAgICAgIOOCs+ODs+ODiOODreODvOODq+ODleOCoeOCpOODq+OBruODgeOCp+ODg+OCr+OCkuaKkeWItuOBmeOCi1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAo5LiN6Imv44OR44OD44Kx44O844K444GM5L2c5oiQ44GV44KM44KLKVxuIgorIiAgLXojICAgICAgICAgICAgICAgICAgICAgICAgICDmp4vnr4nmmYLjga7lnKfnuK7jg6zjg5njg6vjgpLoqK3lrprjgZnjgotcbiIKKyIgIC1aPOW9ouW8jz4gICAgICAgICAgICAgICAgICAgICDmp4vnr4nmmYLjga7lnKfnuK7lvaLlvI/jgpLoqK3lrprjgZnjgotcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDlj6/og73jgarlgKQ6IGd6aXAsIHh6LCBiemlwMiwgbHptYSwgbm9uZVxuIgorIlxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTIxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJVc2UgYGRwa2cnIHRvIGluc3RhbGwgYW5kIHJlbW92ZSBwYWNrYWdlcyBmcm9tIHlvdXIgc3lzdGVtLCBvclxuIgorImBkc2VsZWN0JyBvciBgYXB0aXR1ZGUnIGZvciB1c2VyLWZyaWVuZGx5IHBhY2thZ2UgbWFuYWdlbWVudC4gIFBhY2thZ2VzXG4iCisidW5wYWNrZWQgdXNpbmcgYGRwa2ctZGViIC0tZXh0cmFjdCcgd2lsbCBiZSBpbmNvcnJlY3RseSBpbnN0YWxsZWQgIVxuIgorbXNnc3RyICIiCisiXG4iCisi44K344K544OG44Og44Gr44OR44OD44Kx44O844K444Gu44Kk44Oz44K544OI44O844Or44KE5YmK6Zmk44KS6KGM44GG5aC05ZCI44GvIGBkcGtnJyDjgb7jgZ/jga/jgojjgorjg6bjg7wiCisi44K2XG4iCisi5ZCR44GR44GqIGBkc2VsZWN0JyDjgb7jgZ/jga8gYGFwdGl0dWRlJyDjgpLkvb/nlKjjgZfjgabjgY/jgaDjgZXjgYTjgIJgZHBrZy1kZWIgLS1leHRyYWN0J1xuIgorIuOCkuS9v+OBo+OBpuWxlemWi+OBleOCjOOBn+ODkeODg+OCseODvOOCuOOBr+ato+OBl+OBj+OCpOODs+OCueODiOODvOODq+OBleOCjOOBvuOBm+OCkyFcbiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjEzMgorbXNnaWQgIiIKKyJUeXBlIGRwa2ctZGViIC0taGVscCBmb3IgaGVscCBhYm91dCBtYW5pcHVsYXRpbmcgKi5kZWIgZmlsZXM7XG4iCisiVHlwZSBkcGtnIC0taGVscCBmb3IgaGVscCBhYm91dCBpbnN0YWxsaW5nIGFuZCBkZWluc3RhbGxpbmcgcGFja2FnZXMuIgorbXNnc3RyICIiCisiKi5kZWIg44OV44Kh44Kk44Or44Gu5pON5L2c44Gr44Gk44GE44Gm44Gu44OY44Or44OX44GvIGRwa2ctZGViIC0taGVscCDjgpLlj4Lnhac7XG4iCisi44OR44OD44Kx44O844K444Gu44Kk44Oz44K544OI44O844Or44CB5YmK6Zmk44Gr44Gk44GE44Gm44GvIGRwa2cgLS1oZWxwIOOCkuWPgueFp+OAgiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjE0OAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGludGVnZXIgZm9yIC0lYzogJyUuMjUwcyciCittc2dzdHIgIi0lYyDjgavlr77jgZnjgovkuI3mraPjgarmlbTmlbDjgafjgZk6ICclLjI1MHMnIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTUxCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgY29tcHJlc3Npb24gbGV2ZWwgZm9yIC0lYzogJWxkJyIKK21zZ3N0ciAiLSVjIOOBq+WvvuOBmeOCi+S4jeato+OBquWcp+e4ruODrOODmeODq+OBp+OBmTogJyVsZCciCisKKyM6IGRwa2ctZGViL21haW4uYzoxNjEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBjb21wcmVzc2lvbiB0eXBlIGAlcychIgorbXNnc3RyICJgJXMnIOOBr+S4jeaYjuOBquWcp+e4ruW9ouW8j+OBp+OBmSEiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjUyCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBkaWdpdCAoY29kZSAlZCkgaW4gJXMiCittc2dzdHIgIiIKKyLjg5XjgqHjgqTjg6sgYCUxJC4yNTBzJyDjga/lo4rjgozjgabjgYTjgb7jgZkgLSAlMyRzIOOBq+OBguOCi+aVsOWtlyAo44Kz44O844OJICUyJGQpIOOBr+S4jeato+OBp+OBmSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gJS4yNTBzIG1pc3NpbmciCittc2dzdHIgIuODleOCoeOCpOODqyBgJS4yNTBzJyDjga/lo4rjgozjgabjgYTjgb7jgZkgLSAlLjI1MHMg44GM44GC44KK44G+44Gb44KTIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzo2MworIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBtaXNzaW5nIG5ld2xpbmUgYWZ0ZXIgJS4yNTBzIgorbXNnc3RyICLjg5XjgqHjgqTjg6sgYCUuMjUwcycg44Gv5aOK44KM44Gm44GE44G+44GZIC0gJS4yNTBzIOOBruW+jOOBruaUueihjOOBjOOBguOCiuOBvuOBm+OCkyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6ODkgZHBrZy1zcGxpdC9tYWluLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHJlYWRpbmcgJS4yNTBzIgorbXNnc3RyICIlLjI1MHMg44Gu6Kqt44G/5Y+W44KK5Lit44Gr44Ko44Op44O844GM55m655Sf44GX44G+44GX44GfIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIG1hZ2ljIGF0IGVuZCBvZiBmaXJzdCBoZWFkZXIiCittc2dzdHIgIiIKKyLjg5XjgqHjgqTjg6sgYCUuMjUwcycg44Gv5aOK44KM44Gm44GE44G+44GZIC0g56ysIDEg44OY44OD44OA44Gu57WC44KP44KK44Gr5LiN5q2j44Gq44Oe44K444OD44Kv44OK44OzIgorIuODkOODvCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTEzCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBwYWRkaW5nIGNoYXJhY3RlciAoY29kZSAlZCkiCittc2dzdHIgIuODleOCoeOCpOODqyBgJS4yNTBzJyDjga/lo4rjgozjgabjgYTjgb7jgZkgLSDoo5zlhYXjgZfjgZ/mloflrZcgKOOCs+ODvOODiSAlZCkg44Gv5LiN5q2j44Gn44GZIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gbnVsbHMgaW4gaW5mbyBzZWN0aW9uIgorbXNnc3RyICLjg5XjgqHjgqTjg6sgYCUuMjUwcycg44Gv5aOK44KM44Gm44GE44G+44GZIC0g5oOF5aCx44K744Kv44K344On44Oz44GMIG51bGwg44Gn44GZIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMjIKK21zZ2lkICJmb3JtYXQgdmVyc2lvbiBudW1iZXIiCittc2dzdHIgIuW9ouW8j+ODkOODvOOCuOODp+ODs+eVquWPtyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgZm9ybWF0IHZlcnNpb24gYCUuMjUwcycgLSB5b3UgbmVlZCBhIG5ld2VyIGRwa2ctc3BsaXQiCittc2dzdHIgIiIKKyLjg5XjgqHjgqTjg6sgYCUuMjUwcycg44Gu5b2i5byP44OQ44O844K444On44Oz44GvIGAlLjI1MHMnIOOBp+OBmSAtIOaWsOOBl+OBhCBkcGtnLXNwbGl0IOOBjOW/heimgSIKKyLjgafjgZkiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyNworbXNnaWQgInBhY2thZ2UgbmFtZSIKK21zZ3N0ciAi44OR44OD44Kx44O844K45ZCNIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMjgKK21zZ2lkICJwYWNrYWdlIHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICLjg5Hjg4PjgrHjg7zjgrjjg5Djg7zjgrjjg6fjg7Pnlarlj7ciCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyOQorbXNnaWQgInBhY2thZ2UgZmlsZSBNRDUgY2hlY2tzdW0iCittc2dzdHIgIuODkeODg+OCseODvOOCuOODleOCoeOCpOODq+OBriBNRDUg44OB44Kn44OD44Kv44K144OgIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIE1ENSBjaGVja3N1bSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorIuODleOCoeOCpOODqyBgJS4yNTBzJyDjga/lo4rjgozjgabjgYTjgb7jgZkgLSBNRDUg44OB44Kn44OD44Kv44K144OgIGAlLjI1MHMnIOOBjOS4jeato+OBp+OBmSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTM0IGRwa2ctc3BsaXQvaW5mby5jOjEzNQorbXNnaWQgImFyY2hpdmUgdG90YWwgc2l6ZSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMzYgZHBrZy1zcGxpdC9pbmZvLmM6MTM3CisjLCBmdXp6eQorI3wgbXNnaWQgInBhcnQgb2Zmc2V0IgorbXNnaWQgImFyY2hpdmUgcGFydCBvZmZzZXQiCittc2dzdHIgIuODkeODvOODiOOCquODleOCu+ODg+ODiCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTM5CisjLCBmdXp6eQorI3wgbXNnaWQgInBhcnQgbnVtYmVycyIKK21zZ2lkICJhcmNoaXZlIHBhcnQgbnVtYmVycyIKK21zZ3N0ciAi44OR44O844OI55Wq5Y+3IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIG5vIHNsYXNoIGJldHdlZW4gcGFydCBudW1iZXJzIgorbXNnaWQgImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIG5vIHNsYXNoIGJldHdlZW4gYXJjaGl2ZSBwYXJ0IG51bWJlcnMiCittc2dzdHIgIiIKKyLjg5XjgqHjgqTjg6sgYCUuMjUwcycg44Gv5aOK44KM44Gm44GE44G+44GZIC0g44OR44O844OI55Wq5Y+344Gu6ZaT44Gr44K544Op44OD44K344Ol44GM44GC44KK44G+44Gb44KTIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDUKKyMsIGZ1enp5CisjfCBtc2dpZCAibnVtYmVyIG9mIHBhcnRzIgorbXNnaWQgIm51bWJlciBvZiBhcmNoaXZlIHBhcnRzIgorbXNnc3RyICLjg5Hjg7zjg4jmlbAiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE0NworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIG51bWJlciBvZiBwYXJ0cyIKK21zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgbnVtYmVyIG9mIGFyY2hpdmUgcGFydHMiCittc2dzdHIgIuODleOCoeOCpOODqyAnJS4yNTBzJyDjga/lo4rjgozjgabjgYTjgb7jgZkgLSDjg5Hjg7zjg4jnlarlj7fjgYzkuI3mraPjgafjgZkiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE0OQorIywgZnV6enkKKyN8IG1zZ2lkICJwYXJ0cyBudW1iZXIiCittc2dpZCAiYXJjaGl2ZSBwYXJ0cyBudW1iZXIiCittc2dzdHIgIuODkeODvOODiOeVquWPtyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTUxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgcGFydCBudW1iZXIiCittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIGFyY2hpdmUgcGFydCBudW1iZXIiCittc2dzdHIgIuODleOCoeOCpOODqyBgJS4yNTBzJyDjga/lo4rjgozjgabjgYTjgb7jgZkgLSDjg5Hjg7zjg4jnlarlj7fjgYzkuI3mraPjgafjgZkiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE1NworIywgZnV6enkKKyN8IG1zZ2lkICJwYWNrYWdlIG5hbWUiCittc2dpZCAicGFja2FnZSBhcmNoaXRlY3R1cmUiCittc2dzdHIgIuODkeODg+OCseODvOOCuOWQjSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTY2CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBtYWdpYyBhdCBlbmQgb2Ygc2Vjb25kIGhlYWRlciIKK21zZ3N0ciAiIgorIuODleOCoeOCpOODqyBgJS4yNTBzJyDjga/lo4rjgozjgabjgYTjgb7jgZkgLSDnrKwgMiDjg5jjg4Pjg4Djga7mnIDlvozjga7jg57jgrjjg4Pjgq/jg4rjg7Pjg5Djg7zjgYzkuI3mraMiCisi44Gn44GZIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gc2Vjb25kIG1lbWJlciBpcyBub3QgZGF0YSBtZW1iZXIiCittc2dzdHIgIiIKKyLjg5XjgqHjgqTjg6sgYCUuMjUwcycg44Gv5aOK44KM44Gm44GE44G+44GZIC0g56ysIDIg44Oh44Oz44OQ44O844GM44OH44O844K/44Oh44Oz44OQ44O844Gn44Gv44GC44KK44G+44GbIgorIuOCkyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTc0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIHdyb25nIG51bWJlciBvZiBwYXJ0cyBmb3IgcXVvdGVkIHNpemVzIgorbXNnc3RyICIiCisi44OV44Kh44Kk44OrIGAlLjI1MHMnIOOBr+WjiuOCjOOBpuOBhOOBvuOBmSAtIOODkeODvOODiOeVquWPt+OBjOODmOODg+ODgOOBruOCteOCpOOCuuaDheWgseOBqOeVsOOBquOCiuOBvuOBmSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTc4CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIHNpemUgaXMgd3JvbmcgZm9yIHF1b3RlZCBwYXJ0IG51bWJlciIKK21zZ3N0ciAiIgorIuODleOCoeOCpOODqyBgJS4yNTBzJyDjga/lo4rjgozjgabjgYTjgb7jgZkgLSDjgrXjgqTjgrrjgYzjg5jjg4Pjg4Djga7jg5Hjg7zjg4jnlarlj7fmg4XloLHjgajnlbDjgarjgorjgb7jgZkiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE4NAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZnN0YXQgcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLjg5Hjg7zjg4jjg5XjgqHjgqTjg6sgYCUuMjUwcycg44Gu54q25oWL44KS5Y+W5b6X44Gn44GN44G+44Gb44KTIChmc3RhdCDlpLHmlZcpIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gdG9vIHNob3J0IgorbXNnc3RyICLjg5XjgqHjgqTjg6sgYCUuMjUwcycg44Gv5aOK44KM44Gm44GE44G+44GZ44CC55+t44GZ44GO44G+44GZIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyMDIgZHBrZy1zcGxpdC9pbmZvLmM6MjQ5CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBvcGVuIGFyY2hpdmUgcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLjgqLjg7zjgqvjgqTjg5bjg5Hjg7zjg4jjg5XjgqHjgqTjg6sgYCUuMjUwcycg44KS44Kq44O844OX44Oz44Gn44GN44G+44Gb44KTIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBub3QgYW4gYXJjaGl2ZSBwYXJ0IgorbXNnc3RyICLjg5XjgqHjgqTjg6sgYCUuMjUwcycg44Gv44Ki44O844Kr44Kk44OW44OR44O844OI44Gn44Gv44GC44KK44G+44Gb44KTIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyMDkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIlczpcbiIKKyN8ICIgICAgUGFydCBmb3JtYXQgdmVyc2lvbjogICAgICAgICAgICAlc1xuIgorI3wgIiAgICBQYXJ0IG9mIHBhY2thZ2U6ICAgICAgICAgICAgICAgICVzXG4iCisjfCAiICAgICAgICAuLi4gdmVyc2lvbjogICAgICAgICAgICAgICAgJXNcbiIKKyN8ICIgICAgICAgIC4uLiBNRDUgY2hlY2tzdW06ICAgICAgICAgICAlc1xuIgorI3wgIiAgICAgICAgLi4uIGxlbmd0aDogICAgICAgICAgICAgICAgICVsdSBieXRlc1xuIgorI3wgIiAgICAgICAgLi4uIHNwbGl0IGV2ZXJ5OiAgICAgICAgICAgICVsdSBieXRlc1xuIgorI3wgIiAgICBQYXJ0IG51bWJlcjogICAgICAgICAgICAgICAgICAgICVkLyVkXG4iCisjfCAiICAgIFBhcnQgbGVuZ3RoOiAgICAgICAgICAgICAgICAgICAgJXppIGJ5dGVzXG4iCisjfCAiICAgIFBhcnQgb2Zmc2V0OiAgICAgICAgICAgICAgICAgICAgJWx1IGJ5dGVzXG4iCisjfCAiICAgIFBhcnQgZmlsZSBzaXplICh1c2VkIHBvcnRpb24pOiAgJWx1IGJ5dGVzXG4iCisjfCAiXG4iCittc2dpZCAiIgorIiVzOlxuIgorIiAgICBQYXJ0IGZvcm1hdCB2ZXJzaW9uOiAgICAgICAgICAgICVzXG4iCisiICAgIFBhcnQgb2YgcGFja2FnZTogICAgICAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiB2ZXJzaW9uOiAgICAgICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIGFyY2hpdGVjdHVyZTogICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gTUQ1IGNoZWNrc3VtOiAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiBsZW5ndGg6ICAgICAgICAgICAgICAgICAlamQgYnl0ZXNcbiIKKyIgICAgICAgIC4uLiBzcGxpdCBldmVyeTogICAgICAgICAgICAlamQgYnl0ZXNcbiIKKyIgICAgUGFydCBudW1iZXI6ICAgICAgICAgICAgICAgICAgICAlZC8lZFxuIgorIiAgICBQYXJ0IGxlbmd0aDogICAgICAgICAgICAgICAgICAgICVqZCBieXRlc1xuIgorIiAgICBQYXJ0IG9mZnNldDogICAgICAgICAgICAgICAgICAgICVqZCBieXRlc1xuIgorIiAgICBQYXJ0IGZpbGUgc2l6ZSAodXNlZCBwb3J0aW9uKTogICVqZCBieXRlc1xuIgorIlxuIgorbXNnc3RyICIiCisiJXM6XG4iCisiICAgIOODkeODvOODiOW9ouW8j+ODkOODvOOCuOODp+ODszogICAgICAgICAgICAgICAgICVzXG4iCisiICAgIOODkeODg+OCseODvOOCuOOBruODkeODvOODiDogICAgICAgICAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiDjg5Djg7zjgrjjg6fjg7M6ICAgICAgICAgICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gTUQ1IOODgeOCp+ODg+OCr+OCteODoDogICAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiDplbfjgZU6ICAgICAgICAgICAgICAgICAgICAgICAgICVsdSDjg5DjgqTjg4hcbiIKKyIgICAgICAgIC4uLiDlhajliIblibI6ICAgICAgICAgICAgICAgICAgICAgICAlbHUg44OQ44Kk44OIXG4iCisiICAgIOODkeODvOODiOeVquWPtzogICAgICAgICAgICAgICAgICAgICAgICAgICAlZC8lZFxuIgorIiAgICDjg5Hjg7zjg4jplbc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAlemkg44OQ44Kk44OIXG4iCisiICAgIOODkeODvOODiOOCquODleOCu+ODg+ODiDogICAgICAgICAgICAgICAgICAgICAlbHUg44OQ44Kk44OIXG4iCisiICAgIOODkeODvOODiOODleOCoeOCpOODq+OCteOCpOOCuihwb3J0aW9uIOOBp+S9v+eUqCk6ICVsdSDjg5DjgqTjg4hcbiIKKyJcbiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjI1CisjLCBmdXp6eQorI3wgbXNnaWQgIjx1bmtub3duPiIKK21zZ2N0eHQgImFyY2hpdGVjdHVyZSIKK21zZ2lkICI8dW5rbm93bj4iCittc2dzdHIgIjzkuI3mmI4+IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyNDQgZHBrZy1zcGxpdC9qb2luLmM6MTA1CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgcmVxdWlyZXMgb25lIG9yIG1vcmUgcGFydCBmaWxlIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS0lcyDjga8gMSDjgaTku6XkuIrjga7jg5Hjg7zjg4jjg5XjgqHjgqTjg6vjga7lvJXmlbDjgpLopoHmsYLjgZfjgb7jgZkiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjI1NQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlcycgaXMgbm90IGFuIGFyY2hpdmUgcGFydFxuIgorbXNnc3RyICLjg5XjgqHjgqTjg6sgYCVzJyDjga/jgqLjg7zjgqvjgqTjg5bjg5Hjg7zjg4jjgafjgYLjgorjgb7jgZvjgpNcbiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHV0dGluZyBwYWNrYWdlICVzIHRvZ2V0aGVyIGZyb20gJWQgcGFydDogIgorbXNnaWRfcGx1cmFsICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0czogIgorbXNnc3RyWzBdICLjg5Hjg4PjgrHjg7zjgrggJXMg44KSICVkIOODkeODvOODiOOBi+OCieS4gOe3kuOBq+e9ruOBhOOBpuOBhOOBvuOBmTogIgorbXNnc3RyWzFdICLjg5Hjg4PjgrHjg7zjgrggJXMg44KSICVkIOODkeODvOODiOOBi+OCieS4gOe3kuOBq+e9ruOBhOOBpuOBhOOBvuOBmTogIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBvdXRwdXQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi5Ye65Yqb44OV44Kh44Kk44OrIGAlLjI1MHMnIOOCkuOCquODvOODl+ODs+OBp+OBjeOBvuOBm+OCkyIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIChyZSlvcGVuIGlucHV0IHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi5YWl5Yqb44OR44O844OI44OV44Kh44Kk44OrIGAlLjI1MHMnIOOCkijlho0p44Kq44O844OX44Oz44Gn44GN44G+44Gb44KTIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1OAorIywgZnV6enkKKyN8IG1zZ2lkICJTa2lwcGluZyBkZXNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dpZCAic2tpcHBpbmcgc3BsaXQgcGFja2FnZSBoZWFkZXIiCittc2dzdHIgIuacqumBuOaKnuODkeODg+OCseODvOOCuCAlcyDjgpLjgrnjgq3jg4Pjg5fjgZfjgb7jgZnjgIJcbiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NTkKKyMsIGZ1enp5CisjfCBtc2dpZCAiUHV0dGluZyBwYWNrYWdlICVzIHRvZ2V0aGVyIGZyb20gJWQgcGFydDogIgorI3wgbXNnaWRfcGx1cmFsICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0czogIgorbXNnaWQgInNwbGl0IHBhY2thZ2UgcGFydCIKK21zZ3N0ciAi44OR44OD44Kx44O844K4ICVzIOOCkiAlZCDjg5Hjg7zjg4jjgYvjgonkuIDnt5Ljgavnva7jgYTjgabjgYTjgb7jgZk6ICIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NjkgZHBrZy1zcGxpdC9zcGxpdC5jOjIzNworIywgYy1mb3JtYXQKK21zZ2lkICJkb25lXG4iCittc2dzdHIgIuWujOS6hlxuIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo4NQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlcyBgJS4yNTBzJyBhbmQgYCUuMjUwcycgYXJlIG5vdCBwYXJ0cyBvZiB0aGUgc2FtZSBmaWxlIgorbXNnc3RyICLjg5XjgqHjgqTjg6sgYCUuMjUwcycg44GoIGAlLjI1MHMnIOOBr+WQjOOBmOODleOCoeOCpOODq+OBruODkeODvOODiOOBp+OBr+OBguOCiuOBvuOBm+OCkyIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAidGhlcmUgYXJlIHNldmVyYWwgdmVyc2lvbnMgb2YgcGFydCAlZCAtIGF0IGxlYXN0IGAlLjI1MHMnIGFuZCBgJS4yNTBzJyIKK21zZ3N0ciAiIgorIuODkeODvOODiCAlZCDjgavjga/opIfmlbDjga7jg5Djg7zjgrjjg6fjg7PjgIHlsJHjgarjgY/jgajjgoIgYCUuMjUwcycg44GoIGAlLjI1MHMnIOOBjOWtmOWcqOOBl+OBvuOBmSIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6MTI4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhcnQgJWQgaXMgbWlzc2luZyIKK21zZ3N0ciAi44OR44O844OIICVkIOOBjOOBguOCiuOBvuOBm+OCkyIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6NDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuIGAlcycgcGFja2FnZSBzcGxpdC9qb2luIHRvb2w7IHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkRlYmlhbiBgJXMnIOODkeODg+OCseODvOOCuOWIhuWJsi/ntZDlkIjjg4Tjg7zjg6s7IOODkOODvOOCuOODp+ODsyAlc1xuIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo0OQorIywgYy1mb3JtYXQKK21zZ2lkICJDb3B5cmlnaHQgKEMpIDE5OTQtMTk5NiBJYW4gSmFja3Nvbi5cbiIKK21zZ3N0ciAiQ29weXJpZ2h0IChDKSAxOTk0LTE5OTYgSWFuIEphY2tzb24uXG4iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjY3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1zfC0tc3BsaXQgPGZpbGU+IFs8cHJlZml4Pl0gICAgIFNwbGl0IGFuIGFyY2hpdmUuXG4iCisiICAtanwtLWpvaW4gPHBhcnQ+IDxwYXJ0PiAuLi4gICAgICBKb2luIHBhcnRzIHRvZ2V0aGVyLlxuIgorIiAgLUl8LS1pbmZvIDxwYXJ0PiAuLi4gICAgICAgICAgICAgRGlzcGxheSBpbmZvIGFib3V0IGEgcGFydC5cbiIKKyIgIC1hfC0tYXV0byAtbyA8Y29tcGxldGU+IDxwYXJ0PiAgIEF1dG8tYWNjdW11bGF0ZSBwYXJ0cy5cbiIKKyIgIC1sfC0tbGlzdHEgICAgICAgICAgICAgICAgICAgICAgIExpc3QgdW5tYXRjaGVkIHBpZWNlcy5cbiIKKyIgIC1kfC0tZGlzY2FyZCBbPGZpbGVuYW1lPiAuLi5dICAgIERpc2NhcmQgdW5tYXRjaGVkIHBpZWNlcy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIuOCs+ODnuODs+ODiTpcbiIKKyIgIC1zfC0tc3BsaXQgPOODleOCoeOCpOODqz4gWzzmjqXpoK3ovp4+XSDjgqLjg7zjgqvjgqTjg5bjgpLliIblibLjgZnjgotcbiIKKyIgIC1qfC0tam9pbiA844OR44O844OIPiA844OR44O844OIPiAuLi4gIOODkeODvOODiOOCkue1kOWQiOOBmeOCi1xuIgorIiAgLUl8LS1pbmZvIDzjg5Hjg7zjg4g+IC4uLiAgICAgICAgICAg44OR44O844OI5oOF5aCx44KS6KGo56S644GZ44KLXG4iCisiICAtYXwtLWF1dG8gLW8gPOWujOaIkOWQjT4gPOODkeODvOODiD4gICDjg5Hjg7zjg4jjgpLoh6rli5XnmoTjgavlj47pm4bjgZnjgotcbiIKKyIgIC1sfC0tbGlzdHEgICAgICAgICAgICAgICAgICAgICAgIOS4gOiHtOOBl+OBquOBhOmDqOWTgeOCkuS4gOimp+ihqOekuuOBmeOCi1xuIgorIiAgLWR8LS1kaXNjYXJkIFs844OV44Kh44Kk44Or5ZCNPiAuLi5dICDkuIDoh7TjgZfjgarjgYTpg6jlk4HjgpLlu4Pmo4TjgZnjgotcbiIKKyJcbiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6ODIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJPcHRpb25zOlxuIgorI3wgIiAgLS1kZXBvdGRpciA8ZGlyZWN0b3J5PiAgICAgICAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMvJXMuXG4iCisjfCAiICAtU3wtLXBhcnRzaXplIDxzaXplPiAgICAgICAgICAgICBJbiBLaUIsIGZvciAtcyAoZGVmYXVsdCBpcyA0NTApLlxuIgorI3wgIiAgLW98LS1vdXRwdXQgPGZpbGU+ICAgICAgICAgICAgICAgRm9yIC1qIChkZWZhdWx0IGlzIDxwYWNrYWdlPi08dmVyc2lvbj4uIgorI3wgImRlYikuXG4iCisjfCAiICAtUXwtLW5wcXVpZXQgICAgICAgICAgICAgICAgICAgICBCZSBxdWlldCB3aGVuIC1hIGlzIG5vdCBhIHBhcnQuXG4iCisjfCAiICAtLW1zZG9zICAgICAgICAgICAgICAgICAgICAgICAgICBHZW5lcmF0ZSA4LjMgZmlsZW5hbWVzLlxuIgorI3wgIlxuIgorI3wgIkV4aXQgc3RhdHVzOiAwID0gT0s7ICAxID0gLWEgaXMgbm90IGEgcGFydDsgIDIgPSB0cm91YmxlIVxuIgorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1kZXBvdGRpciA8ZGlyZWN0b3J5PiAgICAgICAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMvJXMuXG4iCisiICAtU3wtLXBhcnRzaXplIDxzaXplPiAgICAgICAgICAgICBJbiBLaUIsIGZvciAtcyAoZGVmYXVsdCBpcyA0NTApLlxuIgorIiAgLW98LS1vdXRwdXQgPGZpbGU+ICAgICAgICAgICAgICAgRmlsZW5hbWUsIGZvciAtaiAoZGVmYXVsdCBpc1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGFja2FnZT5fPHZlcnNpb24+XzxhcmNoPi5kZWIpLlxuIgorIiAgLVF8LS1ucHF1aWV0ICAgICAgICAgICAgICAgICAgICAgQmUgcXVpZXQgd2hlbiAtYSBpcyBub3QgYSBwYXJ0LlxuIgorIiAgLS1tc2RvcyAgICAgICAgICAgICAgICAgICAgICAgICAgR2VuZXJhdGUgOC4zIGZpbGVuYW1lcy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIuOCquODl+OCt+ODp+ODszpcbiIKKyIgIC0tZGVwb3RkaXIgPOODh+OCo+ODrOOCr+ODiOODqj4gJXMvJXMg44Gu5Luj44KP44KK44GrIDzjg4fjgqPjg6zjgq/jg4jjg6o+IOOCkuS9v+OBhlxuIgorIiAgLVN8LS1wYXJ0c2l6ZSA844K144Kk44K6PiAgLXMg55So44GrIEtiIOWNmOS9jeOBq+OBmeOCiyAo44OH44OV44Kp44Or44OI44GvIDQ1MClcbiIKKyIgIC1vfC0tb3V0cHV0IDzjg5XjgqHjgqTjg6s+ICAtaiDnlKggKOODh+ODleOCqeODq+ODiOOBryA844OR44OD44Kx44O844K4Pi0844OQ44O844K444On44OzPi4iCisiZGViKVxuIgorIiAgLVF8LS1ucHF1aWV0ICAgICAgICAgICAgLWEg44GMIDEg44Gk44Gu44OR44O844OI44Gn44Gq44GE5aC05ZCI44Gr5Ye65Yqb44GX44Gq44GEXG4iCisiICAtLW1zZG9zICAgICAgICAgICAgICAgICA4LjMg5b2i5byP44OV44Kh44Kk44Or5ZCN44KS55Sf5oiQ44GZ44KLXG4iCisiXG4iCisi57WC5LqG44K544OG44O844K/44K5OiAwID0gT0s7ICAxID0gLWEg44GM44Gy44Go44Gk44Gu44OR44O844OI44Gn44Gq44GEOyAgMiA9IOWVj+mhjOeZuueUnyFcbiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6OTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkV4aXQgc3RhdHVzOlxuIgorIiAgMCA9IG9rXG4iCisiICAxID0gd2l0aCAtLWF1dG8sIGZpbGUgaXMgbm90IGEgcGFydFxuIgorIiAgMiA9IHRyb3VibGVcbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMDMKK21zZ2lkICJUeXBlIGRwa2ctc3BsaXQgLS1oZWxwIGZvciBoZWxwLiIKK21zZ3N0ciAi44OY44Or44OX44KS5Y+C54Wn44GZ44KL44Gr44GvIGRwa2ctc3BsaXQgLS1oZWxwIOOBqOOCv+OCpOODl+OBl+OBpuOBj+OBoOOBleOBhOOAgiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6MTE1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGZpbGUgaW4gJS4yNTBzIgorbXNnc3RyICIlLjI1MHMg5YaF44Gn5LqI5pyf44GX44Gq44GE44OV44Kh44Kk44Or44Gu57WC44KP44KK44Gn44GZIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMjYKK21zZ2lkICJwYXJ0IHNpemUgaXMgZmFyIHRvbyBsYXJnZSBvciBpcyBub3QgcG9zaXRpdmUiCittc2dzdHIgIuODkeODvOODiOOCteOCpOOCuuOBjOWkp+OBjeOBmeOBjuOCi+OBi+OAgeato+WApOOBp+OBguOCiuOBvuOBm+OCkyIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6MTMwCisjLCBjLWZvcm1hdAorbXNnaWQgInBhcnQgc2l6ZSBtdXN0IGJlIGF0IGxlYXN0ICVkIEtpQiAodG8gYWxsb3cgZm9yIGhlYWRlcikiCittc2dzdHIgIiIKKyLjg5Hjg7zjg4jjgrXjgqTjgrrjga8gKOODmOODg+ODgOOCkuiAg+aFruOBmeOCi+OBqCkg5bCR44Gq44GP44Go44KCICVkIEtpQiDjgafjgarjgZHjgozjgbDjgarjgorjgb7jgZvjgpMiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzo5MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBkZXBvdCBkaXJlY3RvcnkgYCUuMjUwcyciCittc2dzdHIgIuagvOe0jeeUqOODh+OCo+ODrOOCr+ODiOODqiBgJS4yNTBzJyDjgpLoqq3jgb/lj5bjgovjgZPjgajjgYzjgafjgY3jgb7jgZvjgpMiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxMzQKK21zZ2lkICItLWF1dG8gcmVxdWlyZXMgdGhlIHVzZSBvZiB0aGUgLS1vdXRwdXQgb3B0aW9uIgorbXNnc3RyICItLWF1dG8g44GvIC0tb3V0cHV0IOOCquODl+OCt+ODp+ODs+OBruS9v+eUqOOCkuimgeaxguOBl+OBvuOBmSIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjEzNgorbXNnaWQgIi0tYXV0byByZXF1aXJlcyBleGFjdGx5IG9uZSBwYXJ0IGZpbGUgYXJndW1lbnQiCittc2dzdHIgIi0tYXV0byDjga/lvJXmlbDjgajjgZfjgaYgMSDjgaTjga7jg5Hjg7zjg4jjg5XjgqHjgqTjg6vjgpLopoHmsYLjgZfjgb7jgZkiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxNDAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLjg5Hjg7zjg4jjg5XjgqHjgqTjg6sgYCUuMjUwcycg44Gu6Kqt44G/5Y+W44KK44Gr5aSx5pWX44GX44G+44GX44GfIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTQzCisjLCBjLWZvcm1hdAorbXNnaWQgIkZpbGUgYCUuMjUwcycgaXMgbm90IHBhcnQgb2YgYSBtdWx0aXBhcnQgYXJjaGl2ZS5cbiIKK21zZ3N0ciAi44OV44Kh44Kk44OrIGAlLjI1MHMnIOOBr+ODnuODq+ODgeODkeODvOODiOOCouODvOOCq+OCpOODluOBruODkeODvOODiOOBp+OBr+OBguOCiuOBvuOBm+OCk+OAglxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTc5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW9wZW4gcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLjg5Hjg7zjg4jjg5XjgqHjgqTjg6sgYCUuMjUwcycg44KS5YaN44Kq44O844OX44Oz44Gn44GN44G+44Gb44KTIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTgyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIG5ldyBkZXBvdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLmlrDjgZfjgYTmoLzntI3jg5XjgqHjgqTjg6sgYCUuMjUwcycg44KS44Kq44O844OX44Oz44Gn44GN44G+44Gb44KTIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTg0Cittc2dpZCAiZXh0cmFjdGluZyBzcGxpdCBwYXJ0IgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbmFtZSBuZXcgZGVwb3QgZmlsZSBgJS4yNTBzJyB0byBgJS4yNTBzJyIKK21zZ3N0ciAi5qC857SN44OV44Kh44Kk44OrIGAlLjI1MHMnIOOBruWQjeWJjeOCkiBgJS4yNTBzJyDjgavlpInmm7TjgafjgY3jgb7jgZvjgpMiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFydCAlZCBvZiBwYWNrYWdlICVzIGZpbGVkIChzdGlsbCB3YW50ICIKK21zZ3N0ciAi44OR44OD44Kx44O844K4ICUyJHMg44Gu44OR44O844OIICUxJGQg44KS6KiY6Yyy44GX44G+44GX44GfICjjgYLjgajlv4XopoHjgarjga7jga8gIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjAwCittc2dpZCAiIGFuZCAiCittc2dzdHIgIiDjgaggIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjE0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkZWxldGUgdXNlZC11cCBkZXBvdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLlj6TjgYTmoLzntI3jg5XjgqHjgqTjg6sgYCUuMjUwcycg44KS5YmK6Zmk44Gn44GN44G+44Gb44KTIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjM1Cittc2dpZCAiSnVuayBmaWxlcyBsZWZ0IGFyb3VuZCBpbiB0aGUgZGVwb3QgZGlyZWN0b3J5OlxuIgorbXNnc3RyICLjgrTjg5/jg5XjgqHjgqTjg6vjgYzmoLzntI3nlKjjg4fjgqPjg6zjgq/jg4jjg6rjgavjgaHjgonjgYvjgaPjgabjgYTjgb7jgZk6XG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNDAgZHBrZy1zcGxpdC9xdWV1ZS5jOjI2OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBgJS4yNTBzJyIKK21zZ3N0ciAiYCUuMjUwcycg44Gu54q25oWL44KS5Y+W5b6X44Gn44GN44G+44Gb44KTIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjQzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIgJXMgKCVsdSBieXRlcylcbiIKK21zZ2lkICIgJXMgKCVqZCBieXRlcylcbiIKK21zZ3N0ciAiICVzICglbHUg44OQ44Kk44OIKVxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAlcyAobm90IGEgcGxhaW4gZmlsZSlcbiIKK21zZ3N0ciAiICVzICjpnZ7jg5fjg6zjg7zjg7Pjg5XjgqHjgqTjg6spXG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNTAKK21zZ2lkICJQYWNrYWdlcyBub3QgeWV0IHJlYXNzZW1ibGVkOlxuIgorbXNnc3RyICLku6XkuIvjga7jg5Hjg4PjgrHjg7zjgrjjga/lho3mp4vmiJDjgZXjgozjgabjgYTjgb7jgZvjgpM6XG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIFBhY2thZ2UgJXM6IHBhcnQocykgIgorbXNnc3RyICIg44OR44OD44Kx44O844K4ICVzOiDjg5Hjg7zjg4ggIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjcxCisjLCBjLWZvcm1hdAorbXNnaWQgInBhcnQgZmlsZSBgJS4yNTBzJyBpcyBub3QgYSBwbGFpbiBmaWxlIgorbXNnc3RyICLjg5Hjg7zjg4jjg5XjgqHjgqTjg6sgYCUuMjUwcycg44GM44OX44Os44O844Oz44OV44Kh44Kk44Or44Gn44Gv44GC44KK44G+44Gb44KTIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6Mjc4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIodG90YWwgJWx1IGJ5dGVzKVxuIgorbXNnaWQgIih0b3RhbCAlamQgYnl0ZXMpXG4iCittc2dzdHIgIijlkIjoqIggJWx1IOODkOOCpOODiClcbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjMwNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGlzY2FyZCBgJS4yNTBzJyIKK21zZ3N0ciAiYCUuMjUwcycg44KS5buD5qOE44Gn44GN44G+44Gb44KTIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MzA1CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlbGV0ZWQgJXMuXG4iCittc2dzdHIgIiVzIOOCkuWJiumZpOOBl+OBvuOBl+OBn+OAglxuIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6NzAgZHBrZy1zcGxpdC9zcGxpdC5jOjc2IGRwa2ctc3BsaXQvc3BsaXQuYzo4MQorIywgZnV6enkKKyN8IG1zZ2lkICJkcGtnLWRlYiBmaWVsZCBleHRyYWN0aW9uIgorbXNnaWQgInBhY2thZ2UgZmllbGQgdmFsdWUgZXh0cmFjdGlvbiIKK21zZ3N0ciAiZHBrZy1kZWIg44OV44Kj44O844Or44OJ44Gu5oq95Ye6IgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTMxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIHNvdXJjZSBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLjgr3jg7zjgrnjg5XjgqHjgqTjg6sgYCUuMjUwcycg44KS44Kq44O844OX44Oz44Gn44GN44G+44Gb44KTIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTMzCittc2dpZCAidW5hYmxlIHRvIGZzdGF0IHNvdXJjZSBmaWxlIgorbXNnc3RyICLjgr3jg7zjgrnjg5XjgqHjgqTjg6vjga7nirbmhYvjgpLlj5blvpfjgafjgY3jgb7jgZvjgpMgKGZzdGF0IOWkseaVlykiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxMzUKKyMsIGMtZm9ybWF0Cittc2dpZCAic291cmNlIGZpbGUgYCUuMjUwcycgbm90IGEgcGxhaW4gZmlsZSIKK21zZ3N0ciAi44K944O844K544OV44Kh44Kk44OrIGAlLjI1MHMnIOOBjOODl+ODrOODvOODs+ODleOCoeOCpOODq+OBp+OBr+OBguOCiuOBvuOBm+OCkyIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjE1MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiUHV0dGluZyBwYWNrYWdlICVzIHRvZ2V0aGVyIGZyb20gJWQgcGFydDogIgorI3wgbXNnaWRfcGx1cmFsICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0czogIgorbXNnaWQgIlNwbGl0dGluZyBwYWNrYWdlICVzIGludG8gJWQgcGFydDogIgorbXNnaWRfcGx1cmFsICJTcGxpdHRpbmcgcGFja2FnZSAlcyBpbnRvICVkIHBhcnRzOiAiCittc2dzdHJbMF0gIuODkeODg+OCseODvOOCuCAlcyDjgpIgJWQg44OR44O844OI44GL44KJ5LiA57eS44Gr572u44GE44Gm44GE44G+44GZOiAiCittc2dzdHJbMV0gIuODkeODg+OCseODvOOCuCAlcyDjgpIgJWQg44OR44O844OI44GL44KJ5LiA57eS44Gr572u44GE44Gm44GE44G+44GZOiAiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxOTMKK21zZ2lkICIiCisiSGVhZGVyIGlzIHRvbyBsb25nLCBtYWtpbmcgcGFydCB0b28gbG9uZy4gWW91ciBwYWNrYWdlIG5hbWUgb3IgdmVyc2lvblxuIgorIm51bWJlcnMgbXVzdCBiZSBleHRyYW9yZGluYXJpbHkgbG9uZywgb3Igc29tZXRoaW5nLiBHaXZpbmcgdXAuXG4iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjI0OQorbXNnaWQgIi0tc3BsaXQgbmVlZHMgYSBzb3VyY2UgZmlsZW5hbWUgYXJndW1lbnQiCittc2dzdHIgIi0tc3BsaXQg44Gv5byV5pWw44Gr44K944O844K544OV44Kh44Kk44Or5ZCN44GM5b+F6KaB44Gn44GZIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MjUyCittc2dpZCAiLS1zcGxpdCB0YWtlcyBhdCBtb3N0IGEgc291cmNlIGZpbGVuYW1lIGFuZCBkZXN0aW5hdGlvbiBwcmVmaXgiCittc2dzdHIgIi0tc3BsaXQg44Gv5byV5pWw44Go44GX44Gm44K944O844K544OV44Kh44Kk44Or5ZCN44Go5YiG5Ymy5YWI44OX44Os44OV44Kj44Kv44K544GM5b+F6KaB44Gn44GZIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6ODQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAtMjAwMiBXaWNoZXJ0IEFra2VybWFuLlxuIgorIkNvcHlyaWdodCAoQykgMjAwOS0yMDEwIFJhcGhhZWwgSGVydHpvZy5cbiIKK21zZ3N0ciAiIgorIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAtMjAwMiBXaWNoZXJ0IEFra2VybWFuLlxuIgorIkNvcHlyaWdodCAoQykgMjAwOS0yMDEwIFJhcGhhZWwgSGVydHpvZy5cbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEwMQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSA8Y29tbWFuZD5cbiIKKyN8ICJcbiIKKyN8ICJDb21tYW5kczpcbiIKKyN8ICIgIC0taW5zdGFsbCA8bGluaz4gPG5hbWU+IDxwYXRoPiA8cHJpb3JpdHk+XG4iCisjfCAiICAgIFstLXNsYXZlIDxsaW5rPiA8bmFtZT4gPHBhdGg+XSAuLi5cbiIKKyN8ICIgICAgICAgICAgICAgICAgICAgICAgICAgICBhZGQgYSBncm91cCBvZiBhbHRlcm5hdGl2ZXMgdG8gdGhlIHN5c3RlbS5cbiIKKyN8ICIgIC0tcmVtb3ZlIDxuYW1lPiA8cGF0aD4gICByZW1vdmUgPHBhdGg+IGZyb20gdGhlIDxuYW1lPiBncm91cCAiCisjfCAiYWx0ZXJuYXRpdmUuXG4iCisjfCAiICAtLXJlbW92ZS1hbGwgPG5hbWU+ICAgICAgcmVtb3ZlIDxuYW1lPiBncm91cCBmcm9tIHRoZSBhbHRlcm5hdGl2ZXMgIgorI3wgInN5c3RlbS5cbiIKKyN8ICIgIC0tYXV0byA8bmFtZT4gICAgICAgICAgICBzd2l0Y2ggdGhlIG1hc3RlciBsaW5rIDxuYW1lPiB0byBhdXRvbWF0aWMgIgorI3wgIm1vZGUuXG4iCisjfCAiICAtLWRpc3BsYXkgPG5hbWU+ICAgICAgICAgZGlzcGxheSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgPG5hbWU+IGdyb3VwLlxuIgorI3wgIiAgLS1xdWVyeSA8bmFtZT4gICAgICAgICAgIG1hY2hpbmUgcGFyc2VhYmxlIHZlcnNpb24gb2YgLS1kaXNwbGF5ICIKKyN8ICI8bmFtZT4uXG4iCisjfCAiICAtLWxpc3QgPG5hbWU+ICAgICAgICAgICAgZGlzcGxheSBhbGwgdGFyZ2V0cyBvZiB0aGUgPG5hbWU+IGdyb3VwLlxuIgorI3wgIiAgLS1jb25maWcgPG5hbWU+ICAgICAgICAgIHNob3cgYWx0ZXJuYXRpdmVzIGZvciB0aGUgPG5hbWU+IGdyb3VwIGFuZCBhc2sgIgorI3wgInRoZVxuIgorI3wgIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzZXIgdG8gc2VsZWN0IHdoaWNoIG9uZSB0byB1c2UuXG4iCisjfCAiICAtLXNldCA8bmFtZT4gPHBhdGg+ICAgICAgc2V0IDxwYXRoPiBhcyBhbHRlcm5hdGl2ZSBmb3IgPG5hbWU+LlxuIgorI3wgIiAgLS1hbGwgICAgICAgICAgICAgICAgICAgIGNhbGwgLS1jb25maWcgb24gYWxsIGFsdGVybmF0aXZlcy5cbiIKKyN8ICJcbiIKKyN8ICI8bGluaz4gaXMgdGhlIHN5bWxpbmsgcG9pbnRpbmcgdG8gJXMvPG5hbWU+LlxuIgorI3wgIiAgKGUuZy4gL3Vzci9iaW4vcGFnZXIpXG4iCisjfCAiPG5hbWU+IGlzIHRoZSBtYXN0ZXIgbmFtZSBmb3IgdGhpcyBsaW5rIGdyb3VwLlxuIgorI3wgIiAgKGUuZy4gcGFnZXIpXG4iCisjfCAiPHBhdGg+IGlzIHRoZSBsb2NhdGlvbiBvZiBvbmUgb2YgdGhlIGFsdGVybmF0aXZlIHRhcmdldCBmaWxlcy5cbiIKKyN8ICIgIChlLmcuIC91c3IvYmluL2xlc3MpXG4iCisjfCAiPHByaW9yaXR5PiBpcyBhbiBpbnRlZ2VyOyBvcHRpb25zIHdpdGggaGlnaGVyIG51bWJlcnMgaGF2ZSBoaWdoZXIgIgorI3wgInByaW9yaXR5IGluXG4iCisjfCAiICBhdXRvbWF0aWMgbW9kZS5cbiIKKyN8ICJcbiIKKyN8ICJPcHRpb25zOlxuIgorI3wgIiAgLS1hbHRkaXIgPGRpcmVjdG9yeT4gICAgIGNoYW5nZSB0aGUgYWx0ZXJuYXRpdmVzIGRpcmVjdG9yeS5cbiIKKyN8ICIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICBjaGFuZ2UgdGhlIGFkbWluaXN0cmF0aXZlIGRpcmVjdG9yeS5cbiIKKyN8ICIgIC0tc2tpcC1hdXRvICAgICAgICAgICAgICBza2lwIHByb21wdCBmb3IgYWx0ZXJuYXRpdmVzIGNvcnJlY3RseSAiCisjfCAiY29uZmlndXJlZFxuIgorI3wgIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGluIGF1dG9tYXRpYyBtb2RlIChyZWxldmFudCBmb3IgLS1jb25maWcgIgorI3wgIm9ubHkpXG4iCisjfCAiICAtLXZlcmJvc2UgICAgICAgICAgICAgICAgdmVyYm9zZSBvcGVyYXRpb24sIG1vcmUgb3V0cHV0LlxuIgorI3wgIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHF1aWV0IG9wZXJhdGlvbiwgbWluaW1hbCBvdXRwdXQuXG4iCisjfCAiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyN8ICIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC0taW5zdGFsbCA8bGluaz4gPG5hbWU+IDxwYXRoPiA8cHJpb3JpdHk+XG4iCisiICAgIFstLXNsYXZlIDxsaW5rPiA8bmFtZT4gPHBhdGg+XSAuLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBhZGQgYSBncm91cCBvZiBhbHRlcm5hdGl2ZXMgdG8gdGhlIHN5c3RlbS5cbiIKKyIgIC0tcmVtb3ZlIDxuYW1lPiA8cGF0aD4gICByZW1vdmUgPHBhdGg+IGZyb20gdGhlIDxuYW1lPiBncm91cCBhbHRlcm5hdGl2ZS5cbiIKKyIgIC0tcmVtb3ZlLWFsbCA8bmFtZT4gICAgICByZW1vdmUgPG5hbWU+IGdyb3VwIGZyb20gdGhlIGFsdGVybmF0aXZlcyAiCisic3lzdGVtLlxuIgorIiAgLS1hdXRvIDxuYW1lPiAgICAgICAgICAgIHN3aXRjaCB0aGUgbWFzdGVyIGxpbmsgPG5hbWU+IHRvIGF1dG9tYXRpYyBtb2RlLlxuIgorIiAgLS1kaXNwbGF5IDxuYW1lPiAgICAgICAgIGRpc3BsYXkgaW5mb3JtYXRpb24gYWJvdXQgdGhlIDxuYW1lPiBncm91cC5cbiIKKyIgIC0tcXVlcnkgPG5hbWU+ICAgICAgICAgICBtYWNoaW5lIHBhcnNlYWJsZSB2ZXJzaW9uIG9mIC0tZGlzcGxheSA8bmFtZT4uXG4iCisiICAtLWxpc3QgPG5hbWU+ICAgICAgICAgICAgZGlzcGxheSBhbGwgdGFyZ2V0cyBvZiB0aGUgPG5hbWU+IGdyb3VwLlxuIgorIiAgLS1nZXQtc2VsZWN0aW9ucyAgICAgICAgIGxpc3QgbWFzdGVyIGFsdGVybmF0aXZlIG5hbWVzIGFuZCB0aGVpciBzdGF0dXMuXG4iCisiICAtLXNldC1zZWxlY3Rpb25zICAgICAgICAgcmVhZCBhbHRlcm5hdGl2ZSBzdGF0dXMgZnJvbSBzdGFuZGFyZCBpbnB1dC5cbiIKKyIgIC0tY29uZmlnIDxuYW1lPiAgICAgICAgICBzaG93IGFsdGVybmF0aXZlcyBmb3IgdGhlIDxuYW1lPiBncm91cCBhbmQgYXNrICIKKyJ0aGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2VyIHRvIHNlbGVjdCB3aGljaCBvbmUgdG8gdXNlLlxuIgorIiAgLS1zZXQgPG5hbWU+IDxwYXRoPiAgICAgIHNldCA8cGF0aD4gYXMgYWx0ZXJuYXRpdmUgZm9yIDxuYW1lPi5cbiIKKyIgIC0tYWxsICAgICAgICAgICAgICAgICAgICBjYWxsIC0tY29uZmlnIG9uIGFsbCBhbHRlcm5hdGl2ZXMuXG4iCisiXG4iCittc2dzdHIgIiIKKyLkvb/jgYTmlrk6ICVzIFs844Kq44OX44K344On44OzPiAuLi5dIDzjgrPjg57jg7Pjg4k+XG4iCisiXG4iCisi44Kz44Oe44Oz44OJOlxuIgorIiAgLS1pbnN0YWxsIDzjg6rjg7Pjgq8+IDzlkI3liY0+IDzjg5Hjgrk+IDzlhKrlhYjluqY+XG4iCisiICAgIFstLXNsYXZlIDzjg6rjg7Pjgq8+IDzlkI3liY0+IDzjg5Hjgrk+XSAuLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICDjgrfjgrnjg4bjg6DjgasgYWx0ZXJuYXRpdmVzIOOBruOCsOODq+ODvOODl+OCkui/veWKoOOBmeOCi1xuIgorIiAgLS1yZW1vdmUgPOWQjeWJjT4gPOODkeOCuT4gICA85ZCN5YmNPiDjga7jgrDjg6vjg7zjg5cgYWx0ZXJuYXRpdmUg44GL44KJIDzjg5Hjgrk+IOOCkuWJiumZpOOBmSIKKyLjgotcbiIKKyIgIC0tcmVtb3ZlLWFsbCA85ZCN5YmNPiAgICAgIGFsdGVybmF0aXZlcyDjgrfjgrnjg4bjg6DjgYvjgokgPOWQjeWJjT4g44Gu44Kw44Or44O844OX44KS5YmK6ZmkIgorIuOBmeOCi1xuIgorIiAgLS1hdXRvIDzlkI3liY0+ICAgICAgICAgICAg44Oe44K544K/44O844Oq44Oz44KvIDzlkI3liY0+IOOCkuOAgeiHquWLleODouODvOODieOBq+WIh+OCiuabv+OBiOOCi1xuIgorIiAgLS1kaXNwbGF5IDzlkI3liY0+ICAgICAgICAgPOWQjeWJjT4g44Kw44Or44O844OX44Gr44Gk44GE44Gm44Gu5oOF5aCx44KS6KGo56S644GZ44KLXG4iCisiICAtLXF1ZXJ5IDzlkI3liY0+ICAgICAgICAgICAtLWRpc3BsYXkgPOWQjeWJjT4g44Gu5qmf5qKw6Kej5p6Q5ZCR44GR44OQ44O844K444On44OzXG4iCisiICAtLWxpc3QgPOWQjeWJjT4gICAgICAgICAgICA85ZCN5YmNPiDjgrDjg6vjg7zjg5fjga7jgZnjgbnjgabjga7jgr/jg7zjgrLjg4Pjg4jjgpLooajnpLrjgZnjgotcbiIKKyIgIC0tY29uZmlnIDzlkI3liY0+ICAgICAgICAgIDzlkI3liY0+IOOCsOODq+ODvOODl+OBriBhbHRlcm5hdGl2ZXMg44KS6KGo56S644GX44CB44Om44O844K2IgorIuOBq1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIOS9v+eUqOOBl+OBn+OBhOOCguOBruOCkuWwi+OBreOCi1xuIgorIiAgLS1zZXQgPOWQjeWJjT4gPOODkeOCuT4gICAgICA85ZCN5YmNPiDjga4gYWx0ZXJuYXRpdmUg44Go44GX44GmIDzjg5Hjgrk+IOOCkuioreWumuOBmeOCi1xuIgorIiAgLS1hbGwgICAgICAgICAgICAgICAgICAgIOOBmeOBueOBpuOBriBhbHRlcm5hdGl2ZXMg44Gr5a++44GX44GmIC0tY29uZmlnIOOCkuWRvOOBs+WHuiIKKyLjgZlcbiIKKyJcbiIKKyI844Oq44Oz44KvPiDjga8gJXMvPOWQjeWJjT4g44KS5oyH44GZ44K344Oz44Oc44Oq44OD44Kv44Oq44Oz44Kv44Gn44GZ44CCXG4iCisiICAo5L6LOiAvdXNyL2Jpbi9wYWdlcilcbiIKKyI85ZCN5YmNPiDjga/jgZPjga7jg6rjg7Pjgq/jgrDjg6vjg7zjg5fjga7jg57jgrnjgr/jg7zlkI3jgafjgZnjgIJcbiIKKyIgICjkvos6IHBhZ2VyKVxuIgorIjzjg5Hjgrk+IOOBryBhbHRlcm5hdGl2ZSDjgr/jg7zjgrLjg4Pjg4jjg5XjgqHjgqTjg6vjga7jgYbjgaHjga4gMSDjgaTjga7loLTmiYDjgafjgZnjgIJcbiIKKyIgICjkvos6IC91c3IvYmluL2xlc3MpXG4iCisiPOWEquWFiOW6pj4g44Gv5pW05pWw44Gn44GZOyDjgojjgorlpKfjgY3jgarmlbDjgpLmjIHjgaTpgbjmip7ogqLjga/jgIHoh6rli5Xjg6Ljg7zjg4njgavjgYrjgYTjgabjgojjgorpq5jjgYRcbiIKKyLlhKrlhYjluqbjgpLmjIHjgaHjgb7jgZnjgIJcbiIKKyJcbiIKKyLjgqrjg5fjgrfjg6fjg7M6XG4iCisiICAtLWFsdGRpciA844OH44Kj44Os44Kv44OI44OqPiAgICAgYWx0ZXJuYXRpdmVzIOODh+OCo+ODrOOCr+ODiOODquOCkuWkieabtOOBmeOCi1xuIgorIiAgLS1hZG1pbmRpciA844OH44Kj44Os44Kv44OI44OqPiAgIOeuoeeQhuODh+OCo+ODrOOCr+ODiOODquOCkuWkieabtOOBmeOCi1xuIgorIiAgLS1za2lwLWF1dG8gICAgICAgICAgICAgICAgYWx0ZXJuYXRpdmVzIOOBjOiHquWLleODouODvOODieOBp+ato+OBl+OBj+ioreWumuOBleOCjOOCi+OCiCIKKyLjgYZcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIOODl+ODreODs+ODl+ODiOOCkuOCueOCreODg+ODl+OBmeOCiyAoLS1jb25maWcg44Gu44Go44GN44Gu44G/6ZaiIgorIumAoylcbiIKKyIgIC0tdmVyYm9zZSAgICAgICAgICAgICAgICAgIOWGl+mVt+OBquaTjeS9nOOBqOOBl+OBpuOAgeOCiOOCiuWkmuOBj+OBruWHuuWKm+OBq+OBmeOCi1xuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgICAg6Z2Z44GL44Gq5pON5L2c44Go44GX44Gm44CB5pyA5bCP6ZmQ44Gu5Ye65Yqb44Gr44GZ44KLXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgICDjgZPjga7jg5jjg6vjg5fjgpLooajnpLrjgZnjgotcbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgIOODkOODvOOCuOODp+ODs+eVquWPt+OCkuihqOekuuOBmeOCi1xuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyI8bGluaz4gaXMgdGhlIHN5bWxpbmsgcG9pbnRpbmcgdG8gJXMvPG5hbWU+LlxuIgorIiAgKGUuZy4gL3Vzci9iaW4vcGFnZXIpXG4iCisiPG5hbWU+IGlzIHRoZSBtYXN0ZXIgbmFtZSBmb3IgdGhpcyBsaW5rIGdyb3VwLlxuIgorIiAgKGUuZy4gcGFnZXIpXG4iCisiPHBhdGg+IGlzIHRoZSBsb2NhdGlvbiBvZiBvbmUgb2YgdGhlIGFsdGVybmF0aXZlIHRhcmdldCBmaWxlcy5cbiIKKyIgIChlLmcuIC91c3IvYmluL2xlc3MpXG4iCisiPHByaW9yaXR5PiBpcyBhbiBpbnRlZ2VyOyBvcHRpb25zIHdpdGggaGlnaGVyIG51bWJlcnMgaGF2ZSBoaWdoZXIgcHJpb3JpdHkgIgorImluXG4iCisiICBhdXRvbWF0aWMgbW9kZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTMxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiT3B0aW9uczpcbiIKKyN8ICIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICBzZXQgdGhlIGRpcmVjdG9yeSB3aXRoIHRoZSBzdGF0b3ZlcnJpZGUgZmlsZS5cbiIKKyN8ICIgIC0tdXBkYXRlICAgICAgICAgICAgICAgICBpbW1lZGlhdGVseSB1cGRhdGUgZmlsZSBwZXJtaXNzaW9ucy5cbiIKKyN8ICIgIC0tZm9yY2UgICAgICAgICAgICAgICAgICBmb3JjZSBhbiBhY3Rpb24gZXZlbiBpZiBhIHNhbml0eSBjaGVjayBmYWlscy5cbiIKKyN8ICIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBxdWlldCBvcGVyYXRpb24sIG1pbmltYWwgb3V0cHV0LlxuIgorI3wgIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisjfCAiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyN8ICJcbiIKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWx0ZGlyIDxkaXJlY3Rvcnk+ICAgICBjaGFuZ2UgdGhlIGFsdGVybmF0aXZlcyBkaXJlY3RvcnkuXG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgY2hhbmdlIHRoZSBhZG1pbmlzdHJhdGl2ZSBkaXJlY3RvcnkuXG4iCisiICAtLWxvZyA8ZmlsZT4gICAgICAgICAgICAgY2hhbmdlIHRoZSBsb2cgZmlsZS5cbiIKKyIgIC0tZm9yY2UgICAgICAgICAgICAgICAgICBhbGxvdyByZXBsYWNpbmcgZmlsZXMgd2l0aCBhbHRlcm5hdGl2ZSBsaW5rcy5cbiIKKyIgIC0tc2tpcC1hdXRvICAgICAgICAgICAgICBza2lwIHByb21wdCBmb3IgYWx0ZXJuYXRpdmVzIGNvcnJlY3RseSAiCisiY29uZmlndXJlZFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGluIGF1dG9tYXRpYyBtb2RlIChyZWxldmFudCBmb3IgLS1jb25maWcgb25seSlcbiIKKyIgIC0tdmVyYm9zZSAgICAgICAgICAgICAgICB2ZXJib3NlIG9wZXJhdGlvbiwgbW9yZSBvdXRwdXQuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgcXVpZXQgb3BlcmF0aW9uLCBtaW5pbWFsIG91dHB1dC5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCittc2dzdHIgIiIKKyLjgqrjg5fjgrfjg6fjg7M6XG4iCisiICAtLWFkbWluZGlyIDzjg4fjgqPjg6zjgq/jg4jjg6o+ICBzdGFydG92ZXJyaWRlIOODleOCoeOCpOODq+OBruODh+OCo+ODrOOCr+ODiOODquOCkuioreWumuOBmeOCi1xuIgorIiAgLS11cGRhdGUgICAgICAgICAgICAgICAgICAg5LuK44GZ44GQ44OV44Kh44Kk44Or44OR44O844Of44OD44K344On44Oz44KS5pu05paw44GZ44KLXG4iCisiICAtLWZvcmNlICAgICAgICAgICAgICAgICAgICDmraPluLjnirbmhYvjg4Hjgqfjg4Pjgq/jgYzlpLHmlZfjgZfjgabjgoLlvLfliLbnmoTjgavooYzjgYZcbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICAgIOmdmeOBi+OBquaTjeS9nOOBqOOBl+OBpuOAgeacgOWwj+mZkOOBruWHuuWKm+OBq+OBmeOCi1xuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgICAg44GT44Gu44OY44Or44OX44KS6KGo56S644GZ44KLXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgICDjg5Djg7zjgrjjg6fjg7Pnlarlj7fjgpLooajnpLrjgZnjgotcbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTYzCittc2dpZCAiZXJyb3IiCittc2dzdHIgIuOCqOODqeODvCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE5MworbXNnaWQgIndhcm5pbmciCittc2dzdHIgIuitpuWRiiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjM1NgorIywgYy1mb3JtYXQKK21zZ2lkICJ0d28gY29tbWFuZHMgc3BlY2lmaWVkOiAtLSVzIGFuZCAtLSVzIgorbXNnc3RyICIyIOOBpOOBruOCs+ODnuODs+ODieOBjOaMh+WumuOBleOCjOOBvuOBl+OBnzogLS0lcyDjgaggLS0lcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjM4NworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiY2Fubm90IGFwcGVuZCB0byAlczogJXMiCittc2dpZCAiY2Fubm90IGFwcGVuZCB0byAnJXMnIgorbXNnc3RyICIlcyDjgavov73liqDjgafjgY3jgb7jgZvjgpM6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NTU2CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlICVzOiAlcyIKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlICclcyciCittc2dzdHIgIiVzIOOCkuWJiumZpOOBp+OBjeOBvuOBm+OCkzogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTExCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGZpbGUgd2hpbGUgdHJ5aW5nIHRvIHJlYWQgJXMiCittc2dzdHIgIiVzIOOBruiqreOBv+WPluOCiuippuihjOS4reOBq+OAgeS6iOacn+OBm+OBrOODleOCoeOCpOODq+OBrue1guOCj+OCiuOBjOOBguOCiuOBvuOBmSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAid2hpbGUgcmVhZGluZyAlczogJXMiCittc2dzdHIgIiVzIOOBruiqreOBv+WPluOCiuS4rTogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTE5CisjLCBjLWZvcm1hdAorbXNnaWQgImxpbmUgbm90IHRlcm1pbmF0ZWQgd2hpbGUgdHJ5aW5nIHRvIHJlYWQgJXMiCittc2dzdHIgIiVzIOOBruiqreOBv+WPluOCiuippuihjOS4reOBq+WujOS6huOBl+OBpuOBhOOBquOBhOihjOOBjOOBguOCiuOBvuOBmSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgY29ycnVwdDogJXMiCittc2dzdHIgIiVzIOOBr+WjiuOCjOOBpuOBhOOBvuOBmTogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTUwCisjLCBjLWZvcm1hdAorbXNnaWQgIm5ld2xpbmVzIHByb2hpYml0ZWQgaW4gdXBkYXRlLWFsdGVybmF0aXZlcyBmaWxlcyAoJXMpIgorbXNnc3RyICJ1cGRhdGUtYWx0ZXJuYXRpdmVzIOODleOCoeOCpOODq+WGheOBp+OBruaUueihjOOBr+emgeatouOBleOCjOOBpuOBhOOBvuOBmSAoJXMpIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE2MworbXNnaWQgInNsYXZlIG5hbWUiCittc2dzdHIgIuOCueODrOODvOODluWQjSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNzEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImR1cGxpY2F0ZSBzbGF2ZSAlcyIKK21zZ2lkICJkdXBsaWNhdGUgc2xhdmUgbmFtZSAlcyIKK21zZ3N0ciAi44K544Os44O844OWICVzIOOBjOmHjeikh+OBl+OBpuOBhOOBvuOBmSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNzQKK21zZ2lkICJzbGF2ZSBsaW5rIgorbXNnc3RyICLjgrnjg6zjg7zjg5bjg6rjg7Pjgq8iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTc4CisjLCBjLWZvcm1hdAorbXNnaWQgInNsYXZlIGxpbmsgc2FtZSBhcyBtYWluIGxpbmsgJXMiCittc2dzdHIgIuOCueODrOODvOODluODquODs+OCr+OBjOODoeOCpOODs+ODquODs+OCryAlcyDjgajlkIzkuIDjgafjgZkiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTg1IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDEyCisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBzbGF2ZSBsaW5rICVzIgorbXNnc3RyICLjgrnjg6zjg7zjg5bjg6rjg7Pjgq8gJXMg44GM6YeN6KSH44GX44Gm44GE44G+44GZIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIwNAorbXNnaWQgIm1hc3RlciBmaWxlIgorbXNnc3RyICLjg57jgrnjgr/jg7zjg5XjgqHjgqTjg6siCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjEzCisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBwYXRoICVzIgorbXNnc3RyICLjg5HjgrkgJXMg44GM6YeN6KSH44GX44Gm44GE44G+44GZIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIyNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYWx0ZXJuYXRpdmUgJXMgKHBhcnQgb2YgbGluayBncm91cCAlcykgZG9lc24ndCBleGlzdC4gUmVtb3ZpbmcgZnJvbSBsaXN0IG9mICIKKyJhbHRlcm5hdGl2ZXMuIgorbXNnc3RyICIiCisiJXMg44GuIGFsdGVybmF0aXZlICjjg6rjg7Pjgq/jgrDjg6vjg7zjg5cgJXMg44Gu44OR44O844OIKSDjgYzlrZjlnKjjgZfjgb7jgZvjgpPjgIJhbHRlcm5hdGl2ZXMgIgorIuOBruODquOCueODiOOBi+OCieWJiumZpOOBl+OBpuOBhOOBvuOBmeOAgiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMjkgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyNDAKK21zZ2lkICJwcmlvcml0eSIKK21zZ3N0ciAi5YSq5YWI5bqmIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIzMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI0OQorbXNnaWQgInNsYXZlIGZpbGUiCittc2dzdHIgIuOCueODrOODvOODluODleOCoeOCpOODqyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyNDQKKyMsIGMtZm9ybWF0Cittc2dpZCAicHJpb3JpdHkgb2YgJXM6ICVzIgorbXNnc3RyICIlcyDjga7lhKrlhYjluqY6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI5NworbXNnaWQgInN0YXR1cyIKK21zZ3N0ciAi54q25oWLIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI5OQorbXNnaWQgImludmFsaWQgc3RhdHVzIgorbXNnc3RyICLnhKHlirnjgarnirbmhYsiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzA0Cittc2dpZCAibWFzdGVyIGxpbmsiCittc2dzdHIgIuODnuOCueOCv+ODvOODquODs+OCryIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGlzY2FyZGluZyBvYnNvbGV0ZSBzbGF2ZSBsaW5rICVzICglcykuIgorbXNnc3RyICLmmYLku6PpgYXjgozjga7jgrnjg6zjg7zjg5bjg6rjg7Pjgq8gJXMg44KS56C05qOE44GX44Gm44GE44G+44GZICglcynjgIIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTAyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTY5CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYzOAorbXNnaWQgImF1dG8gbW9kZSIKK21zZ3N0ciAi6Ieq5YuV44Oi44O844OJIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU3OAorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MzkKK21zZ2lkICJtYW51YWwgbW9kZSIKK21zZ3N0ciAi5omL5YuV44Oi44O844OJIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwNQorIywgYy1mb3JtYXQKK21zZ2lkICIgIGxpbmsgY3VycmVudGx5IHBvaW50cyB0byAlcyIKK21zZ3N0ciAiICDjg6rjg7Pjgq/jga/nj77lnKggJXMg44KS5oyH44GX44Gm44GE44G+44GZIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwOAorbXNnaWQgIiAgbGluayBjdXJyZW50bHkgYWJzZW50IgorbXNnc3RyICIgIOODquODs+OCr+OBr+ePvuWcqOOBguOCiuOBvuOBm+OCkyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgLSBwcmlvcml0eSAlZCIKK21zZ3N0ciAiJXMgLSDlhKrlhYjluqYgJWQiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTE1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgc2xhdmUgJXM6ICVzIgorbXNnc3RyICIgIOOCueODrOODvOODliAlczogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTIyCisjLCBjLWZvcm1hdAorbXNnaWQgIkN1cnJlbnQgJ2Jlc3QnIHZlcnNpb24gaXMgJyVzJy4iCittc2dzdHIgIuePvuWcqOOBriAn5pyA6YGpJyDjg5Djg7zjgrjjg6fjg7Pjga8gJyVzJyDjgafjgZnjgIIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTI0Cittc2dpZCAiTm8gdmVyc2lvbnMgYXZhaWxhYmxlLiIKK21zZ3N0ciAi5Yip55So5Y+v6IO944Gq44OQ44O844K444On44Oz44Gv44GC44KK44G+44Gb44KT44CCIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU1MworIywgYy1mb3JtYXQKK21zZ2lkICJUaGVyZSBpcyAlZCBjaG9pY2UgZm9yIHRoZSBhbHRlcm5hdGl2ZSAlcyAocHJvdmlkaW5nICVzKS4iCittc2dpZF9wbHVyYWwgIlRoZXJlIGFyZSAlZCBjaG9pY2VzIGZvciB0aGUgYWx0ZXJuYXRpdmUgJXMgKHByb3ZpZGluZyAlcykuIgorbXNnc3RyWzBdICJhbHRlcm5hdGl2ZSAlMiRzICglMyRzIOOCkuaPkOS+mykg44Gr44GvICUxJGQg5YCL44Gu6YG45oqe6IKi44GM44GC44KK44G+44GZ44CCIgorbXNnc3RyWzFdICJhbHRlcm5hdGl2ZSAlMiRzICglMyRzIOOCkuaPkOS+mykg44Gr44GvICUxJGQg5YCL44Gu6YG45oqe6IKi44GM44GC44KK44G+44GZ44CCIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2MAorbXNnaWQgIlNlbGVjdGlvbiIKK21zZ3N0ciAi6YG45oqe6IKiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2MQorbXNnaWQgIlBhdGgiCittc2dzdHIgIuODkeOCuSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NjEKK21zZ2lkICJQcmlvcml0eSIKK21zZ3N0ciAi5YSq5YWI5bqmIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2MQorbXNnaWQgIlN0YXR1cyIKK21zZ3N0ciAi54q25oWLIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU4MgorIywgYy1mb3JtYXQKK21zZ2lkICJQcmVzcyBlbnRlciB0byBrZWVwIHRoZSBjdXJyZW50IGNob2ljZVsqXSwgb3IgdHlwZSBzZWxlY3Rpb24gbnVtYmVyOiAiCittc2dzdHIgIiIKKyLnj77lnKjjga7pgbjmip4gWypdIOOCkuS/neaMgeOBmeOCi+OBq+OBryBFbnRlcuOAgeOBleOCguOBquOBkeOCjOOBsOmBuOaKnuiCouOBrueVquWPt+OBruOCreODvOOCkuaKvOOBl+OBpuOBjyIKKyLjgaDjgZXjgYQ6ICIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3MjEKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IHJlcGxhY2luZyAlcyB3aXRoIGEgbGluay4iCittc2dzdHIgIiVzIOOCkuODquODs+OCr+OBp+e9ruOBjeaPm+OBiOOBvuOBm+OCk+OAgiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3NjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2FuJ3QgaW5zdGFsbCB1bmtub3duIGNob2ljZSAlcyIKK21zZ3N0ciAi5pyq55+l44Gu6YG45oqe6IKiICVzIOOCkuOCpOODs+OCueODiOODvOODq+OBp+OBjeOBvuOBm+OCkyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInNraXAgY3JlYXRpb24gb2YgJXMgYmVjYXVzZSBhc3NvY2lhdGVkIGZpbGUgJXMgKG9mIGxpbmsgZ3JvdXAgJXMpIGRvZXNuJ3QgIgorImV4aXN0LiIKK21zZ3N0ciAiIgorIumWoumAo+OBmeOCiyAo44Oq44Oz44Kv44Kw44Or44O844OXICUzJHMg44GuKSDjg5XjgqHjgqTjg6sgJTIkcyDjgYzlrZjlnKjjgZfjgarjgYTjga7jgafjgIElMSRzIOOBruS9nOaIkCIKKyLjgpLjgrnjgq3jg4Pjg5fjgZfjgb7jgZnjgIIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNzkwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJub3QgcmVwbGFjaW5nICVzIHdpdGggYSBsaW5rLiIKK21zZ2lkICJub3QgcmVtb3ZpbmcgJXMgc2luY2UgaXQncyBub3QgYSBzeW1saW5rLiIKK21zZ3N0ciAiJXMg44KS44Oq44Oz44Kv44Gn572u44GN5o+b44GI44G+44Gb44KT44CCIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA0MSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA0NworIywgYy1mb3JtYXQKK21zZ2lkICJDYWxsICVzLiIKK21zZ3N0ciAiJXMg44KS5ZG844Gz5Ye644GX44G+44GZ44CCIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA1MQorIywgYy1mb3JtYXQKK21zZ2lkICJBbHRlcm5hdGl2ZSAlcyB1bmNoYW5nZWQgYmVjYXVzZSBjaG9pY2UgJXMgaXMgbm90IGF2YWlsYWJsZS4iCittc2dzdHIgIiIKKyLpgbjmip7ogqIgJTIkcyDjgYzliKnnlKjjgafjgY3jgarjgYTjga7jgafjgIFhbHRlcm5hdGl2ZSAlMSRzIOOBr+WkieabtOOBleOCjOOBvuOBm+OCk+OBp+OBl+OBn+OAgiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2tpcCB1bmtub3duIGFsdGVybmF0aXZlICVzLiIKK21zZ3N0ciAi5pyq55+l44GuIGFsdGVybmF0aXZlICVzIOOCkuOCueOCreODg+ODl+OBl+OBvuOBmeOAgiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNzcKKyMsIGMtZm9ybWF0Cittc2dpZCAibGluZSB0b28gbG9uZyBvciBub3QgdGVybWluYXRlZCB3aGlsZSB0cnlpbmcgdG8gcmVhZCAlcyIKK21zZ3N0ciAiJXMg44Gu6Kqt44G/5Y+W44KK6Kmm6KGM5Lit44CB6KGM44GM6ZW344GZ44GO44KL44GL5a6M5LqG44GX44Gm44GE44G+44Gb44KT44Gn44GX44GfIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA5MCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjEwMworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2tpcCBpbnZhbGlkIGxpbmU6ICVzIgorbXNnc3RyICLnhKHlirnjgarooYzjgpLjgrnjgq3jg4Pjg5fjgZfjgb7jgZk6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjEzMgorIywgYy1mb3JtYXQKK21zZ2lkICJyZW5hbWluZyAlcyBsaW5rIGZyb20gJXMgdG8gJXMuIgorbXNnc3RyICIlcyDjga7jg6rjg7Pjgq/jgpIgJXMg44GL44KJICVzIOOBq+WQjeWJjeWkieabtOOBl+OBpuOBhOOBvuOBmeOAgiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxNzMKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVuYW1pbmcgJXMgc2xhdmUgbGluayBmcm9tICVzIHRvICVzLiIKK21zZ3N0ciAiJXMg44Gu44K544Os44O844OW44Oq44Oz44Kv44KSICVzIOOBi+OCiSAlcyDjgavlkI3liY3lpInmm7TjgZfjgabjgYTjgb7jgZnjgIIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTg5CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIG5hbWUgKCVzKSBtdXN0IG5vdCBjb250YWluICcvJyBhbmQgc3BhY2VzLiIKK21zZ3N0ciAiYWx0ZXJuYXRpdmUg5ZCNICglcykg44GvICcvJyDjgoTnqbrnmb3jgpLlkKvjgpPjgafjga/jgarjgorjgb7jgZvjgpPjgIIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTkzCisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIGxpbmsgaXMgbm90IGFic29sdXRlIGFzIGl0IHNob3VsZCBiZTogJXMiCittc2dzdHIgIiIKKyJhbHRlcm5hdGl2ZSDjg6rjg7Pjgq/jgYzntbblr77jg5HjgrnjgafjgYLjgovjgbnjgY3jgavjgoLjgYvjgYvjgo/jgonjgZrjgZ3jgYbjgarjgaPjgabjgYTjgb7jgZvjgpM6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE5NworIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBwYXRoIGlzIG5vdCBhYnNvbHV0ZSBhcyBpdCBzaG91bGQgYmU6ICVzIgorbXNnc3RyICIiCisiYWx0ZXJuYXRpdmUg44OR44K544GM57W25a++44OR44K544Gn44GC44KL44G544GN44Gr44KC44GL44GL44KP44KJ44Ga44Gd44GG44Gq44Gj44Gm44GE44G+44Gb44KTOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyMjQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImFsdGVybmF0aXZlICVzIGNhbid0IGJlIG1hc3RlcjogJXMiCittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgbWFzdGVyOiBpdCBpcyBhIHNsYXZlIG9mICVzIgorbXNnc3RyICJhbHRlcm5hdGl2ZSAlcyDjga/jg57jgrnjgr/jg7zjgavjgarjgozjgb7jgZvjgpM6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjIzMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI2NworIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBsaW5rICVzIGlzIGFscmVhZHkgbWFuYWdlZCBieSAlcy4iCittc2dzdHIgImFsdGVybmF0aXZlIOODquODs+OCryAlcyDjga/jgZnjgafjgasgJXMg44Gr44KI44Gj44Gm566h55CG44GV44KM44Gm44GE44G+44GZ44CCIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI0MQorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBwYXRoICVzIGRvZXNuJ3QgZXhpc3QuIgorbXNnc3RyICJhbHRlcm5hdGl2ZSDjg5HjgrkgJXMg44GM5a2Y5Zyo44GX44G+44Gb44KTIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI1NAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgc2xhdmUgb2YgJXM6ICVzIgorbXNnaWQgImFsdGVybmF0aXZlICVzIGNhbid0IGJlIHNsYXZlIG9mICVzOiBpdCBpcyBhIG1hc3RlciBhbHRlcm5hdGl2ZS4iCittc2dzdHIgImFsdGVybmF0aXZlICVzIOOBryAlcyDjga7jgrnjg6zjg7zjg5bjgavjga/jgafjgY3jgb7jgZvjgpM6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI1OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgbWFzdGVyOiAlcyIKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBzbGF2ZSBvZiAlczogaXQgaXMgYSBzbGF2ZSBvZiAlcyIKK21zZ3N0ciAiYWx0ZXJuYXRpdmUgJXMg44Gv44Oe44K544K/44O844Gr44Gq44KM44G+44Gb44KTOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNzgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImFsdGVybmF0aXZlIGxpbmsgJXMgaXMgYWxyZWFkeSBtYW5hZ2VkIGJ5ICVzLiIKK21zZ2lkICJhbHRlcm5hdGl2ZSBsaW5rICVzIGlzIGFscmVhZHkgbWFuYWdlZCBieSAlcyAoc2xhdmUgb2YgJXMpLiIKK21zZ3N0ciAiYWx0ZXJuYXRpdmUg44Oq44Oz44KvICVzIOOBr+OBmeOBp+OBqyAlcyDjgavjgojjgaPjgabnrqHnkIbjgZXjgozjgabjgYTjgb7jgZnjgIIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzI0CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gYXJndW1lbnQgYCVzJyIKK21zZ3N0ciAiYCVzJyDjga/kuI3mmI7jgarlvJXmlbDjgafjgZkiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzQzCittc2dpZCAiLS1pbnN0YWxsIG5lZWRzIDxsaW5rPiA8bmFtZT4gPHBhdGg+IDxwcmlvcml0eT4iCittc2dzdHIgIi0taW5zdGFsbCDjga8844Oq44Oz44KvPiA85ZCN5YmNPiA844OR44K5PiA85YSq5YWI5bqmPiDjgYzlv4XopoHjgafjgZkiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzQ2IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzk3Cittc2dpZCAiPGxpbms+IGFuZCA8cGF0aD4gY2FuJ3QgYmUgdGhlIHNhbWUiCittc2dzdHIgIjzjg6rjg7Pjgq8+IOOBqCA844OR44K5PiDjga/lkIzjgZjjgafjga/jgarjgorjgb7jgZvjgpMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzQ5Cittc2dpZCAicHJpb3JpdHkgbXVzdCBiZSBhbiBpbnRlZ2VyIgorbXNnc3RyICLlhKrlhYjluqbjga/mlbTmlbDjgafjgarjgZHjgozjgbDjgarjgorjgb7jgZvjgpMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzYyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgPG5hbWU+IDxwYXRoPiIKK21zZ3N0ciAiLS0lcyDjga8gPOWQjeWJjT4gPOODkeOCuT4g44GM5b+F6KaB44Gn44GZIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM3NgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIDxuYW1lPiIKK21zZ3N0ciAiLS0lcyDjga8gPOWQjeWJjT4g44GM5b+F6KaB44Gn44GZIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM4OAorbXNnaWQgIi0tc2xhdmUgb25seSBhbGxvd2VkIHdpdGggLS1pbnN0YWxsIgorbXNnc3RyICItLXNsYXZlIOOBryAtLWluc3RhbGwg44Go5LiA57eS44Gu44G/6Kix5Y+v44GV44KM44Gm44GE44G+44GZIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM5MAorbXNnaWQgIi0tc2xhdmUgbmVlZHMgPGxpbms+IDxuYW1lPiA8cGF0aD4iCittc2dzdHIgIi0tc2xhdmUg44GvPOODquODs+OCrz4gPOWQjeWJjT4gPOODkeOCuT4g44GM5b+F6KaB44Gn44GZIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM5OQorIywgYy1mb3JtYXQKK21zZ2lkICJuYW1lICVzIGlzIGJvdGggcHJpbWFyeSBhbmQgc2xhdmUiCittc2dzdHIgIuWQjeWJjSAlcyDjgYzjg5fjg6njgqTjg57jg6ov44K544Os44O844OW44Gu5Lih5pa544Gr44GC44KK44G+44GZIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQwMgorIywgYy1mb3JtYXQKK21zZ2lkICJsaW5rICVzIGlzIGJvdGggcHJpbWFyeSBhbmQgc2xhdmUiCittc2dzdHIgIuODquODs+OCryAlcyDjgYzjg5fjg6njgqTjg57jg6ov44K544Os44O844OW44Gu5Lih5pa544Gr44GC44KK44G+44GZIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQyMgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGEgPGZpbGU+IGFyZ3VtZW50IgorbXNnc3RyICItLSVzIOOBryA844OV44Kh44Kk44OrPiDjga7lvJXmlbDjgYzlv4XopoHjgafjgZkiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDQ4CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gb3B0aW9uIGAlcyciCittc2dzdHIgIuS4jeaYjuOBquOCquODl+OCt+ODp+ODsyBgJXMnIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQ1MworbXNnaWQgIiIKKyJuZWVkIC0tZGlzcGxheSwgLS1xdWVyeSwgLS1saXN0LCAtLWdldC1zZWxlY3Rpb25zLCAtLWNvbmZpZywgLS1zZXQsIC0tc2V0LSIKKyJzZWxlY3Rpb25zLCAtLWluc3RhbGwsIC0tcmVtb3ZlLCAtLWFsbCwgLS1yZW1vdmUtYWxsIG9yIC0tYXV0byIKK21zZ3N0ciAiIgorIi0tZGlzcGxheeOAgS0tcXVlcnnjgIEtLWxpc3TjgIEtLWdldC1zZWxlY3Rpb25z44CBLS1jb25maWfjgIEtLXNldOOAgS0tc2V0LSIKKyJzZWxlY3Rpb25z44CBLS1pbnN0YWxs44CBLS1yZW1vdmXjgIEtLWFsbOOAgS0tcmVtb3ZlLWFsbOOAgS0tYXV0byDjga7jgYTjgZrjgozjgYvjgYzlv4XopoEiCisi44Gn44GZIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQ5MAorbXNnaWQgIjxzdGFuZGFyZCBpbnB1dD4iCittc2dzdHIgIjzmqJnmupblhaXlips+IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUwMCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUwMworIywgYy1mb3JtYXQKK21zZ2lkICJubyBhbHRlcm5hdGl2ZXMgZm9yICVzLiIKK21zZ3N0ciAiJXMg44GuIGFsdGVybmF0aXZlcyDjgYzjgYLjgorjgb7jgZvjgpPjgIIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTMwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIlcyBpcyBkYW5nbGluZywgaXQgd2lsbCBiZSB1cGRhdGVkIHdpdGggYmVzdCBjaG9pY2UuIgorbXNnaWQgIiVzLyVzIGlzIGRhbmdsaW5nLCBpdCB3aWxsIGJlIHVwZGF0ZWQgd2l0aCBiZXN0IGNob2ljZS4iCittc2dzdHIgIiVzIOOBjOWumeOBtuOCieOCiuOCk+OBquOBn+OCgeOAgeacgOmBqeOBqumBuOaKnuiCouOBp+abtOaWsOOBleOCjOOBvuOBmeOAgiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MzQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIlcyBoYXMgYmVlbiBjaGFuZ2VkIChtYW51YWxseSBvciBieSBhIHNjcmlwdCkuIFN3aXRjaGluZyB0byBtYW51YWwgIgorI3wgInVwZGF0ZXMgb25seS4iCittc2dpZCAiIgorIiVzLyVzIGhhcyBiZWVuIGNoYW5nZWQgKG1hbnVhbGx5IG9yIGJ5IGEgc2NyaXB0KS4gU3dpdGNoaW5nIHRvIG1hbnVhbCAiCisidXBkYXRlcyBvbmx5LiIKK21zZ3N0ciAiIgorIiVzIOOBjCAo5omL5YuV44GC44KL44GE44Gv44K544Kv44Oq44OX44OI44Gr44KI44KKKSDlpInmm7TjgZXjgozjgb7jgZfjgZ/jgILmiYvli5Xmm7TmlrDjga7jgb/jgavliIfjgormm7/jgYjjgaYiCisi44GE44G+44GZ44CCIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU0MgorIywgYy1mb3JtYXQKK21zZ2lkICJzZXR0aW5nIHVwIGF1dG9tYXRpYyBzZWxlY3Rpb24gb2YgJXMuIgorbXNnc3RyICIlcyDjga7oh6rli5Xpgbjmip7jgpLoqK3lrprjgZfjgabjgYTjgb7jgZnjgIIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTUxCisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlICVzIGZvciAlcyBub3QgcmVnaXN0ZXJlZCwgbm90IHNldHRpbmcuIgorbXNnc3RyICIlMiRzIOOBriBhbHRlcm5hdGl2ZSAlMSRzIOOBr+eZu+mMsuOBleOCjOOBpuOBhOOBvuOBm+OCk+OAguioreWumuOBr+ihjOOBhOOBvuOBm+OCk+OAgiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NTcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiVGhlcmUgaXMgbm8gcHJvZ3JhbSB3aGljaCBwcm92aWRlcyAlcy4iCittc2dzdHIgIiVzIOOCkuaPkOS+m+OBmeOCi+ODl+ODreOCsOODqeODoOOBjOOBguOCiuOBvuOBm+OCk+OAgiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NjUgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NzUKK21zZ2lkICJOb3RoaW5nIHRvIGNvbmZpZ3VyZS4iCittc2dzdHIgIuioreWumuOBr+ihjOOBhOOBvuOBm+OCk+OAgiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiVGhlcmUgaXMgb25seSBvbmUgYWx0ZXJuYXRpdmUgaW4gbGluayBncm91cCAlczogJXMiCittc2dzdHIgIuODquODs+OCr+OCsOODq+ODvOODlyAlcyDjgasgMSDjgaTjga4gYWx0ZXJuYXRpdmUg44Gu44G/44GM44GC44KK44G+44GZOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1ODQKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgZm9yICVzIG5vdCByZWdpc3RlcmVkLCBub3QgcmVtb3ZpbmcuIgorbXNnc3RyICIlMiRzIOOBriBhbHRlcm5hdGl2ZSAlMSRzIOOBr+eZu+mMsuOBleOCjOOBpuOBhOOBvuOBm+OCk+OAguWJiumZpOOBr+ihjOOBhOOBvuOBm+OCk+OAgiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1OTIKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVtb3ZpbmcgbWFudWFsbHkgc2VsZWN0ZWQgYWx0ZXJuYXRpdmUgLSBzd2l0Y2hpbmcgJXMgdG8gYXV0byBtb2RlIgorbXNnc3RyICIiCisi5omL5YuV44Gn6YG45oqe44GV44KM44GfIGFsdGVybmF0aXZlIOOCkuWJiumZpOOBl+OBpuOBhOOBvuOBmSAtICVzIOOCkuiHquWLleODouODvOODieOBq+WIh+OCiuabv+OBiOOBpuOBhCIKKyLjgb7jgZkiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjE3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJhdXRvbWF0aWMgdXBkYXRlcyBvZiAlcyBhcmUgZGlzYWJsZWQsIGxlYXZpbmcgaXQgYWxvbmUuIgorbXNnaWQgImF1dG9tYXRpYyB1cGRhdGVzIG9mICVzLyVzIGFyZSBkaXNhYmxlZCwgbGVhdmluZyBpdCBhbG9uZS4iCittc2dzdHIgIiVzIOOBruiHquWLleabtOaWsOOBr+eEoeWKueOBq+OBquOBo+OBpuOBhOOBvuOBmeOAguOBneOBruOBvuOBvuOBq+OBl+OBpuOBiuOBjeOBvuOBmeOAgiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInRvIHJldHVybiB0byBhdXRvbWF0aWMgdXBkYXRlcyB1c2UgYHVwZGF0ZS1hbHRlcm5hdGl2ZXMgLS1hdXRvICVzJy4iCittc2dpZCAidG8gcmV0dXJuIHRvIGF1dG9tYXRpYyB1cGRhdGVzIHVzZSAnJXMgLS1hdXRvICVzJy4iCittc2dzdHIgIuiHquWLleabtOaWsOOBq+aIu+OCi+OBq+OBr+OAgWB1cGRhdGUtYWx0ZXJuYXRpdmVzIC0tYXV0byAlcycg44KS5L2/44Gj44Gm44GP44Gg44GV44GE44CCIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYzNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1c2luZyAlcyB0byBwcm92aWRlICVzICglcykgaW4gJXMuIgorbXNnc3RyICIlMiRzICglMyRzKSDjgpLmj5DkvpvjgZnjgovjgZ/jgoHjgasgJTQkcyDjgacgJTEkcyDjgpLkvb/jgYTjgb7jgZnjgIIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjQ0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmb3JjaW5nIHJlaW5zdGFsbGF0aW9uIG9mIGFsdGVybmF0aXZlICVzIGJlY2F1c2UgbGluayBncm91cCAlcyBpcyBicm9rZW4uIgorbXNnc3RyICIiCisi44Oq44Oz44Kv44Kw44Or44O844OXICUyJHMg44GM5aOK44KM44Gm44GE44KL44Gf44KB44CBYWx0ZXJuYXRpdmUgJTEkcyDjga7lho3jgqTjg7Pjgrnjg4jjg7zjg6vjgpLlvLfliLYiCisi44GX44Gm44GE44G+44GZ44CCIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjY1MQorIywgYy1mb3JtYXQKK21zZ2lkICJjdXJyZW50IGFsdGVybmF0aXZlICVzIGlzIHVua25vd24sIHN3aXRjaGluZyB0byAlcyBmb3IgbGluayBncm91cCAlcy4iCittc2dzdHIgIiIKKyLnj77lnKjjga4gYWx0ZXJuYXRpdmUgJTEkcyDjgYzmnKrnn6Xjgarjga7jgafjgIHjg6rjg7Pjgq/jgrDjg6vjg7zjg5cgJTMkcyDjga7jgZ/jgoHjgasgJTIkcyDjgavliIciCisi44KK5pu/44GI44Gm44GE44G+44GZ44CCIgorCisjfiBtc2dpZCAiaXQgaXMgYSBtYXN0ZXIgYWx0ZXJuYXRpdmUuIgorI34gbXNnc3RyICLjgZPjgozjga/jg57jgrnjgr/jg7wgYWx0ZXJuYXRpdmUg44Gn44GZ44CCIgorCisjfiBtc2dpZCAiaXQgaXMgYSBzbGF2ZSBvZiAlcyIKKyN+IG1zZ3N0ciAi44GT44KM44GvICVzIOOBruOCueODrOODvOODluOBp+OBmSIKKworI34gbXNnaWQgImNhbm5vdCBzdGF0ICVzOiAlcyIKKyN+IG1zZ3N0ciAiJXMg44Gu54q25oWL44KS5Y+W5b6X44Gn44GN44G+44Gb44KTOiAlcyIKKworI34gbXNnaWQgInJlYWRsaW5rKCVzKSBmYWlsZWQ6ICVzIgorI34gbXNnc3RyICLjg6rjg7Pjgq/oqq3jgb/lj5bjgoogKCVzKSDjgavlpLHmlZfjgZfjgb7jgZfjgZ86ICVzIgorCisjfiBtc2dpZCAic2NhbiBvZiAlcyBmYWlsZWQ6ICVzIgorI34gbXNnc3RyICIlcyDjga7otbDmn7vjgavlpLHmlZfjgZfjgb7jgZfjgZ86ICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWN1dGUgJXM6ICVzIgorI34gbXNnc3RyICIlcyDjga7lrp/ooYzjgavlpLHmlZfjgZfjgb7jgZfjgZ86ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIG1ha2UgJXMgYSBzeW1saW5rIHRvICVzOiAlcyIKKyN+IG1zZ3N0ciAiJXMg44GL44KJICVzIOOBuOOBruOCt+ODs+ODnOODquODg+OCr+ODquODs+OCr+OCkuS9nOaIkOOBp+OBjeOBvuOBm+OCkzogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCAlcyBhcyAlczogJXMiCisjfiBtc2dzdHIgIiVzIOOCkiAlcyDjgajjgZfjgabjgqTjg7Pjgrnjg4jjg7zjg6vjgafjgY3jgb7jgZvjgpM6ICVzIgorCisjfiBtc2dpZCAid2hpbGUgd3JpdGluZyAlczogJXMiCisjfiBtc2dzdHIgIiVzIOOBuOOBruabuOOBjei+vOOBv+S4rTogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcmVhZCAlczogJXMiCisjfiBtc2dzdHIgIiVzIOOCkuiqreOBv+WPluOCjOOBvuOBm+OCkzogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gY2xvc2UgJXM6ICVzIgorI34gbXNnc3RyICIlcyDjgpLjgq/jg63jg7zjgrrjgafjgY3jgb7jgZvjgpM6ICVzIgorCisjfiBtc2dpZCAiY2Fubm90IHdyaXRlICVzOiAlcyIKKyN+IG1zZ3N0ciAiJXMg44Gr5pu444GN6L6844G/44Gn44GN44G+44Gb44KTOiAlcyIKKworIywgZnV6enkKKyN+fCBtc2dpZCAidW5hYmxlIHRvIG9wZW4gZmlsZSAnJXMnIgorI34gbXNnaWQgInVuYWJsZSB0byByZW5hbWUgZmlsZSAnJXMnIHRvICclcyciCisjfiBtc2dzdHIgIuODleOCoeOCpOODqyAnJXMnIOOCkuOCquODvOODl+ODs+OBp+OBjeOBvuOBm+OCkyIKKworI34gbXNnaWQgInVuYWJsZSB0byB1bmJ1ZmZlciBgJS4yNTVzJyIKKyN+IG1zZ3N0ciAiYCUuMjU1cycg55So44Gu44OQ44OD44OV44Kh44KS6ZaL5pS+44Gn44GN44G+44Gb44KTIgorCisjfiBtc2dpZCAicGFydCBmaWxlIGAlLjI1MHMnIGhhcyB0cmFpbGluZyBnYXJiYWdlIgorI34gbXNnc3RyICLjg5Hjg7zjg4jjg5XjgqHjgqTjg6sgYCUuMjUwcycg44Gu5pyr5bC+44Gr44K044Of44GM44GC44KK44G+44GZIgorCisjfiBtc2dpZCAic2l6ZSAlN2Qgb2NjdXJzICU1ZCB0aW1lc1xuIgorI34gbXNnc3RyICIlN2Qg44K144Kk44K644GMICU1ZCDlm57nmbrnlJ/jgZfjgb7jgZfjgZ9cbiIKKworI34gbXNnaWQgIm91dCBvZiBtZW1vcnkgcHVzaGluZyBlcnJvciBoYW5kbGVyOiAiCisjfiBtc2dzdHIgIuOCqOODqeODvOODj+ODs+ODieODqeOCkuODl+ODg+OCt+ODpeOBmeOCi+ODoeODouODquOBjOS4jei2s+OBl+OBpuOBhOOBvuOBmTogIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHVubG9jayBkcGtnIHN0YXR1cyBkYXRhYmFzZSIKKyN+IG1zZ3N0ciAiZHBrZyDjgrnjg4bjg7zjgr/jgrnjg4fjg7zjgr/jg5njg7zjgrnjga7jg63jg4Pjgq/jgpLop6PpmaTjgafjgY3jgb7jgZvjgpMiCisKKyN+IG1zZ2lkICJjb3B5IGluZm8gZmlsZSBgJS4yNTVzJyIKKyN+IG1zZ3N0ciAi5oOF5aCx44OV44Kh44Kk44OrIGAlLjI1MHMnIOOCkuOCs+ODlOODvCIKKworI34gbXNnaWQgInBhcnNlIGVycm9yIgorI34gbXNnc3RyICLop6PmnpDjgqjjg6njg7wiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gd3JpdGUgcGFyc2luZyB3YXJuaW5nIgorI34gbXNnc3RyICLop6PmnpDorablkYrjga7mm7jjgY3ovrzjgb/jgavlpLHmlZfjgZfjgb7jgZfjgZ8iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gbG9jayB0cmlnZ2VycyBhcmVhIgorI34gbXNnc3RyICLjg4jjg6rjgqzjgqjjg6rjgqLjgpLjg63jg4Pjgq/jgafjgY3jgb7jgZvjgpMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gcnVuICVzICglLjI1MHMpIgorI34gbXNnc3RyICIlcyDjga7lrp/ooYzjgavlpLHmlZfjgZfjgb7jgZfjgZ8gKCUuMjUwcykiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBzaGVsbCAoJS4yNTBzKSIKKyN+IG1zZ3N0ciAi44K344Kn44Or44Gu5ZG844Gz5Ye644GX44Gr5aSx5pWX44GX44G+44GX44GfICglLjI1MHMpIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGNoZWNrIGZvciBleGlzdGVuY2Ugb2YgYCUuMjUwcyciCisjfiBtc2dzdHIgImAlLjI1MHMnIOOBruWtmOWcqOOCkueiuuiqjeOBp+OBjeOBvuOBm+OCkyIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIHJtIGZvciBjbGVhbnVwIgorI34gbXNnc3RyICLjgq/jg6rjg7zjg7PjgqLjg4Pjg5fnlKjjga4gcm0g44Gu5a6f6KGM44Gr5aSx5pWX44GX44G+44GX44GfIgorCisjfiBtc2dpZCAiIgorI34gIiVzIGRlYnVnZ2luZyBvcHRpb24sIC0tZGVidWc9PG9jdGFsPiBvciAtRDxvY3RhbD46XG4iCisjfiAiXG4iCisjfiAiIG51bWJlciAgcmVmLiBpbiBzb3VyY2UgICBkZXNjcmlwdGlvblxuIgorI34gIiAgICAgIDEgICBnZW5lcmFsICAgICAgICAgICBHZW5lcmFsbHkgaGVscGZ1bCBwcm9ncmVzcyBpbmZvcm1hdGlvblxuIgorI34gIiAgICAgIDIgICBzY3JpcHRzICAgICAgICAgICBJbnZvY2F0aW9uIGFuZCBzdGF0dXMgb2YgbWFpbnRhaW5lciBzY3JpcHRzXG4iCisjfiAiICAgICAxMCAgIGVhY2hmaWxlICAgICAgICAgIE91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZFxuIgorI34gIiAgICAxMDAgICBlYWNoZmlsZWRldGFpbCAgICBMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZFxuIgorI34gIiAgICAgMjAgICBjb25mZiAgICAgICAgICAgICBPdXRwdXQgZm9yIGVhY2ggY29uZmlndXJhdGlvbiBmaWxlXG4iCisjfiAiICAgIDIwMCAgIGNvbmZmZGV0YWlsICAgICAgIExvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZVxuIgorI34gIiAgICAgNDAgICBkZXBjb24gICAgICAgICAgICBEZXBlbmRlbmNpZXMgYW5kIGNvbmZsaWN0c1xuIgorI34gIiAgICA0MDAgICBkZXBjb25kZXRhaWwgICAgICBMb3RzIG9mIGRlcGVuZGVuY2llcy9jb25mbGljdHMgb3V0cHV0XG4iCisjfiAiICAxMDAwMCAgIHRyaWdnZXJzICAgICAgICAgIFRyaWdnZXIgYWN0aXZhdGlvbiBhbmQgcHJvY2Vzc2luZ1xuIgorI34gIiAgMjAwMDAgICB0cmlnZ2Vyc2RldGFpbCAgICBMb3RzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnNcbiIKKyN+ICIgIDQwMDAwICAgdHJpZ2dlcnNzdHVwaWQgICAgU2lsbHkgYW1vdW50cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzXG4iCisjfiAiICAgMTAwMCAgIHZlcnl2ZXJib3NlICAgICAgIExvdHMgb2YgZHJpdmVsIGFib3V0IGVnIHRoZSBkcGtnL2luZm8gIgorI34gImRpcmVjdG9yeVxuIgorI34gIiAgIDIwMDAgICBzdHVwaWRseXZlcmJvc2UgICBJbnNhbmUgYW1vdW50cyBvZiBkcml2ZWxcbiIKKyN+ICJcbiIKKyN+ICJEZWJ1Z2dpbmcgb3B0aW9ucyBhcmUgYmUgbWl4ZWQgdXNpbmcgYml0d2lzZS1vci5cbiIKKyN+ICJOb3RlIHRoYXQgdGhlIG1lYW5pbmdzIGFuZCB2YWx1ZXMgYXJlIHN1YmplY3QgdG8gY2hhbmdlLlxuIgorI34gbXNnc3RyICIiCisjfiAiJXMg44OH44OQ44OD44Kw44Kq44OX44K344On44Oz44CBLS1kZWJ1Zz08OOmAsuaVsD4g44G+44Gf44GvIC1EPDjpgLLmlbA+OlxuIgorI34gIlxuIgorI34gIiDmlbDlgKQgICAg44K944O844K544G444Gu5Y+C54WnICAgICAgICAgIOiqrOaYjlxuIgorI34gIiAgICAxICAgICDkuIDoiKwgICAgICAgICAgICAgICAgICAgIOS4gOiIrOeahOOBq+acieeUqOOBquWHpueQhuaDheWgsVxuIgorI34gIiAgICAyICAgICDjgrnjgq/jg6rjg5fjg4ggICAgICAgICAgICAgIOODoeODs+ODhuODiuOCueOCr+ODquODl+ODiOOBrueKtuaFi+OAgeWRvOOBs+WHuuOBl1xuIgorI34gIiAgIDEwICAgICDlkITjg5XjgqHjgqTjg6sgICAgICAgICAgICAgIOWQhOODleOCoeOCpOODq+OBp+WHpueQhuOBleOCjOOCi+WHuuWKm1xuIgorI34gIiAgMTAwICAgICDlkITjg5XjgqHjgqTjg6voqbPntLAgICAgICAgICAg5aSn6YeP44Gu5ZCE44OV44Kh44Kk44Or44Gn5Yem55CG44GV44KM44KL5Ye65YqbXG4iCisjfiAiICAgMjAgICAgIOioreWumuODleOCoeOCpOODqyAgICAgICAgICAgIOWQhOioreWumuODleOCoeOCpOODq+eUqOOBruWHuuWKm1xuIgorI34gIiAgMjAwICAgICDoqK3lrprjg5XjgqHjgqTjg6voqbPntLAgICAgICAgIOWkp+mHj+OBruWQhOioreWumuODleOCoeOCpOODq+eUqOOBruWHuuWKm1xuIgorI34gIiAgIDQwICAgICDkvp3lrZjjg7vnq7blkIggICAgICAgICAgICAgIOS+neWtmOOBqOertuWQiFxuIgorI34gIiAgNDAwICAgICDkvp3lrZjjg7vnq7blkIjoqbPntLAgICAgICAgICAg5aSn6YeP44Gu5L6d5a2Y44Go56u25ZCI44Gr44Gk44GE44Gm44Gu5Ye65YqbXG4iCisjfiAiMTAwMDAgICAgIOWQhOODiOODquOCrCAgICAgICAgICAgICAgICDjg4jjg6rjgqzjga7mtLvmgKfljJbjgajlh6bnkIZcbiIKKyN+ICIyMDAwMCAgICAg5ZCE44OI44Oq44Ks6Kmz57SwICAgICAgICAgICAg5aSn6YeP44Gu44OI44Oq44Ks44Gr44Gk44GE44Gm44Gu5Ye65YqbXG4iCisjfiAiNDAwMDAgICAgIOi2heWkp+mHj+WQhOODiOODquOCrOips+e0sCAgICAgIOODiOODquOCrOOBq+OBpOOBhOOBpuOBruOBiuOBneOCjeOBl+OBj+iGqOWkp+OBquWHuuWKm1xuIgorI34gIiAxMDAwICAgICDlpKfph4/oqbPntLAgICAgICAgICAgICAgICAgZHBrZy9pbmZvIOODh+OCo+ODrOOCr+ODiOODquOBq+OBpOOBhOOBpuOBruWkp+mHj+OBruWHuiIKKyN+ICLliptcbiIKKyN+ICIgMjAwMCAgICAg6LaF5aSn6YeP6Kmz57SwICAgICAgICAgICAgICDotoXlpKfph4/jga7lh7rliptcbiIKKyN+ICJcbiIKKyN+ICLjg4fjg5Djg4PjgrDjgqrjg5fjgrfjg6fjg7Pjga/jg5Pjg4Pjg4jjgZTjgajjga4gT1Ig5ryU566X44Gn5re35ZCI44GV44KM44G+44GZ44CCXG4iCisjfiAi44Gd44Gu5oSP5ZGz44KE5YCk44Gv5aSJ5pu044GV44KM44KL44GT44Go44Gr5rOo5oSP44GX44Gm44GP44Gg44GV44GE44CCXG4iCisKKyN+IG1zZ2lkICIiCisjfiAiJXMgZm9yY2luZyBvcHRpb25zIC0gY29udHJvbCBiZWhhdmlvdXIgd2hlbiBwcm9ibGVtcyBmb3VuZDpcbiIKKyN+ICIgIHdhcm4gYnV0IGNvbnRpbnVlOiAgLS1mb3JjZS08dGhpbmc+LDx0aGluZz4sLi4uXG4iCisjfiAiICBzdG9wIHdpdGggZXJyb3I6ICAgIC0tcmVmdXNlLTx0aGluZz4sPHRoaW5nPiwuLi4gfCAtLW5vLWZvcmNlLSIKKyN+ICI8dGhpbmc+LC4uLlxuIgorI34gIiBGb3JjaW5nIHRoaW5nczpcbiIKKyN+ICIgIGFsbCBbIV0gICAgICAgICAgICAgICAgU2V0IGFsbCBmb3JjZSBvcHRpb25zXG4iCisjfiAiICBkb3duZ3JhZGUgWypdICAgICAgICAgIFJlcGxhY2UgYSBwYWNrYWdlIHdpdGggYSBsb3dlciB2ZXJzaW9uXG4iCisjfiAiICBjb25maWd1cmUtYW55ICAgICAgICAgIENvbmZpZ3VyZSBhbnkgcGFja2FnZSB3aGljaCBtYXkgaGVscCB0aGlzIG9uZVxuIgorI34gIiAgaG9sZCAgICAgICAgICAgICAgICAgICBQcm9jZXNzIGluY2lkZW50YWwgcGFja2FnZXMgZXZlbiB3aGVuIG9uIGhvbGRcbiIKKyN+ICIgIGJhZC1wYXRoICAgICAgICAgICAgICAgUEFUSCBpcyBtaXNzaW5nIGltcG9ydGFudCBwcm9ncmFtcywgcHJvYmxlbXMgIgorI34gImxpa2VseVxuIgorI34gIiAgbm90LXJvb3QgICAgICAgICAgICAgICBUcnkgdG8gKGRlKWluc3RhbGwgdGhpbmdzIGV2ZW4gd2hlbiBub3Qgcm9vdFxuIgorI34gIiAgb3ZlcndyaXRlICAgICAgICAgICAgICBPdmVyd3JpdGUgYSBmaWxlIGZyb20gb25lIHBhY2thZ2Ugd2l0aCBhbm90aGVyXG4iCisjfiAiICBvdmVyd3JpdGUtZGl2ZXJ0ZWQgICAgIE92ZXJ3cml0ZSBhIGRpdmVydGVkIGZpbGUgd2l0aCBhbiB1bmRpdmVydGVkICIKKyN+ICJ2ZXJzaW9uXG4iCisjfiAiICBiYWQtdmVyaWZ5ICAgICAgICAgICAgIEluc3RhbGwgYSBwYWNrYWdlIGV2ZW4gaWYgaXQgZmFpbHMgYXV0aGVudGljaXR5ICIKKyN+ICJjaGVja1xuIgorI34gIiAgZGVwZW5kcy12ZXJzaW9uIFshXSAgICBUdXJuIGRlcGVuZGVuY3kgdmVyc2lvbiBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzXG4iCisjfiAiICBkZXBlbmRzIFshXSAgICAgICAgICAgIFR1cm4gYWxsIGRlcGVuZGVuY3kgcHJvYmxlbXMgaW50byB3YXJuaW5nc1xuIgorI34gIiAgY29uZm5ldyBbIV0gICAgICAgICAgICBBbHdheXMgdXNlIHRoZSBuZXcgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHRcbiIKKyN+ICIgIGNvbmZvbGQgWyFdICAgICAgICAgICAgQWx3YXlzIHVzZSB0aGUgb2xkIGNvbmZpZyBmaWxlcywgZG9uJ3QgcHJvbXB0XG4iCisjfiAiICBjb25mZGVmIFshXSAgICAgICAgICAgIFVzZSB0aGUgZGVmYXVsdCBvcHRpb24gZm9yIG5ldyBjb25maWcgZmlsZXMgaWYgIgorI34gIm9uZVxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICBpcyBhdmFpbGFibGUsIGRvbid0IHByb21wdC4gSWYgbm8gZGVmYXVsdCBjYW4gYmUgIgorI34gImZvdW5kLFxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICB5b3Ugd2lsbCBiZSBwcm9tcHRlZCB1bmxlc3Mgb25lIG9mIHRoZSBjb25mb2xkICIKKyN+ICJvclxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICBjb25mbmV3IG9wdGlvbnMgaXMgYWxzbyBnaXZlblxuIgorI34gIiAgY29uZm1pc3MgWyFdICAgICAgICAgICBBbHdheXMgaW5zdGFsbCBtaXNzaW5nIGNvbmZpZyBmaWxlc1xuIgorI34gIiAgY29uZmFzayBbIV0gICAgICAgICAgICBPZmZlciB0byByZXBsYWNlIGNvbmZpZyBmaWxlcyB3aXRoIG5vIG5ldyAiCisjfiAidmVyc2lvbnNcbiIKKyN+ICIgIGJyZWFrcyBbIV0gICAgICAgICAgICAgSW5zdGFsbCBldmVuIGlmIGl0IHdvdWxkIGJyZWFrIGFub3RoZXIgcGFja2FnZVxuIgorI34gIiAgY29uZmxpY3RzIFshXSAgICAgICAgICBBbGxvdyBpbnN0YWxsYXRpb24gb2YgY29uZmxpY3RpbmcgcGFja2FnZXNcbiIKKyN+ICIgIGFyY2hpdGVjdHVyZSBbIV0gICAgICAgUHJvY2VzcyBldmVuIHBhY2thZ2VzIHdpdGggd3JvbmcgYXJjaGl0ZWN0dXJlXG4iCisjfiAiICBvdmVyd3JpdGUtZGlyIFshXSAgICAgIE92ZXJ3cml0ZSBvbmUgcGFja2FnZSdzIGRpcmVjdG9yeSB3aXRoIGFub3RoZXIncyAiCisjfiAiZmlsZVxuIgorI34gIiAgdW5zYWZlLWlvIFshXSAgICAgICAgICBEbyBub3QgcGVyZm9ybSBzYWZlIEkvTyBvcGVyYXRpb25zIHdoZW4gIgorI34gInVucGFja2luZ1xuIgorI34gIiAgcmVtb3ZlLXJlaW5zdHJlcSBbIV0gICBSZW1vdmUgcGFja2FnZXMgd2hpY2ggcmVxdWlyZSBpbnN0YWxsYXRpb25cbiIKKyN+ICIgIHJlbW92ZS1lc3NlbnRpYWwgWyFdICAgUmVtb3ZlIGFuIGVzc2VudGlhbCBwYWNrYWdlXG4iCisjfiAiXG4iCisjfiAiV0FSTklORyAtIHVzZSBvZiBvcHRpb25zIG1hcmtlZCBbIV0gY2FuIHNlcmlvdXNseSBkYW1hZ2UgeW91ciAiCisjfiAiaW5zdGFsbGF0aW9uLlxuIgorI34gIkZvcmNpbmcgb3B0aW9ucyBtYXJrZWQgWypdIGFyZSBlbmFibGVkIGJ5IGRlZmF1bHQuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICIlcyDlvLfliLbjgqrjg5fjgrfjg6fjg7MgLSDllY/poYzjgYznmbrnlJ/jgZfjgZ/loLTlkIjjga7mjK/jgovoiJ7jgYTjgpLliLblvqHjgZnjgos6XG4iCisjfiAiICDorablkYrjgZnjgovjgYzntprooYw6ICAgIC0tZm9yY2UtPOS6i+ixoT4sPOS6i+ixoT4sLi4uXG4iCisjfiAiICDjgqjjg6njg7zjgavjgZfjgabntYLkuoY6ICAtLXJlZnVzZS085LqL6LGhPiw85LqL6LGhPiwuLi4gfCAtLW5vLWZvcmNlLTzkuovosaE+LC4uLlxuIgorI34gIiDlvLfliLbkuovpoIU6XG4iCisjfiAiICBhbGwgWyFdICAgICAgICAgICAgICDjgZnjgbnjgabjga7lvLfliLbjgqrjg5fjgrfjg6fjg7PjgpLpgannlKjjgZnjgotcbiIKKyN+ICIgIGRvd25ncmFkZSBbKl0gICAgICAgIOWPpOOBhOODkOODvOOCuOODp+ODs+OBp+ODkeODg+OCseODvOOCuOOCkue9ruaPm+OBmeOCi1xuIgorI34gIiAgY29uZmlndXJlLWFueSAgICAgICAg44GT44Gu44OR44OD44Kx44O844K444Gr5b+F6KaB44Gq44OR44OD44Kx44O844K444Gu6Kit5a6a44KS6KGM44GG44GZ44KLXG4iCisjfiAiICBob2xkICAgICAgICAgICAgICAgICDntq3mjIEgKGhvbGQpIOOBleOCjOOBpuOBhOOBpuOCguODkeODg+OCseODvOOCuOOCkuWHpueQhuOBmeOCi1xuIgorI34gIiAgYmFkLXBhdGggICAgICAgICAgICAg6YeN6KaB44Gq44OX44Ot44Kw44Op44Og44GMIFBBVEgg44Gr6KaL44Gk44GL44KJ44Gq44GE44CB5ZWP6aGM44Gu5Y+v6IO9IgorI34gIuaAp+OBguOCilxuIgorI34gIiAgbm90LXJvb3QgICAgICAgICAgICAgcm9vdCDjgafjgarjgY/jgabjgoIo44Ki44OzKeOCpOODs+OCueODiOODvOODq+OCkuippuOBv+OCi1xuIgorI34gIiAgb3ZlcndyaXRlICAgICAgICAgICAg44GC44KL44OR44OD44Kx44O844K444Gu44OV44Kh44Kk44Or44KS5Yil44Gu44OR44OD44Kx44O844K444Gn5LiK5pu444GN44GZIgorI34gIuOCi1xuIgorI34gIiAgb3ZlcndyaXRlLWRpdmVydGVkICAg6YCA6YG/44GV44KM44Gm44GE44KL44OV44Kh44Kk44Or44KS6Z2e6YCA6YG/44OQ44O844K444On44Oz44Gn5LiK5pu444GN44GZIgorI34gIuOCi1xuIgorI34gIiAgYmFkLXZlcmlmeSAgICAgICAgICAg6KqN6Ki844OB44Kn44OD44Kv44Gr5aSx5pWX44GX44Gm44KC44OR44OD44Kx44O844K444KS44Kk44Oz44K544OI44O844Or44GZIgorI34gIuOCi1xuIgorI34gIiAgZGVwZW5kcy12ZXJzaW9uIFshXSAg44OQ44O844K444On44Oz5L6d5a2Y44Gu5ZWP6aGM44KS6K2m5ZGK44Gr5aSJ5pu044GZ44KLXG4iCisjfiAiICBkZXBlbmRzIFshXSAgICAgICAgICDjgZnjgbnjgabjga7kvp3lrZjllY/poYzjgpLorablkYrjgavlpInmm7TjgZnjgotcbiIKKyN+ICIgIGNvbmZuZXcgWyFdICAgICAgICAgIOW4uOOBq+aWsOOBl+OBhOioreWumuODleOCoeOCpOODq+OCkuWIqeeUqOOBmeOCi1xuIgorI34gIiAgY29uZm9sZCBbIV0gICAgICAgICAg5bi444Gr5Y+k44GE6Kit5a6a44OV44Kh44Kk44Or44KS5Yip55So44GZ44KLXG4iCisjfiAiICBjb25mZGVmIFshXSAgICAgICAgICDmlrDjgZfjgYToqK3lrprjg5XjgqHjgqTjg6vjgavlr77jgZfjgabjg4fjg5Xjgqnjg6vjg4jjga7mjK/jgovoiJ7jgYTjgpLjgZkiCisjfiAi44KL44CCXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICDjgZ3jgozjgYzjgYLjgozjgbDllY/jgYTlkIjjgo/jgZvjgarjgYTjgIIg44KC44GX44OH44OV44Kp44Or44OI44GM44GqIgorI34gIuOBj+OAgVxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgY29uZm9sZCDjgYsgY29uZm5ldyDjgqrjg5fjgrfjg6fjg7PjgYzmjIflrprjgZXjgozjgabjgYTjgarjgYTjgahcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgIOWVj+OBhOWQiOOCj+OBm+OCi1xuIgorI34gIiAgY29uZm1pc3MgWyFdICAgICAgICAg5a2Y5Zyo44GX44Gq44GE6Kit5a6a44OV44Kh44Kk44Or44KS5bi444Gr44Kk44Oz44K544OI44O844Or44GZ44KLXG4iCisjfiAiICBjb25mYXNrIFshXSAgICAgICAgICDmlrDjgZfjgYTjg5Djg7zjgrjjg6fjg7Pjga7jgarjgYToqK3lrprjg5XjgqHjgqTjg6vjga7nva7mj5vjgpLmj5DmoYjjgZkiCisjfiAi44KLXG4iCisjfiAiICBicmVha3MgWyFdICAgICAgICAgICDjgbvjgYvjga7jg5Hjg4PjgrHjg7zjgrjjgpLnoLTlo4rjgZnjgovjgZPjgajjgavjgarjgaPjgabjgoLjgqTjg7Pjgrnjg4jjg7wiCisjfiAi44Or44GZ44KLXG4iCisjfiAiICBjb25mbGljdHMgWyFdICAgICAgICDnq7blkIggKGNvbmZsaWN0KSDjgZnjgovjg5Hjg4PjgrHjg7zjgrjjga7jgqTjg7Pjgrnjg4jjg7zjg6vjgpLoqLHlj68iCisjfiAi44GZ44KLXG4iCisjfiAiICBhcmNoaXRlY3R1cmUgWyFdICAgICDjgqLjg7zjgq3jg4bjgq/jg4Hjg6Pjga7pgZXjgYbjg5Hjg4PjgrHjg7zjgrjjgoLlh6bnkIbjgZnjgotcbiIKKyN+ICIgIG92ZXJ3cml0ZS1kaXIgWyFdICAgIOOBguOCi+ODkeODg+OCseODvOOCuOOBruODh+OCo+ODrOOCr+ODiOODquOCkuWIpeOBruODleOCoeOCpOODq+OBp+S4iuabuOOBjSIKKyN+ICLjgZnjgotcbiIKKyN+ICIgIHVuc2FmZS1pbyBbIV0gICAgICAgIOWxlemWi+aZguOBq+WuieWFqOOBqiBJL08g5pON5L2c44KS6KGM44KP44Gq44GEXG4iCisjfiAiICByZW1vdmUtcmVpbnN0cmVxIFshXSDlho3jgqTjg7Pjgrnjg4jjg7zjg6vjgYzopoHmsYLjgZXjgozjgabjgYTjgovjg5Hjg4PjgrHjg7zjgrjjgpLliYrpmaTjgZkiCisjfiAi44KLXG4iCisjfiAiICByZW1vdmUtZXNzZW50aWFsIFshXSDkuI3lj6/mrKAgKGVzc2VudGlhbCkg44Gq44OR44OD44Kx44O844K444KS5YmK6Zmk44GZ44KLXG4iCisjfiAiXG4iCisjfiAi6K2m5ZGKOiBbIV0g44Gu44GC44KL44Kq44OX44K344On44Oz44KS5L2/55So44GZ44KL44Go44CB44Kk44Oz44K544OI44O844Or5pmC44Gr5rex5Yi744Gq44OA44Oh44O844K444KSXG4iCisjfiAi5Y+X44GR44KL5aC05ZCI44GM44GC44KL44CCWypdIOOBruS7mOOBhOOBn+OCquODl+OCt+ODp+ODs+OBr+ODh+ODleOCqeODq+ODiOOBp+acieWKueOBp+OBguOCi+OAglxuIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgZHBrZy1zcGxpdCB0byBzZWUgaWYgaXQncyBwYXJ0IG9mIGEgbXVsdGlwYXJ0ZXIiCisjfiBtc2dzdHIgIiIKKyN+ICLjg57jg6vjg4Hjg5Hjg7zjg4jjga7kuIDpg6jjgafjgYLjgovjgYvjg4Hjgqfjg4Pjgq/jgZnjgovjgZ/jgoHjgasgZHBrZy1zcGxpdCDjgpLlrp/ooYzjgZfjgb7jgZfjgZ/jgYzjgIEiCisjfiAi5aSx5pWX44GX44G+44GX44GfIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWNsIGRlYnNpZy12ZXJpZnkiCisjfiBtc2dzdHIgImRlYnNpZy12ZXJpZnkg44Gu5a6f6KGM44Gr5aSx5pWX44GX44G+44GX44GfIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgZHBrZy1kZWIgdG8gZXh0cmFjdCBjb250cm9sIGluZm9ybWF0aW9uIgorI34gbXNnc3RyICLjgrPjg7Pjg4jjg63jg7zjg6vmg4XloLHjgpLlj5blvpfjgZnjgovjgZ/jgoHjga4gZHBrZy1kZWIg44Gu5a6f6KGM44Gr5aSx5pWX44GX44G+44GX44GfIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGV4ZWMgZHBrZy1kZWIgdG8gZ2V0IGZpbGVzeXN0ZW0gYXJjaGl2ZSIKKyN+IG1zZ3N0ciAiIgorI34gIuODleOCoeOCpOODq+OCt+OCueODhuODoOOCouODvOOCq+OCpOODluOCkuWPluW+l+OBmeOCi+OBn+OCgeOBriBkcGtnLWRlYiDjga7lrp/ooYzjgYzjgafjgY3jgb7jgZvjgpMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gZGVsZXRlIGRpc2FwcGVhcmluZyBjb250cm9sIGluZm8gZmlsZSBgJS4yNTBzJyIKKyN+IG1zZ3N0ciAi44Kz44Oz44OI44Ot44O844Or5oOF5aCx44OV44Kh44Kk44OrIGAlLjI1MHMnIOOBjOimi+OBpOOBi+OCieOBquOBhOOBn+OCgeWJiumZpOOBp+OBjeOBvuOBm+OCkyIKKworI34gbXNnaWQgImRwa2c6ICVzIG5vdCBmb3VuZC5cbiIKKyN+IG1zZ3N0ciAiZHBrZzogJXMg44GM6KaL44Gk44GL44KK44G+44Gb44KT44CCXG4iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gLi4uL0RFQklBTiIKKyN+IG1zZ3N0ciAiLi4uL0RFQklBTiDjg4fjgqPjg6zjgq/jg4jjg6rjgbjjga7np7vli5XjgavlpLHmlZfjgZfjgb7jgZfjgZ8iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyB0YXIgLWNmIgorI34gbXNnc3RyICJ0YXIgLWNmIOOBruWun+ihjOOBq+WkseaVl+OBl+OBvuOBl+OBnyIKKworI34gbXNnaWQgImZhaWxlZCB0byBtYWtlIHRtcGZpbGUgKGNvbnRyb2wpIgorI34gbXNnc3RyICLkuIDmmYLjg5XjgqHjgqTjg6vjga7kvZzmiJDjgavlpLHmlZfjgZfjgb7jgZfjgZ8gKGNvbnRyb2wpIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHVubGluayB0bXBmaWxlIChjb250cm9sKSwgJXMiCisjfiBtc2dzdHIgIuS4gOaZguODleOCoeOCpOODqyAlcyDjga4gdW5saW5rIOOBq+WkseaVl+OBl+OBvuOBl+OBnyAoY29udHJvbCkiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gcmV3aW5kIHRtcGZpbGUgKGNvbnRyb2wpIgorI34gbXNnc3RyICLkuIDmmYLjg5XjgqHjgqTjg6vjga4gcmV3aW5kIOOBq+WkseaVl+OBl+OBvuOBl+OBnyAoY29udHJvbCkiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZnN0YXQgdG1wZmlsZSAoY29udHJvbCkiCisjfiBtc2dzdHIgIuS4gOaZguODleOCoeOCpOODq+OBriBmc3RhdCDjgavlpLHmlZfjgZfjgb7jgZfjgZ8gKGNvbnRyb2wpIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgZmluZCIKKyN+IG1zZ3N0ciAiZmluZCDjga7lrp/ooYzjgavlpLHmlZfjgZfjgb7jgZfjgZ8iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBzaCAtYyBtdiBmb28vKiAmYyIKKyN+IG1zZ3N0ciAic2ggLWMgbXYgZm9vLyogJmMg44Gu5a6f6KGM44Gr5aSx5pWX44GX44G+44GX44GfIgorCisjfiBtc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gJS4yNTBzIGxlbmd0aCBjb250YWlucyBudWxscyIKKyN+IG1zZ3N0ciAi44OV44Kh44Kk44OrIGAlLjI1MHMnIOOBr+WjiuOCjOOBpuOBhOOBvuOBmSAtICUuMjUwcyDplbfjgYwgbnVsbCDjgpLlkKvjgpPjgafjgYTjgb7jgZkiCisKKyN+IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBuZWdhdGl2ZSBtZW1iZXIgbGVuZ3RoICV6aSIKKyN+IG1zZ3N0ciAi44OV44Kh44Kk44OrIGAlLjI1MHMnIOOBr+WjiuOCjOOBpuOBhOOBvuOBmSAtIOODoeODs+ODkOODvOmVtyAlemkg44GM6LKg44Gu5YCk44Gn44GZIgorCisjfiBtc2dpZCAiZmFpbGVkIGdldHRpbmcgdGhlIGN1cnJlbnQgZmlsZSBwb3NpdGlvbiIKKyN+IG1zZ3N0ciAi54++5Zyo44Gu44OV44Kh44Kk44Or5L2N572u44Gu5Y+W5b6X44Gr5aSx5pWX44GX44G+44GX44GfIgorCisjfiBtc2dpZCAiZmFpbGVkIHNldHRpbmcgdGhlIGN1cnJlbnQgZmlsZSBwb3NpdGlvbiIKKyN+IG1zZ3N0ciAi54++5Zyo44Gu44OV44Kh44Kk44Or5L2N572u44Gu6Kit5a6a44Gr5aSx5pWX44GX44G+44GX44GfIgorCisjfiBtc2dpZCAidmVyc2lvbiBudW1iZXIiCisjfiBtc2dzdHIgIuODkOODvOOCuOODp+ODs+eVquWPtyIKKworI34gbXNnaWQgIm1lbWJlciBsZW5ndGgiCisjfiBtc2dzdHIgIuODoeODs+ODkOODvOmVtyIKKworI34gbXNnaWQgImhlYWRlciBpbmZvIG1lbWJlciIKKyN+IG1zZ3N0ciAi44OY44OD44OA5oOF5aCx44Oh44Oz44OQ44O8IgorCisjfiBtc2dpZCAic2tpcHBlZCBjb250cm9sIGFyZWEgZnJvbSAlcyIKKyN+IG1zZ3N0ciAiJXMg44GL44KJ44Kz44Oz44OI44Ot44O844Or44Ko44Oq44Ki44KS44K544Kt44OD44OX44GX44G+44GX44GfIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSB0ZW1wb3JhcnkgZGlyZWN0b3J5IgorI34gbXNnc3RyICLkuIDmmYLjg4fjgqPjg6zjgq/jg4jjg6rjga7kvZzmiJDjgavlpLHmlZfjgZfjgb7jgZfjgZ8iCisKKyN+IG1zZ2lkICJpbmZvX3NwZXciCisjfiBtc2dzdHIgIuaDheWgseaKveWHuiIKKworI34gbXNnaWQgImluZm8gbGVuZ3RoIgorI34gbXNnc3RyICLmg4XloLHplbciCisKKyN+IG1zZ2lkICJ0b3RhbCBsZW5ndGgiCisjfiBtc2dzdHIgIuWQiOioiOmVtyIKKworI34gbXNnaWQgImRhdGEgbGVuZ3RoIgorI34gbXNnc3RyICLjg4fjg7zjgr/plbciCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBkcGtnLWRlYiB0byBleHRyYWN0IGZpZWxkIHZhbHVlIgorI34gbXNnc3RyICLjg5XjgqPjg7zjg6vjg4nlgKTjgpLmir3lh7rjgZnjgovjgZ/jgoHjga4gZHBrZy1kZWIg44Gu5a6f6KGM44Gr5aSx5pWX44GX44G+44GX44GfIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHN0YXQgJXM6ICVzIgorI34gbXNnc3RyICIlcyDjga7nirbmhYvjgpLlj5blvpfjgafjgY3jgb7jgZvjgpM6ICVzIgorCisjfiBtc2dpZCAic2xhdmUgbmFtZSAlcyBkdXBsaWNhdGVkIgorI34gbXNnc3RyICLjgrnjg6zjg7zjg5blkI0gJXMg44GM6YeN6KSH44GX44Gm44GE44G+44GZIgorCisjfiBtc2dpZCAic2xhdmUgbGluayAlcyBkdXBsaWNhdGVkIgorI34gbXNnc3RyICLjgrnjg6zjg7zjg5bjg6rjg7Pjgq8gJXMg44GM6YeN6KSH44GX44Gm44GE44G+44GZIgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9wby9rbS5nbW8gYi9kcGtnLTEuMTYuMS4xL3BvL2ttLmdtbwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iM2IyNTcxCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9wby9rbS5nbW8KQmluYXJ5IGZpbGVzIGRpZmZlcgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9wby9rbS5wbyBiL2Rwa2ctMS4xNi4xLjEvcG8va20ucG8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZWIwZjY3ZQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvcG8va20ucG8KQEAgLTAsMCArMSw3MDU4IEBACisjIHRyYW5zbGF0aW9uIG9mIGRwa2dfcG9fa20ucG8gdG8KKyMgQ29weXJpZ2h0IChDKSBZRUFSIFNvZnR3YXJlIGluIHRoZSBQdWJsaWMgSW50ZXJlc3QsIEluYy4KKyMgVGhpcyBmaWxlIGlzIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBzYW1lIGxpY2Vuc2UgYXMgdGhlIFBBQ0tBR0UgcGFja2FnZS4KKyMKKyMgS2hvZW0gU29raGVtIDxraG9lbXNva2hlbUBraG1lcm9zLmluZm8+LCAyMDA2LgorIyBQb2NoIFNva3VuICA8c29rdW5fcG9jaEBraG1lcm9zLmluZm8+LCAyMDA2LgorbXNnaWQgIiIKK21zZ3N0ciAiIgorIlByb2plY3QtSWQtVmVyc2lvbjogZHBrZ19wb19rbVxuIgorIlJlcG9ydC1Nc2dpZC1CdWdzLVRvOiBkZWJpYW4tZHBrZ0BsaXN0cy5kZWJpYW4ub3JnXG4iCisiUE9ULUNyZWF0aW9uLURhdGU6IDIwMTEtMTAtMTQgMDc6MTErMDIwMFxuIgorIlBPLVJldmlzaW9uLURhdGU6IDIwMDYtMTAtMDQgMDk6NDkrMDcwMFxuIgorIkxhc3QtVHJhbnNsYXRvcjogS2hvZW0gU29raGVtIDxraG9lbXNva2hlbUBraG1lcm9zLmluZm8+XG4iCisiTGFuZ3VhZ2UtVGVhbTogIDxlbkBsaS5vcmc+XG4iCisiTGFuZ3VhZ2U6IGttXG4iCisiTUlNRS1WZXJzaW9uOiAxLjBcbiIKKyJDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9VVRGLThcbiIKKyJDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiA4Yml0XG4iCisiWC1HZW5lcmF0b3I6IEtCYWJlbCAxLjExLjJcbiIKKworIzogbGliL2Rwa2cvYXIuYzo2NgorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGNoYXJhY3RlciAnJWMnIGluIGFyY2hpdmUgJyUuMjUwcycgbWVtYmVyICclLjE2cycgc2l6ZSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9hci5jOjgxIGxpYi9kcGtnL2FyLmM6OTcgbGliL2Rwa2cvYXIuYzoxMDggbGliL2Rwa2cvYXIuYzoxMTIKKyM6IGxpYi9kcGtnL2FyLmM6MTM0IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTU0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgZmlsZSAnJXMnIgorbXNnc3RyICLhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnpThnr7hnoDigIvhnq/hnoDhnp/hnrbhnprigIvhnpThn5LhnprhnpfhnpYgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2FyLmM6OTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZ2VuZXJhdGVkIGNvcnJ1cHQgYXIgaGVhZGVyIGZvciAnJXMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2FyLmM6MTIzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgYXIgbWVtYmVyIGZpbGUgKCVzKSIKK21zZ3N0ciAi4Z6U4Z624Z6T4oCL4Z6U4Z6a4Z624Z6H4Z+Q4Z6Z4oCL4Z6A4Z+S4Z6T4Z674Z6E4oCL4Z6A4Z624Z6a4oCL4Z6U4Z6E4Z+S4Z6A4Z6+4Z6PIHRtcGZpbGUgKOGekeGet+Gek+GfkuGek+Gek+GfkOGemSkiCisKKyM6IGxpYi9kcGtnL2FyLmM6MTMwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJhciBtZW1iZXIgZmlsZSAoJXMpIgorbXNnc3RyICLhnpThnrbhnpPigIvhnpThnprhnrbhnofhn5DhnpnigIvhnoDhn5LhnpPhnrvhnoTigIvhnoDhnrbhnprigIvhnpThnoThn5LhnoDhnr7hno8gdG1wZmlsZSAo4Z6R4Z634Z6T4Z+S4Z6T4Z6T4Z+Q4Z6ZKSIKKworIzogbGliL2Rwa2cvYnVmZmVyLmM6MTk2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCBvbiBidWZmZXIgY29weSBmb3IgJXMiCittc2dzdHIgIuGelOGetuGek+KAi+GelOGemuGetuGeh+GfkOKAi+KAi+GemeGek+GfheGegOGfkuGek+Geu+GehCBidWZmZXJfY29weSAoJXMpIgorCisjOiBsaWIvZHBrZy9idWZmZXIuYzoyMTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCBpbiB3cml0ZSBvbiBidWZmZXIgY29weSBmb3IgJXMiCittc2dzdHIgIuGelOGetuGek+KAi+GelOGemuGetuGeh+GfkOKAi+KAi+GemeGek+GfheGegOGfkuGek+Geu+GehCBidWZmZXJfY29weSAoJXMpIgorCisjOiBsaWIvZHBrZy9idWZmZXIuYzoyMjAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInNob3J0IHJlYWQgb24gYnVmZmVyIGNvcHkgZm9yICVzIgorbXNnc3RyICLhnoDhnrbhnprhnqLhnrbhnpPigIvhnoHhn5LhnpvhnrjigIvhnpPhn4XhnoDhn5LhnpPhnrvhnoQg4Z6A4Z624Z6a4Z6F4Z6Y4Z+S4Z6b4Z6E4oCL4Z6f4Z6P4Z634Z6U4Z6O4Z+S4Z6K4Z+E4Z+H4Z6i4Z624Z6f4Z6T4Z+S4Z6TICglcykiCisKKyM6IGxpYi9kcGtnL2J1ZmZlci5jOjI4OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgdGFyIgorbXNnaWQgImZhaWxlZCB0byBzZWVrICVzIgorbXNnc3RyICLhnpThnrbhnpPigIvhnpThnprhnrbhnofhn5DhnpnigIvhnpHhn4UgZXhlYyB0YXIiCisKKyM6IGxpYi9kcGtnL2NvbW1hbmQuYzoxNzggbGliL2Rwa2cvY29tbWFuZC5jOjIwNCBzcmMvaGVscC5jOjYyMQorIzogc3JjL3Byb2Nlc3NhcmMuYzo5OCBzcmMvcHJvY2Vzc2FyYy5jOjEzOCBzcmMvcHJvY2Vzc2FyYy5jOjQzMgorIzogc3JjL3Byb2Nlc3NhcmMuYzo4MzkgZHBrZy1kZWIvYnVpbGQuYzo0NTkgZHBrZy1kZWIvYnVpbGQuYzo1MzgKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTYxIGRwa2ctZGViL2V4dHJhY3QuYzozMTcgZHBrZy1kZWIvaW5mby5jOjY1CisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6NjkgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQ1NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGV4ZWN1dGUgJXMgKCVzKSIKK21zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6U4Z+S4Z6a4Z6P4Z634Z6U4Z6P4Z+S4Z6P4Z63ICVzIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBkZWNvbXByZXNzaW9uIgorbXNnc3RyICIlc8Kg4Z+WIOGemOGet+Gek+KAi+GelOGehOGfkuGeoOGetuGelOGfi+KAiyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzo4OQorIywgYy1mb3JtYXQKK21zZ2lkICIlczogY29tcHJlc3Npb24iCittc2dzdHIgIiVzwqDhn5Yg4Z6U4Z6E4Z+S4Z6g4Z624Z6U4Z+L4oCLIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjExMgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZXJyb3IgYmluZGluZyBpbnB1dCB0byBnemlwIHN0cmVhbSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjEyNAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgcmVhZCBlcnJvcjogJyVzJyIKK21zZ3N0ciAiJXPCoOGfliDhnoDhn4bhnqDhnrvhnp/igIsgZ3ppcCDhnoHhnrbhnoThnoDhn5LhnpPhnrvhnoTigIvCoOGfliBgJXMnIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjEzMiBsaWIvZHBrZy9jb21wcmVzcy5jOjEzNgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgd3JpdGUgZXJyb3IiCittc2dzdHIgIiVzwqDhn5Yg4Z6A4Z+G4Z6g4Z674Z6f4oCLIGd6aXAg4Z6B4Z624Z6E4Z6A4Z+S4Z6T4Z674Z6E4oCLwqDhn5YgYCVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yIGJpbmRpbmcgb3V0cHV0IHRvIGd6aXAgc3RyZWFtIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTU3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCByZWFkIGVycm9yIgorbXNnc3RyICIlc8Kg4Z+WIOGegOGfhuGeoOGeu+Gen+KAiyBnemlwIOGegeGetuGehOGegOGfkuGek+Geu+GehOKAi8Kg4Z+WIGAlcyciCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTY3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCB3cml0ZSBlcnJvcjogJyVzJyIKK21zZ3N0ciAiJXPCoOGfliDhnoDhn4bhnqDhnrvhnp/igIsgZ3ppcCDhnoHhnrbhnoThnoDhn5LhnpPhnrvhnoTigIvCoOGfliBgJXMnIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE4MAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgd3JpdGUgZXJyb3I6ICVzIgorbXNnc3RyICIlc8Kg4Z+WIOGegOGfhuGeoOGeu+Gen+KAiyBnemlwIOGegeGetuGehOGegOGfkuGek+Geu+GehOKAi8Kg4Z+WIGAlcyciCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjIwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvciBiaW5kaW5nIGlucHV0IHRvIGJ6aXAyIHN0cmVhbSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjIzMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIHJlYWQgZXJyb3I6ICclcyciCittc2dzdHIgIiVzwqDhn5Yg4Z6A4Z+G4Z6g4Z674Z6fIGJ6aXAyIOGegeGetuGehOKAi+GegOGfkuGek+Geu+GehMKg4Z+WIGAlcyciCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjQwIGxpYi9kcGtnL2NvbXByZXNzLmM6MjQ0IGxpYi9kcGtnL2NvbXByZXNzLmM6Mjk0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgd3JpdGUgZXJyb3IiCittc2dzdHIgIiVzwqDhn5Yg4Z6A4Z+G4Z6g4Z674Z6fIGJ6aXAyIOGegeGetuGehOKAi+GegOGfkuGek+Geu+GehMKg4Z+WIGAlcyciCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjU4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvciBiaW5kaW5nIG91dHB1dCB0byBiemlwMiBzdHJlYW0iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyNjUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiByZWFkIGVycm9yIgorbXNnc3RyICIlc8Kg4Z+WIOGegOGfhuGeoOGeu+GenyBiemlwMiDhnoHhnrbhnoTigIvhnoDhn5LhnpPhnrvhnoTCoOGfliBgJXMnIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI3NSBsaWIvZHBrZy9jb21wcmVzcy5jOjI4NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIHdyaXRlIGVycm9yOiAnJXMnIgorbXNnc3RyICIlc8Kg4Z+WIOGegOGfhuGeoOGeu+GenyBiemlwMiDhnoHhnrbhnoTigIvhnoDhn5LhnpPhnrvhnoTCoOGfliBgJXMnIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI4MgorbXNnaWQgInVuZXhwZWN0ZWQgYnppcDIgZXJyb3IiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzo2OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidXBkYXRlcyBkaXJlY3RvcnkgY29udGFpbnMgZmlsZSBgJS4yNTBzJyB3aG9zZSBuYW1lIGlzIHRvbyBsb25nIChsZW5ndGg9JWQsICIKKyJtYXg9JWQpIgorbXNnc3RyICLhnpDhno/hnpfhnrbhnpbigIvhnpHhnrbhnpPhn4vhnp/hnpjhn5DhnpnigIvhnpjhnrbhnpPhnq/hnoDhnp/hnrbhnpogYCUuMjUwcycg4Z6K4Z+C4Z6b4Z6c4Z624Z6Y4Z624Z6T4Z6I4Z+S4Z6Y4Z+E4Z+H4Z6c4Z+C4Z6E4Z6W4Z+B4Z6AICjhnpThn5Lhnprhnpzhn4LhnoQ9JWQsIOGeouGej+Getz0lZCkiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVwZGF0ZXMgZGlyZWN0b3J5IGNvbnRhaW5zIGZpbGVzIHdpdGggZGlmZmVyZW50IGxlbmd0aCBuYW1lcyAoYm90aCAlZCBhbmQgJWQpIgorbXNnc3RyICLhnpLhn5Lhnpzhnr7igIvhnrLhn5LhnpnhnpHhnrbhnpPhn4vhnp/hnpjhn5DigIvhnpnhnpPhnrzhnpzhnpDhno/igIvhnorhn4LigIvhnpvhnpjhnrbhnpPhnq/hnoDhnp/hnrbhnpog4Z6K4Z+C4Z6b4Z6Y4Z624Z6T4Z6I4Z+S4Z6Y4Z+E4Z+H4Z6U4Z+S4Z6a4Z6c4Z+C4Z6E4Z6B4Z674Z6f4Z6C4Z+S4Z6T4Z62ICjhnpHhnrbhn4bhnoQgJWQg4Z6T4Z634Z6EICVkKSIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzo4NgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc2NhbiB1cGRhdGVzIGRpcmVjdG9yeSBgJS4yNTVzJyIKK21zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624oCL4Z6F4Z6c4Z634oCL4Z6X4Z624Z6C4oCL4Z6a4Z6A4Z6Q4Z6P4Z6K4Z+C4Z6b4Z6R4Z624Z6T4Z+L4Z6f4Z6Y4Z+Q4Z6ZIGAlLjI1NXMnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVtb3ZlIGluY29ycG9yYXRlZCB1cGRhdGUgZmlsZSAlLjI1NXMiCittc2dzdHIgIuGelOGetuGek+KAi+GelOGemuGetuGeh+GfkOKAi+GemeGegOGfkuGek+Geu+KAi+GehOGegOGetuGemuGemeGegOGer+KAi+GegOGen+GetuGemuGekeGetuKAi+Gek+Gfi+KAi+Gen+GemOGfkOGemeKAi+GeiuGfguGem+GelOGetuGek+GeheGevOGem+GemuGeveGemOGeheGfgeGeiSAlLjI1NXMiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTIxIGRwa2ctZGViL2J1aWxkLmM6NDQ3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgYCUuMjU1cyciCittc2dzdHIgIuGemOGet+Gek+KAi+GeouGetuGeheKAi+GelOGehOGfkuGegOGevuGej+KAiyBgJS4yNTVzJyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxMjUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZpbGwgJS4yNTBzIHdpdGggcGFkZGluZyIKK21zZ3N0ciAi4Z6Y4Z634Z6T4Z6i4Z624Z6F4Z6U4Z+G4Z6W4Z+B4Z6JICUuMjUwcyDhnorhn4ThnpnhnoXhnpPhn5Lhnpvhn4Thn4ciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTI3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCAlLjI1MHMgYWZ0ZXIgcGFkZGluZyIKK21zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6U4Z6J4Z+S4Z6F4Z684Z6bICUuMjUwcyDhnpThnpPhn5LhnpHhnrbhnpThn4vigIvhnpbhnrjigIvhnoXhnpPhn5Lhnpvhn4Thn4ciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTI5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWVrIHRvIHN0YXJ0IG9mICUuMjUwcyBhZnRlciBwYWRkaW5nIgorbXNnc3RyICLhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnp/hn5Lhnpzhn4LhnoThnprhnoDigIvhnorhnr7hnpjhn5LhnpThnrjigIvhnoXhnrbhnpThn4vhnpXhn5Lhnorhnr7hnpggJS4yNTBzIOGelOGek+GfkuGekeGetuGelOGfi+KAi+GeluGeuOKAi+GeheGek+GfkuGem+GfhOGfhyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxOTUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byBvcGVuIHRtcGZpbGUgZm9yIHZzbnByaW50ZiIKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBsb2NrIGZpbGUgJXMgZm9yIHRlc3RpbmciCittc2dzdHIgIuGemOGet+Gek+KAi+GeouGetuGeheKAi+GelOGevuGegCB0bXBmaWxlIOGen+GemOGfkuGemuGetuGelOGfiyB2c25wcmludGYiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjIxCittc2dpZCAidW5hYmxlIHRvIG9wZW4vY3JlYXRlIHN0YXR1cyBkYXRhYmFzZSBsb2NrZmlsZSIKK21zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6U4Z6+4Z6AL+GelOGehOGfkuGegOGevuGej+KAi+Ger+GegOGen+GetuGemuKAi+Geh+GetuGelOGfi+Gen+GfhOKAi+GemOGevOGem+GeiuGfkuGei+GetuGek+KAi+GekeGet+Gek+GfkuGek+Gek+GfkOGemeKAi+Gen+GfkuGekOGetuGek+Gel+GetuGeliIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyMzEKK21zZ2lkICJ5b3UgZG8gbm90IGhhdmUgcGVybWlzc2lvbiB0byBsb2NrIHRoZSBkcGtnIHN0YXR1cyBkYXRhYmFzZSIKK21zZ3N0ciAi4Z6i4Z+S4Z6T4Z6A4oCL4Z6C4Z+S4Z6Y4Z624Z6T4oCL4Z6f4Z634Z6R4Z+S4Z6S4Z634oCL4Z6K4Z6+4Z6Y4Z+S4Z6U4Z644oCL4Z6F4Z624Z6A4Z+L4Z6f4Z+E4oCL4Z6Y4Z684Z6b4Z6K4Z+S4Z6L4Z624Z6T4oCL4Z6R4Z634Z6T4Z+S4Z6T4Z6T4Z+Q4Z6Z4oCL4Z6f4Z+S4Z6Q4Z624Z6T4Z6X4Z624Z6W4oCL4Z6a4Z6U4Z6f4Z+LIGRwa2cg4Z6U4Z624Z6T4oCL4Z6R4Z+BIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjIzMworIywgZnV6enkKKyN8IG1zZ2lkICJ1bmFibGUgdG8gbG9jayBkcGtnIHN0YXR1cyBkYXRhYmFzZSIKK21zZ2lkICJkcGtnIHN0YXR1cyBkYXRhYmFzZSIKK21zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6F4Z624Z6A4Z+L4Z6f4Z+E4oCL4Z6Y4Z684Z6b4Z6K4Z+S4Z6L4Z624Z6T4oCL4Z6R4Z634Z6T4Z+S4Z6T4Z6T4Z+Q4Z6Z4oCL4Z6f4Z+S4Z6Q4Z624Z6T4Z6X4Z624Z6W4oCL4Z6a4Z6U4Z6f4Z+LIGRwa2ciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjU3Cittc2dpZCAicmVxdWVzdGVkIG9wZXJhdGlvbiByZXF1aXJlcyBzdXBlcnVzZXIgcHJpdmlsZWdlIgorbXNnc3RyICLhnpThn5Lhnprhno/hnrfhnpThno/hn5Lhno/hnrfhnoDhnrbhnprigIvigIvhnorhn4LigIvhnpvhnpThnrbhnpPigIvhnp/hn5LhnpPhnr7igIvhno/hn5LhnprhnrzhnpzhnoDhnrbhnprigIvhnp/hnrfhnpHhn5LhnpLhnrfigIvhnofhnrbigIvhnqLhn5LhnpPhnoDigIvhnpThn5Lhnprhnr7igIvhnofhnrbhnpPhn4vhnoHhn5Lhnpbhnp/hn4siCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjYyCittc2dpZCAidW5hYmxlIHRvIGFjY2VzcyBkcGtnIHN0YXR1cyBhcmVhIgorbXNnc3RyICLhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnoXhnrzhnpvhnorhn4bhno7hnr7hnprhnoDhnrbigIvhnprigIvigIvhnpHhn4XhnoDhn5LhnpPhnrvhnoTigIvigIvigIvhno/hn4bhnpThnpPhn4vhnp/hn5LhnpDhnrbhnpPhnpfhnrbhnpbhnprhnpThnp/hn4sgZHBrZyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyNjQKK21zZ2lkICJvcGVyYXRpb24gcmVxdWlyZXMgcmVhZC93cml0ZSBhY2Nlc3MgdG8gZHBrZyBzdGF0dXMgYXJlYSIKK21zZ3N0ciAi4Z6U4Z+S4Z6a4Z6P4Z634Z6U4Z6P4Z+S4Z6P4Z634Z6A4Z624Z6a4oCL4Z6P4Z+S4Z6a4Z684Z6c4Z6A4Z624Z6a4Z6f4Z634Z6R4Z+S4Z6S4Z634oCL4Z6i4Z624Z6T4oCL4oCLL+Gen+GemuGen+GfgeGemuKAi+GekeGfheKAi+GegOGetuGek+Gfi+Gej+GfhuGelOKAi+Gek+Gfi+Gen+GfkuGekOGetuGek+Gel+GetuGeluGemuGelOGen+GfiyBkcGtnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjMwOQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVtb3ZlIG15IG93biB1cGRhdGUgZmlsZSAlLjI1NXMiCittc2dzdHIgIuGelOGetuGek+GelOGemuGetuGeh+GfkOGemeGegOGfkuGek+Geu+GehOGegOGetuGemuGemeGegOGer+GegOGen+GetuGemuGekeGetuGek+Gfi+Gen+GemOGfkOGemeGeleGfkuGekeGetuGem+Gfi+GegeGfkuGem+GeveGek+GemuGelOGen+Gfi+GegeGfkuGeieGeu+GfhuGeheGfgeGeiSAlLjI1NXMiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzQ3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6f4Z6a4Z6f4Z+B4Z6a4oCL4Z6f4Z+S4Z6Q4Z624Z6T4Z6X4Z624Z6W4oCL4Z6K4Z+C4Z6b4oCL4Z6U4Z624Z6T4oCL4Z6S4Z+S4Z6c4Z6+4Z6y4Z+S4Z6Z4oCL4Z6R4Z624Z6T4Z+L4Z6f4Z6Y4Z+Q4Z6Z4oCL4Z6a4Z6U4Z6f4Z+LYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzQ5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6U4Z6J4Z+S4Z6F4Z684Z6b4oCL4Z6f4Z+S4Z6Q4Z624Z6T4Z6X4Z624Z6W4oCL4Z6K4Z+C4Z6b4Z6U4Z624Z6T4oCL4Z6S4Z+S4Z6c4Z6+4oCL4Z6y4Z+S4Z6Z4oCL4Z6R4Z624Z6T4Z+L4Z6f4Z6Y4Z+Q4Z6Z4oCL4Z6a4Z6U4Z6f4Z+LIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM1MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gdHJ1bmNhdGUgZm9yIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICLhnpjhnrfhnpPhnqLhnrbhnoXhnoDhnrbhno/hn4vhnrLhn5LhnpnhnoHhn5Lhnpvhnrjhnp/hnpjhn5LhnprhnrbhnpThn4vhnp/hn5LhnpDhnrbhnpPhnpfhnrbhnpbhnorhn4LhnpvhnpThnrbhnpPhnpLhn5Lhnpzhnr7hnrLhn5LhnpnhnpHhnrbhnpPhn4vhnp/hnpjhn5DhnpnhnprhnpThnp/hn4tgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZzeW5jIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICLhnpjhnrfhnpPhnqLhnrbhnoUgZnN5bmMg4Z6f4Z+S4Z6Q4Z624Z6T4Z6X4Z624Z6W4oCL4Z6K4Z+C4Z6b4Z6U4Z624Z6T4Z6S4Z+S4Z6c4Z6+4Z6y4Z+S4Z6Z4Z6R4Z624Z6T4Z+L4Z6f4Z6Y4Z+Q4Z6Z4Z6T4Z+DIGAlLjI1MHMnIOGelOGetuGek+GeoeGeviIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICLhnpjhnrfhnpPhnqLhnrbhnoXhnpThnrfhnpHhnp/hn5LhnpDhnrbhnpPhnpfhnrbhnpbhnorhn4LhnpvhnpThnrbhnpPhnpLhn5Lhnpzhnr7hnrLhn5LhnpnhnpHhnrbhnpPhn4vhnp/hnpjhn5DhnpnhnprhnpThnp/hn4sgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzU4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICLhnpjhnrfhnpPhnqLhnrbhnoXhnorhn4bhnqHhnr7hnoThnp/hn5LhnpDhnrbhnpPhnpfhnrbhnpbhnorhn4LhnpvhnpThnrbhnpPhnpLhn5Lhnpzhnr7hnrLhn5LhnpnhnpHhnrbhnpPhn4vhnp/hnpjhn5DhnpnhnprhnpThnp/hn4tgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZGlyLmM6NTAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byByZWFkIGZpbGVkZXNjcmlwdG9yIGZsYWdzIGZvciAlLjI1MHMiCittc2dpZCAidW5hYmxlIHRvIGdldCBmaWxlIGRlc2NyaXB0b3IgZm9yIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICLhnpjhnrfhnpPhnqLhnrbhnoXigIvhnqLhnrbhnpPigIvhnpHhnoThn4vigIvhnoDhnpjhn5LhnpjhnpzhnrfhnpLhnrjigIvhnpbhno7hn4zhnpPhnrbigIvhnq/hnoDhnp/hnrbhnpog4Z6f4Z6Y4Z+S4Z6a4Z624Z6U4Z+LICUuMjUwcyDhnpThnrbhnpPhnqHhnr7hnpkiCisKKyM6IGxpYi9kcGtnL2Rpci5jOjU0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBkaXJlY3RvcnkgJyVzJyIKK21zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6U4Z6+4Z6A4oCL4Z6v4Z6A4Z6f4Z624Z6a4oCL4Z6U4Z+S4Z6a4Z6X4Z6WIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy9kaXIuYzo2OSBsaWIvZHBrZy9kaXIuYzoxMzEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICLhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnpThnr7hnoDigIvhnq/hnoDhnp/hnrbhnprigIvhnpThn5LhnprhnpfhnpYgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2Rpci5jOjEwOSBzcmMvZGl2ZXJ0Y21kLmM6MjE4IGRwa2ctc3BsaXQvc3BsaXQuYzoyMDIKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjkzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBmaWxlICclcyciCittc2dzdHIgIuGemOGet+Gek+KAi+GeouGetuGeheKAi+GelOGevuGegOKAi+Ger+GegOGen+GetuGemuKAi+GelOGfkuGemuGel+GeliBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZGlyLmM6MTExIHNyYy9kaXZlcnRjbWQuYzoyMzIgc3JjL2RpdmVydGNtZC5jOjM3NworIzogc3JjL3N0YXRjbWQuYzoyMTcgZHBrZy1kZWIvYnVpbGQuYzo1OTggZHBrZy1zcGxpdC9qb2luLmM6NjUKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxODcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE0MDYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzeW5jIGZpbGUgJyVzJyIKK21zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6U4Z6+4Z6A4oCL4Z6v4Z6A4Z6f4Z624Z6a4oCL4Z6U4Z+S4Z6a4Z6X4Z6WIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy9kaXIuYzoxMTMgc3JjL2RpdmVydGNtZC5jOjIzNCBzcmMvZGl2ZXJ0Y21kLmM6Mzc5CisjOiBkcGtnLWRlYi9idWlsZC5jOjYwMCBkcGtnLXNwbGl0L2pvaW4uYzo2NyBkcGtnLXNwbGl0L3F1ZXVlLmM6MTg5CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTMxNCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTQwOAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIGZpbGUgJyVzJyIKK21zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6U4Z6E4Z+S4Z6g4Z684Z6a4oCL4Z6F4Z684Z6b4oCL4Z6A4Z+S4Z6T4Z674Z6E4Z6v4Z6A4Z6f4Z624Z6a4oCLIHZzbnByaW50ZiIKKworIzogbGliL2Rwa2cvZHVtcC5jOjM5NgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgZGV0YWlscyBvZiBgJS41MHMnIHRvIGAlLjI1MHMnIgorbXNnc3RyICLhnpThnrbhnpPhnpThnprhnrbhnofhn5DhnpnhnoDhn5LhnpPhnrvhnoThnoDhnrbhnprhnp/hnprhnp/hn4Hhnprhnp/hn4HhnoXhnoDhn5Lhnorhnrjhnpvhnpjhn5LhnqLhnrfhno/hnprhnpThnp/hn4sgYCUuNTBzJyDhnpHhn4UgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0MjMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuICclcycgZm9yIHdyaXRpbmcgJXMgZGF0YWJhc2UiCittc2dzdHIgIuGelOGetuGek+GelOGemuGetuGeh+GfkOGemeGegOGfkuGek+Geu+GehOGegOGetuGemuGelOGevuGegCBgJXMnIOGeiuGevuGemOGfkuGelOGeuOGen+GemuGen+GfgeGemuGeluGfkOGej+GfjOGemOGetuGek+GemuGelOGen+GfiyAlcyIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQyNgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNldCBidWZmZXJpbmcgb24gJXMgZGF0YWJhc2UgZmlsZSIKK21zZ3N0ciAi4Z6Y4Z634Z6T4Z6i4Z624Z6F4Z6A4Z+G4Z6O4Z6P4Z+L4Z6f4Z6P4Z634Z6U4Z6O4Z+S4Z6K4Z+E4Z+H4Z6i4Z624Z6f4Z6T4Z+S4Z6T4Z6T4Z+F4Z6b4Z6+4Z6v4Z6A4Z6f4Z624Z6a4Z6f4Z+S4Z6Q4Z624Z6T4Z6X4Z624Z6W4Z6U4Z624Z6T4Z6R4Z+BIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDM4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgJXMgZGF0YWJhc2UgcmVjb3JkIGFib3V0ICclLjUwcycgdG8gJyUuMjUwcyciCittc2dzdHIgIuGelOGetuGek+KAi+GelOGemuGetuGeh+GfkOGemeKAi+GegOGfkuGek+Geu+GehOKAi+GegOGetuGemuKAi+Gen+GemuGen+GfgeGemuKAi+GegOGfhuGejuGej+Gfi+Gej+GfkuGemuGetiAlcyDhnqLhn4bhnpbhnrggYCUuNTBzJyDhnpHhn4UgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NDYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBmbHVzaCAlcyBkYXRhYmFzZSB0byAnJS4yNTBzJyIKK21zZ3N0ciAi4Z6U4Z624Z6T4oCL4Z6U4Z6a4Z624Z6H4Z+Q4Z6Z4oCL4Z6A4Z+S4Z6T4Z674Z6E4Z6A4Z624Z6a4oCL4Z6U4Z6J4Z+S4Z6F4Z684Z6b4oCL4Z6W4Z+Q4Z6P4Z+M4Z6Y4Z624Z6T4oCL4Z6a4Z6U4Z6f4Z+LICVzIOGekeGfhSBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ0OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZzeW5jICVzIGRhdGFiYXNlIHRvICclLjI1MHMnIgorbXNnc3RyICLhnpThnrbhnpPhnpThnprhnrbhnofhn5DhnpnigIvhnoDhn5LhnpPhnrvhnoThnoDhnrbhnpogZnN5bmMg4Z6W4Z+Q4Z6P4Z+M4Z6Y4Z624Z6TICVzIOGekeGfhSBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ1MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNsb3NlICclLjI1MHMnIGFmdGVyIHdyaXRpbmcgJXMgZGF0YWJhc2UiCittc2dzdHIgIuGelOGetuGek+GelOGemuGetuGeh+GfkOGemeGegOGfkuGek+Geu+GehOGegOGetuGemuGelOGet+GekSBgJS4yNTBzJyDhnpThnpPhn5LhnpHhnrbhnpThn4vhnpbhnrjhnoDhnrbhnprhnp/hnprhnp/hn4Hhnprhnpbhn5Dhno/hn4zhnpjhnrbhnpPhnprhnpThnp/hn4sgJXMiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NTUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBsaW5rICclLjI1MHMnIHRvICclLjI1MHMnIGZvciBiYWNrdXAgb2YgJXMgZGF0YWJhc2UiCittc2dzdHIgIuGelOGetuGek+KAi+GelOGemuGetuGeh+GfkOGemeKAi+GegOGfkuGek+Geu+GehOKAi+GegOGetuGemuKAi+Gej+Gel+GfkuGeh+GetuGelOGfiyBgJS4yNTBzJyDhnpHhn4UgYCUuMjUwcycg4Z6f4Z6Y4Z+S4Z6a4Z624Z6U4Z+L4oCL4Z6W4Z+Q4Z6P4Z+M4Z6Y4Z624Z6T4oCL4Z6U4Z6Y4Z+S4Z6a4Z674Z6E4oCL4Z6R4Z674Z6A4oCL4Z6a4Z6U4Z6f4Z+L4oCL4Z6W4Z+Q4Z6P4Z+M4Z6Y4Z624Z6TICVzIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDU4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gaW5zdGFsbCAnJS4yNTBzJyBhcyAnJS4yNTBzJyBjb250YWluaW5nICVzIGRhdGFiYXNlIgorbXNnc3RyICLhnpThnrbhnpPigIvhnpThnprhnrbhnofhn5DhnpnigIvhnoDhn5LhnpPhnrvhnoThnoDhnrbhnprigIvhnorhn4bhnqHhnr7hnoQgYCUuMjUwcycg4Z6H4Z62IGAlLjI1MHMnIOGeiuGfguGem+KAi+GemOGetuGek+KAi+GeluGfkOGej+GfjOGemOGetuGek+KAi+GemuGelOGen+GfiyAlcyIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjk0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogdW5yZWNvdmVyYWJsZSBmYXRhbCBlcnJvciwgYWJvcnRpbmc6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjEwMAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IG91dHNpZGUgZXJyb3IgY29udGV4dCwgYWJvcnRpbmc6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjEyMAorIywgZnV6enkKKyN8IG1zZ2lkICJvdXQgb2YgbWVtb3J5IGZvciBuZXcgY2xlYW51cCBlbnRyeSIKK21zZ2lkICJvdXQgb2YgbWVtb3J5IGZvciBuZXcgZXJyb3IgY29udGV4dCIKK21zZ3N0ciAi4Z6i4Z6f4Z+L4oCL4Z6f4Z6P4Z634oCL4Z6f4Z6Y4Z+S4Z6a4Z624Z6U4Z+L4oCL4Z6A4Z624Z6a4oCL4Z6f4Z6Y4Z+S4Z6i4Z624Z6P4oCL4Z6S4Z624Z6P4Z674oCL4Z6Q4Z+S4Z6Y4Z64IgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MTgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogZXJyb3Igd2hpbGUgY2xlYW5pbmcgdXA6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKyIlc8Kg4Z+WIOGegOGfhuGeoOGeu+Gen+KAi+GegeGejuGfiOGeluGfgeGem+KAi+Gen+GemOGfkuGeouGetuGej8Kg4Z+WXG4iCisiICVzXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoyMDEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImRwa2c6IHRvbyBtYW55IG5lc3RlZCBlcnJvcnMgZHVyaW5nIGVycm9yIHJlY292ZXJ5ICEhXG4iCittc2dpZCAiJXM6IHRvbyBtYW55IG5lc3RlZCBlcnJvcnMgZHVyaW5nIGVycm9yIHJlY292ZXJ5ISFcbiIKK21zZ3N0ciAiZHBrZ8Kg4Z+WIOGemOGetuGek+KAi+GegOGfhuGeoOGeu+Gen+KAi+GegeGetuGehOKAi+GegOGfkuGek+Geu+GehOKAi+Geh+GetuKAi+GeheGfkuGemuGevuGekyDhnoDhn4bhnqHhnrvhnoTigIvhnpbhn4HhnpvigIvhnp/hnoThn5LhnoLhn5Lhnprhn4Thn4figIvhnoDhn4bhnqDhnrvhnp/CoCEhXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoyNjggbGliL2Rwa2cvZWhhbmRsZS5jOjMwNworbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBjbGVhbnVwIGVudHJ5IgorbXNnc3RyICLhnqLhnp/hn4vigIvhnp/hno/hnrfigIvhnp/hnpjhn5LhnprhnrbhnpThn4vigIvhnoDhnrbhnprigIvhnp/hnpjhn5LhnqLhnrbhno/igIvhnpLhnrbhno/hnrvigIvhnpDhn5LhnpjhnrgiCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoyOTEKK21zZ2lkICJvdXQgb2YgbWVtb3J5IGZvciBuZXcgY2xlYW51cCBlbnRyeSB3aXRoIG1hbnkgYXJndW1lbnRzIgorbXNnc3RyICLhnqLhnp/hn4vigIvhnp/hno/hnrfigIvhnp/hnpjhn5LhnprhnrbhnpThn4vigIvhnoDhnrbhnprigIvhnp/hnpjhn5LhnqLhnrbhno/igIvhnpLhnrbhno/hnrvigIvhnpDhn5LhnpjhnrjigIvhnorhn4LhnpvhnpjhnrbhnpPigIvhnqLhnrbhnoLhnrvhnpnhnpjhn4nhnoThn4vhnofhnrbigIvhnoXhn5Lhnprhnr7hnpMiCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzozNTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvcjogJXNcbiIKK21zZ3N0ciAiIgorIiVzwqDhn5Yg4Z6A4Z+G4Z6g4Z674Z6f4oCL4Z6B4Z6O4Z+I4Z6W4Z+B4Z6b4oCL4Z6f4Z6Y4Z+S4Z6i4Z624Z6PwqDhn5ZcbiIKKyIgJXNcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjM5MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IHdhcm5pbmc6ICVzXG4iCittc2dzdHIgIiIKKyIlc8Kg4Z+WIOGegOGfhuGeoOGeu+Gen+KAi+GegeGejuGfiOGeluGfgeGem+KAi+Gen+GemOGfkuGeouGetuGej8Kg4Z+WXG4iCisiICVzXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzo0MTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiVzOiVkOiBpbnRlcm5hbCBlcnJvcjogJXNcbiIKK21zZ3N0ciAiJXPCoOGfliVkwqDhn5Yg4Z6A4Z+G4Z6g4Z674Z6f4oCL4Z6B4Z624Z6E4oCL4Z6A4Z+S4Z6T4Z674Z6EJXMnXG4iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGlzIG1pc3NpbmciCittc2dzdHIgIuGelOGetuGej+GfiyAlcyAiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJgJS4qcycgaXMgbm90IGFsbG93ZWQgZm9yICVzIgorbXNnaWQgIiclLjUwcycgaXMgbm90IGFsbG93ZWQgZm9yICVzIgorbXNnc3RyICJgJS4qcycg4Z6Y4Z634Z6T4oCL4Z6P4Z+S4Z6a4Z684Z6c4Z6U4Z624oCL4Z6T4Z6i4Z6T4Z674oCL4Z6J4Z+S4Z6J4Z624Z6P4Z6f4Z6Y4Z+S4Z6a4Z624Z6U4Z+LICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo3MworIywgYy1mb3JtYXQKK21zZ2lkICJqdW5rIGFmdGVyICVzIgorbXNnc3RyICLhnqXhno/hnpThnrbhnpPhnoDhnrbhnprigIvhnpThnpPhn5LhnpHhnrbhnpThn4vhnpbhnrggJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjg3CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgcGFja2FnZSBuYW1lICglLjI1MHMpIgorbXNnc3RyICLhnojhn5Lhnpjhn4Thn4figIvhnoDhnonhn5LhnoXhnpThn4vigIvhnpjhnrfhnpPigIvhno/hn5Lhnprhnrnhnpjhno/hn5LhnprhnrzhnpwgKCUuMjUwcykiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJlbXB0eSBmaWxlIGRldGFpbHMgZmllbGQgYCVzJyIKK21zZ3N0ciAi4Z6f4Z6Y4Z+S4Z6i4Z624Z6P4oCL4Z6c4Z624Z6b4oCL4Z6b4Z6Y4Z+S4Z6i4Z634Z6P4oCL4Z6v4Z6A4Z6f4Z624Z6aIGAlcyciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjEwNQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGRldGFpbHMgZmllbGQgYCVzJyBub3QgYWxsb3dlZCBpbiBzdGF0dXMgZmlsZSIKK21zZ3N0ciAi4Z6c4Z624Z6b4oCL4Z6b4Z6Y4Z+S4Z6i4Z634Z6P4oCL4Z6v4Z6A4Z6f4Z624Z6aIGAlcycg4Z6Y4Z634Z6T4oCL4Z6U4Z624Z6T4oCL4Z6i4Z6T4Z674Z6J4Z+S4Z6J4Z624Z6P4oCL4Z6A4Z+S4Z6T4Z674Z6E4oCL4Z6v4Z6A4Z6f4Z624Z6a4oCL4Z6f4Z+S4Z6Q4Z624Z6T4Z6X4Z624Z6WIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidG9vIG1hbnkgdmFsdWVzIGluIGZpbGUgZGV0YWlscyBmaWVsZCBgJXMnIChjb21wYXJlZCB0byBvdGhlcnMpIgorbXNnc3RyICLhnpjhnrbhnpPigIvhno/hnpjhn5Lhnpvhn4PigIvhnoXhn5Lhnprhnr7hnpPigIvhnpbhn4HhnoDigIvhnpPhn4XhnoDhn5LhnpPhnrvhnoTigIvhnpzhnrbhnpvigIvhnpvhnpjhn5LhnqLhnrfhno/igIvhnq/hnoDhnp/hnrbhnpogYCVzJyAo4Z6U4Z624Z6T4oCL4Z6U4Z+S4Z6a4Z+A4Z6U4Z6S4Z+A4Z6U4oCL4Z6R4Z+F4Z6T4Z654Z6E4Z6i4Z624oCL4Z624oCL4Z6V4Z+S4Z6f4Z+B4Z6E4Z6R4Z+A4Z6PKSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTMyCisjLCBjLWZvcm1hdAorbXNnaWQgInRvbyBmZXcgdmFsdWVzIGluIGZpbGUgZGV0YWlscyBmaWVsZCBgJXMnIChjb21wYXJlZCB0byBvdGhlcnMpIgorbXNnc3RyICLhnpjhnrbhnpPigIvhno/hnpjhn5Lhnpvhn4PigIvhnpjhnr3hnpnigIvhnoXhn4bhnpPhnr3hnpPigIvhnpPhn4XigIvhnoDhn5LhnpPhnrvhnoTigIvhnpzhnrbhnpvigIvhnpvhnpjhn5LhnqLhnrfhno/igIvhnq/hnoDhnp/hnrbhnpogYCVzJyAo4Z6U4Z624Z6T4oCL4Z6U4Z+S4Z6a4Z+A4Z6U4Z6S4Z+A4Z6U4oCL4Z6T4Z654Z6E4Z6i4Z624oCL4Z6V4Z+S4Z6f4Z+B4Z6E4oCL4Z6R4Z+A4Z6PKSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTU0Cittc2dpZCAieWVzL25vIGluIGJvb2xlYW4gZmllbGQiCittc2dzdHIgIuGelOGetuGekSDhnoXhnrbhnp8v4Z6R4Z+BIOGek+GfheGegOGfkuGek+Geu+GehOKAi+GenOGetuGem+KAi+GelOGfiuGevOGem+GeuOGek+KAiyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTc0Cittc2dpZCAid29yZCBpbiBgcHJpb3JpdHknIGZpZWxkIgorbXNnc3RyICLhnpbhnrbhnoDhn5LhnpnigIvhnpPhn4XigIvigIvigIvhnoDhn5LhnpPhnrvhnoThnpzhnrbhnpvigIsgYOGeouGetuGekeGet+Gel+GetuGeliciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE4NgorbXNnaWQgInZhbHVlIGZvciBgc3RhdHVzJyBmaWVsZCBub3QgYWxsb3dlZCBpbiB0aGlzIGNvbnRleHQiCittc2dzdHIgIuGej+GemOGfkuGem+Gfg+KAi+Gen+GemOGfkuGemuGetuKAi+GelOGfi+GenOGetuGemyBg4Z6f4Z+S4Z6Q4Z624Z6T4Z6X4Z624Z6WJyDhnpjhnrfhnpPigIvhnpThnrbhnpPigIvhnqLhnpPhnrvhnonhn5Lhnonhnrbhno/igIvhnpPhn4XigIvhnoDhn5LhnpPhnrvhnoTigIvhnpThnprhnrfhnpThnpHigIvhnpPhn4Hhn4ciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE5MQorbXNnaWQgImZpcnN0ICh3YW50KSB3b3JkIGluIGBzdGF0dXMnIGZpZWxkIgorbXNnc3RyICLhnpHhnrgg4Z+hICjhnoXhnoThn4vhnpThnrbhnpMpIOGeluGetuGegOGfkuGemeGek+GfheGegOGfkuGek+Geu+GehOGenOGetuGemyBg4Z6f4Z+S4Z6Q4Z624Z6T4Z6X4Z624Z6WJyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTk0Cittc2dpZCAic2Vjb25kIChlcnJvcikgd29yZCBpbiBgc3RhdHVzJyBmaWVsZCIKK21zZ3N0ciAi4Z6R4Z64IOGfoiAo4Z6A4Z+G4Z6g4Z674Z6fKSDhnpbhnrbhnoDhn5LhnpnigIvhnpPhn4XigIvhnoDhn5LhnpPhnrvhnoTigIvhnpzhnrbhnpsgYOGen+GfkuGekOGetuGek+Gel+GetuGeliciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE5NworbXNnaWQgInRoaXJkIChzdGF0dXMpIHdvcmQgaW4gYHN0YXR1cycgZmllbGQiCittc2dzdHIgIuGekeGeuCDhn6MgKOGen+GfkuGekOGetuGek+Gel+GetuGelikg4Z6W4Z624Z6A4Z+S4Z6Z4oCL4Z6T4Z+F4Z6A4Z+S4Z6T4Z674Z6E4oCL4Z6c4Z624Z6bIGDhnp/hn5LhnpDhnrbhnpPhnpfhnrbhnpYnIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyMDcKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImVycm9yIGluIFZlcnNpb24gc3RyaW5nIGAlLjI1MHMnOiAlLjI1MHMiCittc2dpZCAiZXJyb3IgaW4gVmVyc2lvbiBzdHJpbmcgJyUuMjUwcyciCittc2dzdHIgIuGegOGfhuGeoOGeu+Gen+KAi+Gek+GfheKAi+GegOGfkuGek+Geu+GehOKAi+GegeGfkuGen+GfguKAi+GeouGegOGfkuGen+GemuKAi+GegOGfhuGejuGfgiBgJS4yNTBzJ8Kg4Z+WICUuMjUwcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjE4Cittc2dpZCAib2Jzb2xldGUgYFJldmlzaW9uJyBvciBgUGFja2FnZS1SZXZpc2lvbicgZmllbGQgdXNlZCIKK21zZ3N0ciAi4Z6c4Z624Z6b4oCL4Z6K4Z+C4Z6b4Z6g4Z694Z6f4Z6f4Z6Y4Z+Q4Z6ZIGDhnoDhnrbhnprhnpbhnrfhnpPhnrfhno/hn5LhnpnigIvhnqHhnr7hnoThnpzhnrfhnoknIOGerCBg4Z6A4Z6J4Z+S4Z6F4Z6U4Z+L4oCL4Z6W4Z634Z6T4Z634Z6P4Z+S4Z6Z4oCL4Z6h4Z6+4Z6E4Z6c4Z634Z6JJyDhnpThnrbhnpPhnpThn5Lhnprhnr4iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjIzNQorbXNnaWQgInZhbHVlIGZvciBgY29uZmlnLXZlcnNpb24nIGZpZWxkIG5vdCBhbGxvd2VkIGluIHRoaXMgY29udGV4dCIKK21zZ3N0ciAi4Z6f4Z6Y4Z+S4Z6b4Z+D4oCL4Z6f4Z6Y4Z+S4Z6a4Z624Z6U4Z+L4oCL4Z6c4Z624Z6bIGDhnoDhn4bhno7hn4LigIvhnoDhn4bhno7hno/hn4vigIvhnprhnoXhnpPhnrbhnp/hnpjhn5Lhnpbhn5DhnpPhn5LhnpInIOGemOGet+Gek+KAi+GelOGetuGek+KAi+GeouGek+Geu+GeieGfkuGeieGetuGej+KAi+Gek+GfheKAi+GegOGfkuGek+Geu+GehOKAi+GelOGemuGet+GelOGekeKAi+Gek+GfgeGfhyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjQwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJlcnJvciBpbiBDb25maWctVmVyc2lvbiBzdHJpbmcgYCUuMjUwcyc6ICUuMjUwcyIKK21zZ2lkICJlcnJvciBpbiBDb25maWctVmVyc2lvbiBzdHJpbmcgJyUuMjUwcyciCittc2dzdHIgIuGegOGfhuGeoOGeu+Gen+KAi+Gek+GfheKAi+GegOGfkuGek+Geu+GehOKAi+GegeGfkuGen+GfguGeouGegOGfkuGen+GemuKAi+GegOGfhuGejuGfguKAi+GegOGfhuGejuGej+Gfi+KAi+GemuGeheGek+GetuGen+GemOGfkuGeluGfkOGek+GfkuGekiBgJS4yNTBzJ8Kg4Z+WICUuMjUwcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjY2CisjLCBjLWZvcm1hdAorbXNnaWQgInZhbHVlIGZvciBgY29uZmZpbGVzJyBoYXMgbWFsZm9ybWF0dGVkIGxpbmUgYCUuKnMnIgorbXNnc3RyICLhno/hnpjhn5Lhnpvhn4PigIvhnp/hnpjhn5LhnprhnrbhnpThn4sgYGNvbmZmaWxlcycg4Z6Y4Z624Z6T4oCL4Z6U4Z6T4Z+S4Z6R4Z624Z6P4Z+LIG1hbGZvcm1hdHRlZCBgJS4qcyciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjI4NworIywgYy1mb3JtYXQKK21zZ2lkICJ2YWx1ZSBmb3IgYGNvbmZmaWxlcycgaGFzIGxpbmUgc3RhcnRpbmcgd2l0aCBub24tc3BhY2UgYCVjJyIKK21zZ3N0ciAi4Z6P4Z6Y4Z+S4Z6b4Z+D4oCL4Z6f4Z6Y4Z+S4Z6a4Z624Z6U4Z+LIGBjb25mZmlsZXMnIOGemOGetuGek+KAi+GelOGek+GfkuGekeGetuGej+Gfi+KAi+GeiuGfguGem+GeheGetuGelOGfi+GeleGfkuGeiuGevuGemOKAi+Geh+GetuGemOGeveGemeKAiyBgJWMnIOGeiuGfguGem+GeguGfkuGemOGetuGek+KAi+GeheGek+GfkuGem+GfhOGfhyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MzA0Cittc2dpZCAicm9vdCBvciBudWxsIGRpcmVjdG9yeSBpcyBsaXN0ZWQgYXMgYSBjb25mZmlsZSIKK21zZ3N0ciAi4Z6Q4Z6P4oCL4Z6Y4Z+BIOGerCDhnpDhno/hnpHhnpHhn4Hhnorhn4Lhnpvhno/hn5LhnprhnrzhnpzhnpThnrbhnpPigIvhnprhnrbhnpnigIvhnofhnrbigIsgY29uZmZpbGUiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjM2NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgbWlzc2luZyBwYWNrYWdlIG5hbWUsIG9yIGdhcmJhZ2Ugd2hlcmUgcGFja2FnZSBuYW1lIGV4cGVjdGVkIgorbXNnc3RyICLhnpzhnrbhnpsgYCVzJyDhnojhn5Lhnpjhn4Thn4figIvhnoDhnonhn5LhnoXhnpThn4vigIvhnorhn4LhnpvigIvhnpThnrbhno/hn4sg4Z6sIOGeouGfkuGenOGeuOKAi+GeiuGfguGem+Gek+GfheGen+Gem+GfiyDhnorhn4LhnpvigIvhnojhn5Lhnpjhn4Thn4fhnoDhnonhn5LhnoXhnpThn4vigIvhno/hn5LhnprhnrzhnpzhnpThnrbhnpPigIvhnprhn4bhnpbhnrnhnoThnpHhnrvhnoAiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjM3MAorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGZpZWxkLCBpbnZhbGlkIHBhY2thZ2UgbmFtZSBgJS4yNTVzJzogJXMiCittc2dzdHIgIuGenOGetuGemyBgJXMnIOGeiOGfkuGemOGfhOGfh+KAi+GegOGeieGfkuGeheGelOGfi+KAi+GemOGet+Gek+KAi+Gej+GfkuGemuGeueGemOGej+GfkuGemuGevOGenCBgJS4yNTVzJ8Kg4Z+WICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgYmFkIHZlcnNpb24gcmVsYXRpb25zaGlwICVjJWMiCittc2dzdHIgIiIKKyLhnpzhnrbhnpsgYCVzJyDhnp/hn4bhnqLhnrbhnoTigIvhnpvhnr4gYCUuMjU1cyfCoOGfllxuIgorIiDhnpHhn4bhnpPhnrbhnoDhn4vigIvhnpHhn4bhnpPhnoTigIvhnoDhn4bhno7hn4LigIvhnpjhnrfhnpPhnpvhn5LhnqIgJWMlYyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDEyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6XG4iCisiIGAlYycgaXMgb2Jzb2xldGUsIHVzZSBgJWM9JyBvciBgJWMlYycgaW5zdGVhZCIKK21zZ3N0ciAiIgorIuGenOGetuGemyBgJXMnIOGen+GfhuGeouGetuGehOGem+GeviBgJS4yNTVzJ8Kg4Z+WXG4iCisiIGAlYycg4Z6U4Z+S4Z6a4Z6+4Z6b4Z+C4Z6E4oCL4Z6U4Z624Z6TIOGelOGfkuGemuGeviBgJWM9JyBvciBgJWMlYycg4Z6H4Z+G4Z6T4Z694Z6f4oCL4oCL4oCL4Z6c4Z634Z6JIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgaW1wbGljaXQgZXhhY3QgbWF0Y2ggb24gdmVyc2lvbiBudW1iZXIsIHN1Z2dlc3QgdXNpbmcgYD0nIGluc3RlYWQiCittc2dzdHIgIiIKKyLhnpzhnrbhnpsgYCVzJyDhnp/hn4bhnqLhnrbhnoThnpvhnr4gYCUuMjU1cycg4Z+WXG4iCisiIOGeluGet+Gej+Geh+GetuGeiuGevOGeheGek+GeueGehOGevuKAi+Gem+GfgeGegeKAi+GegOGfhuGejuGfguKAi+GekeGetuGfhuGehOGen+GfkuGemuGeu+GehCDhnpXhn5Lhnorhnpvhn4vhnpnhn4ThnpThnpvhn4vigIvhnrLhn5LhnpnhnpThn5Lhnprhnr4gYD0nIOGeh+GfhuGek+GeveGen+GenOGet+GeiSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDMwCittc2dpZCAiT25seSBleGFjdCB2ZXJzaW9ucyBtYXkgYmUgdXNlZCBmb3IgUHJvdmlkZXMiCittc2dzdHIgIuGemOGetuGek+KAi+Gej+GfguKAi+GegOGfhuGejuGfguKAi+Geh+GetuGegOGfi+Gem+GetuGegOGfi+KAi+GelOGfieGeu+GejuGfkuGejuGfhOGfh+KAi+GeouGetuGeheKAi+Gej+GfkuGemuGevOGenOKAi+GelOGetuGek+KAi+GelOGfkuGemuGevuKAi+Gen+GemOGfkuGemuGetuGelOGfi+KAi+GegOGetuGemuKAi+GeleGfkuGeiuGem+Gfi+KAi+GesuGfkuGemSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6XG4iCisiIHZlcnNpb24gdmFsdWUgc3RhcnRzIHdpdGggbm9uLWFscGhhbnVtZXJpYywgc3VnZ2VzdCBhZGRpbmcgYSBzcGFjZSIKK21zZ3N0ciAiIgorIuGenOGetuGemyBgJXMnIOGen+GfhuGeouGetuGehOKAi+Gem+GeviBgJS4yNTVzJ8Kg4Z+WXG4iCisiIOGej+GemOGfkuGem+Gfg+KAi+GegOGfhuGejuGfguKAi+GeheGetuGelOGfi+GeleGfkuGeiuGevuGemOKAi+GeiuGfhOGemeKAi+GeguGfkuGemOGetuGek+KAi+GeouGegOGfkuGen+GemuKAi+GegOGfkuGemuKAi+GemOKAi+Gem+GfgeGegeKAiyDigIvhnp/hn5LhnpPhnr7hnrLhn5LhnpnhnpTigIvhnpPhn5LhnpDhn4LhnpjhnoXhnpPhn5Lhnpvhn4Thn4ciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ1MSBsaWIvZHBrZy9maWVsZHMuYzo0NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOiB2ZXJzaW9uIGNvbnRhaW5zIGAlYyciCittc2dzdHIgIuGenOGetuGemyBgJXMnIOGen+GfhuGeouGetuGehOKAi+Gem+GeviBgJS4yNTVzJ8Kg4Z+WIOGegOGfhuGejuGfguKAi+GemOGetuGekyBgJWMnIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOiB2ZXJzaW9uIHVudGVybWluYXRlZCIKK21zZ3N0ciAi4Z6c4Z624Z6bIGAlcycg4Z6f4Z+G4Z6i4Z624Z6E4oCL4Z6b4Z6+IGAlLjI1NXMnwqDhn5Yg4Z6A4Z+G4Z6O4Z+C4oCL4Z6Y4Z634Z6T4oCL4Z6U4Z624Z6T4oCL4Z6U4Z6J4Z+S4Z6F4Z6U4Z+LIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NjUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzogZXJyb3IgaW4gdmVyc2lvbjogJS4yNTVzIgorbXNnaWQgIiclcycgZmllbGQsIHJlZmVyZW5jZSB0byAnJS4yNTVzJzogZXJyb3IgaW4gdmVyc2lvbiIKK21zZ3N0ciAi4Z6c4Z624Z6bIGAlcycg4Z6f4Z+G4Z6i4Z624Z6E4oCL4Z6b4Z6+IGAlLjI1NXMnwqDhn5Yg4Z6A4Z+G4Z6g4Z674Z6f4oCL4Z6T4Z+F4oCL4Z6A4Z+S4Z6T4Z674Z6E4oCL4Z6A4Z+G4Z6O4Z+CwqDhn5YgJS4yNTVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBmaWVsZCwgc3ludGF4IGVycm9yIGFmdGVyIHJlZmVyZW5jZSB0byBwYWNrYWdlIGAlLjI1NXMnIgorbXNnc3RyICLhnpzhnrbhnpsgYCVzJyDhnoDhn4bhnqDhnrvhnp/igIvhnpzhnrbhnoDhn5LhnpnigIvhnp/hnpjhn5Lhnpbhn5DhnpPhn5LhnpLigIvhnpThnpPhn5LhnpHhnrbhnpThn4vigIvhnpbhnrjigIvhnpnhn4ThnoTigIvhnpvhnr7igIvhnoDhnonhn5LhnoXhnpThn4sgYCUuMjU1cyciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ4MgorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZXMgKGB8Jykgbm90IGFsbG93ZWQgaW4gJXMgZmllbGQiCittc2dzdHIgIuGen+GeieGfkuGeieGetiAoYHwnKSDhnofhn4bhnpPhnr3hnp/igIvhnpjhnrfhnpPigIvhnpThnrbhnpPigIvhnqLhnpPhnrvhnonhn5Lhnonhnrbhno/igIvhnpPhn4XigIvhnoDhn5LhnpPhnrvhnoTigIvhnpzhnrbhnpsgJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjUzNgorIywgZnV6enkKK21zZ2lkICJ2YWx1ZSBmb3IgYHRyaWdnZXJzLXBlbmRpbmcnIGZpZWxkIG5vdCBhbGxvd2VkIGluIHRoaXMgY29udGV4dCIKK21zZ3N0ciAi4Z6f4Z6Y4Z+S4Z6b4Z+D4oCL4Z6f4Z6Y4Z+S4Z6a4Z624Z6U4Z+L4oCL4Z6c4Z624Z6bIGDhnoDhn4bhno7hn4LigIvhnoDhn4bhno7hno/hn4vigIvhnprhnoXhnpPhnrbhnp/hnpjhn5Lhnpbhn5DhnpPhn5LhnpInIOGemOGet+Gek+KAi+GelOGetuGek+KAi+GeouGek+Geu+GeieGfkuGeieGetuGej+KAi+Gek+GfheKAi+GegOGfkuGek+Geu+GehOKAi+GelOGemuGet+GelOGekeKAi+Gek+GfgeGfhyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTQzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJpbGxlZ2FsIHBlbmRpbmcgdHJpZ2dlciBuYW1lIGAlLjI1NXMnOiAlcyIKK21zZ3N0ciAi4Z6c4Z624Z6bIGAlcycg4Z6I4Z+S4Z6Y4Z+E4Z+H4oCL4Z6A4Z6J4Z+S4Z6F4Z6U4Z+L4oCL4Z6Y4Z634Z6T4oCL4Z6P4Z+S4Z6a4Z654Z6Y4Z6P4Z+S4Z6a4Z684Z6cIGAlLjI1NXMnwqDhn5YgJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU0NworIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgcGVuZGluZyB0cmlnZ2VyIGAlLjI1NXMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU2MQorIywgZnV6enkKK21zZ2lkICJ2YWx1ZSBmb3IgYHRyaWdnZXJzLWF3YWl0ZWQnIGZpZWxkIG5vdCBhbGxvd2VkIGluIHRoaXMgY29udGV4dCIKK21zZ3N0ciAi4Z6P4Z6Y4Z+S4Z6b4Z+D4oCL4Z6f4Z6Y4Z+S4Z6a4Z624oCL4Z6U4Z+L4Z6c4Z624Z6bIGDhnp/hn5LhnpDhnrbhnpPhnpfhnrbhnpYnIOGemOGet+Gek+KAi+GelOGetuGek+KAi+GeouGek+Geu+GeieGfkuGeieGetuGej+KAi+Gek+GfheKAi+GegOGfkuGek+Geu+GehOKAi+GelOGemuGet+GelOGekeKAi+Gek+GfgeGfhyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTY4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJpbGxlZ2FsIHBhY2thZ2UgbmFtZSBpbiBhd2FpdGVkIHRyaWdnZXIgYCUuMjU1cyc6ICVzIgorbXNnc3RyICLhnojhn5Lhnpjhn4Thn4figIvhnoDhnonhn5LhnoXhnpThn4vigIvhnpjhnrfhnpPigIvhno/hn5Lhnprhnrnhnpjhno/hn5LhnprhnrzhnpzigIvhnpPhn4XigIvhnpThnpPhn5LhnpHhnrbhno/hn4sgJWTCoOGfliAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU3NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIGF3YWl0ZWQgdHJpZ2dlciBwYWNrYWdlIGAlLjI1NXMnIgorbXNnc3RyICLhnprhnrbhnpnigIvhnoDhnonhn5LhnoXhnpThn4vigIvigIvhnq/hnoDhnp/hnrbhnprigIsgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzo1MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgc291cmNlIGZpbGUgJyUuMjUwcyciCittc2dzdHIgIuGemOGet+Gek+KAi+GeouGetuGeheKAi+GelOGevuGegOKAi+Ger+GegOGen+GetuGemuKAi+GelOGfkuGemuGel+GeliBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZmlsZS5jOjU1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hhbmdlIG93bmVyc2hpcCBvZiB0YXJnZXQgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAi4Z6Y4Z634Z6T4Z6i4Z624Z6F4oCL4Z6V4Z+S4Z6b4Z624Z6f4Z+L4Z6U4Z+S4Z6K4Z684Z6a4oCL4Z6X4Z624Z6W4oCL4Z6H4Z624Z6A4Z6Y4Z+S4Z6Y4Z6f4Z634Z6R4Z+S4Z6S4Z63IOGemuGelOGen+Gfi+KAiyBkaXN0IGNvbmZmaWxlIOGekOGfkuGemOGeuCBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZmlsZS5jOjU5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IG1vZGUgb2YgdGFyZ2V0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgIuGemOGet+Gek+GeouGetuGeheKAi+GegOGfhuGejuGekeGfi+KAi+GemuGelOGfgOGelOKAi+GemuGelOGen+GfiyBkaXN0IGNvbmZmaWxlIOGekOGfkuGemOGeuCBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZmlsZS5jOjg1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gdW5sb2NrICVzOiAlcyIKK21zZ2lkICJ1bmFibGUgdG8gdW5sb2NrICVzIgorbXNnc3RyICLhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnorhn4Thn4fhnp/hn4QgJXPCoOGfliAlcyIKKworIzogbGliL2Rwa2cvZmlsZS5jOjExMQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoZWNrIGZpbGUgJyVzJyBsb2NrIHN0YXR1cyIKK21zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6U4Z6+4Z6A4oCL4Z6v4Z6A4Z6f4Z624Z6a4oCL4Z6U4Z+S4Z6a4Z6X4Z6WIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy9maWxlLmM6MTQ2CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJzdGF0dXMgZGF0YWJhc2UgYXJlYSBpcyBsb2NrZWQgYnkgYW5vdGhlciBwcm9jZXNzIgorbXNnaWQgIiVzIGlzIGxvY2tlZCBieSBhbm90aGVyIHByb2Nlc3MiCittc2dzdHIgIuGej+GfhuGelOGek+Gfi+KAi+GemOGevOGem+GeiuGfkuGei+GetuGek+KAi+GekeGet+Gek+GfkuGek+Gek+GfkOGemeKAi+Gen+GfkuGekOGetuGek+Gel+GetuGeluKAi+Gej+GfkuGemuGevOGenOGelOGetuGek+KAi+GeheGetuGegOGfi+Gen+GfhOKAi+GeiuGfhOGemeKAi+GeiuGfhuGejuGevuGemuKAi+GegOGetuGemuKAi+GeleGfkuGen+GfgeGehOKAi+GekeGfgOGejyIKKworIzogbGliL2Rwa2cvZmlsZS5jOjE0OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHVubG9jayAlczogJXMiCittc2dpZCAidW5hYmxlIHRvIGxvY2sgJXMiCittc2dzdHIgIuGemOGet+Gek+KAi+GeouGetuGeheKAi+GeiuGfhOGfh+Gen+GfhCAlc8Kg4Z+WICVzIgorCisjOiBsaWIvZHBrZy9sb2cuYzo1MworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBvcGVuIGxvZyBgJXMnOiAlc1xuIgorbXNnc3RyICLhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnpThnr7hnoDhnoDhn4bhno7hno/hn4vigIvhnqDhn4Hhno/hnrvigIvigIsgYCVzJ8Kg4Z+WICVzXG4iCisKKyM6IGxpYi9kcGtnL2xvZy5jOjg1Cittc2dpZCAiPHBhY2thZ2Ugc3RhdHVzIGFuZCBwcm9ncmVzcyBmaWxlIGRlc2NyaXB0b3I+IgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2xvZy5jOjExNAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIHRvIHN0YXR1cyBmZCAlZCIKK21zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6f4Z6a4Z6f4Z+B4Z6a4oCL4Z6f4Z+S4Z6Q4Z624Z6T4Z6X4Z624Z6W4oCL4Z6K4Z+C4Z6b4oCL4Z6U4Z624Z6T4oCL4Z6S4Z+S4Z6c4Z6+4Z6y4Z+S4Z6Z4oCL4Z6R4Z624Z6T4Z+L4Z6f4Z6Y4Z+Q4Z6Z4oCL4Z6a4Z6U4Z6f4Z+LYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL21saWIuYzo0NCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJtYWxsb2MgZmFpbGVkICglenUgYnl0ZXMpIgorbXNnc3RyICJyZWFsbG9jIOGelOGetuGek+KAi+GelOGemuGetuGeh+GfkOGemeKAiyAoJWxkIOGelOGfg+KAiykiCisKKyM6IGxpYi9kcGtnL21saWIuYzo1OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAicmVhbGxvYyBmYWlsZWQgKCV6dSBieXRlcykiCittc2dzdHIgInJlYWxsb2Mg4Z6U4Z624Z6T4oCL4Z6U4Z6a4Z624Z6H4Z+Q4Z6Z4oCLICglbGQg4Z6U4Z+D4oCLKSIKKworIzogbGliL2Rwa2cvbWxpYi5jOjcyIGxpYi9kcGtnL21saWIuYzo5MCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6Mjc3CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MzM0IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTA3CisjLCBmdXp6eQorbXNnaWQgImZhaWxlZCB0byBhbGxvY2F0ZSBtZW1vcnkiCittc2dzdHIgIuGelOGetuGek+KAi+GelOGemuGetuGeh+GfkOGemeKAi+GegOGfkuGek+Geu+GehOKAi+GegOGetuGemuKAi+GelOGehOGfkuGegOGevuGej+KAi+GekOGejyIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZHVwIGZvciBzdGQlcyIKK21zZ3N0ciAi4Z6U4Z624Z6T4Z6U4Z6a4Z624Z6H4Z+Q4Z6Z4oCL4Z6A4Z+S4Z6T4Z674Z6E4Z6A4Z624Z6a4oCL4Z6F4Z6Y4Z+S4Z6b4Z6E4oCL4Z6f4Z6Y4Z+S4Z6a4Z624Z6U4Z+LIHN0ZCAlcyIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEwMworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZHVwIGZvciBmZCAlZCIKK21zZ3N0ciAi4Z6U4Z6a4Z624Z6H4Z+Q4Z6Z4oCLIGR1cCDhnp/hnpjhn5LhnprhnrbhnpThn4vigIsgZmQgJWQiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMDkKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHBpcGUiCittc2dzdHIgIuGelOGetuGek+KAi+GelOGemuGetuGeh+GfkOGemeKAi+GegOGfkuGek+Geu+GehOKAi+GegOGetuGemuKAi+GelOGehOGfkuGegOGevuGej+KAi+GelOGfhuGeluGehOGfiyIKKworIzogbGliL2Rwa2cvbWxpYi5jOjExNworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igd3JpdGluZyB0byAnJXMnIgorbXNnc3RyICLhnoDhn4bhnqDhnrvhnp/igIvigIvhnoDhn5LhnpPhnrvhnoTigIvhnoDhnrbhnprhnp/hnprhnp/hn4HhnpogYCVzJyIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBmaWxlZGVzY3JpcHRvciBmbGFncyBmb3IgJS4yNTBzIgorbXNnc3RyICLhnpjhnrfhnpPhnqLhnrbhnoXigIvhnqLhnrbhnpPigIvhnpHhnoThn4vigIvhnoDhnpjhn5LhnpjhnpzhnrfhnpLhnrjigIvhnpbhno7hn4zhnpPhnrbigIvhnq/hnoDhnp/hnrbhnpog4Z6f4Z6Y4Z+S4Z6a4Z624Z6U4Z+LICUuMjUwcyDhnpThnrbhnpPhnqHhnr7hnpkiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMjYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNldCBjbG9zZS1vbi1leGVjIGZsYWcgZm9yICUuMjUwcyIKK21zZ3N0ciAi4Z6Y4Z634Z6T4Z6i4Z624Z6F4Z6A4Z+G4Z6O4Z6P4Z+L4oCL4Z6R4Z6E4Z+L4oCL4Z6U4Z634Z6R4Z6T4Z+F4Z6W4Z+B4Z6b4oCL4Z6U4Z+S4Z6a4Z6P4Z634Z6U4Z6P4Z+S4Z6P4Z63IOGen+GemOGfkuGemuGetuGelOGfi+KAiyAlLjI1MHMg4Z6U4Z624Z6T4Z6h4Z6+IgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6NjMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImNvbmZpZ3VyYXRpb24gZXJyb3I6ICVzOiVkOiAlcyIKK21zZ3N0ciAi4Z6A4Z+G4Z6g4Z674Z6f4oCL4Z6A4Z+G4Z6O4Z6P4Z+L4oCL4Z6a4Z6F4Z6T4Z624Z6f4Z6Y4Z+S4Z6W4Z+Q4Z6T4Z+S4Z6SwqDhn5YgJXMg4Z6P4Z+S4Z6a4Z684Z6c4Z6A4Z624Z6a4oCL4Z6P4Z6Y4Z+S4Z6b4Z+D4oCL4Z6Y4Z694Z6ZIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6NzUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuIGNvbmZpZ3VyYXRpb24gZmlsZSAnJS4yNTVzJyBmb3IgcmVhZGluZzogJXMiCittc2dzdHIgIuGelOGetuGek+KAi+GelOGemuGetuGeh+GfkOGemeKAi+GegOGfkuGek+Geu+GehOKAi+GegOGetuGemuKAi+GelOGevuGegOKAi+Ger+GegOGen+GetuGemuKAi+GegOGfhuGejuGej+Gfi+KAi+GemuGeheGek+GetuGen+GemOGfkuGeluGfkOGek+GfkuGekiBgJS4yNTVzJyDhnorhnr7hnpjhn5LhnpThnrjigIvhnqLhnrbhnpMiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5iYWxhbmNlZCBxdW90ZXMgaW4gJyVzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTE3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiAnJXMnIgorbXNnc3RyICLhnpjhnrfhnpPigIvigIvhnp/hn5LhnoLhnrbigIvhnpvhn4vigIvhnofhnpjhn5Lhnprhnr7hnp/igIsgYCVzJyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjEyMQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBuZWVkcyBhIHZhbHVlIgorbXNnc3RyICItLSVzIOGeh+GemOGfkuGemuGevuGen+KAi+GemeGegOKAi+Gej+GemOGfkuGem+GfgyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjEyNworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBkb2VzIG5vdCB0YWtlIGEgdmFsdWUiCittc2dzdHIgIi0tJXMg4Z6H4Z6Y4Z+S4Z6a4Z6+4Z6f4oCL4Z6Y4Z634Z6T4oCL4Z6Z4Z6A4oCL4Z6P4Z6Y4Z+S4Z6b4Z+DIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTMzCisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWQgZXJyb3IgaW4gY29uZmlndXJhdGlvbiBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICLhnoDhn4bhnqDhnrvhnp/igIvhnqLhnrbhnpPigIvhnpPhn4XigIvhnoDhn5LhnpPhnrvhnoTigIvhnq/hnoDhnp/hnrbhnprigIvhnoDhn4bhno7hno/hn4vigIvhnprhnoXhnpPhnrbhnp/hnpjhn5Lhnpbhn5DhnpPhn5LhnpIgYCUuMjU1cyciCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyBjb25maWd1cmF0aW9uIGZpbGUgYCUuMjU1cyciCittc2dzdHIgIuGegOGfhuGeoOGeu+Gen+KAi+GegOGfkuGek+Geu+GehOKAi+GegOGetuGemuKAi+GelOGet+GekeKAi+Ger+GegOGen+GetuGemuKAi+GegOGfhuGejuGej+Gfi+KAi+GemuGeheGek+GetuGen+GemOGfkuGeluGfkOGek+GfkuGekiBgJS4yNTVzJyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjE3MAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igb3BlbmluZyBjb25maWd1cmF0aW9uIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICLhnoDhn4bhnqDhnrvhnp/igIvhnoDhn5LhnpPhnrvhnoTigIvhnoDhnrbhnprigIvhnpThnrfhnpHigIvhnq/hnoDhnp/hnrbhnprigIvhnoDhn4bhno7hno/hn4vigIvhnprhnoXhnpPhnrbhnp/hnpjhn5Lhnpbhn5DhnpPhn5LhnpIgYCUuMjU1cyciCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gLS0lcyIKK21zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6f4Z+S4Z6C4Z624Z6b4Z+L4oCL4Z6H4Z6Y4Z+S4Z6a4Z6+4Z6fIC0tJXMiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBvcHRpb24gdGFrZXMgYSB2YWx1ZSIKK21zZ3N0ciAiLS0lcyDhnofhnpjhn5Lhnprhnr7hnp/igIvhnpnhnoDigIvhno/hnpjhn5Lhnpvhn4MiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBvcHRpb24gZG9lcyBub3QgdGFrZSBhIHZhbHVlIgorbXNnc3RyICItLSVzIOGeh+GemOGfkuGemuGevuGen+KAi+GemOGet+Gek+KAi+GemeGegOKAi+Gej+GemOGfkuGem+GfgyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI0NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiAtJWMiCittc2dzdHIgIuGemOGet+Gek+KAi+Gen+GfkuGeguGetuKAi+Gem+Gfi+Geh+GemOGfkuGemuGevuGenyAtJWMiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLSVjIG9wdGlvbiB0YWtlcyBhIHZhbHVlIgorbXNnc3RyICItJWMg4Z6H4Z6Y4Z+S4Z6a4Z6+4Z6f4oCL4Z6Z4Z6A4oCL4Z6P4Z6Y4Z+S4Z6b4Z+DIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjU4CisjLCBjLWZvcm1hdAorbXNnaWQgIi0lYyBvcHRpb24gZG9lcyBub3QgdGFrZSBhIHZhbHVlIgorbXNnc3RyICItJWMg4Z6H4Z6Y4Z+S4Z6a4Z6+4Z6f4oCL4Z6Y4Z634Z6T4oCL4Z6Z4Z6A4oCL4Z6P4Z6Y4Z+S4Z6b4Z+DIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjcxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJvYnNvbGV0ZSBvcHRpb24gJy0tJXMnXG4iCittc2dzdHIgIuGeluGfkuGemuGemOGetuGek8Kg4Z+WIOGeh+GemOGfkuGemuGevuGen+Gem+GfguGehOGelOGfkuGemuGeviBgLS0lcydcbiIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI4NworIywgYy1mb3JtYXQKK21zZ2lkICJjb25mbGljdGluZyBhY3Rpb25zIC0lYyAoLS0lcykgYW5kIC0lYyAoLS0lcykiCittc2dzdHIgIuGen+GegOGemOGfkuGemOGel+GetuGeluKAi+GelOGfieGfh+GekeGehOGfkuGeguGet+GeheKAiyAtJWMgKC0tJXMpIOGek+Get+GehOKAiyAtJWMgKC0tJXMpIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgdmFsdWUgZm9yIGAlcycgZmllbGQiCittc2dzdHIgIuGej+GemOGfkuGem+Gfg+KAi+Gen+GfkuGekeGeveKAi+Gek+Gen+KAi+GemOGfkuGemuGetuGelOGfi+GenOGetuGemyBgJXMnIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjE0NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1c2VyLWRlZmluZWQgZmllbGQgbmFtZSBgJS4qcycgdG9vIHNob3J0IgorbXNnc3RyICLhnqLhn5LhnpPhnoDigIvhnpThn5Lhnprhnr4t4Z6I4Z+S4Z6Y4Z+E4Z+H4oCL4Z6c4Z624Z6b4oCL4Z6K4Z+C4Z6b4oCL4Z6U4Z624Z6T4oCL4Z6A4Z+G4Z6O4Z6P4Z+LIGAlLipzJyDhnoHhn5LhnpvhnrjigIvhnpbhn4HhnoAiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MTUyCisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSB2YWx1ZSBmb3IgdXNlci1kZWZpbmVkIGZpZWxkIGAlLipzJyIKK21zZ3N0ciAi4Z6P4Z6Y4Z+S4Z6b4Z+D4oCL4Z6f4Z+S4Z6R4Z694Z6T4oCL4Z6f4Z6Y4Z+S4Z6a4Z624Z6U4Z+L4oCL4Z6i4Z+S4Z6T4Z6A4Z6U4Z+S4Z6a4Z6+LeGenOGetuGem+KAi+GeiuGfguGem+KAi+GelOGetuGek+KAi+GegOGfhuGejuGej+GfiyBgJS4qcyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjA3Cittc2dpZCAiQ29uZmlndXJlZC1WZXJzaW9uIGZvciBwYWNrYWdlIHdpdGggaW5hcHByb3ByaWF0ZSBTdGF0dXMiCittc2dzdHIgIuGegOGfhuGejuGfguKAi+GeiuGfguGem+KAi+GelOGetuGek+KAi+GegOGfhuGejuGej+Gfi+KAi+GemuGeheGek+GetuGen+GemOGfkuGeluGfkOGek+GfkuGekuKAi+Gen+GemOGfkuGemuGetuGelOGfi+KAi+GegOGeieGfkuGeheGelOGfi+KAi+GeiuGfguGem+KAi+GemOGetuGek+KAi+Gen+GfkuGekOGetuGek+Gel+GetuGeluKAi+GemOGet+Gek+KAi+Gej+GfkuGemuGeueGemOGej+GfkuGemuGevOGenCIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzICVzIGJ1dCB0cmlnZ2VycyBhcmUgYXdhaXRlZCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjIyMgorbXNnaWQgInBhY2thZ2UgaGFzIHN0YXR1cyB0cmlnZ2Vycy1hd2FpdGVkIGJ1dCBubyB0cmlnZ2VycyBhd2FpdGVkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjI4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgaGFzIHN0YXR1cyAlcyBidXQgdHJpZ2dlcnMgYXJlIHBlbmRpbmciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMzIKK21zZ2lkICJwYWNrYWdlIGhhcyBzdGF0dXMgdHJpZ2dlcnMtcGVuZGluZyBidXQgbm8gdHJpZ2dlcnMgcGVuZGluZyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjI0MgorbXNnaWQgIlBhY2thZ2Ugd2hpY2ggaW4gc3RhdGUgbm90LWluc3RhbGxlZCBoYXMgY29uZmZpbGVzLCBmb3JnZXR0aW5nIHRoZW0iCittc2dzdHIgIuGegOGeieGfkuGeheGelOGfi+KAi+GeiuGfguGem+KAi+Gei+Get+Gej+KAi+Gek+GfheGegOGfkuGek+Geu+GehOKAi+Gen+GfkuGekOGetuGek+Gel+GetuGeluKAi+GemOGet+Gek+GekeGetuGek+Gfi+KAi+GelOGetuGek+GeiuGfhuGeoeGevuGehCDhnpjhnrbhnpMgY29uZmZpbGVzIOGelOGfhuGel+GfkuGem+GfgeGeheGeluGeveGegOGenOGetiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozMzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gcGFja2FnZSBpbmZvIGZpbGUgYCUuMjU1cycgZm9yIHJlYWRpbmciCittc2dzdHIgIuGelOGetuGek+KAi+GelOGemuGetuGeh+GfkOGemeKAi+GegOGfkuGek+Geu+GehOKAi+GegOGetuGemuKAi+GelOGevuGegOKAi+Ger+GegOGen+GetuGemuKAi+GeluGfkOGej+GfjOGemOGetuGek+KAi+GegOGeieGfkuGeheGelOGfiyBgJS4yNTVzJyDhnorhnr7hnpjhn5LhnpThnrjigIvhnqLhnrbhnpMiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzQxCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbid0IHN0YXQgcGFja2FnZSBpbmZvIGZpbGUgYCUuMjU1cyciCittc2dzdHIgIuGemOGet+Gek+KAi+GeouGetuGeheKAi+GeheGetuGelOGfi+GeleGfkuGeiuGevuGemOKAi+Ger+GegOGen+GetuGemuKAi+GeluGfkOGej+GfjOGemOGetuGek+KAi+GegOGeieGfkuGeheGelOGfiyBgJS4yNTVzJyDhnpThnrbhnpPigIvhnpHhn4EiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzQ3CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbid0IG1tYXAgcGFja2FnZSBpbmZvIGZpbGUgYCUuMjU1cyciCittc2dzdHIgIuGemOGet+Gek+KAi+GeouGetuGeheKAi+GeleGfkuGeguGevOGeleGfkuGeguGehOKAi+Ger+GegOGen+GetuGemuKAi+GeluGfkOGej+GfjOGemOGetuGek+KAi+GegOGeieGfkuGeheGelOGfiyBg4oCLJS4yNTVzJyDhnpThnrbhnpPhnpHhn4EiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzUyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW4ndCBzdGF0IHBhY2thZ2UgaW5mbyBmaWxlIGAlLjI1NXMnIgorbXNnaWQgInJlYWRpbmcgcGFja2FnZSBpbmZvIGZpbGUgJyUuMjU1cyciCittc2dzdHIgIuGemOGet+Gek+KAi+GeouGetuGeheKAi+GeheGetuGelOGfi+GeleGfkuGeiuGevuGemOKAi+Ger+GegOGen+GetuGemuKAi+GeluGfkOGej+GfjOGemOGetuGek+KAi+GegOGeieGfkuGeheGelOGfiyBgJS4yNTVzJyDhnpThnrbhnpPigIvhnpHhn4EiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzYzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjbG9zZSBhZnRlciByZWFkOiBgJS4yNTVzJyIKK21zZ3N0ciAi4Z6U4Z624Z6T4oCL4Z6U4Z6a4Z624Z6H4Z+Q4Z6Z4oCL4Z6A4Z+S4Z6T4Z674Z6E4oCL4Z6A4Z624Z6a4oCL4Z6U4Z634Z6R4oCL4Z6U4Z6T4Z+S4Z6R4Z624Z6U4Z+L4oCL4Z6W4Z644oCL4Z6i4Z624Z6TwqDhn5YgYCUuMjU1cyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDA0CisjLCBjLWZvcm1hdAorbXNnaWQgIkVPRiBhZnRlciBmaWVsZCBuYW1lIGAlLipzJyIKK21zZ3N0ciAi4Z6F4Z674Z6E4oCL4Z6v4Z6A4Z6f4Z624oCL4Z6a4Z6U4Z6T4Z+S4Z6R4Z624Z6U4Z+L4oCL4Z6W4Z644oCL4Z6I4Z+S4Z6Y4Z+E4Z+HIGAlLipzJyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MDcKKyMsIGMtZm9ybWF0Cittc2dpZCAibmV3bGluZSBpbiBmaWVsZCBuYW1lIGAlLipzJyIKK21zZ3N0ciAi4Z6U4Z6T4Z+S4Z6R4Z624Z6P4Z+L4oCL4Z6Q4Z+S4Z6Y4Z644oCL4Z6T4Z+F4oCL4Z6A4Z+S4Z6T4Z674Z6E4oCL4Z6I4Z+S4Z6Y4Z+E4Z+H4oCL4Z6c4Z624Z6bIGAlLipzJyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiTVNET1MgRU9GICheWikgaW4gZmllbGQgbmFtZSBgJS4qcyciCittc2dzdHIgIk1TRE9TIEVPRiAoXlopIOGek+GfheKAi+GegOGfkuGek+Geu+GehOKAi+GeiOGfkuGemOGfhOGfh+KAi+GenOGetuGemyBgJS4qcyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDE0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpZWxkIG5hbWUgYCUuKnMnIG11c3QgYmUgZm9sbG93ZWQgYnkgY29sb24iCittc2dzdHIgIuGeiOGfkuGemOGfhOGfh+GenOGetuGemyBgJS4qcycg4Z6P4Z+S4Z6a4Z684Z6c4Z6P4Z+C4Z6U4Z624Z6T4Z6i4Z6Y4Z6K4Z+E4Z6Z4Z6f4Z6J4Z+S4Z6J4Z62ICg6KSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiRU9GIGJlZm9yZSB2YWx1ZSBvZiBmaWVsZCBgJS4qcycgKG1pc3NpbmcgZmluYWwgbmV3bGluZSkiCittc2dzdHIgIkVPRiDhnpjhnrvhnpPigIvhno/hnpjhn5Lhnpvhn4PigIvhnprhnpThnp/hn4vhnpzhnrbhnpsgYCUuKnMnICjhnpThnrbhno/hn4vigIvhnpThnpPhn5LhnpHhnrbhno/hn4vigIvhnpDhn5LhnpjhnrjigIvhnoXhnrvhnoThnoDhn5Lhnprhn4ThnpkpIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQyOQorIywgYy1mb3JtYXQKK21zZ2lkICJNU0RPUyBFT0YgY2hhciBpbiB2YWx1ZSBvZiBmaWVsZCBgJS4qcycgKG1pc3NpbmcgbmV3bGluZT8pIgorbXNnc3RyICLhno/hnr3hnqLhnoDhn5Lhnp/hnpogTVNET1MgRU9GIOGegOGfkuGek+Geu+GehOKAi+Gej+GemOGfkuGem+Gfg+KAi+GemuGelOGen+Gfi+GenOGetuGemyBgJS4qcycgKOGelOGetuGej+Gfi+GelOGehOGfi+KAi+GelOGek+GfkuGekeGetuGej+Gfi+KAi+GekOGfkuGemOGeuOGerCA/KSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0NDAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIm5ld2xpbmUgaW4gZmllbGQgbmFtZSBgJS4qcyciCittc2dpZCAiYmxhbmsgbGluZSBpbiB2YWx1ZSBvZiBmaWVsZCAnJS4qcyciCittc2dzdHIgIuGelOGek+GfkuGekeGetuGej+Gfi+KAi+GekOGfkuGemOGeuOKAi+Gek+GfheKAi+GegOGfkuGek+Geu+GehOKAi+GeiOGfkuGemOGfhOGfh+KAi+GenOGetuGemyBgJS4qcyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDYxCisjLCBjLWZvcm1hdAorbXNnaWQgIkVPRiBkdXJpbmcgdmFsdWUgb2YgZmllbGQgYCUuKnMnIChtaXNzaW5nIGZpbmFsIG5ld2xpbmUpIgorbXNnc3RyICLhnoXhnrvhnoTigIvigIvhnq/hnoDhnp/hnrbhnprigIsg4Z6P4Z6Y4Z+S4Z6b4Z+D4oCL4Z6c4Z624Z6bIGAlLipzJyAo4Z6U4Z624Z6P4Z+L4Z6U4Z6E4Z+L4oCL4Z6U4Z6T4Z+S4Z6R4Z624Z6P4Z+L4oCL4Z6Q4Z+S4Z6Y4Z644Z6F4Z674Z6E4oCL4Z6A4Z+S4Z6a4Z+E4Z6Z4oCLKSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo1NDYKK21zZ2lkICJzZXZlcmFsIHBhY2thZ2UgaW5mbyBlbnRyaWVzIGZvdW5kLCBvbmx5IG9uZSBhbGxvd2VkIgorbXNnc3RyICLhnprhnoDhnoPhnr7hnonigIvhnpLhnrbhno/hnrvigIvhnpbhn5Dhno/hn4zhnpjhnrbhnpPigIvhnoDhnonhn5LhnoXhnpThn4vigIvhnofhnrbigIvhnoXhn5Lhnprhnr7hnpMg4Z6Y4Z624Z6T4oCL4Z6P4Z+C4oCL4Z6Y4Z694Z6Z4oCL4Z6U4Z+J4Z674Z6O4Z+S4Z6O4Z+E4Z+H4oCL4Z6U4Z624Z6T4oCL4Z6i4Z6T4Z674Z6J4Z+S4Z6J4Z624Z6PIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjU3MgorIywgYy1mb3JtYXQKK21zZ2lkICJubyBwYWNrYWdlIGluZm9ybWF0aW9uIGluIGAlLjI1NXMnIgorbXNnc3RyICLhnoLhn5LhnpjhnrbhnpPigIvhnpbhn5Dhno/hn4zhnpjhnrbhnpPigIvhnoDhnonhn5LhnoXhnpThn4vigIvhnpPhn4XigIvhnoDhn5LhnpPhnrvhnoQgYCUuMjU1cyciCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjQ1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisicGFyc2luZyBmaWxlICclLjI1NXMnIG5lYXIgbGluZSAlZCBwYWNrYWdlICclLjI1NXMnOlxuIgorIiAlLjI1NXMiCittc2dzdHIgIiVzIOGek+GfheKAi+GegOGfkuGek+Geu+GehOKAi+Ger+GegOGen+GetuGemiBgJS4yNTVzJyDhnpPhn4XigIvhnofhnrfhno/igIvhnpThnpPhn5LhnpHhnrbhno/hn4sgJWQiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjQ4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisicGFyc2luZyBmaWxlICclLjI1NXMnIG5lYXIgbGluZSAlZDpcbiIKKyIgJS4yNTVzIgorbXNnc3RyICIlcyDhnpPhn4XigIvhnoDhn5LhnpPhnrvhnoTigIvhnq/hnoDhnp/hnrbhnpogYCUuMjU1cycg4Z6T4Z+F4oCL4Z6H4Z634Z6P4oCL4Z6U4Z6T4Z+S4Z6R4Z624Z6P4Z+LICVkIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoxMjUKK21zZ2lkICJtYXkgbm90IGJlIGVtcHR5IHN0cmluZyIKK21zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6H4Z624oCL4Z6B4Z+S4Z6f4Z+C4Z6i4Z6A4Z+S4Z6f4Z6a4oCL4Z6R4Z6R4Z+B4oCLIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoxMjcKKyMsIGZ1enp5CisjfCBtc2dpZCAibXVzdCBzdGFydCB3aXRoIGFuIGFscGhhbnVtZXJpYyIKK21zZ2lkICJtdXN0IHN0YXJ0IHdpdGggYW4gYWxwaGFudW1lcmljIGNoYXJhY3RlciIKK21zZ3N0ciAi4Z6P4Z+S4Z6a4Z684Z6c4oCL4Z6P4Z+C4oCL4Z6F4Z624Z6U4Z+L4Z6V4Z+S4Z6K4Z6+4Z6Y4oCL4Z6K4Z+E4Z6Z4oCL4Z6i4Z6A4Z+S4Z6f4Z6a4Z6A4Z+S4Z6a4Z6Y4oCL4Z6b4Z+B4Z6BIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoxMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2hhcmFjdGVyIGAlYycgbm90IGFsbG93ZWQgKG9ubHkgbGV0dGVycywgZGlnaXRzIGFuZCBjaGFyYWN0ZXJzIGAlcycpIgorbXNnc3RyICLhno/hnr3hnqLhnoDhn5Lhnp/hnprigIsgYCVjJyDhnpjhnrfhnpPigIvhnpThnrbhnpPhnqLhnpPhnrvhnonhn5Lhnonhnrbhno/igIsgKOGelOGetuGek+KAi+Gej+GfguKAi+GeouGegOGfkuGen+GemuKAiywg4Z6P4Z694Z6b4Z+B4Z6B4oCLIOGek+Get+GehOKAi+Gej+GeveGeouGegOGfkuGen+GemuKAiyBgJXMnKSIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MTc4CisjLCBmdXp6eQorI3wgbXNnaWQgIjxub25lPiIKK21zZ2N0eHQgInZlcnNpb24iCittc2dpZCAiPG5vbmU+IgorbXNnc3RyICI84Z6C4Z+S4Z6Y4Z624Z6TPiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjA5Cittc2dpZCAidmVyc2lvbiBzdHJpbmcgaXMgZW1wdHkiCittc2dzdHIgIuGegeGfkuGen+GfguKAi+GeouGegOGfkuGen+GemuKAi+GegOGfhuGejuGfguKAi+GeguGeuuKAi+GekeGekeGfgSIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjI0Cittc2dpZCAidmVyc2lvbiBzdHJpbmcgaGFzIGVtYmVkZGVkIHNwYWNlcyIKK21zZ3N0ciAi4Z6B4Z+S4Z6f4Z+C4oCL4Z6i4Z6A4Z+S4Z6f4Z6a4oCL4Z6A4Z+G4Z6O4Z+C4oCL4Z6U4Z624Z6T4oCL4Z6U4Z6E4Z+S4Z6A4Z6U4Z+L4oCL4Z6F4Z6T4Z+S4Z6b4Z+E4Z+HIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyMzAKK21zZ2lkICJlcG9jaCBpbiB2ZXJzaW9uIGlzIG5vdCBudW1iZXIiCittc2dzdHIgIuGen+GemOGfkOGemeKAi+GegOGfkuGek+Geu+GehOKAi+GegOGfhuGejuGfguKAi+GemOGet+Gek+GemOGfguGek+KAi+Geh+GetuKAi+Gem+GfgeGegSIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjMyCittc2dpZCAibm90aGluZyBhZnRlciBjb2xvbiBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAi4Z6C4Z+S4Z6Y4Z624Z6T4oCL4Z6i4Z+S4Z6c4Z644oCL4Z6U4Z6T4Z+S4Z6R4Z624Z6U4Z+L4oCL4Z6W4Z644oCL4Z6f4Z6J4Z+S4Z6J4Z62ICg6KSDhnpPhn4XigIvhnoDhn5LhnpPhnrvhnoTigIvhnpvhn4HhnoHigIvhnoDhn4bhno7hn4IiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjI0NworbXNnaWQgInZlcnNpb24gbnVtYmVyIGRvZXMgbm90IHN0YXJ0IHdpdGggZGlnaXQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjUwCisjLCBmdXp6eQorI3wgbXNnaWQgIm5vdGhpbmcgYWZ0ZXIgY29sb24gaW4gdmVyc2lvbiBudW1iZXIiCittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgaW4gdmVyc2lvbiBudW1iZXIiCittc2dzdHIgIuGeguGfkuGemOGetuGek+KAi+GeouGfkuGenOGeuOKAi+GelOGek+GfkuGekeGetuGelOGfi+KAi+GeluGeuOKAi+Gen+GeieGfkuGeieGetiAoOikg4Z6T4Z+F4oCL4Z6A4Z+S4Z6T4Z674Z6E4oCL4Z6b4Z+B4Z6B4oCL4Z6A4Z+G4Z6O4Z+CIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyNTQKKyMsIGZ1enp5CisjfCBtc2dpZCAibm90aGluZyBhZnRlciBjb2xvbiBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ2lkICJpbnZhbGlkIGNoYXJhY3RlciBpbiByZXZpc2lvbiBudW1iZXIiCittc2dzdHIgIuGeguGfkuGemOGetuGek+KAi+GeouGfkuGenOGeuOKAi+GelOGek+GfkuGekeGetuGelOGfi+KAi+GeluGeuOKAi+Gen+GeieGfkuGeieGetiAoOikg4Z6T4Z+F4oCL4Z6A4Z+S4Z6T4Z674Z6E4oCL4Z6b4Z+B4Z6B4oCL4Z6A4Z+G4Z6O4Z+CIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyOTkgbGliL2Rwa2cvcGFyc2VoZWxwLmM6MzExCisjLCBjLWZvcm1hdAorbXNnaWQgIm1pc3NpbmcgJXMiCittc2dzdHIgIuGelOGetuGej+GfiyAlcyIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MzAxIGxpYi9kcGtnL3BhcnNlaGVscC5jOjMxNAorIywgYy1mb3JtYXQKK21zZ2lkICJlbXB0eSB2YWx1ZSBmb3IgJXMiCittc2dzdHIgIuGej+GemOGfkuGem+Gfg+KAi+GekeGekeGfgeKAi+Gen+GemOGfkuGemuGetuGelOGfi+KAiyAlcyIKKworIzogbGliL2Rwa2cvcGtnLWZvcm1hdC5jOjgwCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgY2hhcmFjdGVyIGAlYycgaW4gZmllbGQgd2lkdGhcbiIKK21zZ3N0ciAi4Z6P4Z694Z6i4Z6A4Z+S4Z6f4Z6a4oCL4Z6Y4Z634Z6T4oCL4Z6P4Z+S4Z6a4Z654Z6Y4Z6P4Z+S4Z6a4Z684Z6cIGAlYycg4Z6T4Z+F4oCL4Z6A4Z+S4Z6T4Z674Z6E4oCL4Z6R4Z6R4Z654Z6E4oCL4Z6c4Z624Z6bXG4iCisKKyM6IGxpYi9kcGtnL3BrZy1mb3JtYXQuYzoxNzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2xvc2luZyBicmFjZSBtaXNzaW5nIGluIGZvcm1hdFxuIgorbXNnc3RyICLhnoDhnrbhnprigIvhnpThnrfhnpHhnprhn4nhnrbhno/hn4sg4Z6U4Z624Z6P4Z+L4oCL4Z6A4Z+S4Z6T4Z674Z6E4oCL4Z6R4Z+S4Z6a4Z6E4Z+L4Z6R4Z+S4Z6a4Z624Z6ZXG4iCisKKyM6IGxpYi9kcGtnL3BrZy1zaG93LmM6NDAKK21zZ2lkICIobm8gZGVzY3JpcHRpb24gYXZhaWxhYmxlKSIKK21zZ3N0ciAiKOGeguGfkuGemOGetuGek+KAi+Gen+GfgeGeheKAi+GegOGfkuGej+GeuOGeluGet+GeluGejuGfjOGek+GetikiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzo1NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGlnbm9yZSBzaWduYWwgJXMgYmVmb3JlIHJ1bm5pbmcgJS4yNTBzIgorbXNnc3RyICLhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnpjhnrfhnpPigIvhnqLhnr7hnpbhnr7igIvhnp/hnonhn5LhnonhnrYgJXMg4Z6Y4Z674Z6T4oCL4Z6W4Z+B4Z6b4oCL4Z6a4Z6P4Z+L4oCL4Z6f4Z+S4Z6C4Z+S4Z6a4Z644Z6UIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgdW4tY2F0Y2hpbmcgc2lnbmFsICVzOiAlc1xuIgorbXNnc3RyICLhnoDhn4bhnqDhnrvhnp/igIvhnoDhn5LhnpPhnrvhnoTigIvhnoDhnrbhnprigIvhnpjhnrfhnpPigIvhnpThnrbhnpPigIvhnoXhnrbhnpThn4vigIvhnp/hnonhn5LhnonhnrYgJXPCoOGfliAlc1xuIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgKHN1YnByb2Nlc3MpOiAlc1xuIgorbXNnc3RyICIlcyAo4Z6K4Z+G4Z6O4Z6+4Z6a4oCL4Z6A4Z624oCL4Z6a4oCL4Z6a4Z6E4oCLKSDhn5YgJXNcbiIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjg5IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo0NTQKK21zZ2lkICJmb3JrIGZhaWxlZCIKK21zZ3N0ciAi4Z6F4Z6Y4Z+S4Z6b4Z6E4oCL4Z6B4Z+S4Z6b4Z694Z6T4Z6v4oCL4Z6E4oCL4Z6U4Z624Z6T4oCL4Z6U4Z6a4Z624Z6H4Z+Q4Z6ZIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTE5CisjLCBjLWZvcm1hdAorbXNnaWQgInN1YnByb2Nlc3MgJXMgcmV0dXJuZWQgZXJyb3IgZXhpdCBzdGF0dXMgJWQiCittc2dzdHIgIuGeiuGfhuGejuGevuGemuGegOGetuGemuKAi+GemuGehCAlcyDhnpThnrbhnpPhno/hn5LhnprhnqHhnpThn4vigIvhnoDhn4bhnqDhnrvhnp/igIvhnp/hn5LhnpDhnrbhnpPhnpfhnrbhnpbigIvhnoXhn4HhnokgJWQiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMjgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInN1YnByb2Nlc3MgJXMgd2FzIGludGVycnVwdGVkIgorbXNnc3RyICLhnprhnoThn4vhnoXhnrbhn4bigIsgJXMg4Z6U4Z624Z6T4oCL4Z6U4Z6a4Z624Z6H4Z+Q4Z6Z4oCLIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTMwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJzdWJwcm9jZXNzICVzIGtpbGxlZCBieSBzaWduYWwgKCVzKSVzIgorbXNnaWQgInN1YnByb2Nlc3MgJXMgd2FzIGtpbGxlZCBieSBzaWduYWwgKCVzKSVzIgorbXNnc3RyICLhnorhn4bhno7hnr7hnprigIvhnoDhnrbhnprigIvhnprhnoQgJXMg4Z6U4Z624Z6T4oCL4Z6W4Z634Z6D4Z624Z6P4oCL4Z6K4Z+E4Z6Z4oCL4Z6f4Z6J4Z+S4Z6J4Z62ICglcyklcyIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEzMgorbXNnaWQgIiwgY29yZSBkdW1wZWQiCittc2dzdHIgIuKAiyIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJzdWJwcm9jZXNzICVzIGZhaWxlZCB3aXRoIHdhaXQgc3RhdHVzIGNvZGUgJWQiCittc2dzdHIgIuGeiuGfhuGejuGevuGemuGegOGetuGemuGemuGehCAlcyDhnpThnrbhnpPhnpThnprhnrbhnofhn5Dhnpnhnorhn4ThnpnhnoDhnrzhnorhnp/hn5LhnpDhnrbhnpPhnpfhnrbhnpbhnprhnoThn4vhnoXhnrbhn4YgJWQiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxNTEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQ2MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAid2FpdCBmb3Igc3VicHJvY2VzcyAlcyBmYWlsZWQiCittc2dzdHIgIuGemuGehOGfi+GeheGetuGfhuKAiyAlcyDhnpThnrbhnpPigIvhnpThnprhnrbhnofhn5DhnpnigIsiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgcGFja2FnZSBuYW1lIGAlLjI1MHMnIGluIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6ODEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInRydW5jYXRlZCB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLhnq/hnoDhnp/hnrbhnpogc3RhdG92ZXJyaWRlIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDo4NQorIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyBhdCBjaGFyYWN0ZXIgYCVzJyVzIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjEzNAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4vY3JlYXRlIHRyaWdnZXJzIGxvY2tmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnpThnr7hnoDigIvhnq/hnoDhnp/hnrbhnprigIvhnpThn5LhnprhnpfhnpYgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjE0MQorIywgZnV6enkKK21zZ2lkICJ0cmlnZ2VycyBhcmVhIgorbXNnc3RyICLhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnorhn4Thn4fhnp/hn4QgJXPCoOGfliAlcyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MTUxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnoXhnrbhnpThn4vhnpXhn5Lhnorhnr7hnpjigIvhnq/hnoDhnp/hnrbhnprigIvhnpDhn5LhnpjhnrjigIvhnpXhn5Lhnp/hn4HhnoTigIvhnpHhn4Dhno/igIvhnpHhn4EgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjE2NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6U4Z6+4Z6A4oCL4Z6v4Z6A4Z6f4Z624Z6a4oCL4Z6U4Z+S4Z6a4Z6X4Z6WIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNzkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuL2NyZWF0ZSBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6U4Z6+4Z6A4oCL4Z6v4Z6A4Z6f4Z624Z6aIGRlcG90IGAlLjI1MHMnIOGekOGfkuGemOGeuOKAi+GelOGetuGek+KAi+GekeGfgSIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MjE1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJlcnJvciByZWFkaW5nIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuGegOGfhuGeoOGeu+Gen+KAi+GegOGfkuGek+Geu+GehOKAi+GegOGetuGemuKAi+GeouGetuGekyAlcyDhnpbhnrjigIvhnq/hnoDhnp/hnrbhnpogJS4yNTVzIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoyMjMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6U4Z6+4Z6A4oCL4Z6v4Z6A4Z6f4Z624Z6aIGRlcG90IGAlLjI1MHMnIOGekOGfkuGemOGeuOKAi+GelOGetuGek+KAi+GekeGfgSIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MjI4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuGemOGet+Gek+KAi+GeouGetuGeheKAi+GelOGevuGegOKAi+Ger+GegOGen+GetuGemiBkZXBvdCBgJS4yNTBzJyDhnpDhn5LhnpjhnrjigIvhnpThnrbhnpPigIvhnpHhn4EiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjIzMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuGemOGet+Gek+KAi+GeouGetuGeheKAi+GeiuGfhuGeoeGevuGehOKAi+GegOGfhuGejuGfguKAi+GekOGfkuGemOGeuOKAi+GemuGelOGen+GfiyBgJS4yNTVzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjIyMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiaW52YWxpZCBvciB1bmtub3duIHN5bnRheCBpbiB0cmlnZ2VyIG5hbWUgYCUuMjUwcycgKGluIHRyaWdnZXIgaW50ZXJlc3RzIGZvciAiCisicGFja2FnZSBgJS4yNTBzJykiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjI2MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gdHJpZ2dlciBpbnRlcmVzdCBsaXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuGemOGet+Gek+KAi+GeouGetuGeheKAi+GelOGevuGegOKAi+Ger+GegOGen+GetuGemiBkZXBvdCBgJS4yNTBzJyDhnpDhn5LhnpjhnrjigIvhnpThnrbhnpPigIvhnpHhn4EiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzoyOTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnqLhnrbhnpPigIvhnpXhn5LhnpPhn4LhnoDigIvhnq/hnoDhnp/hnrbhnpogYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyBzeW50YXggZXJyb3I7IGlsbGVnYWwgcGFja2FnZSBuYW1lIGAlLjI1MHMnOiAiCisiJS4yNTBzIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMTgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnoXhnrbhnpThn4vhnpXhn5Lhnorhnr7hnpjigIvhnq/hnoDhnp/hnrbhnprigIvhnpDhn5LhnpjhnrjigIvhnpXhn5Lhnp/hn4HhnoTigIvhnpHhn4Dhno/igIvhnpHhn4EgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlICclLjI1MHMnIgorbXNnc3RyICLhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnoXhnrbhnpThn4vhnpXhn5Lhnorhnr7hnpjigIvhnq/hnoDhnp/hnrbhnprigIvhnpDhn5LhnpjhnrjigIvhnpXhn5Lhnp/hn4HhnoTigIvhnpHhn4Dhno/igIvhnpHhn4EgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMjQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzeW5jIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgIuGemOGet+Gek+KAi+GeouGetuGeheKAi+GeheGetuGelOGfi+GeleGfkuGeiuGevuGemOKAi+Ger+GegOGen+GetuGemuKAi+GekOGfkuGemOGeuOKAi+GeleGfkuGen+GfgeGehOKAi+GekeGfgOGej+KAi+GekeGfgSBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMzMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6K4Z+G4Z6h4Z6+4Z6E4oCL4Z6A4Z+G4Z6O4Z+C4oCL4Z6Q4Z+S4Z6Y4Z644oCL4Z6a4Z6U4Z6f4Z+LIGAlLjI1NXMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzQwIGxpYi9kcGtnL3RyaWdsaWIuYzozNDIgbGliL2Rwa2cvdHJpZ2xpYi5jOjQ3MgorIzogc3JjL3JlbW92ZS5jOjI4NiBzcmMvcmVtb3ZlLmM6Mzc3CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZW1vdmUgYCUuMjUwcyciCittc2dzdHIgIuGemOGet+Gek+KAi+GeouGetuGeheKAi+GemeGegCBgJS4yNTBzJyDhnoXhn4HhnokiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozNjAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6F4Z624Z6U4Z+L4Z6V4Z+S4Z6K4Z6+4Z6Y4oCL4Z6v4Z6A4Z6f4Z624Z6a4oCL4Z6Q4Z+S4Z6Y4Z644oCL4Z6V4Z+S4Z6f4Z+B4Z6E4oCL4Z6R4Z+A4Z6P4oCL4Z6R4Z+BIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzgzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6F4Z624Z6U4Z+L4Z6V4Z+S4Z6K4Z6+4Z6Y4oCL4Z6v4Z6A4Z6f4Z624Z6a4oCL4Z6Q4Z+S4Z6Y4Z644oCL4Z6V4Z+S4Z6f4Z+B4Z6E4oCL4Z6R4Z+A4Z6P4oCL4Z6R4Z+BIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDU2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiZHVwbGljYXRlIGZpbGUgdHJpZ2dlciBpbnRlcmVzdCBmb3IgZmlsZW5hbWUgYCUuMjUwcycgYW5kIHBhY2thZ2UgYCUuMjUwcyciCittc2dzdHIgIuGemOGet+Gek+KAi+GeouGetuGeheKAi+GeiuGfhuGeoeGevuGehOKAi+Ger+GegOGen+GetuGemuKAi+GeluGfkOGej+GfjOGemOGetuGek+KAi+GekOGfkuGemOGeuCBgJS4yNTBzJyDhnofhnrYgYCUuMjUwcycg4Z6U4Z624Z6T4oCL4Z6R4Z+BIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDgzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuGemOGet+Gek+KAi+GeouGetuGeheKAi+GelOGevuGegOKAi+Ger+GegOGen+GetuGemiBkZXBvdCBgJS4yNTBzJyDhnpDhn5LhnpjhnrjigIvhnpThnrbhnpPigIvhnpHhn4EiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0OTMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnpThnr7hnoDigIvhnq/hnoDhnp/hnrbhnpogZGVwb3QgYCUuMjUwcycg4Z6Q4Z+S4Z6Y4Z644oCL4Z6U4Z624Z6T4oCL4Z6R4Z+BIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDk2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6U4Z6+4Z6A4oCL4Z6v4Z6A4Z6f4Z624Z6aIGRlcG90IGAlLjI1MHMnIOGekOGfkuGemOGeuOKAi+GelOGetuGek+KAi+GekeGfgSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ5OQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6U4Z6+4Z6A4oCL4Z6v4Z6A4Z6f4Z624Z6aIGRlcG90IGAlLjI1MHMnIOGekOGfkuGemOGeuOKAi+GelOGetuGek+KAi+GekeGfgSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjUwMworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuGemOGet+Gek+KAi+GeouGetuGeheKAi+GelOGevuGegOKAi+Ger+GegOGen+GetuGemiBkZXBvdCBgJS4yNTBzJyDhnpDhn5LhnpjhnrjigIvhnpThnrbhnpPigIvhnpHhn4EiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1MDcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgYXMgYCUuMjUwcyciCittc2dzdHIgIuGemOGet+Gek+KAi+GeouGetuGeheKAi+GeiuGfhuGeoeGevuGehOKAi+Ger+GegOGen+GetuGemuKAi+GeluGfkOGej+GfjOGemOGetuGek+KAi+GekOGfkuGemOGeuCBgJS4yNTBzJyDhnofhnrYgYCUuMjUwcycg4Z6U4Z624Z6T4oCL4Z6R4Z+BIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTQyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuGemOGet+Gek+KAi+GeouGetuGeheKAi+GeouGetuGek+KAi+GeleGfkuGek+GfguGegOKAi+Ger+GegOGen+GetuGemiBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjU1MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yIGluIGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4Z6A4Z+G4Z6g4Z674Z6f4oCL4Z6i4Z624Z6T4oCL4Z6T4Z+F4oCL4Z6A4Z+S4Z6T4Z674Z6E4oCL4Z6v4Z6A4Z6f4Z624Z6a4oCL4Z6A4Z+G4Z6O4Z6P4Z+L4oCL4Z6a4Z6F4Z6T4Z624Z6f4Z6Y4Z+S4Z6W4Z+Q4Z6T4Z+S4Z6SIGAlLjI1NXMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTYzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmaWxlIHRyaWdnZXJzIHJlY29yZCBtZW50aW9ucyBpbGxlZ2FsIHBhY2thZ2UgbmFtZSBgJS4yNTBzJyAoZm9yIGludGVyZXN0IGluICIKKyJmaWxlIGAlLjI1MHMnKTogJS4yNTBzIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo2NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInRyaWdnZXJzIGNpIGZpbGUgYCUuMjUwcycgY29udGFpbnMgaWxsZWdhbCB0cmlnZ2VyIHN5bnRheCBpbiB0cmlnZ2VyIG5hbWUgYCIKKyIlLjI1MHMnOiAlLjI1MHMiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjY4NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gdHJpZ2dlcnMgY2kgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6U4Z6+4Z6A4oCL4Z6v4Z6A4Z6f4Z624Z6a4oCL4Z6U4Z+S4Z6a4Z6X4Z6WIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Njk5Cittc2dpZCAidHJpZ2dlcnMgY2kgZmlsZSBjb250YWlucyB1bmtub3duIGRpcmVjdGl2ZSBzeW50YXgiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjcxMgorIywgYy1mb3JtYXQKK21zZ2lkICJ0cmlnZ2VycyBjaSBmaWxlIGNvbnRhaW5zIHVua25vd24gZGlyZWN0aXZlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo3NzYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdHJpZ2dlcnMgc3RhdGUgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICLhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnqLhnrbhnpPigIvhnpDhno8gZGVwb3QgYCUuMjUwcycg4Z6U4Z624Z6T4oCL4Z6R4Z+BIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Nzc5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IG93bmVyc2hpcCBvZiB0cmlnZ2VycyBzdGF0ZSBkaXJlY3RvcnkgYCUuMjUwcyciCittc2dzdHIgIuGemOGet+Gek+KAi+GeouGetuGeheKAi+GeouGetuGek+KAi+GekOGejyBkZXBvdCBgJS4yNTBzJyDhnpThnrbhnpPigIvhnpHhn4EiCisKKyM6IGxpYi9kcGtnL3RyaWduYW1lLmM6MzQKK21zZ2lkICJlbXB0eSB0cmlnZ2VyIG5hbWVzIGFyZSBub3QgcGVybWl0dGVkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWduYW1lLmM6MzgKK21zZ2lkICJ0cmlnZ2VyIG5hbWUgY29udGFpbnMgaW52YWxpZCBjaGFyYWN0ZXIiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdXRpbHMuYzo1NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAicmVhZCBlcnJvciBpbiBgJS4yNTBzJyIKK21zZ3N0ciAi4Z6i4Z624Z6T4oCL4Z6A4Z+G4Z6g4Z674Z6f4oCL4Z6T4Z+F4oCL4Z6A4Z+S4Z6T4Z674Z6EICUuMjUwcyIKKworIzogbGliL2Rwa2cvdXRpbHMuYzo2MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmdldHMgZ2F2ZSBhbiBlbXB0eSBzdHJpbmcgZnJvbSBgJS4yNTBzJyIKK21zZ3N0ciAiZmdldHMg4Z6U4Z624Z6T4oCL4Z6V4Z+S4Z6K4Z6b4Z+L4oCL4Z6B4Z+S4Z6f4Z+C4Z6i4Z6A4Z+S4Z6f4Z6a4oCL4Z6R4Z6R4Z+B4oCL4Z6Y4Z694Z6Z4oCL4Z6W4Z644oCL4Z6A4Z624Z6a4oCL4Z6U4Z6E4Z+S4Z6c4Z+C4Z6aIFtpXSIKKworIzogbGliL2Rwa2cvdXRpbHMuYzo2MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidG9vLWxvbmcgbGluZSBvciBtaXNzaW5nIG5ld2xpbmUgaW4gYCUuMjUwcyciCittc2dzdHIgIuGer+GegOGen+GetuGemiBgJS4yNTBzJyDhnoHhnrzhnoUgLSDhnpThnrbhno/hn4vigIvhnpThnpPhn5LhnpHhnrbhno/hn4vigIvhnpDhn5LhnpjhnrjigIvhnpThnpPhn5LhnpHhnrbhnpThn4vigIvhnpbhnrggJS4yNTBzIgorCisjOiBsaWIvZHBrZy91dGlscy5jOjc1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVvZiByZWFkaW5nIGAlLjI1MHMnIgorbXNnc3RyICLhnoXhnrvhnoTigIvhnq/hnoDhnp/hnrbhnprigIvhnorhn4LhnpvigIvhnpjhnrfhnpPigIvhnprhn4bhnpbhnrnhnoTigIvhnpHhnrvhnoDigIvhnpPhn4XigIvhnoDhn5LhnpPhnrvhnoQgJS4yNTBzIgorCisjOiBsaWIvZHBrZy92YXJidWYuYzo4MiBsaWIvZHBrZy92YXJidWYuYzo4OAorbXNnaWQgImVycm9yIGZvcm1hdHRpbmcgc3RyaW5nIGludG8gdmFyYnVmIHZhcmlhYmxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjE3OSBzcmMvYXJjaGl2ZXMuYzoyMDAgc3JjL2FyY2hpdmVzLmM6NzI0Cittc2dpZCAiZXJyb3IgcmVhZGluZyBmcm9tIGRwa2ctZGViIHBpcGUiCittc2dzdHIgIuGegOGfhuGeoOGeu+Gen+KAi+GegOGfkuGek+Geu+KAi+GehOGegOGetuGemuKAi+GeouGetuGek+KAi+GeluGeuOKAi+GelOGfhuGeluGehOGfiyBkcGtnLWRlYiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTk1CisjLCBjLWZvcm1hdAorbXNnaWQgInNraXBwZWQgdW5wYWNraW5nIGZpbGUgJyUuMjU1cycgKHJlcGxhY2VkIG9yIGV4Y2x1ZGVkPykiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MjQ2IHNyYy9hcmNoaXZlcy5jOjI1MAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIHRpbWVzdGFtcHMgb2YgYCUuMjU1cyciCittc2dzdHIgIuGegOGfhuGeoOGeu+Gen+KAi+GegOGfkuGek+Geu+GehOKAi+GegOGetuGemuKAi+GegOGfhuGejuGej+Gfi+Gej+GfkuGemuGetuKAi+GeluGfgeGem+KAi+GenOGfgeGem+GetuKAi+GemuGelOGen+GfiyBgJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6MjYyCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHNldHRpbmcgb3duZXJzaGlwIG9mIHN5bWxpbmsgYCUuMjU1cyciCittc2dzdHIgIuGegOGfhuGeoOGeu+Gen+KAi+GegOGfkuGek+Geu+GehOKAi+GegOGetuGemuKAi+GegOGfhuGejuGej+Gfi+KAi+Gel+GetuGeluKAi+Geh+GetuKAi+GemOGfkuGeheGetuGen+Gfi+KAi+GemuGelOGen+Gfi+KAi+Gej+GfhuGejuKAi+Gek+Get+GemOGet+Gej+GfkuGej+KAi+Gen+GeieGfkuGeieGetiBgJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6MjY1IHNyYy9hcmNoaXZlcy5jOjczNCBzcmMvc3RhdGNtZC5jOjE2MworIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIG93bmVyc2hpcCBvZiBgJS4yNTVzJyIKK21zZ3N0ciAi4Z6A4Z+G4Z6g4Z674Z6f4oCL4Z6A4Z+S4Z6T4Z674Z6E4oCL4Z6A4Z624Z6a4oCL4Z6A4Z+G4Z6O4Z6P4Z+L4oCL4Z6X4Z624Z6W4oCL4Z6H4Z624oCL4Z6Y4Z+S4Z6F4Z624Z6f4Z+L4oCL4Z6a4Z6U4Z6f4Z+LIGAlLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoyNjcgc3JjL2FyY2hpdmVzLmM6NzM2IHNyYy9zdGF0Y21kLmM6MTY1CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHNldHRpbmcgcGVybWlzc2lvbnMgb2YgYCUuMjU1cyciCittc2dzdHIgIuGegOGfhuGeoOGeu+Gen+KAi+GegOGfkuGek+Geu+GehOKAi+GegOGetuGemuKAi+GegOGfhuGejuGej+Gfi+KAi+Gen+Get+GekeGfkuGekuGet+KAi+GemuGelOGen+GfiyBgJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6Mzk1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gc3RhdCAoZGVyZWZlcmVuY2UpIGV4aXN0aW5nIHN5bWxpbmsgYCUuMjUwcyciCittc2dzdHIgIuGemOGet+Gek+KAi+GeouGetuGeheKAi+GegOGfhuGejuGej+Gfi+KAi+Gen+Get+GekeGfkuGekuGet+KAi+GelOGfkuGemuGej+Get+GelOGej+GfkuGej+Get+KAi+Gek+GfheKAi+Gem+GeviBgJS4yNTBzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6NDE3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmYWlsZWQgdG8gc3RhdCAoZGVyZWZlcmVuY2UpIHByb3Bvc2VkIG5ldyBzeW1saW5rIHRhcmdldCBgJS4yNTBzJyBmb3IgIgorInN5bWxpbmsgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6NDc1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisidHJ5aW5nIHRvIG92ZXJ3cml0ZSBgJS4yNTBzJywgd2hpY2ggaXMgdGhlIGRpdmVydGVkIHZlcnNpb24gb2YgYCIKKyIlLjI1MHMnIChwYWNrYWdlOiAlLjEwMHMpIgorbXNnc3RyICIiCisi4Z6W4Z+S4Z6Z4Z624Z6Z4Z624Z6Y4oCL4Z6f4Z6a4Z6f4Z+B4Z6a4oCL4Z6H4Z624Z6T4Z+L4oCL4Z6b4Z6+IGAlLjI1MHMnIOGeiuGfguGem+KAi+Geh+GetuKAi+GegOGfhuGejuGfguKAi+GeiuGfguGem+KAi+GelOGetuGek+KAi+GelOGfhuGelOGfguGemuKAi+GemuGelOGen+GfiyBgJS4yNTBzJyUuMTBzJS4xMDBzJS4xMHMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjQ4MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidHJ5aW5nIHRvIG92ZXJ3cml0ZSBgJS4yNTBzJywgd2hpY2ggaXMgdGhlIGRpdmVydGVkIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dzdHIgIiIKKyLhnpbhn5LhnpnhnrbhnpnhnrbhnpjigIvhnp/hnprhnp/hn4HhnprigIvhnofhnrbhnpPhn4vigIvhnpvhnr4gYCUuMjUwcycg4Z6K4Z+C4Z6b4oCL4Z6H4Z624oCL4Z6A4Z+G4Z6O4Z+C4oCL4Z6K4Z+C4Z6b4oCL4Z6U4Z624Z6T4oCL4Z6U4Z+G4Z6U4Z+C4Z6a4oCL4Z6a4Z6U4Z6f4Z+LIGAlLjI1MHMnJS4xMHMlLjEwMHMlLjEwcyIKKworIzogc3JjL2FyY2hpdmVzLmM6NTExCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGAlLjI1NXMnICh3aGljaCBJIHdhcyBhYm91dCB0byBpbnN0YWxsKSIKK21zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6F4Z624Z6U4Z+L4Z6V4Z+S4Z6K4Z6+4Z6YIGAlLjI1NXMnICjhnorhn4LhnpvigIvhnoHhn5Lhnonhnrvhn4bigIvhnprhn4DhnpTigIvhnpPhnrnhnoTigIvhnorhn4bhnqHhnr7hnoQpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo1MTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVuYWJsZSB0byBjbGVhbiB1cCBtZXNzIHN1cnJvdW5kaW5nIGAlLjI1NXMnIGJlZm9yZSBpbnN0YWxsaW5nIGFub3RoZXIgIgorInZlcnNpb24iCittc2dzdHIgIuGemOGet+Gek+KAi+GeouGetuGeheKAi+Gen+GemOGfkuGeouGetuGej+KAi+Gel+GetuGeluKAi+GemuGetuGemeGelOGfieGetuGemeKAi+Gek+GfheKAi+Geh+Geu+GfhuGenOGet+GeiSBgJS4yNTVzJyDhnpjhnrvhnpPhnpbhn4HhnpvigIvhnorhn4bhnqHhnr7hnoTigIvhnoDhn4bhno7hn4LigIvhnpXhn5Lhnp/hn4HhnoThn5figIvhnpHhn4Dhno8iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjUyNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCByZXN0b3JlZCBgJS4yNTVzJyBiZWZvcmUgaW5zdGFsbGluZyBhbm90aGVyIHZlcnNpb24iCittc2dzdHIgIuGemOGet+Gek+KAi+GeouGetuGeheKAi+GeheGetuGelOGfi+KAi+GeleGfkuGeiuGevuGemOKAi+Gen+GfkuGeiuGetuGemiBgJS4yNTVzJyDhnpjhnrvhnpPigIvhnpbhn4HhnpvigIvhnorhn4bhnqHhnr7hnoTigIvhnoDhn4bhno7hn4LigIvhnpXhn5Lhnp/hn4HhnoThn5figIvhnpHhn4Dhno8iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjU2MQorIywgYy1mb3JtYXQKK21zZ2lkICJhcmNoaXZlIGNvbnRhaW5lZCBvYmplY3QgYCUuMjU1cycgb2YgdW5rbm93biB0eXBlIDB4JXgiCittc2dzdHIgIuGelOGfkOGejuGfkuGejuGen+GetuGemuKAi+KAi+GelOGetuGek+KAi+GeleGfkuGekeGeu+GegOKAi+GenOGej+GfkuGekOGeuyBgJS4yNTVzJyDhnpPhn4PigIvhnpThn5Lhnprhnpfhn4HhnpHigIvhnorhn4LhnpvigIvhnpjhnrfhnpPigIvhnp/hn5LhnoLhnrbhnpvhn4sgMHgleCIKKworIzogc3JjL2FyY2hpdmVzLmM6NjI2IHNyYy9kaXZlcnRjbWQuYzoxNTAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjY4MgorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMjIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyODQKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNDQxIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNjgwCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE2NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI0NAorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MjcKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImNhbm5vdCBzdGF0IG9sZCBuYW1lIGAlcyc6ICVzIgorbXNnaWQgImNhbm5vdCBzdGF0IGZpbGUgJyVzJyIKK21zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6F4Z624Z6U4Z+L4oCL4Z6V4Z+S4Z6K4Z6+4Z6Y4oCL4Z6I4Z+S4Z6Y4Z+E4Z+H4oCL4Z6F4Z624Z6f4Z+LIGAlcyfCoOGfliAlcyIKKworIzogc3JjL2FyY2hpdmVzLmM6NjQxCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlcGxhY2luZyBmaWxlcyBpbiBvbGQgcGFja2FnZSAlcyAuLi5cbiIKK21zZ3N0ciAi4Z6A4Z+G4Z6W4Z674Z6E4oCL4Z6H4Z+G4Z6T4Z694Z6f4oCL4Z6v4Z6A4Z6f4Z624Z6a4oCL4Z6T4Z+F4oCL4Z6A4Z+S4Z6T4Z674Z6E4oCL4Z6A4Z6J4Z+S4Z6F4Z6U4Z+L4oCL4Z6F4Z624Z6f4Z+LICVzIC4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVwbGFjZWQgYnkgZmlsZXMgaW4gaW5zdGFsbGVkIHBhY2thZ2UgJXMgLi4uXG4iCittc2dzdHIgIuGelOGetuGek+KAi+Geh+GfhuGek+GeveGen+KAi+GeiuGfhOGemeKAi+Ger+GegOGen+GetuGemuKAi+Gek+GfheKAi+GegOGfkuGek+Geu+GehOKAi+GegOGeieGfkuGeheGelOGfi+KAi+GeiuGfguGem+KAi+GelOGetuGek+KAi+GeiuGfhuGeoeGevuGehCAlcyAuLi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6NjU0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisidHJ5aW5nIHRvIG92ZXJ3cml0ZSBkaXJlY3RvcnkgJyUuMjUwcycgaW4gcGFja2FnZSAlLjI1MHMgJS4yNTBzIHdpdGggIgorIm5vbmRpcmVjdG9yeSIKK21zZ3N0ciAi4Z6W4Z+S4Z6Z4Z624Z6Z4Z624Z6Y4oCL4Z6f4Z6a4Z6f4Z+B4Z6a4Z6H4Z624Z6T4Z+L4oCL4Z6b4Z6+4oCL4Z6Q4Z6PIGAlLjI1MHMnIOGek+GfheKAi+GegOGfkuGek+Geu+GehOKAi+GegOGeieGfkuGeheGelOGfiyAlLjI1MHMg4Z6K4Z+C4Z6b4oCL4Z6C4Z+S4Z6Y4Z624Z6T4oCL4Z6Q4Z6PIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInRyeWluZyB0byBvdmVyd3JpdGUgJyUuMjUwcycsIHdoaWNoIGlzIGFsc28gaW4gcGFja2FnZSAlLjI1MHMgJS4yNTBzIgorbXNnc3RyICLhnpbhn5LhnpnhnrbhnpnhnrbhnpjigIvhnp/hnprhnp/hn4HhnprhnofhnrbhnpPhn4vigIvhnpvhnr4gYCUuMjUwcycg4Z6K4Z+C4Z6b4oCL4Z6Y4Z624Z6T4oCL4Z6T4Z+F4oCL4Z6A4Z+S4Z6T4Z674Z6E4oCL4Z6A4Z6J4Z+S4Z6F4Z6U4Z+LICUuMjUwcyDhnpXhnoTigIvhnorhn4LhnpoiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjcxMQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBgJS4yNTVzJyAod2hpbGUgcHJvY2Vzc2luZyBgJS4yNTVzJykiCittc2dzdHIgIuGelOGetuGek+KAi+GelOGemuGetuGeh+GfkOGemeKAi+GegOGfkuGek+Geu+GehOKAi+GegOGetuGemuKAi+GeouGetuGekyBgJS4yNTVzJyAo4Z6T4Z+F4oCL4Z6A4Z+S4Z6T4Z674Z6EIGAlLjI1NXMnKSIKKworIzogc3JjL2FyY2hpdmVzLmM6NzE4CisjLCBjLWZvcm1hdAorbXNnaWQgImJhY2tlbmQgZHBrZy1kZWIgZHVyaW5nIGAlLjI1NXMnIgorbXNnc3RyICLhnoDhnpjhn5LhnpjhnpzhnrfhnpLhnrjigIvigIvigIvhnoHhnrbigIvhnoThnoDhn5Lhnprhn4TigIvhnpnigIvhnprhnpThnp/hn4vigIsgZHBrZy1kZWLigIsg4Z6A4Z+G4Z6h4Z674Z6E4oCL4Z6W4Z+B4Z6b4oCLIGAlLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NDQgc3JjL2FyY2hpdmVzLmM6OTA4IHNyYy9hcmNoaXZlcy5jOjk0OQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nL3dyaXRpbmcgYCUuMjU1cyciCittc2dzdHIgIuGegOGfhuGeoOGeu+Gen+KAi+GegOGfkuGek+Geu+KAi+KAi+GehOGegOGetuGemuGelOGet+GekS/hnp/hnprhnp/hn4HhnpogYCUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc0OAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBwaXBlIGAlLjI1NXMnIgorbXNnc3RyICLhnoDhn4bhnqDhnrvhnp/igIvhnoDhn5LhnpPhnrvhnoTigIvhnoDhnrbhnprigIvhnpThnoThn5LhnoDhnr7hno/igIvhnpThn4bhnpbhnoThn4sgYCUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc1MyBzcmMvYXJjaGl2ZXMuYzo3NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgZGV2aWNlIGAlLjI1NXMnIgorbXNnc3RyICLhnoDhn4bhnqDhnrvhnp/igIvhnoDhn5LhnpPhnrvhnoTigIvhnoDhnrbhnprigIvhnpThnoThn5LhnoDhnr7hno/igIvhnqfhnpThnoDhnprhno7hn40gYCUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc3MQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBoYXJkIGxpbmsgYCUuMjU1cyciCittc2dzdHIgIuGegOGfhuGeoOGeu+Gen+KAi+GegOGfkuGek+Geu+GehOKAi+GegOGetuGemuKAi+GelOGehOGfkuGegOGevuGej+KAi+Gej+GfhuGejuGemuGeueGehCBgJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6Nzc3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo1MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgc3ltYm9saWMgbGluayBgJS4yNTVzJyIKK21zZ3N0ciAi4Z6A4Z+G4Z6g4Z674Z6f4oCL4Z6A4Z+S4Z6T4Z674Z6E4oCL4Z6A4Z624Z6a4oCL4Z6U4Z6E4Z+S4Z6A4Z6+4Z6P4oCL4Z6P4Z+G4Z6O4oCL4Z6T4Z634Z6Y4Z634Z6P4Z+S4Z6P4oCL4Z6f4Z6J4Z+S4Z6J4Z62IGAlLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgZGlyZWN0b3J5IGAlLjI1NXMnIgorbXNnc3RyICLhnoDhn4bhnqDhnrvhnp/igIvhnoDhn5LhnpPhnrvhnoTigIvhnoDhnrbhnprigIvhnpThnoThn5LhnoDhnr7hno/igIvhnpDhno8gYCUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjgyMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gbW92ZSBhc2lkZSBgJS4yNTVzJyB0byBpbnN0YWxsIG5ldyB2ZXJzaW9uIgorbXNnc3RyICLhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnpXhn5Lhnpvhnrbhnp/hn4vhnpHhnrjigIvhnpXhn5LhnpPhn4LhnoAgYCUuMjU1cycg4Z6K4Z6+4Z6Y4Z+S4Z6U4Z644oCL4Z6K4Z+G4Z6h4Z6+4Z6E4oCL4Z6A4Z+G4Z6O4Z+C4oCL4Z6Q4Z+S4Z6Y4Z64IgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4MzIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjMyMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBsaW5rIGAlLjI1NXMnIgorbXNnc3RyICLhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnqLhnrbhnpPigIvhno/hn4bhno4gYCUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjgzNCBzcmMvY29uZmlndXJlLmM6NDIzCisjLCBjLWZvcm1hdAorbXNnaWQgInN5bWJvbGljIGxpbmsgJyUuMjUwcycgc2l6ZSBoYXMgY2hhbmdlZCBmcm9tICVqZCB0byAlemQiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6ODM5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBtYWtlIGJhY2t1cCBzeW1saW5rIGZvciBgJS4yNTVzJyIKK21zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6U4Z6E4Z+S4Z6A4Z6+4Z6P4oCL4Z6P4Z+G4Z6O4oCL4Z6T4Z634Z6Y4Z634Z6P4Z+S4Z6P4oCL4Z6f4Z6J4Z+S4Z6J4Z624oCL4Z6W4Z+Q4Z6P4Z+M4Z6Y4Z624Z6T4oCL4Z6U4Z6Y4Z+S4Z6a4Z674Z6E4oCL4Z6R4Z674Z6A4oCL4Z6f4Z6Y4Z+S4Z6a4Z624Z6U4Z+LIGAlLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNob3duIGJhY2t1cCBzeW1saW5rIGZvciBgJS4yNTVzJyIKK21zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6FIGNob3duIOGej+GfhuGejuKAi+Gek+Get+GemOGet+Gej+GfkuGej+KAi+Gen+GeieGfkuGeieGetuKAi+GeluGfkOGej+GfjOGemOGetuGek+KAi+GelOGemOGfkuGemuGeu+GehOKAi+GekeGeu+GegOKAi+Gen+GemOGfkuGemuGetuGelOGfiyBgJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6ODQ2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBtYWtlIGJhY2t1cCBsaW5rIG9mIGAlLjI1NXMnIGJlZm9yZSBpbnN0YWxsaW5nIG5ldyB2ZXJzaW9uIgorbXNnc3RyICLhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnpThnoThn5LhnoDhnr7hno/igIvhno/hn4bhno7igIvhnpbhn5Dhno/hn4zhnpjhnrbhnpPigIvhnpThnpjhn5LhnprhnrvhnoThnpHhnrvhnoDigIvhnprhnpThnp/hn4sgYCUuMjU1cycg4Z6Y4Z674Z6T4oCL4Z6W4Z+B4Z6b4oCL4Z6K4Z+G4Z6h4Z6+4Z6E4oCL4Z6A4Z+G4Z6O4Z+C4oCL4Z6Q4Z+S4Z6Y4Z64IgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4NjMgc3JjL2FyY2hpdmVzLmM6OTU3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyB2ZXJzaW9uIG9mIGAlLjI1NXMnIgorbXNnc3RyICLhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnorhn4bhnqHhnr7hnoTigIvhnoDhn4bhno7hn4LigIvhnpDhn5LhnpjhnrjigIvhnprhnpThnp/hn4sgYCUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjkwMiBzcmMvYXJjaGl2ZXMuYzo5NDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuICclLjI1NXMnIgorbXNnc3RyICLhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnpThnoThn5LhnoDhnr7hno/igIsgYCUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjk0NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgZmlsZSAnJS4yNTVzJyIKK21zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6A4Z+G4Z6O4Z6P4Z+L4oCL4Z6f4Z6P4Z634oCL4Z6U4Z6O4Z+S4Z6K4Z+E4Z+H4oCL4Z6i4Z624Z6f4Z6T4Z+S4Z6TIGAlLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDAwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiaWdub3JpbmcgZGVwZW5kZW5jeSBwcm9ibGVtIHdpdGggJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnwqDhn5Yg4Z6A4Z624Z6a4Z6W4Z+S4Z6a4Z6Y4Z624Z6TIC0g4Z6Y4Z634Z6T4oCL4Z6i4Z6+4Z6W4Z6+4oCL4Z6U4Z6J4Z+S4Z6g4Z624oCL4Z6X4Z624Z6W4oCL4Z6i4Z624Z6f4Z+S4Z6a4Z+Q4Z6Z4oCL4Z6K4Z+E4Z6Z4oCL4Z6A4Z624Z6a4oCL4Z6Z4Z6AICVzIOGeheGfgeGeicKg4Z+WXG4iCisiJXMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJjb25zaWRlcmluZyBkZWNvbmZpZ3VyYXRpb24gb2YgZXNzZW50aWFsXG4iCisiIHBhY2thZ2UgJXMsIHRvIGVuYWJsZSAlcy4iCittc2dzdHIgIiIKKyJkcGtnIOGfliDhnoDhnrbhnprhnpbhn5LhnprhnpjhnrbhnpMgLSDhnoXhnrbhno/hn4vhnpHhnrvhnoDigIvhnoDhnrbhnprhnpjhnrfhnpPhnoDhn4bhno7hno/hn4vigIvhnprhnoXhnpPhnrbhnp/hnpjhn5Lhnpbhn5DhnpPhn5LhnpLhnpPhn4PigIvhnoDhnonhn5LhnoXhnpThn4sgJXMg4Z6F4Z624Z+G4Z6U4Z624Z6F4Z+LXG4iCisiIOGeiuGevuGemOGfkuGelOGeuOGeouGek+Geu+GeieGfkuGeieGetuGej+KAi+GesuGfkuGemeKAi+GemeGegOGeheGfgeGeieKAi+Gek+GfgyAlcyDhn5RcbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAwOAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IG5vLCAlcyBpcyBlc3NlbnRpYWwsIHdpbGwgbm90IGRlY29uZmlndXJlXG4iCisiIGl0IGluIG9yZGVyIHRvIGVuYWJsZSAlcy5cbiIKK21zZ3N0ciAiIgorImRwa2cg4Z+WIOGeguGfkuGemOGetuGekyAlcyDhnoLhnrrhnoXhnrbhn4bhnpThnrbhnoXhn4sg4Z6T4Z654Z6E4Z6Y4Z634Z6T4Z6A4Z+G4Z6O4Z6P4Z+L4oCL4Z6a4Z6F4Z6T4Z624oCL4Z6f4Z6Y4Z+S4Z6W4Z+Q4Z6T4Z+S4Z6SXG4iCisiIOGenOGetuKAi+GeiuGevuGemOGfkuGelOGeuOGeouGek+Geu+GeieGfkuGeieGetuGej+KAi+GesuGfkuGemeGemeGegOGeheGfgeGeieKAi+Gek+GfgyAlcyDhn5RcbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAyMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IG5vLCBjYW5ub3QgcHJvY2VlZCB3aXRoICVzICgtLWF1dG8tZGVjb25maWd1cmUgd2lsbCBoZWxwKTpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2cg4Z+WIOGeguGfkuGemOGetuGekyDhnpjhnrfhnpPhnqLhnrbhnoXigIvhnpnhnoAgJXMg4Z6F4Z+B4Z6JICgtLWF1dG8tZGVjb25maWd1cmUg4Z6T4Z654Z6E4Z6H4Z694Z6ZKSDhn5ZcbiIKKyIlcyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAzMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAicmVtb3ZhbCBvZiAlLjI1MHMiCittc2dzdHIgIuGeouGetuGek+KAi+GegOGfhuGeoOGeu+Gen+KAi+Gek+GfheKAi+GegOGfkuGek+Geu+GehCAlLjI1MHMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNTcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImluc3RhbGxhdGlvbiBvZiAlLjI1MHMiCittc2dzdHIgIuGemOGet+Gek+KAi+GeouGetuGeheKAi+GeiuGfhuGeoeGevuGehOKAi+GegOGfhuGejuGfguKAi+GekOGfkuGemOGeuOKAi+GemuGelOGen+GfiyBgJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA1OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IGNvbnNpZGVyaW5nIGRlY29uZmlndXJhdGlvbiBvZiAlcywgd2hpY2ggd291bGQgYmUgYnJva2VuIGJ5ICVzIC4uLlxuIgorbXNnc3RyICJkcGtnIOGfliDhnoDhnrbhnprhnpbhnrfhnpPhnrfhno/hn5LhnpnigIvhnoDhnrbhnprhnpnhnoDhnoXhn4HhnokgJXMg4Z6T4Z+F4Z6A4Z+S4Z6T4Z674Z6E4Z6A4Z624Z6a4Z6W4Z+B4Z6J4Z6F4Z634Z6P4Z+S4Z6P4oCL4Z6T4Z+DICVzIC4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDY1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiB5ZXMsIHdpbGwgZGVjb25maWd1cmUgJXMgKGJyb2tlbiBieSAlcykuXG4iCittc2dzdHIgImRwa2cg4Z+WIOGelOGetuGekSDhnpPhnrnhnoTigIvhnpnhnoAgJXMg4Z6F4Z+B4Z6JIOGek+GfheGegOGfkuGek+Geu+GehCDhnoDhnrbhnprhnpbhn4HhnonhnoXhnrfhno/hn5Lhno/igIvhnpPhn4PigIsgJXMg4Z+UXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNjkgc3JjL2FyY2hpdmVzLmM6MTE4NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogcmVnYXJkaW5nICVzIGNvbnRhaW5pbmcgJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnwqDhn5Yg4Z6C4Z634Z6P4Z6Q4Z624oCLICVzIOGemOGetuGek+GeheGfhuGejuGeu+Gfh+KAiyAlc8Kg4Z+WXG4iCisiJXMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNzcKKyMsIGZ1enp5Cittc2dpZCAiaWdub3JpbmcgYnJlYWthZ2UsIG1heSBwcm9jZWVkIGFueXdheSEiCittc2dzdHIgImRwa2fCoOGfliDhnoDhnrbhnprigIvhnpbhn5LhnprhnpjhnrbhnpMgLSDhnpjhnrfhnpPigIvhnqLhnr7hnpbhnr7igIvhnoDhnrbhnprigIvhnpThn4nhn4fhnpHhnoThn5LhnoLhnrfhnoUg4Z6R4Z+E4Z+H4oCL4Z6H4Z624oCL4Z6Z4Z+J4Z624Z6E4Z6O4Z624Z6A4Z+P4oCL4Z6K4Z+E4Z6Z4oCL4Z6i4Z624Z6F4oCL4Z6S4Z+S4Z6c4Z6+4oCL4Z6U4Z6T4Z+S4Z6P4oCL4Z6U4Z624Z6TwqAhXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImluc3RhbGxpbmcgJS4yNTBzIHdvdWxkIGJyZWFrICUuMjUwcywgYW5kXG4iCisiIGRlY29uZmlndXJhdGlvbiBpcyBub3QgcGVybWl0dGVkICgtLWF1dG8tZGVjb25maWd1cmUgbWlnaHQgaGVscCkiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA4NgorIywgYy1mb3JtYXQKK21zZ2lkICJpbnN0YWxsaW5nICUuMjUwcyB3b3VsZCBicmVhayBleGlzdGluZyBzb2Z0d2FyZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTE2CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IGNvbnNpZGVyaW5nIHJlbW92aW5nICVzIGluIGZhdm91ciBvZiAlcyAuLi5cbiIKK21zZ3N0ciAiZHBrZyDhn5Yg4Z6A4Z624Z6a4Z6W4Z634Z6T4Z634Z6P4Z+S4Z6Z4oCL4Z6A4Z624Z6a4Z6Z4Z6A4Z6F4Z+B4Z6JICVzIOGek+GfheGegOGfkuGek+Geu+GehOGegOGetuGemuGeluGfgeGeieGeheGet+Gej+GfkuGej+KAi+Gek+GfgyAlcyAuLi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTEyMgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgcHJvcGVybHkgaW5zdGFsbGVkIC0gaWdub3JpbmcgYW55IGRlcGVuZGVuY2llcyBvbiBpdC5cbiIKK21zZ3N0ciAiJXMg4Z6Y4Z634Z6T4oCL4Z6P4Z+S4Z6a4Z684Z6c4oCL4Z6U4Z624Z6T4oCL4Z6K4Z+G4Z6h4Z6+4Z6E4oCL4Z6Z4Z+J4Z624Z6E4oCL4Z6P4Z+S4Z6a4Z654Z6Y4Z6P4Z+S4Z6a4Z684Z6cIC0g4Z6Y4Z634Z6T4oCL4Z6i4Z6+4Z6W4Z6+4oCL4Z6X4Z624Z6W4oCL4Z6i4Z624Z6f4Z+S4Z6a4Z+Q4Z6Z4oCL4Z6Y4Z694Z6Z4oCL4Z6F4Z+G4Z6T4Z694Z6T4oCL4Z6T4Z+F4oCL4Z6b4Z6+4oCL4Z6c4Z62wqDhn5RcbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE1MQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiBtYXkgaGF2ZSB0cm91YmxlIHJlbW92aW5nICVzLCBhcyBpdCBwcm92aWRlcyAlcyAuLi5cbiIKK21zZ3N0ciAiZHBrZyDhn5Yg4Z6U4Z+S4Z6a4Z6g4Z+C4Z6b4oCL4Z6H4Z624Z6Y4Z624Z6T4Z6U4Z6J4Z+S4Z6g4Z624oCL4Z6A4Z+S4Z6T4Z674Z6E4Z6A4Z624Z6a4oCL4Z6Z4Z6A4oCLICVzIOGeheGfgeGeiSDhnpPhn4Xhnpbhn4HhnpvigIvhnorhn4LhnpvigIvhnpzhnrbigIvhnpXhn5Lhnorhnpvhn4vigIsgJXMgLi4uXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExNjYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBwYWNrYWdlICVzIHJlcXVpcmVzIHJlaW5zdGFsbGF0aW9uLCBidXQgd2lsbCByZW1vdmUgYW55d2F5IGFzIHlvdSAiCisicmVxdWVzdGVkLlxuIgorbXNnc3RyICJkcGtnIOGfliDhnoDhnonhn5LhnoXhnpThn4sgJXMg4Z6R4Z624Z6Y4Z6R4Z624Z6a4oCL4Z6y4Z+S4Z6Z4oCL4Z6K4Z+G4Z6h4Z6+4Z6E4oCL4Z6Y4Z+S4Z6K4Z6E4Z6R4Z+A4Z6PIOGelOGfieGeu+Gek+GfkuGej+GfgiDhnpzhnrbigIvhnpPhnrnhnoTigIvhnpnhnoDhnoXhn4HhnonigIsg4Z6T4Z+F4Z6W4Z+B4Z6b4oCL4Z6K4Z+C4Z6b4oCL4Z6i4Z+S4Z6T4Z6A4oCL4Z6f4Z+S4Z6T4Z6+IOGflFxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTY5CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IHBhY2thZ2UgJXMgcmVxdWlyZXMgcmVpbnN0YWxsYXRpb24sIHdpbGwgbm90IHJlbW92ZS5cbiIKK21zZ3N0ciAiZHBrZ8Kg4Z+WIOGegOGeieGfkuGeheGelOGfiyAlcyDhnpHhnrbhnpjhnpHhnrbhnprigIvhnoDhnrbhnprigIvhnorhn4bhnqHhnr7igIvhnoThnqHhnr7hnoTigIvhnpzhnrfhnokg4Z6T4Z654Z6E4oCL4Z6Y4Z634Z6T4oCL4Z6Z4Z6A4Z6F4Z+B4Z6J4oCL4Z6R4Z+BwqDhn5RcbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE3OAorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiB5ZXMsIHdpbGwgcmVtb3ZlICVzIGluIGZhdm91ciBvZiAlcy5cbiIKK21zZ3N0ciAiZHBrZyDhn5Yg4Z6U4Z624Z6RIOGek+GeueGehOKAi+GemeGegCAlcyDhnoXhn4Hhnokg4Z6T4Z+F4Z6A4Z+S4Z6T4Z674Z6EIOGegOGetuGemuGeluGfgeGeieGeheGet+Gej+GfkuGej+KAi+Gek+Gfg+KAiyAlcyDhn5RcbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE5MAorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mbGljdGluZyBwYWNrYWdlcyAtIG5vdCBpbnN0YWxsaW5nICUuMjUwcyIKK21zZ3N0ciAi4Z6A4Z624Z6a4oCL4Z6U4Z+J4Z+H4Z6R4Z6E4Z+S4Z6C4Z634Z6F4oCL4Z6A4Z6J4Z+S4Z6F4Z6U4Z+LIC0g4Z6Y4Z634Z6T4oCL4Z6K4Z+G4Z6h4Z6+4Z6EICUuMjUwcyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE5MQorIywgZnV6enkKK21zZ2lkICJpZ25vcmluZyBjb25mbGljdCwgbWF5IHByb2NlZWQgYW55d2F5ISIKK21zZ3N0ciAiZHBrZ8Kg4Z+WIOGegOGetuGemuKAi+GeluGfkuGemuGemOGetuGekyAtIOGemOGet+Gek+KAi+GeouGevuGeluGevuKAi+GegOGetuGemuKAi+GelOGfieGfh+GekeGehOGfkuGeguGet+GehSDhnpHhn4Thn4figIvhnofhnrbigIvhnpnhn4nhnrbhnoThno7hnrbhnoDhn4/igIvhnorhn4ThnpnigIvhnqLhnrbhnoXigIvhnpLhn5Lhnpzhnr7igIvhnpThnpPhn5Lhno/igIvhnpThnrbhnpPCoCFcbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTIzNQorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIC0tcmVjdXJzaXZlIG5lZWRzIGF0IGxlYXN0IG9uZSBwYXRoIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIC0t4Z6a4Z6E4Z+S4Z6c4Z634Z6b4Z6H4Z674Z+GIOGej+GfkuGemuGevOGenOGegOGetuGemuKAi+GemeGfieGetuGehOGeoOGfhOGeheGejuGetuGen+Gfi+KAi+KAi+GeouGetuGeguGeu+GemeGemOGfieGehOGfi+KAi+GeleGfkuGem+GevOGenOKAi+GemOGevSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI0NQorIywgZnV6enkKK21zZ2lkICJmaW5kIGZvciBkcGtnIC0tcmVjdXJzaXZlIgorbXNnc3RyICLhnpThnrbhnpPhnpThnprhnrbhnofhn5DhnpnhnoDhn5LhnpPhnrvhnoThnoDhnrbhnprhnpThn5Lhnprhno/hnrfhnpThno/hn5Lhno/hnrfhnprhnoAgLS3hnprhnoThn5Lhnpzhnrfhnpvhnofhnrvhn4YiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNjYKK21zZ2lkICJmYWlsZWQgdG8gZmRvcGVuIGZpbmQncyBwaXBlIgorbXNnc3RyICLhnpThnprhnrbhnofhn5DhnpnigIvhnoDhn5LhnpPhnrvhnoThnoDhnrbhnprigIsgZmRvcGVuIOGelOGfhuGeluGehOGfi+KAi+GemuGelOGen+Gfi+KAi+GegOGetuGemuGemuGegCIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3MgorbXNnaWQgImVycm9yIHJlYWRpbmcgZmluZCdzIHBpcGUiCittc2dzdHIgIuGegOGfhuGeoOGeu+Gen+KAi+GegOGfkuGek+Geu+GehOKAi+GegOGetuGemuGeouGetuGek+KAi+GelOGfhuGeluGehOGfi+KAi+GemuGelOGen+Gfi+KAi+GegOGetuGemuKAi+GemuGegCIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3MworbXNnaWQgImVycm9yIGNsb3NpbmcgZmluZCdzIHBpcGUiCittc2dzdHIgIuGegOGfhuGeoOGeu+Gen+KAi+GegOGfkuGek+Geu+GehOKAi+GegOGetuGemuKAi+GelOGet+GekeKAi+GelOGfhuGeluGehOGfi+KAi+GemuGelOGen+Gfi+KAi+GegOGetuGemuKAi+GemuGegCIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3NgorIywgYy1mb3JtYXQKK21zZ2lkICJmaW5kIGZvciAtLXJlY3Vyc2l2ZSByZXR1cm5lZCB1bmhhbmRsZWQgZXJyb3IgJWkiCittc2dzdHIgIuGemuGegOGemOGevuGemyAtLeGemuGehOGfkuGenOGet+Gem+Geh+Geu+GfhiDhnpThnrbhnpPhno/hn5LhnprhnqHhnpThn4vigIvhnoDhn4bhnqDhnrvhnp/igIvhnorhn4LhnpvhnpjhnrfhnpPhnpThnrbhnpPigIvhnorhn4Thn4fhnp/hn5LhnprhnrbhnpkgJWkiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNzkKK21zZ2lkICJzZWFyY2hlZCwgYnV0IGZvdW5kIG5vIHBhY2thZ2VzIChmaWxlcyBtYXRjaGluZyAqLmRlYikiCittc2dzdHIgIuGelOGetuGek+Gen+GfkuGenOGfguGehOGemuGegCDhnpThn4nhnrvhnpPhn5Lhno/hn4LhnprhnoDhnpjhnrfhnpPhnoPhnr7hnonhnoDhnonhn5LhnoXhnpThn4sgKOGegOGetuGemuGeleGfkuGeguGevOGeleGfkuGeguGehOGer+GegOGen+GetuGemiAqLmRlYikiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhdCBsZWFzdCBvbmUgcGFja2FnZSBhcmNoaXZlIGZpbGUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMg4Z6P4Z+S4Z6a4Z684Z6c4oCL4Z6A4Z624Z6a4oCL4Z6Z4Z+J4Z624Z6E4Z6g4Z+E4Z6F4oCL4Z6O4Z624Z6f4Z+L4oCL4Z6i4Z624Z6C4Z674Z6Z4Z6Y4Z+J4Z6E4Z+L4oCL4Z6v4Z6A4Z6f4Z624Z6a4oCL4Z6U4Z+Q4Z6O4Z+S4Z6O4Z6f4Z624Z6a4oCL4Z6A4Z6J4Z+S4Z6F4Z6U4Z+L4oCL4Z6Y4Z694Z6ZIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzI1IHNyYy9kaXZlcnRjbWQuYzo3OCBzcmMvZGl2ZXJ0Y21kLmM6MTE4CisjOiBzcmMvZW5xdWlyeS5jOjE2NiBzcmMvZW5xdWlyeS5jOjI3OSBzcmMvZW5xdWlyeS5jOjQ0OSBzcmMvZW5xdWlyeS5jOjQ1MQorIzogc3JjL2VucXVpcnkuYzo0NjQgc3JjL21haW4uYzo2NiBzcmMvbWFpbi5jOjE2MyBzcmMvbWFpbi5jOjMxNAorIzogc3JjL21haW4uYzo0OTMgc3JjL3BhY2thZ2VzLmM6MjU0IHNyYy9xdWVyeWNtZC5jOjI1MiBzcmMvcXVlcnljbWQuYzozNTUKKyM6IHNyYy9xdWVyeWNtZC5jOjM5NiBzcmMvcXVlcnljbWQuYzo0MDQgc3JjL3F1ZXJ5Y21kLmM6NDQ4IHNyYy9xdWVyeWNtZC5jOjUxNworIzogc3JjL3F1ZXJ5Y21kLmM6NjA2IHNyYy9xdWVyeWNtZC5jOjY1MCBzcmMvc2VsZWN0LmM6Nzkgc3JjL3N0YXRjbWQuYzo2OAorIzogc3JjL3N0YXRjbWQuYzo5OCBzcmMvdHJpZ2NtZC5jOjU4IHNyYy90cmlnY21kLmM6OTAgZHBrZy1kZWIvYnVpbGQuYzo0NDEKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyMTcgZHBrZy1kZWIvZXh0cmFjdC5jOjI1MCBkcGtnLWRlYi9pbmZvLmM6MjAzCisjOiBkcGtnLWRlYi9pbmZvLmM6MjY1IGRwa2ctZGViL21haW4uYzo2MCBkcGtnLWRlYi9tYWluLmM6MTI2CisjOiBkcGtnLXNwbGl0L2luZm8uYzoyNTcgZHBrZy1zcGxpdC9tYWluLmM6NTQgZHBrZy1zcGxpdC9tYWluLmM6OTgKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxNDQgZHBrZy1zcGxpdC9xdWV1ZS5jOjI4MAorbXNnaWQgIjxzdGFuZGFyZCBvdXRwdXQ+IgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzMjYgc3JjL3BhY2thZ2VzLmM6MjU1IHNyYy9xdWVyeWNtZC5jOjI1MworIzogc3JjL3F1ZXJ5Y21kLmM6MzUzIHNyYy9xdWVyeWNtZC5jOjQ1NCBzcmMvcXVlcnljbWQuYzo1MTggc3JjL3NlbGVjdC5jOjgwCisjOiBkcGtnLXNwbGl0L21haW4uYzoxNjkgZHBrZy1zcGxpdC9xdWV1ZS5jOjIxOAorbXNnaWQgIjxzdGFuZGFyZCBlcnJvcj4iCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTM2NworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiU2VsZWN0aW5nIHByZXZpb3VzbHkgZGVzZWxlY3RlZCBwYWNrYWdlICVzLlxuIgorbXNnaWQgIlNlbGVjdGluZyBwcmV2aW91c2x5IHVuc2VsZWN0ZWQgcGFja2FnZSAlcy5cbiIKK21zZ3N0ciAi4Z6H4Z+S4Z6a4Z6+4Z6f4oCL4Z6A4Z6J4Z+S4Z6F4Z6U4Z+L4oCL4Z6K4Z+C4Z6b4oCL4Z6Y4Z634Z6T4oCL4Z6U4Z624Z6T4oCL4Z6H4Z+S4Z6a4Z6+4Z6f4oCL4Z6W4Z644oCL4Z6Y4Z674Z6TICVzwqDhn5RcbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTM3MQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiU2tpcHBpbmcgZGVzZWxlY3RlZCBwYWNrYWdlICVzLlxuIgorbXNnaWQgIlNraXBwaW5nIHVuc2VsZWN0ZWQgcGFja2FnZSAlcy5cbiIKK21zZ3N0ciAi4oCL4Z6a4Z+G4Z6b4Z6E4oCL4Z6A4Z6J4Z+S4Z6F4Z6U4Z+L4oCL4Z6K4Z+C4Z6b4oCL4Z6Y4Z634Z6T4oCL4Z6U4Z624Z6T4oCL4Z6H4Z+S4Z6a4Z6+4Z6f4oCLICVzLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzg3CisjLCBjLWZvcm1hdAorbXNnaWQgIlZlcnNpb24gJS4yNTBzIG9mICUuMjUwcyBhbHJlYWR5IGluc3RhbGxlZCwgc2tpcHBpbmcuXG4iCittc2dzdHIgIuGegOGfhuGejuGfgiAlLjI1MHMg4Z6T4Z+DICUuMjUwcyDhnpThnrbhnpPhnorhn4bhnqHhnr7hnoThnprhnr3hnoXhnqDhnr7hnpkg4Z6a4Z+G4Z6b4Z6EwqDhn5RcbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTM5NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZG93bmdyYWRpbmcgJS4yNTBzIGZyb20gJS4yNTBzIHRvICUuMjUwcy4iCittc2dzdHIgIiVzIC0g4Z6W4Z+S4Z6a4Z6Y4Z624Z6TwqDhn5Yg4Z6A4Z+G4Z6W4Z674Z6E4Z6U4Z6T4Z+S4Z6R4Z624Z6UICUuMjUwcyDhnpbhnrggJS4yNTBzIOGekeGfhSAlLjI1MHPCoOGflFxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxNDAyCisjLCBjLWZvcm1hdAorbXNnaWQgIldpbGwgbm90IGRvd25ncmFkZSAlLjI1MHMgZnJvbSB2ZXJzaW9uICUuMjUwcyB0byAlLjI1MHMsIHNraXBwaW5nLlxuIgorbXNnc3RyICLhnpPhnrnhnoTigIvhnpjhnrfhnpPigIvhnpThnpPhn5LhnpHhnrbhnpQgJS4yNTBzIOGeluGeuOKAi+GegOGfhuGejuGfgiAlLjI1MHMg4Z6R4Z+FICUuMjUwcyDhnprhn4bhnpvhnoTCoOGflFxuIgorCisjOiBzcmMvY2xlYW51cC5jOjg2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1bmFibGUgdG8gcmVtb3ZlIG5ld2x5LWluc3RhbGxlZCB2ZXJzaW9uIG9mIGAlLjI1MHMnIHRvIGFsbG93IHJlaW5zdGFsbGF0aW9uICIKKyJvZiBiYWNrdXAgY29weSIKK21zZ3N0ciAiIgorIuGemOGet+Gek+KAi+GeouGetuGeheKAi+GemeGegOKAi+GegOGfhuGejuGfguKAi+GemuGelOGen+GfiyBgJS4yNTBzJyDhnorhn4LhnpvigIvhnpThnrbhnpPigIvhnorhn4bhnqHhnr7hnoTigIvhnpDhn5Lhnpjhnrjhn5figIvhnoXhn4HhnonigIvhnpThnrbhnpPigIvhnpHhn4Eg4Z6K4Z6+4Z6Y4Z+S4Z6U4Z644oCL4Z6i4Z6T4Z674Z6J4Z+S4Z6J4Z624Z6P4oCL4Z6A4Z624Z6a4oCL4Z6K4Z+G4Z6h4Z6+4Z6E4oCL4Z6h4Z6+4Z6E4Z6c4Z634Z6J4oCL4Z6a4Z6U4Z6f4Z+L4oCL4Z6F4Z+S4Z6U4Z624Z6U4Z+L4oCLIgorIuGeheGemOGfkuGem+GehOKAi+GeluGfkOGej+GfjOGemOGetuGek+KAi+GelOGemOGfkuGemuGeu+GehOKAi+GekeGeu+GegCIKKworIzogc3JjL2NsZWFudXAuYzo5MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVzdG9yZSBiYWNrdXAgdmVyc2lvbiBvZiBgJS4yNTBzJyIKK21zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6f4Z+S4Z6K4Z624Z6a4oCL4Z6A4Z+G4Z6O4Z+C4oCL4Z6W4Z+Q4Z6P4Z+M4Z6Y4Z624Z6T4oCL4Z6U4Z6Y4Z+S4Z6a4Z674Z6E4oCL4Z6R4Z674Z6A4oCL4Z6a4Z6U4Z6f4Z+LIGAlLjI1MHMnIOGelOGetuGek+KAi+GekeGfgSIKKworIzogc3JjL2NsZWFudXAuYzo5NworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHJlc3RvcmUgYmFja3VwIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBiYWNrdXAgY29weSBvZiAnJS4yNTBzJyIKK21zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6f4Z+S4Z6K4Z624Z6a4oCL4Z6A4Z+G4Z6O4Z+C4oCL4Z6W4Z+Q4Z6P4Z+M4Z6Y4Z624Z6T4oCL4Z6U4Z6Y4Z+S4Z6a4Z674Z6E4oCL4Z6R4Z674Z6A4oCL4Z6a4Z6U4Z6f4Z+LIGAlLjI1MHMnIOGelOGetuGek+KAi+GekeGfgSIKKworIzogc3JjL2NsZWFudXAuYzoxMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBuZXdseS1pbnN0YWxsZWQgdmVyc2lvbiBvZiBgJS4yNTBzJyIKK21zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6Z4Z6A4oCL4Z6A4Z+G4Z6O4Z+C4oCL4Z6a4Z6U4Z6f4Z+LIGAlLjI1MHMnIOGeiuGfguGem+KAi+GelOGetuGek+KAi+GeiuGfhuGeoeGevuGehOKAi+GekOGfkuGemOGeuOGfl+KAi+GeheGfgeGeieKAi+GelOGetuGek+KAi+GekeGfgSIKKworIzogc3JjL2NsZWFudXAuYzoxMDgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBuZXdseS1leHRyYWN0ZWQgdmVyc2lvbiBvZiBgJS4yNTBzJyIKK21zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6Z4Z6A4oCL4Z6A4Z+G4Z6O4Z+C4oCL4Z6a4Z6U4Z6f4Z+LIGAlLjI1MHMnIOGeiuGfguGem+KAi+GelOGetuGek+KAi+Gen+GfkuGemuGehOGfi+KAi+GeheGfgeGeieKAi+GekOGfkuGemOGeuOGfl+KAi+GeheGfgeGeieKAi+GelOGetuKAi+Gek+GekeGfgSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjEwNAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHN0YXQgbmV3IGRpc3QgY29uZmZpbGUgYCUuMjUwcyciCittc2dpZCAidW5hYmxlIHRvIHN0YXQgbmV3IGRpc3RyaWJ1dGVkIGNvbmZmaWxlICclLjI1MHMnIgorbXNnc3RyICLhnpjhnrfhnpPhnqLhnrbhnoXigIvhnpDhn5Lhnpvhn4LhnoTigIsgZGlzdCBjb25mZmlsZSDhnpDhn5LhnpjhnrggYCUuMjUwcycg4Z6U4Z624Z6T4Z6R4Z+BIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGN1cnJlbnQgaW5zdGFsbGVkIGNvbmZmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLhnpjhnrfhnpPhnqLhnrbhnoXigIvhnpDhn5Lhnpvhn4LhnoQgY29uZmZpbGUg4Z6K4Z+C4Z6b4Z6U4Z624Z6T4oCL4Z6K4Z+G4Z6h4Z6+4Z6E4oCL4Z6U4Z6F4Z+S4Z6F4Z674Z6U4Z+S4Z6U4Z6T4Z+S4Z6TIGAlLjI1MHMnIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTI2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJDb25maWd1cmF0aW9uIGZpbGUgYCVzJywgZG9lcyBub3QgZXhpc3Qgb24gc3lzdGVtLlxuIgorIkluc3RhbGxpbmcgbmV3IGNvbmZpZyBmaWxlIGFzIHlvdSByZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiIKKyJcbiIKKyLhnq/hnoDhnp/hnrbhnprigIvhnoDhn4bhno7hno/hn4vigIvhnprhnoXhnpPhnrbhnp/hnpjhn5Lhnpbhn5DhnpPhn5LhnpIgYCVzJyDhnpjhnrfhnpPhnpjhnrbhnpPigIvhnpPhn4XigIvhnoDhn5LhnpPhnrvhnoTigIvhnpThn5Lhnprhnpbhn5DhnpPhn5LhnpLCoOGflFxuIgorIuGepeGeoeGevOGenOKAi+GegOGfhuGeluGeu+GehOKAi+GeiuGfhuGeoeGevuGehOKAi+Ger+GegOGen+GetuGemuKAi+GegOGfhuGejuGej+Gfi+KAi+GemuGeheGek+GetuGen+GemOGfkuGeluGfkOGek+GfkuGekiDhnorhnrzhnoXigIvhnorhn4LhnpvigIvhnqLhn5LhnpPhnoDigIvigIvhnp/hn5LhnpPhnr7CoOGflFxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTY4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIHJlbW92ZSBvbGQgYmFja3VwICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiZHBrZ8Kg4Z+WICVzwqDhn5Yg4Z6W4Z+S4Z6a4Z6Y4Z624Z6TIC0g4Z6U4Z624Z6T4oCL4Z6U4Z6a4Z624Z6H4Z+Q4Z6Z4oCL4Z6A4Z+S4Z6T4Z674Z6E4oCL4Z6A4Z624Z6a4oCL4Z6Z4Z6A4oCL4Z6W4Z+Q4Z6P4Z+M4Z6Y4Z624Z6T4oCL4Z6U4Z6Y4Z+S4Z6a4Z674Z6E4Z6R4Z674Z6A4oCL4Z6F4Z624Z6f4Z+L4oCL4Z6F4Z+B4Z6JIGAlLjI1MHMnwqDhn5YgJXNcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE3NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW5hbWUgJyUuMjUwcycgdG8gJyUuMjUwcyc6ICVzIgorbXNnc3RyICIiCisiZHBrZ8Kg4Z+WICVzwqDhn5Yg4Z6W4Z+S4Z6a4Z6Y4Z624Z6TIC0g4Z6U4Z624Z6T4oCL4Z6U4Z6a4Z624Z6H4Z+Q4Z6Z4oCL4Z6A4Z+S4Z6T4Z674Z6E4oCL4Z6A4Z624Z6a4oCL4Z6U4Z+S4Z6K4Z684Z6a4oCL4Z6I4Z+S4Z6Y4Z+E4Z+HIGAlLjI1MHMnIOGekeGfheKAi+Geh+GetiBgJS4yNTBzJ8Kg4Z+WICVzXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzoxODIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiJXPCoOGfliDhnpThnrbhnpPigIvhnpThnprhnrbhnofhn5DigIvhnpnhnoDhn5LhnpPhnrvigIvhnoThnoDhnrbhnprhnpThn5Lhnprhno/hnrfhnpThno/hn5Lhno/hnrcgZ3ppcCAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE4OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW1vdmUgb2xkIGRpc3RyaWJ1dGVkIHZlcnNpb24gJyUuMjUwcyc6ICVzIgorbXNnc3RyICIiCisiZHBrZ8Kg4Z+WICVzwqDhn5Yg4Z6W4Z+S4Z6a4Z6Y4Z624Z6TIC0g4Z6U4Z624Z6T4oCL4Z6U4Z6a4Z624Z6H4Z+Q4Z6Z4oCL4Z6A4Z+S4Z6T4Z674Z6E4oCL4Z6A4Z624Z6a4oCL4Z6Z4Z6A4oCL4Z6A4Z+G4Z6O4Z+C4oCL4Z6F4Z+C4Z6A4Z6F4Z624Z6Z4oCL4Z6F4Z624Z6f4Z+L4oCL4Z6a4Z6U4Z6f4Z+LIGAlLjI1MHMnIOGeheGfgeGeicKg4Z+WICVzXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzoxOTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlICclLjI1MHMnIChiZWZvcmUgb3ZlcndyaXRlKTogJXMiCittc2dzdHIgIiIKKyJkcGtnwqDhn5YgJXPCoOGfliDhnpbhn5LhnprhnpjhnrbhnpMgLSDhnpThnrbhnpPigIvhnpThnprhnrbhnofhn5DhnpnigIvhnoDhn5LhnpPhnrvhnoTigIvhnoDhnrbhnprigIvhnpnhnoAgYCUuMjUwcycg4Z6F4Z+B4Z6JICjhnpjhnrvhnpPigIvhnpbhn4HhnpvigIvhnp/hnprhnp/hn4HhnprigIvhnofhnrbhnpPhn4vigIvhnpvhnr4pwqDhn5YgJXNcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE5NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byBsaW5rICclLjI1MHMnIHRvICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiZHBrZ8Kg4Z+WICVzwqDhn5Yg4Z6W4Z+S4Z6a4Z6Y4Z624Z6TIC0g4Z6U4Z624Z6T4oCL4Z6U4Z6a4Z624Z6H4Z+Q4Z6Z4oCL4Z6A4Z+S4Z6T4Z674Z6E4oCL4Z6A4Z624Z6a4oCL4Z6P4Z6X4Z+S4Z6H4Z624Z6U4Z+LIGAlLjI1MHMnIOGekeGfhSBgJS4yNTBzJ8Kg4Z+WICVzXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzoyMDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW5zdGFsbGluZyBuZXcgdmVyc2lvbiBvZiBjb25maWcgZmlsZSAlcyAuLi5cbiIKK21zZ3N0ciAi4Z6A4Z+G4Z6W4Z674Z6E4oCL4Z6K4Z+G4Z6h4Z6+4Z6E4oCL4Z6A4Z+G4Z6O4Z+C4oCL4Z6Q4Z+S4Z6Y4Z644oCL4Z6a4Z6U4Z6f4Z+L4oCL4Z6v4Z6A4Z6f4Z624Z6a4oCL4Z6A4Z+G4Z6O4Z6P4Z+L4oCL4Z6a4Z6F4Z6T4Z624Z6f4Z6Y4Z+S4Z6W4Z+Q4Z6T4Z+S4Z6SICVzIC4uLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjA2IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo1NDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgYCUuMjUwcycgYXMgYCUuMjUwcyciCittc2dzdHIgIuGemOGet+Gek+KAi+GeouGetuGeheKAi+GeiuGfhuGeoeGevuGehOKAiyBgJS4yNTBzJyDhnofhnrbigIsgYCUuMjUwcycg4Z6U4Z624Z6T4Z6R4Z+BIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjU3CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHBhY2thZ2UgbmFtZWQgYCVzJyBpcyBpbnN0YWxsZWQsIGNhbm5vdCBjb25maWd1cmUiCittc2dzdHIgIuGeguGfkuGemOGetuGek+KAi+GegOGeieGfkuGeheGelOGfi+KAi+GeiuGfguGem+KAi+GemOGetuGek+KAi+GeiOGfkuGemOGfhOGfhyBgJXMnIOGej+GfkuGemuGevOGenOKAi+GelOGetuGek+KAi+GeiuGfhuGeoeGevuGehOKAi+GekeGfgSDhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnoDhn4bhno7hno/hn4vigIvhnprhnoXhnpPhnrbigIvhnp/hnpjhn5Lhnpbhn5DhnpPhn5LhnpIiCisKKyM6IHNyYy9jb25maWd1cmUuYzoyNjAKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlLjI1MHMgaXMgYWxyZWFkeSBpbnN0YWxsZWQgYW5kIGNvbmZpZ3VyZWQiCittc2dzdHIgIuGegOGeieGfkuGeheGelOGfiyAlLjI1MHMg4Z6P4Z+S4Z6a4Z684Z6c4oCL4Z6U4Z624Z6T4oCL4Z6K4Z+G4Z6h4Z6+4Z6EIOGek+Get+GehOKAi+GegOGfhuGejuGej+Gfi+KAi+GemuGeheGek+GetuGen+GemOGfkuGeluGfkOGek+GfkuGekuKAi+GemuGeveGeheKAi+GeoOGevuGemSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI2MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisicGFja2FnZSAlLjI1MHMgaXMgbm90IHJlYWR5IGZvciBjb25maWd1cmF0aW9uXG4iCisiIGNhbm5vdCBjb25maWd1cmUgKGN1cnJlbnQgc3RhdHVzIGAlLjI1MHMnKSIKK21zZ3N0ciAiIgorIuGegOGeieGfkuGeheGelOGfiyAlLjI1MHMg4Z6Y4Z634Z6T4oCL4Z6R4Z624Z6T4Z+L4oCL4Z6a4Z694Z6F4Z6a4Z624Z6b4Z+LIOGeiuGevuGemOGfkuGelOGeuOKAi+GegOGfhuGejuGej+Gfi+KAi+GemuGeheGek+GetuGen+GemOGfkuGeluGfkOGek+GfkuGeklxuIgorIiDhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnoDhn4bhno7hno/hn4vigIvhnprhnoXhnpPhnrbhnp/hnpjhn5Lhnpbhn5DhnpPhn5LhnpIgKOGen+GfkuGekOGetuGek+Gel+GetuGeluKAi+GelOGeheGfkuGeheGeu+GelOGfkuGelOGek+GfkuGekyBgJS4yNTBzJykiCisKKyM6IHNyYy9jb25maWd1cmUuYzoyOTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IGRlcGVuZGVuY3kgcHJvYmxlbXMgcHJldmVudCBjb25maWd1cmF0aW9uIG9mICVzOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZ8Kg4Z+WIOGelOGeieGfkuGeoOGetuKAi+Gel+GetuGeluKAi+GeouGetuGen+GfkuGemuGfkOGemeKAi+GegOGetuGemuGeluGetuGemuKAi+GeluGeuOKAi+GegOGetuGemuKAi+GegOGfhuGejuGej+Gfi+KAi+GemuGeheGek+GetuGen+GemOGfkuGeluGfkOGek+GfkuGekuKAi+GemuGelOGen+GfiyAlc8Kg4Z+WXG4iCisiJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoyOTcKK21zZ2lkICJkZXBlbmRlbmN5IHByb2JsZW1zIC0gbGVhdmluZyB1bmNvbmZpZ3VyZWQiCittc2dzdHIgIuGelOGeieGfkuGeoOGetuKAi+Gel+GetuGeluKAi+GeouGetuGen+GfkuGemuGfkOGemSAtIOGemOGet+Gek+KAi+GelOGetuGek+KAi+GegOGfhuGejuGej+Gfi+KAi+GemuGeheGek+GetuGen+GemOGfkuGeluGfkOGek+GfkuGekiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjMwMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogJXM6IGRlcGVuZGVuY3kgcHJvYmxlbXMsIGJ1dCBjb25maWd1cmluZyBhbnl3YXkgYXMgeW91IHJlcXVlc3RlZDpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2fCoOGfliAlc8Kg4Z+WIOGelOGeieGfkuGeoOGetuKAi+Gel+GetuGeluKAi+GeouGetuGen+GfkuGemuGfkOGemSDhnpThn4nhnrvhnpPhn5Lhno/hn4LigIvhnpHhn4Thn4figIvigIvhnofhnrbhnpnhn4nhnrbhnoThno7hnrbhnoDhn4/hnorhn4Thnpkg4Z6A4Z+G4Z6O4Z6P4Z+L4oCL4Z6a4Z6F4Z6T4Z624Z6f4Z6Y4Z+S4Z6W4Z+Q4Z6T4Z+S4Z6S4oCL4Z6K4Z684Z6F4oCL4Z6K4Z+C4Z6b4oCL4Z6i4Z+S4Z6T4oCL4Z6A4oCL4Z6f4Z+S4Z6T4Z6+wqDhn5ZcbiIKKyIlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjMwOQorbXNnaWQgIiIKKyJQYWNrYWdlIGlzIGluIGEgdmVyeSBiYWQgaW5jb25zaXN0ZW50IHN0YXRlIC0geW91IHNob3VsZFxuIgorIiByZWluc3RhbGwgaXQgYmVmb3JlIGF0dGVtcHRpbmcgY29uZmlndXJhdGlvbi4iCittc2dzdHIgIiIKKyLhnoDhnonhn5LhnoXhnpThn4vigIvhnp/hn5LhnpDhnrfhno/igIvhnpPhn4XigIvhnoDhn5LhnpPhnrvhnoTigIvhnp/hn5LhnpDhnrbhnpPhnpfhnrbhnpbigIvhnpjhnrfhnpPigIvhnofhnrbhnpThn4vhnpvhnrbhnpThn4vigIvhnorhn4/igIvhnpjhnrfhnpPigIvhnpvhn5LhnqLigIvhnpThn4bhnpXhnrvhno/igIvhnpjhnr3hnpkgLSDhnqLhn5LhnpPhnoDigIvhnoLhnr3hnprigIvhnorhn4bhnqHhnr7hnoTigIvhnpzhnrbigIvhnqHhnr7hnoTigIvhnpzhnrfhnolcbiIKKyIg4Z6Y4Z674Z6T4oCL4Z6W4Z+B4Z6b4oCL4Z6U4Z+J4Z674Z6T4Z6U4Z+J4Z6E4oCL4Z6A4Z+G4Z6O4Z6P4Z+L4oCL4Z6a4Z6F4Z6T4Z624Z6f4Z6Y4Z+S4Z6W4Z+Q4Z6T4Z+S4Z6SwqDhn5QiCisKKyM6IHNyYy9jb25maWd1cmUuYzozMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2V0dGluZyB1cCAlcyAoJXMpIC4uLlxuIgorbXNnc3RyICLhnoDhn4bhnpbhnrvhnoTigIvhnprhn4DhnpThnoXhn4YgJXMgKCVzKSAuLi5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjM5NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiB1bmFibGUgdG8gc3RhdCBjb25maWcgZmlsZSAnJXMnXG4iCisiICg9ICclcycpOiAlcyIKK21zZ3N0ciAiIgorImRwa2fCoOGfliAlc8Kg4Z+WIOGeluGfkuGemuGemOGetuGekyAtIOGemOGet+Gek+KAi+GeouGetuKAi+GeheGeheGetuGelOGfi+GeleGfkuGeiuGevuGemOKAi+Ger+GegOGen+GetuGemuKAi+GegOGfhuGejuGej+Gfi+KAi+GemuGeheGek+GetuGen+GemOGfkuGeluGfkOGek+GfkuGekiBgJXMnXG4iCisiICg9IGAlcycpwqDhn5YgJXNcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQwOQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBjb25maWcgZmlsZSAnJXMnIGlzIGEgY2lyY3VsYXIgbGlua1xuIgorIiAoPSAnJXMnKSIKK21zZ3N0ciAiIgorImRwa2fCoOGfliAlc8Kg4Z+WIOGeluGfkuGemuGemOGetuGekyAtIOGer+GegOGen+GetuGemuKAi+GegOGfhuGejuGej+Gfi+KAi+GemuGeheGek+GetuGen+GemOGfkuGeluGfkOGek+GfkuGekiBgJXMnIOGeh+GetuKAi+Gej+GfhuGejuKAi+GemuGetuGehOKAi+Geh+GetuKAi+GemuGehOGfkuGenOGehOGfi1xuIgorIiAoPSBgJXMnKVxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDE4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IHVuYWJsZSB0byByZWFkbGluayBjb25mZmlsZSAnJXMnXG4iCisiICg9ICclcycpOiAlcyIKK21zZ3N0ciAiIgorImRwa2cg4Z+WICVzIOGfliDhnpbhn5LhnprhnpjhnrbhnpMgLSDhnpjhnrfhnpPhnqLhnrbhnoXhnqLhnrbhnpPigIvhno/hn4bhno4gY29uZmZpbGUgYCVzJ1xuIgorIiAoPSBgJXMnKSDhn5YgJXNcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQ0NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBjb25mZmlsZSAnJS4yNTBzJyByZXNvbHZlcyB0byBkZWdlbmVyYXRlIGZpbGVuYW1lXG4iCisiICgnJXMnIGlzIGEgc3ltbGluayB0byAnJXMnKSIKK21zZ3N0ciAiIgorImRwa2cg4Z+WICVzIOGfliDhnpbhn5LhnprhnpjhnrbhnpMgLSBjb25mZmlsZSBgJS4yNTBzJyDhnorhn4Thn4fhnp/hn5LhnprhnrbhnpnigIvhnpHhn4Xhnojhn5Lhnpjhn4Thn4figIvhnq/hnoDhnp/hnrbhnprigIvhnorhn4LhnpvigIvhnpThn5Lhnprhn4LhnoDhn5LhnpvhnrbhnpllXG4iCisiIChgJXMnIOGeguGeuuGeh+GetiBzeW1saW5rIOGekeGfhSBgJXMnKVxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDYwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogY29uZmZpbGUgJyUuMjUwcycgaXMgbm90IGEgcGxhaW4gZmlsZSBvciBzeW1saW5rICg9ICclcycpIgorbXNnc3RyICIiCisiZHBrZyDhn5YgJXMg4Z+WIOGeluGfkuGemuGemOGetuGekyAtIGNvbmZmaWxlIGAlLjI1MHMnIOGemOGet+Gek+GemOGfguGek+Geh+GetuKAi+Ger+GegOGen+GetuGemuGekuGemOGfkuGemOGej+GetiDhnqwgc3ltbGluayAoPSBgJXMnKVxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDg2Cittc2dpZCAibWQ1aGFzaCIKK21zZ3N0ciAibWQ1aGFzaCIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQ5MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IHVuYWJsZSB0byBvcGVuIGNvbmZmaWxlICVzIGZvciBoYXNoOiAlcyIKK21zZ3N0ciAiZHBrZyDhn5YgJXMg4Z+WIOGeluGfkuGemuGemOGetuGekyAtIOGemOGet+Gek+GeouGetuGeheKAi+GelOGevuGegCBjb25mZmlsZSAlcyDhnp/hnpjhn5LhnprhnrbhnpThn4vigIvhnpfhnrbhnpbigIvhnprhnrbhnpnhnpThn4nhnrbhnpnhnpThnrbhnpPhnqHhnr7hnpkg4Z+WICVzXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo1MjIgc3JjL2NvbmZpZ3VyZS5jOjUyNgorbXNnaWQgImNvbmZmaWxlIGRpZmZlcmVuY2UgdmlzdWFsaXplciIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NTQzCittc2dpZCAiVHlwZSBgZXhpdCcgd2hlbiB5b3UncmUgZG9uZS5cbiIKK21zZ3N0ciAi4Z6c4Z624Z6ZIGBleGl0JyDhnpPhn4XigIvhnpbhn4HhnpvigIvhnorhn4LhnpvigIvhnqLhn5LhnpPhnoDigIvhnpThnrbhnpPigIvhnpLhn5Lhnpzhnr7igIvhnprhnr3hnoXhnprhnrbhnpvhn4vCoOGflFxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NTUyIHNyYy9jb25maWd1cmUuYzo1NTYKK21zZ2lkICJjb25mZmlsZSBzaGVsbCIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjAyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJDb25maWd1cmF0aW9uIGZpbGUgYCVzJyIKK21zZ3N0ciAiIgorIlxuIgorIuGer+GegOGen+GetuGemuKAi+GegOGfhuGejuGej+Gfi+KAi+GemuGeheGek+GetuGen+GemOGfkuGeluGfkOGek+GfkuGekiBgJXMnIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjA0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAoYWN0dWFsbHkgYCVzJykiCittc2dzdHIgIiAo4Z6H4Z624oCL4Z6A4Z624Z6a4oCL4Z6W4Z634Z6PIGAlcycpIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjA4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgPT0+IEZpbGUgb24gc3lzdGVtIGNyZWF0ZWQgYnkgeW91IG9yIGJ5IGEgc2NyaXB0LlxuIgorIiA9PT4gRmlsZSBhbHNvIGluIHBhY2thZ2UgcHJvdmlkZWQgYnkgcGFja2FnZSBtYWludGFpbmVyLlxuIgorbXNnc3RyICIiCisiXG4iCisiID09PiDhnq/hnoDhnp/hnrbhnprigIvhnpvhnr7igIvhnpThn5Lhnprhnpbhn5DhnpPhn5LhnpLigIvhnpThnrbhnpPigIvhnpThnoThn5LhnoDhnr7hno/igIvhnorhn4ThnpnigIvhnqLhn5LhnpPhnoAg4Z6s4oCL4Z6K4Z+E4Z6Z4oCL4Z6f4Z+S4Z6C4Z+S4Z6a4Z644Z6UwqDhn5RcbiIKKyIgPT0+IOGer+GegOGen+GetuGemuKAi+Gek+GfheKAi+GegOGfkuGek+Geu+GehOKAi+GegOGeieGfkuGeheGelOGfi+KAi+GegOGfj+KAi+GelOGetuGek+KAi+GeleGfkuGeiuGem+Gfi+KAi+GeiuGfhOGemeKAi+GeouGfkuGek+GegOKAi+GekOGfguGekeGetuGfhuKAi+GeleGehOGeiuGfguGemsKg4Z+UXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiAgICAgTm90IG1vZGlmaWVkIHNpbmNlIGluc3RhbGxhdGlvbi5cbiIKK21zZ3N0ciAiIgorIlxuIgorIiAgICAg4Z6Y4Z634Z6T4oCL4Z6U4Z624Z6T4oCL4Z6A4Z+C4Z6U4Z+S4Z6a4Z+CIOGej+GetuGfhuGehOGeluGeuOKAi+GeiuGfhuGeoeGevuGehMKg4Z+UXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiA9PT4gTW9kaWZpZWQgKGJ5IHlvdSBvciBieSBhIHNjcmlwdCkgc2luY2UgaW5zdGFsbGF0aW9uLlxuIgorbXNnc3RyICIiCisiXG4iCisiID09PiDhnpThnrbhnpPigIvhnoDhn4LhnpThn5Lhnprhn4IgKOGeiuGfhOGemeKAi+GeouGfkuGek+GegCDhnqzigIvhnorhn4ThnpnigIvhnp/hn5LhnoLhn5LhnprhnrjhnpQpIOGej+GetuGfhuGehOKAi+GeluGeuOKAi+GeiuGfhuGeoeGevuGehMKg4Z+UXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiA9PT4gRGVsZXRlZCAoYnkgeW91IG9yIGJ5IGEgc2NyaXB0KSBzaW5jZSBpbnN0YWxsYXRpb24uXG4iCittc2dzdHIgIiIKKyJcbiIKKyIgPT0+IOGelOGetuGek+KAi+Gem+Geu+GelCAo4Z6K4Z+E4Z6Z4oCL4Z6i4Z+S4Z6T4Z6AIOGerOKAi+GeiuGfhOGemeKAi+Gen+GfkuGeguGfkuGemuGeuOGelCkg4Z6P4Z624Z+G4Z6E4oCL4Z6W4Z644oCL4Z6K4Z+G4Z6h4Z6+4Z6EwqDhn5RcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYxOQorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IFBhY2thZ2UgZGlzdHJpYnV0b3IgaGFzIHNoaXBwZWQgYW4gdXBkYXRlZCB2ZXJzaW9uLlxuIgorbXNnc3RyICIgPT0+IOGeouGfkuGek+GegOKAi+GeheGfguGegOGeheGetuGemeKAi+GegOGeieGfkuGeheGelOGfi+KAi+GelOGetuGek+KAi+GelOGeieGfkuGeh+GevOGek+KAi+GegOGfhuGejuGfguKAi+GeiuGfguGem+KAi+GelOGetuGek+KAi+GekuGfkuGenOGevuKAi+GesuGfkuGemeKAi+GekeGetuGek+Gfi+KAi+GemOGeveGemcKg4Z+UXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAgICBWZXJzaW9uIGluIHBhY2thZ2UgaXMgdGhlIHNhbWUgYXMgYXQgbGFzdCBpbnN0YWxsYXRpb24uXG4iCittc2dzdHIgIiAgICAg4Z6A4Z+G4Z6O4Z+C4oCL4Z6T4Z+F4oCL4Z6A4Z+S4Z6T4Z674Z6E4oCL4Z6A4Z6J4Z+S4Z6F4Z6U4Z+L4oCL4Z6C4Z664oCL4Z6K4Z684Z6F4Z6C4Z+S4Z6T4Z624oCL4Z6T4Z654Z6E4oCL4Z6A4Z+G4Z6O4Z+C4oCL4Z6K4Z+G4Z6h4Z6+4Z6E4oCL4Z6F4Z674Z6E4oCL4Z6A4Z+S4Z6a4Z+E4Z6ZwqDhn5RcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYyOAorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IFVzaW5nIG5ldyBmaWxlIGFzIHlvdSByZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiA9PT4g4oCL4Z6U4Z+S4Z6a4Z6+4oCL4Z6v4Z6A4Z6f4Z624Z6a4oCL4Z6Q4Z+S4Z6Y4Z644oCL4Z6K4Z684Z6F4oCL4Z6K4Z+C4Z6b4oCL4Z6i4Z+S4Z6T4Z6A4oCL4Z6U4Z624Z6T4oCL4Z6f4Z+S4Z6T4Z6+wqDhn5RcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYzMgorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IFVzaW5nIGN1cnJlbnQgb2xkIGZpbGUgYXMgeW91IHJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiID09PiDigIvhnpThn5Lhnprhnr7igIvhnq/hnoDhnp/hnrbhnprigIvhnoXhnrbhnp/hn4vigIvhnpThnoXhn5LhnoXhnrvhnpThn5LhnpThnpPhn5LhnpPigIvhnorhnrzhnoXigIvhnorhn4LhnpvigIvhnqLhn5LhnpPhnoDigIvhnpThnrbhnpPigIvhnp/hn5LhnpPhnr7CoOGflFxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjQxCisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gS2VlcGluZyBvbGQgY29uZmlnIGZpbGUgYXMgZGVmYXVsdC5cbiIKK21zZ3N0ciAiID09PiDhnprhnoDhn5Lhnp/hnrbhnpHhnrvhnoDigIvhnq/hnoDhnp/hnrbhnprigIvhnoDhn4bhno7hno/hn4vigIvhnprhnoXhnpPhnrbhnp/hnpjhn5Lhnpbhn5DhnpPhn5LhnpLigIvhnoXhnrbhnp/hn4vigIvhnofhnrbigIvhnpvhn4bhnpPhnrbhn4bhnorhnr7hnpjCoOGflFxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gVXNpbmcgbmV3IGNvbmZpZyBmaWxlIGFzIGRlZmF1bHQuXG4iCittc2dzdHIgIiA9PT4g4Z6U4Z+S4Z6a4Z6+4oCL4Z6v4Z6A4Z6f4Z624Z6a4oCL4Z6A4Z+G4Z6O4Z6P4Z+L4oCL4Z6a4Z6F4Z6T4Z624oCL4Z6f4oCL4Z6Y4Z+S4Z6W4Z+Q4Z6T4Z+S4Z6S4oCL4Z6Q4Z+S4Z6Y4Z644oCL4Z6H4Z624oCL4Z6b4Z+G4Z6T4Z624Z+G4Z6K4Z6+4Z6YwqDhn5RcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY1MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIiAgIFdoYXQgd291bGQgeW91IGxpa2UgdG8gZG8gYWJvdXQgaXQgPyAgWW91ciBvcHRpb25zIGFyZTpcbiIKKyIgICAgWSBvciBJICA6IGluc3RhbGwgdGhlIHBhY2thZ2UgbWFpbnRhaW5lcidzIHZlcnNpb25cbiIKKyIgICAgTiBvciBPICA6IGtlZXAgeW91ciBjdXJyZW50bHktaW5zdGFsbGVkIHZlcnNpb25cbiIKKyIgICAgICBEICAgICA6IHNob3cgdGhlIGRpZmZlcmVuY2VzIGJldHdlZW4gdGhlIHZlcnNpb25zXG4iCisiICAgICAgWiAgICAgOiBzdGFydCBhIHNoZWxsIHRvIGV4YW1pbmUgdGhlIHNpdHVhdGlvblxuIgorbXNnc3RyICIiCisiICAg4Z6P4Z6+4oCL4Z6i4Z+S4Z6T4Z6A4oCL4Z6F4Z6E4Z+L4Z6S4Z+S4Z6c4Z6+4oCL4Z6i4Z+S4Z6c4Z644oCL4Z6i4Z+G4Z6W4Z644oCL4Z6c4Z62wqA/ICDhnofhnpjhn5Lhnprhnr7hnp/igIvhnprhnpThnp/hn4vigIvhnqLhn5LhnpPhnoDigIvhnoLhnrrCoOGfllxuIgorIiAgICBZIOGerCBJICDCoOGfliDhnorhn4bhnqHhnr7hnoTigIvhnoDhn4bigIvhno7hn4LhnprhnpTigIvhnp/hn4vhnqLhn5LhnpPigIvhnoDhnpDhn4LigIvhnpHhnrbhn4bhnoDhnonhn5LhnoXhnpThn4tcbiIKKyIgICAgTiDhnqwgTyAgwqDhn5Yg4Z6a4Z6A4Z+S4Z6f4Z624Z6R4Z674Z6A4oCL4Z6A4Z+G4Z6O4Z+C4oCL4Z6K4Z+C4Z6b4oCL4Z6U4Z624Z6T4oCL4Z6K4Z+G4Z6h4Z6+4Z6E4oCL4Z6U4Z6F4Z+S4Z6F4Z674Z6U4Z+S4Z6U4Z6T4Z+S4Z6T4oCL4Z6a4Z6U4Z6f4Z+L4oCL4Z6i4Z+S4Z6T4Z6AXG4iCisiICAgICAgRCAgICAgwqDhn5Yg4Z6U4Z6E4Z+S4Z6g4Z624Z6J4oCL4Z6X4Z624oCL4Z6W4Z6B4Z674oCL4Z6f4oCL4Z6C4Z+S4Z6T4Z624Z6a4oCL4Z6c4Z624Z6E4Z6A4Z+G4Z6O4Z+C4Z6R4Z624Z+G4Z6E4Z6T4Z+E4Z+HXG4iCisiICAgICAgWiAgICAgwqDhn5Yg4Z6V4Z+S4Z6R4Z+D4oCL4Z6B4Z624Z6E4oCL4Z6A4Z+S4Z6a4Z+E4Z6ZIOGenOGetuKAi+GeiuGfhuGejuGevuGemuGegOGetuGemuKAi+GeiuGevuGemOGfkuGelOGeuOKAi+GeluGet+Gek+Get+Gej+GfkuGemeKAi+GemOGevuGem+KAi+Gen+GfkuGekOGetuGek+Gel+GetuGellxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjU5CisjLCBjLWZvcm1hdAorbXNnaWQgIiBUaGUgZGVmYXVsdCBhY3Rpb24gaXMgdG8ga2VlcCB5b3VyIGN1cnJlbnQgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIOGen+GegOGemOGfkuGemOGel+GetuGeluKAi+Gem+GfhuGek+GetuGfhuGeiuGevuGemOKAi+GeguGeuuKAi+Gej+GfkuGemuGevOGenOKAi+GemuGegOGfkuGen+GetuKAi+GegOGfhuGejuGfguKAi+GelOGeheGfkuGeheGeu+GelOGfkuGelOGek+GfkuGek+KAi+GemuGelOGen+Gfi+KAi+GeouGfkuGek+GegMKg4Z+UXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIFRoZSBkZWZhdWx0IGFjdGlvbiBpcyB0byBpbnN0YWxsIHRoZSBuZXcgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIOGen+GegOGemOGfkuGemOGel+GetuGeluKAi+Gem+GfhuGek+GetuGfhuGeiuGevuGemOKAi+GeguGeuuKAi+Gej+GfkuGemuGevOGenOKAi+GeiuGfhuGeoeGevuGehOKAi+GegOGfhuGejuGfguKAi+GekOGfkuGemOGeuMKg4Z+UXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NjYKK21zZ2lkICJbZGVmYXVsdD1OXSIKK21zZ3N0ciAiW+Gem+GfhuGek+GetuGfhuGeiuGevuGemOKAiz1OXSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY2NworbXNnaWQgIltkZWZhdWx0PVldIgorbXNnc3RyICJb4Z6b4Z+G4Z6T4Z624Z+G4Z6K4Z6+4Z6Y4oCLPVldIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjY4Cittc2dpZCAiW25vIGRlZmF1bHRdIgorbXNnc3RyICJb4Z6C4Z+S4Z6Y4Z624Z6T4oCL4Z6b4Z+G4Z6T4Z624Z+G4oCL4Z6K4Z6+4Z6Y4oCLXSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY3MQorbXNnaWQgImVycm9yIHdyaXRpbmcgdG8gc3RkZXJyLCBkaXNjb3ZlcmVkIGJlZm9yZSBjb25mZmlsZSBwcm9tcHQiCittc2dzdHIgIuGfiyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY4MAorbXNnaWQgInJlYWQgZXJyb3Igb24gc3RkaW4gYXQgY29uZmZpbGUgcHJvbXB0IgorbXNnc3RyICLhnqLhnrbhnpPigIvhnoDhn4bhnqDhnrvhnp/igIvhnpPhn4Xhnpvhnr7igIsgc3RkaW4g4Z6T4Z+F4oCL4Z6U4Z+S4Z6a4Z6i4Z6U4Z+L4oCL4Z6U4Z6J4Z+S4Z6F4Z684Z6bIGNvbmZmaWxlIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjgxCittc2dpZCAiRU9GIG9uIHN0ZGluIGF0IGNvbmZmaWxlIHByb21wdCIKK21zZ3N0ciAiRU9GIOGek+GfheGem+GeviBzdGRpbiDhnpPhn4XhnpThn5LhnprhnqLhnpThn4vigIvhnpThnonhn5LhnoXhnrzhnpsgY29uZmZpbGUiCisKKyM6IHNyYy9kZXBjb24uYzoxNzUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzIGRlcGVuZHMgb24gJXMiCittc2dzdHIgIuGeouGetuGen+GfkuGemuGfkOGemeKAi+Gem+GevuKAiyIKKworIzogc3JjL2RlcGNvbi5jOjE3OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXMgcHJlLWRlcGVuZHMgb24gJXMiCittc2dzdHIgIiDhnpfhnrbhnpbhnqLhnrbhnp/hn5Lhnprhn5DhnpnigIvhnofhnrbhnpjhnrvhnpPigIvhnpPhn4Xhnpvhnr4gIgorCisjOiBzcmMvZGVwY29uLmM6MTgxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlcyByZWNvbW1lbmRzICVzIgorbXNnc3RyICIg4Z6V4Z+S4Z6K4Z6b4Z+L4Z6i4Z6T4Z674Z6f4Z624Z6f4Z6T4Z+NICIKKworIzogc3JjL2RlcGNvbi5jOjE4NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXMgc3VnZ2VzdHMgJXMiCittc2dzdHIgIiDhnpXhn5Lhnorhnpvhn4vhnpnhn4ThnpThnpvhn4sgIgorCisjOiBzcmMvZGVwY29uLmM6MTg3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlcyBicmVha3MgJXMiCittc2dzdHIgIiDhnpThn4bhnpThn4LhnoAgIgorCisjOiBzcmMvZGVwY29uLmM6MTkwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlcyBjb25mbGljdHMgd2l0aCAlcyIKK21zZ3N0ciAiIOGelOGfieGfh+GekeGehOGfkuGeguGet+GeheKAi+Geh+GetuGemOGeveGemeKAi+Gek+GeueGehCAiCisKKyM6IHNyYy9kZXBjb24uYzoxOTMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzIGVuaGFuY2VzICVzIgorbXNnc3RyICIg4Z6U4Z6T4Z+S4Z6Q4Z+C4Z6YICIKKworIzogc3JjL2RlcGNvbi5jOjI5NgorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyDhnpjhnrfhnpPigIvhno/hn5LhnprhnrzhnpzigIvhnpThnrbhnpPigIvhnpnhnoDhnoXhn4HhnonigIvhnpHhn4HCoOGflFxuIgorCisjOiBzcmMvZGVwY29uLmM6Mjk5CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHRvIGJlIGRlY29uZmlndXJlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMg4Z6P4Z+S4Z6a4Z684Z6c4Z6P4Z+C4Z6U4Z624Z6T4Z6A4Z+G4Z6O4Z6P4Z+L4Z6a4Z6F4Z6T4Z624Z6f4Z6Y4Z+S4Z6W4Z+Q4Z6T4Z+S4Z6SwqDhn5RcbiIKKworIzogc3JjL2RlcGNvbi5jOjMwNAorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB0byBiZSBpbnN0YWxsZWQsIGJ1dCBpcyB2ZXJzaW9uICUuMjUwcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMg4Z6P4Z+S4Z6a4Z684Z6c4oCL4Z6P4Z+C4oCL4Z6U4Z624Z6T4oCL4Z6K4Z+G4Z6h4Z6+4Z6EIOGelOGfieGeu+Gek+GfkuGej+GfguKAi+GeguGeuuKAi+Geh+GetuKAi+GegOGfhuGejuGfgiAlLjI1MHPCoOGflFxuIgorCisjOiBzcmMvZGVwY29uLmM6MzE0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIGluc3RhbGxlZCwgYnV0IGlzIHZlcnNpb24gJS4yNTBzLlxuIgorbXNnc3RyICIgICUuMjUwcyDhno/hn5LhnprhnrzhnpzigIvhno/hn4LigIvhnpThnrbhnpPigIvhnorhn4bhnqHhnr7hnoQg4Z6U4Z+J4Z674Z6T4Z+S4Z6P4Z+C4oCL4Z6C4Z664oCL4Z6H4Z624oCL4Z6A4Z+G4Z6O4Z+CICUuMjUwc8Kg4Z+UXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdW5wYWNrZWQsIGJ1dCBoYXMgbmV2ZXIgYmVlbiBjb25maWd1cmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyDhno/hn5LhnprhnrzhnpzigIvhnpThnrbhnpPigIvhnpbhnpPhn5LhnpvhnrYg4Z6U4Z+J4Z674Z6T4Z+S4Z6P4Z+C4oCL4Z6Y4Z634Z6T4oCL4Z6K4Z+C4Z6b4oCL4Z6P4Z+S4Z6a4Z684Z6c4oCL4Z6U4Z624Z6T4oCL4Z6A4Z+G4Z6O4Z6P4Z+L4oCL4Z6a4Z6F4Z6T4Z624Z6f4Z6Y4Z+S4Z6W4Z+Q4Z6T4Z+S4Z6S4oCL4Z6R4Z+BwqDhn5RcbiIKKworIzogc3JjL2RlcGNvbi5jOjMzNworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB1bnBhY2tlZCwgYnV0IGlzIHZlcnNpb24gJS4yNTBzLlxuIgorbXNnc3RyICIgICUuMjUwcyDhno/hn5LhnprhnrzhnpzigIvhnpThnrbhnpPigIvhnpbhnpPhn5LhnpvhnrYg4Z6U4Z+J4Z674Z6T4Z+S4Z6P4Z+C4oCL4Z6C4Z664oCL4Z6H4Z624oCL4Z6A4Z+G4Z6O4Z+CICUuMjUwc8Kg4Z+UXG4iCisKKyM6IHNyYy9kZXBjb24uYzozNDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgbGF0ZXN0IGNvbmZpZ3VyZWQgdmVyc2lvbiBpcyAlLjI1MHMuXG4iCittc2dzdHIgIiAgJS4yNTBzIOGegOGfhuGejuGfguKAi+GeiuGfguGem+KAi+GelOGetuGek+KAi+GegOGfhuGejuGej+Gfi+KAi+GemuGeheGek+GetuGen+GemOGfkuGeluGfkOGek+GfkuGekuKAi+GeheGeu+GehOKAi+GegOGfkuGemuGfhOGemeKAi+GeguGeuiAlLjI1MHPCoOGflFxuIgorCisjOiBzcmMvZGVwY29uLmM6MzUzCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzICVzLlxuIgorbXNnc3RyICIgICUuMjUwcyDhnoLhnrrhnofhnrYgJXPCoOGflFxuIgorCisjOiBzcmMvZGVwY29uLmM6Mzg4CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBidXQgaXMgdG8gYmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMg4Z6V4Z+S4Z6K4Z6b4Z+LICUuMjUwcyDhnpThn4nhnrvhnpPhn5Lhno/hn4LigIvhno/hn5Lhnprhnrzhnpzhno/hn4LigIvhnpThnrbhnpPigIvhnpnhnoDigIvhnoXhn4HhnonCoOGflFxuIgorCisjOiBzcmMvZGVwY29uLmM6MzkyCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBidXQgaXMgdG8gYmUgZGVjb25maWd1cmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyDhnpXhn5Lhnorhnpvhn4sgJS4yNTBzIOGelOGfieGeu+Gek+GfkuGej+GfguKAi+Gej+GfkuGemuGevOGenOGej+GfguKAi+GelOGetuGek+KAi+GegOGfhuGejuGej+Gfi+KAi+GemuGeheGek+GetuGen+GemOGfkuGeluGfkOGek+GfkuGeksKg4Z+UXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0MDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGJ1dCBpcyAlcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMg4Z6V4Z+S4Z6K4Z6b4Z+LICUuMjUwcyDhnpThn4nhnrvhnpPhn5Lhno/hn4LhnofhnrYgJXPCoOGflFxuIgorCisjOiBzcmMvZGVwY29uLmM6NDE1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIG5vdCBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIOGemOGet+Gek+KAi+Gej+GfkuGemuGevOGenOKAi+GelOGetuGek+KAi+GeiuGfhuGeoeGevuGehMKg4Z+UXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgKHZlcnNpb24gJS4yNTBzKSBpcyB0byBiZSBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzICjhnoDhn4bhno7hn4IgJS4yNTBzKSDhno/hn5Lhnprhnrzhnpzhno/hn4LigIvhnpThnrbhnpPigIvhnorhn4bhnqHhnr7hnoTCoOGflFxuIgorCisjOiBzcmMvZGVwY29uLmM6NDY4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyAodmVyc2lvbiAlLjI1MHMpIGlzIHByZXNlbnQgYW5kICVzLlxuIgorbXNnc3RyICIgICUuMjUwcyAo4Z6A4Z+G4Z6O4Z+CICUuMjUwcykg4Z6C4Z664Z6H4Z62ICVzwqDhn5RcbiIKKworIzogc3JjL2RlcGNvbi5jOjQ5NQorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYW5kIGlzIHRvIGJlIGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMg4Z6V4Z+S4Z6K4Z6b4Z+LICUuMjUwcyDhnpPhnrfhnoTigIvhno/hn5Lhnprhnrzhnpzhno/hn4LigIvhnpThnrbhnpPigIvhnorhn4bhnqHhnr7hnoTCoOGflFxuIgorCisjOiBzcmMvZGVwY29uLmM6NTM3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYW5kIGlzIHByZXNlbnQgYW5kICVzLlxuIgorbXNnc3RyICIgICUuMjUwcyDhnpXhn5Lhnorhnpvhn4sgJS4yNTBzIOGek+Get+GehOKAi+GeguGeuuGeh+GetiAlc8Kg4Z+UXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MAorIywgZnV6enkKK21zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IGRpdmVydGluZyBmaWxlcy4iCittc2dzdHIgIuGenOGetuGemSBkcGtnLXNwbGl0IC0taGVscCDhnp/hnpjhn5LhnprhnrbhnpThn4vigIvhnofhnrbigIvhnofhn4bhnpPhnr3hnpnCoOGflCIKKworIzogc3JjL2RpdmVydGNtZC5jOjY2IHNyYy9zdGF0Y21kLmM6NTcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjgwCisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiAlcyB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICLhnorhn4HhnpThn4DhnpMgJXMg4Z6A4Z+G4Z6O4Z+CICVzwqDhn5RcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjcwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiXG4iCisjfCAiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorI3wgIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uIgorbXNnaWQgIiIKKyJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMTAgR3VpbGxlbSBKb3Zlci5cbiIKK21zZ3N0ciAiIgorIlxuIgorIuGemuGegOGfkuGen+GetuGen+Get+GekeGfkuGekuGet+GehuGfkuGek+GetuGfhiDhn6Hhn6nhn6nhn6Ug4Z6K4Z+E4Z6ZIElhbiBKYWNrc29uwqDhn5RcbiIKKyLhnprhnoDhn5Lhnp/hnrbhnp/hnrfhnpHhn5LhnpLhnrfhnobhn5LhnpPhnrbhn4Yg4Z+i4Z+g4Z+g4Z+gLeGfouGfoOGfoOGfoSDhnorhn4ThnpkgV2ljaGVydCBBa2tlcm1hbsKg4Z+UIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NzUgc3JjL21haW4uYzo2MyBzcmMvcXVlcnljbWQuYzo2MDMgc3JjL3N0YXRjbWQuYzo2NQorIzogc3JjL3RyaWdjbWQuYzo1NSBkcGtnLWRlYi9tYWluLmM6NTcgZHBrZy1zcGxpdC9tYWluLmM6NTEKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo4OQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgb3JcbiIKKyJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKK21zZ3N0ciAiIgorIlxuIgorIuGek+GfgeGfh+KAi+Geh+GetuKAi+GegOGemOGfkuGemOGenOGet+GekuGeuOKAi+GepeGej+KAi+GeguGet+Gej+KAi+GekOGfkuGem+GfgyDhnpjhnr7hnpsgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2Ug4Z6A4Z+G4Z6O4Z+CIOGfoiDhnqxcbiIKKyLhnpDhn5LhnpjhnrjigIvhnofhnrbhnoTigIvhnpPhn4Hhn4figIvhnorhnr7hnpjhn5LhnpThnrjigIvhnpvhnoDhn5LhnoHhnoHhn5Dhno7hn5LhnozigIvhnoXhnpjhn5LhnpvhnoTCoOGflCDhnoLhn5LhnpjhnrbhnpPigIvhnoDhnrbhnprigIvhnpLhnrbhnpPhnrbigIvhnpHhn4HCoOGflFxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6ODcgc3JjL21haW4uYzo4MSBzcmMvcXVlcnljbWQuYzo2MTUgc3JjL3N0YXRjbWQuYzo3NworIzogZHBrZy1kZWIvbWFpbi5jOjY5IGRwa2ctc3BsaXQvbWFpbi5jOjYzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo5NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIDxjb21tYW5kPlxuIgorIlxuIgorbXNnc3RyICIiCisi4Z6a4Z6U4Z+A4Z6U4oCL4Z6U4Z+S4Z6a4Z6+wqDhn5YgJXMgWzzhnofhnpjhn5Lhnprhnr7hnp8+IC4uLl0gPOGeluGetuGegOGfkuGemeGelOGeieGfkuGeh+Getj5cbiIKKyJcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjkxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIFstLWFkZF0gPGZpbGU+ICAgICAgICAgICBhZGQgYSBkaXZlcnNpb24uXG4iCisiICAtLXJlbW92ZSA8ZmlsZT4gICAgICAgICAgcmVtb3ZlIHRoZSBkaXZlcnNpb24uXG4iCisiICAtLWxpc3QgWzxnbG9iLXBhdHRlcm4+XSAgc2hvdyBmaWxlIGRpdmVyc2lvbnMuXG4iCisiICAtLWxpc3RwYWNrYWdlIDxmaWxlPiAgICAgc2hvdyB3aGF0IHBhY2thZ2UgZGl2ZXJ0cyB0aGUgZmlsZS5cbiIKKyIgIC0tdHJ1ZW5hbWUgPGZpbGU+ICAgICAgICByZXR1cm4gdGhlIGRpdmVydGVkIGZpbGUuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjEwMAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLXBhY2thZ2UgPHBhY2thZ2U+ICAgICAgbmFtZSBvZiB0aGUgcGFja2FnZSB3aG9zZSBjb3B5IG9mIDxmaWxlPiB3aWxsICIKKyJub3RcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJlIGRpdmVydGVkLlxuIgorIiAgLS1sb2NhbCAgICAgICAgICAgICAgICAgIGFsbCBwYWNrYWdlcycgdmVyc2lvbnMgYXJlIGRpdmVydGVkLlxuIgorIiAgLS1kaXZlcnQgPGRpdmVydC10bz4gICAgIHRoZSBuYW1lIHVzZWQgYnkgb3RoZXIgcGFja2FnZXMnIHZlcnNpb25zLlxuIgorIiAgLS1yZW5hbWUgICAgICAgICAgICAgICAgIGFjdHVhbGx5IG1vdmUgdGhlIGZpbGUgYXNpZGUgKG9yIGJhY2spLlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIHNldCB0aGUgZGlyZWN0b3J5IHdpdGggdGhlIGRpdmVyc2lvbnMgZmlsZS5cbiIKKyIgIC0tdGVzdCAgICAgICAgICAgICAgICAgICBkb24ndCBkbyBhbnl0aGluZywganVzdCBkZW1vbnN0cmF0ZS5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBxdWlldCBvcGVyYXRpb24sIG1pbmltYWwgb3V0cHV0LlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIuGemuGelOGfgOGelOGelOGfkuGemuGevsKg4Z+WICVzIFs8b3B0aW9uPiAuLi5dIDzhnpbhnrbhnoDhn5LhnpnhnpThnonhn5LhnofhnrY+XG4iCisiXG4iCisi4Z6W4Z624Z6A4Z+S4Z6Z4Z6U4Z6J4Z+S4Z6H4Z62wqDhn5ZcbiIKKyIgIFstLWFkZF0gPGZpbGU+ICAgICAgICAgICDhnpThnpPhn5LhnpDhn4LhnpjigIvhnoDhnrbhnprigIvhnpThnoThn5Lhnpzhn4LhnprCoOGflFxuIgorIiAgLS1yZW1vdmUgPGZpbGU+ICAgICAgICAgIOGemeGegOKAi+GegOGetuGemuKAi+GelOGehOGfkuGenOGfguGemuKAi+GeheGfgeGeicKg4Z+UXG4iCisiICAtLWxpc3QgWzxnbG9iLXBhdHRlcm4+XSAg4Z6U4Z6E4Z+S4Z6g4Z624Z6J4oCL4Z6A4Z624Z6a4oCL4Z6U4Z6E4Z+S4Z6c4Z+C4Z6a4oCL4Z6v4Z6A4Z6f4Z624Z6awqDhn5RcbiIKKyIgIC0tdHJ1ZW5hbWUgPGZpbGU+ICAgICAgICDhno/hn5LhnprhnqHhnpThn4vigIvhnq/hnoDhnp/hnrbhnprigIvhnorhn4LhnpvigIvhnpThnrbhnpPigIvhnpThnoThn5Lhnpzhn4LhnprCoOGflFxuIgorIlxuIgorIuGeh+GemOGfkuGemuGevuGen8Kg4Z+WXG4iCisiICAtLXBhY2thZ2UgPHBhY2thZ2U+ICAgICAg4Z6I4Z+S4Z6Y4Z+E4Z+H4oCL4Z6a4Z6U4Z6f4Z+L4oCL4Z6A4Z6J4Z+S4Z6F4Z6U4Z+L4oCL4Z6K4Z+C4Z6b4oCL4Z6F4Z+S4Z6U4Z624Z6U4Z+L4oCL4oCL4Z6F4Z6Y4Z+S4Z6b4Z6E4oCL4Z6a4Z6U4Z6f4Z+L4oCL4Z6c4Z62IDxmaWxlPiDhnpPhnrnhnoTigIvhnpjhnrfhnpNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIOGej+GfkuGemuGevOGenOKAi+GelOGetuGek+KAi+GelOGehOGfkuGenOGfguGemsKg4Z+UXG4iCisiICAtLWxvY2FsICAgICAgICAgICAgICAgICAg4Z6A4Z+G4Z6O4Z+C4oCL4Z6a4Z6U4Z6f4Z+L4oCL4Z6A4Z6J4Z+S4Z6F4Z6U4Z+L4oCL4Z6R4Z624Z+G4Z6E4Z6i4Z6f4Z+L4oCL4Z6P4Z+S4Z6a4Z684Z6c4oCL4Z6U4Z624Z6T4oCL4Z6U4Z6E4Z+S4Z6c4Z+C4Z6awqDhn5RcbiIKKyIgIC0tZGl2ZXJ0IDxkaXZlcnQtdG8+ICAgICDhnojhn5Lhnpjhn4Thn4figIvhnpThnrbhnpPigIvhnpThn5Lhnprhnr7igIvhnorhn4ThnpnigIvhnoDhn4bhno7hn4LigIvhnprhnpThnp/hn4vigIvhnoDhnonhn5LhnoXhnpThn4vigIvhnpXhn5Lhnp/hn4HhnoTigIvhnpHhn4Dhno/CoOGflFxuIgorIiAgLS1yZW5hbWUgICAgICAgICAgICAgICAgIOGeluGet+Gej+KAi+Geh+GetuKAi+GeleGfkuGem+GetuGen+Gfi+GekeGeuOKAi+GeleGfkuGek+GfguGegOKAi+GemuGelOGen+Gfi+KAi+Ger+GegOGen+GetuGemiAo4Z6sIOGekOGemeGegOGfkuGemuGfhOGemSnCoOGflFxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIOGegOGfhuGejuGej+Gfi+KAi+GekOGej+KAi+GeiuGfguGem+KAi+GemOGetuGek+KAi+Ger+GegOGen+GetuGemuKAi+GelOGehOGfkuGenOGfguGemsKg4Z+UXG4iCisiICAtLXRlc3QgICAgICAgICAgICAgICAgICAg4Z6A4Z674Z+G4oCL4Z6S4Z+S4Z6c4Z6+4Z6i4Z+S4Z6c4Z644oCL4Z6R4Z624Z+G4Z6E4Z6i4Z6f4Z+LIOGeguGfkuGemuGetuGek+Gfi+KAi+Gej+GfguKAi+GelOGehOGfkuGeoOGetuGeicKg4Z+UXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAg4Z6W4Z634Z6P4oCL4Z6H4Z624oCL4Z6U4Z+S4Z6a4Z6P4Z634Z6U4Z6P4Z+S4Z6P4Z63IOGem+GekeGfkuGekuGeleGem+KAi+GeouGelOGfkuGelOGelOGemuGemOGetsKg4Z+UXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAg4Z6U4Z6E4Z+S4Z6g4Z624Z6J4oCL4Z6f4Z624Z6a4oCL4Z6H4Z+G4Z6T4Z694Z6Z4oCL4Z6T4Z+B4Z+HwqDhn5RcbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICDhnpThnoThn5LhnqDhnrbhnonigIvhnoDhn4bhno7hn4LCoOGflFxuIgorIlxuIgorIuGek+GfheKAi+GeluGfgeGem+KAi+GelOGek+GfkuGekOGfguGemCDhnpvhn4bhnpPhnrbhn4bhnorhnr7hnpjigIvhnoLhnrogLS1sb2NhbCDhnpPhnrfhnoQgLS1kaXZlcnQgPG9yaWdpbmFsPi5kaXN0cmliwqDhn5RcbiIKKyLhnpPhn4XigIvhnpbhn4HhnpvigIvhnpnhnoDhnoXhn4HhnokgLS1wYWNrYWdlIOGerCAtLWxvY2FsIOGek+Get+GehCAtLWRpdmVydCDhno/hn5Lhnprhnrzhnpzhno/hn4LigIvhnpXhn5LhnoLhnrzhnpXhn5LhnoLhnoQg4Z6U4Z+S4Z6a4Z6f4Z634Z6T4oCL4Z6U4Z6+4oCL4Z6U4Z624Z6T4oCL4Z6U4Z6J4Z+S4Z6H4Z624Z6A4Z+LwqDhn5RcbiIKKyLhnp/hn5LhnoLhn5LhnprhnrjhnpTigIvhnoDhnonhn5LhnoXhnpThn4sgcHJlaW5zdC9wb3N0cm0g4Z6C4Z694Z6a4Z6P4Z+C4oCL4Z6U4Z6J4Z+S4Z6H4Z624oCL4Z6H4Z624oCL4Z6T4Z634Z6F4Z+S4Z6FIC0tcGFja2FnZSDhnpPhnrfhnoQgLS1kaXZlcnTCoOGflFxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJXaGVuIGFkZGluZywgZGVmYXVsdCBpcyAtLWxvY2FsIGFuZCAtLWRpdmVydCA8b3JpZ2luYWw+LmRpc3RyaWIuXG4iCisiV2hlbiByZW1vdmluZywgLS1wYWNrYWdlIG9yIC0tbG9jYWwgYW5kIC0tZGl2ZXJ0IG11c3QgbWF0Y2ggaWYgc3BlY2lmaWVkLlxuIgorIlBhY2thZ2UgcHJlaW5zdC9wb3N0cm0gc2NyaXB0cyBzaG91bGQgYWx3YXlzIHNwZWNpZnkgLS1wYWNrYWdlIGFuZCAtLSIKKyJkaXZlcnQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjE2OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZXJyb3IgY2hlY2tpbmcgYCVzJzogJXMiCittc2dpZCAiZXJyb3IgY2hlY2tpbmcgJyVzJyIKK21zZ3N0ciAi4Z6A4Z+G4Z6g4Z674Z6f4oCL4Z6A4Z+S4Z6T4Z674Z6E4oCL4Z6A4Z624Z6a4oCL4Z6W4Z634Z6T4Z634Z6P4Z+S4Z6ZIGAlcyfCoOGfliAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjIwMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisicmVuYW1lIGludm9sdmVzIG92ZXJ3cml0aW5nIGAlcycgd2l0aFxuIgorIiAgZGlmZmVyZW50IGZpbGUgYCVzJywgbm90IGFsbG93ZWQiCittc2dzdHIgIiIKKyLhnpThn5LhnorhnrzhnprigIvhnojhn5Lhnpjhn4Thn4figIvhnpbhnrbhnoDhn4vhnpbhn5DhnpPhn5LhnpLigIvhnpPhnrnhnoTigIvhnoDhnrbhnprigIvhnp/hnprhnp/hn4HhnprigIvhnofhnrbhnpPhn4vigIvhnpvhnr4gYCVzJyDhnorhn4ThnplcbiIKKyIgIOGer+GegOGen+GetuGemuKAi+GeleGfkuGen+GfgeGehCBgJXMnIOGemOGet+Gek+KAi+GelOGetuGek+KAi+GeouGek+Geu+GeieGfkuGeieGetuGejyIKKworIzogc3JjL2RpdmVydGNtZC5jOjIyMyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTM3MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBmaWxlICclcyciCittc2dzdHIgIuGemOGet+Gek+KAi+GeouGetuGeheKAi+GelOGevuGegOKAi+Ger+GegOGen+GetuGemuKAi+GelOGfkuGemuGel+GeliBgJS4yNTBzJyIKKworIzogc3JjL2RpdmVydGNtZC5jOjIyNworbXNnaWQgImZpbGUgY29weSIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjM5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW5ub3Qgc3RhdCBuZXcgbmFtZSBgJXMnOiAlcyIKK21zZ2lkICJjYW5ub3QgcmVuYW1lICclcycgdG8gJyVzJyIKK21zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6F4Z624Z6U4Z+L4Z6V4Z+S4Z6K4Z6+4Z6Y4oCL4Z6I4Z+S4Z6Y4Z+E4Z+H4oCL4Z6Q4Z+S4Z6Y4Z64IGAlcyfCoOGfliAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjI1MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAicmVuYW1lOiByZW1vdmUgZHVwbGljYXRlIG9sZCBsaW5rIGAlcyc6ICVzIgorbXNnaWQgInJlbmFtZTogcmVtb3ZlIGR1cGxpY2F0ZSBvbGQgbGluayAnJXMnIgorbXNnc3RyICLhnpThn5Lhnorhnrzhnprhnojhn5Lhnpjhn4Thn4fCoOGfliDhnpnhnoDigIvhno/hn4bhno7igIvhnoXhnrbhnp/hn4vigIvhnorhn4LhnpvigIvhnp/hn5LhnpHhnr3hnpPigIvhnoXhn4HhnokgYCVzJ8Kg4Z+WICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjYyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gb3BlbiBzb3VyY2UgZmlsZSBgJS4yNTBzJyIKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIGNvcGllZCBzb3VyY2UgZmlsZSAnJXMnIgorbXNnc3RyICLhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnpThnr7hnoDigIvhnq/hnoDhnp/hnrbhnprigIvhnpThn5LhnprhnpfhnpYgYCUuMjUwcyciCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyODQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImxvY2FsIGRpdmVyc2lvbiBvZiAlcyIKK21zZ3N0ciAi4Z6U4Z624Z6T4oCL4Z6U4Z6E4Z+S4Z6c4Z+C4Z6a4oCL4Z6H4Z624oCL4Z6Y4Z684Z6b4Z6K4Z+S4Z6L4Z624Z6T4oCL4Z6R4Z+FwqDhn5YgJXNcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjI4NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAibG9jYWwgZGl2ZXJzaW9uIG9mICVzIHRvICVzIgorbXNnc3RyICLhnpThnrbhnpPigIvhnpThnoThn5Lhnpzhn4LhnprigIvhnofhnrbigIvhnpjhnrzhnpvhnorhn5LhnovhnrbhnpPigIvhnpHhn4XCoOGfliAlc1xuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjkwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJkaXZlcnNpb24gYnkgJXMiCittc2dpZCAiZGl2ZXJzaW9uIG9mICVzIGJ5ICVzIgorbXNnc3RyICLhnoDhnrbhnprigIvhnpThnoThn5Lhnpzhn4LhnprigIvhnorhn4ThnpkgJXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyOTMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImRpdmVyc2lvbiBvZiAlcyB0byAlcyBieSAlcyIKK21zZ3N0ciAi4Z6U4Z624Z6T4oCL4Z6U4Z6E4Z+S4Z6c4Z+C4Z6a4oCL4Z6K4Z+E4Z6ZICVzIOGekeGfhcKg4Z+WICVzXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozMDkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImRpdmVyc2lvbiBieSAlcyIKK21zZ2lkICJhbnkgZGl2ZXJzaW9uIG9mICVzIgorbXNnc3RyICLhnoDhnrbhnprigIvhnpThnoThn5Lhnpzhn4LhnprigIvhnorhn4ThnpkgJXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozMTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImFueSBkaXZlcnNpb24gb2YgJXMgdG8gJXMiCittc2dzdHIgIuGelOGetuGek+KAi+GelOGehOGfkuGenOGfguGemuKAi+GeiuGfhOGemSAlcyDhnpHhn4XCoOGfliAlc1xuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MzU3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW5ub3Qgb3BlbiBHUEwgZmlsZSIKK21zZ2lkICJjYW5ub3QgY3JlYXRlIG5ldyAlcyBmaWxlIgorbXNnc3RyICLhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnpThnr7hnoDigIvhnq/hnoDhnp/hnrbhnprigIsgR1BMIOGelOGetuGek+KAi+GeoeGevuGemeKAiyIKKworIzogc3JjL2RpdmVydGNtZC5jOjM3NSBzcmMvc3RhdGNtZC5jOjIxNSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTQwNAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIGZpbGUgJyVzJyIKK21zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6U4Z6E4Z+S4Z6g4Z684Z6a4oCL4Z6F4Z684Z6b4oCL4Z6A4Z+S4Z6T4Z674Z6E4Z6v4Z6A4Z6f4Z624Z6a4oCLIHZzbnByaW50ZiIKKworIzogc3JjL2RpdmVydGNtZC5jOjM4MgorIywgZnV6enkKKyN8IG1zZ2lkICJyZW1vdmUgb2xkIGRpdmVyc2lvbnMtb2xkOiAlcyIKK21zZ2lkICJlcnJvciByZW1vdmluZyBvbGQgZGl2ZXJzaW9ucy1vbGQiCittc2dzdHIgIuGemeGegOKAi+GegOGetuGemuKAi+GelOGehOGfkuGenOGfguGemuKAi+GeheGetuGen+Gfi+KAi+GeheGfgeGeicKg4Z+WICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mzg0CisjLCBmdXp6eQorbXNnaWQgImVycm9yIGNyZWF0aW5nIG5ldyBkaXZlcnNpb25zLW9sZCIKK21zZ3N0ciAi4Z6A4Z+G4Z6g4Z674Z6f4oCL4Z6A4Z+S4Z6T4Z674Z6E4oCL4Z6A4Z624Z6a4oCL4Z6U4Z6E4Z+S4Z6A4Z6+4Z6PIHN0YXRvdmVycmlkZS1vbGQg4Z6Q4Z+S4Z6Y4Z64wqDhn5YgJXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozODYKKyMsIGZ1enp5Cittc2dpZCAiZXJyb3IgaW5zdGFsbGluZyBuZXcgZGl2ZXJzaW9ucyIKK21zZ3N0ciAi4Z6A4Z+G4Z6g4Z674Z6f4oCL4Z6A4Z+S4Z6T4Z674Z6E4oCL4Z6A4Z624Z6a4oCL4Z6K4Z+G4Z6h4Z6+4Z6EIHN0YXRvdmVycmlkZSDhnpDhn5LhnpjhnrjCoOGfliAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjQwNiBzcmMvZGl2ZXJ0Y21kLmM6NTAzIHNyYy9kaXZlcnRjbWQuYzo2MTAKKyM6IHNyYy9kaXZlcnRjbWQuYzo2MzAgc3JjL3N0YXRjbWQuYzoyOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhIHNpbmdsZSBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyDhno/hn5LhnprhnrzhnpzhnoDhnrbhnprigIvhnqLhnrbhnoLhnrvhnpnhnpjhn4nhnoThn4vigIvhno/hn4LigIvhnpjhnr3hnpkiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MDkgc3JjL2RpdmVydGNtZC5jOjQzMAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlbmFtZSBcIiVzXCIgaXMgbm90IGFic29sdXRlIgorbXNnc3RyICLhnojhn5Lhnpjhn4Thn4figIvhnq/hnoDhnp/hnrbhnpogXCIlc1wiIOGemOGet+Gek+KAi+GeluGfgeGeieGem+GfgeGeiSIKKworIzogc3JjL2RpdmVydGNtZC5jOjQxMSBzcmMvc3RhdGNtZC5jOjI0OQorbXNnaWQgImZpbGUgbWF5IG5vdCBjb250YWluIG5ld2xpbmVzIgorbXNnc3RyICLhnq/hnoDhnp/hnrbhnprigIvhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnpjhnrbhnpPigIvhnpThnpPhn5LhnpHhnrbhno/hn4vhnpDhn5LhnpjhnrgiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MTgKK21zZ2lkICJDYW5ub3QgZGl2ZXJ0IGRpcmVjdG9yaWVzIgorbXNnc3RyICLhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnpThnoThn5Lhnpzhn4LhnprigIvhnpDhno8iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MzMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBkaXZlcnQgZmlsZSAnJXMnIHRvIGl0c2VsZiIKK21zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6U4Z6E4Z+S4Z6c4Z+C4Z6a4oCL4Z6Q4Z6PIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDUzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJMZWF2aW5nIGAlcyciCittc2dpZCAiTGVhdmluZyAnJXMnXG4iCittc2dzdHIgIuGekeGeu+GegOGeheGfhOGem+KAi2AlcyciCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBjbGFzaGVzIHdpdGggYCVzJyIKK21zZ3N0ciAiYCVzJyDhnpThn4nhn4fhnqLhnoThn5LhnoLhnrfhnoXigIvhnofhnrbigIvhnpjhnr3hnpkgYCVzJyIKKworIzogc3JjL2RpdmVydGNtZC5jOjQ4MQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiQWRkaW5nIGAlcyciCittc2dpZCAiQWRkaW5nICclcydcbiIKK21zZ3N0ciAi4Z6U4Z6T4Z+S4Z6Q4Z+C4Z6Y4oCLIGAlcyciCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MTAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIk5vIGRpdmVyc2lvbiBgJXMnLCBub25lIHJlbW92ZWQiCittc2dpZCAiTm8gZGl2ZXJzaW9uICclcycsIG5vbmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAi4Z6C4Z+S4Z6Y4Z624Z6T4oCL4Z6A4Z624Z6a4oCL4Z6U4Z6E4Z+S4Z6c4Z+C4Z6aIGAlcycg4Z6C4Z+S4Z6Y4Z624Z6T4oCL4Z6i4Z+S4Z6c4Z644oCL4Z6U4Z624Z6T4oCL4Z6Z4Z6A4oCL4Z6F4Z+B4Z6JIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTI1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJtaXNtYXRjaCBvbiBkaXZlcnQtdG9cbiIKKyIgIHdoZW4gcmVtb3ZpbmcgYCVzJ1xuIgorIiAgZm91bmQgYCVzJyIKK21zZ3N0ciAiIgorIuGemOGet+Gek+KAi+GeleGfkuGeguGevOGeleGfkuGeguGehOKAi+Gek+GfheKAi+GeluGfgeGem+KAi+GelOGehOGfkuGenOGfguGemlxuIgorIiAg4Z6T4Z+F4oCL4Z6W4Z+B4oCL4Z6b4Z6Z4Z6AIGAlcycg4Z6F4Z+B4Z6JXG4iCisiICDhnprhnoDhnoPhnr7hnokgYCVzJyIKKworIzogc3JjL2RpdmVydGNtZC5jOjUzMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisibWlzbWF0Y2ggb24gcGFja2FnZVxuIgorIiAgd2hlbiByZW1vdmluZyBgJXMnXG4iCisiICBmb3VuZCBgJXMnIgorbXNnc3RyICIiCisi4Z6Y4Z634Z6T4oCL4Z6V4Z+S4Z6C4Z684Z6V4Z+S4Z6C4Z6E4oCL4Z6P4Z624Z6Y4oCL4Z6A4Z6J4Z+S4Z6F4Z6U4Z+LXG4iCisiICDhnpPhn4XigIvhnpbhn4HhnpvhnpnhnoAgYCVzJyDhnoXhn4HhnolcbiIKKyIgIOGemuGegOGeg+GevuGeiSBgJXMnIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTM5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJSZW1vdmluZyBgJXMnIgorbXNnaWQgIlJlbW92aW5nICclcydcbiIKK21zZ3N0ciAi4Z6Z4Z6AIGAlcycg4Z6F4Z+B4Z6JIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjU3Cittc2dpZCAicGFja2FnZSBtYXkgbm90IGNvbnRhaW4gbmV3bGluZXMiCittc2dzdHIgIuGegOGeieGfkuGeheGelOGfi+KAi+GemOGet+Gek+GeouGetuGeheKAi+GemOGetuGek+KAi+GelOGek+GfkuGekeGetuGej+Gfi+KAi+GekOGfkuGemOGeuCIKKworIzogc3JjL2RpdmVydGNtZC5jOjY2NgorbXNnaWQgImRpdmVydC10byBtYXkgbm90IGNvbnRhaW4gbmV3bGluZXMiCittc2dzdHIgIuGelOGehOGfkuGenOGfguGemuKAi+GemOGet+Gek+KAi+GeouGetuGeheKAi+GemOGetuGek+KAi+GelOGek+GfkuGekeGetuGej+Gfi+KAi+GekOGfkuGemOGeuCIKKworIzogc3JjL2RpdmVydGRiLmM6NjQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiBkaXZlcnNpb25zIGZpbGUiCittc2dzdHIgIuGelOGetuGek+KAi+GelOGemuGetuGeh+GfkOGemeKAi+GegOGfkuGek+Geu+GehOKAi+GegOGetuGemuKAi+GelOGevuGegOKAi+Ger+GegOGen+GetuGemuKAi+GelOGehOGfkuGenOGfguGemiIKKworIzogc3JjL2RpdmVydGRiLmM6NzEKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgcHJldmlvdXMgZGl2ZXJzaW9ucyBmaWxlIgorbXNnc3RyICLhnpThnrbhnpPhnpThnprhnrbhnofhn5Dhnpnhnpvhnr7hnq/hnoDhnp/hnrbhnprhnpThnoThn5Lhnpzhn4LhnprhnpjhnrvhnpMgZnN0YXQiCisKKyM6IHNyYy9kaXZlcnRkYi5jOjczCittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGRpdmVyc2lvbnMgZmlsZSIKK21zZ3N0ciAi4Z6U4Z624Z6T4Z6U4Z6a4Z624Z6H4Z+Q4Z6Z4Z6b4Z6+4Z6v4Z6A4Z6f4Z624Z6a4Z6U4Z6E4Z+S4Z6B4Z+C4Z6aIGZzdGF0IgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzoxMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmxpY3RpbmcgZGl2ZXJzaW9ucyBpbnZvbHZpbmcgYCUuMjUwcycgb3IgYCUuMjUwcyciCittc2dzdHIgIuGelOGfieGfh+GekeGehOGfkuGeguGet+GeheGegOGetuGemuGelOGehOGfkuGenOGfguGemuGeiuGfguGem+GeluGetuGegOGfi+GeluGfkOGek+GfkuGekuGek+GeueGehCBgJS4yNTBzJyDhnqwgYCUuMjUwcyciCisKKyM6IHNyYy9lbnF1aXJ5LmM6NzMKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgaW4gYSBtZXNzIGR1ZSB0byBzZXJpb3VzIHByb2JsZW1zIGR1cmluZ1xuIgorImluc3RhbGxhdGlvbi4gIFRoZXkgbXVzdCBiZSByZWluc3RhbGxlZCBmb3IgdGhlbSAoYW5kIGFueSBwYWNrYWdlc1xuIgorInRoYXQgZGVwZW5kIG9uIHRoZW0pIHRvIGZ1bmN0aW9uIHByb3Blcmx5OlxuIgorbXNnc3RyICIiCisi4Z6A4Z6J4Z+S4Z6F4Z6U4Z+L4Z6K4Z684Z6F4Z6B4Z624Z6E4Z6A4Z+S4Z6a4Z+E4Z6Y4Z6T4Z+B4Z+H4Z6Y4Z624Z6T4Z6X4Z624Z6W4Z6a4Z624Z6Z4Z6U4Z+J4Z624Z6ZIOGeiuGfhOGemeGen+GetuGemuGej+GfguGemOGetuGek+GelOGeieGfkuGeoOGetuGekuGfkuGehOGek+Gfi+GekuGfkuGehOGemuGegOGfhuGeoeGeu+GehOGeluGfgeGem+GeilxuIgorIuGeiuGfhuGeoeGevuGehMKg4Z+UICDhnpbhnr3hnoDhnoLhn4Hhno/hn5Lhnprhnrzhnpzhno/hn4Lhnorhn4bhnqHhnr7hnoThnqHhnr7hnoThnpzhnrfhnonhnp/hnpjhn5LhnprhnrbhnpThn4vhnpbhnr3hnoDhnpzhnrYgKOGek+Get+GehOGegOGeieGfkuGeheGelOGfi+GemOGeveGemeGeheGfhuGek+GeveGek1xuIgorIuGeiuGfguGem+GeouGetuGen+GfkuGemuGfkOGemeGem+GevuGeluGeveGegOGenOGetikg4Z6K4Z6+4Z6Y4Z+S4Z6U4Z644Z6S4Z+S4Z6c4Z6+4Z6y4Z+S4Z6Z4Z6c4Z624Z6Y4Z624Z6T4Z6Y4Z674Z6B4Z6E4Z624Z6a4Z6Z4Z+J4Z624Z6E4Z6P4Z+S4Z6a4Z654Z6Y4Z6P4Z+S4Z6a4Z684Z6cwqDhn5ZcbiIKKworIzogc3JjL2VucXVpcnkuYzo4MAorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGhhdmUgYmVlbiB1bnBhY2tlZCBidXQgbm90IHlldCBjb25maWd1cmVkLlxuIgorIlRoZXkgbXVzdCBiZSBjb25maWd1cmVkIHVzaW5nIGRwa2cgLS1jb25maWd1cmUgb3IgdGhlIGNvbmZpZ3VyZVxuIgorIm1lbnUgb3B0aW9uIGluIGRzZWxlY3QgZm9yIHRoZW0gdG8gd29yazpcbiIKK21zZ3N0ciAiIgorIuGegOGeieGfkuGeheGelOGfi+KAi+GeiuGevOGeheKAi+GegeGetuGehOKAi+GegOGfkuGemuGfhOGemOKAi+Gek+GfgeGfh+KAi+Gej+GfkuGemuGevOGenOKAi+GelOGetuGek+KAi+GeluGek+GfkuGem+GetiDhnpThn4nhnrvhnpPhn5Lhno/hn4LigIvhnpjhnrfhnpPigIvhno/hn5LhnprhnrzhnpzigIvhnpThnrbhnpPigIvhnoDhn4bhno7hno/hn4vigIvigIvhnprhnoXhnpPhnrbhnp/igIvhnpjhn5Lhnpbhn5DhnpPhn5LhnpLigIvigIvhnpPhn4XigIvhnqHhnr7hnpnigIvhnpHhn4HCoOGflFxuIgorIuGeluGeveGegOKAi+GenOGetuKAi+Gej+GfkuGemuGevOGenOGej+GfguKAi+GelOGetuGek+KAi+GegOGfhuGejuGej+Gfi+KAi+GemuGeheGek+GetuGen+GemOGfkuGeluGfkOGek+GfkuGekuKAi+GeiuGfhOGemeKAi+GelOGfkuGemuGeviBkcGtnIC0t4Z6A4Z+G4Z6O4Z6P4Z+L4oCL4Z6a4Z6F4Z6T4Z624Z6f4Z6Y4Z+S4Z6W4Z+Q4Z6T4Z+S4Z6SIOGerFxuIgorIuGeh+GemOGfkuGemuGevuKAi+GemOGfieGeuuGek+Geu+GemeKAi+GegOGfhuGejuGej+Gfi+KAi+GemuGeheGek+GetuGen+GemOGfkuGeluGfkOGek+GfkuGekuKAi+GemOGet+Gek+KAi+GelOGetuGek+KAi+Geh+GfkuGemuGevuGen+KAi+Gen+GemOGfkuGemuGetuGelOGfi+KAi+GesuGfkuGemeKAi+GeluGeveGegOGenOGetuKAi+GeiuGfhuGejuGevuGemuKAi+GegOGetuGemsKg4Z+WXG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6ODcKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgb25seSBoYWxmIGNvbmZpZ3VyZWQsIHByb2JhYmx5IGR1ZSB0byBwcm9ibGVtc1xuIgorImNvbmZpZ3VyaW5nIHRoZW0gdGhlIGZpcnN0IHRpbWUuICBUaGUgY29uZmlndXJhdGlvbiBzaG91bGQgYmUgcmV0cmllZCB1c2luZ1xuIgorImRwa2cgLS1jb25maWd1cmUgPHBhY2thZ2U+IG9yIHRoZSBjb25maWd1cmUgbWVudSBvcHRpb24gaW4gZHNlbGVjdDpcbiIKK21zZ3N0ciAiIgorIuGegOGeieGfkuGeheGelOGfi+KAi+GeiuGevOGeheKAi+GegeGetuGehOKAi+GegOGfkuGemuGfhOGemOKAi+Gek+GfgeGfh+KAi+Gej+GfkuGemuGevOGenOKAi+GelOGetuGek+KAi+GegOGfhuGejuGej+Gfi+KAi+GemuGeheGek+GetuGen+GemOGfkuGeluGfkOGek+GfkuGekuKAi+Gej+GfguKAi+GeluGetuGegOGfi+KAi+GegOGejuGfkuGeiuGetuGem+KAi+GelOGfieGeu+GejuGfkuGejuGfhOGfhyDhnpThn5LhnprhnqDhn4LhnpvigIvhnofhnrbigIvhnorhn4ThnpnigIvhnp/hnrbhnprigIvhno/hn4LigIvhnpjhnrbhnpPigIvhnpThnonhn5LhnqDhnrZcbiIKKyLhnpbhn4HhnpvigIvhnoDhn4bhno7hno/hn4vigIvhnprhnoXhnpPhnrbhnp/hnpjhn5Lhnpbhn5DhnpPhn5LhnpLigIvhnpbhnr3hnoDigIvhnpzhnrbhnofhnrbigIvhnpvhnr7hnoDigIvhnorhn4bhnpThnrzhnoTCoOGflCAg4Z6A4Z624Z6a4oCL4Z6A4Z+G4Z6O4Z6P4Z+L4oCL4Z6a4Z6F4Z6T4Z624Z6f4Z6Y4Z+S4Z6W4Z+Q4Z6T4Z+S4Z6S4oCL4Z6C4Z694Z6a4oCL4Z6P4Z+C4Z6P4Z+S4Z6a4Z684Z6c4oCL4Z6U4Z624Z6T4oCL4Z6R4Z624Z6J4Z6Z4Z6AIOGeiuGfhOGemeKAi+GelOGfkuGemuGevlxuIgorImRwa2cgLS3hnoDhn4bhno7hno/hn4vigIvhnprhnoXhnpPhnrbhnp/hnpjhn5Lhnpbhn5DhnpPhn5LhnpIgPHBhY2thZ2U+IOGerOKAi+Geh+GemOGfkuGemuGevuGen+KAi+GemOGfieGeuuGek+Geu+GemeKAi+GegOGfhuGejuGej+Gfi+KAi+GemuGeheGek+GetuGen+GemOGfkuGeluGfkOGek+GfkuGekuKAi+GemOGet+Gek+KAi+GelOGetuGek+KAi+Geh+GfkuGemuGevuGen8Kg4Z+WXG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6OTQKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgb25seSBoYWxmIGluc3RhbGxlZCwgZHVlIHRvIHByb2JsZW1zIGR1cmluZ1xuIgorImluc3RhbGxhdGlvbi4gIFRoZSBpbnN0YWxsYXRpb24gY2FuIHByb2JhYmx5IGJlIGNvbXBsZXRlZCBieSByZXRyeWluZyBpdDtcbiIKKyJ0aGUgcGFja2FnZXMgY2FuIGJlIHJlbW92ZWQgdXNpbmcgZHNlbGVjdCBvciBkcGtnIC0tcmVtb3ZlOlxuIgorbXNnc3RyICIiCisi4Z6A4Z6J4Z+S4Z6F4Z6U4Z+L4oCL4Z6K4Z684Z6F4oCL4Z6B4Z624Z6E4oCL4Z6A4Z+S4Z6a4Z+E4Z6Y4oCL4Z6P4Z+S4Z6a4Z684Z6c4oCL4Z6U4Z624Z6T4oCL4Z6K4Z+G4Z6h4Z6+4Z6E4oCL4Z6P4Z+C4oCL4Z6W4Z624Z6A4Z+L4oCL4Z6A4Z6O4Z+S4Z6K4Z624Z6b4oCL4Z6U4Z+J4Z674Z6O4Z+S4Z6O4Z+E4Z+HIOGeiuGfhOGemeKAi+Gen+GetuGemuGej+GfguKAi+GemOGetuGek+KAi+GelOGeieGfkuGeoOGetuKAi+GegOGfhuGeoeGeu+GehOKAi+GeluGfgeGem1xuIgorIuGeiuGfhuGeoeGevuGehMKg4Z+ULiDhnoDhnrbhnprigIvhnorhn4bhnqHhnr7hnoTigIvhnqLhnrbhnoXigIvhnpThn5LhnprhnqDhn4LhnpvigIvhnofhnrbigIvhno/hn5LhnprhnrzhnpzigIvhnpThnrbhnpPigIvhnpThnonhn5LhnoXhnpThn4vigIvhnorhn4ThnpnigIvhnpHhnrbhnonigIvhnpnhnoDigIvhnpzhnrY7XG4iCisi4Z6A4Z6J4Z+S4Z6F4Z6U4Z+L4oCL4Z6i4Z624Z6F4oCL4Z6P4Z+S4Z6a4Z684Z6c4oCL4Z6U4Z624Z6T4oCL4Z6Z4Z6A4oCL4Z6F4Z+B4Z6J4oCL4Z6K4Z+E4Z6Z4oCL4Z6U4Z+S4Z6a4Z6+IOGemOGet+Gek+KAi+Geh+GfkuGemuGevuGen3ThnqxyIGRwa2cgLeGemeGegOGeheGfgeGeicKg4Z+WOlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjEwMQorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBhd2FpdGluZyBwcm9jZXNzaW5nIG9mIHRyaWdnZXJzIHRoYXQgdGhleVxuIgorImhhdmUgYWN0aXZhdGVkIGluIG90aGVyIHBhY2thZ2VzLiAgVGhpcyBwcm9jZXNzaW5nIGNhbiBiZSByZXF1ZXN0ZWQgdXNpbmdcbiIKKyJkc2VsZWN0IG9yIGRwa2cgLS1jb25maWd1cmUgLS1wZW5kaW5nIChvciBkcGtnIC0tdHJpZ2dlcnMtb25seSk6XG4iCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzoxMDgKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBoYXZlIGJlZW4gdHJpZ2dlcmVkLCBidXQgdGhlIHRyaWdnZXIgcHJvY2Vzc2luZ1xuIgorImhhcyBub3QgeWV0IGJlZW4gZG9uZS4gIFRyaWdnZXIgcHJvY2Vzc2luZyBjYW4gYmUgcmVxdWVzdGVkIHVzaW5nXG4iCisiZHNlbGVjdCBvciBkcGtnIC0tY29uZmlndXJlIC0tcGVuZGluZyAob3IgZHBrZyAtLXRyaWdnZXJzLW9ubHkpOlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTM3IHNyYy9lbnF1aXJ5LmM6MjExIHNyYy9lbnF1aXJ5LmM6MjkyIHNyYy9lbnF1aXJ5LmM6MzczCisjOiBzcmMvZW5xdWlyeS5jOjQ2MCBzcmMvc2VsZWN0LmM6OTggc3JjL3NlbGVjdC5jOjE2NCBzcmMvdHJpZ2NtZC5jOjE5OQorIzogc3JjL3VwZGF0ZS5jOjQ4IHNyYy91cGRhdGUuYzoxMTMgZHBrZy1zcGxpdC9xdWV1ZS5jOjIzMgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIHRha2VzIG5vIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS0lcyDhnpjhnrfhnpPigIvhno/hn5LhnprhnrzhnpzhnoDhnrbhnprigIvhnqLhnrbhnoLhnrvhnpnhnpjhn4nhnoThn4siCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTUyCittc2dpZCAiIgorIkFub3RoZXIgcHJvY2VzcyBoYXMgbG9ja2VkIHRoZSBkYXRhYmFzZSBmb3Igd3JpdGluZywgYW5kIG1pZ2h0IGN1cnJlbnRseSBiZVxuIgorIm1vZGlmeWluZyBpdCwgc29tZSBvZiB0aGUgZm9sbG93aW5nIHByb2JsZW1zIG1pZ2h0IGp1c3QgYmUgZHVlIHRvIHRoYXQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzoxOTEKKyMsIGZ1enp5CisjfCBtc2dpZCAiPHVua25vd24+IgorbXNnY3R4dCAic2VjdGlvbiIKK21zZ2lkICI8dW5rbm93bj4iCittc2dzdHIgIjzhnpjhnrfhnpPhnp/hn5LhnoLhnrbhnpvhn4vigIs+IgorCisjOiBzcmMvZW5xdWlyeS5jOjI1MQorIywgYy1mb3JtYXQKK21zZ2lkICIgJWQgaW4gJXM6ICIKK21zZ3N0ciAiICVkIOGek+GfheGegOGfkuGek+Geu+GehCAlc8Kg4Z+WICIKKworIzogc3JjL2VucXVpcnkuYzoyNjYKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiAlZCBwYWNrYWdlcywgZnJvbSB0aGUgZm9sbG93aW5nIHNlY3Rpb25zOiIKK21zZ2lkICIgJWQgcGFja2FnZSwgZnJvbSB0aGUgZm9sbG93aW5nIHNlY3Rpb246IgorbXNnaWRfcGx1cmFsICIgJWQgcGFja2FnZXMsIGZyb20gdGhlIGZvbGxvd2luZyBzZWN0aW9uczoiCittc2dzdHJbMF0gIiAlZCDhnoDhnonhn5LhnoXhnpThn4sg4Z6W4Z644oCL4Z6f4Z6Y4Z+Q4Z6Z4oCL4Z6K4Z684Z6F4Z6B4Z624Z6E4Z6A4Z+S4Z6a4Z+E4Z6Y4oCLwqDhn5YiCittc2dzdHJbMV0gIiAlZCDhnoDhnonhn5LhnoXhnpThn4sg4Z6W4Z644oCL4Z6f4Z6Y4Z+Q4Z6Z4oCL4Z6K4Z684Z6F4Z6B4Z624Z6E4Z6A4Z+S4Z6a4Z+E4Z6Y4oCLwqDhn5YiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzA1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiVmVyc2lvbiBvZiBkcGtnIHdpdGggd29ya2luZyAlcyBzdXBwb3J0IG5vdCB5ZXQgY29uZmlndXJlZC5cbiIKKyIgUGxlYXNlIHVzZSAnZHBrZyAtLWNvbmZpZ3VyZSBkcGtnJywgYW5kIHRoZW4gdHJ5IGFnYWluLlxuIgorbXNnc3RyICIiCisi4Z6A4Z+G4Z6O4Z+C4oCL4Z6a4Z6U4Z6f4Z+LIGRwa2cg4Z6K4Z+C4Z6b4oCL4Z6S4Z+S4Z6c4Z6+4Z6A4Z624Z6a4oCL4Z6C4Z624Z+G4Z6R4Z+S4Z6aIGVwb2NoIOGemOGet+Gek+KAi+Gej+GfkuGemuGevOGenOKAi+GelOGetuGek+KAi+GegOGfhuGejuGej+Gfi+KAi+GemuGeheGek+GetuGen+GemOGfkuGeluGfkOGek+GfkuGekuKAi+Gek+GfheKAi+GeoeGevuGemeKAi+GekeGfgcKg4Z+UXG4iCisiIOGen+GevOGemOKAi+GelOGfkuGemuGeviBgZHBrZyAtLeGegOGfhuGejuGej+Gfi+KAi+GemuGeheGek+GetuGen+GemOGfkuGeluGfkOGek+GfkuGekiBkcGtnJyDhnqDhnr7hnpnigIvhnpThnpPhn5LhnpHhnrbhnpThn4vigIvhnpjhnoDigIvhnpbhn5LhnpnhnrbhnpnhnrbhnpjigIvhnpjhn5LhnorhnoTigIvhnpHhn4Dhno/CoOGflFxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjMxMAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZHBrZyBub3QgcmVjb3JkZWQgYXMgaW5zdGFsbGVkLCBjYW5ub3QgY2hlY2sgZm9yICVzIHN1cHBvcnQhXG4iCittc2dzdHIgImRwa2cg4Z6Y4Z634Z6T4oCL4Z6U4Z624Z6T4oCL4Z6A4Z6P4Z+L4Z6P4Z+S4Z6a4Z624oCL4Z6Q4Z624oCL4Z6U4Z624Z6T4oCL4Z6K4Z+G4Z6h4Z6+4Z6E4oCL4Z6R4Z+BIOGemOGet+Gek+KAi+GeouGetuGeheKAi+GeluGet+Gek+Get+Gej+GfkuGemeKAi+GemOGevuGem+KAi+GegOGetuGemuKAi+GeguGetuGfhuGekeGfkuGemiBlcG9jaCDhnpThnrbhnpPigIvhnpHhn4HCoCFcbiIKKworIzogc3JjL2VucXVpcnkuYzozMjEKK21zZ2lkICJQcmUtRGVwZW5kcyBmaWVsZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvZW5xdWlyeS5jOjMyOQorbXNnaWQgImVwb2NoIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzM3Cittc2dpZCAibG9uZyBmaWxlbmFtZXMiCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzozNDYKK21zZ2lkICJtdWx0aXBsZSBDb25mbGljdHMgYW5kIFJlcGxhY2VzIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6NDM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBjYW5ub3Qgc2VlIGhvdyB0byBzYXRpc2Z5IHByZS1kZXBlbmRlbmN5OlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisiZHBrZzog4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6Y4Z6+4Z6b4oCL4Z6c4Z634Z6S4Z644oCL4Z6K4Z+C4Z6b4oCL4Z6S4Z+S4Z6c4Z6+4Z6y4Z+S4Z6Z4oCL4Z6X4Z624Z6W4oCL4Z6i4Z624Z6f4Z+S4Z6a4Z+Q4Z6Z4oCL4Z6H4Z624oCL4Z6Y4Z674Z6T4oCL4Z6W4Z+B4Z6J4Z6F4Z634Z6P4Z+S4Z6P4oCL4Z6R4Z+BwqDhn5ZcbiIKKyIgJXNcbiIKKworIzogc3JjL2VucXVpcnkuYzo0MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHNhdGlzZnkgcHJlLWRlcGVuZGVuY2llcyBmb3IgJS4yNTBzICh3YW50ZWQgZHVlIHRvICUuMjUwcykiCittc2dzdHIgIuGemOGet+Gek+KAi+GeouGetuGeheKAi+GekuGfkuGenOGevuKAi+GesuGfkuGemeKAi+Gel+GetuGeluKAi+GeouGetuGen+GfkuGemuGfkOGemeKAi+GeluGfgeGeieGeheGet+Gej+GfkuGejyDhnp/hnpjhn5LhnprhnrbhnpThn4sgJS4yNTBzICjhnoXhnoThn4vigIvhnpThnrbhnpPigIvhnqLhnrbhnp/hn5Lhnprhn5DhnpnigIvhnorhn4ThnpkgJS4yNTBzKSIKKworIzogc3JjL2VucXVpcnkuYzo0NzIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIm9ic29sZXRlIG9wdGlvbiAnLS0lcycsIHBsZWFzZSB1c2UgJy0tJXMnIGluc3RlYWQuIgorbXNnc3RyICLhnpbhn5LhnprhnpjhnrbhnpPCoOGfliDhnofhnpjhn5Lhnprhnr7hnp/hnpvhn4LhnoThnpThn5Lhnprhnr4gYC0tJXMnXG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6NTE5Cittc2dpZCAiIgorIi0tY29tcGFyZS12ZXJzaW9ucyB0YWtlcyB0aHJlZSBhcmd1bWVudHM6IDx2ZXJzaW9uPiA8cmVsYXRpb24+IDx2ZXJzaW9uPiIKK21zZ3N0ciAiLS3hnoDhnrbhnprigIvhnpThn5Lhnprhn4DhnpThnpLhn4DhnpTigIvhnoDhn4bhno7hn4LigIvhno/hn5LhnprhnrzhnpzhnoDhnrbhnprigIvigIvhnqLhnrbhnoLhnrvhnpnhnpjhn4nhnoThn4vigIvhnpThnrjCoOGfliA8dmVyc2lvbj4gPHJlbGF0aW9uPiA8dmVyc2lvbj4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6NTI0Cittc2dpZCAiLS1jb21wYXJlLXZlcnNpb25zIGJhZCByZWxhdGlvbiIKK21zZ3N0ciAiLS3hnoDhnrbhnprigIvhnpThn5Lhnprhn4DhnpThnpLhn4DhnpTigIvhnoDhn4bhno7hn4LigIvhnpjhnrbhnpPigIvhnpHhn4bhnpPhnrbhnoDhn4vhnpHhn4bhnpPhnoTigIvhnpjhnrfhnpPigIvhnpvhn5LhnqIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6NTI5IHNyYy9lbnF1aXJ5LmM6NTMxIHNyYy9lbnF1aXJ5LmM6NTQwIHNyYy9lbnF1aXJ5LmM6NTQyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ2ZXJzaW9uICclcycgaGFzIGJhZCBzeW50YXg6ICVzIgorbXNnc3RyICJkcGtnwqDhn5Yg4Z6A4Z+G4Z6O4Z+CICclcycg4Z6Y4Z624Z6T4oCL4Z6c4Z624Z6A4Z+S4Z6Z4Z6f4Z6Y4Z+S4Z6W4Z6T4Z+S4Z6S4oCL4Z6Y4Z634Z6T4oCL4Z6P4Z+S4Z6a4Z654Z6Y4Z6P4Z+S4Z6a4Z684Z6cwqDhn5YgJXNcbiIKKworIzogc3JjL2Vycm9ycy5jOjYwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogZXJyb3IgcHJvY2Vzc2luZyAlcyAoLS0lcyk6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKyIlc8Kg4Z+WIOGegOGfhuGeoOGeu+Gen+KAi+GegeGejuGfiOKAi+KAi+GeluGfgeGem+KAi+GeiuGfhuGejuGevuGemuGegOGetuGemiAlcyAoLS0lcynCoOGfllxuIgorIiAlc1xuIgorCisjOiBzcmMvZXJyb3JzLmM6NjgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJkcGtnOiBmYWlsZWQgdG8gYWxsb2NhdGUgbWVtb3J5IGZvciBuZXcgZW50cnkgaW4gbGlzdCBvZiBmYWlsZWQgcGFja2FnZXMuIgorbXNnaWQgIiIKKyIlczogZmFpbGVkIHRvIGFsbG9jYXRlIG1lbW9yeSBmb3IgbmV3IGVudHJ5IGluIGxpc3Qgb2YgZmFpbGVkIHBhY2thZ2VzOiAlcyIKK21zZ3N0ciAiZHBrZ8Kg4Z+WIOGelOGetuGek+KAi+GelOGemuGetuGeh+GfkOGemeKAi+GegOGfkuGek+Geu+GehOKAi+GegOGetuGemuKAi+GelOGemOGfkuGemuGeu+GehOKAi+GekeGeu+GegOKAi+Gen+Gej+GetyDhnp/hnpjhn5LhnprhnrbhnpThn4vigIvhnpLhnrbhno/hnrvhnpDhn5LhnpjhnrjigIvhnpPhn4XigIvhnoDhn5LhnpPhnrvhnoTigIvhnpThnonhn5LhnofhnrjigIvhnprhnpThnp/hn4vigIvhnoDhnonhn5LhnoXhnpThn4vigIvhnorhn4LhnpvigIvhnpThnrbhnpPigIvhnpThnprhnrbhnofhn5DhnpnCoOGflCIKKworIzogc3JjL2Vycm9ycy5jOjc5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJkcGtnOiB0b28gbWFueSBlcnJvcnMsIHN0b3BwaW5nXG4iCittc2dpZCAiJXM6IHRvbyBtYW55IGVycm9ycywgc3RvcHBpbmdcbiIKK21zZ3N0ciAiZHBrZ8Kg4Z+WIOGemOGetuGek+KAi+GegOGfhuGeoOGeu+Gen+KAi+Geh+GetuKAi+GeheGfkuGemuGevuGekyDhnpThnonhn5LhnojhnpThn4tcbiIKKworIzogc3JjL2Vycm9ycy5jOjg3Cittc2dpZCAiRXJyb3JzIHdlcmUgZW5jb3VudGVyZWQgd2hpbGUgcHJvY2Vzc2luZzpcbiIKK21zZ3N0ciAi4Z6U4Z624Z6T4oCL4Z6H4Z694Z6U4oCL4Z6U4Z+S4Z6a4Z6R4Z+H4oCL4Z6A4Z+G4Z6g4Z674Z6f4oCL4Z6B4Z6O4Z+I4Z6W4Z+B4Z6b4oCL4Z6K4Z+G4Z6O4Z6+4oCL4Z6A4Z624Z6awqDhn5ZcbiIKKworIzogc3JjL2Vycm9ycy5jOjk0Cittc2dpZCAiUHJvY2Vzc2luZyB3YXMgaGFsdGVkIGJlY2F1c2UgdGhlcmUgd2VyZSB0b28gbWFueSBlcnJvcnMuXG4iCittc2dzdHIgIuGeiuGfhuGejuGevuGemuKAi+GegOGetuGemuKAi+KAi+KAi+Gej+GfkuGemuGevOGenOKAi+KAi+GelOGetuGek+KAi+KAi+GeleGfkuGeouGetuGegCDigIvhnpbhnrjigIvigIvhnpbhn5Lhnprhn4Thn4figIvigIvhnpjhnrbigIvhnpPigIvhnoDhn4bhnqDhnrvhnp/igIvhnofhnrbigIvhnoXhn5Lhnprhnr7hnpPCoOGflFxuIgorCisjOiBzcmMvZXJyb3JzLmM6MTA1CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgJXMgd2FzIG9uIGhvbGQsIHByb2Nlc3NpbmcgaXQgYW55d2F5IGFzIHlvdSByZXF1ZXN0ZWRcbiIKK21zZ3N0ciAi4Z6A4Z6J4Z+S4Z6F4Z6U4Z+LICVzIOGegOGfhuGeluGeu+GehOKAi+GemuGehOGfi+GeheGetuGfhiDhnpjhn5Lhnpnhn4nhnrbhnoThnpHhn4Dhno8g4Z6K4Z+G4Z6O4Z6+4Z6a4Z6A4Z624Z6a4oCL4Z6c4Z624oCL4Z6K4Z684Z6F4oCL4Z6K4Z+C4Z6b4oCL4Z6i4Z+S4Z6T4Z6A4oCL4Z6f4Z+S4Z6T4Z6+XG4iCisKKyM6IHNyYy9lcnJvcnMuYzoxMDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlBhY2thZ2UgJXMgaXMgb24gaG9sZCwgbm90IHRvdWNoaW5nIGl0LiAgVXNlIC0tZm9yY2UtaG9sZCB0byBvdmVycmlkZS5cbiIKK21zZ3N0ciAi4Z6A4Z6J4Z+S4Z6F4Z6U4Z+LICVzIOGegOGfhuGeluGeu+GehOKAi+GemuGehOGfi+GeheGetuGfhiDhnpjhnrfhnpPigIvhnpThn4nhn4fhnpbhnrbhnpvhn4vigIvhnpzhnrbCoOGflCAg4Z6U4Z+S4Z6a4Z6+IC0tZm9yY2Ut4Z6K4Z6+4Z6Y4Z+S4Z6U4Z644oCL4Z6U4Z6K4Z634Z6f4Z+B4Z6SwqDhn5RcbiIKKworIzogc3JjL2Vycm9ycy5jOjExOQorIywgZnV6enkKK21zZ2lkICJvdmVycmlkaW5nIHByb2JsZW0gYmVjYXVzZSAtLWZvcmNlIGVuYWJsZWQ6IgorbXNnc3RyICIiCisiZHBrZyAtIOGeluGfkuGemuGemOGetuGekyDhnpThnorhnrfhnp/hn4HhnpLhnpThnonhn5LhnqDhnrbhnpbhnrjhnpbhn5Lhnprhn4Thn4cgLS1mb3JjZSDhnpThnrbhnpPhnqLhnpPhnrvhnonhn5Lhnonhnrbhno/CoOGfllxuIgorIiAiCisKKyM6IHNyYy9maWxlc2RiLmM6MzA3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSBgJS4yNTBzJyIKK21zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6U4Z6+4Z6A4oCL4Z6v4Z6A4Z6f4Z624Z6aIOGeiuGfguGem+KAi+GemuGetuGemeKAi+Ger+GegOGen+GetuGemuKAi+Gen+GemOGfkuGemuGetuGelOGfi+KAi+GegOGeieGfkuGeheGelOGfiyBgJS4yNTBzJyIKKworIzogc3JjL2ZpbGVzZGIuYzozMTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcycgbWlzc2luZywgYXNzdW1pbmcgcGFja2FnZSBoYXMgbm8gZmlsZXMgIgorImN1cnJlbnRseSBpbnN0YWxsZWQuIgorbXNnc3RyICIiCisiZHBrZ8Kg4Z+WIOGegOGetuGemuKAi+GeluGfkuGemuGemOGetuGek+KAi+GeiuGfj+GekuGfkuGehOGek+Gfi+GekuGfkuGehOGemsKg4Z+WIOGer+GegOGen+GetuGemuKAi+GemuGetuGemeKAi+Ger+GegOGen+GetuGemuKAi+Gen+GemOGfkuGemuGetuGelOGfi+KAi+GegOGeieGfkuGeheGelOGfiyBgJS4yNTBzJyDhnorhn4LhnpvigIvhnpThnrbhno/hn4sg4Z6f4Z6T4Z+S4Z6Y4Z6P4Z+L4oCL4Z6Q4Z624oCL4Z6A4Z6J4Z+S4Z6F4Z6U4Z+L4oCLIgorIuGeguGfkuGemOGetuGek+KAi+Ger+GegOGen+GetuGemuKAi+GeiuGfguGem+KAi+GelOGetuGek+KAi+GeiuGfhuGeoeGevuGehOKAi+GekOGfkuGemOGeuOGfl8Kg4Z+UXG4iCisKKyM6IHNyYy9maWxlc2RiLmM6MzIyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJyUuMjUwcyciCittc2dzdHIgIuGemOGet+Gek+KAi+GeouGetuGeheKAi+GelOGevuGegOKAi+Ger+GegOGen+GetuGemiDhnorhn4LhnpvigIvhnprhnrbhnpnigIvhnq/hnoDhnp/hnrbhnprigIvhnp/hnpjhn5LhnprhnrbhnpThn4vigIvhnoDhnonhn5LhnoXhnpThn4sgYCUuMjUwcyciCisKKyM6IHNyYy9maWxlc2RiLmM6MzMwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlcyBsaXN0IGZvciBwYWNrYWdlIGAlLjI1MHMnIgorbXNnaWQgInJlYWRpbmcgZmlsZXMgbGlzdCBmb3IgcGFja2FnZSAnJS4yNTBzJyIKK21zZ3N0ciAi4Z6a4Z624Z6Z4oCL4Z6A4Z6J4Z+S4Z6F4Z6U4Z+L4oCL4oCL4Z6v4Z6A4Z6f4Z624Z6a4oCLIGAlLjI1MHMnIgorCisjOiBzcmMvZmlsZXNkYi5jOjMzNgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICclLjI1MHMnIGlzIG1pc3NpbmcgZmluYWwgbmV3bGluZSIKK21zZ3N0ciAi4Z6v4Z6A4Z6f4Z624Z6a4oCL4Z6a4Z624Z6Z4oCL4Z6v4Z6A4Z6f4Z624Z6a4oCL4Z6f4Z6Y4Z+S4Z6a4Z624Z6U4Z+L4oCL4Z6A4Z6J4Z+S4Z6F4Z6U4Z+LIGAlLjI1MHMnIOGeiuGfguGem+KAi+GemOGetuGek+KAi+GeiOGfkuGemOGfhOGfh+KAi+Ger+GegOGen+GetuGemuKAi+GekeGekeGfgSIKKworIzogc3JjL2ZpbGVzZGIuYzozNDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlIGAlLjI1MHMnIGNvbnRhaW5zIGVtcHR5IGZpbGVuYW1lIgorbXNnc3RyICLhnq/hnoDhnp/hnrbhnprigIvhnprhnrbhnpnigIvhnq/hnoDhnp/hnrbhnprigIvhnp/hnpjhn5LhnprhnrbhnpThn4vigIvhnoDhnonhn5LhnoXhnpThn4sgYCUuMjUwcycg4Z6K4Z+C4Z6b4oCL4Z6Y4Z624Z6T4oCL4Z6I4Z+S4Z6Y4Z+E4Z+H4oCL4Z6v4Z6A4Z6f4Z624Z6a4oCL4Z6R4Z6R4Z+BIgorCisjOiBzcmMvZmlsZXNkYi5jOjM1MgorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSBgJS4yNTBzJyIKK21zZ3N0ciAi4Z6A4Z+G4Z6g4Z674Z6f4oCL4Z6A4Z+S4Z6T4Z674Z6E4oCL4Z6A4Z624Z6a4oCL4Z6U4Z634Z6R4oCL4Z6v4Z6A4Z6f4Z624Z6a4oCL4Z6a4Z624Z6Z4oCL4Z6v4Z6A4Z6f4Z624Z6a4oCL4Z6f4Z6Y4Z+S4Z6a4Z624Z6U4Z+L4oCL4Z6A4Z6J4Z+S4Z6F4Z6U4Z+LIGAlLjI1MHMnIgorCisjOiBzcmMvZmlsZXNkYi5jOjQ2MgorbXNnaWQgIihSZWFkaW5nIGRhdGFiYXNlIC4uLiAiCittc2dzdHIgIijhnoDhn4bhnpbhnrvhnoTigIvhnqLhnrbhnpPigIvhnpjhnrzhnpvhnorhn5LhnovhnrbhnpPigIvhnpHhnrfhnpPhn5LhnpPhnpPhn5DhnpnigIsgLi4uICIKKworIzogc3JjL2ZpbGVzZGIuYzo0ODMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiVkIGZpbGVzIGFuZCBkaXJlY3RvcmllcyBjdXJyZW50bHkgaW5zdGFsbGVkLilcbiIKK21zZ2lkICIlZCBmaWxlIG9yIGRpcmVjdG9yeSBjdXJyZW50bHkgaW5zdGFsbGVkLilcbiIKK21zZ2lkX3BsdXJhbCAiJWQgZmlsZXMgYW5kIGRpcmVjdG9yaWVzIGN1cnJlbnRseSBpbnN0YWxsZWQuKVxuIgorbXNnc3RyWzBdICIlZCDhnq/hnoDhnp/hnrbhnpog4Z6T4Z634Z6E4oCL4Z6Q4Z6P4oCL4Z6U4Z624Z6T4oCL4Z6K4Z+G4Z6h4Z6+4Z6E4oCL4Z6Q4Z+S4Z6Y4Z644Z+XwqDhn5QpXG4iCittc2dzdHJbMV0gIiVkIOGer+GegOGen+GetuGemiDhnpPhnrfhnoTigIvhnpDhno/igIvhnpThnrbhnpPigIvhnorhn4bhnqHhnr7hnoTigIvhnpDhn5Lhnpjhnrjhn5fCoOGflClcbiIKKworIzogc3JjL2ZpbGVzZGIuYzo1MTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6U4Z6E4Z+S4Z6A4Z6+4Z6P4oCL4Z6v4Z6A4Z6f4Z624Z6a4oCL4Z6K4Z+C4Z6b4oCL4Z6U4Z624Z6T4oCL4Z6S4Z+S4Z6c4Z6+4oCL4Z6y4Z+S4Z6Z4oCL4Z6R4Z624Z6T4Z+L4oCL4Z6f4Z6Y4Z+Q4Z6Z4oCL4Z6a4Z624Z6Z4oCL4Z6v4Z6A4Z6f4Z624Z6a4oCL4Z6f4Z6Y4Z+S4Z6a4Z624Z6U4Z+L4oCL4Z6A4Z6J4Z+S4Z6F4Z6U4Z+LICVzIgorCisjOiBzcmMvZmlsZXNkYi5jOjUyNgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgdG8gdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIuGelOGetuGek+KAi+GelOGemuGetuGeh+GfkOGemeKAi+GegOGfkuGek+Geu+GehOKAi+GegOGetuGemuKAi+Gen+GemuGen+GfgeGemuKAi+GekeGfheKAi+GegOGetuGek+Gfi+KAi+Ger+GegOGen+GetuGemuKAi+GeiuGfguGem+KAi+GelOGetuGek+KAi+GekuGfkuGenOGevuGesuGfkuGemeKAi+GekeGetuGek+Gfi+KAi+Gen+GemOGfkOGemSDhnorhn4LhnpvigIvhnprhnrbhnpnigIvhnq/hnoDhnp/hnrbhnprigIvhnp/hnpjhn5LhnprhnrbhnpThn4vigIvhnoDhnonhn5LhnoXhnpThn4sgJXMiCisKKyM6IHNyYy9maWxlc2RiLmM6NTI4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBmbHVzaCB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAi4Z6U4Z624Z6T4oCL4Z6U4Z6a4Z624Z6H4Z+Q4Z6Z4oCL4Z6A4Z+S4Z6T4Z674Z6E4oCL4Z6A4Z624Z6a4oCL4Z6U4Z6E4Z+S4Z6g4Z684Z6a4oCL4Z6v4Z6A4Z6f4Z624Z6a4oCL4Z6K4Z+C4Z6b4oCL4Z6U4Z624Z6T4oCL4Z6S4Z+S4Z6c4Z6+4Z6y4Z+S4Z6Z4oCL4Z6R4Z624Z6T4Z+L4oCL4Z6f4Z6Y4Z+Q4Z6ZIOGeiuGfguGem+KAi+GemuGetuGemeKAi+Ger+GegOGen+GetuGemuKAi+Gen+GemOGfkuGemuGetuGelOGfi+KAi+GegOGeieGfkuGeheGelOGfiyAlcyIKKworIzogc3JjL2ZpbGVzZGIuYzo1MzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHN5bmMgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIiIKKyLhnpThnrbhnpPigIvhnpThnprhnrbhnofhn5DhnpnigIvhnoDhn5LhnpPhnrvhnoTigIvhnoDhnrbhnprigIvhnpLhn5Lhnpzhnr7igIvhnp/hnpjhnoDhnrbhnpvhnoDhnpjhn5LhnpjigIvhnq/hnoDhnp/hnrbhnprigIvhnorhn4LhnpvigIvhnpThnrbhnpPigIvhnpLhn5Lhnpzhnr7hnrLhn5LhnpnhnpHhnrbhnpPhn4vigIvhnp/hnpjhn5Dhnpkg4Z6K4Z+C4Z6b4oCL4Z6a4Z624Z6Z4oCL4Z6v4Z6A4Z6f4Z624Z6a4oCL4Z6f4Z6Y4Z+S4Z6a4Z624Z6U4Z+L4oCL4Z6A4Z6J4Z+S4Z6F4Z6U4Z+LICVzIgorCisjOiBzcmMvZmlsZXNkYi5jOjUzMworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2xvc2UgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIuGelOGetuGek+KAi+GelOGemuGetuGeh+GfkOGemeKAi+GegOGfkuGek+Geu+GehOKAi+GegOGetuGemuKAi+GelOGet+GekeKAi+Ger+GegOGen+GetuGemuKAi+GeiuGfguGem+KAi+GelOGetuGek+KAi+GekuGfkuGenOGevuGesuGfkuGemeGekeGetuGek+Gfi+KAi+Gen+GemOGfkOGemSDhnorhn4LhnpvigIvhnprhnrbhnpnigIvhnq/hnoDhnp/hnrbhnprigIvhnp/hnpjhn5LhnprhnrbhnpThn4vigIvhnoDhnonhn5LhnoXhnpThn4sgJXMiCisKKyM6IHNyYy9maWxlc2RiLmM6NTM1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBpbnN0YWxsIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICLhnpThnrbhnpPigIvhnpThnprhnrbhnofhn5DhnpnigIvhnoDhn5LhnpPhnrvhnoTigIvhnoDhnrbhnprigIvhnorhn4bhnqHhnr7hnoTigIvhnq/hnoDhnp/hnrbhnprigIvigIvhnorhn4LhnpvigIvhnpThnrbhnpPigIvhnpLhn5Lhnpzhnr7hnrLhn5LhnpnhnpHhnrbhnpPhn4vigIvhnp/hnpjhn5Dhnpkg4Z6K4Z+C4Z6b4oCL4Z6a4Z624Z6Z4oCL4Z6v4Z6A4Z6f4Z624Z6a4oCL4Z6f4Z6Y4Z+S4Z6a4Z624Z6U4Z+L4oCL4Z6A4Z6J4Z+S4Z6F4Z6U4Z+LICVzIgorCisjOiBzcmMvaGVscC5jOjQ4Cittc2dpZCAibm90IGluc3RhbGxlZCIKK21zZ3N0ciAi4Z6Y4Z634Z6T4Z6U4Z624Z6T4Z6K4Z+G4Z6h4Z6+4Z6EIgorCisjOiBzcmMvaGVscC5jOjQ5Cittc2dpZCAibm90IGluc3RhbGxlZCBidXQgY29uZmlncyByZW1haW4iCittc2dzdHIgIuGemOGet+Gek+KAi+GelOGetuGek+KAi+GeiuGfhuGeoeGevuGehCDhnpThn4nhnrvhnpPhn5Lhno/hn4LigIvhnpThnrbhnpPigIvhnoDhn4bhno7hno/hn4vigIvhnprhnoXhnpPhnrbhnp/hnpjhn5Lhnpbhn5DhnpPhn5LhnpIiCisKKyM6IHNyYy9oZWxwLmM6NTAKKyMsIGZ1enp5Cittc2dpZCAiYnJva2VuIGR1ZSB0byBmYWlsZWQgcmVtb3ZhbCBvciBpbnN0YWxsYXRpb24iCittc2dzdHIgIuGelOGetuGek+KAi+GegeGevOGehSDhnorhn4ThnpnigIvhnp/hnrbhnprigIvhno/hn4LigIvhnoDhnrbhnprigIvhnpnhnoDhnoXhn4HhnonigIvhnpThnrbhnpPigIvhnpThnprhnrbhnofhn5DhnpkiCisKKyM6IHNyYy9oZWxwLmM6NTEKK21zZ2lkICJ1bnBhY2tlZCBidXQgbm90IGNvbmZpZ3VyZWQiCittc2dzdHIgIuGelOGetuGek+KAi+GeluGek+GfkuGem+GetiDhnpThn4nhnrvhnpPhn5Lhno/hn4LigIvhnpjhnrfhnpPigIvhnpThnrbhnpPigIvhnoDhn4bhno7hno/hn4vigIvhnprhnoXhnpPhnrbhnp/hnpjhn5Lhnpbhn5DhnpPhn5LhnpIiCisKKyM6IHNyYy9oZWxwLmM6NTIKK21zZ2lkICJicm9rZW4gZHVlIHRvIHBvc3RpbnN0IGZhaWx1cmUiCittc2dzdHIgIuGelOGetuGek+KAi+GegeGevOGeheKAi+GeiuGfhOGemeKAi+Gen+GetuKAi+GemuGej+GfguKAi+GelOGetuGek+KAi+GelOGemuGetuGeh+GfkOGemeKAi+GegOGfkuGek+Geu+GehOKAi+GegOGetuGemuKAi+GeiuGfhuGeoeGevuGehOKAi+KAi+Geh+GetuGemOGeu+GekyIKKworIzogc3JjL2hlbHAuYzo1MworbXNnaWQgImF3YWl0aW5nIHRyaWdnZXIgcHJvY2Vzc2luZyBieSBhbm90aGVyIHBhY2thZ2UiCittc2dzdHIgIiIKKworIzogc3JjL2hlbHAuYzo1NAorbXNnaWQgInRyaWdnZXJlZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvaGVscC5jOjU1Cittc2dpZCAiaW5zdGFsbGVkIgorbXNnc3RyICLhnpThnrbhnpPigIvhnorhn4bhnqHhnr7hnoTigIsiCisKKyM6IHNyYy9oZWxwLmM6MTA3CisjLCBmdXp6eQorbXNnaWQgIlBBVEggaXMgbm90IHNldC4iCittc2dzdHIgImRwa2cgLSDhnoDhn4bhnqDhnrvhnp/igIvCoOGfliBQQVRIIOGemOGet+Gek+KAi+GelOGetuGek+KAi+GegOGfhuGejuGej+Gfi+KAi8Kg4Z+UXG4iCisKKyM6IHNyYy9oZWxwLmM6MTI5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICInJXMnIG5vdCBmb3VuZCBpbiBQQVRIIG9yIG5vdCBleGVjdXRhYmxlLiIKK21zZ3N0ciAiZHBrZ8Kg4Z+WIGAlcycg4Z6a4Z6A4oCL4Z6Y4Z634Z6T4oCL4Z6D4Z6+4Z6J4oCL4Z6T4Z+F4oCL4Z6b4Z6+IFBBVEjCoOGflFxuIgorCisjOiBzcmMvaGVscC5jOjEzOAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIiVkIGV4cGVjdGVkIHByb2dyYW0gbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuXG4iCisiJXMiCittc2dpZF9wbHVyYWwgIiIKKyIlZCBleHBlY3RlZCBwcm9ncmFtcyBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS5cbiIKKyIlcyIKK21zZ3N0clswXSAiZHBrZ8Kg4Z+WIGAlcycg4Z6a4Z6A4oCL4Z6Y4Z634Z6T4oCL4Z6D4Z6+4Z6J4oCL4Z6T4Z+F4oCL4Z6b4Z6+IFBBVEjCoOGflFxuIgorbXNnc3RyWzFdICJkcGtnwqDhn5YgYCVzJyDhnprhnoDigIvhnpjhnrfhnpPigIvhnoPhnr7hnonigIvhnpPhn4XigIvhnpvhnr4gUEFUSMKg4Z+UXG4iCisKKyM6IHNyYy9oZWxwLmM6MTQxCisjLCBmdXp6eQorbXNnaWQgIiIKKyJOb3RlOiByb290J3MgUEFUSCBzaG91bGQgdXN1YWxseSBjb250YWluIC91c3IvbG9jYWwvc2JpbiwgL3Vzci9zYmluIGFuZCAvIgorInNiaW4uIgorbXNnc3RyICIiCisi4Z6a4Z6A4oCL4Z6Y4Z634Z6T4oCL4Z6D4Z6+4Z6J4oCL4Z6A4Z6Y4Z+S4Z6Y4Z6c4Z634Z6S4Z644oCL4Z6K4Z+C4Z6b4oCL4Z6U4Z624Z6T4oCL4Z6a4Z+G4Z6W4Z654Z6E4oCL4Z6R4Z674Z6AICVkIOGek+GfheKAi+Gem+GeviBQQVRIwqDhn5RcbiIKKyJOQsKg4Z+WIFBBVEgg4Z6a4Z6U4Z6f4Z+LIHJvb3Qg4Z6P4Z624Z6Y4oCL4Z6S4Z6Y4Z+S4Z6Y4Z6P4Z624oCL4Z6C4Z694Z6a4oCL4Z6Y4Z624Z6TIC91c3IvbG9jYWwvc2JpbiwgL3Vzci9zYmluIGFuZCAvc2JpbsKg4Z+UIgorCisjOiBzcmMvaGVscC5jOjE4OAorbXNnaWQgImFkbWluZGlyIG11c3QgYmUgaW5zaWRlIGluc3RkaXIgZm9yIGRwa2cgdG8gd29yayBwcm9wZXJseSIKK21zZ3N0ciAiIgorCisjOiBzcmMvaGVscC5jOjE5MCBzcmMvbWFpbi5jOjc0NworIywgZnV6enkKK21zZ2lkICJ1bmFibGUgdG8gc2V0ZW52IGZvciBzdWJwcm9jZXNzZXMiCittc2dzdHIgIuGemOGet+Gek+KAi+GeouGetuGeheKAi+GekOGfkuGem+GfguGehOKAi+GegOGfkuGek+Geu+GehCB2c25wcmludGYiCisKKyM6IHNyYy9oZWxwLmM6MTkyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjaHJvb3QgdG8gYCUuMjUwcyciCittc2dzdHIgIuGelOGetuGek+KAi+GelOGemuGetuGeh+GfkOGemeKAi+GeiuGevuGemOGfkuGelOGeuCBjaHJvb3Qg4Z6R4Z+FIGAlLjI1MHMnIgorCisjOiBzcmMvaGVscC5jOjE5NCBkcGtnLWRlYi9idWlsZC5jOjQ1NSBkcGtnLWRlYi9idWlsZC5jOjQ1NworIzogZHBrZy1kZWIvYnVpbGQuYzo1MzYgZHBrZy1kZWIvYnVpbGQuYzo1NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIGAlLjI1NXMnIgorbXNnc3RyICLhnpThnrbhnpPigIvhnpThnprhnrbhnofhn5DhnpnigIvhnoDhn5LhnpPhnrvhnoQgY2hkaXIg4Z6R4Z+F4Z6H4Z62YCUuMjU1cyciCisKKyM6IHNyYy9oZWxwLmM6MjU2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgZXhlY3V0ZSBwZXJtaXNzaW9ucyBvbiBgJS4yNTBzJyIKK21zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6A4Z+G4Z6O4Z6P4Z+L4oCL4Z6f4Z634Z6R4Z+S4Z6S4Z634oCL4Z6U4Z+S4Z6a4Z6P4Z634Z6U4Z6P4Z+S4Z6P4Z634oCL4Z6T4Z+F4oCL4Z6b4Z6+IGAlLjI1MHMnIgorCisjOiBzcmMvaGVscC5jOjI3NgorIywgZnV6enkKK21zZ2lkICJ1bmFibGUgdG8gc2V0ZW52IGZvciBtYWludGFpbmVyIHNjcmlwdCIKK21zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6Q4Z+S4Z6b4Z+C4Z6E4oCL4Z6A4Z+S4Z6T4Z674Z6EIHZzbnByaW50ZiIKKworIzogc3JjL2hlbHAuYzozMDAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImluc3RhbGxlZCAlcyBzY3JpcHQiCittc2dzdHIgIuGen+GfkuGeguGfkuGemuGeuOGelCAlcyDhnoXhnrbhnp/hn4siCisKKyM6IHNyYy9oZWxwLmM6MzEzIHNyYy9oZWxwLmM6MzgyIHNyYy9oZWxwLmM6NDQxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0ICVzIGAlLjI1MHMnIgorbXNnc3RyICLhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnoXhnrbhnpThn4vhnpXhn5Lhnorhnr7hnpggJXMgYCUuMjUwcyciCisKKyM6IHNyYy9oZWxwLmM6MzY4IHNyYy9oZWxwLmM6NDI4CisjLCBjLWZvcm1hdAorbXNnaWQgIm5ldyAlcyBzY3JpcHQiCittc2dzdHIgIuGen+GfkuGeguGfkuGemuGeuOGelCAlcyDhnpDhn5LhnpjhnrjigIsiCisKKyM6IHNyYy9oZWxwLmM6NDAyCisjLCBjLWZvcm1hdAorbXNnaWQgIm9sZCAlcyBzY3JpcHQiCittc2dzdHIgIuGen+GfkuGeguGfkuGemuGeuOGelCAlcyDhnoXhnrbhnp/hn4siCisKKyM6IHNyYy9oZWxwLmM6NDE2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCAlcyAnJS4yNTBzJzogJXMiCittc2dzdHIgIuGemOGet+Gek+KAi+GeouGetuGeheKAi+GeheGetuGelOGfi+GeleGfkuGeiuGevuGemCAlcyBgJS4yNTBzJyIKKworIzogc3JjL2hlbHAuYzo0MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZyAtIHRyeWluZyBzY3JpcHQgZnJvbSB0aGUgbmV3IHBhY2thZ2UgaW5zdGVhZCAuLi5cbiIKK21zZ3N0ciAiZHBrZyAtIOGen+GetuGegOGem+GfkuGelOGehOKAi+Gen+GfkuGeguGfkuGemuGeuOGelOKAi+GeluGeuOKAi+GegOGeieGfkuGeheGelOGfi+KAi+GekOGfkuGemOGeuOKAi+Geh+GfhuGek+GeveGen+KAi+GenOGet+GeiSAuLi5cbiIKKworIzogc3JjL2hlbHAuYzo0MzkKK21zZ2lkICJ0aGVyZSBpcyBubyBzY3JpcHQgaW4gdGhlIG5ldyB2ZXJzaW9uIG9mIHRoZSBwYWNrYWdlIC0gZ2l2aW5nIHVwIgorbXNnc3RyICLhnoLhn5LhnpjhnrbhnpPigIvhnp/hn5LhnoLhn5LhnprhnrjhnpTigIvhnpPhn4XigIvhnoDhn5LhnpPhnrvhnoTigIvhnoDhn4bhno7hn4LigIvhnpDhn5LhnpjhnrjigIvhnprhnpThnp/hn4vigIvhnoDhnonhn5LhnoXhnpThn4sgLSDhnpThn4Thn4fhnpThnoThn4siCisKKyM6IHNyYy9oZWxwLmM6NDQ1CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IC4uLiBpdCBsb29rcyBsaWtlIHRoYXQgd2VudCBPSy5cbiIKK21zZ3N0ciAiZHBrZ8Kg4Z+WIC4uLiDhnpzhnrbigIvhnpjhnr7hnpvigIvhnpHhn4XigIvhnqDhnrbhnoDhn4vhnpThnrjigIvhnorhnrzhnoXhnofhnrbigIvhnoLhn5LhnpjhnrbhnpPigIvhnpThnonhn5LhnqDhnrbCoOGflFxuIgorCisjOiBzcmMvaGVscC5jOjYxNgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNlY3VyZWx5IHJlbW92ZSAnJS4yNTVzJyIKK21zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6U4Z6E4Z+S4Z6A4Z6+4Z6P4oCLIGAlLjI1NXMnIgorCisjOiBzcmMvaGVscC5jOjYyMSBkcGtnLWRlYi9pbmZvLmM6NjUgZHBrZy1kZWIvaW5mby5jOjY3Cittc2dpZCAicm0gY29tbWFuZCBmb3IgY2xlYW51cCIKK21zZ3N0ciAiIgorCisjOiBzcmMvaW5mb2RiLmM6NTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoZWNrIGV4aXN0ZW5jZSBvZiBgJS4yNTBzJyIKK21zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6W4Z634Z6T4Z634Z6P4Z+S4Z6Z4oCL4Z6Y4Z6+4Z6b4oCL4Z6X4Z624Z6W4oCL4Z6Y4Z624Z6T4oCL4Z6f4Z+S4Z6a4Z624Z6U4Z+L4oCL4Z6a4Z6U4Z6f4Z+LYCUuMjUwcyciCisKKyM6IHNyYy9pbmZvZGIuYzo3MAorbXNnaWQgImNhbm5vdCByZWFkIGluZm8gZGlyZWN0b3J5IgorbXNnc3RyICLhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnqLhnrbhnpPigIvhnpDhno/igIvhnpbhn5Dhno/hn4zhnpjhnrbhnpMiCisKKyM6IHNyYy9tYWluLmM6NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuIGAlcycgcGFja2FnZSBtYW5hZ2VtZW50IHByb2dyYW0gdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAi4Z6A4Z6Y4Z+S4Z6Y4Z6c4Z634Z6S4Z644oCL4Z6C4Z+S4Z6a4Z6U4Z+L4Z6C4Z+S4Z6a4Z6E4oCL4Z6A4Z6J4Z+S4Z6F4Z6U4Z+L4oCL4Z6K4Z+B4Z6U4Z+A4Z6TIGAlcycg4Z6A4Z+G4Z6O4Z+CICVzwqDhn5RcbiIKKworIzogc3JjL21haW4uYzo4NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLWl8LS1pbnN0YWxsICAgICAgIDwuZGViIGZpbGUgbmFtZT4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRpcmVjdG9yeT4gLi4uXG4iCisiICAtLXVucGFjayAgICAgICAgICAgPC5kZWIgZmlsZSBuYW1lPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyZWN0b3J5PiAuLi5cbiIKKyIgIC1BfC0tcmVjb3JkLWF2YWlsICA8LmRlYiBmaWxlIG5hbWU+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXJlY3Rvcnk+IC4uLlxuIgorIiAgLS1jb25maWd1cmUgICAgICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC0tdHJpZ2dlcnMtb25seSAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtcnwtLXJlbW92ZSAgICAgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLVB8LS1wdXJnZSAgICAgICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC0tZ2V0LXNlbGVjdGlvbnMgWzxwYXR0ZXJuPiAuLi5dIEdldCBsaXN0IG9mIHNlbGVjdGlvbnMgdG8gc3Rkb3V0LlxuIgorIiAgLS1zZXQtc2VsZWN0aW9ucyAgICAgICAgICAgICAgICAgU2V0IHBhY2thZ2Ugc2VsZWN0aW9ucyBmcm9tIHN0ZGluLlxuIgorIiAgLS1jbGVhci1zZWxlY3Rpb25zICAgICAgICAgICAgICAgRGVzZWxlY3QgZXZlcnkgbm9uLWVzc2VudGlhbCBwYWNrYWdlLlxuIgorIiAgLS11cGRhdGUtYXZhaWwgPFBhY2thZ2VzLWZpbGU+ICAgUmVwbGFjZSBhdmFpbGFibGUgcGFja2FnZXMgaW5mby5cbiIKKyIgIC0tbWVyZ2UtYXZhaWwgPFBhY2thZ2VzLWZpbGU+ICAgIE1lcmdlIHdpdGggaW5mbyBmcm9tIGZpbGUuXG4iCisiICAtLWNsZWFyLWF2YWlsICAgICAgICAgICAgICAgICAgICBFcmFzZSBleGlzdGluZyBhdmFpbGFibGUgaW5mby5cbiIKKyIgIC0tZm9yZ2V0LW9sZC11bmF2YWlsICAgICAgICAgICAgIEZvcmdldCB1bmluc3RhbGxlZCB1bmF2YWlsYWJsZSBwa2dzLlxuIgorIiAgLXN8LS1zdGF0dXMgPHBhY2thZ2U+IC4uLiAgICAgICAgRGlzcGxheSBwYWNrYWdlIHN0YXR1cyBkZXRhaWxzLlxuIgorIiAgLXB8LS1wcmludC1hdmFpbCA8cGFja2FnZT4gLi4uICAgRGlzcGxheSBhdmFpbGFibGUgdmVyc2lvbiBkZXRhaWxzLlxuIgorIiAgLUx8LS1saXN0ZmlsZXMgPHBhY2thZ2U+IC4uLiAgICAgTGlzdCBmaWxlcyBgb3duZWQnIGJ5IHBhY2thZ2UocykuXG4iCisiICAtbHwtLWxpc3QgWzxwYXR0ZXJuPiAuLi5dICAgICAgICBMaXN0IHBhY2thZ2VzIGNvbmNpc2VseS5cbiIKKyIgIC1TfC0tc2VhcmNoIDxwYXR0ZXJuPiAuLi4gICAgICAgIEZpbmQgcGFja2FnZShzKSBvd25pbmcgZmlsZShzKS5cbiIKKyIgIC1DfC0tYXVkaXQgICAgICAgICAgICAgICAgICAgICAgIENoZWNrIGZvciBicm9rZW4gcGFja2FnZShzKS5cbiIKKyIgIC0tcHJpbnQtYXJjaGl0ZWN0dXJlICAgICAgICAgICAgIFByaW50IGRwa2cgYXJjaGl0ZWN0dXJlLlxuIgorIiAgLS1jb21wYXJlLXZlcnNpb25zIDxhPiA8b3A+IDxiPiAgQ29tcGFyZSB2ZXJzaW9uIG51bWJlcnMgLSBzZWUgYmVsb3cuXG4iCisiICAtLWZvcmNlLWhlbHAgICAgICAgICAgICAgICAgICAgICBTaG93IGhlbHAgb24gZm9yY2luZy5cbiIKKyIgIC1EaHwtLWRlYnVnPWhlbHAgICAgICAgICAgICAgICAgIFNob3cgaGVscCBvbiBkZWJ1Z2dpbmcuXG4iCisiXG4iCittc2dzdHIgIiIKKyLhnpbhnrbhnoDhn5LhnpnhnpThnonhn5LhnofhnrbCoOGfllxuIgorIiAgLWl8LS1pbnN0YWxsICAgICAgIDwuZGViIGZpbGUgbmFtZT4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPOGekOGejz4gLi4uXG4iCisiICAtLXVucGFjayAgICAgICAgICAgPC5kZWIgZmlsZSBuYW1lPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA84Z6Q4Z6PPiAuLi5cbiIKKyIgIC1BfC0tcmVjb3JkLWF2YWlsICA8LmRlYiBmaWxlIG5hbWU+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDzhnpDhno8+IC4uLlxuIgorIiAgLS1jb25maWd1cmUgICAgICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLeGegOGfhuGeluGehOGfi+KAi+GemuGehOGfi+GeheGetuGfhlxuIgorIiAgLXJ8LS1yZW1vdmUgICAgICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLeGegOGfhuGeluGehOGfi+KAi+GemuGehOGfi+GeheGetuGfhlxuIgorIiAgLVB8LS1wdXJnZSAgICAgICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLeGegOGfhuGeluGeu+GehOKAi+GemuGehOGfi+GeheGetuGfhlxuIgorIiAgLS1nZXQtc2VsZWN0aW9ucyBbPHBhdHRlcm4+IC4uLl0g4Z6R4Z6R4Z694Z6b4oCL4Z6U4Z624Z6T4oCL4Z6U4Z6J4Z+S4Z6H4Z644oCL4Z6a4Z6U4Z6f4Z+L4oCL4Z6H4Z6Y4Z+S4Z6a4Z6+4Z6f4oCL4Z6R4Z+FIHN0ZG91dMKg4Z+UXG4iCisiICAtLXNldC1zZWxlY3Rpb25zICAgICAgICAgICAgICAgICDhnoDhn4bhno7hno/hn4vigIvhnofhnpjhn5Lhnprhnr7hnp/igIvhnoDhnonhn5LhnoXhnpThn4vigIvhnpbhnrggc3RkaW7CoOGflFxuIgorIiAgLS1jbGVhci1zZWxlY3Rpb25zICAgICAgICAgICAgICAg4Z6Y4Z634Z6T4oCL4Z6H4Z+S4Z6a4Z6+4Z6f4oCL4Z6C4Z+S4Z6a4Z6U4Z+L4oCL4Z6A4Z6J4Z+S4Z6F4Z6U4Z+L4oCL4Z6K4Z+C4Z6b4oCL4Z6Y4Z634Z6T4oCL4Z6f4Z+G4Z6B4Z624Z6T4Z+LwqDhn5RcbiIKKyIgIC0tdXBkYXRlLWF2YWlsIDxQYWNrYWdlcy1maWxlPiAgIOGeh+GfhuGek+GeveGen+KAi+GeluGfkOGej+GfjOGemOGetuGek+KAi+GegOGeieGfkuGeheGelOGfi+KAi+GeiuGfguGem+KAi+GemOGetuGek8Kg4Z+UXG4iCisiICAtLW1lcmdlLWF2YWlsIDxQYWNrYWdlcy1maWxlPiAgICDhnpThnonhn5LhnoXhnrzhnpvigIvigIvhnoLhn5LhnpPhnrbhnofhnrbigIvigIvhnpjhnr3hnpnigIvhnpbhn5Dhno/hn4zhnpjhnrbhnpPhnpbhnrjigIvhnq/hnoDhnp/hnrbhnprCoOGflFxuIgorIiAgLS1jbGVhci1hdmFpbCAgICAgICAgICAgICAgICAgICAg4Z6b4Z674Z6U4oCL4Z6W4Z+Q4Z6P4Z+M4Z6Y4Z624Z6T4oCL4Z6K4Z+C4Z6b4oCL4Z6i4Z624Z6F4Z6U4Z+S4Z6a4Z6+4oCL4Z6U4Z624Z6T4oCL4Z6Y4Z624Z6T4oCL4Z6f4Z+S4Z6a4Z624Z6U4Z+LwqDhn5RcbiIKKyIgIC0tZm9yZ2V0LW9sZC11bmF2YWlsICAgICAgICAgICAgIOGelOGfhuGel+GfkuGem+GfgeGeheKAi+GegOGeieGfkuGeheGelOGfi+KAi+GeiuGfguGem+KAi+GemOGet+Gek+KAi+GeouGetuGeheKAi+GelOGfkuGemuGevuKAi+GelOGetuGek+KAi+GeiuGfguGem+KAi+GemOGet+Gek+KAi+GelOGetuGek+KAi+GeiuGfhuGeoeGevuGehMKg4Z+UXG4iCisiICAtc3wtLXN0YXR1cyA8cGFja2FnZT4gLi4uICAgICAgICDhnpThnoThn5LhnqDhnrbhnonigIvhnp/hn4HhnoXhnoDhn5Lhno/hnrjigIvhnpvhnpjhn5LhnqLhnrfhno/igIvhnp/hn5LhnpDhnrbhnpPhnpfhnrbhnpbigIvhnoDhnonhn5LhnoXhnpThn4vCoOGflFxuIgorIiAgLXB8LS1wcmludC1hdmFpbCA8cGFja2FnZT4gLi4uICAg4Z6U4Z6E4Z+S4Z6g4Z624Z6J4oCL4Z6f4Z+B4Z6F4Z6A4Z+S4Z6P4Z644oCL4Z6b4Z6Y4Z+S4Z6i4Z634Z6P4oCL4Z6A4Z+G4Z6O4Z+C4oCL4Z6K4Z+C4Z6b4oCL4Z6Y4Z624Z6TwqDhn5RcbiIKKyIgIC1MfC0tbGlzdGZpbGVzIDxwYWNrYWdlPiAuLi4gICAgIOGemuGetuGemeKAi+Ger+GegOGen+GetuGemiBg4Z6K4Z+C4Z6b4Z6H4Z624oCL4Z6Y4Z+S4Z6F4Z624Z6f4Z+LJyDhnorhn4TigIvhnpnhnoDhnonhn5LhnoXhnpThn4vCoFxuIgorIiAgLWx8LS1saXN0IFs8cGF0dGVybj4gLi4uXSAgICAgICAg4Z6a4Z624Z6Z4oCL4Z6A4Z6J4Z+S4Z6F4Z6U4Z+L4oCL4Z6K4Z+E4Z6Z4Z6f4oCL4Z6E4Z+S4Z6B4Z+B4Z6UwqDhn5RcbiIKKyIgIC1TfC0tc2VhcmNoIDxwYXR0ZXJuPiAuLi4gICAgICAgIOGemuGegOKAi+KAi+GegOGeieGfkuGeheKAi+GelOGfi+KAi+GeiuGfguKAi+Gem+KAi+KAi+Geh+GetuKAi+GemOGfkuGeheGetuGen+Gfi+KAi+Ger+GegOGen+GetuGemsKg4Z+UXG4iCisiICAtQ3wtLWF1ZGl0ICAgICAgICAgICAgICAgICAgICAgICDhnpbhnrfhnpPhnrfhno/hn5LhnpnigIvhnpjhnr7hnpvigIvhnoDhnonhn5LhnoXhnpThn4vigIvhnorhn4LhnpvigIvhnoHhnrzhnoXCoOGflFxuIgorIiAgLS1wcmludC1hcmNoaXRlY3R1cmUgICAgICAgICAgICAg4Z6U4Z+E4Z+H4Z6W4Z674Z6Y4Z+S4Z6W4oCL4Z6f4Z+S4Z6Q4Z624Z6U4Z6P4Z+S4Z6Z4Z6A4Z6Y4Z+S4Z6Y4oCL4Z6a4Z6U4Z6f4Z+LIGRwa2fCoOGflFxuIgorIiAgLS1jb21wYXJlLXZlcnNpb25zIDxhPiA8b3A+IDxiPiAg4Z6U4Z+S4Z6a4Z+A4Z6U4Z6S4Z+A4Z6U4oCL4Z6b4Z+B4Z6B4oCL4Z6A4Z+G4Z6O4Z+CIC0g4Z6f4Z684Z6Y4oCL4Z6Y4Z6+4Z6b4oCL4Z6B4Z624Z6E4oCL4Z6A4Z+S4Z6a4Z+E4Z6YwqDhn5RcbiIKKyIgIC0tZm9yY2UtaGVscCAgICAgICAgICAgICAgICAgICAgIOGelOGehOGfkuGeoOGetuGeieKAi+Geh+GfhuGek+GeveGemeKAi+GeouGfhuGeluGeuOKAi+GegOGetuGemuKAi+GelOGehOGfkuGegeGfhsKg4Z+UXG4iCisiICAtRGh8LS1kZWJ1Zz1oZWxwICAgICAgICAgICAgICAgICDhnpThnoThn5LhnqDhnrbhnonigIvhnofhn4bhnpPhnr3hnpnigIvhnqLhn4bhnpbhnrjigIvhnoDhnrbhnprigIvhnpThn4bhnpThnrbhno/hn4vigIvhnoDhn4bhnqDhnrvhnp/CoOGflFxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjExMyBzcmMvcXVlcnljbWQuYzo2MzEgc3JjL3RyaWdjbWQuYzo3NyBkcGtnLWRlYi9tYWluLmM6ODgKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjc3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiICAtaHwtLWhlbHAgICAgICAgICAgICAgICAgICAgICAgICBTaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICAgICAgICAgU2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIiAgLWh8LS1oZWxwICAgICAgICAgICAgICAgICAgICAgICAg4Z6U4Z6E4Z+S4Z6g4Z624Z6J4oCL4Z6f4Z624Z6a4oCL4Z6H4Z+G4Z6T4Z694Z6Z4oCL4Z6T4Z+B4Z+HwqDhn5RcbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgICAgICAgIOGelOGehOGfkuGeoOGetuGeieKAi+GegOGfhuGejuGfgsKg4Z+UXG4iCisiICAtLWxpY2Vuc2V8LS1saWNlbmNlICAgICAgICAgICAgICDhnpThnoThn5LhnqDhnrbhnonigIvhnpbhnrbhnoDhn5LhnpnigIvhnqLhnrbhnofhn5LhnonhnrbhnpThn5Dhno7hn5Lhno7igIvhnprhnoDhn5Lhnp/hnrbhnp/hnrfhnpHhn5LhnpLhnrfCoOGflFxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjExOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVXNlIGRwa2cgLWJ8LS1idWlsZHwtY3wtLWNvbnRlbnRzfC1lfC0tY29udHJvbHwtSXwtLWluZm98LWZ8LS1maWVsZHxcbiIKKyIgLXh8LS1leHRyYWN0fC1YfC0tdmV4dHJhY3R8LS1mc3lzLXRhcmZpbGUgIG9uIGFyY2hpdmVzICh0eXBlICVzIC0taGVscCkuXG4iCisiXG4iCittc2dzdHIgIiIKKyLhnpThn5Lhnprhnr4gZHBrZyAtYnwtLWJ1aWxkfC1jfC0tY29udGVudHN8LWV8LS1jb250cm9sfC1JfC0taW5mb3wtZnwtLWZpZWxkfFxuIgorIiAteHwtLWV4dHJhY3R8LVh8LS12ZXh0cmFjdHwtLWZzeXMtdGFyZmlsZSAg4Z6T4Z+F4oCL4Z6b4Z6+4oCL4Z6U4Z+Q4Z6O4Z+S4Z6O4Z6f4Z624Z6aICjhnpzhnrbhnpkgJXMgLS1oZWxwKS5cbiIKKyJcbiIKKworIzogc3JjL21haW4uYzoxMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkZvciBpbnRlcm5hbCB1c2U6IGRwa2cgLS1hc3NlcnQtc3VwcG9ydC1wcmVkZXBlbmRzIHwgLS1wcmVkZXAtcGFja2FnZSB8XG4iCisiICAtLWFzc2VydC13b3JraW5nLWVwb2NoIHwgLS1hc3NlcnQtbG9uZy1maWxlbmFtZXMgfCAtLWFzc2VydC1tdWx0aS1jb25yZXAuXG4iCisiXG4iCittc2dzdHIgIiIKKyLhnp/hnpjhn5LhnprhnrbhnpThn4vhnoDhnrbhnprhnpThn5Lhnprhnr7hnoHhnrbhnoThnoDhn5LhnpPhnrvhnoTCoOGfliBkcGtnIC0tYXNzZXJ0LXN1cHBvcnQtcHJlZGVwZW5kcyB8IC0tcHJlZGVwLXBhY2thZ2UgfFxuIgorIiAgLS1hc3NlcnQtd29ya2luZy1lcG9jaCB8IC0tYXNzZXJ0LWxvbmctZmlsZW5hbWVzIHwgLS1hc3NlcnQtbXVsdGktIgorImNvbnJlcMKg4Z+UXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTI4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT4gICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorIiAgLS1yb290PTxkaXJlY3Rvcnk+ICAgICAgICAgSW5zdGFsbCBvbiBhIGRpZmZlcmVudCByb290IGRpcmVjdG9yeS5cbiIKKyIgIC0taW5zdGRpcj08ZGlyZWN0b3J5PiAgICAgIENoYW5nZSBpbnN0YWxsYXRpb24gZGlyIHdpdGhvdXQgY2hhbmdpbmcgYWRtaW4gIgorImRpci5cbiIKKyIgIC0tcGF0aC1leGNsdWRlPTxwYXR0ZXJuPiAgIERvIG5vdCBpbnN0YWxsIHBhdGhzIHdoaWNoIG1hdGNoIGEgc2hlbGwgIgorInBhdHRlcm4uXG4iCisiICAtLXBhdGgtaW5jbHVkZT08cGF0dGVybj4gICBSZS1pbmNsdWRlIGEgcGF0dGVybiBhZnRlciBhIHByZXZpb3VzICIKKyJleGNsdXNpb24uXG4iCisiICAtT3wtLXNlbGVjdGVkLW9ubHkgICAgICAgICBTa2lwIHBhY2thZ2VzIG5vdCBzZWxlY3RlZCBmb3IgaW5zdGFsbC8iCisidXBncmFkZS5cbiIKKyIgIC1FfC0tc2tpcC1zYW1lLXZlcnNpb24gICAgIFNraXAgcGFja2FnZXMgd2hvc2Ugc2FtZSB2ZXJzaW9uIGlzIGluc3RhbGxlZC5cbiIKKyIgIC1HfC0tcmVmdXNlLWRvd25ncmFkZSAgICAgIFNraXAgcGFja2FnZXMgd2l0aCBlYXJsaWVyIHZlcnNpb24gdGhhbiAiCisiaW5zdGFsbGVkLlxuIgorIiAgLUJ8LS1hdXRvLWRlY29uZmlndXJlICAgICAgSW5zdGFsbCBldmVuIGlmIGl0IHdvdWxkIGJyZWFrIHNvbWUgb3RoZXIgIgorInBhY2thZ2UuXG4iCisiICAtLVtuby1ddHJpZ2dlcnMgICAgICAgICAgICBTa2lwIG9yIGZvcmNlIGNvbnNlcXVlbnRpYWwgdHJpZ2dlciAiCisicHJvY2Vzc2luZy5cbiIKKyIgIC0tbm8tZGVic2lnICAgICAgICAgICAgICAgIERvIG5vdCB0cnkgdG8gdmVyaWZ5IHBhY2thZ2Ugc2lnbmF0dXJlcy5cbiIKKyIgIC0tbm8tYWN0fC0tZHJ5LXJ1bnwtLXNpbXVsYXRlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBKdXN0IHNheSB3aGF0IHdlIHdvdWxkIGRvIC0gZG9uJ3QgZG8gaXQuXG4iCisiICAtRHwtLWRlYnVnPTxvY3RhbD4gICAgICAgICBFbmFibGUgZGVidWdnaW5nIChzZWUgLURoZWxwIG9yIC0tZGVidWc9aGVscCkuXG4iCisiICAtLXN0YXR1cy1mZCA8bj4gICAgICAgICAgICBTZW5kIHN0YXR1cyBjaGFuZ2UgdXBkYXRlcyB0byBmaWxlIGRlc2NyaXB0b3IgIgorIjxuPi5cbiIKKyIgIC0tbG9nPTxmaWxlbmFtZT4gICAgICAgICAgIExvZyBzdGF0dXMgY2hhbmdlcyBhbmQgYWN0aW9ucyB0byA8ZmlsZW5hbWU+LlxuIgorIiAgLS1pZ25vcmUtZGVwZW5kcz08cGFja2FnZT4sLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZ25vcmUgZGVwZW5kZW5jaWVzIGludm9sdmluZyA8cGFja2FnZT4uXG4iCisiICAtLWZvcmNlLS4uLiAgICAgICAgICAgICAgICBPdmVycmlkZSBwcm9ibGVtcyAoc2VlIC0tZm9yY2UtaGVscCkuXG4iCisiICAtLW5vLWZvcmNlLS4uLnwtLXJlZnVzZS0uLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3Agd2hlbiBwcm9ibGVtcyBlbmNvdW50ZXJlZC5cbiIKKyIgIC0tYWJvcnQtYWZ0ZXIgPG4+ICAgICAgICAgIEFib3J0IGFmdGVyIGVuY291bnRlcmluZyA8bj4gZXJyb3JzLlxuIgorIlxuIgorbXNnc3RyICIiCisi4Z6H4Z6Y4Z+S4Z6a4Z6+4Z6fwqDhn5ZcbiIKKyIgIC0tYWRtaW5kaXI9POGekOGejz4gICAgIOGelOGfkuGemuGeviA84Z6Q4Z6PPiDhnofhn4bhnpPhnr3hnp/igIvhnrLhn5LhnpkgJXPCoOGflFxuIgorIiAgLS1yb290PTzhnpDhno8+ICAgICAgICAg4Z6K4Z+G4Z6h4Z6+4Z6E4oCL4Z6T4Z+F4oCL4Z6b4Z6+4oCL4Z6Q4Z6PIHJvb3Qg4Z6V4Z+S4Z6f4Z+B4Z6E4oCL4Z6C4Z+S4Z6T4Z62wqDhn5RcbiIKKyIgIC0taW5zdGRpcj084Z6Q4Z6PPiAgICAgIOGeleGfkuGem+GetuGen+Gfi+GelOGfkuGeiuGevOGemuKAi+GegOGetuGemuKAi+GeiuGfhuGeoeGevuGehOKAi+GekOGej+KAi+GeiuGfhOGemeKAi+GemOGet+Gek+KAi+GeleGfkuGem+GetuGen+Gfi+GelOGfkuGeiuGevOGemiBhZG1pbiBkaXLCoOGflFxuIgorIiAgLU98LS1zZWxlY3RlZC1vbmx5ICAgICAgICAg4Z6a4Z+G4Z6b4Z6E4oCL4Z6A4Z6J4Z+S4Z6F4Z6U4Z+L4oCL4Z6K4Z+C4Z6b4oCL4Z6Y4Z634Z6T4oCL4Z6U4Z624Z6T4oCL4Z6H4Z+S4Z6a4Z6+4Z6f4oCL4Z6K4Z6+4Z6Y4Z+S4Z6U4Z644oCL4Z6K4Z+G4Z6h4Z6+4Z6EL+GegOGetuGemuGekuGfkuGenOGevuKAi+GesuGfkuGemeKAi+GelOGfkuGemuGen+GevuGemuKAi+GeoeGevuGehMKg4Z+UXG4iCisiICAtRXwtLXNraXAtc2FtZS12ZXJzaW9uICAgICDhnprhn4bhnpvhnoTigIvhnoDhnonhn5LhnoXhnpThn4vigIvhnorhn4LhnpvigIvhnoDhn4bhno7hn4LigIvhnprhnpThnp/hn4vigIvhnpzhnrbigIvhnorhnrzhnoXhnoLhn5LhnpPhnrbigIvhnorhn4LhnpvigIvhnpThnrbhnpPigIvhnorhn4bhnqHhnr7hnoTCoOGflFxuIgorIiAgLUd8LS1yZWZ1c2UtZG93bmdyYWRlICAgICAg4Z6a4Z+G4Z6b4Z6E4oCL4Z6A4Z6J4Z+S4Z6F4Z6U4Z+L4oCL4Z6K4Z+C4Z6b4oCL4Z6A4Z+G4Z6O4Z+C4oCL4Z6R4Z624Z6U4oCL4Z6H4Z624Z6E4oCL4Z6A4Z+G4Z6O4Z+C4oCL4Z6K4Z+C4Z6b4oCL4Z6U4Z624Z6T4oCL4Z6K4Z+G4Z6h4Z6+4Z6EwqDhn5RcbiIKKyIgIC1CfC0tYXV0by1kZWNvbmZpZ3VyZSAgICAgIOGeiuGfhuGeoeGevuGehOKAi+GekeGfhOGfh+KAi+GelOGeuOGeh+GetuKAi+GenOGetuKAi+Gek+GeueGehOKAi+GelOGfhuGelOGfguGegOKAi+GegOGeieGfkuGeheGelOGfi+KAi+GemOGeveGemeKAi+GeheGfhuGek+GeveGek+KAi+GeleGfkuGen+GfgeGehOKAi+GekeGfgOGej+GegOGfj+KAi+GeiuGfhOGemcKg4Z+UXG4iCisiICAtLW5vLWRlYnNpZyAgICAgICAgICAgICAgICDhnoDhnrvhn4bhnpbhn5LhnpnhnrbigIvhnpnhnrbhnpjigIvhnpXhn5LhnpHhn4Dhno/hnpXhn5LhnpHhnrbhno/hn4vigIvhnqDhno/hn5LhnpDhnpvhn4HhnoHhnrbigIvhnoDhnonhn5LhnoXhnpThn4vCoOGflFxuIgorIiAgLS1uby1hY3R8LS1kcnktcnVufC0tc2ltdWxhdGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIOGeguGfkuGemuGetuGek+Gfi+KAi+Gej+GfguKAi+Gek+Get+GemeGetuGemeKAi+Gek+GevOGenOKAi+GeouGfkuGenOGeuOKAi+GeiuGfguGem+KAi+GemeGevuGehOKAi+Gek+GeueGehOKAi+GekuGfkuGenOGeviAtIOGegOGeu+GfhuKAi+KAi+GekuGfkuGenOGevuGenOGetsKg4Z+UXG4iCisiICAtRHwtLWRlYnVnPTxvY3RhbD4gICAgICAgICDhnqLhnpPhnrvhnonhn5Lhnonhnrbhno/igIvhnoDhnrbhnprigIvhnpThn4bhnpThnrbhno/hn4vigIvhnoDhn4bhnqDhnrvhnp8gKOGen+GevOGemOGemOGevuGemyAtRGhlbHAg4Z6sIC0tIgorImRlYnVnPWhlbHApwqDhn5RcbiIKKyIgIC0tc3RhdHVzLWZkIDxuPiAgICAgICAgICAgIOGeleGfkuGeieGevuGen+GfkuGekOGetuKAi+Gek+Gel+GetuGeluKAi+GeleGfkuGem+GetuGen+Gfi+GelOGfkuGeiuGevOGemuKAi+GegOGetuGemuKAi+KAi+GekuGfkuGenOGevuGesuGfkuGemeGekeGetuGek+Gfi+KAi+Gen+GemOGfkOGemeKAi+GekeGfheKAi+GegOGemOGfkuGemOGenOGet+GekuGeuOKAi+GeluGet+GeluGejuGfjOGek+GetuKAiyIKKyLhnq/hnoDhnp/hnrbhnpogPG4+wqDhn5RcbiIKKyIgIC0tbG9nPTxmaWxlbmFtZT4gICAgICAgICAgIOGegOGetuGemuKAi+GeleGfkuGem+GetuGen+Gfi+GelOGfkuGeiuGevOGemuKAi+Gen+GfkuGekOGetuGek+Gel+GetuGeluKAi+GegOGfhuGejuGej+Gfi+KAi+GeoOGfgeGej+GeuyDhnpPhnrfhnoTigIvhnqLhn4bhnpbhnr7igIvhnpHhn4UgPOGeiOGfkuGemOGfhOGfh+Ger+GegOGen+GetuGemj7CoOGflFxuIgorIiAgLS1pZ25vcmUtZGVwZW5kcz08cGFja2FnZT4sLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICDhnpjhnrfhnpPigIvhnqLhnr7hnpbhnr7igIvhnpfhnrbhnpbigIvhnqLhnrbhnp/hn5Lhnprhn5DhnpnigIvhnorhn4LhnpvigIvhnpbhnrbhnoDhn4vhnpbhn5DhnpPhn5LhnpLigIvhnpPhnrnhnoQgPOGegOGeieGfkuGeheGelOGfiz7CoOGflFxuIgorIiAgLS1mb3JjZS0uLi4gICAgICAgICAgICAgICAg4Z6U4Z6K4Z634Z6f4Z+B4Z6S4oCL4Z6U4Z6J4Z+S4Z6g4Z62ICjhnp/hnrzigIvhnpjhnpjhnr7hnpsgLS1mb3JjZS1oZWxwKcKg4Z+UXG4iCisiICAtLW5vLWZvcmNlLS4uLnwtLXJlZnVzZS0uLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIOGelOGeieGfkuGeiOGelOGfi+KAi+Gek+GfheKAi+GeluGfgeGem+KAi+GelOGetuGek+KAi+Geh+GeveGelOKAi+GelOGfkuGemuGekeGfh+KAi+GelOGeieGfkuGeoOGetsKg4Z+UXG4iCisiICAtLWFib3J0LWFmdGVyIDxuPiAgICAgICAgICDhnpThn4Thn4fhnpThnoThn4vigIvhnpThnpPhn5LhnpHhnrbhnpThn4vigIvhnpbhnrjigIvhnpThnrbhnpPigIvhnofhnr3hnpTigIvhnpThn5LhnprhnpHhn4cgPG4+IOGegOGfhuGeoOGeu+Gen8Kg4Z+UXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTU0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21wYXJpc29uIG9wZXJhdG9ycyBmb3IgLS1jb21wYXJlLXZlcnNpb25zIGFyZTpcbiIKKyIgIGx0IGxlIGVxIG5lIGdlIGd0ICAgICAgICh0cmVhdCBlbXB0eSB2ZXJzaW9uIGFzIGVhcmxpZXIgdGhhbiBhbnkgIgorInZlcnNpb24pO1xuIgorIiAgbHQtbmwgbGUtbmwgZ2UtbmwgZ3QtbmwgKHRyZWF0IGVtcHR5IHZlcnNpb24gYXMgbGF0ZXIgdGhhbiBhbnkgdmVyc2lvbik7XG4iCisiICA8IDw8IDw9ID0gPj0gPj4gPiAgICAgICAob25seSBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIGNvbnRyb2wgZmlsZSAiCisic3ludGF4KS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIuGen+GeieGfkuGeieGetuKAi+GelOGfkuGemuGemOGetuGejuGenOGet+GekuGeuOKAi+GelOGfkuGemuGfgOGelOGekuGfgOGelOKAi+Gen+GemOGfkuGemuGetuGelOGfiyAtLeGelOGfkuGemuGelOGfgOGelOGekuGfgOGelOKAi+GegOGfhuGejuGfguKAi+GeguGeusKg4Z+WXG4iCisiICBsdCBsZSBlcSBuZSBnZSBndCAgICAgICAo4Z6F4Z624Z6A4Z+L4oCL4Z6R4Z674Z6A4oCL4Z6A4Z+G4Z6O4Z+C4oCL4Z6R4Z6R4Z+B4oCL4Z6H4Z624oCL4Z6A4Z+G4Z6O4Z+C4oCL4Z6R4Z624Z6U4oCL4Z6H4Z624Z6E4oCL4Z6A4Z+G4oCL4Z6O4Z+C4Z6O4Z624oCL4Z6Y4Z694Z6ZKVxuIgorIiAgbHQtbmwgbGUtbmwgZ2UtbmwgZ3QtbmwgKOGeheGetuGej+Gfi+KAi+GekeGeu+GegOKAi+GegOGfhuGejuGfguKAi+GekeGekeGfgeKAi+Geh+GetuKAi+GegOGfhuGejuGfguKAi+GegeGfkuGeluGen+Gfi+KAi+Geh+GetuGehOKAi+GegOGfhuGejuGfguKAi+GejuGetuKAi+GemOGeveGemSlcbiIKKyIgIDwgPDwgPD0gPSA+PSA+PiA+ICAgICAgICjhnp/hnpjhn5LhnprhnrbhnpThn4vigIvhno/hn4LigIvhnpfhnrbhnpbigIvhnobhnpThnoLhn5LhnpPhnrbigIvhnofhnrbigIvhnpjhnr3hnpnigIvhnpzhnrbhnoDhn5Lhnpnhnp/hnpjhn5Lhnpbhn5DhnpPhn5LhnpLigIvhnq/hnoDhnp/hnrbhnprigIvhnpzhno/hn5LhnpDhnrvigIvhnpThnonhn5LhnofhnrYpwqDhn5RcbiIKKyJcbiIKKworIzogc3JjL21haW4uYzoxNjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiVXNlIGBkc2VsZWN0JyBvciBgYXB0aXR1ZGUnIGZvciB1c2VyLWZyaWVuZGx5IHBhY2thZ2UgbWFuYWdlbWVudC5cbiIKK21zZ3N0ciAi4Z6U4Z+S4Z6a4Z6+IGBkc2VsZWN0JyDhnqwgYGFwdGl0dWRlJyDhnp/hnpjhn5LhnprhnrbhnpThn4vigIvhnoLhn5LhnprhnpThn4vhnoLhn5LhnprhnoTigIvhnoDhnonhn5LhnoXhnpThn4vigIvhnorhn4LhnpvigIvhnqLhn5LhnpPhnoDigIvhnpThn5Lhnprhnr7igIvhnoThnrbhnpnigIvhnp/hn5Lhnprhnr3hnpvigIvhnpjhnr7hnpvCoOGflFxuIgorCisjOiBzcmMvbWFpbi5jOjE3MAorIywgZnV6enkKK21zZ2lkICIiCisiVHlwZSBkcGtnIC0taGVscCBmb3IgaGVscCBhYm91dCBpbnN0YWxsaW5nIGFuZCBkZWluc3RhbGxpbmcgcGFja2FnZXMgWypdO1xuIgorIlVzZSBgZHNlbGVjdCcgb3IgYGFwdGl0dWRlJyBmb3IgdXNlci1mcmllbmRseSBwYWNrYWdlIG1hbmFnZW1lbnQ7XG4iCisiVHlwZSBkcGtnIC1EaGVscCBmb3IgYSBsaXN0IG9mIGRwa2cgZGVidWcgZmxhZyB2YWx1ZXM7XG4iCisiVHlwZSBkcGtnIC0tZm9yY2UtaGVscCBmb3IgYSBsaXN0IG9mIGZvcmNpbmcgb3B0aW9ucztcbiIKKyJUeXBlIGRwa2ctZGViIC0taGVscCBmb3IgaGVscCBhYm91dCBtYW5pcHVsYXRpbmcgKi5kZWIgZmlsZXM7XG4iCisiXG4iCisiT3B0aW9ucyBtYXJrZWQgWypdIHByb2R1Y2UgYSBsb3Qgb2Ygb3V0cHV0IC0gcGlwZSBpdCB0aHJvdWdoIGBsZXNzJyBvciAiCisiYG1vcmUnICEiCittc2dzdHIgIiIKKyLhnpzhnrbhnpkgZHBrZyAtLWhlbHAg4Z6f4Z6Y4Z+S4Z6a4Z624Z6U4Z+L4oCL4Z6H4Z+G4Z6T4Z694Z6Z4oCL4Z6i4Z+G4Z6W4Z644oCL4Z6A4Z624Z6a4oCL4Z6K4Z+G4Z6h4Z6+4Z6EIOGek+Get+GehOKAi+GemOGet+Gek+KAi+GeiuGfhuGeoeGevuGehOKAi+GegOGeieGfkuGeheGelOGfiyBbKl1cbiIKKyLhnpThn5Lhnprhnr4gYGRzZWxlY3QnIOGerCBgYXB0aXR1ZGUnIOGen+GemOGfkuGemuGetuGelOGfi+KAi+GegOGetuGemuKAi+GeguGfkuGemuGelOGfi+GeguGfkuGemuGehOKAi+GegOGeieGfkuGeheGelOGfi+KAi+GeiuGfguGem+KAi+GeouGfkuGek+GegOKAi+GelOGfkuGemuGevuKAi+GehOGetuGemeKAi+Gen+GfkuGemuGeveGem+KAi+GemOGevuGem1xuIgorIuGenOGetuGemSBkcGtnIC1EaGVscCDhnp/hnpjhn5LhnprhnrbhnpThn4vigIvhnpjhnr7hnpvigIvhnpThnonhn5LhnofhnrjigIvhnprhnpThnp/hn4vigIvhno/hnpjhn5Lhnpvhn4PigIvhnpHhnoThn4vigIvhnpThn4bhnpThnrbhno/hn4vigIvhnoDhn4bhnqDhnrvhnp/igIvhnprhnpThnp/hn4sgZHBrZyBcbiIKKyLhnpzhnrbhnpkgZHBrZyAtLWZvcmNlLWhlbHAg4Z6f4Z6Y4Z+S4Z6a4Z624Z6U4Z+L4oCL4Z6Y4Z6+4Z6b4oCL4Z6U4Z6J4Z+S4Z6H4Z644oCL4Z6a4Z6U4Z6f4Z+L4oCL4Z6H4Z6Y4Z+S4Z6a4Z6+4Z6f4oCL4Z6U4Z6E4Z+S4Z6B4Z+GXG4iCisi4Z6c4Z624Z6ZIGRwa2ctZGViIC0taGVscCDhnp/hnpjhn5LhnprhnrbhnpThn4vigIvhnpjhnr7hnpvigIvhnofhn4bhnpPhnr3hnpnigIvhnqLhn4bhnpbhnrjigIvhnoDhnrbhnprigIvhnoLhno7hnpPhnrbigIvhnq/hnoDhnp/hnrbhnpogKi5kZWJcbiIKKyLhnpzhnrbhnpkgZHBrZyAtLWxpY2Vuc2Ug4Z6f4Z6Y4Z+S4Z6a4Z624Z6U4Z+L4oCL4Z6i4Z624Z6H4Z+S4Z6J4Z624Z6U4Z+Q4Z6O4Z+S4Z6O4oCL4Z6a4Z6A4Z+S4Z6f4Z624Z6f4Z634Z6R4Z+S4Z6S4Z63IOGek+Get+GehOKAi+GegeGfkuGenOGfh+KAi+GegOGetuGemuKAi+GekuGetuGek+GetiAoR05VIEdQTCkgWypdwqDhn5RcbiIKKyJcbiIKKyLhnofhnpjhn5Lhnprhnr7hnp/igIvhnpThnrbhnpPigIvhnp/hnpjhn5LhnoLhnrbhnpvhn4sgWypdIOGelOGehOGfkuGegOGevuGej+KAi+GekeGet+Gek+GfkuGek+GeleGem+KAi+Geh+GetuKAi+GeheGfkuGemuGevuGekyAtIOGelOGfhuGeluGehOGfi+KAi+GeiuGfguGem+KAi+GenOGetuKAi+GehuGfkuGem+GehOKAi+GegOGetuGej+GfiyBg4Z6P4Z634Z6FJyDhnqwgYOGeheGfkuGemuGevuGekyfCoCEiCisKKyM6IHNyYy9tYWluLmM6MjE5Cittc2dpZCAiU2V0IGFsbCBmb3JjZSBvcHRpb25zIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjIxCittc2dpZCAiUmVwbGFjZSBhIHBhY2thZ2Ugd2l0aCBhIGxvd2VyIHZlcnNpb24iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjMKK21zZ2lkICJDb25maWd1cmUgYW55IHBhY2thZ2Ugd2hpY2ggbWF5IGhlbHAgdGhpcyBvbmUiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjUKK21zZ2lkICJQcm9jZXNzIGluY2lkZW50YWwgcGFja2FnZXMgZXZlbiB3aGVuIG9uIGhvbGQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjcKK21zZ2lkICJUcnkgdG8gKGRlKWluc3RhbGwgdGhpbmdzIGV2ZW4gd2hlbiBub3Qgcm9vdCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIyOQorbXNnaWQgIlBBVEggaXMgbWlzc2luZyBpbXBvcnRhbnQgcHJvZ3JhbXMsIHByb2JsZW1zIGxpa2VseSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzMQorbXNnaWQgIkluc3RhbGwgYSBwYWNrYWdlIGV2ZW4gaWYgaXQgZmFpbHMgYXV0aGVudGljaXR5IGNoZWNrIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjMzCittc2dpZCAiUHJvY2VzcyBldmVuIHBhY2thZ2VzIHdpdGggd3JvbmcgdmVyc2lvbnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzUKK21zZ2lkICJPdmVyd3JpdGUgYSBmaWxlIGZyb20gb25lIHBhY2thZ2Ugd2l0aCBhbm90aGVyIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjM3Cittc2dpZCAiT3ZlcndyaXRlIGEgZGl2ZXJ0ZWQgZmlsZSB3aXRoIGFuIHVuZGl2ZXJ0ZWQgdmVyc2lvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzOQorbXNnaWQgIk92ZXJ3cml0ZSBvbmUgcGFja2FnZSdzIGRpcmVjdG9yeSB3aXRoIGFub3RoZXIncyBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjQxCittc2dpZCAiRG8gbm90IHBlcmZvcm0gc2FmZSBJL08gb3BlcmF0aW9ucyB3aGVuIHVucGFja2luZyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI0MworbXNnaWQgIkFsd2F5cyB1c2UgdGhlIG5ldyBjb25maWcgZmlsZXMsIGRvbid0IHByb21wdCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI0NQorbXNnaWQgIkFsd2F5cyB1c2UgdGhlIG9sZCBjb25maWcgZmlsZXMsIGRvbid0IHByb21wdCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI0OAorbXNnaWQgIiIKKyJVc2UgdGhlIGRlZmF1bHQgb3B0aW9uIGZvciBuZXcgY29uZmlnIGZpbGVzIGlmIG9uZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICBpcyBhdmFpbGFibGUsIGRvbid0IHByb21wdC4gSWYgbm8gZGVmYXVsdCBjYW4gYmUgIgorImZvdW5kLFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICB5b3Ugd2lsbCBiZSBwcm9tcHRlZCB1bmxlc3Mgb25lIG9mIHRoZSBjb25mb2xkIG9yXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmZuZXcgb3B0aW9ucyBpcyBhbHNvIGdpdmVuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjUzCittc2dpZCAiQWx3YXlzIGluc3RhbGwgbWlzc2luZyBjb25maWcgZmlsZXMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNTUKK21zZ2lkICJPZmZlciB0byByZXBsYWNlIGNvbmZpZyBmaWxlcyB3aXRoIG5vIG5ldyB2ZXJzaW9ucyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI1NworbXNnaWQgIlByb2Nlc3MgZXZlbiBwYWNrYWdlcyB3aXRoIHdyb25nIG9yIG5vIGFyY2hpdGVjdHVyZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI1OQorbXNnaWQgIkluc3RhbGwgZXZlbiBpZiBpdCB3b3VsZCBicmVhayBhbm90aGVyIHBhY2thZ2UiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNjEKK21zZ2lkICJBbGxvdyBpbnN0YWxsYXRpb24gb2YgY29uZmxpY3RpbmcgcGFja2FnZXMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNjMKKyMsIGZ1enp5CisjfCBtc2dpZCAiZGVwZW5kZW5jeSBwcm9ibGVtcyAtIG5vdCByZW1vdmluZyIKK21zZ2lkICJUdXJuIGFsbCBkZXBlbmRlbmN5IHByb2JsZW1zIGludG8gd2FybmluZ3MiCittc2dzdHIgIuGelOGeieGfkuGeoOGetuKAi+Gel+GetuGeluKAi+GeouGetuGen+GfkuGemuGfkOGemSAtIOGemOGet+Gek+KAi+GemeGegOKAi+GeheGfgeGeiSIKKworIzogc3JjL21haW4uYzoyNjUKKyMsIGZ1enp5CisjfCBtc2dpZCAiZGVwZW5kZW5jeSBwcm9ibGVtcyAtIG5vdCByZW1vdmluZyIKK21zZ2lkICJUdXJuIGRlcGVuZGVuY3kgdmVyc2lvbiBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzIgorbXNnc3RyICLhnpThnonhn5LhnqDhnrbigIvhnpfhnrbhnpbigIvhnqLhnrbhnp/hn5Lhnprhn5DhnpkgLSDhnpjhnrfhnpPigIvhnpnhnoDigIvhnoXhn4HhnokiCisKKyM6IHNyYy9tYWluLmM6MjY3Cittc2dpZCAiUmVtb3ZlIHBhY2thZ2VzIHdoaWNoIHJlcXVpcmUgaW5zdGFsbGF0aW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjY5Cittc2dpZCAiUmVtb3ZlIGFuIGVzc2VudGlhbCBwYWNrYWdlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjgxCittc2dpZCAiR2VuZXJhbGx5IGhlbHBmdWwgcHJvZ3Jlc3MgaW5mb3JtYXRpb24iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODIKKyMsIGZ1enp5Cittc2dpZCAiSW52b2NhdGlvbiBhbmQgc3RhdHVzIG9mIG1haW50YWluZXIgc2NyaXB0cyIKK21zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6Q4Z+S4Z6b4Z+C4Z6E4oCL4Z6A4Z+S4Z6T4Z674Z6EIHZzbnByaW50ZiIKKworIzogc3JjL21haW4uYzoyODMKK21zZ2lkICJPdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODQKK21zZ2lkICJMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4NQorIywgZnV6enkKKyN8IG1zZ2lkICJyZWFkIGVycm9yIGluIGNvbmZpZ3VyYXRpb24gZmlsZSBgJS4yNTVzJyIKK21zZ2lkICJPdXRwdXQgZm9yIGVhY2ggY29uZmlndXJhdGlvbiBmaWxlIgorbXNnc3RyICLhnoDhn4bhnqDhnrvhnp/igIvhnqLhnrbhnpPigIvhnpPhn4XigIvhnoDhn5LhnpPhnrvhnoTigIvhnq/hnoDhnp/hnrbhnprigIvhnoDhn4bhno7hno/hn4vigIvhnprhnoXhnpPhnrbhnp/hnpjhn5Lhnpbhn5DhnpPhn5LhnpIgYCUuMjU1cyciCisKKyM6IHNyYy9tYWluLmM6Mjg2Cittc2dpZCAiTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggY29uZmlndXJhdGlvbiBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg3Cittc2dpZCAiRGVwZW5kZW5jaWVzIGFuZCBjb25mbGljdHMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODgKK21zZ2lkICJMb3RzIG9mIGRlcGVuZGVuY2llcy9jb25mbGljdHMgb3V0cHV0IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg5Cittc2dpZCAiVHJpZ2dlciBhY3RpdmF0aW9uIGFuZCBwcm9jZXNzaW5nIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjkwCittc2dpZCAiTG90cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjkxCittc2dpZCAiU2lsbHkgYW1vdW50cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjkyCittc2dpZCAiTG90cyBvZiBkcml2ZWwgYWJvdXQgZWcgdGhlIGRwa2cvaW5mbyBkaXJlY3RvcnkiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyOTMKK21zZ2lkICJJbnNhbmUgYW1vdW50cyBvZiBkcml2ZWwiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzozMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzIGRlYnVnZ2luZyBvcHRpb24sIC0tZGVidWc9PG9jdGFsPiBvciAtRDxvY3RhbD46XG4iCisiXG4iCisiIE51bWJlciAgUmVmLiBpbiBzb3VyY2UgICBEZXNjcmlwdGlvblxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MzExCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJEZWJ1Z2dpbmcgb3B0aW9ucyBjYW4gYmUgbWl4ZWQgdXNpbmcgYml0d2lzZS1vci5cbiIKKyJOb3RlIHRoYXQgdGhlIG1lYW5pbmdzIGFuZCB2YWx1ZXMgYXJlIHN1YmplY3QgdG8gY2hhbmdlLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MzE5Cittc2dpZCAiLS1kZWJ1ZyByZXF1aXJlcyBhbiBvY3RhbCBhcmd1bWVudCIKK21zZ3N0ciAiLS3hnoDhnrbhnprigIvhnpThn4bhnpThnrbhno/hn4vigIvhnoDhn4bhnqDhnrvhnp/igIvhno/hn5LhnprhnrzhnpzhnoDhnrbhnprigIvhnqLhnrbhnoLhnrvhnpnhnpjhn4nhnoThn4vhnoLhn4Thnpsg4Z+oIgorCisjOiBzcmMvbWFpbi5jOjM0OAorIywgYy1mb3JtYXQKK21zZ2lkICJudWxsIHBhY2thZ2UgbmFtZSBpbiAtLWlnbm9yZS1kZXBlbmRzIGNvbW1hLXNlcGFyYXRlZCBsaXN0IGAlLjI1MHMnIgorbXNnc3RyICLhnoLhn5LhnpjhnrbhnpPigIvhnojhn5Lhnpjhn4Thn4figIvhnoDhnonhn5LhnoXhnpThn4vigIvhnpPhn4XigIvhnoDhn5LhnpPhnrvhnoQgLS1pZ25vcmUtZGVwZW5kcyDhnpThnonhn5LhnofhnrjigIvhnorhn4LhnpvigIvhnpThn4bhnpThn4LhnoDigIvhnorhn4ThnpnigIvhnp/hnonhn5LhnonhnrbhnoDhn5LhnpThn4Dhnp8gYCUuMjUwcyciCisKKyM6IHNyYy9tYWluLmM6MzU0CisjLCBjLWZvcm1hdAorbXNnaWQgIi0taWdub3JlLWRlcGVuZHMgcmVxdWlyZXMgYSBsZWdhbCBwYWNrYWdlIG5hbWUuIGAlLjI1MHMnIGlzIG5vdDsgJXMiCittc2dzdHIgIi0taWdub3JlLWRlcGVuZHMg4Z6P4Z+S4Z6a4Z684Z6c4Z6A4Z624Z6a4Z6I4Z+S4Z6Y4Z+E4Z+H4Z6A4Z6J4Z+S4Z6F4Z6U4Z+L4Z6P4Z+S4Z6a4Z654Z6Y4Z6P4Z+S4Z6a4Z684Z6cwqDhn5QgYCUuMjUwcycg4Z6Y4Z634Z6T4Z6Y4Z+C4Z6TICVzIgorCisjOiBzcmMvbWFpbi5jOjM3MSBzcmMvbWFpbi5jOjM4MSBzcmMvbWFpbi5jOjY0OSBkcGtnLXNwbGl0L21haW4uYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBpbnRlZ2VyIGZvciAtLSVzOiBgJS4yNTBzJyIKK21zZ3N0ciAi4Z6F4Z+G4Z6T4Z694Z6T4oCL4Z6C4Z6P4Z+L4oCL4Z6Y4Z634Z6T4oCL4Z6P4Z+S4Z6a4Z654Z6Y4Z6P4Z+S4Z6a4Z684Z6c4oCL4Z6f4Z6Y4Z+S4Z6a4Z624Z6U4Z+LIC0tJXM6IGAlLjI1MHMnIgorCisjOiBzcmMvbWFpbi5jOjQzOAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBleGVjdXRpbmcgaG9vayAnJXMnLCBleGl0IGNvZGUgJWQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzo0NjUKK21zZ2lkICJzdGF0dXMgbG9nZ2VyIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6NDgwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlcyBmb3JjaW5nIG9wdGlvbnMgLSBjb250cm9sIGJlaGF2aW91ciB3aGVuIHByb2JsZW1zIGZvdW5kOlxuIgorIiAgd2FybiBidXQgY29udGludWU6ICAtLWZvcmNlLTx0aGluZz4sPHRoaW5nPiwuLi5cbiIKKyIgIHN0b3Agd2l0aCBlcnJvcjogICAgLS1yZWZ1c2UtPHRoaW5nPiw8dGhpbmc+LC4uLiB8IC0tbm8tZm9yY2UtPHRoaW5nPiwuLi5cbiIKKyIgRm9yY2luZyB0aGluZ3M6XG4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzo0OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIldBUk5JTkcgLSB1c2Ugb2Ygb3B0aW9ucyBtYXJrZWQgWyFdIGNhbiBzZXJpb3VzbHkgZGFtYWdlIHlvdXIgaW5zdGFsbGF0aW9uLlxuIgorIkZvcmNpbmcgb3B0aW9ucyBtYXJrZWQgWypdIGFyZSBlbmFibGVkIGJ5IGRlZmF1bHQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzo1MDQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBmb3JjZS9yZWZ1c2Ugb3B0aW9uIGAlLipzJyIKK21zZ3N0ciAi4Z6H4Z6Y4Z+S4Z6a4Z6+4Z6f4oCL4Z6U4Z6E4Z+S4Z6B4Z+GL+GelOGeiuGet+Gen+GfgeGekuKAi+GeiuGfguGem+KAi+GemOGet+Gek+Gen+GfkuGeguGetuGem+GfiyBgJS4qcyciCisKKyM6IHNyYy9tYWluLmM6NTEzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJvYnNvbGV0ZSBmb3JjZS9yZWZ1c2Ugb3B0aW9uICclcydcbiIKK21zZ3N0ciAi4Z6W4Z+S4Z6a4Z6Y4Z624Z6TwqDhn5Yg4Z6H4Z6Y4Z+S4Z6a4Z6+4Z6f4oCL4Z6U4Z6E4Z+S4Z6B4Z+GL+GelOGeiuGet+Gen+GfgeGekiDhnorhn4LhnpvigIvhnpvhn4LhnoTigIvhnpThn5Lhnprhnr4gYCVzJ1xuIgorCisjOiBzcmMvbWFpbi5jOjY0MworbXNnaWQgIi0tY29tbWFuZC1mZCB0YWtlcyBvbmUgYXJndW1lbnQsIG5vdCB6ZXJvIgorbXNnc3RyICItLeGeluGetuGegOGfkuGemeKAi+GelOGeieGfkuGeh+Geti1mZCDigIvhno/hn5LhnprhnrzhnpzhnoDhnrbhnprigIvhnqLhnrbhnoLhnrvhnpnhnpjhn4nhnoThn4vigIvhnpjhnr3hnpkg4Z6Y4Z634Z6T4Z6Y4Z+C4Z6T4oCL4Z6f4Z684Z6T4Z+S4Z6ZIgorCisjOiBzcmMvbWFpbi5jOjY0NQorbXNnaWQgIi0tY29tbWFuZC1mZCBvbmx5IHRha2VzIG9uZSBhcmd1bWVudCIKK21zZ3N0ciAiLS3hnpbhnrbhnoDhn5LhnpnigIvhnpThnonhn5LhnofhnrYtZmQg4Z6P4Z+S4Z6a4Z684Z6c4Z6A4Z624Z6a4oCL4Z6P4Z+C4oCL4Z6i4Z624Z6C4Z674Z6Z4Z6Y4Z+J4Z6E4Z+L4oCL4Z6Y4Z694Z6Z4oCL4Z6U4Z+J4Z674Z6O4Z+S4Z6O4Z+E4Z+HIgorCisjOiBzcmMvbWFpbi5jOjY1MQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBvcGVuIGAlaScgZm9yIHN0cmVhbSIKK21zZ3N0ciAi4Z6Y4Z634Z6T4Z6i4Z624Z6F4Z6U4Z6+4Z6A4oCLIGAlaScg4Z6f4Z6Y4Z+S4Z6a4Z624Z6U4Z+L4oCL4Z6f4Z+S4Z6R4Z+S4Z6a4Z644Z6Y4oCLIgorCisjOiBzcmMvbWFpbi5jOjY3NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVvZiBiZWZvcmUgZW5kIG9mIGxpbmUgJWQiCittc2dzdHIgIuGeheGeu+GehOKAi+Ger+GegOGen+GetuKAi+GemuGeiuGfguGem+KAi+GemOGet+Gek+KAi+GelOGetuGek+KAi+GemuGfhuGeluGeueGehOKAi+GekeGeu+GegOKAi+GemOGeu+Gek+KAi+GeheGeu+GehOKAi+GelOGek+GfkuGekeGetuGej+GfiyAlZCIKKworIzogc3JjL21haW4uYzo3MTkgc3JjL21haW4uYzo3NDEgc3JjL3F1ZXJ5Y21kLmM6NjkyIHNyYy9zdGF0Y21kLmM6Mzc5CisjOiBkcGtnLWRlYi9tYWluLmM6MjAxIGRwa2ctc3BsaXQvbWFpbi5jOjE2MworbXNnaWQgIm5lZWQgYW4gYWN0aW9uIG9wdGlvbiIKK21zZ3N0ciAi4Z6P4Z+S4Z6a4Z684Z6c4oCL4Z6A4Z624Z6a4oCL4Z6H4Z6Y4Z+S4Z6a4Z6+4Z6f4oCL4Z6f4Z6A4Z6Y4Z+S4Z6Y4Z6X4Z624Z6W4oCL4Z6Y4Z694Z6ZIgorCisjOiBzcmMvcGFja2FnZXMuYzoxMTMKK21zZ2lkICIiCisieW91IG11c3Qgc3BlY2lmeSBwYWNrYWdlcyBieSB0aGVpciBvd24gbmFtZXMsIG5vdCBieSBxdW90aW5nIHRoZSBuYW1lcyBvZiAiCisidGhlIGZpbGVzIHRoZXkgY29tZSBpbiIKK21zZ3N0ciAiIgorIuGeouGfkuGek+GegOKAi+Gej+GfkuGemuGevOGenOGej+GfguKAi+GelOGeieGfkuGeh+GetuGegOGfi+KAi+GegOGeieGfkuGeheGelOGfi+KAi+Gej+GetuGemOKAi+GeiOGfkuGemOGfhOGfh+KAi+GeleGfkuGekeGetuGem+Gfi+KAi+GemuGelOGen+Gfi+KAi+GeluGeveGegOGenOGetiDhnpjhnrfhnpPhnpjhn4LhnpPigIvhno/hnrbhnpjigIvhnp/hnpjhn5LhnprhnoThn4vigIvhnojhn5Lhnpjhn4Thn4figIvhnprhnpThnp/hn4vigIvhnq/hnoDhnp/hnrbhnprigIvhnorhn4LhnpvigIvhnpbhnr3hnoDigIvhnpzhnrbigIvhnpjhnrbhnpPigIvhnpHhn4EiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjEzMworIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIC0tcGVuZGluZyBkb2VzIG5vdCB0YWtlIGFueSBub24tb3B0aW9uIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS0lcyAtLeGegOGetuGemuKAi+GemuGehOGfi+GeheGetuGfhuGemOGet+Gek+KAi+Gej+GfkuGemuGevOGenOGegOGetuGemuKAi+GeouGetuGeguGeu+GemeGemOGfieGehOGfi+KAi+GeiuGfguGem+KAi+GeguGfkuGemOGetuGek+KAi+Geh+GemOGfkuGemuGevuGenyIKKworIzogc3JjL3BhY2thZ2VzLmM6MTM4IHNyYy9xdWVyeWNtZC5jOjM3NSBzcmMvcXVlcnljbWQuYzo1NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhdCBsZWFzdCBvbmUgcGFja2FnZSBuYW1lIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIOGej+GfkuGemuGevOGenOGegOGetuGemuKAi+GemeGfieGetuGehOGeoOGfhOGeheKAi+GejuGetuGen+Gfi+KAi+GeouGetuGeguGeu+GemeGemOGfieGehOKAi+GeiOGfkuGemOGfhOGfh+KAi+GegOGeieGfkuGeheGelOGfi+KAi+GemOGeveGemSIKKworIzogc3JjL3BhY2thZ2VzLmM6MTc5CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgJXMgbGlzdGVkIG1vcmUgdGhhbiBvbmNlLCBvbmx5IHByb2Nlc3Npbmcgb25jZS5cbiIKK21zZ3N0ciAi4Z6A4Z6J4Z+S4Z6F4Z6U4Z+LICVzIOGeiuGfguGem+KAi+GelOGetuGek+KAi+GemuGetuGemeKAi+GeheGfkuGemuGevuGek+KAi+Geh+GetuGehOKAi+GemOGeveGemSDhnorhn4bhno7hnr7hnprigIvhnoDhnrbhnprigIvhno/hn4Lhnpjhn5LhnorhnoTigIvhnpThn4nhnrvhno7hn5Lhno7hn4Thn4fCoOGflFxuIgorCisjOiBzcmMvcGFja2FnZXMuYzoxODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk1vcmUgdGhhbiBvbmUgY29weSBvZiBwYWNrYWdlICVzIGhhcyBiZWVuIHVucGFja2VkXG4iCisiIGluIHRoaXMgcnVuICEgIE9ubHkgY29uZmlndXJpbmcgaXQgb25jZS5cbiIKK21zZ3N0ciAiIgorIuGemOGetuGek+KAi+GeheGfkuGelOGetuGelOGfi+KAi+GeheGemOGfkuGem+GehOKAi+GemuGelOGen+Gfi+KAi+GegOGeieGfkuGeheGelOGfiyAlcyDhnoXhn5Lhnprhnr7hnpPigIvhnofhnrbhnoTigIvhnpjhnr3hnpnigIvhno/hn5LhnprhnrzhnpzigIvhnpThnrbhnpPigIvhnpbhnpPhn5LhnpvhnrZcbiIKKyIg4Z6T4Z+F4oCL4Z6A4Z+S4Z6T4Z674Z6E4oCL4Z6A4Z624Z6a4oCL4Z6a4Z6P4Z+L4oCL4Z6T4Z+B4Z+HwqAhICDhnoDhn4bhno7hno/hn4vigIvhnprhnoXhnpPhnrbhnp/hnpjhn5Lhnpbhn5DhnpPhn5LhnpLigIvhnpzhnrbigIvhno/hn4Lhnpjhn5LhnorhnoTigIvhnpThn4nhnrvhno7hn5Lhno7hn4Thn4fCoOGflFxuIgorCisjOiBzcmMvcGFja2FnZXMuYzoyMzIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJwYWNrYWdlICUuMjUwcyBpcyBub3QgcmVhZHkgZm9yIHRyaWdnZXIgcHJvY2Vzc2luZ1xuIgorIiAoY3VycmVudCBzdGF0dXMgYCUuMjUwcycgd2l0aCBubyBwZW5kaW5nIHRyaWdnZXJzKSIKK21zZ3N0ciAiIgorIuGegOGeieGfkuGeheGelOGfiyAlLjI1MHMg4Z6Y4Z634Z6T4oCL4Z6R4Z624Z6T4Z+L4oCL4Z6a4Z694Z6F4Z6a4Z624Z6b4Z+LIOGeiuGevuGemOGfkuGelOGeuOKAi+GegOGfhuGejuGej+Gfi+KAi+GemuGeheGek+GetuGen+GemOGfkuGeluGfkOGek+GfkuGeklxuIgorIiDhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnoDhn4bhno7hno/hn4vigIvhnprhnoXhnpPhnrbhnp/hnpjhn5Lhnpbhn5DhnpPhn5LhnpIgKOGen+GfkuGekOGetuGek+Gel+GetuGeluKAi+GelOGeheGfkuGeheGeu+GelOGfkuGelOGek+GfkuGekyBgJS4yNTBzJykiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjMzNAorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgd2hpY2ggcHJvdmlkZXMgJXMgaXMgdG8gYmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiICDhnoDhnonhn5LhnoXhnpThn4sgJXMg4Z6K4Z+C4Z6b4oCL4Z6V4Z+S4Z6K4Z6b4Z+LICVzIOGej+GfkuGemuGevOGenOGej+GfguKAi+GelOGetuGek+KAi+GemeGegOGeheGfgeGeicKg4Z+UXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjMzNworIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgaXMgdG8gYmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiICDhnoDhnonhn5LhnoXhnpThn4sgJXMg4Z6P4Z+S4Z6a4Z684Z6c4Z6P4Z+C4Z6U4Z624Z6T4Z6Z4Z6A4Z6F4Z+B4Z6JwqDhn5RcbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MzU0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgVmVyc2lvbiBvZiAlcyBvbiBzeXN0ZW0gaXMgJXMuXG4iCittc2dzdHIgIiAg4Z6A4Z+G4Z6O4Z+C4oCL4Z6a4Z6U4Z6f4Z+LICVzIOGek+GfheKAi+Gem+GevuKAi+GelOGfkuGemuGeluGfkOGek+GfkuGekuKAi+GeguGeuiAlc8Kg4Z+UXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjM3NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIHdoaWNoIHByb3ZpZGVzICVzIGF3YWl0cyB0cmlnZ2VyIHByb2Nlc3NpbmcuXG4iCittc2dzdHIgIiAg4Z6A4Z6J4Z+S4Z6F4Z6U4Z+LICVzIOGeiuGfguGem+KAi+GeleGfkuGeiuGem+GfiyAlcyDhno/hn5Lhnprhnrzhnpzhno/hn4LigIvhnpThnrbhnpPigIvhnpnhnoDhnoXhn4HhnonCoOGflFxuIgorCisjOiBzcmMvcGFja2FnZXMuYzozODAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyBhd2FpdHMgdHJpZ2dlciBwcm9jZXNzaW5nLlxuIgorbXNnc3RyICIgIOGegOGeieGfkuGeheGelOGfiyAlcyDhno/hn5Lhnprhnrzhnpzhno/hn4LhnpThnrbhnpPhnpnhnoDhnoXhn4HhnonCoOGflFxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogYWxzbyBjb25maWd1cmluZyBgJXMnIChyZXF1aXJlZCBieSBgJXMnKVxuIgorbXNnc3RyICJkcGtnwqDhn5Yg4Z6A4Z+G4Z6O4Z6P4Z+L4oCL4Z6a4Z6F4Z6T4Z624Z6f4Z6Y4Z+S4Z6W4Z+Q4Z6T4Z+S4Z6S4oCL4Z6V4Z6E4oCL4Z6K4Z+C4Z6aIGAlcycgKOGekeGetuGemOGekeGetuGemuKAi+GeiuGfhOGemSBgJXMnKVxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIHdoaWNoIHByb3ZpZGVzICVzIGlzIG5vdCBjb25maWd1cmVkIHlldC5cbiIKK21zZ3N0ciAiICDhnoDhnonhn5LhnoXhnpThn4sgJXMg4Z6K4Z+C4Z6b4oCL4Z6V4Z+S4Z6K4Z6b4Z+LICVzIOGemOGet+Gek+KAi+Gej+GfkuGemuGevOGenOKAi+GelOGetuGek+KAi+GegOGfhuGejuGej+Gfi+KAi+GemuGeheGek+GetuGen+GemOGfkuGeluGfkOGek+GfkuGekuKAi+Gek+GfheKAi+GeoeGevuGemeKAi+GekeGfgcKg4Z+UXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQyMQorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgaXMgbm90IGNvbmZpZ3VyZWQgeWV0LlxuIgorbXNnc3RyICIgIOGegOGeieGfkuGeheGelOGfiyAlcyDhnpjhnrfhnpPigIvhno/hn5LhnprhnrzhnpzigIvhnoDhn4bhno7hno/hn4vigIvhnprhnoXhnpPhnrbhnp/hnpjhn5Lhnpbhn5DhnpPhn5LhnpLigIvhnpPhn4XigIvhnqHhnr7hnpnigIvhnpHhn4HCoOGflFxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIHdoaWNoIHByb3ZpZGVzICVzIGlzIG5vdCBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAg4Z6A4Z6J4Z+S4Z6F4Z6U4Z+LICVzIOGeiuGfguGem+KAi+GeleGfkuGeiuGem+GfiyAlcyDhnpjhnrfhnpPigIvhno/hn5LhnprhnrzhnpzigIvhnpThnrbhnpPigIvhnorhn4bhnqHhnr7hnoTigIvhnpPhn4XigIvhnqHhnr7hnpnigIvhnpHhn4HCoOGflFxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIGlzIG5vdCBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAg4Z6A4Z6J4Z+S4Z6F4Z6U4Z+LICVzIOGemOGet+Gek+Gej+GfkuGemuGevOGenOKAi+GelOGetuGek+KAi+GeiuGfhuGeoeGevuGehOKAi+Gek+GfheKAi+GeoeGevuGemeKAi+GekeGfgcKg4Z+UXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQ3MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiICVzICglcykgYnJlYWtzICVzIGFuZCBpcyAlcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMg4Z6V4Z+S4Z6K4Z6b4Z+LICUuMjUwcyDhnpPhnrfhnoTigIvhnoLhnrrhnofhnrYgJXPCoOGflFxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0NzgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiAgJXMgKCVzKSBwcm92aWRlcyAlcy5cbiIKK21zZ3N0ciAiJXMgKOGeiuGfhuGejuGevuGemuKAi+GegOGetuKAi+GemuKAi+GemuGehOKAiykg4Z+WICVzXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQ4MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiICBWZXJzaW9uIG9mICVzIHRvIGJlIGNvbmZpZ3VyZWQgaXMgJXMuXG4iCittc2dzdHIgIiAg4Z6A4Z+G4Z6O4Z+C4oCL4Z6a4Z6U4Z6f4Z+LICVzIOGek+GfheKAi+Gem+GevuKAi+GelOGfkuGemuGeluGfkOGek+GfkuGekuKAi+GeguGeuiAlc8Kg4Z+UXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjU5NgorbXNnaWQgIiBkZXBlbmRzIG9uICIKK21zZ3N0ciAi4Z6i4Z624Z6f4Z+S4Z6a4Z+Q4Z6Z4oCL4Z6b4Z6+4oCLIgorCisjOiBzcmMvcGFja2FnZXMuYzo2MDIKK21zZ2lkICI7IGhvd2V2ZXI6XG4iCittc2dzdHIgIjsg4Z6R4Z+E4Z+H4oCL4Z6H4Z624oCL4Z6Z4Z+J4Z624Z6E4Z6O4Z624oCL4Z6A4Z+P4Z6K4Z+E4Z6ZwqDhn5ZcbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo3MQorIywgYy1mb3JtYXQKK21zZ2lkICIuLi4vJXMiCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5MQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBlbnN1cmluZyBgJS4yNTBzJyBkb2Vzbid0IGV4aXN0IgorbXNnc3RyICLhnoDhn4bhnqDhnrvhnp/igIvhnorhnr7hnpjhn5LhnpThnrjigIvhnrLhn5LhnpnigIvhnpThn5LhnprhnrbhnoDhnorhnpDhnrYgYCUuMjUwcycg4Z6Y4Z634Z6T4oCL4Z6R4Z624Z6T4Z+L4oCL4Z6Y4Z624Z6TIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjk5Cittc2dpZCAic3BsaXQgcGFja2FnZSByZWFzc2VtYmx5IgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTA4Cittc2dpZCAicmVhc3NlbWJsZWQgcGFja2FnZSBmaWxlIgorbXNnc3RyICLhnq/hnoDhnp/hnrbhnprigIvhnoDhnonhn5LhnoXhnpThn4vigIvhnorhn4LhnpvigIvhnpThnrbhnpPigIvhnpXhn5Lhnorhnrvhn4bhnqHhnr7hnoTigIvhnpzhnrfhnokiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTMzCisjLCBjLWZvcm1hdAorbXNnaWQgIkF1dGhlbnRpY2F0aW5nICVzIC4uLlxuIgorbXNnc3RyICLhnoDhn4bhnpbhnrvhnoThnpXhn5LhnpHhn4DhnoThnpXhn5LhnpHhnrbhno/hn4vhnpfhnrbhnpbhno/hn5Lhnprhnrnhnpjhno/hn5LhnprhnrzhnpwgJXMgLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTM5Cittc2dpZCAicGFja2FnZSBzaWduYXR1cmUgdmVyaWZpY2F0aW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTQ2CisjLCBjLWZvcm1hdAorbXNnaWQgIlZlcmlmaWNhdGlvbiBvbiBwYWNrYWdlICVzIGZhaWxlZCEiCittc2dzdHIgIuGegOGetuGemuKAi+GeleGfkuGekeGfgOGej+GeleGfkuGekeGetuGej+Gfi+KAi+Gek+GfheGem+GevuKAi+GegOGeieGfkuGeheGelOGfiyAlcyDhnpThnrbhnpPigIvhnpThnprhnrbhnofhn5DhnpnCoCEiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTQ4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJWZXJpZmljYXRpb24gb24gcGFja2FnZSAlcyBmYWlsZWQsXG4iCisiYnV0IGluc3RhbGxpbmcgYW55d2F5IGFzIHlvdSByZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiIKKyLhnpXhn5LhnpHhn4DhnoThnpXhn5LhnpHhnrbhno/hn4vigIvhnpPhn4XigIvhnpvhnr7igIvhnoDhnonhn5LhnoXhnpThn4sgJXMg4Z6U4Z624Z6T4oCL4Z6U4Z6a4Z624Z6H4Z+Q4Z6ZXG4iCisi4Z6U4Z+J4Z674Z6T4Z+S4Z6P4Z+C4oCL4Z6R4Z+E4Z+H4Z6H4Z624oCL4Z6Z4Z+J4Z624Z6E4Z6O4Z624Z6A4Z+P4Z6K4Z+E4Z6Z4oCL4Z6K4Z+G4Z6h4Z6+4Z6E4oCL4Z6K4Z684Z6F4oCL4Z6K4Z+C4Z6b4oCL4Z6i4Z+S4Z6T4Z6A4oCL4Z6f4Z+S4Z6T4Z6+wqDhn5RcbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFzc2VkXG4iCittc2dzdHIgIuGelOGetuGek+GeoOGeu+GehVxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE2NSBkcGtnLWRlYi9pbmZvLmM6ODEKKyMsIGZ1enp5Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSB0ZW1wb3JhcnkgZGlyZWN0b3J5IgorbXNnc3RyICLhnpThnrbhnpPigIvhnpThnprhnrbhnofhn5DhnpnigIvhnoDhn5LhnpPhnrvhnoTigIvhnoDhnrbhnprigIvhnpThnoThn5LhnoDhnr7hno/igIvhnojhn5Lhnpjhn4Thn4figIvhnpDhno/igIvhnpThno7hn5Lhnorhn4Thn4figIvhnqLhnrbhnp/hnpPhn5LhnpMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MjA1CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgJXMgaGFzIHRvbyBtYW55IENvbmZsaWN0cy9SZXBsYWNlcyBwYWlycyIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjI0MworIywgYy1mb3JtYXQKK21zZ2lkICJvbGQgdmVyc2lvbiBvZiBwYWNrYWdlIGhhcyBvdmVybHktbG9uZyBpbmZvIGZpbGUgbmFtZSBzdGFydGluZyBgJS4yNTBzJyIKK21zZ3N0ciAi4Z6A4Z+G4Z6O4Z+C4oCL4Z6F4Z624Z6f4Z+L4oCL4Z6a4Z6U4Z6f4Z+L4oCL4Z6A4Z6J4Z+S4Z6F4Z6U4Z+L4oCL4Z6Y4Z624Z6T4oCL4Z6I4Z+S4Z6Y4Z+E4Z+H4oCL4Z6v4Z6A4Z6f4Z624Z6a4oCL4Z6W4Z+Q4Z6P4Z+M4Z6Y4Z624Z6T4oCL4Z6c4Z+C4Z6E4oCL4Z6W4Z+B4Z6AIOGeiuGfhOGemeKAi+GeheGetuGelOGfi+GeleGfkuGeiuGevuGemOKAi+GeiuGfhOGemSBgJS4yNTBzJyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyODEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBvYnNvbGV0ZSBpbmZvIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuGemOGet+Gek+KAi+GeouGetuGeheKAi+GemeGegOKAi+Ger+GegOGen+GetuGemuKAi+GeluGfkOGej+GfjOGemOGetuGek+KAi+GeiuGfguGem+KAi+Gem+GfguGehOKAi+GelOGfkuGemuGevuKAi+GeheGfgeGeiSBgJS4yNTBzJyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyODYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgKHN1cHBvc2VkKSBuZXcgaW5mbyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnorhn4bhnqHhnr7hnoTigIsgKOGen+Gek+GfkuGemOGej+GekOGetuKAiykg4Z6v4Z6A4Z6f4Z624Z6a4oCL4Z6W4Z+Q4Z6P4Z+M4Z6Y4Z624Z6T4oCL4Z6Q4Z+S4Z6Y4Z644oCLIGAlLjI1MHMnIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjI5NgorbXNnaWQgInVuYWJsZSB0byBvcGVuIHRlbXAgY29udHJvbCBkaXJlY3RvcnkiCittc2dzdHIgIuGemOGet+Gek+KAi+GeouGetuGeheKAi+GelOGevuGegOKAi+GekOGej+KAi+GenOGej+GfkuGekOGeu+KAi+GelOGeieGfkuGeh+GetiB0ZW1wIOGelOGetuGek+KAi+GekeGfgSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMDcKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBjb250YWlucyBvdmVybHktbG9uZyBjb250cm9sIGluZm8gZmlsZSBuYW1lIChzdGFydGluZyBgJS41MHMnKSIKK21zZ3N0ciAi4Z6A4Z6J4Z+S4Z6F4Z6U4Z+L4oCL4Z6Y4Z624Z6T4oCL4Z6I4Z+S4Z6Y4Z+E4Z+H4oCL4Z6v4Z6A4Z6f4Z624Z6a4oCL4Z6W4Z+Q4Z6P4Z+M4Z6Y4Z624Z6T4oCL4Z6c4Z+C4Z6E4Z6W4Z+B4Z6AICjhnoXhnrbhnpThn4vigIvhnpXhn5Lhno/hnr7hnpjigIsgYCUuNTBzJykiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzE0CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgY29udHJvbCBpbmZvIGNvbnRhaW5lZCBkaXJlY3RvcnkgYCUuMjUwcyciCittc2dzdHIgIuGeluGfkOGej+GfjOGemOGetuGek+KAi+GenOGej+GfkuGekOGeu+KAi+GelOGeieGfkuGeh+GetuKAi+GegOGeieGfkuGeheGelOGfi+KAi+GemOGetuGek+KAi+GekOGejyBgJS4yNTBzJyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMTYKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBjb250cm9sIGluZm8gcm1kaXIgb2YgYCUuMjUwcycgZGlkbid0IHNheSBub3QgYSBkaXIiCittc2dzdHIgIuGeluGfkOGej+GfjOGemOGetuGek+KAi+GenOGej+GfkuGekOGeu+GelOGeieGfkuGeh+GetuKAi+GegOGeieGfkuGeheGelOGfiyBybWRpciDhnprhnpThnp/hn4sgYCUuMjUwcycg4Z6Y4Z634Z6T4Z6U4Z624Z6T4oCL4Z6F4Z+C4Z6E4oCL4Z6Q4Z624Z6H4Z624oCL4Z6Q4Z6P4oCL4Z6R4Z+BIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMyNgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlcyBjb250YWluZWQgbGlzdCBhcyBpbmZvIGZpbGUiCittc2dzdHIgImRwa2fCoOGfliDhnpbhn5LhnprhnpjhnrbhnpMgLSDhnoDhnonhn5LhnoXhnpThn4sgJXMg4Z6Y4Z624Z6T4oCL4Z6U4Z6J4Z+S4Z6H4Z624oCL4Z6K4Z684Z6F4oCL4Z6v4Z6A4Z6f4Z624Z6a4oCL4Z6W4Z+Q4Z6P4Z+M4Z6Y4Z624Z6TIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMzMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgaW5mbyBmaWxlIGAlLjI1MHMnIGFzIGAlLjI1MHMnIgorbXNnc3RyICLhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnorhn4bhnqHhnr7hnoTigIvhnq/hnoDhnp/hnrbhnprigIvhnpbhn5Dhno/hn4zhnpjhnrbhnpPigIvhnpDhn5LhnpjhnrggYCUuMjUwcycg4Z6H4Z62IGAlLjI1MHMnIOGelOGetuGek+KAi+GekeGfgSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozNDkgc3JjL3JlbW92ZS5jOjE5OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGVsZXRlIGNvbnRyb2wgaW5mbyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnpvhnrvhnpTigIvhnq/hnoDhnp/hnrbhnprigIvhnpbhn5Dhno/hn4zhnpjhnrbhnpPigIvhnpzhno/hn5LhnpDhnrvigIvhnpThnonhn5LhnofhnrYgYCUuMjUwcyciCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDExCittc2dpZCAiY2Fubm90IGFjY2VzcyBhcmNoaXZlIgorbXNnc3RyICLhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnoXhnrzhnpvigIvhnorhn4bhno7hnr7hnprhnoDhnrbhnprigIvhnpThn5Dhno7hn5Lhno7hnp/hnrbhnpoiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDMzCisjLCBmdXp6eQorI3wgbXNnaWQgImNvbnRyb2wgaW5mb3JtYXRpb24gbGVuZ3RoIgorbXNnaWQgInBhY2thZ2UgY29udHJvbCBpbmZvcm1hdGlvbiBleHRyYWN0aW9uIgorbXNnc3RyICLhnpThn5Lhnprhnpzhn4LhnoTigIvhnpbhn5Dhno/hn4zhnpjhnrbhnpPigIvhnpzhno/hn5LhnpDhnrvigIvhnpThnonhn5LhnofhnrYiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDYwCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlY29yZGVkIGluZm8gYWJvdXQgJXMgZnJvbSAlcy5cbiIKK21zZ3N0ciAi4Z6W4Z+Q4Z6P4Z+M4Z6Y4Z624Z6T4Z6K4Z+C4Z6b4Z6U4Z624Z6T4Z6A4Z6P4Z+L4Z6P4Z+S4Z6a4Z624Z6i4Z+G4Z6W4Z64ICVzIOGeluGeuCAlc8Kg4Z+UXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDY4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgYXJjaGl0ZWN0dXJlICglcykgZG9lcyBub3QgbWF0Y2ggc3lzdGVtICglcykiCittc2dzdHIgIuGen+GfkuGekOGetuGelOGej+GfkuGemeGegOGemOGfkuGemOKAi+GegOGeieGfkuGeheGelOGfiyAoJXMpIOGemOGet+Gek+KAi+GeleGfkuGeguGevOGeleGfkuGeguGehOKAi+Gek+GeueGehOKAi+GelOGfkuGemuGeluGfkOGek+GfkuGekiAoJXMpIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjUyMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogcmVnYXJkaW5nICVzIGNvbnRhaW5pbmcgJXMsIHByZS1kZXBlbmRlbmN5IHByb2JsZW06XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnwqDhn5Yg4Z6C4Z634Z6P4oCL4Z6Q4Z62ICVzIOGemOGetuGekyAlcyDhnpThnonhn5LhnqDhnrbigIvhnpfhnrbhnpbigIvhnqLhnrbhnp/hn5Lhnprhn5DhnpnigIvhnofhnrbigIvhnpjhnrvhnpPCoOGfllxuIgorIiVzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjUyNgorIywgYy1mb3JtYXQKK21zZ2lkICJwcmUtZGVwZW5kZW5jeSBwcm9ibGVtIC0gbm90IGluc3RhbGxpbmcgJS4yNTBzIgorbXNnc3RyICLhnpThnonhn5LhnqDhnrbigIvhnpfhnrbhnpbigIvhnqLhnrbhnp/hn5Lhnprhn5DhnpnigIvhnofhnrbigIvhnpjhnrvhnpMgLSDhnpjhnrfhnpPigIvhnorhn4bhnqHhnr7hnoQgJS4yNTBzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjUyNworIywgZnV6enkKK21zZ2lkICJpZ25vcmluZyBwcmUtZGVwZW5kZW5jeSBwcm9ibGVtISIKK21zZ3N0ciAiZHBrZ8Kg4Z+WIOGeluGfkuGemuGemOGetuGekyAtIOGemOGet+Gek+KAi+GeouGevuGeluGevuKAi+GelOGeieGfkuGeoOGetuKAi+Gel+GetuGeluKAi+GeouGetuGen+GfkuGemuGfkOGemeKAi+Geh+GetuGemOGeu+Gek8KgIVxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjU0MworIywgYy1mb3JtYXQKK21zZ2lkICJQcmVwYXJpbmcgdG8gcmVwbGFjZSAlcyAlcyAodXNpbmcgJXMpIC4uLlxuIgorbXNnc3RyICLhnoDhn4bhnpbhnrvhnoTigIvhnprhn4DhnpThnoXhn4bigIvhnofhn4bhnpPhnr3hnp8gJXMgJXMgKOGeiuGfhOGemeKAi+GelOGfkuGemuGeviAlcykgLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIlVucGFja2luZyAlcyAoZnJvbSAlcykgLi4uXG4iCittc2dzdHIgIuGegOGfhuGeluGeu+GehOKAi+GeluGek+GfkuGem+GetiAlcyAo4Z6W4Z64ICVzKSAuLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAibmFtZSBvZiBjb25mZmlsZSAoc3RhcnRpbmcgYCUuMjUwcycpIGlzIHRvbyBsb25nICg+JWQgY2hhcmFjdGVycykiCittc2dzdHIgIuGeiOGfkuGemOGfhOGfhyBjb25mZmlsZSAo4Z6F4Z624Z6U4Z+L4Z6V4Z+S4Z6P4Z6+4Z6Y4oCLIGAlLjI1MHMnKSDhnoLhnrog4Z6c4Z+C4Z6E4oCLICg+JWQg4Z6P4Z694Z6i4Z6A4Z+S4Z6f4Z6aKSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2MzMgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVhZCBlcnJvciBpbiAlLjI1MHMiCittc2dzdHIgIuGeouGetuGek+KAi+GegOGfhuGeoOGeu+Gen+KAi+Gek+GfheKAi+GegOGfkuGek+Geu+GehCAlLjI1MHMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjM1CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgJS4yNTBzIgorbXNnc3RyICLhnoDhn4bhnqDhnrvhnp/igIvhnoDhn5LhnpPhnrvhnoTigIvhnoDhnrbhnprigIvhnpThnrfhnpEgJS4yNTBzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjYzNworIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciB0cnlpbmcgdG8gb3BlbiAlLjI1MHMiCittc2dzdHIgIuGegOGfhuGeoOGeu+Gen+KAi+GegOGfkuGek+Geu+GehOKAi+GegOGetuGemuKAi+GeluGfkuGemeGetuGemeGetuGemOKAi+GelOGevuGegCAlLjI1MHMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6Njc4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJEZS1jb25maWd1cmluZyAlcywgdG8gYWxsb3cgcmVtb3ZhbCBvZiAlcyAuLi5cbiIKK21zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6A4Z+G4Z6W4Z674Z6E4oCL4Z6A4Z+G4Z6O4Z6P4Z+L4oCL4Z6a4Z6F4Z6T4Z624Z6f4Z6Y4Z+S4Z6W4Z+Q4Z6T4Z+S4Z6SICVzIOGeiuGevOGeheGfkuGek+GfgeGfh+KAi+GemeGevuGehOKAi+GemOGet+Gek+KAi+GeouGetuGeheKAi+GemeGegCAlcyDhnoXhn4HhnonigIvhnpThnrbhnpPigIvhnpHhn4EuLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2ODEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIkRlLWNvbmZpZ3VyaW5nICVzIC4uLlxuIgorbXNnc3RyICLhnoDhn4bhnpbhnrvhnoThnpnhnoAgJXMg4Z6F4Z+B4Z6JLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NzU1CisjLCBjLWZvcm1hdAorbXNnaWQgIlVucGFja2luZyByZXBsYWNlbWVudCAlLjI1MHMgLi4uXG4iCittc2dzdHIgIuGegOGfhuGeluGeu+GehOKAi+GeluKAi+Gek+GfkuGem+GetuGegOGetuGemuGeh+GfhuGek+GeveGenyAlLjI1MHMgLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6ODQwCittc2dpZCAicGFja2FnZSBmaWxlc3lzdGVtIGFyY2hpdmUgZXh0cmFjdGlvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjg1NAorbXNnaWQgImVycm9yIHJlYWRpbmcgZHBrZy1kZWIgdGFyIG91dHB1dCIKK21zZ3N0ciAi4Z6A4Z+G4Z6g4Z674Z6f4oCL4Z6A4Z+S4Z6T4Z674Z6E4oCL4Z6A4Z624Z6a4oCL4Z6i4Z624Z6T4oCL4Z6b4Z6R4Z+S4Z6S4Z6V4Z6bIGRwa2ctZGViIHRhciIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NTYKK21zZ2lkICJjb3JydXB0ZWQgZmlsZXN5c3RlbSB0YXJmaWxlIC0gY29ycnVwdGVkIHBhY2thZ2UgYXJjaGl2ZSIKK21zZ3N0ciAi4Z6v4Z6A4Z6f4Z624Z6aIHRhciDhnprhnpThnp/hn4vigIvhnpThn5Lhnprhnpbhn5DhnpPhn5LhnpLigIvhnq/hnoDhnp/hnrbhnprigIvhnorhn4LhnpvigIvhnoHhnrzhnoUgLSDhnpThn5Dhno7hn5Lhno7hnp/hnrbhnprigIvhnoDhnonhn5LhnoXhnpThn4vigIvhnorhn4LhnpvigIvhnoHhnrzhnoUiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6ODU5Cittc2dpZCAiZHBrZy1kZWI6IHphcCBwb3NzaWJsZSB0cmFpbGluZyB6ZXJvcyIKK21zZ3N0ciAiZHBrZy1kZWIg4Z+WIHphcCDhnoDhn4bhnpbhnrvhnoTigIvhnpHhnrbhnonigIvhnpnhnoDigIvhnp/hnrzhnpPhn5LhnpnigIvhnorhn4LhnpvigIvhnqLhnrbhnoXigIvhnpLhn5Lhnpzhnr7igIvhnpHhn4UiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTE5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgc3RhdCBvbGQgZmlsZSAnJS4yNTBzJyBzbyBub3QgZGVsZXRpbmcgaXQ6ICVzIgorbXNnc3RyICJkcGtnwqDhn5Yg4Z6W4Z+S4Z6a4Z6Y4Z624Z6TIC0g4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6F4Z624Z6U4Z+L4Z6V4Z+S4Z6K4Z6+4Z6Y4oCL4Z6v4Z6A4Z6f4Z624Z6a4oCL4Z6F4Z624Z6f4Z+LIGAlLjI1MHMnIOGeiuGevOGeheGfkuGek+GfgeGfh+KAi+GemOGet+Gek+Gem+Geu+GelOKAi+GenOGetsKg4Z+WICVzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjkyNQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSBvbGQgZGlyZWN0b3J5ICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiZHBrZ8Kg4Z+WIOGeluGfkuGemuGemOGetuGekyAtIOGemOGet+Gek+GeouGetuGeheGem+Geu+GelOGekOGej+GeheGetuGen+GfiyBgJS4yNTBzJ8Kg4Z+WICVzXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTI4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJvbGQgY29uZmZpbGUgJyUuMjUwcycgd2FzIGFuIGVtcHR5IGRpcmVjdG9yeSAoYW5kIGhhcyBub3cgYmVlbiBkZWxldGVkKSIKK21zZ3N0ciAiZHBrZyDhn5Yg4Z6A4Z624Z6a4Z6W4Z+S4Z6a4Z6Y4Z624Z6TLSAgY29uZmZpbGUg4Z6F4Z624Z6f4Z+L4Z+XYCUuMjUwcycg4Z6H4Z624Z6Q4Z6P4oCL4Z6R4Z+G4Z6T4Z+BICjigIvhnqXhnqHhnrzhnpzigIvhnpThnrbhnpPhnpvhnrvhnpTigIvhnpzhnrbhnqDhnr7hnpnigIspXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTc1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IG90aGVyIG5ldyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnoXhnrbhnpThn4vhnpXhn5Lhnorhnr7hnpjigIvhnq/hnoDhnp/hnrbhnprigIvhnpDhn5LhnpjhnrjigIvhnpXhn5Lhnp/hn4HhnoTigIvhnpHhn4Dhno/igIvhnpHhn4EgYCUuMjUwcyciCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTg2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisib2xkIGZpbGUgJyUuMjUwcycgaXMgdGhlIHNhbWUgYXMgc2V2ZXJhbCBuZXcgZmlsZXMhIChib3RoICclLjI1MHMnIGFuZCAiCisiJyUuMjUwcycpIgorbXNnc3RyICIiCisiZHBrZ8Kg4Z+WIOGeluGfkuGemuGemOGetuGekyAtIOGer+GegOGen+GetuGemuKAi+GeheGetuGen+GfiyBgJS4yNTBzJyDhnoLhnrrigIvhnorhnrzhnoXhnoLhn5LhnpPhnrbigIvhnpPhnrnhnoTigIvhnq/hnoDhnp/hnrbhnprigIvhnpDhn5LhnpjhnrjigIvhnofhnrbigIvhnoXhn5Lhnprhnr7hnpPCoCEgICjhnpHhnrbhn4bhnoQgYCUuMjUwcycg4Z6T4Z634Z6EIGAiCisiJS4yNTBzJykiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTAyNQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNlY3VyZWx5IHJlbW92ZSBvbGQgZmlsZSAnJS4yNTBzJzogJXMiCittc2dzdHIgImRwa2fCoOGfliDhnpbhn5LhnprhnpjhnrbhnpMgLSDhnpjhnrfhnpPhnqLhnrbhnoXhnrLhn5Lhnpnhnq/hnoDhnp/hnrbhnprhnoXhnrbhnp/hn4sgJXMgYCUlLjI1MHMnwqDhn5YgJSVzXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTIwNgorIywgYy1mb3JtYXQKK21zZ2lkICIoTm90aW5nIGRpc2FwcGVhcmFuY2Ugb2YgJXMsIHdoaWNoIGhhcyBiZWVuIGNvbXBsZXRlbHkgcmVwbGFjZWQuKVxuIgorbXNnc3RyICIo4Z6F4Z+G4Z6O4Z624Z+G4oCL4Z6Q4Z62IOGegOGetuGemuKAi+GemOGet+Gek+KAi+GelOGehOGfkuGeoOGetuGeieKAi+GemuGelOGen+GfiyAlcyDhnorhn4LhnpvigIvhno/hn5LhnprhnrzhnpzhnpThnrbhnpPigIvhnofhn4bhnpPhnr3hnp/igIvhnorhn4ThnpnigIvhnofhn4ThnoLhnofhn5DhnpnCoOGflClcbiIKKworIy4gVFJBTlNMQVRPUlM6IFRoaXMgaXMgdGhlIGhlYWRlciB0aGF0IGFwcGVhcnMgb24gJ2Rwa2ctcXVlcnkgLWwnLiBUaGUKKyMuICogc3RyaW5nIHNob3VsZCByZW1haW4gdW5kZXIgODAgY2hhcmFjdGVycy4gVGhlIHVwcGVyY2FzZSBsZXR0ZXJzIGluCisjLiAqIHRoZSBzdGF0ZSB2YWx1ZXMgZGVub3RlIHRoZSBhYmJyZXZpYXRlZCBsZXR0ZXIgdGhhdCB3aWxsIGFwcGVhciBvbgorIy4gKiB0aGUgZmlyc3QgdGhyZWUgY29sdW1ucywgd2hpY2ggc2hvdWxkIGlkZWFsbHkgbWF0Y2ggdGhlIEVuZ2xpc2ggb25lCisjLiAqIChlLmcuIFJlbW92ZSDihpIgc3VwUmltZWl4KSwgc2VlIGRwa2ctcXVlcnkoMSkgZm9yIGZ1cnRoZXIgZGV0YWlscy4gVGhlCisjLiAqIHRyYW5zbGF0ZWQgbWVzc2FnZSBjYW4gdXNlIGFkZGl0aW9uYWwgbGluZXMgaWYgbmVlZGVkLgorIzogc3JjL3F1ZXJ5Y21kLmM6MTQ5CisjLCBmdXp6eQorbXNnaWQgIiIKKyJEZXNpcmVkPVVua25vd24vSW5zdGFsbC9SZW1vdmUvUHVyZ2UvSG9sZFxuIgorInwgU3RhdHVzPU5vdC9JbnN0L0NvbmYtZmlsZXMvVW5wYWNrZWQvaGFsRi1jb25mL0hhbGYtaW5zdC90cmlnLWFXYWl0L1RyaWctIgorInBlbmRcbiIKKyJ8LyBFcnI/PShub25lKS9SZWluc3QtcmVxdWlyZWQgKFN0YXR1cyxFcnI6IHVwcGVyY2FzZT1iYWQpXG4iCittc2dzdHIgIiIKKyJEZXNpcmVkPVVua25vd24vSW5zdGFsbC9SZW1vdmUvUHVyZ2UvSG9sZFxuIgorInwgU3RhdHVzPU5vdC9JbnN0YWxsZWQvQ29uZmlnLWZpbGVzL1VucGFja2VkL0ZhaWxlZC1jb25maWcvSGFsZi1pbnN0YWxsZWRcbiIKKyJ8LyBFcnI/PShub25lKS9Ib2xkL1JlaW5zdC1yZXF1aXJlZC9YPWJvdGgtcHJvYmxlbXMgKFN0YXR1cyxFcnI6ICIKKyJ1cHBlcmNhc2U9YmFkKVxuIgorCisjOiBzcmMvcXVlcnljbWQuYzoxNTMKK21zZ2lkICJOYW1lIgorbXNnc3RyICLhnojhn5Lhnpjhn4Thn4ciCisKKyM6IHNyYy9xdWVyeWNtZC5jOjE1MworbXNnaWQgIlZlcnNpb24iCittc2dzdHIgIuGegOGfhuGejuGfgiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MTU0Cittc2dpZCAiRGVzY3JpcHRpb24iCittc2dzdHIgIuGen+GfgeGeheGegOGfkuGej+GeuOKAi+GeluGet+GeluGejuGfjOGek+GetiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MjQ2IHNyYy9xdWVyeWNtZC5jOjUxMSBzcmMvc2VsZWN0LmM6NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiTm8gcGFja2FnZXMgZm91bmQgbWF0Y2hpbmcgJXMuXG4iCittc2dzdHIgIuGemuGegOKAi+GemOGet+Gek+KAi+Geg+GevuGeieKAi+GegOGeieGfkuGeheGelOGfi+KAi+GeiuGfguGem+KAi+GeleGfkuGeguGevOGeleGfkuGeguGehOKAi+Gek+GeueGehCAlc8Kg4Z+UXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI3MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJzaW9uIGJ5ICVzIGZyb206ICVzXG4iCittc2dzdHIgIuGelOGetuGek+KAi+GelOGehOGfkuGenOGfguGemuKAi+GeiuGfhOGemSAlcyDhnpHhn4XCoOGfliAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNzUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImRpdmVyc2lvbiBieSAlcyB0bzogJXNcbiIKK21zZ3N0ciAi4Z6U4Z624Z6T4oCL4Z6U4Z6E4Z+S4Z6c4Z+C4Z6a4oCL4Z6K4Z+E4Z6ZICVzIOGekeGfhcKg4Z+WICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI3OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAibG9jYWwgZGl2ZXJzaW9uIGZyb206ICVzXG4iCittc2dzdHIgIuGegOGetuGemuKAi+GelOGehOGfkuGenOGfguGemuKAi+GemOGevOGem+GeiuGfkuGei+GetuGekyIKKworIzogc3JjL3F1ZXJ5Y21kLmM6Mjc5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJsb2NhbCBkaXZlcnNpb24gdG86ICVzXG4iCittc2dzdHIgIuGelOGetuGek+KAi+GelOGehOGfkuGenOGfguGemuKAi+Geh+GetuKAi+GemOGevOGem+GeiuGfkuGei+GetuGek+KAi+GekeGfhcKg4Z+WICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjMwOQorbXNnaWQgIi0tc2VhcmNoIG5lZWRzIGF0IGxlYXN0IG9uZSBmaWxlIG5hbWUgcGF0dGVybiBhcmd1bWVudCIKK21zZ3N0ciAiLS3hnoDhnrbhnprhnp/hn5Lhnpzhn4LhnoTigIvhnprhnoDigIvhnpnhn4nhnrbhnoThnqDhn4ThnoXhno7hnrbhnp/hn4vigIvhno/hn5LhnprhnrzhnpzhnoDhnrbhnprigIvhnqLhnrbhnoLhnrvhnpnhnpjhn4nhnoThn4vigIvhnpvhn4bhnpPhnrbhn4bigIvhnojhn5Lhnpjhn4Thn4figIvhnq/hnoDhnp/hnrbhnprigIvhnpjhnr3hnpkiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjM1MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiTm8gcGFja2FnZXMgZm91bmQgbWF0Y2hpbmcgJXMuXG4iCittc2dpZCAiJXM6IG5vIHBhdGggZm91bmQgbWF0Y2hpbmcgcGF0dGVybiAlcy5cbiIKK21zZ3N0ciAi4Z6a4Z6A4oCL4Z6Y4Z634Z6T4oCL4Z6D4Z6+4Z6J4oCL4Z6A4Z6J4Z+S4Z6F4Z6U4Z+L4oCL4Z6K4Z+C4Z6b4oCL4Z6V4Z+S4Z6C4Z684Z6V4Z+S4Z6C4Z6E4oCL4Z6T4Z654Z6EICVzwqDhn5RcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MzkzCisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgYCVzJyBpcyBub3QgaW5zdGFsbGVkIGFuZCBubyBpbmZvIGlzIGF2YWlsYWJsZS5cbiIKK21zZ3N0ciAi4Z6A4Z6J4Z+S4Z6F4Z6U4Z+LIGAlcycg4Z6Y4Z634Z6T4oCL4Z6P4Z+S4Z6a4Z684Z6c4oCL4Z6U4Z624Z6T4oCL4Z6K4Z+G4Z6h4Z6+4Z6EIOGek+Get+GehOKAi+GeguGfkuGemOGetuGek+KAi+GeluGfkOGej+GfjOGemOGetuGek+KAi+GeouGetuGeheKAi+GelOGfkuGemuGevuGelOGetuGek8Kg4Z+UXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQwMQorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlIGAlcycgaXMgbm90IGF2YWlsYWJsZS5cbiIKK21zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6Y4Z624Z6T4oCL4Z6A4Z6J4Z+S4Z6F4Z6U4Z+LIGAlcyfCoOGflFxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MTAgc3JjL3F1ZXJ5Y21kLmM6NTg1CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgYCVzJyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICLhnoDhnonhn5LhnoXhnpThn4sgYCVzJyDhnpjhnrfhnpPigIvhno/hn5LhnprhnrzhnpzigIvhnpThnrbhnpPigIvhnorhn4bhnqHhnr7hnoTCoOGflFxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSBgJXMnIGRvZXMgbm90IGNvbnRhaW4gYW55IGZpbGVzICghKVxuIgorbXNnc3RyICLhnoDhnonhn5LhnoXhnpThn4sgYCVzJyDhnpjhnrfhnpPhnpjhnrbhnpPigIvhnq/hnoDhnp/hnrbhnprigIvhno7hnrbhnpjhnr3hnpnigIvhnpHhn4HCoCghKVxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9jYWxseSBkaXZlcnRlZCB0bzogJXNcbiIKK21zZ3N0ciAi4Z6U4Z624Z6T4oCL4Z6U4Z6E4Z+S4Z6c4Z+C4Z6a4oCL4Z6H4Z624oCL4Z6Y4Z684Z6b4Z6K4Z+S4Z6L4Z624Z6T4oCL4Z6R4Z+FwqDhn5YgJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDI4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgZGl2ZXJ0cyBvdGhlcnMgdG86ICVzXG4iCittc2dzdHIgIuGegOGeieGfkuGeheGelOGfi+KAi+GelOGehOGfkuGenOGfguGemuKAi+GegOGeieGfkuGeheGelOGfi+KAi+GeleGfkuGen+GfgeGehOKAi+GekeGfgOGej+KAi+GekeGfhcKg4Z+WICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQzMQorIywgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnRlZCBieSAlcyB0bzogJXNcbiIKK21zZ3N0ciAi4Z6U4Z624Z6T4oCL4Z6U4Z6E4Z+S4Z6c4Z+C4Z6a4oCL4Z6K4Z+E4Z6ZICVzIOGekeGfhcKg4Z+WICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQ1MgorbXNnaWQgIiIKKyJVc2UgZHBrZyAtLWluZm8gKD0gZHBrZy1kZWIgLS1pbmZvKSB0byBleGFtaW5lIGFyY2hpdmUgZmlsZXMsXG4iCisiYW5kIGRwa2cgLS1jb250ZW50cyAoPSBkcGtnLWRlYiAtLWNvbnRlbnRzKSB0byBsaXN0IHRoZWlyIGNvbnRlbnRzLlxuIgorbXNnc3RyICIiCisi4Z6U4Z+S4Z6a4Z6+IGRwa2cgLS1pbmZvICg9IGRwa2ctZGViIC0taW5mbykg4Z6K4Z6+4Z6Y4Z+S4Z6U4Z644oCL4Z6W4Z634Z6T4Z634Z6P4Z+S4Z6Z4oCL4Z6Y4Z6+4Z6b4oCL4Z6v4Z6A4Z6f4Z624Z6a4oCL4Z6U4Z+Q4Z6O4Z+S4Z6O4Z6f4Z624Z6aXG4iCisi4Z6T4Z634Z6EIGRwa2cgLS1jb250ZW50cyAoPSBkcGtnLWRlYiAtLWNvbnRlbnRzKSDhnorhnr7hnpjhn5LhnpThnrjigIvhnprhnrbhnpnigIvhnpjhnrbhno/hnrfhnoDhnrbigIvhnprhnpThnp/hn4vigIvhnpbhnr3hnoDhnpzhnrbCoOGflFxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo1NzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgYXQgbW9zdCB0d28gYXJndW1lbnRzIgorbXNnc3RyICItLWJ1aWxkIOGej+GfkuGemuGevOGenOKAi+GegOGetuGemuKAi+GeouGetuGeguGeu+GemeGemOGfieGehOGfi+KAi+GeheGfkuGemuGevuGek+KAi+GelOGfhuGeleGeu+Gej+KAi+GeluGeuOGemiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NTc4CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbnRyb2wgZmlsZSBjb250YWlucyAlYyIKK21zZ3N0ciAiIgorCisjOiBzcmMvcXVlcnljbWQuYzo2MDAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiAlcyBwYWNrYWdlIG1hbmFnZW1lbnQgcHJvZ3JhbSBxdWVyeSB0b29sIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIuGegOGemOGfkuGemOGenOGet+GekuGeuOKAi+GeguGfkuGemuGelOGfi+GeguGfkuGemuGehOKAi+GegOGeieGfkuGeheGelOGfi+KAi+GeiuGfgeGelOGfgOGekyBgJXMnIOGegOGfhuGejuGfgiAlc8Kg4Z+UXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjYxOQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLXN8LS1zdGF0dXMgPHBhY2thZ2U+IC4uLiAgICAgICAgRGlzcGxheSBwYWNrYWdlIHN0YXR1cyBkZXRhaWxzLlxuIgorIiAgLXB8LS1wcmludC1hdmFpbCA8cGFja2FnZT4gLi4uICAgRGlzcGxheSBhdmFpbGFibGUgdmVyc2lvbiBkZXRhaWxzLlxuIgorIiAgLUx8LS1saXN0ZmlsZXMgPHBhY2thZ2U+IC4uLiAgICAgTGlzdCBmaWxlcyBgb3duZWQnIGJ5IHBhY2thZ2UocykuXG4iCisiICAtbHwtLWxpc3QgWzxwYXR0ZXJuPiAuLi5dICAgICAgICBMaXN0IHBhY2thZ2VzIGNvbmNpc2VseS5cbiIKKyIgIC1XfC0tc2hvdyBbPHBhdHRlcm4+IC4uLl0gICAgICAgIFNob3cgaW5mb3JtYXRpb24gb24gcGFja2FnZShzKS5cbiIKKyIgIC1TfC0tc2VhcmNoIDxwYXR0ZXJuPiAuLi4gICAgICAgIEZpbmQgcGFja2FnZShzKSBvd25pbmcgZmlsZShzKS5cbiIKKyIgIC1jfC0tY29udHJvbC1wYXRoIDxwYWNrYWdlPiBbPGZpbGU+XVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHJpbnQgcGF0aCBmb3IgcGFja2FnZSBjb250cm9sIGZpbGUuXG4iCisiXG4iCittc2dzdHIgIiIKKyLhnpbhnrbhnoDhn5LhnpnhnpThnonhn5LhnofhnrbCoOGfllxuIgorIiAgLXN8LS1zdGF0dXMgPHBhY2thZ2U+IC4uLiAgICAgICAg4Z6U4Z6E4Z+S4Z6g4Z624Z6J4oCL4Z6f4Z+B4Z6F4Z6A4Z+S4Z6P4Z644oCL4Z6b4Z6Y4Z+S4Z6i4Z634Z6P4oCL4Z6f4Z+S4Z6Q4Z624Z6T4Z6X4Z624Z6W4oCL4Z6A4Z6J4Z+S4Z6F4Z6U4Z+LwqDhn5RcbiIKKyIgIC1wfC0tcHJpbnQtYXZhaWwgPHBhY2thZ2U+IC4uLiAgIOGelOGehOGfkuGeoOGetuGeieKAi+Gen+GfgeGeheGegOGfkuGej+GeuOKAi+Gem+GemOGfkuGeouGet+Gej+KAi+GegOGfhuGejuGfguKAi+GeiuGfguGem+KAi+GemOGetuGek8Kg4Z+UXG4iCisiICAtTHwtLWxpc3RmaWxlcyA8cGFja2FnZT4gLi4uICAgICDhnprhnrbhnpnigIvhnq/hnoDhnp/hnrbhnpogYOGelOGetuGek+GeguGfkuGemuGelOGfi+GeguGfkuGemuGehCcg4Z6K4Z+E4Z6Z4oCL4Z6A4Z6J4Z+S4Z6F4Z6U4Z+LwqDhn5RcbiIKKyIgIC1sfC0tbGlzdCBbPHBhdHRlcm4+IC4uLl0gICAgICAgIOGemuGetuGemeKAi+GegOGeieGfkuGeheGelOGfi+KAi+GeiuGfhOGemeKAi+Gen+GehOGfkuGegeGfgeGelMKg4Z+UXG4iCisiICAtV3wtLXNob3cgPHBhdHRlcm4+IC4uLiAgICAgICAgICDhnpThnoThn5LhnqDhnrbhnonigIvhnpbhn5Dhno/hn4zhnpjhnrbhnpPigIvhnqLhn4bhnpbhnrjigIvhnoDhnonhn5LhnoXhnpThn4vCoOGflFxuIgorIiAgLVN8LS1zZWFyY2ggPHBhdHRlcm4+IC4uLiAgICAgICAg4Z6a4Z6A4Z6A4Z6J4Z+S4Z6F4Z6U4Z+L4oCL4Z6K4Z+C4Z6b4Z6Y4Z624Z6T4oCL4Z6H4Z624oCL4Z6Y4Z+S4Z6F4Z624Z6f4Z+L4oCL4Z6v4Z6A4Z6f4Z624Z6awqDhn5RcbiIKKyJcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjM2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hZG1pbmRpcj08ZGlyZWN0b3J5PiAgICAgICAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMuXG4iCisiICAtZnwtLXNob3dmb3JtYXQ9PGZvcm1hdD4gICAgICAgICBVc2UgYWx0ZXJuYXRpdmUgZm9ybWF0IGZvciAtLXNob3cuXG4iCisiXG4iCittc2dzdHIgIiIKKyLhnofhnpjhn5Lhnprhnr7hnp/CoOGfllxuIgorIiAgLS1hZG1pbmRpcj08ZGlyZWN0b3J5PiAgICAgICAgICAg4Z6U4Z+S4Z6a4Z6+IDzhnpDhno8+IOGeh+GfhuGek+GeveGen+KAi+GesuGfkuGemSAlc8Kg4Z+UXG4iCisiICAtZnwtLXNob3dmb3JtYXQ9PGZvcm1hdD4gICAgICAgICDhnpThn5Lhnprhnr7igIvhnpHhn5LhnprhnoThn4vhnpHhn5LhnprhnrbhnpnigIvhnofhn4bhnpPhnr3hnp/igIvhnp/hnpjhn5LhnprhnrbhnpThn4sgLS1zaG93wqDhn5RcbiIKKyJcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjQyIGRwa2ctZGViL21haW4uYzoxMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkZvcm1hdCBzeW50YXg6XG4iCisiICBBIGZvcm1hdCBpcyBhIHN0cmluZyB0aGF0IHdpbGwgYmUgb3V0cHV0IGZvciBlYWNoIHBhY2thZ2UuIFRoZSBmb3JtYXRcbiIKKyIgIGNhbiBpbmNsdWRlIHRoZSBzdGFuZGFyZCBlc2NhcGUgc2VxdWVuY2VzIFxcbiAobmV3bGluZSksIFxcciAoY2FycmlhZ2VcbiIKKyIgIHJldHVybikgb3IgXFxcXCAocGxhaW4gYmFja3NsYXNoKS4gUGFja2FnZSBpbmZvcm1hdGlvbiBjYW4gYmUgaW5jbHVkZWRcbiIKKyIgIGJ5IGluc2VydGluZyB2YXJpYWJsZSByZWZlcmVuY2VzIHRvIHBhY2thZ2UgZmllbGRzIHVzaW5nIHRoZSAke3Zhcls7IgorIndpZHRoXX1cbiIKKyIgIHN5bnRheC4gRmllbGRzIHdpbGwgYmUgcmlnaHQtYWxpZ25lZCB1bmxlc3MgdGhlIHdpZHRoIGlzIG5lZ2F0aXZlIGluICIKKyJ3aGljaFxuIgorIiAgY2FzZSBsZWZ0IGFsaWdubWVudCB3aWxsIGJlIHVzZWQuXG4iCittc2dzdHIgIiIKKyLhnpzhnrbhnoDhn5LhnpnigIvigIvhnp/hnpjhn5Lhnpbhn5DigIvhnpPhn5LhnpLhnpHhn5LhnprhnoThn4vhnpHhn5LhnprhnrbhnpnCoOGfllxuIgorIiAg4Z6R4Z+S4Z6a4Z6E4Z+L4Z6R4Z+S4Z6a4Z624Z6Z4oCL4Z6C4Z664oCL4Z6H4Z624oCL4Z6B4Z+S4Z6f4Z+C4Z6i4Z6A4Z+S4Z6f4Z6a4oCL4Z6K4Z+C4Z6b4oCL4Z6T4Z654Z6E4oCL4Z6H4Z624oCL4Z6b4Z6R4Z+S4Z6S4Z6V4Z6b4oCL4Z6f4Z6Y4Z+S4Z6a4Z624Z6U4Z+L4oCL4Z6A4Z6J4Z+S4Z6F4Z6U4Z+L4oCL4Z6T4Z644Z6Y4Z694Z6Z4Z+XwqDhn5Qg4Z6R4Z+S4Z6a4Z6E4Z+L4Z6R4Z+S4Z6a4Z624Z6ZXG4iCisiICDhnqLhnrbhnoXigIvhnprhnr3hnpjigIvhnpThnonhn5LhnoXhnrzhnpvigIvhnpvhn4bhnorhnrbhnpThn4vigIvhnoLhn4HhnoXigIvhnoHhn5LhnpPhnrbhno/hnoLhn4bhnprhnrwgXFxuIChuZXdsaW5lKSwgXFxyIChjYXJyaWFnZVxuIgorIiAgcmV0dXJuKSDhnqwgXFxcXCAocGxhaW4gYmFja3NsYXNoKcKg4Z+UIOGeluGfkOGej+GfjOGemOGetuGek+KAi+GegOGeieGfkuGeheGelOGfi+KAi+GeouGetuGeheKAi+Gej+GfkuGemuGevOGenOKAi+GelOGetuGek+KAi+GemuGeveGemOKAi+GelOGeieGfkuGeheGevOGem1xuIgorIiAg4Z6K4Z+E4Z6Z4oCL4Z6U4Z6J4Z+S4Z6F4Z684Z6b4oCL4Z6f4Z+B4Z6F4Z6A4Z+S4Z6P4Z644Z6Z4Z+E4Z6E4oCL4Z6i4Z6Q4Z+B4Z6a4oCL4Z6R4Z+F4oCL4Z6c4Z624Z6b4oCL4Z6A4Z6J4Z+S4Z6F4Z6U4Z+L4oCL4Z6K4Z+E4Z6Z4oCL4Z6U4Z+S4Z6a4Z6+4oCL4Z6c4Z624Z6A4Z+S4Z6Z4Z6f4Z6Y4Z+S4Z6W4Z+Q4Z6T4Z+S4Z6SICR7dmFyWzt3aWR0aF19XG4iCisiICDhn5Qg4Z6c4Z624Z6b4oCL4Z6T4Z654Z6E4oCL4Z6P4Z+S4Z6a4Z684Z6c4Z6U4Z624Z6T4oCL4Z6P4Z6Y4Z+S4Z6a4Z654Z6Y4oCL4Z6f4Z+S4Z6K4Z624Z+G4oCL4Z6b4Z674Z+H4Z6P4Z+S4Z6a4Z624Z6P4Z+C4oCL4Z6R4Z6R4Z654Z6E4oCL4Z6i4Z6c4Z634Z6H4Z+S4Z6H4Z6Y4Z624Z6TIOGeiuGfguGem1xuIgorIiAg4Z6A4Z6a4Z6O4Z644oCL4Z6P4Z6Y4Z+S4Z6a4Z654Z6Y4oCL4Z6G4Z+S4Z6c4Z+B4Z6E4oCL4Z6T4Z654Z6E4oCL4Z6P4Z+S4Z6a4Z684Z6c4Z6U4Z624Z6T4oCL4Z6U4Z+S4Z6a4Z6+wqDhn5RcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjU2Cittc2dpZCAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBxdWVyeWluZyBwYWNrYWdlcy4iCittc2dzdHIgIiIKKworIzogc3JjL3JlbW92ZS5jOjg4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJpZ25vcmluZyByZXF1ZXN0IHRvIHJlbW92ZSAlLjI1MHMgd2hpY2ggaXNuJ3QgaW5zdGFsbGVkLiIKK21zZ3N0ciAiZHBrZyAtIOGeluGfkuGemuGemOGetuGek8Kg4Z+WIOGemOGet+KAi+Gek+GeouGevuGeluGevuKAi+Gen+GfhuGejuGevuKAi+GeiuGevuGemOGfkuGelOGeuOKAi+GemeGegCAlLjI1MHMg4Z6F4Z+B4Z6JIOGeiuGfguGem+KAi+GemOGet+Gek+KAi+Gej+GfkuGemuGevOGenOKAi+GelOGetuGek+KAi+GeiuGfhuGeoeGevuGehMKg4Z+UXG4iCisKKyM6IHNyYy9yZW1vdmUuYzo5NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorImlnbm9yaW5nIHJlcXVlc3QgdG8gcmVtb3ZlICUuMjUwcywgb25seSB0aGUgY29uZmlnXG4iCisiIGZpbGVzIG9mIHdoaWNoIGFyZSBvbiB0aGUgc3lzdGVtLiBVc2UgLS1wdXJnZSB0byByZW1vdmUgdGhlbSB0b28uIgorbXNnc3RyICIiCisiZHBrZyAtIOGeluGfkuGemuGemOGetuGek8Kg4Z+WIOGemOGet+Gek+KAi+GeouGevuGeluGevuKAi+Gen+GfhuGejuGevuKAi+GeiuGevuGemOGfkuGelOGeuOKAi+GemeGegCAlLjI1MHMg4Z6F4Z+B4Z6JIOGemOGetuGek+KAi+Gej+GfguKAi+Ger+GegOGen+GetuGemuKAi+GegOGfhuGejuGej+Gfi+KAi+GemuGeheGek+GetuGen+GemOGfkuGeluGfkOGek+GfkuGeklxuIgorIiDhnorhn4LhnpvigIvhnpPhn4XigIvhnpvhnr7igIvhnpThn5Lhnprhnpbhn5DhnpPhn5LhnpLCoOGflCAg4Z6U4Z+S4Z6a4Z6+IC0tcHVyZ2Ug4Z6K4Z6+4Z6Y4Z+S4Z6U4Z644oCL4Z6Z4Z6A4oCL4Z6W4Z694Z6A4Z6c4Z624oCL4Z6F4Z+B4Z6J4oCL4Z6V4Z6E4oCL4Z6K4Z+C4Z6awqDhn5RcbiIKKworIzogc3JjL3JlbW92ZS5jOjEwMworbXNnaWQgIlRoaXMgaXMgYW4gZXNzZW50aWFsIHBhY2thZ2UgLSBpdCBzaG91bGQgbm90IGJlIHJlbW92ZWQuIgorbXNnc3RyICLhnpPhn4Hhn4figIvhnofhnrbigIvhnoDhnonhn5LhnoXhnpThn4vigIvhnorhn4LhnpvigIvhnp/hn4bhnoHhnrbhnpPhn4sgLSDhnpzhnrbigIvhnpjhnrfhnpPigIvhnoLhnr3hnprigIvhno/hn5LhnprhnrzhnpzigIvhnpThnrbhnpPigIvhnpnhnoDigIvhnoXhn4HhnonigIvhnpHhn4HCoOGflCIKKworIzogc3JjL3JlbW92ZS5jOjEyOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogZGVwZW5kZW5jeSBwcm9ibGVtcyBwcmV2ZW50IHJlbW92YWwgb2YgJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnwqDhn5Yg4Z6A4Z624Z6a4Z6W4Z624Z6a4oCL4Z6U4Z6J4Z+S4Z6g4Z624oCL4Z6X4Z624Z6W4oCL4Z6i4Z624Z6f4Z+S4Z6a4Z+Q4Z6Z4oCL4Z6W4Z644oCL4Z6A4Z624Z6a4oCL4Z6Z4Z6A4oCL4Z6F4Z+B4Z6J4oCL4Z6a4Z6U4Z6f4Z+LICVzwqDhn5ZcbiIKKyIlcyIKKworIzogc3JjL3JlbW92ZS5jOjEzMAorbXNnaWQgImRlcGVuZGVuY3kgcHJvYmxlbXMgLSBub3QgcmVtb3ZpbmciCittc2dzdHIgIuGelOGeieGfkuGeoOGetuKAi+Gel+GetuGeluKAi+GeouGetuGen+GfkuGemuGfkOGemSAtIOGemOGet+Gek+KAi+GemeGegOKAi+GeheGfgeGeiSIKKworIzogc3JjL3JlbW92ZS5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogJXM6IGRlcGVuZGVuY3kgcHJvYmxlbXMsIGJ1dCByZW1vdmluZyBhbnl3YXkgYXMgeW91IHJlcXVlc3RlZDpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2fCoOGfliAlc8Kg4Z+WIOGelOGeieGfkuGeoOGetuKAi+Gel+GetuGeluKAi+GeouGetuGen+GfkuGemuGfkOGemSDhnpThn4nhnrvhnpPhn5Lhno/hn4LigIvhnpHhn4Thn4figIvhnofhnrbigIvhnpnhn4nhnrbhnoThno7hnrbhnoDhn4/hnorhn4ThnpnigIvhnpnhnoDhnoXhn4HhnonigIvhno/hnrbhnpjigIvhnp/hn4bhno7hnr7igIvhnprhnpThnp/hn4vigIvhnqLhn5LhnpPhnoDCoOGfljpcbiIKKyIlcyIKKworIzogc3JjL3JlbW92ZS5jOjE0MgorbXNnaWQgIiIKKyJQYWNrYWdlIGlzIGluIGEgdmVyeSBiYWQgaW5jb25zaXN0ZW50IHN0YXRlIC0geW91IHNob3VsZFxuIgorIiByZWluc3RhbGwgaXQgYmVmb3JlIGF0dGVtcHRpbmcgYSByZW1vdmFsLiIKK21zZ3N0ciAiIgorIuGegOGeieGfkuGeheGelOGfi+KAi+Gen+GfkuGekOGet+Gej+KAi+GegOGfkuGek+Geu+GehOKAi+Gen+GfkuGekOGetuGek+Gel+GetuGeluKAi+GemOGet+Gek+KAi+Geh+GetuGelOGfi+KAi+Gem+GetuGelOGfi+KAi+GemOGet+Gek+Gem+GfkuGeouKAi+GelOGfhuGeleGeu+GejyAtIOGeouGfkuGek+GegOKAi+GeguGeveGemuGej+GfglxuIgorIiDhnorhn4bhnqHhnr7hnoTigIvhnpzhnrbigIvhnqHhnr7hnoTigIvhnpzhnrfhnokg4Z6Y4Z674Z6T4oCL4Z6W4Z+B4Z6b4oCL4Z6U4Z+J4Z674Z6T4Z6U4Z+J4Z6E4oCL4Z6Z4Z6A4oCL4Z6F4Z+B4Z6JwqDhn5QiCisKKyM6IHNyYy9yZW1vdmUuYzoxNDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiV291bGQgcmVtb3ZlIG9yIHB1cmdlICVzIC4uLlxuIgorbXNnc3RyICLhno/hnr7hnpPhnrnhnoThnpnhnoDhnoXhn4Hhnokg4Z6s4Z6b4Z674Z6U4Z6U4Z+G4Z6U4Z624Z6P4Z+LICVzIC4uLlxuIgorCisjOiBzcmMvcmVtb3ZlLmM6MTU3CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlbW92aW5nICVzIC4uLlxuIgorbXNnc3RyICLhnoDhn4bhnpbhnrvhnoThnpnhnoAgJXMg4Z6F4Z+B4Z6JLi4uXG4iCisKKyM6IHNyYy9yZW1vdmUuYzoyNzUgc3JjL3JlbW92ZS5jOjM2NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIndoaWxlIHJlbW92aW5nICUuMjUwcywgdW5hYmxlIHRvIHJlbW92ZSBkaXJlY3RvcnkgJyUuMjUwcyc6ICVzIC0gZGlyZWN0b3J5ICIKKyJtYXkgYmUgYSBtb3VudCBwb2ludD8iCittc2dzdHIgIiIKKyJkcGtnIC0g4Z6W4Z+S4Z6a4Z6Y4Z624Z6TwqDhn5Yg4Z6B4Z6O4Z+I4Z6W4Z+B4Z6b4oCL4Z6Z4Z6AICUuMjUwcyDhnoXhn4Hhnokg4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6Z4Z6A4oCL4Z6Q4Z6PIGAlLjI1MHMnIOGeheGfgeGeieKAi+GelOGetuGek+KAi+GekeGfgcKg4Z+WICVzIC0g4Z6Q4Z6P4oCL4Z6i4Z624Z6F4oCLIgorIuGemOGetuGek+KAi+GeheGfhuGejuGeu+GeheGemOGfieGfhOGek+KAi+GemOGeveGemcKgP1xuIgorCisjOiBzcmMvcmVtb3ZlLmM6Mjg5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2VjdXJlbHkgcmVtb3ZlICclLjI1MHMnIgorbXNnc3RyICLhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnpThnoThn5LhnoDhnr7hno/igIsgYCUuMjU1cyciCisKKyM6IHNyYy9yZW1vdmUuYzozNjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIndoaWxlIHJlbW92aW5nICUuMjUwcywgZGlyZWN0b3J5ICclLjI1MHMnIG5vdCBlbXB0eSBzbyBub3QgcmVtb3ZlZC4iCittc2dzdHIgIiIKKyJkcGtnIC0g4Z6W4Z+S4Z6a4Z6Y4Z624Z6TwqDhn5Yg4Z6B4Z6O4Z+I4Z6W4Z+B4Z6b4oCL4Z6Z4Z6AICUuMjUwcyDhnoXhn4Hhnokg4Z6Q4Z6PIGAlLjI1MHMnIOGemOGet+Gek+KAi+GekeGekeGfgSDhnorhnrzhnoXhn5LhnpPhn4Hhn4figIvhnpjhnrfhnpPhnpThnrbhnpPigIvhnpnhnoDhnoXhn4HhnonCoOGflFxuIgorCisjOiBzcmMvcmVtb3ZlLmM6MzgzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW5ub3QgcmVtb3ZlIGAlLjI1MHMnIgorbXNnaWQgImNhbm5vdCByZW1vdmUgJyUuMjUwcyciCittc2dzdHIgIuGemOGet+Gek+KAi+GeouGetuGeheKAi+GemeGegCBgJS4yNTBzJyDhnoXhn4HhnokiCisKKyM6IHNyYy9yZW1vdmUuYzo0MDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHVyZ2luZyBjb25maWd1cmF0aW9uIGZpbGVzIGZvciAlcyAuLi5cbiIKK21zZ3N0ciAi4Z6A4Z+G4Z6W4Z674Z6E4oCL4Z6b4Z674Z6U4oCL4Z6U4Z+G4Z6U4Z624Z6P4Z+L4oCL4Z6v4Z6A4Z6f4Z624Z6a4oCL4Z6A4Z+G4Z6O4Z6P4Z+L4oCL4Z6a4Z6F4Z6T4Z624Z6f4Z6Y4Z+S4Z6W4Z+Q4Z6T4Z+S4Z6S4oCL4Z6f4Z6Y4Z+S4Z6a4Z624Z6U4Z+LICVzIC4uLlxuIgorCisjOiBzcmMvcmVtb3ZlLmM6NDU5CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZW1vdmUgb2xkIGNvbmZpZyBmaWxlIGAlLjI1MHMnICg9IGAlLjI1MHMnKSIKK21zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6Z4Z6A4oCL4Z6v4Z6A4Z6f4Z624Z6a4oCL4Z6A4Z+G4Z6O4Z6P4Z+L4oCL4Z6a4Z6F4Z6T4Z624Z6f4Z6Y4Z+S4Z6W4Z+Q4Z6T4Z+S4Z6S4oCL4Z6F4Z624Z6f4Z+LIGAlLjI1MHMnICg9IGAlLjI1MHMnKSDhnoXhn4HhnokiCisKKyM6IHNyYy9yZW1vdmUuYzo0NzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlYWQgY29uZmlnIGZpbGUgZGlyIGAlLjI1MHMnIChmcm9tIGAlLjI1MHMnKSIKK21zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6i4Z624Z6T4oCL4Z6Q4Z6P4oCL4Z6v4Z6A4Z6f4Z624Z6a4oCL4Z6A4Z+G4Z6O4Z6P4Z+L4oCL4Z6a4Z6F4Z6T4Z624Z6Y4Z+S4Z6W4Z+Q4Z6T4Z+S4Z6SIGAlLjI1MHMnICjhnpbhnrggYCUuMjUwcycpIgorCisjOiBzcmMvcmVtb3ZlLmM6NTEwCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZW1vdmUgb2xkIGJhY2t1cCBjb25maWcgZmlsZSBgJS4yNTBzJyAob2YgYCUuMjUwcycpIgorbXNnc3RyICLhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnpnhnoDigIvhnq/hnoDhnp/hnrbhnprigIvhnoDhn4bhno7hno/hn4vigIvhnprhnoXhnpPhnrbhnpjhn5Lhnpbhn5DhnpPhn5LhnpLigIvhnpThnpjhn5LhnprhnrvhnoTigIvhnpHhnrvhnoDigIvhnoXhnrbhnp/hn4tgJS4yNTBzJyAo4Z6T4Z+DIGAlLjI1MHMnKSDhnoXhn4HhnonigIvhnpThnrbhnpPigIvhnpHhn4EiCisKKyM6IHNyYy9yZW1vdmUuYzo1NjgKK21zZ2lkICJjYW5ub3QgcmVtb3ZlIG9sZCBmaWxlcyBsaXN0IgorbXNnc3RyICLhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnpnhnoDigIvhnpThnonhn5LhnofhnrjigIvhnq/hnoDhnp/hnrbhnprigIvhnoXhnrbhnp/hn4vigIvhnoXhn4HhnonigIvhnpThnrbhnpPigIvhnpHhn4EiCisKKyM6IHNyYy9yZW1vdmUuYzo1NzQKK21zZ2lkICJjYW4ndCByZW1vdmUgb2xkIHBvc3RybSBzY3JpcHQiCittc2dzdHIgIuGemOGet+Gek+KAi+GeouGetuGeheKAi+GemeGegOKAi+Gen+GfkuGeguGfkuGemuGeuOGelCBwb3N0cm0g4Z6F4Z624Z6f4Z+L4oCL4Z6F4Z+B4Z6J4oCL4Z6U4Z624Z6T4oCL4Z6R4Z+BIgorCisjOiBzcmMvc2VsZWN0LmM6MTE1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW9mIGluIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICLhnoXhnrvhnoTigIvhnq/hnoDhnp/hnrbhnprigIvhnorhn4LhnpvigIvhnpjhnrfhnpPigIvhnprhn4bhnpbhnrnhnoThnpHhnrvhnoDigIvhnoDhn5LhnpPhnrvhnoTigIvhnojhn5Lhnpjhn4Thn4figIvhnoDhnonhn5LhnoXhnpThn4vigIvhnpPhn4XigIvhnpThnpPhn5LhnpHhnrbhno/hn4sgJWQiCisKKyM6IHNyYy9zZWxlY3QuYzoxMTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgbGluZSBpbiBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZCIKK21zZ3N0ciAi4Z6F4Z674Z6E4oCL4Z6U4Z6T4Z+S4Z6R4Z624Z6P4Z+L4oCL4Z6K4Z+C4Z6b4oCL4Z6Y4Z634Z6T4oCL4Z6a4Z+G4Z6W4Z654Z6E4oCL4oCL4Z6R4Z674Z6A4Z6A4Z+S4Z6T4Z674Z6E4oCL4Z6I4Z+S4Z6Y4Z+E4Z+H4oCL4Z6A4Z6J4Z+S4Z6F4Z6U4Z+L4oCL4Z6T4Z+F4oCL4Z6U4Z6T4Z+S4Z6R4Z624Z6P4Z+LICVkIgorCisjOiBzcmMvc2VsZWN0LmM6MTIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW9mIGFmdGVyIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICLhnpjhnrfhnpPigIvhnprhn4bhnpbhnrnhnoTigIvhnpHhnrvhnoDigIvhnpDhnrbigIsg4Z6F4Z674Z6E4oCL4Z6v4Z6A4Z6f4Z624Z6a4oCL4Z6U4Z6T4Z+S4Z6R4Z624Z6U4Z+L4oCL4Z6W4Z64IOGemOGetuGek+GeiOGfkuGemOGfhOGfh+KAi+GegOGeieGfkuGeheGelOGfi+KAi+GeluGfgeGem+KAi+GelOGeieGfkuGeheGelOGfi+KAi+KAiyAlZCIKKworIzogc3JjL3NlbGVjdC5jOjEyMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBsaW5lIGFmdGVyIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICLhnoXhnrvhnoTigIvhnpThnpPhn5LhnpHhnrbhno/hn4vigIvhnorhn4LhnpvigIvhnpjhnrfhnpPigIvhnprhn4bhnpbhnrnhnoTigIvhnpHhnrvhnoAg4Z6U4Z6T4Z+S4Z6R4Z624Z6U4Z+L4oCL4Z6W4Z644oCL4Z6I4Z+S4Z6Y4Z+E4Z+H4oCL4Z6A4Z6J4Z+S4Z6F4oCL4Z6U4Z+L4Z6T4Z+F4oCL4Z6U4Z6T4Z+S4Z6R4Z624Z6P4Z+LICVkIgorCisjOiBzcmMvc2VsZWN0LmM6MTM2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZGF0YSBhZnRlciBwYWNrYWdlIGFuZCBzZWxlY3Rpb24gYXQgbGluZSAlZCIKK21zZ3N0ciAi4Z6R4Z634Z6T4Z+S4Z6T4Z6T4Z+Q4Z6Z4oCL4Z6K4Z+C4Z6b4oCL4Z6Y4Z634Z6T4oCL4Z6a4Z+G4Z6W4Z654Z6E4Z6R4Z674Z6AIOGelOGek+GfkuGekeGetuGelOGfi+KAi+GeluGeuOKAi+GegOGeieGfkuGeheGelOGfiyDhnpPhnrfhnoTigIvhnofhnpjhn5Lhnprhnr7hnp/igIvhnpPhn4XigIvhnpThnpPhn5LhnpHhnrbhno/hn4sgJWQiCisKKyM6IHNyYy9zZWxlY3QuYzoxMzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWxsZWdhbCBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZDogJS4yNTBzIgorbXNnc3RyICLhnojhn5Lhnpjhn4Thn4figIvhnoDhnonhn5LhnoXhnpThn4vigIvhnpjhnrfhnpPigIvhno/hn5Lhnprhnrnhnpjhno/hn5LhnprhnrzhnpzigIvhnpPhn4XigIvhnpThnpPhn5LhnpHhnrbhno/hn4sgJWTCoOGfliAlLjI1MHMiCisKKyM6IHNyYy9zZWxlY3QuYzoxNDMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biB3YW50ZWQgc3RhdHVzIGF0IGxpbmUgJWQ6ICUuMjUwcyIKK21zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6f4Z+S4Z6C4Z624Z6b4Z+L4oCL4Z6f4Z+S4Z6Q4Z624Z6T4Z6X4Z624Z6W4oCL4Z6K4Z+C4Z6b4oCL4Z6F4Z6E4Z+L4oCL4Z6U4Z624Z6T4oCL4Z6T4Z+F4oCL4Z6U4Z6T4Z+S4Z6R4Z624Z6P4Z+LICVkwqDhn5YgJS4yNTBzIgorCisjOiBzcmMvc2VsZWN0LmM6MTQ5Cittc2dpZCAicmVhZCBlcnJvciBvbiBzdGFuZGFyZCBpbnB1dCIKK21zZ3N0ciAi4Z6i4Z624Z6T4oCL4Z6A4Z+G4Z6g4Z674Z6f4oCL4Z6i4Z+G4Z6W4Z644oCL4Z6A4Z624Z6a4oCL4Z6U4Z6J4Z+S4Z6F4Z684Z6b4oCL4Z6H4Z624oCL4Z6B4Z+S4Z6T4Z624Z6P4Z6C4Z+G4Z6a4Z68IgorCisjOiBzcmMvc3RhdGNtZC5jOjUyCittc2dpZCAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBvdmVycmlkaW5nIGZpbGUgc3RhdCBpbmZvcm1hdGlvbi4iCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRjbWQuYzo2MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvcHlyaWdodCAoQykgMjAwMCwgMjAwMSBXaWNoZXJ0IEFra2VybWFuLlxuIgorIkNvcHlyaWdodCAoQykgMjAwNi0yMDA5IEd1aWxsZW0gSm92ZXIuXG4iCittc2dzdHIgIiIKKyJcbiIKKyLhnprhnoDhn5Lhnp/hnrbhnp/hnrfhnpHhn5LhnpLhnrfigIvhnobhn5LhnpPhnrbhn4Yg4Z+h4Z+p4Z+p4Z+lIOGeiuGfhOGemSBJYW4gSmFja3NvbsKg4Z+UXG4iCisi4Z6a4Z6A4Z+S4Z6f4Z624Z6f4Z634Z6R4Z+S4Z6S4Z634oCL4Z6G4Z+S4Z6T4Z624Z+GIOGfouGfoOGfoOGfoC3hn6Lhn6Dhn6Dhn6Ig4Z6K4Z+E4Z6ZIFdpY2hlcnQgQWtrZXJtYW7CoOGflCIKKworIzogc3JjL3N0YXRjbWQuYzo4MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtLWFkZCA8b3duZXI+IDxncm91cD4gPG1vZGU+IDxmaWxlPlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGFkZCBhIG5ldyBlbnRyeSBpbnRvIHRoZSBkYXRhYmFzZS5cbiIKKyIgIC0tcmVtb3ZlIDxmaWxlPiAgICAgICAgICByZW1vdmUgZmlsZSBmcm9tIHRoZSBkYXRhYmFzZS5cbiIKKyIgIC0tbGlzdCBbPGdsb2ItcGF0dGVybj5dICBsaXN0IGN1cnJlbnQgb3ZlcnJpZGVzIGluIHRoZSBkYXRhYmFzZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGNtZC5jOjg5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICBzZXQgdGhlIGRpcmVjdG9yeSB3aXRoIHRoZSBzdGF0b3ZlcnJpZGUgZmlsZS5cbiIKKyIgIC0tdXBkYXRlICAgICAgICAgICAgICAgICBpbW1lZGlhdGVseSB1cGRhdGUgZmlsZSBwZXJtaXNzaW9ucy5cbiIKKyIgIC0tZm9yY2UgICAgICAgICAgICAgICAgICBmb3JjZSBhbiBhY3Rpb24gZXZlbiBpZiBhIHNhbml0eSBjaGVjayBmYWlscy5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBxdWlldCBvcGVyYXRpb24sIG1pbmltYWwgb3V0cHV0LlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIuGemuGelOGfgOGelOGelOGfkuGemuGevsKg4Z+WICVzIFs8b3B0aW9uPiAuLi5dIDzhnpbhnrbhnoDhn5LhnpnhnpThnonhn5LhnofhnrY+XG4iCisiXG4iCisi4Z6W4Z624Z6A4Z+S4Z6Z4Z6U4Z6J4Z+S4Z6H4Z62wqDhn5ZcbiIKKyIgIC0tYWRkIDzhnpjhn5LhnoXhnrbhnp/hn4s+IDzhnoDhn5Lhnprhnrvhnpg+IDzhnprhnpThn4DhnpQ+IDzhnq/hnoDhnp/hnrbhnpo+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAg4Z6U4Z6T4Z+S4Z6Q4Z+C4Z6Y4oCL4Z6S4Z624Z6P4Z674oCL4Z6Q4Z+S4Z6Y4Z644oCL4Z6Y4Z694Z6Z4oCL4Z6R4Z+F4oCL4Z6A4Z+S4Z6T4Z674Z6E4oCL4Z6Y4Z684Z6b4Z6K4Z+S4Z6L4Z624Z6T4oCL4Z6R4Z634Z6T4Z+S4Z6T4Z6T4Z+Q4Z6ZwqDhn5RcbiIKKyIgIC0tcmVtb3ZlIDzhnq/hnoDhnp/hnrbhnpo+ICAgICAgICAgIOGemeGegOKAi+Ger+GegOGen+GetuGemuKAi+GeheGfgeGeieKAi+GeluGeuOKAi+GemOGevOGem+GeiuGfkuGei+GetuGek+KAi+GekeGet+Gek+GfkuGek+Gek+GfkOGemcKg4Z+UXG4iCisiICAtLWxpc3QgWzzhnpvhn4bhnpPhnrbhn4bhnp/hnoDhnps+XSAg4Z6a4Z624Z6Z4oCL4Z6A4Z624Z6a4oCL4Z6U4Z6K4Z634Z6f4Z+B4Z6S4oCL4Z6Q4Z+S4Z6Y4Z644Z+X4oCL4Z6T4Z+F4oCL4Z6A4Z+S4Z6T4Z674Z6E4oCL4Z6Y4Z684Z6b4Z6K4Z+S4Z6L4Z624Z6T4oCL4Z6R4Z634Z6T4Z+S4Z6T4Z6T4Z+Q4Z6ZwqDhn5RcbiIKKyJcbiIKKyLhnofhnpjhn5Lhnprhnr7hnp/CoOGfllxuIgorIiAgLS1hZG1pbmRpciA84Z6Q4Z6PPiAgIOGegOGfhuGejuGej+Gfi+KAi+GekOGej+KAi+GeiuGfhOGemeKAi+Ger+GegOGen+GetuGemiBzdGF0b3ZlcnJpZGXCoOGflFxuIgorIiAgLS11cGRhdGUgICAgICAgICAgICAgICAgIOGekuGfkuGenOGevuKAi+GesuGfkuGemeKAi+Gen+Get+GekeGfkuGekuGet+KAi+Ger+GegOGen+GetuGemuKAi+GekeGetuGek+Gfi+KAi+Gen+GemOGfkOGemeKAi+Gel+GfkuGem+GetuGemOGfl8Kg4Z+UXG4iCisiICAtLWZvcmNlICAgICAgICAgICAgICAgICAg4Z6U4Z6E4Z+S4Z6B4Z+G4oCL4Z6f4Z6A4Z6Y4Z+S4Z6Y4Z6X4Z624Z6WIOGekeGfhOGfh+KAi+GelOGeuOKAi+Geh+GetuKAi+GegOGetuGemuKAi+GeluGet+Gek+Get+Gej+GfkuGemeKAi+Gel+GetuGeluKAi+GelOGfkuGemuGegOGfkuGemuGej+GeuOKAi+GelOGemuGetuGeh+GfkOGemeKAi+GegOGfj+KAi+GeiuGfhOGemcKg4Z+UXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAg4Z6U4Z+S4Z6a4Z6P4Z634Z6U4Z6P4Z+S4Z6P4Z634oCL4Z6A4Z624Z6a4oCL4Z6f4Z+S4Z6E4Z624Z6P4Z+LIOGem+GekeGfkuGekuGeleGem+KAi+GeouGelOGfkuGelOGelOGemuGemOGetsKg4Z+UXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAg4Z6U4Z6E4Z+S4Z6g4Z624Z6J4oCL4Z6f4Z624Z6a4oCL4Z6H4Z+G4Z6T4Z694Z6Z4oCL4Z6T4Z+B4Z+HwqDhn5RcbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICDhnpThnoThn5LhnqDhnrbhnonigIvhnoDhn4bhno7hn4LCoOGflFxuIgorCisjOiBzcmMvc3RhdGNtZC5jOjExNgorbXNnaWQgInN0cmlwcGluZyB0cmFpbGluZyAvIgorbXNnc3RyICLhnp/hn5LhnpPhnrbhnpjigIvhnobhn5LhnpPhnrzhno/igIsgLyIKKworIzogc3JjL3N0YXRjbWQuYzoyMDcKKyMsIGZ1enp5Cittc2dpZCAiY2Fubm90IG9wZW4gbmV3IHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICLhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnpThnr7igIvigIvigIvhnq/hnoDhnp/hnrbhnprigIsgc3RhdG92ZXJyaWRlIOGekOGfkuGemOGeuOKAi+GelOGetuGek+GekeGfgeKAi8Kg4Z+WICVzIgorCisjOiBzcmMvc3RhdGNtZC5jOjIyMgorIywgZnV6enkKK21zZ2lkICJlcnJvciByZW1vdmluZyBzdGF0b3ZlcnJpZGUtb2xkIgorbXNnc3RyICLhnoDhn4bhnqDhnrvhnp/igIvhnoDhn5LhnpPhnrvhnoTigIvhnoDhnrbhnprigIvhnpnhnoAgc3RhdG92ZXJyaWRlLW9sZMKg4Z+WICVzIOGeheGfgeGeiSIKKworIzogc3JjL3N0YXRjbWQuYzoyMjQKKyMsIGZ1enp5Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgbmV3IHN0YXRvdmVycmlkZS1vbGQiCittc2dzdHIgIuGegOGfhuGeoOGeu+Gen+KAi+GegOGfkuGek+Geu+GehOKAi+GegOGetuGemuKAi+GelOGehOGfkuGegOGevuGejyBzdGF0b3ZlcnJpZGUtb2xkIOGekOGfkuGemOGeuMKg4Z+WICVzIgorCisjOiBzcmMvc3RhdGNtZC5jOjIyNgorIywgZnV6enkKK21zZ2lkICJlcnJvciBpbnN0YWxsaW5nIG5ldyBzdGF0b3ZlcnJpZGUiCittc2dzdHIgIuGegOGfhuGeoOGeu+Gen+KAi+GegOGfkuGek+Geu+GehOKAi+GegOGetuGemuKAi+GeiuGfhuGeoeGevuGehCBzdGF0b3ZlcnJpZGUg4Z6Q4Z+S4Z6Y4Z64wqDhn5YgJXMiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjQ2Cittc2dpZCAiLS1hZGQgbmVlZHMgZm91ciBhcmd1bWVudHMiCittc2dzdHIgIi0tYWRkIOGej+GfkuGemuGevOGenOGegOGetuGemuKAi+GeouGetuGeguGeu+GemeGemOGfieGehOGfi+KAi+GelOGeveGekyIKKworIzogc3JjL3N0YXRjbWQuYzoyNTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJBbiBvdmVycmlkZSBmb3IgJyVzJyBhbHJlYWR5IGV4aXN0cywgYnV0IC0tZm9yY2Ugc3BlY2lmaWVkIHNvIHdpbGwgYmUgIgorImlnbm9yZWQuIgorbXNnc3RyICLhnpThn4nhnrvhnpPhn5Lhno/hn4IgLS1mb3JjZSDhnpThnrbhnpPigIvhnpThnonhn5LhnofhnrbhnoDhn4sg4Z6K4Z684Z6F4Z+S4Z6T4Z+B4Z+H4oCL4Z6i4Z624Z6F4oCL4Z6Y4Z634Z6T4oCL4Z6i4Z6+4Z6W4Z6+4oCL4Z6c4Z62wqDhn5QiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjYwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJBbiBvdmVycmlkZSBmb3IgJyVzJyBhbHJlYWR5IGV4aXN0cywgYWJvcnRpbmcuIgorbXNnc3RyICLhnoDhnrbhnprigIvhnpThnorhnrfhnp/hn4HhnpLigIvhnp/hnpjhn5LhnprhnrbhnpThn4sgXCIlc1wiIOGemOGetuGek+KAi+GemuGeveGeheKAi+GeoOGevuGemSIKKworIzogc3JjL3N0YXRjbWQuYzoyNzIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIi0tdXBkYXRlIGdpdmVuIGJ1dCAlcyBkb2VzIG5vdCBleGlzdCIKK21zZ3N0ciAi4Z6W4Z+S4Z6a4Z6Y4Z624Z6TwqDhn5YgLS11cGRhdGUg4Z6U4Z624Z6T4oCL4Z6V4Z+S4Z6K4Z6b4Z+LIOGelOGfieGeu+Gek+GfkuGej+GfgiAlcyDhnpjhnrfhnpPigIvhnpHhnrbhnpPhn4vigIvhnpjhnrbhnpMiCisKKyM6IHNyYy9zdGF0Y21kLmM6Mjk2Cittc2dpZCAiTm8gb3ZlcnJpZGUgcHJlc2VudC4iCittc2dzdHIgIuGeguGfkuGemOGetuGek+KAi+GegOGetuGemuKAi+GelOGeiuGet+Gen+GfgeGekuKAi+Gem+GfgeGeheKAi+GeoeGevuGehMKg4Z+UIgorCisjOiBzcmMvc3RhdGNtZC5jOjMwNAorIywgZnV6enkKK21zZ2lkICItLXVwZGF0ZSBpcyB1c2VsZXNzIGZvciAtLXJlbW92ZSIKK21zZ3N0ciAi4Z6W4Z+S4Z6a4Z6Y4Z624Z6TwqDhn5YgLS11cGRhdGUg4Z6C4Z664oCL4Z6C4Z+S4Z6Y4Z624Z6T4oCL4Z6U4Z+S4Z6a4Z6Z4Z+E4Z6H4Z6T4Z+N4oCL4Z6f4Z6Y4Z+S4Z6a4Z624Z6U4Z+LIC0tcmVtb3ZlIgorCisjOiBzcmMvc3RhdGRiLmM6NTkKKyMsIGZ1enp5Cittc2dpZCAic3ludGF4IGVycm9yOiBpbnZhbGlkIHVpZCBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAi4Z6A4Z+G4Z6g4Z674Z6f4oCL4Z6A4Z+S4Z6T4Z674Z6E4oCL4Z6A4Z624Z6a4oCL4Z6K4Z+G4Z6h4Z6+4Z6EIHN0YXRvdmVycmlkZSDhnpDhn5LhnpjhnrjCoOGfliAlcyIKKworIzogc3JjL3N0YXRkYi5jOjY0CisjLCBjLWZvcm1hdAorbXNnaWQgInN5bnRheCBlcnJvcjogdW5rbm93biB1c2VyICclcycgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRkYi5jOjgzCisjLCBmdXp6eQorbXNnaWQgInN5bnRheCBlcnJvcjogaW52YWxpZCBnaWQgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIuGegOGfhuGeoOGeu+Gen+KAi+GegOGfkuGek+Geu+GehOKAi+GegOGetuGemuKAi+GeiuGfhuGeoeGevuGehCBzdGF0b3ZlcnJpZGUg4Z6Q4Z+S4Z6Y4Z64wqDhn5YgJXMiCisKKyM6IHNyYy9zdGF0ZGIuYzo4OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yOiB1bmtub3duIGdyb3VwICclcycgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIuGelOGetuGek+KAi+GelOGemuGetuGeh+GfkOGemeKAi+GegOGfkuGek+Geu+GehOKAi+GegOGetuGemuKAi+GelOGevuGegOKAi+Ger+GegOGen+GetuGemiBzdGF0b3ZlcnJpZGUiCisKKyM6IHNyYy9zdGF0ZGIuYzoxMDQKKyMsIGZ1enp5Cittc2dpZCAic3ludGF4IGVycm9yOiBpbnZhbGlkIG1vZGUgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIuGelOGetuGek+KAi+GelOGemuGetuGeh+GfkOGemeKAi+GegOGfkuGek+Geu+GehOKAi+GegOGetuGemuKAi+GelOGevuGegOKAi+Ger+GegOGen+GetuGemiBzdGF0b3ZlcnJpZGUiCisKKyM6IHNyYy9zdGF0ZGIuYzoxMjcKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAi4Z6U4Z624Z6T4oCL4Z6U4Z6a4Z624Z6H4Z+Q4Z6Z4oCL4Z6A4Z+S4Z6T4Z674Z6E4oCL4Z6A4Z624Z6a4oCL4Z6U4Z6+4Z6A4oCL4Z6v4Z6A4Z6f4Z624Z6aIHN0YXRvdmVycmlkZSIKKworIzogc3JjL3N0YXRkYi5jOjEzNAorbXNnaWQgImZhaWxlZCB0byBmc3RhdCBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAi4Z6U4Z624Z6T4Z6U4Z6a4Z624Z6H4Z+Q4Z6Z4Z6b4Z6+4Z6v4Z6A4Z6f4Z624Z6aIGZzdGF0IHN0YXRvdmVycmlkZSIKKworIzogc3JjL3N0YXRkYi5jOjEzNworbXNnaWQgImZhaWxlZCB0byBmc3RhdCBwcmV2aW91cyBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAi4Z6U4Z624Z6T4oCL4Z6U4Z6a4Z624Z6H4Z+Q4Z6Z4oCL4Z6b4Z6+4oCL4Z6v4Z6A4Z6f4Z624Z6aIGZzdGF0IHN0YXRvdmVycmlkZSDhnpjhnrvhnpMiCisKKyM6IHNyYy9zdGF0ZGIuYzoxNjIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInN0YXRvdmVycmlkZSBmaWxlIGAlLjI1MHMnIgorbXNnaWQgInJlYWRpbmcgc3RhdG92ZXJyaWRlIGZpbGUgJyUuMjUwcyciCittc2dzdHIgIuGer+GegOGen+GetuGemiBzdGF0b3ZlcnJpZGUgYCUuMjUwcyciCisKKyM6IHNyYy9zdGF0ZGIuYzoxNjkKKyMsIGZ1enp5Cittc2dpZCAic3RhdG92ZXJyaWRlIGZpbGUgaXMgbWlzc2luZyBmaW5hbCBuZXdsaW5lIgorbXNnc3RyICLhnq/hnoDhnp/hnrbhnpogc3RhdG92ZXJyaWRlIOGemOGetuGek+KAi+GelOGek+GfkuGekeGetuGej+Gfi+KAi+GekeGekeGfgSIKKworIzogc3JjL3N0YXRkYi5jOjE3MworbXNnaWQgInN0YXRvdmVycmlkZSBmaWxlIGNvbnRhaW5zIGVtcHR5IGxpbmUiCittc2dzdHIgIuGer+GegOGen+GetuGemiBzdGF0b3ZlcnJpZGUg4Z6Y4Z624Z6T4oCL4Z6U4Z6T4Z+S4Z6R4Z624Z6P4Z+L4oCL4Z6R4Z6R4Z+BIgorCisjOiBzcmMvc3RhdGRiLmM6MTc4IHNyYy9zdGF0ZGIuYzoxOTAgc3JjL3N0YXRkYi5jOjIwMgorIywgZnV6enkKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIuGelOGetuGek+KAi+GelOGemuGetuGeh+GfkOGemeKAi+GegOGfkuGek+Geu+GehOKAi+GegOGetuGemuKAi+GelOGevuGegOKAi+Ger+GegOGen+GetuGemiBzdGF0b3ZlcnJpZGUiCisKKyM6IHNyYy9zdGF0ZGIuYzoxODYgc3JjL3N0YXRkYi5jOjE5OCBzcmMvc3RhdGRiLmM6MjEwCisjLCBmdXp6eQorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGxpbmUgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIuGeheGeu+GehOKAi+GelOGek+GfkuGekeGetuGej+Gfi+KAi+GeiuGfguGem+KAi+GemOGet+Gek+KAi+GemuGfhuGeluGeueGehOKAi+KAi+GekeGeu+GegOGegOGfkuGek+Geu+GehOKAi+GeiOGfkuGemOGfhOGfh+KAi+GegOGeieGfkuGeheGelOGfi+KAi+Gek+GfheKAi+GelOGek+GfkuGekeGetuGej+GfiyAlZCIKKworIzogc3JjL3N0YXRkYi5jOjIxNAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAibXVsdGlwbGUgc3RhdHVzb3ZlcnJpZGVzIHByZXNlbnQgZm9yIGZpbGUgJyUuMjUwcyciCittc2dzdHIgIuGer+GegOGen+GetuGemiBzdGF0b3ZlcnJpZGUgYCUuMjUwcyciCisKKyM6IHNyYy90cmlnY21kLmM6NDYKKyMsIGZ1enp5Cittc2dpZCAiVHlwZSBkcGtnLXRyaWdnZXIgLS1oZWxwIGZvciBoZWxwIGFib3V0IHRoaXMgdXRpbGl0eS4iCittc2dzdHIgIuGenOGetuGemSBkcGtnLXNwbGl0IC0taGVscCDhnp/hnpjhn5LhnprhnrbhnpThn4vigIvhnofhnrbigIvhnofhn4bhnpPhnr3hnpnCoOGflCIKKworIzogc3JjL3RyaWdjbWQuYzo1MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuICVzIHBhY2thZ2UgdHJpZ2dlciB1dGlsaXR5IHZlcnNpb24gJXMuXG4iCittc2dzdHIgIuGep+GelOGegOGemuGejuGfjeKAi+Gen+GeveGemuKAi+GegOGemOGfkuGemOGenOGet+GekuGeuOKAi+GeguGfkuGemuGelOGfi+GeguGfkuGemuGehOKAi+GegOGeieGfkuGeheGelOGfiyBgJXMnIOGeiuGfgeGelOGfgOGek1xuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjY3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9ucz4gLi4uXSA8dHJpZ2dlci1uYW1lPlxuIgorIiAgICAgICAlcyBbPG9wdGlvbnM+IC4uLl0gPGNvbW1hbmQ+XG4iCisiXG4iCittc2dzdHIgIiIKKyLhnprhnpThn4DhnpTigIvhnpThn5Lhnprhnr7CoOGfliAlcyBbPOGeh+GemOGfkuGemuGevuGenz4gLi4uXSA84Z6W4Z624Z6A4Z+S4Z6Z4Z6U4Z6J4Z+S4Z6H4Z62PlxuIgorIlxuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC0tY2hlY2stc3VwcG9ydGVkICAgICAgICAgICAgICAgIENoZWNrIGlmIHRoZSBydW5uaW5nIGRwa2cgc3VwcG9ydHMgIgorInRyaWdnZXJzLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy90cmlnY21kLmM6ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgICAgICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyIgIC0tYnktcGFja2FnZT08cGFja2FnZT4gICAgICAgICAgIE92ZXJyaWRlIHRyaWdnZXIgYXdhaXRlciAobm9ybWFsbHkgc2V0XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ5IGRwa2cpLlxuIgorIiAgLS1uby1hd2FpdCAgICAgICAgICAgICAgICAgICAgICAgTm8gcGFja2FnZSBuZWVkcyB0byBhd2FpdCB0aGUgIgorInByb2Nlc3NpbmcuXG4iCisiICAtLW5vLWFjdCAgICAgICAgICAgICAgICAgICAgICAgICBKdXN0IHRlc3QgLSBkb24ndCBhY3R1YWxseSBjaGFuZ2UgIgorImFueXRoaW5nLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy90cmlnY21kLmM6MTUyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB0cmlnZ2VycyBkYXRhIGRpcmVjdG9yeSBub3QgeWV0IGNyZWF0ZWRcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvdHJpZ2NtZC5jOjE1NgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogdHJpZ2dlciByZWNvcmRzIG5vdCB5ZXQgaW4gZXhpc3RlbmNlXG4iCittc2dzdHIgIiIKKworIzogc3JjL3RyaWdjbWQuYzoyMDUKKyMsIGZ1enp5Cittc2dpZCAidGFrZXMgb25lIGFyZ3VtZW50LCB0aGUgdHJpZ2dlciBuYW1lIgorbXNnc3RyICItLSVzIOGej+GfkuGemuGevOGenOGegOGetuGemuKAi+Gej+GfguKAi+GeouGetuGeguGeu+GemeGemOGfieGehOGfi+KAi+Gej+GfguKAi+GemOGeveGemeKAi+GelOGfieGeu+GejuGfkuGejuGfhOGfhyAo4Z6I4Z+S4Z6Y4Z+E4Z+H4oCL4Z6v4Z6A4Z6f4Z624Z6aIC5kZWIpIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIxMAorbXNnaWQgIm11c3QgYmUgY2FsbGVkIGZyb20gYSBtYWludGFpbmVyIHNjcmlwdCAob3Igd2l0aCBhIC0tYnktcGFja2FnZSBvcHRpb24pIgorbXNnc3RyICIiCisKKyM6IHNyYy90cmlnY21kLmM6MjE1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJpbGxlZ2FsIGF3YWl0ZWQgcGFja2FnZSBuYW1lICclLjI1MHMnOiAlLjI1MHMiCittc2dzdHIgIuGenOGetuGemyBgJXMnIOGeiOGfkuGemOGfhOGfh+KAi+GegOGeieGfkuGeheGelOGfi+KAi+GemOGet+Gek+KAi+Gej+GfkuGemuGeueGemOGej+GfkuGemuGevOGenCBgJS4yNTVzJ8Kg4Z+WICVzIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIyMQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCB0cmlnZ2VyIG5hbWUgYCUuMjUwcyc6ICUuMjUwcyIKK21zZ3N0ciAi4Z6c4Z624Z6bIGAlcycg4Z6I4Z+S4Z6Y4Z+E4Z+H4oCL4Z6A4Z6J4Z+S4Z6F4Z6U4Z+L4oCL4Z6Y4Z634Z6T4oCL4Z6P4Z+S4Z6a4Z654Z6Y4Z6P4Z+S4Z6a4Z684Z6cIGAlLjI1NXMnwqDhn5YgJXMiCisKKyM6IHNyYy90cmlncHJvYy5jOjI1MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IGN5Y2xlIGZvdW5kIHdoaWxlIHByb2Nlc3NpbmcgdHJpZ2dlcnM6XG4iCisiIGNoYWluIG9mIHBhY2thZ2VzIHdob3NlIHRyaWdnZXJzIGFyZSBvciBtYXkgYmUgcmVzcG9uc2libGU6XG4iCittc2dzdHIgIiIKKworIzogc3JjL3RyaWdwcm9jLmM6MjU4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgcGFja2FnZXMnIHBlbmRpbmcgdHJpZ2dlcnMgd2hpY2ggYXJlIG9yIG1heSBiZSB1bnJlc29sdmFibGU6XG4iCittc2dzdHIgIiIKKworIzogc3JjL3RyaWdwcm9jLmM6MjgxCittc2dpZCAidHJpZ2dlcnMgbG9vcGluZywgYWJhbmRvbmVkIgorbXNnc3RyICIiCisKKyM6IHNyYy90cmlncHJvYy5jOjMxMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiUHJvY2Vzc2luZyB0cmlnZ2VycyBmb3IgJXMgLi4uXG4iCittc2dzdHIgIuGegOGfhuGeluGeu+GehOKAi+Gem+Geu+GelOKAi+GelOGfhuGelOGetuGej+Gfi+KAi+Ger+GegOGen+GetuGemuKAi+GegOGfhuGejuGej+Gfi+KAi+GemuGeheGek+GetuGen+GemOGfkuGeluGfkOGek+GfkuGekuKAi+Gen+GemOGfkuGemuGetuGelOGfiyAlcyAuLi5cbiIKKworIzogc3JjL3VwZGF0ZS5jOjUyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICItLSVzIG5lZWRzIGV4YWN0bHkgb25lIFBhY2thZ2VzIGZpbGUgYXJndW1lbnQiCittc2dpZCAiLS0lcyBuZWVkcyBleGFjdGx5IG9uZSBQYWNrYWdlcy1maWxlIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIOGej+GfkuGemuGevOGenOGegOGetuGemuKAi+GeouGetuGeguGeu+GemeGemOGfieGehOGfi+KAi+Ger+GegOGen+GetuGemuKAi+GegOGeieGfkuGeheGelOGfi+KAi+Geh+GetuGegOGfi+Gem+GetuGegOGfi+KAi+GemOGeveGemSIKKworIzogc3JjL3VwZGF0ZS5jOjYyCittc2dpZCAidW5hYmxlIHRvIGFjY2VzcyBkcGtnIHN0YXR1cyBhcmVhIGZvciBidWxrIGF2YWlsYWJsZSB1cGRhdGUiCittc2dzdHIgIuGemOGet+Gek+KAi+GeouGetuGeheKAi+GeheGevOGem+KAi+GeiuGfhuGejuGevuGemuGegOGetuGemuKAi+GeleGfkuGekeGfg+KAi+Gen+GfkuGekOGetuGek+Gel+GetuGeliBkcGtnIOGen+GemOGfkuGemuGetuGelOGfi+KAi+GelOGek+GfkuGekeGeu+GegOKAi+KAi+GeiuGfguKAi+Gem+GemOGetuGek+KAi+GegOGetuGemuGekuGfkuGenOGevuGesuGfkuGemeKAi+GekeGetuGek+Gfi+Gen+GemOGfkOGemSIKKworIzogc3JjL3VwZGF0ZS5jOjY0Cittc2dpZCAiYnVsayBhdmFpbGFibGUgdXBkYXRlIHJlcXVpcmVzIHdyaXRlIGFjY2VzcyB0byBkcGtnIHN0YXR1cyBhcmVhIgorbXNnc3RyICLhnpThnpPhn5LhnpHhnrvhnoDigIvhnorhn4LigIvhnpvhnpjhnrbhnpPigIvhnoDhnrbhnprigIvhnpLhn5Lhnpzhnr7hnrLhn5LhnpnigIvhnpHhnrbhnpPhn4vigIvhnp/hnpjhn5DhnpnigIvhno/hn5LhnprhnrzhnpzhnoDhnrbhnprigIvhnp/hnrfhnpHhn5LhnpLhnrfigIvhnoXhnrzhnpvigIvhnorhn4bhno7hnr7hnprhnoDhnrbhnprigIvhnpHhn4XigIvhnpXhn5LhnpHhn4PigIvhnp/hn5LhnpDhnrbhnpPhnpfhnrbhnpbigIvhnprhnpThnp/hn4sgZHBrZyIKKworIzogc3JjL3VwZGF0ZS5jOjcxCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlcGxhY2luZyBhdmFpbGFibGUgcGFja2FnZXMgaW5mbywgdXNpbmcgJXMuXG4iCittc2dzdHIgIuGeh+GfhuGek+GeveGen+KAi+GeluGfkOGej+GfjOGemOGetuGek+KAi+GegOGeieGfkuGeheGelOGfi+KAi+GeiuGfguGem+KAi+GemOGetuGekyDhnorhn4ThnpnigIvhnpThn5Lhnprhnr4gJXPCoOGflFxuIgorCisjOiBzcmMvdXBkYXRlLmM6NzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiVXBkYXRpbmcgYXZhaWxhYmxlIHBhY2thZ2VzIGluZm8sIHVzaW5nICVzLlxuIgorbXNnc3RyICLhnpLhn5Lhnpzhnr7igIvhnrLhn5LhnpnigIvhnpbhn5Dhno/hn4zhnpjhnrbhnpPigIvhnoDhnonhn5LhnoXhnpThn4vigIvhnorhn4LhnpvhnpjhnrbhnpPigIvhnpHhnrbhnpPhn4vigIvhnp/hnpjhn5Dhnpkg4Z6K4Z+E4Z6Z4oCL4Z6U4Z+S4Z6a4Z6+ICVzwqDhn5RcbiIKKworIzogc3JjL3VwZGF0ZS5jOjEwMQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiSW5mb3JtYXRpb24gYWJvdXQgJWQgcGFja2FnZShzKSB3YXMgdXBkYXRlZC5cbiIKK21zZ2lkICJJbmZvcm1hdGlvbiBhYm91dCAlZCBwYWNrYWdlIHdhcyB1cGRhdGVkLlxuIgorbXNnaWRfcGx1cmFsICJJbmZvcm1hdGlvbiBhYm91dCAlZCBwYWNrYWdlcyB3YXMgdXBkYXRlZC5cbiIKK21zZ3N0clswXSAi4Z6W4Z+Q4Z6P4Z+M4Z6Y4Z624Z6T4oCL4Z6i4Z+G4Z6W4Z644oCL4Z6A4Z6J4Z+S4Z6F4Z6U4Z+LICVkIOGej+GfkuGemuGevOGenOKAi+GelOGetuGek+KAi+GekuGfkuGenOGevuGesuGfkuGemeKAi+GekeGetuGek+Gfi+KAi+Gen+GemOGfkOGemcKg4Z+UXG4iCittc2dzdHJbMV0gIuGeluGfkOGej+GfjOGemOGetuGek+KAi+GeouGfhuGeluGeuOKAi+GegOGeieGfkuGeheGelOGfiyAlZCDhno/hn5LhnprhnrzhnpzigIvhnpThnrbhnpPigIvhnpLhn5Lhnpzhnr7hnrLhn5LhnpnigIvhnpHhnrbhnpPhn4vigIvhnp/hnpjhn5DhnpnCoOGflFxuIgorCisjOiBzcmMvdXBkYXRlLmM6MTE1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJvYnNvbGV0ZSAnLS0lcycgb3B0aW9uLCB1bmF2YWlsYWJsZSBwYWNrYWdlcyBhcmUgYXV0b21hdGljYWxseSBjbGVhbmVkIHVwLiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIG5hbWUgJyUuNTBzLi4uJyBpcyB0b28gbG9uZyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjEyOQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgZmlsZSBuYW1lICclLjI1MHMnIgorbXNnc3RyICLhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnpThnr7hnoDigIvhnq/hnoDhnp/hnrbhnprigIvhnpThn5LhnprhnpfhnpYgYCUuMjUwcyciCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTg5CisjLCBmdXp6eQorbXNnaWQgInVuYWJsZSB0byBzdGF0IGNvbnRyb2wgZGlyZWN0b3J5IgorbXNnc3RyICLhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnpThnr7hnoDigIvhnpDhno/igIvhnpzhno/hn5LhnpDhnrvigIvhnpThnonhn5LhnofhnrYgdGVtcCDhnpThnrbhnpPigIvhnpHhn4EiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTkxCisjLCBmdXp6eQorbXNnaWQgImNvbnRyb2wgZGlyZWN0b3J5IGlzIG5vdCBhIGRpcmVjdG9yeSIKK21zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6i4Z624Z6T4oCL4Z6Q4Z6P4oCL4Z6W4Z+Q4Z6P4Z+M4Z6Y4Z624Z6TIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjE5MworIywgYy1mb3JtYXQKK21zZ2lkICJjb250cm9sIGRpcmVjdG9yeSBoYXMgYmFkIHBlcm1pc3Npb25zICUwM2xvIChtdXN0IGJlID49MDc1NSBhbmQgPD0wNzc1KSIKK21zZ3N0ciAi4Z6Q4Z6P4oCL4Z6c4Z6P4Z+S4Z6Q4Z674Z6U4Z6J4Z+S4Z6H4Z624oCL4Z6Y4Z624Z6T4oCL4Z6f4Z634Z6R4Z+S4Z6S4Z634oCL4Z6Y4Z634Z6T4oCL4Z6b4Z+S4Z6iICUwM2xvICjhno/hn5LhnprhnrzhnpzigIvhno/hn4IgPj0wNzU1IOGek+Get+GehCA8PTA3NzUpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjIwNAorIywgYy1mb3JtYXQKK21zZ2lkICJtYWludGFpbmVyIHNjcmlwdCBgJS41MHMnIGlzIG5vdCBhIHBsYWluIGZpbGUgb3Igc3ltbGluayIKK21zZ3N0ciAi4Z6f4Z+S4Z6C4Z+S4Z6a4Z644Z6U4oCL4Z6i4Z+S4Z6T4Z6A4oCL4Z6Q4Z+C4Z6R4Z624Z+GIGAlLjUwcycg4Z6Y4Z634Z6T4Z6Y4Z+C4Z6T4oCL4Z6H4Z624oCL4Z6v4Z6A4Z6f4Z624Z6a4oCL4Z6i4Z6P4Z+S4Z6Q4Z6U4Z6R4oCL4Z6S4Z6Y4Z+S4Z6Y4Z6P4Z62IOGerOGej+GfhuGejuKAi+Gek+Get+GemOGet+Gej+GfkuGej+KAi+Gen+GeieGfkuGeieGetuKAi+GekeGfgSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyMDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm1haW50YWluZXIgc2NyaXB0IGAlLjUwcycgaGFzIGJhZCBwZXJtaXNzaW9ucyAlMDNsbyAobXVzdCBiZSA+PTA1NTUgYW5kICIKKyI8PTA3NzUpIgorbXNnc3RyICLhnp/hn5LhnoLhn5LhnprhnrjhnpTigIvhnqLhn5LhnpPhnoDigIvhnpDhn4LhnpHhnrbhn4YgYCUuNTBzJyDhnpjhnrbhnpPigIvhnp/hnrfhnpHhn5LhnpLhnrfigIvhnpjhnrfhnpPigIvhnpvhn5LhnqIgJTAzbG8gKOGej+GfkuGemuGevOGenOGej+GfgiA+PTA1NTUg4Z6T4Z634Z6EIDw9MDc3NSkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjExCisjLCBjLWZvcm1hdAorbXNnaWQgIm1haW50YWluZXIgc2NyaXB0IGAlLjUwcycgaXMgbm90IHN0YXR0YWJsZSIKK21zZ3N0ciAi4Z6f4Z+S4Z6C4Z+S4Z6a4Z644Z6U4Z6i4Z+S4Z6T4Z6A4Z6Q4Z+C4Z6R4Z624Z+GIGAlLjUwcycg4Z6Y4Z634Z6T4Z6f4Z+S4Z6Q4Z634Z6P4Z6f4Z+S4Z6Q4Z+B4Z6aIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjIzNworbXNnaWQgImVycm9yIG9wZW5pbmcgY29uZmZpbGVzIGZpbGUiCittc2dzdHIgIuGegOGfhuGeoOGeu+Gen+KAi+GegOGfkuGek+Geu+GehOKAi+GegOGetuGemuKAi+GelOGevuGegOKAi+Ger+GegOGen+GetuGemiBjb25mZmlsZXMiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjQ2Cittc2dpZCAiZW1wdHkgc3RyaW5nIGZyb20gZmdldHMgcmVhZGluZyBjb25mZmlsZXMiCittc2dzdHIgIuGegeGfkuGen+GfguGeouGegOGfkuGen+GemuGekeGekeGfgeGeluGeuOGegOGetuGemuGeouGetuGekyBmZ2V0cyBjb25mZmlsZXMiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjUxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBuYW1lICclLjUwcy4uLicgaXMgdG9vIGxvbmcsIG9yIG1pc3NpbmcgZmluYWwgbmV3bGluZSIKK21zZ3N0ciAi4Z6W4Z+S4Z6a4Z6Y4Z624Z6TIOGeiOGfkuGemOGfhOGfh+KAi+GemuGelOGen+GfiyBjb25mZmlsZSBgJS41MHMuLi4nIOGeguGeuuKAi+GenOGfguGehOKAi+GeluGfgeGegCDhnqwg4Z6U4Z624Z6P4Z+L4oCL4Z6U4Z6T4Z+S4Z6R4Z624Z6P4Z+L4oCL4Z6Q4Z+S4Z6Y4Z644oCL4Z6F4Z674Z6E4oCL4Z6A4Z+S4Z6a4Z+E4Z6ZXG4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjY0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBmaWxlbmFtZSAnJXMnIGNvbnRhaW5zIHRyYWlsaW5nIHdoaXRlIHNwYWNlcyIKK21zZ3N0ciAi4Z6W4Z+S4Z6a4Z6Y4Z624Z6TIOGeiOGfkuGemOGfhOGfh+Ger+GegOGen+GetuGemiBjb25mZmlsZSBgJXMnIOGemOGetuGek+GegOGek+GfkuGekeGeu+GemeGeh+GetuGeheGek+GfkuGem+GfhOGfh+GemOGet+Gek+Geg+GevuGeiVxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI2NgorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBgJS4yNTBzJyBkb2VzIG5vdCBhcHBlYXIgaW4gcGFja2FnZSIKK21zZ3N0ciAiY29uZmZpbGUgYCUuMjUwcycg4Z6Y4Z634Z6T4oCL4Z6U4Z6E4Z+S4Z6g4Z624Z6J4oCL4Z6T4Z+F4oCL4Z6A4Z+S4Z6T4Z674Z6E4oCL4Z6A4Z6J4Z+S4Z6F4Z6U4Z+LIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI2OAorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBgJS4yNTBzJyBpcyBub3Qgc3RhdHRhYmxlIgorbXNnc3RyICJjb25mZmlsZSBgJS4yNTBzJyDhnpjhnrfhnpPigIvhnp/hn5LhnpDhnrfhno/hnp/hn5LhnpDhn4HhnpoiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjcwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSAnJXMnIGlzIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgIuGegOGetuGemuGeluGfkuGemuGemOGetuGekyBjb25mZmlsZSBgJXMnIOGeguGfkuGemOGetuGek+Ger+GegOGen+GetuGemuGeouGej+GfkuGekOGelOGekeGekuGemOGfkuGemOGej+GetlxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI3NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgbmFtZSAnJXMnIGlzIGR1cGxpY2F0ZWQiCittc2dzdHIgIuGeiOGfkuGemOGfhOGfh+KAi+GegOGevOGek+GeheGfhSAlcyDhnpThnrbhnpPigIvhnp/hn5LhnpHhnr3hnpPigIsiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6Mjg3Cittc2dpZCAiZXJyb3IgcmVhZGluZyBjb25mZmlsZXMgZmlsZSIKK21zZ3N0ciAi4Z6A4Z+G4Z6g4Z674Z6f4oCL4Z6A4Z+S4Z6T4Z674Z6E4oCL4Z6A4Z624Z6a4oCL4Z6i4Z624Z6T4oCL4Z6v4Z6A4Z6f4Z624Z6aIGNvbmZmaWxlcyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzozMzkKK21zZ2lkICJwYWNrYWdlIG5hbWUgaGFzIGNoYXJhY3RlcnMgdGhhdCBhcmVuJ3QgbG93ZXJjYXNlIGFscGhhbnVtcyBvciBgLSsuJyIKK21zZ3N0ciAi4Z6I4Z+S4Z6Y4Z+E4Z+H4oCL4Z6A4Z6J4Z+S4Z6F4Z6U4Z+L4oCL4Z6Y4Z624Z6T4oCL4Z6P4Z694Z6i4Z6A4Z+S4Z6f4Z6a4oCL4Z6K4Z+C4Z6b4oCL4Z6Y4Z634Z6T4Z6Y4Z+C4Z6T4oCL4Z6H4Z624oCL4Z6i4Z6A4Z+S4Z6f4Z6a4oCL4Z6A4Z+S4Z6a4Z6Y4oCL4Z6b4Z+B4Z6B4oCL4Z6i4Z6A4Z+S4Z6f4Z6a4Z6P4Z684Z6FIOGerCBgLSsuJyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzozNDEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiclcycgY29udGFpbnMgdXNlci1kZWZpbmVkIFByaW9yaXR5IHZhbHVlICclcyciCittc2dzdHIgIuGegOGetuGemuKAi+GeluGfkuGemuGemOGetuGekyBgJXMnIOGemOGetuGek+KAi+Gej+GemOGfkuGem+Gfg+KAi+GeouGetuGekeGet+Gel+GetuGeluKAi+GeiuGfguGem+KAi+GelOGetuGek+KAi+GegOGfhuGejuGej+Gfi+KAi+GeiuGfhOGemeKAi+GeouGfkuGek+GegOKAi+GelOGfkuGemuGeviBgJXMnXG4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MzQ3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICInJXMnIGNvbnRhaW5zIHVzZXItZGVmaW5lZCBmaWVsZCAnJXMnIgorbXNnc3RyICLhnoDhnrbhnprhnpbhn5LhnprhnpjhnrbhnpMgYCVzJyDhnpjhnrbhnpPigIvhnpzhnrbhnpvigIvhnorhn4LhnpvigIvhnpThnrbhnpPigIvhnoDhn4bhno7hno/hn4vigIvhnorhn4ThnpnigIvhnqLhn5LhnpPhnoDigIvhnpThn5Lhnprhnr4gYCVzJ1xuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjM1OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgJWQgd2FybmluZyBhYm91dCB0aGUgY29udHJvbCBmaWxlKHMpXG4iCittc2dpZF9wbHVyYWwgImlnbm9yaW5nICVkIHdhcm5pbmdzIGFib3V0IHRoZSBjb250cm9sIGZpbGUocylcbiIKK21zZ3N0clswXSAiZHBrZy1kZWLCoOGfliDhnpjhnrfhnpPigIvhnqLhnr7hnpbhnr4gJWQg4Z6A4Z624Z6a4oCL4Z6W4Z+S4Z6a4Z6Y4Z624Z6T4oCL4Z6i4Z+G4Z6W4Z644oCL4Z6v4Z6A4Z6f4Z624Z6a4oCL4Z6c4Z6P4Z+S4Z6Q4Z674Z6U4Z6J4Z+S4Z6H4Z62XG4iCittc2dzdHJbMV0gImRwa2ctZGViwqDhn5Yg4Z6Y4Z634Z6T4oCL4Z6i4Z6+4Z6W4Z6+ICVkIOGegOGetuGemuKAi+GeluGfkuGemuGemOGetuGek+KAi+GeouGfhuGeluGeuOKAi+Ger+GegOGen+GetuGemuKAi+GenOGej+GfkuGekOGeu+GelOGeieGfkuGeh+GetlxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQwMyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQyOQorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhIDxkaXJlY3Rvcnk+IGFyZ3VtZW50IgorbXNnc3RyICItLSVzIOGej+GfkuGemuGevOGenOGegOGetuGemuKAi+GeouGetuGeguGeu+GemeGemOGfieGehOGfiyA84Z6Q4Z6PPiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MDkKK21zZ2lkICItLWJ1aWxkIHRha2VzIGF0IG1vc3QgdHdvIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS1idWlsZCDhno/hn5LhnprhnrzhnpzigIvhnoDhnrbhnprigIvhnqLhnrbhnoLhnrvhnpnhnpjhn4nhnoThn4vigIvhnoXhn5Lhnprhnr7hnpPigIvhnpThn4bhnpXhnrvhno/igIvhnpbhnrjhnpoiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDEzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGVjayBmb3IgZXhpc3RlbmNlIG9mIGFyY2hpdmUgYCUuMjUwcyciCittc2dzdHIgIuGemOGet+Gek+KAi+GeouGetuGeheKAi+GeluGet+Gek+Get+Gej+GfkuGemeKAi+Gel+GetuGeluKAi+GemOGetuGek+KAi+Gen+GfkuGemuGetuGelOGfi+KAi+GemuGelOGen+Gfi+KAi+GelOGfkOGejuGfkuGejuGen+GetuGemiBgJS4yNTBzJyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzAKK21zZ2lkICJ0YXJnZXQgaXMgZGlyZWN0b3J5IC0gY2Fubm90IHNraXAgY29udHJvbCBmaWxlIGNoZWNrIgorbXNnc3RyICLhnoLhn4Thnpvhnorhn4XhnoLhnrrhnofhnrbhnpDhno8gLSDhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnprhn4bhnpvhnoTigIvhnoDhnrbhnprigIvhnpbhnrfhnpPhnrfhno/hn5LhnpnigIvhnq/hnoDhnp/hnrbhnprigIvhnpzhno/hn5LhnpDhnrvigIvhnpThnonhn5LhnofhnrYiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDMxCittc2dpZCAibm90IGNoZWNraW5nIGNvbnRlbnRzIG9mIGNvbnRyb2wgYXJlYS4iCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImRwa2ctZGViOiBidWlsZGluZyBhbiB1bmtub3duIHBhY2thZ2UgaW4gJyVzJy5cbiIKK21zZ3N0ciAiZHBrZy1kZWLCoOGfliDhnoDhnrbhnprigIvhnp/hn5LhnpDhnrbhnpThnpPhnrbigIvhnoDhnonhn5LhnoXhnpThn4sgYCVzJyDhnpPhn4XigIvhnoDhn5LhnpPhnrvhnoQgYCVzJ8Kg4Z+UXG4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDM5CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2ctZGViOiBidWlsZGluZyBwYWNrYWdlIGAlcycgaW4gYCVzJy5cbiIKK21zZ3N0ciAiZHBrZy1kZWLCoOGfliDhnoDhnrbhnprigIvhnp/hn5LhnpDhnrbhnpThnpPhnrbigIvhnoDhnonhn5LhnoXhnpThn4sgYCVzJyDhnpPhn4XigIvhnoDhn5LhnpPhnrvhnoQgYCVzJ8Kg4Z+UXG4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDY3IGRwa2ctZGViL2J1aWxkLmM6NTIxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gbWFrZSB0bXBmaWxlIChkYXRhKSIKK21zZ2lkICJmYWlsZWQgdG8gbWFrZSB0ZW1wb3JhcnkgZmlsZSAoJXMpIgorbXNnc3RyICLhnpThnrbhnpPigIvhnpThnprhnrbhnofhn5DhnpnigIvhnoDhn5LhnpPhnrvhnoTigIvhnoDhnrbhnprigIvhnpThnoThn5LhnoDhnr7hno8gdG1wZmlsZSAo4Z6R4Z634Z6T4Z+S4Z6T4Z6T4Z+Q4Z6ZKSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0NjcgZHBrZy1kZWIvYnVpbGQuYzo0NzAgZHBrZy1kZWIvYnVpbGQuYzo0NzcKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDg1IGRwa2ctZGViL2J1aWxkLmM6NDk0IGRwa2ctZGViL2J1aWxkLmM6NDk5CisjLCBmdXp6eQorI3wgbXNnaWQgImNvbnRyb2wgYXJlYSIKK21zZ2lkICJjb250cm9sIG1lbWJlciIKK21zZ3N0ciAi4Z6P4Z+G4Z6U4Z6T4Z+L4oCL4Z6c4Z6P4Z+S4Z6Q4Z674Z6U4Z6J4Z+S4Z6H4Z624oCLIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ3MCBkcGtnLWRlYi9idWlsZC5jOjUyNAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIHVubGluayB0bXBmaWxlIChkYXRhKSwgJXMiCittc2dpZCAiZmFpbGVkIHRvIHVubGluayB0ZW1wb3JhcnkgZmlsZSAoJXMpLCAlcyIKK21zZ3N0ciAi4Z6U4Z624Z6T4Z6U4Z6a4Z624Z6H4Z+Q4Z6Z4Z6A4Z+S4Z6T4Z674Z6E4Z6A4Z624Z6a4Z6Y4Z634Z6T4Z6P4Z6X4Z+S4Z6H4Z624Z6U4Z+LIHRtcGZpbGUgKOGekeGet+Gek+GfkuGek+Gek+GfkOGemSkgJXMiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDg1IGRwa2ctZGViL2J1aWxkLmM6NTkzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gcmV3aW5kIHRtcGZpbGUgKGRhdGEpIgorbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdGVtcG9yYXJ5IGZpbGUgKCVzKSIKK21zZ3N0ciAi4Z6U4Z624Z6T4oCL4Z6U4Z6a4Z624Z6H4Z+Q4Z6Z4oCL4Z6A4Z+S4Z6T4Z674Z6E4oCL4Z6A4Z624Z6a4oCL4Z6B4Z62IHRtcGZpbGUg4Z6Q4Z6Z4oCL4Z6A4Z+S4Z6a4Z+E4Z6ZICjhnpHhnrfhnpPhn5LhnpPhnpPhn5DhnpkpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ5NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHN0YXQgdGVtcG9yYXJ5IGZpbGUgKCVzKSIKK21zZ3N0ciAi4Z6U4Z624Z6T4oCL4Z6U4Z6a4Z624Z6H4Z+Q4Z6Z4oCL4Z6A4Z+S4Z6T4Z674Z6E4oCL4Z6A4Z624Z6a4oCL4Z6U4Z6E4Z+S4Z6A4Z6+4Z6PIHRtcGZpbGUgKOGekeGet+Gek+GfkuGek+Gek+GfkOGemSkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDk4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHdyaXRpbmcgYCVzJyIKK21zZ3N0ciAi4Z6A4Z+G4Z6g4Z674Z6f4oCL4oCL4Z6A4Z+S4Z6T4Z674Z6E4oCL4Z6A4Z624Z6a4Z6f4Z6a4Z6f4Z+B4Z6aIGAlcyciCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTIxIGRwa2ctZGViL2J1aWxkLmM6NTI0IGRwa2ctZGViL2J1aWxkLmM6NTQ2CisjOiBkcGtnLWRlYi9idWlsZC5jOjU3MiBkcGtnLWRlYi9idWlsZC5jOjU4MCBkcGtnLWRlYi9idWlsZC5jOjU5MworIywgZnV6enkKKyN8IG1zZ2lkICJiZXR3ZWVuIG1lbWJlcnMiCittc2dpZCAiZGF0YSBtZW1iZXIiCittc2dzdHIgIuGemuGenOGetuGehOKAi+Gen+GemOGetuGeh+Get+GegOKAiyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo1NzEgZHBrZy1kZWIvYnVpbGQuYzo1ODAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byB3cml0ZSBmaWxlbmFtZSB0byB0YXIgcGlwZSAoZGF0YSkiCittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIGZpbGVuYW1lIHRvIHRhciBwaXBlICglcykiCittc2dzdHIgIuGelOGetuGek+KAi+GelOGemuGetuGeh+GfkOGemeKAi+GegOGfkuGek+Geu+GehOKAi+GegOGetuGemuKAi+Gen+GemuGen+GfgeGemuKAi+GeiOGfkuGemOGfhOGfh+KAi+Ger+GegOGen+GetuGemuKAi+GekeGfheGeh+GetuKAi+GelOGfhuGeluGehOGfiyB0YXIgKOGekeGet+Gek+GfkuGek+Gek+GfkOGemSkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTg0Cittc2dpZCAiPGNvbXByZXNzPiBmcm9tIHRhciAtY2YiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjYxIGRwa2ctZGViL2V4dHJhY3QuYzo2MworbXNnaWQgInNoZWxsIGNvbW1hbmQgdG8gbW92ZSBmaWxlcyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6NzAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgZmlsZSBpbiAlcyBpbiAlLjI1NXMiCittc2dzdHIgIuGeheGeu+GehOKAi+Ger+GegOGen+GetuGemuKAi+GeiuGfguGem+KAi+GemOGet+Gek+KAi+GemuGfhuGeluGeueGehOKAi+Gek+GfheKAi+GegOGfkuGek+Geu+GehCAlcyDhnoDhn5LhnpPhnrvhnoQgJS4yNTVzIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcmVhZGluZyAlcyBmcm9tIGZpbGUgJS4yNTVzIgorbXNnc3RyICLhnoDhn4bhnqDhnrvhnp/igIvhnoDhn5LhnpPhnrvhnoTigIvhnoDhnrbhnprigIvhnqLhnrbhnpMgJXMg4Z6W4Z644oCL4Z6v4Z6A4Z6f4Z624Z6aICUuMjU1cyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjEyNQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCBhcmNoaXZlIGAlLjI1NXMnIgorbXNnc3RyICLhnpThnrbhnpPigIvhnpThnprhnrbhnofhn5DhnpnigIvhnoDhn5LhnpPhnrvhnoTigIvhnoDhnrbhnprigIvhnqLhnrbhnpPigIvhnpThn5Dhno7hn5Lhno7hnp/hnrbhnpogYCUuMjU1cyciCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxMjcKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgYXJjaGl2ZSIKK21zZ3N0ciAi4Z6U4Z624Z6T4oCL4Z6U4Z6a4Z624Z6H4Z+Q4Z6Z4oCL4Z6R4Z+F4oCL4Z6T4Z654Z6E4oCL4Z6U4Z+Q4Z6O4Z+S4Z6O4Z6f4Z624Z6aIGZzdGF0IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTMxCisjLCBmdXp6eQorI3wgbXNnaWQgImFyY2hpdmUgaGFzIG5vIGRvdCBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ2lkICJhcmNoaXZlIG1hZ2ljIHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICLhnpThn5Dhno7hn5Lhno7hnp/hnrbhnprigIvhnoLhn5LhnpjhnrbhnpPigIvhnp/hnonhn5LhnonhnrYgKC4pIOGek+GfheKAi+GegOGfkuGek+Geu+GehOKAi+Gem+GfgeGegeKAi+GegOGfhuGejuGfgiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE0MworIywgZnV6enkKKyN8IG1zZ2lkICJhcmNoaXZlIGhhcyBubyBuZXdsaW5lcyBpbiBoZWFkZXIiCittc2dpZCAiYXJjaGl2ZSBtZW1iZXIgaGVhZGVyIgorbXNnc3RyICLhnpThn5Dhno7hn5Lhno7hnp/hnrbhnprigIvhnoLhn5LhnpjhnrbhnpPigIvhnpThnpPhn5LhnpHhnrbhno/hn4vigIvhnpDhn5LhnpjhnrjigIvhnpPhn4XigIvhnoDhn5LhnpPhnrvhnoTigIvhnpThnovhnpjhnoDhnpDhnrYiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNDgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBwYXJ0IG51bWJlciIKK21zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgYXJjaGl2ZSBoZWFkZXIgbWFnaWMiCittc2dzdHIgIuGer+GegOGen+GetuGemiBgJS4yNTBzJyDhnoHhnrzhnoUgLSDhnpvhn4HhnoHigIvhnpXhn5LhnpPhn4LhnoDigIvhnpjhnrfhnpPhnpvhn5LhnqIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBub3QgYSBkZWJpYW4gYmluYXJ5IGFyY2hpdmUgKHRyeSBkcGtnLXNwbGl0PykiCittc2dzdHIgIuGer+GegOGen+GetuGemiBgJS4yNTBzJyDhnpjhnrfhnpPhnpjhn4LhnpPigIvhnofhnrbigIvhnpThn5Dhno7hn5Lhno7hnp/hnrbhnprigIvhnoLhn4ThnpvhnpbhnrjhnprigIvhnprhnpThnp/hn4vigIvhnorhn4HhnpThn4DhnpMgKOGeluGfkuGemeGetuGemeGetuGemOKAi+GegOGetuGemuKAi+GelOGfhuGelOGfguGegCBkcGtnwqA/KSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE1OQorIywgZnV6enkKKyN8IG1zZ2lkICJhcmNoaXZlIGhhcyBubyBkb3QgaW4gdmVyc2lvbiBudW1iZXIiCittc2dpZCAiYXJjaGl2ZSBpbmZvcm1hdGlvbiBoZWFkZXIgbWVtYmVyIgorbXNnc3RyICLhnpThn5Dhno7hn5Lhno7hnp/hnrbhnprigIvhnoLhn5LhnpjhnrbhnpPigIvhnp/hnonhn5LhnonhnrYgKC4pIOGek+GfheKAi+GegOGfkuGek+Geu+GehOKAi+Gem+GfgeGegeKAi+GegOGfhuGejuGfgiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE2MgorbXNnaWQgImFyY2hpdmUgaGFzIG5vIG5ld2xpbmVzIGluIGhlYWRlciIKK21zZ3N0ciAi4Z6U4Z+Q4Z6O4Z+S4Z6O4Z6f4Z624Z6a4oCL4Z6C4Z+S4Z6Y4Z624Z6T4oCL4Z6U4Z6T4Z+S4Z6R4Z624Z6P4Z+L4oCL4Z6Q4Z+S4Z6Y4Z644oCL4Z6T4Z+F4oCL4Z6A4Z+S4Z6T4Z674Z6E4oCL4Z6U4Z6L4Z6Y4Z6A4Z6Q4Z62IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTY1Cittc2dpZCAiYXJjaGl2ZSBoYXMgbm8gZG90IGluIHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICLhnpThn5Dhno7hn5Lhno7hnp/hnrbhnprigIvhnoLhn5LhnpjhnrbhnpPigIvhnp/hnonhn5LhnonhnrYgKC4pIOGek+GfheKAi+GegOGfkuGek+Geu+GehOKAi+Gem+GfgeGegeKAi+GegOGfhuGejuGfgiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE2OAorIywgYy1mb3JtYXQKK21zZ2lkICJhcmNoaXZlIHZlcnNpb24gJS4yNTBzIG5vdCB1bmRlcnN0b29kLCBnZXQgbmV3ZXIgZHBrZy1kZWIiCittc2dzdHIgIuGemOGet+Gek+KAi+GemeGem+Gfi+KAi+GegOGfhuGejuGfguKAi+GelOGfkOGejuGfkuGejuGen+GetuGemiAlLjI1MHMgIOGemeGegCBkcGtnLWRlYiDhnpDhn5LhnpjhnrjigIvhnofhnrbhnoQiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNzkgZHBrZy1kZWIvZXh0cmFjdC5jOjIwNQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic2tpcHBlZCBtZW1iZXIgZGF0YSBmcm9tICVzIgorbXNnaWQgInNraXBwZWQgYXJjaGl2ZSBtZW1iZXIgZGF0YSBmcm9tICVzIgorbXNnc3RyICLhnpThnrbhnpPigIvhnprhn4bhnpvhnoTigIvhnpHhnrfhnpPhn5LhnpPhnpPhn5DhnpnigIvhnp/hnpjhnrbhnofhnrfhnoDigIvhnpbhnrggJXMiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxOTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgY29udGFpbnMgdW51bmRlcnN0b29kIGRhdGEgbWVtYmVyICUuKnMsIGdpdmluZyB1cCIKK21zZ2lkICJhcmNoaXZlICclLjI1MHMnIGNvbnRhaW5zIG5vdCB1bmRlcnN0b29kIGRhdGEgbWVtYmVyICUuKnMsIGdpdmluZyB1cCIKK21zZ3N0ciAi4Z6v4Z6A4Z6f4Z624Z6aIGAlLjI1MHMnIOGemOGetuGek+KAi+Gen+GemOGetuGeh+Get+GegOKAi+GekeGet+Gek+GfkuGek+Gek+GfkOGemeKAi+GeiuGfguGem+KAi+GemOGet+Gek+KAi+GemeGem+GfiyAlLipzLCDhnpThn4Thn4fhnpThnoThn4siCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxOTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgY29udGFpbnMgdHdvIGNvbnRyb2wgbWVtYmVycywgZ2l2aW5nIHVwIgorbXNnaWQgImFyY2hpdmUgJyUuMjUwcycgY29udGFpbnMgdHdvIGNvbnRyb2wgbWVtYmVycywgZ2l2aW5nIHVwIgorbXNnc3RyICLhnq/hnoDhnp/hnrbhnpogYCUuMjUwcycg4Z6Y4Z624Z6T4oCL4Z6f4Z6Y4Z624Z6H4Z634Z6A4oCL4Z6c4Z6P4Z+S4Z6Q4Z674oCL4oCL4Z6U4Z6J4Z+S4Z6H4Z624oCL4Z6W4Z644Z6aIOGelOGfhOGfh+GelOGehOGfiyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIxNAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiBuZXcgZGViaWFuIHBhY2thZ2UsIHZlcnNpb24gJXMuXG4iCisjfCAiIHNpemUgJWxkIGJ5dGVzOiBjb250cm9sIGFyY2hpdmU9ICV6aSBieXRlcy5cbiIKK21zZ2lkICIiCisiIG5ldyBkZWJpYW4gcGFja2FnZSwgdmVyc2lvbiAlcy5cbiIKKyIgc2l6ZSAlamQgYnl0ZXM6IGNvbnRyb2wgYXJjaGl2ZT0gJWpkIGJ5dGVzLlxuIgorbXNnc3RyICIiCisiIOGegOGeieGfkuGeheGelOGfi+GeiuGfgeGelOGfgOGek+GekOGfkuGemOGeuCDhnoDhn4bhno7hn4IgJXPCoOGflFxuIgorIiDhnpHhn4bhnqDhn4YgJWxkIOGelOGfg8Kg4Z+WIOGelOGfkOGejuGfkuGejuGen+GetuGemuGenOGej+GfkuGekOGeu+GelOGeieGfkuGeh+Getj0gJXppIGJ5dGVzwqDhn5RcbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIzMgorbXNnaWQgImFyY2hpdmUgY29udHJvbCBtZW1iZXIgc2l6ZSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjM1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJhcmNoaXZlIGhhcyBtYWxmb3JtYXR0ZWQgY29udHJvbCBsZW5ndGggYCVzJyIKK21zZ2lkICJhcmNoaXZlIGhhcyBtYWxmb3JtYXR0ZWQgY29udHJvbCBtZW1iZXIgc2l6ZSAnJXMnIgorbXNnc3RyICLhnpThn5Dhno7hn5Lhno7hnp/hnrbhnprigIvigIvhnpjhnrbhnpPigIvhnpThn5Lhnprhnpzhn4LhnoTigIvhnpzhno/hn5LhnpDhnrvhnpThnonhn5LhnofhnrbigIsgbWFsZm9ybWF0dGVkIGAlcyciCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNDIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInNraXBwZWQgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ2lkICJza2lwcGVkIGFyY2hpdmUgY29udHJvbCBtZW1iZXIgZGF0YSBmcm9tICVzIgorbXNnc3RyICLhnpThnrbhnpPigIvhnprhn4bhnpvhnoTigIvhnpHhnrfhnpPhn5LhnpPhnpPhn5DhnpnigIvhnp/hnpjhnrbhnofhnrfhnoDigIvhnpbhnrggJXMiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNDYKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIgb2xkIGRlYmlhbiBwYWNrYWdlLCB2ZXJzaW9uICVzLlxuIgorI3wgIiBzaXplICVsZCBieXRlczogY29udHJvbCBhcmNoaXZlPSAlemksIG1haW4gYXJjaGl2ZT0gJWxkLlxuIgorbXNnaWQgIiIKKyIgb2xkIGRlYmlhbiBwYWNrYWdlLCB2ZXJzaW9uICVzLlxuIgorIiBzaXplICVqZCBieXRlczogY29udHJvbCBhcmNoaXZlPSAlamQsIG1haW4gYXJjaGl2ZT0gJWpkLlxuIgorbXNnc3RyICIiCisiIOGegOGeieGfkuGeheGelOGfi+KAi+GeiuGfgeGelOGfgOGek+KAi+GeheGetuGen+GfiyDhnoDhn4bhno7hn4IgJXPCoOGflFxuIgorIiDhnpHhn4bhnqDhn4YgJWxkIOGelOGfg8Kg4Z+WIOGelOGfkOGejuGfkuGejuGen+GetuGemuKAi+GenOGej+GfkuGekOGeu+GelOGeieGfkuGeh+Getj0gJXppLCBtYWluIGFyY2hpdmU9ICVsZMKg4Z+UXG4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2ctZGViOiBmaWxlIGxvb2tzIGxpa2UgaXQgbWlnaHQgYmUgYW4gYXJjaGl2ZSB3aGljaCBoYXMgYmVlblxuIgorImRwa2ctZGViOiAgICBjb3JydXB0ZWQgYnkgYmVpbmcgZG93bmxvYWRlZCBpbiBBU0NJSSBtb2RlXG4iCittc2dzdHIgIiIKKyJkcGtnLWRlYsKg4Z+WIOGer+GegOGen+GetuGemuKAi+GemOGevuGem+KAi+GekeGfhSDhnqLhnrbhnoXigIvhnpHhnrvhnoDigIvhnpzhnrbigIvhnofhnrbigIvhnpThn5Dhno7hn5Lhno7hnp/hnrbhnpog4Z6K4Z+C4Z6b4oCL4Z6P4Z+S4Z6a4Z684Z6c4oCL4Z6U4Z624Z6TXG4iCisiZHBrZy1kZWI6ICAgIOGekuGfkuGenOGevuGesuGfkuGemeKAi+GegeGevOGeheKAi+GeiuGfhOGemeKAi+GegOGfhuGeluGeu+GehOKAi+GekeGetuGeieGemeGegOKAi+Geh+GetuKAi+GemuGelOGfgOGelCBBU0NJSVxuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjU5CisjLCBjLWZvcm1hdAorbXNnaWQgImAlLjI1NXMnIGlzIG5vdCBhIGRlYmlhbiBmb3JtYXQgYXJjaGl2ZSIKK21zZ3N0ciAiYCUuMjU1cycg4Z6Y4Z634Z6T4Z6Y4Z+C4Z6T4oCL4Z6H4Z624oCL4Z6U4Z+Q4Z6O4Z+S4Z6O4Z6f4Z624Z6a4oCL4Z6R4Z+S4Z6a4Z6E4Z+L4Z6R4Z+S4Z6a4Z624Z6Z4oCL4Z6a4Z6U4Z6f4Z+L4oCL4Z6K4Z+B4Z6U4Z+A4Z6TIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjY2Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIHRvIHBpcGUgaW4gY29weSIKK21zZ3N0ciAi4Z6U4Z624Z6T4oCL4Z6U4Z6a4Z624Z6H4Z+Q4Z6Z4oCL4Z6A4Z+S4Z6T4Z674Z6E4oCL4Z6A4Z624Z6a4oCL4Z6f4Z6a4Z6f4Z+B4Z6a4oCL4Z6R4Z+F4oCL4Z6U4Z+G4Z6W4Z6E4Z+L4oCL4Z6H4Z624oCL4Z6A4Z624Z6a4oCL4Z6F4Z6Y4Z+S4Z6b4Z6EIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjY4Cittc2dpZCAiZmFpbGVkIHRvIGNsb3NlIHBpcGUgaW4gY29weSIKK21zZ3N0ciAi4Z6U4Z624Z6T4oCL4Z6U4Z6a4Z624Z6H4Z+Q4Z6Z4oCL4Z6A4Z+S4Z6T4Z674Z6E4oCL4Z6A4Z624Z6a4oCL4Z6U4Z634Z6R4oCL4Z6U4Z+G4Z6W4Z6E4Z+L4Z6H4Z624oCL4Z6A4Z624Z6a4oCL4Z6F4Z6Y4Z+S4Z6b4Z6EIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6Mjg0Cittc2dpZCAiZGF0YSIKK21zZ3N0ciAi4Z6R4Z634Z6T4Z+S4Z6T4Z6T4Z+Q4Z6ZIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzA3Cittc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIGRpcmVjdG9yeSIKK21zZ3N0ciAi4Z6U4Z624Z6T4oCL4Z6U4Z6a4Z624Z6H4Z+Q4Z6ZIGNoZGlyIOGekeGfheKAi+GekOGejyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMxMAorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgZGlyZWN0b3J5IgorbXNnc3RyICLhnpThnrbhnpPigIvhnpThnprhnrbhnofhn5DhnpnigIvhnoDhn5LhnpPhnrvhnoTigIvhnoDhnrbhnprigIvhnpThnoThn5LhnoDhnr7hno/igIvhnpDhno8iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozMTIKK21zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gZGlyZWN0b3J5IGFmdGVyIGNyZWF0aW5nIGl0IgorbXNnc3RyICLhnpThnrbhnpPigIvhnpThnprhnrbhnofhn5DhnpkgY2hkaXIg4Z6R4Z+F4oCL4Z6Q4Z6PIOGelOGek+GfkuGekeGetuGelOGfi+KAi+GeluGeuOKAi+GelOGehOGfkuGegOGevuGej+KAi+GenOGetiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMyMworIywgZnV6enkKK21zZ2lkICI8ZGVjb21wcmVzcz4iCittc2dzdHIgIiVzwqDhn5Yg4Z6Y4Z634Z6T4oCL4Z6U4Z6E4Z+S4Z6g4Z624Z6U4Z+L4oCLIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzI1CisjLCBmdXp6eQorbXNnaWQgInBhc3RlIgorbXNnc3RyICLhnpThnrbhnpPhnqDhnrvhnoVcbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjM0MiBkcGtnLWRlYi9leHRyYWN0LmM6MzYzIGRwa2ctZGViL2V4dHJhY3QuYzo0MDIKKyM6IGRwa2ctZGViL2luZm8uYzo3NworIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGEgLmRlYiBmaWxlbmFtZSBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyDhno/hn5LhnprhnrzhnpzhnoDhnrbhnprigIvhnqLhnrbhnoLhnrvhnpnhnpjhn4nhnoThn4vigIvhnojhn5Lhnpjhn4Thn4figIvhnq/hnoDhnp/hnrbhnpogLmRlYiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjM0NyBkcGtnLWRlYi9leHRyYWN0LmM6NDA2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyItLSVzIG5lZWRzIGEgdGFyZ2V0IGRpcmVjdG9yeS5cbiIKKyJQZXJoYXBzIHlvdSBzaG91bGQgYmUgdXNpbmcgZHBrZyAtLWluc3RhbGwgPyIKK21zZ3N0ciAiIgorIi0tJXMg4Z6P4Z+S4Z6a4Z684Z6c4Z6A4Z624Z6a4oCL4Z6Q4Z6P4oCL4Z6C4Z+E4Z6b4Z6K4Z+F4oCL4Z6Y4Z694Z6ZwqDhn5RcbiIKKyLhnpThn5LhnprhnqDhn4LhnpvigIvhnofhnrbigIvhnqLhn5LhnpPhnoDigIvhnoDhn4bhnpbhnrvhnoTigIvhnpThn5Lhnprhnr4gZHBrZyAtLWluc3RhbGwgPyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjM1MCBkcGtnLWRlYi9leHRyYWN0LmM6NDEwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgYXQgbW9zdCB0d28gYXJndW1lbnRzICguZGViIGFuZCBkaXJlY3RvcnkpIgorbXNnc3RyICItLSVzIOGej+GfkuGemuGevOGenOGegOGetuGemuKAi+GeouGetuGeguGeu+GemeGemOGfieGehOGfi+KAi+GeheGfkuGemuGevuGek+KAi+GelOGfhuGeleGeu+GejyAoLmRlYiDhnpPhnrfhnoTigIvhnpDhno8pIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzY1CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgb25seSBvbmUgYXJndW1lbnQgKC5kZWIgZmlsZW5hbWUpIgorbXNnc3RyICItLSVzIOGej+GfkuGemuGevOGenOGegOGetuGemuKAi+Gej+GfguKAi+GeouGetuGeguGeu+GemeGemOGfieGehOGfi+KAi+Gej+GfguKAi+GemOGeveGemeKAi+GelOGfieGeu+GejuGfkuGejuGfhOGfhyAo4Z6I4Z+S4Z6Y4Z+E4Z+H4oCL4Z6v4Z6A4Z6f4Z624Z6aIC5kZWIpIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6NjMKK21zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gYC8nIGZvciBjbGVhbnVwIgorbXNnc3RyICLhnpThnrbhnpPigIvhnpThnprhnrbhnofhn5DhnpnigIvhnpHhn4UgY2hkaXIgYC8nIOGen+GemOGfkuGemuGetuGelOGfi+KAi+Gen+GemOGfkuGeouGetuGejyIKKworIzogZHBrZy1kZWIvaW5mby5jOjEwNgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiY2Fubm90IHN0YXQgb2xkIG5hbWUgYCVzJzogJXMiCittc2dpZCAiY29udHJvbCBmaWxlICclcyciCittc2dzdHIgIuGemOGet+Gek+KAi+GeouGetuGeheKAi+GeheGetuGelOGfi+KAi+GeleGfkuGeiuGevuGemOKAi+GeiOGfkuGemOGfhOGfh+KAi+GeheGetuGen+GfiyBgJXMnwqDhn5YgJXMiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZy1kZWI6IGAlLjI1NXMnIGNvbnRhaW5zIG5vIGNvbnRyb2wgY29tcG9uZW50IGAlLjI1NXMnXG4iCittc2dzdHIgImRwa2ctZGViwqDhn5YgYCUuMjU1cycg4Z6C4Z+S4Z6Y4Z624Z6T4oCL4Z6f4Z6Y4Z624Z6f4Z6X4Z624Z6C4oCL4Z6c4Z6P4Z+S4Z6Q4Z674Z6U4Z6J4Z+S4Z6H4Z624oCLIGAlLjI1NXMnXG4iCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAib3BlbiBjb21wb25lbnQgYCUuMjU1cycgKGluICUuMjU1cykgZmFpbGVkIGluIGFuIHVuZXhwZWN0ZWQgd2F5IgorbXNnc3RyICLhnpThnr7hnoDigIvhnp/hnpjhnrbhnp/hnpfhnrbhnoLigItgJS4yNTVzJyAo4Z6T4Z+FICUuMjU1cynigIsg4Z6U4Z624Z6T4Z6U4Z6a4Z624Z6H4Z+Q4Z6Z4oCL4Z6P4Z624Z6Y4oCL4Z6c4Z634Z6S4Z644oCL4Z6K4Z+C4Z6b4Z6Y4Z634Z6T4oCL4Z6U4Z624Z6T4oCL4Z6a4Z+G4Z6W4Z654Z6E4oCL4Z6R4Z674Z6AIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTIxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJPbmUgcmVxdWVzdGVkIGNvbnRyb2wgY29tcG9uZW50IGlzIG1pc3NpbmciCittc2dpZCAiJWQgcmVxdWVzdGVkIGNvbnRyb2wgY29tcG9uZW50IGlzIG1pc3NpbmciCittc2dpZF9wbHVyYWwgIiVkIHJlcXVlc3RlZCBjb250cm9sIGNvbXBvbmVudHMgYXJlIG1pc3NpbmciCittc2dzdHJbMF0gIuGen+GemOGetuGen+Gel+GetuGeguKAi+GenOGej+GfkuGekOGeu+GelOGeieGfkuGeh+GetuKAi+GeiuGfguGem+KAi+GelOGetuGek+KAi+Gen+GfkuGek+GevuKAi+GemOGeveGemeKAi+GelOGetuGek+KAi+GelOGetuGej+GfiyIKK21zZ3N0clsxXSAi4Z6f4Z6Y4Z624Z6f4Z6X4Z624Z6C4oCL4Z6c4Z6P4Z+S4Z6Q4Z674Z6U4Z6J4Z+S4Z6H4Z624oCL4Z6K4Z+C4Z6b4oCL4Z6U4Z624Z6T4oCL4Z6f4Z+S4Z6T4Z6+4oCL4Z6Y4Z694Z6Z4oCL4Z6U4Z624Z6T4oCL4Z6U4Z624Z6P4Z+LIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTM5IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo0MjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHNjYW4gZGlyZWN0b3J5IGAlLjI1NXMnIgorbXNnc3RyICLhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnp/hn5LhnoDhn4HhnpPigIvhnpDhno8gYCUuMjU1cyciCisKKyM6IGRwa2ctZGViL2luZm8uYzoxNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHN0YXQgYCUuMjU1cycgKGluIGAlLjI1NXMnKSIKK21zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6F4Z624Z6U4Z+L4Z6V4Z+S4Z6K4Z6+4Z6YIGAlLjI1NXMnICjhnpPhn4XigIvhnoDhn5LhnpPhnrvhnoQgYCUuMjU1cycpIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTUyCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBvcGVuIGAlLjI1NXMnIChpbiBgJS4yNTVzJykiCittc2dzdHIgIuGemOGet+Gek+KAi+GeouGetuGeheKAi+GelOGevuGegCBgJS4yNTVzJyAo4Z6T4Z+F4oCL4Z6A4Z+S4Z6T4Z674Z6EIGAlLjI1NXMnKSIKKworIzogZHBrZy1kZWIvaW5mby5jOjE2NyBkcGtnLWRlYi9pbmZvLmM6MTg1IGRwa2ctZGViL2luZm8uYzoxOTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgYCUuMjU1cycgKGluIGAlLjI1NXMnKSIKK21zZ3N0ciAi4Z6U4Z624Z6T4oCL4Z6U4Z6a4Z624Z6H4Z+Q4Z6Z4oCL4Z6A4Z+S4Z6T4Z674Z6E4oCL4Z6A4Z624Z6a4oCL4Z6i4Z624Z6TIGAlLjI1NXMnICjhnpPhn4XigIvhnoDhn5LhnpPhnrvhnoQgYCUuMjU1cycpIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTcwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIgJTdsZCBieXRlcywgJTVkIGxpbmVzICAgJWMgICUtMjAuMTI3cyAlLjEyN3NcbiIKK21zZ2lkICIgJTdqZCBieXRlcywgJTVkIGxpbmVzICAgJWMgICUtMjAuMTI3cyAlLjEyN3NcbiIKK21zZ3N0ciAiICU3bGQg4Z6U4Z+DICU1ZCDhnpThnpPhn5LhnpHhnrbhno/hn4sgICAlYyAgJS0yMC4xMjdzICUuMTI3c1xuIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTc0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgICAgbm90IGEgcGxhaW4gZmlsZSAgICAgICAgICAlLjI1NXNcbiIKK21zZ3N0ciAiICAgICDhnpjhnrfhnpPhnpjhn4LigIvhnpPhnofhnrbigIvhnq/hnoDhnp/hnrbhnprigIvhnqLhno/hn5LhnpDhnpThnpHigIvhnpLhnpjhn5Lhnpjhno/hnrYgICAgICAgICAgJS4yNTVzXG4iCisKKyM6IGRwa2ctZGViL2luZm8uYzoxODYKK21zZ2lkICIobm8gYGNvbnRyb2wnIGZpbGUgaW4gY29udHJvbCBhcmNoaXZlISlcbiIKK21zZ3N0ciAiKOGeguGfkuGemOGetuGek+KAi+Ger+GegOGen+GetuGemiBg4Z6c4Z6P4Z+S4Z6Q4Z674Z6U4Z6J4Z+S4Z6H4Z62JyDhnpPhn4XigIvhnoDhn5LhnpPhnrvhnoTigIvhnpThn5Dhno7hn5Lhno7hnp/hnrbhnprigIvhnpzhno/hn5LhnpDhnrvhnpThnonhn5LhnofhnrbCoCEpXG4iCisKKyM6IGRwa2ctZGViL2luZm8uYzoyMjIKK21zZ2lkICJjb3VsZCBub3Qgb3BlbiB0aGUgYGNvbnRyb2wnIGNvbXBvbmVudCIKK21zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6U4Z6+4Z6A4oCL4Z6f4Z6Y4Z624Z6f4Z6X4Z624Z6CIGDhnpzhno/hn5LhnpDhnrvhnpThnonhn5LhnofhnrYnIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MjYxCittc2dpZCAiZmFpbGVkIGR1cmluZyByZWFkIG9mIGBjb250cm9sJyBjb21wb25lbnQiCittc2dzdHIgIuGelOGetuGek+KAi+GelOGemuGetuGeh+GfkOGemeKAi+GegOGfhuGeoeGeu+GehOKAi+GeluGfgeGem+KAi+GeouGetuGek+KAi+Gen+GemOGetuGen+Gel+GetuGegiBg4Z6c4Z6P4Z+S4Z6Q4Z674Z6U4Z6J4Z+S4Z6H4Z62JyIKKworIzogZHBrZy1kZWIvaW5mby5jOjI2MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyB0aGUgJyVzJyBjb21wb25lbnQiCittc2dzdHIgIuGegOGfhuGeoOGeu+Gen+KAi+GegOGfkuGek+Geu+GehOKAi+GegOGetuGemuKAi+GelOGet+GekeKAi+GelOGfhuGeluGehOGfi+KAi+GemuGelOGen+Gfi+KAi+GegOGetuGemuKAi+GemuGegCIKKworIzogZHBrZy1kZWIvaW5mby5jOjI3OAorbXNnaWQgIkVycm9yIGluIGZvcm1hdCIKK21zZ3N0ciAi4Z6A4Z+G4Z6g4Z674Z6f4oCL4Z6A4Z+S4Z6T4Z674Z6E4oCL4Z6R4Z+S4Z6a4Z6E4Z+L4Z6R4Z+S4Z6a4Z624Z6ZIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MzI4Cittc2dpZCAiLS1jb250ZW50cyB0YWtlcyBleGFjdGx5IG9uZSBhcmd1bWVudCIKK21zZ3N0ciAiLS1jb250ZW50cyDhno/hn5LhnprhnrzhnpzhnoDhnrbhnprigIvhnqLhnrbhnoLhnrvhnpnhnpjhn4nhnoThn4vigIvhnofhnrbhnoDhn4vhnpvhnrbhnoDhn4vigIvhnpjhnr3hnpkiCisKKyM6IGRwa2ctZGViL21haW4uYzo1NAorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIGFyY2hpdmUgYmFja2VuZCB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICLhnpThn5Dhno7hn5Lhno7hnp/hnrbhnprigIvhnoDhnonhn5LhnoXhnpThn4sgYCVzJyDhnprhnpThnp/hn4vigIvhnorhn4HhnpThn4DhnpMg4Z6A4Z+G4Z6O4Z+C4oCL4Z6A4Z6Y4Z+S4Z6Y4Z6c4Z634Z6S4Z644oCL4Z6B4Z624Z6E4oCL4Z6A4Z+S4Z6a4Z+E4Z6ZICVzwqDhn5RcbiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjczCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiQ29tbWFuZHM6XG4iCisjfCAiICAtYnwtLWJ1aWxkIDxkaXJlY3Rvcnk+IFs8ZGViPl0gICBCdWlsZCBhbiBhcmNoaXZlLlxuIgorI3wgIiAgLWN8LS1jb250ZW50cyA8ZGViPiAgICAgICAgICAgICAgTGlzdCBjb250ZW50cy5cbiIKKyN8ICIgIC1JfC0taW5mbyA8ZGViPiBbPGNmaWxlPiAuLi5dICAgIFNob3cgaW5mbyB0byBzdGRvdXQuXG4iCisjfCAiICAtV3wtLXNob3cgPGRlYj4gICAgICAgICAgICAgICAgICBTaG93IGluZm9ybWF0aW9uIG9uIHBhY2thZ2UocylcbiIKKyN8ICIgIC1mfC0tZmllbGQgPGRlYj4gWzxjZmllbGQ+IC4uLl0gIFNob3cgZmllbGQocykgdG8gc3Rkb3V0LlxuIgorI3wgIiAgLWV8LS1jb250cm9sIDxkZWI+IFs8ZGlyZWN0b3J5Pl0gRXh0cmFjdCBjb250cm9sIGluZm8uXG4iCisjfCAiICAteHwtLWV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gICBFeHRyYWN0IGZpbGVzLlxuIgorI3wgIiAgLVh8LS12ZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PiAgRXh0cmFjdCAmIGxpc3QgZmlsZXMuXG4iCisjfCAiICAtLWZzeXMtdGFyZmlsZSA8ZGViPiAgICAgICAgICAgICBPdXRwdXQgZmlsZXN5c3RlbSB0YXJmaWxlLlxuIgorI3wgIlxuIgorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1ifC0tYnVpbGQgPGRpcmVjdG9yeT4gWzxkZWI+XSAgIEJ1aWxkIGFuIGFyY2hpdmUuXG4iCisiICAtY3wtLWNvbnRlbnRzIDxkZWI+ICAgICAgICAgICAgICBMaXN0IGNvbnRlbnRzLlxuIgorIiAgLUl8LS1pbmZvIDxkZWI+IFs8Y2ZpbGU+IC4uLl0gICAgU2hvdyBpbmZvIHRvIHN0ZG91dC5cbiIKKyIgIC1XfC0tc2hvdyA8ZGViPiAgICAgICAgICAgICAgICAgIFNob3cgaW5mb3JtYXRpb24gb24gcGFja2FnZShzKVxuIgorIiAgLWZ8LS1maWVsZCA8ZGViPiBbPGNmaWVsZD4gLi4uXSAgU2hvdyBmaWVsZChzKSB0byBzdGRvdXQuXG4iCisiICAtZXwtLWNvbnRyb2wgPGRlYj4gWzxkaXJlY3Rvcnk+XSBFeHRyYWN0IGNvbnRyb2wgaW5mby5cbiIKKyIgIC14fC0tZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PiAgIEV4dHJhY3QgZmlsZXMuXG4iCisiICAtWHwtLXZleHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+ICBFeHRyYWN0ICYgbGlzdCBmaWxlcy5cbiIKKyIgIC1SfC0tcmF3LWV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEV4dHJhY3QgY29udHJvbCBpbmZvIGFuZCBmaWxlcy5cbiIKKyIgIC0tZnN5cy10YXJmaWxlIDxkZWI+ICAgICAgICAgICAgIE91dHB1dCBmaWxlc3lzdGVtIHRhcmZpbGUuXG4iCisiXG4iCittc2dzdHIgIiIKKyLhnpbhnrbhnoDhn5LhnpnhnpThnonhn5LhnofhnrbCoOGfllxuIgorIiAgLWJ8LS1idWlsZCA84Z6Q4Z6PPiBbPGRlYj5dICAg4Z6f4Z+S4Z6Q4Z624Z6U4Z6T4Z624Z6U4Z+Q4Z6O4Z+S4Z6O4Z6f4Z624Z6a4Z6Y4Z694Z6ZwqDhn5RcbiIKKyIgIC1jfC0tY29udGVudHMgPGRlYj4gICAgICAgICAgICAgIOGemuGetuGemeGemOGetuGej+Get+GegOGetsKg4Z+UXG4iCisiICAtSXwtLWluZm8gPGRlYj4gWzxjZmlsZT4gLi4uXSAgICDhnpThnoThn5LhnqDhnrbhnonhnpbhn5Dhno/hn4zhnpjhnrbhnpPhnpHhn4Ugc3Rkb3V0wqDhn5RcbiIKKyIgIC1XfC0tc2hvdyA8ZGViPiAgICAgICAgICAgICAgICAgIOGelOGehOGfkuGeoOGetuGeieGeluGfkOGej+GfjOGemOGetuGek+GeouGfhuGeluGeuOGegOGeieGfkuGeheGelOGfi1xuIgorIiAgLWZ8LS1maWVsZCA8ZGViPiBbPGNmaWVsZD4gLi4uXSAg4Z6U4Z6E4Z+S4Z6g4Z624Z6J4Z6c4Z624Z6b4Z6R4Z+FIHN0ZG91dMKg4Z+UXG4iCisiICAtZXwtLWNvbnRyb2wgPGRlYj4gWzxkaXJlY3Rvcnk+XSDhnp/hn5LhnprhnoThn4vhnpbhn5Dhno/hn4zhnpjhnrbhnpPhnpzhno/hn5LhnpDhnrvhnpThnonhn5LhnofhnrbhnoXhn4HhnonCoOGflFxuIgorIiAgLXh8LS1leHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+ICAg4Z6f4Z+S4Z6a4Z6E4Z+L4Z6v4Z6A4Z6f4Z624Z6a4Z6F4Z+B4Z6JwqDhn5RcbiIKKyIgIC1YfC0tdmV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gIOGen+GfkuGemuGehOGfi+Ger+GegOGen+GetuGemuGelOGeieGfkuGeh+GeuOGeheGfgeGeicKg4Z+UXG4iCisiICAtLWZzeXMtdGFyZmlsZSA8ZGViPiAgICAgICAgICAgICDhnpvhnpHhn5LhnpLhnpXhnpvhnpThn5Lhnprhnpbhn5DhnpPhn5LhnpLhnq/hnoDhnp/hnrbhnpogdGFyZmlsZcKg4Z+UXG4iCisiXG4iCisKKyM6IGRwa2ctZGViL21haW4uYzo5MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiPGRlYj4gaXMgdGhlIGZpbGVuYW1lIG9mIGEgRGViaWFuIGZvcm1hdCBhcmNoaXZlLlxuIgorIjxjZmlsZT4gaXMgdGhlIG5hbWUgb2YgYW4gYWRtaW5pc3RyYXRpdmUgZmlsZSBjb21wb25lbnQuXG4iCisiPGNmaWVsZD4gaXMgdGhlIG5hbWUgb2YgYSBmaWVsZCBpbiB0aGUgbWFpbiBgY29udHJvbCcgZmlsZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIjxkZWI+IOGeh+GetuGeiOGfkuGemOGfhOGfh+Ger+GegOGen+GetuGemuGemuGelOGen+Gfi+GelOGfkOGejuGfkuGejuGen+GetuGemuGekeGfkuGemuGehOGfi+GekeGfkuGemuGetuGemeGeiuGfgeGelOGfgOGek8Kg4Z+UXG4iCisiPGNmaWxlPiDhnoLhnrrhnofhnrbhnojhn5Lhnpjhn4Thn4fhnprhnpThnp/hn4vhnp/hnpjhnrbhnp/hnpfhnrbhnoLhnq/hnoDhnp/hnrbhnprhnprhnorhn5LhnovhnpThnrbhnpvCoOGflFxuIgorIjxjZmllbGQ+IOGeguGeuuGeh+GetuGeiOGfkuGemOGfhOGfh+GemuGelOGen+Gfi+GenOGetuGem+Gek+GfheGegOGfkuGek+Geu+GehOGer+GegOGen+GetuGemiBg4Z6c4Z6P4Z+S4Z6Q4Z674Z6U4Z6J4Z+S4Z6H4Z62JyDhnpjhn4HCoOGflFxuIgorIlxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6OTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1zaG93Zm9ybWF0PTxmb3JtYXQ+ICAgICAgICAgICAgVXNlIGFsdGVybmF0aXZlIGZvcm1hdCBmb3IgLS1zaG93LlxuIgorIiAgLXYsIC0tdmVyYm9zZSAgICAgICAgICAgICAgICAgICAgRW5hYmxlIHZlcmJvc2Ugb3V0cHV0LlxuIgorIiAgLUQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRW5hYmxlIGRlYnVnZ2luZyBvdXRwdXQuXG4iCisiICAtLW9sZCwgLS1uZXcgICAgICAgICAgICAgICAgICAgICBTZWxlY3QgYXJjaGl2ZSBmb3JtYXQuXG4iCisiICAtLW5vY2hlY2sgICAgICAgICAgICAgICAgICAgICAgICBTdXBwcmVzcyBjb250cm9sIGZpbGUgY2hlY2sgKGJ1aWxkIGJhZFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWNrYWdlcykuXG4iCisiICAteiMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTZXQgdGhlIGNvbXByZXNzaW9uIGxldmVsIHdoZW4gYnVpbGRpbmcuXG4iCisiICAtWjx0eXBlPiAgICAgICAgICAgICAgICAgICAgICAgICBTZXQgdGhlIGNvbXByZXNzaW9uIHR5cGUgdXNlZCB3aGVuICIKKyJidWlsZGluZy5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWxsb3dlZCB0eXBlczogZ3ppcCwgeHosIGJ6aXAyLCBsem1hLCAiCisibm9uZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIuGeh+GemOGfkuGemuGevuGen8Kg4Z+WXG4iCisiICAtLXNob3dmb3JtYXQ9PGZvcm1hdD4gICAgICAgICAgICDhnpThn5Lhnprhnr7igIvhnpHhn5LhnprhnoThn4vhnpHhn5LhnprhnrbhnpnigIvhnofhn4bhnpPhnr3hnp/igIvhnp/hnpjhn5LhnprhnrbhnpThn4sgLS1zaG93wqDhn5RcbiIKKyIgIC1EICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIOGeouGek+Geu+GeieGfkuGeieGetuGej+Gem+GekeGfkuGekuGeleGem+GegOGetuGemuGelOGfhuGelOGetuGej+Gfi+GegOGfhuGeoOGeu+Gen8Kg4Z+UXG4iCisiICAtLW9sZCwgLS1uZXcgICAgICAgICAgICAgICAgICAgICDhnofhn5Lhnprhnr7hnp/hnpHhn5LhnprhnoThn4vhnpHhn5LhnprhnrbhnpnhnpThn5Dhno7hn5Lhno7hnp/hnrbhnprCoOGflFxuIgorIiAgLS1ub2NoZWNrICAgICAgICAgICAgICAgICAgICAgICAg4Z6Y4Z634Z6T4oCL4Z6A4Z624Z6a4oCL4Z6W4Z634Z6T4Z634Z6P4Z+S4Z6Z4Z6Y4Z6+4Z6b4oCL4Z6v4Z6A4Z6f4Z624Z6a4oCL4Z6c4Z6P4Z+S4Z6Q4Z674Z6U4Z6J4Z+S4Z6H4Z62ICjhnp/hn5LhnpDhnrbhnpThnpPhnrbigIvhnoDhnonhn5LhnoXhnpThn4tcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg4Z6Y4Z634Z6T4oCL4Z6b4Z+S4Z6iKcKg4Z+UXG4iCisiICAteiMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDhnoDhn4bhno7hno/hn4vhnoDhnpjhn5Lhnprhnrfhno/hnpThnoThn5LhnqDhnrbhnpThn4vhnpPhn4Xhnpbhn4Hhnpvhnp/hn5LhnpDhnrbhnpThnpPhnrbCoOGflFxuIgorIiAgLVo8dHlwZT4gICAgICAgICAgICAgICAgICAgICAgICAg4Z6A4Z+G4Z6O4Z6P4Z+L4oCL4Z6U4Z+S4Z6a4Z6X4Z+B4Z6R4oCL4Z6U4Z6E4Z+S4Z6g4Z624Z6U4Z+L4oCL4Z6K4Z+C4Z6b4oCL4Z6U4Z624Z6T4oCL4Z6U4Z+S4Z6a4Z6+IOGek+GfheKAi+GeluGfgeGem+KAi+Gen+GfkuGekOGetuGelOGek+GetsKg4Z+UXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIOGej+GemOGfkuGem+Gfg+GeiuGfguGem+GelOGetuGek+GeouGek+Geu+GeieGfkuGeieGetuGej8Kg4Z+WIGd6aXAsIGJ6aXAyLCDhnoLhn5LhnpjhnrbhnpPCoOGflFxuIgorIlxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTIxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJVc2UgYGRwa2cnIHRvIGluc3RhbGwgYW5kIHJlbW92ZSBwYWNrYWdlcyBmcm9tIHlvdXIgc3lzdGVtLCBvclxuIgorImBkc2VsZWN0JyBvciBgYXB0aXR1ZGUnIGZvciB1c2VyLWZyaWVuZGx5IHBhY2thZ2UgbWFuYWdlbWVudC4gIFBhY2thZ2VzXG4iCisidW5wYWNrZWQgdXNpbmcgYGRwa2ctZGViIC0tZXh0cmFjdCcgd2lsbCBiZSBpbmNvcnJlY3RseSBpbnN0YWxsZWQgIVxuIgorbXNnc3RyICIiCisiXG4iCisi4Z6U4Z+S4Z6a4Z6+IGBkcGtnJyDhnorhnr7hnpjhn5LhnpThnrjigIvhnorhn4bhnqHhnr7hnoQg4Z6T4Z634Z6E4oCL4Z6Z4Z6A4oCL4Z6A4Z6J4Z+S4Z6F4Z6U4Z+L4oCL4Z6F4Z+B4Z6J4oCL4Z6W4Z644oCL4Z6U4Z+S4Z6a4Z6W4Z+Q4Z6T4Z+S4Z6S4oCL4Z6a4Z6U4Z6f4Z+L4oCL4Z6i4Z+S4Z6T4Z6AIOGerFxuIgorImBkc2VsZWN0JyDhnqwgYGFwdGl0dWRlJyDhnp/hnpjhn5LhnprhnrbhnpThn4vigIvhnoDhnrbigIvhnprhnoLhn5LhnprhnpThn4vhnoLhn5LhnprhnoTigIvhnoDhnonhn5LhnoXigIvhnpThn4vhnorhn4LhnpvigIvhnqLhn5LhnpPhnoDigIvhnpThn5Lhnprhnr7igIvhnoThnrbhnpnigIvhnp/hn5Lhnprhnr3hnpvigIvhnpjhnr7hnpvCoOGflCAg4Z6A4Z6J4Z+S4Z6F4Z6U4Z+LXG4iCisi4Z6Y4Z634Z6T4oCL4Z6U4Z624Z6T4oCL4Z6W4Z6T4Z+S4Z6b4Z62IOGeiuGfhOGemeKAi+GelOGfkuGemuGeviBgZHBrZy1kZWIgLS1leHRyYWN0JyDhnpPhnrnhnoTigIvhno/hn5LhnprhnrzhnpzigIvhnpThnrbhnpPigIvhnorhn4bhnqHhnr7hnoTigIvhnpjhnrfhnpPigIvhno/hn5Lhnprhnrnhnpjhno/hn5LhnprhnrzhnpwgIVxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTMyCittc2dpZCAiIgorIlR5cGUgZHBrZy1kZWIgLS1oZWxwIGZvciBoZWxwIGFib3V0IG1hbmlwdWxhdGluZyAqLmRlYiBmaWxlcztcbiIKKyJUeXBlIGRwa2cgLS1oZWxwIGZvciBoZWxwIGFib3V0IGluc3RhbGxpbmcgYW5kIGRlaW5zdGFsbGluZyBwYWNrYWdlcy4iCittc2dzdHIgIiIKKyLhnpzhnrbhnpkgZHBrZy1kZWIgLS1oZWxwIOGen+GemOGfkuGemuGetuGelOGfi+KAi+Geh+GetuKAi+Geh+GfhuGek+GeveGemeKAi+GeouGfhuGeluGeuOKAi+GegOGetuGemuKAi+GeguGejuGek+GetuKAi+Ger+GegOGen+GetuGemiAqLmRlYlxuIgorIuGenOGetuGemSBkcGtnIC0taGVscCDhnp/hnpjhn5LhnprhnrbhnpThn4vigIvhnofhnrbigIvhnofhn4bhnpPhnr3hnpnigIvhnqLhn4bhnpbhnrjigIvhnoDhnrbhnprhnorhn4bhnqHhnr7hnoQg4Z6T4Z634Z6E4oCL4Z6Y4Z634Z6T4oCL4Z6K4Z+G4Z6h4Z6+4Z6E4oCL4Z6A4Z6J4Z+S4Z6F4Z6U4Z+LwqDhn5QiCisKKyM6IGRwa2ctZGViL21haW4uYzoxNDgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgaW50ZWdlciBmb3IgLSVjOiAnJS4yNTBzJyIKK21zZ3N0ciAi4Z6F4Z+G4Z6T4Z694Z6T4oCL4Z6C4Z6P4Z+L4oCL4Z6Y4Z634Z6T4oCL4Z6P4Z+S4Z6a4Z654Z6Y4Z6P4Z+S4Z6a4Z684Z6c4oCL4Z6f4Z6Y4Z+S4Z6a4Z624Z6U4Z+LIC0tJXM6IGAlLjI1MHMnIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTUxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGNvbXByZXNzaW9uIGxldmVsIGZvciAtJWM6ICVsZCciCittc2dzdHIgIuGeheGfhuGek+GeveGek+KAi+GeguGej+Gfi+KAi+GemOGet+Gek+KAi+Gej+GfkuGemuGeueGemOGej+GfkuGemuGevOGenOKAi+Gen+GemOGfkuGemuGetuGelOGfiyAtLSVzOiBgJS4yNTBzJyIKKworIzogZHBrZy1kZWIvbWFpbi5jOjE2MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGNvbXByZXNzaW9uIHR5cGUgYCVzJyEiCittc2dzdHIgIuGemOGet+Gek+Gen+GfkuGeguGetuGem+Gfi+KAi+GelOGfkuGemuGel+GfgeGekeKAi+GelOGehOGfkuGeoOGetuGelOGfiyBgJXMnwqAhIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzo1MgorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgZGlnaXQgKGNvZGUgJWQpIGluICVzIgorbXNnc3RyICLhnq/hnoDhnp/hnrbhnpogYCUuMjUwcycg4Z6B4Z684Z6FIC3hno/hnr3hnpvhn4HhnoHhnpjhnrfhnpPhno/hn5Lhnprhnrnhnpjhno/hn5LhnprhnrzhnpwgKOGegOGevOGeiiAlZCkg4Z6T4Z+F4Z6A4Z+S4Z6T4Z674Z6EICVzIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzo2MAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSAlLjI1MHMgbWlzc2luZyIKK21zZ3N0ciAi4Z6v4Z6A4Z6f4Z624Z6aIGAlLjI1MHMnIOGegeGevOGehSAtIOGelOGetuGej+GfiyAlLjI1MHMiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjYzCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIG1pc3NpbmcgbmV3bGluZSBhZnRlciAlLjI1MHMiCittc2dzdHIgIuGer+GegOGen+GetuGemiBgJS4yNTBzJyDhnoHhnrzhnoUgLSDhnpThnrbhno/hn4vigIvhnpThnpPhn5LhnpHhnrbhno/hn4vigIvhnpDhn5LhnpjhnrjigIvhnpThnpPhn5LhnpHhnrbhnpThn4vigIvhnpbhnrggJS4yNTBzIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzo4OSBkcGtnLXNwbGl0L21haW4uYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcmVhZGluZyAlLjI1MHMiCittc2dzdHIgIuGegOGfhuGeoOGeu+Gen+KAi+GegOGfkuGek+Geu+GehOKAi+GegOGetuGemuKAi+GeouGetuGekyAlLjI1MHMiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEwMworIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgbWFnaWMgYXQgZW5kIG9mIGZpcnN0IGhlYWRlciIKK21zZ3N0ciAi4Z6v4Z6A4Z6f4Z624Z6aIGAlLjI1MHMnIOGegeGevOGehSAtIOGemOGek+GfkuGeiuKAi+GeouGetuGeguGemOKAi+GemOGet+Gek+KAi+Gej+GfkuGemuGeueGemOGej+GfkuGemuGevOGenOKAi+Gek+GfheKAi+GeheGeu+GehOKAi+GelOGei+GemOGegOKAi+GekOGetuKAi+GeiuGfhuGelOGevOGehCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTEzCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBwYWRkaW5nIGNoYXJhY3RlciAoY29kZSAlZCkiCittc2dzdHIgIuGer+GegOGen+GetuGemiBgJS4yNTBzJyDhnoHhnrzhnoUgLSDhno/hnr3hnqLhnoDhn5Lhnp/hnprigIvhnoXhnpPhn5Lhnpvhn4Thn4figIvhnpjhnrfhnpPhnpvhn5LhnqIgKOGegOGevOGeiiAlZCkiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjExNworIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBudWxscyBpbiBpbmZvIHNlY3Rpb24iCittc2dzdHIgIuGer+GegOGen+GetuGemiBgJS4yNTBzJyDhnoHhnrzhnoUgLSBudWxscyDhnpPhn4XigIvhnoDhn5LhnpPhnrvhnoTigIvhnpXhn5LhnpPhn4LhnoDigIvhnpbhn5Dhno/hn4zhnpjhnrbhnpMiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyMgorIywgZnV6enkKK21zZ2lkICJmb3JtYXQgdmVyc2lvbiBudW1iZXIiCittc2dzdHIgIuGem+GfgeGegeKAi+GegOGfhuGejuGfguKAiyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgZm9ybWF0IHZlcnNpb24gYCUuMjUwcycgLSB5b3UgbmVlZCBhIG5ld2VyIGRwa2ctc3BsaXQiCittc2dzdHIgIuGer+GegOGen+GetuGemiBgJS4yNTBzJyDhnoLhnrrigIvhnofhnrbigIvhnoDhn4bhno7hn4LigIvhnpHhn5LhnprhnoThn4vhnpHhn5LhnprhnrbhnpkgYCUuMjUwcycgLSDhnqLhn5LhnpPhnoDigIvhno/hn5LhnprhnrzhnpzhnoDhnrbhnprigIvhnoDhnrbhnprigIvhnpThn4bhnpThn4LhnoAgZHBrZyDhnpDhn5LhnpjhnrjigIvhnpjhnr3hnpkiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyNworIywgZnV6enkKK21zZ2lkICJwYWNrYWdlIG5hbWUiCittc2dzdHIgIiAo4Z6A4Z6J4Z+S4Z6F4Z6U4Z+LwqDhn5YgIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMjgKKyMsIGZ1enp5Cittc2dpZCAicGFja2FnZSB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAi4Z6b4Z+B4Z6B4oCL4Z6A4Z+G4Z6O4Z+C4oCLIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMjkKK21zZ2lkICJwYWNrYWdlIGZpbGUgTUQ1IGNoZWNrc3VtIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEzMgorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgTUQ1IGNoZWNrc3VtIGAlLjI1MHMnIgorbXNnc3RyICLhnq/hnoDhnp/hnrbhnpogYCUuMjUwcycg4Z6B4Z684Z6FIC0g4Z6G4Z+B4Z6A4Z6f4Z624Z+GIE1ENSDhnpjhnrfhnpPhnpvhn5LhnqIgYCUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEzNCBkcGtnLXNwbGl0L2luZm8uYzoxMzUKK21zZ2lkICJhcmNoaXZlIHRvdGFsIHNpemUiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTM2IGRwa2ctc3BsaXQvaW5mby5jOjEzNworbXNnaWQgImFyY2hpdmUgcGFydCBvZmZzZXQiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTM5CisjLCBmdXp6eQorbXNnaWQgImFyY2hpdmUgcGFydCBudW1iZXJzIgorbXNnc3RyICLhnpvhn4HhnoHigIvhnoDhn4bhno7hn4LigIsiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE0MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gbm8gc2xhc2ggYmV0d2VlbiBwYXJ0IG51bWJlcnMiCittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gbm8gc2xhc2ggYmV0d2VlbiBhcmNoaXZlIHBhcnQgbnVtYmVycyIKK21zZ3N0ciAi4Z6v4Z6A4Z6f4Z624Z6aIGAlLjI1MHMnIOGegeGevOGehSAtIOGeguGfkuGemOGetuGek+KAi+Gen+GeieGfkuGeieGetiAoLykg4Z6a4Z6c4Z624Z6E4oCL4Z6b4Z+B4oCL4Z6B4Z6V4Z+S4Z6T4Z+C4Z6AIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDUKK21zZ2lkICJudW1iZXIgb2YgYXJjaGl2ZSBwYXJ0cyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBudW1iZXIgb2YgYXJjaGl2ZSBwYXJ0cyIKK21zZ3N0ciAi4Z6v4Z6A4Z6f4Z624Z6aIGAlLjI1MHMnIOGegeGevOGehSAtIOGem+GfgeGegeKAi+GeleGfkuGek+GfguGegOKAi+GemOGet+Gek+Gem+GfkuGeoiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTQ5CisjLCBmdXp6eQorbXNnaWQgImFyY2hpdmUgcGFydHMgbnVtYmVyIgorbXNnc3RyICLhnpvhn4HhnoHigIvhnoDhn4bhno7hn4LigIsiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE1MQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIHBhcnQgbnVtYmVyIgorbXNnaWQgImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBhcmNoaXZlIHBhcnQgbnVtYmVyIgorbXNnc3RyICLhnq/hnoDhnp/hnrbhnpogYCUuMjUwcycg4Z6B4Z684Z6FIC0g4Z6b4Z+B4Z6B4oCL4Z6V4Z+S4Z6T4Z+C4Z6A4oCL4Z6Y4Z634Z6T4Z6b4Z+S4Z6iIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNTcKKyMsIGZ1enp5Cittc2dpZCAicGFja2FnZSBhcmNoaXRlY3R1cmUiCittc2dzdHIgIiAo4Z6A4Z6J4Z+S4Z6F4Z6U4Z+LwqDhn5YgIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIG1hZ2ljIGF0IGVuZCBvZiBzZWNvbmQgaGVhZGVyIgorbXNnc3RyICLhnq/hnoDhnp/hnrbhnpogYCUuMjUwcycg4Z6B4Z684Z6FIC0g4Z6Y4Z6T4Z+S4Z6P4oCL4Z6i4Z624Z6C4Z6Y4Z6T4oCL4Z6Y4Z634Z6T4Z6b4Z+S4Z6i4oCL4Z6T4Z+F4Z6F4Z674Z6E4oCL4Z6U4Z6L4Z6Y4Z6A4Z6Q4Z624oCL4Z6R4Z644Z6W4Z644Z6aIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gc2Vjb25kIG1lbWJlciBpcyBub3QgZGF0YSBtZW1iZXIiCittc2dzdHIgIuGer+GegOGen+GetuGemiBgJS4yNTBzJyDhnoHhnrzhnoUgLSDhnp/hnpjhnrbhnofhnrfhnoDigIvhnpHhnrjhnpbhnrjhnprigIvhnpjhnrfhnpPhnpjhn4LhnpPigIvhnofhnrbigIvhnp/hnpjhnrbhnofhnrfhnoDigIvhnpHhnrfhnpPhn5LhnpPhnpPhn5DhnpkiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE3NAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSB3cm9uZyBudW1iZXIgb2YgcGFydHMgZm9yIHF1b3RlZCBzaXplcyIKK21zZ3N0ciAi4Z6v4Z6A4Z6f4Z624Z6aIGAlLjI1MHMnIOGegeGevOGeheKAiyAtIOGegeGeu+Gen+KAi+Gem+GfgeGegeKAi+Gek+Gfg+KAi+GekeGfhuGeoOGfhuKAi+GeiuGfguGem+KAi+GelOGetuGek+GeiuGegOGen+GfkuGemuGehOGfiyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTc4CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIHNpemUgaXMgd3JvbmcgZm9yIHF1b3RlZCBwYXJ0IG51bWJlciIKK21zZ3N0ciAi4Z6v4Z6A4Z6f4Z624Z6aIGAlLjI1MHMnIOGegeGevOGehSAtIOGegeGeu+Gen+KAi+GekeGfhuGeoOGfhuKAi+Gen+GemOGfkuGemuGetuGelOGfi+Gem+GfgeGegeKAi+GeleGfkuGek+GfguGegOKAi+GeiuGfguGem+KAi+GelOGetuGek+Gen+GfkuGemuGehOGfiyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTg0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmc3RhdCBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuGemOGet+Gek+KAi+GeouGetuGeheKAi+GeheGevOGem+KAi+GekeGfheKAi+Ger+GegOGen+GetuGemuKAi+GeleGfkuGek+GfguGegOKAi+GemuGelOGen+GfiyBmc3RhdCBgJS4yNTBzJyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTg5CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIHRvbyBzaG9ydCIKK21zZ3N0ciAi4Z6v4Z6A4Z6f4Z624Z6aIGAlLjI1MHMnIOGegeGevOGehSAtIOGegeGfkuGem+GeuOGeluGfgeGegCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjAyIGRwa2ctc3BsaXQvaW5mby5jOjI0OQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgb3BlbiBhcmNoaXZlIHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6U4Z6+4Z6A4oCL4Z6v4Z6A4Z6f4Z624Z6a4oCL4Z6V4Z+S4Z6T4Z+C4Z6A4oCL4Z6U4Z+Q4Z6O4Z+S4Z6O4Z6f4Z624Z6aIGAlLjI1MHMnIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBub3QgYW4gYXJjaGl2ZSBwYXJ0IgorbXNnc3RyICLhnq/hnoDhnp/hnrbhnpogYCUuMjUwcycg4Z6Y4Z634Z6T4Z6Y4Z+C4Z6T4oCL4Z6H4Z624oCL4Z6V4Z+S4Z6T4Z+C4Z6A4oCL4Z6U4Z+Q4Z6O4Z+S4Z6O4Z6f4Z624Z6aIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyMDkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIlczpcbiIKKyN8ICIgICAgUGFydCBmb3JtYXQgdmVyc2lvbjogICAgICAgICAgICAlc1xuIgorI3wgIiAgICBQYXJ0IG9mIHBhY2thZ2U6ICAgICAgICAgICAgICAgICVzXG4iCisjfCAiICAgICAgICAuLi4gdmVyc2lvbjogICAgICAgICAgICAgICAgJXNcbiIKKyN8ICIgICAgICAgIC4uLiBNRDUgY2hlY2tzdW06ICAgICAgICAgICAlc1xuIgorI3wgIiAgICAgICAgLi4uIGxlbmd0aDogICAgICAgICAgICAgICAgICVsdSBieXRlc1xuIgorI3wgIiAgICAgICAgLi4uIHNwbGl0IGV2ZXJ5OiAgICAgICAgICAgICVsdSBieXRlc1xuIgorI3wgIiAgICBQYXJ0IG51bWJlcjogICAgICAgICAgICAgICAgICAgICVkLyVkXG4iCisjfCAiICAgIFBhcnQgbGVuZ3RoOiAgICAgICAgICAgICAgICAgICAgJXppIGJ5dGVzXG4iCisjfCAiICAgIFBhcnQgb2Zmc2V0OiAgICAgICAgICAgICAgICAgICAgJWx1IGJ5dGVzXG4iCisjfCAiICAgIFBhcnQgZmlsZSBzaXplICh1c2VkIHBvcnRpb24pOiAgJWx1IGJ5dGVzXG4iCisjfCAiXG4iCittc2dpZCAiIgorIiVzOlxuIgorIiAgICBQYXJ0IGZvcm1hdCB2ZXJzaW9uOiAgICAgICAgICAgICVzXG4iCisiICAgIFBhcnQgb2YgcGFja2FnZTogICAgICAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiB2ZXJzaW9uOiAgICAgICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIGFyY2hpdGVjdHVyZTogICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gTUQ1IGNoZWNrc3VtOiAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiBsZW5ndGg6ICAgICAgICAgICAgICAgICAlamQgYnl0ZXNcbiIKKyIgICAgICAgIC4uLiBzcGxpdCBldmVyeTogICAgICAgICAgICAlamQgYnl0ZXNcbiIKKyIgICAgUGFydCBudW1iZXI6ICAgICAgICAgICAgICAgICAgICAlZC8lZFxuIgorIiAgICBQYXJ0IGxlbmd0aDogICAgICAgICAgICAgICAgICAgICVqZCBieXRlc1xuIgorIiAgICBQYXJ0IG9mZnNldDogICAgICAgICAgICAgICAgICAgICVqZCBieXRlc1xuIgorIiAgICBQYXJ0IGZpbGUgc2l6ZSAodXNlZCBwb3J0aW9uKTogICVqZCBieXRlc1xuIgorIlxuIgorbXNnc3RyICIiCisiJXPCoOGfllxuIgorIiAgICDhnpXhn5LhnpPhn4LhnoDhnoDhn4bhno7hn4LhnpHhn5LhnprhnoThn4vhnpHhn5LhnprhnrbhnpnCoOGfliAgICAgICAgICAgICVzXG4iCisiICAgIOGeleGfkuGek+GfguGegOGegOGeieGfkuGeheGelOGfi8Kg4Z+WICAgICAgICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4g4Z6A4Z+G4Z6O4Z+CwqDhn5YgICAgICAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiDhnobhn4HhnoDhnp/hnrbhn4YgTUQ1wqDhn5YgICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4g4Z6U4Z+S4Z6a4Z6c4Z+C4Z6EwqDhn5YgICAgICAgICAgICAgICAgICVsdSDhnpThn4NcbiIKKyIgICAgICAgIC4uLiDhnpThn4bhnpThn4LhnoDhnprhn4DhnoThnprhnrbhnpvhn4vCoOGfliAgICAgICAgICAgICVsdSDhnpThn4NcbiIKKyIgICAg4Z6V4Z+S4Z6T4Z+C4Z6A4Z6b4Z+B4Z6BwqDhn5YgICAgICAgICAgICAgICAgICAgICVkLyVkXG4iCisiICAgIOGeleGfkuGek+GfguGegOGelOGfkuGemuGenOGfguGehMKg4Z+WICAgICAgICAgICAgICAgICAgICAlemkg4Z6U4Z+DXG4iCisiICAgIOGeleGfkuGek+GfguGegOGeouGeu+GeoOGfkuGenOGen+Get+Gej8Kg4Z+WICAgICAgICAgICAgICAgICAgICAlbHUg4Z6U4Z+DXG4iCisiICAgIOGeleGfkuGek+GfguGegOGekeGfhuGeoOGfhuGer+GegOGen+GetuGemiAo4Z6V4Z+S4Z6T4Z+C4Z6A4Z6K4Z+C4Z6b4Z6U4Z624Z6T4Z6U4Z+S4Z6a4Z6+KcKg4Z+WICAlbHUg4Z6U4Z+DXG4iCisiXG4iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjIyNQorIywgZnV6enkKKyN8IG1zZ2lkICI8dW5rbm93bj4iCittc2djdHh0ICJhcmNoaXRlY3R1cmUiCittc2dpZCAiPHVua25vd24+IgorbXNnc3RyICI84Z6Y4Z634Z6T4Z6f4Z+S4Z6C4Z624Z6b4Z+L4oCLPiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjQ0IGRwa2ctc3BsaXQvam9pbi5jOjEwNQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiLS0lcyByZXF1aXJlcyBvbmUgb3IgbW9yZSBwYXJ0IGZpbGUgYXJndW1lbnRzIgorbXNnc3RyICItLWluZm8g4Z6P4Z+S4Z6a4Z684Z6c4Z6A4Z624Z6a4oCL4Z6i4Z624Z6C4Z674Z6Z4Z6Y4Z+J4Z6E4Z+L4oCL4Z6V4Z+S4Z6T4Z+C4Z6A4oCL4Z6v4Z6A4Z6f4Z624Z6a4oCL4Z6Y4Z694Z6ZIOGerOKAi+GeheGfkuGemuGevuGekyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjU1CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCVzJyBpcyBub3QgYW4gYXJjaGl2ZSBwYXJ0XG4iCittc2dzdHIgIuGer+GegOGen+GetuGemiBgJXMnIOGemOGet+Gek+GemOGfguGek+KAi+Geh+GetuKAi+GeleGfkuGek+GfguGegOKAi+GelOGfkOGejuGfkuGejuGen+GetuGemlxuIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo0NAorIywgYy1mb3JtYXQKK21zZ2lkICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0OiAiCittc2dpZF9wbHVyYWwgIlB1dHRpbmcgcGFja2FnZSAlcyB0b2dldGhlciBmcm9tICVkIHBhcnRzOiAiCittc2dzdHJbMF0gIiIKK21zZ3N0clsxXSAiIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBvdXRwdXQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6U4Z6+4Z6A4oCL4Z6v4Z6A4Z6f4Z624Z6a4oCL4Z6b4Z6R4Z+S4Z6S4Z6V4Z6bIGAlLjI1MHMnIOGelOGetuGek+KAi+GekeGfgSIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIChyZSlvcGVuIGlucHV0IHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624oCL4Z6F4Z6U4Z6+4Z6AL+GelOGevuGegOKAi+GeleGfkuGek+GfguGegOKAi+Ger+GegOGen+GetuGemiBgJS4yNTBzJyDhnqHhnr7hnoTigIvhnpzhnrfhnonigIvhnpThnrbhnpPigIvhnpHhn4EiCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjU4CisjLCBmdXp6eQorI3wgbXNnaWQgIlNraXBwaW5nIGRlc2VsZWN0ZWQgcGFja2FnZSAlcy5cbiIKK21zZ2lkICJza2lwcGluZyBzcGxpdCBwYWNrYWdlIGhlYWRlciIKK21zZ3N0ciAi4oCL4Z6a4Z+G4Z6b4Z6E4oCL4Z6A4Z6J4Z+S4Z6F4Z6U4Z+L4oCL4Z6K4Z+C4Z6b4oCL4Z6Y4Z634Z6T4oCL4Z6U4Z624Z6T4oCL4Z6H4Z+S4Z6a4Z6+4Z6f4oCLICVzLlxuIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1OQorIywgZnV6enkKKyN8IG1zZ2lkICJtaXNzaW5nIHBhY2thZ2UiCittc2dpZCAic3BsaXQgcGFja2FnZSBwYXJ0IgorbXNnc3RyICLhnpThnrbhno/hn4vigIvhnoDhnonhn5LhnoXhnpThn4siCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjY5IGRwa2ctc3BsaXQvc3BsaXQuYzoyMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZG9uZVxuIgorbXNnc3RyICLhnpLhn5Lhnpzhnr7hnprhnr3hnoXigItcbiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZXMgYCUuMjUwcycgYW5kIGAlLjI1MHMnIGFyZSBub3QgcGFydHMgb2YgdGhlIHNhbWUgZmlsZSIKK21zZ3N0ciAi4Z6v4Z6A4Z6f4Z624Z6aIGAlLjI1MHMnIOGek+Get+GehCBgJS4yNTBzJyDhnpjhnrfhnpPhnpjhn4LhnpPigIvhnofhnrbigIvhnpXhn5LhnpPhn4LhnoDigIvhnprhnpThnp/hn4vigIvhnq/hnoDhnp/hnrbhnprigIvhnorhnrzhnoXhnoLhn5LhnpPhnrbigIvhnpHhn4EiCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjkwCisjLCBjLWZvcm1hdAorbXNnaWQgInRoZXJlIGFyZSBzZXZlcmFsIHZlcnNpb25zIG9mIHBhcnQgJWQgLSBhdCBsZWFzdCBgJS4yNTBzJyBhbmQgYCUuMjUwcyciCittc2dzdHIgIuGemOGetuGek+KAi+GegOGfhuGejuGfguKAi+Geh+GetuKAi+GeheGfkuGemuGevuGek+KAi+GemuGelOGen+Gfi+KAi+GeleGfkuGek+GfguGegCAlZCAtIOGemeGfieGetuGehOKAi+GeoOGfhOGeheGejuGetuGen+GfiyBgJS4yNTBzJyDhnpPhnrfhnoQgYCUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjEyOAorIywgYy1mb3JtYXQKK21zZ2lkICJwYXJ0ICVkIGlzIG1pc3NpbmciCittc2dzdHIgIuGelOGetuGej+Gfi+KAi+GeleGfkuGek+GfguGegCAlZCIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6NDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuIGAlcycgcGFja2FnZSBzcGxpdC9qb2luIHRvb2w7IHZlcnNpb24gJXMuXG4iCittc2dzdHIgIuGep+GelOGegOGemuGejuGfjeKAi+Gej+Gel+GfkuGeh+GetuGelOGfiy/igIvhnpThn4bhnpThn4LhnoDigIvhnoDhnonhn5LhnoXhnpThn4sgYCVzJyDhnprhnpThnp/hn4vigIvhnorhn4HhnpThn4DhnpMg4Z6A4Z+G4Z6O4Z+CICVzwqDhn5RcbiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ29weXJpZ2h0IChDKSAxOTk0LTE5OTYgSWFuIEphY2tzb24uXG4iCittc2dzdHIgIuGemuGegOGfkuGen+GetuGen+Get+GekeGfkuGekuGet+KAi+GehuGfkuGek+GetuGfhiDhn6Hhn6nhn6nhn6Qt4Z+h4Z+p4Z+p4Z+mIOGeiuGfhOGemSBJYW4gSmFja3NvbsKg4Z+UXG4iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjY3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1zfC0tc3BsaXQgPGZpbGU+IFs8cHJlZml4Pl0gICAgIFNwbGl0IGFuIGFyY2hpdmUuXG4iCisiICAtanwtLWpvaW4gPHBhcnQ+IDxwYXJ0PiAuLi4gICAgICBKb2luIHBhcnRzIHRvZ2V0aGVyLlxuIgorIiAgLUl8LS1pbmZvIDxwYXJ0PiAuLi4gICAgICAgICAgICAgRGlzcGxheSBpbmZvIGFib3V0IGEgcGFydC5cbiIKKyIgIC1hfC0tYXV0byAtbyA8Y29tcGxldGU+IDxwYXJ0PiAgIEF1dG8tYWNjdW11bGF0ZSBwYXJ0cy5cbiIKKyIgIC1sfC0tbGlzdHEgICAgICAgICAgICAgICAgICAgICAgIExpc3QgdW5tYXRjaGVkIHBpZWNlcy5cbiIKKyIgIC1kfC0tZGlzY2FyZCBbPGZpbGVuYW1lPiAuLi5dICAgIERpc2NhcmQgdW5tYXRjaGVkIHBpZWNlcy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIuGeluGetuGegOGfkuGemeGelOGeieGfkuGeh+GetsKg4Z+WXG4iCisiICAtc3wtLXNwbGl0IDxmaWxlPiBbPHByZWZpeD5dICAgICDhnpThn4bhnpThn4LhnoDhnpThn5Dhno7hn5Lhno7hnp/hnrbhnprhnpjhnr3hnpnCoOGflFxuIgorIiAgLWp8LS1qb2luIDxwYXJ0PiA8cGFydD4gLi4uICAgICAg4Z6P4Z6X4Z+S4Z6H4Z624Z6U4Z+L4Z6V4Z+S4Z6T4Z+C4Z6A4Z6F4Z684Z6b4Z6C4Z+S4Z6T4Z62wqDhn5RcbiIKKyIgIC1JfC0taW5mbyA8cGFydD4gLi4uICAgICAgICAgICAgIOGelOGehOGfkuGeoOGetuGeieGeluGfkOGej+GfjOGemOGetuGek+GeouGfhuGeluGeuOGeleGfkuGek+GfguGegOGemOGeveGemcKg4Z+UXG4iCisiICAtYXwtLWF1dG8gLW8gPGNvbXBsZXRlPiA8cGFydD4gICDhnpThn5LhnprhnpjhnrzhnpvhnpXhn5LhnpPhn4LhnoDhnoXhnrzhnpvhnoLhn5LhnpPhnrbhnorhn4Thnpnhnp/hn5Lhnpzhn5DhnpnhnpThn5Lhnprhnpzhno/hn5Lhno/hnrfCoOGflFxuIgorIiAgLWx8LS1saXN0cSAgICAgICAgICAgICAgICAgICAgICAg4Z6a4Z624Z6Z4Z6V4Z+S4Z6T4Z+C4Z6A4Z6K4Z+C4Z6b4Z6Y4Z634Z6T4Z6V4Z+S4Z6C4Z684Z6V4Z+S4Z6C4Z6EwqDhn5RcbiIKKyIgIC1kfC0tZGlzY2FyZCBbPGZpbGVuYW1lPiAuLi5dICAgIOGelOGfhOGfh+GelOGehOGfi+GeleGfkuGek+GfguGegOGeiuGfguGem+GemOGet+Gek+GeleGfkuGeguGevOGeleGfkuGeguGehMKg4Z+UXG4iCisiXG4iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjgyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiT3B0aW9uczpcbiIKKyN8ICIgIC0tZGVwb3RkaXIgPGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLyVzLlxuIgorI3wgIiAgLVN8LS1wYXJ0c2l6ZSA8c2l6ZT4gICAgICAgICAgICAgSW4gS2lCLCBmb3IgLXMgKGRlZmF1bHQgaXMgNDUwKS5cbiIKKyN8ICIgIC1vfC0tb3V0cHV0IDxmaWxlPiAgICAgICAgICAgICAgIEZvciAtaiAoZGVmYXVsdCBpcyA8cGFja2FnZT4tPHZlcnNpb24+LiIKKyN8ICJkZWIpLlxuIgorI3wgIiAgLVF8LS1ucHF1aWV0ICAgICAgICAgICAgICAgICAgICAgQmUgcXVpZXQgd2hlbiAtYSBpcyBub3QgYSBwYXJ0LlxuIgorI3wgIiAgLS1tc2RvcyAgICAgICAgICAgICAgICAgICAgICAgICAgR2VuZXJhdGUgOC4zIGZpbGVuYW1lcy5cbiIKKyN8ICJcbiIKKyN8ICJFeGl0IHN0YXR1czogMCA9IE9LOyAgMSA9IC1hIGlzIG5vdCBhIHBhcnQ7ICAyID0gdHJvdWJsZSFcbiIKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tZGVwb3RkaXIgPGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLyVzLlxuIgorIiAgLVN8LS1wYXJ0c2l6ZSA8c2l6ZT4gICAgICAgICAgICAgSW4gS2lCLCBmb3IgLXMgKGRlZmF1bHQgaXMgNDUwKS5cbiIKKyIgIC1vfC0tb3V0cHV0IDxmaWxlPiAgICAgICAgICAgICAgIEZpbGVuYW1lLCBmb3IgLWogKGRlZmF1bHQgaXNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhY2thZ2U+Xzx2ZXJzaW9uPl88YXJjaD4uZGViKS5cbiIKKyIgIC1RfC0tbnBxdWlldCAgICAgICAgICAgICAgICAgICAgIEJlIHF1aWV0IHdoZW4gLWEgaXMgbm90IGEgcGFydC5cbiIKKyIgIC0tbXNkb3MgICAgICAgICAgICAgICAgICAgICAgICAgIEdlbmVyYXRlIDguMyBmaWxlbmFtZXMuXG4iCisiXG4iCittc2dzdHIgIiIKKyLhnofhnpjhn5Lhnprhnr7hnp/CoOGfllxuIgorIiAgLS1kZXBvdGRpciA8ZGlyZWN0b3J5PiAgICAgICAgICAg4Z6U4Z+S4Z6a4Z6+IDzhnpDhno8+IOGeh+GfhuGek+GeveGen+GesuGfkuGemSAlcy8lc8Kg4Z+UXG4iCisiICAtU3wtLXBhcnRzaXplIDxzaXplPiAgICAgICAgICAgICDhnofhnrYgS2lCLCDhnp/hnpjhn5LhnprhnrbhnpThn4sgLXMgKOGem+GfhuGek+GetuGfhuGeiuGevuGemOGeguGeuiA0NTApwqDhn5RcbiIKKyIgIC1vfC0tb3V0cHV0IDxmaWxlPiAgICAgICAgICAgICAgIOGen+GemOGfkuGemuGetuGelOGfiyAtaiAo4Z6b4Z+G4Z6T4Z624Z+G4Z6K4Z6+4Z6Y4Z6C4Z66IDxwYWNrYWdlPi08dmVyc2lvbj4uIgorImRlYinCoOGflFxuIgorIiAgLVF8LS1ucHF1aWV0ICAgICAgICAgICAgICAgICAgICAg4Z6f4Z+S4Z6E4Z624Z6P4Z+L4Z6T4Z+F4Z6W4Z+B4Z6bIC1hIOGemOGet+Gek+GemOGfguGek+Geh+GetuGeleGfkuGek+GfguGegMKg4Z+UXG4iCisiICAtLW1zZG9zICAgICAgICAgICAgICAgICAgICAgICAgICDhnpThnoThn5LhnoDhnr7hno/hnojhn5Lhnpjhn4Thn4fhnq/hnoDhnp/hnrbhnpog4Z+oLuGfo8Kg4Z+UXG4iCisiXG4iCisiRXhpdCBzdGF0dXM6IDAgPSBPSzsgIDEgPSAtYSDhnpjhnrfhnpPhnpjhn4LhnpPhnofhnrbhnpXhn5LhnpPhn4LhnoDhnpjhnr3hnpnhnpHhn4EgIDIgPSB0cm91YmxlIVxuIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo5MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiRXhpdCBzdGF0dXM6XG4iCisiICAwID0gb2tcbiIKKyIgIDEgPSB3aXRoIC0tYXV0bywgZmlsZSBpcyBub3QgYSBwYXJ0XG4iCisiICAyID0gdHJvdWJsZVxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjEwMworbXNnaWQgIlR5cGUgZHBrZy1zcGxpdCAtLWhlbHAgZm9yIGhlbHAuIgorbXNnc3RyICLhnpzhnrbhnpkgZHBrZy1zcGxpdCAtLWhlbHAg4Z6f4Z6Y4Z+S4Z6a4Z624Z6U4Z+L4oCL4Z6H4Z624oCL4Z6H4Z+G4Z6T4Z694Z6ZwqDhn5QiCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjExNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBmaWxlIGluICUuMjUwcyIKK21zZ3N0ciAi4Z6F4Z674Z6E4oCL4Z6v4Z6A4Z6f4Z624Z6a4oCL4Z6K4Z+C4Z6b4oCL4Z6Y4Z634Z6T4oCL4Z6a4Z+G4Z6W4Z654Z6E4oCL4Z6R4Z674Z6A4oCL4Z6T4Z+F4oCL4Z6A4Z+S4Z6T4Z674Z6EICUuMjUwcyIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6MTI2Cittc2dpZCAicGFydCBzaXplIGlzIGZhciB0b28gbGFyZ2Ugb3IgaXMgbm90IHBvc2l0aXZlIgorbXNnc3RyICLhnpXhn5LhnpPhn4LhnoDigIvhnpHhn4bhnqDhn4bigIvhnpLhn4bigIvhnoHhn5Lhnpvhnrbhn4bhnoTigIvhno7hnrbhnp/hn4sg4Z6s4oCL4Z6Y4Z634Z6T4Z6Y4Z+C4oCL4Z6T4Z6H4Z624oCL4Z6b4Z+B4Z6B4oCL4Z6c4Z634Z6H4Z+S4Z6H4Z6Y4Z624Z6TIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInBhcnQgc2l6ZSBtdXN0IGJlIGF0IGxlYXN0ICVkIEtpQiAodG8gYWxsb3cgZm9yIGhlYWRlcikiCittc2dzdHIgIuGeleGfkuGek+GfguGegOKAi+GekeGfhuGeoOGfhuKAi+Gej+GfkuGemuGevOGenOGej+GfguKAi+GemeGfieGetuGehOKAi+GeoOGfhOGeheKAi+GejuGetuGen+GfiyAlZGsgKOGeiuGevuGemOGfkuGelOGeuOKAi+GeouGek+Geu+GeieGfkuGeieGetuGej+KAi+Gen+GemOGfkuGemuGetuGelOGfi+KAi+GelOGei+GemOGegOGekOGetikiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzo5MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBkZXBvdCBkaXJlY3RvcnkgYCUuMjUwcyciCittc2dzdHIgIuGemOGet+Gek+KAi+GeouGetuGeheKAi+GeouGetuGek+KAi+GekOGejyBkZXBvdCBgJS4yNTBzJyDhnpThnrbhnpPigIvhnpHhn4EiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxMzQKK21zZ2lkICItLWF1dG8gcmVxdWlyZXMgdGhlIHVzZSBvZiB0aGUgLS1vdXRwdXQgb3B0aW9uIgorbXNnc3RyICItLWF1dG8g4Z6P4Z+S4Z6a4Z684Z6c4Z6A4Z624Z6a4oCL4Z6A4Z624Z6a4oCL4Z6U4Z+S4Z6a4Z6+4oCL4Z6H4Z6Y4Z+S4Z6a4Z6+4Z6fIC0tb3V0cHV0IgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTM2Cittc2dpZCAiLS1hdXRvIHJlcXVpcmVzIGV4YWN0bHkgb25lIHBhcnQgZmlsZSBhcmd1bWVudCIKK21zZ3N0ciAiLS1hdXRvIOGej+GfkuGemuGevOGenOGegOGetuGemuKAi+GeouGetuGeguGeu+GemeGemOGfieGehOGfi+KAi+GeleGfkuGek+GfguGegOKAi+Ger+GegOGen+GetuGemuKAi+Geh+GetuGegOGfi+Gem+GetuGegOGfi+KAi+GemOGeveGemSIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE0MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuGemOGet+Gek+KAi+GeouGetuGeheKAi+GeouGetuGek+KAi+GeleGfkuGek+GfguGegOKAi+Ger+GegOGen+GetuGemiBgJS4yNTBzJyIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE0MworIywgYy1mb3JtYXQKK21zZ2lkICJGaWxlIGAlLjI1MHMnIGlzIG5vdCBwYXJ0IG9mIGEgbXVsdGlwYXJ0IGFyY2hpdmUuXG4iCittc2dzdHIgIuGer+GegOGen+GetuGemiBgJS4yNTBzJyDhnpjhnrfhnpPhnpjhn4LhnpPigIvhnofhnrbigIvhnpXhn5LhnpPhn4LhnoDigIvhnprhnpThnp/hn4vigIvhnpThn5Dhno7hn5Lhno7hnp/hnrbhnprigIvhnoXhn5Lhnprhnr7hnpPigIvhnpXhn5LhnpPhn4LhnoDhnpHhn4HCoOGflFxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTc5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW9wZW4gcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnpThnr7hnoDigIvhnpXhn5LhnpPhn4LhnoDigIvhnq/hnoDhnp/hnrbhnpogYCUuMjUwcycg4Z6h4Z6+4Z6E4oCL4Z6c4Z634Z6J4oCL4Z6U4Z624Z6T4oCL4Z6R4Z+BIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTgyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIG5ldyBkZXBvdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnpThnr7hnoDigIvhnq/hnoDhnp/hnrbhnpogZGVwb3QgYCUuMjUwcycg4Z6Q4Z+S4Z6Y4Z644oCL4Z6U4Z624Z6T4oCL4Z6R4Z+BIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTg0Cittc2dpZCAiZXh0cmFjdGluZyBzcGxpdCBwYXJ0IgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbmFtZSBuZXcgZGVwb3QgZmlsZSBgJS4yNTBzJyB0byBgJS4yNTBzJyIKK21zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6U4Z+S4Z6K4Z684Z6a4oCL4Z6I4Z+S4Z6Y4Z+E4Z+H4oCL4Z6v4Z6A4Z6f4Z624Z6aIGRlcG90IGAlLjI1MHMnIOGekeGfhSBgJS4yNTBzJyDhnpDhn5LhnpjhnrjigIvhnpThnrbhnpPigIvhnpHhn4EiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFydCAlZCBvZiBwYWNrYWdlICVzIGZpbGVkIChzdGlsbCB3YW50ICIKK21zZ3N0ciAi4Z6V4Z+S4Z6T4Z+C4Z6AICVkIOGemuGelOGen+Gfi+KAi+GegOGeieGfkuGeheGelOGfiyAlcyDhnpThnrbhnpPigIvhnprhnrbhnpkgKOGek+GfheKAi+Gej+GfguKAi+Gej+GfkuGemuGevOGenOGegOGetuGemiAiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyMDAKK21zZ2lkICIgYW5kICIKK21zZ3N0ciAi4Z6T4Z634Z6EICIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjIxNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGVsZXRlIHVzZWQtdXAgZGVwb3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6b4Z674Z6U4oCL4Z6v4Z6A4Z6f4Z624Z6aIGRlcG90IGAlLjI1MHMnIOGeiuGfguGem+KAi+GelOGetuGek+KAi+GelOGfkuGemuGevuKAi+GelOGetuGek+KAi+GekeGfgSIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjIzNQorbXNnaWQgIkp1bmsgZmlsZXMgbGVmdCBhcm91bmQgaW4gdGhlIGRlcG90IGRpcmVjdG9yeTpcbiIKK21zZ3N0ciAi4Z6v4Z6A4Z6f4Z624Z6a4oCL4Z6l4Z6P4oCL4Z6U4Z624Z6T4oCL4Z6A4Z624Z6a4oCL4Z6f4Z6b4Z+L4oCL4Z6T4Z+F4oCL4Z6H4Z674Z+G4Z6c4Z634Z6J4oCL4Z6Q4Z6PIGRlcG90wqDhn5ZcbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI0MCBkcGtnLXNwbGl0L3F1ZXVlLmM6MjY5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGAlLjI1MHMnIgorbXNnc3RyICLhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnoXhnrbhnpThn4vhnpXhn5Lhnorhnr7hnpggYCUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNDMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiAlcyAoJWx1IGJ5dGVzKVxuIgorbXNnaWQgIiAlcyAoJWpkIGJ5dGVzKVxuIgorbXNnc3RyICIgJXMgKCVsdSDhnpThn4PigIspXG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICVzIChub3QgYSBwbGFpbiBmaWxlKVxuIgorbXNnc3RyICIgJXMgKOGemOGet+Gek+GemOGfguGek+KAi+Geh+GetuKAi+Ger+GegOGen+GetuGemuKAi+GeouGej+GfkuGekOGelOGekeKAi+GekuGemOGfkuGemOGej+GetilcbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI1MAorbXNnaWQgIlBhY2thZ2VzIG5vdCB5ZXQgcmVhc3NlbWJsZWQ6XG4iCittc2dzdHIgIuGegOGeieGfkuGeheKAi+GelOGfi+GemOGet+Gek+Gej+GfkuGemuGevOGenOGelOGetuGek+GeleGfkuGeguGeu+GfhuGek+GfheGeoeGevuGemeGekeGfgcKg4Z+WXG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIFBhY2thZ2UgJXM6IHBhcnQocykgIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFydCBmaWxlIGAlLjI1MHMnIGlzIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgIuGeleGfkuGek+GfguGegOKAi+Ger+GegOGen+GetuGemiBgJS4yNTBzJyDhnpjhnrfhnpPhnpjhn4LhnpPigIvhnofhnrbigIvhnq/hnoDhnp/hnrbhnprigIvhnqLhno/hn5LhnpDhnpThnpHigIvhnpLhnpjhn5Lhnpjhno/hnrbigIvhnpHhn4EiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNzgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIih0b3RhbCAlbHUgYnl0ZXMpXG4iCittc2dpZCAiKHRvdGFsICVqZCBieXRlcylcbiIKK21zZ3N0ciAiKOGen+GemuGeu+GelOKAiyAlbHUg4Z6U4Z+D4oCLKVxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MzA0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkaXNjYXJkIGAlLjI1MHMnIgorbXNnc3RyICLhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnpThn4Thn4fhnpThnoThn4sgYCUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzozMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGVsZXRlZCAlcy5cbiIKK21zZ3N0ciAi4Z6U4Z624Z6T4Z6b4Z674Z6UICVzwqDhn5RcbiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjcwIGRwa2ctc3BsaXQvc3BsaXQuYzo3NiBkcGtnLXNwbGl0L3NwbGl0LmM6ODEKK21zZ2lkICJwYWNrYWdlIGZpZWxkIHZhbHVlIGV4dHJhY3Rpb24iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjEzMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBzb3VyY2UgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6U4Z6+4Z6A4oCL4Z6v4Z6A4Z6f4Z624Z6a4oCL4Z6U4Z+S4Z6a4Z6X4Z6WIGAlLjI1MHMnIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTMzCittc2dpZCAidW5hYmxlIHRvIGZzdGF0IHNvdXJjZSBmaWxlIgorbXNnc3RyICLhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnoXhnrzhnpvigIvhnpHhn4XigIvhnq/hnoDhnp/hnrbhnprigIvhnpThn5LhnprhnpfhnpYgZnN0YXQiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxMzUKKyMsIGMtZm9ybWF0Cittc2dpZCAic291cmNlIGZpbGUgYCUuMjUwcycgbm90IGEgcGxhaW4gZmlsZSIKK21zZ3N0ciAi4Z6v4Z6A4Z6f4Z624Z6a4oCL4Z6U4Z+S4Z6a4Z6X4Z6WIGAlLjI1MHMnIOGemOGet+Gek+GemOGfguGek+KAi+Geh+GetuKAi+Ger+GegOGen+GetuGemuKAi+GeouGej+GfkuGekOGelOGekeKAi+GekuGemOGfkuGemOGej+GetiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjE1MworIywgYy1mb3JtYXQKK21zZ2lkICJTcGxpdHRpbmcgcGFja2FnZSAlcyBpbnRvICVkIHBhcnQ6ICIKK21zZ2lkX3BsdXJhbCAiU3BsaXR0aW5nIHBhY2thZ2UgJXMgaW50byAlZCBwYXJ0czogIgorbXNnc3RyWzBdICIiCittc2dzdHJbMV0gIiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjE5MworbXNnaWQgIiIKKyJIZWFkZXIgaXMgdG9vIGxvbmcsIG1ha2luZyBwYXJ0IHRvbyBsb25nLiBZb3VyIHBhY2thZ2UgbmFtZSBvciB2ZXJzaW9uXG4iCisibnVtYmVycyBtdXN0IGJlIGV4dHJhb3JkaW5hcmlseSBsb25nLCBvciBzb21ldGhpbmcuIEdpdmluZyB1cC5cbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MjQ5Cittc2dpZCAiLS1zcGxpdCBuZWVkcyBhIHNvdXJjZSBmaWxlbmFtZSBhcmd1bWVudCIKK21zZ3N0ciAiLS1zcGxpdCDhno/hn5LhnprhnrzhnpzhnoDhnrbhnprigIvhnqLhnrbhnoLhnrvhnpnhnpjhn4nhnoThn4vigIvhnojhn5Lhnpjhn4Thn4figIvhnq/hnoDhnp/hnrbhnprigIvhnpThn5LhnprhnpfhnpYiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoyNTIKK21zZ2lkICItLXNwbGl0IHRha2VzIGF0IG1vc3QgYSBzb3VyY2UgZmlsZW5hbWUgYW5kIGRlc3RpbmF0aW9uIHByZWZpeCIKK21zZ3N0ciAiLS1zcGxpdCDhno/hn5LhnprhnrzhnpzhnoDhnrbhnprigIvhnpThnrvhnpbhn5LhnpzhnpThnpHigIvhnpHhnrfhnp/hnorhn4Ug4Z6T4Z634Z6E4oCL4Z6I4Z+S4Z6Y4Z+E4Z+H4oCL4Z6v4Z6A4Z6f4Z624Z6a4oCL4Z6U4Z+S4Z6a4Z6X4Z6W4oCL4Z6Z4Z+J4Z624Z6E4oCL4Z6g4Z+E4Z6F4oCL4Z6O4Z624Z6f4Z+L4oCL4Z6Y4Z694Z6ZIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6ODQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJcbiIKKyN8ICJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisjfCAiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi4iCittc2dpZCAiIgorIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAtMjAwMiBXaWNoZXJ0IEFra2VybWFuLlxuIgorIkNvcHlyaWdodCAoQykgMjAwOS0yMDEwIFJhcGhhZWwgSGVydHpvZy5cbiIKK21zZ3N0ciAiIgorIlxuIgorIuGemuGegOGfkuGen+GetuGen+Get+GekeGfkuGekuGet+GehuGfkuGek+GetuGfhiDhn6Hhn6nhn6nhn6Ug4Z6K4Z+E4Z6ZIElhbiBKYWNrc29uwqDhn5RcbiIKKyLhnprhnoDhn5Lhnp/hnrbhnp/hnrfhnpHhn5LhnpLhnrfhnobhn5LhnpPhnrbhn4Yg4Z+i4Z+g4Z+g4Z+gLeGfouGfoOGfoOGfoSDhnorhn4ThnpkgV2ljaGVydCBBa2tlcm1hbsKg4Z+UIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTAxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtLWluc3RhbGwgPGxpbms+IDxuYW1lPiA8cGF0aD4gPHByaW9yaXR5PlxuIgorIiAgICBbLS1zbGF2ZSA8bGluaz4gPG5hbWU+IDxwYXRoPl0gLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkIGEgZ3JvdXAgb2YgYWx0ZXJuYXRpdmVzIHRvIHRoZSBzeXN0ZW0uXG4iCisiICAtLXJlbW92ZSA8bmFtZT4gPHBhdGg+ICAgcmVtb3ZlIDxwYXRoPiBmcm9tIHRoZSA8bmFtZT4gZ3JvdXAgYWx0ZXJuYXRpdmUuXG4iCisiICAtLXJlbW92ZS1hbGwgPG5hbWU+ICAgICAgcmVtb3ZlIDxuYW1lPiBncm91cCBmcm9tIHRoZSBhbHRlcm5hdGl2ZXMgIgorInN5c3RlbS5cbiIKKyIgIC0tYXV0byA8bmFtZT4gICAgICAgICAgICBzd2l0Y2ggdGhlIG1hc3RlciBsaW5rIDxuYW1lPiB0byBhdXRvbWF0aWMgbW9kZS5cbiIKKyIgIC0tZGlzcGxheSA8bmFtZT4gICAgICAgICBkaXNwbGF5IGluZm9ybWF0aW9uIGFib3V0IHRoZSA8bmFtZT4gZ3JvdXAuXG4iCisiICAtLXF1ZXJ5IDxuYW1lPiAgICAgICAgICAgbWFjaGluZSBwYXJzZWFibGUgdmVyc2lvbiBvZiAtLWRpc3BsYXkgPG5hbWU+LlxuIgorIiAgLS1saXN0IDxuYW1lPiAgICAgICAgICAgIGRpc3BsYXkgYWxsIHRhcmdldHMgb2YgdGhlIDxuYW1lPiBncm91cC5cbiIKKyIgIC0tZ2V0LXNlbGVjdGlvbnMgICAgICAgICBsaXN0IG1hc3RlciBhbHRlcm5hdGl2ZSBuYW1lcyBhbmQgdGhlaXIgc3RhdHVzLlxuIgorIiAgLS1zZXQtc2VsZWN0aW9ucyAgICAgICAgIHJlYWQgYWx0ZXJuYXRpdmUgc3RhdHVzIGZyb20gc3RhbmRhcmQgaW5wdXQuXG4iCisiICAtLWNvbmZpZyA8bmFtZT4gICAgICAgICAgc2hvdyBhbHRlcm5hdGl2ZXMgZm9yIHRoZSA8bmFtZT4gZ3JvdXAgYW5kIGFzayAiCisidGhlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlciB0byBzZWxlY3Qgd2hpY2ggb25lIHRvIHVzZS5cbiIKKyIgIC0tc2V0IDxuYW1lPiA8cGF0aD4gICAgICBzZXQgPHBhdGg+IGFzIGFsdGVybmF0aXZlIGZvciA8bmFtZT4uXG4iCisiICAtLWFsbCAgICAgICAgICAgICAgICAgICAgY2FsbCAtLWNvbmZpZyBvbiBhbGwgYWx0ZXJuYXRpdmVzLlxuIgorIlxuIgorbXNnc3RyICIiCisi4Z6a4Z6U4Z+A4Z6U4Z6U4Z+S4Z6a4Z6+wqDhn5YgJXMgWzzhnofhnpjhn5Lhnprhnr7hnp8+IC4uLl0gPOGeluGetuGegOGfkuGemeGelOGeieGfkuGeh+Getj5cbiIKKyJcbiIKKyLhnpbhnrbhnoDhn5LhnpnhnpThnonhn5LhnofhnrbCoOGfllxuIgorIiAgLS1pbnN0YWxsIDzhno/hn4bhno4+IDzhnojhn5Lhnpjhn4Thn4c+IDzhnpXhn5Lhnpvhnrzhnpw+IDzhnqLhnrbhnpHhnrfhnpfhnrbhnpY+XG4iCisiICAgIFstLXNsYXZlIDzhno/hn4bhno4+IDzhnojhn5Lhnpjhn4Thn4c+IDzhnpXhn5Lhnpvhnrzhnpw+XSAuLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICDhnpThnpPhn5LhnpDhn4LhnpjigIvhnoDhn5LhnprhnrvhnpjigIvhnpjhnr3hnpnigIvhnofhnrbigIvhnofhnpjhn5Lhnprhnr7hnp/igIvhnpHhn4XigIvhnpThn5Lhnprhnpbhn5DhnpPhn5LhnpLCoOGflFxuIgorIiAgLS1yZW1vdmUgPOGeiOGfkuGemOGfhOGfhz4gPOGeleGfkuGem+GevOGenD4gICDhnpnhnoAgPOGeleGfkuGem+GevOGenD4g4Z6F4Z+B4Z6J4Z6W4Z64IDzhnojhn5Lhnpjhn4Thn4c+IOGegOGfkuGemuGeu+GemOKAi+Geh+GfhuGek+GeveGen8Kg4Z+UXG4iCisiICAtLXJlbW92ZS1hbGwgPOGeiOGfkuGemOGfhOGfhz4gICAgICDhnpnhnoDigIvhnoXhn4HhnokgPOGeiOGfkuGemOGfhOGfhz4g4Z6A4Z+S4Z6a4Z674oCL4Z6Y4oCL4Z6W4Z644Z6U4Z+S4Z6a4Z6W4Z+Q4oCL4Z6T4Z+S4Z6S4Z6H4Z+G4Z6T4Z694Z6fwqDhn5RcbiIKKyIgIC0tYXV0byA84Z6I4Z+S4Z6Y4Z+E4Z+HPiAgICAgICAgICAgIOGelOGfkuGeiuGevOGemuKAi+Gej+GfhuGejuKAi+GemOGfgSA84Z6I4Z+S4Z6Y4Z+E4Z+HPiDhnpHhn4XigIvhnprhnpThn4DhnpTigIvhnp/hn5Lhnpzhn5DhnpnhnpThn5Lhnprhnpzhno/hn5Lhno/hnrfCoOGflFxuIgorIiAgLS1kaXNwbGF5IDzhnojhn5Lhnpjhn4Thn4c+ICAgICAgICAg4Z6U4Z6E4Z+S4Z6g4Z624Z6J4oCL4Z6W4Z+Q4Z6P4Z+M4Z6Y4Z624Z6T4oCL4Z6i4Z+G4Z6W4Z644oCL4Z6A4Z+S4Z6a4Z674Z6YIDzhnojhn5Lhnpjhn4Thn4c+wqDhn5RcbiIKKyIgIC0tbGlzdCA8bmFtZT4gICAgICAgICAgICDhnpThnoThn5LhnqDhnrbhnonigIvhnoLhn4Thnpvhnorhn4XigIvhnpHhnrbhn4bhnoThnqLhnp/hn4vigIvhnprhnpThnp/hn4vigIvhnoDhn5LhnprhnrvhnpggPOGeiOGfkuGemOGfhOGfhz7CoOGflFxuIgorIiAgLS1jb25maWcgPG5hbWU+ICAgICAgICAgIOGelOGehOGfkuGeoOGetuGeieKAi+Geh+GemOGfkuGemuGevuGen+KAi+Gen+GemOGfkuGemuGetuGelOGfi+KAi+GegOGfkuGemuGeu+GemCA84Z6I4Z+S4Z6Y4Z+E4Z+HPiDhnpPhnrfhnoTigIvhnp/hnr3hnppcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICDhnqLhn5LhnpPhnoDigIvhnpThn5Lhnprhnr7igIvhnpDhnrbigIvhno/hn5LhnprhnrzhnpzigIvhnofhn5Lhnprhnr7hnp/igIvhnpjhnr3hnpnigIvhno7hnrbigIvhnorhnr7hnpjhn5LhnpThnrjigIvhnpThn5Lhnprhnr7CoOGflFxuIgorIiAgLS1zZXQgPOGeiOGfkuGemOGfhOGfhz4gPOGeleGfkuGem+GevOGenD4gICAgICDhnoDhn4bhno7hno/hn4sgPOGeleGfkuGem+GevOGenD4g4Z6H4Z624oCL4Z6H4Z6Y4Z+S4Z6a4Z6+4Z6f4oCL4Z6f4Z6Y4Z+S4Z6a4Z624Z6U4Z+LIDzhnojhn5Lhnpjhn4Thn4c+wqDhn5RcbiIKKyIgIC0tYWxsICAgICAgICAgICAgICAgICAgICDhnqDhn4UgLS1jb25maWcg4Z6T4Z+F4oCL4Z6H4Z6Y4Z+S4Z6a4Z6+4Z6f4oCL4Z6R4Z624Z+G4Z6E4Z6i4Z6f4Z+LwqDhn5RcbiIKKyJcbiIKKyI84Z6I4Z+S4Z6Y4Z+E4Z+HPiDhnofhnrbigIvhnojhn5Lhnpjhn4Thn4figIvhnpPhn4XigIvhnoDhn5LhnpPhnrvhnoQgL2V0Yy9hbHRlcm5hdGl2ZXPCoOGflFxuIgorIjzhnpXhn5Lhnpvhnrzhnpw+IOGeguGeuuKAi+Geh+GetuKAi+GeiOGfkuGemOGfhOGfh+KAi+Gen+GfhuGeouGetuGehOKAi+GekeGfhcKg4Z+UXG4iCisiPOGej+GfhuGejj4g4Z6C4Z664oCL4Z6H4Z624oCL4Z6P4Z+G4Z6O4oCL4Z6F4Z6E4Z+S4Z6i4Z674Z6b4oCL4Z6R4Z+FIC9ldGMvYWx0ZXJuYXRpdmVzLzxuYW1lPsKg4Z+UXG4iCisiPOGeouGetuGekeGet+Gel+GetuGelj4g4Z6C4Z664oCL4Z6S4Z+G4oCL4Z6H4Z624Z6EIOGeh+GemOGfkuGemuGevuGen+KAi+Geh+GetuKAi+GemOGeveGemeKAi+Gem+GfgeGegeKAi+GegeGfkuGeluGen+Gfi+KAi+Geh+GetuGehOKAi+Gej+GfkuGemuGevOGenOKAi+GelOGetuGek+KAi+Geh+GfkuGemuGevuGen8Kg4Z+UXG4iCisiXG4iCisi4Z6H4Z6Y4Z+S4Z6a4Z6+4Z6fwqDhn5ZcbiIKKyIgIC0tYWx0ZGlyIDzhnpDhno8+ICAgICDhnpXhn5Lhnpvhnrbhnp/hn4vhnpThn5LhnorhnrzhnprigIvhnpDhno/igIvhnofhn4bhnpPhnr3hnp/CoOGflFxuIgorIiAgLS1hZG1pbmRpciA84Z6Q4Z6PPiAgIOGeleGfkuGem+GetuGen+Gfi+GelOGfkuGeiuGevOGemuKAi+GekOGej+KAi+GeguGfkuGemuGelOGfi+GeguGfkuGemuGehMKg4Z+UXG4iCisiICAtLXRlc3QgICAgICAgICAgICAgICAgICAg4Z6A4Z674Z+G4oCL4Z6S4Z+S4Z6c4Z6+4oCL4Z6i4Z+S4Z6c4Z644oCL4Z6R4Z624Z+G4Z6E4Z6i4Z6f4Z+LIOGeguGfkuGemuGetuGek+Gfi+KAi+Gej+GfguKAi+GelOGehOGfkuGeoOGetuGeicKg4Z+UXG4iCisiICAtLXZlcmJvc2UgICAgICAgICAgICAgICAg4Z6U4Z6a4Z634Z6Z4Z624Z6Z4oCL4Z6U4Z+S4Z6a4Z6P4Z634Z6U4Z6P4Z+S4Z6P4Z63IOGem+GekeGfkuGekuGeleGem+KAi+GeheGfkuGemuGevuGek8Kg4Z+UXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAg4Z6U4Z+S4Z6a4Z6P4Z634Z6U4Z6P4Z+S4Z6P4Z634Z6A4Z624Z6a4oCL4Z6f4Z+S4Z6E4Z624Z6P4Z+LIOGem+GekeGfkuGekuGeleGem+KAi+GeouGelOGfkuGelOGelOGemuGemOGetsKg4Z+UXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAg4Z6U4Z6E4Z+S4Z6g4Z624Z6J4oCL4Z6f4Z624Z6a4oCL4Z6H4Z+G4Z6T4Z694Z6Z4oCL4Z6T4Z+B4Z+HwqDhn5RcbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICDhnpThnoThn5LhnqDhnrbhnonigIvhnoDhn4bhno7hn4LCoOGflFxuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyI8bGluaz4gaXMgdGhlIHN5bWxpbmsgcG9pbnRpbmcgdG8gJXMvPG5hbWU+LlxuIgorIiAgKGUuZy4gL3Vzci9iaW4vcGFnZXIpXG4iCisiPG5hbWU+IGlzIHRoZSBtYXN0ZXIgbmFtZSBmb3IgdGhpcyBsaW5rIGdyb3VwLlxuIgorIiAgKGUuZy4gcGFnZXIpXG4iCisiPHBhdGg+IGlzIHRoZSBsb2NhdGlvbiBvZiBvbmUgb2YgdGhlIGFsdGVybmF0aXZlIHRhcmdldCBmaWxlcy5cbiIKKyIgIChlLmcuIC91c3IvYmluL2xlc3MpXG4iCisiPHByaW9yaXR5PiBpcyBhbiBpbnRlZ2VyOyBvcHRpb25zIHdpdGggaGlnaGVyIG51bWJlcnMgaGF2ZSBoaWdoZXIgcHJpb3JpdHkgIgorImluXG4iCisiICBhdXRvbWF0aWMgbW9kZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTMxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWx0ZGlyIDxkaXJlY3Rvcnk+ICAgICBjaGFuZ2UgdGhlIGFsdGVybmF0aXZlcyBkaXJlY3RvcnkuXG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgY2hhbmdlIHRoZSBhZG1pbmlzdHJhdGl2ZSBkaXJlY3RvcnkuXG4iCisiICAtLWxvZyA8ZmlsZT4gICAgICAgICAgICAgY2hhbmdlIHRoZSBsb2cgZmlsZS5cbiIKKyIgIC0tZm9yY2UgICAgICAgICAgICAgICAgICBhbGxvdyByZXBsYWNpbmcgZmlsZXMgd2l0aCBhbHRlcm5hdGl2ZSBsaW5rcy5cbiIKKyIgIC0tc2tpcC1hdXRvICAgICAgICAgICAgICBza2lwIHByb21wdCBmb3IgYWx0ZXJuYXRpdmVzIGNvcnJlY3RseSAiCisiY29uZmlndXJlZFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGluIGF1dG9tYXRpYyBtb2RlIChyZWxldmFudCBmb3IgLS1jb25maWcgb25seSlcbiIKKyIgIC0tdmVyYm9zZSAgICAgICAgICAgICAgICB2ZXJib3NlIG9wZXJhdGlvbiwgbW9yZSBvdXRwdXQuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgcXVpZXQgb3BlcmF0aW9uLCBtaW5pbWFsIG91dHB1dC5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCittc2dzdHIgIiIKKyLhnprhnpThn4DhnpThnpThn5Lhnprhnr7CoOGfliAlcyBbPG9wdGlvbj4gLi4uXSA84Z6W4Z624Z6A4Z+S4Z6Z4Z6U4Z6J4Z+S4Z6H4Z62PlxuIgorIlxuIgorIuGeluGetuGegOGfkuGemeGelOGeieGfkuGeh+GetsKg4Z+WXG4iCisiICAtLWFkZCA84Z6Y4Z+S4Z6F4Z624Z6f4Z+LPiA84Z6A4Z+S4Z6a4Z674Z6YPiA84Z6a4Z6U4Z+A4Z6UPiA84Z6v4Z6A4Z6f4Z624Z6aPlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIOGelOGek+GfkuGekOGfguGemOKAi+GekuGetuGej+Geu+KAi+GekOGfkuGemOGeuOKAi+GemOGeveGemeKAi+GekeGfheKAi+GegOGfkuGek+Geu+GehOKAi+GemOGevOGem+GeiuGfkuGei+GetuGek+KAi+GekeGet+Gek+GfkuGek+Gek+GfkOGemcKg4Z+UXG4iCisiICAtLXJlbW92ZSA84Z6v4Z6A4Z6f4Z624Z6aPiAgICAgICAgICDhnpnhnoDigIvhnq/hnoDhnp/hnrbhnprigIvhnoXhn4HhnonigIvhnpbhnrjigIvhnpjhnrzhnpvhnorhn5LhnovhnrbhnpPigIvhnpHhnrfhnpPhn5LhnpPhnpPhn5DhnpnCoOGflFxuIgorIiAgLS1saXN0IFs84Z6b4Z+G4Z6T4Z624Z+G4Z6f4Z6A4Z6bPl0gIOGemuGetuGemeKAi+GegOGetuGemuKAi+GelOGeiuGet+Gen+GfgeGekuKAi+GekOGfkuGemOGeuOGfl+KAi+Gek+GfheKAi+GegOGfkuGek+Geu+GehOKAi+GemOGevOGem+GeiuGfkuGei+GetuGek+KAi+GekeGet+Gek+GfkuGek+Gek+GfkOGemcKg4Z+UXG4iCisiXG4iCisi4Z6H4Z6Y4Z+S4Z6a4Z6+4Z6fwqDhn5ZcbiIKKyIgIC0tYWRtaW5kaXIgPOGekOGejz4gICDhnoDhn4bhno7hno/hn4vigIvhnpDhno/igIvhnorhn4ThnpnigIvhnq/hnoDhnp/hnrbhnpogc3RhdG92ZXJyaWRlwqDhn5RcbiIKKyIgIC0tdXBkYXRlICAgICAgICAgICAgICAgICDhnpLhn5Lhnpzhnr7igIvhnrLhn5LhnpnigIvhnp/hnrfhnpHhn5LhnpLhnrfigIvhnq/hnoDhnp/hnrbhnprigIvhnpHhnrbhnpPhn4vigIvhnp/hnpjhn5DhnpnigIvhnpfhn5Lhnpvhnrbhnpjhn5fCoOGflFxuIgorIiAgLS1mb3JjZSAgICAgICAgICAgICAgICAgIOGelOGehOGfkuGegeGfhuKAi+Gen+GegOGemOGfkuGemOGel+GetuGeliDhnpHhn4Thn4figIvhnpThnrjigIvhnofhnrbigIvhnoDhnrbhnprigIvhnpbhnrfhnpPhnrfhno/hn5LhnpnigIvhnpfhnrbhnpbigIvhnpThn5LhnprhnoDhn5Lhnprhno/hnrjigIvhnpThnprhnrbhnofhn5DhnpnigIvhnoDhn4/igIvhnorhn4ThnpnCoOGflFxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIOGelOGfkuGemuGej+Get+GelOGej+GfkuGej+Get+KAi+GegOGetuGemuKAi+Gen+GfkuGehOGetuGej+GfiyDhnpvhnpHhn5LhnpLhnpXhnpvigIvhnqLhnpThn5LhnpThnpThnprhnpjhnrbCoOGflFxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIOGelOGehOGfkuGeoOGetuGeieKAi+Gen+GetuGemuKAi+Geh+GfhuGek+GeveGemeKAi+Gek+GfgeGfh8Kg4Z+UXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAg4Z6U4Z6E4Z+S4Z6g4Z624Z6J4oCL4Z6A4Z+G4Z6O4Z+CwqDhn5RcbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTYzCisjLCBmdXp6eQorI3wgbXNnaWQgInBhcnNlIGVycm9yIgorbXNnaWQgImVycm9yIgorbXNnc3RyICLhnonhn4LhnoDigIvhnoDhn4bhnqDhnrvhnp8iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxOTMKK21zZ2lkICJ3YXJuaW5nIgorbXNnc3RyICLhnoDhnrbhnprigIvhnpbhn5LhnprhnpjhnrbhnpPigIsiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzozNTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInR3byBjb21tYW5kcyBzcGVjaWZpZWQ6IC0tJXMgYW5kIC0tJXMiCittc2dzdHIgIuGemOGetuGek+KAi+GeluGeuOGemuKAi+GemuGelOGfgOGelOKAi+GelOGetuGek+KAi+GelOGeieGfkuGeh+GetuGegOGfi8Kg4Z+WICVzIOGek+Get+GehCAtLSVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6Mzg3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW5ub3Qgb3BlbiBkaXZlcnNpb25zOiAlcyIKK21zZ2lkICJjYW5ub3QgYXBwZW5kIHRvICclcyciCittc2dzdHIgIuGemOGet+Gek+KAi+GeouGetuGeheKAi+GelOGevuGegOKAi+GegOGetuGemuKAi+GelOGehOGfkuGenOGfguGemsKg4Z+WICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NTU2CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlICVzOiAlcyIKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlICclcyciCittc2dzdHIgIuGemOGet+Gek+KAi+GeouGetuGeheKAi+GemeGegCAlc8Kg4Z+WICVzIOGeheGfgeGeiSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGZpbGUgd2hpbGUgdHJ5aW5nIHRvIHJlYWQgJXMiCittc2dzdHIgIuGeheGeu+GehOKAi+Ger+GegOGen+GetuGemuKAi+GeiuGfguGem+KAi+GemOGet+Gek+KAi+GemuGfhuGeluGeueGehOKAi+Gek+GfheKAi+GegOGfkuGek+Geu+GehCAlcyDhnoDhn5LhnpPhnrvhnoQgJS4yNTVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTExMworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAid2hpbGUgcmVhZGluZyAlczogJXMiCittc2dzdHIgIuGemOGet+Gek+KAi+GeouGetuGeheKAi+GeouGetuGekyAlc8Kg4Z+WICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTExOQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAibGluZSBub3QgdGVybWluYXRlZCB3aGlsZSB0cnlpbmcgdG8gcmVhZCAlcyIKK21zZ3N0ciAi4Z6F4Z674Z6E4oCL4Z6v4Z6A4Z6f4Z624Z6a4oCL4Z6K4Z+C4Z6b4oCL4Z6Y4Z634Z6T4oCL4Z6a4Z+G4Z6W4Z654Z6E4oCL4Z6T4Z+F4oCL4Z6A4Z+S4Z6T4Z674Z6EICVzIOGegOGfkuGek+Geu+GehCAlLjI1NXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTM3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlcyBjb3JydXB0OiAlcyIKK21zZ3N0ciAi4Z6A4Z+G4Z6g4Z674Z6f4oCL4Z6B4Z624Z6E4oCL4Z6A4Z+S4Z6T4Z674Z6EwqDhn5YgJXMg4Z6B4Z684Z6FwqDhn5YgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTUwCisjLCBjLWZvcm1hdAorbXNnaWQgIm5ld2xpbmVzIHByb2hpYml0ZWQgaW4gdXBkYXRlLWFsdGVybmF0aXZlcyBmaWxlcyAoJXMpIgorbXNnc3RyICLhnpThnpPhn5LhnpHhnrbhno/hn4vigIvhnpDhn5LhnpjhnrjigIvhnpThnrbhnpPigIvhnqDhnrbhnpjhnoPhnrbhno/hn4vigIvhnoDhn5LhnpPhnrvhnoTigIvhnq/hnoDhnp/hnrbhnprigIvhnofhnpjhn5Lhnprhnr7hnp/igIvhnpLhn5Lhnpzhnr7hnrLhn5LhnpnigIvhnpHhnrbhnpPhn4vigIvhnp/hnpjhn5DhnpkgKCVzKSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNjMKK21zZ2lkICJzbGF2ZSBuYW1lIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTcxIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDA1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJkdXBsaWNhdGUgc2xhdmUgJXMiCittc2dpZCAiZHVwbGljYXRlIHNsYXZlIG5hbWUgJXMiCittc2dzdHIgIuGen+GfkuGekeGeveGek+KAi+GegOGevOGek+GeheGfhSVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE3NAorIywgZnV6enkKK21zZ2lkICJzbGF2ZSBsaW5rIgorbXNnc3RyICLhnp/hn5LhnpHhnr3hnpPigIvhno/hn4bhno7igIvhnoDhnrzhnpPigIvhnoXhn4UgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTc4CisjLCBjLWZvcm1hdAorbXNnaWQgInNsYXZlIGxpbmsgc2FtZSBhcyBtYWluIGxpbmsgJXMiCittc2dzdHIgIuGej+GfhuGejuKAi+GegOGevOGek+GeheGfheKAi+GeiuGevOGeheKAi+Gej+GfhuGejuKAi+GemOGfgSAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExODUgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHNsYXZlIGxpbmsgJXMiCittc2dzdHIgIuGen+GfkuGekeGeveGek+KAi+Gej+GfhuGejuKAi+GegOGevOGek+KAi+GeheGfhSAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMDQKK21zZ2lkICJtYXN0ZXIgZmlsZSIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIxMworIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgcGF0aCAlcyIKK21zZ3N0ciAi4Z6f4Z+S4Z6R4Z694Z6T4oCL4Z6V4Z+S4Z6b4Z684Z6cICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIyNgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorImFsdGVybmF0aXZlICVzIChwYXJ0IG9mIGxpbmsgZ3JvdXAgJXMpIGRvZXNuJ3QgZXhpc3QuIFJlbW92aW5nIGZyb20gbGlzdCBvZiAiCisiYWx0ZXJuYXRpdmVzLiIKK21zZ3N0ciAi4Z6H4Z6Y4Z+S4Z6a4Z6+4Z6f4Z6f4Z6Y4Z+S4Z6a4Z624Z6U4Z+LICVzIOGeheGehOGfkuGeouGeu+Gem+GekeGfhSAlcyAtIOGeiuGfguGem+GemuGegOGemOGet+Gek+Geg+GevuGeicKg4Z+UICDhnpnhnoDigIvhnoXhn4HhnonigIvhnpbhnrjigIvhnpThnonhn5LhnofhnrjigIvhnprhnpThnp/hn4vigIvhnofhnpjhn5Lhnprhnr7hnp/CoOGflCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMjkgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyNDAKKyMsIGZ1enp5Cittc2dpZCAicHJpb3JpdHkiCittc2dzdHIgIuGeouGetuGekeGet+Gel+GetuGeliAlcyAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMzIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyNDkKK21zZ2lkICJzbGF2ZSBmaWxlIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjQ0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJwcmlvcml0eSBvZiAlczogJXMiCittc2dzdHIgIuGeouGetuGekeGet+Gel+GetuGeliAlcyAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyOTcKK21zZ2lkICJzdGF0dXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyOTkKK21zZ2lkICJpbnZhbGlkIHN0YXR1cyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTMwNAorIywgZnV6enkKK21zZ2lkICJtYXN0ZXIgbGluayIKK21zZ3N0ciAi4Z6f4Z+S4Z6R4Z694Z6T4oCL4Z6P4Z+G4Z6O4oCL4Z6A4Z684Z6T4oCL4Z6F4Z+FICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTM0OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZGlzY2FyZGluZyBvYnNvbGV0ZSBzbGF2ZSBsaW5rICVzICglcykuIgorbXNnc3RyICLhnpThn4Thn4fhnpThnoThn4vigIvhno/hn4bhno7igIvhnoDhnrzhnpPigIvhnoXhn4XigIvhnorhn4LhnpvigIvhnpvhn4LhnoTigIvhnpThn5Lhnprhnr4gJXMgKCVzKcKg4Z+UIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2OQorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MzgKK21zZ2lkICJhdXRvIG1vZGUiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MDIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NzgKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjM5Cittc2dpZCAibWFudWFsIG1vZGUiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiAgbGluayBjdXJyZW50bHkgcG9pbnRzIHRvICVzIgorbXNnc3RyICIg4Z6P4Z+G4Z6O4oCL4Z6U4Z6F4Z+S4Z6F4Z674Z6U4Z+S4Z6U4Z6T4Z+S4Z6T4oCL4Z6F4Z6E4Z+S4Z6i4Z674Z6b4oCL4Z6R4Z+FICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwOAorIywgZnV6enkKK21zZ2lkICIgIGxpbmsgY3VycmVudGx5IGFic2VudCIKK21zZ3N0ciAiIOGeguGfkuGemOGetuGek+KAi+KAi+Gej+GfhuGejuKAi+GelOGeheGfkuGeheGeu+GelOGfkuGelOGek+GfkuGekyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiVzIC0gcHJpb3JpdHkgJXMiCittc2dpZCAiJXMgLSBwcmlvcml0eSAlZCIKK21zZ3N0ciAiJXMgLSDhnqLhnrbhnpHhnrfhnpfhnrbhnpYgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTE1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIgIHNsYXZlICVzOiAlcyIKK21zZ3N0ciAiIOGegOGevOGek+GeheGfhSAlc8Kg4Z+WICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUyMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiQ3VycmVudCAnYmVzdCcgdmVyc2lvbiBpcyAnJXMnLiIKK21zZ3N0ciAi4Z6A4Z+G4Z6O4Z+CIGDhnpvhn5LhnqLigIvhnpThn4bhnpXhnrvhno8nIOGelOGeheGfkuGeheGeu+GelOGfkuGelOGek+GfkuGek+KAi+GeguGeuiAlc8Kg4Z+UIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUyNAorbXNnaWQgIk5vIHZlcnNpb25zIGF2YWlsYWJsZS4iCittc2dzdHIgIuGeguGfkuGemOGetuGek+GegOGfhuGejuGfgsKg4Z+UIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU1MworIywgYy1mb3JtYXQKK21zZ2lkICJUaGVyZSBpcyAlZCBjaG9pY2UgZm9yIHRoZSBhbHRlcm5hdGl2ZSAlcyAocHJvdmlkaW5nICVzKS4iCittc2dpZF9wbHVyYWwgIlRoZXJlIGFyZSAlZCBjaG9pY2VzIGZvciB0aGUgYWx0ZXJuYXRpdmUgJXMgKHByb3ZpZGluZyAlcykuIgorbXNnc3RyWzBdICIiCittc2dzdHJbMV0gIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NjAKKyMsIGZ1enp5Cittc2dpZCAiU2VsZWN0aW9uIgorbXNnc3RyICLhnp/hn4HhnoXhnoDhn5Lhno/hnrjigIvhnpbhnrfhnpbhno7hn4zhnpPhnrYiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYxCittc2dpZCAiUGF0aCIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2MQorIywgZnV6enkKK21zZ2lkICJQcmlvcml0eSIKK21zZ3N0ciAi4Z6i4Z624Z6R4Z634Z6X4Z624Z6WICVzICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2MQorbXNnaWQgIlN0YXR1cyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU4MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiUHJlc3MgZW50ZXIgdG8ga2VlcCB0aGUgY3VycmVudCBjaG9pY2VbKl0sIG9yIHR5cGUgc2VsZWN0aW9uIG51bWJlcjogIgorbXNnc3RyICLhnp/hnoThn5LhnoDhno/hn4vigIvhnoLhn5LhnprhnrbhnpThn4vhnoXhnrvhnoUg4Z6U4Z6J4Z+S4Z6F4Z684Z6bIOGeiuGevuGemOGfkuGelOGeuOKAi+GemuGegOGfkuGen+GetuKAi+Gem+GfhuGek+GetuGfhuGeiuGevuGemFsqXSDhnqzigIvhnpzhnrbhnpnigIvhnpvhn4HhnoHigIvhnofhnpjhn5Lhnprhnr7hnp/CoOGfliAiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNzIxCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vdCByZXBsYWNpbmcgJXMgd2l0aCBhIGxpbmsuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNzYyCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbid0IGluc3RhbGwgdW5rbm93biBjaG9pY2UgJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInNraXAgY3JlYXRpb24gb2YgJXMgYmVjYXVzZSBhc3NvY2lhdGVkIGZpbGUgJXMgKG9mIGxpbmsgZ3JvdXAgJXMpIGRvZXNuJ3QgIgorImV4aXN0LiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTc5MAorIywgYy1mb3JtYXQKK21zZ2lkICJub3QgcmVtb3ZpbmcgJXMgc2luY2UgaXQncyBub3QgYSBzeW1saW5rLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA0MSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA0NworIywgYy1mb3JtYXQKK21zZ2lkICJDYWxsICVzLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA1MQorIywgYy1mb3JtYXQKK21zZ2lkICJBbHRlcm5hdGl2ZSAlcyB1bmNoYW5nZWQgYmVjYXVzZSBjaG9pY2UgJXMgaXMgbm90IGF2YWlsYWJsZS4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNTUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIlNraXAgdW5rbm93biBhbHRlcm5hdGl2ZSAlcy4iCittc2dzdHIgIuGemOGet+Gek+KAi+GeouGetuGeheKAi+GemuGegOKAi+Geh+GemOGfkuGemuGevuGenyBgJXMnwqDhn5QiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDc3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJsaW5lIHRvbyBsb25nIG9yIG5vdCB0ZXJtaW5hdGVkIHdoaWxlIHRyeWluZyB0byByZWFkICVzIgorbXNnc3RyICLhnoXhnrvhnoTigIvhnq/hnoDhnp/hnrbhnprigIvhnorhn4LhnpvigIvhnpjhnrfhnpPigIvhnprhn4bhnpbhnrnhnoTigIvhnpPhn4XigIvhnoDhn5LhnpPhnrvhnoQgJXMg4Z6A4Z+S4Z6T4Z674Z6EICUuMjU1cyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwOTAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxMDMKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTEzCisjLCBjLWZvcm1hdAorbXNnaWQgIlNraXAgaW52YWxpZCBsaW5lOiAlcyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjEzMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAicmVuYW1pbmcgJXMgbGluayBmcm9tICVzIHRvICVzLiIKK21zZ3N0ciAi4Z6U4Z+S4Z6K4Z684Z6a4oCL4Z6I4Z+S4Z6Y4Z+E4Z+H4oCL4Z6P4Z+G4Z6OICVzIOGeluGeuCAlcyDhnpHhn4XhnofhnrYgJXPCoOGflCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxNzMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInJlbmFtaW5nICVzIHNsYXZlIGxpbmsgZnJvbSAlcyB0byAlcy4iCittc2dzdHIgIuGelOGfkuGeiuGevOGemuKAi+GeiOGfkuGemOGfhOGfh+KAi+Gej+GfhuGejuKAi+GegOGevOGek+GeheGfhSAlcyDhnpbhnrggJXMg4Z6R4Z+F4Z6H4Z62ICVzwqDhn5QiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTg5CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIG5hbWUgKCVzKSBtdXN0IG5vdCBjb250YWluICcvJyBhbmQgc3BhY2VzLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE5MworIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBsaW5rIGlzIG5vdCBhYnNvbHV0ZSBhcyBpdCBzaG91bGQgYmU6ICVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTk3CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIHBhdGggaXMgbm90IGFic29sdXRlIGFzIGl0IHNob3VsZCBiZTogJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgbWFzdGVyOiBpdCBpcyBhIHNsYXZlIG9mICVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjMyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjY3CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIGxpbmsgJXMgaXMgYWxyZWFkeSBtYW5hZ2VkIGJ5ICVzLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI0MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgcGF0aCAlcyBkb2Vzbid0IGV4aXN0LiIKK21zZ3N0ciAi4Z6W4Z+S4Z6a4Z6Y4Z624Z6TwqDhn5YgLS11cGRhdGUg4Z6U4Z624Z6T4oCL4Z6V4Z+S4Z6K4Z6b4Z+LIOGelOGfieGeu+Gek+GfkuGej+GfgiAlcyDhnpjhnrfhnpPigIvhnpHhnrbhnpPhn4vigIvhnpjhnrbhnpMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjU0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBzbGF2ZSBvZiAlczogaXQgaXMgYSBtYXN0ZXIgYWx0ZXJuYXRpdmUuIgorbXNnc3RyICLhnofhnpjhn5Lhnprhnr7hnp/hnp/hnpjhn5LhnprhnrbhnpThn4sgJXMg4Z6F4Z6E4Z+S4Z6i4Z674Z6b4Z6R4Z+FICVzIC0g4Z6K4Z+C4Z6b4Z6a4Z6A4Z6Y4Z634Z6T4Z6D4Z6+4Z6JwqDhn5QgIOGemeGegOKAi+GeheGfgeGeieKAi+GeluGeuOKAi+GelOGeieGfkuGeh+GeuOKAi+GemuGelOGen+Gfi+KAi+Geh+GemOGfkuGemuGevuGen8Kg4Z+UIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI1OAorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBzbGF2ZSBvZiAlczogaXQgaXMgYSBzbGF2ZSBvZiAlcyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI3OAorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBsaW5rICVzIGlzIGFscmVhZHkgbWFuYWdlZCBieSAlcyAoc2xhdmUgb2YgJXMpLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjMyNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGFyZ3VtZW50IGAlcyciCittc2dzdHIgIuGemOGet+Gek+KAi+Gen+GfkuGeguGetuGem+Gfi+KAi+GeouGetuGeguGeu+GemeGemOGfieGehOGfi+KAiyBgJXMnIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM0MworbXNnaWQgIi0taW5zdGFsbCBuZWVkcyA8bGluaz4gPG5hbWU+IDxwYXRoPiA8cHJpb3JpdHk+IgorbXNnc3RyICItLWluc3RhbGwg4Z6P4Z+S4Z6a4Z684Z6c4Z6A4Z624Z6aIDzhno/hn4bhno4+IDzhnojhn5Lhnpjhn4Thn4c+IDzhnpXhn5Lhnpvhnrzhnpw+IDzhnqLhnrbhnpHhnrfhnpfhnrbhnpY+IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM0NiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM5NworbXNnaWQgIjxsaW5rPiBhbmQgPHBhdGg+IGNhbid0IGJlIHRoZSBzYW1lIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzQ5Cittc2dpZCAicHJpb3JpdHkgbXVzdCBiZSBhbiBpbnRlZ2VyIgorbXNnc3RyICLhnqLhnrbhnpHhnrfhnpfhnrbhnpbigIvhno/hn5Lhnprhnrzhnpzhno/hn4LigIvhnofhnrbigIvhnoXhn4bhnpPhnr3hnpPigIvhnoLhno/hn4siCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzYyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgPG5hbWU+IDxwYXRoPiIKK21zZ3N0ciAiLS0lcyDhno/hn5LhnprhnrzhnpzhnoDhnrbhnpogPOGeiOGfkuGemOGfhOGfhz4gPOGeleGfkuGem+GevOGenD4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzc2CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgPG5hbWU+IgorbXNnc3RyICItLSVzIOGej+GfkuGemuGevOGenOGegOGetuGemiA84Z6I4Z+S4Z6Y4Z+E4Z+HPiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzODgKK21zZ2lkICItLXNsYXZlIG9ubHkgYWxsb3dlZCB3aXRoIC0taW5zdGFsbCIKK21zZ3N0ciAiLS1zbGF2ZSDhnpThnrbhnpPigIvhnqLhnpPhnrvhnonhn5Lhnonhnrbhno/igIvhno/hn4LigIvhnofhnrbigIvhnpjhnr3hnpkgLS1pbnN0YWxsIOGelOGfieGeu+GejuGfkuGejuGfhOGfhyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzOTAKK21zZ2lkICItLXNsYXZlIG5lZWRzIDxsaW5rPiA8bmFtZT4gPHBhdGg+IgorbXNnc3RyICItLXNsYXZlIOGej+GfkuGemuGevOGenOGegOGetuGemiA84Z6P4Z+G4Z6OPiA84Z6I4Z+S4Z6Y4Z+E4Z+HPiA84Z6V4Z+S4Z6b4Z684Z6cPiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzOTkKKyMsIGMtZm9ybWF0Cittc2dpZCAibmFtZSAlcyBpcyBib3RoIHByaW1hcnkgYW5kIHNsYXZlIgorbXNnc3RyICLhnojhn5Lhnpjhn4Thn4cgJXMg4Z6C4Z664oCL4Z6R4Z624Z+G4Z6E4oCL4Z6Y4Z+BIOGek+Get+GehOKAi+GegOGevOGek+GeheGfhSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAibGluayAlcyBpcyBib3RoIHByaW1hcnkgYW5kIHNsYXZlIgorbXNnc3RyICLhno/hn4bhno4gJXMg4Z6C4Z664oCL4Z6R4Z624Z+G4Z6E4oCL4Z6Y4Z+BIOGek+Get+GehOKAi+GegOGevOGek+GeheGfhSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MjIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSA8ZmlsZT4gYXJndW1lbnQiCittc2dzdHIgIi0tJXMg4Z6P4Z+S4Z6a4Z684Z6c4Z6A4Z624Z6a4oCL4Z6i4Z624Z6C4Z674Z6Z4Z6Y4Z+J4Z6E4Z+L4oCL4Z6P4Z+C4oCL4Z6Y4Z694Z6ZIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQ0OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiBgJXMnIgorbXNnc3RyICLhnpjhnrfhnpPigIvigIvhnp/hn5LhnoLhnrbigIvhnpvhn4vigIvhnofhnpjhn5Lhnprhnr7hnp/igIsgYCVzJyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0NTMKKyMsIGZ1enp5Cittc2dpZCAiIgorIm5lZWQgLS1kaXNwbGF5LCAtLXF1ZXJ5LCAtLWxpc3QsIC0tZ2V0LXNlbGVjdGlvbnMsIC0tY29uZmlnLCAtLXNldCwgLS1zZXQtIgorInNlbGVjdGlvbnMsIC0taW5zdGFsbCwgLS1yZW1vdmUsIC0tYWxsLCAtLXJlbW92ZS1hbGwgb3IgLS1hdXRvIgorbXNnc3RyICIiCisi4Z6P4Z+S4Z6a4Z684Z6c4Z6A4Z624Z6aIC0tZGlzcGxheSwgLS1jb25maWcsIC0tc2V0LCAtLWluc3RhbGwsIC0tcmVtb3ZlLCAtLWFsbCwgLS1yZW1vdmUtYWxsICIKKyLhnqwgLS1hdXRvIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQ5MAorIywgZnV6enkKKyN8IG1zZ2lkICJyZWFkIGVycm9yIG9uIHN0YW5kYXJkIGlucHV0IgorbXNnaWQgIjxzdGFuZGFyZCBpbnB1dD4iCittc2dzdHIgIuGeouGetuGek+KAi+GegOGfhuGeoOGeu+Gen+KAi+GeouGfhuGeluGeuOKAi+GegOGetuGemuKAi+GelOGeieGfkuGeheGevOGem+KAi+Geh+GetuKAi+GegeGfkuGek+GetuGej+GeguGfhuGemuGevCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MDAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MDMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIm5vIGFsdGVybmF0aXZlcyBmb3IgJXMuIgorbXNnc3RyICLhnoLhn5LhnpjhnrbhnpPigIvhnofhnpjhn5Lhnprhnr7igIvhnp/hnpjhn5LhnprhnrbhnpThn4sgJXPCoOGflCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMvJXMgaXMgZGFuZ2xpbmcsIGl0IHdpbGwgYmUgdXBkYXRlZCB3aXRoIGJlc3QgY2hvaWNlLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUzNAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzLyVzIGhhcyBiZWVuIGNoYW5nZWQgKG1hbnVhbGx5IG9yIGJ5IGEgc2NyaXB0KS4gU3dpdGNoaW5nIHRvIG1hbnVhbCAiCisidXBkYXRlcyBvbmx5LiIKK21zZ3N0ciAiIgorIiVzIOGej+GfkuGemuGevOGenOKAi+GelOGetuGek+KAi+GeleGfkuGem+GetuGen+Gfi+GelOGfkuGeiuGevOGemiAo4Z6K4Z+E4Z6Z4oCL4Z6K4Z+DIOGerOKAi+GeiuGfhOGemeKAi+Gen+GfkuGeguGfkuGemuGeuOGelCnCoOGflFxuIgorIuGelOGfkuGeiuGevOGemuGekeGfheKAi+Geh+GetuKAi+GegOGetuGemuKAi+GekuGfkuGenOGevuKAi+GesuGfkuGemeKAi+GekeGetuGek+Gfi+KAi+Gen+GemOGfkOGemeKAi+GeiuGfhOGemeKAi+GeiuGfg+KAi+Gej+GfguKAi+GelOGfieGeu+GejuGfkuGejuGfhOGfh8Kg4Z+UIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU0MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAic2V0dGluZyB1cCBhdXRvbWF0aWMgc2VsZWN0aW9uIG9mICVzLiIKK21zZ3N0ciAi4Z6a4Z+A4Z6U4Z6F4Z+G4oCL4Z6H4Z6Y4Z+S4Z6a4Z6+4Z6f4oCL4Z6f4Z+S4Z6c4Z+Q4Z6Z4Z6U4Z+S4Z6a4Z6c4Z6P4Z+S4Z6P4Z634oCL4Z6a4Z6U4Z6f4Z+LICVzwqDhn5QiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTUxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBmb3IgJXMgbm90IHJlZ2lzdGVyZWQsIG5vdCBzZXR0aW5nLiIKK21zZ3N0ciAi4Z6H4Z6Y4Z+S4Z6a4Z6+4Z6fICVzIOGen+GemOGfkuGemuGetuGelOGfiyAlcyDhnpjhnrfhnpPigIvhnpThnrbhnpPigIvhnoXhnrvhn4figIvhnojhn5Lhnpjhn4Thn4cg4Z6Y4Z634Z6T4oCL4Z6Z4Z6A4oCL4Z6F4Z+B4Z6J4oCL4Z6R4Z+BIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU1NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU2MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiVGhlcmUgaXMgbm8gcHJvZ3JhbSB3aGljaCBwcm92aWRlcyAlcy4iCittc2dzdHIgIiIKKyLhnpjhnrbhnpPigIvhno/hn4LigIvhnoDhnpjhn5LhnpjhnpzhnrfhnpLhnrjigIvhno/hn4Ig4Z+hIOGelOGfieGeu+GejuGfkuGejuGfhOGfh+KAi+GeiuGfguGem+KAi+GeleGfkuGeiuGem+GfiyAlc1xuIgorIiglcynCoOGflCDhnoLhn5LhnpjhnrbhnpPigIvhnqLhn5LhnpzhnrjigIvhno/hn5LhnprhnrzhnpzigIvhnoDhn4bhno7hno/hn4vigIvhnprhnoXhnpPhnrbhnp/hnpjhn5Lhnpbhn5DhnpPhn5LhnpLCoOGflFxuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU2NSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU3NQorbXNnaWQgIk5vdGhpbmcgdG8gY29uZmlndXJlLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU3MworIywgYy1mb3JtYXQKK21zZ2lkICJUaGVyZSBpcyBvbmx5IG9uZSBhbHRlcm5hdGl2ZSBpbiBsaW5rIGdyb3VwICVzOiAlcyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU4NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgZm9yICVzIG5vdCByZWdpc3RlcmVkLCBub3QgcmVtb3ZpbmcuIgorbXNnc3RyICLhnofhnpjhn5Lhnprhnr7hnp8gJXMg4Z6f4Z6Y4Z+S4Z6a4Z624Z6U4Z+LICVzIOGemOGet+Gek+KAi+GelOGetuGek+KAi+GeheGeu+Gfh+KAi+GeiOGfkuGemOGfhOGfhyDhnpjhnrfhnpPigIvhnpnhnoDigIvhnoXhn4HhnonigIvhnpHhn4EiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTkyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJyZW1vdmluZyBtYW51YWxseSBzZWxlY3RlZCBhbHRlcm5hdGl2ZSAtIHN3aXRjaGluZyAlcyB0byBhdXRvIG1vZGUiCittc2dzdHIgIuGemeGegOKAi+Geh+GemOGfkuGemuGevuGen+KAi+GeiuGfguGem+KAi+GelOGetuGek+KAi+Geh+GfkuGemuGevuGen+KAi+GeheGfgeGeieKAi+GeiuGfhOGemeKAi+GeiuGfgyAtIOGelOGfkuGeiuGevOGemuKAi+GekeGfheKAi+Geh+GetuKAi+GemuGelOGfgOGelOKAi+Gen+GfkuGenOGfkOGemeGelOGfkuGemuGenOGej+GfkuGej+GetyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MTcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImF1dG9tYXRpYyB1cGRhdGVzIG9mICVzLyVzIGFyZSBkaXNhYmxlZCwgbGVhdmluZyBpdCBhbG9uZS4iCittc2dzdHIgIuGegOGetuGemuKAi+GekuGfkuGenOGevuGesuGfkuGemeKAi+GekeGetuGek+Gfi+KAi+Gen+GemOGfkOGemeKAi+GeiuGfhOGemeKAi+Gen+GfkuGenOGfkOGemeGelOGfkuGemuGenOGej+GfkuGej+Get+KAi+GemuGelOGen+GfiyAlcyDhno/hn5LhnprhnrzhnpzigIvhnpThnrbhnpPigIvhnpjhnrfhnpPigIvhnqLhnpPhnrvhnonhn5Lhnonhnrbhno8g4Z6R4Z674Z6A4oCL4Z6c4Z624oCL4Z6y4Z+S4Z6Z4oCL4Z6T4Z+F4oCL4Z6P4Z+C4Z6v4Z6EwqDhn5QiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjE5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ0byByZXR1cm4gdG8gYXV0b21hdGljIHVwZGF0ZXMgdXNlICclcyAtLWF1dG8gJXMnLiIKK21zZ3N0ciAi4Z6K4Z6+4Z6Y4Z+S4Z6U4Z644oCL4Z6P4Z+S4Z6a4Z6h4oCL4Z6U4Z+L4Z6R4Z+F4oCL4Z6A4Z624Z6a4oCL4Z6S4Z+S4Z6c4Z6+4oCL4Z6y4Z+S4Z6Z4oCL4Z6R4Z624Z6T4Z+L4oCL4Z6f4Z6Y4Z+Q4Z6Z4oCL4Z6K4Z+E4Z6Z4oCL4Z6f4Z+S4Z6c4Z+Q4Z6Z4Z6U4Z+S4Z6a4Z6c4Z6P4Z+S4Z6P4Z63IOGelOGfkuGemuGeviBg4Z6H4Z6Y4Z+S4Z6a4Z6+4Z6f4oCL4Z6S4Z+S4Z6c4Z6+4oCL4Z6y4Z+S4Z6Z4Z6R4Z624Z6T4Z+L4oCL4Z6f4Z6Y4Z+Q4Z6ZIC0tYXV0byAlcycuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYzNgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidXNpbmcgJXMgdG8gcHJvdmlkZSAlcyAoJXMpIGluICVzLiIKK21zZ3N0ciAi4Z6A4Z624Z6a4oCL4Z6U4Z+S4Z6a4Z6+IGAlcycg4Z6K4Z6+4Z6Y4Z+S4Z6U4Z644oCL4Z6V4Z+S4Z6K4Z6b4Z+LIGAlcyfCoOGflCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImZvcmNpbmcgcmVpbnN0YWxsYXRpb24gb2YgYWx0ZXJuYXRpdmUgJXMgYmVjYXVzZSBsaW5rIGdyb3VwICVzIGlzIGJyb2tlbi4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY3VycmVudCBhbHRlcm5hdGl2ZSAlcyBpcyB1bmtub3duLCBzd2l0Y2hpbmcgdG8gJXMgZm9yIGxpbmsgZ3JvdXAgJXMuIgorbXNnc3RyICIiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiaXQgaXMgYSBzbGF2ZSBvZiAlcyIKKyN+IG1zZ3N0ciAiIOGegOGevOGek+GeheGfhSAlc8Kg4Z+WICVzIgorCisjLCBmdXp6eQorI358IG1zZ2lkICJjYW5ub3Qgc3RhdCBvbGQgbmFtZSBgJXMnOiAlcyIKKyN+IG1zZ2lkICJjYW5ub3Qgc3RhdCAlczogJXMiCisjfiBtc2dzdHIgIuGemOGet+Gek+KAi+GeouGetuGeheKAi+GeheGetuGelOGfi+KAi+GeleGfkuGeiuGevuGemOKAi+GeiOGfkuGemOGfhOGfh+KAi+GeheGetuGen+GfiyBgJXMnwqDhn5YgJXMiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgIiVzOiBjb3B5aW5nICVzIHRvICVzIGZhaWxlZCwgZ2l2aW5nIHVwOiAlcyIKKyN+IG1zZ2lkICJzY2FuIG9mICVzIGZhaWxlZDogJXMiCisjfiBtc2dzdHIgIiVzwqDhn5Yg4Z6F4Z6Y4Z+S4Z6b4Z6EICVzIOGekeGfhSAlcyDhnpThnrbhnpPigIvhnpThnprhnrbhnofhn5Dhnpkg4Z6U4Z+E4Z+H4Z6U4Z6E4Z+LwqDhn5YgJXMiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgImZhaWxlZCB0byBleGVjICVzIgorI34gbXNnaWQgImZhaWxlZCB0byBleGVjdXRlICVzOiAlcyIKKyN+IG1zZ3N0ciAi4Z6U4Z624Z6T4oCL4Z6U4Z6a4Z624Z6H4Z+Q4Z6Z4oCL4Z6A4Z+S4Z6T4Z674Z6E4oCL4Z6A4Z624Z6a4oCL4Z6U4Z+S4Z6a4Z6P4Z634Z6U4Z6P4Z+S4Z6P4Z63ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIG1ha2UgJXMgYSBzeW1saW5rIHRvICVzOiAlcyIKKyN+IG1zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6U4Z6E4Z+S4Z6A4Z6+4Z6P4oCL4Z6P4Z+G4Z6O4oCL4Z6T4Z634Z6Y4Z634Z6P4Z+S4Z6P4oCL4Z6f4Z6J4Z+S4Z6J4Z62ICVzIOGekeGfhSAlc8Kg4Z+WICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgJXMgYXMgJXM6ICVzIgorI34gbXNnc3RyICLhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnorhn4bhnqHhnr7hnoQgJXMg4Z6H4Z62ICVzwqDhn5YgJXMiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAid2hpbGUgd3JpdGluZyAlczogJXMiCisjfiBtc2dzdHIgIuGegOGfhuGeoOGeu+Gen+KAi+GegOGfkuGek+Geu+GehOKAi+GegOGetuGemuKAi+Gen+GemuGen+GfgeGemiBzdGRvdXTCoOGfliAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byByZWFkICVzOiAlcyIKKyN+IG1zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6i4Z624Z6TICVzwqDhn5YgJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gY2xvc2UgJXM6ICVzIgorI34gbXNnc3RyICLhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnpThnrfhnpEgJXPCoOGfliAlcyIKKworIywgZnV6enkKKyN+fCBtc2dpZCAidW5hYmxlIHRvIHdyaXRlICVzOiAlcyIKKyN+IG1zZ2lkICJjYW5ub3Qgd3JpdGUgJXM6ICVzIgorI34gbXNnc3RyICLhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnp/hnprhnp/hn4HhnpogJXPCoOGfliAlcyIKKworIywgZnV6enkKKyN+fCBtc2dpZCAidW5hYmxlIHRvIHJlbmFtZSAlcyB0byAlczogJXMiCisjfiBtc2dpZCAidW5hYmxlIHRvIHJlbmFtZSBmaWxlICclcycgdG8gJyVzJyIKKyN+IG1zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6U4Z+S4Z6K4Z684Z6a4oCL4Z6I4Z+S4Z6Y4Z+E4Z+HICVzIOGekeGfheKAi+Geh+GetiAlc8Kg4Z+WICVzIgorCisjfiBtc2dpZCAibWFsbG9jIGZhaWxlZCAoJWxkIGJ5dGVzKSIKKyN+IG1zZ3N0ciAibWFsbG9jIOGelOGetuGek+KAi+GelOGemuGetuGeh+GfkOGemeKAiyAoJWxkIOGelOGfgykiCisKKyN+IG1zZ2lkICJyZWFsbG9jIGZhaWxlZCAoJWxkIGJ5dGVzKSIKKyN+IG1zZ3N0ciAicmVhbGxvYyDhnpThnrbhnpPigIvhnpThnprhnrbhnofhn5DhnpnigIsgKCVsZCDhnpThn4PigIspIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHVuYnVmZmVyIGAlLjI1NXMnIgorI34gbXNnc3RyICLhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnoDhn4bhno7hno/hn4vigIvhnp/hno/hnrfigIvhnpThno7hn5Lhnorhn4Thn4figIvhnqLhnrbhnp/hnpPhn5LhnpMgYCUuMjU1cyciCisKKyN+IG1zZ2lkICJwYXJ0IGZpbGUgYCUuMjUwcycgaGFzIHRyYWlsaW5nIGdhcmJhZ2UiCisjfiBtc2dzdHIgIuGeleGfkuGek+GfguGegOKAi+Ger+GegOGen+GetuGemiBgJS4yNTBzJyDhnpjhnrbhnpPigIvhnoDhnpPhn5LhnpHhnrvhnpnhnqXhno/igIvhnpThnrbhnpPigIvhnoDhnrbhnpoiCisKKyN+IG1zZ2lkICJzaXplICU3ZCBvY2N1cnMgJTVkIHRpbWVzXG4iCisjfiBtc2dzdHIgIuGekeGfhuGeoOGfhiAlN2Qg4Z6A4Z6+4Z6P4Z6h4Z6+4Z6EICU1ZCDhnorhnoRcbiIKKworI34gbXNnaWQgIm91dCBvZiBtZW1vcnkgcHVzaGluZyBlcnJvciBoYW5kbGVyOiAiCisjfiBtc2dzdHIgIuGeouGen+Gfi+KAi+Gen+Gej+Get+KAi+GegOGfkuGek+Geu+GehOGegOGetuGemuGeh+GemOGfkuGemuGeu+GeieKAi+GegOGemOGfkuGemOGenOGet+GekuGeuOKAi+GeiuGfhOGfh+Gen+GfkuGemuGetuGemeKAi+GegOGfhuGeoOGeu+GenyDhn5YiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gdW5sb2NrIGRwa2cgc3RhdHVzIGRhdGFiYXNlIgorI34gbXNnc3RyICLhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnorhn4Thn4fhnp/hn4TigIvhnp/hn5LhnpDhnrbhnpPhnpfhnrbhnpbigIvhnpjhnrzhnpvhnorhn5LhnovhnrbhnpPigIvhnpHhnrfhnpPhn5LhnpPhnpPhn5DhnpnhnprhnpThnp/hn4vigIsgZHBrZyDhnpThnrbhnpPigIvhnpHhn4HigIsiCisKKyN+IG1zZ2lkICJjb3B5IGluZm8gZmlsZSBgJS4yNTVzJyIKKyN+IG1zZ3N0ciAi4Z6F4Z6Y4Z+S4Z6b4Z6E4oCL4Z6v4Z6A4Z6f4Z624Z6a4oCL4Z6W4Z+Q4Z6P4Z+M4Z6Y4Z624Z6TIGAlLjI1NXMnIgorCisjfiBtc2dpZCAicGFyc2UgZXJyb3IiCisjfiBtc2dzdHIgIuGeieGfguGegOKAi+GegOGfhuGeoOGeu+GenyIKKworI34gbXNnaWQgImZhaWxlZCB0byB3cml0ZSBwYXJzaW5nIHdhcm5pbmciCisjfiBtc2dzdHIgIuGelOGetuGek+KAi+GelOGemuGetuGeh+GfkOGemeKAi+GegOGfkuGek+Geu+GehOKAi+GegOGetuGemuKAi+Gen+GemuGen+GfgeGemuKAi+GegOGetuGemuKAi+GeluGfkuGemuGemOGetuGek+KAi+GeieGfguGegOKAiyIKKworI34gbXNnaWQgImZhaWxlZCB0byBydW4gJXMgKCUuMjUwcykiCisjfiBtc2dzdHIgIuGelOGetuGek+KAi+GelOGemuGetuGeh+GfkOGemeKAi+GegOGfkuGek+Geu+GehOKAi+GegOGetuGemuKAi+GemuGej+GfiyAlcyAoJS4yNTBzKSIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIHNoZWxsICglLjI1MHMpIgorI34gbXNnc3RyICLhnpThnrbhnpPigIvhnpThnprhnrbhnofhn5DhnpnigIvhnoDhn5LhnpPhnrvhnoTigIvhnoDhnrbhnprigIvhnpThn5Lhnprhno/hnrfhnpThno/hn5Lhno/hnrfigIvhnp/hn4LhnpsgKCUuMjUwcykiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gY2hlY2sgZm9yIGV4aXN0ZW5jZSBvZiBgJS4yNTBzJyIKKyN+IG1zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6W4Z634Z6T4Z634Z6P4Z+S4Z6Z4oCL4Z6X4Z624Z6W4oCL4Z6Y4Z624Z6T4oCL4Z6f4Z+S4Z6a4Z624Z6U4Z+L4oCL4Z6a4Z6U4Z6f4Z+LIGAlLjI1MHMnIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgcm0gZm9yIGNsZWFudXAiCisjfiBtc2dzdHIgIuGelOGetuGek+KAi+GelOGemuGetuGeh+GfkOGemeKAi+GegOGfkuGek+Geu+GehOKAi+GegOGetuGemuKAi+GelOGfkuGemuGej+Get+GelOGej+GfkuGej+GetyBybSDhnorhnr7hnpjhn5LhnpThnrjigIvhnp/hnpjhn5LhnqLhnrbhno8iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiIgorI34gIiVzIGRlYnVnZ2luZyBvcHRpb24sIC0tZGVidWc9PG9jdGFsPiBvciAtRDxvY3RhbD46XG4iCisjfiAiXG4iCisjfiAiIG51bWJlciAgcmVmLiBpbiBzb3VyY2UgICBkZXNjcmlwdGlvblxuIgorI34gIiAgICAgIDEgICBnZW5lcmFsICAgICAgICAgICBHZW5lcmFsbHkgaGVscGZ1bCBwcm9ncmVzcyBpbmZvcm1hdGlvblxuIgorI34gIiAgICAgIDIgICBzY3JpcHRzICAgICAgICAgICBJbnZvY2F0aW9uIGFuZCBzdGF0dXMgb2YgbWFpbnRhaW5lciBzY3JpcHRzXG4iCisjfiAiICAgICAxMCAgIGVhY2hmaWxlICAgICAgICAgIE91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZFxuIgorI34gIiAgICAxMDAgICBlYWNoZmlsZWRldGFpbCAgICBMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZFxuIgorI34gIiAgICAgMjAgICBjb25mZiAgICAgICAgICAgICBPdXRwdXQgZm9yIGVhY2ggY29uZmlndXJhdGlvbiBmaWxlXG4iCisjfiAiICAgIDIwMCAgIGNvbmZmZGV0YWlsICAgICAgIExvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZVxuIgorI34gIiAgICAgNDAgICBkZXBjb24gICAgICAgICAgICBEZXBlbmRlbmNpZXMgYW5kIGNvbmZsaWN0c1xuIgorI34gIiAgICA0MDAgICBkZXBjb25kZXRhaWwgICAgICBMb3RzIG9mIGRlcGVuZGVuY2llcy9jb25mbGljdHMgb3V0cHV0XG4iCisjfiAiICAxMDAwMCAgIHRyaWdnZXJzICAgICAgICAgIFRyaWdnZXIgYWN0aXZhdGlvbiBhbmQgcHJvY2Vzc2luZ1xuIgorI34gIiAgMjAwMDAgICB0cmlnZ2Vyc2RldGFpbCAgICBMb3RzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnNcbiIKKyN+ICIgIDQwMDAwICAgdHJpZ2dlcnNzdHVwaWQgICAgU2lsbHkgYW1vdW50cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzXG4iCisjfiAiICAgMTAwMCAgIHZlcnl2ZXJib3NlICAgICAgIExvdHMgb2YgZHJpdmVsIGFib3V0IGVnIHRoZSBkcGtnL2luZm8gIgorI34gImRpcmVjdG9yeVxuIgorI34gIiAgIDIwMDAgICBzdHVwaWRseXZlcmJvc2UgICBJbnNhbmUgYW1vdW50cyBvZiBkcml2ZWxcbiIKKyN+ICJcbiIKKyN+ICJEZWJ1Z2dpbmcgb3B0aW9ucyBhcmUgYmUgbWl4ZWQgdXNpbmcgYml0d2lzZS1vci5cbiIKKyN+ICJOb3RlIHRoYXQgdGhlIG1lYW5pbmdzIGFuZCB2YWx1ZXMgYXJlIHN1YmplY3QgdG8gY2hhbmdlLlxuIgorI34gbXNnc3RyICIiCisjfiAi4Z6H4Z6Y4Z+S4Z6a4Z6+4Z6f4Z6U4Z+G4Z6U4Z624Z6P4Z+L4Z6A4Z+G4Z6g4Z674Z6fICVzIC0tZGVidWc9PG9jdGFsPiDhnqwgLUQ8b2N0YWw+wqDhn5ZcbiIKKyN+ICJcbiIKKyN+ICIg4Z6b4Z+B4Z6B4oCL4Z6Z4Z+E4Z6E4oCL4Z6T4Z+F4oCL4Z6A4Z+S4Z6T4Z674Z6E4oCL4Z6U4Z+S4Z6a4Z6X4Z6WICAg4Z6f4Z+B4Z6F4Z6A4Z+S4Z6P4Z644oCL4Z6W4Z634Z6W4Z6O4Z+M4Z6T4Z62XG4iCisjfiAiICAgICAgMSAgIGdlbmVyYWwgICAgICAgICAgIOGeluGfkOGej+GfjOGemOGetuGek+KAi+KAi+GenOGejOGfkuGejeGek+Gel+GetuGeluKAi+KAi+GeiuGfj+KAi+KAi+GemOGetuGek+KAi+GelOGfkuGemuGemeGfhOGeh+Gek+GfjeKAi+Geh+GetuKAi+GekeGevOGekeGfhVxuIgorI34gIiAgICAgIDIgICBzY3JpcHRzICAgICAgICAgICDhnqDhn4Ug4Z6T4Z634Z6E4oCL4Z6U4Z6E4Z+S4Z6g4Z624Z6J4oCL4Z6f4Z+S4Z6Q4Z624Z6T4Z6X4Z624Z6W4oCL4Z6a4Z6U4Z6f4Z+L4oCL4Z6f4Z+S4Z6C4Z+S4Z6a4Z644Z6U4oCL4Z6a4Z6U4Z6f4Z+L4oCL4Z6i4Z+S4Z6T4Z6A4oCL4Z6Q4Z+C4Z6R4Z624Z+GXG4iCisjfiAiICAgICAxMCAgIGVhY2hmaWxlICAgICAgICAgIOGem+GekeGfkuGekuGeleGem+KAi+Gen+GemOGfkuGemuGetuGelOGfi+KAi+Ger+GegOGen+GetuGemuKAi+Gek+GeuOGemOGeveGemeGfl+GeiuGfguGem+GelOGetuGek+GeiuGfhuGejuGevuGemuGegOGetuGemlxuIgorI34gIiAgICAxMDAgICBlYWNoZmlsZWRldGFpbCAgICDhnpvhnpHhn5LhnpLhnpXhnpvigIvhnofhnrbigIvhnoXhn5Lhnprhnr7hnpPigIvhnp/hnpjhn5LhnprhnrbhnpThn4vigIvhnq/hnoDhnp/hnrbhnprigIvhnpPhnrjhnpjhnr3hnpnhn5figIvhnorhn4LhnpvigIvhnpThnrbhnpPigIvhnorhn4bhno7hnr7hnprigIvhnoDhnrbhnppcbiIKKyN+ICIgICAgIDIwICAgY29uZmYgICAgICAgICAgICAg4Z6b4Z6R4Z+S4Z6S4Z6V4Z6b4oCL4Z6f4Z6Y4Z+S4Z6a4Z624Z6U4Z+L4oCL4Z6v4Z6A4Z6f4Z624Z6a4oCL4Z6A4Z+G4Z6O4Z6P4Z+L4oCL4Z6a4Z6F4Z6T4Z624Z6f4Z6Y4Z+S4Z6W4Z+Q4Z6T4Z+S4Z6S4oCL4Z6T4Z644Z6Y4Z694Z6Z4Z+XXG4iCisjfiAiICAgIDIwMCAgIGNvbmZmZGV0YWlsICAgICAgIOGem+GekeGfkuGekuGeleGem+KAi+Geh+GetuKAi+GeheGfkuGemuGevuGek+KAi+Gen+GemOGfkuGemuGetuGelOGfi+KAi+Ger+GegOGen+GetuKAi+GemuGegOGfhuGejuGej+Gfi+KAi+GemuGeheGek+GetuGen+GemOGfkuGeluGfkOGek+GfkuGekuKAi+Gek+GeuOGemOGeveGemeGfl1xuIgorI34gIiAgICAgNDAgICBkZXBjb24gICAgICAgICAgICDhnpfhnrbhnpbhnqLhnrbhnp/hn5Lhnprhn5Dhnpkg4Z6T4Z634Z6E4Z6A4Z624Z6a4oCL4Z6U4Z+J4Z+H4oCL4Z6R4Z6E4Z+S4Z6C4Z634Z6FXG4iCisjfiAiICAgIDQwMCAgIGRlcGNvbmRldGFpbCAgICAgIOGem+GekeGfkuGekuGeleGem+KAi+GemuGelOGen+Gfi+KAi+Gel+GetuGeluGeouGetuGen+GfkuGemuGfkOGemS/hnoDhnrbhnprigIvhnpThn4nhn4figIvhnpHhnoThn5LhnoLhnrfhnoXigIvhnofhnrbigIvhnoXhn5Lhnprhnr7hnpNcbiIKKyN+ICIgICAxMDAwICAgdmVyeXZlcmJvc2UgICAgICAg4Z6W4Z634Z6W4Z6O4Z+M4Z6T4Z624oCL4Z6H4Z624oCL4Z6F4Z+S4Z6a4Z6+4Z6T4oCL4Z6i4Z+G4Z6W4Z64IGVnIOGekOGej+KAi+GemuGelOGen+GfiyBkcGtnL2luZm8gXG4iCisjfiAiICAgMjAwMCAgIHN0dXBpZGx5dmVyYm9zZSAgIEluc2FuZSBhbW91bnRzIG9mIGRyaXZlbFxuIgorI34gIlxuIgorI34gIuGeh+GemOGfkuGemuGevuGen+KAi+GegOGetuGemuKAi+GelOGfhuGelOGetuGej+Gfi+KAi+GegOGfhuGeoOGeu+Gen+KAi+Gej+GfkuGemuGevOGenOKAi+GelOGetuGek+KAi+Geh+GeveGen+Geh+Geu+Gem+KAi+GeiuGfhOGemeKAi+GelOGfkuGemuGeviBiaXR3aXNlLeGerMKg4Z+UXG4iCisjfiAi4Z6F4Z+G4Z6O4Z624Z+G4oCL4Z6Q4Z62IOGeouGej+GfkuGekOGek+GfkOGemSDhnpPhnrfhnoTigIvhno/hnpjhn5Lhnpvhn4PigIvhnoLhnrrigIvhnofhnrbigIvhnpThn5LhnprhnpLhnrbhnpPhnpThnpHigIvhno/hn5LhnprhnrzhnpzigIvhnpXhn5Lhnpvhnrbhnp/hn4vhnpThn5LhnorhnrzhnprCoOGflFxuIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICIlcyBmb3JjaW5nIG9wdGlvbnMgLSBjb250cm9sIGJlaGF2aW91ciB3aGVuIHByb2JsZW1zIGZvdW5kOlxuIgorI34gIiAgd2FybiBidXQgY29udGludWU6ICAtLWZvcmNlLTx0aGluZz4sPHRoaW5nPiwuLi5cbiIKKyN+ICIgIHN0b3Agd2l0aCBlcnJvcjogICAgLS1yZWZ1c2UtPHRoaW5nPiw8dGhpbmc+LC4uLiB8IC0tbm8tZm9yY2UtIgorI34gIjx0aGluZz4sLi4uXG4iCisjfiAiIEZvcmNpbmcgdGhpbmdzOlxuIgorI34gIiAgYWxsIFshXSAgICAgICAgICAgICAgICBTZXQgYWxsIGZvcmNlIG9wdGlvbnNcbiIKKyN+ICIgIGRvd25ncmFkZSBbKl0gICAgICAgICAgUmVwbGFjZSBhIHBhY2thZ2Ugd2l0aCBhIGxvd2VyIHZlcnNpb25cbiIKKyN+ICIgIGNvbmZpZ3VyZS1hbnkgICAgICAgICAgQ29uZmlndXJlIGFueSBwYWNrYWdlIHdoaWNoIG1heSBoZWxwIHRoaXMgb25lXG4iCisjfiAiICBob2xkICAgICAgICAgICAgICAgICAgIFByb2Nlc3MgaW5jaWRlbnRhbCBwYWNrYWdlcyBldmVuIHdoZW4gb24gaG9sZFxuIgorI34gIiAgYmFkLXBhdGggICAgICAgICAgICAgICBQQVRIIGlzIG1pc3NpbmcgaW1wb3J0YW50IHByb2dyYW1zLCBwcm9ibGVtcyAiCisjfiAibGlrZWx5XG4iCisjfiAiICBub3Qtcm9vdCAgICAgICAgICAgICAgIFRyeSB0byAoZGUpaW5zdGFsbCB0aGluZ3MgZXZlbiB3aGVuIG5vdCByb290XG4iCisjfiAiICBvdmVyd3JpdGUgICAgICAgICAgICAgIE92ZXJ3cml0ZSBhIGZpbGUgZnJvbSBvbmUgcGFja2FnZSB3aXRoIGFub3RoZXJcbiIKKyN+ICIgIG92ZXJ3cml0ZS1kaXZlcnRlZCAgICAgT3ZlcndyaXRlIGEgZGl2ZXJ0ZWQgZmlsZSB3aXRoIGFuIHVuZGl2ZXJ0ZWQgIgorI34gInZlcnNpb25cbiIKKyN+ICIgIGJhZC12ZXJpZnkgICAgICAgICAgICAgSW5zdGFsbCBhIHBhY2thZ2UgZXZlbiBpZiBpdCBmYWlscyBhdXRoZW50aWNpdHkgIgorI34gImNoZWNrXG4iCisjfiAiICBkZXBlbmRzLXZlcnNpb24gWyFdICAgIFR1cm4gZGVwZW5kZW5jeSB2ZXJzaW9uIHByb2JsZW1zIGludG8gd2FybmluZ3NcbiIKKyN+ICIgIGRlcGVuZHMgWyFdICAgICAgICAgICAgVHVybiBhbGwgZGVwZW5kZW5jeSBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzXG4iCisjfiAiICBjb25mbmV3IFshXSAgICAgICAgICAgIEFsd2F5cyB1c2UgdGhlIG5ldyBjb25maWcgZmlsZXMsIGRvbid0IHByb21wdFxuIgorI34gIiAgY29uZm9sZCBbIV0gICAgICAgICAgICBBbHdheXMgdXNlIHRoZSBvbGQgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHRcbiIKKyN+ICIgIGNvbmZkZWYgWyFdICAgICAgICAgICAgVXNlIHRoZSBkZWZhdWx0IG9wdGlvbiBmb3IgbmV3IGNvbmZpZyBmaWxlcyBpZiAiCisjfiAib25lXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIGlzIGF2YWlsYWJsZSwgZG9uJ3QgcHJvbXB0LiBJZiBubyBkZWZhdWx0IGNhbiBiZSAiCisjfiAiZm91bmQsXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIHlvdSB3aWxsIGJlIHByb21wdGVkIHVubGVzcyBvbmUgb2YgdGhlIGNvbmZvbGQgIgorI34gIm9yXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmZuZXcgb3B0aW9ucyBpcyBhbHNvIGdpdmVuXG4iCisjfiAiICBjb25mbWlzcyBbIV0gICAgICAgICAgIEFsd2F5cyBpbnN0YWxsIG1pc3NpbmcgY29uZmlnIGZpbGVzXG4iCisjfiAiICBjb25mYXNrIFshXSAgICAgICAgICAgIE9mZmVyIHRvIHJlcGxhY2UgY29uZmlnIGZpbGVzIHdpdGggbm8gbmV3ICIKKyN+ICJ2ZXJzaW9uc1xuIgorI34gIiAgYnJlYWtzIFshXSAgICAgICAgICAgICBJbnN0YWxsIGV2ZW4gaWYgaXQgd291bGQgYnJlYWsgYW5vdGhlciBwYWNrYWdlXG4iCisjfiAiICBjb25mbGljdHMgWyFdICAgICAgICAgIEFsbG93IGluc3RhbGxhdGlvbiBvZiBjb25mbGljdGluZyBwYWNrYWdlc1xuIgorI34gIiAgYXJjaGl0ZWN0dXJlIFshXSAgICAgICBQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyBhcmNoaXRlY3R1cmVcbiIKKyN+ICIgIG92ZXJ3cml0ZS1kaXIgWyFdICAgICAgT3ZlcndyaXRlIG9uZSBwYWNrYWdlJ3MgZGlyZWN0b3J5IHdpdGggYW5vdGhlcidzICIKKyN+ICJmaWxlXG4iCisjfiAiICB1bnNhZmUtaW8gWyFdICAgICAgICAgIERvIG5vdCBwZXJmb3JtIHNhZmUgSS9PIG9wZXJhdGlvbnMgd2hlbiAiCisjfiAidW5wYWNraW5nXG4iCisjfiAiICByZW1vdmUtcmVpbnN0cmVxIFshXSAgIFJlbW92ZSBwYWNrYWdlcyB3aGljaCByZXF1aXJlIGluc3RhbGxhdGlvblxuIgorI34gIiAgcmVtb3ZlLWVzc2VudGlhbCBbIV0gICBSZW1vdmUgYW4gZXNzZW50aWFsIHBhY2thZ2VcbiIKKyN+ICJcbiIKKyN+ICJXQVJOSU5HIC0gdXNlIG9mIG9wdGlvbnMgbWFya2VkIFshXSBjYW4gc2VyaW91c2x5IGRhbWFnZSB5b3VyICIKKyN+ICJpbnN0YWxsYXRpb24uXG4iCisjfiAiRm9yY2luZyBvcHRpb25zIG1hcmtlZCBbKl0gYXJlIGVuYWJsZWQgYnkgZGVmYXVsdC5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIuGeh+GemOGfkuGemuGevuGen+KAi+GelOGehOGfkuGegeGfhiAlcyAtIOGej+GfkuGemuGeveGej+KAi+GeluGet+Gek+Get+Gej+GfkuGemeKAi+GepeGemuGet+GemeGetuGelOGekCDhnpPhn4XigIvhnpbhn4HhnpvigIvhnofhnr3hnpTigIvhnpThnonhn5LhnqDhnrbCoOGfllxuIgorI34gIiAg4Z6W4Z+S4Z6a4Z6Y4Z624Z6TIOGelOGfieGeu+Gek+GfkuGej+GfguKAi+GelOGek+GfkuGej8Kg4Z+WICAtLWZvcmNlLTx0aGluZz4sPHRoaW5nPiwuLi5cbiIKKyN+ICIgIOGelOGeieGfkuGeiOGelOGfi+KAi+Gek+GfheKAi+GeluGfgeGem+KAi+GemOGetuGek+KAi+GegOGfhuGeoOGeu+Gen8Kg4Z+WICAgIC0tcmVmdXNlLTx0aGluZz4sPHRoaW5nPiwuLi4gfCAtLW5vLWZvcmNlLSIKKyN+ICI8dGhpbmc+LC4uLlxuIgorI34gIiDhnpThnoThn5LhnoHhn4bigIvhnpLhnrbhno/hnrvCoOGfllxuIgorI34gIiAgYWxsIFshXSAgICAgICAgICAgICAgICDhnoDhn4bhno7hno/hn4vigIvhnofhnpjhn5Lhnprhnr7hnp/igIvhnpThnoThn5LhnoHhn4bigIvhnpHhnrbhn4bhnoThnqLhnp/hn4tcbiIKKyN+ICIgIGRvd25ncmFkZSBbKl0gICAgICAgICAg4Z6H4Z+G4Z6T4Z694Z6f4oCL4Z6A4Z6J4Z+S4Z6F4Z6U4Z+L4Z6Y4Z694Z6Z4oCL4Z6K4Z+E4Z6Z4oCL4Z6A4Z+G4Z6O4Z+C4oCL4Z6R4Z624Z6U4oCL4Z6H4Z624Z6EXG4iCisjfiAiICBjb25maWd1cmUtYW55ICAgICAgICAgIOGegOGfhuGejuGej+Gfi+KAi+GegOGeieGfkuGeheGelOGfi+KAi+GejuGetuKAi+GemOGeveGemeKAi+GeiuGfguGem+KAi+GeouGetuGeheKAi+Geh+GeveGemeKAi+GemOGeveGemeKAi+KAi+Gek+GfgeGfh1xuIgorI34gIiAgaG9sZCAgICAgICAgICAgICAgICAgICDhnorhn4bhno7hnr7hnprigIvhnoDhnrbhnprigIvhnoDhnonhn5LhnoXhnpThn4vigIvhnofhnr3hnpTigIvhnorhn4ThnpnigIvhnoXhn4PhnorhnpPhn5Lhnpkg4Z6R4Z+E4Z+H4oCL4Z6U4Z644oCL4Z6H4Z624oCL4Z6T4Z+F4Z6W4Z+B4Z6b4oCL4Z6a4Z6E4Z+L4Z6F4Z624Z+G4oCL4Z6A4Z+P4Z6K4Z+E4Z6ZXG4iCisjfiAiICBiYWQtcGF0aCAgICAgICAgICAgICAgIFBBVEgg4Z6C4Z664Z6U4Z624Z6P4Z+L4oCL4Z6A4Z6Y4Z+S4Z6Y4Z6c4Z634Z6S4Z644oCL4Z6K4Z+P4Z6f4Z+G4Z6B4Z624Z6T4Z+LIOGekeGfhuGek+GehOKAi+Geh+GetuKAi+GemOGetuGek+KAi+GelOGeieGfkuGeoOGetlxuIgorI34gIiAgbm90LXJvb3QgICAgICAgICAgICAgICDhnpbhn5LhnpnhnrbhnpnhnrbhnpjigIvigIvhnorhn4bhnqHhnr7hnoQv4Z6Y4Z634oCL4Z6T4Z6K4Z+G4Z6h4Z6+4oCL4Z6E4Z6S4Z624Z6P4Z67IOGekeGfhOGfh+GelOGeuOKAi+Geh+GetuKAi+Gek+GfheGeluGfgeGem+KAi+GemOGet+Gek+GemOGfguGek+KAi+Geh+GetiByb290ICIKKyN+ICLhnoDhn4/hnorhn4ThnplcbiIKKyN+ICIgIG92ZXJ3cml0ZSAgICAgICAgICAgICAg4Z6U4Z6K4Z634Z6f4Z+B4Z6S4oCL4Z6v4Z6A4Z6f4Z624Z6a4oCL4Z6Y4Z694Z6Z4oCL4Z6W4Z644oCL4Z6A4Z6J4Z+S4Z6F4Z6U4Z+L4oCL4Z6Y4Z694Z6Z4oCL4Z6K4Z+E4Z6Z4oCL4Z6A4Z6J4Z+S4Z6F4Z6U4Z+L4oCL4Z6V4Z+S4Z6f4Z+B4Z6E4oCL4Z6R4Z+A4Z6PXG4iCisjfiAiICBvdmVyd3JpdGUtZGl2ZXJ0ZWQgICAgIOGelOGeiuGet+Gen+GfgeGekuKAi+Ger+GegOGen+GetuGemuKAi+GeiuGfguGem+KAi+GelOGetuGek+KAi+GelOGehOGfkuGenOGfguGemuKAi+GeiuGfhOGemeKAi+GegOGfhuGejuGfguKAi+GeiuGfguGem+KAi+GemOGet+Gek+KAi+GelOGetuGek+KAi+GelOGehOGfkuGenOGfguGemlxuIgorI34gIiAgYmFkLXZlcmlmeSAgICAgICAgICAgICDhnorhn4bhnqHhnr7hnoTigIvhnoDhnonhn5LhnoXhnpThn4sg4Z6R4Z+E4Z+H4Z6U4Z644Z6H4Z624oCL4Z6c4Z624oCL4Z6U4Z624Z6T4oCL4Z6U4Z6a4Z624Z6H4Z+Q4Z6Z4oCL4Z6A4Z+S4Z6T4Z674Z6E4oCL4Z6A4Z624Z6a4oCL4Z6W4Z634Z6T4Z634Z6P4Z+S4Z6Z4oCL4Z6X4Z624Z6W4oCL4Z6P4Z+S4Z6a4Z654Z6Y4Z6P4Z+S4Z6a4Z684Z6c4oCL4oCLIgorI34gIuGegOGfj+GeiuGfhOGemVxuIgorI34gIiAgZGVwZW5kcy12ZXJzaW9uIFshXSAgICDhno/hn5LhnprhnqHhnpThn4vigIvigIvhnpThnonhn5LhnqDhnrbigIvhnoDhn4bhno7hn4LigIvhnpfhnrbhnpbigIvhnqLhnrbhnp/hn5Lhnprhn5DhnpnigIvhnpHhn4XigIvhnofhnrbigIvigIvigIvhnoDhnrbhnprigIvhnpbhn5LhnprhnpjhnrbhnpNcbiIKKyN+ICIgIGRlcGVuZHMgWyFdICAgICAgICAgICAg4Z6P4Z+S4Z6a4Z6h4Z6U4Z+L4oCL4Z6U4Z6J4Z+S4Z6g4Z624oCL4Z6X4Z624Z6W4oCL4Z6i4Z624Z6f4Z+S4Z6a4Z+Q4Z6Z4oCL4Z6R4Z624Z+G4Z6E4Z6i4Z6f4Z+L4oCL4Z6R4Z+F4oCL4Z6H4Z624oCL4Z6A4Z624Z6a4oCL4Z6W4Z+S4Z6a4Z6Y4Z624Z6TXG4iCisjfiAiICBjb25mbmV3IFshXSAgICAgICAgICAgIOGej+GfguGehOGej+GfguKAi+GelOGfkuGemuGevuKAi+Ger+GegOGen+GetuGemuKAi+GegOGfhuGejuGej+Gfi+KAi+GemuGeheGek+GetuGen+GemOGfkuGeluGfkOGek+GfkuGekuKAi+GekOGfkuGemOGeuOKAi+Geh+GetuKAi+Gek+Get+GeheGfkuGehSDhnoDhnrvhn4bhnp/hnr3hnppcbiIKKyN+ICIgIGNvbmZvbGQgWyFdICAgICAgICAgICAg4Z6P4Z+C4Z6E4Z6P4Z+C4oCL4Z6U4Z+S4Z6a4Z6+4oCL4Z6v4Z6A4Z6f4Z624Z6a4oCL4Z6A4Z+G4Z6O4Z6P4Z+L4oCL4Z6a4Z6F4Z6T4Z624Z6f4Z6Y4Z+S4Z6W4Z+Q4Z6T4Z+S4Z6S4oCL4Z6F4Z624Z6f4Z+L4oCL4Z6H4Z624oCL4Z6T4Z634Z6F4Z+S4Z6FIOGegOGeu+GfhuGen+GeveGemlxuIgorI34gIiAgY29uZmRlZiBbIV0gICAgICAgICAgICDhnpThn5Lhnprhnr7igIvhnofhnpjhn5Lhnprhnr7hnp/igIvhnpvhn4bhnpPhnrbhn4bhnorhnr7hnpjigIvhnp/hnpjhn5LhnprhnrbhnpThn4vigIvhnq/hnoDhnp/hnrbhnprigIvhnoDhn4bhno7hno/hn4vigIvhnprhnoXhnpPhnrbhnp/hnpjhn5Lhnpbhn5DhnpPhn5LhnpLigIvhnpDhn5Lhnpjhnrgg4Z6U4Z+S4Z6a4Z6f4Z634Z6T4oCL4Z6U4Z6+4oCL4Z6H4Z6Y4Z+S4Z6a4Z6+4oCLIgorI34gIuGemOGeveGemVxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICDhnqLhnrbhnoXigIvhnpThn5Lhnprhnr7igIvhnpThnrbhnpMg4Z6A4Z674Z+G4Z6f4Z694Z6awqDhn5Qg4Z6U4Z+S4Z6a4oCL4oCL4Z6f4Z634Z6T4Z6U4Z6+4Z6a4Z6A4oCL4Z6D4Z6+4Z6J4Z6Y4Z634Z6T4oCL4Z6Y4Z+C4Z6T4Z6H4Z624oCL4Z6b4Z+G4Z6T4Z624Z+G4Z6K4Z6+4Z6YXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIOGeouGfkuGek+GegOKAi+Gek+GeueGehOGej+GfkuGemuGevOKAi+GenOGelOGetuGek+KAi+Gen+GeveGemuKAi+Gem+Geu+Gfh+Gej+GfkuGemuGetuGej+GfguKAi+Geh+GemOGfkuGemuGevuGen+KAi+GegOGfhuGejuGej+Gfi+KAi+GemuGeheGek+GetuGen+GemOGfkuGeluGfkOGek+GfkuGekiDhnqxcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAg4Z6Q4Z+S4Z6Y4Z644oCL4oCL4Z6A4Z+P4oCL4Z6P4Z+S4Z6a4Z684Z6c4oCL4oCL4Z6U4Z624Z6T4oCL4oCL4oCL4Z6V4Z+S4Z6K4Z6b4Z+L4oCL4Z6y4Z+S4Z6Z4oCL4Z6V4Z6E4Z6K4Z+C4Z6aXG4iCisjfiAiICBjb25mbWlzcyBbIV0gICAgICAgICAgIOGej+GfguGehOGej+GfguKAi+GeiuGfhuGeoeGevuGehOKAi+Ger+GegOGen+GetuGemuGegOGfhuGejuGej+Gfi+KAi+GemuGeheGek+GetuGen+GemOGfkuGeluGfkOGek+GfkuGekuKAi+GeiuGfguGem+GelOGetuGej+Gfi1xuIgorI34gIiAgY29uZmxpY3RzIFshXSAgICAgICAgICDhnqLhnpPhnrvhnonhn5Lhnonhnrbhno/igIvhnoDhnrbhnprigIvhnorhn4bhnqHhnr7hnoTigIvhnoDhnonhn5LhnoXhnpThn4vigIvhnorhn4LhnpvigIvhnpThn4nhn4fhnpHhnoThn5LhnoLhnrfhnoVcbiIKKyN+ICIgIGFyY2hpdGVjdHVyZSBbIV0gICAgICAg4Z6K4Z+G4Z6O4Z6+4Z6a4Z6A4Z624Z6a4oCL4Z6R4Z+E4Z+H4oCL4Z6U4Z644Z6H4Z624oCL4Z6A4Z6J4Z+S4Z6F4Z6U4Z+L4oCL4Z6Y4Z624Z6T4oCL4Z6f4Z+S4Z6Q4Z624Z6U4Z6P4Z+S4Z6Z4Z6A4Z6Y4Z+S4Z6Y4oCL4Z6B4Z674Z6f4oCL4Z6A4Z+P4Z6K4Z+E4Z6ZXG4iCisjfiAiICBvdmVyd3JpdGUtZGlyIFshXSAgICAgIOGelOGeiuGet+Gen+GfgeGekuKAi+GekOGej+KAi+GemuGelOGen+Gfi+KAi+GegOGeieGfkuGeheGelOGfi+KAi+GemOGeveGemeKAi+GeiuGfguGem+KAi+GemOGetuGek+KAi+Ger+GegOGen+GetuGemuKAi+GemuGelOGen+Gfi+KAi+GekOGej+KAi+GeleGfkuGen+GfgeGehOKAi+GekeGfgOGej1xuIgorI34gIiAgcmVtb3ZlLXJlaW5zdHJlcSBbIV0gICDhnpnhnoDigIvhnoDhnonhn5LhnoXhnpThn4vigIvhnorhn4LhnpvigIvhno/hn5LhnprhnrzhnpzhnoDhnrbhnpog4Z6A4Z624Z6a4oCL4Z6K4Z+G4Z6h4Z6+4Z6E4oCL4Z6F4Z+B4Z6JXG4iCisjfiAiICByZW1vdmUtZXNzZW50aWFsIFshXSAgIOGemeGegOKAi+GegOGeieGfkuGeheGelOGfi+KAi+GeiuGfguGem+KAi+Gen+GfhuGegeGetuGek+Gfi+KAi+GeheGfgeGeiVxuIgorI34gIlxuIgorI34gIuGeluGfkuGemuGemOGetuGekyAtIOGelOGfkuGemuGevuKAi+KAi+Geh+GemOGfkuGemuGevuKAi+Gen+KAi+KAi+GelOGetuGek+KAi+Gen+GemOGfkuGeguGetuGem+GfiyDigItbIV0g4Z6i4Z624oCL4Z6F4Z6U4oCL4Z6E4Z+S4Z6B4Z684Z6F4Z6A4Z624Z6a4oCL4Z6K4Z+G4Z6h4Z6+4oCL4Z6E4Z6a4Z6U4Z6f4Z+L4Z6i4Z+S4Z6T4Z6A4oCL4Z6Z4Z+J4Z624Z6E4oCL4Z6S4Z+S4Z6E4Z6T4Z+L4Z6S4Z+S4Z6E4Z6awqDhn5RcbiIKKyN+ICLhnofhnpjhn5Lhnprhnr7hnp/igIvhnpThnoThn5LhnoHhn4bigIvhnpThnrbhnpPigIvhnp/hnpjhn5LhnoLhnrbhnpvhn4sgWypdIOGej+GfkuGemuGevOGenOKAi+GelOGetuGek+KAi+GeouGek+Geu+GeieGfkuGeieGetuGej+KAi+GeiuGfhOGemeKAi+Gem+GfhuGek+GetuGfhuGeiuGevuGemMKg4Z+UXG4iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBkcGtnLXNwbGl0IHRvIHNlZSBpZiBpdCdzIHBhcnQgb2YgYSBtdWx0aXBhcnRlciIKKyN+IG1zZ3N0ciAi4Z6U4Z6a4Z624Z6H4Z+Q4Z6Z4oCL4Z6K4Z+G4Z6O4Z6+4Z6a4Z6A4Z624Z6a4oCL4Z6W4Z674Z+HIGRwa2ct4Z6K4Z6+4Z6Y4Z+S4Z6U4Z644oCL4Z6Y4Z6+4Z6b4oCL4Z6U4Z6+4oCL4Z6c4Z624oCL4Z6H4Z624oCL4Z6V4Z+S4Z6T4Z+C4Z6A4oCL4Z6T4Z+D4Z6i4Z+S4Z6T4Z6A4oCL4Z6i4Z6T4Z674Z6c4Z6P4Z+S4Z6PIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWNsIGRlYnNpZy12ZXJpZnkiCisjfiBtc2dzdHIgIuGelOGemuGetuGeh+GfkOGemeKAi+GegOGfkuGek+Geu+GehOGegOGetuGemuKAiyBleGVjbCBkZWJzaWct4Z6Y4Z6+4Z6b4oCL4Z6U4Z6J4Z+S4Z6H4Z624Z6A4Z+L4oCLIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgZHBrZy1kZWIgdG8gZXh0cmFjdCBjb250cm9sIGluZm9ybWF0aW9uIgorI34gbXNnc3RyICLhnpThnrbhnpPigIvhnpThnprhnrbhnofhn5DhnpnigIvhnoDhn5LhnpPhnrvhnoTigIvhnoDhnrbhnprigIvhnpThn5Lhnprhno/hnrfhnpThno/hn5Lhno/hnrcgZHBrZy1kZWIg4Z6K4Z6+4Z6Y4Z+S4Z6U4Z644oCL4Z6f4Z+S4Z6a4Z6E4Z+L4oCL4Z6F4Z+B4Z6J4oCL4Z6W4Z+Q4Z6P4Z+M4Z6Y4Z624Z6T4oCL4Z6c4Z6P4Z+S4Z6Q4Z674oCL4Z6U4Z6J4Z+S4Z6H4Z62IgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGV4ZWMgZHBrZy1kZWIgdG8gZ2V0IGZpbGVzeXN0ZW0gYXJjaGl2ZSIKKyN+IG1zZ3N0ciAi4Z6Y4Z634Z6T4oCL4oCL4oCL4oCL4Z6i4Z624Z6F4oCL4Z6U4Z+S4Z6a4Z6P4Z634Z6U4Z6P4Z+S4Z6P4Z634oCLICBkcGtnLWRlYiDhnorhnr7hnpjhn5LhnpThnrjigIvhnpHhnpHhnr3hnpvigIvhnpnhnoDigIvhnpThno7hn5Lhno7hnp/hnrbhnprigIvhnpThn5Lhnprhnpbhn5DhnpPhn5LhnpLigIvhnq/hnoDhnp/hnrbhnprigIsiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gZGVsZXRlIGRpc2FwcGVhcmluZyBjb250cm9sIGluZm8gZmlsZSBgJS4yNTBzJyIKKyN+IG1zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6b4Z674Z6U4oCL4Z6v4Z6A4Z6f4Z624Z6a4oCL4Z6W4Z+Q4Z6P4Z+M4Z6Y4Z624Z6T4oCL4Z6c4Z6P4Z+S4Z6Q4Z674Z6U4Z6J4Z+S4Z6H4Z624oCL4Z6K4Z+C4Z6b4oCL4Z6Y4Z634Z6T4oCL4Z6U4Z6E4Z+S4Z6g4Z624Z6JIGAlLjI1MHMnIgorCisjfiBtc2dpZCAiZHBrZzogJXMgbm90IGZvdW5kLlxuIgorI34gbXNnc3RyICJkcGtnwqDhn5Yg4Z6a4Z6A4oCL4Z6Y4Z634Z6T4oCL4Z6D4Z6+4Z6JICVzwqDhn5RcbiIKKworI34gbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byAuLi4vREVCSUFOIgorI34gbXNnc3RyICLhnpThnrbhnpPigIvhnpThnprhnrbhnofhn5DhnpnigIvhnoDhn5LhnpPhnrvhnoQgY2hkaXIg4Z6R4Z+F4Z6H4Z62IC4uLi9ERUJJQU4iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyB0YXIgLWNmIgorI34gbXNnc3RyICLhnpThnrbhnpPigIvhnpThnprhnrbhnofhn5DhnpnigIvhnoDhn5LhnpPhnrvhnoTigIvhnoDhnrbhnprigIvhnpThn5Lhnprhno/hnrfhnpThno/hn5Lhno/hnrcgdGFyIC1jZiIKKworI34gbXNnaWQgImZhaWxlZCB0byBtYWtlIHRtcGZpbGUgKGNvbnRyb2wpIgorI34gbXNnc3RyICLhnpThnrbhnpPigIvhnpThnprhnrbhnofhn5DhnpnigIvhnoDhn5LhnpPhnrvhnoTigIvhnoDhnrbhnprigIvhnpThnoThn5LhnoDhnr7hno8gdG1wZmlsZSAo4Z6c4Z6P4Z+S4Z6Q4Z674Z6U4Z6J4Z+S4Z6H4Z62KSIKKworI34gbXNnaWQgImZhaWxlZCB0byB1bmxpbmsgdG1wZmlsZSAoY29udHJvbCksICVzIgorI34gbXNnc3RyICLhnpThnrbhnpPhnpThnprhnrbhnofhn5DhnpnhnoDhn5LhnpPhnrvhnoThnoDhnrbhnprhnpjhnrfhnpPhno/hnpfhn5LhnofhnrbhnpThn4sgdG1wZmlsZSAo4Z6c4Z6P4Z+S4Z6Q4Z674Z6U4Z6J4Z+S4Z6H4Z62KSAlcyIKKworI34gbXNnaWQgImNvbnRyb2wiCisjfiBtc2dzdHIgIuGenOGej+GfkuGekOGeu+GelOGeieGfkuGeh+GetuKAiyIKKworI34gbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdG1wZmlsZSAoY29udHJvbCkiCisjfiBtc2dzdHIgIuGelOGetuGek+KAi+GelOGemuGetuGeh+GfkOGemeKAi+GegOGfkuGek+Geu+GehOKAi+GegOGetuGemuKAi+GegeGetiB0bXBmaWxlIOGekOGemeKAi+GegOGfkuGemuGfhOGemSAo4Z6c4Z6P4Z+S4Z6Q4Z674Z6U4Z6J4Z+S4Z6H4Z62KSIKKworI34gbXNnaWQgImZhaWxlZCB0byBmc3RhdCB0bXBmaWxlIChjb250cm9sKSIKKyN+IG1zZ3N0ciAi4Z6U4Z624Z6T4oCL4Z6U4Z6a4Z624Z6H4Z+Q4Z6ZIGZzdGF0IHRtcGZpbGUgKOGenOGej+GfkuGekOGeu+GelOGeieGfkuGeh+GetikiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBmaW5kIgorI34gbXNnc3RyICLhnpThnrbhnpPigIvhnpThnprhnrbhnofhn5DhnpnigIvhnoDhn5LhnpPhnrvhnoThnoDhnrbigIvhnprhnprhnoDigIvhnoDhnrbhnprigIvhnpThn5Lhnprhno/hnrfhnpThno/hn5Lhno/hnrciCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBzaCAtYyBtdiBmb28vKiAmYyIKKyN+IG1zZ3N0ciAi4Z6U4Z624Z6T4oCL4Z6U4Z6a4Z624Z6H4Z+Q4Z6Z4oCL4Z6A4Z+S4Z6T4Z674Z6E4oCL4Z6A4Z624Z6a4oCL4Z6U4Z+S4Z6a4Z6P4Z634Z6U4Z6P4Z+S4Z6P4Z634oCLIGV4ZWMgc2ggLWMgbXYgZm9vLyogJmMiCisKKyN+IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSAlLjI1MHMgbGVuZ3RoIGNvbnRhaW5zIG51bGxzIgorI34gbXNnc3RyICLhnq/hnoDhnp/hnrbhnpogYCUuMjUwcycg4Z6B4Z684Z6FIC0gJS4yNTBzIOGelOGfkuGemuGenOGfguGehOKAi+GemOGetuGekyBudWxscyIKKworI34gbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIG5lZ2F0aXZlIG1lbWJlciBsZW5ndGggJXppIgorI34gbXNnc3RyICLhnq/hnoDhnp/hnrbhnpogYCUuMjUwcycg4Z6B4Z684Z6FIC0g4Z6b4Z+B4Z6B4oCL4Z6i4Z6c4Z634Z6H4Z+S4Z6H4Z6Y4Z624Z6T4oCL4Z6U4Z+S4Z6a4Z6c4Z+C4Z6EICV6aSIKKworI34gbXNnaWQgImZhaWxlZCBnZXR0aW5nIHRoZSBjdXJyZW50IGZpbGUgcG9zaXRpb24iCisjfiBtc2dzdHIgIuGelOGetuGek+KAi+GelOGemuGetuGeh+GfkOGemeKAi+GegOGfkuGek+Geu+GehOKAi+GegOGetuGemuKAi+GekeGekeGeveGem+KAi+GemeGegOKAi+GekeGeuOGej+GetuGfhuGehOKAi+Ger+GegOGen+GetuGemuKAi+GelOGeheGfkuGeheGeu+GelOGfkuGelOGek+GfkuGekyIKKworI34gbXNnaWQgImZhaWxlZCBzZXR0aW5nIHRoZSBjdXJyZW50IGZpbGUgcG9zaXRpb24iCisjfiBtc2dzdHIgIuGelOGetuGek+KAi+GelOGemuGetuGeh+GfkOGemeKAi+GegOGfkuGek+Geu+GehOKAi+GegOGetuGemuKAi+GegOGfhuGejuGej+Gfi+KAi+GekeGeuOGej+GetuGfhuGehOKAi+Ger+GegOGen+GetuGemuKAi+GelOGeheGfkuGeheGeu+GelOGfkuGelOGek+GfkuGekyIKKworI34gbXNnaWQgInZlcnNpb24gbnVtYmVyIgorI34gbXNnc3RyICLhnpvhn4HhnoHigIvhnoDhn4bhno7hn4LigIsiCisKKyN+IG1zZ2lkICJoZWFkZXIgaW5mbyBtZW1iZXIiCisjfiBtc2dzdHIgIuGen+GemOGetuGeh+Get+GegOKAi+GeluGfkOGej+GfjOGemOGetuGek+KAi+GelOGei+GemOGegOGekOGetuKAiyIKKworIywgZnV6enkKKyN+fCBtc2dpZCAic2tpcHBlZCBtZW1iZXIgZGF0YSBmcm9tICVzIgorI34gbXNnaWQgInNraXBwZWQgY29udHJvbCBhcmVhIGZyb20gJXMiCisjfiBtc2dzdHIgIuGelOGetuGek+KAi+GemuGfhuGem+GehOKAi+GekeGet+Gek+GfkuGek+Gek+GfkOGemeKAi+Gen+GemOGetuGeh+Get+GegOKAi+GeluGeuCAlcyIKKworIywgZnV6enkKKyN+IG1zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHRlbXBvcmFyeSBkaXJlY3RvcnkiCisjfiBtc2dzdHIgIuGelOGetuGek+KAi+GelOGemuGetuGeh+GfkOGemeKAi+GegOGfkuGek+Geu+GehOKAi+GegOGetuGemuKAi+GelOGehOGfkuGegOGevuGej+KAi+GeiOGfkuGemOGfhOGfh+KAi+GekOGej+KAi+GelOGejuGfkuGeiuGfhOGfh+KAi+GeouGetuGen+Gek+GfkuGekyIKKworI34gbXNnaWQgImluZm9fc3BldyIKKyN+IG1zZ3N0ciAiaW5mb19zcGV3IgorCisjLCBmdXp6eQorI358IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBkcGtnLWRlYiB0byBleHRyYWN0IGNvbnRyb2wgaW5mb3JtYXRpb24iCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgZHBrZy1kZWIgdG8gZXh0cmFjdCBmaWVsZCB2YWx1ZSIKKyN+IG1zZ3N0ciAi4Z6U4Z624Z6T4oCL4Z6U4Z6a4Z624Z6H4Z+Q4Z6Z4oCL4Z6A4Z+S4Z6T4Z674Z6E4oCL4Z6A4Z624Z6a4oCL4Z6U4Z+S4Z6a4Z6P4Z634Z6U4Z6P4Z+S4Z6P4Z63IGRwa2ctZGViIOGeiuGevuGemOGfkuGelOGeuOKAi+Gen+GfkuGemuGehOGfi+KAi+GeheGfgeGeieKAi+GeluGfkOGej+GfjOGemOGetuGek+KAi+GenOGej+GfkuGekOGeu+KAi+GelOGeieGfkuGeh+GetiIKKworIywgZnV6enkKKyN+fCBtc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSAlczogJXMiCisjfiBtc2dpZCAidW5hYmxlIHRvIHN0YXQgJXM6ICVzIgorI34gbXNnc3RyICLhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnpThnoThn5LhnoDhnr7hno8gJXPCoOGfliAlcyIKKworI34gbXNnaWQgInNsYXZlIG5hbWUgJXMgZHVwbGljYXRlZCIKKyN+IG1zZ3N0ciAi4Z6I4Z+S4Z6Y4Z+E4Z+H4oCL4Z6A4Z684Z6T4Z6F4Z+FICVzIOGelOGetuGek+KAi+Gen+GfkuGekeGeveGek+KAiyIKKworI34gbXNnaWQgInNsYXZlIGxpbmsgJXMgZHVwbGljYXRlZCIKKyN+IG1zZ3N0ciAi4Z6P4Z+G4Z6O4oCL4Z6A4Z684Z6T4Z6F4Z+F4oCLICVzIOGelOGetuGek+KAi+Gen+GfkuGekeGeveGek+KAiyIKKworI34gbXNnaWQgIiVkIHJlcXVlc3RlZCBjb250cm9sIGNvbXBvbmVudHMgYXJlIG1pc3NpbmciCisjfiBtc2dzdHIgIuGen+GemOGetuGen+Gel+GetuGeguKAi+GenOGej+GfkuGekOGeu+GelOGeieGfkuGeh+GetuKAi+GeiuGfguGem+KAi+GelOGetuGek+KAi+Gen+GfkuGek+GeviAlZCDhnpThnrbhnpPigIvhnpThnrbhno/hn4siCisKKyN+IG1zZ2lkICJjYXQgKGRhdGEpIgorI34gbXNnc3RyICJjYXQgKOGekeGet+Gek+GfkuGek+Gek+GfkOGemeKAiykiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gb3BlbiBwaXBlIGRlc2NyaXB0b3IgYDEnIGluIHBhc3RlIgorI34gbXNnc3RyICLhnpThnrbhnpPigIvhnpThnprhnrbhnofhn5DhnpnigIvhnoDhn5LhnpPhnrvhnoTigIvhnoDhnrbhnprigIvhnpThnr7hnoDigIvhnqfhnpThnoDhnprhno7hn43igIvhnpbhnrfhnpbhno7hn4zhnpPhnrbigIvhnpThn4bhnpbhnoThn4sgYDEnIOGeh+GetuKAi+GegOGetuGemuKAi+GelOGet+GekeGel+GfkuGeh+GetuGelOGfiyIKKworI34gbXNnaWQgImZhaWxlZCB0byB3cml0ZSB0byBnemlwIC1kYyIKKyN+IG1zZ3N0ciAi4Z6U4Z624Z6T4oCL4Z6U4Z6a4Z624Z6H4Z+Q4Z6Z4oCL4Z6A4Z+S4Z6T4Z674Z6E4oCL4Z6A4Z624Z6a4oCL4Z6f4Z6a4Z6f4Z+B4Z6a4oCL4Z6R4Z+F4oCL4Z6H4Z62IGd6aXAgLWRjIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGNsb3NlIGd6aXAgLWRjIgorI34gbXNnc3RyICLhnpThnrbhnpPigIvhnpThnprhnrbhnofhn5DhnpnigIvhnoDhn5LhnpPhnrvhnoTigIvhnoDhnrbhnprigIvhnpThnrfhnpEgZ3ppcCAtZGMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gc3lzY2FsbCBsc2VlayB0byBmaWxlcyBhcmNoaXZlIHBvcnRpb24iCisjfiBtc2dzdHIgIuGelOGetuGek+KAi+GelOGemuGetuGeh+GfkOGemSBzeXNjYWxsIGxzZWVrIOGekeGfheGeheGfhuGejuGfguGegOKAi+GelOGfkOGejuGfkuGejuGen+GetuGemiIKKworI34gbXNnaWQgInVuYWJsZSB0byBleGVjIG1rc3BsaXQiCisjfiBtc2dzdHIgIuGemOGet+Gek+KAi+GeouGetuGeheKAi+GelOGfkuGemuGej+Get+GelOGej+GfkuGej+GetyBta3NwbGl0IgorCisjfiBtc2dpZCAiIgorI34gIlxuIgorI34gIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLiIKKyN+IG1zZ3N0ciAiIgorI34gIlxuIgorI34gIuGemuGegOGfkuGen+GetuGen+Get+GekeGfkuGekuGet+GehuGfkuGek+GetuGfhiDhn6Hhn6nhn6nhn6Ug4Z6K4Z+E4Z6ZIElhbiBKYWNrc29uwqDhn5RcbiIKKyN+ICLhnprhnoDhn5Lhnp/hnrbhnp/hnrfhnpHhn5LhnpLhnrfhnobhn5LhnpPhnrbhn4Yg4Z+i4Z+g4Z+g4Z+gLeGfouGfoOGfoOGfoSDhnorhn4ThnpkgV2ljaGVydCBBa2tlcm1hbsKg4Z+UIgorCisjLCBmdXp6eQorI34gbXNnaWQgInR3byBjb21tYW5kcyBzcGVjaWZpZWQ6ICVzIGFuZCAtLSVzIgorI34gbXNnc3RyICLhnpjhnrbhnpPigIvhnpbhnrjhnprigIvhnprhnpThn4DhnpTigIvhnpThnrbhnpPigIvhnpThnonhn5LhnofhnrbhnoDhn4vCoOGfliAlcyDhnpPhnrfhnoQgLS0lcyIKKworI34gbXNnaWQgIi0tJXMgbmVlZHMgYSBkaXZlcnQtdG8gYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tJXMg4Z6P4Z+S4Z6a4Z684Z6c4oCL4Z6A4Z624Z6a4oCL4Z6i4Z624Z6C4Z674Z6Z4Z6Y4Z+J4Z6E4Z+L4oCL4Z6U4Z6E4Z+S4Z6c4Z+C4Z6aIgorCisjfiBtc2dpZCAiLS0lcyBuZWVkcyBhIDxwYWNrYWdlPiBhcmd1bWVudCIKKyN+IG1zZ3N0ciAiLS0lcyDhno/hn5LhnprhnrzhnpzhnoDhnrbhnprigIvhnqLhnrbhnoLhnrvhnpnhnpjhn4nhnoThn4sgPOGegOGeieGfkuGeheGelOGfiz4iCisKKyN+IG1zZ2lkICJjYW5ub3Qgb3BlbiBkaXZlcnNpb25zOiAlcyIKKyN+IG1zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6U4Z6+4Z6A4oCL4Z6A4Z624Z6a4oCL4Z6U4Z6E4Z+S4Z6c4Z+C4Z6awqDhn5YgJXMiCisKKyN+IG1zZ2lkICJtaXNzaW5nIGFsdG5hbWUiCisjfiBtc2dzdHIgIuGelOGetuGej+GfiyBhbHRuYW1lIgorCisjfiBtc2dpZCAiaW50ZXJuYWwgZXJyb3IgLSBiYWQgbW9kZSBgJXMnIgorI34gbXNnc3RyICLhnoDhn4bhnqDhnrvhnp/igIvhnoHhnrbhnoTigIvhnoDhn5LhnpPhnrvhnoQgLSDhnprhnpThn4DhnpTigIvhnpjhnrfhnpPigIvhno/hn5Lhnprhnrnhnpjhno/hn5LhnprhnrzhnpwgYCVzJyIKKworI34gbXNnaWQgImNhbm5vdCBzdGF0IG9sZCBuYW1lIGAlcyc6ICVzIgorI34gbXNnc3RyICLhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnoXhnrbhnpThn4vigIvhnpXhn5Lhnorhnr7hnpjigIvhnojhn5Lhnpjhn4Thn4figIvhnoXhnrbhnp/hn4sgYCVzJ8Kg4Z+WICVzIgorCisjfiBtc2dpZCAicmVuYW1lOiByZW5hbWUgYCVzJyB0byBgJXMnOiAlcyIKKyN+IG1zZ3N0ciAi4Z6U4Z+S4Z6K4Z684Z6a4Z6I4Z+S4Z6Y4Z+E4Z+HwqDhn5Yg4Z6U4Z+S4Z6K4Z684Z6a4Z6I4Z+S4Z6Y4Z+E4Z+HIGAlcycg4Z6R4Z+F4Z6H4Z62IGAlcyfCoOGfliAlcyIKKworI34gbXNnaWQgImNyZWF0ZSBkaXZlcnNpb25zLW5ldzogJXMiCisjfiBtc2dzdHIgIuGelOGehOGfkuGegOGevuGej+KAi+GegOGetuGemuKAi+GelOGehOGfkuGenOGfguGemuKAi+GekOGfkuGemOGeuMKg4Z+WICVzIgorCisjfiBtc2dpZCAid3JpdGUgZGl2ZXJzaW9ucy1uZXc6ICVzIgorI34gbXNnc3RyICLhnp/hnprhnp/hn4HhnprigIvhnoDhnrbhnprigIvhnpThnoThn5Lhnpzhn4LhnprigIvhnpDhn5LhnpjhnrjCoOGfliAlcyIKKworI34gbXNnaWQgImNsb3NlIGRpdmVyc2lvbnMtbmV3OiAlcyIKKyN+IG1zZ3N0ciAi4Z6U4Z634Z6R4oCL4Z6A4Z624Z6a4oCL4Z6U4Z6E4Z+S4Z6c4Z+C4Z6a4oCL4Z6Q4Z+S4Z6Y4Z64wqDhn5YgJXMiCisKKyN+IG1zZ2lkICJjcmVhdGUgbmV3IGRpdmVyc2lvbnMtb2xkOiAlcyIKKyN+IG1zZ3N0ciAi4Z6U4Z6E4Z+S4Z6A4Z6+4Z6P4oCL4Z6A4Z624Z6a4oCL4Z6U4Z6E4Z+S4Z6c4Z+C4Z6a4oCL4Z6F4Z624Z6f4Z+LwqDhn5YgJXMiCisKKyN+IG1zZ2lkICJpbnN0YWxsIG5ldyBkaXZlcnNpb25zOiAlcyIKKyN+IG1zZ3N0ciAi4Z6K4Z+G4Z6h4Z6+4Z6E4oCL4Z6A4Z624Z6a4oCL4Z6U4Z6E4Z+S4Z6c4Z+C4Z6a4oCL4Z6Q4Z+S4Z6Y4Z64wqDhn5YgJXMiCisKKyN+IG1zZ2lkICJpbnRlcm5hbCBlcnJvcjogJXMgY29ycnVwdDogJXMiCisjfiBtc2dzdHIgIuGegOGfhuGeoOGeu+Gen+KAi+GegeGetuGehOKAi+GegOGfkuGek+Geu+GehMKg4Z+WICVzIOGegeGevOGehcKg4Z+WICVzIgorCisjfiBtc2dpZCAiZHBrZy1kZWIgLSBlcnJvcjogJXMgKGAlcycpIGRvZXNuJ3QgY29udGFpbiBhbnkgZGlnaXRzXG4iCisjfiBtc2dzdHIgImRwa2ctZGViIC0g4Z6A4Z+G4Z6g4Z674Z6fwqDhn5YgJXMgKGAlcycpIOGemOGet+Gek+GemOGetuGek+KAi+Gej+GeveKAi+Gem+GfgeGegeKAi+GejuGetuKAi+GemOGeveGemVxuIgorCisjLCBmdXp6eQorI34gbXNnaWQgIkRlYmlhbiByZXZpc2lvbiIKKyN+IG1zZ3N0ciAi4Z6K4Z+B4Z6U4Z+A4Z6TICVzIOGegOGfhuGejuGfgiAlc8Kg4Z+UXG4iCisKKyN+IG1zZ2lkICIlZCBlcnJvcnMgaW4gY29udHJvbCBmaWxlIgorI34gbXNnc3RyICIlZCDhnoDhn4bhnqDhnrvhnp/igIvhnpPhn4XigIvigIvhnoDhn5LhnpPhnrvigIvhnoTigIvhnq/hnoDigIvhnp/hnrbhnprigIvhnpzhno/hn5LhnpDhnrvhnpThnonhn5LhnofhnrbigIsiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgInVuYWJsZSB0byByZWFkICVzOiAlcyIKKyN+IG1zZ2lkICJjYW4ndCByZWFkZGlyICVzOiAlcyIKKyN+IG1zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6i4Z624Z6TICVzwqDhn5YgJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgaW4gYnVmZmVyX3dyaXRlKGZkKSAoJWksIHJldD0lbGkpOiAlcyIKKyN+IG1zZ3N0ciAi4Z6U4Z624Z6T4oCL4Z6U4Z6a4Z624Z6H4Z+Q4oCL4Z6Z4oCL4Z6T4Z+F4Z6A4Z+S4Z6T4Z674Z6EIGJ1ZmZlcl93cml0ZShmZCkgKCVpLCByZXQ9JWxpKTogJXMiCisKKyN+IG1zZ2lkICJlb2YgaW4gYnVmZmVyX3dyaXRlKHN0cmVhbSk6ICVzIgorI34gbXNnc3RyICJlb2YgaW4gYnVmZmVyX3dyaXRlKOGen+GfkuGekeGfkuGemuGeuOGemCnCoOGfliAlcyIKKworI34gbXNnaWQgImVycm9yIGluIGJ1ZmZlcl93cml0ZShzdHJlYW0pOiAlcyIKKyN+IG1zZ3N0ciAi4Z6A4Z+G4Z6g4Z674Z6f4oCL4Z6T4Z+F4oCL4oCL4Z6A4Z+S4Z6T4Z674Z6E4oCLIGJ1ZmZlcl93cml0ZSjhnp/hn5LhnpHhn5LhnprhnrjhnpjigIspwqDhn5YgJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgaW4gYnVmZmVyX3JlYWQoZmQpOiAlcyIKKyN+IG1zZ3N0ciAi4Z6U4Z624Z6T4oCL4Z6U4Z6a4Z624Z6H4Z+Q4oCL4Z6Z4oCL4Z6T4Z+F4Z6A4Z+S4Z6T4Z674Z6EIGJ1ZmZlcl9yZWFkKGZkKcKg4Z+WICVzIgorCisjfiBtc2dpZCAiZXJyb3IgaW4gYnVmZmVyX3JlYWQoc3RyZWFtKTogJXMiCisjfiBtc2dzdHIgIuGegOGfhuGeoOGeu+Gen+Gek+GfheGegOGfkuGek+Geu+GehCBidWZmZXJfcmVhZCjhnp/hn5LhnpHhn5LhnprhnrjhnpgpwqDhn5YgJXMiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiJXMgcmV0dXJuZWQgZXJyb3IgZXhpdCBzdGF0dXMgJWQiCisjfiBtc2dzdHIgIuGeiuGfhuGejuGevuGemuGegOGetuGemuKAi+GemuGehCAlcyDhnpThnrbhnpPhno/hn5LhnprhnqHhnpThn4vigIvhnoDhn4bhnqDhnrvhnp/igIvhnp/hn5LhnpDhnrbhnpPhnpfhnrbhnpbigIvhnoXhn4HhnokgJWQiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiJXMga2lsbGVkIGJ5IHNpZ25hbCAoJXMpJXMiCisjfiBtc2dzdHIgIuGeiuGfhuGejuGevuGemuKAi+GegOGetuGemuKAi+GemuGehCAlcyDhnpThnrbhnpPigIvhnpbhnrfhnoPhnrbhno/igIvhnorhn4ThnpnigIvhnp/hnonhn5LhnonhnrYgKCVzKSVzIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgdmVyc2lvbiAyIG9yXG4iCisjfiAibGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJcbiIKKyN+ICLhnpPhn4Hhn4figIvhnofhnrbigIvhnoDhnpjhn5LhnpjhnpzhnrfhnpLhnrjigIvhnqXhno/igIvhnoLhnrfhno/igIvhnpDhn5Lhnpvhn4Mg4Z6Y4Z6+4Z6bIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbmNlIOGegOGfhuGejuGfgiDhn6Ig4Z6sXG4iCisjfiAi4Z6Q4Z+S4Z6Y4Z644oCL4Z6H4Z624Z6E4oCL4Z6T4Z+B4Z+H4oCL4Z6K4Z6+4Z6Y4Z+S4Z6U4Z644oCL4Z6b4Z6A4Z+S4Z6B4Z6B4Z+Q4Z6O4Z+S4Z6M4oCL4Z6F4Z6Y4Z+S4Z6b4Z6EwqDhn5Qg4Z6C4Z+S4Z6Y4Z624Z6T4oCL4Z6A4Z624Z6a4oCL4Z6S4Z624Z6T4Z624oCL4Z6R4Z+BwqDhn5RcbiIKKworI34gbXNnaWQgIiIKKyN+ICJcbiIKKyN+ICJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgdmVyc2lvbiAyIG9yXG4iCisjfiAibGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJcbiIKKyN+ICLhnpPhn4Hhn4figIvhnofhnrbigIvhnoDhnpjhn5LhnpjhnpzhnrfhnpLhnrjigIvhnqXhno/igIvhnoLhnrfhno/igIvhnpDhn5Lhnpvhn4Mg4Z6Y4Z6+4Z6bIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbmNlIOGegOGfhuGejuGfgiDhn6Ig4Z6sXG4iCisjfiAi4Z6Q4Z+S4Z6Y4Z644oCL4Z6H4Z624Z6E4oCL4Z6T4Z+B4Z+H4oCL4Z6K4Z6+4Z6Y4Z+S4Z6U4Z644oCL4Z6b4Z6A4Z+S4Z6B4Z6B4Z+Q4Z6O4Z+S4Z6M4oCL4Z6F4Z6Y4Z+S4Z6b4Z6EwqDhn5Qg4Z6C4Z+S4Z6Y4Z624Z6T4oCL4Z6A4Z624Z6a4oCL4Z6S4Z624Z6T4Z624oCL4Z6R4Z+BwqDhn5RcbiIKKworIywgZnV6enkKKyN+IG1zZ2lkICIlczogZmFpbGVkIHRvIGV4ZWMgJyVzICVzJyIKKyN+IG1zZ3N0ciAiJXPCoOGfliDhnpThnrbhnpPigIvhnpThnprhnrbhnofhn5DigIvhnpnhnoDhn5LhnpPhnrvigIvhnoThnoDhnrbhnprhnpThn5Lhnprhno/hnrfhnpThno/hn5Lhno/hnrcgZ3ppcCAlcyIKKworI34gbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIGVycm9yOiByZWFkOiBgJXMnIgorI34gbXNnc3RyICIlc8Kg4Z+WIOGegOGfhuGeoOGeu+GenyBnemlwIOGegeGetuGehOGegOGfkuGek+Geu+GehMKg4Z+WIOGeouGetuGek8Kg4Z+WIGAlcyciCisKKyN+IG1zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCBlcnJvcjogd3JpdGU6IGAlcyciCisjfiBtc2dzdHIgIiVzwqDhn5Y6IOGegOGfhuGeoOGeu+GenyBnemlwIOGegeGetuGehOGegOGfkuGek+Geu+GehMKg4Z+WIOGen+GemuGen+GfgeGemsKg4Z+WIGAlcyciCisKKyN+IG1zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCBlcnJvcjogcmVhZCglaSkgIT0gd3JpdGUoJWkpIgorI34gbXNnc3RyICIlc8Kg4Z+WIOGegOGfhuGeoOGeu+GenyBnemlwIOGegeGetuGehOGegOGfkuGek+Geu+GehMKg4Z+WIOGeouGetuGekyglaSkgIT0g4Z6f4Z6a4Z6f4Z+B4Z6aKCVpKSIKKworI34gbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiBlcnJvcjogcmVhZDogYCVzJyIKKyN+IG1zZ3N0ciAiJXPCoOGfliDhnoDhn4bhnqDhnrvhnp8gYnppcDIg4Z6B4Z624Z6E4Z6A4Z+S4Z6T4Z674Z6EwqDhn5YgYCVzJyIKKworI34gbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiBlcnJvcjogd3JpdGU6IGAlcyciCisjfiBtc2dzdHIgIiVzwqDhn5Yg4Z6A4Z+G4Z6g4Z674Z6fIGJ6aXAyIOGegeGetuGehOGegOGfkuGek+Geu+GehMKg4Z+WIOGen+GemuGen+GfgeGemsKg4Z+WIGAlcyciCisKKyN+IG1zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgZXJyb3I6IHJlYWQoJWkpICE9IHdyaXRlKCVpKSIKKyN+IG1zZ3N0ciAiJXPCoOGfliDhnoDhn4bhnqDhnrvhnp8gYnppcDIg4Z6B4Z624Z6E4Z6A4Z+S4Z6T4Z674Z6EwqDhn5Yg4Z6i4Z624Z6TKCVpKSAhPSDhnp/hnprhnp/hn4HhnpooJWkpIgorCisjfiBtc2dpZCAiRG9uJ3QgZm9yZ2V0IHRvIGZvcmVncm91bmQgKGBmZycpIHRoaXMgcHJvY2VzcyB3aGVuIHlvdSdyZSBkb25lICFcbiIKKyN+IG1zZ3N0ciAi4Z6A4Z674Z+G4oCL4Z6X4Z+S4Z6b4Z+B4Z6F4oCL4Z6K4Z624Z6A4Z+L4oCL4Z6V4Z+S4Z6R4Z+D4oCL4Z6B4Z624Z6E4oCL4Z6Y4Z674Z6BIChgZmcnKSDhnpzhnrbigIvhnorhn4bhno7hnr7hnprhnoDhnrbhnprigIvhnpPhn4XigIvhnpbhn4HhnpvigIvhnorhn4LhnpvigIvhnqLhn5LhnpPhnoDigIvhnpThnrbhnpPigIvhnpLhn5Lhnpzhnr7igIvhnprhnr3hnoXhnprhnrbhnpvhn4vCoCFcbiIKKworI34gbXNnaWQgIiIKKyN+ICJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAyIG9yXG4iCisjfiAibGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuXG4iCisjfiAiU2VlICVzIC0tbGljZW5zZSBmb3IgY29weXJpZ2h0IGFuZCBsaWNlbnNlIGRldGFpbHMuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICLhnpPhn4Hhn4figIvhnofhnrbigIvhnoDhnpjhn5LhnpjhnpzhnrfhnpLhnrjigIvhnqXhno/hnoLhnrfhno/igIvhnpDhn5Lhnpvhn4Mg4Z6f4Z684Z6Y4oCL4Z6Y4Z6+4Z6bIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIOGegOGfhuGejuGfgiDhn6Ig4Z6sXG4iCisjfiAi4Z6Q4Z+S4Z6Y4Z644oCL4Z6H4Z624Z6E4oCL4Z6T4Z+B4Z+H4oCL4Z6f4Z6Y4Z+S4Z6a4Z624Z6U4Z+L4oCL4Z6b4Z6A4Z+S4Z6B4Z6B4Z6O4Z+S4Z6M4oCL4Z6F4Z6Y4Z+S4Z6b4Z6EwqDhn5Qg4Z6C4Z+S4Z6Y4Z624Z6T4oCL4Z6A4Z624Z6a4oCL4Z6S4Z624Z6T4Z62wqDhn5RcbiIKKyN+ICLhnp/hnrzhnpjigIvhnpjhnr7hnpsgJXMgLS3hnqLhnrbhnofhn5LhnonhnrbhnpThn5Dhno7hn5Lhno7igIvhnp/hnpjhn5LhnprhnrbhnpThn4vigIvhnp/hnrfhnpHhn5LhnpLhnrcg4Z6T4Z634Z6E4oCL4Z6f4Z+B4Z6F4Z6A4Z+S4Z6P4Z644Z6b4Z6Y4Z+S4Z6i4Z634Z6P4oCL4Z6i4Z624Z6H4Z+S4Z6J4Z624Z6U4Z+Q4Z6O4Z+S4Z6OwqDhn5RcbiIKKworI34gbXNnaWQgInVuYWJsZSB0byBnZXQgdW5pcXVlIGZpbGVuYW1lIGZvciBjb250cm9sIGluZm8iCisjfiBtc2dzdHIgIuGemOGet+Gek+KAi+GeouGetuGeheKAi+GemeGegOKAi+GeiOGfkuGemOGfhOGfh+KAi+Ger+GegOGen+GetuGemuKAi+Gej+GfguGemOGeveGemeKAi+Gen+GemOGfkuGemuGetuGelOGfi+KAi+GeluGfkOGej+GfjOGemOGetuGek+KAi+GenOGej+GfkuGekOGeu+KAi+GelOGeieGfkuGeh+GetiIKKworI34gbXNnaWQgIkRlYmlhbiBgJXMnIHBhY2thZ2UgbWFuYWdlbWVudCBwcm9ncmFtIHF1ZXJ5IHRvb2xcbiIKKyN+IG1zZ3N0ciAi4Z6n4Z6U4Z6A4Z6a4Z6O4Z+N4oCL4Z6f4Z694Z6a4oCL4Z6A4Z6Y4Z+S4Z6Y4Z6c4Z634Z6S4Z644oCL4Z6C4Z+S4Z6a4Z6U4Z+L4Z6C4Z+S4Z6a4Z6E4oCL4Z6A4Z6J4Z+S4Z6F4Z6U4Z+LIGAlcycg4Z6K4Z+B4Z6U4Z+A4Z6TXG4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiIgorI34gIlVzZSAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgcXVlcnlpbmcgcGFja2FnZXM7XG4iCisjfiAiVXNlIC0tbGljZW5zZSBmb3IgY29weXJpZ2h0IGxpY2Vuc2UgYW5kIGxhY2sgb2Ygd2FycmFudHkgKEdOVSBHUEwpLiIKKyN+IG1zZ3N0ciAiIgorI34gIuGelOGfkuGemuGeviAtLWhlbHAg4Z6f4Z6Y4Z+S4Z6a4Z624Z6U4Z+L4oCL4Z6H4Z+G4Z6T4Z694Z6Z4oCL4Z6i4Z+G4Z6W4Z644oCL4Z6A4Z624Z6a4oCL4Z6f4Z694Z6a4oCL4Z6A4Z6J4Z+S4Z6F4Z6U4Z+LXG4iCisjfiAi4Z6U4Z+S4Z6a4Z6+IC0tbGljZW5zZSDhnp/hnpjhn5LhnprhnrbhnpThn4vigIvhnqLhnrbhnofhn5LhnonhnrbhnpThn5Dhno7hn5Lhno7igIvhnprhnoDhn5Lhnp/hnrbhnp/hnrfhnpHhn5LhnpLhnrcg4Z6T4Z634Z6E4oCL4Z6B4Z+S4Z6c4Z+H4oCL4Z6A4Z624Z6a4oCL4Z6S4Z624Z6T4Z62IChHTlUgR1BMKcKg4Z+UXG4iCisjfiAiXG4iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gY2hvd24gJXM6ICVzIgorI34gbXNnc3RyICLhnpThnrbhnpPigIvhnpThnprhnrbhnofhn5DhnpnigIvhnorhnr7hnpjhn5LhnpThnrggY2hvd24gJXPCoOGfliAlcyIKKworI34gbXNnaWQgImZhaWxlZCB0byBjaG1vZCAlczogJXMiCisjfiBtc2dzdHIgIuGelOGetuGek+KAi+GelOGemuGetuGeh+GfkOGemeKAi+GeiuGevuGemOGfkuGelOGeuCBjaG1vZCAlc8Kg4Z+WICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGZvcmsgZm9yIGNsZWFudXAiCisjfiBtc2dzdHIgIuGelOGetuGek+KAi+GelOGemuGetuGeh+GfkOGemeKAi+GegOGfkuGek+Geu+GehOKAi+GegOGetuGemuKAi+GeheGetuGelOGfi+KAi+GeleGfkuGeiuGevuGemOKAi+Gen+GemOGfkuGeouGetuGejyIKKworI34gbXNnaWQgImZhaWxlZCB0byB3YWl0IGZvciBybSBjbGVhbnVwIgorI34gbXNnc3RyICLhnpThnrbhnpPigIvhnpThnprhnrbhnofhn5DhnpnigIvhnoDhn5LhnpPhnrvhnoTigIvhnoDhnrbhnprigIvhnprhnoThn4vhnoXhnrbhn4bigIvhnoDhnrbhnprigIvhnp/hnpjhn5LhnqLhnrbhno8gcm0iCisKKyN+IG1zZ2lkICJybSBjbGVhbnVwIGZhaWxlZCwgY29kZSAlZFxuIgorI34gbXNnc3RyICLhnoDhnrbhnprigIvhnp/hnpjhn5LhnqLhnrbhno8gcm0g4Z6U4Z624oCL4Z6T4Z6U4Z6a4Z624Z6H4Z+Q4Z6ZIOGegOGevOGeiiAlZFxuIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgcm0gLXJmIgorI34gbXNnc3RyICLhnpThnrbhnpPigIvhnpThnprhnrbhnofhn5DhnpnigIvhnoDhn5LhnpPhnrvhnoTigIvhnoDhnrbhnprigIvhnpThn5Lhnprhno/hnrfhnpThno/hn5Lhno/hnrcgcm0gLXJmIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHJlYWQgYGNvbnRyb2wnIChpbiBgJS4yNTVzJykiCisjfiBtc2dzdHIgIuGelOGetuGek+KAi+GelOGemuGetuGeh+GfkOGemeKAi+GegOGfkuGek+Geu+GehOKAi+GegOGetuGemuKAi+GeouGetuGekyBg4Z6c4Z6P4Z+S4Z6Q4Z674oCL4Z6U4Z6J4Z+S4Z6H4Z62JyAo4Z6T4Z+F4oCL4Z6A4Z+S4Z6T4Z674Z6EIGAlLjI1NXMnKSIKKworI34gbXNnaWQgInVuYWJsZSB0byBzZWVrIGJhY2siCisjfiBtc2dzdHIgIuGemOGet+Gek+GeouGetuGeheKAi+GemuGegOKAi+Gej+GfkuGemuGeoeGelOGfi+GegOGfkuGemuGfhOGemeKAiyIKKworI34gbXNnaWQgInVua25vd24gZGF0YSB0eXBlIGAlaScgaW4gYnVmZmVyX3dyaXRlXG4iCisjfiBtc2dzdHIgIuGemOGet+Gek+KAi+Gen+GfkuGeguGetuGem+Gfi+KAi+GelOGfkuGemuGel+GfgeGekeKAi+GekeGet+Gek+GfkuGek+Gek+GfkOGemSBgJWknIOGek+GfheGegOGfkuGek+Geu+GehCBidWZmZXJfd3JpdGVcbiIKKworI34gbXNnaWQgInVua25vd24gZGF0YSB0eXBlIGAlaScgaW4gYnVmZmVyX3JlYWRcbiIKKyN+IG1zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6f4Z+S4Z6C4Z624Z6b4Z+L4oCL4Z6U4Z+S4Z6a4Z6X4Z+B4Z6R4oCL4Z6R4Z634Z6T4Z+S4Z6T4Z6T4Z+Q4Z6ZIGAlaScg4Z6T4Z+F4Z6A4Z+S4Z6T4Z674Z6EIGJ1ZmZlcl9yZWFkXG4iCisKKyN+IG1zZ2lkICJ3YWl0IGZvciBzaGVsbCBmYWlsZWQiCisjfiBtc2dzdHIgIuGemuGehOGfi+GeheGetuGfhuKAi+Gen+GfguGem+KAi+GelOGetuGek+KAi+GelOGemuGetuGeh+GfkOGemSIKKworI34gbXNnaWQgInJlYWQgZXJyb3IgaW4gZGl2ZXJzaW9ucyBbaV0iCisjfiBtc2dzdHIgIuGeouGetuGek+KAi+GegOGfhuGeoOGeu+Gen+KAi+Gek+GfheKAi+GegOGfkuGek+Geu+GehOKAi+GegOGetuGemuKAi+GelOGehOGfkuGenOGfguGemiBbaV0iCisKKyN+IG1zZ2lkICJ1bmxpbmsiCisjfiBtc2dzdHIgIuGemOGet+Gek+KAi+Gej+Gel+GfkuGeh+GetuGelOGfiyIKKworI34gbXNnaWQgImNobW9kIgorI34gbXNnc3RyICJjaG1vZCIKKworI34gbXNnaWQgImRlbGV0ZSIKKyN+IG1zZ3N0ciAi4Z6b4Z674Z6UIgorCisjLCBmdXp6eQorI34gbXNnaWQgImZhaWxlZCB0byAlcyAnJS4yNTVzJyIKKyN+IG1zZ3N0ciAi4Z6U4Z624Z6T4Z6U4Z6a4Z624Z6H4Z+Q4Z6ZICVzIGAlJS4yNTVzJyIKKworI34gbXNnaWQgIndhaXQgZm9yIGRwa2ctc3BsaXQgZmFpbGVkIgorI34gbXNnc3RyICLhnprhnoThn4vhnoXhnrbhn4YgZHBrZy1zcGxpdCDhnpThnrbhnpPigIvhnpThnprhnrbhnofhn5DhnpkiCisKKyN+IG1zZ2lkICJjYW5ub3QgcmVtb3ZlIGZpbGUgYCUuMjUwcyciCisjfiBtc2dzdHIgIuGemOGet+Gek+KAi+GeouGetuGeheKAi+GemeGegOKAi+Ger+GegOGen+GetuGemuKAi+GeheGfgeGeiSBgJS4yNTBzJyIKKworI34gbXNnaWQgIiIKKyN+ICJcbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDIwMDAgV2ljaGVydCBBa2tlcm1hbi4iCisjfiBtc2dzdHIgIiIKKyN+ICJcbiIKKyN+ICLhnprhnoDhn5Lhnp/hnrbhnp/hnrfhnpHhn5LhnpLhnrfigIvhnobhn5LhnpPhnrbhn4bhn6Lhn6Dhn6Dhn6Ag4Z6K4Z+E4Z6ZIFdpY2hlcnQgQWtrZXJtYW7CoOGflCIKKworI34gbXNnaWQgIm5vIG1vZGUgc3BlY2lmaWVkIgorI34gbXNnc3RyICLhnoLhn5LhnpjhnrbhnpPigIvhnprhnpThn4DhnpTigIvhnpThnrbhnpPigIvhnpThnonhn5LhnofhnrbhnoDhn4vigIsiCisKKyN+IG1zZ2lkICJpbGxlZ2FsIHVzZXIgJXMiCisjfiBtc2dzdHIgIuGeouGfkuGek+GegOKAi+GelOGfkuGemuGevuKAi+GemOGet+Gek+KAi+Gej+GfkuGemuGeueGemOGej+GfkuGemuGevOGenOKAiyVzIgorCisjfiBtc2dpZCAibm9uLWV4aXN0aW5nIHVzZXIgJXMiCisjfiBtc2dzdHIgIuGeguGfkuGemOGetuGek+KAi+GeouGfkuGek+GegOKAi+GelOGfkuGemuGevuKAi+GeiuGfguGem+KAi+GemOGetuGek+KAi+Gen+GfkuGemuGetuGelOGfiyAlcyIKKworI34gbXNnaWQgImlsbGVnYWwgZ3JvdXAgJXMiCisjfiBtc2dzdHIgIuGegOGfkuGemuGeu+GemOKAi+GemOGet+Gek+KAi+Gej+GfkuGemuGeueGemOGej+GfkuGemuGevOGenCAlcyIKKworI34gbXNnaWQgIm5vbi1leGlzdGluZyBncm91cCAlcyIKKyN+IG1zZ3N0ciAi4Z6C4Z+S4Z6Y4Z624Z6T4oCL4Z6A4Z+S4Z6a4Z674Z6Y4oCL4Z6K4Z+C4Z6b4oCL4Z6Y4Z624Z6T4oCL4Z6f4Z+S4Z6a4Z624Z6U4Z+LICVzIgorCisjfiBtc2dpZCAiaWxsZWdhbCBtb2RlICVzIgorI34gbXNnc3RyICLhnprhnpThn4DhnpTigIvhnpjhnrfhnpPigIvhno/hn5Lhnprhnrnhnpjhno/hn5LhnprhnrzhnpzigIsgJXMiCisKKyN+IG1zZ2lkICJhYm9ydGluZyIKKyN+IG1zZ3N0ciAi4Z6U4Z+E4Z+H4Z6U4Z6E4Z+LIgorCisjfiBtc2dpZCAiY2Fubm90IG9wZW4gc3RhdG92ZXJyaWRlOiAlcyIKKyN+IG1zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6U4Z6+4Z6A4oCLIHN0YXRvdmVycmlkZcKg4Z+WJXMiCisKKyN+IG1zZ2lkICJNdWx0aXBsZSBvdmVycmlkZXMgZm9yIFwiJXNcIiwgYWJvcnRpbmciCisjfiBtc2dzdHIgIuGegOGetuGemuKAi+GelOGeiuGet+Gen+GfgeGekuKAi+Geh+GetuKAi+GeheGfkuGemuGevuGek+KAi+Gen+GemOGfkuGemuGetuGelOGfiyBcIiVzXCIg4Z6U4Z+E4Z+H4Z6U4Z6E4Z+LIgorCisjfiBtc2dpZCAiZmFpbGVkIHdyaXRlIGR1cmluZyBoYXNocmVwb3J0IgorI34gbXNnc3RyICLhnpThnrbhnpPigIvhnpThnprhnrbhnofhn5DigIvhnpnhnoDhn5LhnpPhnrvigIvhnoThnoDhnrbhnprigIvigIvhnp/hnprhnp/hn4HhnprigIvhnoDhn4bhnqHhnrvhnoTigIvhnpbhn4HhnpsgaGFzaHJlcG9ydCIKKworI34gbXNnaWQgImNvbmZpZ3VyYXRpb24gZXJyb3I6IHVua25vd24gb3B0aW9uICVzIgorI34gbXNnc3RyICLhnoDhn4bhnqDhnrvhnp/igIvhnoDhn4bhno7igIvhno/hn4vhnprhnoXhnpPhnrbhnp/hnpjhn5Lhnpbhn5DhnpPhn5LhnpLCoOGfluKAiyDhnpjhnrfhnpPhnp/hn5LhnoLhnrbigIvhnpvhn4vhnofhnpjhn5Lhnprhnr7hnp8gJXMiCisKKyN+IG1zZ2lkICJjb25maWd1cmF0aW9uIGVycm9yOiAlcyBkb2VzIG5vdCB0YWtlIGEgdmFsdWUiCisjfiBtc2dzdHIgIuGegOGfhuGeoOGeu+Gen+KAi+GegOGfhuGejuGej+Gfi+KAi+GemuGeheGek+GetuGen+GemOGfkuGeluGfkOGek+GfkuGeksKg4Z+WICVzIOGemOGet+Gek+KAi+GemeGegOKAi+Gej+GemOGfkuGem+GfgyIKKworIywgZnV6enkKKyN+IG1zZ2lkICJ1bmV4ZWNwdGVkIGVuZCBvZiBsaW5lIGluIHN0YXRvdmVycmlkZSBmaWxlIgorI34gbXNnc3RyICLhnoXhnrvhnoTigIvhnpThnpPhn5LhnpHhnrbhno/hn4vigIvhnorhn4LhnpvigIvhnpjhnrfhnpPigIvhnprhn4bhnpbhnrnhnoTigIvigIvhnpHhnrvhnoDhnoDhn5LhnpPhnrvhnoTigIvhnojhn5Lhnpjhn4Thn4figIvhnoDhnonhn5LhnoXhnpThn4vigIvhnpPhn4XigIvhnpThnpPhn5LhnpHhnrbhno/hn4sgJWQiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiLS1jaGVjay1zdXBwb3J0ZWQgdGFrZXMgbm8gYXJndW1lbnRzIgorI34gbXNnc3RyICItLSVzIOGemOGet+Gek+KAi+Gej+GfkuGemuGevOGenOGegOGetuGemuKAi+GeouGetuGeguGeu+GemeGemOGfieGehOGfiyIKKworI34gbXNnaWQgIi0tZm9yZ2V0LW9sZC11bmF2YWlsIHRha2VzIG5vIGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiLS1mb3JnZXQtb2xkLeGemOGet+Gek+KAi+Gej+GfkuGemuGevOGenOKAi+GegOGetuGemuKAi+GeouGetuGeguGeu+GemeGemOGfieGehOGfi+KAi+GeiuGfguGem+KAi+GemOGet+Gek+KAi+GeouGetuGeheKAi+GelOGfkuGemuGevuKAi+GelOGetuGekyIKKworI34gbXNnaWQgIiIKKyN+ICJcbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDE5OTQsMTk5NSBJYW4gSmFja3Nvbi4iCisjfiBtc2dzdHIgIiIKKyN+ICJcbiIKKyN+ICLhnprhnoDhn5Lhnp/hnrbhnp/hnrfhnpHhn5LhnpLhnrfigIvhnobhn5LhnpPhnrbhn4Yg4Z+h4Z+p4Z+p4Z+kLOGfoeGfqeGfqeGfpSDhnorhn4ThnpkgSWFuIEphY2tzb27CoOGflCIKKworI34gbXNnaWQgIiIKKyN+ICJVc2FnZTogJXMgWzxvcHRpb25zPiAuLi5dIFstLV0gPGZpbGVuYW1lPlxuIgorI34gIlxuIgorI34gIk9wdGlvbnM6XG4iCisjfiAiICAtLXNlY3Rpb24gPHJlZ2V4cD4gPHRpdGxlPlxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHB1dCB0aGUgbmV3IGVudHJ5IGluIHRoZSA8cmVnZXg+IG1hdGNoZWQgIgorI34gInNlY3Rpb25cbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICBvciBjcmVhdGUgYSBuZXcgb25lIHdpdGggPHRpdGxlPiBpZiBub24tIgorI34gImV4aXN0ZW50LlxuIgorI34gIiAgLS1tZW51ZW50cnk9PHRleHQ+ICAgICAgIHNldCB0aGUgbWVudSBlbnRyeS5cbiIKKyN+ICIgIC0tZGVzY3JpcHRpb249PHRleHQ+ICAgICBzZXQgdGhlIGRlc2NyaXB0aW9uIHRvIGJlIHVzZWQgaW4gdGhlIG1lbnUgIgorI34gImVudHJ5LlxuIgorI34gIiAgLS1pbmZvLWZpbGU9PHBhdGg+ICAgICAgIHNwZWNpZnkgaW5mbyBmaWxlIHRvIGluc3RhbGwgaW4gdGhlICIKKyN+ICJkaXJlY3RvcnkuXG4iCisjfiAiICAtLWRpci1maWxlPTxwYXRoPiAgICAgICAgc3BlY2lmeSBmaWxlIG5hbWUgb2YgaW5mbyBkaXJlY3RvcnkgZmlsZS5cbiIKKyN+ICIgIC0taW5mb2Rpcj08ZGlyZWN0b3J5PiAgICBzYW1lIGFzICctLWRpci1maWxlPTxkaXJlY3Rvcnk+L2RpcicuXG4iCisjfiAiICAtLWluZm8tZGlyPTxkaXJlY3Rvcnk+ICAgbGlrZXdpc2UuXG4iCisjfiAiICAtLWtlZXAtb2xkICAgICAgICAgICAgICAgZG8gbm90IHJlcGxhY2UgZW50cmllcyBub3IgcmVtb3ZlIGVtcHR5IG9uZXMuXG4iCisjfiAiICAtLXJlbW92ZSAgICAgICAgICAgICAgICAgcmVtb3ZlIHRoZSBlbnRyeSBzcGVjaWZpZWQgYnkgPGZpbGVuYW1lPiAiCisjfiAiYmFzZW5hbWUuXG4iCisjfiAiICAtLXJlbW92ZS1leGFjdGx5ICAgICAgICAgcmVtb3ZlIHRoZSBleGFjdCA8ZmlsZW5hbWU+IGVudHJ5LlxuIgorI34gIiAgLS10ZXN0ICAgICAgICAgICAgICAgICAgIGVuYWJsZXMgdGVzdCBtb2RlIChubyBhY3Rpb25zIHRha2VuKS5cbiIKKyN+ICIgIC0tZGVidWcgICAgICAgICAgICAgICAgICBlbmFibGVzIGRlYnVnIG1vZGUgKHNob3cgbW9yZSBpbmZvcm1hdGlvbikuXG4iCisjfiAiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgZG8gbm90IHNob3cgb3V0cHV0IG1lc3NhZ2VzLlxuIgorI34gIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisjfiAiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIuGemuGelOGfgOGelOKAi+GelOGfkuGemuGevsKg4Z+WICVzIFs84Z6H4Z6Y4Z+S4Z6a4Z6+4Z6fPiAuLi5dIFstLV0gPOGeiOGfkuGemOGfhOGfh+KAi+Ger+GegOGen+GetuGemj5cbiIKKyN+ICJcbiIKKyN+ICLhnofhnpjhn5Lhnprhnr7hnp/CoOGfllxuIgorI34gIiAgLS1zZWN0aW9uIDxyZWdleHA+IDzhnoXhn4bhno7hnoTigIvhnofhnr7hnoQ+XG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAg4Z6K4Z624Z6A4Z+L4oCL4Z6S4Z624Z6P4Z674Z6Q4Z+S4Z6Y4Z644oCL4Z6A4Z+S4Z6T4Z674Z6EIDxyZWdleD4g4Z6V4Z+S4Z6T4Z+C4Z6A4oCL4Z6K4Z+C4Z6b4oCL4Z6Y4Z634Z6T4oCL4Z6V4Z+S4Z6C4Z684Z6V4Z+S4Z6C4Z6EXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAg4Z6sIOGelOGehOGfkuGegOGevuGej+KAi+GekOGfkuGemOGeuOKAi+GemOGeveGemeKAi+Gej+GetuGemCA84Z6F4Z+G4Z6O4Z6E4oCL4Z6H4Z6+4Z6EPiDhnpThn5Lhnprhnp/hnrfhnpPigIvhnpThnr7igIvhnpjhnrfhnpPigIvhnpHhnrbhnpPhn4vigIvhnpjhnrbhnpPCoOGflFxuIgorI34gIiAgLS1tZW51ZW50cnk9POGeouGej+GfkuGekOGelOGekT4gICAgICAg4Z6A4Z+G4Z6O4Z6P4Z+L4oCL4Z6S4Z624Z6P4Z674oCL4Z6Y4Z+J4Z664Z6T4Z674Z6ZwqDhn5RcbiIKKyN+ICIgIC0tZGVzY3JpcHRpb249POGeouGej+GfkuGekOGelOGekT4gICAgIOGegOGfhuGejuGej+Gfi+KAi+KAi+Gen+GfgeGeheKAi+GegOGfkuGeiuGeuOKAi+GeluGet+GeluKAi+GejuGfjOGek+GetuKAi+KAi+GeiuGfguGem+KAi+Gej+GfkuGemuGevOGenOKAi+GelOGfkuGemuGevuKAi+KAi+GegOGfkuGek+Geu+KAi+GehOKAi+KAi+GekuGetuGej+Geu+KAi+GemOGfieGeuuGek+Geu+GemcKg4Z+UXG4iCisjfiAiICAtLWluZm8tZmlsZT084Z6V4Z+S4Z6b4Z684Z6cPiAgICAgICDhnpThnonhn5LhnofhnrbhnoDhn4vigIvhnq/hnoDhnp/hnrbhnprigIvhnpbhn5Dhno/hn4zhnpjhnrbhnpPigIvhno/hn5LhnprhnrzhnpzigIvhnorhn4bhnqHhnr7hnoTigIvhnoDhn5LhnpPhnrvhnoTigIvhnpDhno/CoOGflFxuIgorI34gIiAgLS1kaXItZmlsZT084Z6V4Z+S4Z6b4Z684Z6cPiAgICAgICAg4Z6U4Z6J4Z+S4Z6H4Z624Z6A4Z+L4oCL4Z6I4Z+S4Z6Y4Z+E4Z+H4oCL4Z6v4Z6A4Z6f4Z624Z6a4oCL4Z6a4Z6U4Z6f4Z+L4oCL4Z6v4Z6A4Z6f4Z624Z6a4oCL4Z6Q4Z6P4oCL4Z6W4Z+Q4Z6P4Z+M4Z6Y4Z624Z6TwqDhn5RcbiIKKyN+ICIgIC0taW5mb2Rpcj084Z6Q4Z6PPiAgICDhnorhnrzhnoXigIvhnoLhn5LhnpPhnrbigIvhnpPhnrnhnoQgJy0tZGlyLWZpbGU9POGekOGejz4vZGlyJy5cbiIKKyN+ICIgIC0taW5mby1kaXI9POGekOGejz4gICDhnorhnrzhnoXigIvhnorhn4LhnprCoOGflFxuIgorI34gIiAgLS1rZWVwLW9sZCAgICAgICAgICAgICAgIOGegOGeu+GfhuKAi+Geh+GfhuGek+GeveGen+KAi+GekuGetuGej+GeuyDhnqzigIvhnpnhnoDigIvhnpLhnrbhno/hnrvigIvhnpHhnpHhn4HigIvhnoXhn4HhnonCoOGflFxuIgorI34gIiAgLS1yZW1vdmUgICAgICAgICAgICAgICAgIOGemeGegOKAi+GekuGetuGej+Geu+KAi+GeiuGfguGem+KAi+GelOGetuGek+KAi+GelOGeieGfkuGeh+GetuGegOGfi+KAi+GeiuGfhOGemSA84Z6I4Z+S4Z6Y4Z+E4Z+H4oCL4Z6v4Z6A4Z6f4Z624Z6aPiDhnojhn5Lhnpjhn4Thn4figIvhnpjhnrzhnpvhnorhn5LhnovhnrbhnpPCoOGflFxuIgorI34gIiAgLS1yZW1vdmUtZXhhY3RseSAgICAgICAgIOGemeGegOKAi+GekuGetuGej+GeuyA84Z6I4Z+S4Z6Y4Z+E4Z+H4oCL4Z6v4Z6A4Z6f4Z624Z6aPiDhnofhnrbhnoDhn4vhnpvhnrbhnoDhn4vigIvhnoXhn4HhnonCoOGflFxuIgorI34gIiAgLS10ZXN0ICAgICAgICAgICAgICAgICAgIOGeouGek+Geu+GeieGfkuGeieGetuGej+KAi+GemuGelOGfgOGelOKAi+Gen+GetuGegOGem+GfkuGelOGehCAo4Z6C4Z+S4Z6Y4Z624Z6T4oCL4Z6f4Z6A4Z6Y4Z+S4Z6Y4oCL4Z6A4Z6+4Z6P4oCL4Z6h4Z6+4Z6EKcKg4Z+UXG4iCisjfiAiICAtLWRlYnVnICAgICAgICAgICAgICAgICAg4Z6i4Z6T4Z674Z6J4Z+S4Z6J4Z624Z6P4oCL4Z6a4Z6U4Z+A4Z6U4oCL4Z6U4Z+G4Z6U4Z624Z6P4Z+L4oCL4Z6A4Z+G4Z6g4Z674Z6fICjhnpThnoThn5LhnqDhnrbhnonigIvhnpbhn5Dhno/hn4zhnpjhnrbhnpPigIvhnoXhn5Lhnprhnr7hnpMpwqDhn5RcbiIKKyN+ICIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICDhnoDhnrvhn4bhnpThnoThn5LhnqDhnrbhnonigIvhnp/hnrbhnprigIvhnpvhnpHhn5LhnpLhnpXhnpvCoOGflFxuIgorI34gIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIOGelOGehOGfkuGeoOGetuGeieKAi+Gen+GetuGemuKAi+Geh+GfhuGek+GeveGemeKAi+KAi+Gek+GfgeGfh8Kg4Z+UXG4iCisjfiAiICAtLXZlcnNpb24gICAgICAgICAgICAgICAg4Z6U4Z6E4Z+S4Z6g4Z624Z6J4oCL4Z6A4Z+G4Z6O4Z+CwqDhn5RcbiIKKworI34gbXNnaWQgImNvdWxkIG5vdCBvcGVuIHN0ZGVyciBmb3Igb3V0cHV0ISAlcyIKKyN+IG1zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6U4Z6+4Z6AIHN0ZGVyciDhnp/hnpjhn5LhnprhnrbhnpThn4vigIvhnpvhnpHhn5LhnpLhnpXhnpvCoCEgJXMiCisKKyN+IG1zZ2lkICIlczogLS1zZWN0aW9uIG5lZWRzIHR3byBtb3JlIGFyZ3MiCisjfiBtc2dzdHIgIiVzOiAtLXNlY3Rpb24g4Z6P4Z+S4Z6a4Z684Z6c4Z6A4Z624Z6a4oCL4Z6i4Z624Z6C4Z674Z6Z4Z6Y4Z+J4Z6E4Z+L4oCL4Z6F4Z+S4Z6a4Z6+4Z6T4oCL4Z6H4Z624Z6E4oCL4Z6W4Z644Z6aIgorCisjfiBtc2dpZCAiJXM6IG9wdGlvbiAtLSVzIGlzIGRlcHJlY2F0ZWQgKGlnbm9yZWQpIgorI34gbXNnc3RyICIlc8Kg4Z+WIOGeh+GemOGfkuGemuGevuGenyAtLSVzIOGej+GfkuGemuGevOGenOGelOGetuGek+KAi+GelOGemuGet+GemeGetuGemSAo4Z6Y4Z634Z6T4Z6i4Z6+4Z6W4Z6+KSIKKworI34gbXNnaWQgIiVzOiB1bmtub3duIG9wdGlvbiBgJXMnIgorI34gbXNnc3RyICIlc8Kg4Z+WIOGemOGet+Gek+KAi+Gen+GfkuGeguGetuGem+Gfi+KAi+Geh+GemOGfkuGemuGevuGen2AlcyciCisKKyN+IG1zZ2lkICIlczogdG9vIG1hbnkgYXJndW1lbnRzIgorI34gbXNnc3RyICIlc8Kg4Z+WIOGemOGetuGek+KAi+GeouGetuGeguGeu+GemeGemOGfieGehOGfi+KAi+GeheGfkuGemuGevuGek+KAi+GeluGfgeGegCIKKworI34gbXNnaWQgIiVzOiAtLXNlY3Rpb24gaWdub3JlZCB3aXRoIC0tcmVtb3ZlIgorI34gbXNnc3RyICIlczogLS1zZWN0aW9uIOGelOGetuGek+KAi+GemOGet+Gek+KAi+GeouGevuGeluGevuKAi+GeiuGfhOGemSAtLXJlbW92ZSIKKworI34gbXNnaWQgIiVzOiAtLWRlc2NyaXB0aW9uIGlnbm9yZWQgd2l0aCAtLXJlbW92ZSIKKyN+IG1zZ3N0ciAiJXM6IC0tZGVzY3JpcHRpb24g4Z6U4Z624Z6T4oCL4Z6Y4Z634Z6T4oCL4Z6i4Z6+4Z6W4Z6+4oCL4Z6K4Z+E4Z6ZIC0tcmVtb3ZlIgorCisjfiBtc2dpZCAiJXM6IHRlc3QgbW9kZSAtIGRpciBmaWxlIHdpbGwgbm90IGJlIHVwZGF0ZWQiCisjfiBtc2dzdHIgIiVzwqDhn5Yg4Z6a4Z6U4Z+A4Z6U4Z6f4Z624Z6A4Z6b4Z+S4Z6U4Z6EIC0gZGlyIOGer+GegOGen+GetuGemuKAi+Gek+GeueGehOKAi+GemOGet+Gek+KAi+Gej+GfkuGemuGevOGenOKAi+GelOGetuGek+KAi+GekuGfkuGenOGevuKAi+GesuGfkuGemeKAi+GekeGetuGek+Gfi+KAi+Gen+GemOGfkOGemeKAi+GekeGfgSIKKworI34gbXNnaWQgIiVzOiB3YXJuaW5nLCBpZ25vcmluZyBjb25mdXNpbmcgSU5GTy1ESVItRU5UUlkgaW4gZmlsZS4iCisjfiBtc2dzdHIgIiVzwqDhn5Yg4Z6W4Z+S4Z6a4Z6Y4Z624Z6TIOGemOGet+Gek+KAi+GeouGevuGeluGevuKAi+GegOGetuGemuKAi+GemeGem+Gfi+KAi+GeheGfkuGemuGeoeGfhiBJTkZPLURJUi1FTlRSWSDhnoDhn5LhnpPhnrvhnoTigIvhnq/hnoDhnp/hnrbhnprCoOGflCIKKworI34gbXNnaWQgImludmFsaWQgaW5mbyBlbnRyeSIKKyN+IG1zZ3N0ciAi4Z6S4Z624Z6P4Z674oCL4Z6W4Z+Q4Z6P4Z+M4Z6Y4Z624Z6T4oCL4Z6Y4Z634Z6T4oCL4Z6P4Z+S4Z6a4Z654Z6Y4Z6P4Z+S4Z6a4Z684Z6cIgorCisjfiBtc2dpZCAiIgorI34gIlxuIgorI34gIk5vIGBTVEFSVC1JTkZPLURJUi1FTlRSWScgYW5kIG5vIGBUaGlzIGZpbGUgZG9jdW1lbnRzJy5cbiIKKyN+ICIlczogdW5hYmxlIHRvIGRldGVybWluZSBkZXNjcmlwdGlvbiBmb3IgYGRpcicgZW50cnkgLSBnaXZpbmcgdXBcbiIKKyN+IG1zZ3N0ciAiIgorI34gIlxuIgorI34gIuGeguGfkuGemOGetuGekyBgU1RBUlQtSU5GTy1ESVItRU5UUlknIOGek+Get+GehOKAi+GeguGfkuGemOGetuGekyBg4Z6v4Z6A4Z6f4Z624Z6a4oCL4Z6T4Z+B4Z+HJ8Kg4Z+UXG4iCisjfiAiJXPCoOGfliDhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnoDhn4bhno7hno/hn4vigIvhnp/hn4HhnoXhnoDhn5Lhno/hnrjigIvhnpbhnrfhnpbhno7hn4zhnpPhnrbigIvhnp/hnpjhn5LhnprhnrbhnpThn4vigIvhnpLhnrbhno/hnrsgYGRpcicgZW50cnkgLSDhnpThn4Thn4fhnpThnoThn4tcbiIKKworI34gbXNnaWQgIiVzOiBubyBmaWxlICVzLCByZXRyaWV2aW5nIGJhY2t1cCBmaWxlICVzLiIKKyN+IG1zZ3N0ciAiJXPCoOGfliDhnoLhn5LhnpjhnrbhnpPigIvhnq/hnoDhnp/hnrbhnpogJXMg4Z6R4Z624Z6J4oCL4Z6Z4Z6A4oCL4Z6v4Z6A4Z6f4Z624Z6a4oCL4Z6W4Z+Q4Z6P4Z+M4Z6Y4Z624Z6T4oCL4Z6U4Z6Y4Z+S4Z6a4Z674Z6E4Z6R4Z674Z6AICVzwqDhn5QiCisKKyN+IG1zZ2lkICIlczogbm8gYmFja3VwIGZpbGUgJXMgYXZhaWxhYmxlLCByZXRyaWV2aW5nIGRlZmF1bHQgZmlsZS4iCisjfiBtc2dzdHIgIiVzwqDhn5Yg4Z6C4Z+S4Z6Y4Z624Z6T4oCL4Z6v4Z6A4Z6f4Z624Z6a4oCL4Z6W4Z+Q4Z6P4Z+M4Z6Y4Z624Z6T4oCL4Z6U4Z6Y4Z+S4Z6a4Z674Z6E4Z6R4Z674Z6AICVzICDhnpHhnrbhnonigIvhnpnhnoDigIvhnq/hnoDhnp/hnrbhnprigIvhnpvhn4bhnpPhnrbhn4bhnorhnr7hnpjCoOGflCIKKworI34gbXNnaWQgIiVzOiBubyBiYWNrdXAgZmlsZSAlcyBhdmFpbGFibGUuIgorI34gbXNnc3RyICIlc8Kg4Z+WIOGeguGfkuGemOGetuGek+KAi+Ger+GegOGen+GetuGemuKAi+GeluGfkOGej+GfjOGemOGetuGek+KAi+GelOGemOGfkuGemuGeu+GehOGekeGeu+GegCAlc8Kg4Z+UIgorCisjfiBtc2dpZCAiJXM6IG5vIGRlZmF1bHQgZmlsZSAlcyBhdmFpbGFibGUsIGdpdmluZyB1cC4iCisjfiBtc2dzdHIgIiVzwqDhn5Yg4Z6C4Z+S4Z6Y4Z624Z6T4oCL4Z6v4Z6A4Z6f4Z624Z6a4oCL4Z6b4Z+G4Z6T4Z624Z+G4Z6K4Z6+4Z6YICVzIOGelOGfhOGfh+GelOGehOGfi8Kg4Z+UIgorCisjfiBtc2dpZCAiJXM6IGZhaWxlZCB0byBsb2NrIGRpciBmb3IgZWRpdGluZyEgJXMiCisjfiBtc2dzdHIgIiVzwqDhn5Yg4Z6U4Z624Z6T4Z6U4Z6a4Z624Z6H4Z+Q4Z6Z4Z6A4Z+S4Z6T4Z674Z6E4Z6A4Z624Z6a4Z6F4Z624Z6A4Z+L4Z6f4Z+E4Z6Q4Z6P4Z6K4Z6+4Z6Y4Z+S4Z6U4Z644Z6A4Z+C4Z6f4Z6Y4Z+S4Z6a4Z694Z6bwqAhICVzIgorCisjfiBtc2dpZCAidHJ5IGRlbGV0aW5nICVzPyIKKyN+IG1zZ3N0ciAi4Z6W4Z+S4Z6Z4Z624Z6Z4Z624Z6Y4oCL4Z6b4Z674Z6UICVzwqA/IgorCisjfiBtc2dpZCAidW5hYmxlIHRvIG9wZW4gJXM6ICVzIgorI34gbXNnc3RyICLhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnpThnr7hnoAgJXPCoOGfliAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byBjbG9zZSAlcyBhZnRlciByZWFkOiAlcyIKKyN+IG1zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6U4Z634Z6RICVzIOGelOGek+GfkuGekeGetuGelOGfi+KAi+GeluGeuOKAi+GeouGetuGek8Kg4Z+WICVzIgorCisjfiBtc2dpZCAiJXM6IGV4aXN0aW5nIGVudHJ5IGZvciBgJXMnIG5vdCByZXBsYWNlZCIKKyN+IG1zZ3N0ciAiJXPCoOGfliDhnpLhnrbhno/hnrvigIvhnorhn4LhnpvigIvhnpjhnrbhnpPigIvhnp/hn5LhnprhnrbhnpThn4vigIvhnp/hnpjhn5LhnprhnrbhnpThn4sgYCVzJyDhnpjhnrfhnpPigIvhnpThnrbhnpPigIvhnofhn4bhnpPhnr3hnp8iCisKKyN+IG1zZ2lkICIlczogcmVwbGFjaW5nIGV4aXN0aW5nIGRpciBlbnRyeSBmb3IgYCVzJyIKKyN+IG1zZ3N0ciAiJXPCoOGfliDhnoDhnrbhnprigIvhnofhn4bhnpPhnr3hnp/igIvhnpLhnrbhno/hnrvigIvhnpDhno/igIvhnorhn4LhnpvhnpjhnrbhnpPigIvhnp/hn5LhnprhnrbhnpThn4vigIvhnp/hnpjhn5LhnprhnrbhnpThn4sgYCVzJyIKKworI34gbXNnaWQgIiVzOiBjcmVhdGluZyBuZXcgc2VjdGlvbiBgJXMnIgorI34gbXNnc3RyICIlc8Kg4Z+WIOGegOGetuGemuGelOGehOGfkuGegOGevuGej+KAi+Gen+GemOGfkOGemeKAi+GekOGfkuGemOGeuOKAi2AlcyciCisKKyN+IG1zZ2lkICIlczogbm8gc2VjdGlvbnMgeWV0LCBjcmVhdGluZyBNaXNjZWxsYW5lb3VzIHNlY3Rpb24gdG9vLiIKKyN+IG1zZ3N0ciAiJXPCoOGfliDhnoLhn5LhnpjhnrbhnpPigIvhnpfhnrbhnoLigIvhnpPhn4XigIvhnqHhnr7hnpnigIvhnpHhn4Eg4Z6A4Z624Z6a4oCL4Z6U4Z6E4Z+S4Z6A4Z6+4Z6P4oCL4Z6X4Z624Z6C4oCL4Z6V4Z+S4Z6f4Z+B4Z6E4Z+X4oCL4Z6V4Z6E4oCL4Z6K4Z+C4Z6awqDhn5QiCisKKyN+IG1zZ2lkICIlczogbm8gc2VjdGlvbiBzcGVjaWZpZWQgZm9yIG5ldyBlbnRyeSwgcGxhY2luZyBhdCBlbmQiCisjfiBtc2dzdHIgIiVzwqDhn5Yg4Z6C4Z+S4Z6Y4Z624Z6T4oCL4Z6X4Z624Z6C4oCL4Z6U4Z624Z6T4oCL4Z6U4Z6J4Z+S4Z6H4Z624Z6A4Z+L4oCL4Z6f4Z6Y4Z+S4Z6a4Z624Z6U4Z+L4oCL4Z6S4Z624Z6P4Z674oCL4Z6Q4Z+S4Z6Y4Z64IOGeiuGetuGegOGfi+KAi+Gek+GfheKAi+GegeGetuGehOKAi+GeheGeu+GehCIKKworI34gbXNnaWQgIiVzOiBkZWxldGluZyBlbnRyeSBgJXMgLi4uJyIKKyN+IG1zZ3N0ciAiJXPCoOGfliDhnoDhn4bhnpbhnrvhnoTigIvhnpvhnrvhnpTigIvhnpLhnrbhno/hnrsgYCVzIC4uLiciCisKKyN+IG1zZ2lkICIlczogZW1wdHkgc2VjdGlvbiBgJXMnIG5vdCByZW1vdmVkIgorI34gbXNnc3RyICIlc8Kg4Z+WIOGen+GemOGfkOGemeKAi+GekeGekeGfgSBgJXMnIOGemOGet+Gek+GelOGetuGek+KAi+GemeGegOKAi+GeheGfgeGeiSIKKworI34gbXNnaWQgIiVzOiBkZWxldGluZyBlbXB0eSBzZWN0aW9uIGAlcyciCisjfiBtc2dzdHIgIiVzwqDhn5Yg4Z6b4Z674Z6U4oCL4Z6X4Z624Z6C4oCL4Z6R4Z6R4Z+BIGAlcyciCisKKyN+IG1zZ2lkICIlczogbm8gZW50cnkgZm9yIGZpbGUgYCVzJyBhbmQgbWVudSBlbnRyeSBgJXMnIgorI34gbXNnc3RyICIlc8Kg4Z+WIOGeguGfkuGemOGetuGek+KAi+GekuGetuGej+Geu+KAi+Gen+GemOGfkuGemuGetuGelOGfi+KAi+Ger+GegOGen+GetuGemiBgJXMnIOGek+Get+GehOKAi+GekuGetuGej+Geu+KAi+GemOGfieGeuuGek+Geu+GemSBgJXMnIgorCisjfiBtc2dpZCAiJXM6IG5vIGVudHJ5IGZvciBmaWxlIGAlcyciCisjfiBtc2dzdHIgIiVzwqDhn5Yg4Z6C4Z+S4Z6Y4Z624Z6T4oCL4Z6S4Z624Z6P4Z674oCL4Z6f4Z6Y4Z+S4Z6a4Z624Z6U4Z+L4oCL4Z6v4Z6A4Z6f4Z624Z6aIGAlcyciCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gYmFja3VwIG9sZCAlcywgZ2l2aW5nIHVwOiAlcyIKKyN+IG1zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6U4Z6Y4Z+S4Z6a4Z674Z6E4oCL4Z6R4Z674Z6AICVzIOGeheGetuGen+GfiyDhnpThn4Thn4fhnpThnoThn4vCoOGfliAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyAlczogJXMiCisjfiBtc2dzdHIgIuGemOGet+Gek+KAi+GeouGetuGeheKAi+GeiuGfhuGeoeGevuGehCAlc8Kg4Z+WICVzIOGekOGfkuGemOGeuCIKKworI34gbXNnaWQgIiVzOiBjb3VsZCBub3QgYmFja3VwICVzIGluICVzOiAlcyIKKyN+IG1zZ3N0ciAiJXPCoOGfliDhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnpThnpjhn5LhnprhnrvhnoThnpHhnrvhnoAgJXMg4Z6T4Z+F4oCL4Z6A4Z+S4Z6T4Z674Z6EICVzwqDhn5YgJXMiCisKKyN+IG1zZ2lkICIlczogd2FybmluZyAtIHVuYWJsZSB0byB1bmxvY2sgJXM6ICVzIgorI34gbXNnc3RyICIlc8Kg4Z+WIOGeluGfkuGemuGemOGetuGekyAtIOGemOGet+Gek+GeouGetuGeheGeiuGfhOGfh+Gen+GfhCAlc8Kg4Z+WICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHJlYWQgJXM6ICVkIgorI34gbXNnc3RyICLhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnqLhnrbhnpMgJXPCoOGfliAlZCIKKworI34gbXNnaWQgImRiZzogJXMiCisjfiBtc2dzdHIgImRiZ8Kg4Z+WICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIG9wZW4gdG1wZmlsZSAoY29udHJvbCksICVzIgorI34gbXNnc3RyICLhnpThnrbhnpPhnpThnprhnrbhnofhn5DhnpnhnoDhn5LhnpPhnrvhnoThnoDhnrbhnprhnpThnr7hnoAgdG1wZmlsZSAo4Z6c4Z6P4Z+S4Z6Q4Z674Z6U4Z6J4Z+S4Z6H4Z62KSAlcyIKKworI34gbXNnaWQgImZhaWxlZCB0byBvcGVuIHRtcGZpbGUgKGRhdGEpLCAlcyIKKyN+IG1zZ3N0ciAi4Z6U4Z624Z6T4oCL4Z6U4Z6a4Z624Z6H4Z+Q4Z6Z4oCL4Z6A4Z+S4Z6T4Z674Z6E4oCL4Z6A4Z624Z6a4oCL4Z6U4Z6+4Z6AIHRtcGZpbGUgKOGekeGet+Gek+GfkuGek+Gek+GfkOGemSkgJXMiCisKKyN+IG1zZ2lkICJpbnZhbGlkIG51bWJlciBmb3IgLS1jb21tYW5kLWZkIgorI34gbXNnc3RyICLhnpvhn4HhnoHigIvhnpjhnrfhnpPigIvhno/hn5Lhnprhnrnhnpjhno/hn5LhnprhnrzhnpzigIvhnp/hnpjhn5LhnprhnrbhnpThn4sgLS3hnpbhnrbhnoDhn5LhnpnigIvhnpThnonhn5LhnofhnrYtZmQiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcmV3aW5kIGF0IHN0YXJ0IG9mIHZzbnByaW50ZiIKKyN+IG1zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6B4Z624oCL4Z6a4Z6Q4Z6Z4oCL4Z6A4Z+S4Z6a4Z+E4Z6Z4oCL4Z6T4Z684Z6c4oCL4Z6F4Z+G4Z6O4Z674Z6F4oCL4Z6F4Z624Z6U4Z+L4Z6V4Z+S4Z6K4Z6+4Z6Y4oCL4Z6a4Z6U4Z6f4Z+LIHZzbnByaW50ZiIKKworI34gbXNnaWQgInVuYWJsZSB0byB0cnVuY2F0ZSBpbiB2c25wcmludGYiCisjfiBtc2dzdHIgIuGemOGet+Gek+KAi+GeouGetuGeheKAi+GegOGetuGej+GfiyB2c25wcmludGYg4Z6y4Z+S4Z6Z4oCL4Z6B4Z+S4Z6b4Z64IgorCisjfiBtc2dpZCAid3JpdGUgZXJyb3IgaW4gdnNucHJpbnRmIgorI34gbXNnc3RyICLhnoDhn4bhnqDhnrvhnp/igIvhnp/hnprhnp/hn4HhnprigIvhnpPhn4XigIvhnoDhn5LhnpPhnrvhnoQgdnNucHJpbnRmIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHN0YXQgaW4gdnNucHJpbnRmIgorI34gbXNnc3RyICLhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnpDhn5Lhnpvhn4LhnoTigIvhnoDhn5LhnpPhnrvhnoQgdnNucHJpbnRmIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHJld2luZCBpbiB2c25wcmludGYiCisjfiBtc2dzdHIgIuGemOGet+Gek+KAi+GeouGetuGeheKAi+GemuGegeGetuGekOGemeKAi+GegOGfkuGemuGfhOGemeKAi+GegOGfkuGek+Geu+GehOKAi+Ger+GegOGen+GetuGemuKAi+KAiyB2c25wcmludGYg4Z6U4Z624Z6T4Z6R4Z+B4oCLIgorCisjfiBtc2dpZCAicmVhZCBlcnJvciBpbiB2c25wcmludGYgdHJ1bmNhdGVkIgorI34gbXNnc3RyICLhnoDhn4bhnqDhnrvhnp/igIvhnqLhnrbhnpPigIvhnpPhn4XigIvhnoDhn5LhnpPhnrvhnoTigIt2c25wcmludGYg4Z6U4Z624Z6T4oCL4Z6A4Z624Z6P4Z+L4oCL4Z6y4Z+S4Z6Z4oCL4Z6B4Z+S4Z6b4Z64IgorCisjfiBtc2dpZCAiU3lzdGVtIGVycm9yIG5vLiVkIgorI34gbXNnc3RyICLhnoLhn5LhnpjhnrbhnpPigIvhnoDhn4bhnqDhnrvhnp/igIvhnpThn5Lhnprhnpbhn5DhnpPhn5LhnpLhnpvhn4HhnoElZCIKKworI34gbXNnaWQgIlNpZ25hbCBuby4lZCIKKyN+IG1zZ3N0ciAi4Z6f4Z6J4Z+S4Z6J4Z624oCL4Z6b4Z+B4Z6BJWQiCisKKyN+IG1zZ2lkICJkcGtnOiB3YXJuaW5nIC0gJXMgcmV0dXJuZWQgZXJyb3IgZXhpdCBzdGF0dXMgJWRcbiIKKyN+IG1zZ3N0ciAiZHBrZyDhn5Yg4Z6A4Z624Z6a4Z6W4Z+S4Z6a4Z6Y4Z624Z6TIC0gJXMg4Z6U4Z624Z6T4Z6P4Z+S4Z6a4Z6h4Z6U4Z+L4oCL4Z6A4Z+G4Z6g4Z674Z6f4oCL4Z6f4Z+S4Z6Q4Z624Z6T4Z6X4Z624Z6W4oCL4Z6F4Z+B4Z6JICVkXG4iCisKKyN+IG1zZ2lkICJkcGtnOiB3YXJuaW5nIC0gJXMga2lsbGVkIGJ5IHNpZ25hbCAoJXMpJXNcbiIKKyN+IG1zZ3N0ciAiZHBrZ8Kg4Z+WIOGegOGetuGemuKAi+GeluGfkuGemuGemOGetuGekyAtICVzIOGelOGetuGek+KAi+GeluGet+Geg+GetuGej+KAi+GeiuGfhOGemeKAi+Gen+GeieGfkuGeieGetiAoJXMpJXNcbiIKKworI34gbXNnaWQgImZhaWxlZCB0byByZWFkIGAlcycgYXQgbGluZSAlZCIKKyN+IG1zZ3N0ciAi4Z6U4Z624Z6T4oCL4Z6U4Z6a4Z624Z6H4Z+Q4Z6Z4oCL4Z6A4Z+S4Z6T4Z674Z6E4oCL4Z6A4Z624Z6a4oCL4Z6i4Z624Z6TIGAlcycg4Z6T4Z+F4oCL4Z6U4Z6T4Z+S4Z6R4Z624Z6P4Z+LICVkIgorCisjLCBmdXp6eQorI34gbXNnaWQgInBhcnNlIGVycm9yLCBpbiBmaWxlIGAlLjI1NXMnIG5lYXIgbGluZSAlZCIKKyN+IG1zZ3N0ciAiJXMg4Z6T4Z+F4oCL4Z6A4Z+S4Z6T4Z674Z6E4oCL4Z6v4Z6A4Z6f4Z624Z6aIGAlLjI1NXMnIOGek+GfheKAi+Geh+Get+Gej+KAi+GelOGek+GfkuGekeGetuGej+GfiyAlZCIKKworI34gbXNnaWQgIiBwYWNrYWdlIGAlLjI1NXMnIgorI34gbXNnc3RyICLhnoDhnonhn5LhnoXhnpThn4vigItgJS4yNTVzJyIKKworI34gbXNnaWQgImZhaWxlZCB0byByZWFsbG9jIGZvciB2YXJpYWJsZSBidWZmZXIiCisjfiBtc2dzdHIgIuKAiyIKKworI34gbXNnaWQgInByb2Nlc3NfYXJjaGl2ZSAuLi4gIGFscmVhZHkgZGlzYXBwZWFyZWQgISIKKyN+IG1zZ3N0ciAicHJvY2Vzc19hcmNoaXZlIC4uLiAg4Z6Y4Z634Z6T4Z6U4Z6E4Z+S4Z6g4Z624Z6JwqAhIgorCisjfiBtc2dpZCAiZ29iYmxlIHJlcGxhY2VkIGZpbGUgYCUuMjU1cyciCisjfiBtc2dzdHIgIuGelOGeieGfkuGeheGelOGfi+Ger+GegOGen+GetuGemuKAi+GeiuGfguGem+KAi+GelOGetuGek+Geh+GfhuGek+GeveGenyBgJS4yNTVzJyIKKworI34gbXNnaWQgImRwa2c6ICVzOiB3YXJuaW5nIC0gZmFpbGVkIHRvIHJlbW92ZSBgJS4yNTBzJzogJXNcbiIKKyN+IG1zZ3N0ciAiZHBrZ8Kg4Z+WICVzwqDhn5Yg4Z6W4Z+S4Z6a4Z6Y4Z624Z6TIC0g4Z6U4Z624Z6T4oCL4Z6U4Z6a4Z624Z6H4Z+Q4Z6Z4oCL4Z6A4Z+S4Z6T4Z674Z6E4oCL4Z6A4Z624Z6a4oCL4Z6Z4Z6AIGAlLjI1MHMnIOGeheGfgeGeicKg4Z+WICVzXG4iCisKKyN+IG1zZ2lkICItLWF1ZGl0IGRvZXMgbm90IHRha2UgYW55IGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiLS3hnoDhnrbhnprhnpbhnrfhnpPhnrfhno/hn5LhnpnhnpThnonhn5LhnofhnrbhnpjhnrfhnpPhno/hn5LhnprhnrzhnpzhnoDhnrbhnprhnqLhnrbhnoLhnrvhnpnhnpjhn4nhnoThn4vhnpHhn4EiCisKKyN+IG1zZ2lkICItLXlldC10by11bnBhY2sgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnRzIgorI34gbXNnc3RyICItLeGeluGek+GfkuGem+GetuKAi+GegOGeieGfkuGeheGelOGfi+KAi+GemOGet+Gek+KAi+Gej+GfkuGemuGevOGenOKAi+GegOGetuGemuKAi+GeouGetuGeguGeu+GemeGemOGfieGehOGfi+KAi+GekeGfgeKAiyIKKworI34gbXNnaWQgIi0tYXNzZXJ0LSogZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnRzIgorI34gbXNnc3RyICItLeGeouGfh+GeouGetuGehC0qIOGemOGet+Gek+KAi+Gej+GfkuGemuGevOGenOGegOGetuGemuKAi+GeouGetuGeguGeu+GemeGemOGfieGehOGfi+KAi+GekeGfgSIKKworI34gbXNnaWQgIi0tcHJlZGVwLXBhY2thZ2UgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tcHJlZGVwLeGegOGeieGfkuGeheGelOGfi+KAi+GemOGet+Gek+KAi+Gej+GfkuGemuGevOGenOGegOGetuGemuKAi+GeouGetuGeguGeu+GemeGemOGfieGehOGfi+KAi+GekeGfgSIKKworI34gbXNnaWQgIi0tcHJpbnQtYXJjaGl0ZWN0dXJlIGRvZXMgbm90IHRha2UgYW55IGFyZ3VtZW50IgorI34gbXNnc3RyICItLeGegOGetuGemuKAi+GelOGfhOGfh+GeluGeu+GemOGfkuGeluKAi+Gen+GfkuGekOGetuGelOGej+GfkuGemeGegOGemOGfkuGemOKAi+GemOGet+Gek+KAi+Gej+GfkuGemuGevOGenOGegOGetuGemuKAi+GeouGetuGeguGeu+GemeGemOGfieGehOGfi+KAi+GekeGfgSIKKworI34gbXNnaWQgInVuYWJsZSB0byBzdGF0IGluc3RhbGxlZCAlcyBzY3JpcHQgYCUuMjUwcyciCisjfiBtc2dzdHIgIuGemOGet+Gek+KAi+GeouGetuGeheKAi+GeheGetuGelOGfi+GeleGfkuGeiuGevuGemOKAi+Gen+GfkuGeguGfkuGemuGeuOGelCAlcyDhnorhn4LhnpvigIvhnpThnrbhnpPigIvhnorhn4bhnqHhnr7hnoQgYCUuMjUwcyciCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gc3RhdCBuZXcgJXMgc2NyaXB0IGAlLjI1MHMnIgorI34gbXNnc3RyICLhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnoXhnrbhnpThn4vhnpXhn5Lhnorhnr7hnpjigIvhnp/hn5LhnoLhn5LhnprhnrjhnpQgJXMg4Z6Q4Z+S4Z6Y4Z64IGAlLjI1MHMnIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGV4ZWN1dGUgbmV3ICVzIgorI34gbXNnc3RyICLhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnpThn5Lhnprhno/hnrfhnpThno/hn5Lhno/hnrcgJXMg4Z6Q4Z+S4Z6Y4Z64IgorCisjfiBtc2dpZCAiZHBrZzogd2FybmluZyAtIHVuYWJsZSB0byBzdGF0ICVzIGAlLjI1MHMnOiAlc1xuIgorI34gbXNnc3RyICJkcGtnwqDhn5Yg4Z6W4Z+S4Z6a4Z6Y4Z624Z6TIC0g4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6F4Z624Z6U4Z+L4Z6V4Z+S4Z6K4Z6+4Z6YICVzIGAlLjI1MHMnwqDhn5YgJXNcbiIKKworI34gbXNnaWQgIi0tc2V0LXNlbGVjdGlvbnMgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tc2V0LeGeh+GemOGfkuGemuGevuGen+KAi+GemOGet+Gek+KAi+Gej+GfkuGemuGevOGenOGegOGetuGemuKAi+GeouGetuGeguGeu+GemeGemOGfieGehOGfi+KAi+GejuGetuKAi+GemOGeveGemeKAi+GekeGfgSIKKworI34gbXNnaWQgIi0tY2xlYXItc2VsZWN0aW9ucyBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudCIKKyN+IG1zZ3N0ciAiLS1jbGVhci3hnofhnpjhn5Lhnprhnr7hnp/igIvhnpjhnrfhnpPigIvhno/hn5LhnprhnrzhnpzhnoDhnrbhnprigIvhnqLhnrbhnoLhnrvhnpnhnpjhn4nhnoThn4vigIvhno7hnrbhnpjhnr3hnpkiCisKKyN+IG1zZ2lkICItLWJ1aWxkIG5lZWRzIGEgZGlyZWN0b3J5IGFyZ3VtZW50IgorI34gbXNnc3RyICItLWJ1aWxkIOGej+GfkuGemuGevOGenOKAi+GegOGetuGemuKAi+GeouGetuGeguGeu+GemeGemOGfieGehOGfi+KAi+GekOGej+KAi+GemOGeveGemSIKKworI34gbXNnaWQgIiIKKyN+ICJkcGtnLWRlYjogd2FybmluZywgbm90IGNoZWNraW5nIGNvbnRlbnRzIG9mIGNvbnRyb2wgYXJlYS5cbiIKKyN+ICJkcGtnLWRlYjogYnVpbGRpbmcgYW4gdW5rbm93biBwYWNrYWdlIGluIGAlcycuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJkcGtnLWRlYsKg4Z+WIOGeluGfkuGemuGemOGetuGekyDhnpjhnrfhnpPigIvhnpbhnrfhnpPhnrfhno/hn5LhnpnigIvhnpjhnrbhno/hnrfhnoDhnrbigIvhnprhnpThnp/hn4vigIvhnpXhn5LhnpHhn4PigIvhnpzhno/hn5LhnpDhnrvigIvhnpThnonhn5LhnofhnrbCoOGflFxuIgorI34gImRwa2ctZGViwqDhn5Yg4Z6f4Z+S4Z6Q4Z624Z6U4Z6T4Z624oCL4Z6A4Z6J4Z+S4Z6F4Z6U4Z+L4oCL4Z6K4Z+C4Z6b4oCL4Z6Y4Z634Z6T4Z6f4Z+S4Z6C4Z624Z6b4Z+L4oCL4Z6Y4Z694Z6Z4oCL4Z6T4Z+F4oCL4Z6A4Z+S4Z6T4Z674Z6EIGAlcyfCoOGflFxuIgorCisjfiBtc2dpZCAiSW50ZXJuYWwgZXJyb3IsIGNvbXByZXNzX3R5cGUgYCVpJyB1bmtub3duISIKKyN+IG1zZ3N0ciAi4Z6A4Z+G4Z6g4Z674Z6f4oCL4oCL4oCL4Z6B4Z624Z6E4Z6A4Z+S4Z6T4Z674Z6E4oCLLCBjb21wcmVzc190eXBlIGAlaScg4Z6Y4Z634Z6T4Z6f4Z+S4Z6C4Z624Z6b4Z+LwqDigIshIgorCisjfiBtc2dpZCAiLS1qb2luIHJlcXVpcmVzIG9uZSBvciBtb3JlIHBhcnQgZmlsZSBhcmd1bWVudHMiCisjfiBtc2dzdHIgIi0tam9pbiDhno/hn5LhnprhnrzhnpzhnoDhnrbhnprigIvhnqLhnrbhnoLhnrvhnpnhnpjhn4nhnoThn4vigIvhnpXhn5LhnpPhn4LhnoDigIvhnq/hnoDhnp/hnrbhnprigIvhnpjhnr3hnpkg4Z6s4oCL4Z6F4Z+S4Z6a4Z6+4Z6TIgorCisjfiBtc2dpZCAiLS1saXN0cSBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudHMiCisjfiBtc2dzdHIgIi0tbGlzdHEg4Z6Y4Z634Z6T4oCL4Z6P4Z+S4Z6a4Z684Z6c4Z6A4Z624Z6a4oCL4Z6i4Z624Z6C4Z674Z6Z4Z6Y4Z+J4Z6E4Z+L4oCL4Z6O4Z624oCL4Z6Y4Z694Z6Z4oCL4Z6R4Z+BIgorCisjfiBtc2dpZCAiIgorI34gIlxuIgorI34gIkNvcHlyaWdodCAoQykgMTk5NiBLaW0tTWluaCBLYXBsYW4uIgorI34gbXNnc3RyICIiCisjfiAiXG4iCisjfiAi4Z6a4Z6A4Z+S4Z6f4Z624Z6f4Z634Z6R4Z+S4Z6S4Z634oCL4Z6G4Z+S4Z6T4Z624Z+GIOGfoeGfqeGfqeGfpiDhnorhn4ThnpkgS2ltLU1pbmggS2FwbGFuwqDhn5QiCisKKyN+IG1zZ2lkICIiCisjfiAiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIFstLV0gWzxkaXJuYW1lPl1cbiIKKyN+ICJcbiIKKyN+ICJPcHRpb25zOlxuIgorI34gIiAgLS11bnNhZmUgICAgIHNldCBzb21lIGFkZGl0aW9uYWwgcG9zc2libHkgdXNlZnVsIG9wdGlvbnMuXG4iCisjfiAiICAgICAgICAgICAgICAgd2FybmluZzogdGhpcyBvcHRpb24gbWF5IGdhcmJsZSBhbiBvdGhlcndpc2UgY29ycmVjdCAiCisjfiAiZmlsZS5cbiIKKyN+ICIgIC0taGVscCAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorI34gIiAgLS12ZXJzaW9uICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisjfiBtc2dzdHIgIiIKKyN+ICLhnprhnpThn4DhnpThnpThn5Lhnprhnr7CoOGfliAlcyBbPG9wdGlvbj4gLi4uXSBbLS1dIFs8ZGlybmFtZT5dXG4iCisjfiAiXG4iCisjfiAi4Z6H4Z6Y4Z+S4Z6a4Z6+4Z6fwqDhn5ZcbiIKKyN+ICIgIC0tdW5zYWZlICAgICDhnoDhn4bhno7hno/hn4vhnofhnpjhn5Lhnprhnr7hnp/hnorhn4LhnpvhnpjhnrbhnpPhnpThn5Lhnprhnpnhn4ThnofhnpPhn43hnorhn4LhnpvhnpjhnrbhnpPhnpThnpPhn5LhnpDhn4LhnpjhnpHhn4Dhno/CoOGflFxuIgorI34gIiAgICAgICAgICAgICAgIOGeluGfkuGemuGemOGetuGek8Kg4Z+WIOGeh+GemOGfkuGemuGevuGen+Gek+GfgeGfh+GeouGetuGeheGekuGfkuGenOGevuGesuGfkuGemeGeheGfkuGemuGeoeGfhuGek+GevOGenOGer+GegOGen+GetuGemuGeiuGfj+Gej+GfkuGemuGeueGemOGej+GfkuGemuGevOGenMKg4Z+UXG4iCisjfiAiICAtLWhlbHAgICAgICAg4Z6U4Z6E4Z+S4Z6g4Z624Z6J4Z6f4Z624Z6a4Z6H4Z+G4Z6T4Z694Z6Z4Z6T4Z+B4Z+HwqDhn5RcbiIKKyN+ICIgIC0tdmVyc2lvbiAgICDhnpThnoThn5LhnqDhnrbhnonhnoDhn4bhno7hn4LCoOGflFxuIgorCisjfiBtc2dpZCAidHJ5IGRlbGV0aW5nICVzIgorI34gbXNnc3RyICLhnpbhn5LhnpnhnrbhnpnhnrbhnpjigIvhnpvhnrvhnpQgJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gaW5zdGFsbCAlczsgaXQgd2lsbCBiZSBsZWZ0IGFzICVzOiAlcyIKKyN+IG1zZ3N0ciAi4Z6U4Z624Z6T4oCL4Z6U4Z6a4Z624Z6H4Z+Q4Z6Z4oCL4Z6A4Z+S4Z6T4Z674Z6E4oCL4Z6A4Z624Z6a4oCL4Z6K4Z+G4Z6h4Z6+4Z6EICVzIOGenOGetuKAi+Gek+GeueGehOKAi+Gej+GfkuGemuGevOGenOKAi+GelOGetuGek+KAi+GekeGeu+GegOKAi+GesuGfkuGemeKAi+Gek+GfheKAi+Geh+GetiAlc8Kg4Z+WICVzIgorCisjfiBtc2dpZCAiJXM6IHVuYWJsZSB0byB1bmxvY2sgJXM6ICVzIgorI34gbXNnc3RyICIlc8Kg4Z+WIOGelOGetuGek+KAi+GelOGemuGetuGeh+GfkOGemeKAi+GegOGfkuGek+Geu+GehOKAi+GegOGetuGemuKAi+GeiuGfhOGfh+Gen+GfhCAlc8Kg4Z+WICVzIgorCisjfiBtc2dpZCAiJXMgLSBzdGF0dXMgaXMgJXMuIgorI34gbXNnc3RyICIlcyAtIOGen+GfkuGekOGetuGek+Gel+GetuGeluKAi+GeguGeuuKAi+Geh+GetiAlc8Kg4Z+UIgorCisjfiBtc2dpZCAiIGxpbmsgdW5yZWFkYWJsZSAtICVzIgorI34gbXNnc3RyICIg4Z6P4Z+G4Z6O4oCL4Z6K4Z+C4Z6b4oCL4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6i4Z624Z6T4oCL4Z6U4Z624Z6TIC0gJXMiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiIgorI34gIndhcm5pbmc6ICVzIGlzIHN1cHBvc2VkIHRvIGJlIGEgc3ltbGluayB0byAlcywgXG4iCisjfiAib3Igbm9uZXhpc3RlbnQ7IGhvd2V2ZXIsIHJlYWRsaW5rIGZhaWxlZDogJXMiCisjfiBtc2dzdHIgIiIKKyN+ICLhnpbhn5LhnprhnpjhnrbhnpPCoOGfliAlcyDhno/hn5LhnprhnrzhnpzigIvhnpThnrbhnpPigIvhnp/hnpPhn5Lhnpjhno/hn4vigIvhnpDhnrbigIvhnofhnrbigIvhno/hn4bhno7igIvhnpPhnrfhnpjhnrfhno/hn5Lhno/igIvhnp/hnonhn5LhnonhnrbigIvhnpHhn4UgJXNcbiIKKyN+ICIgKOGerOKAi+GemOGet+KAi+Gek+GekeGetuGek+Gfi+KAi+GemOGetuGekykg4Z6R4Z+E4Z+H4oCL4Z6H4Z624oCL4Z6Z4Z+J4Z624Z6E4oCL4Z6O4Z624oCL4Z6A4Z+P4oCL4Z6K4Z+E4Z6ZIOGegOGetuGemuKAi+GeouGetuGek+KAi+Gej+GfhuGejuKAi+GelOGetuGek+KAi+GelOGemuGetuGeh+GfkOGemcKg4Z+WICVzIgorCisjfiBtc2dpZCAiTGVhdmluZyAlcyAoJXMpIHBvaW50aW5nIHRvICVzLiIKKyN+IG1zZ3N0ciAi4Z6R4Z674Z6A4Z6y4Z+S4Z6ZICVzICglcykg4Z6F4Z6E4Z+S4Z6i4Z674Z6b4Z6R4Z+FICVzwqDhn5QiCisKKyN+IG1zZ2lkICJVcGRhdGluZyAlcyAoJXMpIHRvIHBvaW50IHRvICVzLiIKKyN+IG1zZ3N0ciAi4Z6S4Z+S4Z6c4Z6+4oCL4Z6y4Z+S4Z6ZICVzICglcykg4Z6R4Z624Z6T4Z+L4oCL4Z6f4Z6Y4Z+Q4Z6ZIOGeiuGevuGemOGfkuGelOGeuOKAi+GeheGehOGfkuGeouGeu+Gem+KAi+GekeGfhSAlc8Kg4Z+UIgorCisjfiBtc2dpZCAiUmVtb3ZpbmcgJXMgKCVzKSwgbm90IGFwcHJvcHJpYXRlIHdpdGggJXMuIgorI34gbXNnc3RyICLhnpnhnoAgJXMgKCVzKSDhnoXhn4Hhnokg4Z6Y4Z634Z6T4oCL4Z6f4Z6Y4oCL4Z6T4Z654Z6EICVzwqDhn5QiCisKKyN+IG1zZ2lkICIiCisjfiAiQ2hlY2tpbmcgYXZhaWxhYmxlIHZlcnNpb25zIG9mICVzLCB1cGRhdGluZyBsaW5rcyBpbiAlcyAuLi5cbiIKKyN+ICIoWW91IG1heSBtb2RpZnkgdGhlIHN5bWxpbmtzIHRoZXJlIHlvdXJzZWxmIGlmIGRlc2lyZWQgLSBzZWUgYG1hbiBsbicuKSIKKyN+IG1zZ3N0ciAiIgorI34gIuGegOGfhuGeluGeu+GehOGeluGet+Gek+Get+Gej+GfkuGemeGemOGevuGem+GegOGfhuGejuGfguGeiuGfguGem+GemOGetuGek+GemuGelOGen+GfiyAlcyDhnpLhn5Lhnpzhnr7hnrLhn5Lhnpnhno/hn4bhno7hnpHhnrbhnpPhn4vhnp/hnpjhn5DhnpnhnoDhn5LhnpPhnrvhnoQgJXMgLi4uXG4iCisjfiAiKOGeouGfkuGek+GegOGeouGetuGeheGegOGfguGelOGfkuGemuGfguGej+GfhuGejuGek+Get+GemOGet+Gej+GfkuGej+Gen+GeieGfkuGeieGetuGek+GfheGekeGeuOGek+GfhOGfhyDhnpThn5Lhnprhnp/hnrfhnpPhnpThnr7hnqLhn5LhnpPhnoDhnoXhnoThn4vhnpThnrbhnpMgLSDhnpjhnr7hnpsgYG1hbiBsbifCoOGflCkiCisKKyN+IG1zZ2lkICJzbGF2ZSBsaW5rIG5hbWUgJXMgZHVwbGljYXRlZCIKKyN+IG1zZ3N0ciAi4Z6I4Z+S4Z6Y4Z+E4Z+H4oCL4Z6P4Z+G4Z6O4oCL4Z6A4Z684Z6T4oCL4Z6F4Z+F4oCLICVzIOGelOGetuGek+KAi+Gen+GfkuGekeGeveGek+KAiyIKKworI34gbXNnaWQgIlJlY292ZXJpbmcgZnJvbSBwcmV2aW91cyBmYWlsZWQgdXBkYXRlIG9mICVzIC4uLiIKKyN+IG1zZ3N0ciAi4Z6A4Z+G4Z6W4Z674Z6E4oCL4Z6f4Z6E4Z+S4Z6C4Z+S4Z6a4Z+E4Z+H4oCL4Z6A4Z624Z6a4oCL4Z6S4Z+S4Z6c4Z6+4oCL4Z6y4Z+S4Z6Z4oCL4Z6R4Z624Z6T4Z+L4oCL4Z6f4Z6Y4Z+Q4Z6Z4oCL4Z6K4Z+C4Z6b4oCL4Z6U4Z624Z6T4oCL4Z6U4Z6a4Z624Z6H4Z+Q4Z6Z4oCL4Z6W4Z644oCL4Z6Y4Z674Z6T4oCL4Z6a4Z6U4Z6f4Z+LICVzIOGeoeGevuGehOKAi+GenOGet+GeiS4uLiIKKworI34gbXNnaWQgInVuYWJsZSB0byBvcGVuICVzIGZvciB3cml0ZTogJXMiCisjfiBtc2dzdHIgIuGemOGet+Gek+KAi+GeouGetuGeheKAi+GelOGevuGegCAlcyDhnorhnr7hnpjhn5LhnpThnrjigIvhnp/hnprhnp/hn4HhnprCoOGfliAlcyIKKworI34gbXNnaWQgIkxhc3QgcGFja2FnZSBwcm92aWRpbmcgJXMgKCVzKSByZW1vdmVkLCBkZWxldGluZyBpdC4iCisjfiBtc2dzdHIgIuGegOGetuGemuKAi+GeleGfkuGeiuGem+Gfi+KAi+GegOGeieGfkuGeheGelOGfi+KAi+GeheGeu+GehOKAi+GegOGfkuGemuGfhOGemSAlcyAoJXMpIOGelOGetuGek+KAi+GemeGegOKAi+GeheGfgeGeiSDhnpvhnrvhnpTigIvhnpzhnrbCoOGflCIKKworI34gbXNnaWQgIiIKKyN+ICJUaGVyZSBpcyBvbmx5IDEgcHJvZ3JhbSB3aGljaCBwcm92aWRlcyAlc1xuIgorI34gIiglcykuIE5vdGhpbmcgdG8gY29uZmlndXJlLlxuIgorI34gbXNnc3RyICIiCisjfiAi4Z6Y4Z624Z6T4oCL4Z6P4Z+C4oCL4Z6A4Z6Y4Z+S4Z6Y4Z6c4Z634Z6S4Z644oCL4Z6P4Z+CIOGfoSDhnpThn4nhnrvhno7hn5Lhno7hn4Thn4figIvhnorhn4LhnpvigIvhnpXhn5Lhnorhnpvhn4sgJXNcbiIKKyN+ICIoJXMpwqDhn5Qg4Z6C4Z+S4Z6Y4Z624Z6T4oCL4Z6i4Z+S4Z6c4Z644oCL4Z6P4Z+S4Z6a4Z684Z6c4oCL4Z6A4Z+G4Z6O4Z6P4Z+L4oCL4Z6a4Z6F4Z6T4Z624Z6f4Z6Y4Z+S4Z6W4Z+Q4Z6T4Z+S4Z6SwqDhn5RcbiIKKworI34gbXNnaWQgIiIKKyN+ICJUaGVyZSBhcmUgJXMgYWx0ZXJuYXRpdmVzIHdoaWNoIHByb3ZpZGUgYCVzJy5cbiIKKyN+ICJcbiIKKyN+ICIgIFNlbGVjdGlvbiAgICBBbHRlcm5hdGl2ZVxuIgorI34gIi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4iCisjfiBtc2dzdHIgIiIKKyN+ICLhnpjhnrbhnpPhnofhnpjhn5Lhnprhnr7hnp8gJXMg4Z6K4Z+C4Z6b4Z6V4Z+S4Z6K4Z6b4Z+LIGAlcyfCoOGflFxuIgorI34gIlxuIgorI34gIiAg4Z6H4Z6Y4Z+S4Z6a4Z6+4Z6fICAgIOGeh+GfhuGek+GeveGen1xuIgorI34gIi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4iCisKKyN+IG1zZ2lkICJlcnJvciBvciBlb2YgcmVhZGluZyAlcyBmb3IgJXMgKCVzKSIKKyN+IG1zZ3N0ciAi4Z6A4Z624Z6a4oCL4Z6i4Z624Z6T4oCL4Z6A4Z+G4Z6g4Z674Z6fIOGerCDhnoXhnrvhnoTigIvhnq/hnoDhnp/hnrbhnpogJXMg4Z6f4Z6Y4Z+S4Z6a4Z624Z6U4Z+LICVzICglcykiCisKKyN+IG1zZ2lkICJtaXNzaW5nIG5ld2xpbmUgYWZ0ZXIgJXMiCisjfiBtc2dzdHIgIuGelOGetuGej+Gfi+KAi+GelOGek+GfkuGekeGetuGej+Gfi+KAi+GekOGfkuGemOGeuOKAi+GelOGek+GfkuGekeGetuGelOGfi+KAi+GeluGeuCAlcyIKKworI34gbXNnaWQgIlNlcmlvdXMgcHJvYmxlbTogJXMiCisjfiBtc2dzdHIgIuGelOGeieGfkuGeoOGetuGekuGfkuGehOGek+Gfi+GekuGfkuGehOGemsKg4Z+WICVzIgorCisjfiBtc2dpZCAiY291bGRuJ3QgYWxsb2NhdGUgbWVtb3J5IGZvciBzdHJkdXAgaW4gZmluZHBhY2thZ2UoJXMpIgorI34gbXNnc3RyICLhnpjhnrfhnpPigIvhnqLhnrbigIvhnoXhnpThnpjhn5LhnprhnrvigIvhnoThnpHhnrvigIvhnoDhnp/hno/hnrfhnp/hnpjhn5LhnprhnrbhnpThn4sgc3RyZHVwIOGek+GfheKAi+GegOGfkuGek+Geu+KAi+GehOGegOKAi+GeieGfkuGeheGelOGfi+Gen+GfkuGenOGfguGehOGemuGegCglcykiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gYWxsb2NhdGUgYnVmZmVyIGluIGJ1ZmZlcl9jb3B5ICglcykiCisjfiBtc2dzdHIgIuGelOGetuGek+KAi+GelOGemuGetuGeh+GfkOGemeKAi+Gek+GfheKAi+GegOGfkuGek+Geu+GehOKAi+GegOGetuGemuKAi+GelOGemOGfkuGemuGeu+GehOKAi+GekeGeu+GegOKAi+Gen+Gej+Get+KAi+GelOGejuGfkuGeiuGfhOGfh+GeouGetuGen+Gek+GfkuGek+KAi+Gek+GfheKAi+GegOGfkuGek+Geu+GehCBidWZmZXJfY29weSAoJXMpIgorCisjfiBtc2dpZCAiRXJyb3IgYWxsb2NhdGluZyBtZW1vcnkgZm9yIGNmZ2ZpbGVuYW1lIgorI34gbXNnc3RyICLhnoDhn4bhnqDhnrvhnp/igIvhnpPhn4XigIvhnoDhn5LhnpPhnrvhnoTigIvhnoDhnrbhnprigIvhnpThnpjhn5LhnprhnrvhnoTigIvhnpHhnrvhnoDigIvhnp/hno/hnrfigIvhnp/hnpjhn5LhnprhnrbhnpThn4sgY2ZnZmlsZW5hbWUiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gbWFsbG9jIGZvciBpbmZvIGZpbGUgYCUuMjU1cyciCisjfiBtc2dzdHIgIuGelOGetuGek+GelOGemuGetuGeh+GfkOGemeKAi+GegOGfkuGek+Geu+GehOKAi+GegOGetuGemiBtYWxsb2Mg4Z6f4Z6Y4Z+S4Z6a4Z624Z6U4Z+L4oCL4Z6v4Z6A4Z6f4Z624Z6a4Z6W4Z+Q4Z6P4Z+M4Z6Y4Z624Z6TaWxlIGAlLjI1NXMnIgorCisjfiBtc2dpZCAiZGl2ZXJzaW9ucyBmaWxlIGhhcyB0b28tbG9uZyBsaW5lIG9yIEVPRiBbaV0iCisjfiBtc2dzdHIgIuGer+GegOGen+GetuGemuKAi+GelOGehOGfkuGenOGfguGemuKAi+GemOGetuGek+KAi+GelOGek+GfkuGekeGetuGej+Gfi+KAi+GenOGfguGehCDhnqwgRU9GIFtpXSIKKworI34gbXNnaWQgInJlYWQgZXJyb3IgaW4gZGl2ZXJzaW9ucyBbaWldIgorI34gbXNnc3RyICLhnqLhnrbhnpPigIvhnoDhn4bhnqDhnrvhnp/igIvhnoDhn5LhnpPhnrvhnoTigIvhnoDhnrbhnprigIvhnpThnoThn5Lhnpzhn4LhnpogW2lpXSIKKworI34gbXNnaWQgInVuZXhwZWN0ZWQgRU9GIGluIGRpdmVyc2lvbnMgW2lpXSIKKyN+IG1zZ3N0ciAiRU9GIOGeiuGfguGem+KAi+GemOGet+Gek+KAi+GelOGetuGek+KAi+GemuGfhuGeluGeueGehOGekeGeu+GegOKAi+Gek+GfheKAi+GegOGfkuGek+Geu+GehOKAi+GegOGetuGemuKAi+GelOGehOGfkuGenOGfguGemiBbaWldIgorCisjfiBtc2dpZCAiZmdldHMgZ2F2ZSBhbiBlbXB0eSBzdHJpbmcgZnJvbSBkaXZlcnNpb25zIFtpaV0iCisjfiBtc2dzdHIgImZnZXRzIOGelOGetuGek+KAi+GeleGfkuGeiuGem+Gfi+KAi+GegeGfkuGen+GfguKAi+GeouGegOGfkuGen+GemuKAi+GekeGekeGfgeKAi+GemOGeveGemeKAi+GeluGeuOGegOGetuGemuKAi+GelOGehOGfkuGenOGfguGemiBbaWldIgorCisjfiBtc2dpZCAiZGl2ZXJzaW9ucyBmaWxlIGhhcyB0b28tbG9uZyBsaW5lIG9yIEVPRiBbaWldIgorI34gbXNnc3RyICLhnq/hnoDhnp/hnrbhnprhnpThnoThn5Lhnpzhn4LhnprhnpjhnrbhnpPhnpThnpPhn5LhnpHhnrbhno/hn4vhnpzhn4LhnoQg4Z6sIEVPRiBbaWldIgorCisjfiBtc2dpZCAicmVhZCBlcnJvciBpbiBkaXZlcnNpb25zIFtpaWldIgorI34gbXNnc3RyICLhnqLhnrbhnpPigIvhnoDhn4bhnqDhnrvhnp/igIvhnpPhn4XigIvhnoDhn5LhnpPhnrvhnoTigIvhnoDhnrbhnprigIvhnpThnoThn5Lhnpzhn4LhnpogW2lpaV0iCisKKyN+IG1zZ2lkICJ1bmV4cGVjdGVkIEVPRiBpbiBkaXZlcnNpb25zIFtpaWldIgorI34gbXNnc3RyICJFT0Yg4Z6K4Z+C4Z6b4oCL4Z6Y4Z634Z6T4oCL4Z6U4Z624Z6T4oCL4Z6a4Z+G4Z6W4Z654Z6E4oCL4Z6R4Z674Z6A4oCL4Z6T4Z+F4oCL4Z6A4Z+S4Z6T4Z674Z6E4oCL4Z6A4Z624Z6a4oCL4Z6U4Z6E4Z+S4Z6c4Z+C4Z6aIFtpaWldIgorCisjfiBtc2dpZCAiZmdldHMgZ2F2ZSBhbiBlbXB0eSBzdHJpbmcgZnJvbSBkaXZlcnNpb25zIFtpaWldIgorI34gbXNnc3RyICJmZ2V0cyDhnpThnrbhnpPigIvhnpXhn5Lhnorhnpvhn4vigIvhnoHhn5Lhnp/hn4LhnqLhnoDhn5Lhnp/hnprigIvhnpHhnpHhn4HigIvhnpjhnr3hnpnigIvhnpbhnrjigIvhnoDhnrbhnprigIvhnpThnoThn5Lhnpzhn4LhnpogW2lpaV0iCisKKyN+IG1zZ2lkICJjb3VsZG4ndCBtYWxsb2MgaW4gZXhlY2JhY2tlbmQiCisjfiBtc2dzdHIgIiBtYWxsb2Mg4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCL4Z6Y4Z624Z6T4oCL4Z6A4Z+S4Z6T4Z674Z6EICBleGVjYmFja2VuZCIKKworI34gbXNnaWQgImNvdWxkbid0IHN0cmR1cCBpbiBleGVjYmFja2VuZCIKKyN+IG1zZ3N0ciAi4Z6Y4Z634Z6T4oCL4Z6i4Z624Z6F4oCLIHN0cmR1cCDhnoDhn5LhnpPhnrvhnoTigIsgZXhlY2JhY2tlbmQg4Z6U4Z624Z6T4Z6R4Z+B4oCLIgorCisjfiBtc2dpZCAiZmFpbGVkIGFsbG9jYXRpbmcgbWVtb3J5IGZvciB2YXJpYWJsZSBgY3RybGFyZWEnIgorI34gbXNnc3RyICLhnpThnrbhnpPigIvhnpThnprhnrbhnofhn5DhnpnigIvhnoDhn5LhnpPhnrvhnoTigIvhnoDhnrbhnprigIvhnpThnpjhn5LhnprhnrvhnoThnpHhnrvhnoDigIvhnp/hno/hnrfigIvhnp/hnpjhn5LhnprhnrbhnpThn4vigIvhnqLhnpDhn4HhnpogYGN0cmxhcmVhJyIKKworI34gbXNnaWQgIkNhbm5vdCBnZXQgRU5PRU5UIHZhbHVlIGZyb20gJXM6ICVzIgorI34gbXNnc3RyICLhnpjhnrfhnpPigIvhnqLhnrbhnoXigIvhnpHhnpHhnr3hnpvigIvhno/hnpjhn5Lhnpvhn4MgRU5PRU5UIOGeluGeuCAlc8Kg4Z+WICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGVuc3VyZSAlcyBub25leGlzdGVudDogJXMiCisjfiBtc2dzdHIgIuGemOGet+Gek+KAi+GeouGetuGeheKAi+GelOGfkuGemuGetuGegOGeiuKAi+GekOGetiAlcyDhnpjhnrfhnpPigIvhnpHhnrbhnpPhn4vigIvhnpjhnrbhnpPCoOGfliAlcyIKKworI34gbXNnaWQgIiIKKyN+ICJ3YXJuaW5nOiAlcyBpcyBzdXBwb3NlZCB0byBiZSBhIHNsYXZlIHN5bWxpbmsgdG9cbiIKKyN+ICIgJXMsIG9yIG5vbmV4aXN0ZW50OyBob3dldmVyLCByZWFkbGluayBmYWlsZWQ6ICVzIgorI34gbXNnc3RyICIiCisjfiAi4Z6W4Z+S4Z6a4Z6Y4Z624Z6TwqDhn5YgJXMg4Z6P4Z+S4Z6a4Z684Z6c4oCL4Z6U4Z624Z6T4oCL4Z6f4Z6T4Z+S4Z6Y4Z6P4Z+L4oCL4Z6Q4Z624oCL4Z6H4Z624oCL4Z6P4Z+G4Z6O4oCL4Z6T4Z634Z6Y4Z634Z6P4Z+S4Z6P4oCL4Z6f4Z6J4Z+S4Z6J4Z624oCL4Z6A4Z684Z6T4Z6F4Z+F4oCL4Z6R4Z+FXG4iCisjfiAiICVzIOGerOKAi+GemOGet+Gek+KAi+GekeGetuGek+Gfi+KAi+GemOGetuGekyDhnpHhn4Thn4figIvhnofhnrbigIvhnpnhn4nhnrbhnoThno7hnrbhnoDhn4/hnorhn4Thnpkg4Z6A4Z624Z6a4oCL4Z6i4Z624Z6T4oCL4Z6P4Z+G4Z6O4oCL4Z6U4Z624Z6T4oCL4Z6U4Z6a4Z624Z6H4Z+Q4Z6ZwqDhn5YgJXMiCisKKyN+IG1zZ2lkICIiCisjfiAiZHBrZzogcmVnYXJkaW5nICVzIGNvbnRhaW5pbmcgJXM6XG4iCisjfiAiIHBhY2thZ2UgdXNlcyBCcmVha3M7IG5vdCBzdXBwb3J0ZWQgaW4gdGhpcyBkcGtnXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJkcGtnwqDhn5Yg4Z6F4Z624Z6P4Z+L4Z6R4Z674Z6AICVzIOGemOGetuGekyAlc8Kg4Z+WXG4iCisjfiAiIOGegOGeieGfkuGeheGelOGfi+KAi+GelOGfkuGemuGevuKAi+GelOGfhuGelOGfguGegCDhnpjhnrfhnpPigIvhnoLhnrbhn4bhnpHhn5LhnprigIvhnoDhn5LhnpPhnrvhnoQgZHBrZyDhnpPhn4Hhn4dcbiIKKworI34gbXNnaWQgInVuc3VwcG9ydGVkIGRlcGVuZGVuY3kgcHJvYmxlbSAtIG5vdCBpbnN0YWxsaW5nICUuMjUwcyIKKyN+IG1zZ3N0ciAi4Z6U4Z6J4Z+S4Z6g4Z624oCL4Z6X4Z624Z6W4oCL4Z6i4Z624Z6f4Z+S4Z6a4Z+Q4Z6Z4oCL4Z6Y4Z634Z6T4oCL4Z6U4Z624Z6T4oCL4Z6C4Z624Z+G4Z6R4Z+S4Z6aIC0g4Z6Y4Z634Z6T4oCL4Z6K4Z+G4Z6h4Z6+4Z6EICUuMjUwcyIKKworI34gbXNnaWQgImRwa2c6IHdhcm5pbmcgLSBpZ25vcmluZyBCcmVha3MgIVxuIgorI34gbXNnc3RyICJkcGtnwqDhn5Yg4Z6A4Z624Z6a4oCL4Z6W4Z+S4Z6a4Z6Y4Z624Z6TIC0g4Z6Y4Z634Z6T4oCL4Z6i4Z6+4Z6W4Z6+4oCL4Z6A4Z624Z6a4oCL4Z6U4Z+G4Z6U4Z+C4Z6AICFcbiIKKworI34gbXNnaWQgInRvIgorI34gbXNnc3RyICLhnpHhn4UiCisKKyN+IG1zZ2lkICJmcm9tIgorI34gbXNnc3RyICLhnpbhnrgiCisKKyN+IG1zZ2lkICJlcnJvciByZWFkaW5nICVzIgorI34gbXNnc3RyICLhnoDhn4bhnqDhnrvhnp/igIvhnoDhn5LhnpPhnrvhnoTigIvhnoDhnrbhnprigIvhnqLhnrbhnpMgJXMiCisKKyN+IG1zZ2lkICJ0d28gbW9kZXMgc3BlY2lmaWVkOiAlcyBhbmQgLS0lcyIKKyN+IG1zZ3N0ciAi4Z6Y4Z624Z6T4oCL4Z6W4Z644Z6a4oCL4Z6a4Z6U4Z+A4Z6U4oCL4Z6U4Z624Z6T4oCL4Z6U4Z6J4Z+S4Z6H4Z624Z6A4Z+LwqDhn5YgJXMg4Z6T4Z634Z6EIC0tJXMiCisKKyN+IG1zZ2lkICJtYW5mbGFnIgorI34gbXNnc3RyICJtYW5mbGFnIgorCisjfiBtc2dpZCAiJXM6IGZhaWxlZCB0byBleGVjIGd6aXAgLWRjIgorI34gbXNnc3RyICIlc8Kg4Z+WIOGelOGetuGek+KAi+GelOGemuGetuGeh+GfkOGemeKAi+GegOGfkuGek+Geu+GehOKAi+GegOGetuGemuKAi+GelOGfkuGemuGej+Get+GelOGej+GfkuGej+GetyBnemlwIC1kYyIKKworI34gbXNnaWQgIiVzOiBmYWlsZWQgdG8gZXhlYyBiemlwMiAtZGMiCisjfiBtc2dzdHIgIiVzwqDhn5Yg4Z6U4Z624Z6T4oCL4Z6U4Z6a4Z624Z6H4Z+Q4Z6Z4oCL4Z6A4Z+S4Z6T4Z674Z6E4oCL4Z6A4Z624Z6a4oCL4Z6U4Z+S4Z6a4Z6P4Z634Z6U4Z6P4Z+S4Z6P4Z63IGJ6aXAyIC1kYyIKKworI34gbXNnaWQgIiVzOiBmYWlsZWQgdG8gZXhlYyBiemlwMiAlcyIKKyN+IG1zZ3N0ciAiJXPCoOGfliDhnpThnrbhnpPigIvhnpThnprhnrbhnofhn5DigIvhnpnhnoDhn5LhnpPhnrvigIvhnoThnoDhnrbhnprigIvhnpThn5Lhnprhno/hnrfhnpThno/hn5Lhno/hnrcgYnppcDIgJXMiCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3BvL2tvLmdtbyBiL2Rwa2ctMS4xNi4xLjEvcG8va28uZ21vCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjBhNmZiZjkKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3BvL2tvLmdtbwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3BvL2tvLnBvIGIvZHBrZy0xLjE2LjEuMS9wby9rby5wbwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kMzQyNTIzCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9wby9rby5wbwpAQCAtMCwwICsxLDY1MzkgQEAKKyMgQ2h1LXllb24gUGFyayA8a29raWRzQGRlYmlhbi5vcmc+LCAyMDAxLgorIyBFdW5na3l1IFNvbmcgPGV1bmdreXVAc3BhcmNzLmthaXN0LmFjLmtyPiwgMjAwMS4KKyMgU3VuamFlIFBhcmsgPGRhcmVoYW5sQGdtYWlsLmNvbT4sIDIwMDYgLSAyMDA3LgorIyBDaGFuZ3dvbyBSeXUgPGN3cnl1QGRlYmlhbi5vcmc+LCAyMDA0LCAyMDA4LCAyMDEwLgorIworbXNnaWQgIiIKK21zZ3N0ciAiIgorIlByb2plY3QtSWQtVmVyc2lvbjogZHBrZ1xuIgorIlJlcG9ydC1Nc2dpZC1CdWdzLVRvOiBkZWJpYW4tZHBrZ0BsaXN0cy5kZWJpYW4ub3JnXG4iCisiUE9ULUNyZWF0aW9uLURhdGU6IDIwMTEtMTAtMTQgMDc6MTErMDIwMFxuIgorIlBPLVJldmlzaW9uLURhdGU6IDIwMTAtMDktMDUgMTA6MTErMDkwMFxuIgorIkxhc3QtVHJhbnNsYXRvcjogQ2hhbmd3b28gUnl1IDxjd3J5dUBkZWJpYW4ub3JnPlxuIgorIkxhbmd1YWdlLVRlYW06IEtvcmVhbiA8ZGViaWFuLWwxMG4ta29yZWFuQGxpc3RzLmRlYmlhbi5vcmc+XG4iCisiTGFuZ3VhZ2U6IGtvXG4iCisiTUlNRS1WZXJzaW9uOiAxLjBcbiIKKyJDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9VVRGLThcbiIKKyJDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiA4LWJpdFxuIgorIlBsdXJhbC1Gb3JtczogbnBsdXJhbHM9MTsgcGx1cmFsPTA7XG4iCisKKyM6IGxpYi9kcGtnL2FyLmM6NjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgJyVjJyBpbiBhcmNoaXZlICclLjI1MHMnIG1lbWJlciAnJS4xNnMnIHNpemUiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvYXIuYzo4MSBsaWIvZHBrZy9hci5jOjk3IGxpYi9kcGtnL2FyLmM6MTA4IGxpYi9kcGtnL2FyLmM6MTEyCisjOiBsaWIvZHBrZy9hci5jOjEzNCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE1NAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgZmlsZSAnJXMnIgorbXNnc3RyICInJXMnIO2MjOydvOyXkCDsk7gg7IiYIOyXhuyKteuLiOuLpCIKKworIzogbGliL2Rwa2cvYXIuYzo5NAorIywgYy1mb3JtYXQKK21zZ2lkICJnZW5lcmF0ZWQgY29ycnVwdCBhciBoZWFkZXIgZm9yICclcyciCittc2dzdHIgIiclcyfsl5Ag64yA7ZW0IOyDneyEse2VnCBhciDtl6TrjZTqsIAg66ed6rCA7KGM7Iq164uI64ukIgorCisjOiBsaWIvZHBrZy9hci5jOjEyMworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgYXIgbWVtYmVyIGZpbGUgKCVzKSIKK21zZ3N0ciAiYXIg66mk67KEIO2MjOydvOydmCDsoJXrs7Trpbwg7J2964qU642wIOyLpO2MqO2WiOyKteuLiOuLpCAoJXMpIgorCisjOiBsaWIvZHBrZy9hci5jOjEzMAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGFyIG1lbWJlciBmaWxlICglcykiCittc2dpZCAiYXIgbWVtYmVyIGZpbGUgKCVzKSIKK21zZ3N0ciAiYXIg66mk67KEIO2MjOydvOydmCDsoJXrs7Trpbwg7J2964qU642wIOyLpO2MqO2WiOyKteuLiOuLpCAoJXMpIgorCisjOiBsaWIvZHBrZy9idWZmZXIuYzoxOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgb24gYnVmZmVyIGNvcHkgZm9yICVzIgorbXNnc3RyICIlc+ydmCDrsoTtjbzsl5DshJwg7J2964qU642wIOyLpO2MqO2WiOyKteuLiOuLpCIKKworIzogbGliL2Rwa2cvYnVmZmVyLmM6MjEyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCBpbiB3cml0ZSBvbiBidWZmZXIgY29weSBmb3IgJXMiCittc2dzdHIgIiVz7J2YIOuyhO2NvOyXkCDsk7DripTrjbAg7Iuk7Yyo7ZaI7Iq164uI64ukIgorCisjOiBsaWIvZHBrZy9idWZmZXIuYzoyMjAKKyMsIGMtZm9ybWF0Cittc2dpZCAic2hvcnQgcmVhZCBvbiBidWZmZXIgY29weSBmb3IgJXMiCittc2dzdHIgIiVz7J2YIOuyhO2NvOyXkOyEnCDri6Qg7J297KeAIOuqu+2WiOyKteuLiOuLpCIKKworIzogbGliL2Rwa2cvYnVmZmVyLmM6Mjg4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyB0YXIiCittc2dpZCAiZmFpbGVkIHRvIHNlZWsgJXMiCittc2dzdHIgInRhciDsi6TtlonsnbQg7Iuk7Yyo7ZaI7Iq164uI64ukIgorCisjOiBsaWIvZHBrZy9jb21tYW5kLmM6MTc4IGxpYi9kcGtnL2NvbW1hbmQuYzoyMDQgc3JjL2hlbHAuYzo2MjEKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTggc3JjL3Byb2Nlc3NhcmMuYzoxMzggc3JjL3Byb2Nlc3NhcmMuYzo0MzIKKyM6IHNyYy9wcm9jZXNzYXJjLmM6ODM5IGRwa2ctZGViL2J1aWxkLmM6NDU5IGRwa2ctZGViL2J1aWxkLmM6NTM4CisjOiBkcGtnLWRlYi9idWlsZC5jOjU2MSBkcGtnLWRlYi9leHRyYWN0LmM6MzE3IGRwa2ctZGViL2luZm8uYzo2NQorIzogZHBrZy1zcGxpdC9zcGxpdC5jOjY5IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo0NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGV4ZWN1dGUgJXMgKCVzKSIKK21zZ3N0ciAiJXMg7ZSE66Gc6re4656o7J2EIOyLpO2Wie2VoCDsiJgg7JeG7Iq164uI64ukICglcykiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGRlY29tcHJlc3Npb24iCittc2dzdHIgIiVzOiDslZXstpUg7ZKA6riwIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjg5CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBjb21wcmVzc2lvbiIKK21zZ3N0ciAiJXM6IOyVley2lSIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yIGJpbmRpbmcgaW5wdXQgdG8gZ3ppcCBzdHJlYW0iCittc2dzdHIgIiVzOiDsnoXroKXsnYQgZ3ppcCDsiqTtirjrprzsl5Ag7Jew6rKw7ZWY64qU642wIOyYpOulmOqwgCDrsJzsg53tlojsirXri4jri6QiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHJlYWQgZXJyb3I6ICclcyciCittc2dzdHIgIiVzOiDrgrTrtoAgZ3ppcCDsnb3quLAg7Jik66WYOiAnJXMnIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjEzMiBsaWIvZHBrZy9jb21wcmVzcy5jOjEzNgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCB3cml0ZSBlcnJvciIKK21zZ3N0ciAiJXM6IOuCtOu2gCBnemlwIOyTsOq4sCDsmKTrpZgiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTUwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvciBiaW5kaW5nIG91dHB1dCB0byBnemlwIHN0cmVhbSIKK21zZ3N0ciAiJXM6IOy2nOugpeydhCBnemlwIOyKpO2KuOumvOyXkCDsl7DqsrDtlZjripTrjbAg7Jik66WY6rCAIOuwnOyDne2WiOyKteuLiOuLpCIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgcmVhZCBlcnJvciIKK21zZ3N0ciAiJXM6IOuCtOu2gCBnemlwIOydveq4sCDsmKTrpZgiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTY3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHdyaXRlIGVycm9yOiAnJXMnIgorbXNnc3RyICIlczog64K067aAIGd6aXAg7JOw6riwIOyYpOulmDogJyVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgd3JpdGUgZXJyb3I6ICVzIgorbXNnc3RyICIlczog64K067aAIGd6aXAg7JOw6riwIOyYpOulmDogJXMiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjIwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvciBiaW5kaW5nIGlucHV0IHRvIGJ6aXAyIHN0cmVhbSIKK21zZ3N0ciAiJXM6IOyeheugpeydhCBiemlwMiDsiqTtirjrprzsl5Ag7Jew6rKw7ZWY64qU642wIOyYpOulmOqwgCDrsJzsg53tlojsirXri4jri6QiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiByZWFkIGVycm9yOiAnJXMnIgorbXNnc3RyICIlczog64K067aAIGJ6aXAyIOydveq4sCDsmKTrpZg6ICclcyciCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjQwIGxpYi9kcGtnL2NvbXByZXNzLmM6MjQ0IGxpYi9kcGtnL2NvbXByZXNzLmM6Mjk0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiB3cml0ZSBlcnJvciIKK21zZ3N0ciAiJXM6IOuCtOu2gCBiemlwMiDsk7DquLAg7Jik66WYIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI1OAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZXJyb3IgYmluZGluZyBvdXRwdXQgdG8gYnppcDIgc3RyZWFtIgorbXNnc3RyICIlczog7Lac66Cl7J2EIGJ6aXAyIOyKpO2KuOumvOyXkCDsl7DqsrDtlZjripTrjbAg7Jik66WY6rCAIOuwnOyDne2WiOyKteuLiOuLpCIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIHJlYWQgZXJyb3IiCittc2dzdHIgIiVzOiDrgrTrtoAgYnppcDIg7J296riwIOyYpOulmCIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyNzUgbGliL2Rwa2cvY29tcHJlc3MuYzoyODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIHdyaXRlIGVycm9yOiAnJXMnIgorbXNnc3RyICIlczog64K067aAIGJ6aXAyIOyTsOq4sCDsmKTrpZg6ICclcyciCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjgyCittc2dpZCAidW5leHBlY3RlZCBiemlwMiBlcnJvciIKK21zZ3N0ciAi7JiI7IOB7LmYIOuqu+2VnCBiemlwMiDsmKTrpZgiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVwZGF0ZXMgZGlyZWN0b3J5IGNvbnRhaW5zIGZpbGUgYCUuMjUwcycgd2hvc2UgbmFtZSBpcyB0b28gbG9uZyAobGVuZ3RoPSVkLCAiCisibWF4PSVkKSIKK21zZ3N0ciAiIgorIuyXheuNsOydtO2KuCDrlJTroInthLDrpqzsl5Ag65Ok7Ja0IOyeiOuKlCBgJS4yNTBzJyDtjIzsnbzsnZgg7J2066aE7J20IOuEiOustCDquYHri4jri6QgKOq4uOydtD0lZCwg7LWcIgorIuuMgOqwkj0lZCkiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVwZGF0ZXMgZGlyZWN0b3J5IGNvbnRhaW5zIGZpbGVzIHdpdGggZGlmZmVyZW50IGxlbmd0aCBuYW1lcyAoYm90aCAlZCBhbmQgJWQpIgorbXNnc3RyICLsl4XrjbDsnbTtirgg65SU66CJ7YSw66as7J2YIO2MjOydvOydmCDsnbTrpoQg6ri47J206rCAIOyEnOuhnCDri6TrpoXri4jri6QgKCVkIOuwjyAlZCkiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHNjYW4gdXBkYXRlcyBkaXJlY3RvcnkgYCUuMjU1cyciCittc2dzdHIgIuyXheuNsOydtO2KuCDrlJTroInthLDrpqwgYCUuMjU1cyfsnYQo66W8KSDsnb3snYQg7IiYIOyXhuyKteuLiOuLpCIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlbW92ZSBpbmNvcnBvcmF0ZWQgdXBkYXRlIGZpbGUgJS4yNTVzIgorbXNnc3RyICLtlanrs5HtlZwg7JeF642w7J207Yq4IO2MjOydvCAlLjI1NXPsnYQo66W8KSDsp4DsmrDripTrjbAg7Iuk7Yyo7ZaI7Iq164uI64ukIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEyMSBkcGtnLWRlYi9idWlsZC5jOjQ0NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGAlLjI1NXMnIgorbXNnc3RyICJgJS4yNTVzJ+ydhCjrpbwpIOunjOuTpCDsiJgg7JeG7Iq164uI64ukIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEyNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmlsbCAlLjI1MHMgd2l0aCBwYWRkaW5nIgorbXNnc3RyICLssYTsm4Ag66y47J6Q66GcICUuMjUwcyDtjIzsnbzsnYQg7LGE7Jq4IOyImCDsl4bsirXri4jri6QiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTI3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCAlLjI1MHMgYWZ0ZXIgcGFkZGluZyIKK21zZ3N0ciAi7LGE7Jq0IOuSpOyXkCAlLjI1MHMg7YyM7J287J2EIO2UjOufrOyLnO2VoCDsiJgg7JeG7Iq164uI64ukIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEyOQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2VlayB0byBzdGFydCBvZiAlLjI1MHMgYWZ0ZXIgcGFkZGluZyIKK21zZ3N0ciAi7LGE7Jq0IOuSpOyXkCAlLjI1MHMg7YyM7J287J2YIOyLnOyekeycvOuhnCDsnbTrj5ntlaAg7IiYIOyXhuyKteuLiOuLpCIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxOTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gbG9jayBmaWxlICVzIGZvciB0ZXN0aW5nIgorbXNnc3RyICLthYzsiqTtirjrpbwg7JyE7ZW0ICVzIOyeoOq4iCDtjIzsnbzsnYQg7Je0IOyImCDsl4bsirXri4jri6QiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjIxCittc2dpZCAidW5hYmxlIHRvIG9wZW4vY3JlYXRlIHN0YXR1cyBkYXRhYmFzZSBsb2NrZmlsZSIKK21zZ3N0ciAi7IOB7YOcIOuNsOydtO2EsOuyoOydtOyKpOydmCDsnqDquIgg7YyM7J287J2YIOyXtOq4sC/rp4zrk6TquLDrpbwg7ZWgIOyImCDsl4bsirXri4jri6QiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjMxCittc2dpZCAieW91IGRvIG5vdCBoYXZlIHBlcm1pc3Npb24gdG8gbG9jayB0aGUgZHBrZyBzdGF0dXMgZGF0YWJhc2UiCittc2dzdHIgImRwa2cg7IOB7YOcIOuNsOydtO2EsOuyoOydtOyKpOulvCDsnqDquIAg7IiYIOyeiOuKlCDqtoztlZzsnbQg7JeG7Iq164uI64ukIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjIzMworIywgZnV6enkKKyN8IG1zZ2lkICJ1bmFibGUgdG8gbG9jayBkcGtnIHN0YXR1cyBkYXRhYmFzZSIKK21zZ2lkICJkcGtnIHN0YXR1cyBkYXRhYmFzZSIKK21zZ3N0ciAiZHBrZyDsg4Htg5wg642w7J207YSw67Kg7J207Iqk66W8IOyeoOq4gCDsiJgg7JeG7Iq164uI64ukIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjI1NworbXNnaWQgInJlcXVlc3RlZCBvcGVyYXRpb24gcmVxdWlyZXMgc3VwZXJ1c2VyIHByaXZpbGVnZSIKK21zZ3N0ciAi7JqU7LKt7ZWcIOyekeyXheydhCDtlZjroKTrqbQg7IiY7Y287Jyg7KCAIOq2jO2VnOydtCDtlYTsmpTtlanri4jri6QiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjYyCittc2dpZCAidW5hYmxlIHRvIGFjY2VzcyBkcGtnIHN0YXR1cyBhcmVhIgorbXNnc3RyICJkcGtnIOyDge2DnCDsmIHsl63sl5Ag7KCR6re87ZWgIOyImCDsl4bsirXri4jri6QiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjY0Cittc2dpZCAib3BlcmF0aW9uIHJlcXVpcmVzIHJlYWQvd3JpdGUgYWNjZXNzIHRvIGRwa2cgc3RhdHVzIGFyZWEiCittc2dzdHIgIuydtCDsnpHsl4XsnYAgZHBrZyDsg4Htg5wg7JiB7Jet7JeQIOydveq4sC/sk7DquLAg6raM7ZWc7J20IO2VhOyalO2VqeuLiOuLpCIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozMDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlbW92ZSBteSBvd24gdXBkYXRlIGZpbGUgJS4yNTVzIgorbXNnc3RyICLsnpDssrQg7JeF642w7J207Yq4IO2MjOydvCAlLjI1NXPsnYQo66W8KSDsp4DsmrDripTrjbAg7Iuk7Yyo7ZaI7Iq164uI64ukIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM0NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgImAlLjI1MHMn7J2YIOyXheuNsOydtO2KuCDsg4Htg5zrpbwg7JO4IOyImCDsl4bsirXri4jri6QiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzQ5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiYCUuMjUwcyfsnZgg7JeF642w7J207Yq4IOyDge2DnOulvCDtlIzrn6zsi5ztlaAg7IiYIOyXhuyKteuLiOuLpCIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHRydW5jYXRlIGZvciB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiYCUuMjUwcyfsnZgg7JeF642w7J207Yq4IOyDge2DnOulvCDsnpDrpbwg7IiYIOyXhuyKteuLiOuLpCIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZzeW5jIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJgJS4yNTBzJ+ydmCDsl4XrjbDsnbTtirgg7IOB7YOc66W8IOuPmeq4sO2ZlO2VoCDsiJgg7JeG7Iq164uI64ukIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM1NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgImAlLjI1MHMn7J2YIOyXheuNsOydtO2KuCDsg4Htg5zrpbwg64ur7J2EIOyImCDsl4bsirXri4jri6QiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzU4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJgJS4yNTBzJ+ydmCDsl4XrjbDsnbTtirgg7IOB7YOc66W8IOyEpOy5mO2VoCDsiJgg7JeG7Iq164uI64ukIgorCisjOiBsaWIvZHBrZy9kaXIuYzo1MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHJlYWQgZmlsZWRlc2NyaXB0b3IgZmxhZ3MgZm9yICUuMjUwcyIKK21zZ2lkICJ1bmFibGUgdG8gZ2V0IGZpbGUgZGVzY3JpcHRvciBmb3IgZGlyZWN0b3J5ICclcyciCittc2dzdHIgImAlLjI1MHMg7YyM7J287J2YIO2MjOydvOuUlOyKpO2BrOumve2EsCDtlIzrnpjqt7gg6rCS7J2EIOydveydhCDsiJgg7JeG7Iq164uI64ukIgorCisjOiBsaWIvZHBrZy9kaXIuYzo1NAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHN5bmMgZmlsZSAnJXMnIgorbXNnaWQgInVuYWJsZSB0byBzeW5jIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICInJXMnIO2MjOydvOydhCDrj5nquLDtmZTtlaAg7IiYIOyXhuyKteuLiOuLpCIKKworIzogbGliL2Rwa2cvZGlyLmM6NjkgbGliL2Rwa2cvZGlyLmM6MTMxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gb3BlbiBmaWxlICclcyciCittc2dpZCAidW5hYmxlIHRvIG9wZW4gZGlyZWN0b3J5ICclcyciCittc2dzdHIgIiclcycg7YyM7J287J2EIOyXtCDsiJgg7JeG7Iq164uI64ukIgorCisjOiBsaWIvZHBrZy9kaXIuYzoxMDkgc3JjL2RpdmVydGNtZC5jOjIxOCBkcGtnLXNwbGl0L3NwbGl0LmM6MjAyCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI5MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBmaWxlICclcyciCittc2dzdHIgIiclcycg7YyM7J287J2EIOyXtCDsiJgg7JeG7Iq164uI64ukIgorCisjOiBsaWIvZHBrZy9kaXIuYzoxMTEgc3JjL2RpdmVydGNtZC5jOjIzMiBzcmMvZGl2ZXJ0Y21kLmM6Mzc3CisjOiBzcmMvc3RhdGNtZC5jOjIxNyBkcGtnLWRlYi9idWlsZC5jOjU5OCBkcGtnLXNwbGl0L2pvaW4uYzo2NQorIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE4NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTQwNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBmaWxlICclcyciCittc2dzdHIgIiclcycg7YyM7J287J2EIOuPmeq4sO2ZlO2VoCDsiJgg7JeG7Iq164uI64ukIgorCisjOiBsaWIvZHBrZy9kaXIuYzoxMTMgc3JjL2RpdmVydGNtZC5jOjIzNCBzcmMvZGl2ZXJ0Y21kLmM6Mzc5CisjOiBkcGtnLWRlYi9idWlsZC5jOjYwMCBkcGtnLXNwbGl0L2pvaW4uYzo2NyBkcGtnLXNwbGl0L3F1ZXVlLmM6MTg5CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTMxNCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTQwOAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgZmlsZSAnJXMnIgorbXNnc3RyICInJXMnIO2MjOydvOydhCDri6vsnYQg7IiYIOyXhuyKteuLiOuLpCIKKworIzogbGliL2Rwa2cvZHVtcC5jOjM5NgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgZGV0YWlscyBvZiBgJS41MHMnIHRvIGAlLjI1MHMnIgorbXNnc3RyICJgJTIkLjI1MHMnIO2MjOydvOyXkCBgJTEkLjUwcyfsl5Ag6rSA7ZWcIOygleuztOulvCDsk7DripTrjbAg7Iuk7Yyo7ZaI7Iq164uI64ukIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDIzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuICclcycgZm9yIHdyaXRpbmcgJXMgZGF0YWJhc2UiCittc2dzdHIgIiUyJHMg642w7J207YSw67Kg7J207Iqk66W8IOyTsOq4sCDsnITtlbQgYCUxJHMnIO2MjOydvOydhCDsl6zripTrjbAg7Iuk7Yyo7ZaI7Iq164uI64ukIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDI2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgYnVmZmVyaW5nIG9uICVzIGRhdGFiYXNlIGZpbGUiCittc2dzdHIgIiVzIOuNsOydtO2EsOuyoOydtOyKpCDtjIzsnbzsl5Ag67KE7Y2866eB7J2EIOyEpOygle2VoCDsiJgg7JeG7Iq164uI64ukIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDM4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB3cml0ZSAlcyBkYXRhYmFzZSByZWNvcmQgYWJvdXQgJyUuNTBzJyB0byAnJS4yNTBzJyIKK21zZ3N0ciAiIgorIiclMyQuMjUwcycg7YyM7J287JeQIGAlMiQuNTBzJ+yXkCDqtIDtlZwgJTEkcyDrjbDsnbTthLDrsqDsnbTsiqQg66CI7L2U65Oc66W8IOyTsOuKlOuNsCDsi6TtjKjtlojsirUiCisi64uI64ukIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDQ2CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBmbHVzaCAlcyBkYXRhYmFzZSB0byAnJS4yNTBzJyIKK21zZ3N0ciAiJyUyJC4yNTBzJyDtjIzsnbzsl5AgJTEkcyDrjbDsnbTthLDrsqDsnbTsiqTrpbwg7ZSM65+s7Iuc7ZWY64qU642wIOyLpO2MqO2WiOyKteuLiOuLpCIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ0OAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZnN5bmMgJXMgZGF0YWJhc2UgdG8gJyUuMjUwcyciCittc2dzdHIgIiclMiQuMjUwcycg7YyM7J287JeQICUxJHMg642w7J207YSw67Kg7J207Iqk66W8IOuPmeq4sO2ZlO2VmOuKlOuNsCDsi6TtjKjtlojsirXri4jri6QiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNsb3NlICclLjI1MHMnIGFmdGVyIHdyaXRpbmcgJXMgZGF0YWJhc2UiCittc2dzdHIgIiUyJHMg642w7J207YSw67Kg7J207Iqk66W8IOyTtCDri6TsnYzsl5AgJyUxJC4yNTBzJyDtjIzsnbzsnYQg64ur64qU642wIOyLpO2MqO2WiOyKteuLiOuLpCIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ1NQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gbGluayAnJS4yNTBzJyB0byAnJS4yNTBzJyBmb3IgYmFja3VwIG9mICVzIGRhdGFiYXNlIgorbXNnc3RyICIiCisiJTMkcyDrjbDsnbTthLDrsqDsnbTsiqTrpbwg67Cx7JeF7ZWY6riwIOychO2VtCAnJTEkLjI1MHMnIO2MjOydvOydhCAnJTIkLjI1MHMnIO2MjOydvOuhnCDrp4HtgaztlZgiCisi64qU642wIOyLpO2MqO2WiOyKteuLiOuLpCIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ1OAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gaW5zdGFsbCAnJS4yNTBzJyBhcyAnJS4yNTBzJyBjb250YWluaW5nICVzIGRhdGFiYXNlIgorbXNnc3RyICIiCisiJTMkcyDrjbDsnbTthLDrsqDsnbTsiqTqsIAg65Ok7Ja0IOyeiOuKlCAnJTEkLjI1MHMnIO2MjOydvOydhCAnJTIkLjI1MHMnIO2MjOydvOuhnCDshKTsuZjtlZjripTrjbAgIgorIuyLpO2MqO2WiOyKteuLiOuLpCIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjk0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogdW5yZWNvdmVyYWJsZSBmYXRhbCBlcnJvciwgYWJvcnRpbmc6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKyIlczog67O16rWsIOu2iOqwgOuKpe2VnCDsuZjrqoXsoIEg7Jik66WYLCDspJHsp4Dtlanri4jri6Q6XG4iCisiICVzXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoxMDAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIlczogdW5yZWNvdmVyYWJsZSBmYXRhbCBlcnJvciwgYWJvcnRpbmc6XG4iCisjfCAiICVzXG4iCittc2dpZCAiIgorIiVzOiBvdXRzaWRlIGVycm9yIGNvbnRleHQsIGFib3J0aW5nOlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisiJXM6IOuzteq1rCDrtojqsIDriqXtlZwg7LmY66qF7KCBIOyYpOulmCwg7KSR7KeA7ZWp64uI64ukOlxuIgorIiAlc1xuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MTIwCisjLCBmdXp6eQorI3wgbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBjbGVhbnVwIGVudHJ5IgorbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBlcnJvciBjb250ZXh0IgorbXNnc3RyICLsg4gg7YG066aw7JeFIOyXlO2KuOumrOyXkCDtlYTsmpTtlZwg66mU66qo66as6rCAIOu2gOyhse2VqeuLiOuLpCIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjE4MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IGVycm9yIHdoaWxlIGNsZWFuaW5nIHVwOlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisiJXM6IOygleumrO2VmOuKlCDspJHsl5Ag7Jik66WY6rCAIOuwnOyDne2WiOyKteuLiOuLpDpcbiIKKyIgJXNcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjIwMQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZHBrZzogdG9vIG1hbnkgbmVzdGVkIGVycm9ycyBkdXJpbmcgZXJyb3IgcmVjb3ZlcnkgISFcbiIKK21zZ2lkICIlczogdG9vIG1hbnkgbmVzdGVkIGVycm9ycyBkdXJpbmcgZXJyb3IgcmVjb3ZlcnkhIVxuIgorbXNnc3RyICJkcGtnOiDsmKTrpZjrpbwg67O16rWs7ZWY64qUIOuPmeyViOyXkCDrhIjrrLQg66eO7J2AIOyYpOulmOqwgCDrsJzsg53tlojsirXri4jri6QhIVxuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MjY4IGxpYi9kcGtnL2VoYW5kbGUuYzozMDcKK21zZ2lkICJvdXQgb2YgbWVtb3J5IGZvciBuZXcgY2xlYW51cCBlbnRyeSIKK21zZ3N0ciAi7IOIIO2BtOumsOyXhSDsl5Ttirjrpqzsl5Ag7ZWE7JqU7ZWcIOuplOuqqOumrOqwgCDrtoDsobHtlanri4jri6QiCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoyOTEKK21zZ2lkICJvdXQgb2YgbWVtb3J5IGZvciBuZXcgY2xlYW51cCBlbnRyeSB3aXRoIG1hbnkgYXJndW1lbnRzIgorbXNnc3RyICLsnbjsiJjqsIAg66eO7J2AIOyDiCDtgbTrprDsl4Ug7JeU7Yq466as7JeQIO2VhOyalO2VnCDrqZTrqqjrpqzqsIAg67aA7KGx7ZWp64uI64ukIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MzUyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIlczogd2FybmluZzogJXNcbiIKK21zZ2lkICIlczogZXJyb3I6ICVzXG4iCittc2dzdHIgIiVzOiDqsr3qs6A6ICVzXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzozOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IHdhcm5pbmc6ICVzXG4iCittc2dzdHIgIiVzOiDqsr3qs6A6ICVzXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzo0MTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6JXM6JWQ6IGludGVybmFsIGVycm9yOiAlc1xuIgorbXNnc3RyICIlczolczolZDog64K067aAIOyYpOulmDogJXNcbiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgaXMgbWlzc2luZyIKK21zZ3N0ciAiJXPsnbQo6rCAKSDruaDsoYzsirXri4jri6QiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJgJS4qcycgaXMgbm90IGFsbG93ZWQgZm9yICVzIgorbXNnaWQgIiclLjUwcycgaXMgbm90IGFsbG93ZWQgZm9yICVzIgorbXNnc3RyICJgJS4qcyfsnYAo64qUKSAlc+yXkCDsk7gg7IiYIOyXhuyKteuLiOuLpCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NzMKKyMsIGMtZm9ybWF0Cittc2dpZCAianVuayBhZnRlciAlcyIKK21zZ3N0ciAiJXMg65Kk7JeQIOyTsOugiOq4sCDrjbDsnbTthLDqsIAg7J6I7Iq164uI64ukIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo4NworIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHBhY2thZ2UgbmFtZSAoJS4yNTBzKSIKK21zZ3N0ciAi7Yyo7YKk7KeAIOydtOumhOydtCDsnpjrqrvrkJjsl4jsirXri4jri6QgKCUuMjUwcykiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJlbXB0eSBmaWxlIGRldGFpbHMgZmllbGQgYCVzJyIKK21zZ3N0ciAi7YyM7J28IOyDgeyEuCDtlYTrk5wgYCVzJ+ydtCjqsIApIOu5hOyWtCDsnojsirXri4jri6QiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjEwNQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGRldGFpbHMgZmllbGQgYCVzJyBub3QgYWxsb3dlZCBpbiBzdGF0dXMgZmlsZSIKK21zZ3N0ciAi7YyM7J28IOyDgeyEuCDtlYTrk5wgYCVzJ+ydgCjripQpIOyDge2DnCDtjIzsnbzsl5DshJwg7JO4IOyImCDsl4bsirXri4jri6QiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjExOAorIywgYy1mb3JtYXQKK21zZ2lkICJ0b28gbWFueSB2YWx1ZXMgaW4gZmlsZSBkZXRhaWxzIGZpZWxkIGAlcycgKGNvbXBhcmVkIHRvIG90aGVycykiCittc2dzdHIgIu2MjOydvCDsg4HshLgg7ZWE65OcIGAlcyfsl5Ag64SI66y0IOqwkuydtCDrp47sirXri4jri6QgKOuLpOuluCDtlYTrk5zsl5Ag67mE7ZW0KSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTMyCisjLCBjLWZvcm1hdAorbXNnaWQgInRvbyBmZXcgdmFsdWVzIGluIGZpbGUgZGV0YWlscyBmaWVsZCBgJXMnIChjb21wYXJlZCB0byBvdGhlcnMpIgorbXNnc3RyICLtjIzsnbwg7IOB7IS4IO2VhOuTnCBgJXMn7JeQIOuEiOustCDqsJLsnbQg7KCB7Iq164uI64ukICjri6Trpbgg7ZWE65Oc7JeQIOu5hO2VtCkiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE1NAorbXNnaWQgInllcy9ubyBpbiBib29sZWFuIGZpZWxkIgorbXNnc3RyICLrtojrpqzslrgg7ZWE65Oc7JeQ7ISc64qUIOyYiC/slYTri4jsmKTrp4wg6rCA64ql7ZWp64uI64ukIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxNzQKK21zZ2lkICJ3b3JkIGluIGBwcmlvcml0eScgZmllbGQiCittc2dzdHIgImBwcmlvcml0eScg7ZWE65Oc7JeQIOuLqOyWtOqwgCDsnojsirXri4jri6QiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE4NgorbXNnaWQgInZhbHVlIGZvciBgc3RhdHVzJyBmaWVsZCBub3QgYWxsb3dlZCBpbiB0aGlzIGNvbnRleHQiCittc2dzdHIgImBzdGF0dXMnIO2VhOuTnOydmCDqsJLsnYAg7J20IOqyveyasOyXkCDsk7gg7IiYIOyXhuyKteuLiOuLpCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTkxCittc2dpZCAiZmlyc3QgKHdhbnQpIHdvcmQgaW4gYHN0YXR1cycgZmllbGQiCittc2dzdHIgImBzdGF0dXMnIO2VhOuTnCDrgrTsl5Ag7LKrIOuyiOynuCAo7JqU7LKtKSDri6jslrTqsIAg7J6I7Iq164uI64ukIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxOTQKK21zZ2lkICJzZWNvbmQgKGVycm9yKSB3b3JkIGluIGBzdGF0dXMnIGZpZWxkIgorbXNnc3RyICJgc3RhdHVzJyDtlYTrk5wg64K07JeQIOuRkCDrsojsp7ggKOyYpOulmCkg64uo7Ja06rCAIOyeiOyKteuLiOuLpCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTk3Cittc2dpZCAidGhpcmQgKHN0YXR1cykgd29yZCBpbiBgc3RhdHVzJyBmaWVsZCIKK21zZ3N0ciAiYHN0YXR1cycg7ZWE65OcIOuCtOyXkCDshLgg67KI7Ke4ICjsg4Htg5wpIOuLqOyWtOqwgCDsnojsirXri4jri6QiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjIwNworIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBpbiBWZXJzaW9uIHN0cmluZyAnJS4yNTBzJyIKK21zZ3N0ciAiVmVyc2lvbiDrrLjsnpDsl7QgJyUuMjUwcyfsl5Ag7Jik66WY6rCAIOuwnOyDne2WiOyKteuLiOuLpCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjE4Cittc2dpZCAib2Jzb2xldGUgYFJldmlzaW9uJyBvciBgUGFja2FnZS1SZXZpc2lvbicgZmllbGQgdXNlZCIKK21zZ3N0ciAiIgorIuuNlCDsnbTsg4Eg7IKs7Jqp7ZWY7KeAIOyViuuKlCBgUmV2aXNpb24nIOydtOuCmCBgUGFja2FnZS1SZXZpc2lvbicg7ZWE65Oc66W8IOyCrOyaqe2WiOyKteuLiOuLpCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjM1Cittc2dpZCAidmFsdWUgZm9yIGBjb25maWctdmVyc2lvbicgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICJgY29uZmlnLXZlcnNpb24nIO2VhOuTnCDqsJLsnYAg7J20IOqyveyasOyXkCDsk7gg7IiYIOyXhuyKteuLiOuLpCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjQwCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGluIENvbmZpZy1WZXJzaW9uIHN0cmluZyAnJS4yNTBzJyIKK21zZ3N0ciAiQ29uZmlnLVZlcnNpb24g66y47J6Q7Je0IGAlLjI1MHMn7JeQIOyYpOulmOqwgCDsnojsirXri4jri6QiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjI2NgorIywgYy1mb3JtYXQKK21zZ2lkICJ2YWx1ZSBmb3IgYGNvbmZmaWxlcycgaGFzIG1hbGZvcm1hdHRlZCBsaW5lIGAlLipzJyIKK21zZ3N0ciAiYGNvbmZmaWxlcyfsnZgg6rCS7JeQIOyemOuqu+uQnCDspIQsIGAlLipzJ+ydtCjqsIApIOyeiOyKteuLiOuLpCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6Mjg3CisjLCBjLWZvcm1hdAorbXNnaWQgInZhbHVlIGZvciBgY29uZmZpbGVzJyBoYXMgbGluZSBzdGFydGluZyB3aXRoIG5vbi1zcGFjZSBgJWMnIgorbXNnc3RyICIiCisiYGNvbmZmaWxlcycg7ZWE65Oc7J2YIOqwkuyXkCDqs7XrsLHsnbQg7JWE64uMIGAlYyco7Jy8KeuhnCDsi5zsnpHtlZjripQg7KSE7J20IOuTpOyWtCDsnojsirXri4jri6QiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjMwNAorbXNnaWQgInJvb3Qgb3IgbnVsbCBkaXJlY3RvcnkgaXMgbGlzdGVkIGFzIGEgY29uZmZpbGUiCittc2dzdHIgImNvbmZmaWxl7JeQIOujqO2KuCDtmLnsnYAg67mIIOuUlOugie2EsOumrOqwgCDrk6TslrQg7J6I7Iq164uI64ukIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzozNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIG1pc3NpbmcgcGFja2FnZSBuYW1lLCBvciBnYXJiYWdlIHdoZXJlIHBhY2thZ2UgbmFtZSBleHBlY3RlZCIKK21zZ3N0ciAiIgorImAlcycg7ZWE65OcLCDtjKjtgqTsp4Ag7J2066aE7J20IOuTpOyWtOqwgOyVvCDtlaAg6rOz7JeQIOyXhuuKlCDtjKjtgqTsp4Ag7J2066aEIO2YueydgCDsk7DroIjquLAg66y47J6QIgorIuqwgCDrk6TslrQg7J6I7Iq164uI64ukLiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MzcwCisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgZmllbGQsIGludmFsaWQgcGFja2FnZSBuYW1lIGAlLjI1NXMnOiAlcyIKK21zZ3N0ciAiYCVzJyDtlYTrk5wsIO2MqO2CpOyngCDsnbTrpoQoYCUuMjU1cycp7J20IOyemOuqu+uQmOyXiOyKteuLiOuLpDogJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQwNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOlxuIgorIiBiYWQgdmVyc2lvbiByZWxhdGlvbnNoaXAgJWMlYyIKK21zZ3N0ciAiIgorImAlcycg7ZWE65OcLCBgJS4yNTVzJyDssLjsobA6XG4iCisiIOuyhOyghCDqtIDqs4QoJWMlYynqsIAg7YuA66C47Iq164uI64ukIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgYCVjJyBpcyBvYnNvbGV0ZSwgdXNlIGAlYz0nIG9yIGAlYyVjJyBpbnN0ZWFkIgorbXNnc3RyICIiCisiYCVzJyDtlYTrk5wsIGAlLjI1NXMnIOywuOyhsDpcbiIKKyIgYCVjJyDtmJXsi53snYAg7J207KCcIOyViCDslIHri4jri6QuIOuMgOyLoOyXkCBgJWM9JyDtmLnsnYAgYCVjJWMnIO2YleyLneydhCDsgqzsmqntlZjsi63si5zsmKQiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQyMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOlxuIgorIiBpbXBsaWNpdCBleGFjdCBtYXRjaCBvbiB2ZXJzaW9uIG51bWJlciwgc3VnZ2VzdCB1c2luZyBgPScgaW5zdGVhZCIKK21zZ3N0ciAiIgorImAlcycg7ZWE65OcLCBgJS4yNTVzJyDssLjsobA6XG4iCisiIOuyhOyghOydhCDsoJXtmZXtnogg66ee7LaU66Ck66m0IOuyhOyghOunjCDsk7Dsp4Ag66eQ6rOgIGA9J+ydhCDsgqzsmqntlZjsi63si5zsmKQiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQzMAorbXNnaWQgIk9ubHkgZXhhY3QgdmVyc2lvbnMgbWF5IGJlIHVzZWQgZm9yIFByb3ZpZGVzIgorbXNnc3RyICJQcm92aWRlc+yXkOuKlCDsoJXtmZXtlZwg67KE7KCE66eM7J2EIOyCrOyaqe2VoCDsiJgg7J6I7Iq164uI64ukIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgdmVyc2lvbiB2YWx1ZSBzdGFydHMgd2l0aCBub24tYWxwaGFudW1lcmljLCBzdWdnZXN0IGFkZGluZyBhIHNwYWNlIgorbXNnc3RyICIiCisiYCVzJyDtlYTrk5wsIGAlLjI1NXMnIOywuOyhsDpcbiIKKyIg67KE7KCEIOqwkuydtCDslYztjIzrsrPsnbTrgpgg7Iir7J6Q66GcIOyLnOyeke2VmOyngCDslYrsirXri4jri6QsIOqzteuwseydhCDstpTqsIDtlZjrqbQg65Cp64uI64ukIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NTEgbGliL2Rwa2cvZmllbGRzLmM6NDU1CisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzogdmVyc2lvbiBjb250YWlucyBgJWMnIgorbXNnc3RyICJgJXMnIO2VhOuTnCwgYCUuMjU1cycg7LC47KGwOiDrsoTsoITsl5AgYCVjJyjsnbQp6rCAIOuTpOyWtCDsnojsirXri4jri6QiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ1OQorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6IHZlcnNpb24gdW50ZXJtaW5hdGVkIgorbXNnc3RyICJgJXMnIO2VhOuTnCwgYCUuMjU1cycg7LC47KGwOiDrsoTsoITsnbQg64Gd64KY7KeAIOyViuyVmOyKteuLiOuLpCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDY1CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgZmllbGQsIHJlZmVyZW5jZSB0byAnJS4yNTVzJzogZXJyb3IgaW4gdmVyc2lvbiIKK21zZ3N0ciAiJyVzJyDtlYTrk5wsICclLjI1NXMnIOywuOyhsDog67KE7KCE7JeQIOyYpOulmOqwgCDsnojsirXri4jri6QiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ3NQorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGZpZWxkLCBzeW50YXggZXJyb3IgYWZ0ZXIgcmVmZXJlbmNlIHRvIHBhY2thZ2UgYCUuMjU1cyciCittc2dzdHIgImAlcycg7ZWE65OcLCBgJS4yNTVzJyDtjKjtgqTsp4Ag7LC47KGwIO2bhCDqtazrrLgg7Jik66WY6rCAIOyeiOyKteuLiOuLpCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDgyCisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlcyAoYHwnKSBub3QgYWxsb3dlZCBpbiAlcyBmaWVsZCIKK21zZ3N0ciAiJXMg7ZWE65Oc7JeQ64qUIOuMgOyLoO2VoCDtjKjtgqTsp4Ag7ZGc7Iuc66W8IChgfCcpIOyTuCDsiJgg7JeG7Iq164uI64ukIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1MzYKK21zZ2lkICJ2YWx1ZSBmb3IgYHRyaWdnZXJzLXBlbmRpbmcnIGZpZWxkIG5vdCBhbGxvd2VkIGluIHRoaXMgY29udGV4dCIKK21zZ3N0ciAiYHRyaWdnZXJzLXBlbmRpbmcnIO2VhOuTnCDqsJLsnYAg7J20IOqyveyasOyXkCDsk7gg7IiYIOyXhuyKteuLiOuLpCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTQzCisjLCBjLWZvcm1hdAorbXNnaWQgImlsbGVnYWwgcGVuZGluZyB0cmlnZ2VyIG5hbWUgYCUuMjU1cyc6ICVzIgorbXNnc3RyICLrsIDrprAg7Yq466as6rGwIOydtOumhChgJS4yNTVzJynsnbQg7J6Y66q765CY7JeI7Iq164uI64ukOiAlcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTQ3CisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBwZW5kaW5nIHRyaWdnZXIgYCUuMjU1cyciCittc2dzdHIgIuuwgOumsCDtirjrpqzqsbAg7KSR67O1IGAlLjI1NXMnIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NjEKK21zZ2lkICJ2YWx1ZSBmb3IgYHRyaWdnZXJzLWF3YWl0ZWQnIGZpZWxkIG5vdCBhbGxvd2VkIGluIHRoaXMgY29udGV4dCIKK21zZ3N0ciAiYHRyaWdnZXJzLWF3YWl0ZWQnIO2VhOuTnOydmCDqsJLsnYAg7J20IOqyveyasOyXkCDsk7gg7IiYIOyXhuyKteuLiOuLpCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTY4CisjLCBjLWZvcm1hdAorbXNnaWQgImlsbGVnYWwgcGFja2FnZSBuYW1lIGluIGF3YWl0ZWQgdHJpZ2dlciBgJS4yNTVzJzogJXMiCittc2dzdHIgIuuMgOq4sCDtirjrpqzqsbAgYCUuMjU1cyfsl5DshJwg7IKs7Jqp7ZWgIOyImCDsl4bripQg7Yyo7YKk7KeAIOydtOumhOydtCDrgpjsmZTsirXri4jri6Q6ICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIGF3YWl0ZWQgdHJpZ2dlciBwYWNrYWdlIGAlLjI1NXMnIgorbXNnc3RyICLrjIDquLAg7Yq466as6rGwIOykkeuztSBgJS4yNTVzJyIKKworIzogbGliL2Rwa2cvZmlsZS5jOjUxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IHNvdXJjZSBmaWxlICclLjI1MHMnIgorbXNnc3RyICInJS4yNTBzJyDshozsiqQg7YyM7J287J2EIOyXtCDsiJgg7JeG7Iq164uI64ukIgorCisjOiBsaWIvZHBrZy9maWxlLmM6NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoYW5nZSBvd25lcnNoaXAgb2YgdGFyZ2V0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgIuuMgOyDgSDtjIzsnbwgJyUuMjUwcyfsnZgg7IaM7Jyg66W8IOuwlOq/gCDsiJgg7JeG7Iq164uI64ukIgorCisjOiBsaWIvZHBrZy9maWxlLmM6NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNldCBtb2RlIG9mIHRhcmdldCBmaWxlICclLjI1MHMnIgorbXNnc3RyICLrjIDsg4Eg7YyM7J28ICclLjI1MHMn7J2YIOuqqOuTnOulvCDshKTsoJXtlaAg7IiYIOyXhuyKteuLiOuLpCIKKworIzogbGliL2Rwa2cvZmlsZS5jOjg1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gY2xvc2UgJXM6ICVzIgorbXNnaWQgInVuYWJsZSB0byB1bmxvY2sgJXMiCittc2dzdHIgIiVzIOuLq+ydhCDsiJgg7JeG7Iq164uI64ukOiAlcyIKKworIzogbGliL2Rwa2cvZmlsZS5jOjExMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hlY2sgZmlsZSAnJXMnIGxvY2sgc3RhdHVzIgorbXNnc3RyICInJXMnIO2MjOydvOydmCDsnqDquIgg7IOB7YOc66W8IOqygOyCrO2VoCDsiJgg7JeG7Iq164uI64ukIgorCisjOiBsaWIvZHBrZy9maWxlLmM6MTQ2CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJzdGF0dXMgZGF0YWJhc2UgYXJlYSBpcyBsb2NrZWQgYnkgYW5vdGhlciBwcm9jZXNzIgorbXNnaWQgIiVzIGlzIGxvY2tlZCBieSBhbm90aGVyIHByb2Nlc3MiCittc2dzdHIgIuyDge2DnCDrjbDsnbTthLDrsqDsnbTsiqQg7JiB7Jet7J20IOuLpOuluCDtlITroZzshLjsiqTrlYzrrLjsl5Ag7J6g6rKoIOyeiOyKteuLiOuLpCIKKworIzogbGliL2Rwa2cvZmlsZS5jOjE0OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIGNsb3NlICVzOiAlcyIKK21zZ2lkICJ1bmFibGUgdG8gbG9jayAlcyIKK21zZ3N0ciAiJXMg64ur7J2EIOyImCDsl4bsirXri4jri6Q6ICVzIgorCisjOiBsaWIvZHBrZy9sb2cuYzo1MworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBvcGVuIGxvZyBgJXMnOiAlc1xuIgorbXNnc3RyICJgJXMnIOuhnOq3uCDtjIzsnbzsnYQg7Je0IOyImCDsl4bsirXri4jri6Q6ICVzXG4iCisKKyM6IGxpYi9kcGtnL2xvZy5jOjg1Cittc2dpZCAiPHBhY2thZ2Ugc3RhdHVzIGFuZCBwcm9ncmVzcyBmaWxlIGRlc2NyaXB0b3I+IgorbXNnc3RyICI87Yyo7YKk7KeAIOyDge2DnCDrsI8g7KeE7ZaJIO2MjOydvCDrlJTsiqTtgazrpr3thLA+IgorCisjOiBsaWIvZHBrZy9sb2cuYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIHRvIHN0YXR1cyBmZCAlZCIKK21zZ3N0ciAi7IOB7YOcIO2MjOydvCDrlJTsiqTtgazrpr3thLAgJWTsl5Ag7JO4IOyImCDsl4bsirXri4jri6QiCisKKyM6IGxpYi9kcGtnL21saWIuYzo0NCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJtYWxsb2MgZmFpbGVkICglbGQgYnl0ZXMpIgorbXNnaWQgIm1hbGxvYyBmYWlsZWQgKCV6dSBieXRlcykiCittc2dzdHIgIm1hbGxvY+ydtCDsi6TtjKjtlojsirXri4jri6QgKCVsZCDrsJTsnbTtirgpIgorCisjOiBsaWIvZHBrZy9tbGliLmM6NTgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInJlYWxsb2MgZmFpbGVkICglbGQgYnl0ZXMpIgorbXNnaWQgInJlYWxsb2MgZmFpbGVkICglenUgYnl0ZXMpIgorbXNnc3RyICJyZWFsbG9j7J20IOyLpO2MqO2WiOyKteuLiOuLpCAoJWxkIOuwlOydtO2KuCkiCisKKyM6IGxpYi9kcGtnL21saWIuYzo3MiBsaWIvZHBrZy9tbGliLmM6OTAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI3NworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjMzNCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTEwNworbXNnaWQgImZhaWxlZCB0byBhbGxvY2F0ZSBtZW1vcnkiCittc2dzdHIgIuuplOuqqOumrOulvCDtlaDri7ntlZjripTrjbAg7Iuk7Yyo7ZaI7Iq164uI64ukIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBkdXAgZm9yIHN0ZCVzIgorbXNnc3RyICJzdGQlc+yXkCBkdXDsnbQg7Iuk7Yyo7ZaI7Iq164uI64ukIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTAzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBkdXAgZm9yIGZkICVkIgorbXNnc3RyICJmZCAlZOyXkCBkdXDsnbQg7Iuk7Yyo7ZaI7Iq164uI64ukIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTA5Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBwaXBlIgorbXNnc3RyICLtjIzsnbTtlITrpbwg66eM65Oc64qU642wIOyLpO2MqO2WiOyKteuLiOuLpCIKKworIzogbGliL2Rwa2cvbWxpYi5jOjExNworIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciB3cml0aW5nIHRvICclcyciCittc2dzdHIgIiclcycg7YyM7J287JeQIOyTsOuKlOuNsCDsmKTrpZjqsIAg67Cc7IOd7ZaI7Iq164uI64ukIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIGZpbGVkZXNjcmlwdG9yIGZsYWdzIGZvciAlLjI1MHMiCittc2dzdHIgImAlLjI1MHMg7YyM7J287J2YIO2MjOydvOuUlOyKpO2BrOumve2EsCDtlIzrnpjqt7gg6rCS7J2EIOydveydhCDsiJgg7JeG7Iq164uI64ukIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTI2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgY2xvc2Utb24tZXhlYyBmbGFnIGZvciAlLjI1MHMiCittc2dzdHIgIiUuMjUwcyDtjIzsnbzsnZggXCLsi6TtlontlaAg65WMIOuLq+q4sFwiIO2UjOuemOq3uOulvCDshKTsoJXtlaAg7IiYIOyXhuyKteuLiOuLpCIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjYzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZpZ3VyYXRpb24gZXJyb3I6ICVzOiVkOiAlcyIKK21zZ3N0ciAi7ISk7KCVIOyYpOulmDogJXM6JWQ6ICVzIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gY29uZmlndXJhdGlvbiBmaWxlICclLjI1NXMnIGZvciByZWFkaW5nOiAlcyIKK21zZ3N0ciAi7J296riw66W8IOychO2VtCAnJS4yNTVzJyDshKTsoJUg7YyM7J287J2EIOyXrOuKlOuNsCDsi6TtjKjtlojsirXri4jri6Q6ICVzIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYmFsYW5jZWQgcXVvdGVzIGluICclcyciCittc2dzdHIgIiclcyfsl5DshJwg65Sw7Ji07ZGc6rCAIOunnuyngCDslYrsirXri4jri6QiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gJyVzJyIKK21zZ3N0ciAi7JWMIOyImCDsl4bripQg7Ji17IWYICclcyciCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBuZWVkcyBhIHZhbHVlIgorbXNnc3RyICInJXMnIOyYteyFmOydgCDsnbjsiJjqsIAg7ZWE7JqU7ZWp64uI64ukIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTI3CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgZG9lcyBub3QgdGFrZSBhIHZhbHVlIgorbXNnc3RyICInJXMnIOyYteyFmOydgCDsnbjsiJjqsIAg7JeG7Iq164uI64ukIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTMzCisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWQgZXJyb3IgaW4gY29uZmlndXJhdGlvbiBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICLshKTsoJUg7YyM7J28IGAlLjI1NXMn7JeQ7IScIOydveq4sCDsmKTrpZjqsIAg67Cc7IOd7ZaI7Iq164uI64ukIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgY29uZmlndXJhdGlvbiBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICLshKTsoJUg7YyM7J28IGAlLjI1NXMnIO2MjOydvOydhCDri6vripTrjbAg7Jik66WY6rCAIOuwnOyDne2WiOyKteuLiOuLpCIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjE3MAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBvcGVuaW5nIGNvbmZpZ3VyYXRpb24gZGlyZWN0b3J5ICclcyciCittc2dzdHIgIiVzIOyEpOyglSDrlJTroInthLDrpqzrpbwg64ur64qU642wIOyYpOulmOqwgCDrsJzsg53tlojsirXri4jri6QiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gLS0lcyIKK21zZ3N0ciAi7JWMIOyImCDsl4bripQg7Ji17IWYIC0tJXMiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBvcHRpb24gdGFrZXMgYSB2YWx1ZSIKK21zZ3N0ciAiLS0lcyDsmLXshZjsnYAg7J247IiY6rCAIO2VhOyalO2VqeuLiOuLpCIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjIzNworIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG9wdGlvbiBkb2VzIG5vdCB0YWtlIGEgdmFsdWUiCittc2dzdHIgIi0tJXMg7Ji17IWY7J2AIOyduOyImOqwgCDsl4bsirXri4jri6QiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyNDUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gLSVjIgorbXNnc3RyICLslYwg7IiYIOyXhuuKlCDsmLXshZggLSVjIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjUwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0lYyBvcHRpb24gdGFrZXMgYSB2YWx1ZSIKK21zZ3N0ciAiLSVjIOyYteyFmOydgCDsnbjsiJjqsIAg7ZWE7JqU7ZWp64uI64ukIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjU4CisjLCBjLWZvcm1hdAorbXNnaWQgIi0lYyBvcHRpb24gZG9lcyBub3QgdGFrZSBhIHZhbHVlIgorbXNnc3RyICItJWMg7Ji17IWY7J2AIOyduOyImOqwgCDsl4bsirXri4jri6QiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAib2Jzb2xldGUgb3B0aW9uICctLSVzJ1xuIgorbXNnc3RyICInLS0lcycg7Ji17IWY7J2AIOuNlCDsnbTsg4Eg7IKs7Jqp7ZWY7KeAIOyViuyKteuLiOuLpFxuIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6Mjg3CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZsaWN0aW5nIGFjdGlvbnMgLSVjICgtLSVzKSBhbmQgLSVjICgtLSVzKSIKK21zZ3N0ciAiLSVjKC0tJXMpIOuqheugueqzvCAtJWMoLS0lcykg66qF66C57J2AIOy2qeuPjO2VqeuLiOuLpCIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHZhbHVlIGZvciBgJXMnIGZpZWxkIgorbXNnc3RyICJgJXMnIO2VhOuTnOydmCDqsJLsnbQg7KSR67O165CY7JeI7Iq164uI64ukIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjE0NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1c2VyLWRlZmluZWQgZmllbGQgbmFtZSBgJS4qcycgdG9vIHNob3J0IgorbXNnc3RyICLsgqzsmqnsnpAg7KCV7J2YIO2VhOuTnCDsnbTrpoQgYCUuKnMn7J2AKOuKlCkg64SI66y0IOynp+yKteuLiOuLpCIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoxNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHZhbHVlIGZvciB1c2VyLWRlZmluZWQgZmllbGQgYCUuKnMnIgorbXNnc3RyICLsgqzsmqnsnpAg7KCV7J2YIO2VhOuTnCBgJS4qcyfsnZgg6rCS7J20IOykkeuzteuQmOyXiOyKteuLiOuLpCIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMDcKK21zZ2lkICJDb25maWd1cmVkLVZlcnNpb24gZm9yIHBhY2thZ2Ugd2l0aCBpbmFwcHJvcHJpYXRlIFN0YXR1cyIKK21zZ3N0ciAi7KCB64u57ZWY7KeAIOyViuydgCBTdGF0dXPsnZgg7Yyo7YKk7KeA7JeQIOuMgO2VnCBDb25maWd1cmVkLVZlcnNpb24iCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjE4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgaGFzIHN0YXR1cyAlcyBidXQgdHJpZ2dlcnMgYXJlIGF3YWl0ZWQiCittc2dzdHIgIu2MqO2CpOyngOydmCDsg4Htg5zqsIAgJXPsnbTsp4Drp4wg7Yq466as6rGw6rCAIOuMgOq4sO2VmOqzoCDsnojsirXri4jri6QiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjIyCittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzIHRyaWdnZXJzLWF3YWl0ZWQgYnV0IG5vIHRyaWdnZXJzIGF3YWl0ZWQiCittc2dzdHIgIu2MqO2CpOyngOydmCDsg4Htg5zqsIAg7Yq466as6rGwIOuMgOq4sOydtOyngOunjCDrjIDquLDtlZjripQg7Yq466as6rGw6rCAIO2VmOuCmOuPhCDsl4bsirXri4jri6QiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjI4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgaGFzIHN0YXR1cyAlcyBidXQgdHJpZ2dlcnMgYXJlIHBlbmRpbmciCittc2dzdHIgIu2MqO2CpOyngOydmCDsg4Htg5zqsIAgJXPsnbTsp4Drp4wg7Yq466as6rGw6rCAIOuwgOugpCDsnojsirXri4jri6QiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjMyCittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzIHRyaWdnZXJzLXBlbmRpbmcgYnV0IG5vIHRyaWdnZXJzIHBlbmRpbmciCittc2dzdHIgIu2MqO2CpOyngOydmCDsg4Htg5zqsIAg7Yq466as6rGwIOuwgOumvOydtOyngOunjCDrsIDrprAg7Yq466as6rGw6rCAIO2VmOuCmOuPhCDsl4bsirXri4jri6QiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjQyCittc2dpZCAiUGFja2FnZSB3aGljaCBpbiBzdGF0ZSBub3QtaW5zdGFsbGVkIGhhcyBjb25mZmlsZXMsIGZvcmdldHRpbmcgdGhlbSIKK21zZ3N0ciAi7ISk7LmY65CY7KeAIOyViuydgCDsg4Htg5zsnZgg7Yyo7YKk7KeA7JeQIOyEpOyglSDtjIzsnbzsnbQg7J6I7Iq164uI64ukLiDsnorslrTrsoTrpr3ri4jri6QiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzM1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuIHBhY2thZ2UgaW5mbyBmaWxlIGAlLjI1NXMnIGZvciByZWFkaW5nIgorbXNnc3RyICLsnb3quLAg7J6R7JeF7J2EIOychO2VtCDtjKjtgqTsp4Ag7KCV67O0IO2MjOydvCBgJS4yNTVzJyDtjIzsnbzsnYQg7Jes64qU642wIOyLpO2MqO2WiOyKteuLiOuLpCIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozNDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2FuJ3Qgc3RhdCBwYWNrYWdlIGluZm8gZmlsZSBgJS4yNTVzJyIKK21zZ3N0ciAi7Yyo7YKk7KeAIOygleuztCDtjIzsnbwgYCUuMjU1cyfsnZgg7YyM7J28IOygleuztOulvCDsnb3snYQg7IiYIOyXhuyKteuLiOuLpCIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2FuJ3QgbW1hcCBwYWNrYWdlIGluZm8gZmlsZSBgJS4yNTVzJyIKK21zZ3N0ciAi7Yyo7YKk7KeAIOygleuztCDtjIzsnbwgYCUuMjU1cyfsl5AgbW1hcO2VoCDsiJgg7JeG7Iq164uI64ukIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjM1MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiY2FuJ3Qgc3RhdCBwYWNrYWdlIGluZm8gZmlsZSBgJS4yNTVzJyIKK21zZ2lkICJyZWFkaW5nIHBhY2thZ2UgaW5mbyBmaWxlICclLjI1NXMnIgorbXNnc3RyICLtjKjtgqTsp4Ag7KCV67O0IO2MjOydvCBgJS4yNTVzJ+ydmCDtjIzsnbwg7KCV67O066W8IOydveydhCDsiJgg7JeG7Iq164uI64ukIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjM2MworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2xvc2UgYWZ0ZXIgcmVhZDogYCUuMjU1cyciCittc2dzdHIgIuydveq4sCDtm4Tsl5Ag64ur64qU642wIOyLpO2MqO2WiOyKteuLiOuLpDogYCUuMjU1cyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDA0CisjLCBjLWZvcm1hdAorbXNnaWQgIkVPRiBhZnRlciBmaWVsZCBuYW1lIGAlLipzJyIKK21zZ3N0ciAi7ZWE65OcIOydtOumhCBgJS4qcycg65Kk7JeQIO2MjOydvOydtCDrgZ3rgqzsirXri4jri6QiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDA3CisjLCBjLWZvcm1hdAorbXNnaWQgIm5ld2xpbmUgaW4gZmllbGQgbmFtZSBgJS4qcyciCittc2dzdHIgIu2VhOuTnCDsnbTrpoQgYCUuKnMn7JeQIOykhOuwlOq/iCDrrLjsnpDqsIAg7J6I7Iq164uI64ukIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQxMAorIywgYy1mb3JtYXQKK21zZ2lkICJNU0RPUyBFT0YgKF5aKSBpbiBmaWVsZCBuYW1lIGAlLipzJyIKK21zZ3N0ciAi7ZWE65OcIOydtOumhCBgJS4qcyfsl5AgTVNET1Mg67Cp7IudIEVPRiheWinqsIAg7J6I7Iq164uI64ukIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQxNAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWVsZCBuYW1lIGAlLipzJyBtdXN0IGJlIGZvbGxvd2VkIGJ5IGNvbG9uIgorbXNnc3RyICLtlYTrk5wg7J2066aEIGAlLipzJyDrkqTsl5DripQg7L2c66Gg7J20IOyZgOyVvCDtlanri4jri6QiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDI1CisjLCBjLWZvcm1hdAorbXNnaWQgIkVPRiBiZWZvcmUgdmFsdWUgb2YgZmllbGQgYCUuKnMnIChtaXNzaW5nIGZpbmFsIG5ld2xpbmUpIgorbXNnc3RyICLtlYTrk5wg6rCSIGAlLipzJyDslZ7sl5Ag7YyM7J287J20IOuBneuCrOyKteuLiOuLpCAo64Gd7JeQIOykhOuwlOq/iCDruaDsp5ApIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQyOQorIywgYy1mb3JtYXQKK21zZ2lkICJNU0RPUyBFT0YgY2hhciBpbiB2YWx1ZSBvZiBmaWVsZCBgJS4qcycgKG1pc3NpbmcgbmV3bGluZT8pIgorbXNnc3RyICLtlYTrk5wg6rCSIGAlLipzJ+yXkCBNU0RPUyDrsKnsi50gRU9GIOusuOyekOqwgCDsnojsirXri4jri6QgKOykhOuwlOq/iCDruaDsp5A/KSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0NDAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIm5ld2xpbmUgaW4gZmllbGQgbmFtZSBgJS4qcyciCittc2dpZCAiYmxhbmsgbGluZSBpbiB2YWx1ZSBvZiBmaWVsZCAnJS4qcyciCittc2dzdHIgIu2VhOuTnCDsnbTrpoQgYCUuKnMn7JeQIOykhOuwlOq/iCDrrLjsnpDqsIAg7J6I7Iq164uI64ukIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQ2MQorIywgYy1mb3JtYXQKK21zZ2lkICJFT0YgZHVyaW5nIHZhbHVlIG9mIGZpZWxkIGAlLipzJyAobWlzc2luZyBmaW5hbCBuZXdsaW5lKSIKK21zZ3N0ciAi7ZWE65OcIOqwkiBgJS4qcyfsl5AgRU9G6rCAIOyeiOyKteuLiOuLpCAo64Gd7JeQIOykhOuwlOq/iCDruaDsp5ApIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjU0NgorbXNnaWQgInNldmVyYWwgcGFja2FnZSBpbmZvIGVudHJpZXMgZm91bmQsIG9ubHkgb25lIGFsbG93ZWQiCittc2dzdHIgIu2MqO2CpOyngCDsoJXrs7Qg7JeU7Yq466as66W8IOyXrOufrCDqsJwg67Cc6rKs7ZaI7Iq164uI64ukLiDtlZjrgpjrp4wg7JO4IOyImCDsnojsirXri4jri6QiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NTcyCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHBhY2thZ2UgaW5mb3JtYXRpb24gaW4gYCUuMjU1cyciCittc2dzdHIgImAlLjI1NXMn7JeQIO2MqO2CpOyngCDsoJXrs7TqsIAg7JeG7Iq164uI64ukIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzo0NQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiVzLCBpbiBmaWxlICclLjI1NXMnIG5lYXIgbGluZSAlZCBwYWNrYWdlICclLjI1NXMnOlxuIgorI3wgIiAiCittc2dpZCAiIgorInBhcnNpbmcgZmlsZSAnJS4yNTVzJyBuZWFyIGxpbmUgJWQgcGFja2FnZSAnJS4yNTVzJzpcbiIKKyIgJS4yNTVzIgorbXNnc3RyICIiCisiJXMsICclLjI1NXMnIO2MjOydvCAlZOuyiCDspIQg6re87LKYLCAnJS4yNTVzJyDtjKjtgqTsp4A6XG4iCisiICIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6NDgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIlcywgaW4gZmlsZSAnJS4yNTVzJyBuZWFyIGxpbmUgJWQ6XG4iCisjfCAiICIKK21zZ2lkICIiCisicGFyc2luZyBmaWxlICclLjI1NXMnIG5lYXIgbGluZSAlZDpcbiIKKyIgJS4yNTVzIgorbXNnc3RyICIiCisiJXMsICclLjI1NXMnIO2MjOydvCAlZOuyiCDspIQg6re87LKYOlxuIgorIiAiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjEyNQorbXNnaWQgIm1heSBub3QgYmUgZW1wdHkgc3RyaW5nIgorbXNnc3RyICLruYTslrTsnojripQg66y47J6Q7Je07J20IOyVhOuLjCDqsoMg6rCZ7Iq164uI64ukIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoxMjcKKyMsIGZ1enp5CisjfCBtc2dpZCAibXVzdCBzdGFydCB3aXRoIGFuIGFscGhhbnVtZXJpYyIKK21zZ2lkICJtdXN0IHN0YXJ0IHdpdGggYW4gYWxwaGFudW1lcmljIGNoYXJhY3RlciIKK21zZ3N0ciAi7JWM7YyM67Kz7J2064KYIOyIq+yekOuhnCDsi5zsnpHtlbTslbwg7ZWp64uI64ukIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoxMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2hhcmFjdGVyIGAlYycgbm90IGFsbG93ZWQgKG9ubHkgbGV0dGVycywgZGlnaXRzIGFuZCBjaGFyYWN0ZXJzIGAlcycpIgorbXNnc3RyICJgJWMnIOusuOyekOuKlCDsgqzsmqntlaAg7IiYIOyXhuyKteuLiOuLpCjquIDsnpAsIOyIq+yekCwg6re466as6rOgICVz66eMIOyTuCDsiJgg7J6I7Iq164uI64ukKSIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MTc4CisjLCBmdXp6eQorI3wgbXNnaWQgIjxub25lPiIKK21zZ2N0eHQgInZlcnNpb24iCittc2dpZCAiPG5vbmU+IgorbXNnc3RyICI87JeG7J2MPiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjA5Cittc2dpZCAidmVyc2lvbiBzdHJpbmcgaXMgZW1wdHkiCittc2dzdHIgIuuyhOyghCDrrLjsnpDsl7TsnbQg67mE7Ja0IOyeiOyKteuLiOuLpCIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjI0Cittc2dpZCAidmVyc2lvbiBzdHJpbmcgaGFzIGVtYmVkZGVkIHNwYWNlcyIKK21zZ3N0ciAi67KE7KCEIOusuOyekOyXtCDslYjsl5Ag6rO167Cx7J20IOuTpOyWtCDsnojsirXri4jri6QiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjIzMAorbXNnaWQgImVwb2NoIGluIHZlcnNpb24gaXMgbm90IG51bWJlciIKK21zZ3N0ciAi67KE7KCE7J2YIGVwb2No6rCAIOyIq+yekOqwgCDslYTri5nri4jri6QiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjIzMgorbXNnaWQgIm5vdGhpbmcgYWZ0ZXIgY29sb24gaW4gdmVyc2lvbiBudW1iZXIiCittc2dzdHIgIuuyhOyghCDrsojtmLjsl5DshJwg7L2c66GgIOuSpOyXkCDslYTrrLQg6rKD64+EIOyXhuyKteuLiOuLpCIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjQ3Cittc2dpZCAidmVyc2lvbiBudW1iZXIgZG9lcyBub3Qgc3RhcnQgd2l0aCBkaWdpdCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyNTAKK21zZ2lkICJpbnZhbGlkIGNoYXJhY3RlciBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAi67KE7KCEIOuyiO2YuOyXkOyEnCDsk7gg7IiYIOyXhuuKlCDrrLjsnpDqsIAg7J6I7Iq164uI64ukIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyNTQKK21zZ2lkICJpbnZhbGlkIGNoYXJhY3RlciBpbiByZXZpc2lvbiBudW1iZXIiCittc2dzdHIgIuumrOu5hOyghCDrsojtmLjsl5DshJwg7JO4IOyImCDsl4bripQg66y47J6Q6rCAIOyeiOyKteuLiOuLpCIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6Mjk5IGxpYi9kcGtnL3BhcnNlaGVscC5jOjMxMQorIywgYy1mb3JtYXQKK21zZ2lkICJtaXNzaW5nICVzIgorbXNnc3RyICIlcyDruaDsoYzsirXri4jri6QiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjMwMSBsaWIvZHBrZy9wYXJzZWhlbHAuYzozMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZW1wdHkgdmFsdWUgZm9yICVzIgorbXNnc3RyICIlc+ydmCDqsJLsnbQg67mE7Ja0IOyeiOyKteuLiOuLpCIKKworIzogbGliL2Rwa2cvcGtnLWZvcm1hdC5jOjgwCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgY2hhcmFjdGVyIGAlYycgaW4gZmllbGQgd2lkdGhcbiIKK21zZ3N0ciAi7ZWE65OcIOuEiOu5hOyXkCDsk7gg7IiYIOyXhuuKlCBgJWMnIOusuOyekOqwgCDrk6TslrQg7J6I7Iq164uI64ukXG4iCisKKyM6IGxpYi9kcGtnL3BrZy1mb3JtYXQuYzoxNzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2xvc2luZyBicmFjZSBtaXNzaW5nIGluIGZvcm1hdFxuIgorbXNnc3RyICLtmJXsi53sl5DshJwg7KSR6rSE7Zi4IOuLq+q4sOqwgCAoYH0nKSDruaDsoYzsirXri4jri6RcbiIKKworIzogbGliL2Rwa2cvcGtnLXNob3cuYzo0MAorbXNnaWQgIihubyBkZXNjcmlwdGlvbiBhdmFpbGFibGUpIgorbXNnc3RyICIo7ISk66qFIOyXhuydjCkiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzo1NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaWdub3JlIHNpZ25hbCAlcyBiZWZvcmUgcnVubmluZyAlLjI1MHMiCittc2dzdHIgIiUuMjUwc+ydhCjrpbwpIOyLpO2Wie2VmOq4sCDsoIQgJXMg7Iuc6re464SQ7J2EIOustOyLnO2VoCDsiJgg7JeG7Iq164uI64ukIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgdW4tY2F0Y2hpbmcgc2lnbmFsICVzOiAlc1xuIgorbXNnc3RyICIlcyDsi5zqt7jrhJDsnYQg7J6h64qU642wIOyYpOulmOqwgCDrsJzsg53tlojsirXri4jri6Q6ICVzXG4iCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzo3OAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyAoc3VicHJvY2Vzcyk6ICVzXG4iCittc2dzdHIgIiVzICjtlZjsnIQg7ZSE66Gc7IS47IqkKTogJXNcbiIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjg5IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo0NTQKK21zZ2lkICJmb3JrIGZhaWxlZCIKK21zZ3N0ciAiZm9ya+qwgCDsi6TtjKjtlojsirXri4jri6QiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMTkKKyMsIGMtZm9ybWF0Cittc2dpZCAic3VicHJvY2VzcyAlcyByZXR1cm5lZCBlcnJvciBleGl0IHN0YXR1cyAlZCIKK21zZ3N0ciAiJXMg7ZWY7JyEIO2UhOuhnOyEuOyKpOqwgCDsmKTrpZggJWTrsojsnYQg66as7YS07ZaI7Iq164uI64ukIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTI4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ3YWl0IGZvciBzdWJwcm9jZXNzICVzIGZhaWxlZCIKK21zZ2lkICJzdWJwcm9jZXNzICVzIHdhcyBpbnRlcnJ1cHRlZCIKK21zZ3N0ciAiJXMg7ZWY7JyEIO2UhOuhnOyEuOyKpOulvCB3YWl07ZWY64qU642wIOyLpO2MqO2WiOyKteuLiOuLpCIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEzMAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic3VicHJvY2VzcyAlcyBraWxsZWQgYnkgc2lnbmFsICglcyklcyIKK21zZ2lkICJzdWJwcm9jZXNzICVzIHdhcyBraWxsZWQgYnkgc2lnbmFsICglcyklcyIKK21zZ3N0ciAi7ZWY7JyEIO2UhOuhnOyEuOyKpCAlc+ydtCjqsIApIOyLnOq3uOuEkCAoJXMpJXPsl5Ag7J2Y7ZW0IOyjveyXiOyKteuLiOuLpCIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEzMgorbXNnaWQgIiwgY29yZSBkdW1wZWQiCittc2dzdHIgIiwg66mU66qo66asIOuNpO2UhCIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJzdWJwcm9jZXNzICVzIGZhaWxlZCB3aXRoIHdhaXQgc3RhdHVzIGNvZGUgJWQiCittc2dzdHIgIu2VmOychCDtlITroZzshLjsiqQgJXPsnbQo6rCAKSDsp4Dsl7Ag7IOB7YOcIOy9lOuTnCAlZOydhCjrpbwpIOqwluqzoCDsi6TtjKgiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxNTEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQ2MQorIywgYy1mb3JtYXQKK21zZ2lkICJ3YWl0IGZvciBzdWJwcm9jZXNzICVzIGZhaWxlZCIKK21zZ3N0ciAiJXMg7ZWY7JyEIO2UhOuhnOyEuOyKpOulvCB3YWl07ZWY64qU642wIOyLpO2MqO2WiOyKteuLiOuLpCIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBwYWNrYWdlIG5hbWUgYCUuMjUwcycgaW4gdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorIu2MqO2CpOyngCDsnbTrpoTsnbQgKGAlLjI1MHMnKSDsnpjrqrvrkJjsl4jsirXri4jri6QgKGAlLjI1MHMnIO2KuOumrOqxsCDsoITtmZgg7YyM7J287JeQ7IScKSIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJ1bmNhdGVkIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIu2KuOumrOqxsCDsoITtmZgg7YyM7J287J20IChgJS4yNTBzJykg7J6Y66C47Iq164uI64ukIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDo4NQorIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyBhdCBjaGFyYWN0ZXIgYCVzJyVzIgorbXNnc3RyICLtirjrpqzqsbAg7KCE7ZmYIO2MjOydvOydmCAoYCUuMjUwcycpIGAlcycg66y47J6Q7JeQIOusuOuylSDsmKTrpZjqsIAg7J6I7Iq164uI64ukJXMiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3Blbi9jcmVhdGUgdHJpZ2dlcnMgbG9ja2ZpbGUgYCUuMjUwcyciCittc2dzdHIgIu2KuOumrOqxsCDsnqDquIgg7YyM7J287J2EIChgJS4yNTBzJykg7Je06rGw64KYIOunjOuTpCDsiJgg7JeG7Iq164uI64ukIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNDEKKyMsIGZ1enp5CisjfCBtc2dpZCAidHJpZ2dlcmVkIgorbXNnaWQgInRyaWdnZXJzIGFyZWEiCittc2dzdHIgIu2KuOumrOqxsCIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MTUxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIu2KuOumrOqxsOqwgCDsoITtmZjtlZwg7YyM7J287J2YIChgJS4yNTBzJykg7KCV67O066W8IOydveydhCDsiJgg7JeG7Iq164uI64ukIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi7Yq466as6rGw6rCAIOyghO2ZmO2VnCDtjIzsnbzsnYQgKGAlLjI1MHMnKSDsl7Qg7IiYIOyXhuyKteuLiOuLpCIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MTc5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuL2NyZWF0ZSBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi7IOI66GcIO2KuOumrOqxsCDsoITtmZjtlZwg7YyM7J287J2EIChgJS4yNTBzJykg7Je06rGw64KYIOunjOuTpCDsiJgg7JeG7Iq164uI64ukIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoyMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcmVhZGluZyB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLtirjrpqzqsbDqsIAg7KCE7ZmY7ZWcIO2MjOydvOydhCAoYCUuMjUwcycpIOydveuKlOuNsCDsmKTrpZjqsIAg67Cc7IOd7ZaI7Iq164uI64ukIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoyMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ldyB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLsg4jroZwg7Yq466as6rGwIOyghO2ZmO2VnCDtjIzsnbzsl5AgKGAlLjI1MHMnKSDsk7gg7IiYIOyXhuyKteuLiOuLpCIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MjI4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi7IOI66GcIO2KuOumrOqxsCDsoITtmZjtlZwg7YyM7J287J2EIChgJS4yNTBzJykg64ur7J2EIOyImCDsl4bsirXri4jri6QiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjIzMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi7IOI66GcIO2KuOumrOqxsCDsoITtmZjtlZwg7YyM7J287J2EIChgJS4yNTBzJykg7ISk7LmY7ZWgIOyImCDsl4bsirXri4jri6QiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzoyMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImludmFsaWQgb3IgdW5rbm93biBzeW50YXggaW4gdHJpZ2dlciBuYW1lIGAlLjI1MHMnIChpbiB0cmlnZ2VyIGludGVyZXN0cyBmb3IgIgorInBhY2thZ2UgYCUuMjUwcycpIgorbXNnc3RyICIiCisi7Yq466as6rGwIOydtOumhCBgJS4yNTBzJ+yXkOyEnCDrrLjrspXsnbQg7J6Y66q765CY7JeI6rGw64KYIOyVjCDsiJgg7JeG7Iq164uI64ukIChgJS4yNTBzJyDtjKjtgqTsp4AiCisi7J2YIO2KuOumrOqxsCDqtIDsi6wg7YyM7J287JeQ7IScKSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjI2MworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiB0cmlnZ2VyIGludGVyZXN0IGxpc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi7Yq466as6rGwIOq0gOyLrCDrqqnroZ0g7YyM7J287J2EIChgJS4yNTBzJykg7Je0IOyImCDsl4bsirXri4jri6QiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzoyOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJld2luZCB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIu2KuOumrOqxsCDqtIDsi6wg7YyM7J287J2EIChgJS4yNTBzJykg65CY64+M66as64qU642wIOyLpO2MqO2WiOyKteuLiOuLpCIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMwNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIHN5bnRheCBlcnJvcjsgaWxsZWdhbCBwYWNrYWdlIG5hbWUgYCUuMjUwcyc6ICIKKyIlLjI1MHMiCittc2dzdHIgIiIKKyLtirjrpqzqsbAg6rSA7IusIO2MjOydvOyXkCAoYCUuMjUwcycpIOusuOuylSDsmKTrpZjqsIAg7J6I7Iq164uI64ukLiDsnpjrqrvrkJwg7Yyo7YKk7KeAIOydtOumhCAoYCIKKyIlLjI1MHMnKTogJS4yNTBzIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzE4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLsg4gg7Yq466as6rGwIOq0gOyLrCDtjIzsnbzsl5AgKGAlLjI1MHMnKSDsk7gg7IiYIOyXhuyKteuLiOuLpCIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMyMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAi7IOIIO2KuOumrOqxsCDqtIDsi6wg7YyM7J287J2EICgnJS4yNTBzJykg7ZSM65+s7Iuc7ZWgIOyImCDsl4bsirXri4jri6QiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAi7IOIIO2KuOumrOqxsCDqtIDsi6wg7YyM7J287J2EICgnJS4yNTBzJykg64+Z6riw7ZmU7ZWgIOyImCDsl4bsirXri4jri6QiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi7IOIIO2KuOumrOqxsCDqtIDsi6wg7YyM7J287J2EIChgJS4yNTBzJykg7ISk7LmY7ZWgIOyImCDsl4bsirXri4jri6QiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozNDAgbGliL2Rwa2cvdHJpZ2xpYi5jOjM0MiBsaWIvZHBrZy90cmlnbGliLmM6NDcyCisjOiBzcmMvcmVtb3ZlLmM6Mjg2IHNyYy9yZW1vdmUuYzozNzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlbW92ZSBgJS4yNTBzJyIKK21zZ3N0ciAiYCUuMjUwcyfsnYQo66W8KSDsp4Dsmrgg7IiYIOyXhuyKteuLiOuLpCIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjM2MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuyDiCDtirjrpqzqsbAg6rSA7IusIO2MjOydvOydhCAoYCUuMjUwcycpIOunjOuTpCDsiJgg7JeG7Iq164uI64ukIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzgzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLsg4gg7Yq466as6rGwIOq0gOyLrCDtjIzsnbzsnYQgKGAlLjI1MHMnKSDri6vsnYQg7IiYIOyXhuyKteuLiOuLpCIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ1NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHVwbGljYXRlIGZpbGUgdHJpZ2dlciBpbnRlcmVzdCBmb3IgZmlsZW5hbWUgYCUuMjUwcycgYW5kIHBhY2thZ2UgYCUuMjUwcyciCittc2dzdHIgIiIKKyJgJS4yNTBzJyDtjIzsnbwg7J2066aEIOuwjyBgJS4yNTBzJyDtjKjtgqTsp4Dsl5Ag64yA7ZWcIO2MjOydvCDtirjrpqzqsbAg6rSA7IusIO2MjOydvOydtCDspJHrs7XrkJjsl4giCisi7Iq164uI64ukIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDgzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi7IOIIO2MjOydvCDtirjrpqzqsbAg7YyM7J287J2EIChgJS4yNTBzJykg66eM65OkIOyImCDsl4bsirXri4jri6QiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0OTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuyDiCDtjIzsnbwg7Yq466as6rGwIO2MjOydvOyXkCAoYCUuMjUwcycpIOyTuCDsiJgg7JeG7Iq164uI64ukIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDk2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlICclLjI1MHMnIgorbXNnc3RyICLsg4gg7YyM7J28IO2KuOumrOqxsCDtjIzsnbzsnYQgKCclLjI1MHMnKSDtlIzrn6zsi5ztlaAg7IiYIOyXhuyKteuLiOuLpCIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ5OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlICclLjI1MHMnIgorbXNnc3RyICLsg4gg7YyM7J28IO2KuOumrOqxsCDtjIzsnbzsnYQgKCclLjI1MHMnKSDrj5nquLDtmZTtlaAg7IiYIOyXhuyKteuLiOuLpCIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjUwMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi7IOIIO2MjOydvCDtirjrpqzqsbAg7YyM7J287J2EIChgJS4yNTBzJykg64ur7J2EIOyImCDsl4bsirXri4jri6QiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1MDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSBhcyBgJS4yNTBzJyIKK21zZ3N0ciAi7IOIIO2MjOydvCDtirjrpqzqsbAg7YyM7J287J2EIChgJS4yNTBzJykg7ISk7LmY7ZWgIOyImCDsl4bsirXri4jri6QiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1NDIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLsg4gg7YyM7J28IO2KuOumrOqxsCDtjIzsnbzsnYQgKGAlLjI1MHMnKSDsnb3snYQg7IiYIOyXhuyKteuLiOuLpCIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjU1MgorIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLsg4gg7YyM7J28IO2KuOumrOqxsCDtjIzsnbzsl5AgKGAlLjI1MHMnKSDrrLjrspUg7Jik66WY6rCAIOyeiOyKteuLiOuLpCIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjU2MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZmlsZSB0cmlnZ2VycyByZWNvcmQgbWVudGlvbnMgaWxsZWdhbCBwYWNrYWdlIG5hbWUgYCUuMjUwcycgKGZvciBpbnRlcmVzdCBpbiAiCisiZmlsZSBgJS4yNTBzJyk6ICUuMjUwcyIKK21zZ3N0ciAiIgorIu2MjOydvCDtirjrpqzqsbAg6riw66Gd7J2YIO2MqO2CpOyngCDsnbTrpoTsnbQgKGAlLjI1MHMnKSDsnpjrqrvrkJjsl4jsirXri4jri6QgKGAlLjI1MHMnIO2MjOydvCDqtIAiCisi7Ius7JeQ7IScKTogJS4yNTBzIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NjY1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ0cmlnZ2VycyBjaSBmaWxlIGAlLjI1MHMnIGNvbnRhaW5zIGlsbGVnYWwgdHJpZ2dlciBzeW50YXggaW4gdHJpZ2dlciBuYW1lIGAiCisiJS4yNTBzJzogJS4yNTBzIgorbXNnc3RyICIiCisi7Yq466as6rGwIGNpIO2MjOydvOyXkCAoYCUuMjUwcycpIO2KuOumrOqxsCDrrLjrspXsnbQg7J6Y66q765CY7JeI7Iq164uI64ukICjtirjrpqzqsbAg7J2066aEIGAiCisiJS4yNTBzJyk6ICUuMjUwcyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjY4NAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiB0cmlnZ2VycyBjaSBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLtirjrpqzqsbAgY2kg7YyM7J287J2EIChgJS4yNTBzJykg7Je0IOyImCDsl4bsirXri4jri6QiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo2OTkKK21zZ2lkICJ0cmlnZ2VycyBjaSBmaWxlIGNvbnRhaW5zIHVua25vd24gZGlyZWN0aXZlIHN5bnRheCIKK21zZ3N0ciAi7Yq466as6rGwIGNpIO2MjOydvOyXkCDslYwg7IiYIOyXhuuKlCDsp4Dsi5zslrQg66y467KV7J20IOuTpOyWtCDsnojsirXri4jri6QiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo3MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJpZ2dlcnMgY2kgZmlsZSBjb250YWlucyB1bmtub3duIGRpcmVjdGl2ZSBgJS4yNTBzJyIKK21zZ3N0ciAi7Yq466as6rGwIGNpIO2MjOydvOyXkCDslYwg7IiYIOyXhuuKlCDsp4Dsi5zslrTqsIAgKGAlLjI1MHMnKSDrk6TslrQg7J6I7Iq164uI64ukIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Nzc2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdHJpZ2dlcnMgc3RhdGUgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICLtirjrpqzqsbAg7IOB7YOcIOuUlOugie2EsOumrOulvCAoYCUuMjUwcycpIOunjOuTpCDsiJgg7JeG7Iq164uI64ukIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Nzc5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgb3duZXJzaGlwIG9mIHRyaWdnZXJzIHN0YXRlIGRpcmVjdG9yeSBgJS4yNTBzJyIKK21zZ3N0ciAi7Yq466as6rGwIOyDge2DnCDrlJTroInthLDrpqzsnZggKGAlLjI1MHMnKSAg7IaM7Jyg7J6Q66W8IOyEpOygle2VoCDsiJgg7JeG7Iq164uI64ukIgorCisjOiBsaWIvZHBrZy90cmlnbmFtZS5jOjM0Cittc2dpZCAiZW1wdHkgdHJpZ2dlciBuYW1lcyBhcmUgbm90IHBlcm1pdHRlZCIKK21zZ3N0ciAi67mIIOusuOyekOyXtOydgCDtirjrpqzqsbAg7J2066aE7Jy866GcIOyCrOyaqe2VoCDsiJgg7JeG7Iq164uI64ukIgorCisjOiBsaWIvZHBrZy90cmlnbmFtZS5jOjM4Cittc2dpZCAidHJpZ2dlciBuYW1lIGNvbnRhaW5zIGludmFsaWQgY2hhcmFjdGVyIgorbXNnc3RyICLtirjrpqzqsbAg7J2066aE7JeQIOyTuCDsiJgg7JeG64qUIOusuOyekOqwgCDrk6TslrQg7J6I7Iq164uI64ukIgorCisjOiBsaWIvZHBrZy91dGlscy5jOjU2CisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWQgZXJyb3IgaW4gYCUuMjUwcyciCittc2dzdHIgImAlLjI1MHMn7JeQ7IScIOydveq4sCDsmKTrpZjqsIAg67Cc7IOd7ZaI7Iq164uI64ukIgorCisjOiBsaWIvZHBrZy91dGlscy5jOjYxCisjLCBjLWZvcm1hdAorbXNnaWQgImZnZXRzIGdhdmUgYW4gZW1wdHkgc3RyaW5nIGZyb20gYCUuMjUwcyciCittc2dzdHIgImAlLjI1MHMn7JeQ7IScIGZnZXRz7ZWcIOqysOqzvOqwgCDruYgg66y47J6Q7Je07J6F64uI64ukIgorCisjOiBsaWIvZHBrZy91dGlscy5jOjYzCisjLCBjLWZvcm1hdAorbXNnaWQgInRvby1sb25nIGxpbmUgb3IgbWlzc2luZyBuZXdsaW5lIGluIGAlLjI1MHMnIgorbXNnc3RyICJgJS4yNTBzJ+yXkOyEnCDspITsnbQg64SI66y0IOq4uOqxsOuCmCDspITrsJTqv4jsnbQg67mg7KGM7Iq164uI64ukIgorCisjOiBsaWIvZHBrZy91dGlscy5jOjc1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW9mIHJlYWRpbmcgYCUuMjUwcyciCittc2dzdHIgImAlLjI1MHMnIOydveuKlOuNsCDsmIjsg4HsuZgg66q77ZWY6rKMIO2MjOydvOydtCDrgZ3rgqzsirXri4jri6QiCisKKyM6IGxpYi9kcGtnL3ZhcmJ1Zi5jOjgyIGxpYi9kcGtnL3ZhcmJ1Zi5jOjg4Cittc2dpZCAiZXJyb3IgZm9ybWF0dGluZyBzdHJpbmcgaW50byB2YXJidWYgdmFyaWFibGUiCittc2dzdHIgIuusuOyekOyXtOydhCB2YXJidWYg67OA7IiY66GcIO2PrOunpO2Mhe2VmOuKlOuNsCDsmKTrpZjqsIAg67Cc7IOd7ZaI7Iq164uI64ukIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxNzkgc3JjL2FyY2hpdmVzLmM6MjAwIHNyYy9hcmNoaXZlcy5jOjcyNAorbXNnaWQgImVycm9yIHJlYWRpbmcgZnJvbSBkcGtnLWRlYiBwaXBlIgorbXNnc3RyICJkcGtnLWRlYiDtjIzsnbTtlITsl5DshJwg7J296riwIOyYpOulmOqwgCDrsJzsg53tlojsirXri4jri6QiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjE5NQorIywgYy1mb3JtYXQKK21zZ2lkICJza2lwcGVkIHVucGFja2luZyBmaWxlICclLjI1NXMnIChyZXBsYWNlZCBvciBleGNsdWRlZD8pIgorbXNnc3RyICInJS4yNTVzJyDtjIzsnbwg7ZKA6riw66W8IOqxtOuEiCDrnIHri4jri6QgKOuNruyWtCDsk7DqsbDrgpgg7KCc7Jm4PykiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjI0NiBzcmMvYXJjaGl2ZXMuYzoyNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igc2V0dGluZyB0aW1lc3RhbXBzIG9mIGAlLjI1NXMnIgorbXNnc3RyICJgJS4yNTVzJyDtg4DsnoTsiqTtg6ztlIQg7ISk7KCV7ZWY64qU642wIOyYpOulmOqwgCDrsJzsg53tlojsirXri4jri6QiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjI2MgorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIG93bmVyc2hpcCBvZiBzeW1saW5rIGAlLjI1NXMnIgorbXNnc3RyICJgJS4yNTVzJyDsi6zrs7zrpq0g66eB7YGs7J2YIOyGjOycoOq2jOydhCDshKTsoJXtlZjripTrjbAg7Jik66WY6rCAIOuwnOyDne2WiOyKteuLiOuLpCIKKworIzogc3JjL2FyY2hpdmVzLmM6MjY1IHNyYy9hcmNoaXZlcy5jOjczNCBzcmMvc3RhdGNtZC5jOjE2MworIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIG93bmVyc2hpcCBvZiBgJS4yNTVzJyIKK21zZ3N0ciAiYCUuMjU1cyfsnZgg7IaM7Jyg6raM7J2EIOyEpOygle2VmOuKlOuNsCDsmKTrpZjqsIAg67Cc7IOd7ZaI7Iq164uI64ukIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoyNjcgc3JjL2FyY2hpdmVzLmM6NzM2IHNyYy9zdGF0Y21kLmM6MTY1CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHNldHRpbmcgcGVybWlzc2lvbnMgb2YgYCUuMjU1cyciCittc2dzdHIgImAlLjI1NXMn7J2YIOq2jO2VnOydhCDshKTsoJXtlZjripTrjbAg7Jik66WY6rCAIOuwnOyDne2WiOyKteuLiOuLpCIKKworIzogc3JjL2FyY2hpdmVzLmM6Mzk1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBzdGF0IChkZXJlZmVyZW5jZSkgZXhpc3Rpbmcgc3ltbGluayBgJS4yNTBzJyIKK21zZ3N0ciAi7Ius67O866atIOunge2BrCBgJS4yNTBzJ+yXkCBzdGF07J2EIOyLpO2Wie2VoCDsiJgg7JeG7Iq164uI64ukKOywuOyhsO2VmOyngCDrqrvtlojsirXri4jri6QpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo0MTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImZhaWxlZCB0byBzdGF0IChkZXJlZmVyZW5jZSkgcHJvcG9zZWQgbmV3IHN5bWxpbmsgdGFyZ2V0IGAlLjI1MHMnIGZvciAiCisic3ltbGluayBgJS4yNTBzJyIKK21zZ3N0ciAiIgorImAlMiQuMjUwcycg7Ius67O866atIOunge2BrOydmCDsg4gg66qp7KCB7KeAIGAlMSQuMjUwcyfsl5Agc3RhdOydhCDsi6TtlontlaAg7IiYIOyXhuyKteuLiOuLpCjssLgiCisi7KGw7ZWY7KeAIOuqu+2WiOyKteuLiOuLpCkiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjQ3NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidHJ5aW5nIHRvIG92ZXJ3cml0ZSBgJS4yNTBzJywgd2hpY2ggaXMgdGhlIGRpdmVydGVkIHZlcnNpb24gb2YgYCIKKyIlLjI1MHMnIChwYWNrYWdlOiAlLjEwMHMpIgorbXNnc3RyICIiCisiYCUuMjUwcycg642u7Ja07JOw6riw66W8IOyLnOuPhO2VqeuLiOuLpC4g7J20IOuyhOyghOydgCBgJS4yNTBzJ+ydmCDsoITtmZjrkJwg67KE7KCE7J6F64uI64ukKO2VtOuLuSAiCisi7Yyo7YKk7KeAOiAlLjEwMHMpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo0ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJ5aW5nIHRvIG92ZXJ3cml0ZSBgJS4yNTBzJywgd2hpY2ggaXMgdGhlIGRpdmVydGVkIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dzdHIgImAlLjI1MHMnIOuNruyWtOyTsOq4sOulvCDsi5zrj4Ttlanri4jri6QuIOydtCDrsoTsoITsnYAgYCUuMjUwcyfsnZgg7KCE7ZmY65CcIOuyhOyghOyeheuLiOuLpCIKKworIzogc3JjL2FyY2hpdmVzLmM6NTExCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGAlLjI1NXMnICh3aGljaCBJIHdhcyBhYm91dCB0byBpbnN0YWxsKSIKK21zZ3N0ciAiYCUuMjU1cycg7YyM7J287J2YIOygleuztOulvCDsnb3snYQg7IiYIOyXhuyKteuLiOuLpCAo7KeA6riIIOyEpOy5mO2VmOugpOuKlCDtjIzsnbwpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo1MTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVuYWJsZSB0byBjbGVhbiB1cCBtZXNzIHN1cnJvdW5kaW5nIGAlLjI1NXMnIGJlZm9yZSBpbnN0YWxsaW5nIGFub3RoZXIgIgorInZlcnNpb24iCittc2dzdHIgIiIKKyLri6Trpbgg67KE7KCE7J2EIOyEpOy5mO2VmOq4sOyXkCDslZ7shJwgYCUuMjU1cycg6rSA66CoIO2VhOyalOyXhuuKlCDtjIzsnbzrk6TsnYQg7KeA7Jq4IOyImCDsl4bsirXri4jri6QiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjUyNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCByZXN0b3JlZCBgJS4yNTVzJyBiZWZvcmUgaW5zdGFsbGluZyBhbm90aGVyIHZlcnNpb24iCittc2dzdHIgIiIKKyLri6Trpbgg67KE7KCE7J2EIOyEpOy5mO2VmOq4sOyXkCDslZ7shJwg67O16rWs7ZWcIGAlLjI1NXMnIO2MjOydvCDsoJXrs7Trpbwg7J297J2EIOyImCDsl4bsirXri4jri6QiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjU2MQorIywgYy1mb3JtYXQKK21zZ2lkICJhcmNoaXZlIGNvbnRhaW5lZCBvYmplY3QgYCUuMjU1cycgb2YgdW5rbm93biB0eXBlIDB4JXgiCittc2dzdHIgIuyVhOy5tOydtOu4jCDslYjsnZggYCUuMjU1cycg7Jik67iM7KCd7Yq47J2YIO2DgOyeheydtCDslYwg7IiYIOyXhuuKlCAweCV47J6F64uI64ukIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2MjYgc3JjL2RpdmVydGNtZC5jOjE1MCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NjgyCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIyMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI4NAorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE0NDEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE2ODAKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTY3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjQ0CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUyNworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc3RhdCBmaWxlICclcyciCittc2dzdHIgIiclcycg7YyM7J287J2YIOygleuztOulvCDsnb3snYQg7IiYIOyXhuyKteuLiOuLpCIKKworIzogc3JjL2FyY2hpdmVzLmM6NjQxCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlcGxhY2luZyBmaWxlcyBpbiBvbGQgcGFja2FnZSAlcyAuLi5cbiIKK21zZ3N0ciAi6rO86rGwIO2MqO2CpOyngCAlc+ydmCDtjIzsnbzsnYQg64yA7LK07ZWp64uI64ukLi4uXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjY0NQorIywgYy1mb3JtYXQKK21zZ2lkICJSZXBsYWNlZCBieSBmaWxlcyBpbiBpbnN0YWxsZWQgcGFja2FnZSAlcyAuLi5cbiIKK21zZ3N0ciAi7ISk7LmY65CcIO2MqO2CpOyngCAlc+ydmCDtjIzsnbzrk6TroZwg64yA7LK07ZWp64uI64ukLi4uXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjY1NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidHJ5aW5nIHRvIG92ZXJ3cml0ZSBkaXJlY3RvcnkgJyUuMjUwcycgaW4gcGFja2FnZSAlLjI1MHMgJS4yNTBzIHdpdGggIgorIm5vbmRpcmVjdG9yeSIKK21zZ3N0ciAiIgorIuuUlOugie2EsOumrOqwgCDsl4bripQgJTIkLjI1MHMgJTMkcy4yNTBzIO2MqO2CpOyngOydmCAnJTEkLjI1MHMnIOuUlOugie2EsOumrCDrja7slrTsk7DquLDrpbwg7IucIgorIuuPhO2VqeuLiOuLpCIKKworIzogc3JjL2FyY2hpdmVzLmM6NjYxCisjLCBjLWZvcm1hdAorbXNnaWQgInRyeWluZyB0byBvdmVyd3JpdGUgJyUuMjUwcycsIHdoaWNoIGlzIGFsc28gaW4gcGFja2FnZSAlLjI1MHMgJS4yNTBzIgorbXNnc3RyICIiCisiJyUuMjUwcyfsnZgg642u7Ja07JOw6riw66W8IOyLnOuPhO2VqeuLiOuLpC4g7J20IO2MjOydvOydgCAlLjI1MHMgJS4yNTBzIO2MqO2CpOyngOyXkOuPhCDrk6TslrTsnojsirUiCisi64uI64ukIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3MTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBgJS4yNTVzJyAod2hpbGUgcHJvY2Vzc2luZyBgJS4yNTVzJykiCittc2dzdHIgImAlLjI1NXMnIO2MjOydvOydhCDrp4zrk6Qg7IiYIOyXhuyKteuLiOuLpCAoYCUuMjU1cycg7LKY66asIOykkSkiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjcxOAorIywgYy1mb3JtYXQKK21zZ2lkICJiYWNrZW5kIGRwa2ctZGViIGR1cmluZyBgJS4yNTVzJyIKK21zZ3N0ciAiYCUuMjU1cycg7J6R7JeF7J2EIO2VmOuKlCDrj5nslYjsl5Ag67Cx7JeU65OcIGRwa2ctZGViIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NDQgc3JjL2FyY2hpdmVzLmM6OTA4IHNyYy9hcmNoaXZlcy5jOjk0OQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nL3dyaXRpbmcgYCUuMjU1cyciCittc2dzdHIgImAlLjI1NXMn7J2EKOulvCkg64ur64qU642wL+yTsOuKlOuNsCDsmKTrpZjqsIAg67Cc7IOd7ZaI7Iq164uI64ukIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgcGlwZSBgJS4yNTVzJyIKK21zZ3N0ciAiYCUuMjU1cycg7YyM7J207ZSE66W8IOunjOuTnOuKlOuNsCDsmKTrpZjqsIAg67Cc7IOd7ZaI7Iq164uI64ukIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NTMgc3JjL2FyY2hpdmVzLmM6NzU4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIGRldmljZSBgJS4yNTVzJyIKK21zZ3N0ciAiYCUuMjU1cycg7J6l7LmY66W8IOunjOuTnOuKlOuNsCDsmKTrpZjqsIAg67Cc7IOd7ZaI7Iq164uI64ukIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgaGFyZCBsaW5rIGAlLjI1NXMnIgorbXNnc3RyICJgJS4yNTVzJyDtlZjrk5wg66eB7YGs66W8IOunjOuTnOuKlOuNsCDsmKTrpZjqsIAg67Cc7IOd7ZaI7Iq164uI64ukIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NzcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjUzOQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBzeW1ib2xpYyBsaW5rIGAlLjI1NXMnIgorbXNnc3RyICJgJS4yNTVzJyDsi6zrs7zrpq0g66eB7YGs66W8IOunjOuTnOuKlOuNsCDsmKTrpZjqsIAg67Cc7IOd7ZaI7Iq164uI64ukIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgZGlyZWN0b3J5IGAlLjI1NXMnIgorbXNnc3RyICJgJS4yNTVzJyDrlJTroInthLDrpqzrpbwg66eM65Oc64qU642wIOyYpOulmOqwgCDrsJzsg53tlojsirXri4jri6QiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjgyMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gbW92ZSBhc2lkZSBgJS4yNTVzJyB0byBpbnN0YWxsIG5ldyB2ZXJzaW9uIgorbXNnc3RyICLsg4gg67KE7KCE7J2EIOyEpOy5mO2VoCDrlYwgYCUuMjU1cyfsnYQo66W8KSDsmK7qsqgg64aT7J2EIOyImCDsl4bsirXri4jri6QiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjgzMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MzIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIGxpbmsgYCUuMjU1cyciCittc2dzdHIgImAlLjI1NXMnIOunge2BrOulvCDsnb3snYQg7IiYIOyXhuyKteuLiOuLpCIKKworIzogc3JjL2FyY2hpdmVzLmM6ODM0IHNyYy9jb25maWd1cmUuYzo0MjMKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ltYm9saWMgbGluayAnJS4yNTBzJyBzaXplIGhhcyBjaGFuZ2VkIGZyb20gJWpkIHRvICV6ZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG1ha2UgYmFja3VwIHN5bWxpbmsgZm9yIGAlLjI1NXMnIgorbXNnc3RyICJgJS4yNTVzJ+yXkCDrjIDtlZwg67Cx7JeFIOyLrOuzvOumrSDrp4Htgazrpbwg66eM65OkIOyImCDsl4bsirXri4jri6QiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjg0MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hvd24gYmFja3VwIHN5bWxpbmsgZm9yIGAlLjI1NXMnIgorbXNnc3RyICJgJS4yNTVzJ+ydmCDrsLHsl4Ug7Ius67O866atIOunge2BrOydmCDshozsnKDsnpDrpbwg67CU6r+AIOyImCDsl4bsirXri4jri6QiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjg0NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gbWFrZSBiYWNrdXAgbGluayBvZiBgJS4yNTVzJyBiZWZvcmUgaW5zdGFsbGluZyBuZXcgdmVyc2lvbiIKK21zZ3N0ciAi7IOIIOuyhOyghOydhCDshKTsuZjtlZjquLAg7KCEIGAlLjI1NXMn7J2YIOuwseyXhSDrp4Htgazrpbwg66eM65OkIOyImCDsl4bsirXri4jri6QiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjg2MyBzcmMvYXJjaGl2ZXMuYzo5NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IHZlcnNpb24gb2YgYCUuMjU1cyciCittc2dzdHIgImAlLjI1NXMn7J2YIOyDiCDrsoTsoITsnYQg7ISk7LmY7ZWgIOyImCDsl4bsirXri4jri6QiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjkwMiBzcmMvYXJjaGl2ZXMuYzo5NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gJyUuMjU1cyciCittc2dzdHIgIiclLjI1NXMnIO2MjOydvOydhCDsl7Qg7IiYIOyXhuyKteuLiOuLpCIKKworIzogc3JjL2FyY2hpdmVzLmM6OTQ3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzeW5jIGZpbGUgJyUuMjU1cyciCittc2dzdHIgIiclLjI1NXMnIO2MjOydvOydhCDrj5nquLDtmZTtlaAg7IiYIOyXhuyKteuLiOuLpCIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAwMAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiaWdub3JpbmcgZGVwZW5kZW5jeSBwcm9ibGVtIHdpdGggJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyIlcyDtjKjtgqTsp4DsnZgg7J2Y7KG07ISxIOusuOygnOulvCDrrLTsi5ztlanri4jri6Q6XG4iCisiJXMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImNvbnNpZGVyaW5nIGRlY29uZmlndXJhdGlvbiBvZiBlc3NlbnRpYWxcbiIKKyIgcGFja2FnZSAlcywgdG8gZW5hYmxlICVzLiIKK21zZ3N0ciAiIgorIuq8rSDtlYTsmpTtlZwg7Yyo7YKk7KeAICVz7J2YIOyEpOyglSDtlbTsoJwg6rOg66Ck7KSRXG4iCisiICglcyDtmZzshLHtmZTtlZjquLAg7JyE7ZW0KS4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IG5vLCAlcyBpcyBlc3NlbnRpYWwsIHdpbGwgbm90IGRlY29uZmlndXJlXG4iCisiIGl0IGluIG9yZGVyIHRvIGVuYWJsZSAlcy5cbiIKK21zZ3N0ciAiIgorImRwa2c6IOu2iOqwgCwgJXMg7Yyo7YKk7KeA64qUIOq8rSDtlYTsmpTtlZjrr4DroZwgJXMg7Zmc7ISx7ZmU7ZWY6riwIOychO2VtCBcbiIKKyLshKTsoJUg7ZW07KCc7ZWY7KeAIOyViuqyoOydjC5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAyMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogbm8sIGNhbm5vdCBwcm9jZWVkIHdpdGggJXMgKC0tYXV0by1kZWNvbmZpZ3VyZSB3aWxsIGhlbHApOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzog67aI6rCALCAlcyDrj5nsnpHsnYQg7KeE7ZaJ7ZWY7KeAIOuqu+2VqeuLiOuLpCAoLS1hdXRvLWRlY29uZmlndXJlIOyYteyFmOydhCDsk7DrqbQg64+Z7J6RIgorIu2VoCDsiJjrj4Qg7J6I7Iq164uI64ukKTpcbiIKKyIlcyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAzMgorIywgYy1mb3JtYXQKK21zZ2lkICJyZW1vdmFsIG9mICUuMjUwcyIKK21zZ3N0ciAiJS4yNTBzIOyCreygnCIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA1NworIywgYy1mb3JtYXQKK21zZ2lkICJpbnN0YWxsYXRpb24gb2YgJS4yNTBzIgorbXNnc3RyICJgJS4yNTVzJyDshKTsuZgiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IGNvbnNpZGVyaW5nIGRlY29uZmlndXJhdGlvbiBvZiAlcywgd2hpY2ggd291bGQgYmUgYnJva2VuIGJ5ICVzIC4uLlxuIgorbXNnc3RyICIiCisiZHBrZzogJTIkcyDtjKjtgqTsp4Dsl5Ag7J2Y7ZW0IOunneqwgOyniCDsiJgg7J6I64qUICUxJHMg7Yyo7YKk7KeA66W8IOyEpOygleydhCDtlbTsoJztlZjroKQg7ZWp64uIIgorIuuLpC4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDY1CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IHllcywgd2lsbCBkZWNvbmZpZ3VyZSAlcyAoYnJva2VuIGJ5ICVzKS5cbiIKK21zZ3N0ciAiZHBrZzog64SkLCAlcyDtjKjtgqTsp4Ag7ISk7KCV7J2EIO2VtOygnO2VqeuLiOuLpC4gKCVzIO2MqO2CpOyngOyXkCDsnZjtlbQg66ed6rCA7KGM7J2MLilcbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA2OSBzcmMvYXJjaGl2ZXMuYzoxMTg3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiByZWdhcmRpbmcgJXMgY29udGFpbmluZyAlczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6ICUyJHMg7Yyo7YKk7KeA6rCAIOuTpOyWtCDsnojripQgJTEkcyDtjIzsnbwg6rOg66CkOlxuIgorIiUzJHMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNzcKK21zZ2lkICJpZ25vcmluZyBicmVha2FnZSwgbWF5IHByb2NlZWQgYW55d2F5ISIKK21zZ3N0ciAi66y47KCcIOustOyLnCwg7Ja07KiM65OgIOqzhOyGjSDsp4TtlontlaAg7IiY64+EIOyeiOyKteuLiOuLpCEiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImluc3RhbGxpbmcgJS4yNTBzIHdvdWxkIGJyZWFrICUuMjUwcywgYW5kXG4iCisiIGRlY29uZmlndXJhdGlvbiBpcyBub3QgcGVybWl0dGVkICgtLWF1dG8tZGVjb25maWd1cmUgbWlnaHQgaGVscCkiCittc2dzdHIgIiIKKyIlLjI1MHMg7ISk7LmY7ZWY7Iuc66m0ICUuMjUwc+ydhCjrpbwpIOunneqwgOucqOumtCDsiJgg7J6I7Jy866mwLCDshKTsoJVcbiIKKyLtlbTsoJzrpbwg7ZWgIOyImOuPhCDsl4bsirXri4jri6QoLS1hdXRvLWRlY29uZmlndXJl7J20IOuPhOybgOuQoCDsiJjrj4Qg7J6I7Iq164uI64ukKSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA4NgorIywgYy1mb3JtYXQKK21zZ2lkICJpbnN0YWxsaW5nICUuMjUwcyB3b3VsZCBicmVhayBleGlzdGluZyBzb2Z0d2FyZSIKK21zZ3N0ciAiJS4yNTBzIOyEpOy5mO2VmOyLnOuptCDquLDsobQg7IaM7ZSE7Yq47Juo7Ja066W8IOunneqwgOucqOumveuLiOuLpCIKKworIzogc3JjL2FyY2hpdmVzLmM6MTExNgorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiBjb25zaWRlcmluZyByZW1vdmluZyAlcyBpbiBmYXZvdXIgb2YgJXMgLi4uXG4iCittc2dzdHIgImRwa2c6ICVzIO2MqO2CpOyngOulvCDsp4DsmrDqs6AgJXMg7Yyo7YKk7KeA66W8IOyEpOy5mO2VmOugpCDtlanri4jri6QuLi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTEyMgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgcHJvcGVybHkgaW5zdGFsbGVkIC0gaWdub3JpbmcgYW55IGRlcGVuZGVuY2llcyBvbiBpdC5cbiIKK21zZ3N0ciAiIgorIiVz7J2AKOuKlCkg7Jis67CU66W06rKMIOyEpOy5mOuQmOyngCDslYrslZjsirXri4jri6QgLSDtjKjtgqTsp4Dsl5Ag64yA7ZWcIOuqqOuToCDsnZjsobTqtIDqs4Qg66y07Iuc7ZWp64uIIgorIuuLpC5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE1MQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiBtYXkgaGF2ZSB0cm91YmxlIHJlbW92aW5nICVzLCBhcyBpdCBwcm92aWRlcyAlcyAuLi5cbiIKK21zZ3N0ciAiIgorImRwa2c6ICVzIO2MqO2CpOyngOulvCDsp4Dsmrgg65WMIOusuOygnOqwgCDsnojsnYQg7IiYIOyeiOyKteuLiOuLpC4g7J20IO2MqO2CpOyngOqwgCAlc+ydhCjrpbwpIOygnOqztSIKKyLtlZjquLAg65WM66y47J6F64uI64ukIC4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTY2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBwYWNrYWdlICVzIHJlcXVpcmVzIHJlaW5zdGFsbGF0aW9uLCBidXQgd2lsbCByZW1vdmUgYW55d2F5IGFzIHlvdSAiCisicmVxdWVzdGVkLlxuIgorbXNnc3RyICIiCisiZHBrZzogJXMg7Yyo7YKk7KeA64qUIOuLpOyLnCDshKTsuZjtlbTslbwg7ZWp64uI64ukLiDtlZjsp4Drp4wg7Ja07KiM65OgIOyalOyyre2VnCDrjIDroZwg7KeA7JuB64uI64ukLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTY5CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IHBhY2thZ2UgJXMgcmVxdWlyZXMgcmVpbnN0YWxsYXRpb24sIHdpbGwgbm90IHJlbW92ZS5cbiIKK21zZ3N0ciAiZHBrZzogJXMg7Yyo7YKk7KeA64qUIOuLpOyLnCDshKTsuZjtlbTslbwg7ZWp64uI64ukLiAg7KeA7Jqw7KeAIOyViuyKteuLiOuLpC5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE3OAorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiB5ZXMsIHdpbGwgcmVtb3ZlICVzIGluIGZhdm91ciBvZiAlcy5cbiIKK21zZ3N0ciAiZHBrZzog64SkLCAlcyDtjKjtgqTsp4DripQg7KeA7Jqw6rOgICVzIO2MqO2CpOyngOulvCDshKTsuZjtlanri4jri6QuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmxpY3RpbmcgcGFja2FnZXMgLSBub3QgaW5zdGFsbGluZyAlLjI1MHMiCittc2dzdHIgIu2MqO2CpOyngCDstqnrj4wgLSAlLjI1MHMg7Yyo7YKk7KeA66W8IOyEpOy5mO2VmOyngCDslYrsirXri4jri6QiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExOTEKK21zZ2lkICJpZ25vcmluZyBjb25mbGljdCwgbWF5IHByb2NlZWQgYW55d2F5ISIKK21zZ3N0ciAi7Lap64+MIOustOyLnCwg7Ja07KiM65OgIOqzhOyGjSDsp4TtlontlaAg7IiY64+EIOyeiOyKteuLiOuLpCEiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyMzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyAtLXJlY3Vyc2l2ZSBuZWVkcyBhdCBsZWFzdCBvbmUgcGF0aCBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyAtLXJlY3Vyc2l2ZSDsmLXshZjsnYAg7KCB7Ja064+EIO2VmOuCmOydmCDqsr3roZwg7J247IiY6rCAIO2VhOyalO2VqeuLiOuLpCIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI0NQorbXNnaWQgImZpbmQgZm9yIGRwa2cgLS1yZWN1cnNpdmUiCittc2dzdHIgImRwa2cgLS1yZWN1cnNpdmXrpbwg7JyE7ZW0IGZpbmQg7Iuk7ZaJIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjY2Cittc2dpZCAiZmFpbGVkIHRvIGZkb3BlbiBmaW5kJ3MgcGlwZSIKK21zZ3N0ciAiZmluZOydmCDtjIzsnbTtlITrpbwgZmRvcGVu7ZWY64qU642wIOyLpO2MqO2WiOyKteuLiOuLpCIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3MgorbXNnaWQgImVycm9yIHJlYWRpbmcgZmluZCdzIHBpcGUiCittc2dzdHIgImZpbmTsnZgg7YyM7J207ZSE66W8IOydveuKlOuNsCDsmKTrpZjqsIAg67Cc7IOd7ZaI7Iq164uI64ukIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjczCittc2dpZCAiZXJyb3IgY2xvc2luZyBmaW5kJ3MgcGlwZSIKK21zZ3N0ciAiZmluZOydmCDtjIzsnbTtlITrpbwg64ur64qU642wIOyYpOulmOqwgCDrsJzsg53tlojsirXri4jri6QiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmluZCBmb3IgLS1yZWN1cnNpdmUgcmV0dXJuZWQgdW5oYW5kbGVkIGVycm9yICVpIgorbXNnc3RyICIiCisiLS1yZWN1cnNpdmXrpbwg7JyE7ZWcIGZpbmQg7ZSE66Gc6re4656o7J20IOyymOumrO2VoCDsiJgg7JeG64qUIOyYpOulmCglaSnrpbwg66as7YS07ZaI7Iq164uI64ukIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjc5Cittc2dpZCAic2VhcmNoZWQsIGJ1dCBmb3VuZCBubyBwYWNrYWdlcyAoZmlsZXMgbWF0Y2hpbmcgKi5kZWIpIgorbXNnc3RyICLtjKjtgqTsp4Drpbwg7LC+7J2EIOyImCDsl4bsirXri4jri6QgKCouZGVi6rO8IOydvOy5mO2VmOuKlCDtjIzsnbzrk6QpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjkwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYXQgbGVhc3Qgb25lIHBhY2thZ2UgYXJjaGl2ZSBmaWxlIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIOyYteyFmOydgCDsoIHslrTrj4Qg7ZWY64KY7J2YIO2MqO2CpOyngCDslYTsubTsnbTruIwg7YyM7J28IOyduOyImOqwgCDtlYTsmpTtlanri4jri6QuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzI1IHNyYy9kaXZlcnRjbWQuYzo3OCBzcmMvZGl2ZXJ0Y21kLmM6MTE4CisjOiBzcmMvZW5xdWlyeS5jOjE2NiBzcmMvZW5xdWlyeS5jOjI3OSBzcmMvZW5xdWlyeS5jOjQ0OSBzcmMvZW5xdWlyeS5jOjQ1MQorIzogc3JjL2VucXVpcnkuYzo0NjQgc3JjL21haW4uYzo2NiBzcmMvbWFpbi5jOjE2MyBzcmMvbWFpbi5jOjMxNAorIzogc3JjL21haW4uYzo0OTMgc3JjL3BhY2thZ2VzLmM6MjU0IHNyYy9xdWVyeWNtZC5jOjI1MiBzcmMvcXVlcnljbWQuYzozNTUKKyM6IHNyYy9xdWVyeWNtZC5jOjM5NiBzcmMvcXVlcnljbWQuYzo0MDQgc3JjL3F1ZXJ5Y21kLmM6NDQ4IHNyYy9xdWVyeWNtZC5jOjUxNworIzogc3JjL3F1ZXJ5Y21kLmM6NjA2IHNyYy9xdWVyeWNtZC5jOjY1MCBzcmMvc2VsZWN0LmM6Nzkgc3JjL3N0YXRjbWQuYzo2OAorIzogc3JjL3N0YXRjbWQuYzo5OCBzcmMvdHJpZ2NtZC5jOjU4IHNyYy90cmlnY21kLmM6OTAgZHBrZy1kZWIvYnVpbGQuYzo0NDEKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyMTcgZHBrZy1kZWIvZXh0cmFjdC5jOjI1MCBkcGtnLWRlYi9pbmZvLmM6MjAzCisjOiBkcGtnLWRlYi9pbmZvLmM6MjY1IGRwa2ctZGViL21haW4uYzo2MCBkcGtnLWRlYi9tYWluLmM6MTI2CisjOiBkcGtnLXNwbGl0L2luZm8uYzoyNTcgZHBrZy1zcGxpdC9tYWluLmM6NTQgZHBrZy1zcGxpdC9tYWluLmM6OTgKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxNDQgZHBrZy1zcGxpdC9xdWV1ZS5jOjI4MAorbXNnaWQgIjxzdGFuZGFyZCBvdXRwdXQ+IgorbXNnc3RyICI87ZGc7KSAIOy2nOugpT4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzMjYgc3JjL3BhY2thZ2VzLmM6MjU1IHNyYy9xdWVyeWNtZC5jOjI1MworIzogc3JjL3F1ZXJ5Y21kLmM6MzUzIHNyYy9xdWVyeWNtZC5jOjQ1NCBzcmMvcXVlcnljbWQuYzo1MTggc3JjL3NlbGVjdC5jOjgwCisjOiBkcGtnLXNwbGl0L21haW4uYzoxNjkgZHBrZy1zcGxpdC9xdWV1ZS5jOjIxOAorbXNnaWQgIjxzdGFuZGFyZCBlcnJvcj4iCittc2dzdHIgIjztkZzspIAg7Jik66WYPiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTM2NworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiU2VsZWN0aW5nIHByZXZpb3VzbHkgZGVzZWxlY3RlZCBwYWNrYWdlICVzLlxuIgorbXNnaWQgIlNlbGVjdGluZyBwcmV2aW91c2x5IHVuc2VsZWN0ZWQgcGFja2FnZSAlcy5cbiIKK21zZ3N0ciAi7KCE7JeQIOyEoO2Dne2VmOyngCDslYrsnYAgJXMg7Yyo7YKk7KeA66W8IOyEoO2Dne2VqeuLiOuLpC5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTM3MQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiU2tpcHBpbmcgZGVzZWxlY3RlZCBwYWNrYWdlICVzLlxuIgorbXNnaWQgIlNraXBwaW5nIHVuc2VsZWN0ZWQgcGFja2FnZSAlcy5cbiIKK21zZ3N0ciAi7ISg7YOd7ZWY7KeAIOyViuydgCAlcyDtjKjtgqTsp4DripQg64SY7Ja06rCR64uI64ukLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzg3CisjLCBjLWZvcm1hdAorbXNnaWQgIlZlcnNpb24gJS4yNTBzIG9mICUuMjUwcyBhbHJlYWR5IGluc3RhbGxlZCwgc2tpcHBpbmcuXG4iCittc2dzdHIgIiIKKyIlMiQuMjUwcyDtjKjtgqTsp4DsnZggJTEkLjI1MHMg67KE7KCE7J20IOydtOuvuCDshKTsuZjrkJjslrQg7J6I7Iq164uI64ukLiDrhJjslrTqsJHri4jri6QuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzOTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZG93bmdyYWRpbmcgJS4yNTBzIGZyb20gJS4yNTBzIHRvICUuMjUwcy4iCittc2dzdHIgIiUuMjUwcyDtjKjtgqTsp4DrpbwgJS4yNTBzIOuyhOyghOyXkOyEnCAlLjI1MHMg67KE7KCE7Jy866GcIOuLpOyatOq3uOugiOydtOuTnC4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjE0MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiV2lsbCBub3QgZG93bmdyYWRlICUuMjUwcyBmcm9tIHZlcnNpb24gJS4yNTBzIHRvICUuMjUwcywgc2tpcHBpbmcuXG4iCittc2dzdHIgIiIKKyIlLjI1MHMg7Yyo7YKk7KeA66W8ICUuMjUwcyDrsoTsoITsl5DshJwgJS4yNTBzIOuyhOyghOycvOuhnCDri6TsmrTqt7jroIjsnbTrk5ztlZjsp4Ag7JWK7Iq164uI64ukLiAgIgorIuqxtOuEiCDrnIHri4jri6QuXG4iCisKKyM6IHNyYy9jbGVhbnVwLmM6ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVuYWJsZSB0byByZW1vdmUgbmV3bHktaW5zdGFsbGVkIHZlcnNpb24gb2YgYCUuMjUwcycgdG8gYWxsb3cgcmVpbnN0YWxsYXRpb24gIgorIm9mIGJhY2t1cCBjb3B5IgorbXNnc3RyICIiCisi67Cx7JeFIOuzteyCrOuzuOydhCDri6Tsi5wg7ISk7LmY7ZWY6riwIOychO2VtCBgJS4yNTBzJ+ydmCDsg4jroZwg7ISk7LmY65CcIOuyhOyghOydhCDsp4Dsmrgg7IiYIOyXhuyKteuLiCIKKyLri6QuIgorCisjOiBzcmMvY2xlYW51cC5jOjkzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZXN0b3JlIGJhY2t1cCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICJgJS4yNTBzJ+ydmCDrsLHsl4Ug67KE7KCE7J2EIOuzteq1rO2VoCDsiJgg7JeG7Iq164uI64ukIgorCisjOiBzcmMvY2xlYW51cC5jOjk3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgYmFja3VwIGNvcHkgb2YgJyUuMjUwcyciCittc2dzdHIgIiclLjI1MHMn7J2YIOuwseyXhSDrs7Xsgqzrs7jsnYQg7KCc6rGw7ZWgIOyImCDsl4bsirXri4jri6QiCisKKyM6IHNyYy9jbGVhbnVwLmM6MTAxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgbmV3bHktaW5zdGFsbGVkIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dzdHIgImAlLjI1MHMn7J2YIOyDiOuhnCDtkbwg67KE7KCE7J2EIOyngOyauCDsiJgg7JeG7Iq164uI64ukIgorCisjOiBzcmMvY2xlYW51cC5jOjEwOAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIG5ld2x5LWV4dHJhY3RlZCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICJgJS4yNTBzJ+ydmCDsg4jroZwg7ZG8IOuyhOyghOydhCDsp4Dsmrgg7IiYIOyXhuyKteuLiOuLpCIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjEwNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBuZXcgZGlzdHJpYnV0ZWQgY29uZmZpbGUgJyUuMjUwcyciCittc2dzdHIgIuyDiOuhnOyatCDrsLDtj6wg7ISk7KCVIO2MjOydvCwgYCUuMjUwcycg7YyM7J287J2YIOygleuztOulvCDsnb3snYQg7IiYIOyXhuyKteuLiOuLpCIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBjdXJyZW50IGluc3RhbGxlZCBjb25mZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi7ZiE7J6sIOyEpOy5mOuQnCDshKTsoJUg7YyM7J28LCBgJS4yNTBzJyDtjIzsnbzsnZgg7KCV67O066W8IOydveydhCDsiJgg7JeG7Iq164uI64ukIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTI2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJDb25maWd1cmF0aW9uIGZpbGUgYCVzJywgZG9lcyBub3QgZXhpc3Qgb24gc3lzdGVtLlxuIgorIkluc3RhbGxpbmcgbmV3IGNvbmZpZyBmaWxlIGFzIHlvdSByZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiIKKyJcbiIKKyJgJXMnIOyEpOyglSDtjIzsnbzsnYAg7Iuc7Iqk7YWc7JeQIOyXhuyKteuLiOuLpC5cbiIKKyLsmpTssq3tlZzrjIDroZwg7IOI66Gc7Jq0IOyEpOyglSDtjIzsnbzsnYQg7ISk7LmY7ZWp64uI64ukLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTY4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlIG9sZCBiYWNrdXAgJyUuMjUwcyc6ICVzIgorbXNnc3RyICIlczog7J207KCEIOuwseyXhSAnJS4yNTBzJyDtjIzsnbzsnYQg7KeA7Jqw64qU642wIOyLpO2MqO2WiOyKteuLiOuLpDogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW5hbWUgJyUuMjUwcycgdG8gJyUuMjUwcyc6ICVzIgorbXNnc3RyICIlczogJyUuMjUwcycg7YyM7J287J2EICclLjI1MHMnIO2MjOydvOuhnCDsnbTrpoQg67CU6r6464qU642wIOyLpO2MqO2WiOyKteuLiOuLpDogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW1vdmUgJyUuMjUwcyc6ICVzIgorbXNnc3RyICIlczogJyUuMjUwcycg7YyM7J287J2EIOygnOqxsO2VmOuKlOuNsCDsi6TtjKjtlojsirXri4jri6Q6ICVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTg4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlIG9sZCBkaXN0cmlidXRlZCB2ZXJzaW9uICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiJXM6IOyYpOuemOuQnCDrsLDtj6wg67KE7KCEICclLjI1MHMn7J2EKOulvCkg7KeA7Jqw64qU642wIOyLpO2MqO2WiOyKteuLiOuLpDogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW1vdmUgJyUuMjUwcycgKGJlZm9yZSBvdmVyd3JpdGUpOiAlcyIKK21zZ3N0ciAiJXM6ICclLjI1MHMnIO2MjOydvOydhCDsoJzqsbDtlZjripTrjbAg7Iuk7Yyo7ZaI7Iq164uI64ukICjrja7slrTsk7DquLAg7KCEKTogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byBsaW5rICclLjI1MHMnIHRvICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiJXM6ICclLjI1MHMnIO2MjOydvOydhCAnJS4yNTBzJ+yXkCDsl7DqsrDtlZjripTrjbAg7Iuk7Yyo7ZaI7Iq164uI64ukOiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjIwMAorIywgYy1mb3JtYXQKK21zZ2lkICJJbnN0YWxsaW5nIG5ldyB2ZXJzaW9uIG9mIGNvbmZpZyBmaWxlICVzIC4uLlxuIgorbXNnc3RyICLsg4gg67KE7KCE7J2YIOyEpOyglSDtjIzsnbwgJXMg7ISk7LmY7ZWY64qUIOykkeyeheuLiOuLpCAuLi5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjIwNiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NTQ2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIGAlLjI1MHMnIGFzIGAlLjI1MHMnIgorbXNnc3RyICJgJS4yNTBzJyDtjIzsnbzsnYQgYCUuMjUwcycg7YyM7J2866GcIOyEpOy5mO2VoCDsiJgg7JeG7Iq164uI64ukIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjU3CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHBhY2thZ2UgbmFtZWQgYCVzJyBpcyBpbnN0YWxsZWQsIGNhbm5vdCBjb25maWd1cmUiCittc2dzdHIgIiIKKyJgJXMnKOydtCnrnbzripQg7J2066aE7J2YIO2MqO2CpOyngOuKlCDshKTsuZjrkJjslrQg7J6I7KeAIOyViuyKteuLiOuLpC4g7ISk7KCV7ZWgIOyImCDsl4bsirXri4jri6QuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjYwCisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgJS4yNTBzIGlzIGFscmVhZHkgaW5zdGFsbGVkIGFuZCBjb25maWd1cmVkIgorbXNnc3RyICIlLjI1MHMg7Yyo7YKk7KeA64qUIOydtOuvuCDshKTsuZjrkJjslrQg7ISk7KCV65CY7Ja0IOyeiOyKteuLiOuLpCIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI2MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisicGFja2FnZSAlLjI1MHMgaXMgbm90IHJlYWR5IGZvciBjb25maWd1cmF0aW9uXG4iCisiIGNhbm5vdCBjb25maWd1cmUgKGN1cnJlbnQgc3RhdHVzIGAlLjI1MHMnKSIKK21zZ3N0ciAiIgorIiUuMjUwcyDtjKjtgqTsp4DripQg7ISk7KCVIOykgOu5hOqwgCDrkJjslrQg7J6I7KeAIOyViuyKteuLiOuLpFxuIgorIiDshKTsoJXtlaAg7IiYIOyXhuyKteuLiOuLpC4gKO2YhOyerCDsg4Htg5wgOiBgJS4yNTBzJykiCisKKyM6IHNyYy9jb25maWd1cmUuYzoyOTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IGRlcGVuZGVuY3kgcHJvYmxlbXMgcHJldmVudCBjb25maWd1cmF0aW9uIG9mICVzOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzog7J2Y7KG07ISxIOusuOygnOuhnCAlc+ydhCjrpbwpIOyEpOygle2VoCDsiJgg7JeG7Iq164uI64ukOlxuIgorIiVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6Mjk3Cittc2dpZCAiZGVwZW5kZW5jeSBwcm9ibGVtcyAtIGxlYXZpbmcgdW5jb25maWd1cmVkIgorbXNnc3RyICLsnZjsobTshLEg66y47KCcIC0g7ISk7KCV7ZWY7KeAIOyViuqzoCDrgqjqsqjrkaAiCisKKyM6IHNyYy9jb25maWd1cmUuYzozMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6ICVzOiBkZXBlbmRlbmN5IHByb2JsZW1zLCBidXQgY29uZmlndXJpbmcgYW55d2F5IGFzIHlvdSByZXF1ZXN0ZWQ6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiAlczog7J2Y7KG07ISxIOusuOygnCwg7ZWY7KeA66eMIOyalOyyre2VnCDrjIDroZwg7Ja07KiM65OgIOyEpOygle2VqeuLiOuLpDpcbiIKKyIlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjMwOQorbXNnaWQgIiIKKyJQYWNrYWdlIGlzIGluIGEgdmVyeSBiYWQgaW5jb25zaXN0ZW50IHN0YXRlIC0geW91IHNob3VsZFxuIgorIiByZWluc3RhbGwgaXQgYmVmb3JlIGF0dGVtcHRpbmcgY29uZmlndXJhdGlvbi4iCittc2dzdHIgIiIKKyLtjKjtgqTsp4DqsIAg66ek7JqwIOyViCDsoovsnYAg67aI7J287LmYIOyDge2DnOyXkCDruaDsoLgg7J6I7Iq164uI64ukIC1cbiIKKyIg7ISk7KCV7J2EIOyLnOuPhO2VmOq4sCDsoITsl5Ag7Yyo7YKk7KeA66W8IOuLpOyLnCDshKTsuZjtlZjsi63si5zsmKQuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MzEyCisjLCBjLWZvcm1hdAorbXNnaWQgIlNldHRpbmcgdXAgJXMgKCVzKSAuLi5cbiIKK21zZ3N0ciAiJXMgKCVzKSDshKTsoJXtlZjripQg7KSR7J6F64uI64ukIC4uLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6Mzk2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogdW5hYmxlIHRvIHN0YXQgY29uZmlnIGZpbGUgJyVzJ1xuIgorIiAoPSAnJXMnKTogJXMiCittc2dzdHIgIiIKKyIlczog7ISk7KCVIO2MjOydvCAnJXMnIO2MjOydvOydmCAoPSAnJXMnKSDsoJXrs7Trpbwg7J297J2EIOyImFxuIgorIiDsl4bsirXri4jri6Q6ICVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDA5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogY29uZmlnIGZpbGUgJyVzJyBpcyBhIGNpcmN1bGFyIGxpbmtcbiIKKyIgKD0gJyVzJykiCittc2dzdHIgIiIKKyIlczog7ISk7KCVIO2MjOydvCAnJXMnIO2MjOydvOydgCAoPSAnJXMnKSDsiJztmZhcbiIKKyIg66eB7YGs7J6F64uI64ukIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDE4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogdW5hYmxlIHRvIHJlYWRsaW5rIGNvbmZmaWxlICclcydcbiIKKyIgKD0gJyVzJyk6ICVzIgorbXNnc3RyICIiCisiJXM6IOyEpOyglSDtjIzsnbwgJyVzJ+yXkCAoPSAnJXMnKSDrjIDtlbQgcmVhZGxpbmvtlaAg7IiYXG4iCisiIOyXhuyKteuLiOuLpDogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzo0NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBjb25mZmlsZSAnJS4yNTBzJyByZXNvbHZlcyB0byBkZWdlbmVyYXRlIGZpbGVuYW1lXG4iCisiICgnJXMnIGlzIGEgc3ltbGluayB0byAnJXMnKSIKK21zZ3N0ciAiIgorIiVzOiDshKTsoJUg7YyM7J28ICclLjI1MHMn7J2YIO2MjOydvCDsnbTrpoTsnbQg6rS07IOB7ZWY6rKMIOuQqeuLiOuLpFxuIgorIiAoJyVzJ+ydgCjripQpICclcyfsl5Ag64yA7ZWcIOyLrOuzvOumrSDrp4HtgazsnoXri4jri6QpIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDYwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBjb25mZmlsZSAnJS4yNTBzJyBpcyBub3QgYSBwbGFpbiBmaWxlIG9yIHN5bWxpbmsgKD0gJyVzJykiCittc2dzdHIgIiIKKyIlczog7ISk7KCVIO2MjOydvCAnJS4yNTBzJ+ydgCjripQpICg9ICclcycpIOydvOuwmCDtjIzsnbzsnbTrgpgg7Ius67O866atIOunge2BrOqwgCDslYTri5nri4jri6QiCisKKyM6IHNyYy9jb25maWd1cmUuYzo0ODYKK21zZ2lkICJtZDVoYXNoIgorbXNnc3RyICJtZDVoYXNoIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDkyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB1bmFibGUgdG8gb3BlbiBjb25mZmlsZSAlcyBmb3IgaGFzaDogJXMiCittc2dzdHIgIiVzOiDtlbTsiazrpbwg7JyE7ZWcIOyEpOyglSDtjIzsnbwgJXPsnYQo66W8KSDsl7Qg7IiYIOyXhuyKteuLiOuLpDogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzo1MjIgc3JjL2NvbmZpZ3VyZS5jOjUyNgorbXNnaWQgImNvbmZmaWxlIGRpZmZlcmVuY2UgdmlzdWFsaXplciIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NTQzCittc2dpZCAiVHlwZSBgZXhpdCcgd2hlbiB5b3UncmUgZG9uZS5cbiIKK21zZ3N0ciAi64ukIOuBneuCmOuptCBgZXhpdCfrpbwg7J6F66Cl7ZWY7Iut7Iuc7JikLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NTUyIHNyYy9jb25maWd1cmUuYzo1NTYKK21zZ2lkICJjb25mZmlsZSBzaGVsbCIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjAyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJDb25maWd1cmF0aW9uIGZpbGUgYCVzJyIKK21zZ3N0ciAiIgorIlxuIgorIuyEpOyglSDtjIzsnbwgYCVzJyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYwNAorIywgYy1mb3JtYXQKK21zZ2lkICIgKGFjdHVhbGx5IGAlcycpIgorbXNnc3RyICIgKOyLpOygnOuhnOuKlCBgJXMnKSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYwOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiID09PiBGaWxlIG9uIHN5c3RlbSBjcmVhdGVkIGJ5IHlvdSBvciBieSBhIHNjcmlwdC5cbiIKKyIgPT0+IEZpbGUgYWxzbyBpbiBwYWNrYWdlIHByb3ZpZGVkIGJ5IHBhY2thZ2UgbWFpbnRhaW5lci5cbiIKK21zZ3N0ciAiIgorIlxuIgorIiA9PT4g7Iuc7Iqk7YWc7JeQIOyeiOuKlCDtjIzsnbzsnYAg7IiY64+Z7Jy866GcIOunjOuTpOyXiOqxsOuCmCDsiqTtgazrpr3tirjqsIAg66eM65Ok7JeI7Iq164uI64ukLlxuIgorIiA9PT4g7Yyo7YKk7KeAIOyViOyXkOuPhCDqtIDrpqzsnpDqsIAg7KCc6rO17ZWY64qUIOq3uCDtjIzsnbzsnbQg7J6I7Iq164uI64ukLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjEzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgICAgIE5vdCBtb2RpZmllZCBzaW5jZSBpbnN0YWxsYXRpb24uXG4iCittc2dzdHIgIiIKKyJcbiIKKyIgICAgIOyEpOy5mCDtm4Qg7IiY7KCV65CY7KeAIOyViuyVmOyKteuLiOuLpC5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYxNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiID09PiBNb2RpZmllZCAoYnkgeW91IG9yIGJ5IGEgc2NyaXB0KSBzaW5jZSBpbnN0YWxsYXRpb24uXG4iCittc2dzdHIgIiIKKyJcbiIKKyIgPT0+IOyEpOy5mCDtm4Qg7IiY7KCV65CY7JeI7Iq164uI64ukLiAo7IiY64+Z7Jy866GcIO2YueydgCDsiqTtgazrpr3tirgg65WM66y47JeQKVxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjE2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgPT0+IERlbGV0ZWQgKGJ5IHlvdSBvciBieSBhIHNjcmlwdCkgc2luY2UgaW5zdGFsbGF0aW9uLlxuIgorbXNnc3RyICIiCisiXG4iCisiID09PiDshKTsuZgg7ZuEIOyngOyboOyKteuLiOuLpC4gKOyImOuPmeycvOuhnCDtmLnsnYAg7Iqk7YGs66a97Yq4IOuVjOusuOyXkClcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYxOQorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IFBhY2thZ2UgZGlzdHJpYnV0b3IgaGFzIHNoaXBwZWQgYW4gdXBkYXRlZCB2ZXJzaW9uLlxuIgorbXNnc3RyICIgPT0+IO2MqO2CpOyngCDrsLDtj6zsnpDqsIAg7JeF642w7J207Yq47ZWcIOuyhOyghOydhCDrhKPsl4jsirXri4jri6QuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAgICBWZXJzaW9uIGluIHBhY2thZ2UgaXMgdGhlIHNhbWUgYXMgYXQgbGFzdCBpbnN0YWxsYXRpb24uXG4iCittc2dzdHIgIiAgICAg7Yyo7YKk7KeAIOyViOyXkCDsnojripQg67KE7KCE7J20IOyngOuCnOuyiCDshKTsuZjtlZwg6rKD6rO8IOqwmeyKteuLiOuLpC5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYyOAorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IFVzaW5nIG5ldyBmaWxlIGFzIHlvdSByZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiA9PT4g7JqU7LKt7ZWcIOuMgOuhnCDsg4jroZzsmrQg7YyM7J287J2EIOyCrOyaqe2VqeuLiOuLpC5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYzMgorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IFVzaW5nIGN1cnJlbnQgb2xkIGZpbGUgYXMgeW91IHJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiID09PiDsmpTssq3tlZwg64yA66GcIO2YhOyerOydmCDquLDsobQg7YyM7J287J2EIOyCrOyaqe2VqeuLiOuLpC5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY0MQorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IEtlZXBpbmcgb2xkIGNvbmZpZyBmaWxlIGFzIGRlZmF1bHQuXG4iCittc2dzdHIgIiA9PT4g6riw67O46rCS7Jy866GcIOq4sOyhtCDshKTsoJUg7YyM7J287J2EIOycoOyngO2VqeuLiOuLpC5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY0NQorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IFVzaW5nIG5ldyBjb25maWcgZmlsZSBhcyBkZWZhdWx0LlxuIgorbXNnc3RyICIgPT0+IOq4sOuzuOqwkuycvOuhnCDsg4jroZzsmrQg7ISk7KCVIO2MjOydvOydhCDsgqzsmqntlanri4jri6QuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiAgIFdoYXQgd291bGQgeW91IGxpa2UgdG8gZG8gYWJvdXQgaXQgPyAgWW91ciBvcHRpb25zIGFyZTpcbiIKKyIgICAgWSBvciBJICA6IGluc3RhbGwgdGhlIHBhY2thZ2UgbWFpbnRhaW5lcidzIHZlcnNpb25cbiIKKyIgICAgTiBvciBPICA6IGtlZXAgeW91ciBjdXJyZW50bHktaW5zdGFsbGVkIHZlcnNpb25cbiIKKyIgICAgICBEICAgICA6IHNob3cgdGhlIGRpZmZlcmVuY2VzIGJldHdlZW4gdGhlIHZlcnNpb25zXG4iCisiICAgICAgWiAgICAgOiBzdGFydCBhIHNoZWxsIHRvIGV4YW1pbmUgdGhlIHNpdHVhdGlvblxuIgorbXNnc3RyICIiCisiICAg7Ja065a76rKMIO2VmOyLnOqyoOyKteuLiOq5jD8g64uk7J2MIOykkeyXkCDtlZjrgpjrpbwg7ISg7YOd7ZWgIOyImCDsnojsirXri4jri6Q6XG4iCisiICAgIFkg65iQ64qUIEkgOiDtjKjtgqTsp4Ag6rSA66as7J6Q7J2YIOuyhOyghOydhCDshKTsuZjtlanri4jri6RcbiIKKyIgICAgTiDrmJDripQgTyA6IO2YhOyerCDshKTsuZjrkJwg67KE7KCE7J2EIOycoOyngO2VqeuLiOuLpFxuIgorIiAgICAgICBEICAgICA6IOuyhOyghCDqsITsnZgg7LCo7J207KCQ7J2EIO2RnOyLnO2VqeuLiOuLpFxuIgorIiAgICAgICBaICAgICA6IO2UhOuhnOyEuOyKpOulvCDrsLHqt7jrnbzsmrTrk5zroZwg7ZWY6rOgIOyDge2ZqeydhCDslYzslYTrtIXri4jri6RcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY1OQorIywgYy1mb3JtYXQKK21zZ2lkICIgVGhlIGRlZmF1bHQgYWN0aW9uIGlzIHRvIGtlZXAgeW91ciBjdXJyZW50IHZlcnNpb24uXG4iCittc2dzdHIgIuq4sOuzuOqwkuycvOuhnCDtmITsnqwg67KE7KCE7J2EIOq3uOuMgOuhnCDsnKDsp4Dtlanri4jri6QuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIFRoZSBkZWZhdWx0IGFjdGlvbiBpcyB0byBpbnN0YWxsIHRoZSBuZXcgdmVyc2lvbi5cbiIKK21zZ3N0ciAi6riw67O46rCS7Jy866GcIOyDiOuhnOyatCDrsoTsoITsnYQg7ISk7LmY7ZWp64uI64ukLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjY2Cittc2dpZCAiW2RlZmF1bHQ9Tl0iCittc2dzdHIgIlvquLDrs7jqsJI9Tl0iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NjcKK21zZ2lkICJbZGVmYXVsdD1ZXSIKK21zZ3N0ciAiW+q4sOuzuOqwkj1ZXSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY2OAorbXNnaWQgIltubyBkZWZhdWx0XSIKK21zZ3N0ciAiW+q4sOuzuOqwkiDsl4bsnYxdIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjcxCittc2dpZCAiZXJyb3Igd3JpdGluZyB0byBzdGRlcnIsIGRpc2NvdmVyZWQgYmVmb3JlIGNvbmZmaWxlIHByb21wdCIKK21zZ3N0ciAi7ZGc7KSAIOyYpOulmOyXkCDsk7DripTrjbAg7Jik66WYLCDshKTsoJUg7YyM7J28IO2UhOuhrO2UhO2KuCDsoITsl5Ag67Cc7IOd7ZaI7Iq164uI64ukIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjgwCittc2dpZCAicmVhZCBlcnJvciBvbiBzdGRpbiBhdCBjb25mZmlsZSBwcm9tcHQiCittc2dzdHIgIuyEpOyglSDtjIzsnbwg7ZSE66Gs7ZSE7Yq47JeQ7IScIO2RnOykgOyeheugpeyXkCDsnb3quLAg7Jik66WY6rCAIOuwnOyDne2WiOyKteuLiOuLpCIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY4MQorbXNnaWQgIkVPRiBvbiBzdGRpbiBhdCBjb25mZmlsZSBwcm9tcHQiCittc2dzdHIgIuyEpOyglSDtjIzsnbwg7ZSE66Gs7ZSE7Yq47JeQ7IScIO2RnOykgCDsnoXroKXsl5Ag7YyM7J287J20IOuBneuCrOyKteuLiOuLpCIKKworIzogc3JjL2RlcGNvbi5jOjE3NQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBkZXBlbmRzIG9uICVzIgorbXNnc3RyICIlcyDtjKjtgqTsp4DripQgJXMg7Yyo7YKk7KeA7JeQIOydmOyhtO2VqCIKKworIzogc3JjL2RlcGNvbi5jOjE3OAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBwcmUtZGVwZW5kcyBvbiAlcyIKK21zZ3N0ciAiJXMg7Yyo7YKk7KeA64qUICVzIO2MqO2CpOyngOyXkCDrr7jrpqwg7J2Y7KG07ZWoIgorCisjOiBzcmMvZGVwY29uLmM6MTgxCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHJlY29tbWVuZHMgJXMiCittc2dzdHIgIiVzIO2MqO2CpOyngOuKlCAlcyDtjKjtgqTsp4Ag7ISk7LmY66W8IOy2lOyynO2VqCIKKworIzogc3JjL2RlcGNvbi5jOjE4NAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBzdWdnZXN0cyAlcyIKK21zZ3N0ciAiJXMg7Yyo7YKk7KeA64qUICVzIO2MqO2CpOyngCDshKTsuZjrpbwg7KCc7JWIIgorCisjOiBzcmMvZGVwY29uLmM6MTg3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGJyZWFrcyAlcyIKK21zZ3N0ciAiJXMg7Yyo7YKk7KeA64qUICVzIO2MqO2CpOyngOulvCDrp53qsIDrnKjrprwiCisKKyM6IHNyYy9kZXBjb24uYzoxOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgY29uZmxpY3RzIHdpdGggJXMiCittc2dzdHIgIiVzIO2MqO2CpOyngOuKlCAlcyDtjKjtgqTsp4DsmYAg7Lap64+M7ZWoIgorCisjOiBzcmMvZGVwY29uLmM6MTkzCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGVuaGFuY2VzICVzIgorbXNnc3RyICIlcyDtjKjtgqTsp4DripQgJXMg7Yyo7YKk7KeA66W8IOqwnOyEoO2VqCIKKworIzogc3JjL2RlcGNvbi5jOjI5NgorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyDtjKjtgqTsp4DripQg7KeA7Jq4IOyYiOygleyeheuLiOuLpC5cbiIKKworIzogc3JjL2RlcGNvbi5jOjI5OQorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB0byBiZSBkZWNvbmZpZ3VyZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIO2MqO2CpOyngOuKlCDshKTsoJUg7ZW07KCc7ZWgIOyYiOygleyeheuLiOuLpC5cbiIKKworIzogc3JjL2RlcGNvbi5jOjMwNAorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB0byBiZSBpbnN0YWxsZWQsIGJ1dCBpcyB2ZXJzaW9uICUuMjUwcy5cbiIKK21zZ3N0ciAiICUuMjUwcyDtjKjtgqTsp4DripQg7ISk7LmY7ZWgIOyYiOygleydtOyngOunjCwg67KE7KCE7J20ICUuMjUwc+yeheuLiOuLpC5cbiIKKworIzogc3JjL2RlcGNvbi5jOjMxNAorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyBpbnN0YWxsZWQsIGJ1dCBpcyB2ZXJzaW9uICUuMjUwcy5cbiIKK21zZ3N0ciAiICUuMjUwcyDtjKjtgqTsp4DripQg7ISk7LmY65CY7JeI7KeA66eMLCDrsoTsoITsnbQgJS4yNTBz7J6F64uI64ukLlxuIgorCisjOiBzcmMvZGVwY29uLmM6MzMzCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHVucGFja2VkLCBidXQgaGFzIG5ldmVyIGJlZW4gY29uZmlndXJlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMg7Yyo7YKk7KeA64qUIO2SgOugpOyeiOyngOunjCwg7ISk7KCV65CcIOyggeydtCDsl4bsirXri4jri6QuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdW5wYWNrZWQsIGJ1dCBpcyB2ZXJzaW9uICUuMjUwcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMg7Yyo7YKk7KeA64qUIO2SgOugpOyeiOyngOunjCwg67KE7KCE7J20ICUuMjUwc+yeheuLiOuLpC5cbiIKKworIzogc3JjL2RlcGNvbi5jOjM0MworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBsYXRlc3QgY29uZmlndXJlZCB2ZXJzaW9uIGlzICUuMjUwcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMg7Yyo7YKk7KeA7J2YIOy1nOq3vCDshKTsoJXrkJwg67KE7KCE7J2AICUuMjUwc+yeheuLiOuLpC5cbiIKKworIzogc3JjL2RlcGNvbi5jOjM1MworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyAlcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMg7Yyo7YKk7KeA64qUICVzLlxuIgorCisjOiBzcmMvZGVwY29uLmM6Mzg4CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBidXQgaXMgdG8gYmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMg7Yyo7YKk7KeA64qUICUuMjUwc+ydhCjrpbwpIOygnOqzte2VmOyngOunjCDsp4Dsmrgg7JiI7KCV7J6F64uI64ukLlxuIgorCisjOiBzcmMvZGVwY29uLmM6MzkyCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBidXQgaXMgdG8gYmUgZGVjb25maWd1cmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyDtjKjtgqTsp4DripQgJS4yNTBz7J2EKOulvCkg7KCc6rO17ZWY7KeA66eMIOyEpOyglSDtlbTsoJztlaAg7JiI7KCV7J6F64uI64ukLlxuIgorCisjOiBzcmMvZGVwY29uLmM6NDAxCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBidXQgaXMgJXMuXG4iCittc2dzdHIgIiAgJS4yNTBzIO2MqO2CpOyngOuKlCAlLjI1MHPsnYQo66W8KSDsoJzqs7XtlZjsp4Drp4wgJXMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0MTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgbm90IGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMg7Yyo7YKk7KeA64qUIOyEpOy5mO2VmOyngCDslYrslZjsirXri4jri6QuXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgKHZlcnNpb24gJS4yNTBzKSBpcyB0byBiZSBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIO2MqO2CpOyngCjrsoTsoIQgJS4yNTBzKeulvCDshKTsuZjtlaAg7JiI7KCV7J6F64uI64ukLlxuIgorCisjOiBzcmMvZGVwY29uLmM6NDY4CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzICh2ZXJzaW9uICUuMjUwcykgaXMgcHJlc2VudCBhbmQgJXMuXG4iCittc2dzdHIgIiAgJS4yNTBzIO2MqO2CpOyngCjrsoTsoIQgJS4yNTBzKeqwgCDsnojqs6AgJXMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGFuZCBpcyB0byBiZSBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIO2MqO2CpOyngOuKlCAlLjI1MHPsnYQo66W8KSDsoJzqs7XtlZjrqbAg7ISk7LmY7ZWgIOyYiOygleyeheuLiOuLpC5cbiIKKworIzogc3JjL2RlcGNvbi5jOjUzNworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYW5kIGlzIHByZXNlbnQgYW5kICVzLlxuIgorbXNnc3RyICIgICUuMjUwcyDtjKjtgqTsp4DripQgJS4yNTBz7J2EKOulvCkg7KCc6rO17ZWY66mwICVzLlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTAKKyMsIGZ1enp5CisjfCBtc2dpZCAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBxdWVyeWluZyBwYWNrYWdlcy4iCittc2dpZCAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBkaXZlcnRpbmcgZmlsZXMuIgorbXNnc3RyICLsv7zrpqwg7ZSE66Gc6re4656o7JeQIOuMgO2VnCDrj4Tsm4Drp5DsnYAgLS1oZWxwIOyYteyFmOydhCDsgqzsmqntlZjsi63si5zsmKQuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjYgc3JjL3N0YXRjbWQuYzo1NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuICVzIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIuuNsOu5hOyViCAlcyDrsoTsoIQgJXMuXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo3MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDEwIEd1aWxsZW0gSm92ZXIuXG4iCittc2dzdHIgIiIKKyJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMTAgR3VpbGxlbSBKb3Zlci5cbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjc1IHNyYy9tYWluLmM6NjMgc3JjL3F1ZXJ5Y21kLmM6NjAzIHNyYy9zdGF0Y21kLmM6NjUKKyM6IHNyYy90cmlnY21kLmM6NTUgZHBrZy1kZWIvbWFpbi5jOjU3IGRwa2ctc3BsaXQvbWFpbi5jOjUxCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6ODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgb3JcbiIKKyJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKK21zZ3N0ciAiIgorIuyekOycoCDshoztlITtirjsm6jslrTsnoXri4jri6QuIOuzteyCrCDsobDqsbTsl5Ag6rSA7ZW07ISc64qUIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlXG4iCisidmVyc2lvbiAyIOydtO2bhOulvCDrs7Tsi63si5zsmKQuIOyWtOuWpCDrs7Tspp3rj4Qg7ZWY7KeAIOyViuyKteuLiOuLpC5cbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjg3IHNyYy9tYWluLmM6ODEgc3JjL3F1ZXJ5Y21kLmM6NjE1IHNyYy9zdGF0Y21kLmM6NzcKKyM6IGRwa2ctZGViL21haW4uYzo2OSBkcGtnLXNwbGl0L21haW4uYzo2MyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6OTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSA8Y29tbWFuZD5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIuyCrOyaqeuylTogJXMgWzzsmLXshZg+IC4uLl0gPOuqheuguT5cbiIKKyJcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjkxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIFstLWFkZF0gPGZpbGU+ICAgICAgICAgICBhZGQgYSBkaXZlcnNpb24uXG4iCisiICAtLXJlbW92ZSA8ZmlsZT4gICAgICAgICAgcmVtb3ZlIHRoZSBkaXZlcnNpb24uXG4iCisiICAtLWxpc3QgWzxnbG9iLXBhdHRlcm4+XSAgc2hvdyBmaWxlIGRpdmVyc2lvbnMuXG4iCisiICAtLWxpc3RwYWNrYWdlIDxmaWxlPiAgICAgc2hvdyB3aGF0IHBhY2thZ2UgZGl2ZXJ0cyB0aGUgZmlsZS5cbiIKKyIgIC0tdHJ1ZW5hbWUgPGZpbGU+ICAgICAgICByZXR1cm4gdGhlIGRpdmVydGVkIGZpbGUuXG4iCisiXG4iCittc2dzdHIgIiIKKyLrqoXroLk6XG4iCisiICBbLS1hZGRdIDztjIzsnbw+ICAgICAgICAgIOyghO2ZmCDtjIzsnbzsnYQg7LaU6rCA7ZWp64uI64ukLlxuIgorIiAgLS1yZW1vdmUgPO2MjOydvD4gICAgICAgICDsoITtmZgg7YyM7J287J2EIOygnOqxsO2VqeuLiOuLpC5cbiIKKyIgIC0tbGlzdCBbPOq4gOuhnOu4jO2MqO2EtD5dICAg7KCE7ZmYIO2MjOydvCDrqqnroZ3snYQg7ZGc7Iuc7ZWp64uI64ukLlxuIgorIiAgLS1saXN0cGFja2FnZSA87YyM7J28PiAgICDslrTrlqQg7Yyo7YKk7KeA6rCAIO2VtOuLuSDtjIzsnbzsnYQg7KCE7ZmY7ZWY64qU7KeAIO2RnOyLnO2VqeuLiOuLpC5cbiIKKyIgIC0tdHJ1ZW5hbWUgPO2MjOydvD4gICAgICAg7KCE7ZmY65CcIO2MjOydvOydhCDtkZzsi5ztlanri4jri6QuXG4iCisiXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoxMDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLXBhY2thZ2UgPHBhY2thZ2U+ICAgICAgbmFtZSBvZiB0aGUgcGFja2FnZSB3aG9zZSBjb3B5IG9mIDxmaWxlPiB3aWxsICIKKyJub3RcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJlIGRpdmVydGVkLlxuIgorIiAgLS1sb2NhbCAgICAgICAgICAgICAgICAgIGFsbCBwYWNrYWdlcycgdmVyc2lvbnMgYXJlIGRpdmVydGVkLlxuIgorIiAgLS1kaXZlcnQgPGRpdmVydC10bz4gICAgIHRoZSBuYW1lIHVzZWQgYnkgb3RoZXIgcGFja2FnZXMnIHZlcnNpb25zLlxuIgorIiAgLS1yZW5hbWUgICAgICAgICAgICAgICAgIGFjdHVhbGx5IG1vdmUgdGhlIGZpbGUgYXNpZGUgKG9yIGJhY2spLlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIHNldCB0aGUgZGlyZWN0b3J5IHdpdGggdGhlIGRpdmVyc2lvbnMgZmlsZS5cbiIKKyIgIC0tdGVzdCAgICAgICAgICAgICAgICAgICBkb24ndCBkbyBhbnl0aGluZywganVzdCBkZW1vbnN0cmF0ZS5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBxdWlldCBvcGVyYXRpb24sIG1pbmltYWwgb3V0cHV0LlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIuyYteyFmDpcbiIKKyIgIC0tcGFja2FnZSA87Yyo7YKk7KeAPiAgICAgIDztjIzsnbw+7J2EIOyghO2ZmO2VmOyngCDslYrsnYQg7Yyo7YKk7KeA7J2YIOydtOumhOydhCDsp4DsoJXtlanri4giCisi64ukLlxuIgorIiAgLS1sb2NhbCAgICAgICAgICAgICAgICAg7ZW064u57ZWY64qUIO2MqO2CpOyngCDsoITrtoDrpbwg7KCE7ZmY7ZWp64uI64ukLlxuIgorIiAgLS1kaXZlcnQgPOyghO2ZmO2VoOuMgOyDgT4gICDri6Trpbgg7Yyo7YKk7KeA7JeQ7IScIOyCrOyaqe2VmOuKlCDtlbTri7kg7YyM7J287J2YIOydtOumhC5cbiIKKyIgIC0tcmVuYW1lICAgICAgICAgICAgICAgIO2MjOydvOydhCDsi6TsoJzroZwg7Jiu6riw6rGw64KYIOybkOuemOuMgOuhnCDrs7Xsm5Dtlanri4jri6QuXG4iCisiICAtLWFkbWluZGlyIDzrlJTroInthLDrpqw+ICAgZGl2ZXJzaW9ucyDtjIzsnbzsnYQg64u064qUIOuUlOugie2EsOumrOulvCDsp4DsoJXtlanri4jri6QuXG4iCisiICAtLXRlc3QgICAgICAgICAgICAgICAgICDslYTrrLTqsoPrj4Qg7ZWY7KeAIOyViuqzoCDsi5zrspTrp4wg67O07Jes7KSN64uI64ukLlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAg7Lac66Cl7J2EIOy1nOuMgO2VnCDsnpDsoJztlZjsl6wg7KGw7Jqp7Z6IIOyekeyXhe2VqeuLiOuLpC5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgIOydtCDrj4Tsm4Drp5Ag66mU7Iuc7KeA66W8IO2RnOyLnO2VqeuLiOuLpC5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgIOuyhOyghOydhCDtkZzsi5ztlanri4jri6QuXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIldoZW4gYWRkaW5nLCBkZWZhdWx0IGlzIC0tbG9jYWwgYW5kIC0tZGl2ZXJ0IDxvcmlnaW5hbD4uZGlzdHJpYi5cbiIKKyJXaGVuIHJlbW92aW5nLCAtLXBhY2thZ2Ugb3IgLS1sb2NhbCBhbmQgLS1kaXZlcnQgbXVzdCBtYXRjaCBpZiBzcGVjaWZpZWQuXG4iCisiUGFja2FnZSBwcmVpbnN0L3Bvc3RybSBzY3JpcHRzIHNob3VsZCBhbHdheXMgc3BlY2lmeSAtLXBhY2thZ2UgYW5kIC0tIgorImRpdmVydC5cbiIKK21zZ3N0ciAiIgorIuy2lOqwgO2VoCDrlYzripQgLS1sb2NhbOyZgCAtLWRpdmVydCA87JuQ656Y7YyM7J28Pi5kaXN0cmli7J20IOq4sOuzuOyeheuLiOuLpC5cbiIKKyLsp4Dsmrgg65WM64qUIC0tcGFja2FnZeuCmCAtLWxvY2Fs7JmAIC0tZGl2ZXJ0IOyYteyFmOydhCDsgqzsmqntlojsnYQg6rK97JqwIO2VreuqqeydtFxuIgorIuydvOy5mO2VtOyVvCDtlanri4jri6QuIO2MqO2CpOyngOydmCBwcmVpbnN0LCBwb3N0cm0g7Iqk7YGs66a97Yq464qUIOyWuOygnOuCmCAtLXBhY2thZ2XsmYBcbiIKKyItLWRpdmVydCDsmLXshZjsnYQg7KeA7KCV7ZWY64qUIOqyg+ydtCDsoovsirXri4jri6QuXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoxNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2hlY2tpbmcgJyVzJyIKK21zZ3N0ciAiJyVzJyDqsoDsgqztlZjripTrjbAg7Jik66WY6rCAIOuwnOyDne2WiOyKteuLiOuLpCIKKworIzogc3JjL2RpdmVydGNtZC5jOjIwMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisicmVuYW1lIGludm9sdmVzIG92ZXJ3cml0aW5nIGAlcycgd2l0aFxuIgorIiAgZGlmZmVyZW50IGZpbGUgYCVzJywgbm90IGFsbG93ZWQiCittc2dzdHIgIiIKKyJyZW5hbWXsnYAgJyVzJ+ydhCjrpbwpIOuLpOuluCDtjIzsnbwgJyVzJyjsnLwp66GcIFxuIgorIiAg642u7Ja07JSM7Jqw64qUIOyekeyXheydtOuvgOuhnCDtl4jsmqntlZjsp4Ag7JWK7Iq164uI64ukIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjIzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzczCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gd3JpdGUgZmlsZSAnJXMnIgorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgZmlsZSAnJXMnIgorbXNnc3RyICInJXMnIO2MjOydvOyXkCDsk7gg7IiYIOyXhuyKteuLiOuLpCIKKworIzogc3JjL2RpdmVydGNtZC5jOjIyNworbXNnaWQgImZpbGUgY29weSIKK21zZ3N0ciAi7YyM7J28IOuzteyCrCIKKworIzogc3JjL2RpdmVydGNtZC5jOjIzOQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVuYW1lICclcycgdG8gJyVzJyIKK21zZ3N0ciAiJyVzJyDtjIzsnbzsnZgg7J2066aE7J2EICclcyco7Jy8KeuhnCDrsJTqv4Ag7IiYIOyXhuyKteuLiOuLpCIKKworIzogc3JjL2RpdmVydGNtZC5jOjI1MgorIywgYy1mb3JtYXQKK21zZ2lkICJyZW5hbWU6IHJlbW92ZSBkdXBsaWNhdGUgb2xkIGxpbmsgJyVzJyIKK21zZ3N0ciAicmVuYW1lOiDspJHrs7XrkJwg7JiI7KCEIOunge2BrCAnJXMnIOyngOybgeuLiOuLpCIKKworIzogc3JjL2RpdmVydGNtZC5jOjI2MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIG9wZW4gc291cmNlIGZpbGUgYCUuMjUwcyciCittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBjb3BpZWQgc291cmNlIGZpbGUgJyVzJyIKK21zZ3N0ciAiYCUuMjUwcycg7IaM7IqkIO2MjOydvOydhCDsl7Qg7IiYIOyXhuyKteuLiOuLpCIKKworIzogc3JjL2RpdmVydGNtZC5jOjI4NAorIywgYy1mb3JtYXQKK21zZ2lkICJsb2NhbCBkaXZlcnNpb24gb2YgJXMiCittc2dzdHIgIiVz7J2YIOuhnOy7rCDsoITtmZgiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyODYKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9jYWwgZGl2ZXJzaW9uIG9mICVzIHRvICVzIgorbXNnc3RyICIlc+ydmCAlcyjsnLwp66GcIOuhnOy7rCDsoITtmZgiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJzaW9uIG9mICVzIGJ5ICVzIgorbXNnc3RyICIlc+ydmCDsoITtmZgsICVzIO2MqO2CpOyngCIKKworIzogc3JjL2RpdmVydGNtZC5jOjI5MworIywgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnNpb24gb2YgJXMgdG8gJXMgYnkgJXMiCittc2dzdHIgIiVz7J2YICVzKOycvCnroZwg7KCE7ZmYLCAlcyDtjKjtgqTsp4AiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozMDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiYW55IGRpdmVyc2lvbiBvZiAlcyIKK21zZ3N0ciAiJXPsnZgg66qo65OgIOyghO2ZmCIKKworIzogc3JjL2RpdmVydGNtZC5jOjMxMQorIywgYy1mb3JtYXQKK21zZ2lkICJhbnkgZGl2ZXJzaW9uIG9mICVzIHRvICVzIgorbXNnc3RyICIlc+ydmCAlcyjsnLwp66GcIOuqqOuToCDsoITtmZgiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGNyZWF0ZSBuZXcgJXMgZmlsZSIKK21zZ3N0ciAi7IOIICVzIO2MjOydvOydhCDrp4zrk6Qg7IiYIOyXhuyKteuLiOuLpCIKKworIzogc3JjL2RpdmVydGNtZC5jOjM3NSBzcmMvc3RhdGNtZC5jOjIxNSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTQwNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggZmlsZSAnJXMnIgorbXNnc3RyICInJXMnIO2MjOydvOydhCDtlIzrn6zsi5ztlaAg7IiYIOyXhuyKteuLiOuLpCIKKworIzogc3JjL2RpdmVydGNtZC5jOjM4MgorbXNnaWQgImVycm9yIHJlbW92aW5nIG9sZCBkaXZlcnNpb25zLW9sZCIKK21zZ3N0ciAi7Jik656Y65CcIGRpdmVyc2lvbnMtb2xk66W8IOygnOqxsO2VmOuKlOuNsCDsmKTrpZjqsIAg67Cc7IOd7ZaI7Iq164uI64ukIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mzg0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgbmV3IGRpdmVyc2lvbnMtb2xkIgorbXNnc3RyICLsg4jroZzsmrQgc3RhdG92ZXJyaWRlLW9sZOulvCDrp4zrk5zripTrjbAg7Jik66WY6rCAIOuwnOyDne2WiOyKteuLiOuLpCIKKworIzogc3JjL2RpdmVydGNtZC5jOjM4NgorbXNnaWQgImVycm9yIGluc3RhbGxpbmcgbmV3IGRpdmVyc2lvbnMiCittc2dzdHIgIuyDiOuhnOyatCBzdGF0b3ZlcnJpZGXrpbwg7ISk7LmY7ZWY64qU642wIOyYpOulmOqwgCDrsJzsg53tlojsirXri4jri6QiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MDYgc3JjL2RpdmVydGNtZC5jOjUwMyBzcmMvZGl2ZXJ0Y21kLmM6NjEwCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjMwIHNyYy9zdGF0Y21kLmM6MjkwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSBzaW5nbGUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMg7Ji17IWY7J2AIOyduOyImOulvCDtlZjrgpjrp4wg67Cb7Iq164uI64ukIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDA5IHNyYy9kaXZlcnRjbWQuYzo0MzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZW5hbWUgXCIlc1wiIGlzIG5vdCBhYnNvbHV0ZSIKK21zZ3N0ciAiXCIlc1wiIO2MjOydvOydmCDsnbTrpoTsnYAg7KCI64yA7KCB7J207KeAIOyViuyKteuLiOuLpCIKKworIzogc3JjL2RpdmVydGNtZC5jOjQxMSBzcmMvc3RhdGNtZC5jOjI0OQorbXNnaWQgImZpbGUgbWF5IG5vdCBjb250YWluIG5ld2xpbmVzIgorbXNnc3RyICLtjIzsnbzsl5Ag7KSE67CU6r+I7J20IOyeiOycvOuptCDslYgg65Cp64uI64ukIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDE4Cittc2dpZCAiQ2Fubm90IGRpdmVydCBkaXJlY3RvcmllcyIKK21zZ3N0ciAi65SU66CJ7YSw66as66W8IOyghO2ZmO2VoCDsiJjripQg7JeG7Iq164uI64ukIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDMzCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBkaXZlcnQgZmlsZSAnJXMnIHRvIGl0c2VsZiIKK21zZ3N0ciAiJyVzJyDtjIzsnbzsnYQg7ZW064u5IO2MjOydvOuhnCDsoITtmZjtlaAg7IiY64qUIOyXhuyKteuLiOuLpCIKKworIzogc3JjL2RpdmVydGNtZC5jOjQ1MworIywgYy1mb3JtYXQKK21zZ2lkICJMZWF2aW5nICclcydcbiIKK21zZ3N0ciAiJyVzJ+yXkOyEnCDrgpjqsJHri4jri6RcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjQ1OAorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGNsYXNoZXMgd2l0aCBgJXMnIgorbXNnc3RyICInJXMn7J2AKOuKlCkgJXPsmYAo6rO8KSDstqnrj4ztlanri4jri6QiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAiQWRkaW5nICclcydcbiIKK21zZ3N0ciAiJyVzJyDstpTqsIDtlZjripQg7KSRXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiTm8gZGl2ZXJzaW9uICclcycsIG5vbmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiJyVzJyDsoITtmZgg7YyM7J287J20IOyXhuycvOuvgOuhnCDslYTrrLTqsoPrj4Qg7JWIIOyngOyboOyKteuLiOuLpC5cbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjUyNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisibWlzbWF0Y2ggb24gZGl2ZXJ0LXRvXG4iCisiICB3aGVuIHJlbW92aW5nIGAlcydcbiIKKyIgIGZvdW5kIGAlcyciCittc2dzdHIgIiIKKyI87KCE7ZmY7ZWg7YyM7J28PuyXkCDrrLjsoJwg67Cc7IOdXG4iCisiICAnJXMnIOyngOyasOuNmCDrj4TspJFcbiIKKyIgICclcycg67Cc6rKsIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJtaXNtYXRjaCBvbiBwYWNrYWdlXG4iCisiICB3aGVuIHJlbW92aW5nIGAlcydcbiIKKyIgIGZvdW5kIGAlcyciCittc2dzdHIgIiIKKyI87Yyo7YKk7KeAPuyXkCDrrLjsoJwg67Cc7IOdXG4iCisiICAnJXMnIOyngOyasOuKlCDspJFcbiIKKyIgICclcycg67Cc6rKsIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTM5CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlbW92aW5nICclcydcbiIKK21zZ3N0ciAiJyVzJyDsp4DsmrDripQg7KSRXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo2NTcKK21zZ2lkICJwYWNrYWdlIG1heSBub3QgY29udGFpbiBuZXdsaW5lcyIKK21zZ3N0ciAi7Yyo7YKk7KeA7JeQIOykhOuwlOq/iOydtCDsnojsnLzrqbQg7JWIIOuQqeuLiOuLpCIKKworIzogc3JjL2RpdmVydGNtZC5jOjY2NgorbXNnaWQgImRpdmVydC10byBtYXkgbm90IGNvbnRhaW4gbmV3bGluZXMiCittc2dzdHIgIjzsoITtmZjtlaDtjIzsnbw+7JeQ64qUIOykhOuwlOq/iOydtCDsnojsnLzrqbQg7JWIIOuQqeuLiOuLpCIKKworIzogc3JjL2RpdmVydGRiLmM6NjQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiBkaXZlcnNpb25zIGZpbGUiCittc2dzdHIgImRpdmVyc2lvbnMg7YyM7J287J2EIOyXrOuKlOuNsCDsi6TtjKjtlojsirXri4jri6QiCisKKyM6IHNyYy9kaXZlcnRkYi5jOjcxCittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IHByZXZpb3VzIGRpdmVyc2lvbnMgZmlsZSIKK21zZ3N0ciAi7J207KCE7J2YIGRpdmVyc2lvbnMg7YyM7J287J2YIOygleuztOulvCDsnb3ripTrjbAg7Iuk7Yyo7ZaI7Iq164uI64ukIgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzo3MworbXNnaWQgImZhaWxlZCB0byBmc3RhdCBkaXZlcnNpb25zIGZpbGUiCittc2dzdHIgImRpdmVyc2lvbnMg7YyM7J287J2YIOygleuztOulvCDsnb3ripTrjbAg7Iuk7Yyo7ZaI7Iq164uI64ukIgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzoxMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmxpY3RpbmcgZGl2ZXJzaW9ucyBpbnZvbHZpbmcgYCUuMjUwcycgb3IgYCUuMjUwcyciCittc2dzdHIgIiIKKyLsoITtmZgg7YyM7J286rO8IOq0gOugqO2VtCDrsJzsg53tlZwg7Lap64+M7J20IGAlLjI1MHMnIO2YueydgCBgJS4yNTBzJ+yXkCDqtIDroKjrkJjsl4jsirXri4jri6QiCisKKyM6IHNyYy9lbnF1aXJ5LmM6NzMKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgaW4gYSBtZXNzIGR1ZSB0byBzZXJpb3VzIHByb2JsZW1zIGR1cmluZ1xuIgorImluc3RhbGxhdGlvbi4gIFRoZXkgbXVzdCBiZSByZWluc3RhbGxlZCBmb3IgdGhlbSAoYW5kIGFueSBwYWNrYWdlc1xuIgorInRoYXQgZGVwZW5kIG9uIHRoZW0pIHRvIGZ1bmN0aW9uIHByb3Blcmx5OlxuIgorbXNnc3RyICIiCisi64uk7J2MIO2MqO2CpOyngOuKlCDshKTsuZgg64+E7KSR7JeQIOuwnOyDne2VnCDsi6zqsIHtlZwg66y47KCc66GcIOyGkOyDgeuQmOyWtCDsnojsirXri4jri6QuXG4iCisi7KCc64yA66GcIOuPmeyeke2VmOugpOuptCDtjKjtgqTsp4DrpbwgKOq3uOumrOqzoCDsl6zquLDsl5Ag7J2Y7KG07ZWY64qUIO2MqO2CpOyngOuPhCkg64uk7IucXG4iCisi7ISk7LmY7ZW07JW8IO2VqeuLiOuLpC5cbiIKKworIzogc3JjL2VucXVpcnkuYzo4MAorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGhhdmUgYmVlbiB1bnBhY2tlZCBidXQgbm90IHlldCBjb25maWd1cmVkLlxuIgorIlRoZXkgbXVzdCBiZSBjb25maWd1cmVkIHVzaW5nIGRwa2cgLS1jb25maWd1cmUgb3IgdGhlIGNvbmZpZ3VyZVxuIgorIm1lbnUgb3B0aW9uIGluIGRzZWxlY3QgZm9yIHRoZW0gdG8gd29yazpcbiIKK21zZ3N0ciAiIgorIuuLpOydjCDtjKjtgqTsp4DripQg7ZKA66C47KeA66eMIOyVhOyngSDshKTsoJXrkJjsp4Ag7JWK7J2AIO2MqO2CpOyngOyeheuLiOuLpC5cbiIKKyJkcGtnIC0tY29uZmlndXJl7J2EIOyCrOyaqe2VmOyXrCDshKTsoJXtlZjqsbDrgpgg7Zi57J2AIGRzZWxlY3TrgrTsnZhcbiIKKyLshKTsoJUg66mU64m0IOyYteyFmOydhCDsnbTsmqntlZjsi63si5zsmKQ6XG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6ODcKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgb25seSBoYWxmIGNvbmZpZ3VyZWQsIHByb2JhYmx5IGR1ZSB0byBwcm9ibGVtc1xuIgorImNvbmZpZ3VyaW5nIHRoZW0gdGhlIGZpcnN0IHRpbWUuICBUaGUgY29uZmlndXJhdGlvbiBzaG91bGQgYmUgcmV0cmllZCB1c2luZ1xuIgorImRwa2cgLS1jb25maWd1cmUgPHBhY2thZ2U+IG9yIHRoZSBjb25maWd1cmUgbWVudSBvcHRpb24gaW4gZHNlbGVjdDpcbiIKK21zZ3N0ciAiIgorIuuLpOydjCDtjKjtgqTsp4DripQg7J2867aA66eMIOyEpOygleuQmOyXiOyKteuLiOuLpC4g7JWE66eI64+EIOyymOydjCDshKTsoJXtlaAg65WMIOusuOygnOqwgFxuIgorIuuwnOyDne2WiOydhCDqsoPsnoXri4jri6QuIGRwa2cgLS1jb25maWd1cmUgPO2MqO2CpOyngD7rpbwg7J207Jqp7ZW0IOuLpOyLnCDshKTsoJXsnYRcbiIKKyLsi5zrj4TtlZjqsbDrgpggZHNlbGVjdOyXkOyEnCDshKTsoJUg66mU64m0IOyYteyFmOydhCDsgqzsmqntlbTslbwg7ZWp64uI64ukLlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjk0Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgYXJlIG9ubHkgaGFsZiBpbnN0YWxsZWQsIGR1ZSB0byBwcm9ibGVtcyBkdXJpbmdcbiIKKyJpbnN0YWxsYXRpb24uICBUaGUgaW5zdGFsbGF0aW9uIGNhbiBwcm9iYWJseSBiZSBjb21wbGV0ZWQgYnkgcmV0cnlpbmcgaXQ7XG4iCisidGhlIHBhY2thZ2VzIGNhbiBiZSByZW1vdmVkIHVzaW5nIGRzZWxlY3Qgb3IgZHBrZyAtLXJlbW92ZTpcbiIKK21zZ3N0ciAiIgorIuuLpOydjCDtjKjtgqTsp4DripQg7J2867aA66eMIOyEpOy5mOuQmOyXiOyKteuLiOuLpC4g7JWE66eI64+EIOyEpOy5mO2VoCDrlYwg66y47KCc6rCAXG4iCisi67Cc7IOd7ZWY7JiA7J2EIOqyg+yeheuLiOuLpC4g7ISk7LmY66W8IOyerOyLnOuPhO2VmOuptCDslYTrp4jrj4Qg7JmE66OM65CgIOqyg+yeheuLiOuLpC5cbiIKKyJkc2VsZWN064KYIGRwa2cgLS1yZW1vdGXrpbwg7IKs7Jqp7ZWY7JesIO2MqO2CpOyngOulvCDsp4Dsmrgg7IiY64+EIOyeiOyKteuLiOuLpDpcbiIKKworIzogc3JjL2VucXVpcnkuYzoxMDEKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgYXdhaXRpbmcgcHJvY2Vzc2luZyBvZiB0cmlnZ2VycyB0aGF0IHRoZXlcbiIKKyJoYXZlIGFjdGl2YXRlZCBpbiBvdGhlciBwYWNrYWdlcy4gIFRoaXMgcHJvY2Vzc2luZyBjYW4gYmUgcmVxdWVzdGVkIHVzaW5nXG4iCisiZHNlbGVjdCBvciBkcGtnIC0tY29uZmlndXJlIC0tcGVuZGluZyAob3IgZHBrZyAtLXRyaWdnZXJzLW9ubHkpOlxuIgorbXNnc3RyICIiCisi64uk7J2MIO2MqO2CpOyngOuKlCDri6Trpbgg7Yyo7YKk7KeA7JeQ7IScIO2ZnOyEse2ZlO2VnCDtirjrpqzqsbAg7LKY66as66W8IOq4sOuLpOumrOqzoCDsnojsirXri4jri6QuIFxuIgorIu2KuOumrOqxsCDsspjrpqzripQgZHNlbGVjdCDtmLnsnYAgZHBrZyAtLWNvbmZpZ3VyZSAtLXBlbmRpbmcg66qF66C57Jy866GcIOyymOumrO2VoFxuIgorIuyImCDsnojsirXri4jri6QuICjtmLnsnYAgZHBrZyAtLXRyaWdnZXItb25seSk6XG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTA4Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgaGF2ZSBiZWVuIHRyaWdnZXJlZCwgYnV0IHRoZSB0cmlnZ2VyIHByb2Nlc3NpbmdcbiIKKyJoYXMgbm90IHlldCBiZWVuIGRvbmUuICBUcmlnZ2VyIHByb2Nlc3NpbmcgY2FuIGJlIHJlcXVlc3RlZCB1c2luZ1xuIgorImRzZWxlY3Qgb3IgZHBrZyAtLWNvbmZpZ3VyZSAtLXBlbmRpbmcgKG9yIGRwa2cgLS10cmlnZ2Vycy1vbmx5KTpcbiIKK21zZ3N0ciAiIgorIuuLpOydjCDtjKjtgqTsp4Dsl5Ag7Yq466as6rGw6rCAIOqxuOugpCDsnojsp4Drp4wsIO2KuOumrOqxsCDsspjrpqzrpbwg7JWE7KeBIO2VmOyngCDslYrslZjsirXri4jri6QuXG4iCisi7Yq466as6rGwIOyymOumrOuKlCBkc2VsZWN0IO2YueydgCBkcGtnIC0tY29uZmlndXJlIC0tcGVuZGluZyDrqoXroLnsnLzroZwg7LKY66as7ZWgXG4iCisi7IiYIOyeiOyKteuLiOuLpC4gKO2YueydgCBkcGtnIC0tdHJpZ2dlci1vbmx5KTpcbiIKKworIzogc3JjL2VucXVpcnkuYzoxMzcgc3JjL2VucXVpcnkuYzoyMTEgc3JjL2VucXVpcnkuYzoyOTIgc3JjL2VucXVpcnkuYzozNzMKKyM6IHNyYy9lbnF1aXJ5LmM6NDYwIHNyYy9zZWxlY3QuYzo5OCBzcmMvc2VsZWN0LmM6MTY0IHNyYy90cmlnY21kLmM6MTk5CisjOiBzcmMvdXBkYXRlLmM6NDggc3JjL3VwZGF0ZS5jOjExMyBkcGtnLXNwbGl0L3F1ZXVlLmM6MjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgbm8gYXJndW1lbnRzIgorbXNnc3RyICItLSVzIOyYteyFmOydgCDsnbjsiJjrpbwg67Cb7KeAIOyViuyKteuLiOuLpCIKKworIzogc3JjL2VucXVpcnkuYzoxNTIKK21zZ2lkICIiCisiQW5vdGhlciBwcm9jZXNzIGhhcyBsb2NrZWQgdGhlIGRhdGFiYXNlIGZvciB3cml0aW5nLCBhbmQgbWlnaHQgY3VycmVudGx5IGJlXG4iCisibW9kaWZ5aW5nIGl0LCBzb21lIG9mIHRoZSBmb2xsb3dpbmcgcHJvYmxlbXMgbWlnaHQganVzdCBiZSBkdWUgdG8gdGhhdC5cbiIKK21zZ3N0ciAiIgorIuuLpOuluCDtlITroZzshLjsiqTqsIAg642w7J207YSw67Kg7J207Iqk66W8IOyTsOq4sCDsmqnrj4TroZwg7J6g6rac7Iq164uI64ukLiDtmITsnqwg642w7J207YSw67Kg7J207Iqk66W8XG4iCisi7IiY7KCV7ZWY6rOgIOyeiOydhCDsiJjrj4Qg7J6I7Iq164uI64ukLiDri6TsnYwg66y47KCc64qUIOq3uOuemOyEnCDrsJzsg53tlojsnYQg7IiY64+EIOyeiOyKteuLiOuLpC5cbiIKKworIzogc3JjL2VucXVpcnkuYzoxOTEKKyMsIGZ1enp5CisjfCBtc2dpZCAiPHVua25vd24+IgorbXNnY3R4dCAic2VjdGlvbiIKK21zZ2lkICI8dW5rbm93bj4iCittc2dzdHIgIjzslYzsiJjsl4bsnYw+IgorCisjOiBzcmMvZW5xdWlyeS5jOjI1MQorIywgYy1mb3JtYXQKK21zZ2lkICIgJWQgaW4gJXM6ICIKK21zZ3N0ciAiJTIkcyDslYjsl5AgJTEkZDogIgorCisjOiBzcmMvZW5xdWlyeS5jOjI2NgorIywgYy1mb3JtYXQKK21zZ2lkICIgJWQgcGFja2FnZSwgZnJvbSB0aGUgZm9sbG93aW5nIHNlY3Rpb246IgorbXNnaWRfcGx1cmFsICIgJWQgcGFja2FnZXMsIGZyb20gdGhlIGZvbGxvd2luZyBzZWN0aW9uczoiCittc2dzdHJbMF0gIuuLpOydjCDshLnshZjsl5DshJwg7Yyo7YKk7KeAICVk6rCcOiIKKworIzogc3JjL2VucXVpcnkuYzozMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlZlcnNpb24gb2YgZHBrZyB3aXRoIHdvcmtpbmcgJXMgc3VwcG9ydCBub3QgeWV0IGNvbmZpZ3VyZWQuXG4iCisiIFBsZWFzZSB1c2UgJ2Rwa2cgLS1jb25maWd1cmUgZHBrZycsIGFuZCB0aGVuIHRyeSBhZ2Fpbi5cbiIKK21zZ3N0ciAiIgorIiVzIOq4sOuKpeydhCDsp4Dsm5DtlZjripQgZHBrZyDrsoTsoITsnbQg7JWE7KeBIOyEpOygleuQmOyngCDslYrslZjsirXri4jri6QuXG4iCisiIGBkcGtnIC0tY29uZmlndXJlIGRwa2cn66W8IOyCrOyaqe2VmOqzoCDri6Tsi5wg7Iuc64+E7ZW0IOuztOyLreyLnOyYpC5cbiIKKworIzogc3JjL2VucXVpcnkuYzozMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZyBub3QgcmVjb3JkZWQgYXMgaW5zdGFsbGVkLCBjYW5ub3QgY2hlY2sgZm9yICVzIHN1cHBvcnQhXG4iCittc2dzdHIgIiIKKyJkcGtn6rCAIOyEpOy5mOuQmOyngCDslYrsnYAg6rKD7Jy866GcIOuCmOyYteuLiOuLpC4gJXMg6riw64qlIOyngOybkOydhCDqsoDsgqztlaAg7IiYIOyXhuyKteuLiOuLpCFcbiIKKworIzogc3JjL2VucXVpcnkuYzozMjEKK21zZ2lkICJQcmUtRGVwZW5kcyBmaWVsZCIKK21zZ3N0ciAiUHJlLURlcGVuZHMg7ZWE65OcIgorCisjOiBzcmMvZW5xdWlyeS5jOjMyOQorbXNnaWQgImVwb2NoIgorbXNnc3RyICJlcG9jaCIKKworIzogc3JjL2VucXVpcnkuYzozMzcKK21zZ2lkICJsb25nIGZpbGVuYW1lcyIKK21zZ3N0ciAi6ri0IO2MjOydvCDsnbTrpoQiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzQ2Cittc2dpZCAibXVsdGlwbGUgQ29uZmxpY3RzIGFuZCBSZXBsYWNlcyIKK21zZ3N0ciAi7Jes65+sIOy2qeuPjCDrsI8g64yA7LK0IgorCisjOiBzcmMvZW5xdWlyeS5jOjQzNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogY2Fubm90IHNlZSBob3cgdG8gc2F0aXNmeSBwcmUtZGVwZW5kZW5jeTpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorImRwa2c6IOuvuOumrCDsnZjsobTsnYQg66eM7KGx7Iuc7YKsIOuwqeuyleydhCDslYwg7IiYIOyXhuyKteuLiOuLpDpcbiIKKyIgJXNcbiIKKworIzogc3JjL2VucXVpcnkuYzo0MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHNhdGlzZnkgcHJlLWRlcGVuZGVuY2llcyBmb3IgJS4yNTBzICh3YW50ZWQgZHVlIHRvICUuMjUwcykiCittc2dzdHIgIiUuMjUwc+yXkCDrjIDtlZwg66+466asIOydmOyhtOydhCDrp4zsobHsi5ztgqwg7IiYIOyXhuyKteuLiOuLpCAoJS4yNTBzIOuVjOusuOyXkCDtlYTsmpQpIgorCisjOiBzcmMvZW5xdWlyeS5jOjQ3MgorIywgYy1mb3JtYXQKK21zZ2lkICJvYnNvbGV0ZSBvcHRpb24gJy0tJXMnLCBwbGVhc2UgdXNlICctLSVzJyBpbnN0ZWFkLiIKK21zZ3N0ciAiJy0tJXMnIOyYteyFmOydgCDrjZQg7J207IOBIOyCrOyaqe2VmOyngCDslYrsirXri4jri6QuICctLSVzJyDsmLXshZjsnYQg7IKs7Jqp7ZWY7Iut7Iuc7JikLiIKKworIzogc3JjL2VucXVpcnkuYzo1MTkKK21zZ2lkICIiCisiLS1jb21wYXJlLXZlcnNpb25zIHRha2VzIHRocmVlIGFyZ3VtZW50czogPHZlcnNpb24+IDxyZWxhdGlvbj4gPHZlcnNpb24+IgorbXNnc3RyICItLWNvbXBhcmUtdmVyc2lvbnMg7Ji17IWY7J2AIOyduOyImCDshLgg6rCc66W8IOuwm+yKteuLiOuLpDogPOuyhOyghD4gPOq0gOqzhD4gPOuyhOyghD4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6NTI0Cittc2dpZCAiLS1jb21wYXJlLXZlcnNpb25zIGJhZCByZWxhdGlvbiIKK21zZ3N0ciAiLS1jb21wYXJlLXZlcnNpb25zIOyYteyFmOyXkCDqtIDqs4TqsIAg7J6Y66q765CY7JeI7Iq164uI64ukIgorCisjOiBzcmMvZW5xdWlyeS5jOjUyOSBzcmMvZW5xdWlyeS5jOjUzMSBzcmMvZW5xdWlyeS5jOjU0MCBzcmMvZW5xdWlyeS5jOjU0MgorIywgYy1mb3JtYXQKK21zZ2lkICJ2ZXJzaW9uICclcycgaGFzIGJhZCBzeW50YXg6ICVzIgorbXNnc3RyICLrsoTsoIQgJyVzJ+ydmCDtmJXsi53snbQg7J6Y66q765CY7JeI7Iq164uI64ukOiAlcyIKKworIzogc3JjL2Vycm9ycy5jOjYwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogZXJyb3IgcHJvY2Vzc2luZyAlcyAoLS0lcyk6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKyIlczogJXPsnYQo66W8KSDsspjrpqztlZjripTrjbAg7Jik66WY6rCAIOuwnOyDne2WiOyKteuLiOuLpCAoLS0lcyk6XG4iCisiICVzXG4iCisKKyM6IHNyYy9lcnJvcnMuYzo2OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgImRwa2c6IGZhaWxlZCB0byBhbGxvY2F0ZSBtZW1vcnkgZm9yIG5ldyBlbnRyeSBpbiBsaXN0IG9mIGZhaWxlZCBwYWNrYWdlcy4iCittc2dpZCAiIgorIiVzOiBmYWlsZWQgdG8gYWxsb2NhdGUgbWVtb3J5IGZvciBuZXcgZW50cnkgaW4gbGlzdCBvZiBmYWlsZWQgcGFja2FnZXM6ICVzIgorbXNnc3RyICIiCisiZHBrZzog7Iuk7Yyo7ZWcIO2MqO2CpOyngOydmCDrqqnroZ3snZgg7IOIIOyXlO2KuOumrOulvCDsnITtlZwg66mU66qo66asIO2VoOuLueydtCDsi6TtjKjtlojsirXri4jri6QuIgorCisjOiBzcmMvZXJyb3JzLmM6NzkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImRwa2c6IHRvbyBtYW55IGVycm9ycywgc3RvcHBpbmdcbiIKK21zZ2lkICIlczogdG9vIG1hbnkgZXJyb3JzLCBzdG9wcGluZ1xuIgorbXNnc3RyICJkcGtnOiDsmKTrpZjqsIAg64SI66y0IOunjuyVhCDspJHri6jtlanri4jri6RcbiIKKworIzogc3JjL2Vycm9ycy5jOjg3Cittc2dpZCAiRXJyb3JzIHdlcmUgZW5jb3VudGVyZWQgd2hpbGUgcHJvY2Vzc2luZzpcbiIKK21zZ3N0ciAi7LKY66as7ZWY64qU642wIOyYpOulmOqwgCDrsJzsg53tlojsirXri4jri6Q6XG4iCisKKyM6IHNyYy9lcnJvcnMuYzo5NAorbXNnaWQgIlByb2Nlc3Npbmcgd2FzIGhhbHRlZCBiZWNhdXNlIHRoZXJlIHdlcmUgdG9vIG1hbnkgZXJyb3JzLlxuIgorbXNnc3RyICLsmKTrpZjqsIAg64SI66y0IOunjuyVhCDsspjrpqzrpbwg7KSR64uo7ZaI7Iq164uI64ukLlxuIgorCisjOiBzcmMvZXJyb3JzLmM6MTA1CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgJXMgd2FzIG9uIGhvbGQsIHByb2Nlc3NpbmcgaXQgYW55d2F5IGFzIHlvdSByZXF1ZXN0ZWRcbiIKK21zZ3N0ciAiJXMg7Yyo7YKk7KeA64qUIOqzoOyglSDsg4Htg5zsmIDsp4Drp4wsIOyalOyyre2VnCDrjIDroZwg7LKY66as7ZWp64uI64ukLlxuIgorCisjOiBzcmMvZXJyb3JzLmM6MTA5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJQYWNrYWdlICVzIGlzIG9uIGhvbGQsIG5vdCB0b3VjaGluZyBpdC4gIFVzZSAtLWZvcmNlLWhvbGQgdG8gb3ZlcnJpZGUuXG4iCittc2dzdHIgIiIKKyIlcyDtjKjtgqTsp4DripQg6rOg7KCVIOyDge2DnOuhnCDqsbTrk5zrpqzsp4Ag7JWK7Iq164uI64ukLiAg66y07Iuc7ZWY66Ck66m0IC0tZm9yY2UtaG9sZCDsmLXshZjsnYQg7IKsIgorIuyaqe2VmOyLreyLnOyYpC5cbiIKKworIzogc3JjL2Vycm9ycy5jOjExOQorbXNnaWQgIm92ZXJyaWRpbmcgcHJvYmxlbSBiZWNhdXNlIC0tZm9yY2UgZW5hYmxlZDoiCittc2dzdHIgIi0tZm9yY2Ug7Ji17IWY7J20IOy8nOyguCDsnojsnLzrr4DroZwg66y47KCc66W8IOustOyLnO2VqeuLiOuLpDoiCisKKyM6IHNyYy9maWxlc2RiLmM6MzA3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSBgJS4yNTBzJyIKK21zZ3N0ciAiYCUuMjUwcycg7Yyo7YKk7KeA7JeQIOuMgO2VnCDtjIzsnbwg66qp66Gd7J2EIOyXtCDsiJgg7JeG7Iq164uI64ukIgorCisjOiBzcmMvZmlsZXNkYi5jOjMxMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlIGAlLjI1MHMnIG1pc3NpbmcsIGFzc3VtaW5nIHBhY2thZ2UgaGFzIG5vIGZpbGVzICIKKyJjdXJyZW50bHkgaW5zdGFsbGVkLiIKK21zZ3N0ciAiIgorImAlLjI1MHMnIO2MqO2CpOyngOydmCDtjIzsnbwg66qp66GdIO2MjOydvOydtCDsl4bsirXri4jri6QsIO2MqO2CpOyngOyXkCDshKTsuZjrkJwg7YyM7J287J20IO2VmOuCmOuPhCDsl4YiCisi64uk6rOgIOqwgOygle2VqeuLiOuLpC4iCisKKyM6IHNyYy9maWxlc2RiLmM6MzIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAnJS4yNTBzJyIKK21zZ3N0ciAiJyUuMjUwcycg7Yyo7YKk7KeA7J2YIO2MjOydvCDrqqnroZ0g7YyM7J287J2YIOygleuztOulvCDsnb3snYQg7IiYIOyXhuyKteuLiOuLpCIKKworIzogc3JjL2ZpbGVzZGIuYzozMzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGVzIGxpc3QgZm9yIHBhY2thZ2UgYCUuMjUwcyciCittc2dpZCAicmVhZGluZyBmaWxlcyBsaXN0IGZvciBwYWNrYWdlICclLjI1MHMnIgorbXNnc3RyICJgJS4yNTBzJyDtjKjtgqTsp4DsnZgg7YyM7J28IOuqqeuhnSIKKworIzogc3JjL2ZpbGVzZGIuYzozMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICclLjI1MHMnIGlzIG1pc3NpbmcgZmluYWwgbmV3bGluZSIKK21zZ3N0ciAiJyUuMjUwcycg7Yyo7YKk7KeA7J2YIO2MjOydvCDrqqnroZ0g7YyM7J287JeQIOuniOyngOuniSDspIQg67CU6r+I7J20IOu5oOyhjOyKteuLiOuLpCIKKworIzogc3JjL2ZpbGVzZGIuYzozNDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlIGAlLjI1MHMnIGNvbnRhaW5zIGVtcHR5IGZpbGVuYW1lIgorbXNnc3RyICJgJS4yNTBzJyDtjKjtgqTsp4DsnZgg7YyM7J28IOuqqeuhneyXkCDruYgg7YyM7J28IOydtOumhOydtCDsnojsirXri4jri6QiCisKKyM6IHNyYy9maWxlc2RiLmM6MzUyCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlIGAlLjI1MHMnIgorbXNnc3RyICJgJS4yNTBzJyDtjKjtgqTsp4DsnZgg7YyM7J28IOuqqeuhnSDtjIzsnbzsnYQg64ur64qU642wIOyYpOulmOqwgCDrsJzsg53tlojsirXri4jri6QuIgorCisjOiBzcmMvZmlsZXNkYi5jOjQ2MgorbXNnaWQgIihSZWFkaW5nIGRhdGFiYXNlIC4uLiAiCittc2dzdHIgIijrjbDsnbTthLDrsqDsnbTsiqQg7J2964qU7KSRIC4uLiIKKworIzogc3JjL2ZpbGVzZGIuYzo0ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJWQgZmlsZSBvciBkaXJlY3RvcnkgY3VycmVudGx5IGluc3RhbGxlZC4pXG4iCittc2dpZF9wbHVyYWwgIiVkIGZpbGVzIGFuZCBkaXJlY3RvcmllcyBjdXJyZW50bHkgaW5zdGFsbGVkLilcbiIKK21zZ3N0clswXSAi7ZiE7J6sICVk6rCc7J2YIO2MjOydvOqzvCDrlJTroInthLDrpqzqsIAg7ISk7LmY65CY7Ja0IOyeiOyKteuLiOuLpC4pXG4iCisKKyM6IHNyYy9maWxlc2RiLmM6NTE2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIiVzIO2MqO2CpOyngOydmCDsl4XrjbDsnbTtirjtlZwg7YyM7J28IOuqqeuhnSDtjIzsnbzsnYQg66eM65OkIOyImCDsl4bsirXri4jri6QiCisKKyM6IHNyYy9maWxlc2RiLmM6NTI2CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB3cml0ZSB0byB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAiJXMg7Yyo7YKk7KeA7J2YIOyXheuNsOydtO2KuO2VnCDtjIzsnbwg66qp66GdIO2MjOydvOydhCDsk7gg7IiYIOyXhuyKteuLiOuLpCIKKworIzogc3JjL2ZpbGVzZGIuYzo1MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZsdXNoIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICIlcyDtjKjtgqTsp4DsnZgg7JeF642w7J207Yq47ZWcIO2MjOydvCDrqqnroZ0g7YyM7J287J2EIO2UjOufrOyLnO2VoCDsiJgg7JeG7Iq164uI64ukIgorCisjOiBzcmMvZmlsZXNkYi5jOjUzMAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gc3luYyB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAiJXMg7Yyo7YKk7KeA7J2YIOyXheuNsOydtO2KuO2VnCDtjIzsnbwg66qp66GdIO2MjOydvOydhCDrj5nquLDtmZTtlaAg7IiYIOyXhuyKteuLiOuLpCIKKworIzogc3JjL2ZpbGVzZGIuYzo1MzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNsb3NlIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICIlcyDtjKjtgqTsp4DsnZgg7JeF642w7J207Yq47ZWcIO2MjOydvCDrqqnroZ0g7YyM7J287J2EIOuLq+ydhCDsiJgg7JeG7Iq164uI64ukIgorCisjOiBzcmMvZmlsZXNkYi5jOjUzNQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gaW5zdGFsbCB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAiJXMg7Yyo7YKk7KeA7J2YIOyXheuNsOydtO2KuO2VnCDtjIzsnbwg66qp66GdIO2MjOydvOydhCDshKTsuZjtlaAg7IiYIOyXhuyKteuLiOuLpCIKKworIzogc3JjL2hlbHAuYzo0OAorbXNnaWQgIm5vdCBpbnN0YWxsZWQiCittc2dzdHIgIuyEpOy5mO2VmOyngCDslYrslZjsirXri4jri6QiCisKKyM6IHNyYy9oZWxwLmM6NDkKK21zZ2lkICJub3QgaW5zdGFsbGVkIGJ1dCBjb25maWdzIHJlbWFpbiIKK21zZ3N0ciAi7ISk7LmY7ZWY7KeAIOyViuyVmOyngOunjCDshKTsoJUg7YyM7J287J20IOuCqOyVhCDsnojsirXri4jri6QiCisKKyM6IHNyYy9oZWxwLmM6NTAKK21zZ2lkICJicm9rZW4gZHVlIHRvIGZhaWxlZCByZW1vdmFsIG9yIGluc3RhbGxhdGlvbiIKK21zZ3N0ciAi7KeA7Jqw6riwIO2YueydgCDshKTsuZgg7Iuk7Yyo66GcIOunneqwgOynhCDsg4Htg5zsnoXri4jri6QiCisKKyM6IHNyYy9oZWxwLmM6NTEKK21zZ2lkICJ1bnBhY2tlZCBidXQgbm90IGNvbmZpZ3VyZWQiCittc2dzdHIgIu2SgOyXiOyngOunjCDshKTsoJXtlZjsp4Ag7JWK7JWY7Iq164uI64ukIgorCisjOiBzcmMvaGVscC5jOjUyCittc2dpZCAiYnJva2VuIGR1ZSB0byBwb3N0aW5zdCBmYWlsdXJlIgorbXNnc3RyICJwb3N0aW5zdCDsi6TtjKjroZwg66ed6rCA7KeEIOyDge2DnOyeheuLiOuLpCIKKworIzogc3JjL2hlbHAuYzo1MworbXNnaWQgImF3YWl0aW5nIHRyaWdnZXIgcHJvY2Vzc2luZyBieSBhbm90aGVyIHBhY2thZ2UiCittc2dzdHIgIuuLpOuluCDtjKjtgqTsp4Dsl5Ag7J2Y7ZWcIO2KuOumrOqxsCDsspjrpqzrpbwg6riw64uk66as64qUIOykkeyeheuLiOuLpCIKKworIzogc3JjL2hlbHAuYzo1NAorbXNnaWQgInRyaWdnZXJlZCIKK21zZ3N0ciAi7Yq466as6rGwIgorCisjOiBzcmMvaGVscC5jOjU1Cittc2dpZCAiaW5zdGFsbGVkIgorbXNnc3RyICLshKTsuZjtlagiCisKKyM6IHNyYy9oZWxwLmM6MTA3CisjLCBmdXp6eQorI3wgbXNnaWQgImVycm9yOiBQQVRIIGlzIG5vdCBzZXQuIgorbXNnaWQgIlBBVEggaXMgbm90IHNldC4iCittc2dzdHIgIuyYpOulmDogUEFUSOulvCDshKTsoJXtlZjsp4Ag7JWK7JWY7Iq164uI64ukLiIKKworIzogc3JjL2hlbHAuYzoxMjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS4iCittc2dzdHIgIiclcycg7ZSE66Gc6re4656o7J20IFBBVEjsl5Ag7JeG6rGw64KYIOyLpO2WiSDtjIzsnbzsnbQg7JWE64uZ64uI64ukLiIKKworIzogc3JjL2hlbHAuYzoxMzgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiclcycgbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuIgorbXNnaWQgIiIKKyIlZCBleHBlY3RlZCBwcm9ncmFtIG5vdCBmb3VuZCBpbiBQQVRIIG9yIG5vdCBleGVjdXRhYmxlLlxuIgorIiVzIgorbXNnaWRfcGx1cmFsICIiCisiJWQgZXhwZWN0ZWQgcHJvZ3JhbXMgbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuXG4iCisiJXMiCittc2dzdHJbMF0gIiclcycg7ZSE66Gc6re4656o7J20IFBBVEjsl5Ag7JeG6rGw64KYIOyLpO2WiSDtjIzsnbzsnbQg7JWE64uZ64uI64ukLiIKKworIzogc3JjL2hlbHAuYzoxNDEKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIiVkIGV4cGVjdGVkIHByb2dyYW0gbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuXG4iCisjfCAiTkI6IHJvb3QncyBQQVRIIHNob3VsZCB1c3VhbGx5IGNvbnRhaW4gL3Vzci9sb2NhbC9zYmluLCAvdXNyL3NiaW4gYW5kIC8iCisjfCAic2Jpbi4iCisjfCBtc2dpZF9wbHVyYWwgIiIKKyN8ICIlZCBleHBlY3RlZCBwcm9ncmFtcyBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS5cbiIKKyN8ICJOQjogcm9vdCdzIFBBVEggc2hvdWxkIHVzdWFsbHkgY29udGFpbiAvdXNyL2xvY2FsL3NiaW4sIC91c3Ivc2JpbiBhbmQgLyIKKyN8ICJzYmluLiIKK21zZ2lkICIiCisiTm90ZTogcm9vdCdzIFBBVEggc2hvdWxkIHVzdWFsbHkgY29udGFpbiAvdXNyL2xvY2FsL3NiaW4sIC91c3Ivc2JpbiBhbmQgLyIKKyJzYmluLiIKK21zZ3N0ciAiIgorIiVk6rCc7J2YIO2VhOyalO2VnCDtlITroZzqt7jrnqjsnbQgUEFUSOyXkCDsl4bqsbDrgpgg7Iuk7ZaJIO2MjOydvOydtCDslYTri5nri4jri6QuXG4iCisicm9vdOydmCBQQVRI7JeQ64qUIOuztO2GtSAvdXNyL2xvY2FsL3NiaW4sIC91c3Ivc2JpbiwgL3NiaW7snbQg65Ok7Ja0IOyeiOyWtOyVvCDtlanri4jri6QuIgorCisjOiBzcmMvaGVscC5jOjE4OAorbXNnaWQgImFkbWluZGlyIG11c3QgYmUgaW5zaWRlIGluc3RkaXIgZm9yIGRwa2cgdG8gd29yayBwcm9wZXJseSIKK21zZ3N0ciAiIgorCisjOiBzcmMvaGVscC5jOjE5MCBzcmMvbWFpbi5jOjc0NworIywgZnV6enkKKyN8IG1zZ2lkICJ1bmFibGUgdG8gc2V0ZW52IGZvciBtYWludGFpbmVyIHNjcmlwdCIKK21zZ2lkICJ1bmFibGUgdG8gc2V0ZW52IGZvciBzdWJwcm9jZXNzZXMiCittc2dzdHIgIuuplOyduO2FjOydtOuEiCDsiqTtgazrpr3tirjsl5DshJwg7ZmY6rK9IOuzgOyImOulvCDshKTsoJXtlaAg7IiYIOyXhuyKteuLiOuLpCIKKworIzogc3JjL2hlbHAuYzoxOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNocm9vdCB0byBgJS4yNTBzJyIKK21zZ3N0ciAiYCUuMjUwcyco7Jy8KeuhnCBjaHJvb3TqsIAg7Iuk7Yyo7ZaI7Iq164uI64ukIgorCisjOiBzcmMvaGVscC5jOjE5NCBkcGtnLWRlYi9idWlsZC5jOjQ1NSBkcGtnLWRlYi9idWlsZC5jOjQ1NworIzogZHBrZy1kZWIvYnVpbGQuYzo1MzYgZHBrZy1kZWIvYnVpbGQuYzo1NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIGAlLjI1NXMnIgorbXNnc3RyICJgJS4yNTVzJyDrlJTroInthLDrpqzroZwg7J2064+Z7ZWY64qU642wIOyLpO2MqO2WiOyKteuLiOuLpCIKKworIzogc3JjL2hlbHAuYzoyNTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNldCBleGVjdXRlIHBlcm1pc3Npb25zIG9uIGAlLjI1MHMnIgorbXNnc3RyICJgJS4yNTBzJ+yXkCDsi6Ttlokg6raM7ZWc7J2EIOyEpOygle2VoCDsiJgg7JeG7Iq164uI64ukIgorCisjOiBzcmMvaGVscC5jOjI3NgorbXNnaWQgInVuYWJsZSB0byBzZXRlbnYgZm9yIG1haW50YWluZXIgc2NyaXB0IgorbXNnc3RyICLrqZTsnbjthYzsnbTrhIgg7Iqk7YGs66a97Yq47JeQ7IScIO2ZmOqyvSDrs4DsiJjrpbwg7ISk7KCV7ZWgIOyImCDsl4bsirXri4jri6QiCisKKyM6IHNyYy9oZWxwLmM6MzAwCisjLCBjLWZvcm1hdAorbXNnaWQgImluc3RhbGxlZCAlcyBzY3JpcHQiCittc2dzdHIgIuyEpOy5mO2VnCAlcyDsiqTtgazrpr3tirgiCisKKyMgRklYTUU6IGJhZCBtc2dpZAorIzogc3JjL2hlbHAuYzozMTMgc3JjL2hlbHAuYzozODIgc3JjL2hlbHAuYzo0NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgJXMgYCUuMjUwcyciCittc2dzdHIgIiVzIGAlLjI1MHMn7J2YIOygleuztOulvCDsnb3snYQg7IiYIOyXhuyKteuLiOuLpCIKKworIzogc3JjL2hlbHAuYzozNjggc3JjL2hlbHAuYzo0MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAibmV3ICVzIHNjcmlwdCIKK21zZ3N0ciAi7IOI66Gc7Jq0ICVzIOyKpO2BrOumve2KuCIKKworIzogc3JjL2hlbHAuYzo0MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAib2xkICVzIHNjcmlwdCIKK21zZ3N0ciAi6rO86rGw7J2YICVzIOyKpO2BrOumve2KuCIKKworIzogc3JjL2hlbHAuYzo0MTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgJXMgJyUuMjUwcyc6ICVzIgorbXNnc3RyICIlcyAnJS4yNTBzJ+ydmCDsoJXrs7Trpbwg7J297J2EIOyImCDsl4bsirXri4jri6Q6ICVzIgorCisjOiBzcmMvaGVscC5jOjQyNQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnIC0gdHJ5aW5nIHNjcmlwdCBmcm9tIHRoZSBuZXcgcGFja2FnZSBpbnN0ZWFkIC4uLlxuIgorbXNnc3RyICJkcGtnIC0g64yA7Iug7JeQIOyDiCDtjKjtgqTsp4DsnZgg7Iqk7YGs66a97Yq466W8IOyLnOuPhO2VqeuLiOuLpCAuLi5cbiIKKworIzogc3JjL2hlbHAuYzo0MzkKK21zZ2lkICJ0aGVyZSBpcyBubyBzY3JpcHQgaW4gdGhlIG5ldyB2ZXJzaW9uIG9mIHRoZSBwYWNrYWdlIC0gZ2l2aW5nIHVwIgorbXNnc3RyICLtjKjtgqTsp4Ag7IOIIOuyhOyghOyXkCDsiqTtgazrpr3tirjqsIAg7JeG7Iq164uI64ukIC0g7Y+s6riw7ZWp64uI64ukIgorCisjOiBzcmMvaGVscC5jOjQ0NQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiAuLi4gaXQgbG9va3MgbGlrZSB0aGF0IHdlbnQgT0suXG4iCittc2dzdHIgImRwa2c6IC4uLiDrrLjsoJwg7JeG64qUIOqyg+yymOufvCDrs7TsnoXri4jri6QuXG4iCisKKyM6IHNyYy9oZWxwLmM6NjE2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWN1cmVseSByZW1vdmUgJyUuMjU1cyciCittc2dzdHIgIiclLjI1NXMn7J2EKOulvCkg7JWI7KCE7ZWY6rKMIOygnOqxsO2VoCDsiJgg7JeG7Iq164uI64ukIgorCisjOiBzcmMvaGVscC5jOjYyMSBkcGtnLWRlYi9pbmZvLmM6NjUgZHBrZy1kZWIvaW5mby5jOjY3Cittc2dpZCAicm0gY29tbWFuZCBmb3IgY2xlYW51cCIKK21zZ3N0ciAiIgorCisjOiBzcmMvaW5mb2RiLmM6NTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoZWNrIGV4aXN0ZW5jZSBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiYCUuMjUwcycg7YyM7J287J20IOyeiOuKlCDsp4Ag7Jes67aA66W8IOqygOyCrO2VoCDsiJgg7JeG7Iq164uI64ukIgorCisjOiBzcmMvaW5mb2RiLmM6NzAKK21zZ2lkICJjYW5ub3QgcmVhZCBpbmZvIGRpcmVjdG9yeSIKK21zZ3N0ciAi7KCV67O0IOuUlOugie2EsOumrOulvCDsnb3snYQg7IiYIOyXhuyKteuLiOuLpCIKKworIzogc3JjL21haW4uYzo2MAorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIG1hbmFnZW1lbnQgcHJvZ3JhbSB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICLrjbDruYTslYggJyVzJyDtjKjtgqTsp4Ag6rSA66asIO2UhOuhnOq3uOueqCDrsoTsoIQgJXMuXG4iCisKKyM6IHNyYy9tYWluLmM6ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLWl8LS1pbnN0YWxsICAgICAgIDwuZGViIGZpbGUgbmFtZT4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRpcmVjdG9yeT4gLi4uXG4iCisiICAtLXVucGFjayAgICAgICAgICAgPC5kZWIgZmlsZSBuYW1lPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyZWN0b3J5PiAuLi5cbiIKKyIgIC1BfC0tcmVjb3JkLWF2YWlsICA8LmRlYiBmaWxlIG5hbWU+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXJlY3Rvcnk+IC4uLlxuIgorIiAgLS1jb25maWd1cmUgICAgICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC0tdHJpZ2dlcnMtb25seSAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtcnwtLXJlbW92ZSAgICAgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLVB8LS1wdXJnZSAgICAgICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC0tZ2V0LXNlbGVjdGlvbnMgWzxwYXR0ZXJuPiAuLi5dIEdldCBsaXN0IG9mIHNlbGVjdGlvbnMgdG8gc3Rkb3V0LlxuIgorIiAgLS1zZXQtc2VsZWN0aW9ucyAgICAgICAgICAgICAgICAgU2V0IHBhY2thZ2Ugc2VsZWN0aW9ucyBmcm9tIHN0ZGluLlxuIgorIiAgLS1jbGVhci1zZWxlY3Rpb25zICAgICAgICAgICAgICAgRGVzZWxlY3QgZXZlcnkgbm9uLWVzc2VudGlhbCBwYWNrYWdlLlxuIgorIiAgLS11cGRhdGUtYXZhaWwgPFBhY2thZ2VzLWZpbGU+ICAgUmVwbGFjZSBhdmFpbGFibGUgcGFja2FnZXMgaW5mby5cbiIKKyIgIC0tbWVyZ2UtYXZhaWwgPFBhY2thZ2VzLWZpbGU+ICAgIE1lcmdlIHdpdGggaW5mbyBmcm9tIGZpbGUuXG4iCisiICAtLWNsZWFyLWF2YWlsICAgICAgICAgICAgICAgICAgICBFcmFzZSBleGlzdGluZyBhdmFpbGFibGUgaW5mby5cbiIKKyIgIC0tZm9yZ2V0LW9sZC11bmF2YWlsICAgICAgICAgICAgIEZvcmdldCB1bmluc3RhbGxlZCB1bmF2YWlsYWJsZSBwa2dzLlxuIgorIiAgLXN8LS1zdGF0dXMgPHBhY2thZ2U+IC4uLiAgICAgICAgRGlzcGxheSBwYWNrYWdlIHN0YXR1cyBkZXRhaWxzLlxuIgorIiAgLXB8LS1wcmludC1hdmFpbCA8cGFja2FnZT4gLi4uICAgRGlzcGxheSBhdmFpbGFibGUgdmVyc2lvbiBkZXRhaWxzLlxuIgorIiAgLUx8LS1saXN0ZmlsZXMgPHBhY2thZ2U+IC4uLiAgICAgTGlzdCBmaWxlcyBgb3duZWQnIGJ5IHBhY2thZ2UocykuXG4iCisiICAtbHwtLWxpc3QgWzxwYXR0ZXJuPiAuLi5dICAgICAgICBMaXN0IHBhY2thZ2VzIGNvbmNpc2VseS5cbiIKKyIgIC1TfC0tc2VhcmNoIDxwYXR0ZXJuPiAuLi4gICAgICAgIEZpbmQgcGFja2FnZShzKSBvd25pbmcgZmlsZShzKS5cbiIKKyIgIC1DfC0tYXVkaXQgICAgICAgICAgICAgICAgICAgICAgIENoZWNrIGZvciBicm9rZW4gcGFja2FnZShzKS5cbiIKKyIgIC0tcHJpbnQtYXJjaGl0ZWN0dXJlICAgICAgICAgICAgIFByaW50IGRwa2cgYXJjaGl0ZWN0dXJlLlxuIgorIiAgLS1jb21wYXJlLXZlcnNpb25zIDxhPiA8b3A+IDxiPiAgQ29tcGFyZSB2ZXJzaW9uIG51bWJlcnMgLSBzZWUgYmVsb3cuXG4iCisiICAtLWZvcmNlLWhlbHAgICAgICAgICAgICAgICAgICAgICBTaG93IGhlbHAgb24gZm9yY2luZy5cbiIKKyIgIC1EaHwtLWRlYnVnPWhlbHAgICAgICAgICAgICAgICAgIFNob3cgaGVscCBvbiBkZWJ1Z2dpbmcuXG4iCisiXG4iCittc2dzdHIgIiIKKyLrqoXroLk6XG4iCisiICAtaXwtLWluc3RhbGwgICAgICAgPC5kZWIg7YyM7J28IOydtOumhD4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPOuUlOugie2EsOumrD4gLi4uXG4iCisiICAtLXVucGFjayAgICAgICAgICAgPC5kZWIg7YyM7J28IOydtOumhD4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPOuUlOugie2EsOumrD4gLi4uXG4iCisiICAtQXwtLXJlY29yZC1hdmFpbCAgPC5kZWIg7YyM7J28IOydtOumhD4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPOuUlOugie2EsOumrD4gLi4uXG4iCisiICAtLWNvbmZpZ3VyZSAgICAgICAgPO2MqO2CpOyngD4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtLXRyaWdnZXJzLW9ubHkgICAgPO2MqO2CpOyngD4gLi4uIHwgLWF8LS1wZW5kaW5nXFxuXCJcbiIKKyIgIC1yfC0tcmVtb3ZlICAgICAgICA87Yyo7YKk7KeAPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC1QfC0tcHVyZ2UgICAgICAgICA87Yyo7YKk7KeAPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC0tZ2V0LXNlbGVjdGlvbnMgWzztjKjthLQ+IC4uLl0gICAg7ISg7YOdIOuqqeuhneydhCDtkZzspIDstpzroKXsnLzroZwg67O064OF64uI64ukLlxuIgorIiAgLS1zZXQtc2VsZWN0aW9ucyAgICAgICAgICAgICAgICAg7ISg7YOdIOuqqeuhneydhCDtkZzspIDsnoXroKXsnLzroZwg67Cb7Iq164uI64ukLlxuIgorIiAgLS1jbGVhci1zZWxlY3Rpb25zICAgICAgICAgICAgICAg7ZWE7IiY6rCAIOyVhOuLjCDtjKjtgqTsp4DripQg66qo65GQIOyEoO2DneydhCDsp4Dsm4Hri4giCisi64ukLlxuIgorIiAgLS11cGRhdGUtYXZhaWwgPFBhY2thZ2VzLe2MjOydvD4gICDsgqzsmqntlaAg7IiYIOyeiOuKlCDtjKjtgqTsp4Ag7KCV67O066W8IOuMgOyytO2VqeuLiOuLpC5cbiIKKyIgIC0tbWVyZ2UtYXZhaWwgPFBhY2thZ2VzLe2MjOydvD4gICAg7YyM7J287JeQIOyeiOuKlCDsoJXrs7TsmYAg7ZWp7Lmp64uI64ukLlxuIgorIiAgLS1jbGVhci1hdmFpbCAgICAgICAgICAgICAgICAgICAg6riw7KG0IOygleuztOulvCDsp4Dsm4Hri4jri6QuXG4iCisiICAtLWZvcmdldC1vbGQtdW5hdmFpbCAgICAgICAgICAgICDsgqzsmqntlaAg7IiYIOyXhuqzoCDshKTsuZjqsIAg7JWIIOuQnCDtjKjtgqTsp4Ag66qp66GdIgorIuydhFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg7KeA7JuB64uI64ukLlxuIgorIiAgLXN8LS1zdGF0dXMgPO2MqO2CpOyngD4gLi4uICAgICAgICAg7IKs7Jqp7ZWgIOyImCDsnojripQg7Yyo7YKk7KeAIOyEuOu2gOyCrO2VreydhCDtkZzsi5ztlanri4giCisi64ukLlxuIgorIiAgLXB8LS1wcmludC1hdmFpbCA87Yyo7YKk7KeAPiAuLi4gICAg7IKs7Jqp7ZWgIOyImCDsnojripQg67KE7KCEIOygleuztOulvCDtkZzsi5ztlanri4jri6QuXG4iCisiICAtTHwtLWxpc3RmaWxlcyA87Yyo7YKk7KeAPiAuLi4gICAgICDtjKjtgqTsp4DqsIAgJ+yGjOycoO2VmOuKlCcg7YyM7J287J2YIOuqqeuhneydhCDtkZzsi5ztlanri4giCisi64ukLlxuIgorIiAgLWx8LS1saXN0IFs87Yyo7YS0PiAuLi5dICAgICAgICAgICDtjKjtgqTsp4Drk6TsnYQg6rCE6rKw7ZWY6rKMIO2RnOyLnO2VqeuLiOuLpC5cbiIKKyIgIC1TfC0tc2VhcmNoIDztjKjthLQ+IC4uLiAgICAgICAgICAg7YyM7J2865Ok7J2EIOyGjOycoO2VmOqzoCDsnojripQg6r6466as66+465Ok7J2EIOywvuyKteuLiCIKKyLri6QuXG4iCisiICAtQ3wtLWF1ZGl0ICAgICAgICAgICAgICAgICAgICAgICDrp53qsIDsp4Qg7Yyo7YKk7KeA66W8IOywvuyKteuLiOuLpC5cbiIKKyIgIC0tcHJpbnQtYXJjaGl0ZWN0dXJlICAgICAgICAgICAgIGRwa2fsnZgg6rWs7KGw66W8IO2RnOyLnO2VqeuLiOuLpC5cbiIKKyIgIC0tY29tcGFyZS12ZXJzaW9ucyA8YT4gPOyXsOyCsOyekD4gPGI+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDrsoTsoIQg7KCV67O066W8IOu5hOq1kO2VqeuLiOuLpCAtIOyVhOuemCDssLjqs6AuXG4iCisiICAtLWZvcmNlLWhlbHAgICAgICAgICAgICAgICAgICAgICDqsJXsoJzrqoXroLnsl5Ag6rSA7ZWcIOuPhOybgOunkOydhCDtkZzsi5ztlanri4jri6QuXG4iCisiICAtRGh8LS1kZWJ1Zz1oZWxwICAgICAgICAgICAgICAgICDrlJTrsoTquYXsl5Ag6rSA7ZWcIOuPhOybgOunkOydhCDtkZzsi5ztlanri4jri6QuXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTEzIHNyYy9xdWVyeWNtZC5jOjYzMSBzcmMvdHJpZ2NtZC5jOjc3IGRwa2ctZGViL21haW4uYzo4OAorIzogZHBrZy1zcGxpdC9tYWluLmM6NzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiAgLWh8LS1oZWxwICAgICAgICAgICAgICAgICAgICAgICAgU2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCittc2dzdHIgIiIKKyIgIC1ofC0taGVscCAgICAgICAgICAgICAgICAgICAgICAgIOydtCDrj4Tsm4Drp5Ag66mU7Iuc7KeA66W8IO2RnOyLnO2VqeuLiOuLpC5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgICAgICAgIOuyhOyghOydhCDtkZzsi5ztlanri4jri6QuXG4iCisKKyM6IHNyYy9tYWluLmM6MTE4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJVc2UgZHBrZyAtYnwtLWJ1aWxkfC1jfC0tY29udGVudHN8LWV8LS1jb250cm9sfC1JfC0taW5mb3wtZnwtLWZpZWxkfFxuIgorIiAteHwtLWV4dHJhY3R8LVh8LS12ZXh0cmFjdHwtLWZzeXMtdGFyZmlsZSAgb24gYXJjaGl2ZXMgKHR5cGUgJXMgLS1oZWxwKS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorImRwa2cgLWJ8LS1idWlsZHwtY3wtLWNvbnRlbnRzfC1lfC0tY29udHJvbHwtSXwtLWluZm98LWZ8LS1maWVsZHxcbiIKKyIgLXh8LS1leHRyYWN0fC1YfC0tdmV4dHJhY3R8LS1mc3lzLXRhcmZpbGXsnYQg7JWE7Lm07J2067iM7JeQIOyCrOyaqe2VmOyLreyLnOyYpFxuIgorIiglcyAtLWhlbHAg7J6F66Cl7ZWY7Iut7Iuc7JikKVxuIgorCisjOiBzcmMvbWFpbi5jOjEyMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiRm9yIGludGVybmFsIHVzZTogZHBrZyAtLWFzc2VydC1zdXBwb3J0LXByZWRlcGVuZHMgfCAtLXByZWRlcC1wYWNrYWdlIHxcbiIKKyIgIC0tYXNzZXJ0LXdvcmtpbmctZXBvY2ggfCAtLWFzc2VydC1sb25nLWZpbGVuYW1lcyB8IC0tYXNzZXJ0LW11bHRpLWNvbnJlcC5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIuuCtOu2gCDsgqzsmqnsnYQg7JyE7ZW07ISc64qUOiBkcGtnIC0tYXNzZXJ0LXN1cHBvcnQtcHJlZGVwZW5kcyB8IC0tcHJlZGVwLXBhY2thZ2UgfFxuIgorIiAgLS1hc3NlcnQtd29ya2luZy1lcG9jaCB8IC0tYXNzZXJ0LWxvbmctZmlsZW5hbWVzIHwgLS1hc3NlcnQtbXVsdGktY29ucmVwLlxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjEyOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT4gICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorIiAgLS1yb290PTxkaXJlY3Rvcnk+ICAgICAgICAgSW5zdGFsbCBvbiBhIGRpZmZlcmVudCByb290IGRpcmVjdG9yeS5cbiIKKyIgIC0taW5zdGRpcj08ZGlyZWN0b3J5PiAgICAgIENoYW5nZSBpbnN0YWxsYXRpb24gZGlyIHdpdGhvdXQgY2hhbmdpbmcgYWRtaW4gIgorImRpci5cbiIKKyIgIC0tcGF0aC1leGNsdWRlPTxwYXR0ZXJuPiAgIERvIG5vdCBpbnN0YWxsIHBhdGhzIHdoaWNoIG1hdGNoIGEgc2hlbGwgIgorInBhdHRlcm4uXG4iCisiICAtLXBhdGgtaW5jbHVkZT08cGF0dGVybj4gICBSZS1pbmNsdWRlIGEgcGF0dGVybiBhZnRlciBhIHByZXZpb3VzICIKKyJleGNsdXNpb24uXG4iCisiICAtT3wtLXNlbGVjdGVkLW9ubHkgICAgICAgICBTa2lwIHBhY2thZ2VzIG5vdCBzZWxlY3RlZCBmb3IgaW5zdGFsbC8iCisidXBncmFkZS5cbiIKKyIgIC1FfC0tc2tpcC1zYW1lLXZlcnNpb24gICAgIFNraXAgcGFja2FnZXMgd2hvc2Ugc2FtZSB2ZXJzaW9uIGlzIGluc3RhbGxlZC5cbiIKKyIgIC1HfC0tcmVmdXNlLWRvd25ncmFkZSAgICAgIFNraXAgcGFja2FnZXMgd2l0aCBlYXJsaWVyIHZlcnNpb24gdGhhbiAiCisiaW5zdGFsbGVkLlxuIgorIiAgLUJ8LS1hdXRvLWRlY29uZmlndXJlICAgICAgSW5zdGFsbCBldmVuIGlmIGl0IHdvdWxkIGJyZWFrIHNvbWUgb3RoZXIgIgorInBhY2thZ2UuXG4iCisiICAtLVtuby1ddHJpZ2dlcnMgICAgICAgICAgICBTa2lwIG9yIGZvcmNlIGNvbnNlcXVlbnRpYWwgdHJpZ2dlciAiCisicHJvY2Vzc2luZy5cbiIKKyIgIC0tbm8tZGVic2lnICAgICAgICAgICAgICAgIERvIG5vdCB0cnkgdG8gdmVyaWZ5IHBhY2thZ2Ugc2lnbmF0dXJlcy5cbiIKKyIgIC0tbm8tYWN0fC0tZHJ5LXJ1bnwtLXNpbXVsYXRlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBKdXN0IHNheSB3aGF0IHdlIHdvdWxkIGRvIC0gZG9uJ3QgZG8gaXQuXG4iCisiICAtRHwtLWRlYnVnPTxvY3RhbD4gICAgICAgICBFbmFibGUgZGVidWdnaW5nIChzZWUgLURoZWxwIG9yIC0tZGVidWc9aGVscCkuXG4iCisiICAtLXN0YXR1cy1mZCA8bj4gICAgICAgICAgICBTZW5kIHN0YXR1cyBjaGFuZ2UgdXBkYXRlcyB0byBmaWxlIGRlc2NyaXB0b3IgIgorIjxuPi5cbiIKKyIgIC0tbG9nPTxmaWxlbmFtZT4gICAgICAgICAgIExvZyBzdGF0dXMgY2hhbmdlcyBhbmQgYWN0aW9ucyB0byA8ZmlsZW5hbWU+LlxuIgorIiAgLS1pZ25vcmUtZGVwZW5kcz08cGFja2FnZT4sLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZ25vcmUgZGVwZW5kZW5jaWVzIGludm9sdmluZyA8cGFja2FnZT4uXG4iCisiICAtLWZvcmNlLS4uLiAgICAgICAgICAgICAgICBPdmVycmlkZSBwcm9ibGVtcyAoc2VlIC0tZm9yY2UtaGVscCkuXG4iCisiICAtLW5vLWZvcmNlLS4uLnwtLXJlZnVzZS0uLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3Agd2hlbiBwcm9ibGVtcyBlbmNvdW50ZXJlZC5cbiIKKyIgIC0tYWJvcnQtYWZ0ZXIgPG4+ICAgICAgICAgIEFib3J0IGFmdGVyIGVuY291bnRlcmluZyA8bj4gZXJyb3JzLlxuIgorIlxuIgorbXNnc3RyICIiCisi66qF66C5OlxuIgorIiAgLS1hZG1pbmRpcj0865SU66CJ7YSw66asPiAgICAgICVzIOuMgOyLoOyXkCA865SU66CJ7YSw66asPuulvCDsgqzsmqntlanri4jri6QuXG4iCisiICAtLXJvb3Q9POuUlOugie2EsOumrD4gICAgICAgICAg64uk66W4IOujqO2KuCDrlJTroInthLDrpqzsl5Ag7ISk7LmY7ZWp64uI64ukLlxuIgorIiAgLS1pbnN0ZGlyPTzrlJTroInthLDrpqw+ICAgICAgIOq0gOumrCDrlJTroInthLDrpqzrpbwg67OA6rK97ZWY7KeAIOyViuqzoCDshKTsuZgg65SU66CJ7YSw66as66W8XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICDrs4Dqsr3tlanri4jri6QuXG4iCisiICAtLXBhdGgtZXhjbHVkZT087Yyo7YS0PiAgICAgIO2MqO2EtOyXkCDtlbTri7ntlZjripQg6rK966Gc64qUIOyEpOy5mO2VmOyngCDslYrsirXri4jri6QuXG4iCisiICAtLXBhdGgtaW5jbHVkZT087Yyo7YS0PiAgICAgIOyVnuyXkOyEnCDsoJzsmbjtlZwg7Yyo7YS07J2EIOuLpOyLnCDtj6ztlajtlanri4jri6QuXG4iCisiICAtT3wtLXNlbGVjdGVkLW9ubHkgICAgICAgICDshKTsuZjrgpgg7JeF6re466CI7J2065Oc66GcIOyEoO2Dne2VnCDtjKjtgqTsp4DripQg7IOd65617ZWp64uIIgorIuuLpC5cbiIKKyIgIC1FfC0tc2tpcC1zYW1lLXZlcnNpb24gICAgIOqwmeydgCDrsoTsoITsnbQg7ISk7LmY65CcIO2MqO2CpOyngOuKlCDsg53rnrXtlanri4jri6QuXG4iCisiICAtR3wtLXJlZnVzZS1kb3duZ3JhZGUgICAgICDshKTsuZjrkJwg6rKD67O064ukIOydtOyghCDrsoTsoITsnbgg7Yyo7YKk7KeA64qUIOyDneuete2VqeuLiOuLpC5cbiIKKyIgIC1CfC0tYXV0by1kZWNvbmZpZ3VyZSAgICAgIOuLpOuluCDtjKjtgqTsp4Drpbwg66ed6rCA65yo66a0IOyImCDsnojrjZTrnbzrj4Qg7ISk7LmY7ZWp64uI64ukLlxuIgorIiAgLS1bbm8tXXRyaWdnZXJzICAgICAgICAgICAg7Yq466as6rGw66W8IOqxtOuEiCDrm7DqsbDrgpgg6rCV7KCc66GcIOyymOumrO2VqeuLiOuLpC5cbiIKKyIgIC0tbm8tZGVic2lnICAgICAgICAgICAgICAgIO2MqO2CpOyngCDshJzrqoXsnYQg7ZmV7J247ZWY7KeAIOyViuyKteuLiOuLpC5cbiIKKyIgIC0tbm8tYWN0fC0tZHJ5LXJ1bnwtLXNpbXVsYXRlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICDtlaAg7ZaJ64+Z7J2EIOuztOyXrOyjvOq4sOunjCDtlZjqs6Ag7Iuk7KCc66GcIO2VmOyngOuKlCDslYrsirXri4giCisi64ukLlxuIgorIiAgLUR8LS1kZWJ1Zz08OOynhOyImD4gICAgICAgICDrlJTrsoTquYXsnYQg7Zmc7ISx7ZmU7ZWp64uI64ukKC1EaGVscOydtOuCmCAtLWRlYnVnPWhlbHAg7LC4IgorIuqzoCkuXG4iCisiICAtLXN0YXR1cy1mZCA8bj4gICAgICAgICAgICDtjIzsnbwg65SU7Iqk7YGs66a97YSwIDxuPuycvOuhnCDsg4Htg5wg67OA6rK9IOuCtOyXreydhCDrs7Trg4Xri4giCisi64ukLlxuIgorIiAgLS1sb2c9PO2MjOydvOydtOumhD4gICAgICAgICAgIOyDge2DnCDrs4Dqsr3snbTrgpgg7ZaJ64+Z7J2EIDztjIzsnbzsnbTrpoQ+7JeQIOuhnOq3uOuhnCDrgqjquYHri4giCisi64ukLlxuIgorIiAgLS1pZ25vcmUtZGVwZW5kcz087Yyo7YKk7KeAPiwuLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDztjKjtgqTsp4A+7JmAIOq0gOugqOuQnCDsnZjsobTqtIDqs4Trpbwg66y07Iuc7ZWp64uI64ukLlxuIgorIiAgLS1mb3JjZS0uLi4gICAgICAgICAgICAgICAg66y47KCc7KCQ7J2EIOustOyLnO2VqeuLiOuLpCgtLWZvcmNlLWhlbHAg7LC46rOgKS5cbiIKKyIgIC0tbm8tZm9yY2UtLi4ufC0tcmVmdXNlLS4uLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg66y47KCc6rCAIOuwnOyDne2WiOydhCDqsr3smrAg66mI7Lal64uI64ukLlxuIgorIiAgLS1hYm9ydC1hZnRlciA8bj4gICAgICAgICAg7Jik66WYIDxuPuqwnCDsnbTsg4Eg67Cc7IOd7ZaI7J2EIOqyveyasCDrqYjstqXri4jri6QuXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTU0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21wYXJpc29uIG9wZXJhdG9ycyBmb3IgLS1jb21wYXJlLXZlcnNpb25zIGFyZTpcbiIKKyIgIGx0IGxlIGVxIG5lIGdlIGd0ICAgICAgICh0cmVhdCBlbXB0eSB2ZXJzaW9uIGFzIGVhcmxpZXIgdGhhbiBhbnkgIgorInZlcnNpb24pO1xuIgorIiAgbHQtbmwgbGUtbmwgZ2UtbmwgZ3QtbmwgKHRyZWF0IGVtcHR5IHZlcnNpb24gYXMgbGF0ZXIgdGhhbiBhbnkgdmVyc2lvbik7XG4iCisiICA8IDw8IDw9ID0gPj0gPj4gPiAgICAgICAob25seSBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIGNvbnRyb2wgZmlsZSAiCisic3ludGF4KS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIi0tY29tcGFyZS12ZXJzaW9uc+yXkOyEnCDsgqzsmqntlZjripQg67mE6rWQIOyXsOyCsOyekDpcbiIKKyIgIGx0IGxlIGVxIG5lIGdlIGd0ICAgICAgICjrsoTsoITsnbQg7JeG64qUIOqyveyasCDtla3sg4Eg7J207KCEIOuyhOyghOycvOuhnCDst6jquIkpXG4iCisiICBsdC1ubCBsZS1ubCBnZS1ubCBndC1ubCAo67KE7KCE7J20IOyXhuuKlCDqsr3smrAg7ZWt7IOBIOydtO2bhCDrsoTsoITsnLzroZwg7Leo6riJKVxuIgorIiAgPCA8PCA8PSA9ID49ID4+ID4gICAgICAgKGNvbnRyb2wg7YyM7J287J2YIO2YleyLneqzvOydmCDtmLjtmZjshLHsnYQg7JyE7ZW07ISc66eMIOyCrOyaqSkuXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTYxCisjLCBjLWZvcm1hdAorbXNnaWQgIlVzZSBgZHNlbGVjdCcgb3IgYGFwdGl0dWRlJyBmb3IgdXNlci1mcmllbmRseSBwYWNrYWdlIG1hbmFnZW1lbnQuXG4iCittc2dzdHIgIiIKKyLsgqzsmqnsnpAg7Lmc7ZmU7KCB7J24IO2MqO2CpOyngCDqtIDrpqzrpbwg7JyE7ZW07ISc64qUICdkc2VsZWN0J+uCmCAnYXB0aXR1ZGUn7J2EIOyCrOyaqe2VmOyLreyLnCIKKyLsmKQuXG4iCisKKyM6IHNyYy9tYWluLmM6MTcwCittc2dpZCAiIgorIlR5cGUgZHBrZyAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgaW5zdGFsbGluZyBhbmQgZGVpbnN0YWxsaW5nIHBhY2thZ2VzIFsqXTtcbiIKKyJVc2UgYGRzZWxlY3QnIG9yIGBhcHRpdHVkZScgZm9yIHVzZXItZnJpZW5kbHkgcGFja2FnZSBtYW5hZ2VtZW50O1xuIgorIlR5cGUgZHBrZyAtRGhlbHAgZm9yIGEgbGlzdCBvZiBkcGtnIGRlYnVnIGZsYWcgdmFsdWVzO1xuIgorIlR5cGUgZHBrZyAtLWZvcmNlLWhlbHAgZm9yIGEgbGlzdCBvZiBmb3JjaW5nIG9wdGlvbnM7XG4iCisiVHlwZSBkcGtnLWRlYiAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgbWFuaXB1bGF0aW5nICouZGViIGZpbGVzO1xuIgorIlxuIgorIk9wdGlvbnMgbWFya2VkIFsqXSBwcm9kdWNlIGEgbG90IG9mIG91dHB1dCAtIHBpcGUgaXQgdGhyb3VnaCBgbGVzcycgb3IgIgorImBtb3JlJyAhIgorbXNnc3RyICIiCisi7Yyo7YKk7KeAIOyEpOy5mCDrsI8g7KeA7Jqw6riw7JeQIOq0gO2VnCDrj4Tsm4Drp5DsnYQg67O066Ck66m0IGRwa2cgLS1oZWxw66W8IOyLpO2Wie2VmOyLreyLnOyYpCAiCisiWypdLlxuIgorIu2OuOumrO2VnCDtjKjtgqTsp4Ag6rSA66asIOyLnOyKpO2FnOydhCDsgqzsmqntlZjroKTrqbQgYGRzZWxlY3Qn64KYIGBhcHRpdHVkZSfsnYQg7IKs7Jqp7ZWY7Iut7IucIgorIuyYpC5cbiIKKyJkcGtnIOuUlOuyhOq5hSDtlIzrnpjqt7gg6rCS7J2EIOuztOugpOuptCBkcGtnIC1EaGVscOulvCDsnoXroKXtlZjsi63si5zsmKQuXG4iCisi6rCV7KCcIOyYteyFmOyXkCDrjIDtlbQg7JWM7JWE67O066Ck66m0IGRwa2cgLS1mb3JjZS1oZWxw66W8IOyeheugpe2VmOyLreyLnOyYpC5cbiIKKyIqLmRlYiDtjIzsnbwg7LKY66as7JeQIOq0gO2VnCDrj4Tsm4Drp5DsnYQg67O066Ck66m0IGRwa2ctZGViIC0taGVscOulvCDsi6TtlontlZjsi63si5zsmKQuXG4iCisiXG4iCisiWypdIO2RnOyLnOuQnCDsmLXshZjsnYAg7ZGc7Iuc7ZWY64qUIOuCtOyaqeydtCDrp47sirXri4jri6QuIC0gYGxlc3Mn64KYIGBtb3JlJ+ulvCDsnbTsmqntlZjsi63si5zsmKQhIgorCisjOiBzcmMvbWFpbi5jOjIxOQorbXNnaWQgIlNldCBhbGwgZm9yY2Ugb3B0aW9ucyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIyMQorbXNnaWQgIlJlcGxhY2UgYSBwYWNrYWdlIHdpdGggYSBsb3dlciB2ZXJzaW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjIzCittc2dpZCAiQ29uZmlndXJlIGFueSBwYWNrYWdlIHdoaWNoIG1heSBoZWxwIHRoaXMgb25lIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjI1Cittc2dpZCAiUHJvY2VzcyBpbmNpZGVudGFsIHBhY2thZ2VzIGV2ZW4gd2hlbiBvbiBob2xkIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjI3Cittc2dpZCAiVHJ5IHRvIChkZSlpbnN0YWxsIHRoaW5ncyBldmVuIHdoZW4gbm90IHJvb3QiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjkKK21zZ2lkICJQQVRIIGlzIG1pc3NpbmcgaW1wb3J0YW50IHByb2dyYW1zLCBwcm9ibGVtcyBsaWtlbHkiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzEKK21zZ2lkICJJbnN0YWxsIGEgcGFja2FnZSBldmVuIGlmIGl0IGZhaWxzIGF1dGhlbnRpY2l0eSBjaGVjayIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzMworbXNnaWQgIlByb2Nlc3MgZXZlbiBwYWNrYWdlcyB3aXRoIHdyb25nIHZlcnNpb25zIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjM1Cittc2dpZCAiT3ZlcndyaXRlIGEgZmlsZSBmcm9tIG9uZSBwYWNrYWdlIHdpdGggYW5vdGhlciIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzNworbXNnaWQgIk92ZXJ3cml0ZSBhIGRpdmVydGVkIGZpbGUgd2l0aCBhbiB1bmRpdmVydGVkIHZlcnNpb24iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzkKK21zZ2lkICJPdmVyd3JpdGUgb25lIHBhY2thZ2UncyBkaXJlY3Rvcnkgd2l0aCBhbm90aGVyJ3MgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI0MQorbXNnaWQgIkRvIG5vdCBwZXJmb3JtIHNhZmUgSS9PIG9wZXJhdGlvbnMgd2hlbiB1bnBhY2tpbmciCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDMKK21zZ2lkICJBbHdheXMgdXNlIHRoZSBuZXcgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDUKK21zZ2lkICJBbHdheXMgdXNlIHRoZSBvbGQgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDgKK21zZ2lkICIiCisiVXNlIHRoZSBkZWZhdWx0IG9wdGlvbiBmb3IgbmV3IGNvbmZpZyBmaWxlcyBpZiBvbmVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgaXMgYXZhaWxhYmxlLCBkb24ndCBwcm9tcHQuIElmIG5vIGRlZmF1bHQgY2FuIGJlICIKKyJmb3VuZCxcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgeW91IHdpbGwgYmUgcHJvbXB0ZWQgdW5sZXNzIG9uZSBvZiB0aGUgY29uZm9sZCBvclxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICBjb25mbmV3IG9wdGlvbnMgaXMgYWxzbyBnaXZlbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI1MworbXNnaWQgIkFsd2F5cyBpbnN0YWxsIG1pc3NpbmcgY29uZmlnIGZpbGVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjU1Cittc2dpZCAiT2ZmZXIgdG8gcmVwbGFjZSBjb25maWcgZmlsZXMgd2l0aCBubyBuZXcgdmVyc2lvbnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNTcKK21zZ2lkICJQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyBvciBubyBhcmNoaXRlY3R1cmUiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNTkKK21zZ2lkICJJbnN0YWxsIGV2ZW4gaWYgaXQgd291bGQgYnJlYWsgYW5vdGhlciBwYWNrYWdlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjYxCittc2dpZCAiQWxsb3cgaW5zdGFsbGF0aW9uIG9mIGNvbmZsaWN0aW5nIHBhY2thZ2VzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjYzCisjLCBmdXp6eQorI3wgbXNnaWQgImRlcGVuZGVuY3kgcHJvYmxlbXMgLSBub3QgcmVtb3ZpbmciCittc2dpZCAiVHVybiBhbGwgZGVwZW5kZW5jeSBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzIgorbXNnc3RyICLsnZjsobTshLEg66y47KCcIC0g7KeA7Jqw7KeAIOyViuyKteuLiOuLpCIKKworIzogc3JjL21haW4uYzoyNjUKKyMsIGZ1enp5CisjfCBtc2dpZCAiZGVwZW5kZW5jeSBwcm9ibGVtcyAtIG5vdCByZW1vdmluZyIKK21zZ2lkICJUdXJuIGRlcGVuZGVuY3kgdmVyc2lvbiBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzIgorbXNnc3RyICLsnZjsobTshLEg66y47KCcIC0g7KeA7Jqw7KeAIOyViuyKteuLiOuLpCIKKworIzogc3JjL21haW4uYzoyNjcKK21zZ2lkICJSZW1vdmUgcGFja2FnZXMgd2hpY2ggcmVxdWlyZSBpbnN0YWxsYXRpb24iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNjkKK21zZ2lkICJSZW1vdmUgYW4gZXNzZW50aWFsIHBhY2thZ2UiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODEKK21zZ2lkICJHZW5lcmFsbHkgaGVscGZ1bCBwcm9ncmVzcyBpbmZvcm1hdGlvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4MgorIywgZnV6enkKKyN8IG1zZ2lkICJ1bmFibGUgdG8gc2V0ZW52IGZvciBtYWludGFpbmVyIHNjcmlwdCIKK21zZ2lkICJJbnZvY2F0aW9uIGFuZCBzdGF0dXMgb2YgbWFpbnRhaW5lciBzY3JpcHRzIgorbXNnc3RyICLrqZTsnbjthYzsnbTrhIgg7Iqk7YGs66a97Yq47JeQ7IScIO2ZmOqyvSDrs4DsiJjrpbwg7ISk7KCV7ZWgIOyImCDsl4bsirXri4jri6QiCisKKyM6IHNyYy9tYWluLmM6MjgzCittc2dpZCAiT3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg0Cittc2dpZCAiTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODUKKyMsIGZ1enp5CisjfCBtc2dpZCAicmVhZCBlcnJvciBpbiBjb25maWd1cmF0aW9uIGZpbGUgYCUuMjU1cyciCittc2dpZCAiT3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZSIKK21zZ3N0ciAi7ISk7KCVIO2MjOydvCBgJS4yNTVzJ+yXkOyEnCDsnb3quLAg7Jik66WY6rCAIOuwnOyDne2WiOyKteuLiOuLpCIKKworIzogc3JjL21haW4uYzoyODYKK21zZ2lkICJMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGUiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODcKK21zZ2lkICJEZXBlbmRlbmNpZXMgYW5kIGNvbmZsaWN0cyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4OAorbXNnaWQgIkxvdHMgb2YgZGVwZW5kZW5jaWVzL2NvbmZsaWN0cyBvdXRwdXQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODkKK21zZ2lkICJUcmlnZ2VyIGFjdGl2YXRpb24gYW5kIHByb2Nlc3NpbmciCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyOTAKK21zZ2lkICJMb3RzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyOTEKK21zZ2lkICJTaWxseSBhbW91bnRzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyOTIKK21zZ2lkICJMb3RzIG9mIGRyaXZlbCBhYm91dCBlZyB0aGUgZHBrZy9pbmZvIGRpcmVjdG9yeSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MworbXNnaWQgIkluc2FuZSBhbW91bnRzIG9mIGRyaXZlbCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjMwNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXMgZGVidWdnaW5nIG9wdGlvbiwgLS1kZWJ1Zz08b2N0YWw+IG9yIC1EPG9jdGFsPjpcbiIKKyJcbiIKKyIgTnVtYmVyICBSZWYuIGluIHNvdXJjZSAgIERlc2NyaXB0aW9uXG4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzozMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIkRlYnVnZ2luZyBvcHRpb25zIGNhbiBiZSBtaXhlZCB1c2luZyBiaXR3aXNlLW9yLlxuIgorIk5vdGUgdGhhdCB0aGUgbWVhbmluZ3MgYW5kIHZhbHVlcyBhcmUgc3ViamVjdCB0byBjaGFuZ2UuXG4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzozMTkKK21zZ2lkICItLWRlYnVnIHJlcXVpcmVzIGFuIG9jdGFsIGFyZ3VtZW50IgorbXNnc3RyICItLWRlYnVnIOyYteyFmOyXkOuKlCA47KeE7IiYIOyduOyImOqwgCDtlYTsmpTtlanri4jri6QiCisKKyM6IHNyYy9tYWluLmM6MzQ4CisjLCBjLWZvcm1hdAorbXNnaWQgIm51bGwgcGFja2FnZSBuYW1lIGluIC0taWdub3JlLWRlcGVuZHMgY29tbWEtc2VwYXJhdGVkIGxpc3QgYCUuMjUwcyciCittc2dzdHIgIiIKKyItLWlnbm9yZS1kZXBlbmRzIOyYteyFmOydmCAo7Im87ZGc66GcIOq1rOu2hO2VnCkg66qp66Gd7JeQIChgJS4yNTBzJykg7Yyo7YKk7KeAIOydtOumhOydtCDsl4bsirUiCisi64uI64ukIgorCisjOiBzcmMvbWFpbi5jOjM1NAorIywgYy1mb3JtYXQKK21zZ2lkICItLWlnbm9yZS1kZXBlbmRzIHJlcXVpcmVzIGEgbGVnYWwgcGFja2FnZSBuYW1lLiBgJS4yNTBzJyBpcyBub3Q7ICVzIgorbXNnc3RyICIiCisiLS1pZ25vcmUtZGVwZW5kcyDsmLXshZjsl5DripQg7Jis67CU66W4IO2MqO2CpOyngCDsnbTrpoTsnbQg7ZWE7JqU7ZWp64uI64ukLiBgJS4yNTBzJyDtjKjtgqTsp4DripQgIgorIuyYrOuwlOultOyngCDslYrsirXri4jri6Q6ICVzIgorCisjOiBzcmMvbWFpbi5jOjM3MSBzcmMvbWFpbi5jOjM4MSBzcmMvbWFpbi5jOjY0OSBkcGtnLXNwbGl0L21haW4uYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBpbnRlZ2VyIGZvciAtLSVzOiBgJS4yNTBzJyIKK21zZ3N0ciAiLS0lcyDsmLXshZjsl5Ag7Iir7J6Q6rCAIOyemOuqu+uQmOyXiOyKteuLiOuLpDogYCUuMjUwcyciCisKKyM6IHNyYy9tYWluLmM6NDM4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGV4ZWN1dGluZyBob29rICclcycsIGV4aXQgY29kZSAlZCIKK21zZ3N0ciAi7ZuFIO2UhOuhnOq3uOueqCAnJXMn7J2YIOyLpO2WieyXkCDsmKTrpZjqsIAg67Cc7IOd7ZaI7Iq164uI64ukLiDsooXro4wg7L2U65OcICVkIgorCisjOiBzcmMvbWFpbi5jOjQ2NQorIywgZnV6enkKKyN8IG1zZ2lkICJzdGF0dXMiCittc2dpZCAic3RhdHVzIGxvZ2dlciIKK21zZ3N0ciAi7IOB7YOcIgorCisjOiBzcmMvbWFpbi5jOjQ4MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXMgZm9yY2luZyBvcHRpb25zIC0gY29udHJvbCBiZWhhdmlvdXIgd2hlbiBwcm9ibGVtcyBmb3VuZDpcbiIKKyIgIHdhcm4gYnV0IGNvbnRpbnVlOiAgLS1mb3JjZS08dGhpbmc+LDx0aGluZz4sLi4uXG4iCisiICBzdG9wIHdpdGggZXJyb3I6ICAgIC0tcmVmdXNlLTx0aGluZz4sPHRoaW5nPiwuLi4gfCAtLW5vLWZvcmNlLTx0aGluZz4sLi4uXG4iCisiIEZvcmNpbmcgdGhpbmdzOlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6NDkwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJXQVJOSU5HIC0gdXNlIG9mIG9wdGlvbnMgbWFya2VkIFshXSBjYW4gc2VyaW91c2x5IGRhbWFnZSB5b3VyIGluc3RhbGxhdGlvbi5cbiIKKyJGb3JjaW5nIG9wdGlvbnMgbWFya2VkIFsqXSBhcmUgZW5hYmxlZCBieSBkZWZhdWx0LlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6NTA0CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gZm9yY2UvcmVmdXNlIG9wdGlvbiBgJS4qcyciCittc2dzdHIgIuyVjCDsiJgg7JeG64qUIGZvcmNlL3JlZnVzZSDsmLXshZggYCUuKnMnIgorCisjOiBzcmMvbWFpbi5jOjUxMworIywgYy1mb3JtYXQKK21zZ2lkICJvYnNvbGV0ZSBmb3JjZS9yZWZ1c2Ugb3B0aW9uICclcydcbiIKK21zZ3N0ciAiJyVzJyBmb3JjZS9yZWZ1c2Ug7Ji17IWY7J2AIOuNlCDsnbTsg4Eg7IKs7Jqp7ZWY7KeAIOyViuyKteuLiOuLpFxuIgorCisjOiBzcmMvbWFpbi5jOjY0MworbXNnaWQgIi0tY29tbWFuZC1mZCB0YWtlcyBvbmUgYXJndW1lbnQsIG5vdCB6ZXJvIgorbXNnc3RyICItLWNvbW1hbmQtZmQg7Ji17IWY7J2YIOyduOyekOuKlCAw6rCc6rCAIOyVhOuLiOudvCAx6rCc7J6F64uI64ukIgorCisjOiBzcmMvbWFpbi5jOjY0NQorbXNnaWQgIi0tY29tbWFuZC1mZCBvbmx5IHRha2VzIG9uZSBhcmd1bWVudCIKK21zZ3N0ciAiLS1jb21tYW5kLWZkIOyYteyFmOydmCDsnbjsnpDripQg7KCV7ZmV7Z6IIDHqsJzsnoXri4jri6QiCisKKyMgZmRvcGVuKCkg7Iuk7YyoIOyDge2ZqQorIzogc3JjL21haW4uYzo2NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGRuJ3Qgb3BlbiBgJWknIGZvciBzdHJlYW0iCittc2dzdHIgImAlaScg7YyM7J2865SU7Iqk7YGs66a97YSw66W8IOyKpO2KuOumvOycvOuhnCDsl7Qg7IiYIOyXhuyKteuLiOuLpCIKKworIzogc3JjL21haW4uYzo2NzYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgYmVmb3JlIGVuZCBvZiBsaW5lICVkIgorbXNnc3RyICIlZOuyiOynuCDspITsnbQg64Gd64KY6riwIOyghOyXkCDsmIjsg4HsuZgg66q77ZWY6rKMIO2MjOydvOydtCDrgZ3rgqzsirXri4jri6QiCisKKyM6IHNyYy9tYWluLmM6NzE5IHNyYy9tYWluLmM6NzQxIHNyYy9xdWVyeWNtZC5jOjY5MiBzcmMvc3RhdGNtZC5jOjM3OQorIzogZHBrZy1kZWIvbWFpbi5jOjIwMSBkcGtnLXNwbGl0L21haW4uYzoxNjMKK21zZ2lkICJuZWVkIGFuIGFjdGlvbiBvcHRpb24iCittc2dzdHIgIuuqheuguSDsmLXshZjsnbQg7ZWE7JqU7ZWp64uI64ukIgorCisjOiBzcmMvcGFja2FnZXMuYzoxMTMKK21zZ2lkICIiCisieW91IG11c3Qgc3BlY2lmeSBwYWNrYWdlcyBieSB0aGVpciBvd24gbmFtZXMsIG5vdCBieSBxdW90aW5nIHRoZSBuYW1lcyBvZiAiCisidGhlIGZpbGVzIHRoZXkgY29tZSBpbiIKK21zZ3N0ciAi7Yyo7YKk7KeA66W8IO2MqO2CpOyngCDsnbTrpoTsnLzroZwg7KeA7KCV7ZW07JW8IO2VqeuLiOuLpC4g7Yyo7YKk7KeAIO2MjOydvCDsnbTrpoTsnbQg7JWE64uZ64uI64ukIgorCisjOiBzcmMvcGFja2FnZXMuYzoxMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyAtLXBlbmRpbmcgZG9lcyBub3QgdGFrZSBhbnkgbm9uLW9wdGlvbiBhcmd1bWVudHMiCittc2dzdHIgIi0tJXMgLS1wZW5kaW5n7JeQ7ISc64qUIOyYteyFmOqzvCDqtIDqs4Tsl4bripQg7J247IiY66W8IOuwm+yngCDslYrsirXri4jri6QiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjEzOCBzcmMvcXVlcnljbWQuYzozNzUgc3JjL3F1ZXJ5Y21kLmM6NTY1CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYXQgbGVhc3Qgb25lIHBhY2thZ2UgbmFtZSBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyDsmLXshZjsnYAg7KCB7Ja064+EIO2VmOuCmOydmCDtjKjtgqTsp4Ag7J2066aEIOyduOyImOqwgCDtlYTsmpTtlanri4jri6QiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjE3OQorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlICVzIGxpc3RlZCBtb3JlIHRoYW4gb25jZSwgb25seSBwcm9jZXNzaW5nIG9uY2UuXG4iCittc2dzdHIgIiVzIO2MqO2CpOyngOqwgCDrkZAg67KIIOydtOyDgSDrk7HsnqXtlojsirXri4jri6QuIO2VnCDrsojrp4wg7LKY66as7ZWp64uI64ukLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzoxODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk1vcmUgdGhhbiBvbmUgY29weSBvZiBwYWNrYWdlICVzIGhhcyBiZWVuIHVucGFja2VkXG4iCisiIGluIHRoaXMgcnVuICEgIE9ubHkgY29uZmlndXJpbmcgaXQgb25jZS5cbiIKK21zZ3N0ciAiIgorIuydtOuyiCDsi6TtlontlaAg65WMICVzIO2MqO2CpOyngOulvCDrkZAg67KIIOydtOyDgSDtkoDsl4jsirXri4jri6QhXG4iCisi7ISk7KCV7J2AIO2VnCDrsojrp4wg7ZWp64uI64ukLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInBhY2thZ2UgJS4yNTBzIGlzIG5vdCByZWFkeSBmb3IgdHJpZ2dlciBwcm9jZXNzaW5nXG4iCisiIChjdXJyZW50IHN0YXR1cyBgJS4yNTBzJyB3aXRoIG5vIHBlbmRpbmcgdHJpZ2dlcnMpIgorbXNnc3RyICIiCisiJS4yNTBzIO2MqO2CpOyngOuKlCDtirjrpqzqsbAg7LKY66asIOykgOu5hOqwgCDrkJjslrQg7J6I7KeAIOyViuyKteuLiOuLpC5cbiIKKyIgKO2YhOyerCDsg4Htg5w6IGAlLjI1MHMnLCDrsIDrprAg7Yq466as6rGwIOyXhuydjCkiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjMzNAorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgd2hpY2ggcHJvdmlkZXMgJXMgaXMgdG8gYmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiICAlcyDtjKjtgqTsp4DripQgJXPsnYQo66W8KSDsoJzqs7XtlZjsp4Drp4wg7KeA7Jq4IOyYiOygleyeheuLiOuLpC5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MzM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIgICVzIO2MqO2CpOyngOuKlCDsp4Dsmrgg7JiI7KCV7J6F64uI64ukLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzozNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBWZXJzaW9uIG9mICVzIG9uIHN5c3RlbSBpcyAlcy5cbiIKK21zZ3N0ciAiICDsi5zsiqTthZzsl5Ag7J6I64qUICVz7J2YIOuyhOyghOydgCAlc+yeheuLiOuLpC5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6Mzc2CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyB3aGljaCBwcm92aWRlcyAlcyBhd2FpdHMgdHJpZ2dlciBwcm9jZXNzaW5nLlxuIgorbXNnc3RyICIgICVzIO2MqO2CpOyngOuKlCAoJXPsnYQo66W8KSDsoJzqs7UpIO2KuOumrOqxsCDsspjrpqzrpbwg6riw64uk66a964uI64ukLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzozODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIGF3YWl0cyB0cmlnZ2VyIHByb2Nlc3NpbmcuXG4iCittc2dzdHIgIiAgJXMg7Yyo7YKk7KeA64qUIO2KuOumrOqxsCDsspjrpqzrpbwg6riw64uk66a964uI64ukLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogYWxzbyBjb25maWd1cmluZyBgJXMnIChyZXF1aXJlZCBieSBgJXMnKVxuIgorbXNnc3RyICJkcGtnOiBgJXMn64+EIOyEpOygle2VqeuLiOuLpCAoYCVzJ+uVjOusuOyXkCDtlYTsmpQpXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQxOAorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgd2hpY2ggcHJvdmlkZXMgJXMgaXMgbm90IGNvbmZpZ3VyZWQgeWV0LlxuIgorbXNnc3RyICIgICVzIO2MqO2CpOyngOuKlCAlc+ydhCjrpbwpIOygnOqzte2VmOyngOunjCDslYTsp4Eg7ISk7KCV7ZWY7KeAIOyViuyVmOyKteuLiOuLpC5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDIxCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyBpcyBub3QgY29uZmlndXJlZCB5ZXQuXG4iCittc2dzdHIgIiAlcyDtjKjtgqTsp4DripQg7JWE7KeBIOyEpOygle2VmOyngCDslYrslZjsirXri4jri6QuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQzMgorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgd2hpY2ggcHJvdmlkZXMgJXMgaXMgbm90IGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiICAlcyDtjKjtgqTsp4DripQgJXPsnYQo66W8KSDsoJzqs7XtlZjsp4Drp4wg7ISk7LmY7ZWY7KeAIOyViuyVmOyKteuLiOuLpC5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDM1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIgICVzIO2MqO2CpOyngOuKlCDshKTsuZjtlZjsp4Ag7JWK7JWY7Iq164uI64ukLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICVzICglcykgYnJlYWtzICVzIGFuZCBpcyAlcy5cbiIKK21zZ3N0ciAiJXMoJXMpICVz7J2EKOulvCkg66ed6rCA65yo66as66mwICVz7J6F64uI64ukLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlcyAoJXMpIHByb3ZpZGVzICVzLlxuIgorbXNnc3RyICIlcyAoJXMpICVz7J2EKOulvCkg7KCc6rO17ZWp64uI64ukLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBWZXJzaW9uIG9mICVzIHRvIGJlIGNvbmZpZ3VyZWQgaXMgJXMuXG4iCittc2dzdHIgIiAg7ISk7KCV7ZWY66Ck6rOgIO2VmOuKlCAlc+ydmCDrsoTsoITsnYAgJXPsnoXri4jri6QuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjU5NgorbXNnaWQgIiBkZXBlbmRzIG9uICIKK21zZ3N0ciAiIO2MqO2CpOyngOuKlCDri6TsnYwg7Yyo7YKk7KeA7JeQIOydmOyhtDogIgorCisjIEZJWE1FOiBiYWQgbXNnaWQgLSBncmFtbWFyCisjOiBzcmMvcGFja2FnZXMuYzo2MDIKK21zZ2lkICI7IGhvd2V2ZXI6XG4iCittc2dzdHIgIjog7ZWY7KeA66eMOlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjcxCisjLCBjLWZvcm1hdAorbXNnaWQgIi4uLi8lcyIKK21zZ3N0ciAiLi4uLyVzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjkxCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGVuc3VyaW5nIGAlLjI1MHMnIGRvZXNuJ3QgZXhpc3QiCittc2dzdHIgImAlLjI1MHMnIO2MjOydvOydhCDsp4DsmrDripTrjbAg7Jik66WY6rCAIOuwnOyDne2WiOyKteuLiOuLpCIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5OQorbXNnaWQgInNwbGl0IHBhY2thZ2UgcmVhc3NlbWJseSIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEwOAorbXNnaWQgInJlYXNzZW1ibGVkIHBhY2thZ2UgZmlsZSIKK21zZ3N0ciAi64uk7IucIO2Vqey5nCDtjKjtgqTsp4Ag7YyM7J28IgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEzMworIywgYy1mb3JtYXQKK21zZ2lkICJBdXRoZW50aWNhdGluZyAlcyAuLi5cbiIKK21zZ3N0ciAiJXMg7Yyo7YKk7KeA66W8IO2ZleyduO2VmOuKlCDspJHsnoXri4jri6QgLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTM5Cittc2dpZCAicGFja2FnZSBzaWduYXR1cmUgdmVyaWZpY2F0aW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTQ2CisjLCBjLWZvcm1hdAorbXNnaWQgIlZlcmlmaWNhdGlvbiBvbiBwYWNrYWdlICVzIGZhaWxlZCEiCittc2dzdHIgIiVzIO2MqO2CpOyngCDtmZXsnbjsnbQg7Iuk7Yyo7ZaI7Iq164uI64ukISIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlZlcmlmaWNhdGlvbiBvbiBwYWNrYWdlICVzIGZhaWxlZCxcbiIKKyJidXQgaW5zdGFsbGluZyBhbnl3YXkgYXMgeW91IHJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiIgorIiVzIO2MqO2CpOyngCDtmZXsnbjsnbQg7Iuk7Yyo7ZaI7Iq164uI64ukLFxuIgorIu2VmOyngOunjCDsmpTssq3tlZwg64yA66GcIOyEpOy5mO2VqeuLiOuLpC5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFzc2VkXG4iCittc2dzdHIgIu2GteqzvFxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE2NSBkcGtnLWRlYi9pbmZvLmM6ODEKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHRlbXBvcmFyeSBkaXJlY3RvcnkiCittc2dzdHIgIuyehOyLnCDrlJTroInthLDrpqzrpbwg66eM65OkIOyImCDsl4bsirXri4jri6QiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MjA1CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgJXMgaGFzIHRvbyBtYW55IENvbmZsaWN0cy9SZXBsYWNlcyBwYWlycyIKK21zZ3N0ciAiJXMg7Yyo7YKk7KeA7J2YIOy2qeuPjC/rjIDssrQg66qp66Gd7J20IOyngOuCmOy5mOqyjCDquYHri4jri6QiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MjQzCisjLCBjLWZvcm1hdAorbXNnaWQgIm9sZCB2ZXJzaW9uIG9mIHBhY2thZ2UgaGFzIG92ZXJseS1sb25nIGluZm8gZmlsZSBuYW1lIHN0YXJ0aW5nIGAlLjI1MHMnIgorbXNnc3RyICIiCisi7Yyo7YKk7KeA7J2YIOqzvOqxsCDrsoTsoITsl5Ag65Ok7Ja0IOyeiOuKlCDsoJXrs7Qg7YyM7J287J2YIOydtOumhOydtCAoYCUuMjUwcyco7Jy8KeuhnCDsi5zsnpEpIOuEiOustCAiCisi6rmB64uI64ukLiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyODEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBvYnNvbGV0ZSBpbmZvIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuqzvOqxsCDsoJXrs7Qg7YyM7J28IGAlLjI1MHMnIO2MjOydvOydhCDsp4Dsmrgg7IiYIOyXhuyKteuLiOuLpCIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyODYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgKHN1cHBvc2VkKSBuZXcgaW5mbyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLsg4ggKOyYiOyDgSkg7KCV67O0IO2MjOydvCBgJS4yNTBzJyDtjIzsnbzsnYQg7ISk7LmY7ZWgIOyImCDsl4bsirXri4jri6QiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6Mjk2Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gdGVtcCBjb250cm9sIGRpcmVjdG9yeSIKK21zZ3N0ciAi7J6E7IucIOy7qO2KuOuhpCDrlJTroInthLDrpqzrpbwg7Je0IOyImCDsl4bsirXri4jri6QiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzA3CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgY29udGFpbnMgb3Zlcmx5LWxvbmcgY29udHJvbCBpbmZvIGZpbGUgbmFtZSAoc3RhcnRpbmcgYCUuNTBzJykiCittc2dzdHIgIiIKKyLtjKjtgqTsp4Dsl5Ag65Ok7Ja0IOyeiOuKlCDsoJXrs7Qg7YyM7J287J2YIOydtOumhOydtCAoYCUuMjUwcyco7Jy8KeuhnCDsi5zsnpEpIOuEiOustCDquYHri4jri6QuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMxNAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGNvbnRyb2wgaW5mbyBjb250YWluZWQgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICLtjKjtgqTsp4Ag7Luo7Yq466GkIOygleuztOyXkCBgJS4yNTBzJyDrlJTroInthLDrpqzqsIAg65Ok7Ja0IOyeiOyKteuLiOuLpCIKKworIyBGSVhNRTogYmFkIG1zZ2lkIC0tIGphcmdvbiAoTk9UQURJUikKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzE2CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgY29udHJvbCBpbmZvIHJtZGlyIG9mIGAlLjI1MHMnIGRpZG4ndCBzYXkgbm90IGEgZGlyIgorbXNnc3RyICIiCisi7Yyo7YKk7KeAIOy7qO2KuOuhpCDsoJXrs7QgYCUuMjUwcyfsnZggcm1kaXLsl5DshJwg65SU66CJ7YSw66as6rCAIOyVhOuLiOudvOuKlCDqsrDqs7zqsIAg64KY7Jik7KeAIOyViiIKKyLslZjsirXri4jri6QiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzI2CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgJXMgY29udGFpbmVkIGxpc3QgYXMgaW5mbyBmaWxlIgorbXNnc3RyICIlcyDtjKjtgqTsp4DripQg7KCV67O0IO2MjOydvOuhnCDrqqnroZ3snbQg65Ok7Ja0IOyeiOyKteuLiOuLpCIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IGluZm8gZmlsZSBgJS4yNTBzJyBhcyBgJS4yNTBzJyIKK21zZ3N0ciAi7IOIIOygleuztCDtjIzsnbwgYCUuMjUwcyfsnYQo66W8KSBgJS4yNTBzJyjsnLwp66GcIOyEpOy5mO2VoCDsiJgg7JeG7Iq164uI64ukIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjM0OSBzcmMvcmVtb3ZlLmM6MTk4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkZWxldGUgY29udHJvbCBpbmZvIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuy7qO2KuOuhpCDsoJXrs7Qg7YyM7J28IGAlLjI1MHMnIO2MjOydvOydhCDsp4Dsmrgg7IiYIOyXhuyKteuLiOuLpCIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo0MTEKK21zZ2lkICJjYW5ub3QgYWNjZXNzIGFyY2hpdmUiCittc2dzdHIgIuyVhOy5tOydtOu4jOyXkCDsoJHqt7ztlaAg7IiYIOyXhuyKteuLiOuLpCIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo0MzMKKyMsIGZ1enp5CisjfCBtc2dpZCAiY29udHJvbCBpbmZvcm1hdGlvbiBsZW5ndGgiCittc2dpZCAicGFja2FnZSBjb250cm9sIGluZm9ybWF0aW9uIGV4dHJhY3Rpb24iCittc2dzdHIgIuy7qO2KuOuhpCDsoJXrs7Qg6ri47J20IgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjQ2MAorIywgYy1mb3JtYXQKK21zZ2lkICJSZWNvcmRlZCBpbmZvIGFib3V0ICVzIGZyb20gJXMuXG4iCittc2dzdHIgIiUyJHPsl5DshJwgJTEkc+yXkCDqtIDtlZwg7KCV67O066W8IOq4sOuhne2VqeuLiOuLpC5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo0NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBhcmNoaXRlY3R1cmUgKCVzKSBkb2VzIG5vdCBtYXRjaCBzeXN0ZW0gKCVzKSIKK21zZ3N0ciAi7Yyo7YKk7KeA7J2YIOyVhO2CpO2FjeyymCglcynripQg7Iuc7Iqk7YWcKCVzKeqzvCDrp57sp4Ag7JWK7Iq164uI64ukLiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1MjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IHJlZ2FyZGluZyAlcyBjb250YWluaW5nICVzLCBwcmUtZGVwZW5kZW5jeSBwcm9ibGVtOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogJTIkc+ydhCjrpbwpIOuLtOqzoCDsnojripQgJTEkcyDtjKjtgqTsp4Drpbwg6rOg66Ck7ZWgIOuVjCwg66+466asIOydmOyhtCDrrLjsoJzqsIAg7J6I7Iq164uIIgorIuuLpDpcbiIKKyIlMyRzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjUyNgorIywgYy1mb3JtYXQKK21zZ2lkICJwcmUtZGVwZW5kZW5jeSBwcm9ibGVtIC0gbm90IGluc3RhbGxpbmcgJS4yNTBzIgorbXNnc3RyICLrr7jrpqwg7J2Y7KG0IOusuOygnCAtICUuMjUwcyDtjKjtgqTsp4Drpbwg7ISk7LmY7ZWgIOyImCDsl4bsirXri4jri6QiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTI3Cittc2dpZCAiaWdub3JpbmcgcHJlLWRlcGVuZGVuY3kgcHJvYmxlbSEiCittc2dzdHIgIuuvuOumrCDsnZjsobQg66y47KCc66W8IOustOyLnO2VqeuLiOuLpCEiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTQzCisjLCBjLWZvcm1hdAorbXNnaWQgIlByZXBhcmluZyB0byByZXBsYWNlICVzICVzICh1c2luZyAlcykgLi4uXG4iCittc2dzdHIgIiVzICVzIO2MqO2CpOyngOulvCDrjIDssrTtlaAg7KSA67mE7ZWY64qUIOykkeyeheuLiOuLpCAoJXMg7IKs7JqpKSAuLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiVW5wYWNraW5nICVzIChmcm9tICVzKSAuLi5cbiIKK21zZ3N0ciAiJXMg7Yyo7YKk7KeA66W8IO2RuOuKlCDspJHsnoXri4jri6QgKCVz7JeQ7IScKSAuLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAibmFtZSBvZiBjb25mZmlsZSAoc3RhcnRpbmcgYCUuMjUwcycpIGlzIHRvbyBsb25nICg+JWQgY2hhcmFjdGVycykiCittc2dzdHIgIuyEpOyglSDtjIzsnbzsnZgg7J2066aEKGAlLjI1MHMnKOycvCnroZwg7Iuc7J6RKeydtCDrhIjrrLQg6rmB64uI64ukICg+ICVkIOusuOyekCkiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjMzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDcxCisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWQgZXJyb3IgaW4gJS4yNTBzIgorbXNnc3RyICIlLjI1MHPsl5DshJwg7J296riwIOyYpOulmOqwgCDrsJzsg53tlojsirXri4jri6QiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjM1CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgJS4yNTBzIgorbXNnc3RyICIlLjI1MHPsnYQo66W8KSDri6vquLAg7Jik66WY6rCAIOuwnOyDne2WiOyKteuLiOuLpCIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2MzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgdHJ5aW5nIHRvIG9wZW4gJS4yNTBzIgorbXNnc3RyICIlLjI1MHPsnYQo66W8KSDsl7TquLAg7Iuc64+E7ZWY64qU642wIOyYpOulmOqwgCDrsJzsg53tlojsirXri4jri6QiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6Njc4CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlLWNvbmZpZ3VyaW5nICVzLCB0byBhbGxvdyByZW1vdmFsIG9mICVzIC4uLlxuIgorbXNnc3RyICIlMiRz7J2EKOulvCkg7KeA7Jqw6riwIOychO2VtCAlMSRz7J2EKOulvCkg7ISk7KCVIO2VtOygnO2VmOuKlCDspJHsnoXri4jri6QgLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjgxCisjLCBjLWZvcm1hdAorbXNnaWQgIkRlLWNvbmZpZ3VyaW5nICVzIC4uLlxuIgorbXNnc3RyICIlcyDtjKjtgqTsp4Drpbwg7KeA7Jqw64qUIOykkeyeheuLiOuLpCAuLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo3NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiVW5wYWNraW5nIHJlcGxhY2VtZW50ICUuMjUwcyAuLi5cbiIKK21zZ3N0ciAi64yA7LK065CY64qUICUuMjUwcyDtjKjtgqTsp4Drpbwg7ZG464qUIOykkeyeheuLiOuLpCAuLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NDAKKyMsIGZ1enp5CisjfCBtc2dpZCAiZHBrZy1kZWIgZmllbGQgZXh0cmFjdGlvbiIKK21zZ2lkICJwYWNrYWdlIGZpbGVzeXN0ZW0gYXJjaGl2ZSBleHRyYWN0aW9uIgorbXNnc3RyICJkcGtnLWRlYiDtlYTrk5wg6rCS7J2EIOu5vCDrgrTquLAiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6ODU0Cittc2dpZCAiZXJyb3IgcmVhZGluZyBkcGtnLWRlYiB0YXIgb3V0cHV0IgorbXNnc3RyICJkcGtnLWRlYiB0YXIg7Lac66Cl7J2EIOydveuKlOuNsCDsmKTrpZjqsIAg67Cc7IOd7ZaI7Iq164uI64ukIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjg1NgorbXNnaWQgImNvcnJ1cHRlZCBmaWxlc3lzdGVtIHRhcmZpbGUgLSBjb3JydXB0ZWQgcGFja2FnZSBhcmNoaXZlIgorbXNnc3RyICLrp53qsIDsp4Qg7YyM7J28IOyLnOyKpO2FnCB0YXIg7YyM7J28IC0g66ed6rCA7KeEIO2MqO2CpOyngCDslYTsubTsnbTruIwiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6ODU5Cittc2dpZCAiZHBrZy1kZWI6IHphcCBwb3NzaWJsZSB0cmFpbGluZyB6ZXJvcyIKK21zZ3N0ciAiZHBrZy1kZWI6IOuSpOyXkCDrgpjsmKTripQgMOydhCDsnpjrnbwg67KE66a964uI64ukIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjkxOQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgc3RhdCBvbGQgZmlsZSAnJS4yNTBzJyBzbyBub3QgZGVsZXRpbmcgaXQ6ICVzIgorbXNnc3RyICLsmKTrnpjrkJwg7YyM7J28ICclLjI1MHMn7J2YIOygleuztOulvCDsnb3snYQg7IiYIOyXhuycvOuvgOuhnCDsp4DsmrDsp4Ag7JWK7Iq164uI64ukOiAlcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSBvbGQgZGlyZWN0b3J5ICclLjI1MHMnOiAlcyIKK21zZ3N0ciAi7Jik656Y65CcIOuUlOugie2EsOumrCAnJS4yNTBzJ+ydhCjrpbwpIOyngOyauCDsiJgg7JeG7Iq164uI64ukOiAlcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAib2xkIGNvbmZmaWxlICclLjI1MHMnIHdhcyBhbiBlbXB0eSBkaXJlY3RvcnkgKGFuZCBoYXMgbm93IGJlZW4gZGVsZXRlZCkiCittc2dzdHIgIuyYpOuemOuQnCDshKTsoJUg7YyM7J28ICclLjI1MHMn7J2AKOuKlCkg67mIIOuUlOugie2EsOumrOyYgOycvOupsCDsnbTsoJwg7KeA7JuM7KGM7Iq164uI64ukIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjk3NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBvdGhlciBuZXcgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi7IOI66Gc7Jq0IO2MjOydvCBgJS4yNTBzJ+ydmCDsoJXrs7Trpbwg7J297J2EIOyImCDsl4bsirXri4jri6QiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTg2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJvbGQgZmlsZSAnJS4yNTBzJyBpcyB0aGUgc2FtZSBhcyBzZXZlcmFsIG5ldyBmaWxlcyEgKGJvdGggJyUuMjUwcycgYW5kICIKKyInJS4yNTBzJykiCittc2dzdHIgIiIKKyLsmKTrnpjrkJwg7YyM7J28IGAlLjI1MHMn7J2AKOuKlCkg7IOI66Gc7Jq0IO2MjOydvOqzvCDqsJnsirXri4jri6QhICglLjI1MHPsmYAgJS4yNTBzIOuqqOuRkCkiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTAyNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2VjdXJlbHkgcmVtb3ZlIG9sZCBmaWxlICclLjI1MHMnOiAlcyIKK21zZ3N0ciAi7Jik656Y65CcICclLjI1MHMnIO2MjOydvOydhCDslYjsoITtlZjqsowg7KeA7Jq4IOyImCDsl4bsirXri4jri6Q6ICVzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEyMDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiKE5vdGluZyBkaXNhcHBlYXJhbmNlIG9mICVzLCB3aGljaCBoYXMgYmVlbiBjb21wbGV0ZWx5IHJlcGxhY2VkLilcbiIKK21zZ3N0ciAiIgorIiglcyDtjKjtgqTsp4DqsIAg7JeG7Ja07KeEIOqyg+yXkCDsnKDsnZjtlZjsi63si5zsmKQuIOyZhOyghO2eiCDri6Trpbgg7Yyo7YKk7KeA66GcIOuMgOyytOuQmOyXiOyKteuLiCIKKyLri6QuKVxuIgorCisjLiBUUkFOU0xBVE9SUzogVGhpcyBpcyB0aGUgaGVhZGVyIHRoYXQgYXBwZWFycyBvbiAnZHBrZy1xdWVyeSAtbCcuIFRoZQorIy4gKiBzdHJpbmcgc2hvdWxkIHJlbWFpbiB1bmRlciA4MCBjaGFyYWN0ZXJzLiBUaGUgdXBwZXJjYXNlIGxldHRlcnMgaW4KKyMuICogdGhlIHN0YXRlIHZhbHVlcyBkZW5vdGUgdGhlIGFiYnJldmlhdGVkIGxldHRlciB0aGF0IHdpbGwgYXBwZWFyIG9uCisjLiAqIHRoZSBmaXJzdCB0aHJlZSBjb2x1bW5zLCB3aGljaCBzaG91bGQgaWRlYWxseSBtYXRjaCB0aGUgRW5nbGlzaCBvbmUKKyMuICogKGUuZy4gUmVtb3ZlIOKGkiBzdXBSaW1laXgpLCBzZWUgZHBrZy1xdWVyeSgxKSBmb3IgZnVydGhlciBkZXRhaWxzLiBUaGUKKyMuICogdHJhbnNsYXRlZCBtZXNzYWdlIGNhbiB1c2UgYWRkaXRpb25hbCBsaW5lcyBpZiBuZWVkZWQuCisjOiBzcmMvcXVlcnljbWQuYzoxNDkKK21zZ2lkICIiCisiRGVzaXJlZD1Vbmtub3duL0luc3RhbGwvUmVtb3ZlL1B1cmdlL0hvbGRcbiIKKyJ8IFN0YXR1cz1Ob3QvSW5zdC9Db25mLWZpbGVzL1VucGFja2VkL2hhbEYtY29uZi9IYWxmLWluc3QvdHJpZy1hV2FpdC9UcmlnLSIKKyJwZW5kXG4iCisifC8gRXJyPz0obm9uZSkvUmVpbnN0LXJlcXVpcmVkIChTdGF0dXMsRXJyOiB1cHBlcmNhc2U9YmFkKVxuIgorbXNnc3RyICIiCisi7Z2s66ed7IOB7YOcPeyVjOyImOyXhuydjChVKS/shKTsuZgoSSkv7KeA7Jqw6riwKFIpL+q5qOuBl+ydtChQKS/qs6DsoJUoSClcbiIKKyJ8IOyDge2DnD3slYTri5goTikv7ISk7LmYKEkpL+yEpOyglShDKS/tkoDrprwoVSkv7KCI67CY7ISk7KCVKEYpL+ydvOu2gOyEpOy5mChIKS/tirjrpqzqsbDrjIDquLAiCisiKFcpL1xuIgorInwgLyAgICDtirjrpqzqsbDrsIDrprwoVClcbiIKKyJ8LyDsmKTrpZg/PSjsl4bsnYwpL+uLpOyLnOyEpOy5mO2VhOyalChSKSAo7IOB7YOcLCDsmKTrpZjqsIAg64yA66y47J6QPeu2iOufiSlcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MTUzCittc2dpZCAiTmFtZSIKK21zZ3N0ciAi7J2066aEIgorCisjOiBzcmMvcXVlcnljbWQuYzoxNTMKK21zZ2lkICJWZXJzaW9uIgorbXNnc3RyICLrsoTsoIQiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjE1NAorbXNnaWQgIkRlc2NyaXB0aW9uIgorbXNnc3RyICLshKTrqoUiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI0NiBzcmMvcXVlcnljbWQuYzo1MTEgc3JjL3NlbGVjdC5jOjc1CisjLCBjLWZvcm1hdAorbXNnaWQgIk5vIHBhY2thZ2VzIGZvdW5kIG1hdGNoaW5nICVzLlxuIgorbXNnc3RyICIlc+yXkCDrp57ripQg7Yyo7YKk7KeA6rCAIOyXhuyKteuLiOuLpC5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MjczCisjLCBjLWZvcm1hdAorbXNnaWQgImRpdmVyc2lvbiBieSAlcyBmcm9tOiAlc1xuIgorbXNnc3RyICIlMiRzIO2MqO2CpOyngOqwgCAlMSRzIO2MqO2CpOyngOyXkOyEnCDsoITtmZhcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6Mjc1CisjLCBjLWZvcm1hdAorbXNnaWQgImRpdmVyc2lvbiBieSAlcyB0bzogJXNcbiIKK21zZ3N0ciAiJTIkcyDtjKjtgqTsp4DqsIAgJTEkcyDtjKjtgqTsp4DroZwg7KCE7ZmYXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI3OAorIywgYy1mb3JtYXQKK21zZ2lkICJsb2NhbCBkaXZlcnNpb24gZnJvbTogJXNcbiIKK21zZ3N0ciAi64uk7J2M7JeQ7IScIOuhnOy7rCDsoITtmZg6ICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI3OQorIywgYy1mb3JtYXQKK21zZ2lkICJsb2NhbCBkaXZlcnNpb24gdG86ICVzXG4iCittc2dzdHIgIuuLpOydjOycvOuhnCDroZzsu6wg7KCE7ZmYOiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzozMDkKK21zZ2lkICItLXNlYXJjaCBuZWVkcyBhdCBsZWFzdCBvbmUgZmlsZSBuYW1lIHBhdHRlcm4gYXJndW1lbnQiCittc2dzdHIgIi0tc2VhcmNoIOyYteyFmOydgCDsoIHslrTrj4Qg7ZWY64KY7J2YIO2MjOydvCDsnbTrpoQg7Yyo7YS0IOyduOyImOqwgCDtlYTsmpTtlanri4jri6QiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjM1MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiTm8gcGFja2FnZXMgZm91bmQgbWF0Y2hpbmcgJXMuXG4iCittc2dpZCAiJXM6IG5vIHBhdGggZm91bmQgbWF0Y2hpbmcgcGF0dGVybiAlcy5cbiIKK21zZ3N0ciAiJXPsl5Ag66ee64qUIO2MqO2CpOyngOqwgCDsl4bsirXri4jri6QuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjM5MworIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlIGAlcycgaXMgbm90IGluc3RhbGxlZCBhbmQgbm8gaW5mbyBpcyBhdmFpbGFibGUuXG4iCittc2dzdHIgImAlcycg7Yyo7YKk7KeA64qUIOyEpOy5mO2VmOyngCDslYrslZjsnLzrqbAg7KCV67O064+EIOyXhuyKteuLiOuLpC5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDAxCisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgYCVzJyBpcyBub3QgYXZhaWxhYmxlLlxuIgorbXNnc3RyICJgJXMnIO2MqO2CpOyngOuKlCDsgqzsmqntlaAg7IiYIOyXhuyKteuLiOuLpC5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDEwIHNyYy9xdWVyeWNtZC5jOjU4NQorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlIGAlcycgaXMgbm90IGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiYCVzJyDtjKjtgqTsp4DripQg7ISk7LmY7ZWY7KeAIOyViuyVmOyKteuLiOuLpC5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDE4CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgYCVzJyBkb2VzIG5vdCBjb250YWluIGFueSBmaWxlcyAoISlcbiIKK21zZ3N0ciAiYCVzJyDtjKjtgqTsp4Dsl5DripQg7Ja065ag7ZWcIO2MjOydvOuPhCDrk6TslrQg7J6I7KeAIOyViuyKteuLiOuLpC4gKCEpXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQyNQorIywgYy1mb3JtYXQKK21zZ2lkICJsb2NhbGx5IGRpdmVydGVkIHRvOiAlc1xuIgorbXNnc3RyICLroZzsu6zsl5DshJwg7KCE7ZmYOiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBkaXZlcnRzIG90aGVycyB0bzogJXNcbiIKK21zZ3N0ciAi7J20IO2MqO2CpOyngOqwgCDri6Trpbgg7Yyo7YKk7KeA66W8IOyghO2ZmDogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDMxCisjLCBjLWZvcm1hdAorbXNnaWQgImRpdmVydGVkIGJ5ICVzIHRvOiAlc1xuIgorbXNnc3RyICIlcyDtjKjtgqTsp4DqsIAg7J20IO2MqO2CpOyngOulvCDsoITtmZg6ICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQ1MgorbXNnaWQgIiIKKyJVc2UgZHBrZyAtLWluZm8gKD0gZHBrZy1kZWIgLS1pbmZvKSB0byBleGFtaW5lIGFyY2hpdmUgZmlsZXMsXG4iCisiYW5kIGRwa2cgLS1jb250ZW50cyAoPSBkcGtnLWRlYiAtLWNvbnRlbnRzKSB0byBsaXN0IHRoZWlyIGNvbnRlbnRzLlxuIgorbXNnc3RyICIiCisi7JWE7Lm07J2067iMIO2MjOydvCDsoJXrs7Trpbwg67O066Ck66m0IGRwa2cgLS1pbmZv66W8IOyLpO2Wie2VmOyLnOqzoCAoPSBkcGtnLWRlYiAtLWluZm8pXG4iCisi7JWE7Lm07J2067iMIOuCtOyaqeydhCDrs7TroKTrqbQgZHBrZyAtLWNvbnRlbnRz66W8IOyLpO2Wie2VmOyLreyLnOyYpCAoPSBkcGtnLWRlYiAtLSIKKyJjb250ZW50cylcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NTcwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgYXQgbW9zdCB0d28gYXJndW1lbnRzIgorbXNnc3RyICItLSVzIOyYteyFmOydgCDstZzrjIAg65GQIOqwnOydmCDsnbjsiJjrpbwg67Cb7Iq164uI64ukIgorCisjOiBzcmMvcXVlcnljbWQuYzo1NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29udHJvbCBmaWxlIGNvbnRhaW5zICVjIgorbXNnc3RyICJjb250cm9sIO2MjOydvOyXkCAlYyDrrLjsnpDqsIAg65Ok7Ja0IOyeiOyKteuLiOuLpCIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjAwCisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiAlcyBwYWNrYWdlIG1hbmFnZW1lbnQgcHJvZ3JhbSBxdWVyeSB0b29sIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIuuNsOu5hOyViCAnJXMnIO2MqO2CpOyngCDqtIDrpqwg7L+866asIO2UhOuhnOq3uOueqCDrsoTsoIQgJXMuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjYxOQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIkNvbW1hbmRzOlxuIgorI3wgIiAgLXN8LS1zdGF0dXMgPHBhY2thZ2U+IC4uLiAgICAgICAgRGlzcGxheSBwYWNrYWdlIHN0YXR1cyBkZXRhaWxzLlxuIgorI3wgIiAgLXB8LS1wcmludC1hdmFpbCA8cGFja2FnZT4gLi4uICAgRGlzcGxheSBhdmFpbGFibGUgdmVyc2lvbiBkZXRhaWxzLlxuIgorI3wgIiAgLUx8LS1saXN0ZmlsZXMgPHBhY2thZ2U+IC4uLiAgICAgTGlzdCBmaWxlcyBgb3duZWQnIGJ5IHBhY2thZ2UocykuXG4iCisjfCAiICAtbHwtLWxpc3QgWzxwYXR0ZXJuPiAuLi5dICAgICAgICBMaXN0IHBhY2thZ2VzIGNvbmNpc2VseS5cbiIKKyN8ICIgIC1XfC0tc2hvdyA8cGF0dGVybj4gLi4uICAgICAgICAgIFNob3cgaW5mb3JtYXRpb24gb24gcGFja2FnZShzKS5cbiIKKyN8ICIgIC1TfC0tc2VhcmNoIDxwYXR0ZXJuPiAuLi4gICAgICAgIEZpbmQgcGFja2FnZShzKSBvd25pbmcgZmlsZShzKS5cbiIKKyN8ICIgIC1jfC0tY29udHJvbC1wYXRoIDxwYWNrYWdlPiBbPGZpbGU+XVxuIgorI3wgIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHJpbnQgcGF0aCBmb3IgcGFja2FnZSBjb250cm9sIGZpbGUuXG4iCisjfCAiXG4iCittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLXN8LS1zdGF0dXMgPHBhY2thZ2U+IC4uLiAgICAgICAgRGlzcGxheSBwYWNrYWdlIHN0YXR1cyBkZXRhaWxzLlxuIgorIiAgLXB8LS1wcmludC1hdmFpbCA8cGFja2FnZT4gLi4uICAgRGlzcGxheSBhdmFpbGFibGUgdmVyc2lvbiBkZXRhaWxzLlxuIgorIiAgLUx8LS1saXN0ZmlsZXMgPHBhY2thZ2U+IC4uLiAgICAgTGlzdCBmaWxlcyBgb3duZWQnIGJ5IHBhY2thZ2UocykuXG4iCisiICAtbHwtLWxpc3QgWzxwYXR0ZXJuPiAuLi5dICAgICAgICBMaXN0IHBhY2thZ2VzIGNvbmNpc2VseS5cbiIKKyIgIC1XfC0tc2hvdyBbPHBhdHRlcm4+IC4uLl0gICAgICAgIFNob3cgaW5mb3JtYXRpb24gb24gcGFja2FnZShzKS5cbiIKKyIgIC1TfC0tc2VhcmNoIDxwYXR0ZXJuPiAuLi4gICAgICAgIEZpbmQgcGFja2FnZShzKSBvd25pbmcgZmlsZShzKS5cbiIKKyIgIC1jfC0tY29udHJvbC1wYXRoIDxwYWNrYWdlPiBbPGZpbGU+XVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHJpbnQgcGF0aCBmb3IgcGFja2FnZSBjb250cm9sIGZpbGUuXG4iCisiXG4iCittc2dzdHIgIiIKKyLrqoXroLk6XG4iCisiICAtc3wtLXN0YXR1cyA87Yyo7YKk7KeAPiAuLi4gICAgICAgICDtjKjtgqTsp4Ag7IOB7YOc66W8IOyekOyEuO2eiCDtkZzsi5ztlanri4jri6RcbiIKKyIgIC1wfC0tcHJpbnQtYXZhaWwgPO2MqO2CpOyngD4gLi4uICAgIOyTuCDsiJgg7J6I64qUIOuyhOyghCDsoJXrs7Trpbwg7ZGc7Iuc7ZWp64uI64ukXG4iCisiICAtTHwtLWxpc3RmaWxlcyA87Yyo7YKk7KeAPiAuLi4gICAgICDtjKjtgqTsp4Dsl5Ag7ZW064u565CY64qUIO2MjOydvOydmCDrqqnroZ3snYQg7ZGc7Iuc7ZWp64uIIgorIuuLpFxuIgorIiAgLWx8LS1saXN0IFs87Yyo7YS0PiAuLi5dICAgICAgICAgICDtjKjtgqTsp4Ag66qp66Gd7J2EIOqwhOuLqO2eiCDrtIXri4jri6RcbiIKKyIgIC1XfC0tc2hvdyA87Yyo7YS0PiAuLi4gICAgICAgICAgICAg7Yyo7YKk7KeA7J2YIOygleuztOulvCDrtIXri4jri6RcbiIKKyIgIC1TfC0tc2VhcmNoIDztjKjthLQ+IC4uLiAgICAgICAgICAg7YyM7J287J20IOuTpOyWtCDsnojripQg7Yyo7YKk7KeA66W8IOywvuyKteuLiOuLpFxuIgorIiAgLWN8LS1jb250cm9sLXBhdGggPO2MqO2CpOyngD4gWzztjIzsnbw+XVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg7Yyo7YKk7KeAIGNvbnRyb2wg7YyM7J287J2YIOqyveuhnOulvCDtkZzsi5ztlanri4jri6RcbiIKKyJcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjM2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hZG1pbmRpcj08ZGlyZWN0b3J5PiAgICAgICAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMuXG4iCisiICAtZnwtLXNob3dmb3JtYXQ9PGZvcm1hdD4gICAgICAgICBVc2UgYWx0ZXJuYXRpdmUgZm9ybWF0IGZvciAtLXNob3cuXG4iCisiXG4iCittc2dzdHIgIiIKKyLsmLXshZg6XG4iCisiICAtLWFkbWluZGlyPTzrlJTroInthLDrpqw+ICAgICAgICAgICAgJXMg64yA7Iug7JeQIDzrlJTroInthLDrpqw+IOyCrOyaqe2VqeuLiOuLpC5cbiIKKyIgIC1mfC0tc2hvd2Zvcm1hdD087ZiV7IudPiAgICAgICAgICAgLS1zaG937JeQ7IScIOuLpOuluCDtmJXsi53snYQg7IKs7Jqp7ZWp64uI64ukLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo2NDIgZHBrZy1kZWIvbWFpbi5jOjExMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiRm9ybWF0IHN5bnRheDpcbiIKKyIgIEEgZm9ybWF0IGlzIGEgc3RyaW5nIHRoYXQgd2lsbCBiZSBvdXRwdXQgZm9yIGVhY2ggcGFja2FnZS4gVGhlIGZvcm1hdFxuIgorIiAgY2FuIGluY2x1ZGUgdGhlIHN0YW5kYXJkIGVzY2FwZSBzZXF1ZW5jZXMgXFxuIChuZXdsaW5lKSwgXFxyIChjYXJyaWFnZVxuIgorIiAgcmV0dXJuKSBvciBcXFxcIChwbGFpbiBiYWNrc2xhc2gpLiBQYWNrYWdlIGluZm9ybWF0aW9uIGNhbiBiZSBpbmNsdWRlZFxuIgorIiAgYnkgaW5zZXJ0aW5nIHZhcmlhYmxlIHJlZmVyZW5jZXMgdG8gcGFja2FnZSBmaWVsZHMgdXNpbmcgdGhlICR7dmFyWzsiCisid2lkdGhdfVxuIgorIiAgc3ludGF4LiBGaWVsZHMgd2lsbCBiZSByaWdodC1hbGlnbmVkIHVubGVzcyB0aGUgd2lkdGggaXMgbmVnYXRpdmUgaW4gIgorIndoaWNoXG4iCisiICBjYXNlIGxlZnQgYWxpZ25tZW50IHdpbGwgYmUgdXNlZC5cbiIKK21zZ3N0ciAiIgorIu2YleyLnSDsgqzsmqnrspU6XG4iCisiICA87ZiV7IudPuydgCDqsIEg7Yyo7YKk7KeA7JeQIOuMgO2VtCDstpzroKXtlaAg66y47J6Q7Je07J6F64uI64ukLiDstpzroKXtmJXsi53snYAgXFxuKOykhOuwlOq/iCksIFxuIgorIiAgXFxyKOy6kOumrOyngCDrpqzthLQpLCBcXFxcKOydvOuwmCDrsLHsiqzrnpjsi5wpIOuTsSDtkZzspIAg7J207Iqk7LyA7J207ZSEIOyLnO2AgOyKpOulvCDsgqzsmqntlaAgIgorIuyImCBcbiIKKyIgIOyeiOyKteuLiOuLpC4g7Yyo7YKk7KeAIOygleuztOuKlCAke+uzgOyImDvtj619IO2YleyLneycvOuhnCDtjKjtgqTsp4Ag7ZWE65Oc66W8IOuzgOyImOqwkuycvOuhnCDsnbTsmqkiCisi7ZWgXG4iCisiICDsiJgg7J6I7Iq164uI64ukLiDtj63snbQg7J2M7IiY6rCAIOyVhOuLiOudvOuptCDrs4DsiJjripQg7Jik66W47Kq97JeQIOunnuy2sCDsoJXroKztlZjqs6AsIOydjOyImOudvCIKKyLrqbQgXG4iCisiICDsmbzsqr3snLzroZwg7KCV66Cs7ZWp64uI64ukLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo2NTYKK21zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IHF1ZXJ5aW5nIHBhY2thZ2VzLiIKK21zZ3N0ciAi7L+866asIO2UhOuhnOq3uOueqOyXkCDrjIDtlZwg64+E7JuA66eQ7J2AIC0taGVscCDsmLXshZjsnYQg7IKs7Jqp7ZWY7Iut7Iuc7JikLiIKKworIzogc3JjL3JlbW92ZS5jOjg4CisjLCBjLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nIHJlcXVlc3QgdG8gcmVtb3ZlICUuMjUwcyB3aGljaCBpc24ndCBpbnN0YWxsZWQuIgorbXNnc3RyICLshKTsuZjtlZjsp4Ag7JWK7J2AICUuMjUwcyDtjKjtgqTsp4DsnZgg7KeA7Jqw6riwIOyalOyyreydhCDrrLTsi5ztlanri4jri6QuIgorCisjOiBzcmMvcmVtb3ZlLmM6OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImlnbm9yaW5nIHJlcXVlc3QgdG8gcmVtb3ZlICUuMjUwcywgb25seSB0aGUgY29uZmlnXG4iCisiIGZpbGVzIG9mIHdoaWNoIGFyZSBvbiB0aGUgc3lzdGVtLiBVc2UgLS1wdXJnZSB0byByZW1vdmUgdGhlbSB0b28uIgorbXNnc3RyICIiCisi7Iuc7Iqk7YWc7JeQIOuLqOyngCDshKTsoJUg7YyM7J2866eMIOuCqOyVhCDsnojripQgJS4yNTBzIO2MqO2CpOyngOydmCDsp4DsmrDquLBcbiIKKyLsmpTssq3snYQg66y07Iuc7ZWp64uI64ukLiDshKTsoJUg7YyM7J2864+EIOyngOyasOugpOuptCAtLXB1cmdlIOyYteyFmOydhCDsgqzsmqntlZjsi63si5zsmKQuIgorCisjOiBzcmMvcmVtb3ZlLmM6MTAzCittc2dpZCAiVGhpcyBpcyBhbiBlc3NlbnRpYWwgcGFja2FnZSAtIGl0IHNob3VsZCBub3QgYmUgcmVtb3ZlZC4iCittc2dzdHIgIuq8rSDtlYTsmpTtlZwg7Yyo7YKk7KeA7J6F64uI64ukIC0g7KeA7Jqw66m0IOyViCDrkKnri4jri6QuIgorCisjOiBzcmMvcmVtb3ZlLmM6MTI4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBkZXBlbmRlbmN5IHByb2JsZW1zIHByZXZlbnQgcmVtb3ZhbCBvZiAlczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6IOydmOyhtOyEsSDrrLjsoJzroZwgJXMg7Yyo7YKk7KeA66W8IOyngOyauCDsiJgg7JeG7Iq164uI64ukOlxuIgorIiVzIgorCisjOiBzcmMvcmVtb3ZlLmM6MTMwCittc2dpZCAiZGVwZW5kZW5jeSBwcm9ibGVtcyAtIG5vdCByZW1vdmluZyIKK21zZ3N0ciAi7J2Y7KG07ISxIOusuOygnCAtIOyngOyasOyngCDslYrsirXri4jri6QiCisKKyM6IHNyYy9yZW1vdmUuYzoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6ICVzOiBkZXBlbmRlbmN5IHByb2JsZW1zLCBidXQgcmVtb3ZpbmcgYW55d2F5IGFzIHlvdSByZXF1ZXN0ZWQ6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiAlczog7J2Y7KG07ISxIOusuOygnOqwgCDsnojsp4Drp4wsIOyWtOyojOuToCDsmpTssq3tlZwg64yA66GcIOyngOybgeuLiOuLpDpcbiIKKyIlcyIKKworIzogc3JjL3JlbW92ZS5jOjE0MgorbXNnaWQgIiIKKyJQYWNrYWdlIGlzIGluIGEgdmVyeSBiYWQgaW5jb25zaXN0ZW50IHN0YXRlIC0geW91IHNob3VsZFxuIgorIiByZWluc3RhbGwgaXQgYmVmb3JlIGF0dGVtcHRpbmcgYSByZW1vdmFsLiIKK21zZ3N0ciAiIgorIu2MqO2CpOyngOqwgCDrp6TsmrAg7JWI7KKL7J2AIOu2iOydvOy5mCDsg4Htg5zsl5Ag7J6I7Iq164uI64ukIC0g7KeA7Jqw6riwIOyghOyXkFxuIgorIiDri6Tsi5wg7ISk7LmY7ZW07JW8IO2VqeuLiOuLpC4iCisKKyM6IHNyYy9yZW1vdmUuYzoxNDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiV291bGQgcmVtb3ZlIG9yIHB1cmdlICVzIC4uLlxuIgorbXNnc3RyICIlcyDtjKjtgqTsp4Drpbwg7KeA7Jqw6rGw64KYIOq5qOuBl+ydtCDtlanri4jri6QgLi4uXG4iCisKKyM6IHNyYy9yZW1vdmUuYzoxNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVtb3ZpbmcgJXMgLi4uXG4iCittc2dzdHIgIiVzIO2MqO2CpOyngOulvCDsp4DsmrDripQg7KSR7J6F64uI64ukIC4uLlxuIgorCisjOiBzcmMvcmVtb3ZlLmM6Mjc1IHNyYy9yZW1vdmUuYzozNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIndoaWxlIHJlbW92aW5nICUuMjUwcywgdW5hYmxlIHRvIHJlbW92ZSBkaXJlY3RvcnkgJyUuMjUwcyc6ICVzIC0gZGlyZWN0b3J5ICIKKyJtYXkgYmUgYSBtb3VudCBwb2ludD8iCittc2dzdHIgIiIKKyIlLjI1MHMg7Yyo7YKk7KeA66W8IOyngOyasOuKlCDrjbAsICclLjI1MHMnIOuUlOugie2EsOumrOulvCDsp4Dsmrgg7IiYIOyXhuyKteuLiOuLpDogJXMgLSDrlJTroInthLAiCisi66as6rCAIOuniOyatO2KuCDtj6zsnbjtirjsnoXri4jquYw/IgorCisjOiBzcmMvcmVtb3ZlLmM6Mjg5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWN1cmVseSByZW1vdmUgJyUuMjUwcyciCittc2dzdHIgIiclLjI1NXMn7J2EKOulvCkg7JWI7KCE7ZWY6rKMIOyngOyauCDsiJgg7JeG7Iq164uI64ukIgorCisjOiBzcmMvcmVtb3ZlLmM6MzYxCisjLCBjLWZvcm1hdAorbXNnaWQgIndoaWxlIHJlbW92aW5nICUuMjUwcywgZGlyZWN0b3J5ICclLjI1MHMnIG5vdCBlbXB0eSBzbyBub3QgcmVtb3ZlZC4iCittc2dzdHIgIiIKKyIlLjI1MHMg7Yyo7YKk7KeA66W8IOyngOyasOuKlCDspJEsICclLjI1MHMnIOuUlOugie2EsOumrOuKlCDruYTslrTsnojsp4Ag7JWK7JWE7IScIOyngOyasOyngCDslYrsirXri4giCisi64ukLiIKKworIzogc3JjL3JlbW92ZS5jOjM4MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiY2Fubm90IHJlbW92ZSBgJS4yNTBzJyIKK21zZ2lkICJjYW5ub3QgcmVtb3ZlICclLjI1MHMnIgorbXNnc3RyICJgJS4yNTBzJ+ydhCjrpbwpIOyngOyauCDsiJgg7JeG7Iq164uI64ukIgorCisjOiBzcmMvcmVtb3ZlLmM6NDA5CisjLCBjLWZvcm1hdAorbXNnaWQgIlB1cmdpbmcgY29uZmlndXJhdGlvbiBmaWxlcyBmb3IgJXMgLi4uXG4iCittc2dzdHIgIiVz7J2YIOyEpOyglSDtjIzsnbzsnYQg6rmo64GX7J20IOyngOyasOuKlCDspJHsnoXri4jri6QgLi4uXG4iCisKKyM6IHNyYy9yZW1vdmUuYzo0NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlbW92ZSBvbGQgY29uZmlnIGZpbGUgYCUuMjUwcycgKD0gYCUuMjUwcycpIgorbXNnc3RyICLqs7zqsbDsnZgg7ISk7KCVIO2MjOydvCBgJS4yNTBzJyAoPSBgJS4yNTBzJykg7YyM7J287J2EIOyngOyauCDsiJgg7JeG7Iq164uI64ukIgorCisjOiBzcmMvcmVtb3ZlLmM6NDc0CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZWFkIGNvbmZpZyBmaWxlIGRpciBgJS4yNTBzJyAoZnJvbSBgJS4yNTBzJykiCittc2dzdHIgIuyEpOyglSDtjIzsnbwg65SU66CJ7YSw66asIGAlLjI1MHMnIOuUlOugie2EsOumrOulvCDsnb3snYQg7IiYIOyXhuyKteuLiOuLpCAoYCUuMjUwcyfsl5DshJwpIgorCisjOiBzcmMvcmVtb3ZlLmM6NTEwCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZW1vdmUgb2xkIGJhY2t1cCBjb25maWcgZmlsZSBgJS4yNTBzJyAob2YgYCUuMjUwcycpIgorbXNnc3RyICIiCisi7Jik656Y65CcIOuwseyXhSDshKTsoJUg7YyM7J28IGAlLjI1MHMnIO2MjOydvOydhCDsp4Dsmrgg7IiYIOyXhuyKteuLiOuLpCAoYCUuMjUwcyfsnZgg67Cx7JeFKSIKKworIzogc3JjL3JlbW92ZS5jOjU2OAorbXNnaWQgImNhbm5vdCByZW1vdmUgb2xkIGZpbGVzIGxpc3QiCittc2dzdHIgIuyYpOuemOuQnCDtjIzsnbwg66qp66Gd7J2EIOyngOyauCDsiJgg7JeG7Iq164uI64ukIgorCisjOiBzcmMvcmVtb3ZlLmM6NTc0Cittc2dpZCAiY2FuJ3QgcmVtb3ZlIG9sZCBwb3N0cm0gc2NyaXB0IgorbXNnc3RyICLsmKTrnpjrkJwgcG9zdHJtIOyKpO2BrOumve2KuOulvCDsp4Dsmrgg7IiYIOyXhuyKteuLiOuLpCIKKworIzogc3JjL3NlbGVjdC5jOjExNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVvZiBpbiBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZCIKK21zZ3N0ciAiJWTrsojsp7gg7KSE7JeQIOyeiOuKlCDtjKjtgqTsp4Ag7J2066aE7JeQIOyYiOyDgey5mCDrqrvtlZjqsowg7YyM7J287J20IOuBneuCrOyKteuLiOuLpCIKKworIzogc3JjL3NlbGVjdC5jOjExNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBsaW5lIGluIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICIlZOuyiOynuCDspITsl5Ag7J6I64qUIO2MqO2CpOyngCDsnbTrpoTsl5Ag7JiI7IOB7LmYIOuqu+2VmOqyjCDspITsnbQg64Gd64Ks7Iq164uI64ukIgorCisjOiBzcmMvc2VsZWN0LmM6MTIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW9mIGFmdGVyIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICIlZOuyiOynuCDspITsl5Ag7J6I64qUIO2MqO2CpOyngCDsnbTrpoQg65Kk7JeQIOyYiOyDgey5mCDrqrvtlZjqsowg7YyM7J287J20IOuBneuCrOyKteuLiOuLpCIKKworIzogc3JjL3NlbGVjdC5jOjEyMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBsaW5lIGFmdGVyIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICIlZOuyiOynuCDspITsl5Ag7J6I64qUIO2MqO2CpOyngCDsnbTrpoQg65Kk7JeQIOyYiOyDgey5mCDrqrvtlZjqsowg7KSE7J20IOuBneuCrOyKteuLiOuLpCIKKworIzogc3JjL3NlbGVjdC5jOjEzNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGRhdGEgYWZ0ZXIgcGFja2FnZSBhbmQgc2VsZWN0aW9uIGF0IGxpbmUgJWQiCittc2dzdHIgIiVk67KI7Ke4IOykhOyXkCDsnojripQg7Yyo7YKk7KeA7JmAIOyEoO2DnSDtm4Qg7JiI7IOB7LmYIOuqu+2VnCDrjbDsnbTthLDqsIAg64KY7JmU7Iq164uI64ukIgorCisjOiBzcmMvc2VsZWN0LmM6MTM5CisjLCBjLWZvcm1hdAorbXNnaWQgImlsbGVnYWwgcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQ6ICUuMjUwcyIKK21zZ3N0ciAiJWTrsojsp7gg7KSE7JeQIOyCrOyaqe2VoCDsiJgg7JeG64qUIO2MqO2CpOyngCDsnbTrpoTsnbQg64KY7JmU7Iq164uI64ukOiAlLjI1MHMiCisKKyM6IHNyYy9zZWxlY3QuYzoxNDMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biB3YW50ZWQgc3RhdHVzIGF0IGxpbmUgJWQ6ICUuMjUwcyIKK21zZ3N0ciAiJWTrsojsp7gg7KSE7JeQIOyVjCDsiJgg7JeG64qUIOyalOyyrSDsg4Htg5zqsIAg64KY7JmU7Iq164uI64ukOiAlLjI1MHMiCisKKyM6IHNyYy9zZWxlY3QuYzoxNDkKK21zZ2lkICJyZWFkIGVycm9yIG9uIHN0YW5kYXJkIGlucHV0IgorbXNnc3RyICLtkZzspIAg7J6F66Cl7J2EIOydveuKlOuNsCDsmKTrpZjqsIAg67Cc7IOd7ZaI7Iq164uI64ukIgorCisjOiBzcmMvc3RhdGNtZC5jOjUyCisjLCBmdXp6eQorI3wgbXNnaWQgIlVzZSAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgcXVlcnlpbmcgcGFja2FnZXMuIgorbXNnaWQgIlVzZSAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgb3ZlcnJpZGluZyBmaWxlIHN0YXQgaW5mb3JtYXRpb24uIgorbXNnc3RyICLsv7zrpqwg7ZSE66Gc6re4656o7JeQIOuMgO2VnCDrj4Tsm4Drp5DsnYAgLS1oZWxwIOyYteyFmOydhCDsgqzsmqntlZjsi63si5zsmKQuIgorCisjOiBzcmMvc3RhdGNtZC5jOjYxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsIDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDYtMjAwOSBHdWlsbGVtIEpvdmVyLlxuIgorbXNnc3RyICIiCisiQ29weXJpZ2h0IChDKSAyMDAwLCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDA2LTIwMDkgR3VpbGxlbSBKb3Zlci5cbiIKKworIzogc3JjL3N0YXRjbWQuYzo4MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtLWFkZCA8b3duZXI+IDxncm91cD4gPG1vZGU+IDxmaWxlPlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGFkZCBhIG5ldyBlbnRyeSBpbnRvIHRoZSBkYXRhYmFzZS5cbiIKKyIgIC0tcmVtb3ZlIDxmaWxlPiAgICAgICAgICByZW1vdmUgZmlsZSBmcm9tIHRoZSBkYXRhYmFzZS5cbiIKKyIgIC0tbGlzdCBbPGdsb2ItcGF0dGVybj5dICBsaXN0IGN1cnJlbnQgb3ZlcnJpZGVzIGluIHRoZSBkYXRhYmFzZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIuuqheuguTpcbiIKKyIgIC0tYWRkIDzshozsnKA+IDzqt7jro7k+IDzrqqjrk5w+IDztjIzsnbw+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAg642w7J207YSw67Kg7J207Iqk7JeQIOyDiCDtla3rqqnsnYQg7LaU6rCA7ZWp64uI64ukLlxuIgorIiAgLS1yZW1vdmUgPO2MjOydvD4gICAgICAgICAg642w7J207YSw67Kg7J207Iqk7JeQ7IScIO2MjOydvOydhCDsp4Dsm4Hri4jri6QuXG4iCisiICAtLWxpc3QgWzzquIDroZzruIztjKjthLQ+XSAgICDrjbDsnbTthLDrsqDsnbTsiqTsl5Ag7ZiE7J6sIOyeiOuKlCBvdmVycmlkZSDtla3rqqnsnYQg7ZGc7Iuc7ZWp64uIIgorIuuLpC5cbiIKKyJcbiIKKworIzogc3JjL3N0YXRjbWQuYzo4OQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICBzZXQgdGhlIGRpcmVjdG9yeSB3aXRoIHRoZSBzdGF0b3ZlcnJpZGUgZmlsZS5cbiIKKyIgIC0tdXBkYXRlICAgICAgICAgICAgICAgICBpbW1lZGlhdGVseSB1cGRhdGUgZmlsZSBwZXJtaXNzaW9ucy5cbiIKKyIgIC0tZm9yY2UgICAgICAgICAgICAgICAgICBmb3JjZSBhbiBhY3Rpb24gZXZlbiBpZiBhIHNhbml0eSBjaGVjayBmYWlscy5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBxdWlldCBvcGVyYXRpb24sIG1pbmltYWwgb3V0cHV0LlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIuyYteyFmDpcbiIKKyIgIC0tYWRtaW5kaXIgPOuUlOugie2EsOumrD4gICAgc3RhdG92ZXJyaWRlIO2MjOydvOydtCDsnojripQg65SU66CJ7YSw66as66W8IOyngOygle2VqeuLiOuLpC5cbiIKKyIgIC0tdXBkYXRlICAgICAgICAgICAgICAgICDtjIzsnbwg6raM7ZWc7J2EIOuwlOuhnCDrsJTqv4nri4jri6QuXG4iCisiICAtLWZvcmNlICAgICAgICAgICAgICAgICAg6rKA7IKs6rCAIOyLpO2MqO2VmOuNlOudvOuPhCDqsJXsoJztlanri4jri6QuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAg7Lac66Cl7J2EIOy1nOyGjO2ZlO2VmOuKlCDsobDsmqntlZwg66qo65OcLlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIOydtCDrj4Tsm4Drp5Ag66mU7Iuc7KeA66W8IO2RnOyLnO2VqeuLiOuLpC5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICDrsoTsoITsnYQg7ZGc7Iuc7ZWp64uI64ukLlxuIgorCisjOiBzcmMvc3RhdGNtZC5jOjExNgorbXNnaWQgInN0cmlwcGluZyB0cmFpbGluZyAvIgorbXNnc3RyICLrp6gg64Gd7JeQIOyeiOuKlCAv66W8IOyngOybgeuLiOuLpCIKKworIzogc3JjL3N0YXRjbWQuYzoyMDcKK21zZ2lkICJjYW5ub3Qgb3BlbiBuZXcgc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIuyDiCBzdGF0b3ZlcnJpZGUg7YyM7J287J2EIOyXtCDsiJgg7JeG7Iq164uI64ukIgorCisjOiBzcmMvc3RhdGNtZC5jOjIyMgorbXNnaWQgImVycm9yIHJlbW92aW5nIHN0YXRvdmVycmlkZS1vbGQiCittc2dzdHIgInN0YXRvdmVycmlkZS1vbGTrpbwg7KeA7Jqw64qU642wIOyYpOulmOqwgCDrsJzsg53tlojsirXri4jri6QiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjI0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgbmV3IHN0YXRvdmVycmlkZS1vbGQiCittc2dzdHIgIuyDiCBzdGF0b3ZlcnJpZGUtb2xkIOunjOuTnOuKlOuNsCDsmKTrpZjqsIAg67Cc7IOd7ZaI7Iq164uI64ukIgorCisjOiBzcmMvc3RhdGNtZC5jOjIyNgorbXNnaWQgImVycm9yIGluc3RhbGxpbmcgbmV3IHN0YXRvdmVycmlkZSIKK21zZ3N0ciAi7IOIIHN0YXRvdmVycmlkZeulvCDshKTsuZjtlZjripTrjbAg7Jik66WY6rCAIOuwnOyDne2WiOyKteuLiOuLpCIKKworIzogc3JjL3N0YXRjbWQuYzoyNDYKK21zZ2lkICItLWFkZCBuZWVkcyBmb3VyIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS1hZGQg7Ji17IWY7J2AIOyduOyImOqwgCA06rCcIO2VhOyalO2VqeuLiOuLpCIKKworIzogc3JjL3N0YXRjbWQuYzoyNTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkFuIG92ZXJyaWRlIGZvciAnJXMnIGFscmVhZHkgZXhpc3RzLCBidXQgLS1mb3JjZSBzcGVjaWZpZWQgc28gd2lsbCBiZSAiCisiaWdub3JlZC4iCittc2dzdHIgIiIKKyInJXMn7J2EKOulvCkg7JyE7ZWcIG92ZXJyaWRl6rCAIOydtOuvuCDsnojsp4Drp4wsIC0tZm9yY2Ug7Ji17IWY7J2EIOyCrOyaqe2WiOycvOuvgOuhnCDrrLTsi5ztlanri4giCisi64ukLiIKKworIzogc3JjL3N0YXRjbWQuYzoyNjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiQW4gb3ZlcnJpZGUgZm9yICclcycgYWxyZWFkeSBleGlzdHMsIGFib3J0aW5nLiIKK21zZ3N0ciAiXCIlc1wi7J2EKOulvCkg7JyE7ZWcIG92ZXJyaWRl6rCAIOydtOuvuCDsnojsnYwuIOykkeyngC4iCisKKyM6IHNyYy9zdGF0Y21kLmM6MjcyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tdXBkYXRlIGdpdmVuIGJ1dCAlcyBkb2VzIG5vdCBleGlzdCIKK21zZ3N0ciAiLS11cGRhdGUg7Ji17IWY7J2EIOyCrOyaqe2WiOyngOunjCAlc+ydtCjqsIApIOyXhuyKteuLiOuLpCIKKworIzogc3JjL3N0YXRjbWQuYzoyOTYKK21zZ2lkICJObyBvdmVycmlkZSBwcmVzZW50LiIKK21zZ3N0ciAib3ZlcnJpZGXqsIAg7JeG7Iq164uI64ukLiIKKworIzogc3JjL3N0YXRjbWQuYzozMDQKK21zZ2lkICItLXVwZGF0ZSBpcyB1c2VsZXNzIGZvciAtLXJlbW92ZSIKK21zZ3N0ciAiLS1yZW1vdmUg66qF66C57JeQ7ISc64qUIC0tdXBkYXRlIOyYteyFmOydtCDrrLTsnZjrr7jtlanri4jri6QiCisKKyM6IHNyYy9zdGF0ZGIuYzo1OQorbXNnaWQgInN5bnRheCBlcnJvcjogaW52YWxpZCB1aWQgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIuusuOuylSDsmKTrpZg6IHN0YXRvdmVycmlkZSDtjIzsnbzsnZggVUlE6rCAIOyemOuqu+uQmOyXiOyKteuLiOuLpCIKKworIzogc3JjL3N0YXRkYi5jOjY0CisjLCBjLWZvcm1hdAorbXNnaWQgInN5bnRheCBlcnJvcjogdW5rbm93biB1c2VyICclcycgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIuusuOuylSDsmKTrpZg6IHN0YXRvdmVycmlkZSDtjIzsnbzsl5DshJwg7JWMIOyImCDsl4bripQg7IKs7Jqp7J6QICclcyciCisKKyM6IHNyYy9zdGF0ZGIuYzo4MworbXNnaWQgInN5bnRheCBlcnJvcjogaW52YWxpZCBnaWQgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIuusuOuylSDsmKTrpZg6IHN0YXRvdmVycmlkZSDtjIzsnbzsnZggR0lE6rCAIOyemOuqu+uQmOyXiOyKteuLiOuLpCIKKworIzogc3JjL3N0YXRkYi5jOjg4CisjLCBjLWZvcm1hdAorbXNnaWQgInN5bnRheCBlcnJvcjogdW5rbm93biBncm91cCAnJXMnIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICLrrLjrspUg7Jik66WYOiBzdGF0b3ZlcnJpZGUg7YyM7J287JeQ7IScIOyVjCDsiJgg7JeG64qUIOq3uOujuSAnJXMnIgorCisjOiBzcmMvc3RhdGRiLmM6MTA0Cittc2dpZCAic3ludGF4IGVycm9yOiBpbnZhbGlkIG1vZGUgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIuusuOuylSDsmKTrpZg6IHN0YXRvdmVycmlkZSDtjIzsnbzsl5DshJwg7J6Y66q765CcIOuqqOuTnCIKKworIzogc3JjL3N0YXRkYi5jOjEyNworbXNnaWQgImZhaWxlZCB0byBvcGVuIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJzdGF0b3ZlcnJpZGUg7YyM7J287J2EIOyXrOuKlOuNsCDsi6TtjKjtlojsirXri4jri6QiCisKKyM6IHNyYy9zdGF0ZGIuYzoxMzQKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgInN0YXRvdmVycmlkZSDtjIzsnbzsnZgg7KCV67O066W8IOydveuKlOuNsCDsi6TtjKjtlojsirXri4jri6QiCisKKyM6IHNyYy9zdGF0ZGIuYzoxMzcKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgcHJldmlvdXMgc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIuydtOyghOydmCBzdGF0b3ZlcnJpZGUg7YyM7J287J2YIOygleuztOulvCDsnb3ripTrjbAg7Iuk7Yyo7ZaI7Iq164uI64ukIgorCisjOiBzcmMvc3RhdGRiLmM6MTYyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJzdGF0b3ZlcnJpZGUgZmlsZSBgJS4yNTBzJyIKK21zZ2lkICJyZWFkaW5nIHN0YXRvdmVycmlkZSBmaWxlICclLjI1MHMnIgorbXNnc3RyICJzdGF0b3ZlcnJpZGUg7YyM7J28IGAlLjI1MHMnIgorCisjOiBzcmMvc3RhdGRiLmM6MTY5Cittc2dpZCAic3RhdG92ZXJyaWRlIGZpbGUgaXMgbWlzc2luZyBmaW5hbCBuZXdsaW5lIgorbXNnc3RyICJzdGF0b3ZlcnJpZGUg7YyM7J287JeQIOuniOyngOuniSDspITrsJTqv4jsnbQg67mg7KGM7Iq164uI64ukIgorCisjOiBzcmMvc3RhdGRiLmM6MTczCittc2dpZCAic3RhdG92ZXJyaWRlIGZpbGUgY29udGFpbnMgZW1wdHkgbGluZSIKK21zZ3N0ciAic3RhdG92ZXJyaWRlIO2MjOydvOyXkCDruYgg7KSE7J20IOuTpOyWtCDsnojsirXri4jri6QiCisKKyM6IHNyYy9zdGF0ZGIuYzoxNzggc3JjL3N0YXRkYi5jOjE5MCBzcmMvc3RhdGRiLmM6MjAyCittc2dpZCAic3ludGF4IGVycm9yIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJzdGF0b3ZlcnJpZGUg7YyM7J287JeQIOusuOuylSDsmKTrpZjqsIAg7J6I7Iq164uI64ukIgorCisjOiBzcmMvc3RhdGRiLmM6MTg2IHNyYy9zdGF0ZGIuYzoxOTggc3JjL3N0YXRkYi5jOjIxMAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGxpbmUgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgInN0YXRvdmVycmlkZSDtjIzsnbzsl5DshJwg6rCR7J6R7Iqk66CIIOykhOydtCDrgZ3rgqzsirXri4jri6QiCisKKyM6IHNyYy9zdGF0ZGIuYzoyMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAibXVsdGlwbGUgc3RhdHVzb3ZlcnJpZGVzIHByZXNlbnQgZm9yIGZpbGUgJyUuMjUwcyciCittc2dzdHIgIiclLjI1MHMnIO2MjOydvOyXkCDrjIDtlZwgc3RhdHVzb3ZlcnJpZGVzIO2MjOydvOydtCDsl6zrn6wg6rCcIOyeiOyKteuLiOuLpCIKKworIzogc3JjL3RyaWdjbWQuYzo0NgorbXNnaWQgIlR5cGUgZHBrZy10cmlnZ2VyIC0taGVscCBmb3IgaGVscCBhYm91dCB0aGlzIHV0aWxpdHkuIgorbXNnc3RyICLsnbQg7ZSE66Gc6re4656o7J2YIOuPhOybgOunkOydhCDrs7TroKTrqbQgZHBrZy10cmlnZ2VyIC0taGVscOulvCDsi6TtlontlZjsi63si5zsmKQuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjUxCisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiAlcyBwYWNrYWdlIHRyaWdnZXIgdXRpbGl0eSB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICLrjbDruYTslYggJXMg7Yyo7YKk7KeAIO2KuOumrOqxsCDtlITroZzqt7jrnqgg67KE7KCEICVzLlxuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjY3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJVc2FnZTogJXMgWzxvcHRpb25zPiAuLi5dIDx0cmlnZ2VyLW5hbWU+XG4iCisiICAgICAgICVzIFs8b3B0aW9ucz4gLi4uXSA8Y29tbWFuZD5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIuyCrOyaqeuylTogJXMgWzzsmLXshZg+IC4uLl0gPO2KuOumrOqxsOydtOumhD5cbiIKKyIgICAgICAgICVzIFs87Ji17IWYPiAuLi5dIDzrqoXroLk+XG4iCisiXG4iCisKKyM6IHNyYy90cmlnY21kLmM6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLS1jaGVjay1zdXBwb3J0ZWQgICAgICAgICAgICAgICAgQ2hlY2sgaWYgdGhlIHJ1bm5pbmcgZHBrZyBzdXBwb3J0cyAiCisidHJpZ2dlcnMuXG4iCisiXG4iCittc2dzdHIgIiIKKyLrqoXroLnslrQ6XG4iCisiICAtLWNoZWNrLXN1cHBvcnRlZCAgICAgICAgICAgICAgICDsi6Ttlokg7KSR7J24IGRwa2fqsIAg7Yq466as6rGw66W8IOyngOybkO2VmOuKlCDsp4BcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIOqygOyCrO2VqeuLiOuLpC5cbiIKKyJcbiIKKworIzogc3JjL3RyaWdjbWQuYzo4MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorIiAgLS1ieS1wYWNrYWdlPTxwYWNrYWdlPiAgICAgICAgICAgT3ZlcnJpZGUgdHJpZ2dlciBhd2FpdGVyIChub3JtYWxseSBzZXRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnkgZHBrZykuXG4iCisiICAtLW5vLWF3YWl0ICAgICAgICAgICAgICAgICAgICAgICBObyBwYWNrYWdlIG5lZWRzIHRvIGF3YWl0IHRoZSAiCisicHJvY2Vzc2luZy5cbiIKKyIgIC0tbm8tYWN0ICAgICAgICAgICAgICAgICAgICAgICAgIEp1c3QgdGVzdCAtIGRvbid0IGFjdHVhbGx5IGNoYW5nZSAiCisiYW55dGhpbmcuXG4iCisiXG4iCittc2dzdHIgIiIKKyLsmLXshZg6XG4iCisiICAtLWFkbWluZGlyPTzrlJTroInthLDrpqw+ICAgICAgICAgICAgJXMg64yA7Iug7JeQIDzrlJTroInthLDrpqw+66W8IOyCrOyaqe2VqeuLiOuLpC5cbiIKKyIgIC0tYnktcGFja2FnZT087Yyo7YKk7KeAPiAgICAgICAgICAgICjrs7TthrUgZHBrZ+qwgCDshKTsoJXtlZjripQpIO2KuOumrOqxsCDrjIDquLDrpbxcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg66y07Iuc7ZWp64uI64ukLlxuIgorIiAgLS1uby1hd2FpdCAgICAgICAgICAgICAgICAgICAgICAg7LKY66as66W8IOq4sOuLpOumrOuKlCDtjKjtgqTsp4DqsIAg7JeG7Iq164uI64ukLlxuIgorIiAgLS1uby1hY3QgICAgICAgICAgICAgICAgICAgICAgICAg7YWM7Iqk7Yq47JqpIC0g7Iuk7KCc66GcIOyVhOustOqyg+uPhCDrsJTqvrjsp4Ag7JWK7Iq164uIIgorIuuLpC5cbiIKKyJcbiIKKworIzogc3JjL3RyaWdjbWQuYzoxNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IHRyaWdnZXJzIGRhdGEgZGlyZWN0b3J5IG5vdCB5ZXQgY3JlYXRlZFxuIgorbXNnc3RyICIlczog7Yq466as6rGwIOuNsOydtO2EsCDrlJTroInthLDrpqzrpbwg7JWE7KeBIOunjOuTpOyngCDslYrslZjsirXri4jri6RcbiIKKworIzogc3JjL3RyaWdjbWQuYzoxNTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IHRyaWdnZXIgcmVjb3JkcyBub3QgeWV0IGluIGV4aXN0ZW5jZVxuIgorbXNnc3RyICIlczog7Yq466as6rGwIOq4sOuhneydtCDslYTsp4Eg7JeG7Iq164uI64ukXG4iCisKKyM6IHNyYy90cmlnY21kLmM6MjA1Cittc2dpZCAidGFrZXMgb25lIGFyZ3VtZW50LCB0aGUgdHJpZ2dlciBuYW1lIgorbXNnc3RyICLtlZwg6rCc7J2YIOyduOyekOulvCDrsJvsirXri4jri6QgKO2KuOumrOqxsCDsnbTrpoQpIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIxMAorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiZHBrZy10cmlnZ2VyIG11c3QgYmUgY2FsbGVkIGZyb20gYSBtYWludGFpbmVyIHNjcmlwdCAob3Igd2l0aCBhIC0tYnktIgorI3wgInBhY2thZ2Ugb3B0aW9uKSIKK21zZ2lkICJtdXN0IGJlIGNhbGxlZCBmcm9tIGEgbWFpbnRhaW5lciBzY3JpcHQgKG9yIHdpdGggYSAtLWJ5LXBhY2thZ2Ugb3B0aW9uKSIKK21zZ3N0ciAiIgorImRwa2ctdHJpZ2dlcuuKlCDrqZTsnbjthYzsnbTrhIgg7Iqk7YGs66a97Yq47JeQ7IScIOyLpO2Wie2VtOyVvCDtlanri4jri6QgKOyVhOuLiOuptCAtLWJ5LXBhY2thZ2UgIgorIuyYteyFmOydhCDsgqzsmqntlbTslbwg7ZWp64uI64ukKSIKKworIzogc3JjL3RyaWdjbWQuYzoyMTUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImRwa2ctdHJpZ2dlcjogaWxsZWdhbCBhd2FpdGVkIHBhY2thZ2UgbmFtZSBgJS4yNTBzJzogJS4yNTBzIgorbXNnaWQgImlsbGVnYWwgYXdhaXRlZCBwYWNrYWdlIG5hbWUgJyUuMjUwcyc6ICUuMjUwcyIKK21zZ3N0ciAiZHBrZy10cmlnZ2VyOiDrjIDquLDspJHsnbgg7Yyo7YKk7KeAIOydtOumhOydtCAoYCUuMjUwcycpIOyemOuqu+uQmOyXiOyKteuLiOuLpDogJS4yNTBzIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIyMQorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHRyaWdnZXIgbmFtZSBgJS4yNTBzJzogJS4yNTBzIgorbXNnc3RyICLtirjrpqzqsbAg7J2066aE7J20ICgnJS4yNTBzJykg7J6Y66q765CY7JeI7Iq164uI64ukOiAlLjI1MHMiCisKKyM6IHNyYy90cmlncHJvYy5jOjI1MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IGN5Y2xlIGZvdW5kIHdoaWxlIHByb2Nlc3NpbmcgdHJpZ2dlcnM6XG4iCisiIGNoYWluIG9mIHBhY2thZ2VzIHdob3NlIHRyaWdnZXJzIGFyZSBvciBtYXkgYmUgcmVzcG9uc2libGU6XG4iCittc2dzdHIgIiIKKyIlczog7Yq466as6rGw66W8IOyymOumrO2VmOuKlCDspJEg67CY67O17J20IOuwnOqyrOuQmOyXiOyKteuLiOuLpDpcbiIKKyIg7Yq466as6rGw6rCAIOyeiOuKlCDtjKjtgqTsp4DsnZgg7Jew6rKw7JeQIOusuOygnOqwgCDsnojsirXri4jri6Q6XG4iCisKKyM6IHNyYy90cmlncHJvYy5jOjI1OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiIHBhY2thZ2VzJyBwZW5kaW5nIHRyaWdnZXJzIHdoaWNoIGFyZSBvciBtYXkgYmUgdW5yZXNvbHZhYmxlOlxuIgorbXNnc3RyICIiCisiXG4iCisiIO2VtOqysOydtCDrtojqsIDriqXtlZwg7Yyo7YKk7KeA7J2YIOuwgOumsCDtirjrpqzqsbA6XG4iCisKKyM6IHNyYy90cmlncHJvYy5jOjI4MQorbXNnaWQgInRyaWdnZXJzIGxvb3BpbmcsIGFiYW5kb25lZCIKK21zZ3N0ciAi7Yq466as6rGw6rCAIOuwmOuzte2VmOqzoCDsnojsnLzrr4DroZwg7KeA7JuB64uI64ukIgorCisjOiBzcmMvdHJpZ3Byb2MuYzozMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHJvY2Vzc2luZyB0cmlnZ2VycyBmb3IgJXMgLi4uXG4iCittc2dzdHIgIiVz7JeQIOuMgO2VnCDtirjrpqzqsbDrpbwg7LKY66as7ZWY64qUIOykkeyeheuLiOuLpCAuLi5cbiIKKworIzogc3JjL3VwZGF0ZS5jOjUyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICItLSVzIG5lZWRzIGV4YWN0bHkgb25lIFBhY2thZ2VzIGZpbGUgYXJndW1lbnQiCittc2dpZCAiLS0lcyBuZWVkcyBleGFjdGx5IG9uZSBQYWNrYWdlcy1maWxlIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIOyYteyFmOydgCDsoJXtmZXtnogg7ZWY64KY7J2YIFBhY2thZ2VzIO2MjOydvCDsnbjsiJjrp4zsnYQg67Cb7Iq164uI64ukIgorCisjOiBzcmMvdXBkYXRlLmM6NjIKK21zZ2lkICJ1bmFibGUgdG8gYWNjZXNzIGRwa2cgc3RhdHVzIGFyZWEgZm9yIGJ1bGsgYXZhaWxhYmxlIHVwZGF0ZSIKK21zZ3N0ciAi7IKs7JqpIOqwgOuKpSDrqqnroZ3snYQg7JeF642w7J207Yq47ZWY66Ck64qU642wIGRwa2cg7IOB7YOcIOyYgeyXreyXkCDsoJHqt7ztlaAg7IiYIOyXhuyKteuLiOuLpCIKKworIzogc3JjL3VwZGF0ZS5jOjY0Cittc2dpZCAiYnVsayBhdmFpbGFibGUgdXBkYXRlIHJlcXVpcmVzIHdyaXRlIGFjY2VzcyB0byBkcGtnIHN0YXR1cyBhcmVhIgorbXNnc3RyICIiCisi7IKs7JqpIOqwgOuKpSDrqqnroZ3snYQg7JeF642w7J207Yq47ZWY66Ck66m0IGRwa2cg7IOB7YOcIOyYgeyXreyXkCDsk7DquLAg6raM7ZWc7J20IOyeiOyWtOyVvCDtlanri4jri6QiCisKKyM6IHNyYy91cGRhdGUuYzo3MQorIywgYy1mb3JtYXQKK21zZ2lkICJSZXBsYWNpbmcgYXZhaWxhYmxlIHBhY2thZ2VzIGluZm8sIHVzaW5nICVzLlxuIgorbXNnc3RyICIlc+ydhCjrpbwpIOyCrOyaqe2VmOyXrCDsnbTsmqnqsIDriqXtlZwg7Yyo7YKk7KeAIOygleuztOulvCDrjIDssrTtlZjripQg7KSR7J6F64uI64ukLlxuIgorCisjOiBzcmMvdXBkYXRlLmM6NzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiVXBkYXRpbmcgYXZhaWxhYmxlIHBhY2thZ2VzIGluZm8sIHVzaW5nICVzLlxuIgorbXNnc3RyICIlc+ydhCjrpbwpIOyCrOyaqe2VmOyXrCDsnbTsmqnqsIDriqXtlZwg7Yyo7YKk7KeAIOygleuztOulvCDsl4XrjbDsnbTtirjtlZjripQg7KSR7J6F64uI64ukLlxuIgorCisjOiBzcmMvdXBkYXRlLmM6MTAxCisjLCBjLWZvcm1hdAorbXNnaWQgIkluZm9ybWF0aW9uIGFib3V0ICVkIHBhY2thZ2Ugd2FzIHVwZGF0ZWQuXG4iCittc2dpZF9wbHVyYWwgIkluZm9ybWF0aW9uIGFib3V0ICVkIHBhY2thZ2VzIHdhcyB1cGRhdGVkLlxuIgorbXNnc3RyWzBdICIlZOqwnOydmCDtjKjtgqTsp4Dsl5Ag64yA7ZWcIOygleuztOqwgCDsl4XrjbDsnbTtirjrkJjsl4jsirXri4jri6QuXG4iCisKKyM6IHNyYy91cGRhdGUuYzoxMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm9ic29sZXRlICctLSVzJyBvcHRpb24sIHVuYXZhaWxhYmxlIHBhY2thZ2VzIGFyZSBhdXRvbWF0aWNhbGx5IGNsZWFuZWQgdXAuIgorbXNnc3RyICIiCisiJy0tJXMnIOyYteyFmOydgCDrjZQg7J207IOBIOyCrOyaqe2VmOyngCDslYrsirXri4jri6QuIOyCrOyaqe2VoCDsiJgg7JeG64qUIO2MqO2CpOyngOulvCDsnpDrj5nsnLzroZwg7KeAIgorIuybgeuLiOuLpC4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgbmFtZSAnJS41MHMuLi4nIGlzIHRvbyBsb25nIgorbXNnc3RyICInJS41MHMuLi4nIO2MjOydvOuqheydtCDrhIjrrLQg6rmB64uI64ukIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjEyOQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBmaWxlIG5hbWUgJyUuMjUwcyciCittc2dzdHIgIiclLjI1MHMnIO2MjOydvOydmCDsoJXrs7Trpbwg7J297J2EIOyImCDsl4bsirXri4jri6QiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTg5Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgY29udHJvbCBkaXJlY3RvcnkiCittc2dzdHIgIuy7qO2KuOuhpCDrlJTroInthLDrpqzsnZgg7KCV67O066W8IOydveydhCDsiJgg7JeG7Iq164uI64ukIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjE5MQorbXNnaWQgImNvbnRyb2wgZGlyZWN0b3J5IGlzIG5vdCBhIGRpcmVjdG9yeSIKK21zZ3N0ciAi7Luo7Yq466GkIOuUlOugie2EsOumrOqwgCDrlJTroInthLDrpqzqsIAg7JWE64uZ64uI64ukIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjE5MworIywgYy1mb3JtYXQKK21zZ2lkICJjb250cm9sIGRpcmVjdG9yeSBoYXMgYmFkIHBlcm1pc3Npb25zICUwM2xvIChtdXN0IGJlID49MDc1NSBhbmQgPD0wNzc1KSIKK21zZ3N0ciAiIgorIuy7qO2KuOuhpCDrlJTroInthLDrpqzsnZgg6raM7ZWc7J20IOyemOuqu+uQmOyXiOyKteuLiOuLpCA6ICUwM2xvICg+PTA3NTUg67CPIDw9MDc3NeydtOyWtOyVvCDtlanri4giCisi64ukKSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAibWFpbnRhaW5lciBzY3JpcHQgYCUuNTBzJyBpcyBub3QgYSBwbGFpbiBmaWxlIG9yIHN5bWxpbmsiCittc2dzdHIgIuq0gOumrOyekCDsiqTtgazrpr3tirggYCUuNTBzJ+ydgCjripQpIOydvOuwmCDtjIzsnbzsnbQg7JWE64uI6rGw64KYIOyLrOuzvOumrSDrp4HtgazsnoXri4jri6QiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjA3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJtYWludGFpbmVyIHNjcmlwdCBgJS41MHMnIGhhcyBiYWQgcGVybWlzc2lvbnMgJTAzbG8gKG11c3QgYmUgPj0wNTU1IGFuZCAiCisiPD0wNzc1KSIKK21zZ3N0ciAiIgorIuq0gOumrOyekCDsiqTtgazrpr3tirggYCUuNTBzJ+ydmCDqtoztlZzsnbQg7J6Y66q765CY7JeI7Iq164uI64ukIDogJTAzbG8gKD49MDU1NSDrsI8gPD0wNzc17J207Ja0IgorIuyVvCDtlanri4jri6QpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjIxMQorIywgYy1mb3JtYXQKK21zZ2lkICJtYWludGFpbmVyIHNjcmlwdCBgJS41MHMnIGlzIG5vdCBzdGF0dGFibGUiCittc2dzdHIgIuq0gOumrOyekCDsiqTtgazrpr3tirggYCUuNTBzJ+ydmCDsoJXrs7Trpbwg7J297J2EIOyImCDsl4bsirXri4jri6QiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjM3Cittc2dpZCAiZXJyb3Igb3BlbmluZyBjb25mZmlsZXMgZmlsZSIKK21zZ3N0ciAiY29uZmZpbGUg7YyM7J287J2EIOyXrOuKlOuNsCDsmKTrpZjqsIAg67Cc7IOd7ZaI7Iq164uI64ukIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI0NgorbXNnaWQgImVtcHR5IHN0cmluZyBmcm9tIGZnZXRzIHJlYWRpbmcgY29uZmZpbGVzIgorbXNnc3RyICLsoJXrs7Qg7YyM7J287J2EIOydveuKlCBmZ2V0c+yXkOyEnCDruYgg66y47J6Q7Je07J2EIOumrO2EtO2WiOyKteuLiOuLpCIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgbmFtZSAnJS41MHMuLi4nIGlzIHRvbyBsb25nLCBvciBtaXNzaW5nIGZpbmFsIG5ld2xpbmUiCittc2dzdHIgIiIKKyLshKTsoJUg7YyM7J287J2YIOydtOumhCgnJS41MHMuLi4nKeydtCDrhIjrrLQg6ri46rGw64KYIOuniOyngOunieyXkCDspITrsJTqv4gg66y47J6Q6rCAIOu5oOyhjOyKteuLiOuLpCIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgZmlsZW5hbWUgJyVzJyBjb250YWlucyB0cmFpbGluZyB3aGl0ZSBzcGFjZXMiCittc2dzdHIgIuyEpOyglSDtjIzsnbzsnZgg7J2066aEICclcycg64Gd7JeQIOqzteuwseusuOyekOqwgCDsnojsirXri4jri6QiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjY2CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIGAlLjI1MHMnIGRvZXMgbm90IGFwcGVhciBpbiBwYWNrYWdlIgorbXNnc3RyICJgJS4yNTBzJyDshKTsoJUg7YyM7J287J20IO2MqO2CpOyngCDslYjsl5Ag7JeG7Iq164uI64ukIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI2OAorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBgJS4yNTBzJyBpcyBub3Qgc3RhdHRhYmxlIgorbXNnc3RyICJgJS4yNTBzJyDshKTsoJUg7YyM7J287J2YIOygleuztOulvCDsnb3snYQg7IiYIOyXhuyKteuLiOuLpCIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgJyVzJyBpcyBub3QgYSBwbGFpbiBmaWxlIgorbXNnc3RyICInJS4yNTBzJyDshKTsoJUg7YyM7J287J20IOydvOuwmCDtjIzsnbzsnbQg7JWE64uZ64uI64ukIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI3NAorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBuYW1lICclcycgaXMgZHVwbGljYXRlZCIKK21zZ3N0ciAiJyVzJyDshKTsoJUg7YyM7J28IOydtOumhOydtCDspJHrs7XrkJjsl4jsirXri4jri6QiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6Mjg3Cittc2dpZCAiZXJyb3IgcmVhZGluZyBjb25mZmlsZXMgZmlsZSIKK21zZ3N0ciAiY29uZmZpbGUg7YyM7J287J2EIOydveuKlOuNsCDsmKTrpZjqsIAg67Cc7IOd7ZaI7Iq164uI64ukIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjMzOQorbXNnaWQgInBhY2thZ2UgbmFtZSBoYXMgY2hhcmFjdGVycyB0aGF0IGFyZW4ndCBsb3dlcmNhc2UgYWxwaGFudW1zIG9yIGAtKy4nIgorbXNnc3RyICLtjKjtgqTsp4Ag7J2066aE7JeQIOyYgeusuCDshozrrLjsnpDrgpgg7Iir7J6Q64KYIGAtKy4n7J20IOyVhOuLjCDrrLjsnpDqsIAg65Ok7Ja0IOyeiOyKteuLiOuLpCIKKworIzogZHBrZy1kZWIvYnVpbGQuYzozNDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBjb250YWlucyB1c2VyLWRlZmluZWQgUHJpb3JpdHkgdmFsdWUgJyVzJyIKK21zZ3N0ciAiJyVzJ+yXkCDsgqzsmqnsnpAg7KCV7J2YIOyasOyEoOyInOychCDqsJIgJyVzJ+ydtCjqsIApIOuTpOyWtCDsnojsirXri4jri6QiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MzQ3CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgY29udGFpbnMgdXNlci1kZWZpbmVkIGZpZWxkICclcyciCittc2dzdHIgIiclcyfsl5Ag7IKs7Jqp7J6QIOygleydmCDtlYTrk5wgYCVzJ+ydtCjqsIApIOuTpOyWtCDsnojsirXri4jri6QiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MzU4CisjLCBjLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nICVkIHdhcm5pbmcgYWJvdXQgdGhlIGNvbnRyb2wgZmlsZShzKVxuIgorbXNnaWRfcGx1cmFsICJpZ25vcmluZyAlZCB3YXJuaW5ncyBhYm91dCB0aGUgY29udHJvbCBmaWxlKHMpXG4iCittc2dzdHJbMF0gIuy7qO2KuOuhpCDtjIzsnbzqs7wg6rSA66Co65CcICVk6rCcIOqyveqzoOulvCDrrLTsi5ztlanri4jri6RcbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MDMgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MjkKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDM2CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSA8ZGlyZWN0b3J5PiBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyDsmLXshZjsnYAgPOuUlOugie2EsOumrD4g7J247IiY6rCAIO2VhOyalO2VqeuLiOuLpCIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MDkKK21zZ2lkICItLWJ1aWxkIHRha2VzIGF0IG1vc3QgdHdvIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS1idWlsZCDsmLXshZjsnYAg7LWc64yAIOuRkCDqsJzsnZgg7J247IiY66W8IOuwm+yKteuLiOuLpCIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoZWNrIGZvciBleGlzdGVuY2Ugb2YgYXJjaGl2ZSBgJS4yNTBzJyIKK21zZ3N0ciAiYCUuMjUwcycg7JWE7Lm07J2067iM6rCAIOyeiOuKlCDsp4Ag7Jes67aA66W8IOqygOyCrO2VoCDsiJgg7JeG7Iq164uI64ukIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQzMAorbXNnaWQgInRhcmdldCBpcyBkaXJlY3RvcnkgLSBjYW5ub3Qgc2tpcCBjb250cm9sIGZpbGUgY2hlY2siCittc2dzdHIgIuuMgOyDgeydtCDrlJTroInthLDrpqzsnoXri4jri6QgLSDsu6jtirjroaQg7YyM7J28IOqygOyCrOulvCDqsbTrhIgg65u4IOyImCDsl4bsirXri4jri6QiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDMxCittc2dpZCAibm90IGNoZWNraW5nIGNvbnRlbnRzIG9mIGNvbnRyb2wgYXJlYS4iCittc2dzdHIgIuy7qO2KuOuhpCDsmIHsl63snZgg64K07Jqp7J2EIOqygOyCrO2VmOyngCDslYrsirXri4jri6QuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQzMgorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnLWRlYjogYnVpbGRpbmcgYW4gdW5rbm93biBwYWNrYWdlIGluICclcycuXG4iCittc2dzdHIgImRwa2ctZGViOiDslYwg7IiYIOyXhuuKlCDtjKjtgqTsp4Ag67mM65Oc7ZWY64qUIOykkeyeheuLiOuLpCAoJyVzJ+yXkOyEnCkuXG4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDM5CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2ctZGViOiBidWlsZGluZyBwYWNrYWdlIGAlcycgaW4gYCVzJy5cbiIKK21zZ3N0ciAiZHBrZy1kZWI6IGAlcycg7Yyo7YKk7KeAIOu5jOuTnO2VmOuKlCDspJHsnoXri4jri6QgKGAlcyfsl5DshJwpLlxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ2NyBkcGtnLWRlYi9idWlsZC5jOjUyMQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIG1ha2UgdG1wZmlsZSAoZGF0YSkiCittc2dpZCAiZmFpbGVkIHRvIG1ha2UgdGVtcG9yYXJ5IGZpbGUgKCVzKSIKK21zZ3N0ciAi7J6E7IucIO2MjOydvOydhCDrp4zrk5zripTrjbAg7Iuk7Yyo7ZaI7Iq164uI64ukICjrjbDsnbTthLApIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ2NyBkcGtnLWRlYi9idWlsZC5jOjQ3MCBkcGtnLWRlYi9idWlsZC5jOjQ3NworIzogZHBrZy1kZWIvYnVpbGQuYzo0ODUgZHBrZy1kZWIvYnVpbGQuYzo0OTQgZHBrZy1kZWIvYnVpbGQuYzo0OTkKKyMsIGZ1enp5CisjfCBtc2dpZCAiY29udHJvbCIKK21zZ2lkICJjb250cm9sIG1lbWJlciIKK21zZ3N0ciAi7Luo7Yq466GkIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ3MCBkcGtnLWRlYi9idWlsZC5jOjUyNAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIHVubGluayB0bXBmaWxlIChkYXRhKSwgJXMiCittc2dpZCAiZmFpbGVkIHRvIHVubGluayB0ZW1wb3JhcnkgZmlsZSAoJXMpLCAlcyIKK21zZ3N0ciAi7J6E7IucIO2MjOydvOydhCDsp4DsmrDripTrjbAg7Iuk7Yyo7ZaI7Iq164uI64ukICjrjbDsnbTthLApLCAlcyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0ODUgZHBrZy1kZWIvYnVpbGQuYzo1OTMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdG1wZmlsZSAoZGF0YSkiCittc2dpZCAiZmFpbGVkIHRvIHJld2luZCB0ZW1wb3JhcnkgZmlsZSAoJXMpIgorbXNnc3RyICLsnoTsi5wg7YyM7J287J2YIOyVnuycvOuhnCDsnbTrj5ntlZjripTrjbAg7Iuk7Yyo7ZaI7Iq164uI64ukICjrjbDsnbTthLApIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ5NAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGFyIG1lbWJlciBmaWxlICglcykiCittc2dpZCAiZmFpbGVkIHRvIHN0YXQgdGVtcG9yYXJ5IGZpbGUgKCVzKSIKK21zZ3N0ciAiYXIg66mk67KEIO2MjOydvOydmCDsoJXrs7Trpbwg7J2964qU642wIOyLpO2MqO2WiOyKteuLiOuLpCAoJXMpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ5OAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciB3cml0aW5nIGAlcyciCittc2dzdHIgImAlcycg7YyM7J287J2EIOyTsOuKlOuNsCDsmKTrpZjqsIAg67Cc7IOd7ZaI7Iq164uI64ukIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjUyMSBkcGtnLWRlYi9idWlsZC5jOjUyNCBkcGtnLWRlYi9idWlsZC5jOjU0NgorIzogZHBrZy1kZWIvYnVpbGQuYzo1NzIgZHBrZy1kZWIvYnVpbGQuYzo1ODAgZHBrZy1kZWIvYnVpbGQuYzo1OTMKKyMsIGZ1enp5CisjfCBtc2dpZCAiYmV0d2VlbiBtZW1iZXJzIgorbXNnaWQgImRhdGEgbWVtYmVyIgorbXNnc3RyICLrqaTrsoQiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTcxIGRwa2ctZGViL2J1aWxkLmM6NTgwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gd3JpdGUgZmlsZW5hbWUgdG8gdGFyIHBpcGUgKGRhdGEpIgorbXNnaWQgImZhaWxlZCB0byB3cml0ZSBmaWxlbmFtZSB0byB0YXIgcGlwZSAoJXMpIgorbXNnc3RyICLtjIzsnbwg7J2066aE7J2EIHRhciDtjIzsnbTtlITsl5Ag7JOw64qU642wIOyLpO2MqO2WiOyKteuLiOuLpCAo642w7J207YSwKSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo1ODQKK21zZ2lkICI8Y29tcHJlc3M+IGZyb20gdGFyIC1jZiIKK21zZ3N0ciAidGFyIC1jZuyXkOyEnCDslZXstpUiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzo2MSBkcGtnLWRlYi9leHRyYWN0LmM6NjMKK21zZ2lkICJzaGVsbCBjb21tYW5kIHRvIG1vdmUgZmlsZXMiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjcwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGZpbGUgaW4gJXMgaW4gJS4yNTVzIgorbXNnc3RyICIlMiQuMjU1cyDslYjsnZggJTEkcyDslYjsl5DshJwg7JiI7IOB7LmYIOuqu+2VmOqyjCDtjIzsnbzsnbQg64Gd64Ks7Iq164uI64ukIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcmVhZGluZyAlcyBmcm9tIGZpbGUgJS4yNTVzIgorbXNnc3RyICIlMiQuMjU1c+yXkOyEnCAlMSRzIOydveq4sOyXkCDsmKTrpZjqsIAg67Cc7IOd7ZaI7Iq164uI64ukIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTI1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZWFkIGFyY2hpdmUgYCUuMjU1cyciCittc2dzdHIgImAlLjI1NXMnIOyVhOy5tOydtOu4jOulvCDsnb3ripTrjbAg7Iuk7Yyo7ZaI7Iq164uI64ukIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTI3Cittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGFyY2hpdmUiCittc2dzdHIgIuyVhOy5tOydtOu4jCDtjIzsnbzsnZgg7KCV67O066W8IOydveuKlOuNsCDsi6TtjKjtlojsirXri4jri6QiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxMzEKKyMsIGZ1enp5CisjfCBtc2dpZCAiYXJjaGl2ZSBoYXMgbm8gZG90IGluIHZlcnNpb24gbnVtYmVyIgorbXNnaWQgImFyY2hpdmUgbWFnaWMgdmVyc2lvbiBudW1iZXIiCittc2dzdHIgIuyVhOy5tOydtOu4jOydmCDrsoTsoIQg67KI7Zi47JeQIOygkOydtCDsl4bsirXri4jri6QiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNDMKKyMsIGZ1enp5CisjfCBtc2dpZCAiYXJjaGl2ZSBoYXMgbm8gbmV3bGluZXMgaW4gaGVhZGVyIgorbXNnaWQgImFyY2hpdmUgbWVtYmVyIGhlYWRlciIKK21zZ3N0ciAi7JWE7Lm07J2067iM7J2YIO2XpOuNlOyXkCDspITrsJTqv4jsnbQg7JeG7Iq164uI64ukIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTQ4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgcGFydCBudW1iZXIiCittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIGFyY2hpdmUgaGVhZGVyIG1hZ2ljIgorbXNnc3RyICJgJS4yNTBzJyDtjIzsnbzsnbQg7IaQ7IOB65CY7JeI7Iq164uI64ukIC0g6rWs7ISxIOyalOyGjCDrsojtmLjqsIAg7J6Y66q765CY7JeI7Iq164uI64ukIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTU1CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgbm90IGEgZGViaWFuIGJpbmFyeSBhcmNoaXZlICh0cnkgZHBrZy1zcGxpdD8pIgorbXNnc3RyICIiCisiYCUuMjUwcycg7YyM7J287J2AIOuNsOu5hOyViCDrsJTsnbTrhIjrpqwg7JWE7Lm07J2067iM6rCAIOyVhOuLmeuLiOuLpCAoZHBrZy1zcGxpdOydhCDsi5zrj4TtlbQg67O07IutIgorIuyLnOyYpD8pIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTU5CisjLCBmdXp6eQorI3wgbXNnaWQgImFyY2hpdmUgaGFzIG5vIGRvdCBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ2lkICJhcmNoaXZlIGluZm9ybWF0aW9uIGhlYWRlciBtZW1iZXIiCittc2dzdHIgIuyVhOy5tOydtOu4jOydmCDrsoTsoIQg67KI7Zi47JeQIOygkOydtCDsl4bsirXri4jri6QiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNjIKK21zZ2lkICJhcmNoaXZlIGhhcyBubyBuZXdsaW5lcyBpbiBoZWFkZXIiCittc2dzdHIgIuyVhOy5tOydtOu4jOydmCDtl6TrjZTsl5Ag7KSE67CU6r+I7J20IOyXhuyKteuLiOuLpCIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE2NQorbXNnaWQgImFyY2hpdmUgaGFzIG5vIGRvdCBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAi7JWE7Lm07J2067iM7J2YIOuyhOyghCDrsojtmLjsl5Ag7KCQ7J20IOyXhuyKteuLiOuLpCIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE2OAorIywgYy1mb3JtYXQKK21zZ2lkICJhcmNoaXZlIHZlcnNpb24gJS4yNTBzIG5vdCB1bmRlcnN0b29kLCBnZXQgbmV3ZXIgZHBrZy1kZWIiCittc2dzdHIgIiIKKyLslYTsubTsnbTruIzsnZggJS4yNTBzIOuyhOyghCDtmJXsi53snYQg7JWM7KeAIOuqu+2VqeuLiOuLpC4g642UIOy1nOyLoOydmCBkcGtnLWRlYuydhCDsnbTsmqntlZjsi63si5wiCisi7JikIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTc5IGRwa2ctZGViL2V4dHJhY3QuYzoyMDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInNraXBwZWQgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ2lkICJza2lwcGVkIGFyY2hpdmUgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ3N0ciAiJXPsl5DshJwg66mk67KEIOuNsOydtO2EsOulvCDqsbTrhIgg65yB64uI64ukIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTk0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGNvbnRhaW5zIHVudW5kZXJzdG9vZCBkYXRhIG1lbWJlciAlLipzLCBnaXZpbmcgdXAiCittc2dpZCAiYXJjaGl2ZSAnJS4yNTBzJyBjb250YWlucyBub3QgdW5kZXJzdG9vZCBkYXRhIG1lbWJlciAlLipzLCBnaXZpbmcgdXAiCittc2dzdHIgIiIKKyJgJS4yNTBzJyDtjIzsnbzsl5Ag7J207ZW07ZWgIOyImCDsl4bripQg642w7J207YSwIOuppOuyhCglLipzKeqwgCDsnojsirXri4jri6QuIO2PrOq4sO2VqeuLiOuLpCIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE5OQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZSBgJS4yNTBzJyBjb250YWlucyB0d28gY29udHJvbCBtZW1iZXJzLCBnaXZpbmcgdXAiCittc2dpZCAiYXJjaGl2ZSAnJS4yNTBzJyBjb250YWlucyB0d28gY29udHJvbCBtZW1iZXJzLCBnaXZpbmcgdXAiCittc2dzdHIgImAlLjI1MHMnIO2MjOydvOyXkCDrkZAg6rCc7J2YIOy7qO2KuOuhpCDrqaTrsoTqsIAg7J6I7Iq164uI64ukLiDtj6zquLDtlanri4jri6QiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyMTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIgbmV3IGRlYmlhbiBwYWNrYWdlLCB2ZXJzaW9uICVzLlxuIgorI3wgIiBzaXplICVsZCBieXRlczogY29udHJvbCBhcmNoaXZlPSAlemkgYnl0ZXMuXG4iCittc2dpZCAiIgorIiBuZXcgZGViaWFuIHBhY2thZ2UsIHZlcnNpb24gJXMuXG4iCisiIHNpemUgJWpkIGJ5dGVzOiBjb250cm9sIGFyY2hpdmU9ICVqZCBieXRlcy5cbiIKK21zZ3N0ciAiIgorIiDsg4gg642w67mE7JWIIO2MqO2CpOyngCwg67KE7KCEICVzLlxuIgorIiDtgazquLAgJWxk67CU7J207Yq4OiDsu6jtirjroaQg7JWE7Lm07J2067iMPSAlemnrsJTsnbTtirhcbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIzMgorbXNnaWQgImFyY2hpdmUgY29udHJvbCBtZW1iZXIgc2l6ZSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjM1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJhcmNoaXZlIGhhcyBtYWxmb3JtYXR0ZWQgY29udHJvbCBsZW5ndGggYCVzJyIKK21zZ2lkICJhcmNoaXZlIGhhcyBtYWxmb3JtYXR0ZWQgY29udHJvbCBtZW1iZXIgc2l6ZSAnJXMnIgorbXNnc3RyICLslYTsubTsnbTruIzsnZgg7Luo7Yq466GkIOq4uOydtCBgJXMn7J2YIO2YleyLneydtCDti4DroLjsirXri4jri6QiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNDIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInNraXBwZWQgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ2lkICJza2lwcGVkIGFyY2hpdmUgY29udHJvbCBtZW1iZXIgZGF0YSBmcm9tICVzIgorbXNnc3RyICIlc+yXkOyEnCDrqaTrsoQg642w7J207YSw66W8IOqxtOuEiCDrnIHri4jri6QiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNDYKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIgb2xkIGRlYmlhbiBwYWNrYWdlLCB2ZXJzaW9uICVzLlxuIgorI3wgIiBzaXplICVsZCBieXRlczogY29udHJvbCBhcmNoaXZlPSAlemksIG1haW4gYXJjaGl2ZT0gJWxkLlxuIgorbXNnaWQgIiIKKyIgb2xkIGRlYmlhbiBwYWNrYWdlLCB2ZXJzaW9uICVzLlxuIgorIiBzaXplICVqZCBieXRlczogY29udHJvbCBhcmNoaXZlPSAlamQsIG1haW4gYXJjaGl2ZT0gJWpkLlxuIgorbXNnc3RyICIiCisiIOyYm+uCoCDrjbDruYTslYgg7Yyo7YKk7KeALCDrsoTsoIQgJXMuXG4iCisiIO2BrOq4sCAlbGTrsJTsnbTtirg6IOy7qO2KuOuhpCDslYTsubTsnbTruIw9ICV6aSwg7KO8IOyVhOy5tOydtOu4jD0gJWxkLlxuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjU1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnLWRlYjogZmlsZSBsb29rcyBsaWtlIGl0IG1pZ2h0IGJlIGFuIGFyY2hpdmUgd2hpY2ggaGFzIGJlZW5cbiIKKyJkcGtnLWRlYjogICAgY29ycnVwdGVkIGJ5IGJlaW5nIGRvd25sb2FkZWQgaW4gQVNDSUkgbW9kZVxuIgorbXNnc3RyICIiCisiZHBrZy1kZWI6IO2MjOydvOydtCDrp4jsuZggQVNDSUkg66qo65Oc66GcIOuLpOyatOuhnOuTnO2VmOuKlCDqs7zsoJXsl5DshJxcbiIKKyJkcGtnLWRlYjogICAg7IaQ7IOB65CcIOyVhOy5tOydtOu4jOuhnCDrs7TsnoXri4jri6RcbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI1OQorIywgYy1mb3JtYXQKK21zZ2lkICJgJS4yNTVzJyBpcyBub3QgYSBkZWJpYW4gZm9ybWF0IGFyY2hpdmUiCittc2dzdHIgImAlLjI1NXMn7J2AKOuKlCkg642w67mE7JWIIO2YleyLneydmCDslYTsubTsnbTruIzqsIAg7JWE64uZ64uI64ukIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjY2Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIHRvIHBpcGUgaW4gY29weSIKK21zZ3N0ciAi67O17IKs7ZWgIOuVjCDtjIzsnbTtlITsl5Ag7JOw64qU642wIOyLpO2MqO2WiOyKteuLiOuLpCIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI2OAorbXNnaWQgImZhaWxlZCB0byBjbG9zZSBwaXBlIGluIGNvcHkiCittc2dzdHIgIuuzteyCrO2VoCDrlYwg7YyM7J207ZSE66W8IOuLq+uKlOuNsCDsi6TtjKjtlojsirXri4jri6QiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyODQKK21zZ2lkICJkYXRhIgorbXNnc3RyICLrjbDsnbTthLAiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozMDcKK21zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gZGlyZWN0b3J5IgorbXNnc3RyICLrlJTroInthLDrpqzroZwg7J2064+Z7ZWY64qU642wIOyLpO2MqO2WiOyKteuLiOuLpCIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMxMAorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgZGlyZWN0b3J5IgorbXNnc3RyICLrlJTroInthLDrpqzrpbwg66eM65Oc64qU642wIOyLpO2MqO2WiOyKteuLiOuLpCIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMxMgorbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byBkaXJlY3RvcnkgYWZ0ZXIgY3JlYXRpbmcgaXQiCittc2dzdHIgIuuUlOugie2EsOumrOulvCDrp4zrk6Ag64uk7J2M7JeQIOqxsOq4sOuhnCDsnbTrj5ntlZjripTrjbAg7Iuk7Yyo7ZaI7Iq164uI64ukIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzIzCittc2dpZCAiPGRlY29tcHJlc3M+IgorbXNnc3RyICI87JWV7LaVIO2SgOq4sD4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozMjUKK21zZ2lkICJwYXN0ZSIKK21zZ3N0ciAi67aZ7Jes64Sj6riwIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzQyIGRwa2ctZGViL2V4dHJhY3QuYzozNjMgZHBrZy1kZWIvZXh0cmFjdC5jOjQwMgorIzogZHBrZy1kZWIvaW5mby5jOjc3CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSAuZGViIGZpbGVuYW1lIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIOyYteyFmOyXkOuKlCAuZGViIO2MjOydvCDsnbTrpoQg7J247IiY6rCAIO2VhOyalO2VqeuLiOuLpCIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjM0NyBkcGtnLWRlYi9leHRyYWN0LmM6NDA2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyItLSVzIG5lZWRzIGEgdGFyZ2V0IGRpcmVjdG9yeS5cbiIKKyJQZXJoYXBzIHlvdSBzaG91bGQgYmUgdXNpbmcgZHBrZyAtLWluc3RhbGwgPyIKK21zZ3N0ciAiIgorIi0tJXMg7Ji17IWY7JeQ64qUIOuMgOyDgSDrlJTroInthLDrpqzqsIAg7ZWE7JqU7ZWp64uI64ukLlxuIgorIu2YueyLnCBkcGtnIC0taW5zdGFsbOydhCDtlZjroKTqs6Ag7ZaI642YIOqygyDslYTri5nri4jquYw/IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzUwIGRwa2ctZGViL2V4dHJhY3QuYzo0MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyB0YWtlcyBhdCBtb3N0IHR3byBhcmd1bWVudHMgKC5kZWIgYW5kIGRpcmVjdG9yeSkiCittc2dzdHIgIi0tJXMg7Ji17IWY7JeQ64qUIOy1nOuMgCDrkZAg6rCc7J2YIOyduOyImOulvCDrsJvsirXri4jri6QgKC5kZWIg67CPIOuUlOugie2EsOumrCkiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyB0YWtlcyBvbmx5IG9uZSBhcmd1bWVudCAoLmRlYiBmaWxlbmFtZSkiCittc2dzdHIgIi0tJXMg7Ji17IWY7JeQ64qUIOyYpOyngSDtlZwg6rCc7J2YIOyduOyImOunjCDrsJvsirXri4jri6QgKC5kZWIg7YyM7J28IOydtOumhCkiCisKKyM6IGRwa2ctZGViL2luZm8uYzo2MworbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byBgLycgZm9yIGNsZWFudXAiCittc2dzdHIgIuygleumrOulvCDsnITtlbQgYC8n66GcIOydtOuPme2VmOuKlOuNsCDsi6TtjKjtlojsirXri4jri6QiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMDYKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImNhbm5vdCBzdGF0IGZpbGUgJyVzJyIKK21zZ2lkICJjb250cm9sIGZpbGUgJyVzJyIKK21zZ3N0ciAiJyVzJyDtjIzsnbzsnZgg7KCV67O066W8IOydveydhCDsiJgg7JeG7Iq164uI64ukIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTEwCisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2ctZGViOiBgJS4yNTVzJyBjb250YWlucyBubyBjb250cm9sIGNvbXBvbmVudCBgJS4yNTVzJ1xuIgorbXNnc3RyICJkcGtnLWRlYjogYCUuMjU1cycg7JWI7JeQIOy7qO2KuOuhpCDsu7Ttj6zrhIztirggYCUuMjU1cyfsnbQo6rCAKSDsl4bsirXri4jri6RcbiIKKworIzogZHBrZy1kZWIvaW5mby5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICJvcGVuIGNvbXBvbmVudCBgJS4yNTVzJyAoaW4gJS4yNTVzKSBmYWlsZWQgaW4gYW4gdW5leHBlY3RlZCB3YXkiCittc2dzdHIgIiIKKyJgJS4yNTVzJyDsu7Ttj6zrhIztirjrpbwgKCUuMjU1cyDslYjsl5ApIOyXrOuKlOuNsCDsmIjsg4HsuZgg66q77ZWcIOuwqeuyleycvOuhnCDsi6TtjKjtlojsirXri4jri6QiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJWQgcmVxdWVzdGVkIGNvbnRyb2wgY29tcG9uZW50IGlzIG1pc3NpbmciCittc2dpZF9wbHVyYWwgIiVkIHJlcXVlc3RlZCBjb250cm9sIGNvbXBvbmVudHMgYXJlIG1pc3NpbmciCittc2dzdHJbMF0gIuyalOyyre2VnCAlZOqwnOydmCDsu6jtirjroaQg7Lu07Y+s64SM7Yq46rCAIOyXhuyKteuLiOuLpCIKKworIzogZHBrZy1kZWIvaW5mby5jOjEzOSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NDI0CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzY2FuIGRpcmVjdG9yeSBgJS4yNTVzJyIKK21zZ3N0ciAiYCUuMjU1cycg65SU66CJ7YSw66as66W8IOydveydhCDsiJgg7JeG7Iq164uI64ukIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTQ4CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzdGF0IGAlLjI1NXMnIChpbiBgJS4yNTVzJykiCittc2dzdHIgImAlLjI1NXMnIO2MjOydvOydmCDsoJXrs7Trpbwg7J297J2EIOyImCDsl4bsirXri4jri6QgKGAlLjI1NXMn7JeQ7IScKSIKKworIzogZHBrZy1kZWIvaW5mby5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgb3BlbiBgJS4yNTVzJyAoaW4gYCUuMjU1cycpIgorbXNnc3RyICJgJS4yNTVzJyDtjIzsnbzsnYQg7Je0IOyImCDsl4bsirXri4jri6QgKGAlLjI1NXMn7JeQ7IScKSIKKworIzogZHBrZy1kZWIvaW5mby5jOjE2NyBkcGtnLWRlYi9pbmZvLmM6MTg1IGRwa2ctZGViL2luZm8uYzoxOTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgYCUuMjU1cycgKGluIGAlLjI1NXMnKSIKK21zZ3N0ciAiYCUuMjU1cycg7YyM7J287J2EIOydveydhCDsiJgg7JeG7Iq164uI64ukIChgJS4yNTVzJ+yXkOyEnCkiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxNzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiAlN2xkIGJ5dGVzLCAlNWQgbGluZXMgICAlYyAgJS0yMC4xMjdzICUuMTI3c1xuIgorbXNnaWQgIiAlN2pkIGJ5dGVzLCAlNWQgbGluZXMgICAlYyAgJS0yMC4xMjdzICUuMTI3c1xuIgorbXNnc3RyICIgJTdsZOuwlOydtO2KuCwgJTVk7KSEICAgICAgJWMgICUtMjAuMTI3cyAlLjEyN3NcbiIKKworIzogZHBrZy1kZWIvaW5mby5jOjE3NAorIywgYy1mb3JtYXQKK21zZ2lkICIgICAgIG5vdCBhIHBsYWluIGZpbGUgICAgICAgICAgJS4yNTVzXG4iCittc2dzdHIgIiAgICAg7J2867CYIO2MjOydvOydtCDslYTri5nri4jri6QgICAgICAlLjI1NXNcbiIKKworIzogZHBrZy1kZWIvaW5mby5jOjE4NgorbXNnaWQgIihubyBgY29udHJvbCcgZmlsZSBpbiBjb250cm9sIGFyY2hpdmUhKVxuIgorbXNnc3RyICIo7Luo7Yq466GkIOyVhOy5tOydtOu4jOyXkCBgY29udHJvbCcg7YyM7J287J20IOyXhuyKteuLiOuLpCEpXG4iCisKKyM6IGRwa2ctZGViL2luZm8uYzoyMjIKK21zZ2lkICJjb3VsZCBub3Qgb3BlbiB0aGUgYGNvbnRyb2wnIGNvbXBvbmVudCIKK21zZ3N0ciAiYGNvbnRyb2wnIOy7tO2PrOuEjO2KuOulvCDsl7Qg7IiYIOyXhuyKteuLiOuLpCIKKworIzogZHBrZy1kZWIvaW5mby5jOjI2MQorbXNnaWQgImZhaWxlZCBkdXJpbmcgcmVhZCBvZiBgY29udHJvbCcgY29tcG9uZW50IgorbXNnc3RyICJgY29udHJvbCcg7Lu07Y+s64SM7Yq466W8IOydveuKlOuNsCDsi6TtjKjtlojsirXri4jri6QiCisKKyM6IGRwa2ctZGViL2luZm8uYzoyNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyB0aGUgJyVzJyBjb21wb25lbnQiCittc2dzdHIgIiclcycg7Lu07Y+s64SM7Yq466W8IOuLq+uKlOuNsCDsmKTrpZjqsIAg67Cc7IOd7ZaI7Iq164uI64ukIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6Mjc4Cittc2dpZCAiRXJyb3IgaW4gZm9ybWF0IgorbXNnc3RyICLtmJXsi53sl5Ag7Jik66WY6rCAIOyeiOyKteuLiOuLpCIKKworIzogZHBrZy1kZWIvaW5mby5jOjMyOAorbXNnaWQgIi0tY29udGVudHMgdGFrZXMgZXhhY3RseSBvbmUgYXJndW1lbnQiCittc2dzdHIgIi0tY29udGVudHMg7Ji17IWY7J2AIO2VnCDqsJzsnZgg7J247IiY66eMIOuwm+yKteuLiOuLpCIKKworIzogZHBrZy1kZWIvbWFpbi5jOjU0CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiBgJXMnIHBhY2thZ2UgYXJjaGl2ZSBiYWNrZW5kIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIuuNsOu5hOyViCAnJXMnIO2MqO2CpOyngCDslYTsubTsnbTruIwg67Cx7JeU65OcIOuyhOyghCAlcy5cbiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjczCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiQ29tbWFuZHM6XG4iCisjfCAiICAtYnwtLWJ1aWxkIDxkaXJlY3Rvcnk+IFs8ZGViPl0gICBCdWlsZCBhbiBhcmNoaXZlLlxuIgorI3wgIiAgLWN8LS1jb250ZW50cyA8ZGViPiAgICAgICAgICAgICAgTGlzdCBjb250ZW50cy5cbiIKKyN8ICIgIC1JfC0taW5mbyA8ZGViPiBbPGNmaWxlPiAuLi5dICAgIFNob3cgaW5mbyB0byBzdGRvdXQuXG4iCisjfCAiICAtV3wtLXNob3cgPGRlYj4gICAgICAgICAgICAgICAgICBTaG93IGluZm9ybWF0aW9uIG9uIHBhY2thZ2UocylcbiIKKyN8ICIgIC1mfC0tZmllbGQgPGRlYj4gWzxjZmllbGQ+IC4uLl0gIFNob3cgZmllbGQocykgdG8gc3Rkb3V0LlxuIgorI3wgIiAgLWV8LS1jb250cm9sIDxkZWI+IFs8ZGlyZWN0b3J5Pl0gRXh0cmFjdCBjb250cm9sIGluZm8uXG4iCisjfCAiICAteHwtLWV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gICBFeHRyYWN0IGZpbGVzLlxuIgorI3wgIiAgLVh8LS12ZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PiAgRXh0cmFjdCAmIGxpc3QgZmlsZXMuXG4iCisjfCAiICAtLWZzeXMtdGFyZmlsZSA8ZGViPiAgICAgICAgICAgICBPdXRwdXQgZmlsZXN5c3RlbSB0YXJmaWxlLlxuIgorI3wgIlxuIgorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1ifC0tYnVpbGQgPGRpcmVjdG9yeT4gWzxkZWI+XSAgIEJ1aWxkIGFuIGFyY2hpdmUuXG4iCisiICAtY3wtLWNvbnRlbnRzIDxkZWI+ICAgICAgICAgICAgICBMaXN0IGNvbnRlbnRzLlxuIgorIiAgLUl8LS1pbmZvIDxkZWI+IFs8Y2ZpbGU+IC4uLl0gICAgU2hvdyBpbmZvIHRvIHN0ZG91dC5cbiIKKyIgIC1XfC0tc2hvdyA8ZGViPiAgICAgICAgICAgICAgICAgIFNob3cgaW5mb3JtYXRpb24gb24gcGFja2FnZShzKVxuIgorIiAgLWZ8LS1maWVsZCA8ZGViPiBbPGNmaWVsZD4gLi4uXSAgU2hvdyBmaWVsZChzKSB0byBzdGRvdXQuXG4iCisiICAtZXwtLWNvbnRyb2wgPGRlYj4gWzxkaXJlY3Rvcnk+XSBFeHRyYWN0IGNvbnRyb2wgaW5mby5cbiIKKyIgIC14fC0tZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PiAgIEV4dHJhY3QgZmlsZXMuXG4iCisiICAtWHwtLXZleHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+ICBFeHRyYWN0ICYgbGlzdCBmaWxlcy5cbiIKKyIgIC1SfC0tcmF3LWV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEV4dHJhY3QgY29udHJvbCBpbmZvIGFuZCBmaWxlcy5cbiIKKyIgIC0tZnN5cy10YXJmaWxlIDxkZWI+ICAgICAgICAgICAgIE91dHB1dCBmaWxlc3lzdGVtIHRhcmZpbGUuXG4iCisiXG4iCittc2dzdHIgIiIKKyLrqoXroLk6XG4iCisiICAtYnwtLWJ1aWxkIDzrlJTroInthLDrpqw+IFs8ZGViPl0gICAg7JWE7Lm07J2067iM66W8IOu5jOuTnO2VqeuLiOuLpC5cbiIKKyIgIC1jfC0tY29udGVudHMgPGRlYj4gICAgICAgICAgICAgIOuCtOyaqSDrqqnroZ3snYQg7ZGc7Iuc7ZWp64uI64ukLlxuIgorIiAgLUl8LS1pbmZvIDxkZWI+IFs87YyM7J28PiAuLi5dICAgICDsoJXrs7Trpbwg7ZGc7KSAIOy2nOugpeyXkCDtkZzsi5ztlanri4jri6QuXG4iCisiICAtV3wtLXNob3cgPGRlYj4gICAgICAgICAgICAgICAgICDtjKjtgqTsp4Ag7KCV67O066W8IO2RnOyLnO2VqeuLiOuLpC5cbiIKKyIgIC1mfC0tZmllbGQgPGRlYj4gWzztlYTrk5w+IC4uLl0gICAg7KeA7KCV7ZWcIO2VhOuTnOulvCDtkZzspIAg7Lac66Cl7JeQIO2RnOyLnO2VqeuLiOuLpC5cbiIKKyIgIC1lfC0tY29udHJvbCA8ZGViPiBbPOuUlOugie2EsOumrD5dICDsu6jtirjroaQg7KCV67O066W8IOu9keyVhCDrg4Xri4jri6QuXG4iCisiICAteHwtLWV4dHJhY3QgPGRlYj4gPOuUlOugie2EsOumrD4gICAg7YyM7J287J2EIOu9keyVhCDrg4Xri4jri6QuXG4iCisiICAtWHwtLXZleHRyYWN0IDxkZWI+IDzrlJTroInthLDrpqw+ICAg7YyM7J287J2EIOu9keyVhCDrgrTqs6Ag66qp66Gd7J2EIO2RnOyLnO2VqeuLiOuLpC5cbiIKKyIgIC0tZnN5cy10YXJmaWxlIDxkZWI+ICAgICAgICAgICAgIO2MjOydvCDsi5zsiqTthZwgdGFyIO2MjOydvOydhCDstpzroKXtlanri4jri6QuXG4iCisKKyM6IGRwa2ctZGViL21haW4uYzo5MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiPGRlYj4gaXMgdGhlIGZpbGVuYW1lIG9mIGEgRGViaWFuIGZvcm1hdCBhcmNoaXZlLlxuIgorIjxjZmlsZT4gaXMgdGhlIG5hbWUgb2YgYW4gYWRtaW5pc3RyYXRpdmUgZmlsZSBjb21wb25lbnQuXG4iCisiPGNmaWVsZD4gaXMgdGhlIG5hbWUgb2YgYSBmaWVsZCBpbiB0aGUgbWFpbiBgY29udHJvbCcgZmlsZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIjxkZWI+64qUIOuNsOu5hOyViCDtmJXsi50g7JWE7Lm07J2067iM7J2YIO2MjOydvCDsnbTrpoTsnoXri4jri6QuXG4iCisiPO2MjOydvD7snYAg6rSA66asIO2MjOydvCDqtazshLEg7JqU7IaM7J2YIOydtOumhOyeheuLiOuLpC5cbiIKKyI87ZWE65OcPuuKlCBgY29udHJvbCcg7YyM7J287JeQIOyeiOuKlCDtlYTrk5zsnZgg7J2066aE7J6F64uI64ukLlxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6OTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJPcHRpb25zOlxuIgorI3wgIiAgLS1zaG93Zm9ybWF0PTxmb3JtYXQ+ICAgICAgICAgICAgVXNlIGFsdGVybmF0aXZlIGZvcm1hdCBmb3IgLS1zaG93LlxuIgorI3wgIiAgLUQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRW5hYmxlIGRlYnVnZ2luZyBvdXRwdXQuXG4iCisjfCAiICAtLW9sZCwgLS1uZXcgICAgICAgICAgICAgICAgICAgICBTZWxlY3QgYXJjaGl2ZSBmb3JtYXQuXG4iCisjfCAiICAtLW5vY2hlY2sgICAgICAgICAgICAgICAgICAgICAgICBTdXBwcmVzcyBjb250cm9sIGZpbGUgY2hlY2sgKGJ1aWxkICIKKyN8ICJiYWRcbiIKKyN8ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFja2FnZXMpLlxuIgorI3wgIiAgLXojICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU2V0IHRoZSBjb21wcmVzc2lvbiBsZXZlbCB3aGVuICIKKyN8ICJidWlsZGluZy5cbiIKKyN8ICIgIC1aPHR5cGU+ICAgICAgICAgICAgICAgICAgICAgICAgIFNldCB0aGUgY29tcHJlc3Npb24gdHlwZSB1c2VkIHdoZW4gIgorI3wgImJ1aWxkaW5nLlxuIgorI3wgIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBbGxvd2VkIHR5cGVzOiBnemlwLCB4eiwgYnppcDIsICIKKyN8ICJsem1hLCBub25lLlxuIgorI3wgIlxuIgorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1zaG93Zm9ybWF0PTxmb3JtYXQ+ICAgICAgICAgICAgVXNlIGFsdGVybmF0aXZlIGZvcm1hdCBmb3IgLS1zaG93LlxuIgorIiAgLXYsIC0tdmVyYm9zZSAgICAgICAgICAgICAgICAgICAgRW5hYmxlIHZlcmJvc2Ugb3V0cHV0LlxuIgorIiAgLUQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRW5hYmxlIGRlYnVnZ2luZyBvdXRwdXQuXG4iCisiICAtLW9sZCwgLS1uZXcgICAgICAgICAgICAgICAgICAgICBTZWxlY3QgYXJjaGl2ZSBmb3JtYXQuXG4iCisiICAtLW5vY2hlY2sgICAgICAgICAgICAgICAgICAgICAgICBTdXBwcmVzcyBjb250cm9sIGZpbGUgY2hlY2sgKGJ1aWxkIGJhZFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWNrYWdlcykuXG4iCisiICAteiMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTZXQgdGhlIGNvbXByZXNzaW9uIGxldmVsIHdoZW4gYnVpbGRpbmcuXG4iCisiICAtWjx0eXBlPiAgICAgICAgICAgICAgICAgICAgICAgICBTZXQgdGhlIGNvbXByZXNzaW9uIHR5cGUgdXNlZCB3aGVuICIKKyJidWlsZGluZy5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWxsb3dlZCB0eXBlczogZ3ppcCwgeHosIGJ6aXAyLCBsem1hLCAiCisibm9uZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIuyYteyFmDpcbiIKKyIgIC0tc2hvd2Zvcm1hdD087ZiV7IudPiAgICAgICAgICAgICAgLS1zaG937JeQ7IScIOyCrOyaqe2VoCDtmJXsi53snYQg65Sw66GcIOyngOygle2VqeuLiCIKKyLri6QuXG4iCisiICAtRCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDrlJTrsoTquYUg7KCV67O066W8IOy2nOugpe2VmOuPhOuhnSDshKTsoJXtlanri4jri6QuXG4iCisiICAtLW9sZCwgLS1uZXcgICAgICAgICAgICAgICAgICAgICDslYTsubTsnbTruIwg7ZiV7Iud7J2EIOyngOygle2VqeuLiOuLpC5cbiIKKyIgIC0tbm9jaGVjayAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRyb2wg7YyM7J287J2YIOqygOyCrOulvCDtlZjsp4Ag7JWK7Iq164uI64ukKOyemOuquyIKKyLrkJwgXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIO2MqO2CpOyngCDruYzrk5wpXG4iCisiICAteiMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDruYzrk5ztlaAg65WMIOyCrOyaqe2VoCDslZXstpUg7IiY7KSA7J2EIOyngOygle2VqeuLiOuLpC5cbiIKKyIgIC1aPOyiheulmD4gICAgICAgICAgICAgICAgICAgICAgICAg67mM65Oc7ZWgIOuVjCDsgqzsmqntlaAg7JWV7LaVIO2YleyLneydhCDsp4DsoJXtlanri4jri6QuXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIOyCrOyaqSDqsIDriqUg6rCSOiBnemlwLCB4eiwgYnppcDIsIGx6bWEsICIKKyJub25lLlxuIgorIlxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTIxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJVc2UgYGRwa2cnIHRvIGluc3RhbGwgYW5kIHJlbW92ZSBwYWNrYWdlcyBmcm9tIHlvdXIgc3lzdGVtLCBvclxuIgorImBkc2VsZWN0JyBvciBgYXB0aXR1ZGUnIGZvciB1c2VyLWZyaWVuZGx5IHBhY2thZ2UgbWFuYWdlbWVudC4gIFBhY2thZ2VzXG4iCisidW5wYWNrZWQgdXNpbmcgYGRwa2ctZGViIC0tZXh0cmFjdCcgd2lsbCBiZSBpbmNvcnJlY3RseSBpbnN0YWxsZWQgIVxuIgorbXNnc3RyICIiCisiXG4iCisi7Iuc7Iqk7YWc7JeQIO2MqO2CpOyngOulvCDshKTsuZjtlZjqsbDrgpgg7Iuc7Iqk7YWc7JeQ7IScIO2MqO2CpOyngOulvCDsp4Dsmrgg65WMICdkcGtnJ+ulvCDsgqzsmqntlZjsi5zqsbAiCisi64KYLFxuIgorIuyCrOyaqe2VmOq4sCDtjrjtlZwgJ2RzZWxlY3Qn64KYICdhcHRpdHVkZScg7Yyo7YKk7KeAIOq0gOumrOyekOulvCDsgqzsmqntlZjsi63si5zsmKQuXG4iCisiJ2Rwa2ctZGViIC0tZXh0cmFjdCfroZwg7JWV7LaV7J2EIO2RvCDtjKjtgqTsp4DripQg7KCc64yA66GcIOyEpOy5mOuQmOyngCDslYrsirXri4jri6QhXG4iCisKKyM6IGRwa2ctZGViL21haW4uYzoxMzIKK21zZ2lkICIiCisiVHlwZSBkcGtnLWRlYiAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgbWFuaXB1bGF0aW5nICouZGViIGZpbGVzO1xuIgorIlR5cGUgZHBrZyAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgaW5zdGFsbGluZyBhbmQgZGVpbnN0YWxsaW5nIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorIiouZGViIO2MjOydvCDsobDsnpHsl5Ag6rSA7ZWcIOuPhOybgOunkOydhCDrs7TroKTrqbQgZHBrZy1kZWIgLS1oZWxw66W8IOyLpO2Wie2VmOyLreyLnOyYpC5cbiIKKyLtjKjtgqTsp4Ag7ISk7LmY7JmAIOyEpOy5mCDtlbTsoJzsl5Ag6rSA7ZWcIOuPhOybgOunkOydhCDrs7TroKTrqbQgZHBrZyAtLWhlbHDrpbwg7Iuk7ZaJ7ZWY7Iut7Iuc7JikLiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjE0OAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGludGVnZXIgZm9yIC0lYzogJyUuMjUwcyciCittc2dzdHIgIi0lYyDsmLXshZjsl5Ag7Iir7J6Q6rCAIOyemOuqu+uQmOyXiOyKteuLiOuLpDogJyUuMjUwcyciCisKKyM6IGRwa2ctZGViL21haW4uYzoxNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjb21wcmVzc2lvbiBsZXZlbCBmb3IgLSVjOiAlbGQnIgorbXNnc3RyICItJWMg7Ji17IWY7JeQIOyVley2lSDri6jqs4TqsIAg7J6Y66q765CY7JeI7Iq164uI64ukOiAlbGQiCisKKyM6IGRwa2ctZGViL21haW4uYzoxNjEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBjb21wcmVzc2lvbiB0eXBlIGAlcychIgorbXNnc3RyICLslYwg7IiYIOyXhuuKlCDslZXstpUg7KKF66WYIGAlcychIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzo1MgorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgZGlnaXQgKGNvZGUgJWQpIGluICVzIgorbXNnc3RyICIiCisiYCUxJC4yNTBzJyDtjIzsnbzsnbQg7IaQ7IOB65CY7JeI7Iq164uI64ukIC0gJTMkc+yXkOyEnCDsiKvsnpDqsIAg7J6Y66q765CY7JeI7Iq164uI64ukICjsvZTrk5wgIgorIiUyJGQpLiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gJS4yNTBzIG1pc3NpbmciCittc2dzdHIgImAlLjI1MHMnIO2MjOydvOydtCDshpDsg4HrkJjsl4jsirXri4jri6QgLSAlLjI1MHPsnbQo6rCAKSDruaDsoYzsirXri4jri6QiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjYzCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIG1pc3NpbmcgbmV3bGluZSBhZnRlciAlLjI1MHMiCittc2dzdHIgImAlLjI1MHMnIO2MjOydvOydtCDshpDsg4HrkJjsl4jsirXri4jri6QgLSAlLjI1MHMg64uk7J2M7JeQIOykhOuwlOq/iOydtCDsl4bsirXri4jri6QiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjg5IGRwa2ctc3BsaXQvbWFpbi5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciByZWFkaW5nICUuMjUwcyIKK21zZ3N0ciAiJS4yNTBzIO2MjOydvOydhCDsnb3ripTrjbAg7Jik66WY6rCAIOuwnOyDne2WiOyKteuLiOuLpCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTAzCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBtYWdpYyBhdCBlbmQgb2YgZmlyc3QgaGVhZGVyIgorbXNnc3RyICIiCisiYCUuMjUwcycg7YyM7J287J20IOyGkOyDgeuQmOyXiOyKteuLiOuLpCAtIOyyq+uyiOynuCDtl6TrjZTsnZgg64Gd7JeQIOuyhOyghCDrsojtmLjqsIAg7YuA66C47Iq164uI64ukIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIHBhZGRpbmcgY2hhcmFjdGVyIChjb2RlICVkKSIKK21zZ3N0ciAiYCUuMjUwcycg7YyM7J287J20IOyGkOyDgeuQmOyXiOyKteuLiOuLpCAtIOyxhOybgCDrrLjsnpDqsIAg7J6Y66q765CY7JeI7Iq164uI64ukICjsvZTrk5wgJWQpIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gbnVsbHMgaW4gaW5mbyBzZWN0aW9uIgorbXNnc3RyICJgJS4yNTBzJyDtjIzsnbzsnbQg7IaQ7IOB65CY7JeI7Iq164uI64ukIC0gaW5mbyDshLnshZjsl5Ag64SQIOusuOyekOqwgCDrk6TslrQg7J6I7Iq164uI64ukIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMjIKK21zZ2lkICJmb3JtYXQgdmVyc2lvbiBudW1iZXIiCittc2dzdHIgIu2PrOuntyDrsoTsoIQg67KI7Zi4IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBmb3JtYXQgdmVyc2lvbiBgJS4yNTBzJyAtIHlvdSBuZWVkIGEgbmV3ZXIgZHBrZy1zcGxpdCIKK21zZ3N0ciAiIgorImAlLjI1MHMnIO2MjOydvOydmCDtj6zrp7cg67KE7KCE7J20ICclLjI1MHMn7J6F64uI64ukIC0g642UIOy1nOyLoOydmCBkcGtnLXNwbGl07J20IO2VhOyalO2VqeuLiCIKKyLri6QiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyNworbXNnaWQgInBhY2thZ2UgbmFtZSIKK21zZ3N0ciAi7Yyo7YKk7KeAIOydtOumhCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTI4Cittc2dpZCAicGFja2FnZSB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAi7Yyo7YKk7KeAIOuyhOyghCDrsojtmLgiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyOQorbXNnaWQgInBhY2thZ2UgZmlsZSBNRDUgY2hlY2tzdW0iCittc2dzdHIgIu2MqO2CpOyngCDtjIzsnbwgTUQ1IOyytO2BrOyErCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTMyCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBNRDUgY2hlY2tzdW0gYCUuMjUwcyciCittc2dzdHIgImAlLjI1MHMnIO2MjOydvOydtCDshpDsg4HrkJjsl4jsirXri4jri6QgLSBNRDUg7LK07YGs7ISsKGAlLjI1MHMnKeydtCDti4DroLjsirXri4jri6QiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEzNCBkcGtnLXNwbGl0L2luZm8uYzoxMzUKK21zZ2lkICJhcmNoaXZlIHRvdGFsIHNpemUiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTM2IGRwa2ctc3BsaXQvaW5mby5jOjEzNworIywgZnV6enkKKyN8IG1zZ2lkICJwYXJ0IG9mZnNldCIKK21zZ2lkICJhcmNoaXZlIHBhcnQgb2Zmc2V0IgorbXNnc3RyICLqtazshLEg7JqU7IaMIOyYpO2UhOyFiyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTM5CisjLCBmdXp6eQorI3wgbXNnaWQgInBhcnQgbnVtYmVycyIKK21zZ2lkICJhcmNoaXZlIHBhcnQgbnVtYmVycyIKK21zZ3N0ciAi67aA67aEIOuyiO2YuCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTQyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBubyBzbGFzaCBiZXR3ZWVuIHBhcnQgbnVtYmVycyIKK21zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBubyBzbGFzaCBiZXR3ZWVuIGFyY2hpdmUgcGFydCBudW1iZXJzIgorbXNnc3RyICIiCisiYCUuMjUwcycg7YyM7J287J20IOyGkOyDgeuQmOyXiOyKteuLiOuLpCAtIOq1rOyEsSDsmpTshowg67KI7Zi4IOyCrOydtOyXkCDsiqzrnpjsi5zqsIAg7JeG7Iq164uI64ukIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDUKKyMsIGZ1enp5CisjfCBtc2dpZCAibnVtYmVyIG9mIHBhcnRzIgorbXNnaWQgIm51bWJlciBvZiBhcmNoaXZlIHBhcnRzIgorbXNnc3RyICLqtazshLEg7JqU7IaMIOqwnOyImCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTQ3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgbnVtYmVyIG9mIHBhcnRzIgorbXNnaWQgImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBudW1iZXIgb2YgYXJjaGl2ZSBwYXJ0cyIKK21zZ3N0ciAiJyUuMjUwcycg7YyM7J287J20IOyGkOyDgeuQmOyXiOyKteuLiOuLpCAtIOq1rOyEsSDsmpTshowg67KI7Zi46rCAIOyemOuqu+uQmOyXiOyKteuLiOuLpCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTQ5CisjLCBmdXp6eQorI3wgbXNnaWQgInBhcnRzIG51bWJlciIKK21zZ2lkICJhcmNoaXZlIHBhcnRzIG51bWJlciIKK21zZ3N0ciAi6rWs7ISxIOyalOyGjCDrsojtmLgiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE1MQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIHBhcnQgbnVtYmVyIgorbXNnaWQgImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBhcmNoaXZlIHBhcnQgbnVtYmVyIgorbXNnc3RyICJgJS4yNTBzJyDtjIzsnbzsnbQg7IaQ7IOB65CY7JeI7Iq164uI64ukIC0g6rWs7ISxIOyalOyGjCDrsojtmLjqsIAg7J6Y66q765CY7JeI7Iq164uI64ukIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNTcKKyMsIGZ1enp5CisjfCBtc2dpZCAicGFja2FnZSBuYW1lIgorbXNnaWQgInBhY2thZ2UgYXJjaGl0ZWN0dXJlIgorbXNnc3RyICLtjKjtgqTsp4Ag7J2066aEIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIG1hZ2ljIGF0IGVuZCBvZiBzZWNvbmQgaGVhZGVyIgorbXNnc3RyICIiCisiYCUuMjUwcycg7YyM7J287J20IOyGkOyDgeuQmOyXiOyKteuLiOuLpCAtIOuRkCDrsojsp7gg7Zek642U7J2YIOuBneyXkCDrp6Tsp4HsnbQg7J6Y66q765CY7JeI7Iq164uI64ukIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gc2Vjb25kIG1lbWJlciBpcyBub3QgZGF0YSBtZW1iZXIiCittc2dzdHIgImAlLjI1MHMnIO2MjOydvOydtCDshpDsg4HrkJjsl4jsirXri4jri6QgLSDrkZAg67KI7Ke4IOuppOuyhOqwgCDrjbDsnbTthLAg66mk67KE6rCAIOyVhOuLmeuLiOuLpCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTc0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIHdyb25nIG51bWJlciBvZiBwYXJ0cyBmb3IgcXVvdGVkIHNpemVzIgorbXNnc3RyICIiCisiYCUuMjUwcycg7YyM7J287J20IOyGkOyDgeuQmOyXiOyKteuLiOuLpCAtIOyngOygle2VnCDtgazquLDsl5Ag64yA7ZW0IOq1rOyEsSDsmpTshowg6rCc7IiY6rCAIO2LgOuguOyKteuLiCIKKyLri6QiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE3OAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBzaXplIGlzIHdyb25nIGZvciBxdW90ZWQgcGFydCBudW1iZXIiCittc2dzdHIgIiIKKyJgJS4yNTBzJyDtjIzsnbzsnbQg7IaQ7IOB65CY7JeI7Iq164uI64ukIC0g7KeA7KCV7ZWcIOuyiO2YuOydmCDqtazshLEg7JqU7IaM7J2YIO2BrOq4sOqwgCDti4DroLjsirXri4jri6QiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE4NAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZnN0YXQgcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLqtazshLEg7JqU7IaMIO2MjOydvCBgJS4yNTBzJ+ydmCDsoJXrs7Trpbwg7J297J2EIOyImCDsl4bsirXri4jri6QiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE4OQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSB0b28gc2hvcnQiCittc2dzdHIgImAlLjI1MHMnIO2MjOydvOydtCDshpDsg4HrkJjsl4jsirXri4jri6QgLSDrhIjrrLQg7Ken7Iq164uI64ukIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyMDIgZHBrZy1zcGxpdC9pbmZvLmM6MjQ5CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBvcGVuIGFyY2hpdmUgcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLslYTsubTsnbTruIwg6rWs7ISxIOyalOyGjCBgJS4yNTBzJyDtjIzsnbzsnYQg7Je0IOyImCDsl4bsirXri4jri6QiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjIwNAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIG5vdCBhbiBhcmNoaXZlIHBhcnQiCittc2dzdHIgImAlLjI1MHMnIO2MjOydvOydtCDslYTsubTsnbTruIwg6rWs7ISxIOyalOyGjOqwgCDslYTri5nri4jri6QiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjIwOQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiVzOlxuIgorI3wgIiAgICBQYXJ0IGZvcm1hdCB2ZXJzaW9uOiAgICAgICAgICAgICVzXG4iCisjfCAiICAgIFBhcnQgb2YgcGFja2FnZTogICAgICAgICAgICAgICAgJXNcbiIKKyN8ICIgICAgICAgIC4uLiB2ZXJzaW9uOiAgICAgICAgICAgICAgICAlc1xuIgorI3wgIiAgICAgICAgLi4uIE1ENSBjaGVja3N1bTogICAgICAgICAgICVzXG4iCisjfCAiICAgICAgICAuLi4gbGVuZ3RoOiAgICAgICAgICAgICAgICAgJWx1IGJ5dGVzXG4iCisjfCAiICAgICAgICAuLi4gc3BsaXQgZXZlcnk6ICAgICAgICAgICAgJWx1IGJ5dGVzXG4iCisjfCAiICAgIFBhcnQgbnVtYmVyOiAgICAgICAgICAgICAgICAgICAgJWQvJWRcbiIKKyN8ICIgICAgUGFydCBsZW5ndGg6ICAgICAgICAgICAgICAgICAgICAlemkgYnl0ZXNcbiIKKyN8ICIgICAgUGFydCBvZmZzZXQ6ICAgICAgICAgICAgICAgICAgICAlbHUgYnl0ZXNcbiIKKyN8ICIgICAgUGFydCBmaWxlIHNpemUgKHVzZWQgcG9ydGlvbik6ICAlbHUgYnl0ZXNcbiIKKyN8ICJcbiIKK21zZ2lkICIiCisiJXM6XG4iCisiICAgIFBhcnQgZm9ybWF0IHZlcnNpb246ICAgICAgICAgICAgJXNcbiIKKyIgICAgUGFydCBvZiBwYWNrYWdlOiAgICAgICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIHZlcnNpb246ICAgICAgICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gYXJjaGl0ZWN0dXJlOiAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiBNRDUgY2hlY2tzdW06ICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIGxlbmd0aDogICAgICAgICAgICAgICAgICVqZCBieXRlc1xuIgorIiAgICAgICAgLi4uIHNwbGl0IGV2ZXJ5OiAgICAgICAgICAgICVqZCBieXRlc1xuIgorIiAgICBQYXJ0IG51bWJlcjogICAgICAgICAgICAgICAgICAgICVkLyVkXG4iCisiICAgIFBhcnQgbGVuZ3RoOiAgICAgICAgICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgIFBhcnQgb2Zmc2V0OiAgICAgICAgICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgIFBhcnQgZmlsZSBzaXplICh1c2VkIHBvcnRpb24pOiAgJWpkIGJ5dGVzXG4iCisiXG4iCittc2dzdHIgIiIKKyIlczpcbiIKKyIgICAg6rWs7ISxIOyalOyGjCDtmJXsi50g67KE7KCEOiAgICAgICAgICAgICVzXG4iCisiICAgIOq1rOyEsSDsmpTshowg7Yyo7YKk7KeAOiAgICAgICAgICAgICAgICVzXG4iCisiICAgICAgICAgIC4uLiDrsoTsoIQ6ICAgICAgICAgICAgICAgICAlc1xuIgorIiAgICAgICAgICAuLi4gTUQ1IOyytO2BrOyErDogICAgICAgICAgICVzXG4iCisiICAgICAgICAgIC4uLiDquLjsnbQ6ICAgICAgICAgICAgICAgICAlbHXrsJTsnbTtirhcbiIKKyIgICAgICAgICAgLi4uIOuCmOuJmOuKlCDri6jsnIQ6ICAgICAgICAgICVsdeuwlOydtO2KuFxuIgorIiAgICDqtazshLEg7JqU7IaMIOuyiO2YuDogICAgICAgICAgICAgICAgICVkLyVkXG4iCisiICAgIOq1rOyEsSDsmpTshowg6ri47J20OiAgICAgICAgICAgICAgICAgJXpp67CU7J207Yq4XG4iCisiICAgIOq1rOyEsSDsmpTshowg7Jik7ZSE7IWLOiAgICAgICAgICAgICAgICVsdeuwlOydtO2KuFxuIgorIiAgICDqtazshLEg7YyM7J28IO2BrOq4sCAo7IKs7JqpIOqzteqwhCk6ICAgICAlbHXrsJTsnbTtirhcbiIKKyJcbiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjI1CisjLCBmdXp6eQorI3wgbXNnaWQgIjx1bmtub3duPiIKK21zZ2N0eHQgImFyY2hpdGVjdHVyZSIKK21zZ2lkICI8dW5rbm93bj4iCittc2dzdHIgIjzslYzsiJjsl4bsnYw+IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyNDQgZHBrZy1zcGxpdC9qb2luLmM6MTA1CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgcmVxdWlyZXMgb25lIG9yIG1vcmUgcGFydCBmaWxlIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS0lcyDsmLXshZjsl5DripQg7ZWcIOqwnCDsnbTsg4HsnZgg6rWs7ISxIO2MjOydvCDsnbjsiJjqsIAg7ZWE7JqU7ZWp64uI64ukIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJXMnIGlzIG5vdCBhbiBhcmNoaXZlIHBhcnRcbiIKK21zZ3N0ciAiYCVzJyDtjIzsnbzsnYAg7JWE7Lm07J2067iMIOq1rOyEsSDsmpTshozqsIAg7JWE64uZ64uI64ukXG4iCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjQ0CisjLCBjLWZvcm1hdAorbXNnaWQgIlB1dHRpbmcgcGFja2FnZSAlcyB0b2dldGhlciBmcm9tICVkIHBhcnQ6ICIKK21zZ2lkX3BsdXJhbCAiUHV0dGluZyBwYWNrYWdlICVzIHRvZ2V0aGVyIGZyb20gJWQgcGFydHM6ICIKK21zZ3N0clswXSAiJTIkZOqwnCDqtazshLEg7JqU7IaM7JeQ7IScICUxJHMg7Yyo7YKk7KeAIOunjOuTpOq4sDoiCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjUxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIG91dHB1dCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJgJS4yNTBzJyDstpzroKUg7YyM7J287J2EIOyXtCDsiJgg7JeG7Iq164uI64ukIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gKHJlKW9wZW4gaW5wdXQgcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJgJS4yNTBzJyDsnoXroKUg6rWs7ISxIO2MjOydvOydhCAo64uk7IucKSDsl7Qg7IiYIOyXhuyKteuLiOuLpCIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NTgKKyMsIGZ1enp5CisjfCBtc2dpZCAiU2tpcHBpbmcgZGVzZWxlY3RlZCBwYWNrYWdlICVzLlxuIgorbXNnaWQgInNraXBwaW5nIHNwbGl0IHBhY2thZ2UgaGVhZGVyIgorbXNnc3RyICLshKDtg53tlZjsp4Ag7JWK7J2AICVzIO2MqO2CpOyngOuKlCDrhJjslrTqsJHri4jri6QuXG4iCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjU5CisjLCBmdXp6eQorI3wgbXNnaWQgIlB1dHRpbmcgcGFja2FnZSAlcyB0b2dldGhlciBmcm9tICVkIHBhcnQ6ICIKKyN8IG1zZ2lkX3BsdXJhbCAiUHV0dGluZyBwYWNrYWdlICVzIHRvZ2V0aGVyIGZyb20gJWQgcGFydHM6ICIKK21zZ2lkICJzcGxpdCBwYWNrYWdlIHBhcnQiCittc2dzdHIgIiUyJGTqsJwg6rWs7ISxIOyalOyGjOyXkOyEnCAlMSRzIO2MqO2CpOyngCDrp4zrk6TquLA6IgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo2OSBkcGtnLXNwbGl0L3NwbGl0LmM6MjM3CisjLCBjLWZvcm1hdAorbXNnaWQgImRvbmVcbiIKK21zZ3N0ciAi7JmE66OMXG4iCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjg1CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGVzIGAlLjI1MHMnIGFuZCBgJS4yNTBzJyBhcmUgbm90IHBhcnRzIG9mIHRoZSBzYW1lIGZpbGUiCittc2dzdHIgImAlLjI1MHMnIOuwjyBgJS4yNTBzJyDtjIzsnbzsnYAg6rCZ7J2AIO2MjOydvOydmCDqtazshLEg7JqU7IaM6rCAIOyVhOuLmeuLiOuLpCIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAidGhlcmUgYXJlIHNldmVyYWwgdmVyc2lvbnMgb2YgcGFydCAlZCAtIGF0IGxlYXN0IGAlLjI1MHMnIGFuZCBgJS4yNTBzJyIKK21zZ3N0ciAi6rWs7ISxIOyalOyGjCAlZOuyiOyXkCDsl6zrn6wg67KE7KCE7J20IOyeiOyKteuLiOuLpCAtIOy1nOyGjCBgJS4yNTBzJyDrsI8gYCUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjEyOAorIywgYy1mb3JtYXQKK21zZ2lkICJwYXJ0ICVkIGlzIG1pc3NpbmciCittc2dzdHIgIuq1rOyEsSDsmpTshowgJWTrsojsnbQg7JeG7Iq164uI64ukIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo0NworIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIHNwbGl0L2pvaW4gdG9vbDsgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAi642w67mE7JWIICclcycg7Yyo7YKk7KeAIOuCmOuIhOq4sC/tlansuZjquLAg7ZSE66Gc6re4656oLiDrsoTsoIQgJXMuXG4iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIkNvcHlyaWdodCAoQykgMTk5NC0xOTk2IElhbiBKYWNrc29uLlxuIgorbXNnc3RyICJDb3B5cmlnaHQgKEMpIDE5OTQtMTk5NiBJYW4gSmFja3Nvbi5cbiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6NjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLXN8LS1zcGxpdCA8ZmlsZT4gWzxwcmVmaXg+XSAgICAgU3BsaXQgYW4gYXJjaGl2ZS5cbiIKKyIgIC1qfC0tam9pbiA8cGFydD4gPHBhcnQ+IC4uLiAgICAgIEpvaW4gcGFydHMgdG9nZXRoZXIuXG4iCisiICAtSXwtLWluZm8gPHBhcnQ+IC4uLiAgICAgICAgICAgICBEaXNwbGF5IGluZm8gYWJvdXQgYSBwYXJ0LlxuIgorIiAgLWF8LS1hdXRvIC1vIDxjb21wbGV0ZT4gPHBhcnQ+ICAgQXV0by1hY2N1bXVsYXRlIHBhcnRzLlxuIgorIiAgLWx8LS1saXN0cSAgICAgICAgICAgICAgICAgICAgICAgTGlzdCB1bm1hdGNoZWQgcGllY2VzLlxuIgorIiAgLWR8LS1kaXNjYXJkIFs8ZmlsZW5hbWU+IC4uLl0gICAgRGlzY2FyZCB1bm1hdGNoZWQgcGllY2VzLlxuIgorIlxuIgorbXNnc3RyICIiCisi66qF66C5OlxuIgorIiAgLXN8LS1zcGxpdCA87YyM7J28PiBbPOygkeuRkOyWtD5dICAgICDslYTsubTsnbTruIzrpbwg64KY64iV64uI64ukLlxuIgorIiAgLWp8LS1qb2luIDzrtoDrtoQ+IDzrtoDrtoQ+IC4uLiAgICAgIOu2gOu2hCDrtoDrtoTsnYQg7ZWp7Lmp64uI64ukLlxuIgorIiAgLUl8LS1pbmZvIDzrtoDrtoQ+IC4uLiAgICAgICAgICAgICDtlZwg67aA67aE7JeQIOq0gO2VnCDsoJXrs7Trpbwg7ZGc7Iuc7ZWp64uI64ukLlxuIgorIiAgLWF8LS1hdXRvIC1vIDzsoITssrQ+IDzrtoDrtoQ+ICAgICAgIOqwgSDrtoDrtoTsnYQg7J6Q64+Z7Jy866GcIOyXsOqysO2VqeuLiOuLpC5cbiIKKyIgIC1sfC0tbGlzdHEgICAgICAgICAgICAgICAgICAgICAgIOyViCDrp57ripQg67aA67aE7J2EIO2RnOyLnO2VqeuLiOuLpC5cbiIKKyIgIC1kfC0tZGlzY2FyZCBbPO2MjOydvOydtOumhD4gLi4uXSAgICDslYgg66ee64qUIOu2gOu2hOydhCDrsoTrpr3ri4jri6QuXG4iCisiXG4iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjgyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiT3B0aW9uczpcbiIKKyN8ICIgIC0tZGVwb3RkaXIgPGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLyVzLlxuIgorI3wgIiAgLVN8LS1wYXJ0c2l6ZSA8c2l6ZT4gICAgICAgICAgICAgSW4gS2lCLCBmb3IgLXMgKGRlZmF1bHQgaXMgNDUwKS5cbiIKKyN8ICIgIC1vfC0tb3V0cHV0IDxmaWxlPiAgICAgICAgICAgICAgIEZvciAtaiAoZGVmYXVsdCBpcyA8cGFja2FnZT4tPHZlcnNpb24+LiIKKyN8ICJkZWIpLlxuIgorI3wgIiAgLVF8LS1ucHF1aWV0ICAgICAgICAgICAgICAgICAgICAgQmUgcXVpZXQgd2hlbiAtYSBpcyBub3QgYSBwYXJ0LlxuIgorI3wgIiAgLS1tc2RvcyAgICAgICAgICAgICAgICAgICAgICAgICAgR2VuZXJhdGUgOC4zIGZpbGVuYW1lcy5cbiIKKyN8ICJcbiIKKyN8ICJFeGl0IHN0YXR1czogMCA9IE9LOyAgMSA9IC1hIGlzIG5vdCBhIHBhcnQ7ICAyID0gdHJvdWJsZSFcbiIKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tZGVwb3RkaXIgPGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLyVzLlxuIgorIiAgLVN8LS1wYXJ0c2l6ZSA8c2l6ZT4gICAgICAgICAgICAgSW4gS2lCLCBmb3IgLXMgKGRlZmF1bHQgaXMgNDUwKS5cbiIKKyIgIC1vfC0tb3V0cHV0IDxmaWxlPiAgICAgICAgICAgICAgIEZpbGVuYW1lLCBmb3IgLWogKGRlZmF1bHQgaXNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhY2thZ2U+Xzx2ZXJzaW9uPl88YXJjaD4uZGViKS5cbiIKKyIgIC1RfC0tbnBxdWlldCAgICAgICAgICAgICAgICAgICAgIEJlIHF1aWV0IHdoZW4gLWEgaXMgbm90IGEgcGFydC5cbiIKKyIgIC0tbXNkb3MgICAgICAgICAgICAgICAgICAgICAgICAgIEdlbmVyYXRlIDguMyBmaWxlbmFtZXMuXG4iCisiXG4iCittc2dzdHIgIiIKKyLsmLXshZg6XG4iCisiICAtLWRlcG90ZGlyIDzrlJTroInthLDrpqw+ICAgICAgICAgICAgJXMvJXMg64yA7Iug7JeQIDzrlJTroInthLDrpqw+66W8IOyCrOyaqe2VqeuLiOuLpC5cbiIKKyIgIC1TfC0tcGFydHNpemUgPO2BrOq4sD4gICAgICAgICAgICAgS2lCIOuLqOychCwgLXMg7Ji17IWY7JeQIOyCrOyaqSAo6riw67O46rCS7J2AIDQ1MCkuXG4iCisiICAtb3wtLW91dHB1dCA87YyM7J28PiAgICAgICAgICAgICAgIC1qIOyYteyFmOyXkCDsgqzsmqkgKOq4sOuzuOqwkiA87Yyo7YKk7KeAPi0867KE7KCEPi4iCisiZGViKS5cbiIKKyIgIC1RfC0tbnBxdWlldCAgICAgICAgICAgICAgICAgICAgIOy2nOugpeydtCDsl4bsirXri4jri6QuIC1hIOu2gOu2hOydtCDslYTri4wg6rK97JqwLlxuIgorIiAgLS1tc2RvcyAgICAgICAgICAgICAgICAgICAgICAgICAgOC4zIO2YleyLneydmCDtjIzsnbwg7J2066aE7J2EIOunjOuTreuLiOuLpC5cbiIKKyJcbiIKKyLsooXro4zsg4Htg5w6IDAgPSBPSy4gMSA9IC1hIOu2gOu2hOydtCDslYTri5guIDIgPSDrrLjsoJwg67Cc7IOdIVxuIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo5MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiRXhpdCBzdGF0dXM6XG4iCisiICAwID0gb2tcbiIKKyIgIDEgPSB3aXRoIC0tYXV0bywgZmlsZSBpcyBub3QgYSBwYXJ0XG4iCisiICAyID0gdHJvdWJsZVxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjEwMworbXNnaWQgIlR5cGUgZHBrZy1zcGxpdCAtLWhlbHAgZm9yIGhlbHAuIgorbXNnc3RyICLrj4Tsm4Drp5DsnYQg67O066Ck66m0IGRwa2ctc3BsaXQgLS1oZWxw66W8IOyLpO2Wie2VmOyLreyLnOyYpC4iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjExNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBmaWxlIGluICUuMjUwcyIKK21zZ3N0ciAiJS4yNTBzIO2MjOydvOyXkOyEnCDsmIjsg4HsuZgg66q77ZWY6rKMIO2MjOydvOydtCDrgZ3rgqzsirXri4jri6QiCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjEyNgorbXNnaWQgInBhcnQgc2l6ZSBpcyBmYXIgdG9vIGxhcmdlIG9yIGlzIG5vdCBwb3NpdGl2ZSIKK21zZ3N0ciAi6rWs7ISxIOyalOyGjOydmCDtgazquLDqsIAg64SI66y0IO2BrOqxsOuCmCAw67O064ukIO2BsCDsiJjqsIAg7JWE64uZ64uI64ukIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMzAKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFydCBzaXplIG11c3QgYmUgYXQgbGVhc3QgJWQgS2lCICh0byBhbGxvdyBmb3IgaGVhZGVyKSIKK21zZ3N0ciAiIgorIuq1rOyEsSDsmpTshozsnZgg7YGs6riw64qUIOy1nOyGjO2VnCAlZEtpQuuKlCDrkJjslrTslbwg7ZWp64uI64ukICjtl6TrjZTqsIAg65Ok7Ja0IOyeiOq4sCDrlYzrrLjsl5ApIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgZGVwb3QgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICLsoIDsnqUg65SU66CJ7YSw66asIGAlLjI1MHMn7J2EKOulvCkg7J297J2EIOyImCDsl4bsirXri4jri6QiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxMzQKK21zZ2lkICItLWF1dG8gcmVxdWlyZXMgdGhlIHVzZSBvZiB0aGUgLS1vdXRwdXQgb3B0aW9uIgorbXNnc3RyICItLWF1dG8g7Ji17IWY7JeQ64qUIC0tb3V0cHV0IOyYteyFmOydhCDsjajslbwg7ZWp64uI64ukIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTM2Cittc2dpZCAiLS1hdXRvIHJlcXVpcmVzIGV4YWN0bHkgb25lIHBhcnQgZmlsZSBhcmd1bWVudCIKK21zZ3N0ciAiLS1hdXRvIOyYteyFmOyXkOuKlCDsoJXtmZXtnogg7ZWcIOqwnOydmCDqtazshLEg7JqU7IaMIOyduOyImOulvCDsjajslbwg7ZWp64uI64ukIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTQwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi6rWs7ISxIOyalOyGjCDtjIzsnbwgYCUuMjUwcyfsnYQo66W8KSDsnb3snYQg7IiYIOyXhuyKteuLiOuLpCIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE0MworIywgYy1mb3JtYXQKK21zZ2lkICJGaWxlIGAlLjI1MHMnIGlzIG5vdCBwYXJ0IG9mIGEgbXVsdGlwYXJ0IGFyY2hpdmUuXG4iCittc2dzdHIgImAlLjI1MHMnIO2MjOydvOydgCDri6TspJEg6rWs7ISxIOyVhOy5tOydtOu4jOydmCDsnbzrtoDqsIAg7JWE64uZ64uI64ukLlxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTc5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW9wZW4gcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLqtazshLEg7JqU7IaMIO2MjOydvCBgJS4yNTBzJ+ydhCjrpbwpIOuLpOyLnCDsl7Qg7IiYIOyXhuyKteuLiOuLpCIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE4MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBuZXcgZGVwb3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi7IOIIOyggOyepSDtjIzsnbwgYCUuMjUwcyfsnYQo66W8KSDsl7Qg7IiYIOyXhuyKteuLiOuLpCIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE4NAorbXNnaWQgImV4dHJhY3Rpbmcgc3BsaXQgcGFydCIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTkyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW5hbWUgbmV3IGRlcG90IGZpbGUgYCUuMjUwcycgdG8gYCUuMjUwcyciCittc2dzdHIgIuyDiCDsoIDsnqUg7YyM7J28IGAlLjI1MHMn7J2YIOydtOumhOydhCBgJS4yNTBzJyjsnLwp66GcIOuwlOq/gCDsiJgg7JeG7Iq164uI64ukIgorCisjIEZJWE1FOiBiYWQgbXNnaWQKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFydCAlZCBvZiBwYWNrYWdlICVzIGZpbGVkIChzdGlsbCB3YW50ICIKK21zZ3N0ciAiJTIkcyDtjKjtgqTsp4DsnZgg6rWs7ISxIOyalOyGjCAlMSRk67KIIOyxhOybgCAo7Jes7KCE7Z6IIO2VhOyalDogIgorCisjIEZJWE1FOiBiYWQgbXNnaWQgLSBncmFtbWFyCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjAwCittc2dpZCAiIGFuZCAiCittc2dzdHIgIiDqt7jrpqzqs6AgIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjE0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkZWxldGUgdXNlZC11cCBkZXBvdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLri6Qg7IKs7Jqp7ZWcIOyggOyepSDtjIzsnbwgYCUuMjUwcyfsnYQo66W8KSDsp4Dsmrgg7IiYIOyXhuyKteuLiOuLpCIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjIzNQorbXNnaWQgIkp1bmsgZmlsZXMgbGVmdCBhcm91bmQgaW4gdGhlIGRlcG90IGRpcmVjdG9yeTpcbiIKK21zZ3N0ciAi7KCA7J6lIOuUlOugie2EsOumrCDslYjsl5Ag7JO466qo7JeG64qUIO2MjOydvOydtCDrgqjslZjsirXri4jri6Q6XG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNDAgZHBrZy1zcGxpdC9xdWV1ZS5jOjI2OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBgJS4yNTBzJyIKK21zZ3N0ciAiYCUuMjUwcyfsnZgg7KCV67O066W8IOydveydhCDsiJgg7JeG7Iq164uI64ukIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjQzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIgJXMgKCVsdSBieXRlcylcbiIKK21zZ2lkICIgJXMgKCVqZCBieXRlcylcbiIKK21zZ3N0ciAiICVzICglbHXrsJTsnbTtirgpXG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICVzIChub3QgYSBwbGFpbiBmaWxlKVxuIgorbXNnc3RyICIgJXMgKOydvOuwmCDtjIzsnbzsnbQg7JWE64uYKVxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjUwCittc2dpZCAiUGFja2FnZXMgbm90IHlldCByZWFzc2VtYmxlZDpcbiIKK21zZ3N0ciAi7JWE7KeBIOuLpOyLnCDtlansuZjsp4Ag7JWK7J2AIO2MqO2CpOyngDpcbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI1OAorIywgYy1mb3JtYXQKK21zZ2lkICIgUGFja2FnZSAlczogcGFydChzKSAiCittc2dzdHIgIu2MqO2CpOyngCAlczog6rWs7ISxIOyalOyGjCIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI3MQorIywgYy1mb3JtYXQKK21zZ2lkICJwYXJ0IGZpbGUgYCUuMjUwcycgaXMgbm90IGEgcGxhaW4gZmlsZSIKK21zZ3N0ciAiYCUuMjUwcycg6rWs7ISxIO2MjOydvOydtCDsnbzrsJgg7YyM7J287J20IOyVhOuLmeuLiOuLpCIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI3OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiKHRvdGFsICVsdSBieXRlcylcbiIKK21zZ2lkICIodG90YWwgJWpkIGJ5dGVzKVxuIgorbXNnc3RyICIo7KCE7LK0ICVsdeuwlOydtO2KuClcbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjMwNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGlzY2FyZCBgJS4yNTBzJyIKK21zZ3N0ciAiYCUuMjUwcycg7YyM7J287J2EIOyngOyauCDsiJgg7JeG7Iq164uI64ukIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MzA1CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlbGV0ZWQgJXMuXG4iCittc2dzdHIgIiVzIOyngOyboOyKteuLiOuLpC5cbiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjcwIGRwa2ctc3BsaXQvc3BsaXQuYzo3NiBkcGtnLXNwbGl0L3NwbGl0LmM6ODEKKyMsIGZ1enp5CisjfCBtc2dpZCAiZHBrZy1kZWIgZmllbGQgZXh0cmFjdGlvbiIKK21zZ2lkICJwYWNrYWdlIGZpZWxkIHZhbHVlIGV4dHJhY3Rpb24iCittc2dzdHIgImRwa2ctZGViIO2VhOuTnCDqsJLsnYQg67m8IOuCtOq4sCIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjEzMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBzb3VyY2UgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiYCUuMjUwcycg7IaM7IqkIO2MjOydvOydhCDsl7Qg7IiYIOyXhuyKteuLiOuLpCIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjEzMworbXNnaWQgInVuYWJsZSB0byBmc3RhdCBzb3VyY2UgZmlsZSIKK21zZ3N0ciAi7IaM7IqkIO2MjOydvOydmCDsoJXrs7Trpbwg7Je0IOyImCDsl4bsirXri4jri6QiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxMzUKKyMsIGMtZm9ybWF0Cittc2dpZCAic291cmNlIGZpbGUgYCUuMjUwcycgbm90IGEgcGxhaW4gZmlsZSIKK21zZ3N0ciAiYCUuMjUwcycg7IaM7IqkIO2MjOydvOydtCDsnbzrsJgg7YyM7J287J20IOyVhOuLmeuLiOuLpCIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjE1MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiUHV0dGluZyBwYWNrYWdlICVzIHRvZ2V0aGVyIGZyb20gJWQgcGFydDogIgorI3wgbXNnaWRfcGx1cmFsICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0czogIgorbXNnaWQgIlNwbGl0dGluZyBwYWNrYWdlICVzIGludG8gJWQgcGFydDogIgorbXNnaWRfcGx1cmFsICJTcGxpdHRpbmcgcGFja2FnZSAlcyBpbnRvICVkIHBhcnRzOiAiCittc2dzdHJbMF0gIiUyJGTqsJwg6rWs7ISxIOyalOyGjOyXkOyEnCAlMSRzIO2MqO2CpOyngCDrp4zrk6TquLA6IgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTkzCittc2dpZCAiIgorIkhlYWRlciBpcyB0b28gbG9uZywgbWFraW5nIHBhcnQgdG9vIGxvbmcuIFlvdXIgcGFja2FnZSBuYW1lIG9yIHZlcnNpb25cbiIKKyJudW1iZXJzIG11c3QgYmUgZXh0cmFvcmRpbmFyaWx5IGxvbmcsIG9yIHNvbWV0aGluZy4gR2l2aW5nIHVwLlxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoyNDkKK21zZ2lkICItLXNwbGl0IG5lZWRzIGEgc291cmNlIGZpbGVuYW1lIGFyZ3VtZW50IgorbXNnc3RyICItLXNwbGl0IOyYteyFmOyXkOuKlCDshozsiqQg7YyM7J28IOydtOumhCDsnbjsiJjqsIAg7ZWE7JqU7ZWp64uI64ukIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MjUyCittc2dpZCAiLS1zcGxpdCB0YWtlcyBhdCBtb3N0IGEgc291cmNlIGZpbGVuYW1lIGFuZCBkZXN0aW5hdGlvbiBwcmVmaXgiCittc2dzdHIgIi0tc3BsaXQg7Ji17IWY7JeQ64qUIOyGjOyKpCDtjIzsnbwg7J2066aE6rO8IOuMgOyDgSDsoJHrkZDslrTrp4wg7JO4IOyImCDsnojsirXri4jri6QiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo4NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMC0yMDAyIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDA5LTIwMTAgUmFwaGFlbCBIZXJ0em9nLlxuIgorbXNnc3RyICIiCisiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMC0yMDAyIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDA5LTIwMTAgUmFwaGFlbCBIZXJ0em9nLlxuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTAxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIDxjb21tYW5kPlxuIgorI3wgIlxuIgorI3wgIkNvbW1hbmRzOlxuIgorI3wgIiAgLS1pbnN0YWxsIDxsaW5rPiA8bmFtZT4gPHBhdGg+IDxwcmlvcml0eT5cbiIKKyN8ICIgICAgWy0tc2xhdmUgPGxpbms+IDxuYW1lPiA8cGF0aD5dIC4uLlxuIgorI3wgIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGFkZCBhIGdyb3VwIG9mIGFsdGVybmF0aXZlcyB0byB0aGUgc3lzdGVtLlxuIgorI3wgIiAgLS1yZW1vdmUgPG5hbWU+IDxwYXRoPiAgIHJlbW92ZSA8cGF0aD4gZnJvbSB0aGUgPG5hbWU+IGdyb3VwICIKKyN8ICJhbHRlcm5hdGl2ZS5cbiIKKyN8ICIgIC0tcmVtb3ZlLWFsbCA8bmFtZT4gICAgICByZW1vdmUgPG5hbWU+IGdyb3VwIGZyb20gdGhlIGFsdGVybmF0aXZlcyAiCisjfCAic3lzdGVtLlxuIgorI3wgIiAgLS1hdXRvIDxuYW1lPiAgICAgICAgICAgIHN3aXRjaCB0aGUgbWFzdGVyIGxpbmsgPG5hbWU+IHRvIGF1dG9tYXRpYyAiCisjfCAibW9kZS5cbiIKKyN8ICIgIC0tZGlzcGxheSA8bmFtZT4gICAgICAgICBkaXNwbGF5IGluZm9ybWF0aW9uIGFib3V0IHRoZSA8bmFtZT4gZ3JvdXAuXG4iCisjfCAiICAtLXF1ZXJ5IDxuYW1lPiAgICAgICAgICAgbWFjaGluZSBwYXJzZWFibGUgdmVyc2lvbiBvZiAtLWRpc3BsYXkgIgorI3wgIjxuYW1lPi5cbiIKKyN8ICIgIC0tbGlzdCA8bmFtZT4gICAgICAgICAgICBkaXNwbGF5IGFsbCB0YXJnZXRzIG9mIHRoZSA8bmFtZT4gZ3JvdXAuXG4iCisjfCAiICAtLWNvbmZpZyA8bmFtZT4gICAgICAgICAgc2hvdyBhbHRlcm5hdGl2ZXMgZm9yIHRoZSA8bmFtZT4gZ3JvdXAgYW5kIGFzayAiCisjfCAidGhlXG4iCisjfCAiICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlciB0byBzZWxlY3Qgd2hpY2ggb25lIHRvIHVzZS5cbiIKKyN8ICIgIC0tc2V0IDxuYW1lPiA8cGF0aD4gICAgICBzZXQgPHBhdGg+IGFzIGFsdGVybmF0aXZlIGZvciA8bmFtZT4uXG4iCisjfCAiICAtLWFsbCAgICAgICAgICAgICAgICAgICAgY2FsbCAtLWNvbmZpZyBvbiBhbGwgYWx0ZXJuYXRpdmVzLlxuIgorI3wgIlxuIgorI3wgIjxsaW5rPiBpcyB0aGUgc3ltbGluayBwb2ludGluZyB0byAlcy88bmFtZT4uXG4iCisjfCAiICAoZS5nLiAvdXNyL2Jpbi9wYWdlcilcbiIKKyN8ICI8bmFtZT4gaXMgdGhlIG1hc3RlciBuYW1lIGZvciB0aGlzIGxpbmsgZ3JvdXAuXG4iCisjfCAiICAoZS5nLiBwYWdlcilcbiIKKyN8ICI8cGF0aD4gaXMgdGhlIGxvY2F0aW9uIG9mIG9uZSBvZiB0aGUgYWx0ZXJuYXRpdmUgdGFyZ2V0IGZpbGVzLlxuIgorI3wgIiAgKGUuZy4gL3Vzci9iaW4vbGVzcylcbiIKKyN8ICI8cHJpb3JpdHk+IGlzIGFuIGludGVnZXI7IG9wdGlvbnMgd2l0aCBoaWdoZXIgbnVtYmVycyBoYXZlIGhpZ2hlciAiCisjfCAicHJpb3JpdHkgaW5cbiIKKyN8ICIgIGF1dG9tYXRpYyBtb2RlLlxuIgorI3wgIlxuIgorI3wgIk9wdGlvbnM6XG4iCisjfCAiICAtLWFsdGRpciA8ZGlyZWN0b3J5PiAgICAgY2hhbmdlIHRoZSBhbHRlcm5hdGl2ZXMgZGlyZWN0b3J5LlxuIgorI3wgIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIGNoYW5nZSB0aGUgYWRtaW5pc3RyYXRpdmUgZGlyZWN0b3J5LlxuIgorI3wgIiAgLS1za2lwLWF1dG8gICAgICAgICAgICAgIHNraXAgcHJvbXB0IGZvciBhbHRlcm5hdGl2ZXMgY29ycmVjdGx5ICIKKyN8ICJjb25maWd1cmVkXG4iCisjfCAiICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gYXV0b21hdGljIG1vZGUgKHJlbGV2YW50IGZvciAtLWNvbmZpZyAiCisjfCAib25seSlcbiIKKyN8ICIgIC0tdmVyYm9zZSAgICAgICAgICAgICAgICB2ZXJib3NlIG9wZXJhdGlvbiwgbW9yZSBvdXRwdXQuXG4iCisjfCAiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgcXVpZXQgb3BlcmF0aW9uLCBtaW5pbWFsIG91dHB1dC5cbiIKKyN8ICIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorI3wgIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLS1pbnN0YWxsIDxsaW5rPiA8bmFtZT4gPHBhdGg+IDxwcmlvcml0eT5cbiIKKyIgICAgWy0tc2xhdmUgPGxpbms+IDxuYW1lPiA8cGF0aD5dIC4uLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGFkZCBhIGdyb3VwIG9mIGFsdGVybmF0aXZlcyB0byB0aGUgc3lzdGVtLlxuIgorIiAgLS1yZW1vdmUgPG5hbWU+IDxwYXRoPiAgIHJlbW92ZSA8cGF0aD4gZnJvbSB0aGUgPG5hbWU+IGdyb3VwIGFsdGVybmF0aXZlLlxuIgorIiAgLS1yZW1vdmUtYWxsIDxuYW1lPiAgICAgIHJlbW92ZSA8bmFtZT4gZ3JvdXAgZnJvbSB0aGUgYWx0ZXJuYXRpdmVzICIKKyJzeXN0ZW0uXG4iCisiICAtLWF1dG8gPG5hbWU+ICAgICAgICAgICAgc3dpdGNoIHRoZSBtYXN0ZXIgbGluayA8bmFtZT4gdG8gYXV0b21hdGljIG1vZGUuXG4iCisiICAtLWRpc3BsYXkgPG5hbWU+ICAgICAgICAgZGlzcGxheSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgPG5hbWU+IGdyb3VwLlxuIgorIiAgLS1xdWVyeSA8bmFtZT4gICAgICAgICAgIG1hY2hpbmUgcGFyc2VhYmxlIHZlcnNpb24gb2YgLS1kaXNwbGF5IDxuYW1lPi5cbiIKKyIgIC0tbGlzdCA8bmFtZT4gICAgICAgICAgICBkaXNwbGF5IGFsbCB0YXJnZXRzIG9mIHRoZSA8bmFtZT4gZ3JvdXAuXG4iCisiICAtLWdldC1zZWxlY3Rpb25zICAgICAgICAgbGlzdCBtYXN0ZXIgYWx0ZXJuYXRpdmUgbmFtZXMgYW5kIHRoZWlyIHN0YXR1cy5cbiIKKyIgIC0tc2V0LXNlbGVjdGlvbnMgICAgICAgICByZWFkIGFsdGVybmF0aXZlIHN0YXR1cyBmcm9tIHN0YW5kYXJkIGlucHV0LlxuIgorIiAgLS1jb25maWcgPG5hbWU+ICAgICAgICAgIHNob3cgYWx0ZXJuYXRpdmVzIGZvciB0aGUgPG5hbWU+IGdyb3VwIGFuZCBhc2sgIgorInRoZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzZXIgdG8gc2VsZWN0IHdoaWNoIG9uZSB0byB1c2UuXG4iCisiICAtLXNldCA8bmFtZT4gPHBhdGg+ICAgICAgc2V0IDxwYXRoPiBhcyBhbHRlcm5hdGl2ZSBmb3IgPG5hbWU+LlxuIgorIiAgLS1hbGwgICAgICAgICAgICAgICAgICAgIGNhbGwgLS1jb25maWcgb24gYWxsIGFsdGVybmF0aXZlcy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIuyCrOyaqeuylTogJXMgWzzsmLXshZg+IC4uLl0gPOuqheuguT5cbiIKKyJcbiIKKyLrqoXroLk6XG4iCisiICAtLWluc3RhbGwgPOunge2BrD4gPOydtOumhD4gPOqyveuhnD4gPOyasOyEoOyInOychD5cbiIKKyIgICAgWy0tc2xhdmUgPOunge2BrD4gPOydtOumhD4gPOqyveuhnD5dIC4uLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIOyLnOyKpO2FnOyXkCDrjIDssrTtla3rqqnsnYQg7LaU6rCA7ZWp64uI64ukLlxuIgorIiAgLS1yZW1vdmUgPOydtOumhD4gPOqyveuhnD4gICA87J2066aEPiDqt7jro7kg64yA7LK07ZWt66qp7JeQ7IScIDzqsr3roZw+66W8IOyngOybgeuLiOuLpC5cbiIKKyIgIC0tcmVtb3ZlLWFsbCA87J2066aEPiAgICAgIDzsnbTrpoQ+IOq3uOujueydhCDrjIDssrTtla3rqqkg7Iuc7Iqk7YWc7JeQ7IScIOyngOybgeuLiOuLpC5cbiIKKyIgIC0tYXV0byA87J2066aEPiAgICAgICAgICAgIOuniOyKpO2EsCDrp4HtgawgPOydtOumhD7snYQg7J6Q64+Z66qo65Oc66GcIOuwlOq/ieuLiOuLpC5cbiIKKyIgIC0tZGlzcGxheSA87J2066aEPiAgICAgICAgIDzsnbTrpoQ+IOq3uOujueyXkCDqtIDtlZwg7KCV67O066W8IO2RnOyLnO2VqeuLiOuLpC5cbiIKKyIgIC0tcXVlcnkgPOydtOumhD4gICAgICAgICAgIC0tZGlzcGxheSA87J2066aEPuydmCDsu7Ttk6jthLAg7YyM7IuxIOqwgOuKpSDrsoTsoIQuXG4iCisiICAtLWxpc3QgPOydtOumhD4gICAgICAgICAgICA87J2066aEPiDqt7jro7nsnZgg64yA7IOB7J2EIOyghOu2gCDtkZzsi5ztlanri4jri6QuXG4iCisiICAtLWNvbmZpZyA87J2066aEPiAgICAgICAgICA87J2066aEPiDqt7jro7nsnZgg64yA7LK07ZWt66qp7J2EIOuztOyXrOyjvOqzoCDsgqzsmqnsnpDqsIAgXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAg7IKs7Jqp7ZWY6rOg7J6QIO2VoCDtla3rqqnsnYQg7ISg7YOd7ZWY64+E66GdIO2VqeuLiOuLpC5cbiIKKyIgIC0tc2V0IDzsnbTrpoQ+IDzqsr3roZw+ICAgICAgPOqyveuhnD7snYQgPOydtOumhD7snZgg64yA7LK07ZWt66qp7Jy866GcIOyngOygle2VqeuLiOuLpC5cbiIKKyIgIC0tYWxsICAgICAgICAgICAgICAgICAgICDrqqjrk6Ag64yA7LK07ZWt66qp7JeQIC0tY29uZmln7J2EIOyggeyaqe2VqeuLiOuLpC5cbiIKKyJcbiIKKyI866eB7YGsPuuKlCAlcy887J2066aEPuydhCjrpbwpIOqwgOumrO2CpOuKlCDsi6zrs7zrpq0g66eB7YGs7J6F64uI64ukLlxuIgorIiAgKOyYiDogL3Vzci9iaW4vcGFnZXIpXG4iCisiPOydtOumhD7snYAg66eB7YGsIOq3uOujueydmCDrp4jsiqTthLAg7J2066aE7J6F64uI64ukLlxuIgorIiAgKOyYiDogcGFnZXIpXG4iCisiPOqyveuhnD7ripQg64yA7LK07ZWt66qp7J2YIOuMgOyDgSDtjIzsnbzsnZgg7JyE7LmY7J6F64uI64ukLlxuIgorIiAgKOyYiDogL3Vzci9iaW4vbGVzcylcbiIKKyI87Jqw7ISg7Iic7JyEPuuKlCDsoJXsiJjroZwsIOyIq+yekOqwgCDrhpLsnYAg7Ji17IWY7J287IiY66GdIOyekOuPmeuqqOuTnOyXkOyEnCDsmrDshKAg7Iic7JyE6rCAIOuGkuyKteuLiCIKKyLri6QuXG4iCisiXG4iCisi7Ji17IWYOlxuIgorIiAgLS1hbHRkaXIgPOuUlOugie2EsOumrD4gICAgICDrjIDssrTtla3rqqkg65SU66CJ7YSw66as66W8IOuzgOqyve2VqeuLiOuLpC5cbiIKKyIgIC0tYWRtaW5kaXIgPOuUlOugie2EsOumrD4gICAg6rSA66asIOuUlOugie2EsOumrOulvCDrs4Dqsr3tlanri4jri6QuXG4iCisiICAtLXNraXAtYXV0byAgICAgICAgICAgICAg7J6Q64+ZIOuqqOuTnOyXkOyEnCDshKTsoJXtlZwg64yA7LK0IO2VreuqqeyXkCDrjIDtlbQg7ZmV7J24IOyniOusuCIKKyLsnYRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICDtlZjsp4Ag7JWK7Iq164uI64ukICgtLWNvbmZpZyDsmLXshZjsl5DshJzrp4wg7IOB6rSAIOyeiOydjClcbiIKKyIgIC0tdmVyYm9zZSAgICAgICAgICAgICAgICDsnqHri6TtlZjqsowg7J6R7JeF7ZWY7JesIOuNlCDrp47snYAg7KCV67O066W8IO2RnOyLnO2VqeuLiOuLpC5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICDsobDsmqntnogg7J6R7JeF7ZWY7JesIOy2nOugpeydhCDstZzshozroZwg7ZWp64uI64ukLlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIOydtCDrj4Tsm4Drp5Ag66mU7Iuc7KeA66W8IO2RnOyLnO2VqeuLiOuLpC5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICDrsoTsoITsnYQg7ZGc7Iuc7ZWp64uI64ukLlxuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyI8bGluaz4gaXMgdGhlIHN5bWxpbmsgcG9pbnRpbmcgdG8gJXMvPG5hbWU+LlxuIgorIiAgKGUuZy4gL3Vzci9iaW4vcGFnZXIpXG4iCisiPG5hbWU+IGlzIHRoZSBtYXN0ZXIgbmFtZSBmb3IgdGhpcyBsaW5rIGdyb3VwLlxuIgorIiAgKGUuZy4gcGFnZXIpXG4iCisiPHBhdGg+IGlzIHRoZSBsb2NhdGlvbiBvZiBvbmUgb2YgdGhlIGFsdGVybmF0aXZlIHRhcmdldCBmaWxlcy5cbiIKKyIgIChlLmcuIC91c3IvYmluL2xlc3MpXG4iCisiPHByaW9yaXR5PiBpcyBhbiBpbnRlZ2VyOyBvcHRpb25zIHdpdGggaGlnaGVyIG51bWJlcnMgaGF2ZSBoaWdoZXIgcHJpb3JpdHkgIgorImluXG4iCisiICBhdXRvbWF0aWMgbW9kZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTMxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiT3B0aW9uczpcbiIKKyN8ICIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICBzZXQgdGhlIGRpcmVjdG9yeSB3aXRoIHRoZSBzdGF0b3ZlcnJpZGUgZmlsZS5cbiIKKyN8ICIgIC0tdXBkYXRlICAgICAgICAgICAgICAgICBpbW1lZGlhdGVseSB1cGRhdGUgZmlsZSBwZXJtaXNzaW9ucy5cbiIKKyN8ICIgIC0tZm9yY2UgICAgICAgICAgICAgICAgICBmb3JjZSBhbiBhY3Rpb24gZXZlbiBpZiBhIHNhbml0eSBjaGVjayBmYWlscy5cbiIKKyN8ICIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBxdWlldCBvcGVyYXRpb24sIG1pbmltYWwgb3V0cHV0LlxuIgorI3wgIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisjfCAiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyN8ICJcbiIKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWx0ZGlyIDxkaXJlY3Rvcnk+ICAgICBjaGFuZ2UgdGhlIGFsdGVybmF0aXZlcyBkaXJlY3RvcnkuXG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgY2hhbmdlIHRoZSBhZG1pbmlzdHJhdGl2ZSBkaXJlY3RvcnkuXG4iCisiICAtLWxvZyA8ZmlsZT4gICAgICAgICAgICAgY2hhbmdlIHRoZSBsb2cgZmlsZS5cbiIKKyIgIC0tZm9yY2UgICAgICAgICAgICAgICAgICBhbGxvdyByZXBsYWNpbmcgZmlsZXMgd2l0aCBhbHRlcm5hdGl2ZSBsaW5rcy5cbiIKKyIgIC0tc2tpcC1hdXRvICAgICAgICAgICAgICBza2lwIHByb21wdCBmb3IgYWx0ZXJuYXRpdmVzIGNvcnJlY3RseSAiCisiY29uZmlndXJlZFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGluIGF1dG9tYXRpYyBtb2RlIChyZWxldmFudCBmb3IgLS1jb25maWcgb25seSlcbiIKKyIgIC0tdmVyYm9zZSAgICAgICAgICAgICAgICB2ZXJib3NlIG9wZXJhdGlvbiwgbW9yZSBvdXRwdXQuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgcXVpZXQgb3BlcmF0aW9uLCBtaW5pbWFsIG91dHB1dC5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCittc2dzdHIgIiIKKyLsmLXshZg6XG4iCisiICAtLWFkbWluZGlyIDzrlJTroInthLDrpqw+ICAgIHN0YXRvdmVycmlkZSDtjIzsnbzsnbQg7J6I64qUIOuUlOugie2EsOumrOulvCDsp4DsoJXtlanri4jri6QuXG4iCisiICAtLXVwZGF0ZSAgICAgICAgICAgICAgICAg7YyM7J28IOq2jO2VnOydhCDrsJTroZwg67CU6r+J64uI64ukLlxuIgorIiAgLS1mb3JjZSAgICAgICAgICAgICAgICAgIOqygOyCrOqwgCDsi6TtjKjtlZjrjZTrnbzrj4Qg6rCV7KCc7ZWp64uI64ukLlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIOy2nOugpeydhCDstZzshoztmZTtlZjripQg7KGw7Jqp7ZWcIOuqqOuTnC5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICDsnbQg64+E7JuA66eQIOuplOyLnOyngOulvCDtkZzsi5ztlanri4jri6QuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAg67KE7KCE7J2EIO2RnOyLnO2VqeuLiOuLpC5cbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTYzCittc2dpZCAiZXJyb3IiCittc2dzdHIgIuyYpOulmCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE5MworbXNnaWQgIndhcm5pbmciCittc2dzdHIgIuqyveqzoCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjM1NgorIywgYy1mb3JtYXQKK21zZ2lkICJ0d28gY29tbWFuZHMgc3BlY2lmaWVkOiAtLSVzIGFuZCAtLSVzIgorbXNnc3RyICLrkZAg6rCA7KeAIOuqheugueydtCDsp4DsoJXrkJjsl4jsirXri4jri6Q6IC0tJXMg67CPIC0tJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzozODcKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImNhbm5vdCBhcHBlbmQgdG8gJXM6ICVzIgorbXNnaWQgImNhbm5vdCBhcHBlbmQgdG8gJyVzJyIKK21zZ3N0ciAiJXMg7YyM7J287JeQIOu2meydvCDsiJgg7JeG7Iq164uI64ukOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjU1NgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHJlbW92ZSAlczogJXMiCittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSAnJXMnIgorbXNnc3RyICIlc+ydhCjrpbwpIOyngOyauCDsiJgg7JeG7Iq164uI64ukOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgZmlsZSB3aGlsZSB0cnlpbmcgdG8gcmVhZCAlcyIKK21zZ3N0ciAiJXMg7YyM7J287J2EIOydveuKlCDspJEg7JiI7IOB7LmYIOuqu+2VmOqyjCDtjIzsnbzsnbQg64Gd64Ks7Iq164uI64ukIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTExMworIywgYy1mb3JtYXQKK21zZ2lkICJ3aGlsZSByZWFkaW5nICVzOiAlcyIKK21zZ3N0ciAiJXMg7YyM7J287J2EIOydveuKlCDspJE6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTExOQorIywgYy1mb3JtYXQKK21zZ2lkICJsaW5lIG5vdCB0ZXJtaW5hdGVkIHdoaWxlIHRyeWluZyB0byByZWFkICVzIgorbXNnc3RyICIlcyDtjIzsnbzsnYQg7J2964qUIOykkSDspITsnbQg64Gd64Ks7Iq164uI64ukIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTEzNworIywgYy1mb3JtYXQKK21zZ2lkICIlcyBjb3JydXB0OiAlcyIKK21zZ3N0ciAiJXMg66ed6rCA7KGM7Iq164uI64ukOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAibmV3bGluZXMgcHJvaGliaXRlZCBpbiB1cGRhdGUtYWx0ZXJuYXRpdmVzIGZpbGVzICglcykiCittc2dzdHIgInVwZGF0ZS1hbHRlcm5hdGl2ZXMg7YyM7J28KCVzKeyXkOuKlCDspITrsJTqv4jsnbQg6riI7KeA65CY7Ja0IOyeiOyKteuLiOuLpC4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTYzCittc2dpZCAic2xhdmUgbmFtZSIKK21zZ3N0ciAi7Iqs66CI7J2067iMIOydtOumhCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNzEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImR1cGxpY2F0ZSBzbGF2ZSAlcyIKK21zZ2lkICJkdXBsaWNhdGUgc2xhdmUgbmFtZSAlcyIKK21zZ3N0ciAi7KSR67O165CcIOyKrOugiOydtOu4jCAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNzQKK21zZ2lkICJzbGF2ZSBsaW5rIgorbXNnc3RyICLsiqzroIjsnbTruIwg66eB7YGsIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE3OAorIywgYy1mb3JtYXQKK21zZ2lkICJzbGF2ZSBsaW5rIHNhbWUgYXMgbWFpbiBsaW5rICVzIgorbXNnc3RyICLsiqzroIjsnbTruIwg66eB7YGs6rCAICVzIOuplOyduCDrp4HtgazsmYAg6rCZ7Iq164uI64ukIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE4NSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQxMgorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgc2xhdmUgbGluayAlcyIKK21zZ3N0ciAi7KSR67O165CcIOyKrOugiOydtOu4jCDrp4HtgawgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjA0Cittc2dpZCAibWFzdGVyIGZpbGUiCittc2dzdHIgIuuniOyKpO2EsCDtjIzsnbwiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjEzCisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBwYXRoICVzIgorbXNnc3RyICLspJHrs7XrkJwg6rK966GcICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIyNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYWx0ZXJuYXRpdmUgJXMgKHBhcnQgb2YgbGluayBncm91cCAlcykgZG9lc24ndCBleGlzdC4gUmVtb3ZpbmcgZnJvbSBsaXN0IG9mICIKKyJhbHRlcm5hdGl2ZXMuIgorbXNnc3RyICIiCisiJXMg64yA7LK0IO2VreuqqeydtCAo66eB7YGsIOq3uOujuSAlc+ydmCDqtazshLEg7JqU7IaMKSDsl4bsirXri4jri6QuIOuMgOyytCDtla3rqqnsnZgg66qp66Gd7JeQ7IScIOyngOybgSIKKyLri4jri6QuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIyOSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI0MAorbXNnaWQgInByaW9yaXR5IgorbXNnc3RyICLsmrDshKDsiJzsnIQiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjMyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjQ5Cittc2dpZCAic2xhdmUgZmlsZSIKK21zZ3N0ciAi7Iqs66CI7J2067iMIO2MjOydvCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyNDQKKyMsIGMtZm9ybWF0Cittc2dpZCAicHJpb3JpdHkgb2YgJXM6ICVzIgorbXNnc3RyICIlc+ydmCDsmrDshKDsiJzsnIQ6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI5NworbXNnaWQgInN0YXR1cyIKK21zZ3N0ciAi7IOB7YOcIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI5OQorbXNnaWQgImludmFsaWQgc3RhdHVzIgorbXNnc3RyICLsnpjrqrvrkJwg7IOB7YOcIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTMwNAorbXNnaWQgIm1hc3RlciBsaW5rIgorbXNnc3RyICLrp4jsiqTthLAg66eB7YGsIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTM0OAorIywgYy1mb3JtYXQKK21zZ2lkICJkaXNjYXJkaW5nIG9ic29sZXRlIHNsYXZlIGxpbmsgJXMgKCVzKS4iCittc2dzdHIgIuyCrOyaqSDspJHsp4DtlZwgJXMg7Iqs66CI7J2067iMIOunge2BrCDsl4bslaDripQg7KSRICglcykuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2OQorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MzgKK21zZ2lkICJhdXRvIG1vZGUiCittc2dzdHIgIuyekOuPmSDrqqjrk5wiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTAyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTc4CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYzOQorbXNnaWQgIm1hbnVhbCBtb2RlIgorbXNnc3RyICLsiJjrj5kg66qo65OcIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwNQorIywgYy1mb3JtYXQKK21zZ2lkICIgIGxpbmsgY3VycmVudGx5IHBvaW50cyB0byAlcyIKK21zZ3N0ciAiIOunge2BrOqwgCDtmITsnqwgJXMg6rCA66as7YK0IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwOAorbXNnaWQgIiAgbGluayBjdXJyZW50bHkgYWJzZW50IgorbXNnc3RyICIg66eB7YGs6rCAIO2YhOyerCDsl4bsnYwiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTEyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIC0gcHJpb3JpdHkgJWQiCittc2dzdHIgIiVzIC0g7Jqw7ISg7Iic7JyEICVkIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUxNQorIywgYy1mb3JtYXQKK21zZ2lkICIgIHNsYXZlICVzOiAlcyIKK21zZ3N0ciAiICDsiqzroIjsnbTruIwgJXM6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUyMgorIywgYy1mb3JtYXQKK21zZ2lkICJDdXJyZW50ICdiZXN0JyB2ZXJzaW9uIGlzICclcycuIgorbXNnc3RyICLtmITsnqwg6rCA7J6lICfsoovsnYAnIOuyhOyghOydgCAnJXMn7J6F64uI64ukLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MjQKK21zZ2lkICJObyB2ZXJzaW9ucyBhdmFpbGFibGUuIgorbXNnc3RyICLrsoTsoIQg7JeG7J2MLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiVGhlcmUgaXMgJWQgY2hvaWNlIGZvciB0aGUgYWx0ZXJuYXRpdmUgJXMgKHByb3ZpZGluZyAlcykuIgorbXNnaWRfcGx1cmFsICJUaGVyZSBhcmUgJWQgY2hvaWNlcyBmb3IgdGhlIGFsdGVybmF0aXZlICVzIChwcm92aWRpbmcgJXMpLiIKK21zZ3N0clswXSAi64yA7LK0IO2VreuqqSAlMiRz7JeQIOuMgO2VtCAoJTMkcyDsoJzqs7UpICUxJGTqsJwg7ISg7YOd7J20IOyeiOyKteuLiOuLpC4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYwCittc2dpZCAiU2VsZWN0aW9uIgorbXNnc3RyICLshKDtg50iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYxCittc2dpZCAiUGF0aCIKK21zZ3N0ciAi6rK966GcIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2MQorbXNnaWQgIlByaW9yaXR5IgorbXNnc3RyICLsmrDshKDsiJzsnIQiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYxCittc2dpZCAiU3RhdHVzIgorbXNnc3RyICLsg4Htg5wiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTgyCisjLCBjLWZvcm1hdAorbXNnaWQgIlByZXNzIGVudGVyIHRvIGtlZXAgdGhlIGN1cnJlbnQgY2hvaWNlWypdLCBvciB0eXBlIHNlbGVjdGlvbiBudW1iZXI6ICIKK21zZ3N0ciAiIgorIuq4sOuzuCDsgqztla1bKl3snYQg7IKs7Jqp7ZWY66Ck66m0IOyXlO2EsCwg64uk66W4IOqyg+ydhCDsgqzsmqntlZjroKTrqbQg67KI7Zi466W8IOyeheugpe2VmOyLreyLnOyYpDogIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTcyMQorIywgYy1mb3JtYXQKK21zZ2lkICJub3QgcmVwbGFjaW5nICVzIHdpdGggYSBsaW5rLiIKK21zZ3N0ciAiJXMg7YyM7J287J2EIOunge2BrOuhnCDrsJTqvrjsp4Ag7JWK7Iq164uI64ukLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3NjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2FuJ3QgaW5zdGFsbCB1bmtub3duIGNob2ljZSAlcyIKK21zZ3N0ciAi7JWMIOyImCDsl4bripQgJXMg7ISg7YOd7J2EIOyEpOy5mO2VmOyngCDslYrsirXri4jri6QiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNzgwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJza2lwIGNyZWF0aW9uIG9mICVzIGJlY2F1c2UgYXNzb2NpYXRlZCBmaWxlICVzIChvZiBsaW5rIGdyb3VwICVzKSBkb2Vzbid0ICIKKyJleGlzdC4iCittc2dzdHIgIiVzIOunjOuTpOq4sOulvCDqsbTrhIgg65yB64uI64ukLiDqtIDroKggJXMg7YyM7J287J20ICjrp4Htgawg6re466O5ICVzIOyGjOyGjSkg7JeG7Iq164uI64ukLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3OTAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIm5vdCByZXBsYWNpbmcgJXMgd2l0aCBhIGxpbmsuIgorbXNnaWQgIm5vdCByZW1vdmluZyAlcyBzaW5jZSBpdCdzIG5vdCBhIHN5bWxpbmsuIgorbXNnc3RyICIlcyDtjIzsnbzsnYQg66eB7YGs66GcIOuwlOq+uOyngCDslYrsirXri4jri6QuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA0MSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA0NworIywgYy1mb3JtYXQKK21zZ2lkICJDYWxsICVzLiIKK21zZ3N0ciAiJXMg7Zi47LacLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiQWx0ZXJuYXRpdmUgJXMgdW5jaGFuZ2VkIGJlY2F1c2UgY2hvaWNlICVzIGlzIG5vdCBhdmFpbGFibGUuIgorbXNnc3RyICIlcyDrjIDssrQg7ZWt66qp7J2EIOuwlOq+uOyngCDslYrsirXri4jri6QuICVzIOyEoO2DneydtCDsl4bsirXri4jri6QuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA1NQorIywgYy1mb3JtYXQKK21zZ2lkICJTa2lwIHVua25vd24gYWx0ZXJuYXRpdmUgJXMuIgorbXNnc3RyICLslYwg7IiYIOyXhuuKlCAlcyDrjIDssrQg7ZWt66qp7J2EIOqxtOuEiCDrnIHri4jri6QuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA3NworIywgYy1mb3JtYXQKK21zZ2lkICJsaW5lIHRvbyBsb25nIG9yIG5vdCB0ZXJtaW5hdGVkIHdoaWxlIHRyeWluZyB0byByZWFkICVzIgorbXNnc3RyICIlcyDtjIzsnbzsnYQg7J2964qUIOykkSDspITsnbQg64SI66y0IOq4uOqxsOuCmCDspITsnbQg64Gd64KY7KeAIOyViuyVmOyKteuLiOuLpCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwOTAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxMDMKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTEzCisjLCBjLWZvcm1hdAorbXNnaWQgIlNraXAgaW52YWxpZCBsaW5lOiAlcyIKK21zZ3N0ciAi7J6Y66q765CcIOykhOydhCDqsbTrhIgg65yB64uI64ukOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVuYW1pbmcgJXMgbGluayBmcm9tICVzIHRvICVzLiIKK21zZ3N0ciAiJXMg66eB7YGs66W8ICVz7JeQ7IScICVz7Jy8KOuhnCkg7J2066aE7J2EIOuwlOq/ieuLiOuLpC4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTczCisjLCBjLWZvcm1hdAorbXNnaWQgInJlbmFtaW5nICVzIHNsYXZlIGxpbmsgZnJvbSAlcyB0byAlcy4iCittc2dzdHIgIiVzIOyKrOugiOydtOu4jCDrp4HtgazrpbwgJXPsl5DshJwgJXMo7Jy8KeuhnCDsnbTrpoTsnYQg67CU6r+J64uI64ukLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgbmFtZSAoJXMpIG11c3Qgbm90IGNvbnRhaW4gJy8nIGFuZCBzcGFjZXMuIgorbXNnc3RyICLrjIDssrQg7J2066aEKCVzKeydgCAnLyfrgpgg6rO167Cx7J20IOuTpOyWtOqwgOuptCDslYgg65Cp64uI64ukLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgbGluayBpcyBub3QgYWJzb2x1dGUgYXMgaXQgc2hvdWxkIGJlOiAlcyIKK21zZ3N0ciAi64yA7LK0IO2VreuqqSDrp4HtgazripQg7KCI64yAIOqyveuhnOyXrOyVvCDtlZjsp4Drp4wg7JWE64uZ64uI64ukOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxOTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgcGF0aCBpcyBub3QgYWJzb2x1dGUgYXMgaXQgc2hvdWxkIGJlOiAlcyIKK21zZ3N0ciAi64yA7LK0IO2VreuqqSDqsr3roZzqsIAg7KCI64yAIOqyveuhnOyXrOyVvCDtlZjsp4Drp4wg7JWE64uZ64uI64ukOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyMjQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImFsdGVybmF0aXZlICVzIGNhbid0IGJlIG1hc3RlcjogJXMiCittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgbWFzdGVyOiBpdCBpcyBhIHNsYXZlIG9mICVzIgorbXNnc3RyICIlcyDrjIDssrQg7ZWt66qp7J2AIOuniOyKpO2EsOqwgCDrkKAg7IiYIOyXhuyKteuLiOuLpDogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjMyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjY3CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIGxpbmsgJXMgaXMgYWxyZWFkeSBtYW5hZ2VkIGJ5ICVzLiIKK21zZ3N0ciAi64yA7LK0IO2VreuqqSAlcyDrp4HtgazripQg7J2066+4ICVz7JeQ7IScIOq0gOumrO2VqeuLiOuLpC4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjQxCisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIHBhdGggJXMgZG9lc24ndCBleGlzdC4iCittc2dzdHIgIuuMgOyytCDtla3rqqkg6rK966GcICVz7J20KOqwgCkg7JeG7Iq164uI64ukLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImFsdGVybmF0aXZlICVzIGNhbid0IGJlIHNsYXZlIG9mICVzOiAlcyIKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBzbGF2ZSBvZiAlczogaXQgaXMgYSBtYXN0ZXIgYWx0ZXJuYXRpdmUuIgorbXNnc3RyICIlcyDrjIDssrQg7YyM7J287J2AICVz7J2YIOyKrOugiOydtOu4jOqwgCDrkKAg7IiYIOyXhuyKteuLiOuLpDogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjU4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBtYXN0ZXI6ICVzIgorbXNnaWQgImFsdGVybmF0aXZlICVzIGNhbid0IGJlIHNsYXZlIG9mICVzOiBpdCBpcyBhIHNsYXZlIG9mICVzIgorbXNnc3RyICIlcyDrjIDssrQg7ZWt66qp7J2AIOuniOyKpO2EsOqwgCDrkKAg7IiYIOyXhuyKteuLiOuLpDogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjc4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJhbHRlcm5hdGl2ZSBsaW5rICVzIGlzIGFscmVhZHkgbWFuYWdlZCBieSAlcy4iCittc2dpZCAiYWx0ZXJuYXRpdmUgbGluayAlcyBpcyBhbHJlYWR5IG1hbmFnZWQgYnkgJXMgKHNsYXZlIG9mICVzKS4iCittc2dzdHIgIuuMgOyytCDtla3rqqkgJXMg66eB7YGs64qUIOydtOuvuCAlc+yXkOyEnCDqtIDrpqztlanri4jri6QuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjMyNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGFyZ3VtZW50IGAlcyciCittc2dzdHIgIuyVjCDsiJgg7JeG64qUIOyduOyImCAnJXMnIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM0MworbXNnaWQgIi0taW5zdGFsbCBuZWVkcyA8bGluaz4gPG5hbWU+IDxwYXRoPiA8cHJpb3JpdHk+IgorbXNnc3RyICItLWluc3RhbGzsnYAgPOunge2BrD4gPOydtOumhD4gPOqyveuhnD4gPOyasOyEoOyInOychD7qsIAg7ZWE7JqU7ZWp64uI64ukLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNDYgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzOTcKK21zZ2lkICI8bGluaz4gYW5kIDxwYXRoPiBjYW4ndCBiZSB0aGUgc2FtZSIKK21zZ3N0ciAiPGxpbms+7JmAIDxwYXRoPuuKlCDqsJnsnYQg7IiYIOyXhuyKteuLiOuLpCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNDkKK21zZ2lkICJwcmlvcml0eSBtdXN0IGJlIGFuIGludGVnZXIiCittc2dzdHIgInByaW9yaXR564qUIOygleyImOyXrOyVvCDtlanri4jri6QiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzYyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgPG5hbWU+IDxwYXRoPiIKK21zZ3N0ciAiLS0lcyDsmLXshZjsnYAgPOydtOumhD4gPOqyveuhnD7qsIAg7ZWE7JqU7ZWp64uI64ukLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyA8bmFtZT4iCittc2dzdHIgIi0tJXMg7Ji17IWY7J2AIDzsnbTrpoQ+7J20IO2VhOyalO2VqeuLiOuLpC4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzg4Cittc2dpZCAiLS1zbGF2ZSBvbmx5IGFsbG93ZWQgd2l0aCAtLWluc3RhbGwiCittc2dzdHIgIi0tc2xhdmXripQgLS1pbnN0YWxs7JmAIO2VqOq7mCDsgqzsmqntlbTslbwg7ZWp64uI64ukIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM5MAorbXNnaWQgIi0tc2xhdmUgbmVlZHMgPGxpbms+IDxuYW1lPiA8cGF0aD4iCittc2dzdHIgIi0tc2xhdmXripQgPOunge2BrD4gPOydtOumhD4gPOqyveuhnD7qsIAg7ZWE7JqU7ZWp64uI64ukLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzOTkKKyMsIGMtZm9ybWF0Cittc2dpZCAibmFtZSAlcyBpcyBib3RoIHByaW1hcnkgYW5kIHNsYXZlIgorbXNnc3RyICIlcyDsnbTrpoTsnYAg7ZSE65287J2066i466as7JmAIOyKrOugiOydtOu4jCDrkZgg64uk7J6F64uI64ukIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQwMgorIywgYy1mb3JtYXQKK21zZ2lkICJsaW5rICVzIGlzIGJvdGggcHJpbWFyeSBhbmQgc2xhdmUiCittc2dzdHIgIiVzIOunge2BrOuKlCDtlITrnbzsnbTrqLjrpqzsmYAg7Iqs66CI7J2067iMIOuRmCDri6TsnoXri4jri6QiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDIyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSA8ZmlsZT4gYXJndW1lbnQiCittc2dzdHIgIi0tJXMg7Ji17IWY7J2AIDztjIzsnbw+IOyduOyImOulvCDrsJvsirXri4jri6QiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDQ4CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gb3B0aW9uIGAlcyciCittc2dzdHIgIuyVjCDsiJgg7JeG64qUIOyYteyFmCAnJXMnIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQ1MworbXNnaWQgIiIKKyJuZWVkIC0tZGlzcGxheSwgLS1xdWVyeSwgLS1saXN0LCAtLWdldC1zZWxlY3Rpb25zLCAtLWNvbmZpZywgLS1zZXQsIC0tc2V0LSIKKyJzZWxlY3Rpb25zLCAtLWluc3RhbGwsIC0tcmVtb3ZlLCAtLWFsbCwgLS1yZW1vdmUtYWxsIG9yIC0tYXV0byIKK21zZ3N0ciAiIgorIi0tZGlzcGxheSwgLS1xdWVyeSwgLS1saXN0LCAtLWdldC1zZWxlY3Rpb25zLCAtLWNvbmZpZywgLS1zZXQsIC0tc2V0LSIKKyJzZWxlY3Rpb25zLCAtLWluc3RhbGwsIC0tcmVtb3ZlLCAtLWFsbCwgLS1yZW1vdmUtYWxsLCAtLWF1dG8gIOyYteyFmCDspJEg7ZWY64KY6rCAICIKKyLtlYTsmpTtlanri4jri6QiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDkwCittc2dpZCAiPHN0YW5kYXJkIGlucHV0PiIKK21zZ3N0ciAiPO2RnOykgCDsnoXroKU+IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUwMCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUwMworIywgYy1mb3JtYXQKK21zZ2lkICJubyBhbHRlcm5hdGl2ZXMgZm9yICVzLiIKK21zZ3N0ciAiJXPsnZgg64yA7LK0IO2VreuqqeydtCDsl4bsirXri4jri6QuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUzMAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiJXMgaXMgZGFuZ2xpbmcsIGl0IHdpbGwgYmUgdXBkYXRlZCB3aXRoIGJlc3QgY2hvaWNlLiIKK21zZ2lkICIlcy8lcyBpcyBkYW5nbGluZywgaXQgd2lsbCBiZSB1cGRhdGVkIHdpdGggYmVzdCBjaG9pY2UuIgorbXNnc3RyICIlc+ydtCjqsIApIOyVhOustCDqsoPrj4Qg6rCA66as7YKk7KeAIOyViuyKteuLiOuLpC4g7KCB64u57Z6IIOyEoO2DneuQmOyWtCDrsJTrgJ3ri4jri6QuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUzNAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiVzIGhhcyBiZWVuIGNoYW5nZWQgKG1hbnVhbGx5IG9yIGJ5IGEgc2NyaXB0KS4gU3dpdGNoaW5nIHRvIG1hbnVhbCAiCisjfCAidXBkYXRlcyBvbmx5LiIKK21zZ2lkICIiCisiJXMvJXMgaGFzIGJlZW4gY2hhbmdlZCAobWFudWFsbHkgb3IgYnkgYSBzY3JpcHQpLiBTd2l0Y2hpbmcgdG8gbWFudWFsICIKKyJ1cGRhdGVzIG9ubHkuIgorbXNnc3RyICIiCisiJXMg67OA6rK965CY7JeI7Iq164uI64ukICjsiJjrj5nsnLzroZwg7KeB7KCRLCDtmLnsnYAg7Iqk7YGs66a97Yq466GcKS4g7IiY64+ZIOyXheuNsOydtO2KuOunjCDsgqzsmqntlZjquLAiCisi66GcIOuzgOqyve2VqeuLiOuLpC4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTQyCisjLCBjLWZvcm1hdAorbXNnaWQgInNldHRpbmcgdXAgYXV0b21hdGljIHNlbGVjdGlvbiBvZiAlcy4iCittc2dzdHIgIiVz7J2YIOyekOuPmSDshKDtg53snYQg7ISk7KCV7ZWY64qUIOykkeyeheuLiOuLpC4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTUxCisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlICVzIGZvciAlcyBub3QgcmVnaXN0ZXJlZCwgbm90IHNldHRpbmcuIgorbXNnc3RyICIlMiRz7J2YIOuMgOyytCDtla3rqqkgJTEkcyDrk7HroZ3rkJjsp4Ag7JWK7JWY7Jy866+A66GcIOyEpOygle2VmOyngCDslYrsirXri4jri6QuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU1NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU2MworIywgYy1mb3JtYXQKK21zZ2lkICJUaGVyZSBpcyBubyBwcm9ncmFtIHdoaWNoIHByb3ZpZGVzICVzLiIKK21zZ3N0ciAiJXMg7KCc6rO17ZWY64qUIO2UhOuhnOq3uOueqOydtCDsl4bsirXri4jri6QuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU2NSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU3NQorbXNnaWQgIk5vdGhpbmcgdG8gY29uZmlndXJlLiIKK21zZ3N0ciAi7ISk7KCV7ZWgIOqyg+ydtCDsl4bsirXri4jri6QuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU3MworIywgYy1mb3JtYXQKK21zZ2lkICJUaGVyZSBpcyBvbmx5IG9uZSBhbHRlcm5hdGl2ZSBpbiBsaW5rIGdyb3VwICVzOiAlcyIKK21zZ3N0ciAiJXMg66eB7YGsIOq3uOujueyXkOuKlCDtlZwg6rCcIOuMgOyytCDtla3rqqnrp4wg7J6I7Iq164uI64ukOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1ODQKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgZm9yICVzIG5vdCByZWdpc3RlcmVkLCBub3QgcmVtb3ZpbmcuIgorbXNnc3RyICIlMiRz7J2YIOuMgOyytCDtla3rqqkgJTEkcyDrk7HroZ3rkJjsp4Ag7JWK7JWY7Jy866+A66GcIOyngOyasOyngCDslYrsirXri4jri6QuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU5MgorIywgYy1mb3JtYXQKK21zZ2lkICJyZW1vdmluZyBtYW51YWxseSBzZWxlY3RlZCBhbHRlcm5hdGl2ZSAtIHN3aXRjaGluZyAlcyB0byBhdXRvIG1vZGUiCittc2dzdHIgIiIKKyLsiJjrj5nsnLzroZwg7ISg7YOd7ZWcIOuMgOyytCDtla3rqqnsnYQg7KeA7Jqw64qUIOykkSAtICVz7J2EKOulvCkg7J6Q64+ZIOuqqOuTnOuhnCDrs4Dqsr3tlanri4jri6QiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjE3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJhdXRvbWF0aWMgdXBkYXRlcyBvZiAlcyBhcmUgZGlzYWJsZWQsIGxlYXZpbmcgaXQgYWxvbmUuIgorbXNnaWQgImF1dG9tYXRpYyB1cGRhdGVzIG9mICVzLyVzIGFyZSBkaXNhYmxlZCwgbGVhdmluZyBpdCBhbG9uZS4iCittc2dzdHIgIiVz7J2YIOyekOuPmSDsl4XrjbDsnbTtirjqsIAg7KSR7KeA65CY7JeI7Jy866+A66GcIOqwgOunjO2eiCDrkaHri4jri6QuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYxOQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidG8gcmV0dXJuIHRvIGF1dG9tYXRpYyB1cGRhdGVzIHVzZSBgdXBkYXRlLWFsdGVybmF0aXZlcyAtLWF1dG8gJXMnLiIKK21zZ2lkICJ0byByZXR1cm4gdG8gYXV0b21hdGljIHVwZGF0ZXMgdXNlICclcyAtLWF1dG8gJXMnLiIKK21zZ3N0ciAiIgorIuuLpOyLnCDsnpDrj5kg7JeF642w7J207Yq466W8IO2VmOugpOuptCBgdXBkYXRlLWFsdGVybmF0aXZlcyAtLWF1dG8gJXMnIOuqheugueydhCDsgqzsmqntlZjsi63si5wiCisi7JikLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MzYKKyMsIGMtZm9ybWF0Cittc2dpZCAidXNpbmcgJXMgdG8gcHJvdmlkZSAlcyAoJXMpIGluICVzLiIKK21zZ3N0ciAiJTEkcyDsgqzsmqntlbTshJwgJTQkc+yXkOyEnCAlMiRzICglMyRzKSDsoJzqs7UuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjY0NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZm9yY2luZyByZWluc3RhbGxhdGlvbiBvZiBhbHRlcm5hdGl2ZSAlcyBiZWNhdXNlIGxpbmsgZ3JvdXAgJXMgaXMgYnJva2VuLiIKK21zZ3N0ciAiIgorIuuMgOyytCDtla3rqqkgJXPsnYQo66W8KSDqsJXsoJzroZwg64uk7IucIOyEpOy5mO2VqeuLiOuLpC4gJXMg66eB7YGsIOq3uOujueydtCDrp53qsIDsoYzsirXri4jri6QuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjY1MQorIywgYy1mb3JtYXQKK21zZ2lkICJjdXJyZW50IGFsdGVybmF0aXZlICVzIGlzIHVua25vd24sIHN3aXRjaGluZyB0byAlcyBmb3IgbGluayBncm91cCAlcy4iCittc2dzdHIgIiIKKyLtmITsnqwg64yA7LK0IO2VreuqqSAlMSRz7J2AKOuKlCkg7JWMIOyImCDsl4bsirXri4jri6QuICUzJHMg66eB7YGsIOq3uOujueydmCAlMiRzKOycvCnroZwg7KCE7ZmY7ZWpIgorIuuLiOuLpC4iCisKKyN+IG1zZ2lkICJpdCBpcyBhIG1hc3RlciBhbHRlcm5hdGl2ZS4iCisjfiBtc2dzdHIgIuuniOyKpO2EsCDrjIDssrQg7YyM7J287J6F64uI64ukLiIKKworI34gbXNnaWQgIml0IGlzIGEgc2xhdmUgb2YgJXMiCisjfiBtc2dzdHIgIiVz7J2YIOyKrOugiOydtOu4jOyeheuLiOuLpCIKKworI34gbXNnaWQgImNhbm5vdCBzdGF0ICVzOiAlcyIKKyN+IG1zZ3N0ciAiJyVzJ+ydmCDsoJXrs7Trpbwg7J297J2EIOyImCDsl4bsirXri4jri6QgOiAlcyIKKworI34gbXNnaWQgInJlYWRsaW5rKCVzKSBmYWlsZWQ6ICVzIgorI34gbXNnc3RyICJyZWFkbGluayglcykg7Iuk7YyoOiAlcyIKKworI34gbXNnaWQgInNjYW4gb2YgJXMgZmFpbGVkOiAlcyIKKyN+IG1zZ3N0ciAiJXMg6rKA7IKs6rCAIOyLpO2MqO2WiOyKteuLiOuLpDogJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlY3V0ZSAlczogJXMiCisjfiBtc2dzdHIgIiVzIOyLpO2WieydtCDsi6TtjKjtlojsirXri4jri6Q6ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIG1ha2UgJXMgYSBzeW1saW5rIHRvICVzOiAlcyIKKyN+IG1zZ3N0ciAiJXPsnYQo66W8KSAlc+yXkCDrjIDtlZwg7Ius67O866atIOunge2BrOuhnCDrp4zrk6Qg7IiYIOyXhuyKteuLiOuLpDogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCAlcyBhcyAlczogJXMiCisjfiBtc2dzdHIgIiVzIO2MjOydvOydhCAlcyDtjIzsnbzroZwg7ISk7LmY7ZWgIOyImCDsl4bsirXri4jri6Q6ICVzIgorCisjfiBtc2dpZCAid2hpbGUgd3JpdGluZyAlczogJXMiCisjfiBtc2dzdHIgIiVzIO2MjOydvOyXkCDsk7DripQg7KSROiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byByZWFkICVzOiAlcyIKKyN+IG1zZ3N0ciAiJXPsnYQo66W8KSDsnb3snYQg7IiYIOyXhuyKteuLiOuLpDogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gY2xvc2UgJXM6ICVzIgorI34gbXNnc3RyICIlcyDri6vsnYQg7IiYIOyXhuyKteuLiOuLpDogJXMiCisKKyN+IG1zZ2lkICJjYW5ub3Qgd3JpdGUgJXM6ICVzIgorI34gbXNnc3RyICIlc+yXkCDsk7gg7IiYIOyXhuyKteuLiOuLpDogJXMiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgInVuYWJsZSB0byBvcGVuIGZpbGUgJyVzJyIKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcmVuYW1lIGZpbGUgJyVzJyB0byAnJXMnIgorI34gbXNnc3RyICInJXMnIO2MjOydvOydhCDsl7Qg7IiYIOyXhuyKteuLiOuLpCIKKworI34gbXNnaWQgInVuYWJsZSB0byB1bmJ1ZmZlciBgJS4yNTVzJyIKKyN+IG1zZ3N0ciAiYCUuMjU1cyfsnZgg67KE7Y2866W8IOyXhuyVqCDsiJgg7JeG7Iq164uI64ukIgorCisjfiBtc2dpZCAicGFydCBmaWxlIGAlLjI1MHMnIGhhcyB0cmFpbGluZyBnYXJiYWdlIgorI34gbXNnc3RyICLqtazshLEg7JqU7IaMIO2MjOydvCBgJS4yNTBzJ+ydmCDrgZ3sl5Ag7JOw66CI6riwIOuNsOydtO2EsOqwgCDsnojsirXri4jri6QiCisKKyN+IG1zZ2lkICJzaXplICU3ZCBvY2N1cnMgJTVkIHRpbWVzXG4iCisjfiBtc2dzdHIgIu2BrOq4sOqwgCAlN2Tsnbgg6rKD7J20ICU1ZOuyiCDrgpjsmLXri4jri6RcbiIKKworI34gbXNnaWQgIm91dCBvZiBtZW1vcnkgcHVzaGluZyBlcnJvciBoYW5kbGVyOiAiCisjfiBtc2dzdHIgIuyYpOulmCDtlbjrk6Trn6zrpbwg7KCA7J6l7ZWY64qU642wIOuplOuqqOumrOqwgCDrtoDsobHtlanri4jri6Q6ICIKKworI34gbXNnaWQgInVuYWJsZSB0byB1bmxvY2sgZHBrZyBzdGF0dXMgZGF0YWJhc2UiCisjfiBtc2dzdHIgImRwa2cg7IOB7YOcIOuNsOydtO2EsOuyoOydtOyKpOydmCDsnqDquIjsnYQg7ZKAIOyImCDsl4bsirXri4jri6QiCisKKyN+IG1zZ2lkICJjb3B5IGluZm8gZmlsZSBgJS4yNTVzJyIKKyN+IG1zZ3N0ciAi7KCV67O0IO2MjOydvCBgJS4yNTVzJyDrs7XsgqwiCisKKyN+IG1zZ2lkICJwYXJzZSBlcnJvciIKKyN+IG1zZ3N0ciAi7YyM7IuxIOyYpOulmCIKKworI34gbXNnaWQgImZhaWxlZCB0byB3cml0ZSBwYXJzaW5nIHdhcm5pbmciCisjfiBtc2dzdHIgIu2MjOyLsSDqsr3qs6Drpbwg7JOw64qU642wIOyLpO2MqO2WiOyKteuLiOuLpCIKKworI34gbXNnaWQgInVuYWJsZSB0byBsb2NrIHRyaWdnZXJzIGFyZWEiCisjfiBtc2dzdHIgIu2KuOumrOqxsCDsmIHsl63snYQg7J6g6riAIOyImCDsl4bsirXri4jri6QiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gcnVuICVzICglLjI1MHMpIgorI34gbXNnc3RyICIlcyAoJS4yNTBzKSDsi6TtlonsnbQg7Iuk7Yyo7ZaI7Iq164uI64ukIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgc2hlbGwgKCUuMjUwcykiCisjfiBtc2dzdHIgIuyJmCAoJS4yNTBzKSDsi6TtlonsnbQg7Iuk7Yyo7ZaI7Iq164uI64ukIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGNoZWNrIGZvciBleGlzdGVuY2Ugb2YgYCUuMjUwcyciCisjfiBtc2dzdHIgImAlLjI1MHMnIO2MjOydvOydtCDsnojripQg7KeAIOqygOyCrO2VoCDsiJgg7JeG7Iq164uI64ukIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgcm0gZm9yIGNsZWFudXAiCisjfiBtc2dzdHIgIuygleumrOulvCDsnITtlbQgcm0g7Iuk7ZaJIOyLpO2MqCIKKworI34gbXNnaWQgIiIKKyN+ICIlcyBkZWJ1Z2dpbmcgb3B0aW9uLCAtLWRlYnVnPTxvY3RhbD4gb3IgLUQ8b2N0YWw+OlxuIgorI34gIlxuIgorI34gIiBudW1iZXIgIHJlZi4gaW4gc291cmNlICAgZGVzY3JpcHRpb25cbiIKKyN+ICIgICAgICAxICAgZ2VuZXJhbCAgICAgICAgICAgR2VuZXJhbGx5IGhlbHBmdWwgcHJvZ3Jlc3MgaW5mb3JtYXRpb25cbiIKKyN+ICIgICAgICAyICAgc2NyaXB0cyAgICAgICAgICAgSW52b2NhdGlvbiBhbmQgc3RhdHVzIG9mIG1haW50YWluZXIgc2NyaXB0c1xuIgorI34gIiAgICAgMTAgICBlYWNoZmlsZSAgICAgICAgICBPdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWRcbiIKKyN+ICIgICAgMTAwICAgZWFjaGZpbGVkZXRhaWwgICAgTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWRcbiIKKyN+ICIgICAgIDIwICAgY29uZmYgICAgICAgICAgICAgT3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZVxuIgorI34gIiAgICAyMDAgICBjb25mZmRldGFpbCAgICAgICBMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGVcbiIKKyN+ICIgICAgIDQwICAgZGVwY29uICAgICAgICAgICAgRGVwZW5kZW5jaWVzIGFuZCBjb25mbGljdHNcbiIKKyN+ICIgICAgNDAwICAgZGVwY29uZGV0YWlsICAgICAgTG90cyBvZiBkZXBlbmRlbmNpZXMvY29uZmxpY3RzIG91dHB1dFxuIgorI34gIiAgMTAwMDAgICB0cmlnZ2VycyAgICAgICAgICBUcmlnZ2VyIGFjdGl2YXRpb24gYW5kIHByb2Nlc3NpbmdcbiIKKyN+ICIgIDIwMDAwICAgdHJpZ2dlcnNkZXRhaWwgICAgTG90cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzXG4iCisjfiAiICA0MDAwMCAgIHRyaWdnZXJzc3R1cGlkICAgIFNpbGx5IGFtb3VudHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2Vyc1xuIgorI34gIiAgIDEwMDAgICB2ZXJ5dmVyYm9zZSAgICAgICBMb3RzIG9mIGRyaXZlbCBhYm91dCBlZyB0aGUgZHBrZy9pbmZvICIKKyN+ICJkaXJlY3RvcnlcbiIKKyN+ICIgICAyMDAwICAgc3R1cGlkbHl2ZXJib3NlICAgSW5zYW5lIGFtb3VudHMgb2YgZHJpdmVsXG4iCisjfiAiXG4iCisjfiAiRGVidWdnaW5nIG9wdGlvbnMgYXJlIGJlIG1peGVkIHVzaW5nIGJpdHdpc2Utb3IuXG4iCisjfiAiTm90ZSB0aGF0IHRoZSBtZWFuaW5ncyBhbmQgdmFsdWVzIGFyZSBzdWJqZWN0IHRvIGNoYW5nZS5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIiVzIOuUlOuyhOq5hSDsmLXshZgsIC0tZGVidWc9PDjsp4TsiJg+IOyVhOuLiOuptCAtRDw47KeE7IiYPjpcbiIKKyN+ICJcbiIKKyN+ICIgICDrsojtmLggIHJlZi4gaW4gc291cmNlICAg7ISk66qFXG4iCisjfiAiICAgICAgMSAgIGdlbmVyYWwgICAgICAgICAgIOydvOuwmOyggeycvOuhnCDsnKDsmqntlZwg7KeE7ZaJIOyDge2ZqSDsoJXrs7RcbiIKKyN+ICIgICAgICAyICAgc2NyaXB0cyAgICAgICAgICAg6rSA66as7J6QIOyKpO2BrOumve2KuOydmCDsi6Ttlokg67CPIOq3uCDqsrDqs7xcbiIKKyN+ICIgICAgIDEwICAgZWFjaGZpbGUgICAgICAgICAg7LKY66as7ZWY64qUIOqwgSDtjIzsnbzsnZgg7Lac66Cl66y8XG4iCisjfiAiICAgIDEwMCAgIGVhY2hmaWxlZGV0YWlsICAgIOyymOumrO2VmOuKlCDqsIEg7YyM7J287J2YIOyekOyEuO2VnCDstpzroKXrrLxcbiIKKyN+ICIgICAgIDIwICAgY29uZmYgICAgICAgICAgICAg6rCBIOyEpOyglSDtjIzsnbzsnZgg7Lac66Cl66y8XG4iCisjfiAiICAgIDIwMCAgIGNvbmZmZGV0YWlsICAgICAgIOqwgSDshKTsoJUg7YyM7J287J2YIOyekOyEuO2VnCDstpzroKXrrLxcbiIKKyN+ICIgICAgIDQwICAgZGVwY29uICAgICAgICAgICAg7J2Y7KG07ISxIOuwjyDstqnrj4xcbiIKKyN+ICIgICAgNDAwICAgZGVwY29uZGV0YWlsICAgICAg7J2Y7KG07ISxIOuwjyDstqnrj4zsnZgg7J6Q7IS47ZWcIOygleuztFxuIgorI34gIiAgMTAwMDAgICB0cmlnZ2VycyAgICAgICAgICDtirjrpqzqsbAg7Zmc7ISx7ZmUIOuwjyDsspjrpqxcbiIKKyN+ICIgIDIwMDAwICAgdHJpZ2dlcnNkZXRhaWwgICAg7Yq466as6rGwIOq0gOugqCDsnpDshLjtlZwg7Lac66ClXG4iCisjfiAiICA0MDAwMCAgIHRyaWdnZXJzc3R1cGlkICAgIO2KuOumrOqxsCDqtIDroKgg7JWE7KO8IOyeoeuLpO2VnCDslpHsnZgg7Lac66ClXG4iCisjfiAiICAgMTAwMCAgIHZlcnl2ZXJib3NlICAgICAgIGRwa2cvaW5mbyDrlJTroInthLDrpqwg65Sw7JyEIOuTseyXkCDqtIDtlZwg7J6h64uk7ZWcIOyglSIKKyN+ICLrs7RcbiIKKyN+ICIgICAyMDAwICAgc3R1cGlkbHl2ZXJib3NlICAg7KCV7Iug7JeG7J20IOyeoeuLpO2VnCDsoJXrs7RcbiIKKyN+ICJcbiIKKyN+ICLrlJTrsoTquYUg7Ji17IWY7J2AIE9SIOu5hO2KuCDsl7DsgrDsnLzroZwg7KGw7ZWp7ZWp64uI64ukLlxuIgorI34gIuqwgeqwgeydmCDsnZjrr7jsmYAg6rCS7J2AIO2Wpe2bhCDrsJTrgJQg7IiYIOyeiOyKteuLiOuLpC5cbiIKKworIywgZnV6enkKKyN+fCBtc2dpZCAiIgorI358ICIlcyBmb3JjaW5nIG9wdGlvbnMgLSBjb250cm9sIGJlaGF2aW91ciB3aGVuIHByb2JsZW1zIGZvdW5kOlxuIgorI358ICIgIHdhcm4gYnV0IGNvbnRpbnVlOiAgLS1mb3JjZS08dGhpbmc+LDx0aGluZz4sLi4uXG4iCisjfnwgIiAgc3RvcCB3aXRoIGVycm9yOiAgICAtLXJlZnVzZS08dGhpbmc+LDx0aGluZz4sLi4uIHwgLS1uby1mb3JjZS0iCisjfnwgIjx0aGluZz4sLi4uXG4iCisjfnwgIiBGb3JjaW5nIHRoaW5nczpcbiIKKyN+fCAiICBhbGwgWyFdICAgICAgICAgICAgICAgIFNldCBhbGwgZm9yY2Ugb3B0aW9uc1xuIgorI358ICIgIGRvd25ncmFkZSBbKl0gICAgICAgICAgUmVwbGFjZSBhIHBhY2thZ2Ugd2l0aCBhIGxvd2VyIHZlcnNpb25cbiIKKyN+fCAiICBjb25maWd1cmUtYW55ICAgICAgICAgIENvbmZpZ3VyZSBhbnkgcGFja2FnZSB3aGljaCBtYXkgaGVscCB0aGlzIG9uZVxuIgorI358ICIgIGhvbGQgICAgICAgICAgICAgICAgICAgUHJvY2VzcyBpbmNpZGVudGFsIHBhY2thZ2VzIGV2ZW4gd2hlbiBvbiBob2xkXG4iCisjfnwgIiAgYmFkLXBhdGggICAgICAgICAgICAgICBQQVRIIGlzIG1pc3NpbmcgaW1wb3J0YW50IHByb2dyYW1zLCBwcm9ibGVtcyAiCisjfnwgImxpa2VseVxuIgorI358ICIgIG5vdC1yb290ICAgICAgICAgICAgICAgVHJ5IHRvIChkZSlpbnN0YWxsIHRoaW5ncyBldmVuIHdoZW4gbm90IHJvb3RcbiIKKyN+fCAiICBvdmVyd3JpdGUgICAgICAgICAgICAgIE92ZXJ3cml0ZSBhIGZpbGUgZnJvbSBvbmUgcGFja2FnZSB3aXRoIGFub3RoZXJcbiIKKyN+fCAiICBvdmVyd3JpdGUtZGl2ZXJ0ZWQgICAgIE92ZXJ3cml0ZSBhIGRpdmVydGVkIGZpbGUgd2l0aCBhbiB1bmRpdmVydGVkICIKKyN+fCAidmVyc2lvblxuIgorI358ICIgIGJhZC12ZXJpZnkgICAgICAgICAgICAgSW5zdGFsbCBhIHBhY2thZ2UgZXZlbiBpZiBpdCBmYWlscyBhdXRoZW50aWNpdHkgIgorI358ICJjaGVja1xuIgorI358ICIgIGRlcGVuZHMtdmVyc2lvbiBbIV0gICAgVHVybiBkZXBlbmRlbmN5IHZlcnNpb24gcHJvYmxlbXMgaW50byB3YXJuaW5nc1xuIgorI358ICIgIGRlcGVuZHMgWyFdICAgICAgICAgICAgVHVybiBhbGwgZGVwZW5kZW5jeSBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzXG4iCisjfnwgIiAgY29uZm5ldyBbIV0gICAgICAgICAgICBBbHdheXMgdXNlIHRoZSBuZXcgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHRcbiIKKyN+fCAiICBjb25mb2xkIFshXSAgICAgICAgICAgIEFsd2F5cyB1c2UgdGhlIG9sZCBjb25maWcgZmlsZXMsIGRvbid0IHByb21wdFxuIgorI358ICIgIGNvbmZkZWYgWyFdICAgICAgICAgICAgVXNlIHRoZSBkZWZhdWx0IG9wdGlvbiBmb3IgbmV3IGNvbmZpZyBmaWxlcyBpZiAiCisjfnwgIm9uZVxuIgorI358ICIgICAgICAgICAgICAgICAgICAgICAgICAgaXMgYXZhaWxhYmxlLCBkb24ndCBwcm9tcHQuIElmIG5vIGRlZmF1bHQgY2FuICIKKyN+fCAiYmUgZm91bmQsXG4iCisjfnwgIiAgICAgICAgICAgICAgICAgICAgICAgICB5b3Ugd2lsbCBiZSBwcm9tcHRlZCB1bmxlc3Mgb25lIG9mIHRoZSBjb25mb2xkICIKKyN+fCAib3JcbiIKKyN+fCAiICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmZuZXcgb3B0aW9ucyBpcyBhbHNvIGdpdmVuXG4iCisjfnwgIiAgY29uZm1pc3MgWyFdICAgICAgICAgICBBbHdheXMgaW5zdGFsbCBtaXNzaW5nIGNvbmZpZyBmaWxlc1xuIgorI358ICIgIGNvbmZhc2sgWyFdICAgICAgICAgICAgT2ZmZXIgdG8gcmVwbGFjZSBjb25maWcgZmlsZXMgd2l0aCBubyBuZXcgIgorI358ICJ2ZXJzaW9uc1xuIgorI358ICIgIGJyZWFrcyBbIV0gICAgICAgICAgICAgSW5zdGFsbCBldmVuIGlmIGl0IHdvdWxkIGJyZWFrIGFub3RoZXIgcGFja2FnZVxuIgorI358ICIgIGNvbmZsaWN0cyBbIV0gICAgICAgICAgQWxsb3cgaW5zdGFsbGF0aW9uIG9mIGNvbmZsaWN0aW5nIHBhY2thZ2VzXG4iCisjfnwgIiAgYXJjaGl0ZWN0dXJlIFshXSAgICAgICBQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyBhcmNoaXRlY3R1cmVcbiIKKyN+fCAiICBvdmVyd3JpdGUtZGlyIFshXSAgICAgIE92ZXJ3cml0ZSBvbmUgcGFja2FnZSdzIGRpcmVjdG9yeSB3aXRoICIKKyN+fCAiYW5vdGhlcidzIGZpbGVcbiIKKyN+fCAiICByZW1vdmUtcmVpbnN0cmVxIFshXSAgIFJlbW92ZSBwYWNrYWdlcyB3aGljaCByZXF1aXJlIGluc3RhbGxhdGlvblxuIgorI358ICIgIHJlbW92ZS1lc3NlbnRpYWwgWyFdICAgUmVtb3ZlIGFuIGVzc2VudGlhbCBwYWNrYWdlXG4iCisjfnwgIlxuIgorI358ICJXQVJOSU5HIC0gdXNlIG9mIG9wdGlvbnMgbWFya2VkIFshXSBjYW4gc2VyaW91c2x5IGRhbWFnZSB5b3VyICIKKyN+fCAiaW5zdGFsbGF0aW9uLlxuIgorI358ICJGb3JjaW5nIG9wdGlvbnMgbWFya2VkIFsqXSBhcmUgZW5hYmxlZCBieSBkZWZhdWx0LlxuIgorI34gbXNnaWQgIiIKKyN+ICIlcyBmb3JjaW5nIG9wdGlvbnMgLSBjb250cm9sIGJlaGF2aW91ciB3aGVuIHByb2JsZW1zIGZvdW5kOlxuIgorI34gIiAgd2FybiBidXQgY29udGludWU6ICAtLWZvcmNlLTx0aGluZz4sPHRoaW5nPiwuLi5cbiIKKyN+ICIgIHN0b3Agd2l0aCBlcnJvcjogICAgLS1yZWZ1c2UtPHRoaW5nPiw8dGhpbmc+LC4uLiB8IC0tbm8tZm9yY2UtIgorI34gIjx0aGluZz4sLi4uXG4iCisjfiAiIEZvcmNpbmcgdGhpbmdzOlxuIgorI34gIiAgYWxsIFshXSAgICAgICAgICAgICAgICBTZXQgYWxsIGZvcmNlIG9wdGlvbnNcbiIKKyN+ICIgIGRvd25ncmFkZSBbKl0gICAgICAgICAgUmVwbGFjZSBhIHBhY2thZ2Ugd2l0aCBhIGxvd2VyIHZlcnNpb25cbiIKKyN+ICIgIGNvbmZpZ3VyZS1hbnkgICAgICAgICAgQ29uZmlndXJlIGFueSBwYWNrYWdlIHdoaWNoIG1heSBoZWxwIHRoaXMgb25lXG4iCisjfiAiICBob2xkICAgICAgICAgICAgICAgICAgIFByb2Nlc3MgaW5jaWRlbnRhbCBwYWNrYWdlcyBldmVuIHdoZW4gb24gaG9sZFxuIgorI34gIiAgYmFkLXBhdGggICAgICAgICAgICAgICBQQVRIIGlzIG1pc3NpbmcgaW1wb3J0YW50IHByb2dyYW1zLCBwcm9ibGVtcyAiCisjfiAibGlrZWx5XG4iCisjfiAiICBub3Qtcm9vdCAgICAgICAgICAgICAgIFRyeSB0byAoZGUpaW5zdGFsbCB0aGluZ3MgZXZlbiB3aGVuIG5vdCByb290XG4iCisjfiAiICBvdmVyd3JpdGUgICAgICAgICAgICAgIE92ZXJ3cml0ZSBhIGZpbGUgZnJvbSBvbmUgcGFja2FnZSB3aXRoIGFub3RoZXJcbiIKKyN+ICIgIG92ZXJ3cml0ZS1kaXZlcnRlZCAgICAgT3ZlcndyaXRlIGEgZGl2ZXJ0ZWQgZmlsZSB3aXRoIGFuIHVuZGl2ZXJ0ZWQgIgorI34gInZlcnNpb25cbiIKKyN+ICIgIGJhZC12ZXJpZnkgICAgICAgICAgICAgSW5zdGFsbCBhIHBhY2thZ2UgZXZlbiBpZiBpdCBmYWlscyBhdXRoZW50aWNpdHkgIgorI34gImNoZWNrXG4iCisjfiAiICBkZXBlbmRzLXZlcnNpb24gWyFdICAgIFR1cm4gZGVwZW5kZW5jeSB2ZXJzaW9uIHByb2JsZW1zIGludG8gd2FybmluZ3NcbiIKKyN+ICIgIGRlcGVuZHMgWyFdICAgICAgICAgICAgVHVybiBhbGwgZGVwZW5kZW5jeSBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzXG4iCisjfiAiICBjb25mbmV3IFshXSAgICAgICAgICAgIEFsd2F5cyB1c2UgdGhlIG5ldyBjb25maWcgZmlsZXMsIGRvbid0IHByb21wdFxuIgorI34gIiAgY29uZm9sZCBbIV0gICAgICAgICAgICBBbHdheXMgdXNlIHRoZSBvbGQgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHRcbiIKKyN+ICIgIGNvbmZkZWYgWyFdICAgICAgICAgICAgVXNlIHRoZSBkZWZhdWx0IG9wdGlvbiBmb3IgbmV3IGNvbmZpZyBmaWxlcyBpZiAiCisjfiAib25lXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIGlzIGF2YWlsYWJsZSwgZG9uJ3QgcHJvbXB0LiBJZiBubyBkZWZhdWx0IGNhbiBiZSAiCisjfiAiZm91bmQsXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIHlvdSB3aWxsIGJlIHByb21wdGVkIHVubGVzcyBvbmUgb2YgdGhlIGNvbmZvbGQgIgorI34gIm9yXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmZuZXcgb3B0aW9ucyBpcyBhbHNvIGdpdmVuXG4iCisjfiAiICBjb25mbWlzcyBbIV0gICAgICAgICAgIEFsd2F5cyBpbnN0YWxsIG1pc3NpbmcgY29uZmlnIGZpbGVzXG4iCisjfiAiICBjb25mYXNrIFshXSAgICAgICAgICAgIE9mZmVyIHRvIHJlcGxhY2UgY29uZmlnIGZpbGVzIHdpdGggbm8gbmV3ICIKKyN+ICJ2ZXJzaW9uc1xuIgorI34gIiAgYnJlYWtzIFshXSAgICAgICAgICAgICBJbnN0YWxsIGV2ZW4gaWYgaXQgd291bGQgYnJlYWsgYW5vdGhlciBwYWNrYWdlXG4iCisjfiAiICBjb25mbGljdHMgWyFdICAgICAgICAgIEFsbG93IGluc3RhbGxhdGlvbiBvZiBjb25mbGljdGluZyBwYWNrYWdlc1xuIgorI34gIiAgYXJjaGl0ZWN0dXJlIFshXSAgICAgICBQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyBhcmNoaXRlY3R1cmVcbiIKKyN+ICIgIG92ZXJ3cml0ZS1kaXIgWyFdICAgICAgT3ZlcndyaXRlIG9uZSBwYWNrYWdlJ3MgZGlyZWN0b3J5IHdpdGggYW5vdGhlcidzICIKKyN+ICJmaWxlXG4iCisjfiAiICB1bnNhZmUtaW8gWyFdICAgICAgICAgIERvIG5vdCBwZXJmb3JtIHNhZmUgSS9PIG9wZXJhdGlvbnMgd2hlbiAiCisjfiAidW5wYWNraW5nXG4iCisjfiAiICByZW1vdmUtcmVpbnN0cmVxIFshXSAgIFJlbW92ZSBwYWNrYWdlcyB3aGljaCByZXF1aXJlIGluc3RhbGxhdGlvblxuIgorI34gIiAgcmVtb3ZlLWVzc2VudGlhbCBbIV0gICBSZW1vdmUgYW4gZXNzZW50aWFsIHBhY2thZ2VcbiIKKyN+ICJcbiIKKyN+ICJXQVJOSU5HIC0gdXNlIG9mIG9wdGlvbnMgbWFya2VkIFshXSBjYW4gc2VyaW91c2x5IGRhbWFnZSB5b3VyICIKKyN+ICJpbnN0YWxsYXRpb24uXG4iCisjfiAiRm9yY2luZyBvcHRpb25zIG1hcmtlZCBbKl0gYXJlIGVuYWJsZWQgYnkgZGVmYXVsdC5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIiVzIOqwleygnCDsmLXshZggLSDrrLjsoJzqsIAg67Cc7IOd7ZWgIOuVjCDsoJzslrQg67Cp67KVOlxuIgorI34gIiAg6rK96rOg7ZWY7KeA66eMIOqzhOyGjTogICAgLS1mb3JjZS087ZWt66qpPiw87ZWt66qpPiwuLi5cbiIKKyN+ICIgIOyYpOulmOuhnCDspJHri6g6ICAgICAgICAtLXJlZnVzZS087ZWt66qpPiw87ZWt66qpPiwuLi4gfCAtLW5vLWZvcmNlLTztla3rqqk+LC4uLlxuIgorI34gIiDqsJXsoJztlaAg7ZWt66qpOlxuIgorI34gIiAgYWxsIFshXSAgICAgICAgICAgICAgICDrqqjrk6Ag6rCV7KCcIOyYteyFmOydhCDsgqzsmqlcbiIKKyN+ICIgIGRvd25ncmFkZSBbKl0gICAgICAgICAg7Yyo7YKk7KeA66W8IOuNlCDrgq7snYAg67KE7KCE7Jy866GcIOuwlOq+uOq4sFxuIgorI34gIiAgY29uZmlndXJlLWFueSAgICAgICAgICDsl7DqtIAg7J6I7J2EIOyImOuPhCDsnojripQg7Yyo7YKk7KeA66W8IOyEpOyglVxuIgorI34gIiAgaG9sZCAgICAgICAgICAgICAgICAgICDqs6DsoJUg7IOB7YOc7J2YIO2MqO2CpOyngOudvOuPhCDsspjrpqxcbiIKKyN+ICIgIGJhZC1wYXRoICAgICAgICAgICAgICAgUEFUSOyXkCDspJHsmpTtlZwg7ZSE66Gc6re4656o7J20IOyXhuuKlCDrrLjsoJzqsIAg7J6I7Ja064+EIOqzhCIKKyN+ICLsho1cbiIKKyN+ICIgIG5vdC1yb290ICAgICAgICAgICAgICAg66Oo7Yq46rCAIOyVhOuLkCDqsr3smrDsl5Drj4Qg7ISk7LmYKOyngOyasOq4sCnrpbwg7Iuc64+EXG4iCisjfiAiICBvdmVyd3JpdGUgICAgICAgICAgICAgIOuLpOuluCDtjKjtgqTsp4Dsl5Ag7J6I64qUIO2MjOydvOydhCDrja7slrQg7JOw6riwXG4iCisjfiAiICBvdmVyd3JpdGUtZGl2ZXJ0ZWQgICAgIOyghO2ZmOuQnCDtjIzsnbzsnYQg7KCE7ZmY65CY7KeAIOyViuydgCDtjIzsnbzroZwg642u7Ja0IOyTsOq4sFxuIgorI34gIiAgYmFkLXZlcmlmeSAgICAgICAgICAgICDtjKjtgqTsp4Ag6rKA7IKs6rCAIOyLpO2MqO2VmOuNlOudvOuPhCDshKTsuZhcbiIKKyN+ICIgIGRlcGVuZHMtdmVyc2lvbiBbIV0gICAg67KE7KCEIOydmOyhtOyEsSDrrLjsoJzrpbwg6rK96rOg66GcIOy3qOq4iVxuIgorI34gIiAgZGVwZW5kcyBbIV0gICAgICAgICAgICDrqqjrk6Ag7J2Y7KG07ISxIOusuOygnOulvCDqsr3qs6DroZwg7Leo6riJXG4iCisjfiAiICBjb25mbmV3IFshXSAgICAgICAgICAgIOusvOyWtOuztOyngCDslYrqs6AsIO2VreyDgSDsg4nroZzsmrQg7ISk7KCVIO2MjOydvCDsgqzsmqlcbiIKKyN+ICIgIGNvbmZvbGQgWyFdICAgICAgICAgICAg66y87Ja067O07KeAIOyViuqzoCwg7ZWt7IOBIOq4sOyhtCDshKTsoJUg7YyM7J28IOyCrOyaqVxuIgorI34gIiAgY29uZmRlZiBbIV0gICAgICAgICAgICDsg4gg7ISk7KCVIO2MjOydvOydtCDsnojsnLzrqbQg66y87Ja067O07KeAIOyViuqzoCDquLDrs7jqsJIg7IKsIgorI34gIuyaqS5cbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAg6riw67O46rCS7J20IOyXhuuKlCDqsr3smrDsl5DripQgY29uZm9sZOuCmCBjb25mbmV3IOyYteyFmCIKKyN+ICLsnbQgXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIOyXhuycvOuptCDrrLzslrTrtIXri4jri6RcbiIKKyN+ICIgIGNvbmZtaXNzIFshXSAgICAgICAgICAg7JeG64qUIOyEpOyglSDtjIzsnbzsnYQg7ZWt7IOBIOyEpOy5mFxuIgorI34gIiAgY29uZmFzayBbIV0gICAgICAgICAgICDshKTsoJUg7YyM7J287J2EIOyDiCDrsoTsoITsnLzroZwg6rWQ7LK07ZWY7KeAIOyViuq4sFxuIgorI34gIiAgYnJlYWtzIFshXSAgICAgICAgICAgICDri6Trpbgg7Yyo7YKk7KeA66W8IOunneqwgOucqOumrOuNlOudvOuPhCDshKTsuZhcbiIKKyN+ICIgIGNvbmZsaWN0cyBbIV0gICAgICAgICAg7Lap64+M7ZWY64qUIO2MqO2CpOyngOudvOuPhCDshKTsuZgg7ZeI7JqpXG4iCisjfiAiICBhcmNoaXRlY3R1cmUgWyFdICAgICAgIO2MqO2CpOyngOydmCDslYTtgqTthY3ss5DqsIAg64us652864+EIOyymOumrFxuIgorI34gIiAgb3ZlcndyaXRlLWRpciBbIV0gICAgICDri6Trpbgg7Yyo7YKk7KeA7JeQIOyeiOuKlCDrlJTroInthLDrpqzrpbwg642u7Ja0IOyTsOq4sFxuIgorI34gIiAgcmVtb3ZlLXJlaW5zdHJlcSBbIV0gICDshKTsuZjtlbTslbwg7ZWgIO2MqO2CpOyngCDsp4DsmrDquLBcbiIKKyN+ICIgIHJlbW92ZS1lc3NlbnRpYWwgWyFdICAg7JeG7Ja07ISgIOyViCDrkKAg7Yyo7YKk7KeAIOyngOyasOq4sFxuIgorI34gIlxuIgorI34gIuqyveqzoCAtIFshXeqwgCDrtpnsnYAg7Ji17IWY7J2EIOyCrOyaqe2VmOuptCDshKTsuZgg7IOB7YOc66W8IOyLrOqwge2VmOqyjCDrp53qsIDsp4gg7IiYIOyeiOyKteuLiCIKKyN+ICLri6QuXG4iCisjfiAiWypd6rCAIO2RnOyLnOuQnCDqsJXsoJwg7Ji17IWY7J2AIOq4sOuzuOyggeycvOuhnCDsgqzsmqntlanri4jri6QuXG4iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBkcGtnLXNwbGl0IHRvIHNlZSBpZiBpdCdzIHBhcnQgb2YgYSBtdWx0aXBhcnRlciIKKyN+IG1zZ3N0ciAiIgorI34gIuuLpOykkSDqtazshLEg7YyM7J287J2YIOydvOu2gOyduOyngCDslYzslYTrs7TquLAg7JyE7ZW0IGRwa2ctc3BsaXTsnYQg7Iuk7ZaJ7ZWY64qU642wIOyLpO2MqO2WiOyKteuLiCIKKyN+ICLri6QiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlY2wgZGVic2lnLXZlcmlmeSIKKyN+IG1zZ3N0ciAiZGVic2lnLXZlcmlmeSDsi6TtlonsnbQg7Iuk7Yyo7ZaI7Iq164uI64ukIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgZHBrZy1kZWIgdG8gZXh0cmFjdCBjb250cm9sIGluZm9ybWF0aW9uIgorI34gbXNnc3RyICJjb250cm9sIOygleuztOulvCDrubwg64K06riwIOychO2VtCBkcGtnLWRlYuydhCDsi6TtlontlaAg7IiYIOyXhuyKteuLiOuLpCIKKworI34gbXNnaWQgInVuYWJsZSB0byBleGVjIGRwa2ctZGViIHRvIGdldCBmaWxlc3lzdGVtIGFyY2hpdmUiCisjfiBtc2dzdHIgIu2MjOydvCDsi5zsiqTthZwg7JWE7Lm07J2067iM66W8IOyWu+q4sCDsnITtlbQgZHBrZy1kZWLsnYQg7Iuk7ZaJ7ZWgIOyImCDsl4bsirXri4jri6QiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gZGVsZXRlIGRpc2FwcGVhcmluZyBjb250cm9sIGluZm8gZmlsZSBgJS4yNTBzJyIKKyN+IG1zZ3N0ciAi7KeA7JuM7JW8IO2VoCDsu6jtirjroaQg7KCV67O0IO2MjOydvCBgJS4yNTBzJ+ydhCjrpbwpIOyngOyauCDsiJgg7JeG7Iq164uI64ukIgorCisjfiBtc2dpZCAiZHBrZzogJXMgbm90IGZvdW5kLlxuIgorI34gbXNnc3RyICJkcGtnOiAlc+ydtCjqsIApIOyXhuyKteuLiOuLpC5cbiIKKworI34gbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byAuLi4vREVCSUFOIgorI34gbXNnc3RyICIuLi4vREVCSUFOIOuUlOugie2EsOumrOuhnCDsnbTrj5ntlZjripTrjbAg7Iuk7Yyo7ZaI7Iq164uI64ukIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgdGFyIC1jZiIKKyN+IG1zZ3N0ciAidGFyIC1jZiDsi6Ttlonsl5Ag7Iuk7Yyo7ZaI7Iq164uI64ukIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIG1ha2UgdG1wZmlsZSAoY29udHJvbCkiCisjfiBtc2dzdHIgIuyehOyLnCDtjIzsnbzsnYQg66eM65Oc64qU642wIOyLpO2MqO2WiOyKteuLiOuLpCAo7Luo7Yq466GkKSIKKworI34gbXNnaWQgImZhaWxlZCB0byB1bmxpbmsgdG1wZmlsZSAoY29udHJvbCksICVzIgorI34gbXNnc3RyICLsnoTsi5wg7YyM7J287J2EIOyngOyasOuKlOuNsCDsi6TtjKjtlojsirXri4jri6QgKOy7qO2KuOuhpCksICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHJld2luZCB0bXBmaWxlIChjb250cm9sKSIKKyN+IG1zZ3N0ciAi7J6E7IucIO2MjOydvOydmCDslZ7snLzroZwg7J2064+Z7ZWY64qU642wIOyLpO2MqO2WiOyKteuLiOuLpCAo7Luo7Yq466GkKSIKKworI34gbXNnaWQgImZhaWxlZCB0byBmc3RhdCB0bXBmaWxlIChjb250cm9sKSIKKyN+IG1zZ3N0ciAi7J6E7IucIO2MjOydvOydmCDsoJXrs7Trpbwg7J2964qU642wIOyLpO2MqO2WiOyKteuLiOuLpCAo7Luo7Yq466GkKSIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIGZpbmQiCisjfiBtc2dzdHIgImZpbmQg7Iuk7ZaJ7J20IOyLpO2MqO2WiOyKteuLiOuLpCIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIHNoIC1jIG12IGZvby8qICZjIgorI34gbXNnc3RyICJzaCAtYyBtdiBmb28vKiAmYyDsi6TtlonsnbQg7Iuk7Yyo7ZaI7Iq164uI64ukIgorCisjfiBtc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gJS4yNTBzIGxlbmd0aCBjb250YWlucyBudWxscyIKKyN+IG1zZ3N0ciAiYCUuMjUwcycg7YyM7J287J20IOyGkOyDgeuQmOyXiOyKteuLiOuLpCAtICUuMjUwcyDquLjsnbTsl5AgMOydtCDrk6TslrQg7J6I7Iq164uI64ukIgorCisjfiBtc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gbmVnYXRpdmUgbWVtYmVyIGxlbmd0aCAlemkiCisjfiBtc2dzdHIgImAlLjI1MHMnIO2MjOydvOydtCDshpDsg4HrkJjsl4jsirXri4jri6QgLSDrqaTrsoQg7YGs6riwKCV6aSnqsIAg7J2M7IiY7J6F64uI64ukIgorCisjfiBtc2dpZCAiZmFpbGVkIGdldHRpbmcgdGhlIGN1cnJlbnQgZmlsZSBwb3NpdGlvbiIKKyN+IG1zZ3N0ciAi7YyM7J287J2YIO2YhOyerCDsnITsuZjrpbwg6rWs7ZWY64qU642wIOyLpO2MqO2WiOyKteuLiOuLpCIKKworI34gbXNnaWQgImZhaWxlZCBzZXR0aW5nIHRoZSBjdXJyZW50IGZpbGUgcG9zaXRpb24iCisjfiBtc2dzdHIgIu2MjOydvOydmCDtmITsnqwg7JyE7LmY66W8IOyngOygle2VmOuKlOuNsCDsi6TtjKjtlojsirXri4jri6QiCisKKyN+IG1zZ2lkICJ2ZXJzaW9uIG51bWJlciIKKyN+IG1zZ3N0ciAi67KE7KCEIOuyiO2YuCIKKworI34gbXNnaWQgIm1lbWJlciBsZW5ndGgiCisjfiBtc2dzdHIgIuuppOuyhCDquLjsnbQiCisKKyN+IG1zZ2lkICJoZWFkZXIgaW5mbyBtZW1iZXIiCisjfiBtc2dzdHIgIu2XpOuNlCDsoJXrs7Qg66mk67KEIgorCisjfiBtc2dpZCAic2tpcHBlZCBjb250cm9sIGFyZWEgZnJvbSAlcyIKKyN+IG1zZ3N0ciAiJXPsl5DshJwg7Luo7Yq466GkIOyYgeyXreydhCDqsbTrhIgg65yB64uI64ukIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSB0ZW1wb3JhcnkgZGlyZWN0b3J5IgorI34gbXNnc3RyICLsnoTsi5wg65SU66CJ7YSw66as66W8IOunjOuTnOuKlOuNsCDsi6TtjKjtlojsirXri4jri6QiCisKKyN+IG1zZ2lkICJpbmZvX3NwZXciCisjfiBtc2dzdHIgImluZm9fc3BldyIKKworI34gbXNnaWQgImluZm8gbGVuZ3RoIgorI34gbXNnc3RyICLsoJXrs7Qg6ri47J20IgorCisjfiBtc2dpZCAidG90YWwgbGVuZ3RoIgorI34gbXNnc3RyICLsoITssrQg6ri47J20IgorCisjfiBtc2dpZCAiZGF0YSBsZW5ndGgiCisjfiBtc2dzdHIgIuuNsOydtO2EsCDquLjsnbQiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBkcGtnLWRlYiB0byBleHRyYWN0IGZpZWxkIHZhbHVlIgorI34gbXNnc3RyICLtlYTrk5wg6rCS7J2EIOu5vCDrgrTquLAg7JyE7ZW0IGRwa2ctZGVi7J2EIOyLpO2Wie2VoCDsiJgg7JeG7Iq164uI64ukIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHN0YXQgJXM6ICVzIgorI34gbXNnc3RyICIlc+ydmCDsoJXrs7Trpbwg7J297J2EIOyImCDsl4bsirXri4jri6Q6ICVzIgorCisjfiBtc2dpZCAic2xhdmUgbmFtZSAlcyBkdXBsaWNhdGVkIgorI34gbXNnc3RyICLsiqzroIjsnbTruIzsnZgg7J2066aEICVz7J20KOqwgCkg7KSR67O165CY7JeI7Iq164uI64ukIgorCisjfiBtc2dpZCAic2xhdmUgbGluayAlcyBkdXBsaWNhdGVkIgorI34gbXNnc3RyICIlcyDsiqzroIjsnbTruIwg66eB7YGs6rCAIOykkeuzteuQmOyXiOyKteuLiOuLpCIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvcG8va3UuZ21vIGIvZHBrZy0xLjE2LjEuMS9wby9rdS5nbW8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjRlMzcyMQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvcG8va3UuZ21vCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvcG8va3UucG8gYi9kcGtnLTEuMTYuMS4xL3BvL2t1LnBvCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjJiODVhMTQKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3BvL2t1LnBvCkBAIC0wLDAgKzEsNTU3MyBAQAorIyBLdXJkaXNoIHRyYW5zbGF0aW9uIGZvciBkcGtnCisjIENvcHlyaWdodCAoYykgKGMpIDIwMDYgQ2Fub25pY2FsIEx0ZCwgYW5kIFJvc2V0dGEgQ29udHJpYnV0b3JzIDIwMDYKKyMgVGhpcyBmaWxlIGlzIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBzYW1lIGxpY2Vuc2UgYXMgdGhlIGRwa2cgcGFja2FnZS4KKyMgRklSU1QgQVVUSE9SIDxFTUFJTEBBRERSRVNTPiwgMjAwNi4KKyMKK21zZ2lkICIiCittc2dzdHIgIiIKKyJQcm9qZWN0LUlkLVZlcnNpb246IGRwa2dcbiIKKyJSZXBvcnQtTXNnaWQtQnVncy1UbzogZGViaWFuLWRwa2dAbGlzdHMuZGViaWFuLm9yZ1xuIgorIlBPVC1DcmVhdGlvbi1EYXRlOiAyMDExLTEwLTE0IDA3OjExKzAyMDBcbiIKKyJQTy1SZXZpc2lvbi1EYXRlOiAyMDA3LTA0LTA3IDEzOjUwKzAxMDBcbiIKKyJMYXN0LVRyYW5zbGF0b3I6IEVyZGFsIFJvbmFoaSA8ZXJkYWwucm9uYWhpQGdtYWlsLmNvbT5cbiIKKyJMYW5ndWFnZS1UZWFtOiBLdXJkaXNoIDxrdUBsaS5vcmc+XG4iCisiTGFuZ3VhZ2U6IGt1XG4iCisiTUlNRS1WZXJzaW9uOiAxLjBcbiIKKyJDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9VVRGLThcbiIKKyJDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiA4Yml0XG4iCisiWC1Sb3NldHRhLUV4cG9ydC1EYXRlOiAyMDA3LTA0LTA3IDExOjA4OjEwKzAwMDBcbiIKKworIzogbGliL2Rwa2cvYXIuYzo2NgorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGNoYXJhY3RlciAnJWMnIGluIGFyY2hpdmUgJyUuMjUwcycgbWVtYmVyICclLjE2cycgc2l6ZSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9hci5jOjgxIGxpYi9kcGtnL2FyLmM6OTcgbGliL2Rwa2cvYXIuYzoxMDggbGliL2Rwa2cvYXIuYzoxMTIKKyM6IGxpYi9kcGtnL2FyLmM6MTM0IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTU0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgZmlsZSAnJXMnIgorbXNnc3RyICIlcyBuYXnDqiB4ZWJpdGFuZGluIgorCisjOiBsaWIvZHBrZy9hci5jOjk0CisjLCBjLWZvcm1hdAorbXNnaWQgImdlbmVyYXRlZCBjb3JydXB0IGFyIGhlYWRlciBmb3IgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9hci5jOjEyMworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGFyIG1lbWJlciBmaWxlICglcykiCittc2dzdHIgIm5pa2Fyw64gYCUuMjUwcycgd2Vrw64gYCUuMjUwcycgc2F6IGJpa2UiCisKKyM6IGxpYi9kcGtnL2FyLmM6MTMwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJhciBtZW1iZXIgZmlsZSAoJXMpIgorbXNnc3RyICJuaWthcsOuIGAlLjI1MHMnIHdla8OuIGAlLjI1MHMnIHNheiBiaWtlIgorCisjOiBsaWIvZHBrZy9idWZmZXIuYzoxOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgb24gYnVmZmVyIGNvcHkgZm9yICVzIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2J1ZmZlci5jOjIxMgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgaW4gd3JpdGUgb24gYnVmZmVyIGNvcHkgZm9yICVzIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2J1ZmZlci5jOjIyMAorIywgYy1mb3JtYXQKK21zZ2lkICJzaG9ydCByZWFkIG9uIGJ1ZmZlciBjb3B5IGZvciAlcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9idWZmZXIuYzoyODgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBzZWVrICVzIgorbXNnc3RyICIlcyBuYXnDqiB4ZWJpdGFuZGluIgorCisjOiBsaWIvZHBrZy9jb21tYW5kLmM6MTc4IGxpYi9kcGtnL2NvbW1hbmQuYzoyMDQgc3JjL2hlbHAuYzo2MjEKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTggc3JjL3Byb2Nlc3NhcmMuYzoxMzggc3JjL3Byb2Nlc3NhcmMuYzo0MzIKKyM6IHNyYy9wcm9jZXNzYXJjLmM6ODM5IGRwa2ctZGViL2J1aWxkLmM6NDU5IGRwa2ctZGViL2J1aWxkLmM6NTM4CisjOiBkcGtnLWRlYi9idWlsZC5jOjU2MSBkcGtnLWRlYi9leHRyYWN0LmM6MzE3IGRwa2ctZGViL2luZm8uYzo2NQorIzogZHBrZy1zcGxpdC9zcGxpdC5jOjY5IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo0NTcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBleGVjdXRlICVzICglcykiCittc2dzdHIgIiVzIG5hecOqIHhlYml0YW5kaW4iCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGRlY29tcHJlc3Npb24iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzo4OQorIywgYy1mb3JtYXQKK21zZ2lkICIlczogY29tcHJlc3Npb24iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yIGJpbmRpbmcgaW5wdXQgdG8gZ3ppcCBzdHJlYW0iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxMjQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHJlYWQgZXJyb3I6ICclcyciCittc2dzdHIgIiVzOiDDp2V3dGl5YSBodW5kaXLDriB5YSBnemlwOiBgJXMnIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjEzMiBsaWIvZHBrZy9jb21wcmVzcy5jOjEzNgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgd3JpdGUgZXJyb3IiCittc2dzdHIgIiVzOiDDp2V3dGl5YSBodW5kaXLDriB5YSBnemlwOiBgJXMnIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE1MAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZXJyb3IgYmluZGluZyBvdXRwdXQgdG8gZ3ppcCBzdHJlYW0iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxNTcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHJlYWQgZXJyb3IiCittc2dzdHIgIiVzOiDDp2V3dGl5YSBodW5kaXLDriB5YSBnemlwOiBgJXMnIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE2NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgd3JpdGUgZXJyb3I6ICclcyciCittc2dzdHIgIiVzOiDDp2V3dGl5YSBodW5kaXLDriB5YSBnemlwOiBgJXMnIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE4MAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgd3JpdGUgZXJyb3I6ICVzIgorbXNnc3RyICIlczogw6dld3RpeWEgaHVuZGlyw64geWEgZ3ppcDogYCVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyMjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yIGJpbmRpbmcgaW5wdXQgdG8gYnppcDIgc3RyZWFtIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjMyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgcmVhZCBlcnJvcjogJyVzJyIKK21zZ3N0ciAiJXM6IMOnZXd0aXlhIGh1bmRpcsOuIHlhIGJ6aXAyOiBgJXMnIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI0MCBsaWIvZHBrZy9jb21wcmVzcy5jOjI0NCBsaWIvZHBrZy9jb21wcmVzcy5jOjI5NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIHdyaXRlIGVycm9yIgorbXNnc3RyICIlczogw6dld3RpeWEgaHVuZGlyw64geWEgYnppcDI6IGAlcyciCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjU4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvciBiaW5kaW5nIG91dHB1dCB0byBiemlwMiBzdHJlYW0iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyNjUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiByZWFkIGVycm9yIgorbXNnc3RyICIlczogw6dld3RpeWEgaHVuZGlyw64geWEgYnppcDI6IGAlcyciCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6Mjc1IGxpYi9kcGtnL2NvbXByZXNzLmM6Mjg2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgd3JpdGUgZXJyb3I6ICclcyciCittc2dzdHIgIiVzOiDDp2V3dGl5YSBodW5kaXLDriB5YSBiemlwMjogYCVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyODIKK21zZ2lkICJ1bmV4cGVjdGVkIGJ6aXAyIGVycm9yIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVwZGF0ZXMgZGlyZWN0b3J5IGNvbnRhaW5zIGZpbGUgYCUuMjUwcycgd2hvc2UgbmFtZSBpcyB0b28gbG9uZyAobGVuZ3RoPSVkLCAiCisibWF4PSVkKSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1cGRhdGVzIGRpcmVjdG9yeSBjb250YWlucyBmaWxlcyB3aXRoIGRpZmZlcmVudCBsZW5ndGggbmFtZXMgKGJvdGggJWQgYW5kICVkKSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjg2CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzY2FuIHVwZGF0ZXMgZGlyZWN0b3J5IGAlLjI1NXMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZW1vdmUgaW5jb3Jwb3JhdGVkIHVwZGF0ZSBmaWxlICUuMjU1cyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEyMSBkcGtnLWRlYi9idWlsZC5jOjQ0NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGAlLjI1NXMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTI1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmaWxsICUuMjUwcyB3aXRoIHBhZGRpbmciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxMjcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoICUuMjUwcyBhZnRlciBwYWRkaW5nIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTI5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWVrIHRvIHN0YXJ0IG9mICUuMjUwcyBhZnRlciBwYWRkaW5nIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTk1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBsb2NrIGZpbGUgJXMgZm9yIHRlc3RpbmciCittc2dzdHIgInRtcGZpbGUgYm8gdnNucHJpdGlmIG5hecOqIHZla2lyaW4iCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjIxCittc2dpZCAidW5hYmxlIHRvIG9wZW4vY3JlYXRlIHN0YXR1cyBkYXRhYmFzZSBsb2NrZmlsZSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjIzMQorbXNnaWQgInlvdSBkbyBub3QgaGF2ZSBwZXJtaXNzaW9uIHRvIGxvY2sgdGhlIGRwa2cgc3RhdHVzIGRhdGFiYXNlIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjMzCisjLCBmdXp6eQorI3wgbXNnaWQgInVuYWJsZSB0byBsb2NrIGRwa2cgc3RhdHVzIGRhdGFiYXNlIgorbXNnaWQgImRwa2cgc3RhdHVzIGRhdGFiYXNlIgorbXNnc3RyICJuaWthcsOuIGRhbmVnZWhhIHJld8WfYSBkcGtnIGJpcWlmaWzDrm5lIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjI1NworbXNnaWQgInJlcXVlc3RlZCBvcGVyYXRpb24gcmVxdWlyZXMgc3VwZXJ1c2VyIHByaXZpbGVnZSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjI2MgorbXNnaWQgInVuYWJsZSB0byBhY2Nlc3MgZHBrZyBzdGF0dXMgYXJlYSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjI2NAorbXNnaWQgIm9wZXJhdGlvbiByZXF1aXJlcyByZWFkL3dyaXRlIGFjY2VzcyB0byBkcGtnIHN0YXR1cyBhcmVhIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzA5CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZW1vdmUgbXkgb3duIHVwZGF0ZSBmaWxlICUuMjU1cyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM0NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNDkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzUxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB0cnVuY2F0ZSBmb3IgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZzeW5jIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzU1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM1OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9kaXIuYzo1MAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGdldCBmaWxlIGRlc2NyaXB0b3IgZm9yIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICJhZmlyYW5kaW5hIHBlbGRhbmvDqiBiaXNlcm5la2V0IgorCisjOiBsaWIvZHBrZy9kaXIuYzo1NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgZGlyZWN0b3J5ICclcyciCittc2dzdHIgIiVzIG5hecOqIHhlYml0YW5kaW4iCisKKyM6IGxpYi9kcGtnL2Rpci5jOjY5IGxpYi9kcGtnL2Rpci5jOjEzMQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gZGlyZWN0b3J5ICclcyciCittc2dzdHIgIiVzIG5hecOqIHhlYml0YW5kaW4iCisKKyM6IGxpYi9kcGtnL2Rpci5jOjEwOSBzcmMvZGl2ZXJ0Y21kLmM6MjE4IGRwa2ctc3BsaXQvc3BsaXQuYzoyMDIKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjkzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBmaWxlICclcyciCittc2dzdHIgIiVzIG5hecOqIHhlYml0YW5kaW4iCisKKyM6IGxpYi9kcGtnL2Rpci5jOjExMSBzcmMvZGl2ZXJ0Y21kLmM6MjMyIHNyYy9kaXZlcnRjbWQuYzozNzcKKyM6IHNyYy9zdGF0Y21kLmM6MjE3IGRwa2ctZGViL2J1aWxkLmM6NTk4IGRwa2ctc3BsaXQvam9pbi5jOjY1CisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTg3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNDA2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBmaWxlICclcyciCittc2dzdHIgIiVzIG5hecOqIHhlYml0YW5kaW4iCisKKyM6IGxpYi9kcGtnL2Rpci5jOjExMyBzcmMvZGl2ZXJ0Y21kLmM6MjM0IHNyYy9kaXZlcnRjbWQuYzozNzkKKyM6IGRwa2ctZGViL2J1aWxkLmM6NjAwIGRwa2ctc3BsaXQvam9pbi5jOjY3IGRwa2ctc3BsaXQvcXVldWUuYzoxODkKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzE0IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNDA4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgZmlsZSAnJXMnIgorbXNnc3RyICIlcyBuYXnDqiB4ZWJpdGFuZGluIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6Mzk2CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB3cml0ZSBkZXRhaWxzIG9mIGAlLjUwcycgdG8gYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQyMworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiAnJXMnIGZvciB3cml0aW5nICVzIGRhdGFiYXNlIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0MjYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNldCBidWZmZXJpbmcgb24gJXMgZGF0YWJhc2UgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDM4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgJXMgZGF0YWJhc2UgcmVjb3JkIGFib3V0ICclLjUwcycgdG8gJyUuMjUwcyciCittc2dzdHIgIiVzIGEgYCUlLjI1NXMnIHNlcm5la2V0IgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDQ2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZmx1c2ggJXMgZGF0YWJhc2UgdG8gJyUuMjUwcyciCittc2dzdHIgIiVzIGEgYCUlLjI1NXMnIHNlcm5la2V0IgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDQ4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZnN5bmMgJXMgZGF0YWJhc2UgdG8gJyUuMjUwcyciCittc2dzdHIgIiVzIGEgYCUlLjI1NXMnIHNlcm5la2V0IgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDUxCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjbG9zZSAnJS4yNTBzJyBhZnRlciB3cml0aW5nICVzIGRhdGFiYXNlIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NTUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBsaW5rICclLjI1MHMnIHRvICclLjI1MHMnIGZvciBiYWNrdXAgb2YgJXMgZGF0YWJhc2UiCittc2dzdHIgIm5pa2Fyw64gYCUuMjUwcycgd2Vrw64gYCUuMjUwcycgc2F6IGJpa2UiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NTgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBpbnN0YWxsICclLjI1MHMnIGFzICclLjI1MHMnIGNvbnRhaW5pbmcgJXMgZGF0YWJhc2UiCittc2dzdHIgIm5pa2Fyw64gYCUuMjUwcycgd2Vrw64gYCUuMjUwcycgc2F6IGJpa2UiCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzo5NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IHVucmVjb3ZlcmFibGUgZmF0YWwgZXJyb3IsIGFib3J0aW5nOlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoxMDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBvdXRzaWRlIGVycm9yIGNvbnRleHQsIGFib3J0aW5nOlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoxMjAKK21zZ2lkICJvdXQgb2YgbWVtb3J5IGZvciBuZXcgZXJyb3IgY29udGV4dCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MTgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogZXJyb3Igd2hpbGUgY2xlYW5pbmcgdXA6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjIwMQorIywgYy1mb3JtYXQKK21zZ2lkICIlczogdG9vIG1hbnkgbmVzdGVkIGVycm9ycyBkdXJpbmcgZXJyb3IgcmVjb3ZlcnkhIVxuIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoyNjggbGliL2Rwa2cvZWhhbmRsZS5jOjMwNworbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBjbGVhbnVwIGVudHJ5IgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoyOTEKK21zZ2lkICJvdXQgb2YgbWVtb3J5IGZvciBuZXcgY2xlYW51cCBlbnRyeSB3aXRoIG1hbnkgYXJndW1lbnRzIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzozNTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvcjogJXNcbiIKK21zZ3N0ciAiaGnFn3lhcsOuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MzkzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogd2FybmluZzogJXNcbiIKK21zZ3N0ciAiaGnFn3lhcsOuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6NDE2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczolczolZDogaW50ZXJuYWwgZXJyb3I6ICVzXG4iCittc2dzdHIgIiVzOiDDp2V3dGl5YSBodW5kaXLDriB5YSBnemlwOiBgJXMnIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBpcyBtaXNzaW5nIgorbXNnc3RyICIlcyBrw6ptIGUiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIiclLjUwcycgaXMgbm90IGFsbG93ZWQgZm9yICVzIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjczCisjLCBjLWZvcm1hdAorbXNnaWQgImp1bmsgYWZ0ZXIgJXMiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6ODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBwYWNrYWdlIG5hbWUgKCUuMjUwcykiCittc2dzdHIgIm5hdsOqIHBha8OqdMOqIHnDqiBuZWRlcmJhc2RhciAoJS4yNTBzKSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgImVtcHR5IGZpbGUgZGV0YWlscyBmaWVsZCBgJXMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjEwNQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGRldGFpbHMgZmllbGQgYCVzJyBub3QgYWxsb3dlZCBpbiBzdGF0dXMgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidG9vIG1hbnkgdmFsdWVzIGluIGZpbGUgZGV0YWlscyBmaWVsZCBgJXMnIChjb21wYXJlZCB0byBvdGhlcnMpIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjEzMgorIywgYy1mb3JtYXQKK21zZ2lkICJ0b28gZmV3IHZhbHVlcyBpbiBmaWxlIGRldGFpbHMgZmllbGQgYCVzJyAoY29tcGFyZWQgdG8gb3RoZXJzKSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxNTQKK21zZ2lkICJ5ZXMvbm8gaW4gYm9vbGVhbiBmaWVsZCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxNzQKK21zZ2lkICJ3b3JkIGluIGBwcmlvcml0eScgZmllbGQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTg2Cittc2dpZCAidmFsdWUgZm9yIGBzdGF0dXMnIGZpZWxkIG5vdCBhbGxvd2VkIGluIHRoaXMgY29udGV4dCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxOTEKK21zZ2lkICJmaXJzdCAod2FudCkgd29yZCBpbiBgc3RhdHVzJyBmaWVsZCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxOTQKK21zZ2lkICJzZWNvbmQgKGVycm9yKSB3b3JkIGluIGBzdGF0dXMnIGZpZWxkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE5NworbXNnaWQgInRoaXJkIChzdGF0dXMpIHdvcmQgaW4gYHN0YXR1cycgZmllbGQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjA3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJlcnJvciByZWFkaW5nICUuMjUwcyIKK21zZ2lkICJlcnJvciBpbiBWZXJzaW9uIHN0cmluZyAnJS4yNTBzJyIKK21zZ3N0ciAiZGkgeHdlbmRpbmEgJS4yNTBzIGRlIMOnZXd0w64iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjIxOAorbXNnaWQgIm9ic29sZXRlIGBSZXZpc2lvbicgb3IgYFBhY2thZ2UtUmV2aXNpb24nIGZpZWxkIHVzZWQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjM1Cittc2dpZCAidmFsdWUgZm9yIGBjb25maWctdmVyc2lvbicgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjI0MAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgaW4gQ29uZmlnLVZlcnNpb24gc3RyaW5nICclLjI1MHMnIgorbXNnc3RyICJQZWzDqm4gdmVhdmFraXJpbmEgJXMgYmkgdGV2YWjDriB0w6puIHJha2lyaW4gLi4uXG4iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjI2NgorIywgYy1mb3JtYXQKK21zZ2lkICJ2YWx1ZSBmb3IgYGNvbmZmaWxlcycgaGFzIG1hbGZvcm1hdHRlZCBsaW5lIGAlLipzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyODcKKyMsIGMtZm9ybWF0Cittc2dpZCAidmFsdWUgZm9yIGBjb25mZmlsZXMnIGhhcyBsaW5lIHN0YXJ0aW5nIHdpdGggbm9uLXNwYWNlIGAlYyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MzA0Cittc2dpZCAicm9vdCBvciBudWxsIGRpcmVjdG9yeSBpcyBsaXN0ZWQgYXMgYSBjb25mZmlsZSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzozNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIG1pc3NpbmcgcGFja2FnZSBuYW1lLCBvciBnYXJiYWdlIHdoZXJlIHBhY2thZ2UgbmFtZSBleHBlY3RlZCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzozNzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBmaWVsZCwgaW52YWxpZCBwYWNrYWdlIG5hbWUgYCUuMjU1cyc6ICVzIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQwNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOlxuIgorIiBiYWQgdmVyc2lvbiByZWxhdGlvbnNoaXAgJWMlYyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgYCVjJyBpcyBvYnNvbGV0ZSwgdXNlIGAlYz0nIG9yIGAlYyVjJyBpbnN0ZWFkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQyMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOlxuIgorIiBpbXBsaWNpdCBleGFjdCBtYXRjaCBvbiB2ZXJzaW9uIG51bWJlciwgc3VnZ2VzdCB1c2luZyBgPScgaW5zdGVhZCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MzAKK21zZ2lkICJPbmx5IGV4YWN0IHZlcnNpb25zIG1heSBiZSB1c2VkIGZvciBQcm92aWRlcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgdmVyc2lvbiB2YWx1ZSBzdGFydHMgd2l0aCBub24tYWxwaGFudW1lcmljLCBzdWdnZXN0IGFkZGluZyBhIHNwYWNlIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ1MSBsaWIvZHBrZy9maWVsZHMuYzo0NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOiB2ZXJzaW9uIGNvbnRhaW5zIGAlYyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDU5CisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzogdmVyc2lvbiB1bnRlcm1pbmF0ZWQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDY1CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgZmllbGQsIHJlZmVyZW5jZSB0byAnJS4yNTVzJzogZXJyb3IgaW4gdmVyc2lvbiIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBmaWVsZCwgc3ludGF4IGVycm9yIGFmdGVyIHJlZmVyZW5jZSB0byBwYWNrYWdlIGAlLjI1NXMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ4MgorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZXMgKGB8Jykgbm90IGFsbG93ZWQgaW4gJXMgZmllbGQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTM2Cittc2dpZCAidmFsdWUgZm9yIGB0cmlnZ2Vycy1wZW5kaW5nJyBmaWVsZCBub3QgYWxsb3dlZCBpbiB0aGlzIGNvbnRleHQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTQzCisjLCBjLWZvcm1hdAorbXNnaWQgImlsbGVnYWwgcGVuZGluZyB0cmlnZ2VyIG5hbWUgYCUuMjU1cyc6ICVzIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU0NworIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgcGVuZGluZyB0cmlnZ2VyIGAlLjI1NXMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU2MQorbXNnaWQgInZhbHVlIGZvciBgdHJpZ2dlcnMtYXdhaXRlZCcgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU2OAorIywgYy1mb3JtYXQKK21zZ2lkICJpbGxlZ2FsIHBhY2thZ2UgbmFtZSBpbiBhd2FpdGVkIHRyaWdnZXIgYCUuMjU1cyc6ICVzIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU3NAorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgYXdhaXRlZCB0cmlnZ2VyIHBhY2thZ2UgYCUuMjU1cyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmlsZS5jOjUxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBzb3VyY2UgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAibmlrYXLDriBgJS4yNTBzJyB3ZWvDriBgJS4yNTBzJyBzYXogYmlrZSIKKworIzogbGliL2Rwa2cvZmlsZS5jOjU1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hhbmdlIG93bmVyc2hpcCBvZiB0YXJnZXQgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAibmlrYXLDriBgJS4yNTBzJyB3ZWvDriBgJS4yNTBzJyBzYXogYmlrZSIKKworIzogbGliL2Rwa2cvZmlsZS5jOjU5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IG1vZGUgb2YgdGFyZ2V0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgIm5pa2Fyw64gYCUuMjUwcycgd2Vrw64gYCUuMjUwcycgc2F6IGJpa2UiCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzo4NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHVubG9jayAlcyIKK21zZ3N0ciAiJXMgbmF5w6ogeGViaXRhbmRpbiIKKworIzogbGliL2Rwa2cvZmlsZS5jOjExMQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoZWNrIGZpbGUgJyVzJyBsb2NrIHN0YXR1cyIKK21zZ3N0ciAiJXMgbmF5w6ogeGViaXRhbmRpbiIKKworIzogbGliL2Rwa2cvZmlsZS5jOjE0NgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic3RhdHVzIGRhdGFiYXNlIGFyZWEgaXMgbG9ja2VkIGJ5IGFub3RoZXIgcHJvY2VzcyIKK21zZ2lkICIlcyBpcyBsb2NrZWQgYnkgYW5vdGhlciBwcm9jZXNzIgorbXNnc3RyICJxYWRhIGRhbmVnZWhhIHJld8Wfw6ogamkgYWxpecOqIHDDqnZham95ZWtlIGRpbiB0w6ogcWlmaWxhbmRpbiIKKworIzogbGliL2Rwa2cvZmlsZS5jOjE0OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGxvY2sgJXMiCittc2dzdHIgIiVzIG5hecOqIHhlYml0YW5kaW4iCisKKyM6IGxpYi9kcGtnL2xvZy5jOjUzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkbid0IG9wZW4gbG9nIGAlcyc6ICVzXG4iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvbG9nLmM6ODUKK21zZ2lkICI8cGFja2FnZSBzdGF0dXMgYW5kIHByb2dyZXNzIGZpbGUgZGVzY3JpcHRvcj4iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvbG9nLmM6MTE0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgdG8gc3RhdHVzIGZkICVkIgorbXNnc3RyICJWZW5hZ2VyZSBzZXLDqiB2c25wcmludGbDqiIKKworIzogbGliL2Rwa2cvbWxpYi5jOjQ0IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIm1hbGxvYyBmYWlsZWQgKCV6dSBieXRlcykiCittc2dzdHIgIih0ZXbDriAlbHUgYmF5dClcbiIKKworIzogbGliL2Rwa2cvbWxpYi5jOjU4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJyZWFsbG9jIGZhaWxlZCAoJXp1IGJ5dGVzKSIKK21zZ3N0ciAiKHRldsOuICVsdSBiYXl0KVxuIgorCisjOiBsaWIvZHBrZy9tbGliLmM6NzIgbGliL2Rwa2cvbWxpYi5jOjkwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNzcKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzozMzQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMDcKKyMsIGZ1enp5Cittc2dpZCAiZmFpbGVkIHRvIGFsbG9jYXRlIG1lbW9yeSIKK21zZ3N0ciAiYWZpcmFuZGluYSBwZWxkYW5rw6ogYmlzZXJuZWtldCIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZHVwIGZvciBzdGQlcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTAzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBkdXAgZm9yIGZkICVkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMDkKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHBpcGUiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvbWxpYi5jOjExNworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igd3JpdGluZyB0byAnJXMnIgorbXNnc3RyICJkaSB4d2VuZGluYSAlLjI1MHMgZGUgw6dld3TDriIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBmaWxlZGVzY3JpcHRvciBmbGFncyBmb3IgJS4yNTBzIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMjYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNldCBjbG9zZS1vbi1leGVjIGZsYWcgZm9yICUuMjUwcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6NjMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImNvbmZpZ3VyYXRpb24gZXJyb3I6ICVzOiVkOiAlcyIKK21zZ3N0ciAiIgorIlxuIgorIlBlbMOqIG3DrmhlbmdhbiDDqiBgJXMnIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gY29uZmlndXJhdGlvbiBmaWxlICclLjI1NXMnIGZvciByZWFkaW5nOiAlcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYmFsYW5jZWQgcXVvdGVzIGluICclcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjExNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiAnJXMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBuZWVkcyBhIHZhbHVlIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBkb2VzIG5vdCB0YWtlIGEgdmFsdWUiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjEzMworIywgYy1mb3JtYXQKK21zZ2lkICJyZWFkIGVycm9yIGluIGNvbmZpZ3VyYXRpb24gZmlsZSBgJS4yNTVzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgY29uZmlndXJhdGlvbiBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxNzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImVycm9yIG9wZW5pbmcgY29uZmlndXJhdGlvbiBkaXJlY3RvcnkgJyVzJyIKK21zZ3N0ciAiUGVsw6puIHZlYXZha2lyaW5hICVzIGJpIHRldmFow64gdMOqbiByYWtpcmluIC4uLlxuIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjI4CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gb3B0aW9uIC0tJXMiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjIzMgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG9wdGlvbiB0YWtlcyBhIHZhbHVlIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBvcHRpb24gZG9lcyBub3QgdGFrZSBhIHZhbHVlIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyNDUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gLSVjIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLSVjIG9wdGlvbiB0YWtlcyBhIHZhbHVlIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiLSVjIG9wdGlvbiBkb2VzIG5vdCB0YWtlIGEgdmFsdWUiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI3MQorIywgYy1mb3JtYXQKK21zZ2lkICJvYnNvbGV0ZSBvcHRpb24gJy0tJXMnXG4iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI4NworIywgYy1mb3JtYXQKK21zZ2lkICJjb25mbGljdGluZyBhY3Rpb25zIC0lYyAoLS0lcykgYW5kIC0lYyAoLS0lcykiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHZhbHVlIGZvciBgJXMnIGZpZWxkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MTQ2CisjLCBjLWZvcm1hdAorbXNnaWQgInVzZXItZGVmaW5lZCBmaWVsZCBuYW1lIGAlLipzJyB0b28gc2hvcnQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoxNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHZhbHVlIGZvciB1c2VyLWRlZmluZWQgZmllbGQgYCUuKnMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjA3Cittc2dpZCAiQ29uZmlndXJlZC1WZXJzaW9uIGZvciBwYWNrYWdlIHdpdGggaW5hcHByb3ByaWF0ZSBTdGF0dXMiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzICVzIGJ1dCB0cmlnZ2VycyBhcmUgYXdhaXRlZCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjIyMgorbXNnaWQgInBhY2thZ2UgaGFzIHN0YXR1cyB0cmlnZ2Vycy1hd2FpdGVkIGJ1dCBubyB0cmlnZ2VycyBhd2FpdGVkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjI4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgaGFzIHN0YXR1cyAlcyBidXQgdHJpZ2dlcnMgYXJlIHBlbmRpbmciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMzIKK21zZ2lkICJwYWNrYWdlIGhhcyBzdGF0dXMgdHJpZ2dlcnMtcGVuZGluZyBidXQgbm8gdHJpZ2dlcnMgcGVuZGluZyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjI0MgorbXNnaWQgIlBhY2thZ2Ugd2hpY2ggaW4gc3RhdGUgbm90LWluc3RhbGxlZCBoYXMgY29uZmZpbGVzLCBmb3JnZXR0aW5nIHRoZW0iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozMzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gcGFja2FnZSBpbmZvIGZpbGUgYCUuMjU1cycgZm9yIHJlYWRpbmciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozNDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2FuJ3Qgc3RhdCBwYWNrYWdlIGluZm8gZmlsZSBgJS4yNTVzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjM0NworIywgYy1mb3JtYXQKK21zZ2lkICJjYW4ndCBtbWFwIHBhY2thZ2UgaW5mbyBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzUyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIgcGFja2FnZSBgJS4yNTVzJyIKK21zZ2lkICJyZWFkaW5nIHBhY2thZ2UgaW5mbyBmaWxlICclLjI1NXMnIgorbXNnc3RyICIgcGFrw6p0YSBgJS4yNTVzJyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNsb3NlIGFmdGVyIHJlYWQ6IGAlLjI1NXMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDA0CisjLCBjLWZvcm1hdAorbXNnaWQgIkVPRiBhZnRlciBmaWVsZCBuYW1lIGAlLipzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQwNworIywgYy1mb3JtYXQKK21zZ2lkICJuZXdsaW5lIGluIGZpZWxkIG5hbWUgYCUuKnMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDEwCisjLCBjLWZvcm1hdAorbXNnaWQgIk1TRE9TIEVPRiAoXlopIGluIGZpZWxkIG5hbWUgYCUuKnMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDE0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpZWxkIG5hbWUgYCUuKnMnIG11c3QgYmUgZm9sbG93ZWQgYnkgY29sb24iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiRU9GIGJlZm9yZSB2YWx1ZSBvZiBmaWVsZCBgJS4qcycgKG1pc3NpbmcgZmluYWwgbmV3bGluZSkiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiTVNET1MgRU9GIGNoYXIgaW4gdmFsdWUgb2YgZmllbGQgYCUuKnMnIChtaXNzaW5nIG5ld2xpbmU/KSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQ0MAorIywgYy1mb3JtYXQKK21zZ2lkICJibGFuayBsaW5lIGluIHZhbHVlIG9mIGZpZWxkICclLipzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQ2MQorIywgYy1mb3JtYXQKK21zZ2lkICJFT0YgZHVyaW5nIHZhbHVlIG9mIGZpZWxkIGAlLipzJyAobWlzc2luZyBmaW5hbCBuZXdsaW5lKSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjU0NgorbXNnaWQgInNldmVyYWwgcGFja2FnZSBpbmZvIGVudHJpZXMgZm91bmQsIG9ubHkgb25lIGFsbG93ZWQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo1NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gcGFja2FnZSBpbmZvcm1hdGlvbiBpbiBgJS4yNTVzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzo0NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisicGFyc2luZyBmaWxlICclLjI1NXMnIG5lYXIgbGluZSAlZCBwYWNrYWdlICclLjI1NXMnOlxuIgorIiAlLjI1NXMiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInBhcnNpbmcgZmlsZSAnJS4yNTVzJyBuZWFyIGxpbmUgJWQ6XG4iCisiICUuMjU1cyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoxMjUKK21zZ2lkICJtYXkgbm90IGJlIGVtcHR5IHN0cmluZyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoxMjcKK21zZ2lkICJtdXN0IHN0YXJ0IHdpdGggYW4gYWxwaGFudW1lcmljIGNoYXJhY3RlciIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoxMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2hhcmFjdGVyIGAlYycgbm90IGFsbG93ZWQgKG9ubHkgbGV0dGVycywgZGlnaXRzIGFuZCBjaGFyYWN0ZXJzIGAlcycpIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjE3OAorIywgZnV6enkKKyN8IG1zZ2lkICI8bm9uZT4iCittc2djdHh0ICJ2ZXJzaW9uIgorbXNnaWQgIjxub25lPiIKK21zZ3N0ciAiPHR1bmU+IgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyMDkKK21zZ2lkICJ2ZXJzaW9uIHN0cmluZyBpcyBlbXB0eSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyMjQKK21zZ2lkICJ2ZXJzaW9uIHN0cmluZyBoYXMgZW1iZWRkZWQgc3BhY2VzIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjIzMAorbXNnaWQgImVwb2NoIGluIHZlcnNpb24gaXMgbm90IG51bWJlciIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyMzIKK21zZ2lkICJub3RoaW5nIGFmdGVyIGNvbG9uIGluIHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjI0NworbXNnaWQgInZlcnNpb24gbnVtYmVyIGRvZXMgbm90IHN0YXJ0IHdpdGggZGlnaXQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjUwCisjLCBmdXp6eQorbXNnaWQgImludmFsaWQgY2hhcmFjdGVyIGluIHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICJoZWptYXJlIHZlcnNpeW9uw6oiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjI1NAorbXNnaWQgImludmFsaWQgY2hhcmFjdGVyIGluIHJldmlzaW9uIG51bWJlciIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyOTkgbGliL2Rwa2cvcGFyc2VoZWxwLmM6MzExCisjLCBjLWZvcm1hdAorbXNnaWQgIm1pc3NpbmcgJXMiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MzAxIGxpYi9kcGtnL3BhcnNlaGVscC5jOjMxNAorIywgYy1mb3JtYXQKK21zZ2lkICJlbXB0eSB2YWx1ZSBmb3IgJXMiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGtnLWZvcm1hdC5jOjgwCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgY2hhcmFjdGVyIGAlYycgaW4gZmllbGQgd2lkdGhcbiIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wa2ctZm9ybWF0LmM6MTcyCisjLCBjLWZvcm1hdAorbXNnaWQgIkNsb3NpbmcgYnJhY2UgbWlzc2luZyBpbiBmb3JtYXRcbiIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wa2ctc2hvdy5jOjQwCittc2dpZCAiKG5vIGRlc2NyaXB0aW9uIGF2YWlsYWJsZSkiCittc2dzdHIgIihyYXZlIG5lIGFtYWRlIHllKSIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjU1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaWdub3JlIHNpZ25hbCAlcyBiZWZvcmUgcnVubmluZyAlLjI1MHMiCittc2dzdHIgIm5pa2Fyw64gYCUuMjUwcycgd2Vrw64gYCUuMjUwcycgc2F6IGJpa2UiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzo2OAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciB1bi1jYXRjaGluZyBzaWduYWwgJXM6ICVzXG4iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjc4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIChzdWJwcm9jZXNzKTogJXNcbiIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6ODkgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQ1NAorbXNnaWQgImZvcmsgZmFpbGVkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInN1YnByb2Nlc3MgJXMgcmV0dXJuZWQgZXJyb3IgZXhpdCBzdGF0dXMgJWQiCittc2dzdHIgImRwa2c6IGhpxZ95YXLDriAtICVzIHJld8WfYSBkZXJrZXRpbmEgYmkgw6dld3RpecOqICVkIHZlZ2VyYW5kXG4iCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAic3VicHJvY2VzcyAlcyB3YXMgaW50ZXJydXB0ZWQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEzMAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic3VicHJvY2VzcyAlcyBraWxsZWQgYnkgc2lnbmFsICglcyklcyIKK21zZ2lkICJzdWJwcm9jZXNzICVzIHdhcyBraWxsZWQgYnkgc2lnbmFsICglcyklcyIKK21zZ3N0ciAiYmlucMOqdmFqb3lhICVzIGJpIHPDrm55YWxhICglcyklcyBrdcWfdCIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEzMgorbXNnaWQgIiwgY29yZSBkdW1wZWQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJzdWJwcm9jZXNzICVzIGZhaWxlZCB3aXRoIHdhaXQgc3RhdHVzIGNvZGUgJWQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjE1MSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NDYxCisjLCBjLWZvcm1hdAorbXNnaWQgIndhaXQgZm9yIHN1YnByb2Nlc3MgJXMgZmFpbGVkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgcGFja2FnZSBuYW1lIGAlLjI1MHMnIGluIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6ODEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInRydW5jYXRlZCB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJwZWzDqiBgJS4yNTBzJyBuYXnDqiByYWtpcmluIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDo4NQorIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyBhdCBjaGFyYWN0ZXIgYCVzJyVzIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3Blbi9jcmVhdGUgdHJpZ2dlcnMgbG9ja2ZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MTQxCisjLCBmdXp6eQorbXNnaWQgInRyaWdnZXJzIGFyZWEiCittc2dzdHIgIm5pa2Fyw64gZGFuZWdlaGEgcmV3xZ9hIGRwa2cgYmlxaWZpbMOubmUiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjE1MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjE2NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjE3OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3Blbi9jcmVhdGUgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MjE1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJlcnJvciByZWFkaW5nIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImRpIHh3ZW5kaW5hICUuMjUwcyBkZSDDp2V3dMOuIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoyMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ldyB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjIyOAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MjMyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmlrYXLDriBgJS4yNTBzJyB3ZWvDriBgJS4yNTBzJyBzYXogYmlrZSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjIyMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiaW52YWxpZCBvciB1bmtub3duIHN5bnRheCBpbiB0cmlnZ2VyIG5hbWUgYCUuMjUwcycgKGluIHRyaWdnZXIgaW50ZXJlc3RzIGZvciAiCisicGFja2FnZSBgJS4yNTBzJykiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjI2MworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiB0cmlnZ2VyIGludGVyZXN0IGxpc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MjkyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyBzeW50YXggZXJyb3I7IGlsbGVnYWwgcGFja2FnZSBuYW1lIGAlLjI1MHMnOiAiCisiJS4yNTBzIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMyMQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgIm5pa2Fyw64gYCUuMjUwcycgd2Vrw64gYCUuMjUwcycgc2F6IGJpa2UiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMjQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzeW5jIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgIm5pa2Fyw64gYCUuMjUwcycgd2Vrw64gYCUuMjUwcycgc2F6IGJpa2UiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMzIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5pa2Fyw64gYCUuMjUwcycgd2Vrw64gYCUuMjUwcycgc2F6IGJpa2UiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozNDAgbGliL2Rwa2cvdHJpZ2xpYi5jOjM0MiBsaWIvZHBrZy90cmlnbGliLmM6NDcyCisjOiBzcmMvcmVtb3ZlLmM6Mjg2IHNyYy9yZW1vdmUuYzozNzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlbW92ZSBgJS4yNTBzJyIKK21zZ3N0ciAiYCUuMjUwcycgbmF5w6ogcmFraXJpbiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjM2MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjM4MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5pa2Fyw64gYCUuMjUwcycgd2Vrw64gYCUuMjUwcycgc2F6IGJpa2UiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0NTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImR1cGxpY2F0ZSBmaWxlIHRyaWdnZXIgaW50ZXJlc3QgZm9yIGZpbGVuYW1lIGAlLjI1MHMnIGFuZCBwYWNrYWdlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0OTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ5NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgJyUuMjUwcyciCittc2dzdHIgIm5pa2Fyw64gYCUuMjUwcycgd2Vrw64gYCUuMjUwcycgc2F6IGJpa2UiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0OTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzeW5jIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgJyUuMjUwcyciCittc2dzdHIgIm5pa2Fyw64gYCUuMjUwcycgd2Vrw64gYCUuMjUwcycgc2F6IGJpa2UiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1MDMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuaWthcsOuIGAlLjI1MHMnIHdla8OuIGAlLjI1MHMnIHNheiBiaWtlIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTA3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGFzIGAlLjI1MHMnIgorbXNnc3RyICJuaWthcsOuIGAlLjI1MHMnIHdla8OuIGAlLjI1MHMnIHNheiBiaWtlIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTQyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5pa2Fyw64gYCUuMjUwcycgd2Vrw64gYCUuMjUwcycgc2F6IGJpa2UiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1NTIKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yIGluIGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTYzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmaWxlIHRyaWdnZXJzIHJlY29yZCBtZW50aW9ucyBpbGxlZ2FsIHBhY2thZ2UgbmFtZSBgJS4yNTBzJyAoZm9yIGludGVyZXN0IGluICIKKyJmaWxlIGAlLjI1MHMnKTogJS4yNTBzIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo2NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInRyaWdnZXJzIGNpIGZpbGUgYCUuMjUwcycgY29udGFpbnMgaWxsZWdhbCB0cmlnZ2VyIHN5bnRheCBpbiB0cmlnZ2VyIG5hbWUgYCIKKyIlLjI1MHMnOiAlLjI1MHMiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjY4NAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiB0cmlnZ2VycyBjaSBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo2OTkKK21zZ2lkICJ0cmlnZ2VycyBjaSBmaWxlIGNvbnRhaW5zIHVua25vd24gZGlyZWN0aXZlIHN5bnRheCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NzEyCisjLCBjLWZvcm1hdAorbXNnaWQgInRyaWdnZXJzIGNpIGZpbGUgY29udGFpbnMgdW5rbm93biBkaXJlY3RpdmUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjc3NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSB0cmlnZ2VycyBzdGF0ZSBkaXJlY3RvcnkgYCUuMjUwcyciCittc2dzdHIgImFmaXJhbmRpbmEgcGVsZGFua8OqIGJpc2VybmVrZXQiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo3NzkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNldCBvd25lcnNoaXAgb2YgdHJpZ2dlcnMgc3RhdGUgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWduYW1lLmM6MzQKK21zZ2lkICJlbXB0eSB0cmlnZ2VyIG5hbWVzIGFyZSBub3QgcGVybWl0dGVkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWduYW1lLmM6MzgKK21zZ2lkICJ0cmlnZ2VyIG5hbWUgY29udGFpbnMgaW52YWxpZCBjaGFyYWN0ZXIiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdXRpbHMuYzo1NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAicmVhZCBlcnJvciBpbiBgJS4yNTBzJyIKK21zZ3N0ciAiZGkgeHdlbmRpbmEgJS4yNTBzIGRlIMOnZXd0w64iCisKKyM6IGxpYi9kcGtnL3V0aWxzLmM6NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmdldHMgZ2F2ZSBhbiBlbXB0eSBzdHJpbmcgZnJvbSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy91dGlscy5jOjYzCisjLCBjLWZvcm1hdAorbXNnaWQgInRvby1sb25nIGxpbmUgb3IgbWlzc2luZyBuZXdsaW5lIGluIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3V0aWxzLmM6NzUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW9mIHJlYWRpbmcgYCUuMjUwcyciCittc2dzdHIgImRpIHh3ZW5kaW5hICUuMjUwcyBkZSDDp2V3dMOuIgorCisjOiBsaWIvZHBrZy92YXJidWYuYzo4MiBsaWIvZHBrZy92YXJidWYuYzo4OAorbXNnaWQgImVycm9yIGZvcm1hdHRpbmcgc3RyaW5nIGludG8gdmFyYnVmIHZhcmlhYmxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjE3OSBzcmMvYXJjaGl2ZXMuYzoyMDAgc3JjL2FyY2hpdmVzLmM6NzI0Cittc2dpZCAiZXJyb3IgcmVhZGluZyBmcm9tIGRwa2ctZGViIHBpcGUiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTk1CisjLCBjLWZvcm1hdAorbXNnaWQgInNraXBwZWQgdW5wYWNraW5nIGZpbGUgJyUuMjU1cycgKHJlcGxhY2VkIG9yIGV4Y2x1ZGVkPykiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MjQ2IHNyYy9hcmNoaXZlcy5jOjI1MAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIHRpbWVzdGFtcHMgb2YgYCUuMjU1cyciCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MjYyCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHNldHRpbmcgb3duZXJzaGlwIG9mIHN5bWxpbmsgYCUuMjU1cyciCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MjY1IHNyYy9hcmNoaXZlcy5jOjczNCBzcmMvc3RhdGNtZC5jOjE2MworIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIG93bmVyc2hpcCBvZiBgJS4yNTVzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoyNjcgc3JjL2FyY2hpdmVzLmM6NzM2IHNyYy9zdGF0Y21kLmM6MTY1CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHNldHRpbmcgcGVybWlzc2lvbnMgb2YgYCUuMjU1cyciCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6Mzk1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBzdGF0IChkZXJlZmVyZW5jZSkgZXhpc3Rpbmcgc3ltbGluayBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo0MTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImZhaWxlZCB0byBzdGF0IChkZXJlZmVyZW5jZSkgcHJvcG9zZWQgbmV3IHN5bWxpbmsgdGFyZ2V0IGAlLjI1MHMnIGZvciAiCisic3ltbGluayBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo0NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInRyeWluZyB0byBvdmVyd3JpdGUgYCUuMjUwcycsIHdoaWNoIGlzIHRoZSBkaXZlcnRlZCB2ZXJzaW9uIG9mIGAiCisiJS4yNTBzJyAocGFja2FnZTogJS4xMDBzKSIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo0ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJ5aW5nIHRvIG92ZXJ3cml0ZSBgJS4yNTBzJywgd2hpY2ggaXMgdGhlIGRpdmVydGVkIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6NTExCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGAlLjI1NXMnICh3aGljaCBJIHdhcyBhYm91dCB0byBpbnN0YWxsKSIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo1MTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVuYWJsZSB0byBjbGVhbiB1cCBtZXNzIHN1cnJvdW5kaW5nIGAlLjI1NXMnIGJlZm9yZSBpbnN0YWxsaW5nIGFub3RoZXIgIgorInZlcnNpb24iCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6NTI1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IHJlc3RvcmVkIGAlLjI1NXMnIGJlZm9yZSBpbnN0YWxsaW5nIGFub3RoZXIgdmVyc2lvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo1NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiYXJjaGl2ZSBjb250YWluZWQgb2JqZWN0IGAlLjI1NXMnIG9mIHVua25vd24gdHlwZSAweCV4IgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjYyNiBzcmMvZGl2ZXJ0Y21kLmM6MTUwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo2ODIKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjIyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjg0CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTQ0MSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTY4MAorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxNjcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNDQKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTI3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc3RhdCBmaWxlICclcyciCittc2dzdHIgImRpIHh3ZW5kaW5hICVzIGRlIMOnZXd0w64iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjY0MQorIywgYy1mb3JtYXQKK21zZ2lkICJSZXBsYWNpbmcgZmlsZXMgaW4gb2xkIHBhY2thZ2UgJXMgLi4uXG4iCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6NjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlcGxhY2VkIGJ5IGZpbGVzIGluIGluc3RhbGxlZCBwYWNrYWdlICVzIC4uLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjY1NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidHJ5aW5nIHRvIG92ZXJ3cml0ZSBkaXJlY3RvcnkgJyUuMjUwcycgaW4gcGFja2FnZSAlLjI1MHMgJS4yNTBzIHdpdGggIgorIm5vbmRpcmVjdG9yeSIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJ5aW5nIHRvIG92ZXJ3cml0ZSAnJS4yNTBzJywgd2hpY2ggaXMgYWxzbyBpbiBwYWNrYWdlICUuMjUwcyAlLjI1MHMiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6NzExCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGAlLjI1NXMnICh3aGlsZSBwcm9jZXNzaW5nIGAlLjI1NXMnKSIKK21zZ3N0ciAibmlrYXLDriBgJS4yNTBzJyB3ZWvDriBgJS4yNTBzJyBzYXogYmlrZSIKKworIzogc3JjL2FyY2hpdmVzLmM6NzE4CisjLCBjLWZvcm1hdAorbXNnaWQgImJhY2tlbmQgZHBrZy1kZWIgZHVyaW5nIGAlLjI1NXMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc0NCBzcmMvYXJjaGl2ZXMuYzo5MDggc3JjL2FyY2hpdmVzLmM6OTQ5CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3Npbmcvd3JpdGluZyBgJS4yNTVzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgcGlwZSBgJS4yNTVzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NTMgc3JjL2FyY2hpdmVzLmM6NzU4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIGRldmljZSBgJS4yNTVzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgaGFyZCBsaW5rIGAlLjI1NXMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc3NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NTM5CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIHN5bWJvbGljIGxpbmsgYCUuMjU1cyciCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6NzgzCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIGRpcmVjdG9yeSBgJS4yNTVzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4MjIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG1vdmUgYXNpZGUgYCUuMjU1cycgdG8gaW5zdGFsbCBuZXcgdmVyc2lvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4MzIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjMyMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBsaW5rIGAlLjI1NXMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjgzNCBzcmMvY29uZmlndXJlLmM6NDIzCisjLCBjLWZvcm1hdAorbXNnaWQgInN5bWJvbGljIGxpbmsgJyUuMjUwcycgc2l6ZSBoYXMgY2hhbmdlZCBmcm9tICVqZCB0byAlemQiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6ODM5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBtYWtlIGJhY2t1cCBzeW1saW5rIGZvciBgJS4yNTVzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNob3duIGJhY2t1cCBzeW1saW5rIGZvciBgJS4yNTVzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4NDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG1ha2UgYmFja3VwIGxpbmsgb2YgYCUuMjU1cycgYmVmb3JlIGluc3RhbGxpbmcgbmV3IHZlcnNpb24iCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6ODYzIHNyYy9hcmNoaXZlcy5jOjk1NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgdmVyc2lvbiBvZiBgJS4yNTVzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo5MDIgc3JjL2FyY2hpdmVzLmM6OTQ1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiAnJS4yNTVzJyIKK21zZ3N0ciAiYWZpcmFuZGluYSBwZWxkYW5rw6ogYmlzZXJuZWtldCIKKworIzogc3JjL2FyY2hpdmVzLmM6OTQ3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBmaWxlICclLjI1NXMnIgorbXNnc3RyICJhZmlyYW5kaW5hIHBlbGRhbmvDqiBiaXNlcm5la2V0IgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDAwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiaWdub3JpbmcgZGVwZW5kZW5jeSBwcm9ibGVtIHdpdGggJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiBwaXJzZ2lyw6prw6puIGJpbmRlc3RpecOqIHJha2lyaW5hICVzIGFzdGVuZyBkaWtpbjpcbiIKKyIlcyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAwNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiY29uc2lkZXJpbmcgZGVjb25maWd1cmF0aW9uIG9mIGVzc2VudGlhbFxuIgorIiBwYWNrYWdlICVzLCB0byBlbmFibGUgJXMuIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IG5vLCAlcyBpcyBlc3NlbnRpYWwsIHdpbGwgbm90IGRlY29uZmlndXJlXG4iCisiIGl0IGluIG9yZGVyIHRvIGVuYWJsZSAlcy5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDIyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBubywgY2Fubm90IHByb2NlZWQgd2l0aCAlcyAoLS1hdXRvLWRlY29uZmlndXJlIHdpbGwgaGVscCk6XG4iCisiJXMiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAzMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAicmVtb3ZhbCBvZiAlLjI1MHMiCittc2dzdHIgInBlbMOqIGAlLjI1MHMnIG5hecOqIHJha2lyaW4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW5zdGFsbGF0aW9uIG9mICUuMjUwcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDU4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBjb25zaWRlcmluZyBkZWNvbmZpZ3VyYXRpb24gb2YgJXMsIHdoaWNoIHdvdWxkIGJlIGJyb2tlbiBieSAlcyAuLi5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDY1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiB5ZXMsIHdpbGwgZGVjb25maWd1cmUgJXMgKGJyb2tlbiBieSAlcykuXG4iCittc2dzdHIgImRwa2c6IGAlcycgasOuIHTDqiB2ZWF2YWtpcmluIChgJXMnIHbDqiBkaXh3YXplKVxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDY5IHNyYy9hcmNoaXZlcy5jOjExODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IHJlZ2FyZGluZyAlcyBjb250YWluaW5nICVzOlxuIgorIiVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNzcKK21zZ2lkICJpZ25vcmluZyBicmVha2FnZSwgbWF5IHByb2NlZWQgYW55d2F5ISIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDgyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpbnN0YWxsaW5nICUuMjUwcyB3b3VsZCBicmVhayAlLjI1MHMsIGFuZFxuIgorIiBkZWNvbmZpZ3VyYXRpb24gaXMgbm90IHBlcm1pdHRlZCAoLS1hdXRvLWRlY29uZmlndXJlIG1pZ2h0IGhlbHApIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW5zdGFsbGluZyAlLjI1MHMgd291bGQgYnJlYWsgZXhpc3Rpbmcgc29mdHdhcmUiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTExNgorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiBjb25zaWRlcmluZyByZW1vdmluZyAlcyBpbiBmYXZvdXIgb2YgJXMgLi4uXG4iCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTEyMgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgcHJvcGVybHkgaW5zdGFsbGVkIC0gaWdub3JpbmcgYW55IGRlcGVuZGVuY2llcyBvbiBpdC5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTUxCisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IG1heSBoYXZlIHRyb3VibGUgcmVtb3ZpbmcgJXMsIGFzIGl0IHByb3ZpZGVzICVzIC4uLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExNjYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBwYWNrYWdlICVzIHJlcXVpcmVzIHJlaW5zdGFsbGF0aW9uLCBidXQgd2lsbCByZW1vdmUgYW55d2F5IGFzIHlvdSAiCisicmVxdWVzdGVkLlxuIgorbXNnc3RyICIiCisiZHBrZzogJXM6IHBpcnNnaXLDqmvDqm4gZ2lyw6pkYXnDrmLDu27DqiwgbMOqIHNlciBkYXh3YXphIHRlIHTDqiByYWtpcmluOlxuIgorIiVzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTY5CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IHBhY2thZ2UgJXMgcmVxdWlyZXMgcmVpbnN0YWxsYXRpb24sIHdpbGwgbm90IHJlbW92ZS5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTc4CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IHllcywgd2lsbCByZW1vdmUgJXMgaW4gZmF2b3VyIG9mICVzLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmxpY3RpbmcgcGFja2FnZXMgLSBub3QgaW5zdGFsbGluZyAlLjI1MHMiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE5MQorbXNnaWQgImlnbm9yaW5nIGNvbmZsaWN0LCBtYXkgcHJvY2VlZCBhbnl3YXkhIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyMzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyAtLXJlY3Vyc2l2ZSBuZWVkcyBhdCBsZWFzdCBvbmUgcGF0aCBhcmd1bWVudCIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjQ1Cittc2dpZCAiZmluZCBmb3IgZHBrZyAtLXJlY3Vyc2l2ZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjY2Cittc2dpZCAiZmFpbGVkIHRvIGZkb3BlbiBmaW5kJ3MgcGlwZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjcyCittc2dpZCAiZXJyb3IgcmVhZGluZyBmaW5kJ3MgcGlwZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjczCittc2dpZCAiZXJyb3IgY2xvc2luZyBmaW5kJ3MgcGlwZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjc2CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbmQgZm9yIC0tcmVjdXJzaXZlIHJldHVybmVkIHVuaGFuZGxlZCBlcnJvciAlaSIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjc5Cittc2dpZCAic2VhcmNoZWQsIGJ1dCBmb3VuZCBubyBwYWNrYWdlcyAoZmlsZXMgbWF0Y2hpbmcgKi5kZWIpIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhdCBsZWFzdCBvbmUgcGFja2FnZSBhcmNoaXZlIGZpbGUgYXJndW1lbnQiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTMyNSBzcmMvZGl2ZXJ0Y21kLmM6Nzggc3JjL2RpdmVydGNtZC5jOjExOAorIzogc3JjL2VucXVpcnkuYzoxNjYgc3JjL2VucXVpcnkuYzoyNzkgc3JjL2VucXVpcnkuYzo0NDkgc3JjL2VucXVpcnkuYzo0NTEKKyM6IHNyYy9lbnF1aXJ5LmM6NDY0IHNyYy9tYWluLmM6NjYgc3JjL21haW4uYzoxNjMgc3JjL21haW4uYzozMTQKKyM6IHNyYy9tYWluLmM6NDkzIHNyYy9wYWNrYWdlcy5jOjI1NCBzcmMvcXVlcnljbWQuYzoyNTIgc3JjL3F1ZXJ5Y21kLmM6MzU1CisjOiBzcmMvcXVlcnljbWQuYzozOTYgc3JjL3F1ZXJ5Y21kLmM6NDA0IHNyYy9xdWVyeWNtZC5jOjQ0OCBzcmMvcXVlcnljbWQuYzo1MTcKKyM6IHNyYy9xdWVyeWNtZC5jOjYwNiBzcmMvcXVlcnljbWQuYzo2NTAgc3JjL3NlbGVjdC5jOjc5IHNyYy9zdGF0Y21kLmM6NjgKKyM6IHNyYy9zdGF0Y21kLmM6OTggc3JjL3RyaWdjbWQuYzo1OCBzcmMvdHJpZ2NtZC5jOjkwIGRwa2ctZGViL2J1aWxkLmM6NDQxCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjE3IGRwa2ctZGViL2V4dHJhY3QuYzoyNTAgZHBrZy1kZWIvaW5mby5jOjIwMworIzogZHBrZy1kZWIvaW5mby5jOjI2NSBkcGtnLWRlYi9tYWluLmM6NjAgZHBrZy1kZWIvbWFpbi5jOjEyNgorIzogZHBrZy1zcGxpdC9pbmZvLmM6MjU3IGRwa2ctc3BsaXQvbWFpbi5jOjU0IGRwa2ctc3BsaXQvbWFpbi5jOjk4CisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTQ0IGRwa2ctc3BsaXQvcXVldWUuYzoyODAKK21zZ2lkICI8c3RhbmRhcmQgb3V0cHV0PiIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzI2IHNyYy9wYWNrYWdlcy5jOjI1NSBzcmMvcXVlcnljbWQuYzoyNTMKKyM6IHNyYy9xdWVyeWNtZC5jOjM1MyBzcmMvcXVlcnljbWQuYzo0NTQgc3JjL3F1ZXJ5Y21kLmM6NTE4IHNyYy9zZWxlY3QuYzo4MAorIzogZHBrZy1zcGxpdC9tYWluLmM6MTY5IGRwa2ctc3BsaXQvcXVldWUuYzoyMTgKK21zZ2lkICI8c3RhbmRhcmQgZXJyb3I+IgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzNjcKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIlNlbGVjdGluZyBwcmV2aW91c2x5IGRlc2VsZWN0ZWQgcGFja2FnZSAlcy5cbiIKK21zZ2lkICJTZWxlY3RpbmcgcHJldmlvdXNseSB1bnNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dzdHIgIlBha8OqdGEgJXMga3UgYmVyw6ogbmVoYXRpeWUgaGlsYmlqYXJ0aW4gdMOqIGhpbGJpamFydGluLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzcxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJTa2lwcGluZyBkZXNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dpZCAiU2tpcHBpbmcgdW5zZWxlY3RlZCBwYWNrYWdlICVzLlxuIgorbXNnc3RyICJQYWvDqnRhICVzIGt1IG5laGF0aXllIGhpbGJpamFydGluIHTDqiBkZXJiYXNraXJpbi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTM4NworIywgYy1mb3JtYXQKK21zZ2lkICJWZXJzaW9uICUuMjUwcyBvZiAlLjI1MHMgYWxyZWFkeSBpbnN0YWxsZWQsIHNraXBwaW5nLlxuIgorbXNnc3RyICJHdWhhcnRveWEgJS4yNTBzIGEgJS4yNTBzIHNhemtpcsOuIHllLCB0w6ogZGVyYmFza2lyaW4uXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzOTcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImRvd25ncmFkaW5nICUuMjUwcyBmcm9tICUuMjUwcyB0byAlLjI1MHMuIgorbXNnc3RyICIlcyAtIGhpxZ95YXLDrjogJS4yMDVzIGppICUuMjA1cyB0w6ogbml6aW1raXJpbiDDuyBkaWJlICUuMjA1cy5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTQwMgorIywgYy1mb3JtYXQKK21zZ2lkICJXaWxsIG5vdCBkb3duZ3JhZGUgJS4yNTBzIGZyb20gdmVyc2lvbiAlLjI1MHMgdG8gJS4yNTBzLCBza2lwcGluZy5cbiIKK21zZ3N0ciAiJS4yMDVzIGppIGd1aGFydG95YSAlLjIwNXMgYmVyIGJpICUuMjA1cyBuaXptIG5hYmUsIHTDqiBkZXJiYXNraXJpbi5cbiIKKworIzogc3JjL2NsZWFudXAuYzo4NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidW5hYmxlIHRvIHJlbW92ZSBuZXdseS1pbnN0YWxsZWQgdmVyc2lvbiBvZiBgJS4yNTBzJyB0byBhbGxvdyByZWluc3RhbGxhdGlvbiAiCisib2YgYmFja3VwIGNvcHkiCittc2dzdHIgIiIKKworIzogc3JjL2NsZWFudXAuYzo5MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVzdG9yZSBiYWNrdXAgdmVyc2lvbiBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvY2xlYW51cC5jOjk3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIGJhY2t1cCBjb3B5IG9mICclLjI1MHMnIgorbXNnc3RyICIlcyBhIGAlJS4yNTVzJyBzZXJuZWtldCIKKworIzogc3JjL2NsZWFudXAuYzoxMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBuZXdseS1pbnN0YWxsZWQgdmVyc2lvbiBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvY2xlYW51cC5jOjEwOAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIG5ld2x5LWV4dHJhY3RlZCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxMDQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IG5ldyBkaXN0cmlidXRlZCBjb25mZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAibmlrYXLDriBgJS4yNTBzJyB3ZWvDriBgJS4yNTBzJyBzYXogYmlrZSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBjdXJyZW50IGluc3RhbGxlZCBjb25mZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTI2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJDb25maWd1cmF0aW9uIGZpbGUgYCVzJywgZG9lcyBub3QgZXhpc3Qgb24gc3lzdGVtLlxuIgorIkluc3RhbGxpbmcgbmV3IGNvbmZpZyBmaWxlIGFzIHlvdSByZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE2OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW1vdmUgb2xkIGJhY2t1cCAnJS4yNTBzJzogJXMiCittc2dzdHIgIiVzIGEgYCUlLjI1NXMnIHNlcm5la2V0IgorCisjOiBzcmMvY29uZmlndXJlLmM6MTc2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIHJlbmFtZSAnJS4yNTBzJyB0byAnJS4yNTBzJzogJXMiCittc2dzdHIgIiVzIGEgYCUlLjI1NXMnIHNlcm5la2V0IgorCisjOiBzcmMvY29uZmlndXJlLmM6MTgyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIHJlbW92ZSAnJS4yNTBzJzogJXMiCittc2dzdHIgIiVzIGEgYCUlLjI1NXMnIHNlcm5la2V0IgorCisjOiBzcmMvY29uZmlndXJlLmM6MTg4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIHJlbW92ZSBvbGQgZGlzdHJpYnV0ZWQgdmVyc2lvbiAnJS4yNTBzJzogJXMiCittc2dzdHIgIiVzIGEgYCUlLjI1NXMnIHNlcm5la2V0IgorCisjOiBzcmMvY29uZmlndXJlLmM6MTkyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlICclLjI1MHMnIChiZWZvcmUgb3ZlcndyaXRlKTogJXMiCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE5NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byBsaW5rICclLjI1MHMnIHRvICclLjI1MHMnOiAlcyIKK21zZ3N0ciAibmlrYXLDriBgJS4yNTBzJyB3ZWvDriBgJS4yNTBzJyBzYXogYmlrZSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjIwMAorIywgYy1mb3JtYXQKK21zZ2lkICJJbnN0YWxsaW5nIG5ldyB2ZXJzaW9uIG9mIGNvbmZpZyBmaWxlICVzIC4uLlxuIgorbXNnc3RyICJ2ZXJzaXlvbmEgbsO7IHlhIHBlbMOqIG3DrmhlbmdhbiDDqiAlcyB0w6ogc2F6a2lyaW4gLi4uIFxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjA2IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo1NDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgYCUuMjUwcycgYXMgYCUuMjUwcyciCittc2dzdHIgIm5pa2Fyw64gYCUuMjUwcycgd2Vrw64gYCUuMjUwcycgc2F6IGJpa2UiCisKKyM6IHNyYy9jb25maWd1cmUuYzoyNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gcGFja2FnZSBuYW1lZCBgJXMnIGlzIGluc3RhbGxlZCwgY2Fubm90IGNvbmZpZ3VyZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjYwCisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgJS4yNTBzIGlzIGFscmVhZHkgaW5zdGFsbGVkIGFuZCBjb25maWd1cmVkIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzoyNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInBhY2thZ2UgJS4yNTBzIGlzIG5vdCByZWFkeSBmb3IgY29uZmlndXJhdGlvblxuIgorIiBjYW5ub3QgY29uZmlndXJlIChjdXJyZW50IHN0YXR1cyBgJS4yNTBzJykiCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI5NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogZGVwZW5kZW5jeSBwcm9ibGVtcyBwcmV2ZW50IGNvbmZpZ3VyYXRpb24gb2YgJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiBwaXJzZ2lyw6prw6puIGdpcsOqZGFuYsO7bsOqIGppIGJvIHZlYXZha2lyaW5hICVzIGFzdGVuZyBpbjpcbiIKKyIlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI5NworbXNnaWQgImRlcGVuZGVuY3kgcHJvYmxlbXMgLSBsZWF2aW5nIHVuY29uZmlndXJlZCIKK21zZ3N0ciAicGlyc2dpcsOqa8OqbiBnaXLDqmRhbmLDu27DqiAtIGLDqiB2ZWF2YWtpcmluw6ogZGltw65uZSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjMwMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogJXM6IGRlcGVuZGVuY3kgcHJvYmxlbXMsIGJ1dCBjb25maWd1cmluZyBhbnl3YXkgYXMgeW91IHJlcXVlc3RlZDpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiBwaXJzZ2lyw6prw6puIGdpcsOqZGFuYsO7bsOqIGhlbmUsIGzDqiBsaSBnb3LDriB4d2VzdGVrYSB0ZSB0w6ogIgorIm3DrmhlbmdraXJpbjpcbiIKKyIlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjMwOQorbXNnaWQgIiIKKyJQYWNrYWdlIGlzIGluIGEgdmVyeSBiYWQgaW5jb25zaXN0ZW50IHN0YXRlIC0geW91IHNob3VsZFxuIgorIiByZWluc3RhbGwgaXQgYmVmb3JlIGF0dGVtcHRpbmcgY29uZmlndXJhdGlvbi4iCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjMxMgorIywgYy1mb3JtYXQKK21zZ2lkICJTZXR0aW5nIHVwICVzICglcykgLi4uXG4iCittc2dzdHIgIiVzICglcykgdMOqIHZlYXZha2lyaW4gLi4uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzozOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiB1bmFibGUgdG8gc3RhdCBjb25maWcgZmlsZSAnJXMnXG4iCisiICg9ICclcycpOiAlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDA5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogY29uZmlnIGZpbGUgJyVzJyBpcyBhIGNpcmN1bGFyIGxpbmtcbiIKKyIgKD0gJyVzJykiCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQxOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IHVuYWJsZSB0byByZWFkbGluayBjb25mZmlsZSAnJXMnXG4iCisiICg9ICclcycpOiAlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDQ0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogY29uZmZpbGUgJyUuMjUwcycgcmVzb2x2ZXMgdG8gZGVnZW5lcmF0ZSBmaWxlbmFtZVxuIgorIiAoJyVzJyBpcyBhIHN5bWxpbmsgdG8gJyVzJykiCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQ2MAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogY29uZmZpbGUgJyUuMjUwcycgaXMgbm90IGEgcGxhaW4gZmlsZSBvciBzeW1saW5rICg9ICclcycpIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo0ODYKK21zZ2lkICJtZDVoYXNoIgorbXNnc3RyICJtZDVoYXNoIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDkyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogdW5hYmxlIHRvIG9wZW4gY29uZmZpbGUgJXMgZm9yIGhhc2g6ICVzIgorbXNnc3RyICJ0bXBmaWxlIGJvIHZzbnByaXRpZiBuYXnDqiB2ZWtpcmluIgorCisjOiBzcmMvY29uZmlndXJlLmM6NTIyIHNyYy9jb25maWd1cmUuYzo1MjYKK21zZ2lkICJjb25mZmlsZSBkaWZmZXJlbmNlIHZpc3VhbGl6ZXIiCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjU0MworbXNnaWQgIlR5cGUgYGV4aXQnIHdoZW4geW91J3JlIGRvbmUuXG4iCittc2dzdHIgIkRlbWEgeGVsYXMga2lyIGBleGl0JyBiaW5pdsOuc2VcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjU1MiBzcmMvY29uZmlndXJlLmM6NTU2Cittc2dpZCAiY29uZmZpbGUgc2hlbGwiCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYwMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiQ29uZmlndXJhdGlvbiBmaWxlIGAlcyciCittc2dzdHIgIiIKKyJcbiIKKyJQZWzDqiBtw65oZW5nYW4gw6ogYCVzJyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYwNAorIywgYy1mb3JtYXQKK21zZ2lkICIgKGFjdHVhbGx5IGAlcycpIgorbXNnc3RyICIgKG5paGEgYCVzJykiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiA9PT4gRmlsZSBvbiBzeXN0ZW0gY3JlYXRlZCBieSB5b3Ugb3IgYnkgYSBzY3JpcHQuXG4iCisiID09PiBGaWxlIGFsc28gaW4gcGFja2FnZSBwcm92aWRlZCBieSBwYWNrYWdlIG1haW50YWluZXIuXG4iCittc2dzdHIgIiIKKyJcbiIKKyIgPT0+IFBlbMOqIHBlcmdhbGEgdMOqIGt1IGppIGFsaXnDqiB0w6ogYW4gc2tyw65wdGVrw6ogaGF0aXllIGFmaXJhbmRpbi5cbiIKKyIgPT0+IFBlbCBkaSBwYWvDqnTDqiBqaSBhbGl5w6oga2Vzw6ogbWlxYXRlIHTDqiBiZWxhdmtpcmluIGRlIGrDriBoZXllLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjEzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgICAgIE5vdCBtb2RpZmllZCBzaW5jZSBpbnN0YWxsYXRpb24uXG4iCittc2dzdHIgIiIKKyJcbiIKKyIgICAgIEppIGRlbWEgc2F6a2lyaW7DqiB2ZSBuZWhhdGl5ZSBndWhlcmFuZGluLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjE1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgPT0+IE1vZGlmaWVkIChieSB5b3Ugb3IgYnkgYSBzY3JpcHQpIHNpbmNlIGluc3RhbGxhdGlvbi5cbiIKK21zZ3N0ciAiIgorIlxuIgorIiBKaSBkZW1hIHNhemtpcmluw6ogdmUgKGppIGFsaXnDqiB0ZSBhbiBza3LDrnBla8OqKSBoYXRpeWUgZ3VoZXJhbmRpbi5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYxNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiID09PiBEZWxldGVkIChieSB5b3Ugb3IgYnkgYSBzY3JpcHQpIHNpbmNlIGluc3RhbGxhdGlvbi5cbiIKK21zZ3N0ciAiIgorIlxuIgorIiA9PT4gUGnFn3TDriBzYXpraXJpbsOqIGhhdCBqw6piaXJpbiwgamkgYWxpecOqIHRlIHNrcsOucHRla8OqLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjE5CisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gUGFja2FnZSBkaXN0cmlidXRvciBoYXMgc2hpcHBlZCBhbiB1cGRhdGVkIHZlcnNpb24uXG4iCittc2dzdHIgIiA9PT4gS2Vzw6ogbWlxYXRlIHZlcnNpeW9uZWtlIHJvamFuZWtpcsOuIGJlbGF2IGtpci5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYyMAorIywgYy1mb3JtYXQKK21zZ2lkICIgICAgIFZlcnNpb24gaW4gcGFja2FnZSBpcyB0aGUgc2FtZSBhcyBhdCBsYXN0IGluc3RhbGxhdGlvbi5cbiIKK21zZ3N0ciAiICAgICBGZXJxIG5hdiB2ZXJzaXlvbmEgZGkgcGFrw6p0w6ogw7sgdmVyc2l5b25hIHNhemtpcsOuIHlhIGRhd8OuIHR1bmUuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBVc2luZyBuZXcgZmlsZSBhcyB5b3UgcmVxdWVzdGVkLlxuIgorbXNnc3RyICIgPT0+IFBlbMOqIG7DuyB0w6ogYmlrYXJhbsOuIHdla8OuIHTDqiB4d2VzdC5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYzMgorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IFVzaW5nIGN1cnJlbnQgb2xkIGZpbGUgYXMgeW91IHJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiID09PiBQZWzDqiBhbmloYSB5w6oga2V2biB0w6ogYmlrYXJhbsOubiB3ZWvDriB0w6ogeHdlc3QuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBLZWVwaW5nIG9sZCBjb25maWcgZmlsZSBhcyBkZWZhdWx0LlxuIgorbXNnc3RyICIgPT0+IFBlbMOqIGNvbmZpZyDDqiBrZXZuIHdla8OuIHN0YW5kYXJkIHTDqiBwYXJhc3Rpbi5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY0NQorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IFVzaW5nIG5ldyBjb25maWcgZmlsZSBhcyBkZWZhdWx0LlxuIgorbXNnc3RyICIgPT0+IFBlbMOqIGNvbmZpZyDDqiBuw7sgd2Vrw64gc3RhbmRhcmQgdMOqIGJpa2FyYW7Drm4uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyIgICBXaGF0IHdvdWxkIHlvdSBsaWtlIHRvIGRvIGFib3V0IGl0ID8gIFlvdXIgb3B0aW9ucyBhcmU6XG4iCisiICAgIFkgb3IgSSAgOiBpbnN0YWxsIHRoZSBwYWNrYWdlIG1haW50YWluZXIncyB2ZXJzaW9uXG4iCisiICAgIE4gb3IgTyAgOiBrZWVwIHlvdXIgY3VycmVudGx5LWluc3RhbGxlZCB2ZXJzaW9uXG4iCisiICAgICAgRCAgICAgOiBzaG93IHRoZSBkaWZmZXJlbmNlcyBiZXR3ZWVuIHRoZSB2ZXJzaW9uc1xuIgorIiAgICAgIFogICAgIDogc3RhcnQgYSBzaGVsbCB0byBleGFtaW5lIHRoZSBzaXR1YXRpb25cbiIKK21zZ3N0ciAiIgorIiAgIFR1IGRpeHdhesOuIMOnaSBiaWvDrj8gT3BzaXlvbsOqbiB0ZSBldiBpbjpcbiIKKyIgICAgWSBhbiBJIDogZ3VoYXJ0b3lhIHBha8OqdMOqIHlhIG1haW50YWluZXIgc2F6IGJpa2VcbiIKKyIgICAgTiBhbiBPIDogZ3VoYXJ0b3lhIG5paGEgc2F6a2lyw64gYmlwYXLDqnplXG4iCisiICAgICAgRCA6IGN1ZGFoaXnDqm4gbmF2IGd1aGFydG95YW4gbsOuxZ9hbiBiaWRlXG4iCisiICAgICAgWiA6IHbDqiBww6p2YWpvecOqIGJpxZ/Drm5lIHBhxZ8gamkgYm8gbMOqa29sw65uw6puIGRpblxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjU5CisjLCBjLWZvcm1hdAorbXNnaWQgIiBUaGUgZGVmYXVsdCBhY3Rpb24gaXMgdG8ga2VlcCB5b3VyIGN1cnJlbnQgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIMOHYWxha2l5YSBzdGFuZGFyZCBwYXJhc3RpbmEgZ3VoYXJ0b3lhIGFuaWhhIHllLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjYxCisjLCBjLWZvcm1hdAorbXNnaWQgIiBUaGUgZGVmYXVsdCBhY3Rpb24gaXMgdG8gaW5zdGFsbCB0aGUgbmV3IHZlcnNpb24uXG4iCittc2dzdHIgIiDDh2FsYWtpeWEgc3RhbmRhcmQgc2F6a2lyaW5hIGd1aGFydG95YSBuw7sgeWUuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NjYKK21zZ2lkICJbZGVmYXVsdD1OXSIKK21zZ3N0ciAiW3N0YW5kYXJkPU5dIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjY3Cittc2dpZCAiW2RlZmF1bHQ9WV0iCittc2dzdHIgIltzdGFuZGFyZD1ZXSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY2OAorbXNnaWQgIltubyBkZWZhdWx0XSIKK21zZ3N0ciAiW3N0YW5kYXJkIHR1bmVdIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjcxCittc2dpZCAiZXJyb3Igd3JpdGluZyB0byBzdGRlcnIsIGRpc2NvdmVyZWQgYmVmb3JlIGNvbmZmaWxlIHByb21wdCIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjgwCittc2dpZCAicmVhZCBlcnJvciBvbiBzdGRpbiBhdCBjb25mZmlsZSBwcm9tcHQiCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY4MQorbXNnaWQgIkVPRiBvbiBzdGRpbiBhdCBjb25mZmlsZSBwcm9tcHQiCittc2dzdHIgIiIKKworIzogc3JjL2RlcGNvbi5jOjE3NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXMgZGVwZW5kcyBvbiAlcyIKK21zZ3N0ciAiasOqIGdpcmVkYXnDriB5ZSIKKworIzogc3JjL2RlcGNvbi5jOjE3OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXMgcHJlLWRlcGVuZHMgb24gJXMiCittc2dzdHIgImrDqiBww6pzLWdpcsOqZGF5w64geWUiCisKKyM6IHNyYy9kZXBjb24uYzoxODEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzIHJlY29tbWVuZHMgJXMiCittc2dzdHIgInRhd3NpeWUgZGlrZSIKKworIzogc3JjL2RlcGNvbi5jOjE4NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXMgc3VnZ2VzdHMgJXMiCittc2dzdHIgIiBww6rFn25peWFyIGRpa2UgIgorCisjOiBzcmMvZGVwY29uLmM6MTg3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlcyBicmVha3MgJXMiCittc2dzdHIgImRpxZ9pa8OubmUiCisKKyM6IHNyYy9kZXBjb24uYzoxOTAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzIGNvbmZsaWN0cyB3aXRoICVzIgorbXNnc3RyICIgZGkgbmFrb2vDriBkZSB5ZSBiaSAiCisKKyM6IHNyYy9kZXBjb24uYzoxOTMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzIGVuaGFuY2VzICVzIgorbXNnc3RyICIgYmHFn3RpciBkaWtlICIKKworIzogc3JjL2RlcGNvbi5jOjI5NgorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyBkw6ogd2VyZSByYWtpcmluLlxuIgorCisjOiBzcmMvZGVwY29uLmM6Mjk5CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHRvIGJlIGRlY29uZmlndXJlZC5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGVwY29uLmM6MzA0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHRvIGJlIGluc3RhbGxlZCwgYnV0IGlzIHZlcnNpb24gJS4yNTBzLlxuIgorbXNnc3RyICIgIHNhemtpcmluYSAlLjI1MHMgcMOqd2lzdCBlLCBsw6ogZ3VoYXJ0b3lhICUuMjUwcyBlLlxuIgorCisjOiBzcmMvZGVwY29uLmM6MzE0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIGluc3RhbGxlZCwgYnV0IGlzIHZlcnNpb24gJS4yNTBzLlxuIgorbXNnc3RyICIgICUuMjUwcyBzYXpraXLDriB5ZSwgbMOqIGd1aGFydG95YSAlLjI1MHMgZS5cbiIKKworIzogc3JjL2RlcGNvbi5jOjMzMworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB1bnBhY2tlZCwgYnV0IGhhcyBuZXZlciBiZWVuIGNvbmZpZ3VyZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIGhhdGl5ZSBkZXJ4aXN0aW4sIGzDqiBxZXQgbmVoYXRpeWUgdmVhdmFraXJpbi5cbiIKKworIzogc3JjL2RlcGNvbi5jOjMzNworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB1bnBhY2tlZCwgYnV0IGlzIHZlcnNpb24gJS4yNTBzLlxuIgorbXNnc3RyICIgICUuMjUwcyBoYXRpeWUgZGVyeGlzdGluLCBsw6ogZ3VoYXJ0b3lhICUuMjUwcyBlLlxuIgorCisjOiBzcmMvZGVwY29uLmM6MzQzCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGxhdGVzdCBjb25maWd1cmVkIHZlcnNpb24gaXMgJS4yNTBzLlxuIgorbXNnc3RyICIgICUuMjUwcyBlLiBndWhhcnRveWEgZGF3w64geWEgdmVhdmFraXLDriAlLjI1MHMgZS5cbiIKKworIzogc3JjL2RlcGNvbi5jOjM1MworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyAlcy5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGVwY29uLmM6Mzg4CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBidXQgaXMgdG8gYmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGVwY29uLmM6MzkyCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBidXQgaXMgdG8gYmUgZGVjb25maWd1cmVkLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9kZXBjb24uYzo0MDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGJ1dCBpcyAlcy5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGVwY29uLmM6NDE1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIG5vdCBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2RlcGNvbi5jOjQ0MworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyAodmVyc2lvbiAlLjI1MHMpIGlzIHRvIGJlIGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGVwY29uLmM6NDY4CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzICh2ZXJzaW9uICUuMjUwcykgaXMgcHJlc2VudCBhbmQgJXMuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2RlcGNvbi5jOjQ5NQorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYW5kIGlzIHRvIGJlIGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGVwY29uLmM6NTM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBhbmQgaXMgcHJlc2VudCBhbmQgJXMuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjUwCittc2dpZCAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBkaXZlcnRpbmcgZmlsZXMuIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo2NiBzcmMvc3RhdGNtZC5jOjU3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo4MAorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gJXMgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiRGViaWFuICVzIGd1aGFydG95YSAlcy5cbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjcwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMTAgR3VpbGxlbSBKb3Zlci5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NzUgc3JjL21haW4uYzo2MyBzcmMvcXVlcnljbWQuYzo2MDMgc3JjL3N0YXRjbWQuYzo2NQorIzogc3JjL3RyaWdjbWQuYzo1NSBkcGtnLWRlYi9tYWluLmM6NTcgZHBrZy1zcGxpdC9tYWluLmM6NTEKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo4OQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvclxuIgorImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo4NyBzcmMvbWFpbi5jOjgxIHNyYy9xdWVyeWNtZC5jOjYxNSBzcmMvc3RhdGNtZC5jOjc3CisjOiBkcGtnLWRlYi9tYWluLmM6NjkgZHBrZy1zcGxpdC9tYWluLmM6NjMgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjk3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gPGNvbW1hbmQ+XG4iCisiXG4iCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjkxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIFstLWFkZF0gPGZpbGU+ICAgICAgICAgICBhZGQgYSBkaXZlcnNpb24uXG4iCisiICAtLXJlbW92ZSA8ZmlsZT4gICAgICAgICAgcmVtb3ZlIHRoZSBkaXZlcnNpb24uXG4iCisiICAtLWxpc3QgWzxnbG9iLXBhdHRlcm4+XSAgc2hvdyBmaWxlIGRpdmVyc2lvbnMuXG4iCisiICAtLWxpc3RwYWNrYWdlIDxmaWxlPiAgICAgc2hvdyB3aGF0IHBhY2thZ2UgZGl2ZXJ0cyB0aGUgZmlsZS5cbiIKKyIgIC0tdHJ1ZW5hbWUgPGZpbGU+ICAgICAgICByZXR1cm4gdGhlIGRpdmVydGVkIGZpbGUuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjEwMAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tcGFja2FnZSA8cGFja2FnZT4gICAgICBuYW1lIG9mIHRoZSBwYWNrYWdlIHdob3NlIGNvcHkgb2YgPGZpbGU+IHdpbGwgIgorIm5vdFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmUgZGl2ZXJ0ZWQuXG4iCisiICAtLWxvY2FsICAgICAgICAgICAgICAgICAgYWxsIHBhY2thZ2VzJyB2ZXJzaW9ucyBhcmUgZGl2ZXJ0ZWQuXG4iCisiICAtLWRpdmVydCA8ZGl2ZXJ0LXRvPiAgICAgdGhlIG5hbWUgdXNlZCBieSBvdGhlciBwYWNrYWdlcycgdmVyc2lvbnMuXG4iCisiICAtLXJlbmFtZSAgICAgICAgICAgICAgICAgYWN0dWFsbHkgbW92ZSB0aGUgZmlsZSBhc2lkZSAob3IgYmFjaykuXG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgc2V0IHRoZSBkaXJlY3Rvcnkgd2l0aCB0aGUgZGl2ZXJzaW9ucyBmaWxlLlxuIgorIiAgLS10ZXN0ICAgICAgICAgICAgICAgICAgIGRvbid0IGRvIGFueXRoaW5nLCBqdXN0IGRlbW9uc3RyYXRlLlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHF1aWV0IG9wZXJhdGlvbiwgbWluaW1hbCBvdXRwdXQuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIldoZW4gYWRkaW5nLCBkZWZhdWx0IGlzIC0tbG9jYWwgYW5kIC0tZGl2ZXJ0IDxvcmlnaW5hbD4uZGlzdHJpYi5cbiIKKyJXaGVuIHJlbW92aW5nLCAtLXBhY2thZ2Ugb3IgLS1sb2NhbCBhbmQgLS1kaXZlcnQgbXVzdCBtYXRjaCBpZiBzcGVjaWZpZWQuXG4iCisiUGFja2FnZSBwcmVpbnN0L3Bvc3RybSBzY3JpcHRzIHNob3VsZCBhbHdheXMgc3BlY2lmeSAtLXBhY2thZ2UgYW5kIC0tIgorImRpdmVydC5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MTY4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjaGVja2luZyAnJXMnIgorbXNnc3RyICJkaSB4d2VuZGluYSAlLjI1MHMgZGUgw6dld3TDriIKKworIzogc3JjL2RpdmVydGNtZC5jOjIwMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisicmVuYW1lIGludm9sdmVzIG92ZXJ3cml0aW5nIGAlcycgd2l0aFxuIgorIiAgZGlmZmVyZW50IGZpbGUgYCVzJywgbm90IGFsbG93ZWQiCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjIyMyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTM3MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBmaWxlICclcyciCittc2dzdHIgIiVzIG5hecOqIHhlYml0YW5kaW4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyMjcKK21zZ2lkICJmaWxlIGNvcHkiCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjIzOQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlbmFtZSAnJXMnIHRvICclcyciCittc2dzdHIgImRpIHh3ZW5kaW5hICVzIGRlIMOnZXd0w64iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVuYW1lOiByZW1vdmUgZHVwbGljYXRlIG9sZCBsaW5rICclcyciCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjI2MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBjb3BpZWQgc291cmNlIGZpbGUgJyVzJyIKK21zZ3N0ciAiJXMgbmF5w6ogeGViaXRhbmRpbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjI4NAorIywgYy1mb3JtYXQKK21zZ2lkICJsb2NhbCBkaXZlcnNpb24gb2YgJXMiCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjI4NgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiICBWZXJzaW9uIG9mICVzIG9uIHN5c3RlbSBpcyAlcy5cbiIKK21zZ2lkICJsb2NhbCBkaXZlcnNpb24gb2YgJXMgdG8gJXMiCittc2dzdHIgIiAgR3VoYXJ0b3lhICVzIGRpIHBlcmdhbMOqIGRlICVzIGUuXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyOTAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiAgVmVyc2lvbiBvZiAlcyBvbiBzeXN0ZW0gaXMgJXMuXG4iCittc2dpZCAiZGl2ZXJzaW9uIG9mICVzIGJ5ICVzIgorbXNnc3RyICIgIEd1aGFydG95YSAlcyBkaSBwZXJnYWzDqiBkZSAlcyBlLlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjkzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIgIFZlcnNpb24gb2YgJXMgb24gc3lzdGVtIGlzICVzLlxuIgorbXNnaWQgImRpdmVyc2lvbiBvZiAlcyB0byAlcyBieSAlcyIKK21zZ3N0ciAiICBHdWhhcnRveWEgJXMgZGkgcGVyZ2Fsw6ogZGUgJXMgZS5cbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjMwOQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiRGViaWFuICVzIHZlcnNpb24gJXMuXG4iCittc2dpZCAiYW55IGRpdmVyc2lvbiBvZiAlcyIKK21zZ3N0ciAiRGViaWFuICVzIGd1aGFydG95YSAlcy5cbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjMxMQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiICBWZXJzaW9uIG9mICVzIG9uIHN5c3RlbSBpcyAlcy5cbiIKK21zZ2lkICJhbnkgZGl2ZXJzaW9uIG9mICVzIHRvICVzIgorbXNnc3RyICIgIEd1aGFydG95YSAlcyBkaSBwZXJnYWzDqiBkZSAlcyBlLlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MzU3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgY3JlYXRlIG5ldyAlcyBmaWxlIgorbXNnc3RyICJkaSB4d2VuZGluYSAlcyBkZSDDp2V3dMOuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mzc1IHNyYy9zdGF0Y21kLmM6MjE1IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNDA0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggZmlsZSAnJXMnIgorbXNnc3RyICIlcyBuYXnDqiB4ZWJpdGFuZGluIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MzgyCittc2dpZCAiZXJyb3IgcmVtb3Zpbmcgb2xkIGRpdmVyc2lvbnMtb2xkIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozODQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBuZXcgZGl2ZXJzaW9ucy1vbGQiCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjM4NgorbXNnaWQgImVycm9yIGluc3RhbGxpbmcgbmV3IGRpdmVyc2lvbnMiCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjQwNiBzcmMvZGl2ZXJ0Y21kLmM6NTAzIHNyYy9kaXZlcnRjbWQuYzo2MTAKKyM6IHNyYy9kaXZlcnRjbWQuYzo2MzAgc3JjL3N0YXRjbWQuYzoyOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhIHNpbmdsZSBhcmd1bWVudCIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDA5IHNyYy9kaXZlcnRjbWQuYzo0MzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZW5hbWUgXCIlc1wiIGlzIG5vdCBhYnNvbHV0ZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDExIHNyYy9zdGF0Y21kLmM6MjQ5Cittc2dpZCAiZmlsZSBtYXkgbm90IGNvbnRhaW4gbmV3bGluZXMiCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjQxOAorbXNnaWQgIkNhbm5vdCBkaXZlcnQgZGlyZWN0b3JpZXMiCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjQzMworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGRpdmVydCBmaWxlICclcycgdG8gaXRzZWxmIgorbXNnc3RyICJwZWzDqiBgJS4yNTBzJyBuYXnDqiByYWtpcmluIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDUzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJMZWF2aW5nIGAlcyciCittc2dpZCAiTGVhdmluZyAnJXMnXG4iCittc2dzdHIgImAlcycgdMOqIGJlcmRhbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjQ1OAorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGNsYXNoZXMgd2l0aCBgJXMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0ODEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIkFkZGluZyBgJXMnIgorbXNnaWQgIkFkZGluZyAnJXMnXG4iCittc2dzdHIgImAlcycgdMOqIGzDqnrDqmRla2lyaW4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiTm8gZGl2ZXJzaW9uICclcycsIG5vbmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTI1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJtaXNtYXRjaCBvbiBkaXZlcnQtdG9cbiIKKyIgIHdoZW4gcmVtb3ZpbmcgYCVzJ1xuIgorIiAgZm91bmQgYCVzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJtaXNtYXRjaCBvbiBwYWNrYWdlXG4iCisiICB3aGVuIHJlbW92aW5nIGAlcydcbiIKKyIgIGZvdW5kIGAlcyciCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjUzOQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiUmVtb3ZpbmcgYCVzJyIKK21zZ2lkICJSZW1vdmluZyAnJXMnXG4iCittc2dzdHIgImAlcycgdMOqIHJha2lyaW4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo2NTcKK21zZ2lkICJwYWNrYWdlIG1heSBub3QgY29udGFpbiBuZXdsaW5lcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjY2Cittc2dpZCAiZGl2ZXJ0LXRvIG1heSBub3QgY29udGFpbiBuZXdsaW5lcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzo2NAorbXNnaWQgImZhaWxlZCB0byBvcGVuIGRpdmVyc2lvbnMgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzo3MQorbXNnaWQgImZhaWxlZCB0byBmc3RhdCBwcmV2aW91cyBkaXZlcnNpb25zIGZpbGUiCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGRiLmM6NzMKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgZGl2ZXJzaW9ucyBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRkYi5jOjExMworIywgYy1mb3JtYXQKK21zZ2lkICJjb25mbGljdGluZyBkaXZlcnNpb25zIGludm9sdmluZyBgJS4yNTBzJyBvciBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZW5xdWlyeS5jOjczCittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgYXJlIGluIGEgbWVzcyBkdWUgdG8gc2VyaW91cyBwcm9ibGVtcyBkdXJpbmdcbiIKKyJpbnN0YWxsYXRpb24uICBUaGV5IG11c3QgYmUgcmVpbnN0YWxsZWQgZm9yIHRoZW0gKGFuZCBhbnkgcGFja2FnZXNcbiIKKyJ0aGF0IGRlcGVuZCBvbiB0aGVtKSB0byBmdW5jdGlvbiBwcm9wZXJseTpcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZW5xdWlyeS5jOjgwCittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgaGF2ZSBiZWVuIHVucGFja2VkIGJ1dCBub3QgeWV0IGNvbmZpZ3VyZWQuXG4iCisiVGhleSBtdXN0IGJlIGNvbmZpZ3VyZWQgdXNpbmcgZHBrZyAtLWNvbmZpZ3VyZSBvciB0aGUgY29uZmlndXJlXG4iCisibWVudSBvcHRpb24gaW4gZHNlbGVjdCBmb3IgdGhlbSB0byB3b3JrOlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6ODcKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgb25seSBoYWxmIGNvbmZpZ3VyZWQsIHByb2JhYmx5IGR1ZSB0byBwcm9ibGVtc1xuIgorImNvbmZpZ3VyaW5nIHRoZW0gdGhlIGZpcnN0IHRpbWUuICBUaGUgY29uZmlndXJhdGlvbiBzaG91bGQgYmUgcmV0cmllZCB1c2luZ1xuIgorImRwa2cgLS1jb25maWd1cmUgPHBhY2thZ2U+IG9yIHRoZSBjb25maWd1cmUgbWVudSBvcHRpb24gaW4gZHNlbGVjdDpcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZW5xdWlyeS5jOjk0Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgYXJlIG9ubHkgaGFsZiBpbnN0YWxsZWQsIGR1ZSB0byBwcm9ibGVtcyBkdXJpbmdcbiIKKyJpbnN0YWxsYXRpb24uICBUaGUgaW5zdGFsbGF0aW9uIGNhbiBwcm9iYWJseSBiZSBjb21wbGV0ZWQgYnkgcmV0cnlpbmcgaXQ7XG4iCisidGhlIHBhY2thZ2VzIGNhbiBiZSByZW1vdmVkIHVzaW5nIGRzZWxlY3Qgb3IgZHBrZyAtLXJlbW92ZTpcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZW5xdWlyeS5jOjEwMQorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBhd2FpdGluZyBwcm9jZXNzaW5nIG9mIHRyaWdnZXJzIHRoYXQgdGhleVxuIgorImhhdmUgYWN0aXZhdGVkIGluIG90aGVyIHBhY2thZ2VzLiAgVGhpcyBwcm9jZXNzaW5nIGNhbiBiZSByZXF1ZXN0ZWQgdXNpbmdcbiIKKyJkc2VsZWN0IG9yIGRwa2cgLS1jb25maWd1cmUgLS1wZW5kaW5nIChvciBkcGtnIC0tdHJpZ2dlcnMtb25seSk6XG4iCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzoxMDgKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBoYXZlIGJlZW4gdHJpZ2dlcmVkLCBidXQgdGhlIHRyaWdnZXIgcHJvY2Vzc2luZ1xuIgorImhhcyBub3QgeWV0IGJlZW4gZG9uZS4gIFRyaWdnZXIgcHJvY2Vzc2luZyBjYW4gYmUgcmVxdWVzdGVkIHVzaW5nXG4iCisiZHNlbGVjdCBvciBkcGtnIC0tY29uZmlndXJlIC0tcGVuZGluZyAob3IgZHBrZyAtLXRyaWdnZXJzLW9ubHkpOlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTM3IHNyYy9lbnF1aXJ5LmM6MjExIHNyYy9lbnF1aXJ5LmM6MjkyIHNyYy9lbnF1aXJ5LmM6MzczCisjOiBzcmMvZW5xdWlyeS5jOjQ2MCBzcmMvc2VsZWN0LmM6OTggc3JjL3NlbGVjdC5jOjE2NCBzcmMvdHJpZ2NtZC5jOjE5OQorIzogc3JjL3VwZGF0ZS5jOjQ4IHNyYy91cGRhdGUuYzoxMTMgZHBrZy1zcGxpdC9xdWV1ZS5jOjIzMgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIHRha2VzIG5vIGFyZ3VtZW50cyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZW5xdWlyeS5jOjE1MgorbXNnaWQgIiIKKyJBbm90aGVyIHByb2Nlc3MgaGFzIGxvY2tlZCB0aGUgZGF0YWJhc2UgZm9yIHdyaXRpbmcsIGFuZCBtaWdodCBjdXJyZW50bHkgYmVcbiIKKyJtb2RpZnlpbmcgaXQsIHNvbWUgb2YgdGhlIGZvbGxvd2luZyBwcm9ibGVtcyBtaWdodCBqdXN0IGJlIGR1ZSB0byB0aGF0LlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTkxCisjLCBmdXp6eQorI3wgbXNnaWQgIjx1bmtub3duPiIKK21zZ2N0eHQgInNlY3Rpb24iCittc2dpZCAiPHVua25vd24+IgorbXNnc3RyICI8bmF5w6ogemFuw65uPiIKKworIzogc3JjL2VucXVpcnkuYzoyNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiICVkIGluICVzOiAiCittc2dzdHIgIiAlZCBkaSAlcyBkZTogIgorCisjOiBzcmMvZW5xdWlyeS5jOjI2NgorIywgYy1mb3JtYXQKK21zZ2lkICIgJWQgcGFja2FnZSwgZnJvbSB0aGUgZm9sbG93aW5nIHNlY3Rpb246IgorbXNnaWRfcGx1cmFsICIgJWQgcGFja2FnZXMsIGZyb20gdGhlIGZvbGxvd2luZyBzZWN0aW9uczoiCittc2dzdHJbMF0gIiIKK21zZ3N0clsxXSAiIgorCisjOiBzcmMvZW5xdWlyeS5jOjMwNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVmVyc2lvbiBvZiBkcGtnIHdpdGggd29ya2luZyAlcyBzdXBwb3J0IG5vdCB5ZXQgY29uZmlndXJlZC5cbiIKKyIgUGxlYXNlIHVzZSAnZHBrZyAtLWNvbmZpZ3VyZSBkcGtnJywgYW5kIHRoZW4gdHJ5IGFnYWluLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzEwCisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2cgbm90IHJlY29yZGVkIGFzIGluc3RhbGxlZCwgY2Fubm90IGNoZWNrIGZvciAlcyBzdXBwb3J0IVxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzIxCittc2dpZCAiUHJlLURlcGVuZHMgZmllbGQiCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzozMjkKK21zZ2lkICJlcG9jaCIKK21zZ3N0ciAiIgorCisjOiBzcmMvZW5xdWlyeS5jOjMzNworbXNnaWQgImxvbmcgZmlsZW5hbWVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzQ2Cittc2dpZCAibXVsdGlwbGUgQ29uZmxpY3RzIGFuZCBSZXBsYWNlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZW5xdWlyeS5jOjQzNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogY2Fubm90IHNlZSBob3cgdG8gc2F0aXNmeSBwcmUtZGVwZW5kZW5jeTpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZW5xdWlyeS5jOjQzNQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc2F0aXNmeSBwcmUtZGVwZW5kZW5jaWVzIGZvciAlLjI1MHMgKHdhbnRlZCBkdWUgdG8gJS4yNTBzKSIKK21zZ3N0ciAiIgorCisjOiBzcmMvZW5xdWlyeS5jOjQ3MgorIywgYy1mb3JtYXQKK21zZ2lkICJvYnNvbGV0ZSBvcHRpb24gJy0tJXMnLCBwbGVhc2UgdXNlICctLSVzJyBpbnN0ZWFkLiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZW5xdWlyeS5jOjUxOQorbXNnaWQgIiIKKyItLWNvbXBhcmUtdmVyc2lvbnMgdGFrZXMgdGhyZWUgYXJndW1lbnRzOiA8dmVyc2lvbj4gPHJlbGF0aW9uPiA8dmVyc2lvbj4iCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzo1MjQKK21zZ2lkICItLWNvbXBhcmUtdmVyc2lvbnMgYmFkIHJlbGF0aW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6NTI5IHNyYy9lbnF1aXJ5LmM6NTMxIHNyYy9lbnF1aXJ5LmM6NTQwIHNyYy9lbnF1aXJ5LmM6NTQyCisjLCBjLWZvcm1hdAorbXNnaWQgInZlcnNpb24gJyVzJyBoYXMgYmFkIHN5bnRheDogJXMiCittc2dzdHIgIiIKKworIzogc3JjL2Vycm9ycy5jOjYwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogZXJyb3IgcHJvY2Vzc2luZyAlcyAoLS0lcyk6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKworIzogc3JjL2Vycm9ycy5jOjY4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogZmFpbGVkIHRvIGFsbG9jYXRlIG1lbW9yeSBmb3IgbmV3IGVudHJ5IGluIGxpc3Qgb2YgZmFpbGVkIHBhY2thZ2VzOiAlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZXJyb3JzLmM6NzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IHRvbyBtYW55IGVycm9ycywgc3RvcHBpbmdcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZXJyb3JzLmM6ODcKK21zZ2lkICJFcnJvcnMgd2VyZSBlbmNvdW50ZXJlZCB3aGlsZSBwcm9jZXNzaW5nOlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9lcnJvcnMuYzo5NAorbXNnaWQgIlByb2Nlc3Npbmcgd2FzIGhhbHRlZCBiZWNhdXNlIHRoZXJlIHdlcmUgdG9vIG1hbnkgZXJyb3JzLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9lcnJvcnMuYzoxMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSAlcyB3YXMgb24gaG9sZCwgcHJvY2Vzc2luZyBpdCBhbnl3YXkgYXMgeW91IHJlcXVlc3RlZFxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9lcnJvcnMuYzoxMDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlBhY2thZ2UgJXMgaXMgb24gaG9sZCwgbm90IHRvdWNoaW5nIGl0LiAgVXNlIC0tZm9yY2UtaG9sZCB0byBvdmVycmlkZS5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZXJyb3JzLmM6MTE5Cittc2dpZCAib3ZlcnJpZGluZyBwcm9ibGVtIGJlY2F1c2UgLS1mb3JjZSBlbmFibGVkOiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZmlsZXNkYi5jOjMwNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogc3JjL2ZpbGVzZGIuYzozMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSBgJS4yNTBzJyBtaXNzaW5nLCBhc3N1bWluZyBwYWNrYWdlIGhhcyBubyBmaWxlcyAiCisiY3VycmVudGx5IGluc3RhbGxlZC4iCittc2dzdHIgIiIKKworIzogc3JjL2ZpbGVzZGIuYzozMjIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAnJS4yNTBzJyIKK21zZ3N0ciAibmlrYXLDriBgJS4yNTBzJyB3ZWvDriBgJS4yNTBzJyBzYXogYmlrZSIKKworIzogc3JjL2ZpbGVzZGIuYzozMzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInJlYWRpbmcgZmlsZXMgbGlzdCBmb3IgcGFja2FnZSAnJS4yNTBzJyIKK21zZ3N0ciAibmlrYXLDriBgJS4yNTBzJyB3ZWvDriBgJS4yNTBzJyBzYXogYmlrZSIKKworIzogc3JjL2ZpbGVzZGIuYzozMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICclLjI1MHMnIGlzIG1pc3NpbmcgZmluYWwgbmV3bGluZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvZmlsZXNkYi5jOjM0NAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcycgY29udGFpbnMgZW1wdHkgZmlsZW5hbWUiCittc2dzdHIgIiIKKworIzogc3JjL2ZpbGVzZGIuYzozNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogc3JjL2ZpbGVzZGIuYzo0NjIKK21zZ2lkICIoUmVhZGluZyBkYXRhYmFzZSAuLi4gIgorbXNnc3RyICIoRGFuZWdlaCB0w6ogeHdlbmRpbiAuLi4gIgorCisjOiBzcmMvZmlsZXNkYi5jOjQ4MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiJWQgZmlsZXMgYW5kIGRpcmVjdG9yaWVzIGN1cnJlbnRseSBpbnN0YWxsZWQuKVxuIgorbXNnaWQgIiVkIGZpbGUgb3IgZGlyZWN0b3J5IGN1cnJlbnRseSBpbnN0YWxsZWQuKVxuIgorbXNnaWRfcGx1cmFsICIlZCBmaWxlcyBhbmQgZGlyZWN0b3JpZXMgY3VycmVudGx5IGluc3RhbGxlZC4pXG4iCittc2dzdHJbMF0gIiVkIHBlbCDDuyBwZWxkYW5rIG5paGEgc2F6a2lyw64gbmUuKVxuIgorbXNnc3RyWzFdICIlZCBwZWwgw7sgcGVsZGFuayBuaWhhIHNhemtpcsOuIG5lLilcbiIKKworIzogc3JjL2ZpbGVzZGIuYzo1MTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZmlsZXNkYi5jOjUyNgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgdG8gdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIiIKKworIzogc3JjL2ZpbGVzZGIuYzo1MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZsdXNoIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9maWxlc2RiLmM6NTMwCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBzeW5jIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9maWxlc2RiLmM6NTMzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjbG9zZSB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZmlsZXNkYi5jOjUzNQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gaW5zdGFsbCB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvaGVscC5jOjQ4Cittc2dpZCAibm90IGluc3RhbGxlZCIKK21zZ3N0ciAibmUgc2F6a2lyw64iCisKKyM6IHNyYy9oZWxwLmM6NDkKK21zZ2lkICJub3QgaW5zdGFsbGVkIGJ1dCBjb25maWdzIHJlbWFpbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvaGVscC5jOjUwCittc2dpZCAiYnJva2VuIGR1ZSB0byBmYWlsZWQgcmVtb3ZhbCBvciBpbnN0YWxsYXRpb24iCittc2dzdHIgIiIKKworIzogc3JjL2hlbHAuYzo1MQorbXNnaWQgInVucGFja2VkIGJ1dCBub3QgY29uZmlndXJlZCIKK21zZ3N0ciAiZGVyeGlzdMOuIGzDqiBuZSB2ZWF2YWtpcsOuIgorCisjOiBzcmMvaGVscC5jOjUyCittc2dpZCAiYnJva2VuIGR1ZSB0byBwb3N0aW5zdCBmYWlsdXJlIgorbXNnc3RyICIiCisKKyM6IHNyYy9oZWxwLmM6NTMKK21zZ2lkICJhd2FpdGluZyB0cmlnZ2VyIHByb2Nlc3NpbmcgYnkgYW5vdGhlciBwYWNrYWdlIgorbXNnc3RyICIiCisKKyM6IHNyYy9oZWxwLmM6NTQKK21zZ2lkICJ0cmlnZ2VyZWQiCittc2dzdHIgIiIKKworIzogc3JjL2hlbHAuYzo1NQorbXNnaWQgImluc3RhbGxlZCIKK21zZ3N0ciAic2F6a2lyw64iCisKKyM6IHNyYy9oZWxwLmM6MTA3Cittc2dpZCAiUEFUSCBpcyBub3Qgc2V0LiIKK21zZ3N0ciAiIgorCisjOiBzcmMvaGVscC5jOjEyOQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS4iCittc2dzdHIgImRwa2c6ICVzIG5laGF0IGTDrnRpbi5cbiIKKworIzogc3JjL2hlbHAuYzoxMzgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlZCBleHBlY3RlZCBwcm9ncmFtIG5vdCBmb3VuZCBpbiBQQVRIIG9yIG5vdCBleGVjdXRhYmxlLlxuIgorIiVzIgorbXNnaWRfcGx1cmFsICIiCisiJWQgZXhwZWN0ZWQgcHJvZ3JhbXMgbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuXG4iCisiJXMiCittc2dzdHJbMF0gImRwa2c6ICVzIG5laGF0IGTDrnRpbi5cbiIKK21zZ3N0clsxXSAiZHBrZzogJXMgbmVoYXQgZMOudGluLlxuIgorCisjOiBzcmMvaGVscC5jOjE0MQorbXNnaWQgIiIKKyJOb3RlOiByb290J3MgUEFUSCBzaG91bGQgdXN1YWxseSBjb250YWluIC91c3IvbG9jYWwvc2JpbiwgL3Vzci9zYmluIGFuZCAvIgorInNiaW4uIgorbXNnc3RyICIiCisKKyM6IHNyYy9oZWxwLmM6MTg4Cittc2dpZCAiYWRtaW5kaXIgbXVzdCBiZSBpbnNpZGUgaW5zdGRpciBmb3IgZHBrZyB0byB3b3JrIHByb3Blcmx5IgorbXNnc3RyICIiCisKKyM6IHNyYy9oZWxwLmM6MTkwIHNyYy9tYWluLmM6NzQ3CisjLCBmdXp6eQorbXNnaWQgInVuYWJsZSB0byBzZXRlbnYgZm9yIHN1YnByb2Nlc3NlcyIKK21zZ3N0ciAidG1wZmlsZSBibyB2c25wcml0aWYgbmF5w6ogdmVraXJpbiIKKworIzogc3JjL2hlbHAuYzoxOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNocm9vdCB0byBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvaGVscC5jOjE5NCBkcGtnLWRlYi9idWlsZC5jOjQ1NSBkcGtnLWRlYi9idWlsZC5jOjQ1NworIzogZHBrZy1kZWIvYnVpbGQuYzo1MzYgZHBrZy1kZWIvYnVpbGQuYzo1NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIGAlLjI1NXMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9oZWxwLmM6MjU2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgZXhlY3V0ZSBwZXJtaXNzaW9ucyBvbiBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvaGVscC5jOjI3NgorIywgZnV6enkKK21zZ2lkICJ1bmFibGUgdG8gc2V0ZW52IGZvciBtYWludGFpbmVyIHNjcmlwdCIKK21zZ3N0ciAidG1wZmlsZSBibyB2c25wcml0aWYgbmF5w6ogdmVraXJpbiIKKworIzogc3JjL2hlbHAuYzozMDAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImluc3RhbGxlZCAlcyBzY3JpcHQiCittc2dzdHIgInNhemtpcsOuIgorCisjOiBzcmMvaGVscC5jOjMxMyBzcmMvaGVscC5jOjM4MiBzcmMvaGVscC5jOjQ0MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCAlcyBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvaGVscC5jOjM2OCBzcmMvaGVscC5jOjQyOAorIywgYy1mb3JtYXQKK21zZ2lkICJuZXcgJXMgc2NyaXB0IgorbXNnc3RyICIiCisKKyM6IHNyYy9oZWxwLmM6NDAyCisjLCBjLWZvcm1hdAorbXNnaWQgIm9sZCAlcyBzY3JpcHQiCittc2dzdHIgIiIKKworIzogc3JjL2hlbHAuYzo0MTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0ICVzICclLjI1MHMnOiAlcyIKK21zZ3N0ciAibmlrYXLDriBgJS4yNTBzJyB3ZWvDriBgJS4yNTBzJyBzYXogYmlrZSIKKworIzogc3JjL2hlbHAuYzo0MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZyAtIHRyeWluZyBzY3JpcHQgZnJvbSB0aGUgbmV3IHBhY2thZ2UgaW5zdGVhZCAuLi5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvaGVscC5jOjQzOQorbXNnaWQgInRoZXJlIGlzIG5vIHNjcmlwdCBpbiB0aGUgbmV3IHZlcnNpb24gb2YgdGhlIHBhY2thZ2UgLSBnaXZpbmcgdXAiCittc2dzdHIgIiIKKworIzogc3JjL2hlbHAuYzo0NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogLi4uIGl0IGxvb2tzIGxpa2UgdGhhdCB3ZW50IE9LLlxuIgorbXNnc3RyICJkcGtnOiAuLi5cbiIKKworIzogc3JjL2hlbHAuYzo2MTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWN1cmVseSByZW1vdmUgJyUuMjU1cyciCittc2dzdHIgImFmaXJhbmRpbmEgcGVsZGFua8OqIGJpc2VybmVrZXQiCisKKyM6IHNyYy9oZWxwLmM6NjIxIGRwa2ctZGViL2luZm8uYzo2NSBkcGtnLWRlYi9pbmZvLmM6NjcKK21zZ2lkICJybSBjb21tYW5kIGZvciBjbGVhbnVwIgorbXNnc3RyICIiCisKKyM6IHNyYy9pbmZvZGIuYzo1MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoZWNrIGV4aXN0ZW5jZSBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiYWZpcmFuZGluYSBwZWxkYW5rw6ogYmlzZXJuZWtldCIKKworIzogc3JjL2luZm9kYi5jOjcwCittc2dpZCAiY2Fubm90IHJlYWQgaW5mbyBkaXJlY3RvcnkiCittc2dzdHIgInBlbGRhbmthIGFnYWhpecOqIG5hecOqIHh3ZW5kaW4iCisKKyM6IHNyYy9tYWluLmM6NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuIGAlcycgcGFja2FnZSBtYW5hZ2VtZW50IHByb2dyYW0gdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjg1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1pfC0taW5zdGFsbCAgICAgICA8LmRlYiBmaWxlIG5hbWU+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXJlY3Rvcnk+IC4uLlxuIgorIiAgLS11bnBhY2sgICAgICAgICAgIDwuZGViIGZpbGUgbmFtZT4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRpcmVjdG9yeT4gLi4uXG4iCisiICAtQXwtLXJlY29yZC1hdmFpbCAgPC5kZWIgZmlsZSBuYW1lPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyZWN0b3J5PiAuLi5cbiIKKyIgIC0tY29uZmlndXJlICAgICAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtLXRyaWdnZXJzLW9ubHkgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLXJ8LS1yZW1vdmUgICAgICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC1QfC0tcHVyZ2UgICAgICAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtLWdldC1zZWxlY3Rpb25zIFs8cGF0dGVybj4gLi4uXSBHZXQgbGlzdCBvZiBzZWxlY3Rpb25zIHRvIHN0ZG91dC5cbiIKKyIgIC0tc2V0LXNlbGVjdGlvbnMgICAgICAgICAgICAgICAgIFNldCBwYWNrYWdlIHNlbGVjdGlvbnMgZnJvbSBzdGRpbi5cbiIKKyIgIC0tY2xlYXItc2VsZWN0aW9ucyAgICAgICAgICAgICAgIERlc2VsZWN0IGV2ZXJ5IG5vbi1lc3NlbnRpYWwgcGFja2FnZS5cbiIKKyIgIC0tdXBkYXRlLWF2YWlsIDxQYWNrYWdlcy1maWxlPiAgIFJlcGxhY2UgYXZhaWxhYmxlIHBhY2thZ2VzIGluZm8uXG4iCisiICAtLW1lcmdlLWF2YWlsIDxQYWNrYWdlcy1maWxlPiAgICBNZXJnZSB3aXRoIGluZm8gZnJvbSBmaWxlLlxuIgorIiAgLS1jbGVhci1hdmFpbCAgICAgICAgICAgICAgICAgICAgRXJhc2UgZXhpc3RpbmcgYXZhaWxhYmxlIGluZm8uXG4iCisiICAtLWZvcmdldC1vbGQtdW5hdmFpbCAgICAgICAgICAgICBGb3JnZXQgdW5pbnN0YWxsZWQgdW5hdmFpbGFibGUgcGtncy5cbiIKKyIgIC1zfC0tc3RhdHVzIDxwYWNrYWdlPiAuLi4gICAgICAgIERpc3BsYXkgcGFja2FnZSBzdGF0dXMgZGV0YWlscy5cbiIKKyIgIC1wfC0tcHJpbnQtYXZhaWwgPHBhY2thZ2U+IC4uLiAgIERpc3BsYXkgYXZhaWxhYmxlIHZlcnNpb24gZGV0YWlscy5cbiIKKyIgIC1MfC0tbGlzdGZpbGVzIDxwYWNrYWdlPiAuLi4gICAgIExpc3QgZmlsZXMgYG93bmVkJyBieSBwYWNrYWdlKHMpLlxuIgorIiAgLWx8LS1saXN0IFs8cGF0dGVybj4gLi4uXSAgICAgICAgTGlzdCBwYWNrYWdlcyBjb25jaXNlbHkuXG4iCisiICAtU3wtLXNlYXJjaCA8cGF0dGVybj4gLi4uICAgICAgICBGaW5kIHBhY2thZ2Uocykgb3duaW5nIGZpbGUocykuXG4iCisiICAtQ3wtLWF1ZGl0ICAgICAgICAgICAgICAgICAgICAgICBDaGVjayBmb3IgYnJva2VuIHBhY2thZ2UocykuXG4iCisiICAtLXByaW50LWFyY2hpdGVjdHVyZSAgICAgICAgICAgICBQcmludCBkcGtnIGFyY2hpdGVjdHVyZS5cbiIKKyIgIC0tY29tcGFyZS12ZXJzaW9ucyA8YT4gPG9wPiA8Yj4gIENvbXBhcmUgdmVyc2lvbiBudW1iZXJzIC0gc2VlIGJlbG93LlxuIgorIiAgLS1mb3JjZS1oZWxwICAgICAgICAgICAgICAgICAgICAgU2hvdyBoZWxwIG9uIGZvcmNpbmcuXG4iCisiICAtRGh8LS1kZWJ1Zz1oZWxwICAgICAgICAgICAgICAgICBTaG93IGhlbHAgb24gZGVidWdnaW5nLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MTEzIHNyYy9xdWVyeWNtZC5jOjYzMSBzcmMvdHJpZ2NtZC5jOjc3IGRwa2ctZGViL21haW4uYzo4OAorIzogZHBrZy1zcGxpdC9tYWluLmM6NzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiAgLWh8LS1oZWxwICAgICAgICAgICAgICAgICAgICAgICAgU2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoxMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlVzZSBkcGtnIC1ifC0tYnVpbGR8LWN8LS1jb250ZW50c3wtZXwtLWNvbnRyb2x8LUl8LS1pbmZvfC1mfC0tZmllbGR8XG4iCisiIC14fC0tZXh0cmFjdHwtWHwtLXZleHRyYWN0fC0tZnN5cy10YXJmaWxlICBvbiBhcmNoaXZlcyAodHlwZSAlcyAtLWhlbHApLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MTIzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJGb3IgaW50ZXJuYWwgdXNlOiBkcGtnIC0tYXNzZXJ0LXN1cHBvcnQtcHJlZGVwZW5kcyB8IC0tcHJlZGVwLXBhY2thZ2UgfFxuIgorIiAgLS1hc3NlcnQtd29ya2luZy1lcG9jaCB8IC0tYXNzZXJ0LWxvbmctZmlsZW5hbWVzIHwgLS1hc3NlcnQtbXVsdGktY29ucmVwLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MTI4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hZG1pbmRpcj08ZGlyZWN0b3J5PiAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMuXG4iCisiICAtLXJvb3Q9PGRpcmVjdG9yeT4gICAgICAgICBJbnN0YWxsIG9uIGEgZGlmZmVyZW50IHJvb3QgZGlyZWN0b3J5LlxuIgorIiAgLS1pbnN0ZGlyPTxkaXJlY3Rvcnk+ICAgICAgQ2hhbmdlIGluc3RhbGxhdGlvbiBkaXIgd2l0aG91dCBjaGFuZ2luZyBhZG1pbiAiCisiZGlyLlxuIgorIiAgLS1wYXRoLWV4Y2x1ZGU9PHBhdHRlcm4+ICAgRG8gbm90IGluc3RhbGwgcGF0aHMgd2hpY2ggbWF0Y2ggYSBzaGVsbCAiCisicGF0dGVybi5cbiIKKyIgIC0tcGF0aC1pbmNsdWRlPTxwYXR0ZXJuPiAgIFJlLWluY2x1ZGUgYSBwYXR0ZXJuIGFmdGVyIGEgcHJldmlvdXMgIgorImV4Y2x1c2lvbi5cbiIKKyIgIC1PfC0tc2VsZWN0ZWQtb25seSAgICAgICAgIFNraXAgcGFja2FnZXMgbm90IHNlbGVjdGVkIGZvciBpbnN0YWxsLyIKKyJ1cGdyYWRlLlxuIgorIiAgLUV8LS1za2lwLXNhbWUtdmVyc2lvbiAgICAgU2tpcCBwYWNrYWdlcyB3aG9zZSBzYW1lIHZlcnNpb24gaXMgaW5zdGFsbGVkLlxuIgorIiAgLUd8LS1yZWZ1c2UtZG93bmdyYWRlICAgICAgU2tpcCBwYWNrYWdlcyB3aXRoIGVhcmxpZXIgdmVyc2lvbiB0aGFuICIKKyJpbnN0YWxsZWQuXG4iCisiICAtQnwtLWF1dG8tZGVjb25maWd1cmUgICAgICBJbnN0YWxsIGV2ZW4gaWYgaXQgd291bGQgYnJlYWsgc29tZSBvdGhlciAiCisicGFja2FnZS5cbiIKKyIgIC0tW25vLV10cmlnZ2VycyAgICAgICAgICAgIFNraXAgb3IgZm9yY2UgY29uc2VxdWVudGlhbCB0cmlnZ2VyICIKKyJwcm9jZXNzaW5nLlxuIgorIiAgLS1uby1kZWJzaWcgICAgICAgICAgICAgICAgRG8gbm90IHRyeSB0byB2ZXJpZnkgcGFja2FnZSBzaWduYXR1cmVzLlxuIgorIiAgLS1uby1hY3R8LS1kcnktcnVufC0tc2ltdWxhdGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEp1c3Qgc2F5IHdoYXQgd2Ugd291bGQgZG8gLSBkb24ndCBkbyBpdC5cbiIKKyIgIC1EfC0tZGVidWc9PG9jdGFsPiAgICAgICAgIEVuYWJsZSBkZWJ1Z2dpbmcgKHNlZSAtRGhlbHAgb3IgLS1kZWJ1Zz1oZWxwKS5cbiIKKyIgIC0tc3RhdHVzLWZkIDxuPiAgICAgICAgICAgIFNlbmQgc3RhdHVzIGNoYW5nZSB1cGRhdGVzIHRvIGZpbGUgZGVzY3JpcHRvciAiCisiPG4+LlxuIgorIiAgLS1sb2c9PGZpbGVuYW1lPiAgICAgICAgICAgTG9nIHN0YXR1cyBjaGFuZ2VzIGFuZCBhY3Rpb25zIHRvIDxmaWxlbmFtZT4uXG4iCisiICAtLWlnbm9yZS1kZXBlbmRzPTxwYWNrYWdlPiwuLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIElnbm9yZSBkZXBlbmRlbmNpZXMgaW52b2x2aW5nIDxwYWNrYWdlPi5cbiIKKyIgIC0tZm9yY2UtLi4uICAgICAgICAgICAgICAgIE92ZXJyaWRlIHByb2JsZW1zIChzZWUgLS1mb3JjZS1oZWxwKS5cbiIKKyIgIC0tbm8tZm9yY2UtLi4ufC0tcmVmdXNlLS4uLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcCB3aGVuIHByb2JsZW1zIGVuY291bnRlcmVkLlxuIgorIiAgLS1hYm9ydC1hZnRlciA8bj4gICAgICAgICAgQWJvcnQgYWZ0ZXIgZW5jb3VudGVyaW5nIDxuPiBlcnJvcnMuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoxNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbXBhcmlzb24gb3BlcmF0b3JzIGZvciAtLWNvbXBhcmUtdmVyc2lvbnMgYXJlOlxuIgorIiAgbHQgbGUgZXEgbmUgZ2UgZ3QgICAgICAgKHRyZWF0IGVtcHR5IHZlcnNpb24gYXMgZWFybGllciB0aGFuIGFueSAiCisidmVyc2lvbik7XG4iCisiICBsdC1ubCBsZS1ubCBnZS1ubCBndC1ubCAodHJlYXQgZW1wdHkgdmVyc2lvbiBhcyBsYXRlciB0aGFuIGFueSB2ZXJzaW9uKTtcbiIKKyIgIDwgPDwgPD0gPSA+PSA+PiA+ICAgICAgIChvbmx5IGZvciBjb21wYXRpYmlsaXR5IHdpdGggY29udHJvbCBmaWxlICIKKyJzeW50YXgpLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MTYxCisjLCBjLWZvcm1hdAorbXNnaWQgIlVzZSBgZHNlbGVjdCcgb3IgYGFwdGl0dWRlJyBmb3IgdXNlci1mcmllbmRseSBwYWNrYWdlIG1hbmFnZW1lbnQuXG4iCittc2dzdHIgIiIKKyJKaSBibyByw6p2ZWJpcml5YSBwYWvDqnRhbiBhIGhlc2FudGlyIGBkc2VsZWN0JyBhbiBgYXB0aXR1ZGUnIGJpIGthciBiw65uZS5cbiIKKworIzogc3JjL21haW4uYzoxNzAKK21zZ2lkICIiCisiVHlwZSBkcGtnIC0taGVscCBmb3IgaGVscCBhYm91dCBpbnN0YWxsaW5nIGFuZCBkZWluc3RhbGxpbmcgcGFja2FnZXMgWypdO1xuIgorIlVzZSBgZHNlbGVjdCcgb3IgYGFwdGl0dWRlJyBmb3IgdXNlci1mcmllbmRseSBwYWNrYWdlIG1hbmFnZW1lbnQ7XG4iCisiVHlwZSBkcGtnIC1EaGVscCBmb3IgYSBsaXN0IG9mIGRwa2cgZGVidWcgZmxhZyB2YWx1ZXM7XG4iCisiVHlwZSBkcGtnIC0tZm9yY2UtaGVscCBmb3IgYSBsaXN0IG9mIGZvcmNpbmcgb3B0aW9ucztcbiIKKyJUeXBlIGRwa2ctZGViIC0taGVscCBmb3IgaGVscCBhYm91dCBtYW5pcHVsYXRpbmcgKi5kZWIgZmlsZXM7XG4iCisiXG4iCisiT3B0aW9ucyBtYXJrZWQgWypdIHByb2R1Y2UgYSBsb3Qgb2Ygb3V0cHV0IC0gcGlwZSBpdCB0aHJvdWdoIGBsZXNzJyBvciAiCisiYG1vcmUnICEiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMTkKK21zZ2lkICJTZXQgYWxsIGZvcmNlIG9wdGlvbnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjEKK21zZ2lkICJSZXBsYWNlIGEgcGFja2FnZSB3aXRoIGEgbG93ZXIgdmVyc2lvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIyMworbXNnaWQgIkNvbmZpZ3VyZSBhbnkgcGFja2FnZSB3aGljaCBtYXkgaGVscCB0aGlzIG9uZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIyNQorbXNnaWQgIlByb2Nlc3MgaW5jaWRlbnRhbCBwYWNrYWdlcyBldmVuIHdoZW4gb24gaG9sZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIyNworbXNnaWQgIlRyeSB0byAoZGUpaW5zdGFsbCB0aGluZ3MgZXZlbiB3aGVuIG5vdCByb290IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjI5Cittc2dpZCAiUEFUSCBpcyBtaXNzaW5nIGltcG9ydGFudCBwcm9ncmFtcywgcHJvYmxlbXMgbGlrZWx5IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjMxCittc2dpZCAiSW5zdGFsbCBhIHBhY2thZ2UgZXZlbiBpZiBpdCBmYWlscyBhdXRoZW50aWNpdHkgY2hlY2siCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzMKK21zZ2lkICJQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyB2ZXJzaW9ucyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzNQorbXNnaWQgIk92ZXJ3cml0ZSBhIGZpbGUgZnJvbSBvbmUgcGFja2FnZSB3aXRoIGFub3RoZXIiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzcKK21zZ2lkICJPdmVyd3JpdGUgYSBkaXZlcnRlZCBmaWxlIHdpdGggYW4gdW5kaXZlcnRlZCB2ZXJzaW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjM5Cittc2dpZCAiT3ZlcndyaXRlIG9uZSBwYWNrYWdlJ3MgZGlyZWN0b3J5IHdpdGggYW5vdGhlcidzIGZpbGUiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDEKK21zZ2lkICJEbyBub3QgcGVyZm9ybSBzYWZlIEkvTyBvcGVyYXRpb25zIHdoZW4gdW5wYWNraW5nIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjQzCittc2dpZCAiQWx3YXlzIHVzZSB0aGUgbmV3IGNvbmZpZyBmaWxlcywgZG9uJ3QgcHJvbXB0IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjQ1Cittc2dpZCAiQWx3YXlzIHVzZSB0aGUgb2xkIGNvbmZpZyBmaWxlcywgZG9uJ3QgcHJvbXB0IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjQ4Cittc2dpZCAiIgorIlVzZSB0aGUgZGVmYXVsdCBvcHRpb24gZm9yIG5ldyBjb25maWcgZmlsZXMgaWYgb25lXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgIGlzIGF2YWlsYWJsZSwgZG9uJ3QgcHJvbXB0LiBJZiBubyBkZWZhdWx0IGNhbiBiZSAiCisiZm91bmQsXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgIHlvdSB3aWxsIGJlIHByb21wdGVkIHVubGVzcyBvbmUgb2YgdGhlIGNvbmZvbGQgb3JcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgY29uZm5ldyBvcHRpb25zIGlzIGFsc28gZ2l2ZW4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNTMKK21zZ2lkICJBbHdheXMgaW5zdGFsbCBtaXNzaW5nIGNvbmZpZyBmaWxlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI1NQorbXNnaWQgIk9mZmVyIHRvIHJlcGxhY2UgY29uZmlnIGZpbGVzIHdpdGggbm8gbmV3IHZlcnNpb25zIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjU3Cittc2dpZCAiUHJvY2VzcyBldmVuIHBhY2thZ2VzIHdpdGggd3Jvbmcgb3Igbm8gYXJjaGl0ZWN0dXJlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjU5Cittc2dpZCAiSW5zdGFsbCBldmVuIGlmIGl0IHdvdWxkIGJyZWFrIGFub3RoZXIgcGFja2FnZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI2MQorbXNnaWQgIkFsbG93IGluc3RhbGxhdGlvbiBvZiBjb25mbGljdGluZyBwYWNrYWdlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI2MworIywgZnV6enkKKyN8IG1zZ2lkICJkZXBlbmRlbmN5IHByb2JsZW1zIC0gbm90IHJlbW92aW5nIgorbXNnaWQgIlR1cm4gYWxsIGRlcGVuZGVuY3kgcHJvYmxlbXMgaW50byB3YXJuaW5ncyIKK21zZ3N0ciAicGlyc2dpcsOqa8OqbiBiaW5kZXN0aXnDqiAtIG5hecOqIHJha2lyaW4iCisKKyM6IHNyYy9tYWluLmM6MjY1CisjLCBmdXp6eQorI3wgbXNnaWQgImRlcGVuZGVuY3kgcHJvYmxlbXMgLSBub3QgcmVtb3ZpbmciCittc2dpZCAiVHVybiBkZXBlbmRlbmN5IHZlcnNpb24gcHJvYmxlbXMgaW50byB3YXJuaW5ncyIKK21zZ3N0ciAicGlyc2dpcsOqa8OqbiBiaW5kZXN0aXnDqiAtIG5hecOqIHJha2lyaW4iCisKKyM6IHNyYy9tYWluLmM6MjY3Cittc2dpZCAiUmVtb3ZlIHBhY2thZ2VzIHdoaWNoIHJlcXVpcmUgaW5zdGFsbGF0aW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjY5Cittc2dpZCAiUmVtb3ZlIGFuIGVzc2VudGlhbCBwYWNrYWdlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjgxCittc2dpZCAiR2VuZXJhbGx5IGhlbHBmdWwgcHJvZ3Jlc3MgaW5mb3JtYXRpb24iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODIKKyMsIGZ1enp5Cittc2dpZCAiSW52b2NhdGlvbiBhbmQgc3RhdHVzIG9mIG1haW50YWluZXIgc2NyaXB0cyIKK21zZ3N0ciAidG1wZmlsZSBibyB2c25wcml0aWYgbmF5w6ogdmVraXJpbiIKKworIzogc3JjL21haW4uYzoyODMKK21zZ2lkICJPdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODQKK21zZ2lkICJMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4NQorbXNnaWQgIk91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGUiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODYKK21zZ2lkICJMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGUiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODcKK21zZ2lkICJEZXBlbmRlbmNpZXMgYW5kIGNvbmZsaWN0cyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4OAorbXNnaWQgIkxvdHMgb2YgZGVwZW5kZW5jaWVzL2NvbmZsaWN0cyBvdXRwdXQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODkKK21zZ2lkICJUcmlnZ2VyIGFjdGl2YXRpb24gYW5kIHByb2Nlc3NpbmciCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyOTAKK21zZ2lkICJMb3RzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyOTEKK21zZ2lkICJTaWxseSBhbW91bnRzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyOTIKK21zZ2lkICJMb3RzIG9mIGRyaXZlbCBhYm91dCBlZyB0aGUgZHBrZy9pbmZvIGRpcmVjdG9yeSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MworbXNnaWQgIkluc2FuZSBhbW91bnRzIG9mIGRyaXZlbCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjMwNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXMgZGVidWdnaW5nIG9wdGlvbiwgLS1kZWJ1Zz08b2N0YWw+IG9yIC1EPG9jdGFsPjpcbiIKKyJcbiIKKyIgTnVtYmVyICBSZWYuIGluIHNvdXJjZSAgIERlc2NyaXB0aW9uXG4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzozMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIkRlYnVnZ2luZyBvcHRpb25zIGNhbiBiZSBtaXhlZCB1c2luZyBiaXR3aXNlLW9yLlxuIgorIk5vdGUgdGhhdCB0aGUgbWVhbmluZ3MgYW5kIHZhbHVlcyBhcmUgc3ViamVjdCB0byBjaGFuZ2UuXG4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzozMTkKK21zZ2lkICItLWRlYnVnIHJlcXVpcmVzIGFuIG9jdGFsIGFyZ3VtZW50IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MzQ4CisjLCBjLWZvcm1hdAorbXNnaWQgIm51bGwgcGFja2FnZSBuYW1lIGluIC0taWdub3JlLWRlcGVuZHMgY29tbWEtc2VwYXJhdGVkIGxpc3QgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzozNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS1pZ25vcmUtZGVwZW5kcyByZXF1aXJlcyBhIGxlZ2FsIHBhY2thZ2UgbmFtZS4gYCUuMjUwcycgaXMgbm90OyAlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjM3MSBzcmMvbWFpbi5jOjM4MSBzcmMvbWFpbi5jOjY0OSBkcGtnLXNwbGl0L21haW4uYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBpbnRlZ2VyIGZvciAtLSVzOiBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjQzOAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBleGVjdXRpbmcgaG9vayAnJXMnLCBleGl0IGNvZGUgJWQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzo0NjUKK21zZ2lkICJzdGF0dXMgbG9nZ2VyIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6NDgwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlcyBmb3JjaW5nIG9wdGlvbnMgLSBjb250cm9sIGJlaGF2aW91ciB3aGVuIHByb2JsZW1zIGZvdW5kOlxuIgorIiAgd2FybiBidXQgY29udGludWU6ICAtLWZvcmNlLTx0aGluZz4sPHRoaW5nPiwuLi5cbiIKKyIgIHN0b3Agd2l0aCBlcnJvcjogICAgLS1yZWZ1c2UtPHRoaW5nPiw8dGhpbmc+LC4uLiB8IC0tbm8tZm9yY2UtPHRoaW5nPiwuLi5cbiIKKyIgRm9yY2luZyB0aGluZ3M6XG4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzo0OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIldBUk5JTkcgLSB1c2Ugb2Ygb3B0aW9ucyBtYXJrZWQgWyFdIGNhbiBzZXJpb3VzbHkgZGFtYWdlIHlvdXIgaW5zdGFsbGF0aW9uLlxuIgorIkZvcmNpbmcgb3B0aW9ucyBtYXJrZWQgWypdIGFyZSBlbmFibGVkIGJ5IGRlZmF1bHQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzo1MDQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBmb3JjZS9yZWZ1c2Ugb3B0aW9uIGAlLipzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjUxMworIywgYy1mb3JtYXQKK21zZ2lkICJvYnNvbGV0ZSBmb3JjZS9yZWZ1c2Ugb3B0aW9uICclcydcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjY0MworbXNnaWQgIi0tY29tbWFuZC1mZCB0YWtlcyBvbmUgYXJndW1lbnQsIG5vdCB6ZXJvIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6NjQ1Cittc2dpZCAiLS1jb21tYW5kLWZkIG9ubHkgdGFrZXMgb25lIGFyZ3VtZW50IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6NjUxCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkbid0IG9wZW4gYCVpJyBmb3Igc3RyZWFtIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Njc2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW9mIGJlZm9yZSBlbmQgb2YgbGluZSAlZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjcxOSBzcmMvbWFpbi5jOjc0MSBzcmMvcXVlcnljbWQuYzo2OTIgc3JjL3N0YXRjbWQuYzozNzkKKyM6IGRwa2ctZGViL21haW4uYzoyMDEgZHBrZy1zcGxpdC9tYWluLmM6MTYzCittc2dpZCAibmVlZCBhbiBhY3Rpb24gb3B0aW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjExMworbXNnaWQgIiIKKyJ5b3UgbXVzdCBzcGVjaWZ5IHBhY2thZ2VzIGJ5IHRoZWlyIG93biBuYW1lcywgbm90IGJ5IHF1b3RpbmcgdGhlIG5hbWVzIG9mICIKKyJ0aGUgZmlsZXMgdGhleSBjb21lIGluIgorbXNnc3RyICIiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjEzMworIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIC0tcGVuZGluZyBkb2VzIG5vdCB0YWtlIGFueSBub24tb3B0aW9uIGFyZ3VtZW50cyIKK21zZ3N0ciAiIgorCisjOiBzcmMvcGFja2FnZXMuYzoxMzggc3JjL3F1ZXJ5Y21kLmM6Mzc1IHNyYy9xdWVyeWNtZC5jOjU2NQorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGF0IGxlYXN0IG9uZSBwYWNrYWdlIG5hbWUgYXJndW1lbnQiCittc2dzdHIgIiIKKworIzogc3JjL3BhY2thZ2VzLmM6MTc5CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgJXMgbGlzdGVkIG1vcmUgdGhhbiBvbmNlLCBvbmx5IHByb2Nlc3Npbmcgb25jZS5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcGFja2FnZXMuYzoxODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk1vcmUgdGhhbiBvbmUgY29weSBvZiBwYWNrYWdlICVzIGhhcyBiZWVuIHVucGFja2VkXG4iCisiIGluIHRoaXMgcnVuICEgIE9ubHkgY29uZmlndXJpbmcgaXQgb25jZS5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcGFja2FnZXMuYzoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInBhY2thZ2UgJS4yNTBzIGlzIG5vdCByZWFkeSBmb3IgdHJpZ2dlciBwcm9jZXNzaW5nXG4iCisiIChjdXJyZW50IHN0YXR1cyBgJS4yNTBzJyB3aXRoIG5vIHBlbmRpbmcgdHJpZ2dlcnMpIgorbXNnc3RyICIiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjMzNAorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgd2hpY2ggcHJvdmlkZXMgJXMgaXMgdG8gYmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcGFja2FnZXMuYzozMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIGlzIHRvIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiAgUGFrw6p0YSAlcyBkw6ogd2VyZSByYWtpcmluLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzozNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBWZXJzaW9uIG9mICVzIG9uIHN5c3RlbSBpcyAlcy5cbiIKK21zZ3N0ciAiICBHdWhhcnRveWEgJXMgZGkgcGVyZ2Fsw6ogZGUgJXMgZS5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6Mzc2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgd2hpY2ggcHJvdmlkZXMgJXMgYXdhaXRzIHRyaWdnZXIgcHJvY2Vzc2luZy5cbiIKK21zZ3N0ciAiICBQYWvDqnRhICVzIHlhIGt1ICVzIHTDrm5lIGjDqiBuZWhhdGl5ZSB2ZWF2YWtpcmluLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzozODAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyBhd2FpdHMgdHJpZ2dlciBwcm9jZXNzaW5nLlxuIgorbXNnc3RyICIgIFBha8OqdGEgJXMgZMOqIHdlcmUgcmFraXJpbi5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDEwCisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IGFsc28gY29uZmlndXJpbmcgYCVzJyAocmVxdWlyZWQgYnkgYCVzJylcbiIKK21zZ3N0ciAiZHBrZzogYCVzJyBqw64gdMOqIHZlYXZha2lyaW4gKGAlcycgdsOqIGRpeHdhemUpXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQxOAorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgd2hpY2ggcHJvdmlkZXMgJXMgaXMgbm90IGNvbmZpZ3VyZWQgeWV0LlxuIgorbXNnc3RyICIgIFBha8OqdGEgJXMgeWEga3UgJXMgdMOubmUgaMOqIG5laGF0aXllIHZlYXZha2lyaW4uXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQyMQorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgaXMgbm90IGNvbmZpZ3VyZWQgeWV0LlxuIgorbXNnc3RyICIgIFBha8OqdGEgJXMgaMOqIG5laGF0aXllIHZlYXZha2lyaW4uXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQzMgorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgd2hpY2ggcHJvdmlkZXMgJXMgaXMgbm90IGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiICBQYWvDqnRhICVzIHlhIGt1ICVzIHTDrm5lIGjDqiBuZSBzYXpraXLDriB5ZS5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDM1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIgIFBha8OqdGEgJXMgbmUgc2F6a2lyw64geWUuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQ3MgorIywgYy1mb3JtYXQKK21zZ2lkICIgJXMgKCVzKSBicmVha3MgJXMgYW5kIGlzICVzLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQ3OAorIywgYy1mb3JtYXQKK21zZ2lkICIgICVzICglcykgcHJvdmlkZXMgJXMuXG4iCittc2dzdHIgIiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDgyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIgIFZlcnNpb24gb2YgJXMgdG8gYmUgY29uZmlndXJlZCBpcyAlcy5cbiIKK21zZ3N0ciAiICBHdWhhcnRveWEgJXMgZGkgcGVyZ2Fsw6ogZGUgJXMgZS5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NTk2Cittc2dpZCAiIGRlcGVuZHMgb24gIgorbXNnc3RyICJqw6ogZ2lyZWRhecOuIHllIgorCisjOiBzcmMvcGFja2FnZXMuYzo2MDIKK21zZ2lkICI7IGhvd2V2ZXI6XG4iCittc2dzdHIgIjsgbMOqIGJlbMOqOlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjcxCisjLCBjLWZvcm1hdAorbXNnaWQgIi4uLi8lcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjkxCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGVuc3VyaW5nIGAlLjI1MHMnIGRvZXNuJ3QgZXhpc3QiCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5OQorbXNnaWQgInNwbGl0IHBhY2thZ2UgcmVhc3NlbWJseSIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEwOAorbXNnaWQgInJlYXNzZW1ibGVkIHBhY2thZ2UgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEzMworIywgYy1mb3JtYXQKK21zZ2lkICJBdXRoZW50aWNhdGluZyAlcyAuLi5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEzOQorbXNnaWQgInBhY2thZ2Ugc2lnbmF0dXJlIHZlcmlmaWNhdGlvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE0NgorIywgYy1mb3JtYXQKK21zZ2lkICJWZXJpZmljYXRpb24gb24gcGFja2FnZSAlcyBmYWlsZWQhIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTQ4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJWZXJpZmljYXRpb24gb24gcGFja2FnZSAlcyBmYWlsZWQsXG4iCisiYnV0IGluc3RhbGxpbmcgYW55d2F5IGFzIHlvdSByZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFzc2VkXG4iCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxNjUgZHBrZy1kZWIvaW5mby5jOjgxCisjLCBmdXp6eQorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdGVtcG9yYXJ5IGRpcmVjdG9yeSIKK21zZ3N0ciAiYWZpcmFuZGluYSBwZWxkYW5rw6ogYmlzZXJuZWtldCIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlcyBoYXMgdG9vIG1hbnkgQ29uZmxpY3RzL1JlcGxhY2VzIHBhaXJzIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MjQzCisjLCBjLWZvcm1hdAorbXNnaWQgIm9sZCB2ZXJzaW9uIG9mIHBhY2thZ2UgaGFzIG92ZXJseS1sb25nIGluZm8gZmlsZSBuYW1lIHN0YXJ0aW5nIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MjgxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgb2Jzb2xldGUgaW5mbyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6Mjg2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIChzdXBwb3NlZCkgbmV3IGluZm8gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjI5NgorbXNnaWQgInVuYWJsZSB0byBvcGVuIHRlbXAgY29udHJvbCBkaXJlY3RvcnkiCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMDcKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBjb250YWlucyBvdmVybHktbG9uZyBjb250cm9sIGluZm8gZmlsZSBuYW1lIChzdGFydGluZyBgJS41MHMnKSIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMxNAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGNvbnRyb2wgaW5mbyBjb250YWluZWQgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzE2CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgY29udHJvbCBpbmZvIHJtZGlyIG9mIGAlLjI1MHMnIGRpZG4ndCBzYXkgbm90IGEgZGlyIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzI2CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgJXMgY29udGFpbmVkIGxpc3QgYXMgaW5mbyBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzMzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyBpbmZvIGZpbGUgYCUuMjUwcycgYXMgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozNDkgc3JjL3JlbW92ZS5jOjE5OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGVsZXRlIGNvbnRyb2wgaW5mbyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDExCittc2dpZCAiY2Fubm90IGFjY2VzcyBhcmNoaXZlIgorbXNnc3RyICJhcsWfw652IG5hecOqIGdpaMOuxZ90aW4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDMzCittc2dpZCAicGFja2FnZSBjb250cm9sIGluZm9ybWF0aW9uIGV4dHJhY3Rpb24iCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo0NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVjb3JkZWQgaW5mbyBhYm91dCAlcyBmcm9tICVzLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDY4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgYXJjaGl0ZWN0dXJlICglcykgZG9lcyBub3QgbWF0Y2ggc3lzdGVtICglcykiCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1MjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IHJlZ2FyZGluZyAlcyBjb250YWluaW5nICVzLCBwcmUtZGVwZW5kZW5jeSBwcm9ibGVtOlxuIgorIiVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTI2CisjLCBjLWZvcm1hdAorbXNnaWQgInByZS1kZXBlbmRlbmN5IHByb2JsZW0gLSBub3QgaW5zdGFsbGluZyAlLjI1MHMiCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1MjcKKyMsIGZ1enp5Cittc2dpZCAiaWdub3JpbmcgcHJlLWRlcGVuZGVuY3kgcHJvYmxlbSEiCittc2dzdHIgIiIKKyJkcGtnOiBwaXJzZ2lyw6prw6puIGJpbmRlc3RpecOqIHJha2lyaW5hICVzIGFzdGVuZyBkaWtpbjpcbiIKKyIlcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHJlcGFyaW5nIHRvIHJlcGxhY2UgJXMgJXMgKHVzaW5nICVzKSAuLi5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjU0OQorIywgYy1mb3JtYXQKK21zZ2lkICJVbnBhY2tpbmcgJXMgKGZyb20gJXMpIC4uLlxuIgorbXNnc3RyICIlcyB0w6ogZGVyeGlzdGluIChqaSAlcykgLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTgwCisjLCBjLWZvcm1hdAorbXNnaWQgIm5hbWUgb2YgY29uZmZpbGUgKHN0YXJ0aW5nIGAlLjI1MHMnKSBpcyB0b28gbG9uZyAoPiVkIGNoYXJhY3RlcnMpIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjMzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDcxCisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWQgZXJyb3IgaW4gJS4yNTBzIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjM1CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgJS4yNTBzIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjM3CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHRyeWluZyB0byBvcGVuICUuMjUwcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjY3OAorIywgYy1mb3JtYXQKK21zZ2lkICJEZS1jb25maWd1cmluZyAlcywgdG8gYWxsb3cgcmVtb3ZhbCBvZiAlcyAuLi5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjY4MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiRGUtY29uZmlndXJpbmcgJXMgLi4uXG4iCittc2dzdHIgIiVzIHTDqiByYWtpcmluIC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjc1NQorIywgYy1mb3JtYXQKK21zZ2lkICJVbnBhY2tpbmcgcmVwbGFjZW1lbnQgJS4yNTBzIC4uLlxuIgorbXNnc3RyICJZw6pkZWthICUuMjUwcyB0w6ogZGVyeGlzdGluIC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjg0MAorbXNnaWQgInBhY2thZ2UgZmlsZXN5c3RlbSBhcmNoaXZlIGV4dHJhY3Rpb24iCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NTQKK21zZ2lkICJlcnJvciByZWFkaW5nIGRwa2ctZGViIHRhciBvdXRwdXQiCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NTYKK21zZ2lkICJjb3JydXB0ZWQgZmlsZXN5c3RlbSB0YXJmaWxlIC0gY29ycnVwdGVkIHBhY2thZ2UgYXJjaGl2ZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjg1OQorbXNnaWQgImRwa2ctZGViOiB6YXAgcG9zc2libGUgdHJhaWxpbmcgemVyb3MiCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5MTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHN0YXQgb2xkIGZpbGUgJyUuMjUwcycgc28gbm90IGRlbGV0aW5nIGl0OiAlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjkyNQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSBvbGQgZGlyZWN0b3J5ICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiYWZpcmFuZGluYSBwZWxkYW5rw6ogYmlzZXJuZWtldCIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAib2xkIGNvbmZmaWxlICclLjI1MHMnIHdhcyBhbiBlbXB0eSBkaXJlY3RvcnkgKGFuZCBoYXMgbm93IGJlZW4gZGVsZXRlZCkiCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgb3RoZXIgbmV3IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm9sZCBmaWxlICclLjI1MHMnIGlzIHRoZSBzYW1lIGFzIHNldmVyYWwgbmV3IGZpbGVzISAoYm90aCAnJS4yNTBzJyBhbmQgIgorIiclLjI1MHMnKSIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEwMjUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWN1cmVseSByZW1vdmUgb2xkIGZpbGUgJyUuMjUwcyc6ICVzIgorbXNnc3RyICJuaWthcsOuIGAlLjI1MHMnIHdla8OuIGAlLjI1MHMnIHNheiBiaWtlIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEyMDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiKE5vdGluZyBkaXNhcHBlYXJhbmNlIG9mICVzLCB3aGljaCBoYXMgYmVlbiBjb21wbGV0ZWx5IHJlcGxhY2VkLilcbiIKK21zZ3N0ciAiIgorCisjLiBUUkFOU0xBVE9SUzogVGhpcyBpcyB0aGUgaGVhZGVyIHRoYXQgYXBwZWFycyBvbiAnZHBrZy1xdWVyeSAtbCcuIFRoZQorIy4gKiBzdHJpbmcgc2hvdWxkIHJlbWFpbiB1bmRlciA4MCBjaGFyYWN0ZXJzLiBUaGUgdXBwZXJjYXNlIGxldHRlcnMgaW4KKyMuICogdGhlIHN0YXRlIHZhbHVlcyBkZW5vdGUgdGhlIGFiYnJldmlhdGVkIGxldHRlciB0aGF0IHdpbGwgYXBwZWFyIG9uCisjLiAqIHRoZSBmaXJzdCB0aHJlZSBjb2x1bW5zLCB3aGljaCBzaG91bGQgaWRlYWxseSBtYXRjaCB0aGUgRW5nbGlzaCBvbmUKKyMuICogKGUuZy4gUmVtb3ZlIOKGkiBzdXBSaW1laXgpLCBzZWUgZHBrZy1xdWVyeSgxKSBmb3IgZnVydGhlciBkZXRhaWxzLiBUaGUKKyMuICogdHJhbnNsYXRlZCBtZXNzYWdlIGNhbiB1c2UgYWRkaXRpb25hbCBsaW5lcyBpZiBuZWVkZWQuCisjOiBzcmMvcXVlcnljbWQuYzoxNDkKK21zZ2lkICIiCisiRGVzaXJlZD1Vbmtub3duL0luc3RhbGwvUmVtb3ZlL1B1cmdlL0hvbGRcbiIKKyJ8IFN0YXR1cz1Ob3QvSW5zdC9Db25mLWZpbGVzL1VucGFja2VkL2hhbEYtY29uZi9IYWxmLWluc3QvdHJpZy1hV2FpdC9UcmlnLSIKKyJwZW5kXG4iCisifC8gRXJyPz0obm9uZSkvUmVpbnN0LXJlcXVpcmVkIChTdGF0dXMsRXJyOiB1cHBlcmNhc2U9YmFkKVxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjE1MworbXNnaWQgIk5hbWUiCittc2dzdHIgIk5hdiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MTUzCittc2dpZCAiVmVyc2lvbiIKK21zZ3N0ciAiVmVyc2l5b24iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjE1NAorbXNnaWQgIkRlc2NyaXB0aW9uIgorbXNnc3RyICJSYXZlIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNDYgc3JjL3F1ZXJ5Y21kLmM6NTExIHNyYy9zZWxlY3QuYzo3NQorIywgYy1mb3JtYXQKK21zZ2lkICJObyBwYWNrYWdlcyBmb3VuZCBtYXRjaGluZyAlcy5cbiIKK21zZ3N0ciAiUGFrw6p0w6puIGt1IGJpICVzIGxpIGhldiB0w6ogbmVoYXRpbiBkw650aW4uXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI3MworIywgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnNpb24gYnkgJXMgZnJvbTogJXNcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJzaW9uIGJ5ICVzIHRvOiAlc1xuIgorbXNnc3RyICIiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI3OAorIywgYy1mb3JtYXQKK21zZ2lkICJsb2NhbCBkaXZlcnNpb24gZnJvbTogJXNcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9jYWwgZGl2ZXJzaW9uIHRvOiAlc1xuIgorbXNnc3RyICIiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjMwOQorbXNnaWQgIi0tc2VhcmNoIG5lZWRzIGF0IGxlYXN0IG9uZSBmaWxlIG5hbWUgcGF0dGVybiBhcmd1bWVudCIKK21zZ3N0ciAiIgorCisjOiBzcmMvcXVlcnljbWQuYzozNTAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIk5vIHBhY2thZ2VzIGZvdW5kIG1hdGNoaW5nICVzLlxuIgorbXNnaWQgIiVzOiBubyBwYXRoIGZvdW5kIG1hdGNoaW5nIHBhdHRlcm4gJXMuXG4iCittc2dzdHIgIlBha8OqdMOqbiBrdSBiaSAlcyBsaSBoZXYgdMOqIG5laGF0aW4gZMOudGluLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzozOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSBgJXMnIGlzIG5vdCBpbnN0YWxsZWQgYW5kIG5vIGluZm8gaXMgYXZhaWxhYmxlLlxuIgorbXNnc3RyICJQYWvDqnRhIGAlcycgbmUgc2F6a2lyw64geWUgw7sgYWdhaMOuIHR1bmUuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQwMQorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlIGAlcycgaXMgbm90IGF2YWlsYWJsZS5cbiIKK21zZ3N0ciAiUGFrw6p0YSBgJXMnIG5lIGFtYWRlIHllLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MTAgc3JjL3F1ZXJ5Y21kLmM6NTg1CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgYCVzJyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICJQYWvDqnRhIGAlcycgbmUgc2F6a2lyw64geWUuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQxOAorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlIGAlcycgZG9lcyBub3QgY29udGFpbiBhbnkgZmlsZXMgKCEpXG4iCittc2dzdHIgIiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDI1CisjLCBjLWZvcm1hdAorbXNnaWQgImxvY2FsbHkgZGl2ZXJ0ZWQgdG86ICVzXG4iCittc2dzdHIgIiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDI4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgZGl2ZXJ0cyBvdGhlcnMgdG86ICVzXG4iCittc2dzdHIgIiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDMxCisjLCBjLWZvcm1hdAorbXNnaWQgImRpdmVydGVkIGJ5ICVzIHRvOiAlc1xuIgorbXNnc3RyICIiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQ1MgorbXNnaWQgIiIKKyJVc2UgZHBrZyAtLWluZm8gKD0gZHBrZy1kZWIgLS1pbmZvKSB0byBleGFtaW5lIGFyY2hpdmUgZmlsZXMsXG4iCisiYW5kIGRwa2cgLS1jb250ZW50cyAoPSBkcGtnLWRlYiAtLWNvbnRlbnRzKSB0byBsaXN0IHRoZWlyIGNvbnRlbnRzLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjU3MAorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIHRha2VzIGF0IG1vc3QgdHdvIGFyZ3VtZW50cyIKK21zZ3N0ciAiIgorCisjOiBzcmMvcXVlcnljbWQuYzo1NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29udHJvbCBmaWxlIGNvbnRhaW5zICVjIgorbXNnc3RyICIiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjYwMAorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gJXMgcGFja2FnZSBtYW5hZ2VtZW50IHByb2dyYW0gcXVlcnkgdG9vbCB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjYxOQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtc3wtLXN0YXR1cyA8cGFja2FnZT4gLi4uICAgICAgICBEaXNwbGF5IHBhY2thZ2Ugc3RhdHVzIGRldGFpbHMuXG4iCisiICAtcHwtLXByaW50LWF2YWlsIDxwYWNrYWdlPiAuLi4gICBEaXNwbGF5IGF2YWlsYWJsZSB2ZXJzaW9uIGRldGFpbHMuXG4iCisiICAtTHwtLWxpc3RmaWxlcyA8cGFja2FnZT4gLi4uICAgICBMaXN0IGZpbGVzIGBvd25lZCcgYnkgcGFja2FnZShzKS5cbiIKKyIgIC1sfC0tbGlzdCBbPHBhdHRlcm4+IC4uLl0gICAgICAgIExpc3QgcGFja2FnZXMgY29uY2lzZWx5LlxuIgorIiAgLVd8LS1zaG93IFs8cGF0dGVybj4gLi4uXSAgICAgICAgU2hvdyBpbmZvcm1hdGlvbiBvbiBwYWNrYWdlKHMpLlxuIgorIiAgLVN8LS1zZWFyY2ggPHBhdHRlcm4+IC4uLiAgICAgICAgRmluZCBwYWNrYWdlKHMpIG93bmluZyBmaWxlKHMpLlxuIgorIiAgLWN8LS1jb250cm9sLXBhdGggPHBhY2thZ2U+IFs8ZmlsZT5dXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQcmludCBwYXRoIGZvciBwYWNrYWdlIGNvbnRyb2wgZmlsZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcXVlcnljbWQuYzo2MzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgICAgICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyIgIC1mfC0tc2hvd2Zvcm1hdD08Zm9ybWF0PiAgICAgICAgIFVzZSBhbHRlcm5hdGl2ZSBmb3JtYXQgZm9yIC0tc2hvdy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcXVlcnljbWQuYzo2NDIgZHBrZy1kZWIvbWFpbi5jOjExMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiRm9ybWF0IHN5bnRheDpcbiIKKyIgIEEgZm9ybWF0IGlzIGEgc3RyaW5nIHRoYXQgd2lsbCBiZSBvdXRwdXQgZm9yIGVhY2ggcGFja2FnZS4gVGhlIGZvcm1hdFxuIgorIiAgY2FuIGluY2x1ZGUgdGhlIHN0YW5kYXJkIGVzY2FwZSBzZXF1ZW5jZXMgXFxuIChuZXdsaW5lKSwgXFxyIChjYXJyaWFnZVxuIgorIiAgcmV0dXJuKSBvciBcXFxcIChwbGFpbiBiYWNrc2xhc2gpLiBQYWNrYWdlIGluZm9ybWF0aW9uIGNhbiBiZSBpbmNsdWRlZFxuIgorIiAgYnkgaW5zZXJ0aW5nIHZhcmlhYmxlIHJlZmVyZW5jZXMgdG8gcGFja2FnZSBmaWVsZHMgdXNpbmcgdGhlICR7dmFyWzsiCisid2lkdGhdfVxuIgorIiAgc3ludGF4LiBGaWVsZHMgd2lsbCBiZSByaWdodC1hbGlnbmVkIHVubGVzcyB0aGUgd2lkdGggaXMgbmVnYXRpdmUgaW4gIgorIndoaWNoXG4iCisiICBjYXNlIGxlZnQgYWxpZ25tZW50IHdpbGwgYmUgdXNlZC5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcXVlcnljbWQuYzo2NTYKK21zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IHF1ZXJ5aW5nIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcmVtb3ZlLmM6ODgKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgcmVxdWVzdCB0byByZW1vdmUgJS4yNTBzIHdoaWNoIGlzbid0IGluc3RhbGxlZC4iCittc2dzdHIgIiIKKworIzogc3JjL3JlbW92ZS5jOjk1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpZ25vcmluZyByZXF1ZXN0IHRvIHJlbW92ZSAlLjI1MHMsIG9ubHkgdGhlIGNvbmZpZ1xuIgorIiBmaWxlcyBvZiB3aGljaCBhcmUgb24gdGhlIHN5c3RlbS4gVXNlIC0tcHVyZ2UgdG8gcmVtb3ZlIHRoZW0gdG9vLiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcmVtb3ZlLmM6MTAzCittc2dpZCAiVGhpcyBpcyBhbiBlc3NlbnRpYWwgcGFja2FnZSAtIGl0IHNob3VsZCBub3QgYmUgcmVtb3ZlZC4iCittc2dzdHIgIkV2IHBha8OqdGVrZSBiaW5nZWjDrm5lIC0gYmlsYSBuZXnDqiByYWtpcmluLiIKKworIzogc3JjL3JlbW92ZS5jOjEyOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogZGVwZW5kZW5jeSBwcm9ibGVtcyBwcmV2ZW50IHJlbW92YWwgb2YgJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiBwaXJzZ2lyw6prw6puIGJpbmRlc3RpecOqIHJha2lyaW5hICVzIGFzdGVuZyBkaWtpbjpcbiIKKyIlcyIKKworIzogc3JjL3JlbW92ZS5jOjEzMAorbXNnaWQgImRlcGVuZGVuY3kgcHJvYmxlbXMgLSBub3QgcmVtb3ZpbmciCittc2dzdHIgInBpcnNnaXLDqmvDqm4gYmluZGVzdGl5w6ogLSBuYXnDqiByYWtpcmluIgorCisjOiBzcmMvcmVtb3ZlLmM6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiAlczogZGVwZW5kZW5jeSBwcm9ibGVtcywgYnV0IHJlbW92aW5nIGFueXdheSBhcyB5b3UgcmVxdWVzdGVkOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogJXM6IHBpcnNnaXLDqmvDqm4gZ2lyw6pkYXnDrmLDu27DqiwgbMOqIHNlciBkYXh3YXphIHRlIHTDqiByYWtpcmluOlxuIgorIiVzIgorCisjOiBzcmMvcmVtb3ZlLmM6MTQyCittc2dpZCAiIgorIlBhY2thZ2UgaXMgaW4gYSB2ZXJ5IGJhZCBpbmNvbnNpc3RlbnQgc3RhdGUgLSB5b3Ugc2hvdWxkXG4iCisiIHJlaW5zdGFsbCBpdCBiZWZvcmUgYXR0ZW1wdGluZyBhIHJlbW92YWwuIgorbXNnc3RyICIiCisKKyM6IHNyYy9yZW1vdmUuYzoxNDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiV291bGQgcmVtb3ZlIG9yIHB1cmdlICVzIC4uLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9yZW1vdmUuYzoxNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVtb3ZpbmcgJXMgLi4uXG4iCittc2dzdHIgIiVzIHTDqiByYWtpcmluIC4uLlxuIgorCisjOiBzcmMvcmVtb3ZlLmM6Mjc1IHNyYy9yZW1vdmUuYzozNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIndoaWxlIHJlbW92aW5nICUuMjUwcywgdW5hYmxlIHRvIHJlbW92ZSBkaXJlY3RvcnkgJyUuMjUwcyc6ICVzIC0gZGlyZWN0b3J5ICIKKyJtYXkgYmUgYSBtb3VudCBwb2ludD8iCittc2dzdHIgIiIKKworIzogc3JjL3JlbW92ZS5jOjI4OQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNlY3VyZWx5IHJlbW92ZSAnJS4yNTBzJyIKK21zZ3N0ciAibmlrYXLDriBgJS4yNTBzJyB3ZWvDriBgJS4yNTBzJyBzYXogYmlrZSIKKworIzogc3JjL3JlbW92ZS5jOjM2MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAid2hpbGUgcmVtb3ZpbmcgJS4yNTBzLCBkaXJlY3RvcnkgJyUuMjUwcycgbm90IGVtcHR5IHNvIG5vdCByZW1vdmVkLiIKK21zZ3N0ciAiIgorImRwa2cgLSBoacWfeWFyw646IGRlbWEgJS4yNTBzIGhhdCByYWtpcmluLCBwZWxkYW5rYSBgJS4yNTBzJyBuZSB2YWxhIGLDuyDDuyBqaSAiCisiYmVyIHfDqiBuZWhhdCByYWtpcmluLlxuIgorCisjOiBzcmMvcmVtb3ZlLmM6MzgzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW5ub3QgcmVtb3ZlIGAlLjI1MHMnIgorbXNnaWQgImNhbm5vdCByZW1vdmUgJyUuMjUwcyciCittc2dzdHIgImAlLjI1MHMnIG5hecOqIHJha2lyaW4iCisKKyM6IHNyYy9yZW1vdmUuYzo0MDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHVyZ2luZyBjb25maWd1cmF0aW9uIGZpbGVzIGZvciAlcyAuLi5cbiIKK21zZ3N0ciAiUGVsw6puIHZlYXZha2lyaW5hICVzIGJpIHRldmFow64gdMOqbiByYWtpcmluIC4uLlxuIgorCisjOiBzcmMvcmVtb3ZlLmM6NDU5CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZW1vdmUgb2xkIGNvbmZpZyBmaWxlIGAlLjI1MHMnICg9IGAlLjI1MHMnKSIKK21zZ3N0ciAiIgorCisjOiBzcmMvcmVtb3ZlLmM6NDc0CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZWFkIGNvbmZpZyBmaWxlIGRpciBgJS4yNTBzJyAoZnJvbSBgJS4yNTBzJykiCittc2dzdHIgIiIKKworIzogc3JjL3JlbW92ZS5jOjUxMAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVtb3ZlIG9sZCBiYWNrdXAgY29uZmlnIGZpbGUgYCUuMjUwcycgKG9mIGAlLjI1MHMnKSIKK21zZ3N0ciAiIgorCisjOiBzcmMvcmVtb3ZlLmM6NTY4Cittc2dpZCAiY2Fubm90IHJlbW92ZSBvbGQgZmlsZXMgbGlzdCIKK21zZ3N0ciAiIgorCisjOiBzcmMvcmVtb3ZlLmM6NTc0Cittc2dpZCAiY2FuJ3QgcmVtb3ZlIG9sZCBwb3N0cm0gc2NyaXB0IgorbXNnc3RyICIiCisKKyM6IHNyYy9zZWxlY3QuYzoxMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgaW4gcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQiCittc2dzdHIgIiIKKworIzogc3JjL3NlbGVjdC5jOjExNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBsaW5lIGluIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICIiCisKKyM6IHNyYy9zZWxlY3QuYzoxMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgYWZ0ZXIgcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQiCittc2dzdHIgIiIKKworIzogc3JjL3NlbGVjdC5jOjEyMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBsaW5lIGFmdGVyIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICIiCisKKyM6IHNyYy9zZWxlY3QuYzoxMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBkYXRhIGFmdGVyIHBhY2thZ2UgYW5kIHNlbGVjdGlvbiBhdCBsaW5lICVkIgorbXNnc3RyICIiCisKKyM6IHNyYy9zZWxlY3QuYzoxMzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWxsZWdhbCBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZDogJS4yNTBzIgorbXNnc3RyICIiCisKKyM6IHNyYy9zZWxlY3QuYzoxNDMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biB3YW50ZWQgc3RhdHVzIGF0IGxpbmUgJWQ6ICUuMjUwcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvc2VsZWN0LmM6MTQ5Cittc2dpZCAicmVhZCBlcnJvciBvbiBzdGFuZGFyZCBpbnB1dCIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGNtZC5jOjUyCittc2dpZCAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBvdmVycmlkaW5nIGZpbGUgc3RhdCBpbmZvcm1hdGlvbi4iCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRjbWQuYzo2MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29weXJpZ2h0IChDKSAyMDAwLCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDA2LTIwMDkgR3VpbGxlbSBKb3Zlci5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGNtZC5jOjgxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC0tYWRkIDxvd25lcj4gPGdyb3VwPiA8bW9kZT4gPGZpbGU+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkIGEgbmV3IGVudHJ5IGludG8gdGhlIGRhdGFiYXNlLlxuIgorIiAgLS1yZW1vdmUgPGZpbGU+ICAgICAgICAgIHJlbW92ZSBmaWxlIGZyb20gdGhlIGRhdGFiYXNlLlxuIgorIiAgLS1saXN0IFs8Z2xvYi1wYXR0ZXJuPl0gIGxpc3QgY3VycmVudCBvdmVycmlkZXMgaW4gdGhlIGRhdGFiYXNlLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0Y21kLmM6ODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgc2V0IHRoZSBkaXJlY3Rvcnkgd2l0aCB0aGUgc3RhdG92ZXJyaWRlIGZpbGUuXG4iCisiICAtLXVwZGF0ZSAgICAgICAgICAgICAgICAgaW1tZWRpYXRlbHkgdXBkYXRlIGZpbGUgcGVybWlzc2lvbnMuXG4iCisiICAtLWZvcmNlICAgICAgICAgICAgICAgICAgZm9yY2UgYW4gYWN0aW9uIGV2ZW4gaWYgYSBzYW5pdHkgY2hlY2sgZmFpbHMuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgcXVpZXQgb3BlcmF0aW9uLCBtaW5pbWFsIG91dHB1dC5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRjbWQuYzoxMTYKK21zZ2lkICJzdHJpcHBpbmcgdHJhaWxpbmcgLyIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGNtZC5jOjIwNworbXNnaWQgImNhbm5vdCBvcGVuIG5ldyBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGNtZC5jOjIyMgorbXNnaWQgImVycm9yIHJlbW92aW5nIHN0YXRvdmVycmlkZS1vbGQiCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRjbWQuYzoyMjQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBuZXcgc3RhdG92ZXJyaWRlLW9sZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGNtZC5jOjIyNgorbXNnaWQgImVycm9yIGluc3RhbGxpbmcgbmV3IHN0YXRvdmVycmlkZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGNtZC5jOjI0NgorbXNnaWQgIi0tYWRkIG5lZWRzIGZvdXIgYXJndW1lbnRzIgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjU2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJBbiBvdmVycmlkZSBmb3IgJyVzJyBhbHJlYWR5IGV4aXN0cywgYnV0IC0tZm9yY2Ugc3BlY2lmaWVkIHNvIHdpbGwgYmUgIgorImlnbm9yZWQuIgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjYwCisjLCBjLWZvcm1hdAorbXNnaWQgIkFuIG92ZXJyaWRlIGZvciAnJXMnIGFscmVhZHkgZXhpc3RzLCBhYm9ydGluZy4iCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRjbWQuYzoyNzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS11cGRhdGUgZ2l2ZW4gYnV0ICVzIGRvZXMgbm90IGV4aXN0IgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0Y21kLmM6Mjk2Cittc2dpZCAiTm8gb3ZlcnJpZGUgcHJlc2VudC4iCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRjbWQuYzozMDQKK21zZ2lkICItLXVwZGF0ZSBpcyB1c2VsZXNzIGZvciAtLXJlbW92ZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGRiLmM6NTkKK21zZ2lkICJzeW50YXggZXJyb3I6IGludmFsaWQgdWlkIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0ZGIuYzo2NAorIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3I6IHVua25vd24gdXNlciAnJXMnIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0ZGIuYzo4MworbXNnaWQgInN5bnRheCBlcnJvcjogaW52YWxpZCBnaWQgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRkYi5jOjg4CisjLCBjLWZvcm1hdAorbXNnaWQgInN5bnRheCBlcnJvcjogdW5rbm93biBncm91cCAnJXMnIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0ZGIuYzoxMDQKK21zZ2lkICJzeW50YXggZXJyb3I6IGludmFsaWQgbW9kZSBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGRiLmM6MTI3Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRkYi5jOjEzNAorbXNnaWQgImZhaWxlZCB0byBmc3RhdCBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGRiLmM6MTM3Cittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IHByZXZpb3VzIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0ZGIuYzoxNjIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInJlYWRpbmcgc3RhdG92ZXJyaWRlIGZpbGUgJyUuMjUwcyciCittc2dzdHIgIm5pa2Fyw64gYCUuMjUwcycgd2Vrw64gYCUuMjUwcycgc2F6IGJpa2UiCisKKyM6IHNyYy9zdGF0ZGIuYzoxNjkKK21zZ2lkICJzdGF0b3ZlcnJpZGUgZmlsZSBpcyBtaXNzaW5nIGZpbmFsIG5ld2xpbmUiCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRkYi5jOjE3MworbXNnaWQgInN0YXRvdmVycmlkZSBmaWxlIGNvbnRhaW5zIGVtcHR5IGxpbmUiCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRkYi5jOjE3OCBzcmMvc3RhdGRiLmM6MTkwIHNyYy9zdGF0ZGIuYzoyMDIKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRkYi5jOjE4NiBzcmMvc3RhdGRiLmM6MTk4IHNyYy9zdGF0ZGIuYzoyMTAKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBsaW5lIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0ZGIuYzoyMTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIm11bHRpcGxlIHN0YXR1c292ZXJyaWRlcyBwcmVzZW50IGZvciBmaWxlICclLjI1MHMnIgorbXNnc3RyICJuaWthcsOuIGAlLjI1MHMnIHdla8OuIGAlLjI1MHMnIHNheiBiaWtlIgorCisjOiBzcmMvdHJpZ2NtZC5jOjQ2Cittc2dpZCAiVHlwZSBkcGtnLXRyaWdnZXIgLS1oZWxwIGZvciBoZWxwIGFib3V0IHRoaXMgdXRpbGl0eS4iCittc2dzdHIgIiIKKworIzogc3JjL3RyaWdjbWQuYzo1MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuICVzIHBhY2thZ2UgdHJpZ2dlciB1dGlsaXR5IHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkRlYmlhbiAlcyBndWhhcnRveWEgJXMuXG4iCisKKyM6IHNyYy90cmlnY21kLmM6NjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbnM+IC4uLl0gPHRyaWdnZXItbmFtZT5cbiIKKyIgICAgICAgJXMgWzxvcHRpb25zPiAuLi5dIDxjb21tYW5kPlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy90cmlnY21kLmM6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLS1jaGVjay1zdXBwb3J0ZWQgICAgICAgICAgICAgICAgQ2hlY2sgaWYgdGhlIHJ1bm5pbmcgZHBrZyBzdXBwb3J0cyAiCisidHJpZ2dlcnMuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogc3JjL3RyaWdjbWQuYzo4MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorIiAgLS1ieS1wYWNrYWdlPTxwYWNrYWdlPiAgICAgICAgICAgT3ZlcnJpZGUgdHJpZ2dlciBhd2FpdGVyIChub3JtYWxseSBzZXRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnkgZHBrZykuXG4iCisiICAtLW5vLWF3YWl0ICAgICAgICAgICAgICAgICAgICAgICBObyBwYWNrYWdlIG5lZWRzIHRvIGF3YWl0IHRoZSAiCisicHJvY2Vzc2luZy5cbiIKKyIgIC0tbm8tYWN0ICAgICAgICAgICAgICAgICAgICAgICAgIEp1c3QgdGVzdCAtIGRvbid0IGFjdHVhbGx5IGNoYW5nZSAiCisiYW55dGhpbmcuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogc3JjL3RyaWdjbWQuYzoxNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IHRyaWdnZXJzIGRhdGEgZGlyZWN0b3J5IG5vdCB5ZXQgY3JlYXRlZFxuIgorbXNnc3RyICIiCisKKyM6IHNyYy90cmlnY21kLmM6MTU2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB0cmlnZ2VyIHJlY29yZHMgbm90IHlldCBpbiBleGlzdGVuY2VcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIwNQorbXNnaWQgInRha2VzIG9uZSBhcmd1bWVudCwgdGhlIHRyaWdnZXIgbmFtZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIxMAorbXNnaWQgIm11c3QgYmUgY2FsbGVkIGZyb20gYSBtYWludGFpbmVyIHNjcmlwdCAob3Igd2l0aCBhIC0tYnktcGFja2FnZSBvcHRpb24pIgorbXNnc3RyICIiCisKKyM6IHNyYy90cmlnY21kLmM6MjE1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJpbGxlZ2FsIGF3YWl0ZWQgcGFja2FnZSBuYW1lICclLjI1MHMnOiAlLjI1MHMiCittc2dzdHIgIm5hdsOqIHBha8OqdMOqIHnDqiBuZWRlcmJhc2RhciAoJS4yNTBzKSIKKworIzogc3JjL3RyaWdjbWQuYzoyMjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgdHJpZ2dlciBuYW1lIGAlLjI1MHMnOiAlLjI1MHMiCittc2dzdHIgIm5hdsOqIHBha8OqdMOqIHnDqiBuZWRlcmJhc2RhciAoJS4yNTBzKSIKKworIzogc3JjL3RyaWdwcm9jLmM6MjUwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogY3ljbGUgZm91bmQgd2hpbGUgcHJvY2Vzc2luZyB0cmlnZ2VyczpcbiIKKyIgY2hhaW4gb2YgcGFja2FnZXMgd2hvc2UgdHJpZ2dlcnMgYXJlIG9yIG1heSBiZSByZXNwb25zaWJsZTpcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvdHJpZ3Byb2MuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiBwYWNrYWdlcycgcGVuZGluZyB0cmlnZ2VycyB3aGljaCBhcmUgb3IgbWF5IGJlIHVucmVzb2x2YWJsZTpcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvdHJpZ3Byb2MuYzoyODEKK21zZ2lkICJ0cmlnZ2VycyBsb29waW5nLCBhYmFuZG9uZWQiCittc2dzdHIgIiIKKworIzogc3JjL3RyaWdwcm9jLmM6MzEyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJQcm9jZXNzaW5nIHRyaWdnZXJzIGZvciAlcyAuLi5cbiIKK21zZ3N0ciAiUGVsw6puIHZlYXZha2lyaW5hICVzIGJpIHRldmFow64gdMOqbiByYWtpcmluIC4uLlxuIgorCisjOiBzcmMvdXBkYXRlLmM6NTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBleGFjdGx5IG9uZSBQYWNrYWdlcy1maWxlIGFyZ3VtZW50IgorbXNnc3RyICIiCisKKyM6IHNyYy91cGRhdGUuYzo2MgorbXNnaWQgInVuYWJsZSB0byBhY2Nlc3MgZHBrZyBzdGF0dXMgYXJlYSBmb3IgYnVsayBhdmFpbGFibGUgdXBkYXRlIgorbXNnc3RyICIiCisKKyM6IHNyYy91cGRhdGUuYzo2NAorbXNnaWQgImJ1bGsgYXZhaWxhYmxlIHVwZGF0ZSByZXF1aXJlcyB3cml0ZSBhY2Nlc3MgdG8gZHBrZyBzdGF0dXMgYXJlYSIKK21zZ3N0ciAiIgorCisjOiBzcmMvdXBkYXRlLmM6NzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVwbGFjaW5nIGF2YWlsYWJsZSBwYWNrYWdlcyBpbmZvLCB1c2luZyAlcy5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvdXBkYXRlLmM6NzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiVXBkYXRpbmcgYXZhaWxhYmxlIHBhY2thZ2VzIGluZm8sIHVzaW5nICVzLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy91cGRhdGUuYzoxMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW5mb3JtYXRpb24gYWJvdXQgJWQgcGFja2FnZSB3YXMgdXBkYXRlZC5cbiIKK21zZ2lkX3BsdXJhbCAiSW5mb3JtYXRpb24gYWJvdXQgJWQgcGFja2FnZXMgd2FzIHVwZGF0ZWQuXG4iCittc2dzdHJbMF0gIiIKK21zZ3N0clsxXSAiIgorCisjOiBzcmMvdXBkYXRlLmM6MTE1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJvYnNvbGV0ZSAnLS0lcycgb3B0aW9uLCB1bmF2YWlsYWJsZSBwYWNrYWdlcyBhcmUgYXV0b21hdGljYWxseSBjbGVhbmVkIHVwLiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIG5hbWUgJyUuNTBzLi4uJyBpcyB0b28gbG9uZyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjEyOQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgZmlsZSBuYW1lICclLjI1MHMnIgorbXNnc3RyICJuaWthcsOuIGAlLjI1MHMnIHdla8OuIGAlLjI1MHMnIHNheiBiaWtlIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjE4OQorIywgZnV6enkKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBjb250cm9sIGRpcmVjdG9yeSIKK21zZ3N0ciAiYWZpcmFuZGluYSBwZWxkYW5rw6ogYmlzZXJuZWtldCIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoxOTEKKyMsIGZ1enp5Cittc2dpZCAiY29udHJvbCBkaXJlY3RvcnkgaXMgbm90IGEgZGlyZWN0b3J5IgorbXNnc3RyICJwZWxkYW5rYSBhZ2FoaXnDqiBuYXnDqiB4d2VuZGluIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjE5MworIywgYy1mb3JtYXQKK21zZ2lkICJjb250cm9sIGRpcmVjdG9yeSBoYXMgYmFkIHBlcm1pc3Npb25zICUwM2xvIChtdXN0IGJlID49MDc1NSBhbmQgPD0wNzc1KSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjIwNAorIywgYy1mb3JtYXQKK21zZ2lkICJtYWludGFpbmVyIHNjcmlwdCBgJS41MHMnIGlzIG5vdCBhIHBsYWluIGZpbGUgb3Igc3ltbGluayIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjIwNworIywgYy1mb3JtYXQKK21zZ2lkICIiCisibWFpbnRhaW5lciBzY3JpcHQgYCUuNTBzJyBoYXMgYmFkIHBlcm1pc3Npb25zICUwM2xvIChtdXN0IGJlID49MDU1NSBhbmQgIgorIjw9MDc3NSkiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAibWFpbnRhaW5lciBzY3JpcHQgYCUuNTBzJyBpcyBub3Qgc3RhdHRhYmxlIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjM3Cittc2dpZCAiZXJyb3Igb3BlbmluZyBjb25mZmlsZXMgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI0NgorbXNnaWQgImVtcHR5IHN0cmluZyBmcm9tIGZnZXRzIHJlYWRpbmcgY29uZmZpbGVzIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjUxCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIG5hbWUgJyUuNTBzLi4uJyBpcyB0b28gbG9uZywgb3IgbWlzc2luZyBmaW5hbCBuZXdsaW5lIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjY0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIGZpbGVuYW1lICclcycgY29udGFpbnMgdHJhaWxpbmcgd2hpdGUgc3BhY2VzIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjY2CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIGAlLjI1MHMnIGRvZXMgbm90IGFwcGVhciBpbiBwYWNrYWdlIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjY4CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIGAlLjI1MHMnIGlzIG5vdCBzdGF0dGFibGUiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgJyVzJyBpcyBub3QgYSBwbGFpbiBmaWxlIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6Mjc0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIG5hbWUgJyVzJyBpcyBkdXBsaWNhdGVkIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6Mjg3Cittc2dpZCAiZXJyb3IgcmVhZGluZyBjb25mZmlsZXMgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjMzOQorbXNnaWQgInBhY2thZ2UgbmFtZSBoYXMgY2hhcmFjdGVycyB0aGF0IGFyZW4ndCBsb3dlcmNhc2UgYWxwaGFudW1zIG9yIGAtKy4nIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MzQxCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgY29udGFpbnMgdXNlci1kZWZpbmVkIFByaW9yaXR5IHZhbHVlICclcyciCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzozNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBjb250YWlucyB1c2VyLWRlZmluZWQgZmllbGQgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjM1OAorIywgYy1mb3JtYXQKK21zZ2lkICJpZ25vcmluZyAlZCB3YXJuaW5nIGFib3V0IHRoZSBjb250cm9sIGZpbGUocylcbiIKK21zZ2lkX3BsdXJhbCAiaWdub3JpbmcgJWQgd2FybmluZ3MgYWJvdXQgdGhlIGNvbnRyb2wgZmlsZShzKVxuIgorbXNnc3RyWzBdICIiCittc2dzdHJbMV0gIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MDMgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MjkKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDM2CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSA8ZGlyZWN0b3J5PiBhcmd1bWVudCIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQwOQorbXNnaWQgIi0tYnVpbGQgdGFrZXMgYXQgbW9zdCB0d28gYXJndW1lbnRzIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDEzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGVjayBmb3IgZXhpc3RlbmNlIG9mIGFyY2hpdmUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzAKK21zZ2lkICJ0YXJnZXQgaXMgZGlyZWN0b3J5IC0gY2Fubm90IHNraXAgY29udHJvbCBmaWxlIGNoZWNrIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDMxCittc2dpZCAibm90IGNoZWNraW5nIGNvbnRlbnRzIG9mIGNvbnRyb2wgYXJlYS4iCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImRwa2ctZGViOiBidWlsZGluZyBhbiB1bmtub3duIHBhY2thZ2UgaW4gJyVzJy5cbiIKK21zZ3N0ciAiZHBrZy1kZWI6IHBha8OqdCBgJXMnIGRpIGAlcycgZGUgdMOqIGF2YWtpcmluLlxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQzOQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnLWRlYjogYnVpbGRpbmcgcGFja2FnZSBgJXMnIGluIGAlcycuXG4iCittc2dzdHIgImRwa2ctZGViOiBwYWvDqnQgYCVzJyBkaSBgJXMnIGRlIHTDqiBhdmFraXJpbi5cbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0NjcgZHBrZy1kZWIvYnVpbGQuYzo1MjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBtYWtlIHRlbXBvcmFyeSBmaWxlICglcykiCittc2dzdHIgIm5pa2Fyw64gYCUuMjUwcycgd2Vrw64gYCUuMjUwcycgc2F6IGJpa2UiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDY3IGRwa2ctZGViL2J1aWxkLmM6NDcwIGRwa2ctZGViL2J1aWxkLmM6NDc3CisjOiBkcGtnLWRlYi9idWlsZC5jOjQ4NSBkcGtnLWRlYi9idWlsZC5jOjQ5NCBkcGtnLWRlYi9idWlsZC5jOjQ5OQorIywgZnV6enkKKyN8IG1zZ2lkICJjb250cm9sIgorbXNnaWQgImNvbnRyb2wgbWVtYmVyIgorbXNnc3RyICJrb250cm9sIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ3MCBkcGtnLWRlYi9idWlsZC5jOjUyNAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHVubGluayB0ZW1wb3JhcnkgZmlsZSAoJXMpLCAlcyIKK21zZ3N0ciAibmlrYXLDriBgJS4yNTBzJyB3ZWvDriBgJS4yNTBzJyBzYXogYmlrZSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0ODUgZHBrZy1kZWIvYnVpbGQuYzo1OTMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdGVtcG9yYXJ5IGZpbGUgKCVzKSIKK21zZ3N0ciAibmlrYXLDriBgJS4yNTBzJyB3ZWvDriBgJS4yNTBzJyBzYXogYmlrZSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0OTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBzdGF0IHRlbXBvcmFyeSBmaWxlICglcykiCittc2dzdHIgIm5pa2Fyw64gYCUuMjUwcycgd2Vrw64gYCUuMjUwcycgc2F6IGJpa2UiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDk4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHdyaXRpbmcgYCVzJyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjUyMSBkcGtnLWRlYi9idWlsZC5jOjUyNCBkcGtnLWRlYi9idWlsZC5jOjU0NgorIzogZHBrZy1kZWIvYnVpbGQuYzo1NzIgZHBrZy1kZWIvYnVpbGQuYzo1ODAgZHBrZy1kZWIvYnVpbGQuYzo1OTMKKyMsIGZ1enp5Cittc2dpZCAiZGF0YSBtZW1iZXIiCittc2dzdHIgImhlam1hcmUgdmVyc2l5b27DqiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo1NzEgZHBrZy1kZWIvYnVpbGQuYzo1ODAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB3cml0ZSBmaWxlbmFtZSB0byB0YXIgcGlwZSAoJXMpIgorbXNnc3RyICJuaWthcsOuIGAlLjI1MHMnIHdla8OuIGAlLjI1MHMnIHNheiBiaWtlIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjU4NAorbXNnaWQgIjxjb21wcmVzcz4gZnJvbSB0YXIgLWNmIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzo2MSBkcGtnLWRlYi9leHRyYWN0LmM6NjMKK21zZ2lkICJzaGVsbCBjb21tYW5kIHRvIG1vdmUgZmlsZXMiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjcwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGZpbGUgaW4gJXMgaW4gJS4yNTVzIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzo3MgorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciByZWFkaW5nICVzIGZyb20gZmlsZSAlLjI1NXMiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjEyNQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCBhcmNoaXZlIGAlLjI1NXMnIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxMjcKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgYXJjaGl2ZSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTMxCisjLCBmdXp6eQorbXNnaWQgImFyY2hpdmUgbWFnaWMgdmVyc2lvbiBudW1iZXIiCittc2dzdHIgImhlam1hcmUgdmVyc2l5b27DqiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE0MworbXNnaWQgImFyY2hpdmUgbWVtYmVyIGhlYWRlciIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTQ4CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBhcmNoaXZlIGhlYWRlciBtYWdpYyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTU1CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgbm90IGEgZGViaWFuIGJpbmFyeSBhcmNoaXZlICh0cnkgZHBrZy1zcGxpdD8pIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNTkKK21zZ2lkICJhcmNoaXZlIGluZm9ybWF0aW9uIGhlYWRlciBtZW1iZXIiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE2MgorbXNnaWQgImFyY2hpdmUgaGFzIG5vIG5ld2xpbmVzIGluIGhlYWRlciIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTY1Cittc2dpZCAiYXJjaGl2ZSBoYXMgbm8gZG90IGluIHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiYXJjaGl2ZSB2ZXJzaW9uICUuMjUwcyBub3QgdW5kZXJzdG9vZCwgZ2V0IG5ld2VyIGRwa2ctZGViIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNzkgZHBrZy1kZWIvZXh0cmFjdC5jOjIwNQorIywgYy1mb3JtYXQKK21zZ2lkICJza2lwcGVkIGFyY2hpdmUgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTk0CisjLCBjLWZvcm1hdAorbXNnaWQgImFyY2hpdmUgJyUuMjUwcycgY29udGFpbnMgbm90IHVuZGVyc3Rvb2QgZGF0YSBtZW1iZXIgJS4qcywgZ2l2aW5nIHVwIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxOTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiYXJjaGl2ZSAnJS4yNTBzJyBjb250YWlucyB0d28gY29udHJvbCBtZW1iZXJzLCBnaXZpbmcgdXAiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIxNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiIG5ldyBkZWJpYW4gcGFja2FnZSwgdmVyc2lvbiAlcy5cbiIKKyIgc2l6ZSAlamQgYnl0ZXM6IGNvbnRyb2wgYXJjaGl2ZT0gJWpkIGJ5dGVzLlxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyMzIKK21zZ2lkICJhcmNoaXZlIGNvbnRyb2wgbWVtYmVyIHNpemUiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIzNQorIywgYy1mb3JtYXQKK21zZ2lkICJhcmNoaXZlIGhhcyBtYWxmb3JtYXR0ZWQgY29udHJvbCBtZW1iZXIgc2l6ZSAnJXMnIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNDIKKyMsIGMtZm9ybWF0Cittc2dpZCAic2tpcHBlZCBhcmNoaXZlIGNvbnRyb2wgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjQ2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIgb2xkIGRlYmlhbiBwYWNrYWdlLCB2ZXJzaW9uICVzLlxuIgorIiBzaXplICVqZCBieXRlczogY29udHJvbCBhcmNoaXZlPSAlamQsIG1haW4gYXJjaGl2ZT0gJWpkLlxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2ctZGViOiBmaWxlIGxvb2tzIGxpa2UgaXQgbWlnaHQgYmUgYW4gYXJjaGl2ZSB3aGljaCBoYXMgYmVlblxuIgorImRwa2ctZGViOiAgICBjb3JydXB0ZWQgYnkgYmVpbmcgZG93bmxvYWRlZCBpbiBBU0NJSSBtb2RlXG4iCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI1OQorIywgYy1mb3JtYXQKK21zZ2lkICJgJS4yNTVzJyBpcyBub3QgYSBkZWJpYW4gZm9ybWF0IGFyY2hpdmUiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI2NgorbXNnaWQgImZhaWxlZCB0byB3cml0ZSB0byBwaXBlIGluIGNvcHkiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI2OAorbXNnaWQgImZhaWxlZCB0byBjbG9zZSBwaXBlIGluIGNvcHkiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI4NAorbXNnaWQgImRhdGEiCittc2dzdHIgImRhbmUiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozMDcKK21zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gZGlyZWN0b3J5IgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozMTAKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGRpcmVjdG9yeSIKK21zZ3N0ciAiYWZpcmFuZGluYSBwZWxkYW5rw6ogYmlzZXJuZWtldCIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMxMgorbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byBkaXJlY3RvcnkgYWZ0ZXIgY3JlYXRpbmcgaXQiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMyMworbXNnaWQgIjxkZWNvbXByZXNzPiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzI1Cittc2dpZCAicGFzdGUiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjM0MiBkcGtnLWRlYi9leHRyYWN0LmM6MzYzIGRwa2ctZGViL2V4dHJhY3QuYzo0MDIKKyM6IGRwa2ctZGViL2luZm8uYzo3NworIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGEgLmRlYiBmaWxlbmFtZSBhcmd1bWVudCIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzQ3IGRwa2ctZGViL2V4dHJhY3QuYzo0MDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIi0tJXMgbmVlZHMgYSB0YXJnZXQgZGlyZWN0b3J5LlxuIgorIlBlcmhhcHMgeW91IHNob3VsZCBiZSB1c2luZyBkcGtnIC0taW5zdGFsbCA/IgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozNTAgZHBrZy1kZWIvZXh0cmFjdC5jOjQxMAorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIHRha2VzIGF0IG1vc3QgdHdvIGFyZ3VtZW50cyAoLmRlYiBhbmQgZGlyZWN0b3J5KSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzY1CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgb25seSBvbmUgYXJndW1lbnQgKC5kZWIgZmlsZW5hbWUpIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2luZm8uYzo2MworbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byBgLycgZm9yIGNsZWFudXAiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvaW5mby5jOjEwNgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiY29udHJvbCBmaWxlICclcyciCittc2dzdHIgImRpIHh3ZW5kaW5hICVzIGRlIMOnZXd0w64iCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZy1kZWI6IGAlLjI1NXMnIGNvbnRhaW5zIG5vIGNvbnRyb2wgY29tcG9uZW50IGAlLjI1NXMnXG4iCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvaW5mby5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICJvcGVuIGNvbXBvbmVudCBgJS4yNTVzJyAoaW4gJS4yNTVzKSBmYWlsZWQgaW4gYW4gdW5leHBlY3RlZCB3YXkiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvaW5mby5jOjEyMQorIywgYy1mb3JtYXQKK21zZ2lkICIlZCByZXF1ZXN0ZWQgY29udHJvbCBjb21wb25lbnQgaXMgbWlzc2luZyIKK21zZ2lkX3BsdXJhbCAiJWQgcmVxdWVzdGVkIGNvbnRyb2wgY29tcG9uZW50cyBhcmUgbWlzc2luZyIKK21zZ3N0clswXSAiIgorbXNnc3RyWzFdICIiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMzkgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQyNAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc2NhbiBkaXJlY3RvcnkgYCUuMjU1cyciCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvaW5mby5jOjE0OAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc3RhdCBgJS4yNTVzJyAoaW4gYCUuMjU1cycpIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IG9wZW4gYCUuMjU1cycgKGluIGAlLjI1NXMnKSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTY3IGRwa2ctZGViL2luZm8uYzoxODUgZHBrZy1kZWIvaW5mby5jOjE5OQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCBgJS4yNTVzJyAoaW4gYCUuMjU1cycpIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxNzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiICU3amQgYnl0ZXMsICU1ZCBsaW5lcyAgICVjICAlLTIwLjEyN3MgJS4xMjdzXG4iCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvaW5mby5jOjE3NAorIywgYy1mb3JtYXQKK21zZ2lkICIgICAgIG5vdCBhIHBsYWluIGZpbGUgICAgICAgICAgJS4yNTVzXG4iCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvaW5mby5jOjE4NgorbXNnaWQgIihubyBgY29udHJvbCcgZmlsZSBpbiBjb250cm9sIGFyY2hpdmUhKVxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2luZm8uYzoyMjIKK21zZ2lkICJjb3VsZCBub3Qgb3BlbiB0aGUgYGNvbnRyb2wnIGNvbXBvbmVudCIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MjYxCittc2dpZCAiZmFpbGVkIGR1cmluZyByZWFkIG9mIGBjb250cm9sJyBjb21wb25lbnQiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvaW5mby5jOjI2MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyB0aGUgJyVzJyBjb21wb25lbnQiCittc2dzdHIgImRpIHh3ZW5kaW5hICUuMjUwcyBkZSDDp2V3dMOuIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6Mjc4Cittc2dpZCAiRXJyb3IgaW4gZm9ybWF0IgorbXNnc3RyICJEaSBmb3JtYXTDqiBkZSDDp2V3dMOuIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MzI4Cittc2dpZCAiLS1jb250ZW50cyB0YWtlcyBleGFjdGx5IG9uZSBhcmd1bWVudCIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9tYWluLmM6NTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuIGAlcycgcGFja2FnZSBhcmNoaXZlIGJhY2tlbmQgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9tYWluLmM6NzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLWJ8LS1idWlsZCA8ZGlyZWN0b3J5PiBbPGRlYj5dICAgQnVpbGQgYW4gYXJjaGl2ZS5cbiIKKyIgIC1jfC0tY29udGVudHMgPGRlYj4gICAgICAgICAgICAgIExpc3QgY29udGVudHMuXG4iCisiICAtSXwtLWluZm8gPGRlYj4gWzxjZmlsZT4gLi4uXSAgICBTaG93IGluZm8gdG8gc3Rkb3V0LlxuIgorIiAgLVd8LS1zaG93IDxkZWI+ICAgICAgICAgICAgICAgICAgU2hvdyBpbmZvcm1hdGlvbiBvbiBwYWNrYWdlKHMpXG4iCisiICAtZnwtLWZpZWxkIDxkZWI+IFs8Y2ZpZWxkPiAuLi5dICBTaG93IGZpZWxkKHMpIHRvIHN0ZG91dC5cbiIKKyIgIC1lfC0tY29udHJvbCA8ZGViPiBbPGRpcmVjdG9yeT5dIEV4dHJhY3QgY29udHJvbCBpbmZvLlxuIgorIiAgLXh8LS1leHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+ICAgRXh0cmFjdCBmaWxlcy5cbiIKKyIgIC1YfC0tdmV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gIEV4dHJhY3QgJiBsaXN0IGZpbGVzLlxuIgorIiAgLVJ8LS1yYXctZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRXh0cmFjdCBjb250cm9sIGluZm8gYW5kIGZpbGVzLlxuIgorIiAgLS1mc3lzLXRhcmZpbGUgPGRlYj4gICAgICAgICAgICAgT3V0cHV0IGZpbGVzeXN0ZW0gdGFyZmlsZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9tYWluLmM6OTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIjxkZWI+IGlzIHRoZSBmaWxlbmFtZSBvZiBhIERlYmlhbiBmb3JtYXQgYXJjaGl2ZS5cbiIKKyI8Y2ZpbGU+IGlzIHRoZSBuYW1lIG9mIGFuIGFkbWluaXN0cmF0aXZlIGZpbGUgY29tcG9uZW50LlxuIgorIjxjZmllbGQ+IGlzIHRoZSBuYW1lIG9mIGEgZmllbGQgaW4gdGhlIG1haW4gYGNvbnRyb2wnIGZpbGUuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjk5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1zaG93Zm9ybWF0PTxmb3JtYXQ+ICAgICAgICAgICAgVXNlIGFsdGVybmF0aXZlIGZvcm1hdCBmb3IgLS1zaG93LlxuIgorIiAgLXYsIC0tdmVyYm9zZSAgICAgICAgICAgICAgICAgICAgRW5hYmxlIHZlcmJvc2Ugb3V0cHV0LlxuIgorIiAgLUQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRW5hYmxlIGRlYnVnZ2luZyBvdXRwdXQuXG4iCisiICAtLW9sZCwgLS1uZXcgICAgICAgICAgICAgICAgICAgICBTZWxlY3QgYXJjaGl2ZSBmb3JtYXQuXG4iCisiICAtLW5vY2hlY2sgICAgICAgICAgICAgICAgICAgICAgICBTdXBwcmVzcyBjb250cm9sIGZpbGUgY2hlY2sgKGJ1aWxkIGJhZFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWNrYWdlcykuXG4iCisiICAteiMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTZXQgdGhlIGNvbXByZXNzaW9uIGxldmVsIHdoZW4gYnVpbGRpbmcuXG4iCisiICAtWjx0eXBlPiAgICAgICAgICAgICAgICAgICAgICAgICBTZXQgdGhlIGNvbXByZXNzaW9uIHR5cGUgdXNlZCB3aGVuICIKKyJidWlsZGluZy5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWxsb3dlZCB0eXBlczogZ3ppcCwgeHosIGJ6aXAyLCBsem1hLCAiCisibm9uZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTIxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJVc2UgYGRwa2cnIHRvIGluc3RhbGwgYW5kIHJlbW92ZSBwYWNrYWdlcyBmcm9tIHlvdXIgc3lzdGVtLCBvclxuIgorImBkc2VsZWN0JyBvciBgYXB0aXR1ZGUnIGZvciB1c2VyLWZyaWVuZGx5IHBhY2thZ2UgbWFuYWdlbWVudC4gIFBhY2thZ2VzXG4iCisidW5wYWNrZWQgdXNpbmcgYGRwa2ctZGViIC0tZXh0cmFjdCcgd2lsbCBiZSBpbmNvcnJlY3RseSBpbnN0YWxsZWQgIVxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL21haW4uYzoxMzIKK21zZ2lkICIiCisiVHlwZSBkcGtnLWRlYiAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgbWFuaXB1bGF0aW5nICouZGViIGZpbGVzO1xuIgorIlR5cGUgZHBrZyAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgaW5zdGFsbGluZyBhbmQgZGVpbnN0YWxsaW5nIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTQ4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGludGVnZXIgZm9yIC0lYzogJyUuMjUwcyciCittc2dzdHIgIm5hdsOqIHBha8OqdMOqIHnDqiBuZWRlcmJhc2RhciAoJS4yNTBzKSIKKworIzogZHBrZy1kZWIvbWFpbi5jOjE1MQorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGNvbXByZXNzaW9uIGxldmVsIGZvciAtJWM6ICVsZCciCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjE2MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGNvbXByZXNzaW9uIHR5cGUgYCVzJyEiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6NTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIGRpZ2l0IChjb2RlICVkKSBpbiAlcyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzo2MAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSAlLjI1MHMgbWlzc2luZyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzo2MworIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBtaXNzaW5nIG5ld2xpbmUgYWZ0ZXIgJS4yNTBzIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjg5IGRwa2ctc3BsaXQvbWFpbi5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciByZWFkaW5nICUuMjUwcyIKK21zZ3N0ciAiZGkgeHdlbmRpbmEgJS4yNTBzIGRlIMOnZXd0w64iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEwMworIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgbWFnaWMgYXQgZW5kIG9mIGZpcnN0IGhlYWRlciIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIHBhZGRpbmcgY2hhcmFjdGVyIChjb2RlICVkKSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gbnVsbHMgaW4gaW5mbyBzZWN0aW9uIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyMgorIywgZnV6enkKK21zZ2lkICJmb3JtYXQgdmVyc2lvbiBudW1iZXIiCittc2dzdHIgImhlam1hcmUgdmVyc2l5b27DqiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgZm9ybWF0IHZlcnNpb24gYCUuMjUwcycgLSB5b3UgbmVlZCBhIG5ld2VyIGRwa2ctc3BsaXQiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTI3CisjLCBmdXp6eQorbXNnaWQgInBhY2thZ2UgbmFtZSIKK21zZ3N0ciAiIChwYWvDqnQ6ICIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTI4CisjLCBmdXp6eQorbXNnaWQgInBhY2thZ2UgdmVyc2lvbiBudW1iZXIiCittc2dzdHIgImhlam1hcmUgdmVyc2l5b27DqiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTI5Cittc2dpZCAicGFja2FnZSBmaWxlIE1ENSBjaGVja3N1bSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIE1ENSBjaGVja3N1bSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMzQgZHBrZy1zcGxpdC9pbmZvLmM6MTM1Cittc2dpZCAiYXJjaGl2ZSB0b3RhbCBzaXplIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEzNiBkcGtnLXNwbGl0L2luZm8uYzoxMzcKK21zZ2lkICJhcmNoaXZlIHBhcnQgb2Zmc2V0IgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEzOQorIywgZnV6enkKK21zZ2lkICJhcmNoaXZlIHBhcnQgbnVtYmVycyIKK21zZ3N0ciAiaGVqbWFyZSB2ZXJzaXlvbsOqIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gbm8gc2xhc2ggYmV0d2VlbiBhcmNoaXZlIHBhcnQgbnVtYmVycyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDUKK21zZ2lkICJudW1iZXIgb2YgYXJjaGl2ZSBwYXJ0cyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIG51bWJlciBvZiBhcmNoaXZlIHBhcnRzIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE0OQorIywgZnV6enkKK21zZ2lkICJhcmNoaXZlIHBhcnRzIG51bWJlciIKK21zZ3N0ciAiaGVqbWFyZSB2ZXJzaXlvbsOqIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIGFyY2hpdmUgcGFydCBudW1iZXIiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTU3CisjLCBmdXp6eQorbXNnaWQgInBhY2thZ2UgYXJjaGl0ZWN0dXJlIgorbXNnc3RyICIgKHBha8OqdDogIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIG1hZ2ljIGF0IGVuZCBvZiBzZWNvbmQgaGVhZGVyIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE2OAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBzZWNvbmQgbWVtYmVyIGlzIG5vdCBkYXRhIG1lbWJlciIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gd3JvbmcgbnVtYmVyIG9mIHBhcnRzIGZvciBxdW90ZWQgc2l6ZXMiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTc4CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIHNpemUgaXMgd3JvbmcgZm9yIHF1b3RlZCBwYXJ0IG51bWJlciIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxODQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZzdGF0IHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gdG9vIHNob3J0IgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjIwMiBkcGtnLXNwbGl0L2luZm8uYzoyNDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IG9wZW4gYXJjaGl2ZSBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjA0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgbm90IGFuIGFyY2hpdmUgcGFydCIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyMDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOlxuIgorIiAgICBQYXJ0IGZvcm1hdCB2ZXJzaW9uOiAgICAgICAgICAgICVzXG4iCisiICAgIFBhcnQgb2YgcGFja2FnZTogICAgICAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiB2ZXJzaW9uOiAgICAgICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIGFyY2hpdGVjdHVyZTogICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gTUQ1IGNoZWNrc3VtOiAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiBsZW5ndGg6ICAgICAgICAgICAgICAgICAlamQgYnl0ZXNcbiIKKyIgICAgICAgIC4uLiBzcGxpdCBldmVyeTogICAgICAgICAgICAlamQgYnl0ZXNcbiIKKyIgICAgUGFydCBudW1iZXI6ICAgICAgICAgICAgICAgICAgICAlZC8lZFxuIgorIiAgICBQYXJ0IGxlbmd0aDogICAgICAgICAgICAgICAgICAgICVqZCBieXRlc1xuIgorIiAgICBQYXJ0IG9mZnNldDogICAgICAgICAgICAgICAgICAgICVqZCBieXRlc1xuIgorIiAgICBQYXJ0IGZpbGUgc2l6ZSAodXNlZCBwb3J0aW9uKTogICVqZCBieXRlc1xuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjIyNQorIywgZnV6enkKKyN8IG1zZ2lkICI8dW5rbm93bj4iCittc2djdHh0ICJhcmNoaXRlY3R1cmUiCittc2dpZCAiPHVua25vd24+IgorbXNnc3RyICI8bmF5w6ogemFuw65uPiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjQ0IGRwa2ctc3BsaXQvam9pbi5jOjEwNQorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIHJlcXVpcmVzIG9uZSBvciBtb3JlIHBhcnQgZmlsZSBhcmd1bWVudHMiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjU1CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCVzJyBpcyBub3QgYW4gYXJjaGl2ZSBwYXJ0XG4iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHV0dGluZyBwYWNrYWdlICVzIHRvZ2V0aGVyIGZyb20gJWQgcGFydDogIgorbXNnaWRfcGx1cmFsICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0czogIgorbXNnc3RyWzBdICIiCittc2dzdHJbMV0gIiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gb3V0cHV0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIChyZSlvcGVuIGlucHV0IHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1OAorIywgZnV6enkKKyN8IG1zZ2lkICJTa2lwcGluZyBkZXNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dpZCAic2tpcHBpbmcgc3BsaXQgcGFja2FnZSBoZWFkZXIiCittc2dzdHIgIlBha8OqdGEgJXMga3UgbmVoYXRpeWUgaGlsYmlqYXJ0aW4gdMOqIGRlcmJhc2tpcmluLlxuIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1OQorIywgZnV6enkKKyN8IG1zZ2lkICJtaXNzaW5nIHBhY2thZ2UiCittc2dpZCAic3BsaXQgcGFja2FnZSBwYXJ0IgorbXNnc3RyICJwYWvDqnRhIGvDqm0iCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjY5IGRwa2ctc3BsaXQvc3BsaXQuYzoyMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZG9uZVxuIgorbXNnc3RyICJ0ZW1hbVxuIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo4NQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlcyBgJS4yNTBzJyBhbmQgYCUuMjUwcycgYXJlIG5vdCBwYXJ0cyBvZiB0aGUgc2FtZSBmaWxlIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjkwCisjLCBjLWZvcm1hdAorbXNnaWQgInRoZXJlIGFyZSBzZXZlcmFsIHZlcnNpb25zIG9mIHBhcnQgJWQgLSBhdCBsZWFzdCBgJS4yNTBzJyBhbmQgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6MTI4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhcnQgJWQgaXMgbWlzc2luZyIKK21zZ3N0ciAiYmXFn2EgJWQga8OqbSBlIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo0NworIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIHNwbGl0L2pvaW4gdG9vbDsgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo0OQorIywgYy1mb3JtYXQKK21zZ2lkICJDb3B5cmlnaHQgKEMpIDE5OTQtMTk5NiBJYW4gSmFja3Nvbi5cbiIKK21zZ3N0ciAiQ29weXJpZ2h0IChDKSAxOTk0LTE5OTYgSWFuIEphY2tzb24uXG4iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjY3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1zfC0tc3BsaXQgPGZpbGU+IFs8cHJlZml4Pl0gICAgIFNwbGl0IGFuIGFyY2hpdmUuXG4iCisiICAtanwtLWpvaW4gPHBhcnQ+IDxwYXJ0PiAuLi4gICAgICBKb2luIHBhcnRzIHRvZ2V0aGVyLlxuIgorIiAgLUl8LS1pbmZvIDxwYXJ0PiAuLi4gICAgICAgICAgICAgRGlzcGxheSBpbmZvIGFib3V0IGEgcGFydC5cbiIKKyIgIC1hfC0tYXV0byAtbyA8Y29tcGxldGU+IDxwYXJ0PiAgIEF1dG8tYWNjdW11bGF0ZSBwYXJ0cy5cbiIKKyIgIC1sfC0tbGlzdHEgICAgICAgICAgICAgICAgICAgICAgIExpc3QgdW5tYXRjaGVkIHBpZWNlcy5cbiIKKyIgIC1kfC0tZGlzY2FyZCBbPGZpbGVuYW1lPiAuLi5dICAgIERpc2NhcmQgdW5tYXRjaGVkIHBpZWNlcy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo4MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tZGVwb3RkaXIgPGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLyVzLlxuIgorIiAgLVN8LS1wYXJ0c2l6ZSA8c2l6ZT4gICAgICAgICAgICAgSW4gS2lCLCBmb3IgLXMgKGRlZmF1bHQgaXMgNDUwKS5cbiIKKyIgIC1vfC0tb3V0cHV0IDxmaWxlPiAgICAgICAgICAgICAgIEZpbGVuYW1lLCBmb3IgLWogKGRlZmF1bHQgaXNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhY2thZ2U+Xzx2ZXJzaW9uPl88YXJjaD4uZGViKS5cbiIKKyIgIC1RfC0tbnBxdWlldCAgICAgICAgICAgICAgICAgICAgIEJlIHF1aWV0IHdoZW4gLWEgaXMgbm90IGEgcGFydC5cbiIKKyIgIC0tbXNkb3MgICAgICAgICAgICAgICAgICAgICAgICAgIEdlbmVyYXRlIDguMyBmaWxlbmFtZXMuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6OTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkV4aXQgc3RhdHVzOlxuIgorIiAgMCA9IG9rXG4iCisiICAxID0gd2l0aCAtLWF1dG8sIGZpbGUgaXMgbm90IGEgcGFydFxuIgorIiAgMiA9IHRyb3VibGVcbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMDMKK21zZ2lkICJUeXBlIGRwa2ctc3BsaXQgLS1oZWxwIGZvciBoZWxwLiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgZmlsZSBpbiAlLjI1MHMiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6MTI2Cittc2dpZCAicGFydCBzaXplIGlzIGZhciB0b28gbGFyZ2Ugb3IgaXMgbm90IHBvc2l0aXZlIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjEzMAorIywgYy1mb3JtYXQKK21zZ2lkICJwYXJ0IHNpemUgbXVzdCBiZSBhdCBsZWFzdCAlZCBLaUIgKHRvIGFsbG93IGZvciBoZWFkZXIpIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzo5MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBkZXBvdCBkaXJlY3RvcnkgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjEzNAorbXNnaWQgIi0tYXV0byByZXF1aXJlcyB0aGUgdXNlIG9mIHRoZSAtLW91dHB1dCBvcHRpb24iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjEzNgorbXNnaWQgIi0tYXV0byByZXF1aXJlcyBleGFjdGx5IG9uZSBwYXJ0IGZpbGUgYXJndW1lbnQiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE0MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE0MworIywgYy1mb3JtYXQKK21zZ2lkICJGaWxlIGAlLjI1MHMnIGlzIG5vdCBwYXJ0IG9mIGEgbXVsdGlwYXJ0IGFyY2hpdmUuXG4iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE3OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVvcGVuIHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTgyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIG5ldyBkZXBvdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxODQKK21zZ2lkICJleHRyYWN0aW5nIHNwbGl0IHBhcnQiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE5MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVuYW1lIG5ldyBkZXBvdCBmaWxlIGAlLjI1MHMnIHRvIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFydCAlZCBvZiBwYWNrYWdlICVzIGZpbGVkIChzdGlsbCB3YW50ICIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjAwCittc2dpZCAiIGFuZCAiCittc2dzdHIgIiDDuyAiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSB1c2VkLXVwIGRlcG90IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjIzNQorbXNnaWQgIkp1bmsgZmlsZXMgbGVmdCBhcm91bmQgaW4gdGhlIGRlcG90IGRpcmVjdG9yeTpcbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjQwIGRwa2ctc3BsaXQvcXVldWUuYzoyNjkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI0MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiICVzICglbHUgYnl0ZXMpXG4iCittc2dpZCAiICVzICglamQgYnl0ZXMpXG4iCittc2dzdHIgIiAlcyAoJWx1IGJheXQpXG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICVzIChub3QgYSBwbGFpbiBmaWxlKVxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNTAKK21zZ2lkICJQYWNrYWdlcyBub3QgeWV0IHJlYXNzZW1ibGVkOlxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIFBhY2thZ2UgJXM6IHBhcnQocykgIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFydCBmaWxlIGAlLjI1MHMnIGlzIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI3OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiKHRvdGFsICVsdSBieXRlcylcbiIKK21zZ2lkICIodG90YWwgJWpkIGJ5dGVzKVxuIgorbXNnc3RyICIodGV2w64gJWx1IGJheXQpXG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzozMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRpc2NhcmQgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjMwNQorIywgYy1mb3JtYXQKK21zZ2lkICJEZWxldGVkICVzLlxuIgorbXNnc3RyICIlcyBoYXRpeWUgasOqYmlyaW4uXG4iCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzo3MCBkcGtnLXNwbGl0L3NwbGl0LmM6NzYgZHBrZy1zcGxpdC9zcGxpdC5jOjgxCittc2dpZCAicGFja2FnZSBmaWVsZCB2YWx1ZSBleHRyYWN0aW9uIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxMzEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gc291cmNlIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjEzMworbXNnaWQgInVuYWJsZSB0byBmc3RhdCBzb3VyY2UgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTM1CisjLCBjLWZvcm1hdAorbXNnaWQgInNvdXJjZSBmaWxlIGAlLjI1MHMnIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjE1MworIywgYy1mb3JtYXQKK21zZ2lkICJTcGxpdHRpbmcgcGFja2FnZSAlcyBpbnRvICVkIHBhcnQ6ICIKK21zZ2lkX3BsdXJhbCAiU3BsaXR0aW5nIHBhY2thZ2UgJXMgaW50byAlZCBwYXJ0czogIgorbXNnc3RyWzBdICIiCittc2dzdHJbMV0gIiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjE5MworbXNnaWQgIiIKKyJIZWFkZXIgaXMgdG9vIGxvbmcsIG1ha2luZyBwYXJ0IHRvbyBsb25nLiBZb3VyIHBhY2thZ2UgbmFtZSBvciB2ZXJzaW9uXG4iCisibnVtYmVycyBtdXN0IGJlIGV4dHJhb3JkaW5hcmlseSBsb25nLCBvciBzb21ldGhpbmcuIEdpdmluZyB1cC5cbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MjQ5Cittc2dpZCAiLS1zcGxpdCBuZWVkcyBhIHNvdXJjZSBmaWxlbmFtZSBhcmd1bWVudCIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MjUyCittc2dpZCAiLS1zcGxpdCB0YWtlcyBhdCBtb3N0IGEgc291cmNlIGZpbGVuYW1lIGFuZCBkZXN0aW5hdGlvbiBwcmVmaXgiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjg0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLTIwMDIgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDktMjAxMCBSYXBoYWVsIEhlcnR6b2cuXG4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEwMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtLWluc3RhbGwgPGxpbms+IDxuYW1lPiA8cGF0aD4gPHByaW9yaXR5PlxuIgorIiAgICBbLS1zbGF2ZSA8bGluaz4gPG5hbWU+IDxwYXRoPl0gLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkIGEgZ3JvdXAgb2YgYWx0ZXJuYXRpdmVzIHRvIHRoZSBzeXN0ZW0uXG4iCisiICAtLXJlbW92ZSA8bmFtZT4gPHBhdGg+ICAgcmVtb3ZlIDxwYXRoPiBmcm9tIHRoZSA8bmFtZT4gZ3JvdXAgYWx0ZXJuYXRpdmUuXG4iCisiICAtLXJlbW92ZS1hbGwgPG5hbWU+ICAgICAgcmVtb3ZlIDxuYW1lPiBncm91cCBmcm9tIHRoZSBhbHRlcm5hdGl2ZXMgIgorInN5c3RlbS5cbiIKKyIgIC0tYXV0byA8bmFtZT4gICAgICAgICAgICBzd2l0Y2ggdGhlIG1hc3RlciBsaW5rIDxuYW1lPiB0byBhdXRvbWF0aWMgbW9kZS5cbiIKKyIgIC0tZGlzcGxheSA8bmFtZT4gICAgICAgICBkaXNwbGF5IGluZm9ybWF0aW9uIGFib3V0IHRoZSA8bmFtZT4gZ3JvdXAuXG4iCisiICAtLXF1ZXJ5IDxuYW1lPiAgICAgICAgICAgbWFjaGluZSBwYXJzZWFibGUgdmVyc2lvbiBvZiAtLWRpc3BsYXkgPG5hbWU+LlxuIgorIiAgLS1saXN0IDxuYW1lPiAgICAgICAgICAgIGRpc3BsYXkgYWxsIHRhcmdldHMgb2YgdGhlIDxuYW1lPiBncm91cC5cbiIKKyIgIC0tZ2V0LXNlbGVjdGlvbnMgICAgICAgICBsaXN0IG1hc3RlciBhbHRlcm5hdGl2ZSBuYW1lcyBhbmQgdGhlaXIgc3RhdHVzLlxuIgorIiAgLS1zZXQtc2VsZWN0aW9ucyAgICAgICAgIHJlYWQgYWx0ZXJuYXRpdmUgc3RhdHVzIGZyb20gc3RhbmRhcmQgaW5wdXQuXG4iCisiICAtLWNvbmZpZyA8bmFtZT4gICAgICAgICAgc2hvdyBhbHRlcm5hdGl2ZXMgZm9yIHRoZSA8bmFtZT4gZ3JvdXAgYW5kIGFzayAiCisidGhlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlciB0byBzZWxlY3Qgd2hpY2ggb25lIHRvIHVzZS5cbiIKKyIgIC0tc2V0IDxuYW1lPiA8cGF0aD4gICAgICBzZXQgPHBhdGg+IGFzIGFsdGVybmF0aXZlIGZvciA8bmFtZT4uXG4iCisiICAtLWFsbCAgICAgICAgICAgICAgICAgICAgY2FsbCAtLWNvbmZpZyBvbiBhbGwgYWx0ZXJuYXRpdmVzLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIjxsaW5rPiBpcyB0aGUgc3ltbGluayBwb2ludGluZyB0byAlcy88bmFtZT4uXG4iCisiICAoZS5nLiAvdXNyL2Jpbi9wYWdlcilcbiIKKyI8bmFtZT4gaXMgdGhlIG1hc3RlciBuYW1lIGZvciB0aGlzIGxpbmsgZ3JvdXAuXG4iCisiICAoZS5nLiBwYWdlcilcbiIKKyI8cGF0aD4gaXMgdGhlIGxvY2F0aW9uIG9mIG9uZSBvZiB0aGUgYWx0ZXJuYXRpdmUgdGFyZ2V0IGZpbGVzLlxuIgorIiAgKGUuZy4gL3Vzci9iaW4vbGVzcylcbiIKKyI8cHJpb3JpdHk+IGlzIGFuIGludGVnZXI7IG9wdGlvbnMgd2l0aCBoaWdoZXIgbnVtYmVycyBoYXZlIGhpZ2hlciBwcmlvcml0eSAiCisiaW5cbiIKKyIgIGF1dG9tYXRpYyBtb2RlLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFsdGRpciA8ZGlyZWN0b3J5PiAgICAgY2hhbmdlIHRoZSBhbHRlcm5hdGl2ZXMgZGlyZWN0b3J5LlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIGNoYW5nZSB0aGUgYWRtaW5pc3RyYXRpdmUgZGlyZWN0b3J5LlxuIgorIiAgLS1sb2cgPGZpbGU+ICAgICAgICAgICAgIGNoYW5nZSB0aGUgbG9nIGZpbGUuXG4iCisiICAtLWZvcmNlICAgICAgICAgICAgICAgICAgYWxsb3cgcmVwbGFjaW5nIGZpbGVzIHdpdGggYWx0ZXJuYXRpdmUgbGlua3MuXG4iCisiICAtLXNraXAtYXV0byAgICAgICAgICAgICAgc2tpcCBwcm9tcHQgZm9yIGFsdGVybmF0aXZlcyBjb3JyZWN0bHkgIgorImNvbmZpZ3VyZWRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBhdXRvbWF0aWMgbW9kZSAocmVsZXZhbnQgZm9yIC0tY29uZmlnIG9ubHkpXG4iCisiICAtLXZlcmJvc2UgICAgICAgICAgICAgICAgdmVyYm9zZSBvcGVyYXRpb24sIG1vcmUgb3V0cHV0LlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHF1aWV0IG9wZXJhdGlvbiwgbWluaW1hbCBvdXRwdXQuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE2MworbXNnaWQgImVycm9yIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxOTMKK21zZ2lkICJ3YXJuaW5nIgorbXNnc3RyICJoacWfeWFyw64iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzozNTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidHdvIGNvbW1hbmRzIHNwZWNpZmllZDogLS0lcyBhbmQgLS0lcyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6Mzg3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgYXBwZW5kIHRvICclcyciCittc2dzdHIgImRpIHh3ZW5kaW5hICVzIGRlIMOnZXd0w64iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo1NTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgJyVzJyIKK21zZ3N0ciAiJXMgbmF5w6ogeGViaXRhbmRpbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgZmlsZSB3aGlsZSB0cnlpbmcgdG8gcmVhZCAlcyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTExMworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAid2hpbGUgcmVhZGluZyAlczogJXMiCittc2dzdHIgImRpIHh3ZW5kaW5hICVzIGRlIMOnZXd0w64iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTE5CisjLCBjLWZvcm1hdAorbXNnaWQgImxpbmUgbm90IHRlcm1pbmF0ZWQgd2hpbGUgdHJ5aW5nIHRvIHJlYWQgJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgY29ycnVwdDogJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAibmV3bGluZXMgcHJvaGliaXRlZCBpbiB1cGRhdGUtYWx0ZXJuYXRpdmVzIGZpbGVzICglcykiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNjMKK21zZ2lkICJzbGF2ZSBuYW1lIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTcxIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDA1CisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBzbGF2ZSBuYW1lICVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTc0Cittc2dpZCAic2xhdmUgbGluayIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE3OAorIywgYy1mb3JtYXQKK21zZ2lkICJzbGF2ZSBsaW5rIHNhbWUgYXMgbWFpbiBsaW5rICVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTg1IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDEyCisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBzbGF2ZSBsaW5rICVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjA0Cittc2dpZCAibWFzdGVyIGZpbGUiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHBhdGggJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImFsdGVybmF0aXZlICVzIChwYXJ0IG9mIGxpbmsgZ3JvdXAgJXMpIGRvZXNuJ3QgZXhpc3QuIFJlbW92aW5nIGZyb20gbGlzdCBvZiAiCisiYWx0ZXJuYXRpdmVzLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIyOSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI0MAorbXNnaWQgInByaW9yaXR5IgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjMyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjQ5Cittc2dpZCAic2xhdmUgZmlsZSIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI0NAorIywgYy1mb3JtYXQKK21zZ2lkICJwcmlvcml0eSBvZiAlczogJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyOTcKK21zZ2lkICJzdGF0dXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyOTkKK21zZ2lkICJpbnZhbGlkIHN0YXR1cyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTMwNAorbXNnaWQgIm1hc3RlciBsaW5rIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzQ4CisjLCBjLWZvcm1hdAorbXNnaWQgImRpc2NhcmRpbmcgb2Jzb2xldGUgc2xhdmUgbGluayAlcyAoJXMpLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2OQorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MzgKK21zZ2lkICJhdXRvIG1vZGUiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MDIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NzgKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjM5Cittc2dpZCAibWFudWFsIG1vZGUiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBsaW5rIGN1cnJlbnRseSBwb2ludHMgdG8gJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MDgKK21zZ2lkICIgIGxpbmsgY3VycmVudGx5IGFic2VudCIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUxMgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyAtIHByaW9yaXR5ICVkIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTE1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgc2xhdmUgJXM6ICVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTIyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJDdXJyZW50ICdiZXN0JyB2ZXJzaW9uIGlzICclcycuIgorbXNnc3RyICJEZWJpYW4gJXMgZ3VoYXJ0b3lhICVzLlxuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUyNAorbXNnaWQgIk5vIHZlcnNpb25zIGF2YWlsYWJsZS4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiVGhlcmUgaXMgJWQgY2hvaWNlIGZvciB0aGUgYWx0ZXJuYXRpdmUgJXMgKHByb3ZpZGluZyAlcykuIgorbXNnaWRfcGx1cmFsICJUaGVyZSBhcmUgJWQgY2hvaWNlcyBmb3IgdGhlIGFsdGVybmF0aXZlICVzIChwcm92aWRpbmcgJXMpLiIKK21zZ3N0clswXSAiIgorbXNnc3RyWzFdICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYwCisjLCBmdXp6eQorbXNnaWQgIlNlbGVjdGlvbiIKK21zZ3N0ciAiUmF2ZSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NjEKK21zZ2lkICJQYXRoIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYxCittc2dpZCAiUHJpb3JpdHkiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NjEKK21zZ2lkICJTdGF0dXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHJlc3MgZW50ZXIgdG8ga2VlcCB0aGUgY3VycmVudCBjaG9pY2VbKl0sIG9yIHR5cGUgc2VsZWN0aW9uIG51bWJlcjogIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNzIxCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vdCByZXBsYWNpbmcgJXMgd2l0aCBhIGxpbmsuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNzYyCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbid0IGluc3RhbGwgdW5rbm93biBjaG9pY2UgJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInNraXAgY3JlYXRpb24gb2YgJXMgYmVjYXVzZSBhc3NvY2lhdGVkIGZpbGUgJXMgKG9mIGxpbmsgZ3JvdXAgJXMpIGRvZXNuJ3QgIgorImV4aXN0LiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTc5MAorIywgYy1mb3JtYXQKK21zZ2lkICJub3QgcmVtb3ZpbmcgJXMgc2luY2UgaXQncyBub3QgYSBzeW1saW5rLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA0MSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA0NworIywgYy1mb3JtYXQKK21zZ2lkICJDYWxsICVzLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA1MQorIywgYy1mb3JtYXQKK21zZ2lkICJBbHRlcm5hdGl2ZSAlcyB1bmNoYW5nZWQgYmVjYXVzZSBjaG9pY2UgJXMgaXMgbm90IGF2YWlsYWJsZS4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2tpcCB1bmtub3duIGFsdGVybmF0aXZlICVzLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA3NworIywgYy1mb3JtYXQKK21zZ2lkICJsaW5lIHRvbyBsb25nIG9yIG5vdCB0ZXJtaW5hdGVkIHdoaWxlIHRyeWluZyB0byByZWFkICVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDkwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTAzCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjExMworIywgYy1mb3JtYXQKK21zZ2lkICJTa2lwIGludmFsaWQgbGluZTogJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxMzIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInJlbmFtaW5nICVzIGxpbmsgZnJvbSAlcyB0byAlcy4iCittc2dzdHIgIiVzIHTDqiBkZXJ4aXN0aW4gKGppICVzKSAuLi5cbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxNzMKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVuYW1pbmcgJXMgc2xhdmUgbGluayBmcm9tICVzIHRvICVzLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE4OQorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBuYW1lICglcykgbXVzdCBub3QgY29udGFpbiAnLycgYW5kIHNwYWNlcy4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgbGluayBpcyBub3QgYWJzb2x1dGUgYXMgaXQgc2hvdWxkIGJlOiAlcyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE5NworIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBwYXRoIGlzIG5vdCBhYnNvbHV0ZSBhcyBpdCBzaG91bGQgYmU6ICVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjI0CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlICVzIGNhbid0IGJlIG1hc3RlcjogaXQgaXMgYSBzbGF2ZSBvZiAlcyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjIzMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI2NworIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBsaW5rICVzIGlzIGFscmVhZHkgbWFuYWdlZCBieSAlcy4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgcGF0aCAlcyBkb2Vzbid0IGV4aXN0LiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI1NAorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBzbGF2ZSBvZiAlczogaXQgaXMgYSBtYXN0ZXIgYWx0ZXJuYXRpdmUuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjU4CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlICVzIGNhbid0IGJlIHNsYXZlIG9mICVzOiBpdCBpcyBhIHNsYXZlIG9mICVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjc4CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIGxpbmsgJXMgaXMgYWxyZWFkeSBtYW5hZ2VkIGJ5ICVzIChzbGF2ZSBvZiAlcykuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzI0CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gYXJndW1lbnQgYCVzJyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM0MworbXNnaWQgIi0taW5zdGFsbCBuZWVkcyA8bGluaz4gPG5hbWU+IDxwYXRoPiA8cHJpb3JpdHk+IgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzQ2IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzk3Cittc2dpZCAiPGxpbms+IGFuZCA8cGF0aD4gY2FuJ3QgYmUgdGhlIHNhbWUiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNDkKK21zZ2lkICJwcmlvcml0eSBtdXN0IGJlIGFuIGludGVnZXIiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyA8bmFtZT4gPHBhdGg+IgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzc2CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgPG5hbWU+IgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzg4Cittc2dpZCAiLS1zbGF2ZSBvbmx5IGFsbG93ZWQgd2l0aCAtLWluc3RhbGwiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzOTAKK21zZ2lkICItLXNsYXZlIG5lZWRzIDxsaW5rPiA8bmFtZT4gPHBhdGg+IgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzk5CisjLCBjLWZvcm1hdAorbXNnaWQgIm5hbWUgJXMgaXMgYm90aCBwcmltYXJ5IGFuZCBzbGF2ZSIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQwMgorIywgYy1mb3JtYXQKK21zZ2lkICJsaW5rICVzIGlzIGJvdGggcHJpbWFyeSBhbmQgc2xhdmUiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhIDxmaWxlPiBhcmd1bWVudCIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQ0OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiBgJXMnIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDUzCittc2dpZCAiIgorIm5lZWQgLS1kaXNwbGF5LCAtLXF1ZXJ5LCAtLWxpc3QsIC0tZ2V0LXNlbGVjdGlvbnMsIC0tY29uZmlnLCAtLXNldCwgLS1zZXQtIgorInNlbGVjdGlvbnMsIC0taW5zdGFsbCwgLS1yZW1vdmUsIC0tYWxsLCAtLXJlbW92ZS1hbGwgb3IgLS1hdXRvIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDkwCittc2dpZCAiPHN0YW5kYXJkIGlucHV0PiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUwMCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUwMworIywgYy1mb3JtYXQKK21zZ2lkICJubyBhbHRlcm5hdGl2ZXMgZm9yICVzLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUzMAorIywgYy1mb3JtYXQKK21zZ2lkICIlcy8lcyBpcyBkYW5nbGluZywgaXQgd2lsbCBiZSB1cGRhdGVkIHdpdGggYmVzdCBjaG9pY2UuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlcy8lcyBoYXMgYmVlbiBjaGFuZ2VkIChtYW51YWxseSBvciBieSBhIHNjcmlwdCkuIFN3aXRjaGluZyB0byBtYW51YWwgIgorInVwZGF0ZXMgb25seS4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NDIKKyMsIGMtZm9ybWF0Cittc2dpZCAic2V0dGluZyB1cCBhdXRvbWF0aWMgc2VsZWN0aW9uIG9mICVzLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU1MQorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBmb3IgJXMgbm90IHJlZ2lzdGVyZWQsIG5vdCBzZXR0aW5nLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU1NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU2MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiVGhlcmUgaXMgbm8gcHJvZ3JhbSB3aGljaCBwcm92aWRlcyAlcy4iCittc2dzdHIgIiAgUGFrw6p0YSAlcyB5YSBrdSAlcyB0w65uZSBow6ogbmVoYXRpeWUgdmVhdmFraXJpbi5cbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NjUgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NzUKK21zZ2lkICJOb3RoaW5nIHRvIGNvbmZpZ3VyZS4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiVGhlcmUgaXMgb25seSBvbmUgYWx0ZXJuYXRpdmUgaW4gbGluayBncm91cCAlczogJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1ODQKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgZm9yICVzIG5vdCByZWdpc3RlcmVkLCBub3QgcmVtb3ZpbmcuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTkyCisjLCBjLWZvcm1hdAorbXNnaWQgInJlbW92aW5nIG1hbnVhbGx5IHNlbGVjdGVkIGFsdGVybmF0aXZlIC0gc3dpdGNoaW5nICVzIHRvIGF1dG8gbW9kZSIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYxNworIywgYy1mb3JtYXQKK21zZ2lkICJhdXRvbWF0aWMgdXBkYXRlcyBvZiAlcy8lcyBhcmUgZGlzYWJsZWQsIGxlYXZpbmcgaXQgYWxvbmUuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjE5CisjLCBjLWZvcm1hdAorbXNnaWQgInRvIHJldHVybiB0byBhdXRvbWF0aWMgdXBkYXRlcyB1c2UgJyVzIC0tYXV0byAlcycuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjM2CisjLCBjLWZvcm1hdAorbXNnaWQgInVzaW5nICVzIHRvIHByb3ZpZGUgJXMgKCVzKSBpbiAlcy4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImZvcmNpbmcgcmVpbnN0YWxsYXRpb24gb2YgYWx0ZXJuYXRpdmUgJXMgYmVjYXVzZSBsaW5rIGdyb3VwICVzIGlzIGJyb2tlbi4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY3VycmVudCBhbHRlcm5hdGl2ZSAlcyBpcyB1bmtub3duLCBzd2l0Y2hpbmcgdG8gJXMgZm9yIGxpbmsgZ3JvdXAgJXMuIgorbXNnc3RyICIiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiY2Fubm90IHN0YXQgJXM6ICVzIgorI34gbXNnc3RyICJkaSB4d2VuZGluYSAlcyBkZSDDp2V3dMOuIgorCisjLCBmdXp6eQorI34gbXNnaWQgImNhbm5vdCB3cml0ZSAlczogJXMiCisjfiBtc2dzdHIgImRpIHh3ZW5kaW5hICVzIGRlIMOnZXd0w64iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAidW5hYmxlIHRvIHJlbmFtZSBmaWxlICclcycgdG8gJyVzJyIKKyN+IG1zZ3N0ciAiJXMgbmF5w6ogeGViaXRhbmRpbiIKKworI34gbXNnaWQgImZhaWxlZCB0byBydW4gJXMgKCUuMjUwcykiCisjfiBtc2dzdHIgInhlYml0YW5kaW5hICVzICglLjI1MHMpIHNlcm5la2V0IgorCisjfiBtc2dpZCAiZHBrZzogJXMgbm90IGZvdW5kLlxuIgorI34gbXNnc3RyICJkcGtnOiAlcyBuZWhhdCBkw650aW4uXG4iCisKKyN+IG1zZ2lkICJ2ZXJzaW9uIG51bWJlciIKKyN+IG1zZ3N0ciAiaGVqbWFyZSB2ZXJzaXlvbsOqIgorCisjLCBmdXp6eQorI34gbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgdGVtcG9yYXJ5IGRpcmVjdG9yeSIKKyN+IG1zZ3N0ciAiYWZpcmFuZGluYSBwZWxkYW5rw6ogYmlzZXJuZWtldCIKKworIywgZnV6enkKKyN+IG1zZ2lkICJ1bmFibGUgdG8gc3RhdCAlczogJXMiCisjfiBtc2dzdHIgIm5pa2Fyw64gYCUuMjUwcycgd2Vrw64gYCUuMjUwcycgc2F6IGJpa2UiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiRGViaWFuIHJldmlzaW9uIgorI34gbXNnc3RyICJEZWJpYW4gJXMgZ3VoYXJ0b3lhICVzLlxuIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiVzIHJldHVybmVkIGVycm9yIGV4aXQgc3RhdHVzICVkIgorI34gbXNnc3RyICJkcGtnOiBoacWfeWFyw64gLSAlcyByZXfFn2EgZGVya2V0aW5hIGJpIMOnZXd0aXnDqiAlZCB2ZWdlcmFuZFxuIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiVzIGtpbGxlZCBieSBzaWduYWwgKCVzKSVzIgorI34gbXNnc3RyICJiaW5ww6p2YWpveWEgJXMgYmkgc8OubnlhbGEgKCVzKSVzIGt1xZ90IgorCisjLCBmdXp6eQorI34gbXNnaWQgIiVzOiBmYWlsZWQgdG8gZXhlYyAnJXMgJXMnIgorI34gbXNnc3RyICIlcyBhIGAlJS4yNTVzJyBzZXJuZWtldCIKKworI34gbXNnaWQgInVubGluayIKKyN+IG1zZ3N0ciAidW5saW5rIgorCisjfiBtc2dpZCAiY2htb2QiCisjfiBtc2dzdHIgImNobW9kIgorCisjfiBtc2dpZCAiZGVsZXRlIgorI34gbXNnc3RyICJqw6piaXJpbiIKKworI34gbXNnaWQgImFib3J0aW5nIgorI34gbXNnc3RyICJ0w6ogYmV0YWxraXJpbiIKKworI34gbXNnaWQgImRiZzogJXMiCisjfiBtc2dzdHIgImRiZzogJXMiCisKKyN+IG1zZ2lkICJ3cml0ZSBlcnJvciBpbiB2c25wcmludGYiCisjfiBtc2dzdHIgImRpIHZzbnByw65udGbDqiBkZSB4ZXRhIG5pdsOuc2FuZGluw6oiCisKKyN+IG1zZ2lkICJTeXN0ZW0gZXJyb3Igbm8uJWQiCisjfiBtc2dzdHIgIsOHZXd0aXlhIHBlcmdhbMOqIG5vLiVkIgorCisjfiBtc2dpZCAiU2lnbmFsIG5vLiVkIgorI34gbXNnc3RyICJOaW1yZXlhIHPDrm55YWzDqiAuJWQiCisKKyN+IG1zZ2lkICIiCisjfiAiXG4iCisjfiAiQ29weXJpZ2h0IChDKSAxOTk2IEtpbS1NaW5oIEthcGxhbi4iCisjfiBtc2dzdHIgIiIKKyN+ICJcbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDE5OTYgS2ltLU1pbmggS2FwbGFuLiIKKworI34gbXNnaWQgImZhaWxlZCB0byBpbnN0YWxsICVzOyBpdCB3aWxsIGJlIGxlZnQgYXMgJXM6ICVzIgorI34gbXNnc3RyICJzYXpraXJpbmEgJXMgYmkgc2VyIG5la2V0OyBkw6ogd2Vrw64gJXMgYmltw65uZTogJXMiCisKKyN+IG1zZ2lkICJTZXJpb3VzIHByb2JsZW06ICVzIgorI34gbXNnc3RyICJQaXJzZ2lyw6prYSBjaWTDrjogJXMiCisKKyN+IG1zZ2lkICJmcm9tIgorI34gbXNnc3RyICJqaSIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvcG8vbHQuZ21vIGIvZHBrZy0xLjE2LjEuMS9wby9sdC5nbW8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uY2YxMWE2MQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvcG8vbHQuZ21vCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvcG8vbHQucG8gYi9kcGtnLTEuMTYuMS4xL3BvL2x0LnBvCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjY3NDJhNTcKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3BvL2x0LnBvCkBAIC0wLDAgKzEsNjM0OSBAQAorIyBMaXRodWFuaWFuIHRyYW5zbGF0aW9uIGZvciBkcGtnCisjIENvcHlyaWdodCAoYykgMjAwNyBSb3NldHRhIENvbnRyaWJ1dG9ycyBhbmQgQ2Fub25pY2FsIEx0ZCAyMDA3CisjIFRoaXMgZmlsZSBpcyBkaXN0cmlidXRlZCB1bmRlciB0aGUgc2FtZSBsaWNlbnNlIGFzIHRoZSBkcGtnIHBhY2thZ2UuCisjIEdpbnRhdXRhcyBNaWxpYXVza2FzIDxnaW50YXNAYWtsLmx0PiwgMjAwOC4KKyMgQW5kcml1cyBLb2tpYW7EjWlrcyA8bmFwYWxtQG1pbnRpcy5sdD4sIDIwMDguCisjCittc2dpZCAiIgorbXNnc3RyICIiCisiUHJvamVjdC1JZC1WZXJzaW9uOiBkcGtnXG4iCisiUmVwb3J0LU1zZ2lkLUJ1Z3MtVG86IGRlYmlhbi1kcGtnQGxpc3RzLmRlYmlhbi5vcmdcbiIKKyJQT1QtQ3JlYXRpb24tRGF0ZTogMjAxMS0xMC0xNCAwNzoxMSswMjAwXG4iCisiUE8tUmV2aXNpb24tRGF0ZTogMjAwOC0wOC0wMiAwMTowOC0wNDAwXG4iCisiTGFzdC1UcmFuc2xhdG9yOiBHaW50YXV0YXMgTWlsaWF1c2thcyA8Z2ludGFzQGFrbC5sdD5cbiIKKyJMYW5ndWFnZS1UZWFtOiBMaXRodWFuaWFuIDxrb21wX2x0QGtvbmZlcmVuY2lqb3MubHQ+XG4iCisiTGFuZ3VhZ2U6IGx0XG4iCisiTUlNRS1WZXJzaW9uOiAxLjBcbiIKKyJDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9VVRGLThcbiIKKyJDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiA4Yml0XG4iCisKKyM6IGxpYi9kcGtnL2FyLmM6NjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgJyVjJyBpbiBhcmNoaXZlICclLjI1MHMnIG1lbWJlciAnJS4xNnMnIHNpemUiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvYXIuYzo4MSBsaWIvZHBrZy9hci5jOjk3IGxpYi9kcGtnL2FyLmM6MTA4IGxpYi9kcGtnL2FyLmM6MTEyCisjOiBsaWIvZHBrZy9hci5jOjEzNCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE1NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIGZpbGUgJyVzJyIKK21zZ3N0ciAibmVwYXZ5a28gdcW+dmVydGkgJXM6ICVzIgorCisjOiBsaWIvZHBrZy9hci5jOjk0CisjLCBjLWZvcm1hdAorbXNnaWQgImdlbmVyYXRlZCBjb3JydXB0IGFyIGhlYWRlciBmb3IgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9hci5jOjEyMworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGFyIG1lbWJlciBmaWxlICglcykiCittc2dzdHIgIm5lcGF2eWtvIHN1a3VydGkgbGFpa2lubyBmYWlsbyAoZHVvbWVueXMpIgorCisjOiBsaWIvZHBrZy9hci5jOjEzMAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiYXIgbWVtYmVyIGZpbGUgKCVzKSIKK21zZ3N0ciAibmVwYXZ5a28gc3VrdXJ0aSBsYWlraW5vIGZhaWxvIChkdW9tZW55cykiCisKKyM6IGxpYi9kcGtnL2J1ZmZlci5jOjE5NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgb24gYnVmZmVyIGNvcHkgZm9yICVzIgorbXNnc3RyICJrbGFpZGEgdnlrZGFudCBidWZmZXJfY29weSAoJXMpIgorCisjOiBsaWIvZHBrZy9idWZmZXIuYzoyMTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCBpbiB3cml0ZSBvbiBidWZmZXIgY29weSBmb3IgJXMiCittc2dzdHIgImtsYWlkYSB2eWtkYW50IGJ1ZmZlcl9jb3B5ICglcykiCisKKyM6IGxpYi9kcGtnL2J1ZmZlci5jOjIyMAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAic2hvcnQgcmVhZCBvbiBidWZmZXIgY29weSBmb3IgJXMiCittc2dzdHIgInBlciBtYcW+YWkgZHVvbWVuxbMgdnlrZGFudCBidWZmZXJfY29weSAoJXMpIgorCisjOiBsaWIvZHBrZy9idWZmZXIuYzoyODgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byBleGVjIHRhciIKK21zZ2lkICJmYWlsZWQgdG8gc2VlayAlcyIKK21zZ3N0ciAibmVwYXZ5a28gxK92eWtkeXRpIHRhciIKKworIzogbGliL2Rwa2cvY29tbWFuZC5jOjE3OCBsaWIvZHBrZy9jb21tYW5kLmM6MjA0IHNyYy9oZWxwLmM6NjIxCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjk4IHNyYy9wcm9jZXNzYXJjLmM6MTM4IHNyYy9wcm9jZXNzYXJjLmM6NDMyCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjgzOSBkcGtnLWRlYi9idWlsZC5jOjQ1OSBkcGtnLWRlYi9idWlsZC5jOjUzOAorIzogZHBrZy1kZWIvYnVpbGQuYzo1NjEgZHBrZy1kZWIvZXh0cmFjdC5jOjMxNyBkcGtnLWRlYi9pbmZvLmM6NjUKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzo2OSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NDU3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZXhlY3V0ZSAlcyAoJXMpIgorbXNnc3RyICJuZXBhdnlrc3RhIMSvdnlrZHl0aSAlcyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzo4MworIywgYy1mb3JtYXQKK21zZ2lkICIlczogZGVjb21wcmVzc2lvbiIKK21zZ3N0ciAiJXM6IGnFoXNwYXVkaW1hcyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzo4OQorIywgYy1mb3JtYXQKK21zZ2lkICIlczogY29tcHJlc3Npb24iCittc2dzdHIgIiVzOiBzdXNwYXVkaW1hcyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yIGJpbmRpbmcgaW5wdXQgdG8gZ3ppcCBzdHJlYW0iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxMjQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHJlYWQgZXJyb3I6ICclcyciCittc2dzdHIgIiVzOiB2aWRpbsSXIGd6aXAga2xhaWRhOiBgJXMnIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjEzMiBsaWIvZHBrZy9jb21wcmVzcy5jOjEzNgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgd3JpdGUgZXJyb3IiCittc2dzdHIgIiVzOiB2aWRpbsSXIGd6aXAga2xhaWRhOiBgJXMnIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE1MAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZXJyb3IgYmluZGluZyBvdXRwdXQgdG8gZ3ppcCBzdHJlYW0iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxNTcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHJlYWQgZXJyb3IiCittc2dzdHIgIiVzOiB2aWRpbsSXIGd6aXAga2xhaWRhOiBgJXMnIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE2NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgd3JpdGUgZXJyb3I6ICclcyciCittc2dzdHIgIiVzOiB2aWRpbsSXIGd6aXAga2xhaWRhOiBgJXMnIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE4MAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgd3JpdGUgZXJyb3I6ICVzIgorbXNnc3RyICIlczogdmlkaW7ElyBnemlwIGtsYWlkYTogYCVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyMjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yIGJpbmRpbmcgaW5wdXQgdG8gYnppcDIgc3RyZWFtIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjMyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgcmVhZCBlcnJvcjogJyVzJyIKK21zZ3N0ciAiJXM6IHZpZGluxJcgYnppcDIga2xhaWRhOiBgJXMnIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI0MCBsaWIvZHBrZy9jb21wcmVzcy5jOjI0NCBsaWIvZHBrZy9jb21wcmVzcy5jOjI5NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIHdyaXRlIGVycm9yIgorbXNnc3RyICIlczogdmlkaW7ElyBiemlwMiBrbGFpZGE6IGAlcyciCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjU4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvciBiaW5kaW5nIG91dHB1dCB0byBiemlwMiBzdHJlYW0iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyNjUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiByZWFkIGVycm9yIgorbXNnc3RyICIlczogdmlkaW7ElyBiemlwMiBrbGFpZGE6IGAlcyciCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6Mjc1IGxpYi9kcGtnL2NvbXByZXNzLmM6Mjg2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgd3JpdGUgZXJyb3I6ICclcyciCittc2dzdHIgIiVzOiB2aWRpbsSXIGJ6aXAyIGtsYWlkYTogYCVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyODIKK21zZ2lkICJ1bmV4cGVjdGVkIGJ6aXAyIGVycm9yIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVwZGF0ZXMgZGlyZWN0b3J5IGNvbnRhaW5zIGZpbGUgYCUuMjUwcycgd2hvc2UgbmFtZSBpcyB0b28gbG9uZyAobGVuZ3RoPSVkLCAiCisibWF4PSVkKSIKK21zZ3N0ciAiIgorImF0bmF1amluaW3FsyBhcGxhbmtlIHlyYSBmYWlsYXMgYCUuMjUwcycgcGVyIGlsZ3UgcGF2YWRpbmltdSAoaWxnaXM9JWQsICIKKyJtYWtzaW1hbGlhaT0lZCkiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVwZGF0ZXMgZGlyZWN0b3J5IGNvbnRhaW5zIGZpbGVzIHdpdGggZGlmZmVyZW50IGxlbmd0aCBuYW1lcyAoYm90aCAlZCBhbmQgJWQpIgorbXNnc3RyICIiCisiYXRuYXVqaW5pbcWzIGFwbGFua2UgeXJhIGZhaWxhaSBzdSBza2lydGluZ8WzIGlsZ2nFsyBwYXZhZGluaW1haXMgKGFidSAlZCBpciAlZCkiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHNjYW4gdXBkYXRlcyBkaXJlY3RvcnkgYCUuMjU1cyciCittc2dzdHIgIm5lcGF2eWtzdGEgcGF0aWtyaW50aSBhdG5hdWppbmltxbMgYXBsYW5rbyBgJS4yNTVzJyB0dXJpbmlvIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVtb3ZlIGluY29ycG9yYXRlZCB1cGRhdGUgZmlsZSAlLjI1NXMiCittc2dzdHIgIm5lcGF2eWtvIHBhxaFhbGludGkgcHJpanVuZ3RvIGF0bmF1amluaW1vIGZhaWxvICUuMjU1cyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxMjEgZHBrZy1kZWIvYnVpbGQuYzo0NDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBgJS4yNTVzJyIKK21zZ3N0ciAibmVwYXZ5a28gc3VrdXJ0aSBgJS4yNTVzJyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxMjUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZpbGwgJS4yNTBzIHdpdGggcGFkZGluZyIKK21zZ3N0ciAibmVwYXZ5a28gdGFycG8gc2ltYm9saWFpcyB1xb5waWxkeXRpICUuMjUwcyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxMjcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoICUuMjUwcyBhZnRlciBwYWRkaW5nIgorbXNnc3RyICJwbyB1xb5waWxkeW1vIG5lcGF2eWtvIGnFoXZhbHl0aSAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTI5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWVrIHRvIHN0YXJ0IG9mICUuMjUwcyBhZnRlciBwYWRkaW5nIgorbXNnc3RyICJwbyB1xb5waWxkeW1vIG5lcGF2eWtvIHN1Z3LEr8W+dGkgxK8gJS4yNTBzIHByYWTFvmnEhSIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxOTUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byBvcGVuIHRtcGZpbGUgZm9yIHZzbnByaW50ZiIKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBsb2NrIGZpbGUgJXMgZm9yIHRlc3RpbmciCittc2dzdHIgIm5lcGF2eWtvIGF0dmVydGkgbGFpa2lubyBmYWlsbyBwcm9ncmFtYWkgdnNucHJpbnRmIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjIyMQorbXNnaWQgInVuYWJsZSB0byBvcGVuL2NyZWF0ZSBzdGF0dXMgZGF0YWJhc2UgbG9ja2ZpbGUiCittc2dzdHIgIm5lcGF2eWtvIHN1a3VydGkvYXR2ZXJ0aSBixatzZW5vcyBkdW9tZW7FsyBiYXrEl3MgdcW+cmFraW5pbW8gZmFpbG8iCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjMxCittc2dpZCAieW91IGRvIG5vdCBoYXZlIHBlcm1pc3Npb24gdG8gbG9jayB0aGUgZHBrZyBzdGF0dXMgZGF0YWJhc2UiCittc2dzdHIgImrFq3MgbmV0dXJpdGUgdGVpc2nFsyBkcGtnIGLFq3Nlbm9zIGR1b21lbsWzIGJhemVpIHXFvnJha2ludGkiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjMzCisjLCBmdXp6eQorI3wgbXNnaWQgInVuYWJsZSB0byBsb2NrIGRwa2cgc3RhdHVzIGRhdGFiYXNlIgorbXNnaWQgImRwa2cgc3RhdHVzIGRhdGFiYXNlIgorbXNnc3RyICJuZXBhdnlrc3RhIHXFvnJha2ludGkgZHBrZyBixatzZW5vcyBkdW9tZW7FsyBiYXrEl3MiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjU3Cittc2dpZCAicmVxdWVzdGVkIG9wZXJhdGlvbiByZXF1aXJlcyBzdXBlcnVzZXIgcHJpdmlsZWdlIgorbXNnc3RyICJwcmHFoW9tYXMgdmVpa3NtYXMgcmVpa2FsYXVqYSBhZG1pbmlzdHJhdG9yaWF1cyBwcml2aWxlZ2lqxbMiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjYyCittc2dpZCAidW5hYmxlIHRvIGFjY2VzcyBkcGtnIHN0YXR1cyBhcmVhIgorbXNnc3RyICJuZXBhdnlrc3RhIHBhc2lla3RpIGRwa2cgYsWrc2Vub3MgdmlldG9zIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjI2NAorbXNnaWQgIm9wZXJhdGlvbiByZXF1aXJlcyByZWFkL3dyaXRlIGFjY2VzcyB0byBkcGtnIHN0YXR1cyBhcmVhIgorbXNnc3RyICJvcGVyYWNpamFpIHJlaWthbGluZ2FzIHByacSXamltYXMiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzA5CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZW1vdmUgbXkgb3duIHVwZGF0ZSBmaWxlICUuMjU1cyIKK21zZ3N0ciAixK92eWtvIGtsYWlkYSDFoWFsaW5hbnQgbWFubyBwYXRpZXMgYXRuYXVqaW5pbW8gZmFpbMSFICUuMjU1cyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJuZcSvbWFub21hIMSvcmHFoXl0aSBhdG5hdWppbnRvcyBgJS4yNTBzJyBixatzZW5vcyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNDkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJuZcSvbWFub21hIGnFoXZhbHl0aSBhdG5hdWppbnRvcyBgJS4yNTBzJyBixatzZW5vcyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHRydW5jYXRlIGZvciB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAibmVwYXZ5a28gbnVraXJwdGkgYCUuMjUwcycgYXRuYXVqaW50b3MgYsWrc2Vub3MiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzUzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmc3luYyB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAibmVwYXZ5a28gxK92eWtkeXRpIGZzeW5jIHN1IGF0bmF1amludGEgYCUuMjUwcycgYsWrc2VuYSIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJuZcSvbWFub21hIHXFvmRhcnl0aSBhdG5hdWppbnRvcyBgJS4yNTBzJyBixatzZW5vcyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgIm5lxK9tYW5vbWEgxK9kaWVndGkgYXRuYXVqaW50b3MgYCUuMjUwcycgYsWrc2Vub3MiCisKKyM6IGxpYi9kcGtnL2Rpci5jOjUwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gcmVhZCBmaWxlZGVzY3JpcHRvciBmbGFncyBmb3IgJS4yNTBzIgorbXNnaWQgInVuYWJsZSB0byBnZXQgZmlsZSBkZXNjcmlwdG9yIGZvciBkaXJlY3RvcnkgJyVzJyIKK21zZ3N0ciAibmVwYXZ5a28gbnVza2FpdHl0aSAlLjI1MHMgZmFpbG8gYXByYcWheW1vIMW+eW3El3MiCisKKyM6IGxpYi9kcGtnL2Rpci5jOjU0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBkaXJlY3RvcnkgJyVzJyIKK21zZ3N0ciAibmVwYXZ5a28gdcW+dmVydGkgJXM6ICVzIgorCisjOiBsaWIvZHBrZy9kaXIuYzo2OSBsaWIvZHBrZy9kaXIuYzoxMzEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICJuZXBhdnlrbyB1xb52ZXJ0aSAlczogJXMiCisKKyM6IGxpYi9kcGtnL2Rpci5jOjEwOSBzcmMvZGl2ZXJ0Y21kLmM6MjE4IGRwa2ctc3BsaXQvc3BsaXQuYzoyMDIKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjkzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBmaWxlICclcyciCittc2dzdHIgIm5lcGF2eWtvIHXFvnZlcnRpICVzOiAlcyIKKworIzogbGliL2Rwa2cvZGlyLmM6MTExIHNyYy9kaXZlcnRjbWQuYzoyMzIgc3JjL2RpdmVydGNtZC5jOjM3NworIzogc3JjL3N0YXRjbWQuYzoyMTcgZHBrZy1kZWIvYnVpbGQuYzo1OTggZHBrZy1zcGxpdC9qb2luLmM6NjUKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxODcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE0MDYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzeW5jIGZpbGUgJyVzJyIKK21zZ3N0ciAibmVwYXZ5a28gdcW+dmVydGkgJXM6ICVzIgorCisjOiBsaWIvZHBrZy9kaXIuYzoxMTMgc3JjL2RpdmVydGNtZC5jOjIzNCBzcmMvZGl2ZXJ0Y21kLmM6Mzc5CisjOiBkcGtnLWRlYi9idWlsZC5jOjYwMCBkcGtnLXNwbGl0L2pvaW4uYzo2NyBkcGtnLXNwbGl0L3F1ZXVlLmM6MTg5CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTMxNCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTQwOAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIGZpbGUgJyVzJyIKK21zZ3N0ciAibmXEr21hbm9tYSBpxaF2YWx5dGkgdnNucHJpbnRmIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6Mzk2CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB3cml0ZSBkZXRhaWxzIG9mIGAlLjUwcycgdG8gYCUuMjUwcyciCittc2dzdHIgIm5lcGF2eWtvIMSvcmHFoXl0aSBgJS41MHMnIGFwcmHFoXltbyDEryBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQyMworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gJyVzJyBmb3Igd3JpdGluZyAlcyBkYXRhYmFzZSIKK21zZ3N0ciAibmVwYXZ5a28gYXR2ZXJ0aSBgJS4yNTBzJyBpbmZvcm1hY2lqb3MgYXBpZSAlcyDEr3JhxaF5bXVpIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDI2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IGJ1ZmZlcmluZyBvbiAlcyBkYXRhYmFzZSBmaWxlIgorbXNnc3RyICJuZXBhdnlrbyBixatzZW5vcyBmYWlsdWkgbnVzdGF0eXRpIGJ1ZmVyaXphdmltbyIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQzOAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlICVzIGRhdGFiYXNlIHJlY29yZCBhYm91dCAnJS41MHMnIHRvICclLjI1MHMnIgorbXNnc3RyICJuZXBhdnlrbyDEr3JhxaF5dGkgJXMgxK9yYcWhbyBhcGllIGAlLjUwcycgxK8gYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NDYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBmbHVzaCAlcyBkYXRhYmFzZSB0byAnJS4yNTBzJyIKK21zZ3N0ciAibmVwYXZ5a28gacWhdmFseXRpIGluZm9ybWFjaWpvcyBhcGllICVzIGt1cmkgYnV2byBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ0OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZzeW5jICVzIGRhdGFiYXNlIHRvICclLjI1MHMnIgorbXNnc3RyICJuZXBhdnlrbyDEr3Z5a2R5dGkgZnN5bmMgJXMgc3UgYXRuYXVqaW50YSBgJS4yNTBzJyBixatzZW5hIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDUxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2xvc2UgJyUuMjUwcycgYWZ0ZXIgd3JpdGluZyAlcyBkYXRhYmFzZSIKK21zZ3N0ciAibmVwYXZ5a28gdcW+ZGFyeXRpIGAlLjI1MHMnIHBvICVzIGluZm9ybWFjaWpvcyDEr3JhxaF5bW8iCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NTUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBsaW5rICclLjI1MHMnIHRvICclLjI1MHMnIGZvciBiYWNrdXAgb2YgJXMgZGF0YWJhc2UiCittc2dzdHIgIm5lcGF2eWtvIHN1c2lldGkgYCUuMjUwcycgc3UgYCUuMjUwcyBpbmZvcm1hY2lqb3MgYXBpZSAlcyBpxaFzYXVnb2ppbXVpIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDU4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gaW5zdGFsbCAnJS4yNTBzJyBhcyAnJS4yNTBzJyBjb250YWluaW5nICVzIGRhdGFiYXNlIgorbXNnc3RyICJuZXBhdnlrbyDEr2RpZWd0aSBgJS4yNTBzJyBrYWlwIGAlLjI1MHMnIGt1cmlhbWUgeXJhICVzIGluZm9ybWFjaWphIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6OTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiB1bnJlY292ZXJhYmxlIGZhdGFsIGVycm9yLCBhYm9ydGluZzpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MTAwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogb3V0c2lkZSBlcnJvciBjb250ZXh0LCBhYm9ydGluZzpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MTIwCisjLCBmdXp6eQorI3wgbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBjbGVhbnVwIGVudHJ5IgorbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBlcnJvciBjb250ZXh0IgorbXNnc3RyICJwcml0csWra28gYXRtaW50aWVzIHZ5a2RhbnQgdmFseW3EhSBuYXVqYW0gxK9yYcWhdWkiCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoxODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBlcnJvciB3aGlsZSBjbGVhbmluZyB1cDpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorIiVzOiBrbGFpZGEgdmFsYW50OlxuIgorIiAlc1xuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MjAxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJkcGtnOiB0b28gbWFueSBuZXN0ZWQgZXJyb3JzIGR1cmluZyBlcnJvciByZWNvdmVyeSAhIVxuIgorbXNnaWQgIiVzOiB0b28gbWFueSBuZXN0ZWQgZXJyb3JzIGR1cmluZyBlcnJvciByZWNvdmVyeSEhXG4iCittc2dzdHIgImRwa2c6IHRvbyBtYW55IG5lc3RlZCBlcnJvcnMgZHVyaW5nIGVycm9yIHJlY292ZXJ5ICEhXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoyNjggbGliL2Rwa2cvZWhhbmRsZS5jOjMwNworbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBjbGVhbnVwIGVudHJ5IgorbXNnc3RyICJwcml0csWra28gYXRtaW50aWVzIHZ5a2RhbnQgdmFseW3EhSBuYXVqYW0gxK9yYcWhdWkiCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoyOTEKK21zZ2lkICJvdXQgb2YgbWVtb3J5IGZvciBuZXcgY2xlYW51cCBlbnRyeSB3aXRoIG1hbnkgYXJndW1lbnRzIgorbXNnc3RyICJwcml0csWra28gYXRtaW50aWVzIHZ5a2RhbnQgdmFseW3EhSBuYXVqYW0gxK9yYcWhdWkgc3UgZGF1ZyBwYXJhbWV0csWzIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MzUyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogZXJyb3I6ICVzXG4iCittc2dzdHIgIiIKKyIlczoga2xhaWRhIHZhbGFudDpcbiIKKyIgJXNcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjM5MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IHdhcm5pbmc6ICVzXG4iCittc2dzdHIgIiIKKyIlczoga2xhaWRhIHZhbGFudDpcbiIKKyIgJXNcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjQxNgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6JXM6JWQ6IGludGVybmFsIGVycm9yOiAlc1xuIgorbXNnc3RyICIlczolZDogdmlkaW7ElyBgJXMnIGtsYWlkYVxuIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBpcyBtaXNzaW5nIgorbXNnc3RyICJ0csWra3N0YSAlcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImAlLipzJyBpcyBub3QgYWxsb3dlZCBmb3IgJXMiCittc2dpZCAiJyUuNTBzJyBpcyBub3QgYWxsb3dlZCBmb3IgJXMiCittc2dzdHIgImAlLipzJyB5cmEgbmVsZWlkxb5pYW1hcyBuYXVkb2phbnQgJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjczCisjLCBjLWZvcm1hdAorbXNnaWQgImp1bmsgYWZ0ZXIgJXMiCittc2dzdHIgIsWhaXVrxaFsxJdzIHXFviAlcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6ODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBwYWNrYWdlIG5hbWUgKCUuMjUwcykiCittc2dzdHIgImtsYWlkaW5nYXMgcGFrZXRvIHBhdmFkaW5pbWFzICglLjI1MHMpIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZW1wdHkgZmlsZSBkZXRhaWxzIGZpZWxkIGAlcyciCittc2dzdHIgInR1xaHEjWlhcyBmYWlsbyBkZXRhbGnFsyBsYXVrZWxpcyBgJXMnIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBkZXRhaWxzIGZpZWxkIGAlcycgbm90IGFsbG93ZWQgaW4gc3RhdHVzIGZpbGUiCittc2dzdHIgImZhaWxvIGRldGFsacWzIGxhdWtlbGlzIGAlcycgbmVsZWlkxb5pYW1hcyBixatzZW5vcyBmYWlsZSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTE4CisjLCBjLWZvcm1hdAorbXNnaWQgInRvbyBtYW55IHZhbHVlcyBpbiBmaWxlIGRldGFpbHMgZmllbGQgYCVzJyAoY29tcGFyZWQgdG8gb3RoZXJzKSIKK21zZ3N0ciAicGVyIGRhdWcgcmVpa8WhbWnFsyBmYWlsbyBkZXRhbGnFsyBsYXVrZWx5amUgYCVzJyAocGFseWdpbnVzIHN1IGtpdGFpcykiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjEzMgorIywgYy1mb3JtYXQKK21zZ2lkICJ0b28gZmV3IHZhbHVlcyBpbiBmaWxlIGRldGFpbHMgZmllbGQgYCVzJyAoY29tcGFyZWQgdG8gb3RoZXJzKSIKK21zZ3N0ciAicGVyIG1hxb5haSByZWlrxaFtacWzIGZhaWxvIGRldGFsacWzIGxhdWtlbHlqZSBgJXMnIChwYWx5Z2ludXMgc3Uga2l0YWlzKSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTU0Cittc2dpZCAieWVzL25vIGluIGJvb2xlYW4gZmllbGQiCittc2dzdHIgInRhaXAvbmUgYm9vbGVhbiBsYXVrZWx5amUiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE3NAorbXNnaWQgIndvcmQgaW4gYHByaW9yaXR5JyBmaWVsZCIKK21zZ3N0ciAicGFuYXVkb3RhcyDFvm9kaXMgbGF1a2VseWplIGBwcmlvcml0eSciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE4NgorbXNnaWQgInZhbHVlIGZvciBgc3RhdHVzJyBmaWVsZCBub3QgYWxsb3dlZCBpbiB0aGlzIGNvbnRleHQiCittc2dzdHIgIsWhaXRhbWUga29udGVrc3RlLCBgc3RhdHVzJyBsYXVrZWx5amUgeXJhIG5lbGVpZMW+aWFtYSByZWlrxaFtxJciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE5MQorbXNnaWQgImZpcnN0ICh3YW50KSB3b3JkIGluIGBzdGF0dXMnIGZpZWxkIgorbXNnc3RyICJwaXJtYXMgKHRyxatrdW1hcykgxb5vZGlzIFwiYsWrc2VuYVwiIGxhdWtlIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxOTQKK21zZ2lkICJzZWNvbmQgKGVycm9yKSB3b3JkIGluIGBzdGF0dXMnIGZpZWxkIgorbXNnc3RyICJhbnRyYXMgKGtsYWlkYSkgxb5vZGlzIFwiYsWrc2VuYVwiIGxhdWtlIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxOTcKK21zZ2lkICJ0aGlyZCAoc3RhdHVzKSB3b3JkIGluIGBzdGF0dXMnIGZpZWxkIgorbXNnc3RyICJ0cmXEjWlhcyAoYsWrc2VuYSkgxb5vZGlzIFwiYsWrc2VuYVwiIGxhdWtlIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyMDcKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImVycm9yIGluIFZlcnNpb24gc3RyaW5nIGAlLjI1MHMnOiAlLjI1MHMiCittc2dpZCAiZXJyb3IgaW4gVmVyc2lvbiBzdHJpbmcgJyUuMjUwcyciCittc2dzdHIgImtsYWlkYSB2ZXJzaWpvcyBzZWtvamUgYCUuMjUwcyc6ICUuMjUwcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjE4Cittc2dpZCAib2Jzb2xldGUgYFJldmlzaW9uJyBvciBgUGFja2FnZS1SZXZpc2lvbicgZmllbGQgdXNlZCIKK21zZ3N0ciAicGFuYXVkb3RhcyBwYXNlbsSZcyBgUmV2aXNpb24nIGFyYmEgYFBhY2thZ2UtUmV2aXNpb24nIGxhdWthcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjM1Cittc2dpZCAidmFsdWUgZm9yIGBjb25maWctdmVyc2lvbicgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICJyZWnFoW3ElyBgY29uZmlnLXZlcnNpb24nIGxhdWt1aSBuZWxlaWTFvmlhbWEgxaFpYW1lIGtvbnRla3N0ZSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjQwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJlcnJvciBpbiBDb25maWctVmVyc2lvbiBzdHJpbmcgYCUuMjUwcyc6ICUuMjUwcyIKK21zZ2lkICJlcnJvciBpbiBDb25maWctVmVyc2lvbiBzdHJpbmcgJyUuMjUwcyciCittc2dzdHIgImtsYWlkYSBDb25maWctVmVyc2lvbiBzZWtvamUgYCUuMjUwcyc6ICUuMjUwcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjY2CisjLCBjLWZvcm1hdAorbXNnaWQgInZhbHVlIGZvciBgY29uZmZpbGVzJyBoYXMgbWFsZm9ybWF0dGVkIGxpbmUgYCUuKnMnIgorbXNnc3RyICJgY29uZmZpbGVzJyByZWlrxaFtxJcgdHVyaSBuZXRhaXN5a2xpbmfEhSBlaWx1dMSZIGAlLipzJyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6Mjg3CisjLCBjLWZvcm1hdAorbXNnaWQgInZhbHVlIGZvciBgY29uZmZpbGVzJyBoYXMgbGluZSBzdGFydGluZyB3aXRoIG5vbi1zcGFjZSBgJWMnIgorbXNnc3RyICJgY29uZmZpbGVzJyByZWlrxaFtxJdqZSB5cmEgZWlsdXTElyBwcmFzaWRlZGFudGkgYmUgdGFycG8gYCVjJyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MzA0Cittc2dpZCAicm9vdCBvciBudWxsIGRpcmVjdG9yeSBpcyBsaXN0ZWQgYXMgYSBjb25mZmlsZSIKK21zZ3N0ciAia2FpcCBrb25maWfFq3JhY2lqb3MgZmFpbGFzIG51cm9keXRhcyDFoWFrbmluaXMgYXJiYSB0dcWhxI1pYXMgYXBsYW5rYXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjM2NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgbWlzc2luZyBwYWNrYWdlIG5hbWUsIG9yIGdhcmJhZ2Ugd2hlcmUgcGFja2FnZSBuYW1lIGV4cGVjdGVkIgorbXNnc3RyICJsYXVrZWx5amUgYCVzJywgdHLFq2tzdGEgcGFrZXRvIHBhdmFkaW5pbW8sIGFyYmEgdmlldG9qIGpvIMWhaXVrxaFsxJdzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzozNzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBmaWVsZCwgaW52YWxpZCBwYWNrYWdlIG5hbWUgYCUuMjU1cyc6ICVzIgorbXNnc3RyICJsYXVrZWx5amUgYCVzJywgbmVrb3Jla3RpxaFrYXMgcGFrZXRvIHBhdmFkaW5pbWFzIGAlLjI1NXMnOiAlcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDA2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6XG4iCisiIGJhZCB2ZXJzaW9uIHJlbGF0aW9uc2hpcCAlYyVjIgorbXNnc3RyICIiCisibGF1a2VseWplIGAlcycgLCBzYWl0YXMgxK8gYCUuMjU1cyc6XG4iCisiIGJsb2dpIHZlcnNpasWzIHNhbnR5a2lhaSAlYyVjIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgYCVjJyBpcyBvYnNvbGV0ZSwgdXNlIGAlYz0nIG9yIGAlYyVjJyBpbnN0ZWFkIgorbXNnc3RyICIiCisibGF1a2VseWplIGAlcycgLCBzYWl0YXMgxK8gYCUuMjU1cyc6XG4iCisiIGAlYycgeXJhIG5lYmVuYXVkb2phbWFzLCB2aWV0b2ogam8gbmF1ZG9raXRlIGAlYz0nIGFyYmEgYCVjJWMnIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgaW1wbGljaXQgZXhhY3QgbWF0Y2ggb24gdmVyc2lvbiBudW1iZXIsIHN1Z2dlc3QgdXNpbmcgYD0nIGluc3RlYWQiCittc2dzdHIgIiIKKyJsYXVrZWx5amUgYCVzJyAsIHNhaXRhcyDEryBgJS4yNTVzJzpcbiIKKyIgcHJpdmFsb21hcyB0YW0gdGlrcmFzIHZlcnNpam9zIG51bWVyaXMsIHBhdGFyaWFtYSBuYXVkb3RpIGA9JyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDMwCittc2dpZCAiT25seSBleGFjdCB2ZXJzaW9ucyBtYXkgYmUgdXNlZCBmb3IgUHJvdmlkZXMiCittc2dzdHIgIiIKKyJOYXVkb2phbnQgYFRlaWtpYScgKFByb3ZpZGVzKSwgZ2FsaSBixat0aSBuYXVkb2phbWkgdGlrIHRhbSB0aWtyaSB2ZXJzaWrFsyAiCisibnVtZXJpYWkiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQzNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOlxuIgorIiB2ZXJzaW9uIHZhbHVlIHN0YXJ0cyB3aXRoIG5vbi1hbHBoYW51bWVyaWMsIHN1Z2dlc3QgYWRkaW5nIGEgc3BhY2UiCittc2dzdHIgIiIKKyJsYXVrZWx5amUgYCVzJyAsIHNhaXRhcyDEryBgJS4yNTVzJzpcbiIKKyIgdmVyc2lqb3MgcmVpa8WhbcSXIHByYXNpZGVkYSBuZSBza2FpxI1pdW1pIGFyIHJhaWRlLCBwYXRhcmlhbWEgcHJpZMSXdGkgdGFycG8gIgorInNpbWJvbMSvIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NTEgbGliL2Rwa2cvZmllbGRzLmM6NDU1CisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzogdmVyc2lvbiBjb250YWlucyBgJWMnIgorbXNnc3RyICJsYXVrZWx5amVgJXMnLCBudW9yb2RvamUgxK8gYCUuMjU1cyc6IHZlcnNpamEgYCVjJyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDU5CisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzogdmVyc2lvbiB1bnRlcm1pbmF0ZWQiCittc2dzdHIgImxhdWtlbHlqZWAlcycsIG51b3JvZG9qZSDEryBgJS4yNTVzJzogbmV1xb5iYWlndGEgdmVyc2lqYSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDY1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6IGVycm9yIGluIHZlcnNpb246ICUuMjU1cyIKK21zZ2lkICInJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gJyUuMjU1cyc6IGVycm9yIGluIHZlcnNpb24iCittc2dzdHIgImxhdWtlbHlqZWAlcycsIG51b3JvZG9qZSDEryBgJS4yNTVzJzoga2xhaWRhIHZlcnNpam9qZTogJS4yNTVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBmaWVsZCwgc3ludGF4IGVycm9yIGFmdGVyIHJlZmVyZW5jZSB0byBwYWNrYWdlIGAlLjI1NXMnIgorbXNnc3RyICJsYXVrZWx5amUgYCVzJywgcG8gbnVvcm9kb3MgxK8gcGFrZXTEhSBgJS4yNTVzJyB5cmEgc2ludGFrc8SXcyBrbGFpZGEiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ4MgorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZXMgKGB8Jykgbm90IGFsbG93ZWQgaW4gJXMgZmllbGQiCittc2dzdHIgImxhdWtlbHlqZSAlcyBuZWxlaXN0aW5hcyBhbHRlcm5hdHl2dXMgKGB8JykiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjUzNgorIywgZnV6enkKK21zZ2lkICJ2YWx1ZSBmb3IgYHRyaWdnZXJzLXBlbmRpbmcnIGZpZWxkIG5vdCBhbGxvd2VkIGluIHRoaXMgY29udGV4dCIKK21zZ3N0ciAicmVpxaFtxJcgYGNvbmZpZy12ZXJzaW9uJyBsYXVrdWkgbmVsZWlkxb5pYW1hIMWhaWFtZSBrb250ZWtzdGUiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU0MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiaWxsZWdhbCBwZW5kaW5nIHRyaWdnZXIgbmFtZSBgJS4yNTVzJzogJXMiCittc2dzdHIgImxhdWtlbHlqZSBgJXMnLCBuZWtvcmVrdGnFoWthcyBwYWtldG8gcGF2YWRpbmltYXMgYCUuMjU1cyc6ICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHBlbmRpbmcgdHJpZ2dlciBgJS4yNTVzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NjEKKyMsIGZ1enp5Cittc2dpZCAidmFsdWUgZm9yIGB0cmlnZ2Vycy1hd2FpdGVkJyBmaWVsZCBub3QgYWxsb3dlZCBpbiB0aGlzIGNvbnRleHQiCittc2dzdHIgIsWhaXRhbWUga29udGVrc3RlLCBgc3RhdHVzJyBsYXVrZWx5amUgeXJhIG5lbGVpZMW+aWFtYSByZWlrxaFtxJciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU2OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiaWxsZWdhbCBwYWNrYWdlIG5hbWUgaW4gYXdhaXRlZCB0cmlnZ2VyIGAlLjI1NXMnOiAlcyIKK21zZ3N0ciAibmVrb3Jla3RpxaFrYXMgcGFrZXRvIHZhcmRhcyBlaWx1dMSXamUgJWQ6ICUuMjUwcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTc0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgYXdhaXRlZCB0cmlnZ2VyIHBhY2thZ2UgYCUuMjU1cyciCittc2dzdHIgIlBha2V0byDigJ4lLjI1MHPigJwgZmFpbMWzIHPEhXJhxaFhcyIKKworIzogbGliL2Rwa2cvZmlsZS5jOjUxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBzb3VyY2UgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAibmVwYXZ5a28gcGF0aWtyaW50aSBraXRvIG5hdWpvIGZhaWxvIOKAniUuMjUwc+KAnCIKKworIzogbGliL2Rwa2cvZmlsZS5jOjU1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hhbmdlIG93bmVyc2hpcCBvZiB0YXJnZXQgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAibmVwYXZ5a28gcGFrZWlzdGkgc2F2aW5pbmtvIG5hdWphbSBrb25maWfFq3JhY2lqb3MgZmFpbHVpIOKAniUuMjUwc+KAnCIKKworIzogbGliL2Rwa2cvZmlsZS5jOjU5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IG1vZGUgb2YgdGFyZ2V0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgIm5lcGF2eWtvIG51c3RhdHl0aSByZcW+aW1vIG5hdWphbSBrb25maWfFq3JhY2lqb3MgZmFpbHVpIOKAniUuMjUwc+KAnCIKKworIzogbGliL2Rwa2cvZmlsZS5jOjg1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gY2xvc2UgJXM6ICVzIgorbXNnaWQgInVuYWJsZSB0byB1bmxvY2sgJXMiCittc2dzdHIgIm5lcGF2eWtvIHXFvnZlcnRpICVzOiAlcyIKKworIzogbGliL2Rwa2cvZmlsZS5jOjExMQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoZWNrIGZpbGUgJyVzJyBsb2NrIHN0YXR1cyIKK21zZ3N0ciAibmVwYXZ5a28gdcW+dmVydGkgJXM6ICVzIgorCisjOiBsaWIvZHBrZy9maWxlLmM6MTQ2CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJzdGF0dXMgZGF0YWJhc2UgYXJlYSBpcyBsb2NrZWQgYnkgYW5vdGhlciBwcm9jZXNzIgorbXNnaWQgIiVzIGlzIGxvY2tlZCBieSBhbm90aGVyIHByb2Nlc3MiCittc2dzdHIgImtpdGFzIHByb2Nlc2FzIHlyYSB1xb5yYWtpbsSZcyBixatzZW5vcyBkdW9tZW7FsyBiYXrEmSIKKworIzogbGliL2Rwa2cvZmlsZS5jOjE0OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIGNsb3NlICVzOiAlcyIKK21zZ2lkICJ1bmFibGUgdG8gbG9jayAlcyIKK21zZ3N0ciAibmVwYXZ5a28gdcW+dmVydGkgJXM6ICVzIgorCisjOiBsaWIvZHBrZy9sb2cuYzo1MworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBvcGVuIGxvZyBgJXMnOiAlc1xuIgorbXNnc3RyICJuZWdhbMSXamF1IGF0aWRhcnl0aSDFvnVybmFsbyBgJXMnOiAlc1xuIgorCisjOiBsaWIvZHBrZy9sb2cuYzo4NQorbXNnaWQgIjxwYWNrYWdlIHN0YXR1cyBhbmQgcHJvZ3Jlc3MgZmlsZSBkZXNjcmlwdG9yPiIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9sb2cuYzoxMTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSB0byBzdGF0dXMgZmQgJWQiCittc2dzdHIgIm5lxK9tYW5vbWEgxK9yYcWheXRpIGF0bmF1amludG9zIGAlLjI1MHMnIGLFq3Nlbm9zIgorCisjOiBsaWIvZHBrZy9tbGliLmM6NDQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAibWFsbG9jIGZhaWxlZCAoJWxkIGJ5dGVzKSIKK21zZ2lkICJtYWxsb2MgZmFpbGVkICglenUgYnl0ZXMpIgorbXNnc3RyICJuZXBhdnlrbyBpxaFza2lydGkgbWFsbG9jIGF0bWludGllcyAoJWxkIGJhaXRhaSkiCisKKyM6IGxpYi9kcGtnL21saWIuYzo1OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAicmVhbGxvYyBmYWlsZWQgKCVsZCBieXRlcykiCittc2dpZCAicmVhbGxvYyBmYWlsZWQgKCV6dSBieXRlcykiCittc2dzdHIgIm5lcGF2eWtvIHBlcmtlbHRpIG1hbGxvYyBhdG1pbnRpZXMgKCVsZCBiYWl0YWkpIgorCisjOiBsaWIvZHBrZy9tbGliLmM6NzIgbGliL2Rwa2cvbWxpYi5jOjkwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNzcKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzozMzQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMDcKKyMsIGZ1enp5Cittc2dpZCAiZmFpbGVkIHRvIGFsbG9jYXRlIG1lbW9yeSIKK21zZ3N0ciAibmVwYXZ5a28gc3VrdXJ0aSBhcGxhbmtvIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBkdXAgZm9yIHN0ZCVzIgorbXNnc3RyICJuZXBhdnlrbyBpdnlrZHl0aSBkdXAgc3Ugc3RkJXMiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGR1cCBmb3IgZmQgJWQiCittc2dzdHIgIm5lcGF2eWtvIGl2eWtkeXRpIGR1cCBzdSBmZCAlZCIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEwOQorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgcGlwZSIKK21zZ3N0ciAibmVwYXZ5a28gc3VrdXJ0aSBzcmF1dG8iCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMTcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHdyaXRpbmcgdG8gJyVzJyIKK21zZ3N0ciAia2xhaWRhIGAlcycgcmHFoXltZSIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBmaWxlZGVzY3JpcHRvciBmbGFncyBmb3IgJS4yNTBzIgorbXNnc3RyICJuZXBhdnlrbyBudXNrYWl0eXRpICUuMjUwcyBmYWlsbyBhcHJhxaF5bW8gxb55bcSXcyIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEyNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IGNsb3NlLW9uLWV4ZWMgZmxhZyBmb3IgJS4yNTBzIgorbXNnc3RyICJuZXBhdnlrbyAlLjI1MHMgbnVzdGF0eXRpIHXFvmRhcnl0aS3Er3Z5a2TFvml1cyDFvnltxJdzIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6NjMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImNvbmZpZ3VyYXRpb24gZXJyb3I6ICVzOiVkOiAlcyIKK21zZ3N0ciAia29uZmlnxatyYXZpbW8ga2xhaWRhOiAlcyB0csWra3N0YSByZWlrxaFtxJdzIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6NzUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuIGNvbmZpZ3VyYXRpb24gZmlsZSAnJS4yNTVzJyBmb3IgcmVhZGluZzogJXMiCittc2dzdHIgIm5lcGF2eWtvIGF0dmVydGkgYCUuMjU1cycga29uZmlnxatyYWNpbmlvIGZhaWxvIHNrYWl0eW11aSIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmJhbGFuY2VkIHF1b3RlcyBpbiAnJXMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMTcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gb3B0aW9uICclcyciCittc2dzdHIgIm5lxb5pbm9tYXMgLS0lcyBwYXJhbWV0cmFzIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTIxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICInJXMnIG5lZWRzIGEgdmFsdWUiCittc2dzdHIgInBhcmFtZXRydWkgLS0lcyByZWlrYWxpbmdhIHJlaWvFoW3ElyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjEyNworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBkb2VzIG5vdCB0YWtlIGEgdmFsdWUiCittc2dzdHIgInBhcmFtZXRydWkgLS0lcyBuZXJlaWthbGluZ2EgcmVpa8WhbcSXIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTMzCisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWQgZXJyb3IgaW4gY29uZmlndXJhdGlvbiBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICJudXNrYWl0eW1vIGtsYWlkYSBrb25maWfFq3JhY2lqb3MgZmFpbGUgIGAlLjI1NXMnIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgY29uZmlndXJhdGlvbiBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICJrbGFpZGEgdcW+ZGFyYW50IGAlLjI1NXMnIGtvbmZpZ8WrcmFjaWpvcyBmYWlsxIUiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxNzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImVycm9yIG9wZW5pbmcgY29uZmlndXJhdGlvbiBkaXJlY3RvcnkgJyVzJyIKK21zZ3N0ciAia2xhaWRhIHXFvmRhcmFudCBgJS4yNTVzJyBrb25maWfFq3JhY2lqb3MgZmFpbMSFIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjI4CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gb3B0aW9uIC0tJXMiCittc2dzdHIgIm5lxb5pbm9tYXMgLS0lcyBwYXJhbWV0cmFzIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgb3B0aW9uIHRha2VzIGEgdmFsdWUiCittc2dzdHIgInBhcmFtZXRydWkgLS0lcyByZWlrYWxpbmdhIHJlaWvFoW3ElyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjIzNworIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG9wdGlvbiBkb2VzIG5vdCB0YWtlIGEgdmFsdWUiCittc2dzdHIgInBhcmFtZXRydWkgLS0lcyBuZXJlaWthbGluZ2EgcmVpa8WhbcSXIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gb3B0aW9uIC0lYyIKK21zZ3N0ciAibmXFvmlub21hcyBwYXJhbWV0cmFzIC0lYyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI1MAorIywgYy1mb3JtYXQKK21zZ2lkICItJWMgb3B0aW9uIHRha2VzIGEgdmFsdWUiCittc2dzdHIgIi0lYyBwYXNpcmlua2ltdWkgcmVpa2FsaW5nYSByZWlrxaFtxJciCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiLSVjIG9wdGlvbiBkb2VzIG5vdCB0YWtlIGEgdmFsdWUiCittc2dzdHIgIi0lYyBwYXNpcmlua2ltdWkgcmVpa8WhbcSXIG5lcmVpa2FsaW5nYSIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI3MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAib2Jzb2xldGUgb3B0aW9uICctLSVzJ1xuIgorbXNnc3RyICLErnNwxJdqaW1hczogcGFyYW1ldHJhcyDigJ4tLSVz4oCcIG5lYmVuYXVkb3RpbmFzXG4iCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmxpY3RpbmcgYWN0aW9ucyAtJWMgKC0tJXMpIGFuZCAtJWMgKC0tJXMpIgorbXNnc3RyICJrb25mbGlrdHVvamFudHlzIHZlaWtzbWFpIC0lYyAoLS0lcykgaXIgLSVjICgtLSVzKSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHZhbHVlIGZvciBgJXMnIGZpZWxkIgorbXNnc3RyICJwYXNpa2FydG9qYW50aSBgJXMnIGxhdWtlbGlvIHJlaWvFoW3ElyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoxNDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidXNlci1kZWZpbmVkIGZpZWxkIG5hbWUgYCUuKnMnIHRvbyBzaG9ydCIKK21zZ3N0ciAidmFydG90b2pvIG51cm9keXRhcyBsYXVrZWxpbyBwYXZhZGluaW1hcyBgJS4qcycgLSBwZXIgdHJ1bXBhcyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoxNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHZhbHVlIGZvciB1c2VyLWRlZmluZWQgZmllbGQgYCUuKnMnIgorbXNnc3RyICJwYXNpa2FydG9qYW50aSByZWlrxaFtxJcgdmFydG90b2pvIG51cm9keXRhbWUgYCUuKnMnIGxhdWtlbHlqZSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMDcKK21zZ2lkICJDb25maWd1cmVkLVZlcnNpb24gZm9yIHBhY2thZ2Ugd2l0aCBpbmFwcHJvcHJpYXRlIFN0YXR1cyIKK21zZ3N0ciAiU3Vrb25maWfFq3J1b3RhIHZlcnNpamEgcGFrZXR1aSBzdSBuZXByaWltdGluYSBixatzZW5hIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjIxOAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGhhcyBzdGF0dXMgJXMgYnV0IHRyaWdnZXJzIGFyZSBhd2FpdGVkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjIyCittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzIHRyaWdnZXJzLWF3YWl0ZWQgYnV0IG5vIHRyaWdnZXJzIGF3YWl0ZWQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzICVzIGJ1dCB0cmlnZ2VycyBhcmUgcGVuZGluZyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjIzMgorbXNnaWQgInBhY2thZ2UgaGFzIHN0YXR1cyB0cmlnZ2Vycy1wZW5kaW5nIGJ1dCBubyB0cmlnZ2VycyBwZW5kaW5nIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjQyCittc2dpZCAiUGFja2FnZSB3aGljaCBpbiBzdGF0ZSBub3QtaW5zdGFsbGVkIGhhcyBjb25mZmlsZXMsIGZvcmdldHRpbmcgdGhlbSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjMzNQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiBwYWNrYWdlIGluZm8gZmlsZSBgJS4yNTVzJyBmb3IgcmVhZGluZyIKK21zZ3N0ciAibmVwYXZ5a28gYXR2ZXJ0aSBza2FpdHltdWkgcGFrZXRvIGluZm9ybWFjaWpvcyBmYWlsbyBgJS4yNTVzJyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozNDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2FuJ3Qgc3RhdCBwYWNrYWdlIGluZm8gZmlsZSBgJS4yNTVzJyIKK21zZ3N0ciAibmVwYXZ5a28gcGF0aWtyaW50aSBwYWtldG8gaW5mb3JtYWNpam9zIGZhaWxvIOKAniUuMjU1c+KAnCIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozNDcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImNhbid0IG1tYXAgcGFja2FnZSBpbmZvIGZpbGUgYCUuMjU1cyciCittc2dzdHIgIm5lxK9tYW5vbWEgbW1hcCBwYWtldG8gaW5mbyBmYWlsbyBgJS4yNTVzJyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozNTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImNhbid0IHN0YXQgcGFja2FnZSBpbmZvIGZpbGUgYCUuMjU1cyciCittc2dpZCAicmVhZGluZyBwYWNrYWdlIGluZm8gZmlsZSAnJS4yNTVzJyIKK21zZ3N0ciAibmVwYXZ5a28gcGF0aWtyaW50aSBwYWtldG8gaW5mb3JtYWNpam9zIGZhaWxvIOKAniUuMjU1c+KAnCIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNsb3NlIGFmdGVyIHJlYWQ6IGAlLjI1NXMnIgorbXNnc3RyICJwbyBudXNrYWl0eW1vIG5lcGF2eWtvIHXFvmRhcnl0aSBgJS4yNTVzJyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiRU9GIGFmdGVyIGZpZWxkIG5hbWUgYCUuKnMnIgorbXNnc3RyICJyYXN0YSBmYWlsbyBwYWJhaWdvcyDFvnltxJcgcG8gbGF1a2VsaW8g4oCeJS4qc+KAnCIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MDcKKyMsIGMtZm9ybWF0Cittc2dpZCAibmV3bGluZSBpbiBmaWVsZCBuYW1lIGAlLipzJyIKK21zZ3N0ciAibmF1am9zIGVpbHV0xJdzIMW+eW3ElyBsYXVrZWx5amUgYCUuKnMnIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQxMAorIywgYy1mb3JtYXQKK21zZ2lkICJNU0RPUyBFT0YgKF5aKSBpbiBmaWVsZCBuYW1lIGAlLipzJyIKK21zZ3N0ciAiTVNET1MgZmFpbG8gcGFiYWlnb3Mgxb55bcSXICheWikgbGF1a2VsaW8gdmFyZGUg4oCeJS4qc+KAnCIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmllbGQgbmFtZSBgJS4qcycgbXVzdCBiZSBmb2xsb3dlZCBieSBjb2xvbiIKK21zZ3N0ciAicG8gbGF1a2VsaW8gcGF2YWRpbmltbyBgJS4qcycgYsWrdGluYWkgdHVyaSBixat0aSBrYWJsZWxpcyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiRU9GIGJlZm9yZSB2YWx1ZSBvZiBmaWVsZCBgJS4qcycgKG1pc3NpbmcgZmluYWwgbmV3bGluZSkiCittc2dzdHIgIiIKKyJmYWlsbyBwYWJhaWdvcyDFvnltxJcgcHJpZcWhIGxhdWtlbGlvIGAlLipzJyByZWlrxaFtxJkgKHRyxatrc3RhIHBhc2t1dGluxJdzIG5hdWpvcyAiCisiZWlsdXTEl3Mgxb55bcSXcykiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDI5CisjLCBjLWZvcm1hdAorbXNnaWQgIk1TRE9TIEVPRiBjaGFyIGluIHZhbHVlIG9mIGZpZWxkIGAlLipzJyAobWlzc2luZyBuZXdsaW5lPykiCittc2dzdHIgIiIKKyJNU0RPUyBmYWlsbyBwYWJhaWdvcyDFvnltxJcgbGF1a2VsaW8gYCUuKnMnIHJlaWvFoW3El2plICh0csWra3N0YSBuYXVqb3MgZWlsdXTEl3MgIgorIsW+eW3El3M/KSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0NDAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIm5ld2xpbmUgaW4gZmllbGQgbmFtZSBgJS4qcyciCittc2dpZCAiYmxhbmsgbGluZSBpbiB2YWx1ZSBvZiBmaWVsZCAnJS4qcyciCittc2dzdHIgIm5hdWpvcyBlaWx1dMSXcyDFvnltxJcgbGF1a2VseWplIGAlLipzJyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiRU9GIGR1cmluZyB2YWx1ZSBvZiBmaWVsZCBgJS4qcycgKG1pc3NpbmcgZmluYWwgbmV3bGluZSkiCittc2dzdHIgIiIKKyJmYWlsbyBwYWJhaWdvcyDFvnltxJcgbGF1a2VsaW8gYCUuKnMnIHJlaWvFoW3El2plICh0csWra3N0YSBwYXNrdXRpbsSXcyBuYXVqb3MgIgorImVpbHV0xJdzIMW+eW3El3MpIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjU0NgorbXNnaWQgInNldmVyYWwgcGFja2FnZSBpbmZvIGVudHJpZXMgZm91bmQsIG9ubHkgb25lIGFsbG93ZWQiCittc2dzdHIgIiIKKyJyYXN0YSBrZWxldGFzIGluZm9ybWFjaWpvcyBhcGllIHBha2V0YSDEr3JhxaHFsywgdGHEjWlhdSBsZWlkxb5pYW1hcyB0aWsgdmllbmFzIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjU3MgorIywgYy1mb3JtYXQKK21zZ2lkICJubyBwYWNrYWdlIGluZm9ybWF0aW9uIGluIGAlLjI1NXMnIgorbXNnc3RyICJgJS4yNTVzJyBuxJdyYSBpbmZvcm1hY2lqb3MgYXBpZSBwYWtldMSFIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzo0NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorInBhcnNpbmcgZmlsZSAnJS4yNTVzJyBuZWFyIGxpbmUgJWQgcGFja2FnZSAnJS4yNTVzJzpcbiIKKyIgJS4yNTVzIgorbXNnc3RyICJsYXVrZWx5amUgYCVzJywgbmVrb3Jla3RpxaFrYXMgcGFrZXRvIHBhdmFkaW5pbWFzIGAlLjI1NXMnOiAlcyIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6NDgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJwYXJzaW5nIGZpbGUgJyUuMjU1cycgbmVhciBsaW5lICVkOlxuIgorIiAlLjI1NXMiCittc2dzdHIgImxhdWtlbHlqZSBgJXMnLCBuZWtvcmVrdGnFoWthcyBwYWtldG8gcGF2YWRpbmltYXMgYCUuMjU1cyc6ICVzIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoxMjUKK21zZ2lkICJtYXkgbm90IGJlIGVtcHR5IHN0cmluZyIKK21zZ3N0ciAibmVnYWxpIGLFq3RpIHR1xaHEjWlhIGVpbHV0xJciCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjEyNworIywgZnV6enkKKyN8IG1zZ2lkICJtdXN0IHN0YXJ0IHdpdGggYW4gYWxwaGFudW1lcmljIgorbXNnaWQgIm11c3Qgc3RhcnQgd2l0aCBhbiBhbHBoYW51bWVyaWMgY2hhcmFjdGVyIgorbXNnc3RyICJ0dXJpIHByYXNpZMSXdGkgc2thacSNaXVtaSBhcmJhIHJhaWRlIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoxMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2hhcmFjdGVyIGAlYycgbm90IGFsbG93ZWQgKG9ubHkgbGV0dGVycywgZGlnaXRzIGFuZCBjaGFyYWN0ZXJzIGAlcycpIgorbXNnc3RyICJzaW1ib2xpcyBgJWMnIG5lbGVpc3RpbmFzICh0aWsgcmFpZMSXcywgc2thacSNaWFpIGJlaSBzaW1ib2xpYWkgYCVzJykiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjE3OAorIywgZnV6enkKKyN8IG1zZ2lkICI8bm9uZT4iCittc2djdHh0ICJ2ZXJzaW9uIgorbXNnaWQgIjxub25lPiIKK21zZ3N0ciAiPG7El3JhPiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjA5Cittc2dpZCAidmVyc2lvbiBzdHJpbmcgaXMgZW1wdHkiCittc2dzdHIgInR1xaHEjWlhIHZlcnNpam9zIGVpbHV0xJciCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjIyNAorbXNnaWQgInZlcnNpb24gc3RyaW5nIGhhcyBlbWJlZGRlZCBzcGFjZXMiCittc2dzdHIgInZlcnNpam9zIGVpbHV0xJdqZSB5cmEgdGFycMWzIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyMzAKK21zZ2lkICJlcG9jaCBpbiB2ZXJzaW9uIGlzIG5vdCBudW1iZXIiCittc2dzdHIgImxhaWttZXRpcyB2ZXJzaWpvamUgeXJhIG5lIHNrYWnEjWl1cyIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjMyCittc2dpZCAibm90aGluZyBhZnRlciBjb2xvbiBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAidmVyc2lqb3MgbnVtZXJ5amUgcG8ga2FibGVsaW8gbmlla28gbsSXcmEiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjI0NworbXNnaWQgInZlcnNpb24gbnVtYmVyIGRvZXMgbm90IHN0YXJ0IHdpdGggZGlnaXQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjUwCisjLCBmdXp6eQorI3wgbXNnaWQgIm5vdGhpbmcgYWZ0ZXIgY29sb24gaW4gdmVyc2lvbiBudW1iZXIiCittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgaW4gdmVyc2lvbiBudW1iZXIiCittc2dzdHIgInZlcnNpam9zIG51bWVyeWplIHBvIGthYmxlbGlvIG5pZWtvIG7El3JhIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyNTQKKyMsIGZ1enp5CisjfCBtc2dpZCAibm90aGluZyBhZnRlciBjb2xvbiBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ2lkICJpbnZhbGlkIGNoYXJhY3RlciBpbiByZXZpc2lvbiBudW1iZXIiCittc2dzdHIgInZlcnNpam9zIG51bWVyeWplIHBvIGthYmxlbGlvIG5pZWtvIG7El3JhIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyOTkgbGliL2Rwa2cvcGFyc2VoZWxwLmM6MzExCisjLCBjLWZvcm1hdAorbXNnaWQgIm1pc3NpbmcgJXMiCittc2dzdHIgInRyxatrc3RhICVzIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzozMDEgbGliL2Rwa2cvcGFyc2VoZWxwLmM6MzE0CisjLCBjLWZvcm1hdAorbXNnaWQgImVtcHR5IHZhbHVlIGZvciAlcyIKK21zZ3N0ciAiJXMgYmUgcmVpa8WhbcSXcyIKKworIzogbGliL2Rwa2cvcGtnLWZvcm1hdC5jOjgwCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgY2hhcmFjdGVyIGAlYycgaW4gZmllbGQgd2lkdGhcbiIKK21zZ3N0ciAiTGF1a2VseWplIGtsYWlkaW5nYXMgc2ltYm9saXMgYCVjJ1xuIgorCisjOiBsaWIvZHBrZy9wa2ctZm9ybWF0LmM6MTcyCisjLCBjLWZvcm1hdAorbXNnaWQgIkNsb3NpbmcgYnJhY2UgbWlzc2luZyBpbiBmb3JtYXRcbiIKK21zZ3N0ciAiZm9ybWF0ZSB0csWra3N0YSB1xb5kYXJhbsSNaW9qbyBza2xpYXVzdGVsaW9cbiIKKworIzogbGliL2Rwa2cvcGtnLXNob3cuYzo0MAorbXNnaWQgIihubyBkZXNjcmlwdGlvbiBhdmFpbGFibGUpIgorbXNnc3RyICIoYXByYcWheW1hcyBuZXByaWVpbmFtYXMpIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6NTUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpZ25vcmUgc2lnbmFsICVzIGJlZm9yZSBydW5uaW5nICUuMjUwcyIKK21zZ3N0ciAibmVwYXZ5a3NvIGlnbm9ydW90aSBzaWduYWxvICVzIHByaWXFoSBzY2VuYXJpamF1cyBwYWxlaWRpbcSFIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgdW4tY2F0Y2hpbmcgc2lnbmFsICVzOiAlc1xuIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzo3OAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyAoc3VicHJvY2Vzcyk6ICVzXG4iCittc2dzdHIgIiVzICh2aWRpbmlzIHByb2Nlc2FzKTogJXNcbiIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjg5IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo0NTQKK21zZ2lkICJmb3JrIGZhaWxlZCIKK21zZ3N0ciAibmVwYXZ5a28gc3Vza2lyc3R5bWFzIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTE5CisjLCBjLWZvcm1hdAorbXNnaWQgInN1YnByb2Nlc3MgJXMgcmV0dXJuZWQgZXJyb3IgZXhpdCBzdGF0dXMgJWQiCittc2dzdHIgInZpZGluaXMgcHJvY2VzYXMgJXMgbnV0csWra28gZ3Jhxb5pbmRhbWFzIHJlaWvFoW3EmSAlZCIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEyOAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAic3VicHJvY2VzcyAlcyB3YXMgaW50ZXJydXB0ZWQiCittc2dzdHIgIiVzIGxhdWtpbWFzIG5lcGF2eWtvIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTMwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJzdWJwcm9jZXNzICVzIGtpbGxlZCBieSBzaWduYWwgKCVzKSVzIgorbXNnaWQgInN1YnByb2Nlc3MgJXMgd2FzIGtpbGxlZCBieSBzaWduYWwgKCVzKSVzIgorbXNnc3RyICJzdWItcHJvY2VzYXMgJXMgbnVzbG9waW50YXMgc2lnbmFsbyAoJXMpJXMiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMzIKK21zZ2lkICIsIGNvcmUgZHVtcGVkIgorbXNnc3RyICIsIGnFoXZlc3RhIGRlcmluaW1vIGluZm9ybWFjaWphIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgInN1YnByb2Nlc3MgJXMgZmFpbGVkIHdpdGggd2FpdCBzdGF0dXMgY29kZSAlZCIKK21zZ3N0ciAic3ViLXByb2Nlc2FzICVzIG5lcGF2eWtvIHN1IGxhdWtpbW8gYsWrc2Vub3Mga29kdSAlZCIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjE1MSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NDYxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ3YWl0IGZvciBzdWJwcm9jZXNzICVzIGZhaWxlZCIKK21zZ3N0ciAiJXMgbGF1a2ltYXMgbmVwYXZ5a28iCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgcGFja2FnZSBuYW1lIGAlLjI1MHMnIGluIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6ODEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInRydW5jYXRlZCB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuZXBhdnlrbyBwYXRpa3JpbnRpIGtpdG8gbmF1am8gZmFpbG8g4oCeJS4yNTBz4oCcIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDo4NQorIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyBhdCBjaGFyYWN0ZXIgYCVzJyVzIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjEzNAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4vY3JlYXRlIHRyaWdnZXJzIGxvY2tmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuZXBhdnlrbyBwYWthcnRvdGluYWkgYXR2ZXJ0aSBgJS4yNTBzJyBkYWxpbmlvIGZhaWxvIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNDEKKyMsIGZ1enp5Cittc2dpZCAidHJpZ2dlcnMgYXJlYSIKK21zZ3N0ciAibmVwYXZ5a3N0YSBwYXNpZWt0aSBkcGtnIGLFq3Nlbm9zIHZpZXRvcyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MTUxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuZXBhdnlrbyBwYXRpa3JpbnRpIGtpdG8gbmF1am8gZmFpbG8g4oCeJS4yNTBz4oCcIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNjUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5lcGF2eWtvIHBha2FydG90aW5haSBhdHZlcnRpIGAlLjI1MHMnIGRhbGluaW8gZmFpbG8iCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjE3OQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4vY3JlYXRlIG5ldyB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuZXBhdnlrbyBwYXRpa3JpbnRpIG5hdWpvcyBkaXN0cmlidXR5dm8ga29uZmlnxatyYWNpam9zIGZhaWxvIOKAniUuMjUwc+KAnCIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MjE1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJlcnJvciByZWFkaW5nIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImtsYWlkYSBza2FpdGFudCAlcyBpxaEgZmFpbG8gJS4yNTVzIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoyMjMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmVwYXZ5a28gcGF0aWtyaW50aSBuYXVqb3MgZGlzdHJpYnV0eXZvIGtvbmZpZ8WrcmFjaWpvcyBmYWlsbyDigJ4lLjI1MHPigJwiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjIyOAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIG5ldyB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuZXBhdnlrbyBwYXRpa3JpbnRpIG5hdWpvcyBkaXN0cmlidXR5dm8ga29uZmlnxatyYWNpam9zIGZhaWxvIOKAniUuMjUwc+KAnCIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MjMyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmVnYWxpdSDEr2RpZWd0aSBuYXVqb3MgYCUuMjU1cycgdmVyc2lqb3MiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzoyMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImludmFsaWQgb3IgdW5rbm93biBzeW50YXggaW4gdHJpZ2dlciBuYW1lIGAlLjI1MHMnIChpbiB0cmlnZ2VyIGludGVyZXN0cyBmb3IgIgorInBhY2thZ2UgYCUuMjUwcycpIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzoyNjMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuIHRyaWdnZXIgaW50ZXJlc3QgbGlzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuZXBhdnlrbyBhdHZlcnRpIHBha2V0byDigJ4lLjI1MHPigJwgZmFpbMWzIHNhcmHFoW8gZmFpbG8iCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzoyOTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuZXBhdnlrbyBwYXRpa3JpbnRpIGtpdG8gbmF1am8gZmFpbG8g4oCeJS4yNTBz4oCcIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzA1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcycgc3ludGF4IGVycm9yOyBpbGxlZ2FsIHBhY2thZ2UgbmFtZSBgJS4yNTBzJzogIgorIiUuMjUwcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzE4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmVwYXZ5a28gcGF0aWtyaW50aSBraXRvIG5hdWpvIGZhaWxvIOKAniUuMjUwc+KAnCIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMyMQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgIm5lcGF2eWtvIHBhdGlrcmludGkga2l0byBuYXVqbyBmYWlsbyDigJ4lLjI1MHPigJwiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMjQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzeW5jIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgIm5lcGF2eWtvIHBhdGlrcmludGkga2l0byBuYXVqbyBmYWlsbyDigJ4lLjI1MHPigJwiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMzIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5lZ2FsaXUgxK9kaWVndGkgbmF1am9zIGAlLjI1NXMnIHZlcnNpam9zIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzQwIGxpYi9kcGtnL3RyaWdsaWIuYzozNDIgbGliL2Rwa2cvdHJpZ2xpYi5jOjQ3MgorIzogc3JjL3JlbW92ZS5jOjI4NiBzcmMvcmVtb3ZlLmM6Mzc3CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZW1vdmUgYCUuMjUwcyciCittc2dzdHIgIm5lcGF2eWtvIHBhxaFhbGludGkg4oCeJS4yNTBz4oCcIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzYwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5lcGF2eWtvIHBhdGlrcmludGkga2l0byBuYXVqbyBmYWlsbyDigJ4lLjI1MHPigJwiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozODMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuZXBhdnlrbyBwYXRpa3JpbnRpIGtpdG8gbmF1am8gZmFpbG8g4oCeJS4yNTBz4oCcIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDU2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiZHVwbGljYXRlIGZpbGUgdHJpZ2dlciBpbnRlcmVzdCBmb3IgZmlsZW5hbWUgYCUuMjUwcycgYW5kIHBhY2thZ2UgYCUuMjUwcyciCittc2dzdHIgIiIKKyJuZXBhdnlrbyDEr2RpZWd0aSBuYXVqbyBpbmZvcm1hY2lqb3MgZmFpbG8g4oCeJS4yNTBz4oCcIHN1IHBhdmFkaW5pbXUg4oCeJS4yNTBz4oCcIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDgzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5lcGF2eWtvIHBhdGlrcmludGkgbmF1am9zIGRpc3RyaWJ1dHl2byBrb25maWfFq3JhY2lqb3MgZmFpbG8g4oCeJS4yNTBz4oCcIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDkzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmVwYXZ5a28gcGF0aWtyaW50aSBuYXVqb3MgZGlzdHJpYnV0eXZvIGtvbmZpZ8WrcmFjaWpvcyBmYWlsbyDigJ4lLjI1MHPigJwiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0OTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlICclLjI1MHMnIgorbXNnc3RyICJuZXBhdnlrbyBwYXRpa3JpbnRpIG5hdWpvcyBkaXN0cmlidXR5dm8ga29uZmlnxatyYWNpam9zIGZhaWxvIOKAniUuMjUwc+KAnCIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ5OQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAibmVwYXZ5a28gcGF0aWtyaW50aSBuYXVqb3MgZGlzdHJpYnV0eXZvIGtvbmZpZ8WrcmFjaWpvcyBmYWlsbyDigJ4lLjI1MHPigJwiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1MDMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuZXBhdnlrbyBwYXRpa3JpbnRpIG5hdWpvcyBkaXN0cmlidXR5dm8ga29uZmlnxatyYWNpam9zIGZhaWxvIOKAniUuMjUwc+KAnCIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjUwNworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSBhcyBgJS4yNTBzJyIKK21zZ3N0ciAiIgorIm5lcGF2eWtvIMSvZGllZ3RpIG5hdWpvIGluZm9ybWFjaWpvcyBmYWlsbyDigJ4lLjI1MHPigJwgc3UgcGF2YWRpbmltdSDigJ4lLjI1MHPigJwiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1NDIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmVwYXZ5a28gcGFrYXJ0b3RpbmFpIGF0dmVydGkgYCUuMjUwcycgZGFsaW5pbyBmYWlsbyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjU1MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yIGluIGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibnVza2FpdHltbyBrbGFpZGEga29uZmlnxatyYWNpam9zIGZhaWxlICBgJS4yNTVzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjU2MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZmlsZSB0cmlnZ2VycyByZWNvcmQgbWVudGlvbnMgaWxsZWdhbCBwYWNrYWdlIG5hbWUgYCUuMjUwcycgKGZvciBpbnRlcmVzdCBpbiAiCisiZmlsZSBgJS4yNTBzJyk6ICUuMjUwcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NjY1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ0cmlnZ2VycyBjaSBmaWxlIGAlLjI1MHMnIGNvbnRhaW5zIGlsbGVnYWwgdHJpZ2dlciBzeW50YXggaW4gdHJpZ2dlciBuYW1lIGAiCisiJS4yNTBzJzogJS4yNTBzIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo2ODQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIHRyaWdnZXJzIGNpIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5lcGF2eWtvIHBha2FydG90aW5haSBhdHZlcnRpIGAlLjI1MHMnIGRhbGluaW8gZmFpbG8iCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo2OTkKK21zZ2lkICJ0cmlnZ2VycyBjaSBmaWxlIGNvbnRhaW5zIHVua25vd24gZGlyZWN0aXZlIHN5bnRheCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NzEyCisjLCBjLWZvcm1hdAorbXNnaWQgInRyaWdnZXJzIGNpIGZpbGUgY29udGFpbnMgdW5rbm93biBkaXJlY3RpdmUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjc3NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSB0cmlnZ2VycyBzdGF0ZSBkaXJlY3RvcnkgYCUuMjUwcyciCittc2dzdHIgIm5lxK9tYW5vbWEgxK9yYcWheXRpIGF0bmF1amludG9zIGAlLjI1MHMnIGLFq3Nlbm9zIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Nzc5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IG93bmVyc2hpcCBvZiB0cmlnZ2VycyBzdGF0ZSBkaXJlY3RvcnkgYCUuMjUwcyciCittc2dzdHIgIm5lcGF2eWtvIHBha2Vpc3RpIHNhdmluaW5rbyBuYXVqYW0ga29uZmlnxatyYWNpam9zIGZhaWx1aSDigJ4lLjI1MHPigJwiCisKKyM6IGxpYi9kcGtnL3RyaWduYW1lLmM6MzQKK21zZ2lkICJlbXB0eSB0cmlnZ2VyIG5hbWVzIGFyZSBub3QgcGVybWl0dGVkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWduYW1lLmM6MzgKK21zZ2lkICJ0cmlnZ2VyIG5hbWUgY29udGFpbnMgaW52YWxpZCBjaGFyYWN0ZXIiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdXRpbHMuYzo1NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAicmVhZCBlcnJvciBpbiBgJS4yNTBzJyIKK21zZ3N0ciAic2thaXR5bW8ga2xhaWRhICUuMjUwcyIKKworIzogbGliL2Rwa2cvdXRpbHMuYzo2MQorIywgYy1mb3JtYXQKK21zZ2lkICJmZ2V0cyBnYXZlIGFuIGVtcHR5IHN0cmluZyBmcm9tIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3V0aWxzLmM6NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAidG9vLWxvbmcgbGluZSBvciBtaXNzaW5nIG5ld2xpbmUgaW4gYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdXRpbHMuYzo3NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgcmVhZGluZyBgJS4yNTBzJyIKK21zZ3N0ciAibmV0aWvEl3RhICUuMjUwcyBmYWlsbyBwYWJhaWdhIgorCisjOiBsaWIvZHBrZy92YXJidWYuYzo4MiBsaWIvZHBrZy92YXJidWYuYzo4OAorbXNnaWQgImVycm9yIGZvcm1hdHRpbmcgc3RyaW5nIGludG8gdmFyYnVmIHZhcmlhYmxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjE3OSBzcmMvYXJjaGl2ZXMuYzoyMDAgc3JjL2FyY2hpdmVzLmM6NzI0Cittc2dpZCAiZXJyb3IgcmVhZGluZyBmcm9tIGRwa2ctZGViIHBpcGUiCittc2dzdHIgImtsYWlkYSBza2FpdGFudCBpxaEgZHBrZy1kZWIgcGlwZSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTk1CisjLCBjLWZvcm1hdAorbXNnaWQgInNraXBwZWQgdW5wYWNraW5nIGZpbGUgJyUuMjU1cycgKHJlcGxhY2VkIG9yIGV4Y2x1ZGVkPykiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MjQ2IHNyYy9hcmNoaXZlcy5jOjI1MAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIHRpbWVzdGFtcHMgb2YgYCUuMjU1cyciCittc2dzdHIgImtsYWlkYSBudXN0YXRhbnQgbGFpa28gxb55bcSZIGAlLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoyNjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igc2V0dGluZyBvd25lcnNoaXAgb2Ygc3ltbGluayBgJS4yNTVzJyIKK21zZ3N0ciAia2xhaWRhIG51c3RhdGFudCBudW9yb2RvcyBzYXZpbmlua8SFIGAlLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoyNjUgc3JjL2FyY2hpdmVzLmM6NzM0IHNyYy9zdGF0Y21kLmM6MTYzCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHNldHRpbmcgb3duZXJzaGlwIG9mIGAlLjI1NXMnIgorbXNnc3RyICJrbGFpZGEgbnVzdGF0YW50IHNhdmluaW5rxIUgYCUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjI2NyBzcmMvYXJjaGl2ZXMuYzo3MzYgc3JjL3N0YXRjbWQuYzoxNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igc2V0dGluZyBwZXJtaXNzaW9ucyBvZiBgJS4yNTVzJyIKK21zZ3N0ciAia2xhaWRhIG51c3RhdGFudCB0ZWlzZXMgYCUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjM5NQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gc3RhdCAoZGVyZWZlcmVuY2UpIGV4aXN0aW5nIHN5bWxpbmsgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6NDE3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmYWlsZWQgdG8gc3RhdCAoZGVyZWZlcmVuY2UpIHByb3Bvc2VkIG5ldyBzeW1saW5rIHRhcmdldCBgJS4yNTBzJyBmb3IgIgorInN5bWxpbmsgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6NDc1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ0cnlpbmcgdG8gb3ZlcndyaXRlIGAlLjI1MHMnLCB3aGljaCBpcyB0aGUgZGl2ZXJ0ZWQgdmVyc2lvbiBvZiBgIgorIiUuMjUwcycgKHBhY2thZ2U6ICUuMTAwcykiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6NDgxCisjLCBjLWZvcm1hdAorbXNnaWQgInRyeWluZyB0byBvdmVyd3JpdGUgYCUuMjUwcycsIHdoaWNoIGlzIHRoZSBkaXZlcnRlZCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjUxMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBgJS4yNTVzJyAod2hpY2ggSSB3YXMgYWJvdXQgdG8gaW5zdGFsbCkiCittc2dzdHIgIm5lZ2FsaXUgcGF0aWtyaW50aSBgJS4yNTVzJyAoa3VyxK8gYmFuZMW+aWF1IMSvZGllZ3RpKSIKKworIzogc3JjL2FyY2hpdmVzLmM6NTE5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1bmFibGUgdG8gY2xlYW4gdXAgbWVzcyBzdXJyb3VuZGluZyBgJS4yNTVzJyBiZWZvcmUgaW5zdGFsbGluZyBhbm90aGVyICIKKyJ2ZXJzaW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjUyNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCByZXN0b3JlZCBgJS4yNTVzJyBiZWZvcmUgaW5zdGFsbGluZyBhbm90aGVyIHZlcnNpb24iCittc2dzdHIgInByaWXFoSBkaWVnaWFudCBraXTEhSB2ZXJzaWrEhSBuZXBhdnlrbyBwYXRpa3JpbnRpIGF0c3RhdHl0byBgJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6NTYxCisjLCBjLWZvcm1hdAorbXNnaWQgImFyY2hpdmUgY29udGFpbmVkIG9iamVjdCBgJS4yNTVzJyBvZiB1bmtub3duIHR5cGUgMHgleCIKK21zZ3N0ciAiYXJjaHl2ZSBlc2FudGlzIGAlLjI1NXMnIG9iamVrdGFzIHlyYSBuZcW+aW5vbW8gMHgleCB0aXBvIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2MjYgc3JjL2RpdmVydGNtZC5jOjE1MCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NjgyCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIyMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI4NAorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE0NDEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE2ODAKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTY3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjQ0CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUyNworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHJlYWQgJXM6ICVzIgorbXNnaWQgImNhbm5vdCBzdGF0IGZpbGUgJyVzJyIKK21zZ3N0ciAibmVwYXZ5a28gbnVza2FpdHl0aSAlczogJXMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjY0MQorIywgYy1mb3JtYXQKK21zZ2lkICJSZXBsYWNpbmcgZmlsZXMgaW4gb2xkIHBhY2thZ2UgJXMgLi4uXG4iCittc2dzdHIgIktlacSNaWFtaSBmYWlsYWkgacWhIHNlbm9qbyAlcyBwYWtldG8gLi4uXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjY0NQorIywgYy1mb3JtYXQKK21zZ2lkICJSZXBsYWNlZCBieSBmaWxlcyBpbiBpbnN0YWxsZWQgcGFja2FnZSAlcyAuLi5cbiIKK21zZ3N0ciAiUGFrZWlzdGEgZmFpbGFpcyBpxaEgxK9kaWVndG8gJXMgcGFrZXRvIC4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ0cnlpbmcgdG8gb3ZlcndyaXRlIGRpcmVjdG9yeSAnJS4yNTBzJyBpbiBwYWNrYWdlICUuMjUwcyAlLjI1MHMgd2l0aCAiCisibm9uZGlyZWN0b3J5IgorbXNnc3RyICJiYW5kb21hIHBlcnJhxaF5dGkgYXBsYW5rxIUgYCUuMjUwcycgZXNhbnTEryBwYWtldGUgJS4yNTBzIHN1IG5lIGFwbGFua3UiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjY2MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidHJ5aW5nIHRvIG92ZXJ3cml0ZSAnJS4yNTBzJywgd2hpY2ggaXMgYWxzbyBpbiBwYWNrYWdlICUuMjUwcyAlLjI1MHMiCittc2dzdHIgImJhbmRvbWEgcGVycmHFoXl0aSDigJ4lLjI1MHPigJwsIGt1cmlzIHRhaXAgcGF0IHlyYSBwYWtldGUgJS4yNTBzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3MTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgYCUuMjU1cycgKHdoaWxlIHByb2Nlc3NpbmcgYCUuMjU1cycpIgorbXNnc3RyICJuZXBhdnlrbyBwYXRpa3JpbnRpIG5hdWpvcyBkaXN0cmlidXR5dm8ga29uZmlnxatyYWNpam9zIGZhaWxvIOKAniUuMjUwc+KAnCIKKworIzogc3JjL2FyY2hpdmVzLmM6NzE4CisjLCBjLWZvcm1hdAorbXNnaWQgImJhY2tlbmQgZHBrZy1kZWIgZHVyaW5nIGAlLjI1NXMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc0NCBzcmMvYXJjaGl2ZXMuYzo5MDggc3JjL2FyY2hpdmVzLmM6OTQ5CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3Npbmcvd3JpdGluZyBgJS4yNTVzJyIKK21zZ3N0ciAia2xhaWRhIHXFvmRhcmFudC9yYcWhYW50IGAlLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgcGlwZSBgJS4yNTVzJyIKK21zZ3N0ciAia2xhaWRhIGt1cmlhbnQgZHVvbWVuxbMgc3JhdXTEhSBgJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6NzUzIHNyYy9hcmNoaXZlcy5jOjc1OAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBkZXZpY2UgYCUuMjU1cyciCittc2dzdHIgImtsYWlkYSBrdXJpYW50IMSvcmVuZ2luxK8gYCUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc3MQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBoYXJkIGxpbmsgYCUuMjU1cyciCittc2dzdHIgImtsYWlkYSBrdXJpYW50IHR2aXJ0YWrEhSBudW9yb2TEhSBgJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6Nzc3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo1MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgc3ltYm9saWMgbGluayBgJS4yNTVzJyIKK21zZ3N0ciAia2xhaWRhIGt1cmlhbnQgc2ltYm9saW7EmSBudW9yb2TEhSBgJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6NzgzCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIGRpcmVjdG9yeSBgJS4yNTVzJyIKK21zZ3N0ciAia2xhaWRhIGt1cmlhbnQgYXBsYW5rxIUgYCUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjgyMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gbW92ZSBhc2lkZSBgJS4yNTVzJyB0byBpbnN0YWxsIG5ldyB2ZXJzaW9uIgorbXNnc3RyICJuZXBhdnlrc3RhIHBlcmtlbHRpIGF0aWTEl3RvIGAlLjI1NXMnIG5vcmludCDEr2RpZWd0aSBuYXVqxIUgdmVyc2lqxIUiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjgzMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MzIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIGxpbmsgYCUuMjU1cyciCittc2dzdHIgIm5lxK9tYW5vbWEgcmFzdGkgbnVvcm9kb3MgYCUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjgzNCBzcmMvY29uZmlndXJlLmM6NDIzCisjLCBjLWZvcm1hdAorbXNnaWQgInN5bWJvbGljIGxpbmsgJyUuMjUwcycgc2l6ZSBoYXMgY2hhbmdlZCBmcm9tICVqZCB0byAlemQiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6ODM5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBtYWtlIGJhY2t1cCBzeW1saW5rIGZvciBgJS4yNTVzJyIKK21zZ3N0ciAibmXEr21hbm9tYSBzdWt1cnRpIGF0c2FyZ2luxJdzIG51b3JvZG9zIMSvIGAlLjI1NXMnIGtvcGlqb3MiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjg0MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hvd24gYmFja3VwIHN5bWxpbmsgZm9yIGAlLjI1NXMnIgorbXNnc3RyICJuZWdhbGl1IHBha2Vpc3RpIGF0c2FyZ2luxJdzIG51b3JvZG9zIGtvcGlqb3MgxK8gYCUuMjU1cycgc2F2aW5pbmtvIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4NDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG1ha2UgYmFja3VwIGxpbmsgb2YgYCUuMjU1cycgYmVmb3JlIGluc3RhbGxpbmcgbmV3IHZlcnNpb24iCittc2dzdHIgIiIKKyJuZcSvbWFub21hIHN1a3VydGkgbnVvcm9kb3MgxK8gYCUuMjU1cycga29waWpvcyBwcmllxaEgxK9kaWVnaWFudCBuYXVqxIUgdmVyc2lqxIUiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjg2MyBzcmMvYXJjaGl2ZXMuYzo5NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IHZlcnNpb24gb2YgYCUuMjU1cyciCittc2dzdHIgIm5lZ2FsaXUgxK9kaWVndGkgbmF1am9zIGAlLjI1NXMnIHZlcnNpam9zIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo5MDIgc3JjL2FyY2hpdmVzLmM6OTQ1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiAnJS4yNTVzJyIKK21zZ3N0ciAibmVwYXZ5a28gc3VrdXJ0aSBgJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6OTQ3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBmaWxlICclLjI1NXMnIgorbXNnc3RyICJuZXBhdnlrbyBzdWt1cnRpIGAlLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDAwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiaWdub3JpbmcgZGVwZW5kZW5jeSBwcm9ibGVtIHdpdGggJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiDEr3NwxJdqaW1hczogaWdub3J1b2phbWEgJXMgcHJpa2xhdXNvbXliacWzIHByb2JsZW1hOlxuIgorIiVzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDA1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiY29uc2lkZXJpbmcgZGVjb25maWd1cmF0aW9uIG9mIGVzc2VudGlhbFxuIgorIiBwYWNrYWdlICVzLCB0byBlbmFibGUgJXMuIgorbXNnc3RyICIiCisiZHBrZzogZMSXbWVzaW86IHN2YXJzdG9tYSBlc21pbmlvIHBha2V0byAlc1xuIgorIiBkZWtvbmZpZ8WrcmFjaWphLCBrYWQgYsWrdMWzIGdhbGltYSDEr2RpZWd0aSAlcy5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAwOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogbm8sICVzIGlzIGVzc2VudGlhbCwgd2lsbCBub3QgZGVjb25maWd1cmVcbiIKKyIgaXQgaW4gb3JkZXIgdG8gZW5hYmxlICVzLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IG5vLCBjYW5ub3QgcHJvY2VlZCB3aXRoICVzICgtLWF1dG8tZGVjb25maWd1cmUgd2lsbCBoZWxwKTpcbiIKKyIlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDMyCisjLCBjLWZvcm1hdAorbXNnaWQgInJlbW92YWwgb2YgJS4yNTBzIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW5zdGFsbGF0aW9uIG9mICUuMjUwcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDU4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBjb25zaWRlcmluZyBkZWNvbmZpZ3VyYXRpb24gb2YgJXMsIHdoaWNoIHdvdWxkIGJlIGJyb2tlbiBieSAlcyAuLi5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDY1CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IHllcywgd2lsbCBkZWNvbmZpZ3VyZSAlcyAoYnJva2VuIGJ5ICVzKS5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDY5IHNyYy9hcmNoaXZlcy5jOjExODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IHJlZ2FyZGluZyAlcyBjb250YWluaW5nICVzOlxuIgorIiVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNzcKKyMsIGZ1enp5Cittc2dpZCAiaWdub3JpbmcgYnJlYWthZ2UsIG1heSBwcm9jZWVkIGFueXdheSEiCittc2dzdHIgIiIKKyJkcGtnOiDEr3NwxJdqaW1hczoga29uZmxpa3RhcyBpZ25vcnVvamFtYXMsIGJ1cyB0xJlzaWFtYSBiZXQga29raXUgYXR2ZWp1ICFcbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA4MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiaW5zdGFsbGluZyAlLjI1MHMgd291bGQgYnJlYWsgJS4yNTBzLCBhbmRcbiIKKyIgZGVjb25maWd1cmF0aW9uIGlzIG5vdCBwZXJtaXR0ZWQgKC0tYXV0by1kZWNvbmZpZ3VyZSBtaWdodCBoZWxwKSIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDg2CisjLCBjLWZvcm1hdAorbXNnaWQgImluc3RhbGxpbmcgJS4yNTBzIHdvdWxkIGJyZWFrIGV4aXN0aW5nIHNvZnR3YXJlIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExMTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogY29uc2lkZXJpbmcgcmVtb3ZpbmcgJXMgaW4gZmF2b3VyIG9mICVzIC4uLlxuIgorbXNnc3RyICJkcGtnOiBudXNwcsSZc3RhIHBhxaFhbGludGkgJXMga2VpxI1pYW50IGrEryDEryAlcyAuLi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTEyMgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgcHJvcGVybHkgaW5zdGFsbGVkIC0gaWdub3JpbmcgYW55IGRlcGVuZGVuY2llcyBvbiBpdC5cbiIKK21zZ3N0ciAiIgorIiVzIHBha2V0YXMgxK9kaWVndGFzIG5la29yZWt0acWha2FpIC0gaWdub3J1b2p1IGJldCBrb2tpYXMgam8gcHJpa2xhdXNvbXliZXMuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogbWF5IGhhdmUgdHJvdWJsZSByZW1vdmluZyAlcywgYXMgaXQgcHJvdmlkZXMgJXMgLi4uXG4iCittc2dzdHIgIiIKKyJkcGtnOiAlcyBwYcWhYWxpbmltYXMgZ2FsaSBzdWtlbHRpIHByb2JsZW3Fsywga2FkYW5naSBqaXMgdGVpa2lhICVzIC4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTY2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogcGFja2FnZSAlcyByZXF1aXJlcyByZWluc3RhbGxhdGlvbiwgYnV0IHdpbGwgcmVtb3ZlIGFueXdheSBhcyB5b3UgIgorInJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiIgorImRwa2c6IHBha2V0YXMgJXMgcmVpa2FsYXVqYSDEr2RpZWdpbW8gacWhIG5hdWpvLCB0YcSNaWF1IGppcyBidXMgacWhbWVzdGFzIGthaXAgIgorImrFq3MgcHJhxaHEl3RlLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTY5CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IHBhY2thZ2UgJXMgcmVxdWlyZXMgcmVpbnN0YWxsYXRpb24sIHdpbGwgbm90IHJlbW92ZS5cbiIKK21zZ3N0ciAiZHBrZzogcGFja2FnZSAlcyByZXF1aXJlcyByZWluc3RhbGxhdGlvbiwgd2lsbCBub3QgcmVtb3ZlLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTc4CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IHllcywgd2lsbCByZW1vdmUgJXMgaW4gZmF2b3VyIG9mICVzLlxuIgorbXNnc3RyICJkcGtnOiB0YWlwLCBwYcWhYWxpbnNpdSAlcyB2aWV0b2ogJXMuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmxpY3RpbmcgcGFja2FnZXMgLSBub3QgaW5zdGFsbGluZyAlLjI1MHMiCittc2dzdHIgImtvbmZsaWt0dW9qYW50eXMgcGFrZXRhaSAtIG5lxK9kaWVnc2l1ICUuMjUwcyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE5MQorIywgZnV6enkKK21zZ2lkICJpZ25vcmluZyBjb25mbGljdCwgbWF5IHByb2NlZWQgYW55d2F5ISIKK21zZ3N0ciAiIgorImRwa2c6IMSvc3DEl2ppbWFzOiBrb25mbGlrdGFzIGlnbm9ydW9qYW1hcywgYnVzIHTEmXNpYW1hIGJldCBrb2tpdSBhdHZlanUgIVxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjM1CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgLS1yZWN1cnNpdmUgbmVlZHMgYXQgbGVhc3Qgb25lIHBhdGggYXJndW1lbnQiCittc2dzdHIgIi0tJXMgLS1yZWN1cnNpdmUgcGFzaXJpbmtpbXVpIHJlaWtpYSBiZW50IHZpZW5vcyBrZWxpbyByZWlrxaFtxJdzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjQ1CisjLCBmdXp6eQorbXNnaWQgImZpbmQgZm9yIGRwa2cgLS1yZWN1cnNpdmUiCittc2dzdHIgIm5lcGF2eWtvIMSvdnlrZHl0aSBwYWllxaFrb3MgcGFzaXJpbmtpbXVpIC0tcmVjdXJzaXZlIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjY2Cittc2dpZCAiZmFpbGVkIHRvIGZkb3BlbiBmaW5kJ3MgcGlwZSIKK21zZ3N0ciAibmVwYXZ5a28gYXRpZGFyeXRpIHBhaWXFoWtvcyBzcmF1dG8iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNzIKK21zZ2lkICJlcnJvciByZWFkaW5nIGZpbmQncyBwaXBlIgorbXNnc3RyICJrbGFpZGEgc2thaXRhbnQgcGFpZcWha29zIHNyYXV0xIUiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNzMKK21zZ2lkICJlcnJvciBjbG9zaW5nIGZpbmQncyBwaXBlIgorbXNnc3RyICJrbGFpZGEgdcW+ZGFyYW50IHBhaWXFoWtvcyBzcmF1dMSFIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjc2CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbmQgZm9yIC0tcmVjdXJzaXZlIHJldHVybmVkIHVuaGFuZGxlZCBlcnJvciAlaSIKK21zZ3N0ciAicGFpZcWha2EgcGFzaXJpbmtpbXVpIC0tcmVjdXJzaXZlIMSvdnlrZMSXIG5lYXBkb3JvamFtxIUga2xhaWTEhSAlaSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3OQorbXNnaWQgInNlYXJjaGVkLCBidXQgZm91bmQgbm8gcGFja2FnZXMgKGZpbGVzIG1hdGNoaW5nICouZGViKSIKK21zZ3N0ciAiIgorImllxaFrb2phdSwgdGHEjWlhdSBuZXJhZGF1IG5laSB2aWVubyBwYWtldG8gYXRpdGlua2FuxI1pbyAoKi5kZWIpIGtyaXRlcmlqxbMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhdCBsZWFzdCBvbmUgcGFja2FnZSBhcmNoaXZlIGZpbGUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMgcmVpa2lhIG5vcnMgdmllbm9zIHBha2V0byBhcmNoeXZvIGZhaWxvIHJlaWvFoW3El3MiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzMjUgc3JjL2RpdmVydGNtZC5jOjc4IHNyYy9kaXZlcnRjbWQuYzoxMTgKKyM6IHNyYy9lbnF1aXJ5LmM6MTY2IHNyYy9lbnF1aXJ5LmM6Mjc5IHNyYy9lbnF1aXJ5LmM6NDQ5IHNyYy9lbnF1aXJ5LmM6NDUxCisjOiBzcmMvZW5xdWlyeS5jOjQ2NCBzcmMvbWFpbi5jOjY2IHNyYy9tYWluLmM6MTYzIHNyYy9tYWluLmM6MzE0CisjOiBzcmMvbWFpbi5jOjQ5MyBzcmMvcGFja2FnZXMuYzoyNTQgc3JjL3F1ZXJ5Y21kLmM6MjUyIHNyYy9xdWVyeWNtZC5jOjM1NQorIzogc3JjL3F1ZXJ5Y21kLmM6Mzk2IHNyYy9xdWVyeWNtZC5jOjQwNCBzcmMvcXVlcnljbWQuYzo0NDggc3JjL3F1ZXJ5Y21kLmM6NTE3CisjOiBzcmMvcXVlcnljbWQuYzo2MDYgc3JjL3F1ZXJ5Y21kLmM6NjUwIHNyYy9zZWxlY3QuYzo3OSBzcmMvc3RhdGNtZC5jOjY4CisjOiBzcmMvc3RhdGNtZC5jOjk4IHNyYy90cmlnY21kLmM6NTggc3JjL3RyaWdjbWQuYzo5MCBkcGtnLWRlYi9idWlsZC5jOjQ0MQorIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIxNyBkcGtnLWRlYi9leHRyYWN0LmM6MjUwIGRwa2ctZGViL2luZm8uYzoyMDMKKyM6IGRwa2ctZGViL2luZm8uYzoyNjUgZHBrZy1kZWIvbWFpbi5jOjYwIGRwa2ctZGViL21haW4uYzoxMjYKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjI1NyBkcGtnLXNwbGl0L21haW4uYzo1NCBkcGtnLXNwbGl0L21haW4uYzo5OAorIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE0NCBkcGtnLXNwbGl0L3F1ZXVlLmM6MjgwCittc2dpZCAiPHN0YW5kYXJkIG91dHB1dD4iCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTMyNiBzcmMvcGFja2FnZXMuYzoyNTUgc3JjL3F1ZXJ5Y21kLmM6MjUzCisjOiBzcmMvcXVlcnljbWQuYzozNTMgc3JjL3F1ZXJ5Y21kLmM6NDU0IHNyYy9xdWVyeWNtZC5jOjUxOCBzcmMvc2VsZWN0LmM6ODAKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjE2OSBkcGtnLXNwbGl0L3F1ZXVlLmM6MjE4Cittc2dpZCAiPHN0YW5kYXJkIGVycm9yPiIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzY3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJTZWxlY3RpbmcgcHJldmlvdXNseSBkZXNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dpZCAiU2VsZWN0aW5nIHByZXZpb3VzbHkgdW5zZWxlY3RlZCBwYWNrYWdlICVzLlxuIgorbXNnc3RyICJQYcW+eW1pbWUgYW5rc8SNaWF1IG5lcGHFvnltxJd0xIUgcGFrZXTEhSAlcy5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTM3MQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiU2tpcHBpbmcgZGVzZWxlY3RlZCBwYWNrYWdlICVzLlxuIgorbXNnaWQgIlNraXBwaW5nIHVuc2VsZWN0ZWQgcGFja2FnZSAlcy5cbiIKK21zZ3N0ciAiUHJhbGVpZMW+aWFtZSBuZXBhc2lyaW5rdMSFIHBha2V0xIUgJXMuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiVmVyc2lvbiAlLjI1MHMgb2YgJS4yNTBzIGFscmVhZHkgaW5zdGFsbGVkLCBza2lwcGluZy5cbiIKK21zZ3N0ciAiVmVyc2lqYSAlLjI1MHMgcGFrZXR1aSAlLjI1MHMgamF1IMSvZGllZ3RhLCB0b2TEl2wgcHJhbGVpZMW+aWFtYS5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTM5NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZG93bmdyYWRpbmcgJS4yNTBzIGZyb20gJS4yNTBzIHRvICUuMjUwcy4iCittc2dzdHIgIiVzOiBwZXJzcMSXamltYXM6IHNlbmRpbmFtYXMgJS4yNTBzIGnFoSAlLjI1MHMgxK8gJS4yNTBzLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxNDAyCisjLCBjLWZvcm1hdAorbXNnaWQgIldpbGwgbm90IGRvd25ncmFkZSAlLjI1MHMgZnJvbSB2ZXJzaW9uICUuMjUwcyB0byAlLjI1MHMsIHNraXBwaW5nLlxuIgorbXNnc3RyICJOZXNlbmRpbnNpdSAlLjI1MHMgxK/FoSB2ZXJzaWpvcyAlLjI1MHMgxK8gJS4yNTBzLCB0b2TEl2wgcHJhbGVpZMW+aWFtYS5cbiIKKworIzogc3JjL2NsZWFudXAuYzo4NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidW5hYmxlIHRvIHJlbW92ZSBuZXdseS1pbnN0YWxsZWQgdmVyc2lvbiBvZiBgJS4yNTBzJyB0byBhbGxvdyByZWluc3RhbGxhdGlvbiAiCisib2YgYmFja3VwIGNvcHkiCittc2dzdHIgIiIKKyJuZXBhdnlrbyBwYcWhYWxpbnRpIG5hdWphaSDEr2RpZWd0b3MgYCUuMjUwcycgdmVyc2lqb3MsIG5vcmludCBzdWt1cnRpIHPEhWx5Z2FzICIKKyJhdHNhcmdpbsSXcyBrb3Bpam9zIG5hdWphbSDEr2RpZWdpbXVpIgorCisjOiBzcmMvY2xlYW51cC5jOjkzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZXN0b3JlIGJhY2t1cCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICJuZXBhdnlrbyBhdGt1cnRpIGF0c2FyZ2luxJdzIGAlLjI1MHMnIHZlcnNpam9zIgorCisjOiBzcmMvY2xlYW51cC5jOjk3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gcmVzdG9yZSBiYWNrdXAgdmVyc2lvbiBvZiBgJS4yNTBzJyIKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIGJhY2t1cCBjb3B5IG9mICclLjI1MHMnIgorbXNnc3RyICJuZXBhdnlrbyBhdGt1cnRpIGF0c2FyZ2luxJdzIGAlLjI1MHMnIHZlcnNpam9zIgorCisjOiBzcmMvY2xlYW51cC5jOjEwMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIG5ld2x5LWluc3RhbGxlZCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICJuZXBhdnlrc3RhIHBhxaFhbGludGkga8SFIHRpayDEr2RpZWd0b3MgYCUuMjUwcycgdmVyc2lqb3MiCisKKyM6IHNyYy9jbGVhbnVwLmM6MTA4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgbmV3bHktZXh0cmFjdGVkIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dzdHIgIm5lcGF2eWtzdGEgcGHFoWFsaW50aSBrxIUgdGlrIGnFoXBha3VvdG9zIGAlLjI1MHMnIHZlcnNpam9zIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTA0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gc3RhdCBuZXcgZGlzdCBjb25mZmlsZSBgJS4yNTBzJyIKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBuZXcgZGlzdHJpYnV0ZWQgY29uZmZpbGUgJyUuMjUwcyciCittc2dzdHIgIm5lcGF2eWtvIHBhdGlrcmludGkgbmF1am9zIGRpc3RyaWJ1dHl2byBrb25maWfFq3JhY2lqb3MgZmFpbG8g4oCeJS4yNTBz4oCcIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGN1cnJlbnQgaW5zdGFsbGVkIGNvbmZmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuZXBhdnlrbyBwYXRpa3JpbnRpIG5hdWphaSDEr2RpZWd0b3Mga29uZmlnxatyYWNpam9zIGZhaWxvIOKAniUuMjUwc+KAnCIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjEyNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiQ29uZmlndXJhdGlvbiBmaWxlIGAlcycsIGRvZXMgbm90IGV4aXN0IG9uIHN5c3RlbS5cbiIKKyJJbnN0YWxsaW5nIG5ldyBjb25maWcgZmlsZSBhcyB5b3UgcmVxdWVzdGVkLlxuIgorbXNnc3RyICIiCisiXG4iCisiS29uZmlnxatyYWNpam9zIGZhaWxhcyDigJ4lc+KAnCBzaXN0ZW1vamUgbmVlZ3ppc3R1b2phLlxuIgorIkRpZWdpYW1hcyBuYXVqYSBrb25maWfFq3JhY2lqb3MgZmFpbGFzLCBrYWlwIGJ1dm8gbnVyb2R5dGEuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzoxNjgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlIG9sZCBiYWNrdXAgJyUuMjUwcyc6ICVzIgorbXNnc3RyICJkcGtnOiAlczogxK9zcMSXamltYXM6IG5lcGF2eWtvIHBhxaFhbGludGkgc2Vub3Mg4oCeJS4yNTBz4oCcOiAlcyBrb3Bpam9zXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzoxNzYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVuYW1lICclLjI1MHMnIHRvICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiZHBrZzogJXM6IMSvc3DEl2ppbWFzOiBuZXBhdnlrbyBwZXJ2YWRpbnRpIOKAniUuMjUwc+KAnCDEryDigJ4lLjI1MHPigJw6ICVzXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzoxODIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiJXM6IG5lcGF2eWtvIHBhbGVpc3RpICclcyAlcyciCisKKyM6IHNyYy9jb25maWd1cmUuYzoxODgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlIG9sZCBkaXN0cmlidXRlZCB2ZXJzaW9uICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiZHBrZzogJXM6IMSvc3DEl2ppbWFzOiBuZXBhdnlrbyBwYcWhYWxpbnRpIHNlbm9zIOKAniUuMjUwc+KAnDogJXMga29waWpvc1xuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTkyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIHJlbW92ZSAnJS4yNTBzJyAoYmVmb3JlIG92ZXJ3cml0ZSk6ICVzIgorbXNnc3RyICIiCisiZHBrZzogJXM6IMSvc3DEl2ppbWFzOiBuZXBhdnlrbyBwYcWhYWxpbnRpIOKAniUuMjUwc+KAnCAocHJpZcWhIHBlcnJhxaFhbnQpOiAlc1xuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTk2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIGxpbmsgJyUuMjUwcycgdG8gJyUuMjUwcyc6ICVzIgorbXNnc3RyICJkcGtnOiAlczogxK9zcMSXamltYXM6IG5lcGF2eWtvIHN1c2lldGkg4oCeJS4yNTBz4oCcIHN1IOKAniUuMjUwc+KAnDogJXNcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjIwMAorIywgYy1mb3JtYXQKK21zZ2lkICJJbnN0YWxsaW5nIG5ldyB2ZXJzaW9uIG9mIGNvbmZpZyBmaWxlICVzIC4uLlxuIgorbXNnc3RyICJEaWVnaWFtYSBuYXVqYSBrb25maWfFq3JhY2lqb3MgZmFpbG8gdmVyc2lqYSAlcyAuLi5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjIwNiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NTQ2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIGAlLjI1MHMnIGFzIGAlLjI1MHMnIgorbXNnc3RyICJuZXBhdnlrbyDEr2RpZWd0aSBgJS4yNTBzJyBrYWlwIGAlLjI1MHMnIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjU3CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHBhY2thZ2UgbmFtZWQgYCVzJyBpcyBpbnN0YWxsZWQsIGNhbm5vdCBjb25maWd1cmUiCittc2dzdHIgIm7El3JhIHBha2V0byBwYXZhZGluaW11IGAlcycsIG5lZ2FsaXUga29uZmlnxatydW90aSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI2MAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlICUuMjUwcyBpcyBhbHJlYWR5IGluc3RhbGxlZCBhbmQgY29uZmlndXJlZCIKK21zZ3N0ciAicGFrZXRhcyAlLjI1MHMgamF1IMSvZGllZ3RhcyBpciBzdWtvbmZpZ8WrcnVvdGFzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjYzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJwYWNrYWdlICUuMjUwcyBpcyBub3QgcmVhZHkgZm9yIGNvbmZpZ3VyYXRpb25cbiIKKyIgY2Fubm90IGNvbmZpZ3VyZSAoY3VycmVudCBzdGF0dXMgYCUuMjUwcycpIgorbXNnc3RyICIiCisicGFrZXRhcyAlLjI1MHMgbmVwYXJ1b8WhdGFzIGtvbmZpZ8WrcmF2aW11aVxuIgorIiBuZWdhbGl1IGtvbmZpZ8WrcnVvdGkgKGRhYmFydGluxJcgYsWrc2VuYSBgJS4yNTBzJykiCisKKyM6IHNyYy9jb25maWd1cmUuYzoyOTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IGRlcGVuZGVuY3kgcHJvYmxlbXMgcHJldmVudCBjb25maWd1cmF0aW9uIG9mICVzOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogcHJpa2xhdXNvbXliacWzIHByb2JsZW1vcyBuZWxlaWTFvmlhIGtvbmZpZ8WrcnVvdGkgJXM6XG4iCisiJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoyOTcKK21zZ2lkICJkZXBlbmRlbmN5IHByb2JsZW1zIC0gbGVhdmluZyB1bmNvbmZpZ3VyZWQiCittc2dzdHIgInByaWtsYXVzb215YmnFsyBwcm9ibGVtb3MgLSBwYWxpZWthbWFzIG5la29uZmlnxatydW90YXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzozMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6ICVzOiBkZXBlbmRlbmN5IHByb2JsZW1zLCBidXQgY29uZmlndXJpbmcgYW55d2F5IGFzIHlvdSByZXF1ZXN0ZWQ6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiAlczogcHJpa2xhdXNvbXliacWzIHByb2JsZW1vcywgdGHEjWlhdSB2aXMgdmllbiBrb25maWfFq3J1b2phbWEsIG5lcyBidXZvICIKKyJ0YWlwIG51cm9keXRhOlxuIgorIiVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MzA5Cittc2dpZCAiIgorIlBhY2thZ2UgaXMgaW4gYSB2ZXJ5IGJhZCBpbmNvbnNpc3RlbnQgc3RhdGUgLSB5b3Ugc2hvdWxkXG4iCisiIHJlaW5zdGFsbCBpdCBiZWZvcmUgYXR0ZW1wdGluZyBjb25maWd1cmF0aW9uLiIKK21zZ3N0ciAiIgorIlBha2V0YXMgeXJhIG5ldmllbnRpc29qZSBixatzZW5vamUgLSB0dXLEl3R1bcSXdGVcbiIKKyIgxK9kaWVndGkgasSvIHBha2FydG90aW5haSBwcmllxaEgYmFuZHlkYW1pIGtvbmZpZ8WrcnVvdGkuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MzEyCisjLCBjLWZvcm1hdAorbXNnaWQgIlNldHRpbmcgdXAgJXMgKCVzKSAuLi5cbiIKK21zZ3N0ciAiVHZhcmtvbWFzIHBha2V0YXMgJXMgKCVzKSAuLi5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjM5NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiB1bmFibGUgdG8gc3RhdCBjb25maWcgZmlsZSAnJXMnXG4iCisiICg9ICclcycpOiAlcyIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiDEr3NwxJdqaW1hczogbmVwYXZ5a28gcGF0aWtyaW50aSBrb25maWfFq3JhY2lqb3MgZmFpbG8g4oCeJXPigJxcbiIKKyIgKD0g4oCeJXPigJwpOiAlc1xuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDA5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IGNvbmZpZyBmaWxlICclcycgaXMgYSBjaXJjdWxhciBsaW5rXG4iCisiICg9ICclcycpIgorbXNnc3RyICIiCisiZHBrZzogJXM6IMSvc3DEl2ppbWFzOiBudXN0YXR5bcWzIGZhaWxhcyDigJ4lc+KAnCB5cmEgY2lrbGluxJcgbnVvcm9kYVxuIgorIiAoPSDigJ4lc+KAnClcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQxOAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiB1bmFibGUgdG8gcmVhZGxpbmsgY29uZmZpbGUgJyVzJ1xuIgorIiAoPSAnJXMnKTogJXMiCittc2dzdHIgIiIKKyJkcGtnOiAlczogxK9zcMSXamltYXM6IG5lcGF2eWtvIG51c2thaXR5dGkgc3VzaWV0byBudXN0YXR5bcWzIGZhaWxvIOKAniVz4oCcXG4iCisiKD0g4oCeJXPigJwpOiAlc1xuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDQ0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogY29uZmZpbGUgJyUuMjUwcycgcmVzb2x2ZXMgdG8gZGVnZW5lcmF0ZSBmaWxlbmFtZVxuIgorIiAoJyVzJyBpcyBhIHN5bWxpbmsgdG8gJyVzJykiCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQ2MAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGNvbmZmaWxlICclLjI1MHMnIGlzIG5vdCBhIHBsYWluIGZpbGUgb3Igc3ltbGluayAoPSAnJXMnKSIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiDEr3NwxJdqaW1hczogbnVzdGF0eW3FsyBmYWlsYXMg4oCeJS4yNTBz4oCcIG7El3JhIHRla3N0byBmYWlsYXMgYXIgbnVvcm9kYSAiCisiKD0g4oCeJXPigJwpXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo0ODYKK21zZ2lkICJtZDVoYXNoIgorbXNnc3RyICJtZDVoYXNoIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDkyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogdW5hYmxlIHRvIG9wZW4gY29uZmZpbGUgJXMgZm9yIGhhc2g6ICVzIgorbXNnc3RyICJkcGtnOiAlczogxK9zcMSXamltYXM6IG5lcGF2eWtvIGF0dmVydGkgbnVzdGF0eW3FsyBmYWlsbyAlcyBtYWnFoWFpOiAlc1xuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NTIyIHNyYy9jb25maWd1cmUuYzo1MjYKK21zZ2lkICJjb25mZmlsZSBkaWZmZXJlbmNlIHZpc3VhbGl6ZXIiCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjU0MworbXNnaWQgIlR5cGUgYGV4aXQnIHdoZW4geW91J3JlIGRvbmUuXG4iCittc2dzdHIgIsSudmVza2l0ZSBgZXhpdCcga2FpIGJhaWdzaXRlLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NTUyIHNyYy9jb25maWd1cmUuYzo1NTYKK21zZ2lkICJjb25mZmlsZSBzaGVsbCIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjAyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJDb25maWd1cmF0aW9uIGZpbGUgYCVzJyIKK21zZ3N0ciAiIgorIlxuIgorIktvbmZpZ8WrcmFjaWpvcyBmYWlsYXMg4oCeJXPigJwiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIChhY3R1YWxseSBgJXMnKSIKK21zZ3N0ciAiIChpxaEgdGllc8WzIOKAniVz4oCcKSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYwOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiID09PiBGaWxlIG9uIHN5c3RlbSBjcmVhdGVkIGJ5IHlvdSBvciBieSBhIHNjcmlwdC5cbiIKKyIgPT0+IEZpbGUgYWxzbyBpbiBwYWNrYWdlIHByb3ZpZGVkIGJ5IHBhY2thZ2UgbWFpbnRhaW5lci5cbiIKK21zZ3N0ciAiIgorIlxuIgorIiA9PT4gSsWrc8WzIGFyIHNjZW5hcmlqYXVzIHN1a3VydGFzIGZhaWxhcyBzaXN0ZW1vamUuXG4iCisiID09PiBGYWlsYXMgcGFrZXRlLCBwYXRlaWt0YXMgcGFrZXRvIHByacW+acWrcsSXdG9qby5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYxMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiICAgICBOb3QgbW9kaWZpZWQgc2luY2UgaW5zdGFsbGF0aW9uLlxuIgorbXNnc3RyICIiCisiXG4iCisiICAgICBOZXBha2Vpc3RhIG51byDEr2RpZWdpbW8uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiA9PT4gTW9kaWZpZWQgKGJ5IHlvdSBvciBieSBhIHNjcmlwdCkgc2luY2UgaW5zdGFsbGF0aW9uLlxuIgorbXNnc3RyICIiCisiXG4iCisiID09PiBQYWtlaXN0YSAoasWrc8WzIGFyIHNjZW5hcmlqYXVzIGTEl2thKSBudW8gxK9kaWVnaW1vLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjE2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgPT0+IERlbGV0ZWQgKGJ5IHlvdSBvciBieSBhIHNjcmlwdCkgc2luY2UgaW5zdGFsbGF0aW9uLlxuIgorbXNnc3RyICIiCisiXG4iCisiID09PiBJxaF0cmludGEgKGrFq3PFsyBhciBzY2VuYXJpamF1cyBkxJdrYSkgbnVvIMSvZGllZ2ltby5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYxOQorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IFBhY2thZ2UgZGlzdHJpYnV0b3IgaGFzIHNoaXBwZWQgYW4gdXBkYXRlZCB2ZXJzaW9uLlxuIgorbXNnc3RyICIgPT0+IFBha2V0xbMgcGxhdGludG9qYXMgcGF0ZWlrxJcgYXRuYXVqaW50xIUgdmVyc2lqxIUuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAgICBWZXJzaW9uIGluIHBhY2thZ2UgaXMgdGhlIHNhbWUgYXMgYXQgbGFzdCBpbnN0YWxsYXRpb24uXG4iCittc2dzdHIgIiAgICAgVmVyc2lqYSBlc2FudGkgcGFrZXRlIHlyYSB0b2tpYSBwYXQga2FpcCBwZXIgcHJhZWl0xIUgZGllZ2ltxIUuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBVc2luZyBuZXcgZmlsZSBhcyB5b3UgcmVxdWVzdGVkLlxuIgorbXNnc3RyICIgPT0+IE5hdWRvamFtYXMgbmF1amFzIGZhaWxhcywga2FpcCBudXJvZHl0YS5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYzMgorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IFVzaW5nIGN1cnJlbnQgb2xkIGZpbGUgYXMgeW91IHJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiID09PiBOYXVkb2phbWFzIGVzYW1hcyBzZW5hcyBmYWlsYXMsIGthaXAgbnVyb2R5dGEuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBLZWVwaW5nIG9sZCBjb25maWcgZmlsZSBhcyBkZWZhdWx0LlxuIgorbXNnc3RyICIgPT0+IFBhZ2FsIG51dHlsxJdqaW3EhSBwYWxpZWthbWFzIHNlbmFzIGZhaWxhcy5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY0NQorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IFVzaW5nIG5ldyBjb25maWcgZmlsZSBhcyBkZWZhdWx0LlxuIgorbXNnc3RyICIgPT0+IFBhZ2FsIG51dHlsxJdqaW3EhSBuYXVkb2phbWFzIG5hdWphcyBmYWlsYXMuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyIgICBXaGF0IHdvdWxkIHlvdSBsaWtlIHRvIGRvIGFib3V0IGl0ID8gIFlvdXIgb3B0aW9ucyBhcmU6XG4iCisiICAgIFkgb3IgSSAgOiBpbnN0YWxsIHRoZSBwYWNrYWdlIG1haW50YWluZXIncyB2ZXJzaW9uXG4iCisiICAgIE4gb3IgTyAgOiBrZWVwIHlvdXIgY3VycmVudGx5LWluc3RhbGxlZCB2ZXJzaW9uXG4iCisiICAgICAgRCAgICAgOiBzaG93IHRoZSBkaWZmZXJlbmNlcyBiZXR3ZWVuIHRoZSB2ZXJzaW9uc1xuIgorIiAgICAgIFogICAgIDogc3RhcnQgYSBzaGVsbCB0byBleGFtaW5lIHRoZSBzaXR1YXRpb25cbiIKK21zZ3N0ciAiIgorIiAgIEthIG5vcsSXdHVtxJd0ZSBkYXJ5dGkgPyAgSsWrc8WzIHBhc2lyaW5raW1haTpcbiIKKyIgICAgWSBvciBJICA6IGRpZWd0aSBwYWtldMWzIHByacW+acWrcsSXdG9qbyB2ZXJzaWrEhVxuIgorIiAgICBOIG9yIE8gIDogcGFsaWt0aSBkYWJhcnRpbsSZIHZlcnNpasSFXG4iCisiICAgICAgRCAgICAgOiBwYXJvZHl0aSBza2lydHVtdXMgdGFycCB2ZXJzaWrFs1xuIgorIiAgICAgIFogICAgIDogbnVsZWlzdGkgxaHEryBwcm9jZXPEhSwgdG9sZXNuaWFpIHNpdHVhY2lqb3MgcGVyxb5pxatyYWlcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY1OQorIywgYy1mb3JtYXQKK21zZ2lkICIgVGhlIGRlZmF1bHQgYWN0aW9uIGlzIHRvIGtlZXAgeW91ciBjdXJyZW50IHZlcnNpb24uXG4iCittc2dzdHIgIiBQYWdhbCBudXR5bMSXamltYSBidXMgcGFsaWt0YSBkYWJhcnRpbsSXIHZlcnNpamEuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIFRoZSBkZWZhdWx0IGFjdGlvbiBpcyB0byBpbnN0YWxsIHRoZSBuZXcgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIFBhZ2FsIG51dHlsxJdqaW3EhSBidXMgxK9kaWVndGEgbmF1amEgdmVyc2lqYS5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY2NgorbXNnaWQgIltkZWZhdWx0PU5dIgorbXNnc3RyICJbcGFnYWwgbnV0eWzEl2ppbcSFPU5dIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjY3Cittc2dpZCAiW2RlZmF1bHQ9WV0iCittc2dzdHIgIltwYWdhbCBudXR5bMSXamltxIU9WV0iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NjgKK21zZ2lkICJbbm8gZGVmYXVsdF0iCittc2dzdHIgIltuxJdyYSB2ZWlrc21vIHBhZ2FsIG51dHlsxJdqaW3EhV0iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NzEKK21zZ2lkICJlcnJvciB3cml0aW5nIHRvIHN0ZGVyciwgZGlzY292ZXJlZCBiZWZvcmUgY29uZmZpbGUgcHJvbXB0IgorbXNnc3RyICJrbGFpZGEgcmHFoWFudCDEryBpxaF2ZXN0xK8sIGF0cmFzdGEgcHJpZcWhIGtvbmZpZ8WrcmFjaW5pbyBmYWlsbyB1xb5rbGF1c8SFIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjgwCittc2dpZCAicmVhZCBlcnJvciBvbiBzdGRpbiBhdCBjb25mZmlsZSBwcm9tcHQiCittc2dzdHIgImtsYWlkYSBudXNrYWl0YW50IMSvdmVzdMSvLCBhdHJhc3RhIHByaWXFoSBrb25maWfFq3JhY2luaW8gZmFpbG8gdcW+a2xhdXPEhSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY4MQorbXNnaWQgIkVPRiBvbiBzdGRpbiBhdCBjb25mZmlsZSBwcm9tcHQiCittc2dzdHIgIiIKKyJmYWlsbyBwYWJhaWdvcyDFvnltxJcgc3RhbmRhcnRpbsSXamUgxK92ZXN0eWplIHByaWXFoSBrb25maWfFq3JhY2luaW8gZmFpbG8gIgorInXFvmtsYXVzxIUiCisKKyM6IHNyYy9kZXBjb24uYzoxNzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgZGVwZW5kcyBvbiAlcyIKK21zZ3N0ciAiJXMgcHJpa2xhdXNvIG51byAlcyIKKworIzogc3JjL2RlcGNvbi5jOjE3OAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBwcmUtZGVwZW5kcyBvbiAlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGVwY29uLmM6MTgxCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHJlY29tbWVuZHMgJXMiCittc2dzdHIgIiVzIHJla29tZW5kdW9qYSAlcyIKKworIzogc3JjL2RlcGNvbi5jOjE4NAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBzdWdnZXN0cyAlcyIKK21zZ3N0ciAiJXMgc2nFq2xvICVzIgorCisjOiBzcmMvZGVwY29uLmM6MTg3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGJyZWFrcyAlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGVwY29uLmM6MTkwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGNvbmZsaWN0cyB3aXRoICVzIgorbXNnc3RyICIlcyBrb25mbGlrdHVvamEgc3UgJXMiCisKKyM6IHNyYy9kZXBjb24uYzoxOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgZW5oYW5jZXMgJXMiCittc2dzdHIgIiVzIHBhZ2VyaW5hICVzIgorCisjOiBzcmMvZGVwY29uLmM6Mjk2CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHRvIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIGJ1cyBwYcWhYWxpbnRhcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjI5OQorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB0byBiZSBkZWNvbmZpZ3VyZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIGJ1cyBkZWtvbmZpZ8WrcnVvdGFzLlxuIgorCisjOiBzcmMvZGVwY29uLmM6MzA0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHRvIGJlIGluc3RhbGxlZCwgYnV0IGlzIHZlcnNpb24gJS4yNTBzLlxuIgorbXNnc3RyICIgICUuMjUwcyBwcmHFoW9tYSDEr2RpZWd0aSwgdGHEjWlhdSBqbyB2ZXJzaWphICUuMjUwcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjMxNAorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyBpbnN0YWxsZWQsIGJ1dCBpcyB2ZXJzaW9uICUuMjUwcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgeXJhIMSvZGllZ3RhcywgdGHEjWlhdSB5cmEgdmVyc2lqYSAlLjI1MHMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdW5wYWNrZWQsIGJ1dCBoYXMgbmV2ZXIgYmVlbiBjb25maWd1cmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyB5cmEgacWhcGFrdW90YXMsIHRhxI1pYXUgbmVidXZvIGtvbmZpZ8WrcnVvdGFzLlxuIgorCisjOiBzcmMvZGVwY29uLmM6MzM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHVucGFja2VkLCBidXQgaXMgdmVyc2lvbiAlLjI1MHMuXG4iCittc2dzdHIgIiAgJS4yNTBzIHlyYSBpxaFwYWt1b3RhcywgdGHEjWlhdSB5cmEgdmVyc2lqYSAlLjI1MHMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozNDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgbGF0ZXN0IGNvbmZpZ3VyZWQgdmVyc2lvbiBpcyAlLjI1MHMuXG4iCittc2dzdHIgIiAgJS4yNTBzIHBhc2t1dGluxJcga29uZmlnxatydW90YSB2ZXJzaWphIHlyYSAlLjI1MHMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozNTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgJXMuXG4iCittc2dzdHIgIiAgJS4yNTBzIHlyYSAlcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjM4OAorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYnV0IGlzIHRvIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIHRlaWtpYSAlLjI1MHMgdGHEjWlhdSBidXMgcGHFoWFsaW50YXMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGJ1dCBpcyB0byBiZSBkZWNvbmZpZ3VyZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIHRlaWtpYSAlLjI1MHMgdGHEjWlhdSBidXMgZGVrb25maWfFq3J1b3Rhcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjQwMQorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYnV0IGlzICVzLlxuIgorbXNnc3RyICIgICUuMjUwcyB0ZWlraWEgJS4yNTBzLCBiZXQgeXJhICVzLlxuIgorCisjOiBzcmMvZGVwY29uLmM6NDE1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIG5vdCBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIHlyYSBuZcSvZGllZ3Rhcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjQ0MworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyAodmVyc2lvbiAlLjI1MHMpIGlzIHRvIGJlIGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMgKHZlcnNpamEgJS4yNTBzKSBidXMgxK9kaWVndGFzLlxuIgorCisjOiBzcmMvZGVwY29uLmM6NDY4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyAodmVyc2lvbiAlLjI1MHMpIGlzIHByZXNlbnQgYW5kICVzLlxuIgorbXNnc3RyICIgICUuMjUwcyAodmVyc2lqYSAlLjI1MHMpIHlyYSAlcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjQ5NQorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYW5kIGlzIHRvIGJlIGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMgdGVpa2lhICUuMjUwcyBpciBidXMgxK9kaWVndGFzLlxuIgorCisjOiBzcmMvZGVwY29uLmM6NTM3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYW5kIGlzIHByZXNlbnQgYW5kICVzLlxuIgorbXNnc3RyICIgICUuMjUwcyB0ZWlraWEgJS4yNTBzIGlyIHlyYSAlcy5cbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjUwCisjLCBmdXp6eQorbXNnaWQgIlVzZSAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgZGl2ZXJ0aW5nIGZpbGVzLiIKK21zZ3N0ciAiTm9yxJdkYW1pIGdhdXRpIHBhZ2FsYsSFIMSvdnlrZHlraXRlIGRwa2ctc3BsaXQgLS1oZWxwIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjYgc3JjL3N0YXRjbWQuYzo1NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuICVzIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkRlYmlhbiAlcyB2ZXJzaWphICVzLlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLlxuIgorIkNvcHlyaWdodCAoQykgMjAxMCBHdWlsbGVtIEpvdmVyLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo3NSBzcmMvbWFpbi5jOjYzIHNyYy9xdWVyeWNtZC5jOjYwMyBzcmMvc3RhdGNtZC5jOjY1CisjOiBzcmMvdHJpZ2NtZC5jOjU1IGRwa2ctZGViL21haW4uYzo1NyBkcGtnLXNwbGl0L21haW4uYzo1MQorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjg5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAyIG9yXG4iCisibGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjg3IHNyYy9tYWluLmM6ODEgc3JjL3F1ZXJ5Y21kLmM6NjE1IHNyYy9zdGF0Y21kLmM6NzcKKyM6IGRwa2ctZGViL21haW4uYzo2OSBkcGtnLXNwbGl0L21haW4uYzo2MyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6OTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSA8Y29tbWFuZD5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIk5hdWRvamltYXM6ICVzIFs8cGFyYW1ldHJhcz4gLi4uXSA8a29tYW5kYT5cbiIKKyJcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjkxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIFstLWFkZF0gPGZpbGU+ICAgICAgICAgICBhZGQgYSBkaXZlcnNpb24uXG4iCisiICAtLXJlbW92ZSA8ZmlsZT4gICAgICAgICAgcmVtb3ZlIHRoZSBkaXZlcnNpb24uXG4iCisiICAtLWxpc3QgWzxnbG9iLXBhdHRlcm4+XSAgc2hvdyBmaWxlIGRpdmVyc2lvbnMuXG4iCisiICAtLWxpc3RwYWNrYWdlIDxmaWxlPiAgICAgc2hvdyB3aGF0IHBhY2thZ2UgZGl2ZXJ0cyB0aGUgZmlsZS5cbiIKKyIgIC0tdHJ1ZW5hbWUgPGZpbGU+ICAgICAgICByZXR1cm4gdGhlIGRpdmVydGVkIGZpbGUuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjEwMAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tcGFja2FnZSA8cGFja2FnZT4gICAgICBuYW1lIG9mIHRoZSBwYWNrYWdlIHdob3NlIGNvcHkgb2YgPGZpbGU+IHdpbGwgIgorIm5vdFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmUgZGl2ZXJ0ZWQuXG4iCisiICAtLWxvY2FsICAgICAgICAgICAgICAgICAgYWxsIHBhY2thZ2VzJyB2ZXJzaW9ucyBhcmUgZGl2ZXJ0ZWQuXG4iCisiICAtLWRpdmVydCA8ZGl2ZXJ0LXRvPiAgICAgdGhlIG5hbWUgdXNlZCBieSBvdGhlciBwYWNrYWdlcycgdmVyc2lvbnMuXG4iCisiICAtLXJlbmFtZSAgICAgICAgICAgICAgICAgYWN0dWFsbHkgbW92ZSB0aGUgZmlsZSBhc2lkZSAob3IgYmFjaykuXG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgc2V0IHRoZSBkaXJlY3Rvcnkgd2l0aCB0aGUgZGl2ZXJzaW9ucyBmaWxlLlxuIgorIiAgLS10ZXN0ICAgICAgICAgICAgICAgICAgIGRvbid0IGRvIGFueXRoaW5nLCBqdXN0IGRlbW9uc3RyYXRlLlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHF1aWV0IG9wZXJhdGlvbiwgbWluaW1hbCBvdXRwdXQuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIldoZW4gYWRkaW5nLCBkZWZhdWx0IGlzIC0tbG9jYWwgYW5kIC0tZGl2ZXJ0IDxvcmlnaW5hbD4uZGlzdHJpYi5cbiIKKyJXaGVuIHJlbW92aW5nLCAtLXBhY2thZ2Ugb3IgLS1sb2NhbCBhbmQgLS1kaXZlcnQgbXVzdCBtYXRjaCBpZiBzcGVjaWZpZWQuXG4iCisiUGFja2FnZSBwcmVpbnN0L3Bvc3RybSBzY3JpcHRzIHNob3VsZCBhbHdheXMgc3BlY2lmeSAtLXBhY2thZ2UgYW5kIC0tIgorImRpdmVydC5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MTY4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJlcnJvciB3cml0aW5nIGAlcyciCittc2dpZCAiZXJyb3IgY2hlY2tpbmcgJyVzJyIKK21zZ3N0ciAia2xhaWRhIGAlcycgcmHFoXltZSIKKworIzogc3JjL2RpdmVydGNtZC5jOjIwMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisicmVuYW1lIGludm9sdmVzIG92ZXJ3cml0aW5nIGAlcycgd2l0aFxuIgorIiAgZGlmZmVyZW50IGZpbGUgYCVzJywgbm90IGFsbG93ZWQiCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjIyMyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTM3MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBmaWxlICclcyciCittc2dzdHIgIm5lcGF2eWtvIHXFvnZlcnRpICVzOiAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjIyNworbXNnaWQgImZpbGUgY29weSIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjM5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gd3JpdGUgJXM6ICVzIgorbXNnaWQgImNhbm5vdCByZW5hbWUgJyVzJyB0byAnJXMnIgorbXNnc3RyICJuZXBhdnlrbyByYcWheXRpICVzOiAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjI1MgorIywgYy1mb3JtYXQKK21zZ2lkICJyZW5hbWU6IHJlbW92ZSBkdXBsaWNhdGUgb2xkIGxpbmsgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjYyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIGNvcGllZCBzb3VyY2UgZmlsZSAnJXMnIgorbXNnc3RyICJuZcSvbWFub21hIGnFoXZhbHl0aSB2c25wcmludGYiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyODQKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9jYWwgZGl2ZXJzaW9uIG9mICVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyODYKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiAgVmVyc2lvbiBvZiAlcyBvbiBzeXN0ZW0gaXMgJXMuXG4iCittc2dpZCAibG9jYWwgZGl2ZXJzaW9uIG9mICVzIHRvICVzIgorbXNnc3RyICIgIFNpc3RlbW9qZSBlc2FudGnEjWlvICVzIHBha2V0byB2ZXJzaWphIHlyYSAlcy5cbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjI5MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiICBWZXJzaW9uIG9mICVzIG9uIHN5c3RlbSBpcyAlcy5cbiIKK21zZ2lkICJkaXZlcnNpb24gb2YgJXMgYnkgJXMiCittc2dzdHIgIiAgU2lzdGVtb2plIGVzYW50acSNaW8gJXMgcGFrZXRvIHZlcnNpamEgeXJhICVzLlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjkzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIgIFZlcnNpb24gb2YgJXMgb24gc3lzdGVtIGlzICVzLlxuIgorbXNnaWQgImRpdmVyc2lvbiBvZiAlcyB0byAlcyBieSAlcyIKK21zZ3N0ciAiICBTaXN0ZW1vamUgZXNhbnRpxI1pbyAlcyBwYWtldG8gdmVyc2lqYSB5cmEgJXMuXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozMDkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIkRlYmlhbiAlcyB2ZXJzaW9uICVzLlxuIgorbXNnaWQgImFueSBkaXZlcnNpb24gb2YgJXMiCittc2dzdHIgIkRlYmlhbiAlcyB2ZXJzaWphICVzLlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MzExCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIgIFZlcnNpb24gb2YgJXMgb24gc3lzdGVtIGlzICVzLlxuIgorbXNnaWQgImFueSBkaXZlcnNpb24gb2YgJXMgdG8gJXMiCittc2dzdHIgIiAgU2lzdGVtb2plIGVzYW50acSNaW8gJXMgcGFrZXRvIHZlcnNpamEgeXJhICVzLlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MzU3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW5ub3Qgb3BlbiBHUEwgZmlsZSIKK21zZ2lkICJjYW5ub3QgY3JlYXRlIG5ldyAlcyBmaWxlIgorbXNnc3RyICJuZXBhdnlrbyBhdHZlcnRpIEdQTCBmYWlsbyIKKworIzogc3JjL2RpdmVydGNtZC5jOjM3NSBzcmMvc3RhdGNtZC5jOjIxNSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTQwNAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIGZpbGUgJyVzJyIKK21zZ3N0ciAibmXEr21hbm9tYSBpxaF2YWx5dGkgdnNucHJpbnRmIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MzgyCisjLCBmdXp6eQorbXNnaWQgImVycm9yIHJlbW92aW5nIG9sZCBkaXZlcnNpb25zLW9sZCIKK21zZ3N0ciAibmVwYXZ5a28gYXR2ZXJ0aSBzdGF0b3ZlcnJpZGUgZmFpbG8iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozODQKKyMsIGZ1enp5Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgbmV3IGRpdmVyc2lvbnMtb2xkIgorbXNnc3RyICJuZXBhdnlrbyBhdHZlcnRpIHN0YXRvdmVycmlkZSBmYWlsbyIKKworIzogc3JjL2RpdmVydGNtZC5jOjM4NgorIywgZnV6enkKK21zZ2lkICJlcnJvciBpbnN0YWxsaW5nIG5ldyBkaXZlcnNpb25zIgorbXNnc3RyICJuZXBhdnlrbyBhdHZlcnRpIHN0YXRvdmVycmlkZSBmYWlsbyIKKworIzogc3JjL2RpdmVydGNtZC5jOjQwNiBzcmMvZGl2ZXJ0Y21kLmM6NTAzIHNyYy9kaXZlcnRjbWQuYzo2MTAKKyM6IHNyYy9kaXZlcnRjbWQuYzo2MzAgc3JjL3N0YXRjbWQuYzoyOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhIHNpbmdsZSBhcmd1bWVudCIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDA5IHNyYy9kaXZlcnRjbWQuYzo0MzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZW5hbWUgXCIlc1wiIGlzIG5vdCBhYnNvbHV0ZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDExIHNyYy9zdGF0Y21kLmM6MjQ5Cittc2dpZCAiZmlsZSBtYXkgbm90IGNvbnRhaW4gbmV3bGluZXMiCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjQxOAorbXNnaWQgIkNhbm5vdCBkaXZlcnQgZGlyZWN0b3JpZXMiCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjQzMworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGRpdmVydCBmaWxlICclcycgdG8gaXRzZWxmIgorbXNnc3RyICJuZXBhdnlrbyBwYcWhYWxpbnRpIGZhaWxvIOKAniUuMjUwc+KAnCIKKworIzogc3JjL2RpdmVydGNtZC5jOjQ1MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiTGVhdmluZyBgJXMnIgorbXNnaWQgIkxlYXZpbmcgJyVzJ1xuIgorbXNnc3RyICJQYWxpZWthbWFzIGAlcyciCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBjbGFzaGVzIHdpdGggYCVzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDgxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJBZGRpbmcgYCVzJyIKK21zZ2lkICJBZGRpbmcgJyVzJ1xuIgorbXNnc3RyICJQcmlkZWRhbWFzIGAlcyciCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiTm8gZGl2ZXJzaW9uICclcycsIG5vbmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTI1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJtaXNtYXRjaCBvbiBkaXZlcnQtdG9cbiIKKyIgIHdoZW4gcmVtb3ZpbmcgYCVzJ1xuIgorIiAgZm91bmQgYCVzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJtaXNtYXRjaCBvbiBwYWNrYWdlXG4iCisiICB3aGVuIHJlbW92aW5nIGAlcydcbiIKKyIgIGZvdW5kIGAlcyciCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjUzOQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiUmVtb3ZpbmcgYCVzJyIKK21zZ2lkICJSZW1vdmluZyAnJXMnXG4iCittc2dzdHIgIsWgYWxpbmFtYXMg4oCeJXPigJwiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo2NTcKK21zZ2lkICJwYWNrYWdlIG1heSBub3QgY29udGFpbiBuZXdsaW5lcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjY2Cittc2dpZCAiZGl2ZXJ0LXRvIG1heSBub3QgY29udGFpbiBuZXdsaW5lcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzo2NAorbXNnaWQgImZhaWxlZCB0byBvcGVuIGRpdmVyc2lvbnMgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzo3MQorbXNnaWQgImZhaWxlZCB0byBmc3RhdCBwcmV2aW91cyBkaXZlcnNpb25zIGZpbGUiCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGRiLmM6NzMKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgZGl2ZXJzaW9ucyBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRkYi5jOjExMworIywgYy1mb3JtYXQKK21zZ2lkICJjb25mbGljdGluZyBkaXZlcnNpb25zIGludm9sdmluZyBgJS4yNTBzJyBvciBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZW5xdWlyeS5jOjczCittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgYXJlIGluIGEgbWVzcyBkdWUgdG8gc2VyaW91cyBwcm9ibGVtcyBkdXJpbmdcbiIKKyJpbnN0YWxsYXRpb24uICBUaGV5IG11c3QgYmUgcmVpbnN0YWxsZWQgZm9yIHRoZW0gKGFuZCBhbnkgcGFja2FnZXNcbiIKKyJ0aGF0IGRlcGVuZCBvbiB0aGVtKSB0byBmdW5jdGlvbiBwcm9wZXJseTpcbiIKK21zZ3N0ciAiIgorIlNla2FudHlzIHBha2V0YWkgc3VrxJdsxJcgcHJvYmxlbcWzIGRpZWdpbW8gbWV0dS4gIEppZSB0dXLEl3R1IGLFq3RpIHBha2FydG90aW5haSAiCisixK9kaWVndGkgKHRhaXAgcGF0IGlyIHBha2V0YWlcbiIKKyJudW8ga3VyacWzIGppZSBwcmlrbGF1c28pIGplaSBub3JpdGUga2FkIGppZSB2ZWlrdMWzOlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjgwCittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgaGF2ZSBiZWVuIHVucGFja2VkIGJ1dCBub3QgeWV0IGNvbmZpZ3VyZWQuXG4iCisiVGhleSBtdXN0IGJlIGNvbmZpZ3VyZWQgdXNpbmcgZHBrZyAtLWNvbmZpZ3VyZSBvciB0aGUgY29uZmlndXJlXG4iCisibWVudSBvcHRpb24gaW4gZHNlbGVjdCBmb3IgdGhlbSB0byB3b3JrOlxuIgorbXNnc3RyICIiCisiU2VrYW50eXMgcGFrZXRhaSBidXZvIGnFoXBha3VvdGkgdGHEjWlhdSBkYXIgbmVidXZvIGtvbmZpZ8WrcnVvdGkuXG4iCisiSmllIHR1cmkgYsWrdGkgc3Vrb25maWfFq3J1b3RpIG5hdWRvamFudCBkcGtnwrctLWNvbmZpZ3VyZSBhcmJhIGtvbmZpZ8WrcnVvdGlcbiIKKyJtZW5pdSBwYXNpcmlua2ltZSBkc2VsZWN0IHByb2dyYW1vamUsIGplaSBub3JpdGUsIGthZCBqaWUgdmVpa3TFszpcbiIKKworIzogc3JjL2VucXVpcnkuYzo4NworbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBvbmx5IGhhbGYgY29uZmlndXJlZCwgcHJvYmFibHkgZHVlIHRvIHByb2JsZW1zXG4iCisiY29uZmlndXJpbmcgdGhlbSB0aGUgZmlyc3QgdGltZS4gIFRoZSBjb25maWd1cmF0aW9uIHNob3VsZCBiZSByZXRyaWVkIHVzaW5nXG4iCisiZHBrZyAtLWNvbmZpZ3VyZSA8cGFja2FnZT4gb3IgdGhlIGNvbmZpZ3VyZSBtZW51IG9wdGlvbiBpbiBkc2VsZWN0OlxuIgorbXNnc3RyICIiCisiU2VrYW50eXMgcGFrZXRhaSB5cmEgcHVzaWF1IHN1a29uZmlnxatydW90aSwga2FkYW5naSBraWxvIHByb2JsZW3FsyBqdW9zICIKKyJkaWVnaWFudCBwaXJtxIUga2FydMSFLlxuIgorIlR1csSXdMWzIGLFq3RpIGRhcm9tYXMgcGFrYXJ0b3RpbmFzIGtvbmZpZ8WrcmF2aW1hcyBuYXVkb2phbnQgZHBrZyAtLWNvbmZpZ3VyZSAiCisiPHBha2V0YXM+IGFyYmFcbiIKKyJrb25maWfFq3JhdmltbyBtZW5pdSBwYXNpcmlua2ltZSBkc2VsZWN0IHByb2dyYW1vamU6XG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6OTQKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgb25seSBoYWxmIGluc3RhbGxlZCwgZHVlIHRvIHByb2JsZW1zIGR1cmluZ1xuIgorImluc3RhbGxhdGlvbi4gIFRoZSBpbnN0YWxsYXRpb24gY2FuIHByb2JhYmx5IGJlIGNvbXBsZXRlZCBieSByZXRyeWluZyBpdDtcbiIKKyJ0aGUgcGFja2FnZXMgY2FuIGJlIHJlbW92ZWQgdXNpbmcgZHNlbGVjdCBvciBkcGtnIC0tcmVtb3ZlOlxuIgorbXNnc3RyICIiCisiU2VrYW50eXMgcGFrZXRhaSB5cmEgcHVzaWF1IMSvZGllZ3RpLCBrYWRhbmdpIGtpbG8gZGllZ2ltbyBwcm9ibGVtxbMuXG4iCisiR2FsaW1hcyBwYWthcnRvdGluaXMgZGllZ2ltYXM7IHBha2V0dXMgZ2FsaW1hIHBhxaFhbGludGkgbmF1ZG9qYW50IGRzZWxlY3QsXG4iCisiYXJiYSBkcGtnIC0tcmVtb3ZlOlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjEwMQorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBhd2FpdGluZyBwcm9jZXNzaW5nIG9mIHRyaWdnZXJzIHRoYXQgdGhleVxuIgorImhhdmUgYWN0aXZhdGVkIGluIG90aGVyIHBhY2thZ2VzLiAgVGhpcyBwcm9jZXNzaW5nIGNhbiBiZSByZXF1ZXN0ZWQgdXNpbmdcbiIKKyJkc2VsZWN0IG9yIGRwa2cgLS1jb25maWd1cmUgLS1wZW5kaW5nIChvciBkcGtnIC0tdHJpZ2dlcnMtb25seSk6XG4iCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzoxMDgKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBoYXZlIGJlZW4gdHJpZ2dlcmVkLCBidXQgdGhlIHRyaWdnZXIgcHJvY2Vzc2luZ1xuIgorImhhcyBub3QgeWV0IGJlZW4gZG9uZS4gIFRyaWdnZXIgcHJvY2Vzc2luZyBjYW4gYmUgcmVxdWVzdGVkIHVzaW5nXG4iCisiZHNlbGVjdCBvciBkcGtnIC0tY29uZmlndXJlIC0tcGVuZGluZyAob3IgZHBrZyAtLXRyaWdnZXJzLW9ubHkpOlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTM3IHNyYy9lbnF1aXJ5LmM6MjExIHNyYy9lbnF1aXJ5LmM6MjkyIHNyYy9lbnF1aXJ5LmM6MzczCisjOiBzcmMvZW5xdWlyeS5jOjQ2MCBzcmMvc2VsZWN0LmM6OTggc3JjL3NlbGVjdC5jOjE2NCBzcmMvdHJpZ2NtZC5jOjE5OQorIzogc3JjL3VwZGF0ZS5jOjQ4IHNyYy91cGRhdGUuYzoxMTMgZHBrZy1zcGxpdC9xdWV1ZS5jOjIzMgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIHRha2VzIG5vIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS0lcyBwYXJhbWV0cmFzIG5lcmVpa2FsYXVqYSBudXJvZHl0aSBqb2tpxbMgcmVpa8WhbWnFsyIKKworIzogc3JjL2VucXVpcnkuYzoxNTIKK21zZ2lkICIiCisiQW5vdGhlciBwcm9jZXNzIGhhcyBsb2NrZWQgdGhlIGRhdGFiYXNlIGZvciB3cml0aW5nLCBhbmQgbWlnaHQgY3VycmVudGx5IGJlXG4iCisibW9kaWZ5aW5nIGl0LCBzb21lIG9mIHRoZSBmb2xsb3dpbmcgcHJvYmxlbXMgbWlnaHQganVzdCBiZSBkdWUgdG8gdGhhdC5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZW5xdWlyeS5jOjE5MQorIywgZnV6enkKKyN8IG1zZ2lkICI8dW5rbm93bj4iCittc2djdHh0ICJzZWN0aW9uIgorbXNnaWQgIjx1bmtub3duPiIKK21zZ3N0ciAiPG5lxb5pbm9tYXM+IgorCisjOiBzcmMvZW5xdWlyeS5jOjI1MQorIywgYy1mb3JtYXQKK21zZ2lkICIgJWQgaW4gJXM6ICIKK21zZ3N0ciAiICVkIHlyYSAodmlkdWplKSAlczogIgorCisjOiBzcmMvZW5xdWlyeS5jOjI2NgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiICVkIHBhY2thZ2VzLCBmcm9tIHRoZSBmb2xsb3dpbmcgc2VjdGlvbnM6IgorbXNnaWQgIiAlZCBwYWNrYWdlLCBmcm9tIHRoZSBmb2xsb3dpbmcgc2VjdGlvbjoiCittc2dpZF9wbHVyYWwgIiAlZCBwYWNrYWdlcywgZnJvbSB0aGUgZm9sbG93aW5nIHNlY3Rpb25zOiIKK21zZ3N0clswXSAiICVkIHBha2V0YWkgacWhIHNla2FuxI1pxbMgc2t5cmnFszoiCittc2dzdHJbMV0gIiAlZCBwYWtldGFpIGnFoSBzZWthbsSNacWzIHNreXJpxbM6IgorCisjOiBzcmMvZW5xdWlyeS5jOjMwNQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIlZlcnNpb24gb2YgZHBrZyB3aXRoIHdvcmtpbmcgJXMgc3VwcG9ydCBub3QgeWV0IGNvbmZpZ3VyZWQuXG4iCisiIFBsZWFzZSB1c2UgJ2Rwa2cgLS1jb25maWd1cmUgZHBrZycsIGFuZCB0aGVuIHRyeSBhZ2Fpbi5cbiIKK21zZ3N0ciAiIgorImRwa2cgdmVyc2lqYSwgc3VkZXJpbmFtYSBzdSBlcG9jaGEsIGRhciBuZWtvbmZpZ8WrcnVvdGEuXG4iCisiIFByYcWhb21lIMSvdnlrZHl0aSBgZHBrZyAtLWNvbmZpZ3VyZSBkcGtnJywgaXIgYmFuZHl0aSB2xJdsLlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjMxMAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZHBrZyBub3QgcmVjb3JkZWQgYXMgaW5zdGFsbGVkLCBjYW5ub3QgY2hlY2sgZm9yICVzIHN1cHBvcnQhXG4iCittc2dzdHIgIiIKKyJkcGtnIG7El3JhIHXFvmZpa3N1b3RhIGthaXAgxK9kaWVndGEsIG5lxK9tYW5vbWEgcGF0aWtyaW50aSBzdWRlcmluYW11bW8gc3UgIgorImVwb2NoYSFcbiIKKworIzogc3JjL2VucXVpcnkuYzozMjEKK21zZ2lkICJQcmUtRGVwZW5kcyBmaWVsZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvZW5xdWlyeS5jOjMyOQorbXNnaWQgImVwb2NoIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzM3Cittc2dpZCAibG9uZyBmaWxlbmFtZXMiCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzozNDYKK21zZ2lkICJtdWx0aXBsZSBDb25mbGljdHMgYW5kIFJlcGxhY2VzIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6NDM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBjYW5ub3Qgc2VlIGhvdyB0byBzYXRpc2Z5IHByZS1kZXBlbmRlbmN5OlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisiZHBrZzogbmVtYXRhdSBrYWlwIGdhbMSXxI1pYXUgcGF0ZW5raW50aSBwcmlrbGF1c29teWLEmTpcbiIKKyIgJXNcbiIKKworIzogc3JjL2VucXVpcnkuYzo0MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHNhdGlzZnkgcHJlLWRlcGVuZGVuY2llcyBmb3IgJS4yNTBzICh3YW50ZWQgZHVlIHRvICUuMjUwcykiCittc2dzdHIgIm5lZ2FsaXUgcGF0ZW5raW50aSBwcmlrbGF1c29teWJpxbMgJS4yNTBzIChub3JpbWEgZMSXbCAlLjI1MHMpIgorCisjOiBzcmMvZW5xdWlyeS5jOjQ3MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAib2Jzb2xldGUgb3B0aW9uICctLSVzJywgcGxlYXNlIHVzZSAnLS0lcycgaW5zdGVhZC4iCittc2dzdHIgIsSuc3DEl2ppbWFzOiBwYXJhbWV0cmFzIOKAni0tJXPigJwgbmViZW5hdWRvdGluYXNcbiIKKworIzogc3JjL2VucXVpcnkuYzo1MTkKK21zZ2lkICIiCisiLS1jb21wYXJlLXZlcnNpb25zIHRha2VzIHRocmVlIGFyZ3VtZW50czogPHZlcnNpb24+IDxyZWxhdGlvbj4gPHZlcnNpb24+IgorbXNnc3RyICIiCisiLS1jb21wYXJlLXZlcnNpb25zIHJlaWthbGluZ29zIHRyeXMgcmVpa8WhbcSXczogPHZlcnNpamE+IDxzYW50eWtpYWk+IDx2ZXJzaWphPiIKKworIzogc3JjL2VucXVpcnkuYzo1MjQKK21zZ2lkICItLWNvbXBhcmUtdmVyc2lvbnMgYmFkIHJlbGF0aW9uIgorbXNnc3RyICJibG9nYXMgc8SFcnnFoWlzIHN1IC0tY29tcGFyZS12ZXJzaW9ucyIKKworIzogc3JjL2VucXVpcnkuYzo1Mjkgc3JjL2VucXVpcnkuYzo1MzEgc3JjL2VucXVpcnkuYzo1NDAgc3JjL2VucXVpcnkuYzo1NDIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInZlcnNpb24gJyVzJyBoYXMgYmFkIHN5bnRheDogJXMiCittc2dzdHIgImRwa2c6IHZlcnNpamEgJyVzJyBzdSBibG9nYSBzaW50YWtzZTogJXNcbiIKKworIzogc3JjL2Vycm9ycy5jOjYwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogZXJyb3IgcHJvY2Vzc2luZyAlcyAoLS0lcyk6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKyIlczoga2xhaWRhIGFwZG9yb2phbnQgJXMgKC0tJXMpOlxuIgorIiAlc1xuIgorCisjOiBzcmMvZXJyb3JzLmM6NjgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJkcGtnOiBmYWlsZWQgdG8gYWxsb2NhdGUgbWVtb3J5IGZvciBuZXcgZW50cnkgaW4gbGlzdCBvZiBmYWlsZWQgcGFja2FnZXMuIgorbXNnaWQgIiIKKyIlczogZmFpbGVkIHRvIGFsbG9jYXRlIG1lbW9yeSBmb3IgbmV3IGVudHJ5IGluIGxpc3Qgb2YgZmFpbGVkIHBhY2thZ2VzOiAlcyIKK21zZ3N0ciAiIgorImRwa2c6IG5lcGF2eWtvIHNraXJ0aSBhdG1pbnRpZXMgbmF1amFtIMSvcmHFoXVpIGFwaWUgbmVwYXZ5a3VzaXVzIHBha2V0dXMuIgorCisjOiBzcmMvZXJyb3JzLmM6NzkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImRwa2c6IHRvbyBtYW55IGVycm9ycywgc3RvcHBpbmdcbiIKK21zZ2lkICIlczogdG9vIG1hbnkgZXJyb3JzLCBzdG9wcGluZ1xuIgorbXNnc3RyICJkcGtnOiBwZXIgZGF1ZyBrbGFpZMWzLCBzdGFiZGF1XG4iCisKKyM6IHNyYy9lcnJvcnMuYzo4NworbXNnaWQgIkVycm9ycyB3ZXJlIGVuY291bnRlcmVkIHdoaWxlIHByb2Nlc3Npbmc6XG4iCittc2dzdHIgIkFwZG9yb2phbnQgxK92eWtvIGtsYWlkxbM6XG4iCisKKyM6IHNyYy9lcnJvcnMuYzo5NAorbXNnaWQgIlByb2Nlc3Npbmcgd2FzIGhhbHRlZCBiZWNhdXNlIHRoZXJlIHdlcmUgdG9vIG1hbnkgZXJyb3JzLlxuIgorbXNnc3RyICJQcm9jZXNhcyBidXZvIHN1c3RhYmR5dGFzLCBkxJdsIGRpZGVsaW8ga2xhaWTFsyBraWVraW8uXG4iCisKKyM6IHNyYy9lcnJvcnMuYzoxMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSAlcyB3YXMgb24gaG9sZCwgcHJvY2Vzc2luZyBpdCBhbnl3YXkgYXMgeW91IHJlcXVlc3RlZFxuIgorbXNnc3RyICJQYWtldGFzICVzIGJ1dm8gc3VzdGFiZHl0YXMsIHRhxI1pYXUgeXJhIGFwZG9yb2phbWFzIGthaXAgbnVyb2R5dGFcbiIKKworIzogc3JjL2Vycm9ycy5jOjEwOQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiUGFja2FnZSAlcyBpcyBvbiBob2xkLCBub3QgdG91Y2hpbmcgaXQuICBVc2UgLS1mb3JjZS1ob2xkIHRvIG92ZXJyaWRlLlxuIgorbXNnc3RyICIiCisiUGFrZXRhcyAlcyBzdWxhaWt5dGFzLCBuZWxpZcSNaXUgam8uICBOYXVkb2tpdGUgLS1mb3JjZS1ob2xkIGthZCBhcGRvcm90aS5cbiIKKworIzogc3JjL2Vycm9ycy5jOjExOQorIywgZnV6enkKK21zZ2lkICJvdmVycmlkaW5nIHByb2JsZW0gYmVjYXVzZSAtLWZvcmNlIGVuYWJsZWQ6IgorbXNnc3RyICIiCisiZHBrZzogxK9zcMSXamltYXM6IHByb2JsZW1hIGlnbm9ydW9qYW1hLCBuZXMgbnVyb2R5dGEgLS1mb3JjZTpcbiIKKyIgIgorCisjOiBzcmMvZmlsZXNkYi5jOjMwNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcyciCittc2dzdHIgIm5lcGF2eWtvIGF0dmVydGkgcGFrZXRvIOKAniUuMjUwc+KAnCBmYWlsxbMgc2FyYcWhbyBmYWlsbyIKKworIzogc3JjL2ZpbGVzZGIuYzozMTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcycgbWlzc2luZywgYXNzdW1pbmcgcGFja2FnZSBoYXMgbm8gZmlsZXMgIgorImN1cnJlbnRseSBpbnN0YWxsZWQuIgorbXNnc3RyICIiCisiZHBrZzogcmltdGFzIMSvc3DEl2ppbWFzOiBmYWlsxbMgc8SFcmHFoW8gZmFpbGFzIHBha2V0dWkg4oCeJS4yNTBz4oCcIG5lcmFzdGFzOyAiCisiZGFyb21hIHByaWVsYWlkYSwga2FkIG7El3JhIMSvZGllZ3TFsyBwYWtldG8gZmFpbMWzLlxuIgorCisjOiBzcmMvZmlsZXNkYi5jOjMyMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICclLjI1MHMnIgorbXNnc3RyICJuZXBhdnlrbyBhdHZlcnRpIHBha2V0byDigJ4lLjI1MHPigJwgZmFpbMWzIHNhcmHFoW8gZmFpbG8iCisKKyM6IHNyYy9maWxlc2RiLmM6MzMwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlcyBsaXN0IGZvciBwYWNrYWdlIGAlLjI1MHMnIgorbXNnaWQgInJlYWRpbmcgZmlsZXMgbGlzdCBmb3IgcGFja2FnZSAnJS4yNTBzJyIKK21zZ3N0ciAiUGFrZXRvIOKAniUuMjUwc+KAnCBmYWlsxbMgc8SFcmHFoWFzIgorCisjOiBzcmMvZmlsZXNkYi5jOjMzNgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICclLjI1MHMnIGlzIG1pc3NpbmcgZmluYWwgbmV3bGluZSIKK21zZ3N0ciAicGFrZXRvIGAlLjI1MHMnIGZhaWzFsyBzxIVyYcWhbyBmYWlsZSB5cmEgdHXFocSNaWFzIGZhaWxvIHZhcmRhcyIKKworIzogc3JjL2ZpbGVzZGIuYzozNDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlIGAlLjI1MHMnIGNvbnRhaW5zIGVtcHR5IGZpbGVuYW1lIgorbXNnc3RyICJwYWtldG8gYCUuMjUwcycgZmFpbMWzIHPEhXJhxaFvIGZhaWxlIHlyYSB0dcWhxI1pYXMgZmFpbG8gdmFyZGFzIgorCisjOiBzcmMvZmlsZXNkYi5jOjM1MgorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSBgJS4yNTBzJyIKK21zZ3N0ciAia2xhaWRhIHXFvmRhcmFudCBwYWtldG8gYCUuMjUwcycgZmFpbG8gc8SFcmHFoW8gZmFpbMSFIgorCisjOiBzcmMvZmlsZXNkYi5jOjQ2MgorbXNnaWQgIihSZWFkaW5nIGRhdGFiYXNlIC4uLiAiCittc2dzdHIgIihTa2FpdG9tYSBkdW9tZW7FsyBiYXrElyAuLi4gIgorCisjOiBzcmMvZmlsZXNkYi5jOjQ4MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiJWQgZmlsZXMgYW5kIGRpcmVjdG9yaWVzIGN1cnJlbnRseSBpbnN0YWxsZWQuKVxuIgorbXNnaWQgIiVkIGZpbGUgb3IgZGlyZWN0b3J5IGN1cnJlbnRseSBpbnN0YWxsZWQuKVxuIgorbXNnaWRfcGx1cmFsICIlZCBmaWxlcyBhbmQgZGlyZWN0b3JpZXMgY3VycmVudGx5IGluc3RhbGxlZC4pXG4iCittc2dzdHJbMF0gIsWhaXVvIG1ldHUgxK9kaWVndGEgJWQgZmFpbMWzIGlyIGFwbGFua8WzLilcbiIKK21zZ3N0clsxXSAixaFpdW8gbWV0dSDEr2RpZWd0YSAlZCBmYWlsxbMgaXIgYXBsYW5rxbMuKVxuIgorCisjOiBzcmMvZmlsZXNkYi5jOjUxNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICJuZXBhdnlrbyBzdWt1cnRpIGF0bmF1amludG8gZmFpbMWzIHPEhXJhxaFvIGZhaWxvIHBha2V0dWkgJXMiCisKKyM6IHNyYy9maWxlc2RiLmM6NTI2CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB3cml0ZSB0byB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAibmVwYXZ5a28gxK9yYcWheXRpIGF0bmF1amludMWzIGZhaWzFsyBzxIVyYcWhbyBwYWtldHVpICVzIgorCisjOiBzcmMvZmlsZXNkYi5jOjUyOAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZmx1c2ggdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIm5lcGF2eWtvIGnFoXZhbHl0aSBhdG5hdWppbnTFsyBmYWlsxbMgc8SFcmHFoW8gZmFpbG8gcGFrZXR1aSAlcyIKKworIzogc3JjL2ZpbGVzZGIuYzo1MzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHN5bmMgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIm5lcGF2eWtvIHNpbmNocm9uaXp1b3RpIGF0bmF1amludG8gZmFpbMWzIHPEhXJhxaFvIGZhaWxvIHBha2V0dWkgJXMiCisKKyM6IHNyYy9maWxlc2RiLmM6NTMzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjbG9zZSB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAibmVwYXZ5a28gdcW+ZGFyeXRpIGF0bmF1amludMWzIGZhaWzFsyBzxIVyYcWhbyBmYWlsbyBwYWtldHVpICVzIgorCisjOiBzcmMvZmlsZXNkYi5jOjUzNQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gaW5zdGFsbCB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAibmVwYXZ5a28gxK9kaWVndGkgYXRuYXVqaW50xbMgZmFpbMWzIHPEhXJhxaFvIGZhaWxvIHBha2V0dWkgJXMiCisKKyM6IHNyYy9oZWxwLmM6NDgKK21zZ2lkICJub3QgaW5zdGFsbGVkIgorbXNnc3RyICJuZcSvZGllZ3RhcyIKKworIzogc3JjL2hlbHAuYzo0OQorbXNnaWQgIm5vdCBpbnN0YWxsZWQgYnV0IGNvbmZpZ3MgcmVtYWluIgorbXNnc3RyICJuZcSvZGllZ3RhcywgdGHEjWlhdSBsaWvEmSBrb25maWfFq3JhY2lqb3MgZmFpbGFpIgorCisjOiBzcmMvaGVscC5jOjUwCisjLCBmdXp6eQorbXNnaWQgImJyb2tlbiBkdWUgdG8gZmFpbGVkIHJlbW92YWwgb3IgaW5zdGFsbGF0aW9uIgorbXNnc3RyICJzdWdhZGludGFzIGTEl2wgbmVwYXZ5a3VzaW8gcGHFoWFsaW5pbW8iCisKKyM6IHNyYy9oZWxwLmM6NTEKK21zZ2lkICJ1bnBhY2tlZCBidXQgbm90IGNvbmZpZ3VyZWQiCittc2dzdHIgImnFoXBha3VvdGFzIHRhxI1pYXUgbmVrb25maWfFq3J1b3RhcyIKKworIzogc3JjL2hlbHAuYzo1MgorbXNnaWQgImJyb2tlbiBkdWUgdG8gcG9zdGluc3QgZmFpbHVyZSIKK21zZ3N0ciAic3VnYWRpbnRhcyBkxJdsIGtsYWlkb3MgcG8gxK9kaWVnaW1vIgorCisjOiBzcmMvaGVscC5jOjUzCittc2dpZCAiYXdhaXRpbmcgdHJpZ2dlciBwcm9jZXNzaW5nIGJ5IGFub3RoZXIgcGFja2FnZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvaGVscC5jOjU0Cittc2dpZCAidHJpZ2dlcmVkIgorbXNnc3RyICIiCisKKyM6IHNyYy9oZWxwLmM6NTUKK21zZ2lkICJpbnN0YWxsZWQiCittc2dzdHIgIsSvZGllZ3RhcyIKKworIzogc3JjL2hlbHAuYzoxMDcKKyMsIGZ1enp5Cittc2dpZCAiUEFUSCBpcyBub3Qgc2V0LiIKK21zZ3N0ciAiZHBrZyAtIGtsYWlkYTogbmVudXN0YXR5dGFzIFBBVEguXG4iCisKKyM6IHNyYy9oZWxwLmM6MTI5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICInJXMnIG5vdCBmb3VuZCBpbiBQQVRIIG9yIG5vdCBleGVjdXRhYmxlLiIKK21zZ3N0ciAiZHBrZzog4oCeJXPigJwgbmVyYXN0YXMga2VseWplIFBBVEguXG4iCisKKyM6IHNyYy9oZWxwLmM6MTM4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiJWQgZXhwZWN0ZWQgcHJvZ3JhbSBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS5cbiIKKyIlcyIKK21zZ2lkX3BsdXJhbCAiIgorIiVkIGV4cGVjdGVkIHByb2dyYW1zIG5vdCBmb3VuZCBpbiBQQVRIIG9yIG5vdCBleGVjdXRhYmxlLlxuIgorIiVzIgorbXNnc3RyWzBdICJkcGtnOiDigJ4lc+KAnCBuZXJhc3RhcyBrZWx5amUgUEFUSC5cbiIKK21zZ3N0clsxXSAiZHBrZzog4oCeJXPigJwgbmVyYXN0YXMga2VseWplIFBBVEguXG4iCisKKyM6IHNyYy9oZWxwLmM6MTQxCisjLCBmdXp6eQorbXNnaWQgIiIKKyJOb3RlOiByb290J3MgUEFUSCBzaG91bGQgdXN1YWxseSBjb250YWluIC91c3IvbG9jYWwvc2JpbiwgL3Vzci9zYmluIGFuZCAvIgorInNiaW4uIgorbXNnc3RyICIiCisiJWQgcHJvZ3JhbW9zIG5lcmFzdG9zIGFwbGlua29zIGtpbnRhbWFqYW1lIFBBVEguXG4iCisiTkI6IHJvb3QgbmF1ZG90b2pvIGtpbnRhbWFqYW1lIFBBVEggdHVyxJd0xbMgYsWrdGkgL3Vzci9sb2NhbC9zYmluLCAvdXNyL3NiaW4gIgorImlyIC9zYmluLiIKKworIzogc3JjL2hlbHAuYzoxODgKK21zZ2lkICJhZG1pbmRpciBtdXN0IGJlIGluc2lkZSBpbnN0ZGlyIGZvciBkcGtnIHRvIHdvcmsgcHJvcGVybHkiCittc2dzdHIgIiIKKworIzogc3JjL2hlbHAuYzoxOTAgc3JjL21haW4uYzo3NDcKKyMsIGZ1enp5Cittc2dpZCAidW5hYmxlIHRvIHNldGVudiBmb3Igc3VicHJvY2Vzc2VzIgorbXNnc3RyICJuZXBhdnlrbyBnYXV0aSB2c25wcmludGYgYsWrc2Vub3MiCisKKyM6IHNyYy9oZWxwLmM6MTkyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjaHJvb3QgdG8gYCUuMjUwcyciCittc2dzdHIgIm5lcGF2eWtvIHBha2Vpc3RpIMWhYWtuaW5pbyBhcGxhbmtvIMSvIOKAniUuMjUwc+KAnCIKKworIzogc3JjL2hlbHAuYzoxOTQgZHBrZy1kZWIvYnVpbGQuYzo0NTUgZHBrZy1kZWIvYnVpbGQuYzo0NTcKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTM2IGRwa2ctZGViL2J1aWxkLmM6NTU4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byBgJS4yNTVzJyIKK21zZ3N0ciAibmVwYXZ5a28gYXR2ZXJ0aSBhcGxhbmtvIGAlLjI1NXMnIgorCisjOiBzcmMvaGVscC5jOjI1NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IGV4ZWN1dGUgcGVybWlzc2lvbnMgb24gYCUuMjUwcyciCittc2dzdHIgIm5lcGF2eWtvIG51c3RhdHl0aSB2eWtkeW1vIHRlaXNpxbMg4oCeJS4yNTBz4oCcIgorCisjOiBzcmMvaGVscC5jOjI3NgorIywgZnV6enkKK21zZ2lkICJ1bmFibGUgdG8gc2V0ZW52IGZvciBtYWludGFpbmVyIHNjcmlwdCIKK21zZ3N0ciAibmVwYXZ5a28gZ2F1dGkgdnNucHJpbnRmIGLFq3Nlbm9zIgorCisjOiBzcmMvaGVscC5jOjMwMAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiaW5zdGFsbGVkICVzIHNjcmlwdCIKK21zZ3N0ciAic2VuYXMgJXMgc2NlbmFyaWp1cyIKKworIzogc3JjL2hlbHAuYzozMTMgc3JjL2hlbHAuYzozODIgc3JjL2hlbHAuYzo0NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgJXMgYCUuMjUwcyciCittc2dzdHIgIm5lcGF2eWtzdGEgcGF0aWtyaW50aSAlcyBgJS4yNTBzJyIKKworIzogc3JjL2hlbHAuYzozNjggc3JjL2hlbHAuYzo0MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAibmV3ICVzIHNjcmlwdCIKK21zZ3N0ciAibmF1amFzICVzIHNjZW5hcmlqdXMiCisKKyM6IHNyYy9oZWxwLmM6NDAyCisjLCBjLWZvcm1hdAorbXNnaWQgIm9sZCAlcyBzY3JpcHQiCittc2dzdHIgInNlbmFzICVzIHNjZW5hcmlqdXMiCisKKyM6IHNyYy9oZWxwLmM6NDE2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCAlcyAnJS4yNTBzJzogJXMiCittc2dzdHIgIm5lcGF2eWtzdGEgcGF0aWtyaW50aSAlcyBgJS4yNTBzJyIKKworIzogc3JjL2hlbHAuYzo0MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZyAtIHRyeWluZyBzY3JpcHQgZnJvbSB0aGUgbmV3IHBhY2thZ2UgaW5zdGVhZCAuLi5cbiIKK21zZ3N0ciAiZHBrZyAtIGJhbmRvbWFzIHNjZW5hcmlqdXMgacWhIG5hdWpvcyBwYWtldG8gdmVyc2lqb3MgLi4uXG4iCisKKyM6IHNyYy9oZWxwLmM6NDM5Cittc2dpZCAidGhlcmUgaXMgbm8gc2NyaXB0IGluIHRoZSBuZXcgdmVyc2lvbiBvZiB0aGUgcGFja2FnZSAtIGdpdmluZyB1cCIKK21zZ3N0ciAibmF1am8gcGFrZXRvIHZlcnNpam9qZSBuxJdyYSBzY2VuYXJpamF1cyAtIHBhbGlla2FtYSB0YWlwIgorCisjOiBzcmMvaGVscC5jOjQ0NQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiAuLi4gaXQgbG9va3MgbGlrZSB0aGF0IHdlbnQgT0suXG4iCittc2dzdHIgImRwa2c6IC4uLiBhdHJvZG8gdmlza2FzIHByYcSXam8gR0VSQUkuXG4iCisKKyM6IHNyYy9oZWxwLmM6NjE2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2VjdXJlbHkgcmVtb3ZlICclLjI1NXMnIgorbXNnc3RyICJuZXBhdnlrbyBzdWt1cnRpIGAlLjI1NXMnIgorCisjOiBzcmMvaGVscC5jOjYyMSBkcGtnLWRlYi9pbmZvLmM6NjUgZHBrZy1kZWIvaW5mby5jOjY3Cittc2dpZCAicm0gY29tbWFuZCBmb3IgY2xlYW51cCIKK21zZ3N0ciAiIgorCisjOiBzcmMvaW5mb2RiLmM6NTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoZWNrIGV4aXN0ZW5jZSBvZiBgJS4yNTBzJyIKK21zZ3N0ciAibmVwYXZ5a28gcGF0aWtyaW50aSBhciBlZ3ppc3R1b2phIGAlLjI1MHMnIgorCisjOiBzcmMvaW5mb2RiLmM6NzAKK21zZ2lkICJjYW5ub3QgcmVhZCBpbmZvIGRpcmVjdG9yeSIKK21zZ3N0ciAibmVnYWxpdSBwZXJza2FpdHl0aSBpbmZvcm1hY2lqb3MgYXBsYW5rbyIKKworIzogc3JjL21haW4uYzo2MAorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIG1hbmFnZW1lbnQgcHJvZ3JhbSB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICJEZWJpYW4gYCVzJyBwYWNrYWdlIG1hbmFnZW1lbnQgcHJvZ3JhbSB2ZXJzaW9uICVzLlxuIgorCisjOiBzcmMvbWFpbi5jOjg1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtaXwtLWluc3RhbGwgICAgICAgPC5kZWIgZmlsZSBuYW1lPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyZWN0b3J5PiAuLi5cbiIKKyIgIC0tdW5wYWNrICAgICAgICAgICA8LmRlYiBmaWxlIG5hbWU+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXJlY3Rvcnk+IC4uLlxuIgorIiAgLUF8LS1yZWNvcmQtYXZhaWwgIDwuZGViIGZpbGUgbmFtZT4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRpcmVjdG9yeT4gLi4uXG4iCisiICAtLWNvbmZpZ3VyZSAgICAgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLS10cmlnZ2Vycy1vbmx5ICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC1yfC0tcmVtb3ZlICAgICAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtUHwtLXB1cmdlICAgICAgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLS1nZXQtc2VsZWN0aW9ucyBbPHBhdHRlcm4+IC4uLl0gR2V0IGxpc3Qgb2Ygc2VsZWN0aW9ucyB0byBzdGRvdXQuXG4iCisiICAtLXNldC1zZWxlY3Rpb25zICAgICAgICAgICAgICAgICBTZXQgcGFja2FnZSBzZWxlY3Rpb25zIGZyb20gc3RkaW4uXG4iCisiICAtLWNsZWFyLXNlbGVjdGlvbnMgICAgICAgICAgICAgICBEZXNlbGVjdCBldmVyeSBub24tZXNzZW50aWFsIHBhY2thZ2UuXG4iCisiICAtLXVwZGF0ZS1hdmFpbCA8UGFja2FnZXMtZmlsZT4gICBSZXBsYWNlIGF2YWlsYWJsZSBwYWNrYWdlcyBpbmZvLlxuIgorIiAgLS1tZXJnZS1hdmFpbCA8UGFja2FnZXMtZmlsZT4gICAgTWVyZ2Ugd2l0aCBpbmZvIGZyb20gZmlsZS5cbiIKKyIgIC0tY2xlYXItYXZhaWwgICAgICAgICAgICAgICAgICAgIEVyYXNlIGV4aXN0aW5nIGF2YWlsYWJsZSBpbmZvLlxuIgorIiAgLS1mb3JnZXQtb2xkLXVuYXZhaWwgICAgICAgICAgICAgRm9yZ2V0IHVuaW5zdGFsbGVkIHVuYXZhaWxhYmxlIHBrZ3MuXG4iCisiICAtc3wtLXN0YXR1cyA8cGFja2FnZT4gLi4uICAgICAgICBEaXNwbGF5IHBhY2thZ2Ugc3RhdHVzIGRldGFpbHMuXG4iCisiICAtcHwtLXByaW50LWF2YWlsIDxwYWNrYWdlPiAuLi4gICBEaXNwbGF5IGF2YWlsYWJsZSB2ZXJzaW9uIGRldGFpbHMuXG4iCisiICAtTHwtLWxpc3RmaWxlcyA8cGFja2FnZT4gLi4uICAgICBMaXN0IGZpbGVzIGBvd25lZCcgYnkgcGFja2FnZShzKS5cbiIKKyIgIC1sfC0tbGlzdCBbPHBhdHRlcm4+IC4uLl0gICAgICAgIExpc3QgcGFja2FnZXMgY29uY2lzZWx5LlxuIgorIiAgLVN8LS1zZWFyY2ggPHBhdHRlcm4+IC4uLiAgICAgICAgRmluZCBwYWNrYWdlKHMpIG93bmluZyBmaWxlKHMpLlxuIgorIiAgLUN8LS1hdWRpdCAgICAgICAgICAgICAgICAgICAgICAgQ2hlY2sgZm9yIGJyb2tlbiBwYWNrYWdlKHMpLlxuIgorIiAgLS1wcmludC1hcmNoaXRlY3R1cmUgICAgICAgICAgICAgUHJpbnQgZHBrZyBhcmNoaXRlY3R1cmUuXG4iCisiICAtLWNvbXBhcmUtdmVyc2lvbnMgPGE+IDxvcD4gPGI+ICBDb21wYXJlIHZlcnNpb24gbnVtYmVycyAtIHNlZSBiZWxvdy5cbiIKKyIgIC0tZm9yY2UtaGVscCAgICAgICAgICAgICAgICAgICAgIFNob3cgaGVscCBvbiBmb3JjaW5nLlxuIgorIiAgLURofC0tZGVidWc9aGVscCAgICAgICAgICAgICAgICAgU2hvdyBoZWxwIG9uIGRlYnVnZ2luZy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIkNvbW1hbmRzOlxuIgorIiAgLWl8LS1pbnN0YWxsICAgICAgIDwuZGViIGZhaWxvIHZhcmRhcz4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgIgorIjxhcGxhbmthcz4gLi4uXG4iCisiICAtLXVucGFjayAgICAgICAgICAgPC5kZWIgZmFpbG8gdmFyZGFzPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSAiCisiPGFwbGFua2FzPiAuLi5cbiIKKyIgIC1BfC0tcmVjb3JkLWF2YWlsICA8LmRlYiBmYWlsbyB2YXJkYXM+IC4uLiB8IC1SfC0tcmVjdXJzaXZlICIKKyI8YXBsYW5rYXM+IC4uLlxuIgorIiAgLS1jb25maWd1cmUgICAgICAgIDxwYWtldGFzPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC1yfC0tcmVtb3ZlICAgICAgICA8cGFrZXRhcz4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtUHwtLXB1cmdlICAgICAgICAgPHBha2V0YXM+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLS1nZXQtc2VsZWN0aW9ucyBbPHBhdHRlcm4+IC4uLl0gUGFyb2R5dGkgcGFrZXTFsyBwYXNpcmlua2ltdXMgacWhdmVzdHlqZS5cbiIKKyIgIC0tc2V0LXNlbGVjdGlvbnMgICAgICAgICAgICAgICAgIE51c3RhdHl0aSBwYWtldMWzIHBhc2lyaW5raW11cyDEr3Zlc3R5amUuXG4iCisiICAtLWNsZWFyLXNlbGVjdGlvbnMgICAgICAgICAgICAgICBBdMW+eW3El3RpIG5lc3ZhcmJpdXMgcGFrZXR1cy5cbiIKKyIgIC0tdXBkYXRlLWF2YWlsIDxQYWtldMWzLWZhaWxhcz4gICBQYWtlaXN0aSBnYWxpbcWzIHBha2V0xbMgaW5mb3JtYWNpasSFLlxuIgorIiAgLS1tZXJnZS1hdmFpbCA8UGFrZXTFsy1mYWlsYXM+ICAgIFN1bGlldGkgc3UgaW5mb3JtYWNpamEgacWhIGZhaWxvLlxuIgorIiAgLS1jbGVhci1hdmFpbCAgICAgICAgICAgICAgICAgICAgUGHFoWFsaW50aSBnYWxpbcWzIHBha2V0xbMgaW5mb3JtYWNpasSFLlxuIgorIiAgLS1mb3JnZXQtb2xkLXVuYXZhaWwgICAgICAgICAgICAgUGFtaXLFoXRpIHBhxaFhbGludHVzIG5lcGFzaWVraWFtdXMgIgorInBha2V0dXMuXG4iCisiICAtc3wtLXN0YXR1cyA8cGFrZXRhcz4gLi4uICAgICAgICBQYXJvZHl0aSBwYWtldG8gYsWrc2VuxIUuXG4iCisiICAtcHwtLXByaW50LWF2YWlsIDxwYWtldGFzPiAuLi4gICBQYXJvZHl0aSBwYWtldG8gdmVyc2lqb3MgYsWrc2VuxIUuXG4iCisiICAtTHwtLWxpc3RmaWxlcyA8cGFrZXRhcz4gLi4uICAgICBwYXJvZHl0aSBmYWlsdXMsIOKAnnByaWtsYXVzb211c+KAnCBudW8gIgorInBha2V0by5cbiIKKyIgIC1sfC0tbGlzdCBbPHBhdHRlcm4+IC4uLl0gICAgICAgIFBhcm9keXRpIHBha2V0xbMgc8SFcmHFocSFLlxuIgorIiAgLVN8LS1zZWFyY2ggPHBhdHRlcm4+IC4uLiAgICAgICAgUmFzdGkgcGFrZXR1aSBwcmlrbGF1c2FuxI1pdXMgZmFpbHVzLlxuIgorIiAgLUN8LS1hdWRpdCAgICAgICAgICAgICAgICAgICAgICAgSWXFoWtvdGkgc3VnYWRpbnTFsyBwYWtldMWzLlxuIgorIiAgLS1wcmludC1hcmNoaXRlY3R1cmUgICAgICAgICAgICAgUGFyb2R5dGkgZHBrZyBhcmNoaXRla3TFq3LEhS5cbiIKKyIgIC0tY29tcGFyZS12ZXJzaW9ucyA8YT4gPG9wPiA8Yj4gIFBhbHlnaW50aSB2ZXJzaWrFsyBudW1lcml1cyAtIMW+acWrcsSXdGkgIgorIsW+ZW1pYXUuXG4iCisiICAtLWZvcmNlLWhlbHAgICAgICAgICAgICAgICAgICAgICBSb2R5dGkgaW5mb3JtYWNpamEgYXBpZSBwcml2ZXJzdGluaXVzICIKKyJ2ZWlrc211cy5cbiIKKyIgIC1EaHwtLWRlYnVnPWhlbHAgICAgICAgICAgICAgICAgIFJvZHl0aSBkZXJpbmltbyBpbmZvcm1hY2lqxIUuXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTEzIHNyYy9xdWVyeWNtZC5jOjYzMSBzcmMvdHJpZ2NtZC5jOjc3IGRwa2ctZGViL21haW4uYzo4OAorIzogZHBrZy1zcGxpdC9tYWluLmM6NzcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyIgIC1ofC0taGVscCAgICAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgICAgICAgICBTaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorbXNnc3RyICIiCisiICAtaHwtLWhlbHAgICAgICAgICAgICAgICAgICAgICAgICBSb2R5dGkgxaFpdMSFIHBhZ2FsYm9zIHByYW5lxaFpbcSFLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICAgICAgICAgUGFyb2R5dGkgdmVyc2lqxIUuXG4iCisiICAtLWxpY2Vuc2V8LS1saWNlbmNlICAgICAgICAgICAgICBSb2R5dGkgbGljZW56aWpvcyBzxIVseWdhcy5cbiIKKyJcbiIKKworIzogc3JjL21haW4uYzoxMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlVzZSBkcGtnIC1ifC0tYnVpbGR8LWN8LS1jb250ZW50c3wtZXwtLWNvbnRyb2x8LUl8LS1pbmZvfC1mfC0tZmllbGR8XG4iCisiIC14fC0tZXh0cmFjdHwtWHwtLXZleHRyYWN0fC0tZnN5cy10YXJmaWxlICBvbiBhcmNoaXZlcyAodHlwZSAlcyAtLWhlbHApLlxuIgorIlxuIgorbXNnc3RyICIiCisibmF1ZG9qaW1hcyBkcGtnIC1ifC0tYnVpbGR8LWN8LS1jb250ZW50c3wtZXwtLWNvbnRyb2x8LUl8LS1pbmZvfC1mfC0tZmllbGR8XG4iCisiIC14fC0tZXh0cmFjdHwtWHwtLXZleHRyYWN0fC0tZnN5cy10YXJmaWxlICBhcmNoeXZhbXMgKHN1cmlua2l0ZSAlcyAtLSIKKyJoZWxwKS5cbiIKKyJcbiIKKworIzogc3JjL21haW4uYzoxMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkZvciBpbnRlcm5hbCB1c2U6IGRwa2cgLS1hc3NlcnQtc3VwcG9ydC1wcmVkZXBlbmRzIHwgLS1wcmVkZXAtcGFja2FnZSB8XG4iCisiICAtLWFzc2VydC13b3JraW5nLWVwb2NoIHwgLS1hc3NlcnQtbG9uZy1maWxlbmFtZXMgfCAtLWFzc2VydC1tdWx0aS1jb25yZXAuXG4iCisiXG4iCittc2dzdHIgIiIKKyJWaWRpbmlhbSBuYXVkb2ppbXVpOiBkcGtnIC0tYXNzZXJ0LXN1cHBvcnQtcHJlZGVwZW5kcyB8IC0tcHJlZGVwLXBhY2thZ2UgfFxuIgorIiAgLS1hc3NlcnQtd29ya2luZy1lcG9jaCB8IC0tYXNzZXJ0LWxvbmctZmlsZW5hbWVzIHwgLS1hc3NlcnQtbXVsdGktY29ucmVwLlxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjEyOAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyIgIC0tcm9vdD08ZGlyZWN0b3J5PiAgICAgICAgIEluc3RhbGwgb24gYSBkaWZmZXJlbnQgcm9vdCBkaXJlY3RvcnkuXG4iCisiICAtLWluc3RkaXI9PGRpcmVjdG9yeT4gICAgICBDaGFuZ2UgaW5zdGFsbGF0aW9uIGRpciB3aXRob3V0IGNoYW5naW5nIGFkbWluICIKKyJkaXIuXG4iCisiICAtLXBhdGgtZXhjbHVkZT08cGF0dGVybj4gICBEbyBub3QgaW5zdGFsbCBwYXRocyB3aGljaCBtYXRjaCBhIHNoZWxsICIKKyJwYXR0ZXJuLlxuIgorIiAgLS1wYXRoLWluY2x1ZGU9PHBhdHRlcm4+ICAgUmUtaW5jbHVkZSBhIHBhdHRlcm4gYWZ0ZXIgYSBwcmV2aW91cyAiCisiZXhjbHVzaW9uLlxuIgorIiAgLU98LS1zZWxlY3RlZC1vbmx5ICAgICAgICAgU2tpcCBwYWNrYWdlcyBub3Qgc2VsZWN0ZWQgZm9yIGluc3RhbGwvIgorInVwZ3JhZGUuXG4iCisiICAtRXwtLXNraXAtc2FtZS12ZXJzaW9uICAgICBTa2lwIHBhY2thZ2VzIHdob3NlIHNhbWUgdmVyc2lvbiBpcyBpbnN0YWxsZWQuXG4iCisiICAtR3wtLXJlZnVzZS1kb3duZ3JhZGUgICAgICBTa2lwIHBhY2thZ2VzIHdpdGggZWFybGllciB2ZXJzaW9uIHRoYW4gIgorImluc3RhbGxlZC5cbiIKKyIgIC1CfC0tYXV0by1kZWNvbmZpZ3VyZSAgICAgIEluc3RhbGwgZXZlbiBpZiBpdCB3b3VsZCBicmVhayBzb21lIG90aGVyICIKKyJwYWNrYWdlLlxuIgorIiAgLS1bbm8tXXRyaWdnZXJzICAgICAgICAgICAgU2tpcCBvciBmb3JjZSBjb25zZXF1ZW50aWFsIHRyaWdnZXIgIgorInByb2Nlc3NpbmcuXG4iCisiICAtLW5vLWRlYnNpZyAgICAgICAgICAgICAgICBEbyBub3QgdHJ5IHRvIHZlcmlmeSBwYWNrYWdlIHNpZ25hdHVyZXMuXG4iCisiICAtLW5vLWFjdHwtLWRyeS1ydW58LS1zaW11bGF0ZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSnVzdCBzYXkgd2hhdCB3ZSB3b3VsZCBkbyAtIGRvbid0IGRvIGl0LlxuIgorIiAgLUR8LS1kZWJ1Zz08b2N0YWw+ICAgICAgICAgRW5hYmxlIGRlYnVnZ2luZyAoc2VlIC1EaGVscCBvciAtLWRlYnVnPWhlbHApLlxuIgorIiAgLS1zdGF0dXMtZmQgPG4+ICAgICAgICAgICAgU2VuZCBzdGF0dXMgY2hhbmdlIHVwZGF0ZXMgdG8gZmlsZSBkZXNjcmlwdG9yICIKKyI8bj4uXG4iCisiICAtLWxvZz08ZmlsZW5hbWU+ICAgICAgICAgICBMb2cgc3RhdHVzIGNoYW5nZXMgYW5kIGFjdGlvbnMgdG8gPGZpbGVuYW1lPi5cbiIKKyIgIC0taWdub3JlLWRlcGVuZHM9PHBhY2thZ2U+LC4uLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSWdub3JlIGRlcGVuZGVuY2llcyBpbnZvbHZpbmcgPHBhY2thZ2U+LlxuIgorIiAgLS1mb3JjZS0uLi4gICAgICAgICAgICAgICAgT3ZlcnJpZGUgcHJvYmxlbXMgKHNlZSAtLWZvcmNlLWhlbHApLlxuIgorIiAgLS1uby1mb3JjZS0uLi58LS1yZWZ1c2UtLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9wIHdoZW4gcHJvYmxlbXMgZW5jb3VudGVyZWQuXG4iCisiICAtLWFib3J0LWFmdGVyIDxuPiAgICAgICAgICBBYm9ydCBhZnRlciBlbmNvdW50ZXJpbmcgPG4+IGVycm9ycy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIlBhc2lyaW5raW1haTpcbiIKKyIgIC0tYWRtaW5kaXI9PGFwbGFua2FzPiAgICAgbmF1ZG9raXRlIDxhcGxhbmthcz4gdmlldG9qICVzLlxuIgorIiAgLS1yb290PTxhcGxhbmthcz4gICAgICAgICDErmRpZWd0aSDEryBraXTEhSDFoWFrbmluxK8gYXBsYW5rxIUuXG4iCisiICAtLWluc3RkaXI9PGFwbGFua2FzPiAgICAgIFBha2Vpc3RpIMSvZGllZ2ltbyBhcGxhbmvEhSBuZWtlacSNaWFudCAiCisiYWRtaW5pc3RyYXRvcmlhdXMgYXBsYW5rby5cbiIKKyIgIC1PfC0tc2VsZWN0ZWQtb25seSAgICAgICAgIFByYWxlaXN0aSBwYWtldHVzIG5lcGHFvnltxJd0dXMgxK9kaWVnaW11aS8iCisiYXRuYXVqaW5pbXVpLlxuIgorIiAgLUV8LS1za2lwLXNhbWUtdmVyc2lvbiAgICAgUHJhbGVpc3RpIHBha2V0dXMga3VyacWzIGlkaWVndG9zIHZlcnNpam9zIHlyYSAiCisidG9raW9zIHBhdC5cbiIKKyIgIC1HfC0tcmVmdXNlLWRvd25ncmFkZSAgICAgIFByYWxlaXN0aSBwYWtldHVzIGt1cmllIHlyYSBhbmtzdGVzbmnFsyAiCisidmVyc2lqxbMuXG4iCisiICAtQnwtLWF1dG8tZGVjb25maWd1cmUgICAgICDErmRpZWd0aSBuZWF0c2nFvnZlbGdpYW50IMSvIHRhaSwga2FkIGJ1cyAiCisic3VnYWRpbnRpIGtpdGkgcGFrZXRhaS5cbiIKKyIgIC0tbm8tZGVic2lnICAgICAgICAgICAgICAgIE5lYmFuZHl0aSB0aWtyaW50aSBwYWtldMWzIHBhcmHFocWzLlxuIgorIiAgLS1uby1hY3R8LS1kcnktcnVufC0tc2ltdWxhdGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5ldnlrZHl0aSB2ZWlrc23FsyAsIHRhxI1pYXUgcGFyYcWheXRpIGthcyBidXMgIgorInBhZGFyeXRhLlxuIgorIiAgLUR8LS1kZWJ1Zz08b2N0YWw+ICAgICAgICAgxK5qdW5ndGkgZGVyaW5pbcSFICjFvmnFq3LEl3RpIC1EaGVscCBhcmJhIC0tIgorImRlYnVnPWhlbHApLlxuIgorIiAgLS1zdGF0dXMtZmQgPG4+ICAgICAgICAgICAgU2l1c3RpIGLFq3Nlbm9zIHBhc2lrZWl0aW1vIGF0bmF1amluaW11cyDEryBmYWlsxbMgIgorImFwcmHFocSFIDxuPi5cbiIKKyIgIC0tbG9nPTxmYWlsbyB2YXJkYXM+ICAgICAgIFJlZ2lzdHJ1b3RpIHZlaWtzbXVzIGlyIHBhc2lrZWl0aW11cyDEryDFvnVybmFsxIUgIgorIjxmYWlsbyB2YXJkYXM+LlxuIgorIiAgLS1pZ25vcmUtZGVwZW5kcz08cGFrZXRhcz4sLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZ25vcnVvdGkgcHJpa2xhdXNvbXliZXMsIGt5bGFuxI1pYXMgZMSXbCAiCisiPHBha2V0bz4uXG4iCisiICAtLWZvcmNlLS4uLiAgICAgICAgICAgICAgICBQZXLFvmVuZ3RpIHByb2JsZW1hcyAoxb5pxatyxJd0aSAtLWZvcmNlLWhlbHApLlxuIgorIiAgLS1uby1mb3JjZS0uLi58LS1yZWZ1c2UtLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdXN0b3RpIG51dGlrdXMga2xhaWRhaS5cbiIKKyIgIC0tYWJvcnQtYWZ0ZXIgPHNrYWnEjWl1cz4gICAgICAgICAgTnV0cmF1a3RpIMSvdnlrdXMgPHNrYWnEjWl1cz4ga2xhaWRvbXMuXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTU0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21wYXJpc29uIG9wZXJhdG9ycyBmb3IgLS1jb21wYXJlLXZlcnNpb25zIGFyZTpcbiIKKyIgIGx0IGxlIGVxIG5lIGdlIGd0ICAgICAgICh0cmVhdCBlbXB0eSB2ZXJzaW9uIGFzIGVhcmxpZXIgdGhhbiBhbnkgIgorInZlcnNpb24pO1xuIgorIiAgbHQtbmwgbGUtbmwgZ2UtbmwgZ3QtbmwgKHRyZWF0IGVtcHR5IHZlcnNpb24gYXMgbGF0ZXIgdGhhbiBhbnkgdmVyc2lvbik7XG4iCisiICA8IDw8IDw9ID0gPj0gPj4gPiAgICAgICAob25seSBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIGNvbnRyb2wgZmlsZSAiCisic3ludGF4KS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIlBhbHlnaW5pbW8gb3BlcmF0b3JpYWkgZMSXbCAtLWNvbXBhcmUtdmVyc2lvbnMgeXJhOlxuIgorIiAgbHQgbGUgZXEgbmUgZ2UgZ3QgICAgICAgKHR1xaHEjWnEhSB2ZXJzaWrEhSBsYWlreXRpIHBhxI1pYSBhbmtzxI1pYXVzaWEpO1xuIgorIiAgbHQtbmwgbGUtbmwgZ2UtbmwgZ3QtbmwgKHR1xaHEjWnEhSB2ZXJzaWrEhSBsYWlreXRpIGthaXAgcGHEjWlhIG5hdWphdXNpxIUpO1xuIgorIiAgPCA8PCA8PSA9ID49ID4+ID4gICAgICAgKHRpayBkxJdsIHN1ZGVyaW5hbXVtbyBzdSB2YWxkeW1vIGZhaWxvIHNpbnRha3NlKS5cbiIKKyJcbiIKKworIzogc3JjL21haW4uYzoxNjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiVXNlIGBkc2VsZWN0JyBvciBgYXB0aXR1ZGUnIGZvciB1c2VyLWZyaWVuZGx5IHBhY2thZ2UgbWFuYWdlbWVudC5cbiIKK21zZ3N0ciAiIgorIk5hdWRva2l0ZSBgZHNlbGVjdCcgYXJiYSBgYXB0aXR1ZGUnIGplaSBub3JpdGUgdHZhcmt5dGkgcGFrZXR1cyB2YXJ0b3RvanVpICIKKyJkcmF1Z2nFoWtvamUgYXBsaW5rb2plLlxuIgorCisjOiBzcmMvbWFpbi5jOjE3MAorIywgZnV6enkKK21zZ2lkICIiCisiVHlwZSBkcGtnIC0taGVscCBmb3IgaGVscCBhYm91dCBpbnN0YWxsaW5nIGFuZCBkZWluc3RhbGxpbmcgcGFja2FnZXMgWypdO1xuIgorIlVzZSBgZHNlbGVjdCcgb3IgYGFwdGl0dWRlJyBmb3IgdXNlci1mcmllbmRseSBwYWNrYWdlIG1hbmFnZW1lbnQ7XG4iCisiVHlwZSBkcGtnIC1EaGVscCBmb3IgYSBsaXN0IG9mIGRwa2cgZGVidWcgZmxhZyB2YWx1ZXM7XG4iCisiVHlwZSBkcGtnIC0tZm9yY2UtaGVscCBmb3IgYSBsaXN0IG9mIGZvcmNpbmcgb3B0aW9ucztcbiIKKyJUeXBlIGRwa2ctZGViIC0taGVscCBmb3IgaGVscCBhYm91dCBtYW5pcHVsYXRpbmcgKi5kZWIgZmlsZXM7XG4iCisiXG4iCisiT3B0aW9ucyBtYXJrZWQgWypdIHByb2R1Y2UgYSBsb3Qgb2Ygb3V0cHV0IC0gcGlwZSBpdCB0aHJvdWdoIGBsZXNzJyBvciAiCisiYG1vcmUnICEiCittc2dzdHIgIiIKKyLErnZlc2tpdGUgZHBrZyAtLWhlbHAsIGplaSByZWlraWEgcGFnYWxib3MgYXBpZSBwcm9ncmFtxbMgZGllZ2ltxIUgaXIgxaFhbGluaW3EhSAiCisiWypdO1xuIgorIk5hdWRva2l0ZSDigJ5kc2VsZWN04oCcIGFyYmEg4oCeYXB0aXR1ZGXigJwsIGplaSBub3JpdGUgdHZhcmt5dGkgcGFrZXR1cyB2YXJ0b3RvanVpICIKKyJkcmF1Z2nFoWtvamUgYXBsaW5rb2plO1xuIgorIsSudmVza2l0ZSBkcGtnIC1EaGVscCwgamVpIHJlaWtpYSBkcGtnIGRlYnVnIG51c3RhdHltxbMgcmVpa8WhbWnFsyBzxIVyYcWhbztcbiIKKyLErnZlc2tpdGUgZHBrZyAtLWZvcmNlLWhlbHAsIGplaSByZWlraWEgcHJpdmVyc3RpbsWzIHBhc2lyaW5raW3FsyBwYWdhbGJvcztcbiIKKyLErnZlc2tpdGUgZHBrZy1kZWIgLS1oZWxwLCBqZWkgcmVpa2lhIHBhZ2FsYm9zIG1hbmlwdWxpdW9qYW50ICouZGViIGZhaWxhaXM7XG4iCisixK52ZXNraXRlIGRwa2cgLS1saWNlbnNlIGxpY2Vuemlqb3Mgc8SFbHlnb21zIChHTlUgR1BMKSBbKl0uXG4iCisiXG4iCisiUGFzaXJpbmtpbWFpIHBhxb55bcSXdGkgWypdIGnFoXZlZGEgZGF1ZyBpbmZvcm1hY2lqb3MgLSBudWtyZWlwa2l0ZSBqxIUgcGVyICIKKyJgbGVzcycgYXJiYSBgbW9yZScgISIKKworIzogc3JjL21haW4uYzoyMTkKK21zZ2lkICJTZXQgYWxsIGZvcmNlIG9wdGlvbnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjEKK21zZ2lkICJSZXBsYWNlIGEgcGFja2FnZSB3aXRoIGEgbG93ZXIgdmVyc2lvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIyMworbXNnaWQgIkNvbmZpZ3VyZSBhbnkgcGFja2FnZSB3aGljaCBtYXkgaGVscCB0aGlzIG9uZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIyNQorbXNnaWQgIlByb2Nlc3MgaW5jaWRlbnRhbCBwYWNrYWdlcyBldmVuIHdoZW4gb24gaG9sZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIyNworbXNnaWQgIlRyeSB0byAoZGUpaW5zdGFsbCB0aGluZ3MgZXZlbiB3aGVuIG5vdCByb290IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjI5Cittc2dpZCAiUEFUSCBpcyBtaXNzaW5nIGltcG9ydGFudCBwcm9ncmFtcywgcHJvYmxlbXMgbGlrZWx5IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjMxCittc2dpZCAiSW5zdGFsbCBhIHBhY2thZ2UgZXZlbiBpZiBpdCBmYWlscyBhdXRoZW50aWNpdHkgY2hlY2siCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzMKK21zZ2lkICJQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyB2ZXJzaW9ucyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzNQorbXNnaWQgIk92ZXJ3cml0ZSBhIGZpbGUgZnJvbSBvbmUgcGFja2FnZSB3aXRoIGFub3RoZXIiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzcKK21zZ2lkICJPdmVyd3JpdGUgYSBkaXZlcnRlZCBmaWxlIHdpdGggYW4gdW5kaXZlcnRlZCB2ZXJzaW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjM5Cittc2dpZCAiT3ZlcndyaXRlIG9uZSBwYWNrYWdlJ3MgZGlyZWN0b3J5IHdpdGggYW5vdGhlcidzIGZpbGUiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDEKK21zZ2lkICJEbyBub3QgcGVyZm9ybSBzYWZlIEkvTyBvcGVyYXRpb25zIHdoZW4gdW5wYWNraW5nIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjQzCittc2dpZCAiQWx3YXlzIHVzZSB0aGUgbmV3IGNvbmZpZyBmaWxlcywgZG9uJ3QgcHJvbXB0IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjQ1Cittc2dpZCAiQWx3YXlzIHVzZSB0aGUgb2xkIGNvbmZpZyBmaWxlcywgZG9uJ3QgcHJvbXB0IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjQ4Cittc2dpZCAiIgorIlVzZSB0aGUgZGVmYXVsdCBvcHRpb24gZm9yIG5ldyBjb25maWcgZmlsZXMgaWYgb25lXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgIGlzIGF2YWlsYWJsZSwgZG9uJ3QgcHJvbXB0LiBJZiBubyBkZWZhdWx0IGNhbiBiZSAiCisiZm91bmQsXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgIHlvdSB3aWxsIGJlIHByb21wdGVkIHVubGVzcyBvbmUgb2YgdGhlIGNvbmZvbGQgb3JcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgY29uZm5ldyBvcHRpb25zIGlzIGFsc28gZ2l2ZW4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNTMKK21zZ2lkICJBbHdheXMgaW5zdGFsbCBtaXNzaW5nIGNvbmZpZyBmaWxlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI1NQorbXNnaWQgIk9mZmVyIHRvIHJlcGxhY2UgY29uZmlnIGZpbGVzIHdpdGggbm8gbmV3IHZlcnNpb25zIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjU3Cittc2dpZCAiUHJvY2VzcyBldmVuIHBhY2thZ2VzIHdpdGggd3Jvbmcgb3Igbm8gYXJjaGl0ZWN0dXJlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjU5Cittc2dpZCAiSW5zdGFsbCBldmVuIGlmIGl0IHdvdWxkIGJyZWFrIGFub3RoZXIgcGFja2FnZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI2MQorbXNnaWQgIkFsbG93IGluc3RhbGxhdGlvbiBvZiBjb25mbGljdGluZyBwYWNrYWdlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI2MworIywgZnV6enkKKyN8IG1zZ2lkICJkZXBlbmRlbmN5IHByb2JsZW1zIC0gbm90IHJlbW92aW5nIgorbXNnaWQgIlR1cm4gYWxsIGRlcGVuZGVuY3kgcHJvYmxlbXMgaW50byB3YXJuaW5ncyIKK21zZ3N0ciAicHJpa2xhdXNvbXliacWzIHByb2JsZW1vcyAtIG5lxaFhbGluYW1hcyIKKworIzogc3JjL21haW4uYzoyNjUKKyMsIGZ1enp5CisjfCBtc2dpZCAiZGVwZW5kZW5jeSBwcm9ibGVtcyAtIG5vdCByZW1vdmluZyIKK21zZ2lkICJUdXJuIGRlcGVuZGVuY3kgdmVyc2lvbiBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzIgorbXNnc3RyICJwcmlrbGF1c29teWJpxbMgcHJvYmxlbW9zIC0gbmXFoWFsaW5hbWFzIgorCisjOiBzcmMvbWFpbi5jOjI2NworbXNnaWQgIlJlbW92ZSBwYWNrYWdlcyB3aGljaCByZXF1aXJlIGluc3RhbGxhdGlvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI2OQorbXNnaWQgIlJlbW92ZSBhbiBlc3NlbnRpYWwgcGFja2FnZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4MQorbXNnaWQgIkdlbmVyYWxseSBoZWxwZnVsIHByb2dyZXNzIGluZm9ybWF0aW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjgyCisjLCBmdXp6eQorbXNnaWQgIkludm9jYXRpb24gYW5kIHN0YXR1cyBvZiBtYWludGFpbmVyIHNjcmlwdHMiCittc2dzdHIgIm5lcGF2eWtvIGdhdXRpIHZzbnByaW50ZiBixatzZW5vcyIKKworIzogc3JjL21haW4uYzoyODMKK21zZ2lkICJPdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODQKK21zZ2lkICJMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4NQorIywgZnV6enkKKyN8IG1zZ2lkICJyZWFkIGVycm9yIGluIGNvbmZpZ3VyYXRpb24gZmlsZSBgJS4yNTVzJyIKK21zZ2lkICJPdXRwdXQgZm9yIGVhY2ggY29uZmlndXJhdGlvbiBmaWxlIgorbXNnc3RyICJudXNrYWl0eW1vIGtsYWlkYSBrb25maWfFq3JhY2lqb3MgZmFpbGUgIGAlLjI1NXMnIgorCisjOiBzcmMvbWFpbi5jOjI4NgorbXNnaWQgIkxvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4NworbXNnaWQgIkRlcGVuZGVuY2llcyBhbmQgY29uZmxpY3RzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg4Cittc2dpZCAiTG90cyBvZiBkZXBlbmRlbmNpZXMvY29uZmxpY3RzIG91dHB1dCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4OQorbXNnaWQgIlRyaWdnZXIgYWN0aXZhdGlvbiBhbmQgcHJvY2Vzc2luZyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MAorbXNnaWQgIkxvdHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2VycyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MQorbXNnaWQgIlNpbGx5IGFtb3VudHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2VycyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MgorbXNnaWQgIkxvdHMgb2YgZHJpdmVsIGFib3V0IGVnIHRoZSBkcGtnL2luZm8gZGlyZWN0b3J5IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjkzCittc2dpZCAiSW5zYW5lIGFtb3VudHMgb2YgZHJpdmVsIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MzA0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlcyBkZWJ1Z2dpbmcgb3B0aW9uLCAtLWRlYnVnPTxvY3RhbD4gb3IgLUQ8b2N0YWw+OlxuIgorIlxuIgorIiBOdW1iZXIgIFJlZi4gaW4gc291cmNlICAgRGVzY3JpcHRpb25cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjMxMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiRGVidWdnaW5nIG9wdGlvbnMgY2FuIGJlIG1peGVkIHVzaW5nIGJpdHdpc2Utb3IuXG4iCisiTm90ZSB0aGF0IHRoZSBtZWFuaW5ncyBhbmQgdmFsdWVzIGFyZSBzdWJqZWN0IHRvIGNoYW5nZS5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjMxOQorbXNnaWQgIi0tZGVidWcgcmVxdWlyZXMgYW4gb2N0YWwgYXJndW1lbnQiCittc2dzdHIgIi0tZGVidWcgcmVpa2lhIMWhZcWhaW9saWt0YWluxJdzIHJlaWvFoW3El3MiCisKKyM6IHNyYy9tYWluLmM6MzQ4CisjLCBjLWZvcm1hdAorbXNnaWQgIm51bGwgcGFja2FnZSBuYW1lIGluIC0taWdub3JlLWRlcGVuZHMgY29tbWEtc2VwYXJhdGVkIGxpc3QgYCUuMjUwcyciCittc2dzdHIgIiIKKyJ0dcWhxI1pYXMgcGFrZXRvIHZhcmRhcyAtLWlnbm9yZS1kZXBlbmRzIGthYmxlbGlhaXMgYXRza2lydGFtZSBzYXJhxaFlIGAlLjI1MHMnIgorCisjOiBzcmMvbWFpbi5jOjM1NAorIywgYy1mb3JtYXQKK21zZ2lkICItLWlnbm9yZS1kZXBlbmRzIHJlcXVpcmVzIGEgbGVnYWwgcGFja2FnZSBuYW1lLiBgJS4yNTBzJyBpcyBub3Q7ICVzIgorbXNnc3RyICItLWlnbm9yZS1kZXBlbmRzIHJlaWtpYSBlc2FtbyBwYWtldG8gdmFyZG8uIGAlLjI1MHMnIC0gbmV0aW5rYTsgJXMiCisKKyM6IHNyYy9tYWluLmM6MzcxIHNyYy9tYWluLmM6MzgxIHNyYy9tYWluLmM6NjQ5IGRwa2ctc3BsaXQvbWFpbi5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGludGVnZXIgZm9yIC0tJXM6IGAlLjI1MHMnIgorbXNnc3RyICJyZWlrYWxpbmdhcyBzdmVpa2FzIHNrYWnEjWl1cyAtLSVzOiBgJS4yNTBzJyIKKworIzogc3JjL21haW4uYzo0MzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgZXhlY3V0aW5nIGhvb2sgJyVzJywgZXhpdCBjb2RlICVkIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6NDY1Cittc2dpZCAic3RhdHVzIGxvZ2dlciIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjQ4MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXMgZm9yY2luZyBvcHRpb25zIC0gY29udHJvbCBiZWhhdmlvdXIgd2hlbiBwcm9ibGVtcyBmb3VuZDpcbiIKKyIgIHdhcm4gYnV0IGNvbnRpbnVlOiAgLS1mb3JjZS08dGhpbmc+LDx0aGluZz4sLi4uXG4iCisiICBzdG9wIHdpdGggZXJyb3I6ICAgIC0tcmVmdXNlLTx0aGluZz4sPHRoaW5nPiwuLi4gfCAtLW5vLWZvcmNlLTx0aGluZz4sLi4uXG4iCisiIEZvcmNpbmcgdGhpbmdzOlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6NDkwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJXQVJOSU5HIC0gdXNlIG9mIG9wdGlvbnMgbWFya2VkIFshXSBjYW4gc2VyaW91c2x5IGRhbWFnZSB5b3VyIGluc3RhbGxhdGlvbi5cbiIKKyJGb3JjaW5nIG9wdGlvbnMgbWFya2VkIFsqXSBhcmUgZW5hYmxlZCBieSBkZWZhdWx0LlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6NTA0CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gZm9yY2UvcmVmdXNlIG9wdGlvbiBgJS4qcyciCittc2dzdHIgIm5lxb5pbm9tYXMgcHJpdmVyc3RpL2F0c2lzYWt5dGkgcGFyYW1ldHJhcyBgJS4qcyciCisKKyM6IHNyYy9tYWluLmM6NTEzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJvYnNvbGV0ZSBmb3JjZS9yZWZ1c2Ugb3B0aW9uICclcydcbiIKK21zZ3N0ciAixK5zcMSXamltYXM6IG5lYmVuYXVkb3RpbmFzIHByaXZlcnN0aS9hdHNpc2FreXRpIHBhcmFtZXRyYXMg4oCeJXPigJxcbiIKKworIzogc3JjL21haW4uYzo2NDMKK21zZ2lkICItLWNvbW1hbmQtZmQgdGFrZXMgb25lIGFyZ3VtZW50LCBub3QgemVybyIKK21zZ3N0ciAiLS1jb21tYW5kLWZkIHJlaWthbGluZ2EgdmllbmEgcmVpa8WhbcSXLCBuZSBudWxpcyIKKworIzogc3JjL21haW4uYzo2NDUKK21zZ2lkICItLWNvbW1hbmQtZmQgb25seSB0YWtlcyBvbmUgYXJndW1lbnQiCittc2dzdHIgIi0tY29tbWFuZC1mZCByZWlrYWxpbmdhIHRpayB2aWVuYSByZWlrxaFtxJciCisKKyM6IHNyYy9tYWluLmM6NjUxCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkbid0IG9wZW4gYCVpJyBmb3Igc3RyZWFtIgorbXNnc3RyICJuZXBhdnlrbyBhdHZlcnRpIGAlaScgc3JhdXR1aSBzdWt1cnRpIgorCisjOiBzcmMvbWFpbi5jOjY3NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVvZiBiZWZvcmUgZW5kIG9mIGxpbmUgJWQiCittc2dzdHIgIm5ldGlrxJd0YSBmYWlsbyBwYWJhaWdhIHByaWXFoSAlZCBlaWx1dMSXcyBwYWJhaWfEhSIKKworIzogc3JjL21haW4uYzo3MTkgc3JjL21haW4uYzo3NDEgc3JjL3F1ZXJ5Y21kLmM6NjkyIHNyYy9zdGF0Y21kLmM6Mzc5CisjOiBkcGtnLWRlYi9tYWluLmM6MjAxIGRwa2ctc3BsaXQvbWFpbi5jOjE2MworbXNnaWQgIm5lZWQgYW4gYWN0aW9uIG9wdGlvbiIKK21zZ3N0ciAicmVpa2lhIHZlaWtzbW8gcGFyYW1ldHJvIgorCisjOiBzcmMvcGFja2FnZXMuYzoxMTMKK21zZ2lkICIiCisieW91IG11c3Qgc3BlY2lmeSBwYWNrYWdlcyBieSB0aGVpciBvd24gbmFtZXMsIG5vdCBieSBxdW90aW5nIHRoZSBuYW1lcyBvZiAiCisidGhlIGZpbGVzIHRoZXkgY29tZSBpbiIKK21zZ3N0ciAiIgorInR1cml0ZSBudXJvZHl0aSBwYWtldHVzIGrFsyB2YXJkYWlzLCBvIG5lIHZhcmRhaXMgZmFpbMWzLCBrdXJpdW9zZSBqaWUgeXJhIgorCisjOiBzcmMvcGFja2FnZXMuYzoxMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyAtLXBlbmRpbmcgZG9lcyBub3QgdGFrZSBhbnkgbm9uLW9wdGlvbiBhcmd1bWVudHMiCittc2dzdHIgIi0tJXMgLS1wZW5kaW5nIG5lcmVpa2lhIGpva2nFsyBuZSBwYXJhbWV0cm8gcmVpa8WhbWnFsyIKKworIzogc3JjL3BhY2thZ2VzLmM6MTM4IHNyYy9xdWVyeWNtZC5jOjM3NSBzcmMvcXVlcnljbWQuYzo1NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhdCBsZWFzdCBvbmUgcGFja2FnZSBuYW1lIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIHJlaWthbGluZ2EgYmVudCB2aWVuYSBwYWtldG8gdmFyZG8gcmVpa8WhbcSXIgorCisjOiBzcmMvcGFja2FnZXMuYzoxNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSAlcyBsaXN0ZWQgbW9yZSB0aGFuIG9uY2UsIG9ubHkgcHJvY2Vzc2luZyBvbmNlLlxuIgorbXNnc3RyICIiCisiUGFrZXRhcyAlcyBudXJvZHl0YXMgZGF1Z2lhdSBuZWkgdmllbsSFIGthcnTEhSwgYXBkb3JvdGFzIGJ1cyB0aWsgdmllbsSFICIKKyJrYXJ0xIUuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjE4MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiTW9yZSB0aGFuIG9uZSBjb3B5IG9mIHBhY2thZ2UgJXMgaGFzIGJlZW4gdW5wYWNrZWRcbiIKKyIgaW4gdGhpcyBydW4gISAgT25seSBjb25maWd1cmluZyBpdCBvbmNlLlxuIgorbXNnc3RyICIiCisiQnV2byBpxaFwYWt1b3RhIGRhdWdpYXUgbmVpIHZpZW5hIHBha2V0byAlcyB2ZXJzaWphICFcbiIKKyIgIEtvbmZpZ8WrcnVvc2l1IHRpayBrYXJ0xIUuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjIzMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorInBhY2thZ2UgJS4yNTBzIGlzIG5vdCByZWFkeSBmb3IgdHJpZ2dlciBwcm9jZXNzaW5nXG4iCisiIChjdXJyZW50IHN0YXR1cyBgJS4yNTBzJyB3aXRoIG5vIHBlbmRpbmcgdHJpZ2dlcnMpIgorbXNnc3RyICIiCisicGFrZXRhcyAlLjI1MHMgbmVwYXJ1b8WhdGFzIGtvbmZpZ8WrcmF2aW11aVxuIgorIiBuZWdhbGl1IGtvbmZpZ8WrcnVvdGkgKGRhYmFydGluxJcgYsWrc2VuYSBgJS4yNTBzJykiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjMzNAorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgd2hpY2ggcHJvdmlkZXMgJXMgaXMgdG8gYmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiICBQYWtldGFzICVzIGt1cmlzIHRlaWtpYSAlcyBidXMgcGHFoWFsaW50YXMuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjMzNworIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgaXMgdG8gYmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiICBQYWtldGFzICVzIGJ1cyBwYcWhYWxpbnRhcy5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MzU0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgVmVyc2lvbiBvZiAlcyBvbiBzeXN0ZW0gaXMgJXMuXG4iCittc2dzdHIgIiAgU2lzdGVtb2plIGVzYW50acSNaW8gJXMgcGFrZXRvIHZlcnNpamEgeXJhICVzLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzozNzYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyB3aGljaCBwcm92aWRlcyAlcyBhd2FpdHMgdHJpZ2dlciBwcm9jZXNzaW5nLlxuIgorbXNnc3RyICIgIFBha2V0YXMgJXMga3VyaXMgdGVpa2lhICVzIGJ1cyBwYcWhYWxpbnRhcy5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MzgwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgYXdhaXRzIHRyaWdnZXIgcHJvY2Vzc2luZy5cbiIKK21zZ3N0ciAiICBQYWtldGFzICVzIGJ1cyBwYcWhYWxpbnRhcy5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDEwCisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IGFsc28gY29uZmlndXJpbmcgYCVzJyAocmVxdWlyZWQgYnkgYCVzJylcbiIKK21zZ3N0ciAiZHBrZzogdGFpcCBwYXQga29uZmlnxatydW9qYW1hcyBgJXMnIChyZWlraWEgcGFrZXR1aSBgJXMnKVxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIHdoaWNoIHByb3ZpZGVzICVzIGlzIG5vdCBjb25maWd1cmVkIHlldC5cbiIKK21zZ3N0ciAiICBQYWtldGFzICVzIHRlaWtpYW50aXMgJXMgZGFyIG5la29uZmlnxatydW90YXMuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQyMQorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgaXMgbm90IGNvbmZpZ3VyZWQgeWV0LlxuIgorbXNnc3RyICIgIFBha2V0YXMgJXMgZGFyIG5la29uZmlnxatydW90YXMuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQzMgorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgd2hpY2ggcHJvdmlkZXMgJXMgaXMgbm90IGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiICBQYWtldGFzICVzIHRlaWtpYW50aXMgJXMgbmXEr2RpZWd0YXMuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQzNQorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgaXMgbm90IGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiICBQYWtldGFzICVzIG5lxK9kaWVndGFzLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICVzICglcykgYnJlYWtzICVzIGFuZCBpcyAlcy5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcGFja2FnZXMuYzo0NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlcyAoJXMpIHByb3ZpZGVzICVzLlxuIgorbXNnc3RyICIgICVzICglcykgdGVpa2lhICVzLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBWZXJzaW9uIG9mICVzIHRvIGJlIGNvbmZpZ3VyZWQgaXMgJXMuXG4iCittc2dzdHIgIiAgQnVzIGtvbmZpZ8WrcnVvamFtYSBwYWtldG8gJXMgdmVyc2lqYSAlcy5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NTk2Cittc2dpZCAiIGRlcGVuZHMgb24gIgorbXNnc3RyICIgcHJpa2xhdXNvIG51byAiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjYwMgorbXNnaWQgIjsgaG93ZXZlcjpcbiIKK21zZ3N0ciAiOyB0YcSNaWF1OlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjcxCisjLCBjLWZvcm1hdAorbXNnaWQgIi4uLi8lcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjkxCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGVuc3VyaW5nIGAlLjI1MHMnIGRvZXNuJ3QgZXhpc3QiCittc2dzdHIgImtsYWlkYSBtYW5vIGAlLjI1MHMnIG5lZWd6aXN0dW9qYSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5OQorbXNnaWQgInNwbGl0IHBhY2thZ2UgcmVhc3NlbWJseSIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEwOAorbXNnaWQgInJlYXNzZW1ibGVkIHBhY2thZ2UgZmlsZSIKK21zZ3N0ciAicGVycmlua3RhcyBwYWtldG8gZmFpbGFzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEzMworIywgYy1mb3JtYXQKK21zZ2lkICJBdXRoZW50aWNhdGluZyAlcyAuLi5cbiIKK21zZ3N0ciAiQXV0ZW50aWt1b2phbWFzICVzIC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEzOQorbXNnaWQgInBhY2thZ2Ugc2lnbmF0dXJlIHZlcmlmaWNhdGlvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE0NgorIywgYy1mb3JtYXQKK21zZ2lkICJWZXJpZmljYXRpb24gb24gcGFja2FnZSAlcyBmYWlsZWQhIgorbXNnc3RyICJQYWtldG8gJXMgdGlrcmluaW1hcyBuZXBhdnlrbyEiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTQ4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJWZXJpZmljYXRpb24gb24gcGFja2FnZSAlcyBmYWlsZWQsXG4iCisiYnV0IGluc3RhbGxpbmcgYW55d2F5IGFzIHlvdSByZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiIKKyJQYWtldG8gJXMgdGlrcmluaW1hcyBuZXBhdnlrbyxcbiIKKyJ0YcSNaWF1IGRpZWdpdSBrYWlwIG51cm9keXRhLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICJwYXNzZWRcbiIKK21zZ3N0ciAicHJhxJdqb1xuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE2NSBkcGtnLWRlYi9pbmZvLmM6ODEKKyMsIGZ1enp5Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSB0ZW1wb3JhcnkgZGlyZWN0b3J5IgorbXNnc3RyICJuZXBhdnlrbyBzdWt1cnRpIGxhaWtpbm8gYXBsYW5rbyB2YXJkbyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlcyBoYXMgdG9vIG1hbnkgQ29uZmxpY3RzL1JlcGxhY2VzIHBhaXJzIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MjQzCisjLCBjLWZvcm1hdAorbXNnaWQgIm9sZCB2ZXJzaW9uIG9mIHBhY2thZ2UgaGFzIG92ZXJseS1sb25nIGluZm8gZmlsZSBuYW1lIHN0YXJ0aW5nIGAlLjI1MHMnIgorbXNnc3RyICIiCisic2VuYSBwYWtldG8gdmVyc2lqYSB0dXJpIHBlciBkYXVnIGRpZGVsxJkgaW5mb3JtYWNpam9zIGZhaWzEhSBwcmFkZWRhbnQgIgorIuKAniUuMjUwc+KAnCIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyODEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBvYnNvbGV0ZSBpbmZvIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5lcGF2eWtvIHBhxaFhbGludGkgcGFzZW51c2lvIOKAniUuMjUwc+KAnCBpbmZvcm1hY2lqb3MgZmFpbG8iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6Mjg2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIChzdXBwb3NlZCkgbmV3IGluZm8gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmVwYXZ5a28gxK9kaWVndGkgaW5mb3JtYWNpam9zIGZhaWxvIOKAniUuMjUwc+KAnCAobm9ycyByZWlrxJd0xbMpIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjI5NgorbXNnaWQgInVuYWJsZSB0byBvcGVuIHRlbXAgY29udHJvbCBkaXJlY3RvcnkiCittc2dzdHIgIm5lcGF2eWtvIGF0dmVydGkgbGFpa2lubyB2YWxkeW1vIGFwbGFua28iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzA3CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgY29udGFpbnMgb3Zlcmx5LWxvbmcgY29udHJvbCBpbmZvIGZpbGUgbmFtZSAoc3RhcnRpbmcgYCUuNTBzJykiCittc2dzdHIgIiIKKyJwYWtldGUgeXJhIGluZm9ybWFjaWpvcyB2YWxkeW1vIGZhaWxhcyBwZXIgaWxndSBwYXZhZGluaW11IChwcmFkZWRhbnQgIgorIuKAniUuNTBz4oCcKSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBjb250cm9sIGluZm8gY29udGFpbmVkIGRpcmVjdG9yeSBgJS4yNTBzJyIKK21zZ3N0ciAicGFrZXRvIHZhbGR5bW8gaW5mb3JtYWNpam9qZSB5cmEgYXBsYW5rYXMgYCUuMjUwcyciCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzE2CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgY29udHJvbCBpbmZvIHJtZGlyIG9mIGAlLjI1MHMnIGRpZG4ndCBzYXkgbm90IGEgZGlyIgorbXNnc3RyICIiCisicGFrZXRvIHZhbGR5bW8gaW5mb3JtYWNpam9qZSBuZWJ1dm8gcGFyYcWheXRhLCBrYWQgcm1kaXIgYCUuMjUwcycgeXJhIG5lICIKKyJhcGxhbmthcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMjYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgJXMgY29udGFpbmVkIGxpc3QgYXMgaW5mbyBmaWxlIgorbXNnc3RyICJkcGtnOiDEr3NwxJdqaW1hczogJXMgcGFrZXRlIGluZm9ybWFjaWpvcyBmYWlsYXMgeXJhIHPEhXJhxaFhcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IGluZm8gZmlsZSBgJS4yNTBzJyBhcyBgJS4yNTBzJyIKK21zZ3N0ciAiIgorIm5lcGF2eWtvIMSvZGllZ3RpIG5hdWpvIGluZm9ybWFjaWpvcyBmYWlsbyDigJ4lLjI1MHPigJwgc3UgcGF2YWRpbmltdSDigJ4lLjI1MHPigJwiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzQ5IHNyYy9yZW1vdmUuYzoxOTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSBjb250cm9sIGluZm8gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmVwYXZ5a28gcGHFoWFsaW50aSB2YWxkeW1vIGluZm9ybWFjaWpvcyBmYWlsbyDigJ4lLjI1MHPigJwiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDExCittc2dpZCAiY2Fubm90IGFjY2VzcyBhcmNoaXZlIgorbXNnc3RyICJuZWdhbGl1IHByaWVpdGkgcHJpZSBhcmNoeXZvIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjQzMworIywgZnV6enkKKyN8IG1zZ2lkICJjb250cm9sIGluZm9ybWF0aW9uIGxlbmd0aCIKK21zZ2lkICJwYWNrYWdlIGNvbnRyb2wgaW5mb3JtYXRpb24gZXh0cmFjdGlvbiIKK21zZ3N0ciAidmFsZHltbyBpbmZvcm1hY2lqb3MgZHlkaXMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDYwCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlY29yZGVkIGluZm8gYWJvdXQgJXMgZnJvbSAlcy5cbiIKK21zZ3N0ciAixK5yYcWhYXMgYXBpZSAlcyBpxaEgJXMuXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDY4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgYXJjaGl0ZWN0dXJlICglcykgZG9lcyBub3QgbWF0Y2ggc3lzdGVtICglcykiCittc2dzdHIgInBha2V0byBhcmNoaXRla3TFq3JhICglcykgbmV0aW5rYSBqxatzxbMgc2lzdGVtYWkgKCVzKSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1MjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IHJlZ2FyZGluZyAlcyBjb250YWluaW5nICVzLCBwcmUtZGVwZW5kZW5jeSBwcm9ibGVtOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogZMSXbCAlcyBlc2FuxI1pbyAlcywgcHJpa2xhdXNvbXliacWzIHByb2JsZW1hOlxuIgorIiVzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjUyNgorIywgYy1mb3JtYXQKK21zZ2lkICJwcmUtZGVwZW5kZW5jeSBwcm9ibGVtIC0gbm90IGluc3RhbGxpbmcgJS4yNTBzIgorbXNnc3RyICJwcmlrbGF1c29teWJpxbMgcHJvYmxlbWEgLSBuZWRpZWdpdSAlLjI1MHMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTI3CisjLCBmdXp6eQorbXNnaWQgImlnbm9yaW5nIHByZS1kZXBlbmRlbmN5IHByb2JsZW0hIgorbXNnc3RyICJkcGtnOiDEr3NwxJdqaW1hczogaWdub3J1b2phbWEgcHJpZcWhLXByaWtsYXVzb215YmnFsyBwcm9ibGVtYSFcbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHJlcGFyaW5nIHRvIHJlcGxhY2UgJXMgJXMgKHVzaW5nICVzKSAuLi5cbiIKK21zZ3N0ciAiUnVvxaFpYW1hc2kgcGFrZWlzdGkgJXMgJXMgKG5hdWRvamFudCAlcykgLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIlVucGFja2luZyAlcyAoZnJvbSAlcykgLi4uXG4iCittc2dzdHIgIknFoXBha3VvamFtYXMgYXJjaHl2YXMgJXMgKGnFoSAlcykgLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTgwCisjLCBjLWZvcm1hdAorbXNnaWQgIm5hbWUgb2YgY29uZmZpbGUgKHN0YXJ0aW5nIGAlLjI1MHMnKSBpcyB0b28gbG9uZyAoPiVkIGNoYXJhY3RlcnMpIgorbXNnc3RyICIiCisia29uZmlnxatyYWNpam9zIGZhaWxvIHZhcmRhcyAocHJhZGVkYW50IOKAniUuMjUwc+KAnCkgeXJhIHBlciBpbGdhcyAoPiVkIHNpbWJvbGnFsykiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjMzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDcxCisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWQgZXJyb3IgaW4gJS4yNTBzIgorbXNnc3RyICJza2FpdHltbyBrbGFpZGEgJS4yNTBzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjYzNQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nICUuMjUwcyIKK21zZ3N0ciAia2xhaWRhIHXFvmRhcmFudCAlLjI1MHMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjM3CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHRyeWluZyB0byBvcGVuICUuMjUwcyIKK21zZ3N0ciAia2xhaWRhIGJhbmRhbnQgYXRpZGFyeXRpICUuMjUwcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGUtY29uZmlndXJpbmcgJXMsIHRvIGFsbG93IHJlbW92YWwgb2YgJXMgLi4uXG4iCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGUtY29uZmlndXJpbmcgJXMgLi4uXG4iCittc2dzdHIgIkRla29uZmlnxatydW9qYW1hcyAlcyAuLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo3NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiVW5wYWNraW5nIHJlcGxhY2VtZW50ICUuMjUwcyAuLi5cbiIKK21zZ3N0ciAiScWhcGFrdW9qYW1hcyAlLjI1MHMgcGFrYWl0YWxhcy4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjg0MAorbXNnaWQgInBhY2thZ2UgZmlsZXN5c3RlbSBhcmNoaXZlIGV4dHJhY3Rpb24iCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NTQKK21zZ2lkICJlcnJvciByZWFkaW5nIGRwa2ctZGViIHRhciBvdXRwdXQiCittc2dzdHIgImtsYWlkYSBza2FpdGFudCBkcGtnLWRlYiB0YXIgacWhdmVzdMSvIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjg1NgorbXNnaWQgImNvcnJ1cHRlZCBmaWxlc3lzdGVtIHRhcmZpbGUgLSBjb3JydXB0ZWQgcGFja2FnZSBhcmNoaXZlIgorbXNnc3RyICJwYcW+ZWlzdGFzIGZhaWzFsyBzaXN0ZW1vcyB0YXIgZmFpbGFzIC0gcGHFvmVpc3RhcyBwYWtldMWzIGFyY2h5dmFzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjg1OQorbXNnaWQgImRwa2ctZGViOiB6YXAgcG9zc2libGUgdHJhaWxpbmcgemVyb3MiCittc2dzdHIgImRwa2ctZGViOiBuYWlraW5hbW9zIGdhbGltb3MgdGFycMWzIHNla29zIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjkxOQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHN0YXQgb2xkIGZpbGUgJyUuMjUwcycgc28gbm90IGRlbGV0aW5nIGl0OiAlcyIKK21zZ3N0ciAiIgorImRwa2c6IMSvc3DEl2ppbWFzOiBuZXBhdnlrbyBwYXRpa3JpbnRpIHNlbm8g4oCeJS4yNTBz4oCcIGZhaWxvLCB0b2TEl2wgamlzICIKKyJuZXRyaW5hbWFzOiAlcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5MjUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkZWxldGUgb2xkIGRpcmVjdG9yeSAnJS4yNTBzJzogJXMiCittc2dzdHIgImRwa2c6IMSvc3DEl2ppbWFzOiBuZXBhdnlrbyBpxaF0cmludGkgc2VubyBhcGxhbmtvIOKAniUuMjUwc+KAnDogJXNcbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5MjgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIm9sZCBjb25mZmlsZSAnJS4yNTBzJyB3YXMgYW4gZW1wdHkgZGlyZWN0b3J5IChhbmQgaGFzIG5vdyBiZWVuIGRlbGV0ZWQpIgorbXNnc3RyICIiCisiZHBrZzogxK9zcMSXamltYXM6IHNlbmFzIG51c3RhdHltxbMgZmFpbGFzIOKAniUuMjUwc+KAnCBidXZvIHR1xaHEjWlhcyBhcGxhbmthcyAoaXIgIgorImJ1dm8gacWhdHJpbnRhcylcbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgb3RoZXIgbmV3IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5lcGF2eWtvIHBhdGlrcmludGkga2l0byBuYXVqbyBmYWlsbyDigJ4lLjI1MHPigJwiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTg2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJvbGQgZmlsZSAnJS4yNTBzJyBpcyB0aGUgc2FtZSBhcyBzZXZlcmFsIG5ldyBmaWxlcyEgKGJvdGggJyUuMjUwcycgYW5kICIKKyInJS4yNTBzJykiCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxMDI1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2VjdXJlbHkgcmVtb3ZlIG9sZCBmaWxlICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiZHBrZzogcGVyc3DEl2ppbWFzOiBuZXBhdnlrbyAlcyBzZW5vIGZhaWxvIOKAniUlLjI1MHPigJw6ICUlc1xuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEyMDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiKE5vdGluZyBkaXNhcHBlYXJhbmNlIG9mICVzLCB3aGljaCBoYXMgYmVlbiBjb21wbGV0ZWx5IHJlcGxhY2VkLilcbiIKK21zZ3N0ciAiKFBhxb55bcSXdGluYXMgJXMgZGluZ2ltYXMsIGt1cmlzIGJ1dm8gdmlzacWha2FpIHBha2Vpc3Rhcy4pXG4iCisKKyMuIFRSQU5TTEFUT1JTOiBUaGlzIGlzIHRoZSBoZWFkZXIgdGhhdCBhcHBlYXJzIG9uICdkcGtnLXF1ZXJ5IC1sJy4gVGhlCisjLiAqIHN0cmluZyBzaG91bGQgcmVtYWluIHVuZGVyIDgwIGNoYXJhY3RlcnMuIFRoZSB1cHBlcmNhc2UgbGV0dGVycyBpbgorIy4gKiB0aGUgc3RhdGUgdmFsdWVzIGRlbm90ZSB0aGUgYWJicmV2aWF0ZWQgbGV0dGVyIHRoYXQgd2lsbCBhcHBlYXIgb24KKyMuICogdGhlIGZpcnN0IHRocmVlIGNvbHVtbnMsIHdoaWNoIHNob3VsZCBpZGVhbGx5IG1hdGNoIHRoZSBFbmdsaXNoIG9uZQorIy4gKiAoZS5nLiBSZW1vdmUg4oaSIHN1cFJpbWVpeCksIHNlZSBkcGtnLXF1ZXJ5KDEpIGZvciBmdXJ0aGVyIGRldGFpbHMuIFRoZQorIy4gKiB0cmFuc2xhdGVkIG1lc3NhZ2UgY2FuIHVzZSBhZGRpdGlvbmFsIGxpbmVzIGlmIG5lZWRlZC4KKyM6IHNyYy9xdWVyeWNtZC5jOjE0OQorIywgZnV6enkKK21zZ2lkICIiCisiRGVzaXJlZD1Vbmtub3duL0luc3RhbGwvUmVtb3ZlL1B1cmdlL0hvbGRcbiIKKyJ8IFN0YXR1cz1Ob3QvSW5zdC9Db25mLWZpbGVzL1VucGFja2VkL2hhbEYtY29uZi9IYWxmLWluc3QvdHJpZy1hV2FpdC9UcmlnLSIKKyJwZW5kXG4iCisifC8gRXJyPz0obm9uZSkvUmVpbnN0LXJlcXVpcmVkIChTdGF0dXMsRXJyOiB1cHBlcmNhc2U9YmFkKVxuIgorbXNnc3RyICIiCisiUGFzaXJpbmt0aW5haT1OZcW+aW5vbWEvxK5kaWVndGkvUGHFoWFsaW50aS9JxaFtZXN0aS9TdWxhaWt5dGlcbiIKKyJ8IELFq3NlbmE9TmUvxK5kaWVndGFzL0tvbmZpZ8WrcmFjaWpvcy1mYWlsYWkvScWhcGFrdW90YS9OZXBhdnlrdXNpLSIKKyJrb25maWfFq3JhY2lqYS9QdXNpYXUtxK9kaWVndGFzXG4iCisifC8gS2xhaWRhPz0oam9raWEpL1XFvmxhaWt5dGEvUmVpa2FsaW5nYXMtbmF1amFzLcSvZGllZ2ltYXMvWD1hYmktcHJvYmxlbW9zICIKKyIoQsWrc2VuYSxLbGFpZGE6IGRpZMW+aW9zaW9zLXJhaWTEl3M9YmxvZ2FpKVxuIgorCisjOiBzcmMvcXVlcnljbWQuYzoxNTMKK21zZ2lkICJOYW1lIgorbXNnc3RyICJWYXJkYXMiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjE1MworbXNnaWQgIlZlcnNpb24iCittc2dzdHIgIlZlcnNpamEiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjE1NAorbXNnaWQgIkRlc2NyaXB0aW9uIgorbXNnc3RyICJBcHJhxaF5bWFzIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNDYgc3JjL3F1ZXJ5Y21kLmM6NTExIHNyYy9zZWxlY3QuYzo3NQorIywgYy1mb3JtYXQKK21zZ2lkICJObyBwYWNrYWdlcyBmb3VuZCBtYXRjaGluZyAlcy5cbiIKK21zZ3N0ciAiTmVyYXN0YSBwYWtldMWzIGt1cmllIGF0aXRpa3R1ICVzIGtyaXRlcmlqxbMuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI3MworIywgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnNpb24gYnkgJXMgZnJvbTogJXNcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJzaW9uIGJ5ICVzIHRvOiAlc1xuIgorbXNnc3RyICIiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI3OAorIywgYy1mb3JtYXQKK21zZ2lkICJsb2NhbCBkaXZlcnNpb24gZnJvbTogJXNcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9jYWwgZGl2ZXJzaW9uIHRvOiAlc1xuIgorbXNnc3RyICIiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjMwOQorbXNnaWQgIi0tc2VhcmNoIG5lZWRzIGF0IGxlYXN0IG9uZSBmaWxlIG5hbWUgcGF0dGVybiBhcmd1bWVudCIKK21zZ3N0ciAiIgorIi0tc2VhcmNoIHBhc2lyaW5raW11aSByZWlraWEgbnVyb2R5dGkgYmVudCB2aWVuxIUgZmFpbG8gcGF2YWRpbmltxIUsIGFyIGZhaWzFsyAiCisia3JpdGVyaWrFsyIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MzUwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJObyBwYWNrYWdlcyBmb3VuZCBtYXRjaGluZyAlcy5cbiIKK21zZ2lkICIlczogbm8gcGF0aCBmb3VuZCBtYXRjaGluZyBwYXR0ZXJuICVzLlxuIgorbXNnc3RyICJOZXJhc3RhIHBha2V0xbMga3VyaWUgYXRpdGlrdHUgJXMga3JpdGVyaWrFsy5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MzkzCisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgYCVzJyBpcyBub3QgaW5zdGFsbGVkIGFuZCBubyBpbmZvIGlzIGF2YWlsYWJsZS5cbiIKK21zZ3N0ciAiUGFrZXRhcyDigJ4lc+KAnCBuZcSvZGllZ3RhcywgdG9kxJdsIGluZm9ybWFjaWpvcyBuxJdyYS5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDAxCisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgYCVzJyBpcyBub3QgYXZhaWxhYmxlLlxuIgorbXNnc3RyICJQYWtldG8g4oCeJXPigJwgbsSXcmEuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQxMCBzcmMvcXVlcnljbWQuYzo1ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSBgJXMnIGlzIG5vdCBpbnN0YWxsZWQuXG4iCittc2dzdHIgIlBha2V0YXMg4oCeJXPigJwgbmXEr2RpZWd0YXMuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQxOAorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlIGAlcycgZG9lcyBub3QgY29udGFpbiBhbnkgZmlsZXMgKCEpXG4iCittc2dzdHIgIlBha2V0ZSDigJ4lc+KAnCBuxJdyYSBuZWkgdmllbm8gZmFpbG8gKCEpXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQyNQorIywgYy1mb3JtYXQKK21zZ2lkICJsb2NhbGx5IGRpdmVydGVkIHRvOiAlc1xuIgorbXNnc3RyICIiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQyOAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGRpdmVydHMgb3RoZXJzIHRvOiAlc1xuIgorbXNnc3RyICIiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQzMQorIywgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnRlZCBieSAlcyB0bzogJXNcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcXVlcnljbWQuYzo0NTIKK21zZ2lkICIiCisiVXNlIGRwa2cgLS1pbmZvICg9IGRwa2ctZGViIC0taW5mbykgdG8gZXhhbWluZSBhcmNoaXZlIGZpbGVzLFxuIgorImFuZCBkcGtnIC0tY29udGVudHMgKD0gZHBrZy1kZWIgLS1jb250ZW50cykgdG8gbGlzdCB0aGVpciBjb250ZW50cy5cbiIKK21zZ3N0ciAiIgorIk5hdWRva2l0ZSBkcGtnIC0taW5mbyAoPSBkcGtnLWRlYiAtLWluZm8pIGplaSBub3JpdGUgcGVyxb5pxatyxJd0aSBhcmNoeXZvICIKKyJpbmZvcm1hY2lqxIUsXG4iCisiaXIgZHBrZyAtLWNvbnRlbnRzICg9IGRwa2ctZGViIC0tY29udGVudHMpIGplaSBub3JpdGUgcGVyxb5pxatyxJd0aSBhcmNoeXZvICIKKyJ0dXJpbsSvLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo1NzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgYXQgbW9zdCB0d28gYXJndW1lbnRzIgorbXNnc3RyICItLSVzIHBhcmFtZXRyYXMgbmVyZWlrYWxhdWphIG51cm9keXRpIGpva2nFsyByZWlrxaFtacWzIgorCisjOiBzcmMvcXVlcnljbWQuYzo1NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29udHJvbCBmaWxlIGNvbnRhaW5zICVjIgorbXNnc3RyICIiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjYwMAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuICVzIHBhY2thZ2UgbWFuYWdlbWVudCBwcm9ncmFtIHF1ZXJ5IHRvb2wgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiRGViaWFuIGAlcycgcGFja2FnZSBtYW5hZ2VtZW50IHByb2dyYW0gdmVyc2lvbiAlcy5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjE5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtc3wtLXN0YXR1cyA8cGFja2FnZT4gLi4uICAgICAgICBEaXNwbGF5IHBhY2thZ2Ugc3RhdHVzIGRldGFpbHMuXG4iCisiICAtcHwtLXByaW50LWF2YWlsIDxwYWNrYWdlPiAuLi4gICBEaXNwbGF5IGF2YWlsYWJsZSB2ZXJzaW9uIGRldGFpbHMuXG4iCisiICAtTHwtLWxpc3RmaWxlcyA8cGFja2FnZT4gLi4uICAgICBMaXN0IGZpbGVzIGBvd25lZCcgYnkgcGFja2FnZShzKS5cbiIKKyIgIC1sfC0tbGlzdCBbPHBhdHRlcm4+IC4uLl0gICAgICAgIExpc3QgcGFja2FnZXMgY29uY2lzZWx5LlxuIgorIiAgLVd8LS1zaG93IFs8cGF0dGVybj4gLi4uXSAgICAgICAgU2hvdyBpbmZvcm1hdGlvbiBvbiBwYWNrYWdlKHMpLlxuIgorIiAgLVN8LS1zZWFyY2ggPHBhdHRlcm4+IC4uLiAgICAgICAgRmluZCBwYWNrYWdlKHMpIG93bmluZyBmaWxlKHMpLlxuIgorIiAgLWN8LS1jb250cm9sLXBhdGggPHBhY2thZ2U+IFs8ZmlsZT5dXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQcmludCBwYXRoIGZvciBwYWNrYWdlIGNvbnRyb2wgZmlsZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIktvbWFuZG9zOlxuIgorIiAgLXN8LS1zdGF0dXMgPHBhY2thZ2U+IC4uLiAgICAgICAgUGFyb2R5dGkgcGFrZXRvIGLFq3NlbsSFLlxuIgorIiAgLXB8LS1wcmludC1hdmFpbCA8cGFja2FnZT4gLi4uICAgUGFyb2R5dGkgcGFrZXRvIHZlcnNpam9zIGluZm9ybWFjaWrEhS5cbiIKKyIgIC1MfC0tbGlzdGZpbGVzIDxwYWNrYWdlPiAuLi4gICAgIFBhcm9keXRpIGZhaWx1cywg4oCecHJpa2xhdXNhbsSNaXVz4oCcICIKKyJwYWtldHVpLlxuIgorIiAgLWx8LS1saXN0IFs8cGF0dGVybj4gLi4uXSAgICAgICAgUm9keXRpIHBha2V0xbMgc8SFcmHFocSFLlxuIgorIiAgLVd8LS1zaG93IDxwYXR0ZXJuPiAuLi4gICAgICAgICAgUGFyb2R5dGkgaW5mb3JtYWNpasSFIGFwaWUgcGFrZXTEhSgtdXMpLlxuIgorIiAgLVN8LS1zZWFyY2ggPHBhdHRlcm4+IC4uLiAgICAgICAgUGFyb2R5dGkgcGFrZXR1aSBwcmlrbGF1c2FuxI1pdXMgZmFpbHVzLlxuIgorIlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo2MzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgICAgICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyIgIC1mfC0tc2hvd2Zvcm1hdD08Zm9ybWF0PiAgICAgICAgIFVzZSBhbHRlcm5hdGl2ZSBmb3JtYXQgZm9yIC0tc2hvdy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIlBhc2lyaW5raW1haTpcbiIKKyIgIC0tYWRtaW5kaXI9PGFwbGFua2FzPiAgICAgICAgICAgbmF1ZG90aSA8YXBsYW5rxIU+IHZpZXRvaiAlcy5cbiIKKyIgIC1mfC0tc2hvd2Zvcm1hdD08Zm9ybWF0YXM+ICAgICAgICAgbmF1ZG90aSBraXTEhSAtLXNob3cgcGFyYW1ldHJvIGZvcm1hdMSFLlxuIgorIlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo2NDIgZHBrZy1kZWIvbWFpbi5jOjExMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiRm9ybWF0IHN5bnRheDpcbiIKKyIgIEEgZm9ybWF0IGlzIGEgc3RyaW5nIHRoYXQgd2lsbCBiZSBvdXRwdXQgZm9yIGVhY2ggcGFja2FnZS4gVGhlIGZvcm1hdFxuIgorIiAgY2FuIGluY2x1ZGUgdGhlIHN0YW5kYXJkIGVzY2FwZSBzZXF1ZW5jZXMgXFxuIChuZXdsaW5lKSwgXFxyIChjYXJyaWFnZVxuIgorIiAgcmV0dXJuKSBvciBcXFxcIChwbGFpbiBiYWNrc2xhc2gpLiBQYWNrYWdlIGluZm9ybWF0aW9uIGNhbiBiZSBpbmNsdWRlZFxuIgorIiAgYnkgaW5zZXJ0aW5nIHZhcmlhYmxlIHJlZmVyZW5jZXMgdG8gcGFja2FnZSBmaWVsZHMgdXNpbmcgdGhlICR7dmFyWzsiCisid2lkdGhdfVxuIgorIiAgc3ludGF4LiBGaWVsZHMgd2lsbCBiZSByaWdodC1hbGlnbmVkIHVubGVzcyB0aGUgd2lkdGggaXMgbmVnYXRpdmUgaW4gIgorIndoaWNoXG4iCisiICBjYXNlIGxlZnQgYWxpZ25tZW50IHdpbGwgYmUgdXNlZC5cbiIKK21zZ3N0ciAiIgorIkZvcm1hdG8gc2ludGFrc8SXOlxuIgorIiAgRm9ybWF0YXMgdGFpIHRla3N0byBlaWx1dMSXIGt1cmkgYnVzIGnFoXZlZGFtYSB0aWVzIGtpZWt2aWVudSBwYWtldHUuICIKKyJFaWx1dMSXamVcbiIKKyIgIGdhbGkgYsWrdGkgc3RhbmRhcnRpbsSXcyBlc2NhcGUgc2Vrb3MgXFxuIChuYXVqYSBlaWx1dMSXKSwgXFxyIChuYXVqb3NcbiIKKyIgIGVpbHV0xJdzIHNpbWJvbGlzKSBhcmJhIFxcXFwgKGF0dmlya8WhdGluaXMgcGFzdmlyxJlzIGJydWvFoW55cykuIFBha2V0byAiCisiaW5mb3JtYWNpamEgZ2FsaSBixat0aSBpdHJhdWt0YVxuIgorIiAga2ludGFtdW9zaXVzIHBha2V0byBpbmZvcm1hY2lqb3MgZWlsdXTEl3NlIG5hdWRvamFudCAke3Zhcls7cGxvdGlzXX1cbiIKKyIgIHNpbnRha3PEmS4gTGF1a2VsaWFpIGJ1cyBseWdpdW90aSDEryBrYWlyxJksIG5lYmVudCBwbG/EjWlvIHJlaWvFoW3ElyBixat0xbMgIgorIm5laWdpYW1hIC0gdHVvIGF0dmVqdVxuIgorIiAgYnVzIG5hdWRvamFtYXMgbHlnaWF2aW1hcyDEryBkZcWhaW7EmSBwdXPEmS5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjU2Cittc2dpZCAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBxdWVyeWluZyBwYWNrYWdlcy4iCittc2dzdHIgIiIKKworIzogc3JjL3JlbW92ZS5jOjg4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJpZ25vcmluZyByZXF1ZXN0IHRvIHJlbW92ZSAlLjI1MHMgd2hpY2ggaXNuJ3QgaW5zdGFsbGVkLiIKK21zZ3N0ciAiIgorImRwa2c6IMSvc3DEl2ppbWFzOiBwcmHFoXltYXMgcGHFoWFsaW50aSAlLjI1MHMgaWdub3J1b2phbWFzLCBuZXMgamlzIG7El3JhICIKKyLEr2RpZWd0YXMuXG4iCisKKyM6IHNyYy9yZW1vdmUuYzo5NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorImlnbm9yaW5nIHJlcXVlc3QgdG8gcmVtb3ZlICUuMjUwcywgb25seSB0aGUgY29uZmlnXG4iCisiIGZpbGVzIG9mIHdoaWNoIGFyZSBvbiB0aGUgc3lzdGVtLiBVc2UgLS1wdXJnZSB0byByZW1vdmUgdGhlbSB0b28uIgorbXNnc3RyICIiCisiZHBrZzogxK9zcMSXamltYXM6IHByYcWheW1hcyBwYcWhYWxpbnRpICUuMjUwcyBpZ25vcnVvamFtYXMsIG5lcyBzaXN0ZW1vamUgbGlrb1xuIgorIiB0aWsgxaFpbyBwYWtldG8gbnVzdGF0eW3FsyBmYWlsYWkuIEplaSBub3JpdGUganVvcyBpxaF0cmludGksIG5hdWRva2l0ZSAtLSIKKyJwdXJnZS5cbiIKKworIzogc3JjL3JlbW92ZS5jOjEwMworbXNnaWQgIlRoaXMgaXMgYW4gZXNzZW50aWFsIHBhY2thZ2UgLSBpdCBzaG91bGQgbm90IGJlIHJlbW92ZWQuIgorbXNnc3RyICJUYWkgeXJhIHN2YXJidXMgcGFrZXRhcyAtIGppcyBuZXR1csSXdMWzIGLFq3RpIGnFoW1ldGFtYXMuIgorCisjOiBzcmMvcmVtb3ZlLmM6MTI4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBkZXBlbmRlbmN5IHByb2JsZW1zIHByZXZlbnQgcmVtb3ZhbCBvZiAlczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6IHByaWtsYXVzb215YmnFsyBwcm9ibGVtb3MgbmVsZWlkxb5pYSBwYcWhYWxpbnRpICVzOlxuIgorIiVzIgorCisjOiBzcmMvcmVtb3ZlLmM6MTMwCittc2dpZCAiZGVwZW5kZW5jeSBwcm9ibGVtcyAtIG5vdCByZW1vdmluZyIKK21zZ3N0ciAicHJpa2xhdXNvbXliacWzIHByb2JsZW1vcyAtIG5lxaFhbGluYW1hcyIKKworIzogc3JjL3JlbW92ZS5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogJXM6IGRlcGVuZGVuY3kgcHJvYmxlbXMsIGJ1dCByZW1vdmluZyBhbnl3YXkgYXMgeW91IHJlcXVlc3RlZDpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiBwcmlrbGF1c29teWJpxbMgcHJvYmxlbW9zLCB0YcSNaWF1IMWhYWxpbmFtYXMsIG5lcyB0YWlwIG51cm9keXRhOlxuIgorIiVzIgorCisjOiBzcmMvcmVtb3ZlLmM6MTQyCittc2dpZCAiIgorIlBhY2thZ2UgaXMgaW4gYSB2ZXJ5IGJhZCBpbmNvbnNpc3RlbnQgc3RhdGUgLSB5b3Ugc2hvdWxkXG4iCisiIHJlaW5zdGFsbCBpdCBiZWZvcmUgYXR0ZW1wdGluZyBhIHJlbW92YWwuIgorbXNnc3RyICIiCisiUGFrZXRhcyBsYWJhaSBuZXZpZW50aXNvamUgYsWrc2Vub2plIC0gasWrcyB0dXLEl3R1bcSXdGVcbiIKKyIgxK9kaWVndGkgasSvIHBha2FydG90aW5haSBwcmllxaEgacWhbWV0YW50LiIKKworIzogc3JjL3JlbW92ZS5jOjE0OQorIywgYy1mb3JtYXQKK21zZ2lkICJXb3VsZCByZW1vdmUgb3IgcHVyZ2UgJXMgLi4uXG4iCittc2dzdHIgIknFoW1lc2l1IGFyIHBhxaFhbGluc2l1ICVzIC4uLlxuIgorCisjOiBzcmMvcmVtb3ZlLmM6MTU3CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlbW92aW5nICVzIC4uLlxuIgorbXNnc3RyICLFoGFsaW5hbWFzICVzIC4uLlxuIgorCisjOiBzcmMvcmVtb3ZlLmM6Mjc1IHNyYy9yZW1vdmUuYzozNjYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ3aGlsZSByZW1vdmluZyAlLjI1MHMsIHVuYWJsZSB0byByZW1vdmUgZGlyZWN0b3J5ICclLjI1MHMnOiAlcyAtIGRpcmVjdG9yeSAiCisibWF5IGJlIGEgbW91bnQgcG9pbnQ/IgorbXNnc3RyICIiCisiZHBrZzogxK9zcMSXamltYXM6IMWhYWxpbmFudCAlLjI1MHMgbmVwYXZ5a28gcGHFoWFsaW50aSBhcGxhbmtvIOKAniUuMjUwc+KAnDogJXMgLSAiCisiYXBsYW5rYXMgeXJhIG1vbnRhdmltbyB0YcWha2FzP1xuIgorCisjOiBzcmMvcmVtb3ZlLmM6Mjg5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2VjdXJlbHkgcmVtb3ZlICclLjI1MHMnIgorbXNnc3RyICJuZXBhdnlrbyBzdWt1cnRpIGAlLjI1NXMnIgorCisjOiBzcmMvcmVtb3ZlLmM6MzYxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ3aGlsZSByZW1vdmluZyAlLjI1MHMsIGRpcmVjdG9yeSAnJS4yNTBzJyBub3QgZW1wdHkgc28gbm90IHJlbW92ZWQuIgorbXNnc3RyICIiCisiZHBrZzogxK9zcMSXamltYXM6IMWhYWxpbmFudCAlLjI1MHMsIHJhc3RhcyBuZXR1xaHEjWlhcyBhcGxhbmthcyDigJ4lLjI1MHPigJwsIHRvZMSXbCAiCisiYXBsYW5rYXMgbmVpxaF0cmludGFzLlxuIgorCisjOiBzcmMvcmVtb3ZlLmM6MzgzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW5ub3QgcmVtb3ZlIGAlLjI1MHMnIgorbXNnaWQgImNhbm5vdCByZW1vdmUgJyUuMjUwcyciCittc2dzdHIgIm5lcGF2eWtvIHBhxaFhbGludGkg4oCeJS4yNTBz4oCcIgorCisjOiBzcmMvcmVtb3ZlLmM6NDA5CisjLCBjLWZvcm1hdAorbXNnaWQgIlB1cmdpbmcgY29uZmlndXJhdGlvbiBmaWxlcyBmb3IgJXMgLi4uXG4iCittc2dzdHIgIsWgYWxpbmFtaSAlcyBrb25maWfFq3JhY2lqb3MgZmFpbGFpLi4uXG4iCisKKyM6IHNyYy9yZW1vdmUuYzo0NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlbW92ZSBvbGQgY29uZmlnIGZpbGUgYCUuMjUwcycgKD0gYCUuMjUwcycpIgorbXNnc3RyICJuZXBhdnlrc3RhIHBhxaFhbGludGkgc2VubyBrb25maWfFq3JhY2lqb3MgZmFpbG8g4oCeJS4yNTBz4oCcICg9IOKAniUuMjUwc+KAnCkiCisKKyM6IHNyYy9yZW1vdmUuYzo0NzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlYWQgY29uZmlnIGZpbGUgZGlyIGAlLjI1MHMnIChmcm9tIGAlLjI1MHMnKSIKK21zZ3N0ciAibmVwYXZ5a3N0YSBhdHZlcnRpIGtvbmZpZ8WrcmFjaWpvcyBmYWlsxbMgYXBsYW5rbyBgJS4yNTBzJyAoacWhIGAlLjI1MHMnKSIKKworIzogc3JjL3JlbW92ZS5jOjUxMAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVtb3ZlIG9sZCBiYWNrdXAgY29uZmlnIGZpbGUgYCUuMjUwcycgKG9mIGAlLjI1MHMnKSIKK21zZ3N0ciAiIgorIm5lcGF2eWtvIHBhxaFhbGludGkgc2VuxbMga29uZmlnxatyYWNpam9zIGZhaWzFsyBrb3BpasWzYCUuMjUwcycgKGnFoSBgJS4yNTBzJykiCisKKyM6IHNyYy9yZW1vdmUuYzo1NjgKK21zZ2lkICJjYW5ub3QgcmVtb3ZlIG9sZCBmaWxlcyBsaXN0IgorbXNnc3RyICJuZXBhdnlrbyBwYcWhYWxpbnRpIHNlbsWzIGZhaWzFsyBzxIVyYcWhbyIKKworIzogc3JjL3JlbW92ZS5jOjU3NAorbXNnaWQgImNhbid0IHJlbW92ZSBvbGQgcG9zdHJtIHNjcmlwdCIKK21zZ3N0ciAibmVwYXZ5a28gcGHFoWFsaW50aSBzZW5vIHBvc3RybSBzY2VuYXJpamF1cyIKKworIzogc3JjL3NlbGVjdC5jOjExNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVvZiBpbiBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZCIKK21zZ3N0ciAibmV0aWvEl3RhIGZhaWxvIHBhYmFpZ29zIMW+eW3ElyBwYWtldG8gdmFyZGUsICVkIGVpbHV0xJdqZSIKKworIzogc3JjL3NlbGVjdC5jOjExNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBsaW5lIGluIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICJuZXRpa8SXdGEgZWlsdXTEl3MgcGFiYWlnb3Mgxb55bcSXIHBha2V0byB2YXJkZSwgJWQgZWlsdXTEl2plIgorCisjOiBzcmMvc2VsZWN0LmM6MTIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW9mIGFmdGVyIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICJuZXRpa8SXdGEgZmFpbG8gcGFiYWlnb3Mgxb55bcSXIHBvIHBha2V0byB2YXJkbywgJWQgZWlsdXTEl2plIgorCisjOiBzcmMvc2VsZWN0LmM6MTIzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGxpbmUgYWZ0ZXIgcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQiCittc2dzdHIgIm5ldGlrxJd0YSBlaWx1dMSXcyBwYWJhaWdvcyDFvnltxJcgcG8gcGFrZXRvIHZhcmRvLCAlZCBlaWx1dMSXamUiCisKKyM6IHNyYy9zZWxlY3QuYzoxMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBkYXRhIGFmdGVyIHBhY2thZ2UgYW5kIHNlbGVjdGlvbiBhdCBsaW5lICVkIgorbXNnc3RyICJuZXRpa8SXdGkgZHVvbWVueXMgcG8gcGFrZXRvIGlyIHBhxb55bcSXamltbywgJWQgZWlsdXTEl2plIgorCisjOiBzcmMvc2VsZWN0LmM6MTM5CisjLCBjLWZvcm1hdAorbXNnaWQgImlsbGVnYWwgcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQ6ICUuMjUwcyIKK21zZ3N0ciAibmVrb3Jla3RpxaFrYXMgcGFrZXRvIHZhcmRhcyBlaWx1dMSXamUgJWQ6ICUuMjUwcyIKKworIzogc3JjL3NlbGVjdC5jOjE0MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIHdhbnRlZCBzdGF0dXMgYXQgbGluZSAlZDogJS4yNTBzIgorbXNnc3RyICJlaWx1dMSXamUgJWQgbmXFvmlub21hIHBhZ2VpZGF1dGluYSBixatzZW5hOiAlLjI1MHMiCisKKyM6IHNyYy9zZWxlY3QuYzoxNDkKK21zZ2lkICJyZWFkIGVycm9yIG9uIHN0YW5kYXJkIGlucHV0IgorbXNnc3RyICJza2FpdHltbyBrbGFpZGEgc3RhbmRhcnRpbsSXamUgxK92ZXN0eWplIgorCisjOiBzcmMvc3RhdGNtZC5jOjUyCittc2dpZCAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBvdmVycmlkaW5nIGZpbGUgc3RhdCBpbmZvcm1hdGlvbi4iCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRjbWQuYzo2MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29weXJpZ2h0IChDKSAyMDAwLCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDA2LTIwMDkgR3VpbGxlbSBKb3Zlci5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGNtZC5jOjgxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC0tYWRkIDxvd25lcj4gPGdyb3VwPiA8bW9kZT4gPGZpbGU+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkIGEgbmV3IGVudHJ5IGludG8gdGhlIGRhdGFiYXNlLlxuIgorIiAgLS1yZW1vdmUgPGZpbGU+ICAgICAgICAgIHJlbW92ZSBmaWxlIGZyb20gdGhlIGRhdGFiYXNlLlxuIgorIiAgLS1saXN0IFs8Z2xvYi1wYXR0ZXJuPl0gIGxpc3QgY3VycmVudCBvdmVycmlkZXMgaW4gdGhlIGRhdGFiYXNlLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0Y21kLmM6ODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgc2V0IHRoZSBkaXJlY3Rvcnkgd2l0aCB0aGUgc3RhdG92ZXJyaWRlIGZpbGUuXG4iCisiICAtLXVwZGF0ZSAgICAgICAgICAgICAgICAgaW1tZWRpYXRlbHkgdXBkYXRlIGZpbGUgcGVybWlzc2lvbnMuXG4iCisiICAtLWZvcmNlICAgICAgICAgICAgICAgICAgZm9yY2UgYW4gYWN0aW9uIGV2ZW4gaWYgYSBzYW5pdHkgY2hlY2sgZmFpbHMuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgcXVpZXQgb3BlcmF0aW9uLCBtaW5pbWFsIG91dHB1dC5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRjbWQuYzoxMTYKK21zZ2lkICJzdHJpcHBpbmcgdHJhaWxpbmcgLyIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGNtZC5jOjIwNworIywgZnV6enkKK21zZ2lkICJjYW5ub3Qgb3BlbiBuZXcgc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIm5lcGF2eWtvIGF0dmVydGkgc3RhdG92ZXJyaWRlIGZhaWxvIgorCisjOiBzcmMvc3RhdGNtZC5jOjIyMgorIywgZnV6enkKK21zZ2lkICJlcnJvciByZW1vdmluZyBzdGF0b3ZlcnJpZGUtb2xkIgorbXNnc3RyICJuZXBhdnlrbyBhdHZlcnRpIHN0YXRvdmVycmlkZSBmYWlsbyIKKworIzogc3JjL3N0YXRjbWQuYzoyMjQKKyMsIGZ1enp5Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgbmV3IHN0YXRvdmVycmlkZS1vbGQiCittc2dzdHIgIm5lcGF2eWtvIGF0dmVydGkgc3RhdG92ZXJyaWRlIGZhaWxvIgorCisjOiBzcmMvc3RhdGNtZC5jOjIyNgorIywgZnV6enkKK21zZ2lkICJlcnJvciBpbnN0YWxsaW5nIG5ldyBzdGF0b3ZlcnJpZGUiCittc2dzdHIgIm5lcGF2eWtvIGF0dmVydGkgc3RhdG92ZXJyaWRlIGZhaWxvIgorCisjOiBzcmMvc3RhdGNtZC5jOjI0NgorbXNnaWQgIi0tYWRkIG5lZWRzIGZvdXIgYXJndW1lbnRzIgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjU2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJBbiBvdmVycmlkZSBmb3IgJyVzJyBhbHJlYWR5IGV4aXN0cywgYnV0IC0tZm9yY2Ugc3BlY2lmaWVkIHNvIHdpbGwgYmUgIgorImlnbm9yZWQuIgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjYwCisjLCBjLWZvcm1hdAorbXNnaWQgIkFuIG92ZXJyaWRlIGZvciAnJXMnIGFscmVhZHkgZXhpc3RzLCBhYm9ydGluZy4iCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRjbWQuYzoyNzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS11cGRhdGUgZ2l2ZW4gYnV0ICVzIGRvZXMgbm90IGV4aXN0IgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0Y21kLmM6Mjk2Cittc2dpZCAiTm8gb3ZlcnJpZGUgcHJlc2VudC4iCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRjbWQuYzozMDQKK21zZ2lkICItLXVwZGF0ZSBpcyB1c2VsZXNzIGZvciAtLXJlbW92ZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGRiLmM6NTkKKyMsIGZ1enp5Cittc2dpZCAic3ludGF4IGVycm9yOiBpbnZhbGlkIHVpZCBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAibmVwYXZ5a28gYXR2ZXJ0aSBzdGF0b3ZlcnJpZGUgZmFpbG8iCisKKyM6IHNyYy9zdGF0ZGIuYzo2NAorIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3I6IHVua25vd24gdXNlciAnJXMnIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0ZGIuYzo4MworIywgZnV6enkKK21zZ2lkICJzeW50YXggZXJyb3I6IGludmFsaWQgZ2lkIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJuZXBhdnlrbyBhdHZlcnRpIHN0YXRvdmVycmlkZSBmYWlsbyIKKworIzogc3JjL3N0YXRkYi5jOjg4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3I6IHVua25vd24gZ3JvdXAgJyVzJyBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAibmVwYXZ5a28gYXR2ZXJ0aSBzdGF0b3ZlcnJpZGUgZmFpbG8iCisKKyM6IHNyYy9zdGF0ZGIuYzoxMDQKKyMsIGZ1enp5Cittc2dpZCAic3ludGF4IGVycm9yOiBpbnZhbGlkIG1vZGUgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIm5lcGF2eWtvIGF0dmVydGkgc3RhdG92ZXJyaWRlIGZhaWxvIgorCisjOiBzcmMvc3RhdGRiLmM6MTI3Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIm5lcGF2eWtvIGF0dmVydGkgc3RhdG92ZXJyaWRlIGZhaWxvIgorCisjOiBzcmMvc3RhdGRiLmM6MTM0Cittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0ZGIuYzoxMzcKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgcHJldmlvdXMgc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRkYi5jOjE2MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAicmVhZGluZyBzdGF0b3ZlcnJpZGUgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAibmVwYXZ5a28gcGFrYXJ0b3RpbmFpIGF0dmVydGkgYCUuMjUwcycgZGFsaW5pbyBmYWlsbyIKKworIzogc3JjL3N0YXRkYi5jOjE2OQorIywgZnV6enkKK21zZ2lkICJzdGF0b3ZlcnJpZGUgZmlsZSBpcyBtaXNzaW5nIGZpbmFsIG5ld2xpbmUiCittc2dzdHIgIiIKKyJmYWlsbyBwYWJhaWdvcyDFvnltxJcgcHJpZcWhIGxhdWtlbGlvIGAlLipzJyByZWlrxaFtxJkgKHRyxatrc3RhIHBhc2t1dGluxJdzIG5hdWpvcyAiCisiZWlsdXTEl3Mgxb55bcSXcykiCisKKyM6IHNyYy9zdGF0ZGIuYzoxNzMKK21zZ2lkICJzdGF0b3ZlcnJpZGUgZmlsZSBjb250YWlucyBlbXB0eSBsaW5lIgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0ZGIuYzoxNzggc3JjL3N0YXRkYi5jOjE5MCBzcmMvc3RhdGRiLmM6MjAyCisjLCBmdXp6eQorbXNnaWQgInN5bnRheCBlcnJvciBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAibmVwYXZ5a28gYXR2ZXJ0aSBzdGF0b3ZlcnJpZGUgZmFpbG8iCisKKyM6IHNyYy9zdGF0ZGIuYzoxODYgc3JjL3N0YXRkYi5jOjE5OCBzcmMvc3RhdGRiLmM6MjEwCisjLCBmdXp6eQorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGxpbmUgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIm5ldGlrxJd0YSBlaWx1dMSXcyBwYWJhaWdvcyDFvnltxJcgcGFrZXRvIHZhcmRlLCAlZCBlaWx1dMSXamUiCisKKyM6IHNyYy9zdGF0ZGIuYzoyMTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIm11bHRpcGxlIHN0YXR1c292ZXJyaWRlcyBwcmVzZW50IGZvciBmaWxlICclLjI1MHMnIgorbXNnc3RyICJuZXBhdnlrbyBwYWthcnRvdGluYWkgYXR2ZXJ0aSBgJS4yNTBzJyBkYWxpbmlvIGZhaWxvIgorCisjOiBzcmMvdHJpZ2NtZC5jOjQ2CisjLCBmdXp6eQorbXNnaWQgIlR5cGUgZHBrZy10cmlnZ2VyIC0taGVscCBmb3IgaGVscCBhYm91dCB0aGlzIHV0aWxpdHkuIgorbXNnc3RyICJOb3LEl2RhbWkgZ2F1dGkgcGFnYWxixIUgxK92eWtkeWtpdGUgZHBrZy1zcGxpdCAtLWhlbHAiCisKKyM6IHNyYy90cmlnY21kLmM6NTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiAlcyBwYWNrYWdlIHRyaWdnZXIgdXRpbGl0eSB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICJEZWJpYW4g4oCeJXPigJwgcGFrZXTFsyB0dmFya3ltbyBwcm9ncmFtb3MgdcW+a2xhdXPFsyDEr3Jhbmtpc1xuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjY3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9ucz4gLi4uXSA8dHJpZ2dlci1uYW1lPlxuIgorIiAgICAgICAlcyBbPG9wdGlvbnM+IC4uLl0gPGNvbW1hbmQ+XG4iCisiXG4iCittc2dzdHIgIiIKKyJOYXVkb2ppbWFzOiAlcyBbPHBhcmFtZXRyYXM+IC4uLl0gPGtvbWFuZGE+XG4iCisiXG4iCisKKyM6IHNyYy90cmlnY21kLmM6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLS1jaGVjay1zdXBwb3J0ZWQgICAgICAgICAgICAgICAgQ2hlY2sgaWYgdGhlIHJ1bm5pbmcgZHBrZyBzdXBwb3J0cyAiCisidHJpZ2dlcnMuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogc3JjL3RyaWdjbWQuYzo4MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorIiAgLS1ieS1wYWNrYWdlPTxwYWNrYWdlPiAgICAgICAgICAgT3ZlcnJpZGUgdHJpZ2dlciBhd2FpdGVyIChub3JtYWxseSBzZXRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnkgZHBrZykuXG4iCisiICAtLW5vLWF3YWl0ICAgICAgICAgICAgICAgICAgICAgICBObyBwYWNrYWdlIG5lZWRzIHRvIGF3YWl0IHRoZSAiCisicHJvY2Vzc2luZy5cbiIKKyIgIC0tbm8tYWN0ICAgICAgICAgICAgICAgICAgICAgICAgIEp1c3QgdGVzdCAtIGRvbid0IGFjdHVhbGx5IGNoYW5nZSAiCisiYW55dGhpbmcuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogc3JjL3RyaWdjbWQuYzoxNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IHRyaWdnZXJzIGRhdGEgZGlyZWN0b3J5IG5vdCB5ZXQgY3JlYXRlZFxuIgorbXNnc3RyICIiCisKKyM6IHNyYy90cmlnY21kLmM6MTU2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB0cmlnZ2VyIHJlY29yZHMgbm90IHlldCBpbiBleGlzdGVuY2VcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIwNQorIywgZnV6enkKK21zZ2lkICJ0YWtlcyBvbmUgYXJndW1lbnQsIHRoZSB0cmlnZ2VyIG5hbWUiCittc2dzdHIgIi0tJXMgcHJpaW1hIHRpayB2aWVuxIUgcGFyYW1ldHLEhSAoLmRlYiBmYWlsxIUpIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIxMAorbXNnaWQgIm11c3QgYmUgY2FsbGVkIGZyb20gYSBtYWludGFpbmVyIHNjcmlwdCAob3Igd2l0aCBhIC0tYnktcGFja2FnZSBvcHRpb24pIgorbXNnc3RyICIiCisKKyM6IHNyYy90cmlnY21kLmM6MjE1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJpbGxlZ2FsIGF3YWl0ZWQgcGFja2FnZSBuYW1lICclLjI1MHMnOiAlLjI1MHMiCittc2dzdHIgImxhdWtlbHlqZSBgJXMnLCBuZWtvcmVrdGnFoWthcyBwYWtldG8gcGF2YWRpbmltYXMgYCUuMjU1cyc6ICVzIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIyMQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCB0cmlnZ2VyIG5hbWUgYCUuMjUwcyc6ICUuMjUwcyIKK21zZ3N0ciAibGF1a2VseWplIGAlcycsIG5la29yZWt0acWha2FzIHBha2V0byBwYXZhZGluaW1hcyBgJS4yNTVzJzogJXMiCisKKyM6IHNyYy90cmlncHJvYy5jOjI1MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IGN5Y2xlIGZvdW5kIHdoaWxlIHByb2Nlc3NpbmcgdHJpZ2dlcnM6XG4iCisiIGNoYWluIG9mIHBhY2thZ2VzIHdob3NlIHRyaWdnZXJzIGFyZSBvciBtYXkgYmUgcmVzcG9uc2libGU6XG4iCittc2dzdHIgIiIKKworIzogc3JjL3RyaWdwcm9jLmM6MjU4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgcGFja2FnZXMnIHBlbmRpbmcgdHJpZ2dlcnMgd2hpY2ggYXJlIG9yIG1heSBiZSB1bnJlc29sdmFibGU6XG4iCittc2dzdHIgIiIKKworIzogc3JjL3RyaWdwcm9jLmM6MjgxCittc2dpZCAidHJpZ2dlcnMgbG9vcGluZywgYWJhbmRvbmVkIgorbXNnc3RyICIiCisKKyM6IHNyYy90cmlncHJvYy5jOjMxMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiUHJvY2Vzc2luZyB0cmlnZ2VycyBmb3IgJXMgLi4uXG4iCittc2dzdHIgIsWgYWxpbmFtaSAlcyBrb25maWfFq3JhY2lqb3MgZmFpbGFpLi4uXG4iCisKKyM6IHNyYy91cGRhdGUuYzo1MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiLS0lcyBuZWVkcyBleGFjdGx5IG9uZSBQYWNrYWdlcyBmaWxlIGFyZ3VtZW50IgorbXNnaWQgIi0tJXMgbmVlZHMgZXhhY3RseSBvbmUgUGFja2FnZXMtZmlsZSBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyByZWlraWEgbHlnaWFpIHZpZW5vIHBha2V0xbMgZmFpbG8gcGF2YWRpbmltbyIKKworIzogc3JjL3VwZGF0ZS5jOjYyCittc2dpZCAidW5hYmxlIHRvIGFjY2VzcyBkcGtnIHN0YXR1cyBhcmVhIGZvciBidWxrIGF2YWlsYWJsZSB1cGRhdGUiCittc2dzdHIgImF0bmF1amluaW1vIHBha2V0dWkgbmVwYXZ5a28gcGFzaWVrdGkgZHBrZyBixatzZW5vcyDEr3JhxaFvIgorCisjOiBzcmMvdXBkYXRlLmM6NjQKK21zZ2lkICJidWxrIGF2YWlsYWJsZSB1cGRhdGUgcmVxdWlyZXMgd3JpdGUgYWNjZXNzIHRvIGRwa2cgc3RhdHVzIGFyZWEiCittc2dzdHIgImF0bmF1amluaW1vIHBha2V0dWkgcmVpa2FsaW5nYSByYcWheW1vIHRlaXPElyDEryBkcGtnIGLFq3Nlbm9zIMSvcmHFocSFIgorCisjOiBzcmMvdXBkYXRlLmM6NzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVwbGFjaW5nIGF2YWlsYWJsZSBwYWNrYWdlcyBpbmZvLCB1c2luZyAlcy5cbiIKK21zZ3N0ciAiS2VpxI1pYW1hIHByaWVpbmFtYSBwYWtldMWzIGluZm9ybWFjaWphLCBuYXVkb2phbnQgJXMuXG4iCisKKyM6IHNyYy91cGRhdGUuYzo3NAorIywgYy1mb3JtYXQKK21zZ2lkICJVcGRhdGluZyBhdmFpbGFibGUgcGFja2FnZXMgaW5mbywgdXNpbmcgJXMuXG4iCittc2dzdHIgIkF0bmF1amluYW1hIHByaWVpbmFtxbMgcGFrZXTFsyBpbmZvcm1hY2lqYSwgbmF1ZG9qYW50ICVzLlxuIgorCisjOiBzcmMvdXBkYXRlLmM6MTAxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJJbmZvcm1hdGlvbiBhYm91dCAlZCBwYWNrYWdlKHMpIHdhcyB1cGRhdGVkLlxuIgorbXNnaWQgIkluZm9ybWF0aW9uIGFib3V0ICVkIHBhY2thZ2Ugd2FzIHVwZGF0ZWQuXG4iCittc2dpZF9wbHVyYWwgIkluZm9ybWF0aW9uIGFib3V0ICVkIHBhY2thZ2VzIHdhcyB1cGRhdGVkLlxuIgorbXNnc3RyWzBdICJBdG5hdWppbnRhIGluZm9ybWFjaWphIGFwaWUgJWQgcGFrZXTFsy5cbiIKK21zZ3N0clsxXSAiQXRuYXVqaW50YSBpbmZvcm1hY2lqYSBhcGllICVkIHBha2V0xbMuXG4iCisKKyM6IHNyYy91cGRhdGUuYzoxMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm9ic29sZXRlICctLSVzJyBvcHRpb24sIHVuYXZhaWxhYmxlIHBhY2thZ2VzIGFyZSBhdXRvbWF0aWNhbGx5IGNsZWFuZWQgdXAuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgbmFtZSAnJS41MHMuLi4nIGlzIHRvbyBsb25nIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTI5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBmaWxlIG5hbWUgJyUuMjUwcyciCittc2dzdHIgIm5lcGF2eWtvIHBhdGlrcmludGkga2l0byBuYXVqbyBmYWlsbyDigJ4lLjI1MHPigJwiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTg5CisjLCBmdXp6eQorbXNnaWQgInVuYWJsZSB0byBzdGF0IGNvbnRyb2wgZGlyZWN0b3J5IgorbXNnc3RyICJuZXBhdnlrbyBhdHZlcnRpIGxhaWtpbm8gdmFsZHltbyBhcGxhbmtvIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjE5MQorIywgZnV6enkKK21zZ2lkICJjb250cm9sIGRpcmVjdG9yeSBpcyBub3QgYSBkaXJlY3RvcnkiCittc2dzdHIgIm5lZ2FsaXUgcGVyc2thaXR5dGkgaW5mb3JtYWNpam9zIGFwbGFua28iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTkzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbnRyb2wgZGlyZWN0b3J5IGhhcyBiYWQgcGVybWlzc2lvbnMgJTAzbG8gKG11c3QgYmUgPj0wNzU1IGFuZCA8PTA3NzUpIgorbXNnc3RyICIiCisidmFsZHltbyBhcGxhbmthcyB5cmEgbmVnZXJvbWlzICUwM2xvIHRlaXPEl21pcyAodHVyxK8gYsWrdGkgPj0wNzU1IGlyIDw9MDc3NSkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjA0CisjLCBjLWZvcm1hdAorbXNnaWQgIm1haW50YWluZXIgc2NyaXB0IGAlLjUwcycgaXMgbm90IGEgcGxhaW4gZmlsZSBvciBzeW1saW5rIgorbXNnc3RyICJwcmnFvmnFq3LEl3Rvam8gc2NlbmFyaWp1cyBgJS41MHMnLCBuxJdyYSBwYXByYXN0YXMgZmFpbGFzIGFyYmEgc2FpdGFzIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjIwNworIywgYy1mb3JtYXQKK21zZ2lkICIiCisibWFpbnRhaW5lciBzY3JpcHQgYCUuNTBzJyBoYXMgYmFkIHBlcm1pc3Npb25zICUwM2xvIChtdXN0IGJlID49MDU1NSBhbmQgIgorIjw9MDc3NSkiCittc2dzdHIgIiIKKyJwcmnFvmnFq3LEl3Rvam8gc2NlbmFyaWp1cyBgJS41MHMnIHlyYSBuZWdlcm9taXMgJTAzbG8gdGVpc8SXbWlzICh0dXLEryBixat0aSAiCisiPj0wNTU1IGlyIDw9MDc3NSkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjExCisjLCBjLWZvcm1hdAorbXNnaWQgIm1haW50YWluZXIgc2NyaXB0IGAlLjUwcycgaXMgbm90IHN0YXR0YWJsZSIKK21zZ3N0ciAicHJpxb5pxatyxJd0b2pvIHNjZW5hcmlqdWkgYCUuNTBzJyBuZWdhbGkgYsWrdGkgbnVzdGF0eXRhL3Bhcm9keXRhIGLFq3NlbmEiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjM3Cittc2dpZCAiZXJyb3Igb3BlbmluZyBjb25mZmlsZXMgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI0NgorbXNnaWQgImVtcHR5IHN0cmluZyBmcm9tIGZnZXRzIHJlYWRpbmcgY29uZmZpbGVzIgorbXNnc3RyICJnYXV0YSB0dcWhxI1pYSBlaWx1dMSXIGnFoSDigJ5mZ2V0c+KAnCBza2FpdGFudCBrb25maWfFq3JhY2lqb3MgZmFpbHVzIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI1MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgbmFtZSAnJS41MHMuLi4nIGlzIHRvbyBsb25nLCBvciBtaXNzaW5nIGZpbmFsIG5ld2xpbmUiCittc2dzdHIgIiIKKyLEr3NwxJdqaW1hczogbnVzdGF0eW3FsyBmYWlsbyB2YXJkYXMg4oCeJS41MHMuLi7igJwgeXJhIHBlciBpbGdhcyBhcmJhIHRyxatrc3RhICIKKyJwYXNrdXRpbmlvIG5hdWpvcyBlaWx1dMSXcyBzaW1ib2xpb1xuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI2NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgZmlsZW5hbWUgJyVzJyBjb250YWlucyB0cmFpbGluZyB3aGl0ZSBzcGFjZXMiCittc2dzdHIgIiIKKyLEr3NwxJdqaW1hczog4oCeJXPigJwgbnVzdGF0eW3FsyBmYWlsbyBwYXZhZGluaW1hcyBiYWlnaWFzaSBzZWthIGnFoSB0YXJwbyBzaW1ib2xpxbNcbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgYCUuMjUwcycgZG9lcyBub3QgYXBwZWFyIGluIHBhY2thZ2UiCittc2dzdHIgImtvbmZpZ8WrcmFjaWpvcyBmYWlsbyDigJ4lLjI1MHPigJwgbsSXcmEgcGFrZXRlIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI2OAorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBgJS4yNTBzJyBpcyBub3Qgc3RhdHRhYmxlIgorbXNnc3RyICJrb25maWfFq3JhY2lqb3MgZmFpbG8g4oCeJS4yNTBz4oCcIGLFq3NlbmEgbmVnYWxpIGLFq3RpIG51c3RhdHl0YSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlICclcycgaXMgbm90IGEgcGxhaW4gZmlsZSIKK21zZ3N0ciAiIgorIsSvc3DEl2ppbWFzOiBrb25maWfFq3JhY2lqb3MgZmFpbGFzIOKAniVz4oCcIG7El3JhIHBhcHJhc3RhcyB0ZWtzdGluaXMgZmFpbGFzXG4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6Mjc0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBuYW1lICclcycgaXMgZHVwbGljYXRlZCIKK21zZ3N0ciAiIgorIsSvc3DEl2ppbWFzOiBrb25maWfFq3JhY2lqb3MgZmFpbGFzIOKAniVz4oCcIG7El3JhIHBhcHJhc3RhcyB0ZWtzdGluaXMgZmFpbGFzXG4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6Mjg3Cittc2dpZCAiZXJyb3IgcmVhZGluZyBjb25mZmlsZXMgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjMzOQorbXNnaWQgInBhY2thZ2UgbmFtZSBoYXMgY2hhcmFjdGVycyB0aGF0IGFyZW4ndCBsb3dlcmNhc2UgYWxwaGFudW1zIG9yIGAtKy4nIgorbXNnc3RyICIiCisicGFrZXRvIHBhdmFkaW5pbWUgeXJhIHNpbWJvbGnFsyBrdXJpZSBuxJdyYSBtYcW+b3Npb3MgcmFpZMSXcywgc2thacSNaWFpIGFyIGAtKy4nIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjM0MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBjb250YWlucyB1c2VyLWRlZmluZWQgUHJpb3JpdHkgdmFsdWUgJyVzJyIKK21zZ3N0ciAixK9zcMSXamltYXM6IOKAniVz4oCcIMSvcmHFoXl0YSBuYXVkb3Rvam8gbnVzdGF0eXRhIFN2YXJidW1vIHJlaWvFoW3ElyDigJ4lc+KAnFxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjM0NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBjb250YWlucyB1c2VyLWRlZmluZWQgZmllbGQgJyVzJyIKK21zZ3N0ciAixK9zcMSXamltYXM6IOKAniVz4oCcIHR1cmkgbmF1ZG90b2pvIG51c3RhdHl0xIUgbGF1a8SFIOKAniVz4oCcXG4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MzU4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJpZ25vcmluZyAlZCB3YXJuaW5nIGFib3V0IHRoZSBjb250cm9sIGZpbGUocylcbiIKK21zZ2lkX3BsdXJhbCAiaWdub3JpbmcgJWQgd2FybmluZ3MgYWJvdXQgdGhlIGNvbnRyb2wgZmlsZShzKVxuIgorbXNnc3RyWzBdICJkcGtnLWRlYjogaWdub3J1b2phbWkgJWQgcGVyc3DEl2ppbWFpIGFwaWUgdmFsZHltbyBmYWlsdXNcbiIKK21zZ3N0clsxXSAiZHBrZy1kZWI6IGlnbm9ydW9qYW1pICVkIHBlcnNwxJdqaW1haSBhcGllIHZhbGR5bW8gZmFpbHVzXG4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDAzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDI5CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQzNgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGEgPGRpcmVjdG9yeT4gYXJndW1lbnQiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MDkKK21zZ2lkICItLWJ1aWxkIHRha2VzIGF0IG1vc3QgdHdvIGFyZ3VtZW50cyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQxMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hlY2sgZm9yIGV4aXN0ZW5jZSBvZiBhcmNoaXZlIGAlLjI1MHMnIgorbXNnc3RyICJuZcSvbWFub21hIHBhdGlrcmludGkgYCUuMjUwcycgYXJjaHl2byBidXZpbW8gdmlldG9zIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQzMAorbXNnaWQgInRhcmdldCBpcyBkaXJlY3RvcnkgLSBjYW5ub3Qgc2tpcCBjb250cm9sIGZpbGUgY2hlY2siCittc2dzdHIgInRpa3NsYXMgeXJhIGFwbGFua2FzIC0gbmXEr21hbm9tYSBwcmFsZWlzdGkgdmFsZHltbyBmYWlsbyBwYXRpa3JpbmltbyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzEKK21zZ2lkICJub3QgY2hlY2tpbmcgY29udGVudHMgb2YgY29udHJvbCBhcmVhLiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQzMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZHBrZy1kZWI6IGJ1aWxkaW5nIGFuIHVua25vd24gcGFja2FnZSBpbiAnJXMnLlxuIgorbXNnc3RyICJkcGtnLWRlYjogZGFyb21hcyBwYWtldGFzIGAlcycgLSBgJXMnLlxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQzOQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnLWRlYjogYnVpbGRpbmcgcGFja2FnZSBgJXMnIGluIGAlcycuXG4iCittc2dzdHIgImRwa2ctZGViOiBkYXJvbWFzIHBha2V0YXMgYCVzJyAtIGAlcycuXG4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDY3IGRwa2ctZGViL2J1aWxkLmM6NTIxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gbWFrZSB0bXBmaWxlIChkYXRhKSIKK21zZ2lkICJmYWlsZWQgdG8gbWFrZSB0ZW1wb3JhcnkgZmlsZSAoJXMpIgorbXNnc3RyICJuZXBhdnlrbyBzdWt1cnRpIGxhaWtpbm8gZmFpbG8gKGR1b21lbnlzKSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0NjcgZHBrZy1kZWIvYnVpbGQuYzo0NzAgZHBrZy1kZWIvYnVpbGQuYzo0NzcKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDg1IGRwa2ctZGViL2J1aWxkLmM6NDk0IGRwa2ctZGViL2J1aWxkLmM6NDk5CisjLCBmdXp6eQorI3wgbXNnaWQgImNvbnRyb2wgYXJlYSIKK21zZ2lkICJjb250cm9sIG1lbWJlciIKK21zZ3N0ciAidmFsZHltbyBzcml0aXMiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDcwIGRwa2ctZGViL2J1aWxkLmM6NTI0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gdW5saW5rIHRtcGZpbGUgKGRhdGEpLCAlcyIKK21zZ2lkICJmYWlsZWQgdG8gdW5saW5rIHRlbXBvcmFyeSBmaWxlICglcyksICVzIgorbXNnc3RyICJuZXBhdnlrbyBhdHNpZXRpIGxhaWtpbm9zIGZhaWxvIChkdW9tZW55cyksICVzIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ4NSBkcGtnLWRlYi9idWlsZC5jOjU5MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJld2luZCB0ZW1wb3JhcnkgZmlsZSAoJXMpIgorbXNnc3RyICJuZXBhdnlrbyBzdWt1cnRpIGxhaWtpbm8gZmFpbG8gKGR1b21lbnlzKSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0OTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBzdGF0IHRlbXBvcmFyeSBmaWxlICglcykiCittc2dzdHIgIm5lcGF2eWtvIHN1a3VydGkgbGFpa2lubyBmYWlsbyAoZHVvbWVueXMpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ5OAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciB3cml0aW5nIGAlcyciCittc2dzdHIgImtsYWlkYSBgJXMnIHJhxaF5bWUiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTIxIGRwa2ctZGViL2J1aWxkLmM6NTI0IGRwa2ctZGViL2J1aWxkLmM6NTQ2CisjOiBkcGtnLWRlYi9idWlsZC5jOjU3MiBkcGtnLWRlYi9idWlsZC5jOjU4MCBkcGtnLWRlYi9idWlsZC5jOjU5MworIywgZnV6enkKKyN8IG1zZ2lkICJiZXR3ZWVuIG1lbWJlcnMiCittc2dpZCAiZGF0YSBtZW1iZXIiCittc2dzdHIgInRhcnAgZGFsacWzIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjU3MSBkcGtnLWRlYi9idWlsZC5jOjU4MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIHdyaXRlIHRvIHBpcGUgaW4gY29weSIKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgZmlsZW5hbWUgdG8gdGFyIHBpcGUgKCVzKSIKK21zZ3N0ciAia29waWp1b2phbnQgbmVwYXZ5a28gxK9yYcWheXRpIMSvIHNyYXV0xIUiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTg0Cittc2dpZCAiPGNvbXByZXNzPiBmcm9tIHRhciAtY2YiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjYxIGRwa2ctZGViL2V4dHJhY3QuYzo2MworbXNnaWQgInNoZWxsIGNvbW1hbmQgdG8gbW92ZSBmaWxlcyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6NzAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgZmlsZSBpbiAlcyBpbiAlLjI1NXMiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHJlYWRpbmcgJXMgZnJvbSBmaWxlICUuMjU1cyIKK21zZ3N0ciAia2xhaWRhIHNrYWl0YW50ICVzIGnFoSBmYWlsbyAlLjI1NXMiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxMjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgYXJjaGl2ZSBgJS4yNTVzJyIKK21zZ3N0ciAibmVwYXZ5a28gbnVza2FpdHl0aSBhcmNoeXZvIGAlLjI1NXMnIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTI3Cittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGFyY2hpdmUiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjEzMQorIywgZnV6enkKKyN8IG1zZ2lkICJhcmNoaXZlIGhhcyBubyBkb3QgaW4gdmVyc2lvbiBudW1iZXIiCittc2dpZCAiYXJjaGl2ZSBtYWdpYyB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAiYXJjaHl2byB2ZXJzaWpvcyBudW1lcnlqZSBuxJdyYSB0YcWha8WzIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTQzCisjLCBmdXp6eQorI3wgbXNnaWQgImFyY2hpdmUgaGFzIG5vIG5ld2xpbmVzIGluIGhlYWRlciIKK21zZ2lkICJhcmNoaXZlIG1lbWJlciBoZWFkZXIiCittc2dzdHIgImFyY2h5dm8gYW50cmHFoXTEl2plIG7El3JhIG5hdWpvcyBlaWx1dMSXcyBzaW1ib2xpxbMiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNDgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBwYXJ0IG51bWJlciIKK21zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgYXJjaGl2ZSBoZWFkZXIgbWFnaWMiCittc2dzdHIgImZhaWxhcyDigJ4lLjI1MHPigJwgc3VnYWRpbnRhcyDigJMgYmxvZ2FzIGxlaWRpbW8gbnVtZXJpcyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE1NQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIG5vdCBhIGRlYmlhbiBiaW5hcnkgYXJjaGl2ZSAodHJ5IGRwa2ctc3BsaXQ/KSIKK21zZ3N0ciAiIgorImZhaWxhcyDigJ4lLjI1MHPigJwgbsSXcmEgZGViaWFuIGR2ZWpldGFpbmlzIGFyY2h5dmFzIChwYWJhbmR5a2l0ZSBkcGtnLXNwbGl0PykiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNTkKKyMsIGZ1enp5CisjfCBtc2dpZCAiYXJjaGl2ZSBoYXMgbm8gZG90IGluIHZlcnNpb24gbnVtYmVyIgorbXNnaWQgImFyY2hpdmUgaW5mb3JtYXRpb24gaGVhZGVyIG1lbWJlciIKK21zZ3N0ciAiYXJjaHl2byB2ZXJzaWpvcyBudW1lcnlqZSBuxJdyYSB0YcWha8WzIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTYyCittc2dpZCAiYXJjaGl2ZSBoYXMgbm8gbmV3bGluZXMgaW4gaGVhZGVyIgorbXNnc3RyICJhcmNoeXZvIGFudHJhxaF0xJdqZSBuxJdyYSBuYXVqb3MgZWlsdXTEl3Mgc2ltYm9sacWzIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTY1Cittc2dpZCAiYXJjaGl2ZSBoYXMgbm8gZG90IGluIHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICJhcmNoeXZvIHZlcnNpam9zIG51bWVyeWplIG7El3JhIHRhxaFrxbMiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiYXJjaGl2ZSB2ZXJzaW9uICUuMjUwcyBub3QgdW5kZXJzdG9vZCwgZ2V0IG5ld2VyIGRwa2ctZGViIgorbXNnc3RyICJhcmNoeXZvIHZlcnNpamEgJS4yNTBzIG5lc3VwcmFudGFtYSwgxK9kaWVraXRlIG5hdWplc27EryBkcGtnLWRlYiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE3OSBkcGtnLWRlYi9leHRyYWN0LmM6MjA1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJza2lwcGVkIG1lbWJlciBkYXRhIGZyb20gJXMiCittc2dpZCAic2tpcHBlZCBhcmNoaXZlIG1lbWJlciBkYXRhIGZyb20gJXMiCittc2dzdHIgInByYWxlaXN0aSBuYXJpxbMgZHVvbWVueXMgacWhICVzIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTk0CisjLCBjLWZvcm1hdAorbXNnaWQgImFyY2hpdmUgJyUuMjUwcycgY29udGFpbnMgbm90IHVuZGVyc3Rvb2QgZGF0YSBtZW1iZXIgJS4qcywgZ2l2aW5nIHVwIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxOTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiYXJjaGl2ZSAnJS4yNTBzJyBjb250YWlucyB0d28gY29udHJvbCBtZW1iZXJzLCBnaXZpbmcgdXAiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIxNAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiBuZXcgZGViaWFuIHBhY2thZ2UsIHZlcnNpb24gJXMuXG4iCisjfCAiIHNpemUgJWxkIGJ5dGVzOiBjb250cm9sIGFyY2hpdmU9ICV6aSBieXRlcy5cbiIKK21zZ2lkICIiCisiIG5ldyBkZWJpYW4gcGFja2FnZSwgdmVyc2lvbiAlcy5cbiIKKyIgc2l6ZSAlamQgYnl0ZXM6IGNvbnRyb2wgYXJjaGl2ZT0gJWpkIGJ5dGVzLlxuIgorbXNnc3RyICIiCisiIG5hdWphcyBkZWJpYW4gcGFrZXRhcywgdmVyc2lqYSAlcy5cbiIKKyIgZHlkaXMgJWxkIGJhaXRhaTogdmFsZHltbyBhcmNoeXZhcz0gJXppIGJhaXRhaS5cbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIzMgorbXNnaWQgImFyY2hpdmUgY29udHJvbCBtZW1iZXIgc2l6ZSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjM1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJhcmNoaXZlIGhhcyBtYWxmb3JtYXR0ZWQgY29udHJvbCBsZW5ndGggYCVzJyIKK21zZ2lkICJhcmNoaXZlIGhhcyBtYWxmb3JtYXR0ZWQgY29udHJvbCBtZW1iZXIgc2l6ZSAnJXMnIgorbXNnc3RyICJhcmNoeXZlIHlyYSBzdWdhZGludGFzIHZhbGR5bW8gaW5mb3JtYWNpam9zIGR5ZGlzIGAlcyciCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNDIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInNraXBwZWQgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ2lkICJza2lwcGVkIGFyY2hpdmUgY29udHJvbCBtZW1iZXIgZGF0YSBmcm9tICVzIgorbXNnc3RyICJwcmFsZWlzdGkgbmFyacWzIGR1b21lbnlzIGnFoSAlcyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI0NgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiBvbGQgZGViaWFuIHBhY2thZ2UsIHZlcnNpb24gJXMuXG4iCisjfCAiIHNpemUgJWxkIGJ5dGVzOiBjb250cm9sIGFyY2hpdmU9ICV6aSwgbWFpbiBhcmNoaXZlPSAlbGQuXG4iCittc2dpZCAiIgorIiBvbGQgZGViaWFuIHBhY2thZ2UsIHZlcnNpb24gJXMuXG4iCisiIHNpemUgJWpkIGJ5dGVzOiBjb250cm9sIGFyY2hpdmU9ICVqZCwgbWFpbiBhcmNoaXZlPSAlamQuXG4iCittc2dzdHIgIiIKKyIgc2VuYXMgZGViaWFuIHBha2V0YXMsIHZlcnNpamEgJXMuXG4iCisiIGR5ZGlzICVsZCBiYWl0YWk6IHZhbGR5bW8gYXJjaHl2YXM9ICV6aSwgcGFncmluZGluaXMgYXJjaHl2YXM9ICVsZC5cbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI1NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZy1kZWI6IGZpbGUgbG9va3MgbGlrZSBpdCBtaWdodCBiZSBhbiBhcmNoaXZlIHdoaWNoIGhhcyBiZWVuXG4iCisiZHBrZy1kZWI6ICAgIGNvcnJ1cHRlZCBieSBiZWluZyBkb3dubG9hZGVkIGluIEFTQ0lJIG1vZGVcbiIKK21zZ3N0ciAiIgorImRwa2ctZGViOiBmYWlsYXMgYXRyb2RvIGthaXAgYXJjaHl2YXMsIGt1cmlzIGJ1dm9cbiIKKyJkcGtnLWRlYjogICAgc3VnYWRpbnRhcyBzaXVuxI1pYW50IEFTQ0lJIHZlaWtzZW5hXG4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCUuMjU1cycgaXMgbm90IGEgZGViaWFuIGZvcm1hdCBhcmNoaXZlIgorbXNnc3RyICJgJS4yNTVzJyB5cmEgbmUgZGViaWFuIGZvcm1hdG8gYXJjaHl2YXMiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNjYKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgdG8gcGlwZSBpbiBjb3B5IgorbXNnc3RyICJrb3BpanVvamFudCBuZXBhdnlrbyDEr3JhxaF5dGkgxK8gc3JhdXTEhSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI2OAorbXNnaWQgImZhaWxlZCB0byBjbG9zZSBwaXBlIGluIGNvcHkiCittc2dzdHIgImtvcGlqdW9qYW50IG5lcGF2eWtvIHXFvmRhcnl0aSBzcmF1dG8iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyODQKK21zZ2lkICJkYXRhIgorbXNnc3RyICJkdW9tZW55cyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMwNworbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byBkaXJlY3RvcnkiCittc2dzdHIgIm5lcGF2eWtvIGF0dmVydGkgYXBsYW5rbyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMxMAorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgZGlyZWN0b3J5IgorbXNnc3RyICJuZXBhdnlrbyBzdWt1cnRpIGFwbGFua28iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozMTIKK21zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gZGlyZWN0b3J5IGFmdGVyIGNyZWF0aW5nIGl0IgorbXNnc3RyICJzdWvFq3J1cyBhcGxhbmvEhSBuZXBhdnlrbyBqbyBhdHZlcnRpIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzIzCisjLCBmdXp6eQorbXNnaWQgIjxkZWNvbXByZXNzPiIKK21zZ3N0ciAiJXM6IGnFoXNwYXVkaW1hcyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMyNQorIywgZnV6enkKK21zZ2lkICJwYXN0ZSIKK21zZ3N0ciAicHJhxJdqb1xuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzQyIGRwa2ctZGViL2V4dHJhY3QuYzozNjMgZHBrZy1kZWIvZXh0cmFjdC5jOjQwMgorIzogZHBrZy1kZWIvaW5mby5jOjc3CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSAuZGViIGZpbGVuYW1lIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIHJlaWtpYSAuZGViIGZhaWxvIHBhcmFtZXRybyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjM0NyBkcGtnLWRlYi9leHRyYWN0LmM6NDA2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyItLSVzIG5lZWRzIGEgdGFyZ2V0IGRpcmVjdG9yeS5cbiIKKyJQZXJoYXBzIHlvdSBzaG91bGQgYmUgdXNpbmcgZHBrZyAtLWluc3RhbGwgPyIKK21zZ3N0ciAiIgorIi0tJXMgcmVpa2lhIG51cm9keXRpIMSvZGllZ2ltbyBhcGxhbmvEhS5cbiIKKyJHYWwgZ2VyaWF1IGLFq3TFsyBuYXVkb3RpIGRwa2cgLS1pbnN0YWxsID8iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozNTAgZHBrZy1kZWIvZXh0cmFjdC5jOjQxMAorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIHRha2VzIGF0IG1vc3QgdHdvIGFyZ3VtZW50cyAoLmRlYiBhbmQgZGlyZWN0b3J5KSIKK21zZ3N0ciAiLS0lcyBwcmlpbWEgZGF1Z2lhdXNpYWkgZHUgcGFyYW1ldHJ1cyAoLmRlYiBmYWlsxIUgaXIgYXBsYW5rxIUpIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzY1CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgb25seSBvbmUgYXJndW1lbnQgKC5kZWIgZmlsZW5hbWUpIgorbXNnc3RyICItLSVzIHByaWltYSB0aWsgdmllbsSFIHBhcmFtZXRyxIUgKC5kZWIgZmFpbMSFKSIKKworIzogZHBrZy1kZWIvaW5mby5jOjYzCittc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIGAvJyBmb3IgY2xlYW51cCIKK21zZ3N0ciAibmVwYXZ5a28gYXR2ZXJ0aSBgLycgdmFseW11aSIKKworIzogZHBrZy1kZWIvaW5mby5jOjEwNgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHJlYWQgJXM6ICVzIgorbXNnaWQgImNvbnRyb2wgZmlsZSAnJXMnIgorbXNnc3RyICJuZXBhdnlrbyBudXNrYWl0eXRpICVzOiAlcyIKKworIzogZHBrZy1kZWIvaW5mby5jOjExMAorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnLWRlYjogYCUuMjU1cycgY29udGFpbnMgbm8gY29udHJvbCBjb21wb25lbnQgYCUuMjU1cydcbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgIm9wZW4gY29tcG9uZW50IGAlLjI1NXMnIChpbiAlLjI1NXMpIGZhaWxlZCBpbiBhbiB1bmV4cGVjdGVkIHdheSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTIxCisjLCBjLWZvcm1hdAorbXNnaWQgIiVkIHJlcXVlc3RlZCBjb250cm9sIGNvbXBvbmVudCBpcyBtaXNzaW5nIgorbXNnaWRfcGx1cmFsICIlZCByZXF1ZXN0ZWQgY29udHJvbCBjb21wb25lbnRzIGFyZSBtaXNzaW5nIgorbXNnc3RyWzBdICIiCittc2dzdHJbMV0gIiIKKworIzogZHBrZy1kZWIvaW5mby5jOjEzOSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NDI0CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzY2FuIGRpcmVjdG9yeSBgJS4yNTVzJyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTQ4CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzdGF0IGAlLjI1NXMnIChpbiBgJS4yNTVzJykiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvaW5mby5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgb3BlbiBgJS4yNTVzJyAoaW4gYCUuMjU1cycpIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxNjcgZHBrZy1kZWIvaW5mby5jOjE4NSBkcGtnLWRlYi9pbmZvLmM6MTk5CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZWFkIGAlLjI1NXMnIChpbiBgJS4yNTVzJykiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvaW5mby5jOjE3MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiICU3bGQgYnl0ZXMsICU1ZCBsaW5lcyAgICVjICAlLTIwLjEyN3MgJS4xMjdzXG4iCittc2dpZCAiICU3amQgYnl0ZXMsICU1ZCBsaW5lcyAgICVjICAlLTIwLjEyN3MgJS4xMjdzXG4iCittc2dzdHIgIiAlN2xkIGJhaXRhaSwgJTVkIGVpbHV0xJdzICVjICUtMjAuMTI3cyAlLjEyN3NcbiIKKworIzogZHBrZy1kZWIvaW5mby5jOjE3NAorIywgYy1mb3JtYXQKK21zZ2lkICIgICAgIG5vdCBhIHBsYWluIGZpbGUgICAgICAgICAgJS4yNTVzXG4iCittc2dzdHIgIiAgICAgbmUgcGFwcmFzdGFzICUuMjU1cyBmYWlsYXNcbiIKKworIzogZHBrZy1kZWIvaW5mby5jOjE4NgorbXNnaWQgIihubyBgY29udHJvbCcgZmlsZSBpbiBjb250cm9sIGFyY2hpdmUhKVxuIgorbXNnc3RyICIodmFsZHltbyBhcmNoeXZlIG7El3JhIOKAnmNvbnRyb2zigJwgZmFpbG8hKVxuIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MjIyCittc2dpZCAiY291bGQgbm90IG9wZW4gdGhlIGBjb250cm9sJyBjb21wb25lbnQiCittc2dzdHIgIm5lcGF2eWtvIGF0dmVydGkgYGNvbnRyb2wnIGtvbXBvbmVudG8iCisKKyM6IGRwa2ctZGViL2luZm8uYzoyNjEKK21zZ2lkICJmYWlsZWQgZHVyaW5nIHJlYWQgb2YgYGNvbnRyb2wnIGNvbXBvbmVudCIKK21zZ3N0ciAibmVwYXZ5a28gbnVza2FpdHl0aSBgY29udHJvbCcga29tcG9uZW50byIKKworIzogZHBrZy1kZWIvaW5mby5jOjI2MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyB0aGUgJyVzJyBjb21wb25lbnQiCittc2dzdHIgImtsYWlkYSB1xb5kYXJhbnQgcGFpZcWha29zIHNyYXV0xIUiCisKKyM6IGRwa2ctZGViL2luZm8uYzoyNzgKK21zZ2lkICJFcnJvciBpbiBmb3JtYXQiCittc2dzdHIgIktsYWlkYSBmb3JtYXRlIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MzI4Cittc2dpZCAiLS1jb250ZW50cyB0YWtlcyBleGFjdGx5IG9uZSBhcmd1bWVudCIKK21zZ3N0ciAiLS1jb250cm9sIG51c3RhdHltdWkgcmVpa2lhIHRpayB2aWVubyBwYXJhbWV0cm8iCisKKyM6IGRwa2ctZGViL21haW4uYzo1NAorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIGFyY2hpdmUgYmFja2VuZCB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICJEZWJpYW4gYCVzJyBwYWtldG8gYXJjaHl2byB2ZXJzaWphICVzLlxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6NzMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJDb21tYW5kczpcbiIKKyN8ICIgIC1ifC0tYnVpbGQgPGRpcmVjdG9yeT4gWzxkZWI+XSAgIEJ1aWxkIGFuIGFyY2hpdmUuXG4iCisjfCAiICAtY3wtLWNvbnRlbnRzIDxkZWI+ICAgICAgICAgICAgICBMaXN0IGNvbnRlbnRzLlxuIgorI3wgIiAgLUl8LS1pbmZvIDxkZWI+IFs8Y2ZpbGU+IC4uLl0gICAgU2hvdyBpbmZvIHRvIHN0ZG91dC5cbiIKKyN8ICIgIC1XfC0tc2hvdyA8ZGViPiAgICAgICAgICAgICAgICAgIFNob3cgaW5mb3JtYXRpb24gb24gcGFja2FnZShzKVxuIgorI3wgIiAgLWZ8LS1maWVsZCA8ZGViPiBbPGNmaWVsZD4gLi4uXSAgU2hvdyBmaWVsZChzKSB0byBzdGRvdXQuXG4iCisjfCAiICAtZXwtLWNvbnRyb2wgPGRlYj4gWzxkaXJlY3Rvcnk+XSBFeHRyYWN0IGNvbnRyb2wgaW5mby5cbiIKKyN8ICIgIC14fC0tZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PiAgIEV4dHJhY3QgZmlsZXMuXG4iCisjfCAiICAtWHwtLXZleHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+ICBFeHRyYWN0ICYgbGlzdCBmaWxlcy5cbiIKKyN8ICIgIC0tZnN5cy10YXJmaWxlIDxkZWI+ICAgICAgICAgICAgIE91dHB1dCBmaWxlc3lzdGVtIHRhcmZpbGUuXG4iCisjfCAiXG4iCittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLWJ8LS1idWlsZCA8ZGlyZWN0b3J5PiBbPGRlYj5dICAgQnVpbGQgYW4gYXJjaGl2ZS5cbiIKKyIgIC1jfC0tY29udGVudHMgPGRlYj4gICAgICAgICAgICAgIExpc3QgY29udGVudHMuXG4iCisiICAtSXwtLWluZm8gPGRlYj4gWzxjZmlsZT4gLi4uXSAgICBTaG93IGluZm8gdG8gc3Rkb3V0LlxuIgorIiAgLVd8LS1zaG93IDxkZWI+ICAgICAgICAgICAgICAgICAgU2hvdyBpbmZvcm1hdGlvbiBvbiBwYWNrYWdlKHMpXG4iCisiICAtZnwtLWZpZWxkIDxkZWI+IFs8Y2ZpZWxkPiAuLi5dICBTaG93IGZpZWxkKHMpIHRvIHN0ZG91dC5cbiIKKyIgIC1lfC0tY29udHJvbCA8ZGViPiBbPGRpcmVjdG9yeT5dIEV4dHJhY3QgY29udHJvbCBpbmZvLlxuIgorIiAgLXh8LS1leHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+ICAgRXh0cmFjdCBmaWxlcy5cbiIKKyIgIC1YfC0tdmV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gIEV4dHJhY3QgJiBsaXN0IGZpbGVzLlxuIgorIiAgLVJ8LS1yYXctZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRXh0cmFjdCBjb250cm9sIGluZm8gYW5kIGZpbGVzLlxuIgorIiAgLS1mc3lzLXRhcmZpbGUgPGRlYj4gICAgICAgICAgICAgT3V0cHV0IGZpbGVzeXN0ZW0gdGFyZmlsZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIktvbWFuZG9zOlxuIgorIiAgLWJ8LS1idWlsZCA8YXBsYW5rYXM+IFs8ZGViPl0gU3VrdXJ0aSBhcmNoeXbEhS5cbiIKKyIgIC1jfC0tY29udGVudHMgPGRlYj4gUGFyb2R5dGkgdHVyaW7Ery5cbiIKKyIgIC1JfC0taW5mbyA8ZGViPiBbPGtmYWlsYXM+IC4uLl0gScWhdmVzdGkgaW5mb3JtYWNpasSFIMSvIHN0YW5kYXJ0aW7EmSAiCisiacWhdmVzdMSvLlxuIgorIiAgLVd8LS1zaG93IDxkZWI+IFBhcm9keXRpIHBha2V0bygtxbMpIGluZm9ybWFjaWrEhVxuIgorIiAgLWZ8LS1maWVsZCA8ZGViPiBbPGtmYWlsYXM+IC4uLl0gScWhdmVzdGkgbGF1a2VsaW8oLcWzKSBpbmZvcm1hY2lqxIUgxK8gIgorInN0YW5kYXJ0aW7EmSBpxaF2ZXN0xK8uXG4iCisiICAtZXwtLWNvbnRyb2wgPGRlYj4gWzxhcGxhbmthcz5dIEnFoXRyYXVrdGkgdmFsZHltbyBpbmZvcm1hY2lqxIUuXG4iCisiICAteHwtLWV4dHJhY3QgPGRlYj4gPGFwbGFua2FzPiBJxaFzcGF1c3RpIGZhaWx1cy5cbiIKKyIgIC1YfC0tdmV4dHJhY3QgPGRlYj4gPGFwbGFua2FzPiBJxaFzcGF1c3RpIGlyIHBhcm9keXRpIGZhaWx1cy5cbiIKKyIgIC0tZnN5cy10YXJmaWxlIDxkZWI+IEnFoXZlc3RpIGZhaWzFsyBzaXN0ZW1vcyB0YXIgZmFpbMSFLlxuIgorIlxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6OTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIjxkZWI+IGlzIHRoZSBmaWxlbmFtZSBvZiBhIERlYmlhbiBmb3JtYXQgYXJjaGl2ZS5cbiIKKyI8Y2ZpbGU+IGlzIHRoZSBuYW1lIG9mIGFuIGFkbWluaXN0cmF0aXZlIGZpbGUgY29tcG9uZW50LlxuIgorIjxjZmllbGQ+IGlzIHRoZSBuYW1lIG9mIGEgZmllbGQgaW4gdGhlIG1haW4gYGNvbnRyb2wnIGZpbGUuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjk5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1zaG93Zm9ybWF0PTxmb3JtYXQ+ICAgICAgICAgICAgVXNlIGFsdGVybmF0aXZlIGZvcm1hdCBmb3IgLS1zaG93LlxuIgorIiAgLXYsIC0tdmVyYm9zZSAgICAgICAgICAgICAgICAgICAgRW5hYmxlIHZlcmJvc2Ugb3V0cHV0LlxuIgorIiAgLUQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRW5hYmxlIGRlYnVnZ2luZyBvdXRwdXQuXG4iCisiICAtLW9sZCwgLS1uZXcgICAgICAgICAgICAgICAgICAgICBTZWxlY3QgYXJjaGl2ZSBmb3JtYXQuXG4iCisiICAtLW5vY2hlY2sgICAgICAgICAgICAgICAgICAgICAgICBTdXBwcmVzcyBjb250cm9sIGZpbGUgY2hlY2sgKGJ1aWxkIGJhZFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWNrYWdlcykuXG4iCisiICAteiMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTZXQgdGhlIGNvbXByZXNzaW9uIGxldmVsIHdoZW4gYnVpbGRpbmcuXG4iCisiICAtWjx0eXBlPiAgICAgICAgICAgICAgICAgICAgICAgICBTZXQgdGhlIGNvbXByZXNzaW9uIHR5cGUgdXNlZCB3aGVuICIKKyJidWlsZGluZy5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWxsb3dlZCB0eXBlczogZ3ppcCwgeHosIGJ6aXAyLCBsem1hLCAiCisibm9uZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTIxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJVc2UgYGRwa2cnIHRvIGluc3RhbGwgYW5kIHJlbW92ZSBwYWNrYWdlcyBmcm9tIHlvdXIgc3lzdGVtLCBvclxuIgorImBkc2VsZWN0JyBvciBgYXB0aXR1ZGUnIGZvciB1c2VyLWZyaWVuZGx5IHBhY2thZ2UgbWFuYWdlbWVudC4gIFBhY2thZ2VzXG4iCisidW5wYWNrZWQgdXNpbmcgYGRwa2ctZGViIC0tZXh0cmFjdCcgd2lsbCBiZSBpbmNvcnJlY3RseSBpbnN0YWxsZWQgIVxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL21haW4uYzoxMzIKK21zZ2lkICIiCisiVHlwZSBkcGtnLWRlYiAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgbWFuaXB1bGF0aW5nICouZGViIGZpbGVzO1xuIgorIlR5cGUgZHBrZyAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgaW5zdGFsbGluZyBhbmQgZGVpbnN0YWxsaW5nIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTQ4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGludGVnZXIgZm9yIC0lYzogJyUuMjUwcyciCittc2dzdHIgInJlaWthbGluZ2FzIHN2ZWlrYXMgc2thacSNaXVzIC0tJXM6IGAlLjI1MHMnIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTUxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGNvbXByZXNzaW9uIGxldmVsIGZvciAtJWM6ICVsZCciCittc2dzdHIgInJlaWthbGluZ2FzIHN2ZWlrYXMgc2thacSNaXVzIC0tJXM6IGAlLjI1MHMnIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTYxCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gY29tcHJlc3Npb24gdHlwZSBgJXMnISIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzo1MgorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgZGlnaXQgKGNvZGUgJWQpIGluICVzIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjYwCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtICUuMjUwcyBtaXNzaW5nIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjYzCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIG1pc3NpbmcgbmV3bGluZSBhZnRlciAlLjI1MHMiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6ODkgZHBrZy1zcGxpdC9tYWluLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHJlYWRpbmcgJS4yNTBzIgorbXNnc3RyICJrbGFpZGEgc2thaXRhbnQgJS4yNTBzIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIG1hZ2ljIGF0IGVuZCBvZiBmaXJzdCBoZWFkZXIiCittc2dzdHIgImZhaWxhcyDigJ4lLjI1MHPigJwgc3VnYWRpbnRhcyAtIGtsYWlkaW5nYSBwaXJtb3MgYW50cmHFoXTEl3MgcGFiYWlnYSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTEzCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBwYWRkaW5nIGNoYXJhY3RlciAoY29kZSAlZCkiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTE3CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIG51bGxzIGluIGluZm8gc2VjdGlvbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMjIKKyMsIGZ1enp5Cittc2dpZCAiZm9ybWF0IHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICJ2ZXJzaWpvcyBudW1lcmlzIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBmb3JtYXQgdmVyc2lvbiBgJS4yNTBzJyAtIHlvdSBuZWVkIGEgbmV3ZXIgZHBrZy1zcGxpdCIKK21zZ3N0ciAiIgorIuKAniUuMjUwc+KAnCBmYWlsbyBmb3JtYXRvIHZlcnNpamEgeXJhIOKAniUuMjUwc+KAnCDigJMgcmVpa2lhIG5hdWplc25pbyBkcGtnLXNwbGl0IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMjcKK21zZ2lkICJwYWNrYWdlIG5hbWUiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTI4CisjLCBmdXp6eQorbXNnaWQgInBhY2thZ2UgdmVyc2lvbiBudW1iZXIiCittc2dzdHIgInZlcnNpam9zIG51bWVyaXMiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyOQorbXNnaWQgInBhY2thZ2UgZmlsZSBNRDUgY2hlY2tzdW0iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTMyCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBNRDUgY2hlY2tzdW0gYCUuMjUwcyciCittc2dzdHIgImZhaWxhcyDigJ4lLjI1MHPigJwgc3VnYWRpbnRhcyAtIGJsb2dhIE1ENSBrb250cm9saW7ElyBzdW1hIOKAniUuMjUwc+KAnCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTM0IGRwa2ctc3BsaXQvaW5mby5jOjEzNQorbXNnaWQgImFyY2hpdmUgdG90YWwgc2l6ZSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMzYgZHBrZy1zcGxpdC9pbmZvLmM6MTM3Cittc2dpZCAiYXJjaGl2ZSBwYXJ0IG9mZnNldCIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMzkKKyMsIGZ1enp5Cittc2dpZCAiYXJjaGl2ZSBwYXJ0IG51bWJlcnMiCittc2dzdHIgInZlcnNpam9zIG51bWVyaXMiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE0MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gbm8gc2xhc2ggYmV0d2VlbiBwYXJ0IG51bWJlcnMiCittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gbm8gc2xhc2ggYmV0d2VlbiBhcmNoaXZlIHBhcnQgbnVtYmVycyIKK21zZ3N0ciAiIgorIkZhaWxhcyDigJ4lLjI1MHPigJwgc3VnYWRpbnRhcyDigJMgdGFycCBkYWxpxbMgbnVtZXJpxbMgbsSXcmEgcGFzdmlyxbNqxbMgYnLFq2vFoW5pxbMiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE0NQorbXNnaWQgIm51bWJlciBvZiBhcmNoaXZlIHBhcnRzIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE0NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIG51bWJlciBvZiBhcmNoaXZlIHBhcnRzIgorbXNnc3RyICJmYWlsYXMg4oCeJS4yNTBz4oCcIHN1Z2FkaW50YXMg4oCTIGJsb2dhcyBsZWlkaW1vIG51bWVyaXMiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE0OQorIywgZnV6enkKK21zZ2lkICJhcmNoaXZlIHBhcnRzIG51bWJlciIKK21zZ3N0ciAidmVyc2lqb3MgbnVtZXJpcyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTUxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgcGFydCBudW1iZXIiCittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIGFyY2hpdmUgcGFydCBudW1iZXIiCittc2dzdHIgImZhaWxhcyDigJ4lLjI1MHPigJwgc3VnYWRpbnRhcyDigJMgYmxvZ2FzIGxlaWRpbW8gbnVtZXJpcyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTU3Cittc2dpZCAicGFja2FnZSBhcmNoaXRlY3R1cmUiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTY2CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBtYWdpYyBhdCBlbmQgb2Ygc2Vjb25kIGhlYWRlciIKK21zZ3N0ciAiZmFpbGFzIOKAniUuMjUwc+KAnCBzdWdhZGludGFzIC0ga2xhaWRpbmdhIGFudHJvc2lvcyBhbnRyYcWhdMSXcyBwYWJhaWdhIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gc2Vjb25kIG1lbWJlciBpcyBub3QgZGF0YSBtZW1iZXIiCittc2dzdHIgImZhaWxhcyDigJ4lLjI1MHPigJwgc3VnYWRpbnRhcyDigJMgYW50cmFzaXMgbmFyeXMgbsSXcmEgZHVvbWVuxbMgbmFyeXMiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE3NAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSB3cm9uZyBudW1iZXIgb2YgcGFydHMgZm9yIHF1b3RlZCBzaXplcyIKK21zZ3N0ciAiZmFpbGFzIOKAniUuMjUwc+KAnCBzdWdhZGludGFzIC0gbmVnZXJhcyBudXJvZHl0byBkeWTFvmlvIGRhbGnFsyBza2FpxI1pdXMiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE3OAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBzaXplIGlzIHdyb25nIGZvciBxdW90ZWQgcGFydCBudW1iZXIiCittc2dzdHIgImZhaWxhcyDigJ4lLjI1MHPigJwgc3VnYWRpbnRhcyAtIG5lZ2VyYXMgbnVyb2R5dG8gZHlkxb5pbyBkYWxpZXMgZHlkaXMiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE4NAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZnN0YXQgcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuZXBhdnlrbyDEr3Z5a2R5dGkgZnN0YXQgZGFsaW5pYW0g4oCeJS4yNTBz4oCcIGZhaWx1aSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTg5CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIHRvbyBzaG9ydCIKK21zZ3N0ciAiZmFpbGFzIOKAniUuMjUwc+KAnCBzdWdhZGludGFzIOKAkyBwZXIgdHJ1bXBhcyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjAyIGRwa2ctc3BsaXQvaW5mby5jOjI0OQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgb3BlbiBhcmNoaXZlIHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBub3QgYW4gYXJjaGl2ZSBwYXJ0IgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjIwOQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6XG4iCisiICAgIFBhcnQgZm9ybWF0IHZlcnNpb246ICAgICAgICAgICAgJXNcbiIKKyIgICAgUGFydCBvZiBwYWNrYWdlOiAgICAgICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIHZlcnNpb246ICAgICAgICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gYXJjaGl0ZWN0dXJlOiAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiBNRDUgY2hlY2tzdW06ICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIGxlbmd0aDogICAgICAgICAgICAgICAgICVqZCBieXRlc1xuIgorIiAgICAgICAgLi4uIHNwbGl0IGV2ZXJ5OiAgICAgICAgICAgICVqZCBieXRlc1xuIgorIiAgICBQYXJ0IG51bWJlcjogICAgICAgICAgICAgICAgICAgICVkLyVkXG4iCisiICAgIFBhcnQgbGVuZ3RoOiAgICAgICAgICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgIFBhcnQgb2Zmc2V0OiAgICAgICAgICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgIFBhcnQgZmlsZSBzaXplICh1c2VkIHBvcnRpb24pOiAgJWpkIGJ5dGVzXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjI1CisjLCBmdXp6eQorI3wgbXNnaWQgIjx1bmtub3duPiIKK21zZ2N0eHQgImFyY2hpdGVjdHVyZSIKK21zZ2lkICI8dW5rbm93bj4iCittc2dzdHIgIjxuZcW+aW5vbWFzPiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjQ0IGRwa2ctc3BsaXQvam9pbi5jOjEwNQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiLS0lcyByZXF1aXJlcyBvbmUgb3IgbW9yZSBwYXJ0IGZpbGUgYXJndW1lbnRzIgorbXNnc3RyICItLWRlYnVnIHJlaWtpYSDFoWXFoWlvbGlrdGFpbsSXcyByZWlrxaFtxJdzIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJXMnIGlzIG5vdCBhbiBhcmNoaXZlIHBhcnRcbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo0NAorIywgYy1mb3JtYXQKK21zZ2lkICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0OiAiCittc2dpZF9wbHVyYWwgIlB1dHRpbmcgcGFja2FnZSAlcyB0b2dldGhlciBmcm9tICVkIHBhcnRzOiAiCittc2dzdHJbMF0gIiIKK21zZ3N0clsxXSAiIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBvdXRwdXQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gKHJlKW9wZW4gaW5wdXQgcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjU4CisjLCBmdXp6eQorI3wgbXNnaWQgIlNraXBwaW5nIGRlc2VsZWN0ZWQgcGFja2FnZSAlcy5cbiIKK21zZ2lkICJza2lwcGluZyBzcGxpdCBwYWNrYWdlIGhlYWRlciIKK21zZ3N0ciAiUHJhbGVpZMW+aWFtZSBuZXBhc2lyaW5rdMSFIHBha2V0xIUgJXMuXG4iCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjU5CisjLCBmdXp6eQorI3wgbXNnaWQgIm1pc3NpbmcgcGFja2FnZSIKK21zZ2lkICJzcGxpdCBwYWNrYWdlIHBhcnQiCittc2dzdHIgInRyxatrc3RhbWFzIHBha2V0YXMiCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjY5IGRwa2ctc3BsaXQvc3BsaXQuYzoyMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZG9uZVxuIgorbXNnc3RyICJiYWlndGFcbiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZXMgYCUuMjUwcycgYW5kIGAlLjI1MHMnIGFyZSBub3QgcGFydHMgb2YgdGhlIHNhbWUgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo5MAorIywgYy1mb3JtYXQKK21zZ2lkICJ0aGVyZSBhcmUgc2V2ZXJhbCB2ZXJzaW9ucyBvZiBwYXJ0ICVkIC0gYXQgbGVhc3QgYCUuMjUwcycgYW5kIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjEyOAorIywgYy1mb3JtYXQKK21zZ2lkICJwYXJ0ICVkIGlzIG1pc3NpbmciCittc2dzdHIgInRyxatrc3RhICVkIGRhbGllcyIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6NDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuIGAlcycgcGFja2FnZSBzcGxpdC9qb2luIHRvb2w7IHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkRlYmlhbiBwYWtldMWzIGnFoXNrYWlkeW1vL3N1anVuZ2ltbyDEr3JhbmtpcyBgJXMnOyB2ZXJzaWphICVzLlxuIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo0OQorIywgYy1mb3JtYXQKK21zZ2lkICJDb3B5cmlnaHQgKEMpIDE5OTQtMTk5NiBJYW4gSmFja3Nvbi5cbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo2NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtc3wtLXNwbGl0IDxmaWxlPiBbPHByZWZpeD5dICAgICBTcGxpdCBhbiBhcmNoaXZlLlxuIgorIiAgLWp8LS1qb2luIDxwYXJ0PiA8cGFydD4gLi4uICAgICAgSm9pbiBwYXJ0cyB0b2dldGhlci5cbiIKKyIgIC1JfC0taW5mbyA8cGFydD4gLi4uICAgICAgICAgICAgIERpc3BsYXkgaW5mbyBhYm91dCBhIHBhcnQuXG4iCisiICAtYXwtLWF1dG8gLW8gPGNvbXBsZXRlPiA8cGFydD4gICBBdXRvLWFjY3VtdWxhdGUgcGFydHMuXG4iCisiICAtbHwtLWxpc3RxICAgICAgICAgICAgICAgICAgICAgICBMaXN0IHVubWF0Y2hlZCBwaWVjZXMuXG4iCisiICAtZHwtLWRpc2NhcmQgWzxmaWxlbmFtZT4gLi4uXSAgICBEaXNjYXJkIHVubWF0Y2hlZCBwaWVjZXMuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWRlcG90ZGlyIDxkaXJlY3Rvcnk+ICAgICAgICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy8lcy5cbiIKKyIgIC1TfC0tcGFydHNpemUgPHNpemU+ICAgICAgICAgICAgIEluIEtpQiwgZm9yIC1zIChkZWZhdWx0IGlzIDQ1MCkuXG4iCisiICAtb3wtLW91dHB1dCA8ZmlsZT4gICAgICAgICAgICAgICBGaWxlbmFtZSwgZm9yIC1qIChkZWZhdWx0IGlzXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYWNrYWdlPl88dmVyc2lvbj5fPGFyY2g+LmRlYikuXG4iCisiICAtUXwtLW5wcXVpZXQgICAgICAgICAgICAgICAgICAgICBCZSBxdWlldCB3aGVuIC1hIGlzIG5vdCBhIHBhcnQuXG4iCisiICAtLW1zZG9zICAgICAgICAgICAgICAgICAgICAgICAgICBHZW5lcmF0ZSA4LjMgZmlsZW5hbWVzLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjkyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJFeGl0IHN0YXR1czpcbiIKKyIgIDAgPSBva1xuIgorIiAgMSA9IHdpdGggLS1hdXRvLCBmaWxlIGlzIG5vdCBhIHBhcnRcbiIKKyIgIDIgPSB0cm91YmxlXG4iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6MTAzCittc2dpZCAiVHlwZSBkcGtnLXNwbGl0IC0taGVscCBmb3IgaGVscC4iCittc2dzdHIgIk5vcsSXZGFtaSBnYXV0aSBwYWdhbGLEhSDEr3Z5a2R5a2l0ZSBkcGtnLXNwbGl0IC0taGVscCIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6MTE1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGZpbGUgaW4gJS4yNTBzIgorbXNnc3RyICJuZXRpa8SXdGEgJS4yNTBzIGZhaWxvIHBhYmFpZ2EiCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjEyNgorbXNnaWQgInBhcnQgc2l6ZSBpcyBmYXIgdG9vIGxhcmdlIG9yIGlzIG5vdCBwb3NpdGl2ZSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMzAKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFydCBzaXplIG11c3QgYmUgYXQgbGVhc3QgJWQgS2lCICh0byBhbGxvdyBmb3IgaGVhZGVyKSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgZGVwb3QgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxMzQKK21zZ2lkICItLWF1dG8gcmVxdWlyZXMgdGhlIHVzZSBvZiB0aGUgLS1vdXRwdXQgb3B0aW9uIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxMzYKK21zZ2lkICItLWF1dG8gcmVxdWlyZXMgZXhhY3RseSBvbmUgcGFydCBmaWxlIGFyZ3VtZW50IgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxNDAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxNDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiRmlsZSBgJS4yNTBzJyBpcyBub3QgcGFydCBvZiBhIG11bHRpcGFydCBhcmNoaXZlLlxuIgorbXNnc3RyICLigJ4lLjI1MHPigJwgZmFpbGFzIG7El3JhIHN1ZGFsaW50byBhcmNoeXZvIGRhbGlzLlxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTc5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW9wZW4gcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuZXBhdnlrbyBwYWthcnRvdGluYWkgYXR2ZXJ0aSBgJS4yNTBzJyBkYWxpbmlvIGZhaWxvIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTgyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIG5ldyBkZXBvdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxODQKK21zZ2lkICJleHRyYWN0aW5nIHNwbGl0IHBhcnQiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE5MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVuYW1lIG5ldyBkZXBvdCBmaWxlIGAlLjI1MHMnIHRvIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFydCAlZCBvZiBwYWNrYWdlICVzIGZpbGVkIChzdGlsbCB3YW50ICIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjAwCittc2dpZCAiIGFuZCAiCittc2dzdHIgIiBpciAiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSB1c2VkLXVwIGRlcG90IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjIzNQorbXNnaWQgIkp1bmsgZmlsZXMgbGVmdCBhcm91bmQgaW4gdGhlIGRlcG90IGRpcmVjdG9yeTpcbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjQwIGRwa2ctc3BsaXQvcXVldWUuYzoyNjkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgYCUuMjUwcyciCittc2dzdHIgIm5lcGF2eWtvIG51c3RhdHl0aSBgJS4yNTBzJyBixatzZW5vcyIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI0MworIywgYy1mb3JtYXQKK21zZ2lkICIgJXMgKCVqZCBieXRlcylcbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAlcyAobm90IGEgcGxhaW4gZmlsZSlcbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjUwCittc2dpZCAiUGFja2FnZXMgbm90IHlldCByZWFzc2VtYmxlZDpcbiIKK21zZ3N0ciAiRGFyIG5lcGVycmlua3RpIHBha2V0YWk6XG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIFBhY2thZ2UgJXM6IHBhcnQocykgIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFydCBmaWxlIGAlLjI1MHMnIGlzIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI3OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAibWFsbG9jIGZhaWxlZCAoJWxkIGJ5dGVzKSIKK21zZ2lkICIodG90YWwgJWpkIGJ5dGVzKVxuIgorbXNnc3RyICJuZXBhdnlrbyBpxaFza2lydGkgbWFsbG9jIGF0bWludGllcyAoJWxkIGJhaXRhaSkiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzozMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRpc2NhcmQgYCUuMjUwcyciCittc2dzdHIgIm5lcGF2eWtzdGEgYXRtZXN0aSBgJS4yNTBzJyIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjMwNQorIywgYy1mb3JtYXQKK21zZ2lkICJEZWxldGVkICVzLlxuIgorbXNnc3RyICJJxaF0cmludGFzICVzLlxuIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6NzAgZHBrZy1zcGxpdC9zcGxpdC5jOjc2IGRwa2ctc3BsaXQvc3BsaXQuYzo4MQorbXNnaWQgInBhY2thZ2UgZmllbGQgdmFsdWUgZXh0cmFjdGlvbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTMxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIHNvdXJjZSBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxMzMKK21zZ2lkICJ1bmFibGUgdG8gZnN0YXQgc291cmNlIGZpbGUiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjEzNQorIywgYy1mb3JtYXQKK21zZ2lkICJzb3VyY2UgZmlsZSBgJS4yNTBzJyBub3QgYSBwbGFpbiBmaWxlIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxNTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiU3BsaXR0aW5nIHBhY2thZ2UgJXMgaW50byAlZCBwYXJ0OiAiCittc2dpZF9wbHVyYWwgIlNwbGl0dGluZyBwYWNrYWdlICVzIGludG8gJWQgcGFydHM6ICIKK21zZ3N0clswXSAiIgorbXNnc3RyWzFdICIiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxOTMKK21zZ2lkICIiCisiSGVhZGVyIGlzIHRvbyBsb25nLCBtYWtpbmcgcGFydCB0b28gbG9uZy4gWW91ciBwYWNrYWdlIG5hbWUgb3IgdmVyc2lvblxuIgorIm51bWJlcnMgbXVzdCBiZSBleHRyYW9yZGluYXJpbHkgbG9uZywgb3Igc29tZXRoaW5nLiBHaXZpbmcgdXAuXG4iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjI0OQorbXNnaWQgIi0tc3BsaXQgbmVlZHMgYSBzb3VyY2UgZmlsZW5hbWUgYXJndW1lbnQiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjI1MgorbXNnaWQgIi0tc3BsaXQgdGFrZXMgYXQgbW9zdCBhIHNvdXJjZSBmaWxlbmFtZSBhbmQgZGVzdGluYXRpb24gcHJlZml4IgorbXNnc3RyICIiCisiLS1zcGxpdCBkYXVnaWF1c2lhaSByZWlraWEgbnVyb2R5dGkgacWhZWl0aWVzIGZhaWxvIHZhcmTEhSBpciB2aWV0b3MgIgorInRhbHBpbmltdWkga2VsaW8iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo4NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMC0yMDAyIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDA5LTIwMTAgUmFwaGFlbCBIZXJ0em9nLlxuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLS1pbnN0YWxsIDxsaW5rPiA8bmFtZT4gPHBhdGg+IDxwcmlvcml0eT5cbiIKKyIgICAgWy0tc2xhdmUgPGxpbms+IDxuYW1lPiA8cGF0aD5dIC4uLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGFkZCBhIGdyb3VwIG9mIGFsdGVybmF0aXZlcyB0byB0aGUgc3lzdGVtLlxuIgorIiAgLS1yZW1vdmUgPG5hbWU+IDxwYXRoPiAgIHJlbW92ZSA8cGF0aD4gZnJvbSB0aGUgPG5hbWU+IGdyb3VwIGFsdGVybmF0aXZlLlxuIgorIiAgLS1yZW1vdmUtYWxsIDxuYW1lPiAgICAgIHJlbW92ZSA8bmFtZT4gZ3JvdXAgZnJvbSB0aGUgYWx0ZXJuYXRpdmVzICIKKyJzeXN0ZW0uXG4iCisiICAtLWF1dG8gPG5hbWU+ICAgICAgICAgICAgc3dpdGNoIHRoZSBtYXN0ZXIgbGluayA8bmFtZT4gdG8gYXV0b21hdGljIG1vZGUuXG4iCisiICAtLWRpc3BsYXkgPG5hbWU+ICAgICAgICAgZGlzcGxheSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgPG5hbWU+IGdyb3VwLlxuIgorIiAgLS1xdWVyeSA8bmFtZT4gICAgICAgICAgIG1hY2hpbmUgcGFyc2VhYmxlIHZlcnNpb24gb2YgLS1kaXNwbGF5IDxuYW1lPi5cbiIKKyIgIC0tbGlzdCA8bmFtZT4gICAgICAgICAgICBkaXNwbGF5IGFsbCB0YXJnZXRzIG9mIHRoZSA8bmFtZT4gZ3JvdXAuXG4iCisiICAtLWdldC1zZWxlY3Rpb25zICAgICAgICAgbGlzdCBtYXN0ZXIgYWx0ZXJuYXRpdmUgbmFtZXMgYW5kIHRoZWlyIHN0YXR1cy5cbiIKKyIgIC0tc2V0LXNlbGVjdGlvbnMgICAgICAgICByZWFkIGFsdGVybmF0aXZlIHN0YXR1cyBmcm9tIHN0YW5kYXJkIGlucHV0LlxuIgorIiAgLS1jb25maWcgPG5hbWU+ICAgICAgICAgIHNob3cgYWx0ZXJuYXRpdmVzIGZvciB0aGUgPG5hbWU+IGdyb3VwIGFuZCBhc2sgIgorInRoZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzZXIgdG8gc2VsZWN0IHdoaWNoIG9uZSB0byB1c2UuXG4iCisiICAtLXNldCA8bmFtZT4gPHBhdGg+ICAgICAgc2V0IDxwYXRoPiBhcyBhbHRlcm5hdGl2ZSBmb3IgPG5hbWU+LlxuIgorIiAgLS1hbGwgICAgICAgICAgICAgICAgICAgIGNhbGwgLS1jb25maWcgb24gYWxsIGFsdGVybmF0aXZlcy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyI8bGluaz4gaXMgdGhlIHN5bWxpbmsgcG9pbnRpbmcgdG8gJXMvPG5hbWU+LlxuIgorIiAgKGUuZy4gL3Vzci9iaW4vcGFnZXIpXG4iCisiPG5hbWU+IGlzIHRoZSBtYXN0ZXIgbmFtZSBmb3IgdGhpcyBsaW5rIGdyb3VwLlxuIgorIiAgKGUuZy4gcGFnZXIpXG4iCisiPHBhdGg+IGlzIHRoZSBsb2NhdGlvbiBvZiBvbmUgb2YgdGhlIGFsdGVybmF0aXZlIHRhcmdldCBmaWxlcy5cbiIKKyIgIChlLmcuIC91c3IvYmluL2xlc3MpXG4iCisiPHByaW9yaXR5PiBpcyBhbiBpbnRlZ2VyOyBvcHRpb25zIHdpdGggaGlnaGVyIG51bWJlcnMgaGF2ZSBoaWdoZXIgcHJpb3JpdHkgIgorImluXG4iCisiICBhdXRvbWF0aWMgbW9kZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTMxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hbHRkaXIgPGRpcmVjdG9yeT4gICAgIGNoYW5nZSB0aGUgYWx0ZXJuYXRpdmVzIGRpcmVjdG9yeS5cbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICBjaGFuZ2UgdGhlIGFkbWluaXN0cmF0aXZlIGRpcmVjdG9yeS5cbiIKKyIgIC0tbG9nIDxmaWxlPiAgICAgICAgICAgICBjaGFuZ2UgdGhlIGxvZyBmaWxlLlxuIgorIiAgLS1mb3JjZSAgICAgICAgICAgICAgICAgIGFsbG93IHJlcGxhY2luZyBmaWxlcyB3aXRoIGFsdGVybmF0aXZlIGxpbmtzLlxuIgorIiAgLS1za2lwLWF1dG8gICAgICAgICAgICAgIHNraXAgcHJvbXB0IGZvciBhbHRlcm5hdGl2ZXMgY29ycmVjdGx5ICIKKyJjb25maWd1cmVkXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gYXV0b21hdGljIG1vZGUgKHJlbGV2YW50IGZvciAtLWNvbmZpZyBvbmx5KVxuIgorIiAgLS12ZXJib3NlICAgICAgICAgICAgICAgIHZlcmJvc2Ugb3BlcmF0aW9uLCBtb3JlIG91dHB1dC5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBxdWlldCBvcGVyYXRpb24sIG1pbmltYWwgb3V0cHV0LlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNjMKK21zZ2lkICJlcnJvciIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTkzCittc2dpZCAid2FybmluZyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MzU2CisjLCBjLWZvcm1hdAorbXNnaWQgInR3byBjb21tYW5kcyBzcGVjaWZpZWQ6IC0tJXMgYW5kIC0tJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjM4NworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHJlYWQgJXM6ICVzIgorbXNnaWQgImNhbm5vdCBhcHBlbmQgdG8gJyVzJyIKK21zZ3N0ciAibmVwYXZ5a28gbnVza2FpdHl0aSAlczogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo1NTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgJyVzJyIKK21zZ3N0ciAibmVwYXZ5a28gdcW+dmVydGkgJXM6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTExMQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgZmlsZSB3aGlsZSB0cnlpbmcgdG8gcmVhZCAlcyIKK21zZ3N0ciAibmV0aWvEl3RhICUuMjUwcyBmYWlsbyBwYWJhaWdhIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTExMworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAid2hpbGUgcmVhZGluZyAlczogJXMiCittc2dzdHIgIm5lcGF2eWtvIG51c2thaXR5dGkgJXM6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTExOQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAibGluZSBub3QgdGVybWluYXRlZCB3aGlsZSB0cnlpbmcgdG8gcmVhZCAlcyIKK21zZ3N0ciAibmV0aWvEl3RhICUuMjUwcyBmYWlsbyBwYWJhaWdhIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTEzNworIywgYy1mb3JtYXQKK21zZ2lkICIlcyBjb3JydXB0OiAlcyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE1MAorIywgYy1mb3JtYXQKK21zZ2lkICJuZXdsaW5lcyBwcm9oaWJpdGVkIGluIHVwZGF0ZS1hbHRlcm5hdGl2ZXMgZmlsZXMgKCVzKSIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE2MworbXNnaWQgInNsYXZlIG5hbWUiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNzEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImR1cGxpY2F0ZSBwYXRoICVzIgorbXNnaWQgImR1cGxpY2F0ZSBzbGF2ZSBuYW1lICVzIgorbXNnc3RyICJwYXNpa2FydG9qYW50aXMga2VsaWFzICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE3NAorbXNnaWQgInNsYXZlIGxpbmsiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAic2xhdmUgbGluayBzYW1lIGFzIG1haW4gbGluayAlcyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE4NSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQxMgorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgc2xhdmUgbGluayAlcyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIwNAorbXNnaWQgIm1hc3RlciBmaWxlIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjEzCisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBwYXRoICVzIgorbXNnc3RyICJwYXNpa2FydG9qYW50aXMga2VsaWFzICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIyNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYWx0ZXJuYXRpdmUgJXMgKHBhcnQgb2YgbGluayBncm91cCAlcykgZG9lc24ndCBleGlzdC4gUmVtb3ZpbmcgZnJvbSBsaXN0IG9mICIKKyJhbHRlcm5hdGl2ZXMuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjI5IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjQwCittc2dpZCAicHJpb3JpdHkiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMzIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyNDkKK21zZ2lkICJzbGF2ZSBmaWxlIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjQ0CisjLCBjLWZvcm1hdAorbXNnaWQgInByaW9yaXR5IG9mICVzOiAlcyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI5NworbXNnaWQgInN0YXR1cyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI5OQorbXNnaWQgImludmFsaWQgc3RhdHVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzA0Cittc2dpZCAibWFzdGVyIGxpbmsiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGlzY2FyZGluZyBvYnNvbGV0ZSBzbGF2ZSBsaW5rICVzICglcykuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTAyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTY5CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYzOAorbXNnaWQgImF1dG8gbW9kZSIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU3OAorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MzkKK21zZ2lkICJtYW51YWwgbW9kZSIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwNQorIywgYy1mb3JtYXQKK21zZ2lkICIgIGxpbmsgY3VycmVudGx5IHBvaW50cyB0byAlcyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwOAorbXNnaWQgIiAgbGluayBjdXJyZW50bHkgYWJzZW50IgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTEyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ3b3JkIGluIGBwcmlvcml0eScgZmllbGQiCittc2dpZCAiJXMgLSBwcmlvcml0eSAlZCIKK21zZ3N0ciAicGFuYXVkb3RhcyDFvm9kaXMgbGF1a2VseWplIGBwcmlvcml0eSciCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTE1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIgIHNsYXZlICVzOiAlcyIKK21zZ3N0ciAibmVwYXZ5a28gdcW+dmVydGkgJXM6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUyMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiQ3VycmVudCAnYmVzdCcgdmVyc2lvbiBpcyAnJXMnLiIKK21zZ3N0ciAiRGViaWFuICVzIHZlcnNpamEgJXMuXG4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTI0Cittc2dpZCAiTm8gdmVyc2lvbnMgYXZhaWxhYmxlLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU1MworIywgYy1mb3JtYXQKK21zZ2lkICJUaGVyZSBpcyAlZCBjaG9pY2UgZm9yIHRoZSBhbHRlcm5hdGl2ZSAlcyAocHJvdmlkaW5nICVzKS4iCittc2dpZF9wbHVyYWwgIlRoZXJlIGFyZSAlZCBjaG9pY2VzIGZvciB0aGUgYWx0ZXJuYXRpdmUgJXMgKHByb3ZpZGluZyAlcykuIgorbXNnc3RyWzBdICIiCittc2dzdHJbMV0gIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NjAKKyMsIGZ1enp5Cittc2dpZCAiU2VsZWN0aW9uIgorbXNnc3RyICJBcHJhxaF5bWFzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2MQorbXNnaWQgIlBhdGgiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NjEKK21zZ2lkICJQcmlvcml0eSIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2MQorbXNnaWQgIlN0YXR1cyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU4MgorIywgYy1mb3JtYXQKK21zZ2lkICJQcmVzcyBlbnRlciB0byBrZWVwIHRoZSBjdXJyZW50IGNob2ljZVsqXSwgb3IgdHlwZSBzZWxlY3Rpb24gbnVtYmVyOiAiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3MjEKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IHJlcGxhY2luZyAlcyB3aXRoIGEgbGluay4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3NjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2FuJ3QgaW5zdGFsbCB1bmtub3duIGNob2ljZSAlcyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTc4MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisic2tpcCBjcmVhdGlvbiBvZiAlcyBiZWNhdXNlIGFzc29jaWF0ZWQgZmlsZSAlcyAob2YgbGluayBncm91cCAlcykgZG9lc24ndCAiCisiZXhpc3QuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNzkwCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vdCByZW1vdmluZyAlcyBzaW5jZSBpdCdzIG5vdCBhIHN5bWxpbmsuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDQxIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDQ3CisjLCBjLWZvcm1hdAorbXNnaWQgIkNhbGwgJXMuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDUxCisjLCBjLWZvcm1hdAorbXNnaWQgIkFsdGVybmF0aXZlICVzIHVuY2hhbmdlZCBiZWNhdXNlIGNob2ljZSAlcyBpcyBub3QgYXZhaWxhYmxlLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA1NQorIywgYy1mb3JtYXQKK21zZ2lkICJTa2lwIHVua25vd24gYWx0ZXJuYXRpdmUgJXMuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDc3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJsaW5lIHRvbyBsb25nIG9yIG5vdCB0ZXJtaW5hdGVkIHdoaWxlIHRyeWluZyB0byByZWFkICVzIgorbXNnc3RyICJuZXRpa8SXdGEgJS4yNTBzIGZhaWxvIHBhYmFpZ2EiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDkwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTAzCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjExMworIywgYy1mb3JtYXQKK21zZ2lkICJTa2lwIGludmFsaWQgbGluZTogJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxMzIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInJlbmFtaW5nICVzIGxpbmsgZnJvbSAlcyB0byAlcy4iCittc2dzdHIgIknFoXBha3VvamFtYXMgYXJjaHl2YXMgJXMgKGnFoSAlcykgLi4uXG4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTczCisjLCBjLWZvcm1hdAorbXNnaWQgInJlbmFtaW5nICVzIHNsYXZlIGxpbmsgZnJvbSAlcyB0byAlcy4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgbmFtZSAoJXMpIG11c3Qgbm90IGNvbnRhaW4gJy8nIGFuZCBzcGFjZXMuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTkzCisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIGxpbmsgaXMgbm90IGFic29sdXRlIGFzIGl0IHNob3VsZCBiZTogJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxOTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgcGF0aCBpcyBub3QgYWJzb2x1dGUgYXMgaXQgc2hvdWxkIGJlOiAlcyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjIyNAorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBtYXN0ZXI6IGl0IGlzIGEgc2xhdmUgb2YgJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyMzIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgbGluayAlcyBpcyBhbHJlYWR5IG1hbmFnZWQgYnkgJXMuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjQxCisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIHBhdGggJXMgZG9lc24ndCBleGlzdC4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgc2xhdmUgb2YgJXM6IGl0IGlzIGEgbWFzdGVyIGFsdGVybmF0aXZlLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI1OAorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBzbGF2ZSBvZiAlczogaXQgaXMgYSBzbGF2ZSBvZiAlcyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI3OAorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBsaW5rICVzIGlzIGFscmVhZHkgbWFuYWdlZCBieSAlcyAoc2xhdmUgb2YgJXMpLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjMyNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGFyZ3VtZW50IGAlcyciCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNDMKK21zZ2lkICItLWluc3RhbGwgbmVlZHMgPGxpbms+IDxuYW1lPiA8cGF0aD4gPHByaW9yaXR5PiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM0NiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM5NworbXNnaWQgIjxsaW5rPiBhbmQgPHBhdGg+IGNhbid0IGJlIHRoZSBzYW1lIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzQ5Cittc2dpZCAicHJpb3JpdHkgbXVzdCBiZSBhbiBpbnRlZ2VyIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzYyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgPG5hbWU+IDxwYXRoPiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM3NgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIDxuYW1lPiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM4OAorbXNnaWQgIi0tc2xhdmUgb25seSBhbGxvd2VkIHdpdGggLS1pbnN0YWxsIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzkwCittc2dpZCAiLS1zbGF2ZSBuZWVkcyA8bGluaz4gPG5hbWU+IDxwYXRoPiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM5OQorIywgYy1mb3JtYXQKK21zZ2lkICJuYW1lICVzIGlzIGJvdGggcHJpbWFyeSBhbmQgc2xhdmUiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAibGluayAlcyBpcyBib3RoIHByaW1hcnkgYW5kIHNsYXZlIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDIyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGEgPGZpbGU+IGFyZ3VtZW50IgorbXNnc3RyICItLSVzIHJlaWtpYSAuZGViIGZhaWxvIHBhcmFtZXRybyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gYCVzJyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQ1MworbXNnaWQgIiIKKyJuZWVkIC0tZGlzcGxheSwgLS1xdWVyeSwgLS1saXN0LCAtLWdldC1zZWxlY3Rpb25zLCAtLWNvbmZpZywgLS1zZXQsIC0tc2V0LSIKKyJzZWxlY3Rpb25zLCAtLWluc3RhbGwsIC0tcmVtb3ZlLCAtLWFsbCwgLS1yZW1vdmUtYWxsIG9yIC0tYXV0byIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQ5MAorIywgZnV6enkKKyN8IG1zZ2lkICJyZWFkIGVycm9yIG9uIHN0YW5kYXJkIGlucHV0IgorbXNnaWQgIjxzdGFuZGFyZCBpbnB1dD4iCittc2dzdHIgInNrYWl0eW1vIGtsYWlkYSBzdGFuZGFydGluxJdqZSDEr3Zlc3R5amUiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTAwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTAzCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIGFsdGVybmF0aXZlcyBmb3IgJXMuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTMwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzLyVzIGlzIGRhbmdsaW5nLCBpdCB3aWxsIGJlIHVwZGF0ZWQgd2l0aCBiZXN0IGNob2ljZS4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzLyVzIGhhcyBiZWVuIGNoYW5nZWQgKG1hbnVhbGx5IG9yIGJ5IGEgc2NyaXB0KS4gU3dpdGNoaW5nIHRvIG1hbnVhbCAiCisidXBkYXRlcyBvbmx5LiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU0MgorIywgYy1mb3JtYXQKK21zZ2lkICJzZXR0aW5nIHVwIGF1dG9tYXRpYyBzZWxlY3Rpb24gb2YgJXMuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTUxCisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlICVzIGZvciAlcyBub3QgcmVnaXN0ZXJlZCwgbm90IHNldHRpbmcuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTU3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTYzCisjLCBjLWZvcm1hdAorbXNnaWQgIlRoZXJlIGlzIG5vIHByb2dyYW0gd2hpY2ggcHJvdmlkZXMgJXMuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTY1IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTc1Cittc2dpZCAiTm90aGluZyB0byBjb25maWd1cmUuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTczCisjLCBjLWZvcm1hdAorbXNnaWQgIlRoZXJlIGlzIG9ubHkgb25lIGFsdGVybmF0aXZlIGluIGxpbmsgZ3JvdXAgJXM6ICVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTg0CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlICVzIGZvciAlcyBub3QgcmVnaXN0ZXJlZCwgbm90IHJlbW92aW5nLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU5MgorIywgYy1mb3JtYXQKK21zZ2lkICJyZW1vdmluZyBtYW51YWxseSBzZWxlY3RlZCBhbHRlcm5hdGl2ZSAtIHN3aXRjaGluZyAlcyB0byBhdXRvIG1vZGUiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiYXV0b21hdGljIHVwZGF0ZXMgb2YgJXMvJXMgYXJlIGRpc2FibGVkLCBsZWF2aW5nIGl0IGFsb25lLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYxOQorIywgYy1mb3JtYXQKK21zZ2lkICJ0byByZXR1cm4gdG8gYXV0b21hdGljIHVwZGF0ZXMgdXNlICclcyAtLWF1dG8gJXMnLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYzNgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidXNpbmcgJXMgdG8gcHJvdmlkZSAlcyAoJXMpIGluICVzLiIKK21zZ3N0ciAiICAlLjI1MHMgdGVpa2lhICUuMjUwcywgYmV0IHlyYSAlcy5cbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImZvcmNpbmcgcmVpbnN0YWxsYXRpb24gb2YgYWx0ZXJuYXRpdmUgJXMgYmVjYXVzZSBsaW5rIGdyb3VwICVzIGlzIGJyb2tlbi4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY3VycmVudCBhbHRlcm5hdGl2ZSAlcyBpcyB1bmtub3duLCBzd2l0Y2hpbmcgdG8gJXMgZm9yIGxpbmsgZ3JvdXAgJXMuIgorbXNnc3RyICIiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgInVuYWJsZSB0byByZWFkICVzOiAlcyIKKyN+IG1zZ2lkICJjYW5ub3Qgc3RhdCAlczogJXMiCisjfiBtc2dzdHIgIm5lcGF2eWtvIG51c2thaXR5dGkgJXM6ICVzIgorCisjLCBmdXp6eQorI358IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyAlcyIKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlY3V0ZSAlczogJXMiCisjfiBtc2dzdHIgIm5lcGF2eWtvIMSvdnlrZHl0aSAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsICVzIGFzICVzOiAlcyIKKyN+IG1zZ3N0ciAibmXEr21hbm9tYSDEr2RpZWd0aSAlcyBrYWlwICVzOiAlcyIKKworIywgZnV6enkKKyN+IG1zZ2lkICJ3aGlsZSB3cml0aW5nICVzOiAlcyIKKyN+IG1zZ3N0ciAibmVwYXZ5a28gcmHFoXl0aSAlczogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcmVhZCAlczogJXMiCisjfiBtc2dzdHIgIm5lcGF2eWtvIG51c2thaXR5dGkgJXM6ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGNsb3NlICVzOiAlcyIKKyN+IG1zZ3N0ciAibmVwYXZ5a28gdcW+dmVydGkgJXM6ICVzIgorCisjLCBmdXp6eQorI358IG1zZ2lkICJ1bmFibGUgdG8gd3JpdGUgJXM6ICVzIgorI34gbXNnaWQgImNhbm5vdCB3cml0ZSAlczogJXMiCisjfiBtc2dzdHIgIm5lcGF2eWtvIHJhxaF5dGkgJXM6ICVzIgorCisjLCBmdXp6eQorI34gbXNnaWQgInVuYWJsZSB0byByZW5hbWUgZmlsZSAnJXMnIHRvICclcyciCisjfiBtc2dzdHIgIm5lcGF2eWtvIHXFvnZlcnRpICVzOiAlcyIKKworI34gbXNnaWQgInBhcnQgZmlsZSBgJS4yNTBzJyBoYXMgdHJhaWxpbmcgZ2FyYmFnZSIKKyN+IG1zZ3N0ciAiZGFsaW5pbyBmYWlsbyBgJS4yNTBzJyBwYWJhaWdvamUgeXJhIG5lcmVpa2FsaW5nxbMgZHVvbWVuxbMiCisKKyN+IG1zZ2lkICJzaXplICU3ZCBvY2N1cnMgJTVkIHRpbWVzXG4iCisjfiBtc2dzdHIgImR5ZGlzICU3ZCByYW5kYW1hcyAlNWQga2FydHVzXG4iCisKKyN+IG1zZ2lkICJvdXQgb2YgbWVtb3J5IHB1c2hpbmcgZXJyb3IgaGFuZGxlcjogIgorI34gbXNnc3RyICJhdG1pbnRpcyBwZXJwaWxkeXRhLCBrdmllxI1pYW1hIGtsYWlkxbMgdHZhcmt5a2zElzogIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHVubG9jayBkcGtnIHN0YXR1cyBkYXRhYmFzZSIKKyN+IG1zZ3N0ciAibmXEr21hbm9tYSBhdHJha2ludGkgZHBrZyBixatzZW5vcyBkdW9tZW7FsyBiYXrEl3MiCisKKyN+IG1zZ2lkICJjb3B5IGluZm8gZmlsZSBgJS4yNTVzJyIKKyN+IG1zZ3N0ciAia29waWp1b3RpIGluZm9ybWFjaWpvcyBmYWlsxIUg4oCeJS4yNTVz4oCcIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHdyaXRlIHBhcnNpbmcgd2FybmluZyIKKyN+IG1zZ3N0ciAibmVwYXZ5a28gxK9yYcWheXRpIG5hZ3JpbsSXamltbyBwZXJzcMSXamltbyIKKworI34gbXNnaWQgImZhaWxlZCB0byBydW4gJXMgKCUuMjUwcykiCisjfiBtc2dzdHIgIm5lcGF2eWtvIHBhbGVpc3RpICVzICglLjI1MHMpIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgc2hlbGwgKCUuMjUwcykiCisjfiBtc2dzdHIgIm5lcGF2eWtvIHBhbGVpc3RpIGFwdmFsa2FsbyAoJS4yNTBzKSIKKworI34gbXNnaWQgInVuYWJsZSB0byBjaGVjayBmb3IgZXhpc3RlbmNlIG9mIGAlLjI1MHMnIgorI34gbXNnc3RyICJuZXBhdnlrbyBwYXRpa3JpbnRpIGFyIGVnemlzdHVvamEgYCUuMjUwcyciCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBybSBmb3IgY2xlYW51cCIKKyN+IG1zZ3N0ciAibmVwYXZ5a28gxK92eWtkeXRpIHJtIGnFoXZhbHltdWkiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiIgorI34gIiVzIGRlYnVnZ2luZyBvcHRpb24sIC0tZGVidWc9PG9jdGFsPiBvciAtRDxvY3RhbD46XG4iCisjfiAiXG4iCisjfiAiIG51bWJlciAgcmVmLiBpbiBzb3VyY2UgICBkZXNjcmlwdGlvblxuIgorI34gIiAgICAgIDEgICBnZW5lcmFsICAgICAgICAgICBHZW5lcmFsbHkgaGVscGZ1bCBwcm9ncmVzcyBpbmZvcm1hdGlvblxuIgorI34gIiAgICAgIDIgICBzY3JpcHRzICAgICAgICAgICBJbnZvY2F0aW9uIGFuZCBzdGF0dXMgb2YgbWFpbnRhaW5lciBzY3JpcHRzXG4iCisjfiAiICAgICAxMCAgIGVhY2hmaWxlICAgICAgICAgIE91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZFxuIgorI34gIiAgICAxMDAgICBlYWNoZmlsZWRldGFpbCAgICBMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZFxuIgorI34gIiAgICAgMjAgICBjb25mZiAgICAgICAgICAgICBPdXRwdXQgZm9yIGVhY2ggY29uZmlndXJhdGlvbiBmaWxlXG4iCisjfiAiICAgIDIwMCAgIGNvbmZmZGV0YWlsICAgICAgIExvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZVxuIgorI34gIiAgICAgNDAgICBkZXBjb24gICAgICAgICAgICBEZXBlbmRlbmNpZXMgYW5kIGNvbmZsaWN0c1xuIgorI34gIiAgICA0MDAgICBkZXBjb25kZXRhaWwgICAgICBMb3RzIG9mIGRlcGVuZGVuY2llcy9jb25mbGljdHMgb3V0cHV0XG4iCisjfiAiICAxMDAwMCAgIHRyaWdnZXJzICAgICAgICAgIFRyaWdnZXIgYWN0aXZhdGlvbiBhbmQgcHJvY2Vzc2luZ1xuIgorI34gIiAgMjAwMDAgICB0cmlnZ2Vyc2RldGFpbCAgICBMb3RzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnNcbiIKKyN+ICIgIDQwMDAwICAgdHJpZ2dlcnNzdHVwaWQgICAgU2lsbHkgYW1vdW50cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzXG4iCisjfiAiICAgMTAwMCAgIHZlcnl2ZXJib3NlICAgICAgIExvdHMgb2YgZHJpdmVsIGFib3V0IGVnIHRoZSBkcGtnL2luZm8gIgorI34gImRpcmVjdG9yeVxuIgorI34gIiAgIDIwMDAgICBzdHVwaWRseXZlcmJvc2UgICBJbnNhbmUgYW1vdW50cyBvZiBkcml2ZWxcbiIKKyN+ICJcbiIKKyN+ICJEZWJ1Z2dpbmcgb3B0aW9ucyBhcmUgYmUgbWl4ZWQgdXNpbmcgYml0d2lzZS1vci5cbiIKKyN+ICJOb3RlIHRoYXQgdGhlIG1lYW5pbmdzIGFuZCB2YWx1ZXMgYXJlIHN1YmplY3QgdG8gY2hhbmdlLlxuIgorI34gbXNnc3RyICIiCisjfiAiJXMgZGVyaW5pbW8gcGFyYW1ldHJhcywgLS1kZWJ1Zz08b2N0YWw+IG9yIC1EPG9jdGFsPjpcbiIKKyN+ICJcbiIKKyN+ICIgU2thacSNaXVzIGluZm9ybWFjaWpvcyBhcHJhxaF1aVxuIgorI34gIiAgICAgIDEgICBnZW5lcmFsICAgICAgICAgICBQYWdyaW5kaW7ElyBkZXJpbmltbyBpbmZvcm1hY2lqYVxuIgorI34gIiAgICAgIDIgICBzY3JpcHRzICAgICAgICAgICBJbnZvY2F0aW9uIGFuZCBzdGF0dXMgb2YgbWFpbnRhaW5lciBzY3JpcHRzXG4iCisjfiAiICAgICAxMCAgIGVhY2hmaWxlICAgICAgICAgIEnFoXZlc3RpIGtpZWt2aWVubyBhcGRvcm9qYW1vIGZhaWxvICIKKyN+ICJpbmZvcm1hY2lqxIVcbiIKKyN+ICIgICAgMTAwICAgZWFjaGZpbGVkZXRhaWwgICAgScWhdmVzdGkgREFVRyBraWVrdmllbm8gYXBkb3JvamFtbyBmYWlsbyAiCisjfiAiaW5mb3JtYWNpam9zXG4iCisjfiAiICAgICAyMCAgIGNvbmZmICAgICAgICAgICAgIEnFoXZlc3RpIGtpZWt2aWVubyBrb25maWfFq3JhY2lqb3MgZmFpbG8gIgorI34gImluZm9ybWFjaWrEhVxuIgorI34gIiAgICAyMDAgICBjb25mZmRldGFpbCAgICAgICBJxaF2ZXN0aSBEQVVHIGtpZWt2aWVubyBhcGRvcm9qYW1vICIKKyN+ICJrb25maWfFq3JhY2lqb3MgZmFpbG8gaW5mb3JtYWNpam9zXG4iCisjfiAiICAgICA0MCAgIGRlcGNvbiAgICAgICAgICAgIFByaWtsYXVzb215YsSXcyBpciBrb25mbGlrdGFpXG4iCisjfiAiICAgIDQwMCAgIGRlcGNvbmRldGFpbCAgICAgIERBVUcgcHJpa2xhdXNvbXliacWzIGlyIGtvbmZsaWt0xbMgacWhdmVzdGllc1xuIgorI34gIiAgIDEwMDAgICB2ZXJ5dmVyYm9zZSAgICAgICBMb3RzIG9mIGRyaXZlbCBhYm91dCBlZyB0aGUgZHBrZy9pbmZvICIKKyN+ICJkaXJlY3RvcnlcbiIKKyN+ICIgICAyMDAwICAgc3R1cGlkbHl2ZXJib3NlICAgSW5zYW5lIGFtb3VudHMgb2YgZHJpdmVsXG4iCisjfiAiXG4iCisjfiAiRGVyaW5pbW8gcGFzaXJpbmtpbWFpIGdhbGkgYsWrdGkgYXBqdW5ndGkgbmF1ZG9qYW50IGxvZ2luxJkgXCJhcmJhXCIgIgorI34gIm9wZXJhY2lqxIUuXG4iCisjfiAiUHJpZXJhxaFhcyBpbmZvcm1hY2lqb3MgYXByYcWhxbMgc2thaXRtZW55cyBnYWxpIGtlaXN0aXMuXG4iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlY2wgZGVic2lnLXZlcmlmeSIKKyN+IG1zZ3N0ciAibmVwYXZ5a28gxK92eWtkeXRpIGRlYnNpZy12ZXJpZnkiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBkcGtnLWRlYiB0byBleHRyYWN0IGNvbnRyb2wgaW5mb3JtYXRpb24iCisjfiBtc2dzdHIgIm5lcGF2eWtvIMSvdnlrZHl0aSBkcGtnLWRlYiB2YWxkeW1vIGluZm9ybWFjaWphaSBnYXV0aSIKKworI34gbXNnaWQgInVuYWJsZSB0byBleGVjIGRwa2ctZGViIHRvIGdldCBmaWxlc3lzdGVtIGFyY2hpdmUiCisjfiBtc2dzdHIgIm5lcGF2eWtvIMSvdnlrZHl0aSBkcGtnLWRlYiBpciBnYXV0aSBmYWlsxbMgc2lzdGVtb3MgYXJjaHl2byIKKworI34gbXNnaWQgInVuYWJsZSB0byBkZWxldGUgZGlzYXBwZWFyaW5nIGNvbnRyb2wgaW5mbyBmaWxlIGAlLjI1MHMnIgorI34gbXNnc3RyICJuZXBhdnlrbyBwYcWhYWxpbnRpIGRpbmd1c2lvIGluZm9ybWFjaWpvcyB2YWxkeW1vIGZhaWxvIOKAniUuMjUwc+KAnCIKKworI34gbXNnaWQgImRwa2c6ICVzIG5vdCBmb3VuZC5cbiIKKyN+IG1zZ3N0ciAiZHBrZzogJXMgbmVyYXN0YXMuXG4iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gLi4uL0RFQklBTiIKKyN+IG1zZ3N0ciAibmVwYXZ5a28gYXR2ZXJ0aSBhcGxhbmtvIC4uLi9ERUJJQU4iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyB0YXIgLWNmIgorI34gbXNnc3RyICJuZXBhdnlrbyDEr3Z5a2R5dGkgdGFyIC1jZiIKKworI34gbXNnaWQgImZhaWxlZCB0byBtYWtlIHRtcGZpbGUgKGNvbnRyb2wpIgorI34gbXNnc3RyICJuZXBhdnlrbyBzdWt1cnRpIGxhaWtpbm8gZmFpbG8gKHZhbGR5bW8pIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHVubGluayB0bXBmaWxlIChjb250cm9sKSwgJXMiCisjfiBtc2dzdHIgIm5lcGF2eWtvIGF0c2lldGkgbGFpa2lubyBmYWlsbyAodmFsZHltbyksICVzIgorCisjfiBtc2dpZCAiY29udHJvbCIKKyN+IG1zZ3N0ciAidmFsZHltYXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBmaW5kIgorI34gbXNnc3RyICJuZXBhdnlrbyDEr3Z5a2R5dGkgZmluZCIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIHNoIC1jIG12IGZvby8qICZjIgorI34gbXNnc3RyICJuZXBhdnlrbyDEr3Z5a2R5dGkgc2ggLWMgbXYgZm9vLyogJmMiCisKKyN+IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBuZWdhdGl2ZSBtZW1iZXIgbGVuZ3RoICV6aSIKKyN+IG1zZ3N0ciAiZmFpbGFzIOKAniUuMjUwc+KAnCBzdWdhZGludGFzIC0gbmFyacWzIHNrYWnEjWl1cyAlemkgbmVpZ2lhbWFzIgorCisjfiBtc2dpZCAiZmFpbGVkIGdldHRpbmcgdGhlIGN1cnJlbnQgZmlsZSBwb3NpdGlvbiIKKyN+IG1zZ3N0ciAibmVwYXZ5a28gbnVza2FpdHl0aSBlaW5hbW9zIGZhaWxvIHBvemljaWpvcyIKKworI34gbXNnaWQgImZhaWxlZCBzZXR0aW5nIHRoZSBjdXJyZW50IGZpbGUgcG9zaXRpb24iCisjfiBtc2dzdHIgIm5lcGF2eWtvIG51c3RhdHl0aSBlaW5hbW9zIGZhaWxvIHBvemljaWpvcyIKKworI34gbXNnaWQgInZlcnNpb24gbnVtYmVyIgorI34gbXNnc3RyICJ2ZXJzaWpvcyBudW1lcmlzIgorCisjfiBtc2dpZCAiaGVhZGVyIGluZm8gbWVtYmVyIgorI34gbXNnc3RyICJhbnRyYcWhdMSXcyBpbmZvcm1hY2lqb3MgZGFsaXMiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgInNraXBwZWQgbWVtYmVyIGRhdGEgZnJvbSAlcyIKKyN+IG1zZ2lkICJza2lwcGVkIGNvbnRyb2wgYXJlYSBmcm9tICVzIgorI34gbXNnc3RyICJwcmFsZWlzdGkgbmFyacWzIGR1b21lbnlzIGnFoSAlcyIKKworIywgZnV6enkKKyN+IG1zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHRlbXBvcmFyeSBkaXJlY3RvcnkiCisjfiBtc2dzdHIgIm5lcGF2eWtvIHN1a3VydGkgbGFpa2lubyBhcGxhbmtvIHZhcmRvIgorCisjLCBmdXp6eQorI358IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBkcGtnLWRlYiB0byBleHRyYWN0IGNvbnRyb2wgaW5mb3JtYXRpb24iCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgZHBrZy1kZWIgdG8gZXh0cmFjdCBmaWVsZCB2YWx1ZSIKKyN+IG1zZ3N0ciAibmVwYXZ5a28gxK92eWtkeXRpIGRwa2ctZGViIHZhbGR5bW8gaW5mb3JtYWNpamFpIGdhdXRpIgorCisjLCBmdXp6eQorI358IG1zZ2lkICJ1bmFibGUgdG8gY3JlYXRlICVzOiAlcyIKKyN+IG1zZ2lkICJ1bmFibGUgdG8gc3RhdCAlczogJXMiCisjfiBtc2dzdHIgIm5lcGF2eWtvIHN1a3VydGkgJXM6ICVzIgorCisjfiBtc2dpZCAiY2F0IChkYXRhKSIKKyN+IG1zZ3N0ciAiY2F0IChkdW9tZW55cykiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiZmFpbGVkIHRvIG9wZW4gcGlwZSBkZXNjcmlwdG9yIGAxJyBpbiBwYXN0ZSIKKyN+IG1zZ3N0ciAixK9kxJd0YW1lIG9iamVrdGUgbmVwYXZ5a28gYXR2ZXJ0aSBzcmF1dG8gYXByYcWheW1vIGAxJyIKKworI34gbXNnaWQgImZhaWxlZCB0byB3cml0ZSB0byBnemlwIC1kYyIKKyN+IG1zZ3N0ciAibmVwYXZ5a28gxK9yYcWheXRpIMSvIGd6aXAgLWRjIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGNsb3NlIGd6aXAgLWRjIgorI34gbXNnc3RyICJuZXBhdnlrbyB1xb5kYXJ5dGkgZ3ppcCAtZGMiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiZmFpbGVkIHRvIHN5c2NhbGwgbHNlZWsgdG8gZmlsZXMgYXJjaGl2ZSBwb3J0aW9uIgorI34gbXNnc3RyICJuZXBhdnlrbyDEr3Z5a2R5dGkgc3lzY2FsbCBsc2VlayBkYWxpYWkgZmFpbMWzIGFyY2h5dm8iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gZXhlYyBta3NwbGl0IgorI34gbXNnc3RyICJuZXBhdnlrbyDEr3Z5a2R5dGkgbWtzcGxpdCIKKworIywgZnV6enkKKyN+IG1zZ2lkICJEZWJpYW4gcmV2aXNpb24iCisjfiBtc2dzdHIgIkRlYmlhbiAlcyB2ZXJzaWphICVzLlxuIgorCisjfiBtc2dpZCAiJWQgZXJyb3JzIGluIGNvbnRyb2wgZmlsZSIKKyN+IG1zZ3N0ciAiJWQga2xhaWRvcyB2YWxkeW1vIGZhaWxlIgorCisjfiBtc2dpZCAiZmFpbGVkIGluIGJ1ZmZlcl93cml0ZShmZCkgKCVpLCByZXQ9JWxpKTogJXMiCisjfiBtc2dzdHIgImtsYWlkYSB2eWtkYW50IGJ1ZmZlcl93cml0ZShmZCkgKCVpLCByZXQ9JWxpKTogJXMiCisKKyN+IG1zZ2lkICJlb2YgaW4gYnVmZmVyX3dyaXRlKHN0cmVhbSk6ICVzIgorI34gbXNnc3RyICJuZXRpa8SXdGEgZmFpbG8gcGFiYWlnb3Mgxb55bcSXIHZ5a2RhbnQgYnVmZmVyX3dyaXRlKHN0cmVhbSk6ICVzIgorCisjfiBtc2dpZCAiZXJyb3IgaW4gYnVmZmVyX3dyaXRlKHN0cmVhbSk6ICVzIgorI34gbXNnc3RyICJidWZmZXJfd3JpdGUoc3RyZWFtKSB2eWtkeW1vIGtsYWlkYTogJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgaW4gYnVmZmVyX3JlYWQoZmQpOiAlcyIKKyN+IG1zZ3N0ciAia2xhaWRhIHZ5a2RhbnQgYnVmZmVyX3JlYWQoZmQpOiAlcyIKKworI34gbXNnaWQgImVycm9yIGluIGJ1ZmZlcl9yZWFkKHN0cmVhbSk6ICVzIgorI34gbXNnc3RyICJrbGFpZGEgdnlrZGFudCBidWZmZXJfcmVhZChzdHJlYW0pOiAlcyIKKworIywgZnV6enkKKyN+IG1zZ2lkICIlcyByZXR1cm5lZCBlcnJvciBleGl0IHN0YXR1cyAlZCIKKyN+IG1zZ3N0ciAidmlkaW5pcyBwcm9jZXNhcyAlcyBudXRyxatrbyBncmHFvmluZGFtYXMgcmVpa8WhbcSZICVkIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiVzIGtpbGxlZCBieSBzaWduYWwgKCVzKSVzIgorI34gbXNnc3RyICJzdWItcHJvY2VzYXMgJXMgbnVzbG9waW50YXMgc2lnbmFsbyAoJXMpJXMiCisKKyN+IG1zZ2lkICIlczogZmFpbGVkIHRvIGV4ZWMgJyVzICVzJyIKKyN+IG1zZ3N0ciAiJXM6IG5lcGF2eWtvIHBhbGVpc3RpICclcyAlcyciCisKKyN+IG1zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCBlcnJvcjogcmVhZDogYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IHZpZGluxJcgZ3ppcCBrbGFpZGE6IHNrYWl0YW50OiBgJXMnIgorCisjfiBtc2dpZCAiJXM6IGludGVybmFsIGd6aXAgZXJyb3I6IHdyaXRlOiBgJXMnIgorI34gbXNnc3RyICIlczogdmlkaW7ElyBnemlwIGtsYWlkYTogcmHFoWFudDogYCVzJyIKKworI34gbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIGVycm9yOiByZWFkKCVpKSAhPSB3cml0ZSglaSkiCisjfiBtc2dzdHIgIiVzOiB2aWRpbsSXIGd6aXAga2xhaWRhOiBza2FpdHl0aSglaSkgIT0gcmHFoXl0aSglaSkiCisKKyN+IG1zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgZXJyb3I6IHJlYWQ6IGAlcyciCisjfiBtc2dzdHIgIiVzOiB2aWRpbsSXIGJ6aXAyIGtsYWlkYTogc2thaXRhbnQ6IGAlcyciCisKKyN+IG1zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgZXJyb3I6IHdyaXRlOiBgJXMnIgorI34gbXNnc3RyICIlczogdmlkaW7ElyBiemlwMiBrbGFpZGE6IHJhxaFhbnQ6IGAlcyciCisKKyN+IG1zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgZXJyb3I6IHJlYWQoJWkpICE9IHdyaXRlKCVpKSIKKyN+IG1zZ3N0ciAiJXM6IHZpZGluxJcgYnppcDIga2xhaWRhOiBza2FpdHl0aSglaSkgIT0gcmHFoXl0aSglaSkiCisKKyN+IG1zZ2lkICJEb24ndCBmb3JnZXQgdG8gZm9yZWdyb3VuZCAoYGZnJykgdGhpcyBwcm9jZXNzIHdoZW4geW91J3JlIGRvbmUgIVxuIgorI34gbXNnc3RyICJuZXBhbWlyxaFraXRlIHBha2VsdGkgKGBmZycpIMWhaXRvIHByb2Nlc28sIGthaSBiYWlnc2l0ZSAhXG4iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gZ2V0IHVuaXF1ZSBmaWxlbmFtZSBmb3IgY29udHJvbCBpbmZvIgorI34gbXNnc3RyICJuZXBhdnlrbyBnYXV0aSB1bmlrYWxhdXMgZmFpbG8gdmFyZG8gdmFsZHltbyBpbmZvcm1hY2lqYWkiCisKKyN+IG1zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIG1hbmFnZW1lbnQgcHJvZ3JhbSBxdWVyeSB0b29sXG4iCisjfiBtc2dzdHIgIkRlYmlhbiDigJ4lc+KAnCBwYWtldMWzIHR2YXJreW1vIHByb2dyYW1vcyB1xb5rbGF1c8WzIMSvcmFua2lzXG4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiIgorI34gIlVzZSAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgcXVlcnlpbmcgcGFja2FnZXM7XG4iCisjfiAiVXNlIC0tbGljZW5zZSBmb3IgY29weXJpZ2h0IGxpY2Vuc2UgYW5kIGxhY2sgb2Ygd2FycmFudHkgKEdOVSBHUEwpLiIKKyN+IG1zZ3N0ciAiIgorI34gIk5hdWRvdGkgLS1oZWxwIHBhZ2FsYmFpIGFwaWUgdcW+a2xhdXNpYW11cyBwYWtldHVzO1xuIgorI34gIk5hdWRvdGkgLS1saWNlbnNlIGluZm9ybWFjaWphaSBhcGllIGxpY2VuemlqxIUgKEdOVSBHUEwpLlxuIgorI34gIlxuIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGZvcmsgZm9yIGNsZWFudXAiCisjfiBtc2dzdHIgIm5lcGF2eWtvIGnFoXNrYWlkeXRpIGnFoXZhbHltbyIKKworI34gbXNnaWQgInJtIGNsZWFudXAgZmFpbGVkLCBjb2RlICVkXG4iCisjfiBtc2dzdHIgInJtIGnFoXZhbHltYXMgbmVwYXZ5a28sIGtsYWlkb3Mga29kYXMgJWRcbiIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIHJtIC1yZiIKKyN+IG1zZ3N0ciAibmVwYXZ5a28gxK92eWtkeXRpIHJtIC1yZiIKKworI34gbXNnaWQgImZhaWxlZCB0byByZWFkIGBjb250cm9sJyAoaW4gYCUuMjU1cycpIgorI34gbXNnc3RyICJuZXBhdnlrbyBudXNrYWl0eXRpIOKAnmNvbnRyb2zigJwgZmFpbG8gKGFyY2h5dmUg4oCeJS4yNTVz4oCcKSIKKworI34gbXNnaWQgInVua25vd24gZGF0YSB0eXBlIGAlaScgaW4gYnVmZmVyX3dyaXRlXG4iCisjfiBtc2dzdHIgIm5lxb5pbm9tYXMgYCVpJyBkdW9tZW7FsyB0aXBhcyB2eWtkYW50IGJ1ZmZlcl93cml0ZVxuIgorCisjfiBtc2dpZCAidW5rbm93biBkYXRhIHR5cGUgYCVpJyBpbiBidWZmZXJfcmVhZFxuIgorI34gbXNnc3RyICJuZcW+aW5vbWFzIGAlaScgZHVvbWVuxbMgdGlwYXMgdnlrZGFudCBidWZmZXJfcmVhZFxuIgorCisjfiBtc2dpZCAid2FpdCBmb3Igc2hlbGwgZmFpbGVkIgorI34gbXNnc3RyICJrbGFpZGEgYmVsYXVraWFudCBhcHZhbGthbG8iCisKKyN+IG1zZ2lkICJ1bmxpbmsiCisjfiBtc2dzdHIgImF0c2lldGkiCisKKyN+IG1zZ2lkICJjaG1vZCIKKyN+IG1zZ3N0ciAicGFrZWlzdGkgdGVpc2VzIgorCisjfiBtc2dpZCAiZGVsZXRlIgorI34gbXNnc3RyICJwYcWhYWxpbnRpIgorCisjLCBmdXp6eQorI34gbXNnaWQgImZhaWxlZCB0byAlcyAnJS4yNTVzJyIKKyN+IG1zZ3N0ciAibmVwYXZ5a28gJXMgYCUlLjI1NXMnIgorCisjfiBtc2dpZCAid2FpdCBmb3IgZHBrZy1zcGxpdCBmYWlsZWQiCisjfiBtc2dzdHIgImtsYWlkYSBiZWxhdWtpYW50IGRwa2ctc3BsaXQiCisKKyN+IG1zZ2lkICJmYWlsZWQgd3JpdGUgZHVyaW5nIGhhc2hyZXBvcnQiCisjfiBtc2dzdHIgIm5lcGF2eWtvIMSvcmHFoXltYXMgdnlrZGFudCBoYXNocmVwb3J0IgorCisjfiBtc2dpZCAiY29uZmlndXJhdGlvbiBlcnJvcjogdW5rbm93biBvcHRpb24gJXMiCisjfiBtc2dzdHIgImtvbmZpZ8WrcmFjaWpvcyBrbGFpZGE6IG5lxb5pbm9tYXMgcGFyYW1ldHJhcyAgJXMiCisKKyN+IG1zZ2lkICJjb25maWd1cmF0aW9uIGVycm9yOiAlcyBkb2VzIG5vdCB0YWtlIGEgdmFsdWUiCisjfiBtc2dzdHIgImtvbmZpZ8WrcmF2aW1vIGtsYWlkYTogJXMgbmVwcmlpbWEgcmVpa8WhbcSXcyIKKworIywgZnV6enkKKyN+IG1zZ2lkICJ1bmV4ZWNwdGVkIGVuZCBvZiBsaW5lIGluIHN0YXRvdmVycmlkZSBmaWxlIgorI34gbXNnc3RyICJuZXRpa8SXdGEgZWlsdXTEl3MgcGFiYWlnb3Mgxb55bcSXIHBha2V0byB2YXJkZSwgJWQgZWlsdXTEl2plIgorCisjLCBmdXp6eQorI34gbXNnaWQgIi0tY2hlY2stc3VwcG9ydGVkIHRha2VzIG5vIGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiLS0lcyBwYXJhbWV0cmFzIG5lcmVpa2FsYXVqYSBudXJvZHl0aSBqb2tpxbMgcmVpa8WhbWnFsyIKKworI34gbXNnaWQgIiVzOiB1bmtub3duIG9wdGlvbiBgJXMnIgorI34gbXNnc3RyICIlczogbmXFvmlub21hcyBudXN0YXR5bWFzIGAlcyciCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gb3BlbiAlczogJXMiCisjfiBtc2dzdHIgIm5lcGF2eWtvIGF0dmVydGkgJXM6ICVzIgorCisjfiBtc2dpZCAiJXM6IHdhcm5pbmcgLSB1bmFibGUgdG8gdW5sb2NrICVzOiAlcyIKKyN+IG1zZ3N0ciAiJXM6IMSvc3DEl2ppbWFzOiBuZXBhdnlrbyBhdHJha2ludGkgJXM6ICVzIgorCisjfiBtc2dpZCAiZGJnOiAlcyIKKyN+IG1zZ3N0ciAiZGJnOiAlcyIKKworI34gbXNnaWQgImZhaWxlZCB0byBvcGVuIHRtcGZpbGUgKGNvbnRyb2wpLCAlcyIKKyN+IG1zZ3N0ciAibmVwYXZ5a28gYXR2ZXJ0aSBsYWlraW5vIGZhaWxvICh2YWxkeW1vKSwgJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gb3BlbiB0bXBmaWxlIChkYXRhKSwgJXMiCisjfiBtc2dzdHIgIm5lcGF2eWtvIGF0dmVydGkgbGFpa2lub3MgZmFpbG8gKGR1b21lbnlzKSwgJXMiCisKKyN+IG1zZ2lkICJpbnZhbGlkIG51bWJlciBmb3IgLS1jb21tYW5kLWZkIgorI34gbXNnc3RyICJ0dXJpIGLFq3RpIHNrYWnEjWl1cyAtLWNvbW1hbmQtZmQiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcmV3aW5kIGF0IHN0YXJ0IG9mIHZzbnByaW50ZiIKKyN+IG1zZ3N0ciAibmVwYXZ5a3N0YSBwZXJlaXRpIHByaWUgdnNucHJpbnRmIHByYWTFvmlvcyIKKworI34gbXNnaWQgInVuYWJsZSB0byB0cnVuY2F0ZSBpbiB2c25wcmludGYiCisjfiBtc2dzdHIgIm5lxK9tYW5vbWEgbnVraXJwdGkgdnNucHJpbnRmIgorCisjfiBtc2dpZCAid3JpdGUgZXJyb3IgaW4gdnNucHJpbnRmIgorI34gbXNnc3RyICJ2c25wcmludGYgcmHFoXltbyBrbGFpZGEiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gc3RhdCBpbiB2c25wcmludGYiCisjfiBtc2dzdHIgIm5lcGF2eWtvIGdhdXRpIHZzbnByaW50ZiBixatzZW5vcyIKKworI34gbXNnaWQgInVuYWJsZSB0byByZXdpbmQgaW4gdnNucHJpbnRmIgorI34gbXNnc3RyICJuZcSvbWFub21hIGdyxIXFvmludGkgdm5zcHJpbnRmIMSvIHByYWTFvmnEhSIKKworI34gbXNnaWQgInJlYWQgZXJyb3IgaW4gdnNucHJpbnRmIHRydW5jYXRlZCIKKyN+IG1zZ3N0ciAidnNucHJpbnRmIHNrYWl0eW1vIGtsYWlkYSBhcGtpcnB0YSIKKworI34gbXNnaWQgIlN5c3RlbSBlcnJvciBuby4lZCIKKyN+IG1zZ3N0ciAiU2lzdGVtb3Mga2xhaWRhIG5yLiAlZCIKKworI34gbXNnaWQgIlNpZ25hbCBuby4lZCIKKyN+IG1zZ3N0ciAiU2lnbmFsYXMgbnIuICVkIgorCisjfiBtc2dpZCAiZHBrZzogd2FybmluZyAtICVzIHJldHVybmVkIGVycm9yIGV4aXQgc3RhdHVzICVkXG4iCisjfiBtc2dzdHIgImRwa2c6IMSvc3DEl2ppbWFzOiAlcyBncmHFvmlubyBrbGFpZG9zIGtvZMSFICVkXG4iCisKKyN+IG1zZ2lkICJkcGtnOiB3YXJuaW5nIC0gJXMga2lsbGVkIGJ5IHNpZ25hbCAoJXMpJXNcbiIKKyN+IG1zZ3N0ciAiZHBrZzogxK9zcMSXamltYXM6ICVzIG51dHJhdWt0YXMgc2lnbmFsdSAoJXMpJXNcbiIKKworI34gbXNnaWQgImZhaWxlZCB0byByZWFkIGAlcycgYXQgbGluZSAlZCIKKyN+IG1zZ3N0ciAibmVwYXZ5a28gbnVza2FpdHl0aSBgJXMnICVkIGVpbHV0xJdqZSIKKworI34gbXNnaWQgIiBwYWNrYWdlIGAlLjI1NXMnIgorI34gbXNnc3RyICIgcGFrZXRhcyBgJS4yNTVzJyIKKworI34gbXNnaWQgImZhaWxlZCB0byByZWFsbG9jIGZvciB2YXJpYWJsZSBidWZmZXIiCisjfiBtc2dzdHIgIm5lcGF2eWtvIHBlcnNraXJzdHl0aSBhdG1pbnRpZXMga2ludGFtxbNqxbMgYnVmZXJpdWkiCisKKyN+IG1zZ2lkICJwcm9jZXNzX2FyY2hpdmUgLi4uICBhbHJlYWR5IGRpc2FwcGVhcmVkICEiCisjfiBtc2dzdHIgInByb2Nlc3NfYXJjaGl2ZSAuLi4gIGphdSBwYW5haWtpbnRhcyAhIgorCisjfiBtc2dpZCAiZ29iYmxlIHJlcGxhY2VkIGZpbGUgYCUuMjU1cyciCisjfiBtc2dzdHIgImdvYmJsZSBwYWtlaXTElyBmYWlsxIUg4oCeJS4yNTVz4oCcIgorCisjfiBtc2dpZCAiZHBrZzogJXM6IHdhcm5pbmcgLSBmYWlsZWQgdG8gcmVtb3ZlIGAlLjI1MHMnOiAlc1xuIgorI34gbXNnc3RyICJkcGtnOiAlczogxK9zcMSXamltYXM6IG5lcGF2eWtvIHBhxaFhbGludGkg4oCeJS4yNTBz4oCcOiAlc1xuIgorCisjfiBtc2dpZCAiLS1hdWRpdCBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudHMiCisjfiBtc2dzdHIgIi0tYXVkaXQgcGFzaXJpbmtpbXVpIG5lcmVpa2lhIG51cm9keXRpIGpva2nFsyByZWlrxaFtacWzIgorCisjfiBtc2dpZCAiLS15ZXQtdG8tdW5wYWNrIGRvZXMgbm90IHRha2UgYW55IGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiLS15ZXQtdG8tdW5wYWNrIHBhc2lyaW5raW11acK3bmVyZWlraWHCt251cm9keXRpwrdqb2tpxbPCt3JlaWvFoW1pxbMiCisKKyN+IG1zZ2lkICItLWFzc2VydC0qIGRvZXMgbm90IHRha2UgYW55IGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiLS1hc3NlcnQtKiBwYXNpcmlua2ltdWkgbmVyZWlraWEgbnVyb2R5dGkgam9racWzIHJlaWvFoW1pxbMiCisKKyN+IG1zZ2lkICItLXByZWRlcC1wYWNrYWdlIGRvZXMgbm90IHRha2UgYW55IGFyZ3VtZW50IgorI34gbXNnc3RyICItLXByZWRlcC1wYWNrYWdlIHBhc2lyaW5raW11aSBuZXJlaWtpYSBudXJvZHl0aSBqb2tpxbMgcmVpa8WhbWnFsyIKKworI34gbXNnaWQgIi0tcHJpbnQtYXJjaGl0ZWN0dXJlIGRvZXMgbm90IHRha2UgYW55IGFyZ3VtZW50IgorI34gbXNnc3RyICItLXByaW50LWFyY2hpdGVjdHVyZSBwYXNpcmlua2ltdWkgbmVyZWlraWEgbnVyb2R5dGkgam9racWzIHJlaWvFoW1pxbMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gc3RhdCBpbnN0YWxsZWQgJXMgc2NyaXB0IGAlLjI1MHMnIgorI34gbXNnc3RyICJuZXBhdnlrc3RhIHBhdGlrcmludGkgxK9kaWVndG8gJXMgc2NlbmFyaWphdXMgYCUuMjUwcyciCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gc3RhdCBuZXcgJXMgc2NyaXB0IGAlLjI1MHMnIgorI34gbXNnc3RyICJuZXBhdnlrc3RhIG51c3RhdHl0aSAlcyBzY2VuYXJpamF1cyBixatzZW5vcyBgJS4yNTBzJyIKKworI34gbXNnaWQgInVuYWJsZSB0byBleGVjdXRlIG5ldyAlcyIKKyN+IG1zZ3N0ciAibmVwYXZ5a28gxK92eWtkeXRpIG5hdWpvICVzIgorCisjfiBtc2dpZCAiZHBrZzogd2FybmluZyAtIHVuYWJsZSB0byBzdGF0ICVzIGAlLjI1MHMnOiAlc1xuIgorI34gbXNnc3RyICJkcGtnOiDEr3NwxJdqaW1hczogbmVwYXZ5a28gcGF0aWtyaW50aSAlcyDigJ4lLjI1MHPigJw6ICVzXG4iCisKKyN+IG1zZ2lkICItLXNldC1zZWxlY3Rpb25zIGRvZXMgbm90IHRha2UgYW55IGFyZ3VtZW50IgorI34gbXNnc3RyICItLXNldC1zZWxlY3Rpb25zIHBhc2lyaW5raW11aSBuZXJlaWtpYSBudXJvZHl0aSBqb2tpxbMgcmVpa8WhbWnFsyIKKworI34gbXNnaWQgIi0tY2xlYXItc2VsZWN0aW9ucyBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudCIKKyN+IG1zZ3N0ciAiLS1jbGVhci1zZWxlY3Rpb25zIHBhcmFtZXRyYXMgbmVyZWlrYWxhdWphIG51cm9keXRpIGpva2nFsyByZWlrxaFtacWzIgorCisjfiBtc2dpZCAiSW50ZXJuYWwgZXJyb3IsIGNvbXByZXNzX3R5cGUgYCVpJyB1bmtub3duISIKKyN+IG1zZ3N0ciAiVmlkaW7ElyBrbGFpZGEsIHN1c3BhdWRpbW8gdGlwYXMgYCVpJyBuZcW+aW5vbWFzISIKKworI34gbXNnaWQgIi0tbGlzdHEgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnRzIgorI34gbXNnc3RyICItLWxpc3RxIHBhcmFtZXRydWkgbmVyZWlraWEgbnVzdGF0eW3FsyIKKworI34gbXNnaWQgIiIKKyN+ICJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gWy0tXSBbPGRpcm5hbWU+XVxuIgorI34gIlxuIgorI34gIk9wdGlvbnM6XG4iCisjfiAiICAtLXVuc2FmZSAgICAgc2V0IHNvbWUgYWRkaXRpb25hbCBwb3NzaWJseSB1c2VmdWwgb3B0aW9ucy5cbiIKKyN+ICIgICAgICAgICAgICAgICB3YXJuaW5nOiB0aGlzIG9wdGlvbiBtYXkgZ2FyYmxlIGFuIG90aGVyd2lzZSBjb3JyZWN0ICIKKyN+ICJmaWxlLlxuIgorI34gIiAgLS1oZWxwICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisjfiAiICAtLXZlcnNpb24gICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIk5hdWRvamltYXM6ICVzIFs8cGFyYW1ldHJhcz4gLi4uXSBbLS1dIFs8YXBsYW5rYXM+XVxuIgorI34gIlxuIgorI34gIlBhcmFtZXRyYWk6XG4iCisjfiAiICAtLXVuc2FmZSDigJMgxK9qdW5ndGkgcGFwaWxkb211cywgZ2FsYsWrdCBuYXVkaW5ndXMgbnVzdGF0eW11cy5cbiIKKyN+ICIgICAgICAgICAgICAgICBExJdtZXNpbzogxaFpcyBwYXJhbWV0cmFzIGdhbGkgcGHFvmVpc3RpIHRhaXN5a2xpbmfEhSBmYWlsxIUuXG4iCisjfiAiICAtLWhlbHAg4oCTIFBhcm9keXRpIMWhaXTEhSBwcmFuZcWhaW3EhS5cbiIKKyN+ICIgIC0tdmVyc2lvbiDigJMgUGFyb2R5dGkgdmVyc2lqxIUuXG4iCisKKyN+IG1zZ2lkICJ0cnkgZGVsZXRpbmcgJXMiCisjfiBtc2dzdHIgInBhYmFuZHlraXRlIGnFoXRyaW50aSAlcyIKKworI34gbXNnaWQgIlNlcmlvdXMgcHJvYmxlbTogJXMiCisjfiBtc2dzdHIgIlJpbXRhIHByb2JsZW1hOiAlcyIKKworI34gbXNnaWQgImNvdWxkbid0IGFsbG9jYXRlIG1lbW9yeSBmb3Igc3RyZHVwIGluIGZpbmRwYWNrYWdlKCVzKSIKKyN+IG1zZ3N0ciAidnlrZGFudCBmaW5kcGFja2FnZXMoJXMpLCBuZXBhdnlrbyBzdHJkdXAgacWhc2tpcnRpIGF0bWludGllcyIKKworI34gbXNnaWQgImZhaWxlZCB0byBhbGxvY2F0ZSBidWZmZXIgaW4gYnVmZmVyX2NvcHkgKCVzKSIKKyN+IG1zZ3N0ciAibmVwYXZ5a28gacWhc2tpcnRpIGJ1ZmVyaW8gc3UgYnVmZmVyX2NvcHkgKCVzKSIKKworI34gbXNnaWQgIkVycm9yIGFsbG9jYXRpbmcgbWVtb3J5IGZvciBjZmdmaWxlbmFtZSIKKyN+IG1zZ3N0ciAiS2xhaWRhIGnFoXNraXJpYW50IGNmZ2ZpbGVuYW1lIGF0bWludMSvIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIG1hbGxvYyBmb3IgaW5mbyBmaWxlIGAlLjI1NXMnIgorI34gbXNnc3RyICJuZXBhdnlrbyBpxaFza2lydGkgYXRtaW50aWVzIGluZm9ybWFjaWpvcyBmYWlsdWkgYCUuMjU1cyciCisKKyN+IG1zZ2lkICJjb3VsZG4ndCBtYWxsb2MgaW4gZXhlY2JhY2tlbmQiCisjfiBtc2dzdHIgIm5lcGF2eWtvIGnFoXNraXJ0aSBhdG1pbnRpZXMgZXhlY2JhY2tlbmQiCisKKyN+IG1zZ2lkICJjb3VsZG4ndCBzdHJkdXAgaW4gZXhlY2JhY2tlbmQiCisjfiBtc2dzdHIgIm5lcGF2eWtvIHN0cmR1cCBleGVjYmFja2VuZCIKKworI34gbXNnaWQgImZhaWxlZCBhbGxvY2F0aW5nIG1lbW9yeSBmb3IgdmFyaWFibGUgYGN0cmxhcmVhJyIKKyN+IG1zZ3N0ciAibmVwYXZ5a28gacWhc2tpcnRpIGF0bWludGllcyBraW50YW1hamFtIGBjdHJsYXJlYSciCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3BvL21yLmdtbyBiL2Rwa2ctMS4xNi4xLjEvcG8vbXIuZ21vCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmI4ZjQwMmMKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3BvL21yLmdtbwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3BvL21yLnBvIGIvZHBrZy0xLjE2LjEuMS9wby9tci5wbwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jZGM2MDdhCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9wby9tci5wbwpAQCAtMCwwICsxLDcwNjkgQEAKKyMgU2FtcGFkYSBOYWtoYXJlIDxzYW1wYWRhLm5AcmVkaWZmbWFpbC5jb20+CisjCittc2dpZCAiIgorbXNnc3RyICIiCisiUHJvamVjdC1JZC1WZXJzaW9uOiBkcGtnXG4iCisiUmVwb3J0LU1zZ2lkLUJ1Z3MtVG86IGRlYmlhbi1kcGtnQGxpc3RzLmRlYmlhbi5vcmdcbiIKKyJQT1QtQ3JlYXRpb24tRGF0ZTogMjAxMS0xMC0xNCAwNzoxMSswMjAwXG4iCisiUE8tUmV2aXNpb24tRGF0ZTogMjAwNi0wOC0xNyAxNjowMiswMjAwXG4iCisiTGFzdC1UcmFuc2xhdG9yOiBQcml0aSBQYXRpbCA8cHJpdGhpc2RAZ21haWwuY29tPlxuIgorIkxhbmd1YWdlLVRlYW06ICBNYXJhdGhpLCBqYW5hYmhhYXJhdGlpLCBDLURBQywgTXVtYmFpLCBJbmRpYSAiCisiPGphbmFiaGFhcmF0aWlAY2RhY211bWJhaS5pbj5cbiIKKyJMYW5ndWFnZTogbXJcbiIKKyJNSU1FLVZlcnNpb246IDEuMFxuIgorIkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD1VVEYtOFxuIgorIkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXRcbiIKKworIzogbGliL2Rwa2cvYXIuYzo2NgorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGNoYXJhY3RlciAnJWMnIGluIGFyY2hpdmUgJyUuMjUwcycgbWVtYmVyICclLjE2cycgc2l6ZSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9hci5jOjgxIGxpYi9kcGtnL2FyLmM6OTcgbGliL2Rwa2cvYXIuYzoxMDggbGliL2Rwa2cvYXIuYzoxMTIKKyM6IGxpYi9kcGtnL2FyLmM6MTM0IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTU0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgZmlsZSAnJXMnIgorbXNnc3RyICLgpIngpJfgpK4g4KSr4KS+4KSH4KSyIGAlLjI1MHMnIOCkieCkmOCkoeCkpOCkviDgpK/gpYfgpKQg4KSo4KS+4KS54KWAIgorCisjOiBsaWIvZHBrZy9hci5jOjk0CisjLCBjLWZvcm1hdAorbXNnaWQgImdlbmVyYXRlZCBjb3JydXB0IGFyIGhlYWRlciBmb3IgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9hci5jOjEyMworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGFyIG1lbWJlciBmaWxlICglcykiCittc2dzdHIgIuCkn+ClgOCkj+CkruCkquClgOCkq+CkvuCkiOCksiAo4KSh4KWH4KSf4KS+KSDgpKzgpKjgpLXgpKTgpL4g4KSG4KSy4KWAIOCkqOCkvuCkueClgCIKKworIzogbGliL2Rwa2cvYXIuYzoxMzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImFyIG1lbWJlciBmaWxlICglcykiCittc2dzdHIgIuCkn+ClgOCkj+CkruCkquClgOCkq+CkvuCkiOCksiAo4KSh4KWH4KSf4KS+KSDgpKzgpKjgpLXgpKTgpL4g4KSG4KSy4KWAIOCkqOCkvuCkueClgCIKKworIzogbGliL2Rwa2cvYnVmZmVyLmM6MTk2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCBvbiBidWZmZXIgY29weSBmb3IgJXMiCittc2dzdHIgIuCkrOCkq+CksF/gpKjgpJXgpY3gpJXgpLIgKCVzKSDgpK7gpKfgpYcg4KSF4KSv4KS24KS44KWN4KS14KWAIOCkneCkvuCksuClhyIKKworIzogbGliL2Rwa2cvYnVmZmVyLmM6MjEyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgaW4gd3JpdGUgb24gYnVmZmVyIGNvcHkgZm9yICVzIgorbXNnc3RyICLgpKzgpKvgpLBf4KSo4KSV4KWN4KSV4KSyICglcykg4KSu4KSn4KWHIOCkheCkr+CktuCkuOCljeCkteClgCDgpJ3gpL7gpLLgpYciCisKKyM6IGxpYi9kcGtnL2J1ZmZlci5jOjIyMAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAic2hvcnQgcmVhZCBvbiBidWZmZXIgY29weSBmb3IgJXMiCittc2dzdHIgIuCkrOCkq+CksF/gpKjgpJXgpY3gpJXgpLIgKCVzKSDgpK7gpKfgpYcg4KSk4KWL4KSV4KSh4KWHIOCkteCkvuCkmuCkqCIKKworIzogbGliL2Rwa2cvYnVmZmVyLmM6Mjg4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyB0YXIiCittc2dpZCAiZmFpbGVkIHRvIHNlZWsgJXMiCittc2dzdHIgIuCkn+CkvuCksCDgpIfgpJXgpY3gpLjgpIfgpLjgpYAg4KSV4KSw4KSk4KS+IOCkhuCksuClhyDgpKjgpL7gpLngpYAiCisKKyM6IGxpYi9kcGtnL2NvbW1hbmQuYzoxNzggbGliL2Rwa2cvY29tbWFuZC5jOjIwNCBzcmMvaGVscC5jOjYyMQorIzogc3JjL3Byb2Nlc3NhcmMuYzo5OCBzcmMvcHJvY2Vzc2FyYy5jOjEzOCBzcmMvcHJvY2Vzc2FyYy5jOjQzMgorIzogc3JjL3Byb2Nlc3NhcmMuYzo4MzkgZHBrZy1kZWIvYnVpbGQuYzo0NTkgZHBrZy1kZWIvYnVpbGQuYzo1MzgKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTYxIGRwa2ctZGViL2V4dHJhY3QuYzozMTcgZHBrZy1kZWIvaW5mby5jOjY1CisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6NjkgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQ1NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGV4ZWN1dGUgJXMgKCVzKSIKK21zZ3N0ciAiJXMg4KSF4KSu4KSy4KS+4KSkIOCkhuCko+Cko+CljeCkr+CkvuCkuCDgpIXgpLjgpK7gpLDgpY3gpKUg4KSG4KS54KWHIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBkZWNvbXByZXNzaW9uIgorbXNnc3RyICIlczog4KSh4KS/4KSV4KS+4KSB4KSC4KSq4KWN4KSw4KWH4KS24KSoIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjg5CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBjb21wcmVzc2lvbiIKK21zZ3N0ciAiJXM6IOCkleCkvuCkgeCkguCkquCljeCksOClh+CktuCkqCIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yIGJpbmRpbmcgaW5wdXQgdG8gZ3ppcCBzdHJlYW0iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxMjQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHJlYWQgZXJyb3I6ICclcyciCittc2dzdHIgIiVzOiDgpIbgpILgpKTgpLDgpL/gpJUg4KSc4KWA4KSd4KS/4KSqIOCkpOCljeCksOClgeCkn+ClgDogYCVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxMzIgbGliL2Rwa2cvY29tcHJlc3MuYzoxMzYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHdyaXRlIGVycm9yIgorbXNnc3RyICIlczog4KSG4KSC4KSk4KSw4KS/4KSVIOCknOClgOCkneCkv+CkqiDgpKTgpY3gpLDgpYHgpJ/gpYA6IGAlcyciCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTUwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvciBiaW5kaW5nIG91dHB1dCB0byBnemlwIHN0cmVhbSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE1NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgcmVhZCBlcnJvciIKK21zZ3N0ciAiJXM6IOCkhuCkguCkpOCksOCkv+CklSDgpJzgpYDgpJ3gpL/gpKog4KSk4KWN4KSw4KWB4KSf4KWAOiBgJXMnIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE2NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgd3JpdGUgZXJyb3I6ICclcyciCittc2dzdHIgIiVzOiDgpIbgpILgpKTgpLDgpL/gpJUg4KSc4KWA4KSd4KS/4KSqIOCkpOCljeCksOClgeCkn+ClgDogYCVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxODAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHdyaXRlIGVycm9yOiAlcyIKK21zZ3N0ciAiJXM6IOCkhuCkguCkpOCksOCkv+CklSDgpJzgpYDgpJ3gpL/gpKog4KSk4KWN4KSw4KWB4KSf4KWAOiBgJXMnIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjIyMAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZXJyb3IgYmluZGluZyBpbnB1dCB0byBiemlwMiBzdHJlYW0iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyMzIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiByZWFkIGVycm9yOiAnJXMnIgorbXNnc3RyICIlczog4KSG4KSC4KSk4KSw4KS/4KSVIOCkrOClgOCkneCkv+CkquClqCDgpKTgpY3gpLDgpYHgpJ/gpYA6IGAlcyciCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjQwIGxpYi9kcGtnL2NvbXByZXNzLmM6MjQ0IGxpYi9kcGtnL2NvbXByZXNzLmM6Mjk0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgd3JpdGUgZXJyb3IiCittc2dzdHIgIiVzOiDgpIbgpILgpKTgpLDgpL/gpJUg4KSs4KWA4KSd4KS/4KSq4KWoIOCkpOCljeCksOClgeCkn+ClgDogYCVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yIGJpbmRpbmcgb3V0cHV0IHRvIGJ6aXAyIHN0cmVhbSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI2NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIHJlYWQgZXJyb3IiCittc2dzdHIgIiVzOiDgpIbgpILgpKTgpLDgpL/gpJUg4KSs4KWA4KSd4KS/4KSq4KWoIOCkpOCljeCksOClgeCkn+ClgDogYCVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyNzUgbGliL2Rwa2cvY29tcHJlc3MuYzoyODYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiB3cml0ZSBlcnJvcjogJyVzJyIKK21zZ3N0ciAiJXM6IOCkhuCkguCkpOCksOCkv+CklSDgpKzgpYDgpJ3gpL/gpKrgpagg4KSk4KWN4KSw4KWB4KSf4KWAOiBgJXMnIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI4MgorbXNnaWQgInVuZXhwZWN0ZWQgYnppcDIgZXJyb3IiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzo2OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidXBkYXRlcyBkaXJlY3RvcnkgY29udGFpbnMgZmlsZSBgJS4yNTBzJyB3aG9zZSBuYW1lIGlzIHRvbyBsb25nIChsZW5ndGg9JWQsICIKKyJtYXg9JWQpIgorbXNnc3RyICIiCisi4KS44KWB4KSn4KS+4KSw4KSj4KS+IOCkqOCkv+CksOCljeCkpuClh+CktuCkv+CkleClh+CkpCDgpIXgpLjgpLLgpYfgpLLgpY3gpK/gpL4gYCUuMjUwcycg4KSv4KS+IOCkq+CkvuCkh+CksuCkmuClhyDgpKjgpL7gpLUg4KSc4KS+4KS44KWN4KSkIOCksuCkvuCkguCkrCDgpIbgpLngpYcgKOCksuCkvuCkguCkrOClgD0lZCwgIgorIuCknOCkvuCkuOCljeCkpOClgOCkpOCknOCkvuCkuOCljeCkpD0lZCkiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVwZGF0ZXMgZGlyZWN0b3J5IGNvbnRhaW5zIGZpbGVzIHdpdGggZGlmZmVyZW50IGxlbmd0aCBuYW1lcyAoYm90aCAlZCBhbmQgJWQpIgorbXNnc3RyICLgpLjgpYHgpKfgpL7gpLDgpKPgpL4g4KSo4KS/4KSw4KWN4KSm4KWH4KS24KS/4KSV4KWH4KSkIOCkheCkuOCksuClh+CksuCljeCkr+CkviDgpKvgpL7gpIjgpLLgpYDgpILgpJrgpY3gpK/gpL4g4KSo4KS+4KS14KS+4KSC4KSa4KWAIOCksuCkvuCkguCkrOClgCDgpLXgpYfgpJfgpLXgpYfgpJfgpLPgpYAg4KSG4KS54KWHICjgpKbgpYvgpKjgpY3gpLngpYAgJWQg4KS1ICVkKSIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzo4NgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc2NhbiB1cGRhdGVzIGRpcmVjdG9yeSBgJS4yNTVzJyIKK21zZ3N0ciAiYCUuMjU1cycg4KS44KWB4KSn4KS+4KSw4KSj4KS+IOCkqOCkv+CksOCljeCkpuClh+CktuCkv+CkleCkviDgpKTgpKrgpL7gpLjgpKTgpL4g4KSv4KWH4KSkIOCkqOCkvuCkueClgCIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlbW92ZSBpbmNvcnBvcmF0ZWQgdXBkYXRlIGZpbGUgJS4yNTVzIgorbXNnc3RyICLgpIXgpILgpKTgpLDgpY3gpK3gpYHgpKQg4KS44KWB4KSn4KS+4KSw4KSj4KS+IOCkq+CkvuCkiOCksiAlLjI1NXMg4KSV4KS+4KSi4KWC4KSoIOCkn+CkvuCkleCkpOCkviDgpIbgpLLgpYAg4KSo4KS+4KS54KWAIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEyMSBkcGtnLWRlYi9idWlsZC5jOjQ0NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGAlLjI1NXMnIgorbXNnc3RyICJgJS4yNTVzJyDgpJrgpYAg4KSw4KSa4KSo4KS+IOCkleCksOCkpOCkviDgpK/gpYfgpKQg4KSo4KS+4KS54KWAIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEyNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmlsbCAlLjI1MHMgd2l0aCBwYWRkaW5nIgorbXNnc3RyICIlLjI1MHMg4KSq4KSB4KSh4KS/4KSC4KSX4KSo4KWHIOCkreCksOCkpOCkviDgpK/gpYfgpKQg4KSo4KS+4KS54KWAIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEyNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggJS4yNTBzIGFmdGVyIHBhZGRpbmciCittc2dzdHIgIuCkquCkgeCkoeCkv+CkguCkl+CkqOCkguCkpOCksCAlLjI1MHMg4KSP4KSV4KSc4KWA4KS1IOCkleCksOCkpOCkviDgpK/gpYfgpKQg4KSo4KS+4KS54KWAIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEyOQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2VlayB0byBzdGFydCBvZiAlLjI1MHMgYWZ0ZXIgcGFkZGluZyIKK21zZ3N0ciAi4KSq4KSB4KSh4KS/4KSC4KSX4KSo4KSC4KSk4KSwICUuMjUwcyDgpJrgpY3gpK/gpL4g4KS44KWB4KSw4KWC4KS14KS+4KSk4KWA4KSy4KS+IOCknOCkvuCkpOCkviDgpK/gpYfgpKQg4KSo4KS+4KS54KWAIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjE5NQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIG9wZW4gdG1wZmlsZSBmb3IgdnNucHJpbnRmIgorbXNnaWQgInVuYWJsZSB0byBvcGVuIGxvY2sgZmlsZSAlcyBmb3IgdGVzdGluZyIKK21zZ3N0ciAi4KS14KWN4KS54KWA4KSP4KS44KSP4KSo4KSq4KWN4KSw4KS/4KSC4KSf4KSP4KWeIOCkuOCkvuCkoOClgCDgpJ/gpYDgpI/gpK7gpKrgpYDgpKvgpL7gpIjgpLIg4KSJ4KSY4KSh4KSk4KS+IOCkr+Clh+CkpCDgpKjgpL7gpLngpYAiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjIxCittc2dpZCAidW5hYmxlIHRvIG9wZW4vY3JlYXRlIHN0YXR1cyBkYXRhYmFzZSBsb2NrZmlsZSIKK21zZ3N0ciAi4KSh4KWA4KSq4KWA4KSV4KWH4KSc4KWAIOCkuOCkpuCljeCkr+CkuOCljeCkpeCkv+CkpOClgCDgpKHgpYfgpJ/gpL7gpKzgpYfgpLgg4KSy4KWL4KWF4KSV4KWe4KS+4KSI4KSyIOCkieCkmOCkoeCkpOCkvi/gpKzgpKjgpLXgpKTgpL4g4KSv4KWH4KSkIOCkqOCkvuCkueClgCIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyMzEKK21zZ2lkICJ5b3UgZG8gbm90IGhhdmUgcGVybWlzc2lvbiB0byBsb2NrIHRoZSBkcGtnIHN0YXR1cyBkYXRhYmFzZSIKK21zZ3N0ciAi4KSG4KSq4KSj4KS+4KSC4KS4IOCkoeClgOCkquClgOCkleClh+CknOClgCDgpLjgpKbgpY3gpK/gpLjgpY3gpKXgpL/gpKTgpYAg4KSh4KWH4KSf4KS+4KSs4KWH4KS44KSy4KS+IOCkn+CkvuCks+ClhyDgpLLgpL7gpLXgpKPgpY3gpK/gpL7gpJrgpYAg4KSq4KSw4KS14KS+4KSo4KSX4KWAIOCkqOCkvuCkueClgCIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyMzMKKyMsIGZ1enp5CisjfCBtc2dpZCAidW5hYmxlIHRvIGxvY2sgZHBrZyBzdGF0dXMgZGF0YWJhc2UiCittc2dpZCAiZHBrZyBzdGF0dXMgZGF0YWJhc2UiCittc2dzdHIgIuCkoeClgOCkquClgOCkleClh+CknOClgCDgpLjgpKbgpY3gpK/gpLjgpY3gpKXgpL/gpKTgpYAg4KSh4KWH4KSf4KS+4KSs4KWH4KS44KSy4KS+IOCkn+CkvuCks+ClhyDgpLLgpL7gpLXgpKTgpL4g4KSv4KWH4KSkIOCkqOCkvuCkueClgCIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyNTcKK21zZ2lkICJyZXF1ZXN0ZWQgb3BlcmF0aW9uIHJlcXVpcmVzIHN1cGVydXNlciBwcml2aWxlZ2UiCittc2dzdHIgIuCkr+CkviDgpLjgpILgpJXgpY3gpLDgpL/gpK/gpYfgpLjgpL7gpKDgpYAg4KS44KWB4KSq4KSw4KSv4KWB4KSd4KSw4KSa4KWHIOCkueCkleCljeCklSDgpIbgpLXgpLbgpY3gpK/gpJUg4KSG4KS54KWH4KSkIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjI2MgorbXNnaWQgInVuYWJsZSB0byBhY2Nlc3MgZHBrZyBzdGF0dXMgYXJlYSIKK21zZ3N0ciAi4KSh4KWA4KSq4KWA4KSV4KWH4KSc4KWAIOCkpuCksOCljeCknOCkviDgpLjgpY3gpKXgpL7gpKjgpL7gpKQg4KSq4KWN4KSw4KS14KWH4KS2IOCkruCkv+Cks+CkpCDgpKjgpL7gpLngpYAiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjY0Cittc2dpZCAib3BlcmF0aW9uIHJlcXVpcmVzIHJlYWQvd3JpdGUgYWNjZXNzIHRvIGRwa2cgc3RhdHVzIGFyZWEiCittc2dzdHIgIuCkr+CkviDgpLjgpILgpJXgpY3gpLDgpL/gpK/gpYfgpLjgpL7gpKDgpYAg4KSh4KWA4KSq4KWA4KSV4KWH4KSc4KWAIOCkpuCksOCljeCknOCkviDgpLjgpY3gpKXgpL7gpKjgpL7gpJrgpYcg4KS14KS+4KSa4KSoL+CksuClh+CkluCkqCDgpLngpJXgpY3gpJUg4KSG4KS14KS24KWN4KSv4KSVIOCkhuCkueClh+CkpCIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozMDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlbW92ZSBteSBvd24gdXBkYXRlIGZpbGUgJS4yNTVzIgorbXNnc3RyICLgpK7gpL7gpJ3gpYAg4KS44KWN4KS14KSk4KSD4KSa4KWAIOCkuOClgeCkp+CkvuCksOCko+CkviDgpKvgpL7gpIjgpLIgJS4yNTVzICDgpJXgpL7gpKLgpYLgpKgg4KSf4KS+4KSV4KSk4KS+IOCkhuCksuClgCDgpKjgpL7gpLngpYAiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzQ3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiYCUuMjUwcycg4KSa4KWAIOCkuOClgeCkp+CkvuCksOCkv+CkpCDgpLjgpY3gpKXgpL/gpKTgpYAg4KSy4KS/4KS54KS/4KSk4KS+IOCkr+Clh+CkpCDgpKjgpL7gpLngpYAiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzQ5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiYCUuMjUwcycg4KSa4KWAIOCkuOClgeCkp+CkvuCksOCkv+CkpCDgpLjgpY3gpKXgpL/gpKTgpYAg4KSP4KSV4KSc4KWA4KS1IOCkleCksOCkpOCkviDgpK/gpYfgpKQg4KSo4KS+4KS54KWAIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM1MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gdHJ1bmNhdGUgZm9yIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJgJS4yNTBzJyDgpJrgpY3gpK/gpL4g4KS44KWB4KSn4KS+4KSw4KS/4KSkIOCkuOCljeCkpeCkv+CkpOClgOCkpCDgpJXgpL7gpJ/gpJvgpL7gpJ8g4KSV4KSw4KSk4KS+IOCkr+Clh+CkpCDgpKjgpL7gpLngpYAiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzUzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmc3luYyB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiJS4yNTBzJyDgpJrgpYAg4KS44KWB4KSn4KS+4KSw4KS/4KSkIOCkuOCljeCkpeCkv+CkpOClgCDgpI/gpKvgpLjgpL/gpKjgpY3gpJUg4KSV4KSw4KSk4KS+IOCkr+Clh+CkpCDgpKjgpL7gpLngpYAiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzU1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiJS4yNTBzJyDgpJrgpYAg4KS44KWB4KSn4KS+4KSw4KS/4KSkIOCkuOCljeCkpeCkv+CkpOClgCDgpKzgpILgpKYg4KSV4KSw4KSk4KS+IOCkr+Clh+CkpCDgpKjgpL7gpLngpYAiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzU4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICIlLjI1MHMnIOCkmuClgCDgpLjgpYHgpKfgpL7gpLDgpL/gpKQg4KS44KWN4KSl4KS/4KSk4KWAIOCkheCkp+Ckv+Ckt+CljeCkoOCkvuCkquCkv+CkpCDgpJXgpLDgpKTgpL4g4KSv4KWH4KSkIOCkqOCkvuCkueClgCIKKworIzogbGliL2Rwa2cvZGlyLmM6NTAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byByZWFkIGZpbGVkZXNjcmlwdG9yIGZsYWdzIGZvciAlLjI1MHMiCittc2dpZCAidW5hYmxlIHRvIGdldCBmaWxlIGRlc2NyaXB0b3IgZm9yIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICIlLjI1MHMg4KS44KS+4KSg4KWAIOCkq+CkvuCkiOCksuCkoeClgOCkuOCljeCkleCljeCksOCkv+CkquCljeCkn+CksCDgpKvgpY3gpLLgpYXgpJcg4KS14KS+4KSa4KSj4KWHIOCknOCkruCkpCDgpKjgpL7gpLngpYAiCisKKyM6IGxpYi9kcGtnL2Rpci5jOjU0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBkaXJlY3RvcnkgJyVzJyIKK21zZ3N0ciAi4KSJ4KSX4KSuIOCkq+CkvuCkh+CksiBgJS4yNTBzJyDgpIngpJjgpKHgpKTgpL4g4KSv4KWH4KSkIOCkqOCkvuCkueClgCIKKworIzogbGliL2Rwa2cvZGlyLmM6NjkgbGliL2Rwa2cvZGlyLmM6MTMxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBkaXJlY3RvcnkgJyVzJyIKK21zZ3N0ciAi4KSJ4KSX4KSuIOCkq+CkvuCkh+CksiBgJS4yNTBzJyDgpIngpJjgpKHgpKTgpL4g4KSv4KWH4KSkIOCkqOCkvuCkueClgCIKKworIzogbGliL2Rwa2cvZGlyLmM6MTA5IHNyYy9kaXZlcnRjbWQuYzoyMTggZHBrZy1zcGxpdC9zcGxpdC5jOjIwMgorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyOTMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIGZpbGUgJyVzJyIKK21zZ3N0ciAi4KSJ4KSX4KSuIOCkq+CkvuCkh+CksiBgJS4yNTBzJyDgpIngpJjgpKHgpKTgpL4g4KSv4KWH4KSkIOCkqOCkvuCkueClgCIKKworIzogbGliL2Rwa2cvZGlyLmM6MTExIHNyYy9kaXZlcnRjbWQuYzoyMzIgc3JjL2RpdmVydGNtZC5jOjM3NworIzogc3JjL3N0YXRjbWQuYzoyMTcgZHBrZy1kZWIvYnVpbGQuYzo1OTggZHBrZy1zcGxpdC9qb2luLmM6NjUKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxODcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE0MDYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzeW5jIGZpbGUgJyVzJyIKK21zZ3N0ciAi4KSJ4KSX4KSuIOCkq+CkvuCkh+CksiBgJS4yNTBzJyDgpIngpJjgpKHgpKTgpL4g4KSv4KWH4KSkIOCkqOCkvuCkueClgCIKKworIzogbGliL2Rwa2cvZGlyLmM6MTEzIHNyYy9kaXZlcnRjbWQuYzoyMzQgc3JjL2RpdmVydGNtZC5jOjM3OQorIzogZHBrZy1kZWIvYnVpbGQuYzo2MDAgZHBrZy1zcGxpdC9qb2luLmM6NjcgZHBrZy1zcGxpdC9xdWV1ZS5jOjE4OQorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzMTQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE0MDgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBmaWxlICclcyciCittc2dzdHIgIuCkteCljeCkueClgOCkj+CkuOCkj+CkqOCkquCljeCksOCkv+CkguCkn+Ckj+ClnuCkruCkp+ClhyDgpZ7gpY3gpLLgpLY/IOCkleCksOCko+ClhyDgpJzgpK7gpKQg4KSo4KS+4KS54KWAIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6Mzk2CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB3cml0ZSBkZXRhaWxzIG9mIGAlLjUwcycgdG8gYCUuMjUwcyciCittc2dzdHIgImAlLjUwcycgdG8gYCUuMjUwcycg4KSa4KWHIOCkpOCkquCktuClgOCksiDgpLLgpL/gpLngpL/gpKTgpL4g4KSG4KSy4KWHIOCkqOCkvuCkueClgOCkpCIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQyMworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gJyVzJyBmb3Igd3JpdGluZyAlcyBkYXRhYmFzZSIKK21zZ3N0ciAiJXMg4KSu4KS+4KS54KS/4KSk4KWAIOCksuCkv+CkueCkv+Cko+CljeCkr+CkvuCkuOCkvuCkoOClgCBgJXMnIOCkieCkmOCkoeCkpOCkviDgpIbgpLLgpYcg4KSo4KS+4KS54KWAIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDI2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IGJ1ZmZlcmluZyBvbiAlcyBkYXRhYmFzZSBmaWxlIgorbXNnc3RyICLgpLjgpKbgpY3gpK/gpLjgpY3gpKXgpL/gpKTgpYAg4KSr4KS+4KSH4KSy4KSa4KWHIOCkrOCkq+CksOCkv+CkguCklyDgpKjgpL/gpLbgpY3gpJrgpL/gpKQg4KSV4KSw4KSk4KS+IOCkr+Clh+CkpCDgpKjgpL7gpLngpYAiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0MzgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB3cml0ZSAlcyBkYXRhYmFzZSByZWNvcmQgYWJvdXQgJyUuNTBzJyB0byAnJS4yNTBzJyIKK21zZ3N0ciAiYCUuNTBzJyDgpKzgpKbgpY3gpKbgpLLgpJrgpYAgJXMg4KSu4KS+4KS54KS/4KSk4KWAIGAlLjI1MHMnIOCkruCkp+CljeCkr+ClhyDgpLLgpL/gpLngpL/gpKTgpL4g4KSG4KSy4KWAIOCkqOCkvuCkueClgCIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ0NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZsdXNoICVzIGRhdGFiYXNlIHRvICclLjI1MHMnIgorbXNnc3RyICIlcyDgpK7gpL7gpLngpL/gpKTgpYAgYCUuMjUwcycg4KSu4KSn4KWN4KSv4KWHIOCkj+CkleCknOClgOCktSDgpJXgpLDgpKTgpL4g4KSG4KSy4KWAIOCkqOCkvuCkueClgCIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ0OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZzeW5jICVzIGRhdGFiYXNlIHRvICclLjI1MHMnIgorbXNnc3RyICIlcyDgpK7gpL7gpLngpL/gpKTgpYAgYCUuMjUwcycg4KSu4KSn4KWN4KSv4KWHIOCkj+Ckq+CkuOCkv+CkqOCljeCklSDgpJXgpLDgpKTgpL4g4KSG4KSy4KWAIOCkqOCkvuCkueClgCIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ1MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNsb3NlICclLjI1MHMnIGFmdGVyIHdyaXRpbmcgJXMgZGF0YWJhc2UiCittc2dzdHIgIiVzIOCkruCkvuCkueCkv+CkpOClgCDgpLLgpL/gpLngpL/gpLLgpY3gpK/gpL7gpKjgpILgpKTgpLAgYCUuMjUwcycg4KSs4KSC4KSmIOCkleCksOCkpOCkviDgpIbgpLLgpYAg4KSo4KS+4KS54KWAIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDU1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gbGluayAnJS4yNTBzJyB0byAnJS4yNTBzJyBmb3IgYmFja3VwIG9mICVzIGRhdGFiYXNlIgorbXNnc3RyICIlcyDgpJrgpY3gpK/gpL4g4KSs4KWF4KSVLeCkheCkquCkuOCkvuCkoOClgCBgJS4yNTBzJyBgJS4yNTBzJyDgpLbgpYAg4KSc4KWL4KSh4KSk4KS+IOCkhuCksuClhyDgpKjgpL7gpLngpYAiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NTgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBpbnN0YWxsICclLjI1MHMnIGFzICclLjI1MHMnIGNvbnRhaW5pbmcgJXMgZGF0YWJhc2UiCittc2dzdHIgImAlLjI1MHMnICVzIOCkruCkvuCkueCkv+CkpOClgCDgpLjgpK7gpL7gpLXgpLLgpYfgpLLgpYcgYCUuMjUwcyfgpK7gpY3gpLngpKPgpYLgpKgg4KSF4KSn4KS/4KS34KWN4KSg4KS+4KSq4KS/4KSkIOCkleCksOCkpOCkviDgpIbgpLLgpYcg4KSo4KS+4KS54KWAIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6OTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiB1bnJlY292ZXJhYmxlIGZhdGFsIGVycm9yLCBhYm9ydGluZzpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MTAwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogb3V0c2lkZSBlcnJvciBjb250ZXh0LCBhYm9ydGluZzpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MTIwCisjLCBmdXp6eQorI3wgbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBjbGVhbnVwIGVudHJ5IgorbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBlcnJvciBjb250ZXh0IgorbXNnc3RyICLgpLXgpYDgpKgg4KSV4KWN4KSy4KWA4KSo4KSF4KSqIOCkqOCli+CkguCkpuClgOCkleCksOCkv+CkpOCkviDgpK7gpYfgpK7gpLDgpYAg4KSF4KSq4KWC4KSw4KWAIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MTgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogZXJyb3Igd2hpbGUgY2xlYW5pbmcgdXA6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKyIlczog4KS44KSr4KS+4KSIIOCkleCksOCkpOCkvuCkqOCkviDgpJrgpYLgpJU6XG4iCisiICVzXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoyMDEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImRwa2c6IHRvbyBtYW55IG5lc3RlZCBlcnJvcnMgZHVyaW5nIGVycm9yIHJlY292ZXJ5ICEhXG4iCittc2dpZCAiJXM6IHRvbyBtYW55IG5lc3RlZCBlcnJvcnMgZHVyaW5nIGVycm9yIHJlY292ZXJ5ISFcbiIKK21zZ3N0ciAi4KSh4KWA4KSq4KWA4KSV4KWH4KSc4KWAOiDgpKTgpY3gpLDgpYHgpJ/gpYAg4KS44KWB4KSn4KS+4KSw4KSj4KWH4KSm4KSw4KSu4KWN4KSv4KS+4KSoIOCkquClgeCkt+CljeCkleCks+CkmiDgpKjgpYfgpLjgpY3gpJ/gpYfgpKEg4KSa4KWB4KSV4KS+ICAhIVxuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MjY4IGxpYi9kcGtnL2VoYW5kbGUuYzozMDcKK21zZ2lkICJvdXQgb2YgbWVtb3J5IGZvciBuZXcgY2xlYW51cCBlbnRyeSIKK21zZ3N0ciAi4KS14KWA4KSoIOCkleCljeCksuClgOCkqOCkheCkqiDgpKjgpYvgpILgpKbgpYDgpJXgpLDgpL/gpKTgpL4g4KSu4KWH4KSu4KSw4KWAIOCkheCkquClguCksOClgCIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjI5MQorbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBjbGVhbnVwIGVudHJ5IHdpdGggbWFueSBhcmd1bWVudHMiCittc2dzdHIgIuCkrOCkueClgeCkquCksOCljeCkr+CkvuCkr+CkvuCkguCkuOCkueCkv+CkpCDgpKjgpLXgpYDgpKgg4KSV4KWN4KSy4KWA4KSo4KSF4KSqIOCkqOCli+CkguCkpuClgOCkleCksOCkv+CkpOCkviDgpK7gpYfgpK7gpLDgpYAg4KSF4KSq4KWC4KSw4KWAIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MzUyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogZXJyb3I6ICVzXG4iCittc2dzdHIgIiIKKyIlczog4KS44KSr4KS+4KSIIOCkleCksOCkpOCkvuCkqOCkviDgpJrgpYLgpJU6XG4iCisiICVzXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzozOTMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiB3YXJuaW5nOiAlc1xuIgorbXNnc3RyICIiCisiJXM6IOCkuOCkq+CkvuCkiCDgpJXgpLDgpKTgpL7gpKjgpL4g4KSa4KWC4KSVOlxuIgorIiAlc1xuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6NDE2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczolczolZDogaW50ZXJuYWwgZXJyb3I6ICVzXG4iCittc2dzdHIgIiVzOiVkOiDgpIXgpILgpKTgpLDgpY3gpJfgpKQg4KSk4KWN4KSw4KWB4KSf4KWAIGAlcydcbiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgaXMgbWlzc2luZyIKK21zZ3N0ciAiJXMg4KS54KSw4KS14KSy4KWHIOCkhuCkueClhyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiclLjUwcycgaXMgbm90IGFsbG93ZWQgZm9yICVzIgorbXNnc3RyICIlcyDgpLjgpL7gpKDgpYAgYCUuKnMnIOCksuCkviDgpIXgpKjgpYHgpK7gpKTgpYAg4KSo4KS+4KS54KWAIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo3MworIywgYy1mb3JtYXQKK21zZ2lkICJqdW5rIGFmdGVyICVzIgorbXNnc3RyICIlcyDgpKjgpILgpKTgpLAg4KSF4KSh4KSX4KSzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo4NworIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHBhY2thZ2UgbmFtZSAoJS4yNTBzKSIKK21zZ3N0ciAi4KSq4KWF4KSV4KWH4KSc4KSa4KWHIOCkqOCkvuCktSDgpIXgpK/gpYvgpJfgpY3gpK8gKCUuMjUwcykiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJlbXB0eSBmaWxlIGRldGFpbHMgZmllbGQgYCVzJyIKK21zZ3N0ciAi4KSr4KS+4KSH4KSy4KSa4KWHIOCkteCkv+CkteCksOCkoyDgpJXgpY3gpLfgpYfgpKTgpY3gpLAg4KSw4KS/4KSV4KS+4KSu4KWHIGAlcyciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjEwNQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGRldGFpbHMgZmllbGQgYCVzJyBub3QgYWxsb3dlZCBpbiBzdGF0dXMgZmlsZSIKK21zZ3N0ciAi4KS44KSm4KWN4KSv4KS44KWN4KSl4KS/4KSk4KWA4KSm4KSw4KWN4KS24KSVIOCkq+CkvuCkh+CksuCkruCkp+ClhyDgpKvgpL7gpIfgpLIg4KS14KS/4KS14KSw4KSjIOCkleCljeCkt+Clh+CkpOCljeCksCBgJXMnIOCksuCkviDgpIXgpKjgpYHgpK7gpKTgpYAg4KSo4KS+4KS54KWAIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidG9vIG1hbnkgdmFsdWVzIGluIGZpbGUgZGV0YWlscyBmaWVsZCBgJXMnIChjb21wYXJlZCB0byBvdGhlcnMpIgorbXNnc3RyICLgpKvgpL7gpIfgpLIg4KS14KS/4KS14KSw4KSjIOCkleCljeCkt+Clh+CkpOCljeCksCBgJXMnIOCkruCkp+ClhyDgpJbgpYHgpKrgpJog4KSF4KSn4KS/4KSVIOCkruClguCksuCljeCkr+ClhyAo4KSH4KSk4KSw4KS+4KSC4KSa4KWN4KSv4KS+IOCkpOClgeCksuCkqOClh+CkpCkiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjEzMgorIywgYy1mb3JtYXQKK21zZ2lkICJ0b28gZmV3IHZhbHVlcyBpbiBmaWxlIGRldGFpbHMgZmllbGQgYCVzJyAoY29tcGFyZWQgdG8gb3RoZXJzKSIKK21zZ3N0ciAi4KSr4KS+4KSH4KSyIOCkteCkv+CkteCksOCkoyDgpJXgpY3gpLfgpYfgpKTgpY3gpLAgYCVzJyDgpK7gpKfgpYcg4KSW4KWB4KSq4KSaIOCkleCkruClgCDgpK7gpYLgpLLgpY3gpK/gpYcgKOCkh+CkpOCksOCkvuCkguCkmuCljeCkr+CkviDgpKTgpYHgpLLgpKjgpYfgpKQpIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxNTQKK21zZ2lkICJ5ZXMvbm8gaW4gYm9vbGVhbiBmaWVsZCIKK21zZ3N0ciAi4KSs4KWB4KSy4KS/4KSv4KSoIOCkleCljeCkt+Clh+CkpOCljeCksOCkvuCkruCkp+ClhyDgpLngpYsv4KSo4KS+4KS54KWAIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxNzQKK21zZ2lkICJ3b3JkIGluIGBwcmlvcml0eScgZmllbGQiCittc2dzdHIgIiBg4KSF4KSX4KWN4KSw4KSV4KWN4KSw4KSuJyDgpJXgpY3gpLfgpYfgpKTgpY3gpLDgpL7gpK7gpKfgpYcg4KS24KSs4KWN4KSmIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxODYKK21zZ2lkICJ2YWx1ZSBmb3IgYHN0YXR1cycgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICLgpK/gpYfgpKXgpYDgpLIg4KS44KSC4KSm4KSw4KWN4KSt4KS+4KSkIGDgpLjgpKbgpY3gpK/gpLjgpY3gpKXgpL/gpKTgpYAnIOCkleCljeCkt+Clh+CkpOCljeCksOCkvuCkuOCkvuCkoOClgCDgpK7gpYLgpLLgpY3gpK8g4KSg4KSw4KS14KSj4KWN4KSv4KS+4KSa4KWAIOCkheCkqOClgeCkruCkpOClgCDgpKjgpL7gpLngpYAiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE5MQorbXNnaWQgImZpcnN0ICh3YW50KSB3b3JkIGluIGBzdGF0dXMnIGZpZWxkIgorbXNnc3RyICJg4KS44KSm4KWN4KSv4KS44KWN4KSl4KS/4KSk4KWAJyDgpJXgpY3gpLfgpYfgpKTgpY3gpLDgpL7gpKTgpYDgpLIg4KSq4KS54KS/4KSy4KS+ICjgpJzgpLDgpYHgpLApIOCktuCkrOCljeCkpiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTk0Cittc2dpZCAic2Vjb25kIChlcnJvcikgd29yZCBpbiBgc3RhdHVzJyBmaWVsZCIKK21zZ3N0ciAiYOCkuOCkpuCljeCkr+CkuOCljeCkpeCkv+CkpOClgCcg4KSV4KWN4KS34KWH4KSk4KWN4KSw4KS+4KSk4KWA4KSyIOCkpuClgeCkuOCksOCkviAo4KSa4KWC4KSVKSDgpLbgpKzgpY3gpKYiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE5NworbXNnaWQgInRoaXJkIChzdGF0dXMpIHdvcmQgaW4gYHN0YXR1cycgZmllbGQiCittc2dzdHIgImDgpLjgpKbgpY3gpK/gpLjgpY3gpKXgpL/gpKTgpYAnIOCkleCljeCkt+Clh+CkpOCljeCksOCkvuCkpOClgOCksiDgpKTgpL/gpLjgpLDgpL4gKOCkuOCkpuCljeCkr+CkuOCljeCkpeCkv+CkpOClgOCkpuCksOCljeCktuCklSkg4KS24KSs4KWN4KSmIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyMDcKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImVycm9yIGluIFZlcnNpb24gc3RyaW5nIGAlLjI1MHMnOiAlLjI1MHMiCittc2dpZCAiZXJyb3IgaW4gVmVyc2lvbiBzdHJpbmcgJyUuMjUwcyciCittc2dzdHIgIuCkhuCkteClg+CkpOCljeCkpOClgCDgpLbgpY3gpLDgpYPgpILgpJbgpLLgpL4gYCUuMjUwcyc6ICUuMjUwcyDgpK7gpKfgpYcg4KSk4KWN4KSw4KWB4KSf4KWAIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyMTgKK21zZ2lkICJvYnNvbGV0ZSBgUmV2aXNpb24nIG9yIGBQYWNrYWdlLVJldmlzaW9uJyBmaWVsZCB1c2VkIgorbXNnc3RyICLgpJXgpL7gpLLgpKzgpL7gpLngpY3gpK8gYOCkieCknOCks+Cko+ClgCcg4KSV4KS/4KSC4KS14KS+IGDgpKrgpYXgpJXgpYfgpJwt4KSJ4KSc4KSz4KSj4KWAJyDgpJXgpY3gpLfgpYfgpKTgpY3gpLAg4KS14KS+4KSq4KSw4KSy4KWHIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyMzUKK21zZ2lkICJ2YWx1ZSBmb3IgYGNvbmZpZy12ZXJzaW9uJyBmaWVsZCBub3QgYWxsb3dlZCBpbiB0aGlzIGNvbnRleHQiCittc2dzdHIgIuCkr+Clh+CkpeClgOCksiDgpLjgpILgpKbgpLDgpY3gpK3gpL7gpKQgYOCkteCkv+CkqOCljeCkr+CkvuCkuC3gpIbgpLXgpYPgpKTgpY3gpKTgpYAnIOCkleCljeCkt+Clh+CkpOCljeCksOCkvuCkuOCkvuCkoOClgCDgpK7gpYLgpLLgpY3gpK8g4KSg4KSw4KS14KSj4KWN4KSv4KS+4KSa4KWAIOCkheCkqOClgeCkruCkpOClgCDgpKjgpL7gpLngpYAiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjI0MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZXJyb3IgaW4gQ29uZmlnLVZlcnNpb24gc3RyaW5nIGAlLjI1MHMnOiAlLjI1MHMiCittc2dpZCAiZXJyb3IgaW4gQ29uZmlnLVZlcnNpb24gc3RyaW5nICclLjI1MHMnIgorbXNnc3RyICLgpLXgpL/gpKjgpY3gpK/gpL7gpLgt4KSG4KS14KWD4KSk4KWN4KSk4KWAIOCktuCljeCksOClg+CkguCkluCksuCkviBgJS4yNTBzJzogJS4yNTBzIOCkruCkp+ClhyDgpKTgpY3gpLDgpYHgpJ/gpYAiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjI2NgorIywgYy1mb3JtYXQKK21zZ2lkICJ2YWx1ZSBmb3IgYGNvbmZmaWxlcycgaGFzIG1hbGZvcm1hdHRlZCBsaW5lIGAlLipzJyIKK21zZ3N0ciAiYOCkteCkv+CkqOCljeCkr+CkvuCkuOCkq+CkvuCkiOCksicg4KSa4KWN4KSv4KS+IOCkruClguCksuCljeCkr+CkvuCkruCkp+ClgOCksiDgpJPgpLMg4KSV4KWB4KSw4KWC4KSqIOCkhuCkueClhyBgJS4qcyciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjI4NworIywgYy1mb3JtYXQKK21zZ2lkICJ2YWx1ZSBmb3IgYGNvbmZmaWxlcycgaGFzIGxpbmUgc3RhcnRpbmcgd2l0aCBub24tc3BhY2UgYCVjJyIKK21zZ3N0ciAiYOCkteCkv+CkqOCljeCkr+CkvuCkuOCkq+CkvuCkiOCksicg4KSa4KWN4KSv4KS+IOCkruClguCksuCljeCkr+CkvuCkruCkp+CljeCkr+ClhyDgpLDgpL/gpJXgpY3gpKQg4KSc4KS+4KSX4KWH4KSo4KWHIOCkqCDgpLjgpYHgpLDgpYIg4KS54KWL4KSj4KS+4KSw4KWAIOCkk+CksyDgpIbgpLngpYcgYCVjJyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MzA0Cittc2dpZCAicm9vdCBvciBudWxsIGRpcmVjdG9yeSBpcyBsaXN0ZWQgYXMgYSBjb25mZmlsZSIKK21zZ3N0ciAi4KS14KS/4KSo4KWN4KSv4KS+4KS44KSr4KS+4KSI4KSyIOCkruCljeCkueCko+ClguCkqCDgpK7gpYLgpLIg4KSV4KS/4KSC4KS14KS+IOCksOCkv+CkleCljeCkpCDgpKjgpL/gpLDgpY3gpKbgpYfgpLbgpL/gpJXgpYfgpJrgpYAg4KSo4KWL4KSC4KSmIOCkleClh+CksuClgCDgpIbgpLngpYciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjM2NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgbWlzc2luZyBwYWNrYWdlIG5hbWUsIG9yIGdhcmJhZ2Ugd2hlcmUgcGFja2FnZSBuYW1lIGV4cGVjdGVkIgorbXNnc3RyICJgJXMnIOCkleCljeCkt+Clh+CkpOCljeCksCwg4KSq4KWF4KSV4KWH4KSc4KSa4KWHIOCkqOCkvuCktSDgpJfgpL7gpK/gpKwsIOCkleCkv+CkguCkteCkviDgpKrgpYXgpJXgpYfgpJzgpJrgpY3gpK/gpL4g4KSo4KS+4KS14KS+4KSa4KWN4KSv4KS+IOCkheCkquClh+CkleCljeCkt+Ckv+CkpCDgpKDgpL/gpJXgpL7gpKPgpYAg4KSV4KSa4KSw4KS+IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzozNzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBmaWVsZCwgaW52YWxpZCBwYWNrYWdlIG5hbWUgYCUuMjU1cyc6ICVzIgorbXNnc3RyICJgJXMnIOCkleCljeCkt+Clh+CkpOCljeCksCwg4KSq4KWF4KSV4KWH4KSc4KSa4KWHIOCkqOCkvuCktSDgpIXgpK/gpYvgpJfgpY3gpK8gYCUuMjU1cyc6ICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgYmFkIHZlcnNpb24gcmVsYXRpb25zaGlwICVjJWMiCittc2dzdHIgIiIKKyJgJXMnIOCkleCljeCkt+Clh+CkpOCljeCksCwg4KS44KSC4KSm4KSw4KWN4KStIGAlLjI1NXMnOlxuIgorIiDgpIbgpLXgpYPgpKTgpY3gpKTgpYAg4KSo4KS+4KSk4KWHIOCkluCksOCkvuCkrCAlYyVjIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgYCVjJyBpcyBvYnNvbGV0ZSwgdXNlIGAlYz0nIG9yIGAlYyVjJyBpbnN0ZWFkIgorbXNnc3RyICIiCisiYCVzJyDgpJXgpY3gpLfgpYfgpKTgpY3gpLAsIOCkuOCkguCkpuCksOCljeCkrSBgJS4yNTVzJzpcbiIKKyIgYCVjJyDgpJXgpL7gpLLgpKzgpL7gpLngpY3gpK8g4KSG4KS54KWHLCDgpKTgpY3gpK/gpL7gpI/gpYfgpLXgpJzgpYAgJWM9JyDgpJXgpL/gpILgpLXgpL4gYCVjJWMnIOCkteCkvuCkquCksOCkviIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDIyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOlxuIgorIiBpbXBsaWNpdCBleGFjdCBtYXRjaCBvbiB2ZXJzaW9uIG51bWJlciwgc3VnZ2VzdCB1c2luZyBgPScgaW5zdGVhZCIKK21zZ3N0ciAi4KSG4KS14KWD4KSk4KWN4KSk4KWAIOCkleCljeCksOCkruCkvuCkguCklSDgpKTgpILgpKTgpYvgpKTgpILgpKQg4KSc4KWB4KSz4KSy4KWN4KSv4KS+4KSa4KWHIOCkpuCkv+CkuOCkpOClhywg4KSk4KWN4KSv4KS+4KSP4KWH4KS14KSc4KWAIGA9JyDgpJrgpL4g4KS14KS+4KSq4KSwIOCkuOClgeCkmuCkv+CkpCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDMwCittc2dpZCAiT25seSBleGFjdCB2ZXJzaW9ucyBtYXkgYmUgdXNlZCBmb3IgUHJvdmlkZXMiCittc2dzdHIgIuCkquCljeCksOCli+CkteCljeCkueCkvuCkiOCkoeCljeCkuOCkuOCkvuCkoOClgCDgpKTgpILgpKTgpYvgpKTgpILgpKQg4KSG4KS14KWD4KSk4KWN4KSk4KWN4KSv4KS+4KSaIOCkteCkvuCkquCksOCkvuCkteCljeCkr+CkvuCkpCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDM0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOlxuIgorIiB2ZXJzaW9uIHZhbHVlIHN0YXJ0cyB3aXRoIG5vbi1hbHBoYW51bWVyaWMsIHN1Z2dlc3QgYWRkaW5nIGEgc3BhY2UiCittc2dzdHIgIuCkhuCkteClg+CkpOCljeCkpOClgCDgpK7gpYLgpLLgpY3gpK8g4KSF4KSC4KSVLeCkheCkleCljeCkt+CksOCkvuCkguCktuCkv+CkteCkvuCkryDgpLjgpYHgpLDgpYIg4KS54KWL4KSk4KWH4KSvLCDgpLDgpL/gpJXgpY3gpKQg4KSc4KS+4KSX4KS+IOCkheCkguCkpOCksOCljeCkreClgeCkpCDgpJXgpLDgpKPgpY3gpK/gpL7gpJrgpYcg4KS44KWB4KSa4KS/4KSkIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NTEgbGliL2Rwa2cvZmllbGRzLmM6NDU1CisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzogdmVyc2lvbiBjb250YWlucyBgJWMnIgorbXNnc3RyICJgJXMnIOCkleCljeCkt+Clh+CkpOCljeCksCwg4KS44KSC4KSm4KSw4KWN4KStIGAlLjI1NXMnOiDgpIbgpLXgpYPgpKTgpY3gpKTgpYDgpKQgYCVjJyDgpJrgpL4g4KS44KSu4KS+4KS14KWH4KS2IOCkhuCkueClhyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDU5CisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzogdmVyc2lvbiB1bnRlcm1pbmF0ZWQiCittc2dzdHIgImAlcycg4KSV4KWN4KS34KWH4KSk4KWN4KSwLCDgpLjgpILgpKbgpLDgpY3gpK0gYCUuMjU1cyc6IOCkhuCkteClg+CkpOCljeCkpOClgCDgpIUt4KSw4KS54KS/4KSkIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NjUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzogZXJyb3IgaW4gdmVyc2lvbjogJS4yNTVzIgorbXNnaWQgIiclcycgZmllbGQsIHJlZmVyZW5jZSB0byAnJS4yNTVzJzogZXJyb3IgaW4gdmVyc2lvbiIKK21zZ3N0ciAiYCVzJyDgpJXgpY3gpLfgpYfgpKTgpY3gpLAsIOCkuOCkguCkpuCksOCljeCkrSBgJS4yNTVzJzog4KSG4KS14KWD4KSk4KWN4KSk4KWA4KSkIOCkpOCljeCksOClgeCkn+ClgDogJS4yNTVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBmaWVsZCwgc3ludGF4IGVycm9yIGFmdGVyIHJlZmVyZW5jZSB0byBwYWNrYWdlIGAlLjI1NXMnIgorbXNnc3RyICJgJXMnIOCkleCljeCkt+Clh+CkpOCljeCksCwg4KSq4KWF4KSV4KWH4KScIGAlLjI1NXMnIOCkuOCkguCkpuCksOCljeCkreCkvuCkpCDgpKjgpL/gpK/gpK7gpKzgpL7gpLngpY3gpK8g4KSy4KWH4KSW4KSoIOCkpOCljeCksOClgeCkn+ClgCAiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ4MgorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZXMgKGB8Jykgbm90IGFsbG93ZWQgaW4gJXMgZmllbGQiCittc2dzdHIgIiVzIOCkleCljeCkt+Clh+CkpOCljeCksOCkvuCkpCAoYHwnKSDgpKrgpLDgpY3gpK/gpL7gpK/gpL7gpILgpKjgpL4g4KSF4KSo4KWB4KSu4KSk4KWAIOCkqOCkvuCkueClgCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTM2CisjLCBmdXp6eQorbXNnaWQgInZhbHVlIGZvciBgdHJpZ2dlcnMtcGVuZGluZycgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICLgpK/gpYfgpKXgpYDgpLIg4KS44KSC4KSm4KSw4KWN4KSt4KS+4KSkIGDgpLXgpL/gpKjgpY3gpK/gpL7gpLgt4KSG4KS14KWD4KSk4KWN4KSk4KWAJyDgpJXgpY3gpLfgpYfgpKTgpY3gpLDgpL7gpLjgpL7gpKDgpYAg4KSu4KWC4KSy4KWN4KSvIOCkoOCksOCkteCko+CljeCkr+CkvuCkmuClgCDgpIXgpKjgpYHgpK7gpKTgpYAg4KSo4KS+4KS54KWAIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NDMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImlsbGVnYWwgcGVuZGluZyB0cmlnZ2VyIG5hbWUgYCUuMjU1cyc6ICVzIgorbXNnc3RyICJgJXMnIOCkleCljeCkt+Clh+CkpOCljeCksCwg4KSq4KWF4KSV4KWH4KSc4KSa4KWHIOCkqOCkvuCktSDgpIXgpK/gpYvgpJfgpY3gpK8gYCUuMjU1cyc6ICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHBlbmRpbmcgdHJpZ2dlciBgJS4yNTVzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NjEKKyMsIGZ1enp5Cittc2dpZCAidmFsdWUgZm9yIGB0cmlnZ2Vycy1hd2FpdGVkJyBmaWVsZCBub3QgYWxsb3dlZCBpbiB0aGlzIGNvbnRleHQiCittc2dzdHIgIuCkr+Clh+CkpeClgOCksiDgpLjgpILgpKbgpLDgpY3gpK3gpL7gpKQgYOCkuOCkpuCljeCkr+CkuOCljeCkpeCkv+CkpOClgCcg4KSV4KWN4KS34KWH4KSk4KWN4KSw4KS+4KS44KS+4KSg4KWAIOCkruClguCksuCljeCkryDgpKDgpLDgpLXgpKPgpY3gpK/gpL7gpJrgpYAg4KSF4KSo4KWB4KSu4KSk4KWAIOCkqOCkvuCkueClgCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTY4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJpbGxlZ2FsIHBhY2thZ2UgbmFtZSBpbiBhd2FpdGVkIHRyaWdnZXIgYCUuMjU1cyc6ICVzIgorbXNnc3RyICLgpKzgpYfgpJXgpL7gpK/gpKbgpYfgpLbgpYDgpLAg4KSq4KWF4KSV4KWH4KSc4KSa4KWHIOCkqOCkvuCktSAlZCDgpJPgpLPgpYDgpLXgpLA6ICUuMjUwcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTc0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgYXdhaXRlZCB0cmlnZ2VyIHBhY2thZ2UgYCUuMjU1cyciCittc2dzdHIgIuCkquClheCkleClh+CknCBgJS4yNTBzJ+CkuOCkvuCkoOClgCDgpIXgpLjgpLLgpYfgpLLgpYAg4KSr4KS+4KSH4KSy4KSa4KWAIOCkuOClgeCkmuClgCIKKworIzogbGliL2Rwa2cvZmlsZS5jOjUxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBzb3VyY2UgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAi4KSJ4KSX4KSuIOCkq+CkvuCkh+CksiBgJS4yNTBzJyDgpIngpJjgpKHgpKTgpL4g4KSv4KWH4KSkIOCkqOCkvuCkueClgCIKKworIzogbGliL2Rwa2cvZmlsZS5jOjU1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hhbmdlIG93bmVyc2hpcCBvZiB0YXJnZXQgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAi4KSo4KS14KWA4KSoIOCkoeCkv+CkuOCljeCknyDgpJXgpYngpKjgpKvgpL7gpIfgpLIgYCUuMjUwcyfgpJrgpL4g4KSu4KS+4KSy4KSV4KWA4KS54KSV4KWN4KSVIOCkrOCkpuCksuCko+CljeCkr+CkvuCkuCDgpIXgpLjgpK7gpLDgpY3gpKUg4KSG4KS54KWHICIKKworIzogbGliL2Rwa2cvZmlsZS5jOjU5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IG1vZGUgb2YgdGFyZ2V0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgIuCkqOCkteClgOCkqCDgpKHgpL/gpLjgpY3gpJ8g4KSV4KWJ4KSo4KSr4KS+4KSH4KSyIGAlLjI1MHMn4KSa4KS+IOCkruCli+CkoSDgpKjgpL/gpLbgpY3gpJrgpL/gpKQg4KSV4KSw4KSj4KWN4KSv4KS+4KS4IOCkheCkuOCkruCksOCljeCkpSDgpIbgpLngpYciCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzo4NQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHVubG9jayAlczogJXMiCittc2dpZCAidW5hYmxlIHRvIHVubG9jayAlcyIKK21zZ3N0ciAiJXMg4KSa4KWHIOCkn+CkvuCks+ClhyDgpIngpJjgpKHgpKTgpL4g4KSv4KWH4KSkIOCkqOCkvuCkueClgDogJXMiCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzoxMTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGVjayBmaWxlICclcycgbG9jayBzdGF0dXMiCittc2dzdHIgIuCkieCkl+CkriDgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KSJ4KSY4KSh4KSk4KS+IOCkr+Clh+CkpCDgpKjgpL7gpLngpYAiCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzoxNDYKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInN0YXR1cyBkYXRhYmFzZSBhcmVhIGlzIGxvY2tlZCBieSBhbm90aGVyIHByb2Nlc3MiCittc2dpZCAiJXMgaXMgbG9ja2VkIGJ5IGFub3RoZXIgcHJvY2VzcyIKK21zZ3N0ciAi4KS44KSm4KWN4KSv4KS44KWN4KSl4KS/4KSk4KWAIOCkoeClh+Ckn+CkvuCkrOClh+CkuCDgpJXgpY3gpLfgpYfgpKTgpY3gpLDgpL7gpLLgpL4g4KSH4KSk4KSwIOCkquCljeCksOCkleCljeCksOCkv+Ckr+Clh+CkqOClhyDgpJ/gpL7gpLPgpYcg4KSy4KS+4KS14KSy4KWHIOCkhuCkueClhyAiCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzoxNDgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byB1bmxvY2sgJXM6ICVzIgorbXNnaWQgInVuYWJsZSB0byBsb2NrICVzIgorbXNnc3RyICIlcyDgpJrgpYcg4KSf4KS+4KSz4KWHIOCkieCkmOCkoeCkpOCkviDgpK/gpYfgpKQg4KSo4KS+4KS54KWAOiAlcyIKKworIzogbGliL2Rwa2cvbG9nLmM6NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGRuJ3Qgb3BlbiBsb2cgYCVzJzogJXNcbiIKK21zZ3N0ciAi4KSo4KWL4KSC4KSmIGAlcyc6ICVzIOCkieCkmOCkoeCkpOCkviDgpIbgpLLgpYAg4KSo4KS+4KS54KWAIFxuIgorCisjOiBsaWIvZHBrZy9sb2cuYzo4NQorbXNnaWQgIjxwYWNrYWdlIHN0YXR1cyBhbmQgcHJvZ3Jlc3MgZmlsZSBkZXNjcmlwdG9yPiIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9sb2cuYzoxMTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSB0byBzdGF0dXMgZmQgJWQiCittc2dzdHIgImAlLjI1MHMnIOCkmuClgCDgpLjgpYHgpKfgpL7gpLDgpL/gpKQg4KS44KWN4KSl4KS/4KSk4KWAIOCksuCkv+CkueCkv+CkpOCkviDgpK/gpYfgpKQg4KSo4KS+4KS54KWAIgorCisjOiBsaWIvZHBrZy9tbGliLmM6NDQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAibWFsbG9jIGZhaWxlZCAoJXp1IGJ5dGVzKSIKK21zZ3N0ciAi4KSw4KS/4KSF4KSy4KSy4KWL4KWF4KSVIOCkheCkr+CktuCkuOCljeCkteClgCAoJWxkIOCkrOCkvuCkh+Ckn+CljeCkuCkiCisKKyM6IGxpYi9kcGtnL21saWIuYzo1OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAicmVhbGxvYyBmYWlsZWQgKCV6dSBieXRlcykiCittc2dzdHIgIuCksOCkv+CkheCksuCksuCli+ClheCklSDgpIXgpK/gpLbgpLjgpY3gpLXgpYAgKCVsZCDgpKzgpL7gpIfgpJ/gpY3gpLgpIgorCisjOiBsaWIvZHBrZy9tbGliLmM6NzIgbGliL2Rwa2cvbWxpYi5jOjkwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNzcKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzozMzQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMDcKKyMsIGZ1enp5Cittc2dpZCAiZmFpbGVkIHRvIGFsbG9jYXRlIG1lbW9yeSIKK21zZ3N0ciAi4KSo4KS/4KSw4KWN4KSm4KWH4KS24KS/4KSV4KS+IOCkrOCkqOCkteCkpOCkviDgpIbgpLLgpYAg4KSo4KS+4KS54KWAIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBkdXAgZm9yIHN0ZCVzIgorbXNnc3RyICLgpI/gpLjgpJ/gpYDgpKHgpYAlcyDgpLjgpL7gpKDgpYAg4KSh4KWA4KSv4KWB4KSq4KWAIOCkleCksOCko+ClhyDgpIXgpK/gpLbgpLjgpY3gpLXgpYAiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGR1cCBmb3IgZmQgJWQiCittc2dzdHIgIuCkj+ClnuCkoeClgCAlZCDgpLjgpL7gpKDgpYAg4KSh4KWA4KSv4KWB4KSq4KWAIOCkleCksOCko+ClhyDgpIXgpK/gpLbgpLjgpY3gpLXgpYAiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMDkKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHBpcGUiCittc2dzdHIgIuCkquCkvuCkh+CkqiDgpKzgpKjgpLXgpKPgpYcg4KSF4KSv4KS24KS44KWN4KS14KWAIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTE3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJlcnJvciB3cml0aW5nIHRvICclcyciCittc2dzdHIgImAlcycg4KSy4KS/4KS54KS/4KSk4KS+4KSo4KS+IOCkpOCljeCksOClgeCkn+ClgCIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBmaWxlZGVzY3JpcHRvciBmbGFncyBmb3IgJS4yNTBzIgorbXNnc3RyICIlLjI1MHMg4KS44KS+4KSg4KWAIOCkq+CkvuCkiOCksuCkoeClgOCkuOCljeCkleCljeCksOCkv+CkquCljeCkn+CksCDgpKvgpY3gpLLgpYXgpJcg4KS14KS+4KSa4KSj4KWHIOCknOCkruCkpCDgpKjgpL7gpLngpYAiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMjYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNldCBjbG9zZS1vbi1leGVjIGZsYWcgZm9yICUuMjUwcyIKK21zZ3N0ciAiJS4yNTBzIOCkuOCkvuCkoOClgCDgpJXgpY3gpLLgpYvgpJwt4KSR4KSoLeCkh+CkheClh+CkleCljeCkuOCkh+CkuOClgCDgpKvgpY3gpLLgpYXgpJcg4KSo4KS/4KS24KWN4KSa4KS/4KSkIOCkleCksOCko+ClhyDgpJzgpK7gpKQg4KSo4KS+4KS54KWAIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6NjMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImNvbmZpZ3VyYXRpb24gZXJyb3I6ICVzOiVkOiAlcyIKK21zZ3N0ciAi4KS44KSC4KSw4KSa4KSo4KS+IOCkpOCljeCksOClgeCkn+ClgDogJXMg4KSa4KWHIOCkruClguCksuCljeCkryDgpIbgpLXgpLbgpY3gpK/gpJUiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzo3NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gY29uZmlndXJhdGlvbiBmaWxlICclLjI1NXMnIGZvciByZWFkaW5nOiAlcyIKK21zZ3N0ciAi4KS44KSC4KSw4KSa4KSo4KS+IOCkq+CkvuCkiOCksiBgJS4yNTVzJyDgpLXgpL7gpJrgpKjgpL7gpLjgpL7gpKDgpYAg4KSJ4KSY4KSh4KSk4KS+IOCkhuCksuClgCDgpKjgpL7gpLngpYAiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5iYWxhbmNlZCBxdW90ZXMgaW4gJyVzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTE3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiAnJXMnIgorbXNnc3RyICLgpIXgpKrgpLDgpL/gpJrgpYDgpKQg4KSq4KSw4KWN4KSv4KS+4KSvIGAlcyciCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiclcycgbmVlZHMgYSB2YWx1ZSIKK21zZ3N0ciAiLS0lcyDgpKrgpLDgpY3gpK/gpL7gpK8g4KSu4KWC4KSy4KWN4KSvIOCkp+CkvuCksOCkoyDgpJXgpLDgpKTgpYsiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMjcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiclcycgZG9lcyBub3QgdGFrZSBhIHZhbHVlIgorbXNnc3RyICItLSVzIOCkquCksOCljeCkr+CkvuCkryDgpK7gpYLgpLLgpY3gpK8g4KSn4KS+4KSw4KSjIOCkleCksOCkpCDgpKjgpL7gpLngpYAiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVhZCBlcnJvciBpbiBjb25maWd1cmF0aW9uIGZpbGUgYCUuMjU1cyciCittc2dzdHIgImAlLjI1NXMnIOCkuOCkguCksOCkmuCkqOCkviDgpKvgpL7gpIjgpLLgpK7gpKfgpYcg4KS14KS+4KSa4KSoIOCkpOCljeCksOClgeCkn+ClgCIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nIGNvbmZpZ3VyYXRpb24gZmlsZSBgJS4yNTVzJyIKK21zZ3N0ciAiYCUuMjU1cycg4KS44KSC4KSw4KSa4KSo4KS+IOCkq+CkvuCkiOCksiDgpKzgpILgpKYg4KSV4KSw4KSk4KS+4KSo4KS+IOCkpOCljeCksOClgeCkn+ClgCIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjE3MAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igb3BlbmluZyBjb25maWd1cmF0aW9uIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICJgJS4yNTVzJyDgpLjgpILgpLDgpJrgpKjgpL4g4KSr4KS+4KSI4KSyIOCkrOCkguCkpiDgpJXgpLDgpKTgpL7gpKjgpL4g4KSk4KWN4KSw4KWB4KSf4KWAIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjI4CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gb3B0aW9uIC0tJXMiCittc2dzdHIgIuCkheCkquCksOCkv+CkmuCkv+CkpCDgpKrgpLDgpY3gpK/gpL7gpK8gLS0lcyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjIzMgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG9wdGlvbiB0YWtlcyBhIHZhbHVlIgorbXNnc3RyICItLSVzIOCkquCksOCljeCkr+CkvuCkryDgpK7gpYLgpLLgpY3gpK8g4KSn4KS+4KSw4KSjIOCkleCksOCkpOCliyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjIzNworIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG9wdGlvbiBkb2VzIG5vdCB0YWtlIGEgdmFsdWUiCittc2dzdHIgIi0tJXMg4KSq4KSw4KWN4KSv4KS+4KSvIOCkruClguCksuCljeCkryDgpKfgpL7gpLDgpKMg4KSV4KSw4KSkIOCkqOCkvuCkueClgCIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI0NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiAtJWMiCittc2dzdHIgIuCkheCkquCksOCkv+CkmuCkv+CkpCDgpKrgpLDgpY3gpK/gpL7gpK8gLSVjIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjUwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0lYyBvcHRpb24gdGFrZXMgYSB2YWx1ZSIKK21zZ3N0ciAiLSVjIOCkquCksOCljeCkr+CkvuCkryDgpK7gpYLgpLLgpY3gpK8g4KSn4KS+4KSw4KSjIOCkleCksOCkpOCliyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI1OAorIywgYy1mb3JtYXQKK21zZ2lkICItJWMgb3B0aW9uIGRvZXMgbm90IHRha2UgYSB2YWx1ZSIKK21zZ3N0ciAiLSVjIOCkquCksOCljeCkr+CkvuCkryDgpK7gpYLgpLLgpY3gpK8g4KSn4KS+4KSw4KSjIOCkleCksOCkpCDgpKjgpL7gpLngpYAiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyNzEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIm9ic29sZXRlIG9wdGlvbiAnLS0lcydcbiIKK21zZ3N0ciAi4KSk4KS+4KSV4KS/4KSmOiDgpIXgpKrgpY3gpLDgpJrgpLLgpL/gpKQg4KSq4KSw4KWN4KSv4KS+4KSvIGAtLSVzJ1xuIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6Mjg3CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZsaWN0aW5nIGFjdGlvbnMgLSVjICgtLSVzKSBhbmQgLSVjICgtLSVzKSIKK21zZ3N0ciAiIOCkquCksOCkuOCljeCkquCksOCkteCkv+CksOClgeCkpuCljeCkpyDgpJXgpYPgpKTgpYAgLSVjICgtLSVzKSDgpIbgpKPgpL8gLSVjICgtLSVzKSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHZhbHVlIGZvciBgJXMnIGZpZWxkIgorbXNnc3RyICJgJXMnIOCkleCljeCkt+Clh+CkpOCljeCksOCkvuCkuOCkvuCkoOClgCDgpK7gpYLgpLLgpY3gpK8g4KSq4KWB4KSo4KSw4KS+4KS14KWD4KSk4KWN4KSk4KWAIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjE0NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1c2VyLWRlZmluZWQgZmllbGQgbmFtZSBgJS4qcycgdG9vIHNob3J0IgorbXNnc3RyICLgpLXgpL7gpKrgpLDgpJXgpLDgpY3gpKTgpY3gpK/gpL7gpKjgpYcg4KSg4KSw4KS14KS/4KSy4KWH4KWH4KSy4KWHIOCkleCljeCkt+Clh+CkpOCljeCksCDgpKjgpL7gpLUgYCUuKnMnIOCkq+CkvuCksOCkmiDgpJvgpYvgpJ/gpYciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MTUyCisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSB2YWx1ZSBmb3IgdXNlci1kZWZpbmVkIGZpZWxkIGAlLipzJyIKK21zZ3N0ciAi4KS14KS+4KSq4KSw4KSV4KSw4KWN4KSk4KWN4KSv4KS+4KSo4KWHIOCkoOCksOCkteCkv+CksuClh+Clh+CksuCljeCkr+CkviDgpJXgpY3gpLfgpYfgpKTgpY3gpLDgpL7gpKQgYCUuKnMnIOCkruClguCksuCljeCkryDgpKrgpYHgpKjgpLDgpL7gpLXgpYPgpKTgpY3gpKTgpYAiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjA3Cittc2dpZCAiQ29uZmlndXJlZC1WZXJzaW9uIGZvciBwYWNrYWdlIHdpdGggaW5hcHByb3ByaWF0ZSBTdGF0dXMiCittc2dzdHIgIuCkquClheCkleClh+CknOCkmuClgCDgpLjgpILgpLDgpJrgpL/gpKQg4KSG4KS14KWD4KSk4KWN4KSk4KWAIOCkheCkqOClgeCkmuCkv+CkpCDgpLjgpY3gpKXgpL/gpKTgpYDgpKQiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjE4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgaGFzIHN0YXR1cyAlcyBidXQgdHJpZ2dlcnMgYXJlIGF3YWl0ZWQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMjIKK21zZ2lkICJwYWNrYWdlIGhhcyBzdGF0dXMgdHJpZ2dlcnMtYXdhaXRlZCBidXQgbm8gdHJpZ2dlcnMgYXdhaXRlZCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjIyOAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGhhcyBzdGF0dXMgJXMgYnV0IHRyaWdnZXJzIGFyZSBwZW5kaW5nIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjMyCittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzIHRyaWdnZXJzLXBlbmRpbmcgYnV0IG5vIHRyaWdnZXJzIHBlbmRpbmciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyNDIKK21zZ2lkICJQYWNrYWdlIHdoaWNoIGluIHN0YXRlIG5vdC1pbnN0YWxsZWQgaGFzIGNvbmZmaWxlcywgZm9yZ2V0dGluZyB0aGVtIgorbXNnc3RyICLgpIXgpKfgpL/gpLfgpY3gpKDgpL7gpKrgpKgg4KSoIOCkleClh+CksuClh+CksuCljeCkr+CkviDgpKrgpYXgpJXgpYfgpJzgpK7gpKfgpYcg4KSV4KWL4KWF4KSo4KWN4KSr4KSr4KS+4KSH4KSyIOCkhuCkueClh+CkpCwg4KSk4KWN4KSv4KS+4KSC4KSa4KWN4KSv4KS+4KSV4KSh4KWHIOCkpuClgeCksOCljeCksuCkleCljeCktyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozMzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gcGFja2FnZSBpbmZvIGZpbGUgYCUuMjU1cycgZm9yIHJlYWRpbmciCittc2dzdHIgIuCkquClheCkleClh+CknCDgpIfgpKjgpKvgpYsg4KSr4KS+4KSI4KSyIGAlLjI1NXMnIOCkteCkvuCkmuCkqOCkvuCkuOCkvuCkoOClgCDgpIngpJjgpKHgpKTgpL4g4KSG4KSy4KWAIOCkqOCkvuCkueClgCIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozNDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2FuJ3Qgc3RhdCBwYWNrYWdlIGluZm8gZmlsZSBgJS4yNTVzJyIKK21zZ3N0ciAi4KSq4KWF4KSV4KWH4KScIOCkh+CkqOCkq+CliyDgpKvgpL7gpIjgpLIgYCUuMjU1cycg4KS44KWN4KSf4KWF4KSfIOCkleCksOCkpOCkviDgpK/gpYfgpKQg4KSo4KS+4KS54KWAIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjM0NworIywgYy1mb3JtYXQKK21zZ2lkICJjYW4ndCBtbWFwIHBhY2thZ2UgaW5mbyBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICLgpKrgpYXgpJXgpYfgpJwg4KSH4KSo4KSr4KWLIOCkq+CkvuCkiOCksiBgJS4yNTVzJyDgpI/gpK7gpK7gpYXgpKog4KSV4KSw4KSk4KS+IOCkr+Clh+CkpCDgpKjgpL7gpLngpYAiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzUyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW4ndCBzdGF0IHBhY2thZ2UgaW5mbyBmaWxlIGAlLjI1NXMnIgorbXNnaWQgInJlYWRpbmcgcGFja2FnZSBpbmZvIGZpbGUgJyUuMjU1cyciCittc2dzdHIgIuCkquClheCkleClh+CknCDgpIfgpKjgpKvgpYsg4KSr4KS+4KSI4KSyIGAlLjI1NXMnIOCkuOCljeCkn+ClheCknyDgpJXgpLDgpKTgpL4g4KSv4KWH4KSkIOCkqOCkvuCkueClgCIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNsb3NlIGFmdGVyIHJlYWQ6IGAlLjI1NXMnIgorbXNnc3RyICLgpLXgpL7gpJrgpKjgpL7gpKjgpILgpKTgpLAg4KSs4KSC4KSmIOCkleCksOCkpOCkviDgpIbgpLLgpYcg4KSo4KS+4KS54KWAOiBgJS4yNTVzJyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiRU9GIGFmdGVyIGZpZWxkIG5hbWUgYCUuKnMnIgorbXNnc3RyICLgpJXgpY3gpLfgpYfgpKTgpY3gpLAg4KSo4KS+4KS1IGAlLipzJyDgpKjgpILgpKTgpLAg4KSH4KST4KSP4KSrIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQwNworIywgYy1mb3JtYXQKK21zZ2lkICJuZXdsaW5lIGluIGZpZWxkIG5hbWUgYCUuKnMnIgorbXNnc3RyICLgpJXgpY3gpLfgpYfgpKTgpY3gpLAg4KSo4KS+4KS1IGAlLipzJyDgpK7gpKfgpYcg4KSo4KWN4KSv4KWC4KSy4KS+4KSH4KSoIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQxMAorIywgYy1mb3JtYXQKK21zZ2lkICJNU0RPUyBFT0YgKF5aKSBpbiBmaWVsZCBuYW1lIGAlLipzJyIKK21zZ3N0ciAi4KSV4KWN4KS34KWH4KSk4KWN4KSwIOCkqOCkvuCktSBgJS4qcycg4KSu4KSn4KWHIOCkj+CkruCkj+CkuOCkoeCli+ClheCkuCDgpIfgpJPgpI/gpKsgKF5aKSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmllbGQgbmFtZSBgJS4qcycgbXVzdCBiZSBmb2xsb3dlZCBieSBjb2xvbiIKK21zZ3N0ciAi4KSV4KWN4KS34KWH4KSk4KWN4KSwIOCkqOCkvuCktSBgJS4qcycg4KSo4KSC4KSk4KSwIOCkleCli+CksuCkqCDgpIXgpLjgpKPgpYcg4KSG4KS14KS24KWN4KSv4KSVIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQyNQorIywgYy1mb3JtYXQKK21zZ2lkICJFT0YgYmVmb3JlIHZhbHVlIG9mIGZpZWxkIGAlLipzJyAobWlzc2luZyBmaW5hbCBuZXdsaW5lKSIKK21zZ3N0ciAiYCUuKnMnIOCkleCljeCkt+Clh+CkpOCljeCksOCkvuCkmuCljeCkr+CkviDgpK7gpYLgpLLgpY3gpK/gpL7gpKrgpYHgpLDgpY3gpLXgpYAg4KSH4KST4KSP4KSrICjgpIXgpILgpKTgpL/gpK4g4KSo4KWN4KSv4KWC4KSy4KS+4KSH4KSoIOCkl+CkvuCkr+CkrCkiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDI5CisjLCBjLWZvcm1hdAorbXNnaWQgIk1TRE9TIEVPRiBjaGFyIGluIHZhbHVlIG9mIGZpZWxkIGAlLipzJyAobWlzc2luZyBuZXdsaW5lPykiCittc2dzdHIgImAlLipzJyDgpJXgpY3gpLfgpYfgpKTgpY3gpLDgpL7gpJrgpY3gpK/gpL4g4KSu4KWC4KSy4KWN4KSv4KS+4KSkIOCkj+CkruCkj+CkuOCkoeCli+ClheCkuCDgpIfgpJPgpI/gpKsg4KSV4KWF4KSwICjgpKjgpY3gpK/gpYLgpLLgpL7gpIfgpKgg4KSX4KS+4KSv4KSsPykiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDQwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJuZXdsaW5lIGluIGZpZWxkIG5hbWUgYCUuKnMnIgorbXNnaWQgImJsYW5rIGxpbmUgaW4gdmFsdWUgb2YgZmllbGQgJyUuKnMnIgorbXNnc3RyICLgpJXgpY3gpLfgpYfgpKTgpY3gpLAg4KSo4KS+4KS1IGAlLipzJyDgpK7gpKfgpYcg4KSo4KWN4KSv4KWC4KSy4KS+4KSH4KSoIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQ2MQorIywgYy1mb3JtYXQKK21zZ2lkICJFT0YgZHVyaW5nIHZhbHVlIG9mIGZpZWxkIGAlLipzJyAobWlzc2luZyBmaW5hbCBuZXdsaW5lKSIKK21zZ3N0ciAiYCUuKnMnIOCkleCljeCkt+Clh+CkpOCljeCksOCkvuCkmuCljeCkr+CkviDgpK7gpYLgpLLgpY3gpK/gpL7gpKbgpLDgpK7gpY3gpK/gpL7gpKgg4KSH4KST4KSP4KSrICjgpIXgpILgpKTgpL/gpK4g4KSo4KWN4KSv4KWC4KSy4KS+4KSH4KSoIOCkl+CkvuCkr+CkrCkiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NTQ2Cittc2dpZCAic2V2ZXJhbCBwYWNrYWdlIGluZm8gZW50cmllcyBmb3VuZCwgb25seSBvbmUgYWxsb3dlZCIKK21zZ3N0ciAi4KSF4KSo4KWH4KSVIOCkquClheCkleClh+CknCDgpIfgpKjgpKvgpYsg4KSo4KWL4KSC4KSm4KWAIOCkhuCkouCks+CksuCljeCkr+Ckviwg4KSr4KSV4KWN4KSkIOCkj+CkleCkvuCksuCkvuCkmiDgpIXgpKjgpYHgpK7gpKTgpYAiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NTcyCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHBhY2thZ2UgaW5mb3JtYXRpb24gaW4gYCUuMjU1cyciCittc2dzdHIgImAlLjI1NXMnIOCkruCkp+ClhyDgpKrgpYXgpJXgpYfgpJzgpJrgpYAg4KSu4KS+4KS54KS/4KSk4KWAIOCkqOCkvuCkueClgCIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6NDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJwYXJzaW5nIGZpbGUgJyUuMjU1cycgbmVhciBsaW5lICVkIHBhY2thZ2UgJyUuMjU1cyc6XG4iCisiICUuMjU1cyIKK21zZ3N0ciAiJXMsIGAlLjI1NXMnIOCkq+CkvuCkr+CksuClgOCkpCAgJWQg4KST4KSz4KWA4KSc4KS14KSzIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzo0OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorInBhcnNpbmcgZmlsZSAnJS4yNTVzJyBuZWFyIGxpbmUgJWQ6XG4iCisiICUuMjU1cyIKK21zZ3N0ciAiJXMsIGAlLjI1NXMnIOCkq+CkvuCkr+CksuClgOCkpCAgJWQg4KST4KSz4KWA4KSc4KS14KSzIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoxMjUKK21zZ2lkICJtYXkgbm90IGJlIGVtcHR5IHN0cmluZyIKK21zZ3N0ciAi4KSw4KS/4KSV4KS+4KSu4KWAIOCktuCljeCksOClg+CkguCkluCksuCkviDgpKjgpLjgpL7gpLXgpYAiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjEyNworIywgZnV6enkKKyN8IG1zZ2lkICJtdXN0IHN0YXJ0IHdpdGggYW4gYWxwaGFudW1lcmljIgorbXNnaWQgIm11c3Qgc3RhcnQgd2l0aCBhbiBhbHBoYW51bWVyaWMgY2hhcmFjdGVyIgorbXNnc3RyICLgpIXgpILgpJUt4KSF4KSV4KWN4KS34KSw4KS+4KSo4KWHIOCkuOClgeCksOClgeCkteCkvuCkpCDgpLngpYvgpKPgpYcg4KSG4KS14KS24KWN4KSv4KSVIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoxMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2hhcmFjdGVyIGAlYycgbm90IGFsbG93ZWQgKG9ubHkgbGV0dGVycywgZGlnaXRzIGFuZCBjaGFyYWN0ZXJzIGAlcycpIgorbXNnc3RyICLgpJrgpL/gpKjgpY3gpLkgYCVjJyDgpLLgpL4g4KSF4KSo4KWB4KSu4KSk4KWAIOCkqOCkvuCkueClgCAo4KSr4KSV4KWN4KSkIOCkheCkleCljeCkt+CksOClhywg4KSF4KSC4KSVIOCktSDgpJrgpL/gpKjgpY3gpLngpYcgYCVzJykiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjE3OAorIywgZnV6enkKKyN8IG1zZ2lkICI8bm9uZT4iCittc2djdHh0ICJ2ZXJzaW9uIgorbXNnaWQgIjxub25lPiIKK21zZ3N0ciAiPOCkleCkvuCkueClgCDgpKjgpL7gpLngpYA+IgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyMDkKK21zZ2lkICJ2ZXJzaW9uIHN0cmluZyBpcyBlbXB0eSIKK21zZ3N0ciAi4KSG4KS14KWD4KSk4KWN4KSk4KWAIOCktuCljeCksOClg+CkguCkluCksuCkviDgpLDgpL/gpJXgpL7gpK7gpYAg4KSG4KS54KWHIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyMjQKK21zZ2lkICJ2ZXJzaW9uIHN0cmluZyBoYXMgZW1iZWRkZWQgc3BhY2VzIgorbXNnc3RyICLgpIbgpLXgpYPgpKTgpY3gpKTgpYAg4KS24KWN4KSw4KWD4KSC4KSW4KSy4KWH4KSkIOCkteClh+CkouCksuClh+CksuCljeCkr+CkviDgpLDgpL/gpJXgpY3gpKQg4KSc4KS+4KSX4KS+IOCkhuCkueClh+CkpCIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjMwCittc2dpZCAiZXBvY2ggaW4gdmVyc2lvbiBpcyBub3QgbnVtYmVyIgorbXNnc3RyICLgpIbgpLXgpYPgpKTgpY3gpKTgpYDgpKTgpYDgpLIg4KSH4KSq4KWL4KSaIOCkueCkviDgpIXgpILgpJUg4KSo4KS+4KS54KWAIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyMzIKK21zZ2lkICJub3RoaW5nIGFmdGVyIGNvbG9uIGluIHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICLgpIbgpLXgpYPgpKTgpY3gpKTgpYAg4KSF4KSC4KSV4KS+4KSkIOCkleCli+CksuCkqCDgpKjgpILgpKTgpLAg4KSV4KS+4KS54KWAIOCkqOCkvuCkueClgCIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjQ3Cittc2dpZCAidmVyc2lvbiBudW1iZXIgZG9lcyBub3Qgc3RhcnQgd2l0aCBkaWdpdCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyNTAKKyMsIGZ1enp5CisjfCBtc2dpZCAibm90aGluZyBhZnRlciBjb2xvbiBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ2lkICJpbnZhbGlkIGNoYXJhY3RlciBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAi4KSG4KS14KWD4KSk4KWN4KSk4KWAIOCkheCkguCkleCkvuCkpCDgpJXgpYvgpLLgpKgg4KSo4KSC4KSk4KSwIOCkleCkvuCkueClgCDgpKjgpL7gpLngpYAiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjI1NAorIywgZnV6enkKKyN8IG1zZ2lkICJub3RoaW5nIGFmdGVyIGNvbG9uIGluIHZlcnNpb24gbnVtYmVyIgorbXNnaWQgImludmFsaWQgY2hhcmFjdGVyIGluIHJldmlzaW9uIG51bWJlciIKK21zZ3N0ciAi4KSG4KS14KWD4KSk4KWN4KSk4KWAIOCkheCkguCkleCkvuCkpCDgpJXgpYvgpLLgpKgg4KSo4KSC4KSk4KSwIOCkleCkvuCkueClgCDgpKjgpL7gpLngpYAiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjI5OSBsaWIvZHBrZy9wYXJzZWhlbHAuYzozMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAibWlzc2luZyAlcyIKK21zZ3N0ciAiJXMg4KSX4KS+4KSv4KSsIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzozMDEgbGliL2Rwa2cvcGFyc2VoZWxwLmM6MzE0CisjLCBjLWZvcm1hdAorbXNnaWQgImVtcHR5IHZhbHVlIGZvciAlcyIKK21zZ3N0ciAiJXMg4KS44KS+4KSg4KWAIOCksOCkv+CkleCljeCkpCDgpK7gpYLgpLLgpY3gpK8iCisKKyM6IGxpYi9kcGtnL3BrZy1mb3JtYXQuYzo4MAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGNoYXJhY3RlciBgJWMnIGluIGZpZWxkIHdpZHRoXG4iCittc2dzdHIgIuCkleCljeCkt+Clh+CkpOCljeCksCDgpLDgpYHgpILgpKbgpYDgpKQgYCVjJyDgpIXgpK/gpYvgpJfgpY3gpK8gXG4iCisKKyM6IGxpYi9kcGtnL3BrZy1mb3JtYXQuYzoxNzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2xvc2luZyBicmFjZSBtaXNzaW5nIGluIGZvcm1hdFxuIgorbXNnc3RyICLgpLjgpILgpLDgpYLgpKog4KSu4KSn4KWHIOCkrOCkguCkpiDgpJXgpLDgpKPgpY3gpK/gpL7gpJrgpL4g4KSs4KWN4KSw4KWH4KS4IOCkl+CkvuCkr+CkrCBcbiIKKworIzogbGliL2Rwa2cvcGtnLXNob3cuYzo0MAorbXNnaWQgIihubyBkZXNjcmlwdGlvbiBhdmFpbGFibGUpIgorbXNnc3RyICIo4KS14KSw4KWN4KSj4KSoIOCkieCkquCksuCkrOCljeCkpyDgpKjgpL7gpLngpYApIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6NTUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpZ25vcmUgc2lnbmFsICVzIGJlZm9yZSBydW5uaW5nICUuMjUwcyIKK21zZ3N0ciAi4KS44KWN4KSV4KWN4KSw4KS/4KSq4KWN4KSfIOCksOCkqCDgpJXgpLDgpKPgpY3gpK/gpL7gpIbgpKfgpYAg4KS44KS/4KSX4KWN4KSo4KSyICVz4KSV4KSh4KWHIOCkpuClgeCksOCljeCksuCkleCljeCktyDgpJXgpLDgpKPgpY3gpK/gpL7gpLgg4KSF4KS44KSu4KSw4KWN4KSlIOCkhuCkueClhyIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjY4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHVuLWNhdGNoaW5nIHNpZ25hbCAlczogJXNcbiIKK21zZ3N0ciAi4KSm4KWL4KS3IOCkheCkqOCkleClheCkmuCkv+CkguCklyDgpLjgpL/gpJfgpY3gpKjgpLIgJXM6ICVzIFxuIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgKHN1YnByb2Nlc3MpOiAlc1xuIgorbXNnc3RyICIlcyAo4KSJ4KSq4KSq4KWN4KSw4KSV4KWN4KSw4KS/4KSv4KS+KTogJXNcbiIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjg5IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo0NTQKK21zZ2lkICJmb3JrIGZhaWxlZCIKK21zZ3N0ciAi4KS14KS/4KS24KS+4KSWIOCkheCkr+CktuCkuOCljeCkteClgCIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjExOQorIywgYy1mb3JtYXQKK21zZ2lkICJzdWJwcm9jZXNzICVzIHJldHVybmVkIGVycm9yIGV4aXQgc3RhdHVzICVkIgorbXNnc3RyICLgpIngpKrgpKrgpY3gpLDgpJXgpY3gpLDgpL/gpK/gpL4gJXMg4KSV4KSh4KWB4KSoIOCkpOCljeCksOClgeCkn+ClgCDgpKjgpL/gpLDgpY3gpJfgpK4g4KS44KWN4KSl4KS/4KSk4KWAICVkIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTI4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJzdWJwcm9jZXNzICVzIHdhcyBpbnRlcnJ1cHRlZCIKK21zZ3N0ciAiJXMg4KS44KS+4KSg4KWAIOCkteCkvuCknyDgpKrgpLngpL7gpKPgpYcg4KSF4KSv4KS24KS44KWN4KS14KWAIOCkneCkvuCksuClhyIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEzMAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic3VicHJvY2VzcyAlcyBraWxsZWQgYnkgc2lnbmFsICglcyklcyIKK21zZ2lkICJzdWJwcm9jZXNzICVzIHdhcyBraWxsZWQgYnkgc2lnbmFsICglcyklcyIKK21zZ3N0ciAi4KSJ4KSq4KSq4KWN4KSw4KSV4KWN4KSw4KS/4KSv4KS+ICVzIOCksuCkviAoJXMpJXMg4KS44KSC4KSV4KWH4KSk4KS+4KSo4KWHIOCkqOCkt+CljeCknyDgpJXgpYfgpLLgpYciCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMzIKK21zZ2lkICIsIGNvcmUgZHVtcGVkIgorbXNnc3RyICIsIOCkl+CkvuCkreCkviDgpIXgpKHgpJfgpLPgpYDgpKQg4KSf4KS+4KSV4KSy4KS+IgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTM0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJzdWJwcm9jZXNzICVzIGZhaWxlZCB3aXRoIHdhaXQgc3RhdHVzIGNvZGUgJWQiCittc2dzdHIgIuCkpeCkvuCkguCkrOCko+ClhyDgpLjgpY3gpKXgpL/gpKTgpYAg4KSV4KWL4KShICVkIOCkqOClgeCkuOCkvuCksCDgpIngpKrgpKrgpY3gpLDgpJXgpY3gpLDgpL/gpK/gpL4gJXMg4KSF4KSv4KS24KS44KWN4KS14KWAIOCkneCkvuCksuClgCAiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxNTEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQ2MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAid2FpdCBmb3Igc3VicHJvY2VzcyAlcyBmYWlsZWQiCittc2dzdHIgIiVzIOCkuOCkvuCkoOClgCDgpLXgpL7gpJ8g4KSq4KS54KS+4KSj4KWHIOCkheCkr+CktuCkuOCljeCkteClgCDgpJ3gpL7gpLLgpYciCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgcGFja2FnZSBuYW1lIGAlLjI1MHMnIGluIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6ODEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInRydW5jYXRlZCB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLgpLjgpY3gpJ/gpYXgpJ/gpJPgpLXgpLDgpLDgpL7gpIfgpKEg4KSr4KS+4KSH4KSyIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDo4NQorIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyBhdCBjaGFyYWN0ZXIgYCVzJyVzIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjEzNAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4vY3JlYXRlIHRyaWdnZXJzIGxvY2tmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLgpIngpJfgpK4g4KSr4KS+4KSH4KSyIGAlLjI1MHMnIOCkieCkmOCkoeCkpOCkviDgpK/gpYfgpKQg4KSo4KS+4KS54KWAIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNDEKKyMsIGZ1enp5Cittc2dpZCAidHJpZ2dlcnMgYXJlYSIKK21zZ3N0ciAiJXMg4KSa4KWHIOCkn+CkvuCks+ClhyDgpIngpJjgpKHgpKTgpL4g4KSv4KWH4KSkIOCkqOCkvuCkueClgDogJXMiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjE1MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4KSm4KWB4KS4fuCkr+CkviDgpKjgpLXgpL/gpKggYCUuMjUwcyDgpKvgpL7gpIfgpLLgpJrgpYcg4KS44KWN4KSf4KWF4KSfIOCkleCksOCko+ClhyDgpIXgpLbgpJXgpY3gpK8iCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjE2NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4KSJ4KSX4KSuIOCkq+CkvuCkh+CksiBgJS4yNTBzJyDgpIngpJjgpKHgpKTgpL4g4KSv4KWH4KSkIOCkqOCkvuCkueClgCIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MTc5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3Blbi9jcmVhdGUgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuCkqOCkteClgOCkqCDgpKHgpYfgpKrgpYvgpYXgpJ8g4KSr4KS+4KSH4KSyIGAlLjI1MHMnIOCkieCkmOCkoeCkpOCkviDgpK/gpYfgpKQg4KSo4KS+4KS54KWAIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoyMTUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHJlYWRpbmcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiJS4yNTVzIOCkq+CkvuCkh+CksiDgpK7gpKfgpYHgpKggJXMg4KS14KS+4KSa4KSk4KS+4KSo4KS+IOCkpOCljeCksOClgeCkn+ClgCIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MjIzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuCkqOCkteClgOCkqCDgpKHgpYfgpKrgpYvgpYXgpJ8g4KSr4KS+4KSH4KSyIGAlLjI1MHMnIOCkieCkmOCkoeCkpOCkviDgpK/gpYfgpKQg4KSo4KS+4KS54KWAIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoyMjgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4KSo4KS14KWA4KSoIOCkoeClh+CkquCli+ClheCknyDgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KSJ4KSY4KSh4KSk4KS+IOCkr+Clh+CkpCDgpKjgpL7gpLngpYAiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjIzMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImAlLjI1NXMn4KSa4KWAIOCkqOCkteCkv+CkqCDgpIbgpLXgpYPgpKTgpY3gpKTgpYAg4KS44KWN4KSl4KS+4KSq4KSoIOCkleCksOCko+ClhyDgpIXgpLbgpJXgpY3gpK8iCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzoyMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImludmFsaWQgb3IgdW5rbm93biBzeW50YXggaW4gdHJpZ2dlciBuYW1lIGAlLjI1MHMnIChpbiB0cmlnZ2VyIGludGVyZXN0cyBmb3IgIgorInBhY2thZ2UgYCUuMjUwcycpIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzoyNjMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuIHRyaWdnZXIgaW50ZXJlc3QgbGlzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLgpKjgpLXgpYDgpKgg4KSh4KWH4KSq4KWL4KWF4KSfIOCkq+CkvuCkh+CksiBgJS4yNTBzJyDgpIngpJjgpKHgpKTgpL4g4KSv4KWH4KSkIOCkqOCkvuCkueClgCIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjI5MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJld2luZCB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuCkreCkvuCklyDgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KS14KS+4KSa4KSk4KS+IOCkr+Clh+CkpCDgpKjgpL7gpLngpYAiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyBzeW50YXggZXJyb3I7IGlsbGVnYWwgcGFja2FnZSBuYW1lIGAlLjI1MHMnOiAiCisiJS4yNTBzIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMTgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLgpKbgpYHgpLh+4KSv4KS+IOCkqOCkteCkv+CkqCBgJS4yNTBzIOCkq+CkvuCkh+CksuCkmuClhyDgpLjgpY3gpJ/gpYXgpJ8g4KSV4KSw4KSj4KWHIOCkheCktuCkleCljeCkryIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMyMQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgIuCkpuClgeCkuH7gpK/gpL4g4KSo4KS14KS/4KSoIGAlLjI1MHMg4KSr4KS+4KSH4KSy4KSa4KWHIOCkuOCljeCkn+ClheCknyDgpJXgpLDgpKPgpYcg4KSF4KS24KSV4KWN4KSvIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzI0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlICclLjI1MHMnIgorbXNnc3RyICLgpKbgpYHgpLh+4KSv4KS+IOCkqOCkteCkv+CkqCBgJS4yNTBzIOCkq+CkvuCkh+CksuCkmuClhyDgpLjgpY3gpJ/gpYXgpJ8g4KSV4KSw4KSj4KWHIOCkheCktuCkleCljeCkryIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMzMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiYCUuMjU1cyfgpJrgpYAg4KSo4KS14KS/4KSoIOCkhuCkteClg+CkpOCljeCkpOClgCDgpLjgpY3gpKXgpL7gpKrgpKgg4KSV4KSw4KSj4KWHIOCkheCktuCkleCljeCkryIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjM0MCBsaWIvZHBrZy90cmlnbGliLmM6MzQyIGxpYi9kcGtnL3RyaWdsaWIuYzo0NzIKKyM6IHNyYy9yZW1vdmUuYzoyODYgc3JjL3JlbW92ZS5jOjM3NworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVtb3ZlIGAlLjI1MHMnIgorbXNnc3RyICIlLjI1MHMg4KSV4KS+4KSi4KSj4KWHIOCkheCktuCkleCljeCkryIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjM2MAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLgpKbgpYHgpLh+4KSv4KS+IOCkqOCkteCkv+CkqCBgJS4yNTBzIOCkq+CkvuCkh+CksuCkmuClhyDgpLjgpY3gpJ/gpYXgpJ8g4KSV4KSw4KSj4KWHIOCkheCktuCkleCljeCkryIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjM4MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuCkpuClgeCkuH7gpK/gpL4g4KSo4KS14KS/4KSoIGAlLjI1MHMg4KSr4KS+4KSH4KSy4KSa4KWHIOCkuOCljeCkn+ClheCknyDgpJXgpLDgpKPgpYcg4KSF4KS24KSV4KWN4KSvIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDU2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiZHVwbGljYXRlIGZpbGUgdHJpZ2dlciBpbnRlcmVzdCBmb3IgZmlsZW5hbWUgYCUuMjUwcycgYW5kIHBhY2thZ2UgYCUuMjUwcyciCittc2dzdHIgIuCkqOCkteClgCDgpK7gpL7gpLngpL/gpKTgpYAg4KSr4KS+4KSH4KSyIGAlLjI1MHMnIOCkueCkv+CkmuClgCBgJS4yNTBzJyDgpK7gpY3gpLngpKPgpYLgpKgg4KS44KWN4KSl4KS+4KSq4KSo4KS+IOCkleCksOCko+CljeCkr+CkvuCkuCDgpIXgpLjgpK7gpLDgpY3gpKUg4KSG4KS54KWHIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDgzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuCkqOCkteClgOCkqCDgpKHgpYfgpKrgpYvgpYXgpJ8g4KSr4KS+4KSH4KSyIGAlLjI1MHMnIOCkieCkmOCkoeCkpOCkviDgpK/gpYfgpKQg4KSo4KS+4KS54KWAIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDkzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4KSo4KS14KWA4KSoIOCkoeClh+CkquCli+ClheCknyDgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KSJ4KSY4KSh4KSk4KS+IOCkr+Clh+CkpCDgpKjgpL7gpLngpYAiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0OTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlICclLjI1MHMnIgorbXNnc3RyICLgpKjgpLXgpYDgpKgg4KSh4KWH4KSq4KWL4KWF4KSfIOCkq+CkvuCkh+CksiBgJS4yNTBzJyDgpIngpJjgpKHgpKTgpL4g4KSv4KWH4KSkIOCkqOCkvuCkueClgCIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ5OQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAi4KSo4KS14KWA4KSoIOCkoeClh+CkquCli+ClheCknyDgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KSJ4KSY4KSh4KSk4KS+IOCkr+Clh+CkpCDgpKjgpL7gpLngpYAiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1MDMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLgpKjgpLXgpYDgpKgg4KSh4KWH4KSq4KWL4KWF4KSfIOCkq+CkvuCkh+CksiBgJS4yNTBzJyDgpIngpJjgpKHgpKTgpL4g4KSv4KWH4KSkIOCkqOCkvuCkueClgCIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjUwNworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSBhcyBgJS4yNTBzJyIKK21zZ3N0ciAi4KSo4KS14KWAIOCkruCkvuCkueCkv+CkpOClgCDgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KS54KS/4KSa4KWAIGAlLjI1MHMnIOCkruCljeCkueCko+ClguCkqCDgpLjgpY3gpKXgpL7gpKrgpKjgpL4g4KSV4KSw4KSj4KWN4KSv4KS+4KS4IOCkheCkuOCkruCksOCljeCkpSDgpIbgpLngpYciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1NDIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4KSt4KS+4KSXIOCkq+CkvuCkh+CksiBgJS4yNTBzJyDgpLXgpL7gpJrgpKTgpL4g4KSv4KWH4KSkIOCkqOCkvuCkueClgCIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjU1MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yIGluIGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiYCUuMjU1cycg4KS44KSC4KSw4KSa4KSo4KS+IOCkq+CkvuCkiOCksuCkruCkp+ClhyDgpLXgpL7gpJrgpKgg4KSk4KWN4KSw4KWB4KSf4KWAIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTYzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmaWxlIHRyaWdnZXJzIHJlY29yZCBtZW50aW9ucyBpbGxlZ2FsIHBhY2thZ2UgbmFtZSBgJS4yNTBzJyAoZm9yIGludGVyZXN0IGluICIKKyJmaWxlIGAlLjI1MHMnKTogJS4yNTBzIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo2NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInRyaWdnZXJzIGNpIGZpbGUgYCUuMjUwcycgY29udGFpbnMgaWxsZWdhbCB0cmlnZ2VyIHN5bnRheCBpbiB0cmlnZ2VyIG5hbWUgYCIKKyIlLjI1MHMnOiAlLjI1MHMiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjY4NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gdHJpZ2dlcnMgY2kgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4KSJ4KSX4KSuIOCkq+CkvuCkh+CksiBgJS4yNTBzJyDgpIngpJjgpKHgpKTgpL4g4KSv4KWH4KSkIOCkqOCkvuCkueClgCIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjY5OQorbXNnaWQgInRyaWdnZXJzIGNpIGZpbGUgY29udGFpbnMgdW5rbm93biBkaXJlY3RpdmUgc3ludGF4IgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo3MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJpZ2dlcnMgY2kgZmlsZSBjb250YWlucyB1bmtub3duIGRpcmVjdGl2ZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Nzc2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHRyaWdnZXJzIHN0YXRlIGRpcmVjdG9yeSBgJS4yNTBzJyIKK21zZ3N0ciAi4KSh4KS/4KSq4KWL4KWF4KSfIOCkqOCkv+CksOCljeCkpuClh+CktuCkv+CkleCkviBgJS4yNTBzJyDgpLXgpL7gpJrgpKTgpL4g4KSv4KWH4KSkIOCkqOCkvuCkueClgCIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjc3OQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNldCBvd25lcnNoaXAgb2YgdHJpZ2dlcnMgc3RhdGUgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICLgpKHgpL/gpKrgpYvgpYXgpJ8g4KSo4KS/4KSw4KWN4KSm4KWH4KS24KS/4KSV4KS+IGAlLjI1MHMnIOCkteCkvuCkmuCkpOCkviDgpK/gpYfgpKQg4KSo4KS+4KS54KWAIgorCisjOiBsaWIvZHBrZy90cmlnbmFtZS5jOjM0Cittc2dpZCAiZW1wdHkgdHJpZ2dlciBuYW1lcyBhcmUgbm90IHBlcm1pdHRlZCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy90cmlnbmFtZS5jOjM4Cittc2dpZCAidHJpZ2dlciBuYW1lIGNvbnRhaW5zIGludmFsaWQgY2hhcmFjdGVyIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3V0aWxzLmM6NTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInJlYWQgZXJyb3IgaW4gYCUuMjUwcyciCittc2dzdHIgIiUuMjUwc+CkruCkp+CljeCkr+ClhyDgpLXgpL7gpJrgpKjgpL7gpJrgpYAg4KS44KSu4KS44KWN4KSv4KS+IgorCisjOiBsaWIvZHBrZy91dGlscy5jOjYxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmZ2V0cyBnYXZlIGFuIGVtcHR5IHN0cmluZyBmcm9tIGAlLjI1MHMnIgorbXNnc3RyICLgpI/gpKvgpJfgpYfgpJ/gpY3gpLgg4KSh4KS+4KSH4KS14KWN4KS54KSw4KWN4KSc4KSo4KWN4KS4IFtpXSDgpK7gpKfgpYLgpKgg4KSw4KS/4KSV4KS+4KSu4KS+IOCkuOCljeCkn+CljeCksOCkv+CkguCklyDgpKbgpYfgpKTgpYsiCisKKyM6IGxpYi9kcGtnL3V0aWxzLmM6NjMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInRvby1sb25nIGxpbmUgb3IgbWlzc2luZyBuZXdsaW5lIGluIGAlLjI1MHMnIgorbXNnc3RyICLgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KSt4KWN4KSw4KS34KWN4KSfIOCkhuCkueClhyAtICUuMjUwcyDgpKjgpILgpKTgpLAg4KSo4KWN4KSv4KWC4KSy4KS+4KSH4KSoIOCkl+CkvuCkr+CkrCIKKworIzogbGliL2Rwa2cvdXRpbHMuYzo3NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgcmVhZGluZyBgJS4yNTBzJyIKK21zZ3N0ciAiJS4yNTBzIOCkruCkp+ClgOCksiDgpKvgpL7gpIfgpLLgpJrgpL4g4KSF4KSo4KSq4KWH4KSV4KWN4KS34KS/4KSkIOCktuClh+CkteCknyIKKworIzogbGliL2Rwa2cvdmFyYnVmLmM6ODIgbGliL2Rwa2cvdmFyYnVmLmM6ODgKK21zZ2lkICJlcnJvciBmb3JtYXR0aW5nIHN0cmluZyBpbnRvIHZhcmJ1ZiB2YXJpYWJsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxNzkgc3JjL2FyY2hpdmVzLmM6MjAwIHNyYy9hcmNoaXZlcy5jOjcyNAorbXNnaWQgImVycm9yIHJlYWRpbmcgZnJvbSBkcGtnLWRlYiBwaXBlIgorbXNnc3RyICLgpKHgpL/gpKrgpL/gpJXgpYfgpJzgpYAt4KSh4KWH4KSsIOCkquCkvuCkh+CkqiDgpK7gpKfgpYHgpKgg4KS14KS+4KSa4KSoIOCkpOCljeCksOClgeCkn+ClgCIKKworIzogc3JjL2FyY2hpdmVzLmM6MTk1CisjLCBjLWZvcm1hdAorbXNnaWQgInNraXBwZWQgdW5wYWNraW5nIGZpbGUgJyUuMjU1cycgKHJlcGxhY2VkIG9yIGV4Y2x1ZGVkPykiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MjQ2IHNyYy9hcmNoaXZlcy5jOjI1MAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIHRpbWVzdGFtcHMgb2YgYCUuMjU1cyciCittc2dzdHIgImAlLjI1NXMn4KSa4KS+IOCkuOCkruCkr+CktuCkv+CkleCljeCkleCkviDgpKjgpL/gpLDgpY3gpKfgpL7gpLDgpYDgpKQg4KSV4KSw4KSk4KS+4KSo4KS+IOCkpOCljeCksOClgeCkn+ClgCIKKworIzogc3JjL2FyY2hpdmVzLmM6MjYyCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHNldHRpbmcgb3duZXJzaGlwIG9mIHN5bWxpbmsgYCUuMjU1cyciCittc2dzdHIgImAlLjI1NXMnIOCkuOCkv+CkruCksuCkv+CkguCkleCkmuClgCDgpK7gpL7gpLLgpJXgpYAg4KSo4KS/4KS24KWN4KSa4KS/4KSkIOCkleCksOCkpOCkvuCkqOCkviDgpKTgpY3gpLDgpYHgpJ/gpYAiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjI2NSBzcmMvYXJjaGl2ZXMuYzo3MzQgc3JjL3N0YXRjbWQuYzoxNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igc2V0dGluZyBvd25lcnNoaXAgb2YgYCUuMjU1cyciCittc2dzdHIgImAlLjI1NXMnIOCkmuClgCDgpK7gpL7gpLLgpJXgpYAg4KSo4KS/4KS24KWN4KSa4KS/4KSkIOCkleCksOCkpOCkvuCkqOCkviDgpKTgpY3gpLDgpYHgpJ/gpYAiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjI2NyBzcmMvYXJjaGl2ZXMuYzo3MzYgc3JjL3N0YXRjbWQuYzoxNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igc2V0dGluZyBwZXJtaXNzaW9ucyBvZiBgJS4yNTVzJyIKK21zZ3N0ciAiYCUuMjU1cycg4KSa4KWN4KSv4KS+IOCkquCksOCkteCkvuCkqOCkl+CljeCkr+CkviDgpKjgpL/gpLDgpY3gpKfgpL7gpLDgpYDgpKQg4KSV4KSw4KSk4KS+4KSo4KS+IOCkpOCljeCksOClgeCkn+ClgCIKKworIzogc3JjL2FyY2hpdmVzLmM6Mzk1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gc3RhdCAoZGVyZWZlcmVuY2UpIGV4aXN0aW5nIHN5bWxpbmsgYCUuMjUwcyciCittc2dzdHIgImAlLjI1MHMnIOCkteCksOCkv+CksiDgpI/gpJfgpY3gpJ3gpL/gpJXgpY3gpK/gpYHgpJ8g4KSq4KSw4KS14KS+4KSo4KSX4KWAIOCkuOClh+CknyDgpJXgpLDgpKPgpY3gpK/gpL7gpLgg4KSF4KS44KSu4KSw4KWN4KSlIOCkhuCkueClhyIKKworIzogc3JjL2FyY2hpdmVzLmM6NDE3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmYWlsZWQgdG8gc3RhdCAoZGVyZWZlcmVuY2UpIHByb3Bvc2VkIG5ldyBzeW1saW5rIHRhcmdldCBgJS4yNTBzJyBmb3IgIgorInN5bWxpbmsgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6NDc1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisidHJ5aW5nIHRvIG92ZXJ3cml0ZSBgJS4yNTBzJywgd2hpY2ggaXMgdGhlIGRpdmVydGVkIHZlcnNpb24gb2YgYCIKKyIlLjI1MHMnIChwYWNrYWdlOiAlLjEwMHMpIgorbXNnc3RyICIiCisiYCUuMjUwcyclLjEwcyUuMTAwcyUuMTBzIOCkmuClgCDgpLXgpLPgpLXgpLLgpYfgpLLgpYAg4KSG4KS14KWD4KSk4KWN4KSk4KWAIOCkheCkuOCksuClh+CksuCljeCkr+CkviBgJS4yNTBzJyDgpLXgpLAg4KSq4KWB4KSo4KSw4KWN4KSy4KWH4KSW4KSoIOCkleCksOCko+CljeCkr+CkvuCkmuCljeCkr+CkviAiCisi4KSq4KWN4KSw4KSv4KSk4KWN4KSo4KS+4KSkIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo0ODEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInRyeWluZyB0byBvdmVyd3JpdGUgYCUuMjUwcycsIHdoaWNoIGlzIHRoZSBkaXZlcnRlZCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICIiCisiYCUuMjUwcyclLjEwcyUuMTAwcyUuMTBzIOCkmuClgCDgpLXgpLPgpLXgpLLgpYfgpLLgpYAg4KSG4KS14KWD4KSk4KWN4KSk4KWAIOCkheCkuOCksuClh+CksuCljeCkr+CkviBgJS4yNTBzJyDgpLXgpLAg4KSq4KWB4KSo4KSw4KWN4KSy4KWH4KSW4KSoIOCkleCksOCko+CljeCkr+CkvuCkmuCljeCkr+CkviAiCisi4KSq4KWN4KSw4KSv4KSk4KWN4KSo4KS+4KSkIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo1MTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgYCUuMjU1cycgKHdoaWNoIEkgd2FzIGFib3V0IHRvIGluc3RhbGwpIgorbXNnc3RyICJgJS4yNTVzJyDgpLjgpY3gpJ/gpYXgpJ8g4KSV4KSw4KSk4KS+IOCkr+Clh+CkpCDgpKjgpL7gpLngpYAgKOCknOClhyDgpK7gpYAg4KSG4KSk4KS+IOCkheCkp+Ckv+Ckt+CljeCkoOCkvuCkquCkv+CkpCDgpJXgpLDgpKPgpL7gpLAg4KS54KWL4KSk4KWLKSIKKworIzogc3JjL2FyY2hpdmVzLmM6NTE5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1bmFibGUgdG8gY2xlYW4gdXAgbWVzcyBzdXJyb3VuZGluZyBgJS4yNTVzJyBiZWZvcmUgaW5zdGFsbGluZyBhbm90aGVyICIKKyJ2ZXJzaW9uIgorbXNnc3RyICLgpIXgpKjgpY3gpK8g4KSG4KS14KWD4KSk4KWN4KSk4KWAIOCkheCkp+Ckv+Ckt+CljeCkoOCkvuCkquCkv+CkpCDgpJXgpLDgpKPgpY3gpK/gpL7gpKrgpYHgpLDgpY3gpLXgpYAgYCUuMjU1cycg4KSt4KWL4KS14KSk4KS+4KSy4KSa4KS+IOCkmOCli+CksyDgpKjgpL/gpLjgpY3gpKTgpL7gpLDgpKTgpL4g4KSv4KWH4KSkIOCkqOCkvuCkueClgCIKKworIzogc3JjL2FyY2hpdmVzLmM6NTI1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IHJlc3RvcmVkIGAlLjI1NXMnIGJlZm9yZSBpbnN0YWxsaW5nIGFub3RoZXIgdmVyc2lvbiIKK21zZ3N0ciAi4KSF4KSo4KWN4KSvIOCkhuCkteClg+CkpOCljeCkpOClgCDgpIXgpKfgpL/gpLfgpY3gpKDgpL7gpKrgpL/gpKQg4KSV4KSw4KSj4KWN4KSv4KS+4KSq4KWB4KSw4KWN4KS14KWAIGAlLjI1NXMnIOCkuOCljeCkn+ClheCknyDgpLDgpL/gpLjgpY3gpJ/gpYvgpIXgpLDgpY3gpKEg4KSV4KSw4KSk4KS+IOCkr+Clh+CkpCDgpKjgpL7gpLngpYAiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjU2MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiYXJjaGl2ZSBjb250YWluZWQgb2JqZWN0IGAlLjI1NXMnIG9mIHVua25vd24gdHlwZSAweCV4IgorbXNnc3RyICLgpIbgpLDgpY3gpJXgpL7gpIfgpLXgpK7gpKfgpYcgMHgleCDgpK/gpL4g4KSF4KSq4KSw4KS/4KSa4KS/4KSkIOCkquCljeCksOCkleCkvuCksOCkvuCkmuClhyBgJS4yNTVzJyDgpJPgpYXgpKzgpY3gpJzgpYfgpJXgpY3gpJ8g4KS54KWL4KSk4KWHIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2MjYgc3JjL2RpdmVydGNtZC5jOjE1MCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NjgyCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIyMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI4NAorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE0NDEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE2ODAKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTY3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjQ0CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUyNworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiY2Fubm90IHN0YXQgb2xkIG5hbWUgYCVzJzogJXMiCittc2dpZCAiY2Fubm90IHN0YXQgZmlsZSAnJXMnIgorbXNnc3RyICLgpJzgpYHgpKjgpYAg4KSo4KS+4KS14KWHIGAlcyc6ICVzIOCkuOCljeCkn+ClheCknyDgpJXgpLDgpKTgpL4g4KSv4KWH4KSkIOCkqOCkvuCkueClgOCkpCIKKworIzogc3JjL2FyY2hpdmVzLmM6NjQxCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlcGxhY2luZyBmaWxlcyBpbiBvbGQgcGFja2FnZSAlcyAuLi5cbiIKK21zZ3N0ciAiJXMgLi4uIOCknOClgeCkqOCljeCkr+CkviDgpKrgpYXgpJXgpYfgpJzgpK7gpKfgpYDgpLIg4KSr4KS+4KSv4KSy4KWAIOCkrOCkpuCksuCksuCljeCkr+CkviDgpJzgpL7gpKQg4KSG4KS54KWH4KSkIFxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVwbGFjZWQgYnkgZmlsZXMgaW4gaW5zdGFsbGVkIHBhY2thZ2UgJXMgLi4uXG4iCittc2dzdHIgIiVzIC4uLiDgpIXgpKfgpL/gpLfgpY3gpKDgpL7gpKrgpL/gpKQg4KSq4KWF4KSV4KWH4KSc4KSu4KSn4KWA4KSyIOCkq+CkvuCkr+CksuClgOCkguCkqOClgCDgpKzgpKbgpLLgpLLgpYcgXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjY1NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorInRyeWluZyB0byBvdmVyd3JpdGUgZGlyZWN0b3J5ICclLjI1MHMnIGluIHBhY2thZ2UgJS4yNTBzICUuMjUwcyB3aXRoICIKKyJub25kaXJlY3RvcnkiCittc2dzdHIgIiUuMjUwcyDgpKrgpYXgpJXgpYfgpJzgpK7gpKfgpYDgpLIgYCUuMjUwcycg4KSo4KS/4KSw4KWN4KSm4KWH4KS24KS/4KSV4KWH4KS14KSwIOCkqOCkvuClheCkqOCkqOCkv+CksOCljeCkpuClh+CktuCkv+CkleClh+CkqOClhyDgpKrgpYHgpKjgpLDgpY3gpLLgpYfgpJbgpKgg4KSV4KSw4KSj4KWN4KSv4KS+4KSa4KWN4KSv4KS+IOCkquCljeCksOCkr+CkpOCljeCkqOCkvuCkpCIKKworIzogc3JjL2FyY2hpdmVzLmM6NjYxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ0cnlpbmcgdG8gb3ZlcndyaXRlICclLjI1MHMnLCB3aGljaCBpcyBhbHNvIGluIHBhY2thZ2UgJS4yNTBzICUuMjUwcyIKK21zZ3N0ciAiJS4yNTBzIOCkquClheCkleClh+CknOCkruCkp+Clh+CkueClgCDgpIXgpLjgpLLgpY3gpK/gpL7gpKjgpYcsIGAlLjI1MHMnIOCkteCksCDgpKrgpYHgpKjgpLDgpY3gpLLgpYfgpJbgpKgg4KSV4KSw4KSj4KWN4KSv4KS+4KSa4KWN4KSv4KS+IOCkquCljeCksOCkr+CkpOCljeCkqOCkvuCkpCIKKworIzogc3JjL2FyY2hpdmVzLmM6NzExCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGAlLjI1NXMnICh3aGlsZSBwcm9jZXNzaW5nIGAlLjI1NXMnKSIKK21zZ3N0ciAiYCUuMjU1cycgKGAlLjI1NXMnIOCkruCkp+ClgOCksikg4KS14KS+4KSa4KSk4KS+IOCkhuCksuClgCDgpKjgpL7gpLngpYAiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjcxOAorIywgYy1mb3JtYXQKK21zZ2lkICJiYWNrZW5kIGRwa2ctZGViIGR1cmluZyBgJS4yNTVzJyIKK21zZ3N0ciAiYCUuMjU1cycg4KSm4KSw4KSu4KWN4KSv4KS+4KSoIOCkrOClheCkleCkj+CkqOCljeCkoSDgpKHgpL/gpKrgpL/gpJXgpYfgpJzgpYAt4KSh4KWH4KSsIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NDQgc3JjL2FyY2hpdmVzLmM6OTA4IHNyYy9hcmNoaXZlcy5jOjk0OQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nL3dyaXRpbmcgYCUuMjU1cyciCittc2dzdHIgImAlLjI1NXMg4KSs4KSC4KSmIOCkleCksOCkpOCkvuCkqOCkvi/gpLLgpL/gpLngpL/gpKTgpL7gpKjgpL4g4KSk4KWN4KSw4KWB4KSf4KWAICIKKworIzogc3JjL2FyY2hpdmVzLmM6NzQ4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIHBpcGUgYCUuMjU1cyciCittc2dzdHIgImAlLjI1NXMnIOCkquCkvuCkh+CkqiDgpKzgpKjgpLXgpKTgpL7gpKjgpL4g4KSk4KWN4KSw4KWB4KSf4KWAIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NTMgc3JjL2FyY2hpdmVzLmM6NzU4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIGRldmljZSBgJS4yNTVzJyIKK21zZ3N0ciAiYCUuMjU1cycg4KSJ4KSq4KSV4KSw4KSjIOCkrOCkqOCkteCkpOCkvuCkqOCkviDgpKTgpY3gpLDgpYHgpJ/gpYAiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc3MQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBoYXJkIGxpbmsgYCUuMjU1cyciCittc2dzdHIgImAlLjI1NXMnIOCkueCkvuCksOCljeCkoSDgpLjgpL7gpJbgpLPgpYAg4KSs4KSo4KS14KSk4KS+4KSo4KS+IOCkpOCljeCksOClgeCkn+ClgCIKKworIzogc3JjL2FyY2hpdmVzLmM6Nzc3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo1MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgc3ltYm9saWMgbGluayBgJS4yNTVzJyIKK21zZ3N0ciAiYCUuMjU1cycg4KSq4KWN4KSw4KSk4KWA4KSV4KS+4KSk4KWN4KSu4KSVIOCkuOCkvuCkluCks+ClgCDgpKzgpKjgpLXgpKTgpL7gpKjgpL4g4KSk4KWN4KSw4KWB4KSf4KWAIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgZGlyZWN0b3J5IGAlLjI1NXMnIgorbXNnc3RyICJgJS4yNTVzJyDgpKjgpL/gpLDgpY3gpKbgpYfgpLbgpL/gpJXgpL4g4KSs4KSo4KS14KSk4KS+4KSo4KS+IOCkpOCljeCksOClgeCkn+ClgCIKKworIzogc3JjL2FyY2hpdmVzLmM6ODIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBtb3ZlIGFzaWRlIGAlLjI1NXMnIHRvIGluc3RhbGwgbmV3IHZlcnNpb24iCittc2dzdHIgIuCkqOCkteCkv+CkqCDgpIbgpLXgpYPgpKTgpY3gpKTgpYAg4KS44KWN4KSl4KS+4KSq4KSoIOCkleCksOCko+CljeCkr+CkvuCkuOCkvuCkoOClgCBgJS4yNTVzJyDgpKzgpL7gpJzgpYLgpLLgpL4g4KSV4KSw4KSj4KWN4KSv4KS+4KS4IOCkheCktuCkleCljeCkryIKKworIzogc3JjL2FyY2hpdmVzLmM6ODMyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzozMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgbGluayBgJS4yNTVzJyIKK21zZ3N0ciAiYCUuMjU1cycg4KS44KS+4KSW4KSz4KWAL+CksuCkv+CkguCklSDgpLXgpL7gpJrgpKPgpY3gpK/gpL7gpLgg4KSF4KS24KSV4KWN4KSvIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4MzQgc3JjL2NvbmZpZ3VyZS5jOjQyMworIywgYy1mb3JtYXQKK21zZ2lkICJzeW1ib2xpYyBsaW5rICclLjI1MHMnIHNpemUgaGFzIGNoYW5nZWQgZnJvbSAlamQgdG8gJXpkIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjgzOQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gbWFrZSBiYWNrdXAgc3ltbGluayBmb3IgYCUuMjU1cyciCittc2dzdHIgImAlLjI1NXMn4KSa4KWHIOCkuOCkv+CkruCksuCkv+CkguCklSDgpKzgpYXgpJXgpKog4KSY4KWH4KSj4KWHIOCkheCktuCkleCljeCkryIKKworIzogc3JjL2FyY2hpdmVzLmM6ODQxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaG93biBiYWNrdXAgc3ltbGluayBmb3IgYCUuMjU1cyciCittc2dzdHIgImAlLjI1NXMn4KSa4KWHIGNob3duIOCkuOCkv+CkruCksuCkv+CkguCklSDgpKzgpYXgpJXgpKog4KSY4KWH4KSj4KWHIOCkheCktuCkleCljeCkryIKKworIzogc3JjL2FyY2hpdmVzLmM6ODQ2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBtYWtlIGJhY2t1cCBsaW5rIG9mIGAlLjI1NXMnIGJlZm9yZSBpbnN0YWxsaW5nIG5ldyB2ZXJzaW9uIgorbXNnc3RyICLgpKjgpLXgpL/gpKgg4KSG4KS14KWD4KSk4KWN4KSk4KWAIOCkuOCljeCkpeCkvuCkquCkqCDgpJXgpLDgpKPgpY3gpK/gpL7gpIbgpKfgpYAgYCUuMjU1cyfgpJrgpYcg4KS44KS/4KSu4KSy4KS/4KSC4KSVIOCkrOClheCkleCkqiDgpJjgpYfgpKPgpYcg4KSF4KS24KSV4KWN4KSvIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4NjMgc3JjL2FyY2hpdmVzLmM6OTU3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyB2ZXJzaW9uIG9mIGAlLjI1NXMnIgorbXNnc3RyICJgJS4yNTVzJ+CkmuClgCDgpKjgpLXgpL/gpKgg4KSG4KS14KWD4KSk4KWN4KSk4KWAIOCkuOCljeCkpeCkvuCkquCkqCDgpJXgpLDgpKPgpYcg4KSF4KS24KSV4KWN4KSvIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo5MDIgc3JjL2FyY2hpdmVzLmM6OTQ1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiAnJS4yNTVzJyIKK21zZ3N0ciAiYCUuMjU1cycg4KSa4KWAIOCksOCkmuCkqOCkviDgpJXgpLDgpKTgpL4g4KSv4KWH4KSkIOCkqOCkvuCkueClgCIKKworIzogc3JjL2FyY2hpdmVzLmM6OTQ3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBmaWxlICclLjI1NXMnIgorbXNnc3RyICJgJS4yNTVzJyDgpIXgpKjgpKzgpKvgpLAg4KSV4KSw4KSk4KS+IOCkr+Clh+CkpCDgpKjgpL7gpLngpYAiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMDAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpZ25vcmluZyBkZXBlbmRlbmN5IHByb2JsZW0gd2l0aCAlczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorIuCkoeCkv+CkquCkv+CkleClh+CknOClgDog4KSk4KS+4KSV4KS/4KSmIC0gJXMg4KSV4KS+4KSi4KWC4KSoIOCkn+CkvuCkleClguCkqCDgpIXgpLXgpLLgpILgpKzgpYHgpKgg4KSw4KS54KS+4KSj4KWN4KSv4KS+4KSa4KWAIOCkuOCkruCkuOCljeCkr+CkviDgpKbgpYHgpLDgpY3gpLLgpJXgpY3gpLfgpL/gpKQg4KSV4KSw4KS/4KSkIOCkhuCkueClhzpcbiIKKyIlcyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAwNQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorImNvbnNpZGVyaW5nIGRlY29uZmlndXJhdGlvbiBvZiBlc3NlbnRpYWxcbiIKKyIgcGFja2FnZSAlcywgdG8gZW5hYmxlICVzLiIKK21zZ3N0ciAiIgorIuCkoeCkv+CkquCkv+CkleClh+CknOClgDog4KSk4KS+4KSV4KS/4KSmIC0gJXMg4KSV4KS+4KSi4KWB4KSoIOCkn+CkleCko+CljeCkr+CkvuCkuOCkvuCkoOClgCDgpJzgpLDgpYHgpLDgpYAg4KSF4KS44KSy4KWH4KSy4KWN4KSv4KS+XG4iCisiICVzIOCkquClheCkleClh+CknOCkmuClgCDgpIXgpJzgpYHgpLPgpLXgpKPgpYAg4KS14KS/4KSa4KS+4KSw4KS+4KSkIOCkmOClh+CkpCDgpIbgpLngpYcuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMDgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBubywgJXMgaXMgZXNzZW50aWFsLCB3aWxsIG5vdCBkZWNvbmZpZ3VyZVxuIgorIiBpdCBpbiBvcmRlciB0byBlbmFibGUgJXMuXG4iCittc2dzdHIgIiIKKyLgpKHgpL/gpKrgpL/gpJXgpYfgpJzgpYA6IOCkqOCkvuCkueClgCwgJXMg4KS54KWHIOCknOCksOClguCksOClgCDgpIbgpLngpYcsICVzIOCkleCkvuCkouClgeCkqCDgpJ/gpL7gpJXgpKPgpY3gpK/gpL7gpLjgpL7gpKDgpYAg4KSk4KWN4KSv4KS+4KSa4KWAIOCkheCknOClgeCks+CkteCko+ClgCDgpJXgpLDgpKPgpYcg4KS24KSV4KWN4KSvIOCkqOCkvuCkueClgC5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAyMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IG5vLCBjYW5ub3QgcHJvY2VlZCB3aXRoICVzICgtLWF1dG8tZGVjb25maWd1cmUgd2lsbCBoZWxwKTpcbiIKKyIlcyIKK21zZ3N0ciAiIgorIuCkoeCkv+CkquCkv+CkleClh+CknOClgDog4KSo4KS+4KS54KWALCAlcyDgpJXgpL7gpKLgpYIg4KS24KSV4KSkIOCkqOCkvuCkueClgCAgKC0t4KS44KWN4KS14KSv4KSC4KSa4KSy4KWA4KSkLeCkheCknOClgeCks+CkteCko+ClgCDgpK7gpKbgpKQg4KSV4KSw4KWCIOCktuCkleCkpOClhyk6XG4iCisiJXMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMzIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInJlbW92YWwgb2YgJS4yNTBzIgorbXNnc3RyICIlLjI1MHPgpK7gpKfgpY3gpK/gpYcg4KS14KS+4KSa4KSo4KS+4KSa4KWAIOCkuOCkruCkuOCljeCkr+CkviIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA1NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiaW5zdGFsbGF0aW9uIG9mICUuMjUwcyIKK21zZ3N0ciAiYCUuMjU1cyfgpJrgpYAg4KSo4KS14KS/4KSoIOCkhuCkteClg+CkpOCljeCkpOClgCDgpLjgpY3gpKXgpL7gpKrgpKgg4KSV4KSw4KSj4KWHIOCkheCktuCkleCljeCkryIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA1OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IGNvbnNpZGVyaW5nIGRlY29uZmlndXJhdGlvbiBvZiAlcywgd2hpY2ggd291bGQgYmUgYnJva2VuIGJ5ICVzIC4uLlxuIgorbXNnc3RyICLgpKHgpL/gpKrgpL/gpJXgpYfgpJzgpYA6ICVzIOCkmuCljeCkr+CkviDgpK7gpLDgpY3gpJzgpYDgpKjgpYHgpLjgpL7gpLAgJXMg4KSV4KS+4KSi4KWC4KSoIOCkn+CkvuCkleCko+CljeCkr+CkvuCkmuCkviDgpLXgpL/gpJrgpL7gpLAg4KSV4KSw4KSkIOCkhuCkueClhyAuLi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA2NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogeWVzLCB3aWxsIGRlY29uZmlndXJlICVzIChicm9rZW4gYnkgJXMpLlxuIgorbXNnc3RyICLgpKHgpL/gpKrgpL/gpJXgpYfgpJzgpYA6IOCkueCliyAlc+CkmuCljeCkr+CkviDgpK7gpLDgpY3gpJzgpYDgpKjgpYHgpLjgpL7gpLAgJXMg4KSV4KSi4KWC4KSoIOCkn+CkvuCkleCksuClhyDgpJzgpL7gpIfgpLIuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNjkgc3JjL2FyY2hpdmVzLmM6MTE4NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogcmVnYXJkaW5nICVzIGNvbnRhaW5pbmcgJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyLgpKHgpL/gpKrgpL/gpJXgpYfgpJzgpYA6ICVzIOCkrOCkpuCljeCkpuCksiDgpJzgpY3gpK/gpL7gpJrgpY3gpK/gpL7gpKQgJXMg4KSG4KS54KWHOlxuIgorIiVzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDc3CisjLCBmdXp6eQorbXNnaWQgImlnbm9yaW5nIGJyZWFrYWdlLCBtYXkgcHJvY2VlZCBhbnl3YXkhIgorbXNnc3RyICLgpKHgpL/gpKrgpL/gpJXgpYfgpJzgpYA6IOCkpOCkvuCkleCkv+CkpiAtIOCkquCksOCkuOCljeCkquCksOCkteCkv+CksOCli+Ckp+CkvuCkleCkoeClhyDgpKbgpYHgpLDgpY3gpLLgpJXgpY3gpLcg4KSV4KSw4KS/4KSkIOCkhuCkueClhywg4KSk4KSw4KWAIOCkquClgeCkouClhyDgpJzgpL7gpIog4KS24KSV4KSk4KS+ICFcbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA4MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiaW5zdGFsbGluZyAlLjI1MHMgd291bGQgYnJlYWsgJS4yNTBzLCBhbmRcbiIKKyIgZGVjb25maWd1cmF0aW9uIGlzIG5vdCBwZXJtaXR0ZWQgKC0tYXV0by1kZWNvbmZpZ3VyZSBtaWdodCBoZWxwKSIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDg2CisjLCBjLWZvcm1hdAorbXNnaWQgImluc3RhbGxpbmcgJS4yNTBzIHdvdWxkIGJyZWFrIGV4aXN0aW5nIHNvZnR3YXJlIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExMTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogY29uc2lkZXJpbmcgcmVtb3ZpbmcgJXMgaW4gZmF2b3VyIG9mICVzIC4uLlxuIgorbXNnc3RyICLgpKHgpL/gpKrgpL/gpJXgpYfgpJzgpYA6ICVzIOCkmuCljeCkr+CkviDgpK7gpLDgpY3gpJzgpYDgpKjgpYHgpLjgpL7gpLAgJXMg4KSV4KS+4KSi4KWC4KSoIOCkn+CkvuCkleCko+CljeCkr+CkvuCkmuCkviDgpLXgpL/gpJrgpL7gpLAg4KSV4KSw4KSkIOCkhuCkueClhyAuLi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTEyMgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgcHJvcGVybHkgaW5zdGFsbGVkIC0gaWdub3JpbmcgYW55IGRlcGVuZGVuY2llcyBvbiBpdC5cbiIKK21zZ3N0ciAiIgorIiVzIOCkmuClgCDgpKzgpLDgpYvgpKzgpLAg4KS44KWN4KSl4KS+4KSq4KSo4KS+IOCkneCkvuCksuClh+CksuClgCDgpKjgpL7gpLngpYAgLSDgpKTgpY3gpK/gpL7gpLXgpLAg4KSF4KS14KSy4KSC4KSs4KS/4KSkIOCkheCkuOCksuClh+CksuCljeCkr+CkviDgpKzgpL7gpKzgpYDgpILgpJXgpKHgpYcg4KSm4KWB4KSw4KWN4KSy4KSV4KWN4KS3IOCkleCksOCkv+CkpCDgpIbgpLngpYcuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogbWF5IGhhdmUgdHJvdWJsZSByZW1vdmluZyAlcywgYXMgaXQgcHJvdmlkZXMgJXMgLi4uXG4iCittc2dzdHIgIuCkoeCkv+CkquCkv+CkleClh+CknOClgDogJXMg4KSV4KS+4KSi4KWB4KSoIOCkn+CkleCko+CljeCkr+CkvuCkuCDgpLjgpK7gpLjgpY3gpK/gpL4g4KSv4KWH4KSH4KSyIOCkleCkvuCksOCkoyDgpKTgpYAgJXMg4KSq4KWB4KSw4KS14KSk4KWHIC4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTY2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogcGFja2FnZSAlcyByZXF1aXJlcyByZWluc3RhbGxhdGlvbiwgYnV0IHdpbGwgcmVtb3ZlIGFueXdheSBhcyB5b3UgIgorInJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiIgorIuCkoeCkv+CkquCkv+CkleClh+CknOClgDog4KSq4KWF4KSV4KWH4KScICVz4KSy4KS+IOCkquClgeCksOCljeCkqOCkuOCljeCkpeCkvuCkquCkqOClh+CkmuClgCDgpJzgpLDgpYLgpLDgpYAg4KSG4KS54KWHLCDgpKrgpKMg4KSk4KWB4KSu4KSa4KWN4KSv4KS+IOCkteCkv+CkqOCkguCkpOClgCDgpKjgpYHgpLjgpL7gpLAg4KSk4KWHIOCkleCkvuCkouClguCkqOCkn+CkvuCkleCksuClhyDgpJzgpL7gpIfgpLJcbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE2OQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiBwYWNrYWdlICVzIHJlcXVpcmVzIHJlaW5zdGFsbGF0aW9uLCB3aWxsIG5vdCByZW1vdmUuXG4iCittc2dzdHIgIuCkoeCkv+CkquCkv+CkleClh+CknOClgDog4KSq4KWF4KSV4KWH4KScICVz4KSy4KS+IOCkquClgeCksOCljeCkqOCkuOCljeCkpeCkvuCkquCkqOClh+CkmuClgCDgpJzgpLDgpYLgpLDgpYAg4KSG4KS54KWHLCDgpKTgpYcg4KSV4KS+4KSi4KWC4KSoIOCkn+CkvuCkleCksuClhyDgpJzgpL7gpKPgpL7gpLAg4KSo4KS+4KS54KWALlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTc4CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IHllcywgd2lsbCByZW1vdmUgJXMgaW4gZmF2b3VyIG9mICVzLlxuIgorbXNnc3RyICLgpKHgpL/gpKrgpL/gpJXgpYfgpJzgpYA6IOCkueCliyAlc+CkmuCljeCkr+CkviDgpK7gpLDgpY3gpJzgpYDgpKjgpYHgpLjgpL7gpLAgJXMg4KSV4KSi4KWC4KSoIOCkn+CkvuCkleCksuClhyDgpJzgpL7gpIfgpLIuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmxpY3RpbmcgcGFja2FnZXMgLSBub3QgaW5zdGFsbGluZyAlLjI1MHMiCittc2dzdHIgIuCkquCksOCkuOCljeCkquCksOCkteCkv+CksOCli+Ckp+ClgCDgpKrgpYXgpJXgpYfgpJzgpYfgpLggLSAlLjI1MHPgpJrgpYAg4KS44KWN4KSl4KS+4KSq4KSo4KS+IOCkueCli+CkpCDgpKjgpL7gpLngpYAiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExOTEKKyMsIGZ1enp5Cittc2dpZCAiaWdub3JpbmcgY29uZmxpY3QsIG1heSBwcm9jZWVkIGFueXdheSEiCittc2dzdHIgIuCkoeCkv+CkquCkv+CkleClh+CknOClgDog4KSk4KS+4KSV4KS/4KSmIC0g4KSq4KSw4KS44KWN4KSq4KSw4KS14KS/4KSw4KWL4KSn4KS+4KSV4KSh4KWHIOCkpuClgeCksOCljeCksuCkleCljeCktyDgpJXgpLDgpL/gpKQg4KSG4KS54KWHLCDgpKTgpLDgpYAg4KSq4KWB4KSi4KWHIOCknOCkvuCkiiDgpLbgpJXgpKTgpL4gIVxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjM1CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgLS1yZWN1cnNpdmUgbmVlZHMgYXQgbGVhc3Qgb25lIHBhdGggYXJndW1lbnQiCittc2dzdHIgIi0tJXMgLS3gpLDgpL/gpJXgpLDgpY3gpLjgpYDgpLXgpY3gpLkv4KSq4KWB4KSo4KWN4KS54KS+OiDgpKrgpYHgpKjgpY3gpLngpL46IOCksuCkvuCkl+Cko+CkvuCksOClgCDgpJfgpLDgpJwg4KSV4KSu4KWA4KSk4KSV4KSu4KWAIOCkj+CklSDgpKrgpL7gpKUg4KSG4KSw4KSX4KWN4KSv4KWB4KSu4KWH4KSo4KWN4KSfIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjQ1CisjLCBmdXp6eQorbXNnaWQgImZpbmQgZm9yIGRwa2cgLS1yZWN1cnNpdmUiCittc2dzdHIgIi0t4KSw4KS/4KSV4KSw4KWN4KS44KWA4KS14KWN4KS54KSy4KS+IOCksuCkvuCkl+Cko+CkvuCksOCkviDgpLbgpYvgpKcg4KSF4KSu4KSy4KS+4KSkIOCkhuCko+Cko+CljeCkr+CkvuCkuCDgpIXgpK/gpLbgpLjgpY3gpLXgpYAiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNjYKK21zZ2lkICJmYWlsZWQgdG8gZmRvcGVuIGZpbmQncyBwaXBlIgorbXNnc3RyICLgpKvgpL7gpIfgpKjgpY3gpKHgpY3gpLgg4KSq4KS+4KSH4KSqIOCkj+Ckq+CkoeClgOCkk+CkquCkqCDgpJXgpLDgpKPgpY3gpK/gpL7gpLgg4KSF4KSv4KS24KS44KWN4KS14KWAIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjcyCittc2dpZCAiZXJyb3IgcmVhZGluZyBmaW5kJ3MgcGlwZSIKK21zZ3N0ciAi4KSr4KS+4KSH4KSo4KWN4KSh4KWN4KS4IOCkquCkvuCkh+CkqiDgpLXgpL7gpJrgpKPgpY3gpK/gpL7gpLgg4KSm4KWL4KS3IOCkr+Clh+CkpOCli+CkryIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3MworbXNnaWQgImVycm9yIGNsb3NpbmcgZmluZCdzIHBpcGUiCittc2dzdHIgIuCkq+CkvuCkh+CkqOCljeCkoeCljeCkuCDgpKrgpL7gpIfgpKog4KSs4KSC4KSmIOCkleCksOCko+CljeCkr+CkvuCkuCDgpKbgpYvgpLcg4KSv4KWH4KSk4KWL4KSvIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjc2CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbmQgZm9yIC0tcmVjdXJzaXZlIHJldHVybmVkIHVuaGFuZGxlZCBlcnJvciAlaSIKK21zZ3N0ciAiLS3gpKrgpYHgpKjgpY3gpLngpL7gpIMg4KSq4KWB4KSo4KWN4KS54KS+4KSDIOCkquCksOCkpCDgpK/gpYfgpKPgpL7gpLDgpYAg4KSo4KS+4KSm4KWB4KSw4KWB4KS44KWN4KSkIOCkneCkvuCksuClh+CksuClgCAlaSDgpJrgpYLgpJUg4KS24KWL4KSn4KS+IgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjc5Cittc2dpZCAic2VhcmNoZWQsIGJ1dCBmb3VuZCBubyBwYWNrYWdlcyAoZmlsZXMgbWF0Y2hpbmcgKi5kZWIpIgorbXNnc3RyICLgpLbgpYvgpKcg4KSY4KWH4KSk4KSy4KS+LCDgpKrgpKMg4KSq4KWF4KSV4KWH4KSc4KWH4KS4ICjgpKvgpL7gpIfgpLIgKi5kZWIpIOCkuOCkvuCkquCkoeCksuClhyDgpKjgpL7gpLngpYAiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhdCBsZWFzdCBvbmUgcGFja2FnZSBhcmNoaXZlIGZpbGUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMg4KSy4KS+IOCkleCkruClgOCkpOCkleCkruClgCDgpI/gpJXgpL4g4KSq4KWF4KSV4KWH4KSc4KSa4KWN4KSv4KS+IOCkheCksOCljeCkleCkvuCkh+CkteCljeCkuSDgpKvgpL7gpIfgpLLgpJrgpY3gpK/gpL4g4KSG4KSw4KSX4KWN4KSv4KWC4KSu4KWH4KSC4KSf4KSa4KWAIOCkl+CksOCknCDgpIbgpLngpYciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzMjUgc3JjL2RpdmVydGNtZC5jOjc4IHNyYy9kaXZlcnRjbWQuYzoxMTgKKyM6IHNyYy9lbnF1aXJ5LmM6MTY2IHNyYy9lbnF1aXJ5LmM6Mjc5IHNyYy9lbnF1aXJ5LmM6NDQ5IHNyYy9lbnF1aXJ5LmM6NDUxCisjOiBzcmMvZW5xdWlyeS5jOjQ2NCBzcmMvbWFpbi5jOjY2IHNyYy9tYWluLmM6MTYzIHNyYy9tYWluLmM6MzE0CisjOiBzcmMvbWFpbi5jOjQ5MyBzcmMvcGFja2FnZXMuYzoyNTQgc3JjL3F1ZXJ5Y21kLmM6MjUyIHNyYy9xdWVyeWNtZC5jOjM1NQorIzogc3JjL3F1ZXJ5Y21kLmM6Mzk2IHNyYy9xdWVyeWNtZC5jOjQwNCBzcmMvcXVlcnljbWQuYzo0NDggc3JjL3F1ZXJ5Y21kLmM6NTE3CisjOiBzcmMvcXVlcnljbWQuYzo2MDYgc3JjL3F1ZXJ5Y21kLmM6NjUwIHNyYy9zZWxlY3QuYzo3OSBzcmMvc3RhdGNtZC5jOjY4CisjOiBzcmMvc3RhdGNtZC5jOjk4IHNyYy90cmlnY21kLmM6NTggc3JjL3RyaWdjbWQuYzo5MCBkcGtnLWRlYi9idWlsZC5jOjQ0MQorIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIxNyBkcGtnLWRlYi9leHRyYWN0LmM6MjUwIGRwa2ctZGViL2luZm8uYzoyMDMKKyM6IGRwa2ctZGViL2luZm8uYzoyNjUgZHBrZy1kZWIvbWFpbi5jOjYwIGRwa2ctZGViL21haW4uYzoxMjYKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjI1NyBkcGtnLXNwbGl0L21haW4uYzo1NCBkcGtnLXNwbGl0L21haW4uYzo5OAorIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE0NCBkcGtnLXNwbGl0L3F1ZXVlLmM6MjgwCittc2dpZCAiPHN0YW5kYXJkIG91dHB1dD4iCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTMyNiBzcmMvcGFja2FnZXMuYzoyNTUgc3JjL3F1ZXJ5Y21kLmM6MjUzCisjOiBzcmMvcXVlcnljbWQuYzozNTMgc3JjL3F1ZXJ5Y21kLmM6NDU0IHNyYy9xdWVyeWNtZC5jOjUxOCBzcmMvc2VsZWN0LmM6ODAKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjE2OSBkcGtnLXNwbGl0L3F1ZXVlLmM6MjE4Cittc2dpZCAiPHN0YW5kYXJkIGVycm9yPiIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzY3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJTZWxlY3RpbmcgcHJldmlvdXNseSBkZXNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dpZCAiU2VsZWN0aW5nIHByZXZpb3VzbHkgdW5zZWxlY3RlZCBwYWNrYWdlICVzLlxuIgorbXNnc3RyICLgpIXgpJfgpYvgpKbgpLAg4KSo4KS/4KS14KShIOCksOCkpuCljeCkpiDgpJ3gpL7gpLLgpYfgpLLgpY3gpK/gpL4gJXMg4KSq4KWF4KSV4KWH4KSc4KSa4KWAIOCkqOCkv+CkteCkoSDgpLngpYvgpKQg4KSG4KS54KWHLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzcxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJTa2lwcGluZyBkZXNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dpZCAiU2tpcHBpbmcgdW5zZWxlY3RlZCBwYWNrYWdlICVzLlxuIgorbXNnc3RyICLgpKjgpL/gpLXgpKEg4KSw4KSm4KWN4KSmIOCkneCkvuCksuClh+CksuCljeCkr+CkviAlcyDgpKrgpYXgpJXgpYfgpJwg4KS14KSX4KSz4KSkIOCkhuCkueClhy5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTM4NworIywgYy1mb3JtYXQKK21zZ2lkICJWZXJzaW9uICUuMjUwcyBvZiAlLjI1MHMgYWxyZWFkeSBpbnN0YWxsZWQsIHNraXBwaW5nLlxuIgorbXNnc3RyICIlLjI1MHMg4KSa4KWAICUuMjUwcyDgpIbgpLXgpYPgpKTgpY3gpKTgpYAg4KSF4KSX4KWL4KSm4KSwIOCkuOCljeCkpeCkvuCkquCkqCDgpJXgpYfgpLLgpYDgpLLgpYAg4KSG4KS54KWHLCDgpLXgpJfgpLPgpKQg4KSG4KS54KWHLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzk3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJkb3duZ3JhZGluZyAlLjI1MHMgZnJvbSAlLjI1MHMgdG8gJS4yNTBzLiIKK21zZ3N0ciAiJXMgLSDgpKTgpL7gpJXgpL/gpKYgOiAlLjI1MHMg4KS54KWHICUuMjUwc+CksuCkviAgJS4yNTBzIOCkteCksOClguCkqCDgpJbgpL7gpLLgpYAg4KSG4KSj4KSk4KWHLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxNDAyCisjLCBjLWZvcm1hdAorbXNnaWQgIldpbGwgbm90IGRvd25ncmFkZSAlLjI1MHMgZnJvbSB2ZXJzaW9uICUuMjUwcyB0byAlLjI1MHMsIHNraXBwaW5nLlxuIgorbXNnc3RyICIlLjI1MHMg4KS54KWHICUuMjUwc+CksuCkviAgJS4yNTBzIOCkteCksOClguCkqCDgpJbgpL7gpLLgpYAg4KSG4KSj4KSj4KS+4KSwIOCkqOCkvuCkueClgCwg4KS14KSX4KSz4KSkIOCkhuCkueClhy5cbiIKKworIzogc3JjL2NsZWFudXAuYzo4NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidW5hYmxlIHRvIHJlbW92ZSBuZXdseS1pbnN0YWxsZWQgdmVyc2lvbiBvZiBgJS4yNTBzJyB0byBhbGxvdyByZWluc3RhbGxhdGlvbiAiCisib2YgYmFja3VwIGNvcHkiCittc2dzdHIgIiIKKyLgpKrgpYHgpLDgpY3gpKjgpLjgpY3gpKXgpL7gpKrgpKjgpL4g4KSV4KSw4KSj4KWN4KSv4KS+4KS44KS+4KSg4KWAIGAlLjI1MHMn4KSa4KWAIOCkqOCkteClgOCkqCDgpLjgpY3gpKXgpL7gpKrgpKgg4KSV4KWH4KSy4KWH4KSy4KWAIOCkhuCkteClg+CkpOCljeCkpOClgCDgpJXgpL7gpKLgpYHgpKgg4KSf4KS+4KSV4KSj4KWN4KSv4KS+4KS4IOCkheCkuOCkruCksOCljeCkpSDgpIbgpLngpYciCisKKyM6IHNyYy9jbGVhbnVwLmM6OTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlc3RvcmUgYmFja3VwIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dzdHIgImAlLjI1MHMn4KSa4KWN4KSv4KS+IOCkrOClheCkleCkqiDgpIbgpLXgpYPgpKTgpY3gpKTgpYDgpJrgpYAg4KSq4KWB4KSo4KSw4KWN4KSw4KSa4KSo4KS+IOCkleCksOCko+CljeCkr+CkvuCkuCDgpIXgpLjgpK7gpLDgpY3gpKUg4KSG4KS54KWHIgorCisjOiBzcmMvY2xlYW51cC5jOjk3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gcmVzdG9yZSBiYWNrdXAgdmVyc2lvbiBvZiBgJS4yNTBzJyIKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIGJhY2t1cCBjb3B5IG9mICclLjI1MHMnIgorbXNnc3RyICJgJS4yNTBzJ+CkmuCljeCkr+CkviDgpKzgpYXgpJXgpKog4KSG4KS14KWD4KSk4KWN4KSk4KWA4KSa4KWAIOCkquClgeCkqOCksOCljeCksOCkmuCkqOCkviDgpJXgpLDgpKPgpY3gpK/gpL7gpLgg4KSF4KS44KSu4KSw4KWN4KSlIOCkhuCkueClhyIKKworIzogc3JjL2NsZWFudXAuYzoxMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBuZXdseS1pbnN0YWxsZWQgdmVyc2lvbiBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiYCUuMjUwcyfgpJrgpYAg4KSo4KS14KWA4KSoIOCkuOCljeCkpeCkvuCkquCkqCDgpJXgpYfgpLLgpYfgpLLgpYAg4KSG4KS14KWD4KSk4KWN4KSk4KWAIOCkleCkvuCkouClguCkqCDgpJ/gpL7gpJXgpKPgpY3gpK/gpL7gpLgg4KSF4KS44KSu4KSw4KWN4KSlIOCkhuCkueClhyIKKworIzogc3JjL2NsZWFudXAuYzoxMDgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBuZXdseS1leHRyYWN0ZWQgdmVyc2lvbiBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiYCUuMjUwcyfgpJrgpYAg4KSo4KS14KWA4KSoIOCkteClh+CkmuCksuClh+CksuClgCAvZXh0cmFjdGVkIOCkhuCkteClg+CkpOCljeCkpOClgCDgpJXgpL7gpKLgpYLgpKgg4KSf4KS+4KSV4KSj4KWN4KSv4KS+4KS4IOCkheCkuOCkruCksOCljeCkpSDgpIbgpLngpYciCisKKyM6IHNyYy9jb25maWd1cmUuYzoxMDQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byBzdGF0IG5ldyBkaXN0IGNvbmZmaWxlIGAlLjI1MHMnIgorbXNnaWQgInVuYWJsZSB0byBzdGF0IG5ldyBkaXN0cmlidXRlZCBjb25mZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAi4KSo4KS14KWA4KSoIOCkoeCkv+CkuOCljeCknyDgpJXgpYngpKjgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KS44KWN4KSf4KWF4KSfIOCkueCli+Cko+CljeCkr+CkvuCkuCDgpIXgpK/gpLbgpLjgpY3gpLXgpYAiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgY3VycmVudCBpbnN0YWxsZWQgY29uZmZpbGUgYCUuMjUwcyciCittc2dzdHIgIuCkmuCkvuCksuClgiDgpLjgpY3gpKXgpL7gpKrgpKgg4KSV4KWH4KSy4KWH4KSy4KWAIGAlLjI1MHMnIOCkleClieCkqOCkq+CkvuCkh+CksiDgpLjgpY3gpJ/gpYXgpJ8g4KS54KWL4KSj4KWN4KSv4KS+4KS4IOCkheCkr+CktuCkuOCljeCkteClgCIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjEyNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiQ29uZmlndXJhdGlvbiBmaWxlIGAlcycsIGRvZXMgbm90IGV4aXN0IG9uIHN5c3RlbS5cbiIKKyJJbnN0YWxsaW5nIG5ldyBjb25maWcgZmlsZSBhcyB5b3UgcmVxdWVzdGVkLlxuIgorbXNnc3RyICIiCisiXG4iCisi4KSV4KWJ4KSo4KSr4KS/4KSX4KSw4KWH4KS24KSoIOCkq+CkvuCkh+CksiAnJXMnIOCkuOCkv+CkuOCljeCkn+CkruCkteCksC/gpLjgpILgpJfgpKPgpJXgpL7gpLXgpLAg4KSF4KS44KWN4KSk4KS/4KSk4KWN4KS14KS+4KSkIOCkqOCkvuCkueClgC5cbiIKKyLgpKTgpYHgpK7gpJrgpY3gpK/gpL4g4KS14KS/4KSo4KSC4KSk4KWA4KSo4KWB4KS44KS+4KSwIOCkqOCkteClgOCkqCDgpJXgpYngpKjgpKvgpL/gpJcg4KSr4KS+4KSH4KSy4KSa4KWAIOCkuOCljeCkpeCkvuCkquCkqOCkviDgpLngpYvgpKQg4KSG4KS54KWHLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTY4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIHJlbW92ZSBvbGQgYmFja3VwICclLjI1MHMnOiAlcyIKK21zZ3N0ciAi4KSh4KS/4KSq4KS/4KSV4KWH4KSc4KWAOiAlczog4KSk4KS+4KSV4KS/4KSmIC0gIGAlLjI1MHMnIOCkueClhyDgpJzgpYHgpKjgpYcg4KSs4KWF4KSV4KSqIOCkleCkvuCkouClguCkqCDgpJ/gpL7gpJXgpKPgpY3gpK/gpL7gpLgg4KSF4KSv4KS24KS44KWN4KS14KWAOiAlc1xuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTc2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIHJlbmFtZSAnJS4yNTBzJyB0byAnJS4yNTBzJzogJXMiCittc2dzdHIgIiIKKyLgpKHgpL/gpKrgpL/gpJXgpYfgpJzgpYA6ICVzOiDgpKTgpL7gpJXgpL/gpKYgLSBgJS4yNTBzJyDgpJrgpYcgYCUuMjUwcycg4KSq4KWB4KSo4KWN4KS54KS+IOCkqOCkvuCkruCkvuCkguCkleCkqCDgpJXgpLDgpKPgpY3gpK/gpL7gpLgg4KSF4KSv4KS24KS44KWN4KS14KWAOiAlc1xuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTgyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIHJlbW92ZSAnJS4yNTBzJzogJXMiCittc2dzdHIgIiVzOiDgpJzgpYDgpJ3gpL/gpKog4KSa4KWAIOCkheCkguCkruCksuCkrOCknOCkvuCkteCko+ClgCDgpLngpYvgpIkg4KS24KSV4KSy4KWAIOCkqOCkvuCkueClgCAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE4OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW1vdmUgb2xkIGRpc3RyaWJ1dGVkIHZlcnNpb24gJyUuMjUwcyc6ICVzIgorbXNnc3RyICIiCisi4KSh4KS/4KSq4KS/4KSV4KWH4KSc4KWAOiAlczog4KSk4KS+4KSV4KS/4KSmIC0gYOCknOClgeCkqOClgCAlLjI1MHMnIOCkoeCkv+CkuOCljeCkn+CljeCksOCkv+CkrCDgpIbgpLXgpYPgpKTgpY3gpKTgpYAg4KSV4KS+4KSi4KWC4KSoIOCkn+CkvuCkleCko+CljeCkr+CkvuCkuCDgpIXgpK/gpLbgpLjgpY3gpLXgpYA6ICVzXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzoxOTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlICclLjI1MHMnIChiZWZvcmUgb3ZlcndyaXRlKTogJXMiCittc2dzdHIgIiIKKyLgpKHgpL/gpKrgpL/gpJXgpYfgpJzgpYA6ICVzOiDgpKTgpL7gpJXgpL/gpKYgLSBgJS4yNTBzJyDgpJXgpL7gpKLgpYLgpKgg4KSf4KS+4KSV4KSj4KWN4KSv4KS+4KS4IOCkheCkr+CktuCkuOCljeCkteClgCAo4KSq4KWB4KSo4KWN4KS54KS+IOCksuCkv+CkueCkv+Cko+CljeCkr+CkvuCkmuCljeCkr+CkviDgpIbgpKfgpYApOiAlc1xuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTk2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIGxpbmsgJyUuMjUwcycgdG8gJyUuMjUwcyc6ICVzIgorbXNnc3RyICIiCisi4KSh4KS/4KSq4KS/4KSV4KWH4KSc4KWAOiAlczog4KSk4KS+4KSV4KS/4KSmIC0gJS4yNTBzJyDgpLngpL8gYCUuMjUwcycg4KSy4KS+IOCksuCkv+CkguCklSDgpJXgpLDgpKPgpY3gpK/gpL7gpLgg4KSF4KSv4KS24KS44KWN4KS14KWAIOCkneCkvuCksuClgCDgpIbgpLngpYc6ICVzXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzoyMDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW5zdGFsbGluZyBuZXcgdmVyc2lvbiBvZiBjb25maWcgZmlsZSAlcyAuLi5cbiIKK21zZ3N0ciAiJXMg4KSv4KS+IOCkleClieCkqOCkq+Ckv+CklyDgpKvgpL7gpIfgpLLgpJrgpY3gpK/gpL4g4KSo4KS14KWA4KSoIOCkhuCkteClg+CkpOCljeCkpOClgOCkmuClgCDgpLjgpY3gpKXgpL7gpKrgpKjgpL4g4KSV4KSw4KS/4KSkIOCkhuCkueClhy4uLi5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjIwNiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NTQ2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIGAlLjI1MHMnIGFzIGAlLjI1MHMnIgorbXNnc3RyICJgJS4yNTBzJyDgpLngpYcgYCUuMjUwcycg4KSu4KWN4KS54KSj4KWC4KSoIOCkuOCljeCkpeCkvuCkquCkqOCkviDgpJXgpLDgpKPgpY3gpK/gpL7gpLgg4KSF4KS44KSu4KSw4KWN4KSlIOCkhuCkueClhyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI1NworIywgYy1mb3JtYXQKK21zZ2lkICJubyBwYWNrYWdlIG5hbWVkIGAlcycgaXMgaW5zdGFsbGVkLCBjYW5ub3QgY29uZmlndXJlIgorbXNnc3RyICJgJXMnIOCkueClhyDgpKjgpL7gpLUg4KSo4KS44KSy4KWH4KSy4KWHIOCkquClheCkleClh+CknCDgpKrgpY3gpLDgpLjgpY3gpKXgpL7gpKrgpL/gpKQg4KSd4KS+4KSy4KWHIOCkhuCkueClhywg4KSk4KWN4KSv4KS+4KSa4KWAIOCknOClgeCks+CkteCko+ClgCDgpLbgpJXgpY3gpK8g4KSo4KS+4KS54KWAIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjYwCisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgJS4yNTBzIGlzIGFscmVhZHkgaW5zdGFsbGVkIGFuZCBjb25maWd1cmVkIgorbXNnc3RyICLgpKrgpYXgpJXgpYfgpJwgJS4yNTBzIOCkmuClgCDgpLjgpY3gpKXgpL7gpKrgpKjgpL4g4KSG4KSj4KS/IOCknOClgeCks+CkteCko+ClgCDgpIbgpKfgpYDgpJog4KSd4KS+4KSy4KWH4KSy4KWAIOCkhuCkueClhyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI2MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisicGFja2FnZSAlLjI1MHMgaXMgbm90IHJlYWR5IGZvciBjb25maWd1cmF0aW9uXG4iCisiIGNhbm5vdCBjb25maWd1cmUgKGN1cnJlbnQgc3RhdHVzIGAlLjI1MHMnKSIKK21zZ3N0ciAiIgorIuCkquClheCkleClh+CknCAlLjI1MHMg4KS54KWHIOCknOClgeCks+CkteCko+ClgOCkuOCkvuCkoOClgCDgpKTgpK/gpL7gpLAg4KSo4KS+4KS54KWAXG4iCisi4KSc4KWB4KSz4KS14KSj4KWAIOCktuCkleCljeCkryDgpKjgpL7gpLngpYAgKOCkuOCkp+CljeCkr+CkvuCkmuClgCDgpLjgpY3gpKXgpL/gpKTgpYAgYCUuMjUwcycpIgorCisjOiBzcmMvY29uZmlndXJlLmM6Mjk0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBkZXBlbmRlbmN5IHByb2JsZW1zIHByZXZlbnQgY29uZmlndXJhdGlvbiBvZiAlczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorIuCkoeCkv+CkquCkv+CkleClh+CknOClgDog4KSv4KS+4KS14KSwIOCkheCkteCksuCkguCkrOClguCkqCDgpIXgpLjgpLLgpYfgpLLgpY3gpK/gpL4g4KS44KSu4KS44KWN4KSv4KS+4KSC4KSu4KWB4KSz4KWHICVz4KSa4KWAIOCknOClgeCks+CkteCko+ClgCDgpJXgpLDgpKPgpY3gpK/gpL7gpLgg4KSu4KSc4KWN4KSc4KS+4KS1IOCkleCksOCkpOClhzpcbiIKKyIlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI5NworbXNnaWQgImRlcGVuZGVuY3kgcHJvYmxlbXMgLSBsZWF2aW5nIHVuY29uZmlndXJlZCIKK21zZ3N0ciAi4KSF4KS14KSy4KSC4KSs4KWC4KSoIOCkheCkuOCksuClh+CksuCljeCkr+CkviDgpLjgpK7gpLjgpY3gpK/gpL7gpILgpK7gpYHgpLPgpYcgLSDgpZvgpYHgpLPgpLXgpKPgpYAg4KSoIOCkleCksOCkv+CkpOCkviDgpLjgpYvgpKHgpYLgpKgg4KSm4KWH4KSk4KWHIgorCisjOiBzcmMvY29uZmlndXJlLmM6MzAxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiAlczogZGVwZW5kZW5jeSBwcm9ibGVtcywgYnV0IGNvbmZpZ3VyaW5nIGFueXdheSBhcyB5b3UgcmVxdWVzdGVkOlxuIgorIiVzIgorbXNnc3RyICIiCisi4KSh4KS/4KSq4KS/4KSV4KWH4KSc4KWAOiAlczog4KSF4KS14KSy4KSC4KSs4KWC4KSoIOCkheCkuOCksuClh+CksuCljeCkr+CkviDgpLjgpK7gpLjgpY3gpK/gpL7gpILgpK7gpYHgpLPgpYcsIOCkquCksOCkguCkpOClgiDgpKTgpYHgpK7gpY3gpLngpYAg4KSV4KWH4KSy4KWH4KSy4KWN4KSv4KS+IOCkteCkv+CkqOCkguCkpOClgOCkqOClgeCkuOCkvuCksCDgpJzgpYHgpLPgpLXgpKPgpYAg4KSV4KSw4KS/4KSkIOCkhuCkueClhzpcbiIKKyIlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjMwOQorbXNnaWQgIiIKKyJQYWNrYWdlIGlzIGluIGEgdmVyeSBiYWQgaW5jb25zaXN0ZW50IHN0YXRlIC0geW91IHNob3VsZFxuIgorIiByZWluc3RhbGwgaXQgYmVmb3JlIGF0dGVtcHRpbmcgY29uZmlndXJhdGlvbi4iCittc2dzdHIgIiIKKyLgpKTgpYHgpK7gpJrgpYcg4KSq4KWF4KSV4KWH4KScIOCkheCkpOCkv+CktuCkryDgpLXgpL/gpLjgpILgpJfgpKQg4KSq4KSw4KS/4KS44KWN4KSl4KS/4KSk4KWA4KSkIOCkhuCkueClhyAtIOCkpOCljeCkr+CkvuCkmuClgCDgpJzgpYHgpLPgpLXgpKPgpYAg4KSV4KSw4KSj4KWN4KSv4KS+4KSa4KWN4KSv4KS+IOCkquCljeCksOCkr+CkpOCljeCkqOCkvuCkhuCkp+ClgCDgpKTgpYHgpK7gpY3gpLngpYAg4KSk4KWN4KSv4KS+4KSa4KWAICIKKyLgpKrgpYHgpLDgpY3gpKjgpLjgpY3gpKXgpL7gpKrgpKjgpL4g4KSV4KSw4KS+IgorCisjOiBzcmMvY29uZmlndXJlLmM6MzEyCisjLCBjLWZvcm1hdAorbXNnaWQgIlNldHRpbmcgdXAgJXMgKCVzKSAuLi5cbiIKK21zZ3N0ciAi4KS44KWH4KSf4KS/4KSC4KSXIOCkueCli+CkpCDgpIbgpLngpYcgJXMgKCVzKSAuLi5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjM5NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiB1bmFibGUgdG8gc3RhdCBjb25maWcgZmlsZSAnJXMnXG4iCisiICg9ICclcycpOiAlcyIKK21zZ3N0ciAiIgorIuCkoeCkv+CkquCkv+CkleClh+CknOClgDogJXM6IOCkpOCkvuCkleCkv+CkpiAtIGAlcycg4KSV4KWJ4KSo4KSr4KS/4KSXIOCkq+CkvuCkh+CksiDgpLjgpY3gpJ/gpYXgpJ8g4KS54KWL4KSj4KWN4KSv4KS+4KS4IOCkheCkuOCkruCksOCljeCkpSDgpIbgpLngpYdcbiIKKyIgKD0gYCVzJyk6ICVzXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo0MDkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogY29uZmlnIGZpbGUgJyVzJyBpcyBhIGNpcmN1bGFyIGxpbmtcbiIKKyIgKD0gJyVzJykiCittc2dzdHIgIiIKKyLgpKHgpL/gpKrgpL/gpJXgpYfgpJzgpYA6ICVzOiDgpKTgpL7gpJXgpL/gpKYgLSDgpJXgpYngpKjgpKvgpL/gpJcg4KSr4KS+4KSH4KSyIGAlcycg4KS54KS/IOCkuOCksOCljeCkleCljeCkr+ClgeCksuCksCDgpLLgpL/gpILgpJUg4KSG4KS54KWHXG4iCisiICg9IGAlcycpXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo0MTgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogdW5hYmxlIHRvIHJlYWRsaW5rIGNvbmZmaWxlICclcydcbiIKKyIgKD0gJyVzJyk6ICVzIgorbXNnc3RyICIiCisi4KSh4KS/4KSq4KS/4KSV4KWH4KSc4KWAOiAlczog4KSk4KS+4KSV4KS/4KSmIC0gYCVzJyDgpJXgpYngpKjgpKvgpL7gpIfgpLIg4KSw4KS/4KSh4KSy4KS/4KSC4KSVIOCkleCksOCko+CljeCkr+CkvuCkuCDgpIXgpLjgpK7gpLDgpY3gpKUg4KSG4KS54KWHXG4iCisiICg9IGAlcycpOiAlc1xuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDQ0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IGNvbmZmaWxlICclLjI1MHMnIHJlc29sdmVzIHRvIGRlZ2VuZXJhdGUgZmlsZW5hbWVcbiIKKyIgKCclcycgaXMgYSBzeW1saW5rIHRvICclcycpIgorbXNnc3RyICIiCisi4KSh4KS/4KSq4KS/4KSV4KWH4KSc4KWAOiAlczog4KSk4KS+4KSV4KS/4KSmIC0gIOCkleClieCkqOCkq+CkvuCkh+CksiBgJS4yNTBzJyDgpKvgpL7gpIfgpLLgpKjgpL7gpLXgpL7gpJrgpYcg4KS14KS/4KSY4KSf4KSoIOCkleCksOCko+CljeCkr+CkvuCkmuClhyDgpKDgpLDgpLXgpL/gpKTgpYdcbiIKKyIgKGAlcycg4KS54KWHIGAlcycg4KSy4KS+IOCkuOCkv+CkruCksuCkv+CkguCklSDgpIbgpLngpYcpXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo0NjAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBjb25mZmlsZSAnJS4yNTBzJyBpcyBub3QgYSBwbGFpbiBmaWxlIG9yIHN5bWxpbmsgKD0gJyVzJykiCittc2dzdHIgIiIKKyLgpKHgpL/gpKrgpL/gpJXgpYfgpJzgpYA6ICVzOiDgpKTgpL7gpJXgpL/gpKYgLSDgpJXgpYngpKjgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KS54KS/IOCkuOCkvuCkp+ClgCDgpKvgpL7gpIfgpLIg4KSV4KS/4KSC4KS14KS+IOCkuOCkv+CkruCksuCkv+CkguCklSDgpKjgpL7gpLngpYAgKD0gYCIKKyIlcycpXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo0ODYKK21zZ2lkICJtZDVoYXNoIgorbXNnc3RyICJtZDVoYXNoIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDkyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogdW5hYmxlIHRvIG9wZW4gY29uZmZpbGUgJXMgZm9yIGhhc2g6ICVzIgorbXNnc3RyICLgpKHgpL/gpKrgpL/gpJXgpYfgpJzgpYA6ICVzOiDgpKTgpL7gpJXgpL/gpKYgLSDgpJXgpYngpKjgpKvgpL7gpIfgpLIgJXMg4KS54KS/IOCkueClheCktuCkuOCkvuCkoOClgCDgpIngpJjgpKHgpKPgpY3gpK/gpL7gpLgg4KSF4KS44KSu4KSw4KWN4KSlIOCkhuCkueClhzogJXNcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjUyMiBzcmMvY29uZmlndXJlLmM6NTI2Cittc2dpZCAiY29uZmZpbGUgZGlmZmVyZW5jZSB2aXN1YWxpemVyIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo1NDMKK21zZ2lkICJUeXBlIGBleGl0JyB3aGVuIHlvdSdyZSBkb25lLlxuIgorbXNnc3RyICLgpKTgpYHgpK7gpJrgpYcg4KSd4KS+4KSy4KWN4KSv4KS+4KS14KSwICfgpI/gpJfgpY3gpJ3gpL/gpJ8nIOCkn+CkvuCkh+CkqiDgpJXgpLDgpL4uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo1NTIgc3JjL2NvbmZpZ3VyZS5jOjU1NgorbXNnaWQgImNvbmZmaWxlIHNoZWxsIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIkNvbmZpZ3VyYXRpb24gZmlsZSBgJXMnIgorbXNnc3RyICIiCisiXG4iCisi4KSV4KS+4KWF4KSo4KSr4KS/4KSX4KSw4KWH4KS24KSoIOCkq+CkvuCkh+CksiBgJXMnIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjA0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAoYWN0dWFsbHkgYCVzJykiCittc2dzdHIgIijgpKrgpY3gpLDgpKTgpY3gpK/gpJXgpY3gpLcgYCVzJykiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiA9PT4gRmlsZSBvbiBzeXN0ZW0gY3JlYXRlZCBieSB5b3Ugb3IgYnkgYSBzY3JpcHQuXG4iCisiID09PiBGaWxlIGFsc28gaW4gcGFja2FnZSBwcm92aWRlZCBieSBwYWNrYWdlIG1haW50YWluZXIuXG4iCittc2dzdHIgIiIKKyJcbiIKKyI9PT4g4KS44KS/4KS44KWN4KSf4KSu4KS14KSw4KWA4KSyL+CkuOCkguCkl+Cko+CkleCkvuCkteCksOCkv+CksiDgpKvgpL7gpIfgpLIg4KS54KS/IOCkpOClgeCkruCljeCkueClgCDgpJXgpL/gpILgpLXgpL4g4KS44KWN4KSV4KWN4KSw4KS/4KSq4KWN4KSf4KSo4KWHIOCkrOCkqOCkteCksuClh+CksuClgCDgpIbgpLngpYcuXG4iCisiPT0+IOCkquClheCkleClh+CknOCkruCkp+ClgOCksiDgpKvgpL7gpIfgpLIg4KS54KS/IOCkquClheCkleClh+CknCDgpK7gpYfgpILgpJ/gpYfgpKjgpLDgpJXgpKHgpYLgpKgg4KSq4KWB4KSw4KS14KSy4KWH4KSy4KWAIOCkhuCkueClhy5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYxMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiICAgICBOb3QgbW9kaWZpZWQgc2luY2UgaW5zdGFsbGF0aW9uLlxuIgorbXNnc3RyICIiCisiXG4iCisi4KS44KWN4KSl4KS+4KSq4KSo4KS+IOCkneCkvuCksuCljeCkr+CkvuCkquCkvuCkuOClguCkqCDgpKzgpKbgpLLgpLLgpYfgpLLgpYAg4KSo4KS+4KS54KWALlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjE1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgPT0+IE1vZGlmaWVkIChieSB5b3Ugb3IgYnkgYSBzY3JpcHQpIHNpbmNlIGluc3RhbGxhdGlvbi5cbiIKK21zZ3N0ciAiIgorIlxuIgorIiA9PT4g4KS44KWN4KSl4KS+4KSq4KSo4KS+IOCkleClh+CksuCljeCkr+CkvuCkquCkvuCkuOClguCkqCAo4KSk4KWB4KSu4KWN4KS54KWAIOCkheCkpeCkteCkviDgpLjgpY3gpJXgpY3gpLDgpL/gpKrgpY3gpJ/gpKjgpYcpIOCkrOCkpuCksiDgpJXgpYfgpLLgpYcg4KSG4KS54KWH4KSkLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjE2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgPT0+IERlbGV0ZWQgKGJ5IHlvdSBvciBieSBhIHNjcmlwdCkgc2luY2UgaW5zdGFsbGF0aW9uLlxuIgorbXNnc3RyICIiCisiXG4iCisiID09PiDgpLjgpY3gpKXgpL7gpKrgpKjgpL4g4KSV4KWH4KSy4KWN4KSv4KS+4KSq4KS+4KS44KWC4KSoICjgpKTgpYHgpK7gpY3gpLngpYAg4KSF4KSl4KS14KS+IOCkuOCljeCkleCljeCksOCkv+CkquCljeCkn+CkqOClhykg4KSV4KS+4KSi4KWC4KSoIOCkn+CkvuCkleCksuClh+CksuClhy5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYxOQorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IFBhY2thZ2UgZGlzdHJpYnV0b3IgaGFzIHNoaXBwZWQgYW4gdXBkYXRlZCB2ZXJzaW9uLlxuIgorbXNnc3RyICIgPT0+IOCkquClheCkleClh+CknCDgpLXgpL/gpKTgpJXgpLDgpL7gpKjgpYcg4KSF4KSm4KWN4KSv4KSv4KS+4KS14KSkL+CkheCkquCkoeClh+CknyDgpJXgpYfgpLLgpYfgpLLgpY3gpK/gpL4g4KSG4KS14KWD4KSk4KWN4KSk4KWAIOCkquCkvuCkoOCkteCksuCljeCkr+CkviDgpIbgpLngpYfgpKQuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAgICBWZXJzaW9uIGluIHBhY2thZ2UgaXMgdGhlIHNhbWUgYXMgYXQgbGFzdCBpbnN0YWxsYXRpb24uXG4iCittc2dzdHIgIiAgICAg4KSq4KWF4KSV4KWH4KSc4KSu4KSn4KWA4KSyIOCkhuCkteClg+CkpOCljeCkpOClgCDgpIbgpKPgpL8g4KSX4KWH4KSy4KWN4KSv4KS+4KS14KWH4KSz4KWAIOCkuOCljeCkpeCkvuCkquCkqCDgpJXgpYfgpLLgpYfgpLLgpYAg4KSG4KS14KWD4KSk4KWN4KSk4KWAIOCkr+CkviDgpKbgpYvgpKjgpY3gpLngpYAg4KS44KS+4KSw4KSW4KWN4KSv4KS+IOCkhuCkueClh+CkpC5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYyOAorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IFVzaW5nIG5ldyBmaWxlIGFzIHlvdSByZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiA9PT4g4KSk4KWB4KSu4KWN4KS54KWAIOCkteCkv+CkqOCkguCkpOClgCDgpJXgpYfgpLLgpY3gpK/gpL7gpKrgpY3gpLDgpK7gpL7gpKPgpYcg4KSo4KS14KWA4KSoIOCkq+CkvuCkh+CksiDgpLXgpL7gpKrgpLDgpKQg4KSG4KS54KWHLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gVXNpbmcgY3VycmVudCBvbGQgZmlsZSBhcyB5b3UgcmVxdWVzdGVkLlxuIgorbXNnc3RyICIgPT0+IOCkpOClgeCkruCljeCkueClgCDgpLXgpL/gpKjgpILgpKTgpYAg4KSV4KWH4KSy4KWN4KSv4KS+4KSq4KWN4KSw4KSu4KS+4KSj4KWHIOCkmuCkvuCksuClgiDgpJzgpYHgpKjgpYAg4KSr4KS+4KSH4KSyIOCkteCkvuCkquCksOCkpCDgpIbgpLngpYcuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBLZWVwaW5nIG9sZCBjb25maWcgZmlsZSBhcyBkZWZhdWx0LlxuIgorbXNnc3RyICIgPT0+IOCknOClgeCkqOClgCDgpJXgpYngpKjgpKvgpL/gpJcg4KSr4KS+4KSH4KSyIOCkoeCkv+Ckq+ClieCksuCljeCknyDgpK7gpY3gpLngpKPgpYLgpKgg4KSg4KWH4KS14KSkIOCkhuCkueClhy5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY0NQorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IFVzaW5nIG5ldyBjb25maWcgZmlsZSBhcyBkZWZhdWx0LlxuIgorbXNnc3RyICIgPT0+IOCkqOCkteClgOCkqCDgpJXgpYngpKjgpKvgpL/gpJcg4KSr4KS+4KSH4KSyIOCkoeCkv+Ckq+ClieCksuCljeCknyDgpK7gpY3gpLngpKPgpYLgpKgg4KS14KS+4KSq4KSw4KSkIOCkhuCkueClhy5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY1MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIiAgIFdoYXQgd291bGQgeW91IGxpa2UgdG8gZG8gYWJvdXQgaXQgPyAgWW91ciBvcHRpb25zIGFyZTpcbiIKKyIgICAgWSBvciBJICA6IGluc3RhbGwgdGhlIHBhY2thZ2UgbWFpbnRhaW5lcidzIHZlcnNpb25cbiIKKyIgICAgTiBvciBPICA6IGtlZXAgeW91ciBjdXJyZW50bHktaW5zdGFsbGVkIHZlcnNpb25cbiIKKyIgICAgICBEICAgICA6IHNob3cgdGhlIGRpZmZlcmVuY2VzIGJldHdlZW4gdGhlIHZlcnNpb25zXG4iCisiICAgICAgWiAgICAgOiBzdGFydCBhIHNoZWxsIHRvIGV4YW1pbmUgdGhlIHNpdHVhdGlvblxuIgorbXNnc3RyICIiCisiICAg4KSk4KWB4KSu4KWN4KS54KS+4KSy4KS+IOCkpOCljeCkr+CkvuCkrOCkpuCljeCkpuCksiDgpJXgpL7gpK8g4KSV4KSw4KS+4KSv4KSy4KS+IOCkhuCkteCkoeClh+CksiA/IOCkpOClgeCkruCkmuClhyDgpKrgpLDgpY3gpK/gpL7gpK8g4KSG4KS54KWH4KSkOlxuIgorIiAgIOCkteCkvuCkryDgpJXgpL/gpILgpLXgpL4g4KSG4KSvICAgOiDgpKrgpYXgpJXgpYfgpJwg4KSu4KWH4KSC4KSf4KWH4KSo4KSw4KSa4KWAIOCkhuCkteClg+CkpOCljeCkpOClgCDgpLjgpY3gpKXgpL7gpKrgpKgg4KSV4KSw4KSj4KWHXG4iCisiICAg4KSP4KSoIOCkleCkv+CkguCkteCkviDgpJMgICAgOiDgpJrgpL7gpLLgpYIg4KS44KWN4KSl4KS+4KSq4KSoIOCkleClh+CksuClh+CksuClgCDgpIbgpLXgpYPgpKTgpY3gpKTgpYAg4KSg4KWH4KS14KSj4KWHXG4iCisiICAgICAg4KSh4KS/ICAgICAgICA6IOCkhuCkteClg+CkpOCljeCkpOClgOCkruCkp+Ckv+CksiDgpKvgpLDgpJUg4KSm4KSW4KS14KS+XG4iCisiICAgICAg4KSd4KWH4KShICAgICAgIDog4KSq4KSw4KS/4KS44KWN4KSl4KS/4KSk4KWAIOCkpOCkquCkvuCkuOCko+CljeCkr+CkvuCkuOCkvuCkoOClgCDgpLngpYAg4KSq4KWN4KSw4KSV4KWN4KSw4KS/4KSv4KS+IOCkrOClheCkleCkl+CljeCksOCkvuCkieCkguCkoSDgpK7gpKfgpY3gpK/gpYcg4KSV4KSw4KS+XG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIFRoZSBkZWZhdWx0IGFjdGlvbiBpcyB0byBrZWVwIHlvdXIgY3VycmVudCB2ZXJzaW9uLlxuIgorbXNnc3RyICIg4KSk4KWB4KSu4KSa4KWAIOCkmuCkvuCksuClgiDgpIbgpLXgpYPgpKTgpY3gpKTgpYAg4KSg4KWH4KS14KSj4KWHIOCkueCkvyDgpKHgpL/gpKvgpYvgpYXgpLLgpY3gpJ8g4KSV4KWD4KSk4KWAIOCkhuCkueClhy5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY2MQorIywgYy1mb3JtYXQKK21zZ2lkICIgVGhlIGRlZmF1bHQgYWN0aW9uIGlzIHRvIGluc3RhbGwgdGhlIG5ldyB2ZXJzaW9uLlxuIgorbXNnc3RyICLgpKjgpLXgpYAg4KSG4KS14KWD4KSk4KWN4KSk4KWAIOCkuOCljeCkpeCkvuCkquCkqCDgpJXgpLDgpKPgpYcg4KS54KS/IOCkoeCkv+Ckq+Cli+ClheCksuCljeCknyDgpJXgpYPgpKTgpYAg4KSG4KS54KWHLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjY2Cittc2dpZCAiW2RlZmF1bHQ9Tl0iCittc2dzdHIgIlvgpKHgpL/gpKvgpYvgpYXgpLLgpY3gpJ894KSP4KSoXSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY2NworbXNnaWQgIltkZWZhdWx0PVldIgorbXNnc3RyICJb4KSh4KS/4KSr4KWL4KWF4KSy4KWN4KSfPeCkteCkvuCkr10iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NjgKK21zZ2lkICJbbm8gZGVmYXVsdF0iCittc2dzdHIgIlvgpKHgpL/gpKvgpYvgpYXgpLLgpY3gpJ8g4KSo4KS+4KS54KWAXSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY3MQorbXNnaWQgImVycm9yIHdyaXRpbmcgdG8gc3RkZXJyLCBkaXNjb3ZlcmVkIGJlZm9yZSBjb25mZmlsZSBwcm9tcHQiCittc2dzdHIgIuCkj+CkuOCkn+ClgOCkoeClgOCkh+CkhuCksOCkhuCksCDgpLLgpL/gpLngpL/gpKPgpY3gpK/gpL7gpLgg4KSv4KWH4KSj4KS+4KSw4KS+IOCkpuCli+CktyDgpLngpL4g4KSV4KWJ4KSo4KSr4KS+4KSH4KSyIOCkquCljeCksOClieCkruCljeCkquCljeCkn+CkmuCljeCkr+CkviDgpIbgpKfgpYAg4KS24KWL4KSn4KSj4KWN4KSv4KS+4KSkIOCkhuCksuCkviIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY4MAorbXNnaWQgInJlYWQgZXJyb3Igb24gc3RkaW4gYXQgY29uZmZpbGUgcHJvbXB0IgorbXNnc3RyICLgpJXgpYngpKjgpKvgpL7gpIfgpLIg4KSq4KWN4KSw4KWJ4KSu4KWN4KSq4KWN4KSf4KSa4KWN4KSv4KS+IOCkj+CkuOCkn+Ckv+CkoeCkv+Ckh+CkqOCkteCksOCkmuCkviDgpKbgpYvgpLcg4KS14KS+4KSa4KS+IgorCisjOiBzcmMvY29uZmlndXJlLmM6NjgxCittc2dpZCAiRU9GIG9uIHN0ZGluIGF0IGNvbmZmaWxlIHByb21wdCIKK21zZ3N0ciAi4KSV4KWJ4KSo4KSr4KS+4KSH4KSyIOCkquCljeCksOClieCkruCljeCkquCljeCkn+CkmuCljeCkr+CkviDgpI/gpLjgpJ/gpL/gpKHgpYDgpIfgpKjgpLXgpLDgpJrgpYAgRU9GICIKKworIzogc3JjL2RlcGNvbi5jOjE3NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXMgZGVwZW5kcyBvbiAlcyIKK21zZ3N0ciAiIOCkmuCljeCkr+CkvuCkteCksCDgpIXgpLXgpLLgpILgpKzgpYHgpKggIgorCisjOiBzcmMvZGVwY29uLmM6MTc4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlcyBwcmUtZGVwZW5kcyBvbiAlcyIKK21zZ3N0ciAi4KSa4KWN4KSv4KS+4KS14KSwIOCkhuCkp+ClgC/gpIXgpJfgpYvgpKbgpLAg4KSF4KS14KSy4KSC4KSs4KWB4KSoIgorCisjOiBzcmMvZGVwY29uLmM6MTgxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlcyByZWNvbW1lbmRzICVzIgorbXNnc3RyICLgpLjgpLLgpY3gpLLgpL4g4KSm4KWH4KSk4KWHICIKKworIzogc3JjL2RlcGNvbi5jOjE4NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXMgc3VnZ2VzdHMgJXMiCittc2dzdHIgIuCkuOClgeCkmuCkteCkpOClhyIKKworIzogc3JjL2RlcGNvbi5jOjE4NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXMgYnJlYWtzICVzIgorbXNnc3RyICLgpKTgpYHgpJ/gpKTgpYciCisKKyM6IHNyYy9kZXBjb24uYzoxOTAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzIGNvbmZsaWN0cyB3aXRoICVzIgorbXNnc3RyICLgpJrgpY3gpK/gpL7gpKzgpLDgpYvgpKzgpLAg4KSs4KWH4KSs4KSo4KS+4KS1L+CkquCksOCkuOCljeCkquCksOCkteCkv+CksOCli+CkpyIKKworIzogc3JjL2RlcGNvbi5jOjE5MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXMgZW5oYW5jZXMgJXMiCittc2dzdHIgIuCkteCkvuCkouCkteCkpOClhyIKKworIzogc3JjL2RlcGNvbi5jOjI5NgorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyDgpJXgpL7gpKLgpYLgpKgg4KSf4KSV4KS+4KSv4KSy4KS+IOCkquCkvuCkueCkv+CknOClhy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjI5OQorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB0byBiZSBkZWNvbmZpZ3VyZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIOCkmuClgCDgpIXgpJzgpYHgpLPgpLXgpKPgpYAg4KSV4KSw4KS+4KSv4KSy4KS+IOCkquCkvuCkueCkv+CknOClhy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjMwNAorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB0byBiZSBpbnN0YWxsZWQsIGJ1dCBpcyB2ZXJzaW9uICUuMjUwcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMg4KSa4KWAIOCkuOCljeCkpeCkvuCkquCkqOCkviDgpJXgpLDgpL7gpK/gpJrgpYAg4KSG4KS54KWHLCDgpKrgpKMg4KSG4KS14KWD4KSk4KWN4KSk4KWAICUuMjUwcyDgpIbgpLngpYcuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgaW5zdGFsbGVkLCBidXQgaXMgdmVyc2lvbiAlLjI1MHMuXG4iCittc2dzdHIgIiAlLjI1MHMg4KSa4KWAIOCkuOCljeCkpeCkvuCkquCkqOCkviDgpJ3gpL7gpLLgpYAg4KSG4KS54KWHLCDgpKrgpKMg4KSG4KS14KWD4KSk4KWN4KSk4KWAICUuMjUwcyDgpIbgpLngpYcuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdW5wYWNrZWQsIGJ1dCBoYXMgbmV2ZXIgYmVlbiBjb25maWd1cmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyDgpLngpL8g4KSF4KSo4KSq4KWF4KSVIOCkneCkvuCksuClgCDgpIbgpLngpYcsIOCkquCksOCkguCkpOClgSDgpKTgpYDgpJrgpYAg4KSV4KSn4KWA4KSaIOCkieCknOCks+Cko+ClgCDgpJ3gpL7gpLLgpYAg4KSo4KS14KWN4KS54KSk4KWAIFxuIgorCisjOiBzcmMvZGVwY29uLmM6MzM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHVucGFja2VkLCBidXQgaXMgdmVyc2lvbiAlLjI1MHMuXG4iCittc2dzdHIgIiAgJS4yNTBzIOCkueCkvyDgpIXgpKjgpKrgpYXgpJUg4KSd4KS+4KSy4KWAIOCkhuCkueClhywg4KSq4KSjIOCkhuCkteClg+CkpOCljeCkpOClgCAlLjI1MHMg4KSG4KS54KWHLlxuIgorCisjOiBzcmMvZGVwY29uLmM6MzQzCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGxhdGVzdCBjb25maWd1cmVkIHZlcnNpb24gaXMgJS4yNTBzLlxuIgorbXNnc3RyICIgICUuMjUwcyDgpJrgpYAg4KSk4KS+4KSc4KWAL+CksuClh+Ckn+Clh+CkuOCljeCknyDgpIbgpLXgpYPgpKTgpY3gpKTgpYAg4KS54KS/ICUuMjUwcyDgpIbgpLngpYcuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozNTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgJXMuXG4iCittc2dzdHIgIiAgJS4yNTBzIOCkueCkvyAlcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjM4OAorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYnV0IGlzIHRvIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIOCkueClhyAlLjI1MHMg4KSq4KWB4KSw4KS14KSk4KS+4KSkIOCkquCkoyDgpKTgpYAg4KSV4KS+4KSi4KWC4KSoIOCkn+CkvuCkleCkvuCkr+CkmuClgCDgpIbgpLngpYcuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGJ1dCBpcyB0byBiZSBkZWNvbmZpZ3VyZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIOCkueClhyAlLjI1MHMg4KSq4KWB4KSw4KS14KSk4KS+4KSkIOCkquCkoyDgpKTgpYDgpJrgpYAg4KSF4KSc4KWB4KSz4KS14KSj4KWAIOCkleCksOCkvuCkr+CkmuClgCDgpIbgpLngpYcuXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0MDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGJ1dCBpcyAlcy5cbiIKK21zZ3N0ciAiICUuMjUwcyDgpLngpYcgJS4yNTBzIOCkquClgeCksOCkteCkpOCkvuCkpCDgpKrgpKMg4KSk4KWHICVzIOCkhuCkueClhy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjQxNQorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIgICUuMjUwcyDgpJrgpYAg4KS44KWN4KSl4KS+4KSq4KSo4KS+IOCkneCkvuCksuClgCDgpKjgpL7gpLngpYAuXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgKHZlcnNpb24gJS4yNTBzKSBpcyB0byBiZSBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzICjgpIbgpLXgpYPgpKTgpY3gpKTgpYAgJS4yNTBzKSDgpJrgpYAg4KS44KWN4KSl4KS+4KSq4KSo4KS+IOCkleCksOCkvuCkr+CkmuClgCDgpIbgpLngpYdcbiIKKworIzogc3JjL2RlcGNvbi5jOjQ2OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgKHZlcnNpb24gJS4yNTBzKSBpcyBwcmVzZW50IGFuZCAlcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgKOCkhuCkteClg+CkpOCljeCkpOClgCAlLjI1MHMpIOCkueCkvyAlcy4g4KSG4KS54KWHXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGFuZCBpcyB0byBiZSBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIOCkueClhyAlLjI1MHMg4KSq4KWB4KSw4KS14KSk4KS+4KSkIOCkhuCko+CkvyDgpKTgpY3gpK/gpL7gpJrgpYAg4KS44KWN4KSl4KS+4KSq4KSo4KS+IOCkleCksOCkvuCkr+CkmuClgCDgpIbgpLngpYdcbiIKKworIzogc3JjL2RlcGNvbi5jOjUzNworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGFuZCBpcyBwcmVzZW50IGFuZCAlcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMg4KS54KWHICUuMjUwcyDgpKrgpYHgpLDgpLXgpKTgpL7gpKQg4KSG4KSj4KS/IOCkpOClhyAlcyDgpIbgpLngpYcuXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MAorIywgZnV6enkKK21zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IGRpdmVydGluZyBmaWxlcy4iCittc2dzdHIgIuCkruCkpuCkpOClgOCkuOCkvuCkoOClgCDgpKHgpL/gpKrgpL/gpJXgpYfgpJzgpYAt4KSk4KWL4KSh4KS+IC0t4KSu4KSm4KSkIOCkn+CkvuCkh+CkqiDgpJXgpLDgpL4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo2NiBzcmMvc3RhdGNtZC5jOjU3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo4MAorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gJXMgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAi4KSh4KWH4KSs4KS/4KSv4KSoICVzIOCkhuCkteClg+CkpOCljeCkpOClgCAlcy5cbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjcwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiXG4iCisjfCAiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorI3wgIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uIgorbXNnaWQgIiIKKyJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMTAgR3VpbGxlbSBKb3Zlci5cbiIKK21zZ3N0ciAiIgorIlxuIgorIuCkuOCksOCljeCkteCkvuCkp+Ckv+CkleCkvuCksCAoQykg4KWn4KWv4KWv4KWrIOCkhuCkr+CkqCDgpJzgpYXgpJXgpLjgpKguXG4iCisi4KS44KSw4KWN4KS14KS+4KSn4KS/4KSV4KS+4KSwIChDKSDgpajgpabgpabgpaYs4KWo4KWm4KWm4KWnIOCkteCkv+CkmuCksOCljeCknyDgpIXgpYXgpJXgpY3gpJXgpYfgpLDgpK7gpKguIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NzUgc3JjL21haW4uYzo2MyBzcmMvcXVlcnljbWQuYzo2MDMgc3JjL3N0YXRjbWQuYzo2NQorIzogc3JjL3RyaWdjbWQuYzo1NSBkcGtnLWRlYi9tYWluLmM6NTcgZHBrZy1zcGxpdC9tYWluLmM6NTEKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo4OQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgb3JcbiIKKyJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKK21zZ3N0ciAiIgorIlxuIgorIuCkueClhyDgpK7gpYHgpJXgpY3gpKQgIOCkuOClieCkq+CljeCkn+CkteClh+CkheCksCDgpIbgpLngpYc7IOCkquCljeCksOCkpOCkv+CksuCkv+CkquClgOCkmuCljeCkr+CkviDgpIXgpJ/gpYDgpILgpLjgpL7gpKDgpYAg4KSc4KWA4KSP4KSo4KSv4KWCIOCkuOCkvuCkruCkvuCkqOCljeCkryDgpLjgpL7gpLDgpY3gpLXgpJzgpKjgpL/gpJUg4KSq4KSw4KS14KS+4KSo4KS+IOCknOClgOCkquClgOCkj+CksiAiCisi4KSG4KS14KWD4KSk4KWN4KSk4KWAIOClqCDgpLXgpL5cbiIKKyLgpKrgpYHgpKLgpYDgpLIg4KSq4KS54KS+LiDgpK/gpL7gpJrgpYAg4KSV4KWL4KSj4KSk4KWA4KS54KWAIOCkueCkruClgCDgpKjgpL7gpLngpYAuXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo4NyBzcmMvbWFpbi5jOjgxIHNyYy9xdWVyeWNtZC5jOjYxNSBzcmMvc3RhdGNtZC5jOjc3CisjOiBkcGtnLWRlYi9tYWluLmM6NjkgZHBrZy1zcGxpdC9tYWluLmM6NjMgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjk3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gPGNvbW1hbmQ+XG4iCisiXG4iCittc2dzdHIgIiIKKyLgpIngpKrgpY3gpK/gpYHgpJXgpY3gpKTgpKTgpL46ICVzIFs84KSq4KSw4KWN4KSv4KS+4KSvPiAuLi5dIDzgpIbgpJzgpY3gpJ7gpL4+XG4iCisiXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo5MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICBbLS1hZGRdIDxmaWxlPiAgICAgICAgICAgYWRkIGEgZGl2ZXJzaW9uLlxuIgorIiAgLS1yZW1vdmUgPGZpbGU+ICAgICAgICAgIHJlbW92ZSB0aGUgZGl2ZXJzaW9uLlxuIgorIiAgLS1saXN0IFs8Z2xvYi1wYXR0ZXJuPl0gIHNob3cgZmlsZSBkaXZlcnNpb25zLlxuIgorIiAgLS1saXN0cGFja2FnZSA8ZmlsZT4gICAgIHNob3cgd2hhdCBwYWNrYWdlIGRpdmVydHMgdGhlIGZpbGUuXG4iCisiICAtLXRydWVuYW1lIDxmaWxlPiAgICAgICAgcmV0dXJuIHRoZSBkaXZlcnRlZCBmaWxlLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoxMDAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1wYWNrYWdlIDxwYWNrYWdlPiAgICAgIG5hbWUgb2YgdGhlIHBhY2thZ2Ugd2hvc2UgY29weSBvZiA8ZmlsZT4gd2lsbCAiCisibm90XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiZSBkaXZlcnRlZC5cbiIKKyIgIC0tbG9jYWwgICAgICAgICAgICAgICAgICBhbGwgcGFja2FnZXMnIHZlcnNpb25zIGFyZSBkaXZlcnRlZC5cbiIKKyIgIC0tZGl2ZXJ0IDxkaXZlcnQtdG8+ICAgICB0aGUgbmFtZSB1c2VkIGJ5IG90aGVyIHBhY2thZ2VzJyB2ZXJzaW9ucy5cbiIKKyIgIC0tcmVuYW1lICAgICAgICAgICAgICAgICBhY3R1YWxseSBtb3ZlIHRoZSBmaWxlIGFzaWRlIChvciBiYWNrKS5cbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICBzZXQgdGhlIGRpcmVjdG9yeSB3aXRoIHRoZSBkaXZlcnNpb25zIGZpbGUuXG4iCisiICAtLXRlc3QgICAgICAgICAgICAgICAgICAgZG9uJ3QgZG8gYW55dGhpbmcsIGp1c3QgZGVtb25zdHJhdGUuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgcXVpZXQgb3BlcmF0aW9uLCBtaW5pbWFsIG91dHB1dC5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCittc2dzdHIgIiIKKyLgpLDgpYDgpKQ6ICVzIFs84KSq4KSw4KWN4KSv4KS+4KSvPiAuLi5dIDzgpLjgpK7gpL7gpKbgpYfgpLY+XG4iCisiXG4iCisi4KS44KSu4KS+4KSm4KWH4KS2OlxuIgorIiAgWy0t4KSu4KS/4KSz4KS14KS+XSA84KSr4KS+4KSH4KSyPiAgICAgICAgICAg4KS14KSz4KSjIOCkpOCkr+CkvuCksCDgpJXgpLDgpL4uXG4iCisiICAtLeCkleCkvuCkouCkviA84KSr4KS+4KSH4KSyPiAgICAgICAgICDgpLngpYcg4KS14KSz4KSjIOCkleCkvuCkouClguCkqCDgpJ/gpL7gpJXgpL4uXG4iCisiICAtLeCkr+CkvuCkpuClgCBbPOCkl+CljeCksuCli+CkrC3gpLjgpL7gpJrgpL4+XSAg4KSr4KS+4KSH4KSy4KSa4KWAIOCkteCks+Cko+ClhyDgpKbgpL7gpJbgpLXgpL4uXG4iCisiICAtLeCkluCksOClh+CkqOCkvuCktSA84KSr4KS+4KSH4KSyPiAgICAgICAg4KS14KSz4KS14KSy4KWH4KSy4KWAIOCkq+CkvuCkh+CksiDgpKrgpLDgpKQg4KSV4KSw4KS+LlxuIgorIlxuIgorIuCkquCksOCljeCkr+CkvuCkrzpcbiIKKyIgIC0t4KSq4KWF4KSV4KWH4KScIDzgpKrgpYXgpJXgpYfgpJw+ICAgICAg4KSc4KWN4KSv4KS+4KSa4KWAIOCkquCljeCksOCkpCA84KSr4KS+4KSH4KSyPiDgpLXgpLPgpLXgpLLgpYAg4KSc4KS+4KSj4KS+4KSwIOCkqOCkvuCkueClgCDgpKTgpY3gpK/gpL4g4KSq4KWF4KSV4KWH4KSc4KSa4KWHIOCkqOCkvuCktVxuIgorIiAgLS3gpLjgpY3gpKXgpL7gpKjgpL/gpJUgICAgICAgICAgICAgICAgICDgpLjgpLDgpY3gpLUg4KSq4KWF4KSV4KWH4KSc4KWH4KS44KWNJyDgpIbgpLXgpYTgpKTgpY3gpKTgpY3gpK/gpL4g4KS14KSz4KS14KSy4KWN4KSv4KS+IOCkhuCkueClh+CkpC5cbiIKKyIgIC0t4KS14KSz4KS14KS+IDzgpLXgpLPgpLXgpL4t4KSV4KSh4KWHPiAgICAg4KSH4KSk4KSwIOCkquClheCkleClh+CknOClh+CkuOCljScg4KSG4KS14KWE4KSk4KWN4KSk4KWN4KSv4KS+4KSC4KSo4KWAIOCkteCkvuCkquCksOCksuClh+CksuClgCDgpKjgpL7gpLXgpYcuXG4iCisiICAtLeCkquClgeCkqOCksOCljeCkqOCkvuCkruCkvuCkguCkleCkqCAgICAgICAgICAgICAgICAg4KSq4KWN4KSw4KSk4KWN4KSv4KSV4KWN4KS34KS+4KSkIOCkueClgCDgpKvgpL7gpIfgpLIg4KSs4KS+4KSc4KWB4KSy4KS+ICjgpJXgpL/gpILgpLXgpL4g4KSu4KS+4KSX4KWHKSDgpLXgpLPgpLXgpL4uXG4iCisiICAtLeCkteCljeCkr+CkteCkuOCljeCkpeCkvuCkqOCkv+CksOCljeCkpuClh+CktuCkv+CkleCkviA84KSo4KS/4KSw4KWN4KSm4KWH4KS24KS/4KSV4KS+PiAg4KS14KSz4KS14KSy4KWH4KSy4KWN4KSv4KS+IOCkq+CkvuCkr+CksuClgOCkguCkuOCkuSDgpKjgpL/gpLDgpY3gpKbgpYfgpLbgpL/gpJXgpL4g4KSo4KS/4KS24KWN4KSa4KS/4KSkIOCkleCksOCkvi5cbiIKKyIgIC0t4KSa4KS+4KSa4KSj4KWAICAgICAgICAgICAgICAgICAgIOCkleCkvuCkueClgOCkueClgCDgpJXgpLDgpYEg4KSo4KSV4KS+LCDgpKvgpJXgpY3gpKQg4KSq4KWN4KSw4KS+4KSk4KWN4KSv4KSV4KWN4KS34KS/4KSVIOCkpuCkvuCkluCkteCkvi5cbiIKKyIgIC0t4KS24KS+4KSC4KSkICAgICAgICAgICAgICAgICAg4KS24KS+4KSC4KSkIOCkuOCkguCkleCljeCksOCkv+Ckr+Ckviwg4KSV4KSu4KWA4KSk4KSV4KSu4KWAIOCkqOCkv+CksOCljeCkl+Ckri5cbiIKKyIgIC0t4KSu4KSm4KSkICAgICAgICAgICAgICAgICAgIOCkueCkviDgpK7gpKbgpKTgpYDgpJrgpL4g4KS44KSC4KSm4KWH4KS2IOCkpuCkvuCkluCkteCkvi5cbiIKKyIgIC0t4KSG4KS14KWD4KSk4KWN4KSk4KWAICAgICAgICAgICAgICAgIOCkhuCkteClg+CkpOCljeCkpOClgOCkmuClgCDgpK7gpL7gpLngpL/gpKTgpYAg4KSm4KS+4KSW4KS14KS+LlxuIgorIlxuIgorIuCknOCkruCkviDgpJXgpLDgpKTgpL7gpKjgpL4sIOCkoeCkv+Ckq+ClieCksuCljeCknyDgpIbgpLngpYcgLS3gpLjgpY3gpKXgpL7gpKjgpL/gpJUg4KS1IC0t4KS14KSz4KS14KS+IDzgpK7gpYLgpLPgpJrgpYc+LuCkteCkv+CkpOCksOCkoy5cbiIKKyLgpJXgpL7gpKLgpYLgpKgg4KSf4KS+4KSV4KSk4KS+4KSo4KS+LCAtLeCkquClheCkleClh+CknCDgpJXgpL/gpILgpLXgpL4gLS3gpLjgpY3gpKXgpL7gpKjgpL/gpJUg4KS1IC0t4KS14KSz4KS14KS+IOCkqOCkv+CksOCljeCkp+CkvuCksOClgOCkpCDgpJXgpYfgpLLgpYfgpLLgpY3gpK/gpL4g4KSF4KS44KSy4KWN4KSv4KS+4KS4IOCknOClgeCks+CksuCljeCkr+CkvuCkmiAiCisi4KSq4KS+4KS54KS/4KSc4KWH4KSkLlxuIgorIuCkquClheCkleClh+CknCDgpLjgpY3gpKXgpL7gpKrgpKjgpKrgpYLgpLDgpY3gpLUv4KSV4KS+4KSi4KSy4KWN4KSv4KS+4KSo4KSC4KSk4KSwIOCkquCksOCkv+CkreCkvuCkt+Clh+CkpCAtLeCkquClheCkleClh+CknCDgpLUgLS3gpLXgpLPgpLXgpL4g4KSo4KS/4KSw4KWN4KSn4KS+4KSw4KWA4KSkIOCkleClh+CksuClh+CksuCljeCkr+CkviDgpIXgpLjgpLLgpY3gpK/gpL7gpJog4KSq4KS+4KS54KS/4KSc4KWH4KSkXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIldoZW4gYWRkaW5nLCBkZWZhdWx0IGlzIC0tbG9jYWwgYW5kIC0tZGl2ZXJ0IDxvcmlnaW5hbD4uZGlzdHJpYi5cbiIKKyJXaGVuIHJlbW92aW5nLCAtLXBhY2thZ2Ugb3IgLS1sb2NhbCBhbmQgLS1kaXZlcnQgbXVzdCBtYXRjaCBpZiBzcGVjaWZpZWQuXG4iCisiUGFja2FnZSBwcmVpbnN0L3Bvc3RybSBzY3JpcHRzIHNob3VsZCBhbHdheXMgc3BlY2lmeSAtLXBhY2thZ2UgYW5kIC0tIgorImRpdmVydC5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MTY4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJlcnJvciBjaGVja2luZyBgJXMnOiAlcyIKK21zZ2lkICJlcnJvciBjaGVja2luZyAnJXMnIgorbXNnc3RyICJgJXMnOiAlcyDgpKTgpKrgpL7gpLjgpKTgpL7gpKjgpL4g4KSk4KWN4KSw4KWB4KSf4KWAIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjAzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisicmVuYW1lIGludm9sdmVzIG92ZXJ3cml0aW5nIGAlcycgd2l0aFxuIgorIiAgZGlmZmVyZW50IGZpbGUgYCVzJywgbm90IGFsbG93ZWQiCittc2dzdHIgIuCkquClgeCkqOCksOCljeCkqOCkvuCkruCkvuCkguCkleCkqOCkvuCkpCBgJXMnIOCkteCksCDgpLXgpYfgpJfgpLPgpY3gpK/gpL4g4KSr4KS+4KSH4KSyIGAlcycg4KSo4KWHIOCkquClgeCkqOCksOCljeCksuClh+CkluCkqCDgpLjgpL7gpK7gpYDgpLIg4KSG4KS54KWHLCDgpLjgpILgpK7gpKTgpYAg4KSo4KS+4KS54KWAIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjIzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzczCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGZpbGUgJyVzJyIKK21zZ3N0ciAi4KSJ4KSX4KSuIOCkq+CkvuCkh+CksiBgJS4yNTBzJyDgpIngpJjgpKHgpKTgpL4g4KSv4KWH4KSkIOCkqOCkvuCkueClgCIKKworIzogc3JjL2RpdmVydGNtZC5jOjIyNworbXNnaWQgImZpbGUgY29weSIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjM5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW5ub3Qgc3RhdCBuZXcgbmFtZSBgJXMnOiAlcyIKK21zZ2lkICJjYW5ub3QgcmVuYW1lICclcycgdG8gJyVzJyIKK21zZ3N0ciAi4KSo4KS14KWAIOCkqOCkvuCkteClhyBgJXMnOiAlcyDgpLjgpY3gpJ/gpYXgpJ8g4KSV4KSw4KSk4KS+IOCkr+Clh+CkpCDgpKjgpL7gpLngpYDgpKQiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyNTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInJlbmFtZTogcmVtb3ZlIGR1cGxpY2F0ZSBvbGQgbGluayBgJXMnOiAlcyIKK21zZ2lkICJyZW5hbWU6IHJlbW92ZSBkdXBsaWNhdGUgb2xkIGxpbmsgJyVzJyIKK21zZ3N0ciAi4KSq4KWB4KSo4KSw4KWN4KSo4KS+4KSu4KS+4KSC4KSV4KSoOiDgpKrgpYHgpKjgpLDgpL7gpLXgpYPgpKTgpY3gpKQg4KSc4KWB4KSo4KWAIOCkuOCkvuCkluCks+ClgCBgJXMnOiAlcyDgpJXgpL7gpKLgpYLgpKgg4KSf4KS+4KSV4KS+IgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjYyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gb3BlbiBzb3VyY2UgZmlsZSBgJS4yNTBzJyIKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIGNvcGllZCBzb3VyY2UgZmlsZSAnJXMnIgorbXNnc3RyICLgpIngpJfgpK4g4KSr4KS+4KSH4KSyIGAlLjI1MHMnIOCkieCkmOCkoeCkpOCkviDgpK/gpYfgpKQg4KSo4KS+4KS54KWAIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mjg0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJsb2NhbCBkaXZlcnNpb24gb2YgJXMiCittc2dzdHIgIuCkuOCljeCkpeCkvuCkqOCkv+CklSDgpLXgpLPgpLXgpKQg4KSG4KS54KWHOiAlc1xuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mjg2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJsb2NhbCBkaXZlcnNpb24gb2YgJXMgdG8gJXMiCittc2dzdHIgIuCkuOCljeCkpeCkvuCkqOCkv+CklSDgpLXgpLPgpLXgpKQg4KSG4KS54KWHOiAlc1xuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjkwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJkaXZlcnNpb24gYnkgJXMiCittc2dpZCAiZGl2ZXJzaW9uIG9mICVzIGJ5ICVzIgorbXNnc3RyICIlc+CkqOClhyDgpKvgpYfgpLDgpL7gpKvgpL7gpLAv4KSk4KSr4KS+4KS14KSkIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjkzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnNpb24gb2YgJXMgdG8gJXMgYnkgJXMiCittc2dzdHIgIiVz4KSo4KWAIOCkteCks+CkteCksuClhyDgpIbgpLngpYc6ICVzXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozMDkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImRpdmVyc2lvbiBieSAlcyIKK21zZ2lkICJhbnkgZGl2ZXJzaW9uIG9mICVzIgorbXNnc3RyICIlc+CkqOClhyDgpKvgpYfgpLDgpL7gpKvgpL7gpLAv4KSk4KSr4KS+4KS14KSkIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MzExCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJhbnkgZGl2ZXJzaW9uIG9mICVzIHRvICVzIgorbXNnc3RyICIlc+CkqOClgCDgpLXgpLPgpLXgpLLgpYcg4KSG4KS54KWHOiAlc1xuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MzU3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW5ub3Qgb3BlbiBHUEwgZmlsZSIKK21zZ2lkICJjYW5ub3QgY3JlYXRlIG5ldyAlcyBmaWxlIgorbXNnc3RyICLgpJzgpYDgpKrgpYDgpI/gpLIg4KSr4KS+4KSH4KSyIOCkieCkmOCkoeCkpOCkviDgpK/gpYfgpKQg4KSo4KS+4KS54KWAIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mzc1IHNyYy9zdGF0Y21kLmM6MjE1IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNDA0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggZmlsZSAnJXMnIgorbXNnc3RyICLgpLXgpY3gpLngpYDgpI/gpLjgpI/gpKjgpKrgpY3gpLDgpL/gpILgpJ/gpI/gpZ7gpK7gpKfgpYcg4KWe4KWN4KSy4KS2PyDgpJXgpLDgpKPgpYcg4KSc4KSu4KSkIOCkqOCkvuCkueClgCIKKworIzogc3JjL2RpdmVydGNtZC5jOjM4MgorIywgZnV6enkKKyN8IG1zZ2lkICJyZW1vdmUgb2xkIGRpdmVyc2lvbnMtb2xkOiAlcyIKK21zZ2lkICJlcnJvciByZW1vdmluZyBvbGQgZGl2ZXJzaW9ucy1vbGQiCittc2dzdHIgIuCknOClgeCkqOClhyDgpLXgpLPgpKMt4KSc4KWB4KSo4KWHOiAlcyDgpJXgpL7gpKLgpYLgpKgg4KSf4KS+4KSV4KS+IgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mzg0CisjLCBmdXp6eQorbXNnaWQgImVycm9yIGNyZWF0aW5nIG5ldyBkaXZlcnNpb25zLW9sZCIKK21zZ3N0ciAi4KSo4KS14KWA4KSoIOCkuOCljeCkn+ClheCkn+CkheCli+CkteCljeCkueCksOCksOCkvuCkh+CkoS3gpJzgpYHgpKjgpYA6ICVzIOCkrOCkqOCkteCkpOCkvuCkqOCkviDgpKTgpY3gpLDgpYHgpJ/gpYAiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozODYKKyMsIGZ1enp5Cittc2dpZCAiZXJyb3IgaW5zdGFsbGluZyBuZXcgZGl2ZXJzaW9ucyIKK21zZ3N0ciAi4KSo4KS14KWA4KSoIOCkuOCljeCkn+ClheCkn+CkheCli+CkteCljeCkueCksOCksOCkvuCkh+CkoTogJXMg4KSF4KSn4KS/4KS34KWN4KSg4KS+4KSq4KSoIOCkleCksOCkpOCkvuCkqOCkviDgpKTgpY3gpLDgpYHgpJ/gpYAiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MDYgc3JjL2RpdmVydGNtZC5jOjUwMyBzcmMvZGl2ZXJ0Y21kLmM6NjEwCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjMwIHNyYy9zdGF0Y21kLmM6MjkwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSBzaW5nbGUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMg4KSy4KS+IOCkj+CkleCkmiDgpKrgpLDgpY3gpK/gpL7gpK8g4KSG4KS14KS24KWN4KSv4KSVIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDA5IHNyYy9kaXZlcnRjbWQuYzo0MzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZW5hbWUgXCIlc1wiIGlzIG5vdCBhYnNvbHV0ZSIKK21zZ3N0ciAi4KSr4KS+4KSH4KSy4KSo4KS+4KS1IFwiJXNcIiDgpLngpYcg4KSo4KS/4KSw4KSq4KWH4KSV4KWN4KS3IOCkqOCkvuCkueClgCIKKworIzogc3JjL2RpdmVydGNtZC5jOjQxMSBzcmMvc3RhdGNtZC5jOjI0OQorbXNnaWQgImZpbGUgbWF5IG5vdCBjb250YWluIG5ld2xpbmVzIgorbXNnc3RyICLgpKvgpL7gpIfgpLIg4KSu4KSn4KWHIOCkqOCljeCkr+ClgeCksuCkvuCkh+CkqOCkuOCljSDgpKjgpLjgpYfgpLIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MTgKK21zZ2lkICJDYW5ub3QgZGl2ZXJ0IGRpcmVjdG9yaWVzIgorbXNnc3RyICLgpKjgpL/gpLDgpY3gpKbgpYfgpLbgpL/gpJXgpL4g4KS14KSz4KS14KSk4KS+IOCkr+Clh+CkpCDgpKjgpL7gpLngpYDgpKQiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MzMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBkaXZlcnQgZmlsZSAnJXMnIHRvIGl0c2VsZiIKK21zZ3N0ciAi4KSo4KS/4KSw4KWN4KSm4KWH4KS24KS/4KSV4KS+IOCkteCks+CkteCkpOCkviDgpK/gpYfgpKQg4KSo4KS+4KS54KWA4KSkIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDUzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJMZWF2aW5nIGAlcyciCittc2dpZCAiTGVhdmluZyAnJXMnXG4iCittc2dzdHIgImAlcycg4KS44KWL4KSh4KSkIOCkhuCkueClhyIKKworIzogc3JjL2RpdmVydGNtZC5jOjQ1OAorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGNsYXNoZXMgd2l0aCBgJXMnIgorbXNnc3RyICJgJXMnIOCkmuClhyBgJXMnIOCktuClgCDgpLXgpL/gpKTgpYHgpLfgpY3gpJ8iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0ODEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIkFkZGluZyBgJXMnIgorbXNnaWQgIkFkZGluZyAnJXMnXG4iCittc2dzdHIgImAlcycg4KSu4KS/4KSz4KS14KSkIOCkhuCkueClhyIKKworIzogc3JjL2RpdmVydGNtZC5jOjUxMAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiTm8gZGl2ZXJzaW9uIGAlcycsIG5vbmUgcmVtb3ZlZCIKK21zZ2lkICJObyBkaXZlcnNpb24gJyVzJywgbm9uZSByZW1vdmVkLlxuIgorbXNnc3RyICJgJXMnIOCkteCks+CkoyDgpKjgpL7gpLngpYAsIOCkleCkvuCkueClgOCkueClgCDgpJXgpL7gpKLgpYLgpKgg4KSf4KS+4KSV4KSy4KWHIOCkqOCkvuCkueClgCIKKworIzogc3JjL2RpdmVydGNtZC5jOjUyNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisibWlzbWF0Y2ggb24gZGl2ZXJ0LXRvXG4iCisiICB3aGVuIHJlbW92aW5nIGAlcydcbiIKKyIgIGZvdW5kIGAlcyciCittc2dzdHIgIiIKKyLgpLXgpLPgpLXgpL4t4KSV4KSh4KWHIOCkruCkp+ClhyDgpLXgpL/gpLjgpILgpJfgpKTgpYBcbiIKKyIgIGAlcydcbiIKKyIg4KSV4KS+4KSi4KWC4KSoIOCkn+CkvuCkleCkpOCkvuCkqOCkviAgYCVzJyDgpK7gpL/gpLPgpL7gpLLgpYciCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm1pc21hdGNoIG9uIHBhY2thZ2VcbiIKKyIgIHdoZW4gcmVtb3ZpbmcgYCVzJ1xuIgorIiAgZm91bmQgYCVzJyIKK21zZ3N0ciAiIgorIuCkquClheCkleClh+CknOClh+CkuOCljSDgpK7gpKfgpYcg4KS14KS/4KS44KSC4KSX4KSk4KWAXG4iCisiICBgJXMnXG4iCisiIOCkleCkvuCkouClguCkqCDgpJ/gpL7gpJXgpKTgpL7gpKjgpL4gIGAlcycg4KSu4KS/4KSz4KS+4KSy4KWHIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTM5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJSZW1vdmluZyBgJXMnIgorbXNnaWQgIlJlbW92aW5nICclcydcbiIKK21zZ3N0ciAiYCVzJyDgpJXgpL7gpKLgpYLgpKgg4KSf4KS+4KSV4KSkIOCkhuCkueClhyIKKworIzogc3JjL2RpdmVydGNtZC5jOjY1NworbXNnaWQgInBhY2thZ2UgbWF5IG5vdCBjb250YWluIG5ld2xpbmVzIgorbXNnc3RyICLgpKrgpYXgpJXgpYfgpJwg4KSu4KSn4KWHIOCkqOCljeCkr+ClgeCksuCkvuCkh+CkqOCkuOCljSDgpKjgpLjgpYfgpLIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo2NjYKK21zZ2lkICJkaXZlcnQtdG8gbWF5IG5vdCBjb250YWluIG5ld2xpbmVzIgorbXNnc3RyICLgpLXgpLPgpLXgpL4t4KSV4KSh4KWHIOCkruCkp+ClhyDgpKjgpY3gpK/gpYHgpLLgpL7gpIfgpKjgpLjgpY0g4KSo4KS44KWH4KSyIgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzo2NAorbXNnaWQgImZhaWxlZCB0byBvcGVuIGRpdmVyc2lvbnMgZmlsZSIKK21zZ3N0ciAi4KSh4KS+4KSH4KS14KWN4KS54KSw4KWN4KSc4KSo4KWN4KS4IOCkq+CkvuCkh+CksiDgpIngpJjgpKHgpKPgpY3gpK/gpL7gpLgg4KSF4KSv4KS24KS44KWN4KS14KWAIgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzo3MQorbXNnaWQgImZhaWxlZCB0byBmc3RhdCBwcmV2aW91cyBkaXZlcnNpb25zIGZpbGUiCittc2dzdHIgIuCkheCkl+Cli+CkpuCksOCkmuClgCDgpKHgpL7gpIfgpLXgpY3gpLngpLDgpY3gpJzgpKjgpY3gpLgg4KSr4KS+4KSH4KSyIOCkj+Ckq+CkuOCljeCkn+ClheCknyDgpLngpYvgpKPgpY3gpK/gpL7gpLgg4KSF4KSv4KS24KS44KWN4KS14KWAIgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzo3MworbXNnaWQgImZhaWxlZCB0byBmc3RhdCBkaXZlcnNpb25zIGZpbGUiCittc2dzdHIgIuCkoeCkvuCkh+CkteCljeCkueCksOCljeCknOCkqOCljeCkuCDgpKvgpL7gpIfgpLIg4KSP4KSr4KS44KWN4KSf4KWF4KSfIOCkueCli+Cko+CljeCkr+CkvuCkuCDgpIXgpK/gpLbgpLjgpY3gpLXgpYAiCisKKyM6IHNyYy9kaXZlcnRkYi5jOjExMworIywgYy1mb3JtYXQKK21zZ2lkICJjb25mbGljdGluZyBkaXZlcnNpb25zIGludm9sdmluZyBgJS4yNTBzJyBvciBgJS4yNTBzJyIKK21zZ3N0ciAiYCUuMjUwcycg4KSV4KS/4KSC4KS14KS+IGAlLjI1MHMnIOCkr+CkvuCkruCkp+CljeCkr+ClhyDgpLjgpL7gpK7gpL7gpLXgpLLgpYfgpLLgpYcg4KSq4KSw4KS44KWN4KSq4KSw4KS14KS/4KSw4KWL4KSn4KWAIOCkoeCkvuCkh+CkteCljeCkueCksOCljeCknOCkqOCljeCkuCIKKworIzogc3JjL2VucXVpcnkuYzo3MworbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBpbiBhIG1lc3MgZHVlIHRvIHNlcmlvdXMgcHJvYmxlbXMgZHVyaW5nXG4iCisiaW5zdGFsbGF0aW9uLiAgVGhleSBtdXN0IGJlIHJlaW5zdGFsbGVkIGZvciB0aGVtIChhbmQgYW55IHBhY2thZ2VzXG4iCisidGhhdCBkZXBlbmQgb24gdGhlbSkgdG8gZnVuY3Rpb24gcHJvcGVybHk6XG4iCittc2dzdHIgIiIKKyLgpJbgpL7gpLLgpYDgpLIg4KSq4KWF4KSV4KWH4KSc4KWH4KS44KSa4KS+IOCkuOCljeCkpeCkvuCkquCkqOClh+CkmuCljeCkr+CkviDgpLXgpYfgpLPgpYAg4KSG4KSy4KWH4KSy4KWN4KSv4KS+IOCkl+CkguCkreClgOCksCDgpLjgpK7gpLjgpY3gpK/gpYfgpK7gpYHgpLPgpYcg4KSX4KWL4KSC4KSn4KSzIOCkneCkvuCksuClh+CksuCkviDgpIbgpLngpYcuIOCkpOClgCDgpLXgpY3gpK/gpLXgpLjgpY3gpKXgpYDgpKRcbiIKKyIg4KSa4KS+4KSy4KSj4KWN4KSv4KS+4KS44KS+4KSg4KWAIOCkpOCljeCkr+CkvuCkmuClgCAo4KSG4KSj4KS/IOCkpOCljeCkr+CkvuCkmuCljeCkr+CkvuCkteCksCDgpIXgpLXgpLLgpILgpKzgpYHgpKgg4KSF4KS44KSy4KWH4KSy4KWN4KSv4KS+IOCkquClheCkleClh+CknOClh+CkuOCkmuClgCkg4KSq4KWB4KSo4KWN4KS54KS+IOCkj+CkleCkpuCkviDgpLjgpY3gpKXgpL7gpKrgpKjgpL4g4KSV4KSw4KSj4KWHXG4iCisiIOCknOCksOClgeCksOClgCDgpIbgpLngpYc6XG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6ODAKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBoYXZlIGJlZW4gdW5wYWNrZWQgYnV0IG5vdCB5ZXQgY29uZmlndXJlZC5cbiIKKyJUaGV5IG11c3QgYmUgY29uZmlndXJlZCB1c2luZyBkcGtnIC0tY29uZmlndXJlIG9yIHRoZSBjb25maWd1cmVcbiIKKyJtZW51IG9wdGlvbiBpbiBkc2VsZWN0IGZvciB0aGVtIHRvIHdvcms6XG4iCittc2dzdHIgIiIKKyLgpJbgpL7gpLLgpYDgpLIg4KSq4KWF4KSV4KWH4KSc4KWH4KS4IOCkheCkqOCkquClheCklSDgpJXgpYfgpLLgpYAg4KSG4KS54KWH4KSkIOCkquCksOCkguCkpOClgiDgpKTgpL/gpJrgpYAg4KSc4KWB4KSz4KS14KSj4KWAIOCkleClh+CksuClh+CksuClgCDgpKjgpL7gpLngpYAuIOCkpOCljeCkr+CkvuCkguCkmuClgCDgpJzgpYHgpLPgpLXgpKPgpYAg4KSh4KS/4KSq4KS/4KSV4KWH4KSc4KWAIFxuIgorIiAtLeCkleClieCkqOCkq+Ckv+Ckl+CksCDgpJXgpL/gpILgpLXgpL4g4KSh4KS/4KS44KS/4KSy4KWH4KSV4KWN4KSf4KSu4KSn4KWA4KSyIOCkleClieCkqOCkq+Ckv+Ckl+CksCDgpK7gpYfgpKjgpYIg4KSq4KSw4KWN4KSv4KS+4KSv4KS+4KSo4KWHIOCkleCksOClgiDgpLbgpJXgpKTgpL4uXG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6ODcKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgb25seSBoYWxmIGNvbmZpZ3VyZWQsIHByb2JhYmx5IGR1ZSB0byBwcm9ibGVtc1xuIgorImNvbmZpZ3VyaW5nIHRoZW0gdGhlIGZpcnN0IHRpbWUuICBUaGUgY29uZmlndXJhdGlvbiBzaG91bGQgYmUgcmV0cmllZCB1c2luZ1xuIgorImRwa2cgLS1jb25maWd1cmUgPHBhY2thZ2U+IG9yIHRoZSBjb25maWd1cmUgbWVudSBvcHRpb24gaW4gZHNlbGVjdDpcbiIKK21zZ3N0ciAiIgorIuCkluCkvuCksuClgOCksiDgpKrgpYXgpJXgpYfgpJzgpYfgpLjgpJrgpYAg4KSr4KSV4KWN4KSkIOCkheCksOCljeCkp+CkteCknyDgpJzgpYHgpLPgpLXgpKPgpYAg4KSd4KS+4KSy4KWAIOCkhuCkueClhywg4KSV4KSm4KS+4KSa4KS/4KSkIOCkpOClhyDgpKrgpLngpL/gpLLgpY3gpK/gpL7gpILgpKbgpL4g4KSc4KWB4KSz4KS14KSj4KWAIOCkleCksOCkpCDgpIXgpLjgpYfgpLIg4KSu4KWN4KS54KSj4KWC4KSoXG4iCisi4KS54KWN4KSv4KS+IOCkuOCkruCkuOCljeCkr+CkviDgpIbgpLLgpY3gpK/gpL4g4KSF4KS44KSk4KWA4KSyLiDgpKHgpL/gpKrgpL/gpJXgpYfgpJzgpYAgLS3gpJXgpYngpKjgpKvgpL/gpJfgpLAgPHBhY2thZ2U+IOCkleCkv+CkguCkteCkviDgpKHgpL/gpLjgpL/gpLLgpYfgpJXgpY3gpJ/gpK7gpKfgpYDgpLIg4KSV4KWJ4KSo4KSr4KS/4KSX4KSwICIKKyLgpK7gpYfgpKjgpYEg4KSq4KSw4KWN4KSv4KS+4KSvXG4iCisi4KS14KS+4KSq4KSw4KWB4KSoIOCknOClgeCks+CkteCko+ClgOCkmuCkviDgpKrgpYHgpKjgpY3gpLngpL4g4KSq4KWN4KSw4KSv4KSk4KWN4KSoIOCkleCksOCkvjpcbiIKKworIzogc3JjL2VucXVpcnkuYzo5NAorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBvbmx5IGhhbGYgaW5zdGFsbGVkLCBkdWUgdG8gcHJvYmxlbXMgZHVyaW5nXG4iCisiaW5zdGFsbGF0aW9uLiAgVGhlIGluc3RhbGxhdGlvbiBjYW4gcHJvYmFibHkgYmUgY29tcGxldGVkIGJ5IHJldHJ5aW5nIGl0O1xuIgorInRoZSBwYWNrYWdlcyBjYW4gYmUgcmVtb3ZlZCB1c2luZyBkc2VsZWN0IG9yIGRwa2cgLS1yZW1vdmU6XG4iCittc2dzdHIgIiIKKyLgpLjgpY3gpKXgpL7gpKrgpKjgpYfgpJrgpY3gpK/gpL7gpLXgpYfgpLPgpYAg4KSG4KSy4KWH4KSy4KWN4KSv4KS+IOCkuOCkruCkuOCljeCkr+CkvuCkguCkruClgeCks+ClhyDgpJbgpL7gpLLgpYDgpLIg4KSq4KWF4KSV4KWH4KSc4KWH4KS44KSa4KWAIOCkq+CkleCljeCkpCDgpIXgpLDgpY3gpKfgpLXgpJ8g4KSc4KWB4KSz4KS14KSj4KWAIOCkneCkvuCksuClgCDgpIbgpLngpYcuIOCkquClgeCkqOCljeCkueCkvuCkquCljeCksOCkr+CkpOCljeCkqCAiCisi4KSV4KSw4KWC4KSoIOCkpOCljeCkr+CkvuCkguCkmuClgCDgpLjgpY3gpKXgpL7gpKrgpKjgpL4g4KSq4KWB4KSw4KWN4KSjIOCkueCli+CkiiDgpLbgpJXgpKTgpYc7IOCkquClheCkleClh+CknOClh+CkuCDgpKHgpL/gpLjgpL/gpLLgpYfgpJXgpY3gpJ8g4KSV4KS/4KSC4KS14KS+IOCkoeCkv+CkquCkv+CkleClh+CknOClgCAtLeCksOCkv+CkruClguCkteCljeCkueCkteCkvuCkquCksOClguCkqCDgpJXgpL7gpKLgpYIgIgorIuCktuCkleCkpOCkvjpcbiIKKworIzogc3JjL2VucXVpcnkuYzoxMDEKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgYXdhaXRpbmcgcHJvY2Vzc2luZyBvZiB0cmlnZ2VycyB0aGF0IHRoZXlcbiIKKyJoYXZlIGFjdGl2YXRlZCBpbiBvdGhlciBwYWNrYWdlcy4gIFRoaXMgcHJvY2Vzc2luZyBjYW4gYmUgcmVxdWVzdGVkIHVzaW5nXG4iCisiZHNlbGVjdCBvciBkcGtnIC0tY29uZmlndXJlIC0tcGVuZGluZyAob3IgZHBrZyAtLXRyaWdnZXJzLW9ubHkpOlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTA4Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgaGF2ZSBiZWVuIHRyaWdnZXJlZCwgYnV0IHRoZSB0cmlnZ2VyIHByb2Nlc3NpbmdcbiIKKyJoYXMgbm90IHlldCBiZWVuIGRvbmUuICBUcmlnZ2VyIHByb2Nlc3NpbmcgY2FuIGJlIHJlcXVlc3RlZCB1c2luZ1xuIgorImRzZWxlY3Qgb3IgZHBrZyAtLWNvbmZpZ3VyZSAtLXBlbmRpbmcgKG9yIGRwa2cgLS10cmlnZ2Vycy1vbmx5KTpcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZW5xdWlyeS5jOjEzNyBzcmMvZW5xdWlyeS5jOjIxMSBzcmMvZW5xdWlyeS5jOjI5MiBzcmMvZW5xdWlyeS5jOjM3MworIzogc3JjL2VucXVpcnkuYzo0NjAgc3JjL3NlbGVjdC5jOjk4IHNyYy9zZWxlY3QuYzoxNjQgc3JjL3RyaWdjbWQuYzoxOTkKKyM6IHNyYy91cGRhdGUuYzo0OCBzcmMvdXBkYXRlLmM6MTEzIGRwa2ctc3BsaXQvcXVldWUuYzoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyB0YWtlcyBubyBhcmd1bWVudHMiCittc2dzdHIgIi0tJXMg4KSq4KSw4KWN4KSv4KS+4KSvIOCkmOClh+CkpCDgpKjgpL7gpLngpYAiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTUyCittc2dpZCAiIgorIkFub3RoZXIgcHJvY2VzcyBoYXMgbG9ja2VkIHRoZSBkYXRhYmFzZSBmb3Igd3JpdGluZywgYW5kIG1pZ2h0IGN1cnJlbnRseSBiZVxuIgorIm1vZGlmeWluZyBpdCwgc29tZSBvZiB0aGUgZm9sbG93aW5nIHByb2JsZW1zIG1pZ2h0IGp1c3QgYmUgZHVlIHRvIHRoYXQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzoxOTEKKyMsIGZ1enp5CisjfCBtc2dpZCAiPHVua25vd24+IgorbXNnY3R4dCAic2VjdGlvbiIKK21zZ2lkICI8dW5rbm93bj4iCittc2dzdHIgIjzgpIXgpKjgpYvgpLPgpJbgpYA+IgorCisjOiBzcmMvZW5xdWlyeS5jOjI1MQorIywgYy1mb3JtYXQKK21zZ2lkICIgJWQgaW4gJXM6ICIKK21zZ3N0ciAiJWQgJXMg4KSu4KSn4KWN4KSv4KWHIOCkhuCkueClhzoiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MjY2CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIgJWQgcGFja2FnZXMsIGZyb20gdGhlIGZvbGxvd2luZyBzZWN0aW9uczoiCittc2dpZCAiICVkIHBhY2thZ2UsIGZyb20gdGhlIGZvbGxvd2luZyBzZWN0aW9uOiIKK21zZ2lkX3BsdXJhbCAiICVkIHBhY2thZ2VzLCBmcm9tIHRoZSBmb2xsb3dpbmcgc2VjdGlvbnM6IgorbXNnc3RyWzBdICIgJWQg4KSq4KWF4KSV4KWH4KSc4KWH4KS4IOCkluCkvuCksuClgOCksiDgpLXgpL/gpK3gpL7gpJfgpL7gpK7gpKfgpYLgpKgiCittc2dzdHJbMV0gIiAlZCDgpKrgpYXgpJXgpYfgpJzgpYfgpLgg4KSW4KS+4KSy4KWA4KSyIOCkteCkv+CkreCkvuCkl+CkvuCkruCkp+ClguCkqCIKKworIzogc3JjL2VucXVpcnkuYzozMDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJWZXJzaW9uIG9mIGRwa2cgd2l0aCB3b3JraW5nICVzIHN1cHBvcnQgbm90IHlldCBjb25maWd1cmVkLlxuIgorIiBQbGVhc2UgdXNlICdkcGtnIC0tY29uZmlndXJlIGRwa2cnLCBhbmQgdGhlbiB0cnkgYWdhaW4uXG4iCittc2dzdHIgIiIKKyLgpK7gpLngpKTgpY3gpKTgpY3gpLXgpL7gpJrgpY3gpK/gpL4g4KSq4KWN4KSw4KSa4KSy4KS/4KSkL+CkmuCkvuCksuClgiDgpIbgpKfgpL7gpLAv4KS44KSq4KWL4KSw4KWN4KSfIOCkheCkuOCksuClh+CksuClgCDgpKHgpL/gpKrgpL/gpJXgpYfgpJzgpYDgpJrgpY3gpK/gpL4g4KSG4KS14KWD4KSk4KWN4KSk4KWA4KSa4KWAIOCknOClgeCks+CkteCko+ClgCDgpJ3gpL7gpLLgpYAg4KSo4KS+4KS54KWALlxuIgorIuCkleClg+CkquCkr+CkviAn4KSh4KS/4KSq4KS/4KSV4KWH4KSc4KWAIC0tIOCkleClieCkqOCkq+Ckv+Ckl+CksCDgpKHgpL/gpKrgpL/gpJXgpYfgpJzgpYAnIOCkteCkvuCkquCksOCkviwg4KSG4KSj4KS/IOCkquClgeCkqOCljeCkueCkviDgpKrgpY3gpLDgpK/gpKTgpY3gpKgg4KSV4KSw4KS+LlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjMxMAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZHBrZyBub3QgcmVjb3JkZWQgYXMgaW5zdGFsbGVkLCBjYW5ub3QgY2hlY2sgZm9yICVzIHN1cHBvcnQhXG4iCittc2dzdHIgIiIKKyLgpKHgpL/gpKrgpL/gpJXgpYfgpJzgpYDgpJrgpYAg4KS44KWN4KSl4KS+4KSq4KSo4KS+IOCkneCkvuCksuCljeCkr+CkvuCkmuClgCDgpKjgpYvgpILgpKYg4KSo4KS+4KS54KWALCDgpKrgpY3gpLDgpJrgpLLgpL/gpKQv4KSa4KS+4KSy4KWCIOCkhuCkp+CkvuCksC/gpLjgpKrgpYvgpLDgpY3gpJ/gpLjgpL7gpKDgpYAg4KSk4KSq4KS+4KS44KWCIOCktuCkleCkpCAiCisi4KSo4KS+4KS54KWAICFcbiIKKworIzogc3JjL2VucXVpcnkuYzozMjEKK21zZ2lkICJQcmUtRGVwZW5kcyBmaWVsZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvZW5xdWlyeS5jOjMyOQorbXNnaWQgImVwb2NoIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzM3Cittc2dpZCAibG9uZyBmaWxlbmFtZXMiCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzozNDYKK21zZ2lkICJtdWx0aXBsZSBDb25mbGljdHMgYW5kIFJlcGxhY2VzIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6NDM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBjYW5ub3Qgc2VlIGhvdyB0byBzYXRpc2Z5IHByZS1kZXBlbmRlbmN5OlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisi4KSh4KS/4KSq4KS/4KSV4KWH4KSc4KWAOiDgpKrgpY3gpLDgpL8t4KSh4KS/4KSq4KWH4KSo4KWN4KSh4KS44KWA4KSa4KWHL+CkhuCkp+ClgCDgpIXgpLXgpLLgpILgpKzgpYHgpKgg4KSw4KS54KS+4KSj4KS+fuCkr+CkviDgpLjgpK7gpLjgpY3gpK/gpL7gpILgpJrgpYcg4KSV4KS44KWHIOCkuOCkruCkvuCkp+CkvuCkqCDgpLngpYvgpKTgpYcg4KSk4KWHIOCkuOCkruCknOCkpCDgpKjgpL7gpLngpYA6XG4iCisiICVzXG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6NDM1CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzYXRpc2Z5IHByZS1kZXBlbmRlbmNpZXMgZm9yICUuMjUwcyAod2FudGVkIGR1ZSB0byAlLjI1MHMpIgorbXNnc3RyICIiCisiJS4yNTBzIOCkuOCkvuCkoOClgCDgpKrgpY3gpLDgpL8t4KSh4KS/4KSq4KWH4KSo4KWN4KSh4KS44KWA4KSa4KWHL+CkhuCkp+ClgCDgpIXgpLXgpLLgpILgpKzgpYHgpKgg4KSw4KS54KS+4KSj4KS+fuCkr+CkviDgpLjgpK7gpLjgpY3gpK/gpL7gpILgpJrgpYcg4KS44KSu4KS+4KSn4KS+4KSoIOCkleCksOClgiDgpLbgpJXgpKQg4KSo4KS+4KS54KWAICIKKyIoICUuMjUwcyDgpLjgpL7gpKDgpYAg4KSq4KS+4KS54KS/4KSc4KWHIOCkhuCkueClhykiCisKKyM6IHNyYy9lbnF1aXJ5LmM6NDcyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJvYnNvbGV0ZSBvcHRpb24gJy0tJXMnLCBwbGVhc2UgdXNlICctLSVzJyBpbnN0ZWFkLiIKK21zZ3N0ciAi4KSk4KS+4KSV4KS/4KSmOiDgpIXgpKrgpY3gpLDgpJrgpLLgpL/gpKQg4KSq4KSw4KWN4KSv4KS+4KSvIGAtLSVzJ1xuIgorCisjOiBzcmMvZW5xdWlyeS5jOjUxOQorbXNnaWQgIiIKKyItLWNvbXBhcmUtdmVyc2lvbnMgdGFrZXMgdGhyZWUgYXJndW1lbnRzOiA8dmVyc2lvbj4gPHJlbGF0aW9uPiA8dmVyc2lvbj4iCittc2dzdHIgIi0t4KSV4KSC4KSq4KWH4KSF4KSwLeCkteCksOCljeCknOCkqCDgpKTgpYDgpKgg4KSq4KSw4KWN4KSv4KS+4KSvIOCkmOClh+CkpOClhzogPOCkteCksOCljeCknOCkqD4gPOCksOCkv+CksuClh+CktuCkqD4gPOCkteCksOCljeCknOCkqD4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6NTI0Cittc2dpZCAiLS1jb21wYXJlLXZlcnNpb25zIGJhZCByZWxhdGlvbiIKK21zZ3N0ciAiLS3gpJXgpILgpKrgpYfgpIXgpLAt4KS14KSw4KWN4KSc4KSoIOCkmuClgeCkleCkv+CkmuClhyDgpLDgpL/gpLLgpYfgpLbgpKgiCisKKyM6IHNyYy9lbnF1aXJ5LmM6NTI5IHNyYy9lbnF1aXJ5LmM6NTMxIHNyYy9lbnF1aXJ5LmM6NTQwIHNyYy9lbnF1aXJ5LmM6NTQyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ2ZXJzaW9uICclcycgaGFzIGJhZCBzeW50YXg6ICVzIgorbXNnc3RyICLgpKHgpL/gpKrgpL/gpJXgpYfgpJzgpYA6IOCkteCksOCljeCknOCkqCAnJXMnIOCkmuClgCDgpJrgpYHgpJXgpYDgpJrgpYAg4KS44KS/4KSo4KWN4KSf4KWF4KSV4KWN4KS4L+CkteCkvuCkleCljeCkr+CksOCkmuCkqOCkviDgpIbgpLngpYc6ICVzXG4iCisKKyM6IHNyYy9lcnJvcnMuYzo2MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IGVycm9yIHByb2Nlc3NpbmcgJXMgKC0tJXMpOlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisiJXM6IOCkpuCli+CktyDgpKrgpY3gpLDgpJXgpY3gpLDgpL/gpK/gpL4g4KS54KWL4KSkIOCkhuCkueClhyAlcyAoLS0lcyk6XG4iCisiICVzXG4iCisKKyM6IHNyYy9lcnJvcnMuYzo2OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgImRwa2c6IGZhaWxlZCB0byBhbGxvY2F0ZSBtZW1vcnkgZm9yIG5ldyBlbnRyeSBpbiBsaXN0IG9mIGZhaWxlZCBwYWNrYWdlcy4iCittc2dpZCAiIgorIiVzOiBmYWlsZWQgdG8gYWxsb2NhdGUgbWVtb3J5IGZvciBuZXcgZW50cnkgaW4gbGlzdCBvZiBmYWlsZWQgcGFja2FnZXM6ICVzIgorbXNnc3RyICIiCisi4KSh4KS/4KSq4KS/4KSV4KWH4KSc4KWAOiDgpIXgpK/gpLbgpLjgpY3gpLXgpYAg4KSd4KS+4KSy4KWH4KSy4KWN4KSv4KS+IOCkquClheCkleClh+CknOClh+CkuOCkmuCljeCkr+CkviDgpLjgpYHgpJrgpYDgpK7gpKfgpYDgpLIg4KSo4KS14KWA4KSoIOCkqOCli+CkguCkpuCkv+CkuOCkvuCkoOClgCDgpK7gpYfgpK7gpLDgpYAg4KSo4KWH4KSu4KWC4KSoIOCkpuClh+Cko+CljeCkr+CkvuCkuCDgpIXgpK/gpLbgpLjgpY3gpLXgpYAuIgorCisjOiBzcmMvZXJyb3JzLmM6NzkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImRwa2c6IHRvbyBtYW55IGVycm9ycywgc3RvcHBpbmdcbiIKK21zZ2lkICIlczogdG9vIG1hbnkgZXJyb3JzLCBzdG9wcGluZ1xuIgorbXNnc3RyICLgpKHgpL/gpKrgpL/gpJXgpYfgpJzgpYA6IOCkluClgeCkqiDgpKbgpYvgpLcsIOCkpeCkvuCkguCkrOCkpCDgpIbgpLngpYdcbiIKKworIzogc3JjL2Vycm9ycy5jOjg3Cittc2dpZCAiRXJyb3JzIHdlcmUgZW5jb3VudGVyZWQgd2hpbGUgcHJvY2Vzc2luZzpcbiIKK21zZ3N0ciAi4KSq4KWN4KSw4KSV4KWN4KSw4KS/4KSv4KWH4KSa4KWN4KSv4KS+IOCkteClh+Cks+Clh+CksuCkviDgpIbgpJXgpLjgpY3gpK7gpL/gpJUg4KSG4KSy4KWH4KSy4KWHIOCkpuCli+CktzpcbiIKKworIzogc3JjL2Vycm9ycy5jOjk0Cittc2dpZCAiUHJvY2Vzc2luZyB3YXMgaGFsdGVkIGJlY2F1c2UgdGhlcmUgd2VyZSB0b28gbWFueSBlcnJvcnMuXG4iCittc2dzdHIgIuCkquCljeCksOCkleCljeCksOCkv+Ckr+CkviDgpKXgpL7gpILgpKzgpLLgpYfgpLLgpYAg4KSG4KS54KWHIOCkleCkvuCksOCkoyDgpJbgpYHgpKog4KSm4KWL4KS3IOCkhuCkueClh+CkpC5cbiIKKworIzogc3JjL2Vycm9ycy5jOjEwNQorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlICVzIHdhcyBvbiBob2xkLCBwcm9jZXNzaW5nIGl0IGFueXdheSBhcyB5b3UgcmVxdWVzdGVkXG4iCittc2dzdHIgIiIKKyLgpKrgpYXgpJXgpYfgpJwgJXMg4KS54KWHIOCkpOCkvuCkpOCljeCkquClgeCksOCkpOCkviDgpKXgpL7gpILgpKzgpLLgpYfgpLLgpYcg4KS54KWL4KSk4KWHLCDgpKTgpLDgpL/gpKrgpKMg4KSk4KWB4KSu4KSa4KWN4KSv4KS+IOCkteCkv+CkqOCkguCkpOClgOCkqOClgeCkuOCkvuCksCDgpKTgpY3gpK/gpL7gpJrgpYAg4KSq4KWN4KSw4KSV4KWN4KSw4KS/4KSv4KS+IOCkmuCkvuCksuClgiDgpIbgpLngpYdcbiIKKworIzogc3JjL2Vycm9ycy5jOjEwOQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiUGFja2FnZSAlcyBpcyBvbiBob2xkLCBub3QgdG91Y2hpbmcgaXQuICBVc2UgLS1mb3JjZS1ob2xkIHRvIG92ZXJyaWRlLlxuIgorbXNnc3RyICIiCisiJXMg4KS54KWHIOCkpOCkvuCkpOCljeCkquClgeCksOCkpOCkviDgpKXgpL7gpILgpKzgpLLgpYfgpLLgpYcg4KSG4KS54KWHLCDgpKTgpY3gpK/gpL7gpLLgpL4g4KS54KS+4KSkIOCksuCkvuCkteCkpCDgpKjgpL7gpLngpYAuIOCkpuClgeCksOCljeCksuCkleCljeCktyDgpJXgpLDgpKPgpY3gpK/gpL7gpLjgpL7gpKDgpYAgLS3gpKvgpYvgpLDgpY3gpLgt4KS54KWL4KSy4KWN4KShICIKKyLgpLXgpL7gpKrgpLDgpL4uXG4iCisKKyM6IHNyYy9lcnJvcnMuYzoxMTkKKyMsIGZ1enp5Cittc2dpZCAib3ZlcnJpZGluZyBwcm9ibGVtIGJlY2F1c2UgLS1mb3JjZSBlbmFibGVkOiIKK21zZ3N0ciAi4KSh4KS/4KSq4KS/4KSV4KWH4KSc4KWAIC0g4KSk4KS+4KSV4KS/4KSmLCDgpLjgpK7gpLjgpY3gpK/gpYfgpLXgpLAg4KSm4KWB4KSw4KWN4KSy4KSV4KWN4KS3IOCkleCksOCkv+CkpCDgpIbgpLngpYcg4KSV4KS+4KSw4KSjIC0t4KSr4KWL4KSw4KWN4KS4IOCkleCkvuCksOCljeCkr+CkleCljeCkt+CkriDgpJXgpLDgpKTgpYs6XG4iCisKKyM6IHNyYy9maWxlc2RiLmM6MzA3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSBgJS4yNTBzJyIKK21zZ3N0ciAiYCUuMjUwcyfgpKrgpYXgpJXgpYfgpJzgpJrgpYAg4KSr4KS+4KSH4KSy4KWN4KS44KSa4KWAIOCkuOClgeCkmuClgCDgpIXgpLjgpLLgpYfgpLLgpYAg4KSr4KS+4KSH4KSyIOCkieCkmOCkoeCko+CljeCkr+CkvuCkuCDgpIXgpLjgpK7gpLDgpY3gpKUiCisKKyM6IHNyYy9maWxlc2RiLmM6MzExCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlIGAlLjI1MHMnIG1pc3NpbmcsIGFzc3VtaW5nIHBhY2thZ2UgaGFzIG5vIGZpbGVzICIKKyJjdXJyZW50bHkgaW5zdGFsbGVkLiIKK21zZ3N0ciAiIgorIuCkoeCkv+CkquCkv+CkleClh+CknOClgDog4KSX4KSC4KSt4KWA4KSwIOCkpOCkvuCkleCkv+Ckpjog4KSq4KWF4KSV4KWH4KScIGAlLjI1MHMn4KS44KS+4KSg4KWAIOCkq+CkvuCkh+CksuCljeCkuOCkmuClgCDgpLjgpYHgpJrgpYAg4KSF4KS44KSy4KWH4KSy4KWAIOCkq+CkvuCkh+CksiDgpLngpLDgpLXgpLLgpYAg4KSG4KS54KWHLCDgpIXgpLjgpYcgIgorIuCkl+Clg+CkueCkv+CkpCDgpKfgpLDgpYHgpK/gpL4g4KSV4KS/IOCkquClheCkleClh+CknOCkruCkp+CljeCkr+ClhyDgpLjgpY3gpKXgpL7gpKrgpKgg4KSV4KWH4KSy4KWH4KSy4KWAIOCkleCli+Cko+CkpOClgOCkueClgCDgpKvgpL7gpIfgpLIg4KSo4KS+4KS54KWALlxuIgorCisjOiBzcmMvZmlsZXNkYi5jOjMyMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICclLjI1MHMnIgorbXNnc3RyICJgJS4yNTBzJ+CkquClheCkleClh+CknOCkmuClgCDgpKvgpL7gpIfgpLLgpY3gpLjgpJrgpYAg4KS44KWB4KSa4KWAIOCkheCkuOCksuClh+CksuClgCDgpKvgpL7gpIfgpLIg4KSJ4KSY4KSh4KSj4KWN4KSv4KS+4KS4IOCkheCkuOCkruCksOCljeCkpSIKKworIzogc3JjL2ZpbGVzZGIuYzozMzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGVzIGxpc3QgZm9yIHBhY2thZ2UgYCUuMjUwcyciCittc2dpZCAicmVhZGluZyBmaWxlcyBsaXN0IGZvciBwYWNrYWdlICclLjI1MHMnIgorbXNnc3RyICLgpKrgpYXgpJXgpYfgpJwgYCUuMjUwcyfgpLjgpL7gpKDgpYAg4KSF4KS44KSy4KWH4KSy4KWAIOCkq+CkvuCkh+CksuCkmuClgCDgpLjgpYHgpJrgpYAiCisKKyM6IHNyYy9maWxlc2RiLmM6MzM2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJyUuMjUwcycgaXMgbWlzc2luZyBmaW5hbCBuZXdsaW5lIgorbXNnc3RyICLgpKrgpYXgpJXgpYfgpJwgYCUuMjUwcyfgpLjgpL7gpKDgpYAg4KSr4KS+4KSH4KSy4KSa4KWAIOCkuOClgeCkmuClgCDgpIXgpLjgpLLgpYfgpLLgpY3gpK/gpL4g4KSr4KS+4KSH4KSy4KSa4KWHIOCkq+CkvuCkh+CksuCkqOClh+CkriDgpLDgpL/gpJXgpL7gpK7gpYcg4KSG4KS54KWHIgorCisjOiBzcmMvZmlsZXNkYi5jOjM0NAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcycgY29udGFpbnMgZW1wdHkgZmlsZW5hbWUiCittc2dzdHIgIuCkquClheCkleClh+CknCBgJS4yNTBzJ+CkuOCkvuCkoOClgCDgpKvgpL7gpIfgpLLgpJrgpYAg4KS44KWB4KSa4KWAIOCkheCkuOCksuClh+CksuCljeCkr+CkviDgpKvgpL7gpIfgpLLgpJrgpYcg4KSr4KS+4KSH4KSy4KSo4KWH4KSuIOCksOCkv+CkleCkvuCkruClhyDgpIbgpLngpYciCisKKyM6IHNyYy9maWxlc2RiLmM6MzUyCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlIGAlLjI1MHMnIgorbXNnc3RyICLgpKbgpYvgpLfgpL7gpK7gpYHgpLPgpYcg4KSq4KWF4KSV4KWH4KScIGAlLjI1MHMn4KS44KS+4KSg4KWAIOCkq+CkvuCkh+CksuCkmuClgCDgpLjgpYHgpJrgpYAg4KSF4KS44KSy4KWH4KSy4KWAIOCkq+CkvuCkh+CksiDgpKzgpILgpKYg4KS54KWL4KSkIOCkhuCkueClhyIKKworIzogc3JjL2ZpbGVzZGIuYzo0NjIKK21zZ2lkICIoUmVhZGluZyBkYXRhYmFzZSAuLi4gIgorbXNnc3RyICIo4KSh4KWH4KSf4KS+4KSs4KWH4KS4IOCkteCkvuCkmuCkpCDgpIbgpLngpYcgLi4uICIKKworIzogc3JjL2ZpbGVzZGIuYzo0ODMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiVkIGZpbGVzIGFuZCBkaXJlY3RvcmllcyBjdXJyZW50bHkgaW5zdGFsbGVkLilcbiIKK21zZ2lkICIlZCBmaWxlIG9yIGRpcmVjdG9yeSBjdXJyZW50bHkgaW5zdGFsbGVkLilcbiIKK21zZ2lkX3BsdXJhbCAiJWQgZmlsZXMgYW5kIGRpcmVjdG9yaWVzIGN1cnJlbnRseSBpbnN0YWxsZWQuKVxuIgorbXNnc3RyWzBdICIlZCDgpKvgpL7gpIfgpLLgpY3gpLgg4KSG4KSj4KS/IOCkoeCkv+CksOClh+CkleCljeCkn+CksOClgOCknCDgpK/gpL7gpILgpJrgpYAg4KS44KSn4KWN4KSv4KS+IOCkuOCljeCkpeCkvuCkquCkqOCkviDgpJ3gpL7gpLLgpYfgpLLgpYAg4KSG4KS54KWHLilcbiIKK21zZ3N0clsxXSAiJWQg4KSr4KS+4KSH4KSy4KWN4KS4IOCkhuCko+CkvyDgpKHgpL/gpLDgpYfgpJXgpY3gpJ/gpLDgpYDgpJwg4KSv4KS+4KSC4KSa4KWAIOCkuOCkp+CljeCkr+CkviDgpLjgpY3gpKXgpL7gpKrgpKjgpL4g4KSd4KS+4KSy4KWH4KSy4KWAIOCkhuCkueClhy4pXG4iCisKKyM6IHNyYy9maWxlc2RiLmM6NTE2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIuCkquClheCkleClh+CknCAlc+CkmuCljeCkr+CkviDgpIXgpKbgpY3gpK/gpK/gpL7gpLXgpKQg4KSr4KS+4KSH4KSy4KSa4KWAIOCkuOClgeCkmuClgCDgpIXgpLjgpLLgpYfgpLLgpYAg4KSr4KS+4KSH4KSyIOCkrOCkqOCkteCko+CljeCkr+CkvuCkuCDgpIXgpLjgpK7gpLDgpY3gpKUg4KSG4KS54KWHIgorCisjOiBzcmMvZmlsZXNkYi5jOjUyNgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgdG8gdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIuCkquClheCkleClh+CknCAlc+CkmuCljeCkr+CkviDgpIXgpKbgpY3gpK/gpK/gpL7gpLXgpKQg4KSr4KS+4KSH4KSy4KSa4KWAIOCkuOClgeCkmuClgCDgpIXgpLjgpLLgpYfgpLLgpYAg4KSr4KS+4KSH4KSyIOCksuCkv+CkueCkv+Cko+CljeCkr+CkvuCkuCDgpIXgpK/gpLbgpLjgpY3gpLXgpYAg4KSd4KS+4KSy4KWHIOCkhuCkueClhyIKKworIzogc3JjL2ZpbGVzZGIuYzo1MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZsdXNoIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICLgpKrgpYXgpJXgpYfgpJwgJXPgpJrgpY3gpK/gpL4g4KSF4KSm4KWN4KSv4KSv4KS+4KS14KSkIOCkq+CkvuCkh+CksuCkmuClgCDgpLjgpYHgpJrgpYAg4KSF4KS44KSy4KWH4KSy4KWAIOCkq+CkvuCkh+CksiDgpKvgpY3gpLLgpLYg4KSV4KSw4KSj4KWN4KSv4KS+4KS4IOCkheCkr+CktuCkuOCljeCkteClgCIKKworIzogc3JjL2ZpbGVzZGIuYzo1MzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHN5bmMgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIuCkquClheCkleClh+CknCAlc+CkmuCljeCkr+CkviDgpIXgpKbgpY3gpK/gpK/gpL7gpLXgpKQg4KSr4KS+4KSH4KSy4KSa4KWAIOCkuOClgeCkmuClgCDgpIXgpLjgpLLgpYfgpLLgpYAg4KSr4KS+4KSH4KSyIOCkuOCkv+CkguCklSDgpJXgpLDgpKPgpY3gpK/gpL7gpLgg4KSF4KSv4KS24KS44KWN4KS14KWAIgorCisjOiBzcmMvZmlsZXNkYi5jOjUzMworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2xvc2UgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIuCkquClheCkleClh+CknCAlc+CkmuCljeCkr+CkviDgpIXgpKbgpY3gpK/gpK/gpL7gpLXgpKQg4KSr4KS+4KSH4KSy4KSa4KWAIOCkuOClgeCkmuClgCDgpIXgpLjgpLLgpYfgpLLgpYAg4KSr4KS+4KSH4KSyIOCkrOCkguCkpiDgpJXgpLDgpKPgpY3gpK/gpL7gpLgg4KSF4KSv4KS24KS44KWN4KS14KWAIgorCisjOiBzcmMvZmlsZXNkYi5jOjUzNQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gaW5zdGFsbCB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAi4KSq4KWF4KSV4KWH4KScICVz4KSa4KWN4KSv4KS+IOCkheCkpuCljeCkr+Ckr+CkvuCkteCkpCDgpKvgpL7gpIfgpLLgpJrgpYAg4KS44KWB4KSa4KWAIOCkheCkuOCksuClh+CksuClgCDgpKvgpL7gpIfgpLIg4KS44KWN4KSl4KS+4KSq4KSoIOCkleCksOCko+CljeCkr+CkvuCkuCDgpIXgpK/gpLbgpLjgpY3gpLXgpYAiCisKKyM6IHNyYy9oZWxwLmM6NDgKK21zZ2lkICJub3QgaW5zdGFsbGVkIgorbXNnc3RyICLgpLjgpY3gpKXgpL7gpKrgpKjgpL4g4KSd4KS+4KSy4KWAIOCkqOCkvuCkueClgCIKKworIzogc3JjL2hlbHAuYzo0OQorbXNnaWQgIm5vdCBpbnN0YWxsZWQgYnV0IGNvbmZpZ3MgcmVtYWluIgorbXNnc3RyICLgpLjgpY3gpKXgpL7gpKrgpKjgpL4g4KSd4KS+4KSy4KWAIOCkqOCkvuCkueClgCDgpKrgpLDgpILgpKTgpYEg4KSc4KWB4KSz4KS14KSj4KWAIOCkpOCktuClgOCkmiDgpIbgpLngpYciCisKKyM6IHNyYy9oZWxwLmM6NTAKKyMsIGZ1enp5Cittc2dpZCAiYnJva2VuIGR1ZSB0byBmYWlsZWQgcmVtb3ZhbCBvciBpbnN0YWxsYXRpb24iCittc2dzdHIgIuCkleCkvuCkouClgeCkqCDgpJ/gpL7gpJXgpKPgpY3gpK/gpL7gpLgg4KSF4KS44KSu4KSw4KWN4KSlIOCkheCkuOCksuCljeCkr+CkvuCkruClgeCks+ClhyDgpKTgpYHgpJ/gpLLgpYcg4KSG4KS54KWHIgorCisjOiBzcmMvaGVscC5jOjUxCittc2dpZCAidW5wYWNrZWQgYnV0IG5vdCBjb25maWd1cmVkIgorbXNnc3RyICLgpIXgpKjgpKrgpYXgpJXgpY3gpKEg4KSq4KSw4KSC4KSk4KWBIOCknOClgeCks+CkteCko+ClgCDgpJ3gpL7gpLLgpYfgpLLgpYAg4KSo4KS+4KS54KWAIgorCisjOiBzcmMvaGVscC5jOjUyCittc2dpZCAiYnJva2VuIGR1ZSB0byBwb3N0aW5zdCBmYWlsdXJlIgorbXNnc3RyICLgpKrgpYvgpLjgpY3gpJ/gpIfgpKjgpY3gpLjgpY3gpJ8g4KSF4KSv4KS24KS44KWN4KS14KWAIOCkneCkvuCksuCljeCkr+CkvuCkruClgeCks+ClhyDgpKTgpYHgpJ/gpLLgpYcg4KSG4KS54KWHIgorCisjOiBzcmMvaGVscC5jOjUzCittc2dpZCAiYXdhaXRpbmcgdHJpZ2dlciBwcm9jZXNzaW5nIGJ5IGFub3RoZXIgcGFja2FnZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvaGVscC5jOjU0Cittc2dpZCAidHJpZ2dlcmVkIgorbXNnc3RyICIiCisKKyM6IHNyYy9oZWxwLmM6NTUKK21zZ2lkICJpbnN0YWxsZWQiCittc2dzdHIgIuCkuOCljeCkpeCkvuCkquCkqOCkviDgpJ3gpL7gpLLgpYAg4KSG4KS54KWHIgorCisjOiBzcmMvaGVscC5jOjEwNworIywgZnV6enkKK21zZ2lkICJQQVRIIGlzIG5vdCBzZXQuIgorbXNnc3RyICLgpKHgpL/gpKrgpL/gpJXgpYfgpJzgpYAgLSDgpKbgpYvgpLc6IOCkquCkvuCkpSDgpKjgpL/gpLbgpY3gpJrgpL/gpKQg4KSV4KWH4KSy4KWH4KSy4KS+IOCkqOCkvuCkueClgC5cbiIKKworIzogc3JjL2hlbHAuYzoxMjkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiclcycgbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuIgorbXNnc3RyICLgpKHgpL/gpKrgpL/gpJXgpYfgpJzgpYA6IOCkquCkvuCkpeCkteCksCBgJXMnIOCkruCkv+Cks+CkvuCksuClhyDgpKjgpL7gpLngpL/gpKQuXG4iCisKKyM6IHNyYy9oZWxwLmM6MTM4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiJWQgZXhwZWN0ZWQgcHJvZ3JhbSBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS5cbiIKKyIlcyIKK21zZ2lkX3BsdXJhbCAiIgorIiVkIGV4cGVjdGVkIHByb2dyYW1zIG5vdCBmb3VuZCBpbiBQQVRIIG9yIG5vdCBleGVjdXRhYmxlLlxuIgorIiVzIgorbXNnc3RyWzBdICLgpKHgpL/gpKrgpL/gpJXgpYfgpJzgpYA6IOCkquCkvuCkpeCkteCksCBgJXMnIOCkruCkv+Cks+CkvuCksuClhyDgpKjgpL7gpLngpL/gpKQuXG4iCittc2dzdHJbMV0gIuCkoeCkv+CkquCkv+CkleClh+CknOClgDog4KSq4KS+4KSl4KS14KSwIGAlcycg4KSu4KS/4KSz4KS+4KSy4KWHIOCkqOCkvuCkueCkv+CkpC5cbiIKKworIzogc3JjL2hlbHAuYzoxNDEKKyMsIGZ1enp5Cittc2dpZCAiIgorIk5vdGU6IHJvb3QncyBQQVRIIHNob3VsZCB1c3VhbGx5IGNvbnRhaW4gL3Vzci9sb2NhbC9zYmluLCAvdXNyL3NiaW4gYW5kIC8iCisic2Jpbi4iCittc2dzdHIgIiIKKyIlZCDgpIXgpKrgpYfgpJXgpY3gpLfgpL/gpKQg4KSq4KWN4KSw4KWL4KSX4KWN4KSw4KWF4KSuKOCkuCkg4KSq4KS+4KSl4KS14KSwIOCkuOCkvuCkquCkoeCksuCkviDgpKjgpL7gpLngpYAuXG4iCisi4KSP4KSo4KSs4KWAOiDgpLDgpYLgpJ8v4KSu4KWC4KSzIOCkquCkvuCkpeCkruCkp+CljeCkr+ClhyAvdXNyL2xvY2FsL3NiaW4sIC91c3Ivc2JpbiBhbmQgL3NiaW4g4KS54KWHIOCkheCkuOCkvuCkr+CksuCkviDgpKrgpL7gpLngpL/gpJzgpYfgpKQuIgorCisjOiBzcmMvaGVscC5jOjE4OAorbXNnaWQgImFkbWluZGlyIG11c3QgYmUgaW5zaWRlIGluc3RkaXIgZm9yIGRwa2cgdG8gd29yayBwcm9wZXJseSIKK21zZ3N0ciAiIgorCisjOiBzcmMvaGVscC5jOjE5MCBzcmMvbWFpbi5jOjc0NworIywgZnV6enkKK21zZ2lkICJ1bmFibGUgdG8gc2V0ZW52IGZvciBzdWJwcm9jZXNzZXMiCittc2dzdHIgIuCkteCljeCkueClgOCkj+CkuOCkj+CkqOCkquCljeCksOCkv+CkguCkn+Ckj+ClnuCkruCkp+ClhyDgpLjgpYHgpLDgpYLgpLXgpL7gpKQg4KSV4KSw4KSj4KWHIOCknOCkruCkpCDgpKjgpL7gpLngpYAiCisKKyM6IHNyYy9oZWxwLmM6MTkyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjaHJvb3QgdG8gYCUuMjUwcyciCittc2dzdHIgImAlLjI1MHMn4KSy4KS+ICDgpLjgpL/gpI/gpJrgpLDgpYLgpJ8g4KSV4KSw4KSj4KWN4KSv4KS+4KS4IOCkheCkr+CktuCkuOCljeCkteClgCIKKworIzogc3JjL2hlbHAuYzoxOTQgZHBrZy1kZWIvYnVpbGQuYzo0NTUgZHBrZy1kZWIvYnVpbGQuYzo0NTcKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTM2IGRwa2ctZGViL2J1aWxkLmM6NTU4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byBgJS4yNTVzJyIKK21zZ3N0ciAiYCUuMjU1cycg4KSy4KS+IOCkuOClgOCkj+CkmuCkoeClgOCkhuCkr+CkhuCksCDgpJXgpLDgpKTgpL4g4KSG4KSy4KWAIOCkqOCkvuCkueClgCIKKworIzogc3JjL2hlbHAuYzoyNTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNldCBleGVjdXRlIHBlcm1pc3Npb25zIG9uIGAlLjI1MHMnIgorbXNnc3RyICJgJS4yNTBzJyDgpLXgpLDgpL/gpLIg4KSP4KSX4KWN4KSd4KS/4KSV4KWN4KSv4KWB4KSfIOCkquCksOCkteCkvuCkqOCkl+ClgCDgpLjgpYfgpJ8g4KSV4KSw4KSj4KWN4KSv4KS+4KS4IOCkheCkuOCkruCksOCljeCkpSDgpIbgpLngpYciCisKKyM6IHNyYy9oZWxwLmM6Mjc2CisjLCBmdXp6eQorbXNnaWQgInVuYWJsZSB0byBzZXRlbnYgZm9yIG1haW50YWluZXIgc2NyaXB0IgorbXNnc3RyICLgpLXgpY3gpLngpYDgpI/gpLjgpI/gpKjgpKrgpY3gpLDgpL/gpILgpJ/gpI/gpZ7gpK7gpKfgpYcg4KS44KWB4KSw4KWC4KS14KS+4KSkIOCkleCksOCko+ClhyDgpJzgpK7gpKQg4KSo4KS+4KS54KWAIgorCisjOiBzcmMvaGVscC5jOjMwMAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiaW5zdGFsbGVkICVzIHNjcmlwdCIKK21zZ3N0ciAi4KSc4KWB4KSo4KWAICVzIOCkuOCljeCkleCljeCksOCkv+CkquCljeCknyIKKworIzogc3JjL2hlbHAuYzozMTMgc3JjL2hlbHAuYzozODIgc3JjL2hlbHAuYzo0NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgJXMgYCUuMjUwcyciCittc2dzdHIgIiVzIGAlLjI1MHMnIOCkuOCljeCkn+ClheCknyDgpJXgpLDgpKPgpY3gpK/gpL7gpLgg4KSF4KS44KSu4KSw4KWN4KSlIOCkhuCkueClhyIKKworIzogc3JjL2hlbHAuYzozNjggc3JjL2hlbHAuYzo0MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAibmV3ICVzIHNjcmlwdCIKK21zZ3N0ciAi4KSo4KS14KS/4KSoICVzIOCkuOCljeCkleCljeCksOCkv+CkquCljeCknyIKKworIzogc3JjL2hlbHAuYzo0MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAib2xkICVzIHNjcmlwdCIKK21zZ3N0ciAi4KSc4KWB4KSo4KWAICVzIOCkuOCljeCkleCljeCksOCkv+CkquCljeCknyIKKworIzogc3JjL2hlbHAuYzo0MTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0ICVzICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiJXMgYCUuMjUwcycg4KS44KWN4KSf4KWF4KSfIOCkleCksOCko+CljeCkr+CkvuCkuCDgpIXgpLjgpK7gpLDgpY3gpKUg4KSG4KS54KWHIgorCisjOiBzcmMvaGVscC5jOjQyNQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnIC0gdHJ5aW5nIHNjcmlwdCBmcm9tIHRoZSBuZXcgcGFja2FnZSBpbnN0ZWFkIC4uLlxuIgorbXNnc3RyICLgpKHgpL/gpKrgpL/gpJXgpYfgpJzgpYA6IOCkpOCljeCkr+CkvuCkkOCkteCknOClgCDgpKjgpLXgpL/gpKgg4KSq4KWF4KSV4KWH4KScIOCkruCkp+CksuCljeCkr+CkviDgpLjgpY3gpJXgpY3gpLDgpL/gpKrgpY3gpJ/gpJrgpL4g4KSq4KWN4KSw4KSv4KSk4KWN4KSoIOCkleCksOCkpOClhyAuLi5cbiIKKworIzogc3JjL2hlbHAuYzo0MzkKK21zZ2lkICJ0aGVyZSBpcyBubyBzY3JpcHQgaW4gdGhlIG5ldyB2ZXJzaW9uIG9mIHRoZSBwYWNrYWdlIC0gZ2l2aW5nIHVwIgorbXNnc3RyICLgpKrgpYXgpJXgpYfgpJzgpJrgpY3gpK/gpL4g4KSo4KS14KWN4KSv4KS+IOCkhuCkteClg+CkpOCljeCkpOClgOCkruCkp+CljeCkr+ClhyDgpLjgpY3gpJXgpY3gpLDgpL/gpKrgpY3gpJ8g4KSo4KS+4KS54KWAIOCkhuCkueClhyAtIOCkuOCli+CkoeClguCkqCDgpKbgpYfgpKQg4KSG4KS54KWHIgorCisjOiBzcmMvaGVscC5jOjQ0NQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiAuLi4gaXQgbG9va3MgbGlrZSB0aGF0IHdlbnQgT0suXG4iCittc2dzdHIgIuCkoeCkv+CkquCkv+CkleClh+CknOClgDogLi4uIOCkpOClhyDgpKzgpLDgpYvgpKzgpLAg4KSd4KS+4KSy4KWN4KSv4KS+4KS44KSw4KSW4KWHIOCkpuCkv+CkuOCkpCDgpIbgpLngpYcuXG4iCisKKyM6IHNyYy9oZWxwLmM6NjE2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2VjdXJlbHkgcmVtb3ZlICclLjI1NXMnIgorbXNnc3RyICJgJS4yNTVzJyDgpJrgpYAg4KSw4KSa4KSo4KS+IOCkleCksOCkpOCkviDgpK/gpYfgpKQg4KSo4KS+4KS54KWAIgorCisjOiBzcmMvaGVscC5jOjYyMSBkcGtnLWRlYi9pbmZvLmM6NjUgZHBrZy1kZWIvaW5mby5jOjY3Cittc2dpZCAicm0gY29tbWFuZCBmb3IgY2xlYW51cCIKK21zZ3N0ciAiIgorCisjOiBzcmMvaW5mb2RiLmM6NTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoZWNrIGV4aXN0ZW5jZSBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiJS4yNTBzJ+CkmuClhyDgpIXgpLjgpY3gpKTgpL/gpKTgpY3gpLUg4KSk4KSq4KS+4KS44KSj4KWN4KSv4KS+4KS4IOCkheCkuOCkruCksOCljeCkpSIKKworIzogc3JjL2luZm9kYi5jOjcwCittc2dpZCAiY2Fubm90IHJlYWQgaW5mbyBkaXJlY3RvcnkiCittc2dzdHIgIuCkruCkvuCkueCkv+CkpOClgOCkmuClgCDgpKHgpL/gpLDgpYfgpJXgpY3gpJ/gpLDgpYAg4KS14KS+4KSa4KWCIOCktuCkleCkpCDgpKjgpL7gpLngpYAiCisKKyM6IHNyYy9tYWluLmM6NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuIGAlcycgcGFja2FnZSBtYW5hZ2VtZW50IHByb2dyYW0gdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAi4KSh4KWH4KSs4KS/4KSF4KSoIGAlcycg4KSq4KWF4KSV4KWH4KScIOCkteCljeCkr+CkteCkuOCljeCkpeCkvuCkquCkqCDgpIbgpJzgpY3gpJ7gpLXgpLLgpYAg4KSG4KS14KWD4KSk4KWN4KSk4KS/ICVzLlxuIgorCisjOiBzcmMvbWFpbi5jOjg1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtaXwtLWluc3RhbGwgICAgICAgPC5kZWIgZmlsZSBuYW1lPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyZWN0b3J5PiAuLi5cbiIKKyIgIC0tdW5wYWNrICAgICAgICAgICA8LmRlYiBmaWxlIG5hbWU+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXJlY3Rvcnk+IC4uLlxuIgorIiAgLUF8LS1yZWNvcmQtYXZhaWwgIDwuZGViIGZpbGUgbmFtZT4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRpcmVjdG9yeT4gLi4uXG4iCisiICAtLWNvbmZpZ3VyZSAgICAgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLS10cmlnZ2Vycy1vbmx5ICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC1yfC0tcmVtb3ZlICAgICAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtUHwtLXB1cmdlICAgICAgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLS1nZXQtc2VsZWN0aW9ucyBbPHBhdHRlcm4+IC4uLl0gR2V0IGxpc3Qgb2Ygc2VsZWN0aW9ucyB0byBzdGRvdXQuXG4iCisiICAtLXNldC1zZWxlY3Rpb25zICAgICAgICAgICAgICAgICBTZXQgcGFja2FnZSBzZWxlY3Rpb25zIGZyb20gc3RkaW4uXG4iCisiICAtLWNsZWFyLXNlbGVjdGlvbnMgICAgICAgICAgICAgICBEZXNlbGVjdCBldmVyeSBub24tZXNzZW50aWFsIHBhY2thZ2UuXG4iCisiICAtLXVwZGF0ZS1hdmFpbCA8UGFja2FnZXMtZmlsZT4gICBSZXBsYWNlIGF2YWlsYWJsZSBwYWNrYWdlcyBpbmZvLlxuIgorIiAgLS1tZXJnZS1hdmFpbCA8UGFja2FnZXMtZmlsZT4gICAgTWVyZ2Ugd2l0aCBpbmZvIGZyb20gZmlsZS5cbiIKKyIgIC0tY2xlYXItYXZhaWwgICAgICAgICAgICAgICAgICAgIEVyYXNlIGV4aXN0aW5nIGF2YWlsYWJsZSBpbmZvLlxuIgorIiAgLS1mb3JnZXQtb2xkLXVuYXZhaWwgICAgICAgICAgICAgRm9yZ2V0IHVuaW5zdGFsbGVkIHVuYXZhaWxhYmxlIHBrZ3MuXG4iCisiICAtc3wtLXN0YXR1cyA8cGFja2FnZT4gLi4uICAgICAgICBEaXNwbGF5IHBhY2thZ2Ugc3RhdHVzIGRldGFpbHMuXG4iCisiICAtcHwtLXByaW50LWF2YWlsIDxwYWNrYWdlPiAuLi4gICBEaXNwbGF5IGF2YWlsYWJsZSB2ZXJzaW9uIGRldGFpbHMuXG4iCisiICAtTHwtLWxpc3RmaWxlcyA8cGFja2FnZT4gLi4uICAgICBMaXN0IGZpbGVzIGBvd25lZCcgYnkgcGFja2FnZShzKS5cbiIKKyIgIC1sfC0tbGlzdCBbPHBhdHRlcm4+IC4uLl0gICAgICAgIExpc3QgcGFja2FnZXMgY29uY2lzZWx5LlxuIgorIiAgLVN8LS1zZWFyY2ggPHBhdHRlcm4+IC4uLiAgICAgICAgRmluZCBwYWNrYWdlKHMpIG93bmluZyBmaWxlKHMpLlxuIgorIiAgLUN8LS1hdWRpdCAgICAgICAgICAgICAgICAgICAgICAgQ2hlY2sgZm9yIGJyb2tlbiBwYWNrYWdlKHMpLlxuIgorIiAgLS1wcmludC1hcmNoaXRlY3R1cmUgICAgICAgICAgICAgUHJpbnQgZHBrZyBhcmNoaXRlY3R1cmUuXG4iCisiICAtLWNvbXBhcmUtdmVyc2lvbnMgPGE+IDxvcD4gPGI+ICBDb21wYXJlIHZlcnNpb24gbnVtYmVycyAtIHNlZSBiZWxvdy5cbiIKKyIgIC0tZm9yY2UtaGVscCAgICAgICAgICAgICAgICAgICAgIFNob3cgaGVscCBvbiBmb3JjaW5nLlxuIgorIiAgLURofC0tZGVidWc9aGVscCAgICAgICAgICAgICAgICAgU2hvdyBoZWxwIG9uIGRlYnVnZ2luZy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIuCkhuCknOCljeCknuCkvjpcbiIKKyIgIC1pfC0t4KSH4KSo4KS44KWN4KSf4KWJ4KSyL+CkuOCljeCkpeCkvuCkquCkqOCkvlx0ICA8LuCkoeClh+CkrCDgpKvgpL7gpIfgpLIg4KSo4KS+4KS1PiAuLi4gfCAtUnwtLeCksOCkv+CkleCksOCljeCkuOClgOCkteCljeCkuSA84KSh4KS/4KSw4KWH4KSV4KWN4KSf4KSw4KWAPiAuLi5cbiIKKyIgIC0t4KSF4KSo4KSq4KWF4KSVXHQgPC7gpKHgpYfgpKwg4KSr4KS+4KSH4KSyIOCkqOCkvuCktT4gLi4uIHwgLVJ8LS3gpLDgpL/gpJXgpLDgpY3gpLjgpYDgpLXgpY3gpLkgPOCkoeCkv+CksOClh+CkleCljeCkn+CksOClgD4gLi4uXG4iCisiICAtQXwtLeCksOClh+CkleClieCksOCljeCkoS3gpIXgpLXgpY3gpLngpYfgpLIgPC7gpKHgpYfgpKwg4KSr4KS+4KSH4KSyIOCkqOCkvuCktT4gLi4uIHwgLVJ8LS3gpLDgpL/gpJXgpLDgpY3gpLjgpYDgpLXgpY3gpLkgPOCkoeCkv+CksOClh+CkleCljeCkn+CksOClgD4gLi4uXG4iCisiICAtLeCkleClieCkqOCkq+Ckv+Ckl+CksC/gpJzgpYHgpLPgpLXgpKPgpYAgIFx0POCkquClheCkleClh+CknD4gLi4uIHwgLWF8LS3gpIngpLDgpLLgpYfgpLLgpYcv4KSq4KWH4KSo4KWN4KSh4KS/4KSC4KSXXG4iCisiICAtcnwtLeCksOClgOCkruClgeCkteCljeCkuS/gpJXgpL7gpKLgpKPgpYdcdDzgpKrgpYXgpJXgpYfgpJw+IC4uLiB8IC1hfC0t4KSJ4KSw4KSy4KWH4KSy4KWHL+CkquClh+CkqOCljeCkoeCkv+CkguCkl1xuIgorIiAgLVB8LS3gpKrgpLDgpY3gpJwgXHQ84KSq4KWF4KSV4KWH4KScPiAuLi4gfCBhfC0t4KSJ4KSw4KSy4KWH4KSy4KWHL+CkquClh+CkqOCljeCkoeCkv+CkguCkl1xuIgorIiAgLS3gpJfgpYfgpJ8t4KSo4KS/4KS14KShIFs84KSo4KSu4KWB4KSo4KS+Pi4uLl0gXHRcdOCkqOCkv+CkteCkoeCkv+CkguCkmuCkvyDgpLjgpYHgpJrgpYAg4KSP4KS44KSf4KS/4KSh4KS/4KSG4KSJ4KSf4KSy4KS+IOCkpuClh+CkpOClhy5cbiIKKyIgIC0t4KS44KWH4KSfLeCkqOCkv+CkteCkoSBcdFx0XHTgpI/gpLjgpJ/gpL/gpKHgpL/gpIjgpKjgpKjgpYcg4KSq4KWF4KSV4KWH4KScIOCkqOCkv+CkteCkoSDgpJXgpLDgpKTgpL4g4KSv4KWH4KSk4KWHIC5cbiIKKyIgIC0t4KSV4KWN4KSy4KS/4KSF4KSwLeCkqOCkv+CkteCkoSBcdFx0XHTgpJzgpLDgpYHgpLDgpYAg4KSo4KS44KSy4KWH4KSy4KWN4KSv4KS+IOCkquCljeCksOCkpOCljeCkr+Clh+CklSDgpKrgpYXgpJXgpYfgpJzgpJrgpYAg4KSo4KS/4KS14KShIOCksOCkpuCljeCkpiDgpJXgpLDgpKTgpYcuXG4iCisiICAtLeCkheCkquCkoeClh+Ckny3gpIXgpLXgpY3gpLngpYfgpLIgPOCkquClheCkleClh+CknOClh+CkuC3gpKvgpL7gpIjgpLI+XHTgpIngpKrgpLLgpKzgpY3gpKbgpY3gpKcg4KSF4KS44KSy4KWH4KSy4KWN4KSv4KS+IOCkquClheCkleClh+CknOClh+CkuOCkmuClgCDgpK7gpL7gpLngpL/gpKTgpYAg4KSs4KSm4KSy4KSk4KWHLlxuIgorIiAgLS3gpK7gpLDgpY3gpJwt4KSF4KS14KWN4KS54KWH4KSyIDzgpKrgpYXgpJXgpYfgpJzgpYfgpLgt4KSr4KS+4KSI4KSyPlx04KSr4KS+4KSI4KSy4KSu4KSn4KSy4KWN4KSv4KS+IOCkruCkvuCkueCkv+CkpOClgOCkpCDgpLXgpL/gpLLgpYDgpKgg4KSV4KSw4KSk4KWHLlxuIgorIiAgLS3gpJXgpY3gpLLgpL/gpIXgpLAt4KSF4KS14KWN4KS54KWH4KSyXHRcdFx04KSJ4KSq4KSy4KSs4KWN4KSm4KWN4KSnIOCkheCkuOCksuClh+CksuClgCDgpK7gpL7gpLngpL/gpKTgpYAg4KSq4KWB4KS44KWC4KSoIOCkn+CkvuCkleCkpOCliy5cbiIKKyIgIC0t4KSr4KSw4KWN4KSX4KWH4KSfLeCkk+CksuCljeCkoS3gpIXgpKjgpIXgpLXgpY3gpLngpYfgpLJcdFx04KSJ4KSq4KSy4KSs4KWN4KSm4KWN4KSnIOCkqOCkuOCksuClh+CksuClgCDgpIXgpLjgpY3gpKXgpL7gpKrgpL/gpKQg4KSq4KWF4KSV4KWH4KSc4KWH4KS4IOCkteCkv+CkuOCksOCkvi5cbiIKKyIgIC1zfC0t4KS44KWN4KSf4KWH4KSf4KS4IDzgpKrgpYXgpJXgpYfgpJw+IC4uLlx0IFx04KSq4KWF4KSV4KWH4KSc4KSa4KWAIOCkuOCkteCkv+CkuOCljeCkpOCksCDgpLjgpY3gpKXgpL/gpKTgpYAg4KSm4KSw4KWN4KS24KS14KS/4KSk4KWHLlxuIgorIiAgLXB8LS3gpKrgpY3gpLDgpL/gpILgpJ8t4KSF4KS14KWN4KS54KWH4KSyIDzgpKrgpYXgpJXgpYfgpJw+IC4uLlx04KSJ4KSq4KSy4KSs4KWN4KSm4KWN4KSnIOCkheCkuOCksuClh+CksuCljeCkr+CkviDgpIbgpLXgpYPgpKTgpY3gpKTgpYDgpJrgpYAg4KS44KS14KS/4KS44KWN4KSk4KSwIOCkruCkvuCkueCkv+CkpOClgCDgpKbgpLDgpY3gpLbgpLXgpL/gpKTgpYcuXG4iCisiICAtTHwtLeCksuCkv+CkuOCljeCkn+Ckq+CkvuCkiOCksuCkuOCljSA84KSq4KWF4KSV4KWH4KScPiAuLi5cdOCkquClheCkleClh+CknOClh+CkuOCkmuCljeCkr+CkviBg4KSu4KS+4KSy4KSV4KS/4KSa4KWAJyDgpKvgpL7gpIjgpLLgpLjgpY3gpJrgpYAg4KS44KWB4KSa4KWAIOCkpuClh+CkpOClhy5cbiIKKyIgIC1sfC0t4KSy4KS/4KS44KWN4KSfIFs84KSo4KSu4KWB4KSo4KS+PiAuLi5dXHRcdOCkquClheCkleClh+CknOClh+CkuOCkmuClgCDgpLjgpILgpJXgpY3gpLfgpL/gpKrgpY3gpKQg4KS44KWB4KSa4KWAIOCkpuClh+CkpOClhy5cbiIKKyIgIC1TfC0t4KS44KSw4KWN4KSaIDzgpKjgpK7gpYHgpKjgpL4+IC4uLiAgXHRcdOCkquClheCkleClh+CknOClh+CkuOCkmuCljeCkr+CkviBg4KSu4KS+4KSy4KSV4KS/4KSa4KWN4KSv4KS+JyDgpKvgpL7gpIjgpLLgpLjgpY0g4KS24KWL4KSn4KSj4KWHLlxuIgorIiAgLUN8LS3gpJHgpKHgpL/gpJ8gXHRcdFx04KSk4KWB4KSf4KSy4KWH4KSy4KWAIOCkquClheCkleClh+CknOClh+CkuCDgpKTgpKrgpL7gpLjgpKTgpYcuXG4iCisiICAtLeCkquCljeCksOCkv+CkqOCljeCkny3gpIbgpLDgpY3gpJXgpL/gpJ/gpYfgpJXgpY3gpJrgpLAgXHRcdOCkoeCkv+CkquCkv+CkleClh+CknOClgCDgpIbgpLDgpY3gpJXgpL/gpJ/gpYfgpJXgpY3gpJrgpLAg4KSb4KS+4KSq4KSk4KWHLlxuIgorIiAgLS3gpJXgpK7gpY3gpKrgpYfgpIXgpLAt4KS14KSw4KWN4KSc4KSo4KS44KWNIDzgpI8+IDzgpJPgpKrgpL8+IDzgpKzgpL8+IOCkhuCkteClg+CkpOCljeCkpOClgCDgpJXgpY3gpLDgpK7gpL7gpILgpJXgpL7gpJrgpYAg4KSk4KWB4KSy4KSo4KS+IOCkleCksOCkpOClhyAtIOCkluCkvuCksuClgCDgpKrgpLngpL4uXG4iCisiICAtLeCkq+Cli+CksOCljeCkuC3gpLngpYfgpLLgpY3gpKogXHRcdFx04KSr4KWL4KSw4KWN4KS44KS14KSw4KSk4KWAIOCkruCkpuCkpCDgpKbgpL7gpJbgpLXgpKTgpYcuXG4iCisiICAtRGh8LS3gpKHgpL/gpKzgpJc94KS54KWH4KSy4KWN4KSqIFx0XHTgpKbgpYvgpLcv4KSa4KWB4KSVIOCktuCli+Ckp+Cko+CljeCkr+CkvuCkmuClgCDgpK7gpKbgpKQg4KSm4KS+4KSW4KS14KSk4KWHLlxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjExMyBzcmMvcXVlcnljbWQuYzo2MzEgc3JjL3RyaWdjbWQuYzo3NyBkcGtnLWRlYi9tYWluLmM6ODgKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjc3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiICAtaHwtLWhlbHAgICAgICAgICAgICAgICAgICAgICAgICBTaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICAgICAgICAgU2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIiAgLeCkj+CkmnwtLeCkueClh+CksuCljeCkqiBcdFx0XHTgpLngpL4g4KSu4KSm4KSk4KS/4KSa4KS+IOCkuOCkguCkpuClh+CktiDgpKbgpLDgpY3gpLbgpLXgpL/gpKTgpYcuXG4iCisiICAtLeCkteCksOCljeCknOCkqFx0XHRcdFx04KSG4KS14KWD4KSk4KWN4KSk4KWAIOCkleCljeCksOCkruCkvuCkguCklSDgpKbgpLDgpY3gpLbgpLXgpL/gpKTgpYcuXG4iCisiICAtLeCksuCkvuCkh+CkuOCkqOCljeCkuHwtLeCksuCkvuCkh+CkuOCkqOCljeCkuFx0XHTgpKjgpJXgpY3gpJXgpLIg4KSV4KSw4KSj4KWN4KSv4KS+4KSa4KWN4KSv4KS+IOCkquCksOCkteCkvuCkqOCljeCkr+CkvuCkmuClhyDgpIXgpJ/gpYAg4KSm4KS+4KSW4KS14KSk4KS+4KSkLlxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjExOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVXNlIGRwa2cgLWJ8LS1idWlsZHwtY3wtLWNvbnRlbnRzfC1lfC0tY29udHJvbHwtSXwtLWluZm98LWZ8LS1maWVsZHxcbiIKKyIgLXh8LS1leHRyYWN0fC1YfC0tdmV4dHJhY3R8LS1mc3lzLXRhcmZpbGUgIG9uIGFyY2hpdmVzICh0eXBlICVzIC0taGVscCkuXG4iCisiXG4iCittc2dzdHIgIiIKKyLgpKHgpL/gpKrgpL/gpJXgpYfgpJzgpYAgLWJ8LS3gpKzgpL/gpLLgpY3gpKF8LWN8LS3gpJXgpKjgpY3gpJ/gpYfgpKjgpY3gpJ/gpLjgpY18LWV8LS3gpJXgpKjgpY3gpJ/gpY3gpLDgpYvgpLJ8LUl8LS3gpIfgpKjgpY3gpKvgpYt8LWZ8LS3gpKvgpL/gpLLgpY3gpKF8XG4iCisiIC14fC0t4KSP4KSV4KWN4KS44KSf4KWN4KSw4KWN4KWF4KSV4KWN4KSffC1YfC0t4KS14KWN4KS54KWA4KSP4KSV4KWN4KS44KSf4KWN4KSw4KWN4KWF4KSV4KWN4KSffC0t4KSP4KSr4KS44KS/4KS4LeCkn+CksOCkq+CkvuCkh+CksiDgpIbgpLDgpY3gpJXgpL7gpIfgpLXgpY3gpLngpLjgpL7gpKDgpYAg4KS14KS+4KSq4KSw4KS+ICjgpLLgpL/gpLngpL4v4KSf4KS+4KSI4KSqICIKKyLgpJXgpLDgpL4gJXMgLS3gpLngpYfgpLLgpY3gpKopLlxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjEyMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiRm9yIGludGVybmFsIHVzZTogZHBrZyAtLWFzc2VydC1zdXBwb3J0LXByZWRlcGVuZHMgfCAtLXByZWRlcC1wYWNrYWdlIHxcbiIKKyIgIC0tYXNzZXJ0LXdvcmtpbmctZXBvY2ggfCAtLWFzc2VydC1sb25nLWZpbGVuYW1lcyB8IC0tYXNzZXJ0LW11bHRpLWNvbnJlcC5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIuCkheCkguCkpOCksOCljeCkl+CkpCDgpLXgpL7gpKrgpLDgpL7gpLjgpL7gpKDgpYA6IOCkoeCkv+CkquCkv+CkleClh+CknOClgCAtLeCkheClheCkuOCksOCljeCkny3gpLjgpKrgpYvgpLDgpY3gpJ8t4KSq4KWN4KSw4KS/4KSh4KS/4KSq4KWH4KSo4KWN4KSh4KS44KWNIHwgLS3gpKrgpY3gpLDgpL/gpKHgpYfgpKot4KSq4KWF4KSV4KWH4KScIHxcbiIKKyIgIC0t4KSF4KWF4KS44KSw4KWN4KSfLeCkteCksOCljeCkleCkv+CkguCkl+CljS3gpI/gpKrgpYvgpJUgfCAtLeCkheClheCkuOCksOCljeCkny3gpLLgpYngpKjgpY3gpJct4KSr4KS+4KSH4KSy4KSo4KWH4KSu4KWN4KS44KWNIHwgLS3gpIXgpYXgpLjgpLDgpY3gpJ8t4KSu4KSy4KWN4KSf4KS/LeCkleClieCkqOCksOClh+Ckqi5cbiIKKyJcbiIKKworIzogc3JjL21haW4uYzoxMjgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hZG1pbmRpcj08ZGlyZWN0b3J5PiAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMuXG4iCisiICAtLXJvb3Q9PGRpcmVjdG9yeT4gICAgICAgICBJbnN0YWxsIG9uIGEgZGlmZmVyZW50IHJvb3QgZGlyZWN0b3J5LlxuIgorIiAgLS1pbnN0ZGlyPTxkaXJlY3Rvcnk+ICAgICAgQ2hhbmdlIGluc3RhbGxhdGlvbiBkaXIgd2l0aG91dCBjaGFuZ2luZyBhZG1pbiAiCisiZGlyLlxuIgorIiAgLS1wYXRoLWV4Y2x1ZGU9PHBhdHRlcm4+ICAgRG8gbm90IGluc3RhbGwgcGF0aHMgd2hpY2ggbWF0Y2ggYSBzaGVsbCAiCisicGF0dGVybi5cbiIKKyIgIC0tcGF0aC1pbmNsdWRlPTxwYXR0ZXJuPiAgIFJlLWluY2x1ZGUgYSBwYXR0ZXJuIGFmdGVyIGEgcHJldmlvdXMgIgorImV4Y2x1c2lvbi5cbiIKKyIgIC1PfC0tc2VsZWN0ZWQtb25seSAgICAgICAgIFNraXAgcGFja2FnZXMgbm90IHNlbGVjdGVkIGZvciBpbnN0YWxsLyIKKyJ1cGdyYWRlLlxuIgorIiAgLUV8LS1za2lwLXNhbWUtdmVyc2lvbiAgICAgU2tpcCBwYWNrYWdlcyB3aG9zZSBzYW1lIHZlcnNpb24gaXMgaW5zdGFsbGVkLlxuIgorIiAgLUd8LS1yZWZ1c2UtZG93bmdyYWRlICAgICAgU2tpcCBwYWNrYWdlcyB3aXRoIGVhcmxpZXIgdmVyc2lvbiB0aGFuICIKKyJpbnN0YWxsZWQuXG4iCisiICAtQnwtLWF1dG8tZGVjb25maWd1cmUgICAgICBJbnN0YWxsIGV2ZW4gaWYgaXQgd291bGQgYnJlYWsgc29tZSBvdGhlciAiCisicGFja2FnZS5cbiIKKyIgIC0tW25vLV10cmlnZ2VycyAgICAgICAgICAgIFNraXAgb3IgZm9yY2UgY29uc2VxdWVudGlhbCB0cmlnZ2VyICIKKyJwcm9jZXNzaW5nLlxuIgorIiAgLS1uby1kZWJzaWcgICAgICAgICAgICAgICAgRG8gbm90IHRyeSB0byB2ZXJpZnkgcGFja2FnZSBzaWduYXR1cmVzLlxuIgorIiAgLS1uby1hY3R8LS1kcnktcnVufC0tc2ltdWxhdGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEp1c3Qgc2F5IHdoYXQgd2Ugd291bGQgZG8gLSBkb24ndCBkbyBpdC5cbiIKKyIgIC1EfC0tZGVidWc9PG9jdGFsPiAgICAgICAgIEVuYWJsZSBkZWJ1Z2dpbmcgKHNlZSAtRGhlbHAgb3IgLS1kZWJ1Zz1oZWxwKS5cbiIKKyIgIC0tc3RhdHVzLWZkIDxuPiAgICAgICAgICAgIFNlbmQgc3RhdHVzIGNoYW5nZSB1cGRhdGVzIHRvIGZpbGUgZGVzY3JpcHRvciAiCisiPG4+LlxuIgorIiAgLS1sb2c9PGZpbGVuYW1lPiAgICAgICAgICAgTG9nIHN0YXR1cyBjaGFuZ2VzIGFuZCBhY3Rpb25zIHRvIDxmaWxlbmFtZT4uXG4iCisiICAtLWlnbm9yZS1kZXBlbmRzPTxwYWNrYWdlPiwuLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIElnbm9yZSBkZXBlbmRlbmNpZXMgaW52b2x2aW5nIDxwYWNrYWdlPi5cbiIKKyIgIC0tZm9yY2UtLi4uICAgICAgICAgICAgICAgIE92ZXJyaWRlIHByb2JsZW1zIChzZWUgLS1mb3JjZS1oZWxwKS5cbiIKKyIgIC0tbm8tZm9yY2UtLi4ufC0tcmVmdXNlLS4uLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcCB3aGVuIHByb2JsZW1zIGVuY291bnRlcmVkLlxuIgorIiAgLS1hYm9ydC1hZnRlciA8bj4gICAgICAgICAgQWJvcnQgYWZ0ZXIgZW5jb3VudGVyaW5nIDxuPiBlcnJvcnMuXG4iCisiXG4iCittc2dzdHIgIiIKKyLgpKrgpLDgpY3gpK/gpL7gpK86XG4iCisiICAtLeCkheClheCkoeCkruCkv+CkqOCkoeCkv+CkhuCkr+CkhuCksD084KSh4KS/4KSw4KWH4KSV4KWN4KSf4KSw4KWAPiAgJXPgpJrgpY3gpK/gpL4g4KSQ4KS14KSc4KWAIDzgpKHgpL/gpLDgpYfgpJXgpY3gpJ/gpLDgpYA+IOCkteCkvuCkquCksOCkvi5cbiIKKyIgIC0t4KSw4KWB4KSfPTzgpKHgpL/gpLDgpYfgpJXgpY3gpJ/gpLDgpYA+XHQgICAg4KS14KWH4KSX4KSz4KWN4KSv4KS+IOCksOClgeCknyDgpKHgpL/gpLDgpYfgpJXgpY3gpJ/gpLDgpYDgpK7gpKfgpY3gpK/gpYcg4KS44KWN4KSl4KS+4KSq4KSo4KS+IOCkleCksOCkvi5cbiIKKyIgIC0t4KSH4KSo4KWN4KS44KWN4KSf4KSh4KS/4KSG4KSv4KSG4KSwPTzgpKHgpL/gpLDgpYfgpJXgpY3gpJ/gpLDgpYA+ICAg4KSF4KWF4KSh4KSu4KS/4KSoIOCkoeCkv+CksOClh+CkleCljeCkn+CksOClgCDgpKgg4KSs4KSm4KSy4KSk4KS+IOCkuOCljeCkpeCkvuCkquCkqOClh+CkmuClgCDgpKHgpL/gpLDgpYfgpJXgpY3gpJ/gpLDgpYAg4KSs4KSm4KSy4KS+LlxuIgorIiAgLU98LS3gpLjgpL/gpLLgpYfgpJXgpY3gpJ/gpYfgpKEt4KST4KSo4KWN4KSy4KWAXHQgICDgpLjgpY3gpKXgpL7gpKrgpKjgpL4v4KSF4KSq4KSX4KWN4KSw4KWH4KSh4KS44KS+4KSg4KWAIOCkqCDgpKjgpL/gpLXgpKHgpLLgpYfgpLLgpYAg4KSq4KWF4KSV4KWH4KSc4KWH4KS4IOCkuOCli+CkoeClgeCkqCDgpKbgpY3gpK/gpL4uXG4iCisiICAtRXwtLeCkuOCljeCkleCkv+Ckqi3gpLjgpYfgpK4t4KS14KSw4KWN4KSc4KSoIFx0ICAg4KSF4KS24KWAIOCkquClheCkleClh+CknOClh+CkuCDgpJzgpY3gpK/gpL7gpJrgpYAg4KSG4KS14KWD4KSk4KWN4KSk4KWAIOCkhuCko+CkvyDgpLjgpY3gpKXgpL7gpKrgpL/gpKQg4KSV4KWH4KSy4KWH4KSy4KWAIOCkhuCkteClg+CkpOCljeCkpOClgCDgpLjgpL7gpLDgpJbgpYAg4KSG4KS54KWHICIKKyLgpKTgpYAg4KS14KSX4KSz4KS+LlxuIgorIiAgLUd8LS3gpLDgpYDgpKvgpY3gpK/gpYHgpJwt4KSh4KS+4KSK4KSo4KSX4KWN4KSw4KWH4KShXHQgICAg4KSF4KS24KWAIOCkquClheCkleClh+CknOClh+CkuCDgpJzgpY3gpK/gpL7gpJrgpYAg4KSG4KS14KWD4KSk4KWN4KSk4KWAIOCkuOCljeCkpeCkvuCkquCkv+CkpCDgpJXgpYfgpLLgpYfgpLLgpY3gpK/gpL4g4KSG4KS14KWD4KSk4KWN4KSk4KWA4KSa4KWN4KSv4KS+IOCkheCkl+Cli+CkpuCksOCkmuClgCAiCisi4KSG4KS54KWHIOCkpOClgCDgpLXgpJfgpLPgpL4uXG4iCisiICAtQnwtLeCkkeCkn+Cliy3gpKHgpL/gpJXgpYngpKjgpKvgpL/gpJfgpLAgXHQgICDgpJzgpLDgpYAg4KSP4KSW4KS+4KSm4KWHIOCkpuClgeCkuOCksOClhyDgpKrgpYXgpJXgpYfgpJwg4KSk4KWL4KSh4KSkIOCkheCkuOClh+CksiDgpKTgpLDgpYAg4KS44KWN4KSl4KSq4KSo4KS+IOCkleCksOCkvi5cbiIKKyIgIC0t4KSo4KWLLeCkoeClh+CkrOCkuOCkv+Ckl1x0XHQgICDgpKrgpYXgpJXgpYfgpJzgpJrgpY3gpK/gpL4g4KS44KS54KWA4KSa4KWAIOCkuOCkpOCljeCkr+CkpOCkviDgpKrgpKHgpKTgpL7gpLPgpYHgpKgg4KSq4KS54KS+4KSj4KWN4KSv4KS+4KSa4KS+IOCkquCljeCksOCkr+CkpOCljeCkqCDgpJXgpLDgpYEg4KSo4KSV4KS+LlxuIgorIiAgLS3gpKjgpYst4KSF4KWF4KSV4KWN4KSffC0t4KSh4KWN4KSw4KS+4KSvLeCksOCkqHwtLeCkuOCkv+CkruCljeCkr+ClgeCksuClh+Ckn1xuIgorIlx0XHRcdFx04KSr4KSV4KWN4KSkIOCkruCljeCkueCko+CkviDgpIbgpK7gpY3gpLngpYAg4KSV4KS+4KSvIOCkleCksOClgSAtIOCkpOClhyDgpJXgpLDgpYEg4KSo4KSV4KS+LlxuIgorIiAgLUR8LS3gpKHgpL/gpKzgpJc9POCkkeCkleCljeCkn+Cksj5cdCAgICAg4KSm4KWL4KS3L+CkmuClgeCklSDgpLbgpYvgpKfgpKPgpY3gpK/gpL7gpJrgpYAg4KS24KSV4KWN4KSv4KSk4KS+ICjgpKrgpLngpL4gLeCkoeClh+CksuCljeCkqyDgpJXgpL/gpILgpLXgpL4gLS3gpKHgpL/gpKzgpJc94KS54KWH4KSy4KWN4KSqKS5cbiIKKyIgIC0t4KS44KWN4KSf4KWH4KSf4KS4LeCkj+Ckq+CkoeCkvyA8bj5cdCAgICAg4KSF4KSm4KWN4KSv4KSv4KS14KSkIOCkrOCkpuCksuClh+CksuCkvyDgpLjgpY3gpKXgpL/gpKTgpYAg4KSr4KS+4KSH4KSyIOCkoeCkv+CkuOCljeCkleCljeCksOCkv+CkquCljeCkn+CksOCkleCkoeClhyDgpKrgpL7gpKDgpLXgpL/gpKTgpYcgPG4+LlxuIgorIiAgLS3gpLLgpYngpJc9POCkq+CkvuCkh+CksuCkqOClh+Ckrj5cdCAgICAg4KSs4KSm4KSy4KWH4KSy4KS/IOCkuOCljeCkpeCkv+CkpOClgCDgpIbgpKPgpL8g4KSV4KWD4KSk4KWA4KSC4KSa4KS/IOCkruCkvuCkueCkv+CkpOClgCA84KSr4KS+4KSH4KSy4KSo4KWH4KSuPuCkruCkp+CljeCkr+ClhyDgpKjgpYvgpILgpKbgpKTgpYcuXG4iCisiICAtLeCkh+Ckl+CljeCkqOCli+CkheCksC3gpKHgpL/gpKrgpYfgpKjgpY3gpKHgpLg9POCkquClheCkleClh+CknD4sLi4uXG4iCisiXHRcdFx0XHQ84KSq4KWF4KSV4KWH4KScPuCkruCkp+CljeCkr+ClhyDgpIXgpLXgpLLgpILgpKzgpYHgpKgg4KSF4KS44KSy4KWH4KSy4KWN4KSv4KS+IOCkrOCkvuCkrOClgOCkguCkleCkoeClhyDgpKbgpYHgpLDgpY3gpLLgpJXgpY3gpLcg4KSV4KSw4KS+LlxuIgorIiAgLS3gpKvgpYvgpLDgpY3gpLgtLi4uXHRcdCAgICDgpLjgpK7gpY3gpLjgpY3gpK/gpL7gpILgpJXgpKHgpYcg4KSq4KWC4KSw4KWN4KSj4KSq4KSj4KWHIOCkpuClgeCksOCljeCksuCkleCljeCktyDgpJXgpLDgpKTgpYcgKOCkquCkueCkviAtLeCkq+Cli+CksOCljeCkuD3gpLngpYfgpLLgpY3gpKopLlxuIgorIiAgLS3gpKjgpYst4KSr4KWL4KSw4KWN4KS4LS4uLnwtLeCksOClh+Ckq+CljeCkr+ClgeCknC0uLi5cbiIKKyJcdFx0XHRcdOCknOClh+CkguCkteCljeCkueCkviDgpIbgpJXgpLjgpY3gpK7gpL/gpJUg4KS44KSu4KS44KWN4KSv4KS+IOCkieCkpuCljeCkreCkteCkpOClhyDgpKTgpYfgpILgpLXgpY3gpLngpL4g4KSl4KS+4KSC4KSs4KSk4KWHLlxuIgorIiAgLS3gpIXgpYXgpKzgpYngpLDgpY3gpJ8t4KSG4KSr4KWN4KSf4KSw4KWNIDxuPiAgICAgICAgICDgpIbgpJXgpLjgpY3gpK7gpL/gpJUgPG4+IOCkpuCli+CktyDgpIngpKbgpY3gpK3gpLXgpLLgpY3gpK/gpL7gpKjgpILgpKTgpLAg4KSs4KS+4KS54KWH4KSwIOCkquCkoeCkpOClhy5cbiIKKyJcbiIKKworIzogc3JjL21haW4uYzoxNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbXBhcmlzb24gb3BlcmF0b3JzIGZvciAtLWNvbXBhcmUtdmVyc2lvbnMgYXJlOlxuIgorIiAgbHQgbGUgZXEgbmUgZ2UgZ3QgICAgICAgKHRyZWF0IGVtcHR5IHZlcnNpb24gYXMgZWFybGllciB0aGFuIGFueSAiCisidmVyc2lvbik7XG4iCisiICBsdC1ubCBsZS1ubCBnZS1ubCBndC1ubCAodHJlYXQgZW1wdHkgdmVyc2lvbiBhcyBsYXRlciB0aGFuIGFueSB2ZXJzaW9uKTtcbiIKKyIgIDwgPDwgPD0gPSA+PSA+PiA+ICAgICAgIChvbmx5IGZvciBjb21wYXRpYmlsaXR5IHdpdGggY29udHJvbCBmaWxlICIKKyJzeW50YXgpLlxuIgorIlxuIgorbXNnc3RyICIiCisiIC0t4KSV4KSC4KSq4KWH4KSF4KSwLeCkteCksOCljeCknOCkqOCljeCkuCDgpJXgpLDgpL/gpKTgpL4g4KSk4KWB4KSy4KSo4KS+4KSk4KWN4KSu4KSVIOCkkeCkquCksOClh+Ckn+CksOCkuOCljTpcbiIKKyIgbHQgbGUgZXEgbmUgZ2UgZ3QgICAgICAgKOCksOCkv+CkleCljeCkpCDgpIbgpLXgpYPgpKTgpY3gpKTgpYAg4KS54KS/IOCkh+CkpOCksCDgpJXgpYvgpKPgpKTgpY3gpK/gpL7gpLngpYAg4KSG4KS14KWD4KSk4KWN4KSk4KWA4KSC4KSa4KWN4KSv4KS+IOCkheCkl+Cli+CkpuCksOCkmuClgCDgpIbgpLXgpYPgpKTgpY3gpKTgpYAgIgorIuCkruCkvuCkqOCkvik7XG4iCisiICBsdC1ubCBsZS1ubCBnZS1ubCBndC1ubCAo4KSw4KS/4KSV4KWN4KSkIOCkhuCkteClg+CkpOCljeCkpOClgCDgpLngpL8g4KSH4KSk4KSwIOCkleCli+Cko+CkpOCljeCkr+CkvuCkueClgCDgpIbgpLXgpYPgpKTgpY3gpKTgpYDgpILgpJrgpY3gpK/gpL4g4KSF4KSX4KWL4KSm4KSw4KSa4KWAIOCkhuCkteClg+CkpOCljeCkpOClgCAiCisi4KSu4KS+4KSo4KS+KTtcbiIKKyIgIDwgPDwgPD0gPSA+PSA+PiA+ICAgICAgICjgpKvgpJXgpY3gpKQg4KSo4KS/4KSv4KSC4KSk4KWN4KSw4KSjIOCkq+CkvuCkh+CksuCkmuCljeCkr+CkviDgpLXgpL7gpJXgpY3gpK/gpLDgpJrgpKjgpYcg4KSs4KSw4KWL4KSs4KSw4KSa4KWN4KSv4KS+IOCkuOClgeCkuOCkguCkl+CkpOClgOCkuOCkvuCkoOClgCkuXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTYxCisjLCBjLWZvcm1hdAorbXNnaWQgIlVzZSBgZHNlbGVjdCcgb3IgYGFwdGl0dWRlJyBmb3IgdXNlci1mcmllbmRseSBwYWNrYWdlIG1hbmFnZW1lbnQuXG4iCittc2dzdHIgImDgpKHgpL/gpLjgpL/gpLLgpYfgpJXgpY3gpJ8nIOCkleCkv+CkguCkteCkviBg4KSF4KWF4KSq4KWN4KSf4KS/4KSf4KWN4KSv4KWB4KShJyDgpK/gpYHgpJzgpLAt4KSr4KWN4KSw4KWH4KSo4KWN4KSh4KSy4KWAIOCkquClheCkleClh+CknCDgpLXgpY3gpK/gpLXgpLjgpY3gpKXgpL7gpKrgpKjgpL7gpLjgpL7gpKDgpYAg4KS14KS+4KSq4KSw4KS+LlxuIgorCisjOiBzcmMvbWFpbi5jOjE3MAorIywgZnV6enkKK21zZ2lkICIiCisiVHlwZSBkcGtnIC0taGVscCBmb3IgaGVscCBhYm91dCBpbnN0YWxsaW5nIGFuZCBkZWluc3RhbGxpbmcgcGFja2FnZXMgWypdO1xuIgorIlVzZSBgZHNlbGVjdCcgb3IgYGFwdGl0dWRlJyBmb3IgdXNlci1mcmllbmRseSBwYWNrYWdlIG1hbmFnZW1lbnQ7XG4iCisiVHlwZSBkcGtnIC1EaGVscCBmb3IgYSBsaXN0IG9mIGRwa2cgZGVidWcgZmxhZyB2YWx1ZXM7XG4iCisiVHlwZSBkcGtnIC0tZm9yY2UtaGVscCBmb3IgYSBsaXN0IG9mIGZvcmNpbmcgb3B0aW9ucztcbiIKKyJUeXBlIGRwa2ctZGViIC0taGVscCBmb3IgaGVscCBhYm91dCBtYW5pcHVsYXRpbmcgKi5kZWIgZmlsZXM7XG4iCisiXG4iCisiT3B0aW9ucyBtYXJrZWQgWypdIHByb2R1Y2UgYSBsb3Qgb2Ygb3V0cHV0IC0gcGlwZSBpdCB0aHJvdWdoIGBsZXNzJyBvciAiCisiYG1vcmUnICEiCittc2dzdHIgIiIKKyLgpJ/gpL7gpIfgpKog4KSh4KS/4KSq4KS/4KSV4KWH4KSc4KWAIC0t4KS54KWH4KSy4KWN4KSqIOCkquClheCkleClh+CknCDgpLjgpY3gpKXgpL7gpKrgpKjgpYfgpJrgpY3gpK/gpL4g4KSG4KSj4KS/IOCkheCkuOCljeCkpeCkvuCkquCkqOClh+CkmuCljeCkr+CkviDgpLjgpLngpL7gpK/gpY3gpK/gpL7gpLjgpL7gpKDgpYAgWypdO1xuIgorImDgpKHgpL/gpLjgpL/gpLLgpYfgpJXgpY3gpJ8nIOCkleCkv+CkguCkteCkviBg4KSF4KWF4KSq4KWN4KSf4KS/4KSf4KWN4KSv4KWB4KShJyDgpK/gpYHgpJzgpLAt4KSr4KWN4KSw4KWH4KSo4KWN4KSh4KSy4KWAIOCkquClheCkleClh+CknCDgpLXgpY3gpK/gpLXgpLjgpY3gpKXgpL7gpKrgpKjgpL7gpLjgpL7gpKDgpYAg4KS14KS+4KSq4KSw4KS+O1xuIgorIuCkn+CkvuCkh+CkqiDgpKHgpL/gpKrgpL/gpJXgpYfgpJzgpYAgLS3gpKHgpL/gpLngpYfgpLLgpY3gpKog4KSh4KS/4KSq4KS/4KSV4KWH4KSc4KWAIOCkpuCli+CktyDgpLbgpYvgpKfgpKPgpL5+4KSv4KS+IOCkqOCkv+CktuCkvuCko+CkvuCkmuCljeCkr+CkviDgpJXgpL/gpILgpK7gpKTgpYDgpILgpJrgpYAg4KS44KWB4KSa4KWAO1xuIgorIuCkn+CkvuCkh+CkqiDgpKHgpL/gpKrgpL/gpJXgpYfgpJzgpYAgLS3gpKvgpYvgpLDgpY3gpLgt4KS54KWH4KSy4KWN4KSqIOCkq+Cli+CksOCljeCkuOCkmuCljeCkr+CkviDgpKrgpLDgpY3gpK/gpL7gpK/gpL7gpILgpJrgpYAg4KS44KWB4KSa4KWAO1xuIgorIuCkn+CkvuCkh+CkqiDgpKHgpL/gpKrgpL/gpJXgpYfgpJzgpYAt4KSh4KWH4KSsIC0t4KS54KWH4KSy4KWN4KSqICouZGViIOCkq+CkvuCkh+CksuCljeCkuCDgpK/gpYvgpJfgpY3gpK8g4KSw4KS/4KSk4KWA4KSo4KWHIOCkueCkvuCkpOCkvuCks+Cko+CljeCkr+CkvuCkuCDgpLjgpLngpL7gpK/gpY3gpK8g4KSV4KSw4KSk4KWHO1xuIgorIuCkn+CkvuCkh+CkqiDgpKHgpL/gpKrgpL/gpJXgpYfgpJzgpYAgLS3gpLLgpL7gpIfgpLjgpKjgpY3gpLgg4KSo4KSV4KWN4KSV4KSyIOCkleCksOCko+CljeCkr+CkvuCkmuCljeCkr+CkviDgpKrgpLDgpLXgpL7gpKjgpY3gpK/gpL7gpLjgpL7gpKDgpYAg4KSG4KSj4KS/IOCkueCkruClgOCkmuCljeCkr+CkviDgpIXgpK3gpL7gpLXgpL7gpLjgpL7gpKDgpYAgKEdOVSAiCisiR1BMKSBbKl0uXG4iCisiXG4iCisiWypdIOCkueClhyDgpKDgpLPgpJUg4KSq4KSw4KWN4KSv4KS+4KSvIOCkquCljeCksOCkmuCkguCkoSDgpKrgpY3gpLDgpK7gpL7gpKPgpL7gpKQg4KSG4KSJ4KSf4KSq4KWB4KSfL+CkieCkpOCljeCkquCkvuCkpuCkqCDgpKbgpYfgpKTgpYsgLSDgpKTgpY3gpK/gpL7gpLLgpL4gJ+CksuClh+CkuCcg4KSV4KS/4KSC4KS14KS+ICfgpK7gpYvgpLAn4KSo4KWHIOCkruCkvuCksOCljeCkl+ClgCAiCisi4KSy4KS+4KS14KS+ISIKKworIzogc3JjL21haW4uYzoyMTkKK21zZ2lkICJTZXQgYWxsIGZvcmNlIG9wdGlvbnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjEKK21zZ2lkICJSZXBsYWNlIGEgcGFja2FnZSB3aXRoIGEgbG93ZXIgdmVyc2lvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIyMworbXNnaWQgIkNvbmZpZ3VyZSBhbnkgcGFja2FnZSB3aGljaCBtYXkgaGVscCB0aGlzIG9uZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIyNQorbXNnaWQgIlByb2Nlc3MgaW5jaWRlbnRhbCBwYWNrYWdlcyBldmVuIHdoZW4gb24gaG9sZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIyNworbXNnaWQgIlRyeSB0byAoZGUpaW5zdGFsbCB0aGluZ3MgZXZlbiB3aGVuIG5vdCByb290IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjI5Cittc2dpZCAiUEFUSCBpcyBtaXNzaW5nIGltcG9ydGFudCBwcm9ncmFtcywgcHJvYmxlbXMgbGlrZWx5IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjMxCittc2dpZCAiSW5zdGFsbCBhIHBhY2thZ2UgZXZlbiBpZiBpdCBmYWlscyBhdXRoZW50aWNpdHkgY2hlY2siCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzMKK21zZ2lkICJQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyB2ZXJzaW9ucyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzNQorbXNnaWQgIk92ZXJ3cml0ZSBhIGZpbGUgZnJvbSBvbmUgcGFja2FnZSB3aXRoIGFub3RoZXIiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzcKK21zZ2lkICJPdmVyd3JpdGUgYSBkaXZlcnRlZCBmaWxlIHdpdGggYW4gdW5kaXZlcnRlZCB2ZXJzaW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjM5Cittc2dpZCAiT3ZlcndyaXRlIG9uZSBwYWNrYWdlJ3MgZGlyZWN0b3J5IHdpdGggYW5vdGhlcidzIGZpbGUiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDEKK21zZ2lkICJEbyBub3QgcGVyZm9ybSBzYWZlIEkvTyBvcGVyYXRpb25zIHdoZW4gdW5wYWNraW5nIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjQzCittc2dpZCAiQWx3YXlzIHVzZSB0aGUgbmV3IGNvbmZpZyBmaWxlcywgZG9uJ3QgcHJvbXB0IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjQ1Cittc2dpZCAiQWx3YXlzIHVzZSB0aGUgb2xkIGNvbmZpZyBmaWxlcywgZG9uJ3QgcHJvbXB0IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjQ4Cittc2dpZCAiIgorIlVzZSB0aGUgZGVmYXVsdCBvcHRpb24gZm9yIG5ldyBjb25maWcgZmlsZXMgaWYgb25lXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgIGlzIGF2YWlsYWJsZSwgZG9uJ3QgcHJvbXB0LiBJZiBubyBkZWZhdWx0IGNhbiBiZSAiCisiZm91bmQsXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgIHlvdSB3aWxsIGJlIHByb21wdGVkIHVubGVzcyBvbmUgb2YgdGhlIGNvbmZvbGQgb3JcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgY29uZm5ldyBvcHRpb25zIGlzIGFsc28gZ2l2ZW4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNTMKK21zZ2lkICJBbHdheXMgaW5zdGFsbCBtaXNzaW5nIGNvbmZpZyBmaWxlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI1NQorbXNnaWQgIk9mZmVyIHRvIHJlcGxhY2UgY29uZmlnIGZpbGVzIHdpdGggbm8gbmV3IHZlcnNpb25zIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjU3Cittc2dpZCAiUHJvY2VzcyBldmVuIHBhY2thZ2VzIHdpdGggd3Jvbmcgb3Igbm8gYXJjaGl0ZWN0dXJlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjU5Cittc2dpZCAiSW5zdGFsbCBldmVuIGlmIGl0IHdvdWxkIGJyZWFrIGFub3RoZXIgcGFja2FnZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI2MQorbXNnaWQgIkFsbG93IGluc3RhbGxhdGlvbiBvZiBjb25mbGljdGluZyBwYWNrYWdlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI2MworIywgZnV6enkKKyN8IG1zZ2lkICJkZXBlbmRlbmN5IHByb2JsZW1zIC0gbm90IHJlbW92aW5nIgorbXNnaWQgIlR1cm4gYWxsIGRlcGVuZGVuY3kgcHJvYmxlbXMgaW50byB3YXJuaW5ncyIKK21zZ3N0ciAi4KSF4KS14KSy4KSC4KSs4KWB4KSoIOCkheCkuOCksuClh+CksuCljeCkr+CkviDgpLjgpK7gpLjgpY3gpK/gpL4gLSDgpJXgpL7gpKLgpYLgpKgg4KSf4KS+4KSV4KSkIOCkqOCkvuCkueClgCIKKworIzogc3JjL21haW4uYzoyNjUKKyMsIGZ1enp5CisjfCBtc2dpZCAiZGVwZW5kZW5jeSBwcm9ibGVtcyAtIG5vdCByZW1vdmluZyIKK21zZ2lkICJUdXJuIGRlcGVuZGVuY3kgdmVyc2lvbiBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzIgorbXNnc3RyICLgpIXgpLXgpLLgpILgpKzgpYHgpKgg4KSF4KS44KSy4KWH4KSy4KWN4KSv4KS+IOCkuOCkruCkuOCljeCkr+CkviAtIOCkleCkvuCkouClguCkqCDgpJ/gpL7gpJXgpKQg4KSo4KS+4KS54KWAIgorCisjOiBzcmMvbWFpbi5jOjI2NworbXNnaWQgIlJlbW92ZSBwYWNrYWdlcyB3aGljaCByZXF1aXJlIGluc3RhbGxhdGlvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI2OQorbXNnaWQgIlJlbW92ZSBhbiBlc3NlbnRpYWwgcGFja2FnZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4MQorbXNnaWQgIkdlbmVyYWxseSBoZWxwZnVsIHByb2dyZXNzIGluZm9ybWF0aW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjgyCisjLCBmdXp6eQorbXNnaWQgIkludm9jYXRpb24gYW5kIHN0YXR1cyBvZiBtYWludGFpbmVyIHNjcmlwdHMiCittc2dzdHIgIuCkteCljeCkueClgOCkj+CkuOCkj+CkqOCkquCljeCksOCkv+CkguCkn+Ckj+ClnuCkruCkp+ClhyDgpLjgpYHgpLDgpYLgpLXgpL7gpKQg4KSV4KSw4KSj4KWHIOCknOCkruCkpCDgpKjgpL7gpLngpYAiCisKKyM6IHNyYy9tYWluLmM6MjgzCittc2dpZCAiT3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg0Cittc2dpZCAiTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODUKKyMsIGZ1enp5CisjfCBtc2dpZCAicmVhZCBlcnJvciBpbiBjb25maWd1cmF0aW9uIGZpbGUgYCUuMjU1cyciCittc2dpZCAiT3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZSIKK21zZ3N0ciAiYCUuMjU1cycg4KS44KSC4KSw4KSa4KSo4KS+IOCkq+CkvuCkiOCksuCkruCkp+ClhyDgpLXgpL7gpJrgpKgg4KSk4KWN4KSw4KWB4KSf4KWAIgorCisjOiBzcmMvbWFpbi5jOjI4NgorbXNnaWQgIkxvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4NworbXNnaWQgIkRlcGVuZGVuY2llcyBhbmQgY29uZmxpY3RzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg4Cittc2dpZCAiTG90cyBvZiBkZXBlbmRlbmNpZXMvY29uZmxpY3RzIG91dHB1dCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4OQorbXNnaWQgIlRyaWdnZXIgYWN0aXZhdGlvbiBhbmQgcHJvY2Vzc2luZyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MAorbXNnaWQgIkxvdHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2VycyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MQorbXNnaWQgIlNpbGx5IGFtb3VudHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2VycyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MgorbXNnaWQgIkxvdHMgb2YgZHJpdmVsIGFib3V0IGVnIHRoZSBkcGtnL2luZm8gZGlyZWN0b3J5IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjkzCittc2dpZCAiSW5zYW5lIGFtb3VudHMgb2YgZHJpdmVsIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MzA0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlcyBkZWJ1Z2dpbmcgb3B0aW9uLCAtLWRlYnVnPTxvY3RhbD4gb3IgLUQ8b2N0YWw+OlxuIgorIlxuIgorIiBOdW1iZXIgIFJlZi4gaW4gc291cmNlICAgRGVzY3JpcHRpb25cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjMxMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiRGVidWdnaW5nIG9wdGlvbnMgY2FuIGJlIG1peGVkIHVzaW5nIGJpdHdpc2Utb3IuXG4iCisiTm90ZSB0aGF0IHRoZSBtZWFuaW5ncyBhbmQgdmFsdWVzIGFyZSBzdWJqZWN0IHRvIGNoYW5nZS5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjMxOQorbXNnaWQgIi0tZGVidWcgcmVxdWlyZXMgYW4gb2N0YWwgYXJndW1lbnQiCittc2dzdHIgIi0t4KSh4KS/4KSs4KSX4KSy4KS+IOCkkeCkleCljeCkn+CksiDgpIbgpLDgpJfgpY3gpK/gpYHgpK7gpYfgpKjgpY3gpJ/gpJrgpYAv4KSq4KSw4KWN4KSv4KS+4KSv4KS+4KSa4KWAIOCkl+CksOCknCDgpIbgpLngpYciCisKKyM6IHNyYy9tYWluLmM6MzQ4CisjLCBjLWZvcm1hdAorbXNnaWQgIm51bGwgcGFja2FnZSBuYW1lIGluIC0taWdub3JlLWRlcGVuZHMgY29tbWEtc2VwYXJhdGVkIGxpc3QgYCUuMjUwcyciCittc2dzdHIgIm51bGwv4KSo4KSyIOCkquClheCkleClh+CknCDgpKjgpL7gpLUgLS3gpIfgpJfgpY3gpKjgpYvgpLAt4KSh4KS/4KSq4KWH4KSo4KWN4KSh4KS4IOCkleClieCkruCkvi3gpLjgpYfgpKrgpLDgpYfgpJ/gpYfgpKEgYCUuMjUwcycg4KS44KWB4KSa4KWA4KSu4KSn4KS/4KSyIgorCisjOiBzcmMvbWFpbi5jOjM1NAorIywgYy1mb3JtYXQKK21zZ2lkICItLWlnbm9yZS1kZXBlbmRzIHJlcXVpcmVzIGEgbGVnYWwgcGFja2FnZSBuYW1lLiBgJS4yNTBzJyBpcyBub3Q7ICVzIgorbXNnc3RyICItLeCkh+Ckl+CljeCkqOClieCksC3gpKHgpL/gpKrgpYfgpKjgpY3gpKHgpLjgpLLgpL4gIOCkleCkvuCkr+CkpuClh+CktuClgOCksCDgpKrgpYXgpJXgpYfgpJwg4KSo4KS+4KS1IOCkhuCkteCktuCljeCkr+CklSDgpIbgpLngpYcuIGAlLjI1MHMnIOCkueClhyDgpKjgpL7gpLngpYA7ICVzIgorCisjOiBzcmMvbWFpbi5jOjM3MSBzcmMvbWFpbi5jOjM4MSBzcmMvbWFpbi5jOjY0OSBkcGtnLXNwbGl0L21haW4uYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBpbnRlZ2VyIGZvciAtLSVzOiBgJS4yNTBzJyIKK21zZ3N0ciAiLS0lc+CkuOCkvuCkoOClgCDgpIXgpK/gpYvgpJfgpY3gpK8g4KSq4KWC4KSw4KWN4KSj4KS+4KSC4KSVIDogYCUuMjUwcyciCisKKyM6IHNyYy9tYWluLmM6NDM4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGV4ZWN1dGluZyBob29rICclcycsIGV4aXQgY29kZSAlZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjQ2NQorbXNnaWQgInN0YXR1cyBsb2dnZXIiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzo0ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzIGZvcmNpbmcgb3B0aW9ucyAtIGNvbnRyb2wgYmVoYXZpb3VyIHdoZW4gcHJvYmxlbXMgZm91bmQ6XG4iCisiICB3YXJuIGJ1dCBjb250aW51ZTogIC0tZm9yY2UtPHRoaW5nPiw8dGhpbmc+LC4uLlxuIgorIiAgc3RvcCB3aXRoIGVycm9yOiAgICAtLXJlZnVzZS08dGhpbmc+LDx0aGluZz4sLi4uIHwgLS1uby1mb3JjZS08dGhpbmc+LC4uLlxuIgorIiBGb3JjaW5nIHRoaW5nczpcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjQ5MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiV0FSTklORyAtIHVzZSBvZiBvcHRpb25zIG1hcmtlZCBbIV0gY2FuIHNlcmlvdXNseSBkYW1hZ2UgeW91ciBpbnN0YWxsYXRpb24uXG4iCisiRm9yY2luZyBvcHRpb25zIG1hcmtlZCBbKl0gYXJlIGVuYWJsZWQgYnkgZGVmYXVsdC5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjUwNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGZvcmNlL3JlZnVzZSBvcHRpb24gYCUuKnMnIgorbXNnc3RyICIg4KSF4KSc4KWN4KSe4KS+4KSkIOCkq+Cli+CksOCljeCkuC/gpLDgpL/gpKvgpY3gpK/gpYHgpJwg4KSq4KSw4KWN4KSv4KS+4KSvIGAlLipzJyIKKworIzogc3JjL21haW4uYzo1MTMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIm9ic29sZXRlIGZvcmNlL3JlZnVzZSBvcHRpb24gJyVzJ1xuIgorbXNnc3RyICLgpKTgpL7gpJXgpL/gpKY6IOCkheCkquCljeCksOCkmuCksuCkv+CkpCDgpKvgpYvgpLDgpY3gpLgv4KSw4KS/4KSr4KWN4KSv4KWB4KScIOCkquCksOCljeCkr+CkvuCkryBgJS4qcydcbiIKKworIzogc3JjL21haW4uYzo2NDMKK21zZ2lkICItLWNvbW1hbmQtZmQgdGFrZXMgb25lIGFyZ3VtZW50LCBub3QgemVybyIKK21zZ3N0ciAiLS3gpJXgpK7gpL7gpILgpKEt4KSP4KSr4KSh4KS/IOCkj+CklSDgpIbgpLDgpY3gpJfgpY3gpK/gpYHgpK7gpYfgpKjgpY3gpJ8v4KSq4KSw4KWN4KSv4KS+4KSvIOCkmOClh+CkpOClhywg4KS24KWC4KSo4KWN4KSvIOCkqOCkvuCkueClgCIKKworIzogc3JjL21haW4uYzo2NDUKK21zZ2lkICItLWNvbW1hbmQtZmQgb25seSB0YWtlcyBvbmUgYXJndW1lbnQiCittc2dzdHIgIi0t4KSV4KSu4KS+4KSC4KShLeCkj+Ckq+CkoeCkvyDgpKvgpJXgpY3gpKQg4KSP4KSVIOCkhuCksOCljeCkl+CljeCkr+ClgeCkruClh+CkqOCljeCkny/gpKrgpLDgpY3gpK/gpL7gpK8g4KSY4KWH4KSk4KWHIgorCisjOiBzcmMvbWFpbi5jOjY1MQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBvcGVuIGAlaScgZm9yIHN0cmVhbSIKK21zZ3N0ciAi4KS44KWN4KSf4KWN4KSw4KWA4KSu4KS44KS+4KSg4KWAIGAlaScg4KSJ4KSY4KSh4KWCIOCktuCkleCkpCDgpKjgpL7gpLngpYAiCisKKyM6IHNyYy9tYWluLmM6Njc2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW9mIGJlZm9yZSBlbmQgb2YgbGluZSAlZCIKK21zZ3N0ciAiJWQg4KST4KSz4KWA4KSa4KWN4KSv4KS+IOCktuClh+CkteCkn+CkvuCkmuCljeCkr+CkviDgpIXgpJfgpYvgpKbgpLAg4KSF4KSo4KSq4KWH4KSV4KWN4KS34KS/4KSkIOCkh+Ckk+Ckj+Ckqy/gpKvgpL7gpIfgpLLgpJrgpL4g4KS24KWH4KS14KSfIgorCisjOiBzcmMvbWFpbi5jOjcxOSBzcmMvbWFpbi5jOjc0MSBzcmMvcXVlcnljbWQuYzo2OTIgc3JjL3N0YXRjbWQuYzozNzkKKyM6IGRwa2ctZGViL21haW4uYzoyMDEgZHBrZy1zcGxpdC9tYWluLmM6MTYzCittc2dpZCAibmVlZCBhbiBhY3Rpb24gb3B0aW9uIgorbXNnc3RyICLgpJXgpY3gpLDgpL/gpK/gpYfgpJrgpY3gpK/gpL4g4KSq4KSw4KWN4KSv4KS+4KSv4KS+4KSa4KWAIOCkhuCkteCktuCljeCkr+CkleCljeCkpOCkviDgpIbgpLngpYciCisKKyM6IHNyYy9wYWNrYWdlcy5jOjExMworbXNnaWQgIiIKKyJ5b3UgbXVzdCBzcGVjaWZ5IHBhY2thZ2VzIGJ5IHRoZWlyIG93biBuYW1lcywgbm90IGJ5IHF1b3RpbmcgdGhlIG5hbWVzIG9mICIKKyJ0aGUgZmlsZXMgdGhleSBjb21lIGluIgorbXNnc3RyICIiCisi4KSk4KWB4KSu4KWN4KS54KWAIOCkquClheCkleClh+CknOClh+CkuOCkmuCkviDgpIngpLLgpY3gpLLgpYfgpJYg4KSk4KWN4KSv4KS+4KSC4KSa4KWN4KSv4KS+IOCkuOCljeCkteCkpOCkg+CkmuCljeCkr+CkviDgpKjgpL7gpLXgpL7gpKjgpYfgpJog4KSV4KSw4KS+LCDgpKTgpYAg4KSc4KWN4KSv4KS+IOCkq+CkvuCkh+CksuCkruCkp+CljeCkr+ClhyDgpIbgpLngpYfgpKTgpKTgpY3gpK/gpL7gpILgpJrgpYAgIgorIuCkheCkteCkpOCksOCko+CkmuCkv+CkqOCljeCkueCkvuCkguCkpCDgpKjgpL7gpLXgpYcg4KSm4KWH4KSKIOCkqOCkleCkviIKKworIzogc3JjL3BhY2thZ2VzLmM6MTMzCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgLS1wZW5kaW5nIGRvZXMgbm90IHRha2UgYW55IG5vbi1vcHRpb24gYXJndW1lbnRzIgorbXNnc3RyICItLSVzIC0t4KSq4KWH4KSo4KWN4KSh4KS/4KSC4KSXIOCkleCli+Cko+CkpOCkv+CkueClgCDgpIXgpKrgpLDgpY3gpK/gpL7gpK/gpYAg4KSG4KSw4KWN4KSX4KWN4KSv4KWB4KSu4KWH4KSo4KWN4KSfIOCkmOClh+CkpCDgpKjgpL7gpLngpYAiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjEzOCBzcmMvcXVlcnljbWQuYzozNzUgc3JjL3F1ZXJ5Y21kLmM6NTY1CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYXQgbGVhc3Qgb25lIHBhY2thZ2UgbmFtZSBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyDgpJXgpK7gpL/gpKQg4KSV4KSu4KWAIOCkj+CkleCkviDgpKrgpYXgpJXgpYfgpJzgpJrgpY3gpK/gpL4g4KSo4KS+4KS14KS+4KSa4KWN4KSv4KS+IOCkhuCksOCljeCkl+CljeCkr+ClgeCkruClh+CkqOCljeCkn+CkmuClgC/gpKrgpLDgpY3gpK/gpL7gpK/gpYDgpJrgpYAg4KSG4KS14KS24KSV4KWN4KSv4KSk4KS+IOCkhuCkueClhyIKKworIzogc3JjL3BhY2thZ2VzLmM6MTc5CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgJXMgbGlzdGVkIG1vcmUgdGhhbiBvbmNlLCBvbmx5IHByb2Nlc3Npbmcgb25jZS5cbiIKK21zZ3N0ciAi4KSq4KWF4KSV4KWH4KScICVzIOCkj+CkleCkvuCkquClh+CkleCljeCkt+CkviDgpJzgpL7gpLjgpY3gpKQg4KS14KWH4KSz4KS+IOCkuOClgeCkmuCkv+CkpCDgpJXgpYfgpLLgpYcg4KSG4KS54KWHLCDgpKrgpKMg4KSk4KWN4KSv4KS+4KS14KSwIOCkj+CkleCkpuCkvuCkmiDgpKrgpY3gpLDgpJXgpY3gpLDgpL/gpK/gpL4g4KS54KWL4KSk4KWHLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzoxODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk1vcmUgdGhhbiBvbmUgY29weSBvZiBwYWNrYWdlICVzIGhhcyBiZWVuIHVucGFja2VkXG4iCisiIGluIHRoaXMgcnVuICEgIE9ubHkgY29uZmlndXJpbmcgaXQgb25jZS5cbiIKK21zZ3N0ciAiIgorIuCkj+CkleCkvuCkquClh+CkleCljeCkt+CkviDgpJzgpL7gpLjgpY3gpKQgJXMg4KSq4KWF4KSV4KWH4KSc4KWH4KS44KSa4KWAIOCkquCljeCksOCkpCDgpK/gpL4g4KSw4KSo4KSu4KSn4KWN4KSv4KWHIOCkheCkqOCkquClheCklSDgpJXgpYfgpLLgpYAg4KSG4KS54KWHICEgXG4iCisi4KSr4KSV4KWN4KSkIOCkj+CkleCkpuCkvuCkmiDgpJzgpYHgpLPgpLXgpKPgpYAg4KSV4KSw4KWC4KSoLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzoyMzIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJwYWNrYWdlICUuMjUwcyBpcyBub3QgcmVhZHkgZm9yIHRyaWdnZXIgcHJvY2Vzc2luZ1xuIgorIiAoY3VycmVudCBzdGF0dXMgYCUuMjUwcycgd2l0aCBubyBwZW5kaW5nIHRyaWdnZXJzKSIKK21zZ3N0ciAiIgorIuCkquClheCkleClh+CknCAlLjI1MHMg4KS54KWHIOCknOClgeCks+CkteCko+ClgOCkuOCkvuCkoOClgCDgpKTgpK/gpL7gpLAg4KSo4KS+4KS54KWAXG4iCisi4KSc4KWB4KSz4KS14KSj4KWAIOCktuCkleCljeCkryDgpKjgpL7gpLngpYAgKOCkuOCkp+CljeCkr+CkvuCkmuClgCDgpLjgpY3gpKXgpL/gpKTgpYAgYCUuMjUwcycpIgorCisjOiBzcmMvcGFja2FnZXMuYzozMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIHdoaWNoIHByb3ZpZGVzICVzIGlzIHRvIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiAlcyDgpKrgpYXgpJXgpYfgpJwg4KSc4KWHICVzIOCkpuClh+CkpOClhyDgpKTgpYcg4KSV4KS+4KSi4KWB4KSoIOCkn+CkvuCkleCksuClhyDgpKrgpL7gpLngpL/gpJzgpYcuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjMzNworIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgaXMgdG8gYmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiICVzIOCkquClheCkleClh+CknCDgpJXgpL7gpKLgpKPgpY3gpK/gpL7gpKQg4KSv4KS+4KS14KWHLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzozNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBWZXJzaW9uIG9mICVzIG9uIHN5c3RlbSBpcyAlcy5cbiIKK21zZ3N0ciAiICVz4KSa4KWAIOCkuOCkv+CkuOCljeCkn+CkruCkteCksC/gpLjgpILgpJfgpKPgpJXgpL7gpLXgpLAgJXMg4KSG4KS14KWD4KSk4KWN4KSk4KWAIOCkhuCkueClhy5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6Mzc2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgd2hpY2ggcHJvdmlkZXMgJXMgYXdhaXRzIHRyaWdnZXIgcHJvY2Vzc2luZy5cbiIKK21zZ3N0ciAiICVzIOCkquClheCkleClh+CknCDgpJzgpYcgJXMg4KSm4KWH4KSk4KWHIOCkpOClhyDgpJXgpL7gpKLgpYHgpKgg4KSf4KS+4KSV4KSy4KWHIOCkquCkvuCkueCkv+CknOClhy5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MzgwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgYXdhaXRzIHRyaWdnZXIgcHJvY2Vzc2luZy5cbiIKK21zZ3N0ciAiICVzIOCkquClheCkleClh+CknCDgpJXgpL7gpKLgpKPgpY3gpK/gpL7gpKQg4KSv4KS+4KS14KWHLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogYWxzbyBjb25maWd1cmluZyBgJXMnIChyZXF1aXJlZCBieSBgJXMnKVxuIgorbXNnc3RyICLgpKHgpL/gpKrgpL/gpJXgpYfgpJzgpYA6IGAlcyfgpJrgpYAg4KSc4KWB4KSz4KS14KSj4KWAIOCkleClh+CksuClgCDgpJzgpL7gpKQg4KSG4KS54KWHIChgJXMn4KS44KS+4KSg4KWAIOCkhuCkteCktuCljeCkr+CklSDgpIbgpLngpYcpXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQxOAorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgd2hpY2ggcHJvdmlkZXMgJXMgaXMgbm90IGNvbmZpZ3VyZWQgeWV0LlxuIgorbXNnc3RyICIgICVzIOCkquClheCkleClh+CknCDgpJzgpYcgJXMg4KSm4KWH4KSk4KWHIOCkpOCljeCkr+CkvuCkmuClgCDgpJzgpYHgpLPgpLXgpKPgpYAg4KSF4KSm4KWN4KSv4KS+4KSqIOCkleClh+CksuClh+CksuClgCDgpKjgpL7gpLngpYAuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQyMQorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgaXMgbm90IGNvbmZpZ3VyZWQgeWV0LlxuIgorbXNnc3RyICIgICVzIOCkquClheCkleClh+CknOCkmuClgCDgpJzgpYHgpLPgpLXgpKPgpYAg4KSF4KSm4KWN4KSv4KS+4KSqIOCkleClh+CksuClh+CksuClgCDgpKjgpL7gpLngpYAuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQzMgorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgd2hpY2ggcHJvdmlkZXMgJXMgaXMgbm90IGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiICAlcyDgpKrgpYXgpJXgpYfgpJwg4KSc4KWHICVzIOCkpuClh+CkpOClhyDgpKTgpY3gpK/gpL7gpJrgpYAg4KS44KWN4KSl4KS+4KSq4KSo4KS+IOCkleClh+CksuClh+CksuClgCDgpKjgpL7gpLngpYAuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQzNQorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgaXMgbm90IGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiICAlcyDgpKrgpYXgpJXgpYfgpJzgpJrgpYAg4KS44KWN4KSl4KS+4KSq4KSo4KS+IOCkleClh+CksuClh+CksuClgCDgpKjgpL7gpLngpYAuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQ3MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiICVzICglcykgYnJlYWtzICVzIGFuZCBpcyAlcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMg4KS54KWHICUuMjUwcyDgpKrgpYHgpLDgpLXgpKTgpL7gpKQg4KSG4KSj4KS/IOCkpOClhyAlcyDgpIbgpLngpYcuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQ3OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiICAlcyAoJXMpIHByb3ZpZGVzICVzLlxuIgorbXNnc3RyICIlcyAo4KSJ4KSq4KSq4KWN4KSw4KSV4KWN4KSw4KS/4KSv4KS+KTogJXNcbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDgyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIgIFZlcnNpb24gb2YgJXMgdG8gYmUgY29uZmlndXJlZCBpcyAlcy5cbiIKK21zZ3N0ciAiICVz4KSa4KWAIOCkuOCkv+CkuOCljeCkn+CkruCkteCksC/gpLjgpILgpJfgpKPgpJXgpL7gpLXgpLAgJXMg4KSG4KS14KWD4KSk4KWN4KSk4KWAIOCkhuCkueClhy5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NTk2Cittc2dpZCAiIGRlcGVuZHMgb24gIgorbXNnc3RyICIg4KSa4KWN4KSv4KS+4KS14KSwIOCkheCkteCksuCkguCkrOClgeCkqCAiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjYwMgorbXNnaWQgIjsgaG93ZXZlcjpcbiIKK21zZ3N0ciAiOyDgpKTgpKXgpL7gpKrgpYA6XG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiLi4uLyVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgZW5zdXJpbmcgYCUuMjUwcycgZG9lc24ndCBleGlzdCIKK21zZ3N0ciAiYCUuMjUwcyfgpJrgpYAg4KSW4KS+4KSk4KWN4KSw4KWAIOCkleCksOCko+CkvuCksOCkviDgpKbgpYvgpLcg4KSF4KS44KWN4KSk4KS/4KSk4KWN4KS14KS+4KSkIOCkqOCkvuCkueClgCIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5OQorbXNnaWQgInNwbGl0IHBhY2thZ2UgcmVhc3NlbWJseSIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEwOAorbXNnaWQgInJlYXNzZW1ibGVkIHBhY2thZ2UgZmlsZSIKK21zZ3N0ciAi4KSq4KWF4KSV4KWH4KScIOCkq+CkvuCkh+CksiDgpKrgpYHgpKjgpY3gpLngpIMg4KSP4KSV4KSk4KWN4KSwIOCkleClh+CksuClgCIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiQXV0aGVudGljYXRpbmcgJXMgLi4uXG4iCittc2dzdHIgIiVz4KSa4KS+IOCkluCksOClh+CkquCko+CkviDgpLjgpL/gpKbgpY3gpKcg4KSV4KSw4KS/4KSkIOCkhuCkueClhy4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEzOQorbXNnaWQgInBhY2thZ2Ugc2lnbmF0dXJlIHZlcmlmaWNhdGlvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE0NgorIywgYy1mb3JtYXQKK21zZ2lkICJWZXJpZmljYXRpb24gb24gcGFja2FnZSAlcyBmYWlsZWQhIgorbXNnc3RyICIlcyDgpKrgpYXgpJXgpYfgpJzgpJrgpYAg4KSq4KSh4KSk4KS+4KSz4KSj4KWAIOCkheCkr+CktuCkuOCljeCkteClgCIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlZlcmlmaWNhdGlvbiBvbiBwYWNrYWdlICVzIGZhaWxlZCxcbiIKKyJidXQgaW5zdGFsbGluZyBhbnl3YXkgYXMgeW91IHJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiIgorIiVzIOCkquClheCkleClh+CknOCkmuClgCDgpKrgpKHgpKTgpL7gpLPgpKPgpYAg4KSF4KSv4KS24KS44KWN4KS14KWALFxuIgorIuCkquCksOCkguCkpOClgSDgpKTgpYHgpK7gpJrgpY3gpK/gpL4g4KSu4KS+4KSX4KSj4KWAL+CkteCkv+CkqOCkguCkpOClgCDgpKjgpYHgpLjgpL7gpLAg4KS44KWN4KSl4KS+4KSq4KSo4KS+IOCkleCksOClgOCkpCDgpIbgpLngpYcuXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTUyCisjLCBjLWZvcm1hdAorbXNnaWQgInBhc3NlZFxuIgorbXNnc3RyICIg4KSu4KSC4KSc4KWC4KSwIOCkneCkvuCksuClh1xuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE2NSBkcGtnLWRlYi9pbmZvLmM6ODEKKyMsIGZ1enp5Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSB0ZW1wb3JhcnkgZGlyZWN0b3J5IgorbXNnc3RyICLgpIXgpLjgpY3gpKXgpL7gpK/gpYAg4KSo4KS/4KSw4KWN4KSm4KWH4KS24KS/4KSV4KS+4KSo4KS+4KS1IOCkrOCkqOCkteCkpOCkviDgpIbgpLLgpYcg4KSo4KS+4KS54KWAIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjIwNQorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlICVzIGhhcyB0b28gbWFueSBDb25mbGljdHMvUmVwbGFjZXMgcGFpcnMiCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyNDMKKyMsIGMtZm9ybWF0Cittc2dpZCAib2xkIHZlcnNpb24gb2YgcGFja2FnZSBoYXMgb3Zlcmx5LWxvbmcgaW5mbyBmaWxlIG5hbWUgc3RhcnRpbmcgYCUuMjUwcyciCittc2dzdHIgIuCknOClgeCkqOCljeCln+CkviDgpKrgpYXgpJXgpYfgpJzgpJrgpY3gpK/gpL4g4KSG4KS14KWD4KSk4KWN4KSk4KWA4KSkIGAlLjI1MHMn4KSo4KWAIOCkuOClgeCksOClgeCkteCkvuCkpCDgpLngpYvgpKPgpL7gpLDgpYcg4KSr4KS+4KSw4KSaIOCkruCli+CkoOClhyDgpK7gpL7gpLngpL/gpKTgpYAg4KSr4KS+4KSH4KSy4KSa4KWHIOCkqOCkvuCktSDgpIbgpLngpYciCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MjgxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgb2Jzb2xldGUgaW5mbyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLgpIXgpKrgpY3gpLDgpJrgpLLgpL/gpKQg4KSu4KS+4KS54KS/4KSk4KWAIOCkq+CkvuCkh+CksiBgJS4yNTBzJyDgpJXgpL7gpKLgpKPgpY3gpK/gpL7gpLgg4KSF4KS24KSV4KWN4KSvIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjI4NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCAoc3VwcG9zZWQpIG5ldyBpbmZvIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImAlLjI1MHMnIOCkqOCkteCkv+CkqCDgpK7gpL7gpLngpL/gpKTgpYDgpJrgpY3gpK/gpL4g4KSr4KS+4KSH4KSy4KSa4KWAIOCkuOCljeCkpeCkvuCkquCkqOCkvijgpJfgpYPgpLngpYDgpKQg4KSn4KSw4KSy4KWH4KSy4KWHKSDgpJXgpLDgpKPgpY3gpK/gpL7gpLgg4KSF4KS24KSV4KWN4KSvIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjI5NgorbXNnaWQgInVuYWJsZSB0byBvcGVuIHRlbXAgY29udHJvbCBkaXJlY3RvcnkiCittc2dzdHIgIuCkn+Clh+CkruCljeCkqi/gpKTgpL7gpKTgpY3gpKrgpYHgpLDgpY3gpKTgpYAg4KSo4KS/4KSv4KSC4KSk4KWN4KSw4KSjIOCkoeCkv+CksOClh+CkleCljeCkn+CksOClgCDgpIngpJjgpKHgpKPgpY3gpK/gpL7gpLgg4KSF4KS24KSV4KWN4KSvICIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMDcKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBjb250YWlucyBvdmVybHktbG9uZyBjb250cm9sIGluZm8gZmlsZSBuYW1lIChzdGFydGluZyBgJS41MHMnKSIKK21zZ3N0ciAiKGAlLjUwcyfgpKjgpYAg4KS44KWB4KSw4KWB4KS14KS+4KSkIOCkueCli+Cko+CkvuCksOClhykg4KSr4KS+4KSw4KSaIOCkruCli+CkoOClhyDgpKjgpL/gpK/gpILgpKTgpY3gpLDgpKMg4KSu4KS+4KS54KS/4KSk4KWAIOCkq+CkvuCkh+CksiDgpKjgpL7gpLUg4KSq4KWF4KSV4KWH4KSc4KSu4KSn4KWN4KSv4KWHIOCkhuCkueClhyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBjb250cm9sIGluZm8gY29udGFpbmVkIGRpcmVjdG9yeSBgJS4yNTBzJyIKK21zZ3N0ciAiYCUuMjUwcycg4KSh4KS/4KSw4KWH4KSV4KWN4KSf4KSw4KWAIOCkquClheCkleClh+CknOCkmuCljeCkr+CkviDgpKjgpL/gpK/gpILgpKTgpY3gpLDgpKMg4KSu4KS+4KS54KS/4KSk4KWA4KSu4KSn4KWN4KSv4KWHIOCkuOCkruCkvuCkteCkv+Ckt+CljeCknyDgpIbgpLngpYciCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzE2CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgY29udHJvbCBpbmZvIHJtZGlyIG9mIGAlLjI1MHMnIGRpZG4ndCBzYXkgbm90IGEgZGlyIgorbXNnc3RyICIiCisi4KSq4KWF4KSV4KWH4KSc4KSa4KWAIOCkqOCkv+Ckr+CkguCkpOCljeCksOCkoyDgpK7gpL7gpLngpL/gpKTgpYAgYCUuMjUwcyfgpJrgpYAg4KSG4KSw4KSP4KSu4KSh4KS/4KSG4KSv4KSG4KSwL3JtZGlyIOCkoeCkv+CkhuCkr+CkhuCksCDgpKjgpL7gpLngpYAg4KSF4KS44KWHIOCkruCljeCkueCkguCkn+CksuClhyDgpKjgpL7gpLngpYAiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzI2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlICVzIGNvbnRhaW5lZCBsaXN0IGFzIGluZm8gZmlsZSIKK21zZ3N0ciAi4KSh4KS/4KSq4KS/4KSV4KWH4KSc4KWAOiDgpKTgpL7gpJXgpL/gpKYgLSDgpKrgpYXgpJXgpYfgpJwgJXPgpK7gpKfgpY3gpK/gpYcg4KSu4KS+4KS54KS/4KSk4KWAIOCkq+CkvuCkh+CksuCkmuClgCDgpLjgpYHgpJrgpYAg4KS44KSu4KS+4KS14KS/4KS34KWN4KSfIOCkhuCkueClhyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IGluZm8gZmlsZSBgJS4yNTBzJyBhcyBgJS4yNTBzJyIKK21zZ3N0ciAi4KSo4KS14KWAIOCkruCkvuCkueCkv+CkpOClgCDgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KS54KS/4KSa4KWAIGAlLjI1MHMnIOCkruCljeCkueCko+ClguCkqCDgpLjgpY3gpKXgpL7gpKrgpKjgpL4g4KSV4KSw4KSj4KWN4KSv4KS+4KS4IOCkheCkuOCkruCksOCljeCkpSDgpIbgpLngpYciCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzQ5IHNyYy9yZW1vdmUuYzoxOTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSBjb250cm9sIGluZm8gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4KSo4KS/4KSv4KSC4KSk4KWN4KSw4KSjIOCkruCkvuCkueCkv+CkpOClgCDgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KSV4KS+4KSi4KWC4KSoIOCkn+CkvuCkleCko+CljeCkr+CkvuCkuCDgpIXgpLjgpK7gpLDgpY3gpKUg4KSG4KS54KWHIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjQxMQorbXNnaWQgImNhbm5vdCBhY2Nlc3MgYXJjaGl2ZSIKK21zZ3N0ciAi4KSG4KSw4KWN4KSV4KS+4KSH4KS14KWN4KS54KSu4KSn4KWN4KSv4KWHIOCkquCljeCksOCkteClh+CktiDgpJXgpLDgpKPgpYcg4KSF4KS24KSV4KWN4KSvIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjQzMworIywgZnV6enkKKyN8IG1zZ2lkICJjb250cm9sIGluZm9ybWF0aW9uIGxlbmd0aCIKK21zZ2lkICJwYWNrYWdlIGNvbnRyb2wgaW5mb3JtYXRpb24gZXh0cmFjdGlvbiIKK21zZ3N0ciAi4KSo4KS/4KSv4KSC4KSk4KWN4KSw4KSjIOCkruCkvuCkueCkv+CkpOClgCDgpLLgpL7gpILgpKzgpYAiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDYwCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlY29yZGVkIGluZm8gYWJvdXQgJXMgZnJvbSAlcy5cbiIKK21zZ3N0ciAiJXMg4KSu4KSn4KWB4KSoICVz4KSa4KWN4KSv4KS+IOCkruCkvuCkueCkv+CkpOClgOCkmuClgCDgpKjgpYvgpILgpKYg4KSV4KWH4KSy4KWALlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjQ2OAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGFyY2hpdGVjdHVyZSAoJXMpIGRvZXMgbm90IG1hdGNoIHN5c3RlbSAoJXMpIgorbXNnc3RyICIoJXMpIOCkquClheCkleClh+CknCDgpIbgpLDgpY3gpJXgpL/gpJ/gpYfgpJXgpY3gpJrgpLAgKCVzKSDgpKrgpY3gpLDgpKPgpL7gpLLgpYAg4KSs4KSw4KWL4KSs4KSwIOCknOClgeCks+CkpCDgpKjgpL7gpLngpYAiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTIzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogcmVnYXJkaW5nICVzIGNvbnRhaW5pbmcgJXMsIHByZS1kZXBlbmRlbmN5IHByb2JsZW06XG4iCisiJXMiCittc2dzdHIgIuCkoeCkv+CkquCkv+CkleClh+CknOClgDogJXMg4KSs4KSm4KWN4KSm4KSyIOCknOCljeCkr+CkvuCkpCAlcyDgpIbgpLngpYcsIOCkquCljeCksOCkvy3gpKHgpL/gpKrgpYfgpKjgpY3gpKHgpKjgpY3gpLjgpYAg4KS44KSu4KS44KWN4KSv4KS+OlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjUyNgorIywgYy1mb3JtYXQKK21zZ2lkICJwcmUtZGVwZW5kZW5jeSBwcm9ibGVtIC0gbm90IGluc3RhbGxpbmcgJS4yNTBzIgorbXNnc3RyICLgpKrgpY3gpLDgpL8t4KSh4KS/4KSq4KWH4KSo4KWN4KSh4KSo4KWN4KS44KWAIOCkuOCkruCkuOCljeCkr+CkviAtICUuMjUwcyDgpLjgpY3gpKXgpL7gpKrgpKjgpL4g4KSV4KSw4KSkIOCkqOCkvuCkueClgCIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1MjcKKyMsIGZ1enp5Cittc2dpZCAiaWdub3JpbmcgcHJlLWRlcGVuZGVuY3kgcHJvYmxlbSEiCittc2dzdHIgIuCkoeCkv+CkquCkv+CkleClh+CknOClgDog4KSk4KS+4KSV4KS/4KSmIC0g4KSq4KWN4KSw4KS/LeCkoeCkv+CkquClh+CkqOCljeCkoeCkqOCljeCkuOClgCDgpLjgpK7gpLjgpY3gpK/gpL7gpILgpJXgpKHgpYcg4KSm4KWB4KSw4KWN4KSy4KSV4KWN4KS3IOCkleCksOCkpCDgpIbgpLngpYcgIVxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjU0MworIywgYy1mb3JtYXQKK21zZ2lkICJQcmVwYXJpbmcgdG8gcmVwbGFjZSAlcyAlcyAodXNpbmcgJXMpIC4uLlxuIgorbXNnc3RyICIlcyAlcyDgpKzgpKbgpLLgpYAg4KSV4KSw4KSj4KWN4KSv4KS+4KSa4KWAIOCkpOCkr+CkvuCksOClgCDgpJXgpLDgpKQg4KSG4KS54KWHICglcyDgpIngpKrgpK/gpYvgpJfgpL7gpKQg4KSG4KSj4KS+KSAuLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiVW5wYWNraW5nICVzIChmcm9tICVzKSAuLi5cbiIKK21zZ3N0ciAiJXMg4KSF4KSo4KSq4KWF4KSVIOCkleCksOCkpCDgpIbgpLngpYcgKCVzIOCkruCkp+ClgeCkqCkgLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTgwCisjLCBjLWZvcm1hdAorbXNnaWQgIm5hbWUgb2YgY29uZmZpbGUgKHN0YXJ0aW5nIGAlLjI1MHMnKSBpcyB0b28gbG9uZyAoPiVkIGNoYXJhY3RlcnMpIgorbXNnc3RyICLgpJXgpYngpKjgpY3gpKvgpKvgpL7gpIfgpLLgpJrgpYcg4KSo4KS+4KS1IChgJS4yNTBzJyDgpKrgpL7gpLjgpYHgpKgg4KS44KWB4KSw4KS14KS+4KSkKSDgpJbgpYLgpKog4KSu4KWL4KSg4KWHIOCkhuCkueClhyAoPiVkIOCkheCkleCljeCkt+CksOClhykiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjMzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDcxCisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWQgZXJyb3IgaW4gJS4yNTBzIgorbXNnc3RyICIlLjI1MHPgpK7gpKfgpY3gpK/gpYcg4KS14KS+4KSa4KSo4KS+4KSa4KWAIOCkuOCkruCkuOCljeCkr+CkviIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyAlLjI1MHMiCittc2dzdHIgIuCkuOCkruCkuOCljeCkr+CkviAlLjI1MHMg4KSs4KSC4KSmIOCkleCksOCkpCDgpIbgpLngpYciCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjM3CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHRyeWluZyB0byBvcGVuICUuMjUwcyIKK21zZ3N0ciAi4KS44KSu4KS44KWN4KSv4KS+ICUuMjUwcyDgpIngpJjgpKHgpKPgpY3gpK/gpL7gpJrgpL4g4KSq4KWN4KSw4KSv4KSk4KWN4KSoIOCkleCksOCkpCDgpIbgpLngpYciCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6Njc4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJEZS1jb25maWd1cmluZyAlcywgdG8gYWxsb3cgcmVtb3ZhbCBvZiAlcyAuLi5cbiIKK21zZ3N0ciAiJXPgpJrgpYAg4KSF4KSc4KWB4KSz4KS14KSj4KWAIOCkleCksOCkpCDgpIbgpLngpYcsIOCknOClh+Cko+ClhyDgpJXgpLDgpYHgpKgg4KSG4KSq4KSjICVzIOCkleCkvuCkouClgeCkqCDgpJ/gpL7gpJXgpYIg4KS24KSV4KSk4KWLLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjgxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJEZS1jb25maWd1cmluZyAlcyAuLi5cbiIKK21zZ3N0ciAiJXMg4KSV4KS+4KSi4KWC4KSoIOCkn+CkvuCkleCkpCDgpIbgpLngpYcuLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo3NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiVW5wYWNraW5nIHJlcGxhY2VtZW50ICUuMjUwcyAuLi5cbiIKK21zZ3N0ciAiJS4yNTBz4KSa4KWAIOCkheCkpuCksuCkvuCkrOCkpuCksuClgCDgpIXgpKjgpKrgpYXgpJUg4KSV4KSw4KSkIOCkhuCkueClhyAuLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NDAKK21zZ2lkICJwYWNrYWdlIGZpbGVzeXN0ZW0gYXJjaGl2ZSBleHRyYWN0aW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6ODU0Cittc2dpZCAiZXJyb3IgcmVhZGluZyBkcGtnLWRlYiB0YXIgb3V0cHV0IgorbXNnc3RyICLgpKHgpL/gpKrgpL/gpJXgpYfgpJzgpYAt4KSh4KWH4KSsIOCkn+CkvuCksCDgpIbgpIngpJ/gpY3gpKrgpYHgpJ8v4KSJ4KSk4KWN4KSq4KS+4KSm4KSoIOCkteCkvuCkmuCkqOCkvuCkmuClgCDgpLjgpK7gpLjgpY3gpK/gpL4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6ODU2Cittc2dpZCAiY29ycnVwdGVkIGZpbGVzeXN0ZW0gdGFyZmlsZSAtIGNvcnJ1cHRlZCBwYWNrYWdlIGFyY2hpdmUiCittc2dzdHIgIuCkpuClgeCkt+Ckv+CkpCDgpKvgpL7gpIfgpLLgpKrgpY3gpLDgpKPgpL7gpLLgpYAg4KSf4KS+4KSw4KSr4KS+4KSH4KSyIC0g4KSm4KWB4KS34KS/4KSkIOCkhuCksOCljeCkleCkvuCkh+CkteCljeCkuSDgpKrgpYXgpJXgpYfgpJwiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6ODU5Cittc2dpZCAiZHBrZy1kZWI6IHphcCBwb3NzaWJsZSB0cmFpbGluZyB6ZXJvcyIKK21zZ3N0ciAi4KSh4KS/4KSq4KS/4KSV4KWH4KSc4KWALeCkoeClh+CkrDog4KS24KSV4KWN4KSvIOCkheCkuOCksuClh+CksuClgCDgpK7gpL7gpJfgpL/gpLIg4KS24KWC4KSo4KWN4KSv4KWHIOCkneClheCkqiDgpJXgpLDgpL4vIOCkleCkvuCkouClguCkqCDgpJ/gpL7gpJXgpL4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTE5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgc3RhdCBvbGQgZmlsZSAnJS4yNTBzJyBzbyBub3QgZGVsZXRpbmcgaXQ6ICVzIgorbXNnc3RyICIiCisi4KSh4KS/4KSq4KS/4KSV4KWH4KSc4KWAOiDgpKTgpL7gpJXgpL/gpKYgLSDgpJzgpYHgpKjgpYAgYCUuMjUwcycg4KSr4KS+4KSH4KSyIOCkuOCljeCkn+ClheCknyDgpJXgpLDgpKPgpY3gpK/gpL7gpLgg4KSF4KS24KSV4KWN4KSvIOCkruCljeCkueCko+ClgeCkqCDgpKTgpYAg4KSh4KS/4KSy4KS/4KSfIOCkleCksOCkpCDgpKjgpL7gpLngpYA6ICIKKyIlcyAiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTI1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGVsZXRlIG9sZCBkaXJlY3RvcnkgJyUuMjUwcyc6ICVzIgorbXNnc3RyICLgpKHgpL/gpKrgpL/gpJXgpYfgpJzgpYA6IOCkpOCkvuCkleCkv+CkpiAtIOCknOClgeCkqOClgCBgJS4yNTBzJyDgpKHgpL/gpLDgpYfgpJXgpY3gpJ/gpLDgpYAg4KSh4KS/4KSy4KS/4KSfIOCkleCksOCko+CljeCkr+CkvuCkuC/gpJXgpL7gpKLgpKPgpY3gpK/gpL7gpLgg4KSF4KS24KSV4KWN4KSvOiAlc1xuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjkyOAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAib2xkIGNvbmZmaWxlICclLjI1MHMnIHdhcyBhbiBlbXB0eSBkaXJlY3RvcnkgKGFuZCBoYXMgbm93IGJlZW4gZGVsZXRlZCkiCittc2dzdHIgIiIKKyLgpKHgpL/gpKrgpL/gpJXgpYfgpJzgpYA6IOCkpOCkvuCkleCkv+CkpiAtIOCknOClgeCkqOClgCBgJS4yNTBzJyDgpJXgpYngpKjgpY3gpKvgpKvgpL7gpIfgpLIg4KSw4KS/4KSV4KS+4KSu4KWAIOCkoeCkv+CksOClh+CkleCljeCkn+CksOClgCDgpLngpYvgpKTgpYAgKOCkhuCko+CkvyDgpKTgpYAg4KSG4KSk4KS+IOCkoeCkv+CksuCkv+CknyAiCisi4KSV4KSw4KSj4KWN4KSv4KS+4KSkIC/gpJXgpL7gpKLgpYLgpKgg4KSf4KS+4KSV4KSj4KWN4KSv4KS+4KSkIOCkhuCksuClgCDgpIbgpLngpYcpXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTc1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IG90aGVyIG5ldyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLgpKbgpYHgpLh+4KSv4KS+IOCkqOCkteCkv+CkqCBgJS4yNTBzIOCkq+CkvuCkh+CksuCkmuClhyDgpLjgpY3gpJ/gpYXgpJ8g4KSV4KSw4KSj4KWHIOCkheCktuCkleCljeCkryIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5ODYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJvbGQgZmlsZSAnJS4yNTBzJyBpcyB0aGUgc2FtZSBhcyBzZXZlcmFsIG5ldyBmaWxlcyEgKGJvdGggJyUuMjUwcycgYW5kICIKKyInJS4yNTBzJykiCittc2dzdHIgIiIKKyLgpKHgpL/gpKrgpL/gpJXgpYfgpJzgpYA6IOCkpOCkvuCkleCkv+CkpiAtIOCknOClgeCkqOClgCBgJS4yNTBzJyDgpKvgpL7gpIfgpLIg4KS54KWAIOCkheCkqOClh+CklSDgpKjgpLXgpL/gpKgg4KSr4KS+4KSH4KSy4KWA4KSC4KSq4KWN4KSw4KSu4KS+4KSj4KWHIOCkhuCkueClhyEgICjgpKbgpYvgpKjgpY3gpLngpYAgIgorIiUuMjUwcycg4KSG4KSj4KS/IGAlLjI1MHMnKSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxMDI1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2VjdXJlbHkgcmVtb3ZlIG9sZCBmaWxlICclLjI1MHMnOiAlcyIKK21zZ3N0ciAi4KSh4KS/4KSq4KS/4KSV4KWH4KSc4KWAOiDgpKTgpL7gpJXgpL/gpKYgLSDgpJzgpYHgpKjgpYAgYCUlLjI1MHMnIOCkq+CkvuCkh+CksiAlcyDgpJXgpLDgpKPgpY3gpK/gpL7gpLgg4KSF4KS24KSV4KWN4KSvIDogJSVzXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTIwNgorIywgYy1mb3JtYXQKK21zZ2lkICIoTm90aW5nIGRpc2FwcGVhcmFuY2Ugb2YgJXMsIHdoaWNoIGhhcyBiZWVuIGNvbXBsZXRlbHkgcmVwbGFjZWQuKVxuIgorbXNnc3RyICIo4KSo4KWL4KSC4KSmIOCkleCksOCkpCDgpIbgpLngpYcgJXMg4KSo4KS+4KS54KS/4KS44KWHIOCkneCkvuCksuClhyDgpIbgpLngpYcsIOCkpOClhyDgpKrgpYHgpLDgpY3gpKPgpKrgpKPgpYcg4KSs4KSm4KSy4KSy4KWHIOCkl+Clh+CksuClhyDgpIbgpLngpYfgpKQuKVxuIgorCisjLiBUUkFOU0xBVE9SUzogVGhpcyBpcyB0aGUgaGVhZGVyIHRoYXQgYXBwZWFycyBvbiAnZHBrZy1xdWVyeSAtbCcuIFRoZQorIy4gKiBzdHJpbmcgc2hvdWxkIHJlbWFpbiB1bmRlciA4MCBjaGFyYWN0ZXJzLiBUaGUgdXBwZXJjYXNlIGxldHRlcnMgaW4KKyMuICogdGhlIHN0YXRlIHZhbHVlcyBkZW5vdGUgdGhlIGFiYnJldmlhdGVkIGxldHRlciB0aGF0IHdpbGwgYXBwZWFyIG9uCisjLiAqIHRoZSBmaXJzdCB0aHJlZSBjb2x1bW5zLCB3aGljaCBzaG91bGQgaWRlYWxseSBtYXRjaCB0aGUgRW5nbGlzaCBvbmUKKyMuICogKGUuZy4gUmVtb3ZlIOKGkiBzdXBSaW1laXgpLCBzZWUgZHBrZy1xdWVyeSgxKSBmb3IgZnVydGhlciBkZXRhaWxzLiBUaGUKKyMuICogdHJhbnNsYXRlZCBtZXNzYWdlIGNhbiB1c2UgYWRkaXRpb25hbCBsaW5lcyBpZiBuZWVkZWQuCisjOiBzcmMvcXVlcnljbWQuYzoxNDkKKyMsIGZ1enp5Cittc2dpZCAiIgorIkRlc2lyZWQ9VW5rbm93bi9JbnN0YWxsL1JlbW92ZS9QdXJnZS9Ib2xkXG4iCisifCBTdGF0dXM9Tm90L0luc3QvQ29uZi1maWxlcy9VbnBhY2tlZC9oYWxGLWNvbmYvSGFsZi1pbnN0L3RyaWctYVdhaXQvVHJpZy0iCisicGVuZFxuIgorInwvIEVycj89KG5vbmUpL1JlaW5zdC1yZXF1aXJlZCAoU3RhdHVzLEVycjogdXBwZXJjYXNlPWJhZClcbiIKK21zZ3N0ciAiIgorIuCkoeCkv+CkneCkvuCkr+CksOCljeCkoT3gpIXgpKjgpKjgpYvgpKgv4KSH4KSo4KWN4KS44KWN4KSf4KWJ4KSyL+CksOCkv+CkruClgeCkteCljeCkuS/gpKrgpLDgpY3gpJwv4KS54KWL4KSy4KWN4KShXG4iCisifCDgpLjgpY3gpJ/gpYfgpJ/gpLg94KSo4KWJ4KSfL+Ckh+CkqOCljeCkuOCljeCkn+ClieCksuCljeCkoS/gpJXgpYngpKjgpY3gpKvgpL/gpJct4KSr4KS+4KSH4KSy4KWN4KS4L+CkheCkqOCkquClheCkleCljeCkoS/gpKvgpYfgpLLgpY3gpKEt4KSV4KWJ4KSo4KWN4KSr4KS/4KSXL+CkueCkvuCkqy3gpIfgpKjgpY3gpLjgpY3gpJ/gpYngpLLgpY3gpKFcbiIKKyJ8LyDgpI/gpLDgpY3gpLA/PSjgpKjgpKgpL+CkueCli+CksuCljeCkoS/gpLDgpL/gpIfgpKjgpY3gpLjgpY3gpJ8t4KSw4KS/4KSV4KWN4KS14KS+4KSv4KSw4KWN4KShL+Ckj+CkleCljeCkuD3gpKzgpYvgpKUt4KSq4KWN4KSw4KWJ4KSs4KWN4KSy4KWH4KSu4KWN4KS4ICjgpLjgpY3gpJ/gpYfgpJ/gpLgs4KSP4KSw4KWN4KSwOiDgpIXgpKrgpY3gpKrgpLDgpJXgpYfgpLg94KSs4KWF4KShKVxuIgorCisjOiBzcmMvcXVlcnljbWQuYzoxNTMKK21zZ2lkICJOYW1lIgorbXNnc3RyICLgpKjgpL7gpLUiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjE1MworbXNnaWQgIlZlcnNpb24iCittc2dzdHIgIuCkhuCkteClg+CkpOCljeCkpOClgCIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MTU0Cittc2dpZCAiRGVzY3JpcHRpb24iCittc2dzdHIgIuCkteCksOCljeCko+CkqCIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MjQ2IHNyYy9xdWVyeWNtZC5jOjUxMSBzcmMvc2VsZWN0LmM6NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiTm8gcGFja2FnZXMgZm91bmQgbWF0Y2hpbmcgJXMuXG4iCittc2dzdHIgIiVz4KS24KWAIOCknOClgeCks+Cko+CkvuCksOClgCDgpKrgpYXgpJXgpYfgpJzgpYfgpLgg4KSu4KS/4KSz4KS+4KSy4KWAIOCkqOCkvuCkueCkv+CkpFxuIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNzMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImRpdmVyc2lvbiBieSAlcyBmcm9tOiAlc1xuIgorbXNnc3RyICIlc+CkqOClgCDgpLXgpLPgpLXgpLLgpYcg4KSG4KS54KWHOiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNzUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImRpdmVyc2lvbiBieSAlcyB0bzogJXNcbiIKK21zZ3N0ciAiJXPgpKjgpYAg4KS14KSz4KS14KSy4KWHIOCkhuCkueClhzogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6Mjc4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJsb2NhbCBkaXZlcnNpb24gZnJvbTogJXNcbiIKK21zZ3N0ciAi4KS44KWN4KSl4KS+4KSo4KS/4KSVIOCkq+Clh+CksOCkvuCkq+CkvuCksC/gpKTgpKvgpL7gpLXgpKQiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI3OQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAibG9jYWwgZGl2ZXJzaW9uIHRvOiAlc1xuIgorbXNnc3RyICLgpLjgpY3gpKXgpL7gpKjgpL/gpJUg4KS14KSz4KS14KSkIOCkhuCkueClhzogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MzA5Cittc2dpZCAiLS1zZWFyY2ggbmVlZHMgYXQgbGVhc3Qgb25lIGZpbGUgbmFtZSBwYXR0ZXJuIGFyZ3VtZW50IgorbXNnc3RyICItLeCkuOCksOCljeCkmiDgpLjgpL7gpKDgpYAg4KSV4KSu4KWA4KSk4KSV4KSu4KWAIOCkj+CkleCkviDgpKvgpL7gpIfgpLLgpJrgpY3gpK/gpL4g4KSo4KS+4KS14KS+4KSa4KWN4KSv4KS+IOCkqOCkruClgeCkqOCkviDgpIbgpLXgpLbgpY3gpK/gpJUg4KSG4KS54KWHIgorCisjOiBzcmMvcXVlcnljbWQuYzozNTAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIk5vIHBhY2thZ2VzIGZvdW5kIG1hdGNoaW5nICVzLlxuIgorbXNnaWQgIiVzOiBubyBwYXRoIGZvdW5kIG1hdGNoaW5nIHBhdHRlcm4gJXMuXG4iCittc2dzdHIgIiVz4KS24KWAIOCknOClgeCks+Cko+CkvuCksOClgCDgpKrgpYXgpJXgpYfgpJzgpYfgpLgg4KSu4KS/4KSz4KS+4KSy4KWAIOCkqOCkvuCkueCkv+CkpFxuIgorCisjOiBzcmMvcXVlcnljbWQuYzozOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSBgJXMnIGlzIG5vdCBpbnN0YWxsZWQgYW5kIG5vIGluZm8gaXMgYXZhaWxhYmxlLlxuIgorbXNnc3RyICLgpKrgpYXgpJXgpYfgpJwgYCVzJyDgpJrgpYAg4KS44KWN4KSl4KS+4KSq4KSo4KS+IOCkleClh+CksuClh+CksuClgCDgpKjgpL7gpLngpYAg4KSG4KSj4KS/IOCkpOCljeCkr+CkvuCkrOCkpuCljeCkpuCksiDgpJXgpYvgpKPgpKTgpYDgpLngpYAg4KSu4KS+4KS54KS/4KSk4KWAIOCkieCkquCksuCkrOCljeCkpyDgpKjgpL7gpLngpYAuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQwMQorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlIGAlcycgaXMgbm90IGF2YWlsYWJsZS5cbiIKK21zZ3N0ciAi4KSq4KWF4KSV4KWH4KScIGAlcycg4KS54KWHIOCkieCkquCksuCkrOCljeCkpyDgpKjgpL7gpLngpYAuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQxMCBzcmMvcXVlcnljbWQuYzo1ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSBgJXMnIGlzIG5vdCBpbnN0YWxsZWQuXG4iCittc2dzdHIgIuCkquClheCkleClh+CknCBgJXMnIOCkmuClgCDgpLjgpY3gpKXgpL7gpKrgpKjgpL4g4KSV4KWH4KSy4KWH4KSy4KWAIOCkqOCkvuCkueClgFxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSBgJXMnIGRvZXMgbm90IGNvbnRhaW4gYW55IGZpbGVzICghKVxuIgorbXNnc3RyICLgpKrgpYXgpJXgpYfgpJwgYCVzJ+CkruCkp+CljeCkr+ClhyDgpJXgpYvgpKPgpKTgpYDgpLngpYAg4KSr4KS+4KSH4KSyIOCkqOCkvuCkueClgCAoISlcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDI1CisjLCBjLWZvcm1hdAorbXNnaWQgImxvY2FsbHkgZGl2ZXJ0ZWQgdG86ICVzXG4iCittc2dzdHIgIuCkuOCljeCkpeCkvuCkqOCkv+CklSDgpLXgpLPgpLXgpKQg4KSG4KS54KWHOiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MjgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgZGl2ZXJ0cyBvdGhlcnMgdG86ICVzXG4iCittc2dzdHIgIuCkquClheCkleClh+CknCDgpKbgpYHgpLh+4KSv4KWN4KSv4KS+4KSC4KSo4KS+IOCkteCks+CkteCkpCDgpIbgpLngpYc6ICVcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDMxCisjLCBjLWZvcm1hdAorbXNnaWQgImRpdmVydGVkIGJ5ICVzIHRvOiAlc1xuIgorbXNnc3RyICIlc+CkqOClgCDgpLXgpLPgpLXgpLLgpYcg4KSG4KS54KWHOiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0NTIKK21zZ2lkICIiCisiVXNlIGRwa2cgLS1pbmZvICg9IGRwa2ctZGViIC0taW5mbykgdG8gZXhhbWluZSBhcmNoaXZlIGZpbGVzLFxuIgorImFuZCBkcGtnIC0tY29udGVudHMgKD0gZHBrZy1kZWIgLS1jb250ZW50cykgdG8gbGlzdCB0aGVpciBjb250ZW50cy5cbiIKK21zZ3N0ciAiIgorIuCkoeCkv+CkquCkv+CkleClh+CknOClgCAtLeCkh+CkqOCljeCkq+CliyAoPSDgpKHgpL/gpKrgpL/gpJXgpYfgpJzgpYAt4KSh4KWH4KSsIC0t4KSH4KSo4KWN4KSr4KWLKSDgpIbgpLDgpY3gpJXgpL7gpIfgpLXgpY3gpLkg4KSr4KS+4KSH4KSyIOCkpOCkquCkvuCkuOCko+CljeCkr+CkvuCkuOCkvuCkoOClgCxcbiIKKyLgpIbgpKPgpL8g4KSh4KS/4KSq4KS/4KSV4KWH4KSc4KWAIC0t4KSV4KSo4KWN4KSf4KWH4KSo4KWN4KSf4KS4ICg9IOCkoeCkv+CkquCkv+CkleClh+CknOClgC3gpKHgpYfgpKwgLS3gpJXgpKjgpY3gpJ/gpYfgpKjgpY3gpJ/gpLgpIOCkpOCljeCkr+CkvuCkguCkmuCkviDgpK7gpJzgpJXgpYLgpLAg4KSm4KS+4KSW4KS14KSj4KWN4KSv4KS+4KS44KS+4KSg4KWAIOCkteCkvuCkquCksCAiCisi4KSV4KSw4KS+LlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo1NzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgYXQgbW9zdCB0d28gYXJndW1lbnRzIgorbXNnc3RyICIgLS3gpKzgpL/gpLLgpY3gpKEg4KSc4KS+4KS44KWN4KSk4KWA4KSkIOCknOCkvuCkuOCljeCkpCDgpKbgpYvgpKgg4KSG4KSw4KWN4KSX4KWN4KSv4KWB4KSu4KWH4KSo4KWN4KSf4KS44KWNL+CkquCksOCljeCkr+CkvuCkryDgpJjgpYfgpKTgpYciCisKKyM6IHNyYy9xdWVyeWNtZC5jOjU3OAorIywgYy1mb3JtYXQKK21zZ2lkICJjb250cm9sIGZpbGUgY29udGFpbnMgJWMiCittc2dzdHIgIiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjAwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gJXMgcGFja2FnZSBtYW5hZ2VtZW50IHByb2dyYW0gcXVlcnkgdG9vbCB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICLgpKHgpYfgpKzgpL/gpIXgpKggYCVzJyDgpKrgpYXgpJXgpYfgpJwg4KS14KWN4KSv4KS14KS44KWN4KSl4KS+4KSq4KSoIOCkhuCknOCljeCknuCkteCksuClgCDgpIbgpLXgpYPgpKTgpY3gpKTgpL8gJXMuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjYxOQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLXN8LS1zdGF0dXMgPHBhY2thZ2U+IC4uLiAgICAgICAgRGlzcGxheSBwYWNrYWdlIHN0YXR1cyBkZXRhaWxzLlxuIgorIiAgLXB8LS1wcmludC1hdmFpbCA8cGFja2FnZT4gLi4uICAgRGlzcGxheSBhdmFpbGFibGUgdmVyc2lvbiBkZXRhaWxzLlxuIgorIiAgLUx8LS1saXN0ZmlsZXMgPHBhY2thZ2U+IC4uLiAgICAgTGlzdCBmaWxlcyBgb3duZWQnIGJ5IHBhY2thZ2UocykuXG4iCisiICAtbHwtLWxpc3QgWzxwYXR0ZXJuPiAuLi5dICAgICAgICBMaXN0IHBhY2thZ2VzIGNvbmNpc2VseS5cbiIKKyIgIC1XfC0tc2hvdyBbPHBhdHRlcm4+IC4uLl0gICAgICAgIFNob3cgaW5mb3JtYXRpb24gb24gcGFja2FnZShzKS5cbiIKKyIgIC1TfC0tc2VhcmNoIDxwYXR0ZXJuPiAuLi4gICAgICAgIEZpbmQgcGFja2FnZShzKSBvd25pbmcgZmlsZShzKS5cbiIKKyIgIC1jfC0tY29udHJvbC1wYXRoIDxwYWNrYWdlPiBbPGZpbGU+XVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHJpbnQgcGF0aCBmb3IgcGFja2FnZSBjb250cm9sIGZpbGUuXG4iCisiXG4iCittc2dzdHIgIiIKKyLgpIbgpJzgpY3gpJ7gpL46XG4iCisiICAgLXN8LS3gpLjgpY3gpJ/gpYfgpJ/gpLggPOCkquClheCkleClh+CknD4gLi4uICAgICAgICAgICAg4KSq4KWF4KSV4KWH4KSc4KSa4KWN4KSv4KS+IOCkuOCljeCkpeCkv+CkpOClgOCkmuClgCDgpLjgpLXgpL/gpLjgpY3gpKTgpLAg4KSu4KS+4KS54KS/4KSk4KWAIOCkpuCksOCljeCktuCkteCkv+CkpOClhy5cbiIKKyIgICAtcHwtLeCkquCljeCksOCkv+CkqOCljeCkny3gpIXgpLXgpY3gpLngpYfgpLIgPHBhY2thZ2U+IC4uLiAgICAg4KSJ4KSq4KSy4KSs4KWN4KSm4KWN4KSnIOCkheCkuOCksuClh+CksuCljeCkr+CkviDgpIbgpLXgpYPgpKTgpY3gpKTgpYDgpJrgpYAg4KS44KS14KS/4KS44KWN4KSk4KSwIOCkruCkvuCkueCkv+CkpOClgCAiCisi4KSm4KSw4KWN4KS24KS14KS/4KSk4KWHLlxuIgorIiAgIC1MfC0t4KSy4KS/4KS44KWN4KSf4KSr4KS+4KSH4KSy4KWN4KS4IDxwYWNrYWdlPiAuLi4gICAg4KSq4KWF4KSV4KWH4KSc4KWH4KS44KSa4KWN4KSv4KS+IGDgpK7gpL7gpLLgpJXgpL/gpJrgpY3gpK/gpL4nIOCkq+CkvuCkiOCksuCljeCkuOCkmuClgCDgpLjgpYHgpJrgpYAg4KSm4KWH4KSk4KWHLlxuIgorIiAgIC1sfC0t4KSy4KS/4KS44KWN4KSfIFs84KSq4KWF4KSf4KSw4KWN4KSoPiAuLi5dICAgICAgICAgICAg4KSq4KWF4KSV4KWH4KSc4KWH4KS44KSa4KWAIOCkuOCkguCkleCljeCkt+Ckv+CkquCljeCkpCDgpLjgpYHgpJrgpYAg4KSm4KWH4KSk4KWHLlxuIgorIiAgIC1XfC0t4KS24KWLIDzgpKrgpYXgpJ/gpLDgpY3gpKg+IC4uLiAgICAgICAgICAgICAg4KSq4KWF4KSV4KWH4KSc4KWH4KS44KS14KSw4KS/4KSyIOCkruCkvuCkueCkv+CkpOClgCDgpKbgpL7gpJbgpLXgpKTgpYcuXG4iCisiICAgLVN8LS3gpLjgpLDgpY3gpJogPOCkquClheCkn+CksOCljeCkqD4gLi4uICAgICAgICAgICAgICDgpKrgpYXgpJXgpYfgpJzgpYfgpLjgpJrgpY3gpK/gpL4gYOCkruCkvuCksuCkleCkv+CkmuCljeCkr+Ckvicg4KSr4KS+4KSI4KSy4KWN4KS4IOCktuCli+Ckp+CkpOClhy5cbiIKKyJcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjM2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hZG1pbmRpcj08ZGlyZWN0b3J5PiAgICAgICAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMuXG4iCisiICAtZnwtLXNob3dmb3JtYXQ9PGZvcm1hdD4gICAgICAgICBVc2UgYWx0ZXJuYXRpdmUgZm9ybWF0IGZvciAtLXNob3cuXG4iCisiXG4iCittc2dzdHIgIiIKKyLgpKrgpLDgpY3gpK/gpL7gpK86XG4iCisiICAtLeCkheClheCkoeCkruCkv+CkqOCkoeCkv+CkhuCkr+CkhuCksD084KSh4KS/4KSw4KWH4KSV4KWN4KSf4KSw4KWAPiAgICAgICAgICAlc+CkmuCljeCkr+CkviDgpJDgpLXgpJzgpYAgPOCkoeCkv+CksOClh+CkleCljeCkn+CksOClgD4g4KS14KS+4KSq4KSw4KS+LlxuIgorIiAgLWZ8LS3gpLbgpYvgpKvgpYngpLDgpK7gpYXgpJ89POCkq+ClieCksOCkruClheCknz4gICAgICAgICAgICAgIC0t4KS24KWLIOCkuOCkvuCkoOClgCDgpKbgpYHgpLjgpLDgpYcg4KS44KWN4KS14KSw4KWB4KSqIOCkteCkvuCkquCksOCkvi5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjQyIGRwa2ctZGViL21haW4uYzoxMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkZvcm1hdCBzeW50YXg6XG4iCisiICBBIGZvcm1hdCBpcyBhIHN0cmluZyB0aGF0IHdpbGwgYmUgb3V0cHV0IGZvciBlYWNoIHBhY2thZ2UuIFRoZSBmb3JtYXRcbiIKKyIgIGNhbiBpbmNsdWRlIHRoZSBzdGFuZGFyZCBlc2NhcGUgc2VxdWVuY2VzIFxcbiAobmV3bGluZSksIFxcciAoY2FycmlhZ2VcbiIKKyIgIHJldHVybikgb3IgXFxcXCAocGxhaW4gYmFja3NsYXNoKS4gUGFja2FnZSBpbmZvcm1hdGlvbiBjYW4gYmUgaW5jbHVkZWRcbiIKKyIgIGJ5IGluc2VydGluZyB2YXJpYWJsZSByZWZlcmVuY2VzIHRvIHBhY2thZ2UgZmllbGRzIHVzaW5nIHRoZSAke3Zhcls7IgorIndpZHRoXX1cbiIKKyIgIHN5bnRheC4gRmllbGRzIHdpbGwgYmUgcmlnaHQtYWxpZ25lZCB1bmxlc3MgdGhlIHdpZHRoIGlzIG5lZ2F0aXZlIGluICIKKyJ3aGljaFxuIgorIiAgY2FzZSBsZWZ0IGFsaWdubWVudCB3aWxsIGJlIHVzZWQuXG4iCittc2dzdHIgIiIKKyLgpLXgpL7gpJXgpY3gpK/gpLDgpJrgpKjgpYfgpJrgpYcg4KS44KWN4KS14KSw4KWC4KSqOlxuIgorIiAg4KS44KWN4KS14KSw4KWC4KSqIOCkueClhyDgpLjgpY3gpJ/gpY3gpLDgpL/gpKjgpY3gpJcg4KSG4KS54KWHIOCkpOClhyDgpKrgpY3gpLDgpKTgpY3gpK/gpYfgpJUg4KSq4KWF4KSV4KWH4KSc4KSa4KWHIOCkhuCkieCkn+CljeCkquClgeCkny/gpIngpKTgpY3gpKrgpL7gpKbgpKgg4KSF4KS44KWH4KSyLiDgpLjgpY3gpLXgpLDgpYLgpKrgpL7gpKQg4KSq4KWN4KSw4KSu4KS+4KSj4KSt4KWC4KSkXG4iCisiICDgpLjgpYHgpJ/gpJXgpYfgpJrgpYcg4KSV4KWN4KSw4KSuIFxcbiAo4KSo4KS14KS/4KSoIOCkk+CksyksIFxcciAo4KSV4KWF4KSw4KS/4KSP4KScIOCksOCkv+Ckn+CksOCljeCkqCkg4KSV4KS/4KSC4KS14KS+IFxcXFwgKOCkquCljeCksuClh+CkqC/gpKjgpYHgpLjgpKTgpL4g4KSs4KWF4KSV4KS44KWN4KSy4KWF4KS2KVxuIgorIiAg4KS44KSu4KS+4KS14KS/4KS34KWN4KSfIOCkhuCkueClh+CkpC4gIOCkteClh+CksOCkv+Ckj+CkrOCksiDgpLjgpILgpKbgpLDgpY3gpK0g4KSq4KWF4KSV4KWH4KScIOCkq+Ckv+CksuCljeCkoeCkruCkp+CljeCkr+Clhy/gpJXgpY3gpLfgpYfgpKTgpY3gpLDgpL7gpKQgJHt2YXJbO3dpZHRoXX0g4KS14KS+4KSV4KWN4KSv4KSw4KSa4KSo4KS+XG4iCisiICDgpLXgpL7gpKrgpLDgpYLgpKgg4KSq4KWF4KSV4KWH4KSc4KSu4KSn4KWN4KSv4KWHIOCkruCkvuCkueCkv+CkpOClgCDgpLjgpK7gpL7gpLXgpL/gpLfgpY3gpJ8g4KSV4KSw4KSk4KS+IOCkr+Clh+CkpOClh1xuIgorIiAg4KSr4KS/4KSy4KWN4KShL+CkleCljeCkt+Clh+CkpOCljeCksCDgpIngpJzgpLXgpY3gpK/gpL4g4KSs4KS+4KSc4KWB4KSy4KS+IOCkheCkuOCkvuCkteClhyDgpJzgpLAg4KS14KWN4KSv4KS+4KSq4KWN4KSk4KWAIOCki+CkoyDgpIXgpLjgpYfgpLIg4KSk4KSwIOCkoeCkvuCkteCljeCkr+CkviDgpKzgpL7gpJzgpYHgpLLgpL4g4KSF4KS44KS+4KS14KWHLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo2NTYKK21zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IHF1ZXJ5aW5nIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcmVtb3ZlLmM6ODgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nIHJlcXVlc3QgdG8gcmVtb3ZlICUuMjUwcyB3aGljaCBpc24ndCBpbnN0YWxsZWQuIgorbXNnc3RyICIiCisi4KSh4KS/4KSq4KS/4KSV4KWH4KSc4KWAIC0g4KSk4KS+4KSV4KS/4KSmOiAlLjI1MHMg4KSc4KWN4KSv4KS+4KSa4KWAIOCkuOCljeCkpeCkvuCkquCkqOCkviDgpJXgpYfgpLLgpYfgpLLgpYAg4KSo4KS+4KS54KWALCDgpKTgpYcg4KSV4KS+4KSi4KWC4KSoIOCkn+CkvuCkleCko+CljeCkr+CkvuCkmuCljeCkr+CkviDgpLXgpL/gpKjgpILgpKTgpYDgpJXgpKHgpYcgIgorIuCkpuClgeCksOCljeCksuCkleCljeCktyDgpJXgpLDgpL/gpKQg4KSG4KS54KWHLlxuIgorCisjOiBzcmMvcmVtb3ZlLmM6OTUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpZ25vcmluZyByZXF1ZXN0IHRvIHJlbW92ZSAlLjI1MHMsIG9ubHkgdGhlIGNvbmZpZ1xuIgorIiBmaWxlcyBvZiB3aGljaCBhcmUgb24gdGhlIHN5c3RlbS4gVXNlIC0tcHVyZ2UgdG8gcmVtb3ZlIHRoZW0gdG9vLiIKK21zZ3N0ciAiIgorIuCkoeCkv+CkquCkv+CkleClh+CknOClgCAtIOCkpOCkvuCkleCkv+CkpjogJS4yNTBzIOCkleCkqOCkq+Ckv+CklyDgpKvgpL7gpIfgpLLgpY3gpLgg4KSc4KWN4KSv4KS+IOCkuOCkv+CkuOCljeCkn+CkruCkteCksCDgpIbgpLngpYfgpKQg4KSk4KWN4KSv4KS+IOCkleCkvuCkouClguCkqCDgpJ/gpL7gpJXgpKPgpY3gpK/gpL7gpJrgpY3gpK/gpL4gIgorIuCkteCkv+CkqOCkguCkpOClgOCkleCkoeClhyDgpKbgpYHgpLDgpY3gpLLgpJXgpY3gpLcg4KSV4KSw4KS/4KSkIOCkhuCkueClhy4g4KSk4KWN4KSv4KS+IOCkuOClgeCkpuCljeCkp+CkviDgpJXgpL7gpKLgpYLgpKgg4KSf4KS+4KSV4KSj4KWN4KSv4KS+4KS44KS+4KSg4KWAIC0tcHVyZ2UvLS3gpKrgpLDgpY3gpZsg4KS14KS+4KSq4KSw4KS+LlxuIgorCisjOiBzcmMvcmVtb3ZlLmM6MTAzCisjLCBmdXp6eQorbXNnaWQgIlRoaXMgaXMgYW4gZXNzZW50aWFsIHBhY2thZ2UgLSBpdCBzaG91bGQgbm90IGJlIHJlbW92ZWQuIgorbXNnc3RyICLgpLngpYcg4KSu4KS54KSk4KWN4KS14KS+4KSa4KWHIOCkquClheCkleClh+CknCDgpIbgpLngpYcgLSDgpKTgpYcg4KSV4KS+4KSi4KWC4KSoIOCkn+CkvuCkleCkpOCkviDgpJXgpL7gpK7gpL4g4KSo4KSv4KWHLlxuIgorCisjOiBzcmMvcmVtb3ZlLmM6MTI4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBkZXBlbmRlbmN5IHByb2JsZW1zIHByZXZlbnQgcmVtb3ZhbCBvZiAlczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorIuCkoeCkv+CkquCkv+CkleClh+CknOClgDog4KSF4KS14KSy4KSC4KSs4KWB4KSoIOCkheCkuOCksuClh+CksuCljeCkr+CkviDgpLjgpK7gpLjgpY3gpK/gpL4gJXPgpLLgpL4g4KSV4KS+4KSi4KWC4KSoIOCkn+CkvuCkleCko+CljeCkr+CkvuCkuCDgpIXgpKHgpKXgpLPgpYcg4KSG4KSj4KSk4KS+4KSkOlxuIgorIiVzIgorCisjOiBzcmMvcmVtb3ZlLmM6MTMwCittc2dpZCAiZGVwZW5kZW5jeSBwcm9ibGVtcyAtIG5vdCByZW1vdmluZyIKK21zZ3N0ciAi4KSF4KS14KSy4KSC4KSs4KWB4KSoIOCkheCkuOCksuClh+CksuCljeCkr+CkviDgpLjgpK7gpLjgpY3gpK/gpL4gLSDgpJXgpL7gpKLgpYLgpKgg4KSf4KS+4KSV4KSkIOCkqOCkvuCkueClgCIKKworIzogc3JjL3JlbW92ZS5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogJXM6IGRlcGVuZGVuY3kgcHJvYmxlbXMsIGJ1dCByZW1vdmluZyBhbnl3YXkgYXMgeW91IHJlcXVlc3RlZDpcbiIKKyIlcyIKK21zZ3N0ciAiIgorIuCkoeCkv+CkquCkv+CkleClh+CknOClgDogJXM6IOCkheCkteCksuCkguCkrOClgeCkqCDgpIXgpLjgpLLgpYfgpLLgpY3gpK/gpL4g4KS44KSu4KS44KWN4KSv4KS+LCDgpKrgpLDgpILgpKTgpYEg4KSk4KWB4KSu4KSa4KWN4KSv4KS+IOCkteCkv+CkqOCkguCkpOClgOCkqOClgeCkuOCkvuCksCDgpJXgpL7gpKLgpYLgpKgg4KSf4KS+4KSV4KSkIOCkhuCkueClhzpcbiIKKyIlcyIKKworIzogc3JjL3JlbW92ZS5jOjE0MgorbXNnaWQgIiIKKyJQYWNrYWdlIGlzIGluIGEgdmVyeSBiYWQgaW5jb25zaXN0ZW50IHN0YXRlIC0geW91IHNob3VsZFxuIgorIiByZWluc3RhbGwgaXQgYmVmb3JlIGF0dGVtcHRpbmcgYSByZW1vdmFsLiIKK21zZ3N0ciAiIgorIuCkquClheCkleClh+CknCDgpIXgpKTgpL/gpLbgpK8g4KSW4KSw4KS+4KSsIOCkteCkv+CkuOCkguCkl+CkpCDgpKrgpLDgpL/gpLjgpY3gpKXgpL/gpKTgpYDgpKQg4KSG4KS54KWHIC0g4KSk4KWB4KSu4KWN4KS54KWAIOCkpOClhyDgpJXgpL7gpKLgpYLgpKgg4KSf4KS+4KSV4KSj4KWN4KSv4KS+4KSa4KS+IOCkquCljeCksOCkr+CkpOCljeCkqCDgpJXgpLDgpKPgpY3gpK/gpL7gpIbgpKfgpYAgIgorIuCkpOCljeCkr+CkvuCkmuClgCDgpKrgpYHgpKjgpLDgpY3gpLjgpY3gpKXgpL7gpKrgpKjgpL4g4KSV4KSw4KS+IgorCisjOiBzcmMvcmVtb3ZlLmM6MTQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIldvdWxkIHJlbW92ZSBvciBwdXJnZSAlcyAuLi5cbiIKK21zZ3N0ciAiJXMg4KSV4KS+4KSi4KWC4KSoIOCkn+CkvuCkleClgiDgpJXgpL/gpILgpLXgpL4g4KSq4KSw4KWN4KScIOCkleCksOClgSAuLi5cbiIKKworIzogc3JjL3JlbW92ZS5jOjE1NworIywgYy1mb3JtYXQKK21zZ2lkICJSZW1vdmluZyAlcyAuLi5cbiIKK21zZ3N0ciAiJXMg4KSV4KS+4KSi4KWC4KSoIOCkn+CkvuCkleCkpCDgpIbgpLngpYcuLi5cbiIKKworIzogc3JjL3JlbW92ZS5jOjI3NSBzcmMvcmVtb3ZlLmM6MzY2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisid2hpbGUgcmVtb3ZpbmcgJS4yNTBzLCB1bmFibGUgdG8gcmVtb3ZlIGRpcmVjdG9yeSAnJS4yNTBzJzogJXMgLSBkaXJlY3RvcnkgIgorIm1heSBiZSBhIG1vdW50IHBvaW50PyIKK21zZ3N0ciAiIgorIuCkoeCkv+CkquCkv+CkleClh+CknOClgCAtIOCkpOCkvuCkleCkv+CkpjogJS4yNTBzIOCkleCkvuCkouCkpOCkvuCkqOCkviwgYCUuMjUwcyfgpJrgpYAg4KSh4KS/4KSw4KWH4KSV4KWN4KSf4KSw4KWAIOCkleCkvuCkouCko+ClhyDgpIXgpLbgpJXgpY3gpK86ICVzIHMgLSAiCisi4KSh4KS/4KSw4KWH4KSV4KWN4KSf4KSw4KWAIOCkleCkpuCkvuCkmuCkv+CkpCDgpK7gpL7gpIrgpILgpJ8g4KSq4KWJ4KSH4KSC4KSfIOCkhuCkueClhyA/XG4iCisKKyM6IHNyYy9yZW1vdmUuYzoyODkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWN1cmVseSByZW1vdmUgJyUuMjUwcyciCittc2dzdHIgImAlLjI1NXMnIOCkmuClgCDgpLDgpJrgpKjgpL4g4KSV4KSw4KSk4KS+IOCkr+Clh+CkpCDgpKjgpL7gpLngpYAiCisKKyM6IHNyYy9yZW1vdmUuYzozNjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIndoaWxlIHJlbW92aW5nICUuMjUwcywgZGlyZWN0b3J5ICclLjI1MHMnIG5vdCBlbXB0eSBzbyBub3QgcmVtb3ZlZC4iCittc2dzdHIgIiIKKyLgpKHgpL/gpKrgpL/gpJXgpYfgpJzgpYAgLSDgpKTgpL7gpJXgpL/gpKY6ICUuMjUwcyDgpJXgpL7gpKLgpKTgpL7gpKjgpL4sIOCkoeCkv+CksOClh+CkleCljeCkn+CksOClgCBgJS4yNTBzJyDgpLDgpL/gpJXgpL7gpK7gpYAg4KSo4KS+4KS54KWAIOCkruCljeCkueCko+ClgeCkqCDgpJXgpL7gpKLgpLLgpYAgIgorIuCkqOCkvuCkueClgC5cbiIKKworIzogc3JjL3JlbW92ZS5jOjM4MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiY2Fubm90IHJlbW92ZSBgJS4yNTBzJyIKK21zZ2lkICJjYW5ub3QgcmVtb3ZlICclLjI1MHMnIgorbXNnc3RyICIlLjI1MHMg4KSV4KS+4KSi4KSj4KWHIOCkheCktuCkleCljeCkryIKKworIzogc3JjL3JlbW92ZS5jOjQwOQorIywgYy1mb3JtYXQKK21zZ2lkICJQdXJnaW5nIGNvbmZpZ3VyYXRpb24gZmlsZXMgZm9yICVzIC4uLlxuIgorbXNnc3RyICIlc+CkuOCkvuCkoOClgCDgpJzgpYHgpLPgpLXgpKPgpYAg4KSr4KS+4KSH4KSyIOCkquCksOCljeCknCDgpJXgpLDgpKQg4KSG4KS54KWHLi4uXG4iCisKKyM6IHNyYy9yZW1vdmUuYzo0NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlbW92ZSBvbGQgY29uZmlnIGZpbGUgYCUuMjUwcycgKD0gYCUuMjUwcycpIgorbXNnc3RyICLgpJzgpYHgpKjgpYAg4KSV4KWJ4KSo4KWN4KSr4KS/4KSXIOCkq+CkvuCkh+CksiBgJS4yNTBzJyDgpJXgpL7gpKLgpKPgpYcg4KSF4KS24KSV4KWN4KSvICg9IGAlLjI1MHMnKSIKKworIzogc3JjL3JlbW92ZS5jOjQ3NAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVhZCBjb25maWcgZmlsZSBkaXIgYCUuMjUwcycgKGZyb20gYCUuMjUwcycpIgorbXNnc3RyICLgpJXgpYngpKjgpY3gpKvgpL/gpJcg4KSr4KS+4KSH4KSyIOCkoeCkv+CkhuCkr+CkhuCksCBgJS4yNTBzJyDgpLngpL8gIChgJS4yNTBzJ+CkruCkp+ClguCkqCkg4KS14KS+4KSa4KWCIOCktuCkleCkpCDgpKjgpL7gpLngpYAiCisKKyM6IHNyYy9yZW1vdmUuYzo1MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlbW92ZSBvbGQgYmFja3VwIGNvbmZpZyBmaWxlIGAlLjI1MHMnIChvZiBgJS4yNTBzJykiCittc2dzdHIgIiglLjI1MHMn4KSa4KWAKSDgpJzgpYHgpKjgpYAg4KSs4KWF4KSV4KSqIOCkleClieCkqOCljeCkq+Ckv+CklyDgpKvgpL7gpIfgpLIgJS4yNTBzJyDgpJXgpL7gpKLgpYIg4KS24KSV4KSkIOCkqOCkvuCkueClgCIKKworIzogc3JjL3JlbW92ZS5jOjU2OAorbXNnaWQgImNhbm5vdCByZW1vdmUgb2xkIGZpbGVzIGxpc3QiCittc2dzdHIgIuCknOClgeCkqOCljeCkr+CkviDgpKvgpL7gpIfgpLLgpJrgpYAg4KS44KWB4KSa4KWAIOCkleCkvuCkouClgiDgpLbgpJXgpKQg4KSo4KS+4KS54KWAIgorCisjOiBzcmMvcmVtb3ZlLmM6NTc0Cittc2dpZCAiY2FuJ3QgcmVtb3ZlIG9sZCBwb3N0cm0gc2NyaXB0IgorbXNnc3RyICLgpJzgpYHgpKjgpYcg4KSq4KWL4KS44KWN4KSf4KSG4KSw4KSP4KSuL3Bvc3RybSDgpLjgpY3gpJXgpY3gpLDgpL/gpKrgpY3gpJ8g4KSV4KS+4KSi4KWCIOCktuCkleCkpCDgpKjgpL7gpLngpYAiCisKKyM6IHNyYy9zZWxlY3QuYzoxMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgaW4gcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQiCittc2dzdHIgIiVkIOCkk+Cks+ClgOCkteCksCDgpKrgpYXgpJXgpYfgpJzgpJrgpY3gpK/gpL4g4KSo4KS+4KS14KS+4KSu4KSn4KWN4KSv4KWHIOCkheCkqOCkquClh+CkleCljeCkt+Ckv+CkpCDgpIfgpJPgpI/gpKsiCisKKyM6IHNyYy9zZWxlY3QuYzoxMTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgbGluZSBpbiBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZCIKK21zZ3N0ciAiJWQg4KST4KSz4KWA4KS14KSwIOCkquClheCkleClh+CknOCkmuCljeCkr+CkviDgpKjgpL7gpLXgpL7gpK7gpKfgpY3gpK/gpYcg4KSF4KSo4KSq4KWH4KSV4KWN4KS34KS/4KSkIOCkieCkpuCljeCkreCkteCksuClh+CksuCkviDgpJPgpLPgpYDgpJrgpL4g4KS24KWH4KS14KSfL+Ckj+Cko+CljeCkoSDgpJHgpKsg4KSy4KS+4KSH4KSoIgorCisjOiBzcmMvc2VsZWN0LmM6MTIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW9mIGFmdGVyIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICIlZCDgpJPgpLPgpYDgpLXgpLAg4KSq4KWF4KSV4KWH4KSc4KSa4KWN4KSv4KS+IOCkqOCkvuCkteCkvuCkqOCkguCkpOCksCDgpIXgpKjgpKrgpYfgpJXgpY3gpLfgpL/gpKQg4KSJ4KSm4KWN4KSt4KS14KSy4KWH4KSy4KWHIOCkh+Ckk+Ckj+CkqyIKKworIzogc3JjL3NlbGVjdC5jOjEyMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBsaW5lIGFmdGVyIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICIlZCDgpJPgpLPgpYDgpLXgpLAg4KSq4KWF4KSV4KWH4KSc4KSa4KWN4KSv4KS+IOCkqOCkvuCkteCkvuCkqOCkguCkpOCksCDgpIXgpKjgpKrgpYfgpJXgpY3gpLfgpL/gpKQg4KSJ4KSm4KWN4KSt4KS14KSy4KWH4KSy4KS+IOCkk+Cks+ClgOCkmuCkviDgpLbgpYfgpLXgpJ8v4KSP4KSj4KWN4KShIOCkkeCkqyDgpLLgpL7gpIfgpKgiCisKKyM6IHNyYy9zZWxlY3QuYzoxMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBkYXRhIGFmdGVyIHBhY2thZ2UgYW5kIHNlbGVjdGlvbiBhdCBsaW5lICVkIgorbXNnc3RyICLgpKrgpYXgpJXgpYfgpJzgpKjgpILgpKTgpLAg4KSJ4KSm4KWN4KSt4KS14KSy4KWH4KSy4KS+IOCkheCkqOCkquClh+CkleCljeCkt+Ckv+CkpCDgpKHgpYfgpJ/gpL4g4KSG4KSj4KS/ICVkIOCkk+Cks+ClgOCkteCksOCkmuClgCDgpKjgpL/gpLXgpKEiCisKKyM6IHNyYy9zZWxlY3QuYzoxMzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWxsZWdhbCBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZDogJS4yNTBzIgorbXNnc3RyICLgpKzgpYfgpJXgpL7gpK/gpKbgpYfgpLbgpYDgpLAg4KSq4KWF4KSV4KWH4KSc4KSa4KWHIOCkqOCkvuCktSAlZCDgpJPgpLPgpYDgpLXgpLA6ICUuMjUwcyIKKworIzogc3JjL3NlbGVjdC5jOjE0MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIHdhbnRlZCBzdGF0dXMgYXQgbGluZSAlZDogJS4yNTBzIgorbXNnc3RyICIlZCDgpJPgpLPgpYDgpLXgpLAg4KSF4KSq4KSw4KS/4KSa4KWA4KSkIOCkquCkvuCkueCkv+CknOClhyDgpIXgpLjgpLLgpYfgpLLgpL4g4KSm4KSw4KWN4KSc4KS+OiAlLjI1MHMgIgorCisjOiBzcmMvc2VsZWN0LmM6MTQ5Cittc2dpZCAicmVhZCBlcnJvciBvbiBzdGFuZGFyZCBpbnB1dCIKK21zZ3N0ciAi4KS44KWN4KSf4KWF4KSj4KWN4KSh4KSw4KWN4KShIOCkh+CkqOCkquClguCkn+CkteCksCDgpKbgpYvgpLcg4KS14KS+4KSa4KS+IgorCisjOiBzcmMvc3RhdGNtZC5jOjUyCittc2dpZCAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBvdmVycmlkaW5nIGZpbGUgc3RhdCBpbmZvcm1hdGlvbi4iCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRjbWQuYzo2MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvcHlyaWdodCAoQykgMjAwMCwgMjAwMSBXaWNoZXJ0IEFra2VybWFuLlxuIgorIkNvcHlyaWdodCAoQykgMjAwNi0yMDA5IEd1aWxsZW0gSm92ZXIuXG4iCittc2dzdHIgIiIKKyJcbiIKKyLgpLjgpLDgpY3gpLXgpL7gpKfgpL/gpJXgpL7gpLAgKEMpIOClp+Clr+Clr+ClqyDgpIbgpK/gpKgg4KSc4KWF4KSV4KS44KSoLlxuIgorIuCkuOCksOCljeCkteCkvuCkp+Ckv+CkleCkvuCksCAoQykg4KWo4KWm4KWm4KWmLOClqOClpuClpuClpyDgpLXgpL/gpJrgpLDgpY3gpJ8g4KSF4KWF4KSV4KWN4KSV4KWH4KSw4KSu4KSoLiIKKworIzogc3JjL3N0YXRjbWQuYzo4MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtLWFkZCA8b3duZXI+IDxncm91cD4gPG1vZGU+IDxmaWxlPlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGFkZCBhIG5ldyBlbnRyeSBpbnRvIHRoZSBkYXRhYmFzZS5cbiIKKyIgIC0tcmVtb3ZlIDxmaWxlPiAgICAgICAgICByZW1vdmUgZmlsZSBmcm9tIHRoZSBkYXRhYmFzZS5cbiIKKyIgIC0tbGlzdCBbPGdsb2ItcGF0dGVybj5dICBsaXN0IGN1cnJlbnQgb3ZlcnJpZGVzIGluIHRoZSBkYXRhYmFzZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGNtZC5jOjg5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICBzZXQgdGhlIGRpcmVjdG9yeSB3aXRoIHRoZSBzdGF0b3ZlcnJpZGUgZmlsZS5cbiIKKyIgIC0tdXBkYXRlICAgICAgICAgICAgICAgICBpbW1lZGlhdGVseSB1cGRhdGUgZmlsZSBwZXJtaXNzaW9ucy5cbiIKKyIgIC0tZm9yY2UgICAgICAgICAgICAgICAgICBmb3JjZSBhbiBhY3Rpb24gZXZlbiBpZiBhIHNhbml0eSBjaGVjayBmYWlscy5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBxdWlldCBvcGVyYXRpb24sIG1pbmltYWwgb3V0cHV0LlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIuCksOClgOCkpDogJXMgWzzgpKrgpLDgpY3gpK/gpL7gpK8+IC4uLl0gPOCkuOCkruCkvuCkpuClh+Cktj5cbiIKKyJcbiIKKyLgpLjgpK7gpL7gpKbgpYfgpLY6XG4iCisiICAtLeCkruCkv+Cks+CkteCkviA84KSu4KS+4KSy4KSVPiA84KS44KSu4KWC4KS5PiA84KSq4KSm4KWN4KSn4KSk4KWAPiA84KSr4KS+4KSH4KSyPlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIOCkoeClh+Ckn+CkvuCkrOClh+CkuOCkruCkp+ClhyDgpKjgpLXgpYDgpKgg4KSo4KWL4KSC4KSmIOCkpOCkr+CkvuCksCDgpJXgpLDgpL4uXG4iCisiICAtLeCkleCkvuCkouCkviA84KSr4KS+4KSH4KSyPiAgICAgICAgICDgpKvgpL7gpIfgpLIg4KSh4KWH4KSf4KS+4KSs4KWH4KS44KSu4KSn4KWC4KSoIOCkleCkvuCkouClguCkqCDgpJ/gpL7gpJXgpL4uXG4iCisiICAtLeCkr+CkvuCkpuClgCBbPOCkl+CljeCksuCli+CkrC3gpLjgpL7gpJrgpL4+XSAg4KSh4KWH4KSf4KS+4KSs4KWH4KS44KSu4KSn4KWA4KSyIOCkuOCkpuCljeCkp+CljeCkr+CkvuCkmuCljeCkr+CkviDgpIXgpYvgpLXgpY3gpLngpLDgpLDgpL7gpIfgpKHgpY3gpLgg4KSa4KWAIOCkr+CkvuCkpuClgCDgpKzgpKjgpLXgpL4uXG4iCisiXG4iCisi4KSq4KSw4KWN4KSv4KS+4KSvOlxuIgorIiAgLS3gpLXgpY3gpK/gpLXgpLjgpY3gpKXgpL7gpKjgpL/gpLDgpY3gpKbgpYfgpLbgpL/gpJXgpL4gPOCkqOCkv+CksOCljeCkpuClh+CktuCkv+CkleCkvj4gICDgpLjgpY3gpJ/gpYXgpJ/gpIXgpYvgpLXgpY3gpLngpLDgpLDgpL7gpIfgpKEg4KSr4KS+4KSv4KSy4KWA4KS44KS5IOCkqOCkv+CksOCljeCkpuClh+CktuCkv+CkleCkviDgpKjgpL/gpLbgpY3gpJrgpL/gpKQg4KSV4KSw4KS+LlxuIgorIiAgLS3gpLjgpYHgpKfgpL7gpLDgpL4gICAgICAgICAgICAgICAgIOCkq+CkvuCkh+CksuCkmuCljeCkr+CkviDgpKrgpLDgpLXgpL7gpKjgpJfgpY3gpK/gpL4g4KSk4KS+4KSk4KWN4KSV4KS+4KSzIOCkuOClgeCkp+CkvuCksOCkv+CkpCDgpJXgpLDgpL4uXG4iCisiICAtLeCkrOCks+CknOCkrOCksOClgCAgICAgICAgICAgICAgIOCkheCkmuClgeCkleCkpOClh+CkmuClhyDgpKrgpLDgpL/gpJXgpY3gpLfgpKMg4KSF4KSv4KS24KS44KWN4KS14KWAIOCkneCkvuCksuClhyDgpKTgpLDgpYDgpLngpYAg4KSs4KSz4KSc4KSs4KSw4KWA4KSo4KWHIOCkj+CkluCkvuCkpuClgCDgpJXgpY3gpLDgpL/gpK/gpL4gIgorIuCkleCksOCkvi5cbiIKKyIgIC0t4KS24KS+4KSC4KSkICAgICAgICAgICAgICAgICAg4KS24KS+4KSC4KSkIOCkuOCkguCkleCljeCksOCkv+Ckr+Ckviwg4KSV4KSu4KWA4KSk4KSV4KSu4KWAIOCkqOCkv+CksOCljeCkl+Ckri5cbiIKKyIgIC0t4KSu4KSm4KSkICAgICAgICAgICAgICAgICAgIOCkueCkviDgpK7gpKbgpKTgpYDgpJrgpL4g4KS44KSC4KSm4KWH4KS2IOCkpuCkvuCkluCkteCkvi5cbiIKKyIgIC0t4KSG4KS14KWD4KSk4KWN4KSk4KWAICAgICAgICAgICAgICAgIOCkhuCkteClg+CkpOCljeCkpOClgOCkmuClgCDgpK7gpL7gpLngpL/gpKTgpYAg4KSm4KS+4KSW4KS14KS+LlxuIgorCisjOiBzcmMvc3RhdGNtZC5jOjExNgorbXNnaWQgInN0cmlwcGluZyB0cmFpbGluZyAvIgorbXNnc3RyICLgpJ/gpY3gpLDgpYfgpLLgpL/gpILgpJcgLyDgpLjgpY3gpJ/gpY3gpLDgpL/gpKog4KSV4KSw4KSkIOCkhuCkueClhyIKKworIzogc3JjL3N0YXRjbWQuYzoyMDcKKyMsIGZ1enp5Cittc2dpZCAiY2Fubm90IG9wZW4gbmV3IHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICLgpKjgpLXgpYDgpKgg4KS44KWN4KSf4KWF4KSf4KSF4KWL4KS14KWN4KS54KSw4KSw4KS+4KSH4KShIOCkq+CkvuCkh+CksjogJXMg4KSJ4KSY4KSh4KSk4KS+IOCkr+Clh+CkpCDgpKjgpL7gpLngpYAiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjIyCisjLCBmdXp6eQorbXNnaWQgImVycm9yIHJlbW92aW5nIHN0YXRvdmVycmlkZS1vbGQiCittc2dzdHIgIuCkuOCljeCkn+ClheCkn+CkheCli+CkteCljeCkueCksOCksOCkvuCkh+CkoS3gpJzgpYHgpKjgpYA6ICVzIOCkleCkvuCkouClguCkqCDgpJ/gpL7gpJXgpKTgpL7gpKjgpL4g4KSk4KWN4KSw4KWB4KSf4KWAIgorCisjOiBzcmMvc3RhdGNtZC5jOjIyNAorIywgZnV6enkKK21zZ2lkICJlcnJvciBjcmVhdGluZyBuZXcgc3RhdG92ZXJyaWRlLW9sZCIKK21zZ3N0ciAi4KSo4KS14KWA4KSoIOCkuOCljeCkn+ClheCkn+CkheCli+CkteCljeCkueCksOCksOCkvuCkh+CkoS3gpJzgpYHgpKjgpYA6ICVzIOCkrOCkqOCkteCkpOCkvuCkqOCkviDgpKTgpY3gpLDgpYHgpJ/gpYAiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjI2CisjLCBmdXp6eQorbXNnaWQgImVycm9yIGluc3RhbGxpbmcgbmV3IHN0YXRvdmVycmlkZSIKK21zZ3N0ciAi4KSo4KS14KWA4KSoIOCkuOCljeCkn+ClheCkn+CkheCli+CkteCljeCkueCksOCksOCkvuCkh+CkoTogJXMg4KSF4KSn4KS/4KS34KWN4KSg4KS+4KSq4KSoIOCkleCksOCkpOCkvuCkqOCkviDgpKTgpY3gpLDgpYHgpJ/gpYAiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjQ2Cittc2dpZCAiLS1hZGQgbmVlZHMgZm91ciBhcmd1bWVudHMiCittc2dzdHIgIi0t4KSu4KS/4KSz4KS14KS+IOCkuOCkvuCkoOClgCDgpJrgpL7gpLAg4KSq4KSw4KWN4KSv4KS+4KSvIOCkhuCkteCktuCljeCkr+CklSIKKworIzogc3JjL3N0YXRjbWQuYzoyNTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJBbiBvdmVycmlkZSBmb3IgJyVzJyBhbHJlYWR5IGV4aXN0cywgYnV0IC0tZm9yY2Ugc3BlY2lmaWVkIHNvIHdpbGwgYmUgIgorImlnbm9yZWQuIgorbXNnc3RyICLgpKrgpKMg4KSo4KS/4KSw4KWN4KSn4KS+4KSw4KWA4KSkIOCkleClh+CksuClh+CksuClgCAtLeCkrOCks+CknOCkrOCksOClgCDgpKbgpYHgpLDgpY3gpLLgpJXgpY3gpLfgpL/gpLLgpYAg4KSc4KS+4KSI4KSyLiIKKworIzogc3JjL3N0YXRjbWQuYzoyNjAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIkFuIG92ZXJyaWRlIGZvciAnJXMnIGFscmVhZHkgZXhpc3RzLCBhYm9ydGluZy4iCittc2dzdHIgIlwiJXNcIiDgpLjgpL7gpKDgpYAg4KSF4KWL4KS14KWN4KS54KSw4KSw4KS+4KSH4KShIOCkhuCkp+ClgOCkmiDgpIXgpLjgpY3gpKTgpL/gpKTgpY3gpLXgpL7gpKQg4KSG4KS54KWHLCAiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjcyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICItLXVwZGF0ZSBnaXZlbiBidXQgJXMgZG9lcyBub3QgZXhpc3QiCittc2dzdHIgIuCkp+Cli+CkleCljeCkr+CkvuCkmuClgCDgpLjgpYLgpJrgpKjgpL46IC0t4KS44KWB4KSn4KS+4KSw4KS+IOCkpuCkv+CksuClh+CksuClhyDgpIbgpLngpYcg4KSq4KSjICVzIOCkheCkuOCljeCkpOCkv+CkpOCljeCkteCkvuCkpCDgpKjgpL7gpLngpYAiCisKKyM6IHNyYy9zdGF0Y21kLmM6Mjk2Cittc2dpZCAiTm8gb3ZlcnJpZGUgcHJlc2VudC4iCittc2dzdHIgIuCkheCli+CkteCljeCkueCksOCksOCkvuCkh+CkoSDgpIXgpLjgpY3gpKTgpL/gpKTgpY3gpLXgpL7gpKQg4KSo4KS+4KS54KWALiIKKworIzogc3JjL3N0YXRjbWQuYzozMDQKKyMsIGZ1enp5Cittc2dpZCAiLS11cGRhdGUgaXMgdXNlbGVzcyBmb3IgLS1yZW1vdmUiCittc2dzdHIgIuCkp+Cli+CkleCljeCkr+CkvuCkmuClgCDgpLjgpYLgpJrgpKjgpL46IC0t4KSV4KS+4KSi4KS+IOCkuOCkvuCkoOClgCAtLeCkuOClgeCkp+CkvuCksOCkviDgpKjgpL/gpLDgpYHgpKrgpK/gpYvgpJfgpYAg4KSG4KS54KWHIgorCisjOiBzcmMvc3RhdGRiLmM6NTkKKyMsIGZ1enp5Cittc2dpZCAic3ludGF4IGVycm9yOiBpbnZhbGlkIHVpZCBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAi4KSo4KS14KWA4KSoIOCkuOCljeCkn+ClheCkn+CkheCli+CkteCljeCkueCksOCksOCkvuCkh+CkoTogJXMg4KSF4KSn4KS/4KS34KWN4KSg4KS+4KSq4KSoIOCkleCksOCkpOCkvuCkqOCkviDgpKTgpY3gpLDgpYHgpJ/gpYAiCisKKyM6IHNyYy9zdGF0ZGIuYzo2NAorIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3I6IHVua25vd24gdXNlciAnJXMnIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0ZGIuYzo4MworIywgZnV6enkKK21zZ2lkICJzeW50YXggZXJyb3I6IGludmFsaWQgZ2lkIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICLgpKjgpLXgpYDgpKgg4KS44KWN4KSf4KWF4KSf4KSF4KWL4KS14KWN4KS54KSw4KSw4KS+4KSH4KShOiAlcyDgpIXgpKfgpL/gpLfgpY3gpKDgpL7gpKrgpKgg4KSV4KSw4KSk4KS+4KSo4KS+IOCkpOCljeCksOClgeCkn+ClgCIKKworIzogc3JjL3N0YXRkYi5jOjg4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3I6IHVua25vd24gZ3JvdXAgJyVzJyBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAi4KS44KWN4KSf4KWF4KSf4KST4KS14KSw4KSw4KS+4KSH4KShIOCkq+CkvuCkh+CksiDgpIngpJjgpKHgpKPgpY3gpK/gpL7gpLgg4KSF4KSv4KS24KS44KWN4KS14KWAIgorCisjOiBzcmMvc3RhdGRiLmM6MTA0CisjLCBmdXp6eQorbXNnaWQgInN5bnRheCBlcnJvcjogaW52YWxpZCBtb2RlIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICLgpLjgpY3gpJ/gpYXgpJ/gpJPgpLXgpLDgpLDgpL7gpIfgpKEg4KSr4KS+4KSH4KSyIOCkieCkmOCkoeCko+CljeCkr+CkvuCkuCDgpIXgpK/gpLbgpLjgpY3gpLXgpYAiCisKKyM6IHNyYy9zdGF0ZGIuYzoxMjcKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAi4KS44KWN4KSf4KWF4KSf4KST4KS14KSw4KSw4KS+4KSH4KShIOCkq+CkvuCkh+CksiDgpIngpJjgpKHgpKPgpY3gpK/gpL7gpLgg4KSF4KSv4KS24KS44KWN4KS14KWAIgorCisjOiBzcmMvc3RhdGRiLmM6MTM0Cittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICLgpLjgpY3gpJ/gpYXgpJ/gpJPgpLXgpLDgpLDgpL7gpIfgpKEg4KSr4KS+4KSH4KSyIOCkj+Ckq+CkuOCljeCkn+ClheCknyDgpLngpYvgpKPgpY3gpK/gpL7gpLgg4KSF4KSv4KS24KS44KWN4KS14KWAIgorCisjOiBzcmMvc3RhdGRiLmM6MTM3Cittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IHByZXZpb3VzIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICLgpIXgpJfgpYvgpKbgpLDgpJrgpYAg4KS44KWN4KSf4KWF4KSf4KST4KS14KSw4KSw4KS+4KSH4KShIOCkq+CkvuCkh+CksiDgpI/gpKvgpLjgpY3gpJ/gpYXgpJ8g4KS54KWL4KSj4KWN4KSv4KS+4KS4IOCkheCkr+CktuCkuOCljeCkteClgCIKKworIzogc3JjL3N0YXRkYi5jOjE2MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic3RhdG92ZXJyaWRlIGZpbGUgYCUuMjUwcyciCittc2dpZCAicmVhZGluZyBzdGF0b3ZlcnJpZGUgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAi4KS44KWN4KSf4KWF4KSf4KST4KS14KSw4KSw4KS+4KSH4KShIOCkq+CkvuCkh+CksiBgJS4yNTBzJyIKKworIzogc3JjL3N0YXRkYi5jOjE2OQorIywgZnV6enkKK21zZ2lkICJzdGF0b3ZlcnJpZGUgZmlsZSBpcyBtaXNzaW5nIGZpbmFsIG5ld2xpbmUiCittc2dzdHIgIuCkuOCljeCkn+ClheCkn+Ckk+CkteCksOCksOCkvuCkh+CkoSDgpKvgpL7gpIfgpLLgpK7gpKfgpY3gpK/gpYcg4KSw4KS/4KSV4KS+4KSu4KWAIOCkk+Cksy/gpLLgpL7gpIfgpKgg4KSG4KS54KWHIgorCisjOiBzcmMvc3RhdGRiLmM6MTczCittc2dpZCAic3RhdG92ZXJyaWRlIGZpbGUgY29udGFpbnMgZW1wdHkgbGluZSIKK21zZ3N0ciAi4KS44KWN4KSf4KWF4KSf4KST4KS14KSw4KSw4KS+4KSH4KShIOCkq+CkvuCkh+CksuCkruCkp+CljeCkr+ClhyDgpLDgpL/gpJXgpL7gpK7gpYAg4KST4KSzL+CksuCkvuCkh+CkqCDgpIbgpLngpYciCisKKyM6IHNyYy9zdGF0ZGIuYzoxNzggc3JjL3N0YXRkYi5jOjE5MCBzcmMvc3RhdGRiLmM6MjAyCisjLCBmdXp6eQorbXNnaWQgInN5bnRheCBlcnJvciBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAi4KS44KWN4KSf4KWF4KSf4KST4KS14KSw4KSw4KS+4KSH4KShIOCkq+CkvuCkh+CksiDgpIngpJjgpKHgpKPgpY3gpK/gpL7gpLgg4KSF4KSv4KS24KS44KWN4KS14KWAIgorCisjOiBzcmMvc3RhdGRiLmM6MTg2IHNyYy9zdGF0ZGIuYzoxOTggc3JjL3N0YXRkYi5jOjIxMAorIywgZnV6enkKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBsaW5lIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICIlZCDgpJPgpLPgpYDgpLXgpLAg4KSq4KWF4KSV4KWH4KSc4KSa4KWN4KSv4KS+IOCkqOCkvuCkteCkvuCkruCkp+CljeCkr+ClhyDgpIXgpKjgpKrgpYfgpJXgpY3gpLfgpL/gpKQg4KSJ4KSm4KWN4KSt4KS14KSy4KWH4KSy4KS+IOCkk+Cks+ClgOCkmuCkviDgpLbgpYfgpLXgpJ8v4KSP4KSj4KWN4KShIOCkkeCkqyDgpLLgpL7gpIfgpKgiCisKKyM6IHNyYy9zdGF0ZGIuYzoyMTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIm11bHRpcGxlIHN0YXR1c292ZXJyaWRlcyBwcmVzZW50IGZvciBmaWxlICclLjI1MHMnIgorbXNnc3RyICLgpLjgpY3gpJ/gpYXgpJ/gpJPgpLXgpLDgpLDgpL7gpIfgpKEg4KSr4KS+4KSH4KSyIGAlLjI1MHMnIgorCisjOiBzcmMvdHJpZ2NtZC5jOjQ2CisjLCBmdXp6eQorbXNnaWQgIlR5cGUgZHBrZy10cmlnZ2VyIC0taGVscCBmb3IgaGVscCBhYm91dCB0aGlzIHV0aWxpdHkuIgorbXNnc3RyICLgpK7gpKbgpKTgpYDgpLjgpL7gpKDgpYAg4KSh4KS/4KSq4KS/4KSV4KWH4KSc4KWALeCkpOCli+CkoeCkviAtLeCkruCkpuCkpCDgpJ/gpL7gpIfgpKog4KSV4KSw4KS+IgorCisjOiBzcmMvdHJpZ2NtZC5jOjUxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gJXMgcGFja2FnZSB0cmlnZ2VyIHV0aWxpdHkgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAi4KSh4KWH4KSs4KS/4KSF4KSoIGAlcycg4KSq4KWF4KSV4KWH4KScIOCkteCljeCkr+CkteCkuOCljeCkpeCkvuCkquCkqCDgpKrgpY3gpLDgpYvgpJfgpY3gpLDgpYXgpK4g4KSV4KWN4KS14KWH4KSw4KWAL+CktuCkguCkleCkviDgpLjgpL7gpKfgpKhcbiIKKworIzogc3JjL3RyaWdjbWQuYzo2NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbnM+IC4uLl0gPHRyaWdnZXItbmFtZT5cbiIKKyIgICAgICAgJXMgWzxvcHRpb25zPiAuLi5dIDxjb21tYW5kPlxuIgorIlxuIgorbXNnc3RyICIiCisi4KSJ4KSq4KWN4KSv4KWB4KSV4KWN4KSk4KSk4KS+OiAlcyBbPOCkquCksOCljeCkr+CkvuCkrz4gLi4uXSA84KSG4KSc4KWN4KSe4KS+PlxuIgorIlxuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC0tY2hlY2stc3VwcG9ydGVkICAgICAgICAgICAgICAgIENoZWNrIGlmIHRoZSBydW5uaW5nIGRwa2cgc3VwcG9ydHMgIgorInRyaWdnZXJzLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy90cmlnY21kLmM6ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgICAgICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyIgIC0tYnktcGFja2FnZT08cGFja2FnZT4gICAgICAgICAgIE92ZXJyaWRlIHRyaWdnZXIgYXdhaXRlciAobm9ybWFsbHkgc2V0XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ5IGRwa2cpLlxuIgorIiAgLS1uby1hd2FpdCAgICAgICAgICAgICAgICAgICAgICAgTm8gcGFja2FnZSBuZWVkcyB0byBhd2FpdCB0aGUgIgorInByb2Nlc3NpbmcuXG4iCisiICAtLW5vLWFjdCAgICAgICAgICAgICAgICAgICAgICAgICBKdXN0IHRlc3QgLSBkb24ndCBhY3R1YWxseSBjaGFuZ2UgIgorImFueXRoaW5nLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy90cmlnY21kLmM6MTUyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB0cmlnZ2VycyBkYXRhIGRpcmVjdG9yeSBub3QgeWV0IGNyZWF0ZWRcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvdHJpZ2NtZC5jOjE1NgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogdHJpZ2dlciByZWNvcmRzIG5vdCB5ZXQgaW4gZXhpc3RlbmNlXG4iCittc2dzdHIgIiIKKworIzogc3JjL3RyaWdjbWQuYzoyMDUKKyMsIGZ1enp5Cittc2dpZCAidGFrZXMgb25lIGFyZ3VtZW50LCB0aGUgdHJpZ2dlciBuYW1lIgorbXNnc3RyICItLSVzIOCkq+CkleCljeCkpCDgpI/gpJXgpJog4KSq4KSw4KWN4KSv4KS+4KSvIOCkmOClh+CkiSDgpLbgpJXgpKTgpYsgKC7gpKHgpYfgpKwg4KSr4KS+4KSH4KSy4KSo4KS+4KS1KSIKKworIzogc3JjL3RyaWdjbWQuYzoyMTAKK21zZ2lkICJtdXN0IGJlIGNhbGxlZCBmcm9tIGEgbWFpbnRhaW5lciBzY3JpcHQgKG9yIHdpdGggYSAtLWJ5LXBhY2thZ2Ugb3B0aW9uKSIKK21zZ3N0ciAiIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIxNQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiaWxsZWdhbCBhd2FpdGVkIHBhY2thZ2UgbmFtZSAnJS4yNTBzJzogJS4yNTBzIgorbXNnc3RyICJgJXMnIOCkleCljeCkt+Clh+CkpOCljeCksCwg4KSq4KWF4KSV4KWH4KSc4KSa4KWHIOCkqOCkvuCktSDgpIXgpK/gpYvgpJfgpY3gpK8gYCUuMjU1cyc6ICVzIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIyMQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCB0cmlnZ2VyIG5hbWUgYCUuMjUwcyc6ICUuMjUwcyIKK21zZ3N0ciAiYCVzJyDgpJXgpY3gpLfgpYfgpKTgpY3gpLAsIOCkquClheCkleClh+CknOCkmuClhyDgpKjgpL7gpLUg4KSF4KSv4KWL4KSX4KWN4KSvIGAlLjI1NXMnOiAlcyIKKworIzogc3JjL3RyaWdwcm9jLmM6MjUwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogY3ljbGUgZm91bmQgd2hpbGUgcHJvY2Vzc2luZyB0cmlnZ2VyczpcbiIKKyIgY2hhaW4gb2YgcGFja2FnZXMgd2hvc2UgdHJpZ2dlcnMgYXJlIG9yIG1heSBiZSByZXNwb25zaWJsZTpcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvdHJpZ3Byb2MuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiBwYWNrYWdlcycgcGVuZGluZyB0cmlnZ2VycyB3aGljaCBhcmUgb3IgbWF5IGJlIHVucmVzb2x2YWJsZTpcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvdHJpZ3Byb2MuYzoyODEKK21zZ2lkICJ0cmlnZ2VycyBsb29waW5nLCBhYmFuZG9uZWQiCittc2dzdHIgIiIKKworIzogc3JjL3RyaWdwcm9jLmM6MzEyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJQcm9jZXNzaW5nIHRyaWdnZXJzIGZvciAlcyAuLi5cbiIKK21zZ3N0ciAiJXPgpLjgpL7gpKDgpYAg4KSc4KWB4KSz4KS14KSj4KWAIOCkq+CkvuCkh+CksiDgpKrgpLDgpY3gpJwg4KSV4KSw4KSkIOCkhuCkueClhy4uLlxuIgorCisjOiBzcmMvdXBkYXRlLmM6NTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIi0tJXMgbmVlZHMgZXhhY3RseSBvbmUgUGFja2FnZXMgZmlsZSBhcmd1bWVudCIKK21zZ2lkICItLSVzIG5lZWRzIGV4YWN0bHkgb25lIFBhY2thZ2VzLWZpbGUgYXJndW1lbnQiCittc2dzdHIgIi0tJXPgpLLgpL4g4KSo4KWH4KSu4KSV4KS+IOCkj+CklSDgpKrgpYXgpJXgpYfgpJzgpYfgpLgg4KSr4KS+4KSH4KSyIOCkhuCksOCljeCkl+CljeCkr+ClgeCkruClh+CkqOCljeCkny/gpKrgpLDgpY3gpK/gpL7gpK8g4KSy4KS+4KSX4KSk4KWLIgorCisjOiBzcmMvdXBkYXRlLmM6NjIKK21zZ2lkICJ1bmFibGUgdG8gYWNjZXNzIGRwa2cgc3RhdHVzIGFyZWEgZm9yIGJ1bGsgYXZhaWxhYmxlIHVwZGF0ZSIKK21zZ3N0ciAiIgorIuCkruCli+CkoOCljeCkr+CkviDgpKrgpY3gpLDgpK7gpL7gpKPgpL7gpKQg4KSJ4KSq4KSy4KSs4KWN4KSnIOCkheCkuOCksuClh+CksuCljeCkr+CkviDgpIXgpKbgpY3gpK/gpK/gpL7gpLXgpKQg4KSu4KS+4KS54KS/4KSk4KWA4KS44KS+4KSg4KWAIOCkoeCkv+CkquCkv+CkleClh+Clm+CkvyDgpKbgpLDgpY3gpJzgpL7gpJrgpY3gpK/gpL4g4KSV4KWN4KS34KWH4KSk4KWN4KSw4KS+4KSkIOCkquCljeCksOCkteClh+CktiDgpJXgpLDgpYEgIgorIuCktuCkleCkpCDgpKjgpL7gpLngpYAiCisKKyM6IHNyYy91cGRhdGUuYzo2NAorbXNnaWQgImJ1bGsgYXZhaWxhYmxlIHVwZGF0ZSByZXF1aXJlcyB3cml0ZSBhY2Nlc3MgdG8gZHBrZyBzdGF0dXMgYXJlYSIKK21zZ3N0ciAiIgorIuCkruCli+CkoOCljeCkr+CkviDgpKrgpY3gpLDgpK7gpL7gpKPgpL7gpKQg4KSJ4KSq4KSy4KSs4KWN4KSnIOCkheCkuOCksuClh+CksuCljeCkr+CkviDgpIXgpKbgpY3gpK/gpK/gpL7gpLXgpKQg4KSu4KS54KS/4KSk4KWA4KS44KS+4KSg4KWAIOCkoeCkv+CkquCkv+CkleClh+CknOCkvyDgpKbgpLDgpY3gpJzgpL7gpJrgpY3gpK/gpL4g4KSV4KWN4KS34KWH4KSk4KWN4KSw4KS+4KSkICIKKyLgpLLgpL/gpLngpL/gpKPgpY3gpK/gpL7gpJrgpYAg4KSq4KSw4KS14KS+4KSo4KSX4KWAIOCksuCkvuCkl+CkpOClhyIKKworIzogc3JjL3VwZGF0ZS5jOjcxCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlcGxhY2luZyBhdmFpbGFibGUgcGFja2FnZXMgaW5mbywgdXNpbmcgJXMuXG4iCittc2dzdHIgIuCkieCkquCksuCkrOCljeCkpuCljeCkpyDgpIXgpLjgpLLgpYfgpLLgpYAg4KSq4KWF4KSV4KWH4KSc4KWH4KS44KSa4KWAIOCkruCkvuCkueCkv+CkpOClgCAlcy4g4KS14KS+4KSq4KSw4KWC4KSoIOCkrOCkpuCksuCkpCDgpIbgpLngpYcuXG4iCisKKyM6IHNyYy91cGRhdGUuYzo3NAorIywgYy1mb3JtYXQKK21zZ2lkICJVcGRhdGluZyBhdmFpbGFibGUgcGFja2FnZXMgaW5mbywgdXNpbmcgJXMuXG4iCittc2dzdHIgIuCkieCkquCksuCkrOCljeCkpuCljeCkpyDgpIXgpLjgpLLgpYfgpLLgpYAg4KSq4KWF4KSV4KWH4KSc4KWH4KS44KSa4KWAIOCkruCkvuCkueCkv+CkpOClgCAlcy4g4KS14KS+4KSq4KSw4KWC4KSoIOCkheCkpuCljeCkr+Ckr+CkvuCkteCkpCDgpJXgpLDgpKTgpL4g4KSv4KWH4KSk4KWHLlxuIgorCisjOiBzcmMvdXBkYXRlLmM6MTAxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJJbmZvcm1hdGlvbiBhYm91dCAlZCBwYWNrYWdlKHMpIHdhcyB1cGRhdGVkLlxuIgorbXNnaWQgIkluZm9ybWF0aW9uIGFib3V0ICVkIHBhY2thZ2Ugd2FzIHVwZGF0ZWQuXG4iCittc2dpZF9wbHVyYWwgIkluZm9ybWF0aW9uIGFib3V0ICVkIHBhY2thZ2VzIHdhcyB1cGRhdGVkLlxuIgorbXNnc3RyWzBdICIlZCDgpKrgpYXgpJXgpYfgpJzgpYfgpLjgpJrgpYAg4KSu4KS+4KS54KS/4KSk4KWAIOCkheCkpuCljeCkr+Ckr+CkvuCkteCkpCDgpIbgpLngpYcuXG4iCittc2dzdHJbMV0gIiVkIOCkquClheCkleClh+CknOClh+CkuOCkmuClgCDgpK7gpL7gpLngpL/gpKTgpYAg4KSF4KSm4KWN4KSv4KSv4KS+4KS14KSkIOCkhuCkueClhy5cbiIKKworIzogc3JjL3VwZGF0ZS5jOjExNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisib2Jzb2xldGUgJy0tJXMnIG9wdGlvbiwgdW5hdmFpbGFibGUgcGFja2FnZXMgYXJlIGF1dG9tYXRpY2FsbHkgY2xlYW5lZCB1cC4iCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBuYW1lICclLjUwcy4uLicgaXMgdG9vIGxvbmciCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoxMjkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGZpbGUgbmFtZSAnJS4yNTBzJyIKK21zZ3N0ciAi4KSJ4KSX4KSuIOCkq+CkvuCkh+CksiBgJS4yNTBzJyDgpIngpJjgpKHgpKTgpL4g4KSv4KWH4KSkIOCkqOCkvuCkueClgCIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoxODkKKyMsIGZ1enp5Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgY29udHJvbCBkaXJlY3RvcnkiCittc2dzdHIgIuCkn+Clh+CkruCljeCkqi/gpKTgpL7gpKTgpY3gpKrgpYHgpLDgpY3gpKTgpYAg4KSo4KS/4KSv4KSC4KSk4KWN4KSw4KSjIOCkoeCkv+CksOClh+CkleCljeCkn+CksOClgCDgpIngpJjgpKHgpKPgpY3gpK/gpL7gpLgg4KSF4KS24KSV4KWN4KSvICIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoxOTEKKyMsIGZ1enp5Cittc2dpZCAiY29udHJvbCBkaXJlY3RvcnkgaXMgbm90IGEgZGlyZWN0b3J5IgorbXNnc3RyICLgpK7gpL7gpLngpL/gpKTgpYDgpJrgpYAg4KSh4KS/4KSw4KWH4KSV4KWN4KSf4KSw4KWAIOCkteCkvuCkmuClgiDgpLbgpJXgpKQg4KSo4KS+4KS54KWAIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjE5MworIywgYy1mb3JtYXQKK21zZ2lkICJjb250cm9sIGRpcmVjdG9yeSBoYXMgYmFkIHBlcm1pc3Npb25zICUwM2xvIChtdXN0IGJlID49MDc1NSBhbmQgPD0wNzc1KSIKK21zZ3N0ciAi4KSo4KS/4KSv4KSC4KSk4KWN4KSw4KSjIOCkqOCkv+CksOCljeCkpuClh+CktuCkv+CkleClh+CkpCAlMDNsbyDgpJbgpLDgpL7gpKwg4KSq4KSw4KS14KS+4KSo4KSX4KWN4KSv4KS+IOCkhuCkueClh+CkpCAoPj0wNzU1IOCkhuCko+ClgCA8PTA3NzUg4KSG4KS14KS24KWN4KSv4KSVKSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAibWFpbnRhaW5lciBzY3JpcHQgYCUuNTBzJyBpcyBub3QgYSBwbGFpbiBmaWxlIG9yIHN5bWxpbmsiCittc2dzdHIgIuCkquCksOCkv+CksOCkleCljeCkt+CklSDgpKrgpLDgpL/gpK3gpL7gpLfgpL4gYCUuNTBzJyDgpLngpYAg4KSo4KS/4KS14KWN4KS14KSzIOCkruCknOCkleClguCksCDgpKvgpL7gpIfgpLIg4KSF4KSl4KS14KS+IOCkuOCkv+CkruCksuCkv+CkguCklSDgpKjgpL7gpLngpYAiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjA3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJtYWludGFpbmVyIHNjcmlwdCBgJS41MHMnIGhhcyBiYWQgcGVybWlzc2lvbnMgJTAzbG8gKG11c3QgYmUgPj0wNTU1IGFuZCAiCisiPD0wNzc1KSIKK21zZ3N0ciAiIgorIuCkquCksOCkv+CksOCkleCljeCkt+CklSDgpKrgpLDgpL/gpK3gpL7gpLfgpL4gYCUuNTBzJyDgpK7gpKfgpYcgJTAzbG8g4KSW4KSw4KS+4KSsIOCkquCksOCkteCkvuCkqOCkl+CljeCkr+CkviDgpIbgpLngpYfgpKQgKD49MDU1NSDgpIbgpKPgpYAgPD0wNzc1IOCkhuCkteCktuCljeCkr+CklSkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjExCisjLCBjLWZvcm1hdAorbXNnaWQgIm1haW50YWluZXIgc2NyaXB0IGAlLjUwcycgaXMgbm90IHN0YXR0YWJsZSIKK21zZ3N0ciAi4KSq4KSw4KS/4KSw4KSV4KWN4KS34KSVIOCkquCksOCkv+CkreCkvuCkt+CkviBgJS41MHMnIOCkuOCljeCkn+ClheCknyDgpJXgpLDgpKPgpY3gpK/gpL7gpK/gpYvgpJfgpY3gpK8g4KSo4KS+4KS54KWAIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjIzNworbXNnaWQgImVycm9yIG9wZW5pbmcgY29uZmZpbGVzIGZpbGUiCittc2dzdHIgIuCkleCli+ClheCkqOCljeCkq+Ckq+CkvuCkiOCksuCljeCkuCDgpKvgpL7gpIfgpLIg4KSJ4KSY4KSh4KSk4KS+4KSo4KS+IOCkpOCljeCksOClgeCkn+ClgCIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNDYKK21zZ2lkICJlbXB0eSBzdHJpbmcgZnJvbSBmZ2V0cyByZWFkaW5nIGNvbmZmaWxlcyIKK21zZ3N0ciAi4KSV4KWL4KWF4KSo4KWN4KSr4KSr4KS+4KSI4KSyIOCkteCkvuCkmuCkpOCkvuCkqOCkviDgpI/gpKvgpJfgpYfgpJ/gpY3gpLgg4KSV4KSh4KWC4KSoIOCksOCkv+CkleCkvuCkruClgCDgpLbgpY3gpLDgpYPgpILgpJbgpLLgpL4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjUxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBuYW1lICclLjUwcy4uLicgaXMgdG9vIGxvbmcsIG9yIG1pc3NpbmcgZmluYWwgbmV3bGluZSIKK21zZ3N0ciAi4KSn4KWL4KSV4KWN4KSv4KS+4KSa4KWAIOCkuOClguCkmuCkqOCkviwg4KSV4KWL4KWF4KSo4KWN4KSr4KSr4KS+4KSI4KSy4KSa4KWHIOCkqOCkvuCktSBgJS41MHMuLi4n4KSW4KWB4KSq4KSaIOCkruCli+CkoOClhywg4KSV4KS/4KSC4KS14KS+IOCkl+CkvuCkr+CkrCDgpIXgpILgpKTgpL/gpK4g4KSo4KWN4KSv4KWC4KSy4KS+4KSI4KSoXG4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjY0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBmaWxlbmFtZSAnJXMnIGNvbnRhaW5zIHRyYWlsaW5nIHdoaXRlIHNwYWNlcyIKK21zZ3N0ciAi4KSn4KWL4KSV4KWN4KSv4KS+4KSa4KWAIOCkuOClguCkmuCkqOCkviwgYCVzJyDgpJXgpYvgpYXgpKjgpY3gpKvgpKvgpL7gpIjgpLLgpJrgpY3gpK/gpL4g4KSo4KS+4KS14KS+4KSkIOCkquCkvuCkoOClgCDgpLbgpY3gpLXgpYfgpKQg4KSw4KS/4KSV4KWN4KSkIOCknOCkvuCkl+CkvlxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI2NgorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBgJS4yNTBzJyBkb2VzIG5vdCBhcHBlYXIgaW4gcGFja2FnZSIKK21zZ3N0ciAi4KSV4KWL4KWF4KSo4KWN4KSr4KSr4KS+4KSI4KSyIGAlLjI1MHMnIOCkquClheCkleClh+CknOCkruCkp+ClhyDgpIbgpKLgpLPgpKQg4KSo4KS+4KS54KWAIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI2OAorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBgJS4yNTBzJyBpcyBub3Qgc3RhdHRhYmxlIgorbXNnc3RyICLgpJXgpYvgpYXgpKjgpY3gpKvgpKvgpL7gpIjgpLIgYCUuMjUwcycg4KS44KWN4KSf4KWF4KSfIOCkleCksOCko+CljeCkr+CkvuCkr+Cli+Ckl+CljeCkryDgpKjgpL7gpLngpYAiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjcwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSAnJXMnIGlzIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgIuCkp+Cli+CkleCljeCkr+CkvuCkmuClgCDgpLjgpYLgpJrgpKjgpL4sIOCkleCli+ClheCkqOCljeCkq+Ckq+CkvuCkiOCksiBgJXMnIOCkueClgCDgpKjgpL/gpLXgpY3gpLXgpLMg4KSu4KSc4KSV4KWC4KSwIOCkq+CkvuCkh+CksiDgpKjgpL7gpLngpYBcbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNzQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIG5hbWUgJyVzJyBpcyBkdXBsaWNhdGVkIgorbXNnc3RyICLgpJfgpYHgpLLgpL7gpK4g4KSo4KS+4KS1ICVzIOCkmuClgCDgpKrgpYHgpKjgpLDgpL7gpLXgpYPgpKTgpY3gpKTgpYAiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6Mjg3Cittc2dpZCAiZXJyb3IgcmVhZGluZyBjb25mZmlsZXMgZmlsZSIKK21zZ3N0ciAi4KSV4KWL4KWF4KSo4KWN4KSr4KSr4KS+4KSI4KSy4KWN4KS4IOCkq+CkvuCkh+CksiDgpLXgpL7gpJrgpKTgpL7gpKjgpL4g4KSk4KWN4KSw4KWB4KSf4KWAIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjMzOQorbXNnaWQgInBhY2thZ2UgbmFtZSBoYXMgY2hhcmFjdGVycyB0aGF0IGFyZW4ndCBsb3dlcmNhc2UgYWxwaGFudW1zIG9yIGAtKy4nIgorbXNnc3RyICLgpKrgpYXgpJXgpYfgpJzgpJrgpY3gpK/gpL4g4KSo4KS+4KS14KS+4KSu4KSn4KWN4KSv4KWHIOCkheCktuClgCDgpIXgpJXgpY3gpLfgpLDgpYcg4KSG4KS54KWH4KSkIOCknOClgCDgpLLgpYvgpIXgpLDgpJXgpYfgpLgg4KS44KSC4KSW4KWN4KSv4KS+4KSF4KSV4KWN4KS34KSw4KWHIOCkleCkv+CkguCkteCkviBgLSsuJyDgpKjgpL7gpLngpYDgpKQiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MzQxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICInJXMnIGNvbnRhaW5zIHVzZXItZGVmaW5lZCBQcmlvcml0eSB2YWx1ZSAnJXMnIgorbXNnc3RyICLgpKTgpL7gpJXgpL/gpKYsIGAlcyfgpK7gpKfgpY3gpK/gpYcg4KS14KS+4KSq4KSw4KSj4KS+fuCkr+CkvuCkguCkqOClgCDgpLjgpY3gpKrgpLfgpY3gpJ8g4KSo4KWH4KSu4KWB4KSoIOCkpuCkv+CksuClh+CksuCljeCkr+CkviDgpIXgpJfgpY3gpLDgpLjgpY3gpKXgpL7gpKjgpYAg4KSV4KS/4KSu4KSC4KSk4KWAIGAlcycg4KSG4KS54KWH4KSkIFxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjM0NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBjb250YWlucyB1c2VyLWRlZmluZWQgZmllbGQgJyVzJyIKK21zZ3N0ciAi4KSk4KS+4KSV4KS/4KSmLCBgJXMn4KSu4KSn4KWN4KSv4KWHIOCkr+ClgeCkneCksC3gpKHgpL/gpKvgpL7gpIfgpKjgpY3gpKEv4KS14KS+4KSq4KSw4KSj4KS+fuCkr+CkvuCkguCkqOClgCDgpLjgpY3gpKrgpLfgpY3gpJ8g4KSo4KWH4KSu4KWB4KSoIOCkpuCkv+CksuClh+CksuClhyDgpJXgpY3gpLfgpYfgpKTgpY3gpLAgYCVzJyDgpIbgpLngpYdcbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzozNTgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nICVkIHdhcm5pbmcgYWJvdXQgdGhlIGNvbnRyb2wgZmlsZShzKVxuIgorbXNnaWRfcGx1cmFsICJpZ25vcmluZyAlZCB3YXJuaW5ncyBhYm91dCB0aGUgY29udHJvbCBmaWxlKHMpXG4iCittc2dzdHJbMF0gIiIKKyLgpKHgpL/gpKrgpL/gpJXgpYfgpJzgpYAt4KSh4KWH4KSsOiDgpKjgpL/gpK/gpILgpKTgpY3gpLDgpKMg4KSr4KS+4KSH4KSyKOCksuClgCkg4KSs4KSm4KWN4KSm4KSy4KSa4KWN4KSv4KS+ICVkIOCkp+Cli+CkleCljeCkr+CkvuCkmuCljeCkr+CkviDgpLjgpYLgpJrgpKjgpL7gpILgpJXgpKHgpYcg4KSm4KWB4KSw4KWN4KSy4KSV4KWN4KS3IOCkleClh+CksuClhyDgpJzgpL7gpKTgpYfgpK9cbiIKK21zZ3N0clsxXSAiIgorIuCkoeCkv+CkquCkv+CkleClh+CknOClgC3gpKHgpYfgpKw6IOCkqOCkv+Ckr+CkguCkpOCljeCksOCkoyDgpKvgpL7gpIfgpLIo4KSy4KWAKSDgpKzgpKbgpY3gpKbgpLLgpJrgpY3gpK/gpL4gJWQg4KSn4KWL4KSV4KWN4KSv4KS+4KSa4KWN4KSv4KS+IOCkuOClguCkmuCkqOCkvuCkguCkleCkoeClhyDgpKbgpYHgpLDgpY3gpLLgpJXgpY3gpLcg4KSV4KWH4KSy4KWHIOCknOCkvuCkpOClh+Ckr1xuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQwMyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQyOQorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhIDxkaXJlY3Rvcnk+IGFyZ3VtZW50IgorbXNnc3RyICItLSVzIOCkuOCkvuCkoOClgCAgPOCkqOCkv+CksOCljeCkpuClh+CktuCkv+CkleCkvj4g4KSq4KSw4KWN4KSv4KS+4KSv4KS+4KSa4KWAIOCkl+CksOCknCDgpIbgpLngpYciCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDA5Cittc2dpZCAiLS1idWlsZCB0YWtlcyBhdCBtb3N0IHR3byBhcmd1bWVudHMiCittc2dzdHIgIiAtLeCkrOCkv+CksuCljeCkoSDgpJzgpL7gpLjgpY3gpKTgpYDgpKQg4KSc4KS+4KS44KWN4KSkIOCkpuCli+CkqCDgpIbgpLDgpY3gpJfgpY3gpK/gpYHgpK7gpYfgpKjgpY3gpJ/gpLjgpY0v4KSq4KSw4KWN4KSv4KS+4KSvIOCkmOClh+CkpOClhyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoZWNrIGZvciBleGlzdGVuY2Ugb2YgYXJjaGl2ZSBgJS4yNTBzJyIKK21zZ3N0ciAiYCUuMjUwcycg4KSG4KSw4KWN4KSV4KS+4KSH4KS14KWN4KS54KSa4KWHIOCkheCkuOCljeCkpOCkv+CkpOCljeCktSDgpKTgpKrgpL7gpLjgpKPgpY3gpK/gpL7gpLgg4KSF4KS44KSu4KSw4KWN4KSlIOCkhuCkueClhyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzAKK21zZ2lkICJ0YXJnZXQgaXMgZGlyZWN0b3J5IC0gY2Fubm90IHNraXAgY29udHJvbCBmaWxlIGNoZWNrIgorbXNnc3RyICLgpLLgpJXgpY3gpLfgpY3gpK8g4KSh4KS/4KSw4KWH4KSV4KWN4KSf4KSw4KWAIOCkhuCkueClhyAtIOCkqOCkv+Ckr+CkguCkpOCljeCksOCkoyDgpKvgpL7gpIfgpLIg4KSk4KSq4KS+4KS44KSj4KWAIOCkl+CkvuCks+ClgiDgpLbgpJXgpKQg4KSo4KS+4KS54KWAIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQzMQorbXNnaWQgIm5vdCBjaGVja2luZyBjb250ZW50cyBvZiBjb250cm9sIGFyZWEuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDMyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJkcGtnLWRlYjogYnVpbGRpbmcgYW4gdW5rbm93biBwYWNrYWdlIGluICclcycuXG4iCittc2dzdHIgIuCkoeCkv+CkquCkv+CkleClh+CknOClgC3gpKHgpYfgpKw6IGAlcycg4KSu4KSn4KWHIGAlcycg4KSq4KWF4KSV4KWH4KScIOCkqOCkv+CksOCljeCkruCkvuCkoyDgpJXgpYfgpLLgpYAg4KSc4KS+4KSkIOCkhuCkueClh+CkpFxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQzOQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnLWRlYjogYnVpbGRpbmcgcGFja2FnZSBgJXMnIGluIGAlcycuXG4iCittc2dzdHIgIuCkoeCkv+CkquCkv+CkleClh+CknOClgC3gpKHgpYfgpKw6IGAlcycg4KSu4KSn4KWHIGAlcycg4KSq4KWF4KSV4KWH4KScIOCkqOCkv+CksOCljeCkruCkvuCkoyDgpJXgpYfgpLLgpYAg4KSc4KS+4KSkIOCkhuCkueClh+CkpFxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ2NyBkcGtnLWRlYi9idWlsZC5jOjUyMQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIG1ha2UgdG1wZmlsZSAoZGF0YSkiCittc2dpZCAiZmFpbGVkIHRvIG1ha2UgdGVtcG9yYXJ5IGZpbGUgKCVzKSIKK21zZ3N0ciAi4KSf4KWA4KSP4KSu4KSq4KWA4KSr4KS+4KSI4KSyICjgpKHgpYfgpJ/gpL4pIOCkrOCkqOCkteCkpOCkviDgpIbgpLLgpYAg4KSo4KS+4KS54KWAIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ2NyBkcGtnLWRlYi9idWlsZC5jOjQ3MCBkcGtnLWRlYi9idWlsZC5jOjQ3NworIzogZHBrZy1kZWIvYnVpbGQuYzo0ODUgZHBrZy1kZWIvYnVpbGQuYzo0OTQgZHBrZy1kZWIvYnVpbGQuYzo0OTkKKyMsIGZ1enp5CisjfCBtc2dpZCAiY29udHJvbCBhcmVhIgorbXNnaWQgImNvbnRyb2wgbWVtYmVyIgorbXNnc3RyICLgpKjgpL/gpK/gpILgpKTgpY3gpLDgpKMg4KSV4KWN4KS34KWH4KSk4KWN4KSwIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ3MCBkcGtnLWRlYi9idWlsZC5jOjUyNAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIHVubGluayB0bXBmaWxlIChkYXRhKSwgJXMiCittc2dpZCAiZmFpbGVkIHRvIHVubGluayB0ZW1wb3JhcnkgZmlsZSAoJXMpLCAlcyIKK21zZ3N0ciAi4KSf4KWA4KSP4KSu4KSq4KWA4KSr4KS+4KSI4KSyICjgpKHgpYfgpJ/gpL4pLCAlcyDgpIXgpKjgpLLgpL/gpILgpJUg4KSV4KSw4KSk4KS+IOCkhuCksuClgCDgpKjgpL7gpLngpYAiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDg1IGRwa2ctZGViL2J1aWxkLmM6NTkzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gcmV3aW5kIHRtcGZpbGUgKGRhdGEpIgorbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdGVtcG9yYXJ5IGZpbGUgKCVzKSIKK21zZ3N0ciAi4KSf4KWA4KSP4KSu4KSq4KWA4KSr4KS+4KSI4KSyICjgpKHgpYfgpJ/gpL4pIOCksOCkv+CkteCkvuCkh+CkguCkoSDgpJXgpLDgpKTgpL4g4KSG4KSy4KWAIOCkqOCkvuCkueClgCIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0OTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBzdGF0IHRlbXBvcmFyeSBmaWxlICglcykiCittc2dzdHIgIuCkn+ClgOCkj+CkruCkquClgOCkq+CkvuCkiOCksiAo4KSh4KWH4KSf4KS+KSDgpKzgpKjgpLXgpKTgpL4g4KSG4KSy4KWAIOCkqOCkvuCkueClgCIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0OTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igd3JpdGluZyBgJXMnIgorbXNnc3RyICJgJXMnIOCksuCkv+CkueCkv+CkpOCkvuCkqOCkviDgpKTgpY3gpLDgpYHgpJ/gpYAiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTIxIGRwa2ctZGViL2J1aWxkLmM6NTI0IGRwa2ctZGViL2J1aWxkLmM6NTQ2CisjOiBkcGtnLWRlYi9idWlsZC5jOjU3MiBkcGtnLWRlYi9idWlsZC5jOjU4MCBkcGtnLWRlYi9idWlsZC5jOjU5MworIywgZnV6enkKKyN8IG1zZ2lkICJiZXR3ZWVuIG1lbWJlcnMiCittc2dpZCAiZGF0YSBtZW1iZXIiCittc2dzdHIgIuCkuOCkpuCkuOCljeCkr+CkvuCkguCkpuCksOCkruCljeCkr+CkvuCkqCIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo1NzEgZHBrZy1kZWIvYnVpbGQuYzo1ODAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byB3cml0ZSBmaWxlbmFtZSB0byB0YXIgcGlwZSAoZGF0YSkiCittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIGZpbGVuYW1lIHRvIHRhciBwaXBlICglcykiCittc2dzdHIgIuCkn+CkvuCksCDgpKrgpL7gpIfgpKogKOCkoeClh+Ckn+Ckvikg4KSkIOCkq+CkvuCkh+CksuCkqOCkvuCkriDgpLLgpL/gpLngpL/gpKTgpL4g4KSG4KSy4KWHIOCkqOCkvuCkueClgCIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo1ODQKK21zZ2lkICI8Y29tcHJlc3M+IGZyb20gdGFyIC1jZiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6NjEgZHBrZy1kZWIvZXh0cmFjdC5jOjYzCittc2dpZCAic2hlbGwgY29tbWFuZCB0byBtb3ZlIGZpbGVzIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzo3MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBmaWxlIGluICVzIGluICUuMjU1cyIKK21zZ3N0ciAiJS4yNTVzIOCkpOClgOCksiAlcyDgpK7gpKfgpYDgpLIg4KSr4KS+4KSH4KSy4KSa4KS+IOCkheCkqOCkquClh+CkleCljeCkt+Ckv+CkpCDgpLbgpYfgpLXgpJ8iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzo3MgorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciByZWFkaW5nICVzIGZyb20gZmlsZSAlLjI1NXMiCittc2dzdHIgIiUuMjU1cyDgpKvgpL7gpIfgpLIg4KSu4KSn4KWB4KSoICVzIOCkteCkvuCkmuCkpOCkvuCkqOCkviDgpKTgpY3gpLDgpYHgpJ/gpYAiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxMjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgYXJjaGl2ZSBgJS4yNTVzJyIKK21zZ3N0ciAi4KSG4KSw4KWN4KSV4KS+4KSH4KS1IGAlLjI1NXMnIOCkteCkvuCkmuCkpOCkviDgpIbgpLLgpYcg4KSo4KS+4KS54KWAIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTI3Cittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGFyY2hpdmUiCittc2dzdHIgIuCkhuCksOCljeCkleCkvuCkh+CktSDgpI/gpKvgpLjgpY3gpJ/gpYXgpJ8g4KSV4KSw4KSk4KS+IOCkhuCksuClhyDgpKjgpL7gpLngpYAiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxMzEKKyMsIGZ1enp5CisjfCBtc2dpZCAiYXJjaGl2ZSBoYXMgbm8gZG90IGluIHZlcnNpb24gbnVtYmVyIgorbXNnaWQgImFyY2hpdmUgbWFnaWMgdmVyc2lvbiBudW1iZXIiCittc2dzdHIgIuCkhuCksOCljeCkleCkvuCkh+CktSDgpK7gpKfgpYDgpLIg4KSG4KS14KWD4KSk4KWN4KSk4KWAIOCkleCljeCksOCkruCkvuCkguCkleCkvuCkpCDgpKzgpL/gpILgpKbgpYIg4KSo4KS+4KS54KWAIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTQzCisjLCBmdXp6eQorI3wgbXNnaWQgImFyY2hpdmUgaGFzIG5vIG5ld2xpbmVzIGluIGhlYWRlciIKK21zZ2lkICJhcmNoaXZlIG1lbWJlciBoZWFkZXIiCittc2dzdHIgIuCkhuCksOCljeCkleCkvuCkh+CktSDgpK7gpKfgpYDgpLIg4KS24KS/4KSw4KWN4KS34KSV4KS+4KSu4KSn4KWHIOCkqOCljeCkr+ClgeCksuCkvuCkh+CkqCDgpKjgpL7gpLngpYAiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNDgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBwYXJ0IG51bWJlciIKK21zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgYXJjaGl2ZSBoZWFkZXIgbWFnaWMiCittc2dzdHIgIuCkq+CkvuCkh+CksiBgJS4yNTBzJyDgpK3gpY3gpLDgpLfgpY3gpJ8g4KSG4KS54KWHIC0g4KSW4KSw4KS+4KSsIOCkreCkvuCklyDgpJXgpY3gpLDgpK7gpL7gpILgpJUiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBub3QgYSBkZWJpYW4gYmluYXJ5IGFyY2hpdmUgKHRyeSBkcGtnLXNwbGl0PykiCittc2dzdHIgIuCkq+CkvuCkh+CksiBgJS4yNTBzJyDgpLngpYAg4KSh4KWH4KSs4KS/4KSv4KSoIOCkrOCkvuCkr+CkqOCksOClgCDgpIbgpLDgpY3gpJXgpL7gpIfgpLUg4KSo4KS+4KS54KWAICAo4KSh4KS/4KSq4KS/4KSV4KWH4KSc4KWALeCkuOCljeCkquCljeCksuCkv+CknyDgpLXgpL7gpKrgpLDgpYHgpKgg4KSq4KS54KS+PykiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNTkKKyMsIGZ1enp5CisjfCBtc2dpZCAiYXJjaGl2ZSBoYXMgbm8gZG90IGluIHZlcnNpb24gbnVtYmVyIgorbXNnaWQgImFyY2hpdmUgaW5mb3JtYXRpb24gaGVhZGVyIG1lbWJlciIKK21zZ3N0ciAi4KSG4KSw4KWN4KSV4KS+4KSH4KS1IOCkruCkp+ClgOCksiDgpIbgpLXgpYPgpKTgpY3gpKTgpYAg4KSV4KWN4KSw4KSu4KS+4KSC4KSV4KS+4KSkIOCkrOCkv+CkguCkpuClgiDgpKjgpL7gpLngpYAiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNjIKK21zZ2lkICJhcmNoaXZlIGhhcyBubyBuZXdsaW5lcyBpbiBoZWFkZXIiCittc2dzdHIgIuCkhuCksOCljeCkleCkvuCkh+CktSDgpK7gpKfgpYDgpLIg4KS24KS/4KSw4KWN4KS34KSV4KS+4KSu4KSn4KWHIOCkqOCljeCkr+ClgeCksuCkvuCkh+CkqCDgpKjgpL7gpLngpYAiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNjUKK21zZ2lkICJhcmNoaXZlIGhhcyBubyBkb3QgaW4gdmVyc2lvbiBudW1iZXIiCittc2dzdHIgIuCkhuCksOCljeCkleCkvuCkh+CktSDgpK7gpKfgpYDgpLIg4KSG4KS14KWD4KSk4KWN4KSk4KWAIOCkleCljeCksOCkruCkvuCkguCkleCkvuCkpCDgpKzgpL/gpILgpKbgpYIg4KSo4KS+4KS54KWAIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTY4CisjLCBjLWZvcm1hdAorbXNnaWQgImFyY2hpdmUgdmVyc2lvbiAlLjI1MHMgbm90IHVuZGVyc3Rvb2QsIGdldCBuZXdlciBkcGtnLWRlYiIKK21zZ3N0ciAi4KSG4KSw4KWN4KSV4KS+4KSH4KS1IOCkhuCkteClg+CkpOCljeCkpOClgCAlLjI1MHMg4KS44KSu4KSc4KSkIOCkqOCkvuCkueClgCwg4KSo4KS14KWA4KSoIOCkoeCkv+CkquCkv+CkleClh+CknOClgC3gpKHgpYfgpKwg4KSu4KS/4KSz4KS14KS+IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTc5IGRwa2ctZGViL2V4dHJhY3QuYzoyMDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInNraXBwZWQgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ2lkICJza2lwcGVkIGFyY2hpdmUgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ3N0ciAiJXMg4KSu4KSn4KWA4KSyIOCkuOCkpuCkuOCljeCkryDgpKHgpYfgpJ/gpL4g4KS44KWL4KSh4KWC4KSoIOCkpuCkv+CksuCkviIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE5NAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZSBgJS4yNTBzJyBjb250YWlucyB1bnVuZGVyc3Rvb2QgZGF0YSBtZW1iZXIgJS4qcywgZ2l2aW5nIHVwIgorbXNnaWQgImFyY2hpdmUgJyUuMjUwcycgY29udGFpbnMgbm90IHVuZGVyc3Rvb2QgZGF0YSBtZW1iZXIgJS4qcywgZ2l2aW5nIHVwIgorbXNnc3RyICLgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KSu4KSn4KWHIOCkqCDgpLjgpK7gpJzgpKPgpL7gpLDgpL4g4KSh4KWH4KSf4KS+IOCkuOCkpuCkuOCljeCkryAlLipzIOCkhuCkueClhywg4KS44KWL4KSh4KWB4KSoIOCkpuClh+CkpCDgpIbgpLngpYciCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxOTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgY29udGFpbnMgdHdvIGNvbnRyb2wgbWVtYmVycywgZ2l2aW5nIHVwIgorbXNnaWQgImFyY2hpdmUgJyUuMjUwcycgY29udGFpbnMgdHdvIGNvbnRyb2wgbWVtYmVycywgZ2l2aW5nIHVwIgorbXNnc3RyICLgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KSu4KSn4KWHIOCkpuCli+CkqCDgpKjgpL/gpK/gpILgpKTgpY3gpLDgpKMg4KS44KSm4KS44KWN4KSvIOCkhuCkueClh+CkpCwg4KS44KWL4KSh4KWB4KSoIOCkpuClh+CkpCDgpIbgpLngpYciCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyMTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIgbmV3IGRlYmlhbiBwYWNrYWdlLCB2ZXJzaW9uICVzLlxuIgorI3wgIiBzaXplICVsZCBieXRlczogY29udHJvbCBhcmNoaXZlPSAlemkgYnl0ZXMuXG4iCittc2dpZCAiIgorIiBuZXcgZGViaWFuIHBhY2thZ2UsIHZlcnNpb24gJXMuXG4iCisiIHNpemUgJWpkIGJ5dGVzOiBjb250cm9sIGFyY2hpdmU9ICVqZCBieXRlcy5cbiIKK21zZ3N0ciAiIgorIuCkqOCkteClgOCkqCDgpKHgpYfgpKzgpL/gpK/gpKgg4KSq4KWF4KSV4KWH4KScLCDgpIbgpLXgpYPgpKTgpY3gpKTgpYAgJXMuXG4iCisi4KSG4KSV4KS+4KSwICVsZCDgpKzgpL7gpIfgpJ/gpY3gpLg6IOCkqOCkv+Ckr+CkguCkpOCljeCksOCkoyDgpIbgpLDgpY3gpJXgpL7gpIfgpLU9ICV6aSDgpKzgpL7gpIfgpJ/gpY3gpLguXG4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyMzIKK21zZ2lkICJhcmNoaXZlIGNvbnRyb2wgbWVtYmVyIHNpemUiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIzNQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYXJjaGl2ZSBoYXMgbWFsZm9ybWF0dGVkIGNvbnRyb2wgbGVuZ3RoIGAlcyciCittc2dpZCAiYXJjaGl2ZSBoYXMgbWFsZm9ybWF0dGVkIGNvbnRyb2wgbWVtYmVyIHNpemUgJyVzJyIKK21zZ3N0ciAi4KSG4KSw4KWN4KSV4KS+4KSH4KS14KSu4KSn4KWA4KSyIOCkqOCkv+Ckr+CkguCkpOCljeCksOCkoyDgpLLgpL7gpILgpKzgpYAgYCVzJyDgpJrgpYcg4KSr4KWJ4KSw4KSu4KWF4KSfIOCkmuClgeCkleClgOCkmuClhyDgpIbgpLngpYciCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNDIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInNraXBwZWQgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ2lkICJza2lwcGVkIGFyY2hpdmUgY29udHJvbCBtZW1iZXIgZGF0YSBmcm9tICVzIgorbXNnc3RyICIlcyDgpK7gpKfgpYDgpLIg4KS44KSm4KS44KWN4KSvIOCkoeClh+Ckn+CkviDgpLjgpYvgpKHgpYLgpKgg4KSm4KS/4KSy4KS+IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjQ2CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiIG9sZCBkZWJpYW4gcGFja2FnZSwgdmVyc2lvbiAlcy5cbiIKKyN8ICIgc2l6ZSAlbGQgYnl0ZXM6IGNvbnRyb2wgYXJjaGl2ZT0gJXppLCBtYWluIGFyY2hpdmU9ICVsZC5cbiIKK21zZ2lkICIiCisiIG9sZCBkZWJpYW4gcGFja2FnZSwgdmVyc2lvbiAlcy5cbiIKKyIgc2l6ZSAlamQgYnl0ZXM6IGNvbnRyb2wgYXJjaGl2ZT0gJWpkLCBtYWluIGFyY2hpdmU9ICVqZC5cbiIKK21zZ3N0ciAiIgorIuCknOClgeCkqOClhyDgpKHgpYfgpKzgpL/gpK/gpKgg4KSq4KWF4KSV4KWH4KScLCDgpIbgpLXgpYPgpKTgpY3gpKTgpYAgJXMuXG4iCisi4KSG4KSV4KS+4KSwICVsZCDgpKzgpL7gpIfgpJ/gpY3gpLg6IOCkqOCkv+Ckr+CkguCkpOCljeCksOCkoyDgpIbgpLDgpY3gpJXgpL7gpIfgpLU9ICV6aSwg4KSu4KWB4KSW4KWN4KSvIOCkhuCksOCljeCkleCkvuCkh+CktT0gJWxkLlxuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjU1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZy1kZWI6IGZpbGUgbG9va3MgbGlrZSBpdCBtaWdodCBiZSBhbiBhcmNoaXZlIHdoaWNoIGhhcyBiZWVuXG4iCisiZHBrZy1kZWI6ICAgIGNvcnJ1cHRlZCBieSBiZWluZyBkb3dubG9hZGVkIGluIEFTQ0lJIG1vZGVcbiIKK21zZ3N0ciAiIgorIuCkoeCkv+CkquCkv+CkleClh+CknOClgC3gpKHgpYfgpKw6IOCkq+CkvuCkh+CksiDgpIbgpLDgpY3gpJXgpL7gpIfgpLUg4KSF4KS44KSy4KWN4KSv4KS+4KS44KS+4KSw4KSW4KWAIOCkteCkvuCkn+CkpOClhywg4KSc4KWAXG4iCisi4KSh4KS/4KSq4KS/4KSV4KWH4KSc4KWALeCkoeClh+CkrDog4KSG4KS44KWN4KSV4KWAIOCkquCkpuCljeCkp+CkpOClgOCkpCDgpKHgpL7gpIngpKjgpLLgpYvgpKEg4KSd4KS+4KSy4KWN4KSv4KS+4KSo4KWHIOCkreCljeCksOCkt+CljeCknyDgpJ3gpL7gpLLgpYAg4KSG4KS54KWHXG4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCUuMjU1cycgaXMgbm90IGEgZGViaWFuIGZvcm1hdCBhcmNoaXZlIgorbXNnc3RyICJgJS4yNTVzJyDgpLngpYcg4KSh4KWH4KSs4KS/4KSv4KSoIOCkq+ClieCksOCkruClheCknyDgpIbgpLDgpY3gpJXgpL7gpIfgpLUg4KSo4KS+4KS54KWAIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjY2Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIHRvIHBpcGUgaW4gY29weSIKK21zZ3N0ciAi4KSq4KWN4KSw4KSk4KS/4KSy4KS/4KSq4KWA4KSk4KWA4KSyIOCkquCkvuCkh+CkquCkruCkp+ClhyDgpLLgpYfgpJbgpKgg4KSV4KSw4KSk4KS+IOCkhuCksuClhyDgpKjgpL7gpLngpYAiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNjgKK21zZ2lkICJmYWlsZWQgdG8gY2xvc2UgcGlwZSBpbiBjb3B5IgorbXNnc3RyICLgpKrgpY3gpLDgpKTgpL/gpLLgpL/gpKrgpYDgpKTgpYDgpLIg4KSq4KS+4KSH4KSqIOCkrOCkguCkpiDgpJXgpLDgpKTgpL4g4KSG4KSy4KS+IOCkqOCkvuCkueClgCIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI4NAorbXNnaWQgImRhdGEiCittc2dzdHIgIuCkoeClh+Ckn+CkviIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMwNworbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byBkaXJlY3RvcnkiCittc2dzdHIgIuCkqOCkv+CksOCljeCkpuClh+CktuCkv+CkleClh+CkpCDgpLjgpYDgpI/gpJrgpKHgpL/gpIbgpK/gpIbgpLAg4KSV4KSw4KSk4KS+IOCkhuCksuClhyDgpKjgpL7gpLngpYAiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozMTAKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGRpcmVjdG9yeSIKK21zZ3N0ciAi4KSo4KS/4KSw4KWN4KSm4KWH4KS24KS/4KSV4KS+IOCkrOCkqOCkteCkpOCkviDgpIbgpLLgpYAg4KSo4KS+4KS54KWAIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzEyCittc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIGRpcmVjdG9yeSBhZnRlciBjcmVhdGluZyBpdCIKK21zZ3N0ciAi4KSo4KS/4KSw4KWN4KSm4KWH4KS24KS/4KSV4KS+IOCkrOCkqOCkteCksuCljeCkr+CkvuCkqOCkguCkpOCksCDgpKTgpL/gpJrgpY3gpK/gpL7gpKQg4KS44KWA4KSP4KSa4KSh4KS/4KSG4KSv4KSG4KSwIOCkleCksOCkpOCkviDgpIbgpLLgpYcg4KSo4KS+4KS54KWAIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzIzCisjLCBmdXp6eQorbXNnaWQgIjxkZWNvbXByZXNzPiIKK21zZ3N0ciAiJXM6IOCkoeCkv+CkleCkvuCkgeCkguCkquCljeCksOClh+CktuCkqCIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMyNQorIywgZnV6enkKK21zZ2lkICJwYXN0ZSIKK21zZ3N0ciAiIOCkruCkguCknOClguCksCDgpJ3gpL7gpLLgpYdcbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjM0MiBkcGtnLWRlYi9leHRyYWN0LmM6MzYzIGRwa2ctZGViL2V4dHJhY3QuYzo0MDIKKyM6IGRwa2ctZGViL2luZm8uYzo3NworIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGEgLmRlYiBmaWxlbmFtZSBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyAg4KS44KS+4KSg4KWAIC7gpKHgpYfgpKwg4KSr4KS+4KSH4KSy4KSo4KS+4KS1IOCkquCksOCljeCkr+CkvuCkr+CkvuCkmuClgCDgpJfgpLDgpJwg4KSG4KS54KWHIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzQ3IGRwa2ctZGViL2V4dHJhY3QuYzo0MDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIi0tJXMgbmVlZHMgYSB0YXJnZXQgZGlyZWN0b3J5LlxuIgorIlBlcmhhcHMgeW91IHNob3VsZCBiZSB1c2luZyBkcGtnIC0taW5zdGFsbCA/IgorbXNnc3RyICIiCisiLS0lcyAg4KS44KS+4KSg4KWAIOCksuCkleCljeCktyDgpKjgpL/gpLDgpY3gpKbgpYfgpLbgpL/gpJXgpYfgpJrgpYAg4KSX4KSw4KScIOCkhuCkueClhy5cbiIKKyLgpJXgpKbgpL7gpJrgpL/gpKQg4KSG4KSq4KSj4KS+4KS4IOCkoeCkv+CkquCkv+CkleClh+CknOClgCAtLeCkh+CkqOCljeCkuOCljeCkn+CkvuCksiDgpJrgpL4g4KS14KS+4KSq4KSwIOCkleCksOCkvuCkteCkviDgpLLgpL7gpJfgpYfgpLIgPyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjM1MCBkcGtnLWRlYi9leHRyYWN0LmM6NDEwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgYXQgbW9zdCB0d28gYXJndW1lbnRzICguZGViIGFuZCBkaXJlY3RvcnkpIgorbXNnc3RyICItLSVzIOCknOCkvuCkuOCljeCkpOCkv+CkpCDgpJzgpL7gpLjgpY3gpKQg4KSm4KWL4KSo4KSaIOCkquCksOCljeCkr+CkvuCkryDgpJjgpYfgpIkg4KS24KSV4KSk4KWLICgu4KSh4KWH4KSsIOCkhuCko+ClgCDgpKjgpL/gpLDgpY3gpKbgpYfgpLbgpL/gpJXgpL4pIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzY1CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgb25seSBvbmUgYXJndW1lbnQgKC5kZWIgZmlsZW5hbWUpIgorbXNnc3RyICItLSVzIOCkq+CkleCljeCkpCDgpI/gpJXgpJog4KSq4KSw4KWN4KSv4KS+4KSvIOCkmOClh+CkiSDgpLbgpJXgpKTgpYsgKC7gpKHgpYfgpKwg4KSr4KS+4KSH4KSy4KSo4KS+4KS1KSIKKworIzogZHBrZy1kZWIvaW5mby5jOjYzCittc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIGAvJyBmb3IgY2xlYW51cCIKK21zZ3N0ciAi4KS44KS+4KSr4KS44KSr4KS+4KSI4KS44KS+4KSg4KWAIGAvJyDgpLLgpL4g4KS44KWA4KSP4KSa4KSh4KS/4KSG4KSv4KSG4KSwIOCkleCksOCkpOCkviDgpIbgpLLgpYcg4KSo4KS+4KS54KWAIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTA2CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW5ub3Qgc3RhdCBvbGQgbmFtZSBgJXMnOiAlcyIKK21zZ2lkICJjb250cm9sIGZpbGUgJyVzJyIKK21zZ3N0ciAi4KSc4KWB4KSo4KWAIOCkqOCkvuCkteClhyBgJXMnOiAlcyDgpLjgpY3gpJ/gpYXgpJ8g4KSV4KSw4KSk4KS+IOCkr+Clh+CkpCDgpKjgpL7gpLngpYDgpKQiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZy1kZWI6IGAlLjI1NXMnIGNvbnRhaW5zIG5vIGNvbnRyb2wgY29tcG9uZW50IGAlLjI1NXMnXG4iCittc2dzdHIgIuCkoeCkv+CkquCkv+CkleClh+CknOClgC3gpKHgpYfgpKw6IGAlLjI1NXMnICDgpK7gpKfgpYcg4KSV4KWL4KSj4KSk4KS+4KS54KWAIOCkqOCkv+Ckr+CkguCkpOCljeCksOCkoyDgpJjgpJ/gpJUg4KSo4KS+4KS54KWAIGAlLjI1NXMnXG4iCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAib3BlbiBjb21wb25lbnQgYCUuMjU1cycgKGluICUuMjU1cykgZmFpbGVkIGluIGFuIHVuZXhwZWN0ZWQgd2F5IgorbXNnc3RyICLgpJrgpL7gpLLgpYIg4KSF4KS44KSy4KWH4KSy4KS+IOCkmOCkn+CklSBgJS4yNTVzJyAoJS4yNTVzIOCkruCkp+ClgOCksikg4KSF4KSo4KSq4KWH4KSV4KWN4KS34KS/4KSkIOCksOCkv+CkpOCljeCkr+CkviDgpKzgpILgpKYg4KSq4KSh4KSy4KS+IgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTIxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJPbmUgcmVxdWVzdGVkIGNvbnRyb2wgY29tcG9uZW50IGlzIG1pc3NpbmciCittc2dpZCAiJWQgcmVxdWVzdGVkIGNvbnRyb2wgY29tcG9uZW50IGlzIG1pc3NpbmciCittc2dpZF9wbHVyYWwgIiVkIHJlcXVlc3RlZCBjb250cm9sIGNvbXBvbmVudHMgYXJlIG1pc3NpbmciCittc2dzdHJbMF0gIuCkruCkvuCkl+Ckv+CkpOCksuClh+CksuCljeCkr+CkvuCkguCkquCliOCkleClgCDgpI/gpJUg4KSo4KS/4KSv4KSC4KSk4KWN4KSw4KSjIOCkmOCkn+CklSDgpLjgpL7gpKrgpKHgpKQg4KSo4KS+4KS54KWAIgorbXNnc3RyWzFdICLgpK7gpL7gpJfgpL/gpKTgpLLgpYfgpLLgpY3gpK/gpL7gpILgpKrgpYjgpJXgpYAg4KSP4KSVIOCkqOCkv+Ckr+CkguCkpOCljeCksOCkoyDgpJjgpJ/gpJUg4KS44KS+4KSq4KSh4KSkIOCkqOCkvuCkueClgCIKKworIzogZHBrZy1kZWIvaW5mby5jOjEzOSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NDI0CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzY2FuIGRpcmVjdG9yeSBgJS4yNTVzJyIKK21zZ3N0ciAiYCUuMjU1cycg4KSo4KS/4KSw4KWN4KSm4KWH4KS24KS/4KSV4KS+IOCkmuCkvuCks+CkpOCkviDgpK/gpYfgpKQg4KSo4KS+4KS54KWAIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTQ4CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzdGF0IGAlLjI1NXMnIChpbiBgJS4yNTVzJykiCittc2dzdHIgImAlLjI1NXMnIChgJS4yNTVzJyDgpK7gpKfgpYDgpLIpIOCkuOCljeCkn+ClheCknyDgpJXgpLDgpKTgpL4g4KSv4KWH4KSkIOCkqOCkvuCkueClgCIKKworIzogZHBrZy1kZWIvaW5mby5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgb3BlbiBgJS4yNTVzJyAoaW4gYCUuMjU1cycpIgorbXNnc3RyICJgJS4yNTVzJyAoYCUuMjU1cycg4KSu4KSn4KWA4KSyKSDgpIngpJjgpKHgpKTgpL4g4KSv4KWH4KSkIOCkqOCkvuCkueClgCIKKworIzogZHBrZy1kZWIvaW5mby5jOjE2NyBkcGtnLWRlYi9pbmZvLmM6MTg1IGRwa2ctZGViL2luZm8uYzoxOTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgYCUuMjU1cycgKGluIGAlLjI1NXMnKSIKK21zZ3N0ciAiYCUuMjU1cycgKGAlLjI1NXMnIOCkruCkp+ClgOCksikg4KS14KS+4KSa4KSk4KS+IOCkhuCksuClgCDgpKjgpL7gpLngpYAiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxNzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiAlN2pkIGJ5dGVzLCAlNWQgbGluZXMgICAlYyAgJS0yMC4xMjdzICUuMTI3c1xuIgorbXNnc3RyICIgJTdsZCDgpKzgpL7gpIfgpJ/gpY3gpLgsICU1ZCDgpJPgpLPgpYAgJWMgJS0yMC4xMjdzICUuMTI3c1xuIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTc0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIgICAgIG5vdCBhIHBsYWluIGZpbGUgICAgICAgICAgJS4yNTVzXG4iCittc2dzdHIgIuCkqOCkv+CkteCljeCkteCksyDgpK7gpJzgpJXgpYLgpLAg4KSr4KS+4KSH4KSyIOCkqOCkvuCkueClgCAlLjI1NXNcbiIKKworIzogZHBrZy1kZWIvaW5mby5jOjE4NgorbXNnaWQgIihubyBgY29udHJvbCcgZmlsZSBpbiBjb250cm9sIGFyY2hpdmUhKVxuIgorbXNnc3RyICIo4KSo4KS/4KSv4KSC4KSk4KWN4KSw4KSjIOCkhuCksOCljeCkleCkvuCkh+CkteCkruCkp+ClhyBg4KSo4KS/4KSv4KSC4KSk4KWN4KSw4KSjJyDgpKvgpL7gpIfgpLIg4KSo4KS+4KS54KWAISlcbiIKKworIzogZHBrZy1kZWIvaW5mby5jOjIyMgorbXNnaWQgImNvdWxkIG5vdCBvcGVuIHRoZSBgY29udHJvbCcgY29tcG9uZW50IgorbXNnc3RyICJg4KSo4KS/4KSv4KSC4KSk4KWN4KSw4KSjJyDgpJjgpJ/gpJUg4KSJ4KSY4KSh4KSk4KS+IOCkhuCksuCkviDgpKjgpL7gpLngpYAiCisKKyM6IGRwa2ctZGViL2luZm8uYzoyNjEKK21zZ2lkICJmYWlsZWQgZHVyaW5nIHJlYWQgb2YgYGNvbnRyb2wnIGNvbXBvbmVudCIKK21zZ3N0ciAiYOCkqOCkv+Ckr+CkguCkpOCljeCksOCkoycg4KSY4KSf4KSVIOCkteCkvuCkmuCkpOCkviDgpIbgpLLgpL4g4KSo4KS+4KS54KWAIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MjYzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nIHRoZSAnJXMnIGNvbXBvbmVudCIKK21zZ3N0ciAi4KSr4KS+4KSH4KSo4KWN4KSh4KWN4KS4IOCkquCkvuCkh+CkqiDgpKzgpILgpKYg4KSV4KSw4KSj4KWN4KSv4KS+4KS4IOCkpuCli+CktyDgpK/gpYfgpKTgpYvgpK8iCisKKyM6IGRwa2ctZGViL2luZm8uYzoyNzgKK21zZ2lkICJFcnJvciBpbiBmb3JtYXQiCittc2dzdHIgIuCkq+ClieCksOCkruClheCknyDgpK7gpKfgpYcg4KSk4KWN4KSw4KWB4KSf4KWAIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MzI4Cittc2dpZCAiLS1jb250ZW50cyB0YWtlcyBleGFjdGx5IG9uZSBhcmd1bWVudCIKK21zZ3N0ciAiLS3gpK7gpJzgpJXgpYLgpLAg4KSr4KSV4KWN4KSkIOCkj+CkleCkmiDgpKrgpLDgpY3gpK/gpL7gpK8g4KSY4KWH4KSk4KWLIgorCisjOiBkcGtnLWRlYi9tYWluLmM6NTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuIGAlcycgcGFja2FnZSBhcmNoaXZlIGJhY2tlbmQgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAi4KSh4KWH4KSs4KS/4KSv4KSoIGAlcycg4KSq4KWF4KSV4KWH4KScIOCkrOClheCkleCkj+CkguCkoSDgpIbgpLDgpY3gpJXgpL7gpIfgpLUg4KSG4KS14KWD4KSk4KWN4KSk4KWAICVzLlxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6NzMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1ifC0tYnVpbGQgPGRpcmVjdG9yeT4gWzxkZWI+XSAgIEJ1aWxkIGFuIGFyY2hpdmUuXG4iCisiICAtY3wtLWNvbnRlbnRzIDxkZWI+ICAgICAgICAgICAgICBMaXN0IGNvbnRlbnRzLlxuIgorIiAgLUl8LS1pbmZvIDxkZWI+IFs8Y2ZpbGU+IC4uLl0gICAgU2hvdyBpbmZvIHRvIHN0ZG91dC5cbiIKKyIgIC1XfC0tc2hvdyA8ZGViPiAgICAgICAgICAgICAgICAgIFNob3cgaW5mb3JtYXRpb24gb24gcGFja2FnZShzKVxuIgorIiAgLWZ8LS1maWVsZCA8ZGViPiBbPGNmaWVsZD4gLi4uXSAgU2hvdyBmaWVsZChzKSB0byBzdGRvdXQuXG4iCisiICAtZXwtLWNvbnRyb2wgPGRlYj4gWzxkaXJlY3Rvcnk+XSBFeHRyYWN0IGNvbnRyb2wgaW5mby5cbiIKKyIgIC14fC0tZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PiAgIEV4dHJhY3QgZmlsZXMuXG4iCisiICAtWHwtLXZleHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+ICBFeHRyYWN0ICYgbGlzdCBmaWxlcy5cbiIKKyIgIC1SfC0tcmF3LWV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEV4dHJhY3QgY29udHJvbCBpbmZvIGFuZCBmaWxlcy5cbiIKKyIgIC0tZnN5cy10YXJmaWxlIDxkZWI+ICAgICAgICAgICAgIE91dHB1dCBmaWxlc3lzdGVtIHRhcmZpbGUuXG4iCisiXG4iCittc2dzdHIgIiIKKyLgpLjgpK7gpL7gpKbgpYfgpLY6XG4iCisiIC3gpKzgpYB8LS3gpKjgpL/gpLDgpY3gpK7gpL7gpKMgW10g4KSG4KSw4KWN4KSV4KS+4KSH4KS1IOCkqOCkv+CksOCljeCkruCkvuCkoyDgpJXgpLDgpL4uXG4iCisiIC3gpLjgpYB8LS3gpK7gpJzgpJXgpYLgpLAg4KSu4KSc4KSV4KWC4KSw4KS+4KSa4KWAIOCkr+CkvuCkpuClgC5cbiIKKyIgLeCkhuCkr3wtLeCkruCkvuCkueCkv+CkpOClgCBbIC4uLl0g4KSP4KS44KSf4KWA4KSh4KWA4KSG4KSJ4KSfIOCksuCkviDgpK7gpL7gpLngpL/gpKTgpYAg4KSm4KWN4KSv4KS+LlxuIgorIiAt4KSh4KSs4KWN4KSy4KWN4KSv4KWCfC0t4KSm4KS+4KSW4KS14KS+IOCkquClheCkleClh+CknCjgpLjgpY0pIOCkmuClgCDgpK7gpL7gpLngpL/gpKTgpYAg4KSm4KS+4KSW4KS14KS+XG4iCisiIC3gpI/gpKt8LS3gpJXgpY3gpLfgpYfgpKTgpY3gpLAgWyAuLi5dIOCkj+CkuOCkn+ClgOCkoeClgOCkhuCkieCknyDgpLLgpL4g4KSV4KWN4KS34KWH4KSk4KWN4KSwKOCkpOCljeCksOClhykg4KSm4KS+4KSW4KS14KS+LlxuIgorIiAt4KSHfC0t4KSo4KS/4KSv4KSC4KSk4KWN4KSw4KSjIFtdIOCkqOCkv+Ckr+CkguCkpOCljeCksOCkoyDgpK7gpL7gpLngpL/gpKTgpYAg4KSs4KS+4KS54KWH4KSwIOCkleCkvuCkouCkvi5cbiIKKyIgLXg/fC0t4KSV4KS+4KSi4KS+IOCkq+CkvuCkr+CksuClgCDgpKzgpL7gpLngpYfgpLAg4KSV4KS+4KSi4KS+LlxuIgorIiAtWD98LS3gpLXgpJXgpL7gpKLgpL4g4KSr4KS+4KSv4KSy4KWAIOCkrOCkvuCkueClh+CksCDgpJXgpL7gpKLgpL4gJiDgpK/gpL7gpKbgpYAg4KSs4KSo4KS14KS+LlxuIgorIiAtLeCkj+Ckq+CkuOCkv+CkuC3gpJ/gpL7gpLDgpKvgpL7gpIfgpLIg4KSf4KS+4KSw4KSr4KS+4KSH4KSyIOCkq+CkvuCkh+CksuCkquCljeCksOCko+CkvuCksuClgCDgpKjgpL/gpLDgpY3gpJfgpKQg4KSV4KSw4KS+LlxuIgorIlxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6OTMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyI8ZGViPiBpcyB0aGUgZmlsZW5hbWUgb2YgYSBEZWJpYW4gZm9ybWF0IGFyY2hpdmUuXG4iCisiPGNmaWxlPiBpcyB0aGUgbmFtZSBvZiBhbiBhZG1pbmlzdHJhdGl2ZSBmaWxlIGNvbXBvbmVudC5cbiIKKyI8Y2ZpZWxkPiBpcyB0aGUgbmFtZSBvZiBhIGZpZWxkIGluIHRoZSBtYWluIGBjb250cm9sJyBmaWxlLlxuIgorIlxuIgorbXNnc3RyICIiCisiIOCkueClhyDgpKHgpYfgpKzgpL/gpK/gpKgg4KSr4KWJ4KSw4KSu4KWF4KSfIOCkhuCksOCljeCkleCkvuCkh+CkteCkmuClhyDgpKvgpL7gpIfgpLLgpKjgpL7gpLUg4KSG4KS54KWHLlxuIgorIiDgpLngpYcg4KSq4KWN4KSw4KS24KS+4KS44KSV4KWA4KSvIOCkq+CkvuCkh+CksuCkmuCljeCkr+CkviDgpJjgpJ/gpJXgpL7gpJrgpYcg4KSo4KS+4KS1IOCkhuCkueClhy5cbiIKKyIg4KS54KWHIOCkruClgeCkluCljeCkryBg4KSo4KS/4KSv4KSC4KSk4KWN4KSw4KSjJyDgpKvgpL7gpIfgpLLgpK7gpKfgpYDgpLIg4KSV4KWN4KS34KWH4KSk4KWN4KSw4KS+4KSa4KWHIOCkqOCkvuCktSDgpIbgpLngpYcuXG4iCisiXG4iCisKKyM6IGRwa2ctZGViL21haW4uYzo5OQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLXNob3dmb3JtYXQ9PGZvcm1hdD4gICAgICAgICAgICBVc2UgYWx0ZXJuYXRpdmUgZm9ybWF0IGZvciAtLXNob3cuXG4iCisiICAtdiwgLS12ZXJib3NlICAgICAgICAgICAgICAgICAgICBFbmFibGUgdmVyYm9zZSBvdXRwdXQuXG4iCisiICAtRCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbmFibGUgZGVidWdnaW5nIG91dHB1dC5cbiIKKyIgIC0tb2xkLCAtLW5ldyAgICAgICAgICAgICAgICAgICAgIFNlbGVjdCBhcmNoaXZlIGZvcm1hdC5cbiIKKyIgIC0tbm9jaGVjayAgICAgICAgICAgICAgICAgICAgICAgIFN1cHByZXNzIGNvbnRyb2wgZmlsZSBjaGVjayAoYnVpbGQgYmFkXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhY2thZ2VzKS5cbiIKKyIgIC16IyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNldCB0aGUgY29tcHJlc3Npb24gbGV2ZWwgd2hlbiBidWlsZGluZy5cbiIKKyIgIC1aPHR5cGU+ICAgICAgICAgICAgICAgICAgICAgICAgIFNldCB0aGUgY29tcHJlc3Npb24gdHlwZSB1c2VkIHdoZW4gIgorImJ1aWxkaW5nLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBbGxvd2VkIHR5cGVzOiBnemlwLCB4eiwgYnppcDIsIGx6bWEsICIKKyJub25lLlxuIgorIlxuIgorbXNnc3RyICIiCisi4KSq4KSw4KWN4KSv4KS+4KSvOlxuIgorIiAtLeCkq+ClieCksOCkruClheCknz0gLS3gpKbgpL7gpJbgpLXgpL4g4KS44KS+4KSg4KWAIOCkq+ClieCksOCkruClheCkn+CkmuClhyDgpKrgpLDgpY3gpK/gpL7gpK8g4KS14KS+4KSq4KSw4KS+LlxuIgorIiAtRD8g4KSm4KWL4KS34KSu4KS+4KSw4KWN4KSc4KSoIOCkqOCkv+CksOCljeCkl+CkriDgpJXgpL7gpLDgpY3gpK/gpLjgpJXgpY3gpLfgpK4g4KSV4KSw4KS+LlxuIgorIiAtLeCknOClgeCkqOClhywgLS3gpKjgpLXgpYcg4KSG4KSw4KWN4KSV4KS+4KSH4KS14KSa4KWHIOCkq+ClieCksOCkruClheCknyDgpKjgpL/gpLXgpKHgpL4uXG4iCisiIC0t4KSk4KSq4KS+4KS44KSo4KS+4KS54KWAIOCkqOCkv+Ckr+CkguCkpOCljeCksOCkoyDgpKvgpL7gpIfgpLIg4KSk4KSq4KS+4KS4IOCkpuCkoeCkquCkviAo4KSW4KSw4KS+4KSsIOCkquClheCkleClh+CknFxuIgorIiDgpIngpK3gpL7gpLDgpL4pLlxuIgorIiAtej8jIOCkieCkreCkvuCksOCkpOCkvuCkqOCkviDgpLjgpILgpJXgpYvgpJog4KSq4KS+4KSk4KSz4KWAIOCkqOCkv+CktuCljeCkmuCkv+CkpCDgpJXgpLDgpL4uXG4iCisiIC1aPyDgpIngpK3gpL7gpLDgpKTgpL7gpKjgpL4g4KS14KS+4KSq4KSw4KSy4KWH4KSy4KS+IOCkuOCkguCkleCli+CkmiDgpKrgpY3gpLDgpJXgpL7gpLAg4KSo4KS/4KS24KWN4KSa4KS/4KSkIOCkleCksOCkvi5cbiIKKyIg4KSF4KSo4KWB4KSu4KSk4KWAIOCkpuCkv+CksuClh+CksuClgCDgpK7gpYLgpLLgpY3gpK/gpYc6IOCknOClgOCkneCkv+Ckqiwg4KSs4KWA4KSd4KS/4KSq4KWoLCDgpJXgpL7gpLngpYDgpKjgpL7gpLngpYAuXG4iCisiXG4iCisKKyM6IGRwa2ctZGViL21haW4uYzoxMjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJVc2UgYGRwa2cnIHRvIGluc3RhbGwgYW5kIHJlbW92ZSBwYWNrYWdlcyBmcm9tIHlvdXIgc3lzdGVtLCBvclxuIgorImBkc2VsZWN0JyBvciBgYXB0aXR1ZGUnIGZvciB1c2VyLWZyaWVuZGx5IHBhY2thZ2UgbWFuYWdlbWVudC4gIFBhY2thZ2VzXG4iCisidW5wYWNrZWQgdXNpbmcgYGRwa2ctZGViIC0tZXh0cmFjdCcgd2lsbCBiZSBpbmNvcnJlY3RseSBpbnN0YWxsZWQgIVxuIgorbXNnc3RyICIiCisiXG4iCisi4KSG4KSq4KSy4KWN4KSv4KS+IOCkquCljeCksOCko+CkvuCksuClgOCkpCDgpKrgpYXgpJXgpYfgpJzgpYfgpLjgpY0g4KSF4KSn4KS/4KS34KWN4KSg4KS+4KSq4KSoIOCkleCksOCko+ClhyDgpLUg4KSV4KS+4KSi4KWC4KSoIOCkn+CkvuCkleCko+ClhyDgpK/gpL7gpLjgpL7gpKDgpYAgYOCkoeCkv+CkquCkv+CkleClh+CknOClgCcg4KSa4KS+LCDgpJXgpL/gpILgpLXgpL4g4KS14KS+4KSq4KSwLSIKKyLgpLjgpYHgpLLgpK1cbiIKKyIg4KSq4KWF4KSV4KWH4KScIOCkteCljeCkr+CkteCkuOCljeCkpeCkvuCkquCkqOCkvuCkuOCkvuCkoOClgCBg4KSh4KWA4KS44KS/4KSy4KWH4KSV4KWN4KSfJyDgpIXgpKXgpLXgpL4gYOCkheClheCkquCljeCkn+Ckv+Ckn+CljeCkr+ClguCkoScg4KSa4KS+IOCkteCkvuCkquCksCDgpJXgpLDgpL4uIGDgpKHgpL/gpKrgpL/gpJXgpYfgpJzgpYAt4KSh4KWH4KSsIC0tIgorIuCkj+CkleCljeCkuOCkn+CljeCksOClheCkleCljeCknycg4KS14KS+4KSq4KSw4KWB4KSoXG4iCisiIOCkieCksuCkl+CkoeCksuClh+CksuClgCDgpKrgpYXgpJXgpYfgpJzgpYfgpLjgpY0g4KS14KWN4KSv4KS14KS44KWN4KSl4KS/4KSkIOCkheCkp+Ckv+Ckt+CljeCkoOCkvuCkquCkv+CkpCDgpLngpYvgpKPgpL7gpLAg4KSo4KS+4KS54KWA4KSkICFcbiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjEzMgorbXNnaWQgIiIKKyJUeXBlIGRwa2ctZGViIC0taGVscCBmb3IgaGVscCBhYm91dCBtYW5pcHVsYXRpbmcgKi5kZWIgZmlsZXM7XG4iCisiVHlwZSBkcGtnIC0taGVscCBmb3IgaGVscCBhYm91dCBpbnN0YWxsaW5nIGFuZCBkZWluc3RhbGxpbmcgcGFja2FnZXMuIgorbXNnc3RyICIiCisiKi7gpKHgpYfgpKwg4KSr4KS+4KSv4KSy4KWA4KSC4KSa4KWN4KSv4KS+IOCkueCkvuCkpOCkvuCks+Cko+ClgOCkuOCkguCkrOCkguCkp+ClgCDgpK7gpKbgpKTgpYDgpLjgpL7gpKDgpYAg4KSh4KS/4KSq4KS/4KSV4KWH4KSc4KWALeCkoeClh+CkrCAtLeCkruCkpuCkpCDgpJ/gpL7gpIfgpKog4KSV4KSw4KS+O1xuIgorIuCkquClheCkleClh+CknOClh+CkuOCljSDgpIXgpKfgpL/gpLfgpY3gpKDgpL7gpKrgpKgg4KSV4KSw4KSj4KWHIOCktSDgpJXgpL7gpKLgpYLgpKgg4KSf4KS+4KSV4KSj4KWHIOCkr+CkvuCkuOCkvuCkoOClgCDgpKHgpL/gpKrgpL/gpJXgpYfgpJzgpYAgLS3gpK7gpKbgpKQg4KSf4KS+4KSH4KSqIOCkleCksOCkvi4iCisKKyM6IGRwa2ctZGViL21haW4uYzoxNDgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgaW50ZWdlciBmb3IgLSVjOiAnJS4yNTBzJyIKK21zZ3N0ciAiLS0lc+CkuOCkvuCkoOClgCDgpIXgpK/gpYvgpJfgpY3gpK8g4KSq4KWC4KSw4KWN4KSj4KS+4KSC4KSVIDogYCUuMjUwcyciCisKKyM6IGRwa2ctZGViL21haW4uYzoxNTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgY29tcHJlc3Npb24gbGV2ZWwgZm9yIC0lYzogJWxkJyIKK21zZ3N0ciAiLS0lc+CkuOCkvuCkoOClgCDgpIXgpK/gpYvgpJfgpY3gpK8g4KSq4KWC4KSw4KWN4KSj4KS+4KSC4KSVIDogYCUuMjUwcyciCisKKyM6IGRwa2ctZGViL21haW4uYzoxNjEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBjb21wcmVzc2lvbiB0eXBlIGAlcychIgorbXNnc3RyICLgpIXgpKrgpLDgpL/gpJrgpYDgpKQg4KS44KSC4KSV4KWL4KSaIOCkquCljeCksOCkleCkvuCksCBgJXMnISIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6NTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBkaWdpdCAoY29kZSAlZCkgaW4gJXMiCittc2dzdHIgIuCkq+CkvuCkh+CksiBgJS4yNTBzJyDgpK3gpY3gpLDgpLfgpY3gpJ8g4KSG4KS54KWHIC0gJXMg4KSu4KSn4KWHIOCkluCksOCkvuCkrCDgpIXgpILgpJUgKOCkleCli+CkoSAlZCkiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjYwCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtICUuMjUwcyBtaXNzaW5nIgorbXNnc3RyICLgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KSt4KWN4KSw4KS34KWN4KSfIOCkhuCkueClhyAtICUuMjUwcyDgpJfgpL7gpK/gpKwiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjYzCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIG1pc3NpbmcgbmV3bGluZSBhZnRlciAlLjI1MHMiCittc2dzdHIgIuCkq+CkvuCkh+CksiBgJS4yNTBzJyDgpK3gpY3gpLDgpLfgpY3gpJ8g4KSG4KS54KWHIC0gJS4yNTBzIOCkqOCkguCkpOCksCDgpKjgpY3gpK/gpYLgpLLgpL7gpIfgpKgg4KSX4KS+4KSv4KSsIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzo4OSBkcGtnLXNwbGl0L21haW4uYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcmVhZGluZyAlLjI1MHMiCittc2dzdHIgIiUuMjUwcyDgpLXgpL7gpJrgpKTgpL7gpKjgpL4g4KSk4KWN4KSw4KWB4KSf4KWAIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIG1hZ2ljIGF0IGVuZCBvZiBmaXJzdCBoZWFkZXIiCittc2dzdHIgIuCkq+CkvuCkh+CksiBgJS4yNTBzJyDgpK3gpY3gpLDgpLfgpY3gpJ8g4KSG4KS54KWHIC0g4KSq4KWN4KSw4KSl4KSuIOCktuCkv+CksOCljeCkt+CkleCkvuCkmuCljeCkr+CkviDgpLbgpYfgpLXgpJ/gpYAg4KSc4KS+4KSm4KWB4KSf4KWL4KSj4KS+IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIHBhZGRpbmcgY2hhcmFjdGVyIChjb2RlICVkKSIKK21zZ3N0ciAi4KSr4KS+4KSH4KSyIGAlLjI1MHMnIOCkreCljeCksOCkt+CljeCknyDgpIbgpLngpYcgLSDgpJbgpLDgpL7gpKwg4KSq4KWF4KSh4KS/4KSC4KSXIOCkleClheCksOClheCkleCljeCkn+CksCAo4KSV4KWL4KShICVkKSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTE3CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIG51bGxzIGluIGluZm8gc2VjdGlvbiIKK21zZ3N0ciAi4KSr4KS+4KSH4KSyIGAlLjI1MHMnIOCkreCljeCksOCkt+CljeCknyDgpIbgpLngpYcgLSDgpK7gpL7gpLngpL/gpKTgpYAg4KS14KS/4KSt4KS+4KSX4KS+4KSkIOCksOCkv+CkleCljeCkpCDgpJzgpL7gpJfgpL4iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyMgorIywgZnV6enkKK21zZ2lkICJmb3JtYXQgdmVyc2lvbiBudW1iZXIiCittc2dzdHIgIuCkhuCkteClg+CkpOCljeCkpOClgCDgpJXgpY3gpLDgpK7gpL7gpILgpJUiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGZvcm1hdCB2ZXJzaW9uIGAlLjI1MHMnIC0geW91IG5lZWQgYSBuZXdlciBkcGtnLXNwbGl0IgorbXNnc3RyICIiCisi4KSr4KS+4KSH4KSyIGAlLjI1MHMnIOCkueClgCDgpKvgpYngpLDgpK7gpYXgpJ8g4KSG4KS14KWD4KSk4KWN4KSk4KWAIGAlLjI1MHMnIOCkhuCkueClhyAtIOCkpOClgeCkruCljeCkueCkvuCksuCkviDgpIXgpLLgpYDgpJXgpKHgpYDgpLIg4KSh4KS/4KSq4KS/4KSV4KWH4KSc4KWALeCkuOCljeCkquCljeCksuCkv+CknyDgpLngpLXgpYAiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyNworIywgZnV6enkKK21zZ2lkICJwYWNrYWdlIG5hbWUiCittc2dzdHIgIijgpKrgpYXgpJXgpYfgpJw6ICIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTI4CisjLCBmdXp6eQorbXNnaWQgInBhY2thZ2UgdmVyc2lvbiBudW1iZXIiCittc2dzdHIgIuCkhuCkteClg+CkpOCljeCkpOClgCDgpJXgpY3gpLDgpK7gpL7gpILgpJUiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyOQorbXNnaWQgInBhY2thZ2UgZmlsZSBNRDUgY2hlY2tzdW0iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTMyCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBNRDUgY2hlY2tzdW0gYCUuMjUwcyciCittc2dzdHIgIuCkq+CkvuCkh+CksiBgJS4yNTBzJyDgpK3gpY3gpLDgpLfgpY3gpJ8g4KSG4KS54KWHIC0g4KSW4KSw4KS+4KSsIOCkj+CkruCkoeClgOClqyDgpJrgpYfgpJXgpLjgpK4gYCUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEzNCBkcGtnLXNwbGl0L2luZm8uYzoxMzUKK21zZ2lkICJhcmNoaXZlIHRvdGFsIHNpemUiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTM2IGRwa2ctc3BsaXQvaW5mby5jOjEzNworbXNnaWQgImFyY2hpdmUgcGFydCBvZmZzZXQiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTM5CisjLCBmdXp6eQorbXNnaWQgImFyY2hpdmUgcGFydCBudW1iZXJzIgorbXNnc3RyICLgpIbgpLXgpYPgpKTgpY3gpKTgpYAg4KSV4KWN4KSw4KSu4KS+4KSC4KSVIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIG5vIHNsYXNoIGJldHdlZW4gcGFydCBudW1iZXJzIgorbXNnaWQgImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIG5vIHNsYXNoIGJldHdlZW4gYXJjaGl2ZSBwYXJ0IG51bWJlcnMiCittc2dzdHIgIuCkq+CkvuCkh+CksiBgJS4yNTBzJyDgpK3gpY3gpLDgpLfgpY3gpJ8g4KSG4KS54KWHIC0g4KSt4KS+4KSXIOCkleCljeCksOCkruCkvuCkguCkleCkvuCkguCkpuCksOCkruCljeCkr+CkvuCkqCDgpLjgpY3gpLLgpYXgpLYg4KSo4KS+4KS54KWAIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDUKK21zZ2lkICJudW1iZXIgb2YgYXJjaGl2ZSBwYXJ0cyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBudW1iZXIgb2YgYXJjaGl2ZSBwYXJ0cyIKK21zZ3N0ciAi4KSr4KS+4KSH4KSyIGAlLjI1MHMnIOCkreCljeCksOCkt+CljeCknyDgpIbgpLngpYcgLSDgpJbgpLDgpL7gpKwg4KSt4KS+4KSXIOCkleCljeCksOCkruCkvuCkguCklSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTQ5CisjLCBmdXp6eQorbXNnaWQgImFyY2hpdmUgcGFydHMgbnVtYmVyIgorbXNnc3RyICLgpIbgpLXgpYPgpKTgpY3gpKTgpYAg4KSV4KWN4KSw4KSu4KS+4KSC4KSVIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBwYXJ0IG51bWJlciIKK21zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgYXJjaGl2ZSBwYXJ0IG51bWJlciIKK21zZ3N0ciAi4KSr4KS+4KSH4KSyIGAlLjI1MHMnIOCkreCljeCksOCkt+CljeCknyDgpIbgpLngpYcgLSDgpJbgpLDgpL7gpKwg4KSt4KS+4KSXIOCkleCljeCksOCkruCkvuCkguCklSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTU3CisjLCBmdXp6eQorbXNnaWQgInBhY2thZ2UgYXJjaGl0ZWN0dXJlIgorbXNnc3RyICIo4KSq4KWF4KSV4KWH4KScOiAiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE2NgorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgbWFnaWMgYXQgZW5kIG9mIHNlY29uZCBoZWFkZXIiCittc2dzdHIgIuCkq+CkvuCkh+CksiBgJS4yNTBzJyDgpK3gpY3gpLDgpLfgpY3gpJ8g4KSG4KS54KWHIC0g4KSm4KWB4KS44KSx4KWN4KSv4KS+IOCktuCkv+CksOCljeCkt+CkleCkvuCkmuCljeCkr+CkviDgpLbgpYfgpLXgpJ/gpYAg4KSc4KS+4KSm4KWC4KSf4KWL4KSj4KS+IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gc2Vjb25kIG1lbWJlciBpcyBub3QgZGF0YSBtZW1iZXIiCittc2dzdHIgIuCkq+CkvuCkh+CksiBgJS4yNTBzJyDgpK3gpY3gpLDgpLfgpY3gpJ8g4KSG4KS54KWHIC0g4KSm4KWB4KS44KSw4KS+IOCkuOCkpuCkuOCljeCkryDgpLngpL4g4KSh4KWH4KSf4KS+IOCkuOCkpuCkuOCljeCkryDgpKjgpL7gpLngpYAiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE3NAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSB3cm9uZyBudW1iZXIgb2YgcGFydHMgZm9yIHF1b3RlZCBzaXplcyIKK21zZ3N0ciAi4KSr4KS+4KSH4KSyIGAlLjI1MHMnIOCkreCljeCksOCkt+CljeCknyDgpIbgpLngpYcgLSDgpKbgpL/gpLLgpYfgpLLgpY3gpK/gpL4g4KSG4KSV4KS+4KSw4KS+4KS44KS+4KSg4KWAIOCkreCkvuCkl+CkvuCkguCkmuClgCDgpLjgpILgpJbgpY3gpK/gpL4g4KSa4KWB4KSV4KWA4KSa4KWAIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gc2l6ZSBpcyB3cm9uZyBmb3IgcXVvdGVkIHBhcnQgbnVtYmVyIgorbXNnc3RyICLgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KSt4KWN4KSw4KS34KWN4KSfIOCkhuCkueClhyAtIOCkpuCkv+CksuClh+CksuCljeCkr+CkviDgpK3gpL7gpJcg4KSV4KWN4KSw4KSu4KS+4KSC4KSV4KS+4KS44KS+4KSg4KWAIOCkhuCkleCkvuCksCDgpJrgpYHgpJXgpYDgpJrgpL4iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE4NAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZnN0YXQgcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLgpK3gpL7gpJcg4KSr4KS+4KSH4KSyIGAlLjI1MHMnIOCkj+Ckq+CkuOCljeCkn+ClheCknyDgpJXgpLDgpKTgpL4g4KSv4KWH4KSkIOCkqOCkvuCkueClgCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTg5CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIHRvbyBzaG9ydCIKK21zZ3N0ciAi4KSr4KS+4KSH4KSyIGAlLjI1MHMnIOCkreCljeCksOCkt+CljeCknyDgpIbgpLngpYcgLSDgpKvgpL7gpLDgpJog4KSy4KS54KS+4KSoIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyMDIgZHBrZy1zcGxpdC9pbmZvLmM6MjQ5CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBvcGVuIGFyY2hpdmUgcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLgpIbgpLDgpY3gpJXgpL7gpIfgpLUg4KSt4KS+4KSXIOCkq+CkvuCkh+CksiBgJS4yNTBzJyDgpIngpJjgpKHgpKTgpL4g4KSv4KWH4KSkIOCkqOCkvuCkueClgCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjA0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgbm90IGFuIGFyY2hpdmUgcGFydCIKK21zZ3N0ciAi4KSr4KS+4KSH4KSyIGAlLjI1MHMnIOCkueClgCDgpIbgpLDgpY3gpJXgpL7gpIfgpLUg4KSt4KS+4KSXIOCkqOCkvuCkueClgCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjA5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6XG4iCisiICAgIFBhcnQgZm9ybWF0IHZlcnNpb246ICAgICAgICAgICAgJXNcbiIKKyIgICAgUGFydCBvZiBwYWNrYWdlOiAgICAgICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIHZlcnNpb246ICAgICAgICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gYXJjaGl0ZWN0dXJlOiAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiBNRDUgY2hlY2tzdW06ICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIGxlbmd0aDogICAgICAgICAgICAgICAgICVqZCBieXRlc1xuIgorIiAgICAgICAgLi4uIHNwbGl0IGV2ZXJ5OiAgICAgICAgICAgICVqZCBieXRlc1xuIgorIiAgICBQYXJ0IG51bWJlcjogICAgICAgICAgICAgICAgICAgICVkLyVkXG4iCisiICAgIFBhcnQgbGVuZ3RoOiAgICAgICAgICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgIFBhcnQgb2Zmc2V0OiAgICAgICAgICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgIFBhcnQgZmlsZSBzaXplICh1c2VkIHBvcnRpb24pOiAgJWpkIGJ5dGVzXG4iCisiXG4iCittc2dzdHIgIiIKKyIlczpcbiIKKyIg4KSt4KS+4KSXIOCkq+ClieCksOCkruClheCknyDgpIbgpLXgpYPgpKTgpY3gpKTgpYA6ICVzXG4iCisiIOCkquClheCkleClh+CknOCkmuCkviDgpK3gpL7gpJc6ICVzXG4iCisiIC4uLiDgpIbgpLXgpYPgpKTgpY3gpKTgpYA6ICVzXG4iCisiIC4uLiDgpI/gpK7gpKHgpYDgpasg4KSa4KWH4KSV4KS44KSuOiAlc1xuIgorIiAuLi4g4KSy4KS+4KSC4KSs4KWAOiAlbHUg4KSs4KS+4KSH4KSf4KWN4KS4XG4iCisiIC4uLiDgpKrgpY3gpLDgpKTgpY3gpK/gpYfgpJUg4KSs4KS+4KSH4KSf4KWN4KS4OiAlbHUg4KS14KSwIOCkpOCli+CkoeCkvlxuIgorIiDgpK3gpL7gpJcg4KSV4KWN4KSw4KSu4KS+4KSC4KSVOiAlZC8lZFxuIgorIiDgpK3gpL7gpJcg4KSy4KS+4KSC4KSs4KWAOiAlemkgYnl0ZXNcbiIKKyIg4KSt4KS+4KSXIOCkk+ClheCkq+CkuOClh+CknzogJWx1IGJ5dGVzXG4iCisiIOCkreCkvuCklyDgpKvgpL7gpIfgpLIg4KSG4KSV4KS+4KSwICjgpLXgpL7gpKrgpLDgpLLgpYfgpLLgpL4g4KSt4KS+4KSXKTogJWx1IGJ5dGVzXG4iCisiXG4iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjIyNQorIywgZnV6enkKKyN8IG1zZ2lkICI8dW5rbm93bj4iCittc2djdHh0ICJhcmNoaXRlY3R1cmUiCittc2dpZCAiPHVua25vd24+IgorbXNnc3RyICI84KSF4KSo4KWL4KSz4KSW4KWAPiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjQ0IGRwa2ctc3BsaXQvam9pbi5jOjEwNQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiLS0lcyByZXF1aXJlcyBvbmUgb3IgbW9yZSBwYXJ0IGZpbGUgYXJndW1lbnRzIgorbXNnc3RyICItLeCkruCkvuCkueCkv+CkpOClgCDgpLjgpL7gpKDgpYAg4KSP4KSVIOCkheCkpeCkteCkviDgpIXgpKjgpYfgpJUg4KSt4KS+4KSXIOCkq+CkvuCkh+CksiDgpKrgpLDgpY3gpK/gpL7gpK8g4KSG4KS14KS24KWN4KSv4KSVIOCkhuCkueClh+CkpCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjU1CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCVzJyBpcyBub3QgYW4gYXJjaGl2ZSBwYXJ0XG4iCittc2dzdHIgIuCkq+CkvuCkh+CksiBgJXMnIOCkueClgCDgpIbgpLDgpY3gpJXgpL7gpIfgpLUg4KSt4KS+4KSXIOCkqOCkvuCkueClgFxuIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo0NAorIywgYy1mb3JtYXQKK21zZ2lkICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0OiAiCittc2dpZF9wbHVyYWwgIlB1dHRpbmcgcGFja2FnZSAlcyB0b2dldGhlciBmcm9tICVkIHBhcnRzOiAiCittc2dzdHJbMF0gIiIKK21zZ3N0clsxXSAiIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBvdXRwdXQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4KSo4KS/4KSw4KWN4KSX4KSkIOCkq+CkvuCkh+CksiBgJS4yNTBzJyDgpIngpJjgpKHgpKTgpL4g4KSv4KWH4KSkIOCkqOCkvuCkueClgCIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIChyZSlvcGVuIGlucHV0IHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4KSG4KSX4KSkIOCkreCkvuCklyDgpKvgpL7gpIfgpLIgYCUuMjUwcycgKOCkquClgeCkqOCljeCkueCkvingpIngpJjgpKHgpKTgpL4g4KSv4KWH4KSkIOCkqOCkvuCkueClgCIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NTgKKyMsIGZ1enp5CisjfCBtc2dpZCAiU2tpcHBpbmcgZGVzZWxlY3RlZCBwYWNrYWdlICVzLlxuIgorbXNnaWQgInNraXBwaW5nIHNwbGl0IHBhY2thZ2UgaGVhZGVyIgorbXNnc3RyICLgpKjgpL/gpLXgpKEg4KSw4KSm4KWN4KSmIOCkneCkvuCksuClh+CksuCljeCkr+CkviAlcyDgpKrgpYXgpJXgpYfgpJwg4KS14KSX4KSz4KSkIOCkhuCkueClhy5cbiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NTkKKyMsIGZ1enp5CisjfCBtc2dpZCAibWlzc2luZyBwYWNrYWdlIgorbXNnaWQgInNwbGl0IHBhY2thZ2UgcGFydCIKK21zZ3N0ciAi4KSq4KWF4KSV4KWH4KScIOCkl+CkvuCkr+CkrCIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NjkgZHBrZy1zcGxpdC9zcGxpdC5jOjIzNworIywgYy1mb3JtYXQKK21zZ2lkICJkb25lXG4iCittc2dzdHIgIuCkneCkvuCksuClh1xuIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo4NQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlcyBgJS4yNTBzJyBhbmQgYCUuMjUwcycgYXJlIG5vdCBwYXJ0cyBvZiB0aGUgc2FtZSBmaWxlIgorbXNnc3RyICLgpKvgpL7gpK/gpLLgpYAgYCUuMjUwcycg4KSG4KSj4KWAIGAlLjI1MHMnIOCkueClhyDgpI/gpJXgpL7gpJog4KSr4KS+4KSH4KSy4KSa4KWHIOCkreCkvuCklyDgpKjgpL7gpLngpYDgpKQiCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjkwCisjLCBjLWZvcm1hdAorbXNnaWQgInRoZXJlIGFyZSBzZXZlcmFsIHZlcnNpb25zIG9mIHBhcnQgJWQgLSBhdCBsZWFzdCBgJS4yNTBzJyBhbmQgYCUuMjUwcyciCittc2dzdHIgIiVkIOCkreCkvuCkl+CkvuCkmuCljeCkr+CkviDgpIXgpKjgpYfgpJUg4KSG4KS14KWD4KSk4KWN4KSk4KWN4KSv4KS+IOCkhuCkueClh+CkpCAtIOCkleCkruClgOCkpOCkleCkruClgCAlLjI1MHMnIOCkhuCko+ClgCBgJS4yNTBzIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzoxMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFydCAlZCBpcyBtaXNzaW5nIgorbXNnc3RyICLgpK3gpL7gpJcgJWQg4KSX4KS+4KSv4KSsIOCkhuCkueClhyIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6NDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuIGAlcycgcGFja2FnZSBzcGxpdC9qb2luIHRvb2w7IHZlcnNpb24gJXMuXG4iCittc2dzdHIgIuCkoeClh+CkrOCkv+Ckr+CkqCBgJXMnIOCkquClheCkleClh+CknCDgpKTgpYvgpKHgpL4v4KSc4KWL4KSh4KS+IOCkn+ClguCksjsg4KSG4KS14KWD4KSk4KWN4KSk4KWAICVzLlxuIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo0OQorIywgYy1mb3JtYXQKK21zZ2lkICJDb3B5cmlnaHQgKEMpIDE5OTQtMTk5NiBJYW4gSmFja3Nvbi5cbiIKK21zZ3N0ciAi4KS44KSw4KWN4KS14KS+4KSn4KS/4KSV4KS+4KSwIChDKSDgpafgpa/gpa/gpaot4KWn4KWv4KWv4KWrIOCkhuCkr+CkqCDgpJzgpYXgpJXgpLjgpKguXG4iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjY3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtc3wtLXNwbGl0IDxmaWxlPiBbPHByZWZpeD5dICAgICBTcGxpdCBhbiBhcmNoaXZlLlxuIgorIiAgLWp8LS1qb2luIDxwYXJ0PiA8cGFydD4gLi4uICAgICAgSm9pbiBwYXJ0cyB0b2dldGhlci5cbiIKKyIgIC1JfC0taW5mbyA8cGFydD4gLi4uICAgICAgICAgICAgIERpc3BsYXkgaW5mbyBhYm91dCBhIHBhcnQuXG4iCisiICAtYXwtLWF1dG8gLW8gPGNvbXBsZXRlPiA8cGFydD4gICBBdXRvLWFjY3VtdWxhdGUgcGFydHMuXG4iCisiICAtbHwtLWxpc3RxICAgICAgICAgICAgICAgICAgICAgICBMaXN0IHVubWF0Y2hlZCBwaWVjZXMuXG4iCisiICAtZHwtLWRpc2NhcmQgWzxmaWxlbmFtZT4gLi4uXSAgICBEaXNjYXJkIHVubWF0Y2hlZCBwaWVjZXMuXG4iCisiXG4iCittc2dzdHIgIiIKKyLgpLjgpK7gpL7gpKbgpYfgpLY6XG4iCisiIC1zfC0t4KSk4KWL4KSh4KS+IFtdIOCkhuCksOCljeCkleCkvuCkh+CkteCkmuClhyDgpKTgpYHgpJXgpKHgpYcg4KSV4KSw4KS+LlxuIgorIiAtanwtLeCknOCli+CkoeCkviAuLi4g4KSt4KS+4KSXIOCkj+CkleCkpOCljeCksCDgpJzgpYvgpKHgpL4uXG4iCisiIC1JfC0t4KSu4KS+4KS54KS/4KSk4KWAIC4uLiDgpI/gpJbgpL7gpKbgpY3gpK/gpL4g4KSt4KS+4KSX4KS+4KSs4KSm4KWN4KSm4KWN4KSy4KSa4KWAIOCkruCkvuCkueCkv+CkpOClgCDgpKbgpLDgpY3gpLbgpLXgpL4uXG4iCisiIC1hfC0t4KS44KWN4KS14KSv4KSCIC1vIOCkreCkvuCklyDgpLjgpY3gpLXgpK/gpIIt4KSc4KSu4KS+IOCkleCksOCkvi5cbiIKKyIgLWx8LS3gpK/gpL7gpKbgpYDgpJXgpY3gpK/gpYIg4KSoIOCknOClgeCks+CksuClh+CksuCljeCkr+CkviDgpK3gpL7gpJfgpL7gpILgpJrgpYAg4KSv4KS+4KSm4KWAIOCkleCksOCkvi5cbiIKKyIgLWR8LS3gpKTgpY3gpK/gpL7gpJfgpL4gWyAuLi5dIOCkqCDgpJzgpYHgpLPgpLLgpYfgpLLgpY3gpK/gpL4g4KSt4KS+4KSX4KS+4KSC4KSa4KS+IOCkpOCljeCkr+CkvuCklyDgpJXgpLDgpL4uXG4iCisiXG4iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjgyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tZGVwb3RkaXIgPGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLyVzLlxuIgorIiAgLVN8LS1wYXJ0c2l6ZSA8c2l6ZT4gICAgICAgICAgICAgSW4gS2lCLCBmb3IgLXMgKGRlZmF1bHQgaXMgNDUwKS5cbiIKKyIgIC1vfC0tb3V0cHV0IDxmaWxlPiAgICAgICAgICAgICAgIEZpbGVuYW1lLCBmb3IgLWogKGRlZmF1bHQgaXNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhY2thZ2U+Xzx2ZXJzaW9uPl88YXJjaD4uZGViKS5cbiIKKyIgIC1RfC0tbnBxdWlldCAgICAgICAgICAgICAgICAgICAgIEJlIHF1aWV0IHdoZW4gLWEgaXMgbm90IGEgcGFydC5cbiIKKyIgIC0tbXNkb3MgICAgICAgICAgICAgICAgICAgICAgICAgIEdlbmVyYXRlIDguMyBmaWxlbmFtZXMuXG4iCisiXG4iCittc2dzdHIgIiIKKyLgpKrgpLDgpY3gpK/gpL7gpK86XG4iCisiIC0t4KSh4KWA4KSq4KWA4KST4KSf4KWA4KSh4KWA4KSG4KSwICVzLyVzIOCkj+Clh+CkteCknOClgCDgpLXgpL7gpKrgpLDgpL4uXG4iCisiIC1TfC0t4KSt4KS+4KSX4KSG4KSV4KS+4KSwIOCkleCkv+CkrOCkvihLaUIpIOCkruCkp+ClhywgLXMg4KS44KS+4KSg4KWAICjgpKHgpL/gpKvgpYngpLLgpY3gpJ8g4KWq4KWr4KWmIOCkhuCkueClhykuXG4iCisiIC1vfC0t4KSo4KS/4KS14KWH4KS2IC1qIOCkleCksOCkv+CkpOCkviAo4KSh4KS/4KSr4KWJ4KSy4KWN4KSfIC0g4KSG4KS54KWHLuCkoeClh+CkrCkuXG4iCisiIC1RfC0t4KSP4KSo4KSq4KWA4KSV4KWN4KS14KS+4KSP4KSfIOCknOClh+CkguCkteCljeCkueCkviAtYSDgpLngpL4g4KSt4KS+4KSXIOCkqOCkvuCkueClgCDgpKTgpYfgpILgpLXgpY3gpLngpL4g4KS24KS+4KSC4KSkIOCksOCkueCkvi5cbiIKKyIgLS3gpI/gpK7gpI/gpLjgpKHgpL7gpYXgpLgg4KWuLuClqSDgpKvgpL7gpIfgpLLgpKjgpL7gpLXgpYcg4KSo4KS/4KSw4KWN4KSu4KS+4KSjIOCkleCksOCkvi5cbiIKKyJcbiIKKyLgpKjgpL/gpLDgpY3gpJfgpK4g4KS44KWN4KSl4KS/4KSk4KWAOiAwID0g4KSg4KWA4KSVOyAxID0gLWEg4KS54KS+IOCkreCkvuCklyDgpKjgpL7gpLngpYA7IDIgPSDgpLjgpILgpJXgpJ8hXG4iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjkyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJFeGl0IHN0YXR1czpcbiIKKyIgIDAgPSBva1xuIgorIiAgMSA9IHdpdGggLS1hdXRvLCBmaWxlIGlzIG5vdCBhIHBhcnRcbiIKKyIgIDIgPSB0cm91YmxlXG4iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6MTAzCittc2dpZCAiVHlwZSBkcGtnLXNwbGl0IC0taGVscCBmb3IgaGVscC4iCittc2dzdHIgIuCkruCkpuCkpOClgOCkuOCkvuCkoOClgCDgpKHgpL/gpKrgpL/gpJXgpYfgpJzgpYAt4KSk4KWL4KSh4KS+IC0t4KSu4KSm4KSkIOCkn+CkvuCkh+CkqiDgpJXgpLDgpL4iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjExNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBmaWxlIGluICUuMjUwcyIKK21zZ3N0ciAiJS4yNTBzIOCkruCkp+ClgOCksiDgpKvgpL7gpIfgpLLgpJrgpL4g4KSF4KSo4KSq4KWH4KSV4KWN4KS34KS/4KSkIOCktuClh+CkteCknyIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6MTI2Cittc2dpZCAicGFydCBzaXplIGlzIGZhciB0b28gbGFyZ2Ugb3IgaXMgbm90IHBvc2l0aXZlIgorbXNnc3RyICLgpK3gpL7gpJcg4KSG4KSV4KS+4KSwIOCkluClgeCkquCkmiDgpK7gpYvgpKDgpL4g4KSG4KS54KWHIOCkleCkv+CkguCkteCkviDgpKfgpKgg4KSo4KS+4KS54KWAIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInBhcnQgc2l6ZSBtdXN0IGJlIGF0IGxlYXN0ICVkIEtpQiAodG8gYWxsb3cgZm9yIGhlYWRlcikiCittc2dzdHIgIuCkreCkvuCklyDgpIbgpJXgpL7gpLAg4KSV4KSu4KWA4KSk4KSV4KSu4KWAICVkayDgpIXgpLjgpKPgpYcg4KSG4KS14KS24KWN4KSv4KSVICjgpLbgpL/gpLDgpY3gpLfgpJUg4KS44KSu4KS+4KS14KS/4KS34KWN4KSfIOCkueCli+Cko+CljeCkr+CkvuCkuOCkvuCkoOClgCkiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzo5MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBkZXBvdCBkaXJlY3RvcnkgYCUuMjUwcyciCittc2dzdHIgIuCkoeCkv+CkquCli+ClheCknyDgpKjgpL/gpLDgpY3gpKbgpYfgpLbgpL/gpJXgpL4gYCUuMjUwcycg4KS14KS+4KSa4KSk4KS+IOCkr+Clh+CkpCDgpKjgpL7gpLngpYAiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxMzQKK21zZ2lkICItLWF1dG8gcmVxdWlyZXMgdGhlIHVzZSBvZiB0aGUgLS1vdXRwdXQgb3B0aW9uIgorbXNnc3RyICItLeCkuOCljeCkteCkr+CkgiDgpLjgpL7gpKDgpYAgLS3gpKjgpL/gpLDgpY3gpJfgpK4g4KS54KS+IOCkquCksOCljeCkr+CkvuCkryDgpLXgpL7gpKrgpLDgpKPgpYcg4KSG4KS14KS24KWN4KSv4KSVIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTM2Cittc2dpZCAiLS1hdXRvIHJlcXVpcmVzIGV4YWN0bHkgb25lIHBhcnQgZmlsZSBhcmd1bWVudCIKK21zZ3N0ciAiLS3gpLjgpY3gpLXgpK/gpIIg4KS44KS+4KSg4KWAIOCkq+CkleCljeCkpCDgpI/gpJXgpJog4KSt4KS+4KSXIOCkq+CkvuCkh+CksiDgpKrgpLDgpY3gpK/gpL7gpK8g4KSG4KS14KS24KWN4KSv4KSVIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTQwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4KSt4KS+4KSXIOCkq+CkvuCkh+CksiBgJS4yNTBzJyDgpLXgpL7gpJrgpKTgpL4g4KSv4KWH4KSkIOCkqOCkvuCkueClgCIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE0MworIywgYy1mb3JtYXQKK21zZ2lkICJGaWxlIGAlLjI1MHMnIGlzIG5vdCBwYXJ0IG9mIGEgbXVsdGlwYXJ0IGFyY2hpdmUuXG4iCittc2dzdHIgIuCkq+CkvuCkh+CksiBgJS4yNTBzJyDgpLngpYAg4KSP4KSV4KS+IOCkrOCkueClgeCkreCkvuCklyDgpIbgpLDgpY3gpJXgpL7gpIfgpLXgpJrgpL4g4KSt4KS+4KSXIOCkqOCkvuCkueClgFxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTc5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW9wZW4gcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLgpK3gpL7gpJcg4KSr4KS+4KSH4KSyIGAlLjI1MHMnIOCkquClgeCkqOCljeCkueCkviDgpIngpJjgpKHgpKTgpL4g4KSv4KWH4KSkIOCkqOCkvuCkueClgCIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE4MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBuZXcgZGVwb3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4KSo4KS14KWA4KSoIOCkoeClh+CkquCli+ClheCknyDgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KSJ4KSY4KSh4KSk4KS+IOCkr+Clh+CkpCDgpKjgpL7gpLngpYAiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxODQKK21zZ2lkICJleHRyYWN0aW5nIHNwbGl0IHBhcnQiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE5MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVuYW1lIG5ldyBkZXBvdCBmaWxlIGAlLjI1MHMnIHRvIGAlLjI1MHMnIgorbXNnc3RyICLgpKjgpLXgpYDgpKgg4KSh4KWH4KSq4KWL4KWF4KSfIOCkq+CkvuCkh+CksiBgJS4yNTBzJyDgpJrgpYcg4KSq4KWB4KSo4KSw4KWN4KSo4KS+4KSu4KS+4KSC4KSV4KSoIGAlLjI1MHMnIOCkruCkp+ClhyDgpJXgpLDgpKTgpL4g4KSv4KWH4KSkIOCkqOCkvuCkueClgCIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE5NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiUGFydCAlZCBvZiBwYWNrYWdlICVzIGZpbGVkIChzdGlsbCB3YW50ICIKK21zZ3N0ciAi4KSq4KWF4KSV4KWH4KScICVzIOCkmuCkviDgpK3gpL7gpJcgJWQg4KSt4KSw4KSy4KWH4KSy4KS+ICjgpIXgpJzgpYLgpKgg4KSq4KS+4KS54KS/4KSc4KWHICIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjIwMAorbXNnaWQgIiBhbmQgIgorbXNnc3RyICIg4KSG4KSj4KWAIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjE0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkZWxldGUgdXNlZC11cCBkZXBvdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLgpLXgpL7gpKrgpLDgpLLgpYfgpLLgpYAg4KSh4KWH4KSq4KWL4KWF4KSfIOCkq+CkvuCkh+CksiBgJS4yNTBzJyDgpJXgpL7gpKLgpYLgpKgg4KSf4KS+4KSV4KSk4KS+IOCkr+Clh+CkpCDgpKjgpL7gpLngpYAiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyMzUKK21zZ2lkICJKdW5rIGZpbGVzIGxlZnQgYXJvdW5kIGluIHRoZSBkZXBvdCBkaXJlY3Rvcnk6XG4iCittc2dzdHIgIuCkoeClh+CkquCli+ClheCknyDgpKjgpL/gpLDgpY3gpKbgpL/gpLbgpL/gpJXgpYfgpKQg4KSF4KSh4KSX4KSzIOCktuCkv+CksuCljeCksuCklSDgpIbgpLngpYdcbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI0MCBkcGtnLXNwbGl0L3F1ZXVlLmM6MjY5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGAlLjI1MHMnIgorbXNnc3RyICJgJS4yNTBzJyDgpLjgpY3gpJ/gpYXgpJ8g4KSV4KSw4KSk4KS+IOCkr+Clh+CkpCDgpKjgpL7gpLngpYAiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNDMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiAlcyAoJWx1IGJ5dGVzKVxuIgorbXNnaWQgIiAlcyAoJWpkIGJ5dGVzKVxuIgorbXNnc3RyICIgJXMgKCVsdSDgpKzgpL7gpIfgpJ/gpY3gpLgpXG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICVzIChub3QgYSBwbGFpbiBmaWxlKVxuIgorbXNnc3RyICIgJXMgKOCkqOCkv+CkteCljeCkteCksyDgpK7gpJzgpJXgpYLgpLAg4KSr4KS+4KSH4KSyIOCkqOCkvuCkueClgClcbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI1MAorbXNnaWQgIlBhY2thZ2VzIG5vdCB5ZXQgcmVhc3NlbWJsZWQ6XG4iCittc2dzdHIgIuCkquClheCkleClh+CknOClh+CkuCDgpIXgpJzgpYLgpKgg4KSw4KWA4KSF4KS44KWH4KSC4KSs4KSyIOCkleClh+CksuClgCDgpKjgpL7gpLngpYDgpKQ6XG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIFBhY2thZ2UgJXM6IHBhcnQocykgIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFydCBmaWxlIGAlLjI1MHMnIGlzIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgIuCkreCkvuCklyDgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KS54KWAIOCkqOCkv+CkteCljeCkteCksyDgpK7gpJzgpJXgpYLgpLAg4KSr4KS+4KSH4KSyIOCkqOCkvuCkueClgCIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI3OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiKHRvdGFsICVsdSBieXRlcylcbiIKK21zZ2lkICIodG90YWwgJWpkIGJ5dGVzKVxuIgorbXNnc3RyICIo4KSs4KWH4KSw4KWA4KScICVsdSDgpKzgpL7gpIfgpJ/gpY3gpLgpXG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzozMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRpc2NhcmQgYCUuMjUwcyciCittc2dzdHIgImAlLjI1MHMnIOCkmuCkviDgpKTgpY3gpK/gpL7gpJcg4KSV4KSw4KSk4KS+IOCkr+Clh+CkpCDgpKjgpL7gpLngpYAiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzozMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGVsZXRlZCAlcy5cbiIKK21zZ3N0ciAiIgorIiVzLlxuIgorIiDgpJXgpL7gpKLgpYLgpKgg4KSf4KS+4KSV4KSy4KWHXG4iCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzo3MCBkcGtnLXNwbGl0L3NwbGl0LmM6NzYgZHBrZy1zcGxpdC9zcGxpdC5jOjgxCittc2dpZCAicGFja2FnZSBmaWVsZCB2YWx1ZSBleHRyYWN0aW9uIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxMzEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gc291cmNlIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuCkieCkl+CkriDgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KSJ4KSY4KSh4KSk4KS+IOCkr+Clh+CkpCDgpKjgpL7gpLngpYAiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxMzMKK21zZ2lkICJ1bmFibGUgdG8gZnN0YXQgc291cmNlIGZpbGUiCittc2dzdHIgIuCkieCkl+CkriDgpKvgpL7gpIfgpLIg4KSP4KSr4KS44KWN4KSf4KWF4KSfIOCkleCksOCkpOCkviDgpK/gpYfgpKQg4KSo4KS+4KS54KWAIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTM1CisjLCBjLWZvcm1hdAorbXNnaWQgInNvdXJjZSBmaWxlIGAlLjI1MHMnIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgIuCkieCkl+CkriDgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KSo4KS/4KS14KWN4KS14KSzIOCkruCknOCkleClguCksCDgpKvgpL7gpIfgpLIg4KSo4KS+4KS54KWAIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTUzCisjLCBjLWZvcm1hdAorbXNnaWQgIlNwbGl0dGluZyBwYWNrYWdlICVzIGludG8gJWQgcGFydDogIgorbXNnaWRfcGx1cmFsICJTcGxpdHRpbmcgcGFja2FnZSAlcyBpbnRvICVkIHBhcnRzOiAiCittc2dzdHJbMF0gIiIKK21zZ3N0clsxXSAiIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTkzCittc2dpZCAiIgorIkhlYWRlciBpcyB0b28gbG9uZywgbWFraW5nIHBhcnQgdG9vIGxvbmcuIFlvdXIgcGFja2FnZSBuYW1lIG9yIHZlcnNpb25cbiIKKyJudW1iZXJzIG11c3QgYmUgZXh0cmFvcmRpbmFyaWx5IGxvbmcsIG9yIHNvbWV0aGluZy4gR2l2aW5nIHVwLlxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoyNDkKK21zZ2lkICItLXNwbGl0IG5lZWRzIGEgc291cmNlIGZpbGVuYW1lIGFyZ3VtZW50IgorbXNnc3RyICItLeCkpOCli+CkoeCkviDgpLjgpL7gpKDgpYAg4KSJ4KSX4KSuIOCkq+CkvuCkh+CksuCkqOCkvuCktSDgpKrgpLDgpY3gpK/gpL7gpK8g4KSm4KWH4KSj4KWHIOCkl+CksOCknOClh+CkmuClhyIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjI1MgorbXNnaWQgIi0tc3BsaXQgdGFrZXMgYXQgbW9zdCBhIHNvdXJjZSBmaWxlbmFtZSBhbmQgZGVzdGluYXRpb24gcHJlZml4IgorbXNnc3RyICItLeCkpOCli+CkoeCkviDgpLjgpL7gpKDgpYAg4KSc4KS+4KS44KWN4KSk4KS/4KSkIOCknOCkvuCkuOCljeCkpCDgpIngpJfgpK4g4KSr4KS+4KSH4KSy4KSo4KS+4KS1IOCkhuCko+ClgCDgpIXgpILgpKTgpL/gpK7gpLjgpY3gpKXgpL7gpKgg4KSJ4KSq4KS44KSw4KWN4KSXIOCkpuClh+CkpOCkviDgpK/gpYfgpKTgpL7gpKQiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo4NAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIlxuIgorI3wgIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyN8ICJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLiIKK21zZ2lkICIiCisiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMC0yMDAyIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDA5LTIwMTAgUmFwaGFlbCBIZXJ0em9nLlxuIgorbXNnc3RyICIiCisiXG4iCisi4KS44KSw4KWN4KS14KS+4KSn4KS/4KSV4KS+4KSwIChDKSDgpafgpa/gpa/gpasg4KSG4KSv4KSoIOCknOClheCkleCkuOCkqC5cbiIKKyLgpLjgpLDgpY3gpLXgpL7gpKfgpL/gpJXgpL7gpLAgKEMpIOClqOClpuClpuClpizgpajgpabgpabgpacg4KS14KS/4KSa4KSw4KWN4KSfIOCkheClheCkleCljeCkleClh+CksOCkruCkqC4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMDEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC0taW5zdGFsbCA8bGluaz4gPG5hbWU+IDxwYXRoPiA8cHJpb3JpdHk+XG4iCisiICAgIFstLXNsYXZlIDxsaW5rPiA8bmFtZT4gPHBhdGg+XSAuLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBhZGQgYSBncm91cCBvZiBhbHRlcm5hdGl2ZXMgdG8gdGhlIHN5c3RlbS5cbiIKKyIgIC0tcmVtb3ZlIDxuYW1lPiA8cGF0aD4gICByZW1vdmUgPHBhdGg+IGZyb20gdGhlIDxuYW1lPiBncm91cCBhbHRlcm5hdGl2ZS5cbiIKKyIgIC0tcmVtb3ZlLWFsbCA8bmFtZT4gICAgICByZW1vdmUgPG5hbWU+IGdyb3VwIGZyb20gdGhlIGFsdGVybmF0aXZlcyAiCisic3lzdGVtLlxuIgorIiAgLS1hdXRvIDxuYW1lPiAgICAgICAgICAgIHN3aXRjaCB0aGUgbWFzdGVyIGxpbmsgPG5hbWU+IHRvIGF1dG9tYXRpYyBtb2RlLlxuIgorIiAgLS1kaXNwbGF5IDxuYW1lPiAgICAgICAgIGRpc3BsYXkgaW5mb3JtYXRpb24gYWJvdXQgdGhlIDxuYW1lPiBncm91cC5cbiIKKyIgIC0tcXVlcnkgPG5hbWU+ICAgICAgICAgICBtYWNoaW5lIHBhcnNlYWJsZSB2ZXJzaW9uIG9mIC0tZGlzcGxheSA8bmFtZT4uXG4iCisiICAtLWxpc3QgPG5hbWU+ICAgICAgICAgICAgZGlzcGxheSBhbGwgdGFyZ2V0cyBvZiB0aGUgPG5hbWU+IGdyb3VwLlxuIgorIiAgLS1nZXQtc2VsZWN0aW9ucyAgICAgICAgIGxpc3QgbWFzdGVyIGFsdGVybmF0aXZlIG5hbWVzIGFuZCB0aGVpciBzdGF0dXMuXG4iCisiICAtLXNldC1zZWxlY3Rpb25zICAgICAgICAgcmVhZCBhbHRlcm5hdGl2ZSBzdGF0dXMgZnJvbSBzdGFuZGFyZCBpbnB1dC5cbiIKKyIgIC0tY29uZmlnIDxuYW1lPiAgICAgICAgICBzaG93IGFsdGVybmF0aXZlcyBmb3IgdGhlIDxuYW1lPiBncm91cCBhbmQgYXNrICIKKyJ0aGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2VyIHRvIHNlbGVjdCB3aGljaCBvbmUgdG8gdXNlLlxuIgorIiAgLS1zZXQgPG5hbWU+IDxwYXRoPiAgICAgIHNldCA8cGF0aD4gYXMgYWx0ZXJuYXRpdmUgZm9yIDxuYW1lPi5cbiIKKyIgIC0tYWxsICAgICAgICAgICAgICAgICAgICBjYWxsIC0tY29uZmlnIG9uIGFsbCBhbHRlcm5hdGl2ZXMuXG4iCisiXG4iCittc2dzdHIgIiIKKyLgpLDgpYDgpKQ6ICVzIFs84KSq4KSw4KWN4KSv4KS+4KSvPiAuLi5dIDzgpLjgpK7gpL7gpKbgpYfgpLY+XG4iCisiXG4iCisi4KS44KSu4KS+4KSm4KWH4KS2OlxuIgorIiAgLS3gpIXgpKfgpL/gpLfgpY3gpKDgpL7gpKrgpL4gPOCkuOCkvuCkluCks+ClgD4gPOCkqOCkvuCktT4gPOCkruCkvuCksOCljeCklz4gPOCkheCkl+CljeCksOCkleCljeCksOCkrj5cbiIKKyIgICAgWy0t4KSX4KWB4KSy4KS+4KSuIDzgpLjgpL7gpJbgpLPgpYA+IDzgpKjgpL7gpLU+IDzgpK7gpL7gpLDgpY3gpJc+XSAuLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICDgpKrgpY3gpLDgpKPgpL7gpLLgpYDgpK7gpKfgpYcg4KS14KS/4KSV4KSy4KWN4KSq4KS+4KSC4KSa4KWHIOCkuOCkruClguCkuSDgpKzgpKjgpLXgpL4uXG4iCisiICAtLeCkleCkvuCkouCkviA84KSo4KS+4KS1PiA84KSu4KS+4KSw4KWN4KSXPiAgICA84KSo4KS+4KS1PiDgpLjgpK7gpYLgpLkg4KS14KS/4KSV4KSy4KWN4KSq4KS+4KSk4KWC4KSoIDzgpK7gpL7gpLDgpY3gpJc+IOCkleCkvuCkouClguCkqCDgpJ/gpL7gpJXgpL4uXG4iCisiICAtLeCkleCkvuCkouCkvi3gpLjgpLDgpY3gpLUgPOCkqOCkvuCktT4gICAgICDgpLXgpL/gpJXgpLLgpY3gpKog4KSq4KWN4KSw4KSj4KS+4KSy4KWA4KSk4KWC4KSoIDzgpKjgpL7gpLU+IOCkuOCkruClguCkuSDgpJXgpL7gpKLgpYLgpKgg4KSf4KS+4KSV4KS+LlxuIgorIiAgLS3gpLjgpY3gpLXgpK/gpIIgPOCkqOCkvuCktT4gICAgICAgICAgICDgpKrgpY3gpLDgpK7gpYHgpJYg4KS44KS+4KSW4KSz4KWAIDzgpKjgpL7gpLU+IOCkuOCljeCkteCkr+CkguCkmuCksuCkv+CkpCDgpKrgpKbgpY3gpKfgpKTgpYDgpKQg4KS44KWN4KS14KS/4KSaIOCkleCksOCkvi5cbiIKKyIgIC0t4KSm4KS+4KSW4KS14KS+IDzgpKjgpL7gpLU+ICAgICAgICAgPOCkqOCkvuCktT4g4KS44KSu4KWC4KS54KS+4KS44KSC4KSs4KSC4KSn4KWA4KSa4KWAIOCkruCkvuCkueCkv+CkpOClgCDgpKbgpL7gpJbgpLXgpL4uXG4iCisiICAtLeCkr+CkvuCkpuClgCA84KSo4KS+4KS1PiAgICAgICAgICAgIDzgpKjgpL7gpLU+IOCkuOCkruClguCkueCkvuCkmuClgCDgpLjgpLDgpY3gpLUg4KSy4KSV4KWN4KS34KWN4KSv4KWHIOCkpuCkvuCkluCkteCkvi5cbiIKKyIgIC0t4KS44KSC4KSw4KSa4KSo4KS+IDzgpKjgpL7gpLU+ICAgICAgICAgIDzgpKjgpL7gpLU+IOCkuOCkruClguCkueCkvuCkuOCkvuCkoOClgOCkmuClhyDgpLXgpL/gpJXgpLLgpY3gpKog4KSm4KS+4KSW4KS14KS+IOCkhuCko+ClgCDgpLXgpL7gpKrgpLDgpJXgpLDgpY3gpKTgpY3gpK/gpL7gpLLgpL5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICDgpLngpLXgpL4g4KSF4KS44KSy4KWH4KSy4KS+IOCkqOCkv+CkteCkoeCko+CljeCkr+CkvuCkuCDgpLjgpL7gpILgpJfgpL4uXG4iCisiICAtLeCkqOCkv+CktuCljeCkmuCkv+CkpOClgCA84KSo4KS+4KS1PiA84KSu4KS+4KSw4KWN4KSXPiAgICAgIDzgpKjgpL7gpLU+IOCkleCksOCkv+CkpOCkviDgpLXgpL/gpJXgpLLgpY3gpKog4KSu4KWN4KS54KSj4KWC4KSoIDzgpK7gpL7gpLDgpY3gpJc+IOCkqOCkv+CktuCljeCkmuCkv+CkpCDgpJXgpLDgpL4uXG4iCisiICAtLeCkuOCksOCljeCktSAgICAgICAgICAgICAgICAgICAg4KS44KSw4KWN4KS1IOCkteCkv+CkleCksuCljeCkquCkvuCkguCkteCksCAtLeCkuOCkguCksOCkmuCkqOCkviDgpJrgpL7gpLLgpLXgpL4uXG4iCisiXG4iCisiPOCkuOCkvuCkluCks+ClgD4g4KS54KWAIC/gpIfgpJ/gpYDgpLjgpYAv4KS14KS/4KSV4KSy4KWN4KSqLzzgpKjgpL7gpLU+IOCkleCkoeClhyDgpKjgpL/gpLDgpY3gpKbgpYfgpLYg4KSV4KSw4KSj4KS+4KSw4KWAIOCkuOCkv+CkruCksuCkv+CkguCklSDgpIbgpLngpYcuXG4iCisiICAo4KSJ4KSm4KS+LiAv4KSv4KWC4KSd4KSwL+CkrOCkv+CkqC/gpKrgpYfgpKrgpLApXG4iCisiPOCkqOCkvuCktT4g4KS54KWHIOCkr+CkviDgpLjgpL7gpJbgpLPgpYAg4KS44KSu4KWC4KS54KS+4KS44KS+4KSg4KWA4KSa4KWHIOCkquCljeCksOCkruClgeCkliDgpKjgpL7gpLUg4KSG4KS54KWHLlxuIgorIiAgKOCkieCkpuCkvi4g4KSq4KWH4KSq4KSwKVxuIgorIjzgpK7gpL7gpLDgpY3gpJc+IOCkueClhyDgpLXgpL/gpJXgpLLgpY3gpKog4KSy4KSV4KWN4KS34KWN4KSvIOCkq+CkvuCkr+CksuClgOCkguCkquClhuClh+CkleClgCDgpI/gpJXgpL7gpJrgpYcg4KS44KWN4KSl4KS+4KSoIOCkhuCkueClhy5cbiIKKyIgICjgpIngpKbgpL4uIC/gpK/gpYLgpJ3gpLAv4KSs4KS/4KSoL+CksuClh+CkuClcbiIKKyI84KSF4KSX4KWN4KSw4KSV4KWN4KSw4KSuPiDgpLngpL4g4KSq4KWC4KSw4KWN4KSj4KS+4KSC4KSVIOCkhuCkueClhzsg4KS44KWN4KS14KSv4KSC4KSa4KSy4KS/4KSkIOCkquCkpuCljeCkp+CkpOClgOCkruCkp+ClhyDgpK7gpYvgpKDgpYcg4KSF4KSC4KSVIOCkheCkuOCksuClh+CksuCljeCkr+CkviDgpKrgpLDgpY3gpK/gpL7gpK/gpL7gpILgpKjgpL4g4KSF4KSn4KS/4KSVIOCkheCkl+CljeCksOCkleCljeCksOCkriAiCisi4KSG4KS54KWHLlxuIgorIlxuIgorIuCkquCksOCljeCkr+CkvuCkrzpcbiIKKyIgIC0t4KSF4KSy4KWN4KSf4KSh4KS/4KSwIDzgpKjgpL/gpLDgpY3gpKbgpYfgpLbgpL/gpJXgpL4+ICAgICDgpLXgpL/gpJXgpLLgpY3gpKog4KSo4KS/4KSw4KWN4KSm4KWH4KS24KS/4KSV4KS+IOCkrOCkpuCksuCkvi5cbiIKKyIgIC0t4KSF4KWF4KSh4KSu4KS/4KSo4KSh4KS/4KSwIDzgpKjgpL/gpLDgpY3gpKbgpYfgpLbgpL/gpJXgpL4+ICAg4KS14KWN4KSv4KS14KS44KWN4KSl4KS+4KSq4KSV4KWA4KSvIOCkqOCkv+CksOCljeCkpuClh+CktuCkv+CkleCkviDgpKzgpKbgpLLgpL4uXG4iCisiICAtLeCkmuCkvuCkmuCko+ClgCAgICAgICAgICAgICAgICAgICDgpJXgpL7gpLngpYDgpLngpYAg4KSV4KSw4KWBIOCkqOCkleCkviwg4KSr4KSV4KWN4KSkIOCkquCljeCksOCkvuCkpOCljeCkr+CkleCljeCkt+Ckv+CklSDgpKbgpL7gpJbgpLXgpL4uXG4iCisiICAtLeCktuCkrOCljeCkpuCkrOCkueClgeCksiAgICAgICAgICAgICAgICDgpLbgpKzgpY3gpKbgpKzgpLngpYHgpLIg4KS44KSC4KSV4KWN4KSw4KS/4KSv4KS+LCDgpJzgpL7gpLjgpY3gpKQg4KSo4KS/4KSw4KWN4KSX4KSuLlxuIgorIiAgLS3gpLbgpL7gpILgpKQgICAgICAgICAgICAgICAgICDgpLbgpL7gpILgpKQg4KS44KSC4KSV4KWN4KSw4KS/4KSv4KS+LCDgpJXgpK7gpYDgpKTgpJXgpK7gpYAg4KSo4KS/4KSw4KWN4KSX4KSuLlxuIgorIiAgLS3gpK7gpKbgpKQgICAgICAgICAgICAgICAgICAg4KS54KS+IOCkruCkpuCkpOClgOCkmuCkviDgpLjgpILgpKbgpYfgpLYg4KSm4KS+4KSW4KS14KS+LlxuIgorIiAgLS3gpIbgpLXgpYPgpKTgpY3gpKTgpYAgICAgICAgICAgICAgICAg4KSG4KS14KWD4KSk4KWN4KSk4KWA4KSa4KWAIOCkruCkvuCkueCkv+CkpOClgCDgpKbgpL7gpJbgpLXgpL4uXG4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIjxsaW5rPiBpcyB0aGUgc3ltbGluayBwb2ludGluZyB0byAlcy88bmFtZT4uXG4iCisiICAoZS5nLiAvdXNyL2Jpbi9wYWdlcilcbiIKKyI8bmFtZT4gaXMgdGhlIG1hc3RlciBuYW1lIGZvciB0aGlzIGxpbmsgZ3JvdXAuXG4iCisiICAoZS5nLiBwYWdlcilcbiIKKyI8cGF0aD4gaXMgdGhlIGxvY2F0aW9uIG9mIG9uZSBvZiB0aGUgYWx0ZXJuYXRpdmUgdGFyZ2V0IGZpbGVzLlxuIgorIiAgKGUuZy4gL3Vzci9iaW4vbGVzcylcbiIKKyI8cHJpb3JpdHk+IGlzIGFuIGludGVnZXI7IG9wdGlvbnMgd2l0aCBoaWdoZXIgbnVtYmVycyBoYXZlIGhpZ2hlciBwcmlvcml0eSAiCisiaW5cbiIKKyIgIGF1dG9tYXRpYyBtb2RlLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hbHRkaXIgPGRpcmVjdG9yeT4gICAgIGNoYW5nZSB0aGUgYWx0ZXJuYXRpdmVzIGRpcmVjdG9yeS5cbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICBjaGFuZ2UgdGhlIGFkbWluaXN0cmF0aXZlIGRpcmVjdG9yeS5cbiIKKyIgIC0tbG9nIDxmaWxlPiAgICAgICAgICAgICBjaGFuZ2UgdGhlIGxvZyBmaWxlLlxuIgorIiAgLS1mb3JjZSAgICAgICAgICAgICAgICAgIGFsbG93IHJlcGxhY2luZyBmaWxlcyB3aXRoIGFsdGVybmF0aXZlIGxpbmtzLlxuIgorIiAgLS1za2lwLWF1dG8gICAgICAgICAgICAgIHNraXAgcHJvbXB0IGZvciBhbHRlcm5hdGl2ZXMgY29ycmVjdGx5ICIKKyJjb25maWd1cmVkXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gYXV0b21hdGljIG1vZGUgKHJlbGV2YW50IGZvciAtLWNvbmZpZyBvbmx5KVxuIgorIiAgLS12ZXJib3NlICAgICAgICAgICAgICAgIHZlcmJvc2Ugb3BlcmF0aW9uLCBtb3JlIG91dHB1dC5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBxdWlldCBvcGVyYXRpb24sIG1pbmltYWwgb3V0cHV0LlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIgorIuCksOClgOCkpDogJXMgWzzgpKrgpLDgpY3gpK/gpL7gpK8+IC4uLl0gPOCkuOCkruCkvuCkpuClh+Cktj5cbiIKKyJcbiIKKyLgpLjgpK7gpL7gpKbgpYfgpLY6XG4iCisiICAtLeCkruCkv+Cks+CkteCkviA84KSu4KS+4KSy4KSVPiA84KS44KSu4KWC4KS5PiA84KSq4KSm4KWN4KSn4KSk4KWAPiA84KSr4KS+4KSH4KSyPlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIOCkoeClh+Ckn+CkvuCkrOClh+CkuOCkruCkp+ClhyDgpKjgpLXgpYDgpKgg4KSo4KWL4KSC4KSmIOCkpOCkr+CkvuCksCDgpJXgpLDgpL4uXG4iCisiICAtLeCkleCkvuCkouCkviA84KSr4KS+4KSH4KSyPiAgICAgICAgICDgpKvgpL7gpIfgpLIg4KSh4KWH4KSf4KS+4KSs4KWH4KS44KSu4KSn4KWC4KSoIOCkleCkvuCkouClguCkqCDgpJ/gpL7gpJXgpL4uXG4iCisiICAtLeCkr+CkvuCkpuClgCBbPOCkl+CljeCksuCli+CkrC3gpLjgpL7gpJrgpL4+XSAg4KSh4KWH4KSf4KS+4KSs4KWH4KS44KSu4KSn4KWA4KSyIOCkuOCkpuCljeCkp+CljeCkr+CkvuCkmuCljeCkr+CkviDgpIXgpYvgpLXgpY3gpLngpLDgpLDgpL7gpIfgpKHgpY3gpLgg4KSa4KWAIOCkr+CkvuCkpuClgCDgpKzgpKjgpLXgpL4uXG4iCisiXG4iCisi4KSq4KSw4KWN4KSv4KS+4KSvOlxuIgorIiAgLS3gpLXgpY3gpK/gpLXgpLjgpY3gpKXgpL7gpKjgpL/gpLDgpY3gpKbgpYfgpLbgpL/gpJXgpL4gPOCkqOCkv+CksOCljeCkpuClh+CktuCkv+CkleCkvj4gICDgpLjgpY3gpJ/gpYXgpJ/gpIXgpYvgpLXgpY3gpLngpLDgpLDgpL7gpIfgpKEg4KSr4KS+4KSv4KSy4KWA4KS44KS5IOCkqOCkv+CksOCljeCkpuClh+CktuCkv+CkleCkviDgpKjgpL/gpLbgpY3gpJrgpL/gpKQg4KSV4KSw4KS+LlxuIgorIiAgLS3gpLjgpYHgpKfgpL7gpLDgpL4gICAgICAgICAgICAgICAgIOCkq+CkvuCkh+CksuCkmuCljeCkr+CkviDgpKrgpLDgpLXgpL7gpKjgpJfgpY3gpK/gpL4g4KSk4KS+4KSk4KWN4KSV4KS+4KSzIOCkuOClgeCkp+CkvuCksOCkv+CkpCDgpJXgpLDgpL4uXG4iCisiICAtLeCkrOCks+CknOCkrOCksOClgCAgICAgICAgICAgICAgIOCkheCkmuClgeCkleCkpOClh+CkmuClhyDgpKrgpLDgpL/gpJXgpY3gpLfgpKMg4KSF4KSv4KS24KS44KWN4KS14KWAIOCkneCkvuCksuClhyDgpKTgpLDgpYDgpLngpYAg4KSs4KSz4KSc4KSs4KSw4KWA4KSo4KWHIOCkj+CkluCkvuCkpuClgCDgpJXgpY3gpLDgpL/gpK/gpL4gIgorIuCkleCksOCkvi5cbiIKKyIgIC0t4KS24KS+4KSC4KSkICAgICAgICAgICAgICAgICAg4KS24KS+4KSC4KSkIOCkuOCkguCkleCljeCksOCkv+Ckr+Ckviwg4KSV4KSu4KWA4KSk4KSV4KSu4KWAIOCkqOCkv+CksOCljeCkl+Ckri5cbiIKKyIgIC0t4KSu4KSm4KSkICAgICAgICAgICAgICAgICAgIOCkueCkviDgpK7gpKbgpKTgpYDgpJrgpL4g4KS44KSC4KSm4KWH4KS2IOCkpuCkvuCkluCkteCkvi5cbiIKKyIgIC0t4KSG4KS14KWD4KSk4KWN4KSk4KWAICAgICAgICAgICAgICAgIOCkhuCkteClg+CkpOCljeCkpOClgOCkmuClgCDgpK7gpL7gpLngpL/gpKTgpYAg4KSm4KS+4KSW4KS14KS+LlxuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNjMKKyMsIGZ1enp5CisjfCBtc2dpZCAicGFyc2UgZXJyb3IiCittc2dpZCAiZXJyb3IiCittc2dzdHIgIuCkquCkvuCksOCljeCkuCDgpKTgpY3gpLDgpYHgpJ/gpYAiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxOTMKK21zZ2lkICJ3YXJuaW5nIgorbXNnc3RyICLgpKfgpYvgpJXgpY3gpK/gpL7gpJrgpYAg4KS44KWB4KSa4KSo4KS+IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MzU2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ0d28gY29tbWFuZHMgc3BlY2lmaWVkOiAtLSVzIGFuZCAtLSVzIgorbXNnc3RyICLgpKbgpYvgpKgg4KSq4KSm4KWN4KSn4KSk4KWAIOCkqOCkv+CksOCljeCkp+CkvuCksOClgOCkpCDgpJXgpYfgpLLgpY3gpK/gpL7gpKQ6ICVzIOCkhuCko+ClgCAtLSVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6Mzg3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW5ub3Qgb3BlbiBkaXZlcnNpb25zOiAlcyIKK21zZ2lkICJjYW5ub3QgYXBwZW5kIHRvICclcyciCittc2dzdHIgIuCkteCks+CkteCksuClh+CksuClhzogJXMg4KSJ4KSY4KSh4KSk4KS+IOCkr+Clh+CkpCDgpKjgpL7gpLngpYAiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo1NTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byByZW1vdmUgJXM6ICVzIgorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgJyVzJyIKK21zZ3N0ciAiICVzIOCkleCkvuCkouClguCkqCDgpJ/gpL7gpJXgpKTgpL4g4KSv4KWH4KSkIOCkqOCkvuCkueClgDogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTExCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBmaWxlIHdoaWxlIHRyeWluZyB0byByZWFkICVzIgorbXNnc3RyICIlLjI1NXMg4KSk4KWA4KSyICVzIOCkruCkp+ClgOCksiDgpKvgpL7gpIfgpLLgpJrgpL4g4KSF4KSo4KSq4KWH4KSV4KWN4KS34KS/4KSkIOCktuClh+CkteCknyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMTMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIndoaWxlIHJlYWRpbmcgJXM6ICVzIgorbXNnc3RyICIlczogJXMg4KS14KS+4KSa4KSk4KS+IOCkr+Clh+CkpCDgpKjgpL7gpLngpYAiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTE5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJsaW5lIG5vdCB0ZXJtaW5hdGVkIHdoaWxlIHRyeWluZyB0byByZWFkICVzIgorbXNnc3RyICIlLjI1NXMg4KSk4KWA4KSyICVzIOCkruCkp+ClgOCksiDgpKvgpL7gpIfgpLLgpJrgpL4g4KSF4KSo4KSq4KWH4KSV4KWN4KS34KS/4KSkIOCktuClh+CkteCknyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMzcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzIGNvcnJ1cHQ6ICVzIgorbXNnc3RyICLgpIXgpILgpKTgpLDgpY3gpJfgpKQg4KSk4KWN4KSw4KWB4KSf4KWAOiAlcyDgpK3gpY3gpLDgpLfgpY3gpJ86ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE1MAorIywgYy1mb3JtYXQKK21zZ2lkICJuZXdsaW5lcyBwcm9oaWJpdGVkIGluIHVwZGF0ZS1hbHRlcm5hdGl2ZXMgZmlsZXMgKCVzKSIKK21zZ3N0ciAi4KS44KWB4KSn4KS+4KSwLeCkteCkv+CkleCksuCljeCkqiDgpKvgpL7gpK/gpLLgpYDgpILgpK7gpKfgpYcg4KSo4KWN4KSv4KWC4KSy4KS+4KSH4KSo4KWN4KS4IOCkqOCkviDgpK7gpKjgpL7gpIggKCVzKSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNjMKK21zZ2lkICJzbGF2ZSBuYW1lIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTcxIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDA1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJkdXBsaWNhdGUgc2xhdmUgJXMiCittc2dpZCAiZHVwbGljYXRlIHNsYXZlIG5hbWUgJXMiCittc2dzdHIgIuCkquClgeCkqOCksOCkvuCkteClg+CkpOCljeCkpCDgpJfgpYHgpLLgpL7gpK4gJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTc0CisjLCBmdXp6eQorbXNnaWQgInNsYXZlIGxpbmsiCittc2dzdHIgIuCkquClgeCkqOCksOCkvuCkteClg+CkpOCljeCkpCDgpJfgpYHgpLLgpL7gpK4g4KS44KS+4KSW4KSz4KWAICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE3OAorIywgYy1mb3JtYXQKK21zZ2lkICJzbGF2ZSBsaW5rIHNhbWUgYXMgbWFpbiBsaW5rICVzIgorbXNnc3RyICLgpJfgpYHgpLLgpL7gpK4g4KS44KS+4KSW4KSz4KWAIOCkquCljeCksOCkruClgeCkliDgpLjgpL7gpJbgpLPgpYAgJXMg4KS44KS+4KSw4KSW4KWA4KSaIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE4NSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQxMgorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgc2xhdmUgbGluayAlcyIKK21zZ3N0ciAi4KSq4KWB4KSo4KSw4KS+4KS14KWD4KSk4KWN4KSkIOCkl+ClgeCksuCkvuCkriDgpLjgpL7gpJbgpLPgpYAgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjA0Cittc2dpZCAibWFzdGVyIGZpbGUiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHBhdGggJXMiCittc2dzdHIgIuCkquClgeCkqOCksOCkvuCkteClg+CkpOCljeCkpCDgpK7gpL7gpLDgpY3gpJcgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjI2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiYWx0ZXJuYXRpdmUgJXMgKHBhcnQgb2YgbGluayBncm91cCAlcykgZG9lc24ndCBleGlzdC4gUmVtb3ZpbmcgZnJvbSBsaXN0IG9mICIKKyJhbHRlcm5hdGl2ZXMuIgorbXNnc3RyICIiCisiJXMg4KS44KS+4KSg4KWA4KSa4KS+IOCkteCkv+CkleCksuCljeCkqiAlcyDgpJXgpKHgpYcg4KSo4KS/4KSw4KWN4KSm4KWH4KS2IOCkleCksOCkpOCliyAtIOCknOCliyDgpLjgpL7gpKrgpKHgpLLgpL4g4KSo4KS+4KS54KWALiDgpLXgpL/gpJXgpLLgpY3gpKrgpL7gpILgpJrgpY3gpK/gpL4g4KSv4KS+4KSm4KWA4KSk4KWC4KSoIOCkleCkvuCkouClguCkqCAiCisi4KSf4KS+4KSV4KSkIOCkhuCkueClhy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjI5IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjQwCisjLCBmdXp6eQorbXNnaWQgInByaW9yaXR5IgorbXNnc3RyICLgpIXgpJfgpY3gpLDgpJXgpY3gpLDgpK4gJXMgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjMyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjQ5Cittc2dpZCAic2xhdmUgZmlsZSIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI0NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAicHJpb3JpdHkgb2YgJXM6ICVzIgorbXNnc3RyICLgpIXgpJfgpY3gpLDgpJXgpY3gpLDgpK4gJXMgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjk3Cittc2dpZCAic3RhdHVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjk5Cittc2dpZCAiaW52YWxpZCBzdGF0dXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzMDQKKyMsIGZ1enp5Cittc2dpZCAibWFzdGVyIGxpbmsiCittc2dzdHIgIuCkquClgeCkqOCksOCkvuCkteClg+CkpOCljeCkpCDgpJfgpYHgpLLgpL7gpK4g4KS44KS+4KSW4KSz4KWAICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTM0OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZGlzY2FyZGluZyBvYnNvbGV0ZSBzbGF2ZSBsaW5rICVzICglcykuIgorbXNnc3RyICLgpJXgpL7gpLLgpKzgpL7gpLngpY3gpK8g4KSX4KWB4KSy4KS+4KSuIOCkuOCkvuCkluCks+ClgCAlcyAoJXMpIOCkpOCljeCkr+CkvuCkl+CkpCDgpIbgpLngpYcuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2OQorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MzgKK21zZ2lkICJhdXRvIG1vZGUiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MDIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NzgKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjM5Cittc2dpZCAibWFudWFsIG1vZGUiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiAgbGluayBjdXJyZW50bHkgcG9pbnRzIHRvICVzIgorbXNnc3RyICLgpLjgpL7gpJbgpLPgpYAg4KS44KSm4KWN4KSn4KWN4KSv4KS+ICVzIOCkleCkoeClhyDgpKjgpL/gpLDgpY3gpKbgpYfgpLYg4KSV4KSw4KSk4KWHIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwOAorIywgZnV6enkKK21zZ2lkICIgIGxpbmsgY3VycmVudGx5IGFic2VudCIKK21zZ3N0ciAi4KS44KS+4KSW4KSz4KWAIOCkuOCkpuCljeCkp+CljeCkr+CkviDgpIXgpLjgpY3gpKTgpL/gpKTgpY3gpLXgpL7gpKQg4KSo4KS+4KS54KWAIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUxMgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiJXMgLSBwcmlvcml0eSAlcyIKK21zZ2lkICIlcyAtIHByaW9yaXR5ICVkIgorbXNnc3RyICIlcyAtIOCkheCkl+CljeCksOCkleCljeCksOCkriAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MTUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiAgc2xhdmUgJXM6ICVzIgorbXNnc3RyICIg4KSX4KWB4KSy4KS+4KSuICVzOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MjIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIkN1cnJlbnQgJ2Jlc3QnIHZlcnNpb24gaXMgJyVzJy4iCittc2dzdHIgIuCkuOCkpuCljeCkp+CljeCkr+CkvuCkmuClgCBg4KS44KSw4KWN4KS14KS+4KSkIOCkmuCkvuCkguCkl+CksuClgCcg4KSG4KS14KWD4KSk4KWN4KSk4KWAICVzIOCkhuCkueClhy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTI0Cittc2dpZCAiTm8gdmVyc2lvbnMgYXZhaWxhYmxlLiIKK21zZ3N0ciAi4KSG4KS14KWD4KSk4KWN4KSk4KWN4KSv4KS+IOCkieCkquCksuCkrOCljeCkpyDgpKjgpL7gpLngpYDgpKQuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU1MworIywgYy1mb3JtYXQKK21zZ2lkICJUaGVyZSBpcyAlZCBjaG9pY2UgZm9yIHRoZSBhbHRlcm5hdGl2ZSAlcyAocHJvdmlkaW5nICVzKS4iCittc2dpZF9wbHVyYWwgIlRoZXJlIGFyZSAlZCBjaG9pY2VzIGZvciB0aGUgYWx0ZXJuYXRpdmUgJXMgKHByb3ZpZGluZyAlcykuIgorbXNnc3RyWzBdICIiCittc2dzdHJbMV0gIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NjAKKyMsIGZ1enp5Cittc2dpZCAiU2VsZWN0aW9uIgorbXNnc3RyICLgpLXgpLDgpY3gpKPgpKgiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYxCittc2dpZCAiUGF0aCIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2MQorIywgZnV6enkKK21zZ2lkICJQcmlvcml0eSIKK21zZ3N0ciAi4KSF4KSX4KWN4KSw4KSV4KWN4KSw4KSuICVzICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2MQorbXNnaWQgIlN0YXR1cyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU4MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiUHJlc3MgZW50ZXIgdG8ga2VlcCB0aGUgY3VycmVudCBjaG9pY2VbKl0sIG9yIHR5cGUgc2VsZWN0aW9uIG51bWJlcjogIgorbXNnc3RyICLgpKHgpL/gpKvgpYngpLLgpY3gpJ9bKl0g4KSg4KWH4KS14KSj4KWN4KSv4KS+4KS44KS+4KSg4KWAIOCkj+CkguCkn+CksCDgpKbgpL7gpKzgpL4sIOCkleCkv+CkguCkteCkviDgpKjgpL/gpLXgpKEg4KSF4KSC4KSVIOCkn+CkvuCkh+CkqiDgpJXgpLDgpL46ICIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3MjEKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IHJlcGxhY2luZyAlcyB3aXRoIGEgbGluay4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3NjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2FuJ3QgaW5zdGFsbCB1bmtub3duIGNob2ljZSAlcyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTc4MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisic2tpcCBjcmVhdGlvbiBvZiAlcyBiZWNhdXNlIGFzc29jaWF0ZWQgZmlsZSAlcyAob2YgbGluayBncm91cCAlcykgZG9lc24ndCAiCisiZXhpc3QuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNzkwCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vdCByZW1vdmluZyAlcyBzaW5jZSBpdCdzIG5vdCBhIHN5bWxpbmsuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDQxIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDQ3CisjLCBjLWZvcm1hdAorbXNnaWQgIkNhbGwgJXMuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDUxCisjLCBjLWZvcm1hdAorbXNnaWQgIkFsdGVybmF0aXZlICVzIHVuY2hhbmdlZCBiZWNhdXNlIGNob2ljZSAlcyBpcyBub3QgYXZhaWxhYmxlLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA1NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiU2tpcCB1bmtub3duIGFsdGVybmF0aXZlICVzLiIKK21zZ3N0ciAi4KS14KS/4KSV4KSy4KWN4KSqIGAlcycg4KS44KS+4KSq4KSh4KSkIOCkqOCkvuCkueClgC4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDc3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJsaW5lIHRvbyBsb25nIG9yIG5vdCB0ZXJtaW5hdGVkIHdoaWxlIHRyeWluZyB0byByZWFkICVzIgorbXNnc3RyICIlLjI1NXMg4KSk4KWA4KSyICVzIOCkruCkp+ClgOCksiDgpKvgpL7gpIfgpLLgpJrgpL4g4KSF4KSo4KSq4KWH4KSV4KWN4KS34KS/4KSkIOCktuClh+CkteCknyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwOTAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxMDMKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTEzCisjLCBjLWZvcm1hdAorbXNnaWQgIlNraXAgaW52YWxpZCBsaW5lOiAlcyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjEzMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAicmVuYW1pbmcgJXMgbGluayBmcm9tICVzIHRvICVzLiIKK21zZ3N0ciAiJXMg4KS44KS+4KSW4KSz4KWA4KSa4KWHICVzIOCkruCkp+ClguCkqCAlcyDgpK7gpKfgpYcg4KSq4KWB4KSo4KSw4KWN4KSo4KS+4KSu4KS+4KSC4KSV4KSoIOCkleCksOCkpCDgpIbgpLngpYcuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE3MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAicmVuYW1pbmcgJXMgc2xhdmUgbGluayBmcm9tICVzIHRvICVzLiIKK21zZ3N0ciAi4KSX4KWB4KSy4KS+4KSuIOCkuOCkvuCkluCks+ClgCAlcyDgpJrgpYcgJXMg4KSu4KSn4KWC4KSoICVzIOCkruCkp+ClhyDgpKrgpYHgpKjgpLDgpY3gpKjgpL7gpK7gpL7gpILgpJXgpKgg4KSV4KSw4KSkIOCkhuCkueClhy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTg5CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIG5hbWUgKCVzKSBtdXN0IG5vdCBjb250YWluICcvJyBhbmQgc3BhY2VzLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE5MworIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBsaW5rIGlzIG5vdCBhYnNvbHV0ZSBhcyBpdCBzaG91bGQgYmU6ICVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTk3CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIHBhdGggaXMgbm90IGFic29sdXRlIGFzIGl0IHNob3VsZCBiZTogJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgbWFzdGVyOiBpdCBpcyBhIHNsYXZlIG9mICVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjMyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjY3CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIGxpbmsgJXMgaXMgYWxyZWFkeSBtYW5hZ2VkIGJ5ICVzLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI0MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgcGF0aCAlcyBkb2Vzbid0IGV4aXN0LiIKK21zZ3N0ciAi4KSn4KWL4KSV4KWN4KSv4KS+4KSa4KWAIOCkuOClguCkmuCkqOCkvjogLS3gpLjgpYHgpKfgpL7gpLDgpL4g4KSm4KS/4KSy4KWH4KSy4KWHIOCkhuCkueClhyDgpKrgpKMgJXMg4KSF4KS44KWN4KSk4KS/4KSk4KWN4KS14KS+4KSkIOCkqOCkvuCkueClgCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlICVzIGNhbid0IGJlIHNsYXZlIG9mICVzOiBpdCBpcyBhIG1hc3RlciBhbHRlcm5hdGl2ZS4iCittc2dzdHIgIiIKKyIlcyDgpLjgpL7gpKDgpYDgpJrgpL4g4KS14KS/4KSV4KSy4KWN4KSqICVzIOCkleCkoeClhyDgpKjgpL/gpLDgpY3gpKbgpYfgpLYg4KSV4KSw4KSk4KWLIC0g4KSc4KWLIOCkuOCkvuCkquCkoeCksuCkviDgpKjgpL7gpLngpYAuIOCkteCkv+CkleCksuCljeCkquCkvuCkguCkmuCljeCkr+CkviDgpK/gpL7gpKbgpYDgpKTgpYLgpKgg4KSV4KS+4KSi4KWC4KSoICIKKyLgpJ/gpL7gpJXgpKQg4KSG4KS54KWHLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgc2xhdmUgb2YgJXM6IGl0IGlzIGEgc2xhdmUgb2YgJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgbGluayAlcyBpcyBhbHJlYWR5IG1hbmFnZWQgYnkgJXMgKHNsYXZlIG9mICVzKS4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBhcmd1bWVudCBgJXMnIgorbXNnc3RyICLgpIXgpKrgpLDgpL/gpJrgpYDgpKQg4KSq4KSw4KWN4KSv4KS+4KSvIGAlcyciCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzQzCittc2dpZCAiLS1pbnN0YWxsIG5lZWRzIDxsaW5rPiA8bmFtZT4gPHBhdGg+IDxwcmlvcml0eT4iCittc2dzdHIgIi0t4KSF4KSn4KS/4KS34KWN4KSg4KS+4KSq4KS+IOCkuOCkvuCkoOClgCA84KS44KS+4KSW4KSz4KWAPiA84KSo4KS+4KS1PiA84KSu4KS+4KSw4KWN4KSXPiA84KSF4KSX4KWN4KSw4KSV4KWN4KSw4KSuPiDgpIbgpLXgpLbgpY3gpK/gpJUiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzQ2IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzk3Cittc2dpZCAiPGxpbms+IGFuZCA8cGF0aD4gY2FuJ3QgYmUgdGhlIHNhbWUiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNDkKK21zZ2lkICJwcmlvcml0eSBtdXN0IGJlIGFuIGludGVnZXIiCittc2dzdHIgIuCkheCkl+CljeCksOCkleCljeCksOCkriDgpLngpL4g4KSq4KWC4KSw4KWN4KSj4KS+4KSC4KSV4KSaIOCkheCkuOCksuCkviDgpKrgpL7gpLngpL/gpJzgpYciCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzYyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgPG5hbWU+IDxwYXRoPiIKK21zZ3N0ciAiLS0lcyDgpLjgpL7gpKDgpYAgPOCkqOCkvuCktT4gPOCkruCkvuCksOCljeCklz4g4KSG4KS14KS24KWN4KSv4KSVIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM3NgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIDxuYW1lPiIKK21zZ3N0ciAiLS0lcyDgpLjgpL7gpKDgpYAgPOCkqOCkvuCktT4g4KSG4KS14KS24KWN4KSv4KSVIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM4OAorbXNnaWQgIi0tc2xhdmUgb25seSBhbGxvd2VkIHdpdGggLS1pbnN0YWxsIgorbXNnc3RyICItLeCkl+ClgeCksuCkvuCkriDgpLLgpL4g4KSr4KSV4KWN4KSkIC0t4KSF4KSn4KS/4KS34KWN4KSg4KS+4KSq4KS+IOCkuOCli+CkrOCkpCDgpIXgpKjgpYHgpK7gpKTgpYAiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzkwCittc2dpZCAiLS1zbGF2ZSBuZWVkcyA8bGluaz4gPG5hbWU+IDxwYXRoPiIKK21zZ3N0ciAiLS3gpJfgpYHgpLLgpL7gpK4g4KS44KS+4KSg4KWAIDzgpLjgpL7gpJbgpLPgpYA+IDzgpKjgpL7gpLU+IDzgpK7gpL7gpLDgpY3gpJc+IOCkhuCkteCktuCljeCkr+CklSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzOTkKKyMsIGMtZm9ybWF0Cittc2dpZCAibmFtZSAlcyBpcyBib3RoIHByaW1hcnkgYW5kIHNsYXZlIgorbXNnc3RyICLgpKjgpL7gpLUgJXMg4KS54KWHIOCkquCljeCksOCkvuCkpeCkruCkv+CklSDgpLUg4KSX4KWB4KSy4KS+4KSuIOCkpuCli+CkqOCljeCkueClgCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAibGluayAlcyBpcyBib3RoIHByaW1hcnkgYW5kIHNsYXZlIgorbXNnc3RyICLgpLjgpL7gpJbgpLPgpYAgJXMg4KS54KWAIOCkquCljeCksOCkvuCkpeCkruCkv+CklSDgpLUg4KSX4KWB4KSy4KS+4KSuIOCkpuCli+CkqOCljeCkueClgCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MjIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSA8ZmlsZT4gYXJndW1lbnQiCittc2dzdHIgIi0tJXMg4KSy4KS+IOCkj+CkleCkmiDgpKrgpLDgpY3gpK/gpL7gpK8g4KSG4KS14KS24KWN4KSv4KSVIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQ0OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiBgJXMnIgorbXNnc3RyICLgpIXgpKrgpLDgpL/gpJrgpYDgpKQg4KSq4KSw4KWN4KSv4KS+4KSvIGAlcyciCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDUzCisjLCBmdXp6eQorbXNnaWQgIiIKKyJuZWVkIC0tZGlzcGxheSwgLS1xdWVyeSwgLS1saXN0LCAtLWdldC1zZWxlY3Rpb25zLCAtLWNvbmZpZywgLS1zZXQsIC0tc2V0LSIKKyJzZWxlY3Rpb25zLCAtLWluc3RhbGwsIC0tcmVtb3ZlLCAtLWFsbCwgLS1yZW1vdmUtYWxsIG9yIC0tYXV0byIKK21zZ3N0ciAiIgorIi0t4KSm4KS+4KSW4KS14KS+LCAtLeCkuOCkguCksOCkmuCkqOCkviwgLS3gpKjgpL/gpLbgpY3gpJrgpL/gpKTgpYAsIC0t4KSF4KSn4KS/4KS34KWN4KSg4KS+4KSq4KS+LCAtLeCkleCkvuCkouCkviwgLS3gpLjgpLDgpY3gpLUsIC0t4KSV4KS+4KSi4KS+LeCkuOCksOCljeCktSwg4KSV4KS/4KSC4KS14KS+IC0tIgorIuCkuOCljeCkteCkr+CkgiDgpJfgpLDgpJzgpYfgpJrgpYciCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDkwCisjLCBmdXp6eQorI3wgbXNnaWQgInJlYWQgZXJyb3Igb24gc3RhbmRhcmQgaW5wdXQiCittc2dpZCAiPHN0YW5kYXJkIGlucHV0PiIKK21zZ3N0ciAi4KS44KWN4KSf4KWF4KSj4KWN4KSh4KSw4KWN4KShIOCkh+CkqOCkquClguCkn+CkteCksCDgpKbgpYvgpLcg4KS14KS+4KSa4KS+IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUwMCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUwMworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAibm8gYWx0ZXJuYXRpdmVzIGZvciAlcy4iCittc2dzdHIgIiVzIOCkuOCkvuCkoOClgCDgpLXgpL/gpJXgpLLgpY3gpKog4KSo4KS+4KS54KWALiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMvJXMgaXMgZGFuZ2xpbmcsIGl0IHdpbGwgYmUgdXBkYXRlZCB3aXRoIGJlc3QgY2hvaWNlLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUzNAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzLyVzIGhhcyBiZWVuIGNoYW5nZWQgKG1hbnVhbGx5IG9yIGJ5IGEgc2NyaXB0KS4gU3dpdGNoaW5nIHRvIG1hbnVhbCAiCisidXBkYXRlcyBvbmx5LiIKK21zZ3N0ciAiIgorIiVzIOCkruCkp+ClhyDgpKzgpKbgpLIg4KSd4KS+4KSy4KS+IOCkhuCkueClhyAo4KSk4KWB4KSu4KSa4KWN4KSv4KS+4KSV4KSh4KWC4KSoIOCkleCkv+CkguCkteCkviAg4KSq4KSw4KS/4KSt4KS+4KS34KWH4KSV4KSh4KWC4KSoKS5cbiIKKyLgpKvgpJXgpY3gpKQg4KS44KWN4KS14KS54KS44KWN4KSk4KWH4KSaIOCkuOClgeCkp+CkvuCksOCko+CkviDgpJXgpLDgpKPgpY3gpK/gpL7gpJrgpYcg4KS44KWN4KS14KS/4KSV4KS+4KSw4KSkIOCkhuCkueClhy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTQyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJzZXR0aW5nIHVwIGF1dG9tYXRpYyBzZWxlY3Rpb24gb2YgJXMuIgorbXNnc3RyICIlcyDgpJXgpLDgpL/gpKTgpL4g4KS44KWN4KS14KSv4KSC4KSa4KSy4KS/4KSkIOCkqOCkv+CkteCkoSDgpLjgpILgpLDgpJrgpL/gpKQg4KSV4KSw4KSkIOCkhuCkueClhy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTUxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBmb3IgJXMgbm90IHJlZ2lzdGVyZWQsIG5vdCBzZXR0aW5nLiIKK21zZ3N0ciAiJXMg4KS44KS+4KSg4KWA4KSa4KS+ICVzIOCkteCkv+CkleCksuCljeCkqiDgpKjgpYvgpILgpKbgpKPgpYDgpJXgpYPgpKQg4KSo4KS+4KS54KWALCDgpJXgpL7gpKLgpYLgpKgg4KSf4KS+4KSV4KSkIOCkqOCkvuCkueClgC4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTU3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTYzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJUaGVyZSBpcyBubyBwcm9ncmFtIHdoaWNoIHByb3ZpZGVzICVzLiIKK21zZ3N0ciAiIgorIiVzIOCkquClgeCksOCkteCko+CkvuCksOClgCDgpKvgpJXgpY3gpKQg4KWnIOCkhuCknOCljeCknuCkvuCkteCksuClgCDgpIbgpLngpYdcbiIKKyIoJXMpLiDgpLjgpILgpLDgpJrgpKjgpL4g4KSV4KSw4KSj4KWN4KSv4KS+4KS4IOCkleCkvuCkueClgOCkueClgCDgpKjgpL7gpLngpYAuXG4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTY1IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTc1Cittc2dpZCAiTm90aGluZyB0byBjb25maWd1cmUuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTczCisjLCBjLWZvcm1hdAorbXNnaWQgIlRoZXJlIGlzIG9ubHkgb25lIGFsdGVybmF0aXZlIGluIGxpbmsgZ3JvdXAgJXM6ICVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTg0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBmb3IgJXMgbm90IHJlZ2lzdGVyZWQsIG5vdCByZW1vdmluZy4iCittc2dzdHIgIiVzIOCkuOCkvuCkoOClgOCkmuCkviAlcyDgpLXgpL/gpJXgpLLgpY3gpKog4KSo4KWL4KSC4KSm4KSj4KWA4KSV4KWD4KSkIOCkqOCkvuCkueClgCwg4KSV4KS+4KSi4KWC4KSoIOCkn+CkvuCkleCkpCDgpKjgpL7gpLngpYAuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU5MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAicmVtb3ZpbmcgbWFudWFsbHkgc2VsZWN0ZWQgYWx0ZXJuYXRpdmUgLSBzd2l0Y2hpbmcgJXMgdG8gYXV0byBtb2RlIgorbXNnc3RyICLgpKTgpYHgpK7gpY3gpLngpYAg4KS44KWN4KS14KSk4KSD4KSaIOCkqOCkv+CkteCkoeCksuClh+CksuClhyDgpLXgpL/gpJXgpLLgpY3gpKog4KSV4KS+4KSi4KWC4KSoIOCkn+CkvuCkleCkpCDgpIbgpLngpYcgLSDgpLjgpY3gpLXgpK/gpILgpJrgpLLgpL/gpKQg4KSq4KSm4KWN4KSn4KSk4KWAIOCkuOCljeCkteCkv+CkleCkvuCksOCkpCDgpIbgpLngpYciCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjE3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJhdXRvbWF0aWMgdXBkYXRlcyBvZiAlcy8lcyBhcmUgZGlzYWJsZWQsIGxlYXZpbmcgaXQgYWxvbmUuIgorbXNnc3RyICIlcyDgpJrgpY3gpK/gpL4g4KS44KWN4KS14KSv4KSC4KSa4KSy4KS/4KSkIOCkuOClgeCkp+CkvuCksOCko+CkviDgpIXgpLjgpK7gpLDgpY3gpKUg4KSV4KWH4KSy4KWH4KSy4KWN4KSv4KS+IOCkhuCkueClh+CkpCwg4KSk4KS44KWH4KSaIOCkuOCli+CkoeCkpCDgpIbgpLngpYcuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYxOQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidG8gcmV0dXJuIHRvIGF1dG9tYXRpYyB1cGRhdGVzIHVzZSAnJXMgLS1hdXRvICVzJy4iCittc2dzdHIgIuCkuOCljeCkteCkr+CkguCkmuCksuCkv+CkpCDgpLjgpYHgpKfgpL7gpLDgpKPgpL7gpILgpJXgpKHgpYcg4KSq4KSw4KSkIOCknOCkvuCko+CljeCkr+CkvuCkuOCkvuCkoOClgCBg4KS44KWB4KSn4KS+4KSw4KS+LeCkteCkv+CkleCksuCljeCkqiAtLeCkuOCljeCkteCkr+CkgiAlcycg4KS14KS+4KSq4KSw4KS+LiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MzYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVzaW5nICVzIHRvIHByb3ZpZGUgJXMgKCVzKSBpbiAlcy4iCittc2dzdHIgImAlcycg4KSq4KWB4KSw4KS14KSj4KWN4KSv4KS+4KSV4KSw4KS/4KSk4KS+IGAlcycg4KS14KS+4KSq4KSw4KSkIOCkhuCkueClhy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjQ0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmb3JjaW5nIHJlaW5zdGFsbGF0aW9uIG9mIGFsdGVybmF0aXZlICVzIGJlY2F1c2UgbGluayBncm91cCAlcyBpcyBicm9rZW4uIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjUxCisjLCBjLWZvcm1hdAorbXNnaWQgImN1cnJlbnQgYWx0ZXJuYXRpdmUgJXMgaXMgdW5rbm93biwgc3dpdGNoaW5nIHRvICVzIGZvciBsaW5rIGdyb3VwICVzLiIKK21zZ3N0ciAiIgorCisjLCBmdXp6eQorI34gbXNnaWQgIml0IGlzIGEgc2xhdmUgb2YgJXMiCisjfiBtc2dzdHIgIiDgpJfgpYHgpLLgpL7gpK4gJXM6ICVzIgorCisjLCBmdXp6eQorI358IG1zZ2lkICJjYW5ub3Qgc3RhdCBvbGQgbmFtZSBgJXMnOiAlcyIKKyN+IG1zZ2lkICJjYW5ub3Qgc3RhdCAlczogJXMiCisjfiBtc2dzdHIgIuCknOClgeCkqOClgCDgpKjgpL7gpLXgpYcgYCVzJzogJXMg4KS44KWN4KSf4KWF4KSfIOCkleCksOCkpOCkviDgpK/gpYfgpKQg4KSo4KS+4KS54KWA4KSkIgorCisjLCBmdXp6eQorI358IG1zZ2lkICIlczogY29weWluZyAlcyB0byAlcyBmYWlsZWQsIGdpdmluZyB1cDogJXMiCisjfiBtc2dpZCAic2NhbiBvZiAlcyBmYWlsZWQ6ICVzIgorI34gbXNnc3RyICIlczogJXMg4KSa4KWAICVzIOCkruCkp+ClhyDgpKjgpJXgpY3gpJXgpLIg4KSs4KSo4KS14KSk4KS+IOCkhuCksuClgCDgpKjgpL7gpLngpYAsIOCkuOCli+CkoeClguCkqCDgpKbgpYfgpKQg4KSG4KS54KWHOiAlcyIKKworIywgZnV6enkKKyN+fCBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgJXMiCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWN1dGUgJXM6ICVzIgorI34gbXNnc3RyICIlcyDgpI/gpJfgpY3gpJ3gpYfgpJUg4KSV4KSw4KSj4KWN4KSv4KS+4KS4IOCkheCkr+CktuCkuOCljeCkteClgCIKKworI34gbXNnaWQgInVuYWJsZSB0byBtYWtlICVzIGEgc3ltbGluayB0byAlczogJXMiCisjfiBtc2dzdHIgIiVzIOCksuCkviAlcyDgpJrgpYAg4KS44KS/4KSu4KSy4KS/4KSC4KSVIOCkleCksOCkpOCkviDgpK/gpYfgpKQg4KSo4KS+4KS54KWAOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsICVzIGFzICVzOiAlcyIKKyN+IG1zZ3N0ciAiJXMg4KS54KWHICVzIOCkruCljeCkueCko+ClguCkqCDgpIXgpKfgpL/gpLfgpY3gpJ/gpL7gpKrgpKgg4KSV4KSw4KSk4KS+IOCkr+Clh+CkpCDgpKjgpL7gpLngpYA6ICVzIgorCisjLCBmdXp6eQorI34gbXNnaWQgIndoaWxlIHdyaXRpbmcgJXM6ICVzIgorI34gbXNnc3RyICLgpI/gpLjgpJ/gpYDgpKHgpYDgpIbgpIngpJ8g4KSy4KS/4KS54KWA4KSk4KS+4KSo4KS+IOCkpOCljeCksOClgeCkn+ClgCIKKworI34gbXNnaWQgInVuYWJsZSB0byByZWFkICVzOiAlcyIKKyN+IG1zZ3N0ciAiJXM6ICVzIOCkteCkvuCkmuCkpOCkviDgpK/gpYfgpKQg4KSo4KS+4KS54KWAIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGNsb3NlICVzOiAlcyIKKyN+IG1zZ3N0ciAiJXM6ICVzIOCkrOCkguCkpiDgpJXgpLDgpKTgpL4g4KSv4KWH4KSkIOCkqOCkvuCkueClgCIKKworIywgZnV6enkKKyN+fCBtc2dpZCAidW5hYmxlIHRvIHdyaXRlICVzOiAlcyIKKyN+IG1zZ2lkICJjYW5ub3Qgd3JpdGUgJXM6ICVzIgorI34gbXNnc3RyICIlczogJXMg4KSy4KS/4KS54KS/4KSk4KS+IOCkr+Clh+CkpCDgpKjgpL7gpLngpYAiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgInVuYWJsZSB0byByZW5hbWUgJXMgdG8gJXM6ICVzIgorI34gbXNnaWQgInVuYWJsZSB0byByZW5hbWUgZmlsZSAnJXMnIHRvICclcyciCisjfiBtc2dzdHIgIiVzIOCkmuClhyAlcyDgpK7gpKfgpYcg4KSq4KWB4KSo4KSw4KWN4KSo4KS+4KSu4KS+4KSC4KSV4KSoIOCkleCksOCkpOCkviDgpK/gpYfgpKQg4KSo4KS+4KS54KWAOiAlcyIKKworI34gbXNnaWQgIm1hbGxvYyBmYWlsZWQgKCVsZCBieXRlcykiCisjfiBtc2dzdHIgIuCkruClheCksuCli+ClheCklSDgpIXgpK/gpLbgpLjgpY3gpLXgpYAgKCVsZCDgpKzgpL7gpIfgpJ/gpY3gpLgpIgorCisjfiBtc2dpZCAicmVhbGxvYyBmYWlsZWQgKCVsZCBieXRlcykiCisjfiBtc2dzdHIgIuCksOCkv+CkheCksuCksuCli+ClheCklSDgpIXgpK/gpLbgpLjgpY3gpLXgpYAgKCVsZCDgpKzgpL7gpIfgpJ/gpY3gpLgpIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHVuYnVmZmVyIGAlLjI1NXMnIgorI34gbXNnc3RyICJgJS4yNTVzJyDgpIXgpKjgpKzgpKvgpLAg4KSV4KSw4KSk4KS+IOCkr+Clh+CkpCDgpKjgpL7gpLngpYAiCisKKyN+IG1zZ2lkICJwYXJ0IGZpbGUgYCUuMjUwcycgaGFzIHRyYWlsaW5nIGdhcmJhZ2UiCisjfiBtc2dzdHIgIuCkreCkvuCklyDgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KSu4KSn4KWHIOCkquCkvuCkoOClgCDgpJXgpJrgpLDgpL4g4KSG4KS54KWHIgorCisjfiBtc2dpZCAic2l6ZSAlN2Qgb2NjdXJzICU1ZCB0aW1lc1xuIgorI34gbXNnc3RyICIlN2Qg4KSu4KS+4KSqICU1ZCDgpLXgpYfgpLPgpL4g4KSG4KSi4KSz4KSk4KWHXG4iCisKKyN+IG1zZ2lkICJvdXQgb2YgbWVtb3J5IHB1c2hpbmcgZXJyb3IgaGFuZGxlcjogIgorI34gbXNnc3RyICLgpK7gpYfgpK7gpLDgpYAg4KSF4KSq4KWC4KSw4KWAIOCkpOCljeCksOClgeCkn+ClgCDgpKrgpY3gpLDgpKzgpILgpKfgpJUg4KSv4KWH4KSk4KWH4KS14KWH4KSz4KWA4KSDID8/PyIKKworI34gbXNnaWQgInVuYWJsZSB0byB1bmxvY2sgZHBrZyBzdGF0dXMgZGF0YWJhc2UiCisjfiBtc2dzdHIgIuCkoeClgOCkquClgOCkleClh+CknOClgCDgpLjgpKbgpY3gpK/gpLjgpY3gpKXgpL/gpKTgpYAg4KSh4KWH4KSf4KS+4KSs4KWH4KS44KSa4KWHIOCkn+CkvuCks+ClhyDgpJXgpL7gpKLgpKTgpL4g4KSv4KWH4KSkIOCkqOCkvuCkueClgCIKKworI34gbXNnaWQgImNvcHkgaW5mbyBmaWxlIGAlLjI1NXMnIgorI34gbXNnc3RyICJgJS4yNTVzJyDgpIfgpKjgpKvgpYsg4KSr4KS+4KSI4KSy4KSa4KWAIOCkqOCkleCljeCkleCksiDgpJXgpLDgpL4gIgorCisjfiBtc2dpZCAicGFyc2UgZXJyb3IiCisjfiBtc2dzdHIgIuCkquCkvuCksOCljeCkuCDgpKTgpY3gpLDgpYHgpJ/gpYAiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gd3JpdGUgcGFyc2luZyB3YXJuaW5nIgorI34gbXNnc3RyICLgpKrgpL7gpLDgpY3gpLjgpL/gpILgpJcg4KSa4KWAIOCkp+Cli+CkleCljeCkr+CkvuCkmuClgCDgpLjgpYHgpJrgpKjgpL4g4KSy4KS/4KS54KWA4KSk4KS+IOCkhuCksuClgCDgpKjgpL7gpLngpYAiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiZmFpbGVkIHRvIHJ1biAlcyAoJS4yNTBzKSIKKyN+IG1zZ3N0ciAiKCUuMjUwcykg4KSw4KSoIOCkleCksOCko+CljeCkr+CkvuCkuCDgpIXgpK/gpLbgpLjgpY3gpLXgpYAg4KSd4KS+4KSy4KWHIOCkhuCkueClhyIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIHNoZWxsICglLjI1MHMpIgorI34gbXNnc3RyICIoJS4yNTBzKSDgpLbgpYfgpLIg4KSF4KSu4KSy4KS+4KSkIOCkhuCko+Cko+CljeCkr+CkvuCkuCDgpIXgpK/gpLbgpLjgpY3gpLXgpYAg4KSd4KS+4KSy4KWHIOCkhuCkueClhyIKKworI34gbXNnaWQgInVuYWJsZSB0byBjaGVjayBmb3IgZXhpc3RlbmNlIG9mIGAlLjI1MHMnIgorI34gbXNnc3RyICIlLjI1MHMnIOCkmuClhyDgpIXgpLjgpY3gpKTgpL/gpKTgpY3gpLUg4KSk4KSq4KS+4KS44KSj4KWN4KSv4KS+4KS4IOCkheCkuOCkruCksOCljeCkpSDgpIbgpLngpYciCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBybSBmb3IgY2xlYW51cCIKKyN+IG1zZ3N0ciAi4KSP4KSX4KWN4KSd4KWH4KSVIOCkhuCksOCkj+CkruCkqOClhyDgpLjgpY3gpLXgpJsg4KSV4KSw4KSj4KWHL+CkleCljeCksuCkv+CkqCDgpIXgpKog4KSF4KS24KSV4KWN4KSvIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICIlcyBkZWJ1Z2dpbmcgb3B0aW9uLCAtLWRlYnVnPTxvY3RhbD4gb3IgLUQ8b2N0YWw+OlxuIgorI34gIlxuIgorI34gIiBudW1iZXIgIHJlZi4gaW4gc291cmNlICAgZGVzY3JpcHRpb25cbiIKKyN+ICIgICAgICAxICAgZ2VuZXJhbCAgICAgICAgICAgR2VuZXJhbGx5IGhlbHBmdWwgcHJvZ3Jlc3MgaW5mb3JtYXRpb25cbiIKKyN+ICIgICAgICAyICAgc2NyaXB0cyAgICAgICAgICAgSW52b2NhdGlvbiBhbmQgc3RhdHVzIG9mIG1haW50YWluZXIgc2NyaXB0c1xuIgorI34gIiAgICAgMTAgICBlYWNoZmlsZSAgICAgICAgICBPdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWRcbiIKKyN+ICIgICAgMTAwICAgZWFjaGZpbGVkZXRhaWwgICAgTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWRcbiIKKyN+ICIgICAgIDIwICAgY29uZmYgICAgICAgICAgICAgT3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZVxuIgorI34gIiAgICAyMDAgICBjb25mZmRldGFpbCAgICAgICBMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGVcbiIKKyN+ICIgICAgIDQwICAgZGVwY29uICAgICAgICAgICAgRGVwZW5kZW5jaWVzIGFuZCBjb25mbGljdHNcbiIKKyN+ICIgICAgNDAwICAgZGVwY29uZGV0YWlsICAgICAgTG90cyBvZiBkZXBlbmRlbmNpZXMvY29uZmxpY3RzIG91dHB1dFxuIgorI34gIiAgMTAwMDAgICB0cmlnZ2VycyAgICAgICAgICBUcmlnZ2VyIGFjdGl2YXRpb24gYW5kIHByb2Nlc3NpbmdcbiIKKyN+ICIgIDIwMDAwICAgdHJpZ2dlcnNkZXRhaWwgICAgTG90cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzXG4iCisjfiAiICA0MDAwMCAgIHRyaWdnZXJzc3R1cGlkICAgIFNpbGx5IGFtb3VudHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2Vyc1xuIgorI34gIiAgIDEwMDAgICB2ZXJ5dmVyYm9zZSAgICAgICBMb3RzIG9mIGRyaXZlbCBhYm91dCBlZyB0aGUgZHBrZy9pbmZvICIKKyN+ICJkaXJlY3RvcnlcbiIKKyN+ICIgICAyMDAwICAgc3R1cGlkbHl2ZXJib3NlICAgSW5zYW5lIGFtb3VudHMgb2YgZHJpdmVsXG4iCisjfiAiXG4iCisjfiAiRGVidWdnaW5nIG9wdGlvbnMgYXJlIGJlIG1peGVkIHVzaW5nIGJpdHdpc2Utb3IuXG4iCisjfiAiTm90ZSB0aGF0IHRoZSBtZWFuaW5ncyBhbmQgdmFsdWVzIGFyZSBzdWJqZWN0IHRvIGNoYW5nZS5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIiVzIOCkpuCli+CktyDgpLbgpYvgpKfgpKPgpY3gpK/gpL7gpJrgpYcg4KSq4KSw4KWN4KSv4KS+4KSvLCAtLeCkoeCkv+CkrOCklz084KSR4KSV4KWN4KSf4KSyPiDgpJXgpL/gpILgpLXgpL4gLUQ84KSR4KSV4KWN4KSf4KSyPjpcbiIKKyN+ICJcbiIKKyN+ICIg4KSu4KWC4KSzIOCkteCksOCljeCko+CkqOCkvuCkpOClgOCksiDgpLjgpY3gpILgpKbgpLDgpY3gpK0g4KSV4KWN4KSw4KSu4KS+4KSC4KSVXG4iCisjfiAiICAgICAg4KWnICAg4KSc4KSo4KSw4KSyIFx0ICAgIOCkuOCkvuCkp+CkvuCksOCko+CkquCko+ClhyDgpIngpKrgpK/gpYHgpJXgpY3gpKQg4KSq4KWN4KSw4KSX4KSk4KWA4KSa4KWAIOCkruCkvuCkueCkv+CkpOClgFxuIgorI34gIiAgICAgIOClqCAgIOCkuOCljeCkleCljeCksOCkv+CkquCljeCknyBcdCAgICDgpIfgpKjgpY3gpLXgpYvgpJXgpYfgpLbgpKgg4KSG4KSj4KS/IOCkruClh+CkqOCljeCkn+Clh+CkqOCksCDgpKbgpLjgpY3gpKTgpJDgpLXgpJzgpL7gpILgpJrgpYAg4KS44KWN4KSl4KS/4KSk4KWAXG4iCisjfiAiICAgICDgpafgpaYgICDgpIjgpJrgpKvgpL7gpIfgpLIgXHQgICDgpKrgpY3gpLDgpKTgpY3gpK/gpYfgpJUg4KSq4KWN4KSw4KSV4KWN4KSw4KS/4KSv4KS+IOCkneCkvuCksuClh+CksuCljeCkr+CkviDgpKvgpL7gpIfgpLLgpJrgpYcg4KSG4KSJ4KSf4KWN4KSq4KWB4KSfL+CkieCkpOCljeCkquCkvuCkpuCkqFxuIgorI34gIiAgICDgpafgpabgpaYgICDgpIjgpJrgpKvgpL7gpIfgpLLgpKHgpL/gpJ/gpYfgpLIgXHQgICDgpKrgpY3gpLDgpKTgpY3gpK/gpYfgpJUg4KSq4KWN4KSw4KSV4KWN4KSw4KS/4KSv4KS+IOCkneCkvuCksuClh+CksuCljeCkr+CkviDgpKvgpL7gpIfgpLLgpJrgpYcg4KSt4KSw4KSq4KWB4KSwIOCkhuCkieCkn+CljeCkquClgeCkny/gpIngpKTgpY3gpKrgpL7gpKbgpKhcbiIKKyN+ICIgICAgIOClqOClpiAgIOCkleClieCkqOCljeCkq+CkqyBcdCAgICAg4KSq4KWN4KSw4KSk4KWN4KSv4KWH4KSVIOCknOClgeCks+CkteCko+ClgOCkmuCljeCkr+CkviDgpKvgpL7gpIfgpLLgpJrgpYcg4KSG4KSJ4KSf4KWN4KSq4KWB4KSfL+CkieCkpOCljeCkquCkvuCkpuCkqFxuIgorI34gIiAgICDgpajgpabgpaYgICDgpJXgpYngpKjgpY3gpKvgpKvgpKHgpL/gpJ/gpYfgpLIgICAgICDgpKrgpY3gpLDgpKTgpY3gpK/gpYfgpJUg4KSq4KWN4KSw4KSV4KWN4KSw4KS/4KSv4KS+IOCknOClgeCks+CkteCko+ClgOCkmuCljeCkr+CkviDgpKvgpL7gpIfgpLLgpJrgpYcg4KSt4KSw4KSq4KWB4KSwIOCkhuCkieCkn+CljeCkquClgeCkny/gpIngpKTgpY3gpKrgpL7gpKbgpKhcbiIKKyN+ICIgICAgIOClquClpiAgIOCkoeClh+CkquCkleClieCkqCBcdCAgICAg4KSq4KSw4KS+4KS14KSy4KSC4KSs4KSoIOCkhuCko+CkvyDgpKrgpLDgpLjgpY3gpKrgpLDgpLXgpL/gpLDgpYvgpKdcbiIKKyN+ICIgICAg4KWq4KWm4KWmICAg4KSh4KWH4KSq4KSV4KWJ4KSo4KSh4KS/4KSf4KWH4KSyICAgICAgIOCkquCksOCkvuCkteCksuCkguCkrOCkqC/gpKrgpLDgpLjgpY3gpKrgpLDgpLXgpL/gpLDgpYvgpKfgpL7gpILgpJrgpYcg4KSt4KSw4KSq4KWB4KSwIOCkhuCkieCkn+CljeCkquClgeCkny/gpIngpKTgpY3gpKrgpL7gpKbgpKhcbiIKKyN+ICIgICDgpafgpabgpabgpaYgICDgpLXgpYfgpLDgpL/gpLXgpLDgpKzgpYvgpJwgXHQgICAgICDgpK3gpLDgpKrgpYHgpLAg4KSo4KS/4KSw4KSw4KWN4KSl4KSVIOCkruCkvuCkueCkv+CkpOClgCDgpIngpKbgpL7gpLngpLDgpKPgpL7gpLDgpY3gpKUg4KSh4KS/4KSq4KS/4KSV4KWH4KSc4KWAL+Ckh+CkqOCljeCkq+CliyAiCisjfiAi4KSh4KS/4KSw4KWH4KSV4KWN4KSf4KSw4KWAXG4iCisjfiAiICAg4KWo4KWm4KWm4KWmICAg4KS44KWN4KSf4KWB4KSq4KS/4KSh4KSy4KWA4KS14KSw4KSs4KWL4KScXHQgICAg4KS14KWH4KSh4KWN4KSv4KS+4KS44KS+4KSw4KSW4KWAIOCkqOCkv+CksOCksOCljeCkpeCklSDgpK7gpL7gpLngpL/gpKTgpYAg4KSm4KWH4KSk4KWHXG4iCisjfiAiXG4iCisjfiAi4KSm4KWL4KS3IOCktuCli+Ckp+Cko+CljeCkr+CkvuCkmuClhyDgpKrgpLDgpY3gpK/gpL7gpK8g4KSs4KS/4KSf4KS14KS+4KSI4KScLeCkkeCksCDgpLXgpL7gpKrgpLDgpYHgpKgg4KS44KSC4KSu4KS/4KS24KWN4KSwIOCkleCksOCkvuCkteClh+CkpC5cbiIKKyN+ICLgpJXgpYPgpKrgpK/gpL4g4KSo4KWL4KSC4KSmIOCkmOCljeCkr+CkviDgpIXgpLDgpY3gpKUg4KSG4KSj4KS/IOCkleCkv+CkguCkruCkpOClgCDgpKzgpKbgpLLgpKQg4KSF4KS44KSk4KS+4KSkLlxuIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICIlcyBmb3JjaW5nIG9wdGlvbnMgLSBjb250cm9sIGJlaGF2aW91ciB3aGVuIHByb2JsZW1zIGZvdW5kOlxuIgorI34gIiAgd2FybiBidXQgY29udGludWU6ICAtLWZvcmNlLTx0aGluZz4sPHRoaW5nPiwuLi5cbiIKKyN+ICIgIHN0b3Agd2l0aCBlcnJvcjogICAgLS1yZWZ1c2UtPHRoaW5nPiw8dGhpbmc+LC4uLiB8IC0tbm8tZm9yY2UtIgorI34gIjx0aGluZz4sLi4uXG4iCisjfiAiIEZvcmNpbmcgdGhpbmdzOlxuIgorI34gIiAgYWxsIFshXSAgICAgICAgICAgICAgICBTZXQgYWxsIGZvcmNlIG9wdGlvbnNcbiIKKyN+ICIgIGRvd25ncmFkZSBbKl0gICAgICAgICAgUmVwbGFjZSBhIHBhY2thZ2Ugd2l0aCBhIGxvd2VyIHZlcnNpb25cbiIKKyN+ICIgIGNvbmZpZ3VyZS1hbnkgICAgICAgICAgQ29uZmlndXJlIGFueSBwYWNrYWdlIHdoaWNoIG1heSBoZWxwIHRoaXMgb25lXG4iCisjfiAiICBob2xkICAgICAgICAgICAgICAgICAgIFByb2Nlc3MgaW5jaWRlbnRhbCBwYWNrYWdlcyBldmVuIHdoZW4gb24gaG9sZFxuIgorI34gIiAgYmFkLXBhdGggICAgICAgICAgICAgICBQQVRIIGlzIG1pc3NpbmcgaW1wb3J0YW50IHByb2dyYW1zLCBwcm9ibGVtcyAiCisjfiAibGlrZWx5XG4iCisjfiAiICBub3Qtcm9vdCAgICAgICAgICAgICAgIFRyeSB0byAoZGUpaW5zdGFsbCB0aGluZ3MgZXZlbiB3aGVuIG5vdCByb290XG4iCisjfiAiICBvdmVyd3JpdGUgICAgICAgICAgICAgIE92ZXJ3cml0ZSBhIGZpbGUgZnJvbSBvbmUgcGFja2FnZSB3aXRoIGFub3RoZXJcbiIKKyN+ICIgIG92ZXJ3cml0ZS1kaXZlcnRlZCAgICAgT3ZlcndyaXRlIGEgZGl2ZXJ0ZWQgZmlsZSB3aXRoIGFuIHVuZGl2ZXJ0ZWQgIgorI34gInZlcnNpb25cbiIKKyN+ICIgIGJhZC12ZXJpZnkgICAgICAgICAgICAgSW5zdGFsbCBhIHBhY2thZ2UgZXZlbiBpZiBpdCBmYWlscyBhdXRoZW50aWNpdHkgIgorI34gImNoZWNrXG4iCisjfiAiICBkZXBlbmRzLXZlcnNpb24gWyFdICAgIFR1cm4gZGVwZW5kZW5jeSB2ZXJzaW9uIHByb2JsZW1zIGludG8gd2FybmluZ3NcbiIKKyN+ICIgIGRlcGVuZHMgWyFdICAgICAgICAgICAgVHVybiBhbGwgZGVwZW5kZW5jeSBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzXG4iCisjfiAiICBjb25mbmV3IFshXSAgICAgICAgICAgIEFsd2F5cyB1c2UgdGhlIG5ldyBjb25maWcgZmlsZXMsIGRvbid0IHByb21wdFxuIgorI34gIiAgY29uZm9sZCBbIV0gICAgICAgICAgICBBbHdheXMgdXNlIHRoZSBvbGQgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHRcbiIKKyN+ICIgIGNvbmZkZWYgWyFdICAgICAgICAgICAgVXNlIHRoZSBkZWZhdWx0IG9wdGlvbiBmb3IgbmV3IGNvbmZpZyBmaWxlcyBpZiAiCisjfiAib25lXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIGlzIGF2YWlsYWJsZSwgZG9uJ3QgcHJvbXB0LiBJZiBubyBkZWZhdWx0IGNhbiBiZSAiCisjfiAiZm91bmQsXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIHlvdSB3aWxsIGJlIHByb21wdGVkIHVubGVzcyBvbmUgb2YgdGhlIGNvbmZvbGQgIgorI34gIm9yXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmZuZXcgb3B0aW9ucyBpcyBhbHNvIGdpdmVuXG4iCisjfiAiICBjb25mbWlzcyBbIV0gICAgICAgICAgIEFsd2F5cyBpbnN0YWxsIG1pc3NpbmcgY29uZmlnIGZpbGVzXG4iCisjfiAiICBjb25mYXNrIFshXSAgICAgICAgICAgIE9mZmVyIHRvIHJlcGxhY2UgY29uZmlnIGZpbGVzIHdpdGggbm8gbmV3ICIKKyN+ICJ2ZXJzaW9uc1xuIgorI34gIiAgYnJlYWtzIFshXSAgICAgICAgICAgICBJbnN0YWxsIGV2ZW4gaWYgaXQgd291bGQgYnJlYWsgYW5vdGhlciBwYWNrYWdlXG4iCisjfiAiICBjb25mbGljdHMgWyFdICAgICAgICAgIEFsbG93IGluc3RhbGxhdGlvbiBvZiBjb25mbGljdGluZyBwYWNrYWdlc1xuIgorI34gIiAgYXJjaGl0ZWN0dXJlIFshXSAgICAgICBQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyBhcmNoaXRlY3R1cmVcbiIKKyN+ICIgIG92ZXJ3cml0ZS1kaXIgWyFdICAgICAgT3ZlcndyaXRlIG9uZSBwYWNrYWdlJ3MgZGlyZWN0b3J5IHdpdGggYW5vdGhlcidzICIKKyN+ICJmaWxlXG4iCisjfiAiICB1bnNhZmUtaW8gWyFdICAgICAgICAgIERvIG5vdCBwZXJmb3JtIHNhZmUgSS9PIG9wZXJhdGlvbnMgd2hlbiAiCisjfiAidW5wYWNraW5nXG4iCisjfiAiICByZW1vdmUtcmVpbnN0cmVxIFshXSAgIFJlbW92ZSBwYWNrYWdlcyB3aGljaCByZXF1aXJlIGluc3RhbGxhdGlvblxuIgorI34gIiAgcmVtb3ZlLWVzc2VudGlhbCBbIV0gICBSZW1vdmUgYW4gZXNzZW50aWFsIHBhY2thZ2VcbiIKKyN+ICJcbiIKKyN+ICJXQVJOSU5HIC0gdXNlIG9mIG9wdGlvbnMgbWFya2VkIFshXSBjYW4gc2VyaW91c2x5IGRhbWFnZSB5b3VyICIKKyN+ICJpbnN0YWxsYXRpb24uXG4iCisjfiAiRm9yY2luZyBvcHRpb25zIG1hcmtlZCBbKl0gYXJlIGVuYWJsZWQgYnkgZGVmYXVsdC5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIiVzIOCkq+Cli+CksOCljeCkuOCkv+CkguCklyDgpKrgpLDgpY3gpK/gpL7gpK8gLSDgpJzgpYfgpLXgpY3gpLngpL4g4KS44KSu4KS44KWN4KSv4KS+IOCkuOCkvuCkquCkoeCkpOClhyDgpKTgpYfgpLXgpY3gpLngpL4g4KS14KSw4KWN4KSk4KSj4KWC4KSV4KWA4KS14KSwIOCkqOCkv+Ckr+CkguCkpOCljeCksOCkoyDgpKDgpYfgpLXgpKTgpYc6XG4iCisjfiAiICDgpKTgpL7gpJXgpL/gpKYg4KSm4KWH4KSk4KWHIOCkquCksOCkguCkpOClgSDgpJrgpL7gpLLgpYIg4KSg4KWH4KS14KSk4KWHOiAgLS3gpKvgpYvgpLDgpY3gpLg84KS14KS/4KS34KSvPiw84KS14KS/4KS34KSvPiwuLi5cbiIKKyN+ICIgIOCkpuCli+CktyDgpIbgpLLgpY3gpK/gpL7gpLXgpLAg4KSl4KS+4KSC4KSs4KSk4KWHOiAgIC0t4KSw4KS/4KSr4KWN4KSv4KWB4KScLTzgpLXgpL/gpLfgpK8+LDzgpLXgpL/gpLfgpK8+LC4uLiB8IC0t4KSo4KWLLeCkq+Cli+CksOCljeCkuC084KS14KS/4KS34KSvPiwuLi5cbiIKKyN+ICIg4KSr4KWL4KSw4KWN4KS44KS/4KSC4KSXIOCkteCkv+Ckt+CkrzpcbiIKKyN+ICIgIOCkkeCksiBbIV1cdFx0IOCkq+Cli+CksOCljeCkuOCkmuClhyDgpLjgpJfgpLPgpYcg4KSq4KSw4KWN4KSv4KS+4KSvIOCkqOCkv+CktuCljeCkmuCkv+CkpCDgpJXgpLDgpKTgpYdcbiIKKyN+ICIgIOCkoeCkvuCkieCkqOCkl+CljeCksOClh+CkoSBbKl1cdFx0ICDgpJrgpL7gpLLgpYIg4KSG4KS14KWD4KSk4KWN4KSk4KWAIOCkleCkvuCkouClguCkqCDgpIXgpJfgpYvgpKbgpLDgpJrgpY3gpK/gpL4g4KSG4KS14KWD4KSk4KWN4KSk4KWA4KSo4KWHIOCkquClheCkleClh+CknCDgpKzgpKbgpLLgpKTgpYdcbiIKKyN+ICIgIOCkleClieCkqOCkq+Ckv+Ckl+CksC3gpI/gpKjgpYBcdFx0ICDgpK/gpL7gpLLgpL4g4KSu4KSm4KSkIOCkleCksOCko+Ckvn7gpK/gpL4g4KSV4KWL4KSj4KSk4KWN4KSv4KS+4KS54KWAIOCkquClheCkleClh+CknOCkmuClgCDgpJzgpYHgpLPgpLXgpKPgpYAg4KSV4KSw4KSk4KWHXG4iCisjfiAiICDgpLngpYvgpLLgpY3gpKFcdFx0XHQgICDgpLngpYvgpLLgpY3gpKHgpLXgpLAg4KSF4KS44KSy4KWHIOCkpOCksOClgCDgpKrgpY3gpLDgpL7gpLjgpILgpJfgpL/gpJUg4KSq4KWF4KSV4KWH4KSc4KWH4KS44KS14KSwIOCkquCljeCksOCkleCljeCksOCkv+Ckr+CkviDgpJXgpLDgpKTgpYdcbiIKKyN+ICIgIOCkrOClheCkoS3gpKrgpL7gpKVcdFx0ICAg4KSq4KS+4KSl4KSo4KWHIOCkruCkueCkpOCljeCkteCkvuCkmuClhyDgpKrgpY3gpLDgpYvgpJfgpY3gpLDgpYXgpK4g4KSX4KS+4KSz4KSy4KWHIOCkhuCkueClh+CkpCwg4KS44KSC4KSt4KS14KSo4KWA4KSvIOCkuOCkruCkuOCljeCkr+CkvlxuIgorI34gIiAg4KSo4KWJ4KSfLeCksOClguCkn1x0XHQgIOCknOCksOClgCDgpLDgpYLgpJ8g4KSo4KS44KWH4KSyIOCkpOCksOClgCDgpIXgpLjgpY3gpKXgpL7gpKrgpKjgpL4g4KSV4KSw4KSj4KWN4KSv4KS+4KSa4KS+IOCkquCljeCksOCkr+CkpOCljeCkqCDgpJXgpLDgpL5cbiIKKyN+ICIgIOCkk+CkteCljeCkueCksOCksOCkvuCkiOCkn1x0XHQgIOCkj+CkleCkviDgpKrgpYXgpJXgpYfgpJzgpK7gpKfgpYHgpKgg4KSm4KWB4KS4fuCkr+CkvuCkruCkp+CljeCkr+ClhyDgpKvgpL7gpIfgpLIg4KSq4KWB4KSo4KWN4KS54KSDIOCksuCkv+CkueCkvlxuIgorI34gIiAg4KST4KS14KWN4KS54KSw4KSw4KS+4KSI4KSfLeCkoeCkvuCkr+CkteCljeCkueCksOCljeCkn+Clh+CkoVx0IOCkoeCkvuCkr+CkteCljeCkueCksOCljeCkn+Clh+CkoSDgpKvgpL7gpIfgpLLgpLXgpLAg4KSF4KSo4KSh4KS+4KSv4KS14KWN4KS54KSw4KWN4KSf4KWH4KShIOCkq+CkvuCkh+CksuCkmuClgCDgpIbgpLXgpYPgpKTgpY3gpKTgpYAg4KSq4KWB4KSo4KWN4KS54KS+IOCksuCkv+CkueCkvlxuIgorI34gIiAg4KSs4KWF4KShLeCkteClh+CksOCkv+Ckq+CkvuCkryBcdFx0IOCkquClheCkleClh+CknOCkmuCkviDgpIXgpLjgpY3gpLjgpLLgpKrgpKPgpL4g4KS44KS/4KSm4KWN4KSnIOCkneCkvuCksuCkviDgpKjgpL7gpLngpYAg4KSk4KSw4KWAIOCkquClheCkleClh+CknOCkmuClgCDgpLjgpY3gpKXgpL7gpKrgpKjgpL4g4KSV4KSw4KS+XG4iCisjfiAiICDgpKHgpL/gpKrgpYfgpKjgpY3gpKHgpLgt4KS14KSw4KWN4KSc4KSoIFshXSBcdCDgpIbgpLXgpYPgpKTgpY3gpKTgpYDgpLXgpLAg4KSF4KS14KSy4KSC4KSs4KWB4KSoIOCkheCkuOCksuClh+CksuCljeCkr+CkviDgpLjgpK7gpLjgpY3gpK/gpL7gpILgpJrgpYcg4KSk4KS+4KSV4KS/4KSm4KSu4KSn4KWN4KSv4KWHIOCksOClgeCkquCkvuCkguCkpOCksCDgpJXgpLDgpL5cbiIKKyN+ICIgIOCkoeCkv+CkquClh+CkqOCljeCkoeCkuCBbIV1cdFx0IOCkhuCkteClg+CkpOCljeCkpOClgOCkteCksCDgpIXgpLXgpLLgpILgpKzgpYHgpKgg4KSF4KS44KSy4KWH4KSy4KWN4KSv4KS+IOCkuOCksOCljeCktSDgpLjgpK7gpLjgpY3gpK/gpL7gpILgpJrgpYcg4KSk4KS+4KSV4KS/4KSm4KSu4KSn4KWN4KSv4KWHIOCksOClgeCkquCkvuCkguCkpOCksCDgpJXgpLDgpL5cbiIKKyN+ICIgIOCkleClieCkqOCljeCkq+CkqOCljeCkr+ClgSBbIV1cdFx0ICDgpKjgpYfgpLngpK7gpYDgpJog4KSo4KS14KS/4KSoIOCkleClieCkqOCkq+Ckv+CklyDgpKvgpL7gpIfgpLIg4KS14KS+4KSq4KSw4KS+LCDgpIXgpKjgpYHgpKzgpYvgpKcg4KSV4KSw4KWCIOCkqOCkleCkvlxuIgorI34gIiAg4KSV4KWJ4KSo4KWN4KSr4KST4KSy4KWN4KShIFshXVx0XHQg4KSo4KWH4KS54KSu4KWA4KSaIOCknOClgeCkqOClgCDgpJXgpYngpKjgpKvgpL/gpJcg4KSr4KS+4KSH4KSyIOCkteCkvuCkquCksOCkviwg4KSF4KSo4KWB4KSs4KWL4KSnIOCkleCksOClgiDgpKjgpJXgpL5cbiIKKyN+ICIgIOCkleClieCkqOCljeCkq+CkoeClh+CkqyBbIV1cdFx0IOCknOCksCDgpI/gpJbgpL7gpKbgpYAg4KSV4KWJ4KSo4KSr4KS/4KSXIOCkq+CkvuCkh+CksiDgpIngpKrgpLLgpKzgpY3gpKcg4KSF4KS44KWH4KSyIOCkpOCksCDgpKjgpLXgpL/gpKgg4KSV4KWJ4KSo4KSr4KS/4KSXIFxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICDgpKvgpL7gpIfgpLLgpLjgpL7gpKDgpYAg4KSh4KS/4KSr4KWJ4KSy4KWN4KSfIOCkquCksOCljeCkr+CkvuCkryDgpLXgpL7gpKrgpLDgpL4sIOCkheCkqOClgeCkrOCli+CkpyDgpJXgpLDgpYIg4KSo4KSV4KS+LiDgpJzgpLAgIgorI34gIuCkj+CkleCkueClgCDgpKHgpL/gpKvgpYngpLLgpY3gpJ8g4KS44KS+4KSq4KSh4KSy4KS+IOCkqOCkvuCkueClgCwgXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgIOCkpOCksCDgpJzgpYsg4KSq4KSw4KWN4KSv4KSC4KSkIOCkj+CkluCkvuCkpuCkviDgpJXgpYngpKjgpY3gpKvgpJPgpLLgpY3gpKEg4KSV4KS/4KSC4KS14KS+IOCkleClieCkqOCljeCkq+CkqOCljeCkr+ClgeCkmuCkviDgpKrgpLDgpY3gpK/gpL7gpK8g4KSm4KS/4KSy4KS+ICIKKyN+ICLgpJzgpL7gpKRcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAg4KSo4KS+4KS54KWAIOCkpOCliyDgpKrgpLDgpY3gpK/gpILgpKQg4KSk4KWB4KSu4KWN4KS54KS+4KSy4KS+IOCkheCkqOClgeCkrOCli+Ckp+ClgOCkpCDgpJXgpYfgpLLgpYcg4KSc4KS+4KSH4KSyLlxuIgorI34gIiAg4KSV4KWJ4KSo4KWN4KSr4KSu4KS/4KS4IFshXSAgICAgXHQg4KSo4KWH4KS54KSu4KWAIOCkl+CkueCkvuCksyDgpJ3gpL7gpLLgpYfgpLLgpYAg4KSV4KWJ4KSo4KSr4KS/4KSXIOCkq+CkvuCkh+CksiDgpLjgpY3gpKXgpL7gpKrgpL/gpKQg4KSV4KSw4KSk4KWHXG4iCisjfiAiICDgpJXgpYngpKjgpY3gpKvgpY3gpLLgpL/gpJXgpY3gpJ/gpLggWyFdIFx04KSq4KSw4KS44KWN4KSq4KSw4KS14KS/4KSw4KWL4KSn4KWAIOCkquClheCkleClh+CknOClh+CkuOCkmuClgCDgpLjgpY3gpKXgpL7gpKrgpKjgpL4g4KSV4KSw4KSj4KWN4KSv4KS+4KS4IOCkuOCkguCkruCkpOClgCDgpKbgpYfgpKTgpYdcbiIKKyN+ICIgIOCkhuCksOCljeCkleCkv+Ckn+Clh+CkleCljeCkmuCksCBbIV1cdFx04KSa4KWB4KSV4KS/4KSa4KWHIOCkhuCksOCljeCkleCkv+Ckn+Clh+CkleCljeCkmuCksCDgpIXgpLjgpYfgpLIg4KSk4KSw4KWAIOCkquClheCkleClh+CknOCkteCksCDgpKrgpY3gpLDgpJXgpY3gpLDgpL/gpK/gpL4g4KSV4KSw4KSk4KWHXG4iCisjfiAiICDgpJPgpLXgpY3gpLngpLDgpLDgpL7gpIjgpJ8t4KSh4KS/4KSG4KSH4KSG4KSwIFshXSAg4KSP4KSV4KS+IOCkquClheCkleClh+CknOCkmuCljeCkr+CkviDgpKHgpL/gpLDgpYfgpJXgpY3gpJ/gpLDgpYDgpLXgpLAg4KSm4KWC4KS4fuCkr+CkvuCkmuClgCDgpKvgpL7gpIfgpLIg4KSq4KWB4KSo4KWN4KS54KS+IOCksuCkv+CkueCkv+CkpOClh1xuIgorI34gIiAg4KSw4KS/4KSu4KWB4KS14KWN4KS5LeCksOCkv+Ckh+CkqOCkuOCljeCkn+CljeCksOClh+CklSBbIV1cdOCknOCljeCkr+CkviDgpKrgpYXgpJXgpYfgpJzgpYfgpLjgpJrgpYAg4KS44KWN4KSl4KS+4KSq4KSo4KS+IOCkhuCkteCktuCljeCkr+CklSDgpIbgpLngpYcg4KSk4KWAIOCkleCkvuCkouClguCkqCDgpJ/gpL7gpJXgpKTgpYdcbiIKKyN+ICIgIOCksOCkv+CkruClgeCkteCljeCkuS3gpI/gpLjgpY3gpLjgpYfgpILgpLbgpL/gpIXgpLIgWyFdICBcdOCkruCkueCkpOCljeCkteCkvuCkmuClhyDgpKrgpYXgpJXgpYfgpJwg4KSV4KS+4KSi4KWC4KSoIOCkn+CkvuCkleCkpOClh1xuIgorI34gIlxuIgorI34gIuCkpOCkvuCkleCkv+CkpiAtIFshXSDgpKDgpLPgpJUg4KSq4KSw4KWN4KSv4KS+4KSv4KS+4KSC4KSa4KS+IOCkteCkvuCkquCksCDgpKTgpYHgpK7gpJrgpY3gpK/gpL4g4KS44KWN4KSl4KS+4KSq4KSo4KWH4KSy4KS+IOCkl+CkguCkreClgOCksCDgpKjgpYHgpJXgpLjgpL7gpKgg4KSq4KWL4KS54KSa4KS14KWCIOCktuCkleCkpOClhy5cbiIKKyN+ICJbKl0g4KS54KWHIOCkq+Cli+CksOCljeCkuOCkv+CkguCkl+CkmuClhyDgpKDgpLPgpJUg4KSq4KSw4KWN4KSv4KS+4KSvIOCkoeCkv+Ckq+ClieCksuCljeCkn+CkqOClgCDgpLbgpJXgpY3gpK8g4KSF4KS44KSk4KS+4KSkLlxuIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgZHBrZy1zcGxpdCB0byBzZWUgaWYgaXQncyBwYXJ0IG9mIGEgbXVsdGlwYXJ0ZXIiCisjfiBtc2dzdHIgIiIKKyN+ICLgpKTgpYsg4KSF4KSo4KWH4KSV4KS14KS/4KSt4KS+4KSc4KSV4KS+4KSa4KS+IOCkreCkvuCklyDgpIbgpLngpYcg4KS54KWHIOCkquCkueCkvuCko+CljeCkr+CkvuCkuOCkvuCkoOClgCDgpKHgpL/gpKrgpL/gpJXgpYfgpJzgpYAt4KS44KWN4KSq4KWN4KSy4KS/4KSfIOCkheCkruCksuCkvuCkpCDgpIbgpKPgpKPgpY3gpK/gpL7gpLgg4KSF4KSv4KS24KS44KWN4KS14KWAIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWNsIGRlYnNpZy12ZXJpZnkiCisjfiBtc2dzdHIgIuCkoeClh+CkrOCkuOCkv+Ckly3gpLXgpYfgpLDgpL/gpKvgpL7gpK8g4KSF4KSu4KSy4KS+4KSkIOCkhuCko+Cko+CljeCkr+CkvuCkuCDgpIXgpK/gpLbgpLjgpY3gpLXgpYAiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBkcGtnLWRlYiB0byBleHRyYWN0IGNvbnRyb2wgaW5mb3JtYXRpb24iCisjfiBtc2dzdHIgIuCkqOCkv+Ckr+CkguCkpOCljeCksOCkoy/gpKjgpL/gpK/gpK7gpKgg4KSu4KS+4KS54KS/4KSk4KWAIOCkruCkv+Cks+CkteCko+CljeCkr+CkvuCkuCDgpKHgpL/gpKrgpL/gpJXgpYfgpJzgpYAt4KSh4KWH4KSsIOCkheCkruCksuCkvuCkpCDgpIbgpKPgpKPgpY3gpK/gpL7gpLgg4KSF4KSv4KS24KS44KWN4KS14KWAIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGV4ZWMgZHBrZy1kZWIgdG8gZ2V0IGZpbGVzeXN0ZW0gYXJjaGl2ZSIKKyN+IG1zZ3N0ciAi4KSG4KSw4KWN4KSV4KS+4KSH4KS14KWN4KS5IOCkq+CkvuCkh+CksuCkquCljeCksOCko+CkvuCksuClgCDgpK7gpL/gpLPgpLXgpKPgpY3gpK/gpL7gpLjgpL7gpKDgpYAg4KSh4KS/4KSq4KS/4KSV4KWH4KSc4KWALeCkoeClh+CkrCDgpIXgpK7gpLLgpL7gpKQg4KSG4KSj4KSj4KWHIOCkheCktuCkleCljeCkryIKKworI34gbXNnaWQgInVuYWJsZSB0byBkZWxldGUgZGlzYXBwZWFyaW5nIGNvbnRyb2wgaW5mbyBmaWxlIGAlLjI1MHMnIgorI34gbXNnc3RyICIiCisjfiAiYCUuMjUwcycg4KSo4KS/4KSv4KSC4KSk4KWN4KSw4KSjIOCkruCkvuCkueCkv+CkpOClgCDgpKvgpL7gpIfgpLIg4KSc4KWAIOCkqOCkvuCkueCkv+CktuClgCDgpLngpYvgpKQg4KSG4KS54KWHIOCkpOClgCDgpJXgpL7gpKLgpYLgpKgg4KSf4KS+4KSV4KSj4KWN4KSv4KS+4KS4IOCkheCkuOCkruCksOCljeCkpSDgpIbgpLngpYciCisKKyN+IG1zZ2lkICJkcGtnOiAlcyBub3QgZm91bmQuXG4iCisjfiBtc2dzdHIgIuCkoeCkv+CkquCkv+CkleClh+CknOClgDogJXMg4KSu4KS/4KSz4KS+4KSy4KWHIOCkqOCkvuCkueClgC5cbiIKKworI34gbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byAuLi4vREVCSUFOIgorI34gbXNnc3RyICIuLi4vREVCSUFOIOCksuCkviDgpLjgpYDgpI/gpJrgpKHgpYDgpIbgpK/gpIbgpLAg4KSV4KSw4KSk4KS+IOCkhuCksuClgCDgpKjgpL7gpLngpYAiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyB0YXIgLWNmIgorI34gbXNnc3RyICLgpJ/gpL7gpLAgLeCkuOClgOCkj+CkqyDgpIfgpJXgpY3gpLjgpIfgpLjgpYAg4KSV4KSw4KSk4KS+IOCkhuCksuClhyDgpKjgpL7gpLngpYAiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gbWFrZSB0bXBmaWxlIChjb250cm9sKSIKKyN+IG1zZ3N0ciAi4KSf4KWA4KSP4KSu4KSq4KWA4KSr4KS+4KSI4KSyICjgpKjgpL/gpK/gpILgpKTgpY3gpLDgpKMpIOCkrOCkqOCkteCkpOCkviDgpIbgpLLgpYAg4KSo4KS+4KS54KWAIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHVubGluayB0bXBmaWxlIChjb250cm9sKSwgJXMiCisjfiBtc2dzdHIgIuCkn+ClgOCkj+CkruCkquClgOCkq+CkvuCkiOCksiAo4KSo4KS/4KSv4KSC4KSk4KWN4KSw4KSjKSwgJXMg4KSF4KSo4KSy4KS/4KSC4KSVIOCkleCksOCkpOCkviDgpIbgpLLgpYAg4KSo4KS+4KS54KWAIgorCisjfiBtc2dpZCAiY29udHJvbCIKKyN+IG1zZ3N0ciAi4KSo4KS/4KSv4KSC4KSk4KWN4KSw4KSjIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHJld2luZCB0bXBmaWxlIChjb250cm9sKSIKKyN+IG1zZ3N0ciAi4KSf4KWA4KSP4KSu4KSq4KWA4KSr4KS+4KSI4KSyICjgpKjgpL/gpK/gpILgpKTgpY3gpLDgpKMp4KSw4KS/4KS14KS+4KSH4KSC4KShIOCkleCksOCkpOCkviDgpIbgpLLgpYAg4KSo4KS+4KS54KWAIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGZzdGF0IHRtcGZpbGUgKGNvbnRyb2wpIgorI34gbXNnc3RyICLgpJ/gpYDgpI/gpK7gpKrgpYDgpKvgpL7gpIjgpLIgKOCkqOCkv+Ckr+CkguCkpOCljeCksOCkoykg4KSP4KSr4KS44KWN4KSf4KWF4KSfIOCkleCksOCkpOCkviDgpIbgpLLgpYAg4KSo4KS+4KS54KWAIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgZmluZCIKKyN+IG1zZ3N0ciAi4KSr4KS+4KSH4KSC4KShIOCkh+Ckj+CkleCljeCkuOCkh+CkuOClgCDgpJXgpLDgpKTgpL4g4KSG4KSy4KWAIOCkqOCkvuCkueClgCIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIHNoIC1jIG12IGZvby8qICZjIgorI34gbXNnc3RyICLgpI/gpLjgpI/gpJogLeCkuOClgCDgpI/gpK7gpLXgpY3gpLngpYAg4KSP4KSr4KST4KSTLyogJuCkuOClgCDgpIfgpI/gpJXgpY3gpLjgpIfgpLjgpYAg4KSV4KSw4KSk4KS+IOCkhuCksuClgCDgpKjgpL7gpLngpYAiCisKKyN+IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSAlLjI1MHMgbGVuZ3RoIGNvbnRhaW5zIG51bGxzIgorI34gbXNnc3RyICLgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KSt4KWN4KSw4KS34KWN4KSfIOCkhuCkueClhyAtICUuMjUwcyDgpLLgpL7gpILgpKzgpYDgpKQg4KSw4KS/4KSV4KWN4KSkIOCknOCkvuCkl+CkviIKKworI34gbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIG5lZ2F0aXZlIG1lbWJlciBsZW5ndGggJXppIgorI34gbXNnc3RyICLgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KSt4KWN4KSw4KS34KWN4KSfIOCkhuCkueClhyAtIOCloOCkoyDgpLjgpKbgpLjgpY3gpK8g4KSy4KS+4KSC4KSs4KWAICV6aSIKKworI34gbXNnaWQgImZhaWxlZCBnZXR0aW5nIHRoZSBjdXJyZW50IGZpbGUgcG9zaXRpb24iCisjfiBtc2dzdHIgIuCkq+CkvuCkh+CksuCkmuClgCDgpLjgpKbgpY3gpK/gpLjgpY3gpKXgpL/gpKTgpYAg4KSu4KS/4KSz4KS14KSk4KS+IOCkhuCksuClgCDgpKjgpL7gpLngpYAiCisKKyN+IG1zZ2lkICJmYWlsZWQgc2V0dGluZyB0aGUgY3VycmVudCBmaWxlIHBvc2l0aW9uIgorI34gbXNnc3RyICLgpKvgpL7gpIfgpLLgpJrgpYAg4KS44KSm4KWN4KSv4KS44KWN4KSl4KS/4KSk4KWAIOCkuOClh+CknyDgpJXgpLDgpKTgpL4g4KSG4KSy4KWAIOCkqOCkvuCkueClgCIKKworI34gbXNnaWQgInZlcnNpb24gbnVtYmVyIgorI34gbXNnc3RyICLgpIbgpLXgpYPgpKTgpY3gpKTgpYAg4KSV4KWN4KSw4KSu4KS+4KSC4KSVIgorCisjfiBtc2dpZCAiaGVhZGVyIGluZm8gbWVtYmVyIgorI34gbXNnc3RyICLgpLbgpYDgpLDgpY3gpLfgpJUg4KSu4KS+4KS54KS/4KSk4KWAIOCkuOCkpuCkuOCljeCkryIKKworIywgZnV6enkKKyN+fCBtc2dpZCAic2tpcHBlZCBtZW1iZXIgZGF0YSBmcm9tICVzIgorI34gbXNnaWQgInNraXBwZWQgY29udHJvbCBhcmVhIGZyb20gJXMiCisjfiBtc2dzdHIgIiVzIOCkruCkp+ClgOCksiDgpLjgpKbgpLjgpY3gpK8g4KSh4KWH4KSf4KS+IOCkuOCli+CkoeClguCkqCDgpKbgpL/gpLLgpL4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSB0ZW1wb3JhcnkgZGlyZWN0b3J5IgorI34gbXNnc3RyICLgpIXgpLjgpY3gpKXgpL7gpK/gpYAg4KSo4KS/4KSw4KWN4KSm4KWH4KS24KS/4KSV4KS+4KSo4KS+4KS1IOCkrOCkqOCkteCkpOCkviDgpIbgpLLgpYcg4KSo4KS+4KS54KWAIgorCisjfiBtc2dpZCAiaW5mb19zcGV3IgorI34gbXNnc3RyICLgpIfgpKjgpY3gpKvgpYtf4KS44KWN4KSq4KWN4KSv4KWCIgorCisjLCBmdXp6eQorI358IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBkcGtnLWRlYiB0byBleHRyYWN0IGNvbnRyb2wgaW5mb3JtYXRpb24iCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgZHBrZy1kZWIgdG8gZXh0cmFjdCBmaWVsZCB2YWx1ZSIKKyN+IG1zZ3N0ciAi4KSo4KS/4KSv4KSC4KSk4KWN4KSw4KSjL+CkqOCkv+Ckr+CkruCkqCDgpK7gpL7gpLngpL/gpKTgpYAg4KSu4KS/4KSz4KS14KSj4KWN4KSv4KS+4KS4IOCkoeCkv+CkquCkv+CkleClh+CknOClgC3gpKHgpYfgpKwg4KSF4KSu4KSy4KS+4KSkIOCkhuCko+Cko+CljeCkr+CkvuCkuCDgpIXgpK/gpLbgpLjgpY3gpLXgpYAiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgJXM6ICVzIgorI34gbXNnaWQgInVuYWJsZSB0byBzdGF0ICVzOiAlcyIKKyN+IG1zZ3N0ciAiJXM6ICVzIOCkrOCkqOCkteCkpOCkviDgpK/gpYfgpKQg4KSo4KS+4KS54KWAIgorCisjfiBtc2dpZCAic2xhdmUgbmFtZSAlcyBkdXBsaWNhdGVkIgorI34gbXNnc3RyICLgpJfgpYHgpLLgpL7gpK4g4KSo4KS+4KS1ICVzIOCkmuClgCDgpKrgpYHgpKjgpLDgpL7gpLXgpYPgpKTgpY3gpKTgpYAiCisKKyN+IG1zZ2lkICJzbGF2ZSBsaW5rICVzIGR1cGxpY2F0ZWQiCisjfiBtc2dzdHIgIuCkl+ClgeCksuCkvuCkriDgpLjgpL7gpJbgpLPgpYAgJXMg4KSa4KWAIOCkquClgeCkqOCksOCkvuCkteClg+CkpOCljeCkpOClgCIKKworI34gbXNnaWQgIiVkIHJlcXVlc3RlZCBjb250cm9sIGNvbXBvbmVudHMgYXJlIG1pc3NpbmciCisjfiBtc2dzdHIgIuCkruCkvuCkl+Ckv+CkpOCksuClh+CksuCljeCkr+CkvuCkguCkquCliOCkleClgCAlZCDgpKjgpL/gpK/gpILgpKTgpY3gpLDgpKMg4KSY4KSf4KSVIOCkuOCkvuCkquCkoeCkpCDgpKjgpL7gpLngpYDgpKQiCisKKyN+IG1zZ2lkICJjYXQgKGRhdGEpIgorI34gbXNnc3RyICLgpJXgpYXgpJ8gKOCkoeClh+Ckn+CkvikiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gb3BlbiBwaXBlIGRlc2NyaXB0b3IgYDEnIGluIHBhc3RlIgorI34gbXNnc3RyICLgpKrgpL7gpIfgpKog4KS14KSw4KWN4KSj4KSo4KSV4KSw4KWN4KSk4KS+IGAxJyDgpKrgpYfgpLjgpY3gpJ/gpK7gpKfgpYcg4KSJ4KSY4KSh4KSk4KS+IOCkhuCksuCkviDgpKjgpL7gpLngpYAiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gd3JpdGUgdG8gZ3ppcCAtZGMiCisjfiBtc2dzdHIgIuCknOCkv+CkneCkv+CkqiAt4KSh4KWA4KS44KWA4KSu4KSn4KWHIOCksuClh+CkluCkqCDgpJXgpLDgpKTgpL4g4KSG4KSy4KWHIOCkqOCkvuCkueClgCIKKworI34gbXNnaWQgImZhaWxlZCB0byBjbG9zZSBnemlwIC1kYyIKKyN+IG1zZ3N0ciAi4KSc4KS/4KSd4KS/4KSqIC3gpKHgpYDgpLjgpYAg4KSs4KSC4KSmIOCkleCksOCkpOCkviDgpIbgpLLgpYAg4KSo4KS+4KS54KWAIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHN5c2NhbGwgbHNlZWsgdG8gZmlsZXMgYXJjaGl2ZSBwb3J0aW9uIgorI34gbXNnc3RyICLgpIbgpK/gpLjgpYDgpJUg4KSr4KS+4KSv4KSy4KWAIOCkhuCksOCljeCkleCkvuCkh+CktSDgpLjgpY3gpKXgpL/gpKTgpYDgpKQg4KS44KS/4KS44KSV4KS+4KWF4KSyIOCkleCksOCkpOCkviDgpIbgpLLgpYcg4KSo4KS+4KS54KWAIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGV4ZWMgbWtzcGxpdCIKKyN+IG1zZ3N0ciAi4KSP4KSu4KSV4KWH4KS44KWN4KSq4KWN4KSy4KS/4KSfIOCkh+Ckj+CkleCljeCkuOCkh+CkuOClgCDgpJXgpLDgpKTgpL4g4KSv4KWH4KSkIOCkqOCkvuCkueClgCIKKworI34gbXNnaWQgIiIKKyN+ICJcbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisjfiAiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi4iCisjfiBtc2dzdHIgIiIKKyN+ICJcbiIKKyN+ICLgpLjgpLDgpY3gpLXgpL7gpKfgpL/gpJXgpL7gpLAgKEMpIOClp+Clr+Clr+ClqyDgpIbgpK/gpKgg4KSc4KWF4KSV4KS44KSoLlxuIgorI34gIuCkuOCksOCljeCkteCkvuCkp+Ckv+CkleCkvuCksCAoQykg4KWo4KWm4KWm4KWmLOClqOClpuClpuClpyDgpLXgpL/gpJrgpLDgpY3gpJ8g4KSF4KWF4KSV4KWN4KSV4KWH4KSw4KSu4KSoLiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJ0d28gY29tbWFuZHMgc3BlY2lmaWVkOiAlcyBhbmQgLS0lcyIKKyN+IG1zZ3N0ciAi4KSm4KWL4KSoIOCkquCkpuCljeCkp+CkpOClgCDgpKjgpL/gpLDgpY3gpKfgpL7gpLDgpYDgpKQg4KSV4KWH4KSy4KWN4KSv4KS+4KSkOiAlcyDgpIbgpKPgpYAgLS0lcyIKKworI34gbXNnaWQgIi0tJXMgbmVlZHMgYSBkaXZlcnQtdG8gYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tJXMg4KS44KS+4KSg4KWAIOCkteCks+CkteCkvi3gpJXgpKHgpYcg4KSq4KSw4KWN4KSv4KS+4KSv4KS+4KSa4KWAIOCkl+CksOCknCDgpIbgpLngpYciCisKKyN+IG1zZ2lkICItLSVzIG5lZWRzIGEgPHBhY2thZ2U+IGFyZ3VtZW50IgorI34gbXNnc3RyICItLSVzIOCkuOCkvuCkoOClgCAgPOCkquClheCkleClh+CknD4g4KSq4KSw4KWN4KSv4KS+4KSv4KS+4KSa4KWAIOCkl+CksOCknCDgpIbgpLngpYciCisKKyN+IG1zZ2lkICJjYW5ub3Qgb3BlbiBkaXZlcnNpb25zOiAlcyIKKyN+IG1zZ3N0ciAi4KS14KSz4KS14KSy4KWH4KSy4KWHOiAlcyDgpIngpJjgpKHgpKTgpL4g4KSv4KWH4KSkIOCkqOCkvuCkueClgCIKKworI34gbXNnaWQgIm1pc3NpbmcgYWx0bmFtZSIKKyN+IG1zZ3N0ciAi4KSq4KSw4KWN4KSv4KS+4KSv4KWA4KSo4KS+4KS1IOCkl+CkvuCkr+CkrCIKKworI34gbXNnaWQgImludGVybmFsIGVycm9yIC0gYmFkIG1vZGUgYCVzJyIKKyN+IG1zZ3N0ciAi4KSF4KSC4KSk4KSw4KWN4KSX4KSkIOCkpOCljeCksOClgeCkn+ClgCAtIOCkluCksOCkvuCkrCDgpKrgpKbgpY3gpKfgpKQgYCVzJyIKKworI34gbXNnaWQgImNhbm5vdCBzdGF0IG9sZCBuYW1lIGAlcyc6ICVzIgorI34gbXNnc3RyICLgpJzgpYHgpKjgpYAg4KSo4KS+4KS14KWHIGAlcyc6ICVzIOCkuOCljeCkn+ClheCknyDgpJXgpLDgpKTgpL4g4KSv4KWH4KSkIOCkqOCkvuCkueClgOCkpCIKKworI34gbXNnaWQgInJlbmFtZTogcmVuYW1lIGAlcycgdG8gYCVzJzogJXMiCisjfiBtc2dzdHIgIuCkquClgeCkqOCksOCljeCkqOCkvuCkruCkvuCkguCkleCkqDogYCVzJyDgpJrgpYcgYCVzJzogJXMg4KSu4KSn4KWHIOCkquClgeCkqOCksOCljeCkqOCkvuCkruCkvuCkguCkleCkqCDgpJXgpLDgpL4iCisKKyN+IG1zZ2lkICJjcmVhdGUgZGl2ZXJzaW9ucy1uZXc6ICVzIgorI34gbXNnc3RyICLgpLXgpLPgpKMt4KSo4KS14KWA4KSoOiAlcyDgpKzgpKjgpLXgpL4gIgorCisjfiBtc2dpZCAid3JpdGUgZGl2ZXJzaW9ucy1uZXc6ICVzIgorI34gbXNnc3RyICLgpLXgpLPgpKMt4KSo4KS14KWA4KSoOiAlcyDgpLLgpYfgpJbgpKgg4KSV4KSw4KS+IgorCisjfiBtc2dpZCAiY2xvc2UgZGl2ZXJzaW9ucy1uZXc6ICVzIgorI34gbXNnc3RyICLgpLXgpLPgpKMt4KSo4KS14KWA4KSoOiAlcyDgpKzgpILgpKYg4KSV4KSw4KS+IgorCisjfiBtc2dpZCAiY3JlYXRlIG5ldyBkaXZlcnNpb25zLW9sZDogJXMiCisjfiBtc2dzdHIgIuCkqOCkteClgOCkqCDgpLXgpLPgpKMt4KSc4KWB4KSo4KWHOiAlcyDgpKzgpKjgpLXgpL4iCisKKyN+IG1zZ2lkICJpbnN0YWxsIG5ldyBkaXZlcnNpb25zOiAlcyIKKyN+IG1zZ3N0ciAi4KSo4KS14KWA4KSoIOCkteCks+Cko+ClhzogJXMg4KSF4KSn4KS/4KS34KWN4KSg4KS+4KSq4KSoIOCkleCksOCkviIKKworI34gbXNnaWQgImludGVybmFsIGVycm9yOiAlcyBjb3JydXB0OiAlcyIKKyN+IG1zZ3N0ciAi4KSF4KSC4KSk4KSw4KWN4KSX4KSkIOCkpOCljeCksOClgeCkn+ClgDogJXMg4KSt4KWN4KSw4KS34KWN4KSfOiAlcyIKKworI34gbXNnaWQgImRwa2ctZGViIC0gZXJyb3I6ICVzIChgJXMnKSBkb2Vzbid0IGNvbnRhaW4gYW55IGRpZ2l0c1xuIgorI34gbXNnc3RyICLgpKHgpL/gpKrgpL/gpJXgpYfgpJzgpL8t4KSh4KWH4KSsIC0g4KSm4KWL4KS3OiAlcyAoYCVzJykg4KSu4KSn4KWN4KSv4KWHIOCkleCli+Cko+CkpOClh+CkueClgCDgpIXgpILgpJUg4KSo4KS+4KS54KWA4KSkXG4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiRGViaWFuIHJldmlzaW9uIgorI34gbXNnc3RyICLgpKHgpYfgpKzgpL/gpK/gpKggJXMg4KSG4KS14KWD4KSk4KWN4KSk4KWAICVzLlxuIgorCisjfiBtc2dpZCAiJWQgZXJyb3JzIGluIGNvbnRyb2wgZmlsZSIKKyN+IG1zZ3N0ciAi4KSo4KS/4KSv4KSC4KSk4KWN4KSw4KSjIOCkq+CkvuCkh+CksuCkruCkp+ClhyAlZCDgpKTgpY3gpLDgpYHgpJ/gpYAiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgInVuYWJsZSB0byByZWFkICVzOiAlcyIKKyN+IG1zZ2lkICJjYW4ndCByZWFkZGlyICVzOiAlcyIKKyN+IG1zZ3N0ciAiJXM6ICVzIOCkteCkvuCkmuCkpOCkviDgpK/gpYfgpKQg4KSo4KS+4KS54KWAIgorCisjfiBtc2dpZCAiZmFpbGVkIGluIGJ1ZmZlcl93cml0ZShmZCkgKCVpLCByZXQ9JWxpKTogJXMiCisjfiBtc2dzdHIgIuCkrOCkq+CksF/gpLLgpYfgpJbgpKgo4KSP4KSr4KSh4KWAKSAoJWksIHJldD0lbGkpOiAlcyDgpK7gpKfgpYcg4KSF4KSv4KS24KS44KWN4KS14KWAIOCkneCkvuCksuClhyIKKworI34gbXNnaWQgImVvZiBpbiBidWZmZXJfd3JpdGUoc3RyZWFtKTogJXMiCisjfiBtc2dzdHIgIuCkrOCkq+CksF/gpLLgpYfgpJbgpKgo4KSn4KS+4KSw4KS+KTogJXMg4KSu4KSn4KWHIOCkh+Ckk+Ckj+CkqyIKKworI34gbXNnaWQgImVycm9yIGluIGJ1ZmZlcl93cml0ZShzdHJlYW0pOiAlcyIKKyN+IG1zZ3N0ciAi4KSs4KSr4KSwX+CksuClh+CkluCkqCjgpKfgpL7gpLDgpL4pOiAlcyDgpK7gpKfgpYcg4KSk4KWN4KSw4KWB4KSf4KWAIgorCisjfiBtc2dpZCAiZmFpbGVkIGluIGJ1ZmZlcl9yZWFkKGZkKTogJXMiCisjfiBtc2dzdHIgIuCkrOCkq+CksF/gpLXgpL7gpJrgpKgo4KSP4KSr4KSh4KWAKTogJXMg4KSu4KSn4KWHIOCkheCkr+CktuCkuOCljeCkteClgCDgpJ3gpL7gpLLgpYciCisKKyN+IG1zZ2lkICJlcnJvciBpbiBidWZmZXJfcmVhZChzdHJlYW0pOiAlcyIKKyN+IG1zZ3N0ciAi4KSs4KSr4KSwX+CkteCkvuCkmuCkqCjgpKfgpL7gpLDgpL4pOiAlcyIKKworIywgZnV6enkKKyN+IG1zZ2lkICIlcyByZXR1cm5lZCBlcnJvciBleGl0IHN0YXR1cyAlZCIKKyN+IG1zZ3N0ciAi4KSJ4KSq4KSq4KWN4KSw4KSV4KWN4KSw4KS/4KSv4KS+ICVzIOCkleCkoeClgeCkqCDgpKTgpY3gpLDgpYHgpJ/gpYAg4KSo4KS/4KSw4KWN4KSX4KSuIOCkuOCljeCkpeCkv+CkpOClgCAlZCIKKworIywgZnV6enkKKyN+IG1zZ2lkICIlcyBraWxsZWQgYnkgc2lnbmFsICglcyklcyIKKyN+IG1zZ3N0ciAi4KSJ4KSq4KSq4KWN4KSw4KSV4KWN4KSw4KS/4KSv4KS+ICVzIOCksuCkviAoJXMpJXMg4KS44KSC4KSV4KWH4KSk4KS+4KSo4KWHIOCkqOCkt+CljeCknyDgpJXgpYfgpLLgpYciCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiIgorI34gIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSB2ZXJzaW9uIDIgb3JcbiIKKyN+ICJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIlxuIgorI34gIuCkueClhyDgpK7gpYHgpJXgpY3gpKQgIOCkuOClieCkq+CljeCkn+CkteClh+CkheCksCDgpIbgpLngpYc7IOCkquCljeCksOCkpOCkv+CksuCkv+CkquClgOCkmuCljeCkr+CkviDgpIXgpJ/gpYDgpILgpLjgpL7gpKDgpYAg4KSc4KWA4KSP4KSo4KSv4KWCIOCkuOCkvuCkruCkvuCkqOCljeCkryDgpLjgpL7gpLDgpY3gpLXgpJzgpKjgpL/gpJUg4KSq4KSw4KS14KS+4KSo4KS+ICIKKyN+ICLgpJzgpYDgpKrgpYDgpI/gpLIg4KSG4KS14KWD4KSk4KWN4KSk4KWAIOClqCDgpLXgpL5cbiIKKyN+ICLgpKrgpYHgpKLgpYDgpLIg4KSq4KS54KS+LiDgpK/gpL7gpJrgpYAg4KSV4KWL4KSj4KSk4KWA4KS54KWAIOCkueCkruClgCDgpKjgpL7gpLngpYAuXG4iCisKKyN+IG1zZ2lkICIiCisjfiAiXG4iCisjfiAiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbmNlIHZlcnNpb24gMiBvclxuIgorI34gImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LlxuIgorI34gbXNnc3RyICIiCisjfiAiXG4iCisjfiAi4KS54KWHIOCkruClgeCkleCljeCkpCAg4KS44KWJ4KSr4KWN4KSf4KS14KWH4KSF4KSwIOCkhuCkueClhzsg4KSq4KWN4KSw4KSk4KS/4KSy4KS/4KSq4KWA4KSa4KWN4KSv4KS+IOCkheCkn+ClgOCkguCkuOCkvuCkoOClgCDgpJzgpYDgpI/gpKjgpK/gpYIg4KS44KS+4KSu4KS+4KSo4KWN4KSvIOCkuOCkvuCksOCljeCkteCknOCkqOCkv+CklSDgpKrgpLDgpLXgpL7gpKjgpL4gIgorI34gIuCknOClgOCkquClgOCkj+CksiDgpIbgpLXgpYPgpKTgpY3gpKTgpYAg4KWoIOCkteCkvlxuIgorI34gIuCkquClgeCkouClgOCksiDgpKrgpLngpL4uIOCkr+CkvuCkmuClgCDgpJXgpYvgpKPgpKTgpYDgpLngpYAg4KS54KSu4KWAIOCkqOCkvuCkueClgC5cbiIKKworIywgZnV6enkKKyN+IG1zZ2lkICIlczogZmFpbGVkIHRvIGV4ZWMgJyVzICVzJyIKKyN+IG1zZ3N0ciAiJXM6IOCknOClgOCkneCkv+CkqiDgpJrgpYAg4KSF4KSC4KSu4KSy4KSs4KSc4KS+4KS14KSj4KWAIOCkueCli+CkiSDgpLbgpJXgpLLgpYAg4KSo4KS+4KS54KWAICVzIgorCisjfiBtc2dpZCAiJXM6IGludGVybmFsIGd6aXAgZXJyb3I6IHJlYWQ6IGAlcyciCisjfiBtc2dzdHIgIiVzOiDgpIbgpILgpKTgpLDgpL/gpJUg4KSc4KWA4KSd4KS/4KSqIOCkpOCljeCksOClgeCkn+ClgDog4KS14KS+4KSa4KSoOiBgJXMnIgorCisjfiBtc2dpZCAiJXM6IGludGVybmFsIGd6aXAgZXJyb3I6IHdyaXRlOiBgJXMnIgorI34gbXNnc3RyICIlczog4KSG4KSC4KSk4KSw4KS/4KSVIOCknOClgOCkneCkv+CkqiDgpKTgpY3gpLDgpYHgpJ/gpYA6IOCksuClh+CkluCkqDogYCVzJyIKKworI34gbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIGVycm9yOiByZWFkKCVpKSAhPSB3cml0ZSglaSkiCisjfiBtc2dzdHIgIiVzOiDgpIbgpILgpKTgpLDgpL/gpJUg4KSc4KWA4KSd4KS/4KSqIOCkpOCljeCksOClgeCkn+ClgDog4KS14KS+4KSa4KSoKCVpKSAhPSDgpLLgpYfgpJbgpKgoJWkpIgorCisjfiBtc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIGVycm9yOiByZWFkOiBgJXMnIgorI34gbXNnc3RyICIlczog4KSG4KSC4KSk4KSw4KS/4KSVIOCkrOClgOCkneCkv+CkquClqCDgpKTgpY3gpLDgpYHgpJ/gpYA6IOCkteCkvuCkmuCkqDogYCVzIgorCisjfiBtc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIGVycm9yOiB3cml0ZTogYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IOCkhuCkguCkpOCksOCkv+CklSDgpKzgpYDgpJ3gpL/gpKrgpagg4KSk4KWN4KSw4KWB4KSf4KWAOiDgpLLgpYfgpJbgpKg6IGAlcyIKKworI34gbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiBlcnJvcjogcmVhZCglaSkgIT0gd3JpdGUoJWkpIgorI34gbXNnc3RyICIlczog4KSG4KSC4KSk4KSw4KS/4KSVIOCkrOClgOCkneCkv+CkquClqCDgpKTgpY3gpLDgpYHgpJ/gpYA6IOCkteCkvuCkmuCkqCglaSkgIT0g4KSy4KWH4KSW4KSoKCVpKSIKKworI34gbXNnaWQgIkRvbid0IGZvcmdldCB0byBmb3JlZ3JvdW5kIChgZmcnKSB0aGlzIHByb2Nlc3Mgd2hlbiB5b3UncmUgZG9uZSAhXG4iCisjfiBtc2dzdHIgIuCkpOClgeCkruCkmuClhyDgpJXgpL7gpK4g4KSd4KS+4KSy4KWN4KSv4KS+4KS14KSwIOCkueCkvyDgpKrgpY3gpLDgpYvgpLjgpYfgpLgg4KSr4KWL4KSw4KSX4KWN4KSw4KS+4KSJ4KSo4KWN4KShIChgZmcnKSDgpJXgpLDgpKPgpY3gpK/gpL7gpLgg4KS14KS/4KS44KSw4KWCIOCkqOCkleCkviAhXG4iCisKKyN+IG1zZ2lkICIiCisjfiAiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvclxuIgorI34gImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LlxuIgorI34gIlNlZSAlcyAtLWxpY2Vuc2UgZm9yIGNvcHlyaWdodCBhbmQgbGljZW5zZSBkZXRhaWxzLlxuIgorI34gbXNnc3RyICIiCisjfiAi4KS54KWHIOCkuOClieCkq+CljeCkn+CljeCkteClh+CkheCksCDgpLXgpL/gpKjgpL7gpK7gpYHgpLLgpY3gpK8g4KSG4KS54KWHOyBHTlUv4KSc4KWA4KSP4KSo4KSv4KWBIOCkuOCkvuCkruCkvuCkqOCljeCkryDgpLjgpL7gpLDgpY3gpLXgpJzgpKjgpYDgpJUg4KSq4KSw4KS14KS+4KSo4KS+IOCkhuCkteClg+CkpOCljeCkpOCkvyDgpagg4KSV4KS/4KSC4KS14KS+XG4iCisjfiAi4KSo4KSC4KSk4KSwIOCkqOCkleCljeCkleCksiDgpJXgpLDgpKPgpY3gpK/gpL7gpJrgpY3gpK/gpL4g4KSF4KSf4KS/4KSC4KS44KS+4KSg4KWALiDgpK/gpL7gpJrgpYAg4KS54KSu4KWAIOCkqOCkvuCkueClgC5cbiIKKyN+ICLgpKrgpLngpL4gJXMgLS3gpLLgpL7gpIfgpLjgpKjgpY3gpLgg4KSo4KSV4KWN4KSV4KSyIOCkleCksOCko+CljeCkr+CkvuCkuOCkvuCkoOClgCDgpKrgpLDgpLXgpL7gpKjgpL4g4KSG4KSj4KS/IOCkquCksOCkteCkvuCkqOCljeCkr+CkvuCkmuClhyDgpKTgpKrgpLbgpYDgpLIuXG4iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gZ2V0IHVuaXF1ZSBmaWxlbmFtZSBmb3IgY29udHJvbCBpbmZvIgorI34gbXNnc3RyICLgpKjgpL/gpK/gpILgpKTgpY3gpLDgpKMv4KSo4KS/4KSv4KSu4KSoIOCkruCkvuCkueCkv+CkpOClgOCkuOCkvuCkoOClgCDgpIXgpKbgpY3gpLXgpL/gpKTgpL/gpK8g4KSr4KS+4KSH4KSy4KSo4KS+4KS1IOCkruCkv+Cks+Cko+ClhyDgpIXgpLbgpJXgpY3gpK8iCisKKyN+IG1zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIG1hbmFnZW1lbnQgcHJvZ3JhbSBxdWVyeSB0b29sXG4iCisjfiBtc2dzdHIgIuCkoeClh+CkrOCkv+CkheCkqCBgJXMnIOCkquClheCkleClh+CknCDgpLXgpY3gpK/gpLXgpLjgpY3gpKXgpL7gpKrgpKgg4KSq4KWN4KSw4KWL4KSX4KWN4KSw4KWF4KSuIOCkleCljeCkteClh+CksOClgC/gpLbgpILgpJXgpL4g4KS44KS+4KSn4KSoXG4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiIgorI34gIlVzZSAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgcXVlcnlpbmcgcGFja2FnZXM7XG4iCisjfiAiVXNlIC0tbGljZW5zZSBmb3IgY29weXJpZ2h0IGxpY2Vuc2UgYW5kIGxhY2sgb2Ygd2FycmFudHkgKEdOVSBHUEwpLiIKKyN+IG1zZ3N0ciAiIgorI34gIuCkteCkvuCkquCksOCkviAtLeCkueClh+CksuCljeCkqiDgpJXgpY3gpLXgpYfgpLDgpL8g4KSV4KSw4KSj4KS+fuCkr+CkviDgpKrgpYXgpJXgpYfgpJzgpJrgpY3gpK/gpL4g4KS44KS54KS+4KSv4KWN4KSv4KS+4KS44KS+4KSg4KWAO1xuIgorI34gIuCkteCkvuCkquCksOCkviAtLeCksuCkvuCkh+CkuOCkqOCljeCkuCDgpKjgpJXgpY3gpJXgpLIg4KSV4KSw4KSj4KWN4KSv4KS+4KSa4KWN4KSv4KS+IOCkquCksOCkteCkvuCkqOCljeCkr+CkvuCkuOCkvuCkoOClgCDgpIbgpKPgpL8g4KS54KSu4KWA4KSa4KWN4KSv4KS+IOCkheCkreCkvuCkteCkvuCkuOCkvuCkoOClgCAoR05VIEdQTCkuXG4iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gY2hvd24gJXM6ICVzIgorI34gbXNnc3RyICIlcyDgpLjgpYDgpI/gpJrgpIXgpYvgpKgg4KSV4KSw4KSk4KS+IOCkhuCksuClhyDgpKjgpL7gpLngpYA6ICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGNobW9kICVzOiAlcyIKKyN+IG1zZ3N0ciAiJXMg4KS44KWA4KSP4KSa4KSo4KS+4KWF4KS+4KShIOCkleCksOCkpOCkviDgpIbgpLLgpYcg4KSo4KS+4KS54KWAOiAlcyIKKworI34gbXNnaWQgImZhaWxlZCB0byBmb3JrIGZvciBjbGVhbnVwIgorI34gbXNnc3RyICLgpLjgpL7gpKvgpLjgpKvgpL7gpIjgpLjgpL7gpKDgpYAg4KS14KS/4KS24KS+4KSWIOCkleCksOCkpOCkviDgpIbgpLLgpL4g4KSo4KS+4KS54KWAIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHdhaXQgZm9yIHJtIGNsZWFudXAiCisjfiBtc2dzdHIgIuCkhuCksOCkj+CkriDgpLjgpL7gpKvgpLjgpKvgpL7gpIjgpLjgpL7gpKDgpYAg4KS14KS+4KSfIOCkquCkueCkvuCkpOCkviDgpIbgpLLgpYAg4KSo4KS+4KS54KWAIgorCisjfiBtc2dpZCAicm0gY2xlYW51cCBmYWlsZWQsIGNvZGUgJWRcbiIKKyN+IG1zZ3N0ciAi4KSG4KSw4KSP4KSuIOCkuOCkvuCkq+CkuOCkq+CkvuCkiCDgpIXgpK/gpLbgpLjgpY3gpLXgpYAg4KSd4KS+4KSy4KWALCDgpJXgpYvgpKEgJWRcbiIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIHJtIC1yZiIKKyN+IG1zZ3N0ciAi4KSG4KSw4KSP4KSuIC3gpIbgpLDgpI/gpKsg4KSH4KSV4KWN4KS44KSH4KS44KWAIOCkleCksOCkpOCkviDgpIbgpLLgpYcg4KSo4KS+4KS54KWAIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHJlYWQgYGNvbnRyb2wnIChpbiBgJS4yNTVzJykiCisjfiBtc2dzdHIgImDgpKjgpL/gpK/gpILgpKTgpY3gpLDgpKMnIChgJS4yNTVzJyDgpK7gpKfgpYDgpLIpIOCkteCkvuCkmuCkpOCkviDgpIbgpLLgpYcg4KSo4KS+4KS54KWAIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHNlZWsgYmFjayIKKyN+IG1zZ3N0ciAi4KSq4KSw4KSkIOCkruCkv+Cks+CkteCkpOCkviDgpK/gpYfgpKQg4KSo4KS+4KS54KWAIgorCisjLCBmdXp6eQorI34gbXNnaWQgInVua25vd24gZGF0YSB0eXBlIGAlaScgaW4gYnVmZmVyX3dyaXRlXG4iCisjfiBtc2dzdHIgIuCkrOCkq+CksF/gpLLgpYfgpJbgpKgg4KSu4KSn4KWA4KSyIOCkoeClh+Ckn+CkvuCkmuCkviDgpKrgpY3gpLDgpJXgpL7gpLAg4KSF4KSq4KSw4KS/4KSa4KWA4KSkIFxuIgorCisjLCBmdXp6eQorI34gbXNnaWQgInVua25vd24gZGF0YSB0eXBlIGAlaScgaW4gYnVmZmVyX3JlYWRcbiIKKyN+IG1zZ3N0ciAi4KSs4KSr4KSwX+CkteCkvuCkmuCkqCDgpK7gpKfgpYDgpLIg4KSh4KWH4KSf4KS+4KSa4KS+IOCkquCljeCksOCkleCkvuCksCDgpIXgpKrgpLDgpL/gpJrgpYDgpKQgXG4iCisKKyN+IG1zZ2lkICJ3YWl0IGZvciBzaGVsbCBmYWlsZWQiCisjfiBtc2dzdHIgIuCktuClh+CksiDgpIXgpK/gpLbgpLjgpY3gpLXgpYAg4KSd4KS+4KSy4KWHIOCkruCljeCkueCko+ClguCkqCDgpKXgpL7gpILgpKzgpL4iCisKKyN+IG1zZ2lkICJyZWFkIGVycm9yIGluIGRpdmVyc2lvbnMgW2ldIgorI34gbXNnc3RyICLgpKHgpL7gpIfgpLXgpY3gpLngpLDgpY3gpJzgpKjgpY3gpLggW2ldIOCkruCkp+CksuCkviDgpKbgpYvgpLcg4KS14KS+4KSa4KS+IgorCisjfiBtc2dpZCAidW5saW5rIgorI34gbXNnc3RyICLgpIXgpKjgpLLgpL/gpILgpJUv4KS44KS+4KSW4KSz4KWAIOCkpOClgeCkn+CksuClgCIKKworI34gbXNnaWQgImNobW9kIgorI34gbXNnc3RyICLgpLjgpYDgpI/gpJrgpK7gpYvgpKEiCisKKyN+IG1zZ2lkICJkZWxldGUiCisjfiBtc2dzdHIgIuCkoeCkv+CksuCkv+CknyIKKworIywgZnV6enkKKyN+IG1zZ2lkICJmYWlsZWQgdG8gJXMgJyUuMjU1cyciCisjfiBtc2dzdHIgIiVzIGAlJS4yNTVzIOCkheCkr+CktuCkuOCljeCkteClgCIKKworI34gbXNnaWQgIndhaXQgZm9yIGRwa2ctc3BsaXQgZmFpbGVkIgorI34gbXNnc3RyICLgpKHgpL/gpKrgpL/gpJXgpYfgpJzgpYAt4KS44KWN4KSq4KWN4KSy4KS/4KSfIOCkheCkr+CktuCkuOCljeCkteClgCDgpJ3gpL7gpLLgpYcg4KSu4KWN4KS54KSj4KWB4KSoIOCkpeCkvuCkguCkrOCkviIKKworI34gbXNnaWQgImNhbm5vdCByZW1vdmUgZmlsZSBgJS4yNTBzJyIKKyN+IG1zZ3N0ciAiYCUuMjUwcycg4KSr4KS+4KSH4KSyIOCkleCkvuCkouCko+ClhyDgpIXgpLbgpJXgpY3gpK8iCisKKyN+IG1zZ2lkICIiCisjfiAiXG4iCisjfiAiQ29weXJpZ2h0IChDKSAyMDAwIFdpY2hlcnQgQWtrZXJtYW4uIgorI34gbXNnc3RyICIiCisjfiAiXG4iCisjfiAi4KS44KSw4KWN4KS14KS+4KSn4KS/4KSV4KS+4KSwIChDKSDgpajgpabgpabgpaYg4KS14KS/4KSa4KSw4KWN4KSfIOCkheClheCkleCljeCkleClh+CksOCkruCkqC4iCisKKyN+IG1zZ2lkICJubyBtb2RlIHNwZWNpZmllZCIKKyN+IG1zZ3N0ciAi4KSV4KWL4KSj4KSk4KWA4KS54KWAIOCkquCkpuCljeCkp+CkpCDgpKjgpL/gpLDgpY3gpKfgpL7gpLDgpYDgpKQg4KSV4KWH4KSy4KWH4KSy4KWAIOCkqOCkvuCkueClgCIKKworI34gbXNnaWQgImlsbGVnYWwgdXNlciAlcyIKKyN+IG1zZ3N0ciAi4KSs4KWH4KSV4KS+4KSv4KSm4KWH4KS24KWA4KSwIOCkteCkvuCkquCksOCkleCksOCljeCkpOCkviAlcyIKKworI34gbXNnaWQgIm5vbi1leGlzdGluZyB1c2VyICVzIgorI34gbXNnc3RyICLgpIXgpLjgpY3gpKTgpL/gpKTgpY3gpLXgpLngpYDgpKgg4KS14KS+4KSq4KSw4KSV4KSw4KWN4KSk4KS+ICVzIgorCisjfiBtc2dpZCAiaWxsZWdhbCBncm91cCAlcyIKKyN+IG1zZ3N0ciAi4KSs4KWH4KSV4KS+4KSv4KSm4KWH4KS24KWA4KSwIOCkuOCkruClguCkuSAlcyIKKworI34gbXNnaWQgIm5vbi1leGlzdGluZyBncm91cCAlcyIKKyN+IG1zZ3N0ciAi4KSF4KS44KWN4KSk4KS/4KSk4KWN4KS14KS54KWA4KSoIOCkuOCkruClguCkuSAlcyIKKworI34gbXNnaWQgImlsbGVnYWwgbW9kZSAlcyIKKyN+IG1zZ3N0ciAi4KSs4KWH4KSV4KS+4KSv4KSm4KWH4KS24KWA4KSwIOCkquCkpuCljeCkp+CkpCAlcyIKKworI34gbXNnaWQgImFib3J0aW5nIgorI34gbXNnc3RyICLgpLjgpILgpKrgpLXgpKQg4KSG4KS54KWHIgorCisjfiBtc2dpZCAiY2Fubm90IG9wZW4gc3RhdG92ZXJyaWRlOiAlcyIKKyN+IG1zZ3N0ciAi4KS44KWN4KSf4KWF4KSf4KSF4KWL4KS14KWN4KS54KSw4KSw4KS+4KSH4KShOiAlcyDgpIngpJjgpKHgpKTgpL4g4KSv4KWH4KSkIOCkqOCkvuCkueClgCIKKworI34gbXNnaWQgIk11bHRpcGxlIG92ZXJyaWRlcyBmb3IgXCIlc1wiLCBhYm9ydGluZyIKKyN+IG1zZ3N0ciAiXCIlc1wiIOCkuOCkvuCkoOClgCDgpIXgpKjgpYfgpJUg4KSF4KWL4KS14KWN4KS54KSw4KSw4KS+4KSH4KSh4KS44KWNLCDgpLjgpILgpKrgpLXgpKQg4KSG4KS54KWHIgorCisjfiBtc2dpZCAiZmFpbGVkIHdyaXRlIGR1cmluZyBoYXNocmVwb3J0IgorI34gbXNnc3RyICLgpLngpYXgpLbgpLDgpL/gpKrgpYvgpLDgpY3gpJ8g4KSm4KSw4KSu4KWN4KSv4KS+4KSoIOCksuClh+CkluCkqCDgpLngpYvgpIkg4KS24KSV4KSy4KWHIOCkqOCkvuCkueClgCIKKworI34gbXNnaWQgImNvbmZpZ3VyYXRpb24gZXJyb3I6IHVua25vd24gb3B0aW9uICVzIgorI34gbXNnc3RyICLgpLjgpILgpLDgpJrgpKjgpL4g4KSk4KWN4KSw4KWB4KSf4KWAOiDgpIXgpKrgpLDgpL/gpJrgpL/gpKQg4KSq4KSw4KWN4KSv4KS+4KSvICVzIgorCisjfiBtc2dpZCAiY29uZmlndXJhdGlvbiBlcnJvcjogJXMgZG9lcyBub3QgdGFrZSBhIHZhbHVlIgorI34gbXNnc3RyICLgpLjgpILgpLDgpJrgpKjgpL4g4KSk4KWN4KSw4KWB4KSf4KWAOiAlcyDgpK7gpYLgpLLgpY3gpK8g4KSn4KS+4KSw4KSjIOCkleCksOCkpCDgpKjgpL7gpLngpYAiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAidW5leGVjcHRlZCBlbmQgb2YgbGluZSBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKKyN+IG1zZ3N0ciAiJWQg4KST4KSz4KWA4KS14KSwIOCkquClheCkleClh+CknOCkmuCljeCkr+CkviDgpKjgpL7gpLXgpL7gpK7gpKfgpY3gpK/gpYcg4KSF4KSo4KSq4KWH4KSV4KWN4KS34KS/4KSkIOCkieCkpuCljeCkreCkteCksuClh+CksuCkviDgpJPgpLPgpYDgpJrgpL4g4KS24KWH4KS14KSfL+Ckj+Cko+CljeCkoSDgpJHgpKsg4KSy4KS+4KSH4KSoIgorCisjLCBmdXp6eQorI34gbXNnaWQgIi0tY2hlY2stc3VwcG9ydGVkIHRha2VzIG5vIGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiLS0lcyDgpKrgpLDgpY3gpK/gpL7gpK8g4KSY4KWH4KSkIOCkqOCkvuCkueClgCIKKworI34gbXNnaWQgIi0tZm9yZ2V0LW9sZC11bmF2YWlsIHRha2VzIG5vIGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiLS3gpKvgpLDgpJfgpYfgpJ8t4KST4KSy4KWN4KShLeCkheCkqOCkheCkteCljeCkueClh+CksiDgpIbgpLDgpY3gpJfgpY3gpK/gpYHgpK7gpYfgpKjgpY3gpJ/gpLjgpY0v4KSq4KSw4KWN4KSv4KS+4KSvIOCkmOClh+CkpCDgpKjgpL7gpLngpYAuIgorCisjfiBtc2dpZCAiIgorI34gIlxuIgorI34gIkNvcHlyaWdodCAoQykgMTk5NCwxOTk1IElhbiBKYWNrc29uLiIKKyN+IG1zZ3N0ciAiIgorI34gIlxuIgorI34gIuCkuOCksOCljeCkteCkvuCkp+Ckv+CkleCkvuCksCAoQykg4KWn4KWv4KWv4KWqLOClp+Clr+Clr+ClqyDgpIbgpK/gpKgg4KSc4KWF4KSV4KS44KSoLiIKKworI34gbXNnaWQgIiIKKyN+ICJVc2FnZTogJXMgWzxvcHRpb25zPiAuLi5dIFstLV0gPGZpbGVuYW1lPlxuIgorI34gIlxuIgorI34gIk9wdGlvbnM6XG4iCisjfiAiICAtLXNlY3Rpb24gPHJlZ2V4cD4gPHRpdGxlPlxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHB1dCB0aGUgbmV3IGVudHJ5IGluIHRoZSA8cmVnZXg+IG1hdGNoZWQgIgorI34gInNlY3Rpb25cbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICBvciBjcmVhdGUgYSBuZXcgb25lIHdpdGggPHRpdGxlPiBpZiBub24tIgorI34gImV4aXN0ZW50LlxuIgorI34gIiAgLS1tZW51ZW50cnk9PHRleHQ+ICAgICAgIHNldCB0aGUgbWVudSBlbnRyeS5cbiIKKyN+ICIgIC0tZGVzY3JpcHRpb249PHRleHQ+ICAgICBzZXQgdGhlIGRlc2NyaXB0aW9uIHRvIGJlIHVzZWQgaW4gdGhlIG1lbnUgIgorI34gImVudHJ5LlxuIgorI34gIiAgLS1pbmZvLWZpbGU9PHBhdGg+ICAgICAgIHNwZWNpZnkgaW5mbyBmaWxlIHRvIGluc3RhbGwgaW4gdGhlICIKKyN+ICJkaXJlY3RvcnkuXG4iCisjfiAiICAtLWRpci1maWxlPTxwYXRoPiAgICAgICAgc3BlY2lmeSBmaWxlIG5hbWUgb2YgaW5mbyBkaXJlY3RvcnkgZmlsZS5cbiIKKyN+ICIgIC0taW5mb2Rpcj08ZGlyZWN0b3J5PiAgICBzYW1lIGFzICctLWRpci1maWxlPTxkaXJlY3Rvcnk+L2RpcicuXG4iCisjfiAiICAtLWluZm8tZGlyPTxkaXJlY3Rvcnk+ICAgbGlrZXdpc2UuXG4iCisjfiAiICAtLWtlZXAtb2xkICAgICAgICAgICAgICAgZG8gbm90IHJlcGxhY2UgZW50cmllcyBub3IgcmVtb3ZlIGVtcHR5IG9uZXMuXG4iCisjfiAiICAtLXJlbW92ZSAgICAgICAgICAgICAgICAgcmVtb3ZlIHRoZSBlbnRyeSBzcGVjaWZpZWQgYnkgPGZpbGVuYW1lPiAiCisjfiAiYmFzZW5hbWUuXG4iCisjfiAiICAtLXJlbW92ZS1leGFjdGx5ICAgICAgICAgcmVtb3ZlIHRoZSBleGFjdCA8ZmlsZW5hbWU+IGVudHJ5LlxuIgorI34gIiAgLS10ZXN0ICAgICAgICAgICAgICAgICAgIGVuYWJsZXMgdGVzdCBtb2RlIChubyBhY3Rpb25zIHRha2VuKS5cbiIKKyN+ICIgIC0tZGVidWcgICAgICAgICAgICAgICAgICBlbmFibGVzIGRlYnVnIG1vZGUgKHNob3cgbW9yZSBpbmZvcm1hdGlvbikuXG4iCisjfiAiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgZG8gbm90IHNob3cgb3V0cHV0IG1lc3NhZ2VzLlxuIgorI34gIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisjfiAiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIuCksOClgOCkpDogJXMgWzzgpKrgpLDgpY3gpK/gpL7gpK8+IC4uLl0gWy0tXSA84KSr4KS+4KSH4KSy4KSo4KS+4KS1PlxuIgorI34gIlxuIgorI34gIuCkquCksOCljeCkr+CkvuCkrzpcbiIKKyN+ICIgIC0t4KS14KS/4KSt4KS+4KSXIDzgpLDgpJzgpL/gpI/gpJXgpY3gpLjgpKo+IDzgpLbgpYDgpLDgpY3gpLfgpJU+XG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgIDzgpLDgpJzgpL/gpI/gpJXgpY3gpLg+IOCknOClgeCks+CkteCksuClh+CksuCljeCkr+CkviDgpLXgpL/gpK3gpL7gpJfgpL7gpKQg4KSo4KS14KWA4KSoIOCkqOCli+CkguCkpiDgpKDgpYfgpLXgpL5cbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgIOCkleCkv+CkguCkteCkviDgpIXgpLjgpY3gpKTgpL/gpKTgpY3gpLXgpL7gpKQg4KSo4KS44KSy4KWN4KSv4KS+4KS4IDzgpLbgpYDgpLDgpY3gpLfgpJU+IOCkuOCkuSDgpKjgpLXgpYDgpKgg4KSo4KWL4KSC4KSmIOCkrOCkqOCkteCkvi5cbiIKKyN+ICIgIC0t4KSu4KWH4KSo4KWN4KSv4KWC4KSo4KWL4KSC4KSmPTzgpK7gpJzgpJXgpYLgpLA+ICAgICAgIOCkruClh+CkqOCljeCkr+ClguCkmuClgCDgpKjgpYvgpILgpKYg4KSo4KS/4KS24KWN4KSa4KS/4KSkIOCkleCksOCkvi5cbiIKKyN+ICIgIC0t4KS14KSw4KWN4KSj4KSoPTzgpK7gpJzgpJXgpYLgpLA+ICAgICDgpK7gpYfgpKjgpY3gpK/gpYIg4KSo4KWL4KSC4KSm4KWA4KSu4KSn4KWHIOCkteCkvuCkquCksOCko+CljeCkr+CkvuCkmuClhyDgpLXgpLDgpY3gpKPgpKgg4KSo4KS/4KS24KWN4KSa4KS/4KSkIOCkleCksOCkvi5cbiIKKyN+ICIgIC0t4KSu4KS+4KS54KS/4KSk4KWALeCkq+CkvuCkh+Cksj084KSu4KS+4KSw4KWN4KSXPiAgICAgICDgpKjgpL/gpLDgpY3gpKbgpYfgpLbgpL/gpJXgpYfgpKQg4KSF4KSn4KS/4KS34KWN4KSg4KS+4KSq4KSoIOCkleCksOCko+CljeCkr+CkvuCkmuClgCDgpK7gpL7gpLngpL/gpKTgpYAg4KSr4KS+4KSH4KSyICIKKyN+ICLgpKjgpL/gpLDgpY3gpKfgpL7gpLDgpYDgpKQg4KSV4KSw4KS+LlxuIgorI34gIiAgLS3gpKjgpL/gpLDgpY3gpKbgpYfgpLbgpL/gpJXgpL4t4KSr4KS+4KSH4KSyPTzgpK7gpL7gpLDgpY3gpJc+ICAgICAgIOCkruCkvuCkueCkv+CkpOClgCDgpKjgpL/gpLDgpY3gpKbgpYfgpLbgpL/gpJXgpL4g4KSr4KS+4KSH4KSy4KSa4KWHIOCkqOCkvuCktSDgpKjgpL/gpLDgpY3gpKfgpL7gpLDgpYDgpKQg4KSV4KSw4KS+LlxuIgorI34gIiAgLS3gpK7gpL7gpLngpL/gpKTgpYDgpKjgpL/gpLDgpY3gpKbgpYfgpLbgpL/gpJXgpL49POCkqOCkv+CksOCljeCkpuClh+CktuCkv+CkleCkvj4gICAgJy0t4KSo4KS/4KSw4KWN4KSm4KWH4KS24KS/4KSV4KS+LeCkq+CkvuCkh+Cksj084KSo4KS/4KSw4KWN4KSm4KWH4KS24KS/4KSV4KS+Pi/gpKjgpL/gpLDgpY3gpKbgpYfgpLbgpL/gpJXgpL4nICIKKyN+ICLgpLjgpL7gpLDgpJbgpYfgpJouXG4iCisjfiAiICAtLeCkruCkvuCkueCkv+CkpOClgC3gpKjgpL/gpLDgpY3gpKbgpYfgpLbgpL/gpJXgpL49POCkqOCkv+CksOCljeCkpuClh+CktuCkv+CkleCkvj4gICDgpLXgpLDgpYDgpLLgpKrgpY3gpLDgpK7gpL7gpKPgpYcuXG4iCisjfiAiICAtLeCkoOClh+CkteCkvi3gpJzgpYHgpKjgpYcgICAgICAgICAgICAgICDgpKjgpYvgpILgpKbgpYAg4KSs4KSm4KSy4KWCIOCkqOCkleCkviDgpJXgpL/gpILgpLXgpL4g4KSw4KS/4KSV4KS+4KSu4KWN4KSv4KS+IOCkqOCli+CkguCkpuClgCDgpJXgpL7gpKLgpYLgpKgg4KSf4KS+4KSV4KWCIOCkqOCkleCkvi5cbiIKKyN+ICIgIC0t4KSV4KS+4KSi4KS+ICAgICAgICAgICAgICAgICAgPOCkq+CkvuCkh+CksuCkqOCkvuCktT4g4KSq4KS+4KSv4KS+IOCkqOCkvuCkteCkvuCkqOClhyDgpKjgpL/gpLDgpY3gpKfgpL7gpLDgpYDgpKQg4KSV4KWH4KSy4KWH4KSy4KWAIOCkqOCli+CkguCkpiDgpJXgpL7gpKLgpYLgpKggIgorI34gIuCkn+CkvuCkleCkvi5cbiIKKyN+ICIgIC0t4KSV4KS+4KSi4KS+LeCkteCkv+Ckt+Ckv+Ckt+CljeCkoCAgICAgICAgIOCkteCkv+Ckt+Ckv+Ckt+CljeCkoCA84KSr4KS+4KSH4KSy4KSo4KS+4KS1PiDgpKjgpYvgpILgpKYg4KSV4KS+4KSi4KWC4KSoIOCkn+CkvuCkleCkvi5cbiIKKyN+ICIgIC0t4KSa4KS+4KSa4KSj4KWAICAgICAgICAgICAgICAgICAgIOCkmuCkvuCkmuCko+ClgCDgpKrgpKbgpY3gpKfgpKQg4KSV4KS+4KSw4KWN4KSv4KS44KSV4KWN4KS34KSuIOCkleCksOCkpOCliyAo4KSV4KS+4KS54KWA4KS54KWAIOCkleCljeCksOCkv+Ckr+CkviAiCisjfiAi4KSo4KS+4KS54KWA4KSkKS5cbiIKKyN+ICIgIC0t4KSm4KWL4KS34KSu4KS+4KSw4KWN4KSc4KSoICAgICAgICAgICAgICAgICDgpKbgpYvgpLfgpK7gpL7gpLDgpY3gpJzgpKgg4KSq4KSm4KWN4KSn4KSkIOCkleCkvuCksOCljeCkr+CkuOCkleCljeCkt+CkriDgpJXgpLDgpKTgpYsgKOCkhuCko+CkluClgCDgpK7gpL7gpLngpL/gpKTgpYAgIgorI34gIuCkpuCkvuCkluCkteCkvikuXG4iCisjfiAiICAtLeCktuCkvuCkguCkpCAgICAgICAgICAgICAgICAgIOCkqOCkv+CksOCljeCkl+CkriDgpLjgpILgpKbgpYfgpLYg4KSm4KS+4KSW4KS14KWCIOCkqOCkleCkvi5cbiIKKyN+ICIgICAtLeCkruCkpuCkpCAgICAgICAgICAgICAgICAgICDgpLngpL4g4KSu4KSm4KSk4KWA4KSa4KS+IOCkuOCkguCkpuClh+CktiDgpKbgpL7gpJbgpLXgpL4uXG4iCisjfiAiICAtLeCkhuCkteClg+CkpOCljeCkpOClgCAgICAgICAgICAgICAgICDgpIbgpLXgpYPgpKTgpY3gpKTgpYDgpJrgpYAg4KSu4KS+4KS54KS/4KSk4KWAIOCkpuCkvuCkluCkteCkvi5cbiIKKworI34gbXNnaWQgImNvdWxkIG5vdCBvcGVuIHN0ZGVyciBmb3Igb3V0cHV0ISAlcyIKKyN+IG1zZ3N0ciAi4KSo4KS/4KSw4KWN4KSX4KSuICVzIOCkuOCkvuCkoOClgCDgpLjgpY3gpJ/gpYXgpKHgpI/gpLDgpLDgpY0g4KSJ4KSY4KSh4KSk4KS+IOCkhuCksuClhyDgpKjgpL7gpLngpYAhIgorCisjfiBtc2dpZCAiJXM6IC0tc2VjdGlvbiBuZWVkcyB0d28gbW9yZSBhcmdzIgorI34gbXNnc3RyICIlczogLS0g4KS14KS/4KSt4KS+4KSX4KS+4KS44KS+4KSg4KWAIOCkheCknOClguCkqCDgpKbgpYvgpKgg4KSq4KSw4KWN4KSv4KS+4KSvIOCkhuCkteCktuCkr+CklSIKKworI34gbXNnaWQgIiVzOiBvcHRpb24gLS0lcyBpcyBkZXByZWNhdGVkIChpZ25vcmVkKSIKKyN+IG1zZ3N0ciAiJXM6ICDgpKrgpLDgpY3gpK/gpL7gpK8gLS0lcyDgpIXgpLjgpY3gpLXgpL/gpJXgpYPgpKQg4KSd4KS+4KSy4KWH4KSy4KS+IOCkhuCkueClhyAo4KSm4KWB4KSw4KWN4KSy4KSV4KWN4KS34KS/4KSy4KS+KSIKKworI34gbXNnaWQgIiVzOiB1bmtub3duIG9wdGlvbiBgJXMnIgorI34gbXNnc3RyICIlczog4KSF4KSq4KSw4KS/4KSa4KS/4KSkIOCkquCksOCljeCkr+CkvuCkryBgJXMnIgorCisjfiBtc2dpZCAiJXM6IHRvbyBtYW55IGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiJXM6IOCkluClgeCkquCkmiDgpJzgpL7gpLjgpY3gpKQg4KSq4KSw4KWN4KSv4KS+4KSvIgorCisjfiBtc2dpZCAiJXM6IC0tc2VjdGlvbiBpZ25vcmVkIHdpdGggLS1yZW1vdmUiCisjfiBtc2dzdHIgIiVzOiAtLeCkleCkvuCkouCkviDgpLjgpLkgLS3gpLXgpL/gpK3gpL7gpJcg4KSm4KWB4KSw4KWN4KSy4KSV4KWN4KS34KS/4KSy4KS+IgorCisjfiBtc2dpZCAiJXM6IC0tZGVzY3JpcHRpb24gaWdub3JlZCB3aXRoIC0tcmVtb3ZlIgorI34gbXNnc3RyICIlczogLS3gpJXgpL7gpKLgpL4g4KS44KS5IC0t4KS14KSw4KWN4KSj4KSoIOCkpuClgeCksOCljeCksuCkleCljeCkt+Ckv+CksuCkviIKKworI34gbXNnaWQgIiVzOiB0ZXN0IG1vZGUgLSBkaXIgZmlsZSB3aWxsIG5vdCBiZSB1cGRhdGVkIgorI34gbXNnc3RyICIlczog4KSa4KS+4KSa4KSj4KWAIOCkquCkpuCljeCkp+CkpCAtIOCkqOCkv+CksOCljeCkpuClh+CktuCkv+CkleCkviDgpKvgpL7gpIfgpLIg4KS44KWB4KSn4KS+4KSw4KS/4KSkIOCkleClh+CksuClgCDgpJzgpL7gpKPgpL7gpLAg4KSo4KS+4KS54KWAIgorCisjfiBtc2dpZCAiJXM6IHdhcm5pbmcsIGlnbm9yaW5nIGNvbmZ1c2luZyBJTkZPLURJUi1FTlRSWSBpbiBmaWxlLiIKKyN+IG1zZ3N0ciAiIgorI34gIiVzOiDgpKfgpYvgpJXgpY3gpK/gpL7gpJrgpYAg4KS44KWC4KSa4KSo4KS+LCDgpKvgpL7gpIfgpLLgpK7gpKfgpYDgpLIg4KSX4KWL4KSC4KSn4KSz4KS+4KSkIOCkn+CkvuCkleCko+CkvuCksOClgCDgpK7gpL7gpLngpL/gpKTgpYAt4KSo4KS/4KSw4KWN4KSm4KWH4KS24KS/4KSV4KS+LeCkqOCli+CkguCkpiDgpKbgpYHgpLDgpY3gpLLgpJXgpY3gpLfgpL/gpKQg4KSV4KWH4KSy4KWAICIKKyN+ICLgpJzgpL7gpKQg4KSG4KS54KWHLiIKKworI34gbXNnaWQgImludmFsaWQgaW5mbyBlbnRyeSIKKyN+IG1zZ3N0ciAi4KS44KSm4KWL4KS3IOCkruCkvuCkueCkv+CkpOClgCDgpKjgpYvgpILgpKYiCisKKyN+IG1zZ2lkICIiCisjfiAiXG4iCisjfiAiTm8gYFNUQVJULUlORk8tRElSLUVOVFJZJyBhbmQgbm8gYFRoaXMgZmlsZSBkb2N1bWVudHMnLlxuIgorI34gIiVzOiB1bmFibGUgdG8gZGV0ZXJtaW5lIGRlc2NyaXB0aW9uIGZvciBgZGlyJyBlbnRyeSAtIGdpdmluZyB1cFxuIgorI34gbXNnc3RyICIiCisjfiAiXG4iCisjfiAiYOCkuOClgeCksOClgi3gpK7gpL7gpLngpL/gpKTgpYAt4KSo4KS/4KSw4KWN4KSm4KWH4KS24KS/4KSV4KS+LeCkqOCli+CkguCkpicg4KSo4KS+4KS54KWAIOCkhuCko+ClgCBg4KSv4KS+IOCkq+CkvuCkr+CksuClgOCkpCDgpKbgpLjgpY3gpKTgpL7gpLXgpYfgpJwnIOCkqOCkvuCkueClgC5cbiIKKyN+ICIlczogYOCkqOCkv+CksOCljeCkpuClh+CktuCkv+CkleCkvicg4KSo4KWL4KSC4KSm4KWA4KS44KS+4KSg4KWAIOCkteCkv+CkteCksOCkoyDgpKDgpLDgpLXgpKTgpL4g4KSv4KWH4KSkIOCkqOCkvuCkueClgCAgLSDgpLjgpYvgpKHgpYLgpKgg4KSm4KWH4KSkIOCkhuCkueClh1xuIgorCisjfiBtc2dpZCAiJXM6IG5vIGZpbGUgJXMsIHJldHJpZXZpbmcgYmFja3VwIGZpbGUgJXMuIgorI34gbXNnc3RyICIlczogJXMg4KSr4KS+4KSH4KSyIOCkqOCkvuCkueClgCwg4KSs4KWF4KSV4KSF4KSqIOCkq+CkvuCkh+CksiDgpKrgpLDgpKQg4KSu4KS/4KSz4KS14KSkIOCkhuCkueClhyAlcy4iCisKKyN+IG1zZ2lkICIlczogbm8gYmFja3VwIGZpbGUgJXMgYXZhaWxhYmxlLCByZXRyaWV2aW5nIGRlZmF1bHQgZmlsZS4iCisjfiBtc2dzdHIgIiVzOiDgpKzgpYXgpJXgpIXgpKog4KSr4KS+4KSH4KSyICVzIOCkieCkquCksuCkrOCljeCkpyDgpKjgpL7gpLngpYAsIOCkoeCkv+Ckq+ClieCksuCljeCknyDgpKvgpL7gpIfgpLIg4KSq4KSw4KSkIOCkruCkv+Cks+CkteCkpCDgpIbgpLngpYcuIgorCisjfiBtc2dpZCAiJXM6IG5vIGJhY2t1cCBmaWxlICVzIGF2YWlsYWJsZS4iCisjfiBtc2dzdHIgIiVzOiDgpKzgpYXgpJXgpIXgpKog4KSr4KS+4KSH4KSyICVzIOCkieCkquCksuCkrOCljeCkpyDgpKjgpL7gpLngpYAuIgorCisjfiBtc2dpZCAiJXM6IG5vIGRlZmF1bHQgZmlsZSAlcyBhdmFpbGFibGUsIGdpdmluZyB1cC4iCisjfiBtc2dzdHIgIiVzOiDgpKHgpL/gpKvgpYngpLLgpY3gpJ8g4KSr4KS+4KSH4KSyICVzIOCkieCkquCksuCkrOCljeCkpyDgpKjgpL7gpLngpYAsIOCkuOCli+CkoeClguCkqCDgpKbgpYfgpKQg4KSG4KS54KWHLiIKKworI34gbXNnaWQgIiVzOiBmYWlsZWQgdG8gbG9jayBkaXIgZm9yIGVkaXRpbmchICVzIgorI34gbXNnc3RyICIlczog4KSh4KS/4KSG4KSv4KSG4KSwIOCksuCkviDgpLjgpILgpKrgpL7gpKbgpKjgpL7gpLjgpL7gpKDgpYAg4KSf4KS+4KSz4KWHIOCksuCkvuCkteCkpOCkviDgpIbgpLLgpYcg4KSo4KS+4KS54KWAISAlcyIKKworI34gbXNnaWQgInRyeSBkZWxldGluZyAlcz8iCisjfiBtc2dzdHIgIiVzIOCkleCkvuCkouClguCkqCDgpJ/gpL7gpJXgpYLgpKgg4KSq4KS54KS+PyIKKworI34gbXNnaWQgInVuYWJsZSB0byBvcGVuICVzOiAlcyIKKyN+IG1zZ3N0ciAiJXM6ICVzIOCkieCkmOCkoeCkpOCkviDgpK/gpYfgpKQg4KSo4KS+4KS54KWAIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGNsb3NlICVzIGFmdGVyIHJlYWQ6ICVzIgorI34gbXNnc3RyICI6ICVzIOCkteCkvuCkmuCksuCljeCkr+CkvuCkqOCkguCkpOCksCAlcyDgpKzgpILgpKYg4KSV4KSw4KSk4KS+IOCkr+Clh+CkpCDgpKjgpL7gpLngpYAiCisKKyN+IG1zZ2lkICIlczogZXhpc3RpbmcgZW50cnkgZm9yIGAlcycgbm90IHJlcGxhY2VkIgorI34gbXNnc3RyICIlczogYCVzJyDgpLjgpL7gpKDgpYDgpJrgpYAg4KSF4KS44KWN4KSk4KS/4KSk4KWN4KS14KS+4KSkIOCkheCkuOCksuClh+CksuClgCDgpKjgpYvgpILgpKYg4KSs4KSm4KSy4KSy4KWAIOCkqOCkvuCkueClgCIKKworI34gbXNnaWQgIiVzOiByZXBsYWNpbmcgZXhpc3RpbmcgZGlyIGVudHJ5IGZvciBgJXMnIgorI34gbXNnc3RyICIlczogYCVzJyDgpLjgpL7gpKDgpYDgpJrgpYAg4KSF4KS44KWN4KSk4KS/4KSk4KWN4KS14KS+4KSkIOCkheCkuOCksuClh+CksuClgCDgpKjgpL/gpLDgpY3gpKbgpYfgpLbgpL/gpJXgpL4g4KSo4KWL4KSC4KSmIOCkrOCkpuCksuCkpCDgpIbgpLngpYciCisKKyN+IG1zZ2lkICIlczogY3JlYXRpbmcgbmV3IHNlY3Rpb24gYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IOCkqOCkteClgOCkqCDgpLXgpL/gpK3gpL7gpJcgYCVzJyDgpKzgpKjgpLXgpKQg4KSG4KS54KWHIgorCisjfiBtc2dpZCAiJXM6IG5vIHNlY3Rpb25zIHlldCwgY3JlYXRpbmcgTWlzY2VsbGFuZW91cyBzZWN0aW9uIHRvby4iCisjfiBtc2dzdHIgIiVzOiDgpIXgpJzgpYLgpKgg4KS14KS/4KSt4KS+4KSXIOCkleClh+CksuClhyDgpKjgpL7gpLngpYDgpKQsIOCkteCkv+CkteCkv+CkpyDgpLXgpL/gpK3gpL7gpJcg4KS44KWB4KSm4KWN4KSn4KS+IOCkrOCkqOCkteCkpCDgpIbgpLngpYcuIgorCisjfiBtc2dpZCAiJXM6IG5vIHNlY3Rpb24gc3BlY2lmaWVkIGZvciBuZXcgZW50cnksIHBsYWNpbmcgYXQgZW5kIgorI34gbXNnc3RyICIlczog4KSo4KS14KWA4KSoIOCkqOCli+CkguCkpuClgOCkleCksOCkv+CkpOCkviDgpLXgpL/gpK3gpL7gpJcg4KSo4KS/4KSw4KWN4KSn4KS+4KSw4KWA4KSkIOCkleClh+CksuClh+CksuCkviDgpKjgpL7gpLngpYAsIOCktuClh+CkteCkn+ClgCDgpKDgpYfgpLXgpKQg4KSG4KS54KWHIgorCisjfiBtc2dpZCAiJXM6IGRlbGV0aW5nIGVudHJ5IGAlcyAuLi4nIgorI34gbXNnc3RyICIlczogYCVzIC4uLicg4KSo4KWL4KSC4KSmIOCkleCkvuCkouClguCkqCDgpJ/gpL7gpJXgpKQg4KSG4KS54KWHIgorCisjfiBtc2dpZCAiJXM6IGVtcHR5IHNlY3Rpb24gYCVzJyBub3QgcmVtb3ZlZCIKKyN+IG1zZ3N0ciAiJXM6IOCksOCkv+CkleCkvuCkruCkviDgpLXgpL/gpK3gpL7gpJcgYCVzJyDgpJXgpL7gpKLgpYLgpKgg4KSf4KS+4KSV4KSy4KS+IOCkqOCkvuCkueClgCIKKworI34gbXNnaWQgIiVzOiBkZWxldGluZyBlbXB0eSBzZWN0aW9uIGAlcyciCisjfiBtc2dzdHIgIiVzOiDgpLDgpL/gpJXgpL7gpK7gpL4g4KS14KS/4KSt4KS+4KSXIGAlcycg4KSV4KS+4KSi4KWC4KSoIOCkn+CkvuCkleCksuCkviIKKworI34gbXNnaWQgIiVzOiBubyBlbnRyeSBmb3IgZmlsZSBgJXMnIGFuZCBtZW51IGVudHJ5IGAlcyciCisjfiBtc2dzdHIgIiVzOiDgpKvgpL7gpIfgpLIgYCVzJyDgpLjgpL7gpKDgpYAg4KSo4KWL4KSC4KSmIOCkqOCkvuCkueClgCDgpIbgpKPgpYAg4KSu4KWH4KSo4KWN4KSv4KWCIOCkqOCli+CkguCkpiBgJXMnIgorCisjfiBtc2dpZCAiJXM6IG5vIGVudHJ5IGZvciBmaWxlIGAlcyciCisjfiBtc2dzdHIgIiVzOiDgpKvgpL7gpIfgpLIgYCVzJyDgpLjgpL7gpKDgpYAg4KSo4KWL4KSC4KSmIOCkqOCkvuCkueClgCIKKworI34gbXNnaWQgInVuYWJsZSB0byBiYWNrdXAgb2xkICVzLCBnaXZpbmcgdXA6ICVzIgorI34gbXNnc3RyICLgpJzgpYHgpKjgpYAgJXMg4KSs4KWF4KSVLeCkheCkquCkleCksOCkpOCkviDgpK/gpYfgpKQg4KSo4KS+4KS54KWALCDgpLjgpYvgpKHgpYHgpKgg4KSm4KWH4KSkIOCkhuCkueClhzogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgJXM6ICVzIgorI34gbXNnc3RyICLgpKjgpLXgpYDgpKggJXMg4KSF4KSn4KS/4KS34KWN4KSg4KS+4KSq4KSoIOCkleCksOCkpOCkviDgpK/gpYfgpKQg4KSo4KS+4KS54KWAOiAlcyIKKworI34gbXNnaWQgIiVzOiBjb3VsZCBub3QgYmFja3VwICVzIGluICVzOiAlcyIKKyN+IG1zZ3N0ciAiJXM6ICVzIOCkruCkp+ClgOCksiAlcyDgpLLgpL4g4KSs4KWF4KSV4KSF4KSqIOCkleCksOCkpOCkviDgpIbgpLLgpYcg4KSo4KS+4KS54KWAOiAlcyIKKworI34gbXNnaWQgIiVzOiB3YXJuaW5nIC0gdW5hYmxlIHRvIHVubG9jayAlczogJXMiCisjfiBtc2dzdHIgIiVzOiDgpKfgpYvgpJXgpY3gpK/gpL7gpJrgpYAg4KS44KWB4KSa4KSo4KS+IC0gJXM6ICVzIOCkmuClhyDgpJ/gpL7gpLPgpYcg4KSV4KS+4KSi4KSk4KS+IOCkr+Clh+CkpCDgpKjgpL7gpLngpYAiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcmVhZCAlczogJWQiCisjfiBtc2dzdHIgIiVzIOCkteCkvuCkmuCkpOCkviDgpK/gpYfgpKQg4KSo4KS+4KS54KWAOiAlZCIKKworI34gbXNnaWQgImRiZzogJXMiCisjfiBtc2dzdHIgIuCkoeClgOCkrOClgOCknOClgDogJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gb3BlbiB0bXBmaWxlIChjb250cm9sKSwgJXMiCisjfiBtc2dzdHIgIuCkn+ClgOCkj+CkruCkquClgOCkq+CkvuCkiOCksiAo4KSo4KS/4KSv4KSC4KSk4KWN4KSw4KSjKSwgJXMg4KSJ4KSY4KSh4KSk4KS+IOCkhuCksuClgCDgpKjgpL7gpLngpYAiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gb3BlbiB0bXBmaWxlIChkYXRhKSwgJXMiCisjfiBtc2dzdHIgIuCkn+ClgOCkj+CkruCkquClgOCkq+CkvuCkiOCksiAo4KSh4KWH4KSf4KS+KSwgJXMg4KSJ4KSY4KSh4KSk4KS+IOCkhuCksuClgCDgpKjgpL7gpLngpYAiCisKKyN+IG1zZ2lkICJpbnZhbGlkIG51bWJlciBmb3IgLS1jb21tYW5kLWZkIgorI34gbXNnc3RyICItLeCkleCkruCkvuCkguCkoS3gpI/gpKvgpKHgpL/gpLjgpL7gpKDgpYAg4KSF4KSv4KWL4KSX4KWN4KSvIOCkuOCkguCkluCljeCkr+Ckvi/gpJXgpY3gpLDgpK7gpL7gpILgpJUiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcmV3aW5kIGF0IHN0YXJ0IG9mIHZzbnByaW50ZiIKKyN+IG1zZ3N0ciAi4KS14KWN4KS54KWA4KSP4KS44KSP4KSo4KSq4KWN4KSw4KS/4KSC4KSf4KSP4KWe4KSa4KWN4KSv4KS+IOCkuOClgeCksOClgeCkteCkvuCkpOClgOCksuCkviAo4KSX4KWB4KSC4KSh4KS+4KSz4KSkKSDgpJzgpL7gpKPgpYcg4KSc4KSu4KSkIOCkqOCkvuCkueClgCIKKworI34gbXNnaWQgInVuYWJsZSB0byB0cnVuY2F0ZSBpbiB2c25wcmludGYiCisjfiBtc2dzdHIgIuCkteCljeCkueClgOCkj+CkuOCkj+CkqOCkquCljeCksOCkv+CkguCkn+Ckj+ClnuCkruCkp+ClhyDgpJXgpL7gpJ/gpJvgpL7gpJ8g4KSV4KSw4KSj4KWHIOCknOCkruCkpCDgpKjgpL7gpLngpYAiCisKKyN+IG1zZ2lkICJ3cml0ZSBlcnJvciBpbiB2c25wcmludGYiCisjfiBtc2dzdHIgIuCkteCljeCkueClgOCkj+CkuOCkj+CkqOCkquCljeCksOCkv+CkguCkn+Ckj+ClnuCkruCkp+ClhyDgpLLgpYfgpJbgpKgg4KSk4KWN4KSw4KWB4KSf4KWAIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHN0YXQgaW4gdnNucHJpbnRmIgorI34gbXNnc3RyICLgpLXgpY3gpLngpYDgpI/gpLjgpI/gpKjgpKrgpY3gpLDgpL/gpILgpJ/gpI/gpZ7gpK7gpKfgpYcg4KS44KWB4KSw4KWC4KS14KS+4KSkIOCkleCksOCko+ClhyDgpJzgpK7gpKQg4KSo4KS+4KS54KWAIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHJld2luZCBpbiB2c25wcmludGYiCisjfiBtc2dzdHIgIuCkteCljeCkueClgOCkj+CkuOCkj+CkqOCkquCljeCksOCkv+CkguCkn+Ckj+ClnuCkruCkp+ClhyDgpKrgpYHgpKjgpLDgpY3gpJfgpYHgpILgpKHgpL7gpLPgpKPgpYcgKOCksOCkv+CkteCkvuCkh+CkguCkoSkg4KSc4KSu4KSkIOCkqOCkvuCkueClgCIKKworI34gbXNnaWQgInJlYWQgZXJyb3IgaW4gdnNucHJpbnRmIHRydW5jYXRlZCIKKyN+IG1zZ3N0ciAi4KS14KWN4KS54KWA4KSP4KS44KSP4KSo4KSq4KWN4KSw4KS/4KSC4KSf4KSP4KWe4KSu4KSn4KWA4KSyIOCkteCkvuCkmuCkqCDgpKTgpY3gpLDgpYHgpJ/gpYAg4KSb4KS+4KSf4KSy4KWAIgorCisjfiBtc2dpZCAiU3lzdGVtIGVycm9yIG5vLiVkIgorI34gbXNnc3RyICLgpKrgpY3gpLDgpKPgpL7gpLLgpYAg4KSk4KWN4KSw4KWB4KSf4KWAIOCkleCljeCksC4lZCIKKworI34gbXNnaWQgIlNpZ25hbCBuby4lZCIKKyN+IG1zZ3N0ciAi4KS44KSC4KSV4KWH4KSkIOCkleCljeCksC4lZCIKKworI34gbXNnaWQgImRwa2c6IHdhcm5pbmcgLSAlcyByZXR1cm5lZCBlcnJvciBleGl0IHN0YXR1cyAlZFxuIgorI34gbXNnc3RyICLgpKHgpYDgpKrgpYDgpJXgpYfgpJzgpYDgpIMg4KSn4KWL4KSV4KWN4KSv4KS+4KSa4KWAIOCkuOClguCkmuCkqOCkviAtICVzIOCkleCkoeClgeCkqCDgpKTgpY3gpLDgpYHgpJ/gpYAg4KSo4KS/4KSw4KWN4KSX4KSuIOCkuOCljeCkpeCkv+CkpOClgCAlZFxuIgorCisjfiBtc2dpZCAiZHBrZzogd2FybmluZyAtICVzIGtpbGxlZCBieSBzaWduYWwgKCVzKSVzXG4iCisjfiBtc2dzdHIgIuCkoeClgOCkquClgOCkleClh+CknOClgOCkgyDgpKfgpYvgpJXgpY3gpK/gpL7gpJrgpYAg4KS44KWC4KSa4KSo4KS+IC0gKCVzKSVzIOCkuOCkguCkleClh+CkpOCkvuCkqOClhyAlcyDgpLLgpL4g4KSo4KS34KWN4KSfIOCkleClh+CksuClhyBcbiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJmYWlsZWQgdG8gcmVhZCBgJXMnIGF0IGxpbmUgJWQiCisjfiBtc2dzdHIgIiVkIOCkk+Cks+ClgOCkpOClgOCksiBgJXMnIOCkteCkvuCkmuCkpOCkviDgpIbgpLLgpYcg4KSo4KS+4KS54KWAIgorCisjLCBmdXp6eQorI34gbXNnaWQgInBhcnNlIGVycm9yLCBpbiBmaWxlIGAlLjI1NXMnIG5lYXIgbGluZSAlZCIKKyN+IG1zZ3N0ciAiJXMsIGAlLjI1NXMnIOCkq+CkvuCkr+CksuClgOCkpCAgJWQg4KST4KSz4KWA4KSc4KS14KSzIgorCisjfiBtc2dpZCAiIHBhY2thZ2UgYCUuMjU1cyciCisjfiBtc2dzdHIgIuCkquClheCkleClh+CknCBgJS4yNTVzJyIKKworI34gbXNnaWQgImZhaWxlZCB0byByZWFsbG9jIGZvciB2YXJpYWJsZSBidWZmZXIiCisjfiBtc2dzdHIgIuCkmuCksuCkv+CkpCDgpKzgpKvgpLDgpLjgpL7gpKDgpYAg4KSw4KS/4KSF4KWF4KSy4KWL4KWF4KSVIOCkleCksOCkpOCkviDgpIbgpLLgpYcg4KSo4KS+4KS54KWAIgorCisjfiBtc2dpZCAicHJvY2Vzc19hcmNoaXZlIC4uLiAgYWxyZWFkeSBkaXNhcHBlYXJlZCAhIgorI34gbXNnc3RyICLgpKrgpY3gpLDgpJXgpY3gpLDgpL/gpK/gpL5f4KSG4KSw4KWN4KSV4KS+4KSH4KS1IC4uLiAg4KSG4KSn4KWA4KSaIOCkheCkguCkpOCksOCljeCkp+CkvuCkqCDgpKrgpL7gpLXgpLLgpYAgISIKKworI34gbXNnaWQgImdvYmJsZSByZXBsYWNlZCBmaWxlIGAlLjI1NXMnIgorI34gbXNnc3RyICJgJS4yNTVzJyDgpKvgpL7gpIfgpLIg4KSX4KS+4KWF4KSs4KSyIOCkqOClhyDgpKzgpKbgpLLgpLLgpYAiCisKKyN+IG1zZ2lkICJkcGtnOiAlczogd2FybmluZyAtIGZhaWxlZCB0byByZW1vdmUgYCUuMjUwcyc6ICVzXG4iCisjfiBtc2dzdHIgIuCkoeCkv+CkquCkv+CkleClh+CknOClgDogJXM6IOCkpOCkvuCkleCkv+CkpiAtIGAlLjI1MHMnIOCkleCkvuCkouClguCkqCDgpJ/gpL7gpJXgpKPgpY3gpK/gpL7gpLgg4KSF4KSv4KS24KS44KWN4KS14KWAOiAlc1xuIgorCisjfiBtc2dpZCAiLS1hdWRpdCBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudHMiCisjfiBtc2dzdHIgIi0t4KSR4KSh4KS/4KSfIOCkleCli+Cko+CkpOClh+CkueClgCDgpIbgpLDgpY3gpJfgpY3gpK/gpYHgpK7gpYfgpKPgpY3gpJ/gpY3gpLgg4KSY4KWH4KSkIOCkqOCkvuCkueClgCIKKworI34gbXNnaWQgIi0teWV0LXRvLXVucGFjayBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudHMiCisjfiBtc2dzdHIgIi0t4KSv4KWH4KSfLeCkn+Clgi3gpIXgpKjgpKrgpYXgpJUg4KSV4KWL4KSj4KSk4KWH4KS54KWAIOCkhuCksOCljeCkl+CljeCkr+ClgeCkruClh+Cko+CljeCkn+CljeCkuCDgpJjgpYfgpKQg4KSo4KS+4KS54KWAIgorCisjfiBtc2dpZCAiLS1hc3NlcnQtKiBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudHMiCisjfiBtc2dzdHIgIi0t4KSF4KWF4KS44KSw4KWN4KSfLS0gIOCkleCli+Cko+CkpOClh+CkueClgCDgpIbgpLDgpY3gpJfgpY3gpK/gpYHgpK7gpYfgpKPgpY3gpJ/gpY3gpLgg4KSY4KWH4KSkIOCkqOCkvuCkueClgCIKKworI34gbXNnaWQgIi0tcHJlZGVwLXBhY2thZ2UgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnQiCisjfiBtc2dzdHIgIi0t4KSq4KWN4KSw4KS/4KSh4KWH4KSqLSDgpKrgpYXgpJXgpYfgpJwg4KSV4KWL4KSj4KSk4KWH4KS54KWAIOCkquCksOCljeCkr+CkvuCkryDgpJjgpYfgpKQg4KSo4KS+4KS54KWAIgorCisjfiBtc2dpZCAiLS1wcmludC1hcmNoaXRlY3R1cmUgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnQiCisjfiBtc2dzdHIgIi0t4KSq4KWN4KSw4KS/4KSC4KSfLeCkhuCksOCljeCkleCkv+Ckn+Clh+CkleCljeCkmuCksCDgpJXgpYvgpKPgpKTgpYfgpLngpYAg4KSq4KSw4KWN4KSv4KS+4KSvIOCkmOClh+CkpCDgpKjgpL7gpLngpYAiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gc3RhdCBpbnN0YWxsZWQgJXMgc2NyaXB0IGAlLjI1MHMnIgorI34gbXNnc3RyICLgpLjgpY3gpKXgpL7gpKrgpKgg4KSV4KWH4KSy4KWH4KSy4KWAICVzIHNjcmlwdCBgJS4yNTBzJyDgpLjgpY3gpJ/gpYXgpJ8g4KSV4KSw4KSj4KWN4KSv4KS+4KS4IOCkheCkuOCkruCksOCljeCkpSDgpIbgpLngpYciCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gc3RhdCBuZXcgJXMgc2NyaXB0IGAlLjI1MHMnIgorI34gbXNnc3RyICLgpKjgpLXgpL/gpKggJXMg4KS44KWN4KSV4KWN4KSw4KS/4KSq4KWN4KSfIGAlLjI1MHMg4KS44KWN4KSf4KWF4KSfIOCkleCksOCko+CljeCkr+CkvuCkuCDgpIXgpLjgpK7gpLDgpY3gpKUg4KSG4KS54KWHIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGV4ZWN1dGUgbmV3ICVzIgorI34gbXNnc3RyICLgpKjgpLXgpL/gpKggJXMg4KSF4KSu4KSy4KS+4KSkIOCkhuCko+Cko+CljeCkr+CkvuCkuCDgpIXgpLjgpK7gpLDgpY3gpKUg4KSG4KS54KWHIgorCisjfiBtc2dpZCAiZHBrZzogd2FybmluZyAtIHVuYWJsZSB0byBzdGF0ICVzIGAlLjI1MHMnOiAlc1xuIgorI34gbXNnc3RyICLgpKHgpL/gpKrgpL/gpJXgpYfgpJzgpYA6IOCkpOCkvuCkleCkv+CkpiAtICVzIGAlLjI1MHMnOiAlcyDgpLjgpY3gpJ/gpYXgpJ8g4KSV4KSw4KSj4KWN4KSv4KS+4KS4IOCkheCkuOCkruCksOCljeCkpSDgpIbgpLngpYdcbiIKKworI34gbXNnaWQgIi0tc2V0LXNlbGVjdGlvbnMgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnQiCisjfiBtc2dzdHIgIi0t4KS44KWH4KSfLeCkuOCkv+CksuClh+CkleCljeCktuCkqOCljeCkuC8tLXNldC1zZWxlY3Rpb25zIOCkleCli+Cko+CkpOClh+CkueClgCDgpKrgpLDgpY3gpK/gpL7gpK8g4KSY4KWH4KSkIOCkqOCkvuCkueClgCIKKworI34gbXNnaWQgIi0tY2xlYXItc2VsZWN0aW9ucyBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudCIKKyN+IG1zZ3N0ciAiLS3gpJXgpY3gpLLgpL/gpIXgpLAt4KS44KS/4KSy4KWH4KSV4KWN4KS24KSo4KWN4KS4IOCkleCli+Cko+CkpOClh+CkueCkvyDgpKrgpLDgpY3gpK/gpL7gpK8g4KSY4KWH4KSkIOCkqOCkvuCkueClgCIKKworI34gbXNnaWQgIi0tYnVpbGQgbmVlZHMgYSBkaXJlY3RvcnkgYXJndW1lbnQiCisjfiBtc2dzdHIgIi0t4KSs4KS/4KSy4KWN4KShIOCkuOCkvuCkoOClgCDgpKHgpL/gpLDgpYfgpJXgpY3gpJ/gpLDgpYAg4KSG4KSw4KWN4KSX4KWN4KSv4KWB4KSu4KWH4KSo4KWN4KSfL+CkquCksOCljeCkr+CkvuCkryDgpJzgpLDgpYHgpLDgpYAg4KSG4KS54KWHIgorCisjfiBtc2dpZCAiIgorI34gImRwa2ctZGViOiB3YXJuaW5nLCBub3QgY2hlY2tpbmcgY29udGVudHMgb2YgY29udHJvbCBhcmVhLlxuIgorI34gImRwa2ctZGViOiBidWlsZGluZyBhbiB1bmtub3duIHBhY2thZ2UgaW4gYCVzJy5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIuCkoeCkv+CkquCkv+CkleClh+CknOCkvy3gpKHgpYfgpKw6IOCkpOCkvuCkleCkv+Ckpiwg4KSo4KS/4KSv4KSC4KSk4KWN4KSw4KSjIOCkleCljeCkt+Clh+CkpOCljeCksOCkvuCkruCkp+CljeCkr+ClhyDgpLjgpK7gpL7gpLXgpL/gpLfgpY3gpJ8g4KSF4KS44KSy4KWH4KSy4KWN4KSv4KS+IOCkl+Cli+Ckt+CljeCkn+ClgCDgpKTgpKrgpLjgpKQg4KSo4KS+4KS54KWALlxuIgorI34gIuCkoeCkv+CkquCkv+CkleClh+CknOCkvy3gpKHgpYfgpKw6IGAlcycg4KSu4KSn4KWN4KSv4KWHIOCkheCkqOCli+Cks+CkluClgCDgpKrgpYXgpJXgpYfgpJwg4KSs4KSo4KS14KSy4KWHIOCknOCkvuCkpCDgpIbgpLngpYcuXG4iCisKKyN+IG1zZ2lkICJJbnRlcm5hbCBlcnJvciwgY29tcHJlc3NfdHlwZSBgJWknIHVua25vd24hIgorI34gbXNnc3RyICLgpIbgpILgpKTgpLDgpL/gpJUg4KSk4KWN4KSw4KWB4KSf4KWALCDgpLjgpILgpJXgpYvgpJpf4KSq4KWN4KSw4KSV4KS+4KSwIGAlaScg4KSF4KSq4KSw4KS/4KSa4KWA4KSkISIKKworI34gbXNnaWQgIi0tam9pbiByZXF1aXJlcyBvbmUgb3IgbW9yZSBwYXJ0IGZpbGUgYXJndW1lbnRzIgorI34gbXNnc3RyICItLeCknOCli+CkoeCkviDgpLjgpL7gpKDgpYAg4KSP4KSVIOCkheCkpeCkteCkviDgpIXgpKjgpYfgpJUg4KSt4KS+4KSXIOCkq+CkvuCkh+CksiDgpKrgpLDgpY3gpK/gpL7gpK8g4KSG4KS14KS24KWN4KSv4KSVIOCkhuCkueClh+CkpCIKKworI34gbXNnaWQgIi0tbGlzdHEgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnRzIgorI34gbXNnc3RyICItLeCksuCkv+CkuOCljeCkn+CkleCljeCkr+ClgiDgpJXgpYvgpKPgpKTgpL7gpJog4KSq4KSw4KWN4KSv4KS+4KSvIOCkmOClh+CkpCDgpKjgpL7gpLngpYAiCisKKyN+IG1zZ2lkICIiCisjfiAiXG4iCisjfiAiQ29weXJpZ2h0IChDKSAxOTk2IEtpbS1NaW5oIEthcGxhbi4iCisjfiBtc2dzdHIgIiIKKyN+ICJcbiIKKyN+ICLgpLjgpLDgpY3gpLXgpL7gpKfgpL/gpJXgpL7gpLAgKEMpIOClp+Clr+Clr+ClrCDgpJXgpL/gpK4t4KSu4KS/4KSo4KWN4KS5IOCkleCkvuCkquCljeCksuCkvuCkqC4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiIgorI34gIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSBbLS1dIFs8ZGlybmFtZT5dXG4iCisjfiAiXG4iCisjfiAiT3B0aW9uczpcbiIKKyN+ICIgIC0tdW5zYWZlICAgICBzZXQgc29tZSBhZGRpdGlvbmFsIHBvc3NpYmx5IHVzZWZ1bCBvcHRpb25zLlxuIgorI34gIiAgICAgICAgICAgICAgIHdhcm5pbmc6IHRoaXMgb3B0aW9uIG1heSBnYXJibGUgYW4gb3RoZXJ3aXNlIGNvcnJlY3QgIgorI34gImZpbGUuXG4iCisjfiAiICAtLWhlbHAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyN+ICIgIC0tdmVyc2lvbiAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorI34gbXNnc3RyICIiCisjfiAi4KSw4KWA4KSkOiAlcyBbIC4uLl0gWy0tXSBbXVxuIgorI34gIlxuIgorI34gIuCkquCksOCljeCkr+CkvuCkrzpcbiIKKyN+ICIgLS3gpIXgpLjgpYHgpLDgpJXgpY3gpLfgpL/gpKQg4KSV4KS+4KS54KWAIOCkheCkpOCkv+CksOCkv+CkleCljeCkpCDgpJXgpKbgpL7gpJrgpL/gpKQg4KSJ4KSq4KSv4KWL4KSX4KWAIOCkquCksOCljeCkr+CkvuCkryDgpLjgpYfgpJ8g4KSV4KSw4KS+LlxuIgorI34gIiDgpKfgpYvgpJXgpY3gpK/gpL7gpJrgpYAg4KS44KWB4KSa4KSo4KS+OuCkr+CkviDgpKrgpLDgpY3gpK/gpL7gpK/gpL7gpK7gpYHgpLPgpYcg4KSs4KSw4KWL4KSs4KSwIOCkheCkuOCksuClh+CksuCljeCkr+CkviDgpKvgpL7gpIfgpLLgpK7gpKfgpYcg4KSV4KSm4KS+4KSa4KS/4KSkIOCkl+Cli+CkguCkp+CksyDgpLngpYvgpIkg4KS24KSV4KWH4KSyLlxuIgorI34gIiAtLeCkruCkpuCkpCDgpLngpL4g4KSu4KSm4KSk4KWA4KSa4KS+IOCkuOCkguCkpuClh+CktiDgpKbgpL7gpJbgpLXgpL4uXG4iCisjfiAiIC0t4KSG4KS14KWD4KSk4KWN4KSk4KWAIOCkhuCkteClg+CkpOCljeCkpOClgOCkmuClgCDgpK7gpL7gpLngpL/gpKTgpYAg4KSm4KS+4KSW4KS14KS+LlxuIgorCisjfiBtc2dpZCAidHJ5IGRlbGV0aW5nICVzIgorI34gbXNnc3RyICIlcyDgpJXgpL7gpKLgpYLgpKgg4KSf4KS+4KSV4KWC4KSoIOCkquCkueCkviIKKworI34gbXNnaWQgImZhaWxlZCB0byBpbnN0YWxsICVzOyBpdCB3aWxsIGJlIGxlZnQgYXMgJXM6ICVzIgorI34gbXNnc3RyICIlcyDgpIXgpKfgpL/gpLfgpY3gpJ/gpL7gpKrgpL/gpKQg4KSV4KSw4KSk4KS+IOCkhuCksuClhyDgpKjgpL7gpLngpYA7IOCkpOClhyAlczogJXMg4KSu4KWN4KS54KSj4KWC4KSo4KSaIOCksOCkvuCkueClgOCksiIKKworI34gbXNnaWQgIiVzOiB1bmFibGUgdG8gdW5sb2NrICVzOiAlcyIKKyN+IG1zZ3N0ciAiJXM6ICVzOiAlcyDgpJrgpYcg4KSf4KS+4KSz4KWHIOCkleCkvuCkouCkpOCkviDgpK/gpYfgpKQg4KSo4KS+4KS54KWAIgorCisjfiBtc2dpZCAiJXMgLSBzdGF0dXMgaXMgJXMuIgorI34gbXNnc3RyICIlcyAtIOCkuOCkpuCljeCkr+CkuOCljeCkpeCkv+CkpOClgCAlcyDgpIbgpLngpYcuIgorCisjfiBtc2dpZCAiIGxpbmsgdW5yZWFkYWJsZSAtICVzIgorI34gbXNnc3RyICLgpLjgpL7gpJbgpLPgpYAg4KSF4KS14KS+4KSa4KSo4KWA4KSvIC0gJXMiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiIgorI34gIndhcm5pbmc6ICVzIGlzIHN1cHBvc2VkIHRvIGJlIGEgc3ltbGluayB0byAlcywgXG4iCisjfiAib3Igbm9uZXhpc3RlbnQ7IGhvd2V2ZXIsIHJlYWRsaW5rIGZhaWxlZDogJXMiCisjfiBtc2dzdHIgIiIKKyN+ICLgpKfgpYvgpJXgpY3gpK/gpL7gpJrgpYAg4KS44KWC4KSa4KSo4KS+OiAlcyDgpLngpYAgJXMg4KSa4KWAIOCkuOCkv+CkruCksuCkv+CkguCklSDgpIXgpLjgpKPgpYcg4KSF4KSq4KWH4KSV4KWN4KS34KS/4KSkXG4iCisjfiAiICjgpJXgpL/gpILgpLXgpL4g4KSF4KS44KWN4KSk4KS/4KSk4KWN4KS14KS+4KSkIOCkqOCkvuCkueClgCk7IOCkquCksOCkguCkpOClgSwg4KS44KS+4KSW4KSz4KWA4KS14KS+4KSa4KSoIOCkq+CkuOCksuClhzogJXMiCisKKyN+IG1zZ2lkICJMZWF2aW5nICVzICglcykgcG9pbnRpbmcgdG8gJXMuIgorI34gbXNnc3RyICIlcyAoJXMpIOCksuCkviAlcyDgpJXgpKHgpYcg4KSo4KS/4KSw4KWN4KSm4KWH4KS2IOCkleClh+CksuClh+CksuCljeCkr+CkviDgpLjgpY3gpKXgpL/gpKTgpYDgpKQg4KS44KWL4KSh4KSkIOCkhuCkueClhy4iCisKKyN+IG1zZ2lkICJVcGRhdGluZyAlcyAoJXMpIHRvIHBvaW50IHRvICVzLiIKKyN+IG1zZ3N0ciAiJXMgKCVzKSDgpLLgpL4gJXMg4KSV4KSh4KWHIOCkqOCkv+CksOCljeCkpuClh+CktiDgpJXgpLDgpKPgpY3gpK/gpL7gpLjgpL7gpKDgpYAg4KS44KWB4KSn4KS+4KSw4KWA4KSkIOCkleCksOCkpCDgpIbgpLngpYcuIgorCisjfiBtc2dpZCAiUmVtb3ZpbmcgJXMgKCVzKSwgbm90IGFwcHJvcHJpYXRlIHdpdGggJXMuIgorI34gbXNnc3RyICIlcyAoJXMpIOCkleCkvuCkouClguCkqCDgpJ/gpL7gpJXgpKQg4KSG4KS54KWHLCAlcyDgpLbgpYAg4KS44KWB4KS44KSC4KSX4KSkIOCkqOCkvuCkueClgC4iCisKKyN+IG1zZ2lkICIiCisjfiAiQ2hlY2tpbmcgYXZhaWxhYmxlIHZlcnNpb25zIG9mICVzLCB1cGRhdGluZyBsaW5rcyBpbiAlcyAuLi5cbiIKKyN+ICIoWW91IG1heSBtb2RpZnkgdGhlIHN5bWxpbmtzIHRoZXJlIHlvdXJzZWxmIGlmIGRlc2lyZWQgLSBzZWUgYG1hbiBsbicuKSIKKyN+IG1zZ3N0ciAiIgorI34gIiVzIOCkmuCljeCkr+CkviDgpIngpKrgpLLgpKzgpY3gpKcg4KSG4KS14KWD4KSk4KWN4KSk4KWN4KSv4KS+IOCkpOCkquCkvuCkuOCkpCDgpIbgpLngpYcsICVzIC4uLiDgpKTgpYDgpLIg4KS44KS+4KSW4KSz4KWN4KSv4KS+4KSkIOCkuOClgeCkp+CkvuCksOCko+CkviDgpJXgpLDgpKQg4KSG4KS54KWHXG4iCisjfiAiKOCkh+CkmuCljeCkm+CkviDgpIXgpLjgpLLgpY3gpK/gpL7gpLgg4KSk4KWH4KSl4KWA4KSyIOCkuOCkv+CkruCksuCkv+CkguCkleCkuOCljSDgpIbgpKrgpKMg4KS44KWN4KS14KSk4KSDIOCkrOCkpuCksuClgiDgpLbgpJXgpKTgpL4gLSDgpKrgpLngpL4gYOCkruClheCkqCDgpIfgpKgnLikiCisKKyN+IG1zZ2lkICJzbGF2ZSBsaW5rIG5hbWUgJXMgZHVwbGljYXRlZCIKKyN+IG1zZ3N0ciAi4KSX4KWB4KSy4KS+4KSuIOCkuOCkvuCkluCks+ClgCAlcyDgpJrgpY3gpK/gpL4g4KSo4KS+4KS14KS+4KSa4KWAIOCkquClgeCkqOCksOCkvuCkteClg+CkpOCljeCkpOClgCIKKworI34gbXNnaWQgIlJlY292ZXJpbmcgZnJvbSBwcmV2aW91cyBmYWlsZWQgdXBkYXRlIG9mICVzIC4uLiIKKyN+IG1zZ3N0ciAiJXMgLi4uIOCkmuCljeCkr+CkviDgpKrgpYLgpLDgpY3gpLXgpYDgpJrgpY3gpK/gpL4g4KSr4KS44KSy4KWH4KSy4KWN4KSv4KS+IOCkuOClgeCkp+CkvuCksOCko+CkvuCkguCkpOClguCkqCDgpKrgpYLgpLDgpY3gpLXgpLjgpY3gpKXgpL/gpKTgpYDgpLXgpLAg4KSv4KWH4KSkIOCkhuCkueClhyIKKworI34gbXNnaWQgInVuYWJsZSB0byBvcGVuICVzIGZvciB3cml0ZTogJXMiCisjfiBtc2dzdHIgIuCksuClh+CkluCkqOCkvuCkleCksOCkv+CkpOCkviAlcyDgpIngpJjgpKHgpKTgpL4g4KSv4KWH4KSkIOCkqOCkvuCkueClgDogJXMiCisKKyN+IG1zZ2lkICJMYXN0IHBhY2thZ2UgcHJvdmlkaW5nICVzICglcykgcmVtb3ZlZCwgZGVsZXRpbmcgaXQuIgorI34gbXNnc3RyICIlcyAoJXMpIOCkquClgeCksOCkteCko+CkvuCksOClhyDgpLbgpYfgpLXgpJ/gpJrgpYcg4KSq4KWF4KSV4KWH4KScIOCkleCkvuCkouCksuClhywg4KSk4KWHIOCkleCkvuCkouClguCkqCDgpJ/gpL7gpJXgpKQg4KSG4KS54KWHLiIKKworI34gbXNnaWQgIiIKKyN+ICJUaGVyZSBpcyBvbmx5IDEgcHJvZ3JhbSB3aGljaCBwcm92aWRlcyAlc1xuIgorI34gIiglcykuIE5vdGhpbmcgdG8gY29uZmlndXJlLlxuIgorI34gbXNnc3RyICIiCisjfiAiJXMg4KSq4KWB4KSw4KS14KSj4KS+4KSw4KWAIOCkq+CkleCljeCkpCDgpacg4KSG4KSc4KWN4KSe4KS+4KS14KSy4KWAIOCkhuCkueClh1xuIgorI34gIiglcykuIOCkuOCkguCksOCkmuCkqOCkviDgpJXgpLDgpKPgpY3gpK/gpL7gpLgg4KSV4KS+4KS54KWA4KS54KWAIOCkqOCkvuCkueClgC5cbiIKKworI34gbXNnaWQgIiIKKyN+ICJUaGVyZSBhcmUgJXMgYWx0ZXJuYXRpdmVzIHdoaWNoIHByb3ZpZGUgYCVzJy5cbiIKKyN+ICJcbiIKKyN+ICIgIFNlbGVjdGlvbiAgICBBbHRlcm5hdGl2ZVxuIgorI34gIi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJgJXMnIOCkquClgeCksOCkteCko+CkvuCksOClhyAlcyDgpLXgpL/gpJXgpLLgpY3gpKog4KSG4KS54KWH4KSkLlxuIgorI34gIlxuIgorI34gIiAg4KSo4KS/4KS14KShICAgIOCkteCkv+CkleCksuCljeCkqlxuIgorI34gIi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4iCisKKyN+IG1zZ2lkICJlcnJvciBvciBlb2YgcmVhZGluZyAlcyBmb3IgJXMgKCVzKSIKKyN+IG1zZ3N0ciAiJXMg4KSV4KSw4KS/4KSk4KS+ICVzIOCkmuClhyDgpLXgpL7gpJrgpKgg4KSV4KSw4KSk4KS+4KSo4KS+IOCkpOCljeCksOClgeCkn+ClgCDgpJXgpL/gpILgpLXgpL4g4KSH4KST4KSP4KSrICglcykiCisKKyN+IG1zZ2lkICJtaXNzaW5nIG5ld2xpbmUgYWZ0ZXIgJXMiCisjfiBtc2dzdHIgIiVzIOCkqOCkguCkpOCksCDgpKjgpY3gpK/gpYLgpLLgpL7gpIfgpKgg4KSX4KS+4KSv4KSsIgorCisjfiBtc2dpZCAiU2VyaW91cyBwcm9ibGVtOiAlcyIKKyN+IG1zZ3N0ciAi4KSX4KSC4KSt4KWA4KSwIOCkuOCkruCkuOCljeCkr+CkvjogJXMiCisKKyN+IG1zZ2lkICJjb3VsZG4ndCBhbGxvY2F0ZSBtZW1vcnkgZm9yIHN0cmR1cCBpbiBmaW5kcGFja2FnZSglcykiCisjfiBtc2dzdHIgIuClnuCkvuCkh+CkguCkoeCkquClheCkleClh+CknCDgpK7gpKfgpYcg4KSP4KS44KSf4KWA4KSG4KSw4KSh4KWA4KSF4KSqIOCkuOCkvuCkoOClgCDgpK7gpYfgpK7gpLDgpYDgpJrgpYcg4KS14KS+4KSf4KSqIOCkleCksOCkpOCkviDgpIbgpLLgpYcg4KSo4KS+4KS54KWAKCVzKSIKKworI34gbXNnaWQgImZhaWxlZCB0byBhbGxvY2F0ZSBidWZmZXIgaW4gYnVmZmVyX2NvcHkgKCVzKSIKKyN+IG1zZ3N0ciAi4KSs4KSr4KSwX+CkqOCkleCljeCkleCksiAoJXMpIOCkruCkp+ClhyDgpKzgpKvgpLDgpJrgpYcg4KS14KS+4KSf4KSqIOCkleCksOCko+ClhyDgpIXgpK/gpLbgpLjgpY3gpLXgpYAg4KSd4KS+4KSy4KWHIgorCisjfiBtc2dpZCAiRXJyb3IgYWxsb2NhdGluZyBtZW1vcnkgZm9yIGNmZ2ZpbGVuYW1lIgorI34gbXNnc3RyICLgpLjgpYDgpI/gpKvgpJzgpYDgpKvgpL7gpIjgpLLgpKjgpYfgpK4g4KS44KS+4KSg4KWAIOCkruClh+CkruCksOClgOCkmuClhyDgpLXgpL7gpJ/gpKog4KSV4KSw4KSk4KS+4KSo4KS+IOCkpOCljeCksOClgeCkn+ClgCIKKworI34gbXNnaWQgImZhaWxlZCB0byBtYWxsb2MgZm9yIGluZm8gZmlsZSBgJS4yNTVzJyIKKyN+IG1zZ3N0ciAi4KSH4KSo4KSr4KWLIOCkq+CkvuCkiOCksiBgJS4yNTVzJyDgpLjgpL7gpKDgpYAg4KSu4KWF4KSy4KWL4KWF4KSVIOCkheCkr+CktuCkuOCljeCkteClgCDgpJ3gpL7gpLLgpYciCisKKyN+IG1zZ2lkICJkaXZlcnNpb25zIGZpbGUgaGFzIHRvby1sb25nIGxpbmUgb3IgRU9GIFtpXSIKKyN+IG1zZ3N0ciAi4KSh4KS+4KSH4KS14KWN4KS54KSw4KWN4KSc4KSo4KWN4KS4IOCkq+CkvuCkh+CksuCksuCkviDgpJbgpYHgpKog4KSu4KWL4KSg4KWAIOCkk+Cksy/gpLLgpL7gpIfgpKgg4KSV4KS/4KSC4KS14KS+IOCkh+Ckk+Ckj+CkqyBbaV0g4KSG4KS54KWHIgorCisjfiBtc2dpZCAicmVhZCBlcnJvciBpbiBkaXZlcnNpb25zIFtpaV0iCisjfiBtc2dzdHIgIuCkoeCkvuCkh+CkteCljeCkueCksOCljeCknOCkqOCljeCkuCBbaWld4KSu4KSn4KSy4KS+IOCkpuCli+CktyDgpLXgpL7gpJrgpL4iCisKKyN+IG1zZ2lkICJ1bmV4cGVjdGVkIEVPRiBpbiBkaXZlcnNpb25zIFtpaV0iCisjfiBtc2dzdHIgIuCkoeCkvuCkh+CkteCljeCkueCksOCljeCknOCkqOCljeCkuCBbaWld4KSu4KSn4KWN4KSv4KWHIOCkheCkqOCkquClh+CkleCljeCkt+Ckv+CkpCDgpIfgpJPgpI/gpKsgIgorCisjfiBtc2dpZCAiZmdldHMgZ2F2ZSBhbiBlbXB0eSBzdHJpbmcgZnJvbSBkaXZlcnNpb25zIFtpaV0iCisjfiBtc2dzdHIgIuCkj+Ckq+Ckl+Clh+Ckn+CljeCkuCDgpKHgpL7gpIfgpLXgpY3gpLngpLDgpY3gpJzgpKjgpY3gpLggW2lpXSDgpK7gpKfgpYLgpKgg4KSw4KS/4KSV4KS+4KSu4KS+IOCkuOCljeCkn+CljeCksOCkv+CkguCklyDgpKbgpYfgpKTgpYsiCisKKyN+IG1zZ2lkICJkaXZlcnNpb25zIGZpbGUgaGFzIHRvby1sb25nIGxpbmUgb3IgRU9GIFtpaV0iCisjfiBtc2dzdHIgIuCkoeCkvuCkh+CkteCljeCkueCksOCljeCknOCkqOCljeCkuCDgpKvgpL7gpIfgpLLgpLLgpL4g4KSW4KWB4KSqIOCkruCli+CkoOClgCDgpJPgpLMv4KSy4KS+4KSH4KSoIOCkleCkv+CkguCkteCkviDgpIfgpJPgpI/gpKsgW2lpXSDgpIbgpLngpYciCisKKyN+IG1zZ2lkICJyZWFkIGVycm9yIGluIGRpdmVyc2lvbnMgW2lpaV0iCisjfiBtc2dzdHIgIuCkoeCkvuCkh+CkteCljeCkueCksOCljeCknOCkqOCljeCkuCBbaWlpXeCkruCkp+CksuCkviDgpKbgpYvgpLcg4KS14KS+4KSa4KS+IgorCisjfiBtc2dpZCAidW5leHBlY3RlZCBFT0YgaW4gZGl2ZXJzaW9ucyBbaWlpXSIKKyN+IG1zZ3N0ciAi4KSh4KS+4KSH4KS14KWN4KS54KSw4KWN4KSc4KSo4KWN4KS4IFtpaWld4KSu4KSn4KWN4KSv4KWHIOCkheCkqOCkquClh+CkleCljeCkt+Ckv+CkpCDgpIfgpJPgpI/gpKsiCisKKyN+IG1zZ2lkICJmZ2V0cyBnYXZlIGFuIGVtcHR5IHN0cmluZyBmcm9tIGRpdmVyc2lvbnMgW2lpaV0iCisjfiBtc2dzdHIgIuCkj+Ckq+Ckl+Clh+Ckn+CljeCkuCDgpKHgpL7gpIfgpLXgpY3gpLngpLDgpY3gpJzgpKjgpY3gpLggW2lpaV0g4KSu4KSn4KWC4KSoIOCksOCkv+CkleCkvuCkruCkviDgpLjgpY3gpJ/gpY3gpLDgpL/gpILgpJcg4KSm4KWH4KSk4KWLIgorCisjfiBtc2dpZCAiY291bGRuJ3QgbWFsbG9jIGluIGV4ZWNiYWNrZW5kIgorI34gbXNnc3RyICLgpI/gpJfgpY3gpJ3gpYfgpJXgpKzgpYXgpJXgpI/gpKjgpY3gpKHgpK7gpKfgpY3gpK/gpYcg4KSP4KSu4KSF4KWF4KSy4KWJ4KSVIOCktuCkleCljeCkryDgpKjgpL7gpLngpYAiCisKKyN+IG1zZ2lkICJjb3VsZG4ndCBzdHJkdXAgaW4gZXhlY2JhY2tlbmQiCisjfiBtc2dzdHIgIuCkj+Ckl+CljeCkneClh+CkleCkrOClheCkleCkj+CkqOCljeCkoeCkruCkp+CljeCkr+ClhyDgpI/gpLjgpJ/gpL/gpIbgpLDgpKHgpYHgpKog4KS24KSV4KWN4KSvIOCkqOCkvuCkueClgCIKKworI34gbXNnaWQgImZhaWxlZCBhbGxvY2F0aW5nIG1lbW9yeSBmb3IgdmFyaWFibGUgYGN0cmxhcmVhJyIKKyN+IG1zZ3N0ciAi4KSa4KSy4KS/4KSkIGDgpJXgpILgpJ/gpY3gpLDgpYvgpLLgpI/gpLDgpL/gpK/gpL4nIOCkuOCkvuCkoOClgCDgpK7gpYfgpK7gpLDgpYDgpJrgpYcg4KS14KS+4KSf4KSqIOCkleCksOCkpOCkviDgpIbgpLLgpYcg4KSo4KS+4KS54KWAIgorCisjfiBtc2dpZCAiQ2Fubm90IGdldCBFTk9FTlQgdmFsdWUgZnJvbSAlczogJXMiCisjfiBtc2dzdHIgIiVzOiAlcyDgpJXgpKHgpYLgpKgg4KSH4KSP4KSo4KST4KSH4KSP4KSo4KSf4KWAIOCkruClguCksuCljeCkryDgpJjgpYfgpKTgpL4g4KSv4KWH4KSkIOCkqOCkvuCkueClgCIKKworI34gbXNnaWQgInVuYWJsZSB0byBlbnN1cmUgJXMgbm9uZXhpc3RlbnQ6ICVzIgorI34gbXNnc3RyICIlcyDgpIXgpLjgpY3gpKTgpL/gpKTgpY3gpLXgpL7gpKQg4KSo4KS44KSy4KWN4KSv4KS+4KSa4KWAIOCkluCkvuCkpOCljeCksOClgCDgpJXgpLDgpKTgpL4g4KSv4KWH4KSkIOCkqOCkvuCkueClgDogJXMgIgorCisjfiBtc2dpZCAiIgorI34gIndhcm5pbmc6ICVzIGlzIHN1cHBvc2VkIHRvIGJlIGEgc2xhdmUgc3ltbGluayB0b1xuIgorI34gIiAlcywgb3Igbm9uZXhpc3RlbnQ7IGhvd2V2ZXIsIHJlYWRsaW5rIGZhaWxlZDogJXMiCisjfiBtc2dzdHIgIiIKKyN+ICLgpKfgpYvgpJXgpY3gpK/gpL7gpJrgpYAg4KS44KWC4KSa4KSo4KS+OiAlcyDgpLngpYAgJXMg4KSa4KWAIOCkl+ClgeCksuCkvuCkriDgpLjgpL/gpK7gpLLgpL/gpILgpJUg4KSF4KS44KSj4KWHIOCkheCkquClh+CkleCljeCkt+Ckv+CkpFxuIgorI34gIiAo4KSV4KS/4KSC4KS14KS+IOCkheCkuOCljeCkpOCkv+CkpOCljeCkteCkvuCkpCDgpKjgpL7gpLngpYApOyDgpKrgpLDgpILgpKTgpYEsIOCkuOCkvuCkluCks+ClgOCkteCkvuCkmuCkqCDgpKvgpLjgpLLgpYc6ICVzIgorCisjfiBtc2dpZCAiIgorI34gImRwa2c6IHJlZ2FyZGluZyAlcyBjb250YWluaW5nICVzOlxuIgorI34gIiBwYWNrYWdlIHVzZXMgQnJlYWtzOyBub3Qgc3VwcG9ydGVkIGluIHRoaXMgZHBrZ1xuIgorI34gbXNnc3RyICIiCisjfiAi4KSh4KS/4KSq4KS/4KSV4KWH4KSc4KWAOiAlcyDgpKzgpKbgpY3gpKbgpLIg4KSc4KWN4KSv4KS+4KSa4KWN4KSv4KS+4KSkICVzIOCkhuCkueClhzpcbiIKKyN+ICLgpKrgpYXgpJXgpYfgpJwg4KSW4KSC4KShL+CkrOCljeCksOClh+CkleCljeCkuCDgpLXgpL7gpKrgpLDgpKTgpYcsIOCkr+CkviDgpKHgpL/gpKrgpL/gpJXgpYfgpJzgpYDgpK7gpKfgpY3gpK/gpYcg4KSk4KWN4KSv4KS+4KSy4KS+IOCkhuCkp+CkvuCksCDgpKjgpL7gpLngpYBcbiIKKworI34gbXNnaWQgInVuc3VwcG9ydGVkIGRlcGVuZGVuY3kgcHJvYmxlbSAtIG5vdCBpbnN0YWxsaW5nICUuMjUwcyIKKyN+IG1zZ3N0ciAi4KS14KS/4KSo4KS+4KSG4KSn4KS+4KSwIOCkheCkteCksuCkguCkrOClgeCkqCDgpIXgpLjgpLLgpYfgpLLgpYAg4KS44KSu4KS44KWN4KSv4KS+IC0gJS4yNTBz4KSa4KWAIOCkuOCljeCkpeCkvuCkquCkqOCkviDgpJXgpLDgpKQg4KSo4KS+4KS54KWAIgorCisjfiBtc2dpZCAiZHBrZzogd2FybmluZyAtIGlnbm9yaW5nIEJyZWFrcyAhXG4iCisjfiBtc2dzdHIgIuCkoeCkv+CkquCkv+CkleClh+CknOClgDog4KSk4KS+4KSV4KS/4KSmIC0g4KSW4KSC4KSh4KS+4KSC4KSV4KSh4KWHIOCkpuClgeCksOCljeCksuCkleCljeCktyDgpJXgpLDgpL/gpKQg4KSG4KS54KWHICFcbiIKKworI34gbXNnaWQgInRvIgorI34gbXNnc3RyICLgpLLgpL4iCisKKyN+IG1zZ2lkICJmcm9tIgorI34gbXNnc3RyICLgpJXgpKHgpYLgpKgiCisKKyN+IG1zZ2lkICJlcnJvciByZWFkaW5nICVzIgorI34gbXNnc3RyICIlcyDgpLXgpL7gpJrgpKTgpL7gpKjgpL4g4KSk4KWN4KSw4KWB4KSf4KWAIgorCisjfiBtc2dpZCAidHdvIG1vZGVzIHNwZWNpZmllZDogJXMgYW5kIC0tJXMiCisjfiBtc2dzdHIgIuCkpuCli+CkqCDgpKrgpKbgpY3gpKfgpKTgpYAg4KSo4KS/4KSw4KWN4KSn4KS+4KSw4KWA4KSkIOCkleClh+CksuCljeCkr+CkvuCkpDogJXMg4KSG4KSj4KWAIC0tJXMiCisKKyN+IG1zZ2lkICJtYW5mbGFnIgorI34gbXNnc3RyICLgpK7gpYXgpKjgpKvgpY3gpLLgpYXgpJciCisKKyN+IG1zZ2lkICIlczogZmFpbGVkIHRvIGV4ZWMgZ3ppcCAtZGMiCisjfiBtc2dzdHIgIiVzOiDgpJzgpYDgpJ3gpL/gpKogLeCkoeClgOCkuOClgCDgpJrgpYAg4KSF4KSC4KSu4KSy4KSs4KSc4KS+4KS14KSj4KWAIOCkueCli+CkiSDgpLbgpJXgpLLgpYAg4KSo4KS+4KS54KWAIgorCisjfiBtc2dpZCAiJXM6IGZhaWxlZCB0byBleGVjIGJ6aXAyIC1kYyIKKyN+IG1zZ3N0ciAiJXM6IOCkrOClgOCkneCkv+CkquClqCAt4KSh4KWA4KS44KWAIOCkmuClgCDgpIXgpILgpK7gpLLgpKzgpJzgpL7gpLXgpKPgpYAg4KS54KWL4KSJIOCktuCkleCksuClgCDgpKjgpL7gpLngpYAiCisKKyN+IG1zZ2lkICIlczogZmFpbGVkIHRvIGV4ZWMgYnppcDIgJXMiCisjfiBtc2dzdHIgIiVzOiDgpKzgpYDgpJ3gpL/gpKrgpagg4KSa4KWAIOCkheCkguCkruCksuCkrOCknOCkvuCkteCko+ClgCDgpLngpYvgpIkg4KS24KSV4KSy4KWAIOCkqOCkvuCkueClgCAlcyIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvcG8vbmIuZ21vIGIvZHBrZy0xLjE2LjEuMS9wby9uYi5nbW8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNmI3OGIxOAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvcG8vbmIuZ21vCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvcG8vbmIucG8gYi9kcGtnLTEuMTYuMS4xL3BvL25iLnBvCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmI5NzZmMTIKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3BvL25iLnBvCkBAIC0wLDAgKzEsNzYzNyBAQAorIyB0cmFuc2xhdGlvbiBvZiBkcGtnLnBvIHRvIE5vcndlZ2lhbiBCb2ttw6VsCisjIEdhdXRlIEh2b3NsZWYgS3ZhbG5lcyA8Z2F1dGVAdmVyZHN2ZXZlbi5jb20+LCAyMDAzLCAyMDA0LgorIyBIw6V2YXJkIEtvcnN2b2xsIDxrb3Jzdm9sbEBza3VsZWxpbnV4Lm5vPiwgMjAwMywgMjAwNC4KKyMgQmpvcm4gU3RlZW5zcnVkIDxiam9ybnN0QHBvd2VydGVjaC5ubz4sIDIwMDQuCisjIEhhbnMgRnJlZHJpayBOb3JkaGF1ZyA8aGFuc0Bub3JkaGF1Zy5wcml2Lm5vPiwgMjAwNS0yMDA4LCAyMDEwLgorbXNnaWQgIiIKK21zZ3N0ciAiIgorIlByb2plY3QtSWQtVmVyc2lvbjogZHBrZ1xuIgorIlJlcG9ydC1Nc2dpZC1CdWdzLVRvOiBkZWJpYW4tZHBrZ0BsaXN0cy5kZWJpYW4ub3JnXG4iCisiUE9ULUNyZWF0aW9uLURhdGU6IDIwMTEtMTAtMTQgMDc6MTErMDIwMFxuIgorIlBPLVJldmlzaW9uLURhdGU6IDIwMTAtMDktMDIgMDI6MzgrMDIwMFxuIgorIkxhc3QtVHJhbnNsYXRvcjogSGFucyBGcmVkcmlrIE5vcmRoYXVnIDxoYW5zQG5vcmRoYXVnLnByaXYubm8+XG4iCisiTGFuZ3VhZ2UtVGVhbTogTm9yd2VnaWFuIEJva23DpWwgPGkxOG4tbmJAbGlzdGVyLnBpbmcudWlvLm5vPlxuIgorIkxhbmd1YWdlOiBuYlxuIgorIk1JTUUtVmVyc2lvbjogMS4wXG4iCisiQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PVVURi04XG4iCisiQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdFxuIgorIlBsdXJhbC1Gb3JtczogbnBsdXJhbHM9MjsgcGx1cmFsPShuICE9IDEpO1xuIgorIlgtR2VuZXJhdG9yOiBWaXJ0YWFsIDAuNi4xXG4iCisKKyM6IGxpYi9kcGtnL2FyLmM6NjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgJyVjJyBpbiBhcmNoaXZlICclLjI1MHMnIG1lbWJlciAnJS4xNnMnIHNpemUiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvYXIuYzo4MSBsaWIvZHBrZy9hci5jOjk3IGxpYi9kcGtnL2FyLmM6MTA4IGxpYi9kcGtnL2FyLmM6MTEyCisjOiBsaWIvZHBrZy9hci5jOjEzNCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE1NAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgZmlsZSAnJXMnIgorbXNnc3RyICJrbGFydGUgaWtrZSDDpSBza3JpdmUgZmlsYSDCqyVzwrsiCisKKyM6IGxpYi9kcGtnL2FyLmM6OTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZ2VuZXJhdGVkIGNvcnJ1cHQgYXIgaGVhZGVyIGZvciAnJXMnIgorbXNnc3RyICJnZW5lcmVydGUga29ycnVwdCBhci1ob2RlIGZvciDCqyVzwrsiCisKKyM6IGxpYi9kcGtnL2FyLmM6MTIzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBmc3RhdCBhciBtZW1iZXIgZmlsZSAoJXMpIgorbXNnc3RyICJrbGFydGUgaWtrZSBmaW5uZSAoZnN0YXQpIGFyLW1lZGxlbXNmaWwgKCVzKSIKKworIzogbGliL2Rwa2cvYXIuYzoxMzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byBmc3RhdCBhciBtZW1iZXIgZmlsZSAoJXMpIgorbXNnaWQgImFyIG1lbWJlciBmaWxlICglcykiCittc2dzdHIgImtsYXJ0ZSBpa2tlIGZpbm5lIChmc3RhdCkgYXItbWVkbGVtc2ZpbCAoJXMpIgorCisjOiBsaWIvZHBrZy9idWZmZXIuYzoxOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgb24gYnVmZmVyIGNvcHkgZm9yICVzIgorbXNnc3RyICJrbGFydGUgaWtrZSBsZXNlIHDDpSBtZWxsb21sYWdlciBrb3BpIGZvciAlcyIKKworIzogbGliL2Rwa2cvYnVmZmVyLmM6MjEyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCBpbiB3cml0ZSBvbiBidWZmZXIgY29weSBmb3IgJXMiCittc2dzdHIgImtsYXJ0ZSBpa2tlIHNrcml2ZSBww6UgbWVsbG9tbGFnZXIga29waSBmb3IgJXMiCisKKyM6IGxpYi9kcGtnL2J1ZmZlci5jOjIyMAorIywgYy1mb3JtYXQKK21zZ2lkICJzaG9ydCByZWFkIG9uIGJ1ZmZlciBjb3B5IGZvciAlcyIKK21zZ3N0ciAia29ydCBsZXNpbmcgcMOlIG1lbGxvbWxhZ2VyIGtvcGkgZm9yICVzIgorCisjOiBsaWIvZHBrZy9idWZmZXIuYzoyODgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byBleGVjIHRhciIKK21zZ2lkICJmYWlsZWQgdG8gc2VlayAlcyIKK21zZ3N0ciAia2xhcnRlIGlra2Uga2rDuHJlIMKrdGFywrsiCisKKyM6IGxpYi9kcGtnL2NvbW1hbmQuYzoxNzggbGliL2Rwa2cvY29tbWFuZC5jOjIwNCBzcmMvaGVscC5jOjYyMQorIzogc3JjL3Byb2Nlc3NhcmMuYzo5OCBzcmMvcHJvY2Vzc2FyYy5jOjEzOCBzcmMvcHJvY2Vzc2FyYy5jOjQzMgorIzogc3JjL3Byb2Nlc3NhcmMuYzo4MzkgZHBrZy1kZWIvYnVpbGQuYzo0NTkgZHBrZy1kZWIvYnVpbGQuYzo1MzgKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTYxIGRwa2ctZGViL2V4dHJhY3QuYzozMTcgZHBrZy1kZWIvaW5mby5jOjY1CisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6NjkgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQ1NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZXhlY3V0ZSAlcyAoJXMpIgorbXNnc3RyICJrbGFydGUgaWtrZSBrasO4cmUgJXMgKCVzKSIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzo4MworIywgYy1mb3JtYXQKK21zZ2lkICIlczogZGVjb21wcmVzc2lvbiIKK21zZ3N0ciAiJXM6IGRla29tcHJpbWVyaW5nIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjg5CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBjb21wcmVzc2lvbiIKK21zZ3N0ciAiJXM6IGtvbXByaW1lcmluZyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yIGJpbmRpbmcgaW5wdXQgdG8gZ3ppcCBzdHJlYW0iCittc2dzdHIgIiVzOiBrbGFydGUgaWtrZSBiaW5kZSBpbm5kYXRhIHRpbCBnemlwLXN0csO4bSIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgcmVhZCBlcnJvcjogJyVzJyIKK21zZ3N0ciAiJXM6IGludGVybiBnemlwLWxlc2VmZWlsOiDCqyVzwrsiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTMyIGxpYi9kcGtnL2NvbXByZXNzLmM6MTM2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHdyaXRlIGVycm9yIgorbXNnc3RyICIlczogaW50ZXJuIGd6aXAtc2tyaXZlZmVpbCIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yIGJpbmRpbmcgb3V0cHV0IHRvIGd6aXAgc3RyZWFtIgorbXNnc3RyICIlczoga2xhcnRlIGlra2UgYmluZGUgdXRkYXRhIHRpbCBnemlwLXN0csO4bSIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgcmVhZCBlcnJvciIKK21zZ3N0ciAiJXM6IGludGVybiBnemlwLWxlc2VmZWlsIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE2NworIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCB3cml0ZSBlcnJvcjogJyVzJyIKK21zZ3N0ciAiJXM6IGludGVybiBnemlwLXNrcml2ZWZlaWw6IMKrJXPCuyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgd3JpdGUgZXJyb3I6ICVzIgorbXNnc3RyICIlczogaW50ZXJuIGd6aXAtc2tyaXZlZmVpbDogJXMiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjIwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvciBiaW5kaW5nIGlucHV0IHRvIGJ6aXAyIHN0cmVhbSIKK21zZ3N0ciAiJXM6IGtsYXJ0ZSBpa2tlIGJpbmRlIGlubmRhdGEgdGlsIGJ6aXAyLXN0csO4bSIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIHJlYWQgZXJyb3I6ICclcyciCittc2dzdHIgIiVzOiBpbnRlcm4gYnppcDItbGVzZWZlaWw6IMKrJXPCuyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyNDAgbGliL2Rwa2cvY29tcHJlc3MuYzoyNDQgbGliL2Rwa2cvY29tcHJlc3MuYzoyOTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIHdyaXRlIGVycm9yIgorbXNnc3RyICIlczogaW50ZXJuIGJ6aXAyLXNrcml2ZWZlaWwiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjU4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvciBiaW5kaW5nIG91dHB1dCB0byBiemlwMiBzdHJlYW0iCittc2dzdHIgIiVzOiBrbGFydGUgaWtrZSBiaW5kZSB1dGRhdGEgdGlsIGJ6aXAyLXN0csO4bSIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIHJlYWQgZXJyb3IiCittc2dzdHIgIiVzOiBpbnRlcm4gYnppcDItbGVzZWZlaWwiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6Mjc1IGxpYi9kcGtnL2NvbXByZXNzLmM6Mjg2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiB3cml0ZSBlcnJvcjogJyVzJyIKK21zZ3N0ciAiJXM6IGludGVybiBiemlwMi1za3JpdmVmZWlsOiDCqyVzwrsiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjgyCittc2dpZCAidW5leHBlY3RlZCBiemlwMiBlcnJvciIKK21zZ3N0ciAidXZlbnRldCBiemlwMi1mZWlsIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjY4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1cGRhdGVzIGRpcmVjdG9yeSBjb250YWlucyBmaWxlIGAlLjI1MHMnIHdob3NlIG5hbWUgaXMgdG9vIGxvbmcgKGxlbmd0aD0lZCwgIgorIm1heD0lZCkiCittc2dzdHIgIiIKKyJvcHBkYXRlcmluZ3NrYXRhbG9nZW4gaW5uZWhvbGRlciBmaWxhIMKrJS4yNTBzwrssIHNvbSBoYXIgZm9yIGxhbmd0IG5hdm4gIgorIihsZW5nZGU9JWQsIG1ha3M9JWQpIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1cGRhdGVzIGRpcmVjdG9yeSBjb250YWlucyBmaWxlcyB3aXRoIGRpZmZlcmVudCBsZW5ndGggbmFtZXMgKGJvdGggJWQgYW5kICVkKSIKK21zZ3N0ciAiIgorIm9wcGRhdGVyaW5nc2thdGFsb2dlbiBpbm5laG9sZGVyIGZpbGVyIG1lZCB1bGlrZSBuYXZuZWxlbmdkZXIgKGLDpWRlICVkIG9nICVkKSIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzo4NgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc2NhbiB1cGRhdGVzIGRpcmVjdG9yeSBgJS4yNTVzJyIKK21zZ3N0ciAia2xhcnRlIGlra2Ugc2thbm5lIG9wcGRhdGVyaW5nc2thdGFsb2dlbiDCqyUuMjU1c8K7IgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVtb3ZlIGluY29ycG9yYXRlZCB1cGRhdGUgZmlsZSAlLjI1NXMiCittc2dzdHIgImtsYXJ0ZSBpa2tlIGZqZXJuZSBkZW4gaW5ubGFndGUgb3BwZGF0ZXJpbmdzZmlsYSAlLjI1NXMiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTIxIGRwa2ctZGViL2J1aWxkLmM6NDQ3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgYCUuMjU1cyciCittc2dzdHIgImtsYXJ0ZSBpa2tlIG9wcHJldHRlIMKrJS4yNTVzwrsiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTI1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmaWxsICUuMjUwcyB3aXRoIHBhZGRpbmciCittc2dzdHIgImtsYXJ0ZSBpa2tlIGV0dGVyZnlsbGUgJS4yNTBzIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEyNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggJS4yNTBzIGFmdGVyIHBhZGRpbmciCittc2dzdHIgImtsYXJ0ZSBpa2tlIHTDuG1tZSAlLjI1MHMgZXR0ZXIgZXR0ZXJmeWxsaW5nIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEyOQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2VlayB0byBzdGFydCBvZiAlLjI1MHMgYWZ0ZXIgcGFkZGluZyIKK21zZ3N0ciAia2xhcnRlIGlra2Ugc8O4a2UgdGlsIHN0YXJ0ZW4gYXYgJS4yNTBzIGV0dGVyIGV0dGVyZnlsbGluZyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxOTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gbG9jayBmaWxlICVzIGZvciB0ZXN0aW5nIgorbXNnc3RyICJrbGFydGUgaWtrZSDDpXBuZSBsw6VzZWZpbGEgJXMgZm9yIHRlc3RpbmciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjIxCittc2dpZCAidW5hYmxlIHRvIG9wZW4vY3JlYXRlIHN0YXR1cyBkYXRhYmFzZSBsb2NrZmlsZSIKK21zZ3N0ciAia2xhcnRlIGlra2Ugw6VwbmUvb3BwcmV0dGUgbMOlc2VmaWxhIHRpbCBzdGF0dXNkYXRhYmFzZW4iCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjMxCittc2dpZCAieW91IGRvIG5vdCBoYXZlIHBlcm1pc3Npb24gdG8gbG9jayB0aGUgZHBrZyBzdGF0dXMgZGF0YWJhc2UiCittc2dzdHIgImR1IGhhciBpa2tlIHRpbGxhdGVsc2UgdGlsIMOlIGzDpXNlIGRwa2ctc3RhdHVzZGF0YWJhc2VuIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjIzMworIywgZnV6enkKKyN8IG1zZ2lkICJ1bmFibGUgdG8gbG9jayBkcGtnIHN0YXR1cyBkYXRhYmFzZSIKK21zZ2lkICJkcGtnIHN0YXR1cyBkYXRhYmFzZSIKK21zZ3N0ciAia2xhcnRlIGlra2UgbMOlc2UgZHBrZy1zdGF0dXNkYXRhYmFzZW4iCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjU3Cittc2dpZCAicmVxdWVzdGVkIG9wZXJhdGlvbiByZXF1aXJlcyBzdXBlcnVzZXIgcHJpdmlsZWdlIgorbXNnc3RyICJkZW4gw7huc2tlZGUgaGFuZGxpbmdlbiBrcmV2ZXIgc3VwZXJicnVrZXJ0aWxnYW5nIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjI2MgorbXNnaWQgInVuYWJsZSB0byBhY2Nlc3MgZHBrZyBzdGF0dXMgYXJlYSIKK21zZ3N0ciAiZsOlciBpa2tlIHRpbGdhbmcgdGlsIGRwa2ctc3RhdHVzb21yw6VkZXQiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjY0Cittc2dpZCAib3BlcmF0aW9uIHJlcXVpcmVzIHJlYWQvd3JpdGUgYWNjZXNzIHRvIGRwa2cgc3RhdHVzIGFyZWEiCittc2dzdHIgIm9wZXJhc2pvbmVuIGtyZXZlciBsZXNlLSBvZyBza3JpdmV0aWxnYW5nIHRpbCBkcGtnLXN0YXR1c29tcsOlZGV0IgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjMwOQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVtb3ZlIG15IG93biB1cGRhdGUgZmlsZSAlLjI1NXMiCittc2dzdHIgImtsYXJ0ZSBpa2tlIGZqZXJuZSBtaW4gZWdlbiBvcHBkYXRlcmluZ3NmaWwgJS4yNTVzIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM0NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgImtsYXJ0ZSBpa2tlIHNrcml2ZSBvcHBkYXRlcnQgc3RhdHVzIGZvciDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM0OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgImtsYXJ0ZSBpa2tlIHTDuG1tZSBvcHBkYXRlcnQgc3RhdHVzIGZvciDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM1MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gdHJ1bmNhdGUgZm9yIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJrbGFydGUgaWtrZSBrbGlwcGUgZm9yIG9wcGRhdGVydCBzdGF0dXMgZm9yIMKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzUzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmc3luYyB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAia2xhcnRlIGlra2Ugc3lua3JvbmlzZXJlIG9wcGRhdGVydCBzdGF0dXMgZm9yIMKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzU1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAia2xhcnRlIGlra2UgbHVra2Ugb3BwZGF0ZXJ0IHN0YXR1cyBmb3IgwqslLjI1MHPCuyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgImtsYXJ0ZSBpa2tlIGluc3RhbGxlcmUgb3BwZGF0ZXJ0IHN0YXR1cyBmb3IgwqslLjI1MHPCuyIKKworIzogbGliL2Rwa2cvZGlyLmM6NTAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byByZWFkIGZpbGVkZXNjcmlwdG9yIGZsYWdzIGZvciAlLjI1MHMiCittc2dpZCAidW5hYmxlIHRvIGdldCBmaWxlIGRlc2NyaXB0b3IgZm9yIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICJrbGFydGUgaWtrZSBsZXNlIGZpbGRlc2tyaXB0b3JmbGFnZyBmb3IgJS4yNTBzIgorCisjOiBsaWIvZHBrZy9kaXIuYzo1NAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHN5bmMgZmlsZSAnJXMnIgorbXNnaWQgInVuYWJsZSB0byBzeW5jIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICJrbGFydGUgaWtrZSBzeW5rcm9uaXNlcmUgZmlsYSDCqyVzwrsiCisKKyM6IGxpYi9kcGtnL2Rpci5jOjY5IGxpYi9kcGtnL2Rpci5jOjEzMQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIG9wZW4gZmlsZSAnJXMnIgorbXNnaWQgInVuYWJsZSB0byBvcGVuIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICJrbGFydGUgaWtrZSDDpXBuZSBmaWxhIMKrJXPCuyIKKworIzogbGliL2Rwa2cvZGlyLmM6MTA5IHNyYy9kaXZlcnRjbWQuYzoyMTggZHBrZy1zcGxpdC9zcGxpdC5jOjIwMgorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gZmlsZSAnJXMnIgorbXNnc3RyICJrbGFydGUgaWtrZSDDpXBuZSBmaWxhIMKrJXPCuyIKKworIzogbGliL2Rwa2cvZGlyLmM6MTExIHNyYy9kaXZlcnRjbWQuYzoyMzIgc3JjL2RpdmVydGNtZC5jOjM3NworIzogc3JjL3N0YXRjbWQuYzoyMTcgZHBrZy1kZWIvYnVpbGQuYzo1OTggZHBrZy1zcGxpdC9qb2luLmM6NjUKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxODcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE0MDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgZmlsZSAnJXMnIgorbXNnc3RyICJrbGFydGUgaWtrZSBzeW5rcm9uaXNlcmUgZmlsYSDCqyVzwrsiCisKKyM6IGxpYi9kcGtnL2Rpci5jOjExMyBzcmMvZGl2ZXJ0Y21kLmM6MjM0IHNyYy9kaXZlcnRjbWQuYzozNzkKKyM6IGRwa2ctZGViL2J1aWxkLmM6NjAwIGRwa2ctc3BsaXQvam9pbi5jOjY3IGRwa2ctc3BsaXQvcXVldWUuYzoxODkKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzE0IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNDA4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBmaWxlICclcyciCittc2dzdHIgImtsYXJ0ZSBpa2tlIGx1a2tlIGZpbGEgwqslc8K7IgorCisjOiBsaWIvZHBrZy9kdW1wLmM6Mzk2CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB3cml0ZSBkZXRhaWxzIG9mIGAlLjUwcycgdG8gYCUuMjUwcyciCittc2dzdHIgImtsYXJ0ZSBpa2tlIHNrcml2ZSBkZXRhbGplciBvbSDCqyUuNTBzwrsgdGlsIMKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0MjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gJyVzJyBmb3Igd3JpdGluZyAlcyBkYXRhYmFzZSIKK21zZ3N0ciAia2xhcnRlIGlra2Ugw6VwbmUgwqslc8K7IGZvciDDpSBza3JpdmUgJXMgZGF0YWJhc2VuIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDI2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgYnVmZmVyaW5nIG9uICVzIGRhdGFiYXNlIGZpbGUiCittc2dzdHIgImtsYXJ0ZSBpa2tlIHNldHRlIG1lbGxvbWxhZ3JpbmcgcMOlICVzIGRhdGFiYXNlZmlsZSIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQzOAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgJXMgZGF0YWJhc2UgcmVjb3JkIGFib3V0ICclLjUwcycgdG8gJyUuMjUwcyciCittc2dzdHIgImtsYXJ0ZSBpa2tlIHNrcml2ZSAlcyBkYXRhYmFzZXBvc3Qgb20gwqslLjUwc8K7IHRpbCDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDQ2CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBmbHVzaCAlcyBkYXRhYmFzZSB0byAnJS4yNTBzJyIKK21zZ3N0ciAia2xhcnRlIGlra2UgdMO4bW1lICVzIGRhdGFiYXNlIHRpbCDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDQ4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBmc3luYyAlcyBkYXRhYmFzZSB0byAnJS4yNTBzJyIKK21zZ3N0ciAia2xhcnRlIGlra2Ugc3lua3JvbmlzZXJlIChmc3luYykgJXMgZGF0YWJhc2UgdGlsIMKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNsb3NlICclLjI1MHMnIGFmdGVyIHdyaXRpbmcgJXMgZGF0YWJhc2UiCittc2dzdHIgImtsYXJ0ZSBpa2tlIGx1a2tlIMKrJS4yNTBzwrsgZXR0ZXIgc2tyaXZpbmcgYXYgJXMgZGF0YWJhc2UiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGxpbmsgJyUuMjUwcycgdG8gJyUuMjUwcycgZm9yIGJhY2t1cCBvZiAlcyBkYXRhYmFzZSIKK21zZ3N0ciAiIgorImtsYXJ0ZSBpa2tlIGxlbmtlIMKrJS4yNTBzwrsgdGlsIMKrJS4yNTBzwrsgZm9yIHNpa2tlcmhldHNrb3BpZXJpbmcgYXYgJXMgIgorImRhdGFiYXNlIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDU4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBpbnN0YWxsICclLjI1MHMnIGFzICclLjI1MHMnIGNvbnRhaW5pbmcgJXMgZGF0YWJhc2UiCittc2dzdHIgImtsYXJ0ZSBpa2tlIGluc3RhbGxlcmUgwqslLjI1MHPCuyBzb20gwqslLjI1MHPCuyBtZWQgJXMgZGF0YWJhc2UiCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzo5NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IHVucmVjb3ZlcmFibGUgZmF0YWwgZXJyb3IsIGFib3J0aW5nOlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisiJXM6IHVnamVub3BwcmV0dGVsaWcga3JpdGlzayBmZWlsLCBhdmJyeXRlcjpcbiIKKyIgJXNcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjEwMAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiVzOiB1bnJlY292ZXJhYmxlIGZhdGFsIGVycm9yLCBhYm9ydGluZzpcbiIKKyN8ICIgJXNcbiIKK21zZ2lkICIiCisiJXM6IG91dHNpZGUgZXJyb3IgY29udGV4dCwgYWJvcnRpbmc6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKyIlczogdWdqZW5vcHByZXR0ZWxpZyBrcml0aXNrIGZlaWwsIGF2YnJ5dGVyOlxuIgorIiAlc1xuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MTIwCisjLCBmdXp6eQorI3wgbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBjbGVhbnVwIGVudHJ5IgorbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBlcnJvciBjb250ZXh0IgorbXNnc3RyICJpa2tlIG5vayBtaW5uZSB0aWwgbnkgb3BwcnlkZGluZ3NvcHBmw7hyaW5nIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MTgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogZXJyb3Igd2hpbGUgY2xlYW5pbmcgdXA6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKyIlczogZmVpbCB2ZWQgb3BwcnlkZGluZzpcbiIKKyIgJXNcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjIwMQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZHBrZzogdG9vIG1hbnkgbmVzdGVkIGVycm9ycyBkdXJpbmcgZXJyb3IgcmVjb3ZlcnkgISFcbiIKK21zZ2lkICIlczogdG9vIG1hbnkgbmVzdGVkIGVycm9ycyBkdXJpbmcgZXJyb3IgcmVjb3ZlcnkhIVxuIgorbXNnc3RyICJkcGtnOiBGb3IgbWFuZ2UgZmVpbCBpIGZsZXJlIG5pdsOlZXIgdW5kZXIgZmVpbG9wcHJldHRpbmdcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjI2OCBsaWIvZHBrZy9laGFuZGxlLmM6MzA3Cittc2dpZCAib3V0IG9mIG1lbW9yeSBmb3IgbmV3IGNsZWFudXAgZW50cnkiCittc2dzdHIgImlra2Ugbm9rIG1pbm5lIHRpbCBueSBvcHByeWRkaW5nc29wcGbDuHJpbmciCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoyOTEKK21zZ2lkICJvdXQgb2YgbWVtb3J5IGZvciBuZXcgY2xlYW51cCBlbnRyeSB3aXRoIG1hbnkgYXJndW1lbnRzIgorbXNnc3RyICJpa2tlIG5vayBtaW5uZSB0aWwgbnkgb3BwcnlkZGluZ3NvcHBmw7hyaW5nIG1lZCBtYW5nZSBwYXJhbWV0cmUiCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzozNTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvcjogJXNcbiIKK21zZ3N0ciAiIgorIiVzOiBGZWlsIHZlZCBiZWhhbmRsaW5nIGF2ICVzICgtLSVzKTpcbiIKKyIgJXNcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjM5MworIywgYy1mb3JtYXQKK21zZ2lkICIlczogd2FybmluZzogJXNcbiIKK21zZ3N0ciAiJXM6IGFkdmFyc2VsOiAlc1xuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6NDE2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiVzOiVkOiBpbnRlcm5hbCBlcnJvcjogJXNcbiIKK21zZ3N0ciAiJXM6JXM6JWQ6IGludGVybiBmZWlsOiAlc1xuIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBpcyBtaXNzaW5nIgorbXNnc3RyICIlcyBtYW5nbGVyIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0OQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYCUuKnMnIGlzIG5vdCBhbGxvd2VkIGZvciAlcyIKK21zZ2lkICInJS41MHMnIGlzIG5vdCBhbGxvd2VkIGZvciAlcyIKK21zZ3N0ciAiwqslLipzwrsgZXIgaWtrZSB0aWxsYXR0IGZvciAlcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NzMKKyMsIGMtZm9ybWF0Cittc2dpZCAianVuayBhZnRlciAlcyIKK21zZ3N0ciAic8O4cHBlbCBldHRlciAlcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6ODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBwYWNrYWdlIG5hbWUgKCUuMjUwcykiCittc2dzdHIgInVneWxkaWcgcGFra2VuYXZuICglLjI1MHMpIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZW1wdHkgZmlsZSBkZXRhaWxzIGZpZWxkIGAlcyciCittc2dzdHIgInRvbXQgZmlsZGV0YWxqZmVsdCDCqyVzwrsiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjEwNQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGRldGFpbHMgZmllbGQgYCVzJyBub3QgYWxsb3dlZCBpbiBzdGF0dXMgZmlsZSIKK21zZ3N0ciAiZmlsZGV0YWxqZmVsdGV0IMKrJXPCuyBrYW4gaWtrZSBicnVrZXMgaSBzdGF0dXNmaWxhIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidG9vIG1hbnkgdmFsdWVzIGluIGZpbGUgZGV0YWlscyBmaWVsZCBgJXMnIChjb21wYXJlZCB0byBvdGhlcnMpIgorbXNnc3RyICJmb3IgbWFuZ2UgdmVyZGllciBpIGZpbGRldGFsamZlbHRldCDCqyVzwrsgKHNhbW1lbmxpa25ldCBtZWQgYW5kcmUpIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAidG9vIGZldyB2YWx1ZXMgaW4gZmlsZSBkZXRhaWxzIGZpZWxkIGAlcycgKGNvbXBhcmVkIHRvIG90aGVycykiCittc2dzdHIgImZvciBmw6UgdmVyZGllciBpIGZpbGRldGFsamZlbHRldCDCqyVzwrsgKHNhbW1lbmxpa25ldCBtZWQgYW5kcmUpIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxNTQKK21zZ2lkICJ5ZXMvbm8gaW4gYm9vbGVhbiBmaWVsZCIKK21zZ3N0ciAiamEvbmVpIGkgYm9vbHNrIGZlbHQiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE3NAorbXNnaWQgIndvcmQgaW4gYHByaW9yaXR5JyBmaWVsZCIKK21zZ3N0ciAib3JkIGkgwqtwcmlvcml0ecK7LWZlbHQiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE4NgorbXNnaWQgInZhbHVlIGZvciBgc3RhdHVzJyBmaWVsZCBub3QgYWxsb3dlZCBpbiB0aGlzIGNvbnRleHQiCittc2dzdHIgInZlcmRpIGkgwqtzdGF0dXPCuy1mZWx0IGthbiBpa2tlIGJydWtlcyBpIGRlbm5lIHNhbW1lbmhlbmdlbiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTkxCittc2dpZCAiZmlyc3QgKHdhbnQpIHdvcmQgaW4gYHN0YXR1cycgZmllbGQiCittc2dzdHIgImbDuHJzdGUgb3JkICjDuG5za2VyKSBpIMKrc3RhdHVzwrstZmVsdCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTk0Cittc2dpZCAic2Vjb25kIChlcnJvcikgd29yZCBpbiBgc3RhdHVzJyBmaWVsZCIKK21zZ3N0ciAiYW5kcmUgb3JkIChmZWlsKSBpIMKrc3RhdHVzwrstZmVsdCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTk3Cittc2dpZCAidGhpcmQgKHN0YXR1cykgd29yZCBpbiBgc3RhdHVzJyBmaWVsZCIKK21zZ3N0ciAidHJlZGplIG9yZCAoc3RhdHVzKSBpIMKrc3RhdHVzwrstZmVsdCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjA3CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGluIFZlcnNpb24gc3RyaW5nICclLjI1MHMnIgorbXNnc3RyICJmZWlsIGkgVmVyc2lvbi10ZWtzdCDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyMTgKK21zZ2lkICJvYnNvbGV0ZSBgUmV2aXNpb24nIG9yIGBQYWNrYWdlLVJldmlzaW9uJyBmaWVsZCB1c2VkIgorbXNnc3RyICJmb3JlbGRldCDCq1JldmlzaW9uwrstIGVsbGVyIMKrUGFja2FnZS1SZXZpc2lvbsK7LWZlbHQgYnJ1a3QiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjIzNQorbXNnaWQgInZhbHVlIGZvciBgY29uZmlnLXZlcnNpb24nIGZpZWxkIG5vdCBhbGxvd2VkIGluIHRoaXMgY29udGV4dCIKK21zZ3N0ciAiIgorInZlcmRpZW4gZm9yIMKrY29uZmlnLXZlcnNpb27Cuy1mZWx0ZXQga2FuIGlra2UgYnJ1a2VzIGkgZGVubmUgc2FtbWVuaGVuZ2VuIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyNDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgaW4gQ29uZmlnLVZlcnNpb24gc3RyaW5nICclLjI1MHMnIgorbXNnc3RyICJmZWlsIGkgQ29uZmlnLVZlcnNpb24tdGVrc3QgwqslLjI1MHPCuyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjY2CisjLCBjLWZvcm1hdAorbXNnaWQgInZhbHVlIGZvciBgY29uZmZpbGVzJyBoYXMgbWFsZm9ybWF0dGVkIGxpbmUgYCUuKnMnIgorbXNnc3RyICJ2ZXJkaWVuIGZvciDCq2NvbmZmaWxlc8K7IGhhciBlbiBsaW5qZSBtZWQgdWd5bGRpZyBmb3JtYXQgwqslLipzwrsiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjI4NworIywgYy1mb3JtYXQKK21zZ2lkICJ2YWx1ZSBmb3IgYGNvbmZmaWxlcycgaGFzIGxpbmUgc3RhcnRpbmcgd2l0aCBub24tc3BhY2UgYCVjJyIKK21zZ3N0ciAidmVyZGllbiBmb3Igwqtjb25mZmlsZXPCuyBoYXIgZW4gbGluamUgc29tIHN0YXJ0ZXIgdXRlbiBtZWxsb21yb20gwqslY8K7IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzozMDQKK21zZ2lkICJyb290IG9yIG51bGwgZGlyZWN0b3J5IGlzIGxpc3RlZCBhcyBhIGNvbmZmaWxlIgorbXNnc3RyICJyb3QtIGVsbGVyIG51bGwta2F0YWxvZyBlciBuZXZudCBzb20gb3Bwc2V0dHNmaWwiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjM2NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgbWlzc2luZyBwYWNrYWdlIG5hbWUsIG9yIGdhcmJhZ2Ugd2hlcmUgcGFja2FnZSBuYW1lIGV4cGVjdGVkIgorbXNnc3RyICIiCisiwqslc8K7LWZlbHQsIG1hbmdsZW5kZSBwYWtrZW5hdm4gZWxsZXIgcm90IGRlciBkZXQgc2t1bGxlIHbDpnJlIGV0IHBha2tlbmF2biIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MzcwCisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgZmllbGQsIGludmFsaWQgcGFja2FnZSBuYW1lIGAlLjI1NXMnOiAlcyIKK21zZ3N0ciAiwqslc8K7LWZlbHQsIHVneWxkaWcgcGFra2VuYXZuIMKrJS4yNTVzwrs6ICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgYmFkIHZlcnNpb24gcmVsYXRpb25zaGlwICVjJWMiCittc2dzdHIgIiIKKyLCqyVzwrstZmVsdCwgcmVmZXJhbnNlIHRpbCDCqyUuMjU1c8K7OlxuIgorIiB1Z3lsZGlnIHZlcnNqb25zZm9yaG9sZCAlYyVjIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgYCVjJyBpcyBvYnNvbGV0ZSwgdXNlIGAlYz0nIG9yIGAlYyVjJyBpbnN0ZWFkIgorbXNnc3RyICIiCisiwqslc8K7LWZlbHQsIHJlZmVyYW5zZSB0aWwgwqslLjI1NXPCuzpcbiIKKyIgwqslY8K7IGVyIGZvcmVsZGV0LCBicnVrIMKrJWM9wrsgZWxsZXIgwqslYyVjwrsgaSBzdGVkZXQiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQyMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOlxuIgorIiBpbXBsaWNpdCBleGFjdCBtYXRjaCBvbiB2ZXJzaW9uIG51bWJlciwgc3VnZ2VzdCB1c2luZyBgPScgaW5zdGVhZCIKK21zZ3N0ciAiIgorIsKrJXPCuy1mZWx0LCByZWZlcmFuc2UgdGlsIMKrJS4yNTVzwrs6XG4iCisiIGltcGxpc2l0dCBuw7h5YWt0aWcgdHJlZmYgbWVkIHZlcnNqb25zbnVtbWVyLCBmb3Jlc2zDpXIgwqs9wrsgaSBzdGVkZXQiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQzMAorbXNnaWQgIk9ubHkgZXhhY3QgdmVyc2lvbnMgbWF5IGJlIHVzZWQgZm9yIFByb3ZpZGVzIgorbXNnc3RyICJCYXJlIG7DuHlha3RpZ2UgdmVyc2pvbmVyIGthbiBicnVrZXMgaSBQcm92aWRlcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6XG4iCisiIHZlcnNpb24gdmFsdWUgc3RhcnRzIHdpdGggbm9uLWFscGhhbnVtZXJpYywgc3VnZ2VzdCBhZGRpbmcgYSBzcGFjZSIKK21zZ3N0ciAiIgorIsKrJXPCuy1mZWx0LCByZWZlcmFuc2UgdGlsIMKrJS4yNTVzwrs6XG4iCisiIHZlcnNqb25zdmVyZGllbiBzdGFydGVyIG1lZCBldCBpa2tlLWFsZmFudW1lcmlzayB0ZWduLCBmb3Jlc2zDpXIgw6UgbGVnZ2UgdGlsICIKKyJldCBtZWxsb21yb20iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ1MSBsaWIvZHBrZy9maWVsZHMuYzo0NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOiB2ZXJzaW9uIGNvbnRhaW5zIGAlYyciCittc2dzdHIgIsKrJXPCuy1mZWx0LCByZWZlcmFuc2UgdGlsIMKrJS4yNTVzwrs6IHZlcnNqb24gaW5uZWhvbGRlciDCqyVjwrsiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ1OQorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6IHZlcnNpb24gdW50ZXJtaW5hdGVkIgorbXNnc3RyICLCqyVzwrstZmVsdCwgcmVmZXJhbnNlIHRpbCDCqyUuMjU1c8K7OiB2ZXJzam9uIGlra2UgYXZzbHV0dGV0IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvICclLjI1NXMnOiBlcnJvciBpbiB2ZXJzaW9uIgorbXNnc3RyICLCqyVzwrstZmVsdCwgcmVmZXJhbnNlIHRpbCDCqyUuMjU1c8K7OiBmZWlsIGkgdmVyc2pvbiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDc1CisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgZmllbGQsIHN5bnRheCBlcnJvciBhZnRlciByZWZlcmVuY2UgdG8gcGFja2FnZSBgJS4yNTVzJyIKK21zZ3N0ciAiwqslc8K7LWZlbHQsIHN5bnRha3NmZWlsIGV0dGVyIHJlZmVyYW5zZSB0aWwgcGFra2VuIMKrJS4yNTVzwrsiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ4MgorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZXMgKGB8Jykgbm90IGFsbG93ZWQgaW4gJXMgZmllbGQiCittc2dzdHIgImFsdGVybmF0aXYgKMKrfMK7KSBrYW4gaWtrZSBicnVrZXMgaSAlcy1mZWx0ZXQiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjUzNgorbXNnaWQgInZhbHVlIGZvciBgdHJpZ2dlcnMtcGVuZGluZycgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICIiCisidmVyZGllbiBmb3Igwqt1dGzDuHNlcmUtdXRlc3TDpWVuZGXCuy1mZWx0ZXQgZXIgaWtrZSB0aWxsYXR0IGkgZGVubmUgc2FtbWVuaGVuZ2VuIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWxsZWdhbCBwZW5kaW5nIHRyaWdnZXIgbmFtZSBgJS4yNTVzJzogJXMiCittc2dzdHIgInVneWxkaWcgbmF2biBmb3IgdXRlc3TDpWVuZGUgdXRsw7hzZXIgwqslLjI1NXPCuzogJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU0NworIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgcGVuZGluZyB0cmlnZ2VyIGAlLjI1NXMnIgorbXNnc3RyICJkdXBsaWthdCB1dGVzdMOlZW5kZSB1dGzDuHNlciDCqyUuMjU1c8K7IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NjEKK21zZ2lkICJ2YWx1ZSBmb3IgYHRyaWdnZXJzLWF3YWl0ZWQnIGZpZWxkIG5vdCBhbGxvd2VkIGluIHRoaXMgY29udGV4dCIKK21zZ3N0ciAiIgorInZlcmRpZW4gZm9yIMKrdHJpZ2dlcnMtZm9ydmVudGV0wrstZmVsdGV0IGVyIGlra2UgdGlsbGF0dCBpIGRlbm5lIHNhbW1lbmhlbmdlbiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTY4CisjLCBjLWZvcm1hdAorbXNnaWQgImlsbGVnYWwgcGFja2FnZSBuYW1lIGluIGF3YWl0ZWQgdHJpZ2dlciBgJS4yNTVzJzogJXMiCittc2dzdHIgInVneWxkaWcgcGFra2VuYXZuIGkgZm9ydmVudGV0IHV0bMO4c2VyIMKrJS4yNTVzwrs6ICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIGF3YWl0ZWQgdHJpZ2dlciBwYWNrYWdlIGAlLjI1NXMnIgorbXNnc3RyICJkdXBsaWthdCBmb3J2ZW50ZXQgdXRsw7hzZXJwYWtrZSDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy9maWxlLmM6NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgc291cmNlIGZpbGUgJyUuMjUwcyciCittc2dzdHIgImtsYXJ0ZSBpa2tlIGZpbm5lIChzdGF0KSBraWxkZWZpbGEgwqslLjI1MHPCuyIKKworIzogbGliL2Rwa2cvZmlsZS5jOjU1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGFuZ2Ugb3duZXJzaGlwIG9mIHRhcmdldCBmaWxlICclLjI1MHMnIgorbXNnc3RyICJrbGFydGUgaWtrZSBlbmRyZSBlaWVyc2thcCBww6UgbcOlbGZpbGEgwqslLjI1MHPCuyIKKworIzogbGliL2Rwa2cvZmlsZS5jOjU5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgbW9kZSBvZiB0YXJnZXQgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAia2xhcnRlIGlra2Ugc2V0dGUgbW9kdXMgcMOlIG3DpWxmaWxhIMKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzo4NQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHVubG9jayAlczogJXMiCittc2dpZCAidW5hYmxlIHRvIHVubG9jayAlcyIKK21zZ3N0ciAia2xhcnRlIGlra2UgZmplcm5lIGzDpXMgcMOlICVzOiAlcyIKKworIzogbGliL2Rwa2cvZmlsZS5jOjExMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hlY2sgZmlsZSAnJXMnIGxvY2sgc3RhdHVzIgorbXNnc3RyICJrbGFydGUgaWtrZSBzamVra2UgZmlsYSDCqyVzwrsgc2luIGzDpXNlc3RhdHVzIgorCisjOiBsaWIvZHBrZy9maWxlLmM6MTQ2CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJzdGF0dXMgZGF0YWJhc2UgYXJlYSBpcyBsb2NrZWQgYnkgYW5vdGhlciBwcm9jZXNzIgorbXNnaWQgIiVzIGlzIGxvY2tlZCBieSBhbm90aGVyIHByb2Nlc3MiCittc2dzdHIgInN0YXR1c2RhdGFiYXNlb21yw6VkZXQgZXIgbMOlc3QgYXYgZW4gYW5uZW4gcHJvc2VzcyIKKworIzogbGliL2Rwa2cvZmlsZS5jOjE0OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHVubG9jayAlczogJXMiCittc2dpZCAidW5hYmxlIHRvIGxvY2sgJXMiCittc2dzdHIgImtsYXJ0ZSBpa2tlIGZqZXJuZSBsw6VzIHDDpSAlczogJXMiCisKKyM6IGxpYi9kcGtnL2xvZy5jOjUzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkbid0IG9wZW4gbG9nIGAlcyc6ICVzXG4iCittc2dzdHIgImtsYXJ0ZSBpa2tlIMOlcG5lIGxvZ2cgwqslc8K7OiAlc1xuIgorCisjOiBsaWIvZHBrZy9sb2cuYzo4NQorbXNnaWQgIjxwYWNrYWdlIHN0YXR1cyBhbmQgcHJvZ3Jlc3MgZmlsZSBkZXNjcmlwdG9yPiIKK21zZ3N0ciAiPHBha2tlc3RhdHVzIG9nIGZyZW1kcmlmdHNmaWxpbmRpa2F0b3I+IgorCisjOiBsaWIvZHBrZy9sb2cuYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIHRvIHN0YXR1cyBmZCAlZCIKK21zZ3N0ciAia2xhcnRlIGlra2Ugc2tyaXZlIHRpbCBzdGF0dXMgZmQgJWQiCisKKyM6IGxpYi9kcGtnL21saWIuYzo0NCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJyZWFsbG9jIGZhaWxlZCAoJXp1IGJ5dGVzKSIKK21zZ2lkICJtYWxsb2MgZmFpbGVkICglenUgYnl0ZXMpIgorbXNnc3RyICJueXRpbGRlbGluZyBtaXNseWt0ZXMgKCV6dSBieXRlKSIKKworIzogbGliL2Rwa2cvbWxpYi5jOjU4CisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWxsb2MgZmFpbGVkICglenUgYnl0ZXMpIgorbXNnc3RyICJueXRpbGRlbGluZyBtaXNseWt0ZXMgKCV6dSBieXRlKSIKKworIzogbGliL2Rwa2cvbWxpYi5jOjcyIGxpYi9kcGtnL21saWIuYzo5MCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6Mjc3CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MzM0IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTA3Cittc2dpZCAiZmFpbGVkIHRvIGFsbG9jYXRlIG1lbW9yeSIKK21zZ3N0ciAia2xhcnRlIGlra2UgYWxsb2tlcmUgbWlubmUiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGR1cCBmb3Igc3RkJXMiCittc2dzdHIgImtsYXJ0ZSBpa2tlIHV0ZsO4cmUgwqtkdXDCuyBmb3Igc3RkJXMiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGR1cCBmb3IgZmQgJWQiCittc2dzdHIgImtsYXJ0ZSBpa2tlIHV0ZsO4cmUgwqtkdXDCuyBmb3IgZmQgJWQiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMDkKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHBpcGUiCittc2dzdHIgImtsYXJ0ZSBpa2tlIG9wcHJldHRlIHLDuHIiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igd3JpdGluZyB0byAnJXMnIgorbXNnc3RyICJmZWlsIHZlZCBza3JpdmluZyB0aWwgwqslc8K7IgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIGZpbGVkZXNjcmlwdG9yIGZsYWdzIGZvciAlLjI1MHMiCittc2dzdHIgImtsYXJ0ZSBpa2tlIGxlc2UgZmlsZGVza3JpcHRvcmZsYWdnIGZvciAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMjYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNldCBjbG9zZS1vbi1leGVjIGZsYWcgZm9yICUuMjUwcyIKK21zZ3N0ciAia2xhcnRlIGlra2Ugc2V0dGUgZmxhZ2dldCDCq2Nsb3NlLW9uLWV4ZWPCuyBmb3IgJS4yNTBzIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmlndXJhdGlvbiBlcnJvcjogJXM6JWQ6ICVzIgorbXNnc3RyICJvcHBzZXR0c2ZlaWw6ICVzOiVkOiAlcyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjc1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuIGNvbmZpZ3VyYXRpb24gZmlsZSAnJS4yNTVzJyBmb3IgcmVhZGluZzogJXMiCittc2dzdHIgImtsYXJ0ZSBpa2tlIMOlcG5lIG9wcHNldHRzZmlsYSDCqyUuMjU1c8K7IGZvciBsZXNpbmc6ICVzIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYmFsYW5jZWQgcXVvdGVzIGluICclcyciCittc2dzdHIgInViYWxhbnNlcnQgc2l0YXR0ZWduIGkgwqslc8K7IgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTE3CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gb3B0aW9uICclcyciCittc2dzdHIgInVramVudCB2YWxnIMKrJXPCuyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjEyMQorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIG5lZWRzIGEgdmFsdWUiCittc2dzdHIgIsKrJXPCuyB0cmVuZ2VyIGVuIHZlcmRpIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTI3CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgZG9lcyBub3QgdGFrZSBhIHZhbHVlIgorbXNnc3RyICLCqyVzwrsgc2thbCBpa2tlIGhhIG5vZW4gdmVyZGkiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVhZCBlcnJvciBpbiBjb25maWd1cmF0aW9uIGZpbGUgYCUuMjU1cyciCittc2dzdHIgImxlc2VmZWlsIGkgb3Bwc2V0dHNmaWxhIMKrJS4yNTVzwrsiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyBjb25maWd1cmF0aW9uIGZpbGUgYCUuMjU1cyciCittc2dzdHIgImZlaWwgdmVkIGx1a2tpbmcgYXYgb3Bwc2V0dHNmaWxhIMKrJS4yNTVzwrsiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxNzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igb3BlbmluZyBjb25maWd1cmF0aW9uIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICJmZWlsIHZlZCDDpXBuaW5nIGF2IG9wcHNldHRzbWFwcGEgwqslc8K7IgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjI4CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gb3B0aW9uIC0tJXMiCittc2dzdHIgInVramVudCB2YWxnIC0tJXMiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBvcHRpb24gdGFrZXMgYSB2YWx1ZSIKK21zZ3N0ciAidmFsZ2V0IC0tJXMgdHJlbmdlciBlbiBwYXJhbWV0ZXIiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBvcHRpb24gZG9lcyBub3QgdGFrZSBhIHZhbHVlIgorbXNnc3RyICJ2YWxnZXQgLS0lcyBza2FsIGlra2UgaGEgbm9lbiBwYXJhbWV0ZXIiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyNDUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gLSVjIgorbXNnc3RyICJ1a2plbnQgdmFsZyAtJWMiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLSVjIG9wdGlvbiB0YWtlcyBhIHZhbHVlIgorbXNnc3RyICJ2YWxnZXQgLSVjIHRyZW5nZXIgZW4gcGFyYW1ldGVyIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjU4CisjLCBjLWZvcm1hdAorbXNnaWQgIi0lYyBvcHRpb24gZG9lcyBub3QgdGFrZSBhIHZhbHVlIgorbXNnc3RyICJ2YWxnZXQgLSVjIHNrYWwgaWtrZSBoYSBub2VuIHBhcmFtZXRlciIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI3MQorIywgYy1mb3JtYXQKK21zZ2lkICJvYnNvbGV0ZSBvcHRpb24gJy0tJXMnXG4iCittc2dzdHIgImZvcmVsZGV0IHZhbGcgwqstLSVzwrtcbiIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI4NworIywgYy1mb3JtYXQKK21zZ2lkICJjb25mbGljdGluZyBhY3Rpb25zIC0lYyAoLS0lcykgYW5kIC0lYyAoLS0lcykiCittc2dzdHIgImhhbmRsaW5nZXIgaSBrb25mbGlrdCAtJWMgKC0tJXMpIG9nIC0lYyAoLS0lcykiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSB2YWx1ZSBmb3IgYCVzJyBmaWVsZCIKK21zZ3N0ciAidmVyZGllbiBmb3IgZmVsdGV0IMKrJXPCuyBmaW5uZXMgbWVyIGVubiDDqW4gZ2FuZyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoxNDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidXNlci1kZWZpbmVkIGZpZWxkIG5hbWUgYCUuKnMnIHRvbyBzaG9ydCIKK21zZ3N0ciAiZGV0IGJydWtlcmRlZmluZXJ0ZSBmZWx0bmF2bmV0IMKrJS4qc8K7IGVyIGZvciBrb3J0IgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgdmFsdWUgZm9yIHVzZXItZGVmaW5lZCBmaWVsZCBgJS4qcyciCittc2dzdHIgImRldCBicnVrZXJkZWZpbmVydGUgZmVsdGV0IMKrJS4qc8K7IGZpbnMgbWVyIGVubiDDqW4gZ2FuZyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMDcKK21zZ2lkICJDb25maWd1cmVkLVZlcnNpb24gZm9yIHBhY2thZ2Ugd2l0aCBpbmFwcHJvcHJpYXRlIFN0YXR1cyIKK21zZ3N0ciAiT3Bwc2F0dCB2ZXJzam9uIGZvciBwYWtrZSBtZWQgc3RhdHVzIHNvbSBpa2tlIHBhc3NlciIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzICVzIGJ1dCB0cmlnZ2VycyBhcmUgYXdhaXRlZCIKK21zZ3N0ciAicGFra2VuIGhhciBzdGF0dXMgJXMsIG1lbiBoYXIgdmVudGVuZGUgdXRsw7hzZXJlIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjIyMgorbXNnaWQgInBhY2thZ2UgaGFzIHN0YXR1cyB0cmlnZ2Vycy1hd2FpdGVkIGJ1dCBubyB0cmlnZ2VycyBhd2FpdGVkIgorbXNnc3RyICJwYWtrZW4gaGFyIHN0YXR1cyB1dGzDuHNlcmUtdmVudGVuZGUsIG1lbiBpbmdlbiB2ZW50ZW5kZSB1dGzDuHNlcmUiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjI4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgaGFzIHN0YXR1cyAlcyBidXQgdHJpZ2dlcnMgYXJlIHBlbmRpbmciCittc2dzdHIgInBha2tlbiBoYXIgc3RhdHVzICVzLCBtZW4gaGFyIHV0ZXN0w6VlbmRlIHV0bMO4c2VyZSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMzIKK21zZ2lkICJwYWNrYWdlIGhhcyBzdGF0dXMgdHJpZ2dlcnMtcGVuZGluZyBidXQgbm8gdHJpZ2dlcnMgcGVuZGluZyIKK21zZ3N0ciAicGFra2VuIGhhciBzdGF0dXMgdXRsw7hzZXJlLXV0ZXN0w6VlbmRlLCBtZW4gaW5nZW4gdXRlc3TDpWVuZGUgdXRsw7hzZXJlIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjI0MgorbXNnaWQgIlBhY2thZ2Ugd2hpY2ggaW4gc3RhdGUgbm90LWluc3RhbGxlZCBoYXMgY29uZmZpbGVzLCBmb3JnZXR0aW5nIHRoZW0iCittc2dzdHIgIkVuIHBha2tlIHNvbSBpa2tlIGVyIGluc3RhbGxlcnQgaGFyIG9wcHNldHRzZmlsZXIuRGUgYmxpciBpZ25vcmVydCIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozMzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gcGFja2FnZSBpbmZvIGZpbGUgYCUuMjU1cycgZm9yIHJlYWRpbmciCittc2dzdHIgImtsYXJ0ZSBpa2tlIMOlcG5lIHBha2tlaW5mb2ZpbGEgwqslLjI1NXPCuyBmb3IgbGVzaW5nIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjM0MQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW4ndCBzdGF0IHBhY2thZ2UgaW5mbyBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICJmaW5uZXIgaWtrZSBwYWtrZWluZm9maWxhIMKrJS4yNTVzwrsiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzQ3CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbid0IG1tYXAgcGFja2FnZSBpbmZvIGZpbGUgYCUuMjU1cyciCittc2dzdHIgImtsYXJ0ZSBpa2tlIGtqw7hyZSDCq21tYXDCuyBww6UgcGFra2VpbmZvZmlsYSDCqyUuMjU1c8K7IgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjM1MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiY2FuJ3Qgc3RhdCBwYWNrYWdlIGluZm8gZmlsZSBgJS4yNTVzJyIKK21zZ2lkICJyZWFkaW5nIHBhY2thZ2UgaW5mbyBmaWxlICclLjI1NXMnIgorbXNnc3RyICJmaW5uZXIgaWtrZSBwYWtrZWluZm9maWxhIMKrJS4yNTVzwrsiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzYzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjbG9zZSBhZnRlciByZWFkOiBgJS4yNTVzJyIKK21zZ3N0ciAia2xhcnRlIGlra2UgbHVra2UgZXR0ZXIgbGVzaW5nOiDCqyUuMjU1c8K7IgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQwNAorIywgYy1mb3JtYXQKK21zZ2lkICJFT0YgYWZ0ZXIgZmllbGQgbmFtZSBgJS4qcyciCittc2dzdHIgInNsdXR0IHDDpSBmaWxhIGV0dGVyIGZlbHRuYXZuIMKrJS4qc8K7IgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQwNworIywgYy1mb3JtYXQKK21zZ2lkICJuZXdsaW5lIGluIGZpZWxkIG5hbWUgYCUuKnMnIgorbXNnc3RyICJsaW5qZXNraWZ0IGkgZmVsdG5hdm4gwqslLipzwrsiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDEwCisjLCBjLWZvcm1hdAorbXNnaWQgIk1TRE9TIEVPRiAoXlopIGluIGZpZWxkIG5hbWUgYCUuKnMnIgorbXNnc3RyICJNUy1ET1Mtc2x1dHQgcMOlIGZpbGEgKF5aKSBpIGZlbHRuYXZuIMKrJS4qc8K7IgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQxNAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWVsZCBuYW1lIGAlLipzJyBtdXN0IGJlIGZvbGxvd2VkIGJ5IGNvbG9uIgorbXNnc3RyICJmZWx0bmF2bmV0IMKrJS4qc8K7IHNrYWwgZsO4bGdlcyBhdiBldCBrb2xvbiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiRU9GIGJlZm9yZSB2YWx1ZSBvZiBmaWVsZCBgJS4qcycgKG1pc3NpbmcgZmluYWwgbmV3bGluZSkiCittc2dzdHIgIiIKKyJzbHV0dCBww6UgZmlsIGbDuHIgdmVyZGllbiB0aWwgZmVsdGV0IMKrJS4qc8K7IChtYW5nbGVyIGxpbmplc2tpZnQgdGlsIHNsdXR0KSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiTVNET1MgRU9GIGNoYXIgaW4gdmFsdWUgb2YgZmllbGQgYCUuKnMnIChtaXNzaW5nIG5ld2xpbmU/KSIKK21zZ3N0ciAiIgorIk1TRE9TLXRlZ24gZm9yIHNsdXR0IHDDpSBmaWwgaSB2ZXJkaWVuIGZvciBmZWx0ZXQgwqslLipzwrsgKG1hbmdsZXIgbGluamVza2lmdD8pIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQ0MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAibmV3bGluZSBpbiBmaWVsZCBuYW1lIGAlLipzJyIKK21zZ2lkICJibGFuayBsaW5lIGluIHZhbHVlIG9mIGZpZWxkICclLipzJyIKK21zZ3N0ciAibGluamVza2lmdCBpIGZlbHRuYXZuIMKrJS4qc8K7IgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQ2MQorIywgYy1mb3JtYXQKK21zZ2lkICJFT0YgZHVyaW5nIHZhbHVlIG9mIGZpZWxkIGAlLipzJyAobWlzc2luZyBmaW5hbCBuZXdsaW5lKSIKK21zZ3N0ciAiIgorInNsdXR0IHDDpSBmaWwgaSB2ZXJkaWVuIGZvciBmZWx0ZXQgwqslLipzwrsgKG1hbmdsZXIgYXZzbHV0dGVuZGUgbGluamVza2lmdCkiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NTQ2Cittc2dpZCAic2V2ZXJhbCBwYWNrYWdlIGluZm8gZW50cmllcyBmb3VuZCwgb25seSBvbmUgYWxsb3dlZCIKK21zZ3N0ciAiZmFudCBmbGVyZSBwYWtrZWluZm9ybWFzam9uc29wcGbDuHJpbmdlciwga2FuIGJhcmUgaGEgZW4iCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NTcyCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHBhY2thZ2UgaW5mb3JtYXRpb24gaW4gYCUuMjU1cyciCittc2dzdHIgImluZ2VuIHBha2tlaW5mb3JtYXNqb24gaSDCqyUuMjU1c8K7IgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzo0NQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiVzLCBpbiBmaWxlICclLjI1NXMnIG5lYXIgbGluZSAlZCBwYWNrYWdlICclLjI1NXMnOlxuIgorI3wgIiAiCittc2dpZCAiIgorInBhcnNpbmcgZmlsZSAnJS4yNTVzJyBuZWFyIGxpbmUgJWQgcGFja2FnZSAnJS4yNTVzJzpcbiIKKyIgJS4yNTVzIgorbXNnc3RyICIiCisiJXMsIGkgZmlsYSDCqyUuMjU1c8K7IG7DpnIgbGluamUgJWQgcGFra2UgwqslLjI1NXPCuzpcbiIKKyIgIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzo0OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiVzLCBpbiBmaWxlICclLjI1NXMnIG5lYXIgbGluZSAlZDpcbiIKKyN8ICIgIgorbXNnaWQgIiIKKyJwYXJzaW5nIGZpbGUgJyUuMjU1cycgbmVhciBsaW5lICVkOlxuIgorIiAlLjI1NXMiCittc2dzdHIgIiIKKyIlcywgaSBmaWxhIMKrJS4yNTVzwrsgbsOmciBsaW5qZSAlZDpcbiIKKyIgIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoxMjUKK21zZ2lkICJtYXkgbm90IGJlIGVtcHR5IHN0cmluZyIKK21zZ3N0ciAia2FuIGlra2UgdsOmcmUgZW4gdG9tIHN0cmVuZyIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MTI3CisjLCBmdXp6eQorI3wgbXNnaWQgIm11c3Qgc3RhcnQgd2l0aCBhbiBhbHBoYW51bWVyaWMiCittc2dpZCAibXVzdCBzdGFydCB3aXRoIGFuIGFscGhhbnVtZXJpYyBjaGFyYWN0ZXIiCittc2dzdHIgIm3DpSBzdGFydGUgbWVkIGV0IGFsZmFudW1lcmlzayB0ZWduIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoxMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2hhcmFjdGVyIGAlYycgbm90IGFsbG93ZWQgKG9ubHkgbGV0dGVycywgZGlnaXRzIGFuZCBjaGFyYWN0ZXJzIGAlcycpIgorbXNnc3RyICJ0ZWduZXQgwqslY8K7IGlra2UgdGlsbGF0dCAoYmFyZSBib2tzdGF2ZXIsIHNpZmZlciBvZyB0ZWduZW5lIMKrJXPCuykiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjE3OAorIywgZnV6enkKKyN8IG1zZ2lkICI8bm9uZT4iCittc2djdHh0ICJ2ZXJzaW9uIgorbXNnaWQgIjxub25lPiIKK21zZ3N0ciAiPGluZ2VuPiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjA5Cittc2dpZCAidmVyc2lvbiBzdHJpbmcgaXMgZW1wdHkiCittc2dzdHIgInZlcnNqb25zc3RyZW5nZW4gZXIgdG9tIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyMjQKK21zZ2lkICJ2ZXJzaW9uIHN0cmluZyBoYXMgZW1iZWRkZWQgc3BhY2VzIgorbXNnc3RyICJ2ZXJzam9uc3N0cmVuZ2VuIGlubmVob2xkZXIgbWVsbG9tcm9tIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyMzAKK21zZ2lkICJlcG9jaCBpbiB2ZXJzaW9uIGlzIG5vdCBudW1iZXIiCittc2dzdHIgImVwb2tlbiBpIHZlcnNqb25lbiBlciBpa2tlIGV0IHRhbGwiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjIzMgorbXNnaWQgIm5vdGhpbmcgYWZ0ZXIgY29sb24gaW4gdmVyc2lvbiBudW1iZXIiCittc2dzdHIgImluZ2VudGluZyBldHRlciBrb2xvbmV0IGkgdmVyc2pvbnNudW1tZXJldCIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjQ3Cittc2dpZCAidmVyc2lvbiBudW1iZXIgZG9lcyBub3Qgc3RhcnQgd2l0aCBkaWdpdCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyNTAKK21zZ2lkICJpbnZhbGlkIGNoYXJhY3RlciBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAidWd5bGRpZyB0ZWduIGkgdmVyc2pvbnNudW1tZXJldCIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjU0Cittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgaW4gcmV2aXNpb24gbnVtYmVyIgorbXNnc3RyICJ1Z3lsZGlnIHRlZ24gaSByZXZpc2pvbnNudW1tZXJldCIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6Mjk5IGxpYi9kcGtnL3BhcnNlaGVscC5jOjMxMQorIywgYy1mb3JtYXQKK21zZ2lkICJtaXNzaW5nICVzIgorbXNnc3RyICJtYW5nbGVyICVzIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzozMDEgbGliL2Rwa2cvcGFyc2VoZWxwLmM6MzE0CisjLCBjLWZvcm1hdAorbXNnaWQgImVtcHR5IHZhbHVlIGZvciAlcyIKK21zZ3N0ciAidG9tIHZlcmRpIGZvciAlcyIKKworIzogbGliL2Rwa2cvcGtnLWZvcm1hdC5jOjgwCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgY2hhcmFjdGVyIGAlYycgaW4gZmllbGQgd2lkdGhcbiIKK21zZ3N0ciAidWd5bGRpZyB0ZWduIMKrJWPCuyBpIGZlbHRicmVkZGVuXG4iCisKKyM6IGxpYi9kcGtnL3BrZy1mb3JtYXQuYzoxNzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2xvc2luZyBicmFjZSBtaXNzaW5nIGluIGZvcm1hdFxuIgorbXNnc3RyICJIw7h5cmVwYXJlbnRlcyBtYW5nbGVyIGkgZm9ybWF0ZXRcbiIKKworIzogbGliL2Rwa2cvcGtnLXNob3cuYzo0MAorbXNnaWQgIihubyBkZXNjcmlwdGlvbiBhdmFpbGFibGUpIgorbXNnc3RyICIoaW5nZW4gYmVza3JpdmVsc2UgdGlsZ2plbmdlbGlnKSIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjU1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpZ25vcmUgc2lnbmFsICVzIGJlZm9yZSBydW5uaW5nICUuMjUwcyIKK21zZ3N0ciAia2xhcnRlIGlra2UgaWdub3JlcmUgc2lnbmFsZXQgJXMgZsO4ciAlLjI1MHMgYmxlIGtqw7hydCIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjY4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHVuLWNhdGNoaW5nIHNpZ25hbCAlczogJXNcbiIKK21zZ3N0ciAiZmVpbCB2ZWQgYmxva2tlcmluZyBhdiBzaWduYWxldCAlczogJXNcbiIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjc4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIChzdWJwcm9jZXNzKTogJXNcbiIKK21zZ3N0ciAiJXMgKHVuZGVycHJvc2Vzcyk6ICVzXG4iCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzo4OSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NDU0Cittc2dpZCAiZm9yayBmYWlsZWQiCittc2dzdHIgImZvcmtpbmcgbWlzbHlrdGVzIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTE5CisjLCBjLWZvcm1hdAorbXNnaWQgInN1YnByb2Nlc3MgJXMgcmV0dXJuZWQgZXJyb3IgZXhpdCBzdGF0dXMgJWQiCittc2dzdHIgInVuZGVycHJvc2Vzc2VuICVzIHJldHVybmVydGUgZmVpbHN0YXR1cyAlZCIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEyOAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAid2FpdCBmb3Igc3VicHJvY2VzcyAlcyBmYWlsZWQiCittc2dpZCAic3VicHJvY2VzcyAlcyB3YXMgaW50ZXJydXB0ZWQiCittc2dzdHIgImtsYXJ0ZSBpa2tlIHZlbnRlIHDDpSB1bmRlcnByb3Nlc3NlbiAlcyIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEzMAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic3VicHJvY2VzcyAlcyBraWxsZWQgYnkgc2lnbmFsICglcyklcyIKK21zZ2lkICJzdWJwcm9jZXNzICVzIHdhcyBraWxsZWQgYnkgc2lnbmFsICglcyklcyIKK21zZ3N0ciAidW5kZXJwcm9zZXNzZW4gJXMgZHJlcHQgbWVkIHNpZ25hbCAoJXMpJXMiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMzIKK21zZ2lkICIsIGNvcmUgZHVtcGVkIgorbXNnc3RyICIsICBsYWdyZXQgbWlubmV0IgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgInN1YnByb2Nlc3MgJXMgZmFpbGVkIHdpdGggd2FpdCBzdGF0dXMgY29kZSAlZCIKK21zZ3N0ciAidW5kZXJwcm9zZXNzZW4gJXMgbWlzbHlrdGVzIG1lZCB2ZW50ZXN0YXR1c2tvZGUgJWQiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxNTEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQ2MQorIywgYy1mb3JtYXQKK21zZ2lkICJ3YWl0IGZvciBzdWJwcm9jZXNzICVzIGZhaWxlZCIKK21zZ3N0ciAia2xhcnRlIGlra2UgdmVudGUgcMOlIHVuZGVycHJvc2Vzc2VuICVzIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDo3MgorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHBhY2thZ2UgbmFtZSBgJS4yNTBzJyBpbiB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJ1Z3lsZGlnIHBha2tlbmF2biDCqyUuMjUwc8K7IGkgZmlsYSDCqyUuMjUwc8K7IGZvciB1dHNhdHR0ZSB1dGzDuHNlcmUiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjgxCisjLCBjLWZvcm1hdAorbXNnaWQgInRydW5jYXRlZCB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJ0cnVua2VydGUgZmlsIGZvciB1dHNhdHR0ZSB1dGzDuHNlcmUgwqslLjI1MHPCuyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yIGluIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcycgYXQgY2hhcmFjdGVyIGAlcyclcyIKK21zZ3N0ciAic3ludGFrc2ZlaWwgaSBmaWxhIMKrJS4yNTBzwrsgZm9yIHV0c2F0dHRlIHV0bMO4c2VyZSB2ZWQgdGVnbiDCqyVzwrslcyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuL2NyZWF0ZSB0cmlnZ2VycyBsb2NrZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia2xhcnRlIGlra2Ugw6VwbmUvb3BwcmV0dGUgbMOlc2VmaWxhIMKrJS4yNTBzwrsgZm9yIHV0bMO4c2VyZSIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MTQxCisjLCBmdXp6eQorI3wgbXNnaWQgInRyaWdnZXJlZCIKK21zZ2lkICJ0cmlnZ2VycyBhcmVhIgorbXNnc3RyICJ1dGzDuHN0IgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiZmFudCBpa2tlIGZpbCBmb3IgdXRzYXR0dGUgdXRsw7hzZXJlIMKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjE2NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrbGFydGUgaWtrZSDDpXBuZSBmaWxhIMKrJS4yNTBzwrsgZm9yIHV0c2F0dHRlIHV0bMO4c2VyZSIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MTc5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuL2NyZWF0ZSBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia2xhcnRlIGlra2Ugw6VwbmUvb3BwcmV0dGUgbnkgZmlsIMKrJS4yNTBzwrsgZm9yIHV0c2F0dHRlIHV0bMO4c2VyZSIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MjE1CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHJlYWRpbmcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiZmVpbCB2ZWQgbGVzaW5nIGF2IGZpbGEgwqslLjI1MHPCuyBmb3IgdXRzYXR0dGUgdXRsw7hzZXJlIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoyMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ldyB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrbGFydGUgaWtrZSBza3JpdmUgZGVuIG55ZSBmaWxhIMKrJS4yNTBzwrsgZm9yIHV0c2F0dHRlIHV0bMO4c2VyZSIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MjI4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia2xhcnRlIGlra2UgbHVra2UgZGVuIG55ZSBmaWxhIMKrJS4yNTBzwrsgZm9yIHV0c2F0dHRlIHV0bMO4c2VyZSIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MjMyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrbGFydGUgaWtrZSBpbnN0YWxsZXJlIGRlbiBueWUgZmlsYSDCqyUuMjU1c8K7IGZvciB1dHNhdHR0ZSB1dGzDuHNlcmUiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzoyMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImludmFsaWQgb3IgdW5rbm93biBzeW50YXggaW4gdHJpZ2dlciBuYW1lIGAlLjI1MHMnIChpbiB0cmlnZ2VyIGludGVyZXN0cyBmb3IgIgorInBhY2thZ2UgYCUuMjUwcycpIgorbXNnc3RyICIiCisidWd5bGRpZyBlbGxlciB1a2plbnQgc3ludGFrcyBpIHV0bMO4c2VybmF2biDCqyUuMjUwc8K7IChpIHV0bMO4c2VyaW50ZXJlc3NlciBmb3IgIgorInBha2tlbiDCqyUuMjUwc8K7KSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjI2MworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiB0cmlnZ2VyIGludGVyZXN0IGxpc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia2xhcnRlIGlra2Ugw6VwbmUgZmlsYSDCqyUuMjUwc8K7IG1lZCBsaXN0ZSBvdmVyIHV0bMO4c2VyaW50ZXJlc3NlciIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjI5MgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmV3aW5kIHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia2xhcnRlIGlra2Ugc3BvbGxlIHRpbGJha2UgZmlsYSDCqyUuMjUwc8K7IG1lZCB1dGzDuHNlcmludGVyZXNzZXIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyBzeW50YXggZXJyb3I7IGlsbGVnYWwgcGFja2FnZSBuYW1lIGAlLjI1MHMnOiAiCisiJS4yNTBzIgorbXNnc3RyICIiCisic3ludGFrc2ZlaWwgaSBmaWxhIMKrJS4yNTBzwrsgZm9yIG1lZCB1dGzDuHNlcmludGVyZXNzZXI7IHVneWxkaWcgcGFra2VuYXZuICIKKyLCqyUuMjUwc8K7OiAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgImtsYXJ0ZSBpa2tlIHNrcml2ZSBkZW4gbnllIGZpbGEgwqslLjI1MHPCuyBmb3IgdXRsw7hzZXJpbnRlcmVzc2VyIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzIxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlICclLjI1MHMnIgorbXNnc3RyICJrbGFydGUgaWtrZSB0w7htbWUgZGVuIG55ZSBmaWxhIMKrJS4yNTBzwrsgZm9yIHV0bMO4c2VyaW50ZXJlc3NlciIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMyNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlICclLjI1MHMnIgorbXNnc3RyICJrbGFydGUgaWtrZSBzeW5rcm9uaXNlcmUgZGVuIG55ZSBmaWxhIMKrJS4yNTBzwrsgZm9yIHV0bMO4c2VyaW50ZXJlc3NlciIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMzMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrbGFydGUgaWtrZSBpbnN0YWxsZXJlIGRlbiBueWUgZmlsYSDCqyUuMjUwc8K7IGZvciB1dGzDuHNlcmludGVyZXNzZXIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozNDAgbGliL2Rwa2cvdHJpZ2xpYi5jOjM0MiBsaWIvZHBrZy90cmlnbGliLmM6NDcyCisjOiBzcmMvcmVtb3ZlLmM6Mjg2IHNyYy9yZW1vdmUuYzozNzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlbW92ZSBgJS4yNTBzJyIKK21zZ3N0ciAia2xhcnRlIGlra2UgZmplcm5lIMKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozNjAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrbGFydGUgaWtrZSBvcHByZXR0ZSBkZW4gbnllIGZpbGEgwqslLjI1MHPCuyBmb3IgdXRsw7hzZXJpbnRlcmVzc2VyIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzgzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrbGFydGUgaWtrZSBsdWtrZSBkZW4gbnllIGZpbGEgwqslLjI1MHPCuyBmb3IgdXRsw7hzZXJpbnRlcmVzc2VyIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDU2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkdXBsaWNhdGUgZmlsZSB0cmlnZ2VyIGludGVyZXN0IGZvciBmaWxlbmFtZSBgJS4yNTBzJyBhbmQgcGFja2FnZSBgJS4yNTBzJyIKK21zZ3N0ciAiZHVwbGlrYXQgdXRsw7hzZXJpbnRlcmVzc2VmaWwgZm9yIGZpbG5hdm4gwqslLjI1MHPCuyBvZyBwYWtrZSDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDgzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia2xhcnRlIGlra2Ugb3BwcmV0dGUgZGVuIG55ZSBmaWxhIMKrJS4yNTBzwrsgbWVkIGZpbHV0bMO4c2VyZSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ5MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia2xhcnRlIGlra2Ugc2tyaXZlIGRlbiBueWUgZmlsYSDCqyUuMjUwc8K7IG1lZCBmaWx1dGzDuHNlcmUiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0OTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgJyUuMjUwcyciCittc2dzdHIgImtsYXJ0ZSBpa2tlIHTDuG1tZSBkZW4gbnllIGZpbGEgwqslLjI1MHPCuyBtZWQgZmlsdXRsw7hzZXJlIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDk5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzeW5jIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgJyUuMjUwcyciCittc2dzdHIgImtsYXJ0ZSBpa2tlIHN5bmtyb25pc2VyZSBkZW4gbnllIGZpbGEgwqslLjI1MHPCuyBtZWQgZmlsdXRsw7hzZXJlIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTAzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrbGFydGUgaWtrZSBsdWtrZSBkZW4gbnllIGZpbGEgwqslLjI1MHPCuyBtZWQgZmlsdXRsw7hzZXJlIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTA3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgYXMgYCUuMjUwcyciCittc2dzdHIgImtsYXJ0ZSBpa2tlIGluc3RhbGxlcmUgZGVuIG55ZSBmaWxhIMKrJS4yNTBzwrsgbWVkIGZpbHV0bMO4c2VyZSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjU0MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImtsYXJ0ZSBpa2tlIGxlc2UgZmlsYSDCqyUuMjUwc8K7IG1lZCBmaWx1dGzDuHNlcmUiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1NTIKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yIGluIGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAic3ludGFrc2ZlaWwgaSBmaWxhIMKrJS4yNTBzwrsgbWVkIGZpbHV0bMO4c2VyZSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjU2MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZmlsZSB0cmlnZ2VycyByZWNvcmQgbWVudGlvbnMgaWxsZWdhbCBwYWNrYWdlIG5hbWUgYCUuMjUwcycgKGZvciBpbnRlcmVzdCBpbiAiCisiZmlsZSBgJS4yNTBzJyk6ICUuMjUwcyIKK21zZ3N0ciAiIgorImZpbHV0bMO4c2Vyb3BwZsO4cmluZyBuZXZuZXIgdWd5bGRpZyBwYWtrZW5hdm4gwqslLjI1MHPCuyAoZm9yIGludGVyZXNzZSBpIGZpbGEgIgorIsKrJS4yNTBzwrspOiAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo2NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInRyaWdnZXJzIGNpIGZpbGUgYCUuMjUwcycgY29udGFpbnMgaWxsZWdhbCB0cmlnZ2VyIHN5bnRheCBpbiB0cmlnZ2VyIG5hbWUgYCIKKyIlLjI1MHMnOiAlLjI1MHMiCittc2dzdHIgIiIKKyJjaS11dGzDuHNlcmZpbGEgwqslLjI1MHPCuyBpbm5laG9sZGVyIHVsb3ZsaWcgc3ludGFrcyBpIHV0bMO4c2VybmF2biDCqyUuMjUwc8K7OiAiCisiJS4yNTBzIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Njg0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIHRyaWdnZXJzIGNpIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImtsYXJ0ZSBpa2tlIMOlcG5lIGNpLXV0bMO4c2VyZmlsYSDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Njk5Cittc2dpZCAidHJpZ2dlcnMgY2kgZmlsZSBjb250YWlucyB1bmtub3duIGRpcmVjdGl2ZSBzeW50YXgiCittc2dzdHIgImNpLXV0bMO4c2VyZmlsYSBpbm5laG9sZGVyIHVramVudCBkaXJla3RpdnN5bnRha3MiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo3MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJpZ2dlcnMgY2kgZmlsZSBjb250YWlucyB1bmtub3duIGRpcmVjdGl2ZSBgJS4yNTBzJyIKK21zZ3N0ciAiY2ktdXRsw7hzZXJmaWxhIGlubmVob2xkZXIgdWtqZW50IGRpcmVrdGl2IMKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo3NzYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSB0cmlnZ2VycyBzdGF0ZSBkaXJlY3RvcnkgYCUuMjUwcyciCittc2dzdHIgImtsYXJ0ZSBpa2tlIG9wcHJldHRlIG1hcHBlIMKrJS4yNTBzwrsgZm9yIHV0bMO4c2VydGlsc3RhbmQiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo3NzkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNldCBvd25lcnNoaXAgb2YgdHJpZ2dlcnMgc3RhdGUgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICJrbGFydGUgaWtrZSBzZXR0ZSBlaWVyIHDDpSBtYXBwZSDCqyUuMjUwc8K7IGZvciB1dGzDuHNlcnRpbHN0YW5kIgorCisjOiBsaWIvZHBrZy90cmlnbmFtZS5jOjM0Cittc2dpZCAiZW1wdHkgdHJpZ2dlciBuYW1lcyBhcmUgbm90IHBlcm1pdHRlZCIKK21zZ3N0ciAidG9tbWUgdXRsw7hzZXJuYXZuIGVyIGlra2UgdGlsbGF0dCIKKworIzogbGliL2Rwa2cvdHJpZ25hbWUuYzozOAorbXNnaWQgInRyaWdnZXIgbmFtZSBjb250YWlucyBpbnZhbGlkIGNoYXJhY3RlciIKK21zZ3N0ciAidXRsw7hzZXJuYXZuIGlubmVob2xkZXIgdWd5bGRpZyB0ZWduIgorCisjOiBsaWIvZHBrZy91dGlscy5jOjU2CisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWQgZXJyb3IgaW4gYCUuMjUwcyciCittc2dzdHIgImxlc2VmZWlsIGkgwqslLjI1MHPCuyIKKworIzogbGliL2Rwa2cvdXRpbHMuYzo2MQorIywgYy1mb3JtYXQKK21zZ2lkICJmZ2V0cyBnYXZlIGFuIGVtcHR5IHN0cmluZyBmcm9tIGAlLjI1MHMnIgorbXNnc3RyICJmZ2V0cyBnYSBlbiB0b20gc3RyZW5nIGZyYSDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy91dGlscy5jOjYzCisjLCBjLWZvcm1hdAorbXNnaWQgInRvby1sb25nIGxpbmUgb3IgbWlzc2luZyBuZXdsaW5lIGluIGAlLjI1MHMnIgorbXNnc3RyICJmb3IgbGFuZyBsaW5qZSBlbGxlciBtYW5nbGVuZGUgbGluamVza2lmdCBpIMKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL3V0aWxzLmM6NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgcmVhZGluZyBgJS4yNTBzJyIKK21zZ3N0ciAidXZlbnRldCBzbHV0dCBww6UgZmlsIHVuZGVyIGxlc2luZyBhdiDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy92YXJidWYuYzo4MiBsaWIvZHBrZy92YXJidWYuYzo4OAorbXNnaWQgImVycm9yIGZvcm1hdHRpbmcgc3RyaW5nIGludG8gdmFyYnVmIHZhcmlhYmxlIgorbXNnc3RyICJmZWlsIHZlZCBmb3JtYXRlcmluZyBhdiB0ZWtzdCBpbm4gaSB2YXJidWYtdmFyaWFiZWwiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjE3OSBzcmMvYXJjaGl2ZXMuYzoyMDAgc3JjL2FyY2hpdmVzLmM6NzI0Cittc2dpZCAiZXJyb3IgcmVhZGluZyBmcm9tIGRwa2ctZGViIHBpcGUiCittc2dzdHIgImZlaWwgdmVkIGxlc2luZyBmcmEgZHBrZy1kZWItcsO4ciIKKworIzogc3JjL2FyY2hpdmVzLmM6MTk1CisjLCBjLWZvcm1hdAorbXNnaWQgInNraXBwZWQgdW5wYWNraW5nIGZpbGUgJyUuMjU1cycgKHJlcGxhY2VkIG9yIGV4Y2x1ZGVkPykiCittc2dzdHIgImhvcHBldCBvdmVyIHV0cGFra2luZyBhdiBmaWxhIMKrJS4yNTVzwrsgKGJ5dHRldCB1dCBlbGxlciBla3NrbHVkZXJ0PykiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjI0NiBzcmMvYXJjaGl2ZXMuYzoyNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igc2V0dGluZyB0aW1lc3RhbXBzIG9mIGAlLjI1NXMnIgorbXNnc3RyICJmZWlsIHZlZCBzZXR0aW5nIGF2IHRpZHNtZXJrZSBmb3IgwqslLjI1NXPCuyIKKworIzogc3JjL2FyY2hpdmVzLmM6MjYyCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHNldHRpbmcgb3duZXJzaGlwIG9mIHN5bWxpbmsgYCUuMjU1cyciCittc2dzdHIgImZlaWwgdmVkIHNldHRpbmcgYXYgZWllcnNrYXAgZm9yIGRlbiBzeW1ib2xza2UgbGVua2VuIMKrJS4yNTVzwrsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjI2NSBzcmMvYXJjaGl2ZXMuYzo3MzQgc3JjL3N0YXRjbWQuYzoxNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igc2V0dGluZyBvd25lcnNoaXAgb2YgYCUuMjU1cyciCittc2dzdHIgImZlaWwgdmVkIHNldHRpbmcgYXYgZWllcnNrYXAgZm9yIMKrJS4yNTVzwrsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjI2NyBzcmMvYXJjaGl2ZXMuYzo3MzYgc3JjL3N0YXRjbWQuYzoxNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igc2V0dGluZyBwZXJtaXNzaW9ucyBvZiBgJS4yNTVzJyIKK21zZ3N0ciAiZmVpbCB2ZWQgc2V0dGluZyBhdiByZXR0aWdoZXRlciBmb3IgwqslLjI1NXPCuyIKKworIzogc3JjL2FyY2hpdmVzLmM6Mzk1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBzdGF0IChkZXJlZmVyZW5jZSkgZXhpc3Rpbmcgc3ltbGluayBgJS4yNTBzJyIKK21zZ3N0ciAiIgorImtsYXJ0ZSBpa2tlIChzdGF0KSBmaW5uZSBpbmZvcm1hc2pvbiBvbSBla3Npc3RlcmVuZGUgc3ltYm9sc2tlIGxlbmtlIMKrJS4yNTBzwrsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjQxNworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZmFpbGVkIHRvIHN0YXQgKGRlcmVmZXJlbmNlKSBwcm9wb3NlZCBuZXcgc3ltbGluayB0YXJnZXQgYCUuMjUwcycgZm9yICIKKyJzeW1saW5rIGAlLjI1MHMnIgorbXNnc3RyICIiCisia2xhcnRlIGlra2UgKHN0YXQpIGZpbm5lIGluZm9ybWFzam9uIG9tIGZvcmVzbMOldHQgbnl0dCBzeW1sZW5rZSBtw6VsIMKrJS4yNTBzwrsgIgorImZvciBzeW1sZW5rZSDCqyUuMjUwc8K7IgorCisjOiBzcmMvYXJjaGl2ZXMuYzo0NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInRyeWluZyB0byBvdmVyd3JpdGUgYCUuMjUwcycsIHdoaWNoIGlzIHRoZSBkaXZlcnRlZCB2ZXJzaW9uIG9mIGAiCisiJS4yNTBzJyAocGFja2FnZTogJS4xMDBzKSIKK21zZ3N0ciAiIgorInByw7h2ZXIgw6Ugc2tyaXZlIG92ZXIgwqslLjI1MHPCuywgc29tIGVyIGRlbiBvbWRpcmlnZXJ0ZSB2ZXJzam9uZW4gYXYgIgorIsKrJS4yNTBzwrsgKHBha2tlOiAlLjEwMHMpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo0ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJ5aW5nIHRvIG92ZXJ3cml0ZSBgJS4yNTBzJywgd2hpY2ggaXMgdGhlIGRpdmVydGVkIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dzdHIgIiIKKyJwcsO4dmVyIMOlIHNrcml2ZSBvdmVyIMKrJS4yNTBzwrssIHNvbSBlciBkZW4gb21kaXJpZ2VydGUgdmVyc2pvbmVuIGF2IMKrJS4yNTBzwrsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjUxMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBgJS4yNTVzJyAod2hpY2ggSSB3YXMgYWJvdXQgdG8gaW5zdGFsbCkiCittc2dzdHIgImZhbnQgaWtrZSDCqyUuMjU1c8K7IChzb20gamVnIHNrdWxsZSB0aWwgw6UgaW5zdGFsbGVyZSkiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjUxOQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidW5hYmxlIHRvIGNsZWFuIHVwIG1lc3Mgc3Vycm91bmRpbmcgYCUuMjU1cycgYmVmb3JlIGluc3RhbGxpbmcgYW5vdGhlciAiCisidmVyc2lvbiIKK21zZ3N0ciAiIgorImtsYXJ0ZSBpa2tlIHJ5ZGRlIG9wcCBpIHJvdGV0IHJ1bmR0IMKrJS4yNTVzwrsgZsO4ciBlbiBhbm5lbiB2ZXJzam9uIHNrdWxsZSAiCisiaW5zdGFsbGVyZXMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjUyNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCByZXN0b3JlZCBgJS4yNTVzJyBiZWZvcmUgaW5zdGFsbGluZyBhbm90aGVyIHZlcnNpb24iCittc2dzdHIgIiIKKyJmYW50IGlra2UgZ2plbm9wcHJldHRldCDCqyUuMjU1c8K7IGbDuHIgZW4gYW5uZW4gdmVyc2pvbiBza3VsbGUgaW5zdGFsbGVyZXMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjU2MQorIywgYy1mb3JtYXQKK21zZ2lkICJhcmNoaXZlIGNvbnRhaW5lZCBvYmplY3QgYCUuMjU1cycgb2YgdW5rbm93biB0eXBlIDB4JXgiCittc2dzdHIgImFya2l2ZXQgaW5uZWhvbGR0IG9iamVrdGV0IMKrJS4yNTVzwrsgbWVkIHVramVudCB0eXBlIDB4JXgiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjYyNiBzcmMvZGl2ZXJ0Y21kLmM6MTUwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo2ODIKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjIyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjg0CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTQ0MSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTY4MAorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxNjcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNDQKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTI3CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzdGF0IGZpbGUgJyVzJyIKK21zZ3N0ciAiZmFudCBpa2tlIGZpbCDCqyVzwrsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjY0MQorIywgYy1mb3JtYXQKK21zZ2lkICJSZXBsYWNpbmcgZmlsZXMgaW4gb2xkIHBhY2thZ2UgJXMgLi4uXG4iCittc2dzdHIgIkJ5dHRlciB1dCBmaWxlciBpIGRlbiBnYW1sZSBwYWtrZW4gJXMgLi4uXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjY0NQorIywgYy1mb3JtYXQKK21zZ2lkICJSZXBsYWNlZCBieSBmaWxlcyBpbiBpbnN0YWxsZWQgcGFja2FnZSAlcyAuLi5cbiIKK21zZ3N0ciAiQnl0dGV0IHV0IG1lZCBmaWxlciBpIGRlbiBpbnN0YWxsZXJ0ZSBwYWtrZW4gJXMgLi4uXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjY1NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidHJ5aW5nIHRvIG92ZXJ3cml0ZSBkaXJlY3RvcnkgJyUuMjUwcycgaW4gcGFja2FnZSAlLjI1MHMgJS4yNTBzIHdpdGggIgorIm5vbmRpcmVjdG9yeSIKK21zZ3N0ciAiIgorInByw7h2ZXIgw6Ugc2tyaXZlIG92ZXIga2F0YWxvZ2VuIMKrJS4yNTBzwrsgaSBwYWtrZW4gJS4yNTBzICUuMjUwcyBtZWQgbm9lIGFubmV0ICIKKyJlbm4gZW4ga2F0YWxvZyIKKworIzogc3JjL2FyY2hpdmVzLmM6NjYxCisjLCBjLWZvcm1hdAorbXNnaWQgInRyeWluZyB0byBvdmVyd3JpdGUgJyUuMjUwcycsIHdoaWNoIGlzIGFsc28gaW4gcGFja2FnZSAlLjI1MHMgJS4yNTBzIgorbXNnc3RyICJwcsO4dmVyIMOlIHNrcml2ZSBvdmVyIMKrJS4yNTBzwrsgc29tIG9nc8OlIGZpbm5lcyBpIHBha2tlbiAlLjI1MHMgJS4yNTBzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3MTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBgJS4yNTVzJyAod2hpbGUgcHJvY2Vzc2luZyBgJS4yNTVzJykiCittc2dzdHIgImtsYXJ0ZSBpa2tlIG9wcHJldHRlIMKrJS4yNTVzwrsgKHVuZGVyIGJlaGFuZGxpbmcgYXYgwqslLjI1NXPCuykiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjcxOAorIywgYy1mb3JtYXQKK21zZ2lkICJiYWNrZW5kIGRwa2ctZGViIGR1cmluZyBgJS4yNTVzJyIKK21zZ3N0ciAiYmFrZ3J1bm5zc3lzdGVtIGRwa2ctZGViIHVuZGVyIMKrJS4yNTVzwrsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc0NCBzcmMvYXJjaGl2ZXMuYzo5MDggc3JjL2FyY2hpdmVzLmM6OTQ5CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3Npbmcvd3JpdGluZyBgJS4yNTVzJyIKK21zZ3N0ciAiZmVpbCB2ZWQgbHVra2luZy9za3JpdmluZyBhdiDCqyUuMjU1c8K7IgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgcGlwZSBgJS4yNTVzJyIKK21zZ3N0ciAiZmVpbCB2ZWQgb3BwcmV0dGluZyBhdiByw7hyIMKrJS4yNTVzwrsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc1MyBzcmMvYXJjaGl2ZXMuYzo3NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgZGV2aWNlIGAlLjI1NXMnIgorbXNnc3RyICJmZWlsIHZlZCBvcHByZXR0aW5nIGF2IGVuaGV0IMKrJS4yNTVzwrsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc3MQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBoYXJkIGxpbmsgYCUuMjU1cyciCittc2dzdHIgImZlaWwgdmVkIG9wcHJldHRpbmcgYXYgaGFyZCBsZW5rZSDCqyUuMjU1c8K7IgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NzcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjUzOQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBzeW1ib2xpYyBsaW5rIGAlLjI1NXMnIgorbXNnc3RyICJmZWlsIHZlZCBvcHByZXR0aW5nIGF2IHN5bWJvbHNrIGxlbmtlIMKrJS4yNTVzwrsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc4MworIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBkaXJlY3RvcnkgYCUuMjU1cyciCittc2dzdHIgImZlaWwgdmVkIG9wcHJldHRpbmcgYXYga2F0YWxvZ2VuIMKrJS4yNTVzwrsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjgyMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gbW92ZSBhc2lkZSBgJS4yNTVzJyB0byBpbnN0YWxsIG5ldyB2ZXJzaW9uIgorbXNnc3RyICJrbGFydGUgaWtrZSBmbHl0dGUgwqslLjI1NXPCuyBmb3Igw6UgaW5zdGFsbGVyZSBlbiBueSB2ZXJzam9uIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4MzIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjMyMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBsaW5rIGAlLjI1NXMnIgorbXNnc3RyICJrbGFydGUgaWtrZSBsZXNlIGxlbmtlbiDCqyUuMjU1c8K7IgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4MzQgc3JjL2NvbmZpZ3VyZS5jOjQyMworIywgYy1mb3JtYXQKK21zZ2lkICJzeW1ib2xpYyBsaW5rICclLjI1MHMnIHNpemUgaGFzIGNoYW5nZWQgZnJvbSAlamQgdG8gJXpkIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjgzOQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gbWFrZSBiYWNrdXAgc3ltbGluayBmb3IgYCUuMjU1cyciCittc2dzdHIgImtsYXJ0ZSBpa2tlIGxhZ2Ugc2lrcmluZ3Nrb3BpIGF2IGRlbiBzeW1ib2xza2UgbGVua2VuIMKrJS4yNTVzwrsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjg0MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hvd24gYmFja3VwIHN5bWxpbmsgZm9yIGAlLjI1NXMnIgorbXNnc3RyICJrbGFydGUgaWtrZSBlbmRyZSBlaWVyc2thcCB0aWwgZGVuIHN5bWJvbHNrZSBsZW5rZW4gwqslLjI1NXPCuyIKKworIzogc3JjL2FyY2hpdmVzLmM6ODQ2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBtYWtlIGJhY2t1cCBsaW5rIG9mIGAlLjI1NXMnIGJlZm9yZSBpbnN0YWxsaW5nIG5ldyB2ZXJzaW9uIgorbXNnc3RyICIiCisia2xhcnRlIGlra2UgbGFnZSBzaWtyaW5nc2tvcGkgYXYgbGVua2VuIMKrJS4yNTVzwrsgZsO4ciBlbiBueSB2ZXJzam9uIHNrdWxsZSAiCisiaW5zdGFsbGVyZXMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjg2MyBzcmMvYXJjaGl2ZXMuYzo5NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IHZlcnNpb24gb2YgYCUuMjU1cyciCittc2dzdHIgImtsYXJ0ZSBpa2tlIGluc3RhbGxlcmUgbnkgdmVyc2pvbiBhdiDCqyUuMjU1c8K7IgorCisjOiBzcmMvYXJjaGl2ZXMuYzo5MDIgc3JjL2FyY2hpdmVzLmM6OTQ1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuICclLjI1NXMnIgorbXNnc3RyICJrbGFydGUgaWtrZSDDpXBuZSDCqyUuMjU1c8K7IgorCisjOiBzcmMvYXJjaGl2ZXMuYzo5NDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgZmlsZSAnJS4yNTVzJyIKK21zZ3N0ciAia2xhcnRlIGlra2Ugc3lua3JvbmlzZXJlIGZpbGEgwqslLjI1NXPCuyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAwMAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiaWdub3JpbmcgZGVwZW5kZW5jeSBwcm9ibGVtIHdpdGggJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyJpZ25vcmVyZXIga3JhdnByb2JsZW0gbWVkICVzOlxuIgorIiVzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDA1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJjb25zaWRlcmluZyBkZWNvbmZpZ3VyYXRpb24gb2YgZXNzZW50aWFsXG4iCisiIHBhY2thZ2UgJXMsIHRvIGVuYWJsZSAlcy4iCittc2dzdHIgIiIKKyJ2dXJkZXJlciBmamVybmluZyBhdiBvcHBzZXR0IGZvciBkZW4gbsO4ZHZlbmRpZ2VcbiIKKyIgcGFra2VuICVzLCBmb3Igw6Uga3VubmUgYWt0aXZlcmUgJXMuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDA4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBubywgJXMgaXMgZXNzZW50aWFsLCB3aWxsIG5vdCBkZWNvbmZpZ3VyZVxuIgorIiBpdCBpbiBvcmRlciB0byBlbmFibGUgJXMuXG4iCittc2dzdHIgIiIKKyJkcGtnOiBOZWksICVzIGVyIG7DuGR2ZW5kaWcuIFZpbCBpa2tlIGZqZXJuZSBvcHBzZXR0ZXRcbiIKKyIgZm9yIMOlIGt1bm5lIGFrdGl2ZXJlICVzLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDIyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBubywgY2Fubm90IHByb2NlZWQgd2l0aCAlcyAoLS1hdXRvLWRlY29uZmlndXJlIHdpbGwgaGVscCk6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiBOZWksIGthbiBpa2tlIGZvcnRzZXR0ZSBtZWQgJXMgKC0tYXV0by1kZWNvbmZpZ3VyZSBrYW4gaGplbHBlKTpcbiIKKyIlcyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAzMgorIywgYy1mb3JtYXQKK21zZ2lkICJyZW1vdmFsIG9mICUuMjUwcyIKK21zZ3N0ciAiZmplcm5pbmcgYXYgJS4yNTBzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDU3CisjLCBjLWZvcm1hdAorbXNnaWQgImluc3RhbGxhdGlvbiBvZiAlLjI1MHMiCittc2dzdHIgImluc3RhbGxlcmluZyBhdiAlLjI1NXMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IGNvbnNpZGVyaW5nIGRlY29uZmlndXJhdGlvbiBvZiAlcywgd2hpY2ggd291bGQgYmUgYnJva2VuIGJ5ICVzIC4uLlxuIgorbXNnc3RyICJkcGtnOiBWdXJkZXJlciDDpSBmamVybmUgb3Bwc2V0dCBmb3IgJXMsIHNvbSBibGlyIMO4ZGVsYWd0IGF2ICVzIC4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDY1CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IHllcywgd2lsbCBkZWNvbmZpZ3VyZSAlcyAoYnJva2VuIGJ5ICVzKS5cbiIKK21zZ3N0ciAiZHBrZzogSmEsIGZqZXJuZXIgb3Bwc2V0dCBmb3IgJXMgKMO4ZGVsYWd0IGF2ICVzKS5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA2OSBzcmMvYXJjaGl2ZXMuYzoxMTg3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiByZWdhcmRpbmcgJXMgY29udGFpbmluZyAlczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6IEtueXR0IHRpbCAlcywgc29tIGlubmVob2xkZXIgJXM6XG4iCisiJXMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNzcKK21zZ2lkICJpZ25vcmluZyBicmVha2FnZSwgbWF5IHByb2NlZWQgYW55d2F5ISIKK21zZ3N0ciAiaWdub3JlcmVyIMO4ZGVsZWdnZWxzZSwgbWVuIGthbiBmb3J0c2V0dGUgbGlrZXZlbC4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImluc3RhbGxpbmcgJS4yNTBzIHdvdWxkIGJyZWFrICUuMjUwcywgYW5kXG4iCisiIGRlY29uZmlndXJhdGlvbiBpcyBub3QgcGVybWl0dGVkICgtLWF1dG8tZGVjb25maWd1cmUgbWlnaHQgaGVscCkiCittc2dzdHIgIiIKKyJpbnN0YWxsZXJpbmcgYXYgJS4yNTBzIHZpbCDDuGRlbGVnZ2UgJS4yNTBzLCBvZ1xuIgorIiBmamVybmluZyBhdiBvcHBzZXR0IGVyIGlra2UgdGlsbGF0dCAoLS1hdXRvLWRlY29uZmlndXJlIGthbiBoamVscGUpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDg2CisjLCBjLWZvcm1hdAorbXNnaWQgImluc3RhbGxpbmcgJS4yNTBzIHdvdWxkIGJyZWFrIGV4aXN0aW5nIHNvZnR3YXJlIgorbXNnc3RyICJpbnN0YWxsZXJpbmcgYXYgJS4yNTBzIHZpbCDDuGRlbGVnZ2UgZWtzaXN0ZXJlbmRlIHByb2dyYW12YXJlIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTE2CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IGNvbnNpZGVyaW5nIHJlbW92aW5nICVzIGluIGZhdm91ciBvZiAlcyAuLi5cbiIKK21zZ3N0ciAiZHBrZzogVnVyZGVyZXIgw6UgZmplcm5lICVzIHRpbCBmb3JkZWwgZm9yICVzIC4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTIyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGlzIG5vdCBwcm9wZXJseSBpbnN0YWxsZWQgLSBpZ25vcmluZyBhbnkgZGVwZW5kZW5jaWVzIG9uIGl0LlxuIgorbXNnc3RyICIlcyBlciBpa2tlIHNraWtrZWxpZyBpbnN0YWxsZXJ0IC0gaWdub3JlcmVyIHBha2tla3Jhdi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE1MQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiBtYXkgaGF2ZSB0cm91YmxlIHJlbW92aW5nICVzLCBhcyBpdCBwcm92aWRlcyAlcyAuLi5cbiIKK21zZ3N0ciAiZHBrZzogS2FuIGbDpSBwcm9ibGVtZXIgbWVkIMOlIGZqZXJuZSAlcywgc2lkZW4gZGVuIHRpbGJ5ciAlcyAuLi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE2NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogcGFja2FnZSAlcyByZXF1aXJlcyByZWluc3RhbGxhdGlvbiwgYnV0IHdpbGwgcmVtb3ZlIGFueXdheSBhcyB5b3UgIgorInJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiIgorImRwa2c6IFBha2tlbiAlcyBrcmV2ZXIgaW5zdGFsbGFzam9uIHDDpSBueXR0LCBtZW4gYmxpciBmamVybmV0IGxpa2V2ZWwsIHNpZGVuICIKKyJkdSDDuG5za2VyIGRldC5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE2OQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiBwYWNrYWdlICVzIHJlcXVpcmVzIHJlaW5zdGFsbGF0aW9uLCB3aWxsIG5vdCByZW1vdmUuXG4iCittc2dzdHIgIiIKKyJkcGtnOiBQYWtrZW4gJXMga3JldmVyIGluc3RhbGxhc2pvbiBww6Ugbnl0dCwgc8OlIGRlbiBibGlyIGlra2UgZmplcm5ldC5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE3OAorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiB5ZXMsIHdpbGwgcmVtb3ZlICVzIGluIGZhdm91ciBvZiAlcy5cbiIKK21zZ3N0ciAiZHBrZzogSmEsIGZqZXJuZXIgJXMgdGlsIGZvcmRlbCBmb3IgJXMuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmxpY3RpbmcgcGFja2FnZXMgLSBub3QgaW5zdGFsbGluZyAlLjI1MHMiCittc2dzdHIgInBha2tlciBpIGtvbmZsaWt0IC0gaW5zdGFsbGVyZXIgaWtrZSAlLjI1MHMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExOTEKK21zZ2lkICJpZ25vcmluZyBjb25mbGljdCwgbWF5IHByb2NlZWQgYW55d2F5ISIKK21zZ3N0ciAiaWdub3JlcmVyIGtvbmZsaWt0LCBtZW4ga2FuIGZvcnRzZXR0ZSBsaWtldmVsLiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTIzNQorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIC0tcmVjdXJzaXZlIG5lZWRzIGF0IGxlYXN0IG9uZSBwYXRoIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIC0tcmVjdXJzaXZlIHRyZW5nZXIgbWluc3Qgw6luIHN0aS1wYXJhbWV0ZXIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNDUKK21zZ2lkICJmaW5kIGZvciBkcGtnIC0tcmVjdXJzaXZlIgorbXNnc3RyICJmaW5uIGZvciBkcGtnIC0tcmVjdXJzaXZlIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjY2Cittc2dpZCAiZmFpbGVkIHRvIGZkb3BlbiBmaW5kJ3MgcGlwZSIKK21zZ3N0ciAia2xhcnRlIGlra2UgdXRmw7hyZSDCq2Zkb3BlbsK7IHDDpSBmaW5kLXLDuHJldCIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3MgorbXNnaWQgImVycm9yIHJlYWRpbmcgZmluZCdzIHBpcGUiCittc2dzdHIgImtsYXJ0ZSBpa2tlIGxlc2UgZmluZC1yw7hyZXQiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNzMKK21zZ2lkICJlcnJvciBjbG9zaW5nIGZpbmQncyBwaXBlIgorbXNnc3RyICJrbGFydGUgaWtrZSBsdWtrZSBmaW5kLXLDuHJldCIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3NgorIywgYy1mb3JtYXQKK21zZ2lkICJmaW5kIGZvciAtLXJlY3Vyc2l2ZSByZXR1cm5lZCB1bmhhbmRsZWQgZXJyb3IgJWkiCittc2dzdHIgImZpbmQgZm9yIC0tcmVjdXJzaXZlIHJldHVybmVydGUgZGVuIHVmb3J1dHNldHRlIGZlaWxlbiAlaSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3OQorbXNnaWQgInNlYXJjaGVkLCBidXQgZm91bmQgbm8gcGFja2FnZXMgKGZpbGVzIG1hdGNoaW5nICouZGViKSIKK21zZ3N0ciAic8O4a3RlLCBtZW4gZmFudCBpbmdlbiBwYWtrZXIgKGZpbGVyIG1lZCBuYXZuICouZGViKSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI5MAorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGF0IGxlYXN0IG9uZSBwYWNrYWdlIGFyY2hpdmUgZmlsZSBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyB0cmVuZ2VyIG1pbnN0IMOpbiBwYWtrZWFya2l2ZmlsIHNvbSBwYXJhbWV0ZXIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzMjUgc3JjL2RpdmVydGNtZC5jOjc4IHNyYy9kaXZlcnRjbWQuYzoxMTgKKyM6IHNyYy9lbnF1aXJ5LmM6MTY2IHNyYy9lbnF1aXJ5LmM6Mjc5IHNyYy9lbnF1aXJ5LmM6NDQ5IHNyYy9lbnF1aXJ5LmM6NDUxCisjOiBzcmMvZW5xdWlyeS5jOjQ2NCBzcmMvbWFpbi5jOjY2IHNyYy9tYWluLmM6MTYzIHNyYy9tYWluLmM6MzE0CisjOiBzcmMvbWFpbi5jOjQ5MyBzcmMvcGFja2FnZXMuYzoyNTQgc3JjL3F1ZXJ5Y21kLmM6MjUyIHNyYy9xdWVyeWNtZC5jOjM1NQorIzogc3JjL3F1ZXJ5Y21kLmM6Mzk2IHNyYy9xdWVyeWNtZC5jOjQwNCBzcmMvcXVlcnljbWQuYzo0NDggc3JjL3F1ZXJ5Y21kLmM6NTE3CisjOiBzcmMvcXVlcnljbWQuYzo2MDYgc3JjL3F1ZXJ5Y21kLmM6NjUwIHNyYy9zZWxlY3QuYzo3OSBzcmMvc3RhdGNtZC5jOjY4CisjOiBzcmMvc3RhdGNtZC5jOjk4IHNyYy90cmlnY21kLmM6NTggc3JjL3RyaWdjbWQuYzo5MCBkcGtnLWRlYi9idWlsZC5jOjQ0MQorIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIxNyBkcGtnLWRlYi9leHRyYWN0LmM6MjUwIGRwa2ctZGViL2luZm8uYzoyMDMKKyM6IGRwa2ctZGViL2luZm8uYzoyNjUgZHBrZy1kZWIvbWFpbi5jOjYwIGRwa2ctZGViL21haW4uYzoxMjYKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjI1NyBkcGtnLXNwbGl0L21haW4uYzo1NCBkcGtnLXNwbGl0L21haW4uYzo5OAorIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE0NCBkcGtnLXNwbGl0L3F1ZXVlLmM6MjgwCittc2dpZCAiPHN0YW5kYXJkIG91dHB1dD4iCittc2dzdHIgIjxzdGFuZGFyZCB1dGRhdGE+IgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzI2IHNyYy9wYWNrYWdlcy5jOjI1NSBzcmMvcXVlcnljbWQuYzoyNTMKKyM6IHNyYy9xdWVyeWNtZC5jOjM1MyBzcmMvcXVlcnljbWQuYzo0NTQgc3JjL3F1ZXJ5Y21kLmM6NTE4IHNyYy9zZWxlY3QuYzo4MAorIzogZHBrZy1zcGxpdC9tYWluLmM6MTY5IGRwa2ctc3BsaXQvcXVldWUuYzoyMTgKK21zZ2lkICI8c3RhbmRhcmQgZXJyb3I+IgorbXNnc3RyICI8c3RhbmRhcmQgZmVpbD4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzNjcKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIlNlbGVjdGluZyBwcmV2aW91c2x5IGRlc2VsZWN0ZWQgcGFja2FnZSAlcy5cbiIKK21zZ2lkICJTZWxlY3RpbmcgcHJldmlvdXNseSB1bnNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dzdHIgIlZlbGdlciBkZW4gdGlkbGlnZXJlIGZyYXZhbGd0ZSBwYWtrZW4gJXMuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzNzEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIlNraXBwaW5nIGRlc2VsZWN0ZWQgcGFja2FnZSAlcy5cbiIKK21zZ2lkICJTa2lwcGluZyB1bnNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dzdHIgIkhvcHBlciBvdmVyIGRlbiBmcmF2YWxndGUgcGFra2VuICVzLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzg3CisjLCBjLWZvcm1hdAorbXNnaWQgIlZlcnNpb24gJS4yNTBzIG9mICUuMjUwcyBhbHJlYWR5IGluc3RhbGxlZCwgc2tpcHBpbmcuXG4iCittc2dzdHIgIlZlcnNqb24gJS4yNTBzIGF2ICUuMjUwcyBlciBpbnN0YWxsZXJ0IGZyYSBmw7hyLCBob3BwZXIgb3Zlci5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTM5NworIywgYy1mb3JtYXQKK21zZ2lkICJkb3duZ3JhZGluZyAlLjI1MHMgZnJvbSAlLjI1MHMgdG8gJS4yNTBzLiIKK21zZ3N0ciAibmVkZ3JhZGVyZXIgJS4yNTBzIGZyYSAlLjI1MHMgdGlsICUuMjUwcy4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjE0MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiV2lsbCBub3QgZG93bmdyYWRlICUuMjUwcyBmcm9tIHZlcnNpb24gJS4yNTBzIHRvICUuMjUwcywgc2tpcHBpbmcuXG4iCittc2dzdHIgIiIKKyJWaWwgaWtrZSBuZWRncmFkZXJlICUuMjUwcyBmcmEgdmVyc2pvbiAlLjI1MHMgdGlsICUuMjUwcywgaG9wcGVyIG92ZXIuXG4iCisKKyM6IHNyYy9jbGVhbnVwLmM6ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVuYWJsZSB0byByZW1vdmUgbmV3bHktaW5zdGFsbGVkIHZlcnNpb24gb2YgYCUuMjUwcycgdG8gYWxsb3cgcmVpbnN0YWxsYXRpb24gIgorIm9mIGJhY2t1cCBjb3B5IgorbXNnc3RyICIiCisia2xhcnRlIGlra2UgZmplcm5lIGRlbiBueWluc3RhbGxlcnRlIHZlcnNqb25lbiBhdiDCqyUuMjUwc8K7IGZvciDDpSBrdW5uZSAiCisiaW5zdGFsbGVyZSBzaWtyaW5nc2tvcGllbiBww6Ugbnl0dCIKKworIzogc3JjL2NsZWFudXAuYzo5MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVzdG9yZSBiYWNrdXAgdmVyc2lvbiBvZiBgJS4yNTBzJyIKK21zZ3N0ciAia2xhcnRlIGlra2UgZ2plbm9wcHJldHRlIHNpa3Jpbmdza29waWVuIGF2IMKrJS4yNTBzwrsiCisKKyM6IHNyYy9jbGVhbnVwLmM6OTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBiYWNrdXAgY29weSBvZiAnJS4yNTBzJyIKK21zZ3N0ciAia2xhcnRlIGlra2UgZmplcm5lIHNpa2tlcmhldHNrb3BpZW4gYXYgwqslLjI1MHPCuyIKKworIzogc3JjL2NsZWFudXAuYzoxMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBuZXdseS1pbnN0YWxsZWQgdmVyc2lvbiBvZiBgJS4yNTBzJyIKK21zZ3N0ciAia2xhcnRlIGlra2UgZmplcm5lIGRlbiBueWluc3RhbGxlcnRlIHZlcnNqb25lbiBhdiDCqyUuMjUwc8K7IgorCisjOiBzcmMvY2xlYW51cC5jOjEwOAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIG5ld2x5LWV4dHJhY3RlZCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICJrbGFydGUgaWtrZSBmamVybmUgZGVuIG55dXRwYWtrZWRlIHZlcnNqb25lbiBhdiDCqyUuMjUwc8K7IgorCisjOiBzcmMvY29uZmlndXJlLmM6MTA0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IG5ldyBkaXN0cmlidXRlZCBjb25mZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAiZmFudCBpa2tlIGRlbiBueWUgZGlzdHJpYnVzam9uc29wcHNldHRzZmlsYSDCqyUuMjUwc8K7IgorCisjOiBzcmMvY29uZmlndXJlLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGN1cnJlbnQgaW5zdGFsbGVkIGNvbmZmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJmYW50IGlra2UgZGVuIGluc3RhbGxlcnRlIG9wcHNldHRzZmlsYSDCqyUuMjUwc8K7IgorCisjOiBzcmMvY29uZmlndXJlLmM6MTI2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJDb25maWd1cmF0aW9uIGZpbGUgYCVzJywgZG9lcyBub3QgZXhpc3Qgb24gc3lzdGVtLlxuIgorIkluc3RhbGxpbmcgbmV3IGNvbmZpZyBmaWxlIGFzIHlvdSByZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiIKKyJcbiIKKyJPcHBzZXR0c2ZpbGEgwqslc8K7IGZpbm5lcyBpa2tlIHDDpSBzeXN0ZW1ldC5cbiIKKyJJbnN0YWxsZXJlciBueSBvcHBzZXR0c2ZpbCBzaWRlbiBkdSDDuG5za2VyIGRldC5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE2OAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIHJlbW92ZSBvbGQgYmFja3VwICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiJXM6IGtsYXJ0ZSBpa2tlIGZqZXJuZSBkZW4gZ2FtbGUgc2lra2VyaGV0c2tvcGllbiDCqyUuMjUwc8K7OiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE3NgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIHJlbmFtZSAnJS4yNTBzJyB0byAnJS4yNTBzJzogJXMiCittc2dzdHIgIiVzOiBrbGFydGUgaWtrZSBlbmRyZSBuYXZuZXQgcMOlIMKrJS4yNTBzwrsgdGlsIMKrJS4yNTBzwrs6ICVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTgyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiJXM6IGtsYXJ0ZSBpa2tlIGZqZXJuZSDCqyUuMjUwc8K7OiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE4OAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIHJlbW92ZSBvbGQgZGlzdHJpYnV0ZWQgdmVyc2lvbiAnJS4yNTBzJzogJXMiCittc2dzdHIgIiVzOiBrbGFydGUgaWtrZSBmamVybmUgZGVuIGdhbWxlIGRpc3RyaWJ1ZXJ0ZSB2ZXJzam9uZW4gwqslLjI1MHPCuzogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW1vdmUgJyUuMjUwcycgKGJlZm9yZSBvdmVyd3JpdGUpOiAlcyIKK21zZ3N0ciAiJXM6IGtsYXJ0ZSBpa2tlIGZqZXJuZSDCqyUuMjUwc8K7IChmw7hyIG92ZXJza3JpdmluZyk6ICVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTk2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gbGluayAnJS4yNTBzJyB0byAnJS4yNTBzJzogJXMiCittc2dzdHIgIiVzOiBrbGFydGUgaWtrZSBsZW5rZSDCqyUuMjUwc8K7IHRpbCDCqyUuMjUwc8K7OiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjIwMAorIywgYy1mb3JtYXQKK21zZ2lkICJJbnN0YWxsaW5nIG5ldyB2ZXJzaW9uIG9mIGNvbmZpZyBmaWxlICVzIC4uLlxuIgorbXNnc3RyICJJbnN0YWxsZXJlciBueSB2ZXJzam9uIGF2IG9wcHNldHRzZmlsYSAlcyAuLi5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjIwNiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NTQ2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIGAlLjI1MHMnIGFzIGAlLjI1MHMnIgorbXNnc3RyICJrbGFydGUgaWtrZSBpbnN0YWxsZXJlIMKrJS4yNTBzwrsgc29tIMKrJS4yNTBzwrsiCisKKyM6IHNyYy9jb25maWd1cmUuYzoyNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gcGFja2FnZSBuYW1lZCBgJXMnIGlzIGluc3RhbGxlZCwgY2Fubm90IGNvbmZpZ3VyZSIKK21zZ3N0ciAiaW5nZW4gcGFra2UgbWVkIG5hdm5ldCDCqyVzwrsgZXIgaW5zdGFsbGVydCwga2FuIGlra2Ugc2V0dGUgb3BwIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjYwCisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgJS4yNTBzIGlzIGFscmVhZHkgaW5zdGFsbGVkIGFuZCBjb25maWd1cmVkIgorbXNnc3RyICJwYWtrZW4gJS4yNTBzIGVyIGluc3RhbGxlcnQgb2cgc2F0dCBvcHAgZnJhIGbDuHIiCisKKyM6IHNyYy9jb25maWd1cmUuYzoyNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInBhY2thZ2UgJS4yNTBzIGlzIG5vdCByZWFkeSBmb3IgY29uZmlndXJhdGlvblxuIgorIiBjYW5ub3QgY29uZmlndXJlIChjdXJyZW50IHN0YXR1cyBgJS4yNTBzJykiCittc2dzdHIgIiIKKyJwYWtrZW4gJS4yNTBzIGVyIGlra2Uga2xhciBmb3Igb3Bwc2V0dFxuIgorIiBrYW4gaWtrZSBzZXR0ZSBvcHAgKG7DpXbDpnJlbmRlIHN0YXR1cyDCqyUuMjUwc8K7KSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI5NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogZGVwZW5kZW5jeSBwcm9ibGVtcyBwcmV2ZW50IGNvbmZpZ3VyYXRpb24gb2YgJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiBLcmF2cHJvYmxlbSBoaW5kcmVyIG9wcHNldHRldCBhdiAlczpcbiIKKyIlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI5NworbXNnaWQgImRlcGVuZGVuY3kgcHJvYmxlbXMgLSBsZWF2aW5nIHVuY29uZmlndXJlZCIKK21zZ3N0ciAia3JhdnByb2JsZW0gLSBzZXR0ZXIgaWtrZSBvcHAgcGFra2VuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MzAxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiAlczogZGVwZW5kZW5jeSBwcm9ibGVtcywgYnV0IGNvbmZpZ3VyaW5nIGFueXdheSBhcyB5b3UgcmVxdWVzdGVkOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogJXM6IEtyYXZwcm9ibGVtLCBtZW4gc2V0dGVyIG9wcCBsaWtldmVsIHNpZGVuIGR1IMO4bnNrZXIgZGV0OlxuIgorIiVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MzA5Cittc2dpZCAiIgorIlBhY2thZ2UgaXMgaW4gYSB2ZXJ5IGJhZCBpbmNvbnNpc3RlbnQgc3RhdGUgLSB5b3Ugc2hvdWxkXG4iCisiIHJlaW5zdGFsbCBpdCBiZWZvcmUgYXR0ZW1wdGluZyBjb25maWd1cmF0aW9uLiIKK21zZ3N0ciAiIgorIlBha2tlbiBlciBpIGVuIHZlbGRpZyBpbmtvbnNpc3RlbnQgdGlsc3RhbmQsIG9nIGLDuHJcbiIKKyJpbnN0YWxsZXJlcyBww6Ugbnl0dCBmw7hyIGR1IHNldHRlciBkZW4gb3BwLiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjMxMgorIywgYy1mb3JtYXQKK21zZ2lkICJTZXR0aW5nIHVwICVzICglcykgLi4uXG4iCittc2dzdHIgIlNldHRlciBvcHAgJXMgKCVzKSAuLi5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjM5NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IHVuYWJsZSB0byBzdGF0IGNvbmZpZyBmaWxlICclcydcbiIKKyIgKD0gJyVzJyk6ICVzIgorbXNnc3RyICIiCisiJXM6IGZhbnQgaWtrZSBvcHBzZXR0c2ZpbGEgwqslc8K7XG4iCisiICg9IMKrJXPCuyk6ICVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDA5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogY29uZmlnIGZpbGUgJyVzJyBpcyBhIGNpcmN1bGFyIGxpbmtcbiIKKyIgKD0gJyVzJykiCittc2dzdHIgIiIKKyIlczogb3Bwc2V0dHNmaWxhIMKrJXPCuyBlciBlbiBsZW5rZSBzb20gcGVrZXIgdGlsIHNlZyBzZWx2XG4iCisiICg9IMKrJXPCuykiCisKKyM6IHNyYy9jb25maWd1cmUuYzo0MTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiB1bmFibGUgdG8gcmVhZGxpbmsgY29uZmZpbGUgJyVzJ1xuIgorIiAoPSAnJXMnKTogJXMiCittc2dzdHIgIiIKKyIlczoga2xhcnRlIGlra2UgbGVzZSBsZW5rZW4gZm9yIG9wcHNldHRzZmlsYSDCqyVzwrtcbiIKKyIgKD0gwqslc8K7KTogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzo0NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBjb25mZmlsZSAnJS4yNTBzJyByZXNvbHZlcyB0byBkZWdlbmVyYXRlIGZpbGVuYW1lXG4iCisiICgnJXMnIGlzIGEgc3ltbGluayB0byAnJXMnKSIKK21zZ3N0ciAiIgorIiVzOiBvcHBzZXR0c2ZpbGEgwqslLjI1MHPCuyBibGlyIHRpbCBldCBkZWdlbmVyZXJ0IGZpbG5hdm5cbiIKKyIgKMKrJXPCuyBlciBlbiBzeW1ib2xzayBsZW5rZSB0aWwgwqslc8K7KSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQ2MAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogY29uZmZpbGUgJyUuMjUwcycgaXMgbm90IGEgcGxhaW4gZmlsZSBvciBzeW1saW5rICg9ICclcycpIgorbXNnc3RyICIiCisiJXM6IG9wcHNldHRzZmlsYSDCqyUuMjUwc8K7IGVyIGluZ2VuIHZhbmxpZyBmaWwgZWxsZXIgc3ltYm9sc2sgbGVua2UgKD0gwqslc8K7KSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQ4NgorbXNnaWQgIm1kNWhhc2giCittc2dzdHIgIm1kNS1uw7hra2VsIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDkyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB1bmFibGUgdG8gb3BlbiBjb25mZmlsZSAlcyBmb3IgaGFzaDogJXMiCittc2dzdHIgIiVzOiBrbGFydGUgaWtrZSDDpXBuZSBvcHBzZXR0c2ZpbGEgJXMgZm9yIG7DuGtrZWw6ICVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6NTIyIHNyYy9jb25maWd1cmUuYzo1MjYKK21zZ2lkICJjb25mZmlsZSBkaWZmZXJlbmNlIHZpc3VhbGl6ZXIiCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjU0MworbXNnaWQgIlR5cGUgYGV4aXQnIHdoZW4geW91J3JlIGRvbmUuXG4iCittc2dzdHIgIlNrcml2IMKrZXhpdMK7IG7DpXIgZHUgZXIgZmVyZGlnLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NTUyIHNyYy9jb25maWd1cmUuYzo1NTYKK21zZ2lkICJjb25mZmlsZSBzaGVsbCIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjAyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJDb25maWd1cmF0aW9uIGZpbGUgYCVzJyIKK21zZ3N0ciAiIgorIlxuIgorIk9wcHNldHRzZmlsIMKrJXPCuyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYwNAorIywgYy1mb3JtYXQKK21zZ2lkICIgKGFjdHVhbGx5IGAlcycpIgorbXNnc3RyICIgKGZha3Rpc2sgwqslc8K7KSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYwOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiID09PiBGaWxlIG9uIHN5c3RlbSBjcmVhdGVkIGJ5IHlvdSBvciBieSBhIHNjcmlwdC5cbiIKKyIgPT0+IEZpbGUgYWxzbyBpbiBwYWNrYWdlIHByb3ZpZGVkIGJ5IHBhY2thZ2UgbWFpbnRhaW5lci5cbiIKK21zZ3N0ciAiIgorIlxuIgorIiA9PT4gRmlsYSBww6Ugc3lzdGVtZXQgZXIgb3BwcmV0dGV0IGF2IGRlZyBlbGxlciBldCBza3JpcHQuXG4iCisiID09PiBGaWxhIGZpbm5lcyBvZ3PDpSBpIHBha2tlbiBmcmEgcGFra2V2ZWRsaWtlaG9sZGVyZW4uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiAgICAgTm90IG1vZGlmaWVkIHNpbmNlIGluc3RhbGxhdGlvbi5cbiIKK21zZ3N0ciAiIgorIlxuIgorIiAgICAgSWtrZSBlbmRyZXQgc2lkZW4gaW5zdGFsbGFzam9uZW4uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiA9PT4gTW9kaWZpZWQgKGJ5IHlvdSBvciBieSBhIHNjcmlwdCkgc2luY2UgaW5zdGFsbGF0aW9uLlxuIgorbXNnc3RyICIiCisiXG4iCisiID09PiBFbmRyZXQgKGF2IGRlZyBlbGxlciBhdiBldCBza3JpcHQpIHNpZGVuIGluc3RhbGxhc2pvbmVuLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjE2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgPT0+IERlbGV0ZWQgKGJ5IHlvdSBvciBieSBhIHNjcmlwdCkgc2luY2UgaW5zdGFsbGF0aW9uLlxuIgorbXNnc3RyICIiCisiXG4iCisiID09PiBTbGV0dGV0IChhdiBkZWcgZWxsZXIgYXYgZXQgc2tyaXB0KSBzaWRlbiBpbnN0YWxsYXNqb25lbi5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYxOQorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IFBhY2thZ2UgZGlzdHJpYnV0b3IgaGFzIHNoaXBwZWQgYW4gdXBkYXRlZCB2ZXJzaW9uLlxuIgorbXNnc3RyICIgPT0+IFBha2tlZGlzdHJpYnV0w7hyZW4gaGFyIGdpdHQgdXQgZW4gb3BwZGF0ZXJ0IHZlcnNqb24uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAgICBWZXJzaW9uIGluIHBhY2thZ2UgaXMgdGhlIHNhbWUgYXMgYXQgbGFzdCBpbnN0YWxsYXRpb24uXG4iCittc2dzdHIgIiAgICAgVmVyc2pvbmVuIGkgcGFra2VuIGVyIGRlbiBzYW1tZSBzb20gdmVkIHNpc3RlIGluc3RhbGxhc2pvbi5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYyOAorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IFVzaW5nIG5ldyBmaWxlIGFzIHlvdSByZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiA9PT4gQnJ1a2VyIGRlbiBueWUgZmlsYSBzaWRlbiBkdSDDuG5za2VyIGRldC5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYzMgorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IFVzaW5nIGN1cnJlbnQgb2xkIGZpbGUgYXMgeW91IHJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiID09PiBCcnVrZXIgZGVuIGdhbWxlIGZpbGEgc2lkZW4gZHUgw7huc2tlciBkZXQuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBLZWVwaW5nIG9sZCBjb25maWcgZmlsZSBhcyBkZWZhdWx0LlxuIgorbXNnc3RyICIgPT0+IFRhciB2YXJlIHDDpSBkZW4gZ2FtbGUgb3Bwc2V0dHNmaWxhIHNvbSBzdGFuZGFyZC5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY0NQorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IFVzaW5nIG5ldyBjb25maWcgZmlsZSBhcyBkZWZhdWx0LlxuIgorbXNnc3RyICIgPT0+IEJydWtlciBkZW4gbnllIG9wcHNldHRzZmlsYSBzb20gc3RhbmRhcmQuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiAgIFdoYXQgd291bGQgeW91IGxpa2UgdG8gZG8gYWJvdXQgaXQgPyAgWW91ciBvcHRpb25zIGFyZTpcbiIKKyIgICAgWSBvciBJICA6IGluc3RhbGwgdGhlIHBhY2thZ2UgbWFpbnRhaW5lcidzIHZlcnNpb25cbiIKKyIgICAgTiBvciBPICA6IGtlZXAgeW91ciBjdXJyZW50bHktaW5zdGFsbGVkIHZlcnNpb25cbiIKKyIgICAgICBEICAgICA6IHNob3cgdGhlIGRpZmZlcmVuY2VzIGJldHdlZW4gdGhlIHZlcnNpb25zXG4iCisiICAgICAgWiAgICAgOiBzdGFydCBhIHNoZWxsIHRvIGV4YW1pbmUgdGhlIHNpdHVhdGlvblxuIgorbXNnc3RyICIiCisiICAgSHZhIHZpbCBkdSBnasO4cmUgbWVkIGRldD8gRGluZSB2YWxnIGVyOlxuIgorIiAgICBZIGVsbGVyIEkgOiBJbnN0YWxsZXIgcGFra2V2ZWRsaWtlaG9sZGVyZW5zIHZlcnNqb25cbiIKKyIgICAgTiBlbGxlciBPIDogVGEgdmFyZSBww6UgZGVuIHZlcnNqb25lbiBzb20gZXIgaW5zdGFsbGVydFxuIgorIiAgICAgICAgRCAgICAgOiBWaXMgZm9yc2tqZWxsZW4gbWVsbG9tIHZlcnNqb25lbmVcbiIKKyIgICAgICAgIFogICAgIDogU2VuZCBkZW5uZSBwcm9zZXNzZW4gdGlsIGJha2dydW5uZW4gZm9yIMOlIHVuZGVyc8O4a2UgbsOmcm1lcmVcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY1OQorIywgYy1mb3JtYXQKK21zZ2lkICIgVGhlIGRlZmF1bHQgYWN0aW9uIGlzIHRvIGtlZXAgeW91ciBjdXJyZW50IHZlcnNpb24uXG4iCittc2dzdHIgIiBTdGFuZGFyZGhhbmRsaW5nZW4gZXIgw6UgdGEgdmFyZSBww6UgZGVuIHZlcnNqb25lbiBzb20gZXIgaW5zdGFsbGVydC5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY2MQorIywgYy1mb3JtYXQKK21zZ2lkICIgVGhlIGRlZmF1bHQgYWN0aW9uIGlzIHRvIGluc3RhbGwgdGhlIG5ldyB2ZXJzaW9uLlxuIgorbXNnc3RyICIgU3RhbmRhcmRoYW5kbGluZ2EgZXIgw6UgaW5zdGFsbGVyZSBkZW4gbnllIHZlcnNqb25lbi5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY2NgorbXNnaWQgIltkZWZhdWx0PU5dIgorbXNnc3RyICJbc3RhbmRhcmQ9Tl0iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NjcKK21zZ2lkICJbZGVmYXVsdD1ZXSIKK21zZ3N0ciAiW3N0YW5kYXJkPVldIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjY4Cittc2dpZCAiW25vIGRlZmF1bHRdIgorbXNnc3RyICJbaW5nZW4gc3RhbmRhcmRoYW5kbGluZ10iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NzEKK21zZ2lkICJlcnJvciB3cml0aW5nIHRvIHN0ZGVyciwgZGlzY292ZXJlZCBiZWZvcmUgY29uZmZpbGUgcHJvbXB0IgorbXNnc3RyICJmZWlsIHZlZCBza3JpdmluZyB0aWwgc3RhbmRhcmRmZWlsLCBvcHBkYWdlIGbDuHIgb3Bwc2V0dHNmaWxwcm9tcHQiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2ODAKK21zZ2lkICJyZWFkIGVycm9yIG9uIHN0ZGluIGF0IGNvbmZmaWxlIHByb21wdCIKK21zZ3N0ciAibGVzZWZlaWwgcMOlIHN0YW5kYXJkLWlubiB2ZWQgb3Bwc2V0dHNmaWxwcm9tcHQiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2ODEKK21zZ2lkICJFT0Ygb24gc3RkaW4gYXQgY29uZmZpbGUgcHJvbXB0IgorbXNnc3RyICJzbHV0dCBww6UgZmlsIHZlZCBzdGFuZGFyZC1pbm4gdmVkIG9wcHNldHRzZmlscHJvbXB0IgorCisjOiBzcmMvZGVwY29uLmM6MTc1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGRlcGVuZHMgb24gJXMiCittc2dzdHIgIiVzIGtyZXZlciAlcyIKKworIzogc3JjL2RlcGNvbi5jOjE3OAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBwcmUtZGVwZW5kcyBvbiAlcyIKK21zZ3N0ciAiJXMgZsO4ci1rcmV2ZXIgJXMiCisKKyM6IHNyYy9kZXBjb24uYzoxODEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcmVjb21tZW5kcyAlcyIKK21zZ3N0ciAiJXMgYW5iZWZhbGVyICVzICIKKworIzogc3JjL2RlcGNvbi5jOjE4NAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBzdWdnZXN0cyAlcyIKK21zZ3N0ciAiJXMgZm9yZXNsw6VyICVzIgorCisjOiBzcmMvZGVwY29uLmM6MTg3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGJyZWFrcyAlcyIKK21zZ3N0ciAiJXMgw7hkZWxlZ2dlciAlcyIKKworIzogc3JjL2RlcGNvbi5jOjE5MAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBjb25mbGljdHMgd2l0aCAlcyIKK21zZ3N0ciAiJXMgZXIgaSBrb25mbGlrdCBtZWQgJXMiCisKKyM6IHNyYy9kZXBjb24uYzoxOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgZW5oYW5jZXMgJXMiCittc2dzdHIgIiVzIGZvcmJlZHJlciAlcyIKKworIzogc3JjL2RlcGNvbi5jOjI5NgorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyBza2FsIGZqZXJuZXMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzoyOTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdG8gYmUgZGVjb25maWd1cmVkLlxuIgorbXNnc3RyICIgIE9wcHNldHRldCBhdiAlLjI1MHMgc2thbCBmamVybmVzLlxuIgorCisjOiBzcmMvZGVwY29uLmM6MzA0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHRvIGJlIGluc3RhbGxlZCwgYnV0IGlzIHZlcnNpb24gJS4yNTBzLlxuIgorbXNnc3RyICIgICUuMjUwcyBza2FsIGluc3RhbGxlcmVzLCBtZW4gdmVyc2pvbmVuIGVyICUuMjUwcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjMxNAorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyBpbnN0YWxsZWQsIGJ1dCBpcyB2ZXJzaW9uICUuMjUwcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgZXIgaW5zdGFsbGVydCwgbWVuIHZlcnNqb25lbiBlciAlLjI1MHMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdW5wYWNrZWQsIGJ1dCBoYXMgbmV2ZXIgYmVlbiBjb25maWd1cmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyBlciBwYWtrZXQgdXQsIG1lbiBlciBhbGRyaSBzYXR0IG9wcC5cbiIKKworIzogc3JjL2RlcGNvbi5jOjMzNworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB1bnBhY2tlZCwgYnV0IGlzIHZlcnNpb24gJS4yNTBzLlxuIgorbXNnc3RyICIgICUuMjUwcyBlciBwYWtrZXQgdXQsIG1lbiB2ZXJzam9uZW4gZXIgJS4yNTBzLlxuIgorCisjOiBzcmMvZGVwY29uLmM6MzQzCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGxhdGVzdCBjb25maWd1cmVkIHZlcnNpb24gaXMgJS4yNTBzLlxuIgorbXNnc3RyICIgICUuMjUwcyBzaXN0ZSBvcHBzYXR0ZSB2ZXJzam9uIGVyICUuMjUwcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjM1MworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyAlcy5cbiIKK21zZ3N0ciAiJS4yNTBzIGVyICVzLlxuIgorCisjOiBzcmMvZGVwY29uLmM6Mzg4CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBidXQgaXMgdG8gYmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMgdGlsYnlyICUuMjUwcywgbWVuIHNrYWwgZmplcm5lcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjM5MgorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYnV0IGlzIHRvIGJlIGRlY29uZmlndXJlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMgdGlsYnlyICUuMjUwcywgbWVuIG9wcHNldHRldCBza2FsIGZqZXJuZXMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0MDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGJ1dCBpcyAlcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgdGlsYnlyICUuMjUwcywgbWVuIGVyICVzLlxuIgorCisjOiBzcmMvZGVwY29uLmM6NDE1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIG5vdCBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIGVyIGlra2UgaW5zdGFsbGVydC5cbiIKKworIzogc3JjL2RlcGNvbi5jOjQ0MworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyAodmVyc2lvbiAlLjI1MHMpIGlzIHRvIGJlIGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMgKHZlcnNqb24gJS4yNTBzKSB2aWwgYmxpIGluc3RhbGxlcnQuXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgKHZlcnNpb24gJS4yNTBzKSBpcyBwcmVzZW50IGFuZCAlcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgKHZlcnNqb24gJS4yNTBzKSBlciB0aWxzdGVkZSBvZyAlcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjQ5NQorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYW5kIGlzIHRvIGJlIGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMgdGlsYnlyICUuMjUwcyBvZyBza2FsIGluc3RhbGxlcmVzLlxuIgorCisjOiBzcmMvZGVwY29uLmM6NTM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBhbmQgaXMgcHJlc2VudCBhbmQgJXMuXG4iCittc2dzdHIgIiAgJS4yNTBzIHRpbGJ5ciAlLjI1MHMgb2cgZXIgdGlsc3RlZGUgb2cgJXMuXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MAorIywgZnV6enkKKyN8IG1zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IHF1ZXJ5aW5nIHBhY2thZ2VzLiIKK21zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IGRpdmVydGluZyBmaWxlcy4iCittc2dzdHIgIkJydWsgLS1oZWxwIGZvciBoamVscCBvbSBwYWtrZXNww7hycmluZy4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo2NiBzcmMvc3RhdGNtZC5jOjU3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo4MAorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gJXMgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiRGViaWFuICVzIHZlcnNqb24gJXMuXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo3MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDEwIEd1aWxsZW0gSm92ZXIuXG4iCittc2dzdHIgIiIKKyJPcHBoYXZzcmV0dCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyJPcHBoYXZzcmV0dCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiT3BwaGF2c3JldHQgKEMpIDIwMTAgR3VpbGxlbSBKb3Zlci5cbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjc1IHNyYy9tYWluLmM6NjMgc3JjL3F1ZXJ5Y21kLmM6NjAzIHNyYy9zdGF0Y21kLmM6NjUKKyM6IHNyYy90cmlnY21kLmM6NTUgZHBrZy1kZWIvbWFpbi5jOjU3IGRwa2ctc3BsaXQvbWFpbi5jOjUxCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6ODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgb3JcbiIKKyJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKK21zZ3N0ciAiIgorIkRldHRlIGVyIGZyaSBwcm9ncmFtdmFyZS4gRHUgZmlubmVyIGtvcGllcmluZ3N2aWxrw6VyZW5lIGlcbiIKKyJHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSB2ZXJzam9uIDIgZWxsZXIgbnllcmUuIERldCBmaW5uZXMgSU5HRU4gZ2FyYW50aS5cbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjg3IHNyYy9tYWluLmM6ODEgc3JjL3F1ZXJ5Y21kLmM6NjE1IHNyYy9zdGF0Y21kLmM6NzcKKyM6IGRwa2ctZGViL21haW4uYzo2OSBkcGtnLXNwbGl0L21haW4uYzo2MyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6OTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSA8Y29tbWFuZD5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIkJydWs6ICVzIFs8dmFsZz4gLi4uIF0gPGtvbW1hbmRvPlxuIgorIlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6OTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgWy0tYWRkXSA8ZmlsZT4gICAgICAgICAgIGFkZCBhIGRpdmVyc2lvbi5cbiIKKyIgIC0tcmVtb3ZlIDxmaWxlPiAgICAgICAgICByZW1vdmUgdGhlIGRpdmVyc2lvbi5cbiIKKyIgIC0tbGlzdCBbPGdsb2ItcGF0dGVybj5dICBzaG93IGZpbGUgZGl2ZXJzaW9ucy5cbiIKKyIgIC0tbGlzdHBhY2thZ2UgPGZpbGU+ICAgICBzaG93IHdoYXQgcGFja2FnZSBkaXZlcnRzIHRoZSBmaWxlLlxuIgorIiAgLS10cnVlbmFtZSA8ZmlsZT4gICAgICAgIHJldHVybiB0aGUgZGl2ZXJ0ZWQgZmlsZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIktvbW1hbmRvZXI6XG4iCisiICBbLS1hZGRdIDxmaWw+ICAgICAgICAgICAgbGVnZyB0aWwgZW4gb21kaXJpZ2VyaW5nLlxuIgorIiAgLS1yZW1vdmUgPGZpbD4gICAgICAgICAgIGZqZXJuIG9tZGlyaWdlcmluZ2VuLlxuIgorIiAgLS1saXN0IFs8Z2xvYi1tw7huc3Rlcj5dICB2aXMgZmlsb21kaXJpZ2VyaW5nZXIuXG4iCisiICAtLWxpc3RwYWNrYWdlIDxmaWw+ICAgICAgdmlzIGh2aWxrZW4gcGFra2Ugc29tIG9tZGlyaWdlcmVyIGZpbGVuLlxuIgorIiAgLS10cnVlbmFtZSA8ZmlsPiAgICAgICAgIHZpcyBvbWRpcmlnZXJ0IGZpbC5cbiIKKyJcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjEwMAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tcGFja2FnZSA8cGFja2FnZT4gICAgICBuYW1lIG9mIHRoZSBwYWNrYWdlIHdob3NlIGNvcHkgb2YgPGZpbGU+IHdpbGwgIgorIm5vdFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmUgZGl2ZXJ0ZWQuXG4iCisiICAtLWxvY2FsICAgICAgICAgICAgICAgICAgYWxsIHBhY2thZ2VzJyB2ZXJzaW9ucyBhcmUgZGl2ZXJ0ZWQuXG4iCisiICAtLWRpdmVydCA8ZGl2ZXJ0LXRvPiAgICAgdGhlIG5hbWUgdXNlZCBieSBvdGhlciBwYWNrYWdlcycgdmVyc2lvbnMuXG4iCisiICAtLXJlbmFtZSAgICAgICAgICAgICAgICAgYWN0dWFsbHkgbW92ZSB0aGUgZmlsZSBhc2lkZSAob3IgYmFjaykuXG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgc2V0IHRoZSBkaXJlY3Rvcnkgd2l0aCB0aGUgZGl2ZXJzaW9ucyBmaWxlLlxuIgorIiAgLS10ZXN0ICAgICAgICAgICAgICAgICAgIGRvbid0IGRvIGFueXRoaW5nLCBqdXN0IGRlbW9uc3RyYXRlLlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHF1aWV0IG9wZXJhdGlvbiwgbWluaW1hbCBvdXRwdXQuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorbXNnc3RyICIiCisiVmFsZzpcbiIKKyIgIC0tcGFja2FnZSA8cGFra2U+ICAgICAgICBuYXZuZXQgcMOlIHBha2tlbiBodm9yIGtvcGllbiBhdiA8ZmlsPiBpa2tlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgYmxpciBvbWRpcmlnZXJ0LlxuIgorIiAgLS1sb2NhbCAgICAgICAgICAgICAgICAgIGFsbGUgcGFra2VuZXMgdmVyc2pvbmVyIGVyIG9tZGlyaWdlcnQuXG4iCisiICAtLWRpdmVydCA8b21kaXJpZ2VyLXRpbD4gbmF2bmV0IGJydWt0IGF2IGFuZHJlIHBha2tlcnMgdmVyc2pvbmVyLlxuIgorIiAgLS1yZW5hbWUgICAgICAgICAgICAgICAgIGZha3Rpc2sgZmx5dHRlIGZpbGVuIHV0IGF2IHZlaWVuIChlbGxlciAiCisidGlsYmFrZSkuXG4iCisiICAtLWFkbWluZGlyIDxtYXBwZT4gICAgICAgc2V0dCBtYXBwYSBtZWQgb21kaXJpZ2VyaW5nc2ZpbGVuZS5cbiIKKyIgIC0tdGVzdCAgICAgICAgICAgICAgICAgICBpa2tlIGdqw7hyIG5vZSwgYmFyZSBkZW1vbnN0cmVyLlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHN0aWxsZSBvcGVyYXNqb24sIG1pbWltYWx0IG1lZCB1dHNrcmlmdC5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICB2aXMgZGVubmUgaGplbHBtZWxkaW5nZW4uXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgdmlzIHZlcnNqb25lbi5cbiIKKyJcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiV2hlbiBhZGRpbmcsIGRlZmF1bHQgaXMgLS1sb2NhbCBhbmQgLS1kaXZlcnQgPG9yaWdpbmFsPi5kaXN0cmliLlxuIgorIldoZW4gcmVtb3ZpbmcsIC0tcGFja2FnZSBvciAtLWxvY2FsIGFuZCAtLWRpdmVydCBtdXN0IG1hdGNoIGlmIHNwZWNpZmllZC5cbiIKKyJQYWNrYWdlIHByZWluc3QvcG9zdHJtIHNjcmlwdHMgc2hvdWxkIGFsd2F5cyBzcGVjaWZ5IC0tcGFja2FnZSBhbmQgLS0iCisiZGl2ZXJ0LlxuIgorbXNnc3RyICIiCisiTsOlciBtYW4gbGVnZ2VyIHRpbCBlciBzdGFuZGFyZCAtLWxvY2FsIG9nIC0tZGl2ZXJ0IDxvcmlnaW5hbD4uZGlzdHJpYi5cbiIKKyJOw6VyIG1hbiBmamVybmVyIG3DpSAtLXBhY2thZ2UgZWxsZXIgLS1sb2NhbCBvZyAtLWRpdmVydCBzdGVtbWUgaHZpcyBvcHBnaXR0LlxuIgorIlBha2tlIHByZWluc3QvcG9zdHJtIHNrcmlwdCBza2FsIGFsbHRpZCBvcHBnaSAtLXBhY2thZ2Ugb2cgLS1kaXZlcnQuXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoxNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2hlY2tpbmcgJyVzJyIKK21zZ3N0ciAiZmVpbCB2ZWQga29udHJvbGwgYXYgwqslc8K7IgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjAzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJyZW5hbWUgaW52b2x2ZXMgb3ZlcndyaXRpbmcgYCVzJyB3aXRoXG4iCisiICBkaWZmZXJlbnQgZmlsZSBgJXMnLCBub3QgYWxsb3dlZCIKK21zZ3N0ciAiIgorImVuZHJpbmcgYXYgbmF2biBpbm5lYsOmcmVyIGF0IMKrJXPCuyBvdmVyc2tyaXZlcyBhdlxuIgorIiAgYW5uZW4gZmlsIMKrJXPCuywgaWtrZSB0aWxsYXR0IgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjIzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzczCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gd3JpdGUgZmlsZSAnJXMnIgorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgZmlsZSAnJXMnIgorbXNnc3RyICJrbGFydGUgaWtrZSDDpSBza3JpdmUgZmlsYSDCqyVzwrsiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyMjcKK21zZ2lkICJmaWxlIGNvcHkiCittc2dzdHIgImZpbGtvcGllcmluZyIKKworIzogc3JjL2RpdmVydGNtZC5jOjIzOQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVuYW1lICclcycgdG8gJyVzJyIKK21zZ3N0ciAia2xhcnRlIGlra2UgZW5kcmUgbmF2biBww6Ugwqslc8K7IHRpbCDCqyVzwrsiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVuYW1lOiByZW1vdmUgZHVwbGljYXRlIG9sZCBsaW5rICclcyciCittc2dzdHIgImVuZHJlIG5hdm46IGZqZXJuIGR1cGxpa2F0IGdhbW1lbCBsZW5rZSDCqyVzwrsiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyNjIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byBvcGVuIHNvdXJjZSBmaWxlIGAlLjI1MHMnIgorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgY29waWVkIHNvdXJjZSBmaWxlICclcyciCittc2dzdHIgImtsYXJ0ZSBpa2tlIMOlcG5lIGtpbGRlZmlsYSDCqyUuMjUwc8K7IgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mjg0CisjLCBjLWZvcm1hdAorbXNnaWQgImxvY2FsIGRpdmVyc2lvbiBvZiAlcyIKK21zZ3N0ciAibG9rYWwgb21kaXJpZ2VyaW5nIGF2ICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mjg2CisjLCBjLWZvcm1hdAorbXNnaWQgImxvY2FsIGRpdmVyc2lvbiBvZiAlcyB0byAlcyIKK21zZ3N0ciAibG9rYWwgb21kaXJpZ2VyaW5nIGF2ICVzIHRpbCAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjI5MAorIywgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnNpb24gb2YgJXMgYnkgJXMiCittc2dzdHIgIm9tZGlyaWdlcmluZyBhdiAlcyBtZWQgJXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJzaW9uIG9mICVzIHRvICVzIGJ5ICVzIgorbXNnc3RyICJvbWRpcmlnZXJpbmcgYXYgJXMgdGlsICVzIG1lZCAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjMwOQorIywgYy1mb3JtYXQKK21zZ2lkICJhbnkgZGl2ZXJzaW9uIG9mICVzIgorbXNnc3RyICJlbmh2ZXIgb21kaXJpZ2VyaW5nIGF2ICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MzExCisjLCBjLWZvcm1hdAorbXNnaWQgImFueSBkaXZlcnNpb24gb2YgJXMgdG8gJXMiCittc2dzdHIgImVuaHZlciBvbWRpcmlnZXJpbmcgYXYgJXMgdGlsICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MzU3CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBjcmVhdGUgbmV3ICVzIGZpbGUiCittc2dzdHIgImtsYXJ0ZSBpa2tlIG9wcHJldHRlIG5lZCAlcy1maWwiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozNzUgc3JjL3N0YXRjbWQuYzoyMTUgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE0MDQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIGZpbGUgJyVzJyIKK21zZ3N0ciAia2xhcnRlIGlra2UgdMO4bW1lIGZpbGEgwqslc8K7IgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MzgyCittc2dpZCAiZXJyb3IgcmVtb3Zpbmcgb2xkIGRpdmVyc2lvbnMtb2xkIgorbXNnc3RyICJmZWlsIHZlZCBmamVybmluZyBhdiBnYW1tZWwgZGl2ZXJzaW9ucy1vbGQiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozODQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBuZXcgZGl2ZXJzaW9ucy1vbGQiCittc2dzdHIgImZlaWwgdmVkIG9wcHJldHRlbHNlIGF2IG55IGRpdmVyc2lvbnMtb2xkIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mzg2Cittc2dpZCAiZXJyb3IgaW5zdGFsbGluZyBuZXcgZGl2ZXJzaW9ucyIKK21zZ3N0ciAiZmVpbCB2ZWQgaW5zdGFsbGFzam9uIGF2IG55ZSBvbWRpcmlnZXJpbmdlciIKKworIzogc3JjL2RpdmVydGNtZC5jOjQwNiBzcmMvZGl2ZXJ0Y21kLmM6NTAzIHNyYy9kaXZlcnRjbWQuYzo2MTAKKyM6IHNyYy9kaXZlcnRjbWQuYzo2MzAgc3JjL3N0YXRjbWQuYzoyOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhIHNpbmdsZSBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyBrcmV2ZXIgZW4gZW5rZWwgcGFyYW1ldGVyIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDA5IHNyYy9kaXZlcnRjbWQuYzo0MzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZW5hbWUgXCIlc1wiIGlzIG5vdCBhYnNvbHV0ZSIKK21zZ3N0ciAiZmlsZW5hdm4gwqslc8K7IGVyIGlra2UgYWJzb2x1dHQiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MTEgc3JjL3N0YXRjbWQuYzoyNDkKK21zZ2lkICJmaWxlIG1heSBub3QgY29udGFpbiBuZXdsaW5lcyIKK21zZ3N0ciAiZmlsIGthbiBpa2tlIGlubmVob2xkZSBsaW5qZXNraWZ0IgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDE4Cittc2dpZCAiQ2Fubm90IGRpdmVydCBkaXJlY3RvcmllcyIKK21zZ3N0ciAiS2FuIGlra2Ugb21kaXJpZ2VyZSBrYXRhbG9nZXIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGRpdmVydCBmaWxlICclcycgdG8gaXRzZWxmIgorbXNnc3RyICJrYW4gaWtrZSBvbWRpcmlnZXJlIGZpbCDCqyVzwrsgdGlsIHNlZyBzZWx2IgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDUzCisjLCBjLWZvcm1hdAorbXNnaWQgIkxlYXZpbmcgJyVzJ1xuIgorbXNnc3RyICJGb3JsYXRlciDCqyVzwrtcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjQ1OAorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGNsYXNoZXMgd2l0aCBgJXMnIgorbXNnc3RyICLCqyVzwrsgZXIgaSBrb25mbGlrdCBtZWQgwqslc8K7IgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDgxCisjLCBjLWZvcm1hdAorbXNnaWQgIkFkZGluZyAnJXMnXG4iCittc2dzdHIgIkxlZ2dlciB0aWwgwqslc8K7XG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiTm8gZGl2ZXJzaW9uICclcycsIG5vbmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiSW5nZW4gb21kaXJpZ2VyaW5nIMKrJXPCuywgaW5nZW50aW5nIGZqZXJuZXQuXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm1pc21hdGNoIG9uIGRpdmVydC10b1xuIgorIiAgd2hlbiByZW1vdmluZyBgJXMnXG4iCisiICBmb3VuZCBgJXMnIgorbXNnc3RyICIiCisiaWtrZSBzYW1zdmFyIGZvciBkaXZlcnQtdG9cbiIKKyIgIHVuZGVyIHNsZXR0aW5nIGF2IMKrJXPCu1xuIgorIiAgYmxlIMKrJXPCuyBmdW5uZXQiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm1pc21hdGNoIG9uIHBhY2thZ2VcbiIKKyIgIHdoZW4gcmVtb3ZpbmcgYCVzJ1xuIgorIiAgZm91bmQgYCVzJyIKK21zZ3N0ciAiIgorImlra2Ugc2Ftc3ZhciBmb3IgcGFja2FnZVxuIgorIiAgdW5kZXIgc2xldHRpbmcgYXYgwqslc8K7XG4iCisiICBibGUgwqslc8K7IGZ1bm5ldCIKKworIzogc3JjL2RpdmVydGNtZC5jOjUzOQorIywgYy1mb3JtYXQKK21zZ2lkICJSZW1vdmluZyAnJXMnXG4iCittc2dzdHIgIkZqZXJuZXIgwqslc8K7XG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo2NTcKK21zZ2lkICJwYWNrYWdlIG1heSBub3QgY29udGFpbiBuZXdsaW5lcyIKK21zZ3N0ciAicGFra2Uga2FuIGlra2UgaW5uZWhvbGRlIGxpbmplc2tpZnQiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo2NjYKK21zZ2lkICJkaXZlcnQtdG8gbWF5IG5vdCBjb250YWluIG5ld2xpbmVzIgorbXNnc3RyICJvbWRpcmlnZXJpbmcga2FuIGlra2UgaW5uZWhvbGRlIGxpbmplc2tpZnQiCisKKyM6IHNyYy9kaXZlcnRkYi5jOjY0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gZGl2ZXJzaW9ucyBmaWxlIgorbXNnc3RyICJrbGFydGUgaWtrZSDDpXBuZSBvbWRpcmlnZXJpbmdzZmlsIgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzo3MQorbXNnaWQgImZhaWxlZCB0byBmc3RhdCBwcmV2aW91cyBkaXZlcnNpb25zIGZpbGUiCittc2dzdHIgImtsYXJ0ZSBpa2tlIHV0ZsO4cmUgwqtmc3RhdMK7IHDDpSBkZW4gZm9ycmlnZSBvbWRpcmlnZXJpbmdzZmlsYSIKKworIzogc3JjL2RpdmVydGRiLmM6NzMKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgZGl2ZXJzaW9ucyBmaWxlIgorbXNnc3RyICJrbGFydGUgaWtrZSB1dGbDuHJlIMKrZnN0YXTCuyBww6Ugb21kaXJpZ2VyaW5nc2ZpbGEiCisKKyM6IHNyYy9kaXZlcnRkYi5jOjExMworIywgYy1mb3JtYXQKK21zZ2lkICJjb25mbGljdGluZyBkaXZlcnNpb25zIGludm9sdmluZyBgJS4yNTBzJyBvciBgJS4yNTBzJyIKK21zZ3N0ciAiIgorIm9tZGlyaWdlcmluZ2VyIGkga29uZmxpa3QgbWVkIGh2ZXJhbmRyZSwgaW52b2x2ZXJlciDCqyUuMjUwc8K7IGVsbGVyIMKrJS4yNTBzwrsiCisKKyM6IHNyYy9lbnF1aXJ5LmM6NzMKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgaW4gYSBtZXNzIGR1ZSB0byBzZXJpb3VzIHByb2JsZW1zIGR1cmluZ1xuIgorImluc3RhbGxhdGlvbi4gIFRoZXkgbXVzdCBiZSByZWluc3RhbGxlZCBmb3IgdGhlbSAoYW5kIGFueSBwYWNrYWdlc1xuIgorInRoYXQgZGVwZW5kIG9uIHRoZW0pIHRvIGZ1bmN0aW9uIHByb3Blcmx5OlxuIgorbXNnc3RyICIiCisiRGUgZsO4bGdlbmRlIHBha2tlbmUgZXIgaSB1b3JkZW4gcMOlIGdydW5uIGF2IGFsdm9ybGlnZSBwcm9ibGVtZXIgdW5kZXJcbiIKKyJpbnN0YWxsYXNqb25lbi4gRGUgbcOlIGluc3RhbGxlcmVzIHDDpSBueXR0IGZvciBhdCBkZSAob2cgZXZlbnR1ZWxsZSBwYWtrZXJcbiIKKyJzb20gZXIgYXZoZW5naWdlIGF2IGRlbSkgc2thbCB2aXJrZSBza2lra2VsaWc6XG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6ODAKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBoYXZlIGJlZW4gdW5wYWNrZWQgYnV0IG5vdCB5ZXQgY29uZmlndXJlZC5cbiIKKyJUaGV5IG11c3QgYmUgY29uZmlndXJlZCB1c2luZyBkcGtnIC0tY29uZmlndXJlIG9yIHRoZSBjb25maWd1cmVcbiIKKyJtZW51IG9wdGlvbiBpbiBkc2VsZWN0IGZvciB0aGVtIHRvIHdvcms6XG4iCittc2dzdHIgIiIKKyJEZSBmw7hsZ2VuZGUgcGFra2VuZSBlciBwYWtrZXQgdXQsIG1lbiBlciBpa2tlIHNhdHQgb3BwIGVubsOlLlxuIgorIkRlIG3DpSBzZXR0ZXMgb3BwIG1lZCDCq2Rwa2cgLS1jb25maWd1cmXCuyBlbGxlciBmcmEgb3Bwc2V0dHNtZW55ZW5cbiIKKyJpIGRzZWxlY3QgZm9yIGF0IGRlIHNrYWwgdmlya2U6XG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6ODcKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgb25seSBoYWxmIGNvbmZpZ3VyZWQsIHByb2JhYmx5IGR1ZSB0byBwcm9ibGVtc1xuIgorImNvbmZpZ3VyaW5nIHRoZW0gdGhlIGZpcnN0IHRpbWUuICBUaGUgY29uZmlndXJhdGlvbiBzaG91bGQgYmUgcmV0cmllZCB1c2luZ1xuIgorImRwa2cgLS1jb25maWd1cmUgPHBhY2thZ2U+IG9yIHRoZSBjb25maWd1cmUgbWVudSBvcHRpb24gaW4gZHNlbGVjdDpcbiIKK21zZ3N0ciAiIgorIkRlIGbDuGxnZW5kZSBwYWtrZW5lIGVyIGJhcmUgaGFsdnZlaXMgb3Bwc2F0dGUsIHNhbm5zeW5saWd2aXMgZm9yZGlcbiIKKyJkZXQgb3Bwc3RvIHByb2JsZW1lciBmw7hyc3RlIGdhbmdlbiBkZSBibGUgc2F0dCBvcHAuIFBha2tlbmUgYsO4ciBzZXR0ZXNcbiIKKyJvcHAgcMOlIG55dHQgbWVkIMKrZHBrZyAtLWNvbmZpZ3VyZSA8cGFra2U+wrsgZWxsZXIgb3Bwc2V0dHNtZW55ZW4gaSBkc2VsZWN0LlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjk0Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgYXJlIG9ubHkgaGFsZiBpbnN0YWxsZWQsIGR1ZSB0byBwcm9ibGVtcyBkdXJpbmdcbiIKKyJpbnN0YWxsYXRpb24uICBUaGUgaW5zdGFsbGF0aW9uIGNhbiBwcm9iYWJseSBiZSBjb21wbGV0ZWQgYnkgcmV0cnlpbmcgaXQ7XG4iCisidGhlIHBhY2thZ2VzIGNhbiBiZSByZW1vdmVkIHVzaW5nIGRzZWxlY3Qgb3IgZHBrZyAtLXJlbW92ZTpcbiIKK21zZ3N0ciAiIgorIkRlIGbDuGxnZW5kZSBwYWtrZW5lIGVyIGJhcmUgaGFsdnZlaXMgaW5zdGFsbGVydGUsIGZvcmRpIGRldCBvcHBzdG9cbiIKKyJwcm9ibGVtZXIgdW5kZXIgaW5zdGFsbGFzam9uZW4uIEluc3RhbGxhc2pvbmVuIGthbiBzYW5uc3lubGlndmlzICIKKyJnamVubm9tZsO4cmVzXG4iCisidmVkIMOlIHByw7h2ZSBww6Ugbnl0dC4gUGFra2VuZSBrYW4gZmplcm5lc3QgbWVkIGRzZWxlY3QgZWxsZXIgwqtkcGtnIC0tIgorInJlbW92ZcK7OlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjEwMQorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBhd2FpdGluZyBwcm9jZXNzaW5nIG9mIHRyaWdnZXJzIHRoYXQgdGhleVxuIgorImhhdmUgYWN0aXZhdGVkIGluIG90aGVyIHBhY2thZ2VzLiAgVGhpcyBwcm9jZXNzaW5nIGNhbiBiZSByZXF1ZXN0ZWQgdXNpbmdcbiIKKyJkc2VsZWN0IG9yIGRwa2cgLS1jb25maWd1cmUgLS1wZW5kaW5nIChvciBkcGtnIC0tdHJpZ2dlcnMtb25seSk6XG4iCittc2dzdHIgIiIKKyJEZSBmw7hsZ2VuZGUgcGFra2VuZSB2ZW50ZXIgcMOlIGJlaGFuZGxpbmcgYXYgdXRsw7hzZXJlIGRlIGhhciBha3RpdmVydFxuIgorImkgYW5kcmUgcGFra2VyLiBEZW5uZSBiZWhhbmRsaW5nZW4ga2FuIGJsaSBzdGFydGV0IHZlZCDDpSBicnVrZVxuIgorImRzZWxlY3QgZWxsZXIgZHBrZyAtLWNvbmZpZ3VyZSAtLXBlbmRpbmcgKGVsbGVyIGRwa2cgLS10cmlnZ2Vycy1vbmx5KTpcbiIKKworIzogc3JjL2VucXVpcnkuYzoxMDgKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBoYXZlIGJlZW4gdHJpZ2dlcmVkLCBidXQgdGhlIHRyaWdnZXIgcHJvY2Vzc2luZ1xuIgorImhhcyBub3QgeWV0IGJlZW4gZG9uZS4gIFRyaWdnZXIgcHJvY2Vzc2luZyBjYW4gYmUgcmVxdWVzdGVkIHVzaW5nXG4iCisiZHNlbGVjdCBvciBkcGtnIC0tY29uZmlndXJlIC0tcGVuZGluZyAob3IgZHBrZyAtLXRyaWdnZXJzLW9ubHkpOlxuIgorbXNnc3RyICIiCisiRGUgZsO4bGdlbmRlIHBha2tlbmUgaGFyIGJsaXR0IHV0bMO4c3QsIG1lbiB1dGzDuHNlcmJlaGFuZGxpbmdlbiBoYXIgaWtrZVxuIgorInN0YXJ0ZXQgZW5kYS4gRGVubmUgYmVoYW5kbGluZ2VuIGthbiBibGkgc3RhcnRldCB2ZWQgw6UgYnJ1a2UgZHNlbGVjdFxuIgorImVsbGVyIGRwa2cgLS1jb25maWd1cmUgLS1wZW5kaW5nIChlbGxlciBkcGtnIC0tdHJpZ2dlcnMtb25seSk6XG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTM3IHNyYy9lbnF1aXJ5LmM6MjExIHNyYy9lbnF1aXJ5LmM6MjkyIHNyYy9lbnF1aXJ5LmM6MzczCisjOiBzcmMvZW5xdWlyeS5jOjQ2MCBzcmMvc2VsZWN0LmM6OTggc3JjL3NlbGVjdC5jOjE2NCBzcmMvdHJpZ2NtZC5jOjE5OQorIzogc3JjL3VwZGF0ZS5jOjQ4IHNyYy91cGRhdGUuYzoxMTMgZHBrZy1zcGxpdC9xdWV1ZS5jOjIzMgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIHRha2VzIG5vIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS0lcyB0YXIgaW5nZW4gcGFyYW1ldHJlIgorCisjOiBzcmMvZW5xdWlyeS5jOjE1MgorbXNnaWQgIiIKKyJBbm90aGVyIHByb2Nlc3MgaGFzIGxvY2tlZCB0aGUgZGF0YWJhc2UgZm9yIHdyaXRpbmcsIGFuZCBtaWdodCBjdXJyZW50bHkgYmVcbiIKKyJtb2RpZnlpbmcgaXQsIHNvbWUgb2YgdGhlIGZvbGxvd2luZyBwcm9ibGVtcyBtaWdodCBqdXN0IGJlIGR1ZSB0byB0aGF0LlxuIgorbXNnc3RyICIiCisiRW4gYW5uZW4gcHJvc2VzcyBoYXIgbMOlc3QgZGF0YWJhc2VuIGZvciBza3JpdmluZyBvZyBrYW4gZm9yIMO4eWVibGlra2V0XG4iCisiZW5kcmUgZGVuLiBOb2VuIGF2IGRlIGbDuGxnZW5kZVx0cHJvYmxlbWVuZSBrYW4ga29tbWUgYXYgbmV0dG9wcCBkZXQuXG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTkxCisjLCBmdXp6eQorI3wgbXNnaWQgIjx1bmtub3duPiIKK21zZ2N0eHQgInNlY3Rpb24iCittc2dpZCAiPHVua25vd24+IgorbXNnc3RyICI8dWtqZW50PiIKKworIzogc3JjL2VucXVpcnkuYzoyNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiICVkIGluICVzOiAiCittc2dzdHIgIiAlZCBpICVzOiAiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MjY2CisjLCBjLWZvcm1hdAorbXNnaWQgIiAlZCBwYWNrYWdlLCBmcm9tIHRoZSBmb2xsb3dpbmcgc2VjdGlvbjoiCittc2dpZF9wbHVyYWwgIiAlZCBwYWNrYWdlcywgZnJvbSB0aGUgZm9sbG93aW5nIHNlY3Rpb25zOiIKK21zZ3N0clswXSAiICVkIHBha2tlLCBmcmEgZsO4bGdlbmRlIGF2c25pdHQ6IgorbXNnc3RyWzFdICIgJWQgcGFra2VyLCBmcmEgZsO4bGdlbmRlIGF2c25pdHQ6IgorCisjOiBzcmMvZW5xdWlyeS5jOjMwNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVmVyc2lvbiBvZiBkcGtnIHdpdGggd29ya2luZyAlcyBzdXBwb3J0IG5vdCB5ZXQgY29uZmlndXJlZC5cbiIKKyIgUGxlYXNlIHVzZSAnZHBrZyAtLWNvbmZpZ3VyZSBkcGtnJywgYW5kIHRoZW4gdHJ5IGFnYWluLlxuIgorbXNnc3RyICIiCisiVmVyc2pvbmVuIGF2IGRwa2cgbWVkIGZ1bmdlcmVuZGUgJXMtc3TDuHR0ZSBlciBpa2tlIHNhdHQgb3BwIGVubsOlLlxuIgorIiBLasO4ciDCq2Rwa2cgLS1jb25maWd1cmUgZHBrZ8K7IG9nIHByw7h2IHDDpSBueXR0LlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjMxMAorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnIG5vdCByZWNvcmRlZCBhcyBpbnN0YWxsZWQsIGNhbm5vdCBjaGVjayBmb3IgJXMgc3VwcG9ydCFcbiIKK21zZ3N0ciAiIgorImRwa2cgZXIgaWtrZSByZWdpc3RyZXJ0IHNvbSBpbnN0YWxsZXJ0LiBLYW4gaWtrZSB1bmRlcnPDuGtlICVzLXN0w7h0dGUuXG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzIxCittc2dpZCAiUHJlLURlcGVuZHMgZmllbGQiCittc2dzdHIgIlByZS1EZXBlbmRzIGZlbHQiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzI5Cittc2dpZCAiZXBvY2giCittc2dzdHIgImVwb2NoIgorCisjOiBzcmMvZW5xdWlyeS5jOjMzNworbXNnaWQgImxvbmcgZmlsZW5hbWVzIgorbXNnc3RyICJsYW5nZSBmaWxuYXZuIgorCisjOiBzcmMvZW5xdWlyeS5jOjM0NgorbXNnaWQgIm11bHRpcGxlIENvbmZsaWN0cyBhbmQgUmVwbGFjZXMiCittc2dzdHIgImZsZXJlIENvbmZsaWN0cyBvZyBSZXBsYWNlcyIKKworIzogc3JjL2VucXVpcnkuYzo0MzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IGNhbm5vdCBzZWUgaG93IHRvIHNhdGlzZnkgcHJlLWRlcGVuZGVuY3k6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKyJkcGtnOiBGaW5uZXIgaWtrZSB1dCBodm9yZGFuIGbDuHJrcmF2ZXQga2FuIG9wcGZ5bGxlczpcbiIKKyIgJXNcbiIKKworIzogc3JjL2VucXVpcnkuYzo0MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHNhdGlzZnkgcHJlLWRlcGVuZGVuY2llcyBmb3IgJS4yNTBzICh3YW50ZWQgZHVlIHRvICUuMjUwcykiCittc2dzdHIgImthbiBpa2tlIG9wcGZ5bGxlIGbDuHJrcmF2IGZvciAlLjI1MHMgKMO4bnNrZXQgcMOlIGdydW5uIGF2ICUuMjUwcykiCisKKyM6IHNyYy9lbnF1aXJ5LmM6NDcyCisjLCBjLWZvcm1hdAorbXNnaWQgIm9ic29sZXRlIG9wdGlvbiAnLS0lcycsIHBsZWFzZSB1c2UgJy0tJXMnIGluc3RlYWQuIgorbXNnc3RyICJmb3JlbGRldCB2YWxnICDCqy0tJXPCuywgYnJ1ayDCqy0tJXPCuyBpc3RlZGVuZm9yLiIKKworIzogc3JjL2VucXVpcnkuYzo1MTkKK21zZ2lkICIiCisiLS1jb21wYXJlLXZlcnNpb25zIHRha2VzIHRocmVlIGFyZ3VtZW50czogPHZlcnNpb24+IDxyZWxhdGlvbj4gPHZlcnNpb24+IgorbXNnc3RyICItLWNvbXBhcmUtdmVyc2lvbnMgdGFyIHRyZSBwYXJhbWV0cmU6IDx2ZXJzam9uPiA8cmVsYXNqb24+IDx2ZXJzam9uPiIKKworIzogc3JjL2VucXVpcnkuYzo1MjQKK21zZ2lkICItLWNvbXBhcmUtdmVyc2lvbnMgYmFkIHJlbGF0aW9uIgorbXNnc3RyICItLWNvbXBhcmUtdmVyc2lvbnMgdWd5bGRpZyByZWxhc2pvbiIKKworIzogc3JjL2VucXVpcnkuYzo1Mjkgc3JjL2VucXVpcnkuYzo1MzEgc3JjL2VucXVpcnkuYzo1NDAgc3JjL2VucXVpcnkuYzo1NDIKKyMsIGMtZm9ybWF0Cittc2dpZCAidmVyc2lvbiAnJXMnIGhhcyBiYWQgc3ludGF4OiAlcyIKK21zZ3N0ciAidmVyc2pvbiDCqyVzwrsgaGFyIHVneWxkaWcgc3ludGFrczogJXMiCisKKyM6IHNyYy9lcnJvcnMuYzo2MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IGVycm9yIHByb2Nlc3NpbmcgJXMgKC0tJXMpOlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisiJXM6IEZlaWwgdmVkIGJlaGFuZGxpbmcgYXYgJXMgKC0tJXMpOlxuIgorIiAlc1xuIgorCisjOiBzcmMvZXJyb3JzLmM6NjgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJkcGtnOiBmYWlsZWQgdG8gYWxsb2NhdGUgbWVtb3J5IGZvciBuZXcgZW50cnkgaW4gbGlzdCBvZiBmYWlsZWQgcGFja2FnZXMuIgorbXNnaWQgIiIKKyIlczogZmFpbGVkIHRvIGFsbG9jYXRlIG1lbW9yeSBmb3IgbmV3IGVudHJ5IGluIGxpc3Qgb2YgZmFpbGVkIHBhY2thZ2VzOiAlcyIKK21zZ3N0ciAiIgorImRwa2c6IEtsYXJ0ZSBpa2tlIHRpbGRlbGUgbWlubmUgZm9yIG55IG9wcGbDuHJpbmcgaSBsaXN0YSBvdmVyIG1pc2x5a3RlICIKKyJwYWtrZXIuIgorCisjOiBzcmMvZXJyb3JzLmM6NzkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImRwa2c6IHRvbyBtYW55IGVycm9ycywgc3RvcHBpbmdcbiIKK21zZ2lkICIlczogdG9vIG1hbnkgZXJyb3JzLCBzdG9wcGluZ1xuIgorbXNnc3RyICJkcGtnOiBGb3IgbWFuZ2UgZmVpbCwgc3RvcHBlclxuIgorCisjOiBzcmMvZXJyb3JzLmM6ODcKK21zZ2lkICJFcnJvcnMgd2VyZSBlbmNvdW50ZXJlZCB3aGlsZSBwcm9jZXNzaW5nOlxuIgorbXNnc3RyICJEZXQgb3Bwc3RvIGZlaWwgdmVkIGJlaGFuZGxpbmcgYXY6XG4iCisKKyM6IHNyYy9lcnJvcnMuYzo5NAorbXNnaWQgIlByb2Nlc3Npbmcgd2FzIGhhbHRlZCBiZWNhdXNlIHRoZXJlIHdlcmUgdG9vIG1hbnkgZXJyb3JzLlxuIgorbXNnc3RyICJCZWhhbmRsaW5nZW4gYmxlIHN0b3BwZXQgcMOlIGdydW5uIGF2IGZvciBtYW5nZSBmZWlsLlxuIgorCisjOiBzcmMvZXJyb3JzLmM6MTA1CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgJXMgd2FzIG9uIGhvbGQsIHByb2Nlc3NpbmcgaXQgYW55d2F5IGFzIHlvdSByZXF1ZXN0ZWRcbiIKK21zZ3N0ciAiIgorIlBha2tlbiAlcyB2YXIgaG9sZHQgdGlsYmFrZSwgbWVuIGJsaXIgYmVoYW5kbGV0IGxpa2V2ZWwgc2lkZW4gZHUgw7huc2tlciBkZXRcbiIKKworIzogc3JjL2Vycm9ycy5jOjEwOQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiUGFja2FnZSAlcyBpcyBvbiBob2xkLCBub3QgdG91Y2hpbmcgaXQuICBVc2UgLS1mb3JjZS1ob2xkIHRvIG92ZXJyaWRlLlxuIgorbXNnc3RyICIiCisiUGFra2VuICVzIGVyIGhvbGR0IHRpbGJha2UsIG9nIGJsaXIgaWtrZSByw7hydC4gQnJ1ayAtLWZvcmNlLWhvbGQgZm9yIMOlICIKKyJ0dmluZ2UgZ2plbm5vbSBiZWhhbmRsaW5nLlxuIgorCisjOiBzcmMvZXJyb3JzLmM6MTE5Cittc2dpZCAib3ZlcnJpZGluZyBwcm9ibGVtIGJlY2F1c2UgLS1mb3JjZSBlbmFibGVkOiIKK21zZ3N0ciAib3ZlcnN0eXJlciBwcm9ibGVtZXQgZm9yZGkgLS1mb3JjZSBlciBzbMOldHQgcMOlOiIKKworIzogc3JjL2ZpbGVzZGIuYzozMDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlIGAlLjI1MHMnIgorbXNnc3RyICJrbGFydGUgaWtrZSDDpXBuZSBmaWxsaXN0ZWZpbGEgZm9yIHBha2tlbiDCqyUuMjUwc8K7IgorCisjOiBzcmMvZmlsZXNkYi5jOjMxMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlIGAlLjI1MHMnIG1pc3NpbmcsIGFzc3VtaW5nIHBhY2thZ2UgaGFzIG5vIGZpbGVzICIKKyJjdXJyZW50bHkgaW5zdGFsbGVkLiIKK21zZ3N0ciAiIgorImZpbGxpc3RlZmlsYSBmb3IgcGFra2VuIMKrJS4yNTBzwrsgbWFuZ2xlci4gR8OlciB1dCBmcmEgYXQgcGFra2VuIGZvciAiCisiw7h5ZWJsaWtrZXQgaWtrZSBoYXIgbm9lbiBmaWxlciBpbnN0YWxsZXJ0LiIKKworIzogc3JjL2ZpbGVzZGIuYzozMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICclLjI1MHMnIgorbXNnc3RyICJrbGFydGUgaWtrZSBmaW5uZSBmaWxsaXN0ZWZpbGEgZm9yIHBha2tlbiDCqyUuMjUwc8K7IgorCisjOiBzcmMvZmlsZXNkYi5jOjMzMAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZXMgbGlzdCBmb3IgcGFja2FnZSBgJS4yNTBzJyIKK21zZ2lkICJyZWFkaW5nIGZpbGVzIGxpc3QgZm9yIHBhY2thZ2UgJyUuMjUwcyciCittc2dzdHIgImZpbGxpc3RlIGZvciBwYWtrZW4gwqslLjI1MHPCuyIKKworIzogc3JjL2ZpbGVzZGIuYzozMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICclLjI1MHMnIGlzIG1pc3NpbmcgZmluYWwgbmV3bGluZSIKK21zZ3N0ciAiZmlsbGlzdGVmaWxhIGZvciBwYWtrZW4gwqslLjI1MHPCuyBtYW5nbGVyIGF2c2x1dHRlbmRlIGxpbmplc2tpZnQiCisKKyM6IHNyYy9maWxlc2RiLmM6MzQ0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSBgJS4yNTBzJyBjb250YWlucyBlbXB0eSBmaWxlbmFtZSIKK21zZ3N0ciAiZmlsbGlzdGVmaWxhIGZvciBwYWtrZW4gwqslLjI1MHPCuyBpbm5laG9sZGVyIGV0IHRvbXQgZmlsbmF2biIKKworIzogc3JjL2ZpbGVzZGIuYzozNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcyciCittc2dzdHIgImZlaWwgdmVkIGx1a2tpbmcgYXYgZmlsbGlzdGVmaWxhIGZvciBwYWtrZW4gwqslLjI1MHPCuyIKKworIzogc3JjL2ZpbGVzZGIuYzo0NjIKK21zZ2lkICIoUmVhZGluZyBkYXRhYmFzZSAuLi4gIgorbXNnc3RyICIoTGVzZXIgZGF0YWJhc2UgLi4uICIKKworIzogc3JjL2ZpbGVzZGIuYzo0ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJWQgZmlsZSBvciBkaXJlY3RvcnkgY3VycmVudGx5IGluc3RhbGxlZC4pXG4iCittc2dpZF9wbHVyYWwgIiVkIGZpbGVzIGFuZCBkaXJlY3RvcmllcyBjdXJyZW50bHkgaW5zdGFsbGVkLilcbiIKK21zZ3N0clswXSAiJWQgZmlsIGVsbGVyIGthdGFsb2dlciBlciBmb3Igw7h5ZWJsaWtrZXQgaW5zdGFsbGVydC4pXG4iCittc2dzdHJbMV0gIiVkIGZpbGVyIG9nIGthdGFsb2dlciBlciBmb3Igw7h5ZWJsaWtrZXQgaW5zdGFsbGVydGUuKVxuIgorCisjOiBzcmMvZmlsZXNkYi5jOjUxNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICJrbGFydGUgaWtrZSBsYWdlIG9wcGRhdGVydCBmaWxsaXN0ZWZpbCBmb3IgcGFra2VuICVzIgorCisjOiBzcmMvZmlsZXNkYi5jOjUyNgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgdG8gdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgImtsYXJ0ZSBpa2tlIHNrcml2ZSB0aWwgb3BwZGF0ZXJ0IGZpbGxpc3RlZmlsIGZvciBwYWtrZW4gJXMiCisKKyM6IHNyYy9maWxlc2RiLmM6NTI4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBmbHVzaCB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAia2xhcnRlIGlra2UgdMO4bW1lIG9wcGRhdGVydCBmaWxsaXN0ZWZpbCBmb3IgcGFra2VuICVzIgorCisjOiBzcmMvZmlsZXNkYi5jOjUzMAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gc3luYyB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAia2xhcnRlIGlra2Ugc3lua3JvbmlzZXJlIG9wcGRhdGVydCBmaWxsaXN0ZWZpbCBmb3IgcGFra2VuICVzIgorCisjOiBzcmMvZmlsZXNkYi5jOjUzMworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2xvc2UgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgImtsYXJ0ZSBpa2tlIGx1a2tlIG9wcGRhdGVydCBmaWxsaXN0ZWZpbCBmb3IgcGFra2VuICVzIgorCisjOiBzcmMvZmlsZXNkYi5jOjUzNQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gaW5zdGFsbCB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAia2xhcnRlIGlra2UgaW5zdGFsbGVyZSBvcHBkYXRlcnQgZmlsbGlzdGVmaWwgZm9yIHBha2tlbiAlcyIKKworIzogc3JjL2hlbHAuYzo0OAorbXNnaWQgIm5vdCBpbnN0YWxsZWQiCittc2dzdHIgImlra2UgaW5zdGFsbGVydCIKKworIzogc3JjL2hlbHAuYzo0OQorbXNnaWQgIm5vdCBpbnN0YWxsZWQgYnV0IGNvbmZpZ3MgcmVtYWluIgorbXNnc3RyICJpa2tlIGluc3RhbGxlcnQsIG1lbiBvcHBzZXR0ZXQgbGlnZ2VyIGlubmUiCisKKyM6IHNyYy9oZWxwLmM6NTAKK21zZ2lkICJicm9rZW4gZHVlIHRvIGZhaWxlZCByZW1vdmFsIG9yIGluc3RhbGxhdGlvbiIKK21zZ3N0ciAiw7hkZWxhZ3QgcMOlIGdydW5uIGF2IG1pc2x5a2tldCBmamVybmluZyBlbGxlciBpbnN0YWxsYXNqb24iCisKKyM6IHNyYy9oZWxwLmM6NTEKK21zZ2lkICJ1bnBhY2tlZCBidXQgbm90IGNvbmZpZ3VyZWQiCittc2dzdHIgInBha2tldCB1dCwgbWVuIGlra2Ugc2F0dCBvcHAiCisKKyM6IHNyYy9oZWxwLmM6NTIKK21zZ2lkICJicm9rZW4gZHVlIHRvIHBvc3RpbnN0IGZhaWx1cmUiCittc2dzdHIgIsO4ZGVsYWd0IHDDpSBncnVubiBhdiBldHRlcmluc3RhbGxhc2pvbnNmZWlsIgorCisjOiBzcmMvaGVscC5jOjUzCittc2dpZCAiYXdhaXRpbmcgdHJpZ2dlciBwcm9jZXNzaW5nIGJ5IGFub3RoZXIgcGFja2FnZSIKK21zZ3N0ciAidmVudGVyIHDDpSB1dGzDuHNlcmJlaGFuZGxpbmcgZnJhIGFubmVuIHBha2tlIgorCisjOiBzcmMvaGVscC5jOjU0Cittc2dpZCAidHJpZ2dlcmVkIgorbXNnc3RyICJ1dGzDuHN0IgorCisjOiBzcmMvaGVscC5jOjU1Cittc2dpZCAiaW5zdGFsbGVkIgorbXNnc3RyICJpbnN0YWxsZXJ0IgorCisjOiBzcmMvaGVscC5jOjEwNworIywgZnV6enkKKyN8IG1zZ2lkICJlcnJvcjogUEFUSCBpcyBub3Qgc2V0LiIKK21zZ2lkICJQQVRIIGlzIG5vdCBzZXQuIgorbXNnc3RyICJmZWlsOiBQQVRIIGVyIGlra2Ugc2F0dC4iCisKKyM6IHNyYy9oZWxwLmM6MTI5CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuIgorbXNnc3RyICLCqyVzwrsgaWtrZSBmdW5uZXQgaSBQQVRIIGVsbGVyIGlra2Uga2rDuHJiYXIuIgorCisjOiBzcmMvaGVscC5jOjEzOAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiJyVzJyBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS4iCittc2dpZCAiIgorIiVkIGV4cGVjdGVkIHByb2dyYW0gbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuXG4iCisiJXMiCittc2dpZF9wbHVyYWwgIiIKKyIlZCBleHBlY3RlZCBwcm9ncmFtcyBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS5cbiIKKyIlcyIKK21zZ3N0clswXSAiwqslc8K7IGlra2UgZnVubmV0IGkgUEFUSCBlbGxlciBpa2tlIGtqw7hyYmFyLiIKK21zZ3N0clsxXSAiwqslc8K7IGlra2UgZnVubmV0IGkgUEFUSCBlbGxlciBpa2tlIGtqw7hyYmFyLiIKKworIzogc3JjL2hlbHAuYzoxNDEKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIiVkIGV4cGVjdGVkIHByb2dyYW0gbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuXG4iCisjfCAiTkI6IHJvb3QncyBQQVRIIHNob3VsZCB1c3VhbGx5IGNvbnRhaW4gL3Vzci9sb2NhbC9zYmluLCAvdXNyL3NiaW4gYW5kIC8iCisjfCAic2Jpbi4iCisjfCBtc2dpZF9wbHVyYWwgIiIKKyN8ICIlZCBleHBlY3RlZCBwcm9ncmFtcyBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS5cbiIKKyN8ICJOQjogcm9vdCdzIFBBVEggc2hvdWxkIHVzdWFsbHkgY29udGFpbiAvdXNyL2xvY2FsL3NiaW4sIC91c3Ivc2JpbiBhbmQgLyIKKyN8ICJzYmluLiIKK21zZ2lkICIiCisiTm90ZTogcm9vdCdzIFBBVEggc2hvdWxkIHVzdWFsbHkgY29udGFpbiAvdXNyL2xvY2FsL3NiaW4sIC91c3Ivc2JpbiBhbmQgLyIKKyJzYmluLiIKK21zZ3N0ciAiIgorIiVkIGZvcnZlbnRldCBwcm9ncmFtIGJsZSBpa2tlIGZ1bm5ldCBpIFBBVEggZWxsZXIgaWtrZSBrasO4cmJhcnQuXG4iCisiTkI6IEZvciByb290IGLDuHIgUEFUSCBpbm5laG9sZGUgL3Vzci9sb2NhbC9zYmluLCAvdXNyL3NiaW4gb2cgL3NiaW4uIgorCisjOiBzcmMvaGVscC5jOjE4OAorbXNnaWQgImFkbWluZGlyIG11c3QgYmUgaW5zaWRlIGluc3RkaXIgZm9yIGRwa2cgdG8gd29yayBwcm9wZXJseSIKK21zZ3N0ciAiIgorCisjOiBzcmMvaGVscC5jOjE5MCBzcmMvbWFpbi5jOjc0NworIywgZnV6enkKKyN8IG1zZ2lkICJ1bmFibGUgdG8gc2V0ZW52IGZvciBtYWludGFpbmVyIHNjcmlwdCIKK21zZ2lkICJ1bmFibGUgdG8gc2V0ZW52IGZvciBzdWJwcm9jZXNzZXMiCittc2dzdHIgImtsYXJ0ZSBpa2tlIHNldGVudiBmb3IgdmVkbGlrZWhvbGRlcnNrcmlwdCIKKworIzogc3JjL2hlbHAuYzoxOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNocm9vdCB0byBgJS4yNTBzJyIKK21zZ3N0ciAia2xhcnRlIGlra2Ugc2tpZnRlIGZpbHJvdCB0aWwgwqslLjI1MHPCuyIKKworIzogc3JjL2hlbHAuYzoxOTQgZHBrZy1kZWIvYnVpbGQuYzo0NTUgZHBrZy1kZWIvYnVpbGQuYzo0NTcKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTM2IGRwa2ctZGViL2J1aWxkLmM6NTU4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byBgJS4yNTVzJyIKK21zZ3N0ciAia2xhcnRlIGlra2Ugc2tpZnRlIGthdGFsb2cgdGlsIMKrJS4yNTVzwrsiCisKKyM6IHNyYy9oZWxwLmM6MjU2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgZXhlY3V0ZSBwZXJtaXNzaW9ucyBvbiBgJS4yNTBzJyIKK21zZ3N0ciAia2xhcnRlIGlra2Ugc2V0dGUga2rDuHJldGlsbGF0ZWxzZSBww6UgwqslLjI1MHPCuyIKKworIzogc3JjL2hlbHAuYzoyNzYKK21zZ2lkICJ1bmFibGUgdG8gc2V0ZW52IGZvciBtYWludGFpbmVyIHNjcmlwdCIKK21zZ3N0ciAia2xhcnRlIGlra2Ugc2V0ZW52IGZvciB2ZWRsaWtlaG9sZGVyc2tyaXB0IgorCisjOiBzcmMvaGVscC5jOjMwMAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnN0YWxsZWQgJXMgc2NyaXB0IgorbXNnc3RyICJpbnN0YWxsZXJ0ZSAlcy1za3JpcHQiCisKKyM6IHNyYy9oZWxwLmM6MzEzIHNyYy9oZWxwLmM6MzgyIHNyYy9oZWxwLmM6NDQxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0ICVzIGAlLjI1MHMnIgorbXNnc3RyICJmYW50IGlra2UgJXMgwqslLjI1MHPCuyIKKworIzogc3JjL2hlbHAuYzozNjggc3JjL2hlbHAuYzo0MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAibmV3ICVzIHNjcmlwdCIKK21zZ3N0ciAibnl0dCAlcy1za3JpcHQiCisKKyM6IHNyYy9oZWxwLmM6NDAyCisjLCBjLWZvcm1hdAorbXNnaWQgIm9sZCAlcyBzY3JpcHQiCittc2dzdHIgImdhbW1lbHQgJXMtc2tyaXB0IgorCisjOiBzcmMvaGVscC5jOjQxNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCAlcyAnJS4yNTBzJzogJXMiCittc2dzdHIgImZhbnQgaWtrZSAlcyDCqyUuMjUwc8K7OiAlcyIKKworIzogc3JjL2hlbHAuYzo0MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZyAtIHRyeWluZyBzY3JpcHQgZnJvbSB0aGUgbmV3IHBhY2thZ2UgaW5zdGVhZCAuLi5cbiIKK21zZ3N0ciAiZHBrZyAtIHByw7h2ZXIgaSBzdGVkZXQgZXQgc2tyaXB0IGZyYSBkZW4gbnllIHBha2tlbiAuLi5cbiIKKworIzogc3JjL2hlbHAuYzo0MzkKK21zZ2lkICJ0aGVyZSBpcyBubyBzY3JpcHQgaW4gdGhlIG5ldyB2ZXJzaW9uIG9mIHRoZSBwYWNrYWdlIC0gZ2l2aW5nIHVwIgorbXNnc3RyICJkZXQgZmlubmVzIGluZ2VuIHNrcmlwdCBpIGRlbiBueWUgdmVyc2pvbmVuIGF2IHBha2tlbiAtIGdpciBvcHAiCisKKyM6IHNyYy9oZWxwLmM6NDQ1CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IC4uLiBpdCBsb29rcyBsaWtlIHRoYXQgd2VudCBPSy5cbiIKK21zZ3N0ciAiZHBrZzogLi4uIGRldCBzZXIgdXQgdGlsIGF0IGRldCBnaWtrIGZpbnQuXG4iCisKKyM6IHNyYy9oZWxwLmM6NjE2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWN1cmVseSByZW1vdmUgJyUuMjU1cyciCittc2dzdHIgImtsYXJ0ZSBpa2tlIHNpa2tlcnQgZmplcm5lIMKrJS4yNTVzwrsiCisKKyM6IHNyYy9oZWxwLmM6NjIxIGRwa2ctZGViL2luZm8uYzo2NSBkcGtnLWRlYi9pbmZvLmM6NjcKK21zZ2lkICJybSBjb21tYW5kIGZvciBjbGVhbnVwIgorbXNnc3RyICIiCisKKyM6IHNyYy9pbmZvZGIuYzo1MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hlY2sgZXhpc3RlbmNlIG9mIGAlLjI1MHMnIgorbXNnc3RyICJrbGFydGUgaWtrZSBzamVra2Ugb20gwqslLjI1MHPCuyBmaW5uZXMiCisKKyM6IHNyYy9pbmZvZGIuYzo3MAorbXNnaWQgImNhbm5vdCByZWFkIGluZm8gZGlyZWN0b3J5IgorbXNnc3RyICJrbGFydGUgaWtrZSBsZXNlIGluZm9rYXRhbG9nZW4iCisKKyM6IHNyYy9tYWluLmM6NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuIGAlcycgcGFja2FnZSBtYW5hZ2VtZW50IHByb2dyYW0gdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiRGViaWFuIMKrJXPCuyBicnVrZXJncmVuc2Vzbml0dCBmb3IgcGFra2Vow6VuZHRlcmluZyB2ZXJzam9uICVzLlxuIgorCisjOiBzcmMvbWFpbi5jOjg1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1pfC0taW5zdGFsbCAgICAgICA8LmRlYiBmaWxlIG5hbWU+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXJlY3Rvcnk+IC4uLlxuIgorIiAgLS11bnBhY2sgICAgICAgICAgIDwuZGViIGZpbGUgbmFtZT4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRpcmVjdG9yeT4gLi4uXG4iCisiICAtQXwtLXJlY29yZC1hdmFpbCAgPC5kZWIgZmlsZSBuYW1lPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyZWN0b3J5PiAuLi5cbiIKKyIgIC0tY29uZmlndXJlICAgICAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtLXRyaWdnZXJzLW9ubHkgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLXJ8LS1yZW1vdmUgICAgICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC1QfC0tcHVyZ2UgICAgICAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtLWdldC1zZWxlY3Rpb25zIFs8cGF0dGVybj4gLi4uXSBHZXQgbGlzdCBvZiBzZWxlY3Rpb25zIHRvIHN0ZG91dC5cbiIKKyIgIC0tc2V0LXNlbGVjdGlvbnMgICAgICAgICAgICAgICAgIFNldCBwYWNrYWdlIHNlbGVjdGlvbnMgZnJvbSBzdGRpbi5cbiIKKyIgIC0tY2xlYXItc2VsZWN0aW9ucyAgICAgICAgICAgICAgIERlc2VsZWN0IGV2ZXJ5IG5vbi1lc3NlbnRpYWwgcGFja2FnZS5cbiIKKyIgIC0tdXBkYXRlLWF2YWlsIDxQYWNrYWdlcy1maWxlPiAgIFJlcGxhY2UgYXZhaWxhYmxlIHBhY2thZ2VzIGluZm8uXG4iCisiICAtLW1lcmdlLWF2YWlsIDxQYWNrYWdlcy1maWxlPiAgICBNZXJnZSB3aXRoIGluZm8gZnJvbSBmaWxlLlxuIgorIiAgLS1jbGVhci1hdmFpbCAgICAgICAgICAgICAgICAgICAgRXJhc2UgZXhpc3RpbmcgYXZhaWxhYmxlIGluZm8uXG4iCisiICAtLWZvcmdldC1vbGQtdW5hdmFpbCAgICAgICAgICAgICBGb3JnZXQgdW5pbnN0YWxsZWQgdW5hdmFpbGFibGUgcGtncy5cbiIKKyIgIC1zfC0tc3RhdHVzIDxwYWNrYWdlPiAuLi4gICAgICAgIERpc3BsYXkgcGFja2FnZSBzdGF0dXMgZGV0YWlscy5cbiIKKyIgIC1wfC0tcHJpbnQtYXZhaWwgPHBhY2thZ2U+IC4uLiAgIERpc3BsYXkgYXZhaWxhYmxlIHZlcnNpb24gZGV0YWlscy5cbiIKKyIgIC1MfC0tbGlzdGZpbGVzIDxwYWNrYWdlPiAuLi4gICAgIExpc3QgZmlsZXMgYG93bmVkJyBieSBwYWNrYWdlKHMpLlxuIgorIiAgLWx8LS1saXN0IFs8cGF0dGVybj4gLi4uXSAgICAgICAgTGlzdCBwYWNrYWdlcyBjb25jaXNlbHkuXG4iCisiICAtU3wtLXNlYXJjaCA8cGF0dGVybj4gLi4uICAgICAgICBGaW5kIHBhY2thZ2Uocykgb3duaW5nIGZpbGUocykuXG4iCisiICAtQ3wtLWF1ZGl0ICAgICAgICAgICAgICAgICAgICAgICBDaGVjayBmb3IgYnJva2VuIHBhY2thZ2UocykuXG4iCisiICAtLXByaW50LWFyY2hpdGVjdHVyZSAgICAgICAgICAgICBQcmludCBkcGtnIGFyY2hpdGVjdHVyZS5cbiIKKyIgIC0tY29tcGFyZS12ZXJzaW9ucyA8YT4gPG9wPiA8Yj4gIENvbXBhcmUgdmVyc2lvbiBudW1iZXJzIC0gc2VlIGJlbG93LlxuIgorIiAgLS1mb3JjZS1oZWxwICAgICAgICAgICAgICAgICAgICAgU2hvdyBoZWxwIG9uIGZvcmNpbmcuXG4iCisiICAtRGh8LS1kZWJ1Zz1oZWxwICAgICAgICAgICAgICAgICBTaG93IGhlbHAgb24gZGVidWdnaW5nLlxuIgorIlxuIgorbXNnc3RyICIiCisiS29tbWFuZG9lcjpcbiIKKyIgIC1pfC0taW5zdGFsbCAgICAgICA8LmRlYiBmaWxuYXZuPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8a2F0YWxvZz4gLi4uXG4iCisiICAtLXVucGFjayAgICAgICAgICAgPC5kZWIgZmlsbmF2bj4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGthdGFsb2c+IC4uLlxuIgorIiAgLUF8LS1yZWNvcmQtYXZhaWwgIDwuZGViIGZpbG5hdm4+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxrYXRhbG9nPiAuLi5cbiIKKyIgIC0tY29uZmlndXJlICAgICAgICA8cGFra2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLS10cmlnZ2Vycy1vbmx5ICAgIDxwYWtrZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtcnwtLXJlbW92ZSAgICAgICAgPHBha2tlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC1QfC0tcHVyZ2UgICAgICAgICA8cGFra2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLS1nZXQtc2VsZWN0aW9ucyBbPG3DuG5zdGVyPiAuLi5dIHNlbmQgbGlzdGUgb3ZlciB2YWxnZW5lIHRpbCBzdGFuZGFyZC11dC5cbiIKKyIgIC0tc2V0LXNlbGVjdGlvbnMgICAgICAgICAgICAgICAgIG9wcGdpIHBha2tldmFsZ2VuZSBmcmEgc3RhbmRhcmQtaW5uLlxuIgorIiAgLS1jbGVhci1zZWxlY3Rpb25zICAgICAgICAgICAgICAgZmplcm4gYWxsZSB2YWxndGUgaWtrZS1lc3NlbnNpZWxsZSAiCisicGFra2VyLlxuIgorIiAgLS11cGRhdGUtYXZhaWwgPFBhY2thZ2VzLWZpbGU+ICAgYnl0dCB1dCBpbmZvcm1hc2pvbiBvbSB0aWxnamVuZ2VsaWdlICIKKyJwYWtrZXIuXG4iCisiICAtLW1lcmdlLWF2YWlsIDxQYWNrYWdlcy1maWxlPiAgICBmbGV0dCBtZWQgaW5mb3JtYXNqb24gZnJhIGZpbC5cbiIKKyIgIC0tY2xlYXItYXZhaWwgICAgICAgICAgICAgICAgICAgIHNsZXR0IGVrc2lzdGVyZW5kZSBpbmZvIG9tIHRpbGdqZW5nZWxpZ2UgIgorInBha2tlci5cbiIKKyIgIC0tZm9yZ2V0LW9sZC11bmF2YWlsICAgICAgICAgICAgIGdsZW0gdXRpbGdqZW5nZWxpZ2UsIGlra2UgaW5zdGFsbGVydGUgIgorInBha2tlci5cbiIKKyIgIC1zfC0tc3RhdHVzIDxwYWtrZT4gLi4uICAgICAgICB2aXMgZGV0YWxqZXIgb20gcGFra2VzdGF0dXMuXG4iCisiICAtcHwtLXByaW50LWF2YWlsIDxwYWtrZT4gLi4uICAgIHZpcyB0aWxnamVuZ2VsaWcgdmVyc2pvbmVyLlxuIgorIiAgLUx8LS1saXN0ZmlsZXMgPHBha2tlPiAuLi4gICAgIHZpcyBkZSBmaWxlbmUgc29tIGtvbW1lciBmcmEgcGFra2UocikuXG4iCisiICAtbHwtLWxpc3QgWzxtw7huc3Rlcj4gLi4uXSAgICAgICAgdmlzIG92ZXJzaWt0bGlnIHBha2tlbGlzdGUuXG4iCisiICAtU3wtLXNlYXJjaCA8bcO4bnN0ZXI+IC4uLiAgICAgICAgZmlubiBwYWtrZS9wYWtrZXIgc29tIGlubmVob2xkZXIgZmlsZSIKKyIocikuXG4iCisiICAtQ3wtLWF1ZGl0ICAgICAgICAgICAgICAgICAgICAgICBzamVrayBmb3Igw7hkZWxhZ3RlIHBha2tlKHIpLlxuIgorIiAgLS1wcmludC1hcmNoaXRlY3R1cmUgICAgICAgICAgICAgdmlzIG3DpWxhcmtpdGVrdHVyLlxuIgorIiAgLS1jb21wYXJlLXZlcnNpb25zIDxhPiA8b3A+IDxiPiAgc2FtbWVubGlrbmUgdmVyc2pvbnNudW1tZXIsIHNlIG5lZGVuZm9yLlxuIgorIiAgLS1mb3JjZS1oZWxwICAgICAgICAgICAgICAgICAgICAgdmlzIGhqZWxwIG9tIHR2aW5naW5nLlxuIgorIiAgLURofC0tZGVidWc9aGVscCAgICAgICAgICAgICAgICAgdmlzIGhqZWxwIG9tIGF2bHVzaW5nLlxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjExMyBzcmMvcXVlcnljbWQuYzo2MzEgc3JjL3RyaWdjbWQuYzo3NyBkcGtnLWRlYi9tYWluLmM6ODgKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjc3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIgIC1ofC0taGVscCAgICAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgICAgICAgICBTaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorbXNnc3RyICIiCisiICAtaHwtLWhlbHAgICAgICAgICAgICAgICAgICAgICAgICBWaXNlciBkZW5uZSBoamVscG1lbGRpbmdlbi5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgICAgICAgIFZpc2VyIHZlcnNqb25zbnVtbWVyZXQuXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTE4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJVc2UgZHBrZyAtYnwtLWJ1aWxkfC1jfC0tY29udGVudHN8LWV8LS1jb250cm9sfC1JfC0taW5mb3wtZnwtLWZpZWxkfFxuIgorIiAteHwtLWV4dHJhY3R8LVh8LS12ZXh0cmFjdHwtLWZzeXMtdGFyZmlsZSAgb24gYXJjaGl2ZXMgKHR5cGUgJXMgLS1oZWxwKS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIkJydWsgZHBrZyAtYnwtLWJ1aWxkfC1jfC0tY29udGVudHN8LWV8LS1jb250cm9sfC1JfC0taW5mb3wtZnwtLWZpZWxkfFxuIgorIiAteHwtLWV4dHJhY3R8LVh8LS12ZXh0cmFjdHwtLWZzeXMtdGFyZmlsZSAgcMOlIGFya2l2ZXIgKHNrcml2ICVzIC0taGVscCkuXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTIzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJGb3IgaW50ZXJuYWwgdXNlOiBkcGtnIC0tYXNzZXJ0LXN1cHBvcnQtcHJlZGVwZW5kcyB8IC0tcHJlZGVwLXBhY2thZ2UgfFxuIgorIiAgLS1hc3NlcnQtd29ya2luZy1lcG9jaCB8IC0tYXNzZXJ0LWxvbmctZmlsZW5hbWVzIHwgLS1hc3NlcnQtbXVsdGktY29ucmVwLlxuIgorIlxuIgorbXNnc3RyICIiCisiRm9yIGludGVybiBicnVrOiBkcGtnIC0tYXNzZXJ0LXN1cHBvcnQtcHJlZGVwZW5kcyB8IC0tcHJlZGVwLXBhY2thZ2UgfFxuIgorIiAgLS1hc3NlcnQtd29ya2luZy1lcG9jaCB8IC0tYXNzZXJ0LWxvbmctZmlsZW5hbWVzIHwgLS1hc3NlcnQtbXVsdGktY29ucmVwLlxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjEyOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT4gICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorIiAgLS1yb290PTxkaXJlY3Rvcnk+ICAgICAgICAgSW5zdGFsbCBvbiBhIGRpZmZlcmVudCByb290IGRpcmVjdG9yeS5cbiIKKyIgIC0taW5zdGRpcj08ZGlyZWN0b3J5PiAgICAgIENoYW5nZSBpbnN0YWxsYXRpb24gZGlyIHdpdGhvdXQgY2hhbmdpbmcgYWRtaW4gIgorImRpci5cbiIKKyIgIC0tcGF0aC1leGNsdWRlPTxwYXR0ZXJuPiAgIERvIG5vdCBpbnN0YWxsIHBhdGhzIHdoaWNoIG1hdGNoIGEgc2hlbGwgIgorInBhdHRlcm4uXG4iCisiICAtLXBhdGgtaW5jbHVkZT08cGF0dGVybj4gICBSZS1pbmNsdWRlIGEgcGF0dGVybiBhZnRlciBhIHByZXZpb3VzICIKKyJleGNsdXNpb24uXG4iCisiICAtT3wtLXNlbGVjdGVkLW9ubHkgICAgICAgICBTa2lwIHBhY2thZ2VzIG5vdCBzZWxlY3RlZCBmb3IgaW5zdGFsbC8iCisidXBncmFkZS5cbiIKKyIgIC1FfC0tc2tpcC1zYW1lLXZlcnNpb24gICAgIFNraXAgcGFja2FnZXMgd2hvc2Ugc2FtZSB2ZXJzaW9uIGlzIGluc3RhbGxlZC5cbiIKKyIgIC1HfC0tcmVmdXNlLWRvd25ncmFkZSAgICAgIFNraXAgcGFja2FnZXMgd2l0aCBlYXJsaWVyIHZlcnNpb24gdGhhbiAiCisiaW5zdGFsbGVkLlxuIgorIiAgLUJ8LS1hdXRvLWRlY29uZmlndXJlICAgICAgSW5zdGFsbCBldmVuIGlmIGl0IHdvdWxkIGJyZWFrIHNvbWUgb3RoZXIgIgorInBhY2thZ2UuXG4iCisiICAtLVtuby1ddHJpZ2dlcnMgICAgICAgICAgICBTa2lwIG9yIGZvcmNlIGNvbnNlcXVlbnRpYWwgdHJpZ2dlciAiCisicHJvY2Vzc2luZy5cbiIKKyIgIC0tbm8tZGVic2lnICAgICAgICAgICAgICAgIERvIG5vdCB0cnkgdG8gdmVyaWZ5IHBhY2thZ2Ugc2lnbmF0dXJlcy5cbiIKKyIgIC0tbm8tYWN0fC0tZHJ5LXJ1bnwtLXNpbXVsYXRlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBKdXN0IHNheSB3aGF0IHdlIHdvdWxkIGRvIC0gZG9uJ3QgZG8gaXQuXG4iCisiICAtRHwtLWRlYnVnPTxvY3RhbD4gICAgICAgICBFbmFibGUgZGVidWdnaW5nIChzZWUgLURoZWxwIG9yIC0tZGVidWc9aGVscCkuXG4iCisiICAtLXN0YXR1cy1mZCA8bj4gICAgICAgICAgICBTZW5kIHN0YXR1cyBjaGFuZ2UgdXBkYXRlcyB0byBmaWxlIGRlc2NyaXB0b3IgIgorIjxuPi5cbiIKKyIgIC0tbG9nPTxmaWxlbmFtZT4gICAgICAgICAgIExvZyBzdGF0dXMgY2hhbmdlcyBhbmQgYWN0aW9ucyB0byA8ZmlsZW5hbWU+LlxuIgorIiAgLS1pZ25vcmUtZGVwZW5kcz08cGFja2FnZT4sLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZ25vcmUgZGVwZW5kZW5jaWVzIGludm9sdmluZyA8cGFja2FnZT4uXG4iCisiICAtLWZvcmNlLS4uLiAgICAgICAgICAgICAgICBPdmVycmlkZSBwcm9ibGVtcyAoc2VlIC0tZm9yY2UtaGVscCkuXG4iCisiICAtLW5vLWZvcmNlLS4uLnwtLXJlZnVzZS0uLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3Agd2hlbiBwcm9ibGVtcyBlbmNvdW50ZXJlZC5cbiIKKyIgIC0tYWJvcnQtYWZ0ZXIgPG4+ICAgICAgICAgIEFib3J0IGFmdGVyIGVuY291bnRlcmluZyA8bj4gZXJyb3JzLlxuIgorIlxuIgorbXNnc3RyICIiCisiVmFsZzpcbiIKKyIgIC0tYWRtaW5kaXI9PG1hcHBlPiAgICAgICAgIEJydWsgPG1hcHBlPiBpIHN0ZWRldCBmb3IgJXMuXG4iCisiICAtLXJvb3Q9PG1hcHBlPiAgICAgICAgICAgICBJbnN0YWxsZXIgcMOlIGFsdGVybmF0aXZ0IHN5c3RlbSBtZWQgZW4gYW5uZW4gIgorImZpbHJvdC5cbiIKKyIgIC0taW5zdGRpcj08bWFwcGU+ICAgICAgICAgIFNraWZ0IGluc3RhbGxhc2pvbnNyb3QgdXRlbiDDpSBza2lmdGUgIgorImFkbWluaXN0cmFzam9uc21hcHBlLlxuIgorIiAgLS1wYXRoLWV4Y2x1ZGU9PG3DuG5zdGVyPiAgIElra2UgaW5zdGFsbGVyIHRpbCBzdGllciBzb20gc2Ftc3ZhcmVyIG1lZCAiCisic2thbGxtw7huc3Rlci5cbiIKKyIgIC0tcGF0aC1pbmNsdWRlPTxtw7huc3Rlcj4gICBJbmtsdWRlciBldCBtw7huc3RlciBldHRlciBlbiB0aWRsaWdlcmUgIgorImVrc2tsdWRlcmluZy5cbiIKKyIgIC1PfC0tc2VsZWN0ZWQtb25seSAgICAgICAgIEhvcHAgb3ZlciBwYWtrZXIgc29tIGlra2UgZXIgdmFsZ3QgZm9yICIKKyJpbnN0YWxsYXNqb24vb3BwZ3JhZGVyaW5nLlxuIgorIiAgLUV8LS1za2lwLXNhbWUtdmVyc2lvbiAgICAgSG9wcCBvdmVyIHBha2tlciBkZXIgZGVuIHNhbW1lIHZlcnNqb25lbiBlciAiCisiaW5zdGFsbGVydCBmcmEgZsO4ci5cbiIKKyIgIC1HfC0tcmVmdXNlLWRvd25ncmFkZSAgICAgIEhvcHAgb3ZlciBwYWtrZXIgbWVkIGxhdmVyZSB2ZXJzam9uc251bW1lciBlbm4gIgorImRlbiBpbnN0YWxsZXJ0ZS5cbiIKKyIgIC1CfC0tYXV0by1kZWNvbmZpZ3VyZSAgICAgIEluc3RhbGxlciBzZWx2IG9tIGRldCBrb21tZXIgdGlsIMOlIMO4ZGVsZWdnZSAiCisiYW5kcmUgcGFra2VyLlxuIgorIiAgLS1bbm8tXXRyaWdnZXJzICAgICAgICAgICAgSG9wcCBvdmVyIGVsbGVyIHR2aW5nIGV0dGVyZsO4bGdlbmRlICIKKyJ1dGzDuHNlcmJlaGFuZGxpbmcuXG4iCisiICAtLW5vLWRlYnNpZyAgICAgICAgICAgICAgICBJa2tlIHByw7h2IMOlIGJla3JlZnRlIHBha2tlc2lnbmF0dXJlci5cbiIKKyIgIC0tbm8tYWN0fC0tZHJ5LXJ1bnwtLXNpbXVsYXRlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBWaXMgYmFyZSBkZXQgc29tIGtvbW1lciB0aWwgw6Ugc2tqZSAtIHV0ZW4gw6UgIgorImdqw7hyZSBkZXQuXG4iCisiICAtRHwtLWRlYnVnPTxva3RhbD4gICAgICAgICBTbMOlIHDDpSBhdmx1c2luZyAtIHNlIC1EaGVscCBlbGxlciAtLWRlYnVnPWhlbHBcbiIKKyIgIC0tc3RhdHVzLWZkIDxuPiAgICAgICAgICAgIFNlbmQgc3RhdHVzZW5kcmluZ3NvcHBkYXRlcmluZ2VyIHRpbCAiCisiZmlsZGVza3JpcHRvciA8bj4uXG4iCisiICAtLWxvZz08ZmlsbmF2bj4gICAgICAgICAgICBMb2dnIHN0YXR1c2VuZHJpbmdlciBvZyBoYW5kbGluZ2VyIHRpbCAiCisiPGZpbG5hdm4+LlxuIgorIiAgLS1pZ25vcmUtZGVwZW5kcz08cGFra2U+LC4uLiAgIElnbm9yZXIgcGFra2VrcmF2IG1lZCBwYWtrZW4gPHBha2tlPi5cbiIKKyIgIC0tZm9yY2UtLi4uICAgICAgICAgICAgICAgICAgICBUdmluZyBnamVubm9tIG9wZXJhc2pvbiAoc2UgLS1mb3JjZS1oZWxwKS5cbiIKKyIgIC0tbm8tZm9yY2UtLi4ufC0tcmVmdXNlLS4uLiAgICBTdG9wcCBuw6VyIHByb2JsZW0gb3Bwc3TDpXIuXG4iCisiICAtLWFib3J0LWFmdGVyIDxuPiAgICAgICAgICAgICAgQXZicnl0IGV0dGVyIDxuPiBmZWlsLlxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjE1NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tcGFyaXNvbiBvcGVyYXRvcnMgZm9yIC0tY29tcGFyZS12ZXJzaW9ucyBhcmU6XG4iCisiICBsdCBsZSBlcSBuZSBnZSBndCAgICAgICAodHJlYXQgZW1wdHkgdmVyc2lvbiBhcyBlYXJsaWVyIHRoYW4gYW55ICIKKyJ2ZXJzaW9uKTtcbiIKKyIgIGx0LW5sIGxlLW5sIGdlLW5sIGd0LW5sICh0cmVhdCBlbXB0eSB2ZXJzaW9uIGFzIGxhdGVyIHRoYW4gYW55IHZlcnNpb24pO1xuIgorIiAgPCA8PCA8PSA9ID49ID4+ID4gICAgICAgKG9ubHkgZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBjb250cm9sIGZpbGUgIgorInN5bnRheCkuXG4iCisiXG4iCittc2dzdHIgIiIKKyJTYW1tZW5saWtuaW5nc29wZXJhdG9yZXIgdGlsIC0tY29tcGFyZS12ZXJzaW9ucyBlcjpcbiIKKyIgIGx0IGxlIGVxIG5lIGdlIGd0ICAgICAgIChzZSBww6UgwqtpbmdlbiB2ZXJzam9uwrsgc29tIGVsZHJlIGVubiBhbmRyZSAiCisidmVyc2pvbmVyKTtcbiIKKyIgIGx0LW5sIGxlLW5sIGdlLW5sIGd0LW5sIChzZSBww6UgwqtpbmdlbiB2ZXJzam9uwrsgc29tIG55ZXJlIGVubiBhbmRyZSAiCisidmVyc2pvbmVyKTtcbiIKKyIgIDwgPDwgPD0gPSA+PSA+PiA+ICAgICAgIChiYXJlIGZvciBrb21wYXRpYmlsaXRldCBtZWQgc3ludGFrc2VuIGkgIgorImtvbnRyb2xsZmlsYSkuXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTYxCisjLCBjLWZvcm1hdAorbXNnaWQgIlVzZSBgZHNlbGVjdCcgb3IgYGFwdGl0dWRlJyBmb3IgdXNlci1mcmllbmRseSBwYWNrYWdlIG1hbmFnZW1lbnQuXG4iCittc2dzdHIgIiIKKyJCcnVrIMKrZHNlbGVjdMK7IGVsbGVyIMKrYXB0aXR1ZGXCuyBmb3IgZW4gYnJ1a2VydmVubmxpZyBwYWtrZWjDpW5kdGVyaW5nLlxuIgorCisjOiBzcmMvbWFpbi5jOjE3MAorbXNnaWQgIiIKKyJUeXBlIGRwa2cgLS1oZWxwIGZvciBoZWxwIGFib3V0IGluc3RhbGxpbmcgYW5kIGRlaW5zdGFsbGluZyBwYWNrYWdlcyBbKl07XG4iCisiVXNlIGBkc2VsZWN0JyBvciBgYXB0aXR1ZGUnIGZvciB1c2VyLWZyaWVuZGx5IHBhY2thZ2UgbWFuYWdlbWVudDtcbiIKKyJUeXBlIGRwa2cgLURoZWxwIGZvciBhIGxpc3Qgb2YgZHBrZyBkZWJ1ZyBmbGFnIHZhbHVlcztcbiIKKyJUeXBlIGRwa2cgLS1mb3JjZS1oZWxwIGZvciBhIGxpc3Qgb2YgZm9yY2luZyBvcHRpb25zO1xuIgorIlR5cGUgZHBrZy1kZWIgLS1oZWxwIGZvciBoZWxwIGFib3V0IG1hbmlwdWxhdGluZyAqLmRlYiBmaWxlcztcbiIKKyJcbiIKKyJPcHRpb25zIG1hcmtlZCBbKl0gcHJvZHVjZSBhIGxvdCBvZiBvdXRwdXQgLSBwaXBlIGl0IHRocm91Z2ggYGxlc3MnIG9yICIKKyJgbW9yZScgISIKK21zZ3N0ciAiIgorIlNrcml2IMKrZHBrZyAtLWhlbHDCuyBmb3IgaGplbHAgb20gaW5zdGFsbGFzam9uIG9nIGF2aW5zdGFsbGFzam9uIGF2IHBha2tlciAiCisiWypdO1xuIgorIkJydWsgwqtkc2VsZWN0wrsgZWxsZXIgwqthcHRpdHVkZcK7IGZvciBicnVrZXJ2ZW5ubGlnIHBha2tlaMOlbmR0ZXJpbmc7XG4iCisiU2tyaXYgwqtkcGtnIC1EaGVscMK7IGZvciBlbiBsaXN0ZSBvdmVyIGF2bHVzaW5nc2Z1bmtzam9uZW5lIHRpbCBkcGtnO1xuIgorIlNrcml2IMKrZHBrZyAtLWZvcmNlLWhlbHDCuyBmb3IgaW5mbyBvbSBodm9yZGFuIG9wZXJhc2pvbmVyIGthbiB0dmluZ2VzICIKKyJnamVubm9tO1xuIgorIlNrcml2IMKrZHBrZy1kZWIgLS1oZWxwwrsgZm9yIGhqZWxwIG9tIGVuZHJpbmcgYXYgKi5kZWItZmlsZXI7XG4iCisiXG4iCisiVmFsZyBtYXJrZXJ0IG1lZCBbKl0gZ2lyIG15ZSB0ZWtzdCAtIGJydWsgwqtsZXNzwrsgZWxsZXIgwqttb3JlwrsgZm9yIMOlIGxlc2UgIgorImluZm9ybWFzam9uZW4hIgorCisjOiBzcmMvbWFpbi5jOjIxOQorbXNnaWQgIlNldCBhbGwgZm9yY2Ugb3B0aW9ucyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIyMQorbXNnaWQgIlJlcGxhY2UgYSBwYWNrYWdlIHdpdGggYSBsb3dlciB2ZXJzaW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjIzCittc2dpZCAiQ29uZmlndXJlIGFueSBwYWNrYWdlIHdoaWNoIG1heSBoZWxwIHRoaXMgb25lIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjI1Cittc2dpZCAiUHJvY2VzcyBpbmNpZGVudGFsIHBhY2thZ2VzIGV2ZW4gd2hlbiBvbiBob2xkIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjI3Cittc2dpZCAiVHJ5IHRvIChkZSlpbnN0YWxsIHRoaW5ncyBldmVuIHdoZW4gbm90IHJvb3QiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjkKK21zZ2lkICJQQVRIIGlzIG1pc3NpbmcgaW1wb3J0YW50IHByb2dyYW1zLCBwcm9ibGVtcyBsaWtlbHkiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzEKK21zZ2lkICJJbnN0YWxsIGEgcGFja2FnZSBldmVuIGlmIGl0IGZhaWxzIGF1dGhlbnRpY2l0eSBjaGVjayIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzMworbXNnaWQgIlByb2Nlc3MgZXZlbiBwYWNrYWdlcyB3aXRoIHdyb25nIHZlcnNpb25zIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjM1Cittc2dpZCAiT3ZlcndyaXRlIGEgZmlsZSBmcm9tIG9uZSBwYWNrYWdlIHdpdGggYW5vdGhlciIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzNworbXNnaWQgIk92ZXJ3cml0ZSBhIGRpdmVydGVkIGZpbGUgd2l0aCBhbiB1bmRpdmVydGVkIHZlcnNpb24iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzkKK21zZ2lkICJPdmVyd3JpdGUgb25lIHBhY2thZ2UncyBkaXJlY3Rvcnkgd2l0aCBhbm90aGVyJ3MgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI0MQorbXNnaWQgIkRvIG5vdCBwZXJmb3JtIHNhZmUgSS9PIG9wZXJhdGlvbnMgd2hlbiB1bnBhY2tpbmciCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDMKK21zZ2lkICJBbHdheXMgdXNlIHRoZSBuZXcgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDUKK21zZ2lkICJBbHdheXMgdXNlIHRoZSBvbGQgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDgKK21zZ2lkICIiCisiVXNlIHRoZSBkZWZhdWx0IG9wdGlvbiBmb3IgbmV3IGNvbmZpZyBmaWxlcyBpZiBvbmVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgaXMgYXZhaWxhYmxlLCBkb24ndCBwcm9tcHQuIElmIG5vIGRlZmF1bHQgY2FuIGJlICIKKyJmb3VuZCxcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgeW91IHdpbGwgYmUgcHJvbXB0ZWQgdW5sZXNzIG9uZSBvZiB0aGUgY29uZm9sZCBvclxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICBjb25mbmV3IG9wdGlvbnMgaXMgYWxzbyBnaXZlbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI1MworbXNnaWQgIkFsd2F5cyBpbnN0YWxsIG1pc3NpbmcgY29uZmlnIGZpbGVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjU1Cittc2dpZCAiT2ZmZXIgdG8gcmVwbGFjZSBjb25maWcgZmlsZXMgd2l0aCBubyBuZXcgdmVyc2lvbnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNTcKK21zZ2lkICJQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyBvciBubyBhcmNoaXRlY3R1cmUiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNTkKK21zZ2lkICJJbnN0YWxsIGV2ZW4gaWYgaXQgd291bGQgYnJlYWsgYW5vdGhlciBwYWNrYWdlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjYxCittc2dpZCAiQWxsb3cgaW5zdGFsbGF0aW9uIG9mIGNvbmZsaWN0aW5nIHBhY2thZ2VzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjYzCisjLCBmdXp6eQorI3wgbXNnaWQgImRlcGVuZGVuY3kgcHJvYmxlbXMgLSBub3QgcmVtb3ZpbmciCittc2dpZCAiVHVybiBhbGwgZGVwZW5kZW5jeSBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzIgorbXNnc3RyICJrcmF2cHJvYmxlbSAtIGZqZXJuZXIgaWtrZSIKKworIzogc3JjL21haW4uYzoyNjUKKyMsIGZ1enp5CisjfCBtc2dpZCAiZGVwZW5kZW5jeSBwcm9ibGVtcyAtIG5vdCByZW1vdmluZyIKK21zZ2lkICJUdXJuIGRlcGVuZGVuY3kgdmVyc2lvbiBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzIgorbXNnc3RyICJrcmF2cHJvYmxlbSAtIGZqZXJuZXIgaWtrZSIKKworIzogc3JjL21haW4uYzoyNjcKK21zZ2lkICJSZW1vdmUgcGFja2FnZXMgd2hpY2ggcmVxdWlyZSBpbnN0YWxsYXRpb24iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNjkKK21zZ2lkICJSZW1vdmUgYW4gZXNzZW50aWFsIHBhY2thZ2UiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODEKK21zZ2lkICJHZW5lcmFsbHkgaGVscGZ1bCBwcm9ncmVzcyBpbmZvcm1hdGlvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4MgorIywgZnV6enkKKyN8IG1zZ2lkICJ1bmFibGUgdG8gc2V0ZW52IGZvciBtYWludGFpbmVyIHNjcmlwdCIKK21zZ2lkICJJbnZvY2F0aW9uIGFuZCBzdGF0dXMgb2YgbWFpbnRhaW5lciBzY3JpcHRzIgorbXNnc3RyICJrbGFydGUgaWtrZSBzZXRlbnYgZm9yIHZlZGxpa2Vob2xkZXJza3JpcHQiCisKKyM6IHNyYy9tYWluLmM6MjgzCittc2dpZCAiT3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg0Cittc2dpZCAiTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODUKKyMsIGZ1enp5CisjfCBtc2dpZCAicmVhZCBlcnJvciBpbiBjb25maWd1cmF0aW9uIGZpbGUgYCUuMjU1cyciCittc2dpZCAiT3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZSIKK21zZ3N0ciAibGVzZWZlaWwgaSBvcHBzZXR0c2ZpbGEgwqslLjI1NXPCuyIKKworIzogc3JjL21haW4uYzoyODYKK21zZ2lkICJMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGUiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODcKK21zZ2lkICJEZXBlbmRlbmNpZXMgYW5kIGNvbmZsaWN0cyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4OAorbXNnaWQgIkxvdHMgb2YgZGVwZW5kZW5jaWVzL2NvbmZsaWN0cyBvdXRwdXQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODkKK21zZ2lkICJUcmlnZ2VyIGFjdGl2YXRpb24gYW5kIHByb2Nlc3NpbmciCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyOTAKK21zZ2lkICJMb3RzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyOTEKK21zZ2lkICJTaWxseSBhbW91bnRzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyOTIKK21zZ2lkICJMb3RzIG9mIGRyaXZlbCBhYm91dCBlZyB0aGUgZHBrZy9pbmZvIGRpcmVjdG9yeSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MworbXNnaWQgIkluc2FuZSBhbW91bnRzIG9mIGRyaXZlbCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjMwNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXMgZGVidWdnaW5nIG9wdGlvbiwgLS1kZWJ1Zz08b2N0YWw+IG9yIC1EPG9jdGFsPjpcbiIKKyJcbiIKKyIgTnVtYmVyICBSZWYuIGluIHNvdXJjZSAgIERlc2NyaXB0aW9uXG4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzozMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIkRlYnVnZ2luZyBvcHRpb25zIGNhbiBiZSBtaXhlZCB1c2luZyBiaXR3aXNlLW9yLlxuIgorIk5vdGUgdGhhdCB0aGUgbWVhbmluZ3MgYW5kIHZhbHVlcyBhcmUgc3ViamVjdCB0byBjaGFuZ2UuXG4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzozMTkKK21zZ2lkICItLWRlYnVnIHJlcXVpcmVzIGFuIG9jdGFsIGFyZ3VtZW50IgorbXNnc3RyICItLSBkZWJ1ZyBrcmV2ZXIgZW4gb2t0YWwgcGFyYW1ldGVyIgorCisjOiBzcmMvbWFpbi5jOjM0OAorIywgYy1mb3JtYXQKK21zZ2lkICJudWxsIHBhY2thZ2UgbmFtZSBpbiAtLWlnbm9yZS1kZXBlbmRzIGNvbW1hLXNlcGFyYXRlZCBsaXN0IGAlLjI1MHMnIgorbXNnc3RyICJ0b210IHBha2tlbmF2biBpIGRlbiBrb21tYWRlbHRlIGxpc3RhIHRpbCAtLWlnbm9yZS1kZXBlbmRzIMKrJS4yNTBzwrsiCisKKyM6IHNyYy9tYWluLmM6MzU0CisjLCBjLWZvcm1hdAorbXNnaWQgIi0taWdub3JlLWRlcGVuZHMgcmVxdWlyZXMgYSBsZWdhbCBwYWNrYWdlIG5hbWUuIGAlLjI1MHMnIGlzIG5vdDsgJXMiCittc2dzdHIgIiIKKyItLWlnbm9yZS1kZXBlbmRzIGtyZXZlciBldCBneWxkaWcgcGFra2VuYXZuLiDCqyUuMjUwc8K7IGVyIGlra2UgZ3lsZGlnOyAlcyIKKworIzogc3JjL21haW4uYzozNzEgc3JjL21haW4uYzozODEgc3JjL21haW4uYzo2NDkgZHBrZy1zcGxpdC9tYWluLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgaW50ZWdlciBmb3IgLS0lczogYCUuMjUwcyciCittc2dzdHIgInVneWxkaWcgaGVsdGFsbCBmb3IgLS0lczogwqslLjI1MHPCuyIKKworIzogc3JjL21haW4uYzo0MzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgZXhlY3V0aW5nIGhvb2sgJyVzJywgZXhpdCBjb2RlICVkIgorbXNnc3RyICJmZWlsIHZlZCBrasO4cmluZyBhdiBob29rIMKrJXPCuywgYXZzbHV0bmluZ3Nrb2RlICVkIgorCisjOiBzcmMvbWFpbi5jOjQ2NQorIywgZnV6enkKKyN8IG1zZ2lkICJzdGF0dXMiCittc2dpZCAic3RhdHVzIGxvZ2dlciIKK21zZ3N0ciAic3RhdHVzIgorCisjOiBzcmMvbWFpbi5jOjQ4MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXMgZm9yY2luZyBvcHRpb25zIC0gY29udHJvbCBiZWhhdmlvdXIgd2hlbiBwcm9ibGVtcyBmb3VuZDpcbiIKKyIgIHdhcm4gYnV0IGNvbnRpbnVlOiAgLS1mb3JjZS08dGhpbmc+LDx0aGluZz4sLi4uXG4iCisiICBzdG9wIHdpdGggZXJyb3I6ICAgIC0tcmVmdXNlLTx0aGluZz4sPHRoaW5nPiwuLi4gfCAtLW5vLWZvcmNlLTx0aGluZz4sLi4uXG4iCisiIEZvcmNpbmcgdGhpbmdzOlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6NDkwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJXQVJOSU5HIC0gdXNlIG9mIG9wdGlvbnMgbWFya2VkIFshXSBjYW4gc2VyaW91c2x5IGRhbWFnZSB5b3VyIGluc3RhbGxhdGlvbi5cbiIKKyJGb3JjaW5nIG9wdGlvbnMgbWFya2VkIFsqXSBhcmUgZW5hYmxlZCBieSBkZWZhdWx0LlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6NTA0CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gZm9yY2UvcmVmdXNlIG9wdGlvbiBgJS4qcyciCittc2dzdHIgInVramVudCB0dmFuZ3MtL2F2dmlzbmluZ3N2YWxnIMKrJS4qc8K7IgorCisjOiBzcmMvbWFpbi5jOjUxMworIywgYy1mb3JtYXQKK21zZ2lkICJvYnNvbGV0ZSBmb3JjZS9yZWZ1c2Ugb3B0aW9uICclcydcbiIKK21zZ3N0ciAiZm9yZWxkZXQgdHZhbmcvbmVrdCBhbHRlcm5hdGl2IMKrJXPCu1xuIgorCisjOiBzcmMvbWFpbi5jOjY0MworbXNnaWQgIi0tY29tbWFuZC1mZCB0YWtlcyBvbmUgYXJndW1lbnQsIG5vdCB6ZXJvIgorbXNnc3RyICItLWNvbW1hbmQtZmQgdGFyIGVuIHBhcmFtZXRlciwgaWtrZSBudWxsIgorCisjOiBzcmMvbWFpbi5jOjY0NQorbXNnaWQgIi0tY29tbWFuZC1mZCBvbmx5IHRha2VzIG9uZSBhcmd1bWVudCIKK21zZ3N0ciAiLS1jb21tYW5kLWZkIHRhciBiYXJlIGVuIHBhcmFtZXRlciIKKworIzogc3JjL21haW4uYzo2NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGRuJ3Qgb3BlbiBgJWknIGZvciBzdHJlYW0iCittc2dzdHIgImtsYXJ0ZSBpa2tlIMOlcG5lIMKrJWnCuyBmb3Igc3Ryw7htIgorCisjOiBzcmMvbWFpbi5jOjY3NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVvZiBiZWZvcmUgZW5kIG9mIGxpbmUgJWQiCittc2dzdHIgInV2ZW50ZXQgc2x1dHQgcMOlIGZpbCBmw7hyIHNsdXR0ZW4gYXYgbGluamUgJWQiCisKKyM6IHNyYy9tYWluLmM6NzE5IHNyYy9tYWluLmM6NzQxIHNyYy9xdWVyeWNtZC5jOjY5MiBzcmMvc3RhdGNtZC5jOjM3OQorIzogZHBrZy1kZWIvbWFpbi5jOjIwMSBkcGtnLXNwbGl0L21haW4uYzoxNjMKK21zZ2lkICJuZWVkIGFuIGFjdGlvbiBvcHRpb24iCittc2dzdHIgInRyZW5nZXIgZXQgaGFuZGxpbmdzdmFsZyIKKworIzogc3JjL3BhY2thZ2VzLmM6MTEzCittc2dpZCAiIgorInlvdSBtdXN0IHNwZWNpZnkgcGFja2FnZXMgYnkgdGhlaXIgb3duIG5hbWVzLCBub3QgYnkgcXVvdGluZyB0aGUgbmFtZXMgb2YgIgorInRoZSBmaWxlcyB0aGV5IGNvbWUgaW4iCittc2dzdHIgIiIKKyJkdSBtw6UgZ2kgc2VsdmUgbmF2bmV0IHDDpSBwYWtrZW5lLCBpa2tlIG5hdm5lbmUgcMOlIGZpbGVuZSBzb20gcGFra2VuZSBsaWdnZXIgaSIKKworIzogc3JjL3BhY2thZ2VzLmM6MTMzCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgLS1wZW5kaW5nIGRvZXMgbm90IHRha2UgYW55IG5vbi1vcHRpb24gYXJndW1lbnRzIgorbXNnc3RyICItLSVzIC0tcGVuZGluZyB0YXIgaW5nZW4gcGFyYW1ldHJlIHNvbSBpa2tlIGVyIHZhbGciCisKKyM6IHNyYy9wYWNrYWdlcy5jOjEzOCBzcmMvcXVlcnljbWQuYzozNzUgc3JjL3F1ZXJ5Y21kLmM6NTY1CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYXQgbGVhc3Qgb25lIHBhY2thZ2UgbmFtZSBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyB0cmVuZ2VyIG1pbnN0IGV0dCBwYWtrZW5hdm4gc29tIHBhcmFtZXRlciIKKworIzogc3JjL3BhY2thZ2VzLmM6MTc5CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgJXMgbGlzdGVkIG1vcmUgdGhhbiBvbmNlLCBvbmx5IHByb2Nlc3Npbmcgb25jZS5cbiIKK21zZ3N0ciAiUGFra2VuICVzIGVyIG5ldm50IGZsZXJlIGdhbmdlciwgYmVoYW5kbGVyIGJhcmUgw6luIGdhbmcuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjE4MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiTW9yZSB0aGFuIG9uZSBjb3B5IG9mIHBhY2thZ2UgJXMgaGFzIGJlZW4gdW5wYWNrZWRcbiIKKyIgaW4gdGhpcyBydW4gISAgT25seSBjb25maWd1cmluZyBpdCBvbmNlLlxuIgorbXNnc3RyICIiCisiRmxlcmUga29waWVyIGF2IHBha2tlbiAlcyBlciBwYWtrZXQgdXQgaSBkZW5uZVxuIgorIiBvbWdhbmdlbi4gU2V0dGVyIGJhcmUgb3BwIMOpbiBnYW5nLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInBhY2thZ2UgJS4yNTBzIGlzIG5vdCByZWFkeSBmb3IgdHJpZ2dlciBwcm9jZXNzaW5nXG4iCisiIChjdXJyZW50IHN0YXR1cyBgJS4yNTBzJyB3aXRoIG5vIHBlbmRpbmcgdHJpZ2dlcnMpIgorbXNnc3RyICIiCisicGFra2VuICUuMjUwcyBlciBpa2tlIGtsYXIgZm9yIHV0bMO4c2VyYmVoYW5kbGluZ1xuIgorIiAobsOldsOmcmVuZGUgc3RhdHVzIMKrJS4yNTBzwrsgbWVkIGluZ2VuIHV0ZXN0w6VlbmRlIHV0bMO4c2VyZSkiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjMzNAorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgd2hpY2ggcHJvdmlkZXMgJXMgaXMgdG8gYmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiIFBha2tlICVzIHNvbSBnaXIgJXMgc2thbCBmamVybmVzLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzozMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIGlzIHRvIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiBQYWtrZSAlcyBza2FsIGZqZXJuZXMuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjM1NAorIywgYy1mb3JtYXQKK21zZ2lkICIgIFZlcnNpb24gb2YgJXMgb24gc3lzdGVtIGlzICVzLlxuIgorbXNnc3RyICIgIFZlcnNqb24gYXYgJXMgcMOlIHN5c3RlbWV0IGVyICVzLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzozNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIHdoaWNoIHByb3ZpZGVzICVzIGF3YWl0cyB0cmlnZ2VyIHByb2Nlc3NpbmcuXG4iCittc2dzdHIgIiBQYWtrZSAlcyBzb20gZ2lyICVzIHZlbnRlciBww6UgdXRsw7hzZXJiZWhhbmRsaW5nLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzozODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIGF3YWl0cyB0cmlnZ2VyIHByb2Nlc3NpbmcuXG4iCittc2dzdHIgIiBQYWtrZSAlcyB2ZW50ZXIgcMOlIHV0bMO4c2VyYmVoYW5kbGluZy5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDEwCisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IGFsc28gY29uZmlndXJpbmcgYCVzJyAocmVxdWlyZWQgYnkgYCVzJylcbiIKK21zZ3N0ciAiZHBrZzogc2V0dGVyIG9nc8OlIG9wcCDCqyVzwrsgKGtyZXZldCBhdiDCqyVzwrspXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQxOAorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgd2hpY2ggcHJvdmlkZXMgJXMgaXMgbm90IGNvbmZpZ3VyZWQgeWV0LlxuIgorbXNnc3RyICIgIFBha2tlICVzIHNvbSBnaXIgJXMgZXIgaWtrZSBzYXR0IG9wcCBlbmRhLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIGlzIG5vdCBjb25maWd1cmVkIHlldC5cbiIKK21zZ3N0ciAiICBQYWtrZSAlcyBlciBpa2tlIHNhdHQgb3BwIGVuZGEuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQzMgorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgd2hpY2ggcHJvdmlkZXMgJXMgaXMgbm90IGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiUGFra2VuICVzIHNvbSBnaXIgJXMgZXIgaWtrZSBpbnN0YWxsZXJ0LlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIGlzIG5vdCBpbnN0YWxsZWQuXG4iCittc2dzdHIgIlBha2tlbiAlcyBlciBpa2tlIGluc3RhbGxlcnQuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQ3MgorIywgYy1mb3JtYXQKK21zZ2lkICIgJXMgKCVzKSBicmVha3MgJXMgYW5kIGlzICVzLlxuIgorbXNnc3RyICIgJXMgKCVzKSDDuGRlbGVnZ2VyICVzIG9nIGVyICVzLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlcyAoJXMpIHByb3ZpZGVzICVzLlxuIgorbXNnc3RyICIgICVzICglcykgdGlsYnlyICVzLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBWZXJzaW9uIG9mICVzIHRvIGJlIGNvbmZpZ3VyZWQgaXMgJXMuXG4iCittc2dzdHIgIiAgVmVyc2pvbmVuIGF2ICVzIHNvbSBza2FsIHNldHRlcyBvcHAgZXIgJXMuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjU5NgorbXNnaWQgIiBkZXBlbmRzIG9uICIKK21zZ3N0ciAiIGtyZXZlciAiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjYwMgorbXNnaWQgIjsgaG93ZXZlcjpcbiIKK21zZ3N0ciAiLiBNZW46XG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiLi4uLyVzIgorbXNnc3RyICIuLi4vJXMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgZW5zdXJpbmcgYCUuMjUwcycgZG9lc24ndCBleGlzdCIKK21zZ3N0ciAia2xhcnRlIGlra2Ugc2lrcmUgYXQgwqslLjI1MHPCuyBpa2tlIGZpbm5lcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5OQorbXNnaWQgInNwbGl0IHBhY2thZ2UgcmVhc3NlbWJseSIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEwOAorbXNnaWQgInJlYXNzZW1ibGVkIHBhY2thZ2UgZmlsZSIKK21zZ3N0ciAicGFra2VmaWwgc2F0dCBzYW1tZW4gaWdqZW4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTMzCisjLCBjLWZvcm1hdAorbXNnaWQgIkF1dGhlbnRpY2F0aW5nICVzIC4uLlxuIgorbXNnc3RyICJHb2RramVubmVyICVzIC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEzOQorbXNnaWQgInBhY2thZ2Ugc2lnbmF0dXJlIHZlcmlmaWNhdGlvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE0NgorIywgYy1mb3JtYXQKK21zZ2lkICJWZXJpZmljYXRpb24gb24gcGFja2FnZSAlcyBmYWlsZWQhIgorbXNnc3RyICJWZXJpZmlzZXJpbmcgYXYgcGFra2EgJXMgbWlzbHlrdGVzISIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlZlcmlmaWNhdGlvbiBvbiBwYWNrYWdlICVzIGZhaWxlZCxcbiIKKyJidXQgaW5zdGFsbGluZyBhbnl3YXkgYXMgeW91IHJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiIgorIlZlcmlmaXNlcmluZyBhdiBwYWtrYSAlcyBtaXNseWt0ZXMsXG4iCisibWVuIGluc3RhbGxlcmVyIGxpa2V2ZWwgc2lkZW4gZHUgw7huc2tlciBkZXQuXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTUyCisjLCBjLWZvcm1hdAorbXNnaWQgInBhc3NlZFxuIgorbXNnc3RyICJnb2RramVudFxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE2NSBkcGtnLWRlYi9pbmZvLmM6ODEKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHRlbXBvcmFyeSBkaXJlY3RvcnkiCittc2dzdHIgImtsYXJ0ZSBpa2tlIG9wcHJldHRlIG1pZGxlcnRpZGlnIG1hcHBlIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjIwNQorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlICVzIGhhcyB0b28gbWFueSBDb25mbGljdHMvUmVwbGFjZXMgcGFpcnMiCittc2dzdHIgInBha2tlICVzIGhhciBmb3IgbWFuZ2Uga29uZmxpa3QvZXJzdGF0dC1wYXIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MjQzCisjLCBjLWZvcm1hdAorbXNnaWQgIm9sZCB2ZXJzaW9uIG9mIHBhY2thZ2UgaGFzIG92ZXJseS1sb25nIGluZm8gZmlsZSBuYW1lIHN0YXJ0aW5nIGAlLjI1MHMnIgorbXNnc3RyICIiCisiZGVuIGdhbWxlIHZlcnNqb25lbiBhdiBwYWtrZW4gaGFyIGV0IGFsdGZvciBsYW5ndCBmaWxuYXZuIHNvbSBzdGFydGFyIHDDpSAiCisiwqslLjI1MHPCuyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyODEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBvYnNvbGV0ZSBpbmZvIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImtsYXJ0ZSBpa2tlIGZqZXJuZSBkZW4gZm9yZWxkZWRlIGluZm9ybWFzam9uc2ZpbGEgwqslLjI1MHPCuyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyODYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgKHN1cHBvc2VkKSBuZXcgaW5mbyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrbGFydGUgaWtrZSBpbnN0YWxsZXJlIGRlbiAodmlzc3Rub2spIG55ZSBpbmZvcm1hc2pvbnNmaWxhIMKrJS4yNTBzwrsiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6Mjk2Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gdGVtcCBjb250cm9sIGRpcmVjdG9yeSIKK21zZ3N0ciAia2xhcnRlIGlra2Ugw6VwbmUgZGVuIG1pZGxlcnRpZGlnZSBrb250cm9sbGthdGFsb2dlbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMDcKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBjb250YWlucyBvdmVybHktbG9uZyBjb250cm9sIGluZm8gZmlsZSBuYW1lIChzdGFydGluZyBgJS41MHMnKSIKK21zZ3N0ciAiIgorInBha2tlbiBpbm5laG9sZGVyIGV0IGFsdGZvciBsYW5ndCBpbmZvcm1hc2pvbnNmaWxuYXZuIChzdGFydGVyIG1lZCDCqyUuNTBzwrspIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMxNAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGNvbnRyb2wgaW5mbyBjb250YWluZWQgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICJwYWtrZWtvbnRyb2xsaW5mb3JtYXNqb25lbiBpbm5laG9sZGVyIGthdGFsb2dlbiDCqyUuMjUwc8K7IgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMxNgorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGNvbnRyb2wgaW5mbyBybWRpciBvZiBgJS4yNTBzJyBkaWRuJ3Qgc2F5IG5vdCBhIGRpciIKK21zZ3N0ciAicGFra2Vrb250cm9sbGluZm9ybWFzam9uLCBybWRpciBhdiDCqyUuMjUwc8K7IHNhIGlra2UgwqtpbmdlbiBrYXRhbG9nwrsiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzI2CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgJXMgY29udGFpbmVkIGxpc3QgYXMgaW5mbyBmaWxlIgorbXNnc3RyICJwYWtrZW4gJXMgaW5uZWhvbGRlciBlbiBsaXN0ZSBzb20gaW5mb3JtYXNqb25zZmlsIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMzMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgaW5mbyBmaWxlIGAlLjI1MHMnIGFzIGAlLjI1MHMnIgorbXNnc3RyICJrbGFydGUgaWtrZSBpbnN0YWxsZXJlIG55IGluZm9ybWFzam9uc2ZpbCDCqyUuMjUwc8K7IHNvbSDCqyUuMjUwc8K7IgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjM0OSBzcmMvcmVtb3ZlLmM6MTk4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkZWxldGUgY29udHJvbCBpbmZvIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImtsYXJ0ZSBpa2tlIHNsZXR0ZSBrb250cm9sbGluZm9ybWFzam9uc2ZpbGEgwqslLjI1MHPCuyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo0MTEKK21zZ2lkICJjYW5ub3QgYWNjZXNzIGFyY2hpdmUiCittc2dzdHIgImbDpXIgaWtrZSB0aWxnYW5nIHRpbCBhcmtpdmV0IgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjQzMworIywgZnV6enkKKyN8IG1zZ2lkICJjb250cm9sIGluZm9ybWF0aW9uIGxlbmd0aCIKK21zZ2lkICJwYWNrYWdlIGNvbnRyb2wgaW5mb3JtYXRpb24gZXh0cmFjdGlvbiIKK21zZ3N0ciAia29udHJvbGxpbmZvcm1hc2pvbnNsZW5nZGUiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDYwCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlY29yZGVkIGluZm8gYWJvdXQgJXMgZnJvbSAlcy5cbiIKK21zZ3N0ciAiVGF0dCB2YXJlIHDDpSBpbmZvcm1hc2pvbiBvbSAlcyBmcmEgJXMuXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDY4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgYXJjaGl0ZWN0dXJlICglcykgZG9lcyBub3QgbWF0Y2ggc3lzdGVtICglcykiCittc2dzdHIgInBha2tlYXJraXRla3R1cmVuICglcykgcGFzc2VyIGlra2UgdGlsIHN5c3RlbWV0ICglcykiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTIzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiByZWdhcmRpbmcgJXMgY29udGFpbmluZyAlcywgcHJlLWRlcGVuZGVuY3kgcHJvYmxlbTpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6IFZlZHLDuHJlbmRlICVzIHNvbSBpbm5laG9sZGVyICVzLCBwcm9ibGVtIG1lZCBmw7hya3JhdjpcbiIKKyIlcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1MjYKKyMsIGMtZm9ybWF0Cittc2dpZCAicHJlLWRlcGVuZGVuY3kgcHJvYmxlbSAtIG5vdCBpbnN0YWxsaW5nICUuMjUwcyIKK21zZ3N0ciAicHJvYmxlbSBtZWQgZsO4cmtyYXYgLSBpbnN0YWxsZXJlciBpa2tlICUuMjUwcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1MjcKK21zZ2lkICJpZ25vcmluZyBwcmUtZGVwZW5kZW5jeSBwcm9ibGVtISIKK21zZ3N0ciAiaWdub3JlcmVyIHByb2JsZW0gbWVkIGbDuHJrcmF2LiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHJlcGFyaW5nIHRvIHJlcGxhY2UgJXMgJXMgKHVzaW5nICVzKSAuLi5cbiIKK21zZ3N0ciAiR2rDuHIga2xhciB0aWwgw6UgYnl0dGUgdXQgJXMgJXMgKHZlZCBicnVrIGF2ICVzKSAuLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiVW5wYWNraW5nICVzIChmcm9tICVzKSAuLi5cbiIKK21zZ3N0ciAiUGFra2VyIHV0ICVzIChmcmEgJXMpIC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjU4MAorIywgYy1mb3JtYXQKK21zZ2lkICJuYW1lIG9mIGNvbmZmaWxlIChzdGFydGluZyBgJS4yNTBzJykgaXMgdG9vIGxvbmcgKD4lZCBjaGFyYWN0ZXJzKSIKK21zZ3N0ciAibmF2bmV0IHDDpSBvcHBzZXR0c2ZpbGEgKHN0YXJ0ZXIgbWVkIMKrJS4yNTBzwrspIGVyIGZvciBsYW5ndCAoPiVkIHRlZ24pIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjYzMyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA3MQorIywgYy1mb3JtYXQKK21zZ2lkICJyZWFkIGVycm9yIGluICUuMjUwcyIKK21zZ3N0ciAibGVzZWZlaWwgaSAlLjI1MHMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjM1CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgJS4yNTBzIgorbXNnc3RyICJmZWlsIHZlZCBsdWtraW5nIGF2ICUuMjUwcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2MzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgdHJ5aW5nIHRvIG9wZW4gJS4yNTBzIgorbXNnc3RyICJmZWlsIHZlZCDDpXBuaW5nIGF2ICUuMjUwcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGUtY29uZmlndXJpbmcgJXMsIHRvIGFsbG93IHJlbW92YWwgb2YgJXMgLi4uXG4iCittc2dzdHIgIkZqZXJuZXIgb3Bwc2V0dGV0IGF2ICVzLCBzbGlrIGF0ICVzIGthbiBmamVybmVzIC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjY4MQorIywgYy1mb3JtYXQKK21zZ2lkICJEZS1jb25maWd1cmluZyAlcyAuLi5cbiIKK21zZ3N0ciAiRmplcm5lciBvcHBzZXR0ZXQgYXYgJXMgLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NzU1CisjLCBjLWZvcm1hdAorbXNnaWQgIlVucGFja2luZyByZXBsYWNlbWVudCAlLjI1MHMgLi4uXG4iCittc2dzdHIgIlBha2tlciB1dCBlcnN0YXRuaW5nZW4gJS4yNTBzIC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjg0MAorIywgZnV6enkKKyN8IG1zZ2lkICJkcGtnLWRlYiBmaWVsZCBleHRyYWN0aW9uIgorbXNnaWQgInBhY2thZ2UgZmlsZXN5c3RlbSBhcmNoaXZlIGV4dHJhY3Rpb24iCittc2dzdHIgImRwa2ctZGViIGZlbHR1dHRyZWtraW5nIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjg1NAorbXNnaWQgImVycm9yIHJlYWRpbmcgZHBrZy1kZWIgdGFyIG91dHB1dCIKK21zZ3N0ciAiZmVpbCB2ZWQgbGVzaW5nIGF2IHRhci11dGRhdGEgZnJhIGRwa2ctZGViIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjg1NgorbXNnaWQgImNvcnJ1cHRlZCBmaWxlc3lzdGVtIHRhcmZpbGUgLSBjb3JydXB0ZWQgcGFja2FnZSBhcmNoaXZlIgorbXNnc3RyICLDuGRlbGFndCBmaWxzeXN0ZW0tdGFyZmlsIC0gw7hkZWxhZ3QgcGFra2VhcmtpdiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NTkKK21zZ2lkICJkcGtnLWRlYjogemFwIHBvc3NpYmxlIHRyYWlsaW5nIHplcm9zIgorbXNnc3RyICJkcGtnLWRlYjogRmplcm4gZXZlbnR1ZWxsZSBhdnNsdXR0YW5kZSBudWxsZXIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTE5CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBzdGF0IG9sZCBmaWxlICclLjI1MHMnIHNvIG5vdCBkZWxldGluZyBpdDogJXMiCittc2dzdHIgImZhbnQgaWtrZSBkZW4gZ2FtbGUgZmlsYSDCqyUuMjUwc8K7IHPDpSBkZW4gc2xldHRlcyBpa2tlOiAlcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSBvbGQgZGlyZWN0b3J5ICclLjI1MHMnOiAlcyIKK21zZ3N0ciAia2xhcnRlIGlra2Ugc2xldHRlIGRlbiBnYW1sZSBtYXBwYSDCqyUuMjUwc8K7OiAlcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAib2xkIGNvbmZmaWxlICclLjI1MHMnIHdhcyBhbiBlbXB0eSBkaXJlY3RvcnkgKGFuZCBoYXMgbm93IGJlZW4gZGVsZXRlZCkiCittc2dzdHIgImRlbiBnYW1sZSBvcHBzZXR0c2ZpbGEgwqslLjI1MHPCuyB2YXIgZW4gdG9tIG1hcHBlIChvZyBlciBuw6Ugc2xldHRldCkiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTc1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IG90aGVyIG5ldyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJmYW50IGlra2UgYW5uZW4gbnkgZmlsIMKrJS4yNTBzwrsiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTg2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJvbGQgZmlsZSAnJS4yNTBzJyBpcyB0aGUgc2FtZSBhcyBzZXZlcmFsIG5ldyBmaWxlcyEgKGJvdGggJyUuMjUwcycgYW5kICIKKyInJS4yNTBzJykiCittc2dzdHIgIiIKKyJkZW4gZ2FtbGUgZmlsYSDCqyUuMjUwc8K7IGVyIGRlbiBzYW1tZSBzb20gZmxlcmUgbnllIGZpbGVyISAoQsOlZGUgwqslLjI1MHPCuyBvZyAiCisiwqslLjI1MHPCuy4pIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEwMjUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNlY3VyZWx5IHJlbW92ZSBvbGQgZmlsZSAnJS4yNTBzJzogJXMiCittc2dzdHIgImtsYXJ0ZSBpa2tlIHNpa2tlcnQgZmplcm5lIGRlbiBnYW1sZSBmaWxhIMKrJS4yNTBzwrs6ICVzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEyMDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiKE5vdGluZyBkaXNhcHBlYXJhbmNlIG9mICVzLCB3aGljaCBoYXMgYmVlbiBjb21wbGV0ZWx5IHJlcGxhY2VkLilcbiIKK21zZ3N0ciAiKExlZ2cgbWVya2UgdGlsIGF0ICVzIGVyIGZvcnN2dW5uZXQsIG9nIGZ1bGxzdGVuZGlnIGVyc3RhdHRldC4pXG4iCisKKyMuIFRSQU5TTEFUT1JTOiBUaGlzIGlzIHRoZSBoZWFkZXIgdGhhdCBhcHBlYXJzIG9uICdkcGtnLXF1ZXJ5IC1sJy4gVGhlCisjLiAqIHN0cmluZyBzaG91bGQgcmVtYWluIHVuZGVyIDgwIGNoYXJhY3RlcnMuIFRoZSB1cHBlcmNhc2UgbGV0dGVycyBpbgorIy4gKiB0aGUgc3RhdGUgdmFsdWVzIGRlbm90ZSB0aGUgYWJicmV2aWF0ZWQgbGV0dGVyIHRoYXQgd2lsbCBhcHBlYXIgb24KKyMuICogdGhlIGZpcnN0IHRocmVlIGNvbHVtbnMsIHdoaWNoIHNob3VsZCBpZGVhbGx5IG1hdGNoIHRoZSBFbmdsaXNoIG9uZQorIy4gKiAoZS5nLiBSZW1vdmUg4oaSIHN1cFJpbWVpeCksIHNlZSBkcGtnLXF1ZXJ5KDEpIGZvciBmdXJ0aGVyIGRldGFpbHMuIFRoZQorIy4gKiB0cmFuc2xhdGVkIG1lc3NhZ2UgY2FuIHVzZSBhZGRpdGlvbmFsIGxpbmVzIGlmIG5lZWRlZC4KKyM6IHNyYy9xdWVyeWNtZC5jOjE0OQorbXNnaWQgIiIKKyJEZXNpcmVkPVVua25vd24vSW5zdGFsbC9SZW1vdmUvUHVyZ2UvSG9sZFxuIgorInwgU3RhdHVzPU5vdC9JbnN0L0NvbmYtZmlsZXMvVW5wYWNrZWQvaGFsRi1jb25mL0hhbGYtaW5zdC90cmlnLWFXYWl0L1RyaWctIgorInBlbmRcbiIKKyJ8LyBFcnI/PShub25lKS9SZWluc3QtcmVxdWlyZWQgKFN0YXR1cyxFcnI6IHVwcGVyY2FzZT1iYWQpXG4iCittc2dzdHIgIiIKKyLDmG5za2V0PVVramVudC9JbnN0YWxsZXIvRmplcm4vUmVucyB1dC9Ib2xkIHRpbGJha2VcbiIKKyJ8IFN0YXR1cz1Ja2tlL0luc3QvT3Bwc2V0dHNmaWxlci9Ja2tlIHBha2tldCB1dC9IYWx2VC1zYXR0LW9wcC9IYWx2dC1pbnN0L1V0LSIKKyJ2ZW50ZW5kZVxuIgorInwvIEZlaWw/PShpbmdlbikvTcOlIGluc3QuIHDDpSBueXR0IChTdGF0dXMsRmVpbDogdmVyc2FsYXI9ZHVtdClcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MTUzCittc2dpZCAiTmFtZSIKK21zZ3N0ciAiTmF2biIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MTUzCittc2dpZCAiVmVyc2lvbiIKK21zZ3N0ciAiVmVyc2pvbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MTU0Cittc2dpZCAiRGVzY3JpcHRpb24iCittc2dzdHIgIkJlc2tyaXZlbHNlIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNDYgc3JjL3F1ZXJ5Y21kLmM6NTExIHNyYy9zZWxlY3QuYzo3NQorIywgYy1mb3JtYXQKK21zZ2lkICJObyBwYWNrYWdlcyBmb3VuZCBtYXRjaGluZyAlcy5cbiIKK21zZ3N0ciAiRmFudCBpbmdlbiBwYWtrZXIgc29tIHBhc3NlciB0aWwgwqslc8K7LlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJzaW9uIGJ5ICVzIGZyb206ICVzXG4iCittc2dzdHIgIm9tZGlyaWdlcnQgYXYgJXMgZnJhOiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJzaW9uIGJ5ICVzIHRvOiAlc1xuIgorbXNnc3RyICJvbWRpcmlnZXJ0IGF2ICVzIHRpbDogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6Mjc4CisjLCBjLWZvcm1hdAorbXNnaWQgImxvY2FsIGRpdmVyc2lvbiBmcm9tOiAlc1xuIgorbXNnc3RyICJsb2thbCBvbWRpcmlnZXJpbmcgZnJhOiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9jYWwgZGl2ZXJzaW9uIHRvOiAlc1xuIgorbXNnc3RyICJsb2thbHQgb21kaXJpZ2VydCB0aWw6ICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjMwOQorbXNnaWQgIi0tc2VhcmNoIG5lZWRzIGF0IGxlYXN0IG9uZSBmaWxlIG5hbWUgcGF0dGVybiBhcmd1bWVudCIKK21zZ3N0ciAiLS1zZWFyY2gga3JldmVyIG1pbnN0IGV0dCBmaWxuYXZuc23DuG5zdGVyIHNvbSBwYXJhbWV0ZXIiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjM1MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiTm8gcGFja2FnZXMgZm91bmQgbWF0Y2hpbmcgJXMuXG4iCittc2dpZCAiJXM6IG5vIHBhdGggZm91bmQgbWF0Y2hpbmcgcGF0dGVybiAlcy5cbiIKK21zZ3N0ciAiRmFudCBpbmdlbiBwYWtrZXIgc29tIHBhc3NlciB0aWwgwqslc8K7LlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzozOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSBgJXMnIGlzIG5vdCBpbnN0YWxsZWQgYW5kIG5vIGluZm8gaXMgYXZhaWxhYmxlLlxuIgorbXNnc3RyICIiCisiUGFra2VuIMKrJXPCuyBlciBpa2tlIGluc3RhbGxlcnQgb2cgZGV0IGZpbm5lcyBpbmdlbiBpbmZvcm1hc2pvbiBvbSBkZW4uXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQwMQorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlIGAlcycgaXMgbm90IGF2YWlsYWJsZS5cbiIKK21zZ3N0ciAiUGFra2VuIMKrJXPCuyBlciBpa2tlIHRpbGdqZW5nZWxpZy5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDEwIHNyYy9xdWVyeWNtZC5jOjU4NQorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlIGAlcycgaXMgbm90IGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiUGFra2VuIMKrJXPCuyBlciBpa2tlIGluc3RhbGxlcnQuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQxOAorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlIGAlcycgZG9lcyBub3QgY29udGFpbiBhbnkgZmlsZXMgKCEpXG4iCittc2dzdHIgIlBha2tlbiDCqyVzwrsgaW5uZWhvbGRlciBpbmdlbiBmaWxlciAoISlcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDI1CisjLCBjLWZvcm1hdAorbXNnaWQgImxvY2FsbHkgZGl2ZXJ0ZWQgdG86ICVzXG4iCittc2dzdHIgImxva2FsdCBvbWRpcmlnZXJ0OiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBkaXZlcnRzIG90aGVycyB0bzogJXNcbiIKK21zZ3N0ciAicGFra2Ugb21kaXJpZ2VyZXIgYW5kcmUgdGlsOiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJ0ZWQgYnkgJXMgdG86ICVzXG4iCittc2dzdHIgIm9tZGlyaWdlcnQgYXYgJXMgdGlsOiVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQ1MgorbXNnaWQgIiIKKyJVc2UgZHBrZyAtLWluZm8gKD0gZHBrZy1kZWIgLS1pbmZvKSB0byBleGFtaW5lIGFyY2hpdmUgZmlsZXMsXG4iCisiYW5kIGRwa2cgLS1jb250ZW50cyAoPSBkcGtnLWRlYiAtLWNvbnRlbnRzKSB0byBsaXN0IHRoZWlyIGNvbnRlbnRzLlxuIgorbXNnc3RyICIiCisiQnJ1ayBkcGtnIC0taW5mbyAoPSBkcGtnLWRlYiAtLWluZm8pIGZvciDDpSB1bmRlcnPDuGtlIGFya2l2ZmlsZXIsXG4iCisib2cgZHBrZyAtLWNvbnRlbnRzICg9IGRwa2ctZGViIC0tY29udGVudHMpIGZvciDDpSB2aXNlIGlubmhvbGRldCBpIGRlbS5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NTcwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgYXQgbW9zdCB0d28gYXJndW1lbnRzIgorbXNnc3RyICItLSVzIHRhciBow7h5c3QgdG8gcGFyYW1ldHJlIgorCisjOiBzcmMvcXVlcnljbWQuYzo1NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29udHJvbCBmaWxlIGNvbnRhaW5zICVjIgorbXNnc3RyICJrb250cm9sbGZpbGEgaW5uZWhvbGRlciAlYyIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjAwCisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiAlcyBwYWNrYWdlIG1hbmFnZW1lbnQgcHJvZ3JhbSBxdWVyeSB0b29sIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkRlYmlhbiAlcyBwYWtrZWjDpW5kdGVyaW5nc3Byb2dyYW0gc3DDuHJyZXZlcmt0w7h5IHZlcnNqb24gJXMuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjYxOQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIkNvbW1hbmRzOlxuIgorI3wgIiAgLXN8LS1zdGF0dXMgPHBhY2thZ2U+IC4uLiAgICAgICAgRGlzcGxheSBwYWNrYWdlIHN0YXR1cyBkZXRhaWxzLlxuIgorI3wgIiAgLXB8LS1wcmludC1hdmFpbCA8cGFja2FnZT4gLi4uICAgRGlzcGxheSBhdmFpbGFibGUgdmVyc2lvbiBkZXRhaWxzLlxuIgorI3wgIiAgLUx8LS1saXN0ZmlsZXMgPHBhY2thZ2U+IC4uLiAgICAgTGlzdCBmaWxlcyBgb3duZWQnIGJ5IHBhY2thZ2UocykuXG4iCisjfCAiICAtbHwtLWxpc3QgWzxwYXR0ZXJuPiAuLi5dICAgICAgICBMaXN0IHBhY2thZ2VzIGNvbmNpc2VseS5cbiIKKyN8ICIgIC1XfC0tc2hvdyA8cGF0dGVybj4gLi4uICAgICAgICAgIFNob3cgaW5mb3JtYXRpb24gb24gcGFja2FnZShzKS5cbiIKKyN8ICIgIC1TfC0tc2VhcmNoIDxwYXR0ZXJuPiAuLi4gICAgICAgIEZpbmQgcGFja2FnZShzKSBvd25pbmcgZmlsZShzKS5cbiIKKyN8ICIgIC1jfC0tY29udHJvbC1wYXRoIDxwYWNrYWdlPiBbPGZpbGU+XVxuIgorI3wgIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHJpbnQgcGF0aCBmb3IgcGFja2FnZSBjb250cm9sIGZpbGUuXG4iCisjfCAiXG4iCittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLXN8LS1zdGF0dXMgPHBhY2thZ2U+IC4uLiAgICAgICAgRGlzcGxheSBwYWNrYWdlIHN0YXR1cyBkZXRhaWxzLlxuIgorIiAgLXB8LS1wcmludC1hdmFpbCA8cGFja2FnZT4gLi4uICAgRGlzcGxheSBhdmFpbGFibGUgdmVyc2lvbiBkZXRhaWxzLlxuIgorIiAgLUx8LS1saXN0ZmlsZXMgPHBhY2thZ2U+IC4uLiAgICAgTGlzdCBmaWxlcyBgb3duZWQnIGJ5IHBhY2thZ2UocykuXG4iCisiICAtbHwtLWxpc3QgWzxwYXR0ZXJuPiAuLi5dICAgICAgICBMaXN0IHBhY2thZ2VzIGNvbmNpc2VseS5cbiIKKyIgIC1XfC0tc2hvdyBbPHBhdHRlcm4+IC4uLl0gICAgICAgIFNob3cgaW5mb3JtYXRpb24gb24gcGFja2FnZShzKS5cbiIKKyIgIC1TfC0tc2VhcmNoIDxwYXR0ZXJuPiAuLi4gICAgICAgIEZpbmQgcGFja2FnZShzKSBvd25pbmcgZmlsZShzKS5cbiIKKyIgIC1jfC0tY29udHJvbC1wYXRoIDxwYWNrYWdlPiBbPGZpbGU+XVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHJpbnQgcGF0aCBmb3IgcGFja2FnZSBjb250cm9sIGZpbGUuXG4iCisiXG4iCittc2dzdHIgIiIKKyJLb21tYW5kb2VyOlxuIgorIiAgLXN8LS1zdGF0dXMgPHBha2tlbmF2bj4gLi4uICAgICAgICB2aXNlciBwYWtrZXN0YXR1c2RldGFsamVyXG4iCisiICAtcHwtLXByaW50LWF2YWlsIDxwYWtrZW5hdm4+IC4uLiAgIHZpc2VyIGRldGFsamVyIG9tIHRpbGdqZW5nZWxpZyB2ZXJzam9uXG4iCisiICAtTHwtLWxpc3RmaWxlcyA8cGFra2VuYXZuPiAuLi4gICAgIHZpc2VyIGZpbGVyIHNvbSBlciBlaWQgYXYgcGFra2UvcGFra2VyXG4iCisiICAtbHwtLWxpc3QgWzxtw7huc3Rlcj4gLi4uXSAgICAgICAgICB2aXNlciBrb3J0IHBha2tlb3ZlcnNpa3RcbiIKKyIgIC1XfC0tc2hvdyA8bcO4bnN0ZXI+IC4uLiAgICAgICAgICAgIHZpc2VyIG9wcGx5c25pbmdlciBvbSBwYWtrZS9wYWtrZXJcbiIKKyIgIC1TfC0tc2VhcmNoIDxtw7huc3Rlcj4gLi4uICAgICAgICAgIGZpbm4gcGFra2VyIHNvbSBlaWVyIGZpbChlcilcbiIKKyIgIC1jfC0tY29udHJvbC1wYXRoIDxwYWtrZT4gWzxmaWw+XSAgc2tyaXYgdXQgc3RpZW4gZm9yIHBha2tla29udHJvbGxmaWxhLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo2MzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgICAgICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyIgIC1mfC0tc2hvd2Zvcm1hdD08Zm9ybWF0PiAgICAgICAgIFVzZSBhbHRlcm5hdGl2ZSBmb3JtYXQgZm9yIC0tc2hvdy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIkFsdGVybmF0aXY6XG4iCisiICAtLWFkbWluZGlyPTxrYXRhbG9nPiAgICAgICAgICBCcnVrIDxrYXRhbG9nPiBpc3RlZGVuZm9yICVzXG4iCisiICAtZnwtLXNob3dmb3JtYXQ9PGZvcm1hdD4gICAgICBCcnVrIGFsdGVybmF0aXZ0IGZvcm1hdCBmb3IgLS1zaG93XG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjY0MiBkcGtnLWRlYi9tYWluLmM6MTEyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJGb3JtYXQgc3ludGF4OlxuIgorIiAgQSBmb3JtYXQgaXMgYSBzdHJpbmcgdGhhdCB3aWxsIGJlIG91dHB1dCBmb3IgZWFjaCBwYWNrYWdlLiBUaGUgZm9ybWF0XG4iCisiICBjYW4gaW5jbHVkZSB0aGUgc3RhbmRhcmQgZXNjYXBlIHNlcXVlbmNlcyBcXG4gKG5ld2xpbmUpLCBcXHIgKGNhcnJpYWdlXG4iCisiICByZXR1cm4pIG9yIFxcXFwgKHBsYWluIGJhY2tzbGFzaCkuIFBhY2thZ2UgaW5mb3JtYXRpb24gY2FuIGJlIGluY2x1ZGVkXG4iCisiICBieSBpbnNlcnRpbmcgdmFyaWFibGUgcmVmZXJlbmNlcyB0byBwYWNrYWdlIGZpZWxkcyB1c2luZyB0aGUgJHt2YXJbOyIKKyJ3aWR0aF19XG4iCisiICBzeW50YXguIEZpZWxkcyB3aWxsIGJlIHJpZ2h0LWFsaWduZWQgdW5sZXNzIHRoZSB3aWR0aCBpcyBuZWdhdGl2ZSBpbiAiCisid2hpY2hcbiIKKyIgIGNhc2UgbGVmdCBhbGlnbm1lbnQgd2lsbCBiZSB1c2VkLlxuIgorbXNnc3RyICIiCisiRm9ybWF0c3ludGFrczpcbiIKKyIgIEV0IGZvcm1hdCBlciBkZW4gc3RyZW5nZW4gc29tIGJsaXIgYnJ1a3QgZm9yIMOlIHZpc2UgZW4gcGFra2UuIEZvcm1hdGV0XG4iCisiICBrYW4gaW5uZWhvbGRlIGRlIHZhbmxpZ2UgZXNjYXBlLXNla3ZlbnNlbmUgXFxuIChsaW5qZXNraWZ0KSwgXFxyICIKKyIodm9nbnJldHVyKVxuIgorIiAgZWxsZXIgXFxcXCAocmVuIG9tdmVuZHQgc2tyw6VzdHJlaykuIFBha2tlb3BwbHlzbmluZ2VyIGthbiB0YXMgbWVkIHZlZFxuIgorIiAgw6Ugc2V0dGUgaW5uIHZhcmlhYmVscmVmZXJhbnNlciB0aWwgcGFra2VmZWx0IG1lZCBzeW50YWtzZW5cbiIKKyIgICR7dmFyWzticmVkZGVdfS4gRmVsdGVuZSB2aWwgdsOmcmUgaMO4eXJlanVzdGVydGUsIG1lZCBtaW5kcmUgYnJlZGRlbiBlciBcbiIKKyJuZWdhdGl2LiBJIHPDpSBmYWxsIHZpbCBkZSB2w6ZyZSB2ZW5zdHJlanVzdGVydGUuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjY1NgorbXNnaWQgIlVzZSAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgcXVlcnlpbmcgcGFja2FnZXMuIgorbXNnc3RyICJCcnVrIC0taGVscCBmb3IgaGplbHAgb20gcGFra2VzcMO4cnJpbmcuIgorCisjOiBzcmMvcmVtb3ZlLmM6ODgKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgcmVxdWVzdCB0byByZW1vdmUgJS4yNTBzIHdoaWNoIGlzbid0IGluc3RhbGxlZC4iCittc2dzdHIgImlnbm9yZXJlciDDuG5za2V0IG9tIMOlIGZqZXJuZSAlLjI1MHMgc29tIGlra2UgZXIgaW5zdGFsbGVydC4iCisKKyM6IHNyYy9yZW1vdmUuYzo5NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiaWdub3JpbmcgcmVxdWVzdCB0byByZW1vdmUgJS4yNTBzLCBvbmx5IHRoZSBjb25maWdcbiIKKyIgZmlsZXMgb2Ygd2hpY2ggYXJlIG9uIHRoZSBzeXN0ZW0uIFVzZSAtLXB1cmdlIHRvIHJlbW92ZSB0aGVtIHRvby4iCittc2dzdHIgIiIKKyJpZ25vcmVyZXIgw7huc2tldCBvbSDDpSBmamVybmUgJS4yNTBzIHNpZGVuIGJhcmVcbiIKKyIgb3Bwc2V0dHNmaWxlbmUgZmlubmVzIHDDpSBzeXN0ZW1ldC4gQnJ1ayAtLXB1cmdlIGZvciDDpSBmamVybmUgZGlzc2Ugb2dzw6UuIgorCisjOiBzcmMvcmVtb3ZlLmM6MTAzCittc2dpZCAiVGhpcyBpcyBhbiBlc3NlbnRpYWwgcGFja2FnZSAtIGl0IHNob3VsZCBub3QgYmUgcmVtb3ZlZC4iCittc2dzdHIgIkRldHRlIGVyIGVuIG7DuGR2ZW5kaWcgcGFra2UgLSBkZW4gYsO4ciBpa2tlIGZqZXJuZXMuIgorCisjOiBzcmMvcmVtb3ZlLmM6MTI4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBkZXBlbmRlbmN5IHByb2JsZW1zIHByZXZlbnQgcmVtb3ZhbCBvZiAlczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6IEtyYXZwcm9ibGVtIGhpbmRyZXIgZmplcm5pbmcgYXYgJXM6XG4iCisiJXMiCisKKyM6IHNyYy9yZW1vdmUuYzoxMzAKK21zZ2lkICJkZXBlbmRlbmN5IHByb2JsZW1zIC0gbm90IHJlbW92aW5nIgorbXNnc3RyICJrcmF2cHJvYmxlbSAtIGZqZXJuZXIgaWtrZSIKKworIzogc3JjL3JlbW92ZS5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogJXM6IGRlcGVuZGVuY3kgcHJvYmxlbXMsIGJ1dCByZW1vdmluZyBhbnl3YXkgYXMgeW91IHJlcXVlc3RlZDpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiBLcmF2cHJvYmxlbSwgbWVuIGZqZXJuZXIgbGlrZXZlbCBzaWRlbiBkdSDDuG5za2VyIGRldDpcbiIKKyIlcyIKKworIzogc3JjL3JlbW92ZS5jOjE0MgorbXNnaWQgIiIKKyJQYWNrYWdlIGlzIGluIGEgdmVyeSBiYWQgaW5jb25zaXN0ZW50IHN0YXRlIC0geW91IHNob3VsZFxuIgorIiByZWluc3RhbGwgaXQgYmVmb3JlIGF0dGVtcHRpbmcgYSByZW1vdmFsLiIKK21zZ3N0ciAiIgorIlBha2tlbiBlciBpIGVuIHZlbGRpZyBkw6VybGlnLCBpbmtvbnNpc3RlbnQgdGlsc3RhbmQuIER1IGLDuHJcbiIKKyJpbnN0YWxsZXJlIHBha2tlbiBww6Ugbnl0dCBmw7hyIGR1IHByw7h2ZXIgw6UgZmplcm5lIGRlbi4iCisKKyM6IHNyYy9yZW1vdmUuYzoxNDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiV291bGQgcmVtb3ZlIG9yIHB1cmdlICVzIC4uLlxuIgorbXNnc3RyICJWaWxsZSBmamVybmUgZWxsZXIgcmVuc2UgdXQgJXMgLi4uXG4iCisKKyM6IHNyYy9yZW1vdmUuYzoxNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVtb3ZpbmcgJXMgLi4uXG4iCittc2dzdHIgIkZqZXJuZXIgJXMgLi4uXG4iCisKKyM6IHNyYy9yZW1vdmUuYzoyNzUgc3JjL3JlbW92ZS5jOjM2NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisid2hpbGUgcmVtb3ZpbmcgJS4yNTBzLCB1bmFibGUgdG8gcmVtb3ZlIGRpcmVjdG9yeSAnJS4yNTBzJzogJXMgLSBkaXJlY3RvcnkgIgorIm1heSBiZSBhIG1vdW50IHBvaW50PyIKK21zZ3N0ciAiIgorInZlZCBmamVybmluZyBhdiAlLjI1MHMga3VubmUgaWtrZSBtYXBwYSDCqyUuMjUwc8K7IGZqZXJuZXM6ICVzIC0ga2FuIG1hcHBhICIKKyJ2w6ZyZSBldCBtb250ZXJpbmdzcHVua3Q/IgorCisjOiBzcmMvcmVtb3ZlLmM6Mjg5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWN1cmVseSByZW1vdmUgJyUuMjUwcyciCittc2dzdHIgImtsYXJ0ZSBpa2tlIHNpa2tlcnQgZmplcm5lIMKrJS4yNTBzwrsiCisKKyM6IHNyYy9yZW1vdmUuYzozNjEKKyMsIGMtZm9ybWF0Cittc2dpZCAid2hpbGUgcmVtb3ZpbmcgJS4yNTBzLCBkaXJlY3RvcnkgJyUuMjUwcycgbm90IGVtcHR5IHNvIG5vdCByZW1vdmVkLiIKK21zZ3N0ciAiIgorInZlZCBmamVybmluZyBhdiAlLjI1MHMgdmFyIGlra2UgbWFwcGEgwqslLjI1MHPCuyB0b20uIERlbiBibGUgZGVyZm9yIGlra2UgIgorImZqZXJuZXQuIgorCisjOiBzcmMvcmVtb3ZlLmM6MzgzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW5ub3QgcmVtb3ZlIGAlLjI1MHMnIgorbXNnaWQgImNhbm5vdCByZW1vdmUgJyUuMjUwcyciCittc2dzdHIgImtsYXJ0ZSBpa2tlIGZqZXJuZSDCqyUuMjUwc8K7IgorCisjOiBzcmMvcmVtb3ZlLmM6NDA5CisjLCBjLWZvcm1hdAorbXNnaWQgIlB1cmdpbmcgY29uZmlndXJhdGlvbiBmaWxlcyBmb3IgJXMgLi4uXG4iCittc2dzdHIgIlJlbnNlciB1dCBvcHBzZXR0c2ZpbGVyIGZvciAlcyAuLi5cbiIKKworIzogc3JjL3JlbW92ZS5jOjQ1OQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVtb3ZlIG9sZCBjb25maWcgZmlsZSBgJS4yNTBzJyAoPSBgJS4yNTBzJykiCittc2dzdHIgImtsYXJ0ZSBpa2tlIGZqZXJuZSBkZW4gZ2FtbGUgb3Bwc2V0dHNmaWxhIMKrJS4yNTBzwrsgKD0gwqslLjI1MHPCuykiCisKKyM6IHNyYy9yZW1vdmUuYzo0NzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlYWQgY29uZmlnIGZpbGUgZGlyIGAlLjI1MHMnIChmcm9tIGAlLjI1MHMnKSIKK21zZ3N0ciAia2xhcnRlIGlra2UgbGVzZSBvcHBzZXR0c2ZpbGthdGFsb2dlbiDCqyUuMjUwc8K7IChmcmEgwqslLjI1MHPCuykiCisKKyM6IHNyYy9yZW1vdmUuYzo1MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlbW92ZSBvbGQgYmFja3VwIGNvbmZpZyBmaWxlIGAlLjI1MHMnIChvZiBgJS4yNTBzJykiCittc2dzdHIgIiIKKyJrbGFydGUgaWtrZSBmamVybmUgZGVuIGdhbWxlIHNpa3Jpbmdza29waWVuIGF2IG9wcHNldHRzZmlsYSDCqyUuMjUwc8K7IChmcmEgIgorIsKrJS4yNTBzwrspIgorCisjOiBzcmMvcmVtb3ZlLmM6NTY4Cittc2dpZCAiY2Fubm90IHJlbW92ZSBvbGQgZmlsZXMgbGlzdCIKK21zZ3N0ciAia2xhcnRlIGlra2UgZmplcm5lIGdhbW1lbCBmaWxsaXN0ZSIKKworIzogc3JjL3JlbW92ZS5jOjU3NAorbXNnaWQgImNhbid0IHJlbW92ZSBvbGQgcG9zdHJtIHNjcmlwdCIKK21zZ3N0ciAia2xhcnRlIGlra2UgZmplcm5lIGdhbW1lbHQgZXR0ZXJmamVybmluZ3Nza3JpcHQiCisKKyM6IHNyYy9zZWxlY3QuYzoxMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgaW4gcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQiCittc2dzdHIgInV2ZW50ZXQgc2x1dHQgcMOlIGZpbCBpIHBha2tlbmF2bmV0IHDDpSBsaW5qZSAlZCIKKworIzogc3JjL3NlbGVjdC5jOjExNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBsaW5lIGluIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICJ1dmVudGV0IHNsdXR0IHDDpSBsaW5qZSBpIHBha2tlbmF2bmV0IHDDpSBsaW5qZSAlZCIKKworIzogc3JjL3NlbGVjdC5jOjEyMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVvZiBhZnRlciBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZCIKK21zZ3N0ciAidXZlbnRldCBzbHV0dCBww6UgZmlsIGV0dGVyIHBha2tlbmF2bmV0IHDDpSBsaW5qZSAlZCIKKworIzogc3JjL3NlbGVjdC5jOjEyMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBsaW5lIGFmdGVyIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICJ1dmVudGV0IHNsdXR0IHDDpSBsaW5qZSBldHRlciBwYWtrZW5hdm5ldCBww6UgbGluamUgJWQiCisKKyM6IHNyYy9zZWxlY3QuYzoxMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBkYXRhIGFmdGVyIHBhY2thZ2UgYW5kIHNlbGVjdGlvbiBhdCBsaW5lICVkIgorbXNnc3RyICJ1dmVudGV0IGRhdGEgZXR0ZXIgcGFra2Ugb2cgdmFsZyBww6UgbGluamUgJWQiCisKKyM6IHNyYy9zZWxlY3QuYzoxMzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWxsZWdhbCBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZDogJS4yNTBzIgorbXNnc3RyICJ1Z3lsZGlnIHBha2tlbmF2biBww6UgbGluamUgJWQ6ICUuMjUwcyIKKworIzogc3JjL3NlbGVjdC5jOjE0MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIHdhbnRlZCBzdGF0dXMgYXQgbGluZSAlZDogJS4yNTBzIgorbXNnc3RyICJ1a2plbnQgw7huc2tldC1zdGF0dXMgcMOlIGxpbmplICVkOiAlLjI1MHMiCisKKyM6IHNyYy9zZWxlY3QuYzoxNDkKK21zZ2lkICJyZWFkIGVycm9yIG9uIHN0YW5kYXJkIGlucHV0IgorbXNnc3RyICJsZXNlZmVpbCBmcmEgc3RhbmRhcmQtaW5uIgorCisjOiBzcmMvc3RhdGNtZC5jOjUyCisjLCBmdXp6eQorI3wgbXNnaWQgIlVzZSAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgcXVlcnlpbmcgcGFja2FnZXMuIgorbXNnaWQgIlVzZSAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgb3ZlcnJpZGluZyBmaWxlIHN0YXQgaW5mb3JtYXRpb24uIgorbXNnc3RyICJCcnVrIC0taGVscCBmb3IgaGplbHAgb20gcGFra2VzcMO4cnJpbmcuIgorCisjOiBzcmMvc3RhdGNtZC5jOjYxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsIDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDYtMjAwOSBHdWlsbGVtIEpvdmVyLlxuIgorbXNnc3RyICIiCisiT3BwaGF2c3JldHQgKEMpIDIwMDAsIDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJPcHBoYXZzcmV0dCAoQykgMjAwNi0yMDA5IEd1aWxsZW0gSm92ZXIuXG4iCisKKyM6IHNyYy9zdGF0Y21kLmM6ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLS1hZGQgPG93bmVyPiA8Z3JvdXA+IDxtb2RlPiA8ZmlsZT5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBhZGQgYSBuZXcgZW50cnkgaW50byB0aGUgZGF0YWJhc2UuXG4iCisiICAtLXJlbW92ZSA8ZmlsZT4gICAgICAgICAgcmVtb3ZlIGZpbGUgZnJvbSB0aGUgZGF0YWJhc2UuXG4iCisiICAtLWxpc3QgWzxnbG9iLXBhdHRlcm4+XSAgbGlzdCBjdXJyZW50IG92ZXJyaWRlcyBpbiB0aGUgZGF0YWJhc2UuXG4iCisiXG4iCittc2dzdHIgIiIKKyJLb21tYW5kZXI6XG4iCisiICAtLWFkZCA8ZWllcj4gPGdydXBwZT4gPG1vZHVzPiA8ZmlsPlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZ2cgdGlsIG55IG9wcGbDuHJpbmcgaSBkYXRhYmFzZW4uXG4iCisiICAtLXJlbW92ZSA8ZmlsPiAgICAgICAgICAgZmplcm4gZmlsIGZyYSBkYXRhYmFzZW4uXG4iCisiICAtLWxpc3QgWzxnbG9iLW3DuG5zdGVyPl0gIGxpc3QgbsOldsOmcmVuZGUgb3ZlcnN0eXJpbmdlciBpIGRhdGFiYXNlbi5cbiIKKyJcbiIKKworIzogc3JjL3N0YXRjbWQuYzo4OQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICBzZXQgdGhlIGRpcmVjdG9yeSB3aXRoIHRoZSBzdGF0b3ZlcnJpZGUgZmlsZS5cbiIKKyIgIC0tdXBkYXRlICAgICAgICAgICAgICAgICBpbW1lZGlhdGVseSB1cGRhdGUgZmlsZSBwZXJtaXNzaW9ucy5cbiIKKyIgIC0tZm9yY2UgICAgICAgICAgICAgICAgICBmb3JjZSBhbiBhY3Rpb24gZXZlbiBpZiBhIHNhbml0eSBjaGVjayBmYWlscy5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBxdWlldCBvcGVyYXRpb24sIG1pbmltYWwgb3V0cHV0LlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIlZhbGc6XG4iCisiICAtLWFkbWluZGlyIDxtYXBwZT4gICAgICAgc2V0dCBtYXBwYSBtZWQgc3RhdG92ZXJyaWRlLWZpbGVuLlxuIgorIiAgLS11cGRhdGUgICAgICAgICAgICAgICAgIG9wcGRhdGVyIGZpbHJldHRpZ2hldGVyIHVtaWRkZWxiYXJ0LlxuIgorIiAgLS1mb3JjZSAgICAgICAgICAgICAgICAgIHR2aW5nIGVuIGhhbmRsaW5nIHNlbHZvbSBrb250cm9sbHNqZWtrIGZlaWxlci5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBzdGlsbGVrasO4cmluZywgbWluaW1hbCB1dHNrcmlmdC5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICB2aXMgZGVubmUgaGplbHBtZWxkaW5nZW4uXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgdmlzIHZlcnNqb25lbi5cbiIKKyJcbiIKKworIzogc3JjL3N0YXRjbWQuYzoxMTYKK21zZ2lkICJzdHJpcHBpbmcgdHJhaWxpbmcgLyIKK21zZ3N0ciAiZmplcm5lciBhdnNsdXR0ZW5kZSAvIgorCisjOiBzcmMvc3RhdGNtZC5jOjIwNworbXNnaWQgImNhbm5vdCBvcGVuIG5ldyBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAia2xhcnRlIGlra2Ugw6VwbmUgbnkgwqtzdGF0b3ZlcnJpZGXCuy1maWwiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjIyCittc2dpZCAiZXJyb3IgcmVtb3Zpbmcgc3RhdG92ZXJyaWRlLW9sZCIKK21zZ3N0ciAiZmVpbCB2ZWQgc2xldHRpbmcgYXYgc3RhdG92ZXJyaWRlLW9sZCIKKworIzogc3JjL3N0YXRjbWQuYzoyMjQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBuZXcgc3RhdG92ZXJyaWRlLW9sZCIKK21zZ3N0ciAiZmVpbCB2ZWQgb3BwcmV0dGVsc2UgYXYgc3RhdG92ZXJyaWRlLW9sZCIKKworIzogc3JjL3N0YXRjbWQuYzoyMjYKK21zZ2lkICJlcnJvciBpbnN0YWxsaW5nIG5ldyBzdGF0b3ZlcnJpZGUiCittc2dzdHIgImZlaWwgdmVkIGluc3RhbGxlcmluZyBhdiBueSBzdGF0b3ZlcnJpZGUiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjQ2Cittc2dpZCAiLS1hZGQgbmVlZHMgZm91ciBhcmd1bWVudHMiCittc2dzdHIgIi0tYWRkIGtyZXZlciBmaXJlIHBhcmFtZXRyZSIKKworIzogc3JjL3N0YXRjbWQuYzoyNTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkFuIG92ZXJyaWRlIGZvciAnJXMnIGFscmVhZHkgZXhpc3RzLCBidXQgLS1mb3JjZSBzcGVjaWZpZWQgc28gd2lsbCBiZSAiCisiaWdub3JlZC4iCittc2dzdHIgIiIKKyJFbiB0aWxzaWRlc2V0dGVsc2UgZm9yIMKrJXPCuyBmaW5uZXMgYWxsZXJlZGUsIG1lbiAtLWZvcmNlIG9wcGdpdHQgc8OlIGRldCB2aWwgIgorImJsaSBpZ25vcmVydC4iCisKKyM6IHNyYy9zdGF0Y21kLmM6MjYwCisjLCBjLWZvcm1hdAorbXNnaWQgIkFuIG92ZXJyaWRlIGZvciAnJXMnIGFscmVhZHkgZXhpc3RzLCBhYm9ydGluZy4iCittc2dzdHIgIkVuIHRpbHNpZGVzZXR0ZWxzZSBmb3Igwqslc8K7IGVrc2lzdGVyZXIgYWxsZXJlZGUsIGF2YnJ5dGVyLiIKKworIzogc3JjL3N0YXRjbWQuYzoyNzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS11cGRhdGUgZ2l2ZW4gYnV0ICVzIGRvZXMgbm90IGV4aXN0IgorbXNnc3RyICItLXVwZGF0ZSBvcHBnaXR0IG1lbiAlcyBla3Npc3RlcmVyIGlra2UiCisKKyM6IHNyYy9zdGF0Y21kLmM6Mjk2Cittc2dpZCAiTm8gb3ZlcnJpZGUgcHJlc2VudC4iCittc2dzdHIgIkluZ2VuIHRpbHNpZGVzZXR0ZWxzZSB0aWxzdGVkZS4iCisKKyM6IHNyYy9zdGF0Y21kLmM6MzA0Cittc2dpZCAiLS11cGRhdGUgaXMgdXNlbGVzcyBmb3IgLS1yZW1vdmUiCittc2dzdHIgIi0tdXBkYXRlIGVyIG1lbmluZ3Nsw7hzIGZvciAtLXJlbW92ZSIKKworIzogc3JjL3N0YXRkYi5jOjU5Cittc2dpZCAic3ludGF4IGVycm9yOiBpbnZhbGlkIHVpZCBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAic3ludGFrc2ZlaWw6IHVneWxkaWcgdWlkIGkgc3RhdG92ZXJyaWRlLWZpbCIKKworIzogc3JjL3N0YXRkYi5jOjY0CisjLCBjLWZvcm1hdAorbXNnaWQgInN5bnRheCBlcnJvcjogdW5rbm93biB1c2VyICclcycgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgInN5bnRha3NmZWlsOiB1a2plbnQgYnJ1a2VyIMKrJXPCuyBpIHN0YXRvdmVycmlkZS1maWwiCisKKyM6IHNyYy9zdGF0ZGIuYzo4MworbXNnaWQgInN5bnRheCBlcnJvcjogaW52YWxpZCBnaWQgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgInN5bnRha3NmZWlsOiB1Z3lsZGlnIGdpZCBpIHN0YXRvdmVycmlkZS1maWwiCisKKyM6IHNyYy9zdGF0ZGIuYzo4OAorIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3I6IHVua25vd24gZ3JvdXAgJyVzJyBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAic3ludGFrc2ZlaWw6IHVramVudCBncnVwcGUgwqslc8K7IGkgc3RhdG92ZXJyaWRlLWZpbCIKKworIzogc3JjL3N0YXRkYi5jOjEwNAorbXNnaWQgInN5bnRheCBlcnJvcjogaW52YWxpZCBtb2RlIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJzeW50YWtzZmVpbDogdWd5bGRpZyBtb2R1ZXMgaSBzdGF0b3ZlcnJpZGUtZmlsIgorCisjOiBzcmMvc3RhdGRiLmM6MTI3Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgImtsYXJ0ZSBpa2tlIMOlcG5lIMKrc3RhdG92ZXJyaWRlwrstZmlsYSIKKworIzogc3JjL3N0YXRkYi5jOjEzNAorbXNnaWQgImZhaWxlZCB0byBmc3RhdCBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAia2xhcnRlIGlra2UgdXRmw7hyZSDCq2ZzdGF0wrsgcMOlIMKrc3RhdG92ZXJyaWRlwrstZmlsYSIKKworIzogc3JjL3N0YXRkYi5jOjEzNworbXNnaWQgImZhaWxlZCB0byBmc3RhdCBwcmV2aW91cyBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAia2xhcnRlIGlra2UgdXRmw7hyZSDCq2ZzdGF0wrsgcMOlIGRlbiBmb3JyaWdlIMKrc3RhdG92ZXJyaWRlwrstZmlsYSIKKworIzogc3JjL3N0YXRkYi5jOjE2MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic3RhdG92ZXJyaWRlIGZpbGUgYCUuMjUwcyciCittc2dpZCAicmVhZGluZyBzdGF0b3ZlcnJpZGUgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAiwqtzdGF0b3ZlcnJpZGXCuy1maWwgwqslLjI1MHPCuyIKKworIzogc3JjL3N0YXRkYi5jOjE2OQorbXNnaWQgInN0YXRvdmVycmlkZSBmaWxlIGlzIG1pc3NpbmcgZmluYWwgbmV3bGluZSIKK21zZ3N0ciAic3RhdG92ZXJyaWRlLWZpbGEgbWFuZ2xlciBldCBhdnNsdXR0ZW5kZSBsaW5qZXNraWZ0IgorCisjOiBzcmMvc3RhdGRiLmM6MTczCittc2dpZCAic3RhdG92ZXJyaWRlIGZpbGUgY29udGFpbnMgZW1wdHkgbGluZSIKK21zZ3N0ciAiwqtzdGF0b3ZlcnJpZGXCuy1maWxhIGlubmVob2xkZXIgZW4gdG9tIGxpbmplIgorCisjOiBzcmMvc3RhdGRiLmM6MTc4IHNyYy9zdGF0ZGIuYzoxOTAgc3JjL3N0YXRkYi5jOjIwMgorbXNnaWQgInN5bnRheCBlcnJvciBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAic3ludGFrc2ZlaWwgaSBzdGF0b3ZlcnJpZC1maWxhIgorCisjOiBzcmMvc3RhdGRiLmM6MTg2IHNyYy9zdGF0ZGIuYzoxOTggc3JjL3N0YXRkYi5jOjIxMAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGxpbmUgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgInV2ZW50ZXQgc2x1dHQgcMOlIGxpbmplIGkgc3RhdG92ZXJyaWRlLWZpbGEiCisKKyM6IHNyYy9zdGF0ZGIuYzoyMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAibXVsdGlwbGUgc3RhdHVzb3ZlcnJpZGVzIHByZXNlbnQgZm9yIGZpbGUgJyUuMjUwcyciCittc2dzdHIgImZsZXJlIHN0YXR1c3RpbHNpZGVzZXR0ZWxzZXIgdGlsc3RlZGUgZm9yIGZpbGEgwqslLjI1MHPCuyIKKworIzogc3JjL3RyaWdjbWQuYzo0NgorbXNnaWQgIlR5cGUgZHBrZy10cmlnZ2VyIC0taGVscCBmb3IgaGVscCBhYm91dCB0aGlzIHV0aWxpdHkuIgorbXNnc3RyICJTa3JpdiDCq2Rwa2ctdHJpZ2dlciAtLWhlbHDCuyBmb3IgaGplbHAgb20gZGV0dGUgcHJvZ3JhbW1ldC4iCisKKyM6IHNyYy90cmlnY21kLmM6NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuICVzIHBhY2thZ2UgdHJpZ2dlciB1dGlsaXR5IHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkRlYmlhbiAlcyBwYWtrZXV0bMO4c2VycHJvZ3JhbSB2ZXJzam9uICVzLlxuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjY3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJVc2FnZTogJXMgWzxvcHRpb25zPiAuLi5dIDx0cmlnZ2VyLW5hbWU+XG4iCisiICAgICAgICVzIFs8b3B0aW9ucz4gLi4uXSA8Y29tbWFuZD5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIkJydWs6ICVzIFs8YWx0ZXJuYXRpdj4gLi4uIF0gPHV0bMO4c2VybmF2bj5cbiIKKyIgICAgICAlcyBbPGFsdGVybmF0aXY+IC4uLiBdIDxrb21tYW5kbz5cbiIKKyJcbiIKKworIzogc3JjL3RyaWdjbWQuYzo3MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtLWNoZWNrLXN1cHBvcnRlZCAgICAgICAgICAgICAgICBDaGVjayBpZiB0aGUgcnVubmluZyBkcGtnIHN1cHBvcnRzICIKKyJ0cmlnZ2Vycy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIktvbW1hbmRvZXI6XG4iCisiICAtLWNoZWNrLXN1cHBvcnRlZCAgICAgICAgICAgICAgICBVbmRlcnPDuGsgb20gZGVuIGtqw7hyZW5kZSBkcGtnIHN0w7h0dGVyICIKKyJ1dGzDuHNlcmUuXG4iCisiXG4iCisKKyM6IHNyYy90cmlnY21kLmM6ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgICAgICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyIgIC0tYnktcGFja2FnZT08cGFja2FnZT4gICAgICAgICAgIE92ZXJyaWRlIHRyaWdnZXIgYXdhaXRlciAobm9ybWFsbHkgc2V0XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ5IGRwa2cpLlxuIgorIiAgLS1uby1hd2FpdCAgICAgICAgICAgICAgICAgICAgICAgTm8gcGFja2FnZSBuZWVkcyB0byBhd2FpdCB0aGUgIgorInByb2Nlc3NpbmcuXG4iCisiICAtLW5vLWFjdCAgICAgICAgICAgICAgICAgICAgICAgICBKdXN0IHRlc3QgLSBkb24ndCBhY3R1YWxseSBjaGFuZ2UgIgorImFueXRoaW5nLlxuIgorIlxuIgorbXNnc3RyICIiCisiVmFsZzpcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT4gICAgICAgICAgIEJydWsgPG1hcHBlPiBpc3RlZGVuZm9yICVzLlxuIgorIiAgLS1ieS1wYWNrYWdlPTxwYWNrYWdlPiAgICAgICAgICAgT3ZlcnN0eXIgdXRsw7hzZXJ2ZW50ZXIgKG5vcm1hbHQgc2F0dCBhdiAiCisiZHBrZykuXG4iCisiICAtLW5vLWF3YWl0ICAgICAgICAgICAgICAgICAgICAgICBJbmdlbiBwYWtrZSB0cmVuZ2VyIMOlIHZlbnRlIHDDpSAiCisiYmVoYW5kbGluZ2VuLlxuIgorIiAgLS1uby1hY3QgICAgICAgICAgICAgICAgICAgICAgICAgQmFyZSB0ZXN0IC0gaWtrZSBmYWt0aXNrIGVuZHJlIG5vZS5cbiIKKyJcbiIKKworIzogc3JjL3RyaWdjbWQuYzoxNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IHRyaWdnZXJzIGRhdGEgZGlyZWN0b3J5IG5vdCB5ZXQgY3JlYXRlZFxuIgorbXNnc3RyICIlczogTWFwcGUgZm9yIHV0bMO4c2VyZGF0YSBpa2tlIGVuZGEgb3BwcmV0dGV0XG4iCisKKyM6IHNyYy90cmlnY21kLmM6MTU2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB0cmlnZ2VyIHJlY29yZHMgbm90IHlldCBpbiBleGlzdGVuY2VcbiIKK21zZ3N0ciAiJXM6IGRldCBmaW5uZXMgZW5kYSBpa2tlIHV0bMO4c2Vyb3BwZsO4cmluZ2VyXG4iCisKKyM6IHNyYy90cmlnY21kLmM6MjA1Cittc2dpZCAidGFrZXMgb25lIGFyZ3VtZW50LCB0aGUgdHJpZ2dlciBuYW1lIgorbXNnc3RyICJ0YXIgYmFyZSBlbiBwYXJhbWV0ZXIsIHV0bMO4c2VybmF2bmV0IgorCisjOiBzcmMvdHJpZ2NtZC5jOjIxMAorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiZHBrZy10cmlnZ2VyIG11c3QgYmUgY2FsbGVkIGZyb20gYSBtYWludGFpbmVyIHNjcmlwdCAob3Igd2l0aCBhIC0tYnktIgorI3wgInBhY2thZ2Ugb3B0aW9uKSIKK21zZ2lkICJtdXN0IGJlIGNhbGxlZCBmcm9tIGEgbWFpbnRhaW5lciBzY3JpcHQgKG9yIHdpdGggYSAtLWJ5LXBhY2thZ2Ugb3B0aW9uKSIKK21zZ3N0ciAiIgorImRwa2ctdHJpZ2dlciBtw6UgYmxpIGthbHQgZnJhIGV0IHZlZGxpa2Vob2xkZXJza3JpcHQgKGVsbGVyIG1lZCBldCAtLWJ5LSIKKyJwYWNrYWdlIHZhbGcpIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIxNQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZHBrZy10cmlnZ2VyOiBpbGxlZ2FsIGF3YWl0ZWQgcGFja2FnZSBuYW1lIGAlLjI1MHMnOiAlLjI1MHMiCittc2dpZCAiaWxsZWdhbCBhd2FpdGVkIHBhY2thZ2UgbmFtZSAnJS4yNTBzJzogJS4yNTBzIgorbXNnc3RyICJkcGtnLXRyaWdnZXI6IHVneWxkaWcgdmVudGVuZGUgcGFra2VuYXZuIMKrJS4yNTVzwrs6ICUuMjUwcyIKKworIzogc3JjL3RyaWdjbWQuYzoyMjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCB0cmlnZ2VyIG5hbWUgYCUuMjUwcyc6ICUuMjUwcyIKK21zZ3N0ciAidWd5bGRpZyB1dGzDuHNlcm5hdm4gwqslLjI1NXPCuzogJS4yNTBzIgorCisjOiBzcmMvdHJpZ3Byb2MuYzoyNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBjeWNsZSBmb3VuZCB3aGlsZSBwcm9jZXNzaW5nIHRyaWdnZXJzOlxuIgorIiBjaGFpbiBvZiBwYWNrYWdlcyB3aG9zZSB0cmlnZ2VycyBhcmUgb3IgbWF5IGJlIHJlc3BvbnNpYmxlOlxuIgorbXNnc3RyICIiCisiJXM6IHNpcmtlbCBmdW5uZXQgdW5kZXIgYmVoYW5kbGluZyBhdiB1dGzDuHNlcmU6XG4iCisiIGtqZWRlIGF2IHBha2tlciBtZWQgdXRsw7hzZXJlIHNvbSBlciBlbGxlciBrYW4gdsOmcmUgYW5zdmFybGlnZTpcbiIKKworIzogc3JjL3RyaWdwcm9jLmM6MjU4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgcGFja2FnZXMnIHBlbmRpbmcgdHJpZ2dlcnMgd2hpY2ggYXJlIG9yIG1heSBiZSB1bnJlc29sdmFibGU6XG4iCittc2dzdHIgIiIKKyJcbiIKKyIgcGFra2VycyB1dGVzdMOlZW5kZSB1dGzDuHNlcmUgc29tIGVyIGVsbGVyIGthbiB2w6ZyZSB1bMO4c2VsaWdlOlxuIgorCisjOiBzcmMvdHJpZ3Byb2MuYzoyODEKK21zZ2lkICJ0cmlnZ2VycyBsb29waW5nLCBhYmFuZG9uZWQiCittc2dzdHIgInV0bMO4c2VyZSBpIGzDuGtrZSwgZm9ybGF0dCIKKworIzogc3JjL3RyaWdwcm9jLmM6MzEyCisjLCBjLWZvcm1hdAorbXNnaWQgIlByb2Nlc3NpbmcgdHJpZ2dlcnMgZm9yICVzIC4uLlxuIgorbXNnc3RyICJCZWhhbmRsZXIgdXRsw7hzZXJlIGZvciAlcyAuLi5cbiIKKworIzogc3JjL3VwZGF0ZS5jOjUyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICItLSVzIG5lZWRzIGV4YWN0bHkgb25lIFBhY2thZ2VzIGZpbGUgYXJndW1lbnQiCittc2dpZCAiLS0lcyBuZWVkcyBleGFjdGx5IG9uZSBQYWNrYWdlcy1maWxlIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIHRyZW5nZXIgYWtrdXJhdCDDqW4gwqtQYWNrYWdlc8K7LWZpbCBzb20gcGFyYW1ldGVyIgorCisjOiBzcmMvdXBkYXRlLmM6NjIKK21zZ2lkICJ1bmFibGUgdG8gYWNjZXNzIGRwa2cgc3RhdHVzIGFyZWEgZm9yIGJ1bGsgYXZhaWxhYmxlIHVwZGF0ZSIKK21zZ3N0ciAiIgorImtsYXJ0ZSBpa2tlIGbDpSB0aWxnYW5nIHRpbCBkcGtnLXN0YXR1c29tcsOlZGV0IGZvciByw6UgIgorInRpbGdqZW5nZWxpZ2hldHNvcHBkYXRlcmluZyIKKworIzogc3JjL3VwZGF0ZS5jOjY0Cittc2dpZCAiYnVsayBhdmFpbGFibGUgdXBkYXRlIHJlcXVpcmVzIHdyaXRlIGFjY2VzcyB0byBkcGtnIHN0YXR1cyBhcmVhIgorbXNnc3RyICIiCisicsOlIHRpbGdqZW5nZWxpZ2hldHNvcHBkYXRlcmluZyBrcmV2ZXIgc2tyaXZldGlsZ2FuZyB0aWwgZHBrZy1zdGF0dXNvbXLDpWRldCIKKworIzogc3JjL3VwZGF0ZS5jOjcxCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlcGxhY2luZyBhdmFpbGFibGUgcGFja2FnZXMgaW5mbywgdXNpbmcgJXMuXG4iCittc2dzdHIgIkJ5dHRlciB1dCBpbmZvcm1hc2pvbiBvbSB0aWxnamVuZ2VsaWdlIHBha2tlciwgdmVkIGhqZWxwIGF2ICVzLlxuIgorCisjOiBzcmMvdXBkYXRlLmM6NzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiVXBkYXRpbmcgYXZhaWxhYmxlIHBhY2thZ2VzIGluZm8sIHVzaW5nICVzLlxuIgorbXNnc3RyICJPcHBkYXRlcmVyIG9wcGx5c25pbmdlciBvbSB0aWxnamVuZ2VsaWdlIHBha2tlciwgdmVkIGhqZWxwIGF2ICVzLlxuIgorCisjOiBzcmMvdXBkYXRlLmM6MTAxCisjLCBjLWZvcm1hdAorbXNnaWQgIkluZm9ybWF0aW9uIGFib3V0ICVkIHBhY2thZ2Ugd2FzIHVwZGF0ZWQuXG4iCittc2dpZF9wbHVyYWwgIkluZm9ybWF0aW9uIGFib3V0ICVkIHBhY2thZ2VzIHdhcyB1cGRhdGVkLlxuIgorbXNnc3RyWzBdICJJbmZvcm1hc2pvbiBvbSAlZCBwYWtrZSBibGUgb3BwZGF0ZXJ0LlxuIgorbXNnc3RyWzFdICJJbmZvcm1hc2pvbiBvbSAlZCBwYWtrZXIgYmxlIG9wcGRhdGVydC5cbiIKKworIzogc3JjL3VwZGF0ZS5jOjExNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisib2Jzb2xldGUgJy0tJXMnIG9wdGlvbiwgdW5hdmFpbGFibGUgcGFja2FnZXMgYXJlIGF1dG9tYXRpY2FsbHkgY2xlYW5lZCB1cC4iCittc2dzdHIgImZvcmVsZGV0IMKrLS0lc8K7IHZhbGcsIHV0aWxnamVuZ2VsaWdlIHBha2tlciByeWRkZXMgYXV0b21hdGlzayBvcHAuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIG5hbWUgJyUuNTBzLi4uJyBpcyB0b28gbG9uZyIKK21zZ3N0ciAiZmlsbmF2biDCqyUuNTBzLi4uwrsgZXIgZm9yIGxhbmd0IgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjEyOQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBmaWxlIG5hbWUgJyUuMjUwcyciCittc2dzdHIgImtsYXJ0ZSBpa2tlIGZpbm5lIGZpbG5hdm5ldCDCqyUuMjUwc8K7IgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjE4OQorbXNnaWQgInVuYWJsZSB0byBzdGF0IGNvbnRyb2wgZGlyZWN0b3J5IgorbXNnc3RyICJrbGFydGUgaWtrZSBmaW5uZSBrb250cm9sbG1hcHBhIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjE5MQorbXNnaWQgImNvbnRyb2wgZGlyZWN0b3J5IGlzIG5vdCBhIGRpcmVjdG9yeSIKK21zZ3N0ciAia29udHJvbGxtYXBwYSBlciBpa2tlIGVpIG1hcHBlIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjE5MworIywgYy1mb3JtYXQKK21zZ2lkICJjb250cm9sIGRpcmVjdG9yeSBoYXMgYmFkIHBlcm1pc3Npb25zICUwM2xvIChtdXN0IGJlID49MDc1NSBhbmQgPD0wNzc1KSIKK21zZ3N0ciAia29udHJvbGxrYXRhbG9nZW4gaGFyIGZlaWwgcmV0dGlnaGV0ICUwM2xvIChtw6UgdsOmcmUgPj0wNzU1IG9nIDw9MDc3NSkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjA0CisjLCBjLWZvcm1hdAorbXNnaWQgIm1haW50YWluZXIgc2NyaXB0IGAlLjUwcycgaXMgbm90IGEgcGxhaW4gZmlsZSBvciBzeW1saW5rIgorbXNnc3RyICIiCisidmVkbGlrZWhvbGRlcnNrcmlwdGV0IMKrJS41MHPCuyBlciB2ZXJrZW4gZW4gcmVuIGZpbCBlbGxlciBlbiBzeW1ib2xzayBsZW5rZSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyMDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm1haW50YWluZXIgc2NyaXB0IGAlLjUwcycgaGFzIGJhZCBwZXJtaXNzaW9ucyAlMDNsbyAobXVzdCBiZSA+PTA1NTUgYW5kICIKKyI8PTA3NzUpIgorbXNnc3RyICIiCisidmVkbGlrZWhvbGRlcnNrcmlwdGV0IMKrJS41MHPCuyBoYXIgZmVpbCByZXR0aWdoZXQgJTAzbG8gKG3DpSB2w6ZyZSA+PTA1NTUgb2cgIgorIjw9MDc3NSkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjExCisjLCBjLWZvcm1hdAorbXNnaWQgIm1haW50YWluZXIgc2NyaXB0IGAlLjUwcycgaXMgbm90IHN0YXR0YWJsZSIKK21zZ3N0ciAiZmlubmVyIGlra2UgdmVkbGlrZWhvbGRlcnNrcmlwdGV0IMKrJS41MHPCuyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyMzcKK21zZ2lkICJlcnJvciBvcGVuaW5nIGNvbmZmaWxlcyBmaWxlIgorbXNnc3RyICJmZWlsIHZlZCDDpXBuaW5nIGF2IMKrY29uZmZpbGVzwrstZmlsYSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNDYKK21zZ2lkICJlbXB0eSBzdHJpbmcgZnJvbSBmZ2V0cyByZWFkaW5nIGNvbmZmaWxlcyIKK21zZ3N0ciAidG9tIHN0cmVuZyBmcmEgwqtmZ2V0c8K7IHZlZCBsZXNpbmcgYXYgb3Bwc2V0dHNmaWxlciIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgbmFtZSAnJS41MHMuLi4nIGlzIHRvbyBsb25nLCBvciBtaXNzaW5nIGZpbmFsIG5ld2xpbmUiCittc2dzdHIgIiIKKyJuYXZuZXQgcMOlIG9wcHNldHRzZmlsYSDCqyUuNTBzLi4uwrsgZXIgZm9yIGxhbmd0IGVsbGVyIG1hbmdsZXIgbGluamVza2lmdCB0aWwgIgorInNsdXR0IgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI2NAorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBmaWxlbmFtZSAnJXMnIGNvbnRhaW5zIHRyYWlsaW5nIHdoaXRlIHNwYWNlcyIKK21zZ3N0ciAibmF2bmV0IHDDpSBvcHBzZXR0c2ZpbGEgwqslc8K7IGlubmVob2xkZXIgYXZzbHV0dGVuZGUgYmxhbmtlIHRlZ24iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjY2CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIGAlLjI1MHMnIGRvZXMgbm90IGFwcGVhciBpbiBwYWNrYWdlIgorbXNnc3RyICJvcHBzZXR0c2ZpbGEgwqslLjI1MHPCuyBmaW5uZXMgaWtrZSBpIHBha2tlbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgYCUuMjUwcycgaXMgbm90IHN0YXR0YWJsZSIKK21zZ3N0ciAiZmlubmVyIGlra2Ugb3Bwc2V0dHNmaWxhIMKrJS4yNTBzwrsiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjcwCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlICclcycgaXMgbm90IGEgcGxhaW4gZmlsZSIKK21zZ3N0ciAib3Bwc2V0dHNmaWxhIMKrJXPCuyBlciBpa2tlIGVuIHZhbmxpZyBmaWwiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6Mjc0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIG5hbWUgJyVzJyBpcyBkdXBsaWNhdGVkIgorbXNnc3RyICJuYXZuZXQgcMOlIG9wcHNldHRzZmlsYSAlcyBlciBkdXBsaXNlcnQiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6Mjg3Cittc2dpZCAiZXJyb3IgcmVhZGluZyBjb25mZmlsZXMgZmlsZSIKK21zZ3N0ciAiZmVpbCB2ZWQgbGVzaW5nIGF2IMKrY29uZmZpbGVzwrstZmlsYSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzozMzkKK21zZ2lkICJwYWNrYWdlIG5hbWUgaGFzIGNoYXJhY3RlcnMgdGhhdCBhcmVuJ3QgbG93ZXJjYXNlIGFscGhhbnVtcyBvciBgLSsuJyIKK21zZ3N0ciAicGFra2VuYXZuZXQgaGFyIHRlZ24gc29tIHZlcmtlbiBlciBzbcOlIGJva3N0YXZlciwgdGFsbCBlbGxlciDCqy0rLsK7IgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjM0MQorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGNvbnRhaW5zIHVzZXItZGVmaW5lZCBQcmlvcml0eSB2YWx1ZSAnJXMnIgorbXNnc3RyICLCqyVzwrsgaW5uZWhvbGRlciBicnVrZXJkZWZpbmVydCBwcmlvcml0ZXRzdmVyZGkgwqslc8K7IgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjM0NworIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGNvbnRhaW5zIHVzZXItZGVmaW5lZCBmaWVsZCAnJXMnIgorbXNnc3RyICLCqyVzwrsgaW5uZWhvbGRlciBicnVrZXJkZWZpbmVydCBmZWx0IMKrJXPCuyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzozNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgJWQgd2FybmluZyBhYm91dCB0aGUgY29udHJvbCBmaWxlKHMpXG4iCittc2dpZF9wbHVyYWwgImlnbm9yaW5nICVkIHdhcm5pbmdzIGFib3V0IHRoZSBjb250cm9sIGZpbGUocylcbiIKK21zZ3N0clswXSAiaWdub3JlcmVyICVkIGFkdmFyc2VsIG9tIGtvbnRyb2xsZmlsZW4oZSlcbiIKK21zZ3N0clsxXSAiaWdub3JlcmVyICVkIGFkdmFyc2xlciBvbSBrb250cm9sbGZpbGVuKGUpXG4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDAzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDI5CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQzNgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGEgPGRpcmVjdG9yeT4gYXJndW1lbnQiCittc2dzdHIgIi0tJXMga3JldmVyIGVuIDxrYXRhbG9nPi1wYXJhbWV0ZXIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDA5Cittc2dpZCAiLS1idWlsZCB0YWtlcyBhdCBtb3N0IHR3byBhcmd1bWVudHMiCittc2dzdHIgIi0tYnVpbGQgdGFyIGjDuHlzdCB0byBwYXJhbWV0cmUiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDEzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGVjayBmb3IgZXhpc3RlbmNlIG9mIGFyY2hpdmUgYCUuMjUwcyciCittc2dzdHIgImtsYXJ0ZSBpa2tlIHNqZWtrZSBvbSBhcmtpdmV0IMKrJS4yNTBzwrsgZmlucyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzAKK21zZ2lkICJ0YXJnZXQgaXMgZGlyZWN0b3J5IC0gY2Fubm90IHNraXAgY29udHJvbCBmaWxlIGNoZWNrIgorbXNnc3RyICJtw6VsZXQgZXIgZW4ga2F0YWxvZyAtIGthbiBpa2tlIGhvcHBlIG92ZXIga29udHJvbGxmaWxzamVrayIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzEKK21zZ2lkICJub3QgY2hlY2tpbmcgY29udGVudHMgb2YgY29udHJvbCBhcmVhLiIKK21zZ3N0ciAic2pla2tlciBpa2tlIGlubmVob2xkZXQgaSBrb250cm9sbG9tcsOlZGV0LiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZy1kZWI6IGJ1aWxkaW5nIGFuIHVua25vd24gcGFja2FnZSBpbiAnJXMnLlxuIgorbXNnc3RyICJkcGtnLWRlYjogQnlnZ2VyIGVuIHVramVudCBwYWtrZSBpIMKrJXPCuy5cbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZy1kZWI6IGJ1aWxkaW5nIHBhY2thZ2UgYCVzJyBpbiBgJXMnLlxuIgorbXNnc3RyICJkcGtnLWRlYjogQnlnZ2VyIHBha2tlbiDCqyVzwrsgaSDCqyVzwrsuXG4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDY3IGRwa2ctZGViL2J1aWxkLmM6NTIxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gbWFrZSB0bXBmaWxlIChkYXRhKSIKK21zZ2lkICJmYWlsZWQgdG8gbWFrZSB0ZW1wb3JhcnkgZmlsZSAoJXMpIgorbXNnc3RyICJrbGFydGUgaWtrZSBvcHByZXR0ZSBtaWRsZXJ0aWRpZyBmaWwgKGRhdGEpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ2NyBkcGtnLWRlYi9idWlsZC5jOjQ3MCBkcGtnLWRlYi9idWlsZC5jOjQ3NworIzogZHBrZy1kZWIvYnVpbGQuYzo0ODUgZHBrZy1kZWIvYnVpbGQuYzo0OTQgZHBrZy1kZWIvYnVpbGQuYzo0OTkKKyMsIGZ1enp5CisjfCBtc2dpZCAiY29udHJvbCBhcmVhIgorbXNnaWQgImNvbnRyb2wgbWVtYmVyIgorbXNnc3RyICJrb250cm9sbG9tcsOlZGUiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDcwIGRwa2ctZGViL2J1aWxkLmM6NTI0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gdW5saW5rIHRtcGZpbGUgKGRhdGEpLCAlcyIKK21zZ2lkICJmYWlsZWQgdG8gdW5saW5rIHRlbXBvcmFyeSBmaWxlICglcyksICVzIgorbXNnc3RyICJrbGFydGUgaWtrZSBmamVybmUgbGVua2UgdGlsIG1pZGxlcnRpZGlnIGZpbCAoZGF0YSksICVzIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ4NSBkcGtnLWRlYi9idWlsZC5jOjU5MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIHJld2luZCB0bXBmaWxlIChkYXRhKSIKK21zZ2lkICJmYWlsZWQgdG8gcmV3aW5kIHRlbXBvcmFyeSBmaWxlICglcykiCittc2dzdHIgImtsYXJ0ZSBpa2tlIGhvcHBlIHRpbGJha2UgaSBtaWRsZXJ0aWRpZyBmaWwgKGRhdGEpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ5NAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGFyIG1lbWJlciBmaWxlICglcykiCittc2dpZCAiZmFpbGVkIHRvIHN0YXQgdGVtcG9yYXJ5IGZpbGUgKCVzKSIKK21zZ3N0ciAia2xhcnRlIGlra2UgZmlubmUgKGZzdGF0KSBhci1tZWRsZW1zZmlsICglcykiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDk4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHdyaXRpbmcgYCVzJyIKK21zZ3N0ciAiZmVpbCB2ZWQgc2tyaXZpbmcgYXYgwqslc8K7IgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjUyMSBkcGtnLWRlYi9idWlsZC5jOjUyNCBkcGtnLWRlYi9idWlsZC5jOjU0NgorIzogZHBrZy1kZWIvYnVpbGQuYzo1NzIgZHBrZy1kZWIvYnVpbGQuYzo1ODAgZHBrZy1kZWIvYnVpbGQuYzo1OTMKKyMsIGZ1enp5CisjfCBtc2dpZCAiYmV0d2VlbiBtZW1iZXJzIgorbXNnaWQgImRhdGEgbWVtYmVyIgorbXNnc3RyICJtZWxsb20gbWVkbGVtbWVyIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjU3MSBkcGtnLWRlYi9idWlsZC5jOjU4MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIHdyaXRlIGZpbGVuYW1lIHRvIHRhciBwaXBlIChkYXRhKSIKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgZmlsZW5hbWUgdG8gdGFyIHBpcGUgKCVzKSIKK21zZ3N0ciAia2xhcnRlIGlra2Ugc2tyaXZlIGZpbG5hdm4gdGlsIHRhci1yw7hyIChkYXRhKSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo1ODQKK21zZ2lkICI8Y29tcHJlc3M+IGZyb20gdGFyIC1jZiIKK21zZ3N0ciAiPGtvbXByaW1lcj4gZnJhIHRhciAtY2YiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzo2MSBkcGtnLWRlYi9leHRyYWN0LmM6NjMKK21zZ2lkICJzaGVsbCBjb21tYW5kIHRvIG1vdmUgZmlsZXMiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjcwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGZpbGUgaW4gJXMgaW4gJS4yNTVzIgorbXNnc3RyICJ1dmVudGV0IHNsdXR0IHDDpSBmaWwgaSAlcyBpICUuMjU1cyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHJlYWRpbmcgJXMgZnJvbSBmaWxlICUuMjU1cyIKK21zZ3N0ciAiZmVpbCB2ZWQgbGVzaW5nIGF2ICVzIGZyYSBmaWwgJS4yNTVzIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTI1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZWFkIGFyY2hpdmUgYCUuMjU1cyciCittc2dzdHIgImtsYXJ0ZSBpa2tlIGxlc2UgYXJraXZldCDCqyUuMjU1c8K7IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTI3Cittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGFyY2hpdmUiCittc2dzdHIgImtsYXJ0ZSBpa2tlIGtqw7hyZSDCq2ZzdGF0wrsgcMOlIGFya2l2ZXQiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxMzEKKyMsIGZ1enp5CisjfCBtc2dpZCAiYXJjaGl2ZSBoYXMgbm8gZG90IGluIHZlcnNpb24gbnVtYmVyIgorbXNnaWQgImFyY2hpdmUgbWFnaWMgdmVyc2lvbiBudW1iZXIiCittc2dzdHIgImFya2l2ZXQgbWFuZ2xlciBwdW5rdHVtIGkgdmVyc2pvbnNudW1tZXJldCIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE0MworIywgZnV6enkKKyN8IG1zZ2lkICJhcmNoaXZlIGhhcyBubyBuZXdsaW5lcyBpbiBoZWFkZXIiCittc2dpZCAiYXJjaGl2ZSBtZW1iZXIgaGVhZGVyIgorbXNnc3RyICJhcmtpdmV0IG1hbmdsZXIgbGluamVza2lmdCBpIGhvdnVkZXQiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNDgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBwYXJ0IG51bWJlciIKK21zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgYXJjaGl2ZSBoZWFkZXIgbWFnaWMiCittc2dzdHIgImZpbGEgwqslLjI1MHPCuyBlciDDuGRlbGFndCAtIHVneWxkaWcgZGVsbnVtbWVyIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTU1CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgbm90IGEgZGViaWFuIGJpbmFyeSBhcmNoaXZlICh0cnkgZHBrZy1zcGxpdD8pIgorbXNnc3RyICJmaWxhIMKrJS4yNTBzwrsgZXIgaWtrZSBldCBiaW7DpnJ0IERlYmlhbi1hcmtpdiAocHLDuHYgZHBrZy1zcGxpdD8pIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTU5CisjLCBmdXp6eQorI3wgbXNnaWQgImFyY2hpdmUgaGFzIG5vIGRvdCBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ2lkICJhcmNoaXZlIGluZm9ybWF0aW9uIGhlYWRlciBtZW1iZXIiCittc2dzdHIgImFya2l2ZXQgbWFuZ2xlciBwdW5rdHVtIGkgdmVyc2pvbnNudW1tZXJldCIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE2MgorbXNnaWQgImFyY2hpdmUgaGFzIG5vIG5ld2xpbmVzIGluIGhlYWRlciIKK21zZ3N0ciAiYXJraXZldCBtYW5nbGVyIGxpbmplc2tpZnQgaSBob3Z1ZGV0IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTY1Cittc2dpZCAiYXJjaGl2ZSBoYXMgbm8gZG90IGluIHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICJhcmtpdmV0IG1hbmdsZXIgcHVua3R1bSBpIHZlcnNqb25zbnVtbWVyZXQiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiYXJjaGl2ZSB2ZXJzaW9uICUuMjUwcyBub3QgdW5kZXJzdG9vZCwgZ2V0IG5ld2VyIGRwa2ctZGViIgorbXNnc3RyICJza2rDuG5uZXIgaWtrZSBhcmtpdnZlcnNqb25lbiAlLjI1MHMuIER1IHRyZW5nZXIgZW4gbnllcmUgZHBrZy1kZWIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNzkgZHBrZy1kZWIvZXh0cmFjdC5jOjIwNQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic2tpcHBlZCBtZW1iZXIgZGF0YSBmcm9tICVzIgorbXNnaWQgInNraXBwZWQgYXJjaGl2ZSBtZW1iZXIgZGF0YSBmcm9tICVzIgorbXNnc3RyICJob3BwZXQgb3ZlciBtZWRsZW1zZGF0YSBmcmEgJXMiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxOTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgY29udGFpbnMgdW51bmRlcnN0b29kIGRhdGEgbWVtYmVyICUuKnMsIGdpdmluZyB1cCIKK21zZ2lkICJhcmNoaXZlICclLjI1MHMnIGNvbnRhaW5zIG5vdCB1bmRlcnN0b29kIGRhdGEgbWVtYmVyICUuKnMsIGdpdmluZyB1cCIKK21zZ3N0ciAiIgorImZpbGEgwqslLjI1MHPCuyBpbm5laG9sZGVyIGV0IGRhdGFtZWRsZW0gJS4qcyBzb20gamVnIGlra2Ugc2tqw7hubmVyLiBHaXIgb3BwIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTk5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGNvbnRhaW5zIHR3byBjb250cm9sIG1lbWJlcnMsIGdpdmluZyB1cCIKK21zZ2lkICJhcmNoaXZlICclLjI1MHMnIGNvbnRhaW5zIHR3byBjb250cm9sIG1lbWJlcnMsIGdpdmluZyB1cCIKK21zZ3N0ciAiZmlsYSDCqyUuMjUwc8K7IGlubmVob2xkZXIgdG8ga29udHJvbGxtZWRsZW1tZXIuIEdpciBvcHAiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyMTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIgbmV3IGRlYmlhbiBwYWNrYWdlLCB2ZXJzaW9uICVzLlxuIgorI3wgIiBzaXplICVsZCBieXRlczogY29udHJvbCBhcmNoaXZlPSAlemkgYnl0ZXMuXG4iCittc2dpZCAiIgorIiBuZXcgZGViaWFuIHBhY2thZ2UsIHZlcnNpb24gJXMuXG4iCisiIHNpemUgJWpkIGJ5dGVzOiBjb250cm9sIGFyY2hpdmU9ICVqZCBieXRlcy5cbiIKK21zZ3N0ciAiIgorIiBueSBEZWJpYW4tcGFra2UsIHZlcnNqb24gJXMuXG4iCisiIHN0w7hycmVsc2UgJWxkIGJ5dGU6IGtvbnRyb2xsYXJraXYgPSAlemkgYnl0ZS5cbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIzMgorbXNnaWQgImFyY2hpdmUgY29udHJvbCBtZW1iZXIgc2l6ZSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjM1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJhcmNoaXZlIGhhcyBtYWxmb3JtYXR0ZWQgY29udHJvbCBsZW5ndGggYCVzJyIKK21zZ2lkICJhcmNoaXZlIGhhcyBtYWxmb3JtYXR0ZWQgY29udHJvbCBtZW1iZXIgc2l6ZSAnJXMnIgorbXNnc3RyICJhcmtpdmV0IGhhciBlbiBtaXNmb3JtYXRlcnQga29udHJvbGxlbmdkZSDCqyVzwrsiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNDIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInNraXBwZWQgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ2lkICJza2lwcGVkIGFyY2hpdmUgY29udHJvbCBtZW1iZXIgZGF0YSBmcm9tICVzIgorbXNnc3RyICJob3BwZXQgb3ZlciBtZWRsZW1zZGF0YSBmcmEgJXMiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNDYKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIgb2xkIGRlYmlhbiBwYWNrYWdlLCB2ZXJzaW9uICVzLlxuIgorI3wgIiBzaXplICVsZCBieXRlczogY29udHJvbCBhcmNoaXZlPSAlemksIG1haW4gYXJjaGl2ZT0gJWxkLlxuIgorbXNnaWQgIiIKKyIgb2xkIGRlYmlhbiBwYWNrYWdlLCB2ZXJzaW9uICVzLlxuIgorIiBzaXplICVqZCBieXRlczogY29udHJvbCBhcmNoaXZlPSAlamQsIG1haW4gYXJjaGl2ZT0gJWpkLlxuIgorbXNnc3RyICIiCisiIGdhbW1lbCBEZWJpYW4tcGFra2UsIHZlcnNqb24gJXMuXG4iCisiIHN0w7hycmVsc2UgJWxkIGJ5dGU6IGtvbnRyb2xsYXJraXYgPSAlemksIGhvdmVkYXJraXYgPSAlbGQuXG4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2ctZGViOiBmaWxlIGxvb2tzIGxpa2UgaXQgbWlnaHQgYmUgYW4gYXJjaGl2ZSB3aGljaCBoYXMgYmVlblxuIgorImRwa2ctZGViOiAgICBjb3JydXB0ZWQgYnkgYmVpbmcgZG93bmxvYWRlZCBpbiBBU0NJSSBtb2RlXG4iCittc2dzdHIgIiIKKyJkcGtnLWRlYjogRGV0IHNlciB1dCB0aWwgYXQgZmlsYSBlciBldCBhcmtpdiBzb20gaGFyIGJsaXR0XG4iCisiZHBrZy1kZWI6ICAgIMO4ZGVsYWd0IGZvcmRpIGRldCBlciBsYXN0ZXQgbmVkIGkgQVNDSUktbW9kdXMuXG4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCUuMjU1cycgaXMgbm90IGEgZGViaWFuIGZvcm1hdCBhcmNoaXZlIgorbXNnc3RyICLCqyUuMjU1c8K7IGVyIGlra2UgZXQgYXJraXYgaSBEZWJpYW4tZm9ybWF0IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjY2Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIHRvIHBpcGUgaW4gY29weSIKK21zZ3N0ciAia2xhcnRlIGlra2Ugc2tyaXZlIHRpbCByw7hyZXQgaSDCq2NvcHnCuyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI2OAorbXNnaWQgImZhaWxlZCB0byBjbG9zZSBwaXBlIGluIGNvcHkiCittc2dzdHIgImtsYXJ0ZSBpa2tlIGx1a2tlIHLDuHJldCBpIMKrY29wecK7IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6Mjg0Cittc2dpZCAiZGF0YSIKK21zZ3N0ciAiZGF0YSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMwNworbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byBkaXJlY3RvcnkiCittc2dzdHIgImtsYXJ0ZSBpa2tlIHNraWZ0ZSB0aWwga2F0YWxvZyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMxMAorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgZGlyZWN0b3J5IgorbXNnc3RyICJrbGFydGUgaWtrZSBvcHByZXR0ZSBrYXRhbG9nIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzEyCittc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIGRpcmVjdG9yeSBhZnRlciBjcmVhdGluZyBpdCIKK21zZ3N0ciAia2xhcnRlIGlra2Ugc2tpZnRlIHRpbCBrYXRhbG9nZW4gZXR0ZXIgw6UgaGEgb3BwcmV0dGV0IGRlbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMyMworbXNnaWQgIjxkZWNvbXByZXNzPiIKK21zZ3N0ciAiPGRla29tcHJpbWVyPiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMyNQorbXNnaWQgInBhc3RlIgorbXNnc3RyICJsaW0gaW5uIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzQyIGRwa2ctZGViL2V4dHJhY3QuYzozNjMgZHBrZy1kZWIvZXh0cmFjdC5jOjQwMgorIzogZHBrZy1kZWIvaW5mby5jOjc3CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSAuZGViIGZpbGVuYW1lIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIGtyZXZlciBldCAuZGViLWZpbG5hdm4gc29tIHBhcmFtZXRlciIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjM0NyBkcGtnLWRlYi9leHRyYWN0LmM6NDA2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyItLSVzIG5lZWRzIGEgdGFyZ2V0IGRpcmVjdG9yeS5cbiIKKyJQZXJoYXBzIHlvdSBzaG91bGQgYmUgdXNpbmcgZHBrZyAtLWluc3RhbGwgPyIKK21zZ3N0ciAiIgorIi0tJXMga3JldmVyIGVuIG3DpWxrYXRhbG9nLlxuIgorIkthbnNramUgZHUgbWVudGUgw6UgYnJ1a2UgwqtkcGtnIC0taW5zdGFsbMK7PyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjM1MCBkcGtnLWRlYi9leHRyYWN0LmM6NDEwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgYXQgbW9zdCB0d28gYXJndW1lbnRzICguZGViIGFuZCBkaXJlY3RvcnkpIgorbXNnc3RyICItLSVzIHRhciBow7h5c3QgdG8gcGFyYW1ldHJlICguZGViIG9nIGthdGFsb2cpIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzY1CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgb25seSBvbmUgYXJndW1lbnQgKC5kZWIgZmlsZW5hbWUpIgorbXNnc3RyICItLSVzIHRhciBiYXJlIMOpbiBwYXJhbWV0ZXIgKC5kZWItZmlsbmF2bikiCisKKyM6IGRwa2ctZGViL2luZm8uYzo2MworbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byBgLycgZm9yIGNsZWFudXAiCittc2dzdHIgImtsYXJ0ZSBpa2tlIHNraWZ0ZSB0aWwga2F0YWxvZ2VuIMKrL8K7IGZvciDDpSByeWRkZSBvcHAiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMDYKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImNhbm5vdCBzdGF0IGZpbGUgJyVzJyIKK21zZ2lkICJjb250cm9sIGZpbGUgJyVzJyIKK21zZ3N0ciAiZmFudCBpa2tlIGZpbCDCqyVzwrsiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZy1kZWI6IGAlLjI1NXMnIGNvbnRhaW5zIG5vIGNvbnRyb2wgY29tcG9uZW50IGAlLjI1NXMnXG4iCittc2dzdHIgImRwa2ctZGViOiDCqyUuMjU1c8K7IGlubmVob2xkZXIgaWtrZSBrb250cm9sbGtvbXBvbmVudGVuIMKrJS4yNTVzwrtcbiIKKworIzogZHBrZy1kZWIvaW5mby5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICJvcGVuIGNvbXBvbmVudCBgJS4yNTVzJyAoaW4gJS4yNTVzKSBmYWlsZWQgaW4gYW4gdW5leHBlY3RlZCB3YXkiCittc2dzdHIgIsOlcG5pbmcgYXYga29tcG9uZW50ZW4gwqslLjI1NXPCuyAoaSAlLjI1NXMpIG1pc2x5a3RlcyBww6UgZW4gdXZlbnRldCBtw6V0ZSIKKworIzogZHBrZy1kZWIvaW5mby5jOjEyMQorIywgYy1mb3JtYXQKK21zZ2lkICIlZCByZXF1ZXN0ZWQgY29udHJvbCBjb21wb25lbnQgaXMgbWlzc2luZyIKK21zZ2lkX3BsdXJhbCAiJWQgcmVxdWVzdGVkIGNvbnRyb2wgY29tcG9uZW50cyBhcmUgbWlzc2luZyIKK21zZ3N0clswXSAiJWQgZXR0ZXJzcHVydCBrb250cm9sbGtvbXBvbmVudCBtYW5nbGVyIgorbXNnc3RyWzFdICIlZCBldHRlcnNwdXJ0ZSBrb250cm9sbGtvbXBvbmVudGVyIG1hbmdsZXIiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMzkgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQyNAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc2NhbiBkaXJlY3RvcnkgYCUuMjU1cyciCittc2dzdHIgImtsYXJ0ZSBpa2tlIHNrYW5uZSBrYXRhbG9nZW4gwqslLjI1NXPCuyIKKworIzogZHBrZy1kZWIvaW5mby5jOjE0OAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc3RhdCBgJS4yNTVzJyAoaW4gYCUuMjU1cycpIgorbXNnc3RyICJmYW50IGlra2UgwqslLjI1NXPCuyAoaSDCqyUuMjU1c8K7KSIKKworIzogZHBrZy1kZWIvaW5mby5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgb3BlbiBgJS4yNTVzJyAoaW4gYCUuMjU1cycpIgorbXNnc3RyICJrbGFydGUgaWtrZSDDpXBuZSDCqyUuMjU1c8K7IChpIMKrJS4yNTVzwrspIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTY3IGRwa2ctZGViL2luZm8uYzoxODUgZHBrZy1kZWIvaW5mby5jOjE5OQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCBgJS4yNTVzJyAoaW4gYCUuMjU1cycpIgorbXNnc3RyICJrbGFydGUgaWtrZSBsZXNlIMKrJS4yNTVzwrsgKGkgwqslLjI1NXPCuykiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxNzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiAlN2xkIGJ5dGVzLCAlNWQgbGluZXMgICAlYyAgJS0yMC4xMjdzICUuMTI3c1xuIgorbXNnaWQgIiAlN2pkIGJ5dGVzLCAlNWQgbGluZXMgICAlYyAgJS0yMC4xMjdzICUuMTI3c1xuIgorbXNnc3RyICIgJTdsZCBieXRlLCAlNWQgbGluamVyICAgJWMgICUtMjAuMTI3cyAlLjEyN3NcbiIKKworIzogZHBrZy1kZWIvaW5mby5jOjE3NAorIywgYy1mb3JtYXQKK21zZ2lkICIgICAgIG5vdCBhIHBsYWluIGZpbGUgICAgICAgICAgJS4yNTVzXG4iCittc2dzdHIgIiAgICAgaWtrZSBlbiB2YW5saWcgZmlsICAgICAgICAgICUuMjU1c1xuIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTg2Cittc2dpZCAiKG5vIGBjb250cm9sJyBmaWxlIGluIGNvbnRyb2wgYXJjaGl2ZSEpXG4iCittc2dzdHIgIihpbmdlbiDCq2NvbnRyb2zCuy1maWwgaSBrb250cm9sbGFya2l2ZXQpXG4iCisKKyM6IGRwa2ctZGViL2luZm8uYzoyMjIKK21zZ2lkICJjb3VsZCBub3Qgb3BlbiB0aGUgYGNvbnRyb2wnIGNvbXBvbmVudCIKK21zZ3N0ciAia2xhcnRlIGlra2Ugw6VwbmUga29tcG9uZW50ZW4gwqtjb250cm9swrsiCisKKyM6IGRwa2ctZGViL2luZm8uYzoyNjEKK21zZ2lkICJmYWlsZWQgZHVyaW5nIHJlYWQgb2YgYGNvbnRyb2wnIGNvbXBvbmVudCIKK21zZ3N0ciAiZmVpbCB2ZWQgbGVzaW5nIGF2IGtvbXBvbmVudGVuIMKrY29udHJvbMK7IgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MjYzCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgdGhlICclcycgY29tcG9uZW50IgorbXNnc3RyICJrbGFydGUgaWtrZSBsdWtrZSDCqyVzwrsga29tcG9uZW50IgorCisjOiBkcGtnLWRlYi9pbmZvLmM6Mjc4Cittc2dpZCAiRXJyb3IgaW4gZm9ybWF0IgorbXNnc3RyICJGZWlsIGkgZm9ybWF0IgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MzI4Cittc2dpZCAiLS1jb250ZW50cyB0YWtlcyBleGFjdGx5IG9uZSBhcmd1bWVudCIKK21zZ3N0ciAiLS1jb250ZW50cyB0YXIgYWtrdXJhdCDDqW4gcGFyYW1ldGVyIgorCisjOiBkcGtnLWRlYi9tYWluLmM6NTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuIGAlcycgcGFja2FnZSBhcmNoaXZlIGJhY2tlbmQgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiRGViaWFuIMKrJXPCuyBwYWtrZWFya2l2LWJha2dydW5uc21vdG9yIHZlcnNqb24gJXMuXG4iCisKKyM6IGRwa2ctZGViL21haW4uYzo3MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIkNvbW1hbmRzOlxuIgorI3wgIiAgLWJ8LS1idWlsZCA8ZGlyZWN0b3J5PiBbPGRlYj5dICAgQnVpbGQgYW4gYXJjaGl2ZS5cbiIKKyN8ICIgIC1jfC0tY29udGVudHMgPGRlYj4gICAgICAgICAgICAgIExpc3QgY29udGVudHMuXG4iCisjfCAiICAtSXwtLWluZm8gPGRlYj4gWzxjZmlsZT4gLi4uXSAgICBTaG93IGluZm8gdG8gc3Rkb3V0LlxuIgorI3wgIiAgLVd8LS1zaG93IDxkZWI+ICAgICAgICAgICAgICAgICAgU2hvdyBpbmZvcm1hdGlvbiBvbiBwYWNrYWdlKHMpXG4iCisjfCAiICAtZnwtLWZpZWxkIDxkZWI+IFs8Y2ZpZWxkPiAuLi5dICBTaG93IGZpZWxkKHMpIHRvIHN0ZG91dC5cbiIKKyN8ICIgIC1lfC0tY29udHJvbCA8ZGViPiBbPGRpcmVjdG9yeT5dIEV4dHJhY3QgY29udHJvbCBpbmZvLlxuIgorI3wgIiAgLXh8LS1leHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+ICAgRXh0cmFjdCBmaWxlcy5cbiIKKyN8ICIgIC1YfC0tdmV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gIEV4dHJhY3QgJiBsaXN0IGZpbGVzLlxuIgorI3wgIiAgLS1mc3lzLXRhcmZpbGUgPGRlYj4gICAgICAgICAgICAgT3V0cHV0IGZpbGVzeXN0ZW0gdGFyZmlsZS5cbiIKKyN8ICJcbiIKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtYnwtLWJ1aWxkIDxkaXJlY3Rvcnk+IFs8ZGViPl0gICBCdWlsZCBhbiBhcmNoaXZlLlxuIgorIiAgLWN8LS1jb250ZW50cyA8ZGViPiAgICAgICAgICAgICAgTGlzdCBjb250ZW50cy5cbiIKKyIgIC1JfC0taW5mbyA8ZGViPiBbPGNmaWxlPiAuLi5dICAgIFNob3cgaW5mbyB0byBzdGRvdXQuXG4iCisiICAtV3wtLXNob3cgPGRlYj4gICAgICAgICAgICAgICAgICBTaG93IGluZm9ybWF0aW9uIG9uIHBhY2thZ2UocylcbiIKKyIgIC1mfC0tZmllbGQgPGRlYj4gWzxjZmllbGQ+IC4uLl0gIFNob3cgZmllbGQocykgdG8gc3Rkb3V0LlxuIgorIiAgLWV8LS1jb250cm9sIDxkZWI+IFs8ZGlyZWN0b3J5Pl0gRXh0cmFjdCBjb250cm9sIGluZm8uXG4iCisiICAteHwtLWV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gICBFeHRyYWN0IGZpbGVzLlxuIgorIiAgLVh8LS12ZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PiAgRXh0cmFjdCAmIGxpc3QgZmlsZXMuXG4iCisiICAtUnwtLXJhdy1leHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFeHRyYWN0IGNvbnRyb2wgaW5mbyBhbmQgZmlsZXMuXG4iCisiICAtLWZzeXMtdGFyZmlsZSA8ZGViPiAgICAgICAgICAgICBPdXRwdXQgZmlsZXN5c3RlbSB0YXJmaWxlLlxuIgorIlxuIgorbXNnc3RyICIiCisiS29tbWFuZG86XG4iCisiICAtYnwtLWJ1aWxkIDxrYXRhbG9nPiBbPGRlYj5dICAgICAgQnlnZyBldCBhcmtpdi5cbiIKKyIgIC1jfC0tY29udGVudHMgPGRlYj4gICAgICAgICAgICAgICBWaXMgaW5uaG9sZC5cbiIKKyIgIC1JfC0taW5mbyA8ZGViPiBbPGNmaWw+Li4uXSAgICAgICBJbmZvcm1hc2pvbiB0aWwgc3RhbmRhcmQtdXQuXG4iCisiICAtV3wtLXNob3cgPGRlYj4gICAgICAgICAgICAgICAgICAgVmlzIG9wcGx5c25pbmdlciBvbSBwYWtrZS5cbiIKKyIgIC1mfC0tZmllbGQgPGRlYj4gWzxjZmVsdD4uLi5dICAgICBWaXMgZmVsdCB0aWwgc3RhbmRhcmQtdXQuXG4iCisiICAtZXwtLWNvbnRyb2wgPGRlYj4gWzxrYXRhbG9nPl0gICAgSGVudCB1dCBrb250cm9sbG9wcGx5c25pbmdlci5cbiIKKyIgIC14fC0tZXh0cmFjdCA8ZGViPiA8a2F0YWxvZz4gICAgICBIZW50IHV0IGZpbGVyLlxuIgorIiAgLVh8LS12ZXh0cmFjdCA8ZGViPiA8a2F0YWxvZz4gICAgIEhlbnQgdXQgb2cgdmlzIGZpbGVyLlxuIgorIiAgLS1mc3lzLXRhcmZpbGUgPGRlYj4gICAgICAgICAgICAgIFV0ZGF0YSB0aWwgdGFyLWZpbC5cbiIKKyJcbiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjkzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyI8ZGViPiBpcyB0aGUgZmlsZW5hbWUgb2YgYSBEZWJpYW4gZm9ybWF0IGFyY2hpdmUuXG4iCisiPGNmaWxlPiBpcyB0aGUgbmFtZSBvZiBhbiBhZG1pbmlzdHJhdGl2ZSBmaWxlIGNvbXBvbmVudC5cbiIKKyI8Y2ZpZWxkPiBpcyB0aGUgbmFtZSBvZiBhIGZpZWxkIGluIHRoZSBtYWluIGBjb250cm9sJyBmaWxlLlxuIgorIlxuIgorbXNnc3RyICIiCisiPGRlYj4gZXIgZmlsbmF2bmV0IHDDpSBldCBhcmtpdiBpIERlYmlhbi1mb3JtYXQuXG4iCisiPGNmaWw+IGVyIG5hdm5ldCBww6UgZW4gYWRtaW5pc3RyYXRpdiBmaWxrb21wb25lbnQuXG4iCisiPGNmZWx0PiBlciBuYXZuZXQgcMOlIGV0IGZlbHQgaSAnY29udHJvbCctZmlsYS5cbiIKKyJcbiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjk5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiT3B0aW9uczpcbiIKKyN8ICIgIC0tc2hvd2Zvcm1hdD08Zm9ybWF0PiAgICAgICAgICAgIFVzZSBhbHRlcm5hdGl2ZSBmb3JtYXQgZm9yIC0tc2hvdy5cbiIKKyN8ICIgIC1EICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVuYWJsZSBkZWJ1Z2dpbmcgb3V0cHV0LlxuIgorI3wgIiAgLS1vbGQsIC0tbmV3ICAgICAgICAgICAgICAgICAgICAgU2VsZWN0IGFyY2hpdmUgZm9ybWF0LlxuIgorI3wgIiAgLS1ub2NoZWNrICAgICAgICAgICAgICAgICAgICAgICAgU3VwcHJlc3MgY29udHJvbCBmaWxlIGNoZWNrIChidWlsZCAiCisjfCAiYmFkXG4iCisjfCAiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhY2thZ2VzKS5cbiIKKyN8ICIgIC16IyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNldCB0aGUgY29tcHJlc3Npb24gbGV2ZWwgd2hlbiAiCisjfCAiYnVpbGRpbmcuXG4iCisjfCAiICAtWjx0eXBlPiAgICAgICAgICAgICAgICAgICAgICAgICBTZXQgdGhlIGNvbXByZXNzaW9uIHR5cGUgdXNlZCB3aGVuICIKKyN8ICJidWlsZGluZy5cbiIKKyN8ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWxsb3dlZCB0eXBlczogZ3ppcCwgeHosIGJ6aXAyLCAiCisjfCAibHptYSwgbm9uZS5cbiIKKyN8ICJcbiIKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tc2hvd2Zvcm1hdD08Zm9ybWF0PiAgICAgICAgICAgIFVzZSBhbHRlcm5hdGl2ZSBmb3JtYXQgZm9yIC0tc2hvdy5cbiIKKyIgIC12LCAtLXZlcmJvc2UgICAgICAgICAgICAgICAgICAgIEVuYWJsZSB2ZXJib3NlIG91dHB1dC5cbiIKKyIgIC1EICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVuYWJsZSBkZWJ1Z2dpbmcgb3V0cHV0LlxuIgorIiAgLS1vbGQsIC0tbmV3ICAgICAgICAgICAgICAgICAgICAgU2VsZWN0IGFyY2hpdmUgZm9ybWF0LlxuIgorIiAgLS1ub2NoZWNrICAgICAgICAgICAgICAgICAgICAgICAgU3VwcHJlc3MgY29udHJvbCBmaWxlIGNoZWNrIChidWlsZCBiYWRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFja2FnZXMpLlxuIgorIiAgLXojICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU2V0IHRoZSBjb21wcmVzc2lvbiBsZXZlbCB3aGVuIGJ1aWxkaW5nLlxuIgorIiAgLVo8dHlwZT4gICAgICAgICAgICAgICAgICAgICAgICAgU2V0IHRoZSBjb21wcmVzc2lvbiB0eXBlIHVzZWQgd2hlbiAiCisiYnVpbGRpbmcuXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFsbG93ZWQgdHlwZXM6IGd6aXAsIHh6LCBiemlwMiwgbHptYSwgIgorIm5vbmUuXG4iCisiXG4iCittc2dzdHIgIiIKKyJWYWxnOlxuIgorIiAgLS1zaG93Zm9ybWF0PTxmb3JtYXQ+ICAgICAgQnJ1ayBhbHRlcm5hdGl2dCBmb3JtYXQgdGlsIC0tc2hvdy5cbiIKKyIgIC1EICAgICAgICAgICAgICAgICAgICAgICAgIFZpcyBhdmx1c2luZ3NkYXRhLlxuIgorIiAgLS1vbGQsIC0tbmV3ICAgICAgICAgICAgICAgVmVsZyBhcmtpdmZvcm1hdC5cbiIKKyIgIC0tbm9jaGVjayAgICAgICAgICAgICAgICAgIElra2Ugc2pla2sga29udHJvbGxmaWwgKGJ5Z2cgdWd5bGRpZyBwYWtrZSkuXG4iCisiICAteiMgICAgICAgICAgICAgICAgICAgICAgICBTZXR0ZXIga29tcHJpbWVyaW5nc25pdsOlIHZlZCBieWdnaW5nLlxuIgorIiAgLVo8dHlwZT4gICAgICAgICAgICAgICAgICAgU2V0dGVyIGtvbXByaW1lcmluZ3N0eXBlbiBzb20gc2thbCBicnVrZXMgdmVkICIKKyJieWdnaW5nLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVGlsbGF0dGUgdHlwZXI6IGd6aXAsIHh6LCBiemlwMiwgbHptYSwgaW5nZW4uXG4iCisiXG4iCisKKyM6IGRwa2ctZGViL21haW4uYzoxMjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIlVzZSBgZHBrZycgdG8gaW5zdGFsbCBhbmQgcmVtb3ZlIHBhY2thZ2VzIGZyb20geW91ciBzeXN0ZW0sIG9yXG4iCisiYGRzZWxlY3QnIG9yIGBhcHRpdHVkZScgZm9yIHVzZXItZnJpZW5kbHkgcGFja2FnZSBtYW5hZ2VtZW50LiAgUGFja2FnZXNcbiIKKyJ1bnBhY2tlZCB1c2luZyBgZHBrZy1kZWIgLS1leHRyYWN0JyB3aWxsIGJlIGluY29ycmVjdGx5IGluc3RhbGxlZCAhXG4iCittc2dzdHIgIiIKKyJcbiIKKyJCcnVrIMKrZHBrZ8K7IHRpbCDDpSBpbnN0YWxsZXJlIG9nIGZqZXJuZSBwYWtrZXIgZnJhIHN5c3RlbWV0LCBlbGxlclxuIgorIsKrZHNlbGVjdMK7IGVsbGVyIMKrYXB0aXR1ZGXCuyBmb3IgYnJ1a2VydmVubmxpZyBwYWtrZWjDpW5kdGVyaW5nLiBQYWtrZXJcbiIKKyJzb20gZXIgcGFra2V0IHV0IG1lZCDCq2Rwa2ctZGViIC0tZXh0cmFjdMK7IHZpbCBpa2tlIGJsaSBpbnN0YWxsZXJ0IHJpa3RpZy5cbiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjEzMgorbXNnaWQgIiIKKyJUeXBlIGRwa2ctZGViIC0taGVscCBmb3IgaGVscCBhYm91dCBtYW5pcHVsYXRpbmcgKi5kZWIgZmlsZXM7XG4iCisiVHlwZSBkcGtnIC0taGVscCBmb3IgaGVscCBhYm91dCBpbnN0YWxsaW5nIGFuZCBkZWluc3RhbGxpbmcgcGFja2FnZXMuIgorbXNnc3RyICIiCisiU2tyaXYgwqtkcGtnLWRlYiAtLWhlbHDCuyBmb3IgaGplbHAgbWVkIGVuZHJpbmcgYXYgKi5kZWItZmlsZXIuXG4iCisiU2tyaXYgwqtkcGtnIC0taGVscMK7IGZvciBoamVscCBtZWQgw6UgaW5zdGFsbGVyZSBvZyBhdmluc3RhbGxlcmUgcGFra2VyLiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjE0OAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGludGVnZXIgZm9yIC0lYzogJyUuMjUwcyciCittc2dzdHIgInVneWxkaWcgaGVsdGFsbCBmb3IgLSVjOiDCqyUuMjUwc8K7IgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTUxCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgY29tcHJlc3Npb24gbGV2ZWwgZm9yIC0lYzogJWxkJyIKK21zZ3N0ciAidWd5bGRpZyBrb21wcmltZXJpbmdzbml2w6UgZm9yIC0lYzogJWxkJyIKKworIzogZHBrZy1kZWIvbWFpbi5jOjE2MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGNvbXByZXNzaW9uIHR5cGUgYCVzJyEiCittc2dzdHIgInVramVudCBrb3ByaW1lcmluZ3N0eXBlIMKrJXPCuyEiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjUyCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBkaWdpdCAoY29kZSAlZCkgaW4gJXMiCittc2dzdHIgImZpbGEgwqslLjI1MHPCuyBlciDDuGRlbGFndCAtIHVneWxkaWcgc2lmZmVyIChrb2RlICVkKSBpICVzIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzo2MAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSAlLjI1MHMgbWlzc2luZyIKK21zZ3N0ciAiZmlsYSDCqyUuMjUwc8K7IGVyIMO4ZGVsYWd0IC0gJS4yNTBzIG1hbmdsZXIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjYzCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIG1pc3NpbmcgbmV3bGluZSBhZnRlciAlLjI1MHMiCittc2dzdHIgImZpbGEgwqslLjI1MHPCuyBlciDDuGRlbGFndCAtIG1hbmdsZXIgbGluamVza2lmdCBldHRlciAlLjI1MHMiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjg5IGRwa2ctc3BsaXQvbWFpbi5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciByZWFkaW5nICUuMjUwcyIKK21zZ3N0ciAiZmVpbCB2ZWQgbGVzaW5nIGF2ICUuMjUwcyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTAzCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBtYWdpYyBhdCBlbmQgb2YgZmlyc3QgaGVhZGVyIgorbXNnc3RyICIiCisiZmlsYSDCqyUuMjUwc8K7IGVyIMO4ZGVsYWd0IC0gdWd5bGRpZyBtYWdpc2sgbnVtbWVyIHNpc3QgaSBkZXQgZsO4cnN0ZSBob2RldCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTEzCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBwYWRkaW5nIGNoYXJhY3RlciAoY29kZSAlZCkiCittc2dzdHIgImZpbGEgwqslLjI1MHPCuyBlciDDuGRlbGFndCAtIHVneWxkaWcgZnlsbHRlZ24gKGtvZGUgJWQpIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gbnVsbHMgaW4gaW5mbyBzZWN0aW9uIgorbXNnc3RyICJmaWxhIMKrJS4yNTBzwrsgZXIgw7hkZWxhZ3QgLSBudWxsZXIgaSBpbmZvcm1hc2pvbnNkZWxlbiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTIyCittc2dpZCAiZm9ybWF0IHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICJmb3JtYXR2ZXJzam9uc251bW1lciIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgZm9ybWF0IHZlcnNpb24gYCUuMjUwcycgLSB5b3UgbmVlZCBhIG5ld2VyIGRwa2ctc3BsaXQiCittc2dzdHIgIiIKKyJmaWxhIMKrJS4yNTBzwrsgaGFyIGZvcm1hdHZlcnNqb24gwqslLjI1MHPCuyAtIGR1IHRyZW5nZXIgZW4gbnllcmUgZHBrZy1zcGxpdCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTI3Cittc2dpZCAicGFja2FnZSBuYW1lIgorbXNnc3RyICJwYWtrZW5hdm4iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyOAorbXNnaWQgInBhY2thZ2UgdmVyc2lvbiBudW1iZXIiCittc2dzdHIgInBha2tldmVyc2pvbnNudW1tZXIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyOQorbXNnaWQgInBhY2thZ2UgZmlsZSBNRDUgY2hlY2tzdW0iCittc2dzdHIgIlBhY2thZ2UtZmlsIE1ENS1rb250cm9sbHN1bSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTMyCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBNRDUgY2hlY2tzdW0gYCUuMjUwcyciCittc2dzdHIgImZpbGEgwqslLjI1MHPCuyBlciDDuGRlbGFndCAtIHVneWxkaWcgTUQ1LWtvbnRyb2xsc3VtIMKrJS4yNTBzwrsiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEzNCBkcGtnLXNwbGl0L2luZm8uYzoxMzUKK21zZ2lkICJhcmNoaXZlIHRvdGFsIHNpemUiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTM2IGRwa2ctc3BsaXQvaW5mby5jOjEzNworIywgZnV6enkKKyN8IG1zZ2lkICJwYXJ0IG9mZnNldCIKK21zZ2lkICJhcmNoaXZlIHBhcnQgb2Zmc2V0IgorbXNnc3RyICJkZWxmb3Jza3l2bmluZyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTM5CisjLCBmdXp6eQorI3wgbXNnaWQgInBhcnQgbnVtYmVycyIKK21zZ2lkICJhcmNoaXZlIHBhcnQgbnVtYmVycyIKK21zZ3N0ciAiZGVsbnVtbWVyIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIG5vIHNsYXNoIGJldHdlZW4gcGFydCBudW1iZXJzIgorbXNnaWQgImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIG5vIHNsYXNoIGJldHdlZW4gYXJjaGl2ZSBwYXJ0IG51bWJlcnMiCittc2dzdHIgImZpbGEgwqslLjI1MHPCuyBlciDDuGRlbGFndCAtIGluZ2VuIHNrcsOlc3RyZWsgbWVsbG9tIGRlbG51bXJlbmUiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE0NQorIywgZnV6enkKKyN8IG1zZ2lkICJudW1iZXIgb2YgcGFydHMiCittc2dpZCAibnVtYmVyIG9mIGFyY2hpdmUgcGFydHMiCittc2dzdHIgImFudGFsbCBkZWxlciIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTQ3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgbnVtYmVyIG9mIHBhcnRzIgorbXNnaWQgImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBudW1iZXIgb2YgYXJjaGl2ZSBwYXJ0cyIKK21zZ3N0ciAiZmlsYSDCqyUuMjUwc8K7IGVyIMO4ZGVsYWd0IC0gdWd5bGRpZyBhbnRhbGwgZGVsZXIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE0OQorIywgZnV6enkKKyN8IG1zZ2lkICJwYXJ0cyBudW1iZXIiCittc2dpZCAiYXJjaGl2ZSBwYXJ0cyBudW1iZXIiCittc2dzdHIgImRlbG51bW1lciIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTUxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgcGFydCBudW1iZXIiCittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIGFyY2hpdmUgcGFydCBudW1iZXIiCittc2dzdHIgImZpbGEgwqslLjI1MHPCuyBlciDDuGRlbGFndCAtIHVneWxkaWcgZGVsbnVtbWVyIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNTcKKyMsIGZ1enp5CisjfCBtc2dpZCAicGFja2FnZSBuYW1lIgorbXNnaWQgInBhY2thZ2UgYXJjaGl0ZWN0dXJlIgorbXNnc3RyICJwYWtrZW5hdm4iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE2NgorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgbWFnaWMgYXQgZW5kIG9mIHNlY29uZCBoZWFkZXIiCittc2dzdHIgIiIKKyJmaWxhIMKrJS4yNTBzwrsgZXIgw7hkZWxhZ3QgLSB1Z3lsZGlnIG1hZ2lzayBudW1tZXIgdGlsIHNsdXR0IGkgZGV0IGFuZHJlICIKKyJob3Z1ZGV0IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gc2Vjb25kIG1lbWJlciBpcyBub3QgZGF0YSBtZW1iZXIiCittc2dzdHIgImZpbGEgwqslLjI1MHPCuyBlciDDuGRlbGFndCAtIGRldCBhbmRyZSBtZWRsZW1tZXQgZXIgaWtrZSBldCBkYXRhbWVkbGVtIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gd3JvbmcgbnVtYmVyIG9mIHBhcnRzIGZvciBxdW90ZWQgc2l6ZXMiCittc2dzdHIgIiIKKyJmaWxhIMKrJS4yNTBzwrsgZXIgw7hkZWxhZ3QgLSBmZWlsIGFudGFsbCBkZWxlciBpIGZvcmhvbGQgdGlsIG9wcGx5c25pbmdhbmUiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE3OAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBzaXplIGlzIHdyb25nIGZvciBxdW90ZWQgcGFydCBudW1iZXIiCittc2dzdHIgImZpbGEgwqslLjI1MHPCuyBlciDDuGRlbGFndCAtIGZlaWwgc3TDuHJyZWxzZSBpIGZvcmhvbGQgdGlsIG9wcGx5c25pbmcgZW5lIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxODQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZzdGF0IHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia2xhcnRlIGlra2Uga2rDuHJlIMKrZnN0YXTCuyBww6UgZGVsZmlsYSDCqyUuMjUwc8K7IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gdG9vIHNob3J0IgorbXNnc3RyICJmaWxhIMKrJS4yNTBzwrsgZXIgw7hkZWxhZ3QgLSBmb3Iga29ydCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjAyIGRwa2ctc3BsaXQvaW5mby5jOjI0OQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgb3BlbiBhcmNoaXZlIHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia2xhcnRlIGlra2Ugw6VwbmUgYXJraXZkZWxmaWxhIMKrJS4yNTBzwrsiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjIwNAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIG5vdCBhbiBhcmNoaXZlIHBhcnQiCittc2dzdHIgImZpbGEgwqslLjI1MHPCuyBlciBpa2tlIGVuIGFya2l2ZGVsIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyMDkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIlczpcbiIKKyN8ICIgICAgUGFydCBmb3JtYXQgdmVyc2lvbjogICAgICAgICAgICAlc1xuIgorI3wgIiAgICBQYXJ0IG9mIHBhY2thZ2U6ICAgICAgICAgICAgICAgICVzXG4iCisjfCAiICAgICAgICAuLi4gdmVyc2lvbjogICAgICAgICAgICAgICAgJXNcbiIKKyN8ICIgICAgICAgIC4uLiBNRDUgY2hlY2tzdW06ICAgICAgICAgICAlc1xuIgorI3wgIiAgICAgICAgLi4uIGxlbmd0aDogICAgICAgICAgICAgICAgICVsdSBieXRlc1xuIgorI3wgIiAgICAgICAgLi4uIHNwbGl0IGV2ZXJ5OiAgICAgICAgICAgICVsdSBieXRlc1xuIgorI3wgIiAgICBQYXJ0IG51bWJlcjogICAgICAgICAgICAgICAgICAgICVkLyVkXG4iCisjfCAiICAgIFBhcnQgbGVuZ3RoOiAgICAgICAgICAgICAgICAgICAgJXppIGJ5dGVzXG4iCisjfCAiICAgIFBhcnQgb2Zmc2V0OiAgICAgICAgICAgICAgICAgICAgJWx1IGJ5dGVzXG4iCisjfCAiICAgIFBhcnQgZmlsZSBzaXplICh1c2VkIHBvcnRpb24pOiAgJWx1IGJ5dGVzXG4iCisjfCAiXG4iCittc2dpZCAiIgorIiVzOlxuIgorIiAgICBQYXJ0IGZvcm1hdCB2ZXJzaW9uOiAgICAgICAgICAgICVzXG4iCisiICAgIFBhcnQgb2YgcGFja2FnZTogICAgICAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiB2ZXJzaW9uOiAgICAgICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIGFyY2hpdGVjdHVyZTogICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gTUQ1IGNoZWNrc3VtOiAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiBsZW5ndGg6ICAgICAgICAgICAgICAgICAlamQgYnl0ZXNcbiIKKyIgICAgICAgIC4uLiBzcGxpdCBldmVyeTogICAgICAgICAgICAlamQgYnl0ZXNcbiIKKyIgICAgUGFydCBudW1iZXI6ICAgICAgICAgICAgICAgICAgICAlZC8lZFxuIgorIiAgICBQYXJ0IGxlbmd0aDogICAgICAgICAgICAgICAgICAgICVqZCBieXRlc1xuIgorIiAgICBQYXJ0IG9mZnNldDogICAgICAgICAgICAgICAgICAgICVqZCBieXRlc1xuIgorIiAgICBQYXJ0IGZpbGUgc2l6ZSAodXNlZCBwb3J0aW9uKTogICVqZCBieXRlc1xuIgorIlxuIgorbXNnc3RyICIiCisiJXM6XG4iCisiICAgIERlbGZvcm1hdHZlcnNqb246ICAgICAgICAgICAgICAgJXNcbiIKKyIgICAgRGVsIGkgcGFra2U6ICAgICAgICAgICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIHZlcnNqb246ICAgICAgICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gTUQ1LWtvbnRyb2xsc3VtOiAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiBsZW5nZGU6ICAgICAgICAgICAgICAgICAlbHUgYnl0ZVxuIgorIiAgICAgICAgLi4uIGRlbCBmb3IgaHZlcjogICAgICAgICAgICVsdSBieXRlXG4iCisiICAgIERlbG51bW1lcjogICAgICAgICAgICAgICAgICAgICAgJWQvJWRcbiIKKyIgICAgRGVsLWxlbmdkZTogICAgICAgICAgICAgICAgICAgICAlemkgYnl0ZVxuIgorIiAgICBEZWxmb3Jza3l2aW5nOiAgICAgICAgICAgICAgICAgICVsdSBieXRlXG4iCisiICAgIERlbGZpbHN0w7hycmVsc2UgKGJydWt0IGRlbCk6ICAgJWx1Ynl0ZVxuIgorIlxuIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyMjUKKyMsIGZ1enp5CisjfCBtc2dpZCAiPHVua25vd24+IgorbXNnY3R4dCAiYXJjaGl0ZWN0dXJlIgorbXNnaWQgIjx1bmtub3duPiIKK21zZ3N0ciAiPHVramVudD4iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjI0NCBkcGtnLXNwbGl0L2pvaW4uYzoxMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyByZXF1aXJlcyBvbmUgb3IgbW9yZSBwYXJ0IGZpbGUgYXJndW1lbnRzIgorbXNnc3RyICItLSVzIHRhciBlbiBlbGxlciBmbGVyZSBkZWxmaWxwYXJhbWV0cmUiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjI1NQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlcycgaXMgbm90IGFuIGFyY2hpdmUgcGFydFxuIgorbXNnc3RyICJmaWxhIMKrJXPCuyBlciBpbmdlbiBhcmtpdmRlbFxuIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo0NAorIywgYy1mb3JtYXQKK21zZ2lkICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0OiAiCittc2dpZF9wbHVyYWwgIlB1dHRpbmcgcGFja2FnZSAlcyB0b2dldGhlciBmcm9tICVkIHBhcnRzOiAiCittc2dzdHJbMF0gIlNldHRlciBzYW1tZW4gcGFra2VuICVzIGZyYSAlZCBkZWw6IgorbXNnc3RyWzFdICJTZXR0ZXIgc2FtbWVuIHBha2tlbiAlcyBmcmEgJWQgZGVsZXI6IgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBvdXRwdXQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia2xhcnRlIGlra2Ugw6VwbmUgdXRmaWxhIMKrJS4yNTBzwrsiCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjU3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byAocmUpb3BlbiBpbnB1dCBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgImtsYXJ0ZSBpa2tlIChnamVuKcOlcG5lIGlubmRlbGZpbGEgwqslLjI1MHPCuyIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NTgKKyMsIGZ1enp5CisjfCBtc2dpZCAiU2tpcHBpbmcgZGVzZWxlY3RlZCBwYWNrYWdlICVzLlxuIgorbXNnaWQgInNraXBwaW5nIHNwbGl0IHBhY2thZ2UgaGVhZGVyIgorbXNnc3RyICJIb3BwZXIgb3ZlciBkZW4gZnJhdmFsZ3RlIHBha2tlbiAlcy5cbiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NTkKKyMsIGZ1enp5CisjfCBtc2dpZCAiUHV0dGluZyBwYWNrYWdlICVzIHRvZ2V0aGVyIGZyb20gJWQgcGFydDogIgorI3wgbXNnaWRfcGx1cmFsICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0czogIgorbXNnaWQgInNwbGl0IHBhY2thZ2UgcGFydCIKK21zZ3N0ciAiU2V0dGVyIHNhbW1lbiBwYWtrZW4gJXMgZnJhICVkIGRlbDoiCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjY5IGRwa2ctc3BsaXQvc3BsaXQuYzoyMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZG9uZVxuIgorbXNnc3RyICJmZXJkaWdcbiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZXMgYCUuMjUwcycgYW5kIGAlLjI1MHMnIGFyZSBub3QgcGFydHMgb2YgdGhlIHNhbWUgZmlsZSIKK21zZ3N0ciAiZmlsZW5lIMKrJS4yNTBzwrsgb2cgwqslLjI1MHPCuyBow7hyZXIgaWtrZSB0aWwgZGVuIHNhbW1lIGZpbGEiCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjkwCisjLCBjLWZvcm1hdAorbXNnaWQgInRoZXJlIGFyZSBzZXZlcmFsIHZlcnNpb25zIG9mIHBhcnQgJWQgLSBhdCBsZWFzdCBgJS4yNTBzJyBhbmQgYCUuMjUwcyciCittc2dzdHIgImRldCBmaW5uZXMgZmxlcmUgdmVyc2pvbmVyIGF2IGRlbGVuICVkIC0gaWFsbGZhbGwgwqslLjI1MHPCuyBvZyDCqyUuMjUwc8K7IgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzoxMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFydCAlZCBpcyBtaXNzaW5nIgorbXNnc3RyICJkZWxlbiAlZCBtYW5nbGVyIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo0NworIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIHNwbGl0L2pvaW4gdG9vbDsgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiRGViaWFuIMKrJXPCuyBwYWtrZXZlcmt0w7h5IGZvciDDpSBkZWxlIG9wcC9zbMOlIHNhbW1lbjsgdmVyc2pvbiAlcy5cbiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ29weXJpZ2h0IChDKSAxOTk0LTE5OTYgSWFuIEphY2tzb24uXG4iCittc2dzdHIgIk9wcGhhdnNyZXR0IChDKSAxOTk0LTE5OTYgSWFuIEphY2tzb24uXG4iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjY3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1zfC0tc3BsaXQgPGZpbGU+IFs8cHJlZml4Pl0gICAgIFNwbGl0IGFuIGFyY2hpdmUuXG4iCisiICAtanwtLWpvaW4gPHBhcnQ+IDxwYXJ0PiAuLi4gICAgICBKb2luIHBhcnRzIHRvZ2V0aGVyLlxuIgorIiAgLUl8LS1pbmZvIDxwYXJ0PiAuLi4gICAgICAgICAgICAgRGlzcGxheSBpbmZvIGFib3V0IGEgcGFydC5cbiIKKyIgIC1hfC0tYXV0byAtbyA8Y29tcGxldGU+IDxwYXJ0PiAgIEF1dG8tYWNjdW11bGF0ZSBwYXJ0cy5cbiIKKyIgIC1sfC0tbGlzdHEgICAgICAgICAgICAgICAgICAgICAgIExpc3QgdW5tYXRjaGVkIHBpZWNlcy5cbiIKKyIgIC1kfC0tZGlzY2FyZCBbPGZpbGVuYW1lPiAuLi5dICAgIERpc2NhcmQgdW5tYXRjaGVkIHBpZWNlcy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIktvbW1hbmRvZXI6XG4iCisiICAtc3wtLXNwbGl0IDxmaWw+IFs8cHJlZmlrcz5dICAgICBEZWwgb3BwIGV0IGFya2l2LlxuIgorIiAgLWp8LS1qb2luIDxkZWw+IDxkZWw+IC4uLiAgICAgICAgRsO4eSBzYW1tZW4gZGVsZXIuXG4iCisiICAtSXwtLWluZm8gPGRlbD4gLi4uICAgICAgICAgICAgIFZpcyBpbmZvIG9tIGVuIGRlbC5cbiIKKyIgIC1hfC0tYXV0byAtbyA8YWx0IHNhbW1lbj4gPGRlbD4gICBBdXRvbWF0aXNrIHNhbWxhIG9wcCBkZWxlci5cbiIKKyIgIC1sfC0tbGlzdHEgICAgICAgICAgICAgICAgICAgICAgIExpc3Qgb3BwIGRlbGVyIHNvbSBpa2tlIHBhc3Nlci5cbiIKKyIgIC1kfC0tZGlzY2FyZCBbPGZpbG5hdm4+IC4uLl0gICAgIFZyYWsgZGVsZXIgc29tIGlra2UgcGFzc2VyLlxuIgorIlxuIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo4MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIk9wdGlvbnM6XG4iCisjfCAiICAtLWRlcG90ZGlyIDxkaXJlY3Rvcnk+ICAgICAgICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy8lcy5cbiIKKyN8ICIgIC1TfC0tcGFydHNpemUgPHNpemU+ICAgICAgICAgICAgIEluIEtpQiwgZm9yIC1zIChkZWZhdWx0IGlzIDQ1MCkuXG4iCisjfCAiICAtb3wtLW91dHB1dCA8ZmlsZT4gICAgICAgICAgICAgICBGb3IgLWogKGRlZmF1bHQgaXMgPHBhY2thZ2U+LTx2ZXJzaW9uPi4iCisjfCAiZGViKS5cbiIKKyN8ICIgIC1RfC0tbnBxdWlldCAgICAgICAgICAgICAgICAgICAgIEJlIHF1aWV0IHdoZW4gLWEgaXMgbm90IGEgcGFydC5cbiIKKyN8ICIgIC0tbXNkb3MgICAgICAgICAgICAgICAgICAgICAgICAgIEdlbmVyYXRlIDguMyBmaWxlbmFtZXMuXG4iCisjfCAiXG4iCisjfCAiRXhpdCBzdGF0dXM6IDAgPSBPSzsgIDEgPSAtYSBpcyBub3QgYSBwYXJ0OyAgMiA9IHRyb3VibGUhXG4iCittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWRlcG90ZGlyIDxkaXJlY3Rvcnk+ICAgICAgICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy8lcy5cbiIKKyIgIC1TfC0tcGFydHNpemUgPHNpemU+ICAgICAgICAgICAgIEluIEtpQiwgZm9yIC1zIChkZWZhdWx0IGlzIDQ1MCkuXG4iCisiICAtb3wtLW91dHB1dCA8ZmlsZT4gICAgICAgICAgICAgICBGaWxlbmFtZSwgZm9yIC1qIChkZWZhdWx0IGlzXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYWNrYWdlPl88dmVyc2lvbj5fPGFyY2g+LmRlYikuXG4iCisiICAtUXwtLW5wcXVpZXQgICAgICAgICAgICAgICAgICAgICBCZSBxdWlldCB3aGVuIC1hIGlzIG5vdCBhIHBhcnQuXG4iCisiICAtLW1zZG9zICAgICAgICAgICAgICAgICAgICAgICAgICBHZW5lcmF0ZSA4LjMgZmlsZW5hbWVzLlxuIgorIlxuIgorbXNnc3RyICIiCisiVmFsZzpcbiIKKyIgICAgICAtLWRlcG90ZGlyIDxrYXRhbG9nPiAgICAgIGJydWsgPGthdGFsb2c+IGkgc3RlZGVuIGZvciAlcy8lcy5cbiIKKyIgICAgICAtU3wtLXBhcnRzaXplIDxzdMO4cnJlbHNlPiAgaSBLYiwgZm9yIC1zIChzdGFuZGFyZCBlciA0NTApLlxuIgorIiAgICAgIC1vfC0tb3V0cHV0IDxmaWw+ICAgICAgICAgZm9yIC1qIChzdGFuZGFyZCBlciA8cGFra2U+LTx2ZXJzam9uPi5kZWIpLlxuIgorIiAgICAgIC1RfC0tbnBxdWlldCAgICAgICAgICAgICAgdsOmciBzdGlsbGUgbsOlciAtYSBpa2tlIGVyIGVuIGRlbC5cbiIKKyIgICAgICAtLW1zZG9zICAgICAgICAgICAgICAgICAgIGxhZyA4LjMtZmlsbmF2bi5cbiIKKyJcbiIKKyJBdnNsdXRuaW5nc3RhdHVzOiAwID0gT0s7ICAxID0gLWEgZXIgaWtrZSBlbiBkZWw7ICAyID0gcHJvYmxlbSFcbiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6OTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkV4aXQgc3RhdHVzOlxuIgorIiAgMCA9IG9rXG4iCisiICAxID0gd2l0aCAtLWF1dG8sIGZpbGUgaXMgbm90IGEgcGFydFxuIgorIiAgMiA9IHRyb3VibGVcbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMDMKK21zZ2lkICJUeXBlIGRwa2ctc3BsaXQgLS1oZWxwIGZvciBoZWxwLiIKK21zZ3N0ciAiU2tyaXYgwqtkcGtnLXNwbGl0IC0taGVscMK7IGZvciBoamVscC4iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjExNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBmaWxlIGluICUuMjUwcyIKK21zZ3N0ciAidXZlbnRldCBzbHV0dCBww6UgZmlsIGkgJS4yNTBzIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMjYKK21zZ2lkICJwYXJ0IHNpemUgaXMgZmFyIHRvbyBsYXJnZSBvciBpcyBub3QgcG9zaXRpdmUiCittc2dzdHIgImRlbGVuIGVyIGFsdGZvciBzdG9yIGVsbGVyIHN0w7hycmVsc2VuIGVyIGlra2UgcG9zaXRpdiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6MTMwCisjLCBjLWZvcm1hdAorbXNnaWQgInBhcnQgc2l6ZSBtdXN0IGJlIGF0IGxlYXN0ICVkIEtpQiAodG8gYWxsb3cgZm9yIGhlYWRlcikiCittc2dzdHIgImRlbHN0w7hycmVsc2VuIG3DpSB2w6ZyZSBtaW5zdCAlZCBLaUIgKGZvciBhdCBob2RldCBza2FsIGbDpSBwbGFzcykiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzo5MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBkZXBvdCBkaXJlY3RvcnkgYCUuMjUwcyciCittc2dzdHIgImtsYXJ0ZSBpa2tlIGxlc2UgZGVwb3RrYXRhbG9nZW4gwqslLjI1MHPCuyIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjEzNAorbXNnaWQgIi0tYXV0byByZXF1aXJlcyB0aGUgdXNlIG9mIHRoZSAtLW91dHB1dCBvcHRpb24iCittc2dzdHIgIi0tYXV0byBrcmV2ZXIgYXQgZHUgYnJ1a2VyIGFsdGVybmF0aXZldCAtLW91dHB1dCIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjEzNgorbXNnaWQgIi0tYXV0byByZXF1aXJlcyBleGFjdGx5IG9uZSBwYXJ0IGZpbGUgYXJndW1lbnQiCittc2dzdHIgIi0tYXV0byBrcmV2IG7DuHlha3RpZyDDqW4gZGVsZmlscGFyYW1ldGVyIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTQwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia2xhcnRlIGlra2UgbGVzZSBkZWxmaWxhIMKrJS4yNTBzwrsiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxNDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiRmlsZSBgJS4yNTBzJyBpcyBub3QgcGFydCBvZiBhIG11bHRpcGFydCBhcmNoaXZlLlxuIgorbXNnc3RyICJGaWxhIMKrJS4yNTBzwrsgZXIgaWtrZSBlbiBkZWwgYXYgZXQgb3BwZGVsdCBhcmtpdi5cbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE3OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVvcGVuIHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia2xhcnRlIGlra2Ugw6VwbmUgZGVsZmlsYSDCqyUuMjUwc8K7IHDDpSBueXR0IgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTgyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIG5ldyBkZXBvdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrbGFydGUgaWtrZSDDpXBuZSBkZW4gbnllIGRlcG90ZmlsYSDCqyUuMjUwc8K7IgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTg0Cittc2dpZCAiZXh0cmFjdGluZyBzcGxpdCBwYXJ0IgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbmFtZSBuZXcgZGVwb3QgZmlsZSBgJS4yNTBzJyB0byBgJS4yNTBzJyIKK21zZ3N0ciAiIgorImtsYXJ0ZSBpa2tlIGVuZHJlIG5hdm5ldCBww6UgZGVuIG55ZSBkZXBvdGZpbGEgZnJhIMKrJS4yNTBzwrsgdGlsIMKrJS4yNTBzwrsiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFydCAlZCBvZiBwYWNrYWdlICVzIGZpbGVkIChzdGlsbCB3YW50ICIKK21zZ3N0ciAiRGVsICVkIGF2IHBha2tlbiAlcyBlciBsYWdyZXQgKMO4bnNrZXIgZW5uw6UgIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjAwCittc2dpZCAiIGFuZCAiCittc2dzdHIgIiBvZyAiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSB1c2VkLXVwIGRlcG90IGZpbGUgYCUuMjUwcyciCittc2dzdHIgImtsYXJ0ZSBpa2tlIHNsZXR0ZSBkZW4gb3BwYnJ1a3RlIGRlcG90ZmlsYSDCqyUuMjUwc8K7IgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjM1Cittc2dpZCAiSnVuayBmaWxlcyBsZWZ0IGFyb3VuZCBpbiB0aGUgZGVwb3QgZGlyZWN0b3J5OlxuIgorbXNnc3RyICJTw7hwbGVmaWxlciBzb20gbGlnZ2VyIGlnamVuIGkgZGVwb3RrYXRhbG9nZW46XG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNDAgZHBrZy1zcGxpdC9xdWV1ZS5jOjI2OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBgJS4yNTBzJyIKK21zZ3N0ciAiZmFudCBpa2tlIMKrJS4yNTBzwrsiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNDMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiAlcyAoJWx1IGJ5dGVzKVxuIgorbXNnaWQgIiAlcyAoJWpkIGJ5dGVzKVxuIgorbXNnc3RyICIgJXMgKCVsdSBieXRlKVxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAlcyAobm90IGEgcGxhaW4gZmlsZSlcbiIKK21zZ3N0ciAiICVzIChpa2tlIGVuIHZhbmxpZyBmaWwpXG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNTAKK21zZ2lkICJQYWNrYWdlcyBub3QgeWV0IHJlYXNzZW1ibGVkOlxuIgorbXNnc3RyICJQYWtrZXIgc29tIGlra2UgZXIgc2F0dCBzYW1tZW4gaWdqZW46XG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIFBhY2thZ2UgJXM6IHBhcnQocykgIgorbXNnc3RyICIgUGFra2UgJXM6IGRlbChlcikiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFydCBmaWxlIGAlLjI1MHMnIGlzIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgImRlbGZpbGEgwqslLjI1MHPCuyBlciBpa2tlIGVpIHZhbmxlZyBmaWwiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNzgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIih0b3RhbCAlbHUgYnl0ZXMpXG4iCittc2dpZCAiKHRvdGFsICVqZCBieXRlcylcbiIKK21zZ3N0ciAiKGkgYWx0ICVsdSBieXRlKVxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MzA0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkaXNjYXJkIGAlLjI1MHMnIgorbXNnc3RyICJrbGFydGUgaWtrZSBzbGV0dGUgwqslLjI1MHPCuyIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjMwNQorIywgYy1mb3JtYXQKK21zZ2lkICJEZWxldGVkICVzLlxuIgorbXNnc3RyICJTbGV0dGV0ICVzLlxuIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6NzAgZHBrZy1zcGxpdC9zcGxpdC5jOjc2IGRwa2ctc3BsaXQvc3BsaXQuYzo4MQorIywgZnV6enkKKyN8IG1zZ2lkICJkcGtnLWRlYiBmaWVsZCBleHRyYWN0aW9uIgorbXNnaWQgInBhY2thZ2UgZmllbGQgdmFsdWUgZXh0cmFjdGlvbiIKK21zZ3N0ciAiZHBrZy1kZWIgZmVsdHV0dHJla2tpbmciCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxMzEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gc291cmNlIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImtsYXJ0ZSBpa2tlIMOlcG5lIGtpbGRlZmlsYSDCqyUuMjUwc8K7IgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTMzCittc2dpZCAidW5hYmxlIHRvIGZzdGF0IHNvdXJjZSBmaWxlIgorbXNnc3RyICJrbGFydGUgaWtrZSBrasO4cmUgwqtmc3RhdMK7IHDDpSBraWxkZWZpbGEiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxMzUKKyMsIGMtZm9ybWF0Cittc2dpZCAic291cmNlIGZpbGUgYCUuMjUwcycgbm90IGEgcGxhaW4gZmlsZSIKK21zZ3N0ciAia2lsZGVmaWxhIMKrJS4yNTBzwrsgZXIgaWtrZSBlbiB2YW5saWcgZmlsIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTUzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0OiAiCisjfCBtc2dpZF9wbHVyYWwgIlB1dHRpbmcgcGFja2FnZSAlcyB0b2dldGhlciBmcm9tICVkIHBhcnRzOiAiCittc2dpZCAiU3BsaXR0aW5nIHBhY2thZ2UgJXMgaW50byAlZCBwYXJ0OiAiCittc2dpZF9wbHVyYWwgIlNwbGl0dGluZyBwYWNrYWdlICVzIGludG8gJWQgcGFydHM6ICIKK21zZ3N0clswXSAiU2V0dGVyIHNhbW1lbiBwYWtrZW4gJXMgZnJhICVkIGRlbDoiCittc2dzdHJbMV0gIlNldHRlciBzYW1tZW4gcGFra2VuICVzIGZyYSAlZCBkZWxlcjoiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxOTMKK21zZ2lkICIiCisiSGVhZGVyIGlzIHRvbyBsb25nLCBtYWtpbmcgcGFydCB0b28gbG9uZy4gWW91ciBwYWNrYWdlIG5hbWUgb3IgdmVyc2lvblxuIgorIm51bWJlcnMgbXVzdCBiZSBleHRyYW9yZGluYXJpbHkgbG9uZywgb3Igc29tZXRoaW5nLiBHaXZpbmcgdXAuXG4iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjI0OQorbXNnaWQgIi0tc3BsaXQgbmVlZHMgYSBzb3VyY2UgZmlsZW5hbWUgYXJndW1lbnQiCittc2dzdHIgIi0tc3BsaXQga3JldmVyIGV0IGtpbGRlZmlsbmF2biBzb20gcGFyYW1ldGVyIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MjUyCittc2dpZCAiLS1zcGxpdCB0YWtlcyBhdCBtb3N0IGEgc291cmNlIGZpbGVuYW1lIGFuZCBkZXN0aW5hdGlvbiBwcmVmaXgiCittc2dzdHIgIi0tc3BsaXQgdGFyIGjDuHlzdCBldHQga2lsZGVmaWxuYXZuIG9nIG3DpWxwcmVmaWtzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6ODQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAtMjAwMiBXaWNoZXJ0IEFra2VybWFuLlxuIgorIkNvcHlyaWdodCAoQykgMjAwOS0yMDEwIFJhcGhhZWwgSGVydHpvZy5cbiIKK21zZ3N0ciAiIgorIk9wcGhhdnNyZXR0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorIk9wcGhhdnNyZXR0IChDKSAyMDAwLTIwMDIgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJPcHBoYXZzcmV0dCAoQykgMjAwOS0yMDEwIFJhcGhhZWwgSGVydHpvZy5cbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEwMQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSA8Y29tbWFuZD5cbiIKKyN8ICJcbiIKKyN8ICJDb21tYW5kczpcbiIKKyN8ICIgIC0taW5zdGFsbCA8bGluaz4gPG5hbWU+IDxwYXRoPiA8cHJpb3JpdHk+XG4iCisjfCAiICAgIFstLXNsYXZlIDxsaW5rPiA8bmFtZT4gPHBhdGg+XSAuLi5cbiIKKyN8ICIgICAgICAgICAgICAgICAgICAgICAgICAgICBhZGQgYSBncm91cCBvZiBhbHRlcm5hdGl2ZXMgdG8gdGhlIHN5c3RlbS5cbiIKKyN8ICIgIC0tcmVtb3ZlIDxuYW1lPiA8cGF0aD4gICByZW1vdmUgPHBhdGg+IGZyb20gdGhlIDxuYW1lPiBncm91cCAiCisjfCAiYWx0ZXJuYXRpdmUuXG4iCisjfCAiICAtLXJlbW92ZS1hbGwgPG5hbWU+ICAgICAgcmVtb3ZlIDxuYW1lPiBncm91cCBmcm9tIHRoZSBhbHRlcm5hdGl2ZXMgIgorI3wgInN5c3RlbS5cbiIKKyN8ICIgIC0tYXV0byA8bmFtZT4gICAgICAgICAgICBzd2l0Y2ggdGhlIG1hc3RlciBsaW5rIDxuYW1lPiB0byBhdXRvbWF0aWMgIgorI3wgIm1vZGUuXG4iCisjfCAiICAtLWRpc3BsYXkgPG5hbWU+ICAgICAgICAgZGlzcGxheSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgPG5hbWU+IGdyb3VwLlxuIgorI3wgIiAgLS1xdWVyeSA8bmFtZT4gICAgICAgICAgIG1hY2hpbmUgcGFyc2VhYmxlIHZlcnNpb24gb2YgLS1kaXNwbGF5ICIKKyN8ICI8bmFtZT4uXG4iCisjfCAiICAtLWxpc3QgPG5hbWU+ICAgICAgICAgICAgZGlzcGxheSBhbGwgdGFyZ2V0cyBvZiB0aGUgPG5hbWU+IGdyb3VwLlxuIgorI3wgIiAgLS1jb25maWcgPG5hbWU+ICAgICAgICAgIHNob3cgYWx0ZXJuYXRpdmVzIGZvciB0aGUgPG5hbWU+IGdyb3VwIGFuZCBhc2sgIgorI3wgInRoZVxuIgorI3wgIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzZXIgdG8gc2VsZWN0IHdoaWNoIG9uZSB0byB1c2UuXG4iCisjfCAiICAtLXNldCA8bmFtZT4gPHBhdGg+ICAgICAgc2V0IDxwYXRoPiBhcyBhbHRlcm5hdGl2ZSBmb3IgPG5hbWU+LlxuIgorI3wgIiAgLS1hbGwgICAgICAgICAgICAgICAgICAgIGNhbGwgLS1jb25maWcgb24gYWxsIGFsdGVybmF0aXZlcy5cbiIKKyN8ICJcbiIKKyN8ICI8bGluaz4gaXMgdGhlIHN5bWxpbmsgcG9pbnRpbmcgdG8gJXMvPG5hbWU+LlxuIgorI3wgIiAgKGUuZy4gL3Vzci9iaW4vcGFnZXIpXG4iCisjfCAiPG5hbWU+IGlzIHRoZSBtYXN0ZXIgbmFtZSBmb3IgdGhpcyBsaW5rIGdyb3VwLlxuIgorI3wgIiAgKGUuZy4gcGFnZXIpXG4iCisjfCAiPHBhdGg+IGlzIHRoZSBsb2NhdGlvbiBvZiBvbmUgb2YgdGhlIGFsdGVybmF0aXZlIHRhcmdldCBmaWxlcy5cbiIKKyN8ICIgIChlLmcuIC91c3IvYmluL2xlc3MpXG4iCisjfCAiPHByaW9yaXR5PiBpcyBhbiBpbnRlZ2VyOyBvcHRpb25zIHdpdGggaGlnaGVyIG51bWJlcnMgaGF2ZSBoaWdoZXIgIgorI3wgInByaW9yaXR5IGluXG4iCisjfCAiICBhdXRvbWF0aWMgbW9kZS5cbiIKKyN8ICJcbiIKKyN8ICJPcHRpb25zOlxuIgorI3wgIiAgLS1hbHRkaXIgPGRpcmVjdG9yeT4gICAgIGNoYW5nZSB0aGUgYWx0ZXJuYXRpdmVzIGRpcmVjdG9yeS5cbiIKKyN8ICIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICBjaGFuZ2UgdGhlIGFkbWluaXN0cmF0aXZlIGRpcmVjdG9yeS5cbiIKKyN8ICIgIC0tc2tpcC1hdXRvICAgICAgICAgICAgICBza2lwIHByb21wdCBmb3IgYWx0ZXJuYXRpdmVzIGNvcnJlY3RseSAiCisjfCAiY29uZmlndXJlZFxuIgorI3wgIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGluIGF1dG9tYXRpYyBtb2RlIChyZWxldmFudCBmb3IgLS1jb25maWcgIgorI3wgIm9ubHkpXG4iCisjfCAiICAtLXZlcmJvc2UgICAgICAgICAgICAgICAgdmVyYm9zZSBvcGVyYXRpb24sIG1vcmUgb3V0cHV0LlxuIgorI3wgIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHF1aWV0IG9wZXJhdGlvbiwgbWluaW1hbCBvdXRwdXQuXG4iCisjfCAiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyN8ICIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC0taW5zdGFsbCA8bGluaz4gPG5hbWU+IDxwYXRoPiA8cHJpb3JpdHk+XG4iCisiICAgIFstLXNsYXZlIDxsaW5rPiA8bmFtZT4gPHBhdGg+XSAuLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBhZGQgYSBncm91cCBvZiBhbHRlcm5hdGl2ZXMgdG8gdGhlIHN5c3RlbS5cbiIKKyIgIC0tcmVtb3ZlIDxuYW1lPiA8cGF0aD4gICByZW1vdmUgPHBhdGg+IGZyb20gdGhlIDxuYW1lPiBncm91cCBhbHRlcm5hdGl2ZS5cbiIKKyIgIC0tcmVtb3ZlLWFsbCA8bmFtZT4gICAgICByZW1vdmUgPG5hbWU+IGdyb3VwIGZyb20gdGhlIGFsdGVybmF0aXZlcyAiCisic3lzdGVtLlxuIgorIiAgLS1hdXRvIDxuYW1lPiAgICAgICAgICAgIHN3aXRjaCB0aGUgbWFzdGVyIGxpbmsgPG5hbWU+IHRvIGF1dG9tYXRpYyBtb2RlLlxuIgorIiAgLS1kaXNwbGF5IDxuYW1lPiAgICAgICAgIGRpc3BsYXkgaW5mb3JtYXRpb24gYWJvdXQgdGhlIDxuYW1lPiBncm91cC5cbiIKKyIgIC0tcXVlcnkgPG5hbWU+ICAgICAgICAgICBtYWNoaW5lIHBhcnNlYWJsZSB2ZXJzaW9uIG9mIC0tZGlzcGxheSA8bmFtZT4uXG4iCisiICAtLWxpc3QgPG5hbWU+ICAgICAgICAgICAgZGlzcGxheSBhbGwgdGFyZ2V0cyBvZiB0aGUgPG5hbWU+IGdyb3VwLlxuIgorIiAgLS1nZXQtc2VsZWN0aW9ucyAgICAgICAgIGxpc3QgbWFzdGVyIGFsdGVybmF0aXZlIG5hbWVzIGFuZCB0aGVpciBzdGF0dXMuXG4iCisiICAtLXNldC1zZWxlY3Rpb25zICAgICAgICAgcmVhZCBhbHRlcm5hdGl2ZSBzdGF0dXMgZnJvbSBzdGFuZGFyZCBpbnB1dC5cbiIKKyIgIC0tY29uZmlnIDxuYW1lPiAgICAgICAgICBzaG93IGFsdGVybmF0aXZlcyBmb3IgdGhlIDxuYW1lPiBncm91cCBhbmQgYXNrICIKKyJ0aGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2VyIHRvIHNlbGVjdCB3aGljaCBvbmUgdG8gdXNlLlxuIgorIiAgLS1zZXQgPG5hbWU+IDxwYXRoPiAgICAgIHNldCA8cGF0aD4gYXMgYWx0ZXJuYXRpdmUgZm9yIDxuYW1lPi5cbiIKKyIgIC0tYWxsICAgICAgICAgICAgICAgICAgICBjYWxsIC0tY29uZmlnIG9uIGFsbCBhbHRlcm5hdGl2ZXMuXG4iCisiXG4iCittc2dzdHIgIiIKKyJCcnVrOiAlcyBbPHZhbGc+IC4uLl0gPGtvbW1hbmQ+XG4iCisiXG4iCisiS29tbWFuZGVyOlxuIgorIiAgLS1pbnN0YWxsIDxsZW5rZT4gPG5hdm4+IDxzdGk+IDxwcmlvcml0ZXQ+XG4iCisiICAgIFstLXNsYXZlIDxsZW5rZT4gPG5hdm4+IDxzdGk+XSAuLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWdnIHRpbCBlbiBncnVwcGUgYXYgYWx0ZXJuYXRpdmVyIHRpbCBzeXN0ZW1ldC5cbiIKKyIgIC0tcmVtb3ZlIDxuYXZuPiA8c3RpPiAgICBmamVybiA8c3RpPiBmcmEgZ3J1cHBlYWx0ZXJuYXRpdmV0IDxuYXZuPi5cbiIKKyIgIC0tcmVtb3ZlLWFsbCA8bmF2bj4gICAgICBmamVybiA8bmF2bj4gZ3J1cHBlIGZyYSBhbHRlcm5hdGl2IHN5c3RlbWV0LlxuIgorIiAgLS1hdXRvIDxuYXZuPiAgICAgICAgICAgIGJ5dHQgaG92ZWRsZW5rYSA8bmF2bj4gdGlsIGF1dG9tYXRpc2sgbW9kdXMuXG4iCisiICAtLWRpc3BsYXkgPG5hdm4+ICAgICAgICAgdmlzIGluZm9ybWFzam9uIG9tIGdydXBwYSA8bmF2bj4uXG4iCisiICAtLXF1ZXJ5IDxuYXZuPiAgICAgICAgICAgbWFza2ludG9sa2JhciB2ZXJzam9uIGF2IC0tZGlzcGxheSA8bmF2bj4uXG4iCisiICAtLWxpc3QgPG5hdm4+ICAgICAgICAgICAgdmlzIGFsbGUgbcOlbCBmb3IgZ3J1cHBhIDxuYXZuPi5cbiIKKyIgIC0tY29uZmlnIDxuYXZuPiAgICAgICAgICB2aXMgYWx0ZXJuYXRpdmVyIGZvciBncnVwcGEgPG5hdm4+IG9nIGJlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJ1a2VyZW4gdmVsZ2UgaHZpbGtlbiBzb20gc2thbCBicnVrZXMuXG4iCisiICAtLXNldCA8bmF2bj4gPHN0aT4gICAgICAgc2V0dCA8c3RpPiBzb20gYWx0ZXJuYXRpdiBmb3IgPG5hdm4+LlxuIgorIiAgLS1hbGwgICAgICAgICAgICAgICAgICAgIGthbGwgLS1jb25maWcgcMOlIGFsbGUgYWx0ZXJuYXRpdmVyLlxuIgorIlxuIgorIjxsZW5rZT4gZXIgZGVuIHN5bWJvbHNrZSBsZW5rYSBzb20gcGVrZXIgdGlsICVzLzxuYXZuPi5cbiIKKyIgIChmLmVrcy4gL3Vzci9iaW4vcGFnZXIpXG4iCisiPG5hdm4+IGVyIGhvdmVkbmF2bmV0IGZvciBkZW5uZSBsZW5rZWdydXBwYS5cbiIKKyIgIChmLmVrcy4gcGFnZXIpXG4iCisiPHN0aT4gZXIgcGxhc3NlcmluZ2VuIGF2IGVuIGF2IGRlIGFsdGVybmF0aXZlIG3DpWxmaWxlbmUuXG4iCisiICAoZi5la3MuIC91c3IvYmluL2xlc3MpXG4iCisiPHByaW9yaXRldD4gZXIgZXQgaGVsdGFsbDsgdmFsZyBtZWQgaMO4eWVyZSBudW1tZXIgaGFyIGjDuHllcmUgcHJpb3JpdGV0IGlcbiIKKyIgIGF1dG9tYXRpc2sgbW9kdXMuXG4iCisiXG4iCisiVmFsZzpcbiIKKyIgIC0tYWx0ZGlyIDxtYXBwZT4gICAgICAgZW5kcmUgbWFwcGEgZm9yIGFsdGVybmF0aXZlci5cbiIKKyIgIC0tYWRtaW5kaXIgPG1hcHBlPiAgICAgZW5kcmUgZGVuIGFkbWluaXN0cmF0aXZlIG1hcHBhLlxuIgorIiAgLS1za2lwLWF1dG8gICAgICAgICAgICBob3BwIG92ZXIgc3DDuHJzbcOlbCBvbSBhbHRlcm5hdGl2IHNvbSBlciBrb3JyZWt0ICIKKyJzYXR0IG9wcFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICBpIGF1dG9tYXRzaWsgbW9kdXMgKHJlbGV2YW50IGt1biBmb3IgLS1jb25maWcpXG4iCisiICAtLXZlcmJvc2UgICAgICAgICAgICAgIHZlcmJhbCBvcGVyYXNqb24sIG15ZSB1dHNrcmlmdC5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgc3RpbGxlIG9wZXJhc2pvbiwgbWluaW1hbHQgbWVkIHV0c2tyaWZ0LlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICB2aXMgZGVubmUgaGplbHBtZWxkaW5nZW4uXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgIHZpcyB2ZXJzam9uZW4uXG4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIjxsaW5rPiBpcyB0aGUgc3ltbGluayBwb2ludGluZyB0byAlcy88bmFtZT4uXG4iCisiICAoZS5nLiAvdXNyL2Jpbi9wYWdlcilcbiIKKyI8bmFtZT4gaXMgdGhlIG1hc3RlciBuYW1lIGZvciB0aGlzIGxpbmsgZ3JvdXAuXG4iCisiICAoZS5nLiBwYWdlcilcbiIKKyI8cGF0aD4gaXMgdGhlIGxvY2F0aW9uIG9mIG9uZSBvZiB0aGUgYWx0ZXJuYXRpdmUgdGFyZ2V0IGZpbGVzLlxuIgorIiAgKGUuZy4gL3Vzci9iaW4vbGVzcylcbiIKKyI8cHJpb3JpdHk+IGlzIGFuIGludGVnZXI7IG9wdGlvbnMgd2l0aCBoaWdoZXIgbnVtYmVycyBoYXZlIGhpZ2hlciBwcmlvcml0eSAiCisiaW5cbiIKKyIgIGF1dG9tYXRpYyBtb2RlLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJPcHRpb25zOlxuIgorI3wgIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIHNldCB0aGUgZGlyZWN0b3J5IHdpdGggdGhlIHN0YXRvdmVycmlkZSBmaWxlLlxuIgorI3wgIiAgLS11cGRhdGUgICAgICAgICAgICAgICAgIGltbWVkaWF0ZWx5IHVwZGF0ZSBmaWxlIHBlcm1pc3Npb25zLlxuIgorI3wgIiAgLS1mb3JjZSAgICAgICAgICAgICAgICAgIGZvcmNlIGFuIGFjdGlvbiBldmVuIGlmIGEgc2FuaXR5IGNoZWNrIGZhaWxzLlxuIgorI3wgIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHF1aWV0IG9wZXJhdGlvbiwgbWluaW1hbCBvdXRwdXQuXG4iCisjfCAiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyN8ICIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorI3wgIlxuIgorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hbHRkaXIgPGRpcmVjdG9yeT4gICAgIGNoYW5nZSB0aGUgYWx0ZXJuYXRpdmVzIGRpcmVjdG9yeS5cbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICBjaGFuZ2UgdGhlIGFkbWluaXN0cmF0aXZlIGRpcmVjdG9yeS5cbiIKKyIgIC0tbG9nIDxmaWxlPiAgICAgICAgICAgICBjaGFuZ2UgdGhlIGxvZyBmaWxlLlxuIgorIiAgLS1mb3JjZSAgICAgICAgICAgICAgICAgIGFsbG93IHJlcGxhY2luZyBmaWxlcyB3aXRoIGFsdGVybmF0aXZlIGxpbmtzLlxuIgorIiAgLS1za2lwLWF1dG8gICAgICAgICAgICAgIHNraXAgcHJvbXB0IGZvciBhbHRlcm5hdGl2ZXMgY29ycmVjdGx5ICIKKyJjb25maWd1cmVkXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gYXV0b21hdGljIG1vZGUgKHJlbGV2YW50IGZvciAtLWNvbmZpZyBvbmx5KVxuIgorIiAgLS12ZXJib3NlICAgICAgICAgICAgICAgIHZlcmJvc2Ugb3BlcmF0aW9uLCBtb3JlIG91dHB1dC5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBxdWlldCBvcGVyYXRpb24sIG1pbmltYWwgb3V0cHV0LlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIgorIlZhbGc6XG4iCisiICAtLWFkbWluZGlyIDxtYXBwZT4gICAgICAgc2V0dCBtYXBwYSBtZWQgc3RhdG92ZXJyaWRlLWZpbGVuLlxuIgorIiAgLS11cGRhdGUgICAgICAgICAgICAgICAgIG9wcGRhdGVyIGZpbHJldHRpZ2hldGVyIHVtaWRkZWxiYXJ0LlxuIgorIiAgLS1mb3JjZSAgICAgICAgICAgICAgICAgIHR2aW5nIGVuIGhhbmRsaW5nIHNlbHZvbSBrb250cm9sbHNqZWtrIGZlaWxlci5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBzdGlsbGVrasO4cmluZywgbWluaW1hbCB1dHNrcmlmdC5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICB2aXMgZGVubmUgaGplbHBtZWxkaW5nZW4uXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgdmlzIHZlcnNqb25lbi5cbiIKKyJcbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTYzCittc2dpZCAiZXJyb3IiCittc2dzdHIgImZlaWwiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxOTMKK21zZ2lkICJ3YXJuaW5nIgorbXNnc3RyICJhZHZhcnNlbCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjM1NgorIywgYy1mb3JtYXQKK21zZ2lkICJ0d28gY29tbWFuZHMgc3BlY2lmaWVkOiAtLSVzIGFuZCAtLSVzIgorbXNnc3RyICJ0byBrb21tYW5kb2VyIG9wcGdpdHQ6IC0tJXMgb2cgLS0lcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjM4NworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiY2Fubm90IGFwcGVuZCB0byAlczogJXMiCittc2dpZCAiY2Fubm90IGFwcGVuZCB0byAnJXMnIgorbXNnc3RyICJrbGFydGUgaWtrZSBsZWdnZSB0aWwgaSAlczogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo1NTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byByZW1vdmUgJXM6ICVzIgorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgJyVzJyIKK21zZ3N0ciAia2xhcnRlIGlra2UgZmplcm5lICVzOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgZmlsZSB3aGlsZSB0cnlpbmcgdG8gcmVhZCAlcyIKK21zZ3N0ciAidXZlbnRldCBzbHV0dCBww6UgZmlsIHVuZGVyIGxlc2luZyBhdiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAid2hpbGUgcmVhZGluZyAlczogJXMiCittc2dzdHIgInVuZGVyIGxlc2luZyBhdiAlczogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTE5CisjLCBjLWZvcm1hdAorbXNnaWQgImxpbmUgbm90IHRlcm1pbmF0ZWQgd2hpbGUgdHJ5aW5nIHRvIHJlYWQgJXMiCittc2dzdHIgImxpbmplIGlra2UgYXZzbHV0dGV0IHVuZGVyIGxlc2luZyBhdiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgY29ycnVwdDogJXMiCittc2dzdHIgIiVzIGtvcnJ1cHQ6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE1MAorIywgYy1mb3JtYXQKK21zZ2lkICJuZXdsaW5lcyBwcm9oaWJpdGVkIGluIHVwZGF0ZS1hbHRlcm5hdGl2ZXMgZmlsZXMgKCVzKSIKK21zZ3N0ciAibGluamVza2lmdCBmb3JidWR0IGkgdXBkYXRlLWFsdGVybmF0aXZlcyBmaWxlciAoJXMpIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE2MworbXNnaWQgInNsYXZlIG5hbWUiCittc2dzdHIgInNsYXZlbmF2biIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNzEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImR1cGxpY2F0ZSBzbGF2ZSAlcyIKK21zZ2lkICJkdXBsaWNhdGUgc2xhdmUgbmFtZSAlcyIKK21zZ3N0ciAiZHVwbGlrYXQgc2xhdmUgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTc0Cittc2dpZCAic2xhdmUgbGluayIKK21zZ3N0ciAic2xhdmVsZW5rZSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAic2xhdmUgbGluayBzYW1lIGFzIG1haW4gbGluayAlcyIKK21zZ3N0ciAic2xhdmUtbGVua2Ugc2FtbWUgc29tIGhvdmVkbGVua2UgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTg1IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDEyCisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBzbGF2ZSBsaW5rICVzIgorbXNnc3RyICJkdXBsaWthdCBzbGF2ZWxlbmtlICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIwNAorbXNnaWQgIm1hc3RlciBmaWxlIgorbXNnc3RyICJob3ZlZGZpbCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHBhdGggJXMiCittc2dzdHIgImR1cGxpc2VydCBzdGkgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjI2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJhbHRlcm5hdGl2ZSAlcyAocGFydCBvZiBsaW5rIGdyb3VwICVzKSBkb2Vzbid0IGV4aXN0LiBSZW1vdmluZyBmcm9tIGxpc3Qgb2YgIgorImFsdGVybmF0aXZlcy4iCittc2dzdHIgIiIKKyJhbGVybmF0aXYgJXMgKGRlbCBhdiBsZW5rZWdydXBwYSAlcykgZWtzaXN0ZXJlciBpa2tlLiBGamVybmVzIGZyYSBsaXN0ZW4gIgorIm92ZXIgYWx0ZXJuYXRpdi4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjI5IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjQwCittc2dpZCAicHJpb3JpdHkiCittc2dzdHIgInByaW9yaXRldCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMzIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyNDkKK21zZ2lkICJzbGF2ZSBmaWxlIgorbXNnc3RyICJzbGF2ZWZpbCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyNDQKKyMsIGMtZm9ybWF0Cittc2dpZCAicHJpb3JpdHkgb2YgJXM6ICVzIgorbXNnc3RyICJwcmlvcml0ZXQgZm9yICVzOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyOTcKK21zZ2lkICJzdGF0dXMiCittc2dzdHIgInN0YXR1cyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyOTkKK21zZ2lkICJpbnZhbGlkIHN0YXR1cyIKK21zZ3N0ciAidWd5bGRpZyBzdGF0dXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzA0Cittc2dpZCAibWFzdGVyIGxpbmsiCittc2dzdHIgImhvdmVkbGVua2UiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzQ4CisjLCBjLWZvcm1hdAorbXNnaWQgImRpc2NhcmRpbmcgb2Jzb2xldGUgc2xhdmUgbGluayAlcyAoJXMpLiIKK21zZ3N0ciAia2Fzc2VyZXIgZm9yZWxkZXQgc2xhdmVsZW5rZSAlcyAoJXMpLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MDIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NjkKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjM4Cittc2dpZCAiYXV0byBtb2RlIgorbXNnc3RyICJhdXRvIG1vZHVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU3OAorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MzkKK21zZ2lkICJtYW51YWwgbW9kZSIKK21zZ3N0ciAibWFudWVsbCBtb2R1cyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBsaW5rIGN1cnJlbnRseSBwb2ludHMgdG8gJXMiCittc2dzdHIgIiAgbGVua2UgcGVrZXIgZm9yIMO4eWVibGlra2V0IHRpbCAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MDgKK21zZ2lkICIgIGxpbmsgY3VycmVudGx5IGFic2VudCIKK21zZ3N0ciAiICBsZW5rZSBlciBib3J0ZSBmb3Igw7h5ZWJsaWtrZXQgIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUxMgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyAtIHByaW9yaXR5ICVkIgorbXNnc3RyICIlcyAtIHByaW9yaXRldCAlZCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBzbGF2ZSAlczogJXMiCittc2dzdHIgIiAgc2xhdmUgJXM6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUyMgorIywgYy1mb3JtYXQKK21zZ2lkICJDdXJyZW50ICdiZXN0JyB2ZXJzaW9uIGlzICclcycuIgorbXNnc3RyICJOw6V2w6ZyZW5kZSDCq2Jlc3RlwrsgdmVyc2pvbiBlciDCqyVzwrsuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUyNAorbXNnaWQgIk5vIHZlcnNpb25zIGF2YWlsYWJsZS4iCittc2dzdHIgIkluZ2VuIHZlcnNqb25lciB0aWxnamVuZ2VsaWcuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU1MworIywgYy1mb3JtYXQKK21zZ2lkICJUaGVyZSBpcyAlZCBjaG9pY2UgZm9yIHRoZSBhbHRlcm5hdGl2ZSAlcyAocHJvdmlkaW5nICVzKS4iCittc2dpZF9wbHVyYWwgIlRoZXJlIGFyZSAlZCBjaG9pY2VzIGZvciB0aGUgYWx0ZXJuYXRpdmUgJXMgKHByb3ZpZGluZyAlcykuIgorbXNnc3RyWzBdICJEZXQgZXIgJWQgdmFsZyBmb3IgYWx0ZXJuYXRpdmV0ICVzIChzb20gdGlsYnlyICVzKS4iCittc2dzdHJbMV0gIkRldCBlciAlZCB2YWxnIGZvciBhbHRlcm5hdGl2ZXQgJXMgKHNvbSB0aWxieXIgJXMpLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NjAKK21zZ2lkICJTZWxlY3Rpb24iCittc2dzdHIgIlZhbGciCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYxCittc2dpZCAiUGF0aCIKK21zZ3N0ciAiU3RpIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2MQorbXNnaWQgIlByaW9yaXR5IgorbXNnc3RyICJQcmlvcml0ZXQiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYxCittc2dpZCAiU3RhdHVzIgorbXNnc3RyICJTdGF0dXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTgyCisjLCBjLWZvcm1hdAorbXNnaWQgIlByZXNzIGVudGVyIHRvIGtlZXAgdGhlIGN1cnJlbnQgY2hvaWNlWypdLCBvciB0eXBlIHNlbGVjdGlvbiBudW1iZXI6ICIKK21zZ3N0ciAiIgorIlRyeWtrIEVudGVyIGZvciDDpSBiZWhvbGRlIGRldCBnamVsZGVuZGUgdmFsZ2V0WypdIGVsbGVyIHNrcml2IGV0IHZhbGdudW1tZXI6IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTcyMQorIywgYy1mb3JtYXQKK21zZ2lkICJub3QgcmVwbGFjaW5nICVzIHdpdGggYSBsaW5rLiIKK21zZ3N0ciAiYnl0dGVyIGlra2UgdXQgJXMgbWVkIGVuIGxlbmtlLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3NjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2FuJ3QgaW5zdGFsbCB1bmtub3duIGNob2ljZSAlcyIKK21zZ3N0ciAia2FuIGlra2UgaW5zdGFsbGVyZSB1a2plbnQgdmFsZyAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInNraXAgY3JlYXRpb24gb2YgJXMgYmVjYXVzZSBhc3NvY2lhdGVkIGZpbGUgJXMgKG9mIGxpbmsgZ3JvdXAgJXMpIGRvZXNuJ3QgIgorImV4aXN0LiIKK21zZ3N0ciAiIgorImhvcHAgb3ZlciBvcHByZXR0ZWxzZSBhdiAlcyBmb3JkaSB0aWxow7hyZW5kZSBmaWwgJXMgKGkgbGVua2VncnVwcGEgJXMpIGlra2UgIgorImVrc2lzdGVyZXIuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTc5MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAibm90IHJlcGxhY2luZyAlcyB3aXRoIGEgbGluay4iCittc2dpZCAibm90IHJlbW92aW5nICVzIHNpbmNlIGl0J3Mgbm90IGEgc3ltbGluay4iCittc2dzdHIgImJ5dHRlciBpa2tlIHV0ICVzIG1lZCBlbiBsZW5rZS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDQxIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDQ3CisjLCBjLWZvcm1hdAorbXNnaWQgIkNhbGwgJXMuIgorbXNnc3RyICJLasO4ciAlcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDUxCisjLCBjLWZvcm1hdAorbXNnaWQgIkFsdGVybmF0aXZlICVzIHVuY2hhbmdlZCBiZWNhdXNlIGNob2ljZSAlcyBpcyBub3QgYXZhaWxhYmxlLiIKK21zZ3N0ciAiQWx0ZXJuYXRpdmUgJXMgdWVuZHJldCBmb3JkaSB2YWxnICVzIGlra2UgZXIgdGlsZ2plbmdlbGlnLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2tpcCB1bmtub3duIGFsdGVybmF0aXZlICVzLiIKK21zZ3N0ciAiSG9wcCBvdmVyIHVramVudCBhbHRlcm5hdGl2ICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNzcKKyMsIGMtZm9ybWF0Cittc2dpZCAibGluZSB0b28gbG9uZyBvciBub3QgdGVybWluYXRlZCB3aGlsZSB0cnlpbmcgdG8gcmVhZCAlcyIKK21zZ3N0ciAibGluamUgZm9yIGxhbmcgZWxsZXIgaWtrZSBhdnNsdXR0ZXQgdW5kZXIgbGVzaW5nIGF2ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA5MCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjEwMworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2tpcCBpbnZhbGlkIGxpbmU6ICVzIgorbXNnc3RyICJIb3BwZXQgb3ZlciB1Z3lsZGlnIGxpbmplOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVuYW1pbmcgJXMgbGluayBmcm9tICVzIHRvICVzLiIKK21zZ3N0ciAiZW5kcmVyIG5hdm4gcMOlICVzIGxlbmtlIGZyYSAlcyB0aWwgJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE3MworIywgYy1mb3JtYXQKK21zZ2lkICJyZW5hbWluZyAlcyBzbGF2ZSBsaW5rIGZyb20gJXMgdG8gJXMuIgorbXNnc3RyICJlbmRyZXIgbmF2biBww6UgJXMgc2xhdmVsZW5rZSBmcmEgJXMgdGlsICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgbmFtZSAoJXMpIG11c3Qgbm90IGNvbnRhaW4gJy8nIGFuZCBzcGFjZXMuIgorbXNnc3RyICJhbHRlcm5hdGl2dCBuYXZuICglcykga2FuIGlra2UgaW5uZWhvbGRlIMKrL8K7IG9nIG1lbGxvbXJvbS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTkzCisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIGxpbmsgaXMgbm90IGFic29sdXRlIGFzIGl0IHNob3VsZCBiZTogJXMiCittc2dzdHIgImFsdGVybmF0aXYgbGVua2UgZXIgaWtrZSBhYnNvbHV0dCBzbGlrIHNvbSBkZW4gYsO4ciB2w6ZyZTogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTk3CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIHBhdGggaXMgbm90IGFic29sdXRlIGFzIGl0IHNob3VsZCBiZTogJXMiCittc2dzdHIgImFsdGVybmF0aXYgc3RpIGVyIGlra2UgYWJzb2x1dHQgc2xpayBzb20gZGVuIGLDuHIgdsOmcmU6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjIyNAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgbWFzdGVyOiAlcyIKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBtYXN0ZXI6IGl0IGlzIGEgc2xhdmUgb2YgJXMiCittc2dzdHIgImFsdGVybmF0aXYgJXMga2FuIGlra2UgdsOmcmUgaG92ZWQ6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjIzMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI2NworIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBsaW5rICVzIGlzIGFscmVhZHkgbWFuYWdlZCBieSAlcy4iCittc2dzdHIgImFsdGVybmF0aXYgbGVua2UgJXMgZXIgYWxsZXJlZGUga29udHJvbGxlcnQgYXYgJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI0MQorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBwYXRoICVzIGRvZXNuJ3QgZXhpc3QuIgorbXNnc3RyICJhbHRlcm5hdGl2IHN0aSAlcyBla3Npc3RlcmVyIGlra2UuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI1NAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgc2xhdmUgb2YgJXM6ICVzIgorbXNnaWQgImFsdGVybmF0aXZlICVzIGNhbid0IGJlIHNsYXZlIG9mICVzOiBpdCBpcyBhIG1hc3RlciBhbHRlcm5hdGl2ZS4iCittc2dzdHIgImFsdGVybmF0aXYgJXMga2FuIGlra2UgdsOmcmUgc2xhdmUgYXYgJXM6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI1OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgbWFzdGVyOiAlcyIKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBzbGF2ZSBvZiAlczogaXQgaXMgYSBzbGF2ZSBvZiAlcyIKK21zZ3N0ciAiYWx0ZXJuYXRpdiAlcyBrYW4gaWtrZSB2w6ZyZSBob3ZlZDogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjc4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJhbHRlcm5hdGl2ZSBsaW5rICVzIGlzIGFscmVhZHkgbWFuYWdlZCBieSAlcy4iCittc2dpZCAiYWx0ZXJuYXRpdmUgbGluayAlcyBpcyBhbHJlYWR5IG1hbmFnZWQgYnkgJXMgKHNsYXZlIG9mICVzKS4iCittc2dzdHIgImFsdGVybmF0aXYgbGVua2UgJXMgZXIgYWxsZXJlZGUga29udHJvbGxlcnQgYXYgJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjMyNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGFyZ3VtZW50IGAlcyciCittc2dzdHIgInVramVudCBwYXJhbWV0ZXIgwqslc8K7IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM0MworbXNnaWQgIi0taW5zdGFsbCBuZWVkcyA8bGluaz4gPG5hbWU+IDxwYXRoPiA8cHJpb3JpdHk+IgorbXNnc3RyICItLWluc3RhbGwgdHJlbmdlciA8bGVua2U+IDxuYXZuPiA8c3RpPiA8cHJpb3JpdGV0PiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNDYgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzOTcKK21zZ2lkICI8bGluaz4gYW5kIDxwYXRoPiBjYW4ndCBiZSB0aGUgc2FtZSIKK21zZ3N0ciAiPGxlbmtlPiBvZyA8c3RpPiBrYW4gaWtrZSB2w6ZyZSBsaWtlIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM0OQorbXNnaWQgInByaW9yaXR5IG11c3QgYmUgYW4gaW50ZWdlciIKK21zZ3N0ciAicHJpb3JpdGV0IG3DpSB2w6ZyZSBldCBoZWx0YWxsIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM2MgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIDxuYW1lPiA8cGF0aD4iCittc2dzdHIgIi0tJXMga3JldmVyIDxuYXZuPiA8c3RpPiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyA8bmFtZT4iCittc2dzdHIgIi0tJXMga3JldmVyIDxuYXZuPiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzODgKK21zZ2lkICItLXNsYXZlIG9ubHkgYWxsb3dlZCB3aXRoIC0taW5zdGFsbCIKK21zZ3N0ciAiLS1zbGF2ZSBiYXJlIHRpbGxhdHQgbWVkIC0taW5zdGFsbCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzOTAKK21zZ2lkICItLXNsYXZlIG5lZWRzIDxsaW5rPiA8bmFtZT4gPHBhdGg+IgorbXNnc3RyICItLXNsYXZlIHRyZW5nZXIgPGxlbmtlPiA8bmF2bj4gPHN0aT4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzk5CisjLCBjLWZvcm1hdAorbXNnaWQgIm5hbWUgJXMgaXMgYm90aCBwcmltYXJ5IGFuZCBzbGF2ZSIKK21zZ3N0ciAibmF2biAlcyBlciBiw6VkZSBwcmltw6ZyIG9nIHNsYXZlIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQwMgorIywgYy1mb3JtYXQKK21zZ2lkICJsaW5rICVzIGlzIGJvdGggcHJpbWFyeSBhbmQgc2xhdmUiCittc2dzdHIgImxlbmtlICVzIGVyIGLDpWRlIHByaW3DpnIgb2cgc2xhdmUiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDIyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSA8ZmlsZT4gYXJndW1lbnQiCittc2dzdHIgIi0tJXMga3JldmVyIGVuIDxmaWw+LXBhcmFtZXRlciIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gYCVzJyIKK21zZ3N0ciAidWtqZW50IHZhbGcgwqslc8K7IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQ1MworbXNnaWQgIiIKKyJuZWVkIC0tZGlzcGxheSwgLS1xdWVyeSwgLS1saXN0LCAtLWdldC1zZWxlY3Rpb25zLCAtLWNvbmZpZywgLS1zZXQsIC0tc2V0LSIKKyJzZWxlY3Rpb25zLCAtLWluc3RhbGwsIC0tcmVtb3ZlLCAtLWFsbCwgLS1yZW1vdmUtYWxsIG9yIC0tYXV0byIKK21zZ3N0ciAiIgorInRyZW5nZXIgLS1kaXNwbGF5LCAtLXF1ZXJ5LCAtLWxpc3QsIC0tZ2V0LXNlbGVjdGlvbnMsIC0tY29uZmlnLCAtLXNldCwgLS1zZXQtIgorInNlbGVjdGlvbnMsIC0taW5zdGFsbCwgLS1yZW1vdmUsIC0tYWxsLCAtLXJlbW92ZS1hbGwgZWxsZXIgLS1hdXRvIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQ5MAorbXNnaWQgIjxzdGFuZGFyZCBpbnB1dD4iCittc2dzdHIgIjxzdGFuZGFyZCBpbm5kYXRhPiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MDAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MDMKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gYWx0ZXJuYXRpdmVzIGZvciAlcy4iCittc2dzdHIgImluZ2VuIGFsdGVybmF0aXYgZm9yICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiVzIGlzIGRhbmdsaW5nLCBpdCB3aWxsIGJlIHVwZGF0ZWQgd2l0aCBiZXN0IGNob2ljZS4iCittc2dpZCAiJXMvJXMgaXMgZGFuZ2xpbmcsIGl0IHdpbGwgYmUgdXBkYXRlZCB3aXRoIGJlc3QgY2hvaWNlLiIKK21zZ3N0ciAiJXMgaGVuZ2VyLCBkZW4gYmxpciBvcHBkYXRlcnQgbWVkIGRldCBiZXN0ZSB2YWxnZXQuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUzNAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiVzIGhhcyBiZWVuIGNoYW5nZWQgKG1hbnVhbGx5IG9yIGJ5IGEgc2NyaXB0KS4gU3dpdGNoaW5nIHRvIG1hbnVhbCAiCisjfCAidXBkYXRlcyBvbmx5LiIKK21zZ2lkICIiCisiJXMvJXMgaGFzIGJlZW4gY2hhbmdlZCAobWFudWFsbHkgb3IgYnkgYSBzY3JpcHQpLiBTd2l0Y2hpbmcgdG8gbWFudWFsICIKKyJ1cGRhdGVzIG9ubHkuIgorbXNnc3RyICIiCisiJXMgaGFyIGJsaXR0IGVuZHJldCAobWFudWVsdCBlbGxlciBhdiBldCBza3JpcHQpLiBCeXR0ZXIgb3ZlciB0aWwga3VuICIKKyJtYW51ZWxsZSBvcHBkYXRlcmluZ2VyLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NDIKKyMsIGMtZm9ybWF0Cittc2dpZCAic2V0dGluZyB1cCBhdXRvbWF0aWMgc2VsZWN0aW9uIG9mICVzLiIKK21zZ3N0ciAic2V0dGVyIG9wcCBhdXRvbWF0aXNrIHZhbGcgYXYgJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU1MQorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBmb3IgJXMgbm90IHJlZ2lzdGVyZWQsIG5vdCBzZXR0aW5nLiIKK21zZ3N0ciAiYWx0ZXJuYXRpdiAlcyBmb3IgJXMgZXIgaWtrZSByZWdpc3RyZXJ0LCBzZXR0ZXMgaWtrZS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTU3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTYzCisjLCBjLWZvcm1hdAorbXNnaWQgIlRoZXJlIGlzIG5vIHByb2dyYW0gd2hpY2ggcHJvdmlkZXMgJXMuIgorbXNnc3RyICJEZXQgZXIgaW5nZW4gcHJvZ3JhbSBzb20gdGlsYnlyICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NjUgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NzUKK21zZ2lkICJOb3RoaW5nIHRvIGNvbmZpZ3VyZS4iCittc2dzdHIgIkluZ2VudGluZyDDpSBzZXR0ZSBvcHAuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU3MworIywgYy1mb3JtYXQKK21zZ2lkICJUaGVyZSBpcyBvbmx5IG9uZSBhbHRlcm5hdGl2ZSBpbiBsaW5rIGdyb3VwICVzOiAlcyIKK21zZ3N0ciAiRGV0IGVyIGJhcmUgZXQgYWx0ZXJuYXRpdiBpIGxlbmtlZ3J1cHBhICVzOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1ODQKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgZm9yICVzIG5vdCByZWdpc3RlcmVkLCBub3QgcmVtb3ZpbmcuIgorbXNnc3RyICJhbHRlcm5hdGl2ICVzIGZvciAlcyBlciBpa2tlIHJlZ2lzdHJlcnQsIGZqZXJuZXMgaWtrZS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTkyCisjLCBjLWZvcm1hdAorbXNnaWQgInJlbW92aW5nIG1hbnVhbGx5IHNlbGVjdGVkIGFsdGVybmF0aXZlIC0gc3dpdGNoaW5nICVzIHRvIGF1dG8gbW9kZSIKK21zZ3N0ciAiZmplcm5lciBtYW51ZWx0IHZhbGd0ZSBhbHRlcm5hdGl2IC0gYnl0dGVyICVzIHRpbCBhdXRvbWF0aXNrIG1vZHVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYxNworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYXV0b21hdGljIHVwZGF0ZXMgb2YgJXMgYXJlIGRpc2FibGVkLCBsZWF2aW5nIGl0IGFsb25lLiIKK21zZ2lkICJhdXRvbWF0aWMgdXBkYXRlcyBvZiAlcy8lcyBhcmUgZGlzYWJsZWQsIGxlYXZpbmcgaXQgYWxvbmUuIgorbXNnc3RyICJhdXRvbWF0aXNrZSBvcHBkYXRlcmluZ2VyIGF2ICVzIGVyIHNsw6V0dCBhdiwgbGFyIGRlbiB2w6ZyZSBpIGZyZWQuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYxOQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidG8gcmV0dXJuIHRvIGF1dG9tYXRpYyB1cGRhdGVzIHVzZSBgdXBkYXRlLWFsdGVybmF0aXZlcyAtLWF1dG8gJXMnLiIKK21zZ2lkICJ0byByZXR1cm4gdG8gYXV0b21hdGljIHVwZGF0ZXMgdXNlICclcyAtLWF1dG8gJXMnLiIKK21zZ3N0ciAiIgorImZvciDDpSBnw6UgdGlsYmFrZSB0aWwgYXV0b21hdGlza2Ugb3BwZGF0ZXJpbmdlciBicnVrIMKrdXBkYXRlLWFsdGVybmF0aXZlcyAtLSIKKyJhdXRvICVzwrsuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYzNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1c2luZyAlcyB0byBwcm92aWRlICVzICglcykgaW4gJXMuIgorbXNnc3RyICJicnVrZXIgJXMgZm9yIMOlIHRpbGJ5ICVzICglcykgaW4gJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjY0NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZm9yY2luZyByZWluc3RhbGxhdGlvbiBvZiBhbHRlcm5hdGl2ZSAlcyBiZWNhdXNlIGxpbmsgZ3JvdXAgJXMgaXMgYnJva2VuLiIKK21zZ3N0ciAiIgorInR2aW5nZXIgcmVpbnN0YWxsYXNqb24gYXYgYWx0ZXJuYXRpdiAlcyBmb3JkaSBsZW5rZWdydXBwYSAlcyBlciDDuGRlbGFndC4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjUxCisjLCBjLWZvcm1hdAorbXNnaWQgImN1cnJlbnQgYWx0ZXJuYXRpdmUgJXMgaXMgdW5rbm93biwgc3dpdGNoaW5nIHRvICVzIGZvciBsaW5rIGdyb3VwICVzLiIKK21zZ3N0ciAiZ2plbGRlbmRlIGFsdGVybmF0aXYgJXMgZXIgdWtqZW50LCBieXR0ZXIgdGlsICVzIGZvciBsZW5rZWdydXBwYSAlcy4iCisKKyN+IG1zZ2lkICJpdCBpcyBhIG1hc3RlciBhbHRlcm5hdGl2ZS4iCisjfiBtc2dzdHIgImRldCBlciBldCBob3ZlZGFsdGVybmF0aXYuIgorCisjfiBtc2dpZCAiaXQgaXMgYSBzbGF2ZSBvZiAlcyIKKyN+IG1zZ3N0ciAiZGV0IGVyIGVuIHNsYXZlIGF2ICVzIgorCisjfiBtc2dpZCAiY2Fubm90IHN0YXQgJXM6ICVzIgorI34gbXNnc3RyICJmYW50IGlra2UgJXM6ICVzIgorCisjfiBtc2dpZCAicmVhZGxpbmsoJXMpIGZhaWxlZDogJXMiCisjfiBtc2dzdHIgInJlYWRsaW5rKCVzKSBmZWlsZXQ6ICVzIgorCisjfiBtc2dpZCAic2NhbiBvZiAlcyBmYWlsZWQ6ICVzIgorI34gbXNnc3RyICJrbGFydGUgaWtrZSBza2FubmUgJXM6ICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWN1dGUgJXM6ICVzIgorI34gbXNnc3RyICJrbGFydGUgaWtrZSBrasO4cmUgJXM6ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIG1ha2UgJXMgYSBzeW1saW5rIHRvICVzOiAlcyIKKyN+IG1zZ3N0ciAia2xhcnRlIGlra2UgZ2rDuHJlICVzIHRpbCBlbiBzeW1ib2xzayBsZW5rZSB0aWwgJXM6ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgJXMgYXMgJXM6ICVzIgorI34gbXNnc3RyICJrbGFydGUgaWtrZSBpbnN0YWxsZXJlICVzIHNvbSAlczogJXMiCisKKyN+IG1zZ2lkICJ3aGlsZSB3cml0aW5nICVzOiAlcyIKKyN+IG1zZ3N0ciAiZmVpbCB2ZWQgc2tyaXZpbmcgYXYgJXM6ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHJlYWQgJXM6ICVzIgorI34gbXNnc3RyICJrbGFydGUgaWtrZSBsZXNlICVzOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byBjbG9zZSAlczogJXMiCisjfiBtc2dzdHIgImtsYXJ0ZSBpa2tlIGx1a2tlICVzOiAlcyIKKworI34gbXNnaWQgImNhbm5vdCB3cml0ZSAlczogJXMiCisjfiBtc2dzdHIgImtsYXJ0ZSBpa2tlIHNrcml2ZSAlczogJXMiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgInVuYWJsZSB0byByZW5hbWUgJXMgdG8gJXM6ICVzIgorI34gbXNnaWQgInVuYWJsZSB0byByZW5hbWUgZmlsZSAnJXMnIHRvICclcyciCisjfiBtc2dzdHIgImtsYXJ0ZSBpa2tlIGVuZHJlIG5hdm4gcMOlICVzIHRpbCAlczogJXMiCisKKyN+IG1zZ2lkICJtYWxsb2MgZmFpbGVkICglbGQgYnl0ZXMpIgorI34gbXNnc3RyICJtaW5uZXRpbGRlbGluZyBtaXNseWt0ZXMgKCVsZCBieXRlKSIKKworI34gbXNnaWQgInJlYWxsb2MgZmFpbGVkICglbGQgYnl0ZXMpIgorI34gbXNnc3RyICJueXRpbGRlbGluZyBtaXNseWt0ZXMgKCVsZCBieXRlKSIKKworI34gbXNnaWQgInVuYWJsZSB0byB1bmJ1ZmZlciBgJS4yNTVzJyIKKyN+IG1zZ3N0ciAia2xhcnRlIGlra2UgbHVra2UgbWVsbG9tbGFnZXIgZm9yIMKrJS4yNTVzwrsiCisKKyN+IG1zZ2lkICJwYXJ0IGZpbGUgYCUuMjUwcycgaGFzIHRyYWlsaW5nIGdhcmJhZ2UiCisjfiBtc2dzdHIgImRlbGZpbGEgwqslLjI1MHPCuyBzbHV0dGVyIG1lZCBiYXJlIHPDuHBwZWwiCisKKyN+IG1zZ2lkICJzaXplICU3ZCBvY2N1cnMgJTVkIHRpbWVzXG4iCisjfiBtc2dzdHIgInN0w7hycmVsc2UgJTdkIGZvcmVrb21tZXIgJTVkIGdhbmdlclxuIgorCisjfiBtc2dpZCAib3V0IG9mIG1lbW9yeSBwdXNoaW5nIGVycm9yIGhhbmRsZXI6ICIKKyN+IG1zZ3N0ciAiaWtrZSBub2sgbWlubmUgdW5kZXIgZmVpbGjDpW5kdGVyaW5nOiAiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gdW5sb2NrIGRwa2cgc3RhdHVzIGRhdGFiYXNlIgorI34gbXNnc3RyICJrbGFydGUgaWtrZSBsw6VzZSBvcHAgZHBrZy1zdGF0dXNkYXRhYmFzZW4iCisKKyN+IG1zZ2lkICJjb3B5IGluZm8gZmlsZSBgJS4yNTVzJyIKKyN+IG1zZ3N0ciAia29waWVyIGluZm9ybWFzam9uc2ZpbGEgwqslLjI1NXPCuyIKKworI34gbXNnaWQgInBhcnNlIGVycm9yIgorI34gbXNnc3RyICJ0b2xraW5nc2ZlaWwiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gd3JpdGUgcGFyc2luZyB3YXJuaW5nIgorI34gbXNnc3RyICJrbGFydGUgaWtrZSBza3JpdmUgdG9sa2luZ3NhZHZhcnNlbCIKKworI34gbXNnaWQgInVuYWJsZSB0byBsb2NrIHRyaWdnZXJzIGFyZWEiCisjfiBtc2dzdHIgImtsYXJ0ZSBpa2tlIGzDpXNlIHV0bMO4c2Vyb21yw6VkZXIiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gcnVuICVzICglLjI1MHMpIgorI34gbXNnc3RyICJrbGFydGUgaWtrZSBrasO4cmUgJXMgKCUuMjUwcykiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBzaGVsbCAoJS4yNTBzKSIKKyN+IG1zZ3N0ciAia2xhcnRlIGlra2Uga2rDuHJlIHNrYWxsICglLjI1MHMpIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGNoZWNrIGZvciBleGlzdGVuY2Ugb2YgYCUuMjUwcyciCisjfiBtc2dzdHIgImtsYXJ0ZSBpa2tlIHNqZWtrZSBvbSDCqyUuMjUwc8K7IGZpbm5lcyIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIHJtIGZvciBjbGVhbnVwIgorI34gbXNnc3RyICJrbGFydGUgaWtrZSBrasO4cmUgwqtybcK7IGZvciBvcHByeWRkaW5nIgorCisjfiBtc2dpZCAiIgorI34gIiVzIGRlYnVnZ2luZyBvcHRpb24sIC0tZGVidWc9PG9jdGFsPiBvciAtRDxvY3RhbD46XG4iCisjfiAiXG4iCisjfiAiIG51bWJlciAgcmVmLiBpbiBzb3VyY2UgICBkZXNjcmlwdGlvblxuIgorI34gIiAgICAgIDEgICBnZW5lcmFsICAgICAgICAgICBHZW5lcmFsbHkgaGVscGZ1bCBwcm9ncmVzcyBpbmZvcm1hdGlvblxuIgorI34gIiAgICAgIDIgICBzY3JpcHRzICAgICAgICAgICBJbnZvY2F0aW9uIGFuZCBzdGF0dXMgb2YgbWFpbnRhaW5lciBzY3JpcHRzXG4iCisjfiAiICAgICAxMCAgIGVhY2hmaWxlICAgICAgICAgIE91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZFxuIgorI34gIiAgICAxMDAgICBlYWNoZmlsZWRldGFpbCAgICBMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZFxuIgorI34gIiAgICAgMjAgICBjb25mZiAgICAgICAgICAgICBPdXRwdXQgZm9yIGVhY2ggY29uZmlndXJhdGlvbiBmaWxlXG4iCisjfiAiICAgIDIwMCAgIGNvbmZmZGV0YWlsICAgICAgIExvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZVxuIgorI34gIiAgICAgNDAgICBkZXBjb24gICAgICAgICAgICBEZXBlbmRlbmNpZXMgYW5kIGNvbmZsaWN0c1xuIgorI34gIiAgICA0MDAgICBkZXBjb25kZXRhaWwgICAgICBMb3RzIG9mIGRlcGVuZGVuY2llcy9jb25mbGljdHMgb3V0cHV0XG4iCisjfiAiICAxMDAwMCAgIHRyaWdnZXJzICAgICAgICAgIFRyaWdnZXIgYWN0aXZhdGlvbiBhbmQgcHJvY2Vzc2luZ1xuIgorI34gIiAgMjAwMDAgICB0cmlnZ2Vyc2RldGFpbCAgICBMb3RzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnNcbiIKKyN+ICIgIDQwMDAwICAgdHJpZ2dlcnNzdHVwaWQgICAgU2lsbHkgYW1vdW50cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzXG4iCisjfiAiICAgMTAwMCAgIHZlcnl2ZXJib3NlICAgICAgIExvdHMgb2YgZHJpdmVsIGFib3V0IGVnIHRoZSBkcGtnL2luZm8gIgorI34gImRpcmVjdG9yeVxuIgorI34gIiAgIDIwMDAgICBzdHVwaWRseXZlcmJvc2UgICBJbnNhbmUgYW1vdW50cyBvZiBkcml2ZWxcbiIKKyN+ICJcbiIKKyN+ICJEZWJ1Z2dpbmcgb3B0aW9ucyBhcmUgYmUgbWl4ZWQgdXNpbmcgYml0d2lzZS1vci5cbiIKKyN+ICJOb3RlIHRoYXQgdGhlIG1lYW5pbmdzIGFuZCB2YWx1ZXMgYXJlIHN1YmplY3QgdG8gY2hhbmdlLlxuIgorI34gbXNnc3RyICIiCisjfiAiJXMgYXZsdXNpbmdzdmFsZywgLS1kZWJ1Zz08b2t0YWw+IGVsbGVyIC1EPG9rdGFsPjpcbiIKKyN+ICJcbiIKKyN+ICIgVmVyZGkgIFJlZi4gaSBraWxkZXRla3N0ICBCZXNrcml2ZWxzZVxuIgorI34gIiAgICAgMSAgZ2VuZXJhbCAgICAgICAgICAgR2VuZXJlbGwgZnJhbWdhbmdzaW5mb3JtYXNqb25cbiIKKyN+ICIgICAgIDIgIHNjcmlwdHMgICAgICAgICAgIFV0ZsO4cmluZyBvZyBzdGF0dXMgZm9yIHZlZGxpa2Vob2xkc3NrcmlwdFxuIgorI34gIiAgICAxMCAgZWFjaGZpbGUgICAgICAgICAgTWVsZGluZyBmb3IgaHZlciBmaWwgc29tIGJsaXIgYmVoYW5kbGV0XG4iCisjfiAiICAgMTAwICBlYWNoZmlsZWRldGFpbCAgICBNeWUgaW5mb3JtYXNqb24gZm9yIGh2ZXIgZmlsIHNvbSBibGlyICIKKyN+ICJiZWhhbmRsZXRcbiIKKyN+ICIgICAgMjAgIGNvbmZmICAgICAgICAgICAgIE1lbGRpbmcgZm9yIGh2ZXIgb3Bwc2V0dHNmaWxcbiIKKyN+ICIgICAyMDAgIGNvbmZmaWxlZGV0YWlsICAgIE15ZSBpbmZvcm1hc2pvbiBmb3IgaHZlciBvcHBzZXR0c2ZpbFxuIgorI34gIiAgICA0MCAgZGVwY29uICAgICAgICAgICAgUGFra2VrcmF2IG9nIGtvbmZsaWt0ZXJcbiIKKyN+ICIgICA0MDAgIGRlcGNvbmRldGFpbCAgICAgIE15ZSBpbmZvcm1hc2pvbiBvbSBwYWtrZWtyYXYgb2cga29uZmxpa3RlclxuIgorI34gIiAxMDAwMCAgdHJpZ2dlcnMgICAgICAgICAgVXRsw7hzZXJha3RpdmVyaW5nIG9nIC1iZWhhbmRsaW5nXG4iCisjfiAiIDIwMDAwICB0cmlnZ2Vyc2RldGFpbCAgICBNeWUgaW5mb3JtYXNqb24gb20gdXRsw7hzZXJlXG4iCisjfiAiIDQwMDAwICB0cmlnZ2Vyc3N0dXBpZCAgICBWZWxkaWcgbXllIGluZm9ybWFzam9uIG9tIHV0bMO4c2VyZVxuIgorI34gIiAgMTAwMCAgdmVyeXZlcmJvc2UgICAgICAgVmVsZGlnIG15ZSBpbmZvcm1hc2pvbiBvbSBmLmVrcy4ga2F0YWxvZ2VuIGRwa2cvIgorI34gImluZm9cbiIKKyN+ICIgIDIwMDAgIHN0dXBpZGx5dmVyYm9zZSAgIFVmYXR0ZWxpZyBteWUgaW5mb3JtYXNqb25cbiIKKyN+ICJcbiIKKyN+ICJBdmx1c2luZ3N2YWxnZW5lIGthbiBrb21iaW5lcmVzIG1lZCBsb2dpc2sgZWxsZXIuXG4iCisjfiAiTGVnZyBtZXJrZSB0aWwgYXQgYmV0eWRuaW5nZXIgb2cgdmVyZGllciBrYW4gYmxpIGVuZHJldC5cbiIKKworI34gbXNnaWQgIiIKKyN+ICIlcyBmb3JjaW5nIG9wdGlvbnMgLSBjb250cm9sIGJlaGF2aW91ciB3aGVuIHByb2JsZW1zIGZvdW5kOlxuIgorI34gIiAgd2FybiBidXQgY29udGludWU6ICAtLWZvcmNlLTx0aGluZz4sPHRoaW5nPiwuLi5cbiIKKyN+ICIgIHN0b3Agd2l0aCBlcnJvcjogICAgLS1yZWZ1c2UtPHRoaW5nPiw8dGhpbmc+LC4uLiB8IC0tbm8tZm9yY2UtIgorI34gIjx0aGluZz4sLi4uXG4iCisjfiAiIEZvcmNpbmcgdGhpbmdzOlxuIgorI34gIiAgYWxsIFshXSAgICAgICAgICAgICAgICBTZXQgYWxsIGZvcmNlIG9wdGlvbnNcbiIKKyN+ICIgIGRvd25ncmFkZSBbKl0gICAgICAgICAgUmVwbGFjZSBhIHBhY2thZ2Ugd2l0aCBhIGxvd2VyIHZlcnNpb25cbiIKKyN+ICIgIGNvbmZpZ3VyZS1hbnkgICAgICAgICAgQ29uZmlndXJlIGFueSBwYWNrYWdlIHdoaWNoIG1heSBoZWxwIHRoaXMgb25lXG4iCisjfiAiICBob2xkICAgICAgICAgICAgICAgICAgIFByb2Nlc3MgaW5jaWRlbnRhbCBwYWNrYWdlcyBldmVuIHdoZW4gb24gaG9sZFxuIgorI34gIiAgYmFkLXBhdGggICAgICAgICAgICAgICBQQVRIIGlzIG1pc3NpbmcgaW1wb3J0YW50IHByb2dyYW1zLCBwcm9ibGVtcyAiCisjfiAibGlrZWx5XG4iCisjfiAiICBub3Qtcm9vdCAgICAgICAgICAgICAgIFRyeSB0byAoZGUpaW5zdGFsbCB0aGluZ3MgZXZlbiB3aGVuIG5vdCByb290XG4iCisjfiAiICBvdmVyd3JpdGUgICAgICAgICAgICAgIE92ZXJ3cml0ZSBhIGZpbGUgZnJvbSBvbmUgcGFja2FnZSB3aXRoIGFub3RoZXJcbiIKKyN+ICIgIG92ZXJ3cml0ZS1kaXZlcnRlZCAgICAgT3ZlcndyaXRlIGEgZGl2ZXJ0ZWQgZmlsZSB3aXRoIGFuIHVuZGl2ZXJ0ZWQgIgorI34gInZlcnNpb25cbiIKKyN+ICIgIGJhZC12ZXJpZnkgICAgICAgICAgICAgSW5zdGFsbCBhIHBhY2thZ2UgZXZlbiBpZiBpdCBmYWlscyBhdXRoZW50aWNpdHkgIgorI34gImNoZWNrXG4iCisjfiAiICBkZXBlbmRzLXZlcnNpb24gWyFdICAgIFR1cm4gZGVwZW5kZW5jeSB2ZXJzaW9uIHByb2JsZW1zIGludG8gd2FybmluZ3NcbiIKKyN+ICIgIGRlcGVuZHMgWyFdICAgICAgICAgICAgVHVybiBhbGwgZGVwZW5kZW5jeSBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzXG4iCisjfiAiICBjb25mbmV3IFshXSAgICAgICAgICAgIEFsd2F5cyB1c2UgdGhlIG5ldyBjb25maWcgZmlsZXMsIGRvbid0IHByb21wdFxuIgorI34gIiAgY29uZm9sZCBbIV0gICAgICAgICAgICBBbHdheXMgdXNlIHRoZSBvbGQgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHRcbiIKKyN+ICIgIGNvbmZkZWYgWyFdICAgICAgICAgICAgVXNlIHRoZSBkZWZhdWx0IG9wdGlvbiBmb3IgbmV3IGNvbmZpZyBmaWxlcyBpZiAiCisjfiAib25lXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIGlzIGF2YWlsYWJsZSwgZG9uJ3QgcHJvbXB0LiBJZiBubyBkZWZhdWx0IGNhbiBiZSAiCisjfiAiZm91bmQsXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIHlvdSB3aWxsIGJlIHByb21wdGVkIHVubGVzcyBvbmUgb2YgdGhlIGNvbmZvbGQgIgorI34gIm9yXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmZuZXcgb3B0aW9ucyBpcyBhbHNvIGdpdmVuXG4iCisjfiAiICBjb25mbWlzcyBbIV0gICAgICAgICAgIEFsd2F5cyBpbnN0YWxsIG1pc3NpbmcgY29uZmlnIGZpbGVzXG4iCisjfiAiICBjb25mYXNrIFshXSAgICAgICAgICAgIE9mZmVyIHRvIHJlcGxhY2UgY29uZmlnIGZpbGVzIHdpdGggbm8gbmV3ICIKKyN+ICJ2ZXJzaW9uc1xuIgorI34gIiAgYnJlYWtzIFshXSAgICAgICAgICAgICBJbnN0YWxsIGV2ZW4gaWYgaXQgd291bGQgYnJlYWsgYW5vdGhlciBwYWNrYWdlXG4iCisjfiAiICBjb25mbGljdHMgWyFdICAgICAgICAgIEFsbG93IGluc3RhbGxhdGlvbiBvZiBjb25mbGljdGluZyBwYWNrYWdlc1xuIgorI34gIiAgYXJjaGl0ZWN0dXJlIFshXSAgICAgICBQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyBhcmNoaXRlY3R1cmVcbiIKKyN+ICIgIG92ZXJ3cml0ZS1kaXIgWyFdICAgICAgT3ZlcndyaXRlIG9uZSBwYWNrYWdlJ3MgZGlyZWN0b3J5IHdpdGggYW5vdGhlcidzICIKKyN+ICJmaWxlXG4iCisjfiAiICB1bnNhZmUtaW8gWyFdICAgICAgICAgIERvIG5vdCBwZXJmb3JtIHNhZmUgSS9PIG9wZXJhdGlvbnMgd2hlbiAiCisjfiAidW5wYWNraW5nXG4iCisjfiAiICByZW1vdmUtcmVpbnN0cmVxIFshXSAgIFJlbW92ZSBwYWNrYWdlcyB3aGljaCByZXF1aXJlIGluc3RhbGxhdGlvblxuIgorI34gIiAgcmVtb3ZlLWVzc2VudGlhbCBbIV0gICBSZW1vdmUgYW4gZXNzZW50aWFsIHBhY2thZ2VcbiIKKyN+ICJcbiIKKyN+ICJXQVJOSU5HIC0gdXNlIG9mIG9wdGlvbnMgbWFya2VkIFshXSBjYW4gc2VyaW91c2x5IGRhbWFnZSB5b3VyICIKKyN+ICJpbnN0YWxsYXRpb24uXG4iCisjfiAiRm9yY2luZyBvcHRpb25zIG1hcmtlZCBbKl0gYXJlIGVuYWJsZWQgYnkgZGVmYXVsdC5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIiVzIHZhbGcgZm9yIHR2YW5nIC0gc3R5cmVyIGjDpW5kdGVyaW5nZW4gdmVkIHByb2JsZW1lcjpcbiIKKyN+ICIgIGFkdmFyLCBtZW4gZm9ydHNldHQ6IC0tZm9yY2UtPHRpbmc+LDx0aW5nPiwuLi5cbiIKKyN+ICIgIHN0b3BwIG1lZCBmZWlsOiAgICAgLS1yZWZ1c2UtPHRpbmc+LDx0aW5nPiwuLi4gfCAtLW5vLWZvcmNlLTx0aW5nPiwuLi5cbiIKKyN+ICIgVHZpbmcgZ2plbm5vbTpcbiIKKyN+ICIgIGFsIGxbIV0gICAgICAgICAgICAgICAgU2V0dCBhbGxlIHZhbGcgZm9yIHR2YW5nXG4iCisjfiAiICBkb3duZ3JhZGUgWypdICAgICAgICAgIEJ5dHQgdXQgZW4gcGFra2UgbWVkIGVuIHRpZGxpZ2VyZSB2ZXJzam9uXG4iCisjfiAiICBjb25maWd1cmUtYW55ICAgICAgICAgIFNldHQgb3BwIGFsbGUgcGFra2VyIHNvbSBrYW4gaGplbHBlIGRlbm5lXG4iCisjfiAiICBob2xkICAgICAgICAgICAgICAgICAgIEjDpW5kdGVyIHBha2tlciBzZWx2IG9tIGRlIGVyIGhvbGR0IHRpbGJha2VcbiIKKyN+ICIgIGJhZC1wYXRoICAgICAgICAgICAgICAgU3RpZW4gKFBBVEgpIG1hbmdsZXIgdmlrdGlnZSBwcm9ncmFtbWVyLCBmb3J2ZW50ICIKKyN+ICJwcm9ibGVtZXJcbiIKKyN+ICIgIG5vdC1yb290ICAgICAgICAgICAgICAgUHLDpXYgw6UgKGF2KWluc3RhbGxlcmUgdGluZyB1dGVuIMOlIHbDpnJlIHJvb3RcbiIKKyN+ICIgIG92ZXJ3cml0ZSAgICAgICAgICAgICAgU2tyaXYgb3ZlciBlbiBmaWwgZnJhIGVuIHBha2tlIG1lZCBlbiBhbm5lblxuIgorI34gIiAgb3ZlcndyaXRlLWRpdmVydGVkICAgICBTa3JpdiBvdmVyIGVuIG9tZGlyaWdlcnQgZmlsIG1lZCBlbiBzb20gaWtrZSBlciAiCisjfiAib21kaXJpZ2VydFxuIgorI34gIiAgYmFkLXZlcmlmeSAgICAgICAgICAgICBJbnN0YWxsZXIgcGFra2UsIHNlbHYgb20gZGVuIGlra2Uga2FuICIKKyN+ICJnb2RramVubmVzXG4iCisjfiAiICBkZXBlbmRzLXZlcnNpb24gWyFdICAgIEdqw7hyIGFsbGUgdmVyc2pvbnNrcmF2IHRpbCBhZHZhcnNsZXJcbiIKKyN+ICIgIGRlcGVuZHMgWyFdICAgICAgICAgICAgR2rDuHIgYWxsZSBwYWtrZWtyYXYgdGlsIGFkdmFyc2xlclxuIgorI34gIiAgY29uZm5ldyBbIV0gICAgICAgICAgICBCcnVrIGFsbHRpZCBueWUgb3Bwc2V0dHNmaWxlciB1dGVuIMOlIHNww7hycmVcbiIKKyN+ICIgIGNvbmZvbGQgWyFdICAgICAgICAgICAgQnJ1ayBhbGx0aWQgZ2FtbGUgb3Bwc2V0dHNmaWxlciB1dGVuIMOlIHNww7hycmVcbiIKKyN+ICIgIGNvbmZkZWYgWyFdICAgICAgICAgICAgQnJ1ayBzdGFuZGFyZGlubnN0aWxsaW5nIGZvciBueWUgb3Bwc2V0dHNmaWxlclxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICB1dGVuIMOlIHNww7hycmUuIERlcnNvbSBkZXQgaWtrZSBmaW5uZXMgZW5cbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgc3RhbmRhcmRpbm5zdGlsbGluZywgYmxpciBkdSBzcHVydCBtZWQgbWluZHJlICIKKyN+ICJkdVxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICBpIHRpbGxlZ2cgaGFyIHZhbGd0IMKrY29uZm9sZMK7IGVsbGVyIMKrY29uZm5ld8K7LlxuIgorI34gIiAgY29uZm1pc3MgWyFdICAgICAgICAgICBJbnN0YWxsZXIgYWxsdGlkIG9wcHNldHRzZmlsZXIgc29tIG1hbmdsZXJcbiIKKyN+ICIgIGNvbmZhc2sgWyFdICAgICAgICAgICAgVGlsYnkgw6UgYnl0dGUgdXQgb3Bwc2V0dHNmaWxlciBtZWQgaW5nZW4gbnllICIKKyN+ICJ2ZXJzam9uZXIuXG4iCisjfiAiICBicmVha3MgWyFdICAgICAgICAgICAgIEluc3RhbGxlciBzZWx2IG9tIGRldCB2aWwgw7hkZWxlZ2dlIGVuIGFubmVuICIKKyN+ICJwYWtrZVxuIgorI34gIiAgY29uZmxpY3RzIFshXSAgICAgICAgICBUaWxsYXQgaW5zdGFsbGFzam9uIGF2IHBha2tlciBzb20gZXIgaSBrb25mbGlrdFxuIgorI34gIiAgYXJjaGl0ZWN0dXJlIFshXSAgICAgICBIw6VuZHRlciBvZ3PDpSBwYWtrZXIgbWVkIGZlaWwgYXJraXRla3R1clxuIgorI34gIiAgb3ZlcndyaXRlLWRpciBbIV0gICAgICBTa3JpdiBvdmVyIGthdGFsb2dlciBmcmEgZW4gcGFra2UgbWVkIGZpbGVyIGZyYSAiCisjfiAiZW4gYW5uZW5cbiIKKyN+ICIgIHVuc2FmZS1pbyBbIV0gICAgICAgICAgSWtrZSB1dGbDuHIgdHJ5Z2dlIEkvTy1vcGVyYXNqb25lciB1bmRlciAiCisjfiAidXRwYWtraW5nXG4iCisjfiAiICByZW1vdmUtcmVpbnN0cmVxIFshXSAgIEZqZXJuIHBha2tlciBzb20ga3JldmVyIHJlLWluc3RhbGxhc2pvblxuIgorI34gIiAgcmVtb3ZlLWVzc2VudGlhbCBbIV0gICBGamVybiBlbiBuw7hkdmVuZGlnIHBha2tlXG4iCisjfiAiXG4iCisjfiAiQURWQVJTRUwgLSBGdW5rc2pvbmVyIG1lcmtldCBtZWQgWyFdIGthbiDDuGRlbGVnZ2UgaW5zdGFsbGFzam9uZW4gIgorI34gImFsdm9ybGlnLlxuIgorI34gIk9wc2pvbmVyIHNvbSBlciBtZXJrZXQgbWVkIFsqXSBlciBzbMOldHQgcMOlIHNvbSBzdGFuZGFyZC5cbiIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIGRwa2ctc3BsaXQgdG8gc2VlIGlmIGl0J3MgcGFydCBvZiBhIG11bHRpcGFydGVyIgorI34gbXNnc3RyICIiCisjfiAia2xhcnRlIGlra2Uga2rDuHJlIMKrZHBrZy1zcGxpdMK7IGZvciDDpSBzZSBvbSBwYWtrZW4gZXIgZW4gZGVsIGF2IGVuICIKKyN+ICJmbGVyZGVsdCBwYWtrZSIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjbCBkZWJzaWctdmVyaWZ5IgorI34gbXNnc3RyICJrbGFydGUgaWtrZSBrasO4cmUgZGVic2lnLXZlcmlmeSIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIGRwa2ctZGViIHRvIGV4dHJhY3QgY29udHJvbCBpbmZvcm1hdGlvbiIKKyN+IG1zZ3N0ciAia2xhcnRlIGlra2Uga2rDuHJlIMKrZHBrZy1kZWLCuyBmb3Igw6UgaGVudGUgdXQga29udHJvbGxpbmZvcm1hc2pvbiIKKworI34gbXNnaWQgInVuYWJsZSB0byBleGVjIGRwa2ctZGViIHRvIGdldCBmaWxlc3lzdGVtIGFyY2hpdmUiCisjfiBtc2dzdHIgImtsYXJ0ZSBpa2tlIGtqw7hyZSDCq2Rwa2ctZGViwrsgZm9yIMOlIGhlbnRlIGZpbHN5c3RlbWFya2l2IgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSBkaXNhcHBlYXJpbmcgY29udHJvbCBpbmZvIGZpbGUgYCUuMjUwcyciCisjfiBtc2dzdHIgIiIKKyN+ICJrbGFydGUgaWtrZSBzbGV0dGUgZGVuIGZvcnN2aW5uZW5kZSBrb250cm9sbGluZm9ybWFzam9uc2ZpbGEgwqslLjI1MHPCuyIKKworI34gbXNnaWQgImRwa2c6ICVzIG5vdCBmb3VuZC5cbiIKKyN+IG1zZ3N0ciAiZHBrZzogZmFudCBpa2tlICVzLlxuIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIC4uLi9ERUJJQU4iCisjfiBtc2dzdHIgImtsYXJ0ZSBpa2tlIHNraWZ0ZSBrYXRhbG9nIHRpbCAuLi4vREVCSUFOIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgdGFyIC1jZiIKKyN+IG1zZ3N0ciAia2xhcnRlIGlra2Uga2rDuHJlIMKrdGFyIC1jZsK7IgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIG1ha2UgdG1wZmlsZSAoY29udHJvbCkiCisjfiBtc2dzdHIgImtsYXJ0ZSBpa2tlIG9wcHJldHRlIG1pZGxlcnRpZGlnIGZpbCAoa29udHJvbGwpIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHVubGluayB0bXBmaWxlIChjb250cm9sKSwgJXMiCisjfiBtc2dzdHIgImtsYXJ0ZSBpa2tlIGZqZXJuZSBsZW5rZSB0aWwgbWlkbGVydGlkaWcgZmlsIChrb250cm9sbCksICVzIgorCisjfiBtc2dpZCAiY29udHJvbCIKKyN+IG1zZ3N0ciAia29udHJvbGwiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gcmV3aW5kIHRtcGZpbGUgKGNvbnRyb2wpIgorI34gbXNnc3RyICJrbGFydGUgaWtrZSBob3BwZSB0aWxiYWtlIGkgbWlkbGVydGlkaWcgZmlsIChrb250cm9sbCkiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZnN0YXQgdG1wZmlsZSAoY29udHJvbCkiCisjfiBtc2dzdHIgImtsYXJ0ZSBpa2tlIGtqw7hyZSDCq2ZzdGF0wrsgcMOlIG1pZGxlcnRpZGlnIGZpbCAoa29udHJvbGwpIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgZmluZCIKKyN+IG1zZ3N0ciAia2xhcnRlIGlra2Uga2rDuHJlIMKrZmluZMK7IgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgc2ggLWMgbXYgZm9vLyogJmMiCisjfiBtc2dzdHIgImtsYXJ0ZSBpa2tlIGtqw7hyZSDCq3NoIC1jIG12IGZvby8qICZjwrsiCisKKyN+IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSAlLjI1MHMgbGVuZ3RoIGNvbnRhaW5zIG51bGxzIgorI34gbXNnc3RyICJmaWxhIMKrJS4yNTBzwrsgZXIgw7hkZWxhZ3QgLSBsZW5nZGVuIHDDpSAlLjI1MHMgaW5uZWhvbGRlciBudWxsYXIiCisKKyN+IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBuZWdhdGl2ZSBtZW1iZXIgbGVuZ3RoICV6aSIKKyN+IG1zZ3N0ciAiZmlsYSDCqyUuMjUwc8K7IGVyIMO4ZGVsYWd0IC0gbmVnYXRpdiBsZW5nZGUgcMOlIG1lZGxlbSAlemkiCisKKyN+IG1zZ2lkICJmYWlsZWQgZ2V0dGluZyB0aGUgY3VycmVudCBmaWxlIHBvc2l0aW9uIgorI34gbXNnc3RyICJrbGFydGUgaWtrZSBmaW5uZSBkZW4gbsOldsOmcmVuZGUgZmlscG9zaXNqb25lbiIKKworI34gbXNnaWQgImZhaWxlZCBzZXR0aW5nIHRoZSBjdXJyZW50IGZpbGUgcG9zaXRpb24iCisjfiBtc2dzdHIgImtsYXJ0ZSBpa2tlIHNldHRlIGRlbiBuw6V2w6ZyZW5kZSBmaWxwb3Npc2pvbmVuIgorCisjfiBtc2dpZCAidmVyc2lvbiBudW1iZXIiCisjfiBtc2dzdHIgInZlcnNqb25zbnVtbWVyIgorCisjfiBtc2dpZCAibWVtYmVyIGxlbmd0aCIKKyN+IG1zZ3N0ciAibWVkbGVtc2xlbmdkZSIKKworI34gbXNnaWQgImhlYWRlciBpbmZvIG1lbWJlciIKKyN+IG1zZ3N0ciAiaG9kZWluZm9ybWFzam9uc21lZGxlbSIKKworI34gbXNnaWQgInNraXBwZWQgY29udHJvbCBhcmVhIGZyb20gJXMiCisjfiBtc2dzdHIgImhvcHBldCBvdmVyIGtvbnRyb2xsb21yw6VkZSBmcmEgJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHRlbXBvcmFyeSBkaXJlY3RvcnkiCisjfiBtc2dzdHIgImtsYXJ0ZSBpa2tlIG9wcHJldHRlIG1pZGxlcnRpZGlnIG1hcHBlIgorCisjfiBtc2dpZCAiaW5mb19zcGV3IgorI34gbXNnc3RyICJpbmZvX3NwZXciCisKKyN+IG1zZ2lkICJpbmZvIGxlbmd0aCIKKyN+IG1zZ3N0ciAiaW5mby1sZW5nZGUiCisKKyN+IG1zZ2lkICJ0b3RhbCBsZW5ndGgiCisjfiBtc2dzdHIgInRvdGFsIGxlbmdkZSIKKworI34gbXNnaWQgImRhdGEgbGVuZ3RoIgorI34gbXNnc3RyICJkYXRhbGVuZ2RlIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgZHBrZy1kZWIgdG8gZXh0cmFjdCBmaWVsZCB2YWx1ZSIKKyN+IG1zZ3N0ciAia2xhcnRlIGlra2Uga2rDuHJlIMKrZHBrZy1kZWLCuyBmb3Igw6UgdHJla2tlIHV0IGZlbHR2ZXJkaSIKKworI34gbXNnaWQgInVuYWJsZSB0byBzdGF0ICVzOiAlcyIKKyN+IG1zZ3N0ciAia2xhcnRlIGlra2UgZmlubmUgJXM6ICVzIgorCisjfiBtc2dpZCAic2xhdmUgbmFtZSAlcyBkdXBsaWNhdGVkIgorI34gbXNnc3RyICJzbGF2ZS1uYXZuICVzIGR1cGxpc2VydCIKKworI34gbXNnaWQgInNsYXZlIGxpbmsgJXMgZHVwbGljYXRlZCIKKyN+IG1zZ3N0ciAic2xhdmUtbGVua2UgJXMgZHVwbGlzZXJ0IgorCisjfiBtc2dpZCAiJWQgcmVxdWVzdGVkIGNvbnRyb2wgY29tcG9uZW50cyBhcmUgbWlzc2luZyIKKyN+IG1zZ3N0ciAiJWQgZXR0ZXJzcHVydGUga29udHJvbGxrb21wb25lbnRlciBtYW5nbGVyIgorCisjfiBtc2dpZCAiY2F0IChkYXRhKSIKKyN+IG1zZ3N0ciAiY2F0IChkYXRhKSIKKworI34gbXNnaWQgImZhaWxlZCB0byBvcGVuIHBpcGUgZGVzY3JpcHRvciBgMScgaW4gcGFzdGUiCisjfiBtc2dzdHIgImtsYXJ0ZSBpa2tlIMOlcG5lIHLDuHJkZXNrcmlwdG9yIMKrMcK7IGkgaW5uc2V0dGluZyIKKworI34gbXNnaWQgImZhaWxlZCB0byB3cml0ZSB0byBnemlwIC1kYyIKKyN+IG1zZ3N0ciAia2xhcnRlIGlra2Ugc2tyaXZlIHRpbCDCq2d6aXAgLWRjwrsiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gY2xvc2UgZ3ppcCAtZGMiCisjfiBtc2dzdHIgImtsYXJ0ZSBpa2tlIGx1a2tlIMKrZ3ppcCAtZGPCuyIKKworI34gbXNnaWQgImZhaWxlZCB0byBzeXNjYWxsIGxzZWVrIHRvIGZpbGVzIGFyY2hpdmUgcG9ydGlvbiIKKyN+IG1zZ3N0ciAia2xhcnRlIGlra2UgdXRmw7hyZSBzeXN0ZW1rYWxsZXQgwqtsc2Vla8K7IHDDpSBhcmtpdmZpbGRlbGVuIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGV4ZWMgbWtzcGxpdCIKKyN+IG1zZ3N0ciAia2xhcnRlIGlra2Uga2rDuHJlIMKrbWtzcGxpdMK7IgorCisjfiBtc2dpZCAiIgorI34gIlxuIgorI34gIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLiIKKyN+IG1zZ3N0ciAiIgorI34gIlxuIgorI34gIk9wcGhhdnNyZXR0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorI34gIk9wcGhhdnNyZXR0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi4iCisKKyN+IG1zZ2lkICJ0d28gY29tbWFuZHMgc3BlY2lmaWVkOiAlcyBhbmQgLS0lcyIKKyN+IG1zZ3N0ciAidG8ga29tbWFuZG9lciBvcHBnaXR0OiAlcyBvZyAtLSVzIgorCisjfiBtc2dpZCAiLS0lcyBuZWVkcyBhIGRpdmVydC10byBhcmd1bWVudCIKKyN+IG1zZ3N0ciAiLS0lcyBrcmV2ZXIgZW4gb21kaXJpZ2VyaW5nc3BhcmFtZXRlciIKKworI34gbXNnaWQgIi0tJXMgbmVlZHMgYSA8cGFja2FnZT4gYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tJXMga3JldmVyIGVuIDxwYWtrZT4tcGFyYW1ldGVyIgorCisjfiBtc2dpZCAiY2Fubm90IG9wZW4gZGl2ZXJzaW9uczogJXMiCisjfiBtc2dzdHIgImtsYXJ0ZSBpa2tlIMOlcG5lIG9tZGlyaWdlcmluZ2VyOiAlcyIKKworI34gbXNnaWQgIm1pc3NpbmcgYWx0bmFtZSIKKyN+IG1zZ3N0ciAibWFuZ2xlciBhbHRlcm5hdGl2dCBuYXZuIgorCisjfiBtc2dpZCAibWlzc2luZyBwYWNrYWdlIgorI34gbXNnc3RyICJtYW5nbGVyIHBha2tlIgorCisjfiBtc2dpZCAiaW50ZXJuYWwgZXJyb3IgLSBiYWQgbW9kZSBgJXMnIgorI34gbXNnc3RyICJpbnRlcm4gZmVpbCAtIGZlaWwgbW9kdXMgwqslc8K7IgorCisjfiBtc2dpZCAiY2Fubm90IHN0YXQgb2xkIG5hbWUgYCVzJzogJXMiCisjfiBtc2dzdHIgImZhbnQgaWtrZSBnYW1tZWx0IG5hdm4gwqslc8K7OiAlcyIKKworI34gbXNnaWQgInJlbmFtZTogcmVuYW1lIGAlcycgdG8gYCVzJzogJXMiCisjfiBtc2dzdHIgInJlbmFtZTogZW5kcmUgbmF2bmV0IHDDpSDCqyVzwrsgdGlsIMKrJXPCuzogJXMiCisKKyN+IG1zZ2lkICJjcmVhdGUgZGl2ZXJzaW9ucy1uZXc6ICVzIgorI34gbXNnc3RyICJvcHByZXR0IG9tZGlyaWdlcmluZ2VyLW55OiAlcyIKKworI34gbXNnaWQgIndyaXRlIGRpdmVyc2lvbnMtbmV3OiAlcyIKKyN+IG1zZ3N0ciAic2tyaXYgb21kaXJpZ2VyaW5nZXItbnk6ICVzIgorCisjfiBtc2dpZCAiY2xvc2UgZGl2ZXJzaW9ucy1uZXc6ICVzIgorI34gbXNnc3RyICJsdWtrIG9tZGlyaWdlcmluZ2VyLW55OiAlcyIKKworI34gbXNnaWQgImNyZWF0ZSBuZXcgZGl2ZXJzaW9ucy1vbGQ6ICVzIgorI34gbXNnc3RyICJvcHByZXR0IG55IG9tZGlyaWdlcmluZ2VyLWdhbW1lbDogJXMiCisKKyN+IG1zZ2lkICJpbnN0YWxsIG5ldyBkaXZlcnNpb25zOiAlcyIKKyN+IG1zZ3N0ciAiaW5zdGFsbGVyIG55ZSBvbWRpcmlnZXJpbmdlcjogJXMiCisKKyN+IG1zZ2lkICJpbnRlcm5hbCBlcnJvcjogJXMgY29ycnVwdDogJXMiCisjfiBtc2dzdHIgImludGVybiBmZWlsOiAlcyBrb3JydXB0OiAlcyIKKworI34gbXNnaWQgImRwa2ctZGViIC0gZXJyb3I6ICVzIChgJXMnKSBkb2Vzbid0IGNvbnRhaW4gYW55IGRpZ2l0c1xuIgorI34gbXNnc3RyICJkcGtnLWRlYiAtIGZlaWw6ICVzICjCqyVzwrspIGlubmVob2xkZXIgaW5nZW4gc2lmcmVcbiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJEZWJpYW4gcmV2aXNpb24iCisjfiBtc2dzdHIgIkRlYmlhbiAlcyB2ZXJzam9uICVzLlxuIgorCisjfiBtc2dpZCAiJWQgZXJyb3JzIGluIGNvbnRyb2wgZmlsZSIKKyN+IG1zZ3N0ciAiJWQgZmVpbCBpIGtvbnRyb2xsZmlsYSIKKworIywgZnV6enkKKyN+IG1zZ2lkICJjYW4ndCByZWFkZGlyICVzOiAlcyIKKyN+IG1zZ3N0ciAia2xhcnRlIGlra2Ugw6VwbmUgbG9nZyDCqyVzwrsiCisKKyN+IG1zZ2lkICJmYWlsZWQgaW4gYnVmZmVyX3dyaXRlKGZkKSAoJWksIHJldD0lbGkpOiAlcyIKKyN+IG1zZ3N0ciAiZmVpbCBpIGJ1ZmZlcl93cml0ZShmZCkgKCVpLCByZXQ9JWxpKTogJXMiCisKKyN+IG1zZ2lkICJlb2YgaW4gYnVmZmVyX3dyaXRlKHN0cmVhbSk6ICVzIgorI34gbXNnc3RyICJzbHV0dCBww6UgZmlsIGkgYnVmZmVyX3dyaXRlKHN0cmVhbSk6ICVzIgorCisjfiBtc2dpZCAiZXJyb3IgaW4gYnVmZmVyX3dyaXRlKHN0cmVhbSk6ICVzIgorI34gbXNnc3RyICJmZWlsIGkgYnVmZmVyX3dyaXRlKHN0cmVhbSk6ICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIGluIGJ1ZmZlcl9yZWFkKGZkKTogJXMiCisjfiBtc2dzdHIgIm1pc2x5a3RlcyBpIGJ1ZmZlcl9yZWFkKGZkKTogJXMiCisKKyN+IG1zZ2lkICJlcnJvciBpbiBidWZmZXJfcmVhZChzdHJlYW0pOiAlcyIKKyN+IG1zZ3N0ciAiZmVpbCBpIGJ1ZmZlcl9yZWFkKHN0cmVhbSk6ICVzIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiVzIHJldHVybmVkIGVycm9yIGV4aXQgc3RhdHVzICVkIgorI34gbXNnc3RyICJ1bmRlcnByb3Nlc3NlbiAlcyByZXR1cm5lcnRlIGZlaWxzdGF0dXMgJWQiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiJXMga2lsbGVkIGJ5IHNpZ25hbCAoJXMpJXMiCisjfiBtc2dzdHIgInVuZGVycHJvc2Vzc2VuICVzIGRyZXB0IG1lZCBzaWduYWwgKCVzKSVzIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgdmVyc2lvbiAyIG9yXG4iCisjfiAibGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJcbiIKKyN+ICJEZXR0ZSBlciBmcmkgcHJvZ3JhbXZhcmUuIER1IGZpbm5lciBrb3BpZXJpbmdzdmlsa8OlcmVuZSBpXG4iCisjfiAiR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgdmVyc2pvbiAyIGVsbGVyIG55ZXJlLiBEZXQgZmlubmVzIElOR0VOICIKKyN+ICJnYXJhbnRpLlxuIgorCisjfiBtc2dpZCAiIgorI34gIlxuIgorI34gIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSB2ZXJzaW9uIDIgb3JcbiIKKyN+ICJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIlxuIgorI34gIkRldHRlIGVyIGZyaSBwcm9ncmFtdmFyZS4gRHUgZmlubmVyIGtvcGllcmluZ3N2aWxrw6VyZW5lIGlcbiIKKyN+ICJHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSB2ZXJzam9uIDIgZWxsZXIgbnllcmUuIERldCBmaW5uZXMgSU5HRU4gIgorI34gImdhcmFudGkuXG4iCisKKyN+IG1zZ2lkICIlczogZmFpbGVkIHRvIGV4ZWMgJyVzICVzJyIKKyN+IG1zZ3N0ciAiJXM6IEtsYXJ0ZSBpa2tlIGtqw7hyZSDCqyVzICVzwrsiCisKKyN+IG1zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCBlcnJvcjogcmVhZDogYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IEludGVybiBnemlwLWZlaWw6IExlc3RlOiDCqyVzwrsiCisKKyN+IG1zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCBlcnJvcjogd3JpdGU6IGAlcyciCisjfiBtc2dzdHIgIiVzOiBJbnRlcm4gZ3ppcC1mZWlsOiBTa3Jldjogwqslc8K7IgorCisjfiBtc2dpZCAiJXM6IGludGVybmFsIGd6aXAgZXJyb3I6IHJlYWQoJWkpICE9IHdyaXRlKCVpKSIKKyN+IG1zZ3N0ciAiJXM6IEludGVybiBnemlwLWZlaWw6IGxlc2UoJWkpICE9IHNrcml2ZSglaSkiCisKKyN+IG1zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgZXJyb3I6IHJlYWQ6IGAlcyciCisjfiBtc2dzdHIgIiVzOiBJbnRlcm4gYnppcDItZmVpbDogTGVzdGU6IMKrJXPCuyIKKworI34gbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiBlcnJvcjogd3JpdGU6IGAlcyciCisjfiBtc2dzdHIgIiVzOiBJbnRlcm4gYnppcDItZmVpbDogU2tyZXY6IMKrJXPCuyIKKworI34gbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiBlcnJvcjogcmVhZCglaSkgIT0gd3JpdGUoJWkpIgorI34gbXNnc3RyICIlczogSW50ZXJuIGJ6aXAyLWZlaWw6IGxlc2UoJWkpICE9IHNrcml2ZSglaSkiCisKKyN+IG1zZ2lkICJEb24ndCBmb3JnZXQgdG8gZm9yZWdyb3VuZCAoYGZnJykgdGhpcyBwcm9jZXNzIHdoZW4geW91J3JlIGRvbmUgIVxuIgorI34gbXNnc3RyICIiCisjfiAiSWtrZSBnbGVtIMOlIHNldHRlIGRlbm5lIHByb3Nlc3NlbiBpIGZvcmdydW5uZW4gKMKrZmfCuykgbsOlciBkdSBlciBmZXJkaWcuXG4iCisKKyN+IG1zZ2lkICIiCisjfiAiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvclxuIgorI34gImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LlxuIgorI34gIlNlZSAlcyAtLWxpY2Vuc2UgZm9yIGNvcHlyaWdodCBhbmQgbGljZW5zZSBkZXRhaWxzLlxuIgorI34gbXNnc3RyICIiCisjfiAiRGV0dGUgZXIgZnJpIHByb2dyYW12YXJlLiBEdSBmaW5uZXIga29waWVyaW5nc3ZpbGvDpXJlbmUgaVxuIgorI34gIkdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbmNlIHZlcnNqb24gMiBlbGxlciBueWVyZS4gRGV0IGZpbm5lcyBJTkdFTiAiCisjfiAiZ2FyYW50aS5cbiIKKyN+ICJTZSDCqyVzIC0tbGljZW5jZcK7IGZvciBvcHBoYXZzcmV0dCBvZyBsaXNlbnNkZXRhbGplci5cbiIKKworI34gbXNnaWQgInVuYWJsZSB0byBnZXQgdW5pcXVlIGZpbGVuYW1lIGZvciBjb250cm9sIGluZm8iCisjfiBtc2dzdHIgImtsYXJ0ZSBpa2tlIGbDpSB1bmlrdCBmaWxuYXZuIGZvciBrb250cm9sbGluZm9ybWFzam9uIgorCisjfiBtc2dpZCAiRGViaWFuIGAlcycgcGFja2FnZSBtYW5hZ2VtZW50IHByb2dyYW0gcXVlcnkgdG9vbFxuIgorI34gbXNnc3RyICJEZWJpYW4gwqslc8K7IHBha2tlaMOlbmR0ZXJpbmcgcHJvZ3JhbS5cbiIKKworIywgZnV6enkKKyN+IG1zZ2lkICIiCisjfiAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBxdWVyeWluZyBwYWNrYWdlcztcbiIKKyN+ICJVc2UgLS1saWNlbnNlIGZvciBjb3B5cmlnaHQgbGljZW5zZSBhbmQgbGFjayBvZiB3YXJyYW50eSAoR05VIEdQTCkuIgorI34gbXNnc3RyICIiCisjfiAiQnJ1ayAtLWhqZWxwIGZvciBoamVscCBvbSBwYWtrZXNww7hycmluZy5cbiIKKyN+ICJCcnVrIC0tbGljZW5zZSBmb3Igb3BwaGF2c3JldHRsaXNlbnMgb2cgZ2FyYW50aWZyYXNrcml2aW5nIChHTlUgR1BMKS5cbiIKKyN+ICJcbiIKKworI34gbXNnaWQgImZhaWxlZCB0byBjaG93biAlczogJXMiCisjfiBtc2dzdHIgImtsYXJ0ZSBpa2tlIGNob3duICVzOiAlcyIKKworI34gbXNnaWQgImZhaWxlZCB0byBjaG1vZCAlczogJXMiCisjfiBtc2dzdHIgImtsYXJ0ZSBpa2tlIGNobW9kICVzOiAlcyIKKworI34gbXNnaWQgImZhaWxlZCB0byBmb3JrIGZvciBjbGVhbnVwIgorI34gbXNnc3RyICJrbGFydGUgaWtrZSBzcGxpdHRlIHByb3Nlc3MgZm9yIG9wcHJ5ZGRpbmciCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gd2FpdCBmb3Igcm0gY2xlYW51cCIKKyN+IG1zZ3N0ciAia2xhcnRlIGlra2UgdmVudGUgcMOlIMKrcm3Cuy1vcHByeWRkaW5nIgorCisjfiBtc2dpZCAicm0gY2xlYW51cCBmYWlsZWQsIGNvZGUgJWRcbiIKKyN+IG1zZ3N0ciAiwqtybcK7LW9wcHJ5ZGRpbmcgbWlzbHlrdGVzLCBrb2RlICVkXG4iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBybSAtcmYiCisjfiBtc2dzdHIgImtsYXJ0ZSBpa2tlIGtqw7hyZSDCq3JtIC1yZsK7IgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHJlYWQgYGNvbnRyb2wnIChpbiBgJS4yNTVzJykiCisjfiBtc2dzdHIgImtsYXJ0ZSBpa2tlIGxlc2Ugwqtjb250cm9swrsgKGkgwqslLjI1NXPCuykiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gc2VlayBiYWNrIgorI34gbXNnc3RyICJrbGFydGUgaWtrZSBzw7hrZSBiYWtvdmVyIgorCisjfiBtc2dpZCAidW5rbm93biBkYXRhIHR5cGUgYCVpJyBpbiBidWZmZXJfd3JpdGVcbiIKKyN+IG1zZ3N0ciAidWtqZW50IGRhdGF0eXBlIMKrJWnCuyBpIGJ1ZmZlcl93cml0ZVxuIgorCisjfiBtc2dpZCAidW5rbm93biBkYXRhIHR5cGUgYCVpJyBpbiBidWZmZXJfcmVhZFxuIgorI34gbXNnc3RyICJ1a2plbnQgZGF0YXR5cGUgwqslacK7IGkgYnVmZmVyX3JlYWRcbiIKKworI34gbXNnaWQgIndhaXQgZm9yIHNoZWxsIGZhaWxlZCIKKyN+IG1zZ3N0ciAidmVudGluZyBww6Ugc2thbGwgbWlzbHlrdGVzIgorCisjfiBtc2dpZCAicmVhZCBlcnJvciBpbiBkaXZlcnNpb25zIFtpXSIKKyN+IG1zZ3N0ciAibGVzZWZlaWwgaSBvbWRpcmlnZXJpbmdzZmlsYSBbaV0iCisKKyN+IG1zZ2lkICJ1bmxpbmsiCisjfiBtc2dzdHIgImZqZXJuZSBsZW5rZSIKKworI34gbXNnaWQgImNobW9kIgorI34gbXNnc3RyICJjaG1vZCIKKworI34gbXNnaWQgImRlbGV0ZSIKKyN+IG1zZ3N0ciAic2xldHRlIgorCisjLCBmdXp6eQorI34gbXNnaWQgImZhaWxlZCB0byAlcyAnJS4yNTVzJyIKKyN+IG1zZ3N0ciAia2xhcnRlIGlra2UgJXMgwqslJS4yNTVzwrsiCisKKyN+IG1zZ2lkICJ3YWl0IGZvciBkcGtnLXNwbGl0IGZhaWxlZCIKKyN+IG1zZ3N0ciAidmVudGluZyBww6UgwqtkcGtnLXNwbGl0wrsgbWlzbHlrdGVzIgorCisjfiBtc2dpZCAiY2Fubm90IHJlbW92ZSBmaWxlIGAlLjI1MHMnIgorI34gbXNnc3RyICJrbGFydGUgaWtrZSBmamVybmUgZmlsYSDCqyUuMjUwc8K7IgorCisjfiBtc2dpZCAiIgorI34gIlxuIgorI34gIkNvcHlyaWdodCAoQykgMjAwMCBXaWNoZXJ0IEFra2VybWFuLiIKKyN+IG1zZ3N0ciAiIgorI34gIlxuIgorI34gIk9wcGhhdnNyZXR0IChDKSAyMDAwIFdpY2hlcnQgQWtrZXJtYW4uIgorCisjfiBtc2dpZCAibm8gbW9kZSBzcGVjaWZpZWQiCisjfiBtc2dzdHIgImluZ2VuIG1vZHVzIG9wcGdpdHQiCisKKyN+IG1zZ2lkICJpbGxlZ2FsIHVzZXIgJXMiCisjfiBtc2dzdHIgInVsb3ZsaWcgYnJ1a2VyICVzIgorCisjfiBtc2dpZCAibm9uLWV4aXN0aW5nIHVzZXIgJXMiCisjfiBtc2dzdHIgImlra2UtZWtzaXN0ZXJlbmRlIGJydWtlciAlcyIKKworI34gbXNnaWQgImlsbGVnYWwgZ3JvdXAgJXMiCisjfiBtc2dzdHIgInVsb3ZsaWcgZ3J1cHBlICVzIgorCisjfiBtc2dpZCAibm9uLWV4aXN0aW5nIGdyb3VwICVzIgorI34gbXNnc3RyICJpa2tlLWVrc2lzdGVyZW5kZSBncnVwcGUgJXMiCisKKyN+IG1zZ2lkICJpbGxlZ2FsIG1vZGUgJXMiCisjfiBtc2dzdHIgInVsb3ZsaWcgbW9kdXMgJXMiCisKKyN+IG1zZ2lkICJhYm9ydGluZyIKKyN+IG1zZ3N0ciAiYXZicnl0ZXIiCisKKyN+IG1zZ2lkICJjYW5ub3Qgb3BlbiBzdGF0b3ZlcnJpZGU6ICVzIgorI34gbXNnc3RyICJrbGFydGUgaWtrZSDDpXBuZSDCq3N0YXRvdmVycmlkZcK7LWZpbGE6ICVzIgorCisjfiBtc2dpZCAiTXVsdGlwbGUgb3ZlcnJpZGVzIGZvciBcIiVzXCIsIGFib3J0aW5nIgorI34gbXNnc3RyICJGbGVyZSB0aWxzaWRlc2V0dGVsc2UgZm9yIMKrJXPCuywgYXZicnl0ZXIiCisKKyN+IG1zZ2lkICJmYWlsZWQgd3JpdGUgZHVyaW5nIGhhc2hyZXBvcnQiCisjfiBtc2dzdHIgImtsYXJ0ZSBpa2tlIHNrcml2ZSB1bmRlciDCq2hhc2hyZXBvcnTCuyIKKworI34gbXNnaWQgImNvbmZpZ3VyYXRpb24gZXJyb3I6IHVua25vd24gb3B0aW9uICVzIgorI34gbXNnc3RyICJvcHBzZXR0c2ZlaWw6IHVramVudCB2YWxnICVzIgorCisjfiBtc2dpZCAiY29uZmlndXJhdGlvbiBlcnJvcjogJXMgZG9lcyBub3QgdGFrZSBhIHZhbHVlIgorI34gbXNnc3RyICJvcHBzZXR0c2ZlaWw6ICVzIHNrYWwgaWtrZSBoYSBub2VuIHBhcmFtZXRlciIKKworI34gbXNnaWQgImRwa2c6IHZlcnNpb24gJyVzJyBoYXMgYmFkIHN5bnRheDogJXNcbiIKKyN+IG1zZ3N0ciAiZHBrZzogdmVyc2pvbiDCqyVzwrsgaGFyIHVneWxkaWcgc3ludGFrczogJXNcbiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJ1bmV4ZWNwdGVkIGVuZCBvZiBsaW5lIGluIHN0YXRvdmVycmlkZSBmaWxlIgorI34gbXNnc3RyICJ1dmVudGV0IHNsdXR0IHDDpSBsaW5qZSBpIHBha2tlbmF2bmV0IHDDpSBsaW5qZSAlZCIKKworIywgZnV6enkKKyN+IG1zZ2lkICItLWNoZWNrLXN1cHBvcnRlZCB0YWtlcyBubyBhcmd1bWVudHMiCisjfiBtc2dzdHIgIsKrZHBrZy10cmlnZ2VyIC0tY2hlY2stc3VwcG9ydGVkwrsgdGFyIGluZ2VuIHBhcmFtZXRyZSIKKworI34gbXNnaWQgIi0tZm9yZ2V0LW9sZC11bmF2YWlsIHRha2VzIG5vIGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiLS1mb3JnZXQtb2xkLXVuYXZhaWwgdGFyIGluZ2VuIHBhcmFtZXRyZSIKKworI34gbXNnaWQgIiIKKyN+ICJcbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDE5OTQsMTk5NSBJYW4gSmFja3Nvbi4iCisjfiBtc2dzdHIgIiIKKyN+ICJcbiIKKyN+ICJPcHBoYXZzcmV0dCAoQykgMTk5NCwxOTk1IElhbiBKYWNrc29uLiIKKworI34gbXNnaWQgIiIKKyN+ICJVc2FnZTogJXMgWzxvcHRpb25zPiAuLi5dIFstLV0gPGZpbGVuYW1lPlxuIgorI34gIlxuIgorI34gIk9wdGlvbnM6XG4iCisjfiAiICAtLXNlY3Rpb24gPHJlZ2V4cD4gPHRpdGxlPlxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHB1dCB0aGUgbmV3IGVudHJ5IGluIHRoZSA8cmVnZXg+IG1hdGNoZWQgIgorI34gInNlY3Rpb25cbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICBvciBjcmVhdGUgYSBuZXcgb25lIHdpdGggPHRpdGxlPiBpZiBub24tIgorI34gImV4aXN0ZW50LlxuIgorI34gIiAgLS1tZW51ZW50cnk9PHRleHQ+ICAgICAgIHNldCB0aGUgbWVudSBlbnRyeS5cbiIKKyN+ICIgIC0tZGVzY3JpcHRpb249PHRleHQ+ICAgICBzZXQgdGhlIGRlc2NyaXB0aW9uIHRvIGJlIHVzZWQgaW4gdGhlIG1lbnUgIgorI34gImVudHJ5LlxuIgorI34gIiAgLS1pbmZvLWZpbGU9PHBhdGg+ICAgICAgIHNwZWNpZnkgaW5mbyBmaWxlIHRvIGluc3RhbGwgaW4gdGhlICIKKyN+ICJkaXJlY3RvcnkuXG4iCisjfiAiICAtLWRpci1maWxlPTxwYXRoPiAgICAgICAgc3BlY2lmeSBmaWxlIG5hbWUgb2YgaW5mbyBkaXJlY3RvcnkgZmlsZS5cbiIKKyN+ICIgIC0taW5mb2Rpcj08ZGlyZWN0b3J5PiAgICBzYW1lIGFzICctLWRpci1maWxlPTxkaXJlY3Rvcnk+L2RpcicuXG4iCisjfiAiICAtLWluZm8tZGlyPTxkaXJlY3Rvcnk+ICAgbGlrZXdpc2UuXG4iCisjfiAiICAtLWtlZXAtb2xkICAgICAgICAgICAgICAgZG8gbm90IHJlcGxhY2UgZW50cmllcyBub3IgcmVtb3ZlIGVtcHR5IG9uZXMuXG4iCisjfiAiICAtLXJlbW92ZSAgICAgICAgICAgICAgICAgcmVtb3ZlIHRoZSBlbnRyeSBzcGVjaWZpZWQgYnkgPGZpbGVuYW1lPiAiCisjfiAiYmFzZW5hbWUuXG4iCisjfiAiICAtLXJlbW92ZS1leGFjdGx5ICAgICAgICAgcmVtb3ZlIHRoZSBleGFjdCA8ZmlsZW5hbWU+IGVudHJ5LlxuIgorI34gIiAgLS10ZXN0ICAgICAgICAgICAgICAgICAgIGVuYWJsZXMgdGVzdCBtb2RlIChubyBhY3Rpb25zIHRha2VuKS5cbiIKKyN+ICIgIC0tZGVidWcgICAgICAgICAgICAgICAgICBlbmFibGVzIGRlYnVnIG1vZGUgKHNob3cgbW9yZSBpbmZvcm1hdGlvbikuXG4iCisjfiAiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgZG8gbm90IHNob3cgb3V0cHV0IG1lc3NhZ2VzLlxuIgorI34gIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisjfiAiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIkJydWs6ICVzIFs8dmFsZz4gLi4uXSBbLS1dIDxmaWxlbmF2bj5cbiIKKyN+ICJcbiIKKyN+ICJWYWxnOlxuIgorI34gIiAgLS1zZWN0aW9uIDxyZWdleHA+IDx0aXR0ZWw+XG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0dCBkZW4gbnllIG9wcGbDuHJpbmdlbiBpIGF2c25pdHRldCBzb20gIgorI34gInN0ZW1tZXIgbWVkIDxyZWdleD5cbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICBlbGxlciBvcHByZXR0IG55dHQgbWVkIDx0aXR0ZWw+IGh2aXMgZGV0IGlra2UgIgorI34gImZpbm5lcy5cbiIKKyN+ICIgIC0tbWVudWVudHJ5PTx0ZWtzdD4gICAgICBzZXR0IG1lbnlvcHBmw7hyaW5nZW4uXG4iCisjfiAiICAtLWRlc2NyaXB0aW9uPTx0ZWtzdD4gICAgc2V0dCBiZXNrcml2ZWxzZW4gc29tIHNrYWwgYnJ1a2VzIGkgIgorI34gIm1lbnlvcHBmw7hyaW5nZW4uXG4iCisjfiAiICAtLWluZm8tZmlsZT08c3RpPiAgICAgICAgb3BwZ2kgaW5mby1maWwgc29tIHNrYWwgaW5zdGFsbGVyZXMgaSAiCisjfiAia2F0YWxvZ2VuLlxuIgorI34gIiAgLS1kaXItZmlsZT08c3RpPiAgICAgICAgIG9wcGdpIGZpbG5hdm5ldCBww6UgIGluZm9rYXRhbG9nLWZpbGVuLlxuIgorI34gIiAgLS1pbmZvZGlyPTxrYXRhbG9nPiAgICAgIHNhbW1lIHNvbSAnLS1kaXItZmlsZT08a2F0YWxvZz4vZGlyJy5cbiIKKyN+ICIgIC0taW5mby1kaXI9PGthdGFsb2c+ICAgICBkaXR0by5cbiIKKyN+ICIgIC0ta2VlcC1vbGQgICAgICAgICAgICAgICBpa2tlIGJ5dHQgdXQgb3BwZsO4cmluZ2VyIGVsbGVyIGZqZXJuIHRvbW1lLlxuIgorI34gIiAgLS1yZW1vdmUgICAgICAgICAgICAgICAgIGZqZXJuIG9wcGbDuHJpbmdlbiBzcGVzaWZpc2VydCB2ZWQgPGZpbGVuYXZuPiAiCisjfiAiYmFzZW5hdm4uXG4iCisjfiAiICAtLXJlbW92ZS1leGFjdGx5ICAgICAgICAgZmplcm4gZGVuIGVrc2FrdGUgPGZpbGVuYXZuPiBvcHBmw7hyaW5nZW4uXG4iCisjfiAiICAtLXRlc3QgICAgICAgICAgICAgICAgICAgYWt0aXZlcmVyIHRlc3Rtb2R1cyAoaW5nZW4gaGFuZGxpbmdlciAiCisjfiAidXRmw7hyZXMpLlxuIgorI34gIiAgLS1kZWJ1ZyAgICAgICAgICAgICAgICAgIGFrdGl2ZXJlciBhdmx1c2luZ3Ntb2R1cyAodmlzZXIgbWVyICIKKyN+ICJpbmZvcm1hc2pvbikuXG4iCisjfiAiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgaWtrZSB2aXMgbWVsZGluZ2VyIHDDpSBzdGFuZGFyZC11dC5cbiIKKyN+ICIgIC0taGVscCAgICAgICAgICAgICAgICAgICB2aXMgZGVubmUgaGplbHBtZWxkaW5nZW4uXG4iCisjfiAiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgdmlzIHZlcnNqb25lbi5cbiIKKworI34gbXNnaWQgImNvdWxkIG5vdCBvcGVuIHN0ZGVyciBmb3Igb3V0cHV0ISAlcyIKKyN+IG1zZ3N0ciAia2xhcnRlIGlra2Ugw6VwbmUgc3RhbmRhcmRmZWlsIGZvciB1dHNrcmlmdCEgJXMiCisKKyN+IG1zZ2lkICIlczogLS1zZWN0aW9uIG5lZWRzIHR3byBtb3JlIGFyZ3MiCisjfiBtc2dzdHIgIiVzOiAtLXNlY3Rpb24ga3JldmVyIHRvIHBhcmFtZXRyZSB0aWwiCisKKyN+IG1zZ2lkICIlczogb3B0aW9uIC0tJXMgaXMgZGVwcmVjYXRlZCAoaWdub3JlZCkiCisjfiBtc2dzdHIgIiVzOiBhbHRlcm5hdGl2IC0tJXMgZXIgYXZsZWdncyAoaWdub3JlcnQpIgorCisjfiBtc2dpZCAiJXM6IHVua25vd24gb3B0aW9uIGAlcyciCisjfiBtc2dzdHIgIiVzOiB1a2plbnQgdmFsZyDCqyVzwrsiCisKKyN+IG1zZ2lkICIlczogdG9vIG1hbnkgYXJndW1lbnRzIgorI34gbXNnc3RyICIlczogZm9yIG1hbmdlIHBhcmFtZXRyZSIKKworI34gbXNnaWQgIiVzOiAtLXNlY3Rpb24gaWdub3JlZCB3aXRoIC0tcmVtb3ZlIgorI34gbXNnc3RyICIlczogLS1zZWN0aW9uIGlnbm9yZXJ0IG1lZCAtLXJlbW92ZSIKKworI34gbXNnaWQgIiVzOiAtLWRlc2NyaXB0aW9uIGlnbm9yZWQgd2l0aCAtLXJlbW92ZSIKKyN+IG1zZ3N0ciAiJXM6IC0tZGVzY3JpcHRpb24gaWdub3JlcnQgbWVkIC0tcmVtb3ZlIgorCisjfiBtc2dpZCAiJXM6IHRlc3QgbW9kZSAtIGRpciBmaWxlIHdpbGwgbm90IGJlIHVwZGF0ZWQiCisjfiBtc2dzdHIgIiVzOiB0ZXN0bW9kdXMgLSBkaXIgZmlsIGJsaXIgaWtrZSBvcHBkYXRlcnQiCisKKyN+IG1zZ2lkICIlczogd2FybmluZywgaWdub3JpbmcgY29uZnVzaW5nIElORk8tRElSLUVOVFJZIGluIGZpbGUuIgorI34gbXNnc3RyICIlczogYWR2YXJzZWwsIGlnbm9yZXJlciBmb3J2aXJyZW5kZSBJTkZPLURJUi1FTlRSWSBpIGZpbC4iCisKKyN+IG1zZ2lkICJpbnZhbGlkIGluZm8gZW50cnkiCisjfiBtc2dzdHIgImd5bGRpZyBpbmZvLW9wcGbDuHJpbmciCisKKyN+IG1zZ2lkICIiCisjfiAiXG4iCisjfiAiTm8gYFNUQVJULUlORk8tRElSLUVOVFJZJyBhbmQgbm8gYFRoaXMgZmlsZSBkb2N1bWVudHMnLlxuIgorI34gIiVzOiB1bmFibGUgdG8gZGV0ZXJtaW5lIGRlc2NyaXB0aW9uIGZvciBgZGlyJyBlbnRyeSAtIGdpdmluZyB1cFxuIgorI34gbXNnc3RyICIiCisjfiAiXG4iCisjfiAiSW5nZW4gwqtTVEFSVC1JTkZPLURJUi1FTlRSWcK7IG9nIGluZ2VuIMKrVGhpcyBmaWxlIGRvY3VtZW50c8K7LlxuIgorI34gIiVzOiBrbGFydGUgaWtrZSBmaW5uZSBiZXNrcml2ZWxzZSBmb3IgwqtkaXLCuy1vcHBmw7hyaW5nIC0gZ2lyIG9wcFxuIgorCisjfiBtc2dpZCAiJXM6IG5vIGZpbGUgJXMsIHJldHJpZXZpbmcgYmFja3VwIGZpbGUgJXMuIgorI34gbXNnc3RyICIlczogaW5nZW4gZmlsICVzLCBoZW50ZXIgc2lra2VyaGV0c2tvcGkgJXMuIgorCisjfiBtc2dpZCAiJXM6IG5vIGJhY2t1cCBmaWxlICVzIGF2YWlsYWJsZSwgcmV0cmlldmluZyBkZWZhdWx0IGZpbGUuIgorI34gbXNnc3RyICIlczogaW5nZW4gc2lra2VyaGV0c2tvcGkgJXMgdGlsZ2plbmdlbGlnLCBoZW50ZXIgc3RhbmRhcmRmaWwuIgorCisjfiBtc2dpZCAiJXM6IG5vIGJhY2t1cCBmaWxlICVzIGF2YWlsYWJsZS4iCisjfiBtc2dzdHIgIiVzOiBpbmdlbiBzaWtrZXJoZXRza29waSAlcyB0aWxnamVuZ2VsaWcuIgorCisjfiBtc2dpZCAiJXM6IG5vIGRlZmF1bHQgZmlsZSAlcyBhdmFpbGFibGUsIGdpdmluZyB1cC4iCisjfiBtc2dzdHIgIiVzOiBpbmdlbiBzdGFuZGFyZGZpbCAlcyB0aWxnamVuZ2VsaWcsIGdpciBvcHAuIgorCisjfiBtc2dpZCAiJXM6IGZhaWxlZCB0byBsb2NrIGRpciBmb3IgZWRpdGluZyEgJXMiCisjfiBtc2dzdHIgIiVzOiBrbGFydGUgaWtrZSBsw6VzZSBrYXRhbG9nIGZvciByZWRpZ2VyaW5nISAlcyIKKworI34gbXNnaWQgInRyeSBkZWxldGluZyAlcz8iCisjfiBtc2dzdHIgInByw7h2ZSDDpSBzbGV0dGUgJXM/IgorCisjfiBtc2dpZCAidW5hYmxlIHRvIG9wZW4gJXM6ICVzIgorI34gbXNnc3RyICJrbGFydGUgaWtrZSDDpXBuZSAlczogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gY2xvc2UgJXMgYWZ0ZXIgcmVhZDogJXMiCisjfiBtc2dzdHIgImtsYXJ0ZSBpa2tlIGx1a2tlICVzIGV0dGVyIGxlc2luZzogJXMiCisKKyN+IG1zZ2lkICIlczogZXhpc3RpbmcgZW50cnkgZm9yIGAlcycgbm90IHJlcGxhY2VkIgorI34gbXNnc3RyICIlczogZWtzaXN0ZXJlbmRlIG9wcGbDuHJpbmcgZm9yIMKrJXPCuyBpa2tlIGJ5dHRldCB1dCIKKworI34gbXNnaWQgIiVzOiByZXBsYWNpbmcgZXhpc3RpbmcgZGlyIGVudHJ5IGZvciBgJXMnIgorI34gbXNnc3RyICIlczogYnl0dGVyIHV0IGVrc2lzdGVyZW5kZSBkaXItb3BwZsO4cmluZyBmb3Igwqslc8K7IgorCisjfiBtc2dpZCAiJXM6IGNyZWF0aW5nIG5ldyBzZWN0aW9uIGAlcyciCisjfiBtc2dzdHIgIiVzOiBvcHByZXR0ZXIgbnkgc2Vrc2pvbiDCqyVzwrsiCisKKyN+IG1zZ2lkICIlczogbm8gc2VjdGlvbnMgeWV0LCBjcmVhdGluZyBNaXNjZWxsYW5lb3VzIHNlY3Rpb24gdG9vLiIKKyN+IG1zZ3N0ciAiJXM6IGluZ2VuIGF2c25pdHQgZW5kYSwgb3BwcmV0dGVyIG9nc8OlIE1pc2NlbGxhbmVvdXMtYXZzbml0dC4iCisKKyN+IG1zZ2lkICIlczogbm8gc2VjdGlvbiBzcGVjaWZpZWQgZm9yIG5ldyBlbnRyeSwgcGxhY2luZyBhdCBlbmQiCisjfiBtc2dzdHIgIiIKKyN+ICIlczogaW5nZW4gYXZzbml0dCBvcHBnaXR0IGZvciBueSBvcHBmw7hyaW5nLCBwbGFzc2VyZXIgZGVuIHDDpSBzbHV0dGVuIgorCisjfiBtc2dpZCAiJXM6IGRlbGV0aW5nIGVudHJ5IGAlcyAuLi4nIgorI34gbXNnc3RyICIlczogc2xldHRlciBvcHBmw7hyaW5nIMKrJXMgLi4uwrsiCisKKyN+IG1zZ2lkICIlczogZW1wdHkgc2VjdGlvbiBgJXMnIG5vdCByZW1vdmVkIgorI34gbXNnc3RyICIlczogdG9tdCBhdnNuaXR0IMKrJXPCuyBpa2tlIHNsZXR0ZXQiCisKKyN+IG1zZ2lkICIlczogZGVsZXRpbmcgZW1wdHkgc2VjdGlvbiBgJXMnIgorI34gbXNnc3RyICIlczogc2xldHRlciB0b210IGF2c25pdHQgwqslc8K7IgorCisjfiBtc2dpZCAiJXM6IG5vIGVudHJ5IGZvciBmaWxlIGAlcycgYW5kIG1lbnUgZW50cnkgYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IGluZ2VuIG9wcGbDuHJpbmcgZm9yIGZpbCDCqyVzwrsgb2cgbWVueW9wcGbDuHJpbmcgwqslc8K7IgorCisjfiBtc2dpZCAiJXM6IG5vIGVudHJ5IGZvciBmaWxlIGAlcyciCisjfiBtc2dzdHIgIiVzOiBpbmdlbiBvcHBmw7hyaW5nIGZvciBmaWxhIMKrJXPCuyIKKworI34gbXNnaWQgInVuYWJsZSB0byBiYWNrdXAgb2xkICVzLCBnaXZpbmcgdXA6ICVzIgorI34gbXNnc3RyICJrbGFydGUgaWtrZSBzaWtrZXJoZXRza29waWVyZSBnYW1tZWwgJXMsIGdpciBvcHA6ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3ICVzOiAlcyIKKyN+IG1zZ3N0ciAia2xhcnRlIGlra2UgaW5zdGFsbGVyZSBueSAlczogJXMiCisKKyN+IG1zZ2lkICIlczogY291bGQgbm90IGJhY2t1cCAlcyBpbiAlczogJXMiCisjfiBtc2dzdHIgIiVzOiBrbGFydGUgaWtrZSBzaWtrZXJoZXRza29waWVyZSAlcyBpICVzOiAlcyIKKworI34gbXNnaWQgIiVzOiB3YXJuaW5nIC0gdW5hYmxlIHRvIHVubG9jayAlczogJXMiCisjfiBtc2dzdHIgIiVzOiBBZHZhcnNlbCAtIGtsYXJ0ZSBpa2tlIGZqZXJuZSBsw6VzIGZvciAlczogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcmVhZCAlczogJWQiCisjfiBtc2dzdHIgImtsYXJ0ZSBpa2tlIGxlc2UgJXM6ICVkIgorCisjfiBtc2dpZCAiZGJnOiAlcyIKKyN+IG1zZ3N0ciAiZGJnOiAlcyIKKworI34gbXNnaWQgImZhaWxlZCB0byBvcGVuIHRtcGZpbGUgKGNvbnRyb2wpLCAlcyIKKyN+IG1zZ3N0ciAia2xhcnRlIGlra2Ugw6VwbmUgbWlkbGVydGlkaWcgZmlsIChrb250cm9sbCksICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIG9wZW4gdG1wZmlsZSAoZGF0YSksICVzIgorI34gbXNnc3RyICJrbGFydGUgaWtrZSDDpXBuZSBtaWRsZXJ0aWRpZyBmaWwgKGRhdGEpLCAlcyIKKworI34gbXNnaWQgImludmFsaWQgbnVtYmVyIGZvciAtLWNvbW1hbmQtZmQiCisjfiBtc2dzdHIgInVneWxkaWcgdGFsbCBmb3IgLS1jb21tYW5kLWZkIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHJld2luZCBhdCBzdGFydCBvZiB2c25wcmludGYiCisjfiBtc2dzdHIgImtsYXJ0ZSBpa2tlIGhvcHBlIHRpbGJha2UgdGlsIHN0YXJ0ZW4gYXYgdnNucHJpbnRmIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHRydW5jYXRlIGluIHZzbnByaW50ZiIKKyN+IG1zZ3N0ciAia2xhcnRlIGlra2Uga29ydGUgYXYgaSB2c25wcmludGYiCisKKyN+IG1zZ2lkICJ3cml0ZSBlcnJvciBpbiB2c25wcmludGYiCisjfiBtc2dzdHIgInNrcml2ZWZlaWwgaSB2c25wcmludGYiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gc3RhdCBpbiB2c25wcmludGYiCisjfiBtc2dzdHIgImtsYXJ0ZSBpa2tlIGbDpSBzdGF0dXMgaSB2c25wcmludGYiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcmV3aW5kIGluIHZzbnByaW50ZiIKKyN+IG1zZ3N0ciAia2xhcnRlIGlra2UgaG9wcGUgdGlsYmFrZSBpIHZzbnByaW50ZiIKKworI34gbXNnaWQgInJlYWQgZXJyb3IgaW4gdnNucHJpbnRmIHRydW5jYXRlZCIKKyN+IG1zZ3N0ciAibGVzZWZlaWwgaSB2c25wcmludGYga3V0dGV0IGF2IgorCisjfiBtc2dpZCAiU3lzdGVtIGVycm9yIG5vLiVkIgorI34gbXNnc3RyICJTeXN0ZW1mZWlsIG5yLiAlZCIKKworI34gbXNnaWQgIlNpZ25hbCBuby4lZCIKKyN+IG1zZ3N0ciAiU2lnbmFsIG5yLiAlZCIKKworI34gbXNnaWQgImRwa2c6IHdhcm5pbmcgLSAlcyByZXR1cm5lZCBlcnJvciBleGl0IHN0YXR1cyAlZFxuIgorI34gbXNnc3RyICJkcGtnOiBBZHZhcnNlbCAtICVzIHJldHVybmVydGUgZmVpbHN0YXR1cyAlZFxuIgorCisjfiBtc2dpZCAiZHBrZzogd2FybmluZyAtICVzIGtpbGxlZCBieSBzaWduYWwgKCVzKSVzXG4iCisjfiBtc2dzdHIgImRwa2c6IEFkdmFyc2VsIC0gJXMgZHJlcHQgbWVkIHNpZ25hbCAoJXMpJXNcbiIKKworI34gbXNnaWQgImZhaWxlZCB0byByZWFkIGAlcycgYXQgbGluZSAlZCIKKyN+IG1zZ3N0ciAia2xhcnRlIGlra2UgbGVzZSDCqyVzwrsgdmVkIGxpbmplIMKrJWTCuyIKKworI34gbXNnaWQgInBhcnNlIGVycm9yLCBpbiBmaWxlIGAlLjI1NXMnIG5lYXIgbGluZSAlZCIKKyN+IG1zZ3N0ciAidG9sa2VmZWlsLCBpIGZpbGEgwqslLjI1NXPCuyBuw6ZyIGxpbmplICVkIgorCisjfiBtc2dpZCAiIHBhY2thZ2UgYCUuMjU1cyciCisjfiBtc2dzdHIgIiBwYWtrZW4gwqslLjI1NXPCuyIKKworI34gbXNnaWQgImZhaWxlZCB0byByZWFsbG9jIGZvciB2YXJpYWJsZSBidWZmZXIiCisjfiBtc2dzdHIgImtsYXJ0ZSBpa2tlIHRpbGRlbGUgcMOlIG55dHQgZm9yIHZhcmlhYmVsIGJ1ZmZlciIKKworI34gbXNnaWQgInByb2Nlc3NfYXJjaGl2ZSAuLi4gIGFscmVhZHkgZGlzYXBwZWFyZWQgISIKKyN+IG1zZ3N0ciAicHJvY2Vzc19hcmNoaXZlIC4uLiAgZm9yc3Z1bm5ldCBhbGxlcmVkZSEiCisKKyN+IG1zZ2lkICJnb2JibGUgcmVwbGFjZWQgZmlsZSBgJS4yNTVzJyIKKyN+IG1zZ3N0ciAiZ29iYmxlIGJ5dHRldCB1dCBmaWwgwqslLjI1NXPCuyIKKworI34gbXNnaWQgImRwa2c6ICVzOiB3YXJuaW5nIC0gZmFpbGVkIHRvIHJlbW92ZSBgJS4yNTBzJzogJXNcbiIKKyN+IG1zZ3N0ciAiZHBrZzogJXM6IEFkdmFyc2VsIC0ga2xhcnRlIGlra2UgZmplcm5lIMKrJS4yNTBzwrs6ICVzXG4iCisKKyN+IG1zZ2lkICItLWF1ZGl0IGRvZXMgbm90IHRha2UgYW55IGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiLS1hdWRpdCB0YXIgaW5nZW4gcGFyYW1ldHJlIgorCisjfiBtc2dpZCAiLS15ZXQtdG8tdW5wYWNrIGRvZXMgbm90IHRha2UgYW55IGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiLS15ZXQtdG8tdW5wYWNrIHRhciBpbmdlbiBwYXJhbWV0cmUiCisKKyN+IG1zZ2lkICItLWFzc2VydC0qIGRvZXMgbm90IHRha2UgYW55IGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiLS1hc3NlcnQtKiB0YXIgaW5nZW4gcGFyYW1ldHJlIgorCisjfiBtc2dpZCAiLS1wcmVkZXAtcGFja2FnZSBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudCIKKyN+IG1zZ3N0ciAiLS1wcmVkZXAtcGFja2FnZSAgdGFyIGluZ2VuIHBhcmFtZXRyZSIKKworI34gbXNnaWQgIi0tcHJpbnQtYXJjaGl0ZWN0dXJlIGRvZXMgbm90IHRha2UgYW55IGFyZ3VtZW50IgorI34gbXNnc3RyICItLXByaW50LWFyY2hpdGVjdHVyZSAgdGFyIGluZ2VuIHBhcmFtZXRyZSIKKworI34gbXNnaWQgInVuYWJsZSB0byBzdGF0IGluc3RhbGxlZCAlcyBzY3JpcHQgYCUuMjUwcyciCisjfiBtc2dzdHIgImZhbnQgaWtrZSBkZXQgaW5zdGFsbGVydGUgJXMtc2tyaXB0ZXQgwqslLjI1MHPCuyIKKworI34gbXNnaWQgInVuYWJsZSB0byBzdGF0IG5ldyAlcyBzY3JpcHQgYCUuMjUwcyciCisjfiBtc2dzdHIgImZhbnQgaWtrZSBkZW4gbnllICVzLXNrcmlwdGV0IMKrJS4yNTBzwrsiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gZXhlY3V0ZSBuZXcgJXMiCisjfiBtc2dzdHIgImtsYXJ0ZSBpa2tlIGtqw7hyZSBueXR0ICVzIgorCisjfiBtc2dpZCAiZHBrZzogd2FybmluZyAtIHVuYWJsZSB0byBzdGF0ICVzIGAlLjI1MHMnOiAlc1xuIgorI34gbXNnc3RyICJkcGtnOiBBZHZhcnNlbCAtIGZhbnQgaWtrZSAlcyDCqyUuMjUwc8K7OiAlc1xuIgorCisjfiBtc2dpZCAiLS1zZXQtc2VsZWN0aW9ucyBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudCIKKyN+IG1zZ3N0ciAiLS1zZXQtc2VsZWN0aW9ucyB0YXIgaW5nZW4gcGFyYW1ldHJlIgorCisjfiBtc2dpZCAiLS1jbGVhci1zZWxlY3Rpb25zIGRvZXMgbm90IHRha2UgYW55IGFyZ3VtZW50IgorI34gbXNnc3RyICItLWNsZWFyLXNlbGVjdGlvbnMgdGFyIGluZ2VuIHBhcmFtZXRyZSIKKworI34gbXNnaWQgIi0tYnVpbGQgbmVlZHMgYSBkaXJlY3RvcnkgYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tYnVpbGQga3JldmVyIGVuIGthdGFsb2dwYXJhbWV0ZXIiCisKKyN+IG1zZ2lkICIiCisjfiAiZHBrZy1kZWI6IHdhcm5pbmcsIG5vdCBjaGVja2luZyBjb250ZW50cyBvZiBjb250cm9sIGFyZWEuXG4iCisjfiAiZHBrZy1kZWI6IGJ1aWxkaW5nIGFuIHVua25vd24gcGFja2FnZSBpbiBgJXMnLlxuIgorI34gbXNnc3RyICIiCisjfiAiZHBrZy1kZWI6IEFkdmFyc2VsLCBzamVra2VyIGlra2UgaW5uaG9sZGV0IGkga29udHJvbGxvbXLDpWRldC5cbiIKKyN+ICJkcGtnLWRlYjogQnlnZ2VyIGVuIHVramVudCBwYWtrZSBpIMKrJXPCuy5cbiIKKworI34gbXNnaWQgIkludGVybmFsIGVycm9yLCBjb21wcmVzc190eXBlIGAlaScgdW5rbm93biEiCisjfiBtc2dzdHIgIkludGVybiBmZWlsLCBjb21wcmVzc190eXBlIMKrJWnCuyB1a2plbnQhIgorCisjfiBtc2dpZCAiLS1qb2luIHJlcXVpcmVzIG9uZSBvciBtb3JlIHBhcnQgZmlsZSBhcmd1bWVudHMiCisjfiBtc2dzdHIgIi0tam9pbiB0YXIgZW4gZWxsZXIgZmxlcmUgZGVsZmlscGFyYW1ldHJlIgorCisjfiBtc2dpZCAiLS1saXN0cSBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudHMiCisjfiBtc2dzdHIgIi0tbGlzdHEgdGFyIGluZ2VuIHBhcmFtZXRyZSIKKworI34gbXNnaWQgIiIKKyN+ICJcbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDE5OTYgS2ltLU1pbmggS2FwbGFuLiIKKyN+IG1zZ3N0ciAiIgorI34gIlxuIgorI34gIk9wcGhhdnNyZXR0IChDKSAxOTk2IEtpbS1NaW5oIEthcGxhbi4iCisKKyN+IG1zZ2lkICIiCisjfiAiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIFstLV0gWzxkaXJuYW1lPl1cbiIKKyN+ICJcbiIKKyN+ICJPcHRpb25zOlxuIgorI34gIiAgLS11bnNhZmUgICAgIHNldCBzb21lIGFkZGl0aW9uYWwgcG9zc2libHkgdXNlZnVsIG9wdGlvbnMuXG4iCisjfiAiICAgICAgICAgICAgICAgd2FybmluZzogdGhpcyBvcHRpb24gbWF5IGdhcmJsZSBhbiBvdGhlcndpc2UgY29ycmVjdCAiCisjfiAiZmlsZS5cbiIKKyN+ICIgIC0taGVscCAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorI34gIiAgLS12ZXJzaW9uICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJCcnVrOiAlcyBbPHZhbGc+IC4uLl0gWy0tXSBbPGthdGFsb2duYXZuPl1cbiIKKyN+ICJcbiIKKyN+ICJWYWxnOlxuIgorI34gIiAgLS11bnNhZmUgICAgIHNldHRlciBub2VuIGVrc3RyYSBtdWxpZ2VucyBueXR0aWdlIGFsdGVybmF0aXZlci5cbiIKKyN+ICIgICAgICAgICAgICAgICBhZHZhcnNlbDogZGV0dGUgYWx0ZXJuYXRpdmV0IGthbiDDuGRlbGVnZ2UgZW4gZWxsZXJzICIKKyN+ICJrb3JyZWt0IGZpbC5cbiIKKyN+ICIgIC0taGVscCAgICAgICB2aXNlciBkZW5uZSBoamVscG1lbGRpbmdlbi5cbiIKKyN+ICIgIC0tdmVyc2lvbiAgICB2aXNlciB2ZXJzam9uc251bW1lcmV0LlxuIgorCisjfiBtc2dpZCAidHJ5IGRlbGV0aW5nICVzIgorI34gbXNnc3RyICJwcsO4dmVyIMOlIHNsZXR0ZSAlcyIKKworI34gbXNnaWQgImZhaWxlZCB0byBpbnN0YWxsICVzOyBpdCB3aWxsIGJlIGxlZnQgYXMgJXM6ICVzIgorI34gbXNnc3RyICJrbGFydGUgaWtrZSBpbnN0YWxsZXJlICVzOyBkZW4gYmxpciB2w6ZyZW5kZSBzb20gJXM6ICVzIgorCisjfiBtc2dpZCAiJXM6IHVuYWJsZSB0byB1bmxvY2sgJXM6ICVzIgorI34gbXNnc3RyICIlczogS2xhcnRlIGlra2UgZmplcm4gbMOlcyBww6UgJXM6ICVzIgorCisjfiBtc2dpZCAiJXMgLSBzdGF0dXMgaXMgJXMuIgorI34gbXNnc3RyICIlcyAtIHN0YXR1cyBlciAlcy4iCisKKyN+IG1zZ2lkICIgbGluayB1bnJlYWRhYmxlIC0gJXMiCisjfiBtc2dzdHIgImxlbmtlIHVsZXNlbGlnIC0gJXMiCisKKyN+IG1zZ2lkICIiCisjfiAid2FybmluZzogJXMgaXMgc3VwcG9zZWQgdG8gYmUgYSBzeW1saW5rIHRvICVzLCBcbiIKKyN+ICJvciBub25leGlzdGVudDsgaG93ZXZlciwgcmVhZGxpbmsgZmFpbGVkOiAlcyIKKyN+IG1zZ3N0ciAiIgorI34gImFkdmFyc2VsOiAlcyBza2FsIHbDpnJlIGVuIHN5bWJvbHNrIGxlbmtlIHRpbCAlcyxcbiIKKyN+ICJlbGxlciBpa2tlLWVrc2lzdGVyZW5kZTsgbGlrZXZlbCBmZWlsZXQgbGVzaW5nIGF2IGxlbmtlOiAlcyIKKworI34gbXNnaWQgIkxlYXZpbmcgJXMgKCVzKSBwb2ludGluZyB0byAlcy4iCisjfiBtc2dzdHIgIkZvcmxhdGVyICVzICglcykgcGVrZW5kZSB0aWwgJXMuIgorCisjfiBtc2dpZCAiVXBkYXRpbmcgJXMgKCVzKSB0byBwb2ludCB0byAlcy4iCisjfiBtc2dzdHIgIk9wcGRhdGVyZXIgJXMgKCVzKSB0aWwgw6UgcGVrZSB0aWwgJXMuIgorCisjfiBtc2dpZCAiUmVtb3ZpbmcgJXMgKCVzKSwgbm90IGFwcHJvcHJpYXRlIHdpdGggJXMuIgorI34gbXNnc3RyICJGamVybmVyICVzICglcyksIHNpZGVuIGRldCBpa2tlIHBhc3NlciBtZWQgJXMuIgorCisjfiBtc2dpZCAiIgorI34gIkNoZWNraW5nIGF2YWlsYWJsZSB2ZXJzaW9ucyBvZiAlcywgdXBkYXRpbmcgbGlua3MgaW4gJXMgLi4uXG4iCisjfiAiKFlvdSBtYXkgbW9kaWZ5IHRoZSBzeW1saW5rcyB0aGVyZSB5b3Vyc2VsZiBpZiBkZXNpcmVkIC0gc2VlIGBtYW4gbG4nLikiCisjfiBtc2dzdHIgIiIKKyN+ICJTamVra2VyIHRpbGdqZW5nZWxpZ2UgdmVyc2pvbmVyIGF2ICVzLCBvcHBkYXRlcmVyIGxlbmtlciBpICVzIC4uLlxuIgorI34gIihEdSBrYW4gZW5kcmUgZGUgc3ltYm9sc2tlIGxlbmtlbmUgZGVyIHNlbHYgaHZpcyBkdSDDuG5za2VyIC0gc2UgwqttYW4gbG7Cuy4pIgorCisjfiBtc2dpZCAic2xhdmUgbGluayBuYW1lICVzIGR1cGxpY2F0ZWQiCisjfiBtc2dzdHIgInNsYXZlLWxlbmtlbmF2biAlcyBlciBkdXBsaXNlcnQiCisKKyN+IG1zZ2lkICJSZWNvdmVyaW5nIGZyb20gcHJldmlvdXMgZmFpbGVkIHVwZGF0ZSBvZiAlcyAuLi4iCisjfiBtc2dzdHIgIkdqZW5vcHByZXR0ZXIgZnJhIHRpZGxpZ2VyZSBmZWlsZXQgb3BwZGF0ZXJpbmcgYXYgJXMgLi4uIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIG9wZW4gJXMgZm9yIHdyaXRlOiAlcyIKKyN+IG1zZ3N0ciAia2xhcnRlIGlra2Ugw6VwbmUgJXMgZm9yIHNrcml2aW5nOiAlcyIKKworI34gbXNnaWQgIkxhc3QgcGFja2FnZSBwcm92aWRpbmcgJXMgKCVzKSByZW1vdmVkLCBkZWxldGluZyBpdC4iCisjfiBtc2dzdHIgIlNpc3RlIHBha2tlIHNvbSB0aWxieXIgJXMgKCVzKSBmamVybmV0LCBzbGV0dGVyIGRlbi4iCisKKyN+IG1zZ2lkICIiCisjfiAiVGhlcmUgaXMgb25seSAxIHByb2dyYW0gd2hpY2ggcHJvdmlkZXMgJXNcbiIKKyN+ICIoJXMpLiBOb3RoaW5nIHRvIGNvbmZpZ3VyZS5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIkRldCBlciBiYXJlIGV0IHByb2dyYW0gc29tIHRpbGJ5ciAlc1xuIgorI34gIiglcykuIERldCBlciBpbmdlbnRpbmcgw6Ugc2V0dGUgb3BwLlxuIgorCisjfiBtc2dpZCAiIgorI34gIlRoZXJlIGFyZSAlcyBhbHRlcm5hdGl2ZXMgd2hpY2ggcHJvdmlkZSBgJXMnLlxuIgorI34gIlxuIgorI34gIiAgU2VsZWN0aW9uICAgIEFsdGVybmF0aXZlXG4iCisjfiAiLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiIKKyN+IG1zZ3N0ciAiIgorI34gIkRldCBlciAlcyBhbHRlcm5hdGl2ZXIgc29tIHRpbGJ5ciDCqyVzwrsuXG4iCisjfiAiXG4iCisjfiAiICBWYWxnICAgICAgICAgQWx0ZXJuYXRpdlxuIgorI34gIi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4iCisKKyN+IG1zZ2lkICJlcnJvciB3cml0aW5nIHN0ZG91dDogJXMiCisjfiBtc2dzdHIgImZlaWwgdmVkIHNrcml2aW5nIHRpbCBzdGFuZGFyZCB1dDogJXMiCisKKyN+IG1zZ2lkICJlcnJvciBvciBlb2YgcmVhZGluZyAlcyBmb3IgJXMgKCVzKSIKKyN+IG1zZ3N0ciAiZmVpbCBlbGxlciBzbHV0dCBww6UgZmlsZW4gdW5kZXIgbGVzaW5nIGF2ICVzIGZvciAlcyAoJXMpIgorCisjfiBtc2dpZCAibWlzc2luZyBuZXdsaW5lIGFmdGVyICVzIgorI34gbXNnc3RyICJtYW5nbGVyIGxpbmplc2tpZnQgZXR0ZXIgJXMiCisKKyN+IG1zZ2lkICJTZXJpb3VzIHByb2JsZW06ICVzIgorI34gbXNnc3RyICJBbHZvcmxpZyBwcm9ibGVtOiAlcyIKKworI34gbXNnaWQgImNvdWxkbid0IGFsbG9jYXRlIG1lbW9yeSBmb3Igc3RyZHVwIGluIGZpbmRwYWNrYWdlKCVzKSIKKyN+IG1zZ3N0ciAia2xhcnRlIGlra2UgdGlsZGVsZSBtaW5uZSBmb3Igc3RyZHVwIGkgZmluZHBhY2thZ2UoJXMpIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGFsbG9jYXRlIGJ1ZmZlciBpbiBidWZmZXJfY29weSAoJXMpIgorI34gbXNnc3RyICJrbGFydGUgaWtrZSB0aWxkZWxlIG1lbGxvbWxhZ2VyIGkgYnVmZmVyX2NvcHkgKCVzKSIKKworI34gbXNnaWQgIkVycm9yIGFsbG9jYXRpbmcgbWVtb3J5IGZvciBjZmdmaWxlbmFtZSIKKyN+IG1zZ3N0ciAiRmVpbCB2ZWQgdGlsb3JkbmluZyBhdiBtaW5uZSBmb3IgY2ZnZmlsZW5hbWUiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gbWFsbG9jIGZvciBpbmZvIGZpbGUgYCUuMjU1cyciCisjfiBtc2dzdHIgImtsYXJ0ZSBpa2tlIHRpbGRlbGUgbWlubmUgZm9yIGluZm9maWxhIMKrJS4yNTVzwrsiCisKKyN+IG1zZ2lkICJkaXZlcnNpb25zIGZpbGUgaGFzIHRvby1sb25nIGxpbmUgb3IgRU9GIFtpXSIKKyN+IG1zZ3N0ciAib21kaXJpZ2VyaW5nc2ZpbGEgaGFyIGVpIGZvciBsYW5nIGxpbmplIGVsbGVyIHNsdXR0IHDDpSBmaWwgW2ldIgorCisjfiBtc2dpZCAicmVhZCBlcnJvciBpbiBkaXZlcnNpb25zIFtpaV0iCisjfiBtc2dzdHIgImxlc2VmZWlsIGkgb21kaXJpZ2VyaW5nc2ZpbGEgW2lpXSIKKworI34gbXNnaWQgInVuZXhwZWN0ZWQgRU9GIGluIGRpdmVyc2lvbnMgW2lpXSIKKyN+IG1zZ3N0ciAidXZlbnRldCBzbHV0dCBww6UgZmlsIGkgb21kaXJpZ2VyaW5nc2ZpbGEgW2lpXSIKKworI34gbXNnaWQgImZnZXRzIGdhdmUgYW4gZW1wdHkgc3RyaW5nIGZyb20gZGl2ZXJzaW9ucyBbaWldIgorI34gbXNnc3RyICLCq2ZnZXRzwrsgZ2EgZW4gdG9tIHN0cmVuZyBmcmEgb21kaXJpZ2VyaW5nc2ZpbGEgW2lpXSIKKworI34gbXNnaWQgImRpdmVyc2lvbnMgZmlsZSBoYXMgdG9vLWxvbmcgbGluZSBvciBFT0YgW2lpXSIKKyN+IG1zZ3N0ciAib21kaXJpZ2VyaW5nc2ZpbGEgaGFyIGVuIGZvciBsYW5nIGxpbmplIGVsbGVyIHNsdXR0IHDDpSBmaWwgW2lpXSIKKworI34gbXNnaWQgInJlYWQgZXJyb3IgaW4gZGl2ZXJzaW9ucyBbaWlpXSIKKyN+IG1zZ3N0ciAibGVzZWZlaWwgaSBvbWRpcmlnZXJpbmdzZmlsIFtpaWldIgorCisjfiBtc2dpZCAidW5leHBlY3RlZCBFT0YgaW4gZGl2ZXJzaW9ucyBbaWlpXSIKKyN+IG1zZ3N0ciAidXZlbnRldCBzbHV0dCBww6UgZmlsIGkgb21kaXJpZ2VyaW5nc2ZpbGEgW2lpaV0iCisKKyN+IG1zZ2lkICJmZ2V0cyBnYXZlIGFuIGVtcHR5IHN0cmluZyBmcm9tIGRpdmVyc2lvbnMgW2lpaV0iCisjfiBtc2dzdHIgIsKrZmdldHPCuyBnYSBlbiB0b20gc3RyZW5nIGZyYSBvbWRpcmlnZXJpbmdzZmlsYSBbaWlpXSIKKworI34gbXNnaWQgImNvdWxkbid0IG1hbGxvYyBpbiBleGVjYmFja2VuZCIKKyN+IG1zZ3N0ciAia2xhcnRlIGlra2UgdXRmw7hyZSDCq21hbGxvY8K7IGkgZXhlY2JhY2tlbmQiCisKKyN+IG1zZ2lkICJjb3VsZG4ndCBzdHJkdXAgaW4gZXhlY2JhY2tlbmQiCisjfiBtc2dzdHIgImtsYXJ0ZSBpa2tlIHV0ZsO4cmUgwqtzdHJkdXDCuyBpIGV4ZWNiYWNrZW5kIgorCisjfiBtc2dpZCAiZmFpbGVkIGFsbG9jYXRpbmcgbWVtb3J5IGZvciB2YXJpYWJsZSBgY3RybGFyZWEnIgorI34gbXNnc3RyICJrbGFydGUgaWtrZSB0aWxvcmRuZSBtaW5uZSBmb3IgdmFyaWFiZWwgwqtjdHJsYXJlYcK7IgorCisjfiBtc2dpZCAiQ2Fubm90IGdldCBFTk9FTlQgdmFsdWUgZnJvbSAlczogJXMiCisjfiBtc2dzdHIgIktsYXJlciBpa2tlIGbDpSBFTk9FTlQtdmVyZGkgZnJhICVzOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byBlbnN1cmUgJXMgbm9uZXhpc3RlbnQ6ICVzIgorI34gbXNnc3RyICJrbGFydGUgaWtrZSBmb3JzaWtyZSBhdCAlcyBpa2tlIGVrc2lzdGVyZXI6ICVzIgorCisjfiBtc2dpZCAiIgorI34gIndhcm5pbmc6ICVzIGlzIHN1cHBvc2VkIHRvIGJlIGEgc2xhdmUgc3ltbGluayB0b1xuIgorI34gIiAlcywgb3Igbm9uZXhpc3RlbnQ7IGhvd2V2ZXIsIHJlYWRsaW5rIGZhaWxlZDogJXMiCisjfiBtc2dzdHIgIiIKKyN+ICJhZHZhcnNlbDogJXMgc2thbCB2w6ZyZSBlbiBzbGF2ZSBzeW1ib2xzayBsZW5rZSB0aWxcbiIKKyN+ICIlcyBlbGxlciBpa2tlLWVrc2lzdGVyZW5kZTsgbGlrZXZlbCBmZWlsZXQgbGVzaW5nIGF2IGxlbmtlOiAlcyIKKworI34gbXNnaWQgIiIKKyN+ICJkcGtnOiByZWdhcmRpbmcgJXMgY29udGFpbmluZyAlczpcbiIKKyN+ICIgcGFja2FnZSB1c2VzIEJyZWFrczsgbm90IHN1cHBvcnRlZCBpbiB0aGlzIGRwa2dcbiIKKyN+IG1zZ3N0ciAiIgorI34gImRwa2c6IFZlZHLDuHJlbmRlICVzIHNvbSBpbm5laG9sZGVyICVzOlxuIgorI34gIiBwYWtrZSBicnVrZXIgQnJlYWtzIHNvbSBpa2tlciBlciBzdMO4dHRldCBpIGRlbm5lIGRwa2dcbiIKKworI34gbXNnaWQgInVuc3VwcG9ydGVkIGRlcGVuZGVuY3kgcHJvYmxlbSAtIG5vdCBpbnN0YWxsaW5nICUuMjUwcyIKKyN+IG1zZ3N0ciAidXN0w7h0dGV0IGF2aGVuZ2lnaGV0c3Byb2JsZW0gLSBpbnN0YWxsZXJlciBpa2tlICUuMjUwcyIKKworI34gbXNnaWQgImRwa2c6IHdhcm5pbmcgLSBpZ25vcmluZyBCcmVha3MgIVxuIgorI34gbXNnc3RyICJkcGtnOiBBZHZhcnNlbCAtIGlnbm9yZXJlciBCcmVha3MhXG4iCisKKyN+IG1zZ2lkICJ0byIKKyN+IG1zZ3N0ciAidGlsIgorCisjfiBtc2dpZCAiZnJvbSIKKyN+IG1zZ3N0ciAiZnJhIgorCisjfiBtc2dpZCAiZXJyb3IgcmVhZGluZyAlcyIKKyN+IG1zZ3N0ciAiZmVpbCB2ZWQgbGVzaW5nIGF2ICVzIgorCisjfiBtc2dpZCAidHdvIG1vZGVzIHNwZWNpZmllZDogJXMgYW5kIC0tJXMiCisjfiBtc2dzdHIgInRvIG1vZGkgb3BwZ2l0dDogJXMgb2cgLS0lcyIKKworI34gbXNnaWQgIm1hbmZsYWciCisjfiBtc2dzdHIgIm1hbi1mbGFnZyIKKworI34gbXNnaWQgIiVzOiBmYWlsZWQgdG8gZXhlYyBnemlwIC1kYyIKKyN+IG1zZ3N0ciAiJXM6IGtsYXJ0ZSBpa2tlIGtqw7hyZSDCq2d6aXAgLWRjwrsiCisKKyN+IG1zZ2lkICIlczogZmFpbGVkIHRvIGV4ZWMgYnppcDIgLWRjIgorI34gbXNnc3RyICIlczoga2xhcnRlIGlra2Uga2rDuHJlIMKrYnppcDIgLWRjwrsiCisKKyN+IG1zZ2lkICIlczogZmFpbGVkIHRvIGV4ZWMgYnppcDIgJXMiCisjfiBtc2dzdHIgIiVzOiBLbGFydGUgaWtrZSBrasO4cmUgYnppcDIgJXMiCisKKyN+IG1zZ2lkICJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6IHZlcnNpb24gY29udGFpbnMgYCAnIgorI34gbXNnc3RyICLCqyVzwrstZmVsdCwgcmVmZXJhbnNlIHRpbCDCqyUuMjU1c8K7OiB2ZXJzam9uIGlubmVob2xkZXIgwqsgwrsiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiJXM6IGNsb3NlICVzIGFmdGVyIHJlYWQ6ICVzIgorI34gbXNnc3RyICJrbGFydGUgaWtrZSBsdWtrZSBldHRlciBsZXNpbmc6IMKrJS4yNTVzwrsiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiLS1hZG1pbmRpciBuZWVkcyBhIGRpcmVjdG9yeSBhcmd1bWVudCIKKyN+IG1zZ3N0ciAiLS1idWlsZCBrcmV2ZXIgZW4ga2F0YWxvZ3BhcmFtZXRlciIKKworIywgZnV6enkKKyN+IG1zZ2lkICItLXJlbW92ZSBuZWVkcyBhIHNpbmdsZSBhcmd1bWVudCIKKyN+IG1zZ3N0ciAiLS0lcyBrcmV2ZXIgZXQgLmRlYi1maWxuYXZuIHNvbSBwYXJhbWV0ZXIiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiLS10cnVlbmFtZSBuZWVkcyBhIHNpbmdsZSBhcmd1bWVudCIKKyN+IG1zZ3N0ciAiLS1idWlsZCBrcmV2ZXIgZW4ga2F0YWxvZ3BhcmFtZXRlciIKKworIywgZnV6enkKKyN+IG1zZ2lkICItLXJlbW92ZSBuZWVkcyBvbmUgYXJndW1lbnRzIgorI34gbXNnc3RyICItLSVzIHRhciBpbmdlbiBhcmd1bWVudGVyIgorCisjLCBmdXp6eQorI34gbXNnaWQgImRwa2ctc3RhdG92ZXJyaWRlOiAlcyIKKyN+IG1zZ3N0ciAiwqtzdGF0b3ZlcnJpZGXCuy1maWwgwqslLjI1MHPCuyIKKworIywgZnV6enkKKyN+IG1zZ2lkICItLWFkbWluZGlyIG5lZWRzIGEgPGRpcmVjdG9yeT4gYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tYnVpbGQga3JldmVyIGVuIGthdGFsb2dwYXJhbWV0ZXIiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiZmFpbGVkIHRvIG9wZW4gJXM6ICVzIgorI34gbXNnc3RyICJrbGFydGUgaWtrZSBrasO4cmUgJXMgKCUuMjUwcykiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgJXMgYXMgJXMiCisjfiBtc2dzdHIgImtsYXJ0ZSBpa2tlIGluc3RhbGxlcmUgwqslLjI1MHPCuyBzb20gwqslLjI1MHPCuyIKKworIywgZnV6enkKKyN+IG1zZ2lkICIiCisjfiAiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIDxjb21tYW5kPlxuIgorI34gIlxuIgorI34gIkNvbW1hbmRzOlxuIgorI34gIiAgLWl8LS1pbnN0YWxsICAgICAgIDwuZGViIGZpbGUgbmFtZT4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRpcj4gLi4uXG4iCisjfiAiICAtLXVucGFjayAgICAgICAgICAgPC5kZWIgZmlsZSBuYW1lPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyPiAuLi5cbiIKKyN+ICIgIC1BfC0tcmVjb3JkLWF2YWlsICA8LmRlYiBmaWxlIG5hbWU+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXI+IC4uLlxuIgorI34gIiAgLS1jb25maWd1cmUgICAgICAgIDxwYWNrYWdlLW5hbWU+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorI34gIiAgLXJ8LS1yZW1vdmUgICAgICAgIDxwYWNrYWdlLW5hbWU+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorI34gIiAgLVB8LS1wdXJnZSAgICAgICAgIDxwYWNrYWdlLW5hbWU+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorI34gIiAgLS1nZXQtc2VsZWN0aW9ucyBbPHBhdHRlcm4+IC4uLl0gICAgIEdldCBsaXN0IG9mIHNlbGVjdGlvbnMgdG8gc3Rkb3V0LlxuIgorI34gIiAgLS1zZXQtc2VsZWN0aW9ucyAgICAgICAgICAgICAgICAgICAgIFNldCBwYWNrYWdlIHNlbGVjdGlvbnMgZnJvbSAiCisjfiAic3RkaW4uXG4iCisjfiAiICAtLWNsZWFyLXNlbGVjdGlvbnMgICAgICAgICAgICAgICAgICAgRGVzZWxlY3QgZXZlcnkgbm9uLWVzc2VudGlhbCAiCisjfiAicGFja2FnZS5cbiIKKyN+ICIgIC0tdXBkYXRlLWF2YWlsIDxQYWNrYWdlcy1maWxlPiAgICAgICBSZXBsYWNlIGF2YWlsYWJsZSBwYWNrYWdlcyBpbmZvLlxuIgorI34gIiAgLS1tZXJnZS1hdmFpbCA8UGFja2FnZXMtZmlsZT4gICAgICAgIE1lcmdlIHdpdGggaW5mbyBmcm9tIGZpbGUuXG4iCisjfiAiICAtLWNsZWFyLWF2YWlsICAgICAgICAgICAgICAgICAgICAgICAgRXJhc2UgZXhpc3RpbmcgYXZhaWxhYmxlIGluZm8uXG4iCisjfiAiICAtLWZvcmdldC1vbGQtdW5hdmFpbCAgICAgICAgICAgICAgICAgRm9yZ2V0IHVuaW5zdGFsbGVkIHVuYXZhaWxhYmxlICIKKyN+ICJwa2dzLlxuIgorI34gIiAgLXN8LS1zdGF0dXMgPHBhY2thZ2UtbmFtZT4gLi4uICAgICAgIERpc3BsYXkgcGFja2FnZSBzdGF0dXMgZGV0YWlscy5cbiIKKyN+ICIgIC1wfC0tcHJpbnQtYXZhaWwgPHBhY2thZ2UtbmFtZT4gLi4uICBEaXNwbGF5IGF2YWlsYWJsZSB2ZXJzaW9uICIKKyN+ICJkZXRhaWxzLlxuIgorI34gIiAgLUx8LS1saXN0ZmlsZXMgPHBhY2thZ2UtbmFtZT4gLi4uICAgIExpc3QgZmlsZXMgYG93bmVkJyBieSBwYWNrYWdlKHMpLlxuIgorI34gIiAgLWx8LS1saXN0IFs8cGF0dGVybj4gLi4uXSAgICAgICAgICAgIExpc3QgcGFja2FnZXMgY29uY2lzZWx5LlxuIgorI34gIiAgLVN8LS1zZWFyY2ggPHBhdHRlcm4+IC4uLiAgICAgICAgICAgIEZpbmQgcGFja2FnZShzKSBvd25pbmcgZmlsZShzKS5cbiIKKyN+ICIgIC1DfC0tYXVkaXQgICAgICAgICAgICAgICAgICAgICAgICAgICBDaGVjayBmb3IgYnJva2VuIHBhY2thZ2UocykuXG4iCisjfiAiICAtLXByaW50LWFyY2hpdGVjdHVyZSAgICAgICAgICAgICAgICAgUHJpbnQgZHBrZyBhcmNoaXRlY3R1cmUuXG4iCisjfiAiICAtLWNvbXBhcmUtdmVyc2lvbnMgPGE+IDxyZWw+IDxiPiAgICAgQ29tcGFyZSB2ZXJzaW9uIG51bWJlcnMgLSBzZWUgIgorI34gImJlbG93LlxuIgorI34gIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisjfiAiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgICAgICAgICAgICAgU2hvdyB0aGUgdmVyc2lvbi5cbiIKKyN+ICIgIC0tZm9yY2UtaGVscCB8IC1EaHwtLWRlYnVnPWhlbHAgICAgICBIZWxwIG9uIGZvcmNpbmcgcmVzcC4gZGVidWdnaW5nLlxuIgorI34gIiAgLS1saWNlbnNlIHwgLS1saWNlbmNlICAgICAgICAgICAgICAgIFByaW50IGNvcHlyaWdodCBsaWNlbnNpbmcgdGVybXMuXG4iCisjfiAiXG4iCisjfiAiVXNlIGRwa2cgLWJ8LS1idWlsZHwtY3wtLWNvbnRlbnRzfC1lfC0tY29udHJvbHwtSXwtLWluZm98LWZ8LS1maWVsZHxcbiIKKyN+ICIgLXh8LS1leHRyYWN0fC1YfC0tdmV4dHJhY3R8LS1mc3lzLXRhcmZpbGUgIG9uIGFyY2hpdmVzICh0eXBlICVzIC0tIgorI34gImhlbHApLlxuIgorI34gIlxuIgorI34gIkZvciBpbnRlcm5hbCB1c2U6IGRwa2cgLS1hc3NlcnQtc3VwcG9ydC1wcmVkZXBlbmRzIHwgLS1wcmVkZXAtcGFja2FnZSB8XG4iCisjfiAiICAtLWFzc2VydC13b3JraW5nLWVwb2NoIHwgLS1hc3NlcnQtbG9uZy1maWxlbmFtZXMgfCAtLWFzc2VydC1tdWx0aS0iCisjfiAiY29ucmVwLlxuIgorI34gIlxuIgorI34gIk9wdGlvbnM6XG4iCisjfiAiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyN+ICIgIC0tcm9vdD08ZGlyZWN0b3J5PiAgICAgICAgIEluc3RhbGwgb24gYWx0ZXJuYXRpdmUgc3lzdGVtIHJvb3RlZCAiCisjfiAiZWxzZXdoZXJlLlxuIgorI34gIiAgLS1pbnN0ZGlyPTxkaXJlY3Rvcnk+ICAgICAgQ2hhbmdlIGluc3QnbiByb290IHdpdGhvdXQgY2hhbmdpbmcgYWRtaW4gIgorI34gImRpci5cbiIKKyN+ICIgIC1PfC0tc2VsZWN0ZWQtb25seSAgICAgICAgIFNraXAgcGFja2FnZXMgbm90IHNlbGVjdGVkIGZvciBpbnN0YWxsLyIKKyN+ICJ1cGdyYWRlLlxuIgorI34gIiAgLUV8LS1za2lwLXNhbWUtdmVyc2lvbiAgICAgU2tpcCBwYWNrYWdlcyB3aG9zZSBzYW1lIHZlcnNpb24gaXMgIgorI34gImluc3RhbGxlZC5cbiIKKyN+ICIgIC1HfC0tcmVmdXNlLWRvd25ncmFkZSAgICAgIFNraXAgcGFja2FnZXMgd2l0aCBlYXJsaWVyIHZlcnNpb24gdGhhbiAiCisjfiAiaW5zdGFsbGVkLlxuIgorI34gIiAgLUJ8LS1hdXRvLWRlY29uZmlndXJlICAgICAgSW5zdGFsbCBldmVuIGlmIGl0IHdvdWxkIGJyZWFrIHNvbWUgb3RoZXIgIgorI34gInBhY2thZ2UuXG4iCisjfiAiICAtLW5vLWRlYnNpZyAgICAgICAgICAgICAgICBEbyBub3QgdHJ5IHRvIHZlcmlmeSBwYWNrYWdlIHNpZ25hdHVyZXMuXG4iCisjfiAiICAtLW5vLWFjdHwtLWRyeS1ydW58LS1zaW11bGF0ZVxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSnVzdCBzYXkgd2hhdCB3ZSB3b3VsZCBkbyAtIGRvbid0IGRvIGl0LlxuIgorI34gIiAgLUR8LS1kZWJ1Zz08b2N0YWw+ICAgICAgICAgRW5hYmxlIGRlYnVnZ2luZyAtIHNlZSAtRGhlbHAgb3IgLS0iCisjfiAiZGVidWc9aGVscC5cbiIKKyN+ICIgIC0tc3RhdHVzLWZkIDxuPiAgICAgICAgICAgIFNlbmQgc3RhdHVzIGNoYW5nZSB1cGRhdGVzIHRvIGZpbGUgIgorI34gImRlc2NyaXB0b3IgPG4+LlxuIgorI34gIiAgLS1sb2c9PGZpbGVuYW1lPiAgICAgICAgICAgTG9nIHN0YXR1cyBjaGFuZ2VzIGFuZCBhY3Rpb25zIHRvICIKKyN+ICI8ZmlsZW5hbWU+LlxuIgorI34gIiAgLS1pZ25vcmUtZGVwZW5kcz08cGFja2FnZT4sLi4uIElnbm9yZSBkZXBlbmRlbmNpZXMgaW52b2x2aW5nICIKKyN+ICI8cGFja2FnZT4uXG4iCisjfiAiICAtLWZvcmNlLS4uLiAgICAgICAgICAgICAgICAgICAgT3ZlcnJpZGUgcHJvYmxlbXMgLSBzZWUgLS1mb3JjZS1oZWxwLlxuIgorI34gIiAgLS1uby1mb3JjZS0uLi58LS1yZWZ1c2UtLi4uICAgIFN0b3Agd2hlbiBwcm9ibGVtcyBlbmNvdW50ZXJlZC5cbiIKKyN+ICIgIC0tYWJvcnQtYWZ0ZXIgPG4+ICAgICAgICAgICAgICBBYm9ydCBhZnRlciBlbmNvdW50ZXJpbmcgPG4+IGVycm9ycy5cbiIKKyN+ICJcbiIKKyN+ICJDb21wYXJpc29uIG9wZXJhdG9ycyBmb3IgLS1jb21wYXJlLXZlcnNpb25zIGFyZTpcbiIKKyN+ICIgIGx0IGxlIGVxIG5lIGdlIGd0ICAgICAgICh0cmVhdCBlbXB0eSB2ZXJzaW9uIGFzIGVhcmxpZXIgdGhhbiBhbnkgIgorI34gInZlcnNpb24pO1xuIgorI34gIiAgbHQtbmwgbGUtbmwgZ2UtbmwgZ3QtbmwgKHRyZWF0IGVtcHR5IHZlcnNpb24gYXMgbGF0ZXIgdGhhbiBhbnkgIgorI34gInZlcnNpb24pO1xuIgorI34gIiAgPCA8PCA8PSA9ID49ID4+ID4gICAgICAgKG9ubHkgZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBjb250cm9sIGZpbGUgIgorI34gInN5bnRheCkuXG4iCisjfiAiXG4iCisjfiAiVXNlIGBkc2VsZWN0JyBvciBgYXB0aXR1ZGUnIGZvciB1c2VyLWZyaWVuZGx5IHBhY2thZ2UgbWFuYWdlbWVudC5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIkJydWs6IFxuIgorI34gIiAgZHBrZyAtaXwtLWluc3RhbGwgICAgICA8LmRlYi1maWxuYXZuPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSAiCisjfiAiPGthdGFsb2c+IC4uLlxuIgorI34gIiAgZHBrZyAtLXVucGFjayAgICAgICAgICA8LmRlYi1maWxuYXZuPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSAiCisjfiAiPGthdGFsb2c+IC4uLlxuIgorI34gIiAgZHBrZyAtQXwtLXJlY29yZC1hdmFpbCA8LmRlYi1maWxuYXZuPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSAiCisjfiAiPGthdGFsb2c+IC4uLlxuIgorI34gIiAgZHBrZyAtLWNvbmZpZ3VyZSAgICAgICAgICAgICAgPHBha2tlbmF2bj4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisjfiAiICBkcGtnIC1yfC0tcmVtb3ZlIHwgLVB8LS1wdXJnZSA8cGFra2VuYXZuPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyN+ICIgIGRwa2cgLS1nZXQtc2VsZWN0aW9ucyBbPG3DuG5zdGVyPiAuLi5dICAgIHNlbmQgbGlzdGUgb3ZlciB2YWxnZW5lIHRpbCAiCisjfiAic3RhbmRhcmQtdXRcbiIKKyN+ICIgIGRwa2cgLS1zZXQtc2VsZWN0aW9ucyAgICAgICAgICAgICAgICAgICAgb3BwZ2kgcGFra2V2YWxnZW5lIGZyYSAiCisjfiAic3RhbmRhcmQtaW5uXG4iCisjfiAiICBkcGtnIC0tdXBkYXRlLWF2YWlsIDxwYWtrZXItZmlsPiAgICAgICBieXR0IHV0IGluZm9ybWFzam9uIG9tICIKKyN+ICJ0aWxnamVuZ2VsaWdlIHBha2tlclxuIgorI34gIiAgZHBrZyAtLW1lcmdlLWF2YWlsIDxwYWtrZXItZmlsPiAgICAgICAgZmxldHQgbWVkIGluZm9ybWFzam9uIGZyYSBmaWxcbiIKKyN+ICIgIGRwa2cgLS1jbGVhci1hdmFpbCAgICAgICAgICAgICAgICAgICAgICAgc2xldHQgZWtzaXN0ZXJlbmRlIGluZm8gb20gIgorI34gInRpbGdqZW5nZWxpZ2UgcGFra2VyXG4iCisjfiAiICBkcGtnIC0tZm9yZ2V0LW9sZC11bmF2YWlsICAgICAgICAgICAgICAgZ2xlbSB1dGlsZ2plbmdlbGlnZSwgaWtrZSAiCisjfiAiaW5zdGFsbGVydGUgcGFra2VyXG4iCisjfiAiICBkcGtnIC1zfC0tc3RhdHVzIDxwYWtrZW5hdm4+IC4uLiAgICAgICAgIHZpcyBkZXRhbGplciBvbSBwYWtrZXN0YXR1c1xuIgorI34gIiAgZHBrZyAtcHwtLXByaW50LWF2YWlsIDxwYWtrZW5hdm4+IC4uLiAgICB2aXMgdGlsZ2plbmdlbGlnIHZlcnNqb25cbiIKKyN+ICIgIGRwa2cgLUx8LS1saXN0ZmlsZXMgPHBha2tlbmF2bj4gLi4uICAgICAgdmlzIGRlIGZpbGVuZSBzb20ga29tbWVyIGZyYSAiCisjfiAicGFra2EocilcbiIKKyN+ICIgIGRwa2cgLWx8LS1saXN0IFs8bcO4bnN0ZXI+IC4uLl0gICAgICAgICAgIHZpcyBvdmVyc2lrdGxpZyBwYWtrZWxpc3RlXG4iCisjfiAiICBkcGtnIC1TfC0tc2VhcmNoIDxtw7huc3Rlcj4gLi4uICAgICAgICAgICBmaW5kIHBha2tlL3Bha2tlciBzb20gIgorI34gImlubmVob2xkZXIgZmlsYSAocilcbiIKKyN+ICIgIGRwa2cgLUN8LS1hdWRpdCAgICAgICAgICAgICAgICAgICAgICAgICAgc2pla2sgZm9yIMO4ZGVsYWd0ZSBwYWtrZXJcbiIKKyN+ICIgIGRwa2cgLS1wcmludC1hcmNoaXRlY3R1cmUgICAgICAgICAgICAgICAgdmlzIG3DpWxhcmtpdGVrdHVyIChicnVrZXIgIgorI34gIkdDQylcbiIKKyN+ICIgIGRwa2cgLS1jb21wYXJlLXZlcnNpb25zIDxhPiA8cmVsPiA8Yj4gICAgc2FtbWVubGlrbmUgdmVyc2pvbnNudW1tZXIsIHNlICIKKyN+ICJuZWRlbmZvclxuIgorI34gIiAgZHBrZyAtLWhlbHAgfCAtLXZlcnNpb24gICAgICAgICAgICAgICAgICB2aXMgZGVubmUgaGplbHBhIC8gIgorI34gInZlcnNqb25zbnVtbWVyXG4iCisjfiAiICBkcGtnIC0tZm9yY2UtaGVscCB8IC1EaHwtLWRlYnVnPWhlbHAgICAgIGhqZWxwIG9tIHR2aW5naW5nIG9nIGF2bHVzaW5nXG4iCisjfiAiICBkcGtnIC0tbGljZW5jZSAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpcyBvcHBoYXZzcmV0dHMtIG9nICIKKyN+ICJsaXNlbnN2aWxrw6VyXG4iCisjfiAiXG4iCisjfiAiQnJ1ayBkcGtnIC1ifC0tYnVpbGR8LWN8LS1jb250ZW50c3wtZXwtLWNvbnRyb2x8LUl8LS1pbmZvfC1mfC0tZmllbGR8XG4iCisjfiAiIC14fC0tZXh0cmFjdHwtWHwtLXZleHRyYWN0fC0tZnN5cy10YXJmaWxlICBww6UgYXJraXZlciAoc2tyaXYgJXMgLS0iCisjfiAiaGVscC4pXG4iCisjfiAiXG4iCisjfiAiRm9yIGludGVybnQgYnJ1azogZHBrZyAtLWFzc2VydC1zdXBwb3J0LXByZWRlcGVuZHMgfCAtLXByZWRlcC1wYWNrYWdlIHxcbiIKKyN+ICIgIC0tYXNzZXJ0LXdvcmtpbmctZXBvY2ggfCAtLWFzc2VydC1sb25nLWZpbGVuYW1lcyB8IC0tYXNzZXJ0LW11bHRpLSIKKyN+ICJjb25yZXBcbiIKKyN+ICJcbiIKKyN+ICJPcHNqb25lcjpcbiIKKyN+ICIgIC0tYWRtaW5kaXI9PGthdGFsb2c+ICAgICBCcnVrIDxrYXRhbG9nPiBpIHN0ZWRldCBmb3IgJXNcbiIKKyN+ICIgIC0tcm9vdD08a2F0YWxvZz4gICAgICAgICAgIEluc3RhbGxlciBww6UgYWx0ZXJuYXRpdnQgc3lzdGVtIG1lZCBlbiBhbm5lbiAiCisjfiAiZmlscm90XG4iCisjfiAiICAtLWluc3RkaXI9PGthdGFsb2c+ICAgICAgICBTa2lmdCBpbnN0YWxsYXNqb25zcm90IHV0ZW4gw6Ugc2tpZnRlICIKKyN+ICJhZG1pbmlzdHJhc2pvbnNrYXRhbG9nXG4iCisjfiAiICAtT3wtLXNlbGVjdGVkLW9ubHkgICAgICAgICBIb3BwIG92ZXIgcGFra2VyIHNvbSBpa2tlIGVyIHZhbGd0IGZvciAiCisjfiAiaW5zdGFsbGFzam9uL29wcGdyYWRlcmluZ1xuIgorI34gIiAgLUV8LS1za2lwLXNhbWUtdmVyc2lvbiAgICAgSG9wcCBvdmVyIHBha2tlciBkZXIgZGVuIHNhbW1lIHZlcnNqb25lbiBlciAiCisjfiAiaW5zdGFsbGVydCBmcmEgZsO4clxuIgorI34gIiAgLUd8LS1yZWZ1c2UtZG93bmdyYWRlICAgICAgSG9wcCBvdmVyIHBha2tlciBtZWQgbGF2ZXJlIHZlcnNqb25zbnVtbWVyICIKKyN+ICJlbm4gZGVuIGluc3RhbGxlcnRlXG4iCisjfiAiICAtQnwtLWF1dG8tZGVjb25maWd1cmUgICAgICBJbnN0YWxsZXIgc2VsdiBvbSBkZXQga29tbWVyIHRpbCDDpSDDuGRlbGVnZ2UgIgorI34gImFuZHJlIHBha2tlclxuIgorI34gIiAgLS1uby1kZWJzaWcgICAgICAgICAgICAgICAgSWtrZSBwcsO4diDDpSBiZWtyZWZ0ZSBwYWtrZXNpZ25hdHVyZXJcbiIKKyN+ICIgIC0tbm8tYWN0fC0tZHJ5LXJ1bnwtLXNpbXVsYXRlXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBWaXMgYmFyZSBkZXQgc29tIGtvbW1lciB0aWwgw6Ugc2tqZSAtICIKKyN+ICJ1dGVuIMOlIGdqw7hyZSBkZXRcbiIKKyN+ICIgIC1EfC0tZGVidWc9PG9rdGFsPiAgICAgICAgIFNsw6UgcMOlIGF2bHVzaW5nIC0gc2UgLURoZWxwIGVsbGVyIC0tIgorI34gImRlYnVnPWhlbHBcbiIKKyN+ICIgIC0tc3RhdHVzLWZkIDxuPiAgICAgICAgICAgIFNlbmQgc3RhdHVzZW5kcmluZ3NvcHBkYXRlcmluZ2VyIHRpbCAiCisjfiAiZmlsZGVza3JpcHRvciA8bj5cbiIKKyN+ICIgIC0tbG9nPTxmaWxuYXZuPiAgICAgICAgICAgIExvZ2cgc3RhdHVzZW5kcmluZ2VyIG9nIGhhbmRsaW5nZXIgdGlsICIKKyN+ICI8ZmlsbmF2bj5cbiIKKyN+ICIgIC0taWdub3JlLWRlcGVuZHM9PHBha2tlPiwuLi4gICBJZ25vcmVyIHBha2tla3JhdiBtZWQgcGFra2VuIDxwYWtrZT5cbiIKKyN+ICIgIC0tZm9yY2UtLi4uICAgICAgICAgICAgICAgICAgICBUdmluZyBnamVubm9tIG9wZXJhc2pvbiAtIHNlIC0tZm9yY2UtIgorI34gImhlbHBcbiIKKyN+ICIgIC0tbm8tZm9yY2UtLi4ufC0tcmVmdXNlLS4uLiAgICBTdG9wcCBuw6VyIHByb2JsZW0gb3Bwc3TDpXJcbiIKKyN+ICIgIC0tYWJvcnQtYWZ0ZXIgPG4+ICAgICAgICAgICAgICBBdmJyeXQgZXR0ZXIgIDxuPiBmZWlsXG4iCisjfiAiXG4iCisjfiAiU2FtbWVubGlrbmluZ3NvcGVyYXRvcmVyIHRpbCAtLWNvbXBhcmUtdmVyc2lvbnMgZXI6XG4iCisjfiAiIGx0IGxlIGVxIG5lIGdlIGd0ICAgICAgIChzZSBww6UgwqtpbmdlbiB2ZXJzam9uwrsgc29tIGVsZHJlIGVubiBhbmRyZSAiCisjfiAidmVyc2pvbmVyKTtcbiIKKyN+ICIgbHQtbmwgbGUtbmwgZ2UtbmwgZ3QtbmwgKHNlIHDDpSDCq2luZ2VuIHZlcnNqb27CuyBzb20gbnllcmUgZW5uIGFuZHJlICIKKyN+ICJ2ZXJzam9uZXIpO1xuIgorI34gIiA8IDw8IDw9ID0gPj0gPj4gPiAgICAgICAoYmFyZSBmb3Iga29tcGF0aWJpbGl0ZXQgbWVkIHN5bnRha3NlbiBpICIKKyN+ICJrb250cm9sbGZpbGEpLlxuIgorI34gIlxuIgorI34gIkJydWsgwqtkc2VsZWN0wrsgZWxsZXIgwqthcHRpdHVkZcK7Zm9yIGVuIGxpdHQgbWVyIGJydWtlcnZlbm5saWcgIgorI34gInBha2tlaMOlbmR0ZXJpbmcuXG4iCisKKyN+IG1zZ2lkICIgIFBhY2thZ2UgIgorI34gbXNnc3RyICIgIFBha2tlbiAiCisKKyN+IG1zZ2lkICIgd2hpY2ggcHJvdmlkZXMgIgorI34gbXNnc3RyICIgc29tIHRpbGJ5ciAiCisKKyN+IG1zZ2lkICIgaXMgdG8gYmUgcmVtb3ZlZC5cbiIKKyN+IG1zZ3N0ciAiIHNrYWwgZmplcm5lcy5cbiIKKworI34gbXNnaWQgIiAgVmVyc2lvbiBvZiAiCisjfiBtc2dzdHIgIiAgVmVyc2pvbmVuIGF2ICIKKworI34gbXNnaWQgIiBvbiBzeXN0ZW0gaXMgIgorI34gbXNnc3RyICIgcMOlIHN5c3RlbWV0IGVyICIKKworI34gbXNnaWQgIiBpcyBub3QgaW5zdGFsbGVkLlxuIgorI34gbXNnc3RyICIgZXIgaWtrZSBpbnN0YWxsZXJ0LlxuIgorCisjfiBtc2dpZCAiIHRvOiAlc1xuIgorI34gbXNnc3RyICIgdGlsOiAlc1xuIgorCisjfiBtc2dpZCAiZmdldHBvcyBmYWlsZWQiCisjfiBtc2dzdHIgIsKrZmdldHBvc8K7IG1pc2x5a3RlcyIKKworI34gbXNnaWQgImZzZXRwb3MgZmFpbGVkIgorI34gbXNnc3RyICLCq2ZzZXRwb3PCuyBtaXNseWt0ZXMiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiIgorI34gIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSA8Y29tbWFuZD5cbiIKKyN+ICJcbiIKKyN+ICJDb21tYW5kczpcbiIKKyN+ICIgIC1ifC0tYnVpbGQgPGRpcmVjdG9yeT4gWzxkZWI+XSAgICBCdWlsZCBhbiBhcmNoaXZlLlxuIgorI34gIiAgLWN8LS1jb250ZW50cyA8ZGViPiAgICAgICAgICAgICAgIExpc3QgY29udGVudHMuXG4iCisjfiAiICAtSXwtLWluZm8gPGRlYj4gWzxjZmlsZT4uLi5dICAgICAgU2hvdyBpbmZvIHRvIHN0ZG91dC5cbiIKKyN+ICIgIC1XfC0tc2hvdyA8ZGViPiAgICAgICAgICAgICAgICAgICBTaG93IGluZm9ybWF0aW9uIG9uIHBhY2thZ2UocylcbiIKKyN+ICIgIC1mfC0tZmllbGQgPGRlYj4gWzxjZmllbGQ+Li4uXSAgICBTaG93IGZpZWxkKHMpIHRvIHN0ZG91dC5cbiIKKyN+ICIgIC1lfC0tY29udHJvbCA8ZGViPiBbPGRpcmVjdG9yeT5dICBFeHRyYWN0IGNvbnRyb2wgaW5mby5cbiIKKyN+ICIgIC14fC0tZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PiAgICBFeHRyYWN0IGZpbGVzLlxuIgorI34gIiAgLVh8LS12ZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PiAgIEV4dHJhY3QgJiBsaXN0IGZpbGVzLlxuIgorI34gIiAgLS1mc3lzLXRhcmZpbGUgPGRlYj4gICAgICAgICAgICAgIE91dHB1dCBmaWxlc3lzdGVtIHRhcmZpbGUuXG4iCisjfiAiICAtaHwtLWhlbHAgICAgICAgICAgICAgICAgICAgICAgICAgRGlzcGxheSB0aGlzIG1lc3NhZ2UuXG4iCisjfiAiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgICAgICAgICAgU2hvdyB2ZXJzaW9uLlxuIgorI34gIiAgLS1saWNlbnNlIHwgLS1saWNlbmNlICAgICAgICAgICAgIFNob3cgbGljZW5zZS5cbiIKKyN+ICJcbiIKKyN+ICI8ZGViPiBpcyB0aGUgZmlsZW5hbWUgb2YgYSBEZWJpYW4gZm9ybWF0IGFyY2hpdmUuXG4iCisjfiAiPGNmaWxlPiBpcyB0aGUgbmFtZSBvZiBhbiBhZG1pbmlzdHJhdGl2ZSBmaWxlIGNvbXBvbmVudC5cbiIKKyN+ICI8Y2ZpZWxkPiBpcyB0aGUgbmFtZSBvZiBhIGZpZWxkIGluIHRoZSBtYWluIGBjb250cm9sJyBmaWxlLlxuIgorI34gIlxuIgorI34gIk9wdGlvbnM6XG4iCisjfiAiICAtLXNob3dmb3JtYXQ9PGZvcm1hdD4gICAgICBVc2UgYWx0ZXJuYXRpdmUgZm9ybWF0IGZvciAtLXNob3cuXG4iCisjfiAiICAtRCAgICAgICAgICAgICAgICAgICAgICAgICBFbmFibGUgZGVidWdnaW5nIG91dHB1dC5cbiIKKyN+ICIgIC0tb2xkLCAtLW5ldyAgICAgICAgICAgICAgIFNlbGVjdCBhcmNoaXZlIGZvcm1hdC5cbiIKKyN+ICIgIC0tbm9jaGVjayAgICAgICAgICAgICAgICAgIFN1cHByZXNzIGNvbnRyb2wgZmlsZSBjaGVjayAoYnVpbGQgYmFkICIKKyN+ICJwYWNrYWdlKS5cbiIKKyN+ICIgIC16IyAgICAgICAgICAgICAgICAgICAgICAgIFNldCB0aGUgY29tcHJlc3Npb24gbGV2ZWwgd2hlbiBidWlsZGluZy5cbiIKKyN+ICIgIC1aPHR5cGU+ICAgICAgICAgICAgICAgICAgIFNldCB0aGUgY29tcHJlc3Npb24gdHlwZSB0byB1c2Ugd2hlbiAiCisjfiAiYnVpbGRpbmcuXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBbGxvd2VkIHZhbHVlczogZ3ppcCwgYnppcDIsIG5vbmUuXG4iCisjfiAiXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJLb21tYW5kbzpcbiIKKyN+ICIgIC1ifC0tYnVpbGQgPGthdGFsb2c+IFs8ZGViPl0gICAgICBCeWdnIGV0IGFya2l2LlxuIgorI34gIiAgLWN8LS1jb250ZW50cyA8ZGViPiAgICAgICAgICAgICAgIFZpcyBpbm5ob2xkLlxuIgorI34gIiAgLUl8LS1pbmZvIDxkZWI+IFs8Y2ZpbD4uLi5dICAgICAgIEluZm9ybWFzam9uIHRpbCBzdGFuZGFyZC11dC5cbiIKKyN+ICIgIC1XfC0tc2hvdyA8ZGViPiAgICAgICAgICAgICAgICAgICBWaXMgb3BwbHlzbmluZ2VyIG9tIHBha2tlLlxuIgorI34gIiAgLWZ8LS1maWVsZCA8ZGViPiBbPGNmZWx0Pi4uLl0gICAgIFZpcyBmZWx0IHRpbCBzdGFuZGFyZC11dC5cbiIKKyN+ICIgIC1lfC0tY29udHJvbCA8ZGViPiBbPGthdGFsb2c+XSAgICBIZW50IHV0IGtvbnRyb2xsb3BwbHlzbmluZ2VyLlxuIgorI34gIiAgLXh8LS1leHRyYWN0IDxkZWI+IDxrYXRhbG9nPiAgICAgIEhlbnQgdXQgZmlsZXIuXG4iCisjfiAiICAtWHwtLXZleHRyYWN0IDxkZWI+IDxrYXRhbG9nPiAgICAgSGVudCB1dCBvZyB2aXMgZmlsZXIuXG4iCisjfiAiICAtLWZzeXMtdGFyZmlsZSA8ZGViPiAgICAgICAgICAgICAgVXRkYXRhIHRpbCB0YXItZmlsLlxuIgorI34gIiAgLWh8LS1oZWxwICAgICAgICAgICAgICAgICAgICAgICAgIFZpcyBkZW5uZSBoamVscGV0ZWtzdGVuLlxuIgorI34gIiAgLS12ZXJzaW9uIHwgLS1saWNlbmNlICAgICAgICAgICAgIFZpcyB2ZXJzam9uL2xpc2Vucy5cbiIKKyN+ICJcbiIKKyN+ICI8ZGViPiBlciBmaWxuYXZuZXQgcMOlIGV0IGFya2l2IGkgRGViaWFuLWZvcm1hdC5cbiIKKyN+ICI8Y2ZpbD4gZXIgbmF2bmV0IHDDpSBlbiBhZG1pbmlzdHJhdGl2IGZpbGtvbXBvbmVudC5cbiIKKyN+ICI8Y2ZlbHQ+IGVyIG5hdm5ldCBww6UgZXQgZmVsdCBpICdjb250cm9sJy1maWxhLlxuIgorI34gIlxuIgorI34gIk9wc2pvbmVyOlxuIgorI34gIiAgLS1zaG93Zm9ybWF0PTxmb3JtYXQ+ICAgICAgQnJ1ayBhbHRlcm5hdGl2dCBmb3JtYXQgdGlsIC0tc2hvd1xuIgorI34gIiAgLUQgICAgICAgICAgICAgICAgICAgICAgICAgVmlzIGF2bHVzaW5nc2RhdGFcbiIKKyN+ICIgIC0tb2xkLCAtLW5ldyAgICAgICAgICAgICAgIFZlbGcgYXJraXZmb3JtYXQuXG4iCisjfiAiICAtLW5vY2hlY2sgICAgICAgICAgICAgICAgICBpa2tlIHNqZWtrIGtvbnRyb2xsZmlsIChieWdnIHVneWxkaWcgIgorI34gInBha2tlKS5cbiIKKyN+ICIgIC16IyBmb3Igw6UgdmVsZ2Uga29tcHJpbWVyaW5nIHZlZCBieWdnaW5nXG4iCisjfiAiICAtWjx0eXBlPiAgICAgICAgICAgICAgICAgICBzZXR0ZXIga29tcHJpbWVyaW5nc3R5cGVuIHNvbSBza2FsIGJydWtlcyAiCisjfiAidmVkIGJ5Z2dpbmcuXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aWxsYXR0ZSB2ZXJkaWVyOiBnemlwLCBiemlwMiwgaW5nZW5cbiIKKyN+ICJcbiIKKyN+ICJGb3JtYXQtc3ludGFrczpcbiIKKyN+ICIgIEV0IGZvcm1hdCBlciBlbiBzdHJlbmcgc29tIHZpbCBibGkgdmlzdCBmb3IgaHZlciBwYWtrZS4gRm9ybWF0ZXQga2FuXG4iCisjfiAiICBpbm5laG9sZGUgZGUgdmFubGlnZSBrb250cm9sbHNla3ZlbnNlbmUgXFxuIChsaW5qZXNraWZ0KSwgXFxyICIKKyN+ICIodm9nbnJldHVyKVxuIgorI34gIiAgZWxsZXIgXFxcXCAoYmFrb3ZlcnNrcsOlc3RyZWspLiBQYWtrZW9wcGx5c25pbmdlciBrYW4gdGFzIG1lZCB2ZWRcbiIKKyN+ICIgIMOlIHNldHRlIGlubiB2YXJpYWJlbHJlZmVyYW5zZXIgdGlsIHBha2tlZmVsdCBtZWQgc3ludGFrc2VuXG4iCisjfiAiICAke3Zhcls7YnJlZGRlXX0uIEZlbHRlbmUgdmlsIHbDpnJlIGjDuHlyZWp1c3RlcnRlIG1lZCBtaW5kcmUgYnJlZGRlbiBlclxuIgorI34gIm5lZ2F0aXYuIEkgc8OlIGZhbGwgdmlsIGRlIHbDpnJlIHZlbnN0cmVqdXN0ZXJ0ZS5cbiIKKyN+ICJcbiIKKyN+ICJCcnVrIMKrZHBrZ8K7IHRpbCDDpSBpbnN0YWxsZXJlIG9nIGZqZXJuZSBwYWtrZXIgZnJhIHN5c3RlbWV0LCBlbGxlclxuIgorI34gIsKrZHNlbGVjdMK7IGVsbGVyIMKrYXB0aXR1ZGXCuyBmb3IgYnJ1a2VydmVubmxpZyBwYWtrZWjDpW5kdGVyaW5nLiBQYWtrZXJcbiIKKyN+ICJzb20gZXIgcGFra2V0IHV0IG1lZCDCq2Rwa2ctZGViIC0tZXh0cmFjdMK7IHZpbCBpa2tlIGJsaSBpbnN0YWxsZXJ0ICIKKyN+ICJyaWt0aWcuXG4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiIgorI34gIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSA8Y29tbWFuZD5cbiIKKyN+ICJcbiIKKyN+ICJDb21tYW5kczpcbiIKKyN+ICIgIC1zfC0tc3BsaXQgPGZpbGU+IFs8cHJlZml4Pl0gICAgU3BsaXQgYW4gYXJjaGl2ZS5cbiIKKyN+ICIgIC1qfC0tam9pbiA8cGFydD4gPHBhcnQ+IC4uLiAgICAgSm9pbiBwYXJ0cyB0b2dldGhlci5cbiIKKyN+ICIgIC1JfC0taW5mbyA8cGFydD4gLi4uICAgICAgICAgICAgRGlzcGxheSBpbmZvIGFib3V0IGEgcGFydC5cbiIKKyN+ICIgIC1ofC0taGVscCAgICAgICAgICAgICAgICAgICAgICAgU2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyN+ICIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgICAgICAgU2hvdyB0aGUgdmVyc2lvbi5cbiIKKyN+ICIgIC0tbGljZW5zZSAgICAgICAgICAgICAgICAgICAgICAgU2hvdyB0aGUgbGljZW5zZS5cbiIKKyN+ICJcbiIKKyN+ICIgIC1hfC0tYXV0byAtbyA8Y29tcGxldGU+IDxwYXJ0PiAgQXV0by1hY2N1bXVsYXRlIHBhcnRzLlxuIgorI34gIiAgLWx8LS1saXN0cSAgICAgICAgICAgICAgICAgICAgICBMaXN0IHVubWF0Y2hlZCBwaWVjZXMuXG4iCisjfiAiICAtZHwtLWRpc2NhcmQgWzxmaWxlbmFtZT4gLi4uXSAgIERpc2NhcmQgdW5tYXRjaGVkIHBpZWNlcy5cbiIKKyN+ICJcbiIKKyN+ICJPcHRpb25zOlxuIgorI34gIiAgLS1kZXBvdGRpciA8ZGlyZWN0b3J5PiAgICAgICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy8lcy5cbiIKKyN+ICIgIC1TfC0tcGFydHNpemUgPHNpemU+ICAgICAgICAgICAgSW4gS2lCLCBmb3IgLXMgKGRlZmF1bHQgaXMgNDUwKS5cbiIKKyN+ICIgIC1vfC0tb3V0cHV0IDxmaWxlPiAgICAgICAgICAgICAgRm9yIC1qIChkZWZhdWx0IGlzIDxwYWNrYWdlPi08dmVyc2lvbj4uIgorI34gImRlYikuXG4iCisjfiAiICAtUXwtLW5wcXVpZXQgICAgICAgICAgICAgICAgICAgIEJlIHF1aWV0IHdoZW4gLWEgaXMgbm90IGEgcGFydC5cbiIKKyN+ICIgIC0tbXNkb3MgICAgICAgICAgICAgICAgICAgICAgICAgR2VuZXJhdGUgOC4zIGZpbGVuYW1lcy5cbiIKKyN+ICJcbiIKKyN+ICJFeGl0IHN0YXR1czogMCA9IE9LOyAgMSA9IC1hIGlzIG5vdCBhIHBhcnQ7ICAyID0gdHJvdWJsZSFcbiIKKyN+IG1zZ3N0ciAiIgorI34gIkJydWs6IGRwa2ctc3BsaXQgLXN8LS1zcGxpdCA8ZmlsPiBbPHByZWZpa3M+XSAgICAgRGVsIG9wcCBldCBhcmtpdi5cbiIKKyN+ICIgICAgICBkcGtnLXNwbGl0IC1qfC0tam9pbiA8ZGVsPiA8ZGVsPiAuLi4gICAgICAgIEbDuHkgc2FtbWVuIGRlbGVyLlxuIgorI34gIiAgICAgIGRwa2ctc3BsaXQgLUl8LS1pbmZvIDxwYXJ0PiAuLi4gICAgICAgICAgICAgVmlzIGluZm8gb20gZW4gZGVsLlxuIgorI34gIiAgICAgIGRwa2ctc3BsaXQgLWh8LS1oZWxwfC0tdmVyc2lvbnwtLWxpY2VuY2UgICAgVmlzIGhlbHAvdmVyc2lvbi8iCisjfiAibGljZW5jZS5cbiIKKyN+ICJcbiIKKyN+ICIgICAgICBkcGtnLXNwbGl0IC1hfC0tYXV0byAtbyA8YWx0IHNhbW1lbj4gPGRlbD4gICBBdXRvbWF0aXNrIHNhbWxhIG9wcCAiCisjfiAiZGVsZXIuXG4iCisjfiAiICAgICAgZHBrZy1zcGxpdCAtbHwtLWxpc3RxICAgICAgICAgICAgICAgICAgICAgICBMaXN0IG9wcCBkZWxlciBzb20gaWtrZSAiCisjfiAicGFzc2VyLlxuIgorI34gIiAgICAgIGRwa2ctc3BsaXQgLWR8LS1kaXNjYXJkIFs8ZmlsbmF2bj4gLi4uXSAgICAgVnJhayBkZWxlciBzb20gaWtrZSAiCisjfiAicGFzc2VyLlxuIgorI34gIlxuIgorI34gIlZhbDogIC0tZGVwb3RkaXIgPGthdGFsb2c+ICAgICAgKHN0YW5kYXJkIGVyICVzLyVzKVxuIgorI34gIiAgICAgIC1TfC0tcGFydHNpemUgPHN0w7hycmVsc2U+ICAoaSBLYiwgZm9yIC1zLCBzdGFuZGFyZCBlciA0NTApXG4iCisjfiAiICAgICAgLW98LS1vdXRwdXQgPGZpbD4gICAgICAgICAoZm9yIC1qLCBzdGFuZGFyZCBlciA8cGFra2U+LTx2ZXJzam9uPi4iCisjfiAiZGViKVxuIgorI34gIiAgICAgIC1RfC0tbnBxdWlldCAgICAgICAgICAgICAgKHbDpnIgc3RpbGxlIG7DpXIgLWEgaWtrZSBlciBlbiBkZWwpXG4iCisjfiAiICAgICAgLS1tc2RvcyAgICAgICAgICAgICAgICAgICAobGFnIDguMy1maWxuYXZuKVxuIgorI34gIlxuIgorI34gIkF2c2x1dG5pbmdzdGF0dXM6IDAgPSBPSzsgIDEgPSAtYSBlciBpa2tlIGVuIGRlbDsgIDIgPSBwcm9ibGVtIVxuIgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9wby9uZS5nbW8gYi9kcGtnLTEuMTYuMS4xL3BvL25lLmdtbwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jOWI1YzU5Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9wby9uZS5nbW8KQmluYXJ5IGZpbGVzIGRpZmZlcgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9wby9uZS5wbyBiL2Rwa2ctMS4xNi4xLjEvcG8vbmUucG8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNGFiN2IyNgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvcG8vbmUucG8KQEAgLTAsMCArMSw3MTA4IEBACisjIHRyYW5zbGF0aW9uIG9mIGRwa2dfcG9fbmUucG8gdG8gTmVwYWxpCisjCisjIE1haGVzaCBTdWJlZGkgPHN1Ym1hbmVzaEBob3RtYWlsLmNvbT4sIDIwMDYuCisjIFNoaXZhIFBva2hhcmVsIDxwb2toYXJlbHNoaXZhQGhvdG1haWwuY29tPiwgMjAwNi4KKyMgU2hpdmEgUHJhc2FkIFBva2hhcmVsIDxwb2toYXJlbHNoaXZhQGhvdG1haWwuY29tPiwgMjAwNi4KKyMgTmFiaW4gR2F1dGFtIDxuYWJpbkBtcHAub3JnLm5wPiwgMjAwNy4KK21zZ2lkICIiCittc2dzdHIgIiIKKyJQcm9qZWN0LUlkLVZlcnNpb246IGRwa2dfcG9fbmVcbiIKKyJSZXBvcnQtTXNnaWQtQnVncy1UbzogZGViaWFuLWRwa2dAbGlzdHMuZGViaWFuLm9yZ1xuIgorIlBPVC1DcmVhdGlvbi1EYXRlOiAyMDExLTEwLTE0IDA3OjExKzAyMDBcbiIKKyJQTy1SZXZpc2lvbi1EYXRlOiAyMDA3LTA4LTA1IDE3OjQxKzA1NDVcbiIKKyJMYXN0LVRyYW5zbGF0b3I6IE5hYmluIEdhdXRhbSA8bmFiaW5AbXBwLm9yZy5ucD5cbiIKKyJMYW5ndWFnZS1UZWFtOiBOZXBhbGkgPGluZm9AbXBwLm9yZy5ucD5cbiIKKyJMYW5ndWFnZTogbmVcbiIKKyJNSU1FLVZlcnNpb246IDEuMFxuIgorIkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD1VVEYtOFxuIgorIkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXRcbiIKKyJQbHVyYWwtRm9ybXM6IG5wbHVyYWxzPTI7IHBsdXJhbD1uICE9IDE7XG4iCisiXG4iCisiWC1HZW5lcmF0b3I6IEtCYWJlbCAxLjExLjRcbiIKKworIzogbGliL2Rwa2cvYXIuYzo2NgorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGNoYXJhY3RlciAnJWMnIGluIGFyY2hpdmUgJyUuMjUwcycgbWVtYmVyICclLjE2cycgc2l6ZSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9hci5jOjgxIGxpYi9kcGtnL2FyLmM6OTcgbGliL2Rwa2cvYXIuYzoxMDggbGliL2Rwa2cvYXIuYzoxMTIKKyM6IGxpYi9kcGtnL2FyLmM6MTM0IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTU0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgZmlsZSAnJXMnIgorbXNnc3RyICLgpLjgpY3gpLDgpYvgpKQg4KSr4KS+4KSH4KSyIGAlLjI1MHMnIOCkluCli+CksuCljeCkqCDgpIXgpJXgpY3gpLfgpK4iCisKKyM6IGxpYi9kcGtnL2FyLmM6OTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZ2VuZXJhdGVkIGNvcnJ1cHQgYXIgaGVhZGVyIGZvciAnJXMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2FyLmM6MTIzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgYXIgbWVtYmVyIGZpbGUgKCVzKSIKK21zZ3N0ciAidG1wZmlsZSAo4KSh4KWH4KSf4KS+KSDgpKzgpKjgpL7gpIngpKgg4KSF4KS44KSr4KSyIgorCisjOiBsaWIvZHBrZy9hci5jOjEzMAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiYXIgbWVtYmVyIGZpbGUgKCVzKSIKK21zZ3N0ciAidG1wZmlsZSAo4KSh4KWH4KSf4KS+KSDgpKzgpKjgpL7gpIngpKgg4KSF4KS44KSr4KSyIgorCisjOiBsaWIvZHBrZy9idWZmZXIuYzoxOTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZWFkIG9uIGJ1ZmZlciBjb3B5IGZvciAlcyIKK21zZ3N0ciAi4KSs4KSr4KSwIOCkquCljeCksOCkpOCkv+CksuCkv+CkquCkv+CkruCkviDgpIXgpLjgpKvgpLIgKCVzKSIKKworIzogbGliL2Rwa2cvYnVmZmVyLmM6MjEyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgaW4gd3JpdGUgb24gYnVmZmVyIGNvcHkgZm9yICVzIgorbXNnc3RyICLgpKzgpKvgpLAg4KSq4KWN4KSw4KSk4KS/4KSy4KS/4KSq4KS/4KSu4KS+IOCkheCkuOCkq+CksiAoJXMpIgorCisjOiBsaWIvZHBrZy9idWZmZXIuYzoyMjAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInNob3J0IHJlYWQgb24gYnVmZmVyIGNvcHkgZm9yICVzIgorbXNnc3RyICLgpKzgpKvgpLAg4KSq4KWN4KSw4KSk4KS/4KSy4KS/4KSq4KS/4KSu4KS+IOCkm+Cli+Ckn+CliyDgpKrgpKLgpY3gpKjgpYHgpLngpYvgpLjgpY0gKCVzKSIKKworIzogbGliL2Rwa2cvYnVmZmVyLmM6Mjg4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyB0YXIiCittc2dpZCAiZmFpbGVkIHRvIHNlZWsgJXMiCittc2dzdHIgIuCkn+CkvuCksCDgpJXgpL7gpLDgpY3gpK/gpL7gpKjgpY3gpLXgpK/gpKgg4KSX4KSw4KWN4KSoIOCkheCkuOCkq+CksiIKKworIzogbGliL2Rwa2cvY29tbWFuZC5jOjE3OCBsaWIvZHBrZy9jb21tYW5kLmM6MjA0IHNyYy9oZWxwLmM6NjIxCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjk4IHNyYy9wcm9jZXNzYXJjLmM6MTM4IHNyYy9wcm9jZXNzYXJjLmM6NDMyCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjgzOSBkcGtnLWRlYi9idWlsZC5jOjQ1OSBkcGtnLWRlYi9idWlsZC5jOjUzOAorIzogZHBrZy1kZWIvYnVpbGQuYzo1NjEgZHBrZy1kZWIvZXh0cmFjdC5jOjMxNyBkcGtnLWRlYi9pbmZvLmM6NjUKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzo2OSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NDU3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZXhlY3V0ZSAlcyAoJXMpIgorbXNnc3RyICIlcyDgpJXgpL7gpLDgpY3gpK/gpKjgpY3gpLXgpK/gpKgg4KSX4KSw4KWN4KSoIOCkheCkleCljeCkt+CkriIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzo4MworIywgYy1mb3JtYXQKK21zZ2lkICIlczogZGVjb21wcmVzc2lvbiIKK21zZ3N0ciAiJXM6IOCkheCkuOCkmeCljeCkleClgeCkmuCkqCIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzo4OQorIywgYy1mb3JtYXQKK21zZ2lkICIlczogY29tcHJlc3Npb24iCittc2dzdHIgIiVzOiDgpLjgpJngpY3gpJXgpYHgpJrgpKgiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTEyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvciBiaW5kaW5nIGlucHV0IHRvIGd6aXAgc3RyZWFtIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTI0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCByZWFkIGVycm9yOiAnJXMnIgorbXNnc3RyICIlczog4KSG4KSo4KWN4KSk4KSw4KS/4KSVIGd6aXAg4KSk4KWN4KSw4KWB4KSf4KS/OiBgJXMnIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjEzMiBsaWIvZHBrZy9jb21wcmVzcy5jOjEzNgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgd3JpdGUgZXJyb3IiCittc2dzdHIgIiVzOiDgpIbgpKjgpY3gpKTgpLDgpL/gpJUgZ3ppcCDgpKTgpY3gpLDgpYHgpJ/gpL86IGAlcyciCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTUwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvciBiaW5kaW5nIG91dHB1dCB0byBnemlwIHN0cmVhbSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE1NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgcmVhZCBlcnJvciIKK21zZ3N0ciAiJXM6IOCkhuCkqOCljeCkpOCksOCkv+CklSBnemlwIOCkpOCljeCksOClgeCkn+CkvzogYCVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxNjcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHdyaXRlIGVycm9yOiAnJXMnIgorbXNnc3RyICIlczog4KSG4KSo4KWN4KSk4KSw4KS/4KSVIGd6aXAg4KSk4KWN4KSw4KWB4KSf4KS/OiBgJXMnIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE4MAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgd3JpdGUgZXJyb3I6ICVzIgorbXNnc3RyICIlczog4KSG4KSo4KWN4KSk4KSw4KS/4KSVIGd6aXAg4KSk4KWN4KSw4KWB4KSf4KS/OiBgJXMnIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjIyMAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZXJyb3IgYmluZGluZyBpbnB1dCB0byBiemlwMiBzdHJlYW0iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyMzIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiByZWFkIGVycm9yOiAnJXMnIgorbXNnc3RyICIlczog4KSG4KSo4KWN4KSk4KSw4KS/4KSVIGJ6aXAyIOCkpOCljeCksOClgeCkn+CkvzogYCVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyNDAgbGliL2Rwa2cvY29tcHJlc3MuYzoyNDQgbGliL2Rwa2cvY29tcHJlc3MuYzoyOTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiB3cml0ZSBlcnJvciIKK21zZ3N0ciAiJXM6IOCkhuCkqOCljeCkpOCksOCkv+CklSBiemlwMiDgpKTgpY3gpLDgpYHgpJ/gpL86IGAlcyciCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjU4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvciBiaW5kaW5nIG91dHB1dCB0byBiemlwMiBzdHJlYW0iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyNjUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiByZWFkIGVycm9yIgorbXNnc3RyICIlczog4KSG4KSo4KWN4KSk4KSw4KS/4KSVIGJ6aXAyIOCkpOCljeCksOClgeCkn+CkvzogYCVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyNzUgbGliL2Rwa2cvY29tcHJlc3MuYzoyODYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiB3cml0ZSBlcnJvcjogJyVzJyIKK21zZ3N0ciAiJXM6IOCkhuCkqOCljeCkpOCksOCkv+CklSBiemlwMiDgpKTgpY3gpLDgpYHgpJ/gpL86IGAlcyciCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjgyCittc2dpZCAidW5leHBlY3RlZCBiemlwMiBlcnJvciIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjY4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1cGRhdGVzIGRpcmVjdG9yeSBjb250YWlucyBmaWxlIGAlLjI1MHMnIHdob3NlIG5hbWUgaXMgdG9vIGxvbmcgKGxlbmd0aD0lZCwgIgorIm1heD0lZCkiCittc2dzdHIgIiIKKyLgpIXgpKbgpY3gpK/gpL7gpLXgpJrgpL/gpJUg4KSh4KS+4KSH4KSw4KWH4KSV4KWN4KSf4KSw4KWA4KSy4KWHIOCkuOCkruCkvuCkueCkv+CkpCBgJS4yNTBzJyDgpKvgpL7gpIfgpLIg4KSX4KSw4KWN4KSm4KSbIOCknOCkuOCkleCliyDgpKjgpL7gpK4g4KSn4KWH4KSw4KWIIOCksuCkvuCkruCliyDgpJsgKOCksuCkruCljeCkrOCkvuCkiD0lZCwgIgorIuCkieCkmuCljeCkmuCkpOCkrj0lZCkiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVwZGF0ZXMgZGlyZWN0b3J5IGNvbnRhaW5zIGZpbGVzIHdpdGggZGlmZmVyZW50IGxlbmd0aCBuYW1lcyAoYm90aCAlZCBhbmQgJWQpIgorbXNnc3RyICLgpIXgpKbgpY3gpK/gpL7gpLXgpKfgpL/gpJUg4KSh4KS+4KSH4KSw4KWH4KSV4KWN4KSf4KSw4KWA4KSy4KWHIOCkreCkv+CkqOCljeCkqCDgpLLgpK7gpY3gpKzgpL7gpIgg4KSo4KS+4KSu4KS54KSw4KWCICglZCDgpLAgJWQg4KSm4KWB4KSs4KWIKSDgpKvgpL7gpIfgpLLgpLngpLDgpYIg4KS44KSu4KS+4KS14KWH4KS2IOCkl+CksOCljeCkpuCkmyDgpaQiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHNjYW4gdXBkYXRlcyBkaXJlY3RvcnkgYCUuMjU1cyciCittc2dzdHIgIuCkheCkpuCljeCkr+CkvuCkteCkp+Ckv+CklSDgpKHgpL7gpIfgpLDgpYfgpJXgpY3gpJ/gpLDgpYAgYCUuMjU1cycg4KS44KWN4KSV4KWN4KSv4KS+4KSoIOCkl+CksOCljeCkqCDgpLjgpJXgpY3gpKbgpYjgpKgg4KWkIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVtb3ZlIGluY29ycG9yYXRlZCB1cGRhdGUgZmlsZSAlLjI1NXMiCittc2dzdHIgIuCkuOCkruCkvuCkueCkv+CkpCDgpIXgpKbgpY3gpK/gpL7gpLXgpKfgpL/gpJUg4KSr4KS+4KSH4KSyICUuMjU1cyDgpLngpJ/gpL7gpIngpKgg4KSF4KS44KSr4KSyIOCkreCkr+CliyDgpaQiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTIxIGRwa2ctZGViL2J1aWxkLmM6NDQ3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgYCUuMjU1cyciCittc2dzdHIgImAlLjI1NXMnIOCkuOCkv+CksOCljeCknOCkqOCkviDgpJfgpLDgpY3gpKgg4KSF4KSV4KWN4KS34KSuIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEyNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmlsbCAlLjI1MHMgd2l0aCBwYWRkaW5nIgorbXNnc3RyICLgpJfgpKbgpY3gpKbgpL7gpLjgpIHgpJcgJS4yNTBzIOCkreCli+CksOCljeCkqCDgpIXgpJXgpY3gpLfgpK4iCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTI3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCAlLjI1MHMgYWZ0ZXIgcGFkZGluZyIKK21zZ3N0ciAi4KSX4KSm4KWN4KSm4KS+IOCkquCkm+CkvyAlLjI1MHMg4KSr4KWN4KSy4KS4IOCkl+CksOCljeCkqCDgpIXgpJXgpY3gpLfgpK4iCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTI5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWVrIHRvIHN0YXJ0IG9mICUuMjUwcyBhZnRlciBwYWRkaW5nIgorbXNnc3RyICLgpJfgpKbgpY3gpKbgpL4g4KSq4KSb4KS/ICUuMjUwcyDgpJXgpYsg4KS44KWB4KSw4KWCIOCkluCli+CknOCljeCkqCDgpIXgpJXgpY3gpLfgpK4iCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTk1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gb3BlbiB0bXBmaWxlIGZvciB2c25wcmludGYiCittc2dpZCAidW5hYmxlIHRvIG9wZW4gbG9jayBmaWxlICVzIGZvciB0ZXN0aW5nIgorbXNnc3RyICJ2c25wcmludGYg4KSV4KS+IOCksuCkvuCkl+CkvyB0bXBmaWxlICjgpIXgpLjgpY3gpKXgpL7gpIcg4KSr4KS+4KSH4KSyKSDgpJbgpYvgpLLgpY3gpKgg4KSF4KSV4KWN4KS34KSuIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjIyMQorbXNnaWQgInVuYWJsZSB0byBvcGVuL2NyZWF0ZSBzdGF0dXMgZGF0YWJhc2UgbG9ja2ZpbGUiCittc2dzdHIgIuCkteCkuOCljeCkpOClgeCkuOCljeCkpeCkv+CkpOCkvyDgpKHgpYfgpJ/gpL7gpLXgpYfgpLYg4KSk4KS+4KSy4KWN4KSa4KS+IOCkruCkvuCksOClh+CkleCliyDgpKvgpL7gpIfgpLIg4KSW4KWL4KSy4KWN4KSoL+CkuOCkv+CksOCljeCknOCkqOCkviDgpJfgpLDgpY3gpKgg4KSF4KSV4KWN4KS34KSuIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjIzMQorbXNnaWQgInlvdSBkbyBub3QgaGF2ZSBwZXJtaXNzaW9uIHRvIGxvY2sgdGhlIGRwa2cgc3RhdHVzIGRhdGFiYXNlIgorbXNnc3RyICJkcGtnIOCkteCkuOCljeCkpOClgeCkuOCljeCkpeCkv+CkpOCkvyDgpKHgpYfgpJ/gpL7gpLXgpYfgpLYg4KSk4KS+4KSy4KWN4KSa4KS+IOCksuCkl+CkvuCkieCkqCDgpKTgpKrgpL7gpIjgpIHgpLjgpILgpJcg4KSF4KSo4KWB4KSu4KSk4KS/IOCkm+CliOCkqCIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyMzMKKyMsIGZ1enp5CisjfCBtc2dpZCAidW5hYmxlIHRvIGxvY2sgZHBrZyBzdGF0dXMgZGF0YWJhc2UiCittc2dpZCAiZHBrZyBzdGF0dXMgZGF0YWJhc2UiCittc2dzdHIgImRwa2cg4KS14KS44KWN4KSk4KWB4KS44KWN4KSl4KS/4KSk4KS/IOCkoeClh+Ckn+CkvuCkteClh+CktiDgpKTgpL7gpLLgpY3gpJrgpL4g4KSy4KSX4KS+4KSJ4KSoIOCkheCkleCljeCkt+CkriIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyNTcKK21zZ2lkICJyZXF1ZXN0ZWQgb3BlcmF0aW9uIHJlcXVpcmVzIHN1cGVydXNlciBwcml2aWxlZ2UiCittc2dzdHIgIuCkheCkqOClgeCksOCli+CkpyDgpJfgpLDgpL/gpI/gpJXgpYsg4KS44KSe4KWN4KSa4KS+4KSy4KSo4KSy4KS+4KSIIOCkuOClgeCkquCksCDgpKrgpY3gpLDgpK/gpYvgpJfgpJXgpLDgpY3gpKTgpL4g4KS14KS/4KS24KWH4KS34KS+4KSn4KS/4KSV4KS+4KSwIOCkmuCkvuCkueCkv+CkqOCljeCkmyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyNjIKK21zZ2lkICJ1bmFibGUgdG8gYWNjZXNzIGRwa2cgc3RhdHVzIGFyZWEiCittc2dzdHIgImRwa2cg4KS44KWN4KSl4KS/4KSk4KS/IOCkleCljeCkt+Clh+CkpOCljeCksCDgpKrgpLngpYHgpIHgpJog4KSX4KSw4KWN4KSoIOCkheCkleCljeCkt+CkriIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyNjQKK21zZ2lkICJvcGVyYXRpb24gcmVxdWlyZXMgcmVhZC93cml0ZSBhY2Nlc3MgdG8gZHBrZyBzdGF0dXMgYXJlYSIKK21zZ3N0ciAi4KS44KSe4KWN4KSa4KS+4KSy4KSo4KSy4KS+4KSIIGRwa2cg4KS44KWN4KSl4KS/4KSk4KS/IOCkleCljeCkt+Clh+CkpOCljeCksOCksuCkvuCkiCDgpKrgpKLgpY3gpKgv4KSy4KWH4KSW4KWN4KSoIOCkquCkueClgeCkgeCkmiDgpIbgpLXgpLbgpY3gpK/gpJUg4KSq4KSw4KWN4KSm4KSbIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjMwOQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVtb3ZlIG15IG93biB1cGRhdGUgZmlsZSAlLjI1NXMiCittc2dzdHIgIuCkruClh+CksOCliyDgpIbgpKvgpY3gpKjgpYgg4KSF4KSm4KWN4KSv4KS+4KS14KSn4KS/4KSVIOCkq+CkvuCkh+CksiAlLjI1NXMg4KS54KSf4KS+4KSJ4KSoIOCkheCkuOCkq+CksiIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJgJS4yNTBzJyDgpJXgpYsg4KSF4KSm4KWN4KSv4KS+4KS14KSn4KS/4KSVIOCkl+CksOCkv+Ckj+CkleCliyDgpLXgpLjgpY3gpKTgpYHgpLjgpY3gpKXgpL/gpKTgpL8g4KSy4KWH4KSW4KWN4KSoIOCkheCkleCljeCkt+CkriIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNDkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJgJS4yNTBzJyDgpJXgpYsg4KSF4KSm4KWN4KSv4KS+4KS14KSn4KS/4KSVIOCkteCkuOCljeCkpOClgeCkuOCljeCkpeCkv+CkpOCkvyDgpKvgpY3gpLLgpLgg4KSX4KSw4KWN4KSoIOCkheCkleCljeCkt+CkriIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHRydW5jYXRlIGZvciB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiYCUuMjUwcyfgpJXgpYsg4KSF4KSm4KWN4KSv4KS+4KS14KSn4KS/4KSVIOCkteCkuOCljeCkpOClgeCkuOCljeCkpeCkv+CkpOCkv+CkleCkviDgpLLgpL7gpJfgpL8g4KSV4KS+4KSf4KWN4KSoIOCkheCkleCljeCkt+CkriIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZzeW5jIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJgJS4yNTBzJyDgpJXgpYsg4KSF4KSm4KWN4KSv4KS+4KS14KSn4KS/4KSVIOCkl+CksOCkv+Ckj+CkleCliyDgpLXgpLjgpY3gpKTgpYHgpLjgpY3gpKXgpL/gpKTgpL8gZnN5bmMg4KSX4KSw4KWN4KSoIOCkheCkleCljeCkt+CkriIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJgJS4yNTBzJ+CkleCliyDgpIXgpKbgpY3gpK/gpL7gpLXgpKfgpL/gpJUg4KS14KS44KWN4KSk4KWB4KS44KWN4KSl4KS/4KSk4KS/IOCkrOCkqOCljeCkpiDgpJfgpLDgpY3gpKgg4KSF4KSV4KWN4KS34KSuIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM1OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiYCUuMjUwcyfgpJXgpYsg4KSF4KSm4KWN4KSv4KS+4KS14KSn4KS/4KSVIOCkteCkuOCljeCkpOClgeCkuOCljeCkpeCkv+CkpOCkvyDgpLjgpY3gpKXgpL7gpKrgpKjgpL4g4KSX4KSw4KWN4KSoIOCkheCkleCljeCkt+CkriIKKworIzogbGliL2Rwa2cvZGlyLmM6NTAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byByZWFkIGZpbGVkZXNjcmlwdG9yIGZsYWdzIGZvciAlLjI1MHMiCittc2dpZCAidW5hYmxlIHRvIGdldCBmaWxlIGRlc2NyaXB0b3IgZm9yIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICIlLjI1MHMg4KSV4KS+IOCksuCkvuCkl+CkvyDgpKvgpL7gpIHgpJ8g4KS44KWN4KSV4KWN4KSw4KS/4KSq4KWN4KSf4KSwIOCkneCko+CljeCkoeCkvuCkueCksOClgiDgpKrgpKLgpY3gpKgg4KSF4KSV4KWN4KS34KSuIgorCisjOiBsaWIvZHBrZy9kaXIuYzo1NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgZGlyZWN0b3J5ICclcyciCittc2dzdHIgIuCkuOCljeCksOCli+CkpCDgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KSW4KWL4KSy4KWN4KSoIOCkheCkleCljeCkt+CkriIKKworIzogbGliL2Rwa2cvZGlyLmM6NjkgbGliL2Rwa2cvZGlyLmM6MTMxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBkaXJlY3RvcnkgJyVzJyIKK21zZ3N0ciAi4KS44KWN4KSw4KWL4KSkIOCkq+CkvuCkh+CksiBgJS4yNTBzJyDgpJbgpYvgpLLgpY3gpKgg4KSF4KSV4KWN4KS34KSuIgorCisjOiBsaWIvZHBrZy9kaXIuYzoxMDkgc3JjL2RpdmVydGNtZC5jOjIxOCBkcGtnLXNwbGl0L3NwbGl0LmM6MjAyCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI5MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gZmlsZSAnJXMnIgorbXNnc3RyICLgpLjgpY3gpLDgpYvgpKQg4KSr4KS+4KSH4KSyIGAlLjI1MHMnIOCkluCli+CksuCljeCkqCDgpIXgpJXgpY3gpLfgpK4iCisKKyM6IGxpYi9kcGtnL2Rpci5jOjExMSBzcmMvZGl2ZXJ0Y21kLmM6MjMyIHNyYy9kaXZlcnRjbWQuYzozNzcKKyM6IHNyYy9zdGF0Y21kLmM6MjE3IGRwa2ctZGViL2J1aWxkLmM6NTk4IGRwa2ctc3BsaXQvam9pbi5jOjY1CisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTg3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNDA2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBmaWxlICclcyciCittc2dzdHIgIuCkuOCljeCksOCli+CkpCDgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KSW4KWL4KSy4KWN4KSoIOCkheCkleCljeCkt+CkriIKKworIzogbGliL2Rwa2cvZGlyLmM6MTEzIHNyYy9kaXZlcnRjbWQuYzoyMzQgc3JjL2RpdmVydGNtZC5jOjM3OQorIzogZHBrZy1kZWIvYnVpbGQuYzo2MDAgZHBrZy1zcGxpdC9qb2luLmM6NjcgZHBrZy1zcGxpdC9xdWV1ZS5jOjE4OQorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzMTQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE0MDgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBmaWxlICclcyciCittc2dzdHIgInZzbnByaW50ZiDgpK7gpL4g4KSr4KWN4KSy4KS4IOCkl+CksOCljeCkqCDgpIXgpJXgpY3gpLfgpK4iCisKKyM6IGxpYi9kcGtnL2R1bXAuYzozOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIGRldGFpbHMgb2YgYCUuNTBzJyB0byBgJS4yNTBzJyIKK21zZ3N0ciAiIGAlLjUwcycg4KSu4KS+IGAlLjI1MHMnIOCkteCkv+CkteCksOCkoyDgpLLgpYfgpJbgpY3gpKgg4KSF4KS44KSr4KSyIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDIzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiAnJXMnIGZvciB3cml0aW5nICVzIGRhdGFiYXNlIgorbXNnc3RyICLgpLjgpYLgpJrgpKjgpL4gJXMg4KSV4KS+IOCksuCkvuCkl+CkvyDgpLLgpYfgpJbgpY3gpKhgJXMnIOCkluCli+CksuCljeCkqCDgpIXgpJXgpY3gpLfgpK4iCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0MjYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgYnVmZmVyaW5nIG9uICVzIGRhdGFiYXNlIGZpbGUiCittc2dzdHIgIuCkteCkuOCljeCkpOClgeCkuOCljeCkpeCkv+CkpOCkvyDgpKvgpL7gpIfgpLLgpK7gpL4g4KSs4KSr4KSw4KS/4KSZ4KWN4KSXIOCkuOClh+CknyDgpJfgpLDgpY3gpKgg4KSF4KSV4KWN4KS34KSuIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDM4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgJXMgZGF0YWJhc2UgcmVjb3JkIGFib3V0ICclLjUwcycgdG8gJyUuMjUwcyciCittc2dzdHIgImAlLjUwcycgdG8gYCUuMjUwcycg4KSs4KS+4KSw4KWH4KSu4KS+IOCksOClh+CkleCksOCljeCkoSAgJXMg4KSy4KWH4KSW4KWN4KSoIOCkheCkuOCkq+CksiIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ0NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZsdXNoICVzIGRhdGFiYXNlIHRvICclLjI1MHMnIgorbXNnc3RyICLgpLjgpYLgpJrgpKjgpL4gYCUuMjUwcycg4KSu4KS+ICVzIOCkq+CljeCksuCkuCDgpJfgpLDgpY3gpKgg4KSF4KS44KSr4KSyIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDQ4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZnN5bmMgJXMgZGF0YWJhc2UgdG8gJyUuMjUwcyciCittc2dzdHIgIiVzIOCkuOClguCkmuCkqOCkviBgJS4yNTBzJyDgpK7gpL4gZnN5bmMg4KSX4KSw4KWN4KSoIOCkheCkuOCkq+CksiIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ1MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNsb3NlICclLjI1MHMnIGFmdGVyIHdyaXRpbmcgJXMgZGF0YWJhc2UiCittc2dzdHIgIuCkuOClguCkmuCkqOCkviAlcyDgpLLgpYfgpJbgpYcg4KSq4KSb4KS/IGAlLjI1MHMnIOCkrOCkqOCljeCkpiDgpJfgpLDgpY3gpKgg4KSF4KS44KSr4KSyIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDU1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gbGluayAnJS4yNTBzJyB0byAnJS4yNTBzJyBmb3IgYmFja3VwIG9mICVzIGRhdGFiYXNlIgorbXNnc3RyICJgJS4yNTBzJyDgpLLgpL7gpIggYCUuMjUwcycg4KSu4KS+IOCknOCkl+Clh+CkoeCkviAlcyDgpJXgpYsg4KS44KWC4KSa4KSo4KS+4KSV4KS+IOCksuCkvuCkl+CkvyDgpLLgpL/gpJngpY3gpJUg4KSX4KSw4KWN4KSoIOCkheCkuOCkq+CksiIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ1OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGluc3RhbGwgJyUuMjUwcycgYXMgJyUuMjUwcycgY29udGFpbmluZyAlcyBkYXRhYmFzZSIKK21zZ3N0ciAi4KS44KWC4KSa4KSo4KS+ICVzIOCkuOCkruCkvuCkteClh+CktiDgpJfgpLDgpY3gpKbgpYggYCUuMjUwcycg4KSw4KWB4KSq4KSu4KS+IGAlLjI1MHMnIOCkuOCljeCkpeCkvuCkquCkqOCkviDgpJfgpLDgpY3gpKgg4KSF4KS44KSr4KSyIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6OTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiB1bnJlY292ZXJhYmxlIGZhdGFsIGVycm9yLCBhYm9ydGluZzpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MTAwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogb3V0c2lkZSBlcnJvciBjb250ZXh0LCBhYm9ydGluZzpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MTIwCisjLCBmdXp6eQorI3wgbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBjbGVhbnVwIGVudHJ5IgorbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBlcnJvciBjb250ZXh0IgorbXNnc3RyICLgpKjgpK/gpL7gpIEg4KS44KSr4KS+IOCkl+CksOCljeCkqOClhyDgpKrgpY3gpLDgpLXgpL/gpLfgpY3gpJ/gpL/gpJXgpL4g4KSy4KS+4KSX4KS/IOCkuOCljeCkruClg+CkpOCkvyDgpKzgpL7gpLngpL/gpLAiCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoxODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBlcnJvciB3aGlsZSBjbGVhbmluZyB1cDpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorIiVzOiDgpLjgpKvgpL4g4KSX4KSw4KWN4KSm4KS+IOCkpOCljeCksOClgeCkn+CkvzpcbiIKKyIgJXNcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjIwMQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZHBrZzogdG9vIG1hbnkgbmVzdGVkIGVycm9ycyBkdXJpbmcgZXJyb3IgcmVjb3ZlcnkgISFcbiIKK21zZ2lkICIlczogdG9vIG1hbnkgbmVzdGVkIGVycm9ycyBkdXJpbmcgZXJyb3IgcmVjb3ZlcnkhIVxuIgorbXNnc3RyICJkcGtnOiDgpKTgpY3gpLDgpYHgpJ/gpL8g4KSq4KWB4KSoOiDgpKrgpY3gpLDgpL7gpKrgpY3gpKTgpL/gpJXgpYsg4KSs4KWH4KSy4KS+4KSu4KS+IOCkp+Clh+CksOCliCDgpKjgpYfgpLfgpY3gpJ/gpYfgpKEg4KSk4KWN4KSw4KWB4KSf4KS/ISFcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjI2OCBsaWIvZHBrZy9laGFuZGxlLmM6MzA3Cittc2dpZCAib3V0IG9mIG1lbW9yeSBmb3IgbmV3IGNsZWFudXAgZW50cnkiCittc2dzdHIgIuCkqOCkr+CkvuCkgSDgpLjgpKvgpL4g4KSX4KSw4KWN4KSo4KWHIOCkquCljeCksOCkteCkv+Ckt+CljeCkn+Ckv+CkleCkviDgpLLgpL7gpJfgpL8g4KS44KWN4KSu4KWD4KSk4KS/IOCkrOCkvuCkueCkv+CksCIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjI5MQorbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBjbGVhbnVwIGVudHJ5IHdpdGggbWFueSBhcmd1bWVudHMiCittc2dzdHIgIuCkp+Clh+CksOCliCDgpKTgpLDgpY3gpJXgpLngpLDgpYEg4KS44KSB4KSXIOCkqOCkr+CkvuCkgSDgpLjgpKvgpL4g4KSX4KSw4KWN4KSo4KWHIOCkquCljeCksOCkteCkv+Ckt+CljeCkn+Ckv+CkleCkviDgpLLgpL7gpJfgpL8g4KS44KWN4KSu4KWD4KSk4KS/IOCkrOCkvuCkueCkv+CksCIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjM1MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yOiAlc1xuIgorbXNnc3RyICIiCisiJXM6IOCkuOCkq+CkviDgpJfgpLDgpY3gpKbgpL4g4KSk4KWN4KSw4KWB4KSf4KS/OlxuIgorIiAlc1xuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MzkzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogd2FybmluZzogJXNcbiIKK21zZ3N0ciAiIgorIiVzOiDgpLjgpKvgpL4g4KSX4KSw4KWN4KSm4KS+IOCkpOCljeCksOClgeCkn+CkvzpcbiIKKyIgJXNcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjQxNgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6JXM6JWQ6IGludGVybmFsIGVycm9yOiAlc1xuIgorbXNnc3RyICIlczolZDog4KSG4KSo4KWN4KSk4KSw4KS/4KSVIOCkpOCljeCksOClgeCkn+CkvyBgJXMnXG4iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGlzIG1pc3NpbmciCittc2dzdHIgIiVzIOCkueCksOCkvuCkh+CksOClh+CkueClh+CkleCliyDgpJsiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJgJS4qcycgaXMgbm90IGFsbG93ZWQgZm9yICVzIgorbXNnaWQgIiclLjUwcycgaXMgbm90IGFsbG93ZWQgZm9yICVzIgorbXNnc3RyICJgJS4qcycgICVzIOCkleCkviDgpLLgpL7gpJfgpL8g4KSF4KSo4KWB4KSu4KSk4KS/IOCkquCljeCksOCkvuCkquCljeCkpCDgpJvgpYjgpKgiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjczCisjLCBjLWZvcm1hdAorbXNnaWQgImp1bmsgYWZ0ZXIgJXMiCittc2dzdHIgIiAlcyDgpKrgpJvgpL8g4KSw4KSm4KWN4KSm4KWAIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo4NworIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHBhY2thZ2UgbmFtZSAoJS4yNTBzKSIKK21zZ3N0ciAi4KSF4KS14KWI4KSnIOCkquCljeCkr+CkvuCkleClh+CknCDgpKjgpL7gpK4gKCUuMjUwcykiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJlbXB0eSBmaWxlIGRldGFpbHMgZmllbGQgYCVzJyIKK21zZ3N0ciAi4KSw4KS/4KSk4KWN4KSk4KWLIOCkq+CkvuCkh+CksiDgpLXgpL/gpLXgpLDgpKMg4KSr4KS+4KSB4KSfIGAlcyciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjEwNQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGRldGFpbHMgZmllbGQgYCVzJyBub3QgYWxsb3dlZCBpbiBzdGF0dXMgZmlsZSIKK21zZ3N0ciAi4KSr4KS+4KSH4KSyIOCkteCkv+CkteCksOCkoyDgpKvgpL7gpIHgpJ8gYCVzJyDgpLLgpL7gpIgg4KS14KS44KWN4KSk4KWB4KS44KWN4KSl4KS/4KSk4KS/IOCkq+CkvuCkh+CksuCkruCkviDgpIXgpKjgpYHgpK7gpKTgpL8g4KSb4KWI4KSoIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidG9vIG1hbnkgdmFsdWVzIGluIGZpbGUgZGV0YWlscyBmaWVsZCBgJXMnIChjb21wYXJlZCB0byBvdGhlcnMpIgorbXNnc3RyICLgpKvgpL7gpIfgpLIg4KS14KS/4KS14KSw4KSjIOCkq+CkvuCkgeCkn+CkruCkviDgpKfgpYfgpLDgpYgg4KSu4KS+4KSo4KS54KSw4KWCIGAlcycgKOCkheCkqOCljeCkr+CkuOCkguCklyDgpKbgpL7gpJzgpYfgpK7gpL4pIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAidG9vIGZldyB2YWx1ZXMgaW4gZmlsZSBkZXRhaWxzIGZpZWxkIGAlcycgKGNvbXBhcmVkIHRvIG90aGVycykiCittc2dzdHIgIuCkq+CkvuCkh+CksiDgpLXgpL/gpLXgpLDgpKMg4KSr4KS+4KSB4KSf4KSu4KS+IOCkp+Clh+CksOCliCDgpKXgpYvgpLDgpYgg4KSu4KS+4KSo4KS54KSw4KWCIGAlcycgKOCkheCkqOCljeCkr+CkuOCkguCklyDgpKbgpL7gpJzgpYfgpK7gpL4pIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxNTQKK21zZ2lkICJ5ZXMvbm8gaW4gYm9vbGVhbiBmaWVsZCIKK21zZ3N0ciAi4KSs4KWL4KSy4KWH4KSH4KSoIOCkq+CkvuCkgeCkn+CkruCkviDgpLngpYsv4KS54KWL4KSH4KSoIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxNzQKK21zZ2lkICJ3b3JkIGluIGBwcmlvcml0eScgZmllbGQiCittc2dzdHIgImDgpKrgpY3gpLDgpL7gpKXgpK7gpL/gpJXgpKTgpL4nIOCkq+CkvuCkgeCkn+CkruCkviDgpLbgpKzgpY3gpKYg4KSt4KS/4KSk4KWN4KSwIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxODYKK21zZ2lkICJ2YWx1ZSBmb3IgYHN0YXR1cycgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICJg4KS14KS44KWN4KSk4KWB4KS44KWN4KSl4KS/4KSk4KS/JyDgpJXgpL4g4KSy4KS+4KSX4KS/IOCkruCkvuCkqCDgpKvgpL7gpIHgpJ8g4KSq4KWN4KSw4KSC4KS44KSX4KSu4KS+IOCkheCkqOClgeCkruCkpOCkvyDgpKbgpL/gpIfgpKbgpYjgpKgg4KWkIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxOTEKK21zZ2lkICJmaXJzdCAod2FudCkgd29yZCBpbiBgc3RhdHVzJyBmaWVsZCIKK21zZ3N0ciAi4KSq4KS54KS/4KSy4KWLICjgpJrgpL7gpLngpKjgpYHgpLngpYHgpKjgpY3gpJspIHdvcmQgaW4gYHN0YXR1cycg4KSr4KS+4KSB4KSfIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxOTQKK21zZ2lkICJzZWNvbmQgKGVycm9yKSB3b3JkIGluIGBzdGF0dXMnIGZpZWxkIgorbXNnc3RyICLgpLjgpYfgpJXgpYfgpKPgpY3gpKEgKOCkpOCljeCksOClgeCkn+Ckvykgd29yZCBpbiBgc3RhdHVzJyDgpKvgpL7gpIHgpJ8iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE5NworbXNnaWQgInRoaXJkIChzdGF0dXMpIHdvcmQgaW4gYHN0YXR1cycgZmllbGQiCittc2dzdHIgIuCkpOClh+CkuOCljeCksOCliyAo4KS14KS44KWN4KSk4KWB4KS44KWN4KSl4KS/4KSk4KS/KSB3b3JkIGluIGBzdGF0dXMnIOCkq+CkvuCkgeCknyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjA3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJlcnJvciBpbiBWZXJzaW9uIHN0cmluZyBgJS4yNTBzJzogJS4yNTBzIgorbXNnaWQgImVycm9yIGluIFZlcnNpb24gc3RyaW5nICclLjI1MHMnIgorbXNnc3RyICLgpLjgpILgpLjgpY3gpJXgpLDgpKMg4KS44KWN4KSf4KWN4KSw4KS/4KSZYCUuMjUwcyc6ICUuMjUwcyDgpK7gpL4g4KSk4KWN4KSw4KWB4KSf4KS/IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyMTgKK21zZ2lkICJvYnNvbGV0ZSBgUmV2aXNpb24nIG9yIGBQYWNrYWdlLVJldmlzaW9uJyBmaWVsZCB1c2VkIgorbXNnc3RyICLgpIXgpKrgpY3gpLDgpJrgpLLgpL/gpKQgYFJldmlzaW9uJyDgpLXgpL4gYFBhY2thZ2UtUmV2aXNpb24nIOCkq+CkvuCkgeCknyDgpKrgpY3gpLDgpK/gpYvgpJciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjIzNQorbXNnaWQgInZhbHVlIGZvciBgY29uZmlnLXZlcnNpb24nIGZpZWxkIG5vdCBhbGxvd2VkIGluIHRoaXMgY29udGV4dCIKK21zZ3N0ciAiYGNvbmZpZy12ZXJzaW9uJyDgpJXgpL4g4KSy4KS+4KSX4KS/IOCkruCkvuCkqCDgpKvgpL7gpIHgpJ8g4KSv4KWLIOCkquCljeCksOCkuOCkguCkl+CkruCkviDgpIXgpKjgpYHgpK7gpKTgpL8g4KSm4KS/4KSm4KWI4KSoIOClpCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjQwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJlcnJvciBpbiBDb25maWctVmVyc2lvbiBzdHJpbmcgYCUuMjUwcyc6ICUuMjUwcyIKK21zZ2lkICJlcnJvciBpbiBDb25maWctVmVyc2lvbiBzdHJpbmcgJyUuMjUwcyciCittc2dzdHIgIuCkleCkqOCljeCkq+Ckv+Ckly3gpLjgpILgpLjgpY3gpJXgpLDgpKMg4KS44KWN4KSf4KS/4KSZIGAlLjI1MHMnOiAlLjI1MHMg4KSu4KS+IOCkpOCljeCksOClgeCkn+CkvyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjY2CisjLCBjLWZvcm1hdAorbXNnaWQgInZhbHVlIGZvciBgY29uZmZpbGVzJyBoYXMgbWFsZm9ybWF0dGVkIGxpbmUgYCUuKnMnIgorbXNnc3RyICJgY29uZmZpbGVzJyDgpJXgpL4g4KSy4KS+4KSX4KS/IOCkruCkvuCkqOCkuOCkguCklyDgpKjgpLDgpL7gpK7gpY3gpLDgpYsg4KSi4KS+4KSB4KSa4KS+4KSs4KSm4KWN4KSnIOCkl+CksOCkv+Ckj+CkleCliyDgpLDgpYfgpJbgpL4gYCUuKnMnIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyODcKKyMsIGMtZm9ybWF0Cittc2dpZCAidmFsdWUgZm9yIGBjb25mZmlsZXMnIGhhcyBsaW5lIHN0YXJ0aW5nIHdpdGggbm9uLXNwYWNlIGAlYyciCittc2dzdHIgImBjb25mZmlsZXMnIOCkleCkviDgpLLgpL7gpJfgpL8g4KSu4KS+4KSo4KS44KSC4KSXIOCkluCkvuCksuClgCDgpLjgpY3gpKXgpL7gpKgg4KSo4KSt4KSP4KSV4KWLYCVjJyDgpKzgpL7gpJ8g4KSy4KS+4KSH4KSoIOCkuOClgeCksOClgiDgpJsg4KWkIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzozMDQKK21zZ2lkICJyb290IG9yIG51bGwgZGlyZWN0b3J5IGlzIGxpc3RlZCBhcyBhIGNvbmZmaWxlIgorbXNnc3RyICLgpK7gpYLgpLIg4KS14KS+IOCktuClgeCkqOCljeCkryDgpKHgpL7gpIfgpLDgpYfgpJXgpY3gpJ/gpLDgpYAg4KSV4KSo4KWN4KSr4KSr4KS+4KSH4KSy4KSV4KWLIOCksOClgeCkquCkruCkviDgpLjgpYLgpJrgpL/gpKzgpKbgpY3gpKcg4KSX4KSw4KS/4KSo4KWN4KSbIOClpCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MzY1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJgJXMnIGZpZWxkLCBtaXNzaW5nIHBhY2thZ2UgbmFtZSwgb3IgZ2FyYmFnZSB3aGVyZSBwYWNrYWdlIG5hbWUgZXhwZWN0ZWQiCittc2dzdHIgImAlcycg4KSr4KS+4KSB4KSfLCDgpLngpLDgpL7gpI/gpJXgpYsg4KSq4KWN4KSv4KS+4KSV4KWH4KScIOCkqOCkvuCkriwg4KS14KS+IOCkq+Cli+CkueCksCDgpJzgpLngpL7gpIEg4KSq4KWN4KSv4KS+4KSV4KWH4KScIOCkqOCkvuCkriDgpIbgpLbgpL4g4KSX4KSw4KS/4KSv4KWLIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzozNzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBmaWVsZCwgaW52YWxpZCBwYWNrYWdlIG5hbWUgYCUuMjU1cyc6ICVzIgorbXNnc3RyICJgJXMnIOCkq+CkvuCkgeCknywg4KSF4KS14KWI4KSnIOCkquCljeCkr+CkvuCkleClh+CknCDgpKjgpL7gpK4gYCUuMjU1cyc6ICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgYmFkIHZlcnNpb24gcmVsYXRpb25zaGlwICVjJWMiCittc2dzdHIgIiIKKyJgJXMnIOCkq+CkvuCkgeCknywg4KSy4KS+4KSIIOCkqOCkv+CksOCljeCkpuClh+CktuCkqGAlLjI1NXMnOlxuIgorIuCkluCksOCkvuCkrCDgpLjgpILgpLjgpY3gpJXgpLDgpKMg4KS44KSC4KSu4KWN4KSs4KSo4KWN4KSnICVjJWMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQxMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOlxuIgorIiBgJWMnIGlzIG9ic29sZXRlLCB1c2UgYCVjPScgb3IgYCVjJWMnIGluc3RlYWQiCittc2dzdHIgIiIKKyJgJXMnIOCkq+CkvuCkgeCknywg4KSy4KS+4KSIIOCkqOCkv+CksOCljeCkpuClh+CktuCkqGAlLjI1NXMnOlxuIgorIiBgJWMnIOCkheCkquCljeCksOCkmuCksuCkv+CkpCDgpJsgLCDgpLjgpL7gpJ/gpY3gpJ/gpYvgpK7gpL4gYCVjPScg4KS14KS+IGAlYyVjJyDgpKrgpY3gpLDgpK/gpYvgpJcg4KSX4KSw4KWN4KSo4KWB4KS54KWL4KS44KWNIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgaW1wbGljaXQgZXhhY3QgbWF0Y2ggb24gdmVyc2lvbiBudW1iZXIsIHN1Z2dlc3QgdXNpbmcgYD0nIGluc3RlYWQiCittc2dzdHIgIiIKKyJgJXMnIOCkq+CkvuCkgeCknywg4KSy4KS+4KSIIOCkqOCkv+CksOCljeCkpuClh+CktuCkqCBgJS4yNTVzJzpcbiIKKyIg4KS44KWC4KSa4KS/4KSkIOCkuOCkguCkuOCljeCkleCksOCkoyDgpKjgpK7gpY3gpKzgpLDgpK7gpL4g4KSg4KWN4KSv4KS+4KSV4KWIIOCkruCkv+CksuCljeCkr+Cliywg4KS44KS+4KSf4KWL4KSu4KS+IGA9JyDgpKrgpY3gpLDgpK/gpYvgpJcg4KSX4KSw4KWN4KSoIOCkuOClgeCkneCkvuCktSDgpJsiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQzMAorbXNnaWQgIk9ubHkgZXhhY3QgdmVyc2lvbnMgbWF5IGJlIHVzZWQgZm9yIFByb3ZpZGVzIgorbXNnc3RyICLgpKrgpY3gpLDgpKbgpL7gpKgg4KSX4KSw4KWN4KSm4KSb4KSV4KS+IOCksuCkvuCkl+CkvyDgpK7gpL7gpKTgpY3gpLAg4KSg4KWN4KSv4KS+4KSV4KWIIOCkuOCkguCkuOCljeCkleCksOCko+CkueCksOClgiDgpKrgpY3gpLDgpK/gpYvgpJcg4KS54KWB4KSoIOCkuOCkleCljeCkmyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6XG4iCisiIHZlcnNpb24gdmFsdWUgc3RhcnRzIHdpdGggbm9uLWFscGhhbnVtZXJpYywgc3VnZ2VzdCBhZGRpbmcgYSBzcGFjZSIKK21zZ3N0ciAiIgorImAlcycg4KSr4KS+4KSB4KSfLCDgpLLgpL7gpIgg4KSo4KS/4KSw4KWN4KSm4KWH4KS24KSoIGAlLjI1NXMnOlxuIgorIiDgpLjgpILgpLjgpY3gpJXgpLDgpKMg4KSu4KS+4KSoIOCkheCksuCljeCkq+CkviDgpLjgpJngpY3gpJbgpY3gpK/gpL7gpKTgpY3gpK7gpJUg4KSo4KS54KWB4KSo4KWHIOCkpuClh+CkluCkvyDgpLjgpYHgpLDgpYIg4KS54KWB4KSo4KWN4KSbLCDgpJbgpL7gpLLgpYAg4KSg4KS+4KSB4KSJIOCkpeCkquCljeCkqCDgpLjgpYHgpJ3gpL7gpLUg4KSX4KSw4KS/4KSo4KWN4KSbIOClpCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDUxIGxpYi9kcGtnL2ZpZWxkcy5jOjQ1NQorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6IHZlcnNpb24gY29udGFpbnMgYCVjJyIKK21zZ3N0ciAiYCVzJyDgpKvgpL7gpIHgpJ8sIGAlLjI1NXMnIOCksuCkvuCkiCDgpLjgpKjgpY3gpKbgpLDgpY3gpK06IOCkuOCkguCkuOCljeCkleCksOCkoyAnJWMnIOCkuOCkruCkvuCkueCkv+CkpCDgpJfgpLDgpY3gpKbgpJsiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ1OQorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6IHZlcnNpb24gdW50ZXJtaW5hdGVkIgorbXNnc3RyICJgJXMnIOCkq+CkvuCkgeCknywgYCUuMjU1cycg4KSy4KS+4KSIIOCkuOCkqOCljeCkpuCksOCljeCkrTog4KS44KSu4KS+4KSq4KWN4KSkIOCkqOCkreCkj+CkleCliyDgpLjgpILgpLjgpY3gpJXgpLDgpKMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ2NQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOiBlcnJvciBpbiB2ZXJzaW9uOiAlLjI1NXMiCittc2dpZCAiJyVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvICclLjI1NXMnOiBlcnJvciBpbiB2ZXJzaW9uIgorbXNnc3RyICJgJXMnIOCkq+CkvuCkgeCknywgJS4yNTVzJyDgpLLgpL7gpIgg4KS44KSo4KWN4KSm4KSw4KWN4KStOiDgpLjgpILgpLjgpY3gpJXgpLDgpKPgpK7gpL4g4KSk4KWN4KSw4KWB4KSf4KS/OiAlLjI1NXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ3NQorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGZpZWxkLCBzeW50YXggZXJyb3IgYWZ0ZXIgcmVmZXJlbmNlIHRvIHBhY2thZ2UgYCUuMjU1cyciCittc2dzdHIgImAlcycg4KSr4KS+4KSB4KSfLCDgpKrgpY3gpK/gpL7gpJXgpYfgpJwgYCUuMjU1cycg4KSy4KS+4KSIIOCkuOCkqOCljeCkpuCksOCljeCkrSDgpKrgpJvgpL8g4KS14KS+4KSV4KWN4KSvIOCkuOCkguCksOCkmuCkqOCkviDgpKTgpY3gpLDgpYHgpJ/gpL8iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ4MgorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZXMgKGB8Jykgbm90IGFsbG93ZWQgaW4gJXMgZmllbGQiCittc2dzdHIgIuCkq+CkvuCkgeCknyAlcyDgpK7gpL4g4KS14KWI4KSV4KSy4KWN4KSq4KS/4KSV4KS54KSw4KWCIChgfCcpIOCksuCkvuCkiCDgpIXgpKjgpYHgpK7gpKTgpL8g4KSm4KS/4KSm4KWI4KSoIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1MzYKKyMsIGZ1enp5Cittc2dpZCAidmFsdWUgZm9yIGB0cmlnZ2Vycy1wZW5kaW5nJyBmaWVsZCBub3QgYWxsb3dlZCBpbiB0aGlzIGNvbnRleHQiCittc2dzdHIgImBjb25maWctdmVyc2lvbicg4KSV4KS+IOCksuCkvuCkl+CkvyDgpK7gpL7gpKgg4KSr4KS+4KSB4KSfIOCkr+CliyDgpKrgpY3gpLDgpLjgpILgpJfgpK7gpL4g4KSF4KSo4KWB4KSu4KSk4KS/IOCkpuCkv+CkpuCliOCkqCDgpaQiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU0MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiaWxsZWdhbCBwZW5kaW5nIHRyaWdnZXIgbmFtZSBgJS4yNTVzJzogJXMiCittc2dzdHIgImAlcycg4KSr4KS+4KSB4KSfLCDgpIXgpLXgpYjgpKcg4KSq4KWN4KSv4KS+4KSV4KWH4KScIOCkqOCkvuCkriBgJS4yNTVzJzogJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU0NworIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgcGVuZGluZyB0cmlnZ2VyIGAlLjI1NXMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU2MQorIywgZnV6enkKK21zZ2lkICJ2YWx1ZSBmb3IgYHRyaWdnZXJzLWF3YWl0ZWQnIGZpZWxkIG5vdCBhbGxvd2VkIGluIHRoaXMgY29udGV4dCIKK21zZ3N0ciAiYOCkteCkuOCljeCkpOClgeCkuOCljeCkpeCkv+CkpOCkvycg4KSV4KS+IOCksuCkvuCkl+CkvyDgpK7gpL7gpKgg4KSr4KS+4KSB4KSfIOCkquCljeCksOCkguCkuOCkl+CkruCkviDgpIXgpKjgpYHgpK7gpKTgpL8g4KSm4KS/4KSH4KSm4KWI4KSoIOClpCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTY4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJpbGxlZ2FsIHBhY2thZ2UgbmFtZSBpbiBhd2FpdGVkIHRyaWdnZXIgYCUuMjU1cyc6ICVzIgorbXNnc3RyICLgpLLgpL7gpIfgpKggJWQ6ICUuMjUwcyDgpK7gpL4g4KSF4KS14KWI4KSnIOCkquCljeCkr+CkvuCkleClh+CknCDgpKjgpL7gpK4iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU3NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIGF3YWl0ZWQgdHJpZ2dlciBwYWNrYWdlIGAlLjI1NXMnIgorbXNnc3RyICLgpKrgpY3gpK/gpL7gpJXgpYfgpJwgYCUuMjUwcycg4KSV4KS+IOCksuCkvuCkl+CkvyDgpKvgpL7gpIfgpLLgpJXgpYsg4KS44KWC4KSa4KWAIgorCisjOiBsaWIvZHBrZy9maWxlLmM6NTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IHNvdXJjZSBmaWxlICclLjI1MHMnIgorbXNnc3RyICLgpLjgpY3gpLDgpYvgpKQg4KSr4KS+4KSH4KSyIGAlLjI1MHMnIOCkluCli+CksuCljeCkqCDgpIXgpJXgpY3gpLfgpK4iCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzo1NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoYW5nZSBvd25lcnNoaXAgb2YgdGFyZ2V0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgIuCkqOCkr+CkvuCkgSDgpLXgpL/gpKTgpLDgpKMg4KSV4KSo4KWN4KSr4KSr4KS+4KSH4KSyIGAlLjI1MHMn4KSV4KWLIOCkuOCljeCkteCkv+CkruCkv+CkpOCljeCktSDgpKrgpLDgpL/gpLXgpLDgpY3gpKTgpKgg4KSX4KSw4KWN4KSoIOCkheCkleCljeCkt+CkriIKKworIzogbGliL2Rwa2cvZmlsZS5jOjU5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IG1vZGUgb2YgdGFyZ2V0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgIuCkqOCkr+CkvuCkgSDgpLXgpL/gpKTgpLDgpKMg4KSV4KSo4KWN4KSr4KSr4KS+4KSH4KSyIGAlLjI1MHMn4KSV4KWLIOCkruCli+CkoSDgpLjgpYfgpJ8g4KSX4KSw4KWN4KSoIOCkheCkleCljeCkt+CkriIKKworIzogbGliL2Rwa2cvZmlsZS5jOjg1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gdW5sb2NrICVzOiAlcyIKK21zZ2lkICJ1bmFibGUgdG8gdW5sb2NrICVzIgorbXNnc3RyICIlcyDgpKTgpL7gpLLgpY3gpJrgpL4g4KSW4KWL4KSy4KWN4KSoIOCkheCkleCljeCkt+CkrjogJXMiCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzoxMTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGVjayBmaWxlICclcycgbG9jayBzdGF0dXMiCittc2dzdHIgIuCkuOCljeCksOCli+CkpCDgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KSW4KWL4KSy4KWN4KSoIOCkheCkleCljeCkt+CkriIKKworIzogbGliL2Rwa2cvZmlsZS5jOjE0NgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic3RhdHVzIGRhdGFiYXNlIGFyZWEgaXMgbG9ja2VkIGJ5IGFub3RoZXIgcHJvY2VzcyIKK21zZ2lkICIlcyBpcyBsb2NrZWQgYnkgYW5vdGhlciBwcm9jZXNzIgorbXNnc3RyICLgpIXgpKjgpY3gpK8g4KSq4KWN4KSw4KSV4KWN4KSw4KS/4KSv4KS+4KSm4KWN4KSn4KS+4KSw4KS+IOCkteCkuOCljeCkpOClgeCkuOCljeCkpeCkv+CkpOCkvyDgpKHgpYfgpJ/gpL7gpLXgpYfgpLYg4KSV4KWN4KS34KWH4KSk4KWN4KSw4KSu4KS+IOCkpOCkvuCksuCljeCkmuCkviDgpLLgpJfgpL7gpIfgpKjgpY3gpJsg4KWkIgorCisjOiBsaWIvZHBrZy9maWxlLmM6MTQ4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gdW5sb2NrICVzOiAlcyIKK21zZ2lkICJ1bmFibGUgdG8gbG9jayAlcyIKK21zZ3N0ciAiJXMg4KSk4KS+4KSy4KWN4KSa4KS+IOCkluCli+CksuCljeCkqCDgpIXgpJXgpY3gpLfgpK46ICVzIgorCisjOiBsaWIvZHBrZy9sb2cuYzo1MworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBvcGVuIGxvZyBgJXMnOiAlc1xuIgorbXNnc3RyICLgpLLgpJcg4KSW4KWL4KSy4KWN4KSoIOCkuOCkleClh+CkqCBgJXMnOiAlc1xuIgorCisjOiBsaWIvZHBrZy9sb2cuYzo4NQorbXNnaWQgIjxwYWNrYWdlIHN0YXR1cyBhbmQgcHJvZ3Jlc3MgZmlsZSBkZXNjcmlwdG9yPiIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9sb2cuYzoxMTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSB0byBzdGF0dXMgZmQgJWQiCittc2dzdHIgImAlLjI1MHMnIOCkleCliyDgpIXgpKbgpY3gpK/gpL7gpLXgpKfgpL/gpJUg4KSX4KSw4KS/4KSP4KSV4KWLIOCkteCkuOCljeCkpOClgeCkuOCljeCkpeCkv+CkpOCkvyDgpLLgpYfgpJbgpY3gpKgg4KSF4KSV4KWN4KS34KSuIgorCisjOiBsaWIvZHBrZy9tbGliLmM6NDQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAibWFsbG9jIGZhaWxlZCAoJXp1IGJ5dGVzKSIKK21zZ3N0ciAi4KSw4KS/4KSP4KSy4KWL4KSVIOCkheCkuOCkq+CksiAoJWxkIOCkrOCkvuCkh+Ckn+CkueCksOClgikiCisKKyM6IGxpYi9kcGtnL21saWIuYzo1OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAicmVhbGxvYyBmYWlsZWQgKCV6dSBieXRlcykiCittc2dzdHIgIuCksOCkv+Ckj+CksuCli+CklSDgpIXgpLjgpKvgpLIgKCVsZCDgpKzgpL7gpIfgpJ/gpLngpLDgpYIpIgorCisjOiBsaWIvZHBrZy9tbGliLmM6NzIgbGliL2Rwa2cvbWxpYi5jOjkwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNzcKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzozMzQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMDcKKyMsIGZ1enp5Cittc2dpZCAiZmFpbGVkIHRvIGFsbG9jYXRlIG1lbW9yeSIKK21zZ3N0ciAi4KSh4KS+4KSH4KSw4KWH4KSV4KWN4KSf4KSw4KWAIOCkuOCkv+CksOCljeCknOCkqOCkviDgpJfgpLDgpY3gpKgg4KSF4KS44KSr4KSyIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBkdXAgZm9yIHN0ZCVzIgorbXNnc3RyICJzdGQlcyDgpJXgpL4g4KSy4KS+4KSX4KS/IGR1cCDgpJfgpLDgpY3gpKgg4KSF4KS44KSr4KSyIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTAzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBkdXAgZm9yIGZkICVkIgorbXNnc3RyICJmZCAlZCDgpJXgpL4g4KSy4KS+4KSX4KS/IGR1YiDgpJfgpLDgpY3gpKgg4KSF4KS44KSr4KSyIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTA5Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBwaXBlIgorbXNnc3RyICLgpKrgpL7gpIfgpKog4KS44KS/4KSw4KWN4KSc4KSo4KS+IOCkl+CksOCljeCkqCDgpIXgpLjgpKvgpLIiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMTcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHdyaXRpbmcgdG8gJyVzJyIKK21zZ3N0ciAi4KSy4KWH4KSW4KWN4KSm4KWIIOCkl+CksOCljeCkpuCkviDgpKTgpY3gpLDgpYHgpJ/gpL8gYCVzJyIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBmaWxlZGVzY3JpcHRvciBmbGFncyBmb3IgJS4yNTBzIgorbXNnc3RyICIlLjI1MHMg4KSV4KS+IOCksuCkvuCkl+CkvyDgpKvgpL7gpIHgpJ8g4KS44KWN4KSV4KWN4KSw4KS/4KSq4KWN4KSf4KSwIOCkneCko+CljeCkoeCkvuCkueCksOClgiDgpKrgpKLgpY3gpKgg4KSF4KSV4KWN4KS34KSuIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTI2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgY2xvc2Utb24tZXhlYyBmbGFnIGZvciAlLjI1MHMiCittc2dzdHIgIiUuMjUwcyDgpJXgpL4g4KSy4KS+4KSX4KS/IOCkrOCkqOCljeCkpi3gpK7gpL4t4KSV4KS+4KSw4KWN4KSv4KS+4KSo4KWN4KS14KSv4KSoIOCkuOClh+CknyDgpJfgpLDgpY3gpKgg4KSF4KSV4KWN4KS34KSuIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6NjMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImNvbmZpZ3VyYXRpb24gZXJyb3I6ICVzOiVkOiAlcyIKK21zZ3N0ciAi4KSV4KSo4KWN4KSr4KS/4KSX4KSw4KWH4KS44KSoIOCkpOCljeCksOClgeCkn+CkvzogJXMg4KSy4KS+4KSIIOCkj+CkieCkn+CkviDgpK7gpL7gpKgg4KSa4KS+4KS54KS/4KSo4KWN4KSbIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6NzUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuIGNvbmZpZ3VyYXRpb24gZmlsZSAnJS4yNTVzJyBmb3IgcmVhZGluZzogJXMiCittc2dzdHIgImAlLjI1NXMnIOCkleCkviDgpLLgpL7gpJfgpL8g4KSq4KSi4KWN4KSo4KSV4KS+IOCksuCkvuCkl+CkvyDgpJXgpKjgpY3gpKvgpL/gpJfgpLDgpYfgpLjgpKgg4KSr4KS+4KSH4KSyIOCkluCli+CksuCljeCkqCDgpIXgpLjgpKvgpLIiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5iYWxhbmNlZCBxdW90ZXMgaW4gJyVzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTE3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiAnJXMnIgorbXNnc3RyICLgpIXgpJzgpY3gpJ7gpL7gpKQg4KS14KS/4KSV4KSy4KWN4KSqIGAlcyciCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiclcycgbmVlZHMgYSB2YWx1ZSIKK21zZ3N0ciAiLS0lcyDgpLXgpL/gpJXgpLLgpY3gpKrgpLLgpYcg4KSP4KSJ4KSf4KS+IOCkruCkvuCkqCDgpLLgpL/gpKjgpY3gpJsiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMjcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiclcycgZG9lcyBub3QgdGFrZSBhIHZhbHVlIgorbXNnc3RyICItLSVzIOCkteCkv+CkleCksuCljeCkquCksuClhyDgpI/gpIngpJ/gpL4g4KSu4KS+4KSoIOCksuCkv+CkpuCliOCkqCIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjEzMworIywgYy1mb3JtYXQKK21zZ2lkICJyZWFkIGVycm9yIGluIGNvbmZpZ3VyYXRpb24gZmlsZSBgJS4yNTVzJyIKK21zZ3N0ciAi4KSV4KSo4KWN4KSr4KS/4KSX4KSw4KWH4KS44KSoYCUuMjU1cycg4KSr4KS+4KSH4KSy4KSu4KS+IOCkpOCljeCksOClgeCkn+CkvyDgpKrgpKLgpY3gpKjgpYHgpLngpYvgpLjgpY0iCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyBjb25maWd1cmF0aW9uIGZpbGUgYCUuMjU1cyciCittc2dzdHIgIuCkleCkqOCljeCkq+Ckv+Ckl+CksOClh+CkuOCkqCDgpKvgpL7gpIfgpLJgJS4yNTVzJyDgpKzgpKjgpY3gpKYg4KSX4KSw4KWN4KSm4KS+IOCkpOCljeCksOClgeCkn+CkvyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjE3MAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igb3BlbmluZyBjb25maWd1cmF0aW9uIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICLgpJXgpKjgpY3gpKvgpL/gpJfgpLDgpYfgpLjgpKgg4KSr4KS+4KSH4KSyYCUuMjU1cycg4KSs4KSo4KWN4KSmIOCkl+CksOCljeCkpuCkviDgpKTgpY3gpLDgpYHgpJ/gpL8iCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gLS0lcyIKK21zZ3N0ciAi4KSF4KSc4KWN4KSe4KS+4KSkIOCkteCkv+CkleCksuCljeCkqiAtLSVzIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgb3B0aW9uIHRha2VzIGEgdmFsdWUiCittc2dzdHIgIi0tJXMg4KS14KS/4KSV4KSy4KWN4KSq4KSy4KWHIOCkj+CkieCkn+CkviDgpK7gpL7gpKgg4KSy4KS/4KSo4KWN4KSbIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjM3CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgb3B0aW9uIGRvZXMgbm90IHRha2UgYSB2YWx1ZSIKK21zZ3N0ciAiLS0lcyDgpLXgpL/gpJXgpLLgpY3gpKrgpLLgpYcg4KSP4KSJ4KSf4KS+IOCkruCkvuCkqCDgpLLgpL/gpKbgpYjgpKgiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyNDUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gLSVjIgorbXNnc3RyICLgpIXgpJzgpY3gpJ7gpL7gpKQg4KS14KS/4KSV4KSy4KWN4KSqIC0lYyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI1MAorIywgYy1mb3JtYXQKK21zZ2lkICItJWMgb3B0aW9uIHRha2VzIGEgdmFsdWUiCittc2dzdHIgIi0lYyDgpLLgpYcg4KSP4KSJ4KSf4KS+IOCkruCkvuCkqCDgpLLgpL/gpKjgpY3gpJsiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiLSVjIG9wdGlvbiBkb2VzIG5vdCB0YWtlIGEgdmFsdWUiCittc2dzdHIgIi0lYyDgpLXgpL/gpJXgpLLgpY3gpKrgpLLgpYcg4KSP4KSJ4KSf4KS+IOCkruCkvuCkqCDgpLLgpL/gpKbgpYjgpKgiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyNzEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIm9ic29sZXRlIG9wdGlvbiAnLS0lcydcbiIKK21zZ3N0ciAi4KSa4KWH4KSk4KS+4KS14KSo4KWAOiDgpIXgpKrgpY3gpLDgpJrgpLLgpL/gpKQg4KS14KS/4KSV4KSy4KWN4KSqIGAtLSVzJ1xuIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6Mjg3CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZsaWN0aW5nIGFjdGlvbnMgLSVjICgtLSVzKSBhbmQgLSVjICgtLSVzKSIKK21zZ3N0ciAi4KSm4KWN4KSn4KSo4KWN4KSm4KS+4KSk4KWN4KSu4KSVIOCkleCkvuCksOCljeCkr+CkueCksOClgiAtJWMgKC0tJXMpIOCksCAtJWMgKC0tJXMpIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgdmFsdWUgZm9yIGAlcycgZmllbGQiCittc2dzdHIgIuCkq+CkvuCkgeCkn2Alcycg4KSV4KS+IOCksuCkvuCkl+CkvyDgpKjgpJXgpY3gpJXgpLIg4KSq4KWN4KSw4KSk4KS/IOCkruCkvuCkqCIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoxNDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidXNlci1kZWZpbmVkIGZpZWxkIG5hbWUgYCUuKnMnIHRvbyBzaG9ydCIKK21zZ3N0ciAi4KSq4KWN4KSw4KSv4KWL4KSXIOCkleCksOCljeCkpOCkvi3gpKrgpLDgpL/gpK3gpL7gpLfgpL/gpKQg4KSr4KS+4KSB4KSfIOCkqOCkvuCkrmAlLipzJyDgpKfgpYfgpLDgpYgg4KSb4KWL4KSf4KWLIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgdmFsdWUgZm9yIHVzZXItZGVmaW5lZCBmaWVsZCBgJS4qcyciCittc2dzdHIgIuCkquCljeCksOCkr+Cli+Ckl+CkleCksOCljeCkpOCkvi3gpKrgpLDgpL/gpK3gpL7gpLfgpL/gpKQg4KSr4KS+4KSB4KSfYCUuKnMnIOCkleCkviDgpLLgpL7gpJfgpL8g4KSo4KSV4KWN4KSV4KSyIOCkquCljeCksOCkpOCkvyDgpK7gpL7gpKgiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjA3Cittc2dpZCAiQ29uZmlndXJlZC1WZXJzaW9uIGZvciBwYWNrYWdlIHdpdGggaW5hcHByb3ByaWF0ZSBTdGF0dXMiCittc2dzdHIgIuCkheCkqOClgeCkquCkr+ClgeCkleCljeCkpCDgpLXgpLjgpY3gpKTgpYHgpLjgpY3gpKXgpL/gpKTgpL/gpLjgpILgpJcg4KSq4KWN4KSv4KS+4KSV4KWH4KSc4KSV4KS+IOCksuCkvuCkl+CkvyDgpJXgpKjgpY3gpKvgpL/gpJfgpLAg4KSX4KSw4KS/4KSP4KSV4KWLLeCkuOCkguCkuOCljeCkleCksOCkoyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzICVzIGJ1dCB0cmlnZ2VycyBhcmUgYXdhaXRlZCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjIyMgorbXNnaWQgInBhY2thZ2UgaGFzIHN0YXR1cyB0cmlnZ2Vycy1hd2FpdGVkIGJ1dCBubyB0cmlnZ2VycyBhd2FpdGVkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjI4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgaGFzIHN0YXR1cyAlcyBidXQgdHJpZ2dlcnMgYXJlIHBlbmRpbmciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMzIKK21zZ2lkICJwYWNrYWdlIGhhcyBzdGF0dXMgdHJpZ2dlcnMtcGVuZGluZyBidXQgbm8gdHJpZ2dlcnMgcGVuZGluZyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjI0MgorbXNnaWQgIlBhY2thZ2Ugd2hpY2ggaW4gc3RhdGUgbm90LWluc3RhbGxlZCBoYXMgY29uZmZpbGVzLCBmb3JnZXR0aW5nIHRoZW0iCittc2dzdHIgIuCkuOCljeCkpeCkvuCkquCkqOCkviDgpKzgpL/gpLngpL/gpKgg4KSF4KS14KS44KWN4KSl4KS+4KSu4KS+IOCksOCkueClh+CkleCliyDgpKrgpY3gpK/gpL7gpJXgpYfgpJzgpK7gpL4g4KSV4KSo4KWN4KSr4KSr4KS+4KSH4KSyIOCkmywg4KSk4KS/4KSo4KS/4KS54KSw4KWB4KSy4KS+4KSIIOCkrOCkv+CksOCljeCkuOCkpuCliOCkmyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozMzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gcGFja2FnZSBpbmZvIGZpbGUgYCUuMjU1cycgZm9yIHJlYWRpbmciCittc2dzdHIgIuCkquCljeCkr+CkvuCkleClh+CknCDgpLjgpYLgpJrgpKjgpL4g4KSr4KS+4KSH4KSyIGAlLjI1NXMnIOCkquCkouCljeCkqOCkleCkviDgpLLgpL7gpJfgpL8g4KSW4KWL4KSy4KWN4KSoIOCkheCkuOCkq+CksiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozNDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2FuJ3Qgc3RhdCBwYWNrYWdlIGluZm8gZmlsZSBgJS4yNTVzJyIKK21zZ3N0ciAi4KSq4KWN4KSv4KS+4KSV4KWH4KScIOCkuOClguCkmuCkqOCkviDgpKvgpL7gpIfgpLIgYCUuMjU1cycg4KSk4KWL4KSV4KWN4KSoIOCkuOCkleCkv+CkpuCliOCkqCIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2FuJ3QgbW1hcCBwYWNrYWdlIGluZm8gZmlsZSBgJS4yNTVzJyIKK21zZ3N0ciAi4KSq4KWN4KSv4KS+4KSV4KWH4KScIOCkuOClguCkmuCkqOCkviDgpKvgpL7gpIfgpLJgJS4yNTVzJyBtbWFwIOCkl+CksOCljeCkqCDgpLjgpJXgpL/gpKbgpYjgpKgiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzUyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW4ndCBzdGF0IHBhY2thZ2UgaW5mbyBmaWxlIGAlLjI1NXMnIgorbXNnaWQgInJlYWRpbmcgcGFja2FnZSBpbmZvIGZpbGUgJyUuMjU1cyciCittc2dzdHIgIuCkquCljeCkr+CkvuCkleClh+CknCDgpLjgpYLgpJrgpKjgpL4g4KSr4KS+4KSH4KSyIGAlLjI1NXMnIOCkpOCli+CkleCljeCkqCDgpLjgpJXgpL/gpKbgpYjgpKgiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzYzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjbG9zZSBhZnRlciByZWFkOiBgJS4yNTVzJyIKK21zZ3N0ciAi4KSq4KSi4KWHIOCkquCkm+CkvyDgpKzgpKjgpY3gpKYg4KSX4KSw4KWN4KSoIOCkheCkuOCkq+CksjogYCUuMjU1cyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDA0CisjLCBjLWZvcm1hdAorbXNnaWQgIkVPRiBhZnRlciBmaWVsZCBuYW1lIGAlLipzJyIKK21zZ3N0ciAiRU9GIOCkquCkm+CkvyDgpKvgpL7gpIHgpJ8g4KSo4KS+4KSuIGAlLipzJyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MDcKKyMsIGMtZm9ybWF0Cittc2dpZCAibmV3bGluZSBpbiBmaWVsZCBuYW1lIGAlLipzJyIKK21zZ3N0ciAi4KSr4KS+4KSB4KSfIOCkqOCkvuCkriBgJS4qcyfgpK7gpL4g4KSo4KSv4KS+4KSBIOCksuCkvuCkh+CkqCIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiTVNET1MgRU9GICheWikgaW4gZmllbGQgbmFtZSBgJS4qcyciCittc2dzdHIgIiDgpKvgpL7gpIHgpJ8g4KSo4KS+4KSuYCUuKnMnIOCkruCkviBNU0RPUyBFT0YgKF5aKSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmllbGQgbmFtZSBgJS4qcycgbXVzdCBiZSBmb2xsb3dlZCBieSBjb2xvbiIKK21zZ3N0ciAi4KSr4KS+4KSB4KSfIOCkqOCkvuCkriBgJS4qcycg4KS14KS/4KSw4KS+4KSu4KSa4KS/4KSo4KWN4KS5IOCkpuCljeCkp+CkvuCksOCkviDgpLjgpL7gpKUg4KSm4KS/4KSo4KWBIOCkquCksOCljeCkmyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiRU9GIGJlZm9yZSB2YWx1ZSBvZiBmaWVsZCBgJS4qcycgKG1pc3NpbmcgZmluYWwgbmV3bGluZSkiCittc2dzdHIgIuCkq+CkvuCkgeCkn+CkleCliyDgpK7gpL7gpKggYCUuKnMnICjgpLngpLDgpL7gpI/gpJXgpYsg4KSF4KSo4KWN4KSk4KS/4KSuIOCkqOCkr+CkvuCkgeCksuCkvuCkh+CkqCkg4KSq4KS54KS/4KSy4KWHIEVPRiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiTVNET1MgRU9GIGNoYXIgaW4gdmFsdWUgb2YgZmllbGQgYCUuKnMnIChtaXNzaW5nIG5ld2xpbmU/KSIKK21zZ3N0ciAi4KSr4KS+4KSB4KSf4KSV4KWLIOCkruCkvuCkqCBgJS4qcycgKOCkueCksOCkvuCkh+CksOCkueClh+CkleCliyDgpKjgpK/gpL7gpIHgpLLgpL7gpIfgpKggPykg4KSu4KS+IE1TRE9TIEVPRiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0NDAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIm5ld2xpbmUgaW4gZmllbGQgbmFtZSBgJS4qcyciCittc2dpZCAiYmxhbmsgbGluZSBpbiB2YWx1ZSBvZiBmaWVsZCAnJS4qcyciCittc2dzdHIgIuCkq+CkvuCkgeCknyDgpKjgpL7gpK4gYCUuKnMn4KSu4KS+IOCkqOCkr+CkvuCkgSDgpLLgpL7gpIfgpKgiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDYxCisjLCBjLWZvcm1hdAorbXNnaWQgIkVPRiBkdXJpbmcgdmFsdWUgb2YgZmllbGQgYCUuKnMnIChtaXNzaW5nIGZpbmFsIG5ld2xpbmUpIgorbXNnc3RyICLgpKvgpL7gpIHgpJ/gpJXgpYsg4KSu4KS+4KSoIGAlLipzJyAo4KSF4KSo4KWN4KSk4KS/4KSuIOCkqOCkr+CkvuCkgeCksuCkvuCkh+CkqCDgpLngpLDgpL7gpIngpKbgpYgpIOCkrOClh+CksuCkviBFT0YiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NTQ2Cittc2dpZCAic2V2ZXJhbCBwYWNrYWdlIGluZm8gZW50cmllcyBmb3VuZCwgb25seSBvbmUgYWxsb3dlZCIKK21zZ3N0ciAi4KSn4KWH4KSw4KWIIOCkquCljeCkr+CkvuCkleClh+CknCDgpLjgpYLgpJrgpKjgpL4g4KSq4KWN4KSw4KS14KS/4KS34KWN4KSf4KS/4KS54KSw4KWCIOCkq+Clh+CksuCkviDgpKrgpLDgpY3gpK/gpYssIOCkruCkvuCkpOCljeCksCDgpI/gpIngpJ/gpL7gpLLgpL7gpIgg4KSF4KSo4KWB4KSu4KSk4KS/IOCkpeCkv+Ckr+CliyDgpaQiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NTcyCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHBhY2thZ2UgaW5mb3JtYXRpb24gaW4gYCUuMjU1cyciCittc2dzdHIgImAlLjI1NXMnIOCkquCljeCkr+CkvuCkleClh+CknCDgpLjgpYLgpJrgpKjgpL7gpLngpLDgpYIg4KSb4KWI4KSoIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzo0NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorInBhcnNpbmcgZmlsZSAnJS4yNTVzJyBuZWFyIGxpbmUgJWQgcGFja2FnZSAnJS4yNTVzJzpcbiIKKyIgJS4yNTVzIgorbXNnc3RyICIlcywg4KSr4KS+4KSH4KSyIGAlLjI1NXMn4KSu4KS+IOCkqOCknOCkv+CkleCkleCliyDgpLLgpL7gpIfgpKggJWQiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjQ4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisicGFyc2luZyBmaWxlICclLjI1NXMnIG5lYXIgbGluZSAlZDpcbiIKKyIgJS4yNTVzIgorbXNnc3RyICIlcywg4KSr4KS+4KSH4KSyIGAlLjI1NXMn4KSu4KS+IOCkqOCknOCkv+CkleCkleCliyDgpLLgpL7gpIfgpKggJWQiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjEyNQorbXNnaWQgIm1heSBub3QgYmUgZW1wdHkgc3RyaW5nIgorbXNnc3RyICLgpLDgpL/gpKTgpY3gpKTgpYsg4KS44KWN4KSf4KWN4KSw4KS/4KSZ4KWNIOCkueCli+Ckh+CkqCDgpLngpYvgpLLgpL4iCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjEyNworIywgZnV6enkKKyN8IG1zZ2lkICJtdXN0IHN0YXJ0IHdpdGggYW4gYWxwaGFudW1lcmljIgorbXNnaWQgIm11c3Qgc3RhcnQgd2l0aCBhbiBhbHBoYW51bWVyaWMgY2hhcmFjdGVyIgorbXNnc3RyICLgpI/gpIngpJ/gpL4g4KSF4KSy4KWN4KSr4KS+4KSo4KWN4KSv4KWB4KSu4KWH4KSw4KS/4KSVIOCkuOCkgeCklyDgpLjgpYHgpLDgpYIg4KSX4KSw4KWN4KSo4KWBIOCkquCksOCljeCkmyIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MTM2CisjLCBjLWZvcm1hdAorbXNnaWQgImNoYXJhY3RlciBgJWMnIG5vdCBhbGxvd2VkIChvbmx5IGxldHRlcnMsIGRpZ2l0cyBhbmQgY2hhcmFjdGVycyBgJXMnKSIKK21zZ3N0ciAi4KSV4KWN4KSv4KS+4KSw4KWH4KSV4KWN4KSf4KSwIGAlYycg4KSF4KSo4KWB4KSu4KSk4KS/IOCkm+CliOCkqCAo4KSF4KSV4KWN4KS34KSwLCDgpIXgpJngpY3gpJXgpLngpLDgpYIg4KSwIOCkleCljeCkr+CkvuCksOClh+CkleCljeCkn+CksOCkueCksOClgiBgJXMn4KSy4KS+4KSIIOCkruCkvuCkpOCljeCksCkiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjE3OAorIywgZnV6enkKKyN8IG1zZ2lkICI8bm9uZT4iCittc2djdHh0ICJ2ZXJzaW9uIgorbXNnaWQgIjxub25lPiIKK21zZ3N0ciAiPG5vbmU+IgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyMDkKK21zZ2lkICJ2ZXJzaW9uIHN0cmluZyBpcyBlbXB0eSIKK21zZ3N0ciAi4KS44KSC4KS44KWN4KSV4KSw4KSjIOCkuOCljeCkn+CljeCksOCkv+CkmeCljSDgpLDgpL/gpKTgpY3gpKTgpYsg4KSbIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyMjQKK21zZ2lkICJ2ZXJzaW9uIHN0cmluZyBoYXMgZW1iZWRkZWQgc3BhY2VzIgorbXNnc3RyICLgpLjgpILgpLjgpY3gpJXgpLDgpKMg4KS44KWN4KSf4KWN4KSw4KS/4KSZ4KWNIOCkuOCkgeCklyDgpLjgpK7gpY3gpK7gpL/gpLLgpL/gpKQg4KSW4KS+4KSy4KWAIOCkoOCkvuCkgeCkieCkueCksOClgiDgpJsg4KWkIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyMzAKK21zZ2lkICJlcG9jaCBpbiB2ZXJzaW9uIGlzIG5vdCBudW1iZXIiCittc2dzdHIgIuCkuOCkguCkuOCljeCkleCksOCko+CkruCkviDgpIfgpKrgpYvgpJog4KSo4KSu4KWN4KSs4KSwIOCkueCli+Ckh+CkqCIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjMyCittc2dpZCAibm90aGluZyBhZnRlciBjb2xvbiBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAi4KS44KSC4KS44KWN4KSV4KSw4KSjIOCkqOCkruCljeCkrOCksOCkruCkviDgpLXgpL/gpLDgpL7gpK4g4KSq4KSb4KS/IOCkleClh+CkueCkvyDgpKrgpKjgpL8g4KSb4KWI4KSoIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyNDcKK21zZ2lkICJ2ZXJzaW9uIG51bWJlciBkb2VzIG5vdCBzdGFydCB3aXRoIGRpZ2l0IgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjI1MAorIywgZnV6enkKKyN8IG1zZ2lkICJub3RoaW5nIGFmdGVyIGNvbG9uIGluIHZlcnNpb24gbnVtYmVyIgorbXNnaWQgImludmFsaWQgY2hhcmFjdGVyIGluIHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICLgpLjgpILgpLjgpY3gpJXgpLDgpKMg4KSo4KSu4KWN4KSs4KSw4KSu4KS+IOCkteCkv+CksOCkvuCkriDgpKrgpJvgpL8g4KSV4KWH4KS54KS/IOCkquCkqOCkvyDgpJvgpYjgpKgiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjI1NAorIywgZnV6enkKKyN8IG1zZ2lkICJub3RoaW5nIGFmdGVyIGNvbG9uIGluIHZlcnNpb24gbnVtYmVyIgorbXNnaWQgImludmFsaWQgY2hhcmFjdGVyIGluIHJldmlzaW9uIG51bWJlciIKK21zZ3N0ciAi4KS44KSC4KS44KWN4KSV4KSw4KSjIOCkqOCkruCljeCkrOCksOCkruCkviDgpLXgpL/gpLDgpL7gpK4g4KSq4KSb4KS/IOCkleClh+CkueCkvyDgpKrgpKjgpL8g4KSb4KWI4KSoIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyOTkgbGliL2Rwa2cvcGFyc2VoZWxwLmM6MzExCisjLCBjLWZvcm1hdAorbXNnaWQgIm1pc3NpbmcgJXMiCittc2dzdHIgIuCkueCksOCkvuCkh+CksOCkueClh+CkleCliyAlcyIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MzAxIGxpYi9kcGtnL3BhcnNlaGVscC5jOjMxNAorIywgYy1mb3JtYXQKK21zZ2lkICJlbXB0eSB2YWx1ZSBmb3IgJXMiCittc2dzdHIgIiAlcyDgpJXgpL4g4KSy4KS+4KSX4KS/IOCksOCkv+CkpOCljeCkpOCliyDgpK7gpL7gpKgiCisKKyM6IGxpYi9kcGtnL3BrZy1mb3JtYXQuYzo4MAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGNoYXJhY3RlciBgJWMnIGluIGZpZWxkIHdpZHRoXG4iCittc2dzdHIgIuCkleCljeCkr+CkvuCksOClh+CkleCljeCkn+CksGAlYycg4KSr4KS+4KSB4KSfIOCkmuCljOCkoeCkvuCkh+CkruCkviDgpIXgpLXgpYjgpKdcbiIKKworIzogbGliL2Rwa2cvcGtnLWZvcm1hdC5jOjE3MgorIywgYy1mb3JtYXQKK21zZ2lkICJDbG9zaW5nIGJyYWNlIG1pc3NpbmcgaW4gZm9ybWF0XG4iCittc2dzdHIgIuCkouCkvuCkgeCkmuCkvuCkruCkviDgpKzgpKjgpY3gpKYg4KSX4KSw4KWN4KSo4KWHIOCknOClgeCkgeCkl+ClhyDgpJXgpYvgpLfgpY3gpKDgpJXgpLngpLDgpYIg4KS54KSw4KS+4KSH4KSw4KS54KWH4KSV4KWLXG4iCisKKyM6IGxpYi9kcGtnL3BrZy1zaG93LmM6NDAKK21zZ2lkICIobm8gZGVzY3JpcHRpb24gYXZhaWxhYmxlKSIKK21zZ3N0ciAiKOCkleClgeCkqOCliCDgpLXgpLDgpY3gpKPgpKgg4KSJ4KSq4KSy4KSs4KWN4KSnIOCkm+CliOCkqCkiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzo1NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGlnbm9yZSBzaWduYWwgJXMgYmVmb3JlIHJ1bm5pbmcgJS4yNTBzIgorbXNnc3RyICLgpLjgpY3gpJXgpY3gpLDgpL/gpKrgpY3gpJ8g4KSa4KSy4KS+4KSJ4KSo4KWBIOCkquCkueCkv+CksuClhyDgpLjgpJngpY3gpJXgpYfgpKQgJXMg4KS14KWH4KSs4KS+4KS44KWN4KSk4KS+IOCkl+CksOCljeCkqCDgpIXgpJXgpY3gpLfgpK4iCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzo2OAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciB1bi1jYXRjaGluZyBzaWduYWwgJXM6ICVzXG4iCittc2dzdHIgIuCkheCkqC3gpJXgpY3gpK/gpL7gpJrgpL/gpJngpY0g4KSk4KWN4KSw4KWB4KSf4KS/ICVzOiAlc1xuIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgKHN1YnByb2Nlc3MpOiAlc1xuIgorbXNnc3RyICIlcyAo4KSJ4KSq4KSq4KWN4KSw4KSV4KWN4KSw4KS/4KSv4KS+KTogJXNcbiIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjg5IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo0NTQKK21zZ2lkICJmb3JrIGZhaWxlZCIKK21zZ3N0ciAi4KSr4KWN4KSw4KWL4KSVIOCkheCkuOCkq+CksiIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjExOQorIywgYy1mb3JtYXQKK21zZ2lkICJzdWJwcm9jZXNzICVzIHJldHVybmVkIGVycm9yIGV4aXQgc3RhdHVzICVkIgorbXNnc3RyICLgpIngpKrgpKrgpY3gpLDgpJXgpY3gpLDgpL/gpK/gpL7gpLngpLDgpYIgJXMg4KSr4KS/4KSw4KWN4KSk4KS+IOCkpOCljeCksOClgeCkn+CkvyDgpKjgpL/gpJXgpL7gpLgg4KS44KWN4KSl4KS/4KSk4KS/ICVkIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTI4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJzdWJwcm9jZXNzICVzIHdhcyBpbnRlcnJ1cHRlZCIKK21zZ3N0ciAiICVzIOCkleCkviDgpLLgpL7gpJfgpL8g4KSq4KSw4KWN4KSW4KSo4KWHIOCkheCkuOCkq+CksiDgpK3gpK/gpYsiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInN1YnByb2Nlc3MgJXMga2lsbGVkIGJ5IHNpZ25hbCAoJXMpJXMiCittc2dpZCAic3VicHJvY2VzcyAlcyB3YXMga2lsbGVkIGJ5IHNpZ25hbCAoJXMpJXMiCittc2dzdHIgIuCkieCkquCkquCljeCksOCkleCljeCksOCkv+Ckr+CkvuCkueCksOClgiAlcyDgpLjgpILgpJXgpYfgpKTgpKbgpY3gpKfgpL7gpLDgpL4g4KSu4KS+4KSw4KS/4KSv4KWLICglcyklcyIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEzMgorbXNnaWQgIiwgY29yZSBkdW1wZWQiCittc2dzdHIgIiwg4KSV4KWL4KSwIOCkpeClgeCkquCljeCksOCkv+Ckr+CliyIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJzdWJwcm9jZXNzICVzIGZhaWxlZCB3aXRoIHdhaXQgc3RhdHVzIGNvZGUgJWQiCittc2dzdHIgIuCkieCkquCkquCljeCksOCkleCljeCksOCkv+Ckr+CkvuCkueCksOClgiAlcyDgpKrgpLDgpY3gpJbgpKjgpYcg4KS44KWN4KSl4KS/4KSk4KS/IOCkleCli+CkoSAlZCDgpLjgpIHgpJcg4KSF4KS44KSr4KSyIOCkreCkr+CliyIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjE1MSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NDYxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ3YWl0IGZvciBzdWJwcm9jZXNzICVzIGZhaWxlZCIKK21zZ3N0ciAiICVzIOCkleCkviDgpLLgpL7gpJfgpL8g4KSq4KSw4KWN4KSW4KSo4KWHIOCkheCkuOCkq+CksiDgpK3gpK/gpYsiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgcGFja2FnZSBuYW1lIGAlLjI1MHMnIGluIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6ODEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInRydW5jYXRlZCB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJzdGF0b3ZlcnJpZGUg4KSr4KS+4KSH4KSyIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDo4NQorIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyBhdCBjaGFyYWN0ZXIgYCVzJyVzIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjEzNAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4vY3JlYXRlIHRyaWdnZXJzIGxvY2tmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLgpLjgpY3gpLDgpYvgpKQg4KSr4KS+4KSH4KSyIGAlLjI1MHMnIOCkluCli+CksuCljeCkqCDgpIXgpJXgpY3gpLfgpK4iCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjE0MQorIywgZnV6enkKK21zZ2lkICJ0cmlnZ2VycyBhcmVhIgorbXNnc3RyICIlcyDgpKTgpL7gpLLgpY3gpJrgpL4g4KSW4KWL4KSy4KWN4KSoIOCkheCkleCljeCkt+CkrjogJXMiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjE1MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4KSF4KSo4KWN4KSvIOCkqOCkr+CkvuCkgSDgpKvgpL7gpIfgpLIgYCUuMjUwcycgc3RhdCDgpJfgpLDgpY3gpKgg4KSF4KSV4KWN4KS34KSuIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNjUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuCkuOCljeCksOCli+CkpCDgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KSW4KWL4KSy4KWN4KSoIOCkheCkleCljeCkt+CkriIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MTc5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3Blbi9jcmVhdGUgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuCkqOCkr+CkvuCkgSDgpKHgpL/gpKrgpYvgpJ8g4KSr4KS+4KSH4KSyIGAlLjI1MHMnIOCkluCli+CksuCljeCkqCDgpIXgpJXgpY3gpLfgpK4iCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjIxNQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcmVhZGluZyB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLgpKvgpL7gpIfgpLIgJS4yNTVzIOCkrOCkvuCknyAlcyDgpKrgpKLgpY3gpKbgpL4g4KSk4KWN4KSw4KWB4KSf4KS/IgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoyMjMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4KSo4KSv4KS+4KSBIOCkoeCkv+CkquCli+CknyDgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KSW4KWL4KSy4KWN4KSoIOCkheCkleCljeCkt+CkriIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MjI4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuCkqOCkr+CkvuCkgSDgpKHgpL/gpKrgpYvgpJ8g4KSr4KS+4KSH4KSyIGAlLjI1MHMnIOCkluCli+CksuCljeCkqCDgpIXgpJXgpY3gpLfgpK4iCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjIzMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImAlLjI1NXMnIOCkleCliyDgpKjgpK/gpL7gpIEg4KS44KSC4KS44KWN4KSV4KSw4KSjIOCkuOCljeCkpeCkvuCkquCkqOCkviDgpJfgpLDgpY3gpKgg4KSF4KSV4KWN4KS34KSuIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MjIyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpbnZhbGlkIG9yIHVua25vd24gc3ludGF4IGluIHRyaWdnZXIgbmFtZSBgJS4yNTBzJyAoaW4gdHJpZ2dlciBpbnRlcmVzdHMgZm9yICIKKyJwYWNrYWdlIGAlLjI1MHMnKSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MjYzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiB0cmlnZ2VyIGludGVyZXN0IGxpc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4KSo4KSv4KS+4KSBIOCkoeCkv+CkquCli+CknyDgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KSW4KWL4KSy4KWN4KSoIOCkheCkleCljeCkt+CkriIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjI5MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJld2luZCB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuCkreCkvuCklyDgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KSq4KSi4KWN4KSm4KS+IOCkpOCljeCksOClgeCkn+CkvyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMwNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIHN5bnRheCBlcnJvcjsgaWxsZWdhbCBwYWNrYWdlIG5hbWUgYCUuMjUwcyc6ICIKKyIlLjI1MHMiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMxOAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuCkheCkqOCljeCkryDgpKjgpK/gpL7gpIEg4KSr4KS+4KSH4KSyIGAlLjI1MHMnIHN0YXQg4KSX4KSw4KWN4KSoIOCkheCkleCljeCkt+CkriIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMyMQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgIuCkheCkqOCljeCkryDgpKjgpK/gpL7gpIEg4KSr4KS+4KSH4KSyIGAlLjI1MHMnIHN0YXQg4KSX4KSw4KWN4KSoIOCkheCkleCljeCkt+CkriIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMyNAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAi4KSF4KSo4KWN4KSvIOCkqOCkr+CkvuCkgSDgpKvgpL7gpIfgpLIgYCUuMjUwcycgc3RhdCDgpJfgpLDgpY3gpKgg4KSF4KSV4KWN4KS34KSuIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzMyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJgJS4yNTVzJyDgpJXgpYsg4KSo4KSv4KS+4KSBIOCkuOCkguCkuOCljeCkleCksOCkoyDgpLjgpY3gpKXgpL7gpKrgpKjgpL4g4KSX4KSw4KWN4KSoIOCkheCkleCljeCkt+CkriIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjM0MCBsaWIvZHBrZy90cmlnbGliLmM6MzQyIGxpYi9kcGtnL3RyaWdsaWIuYzo0NzIKKyM6IHNyYy9yZW1vdmUuYzoyODYgc3JjL3JlbW92ZS5jOjM3NworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVtb3ZlIGAlLjI1MHMnIgorbXNnc3RyICJgJS4yNTBzJyDgpLngpJ/gpL7gpIngpKgg4KS44KSV4KWN4KSm4KWI4KSoIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzYwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuCkheCkqOCljeCkryDgpKjgpK/gpL7gpIEg4KSr4KS+4KSH4KSyIGAlLjI1MHMnIHN0YXQg4KSX4KSw4KWN4KSoIOCkheCkleCljeCkt+CkriIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjM4MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuCkheCkqOCljeCkryDgpKjgpK/gpL7gpIEg4KSr4KS+4KSH4KSyIGAlLjI1MHMnIHN0YXQg4KSX4KSw4KWN4KSoIOCkheCkleCljeCkt+CkriIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ1NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorImR1cGxpY2F0ZSBmaWxlIHRyaWdnZXIgaW50ZXJlc3QgZm9yIGZpbGVuYW1lIGAlLjI1MHMnIGFuZCBwYWNrYWdlIGAlLjI1MHMnIgorbXNnc3RyICLgpKjgpK/gpL7gpIEg4KS44KWC4KSa4KSo4KS+IOCkq+CkvuCkh+CksiBgJS4yNTBzJyDgpJXgpYsg4KSw4KWB4KSq4KSu4KS+IGAlLjI1MHMnIOCkuOCljeCkpeCkvuCkquCkqOCkviDgpJfgpLDgpY3gpKgg4KSF4KSV4KWN4KS34KSuIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDgzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuCkqOCkr+CkvuCkgSDgpKHgpL/gpKrgpYvgpJ8g4KSr4KS+4KSH4KSyIGAlLjI1MHMnIOCkluCli+CksuCljeCkqCDgpIXgpJXgpY3gpLfgpK4iCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0OTMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLgpKjgpK/gpL7gpIEg4KSh4KS/4KSq4KWL4KSfIOCkq+CkvuCkh+CksiBgJS4yNTBzJyDgpJbgpYvgpLLgpY3gpKgg4KSF4KSV4KWN4KS34KSuIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDk2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAi4KSo4KSv4KS+4KSBIOCkoeCkv+CkquCli+CknyDgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KSW4KWL4KSy4KWN4KSoIOCkheCkleCljeCkt+CkriIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ5OQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAi4KSo4KSv4KS+4KSBIOCkoeCkv+CkquCli+CknyDgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KSW4KWL4KSy4KWN4KSoIOCkheCkleCljeCkt+CkriIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjUwMworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuCkqOCkr+CkvuCkgSDgpKHgpL/gpKrgpYvgpJ8g4KSr4KS+4KSH4KSyIGAlLjI1MHMnIOCkluCli+CksuCljeCkqCDgpIXgpJXgpY3gpLfgpK4iCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1MDcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgYXMgYCUuMjUwcyciCittc2dzdHIgIuCkqOCkr+CkvuCkgSDgpLjgpYLgpJrgpKjgpL4g4KSr4KS+4KSH4KSyIGAlLjI1MHMnIOCkleCliyDgpLDgpYHgpKrgpK7gpL4gYCUuMjUwcycg4KS44KWN4KSl4KS+4KSq4KSo4KS+IOCkl+CksOCljeCkqCDgpIXgpJXgpY3gpLfgpK4iCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1NDIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4KSt4KS+4KSXIOCkq+CkvuCkh+CksiBgJS4yNTBzJyDgpKrgpKLgpY3gpKbgpL4g4KSk4KWN4KSw4KWB4KSf4KS/IgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTUyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLgpJXgpKjgpY3gpKvgpL/gpJfgpLDgpYfgpLjgpKhgJS4yNTVzJyDgpKvgpL7gpIfgpLLgpK7gpL4g4KSk4KWN4KSw4KWB4KSf4KS/IOCkquCkouCljeCkqOClgeCkueCli+CkuOCljSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjU2MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZmlsZSB0cmlnZ2VycyByZWNvcmQgbWVudGlvbnMgaWxsZWdhbCBwYWNrYWdlIG5hbWUgYCUuMjUwcycgKGZvciBpbnRlcmVzdCBpbiAiCisiZmlsZSBgJS4yNTBzJyk6ICUuMjUwcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NjY1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ0cmlnZ2VycyBjaSBmaWxlIGAlLjI1MHMnIGNvbnRhaW5zIGlsbGVnYWwgdHJpZ2dlciBzeW50YXggaW4gdHJpZ2dlciBuYW1lIGAiCisiJS4yNTBzJzogJS4yNTBzIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo2ODQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIHRyaWdnZXJzIGNpIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuCkuOCljeCksOCli+CkpCDgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KSW4KWL4KSy4KWN4KSoIOCkheCkleCljeCkt+CkriIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjY5OQorbXNnaWQgInRyaWdnZXJzIGNpIGZpbGUgY29udGFpbnMgdW5rbm93biBkaXJlY3RpdmUgc3ludGF4IgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo3MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJpZ2dlcnMgY2kgZmlsZSBjb250YWlucyB1bmtub3duIGRpcmVjdGl2ZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Nzc2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHRyaWdnZXJzIHN0YXRlIGRpcmVjdG9yeSBgJS4yNTBzJyIKK21zZ3N0ciAi4KSh4KS/4KSq4KWL4KSfIOCkoeCkvuCkh+CksOClh+CkleCljeCkn+CljeCksOClgCBgJS4yNTBzJyDgpKrgpKLgpY3gpKgg4KSF4KSV4KWN4KS34KSuIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Nzc5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IG93bmVyc2hpcCBvZiB0cmlnZ2VycyBzdGF0ZSBkaXJlY3RvcnkgYCUuMjUwcyciCittc2dzdHIgIuCkoeCkv+CkquCli+CknyDgpKHgpL7gpIfgpLDgpYfgpJXgpY3gpJ/gpY3gpLDgpYAgYCUuMjUwcycg4KSq4KSi4KWN4KSoIOCkheCkleCljeCkt+CkriIKKworIzogbGliL2Rwa2cvdHJpZ25hbWUuYzozNAorbXNnaWQgImVtcHR5IHRyaWdnZXIgbmFtZXMgYXJlIG5vdCBwZXJtaXR0ZWQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ25hbWUuYzozOAorbXNnaWQgInRyaWdnZXIgbmFtZSBjb250YWlucyBpbnZhbGlkIGNoYXJhY3RlciIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy91dGlscy5jOjU2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJyZWFkIGVycm9yIGluIGAlLjI1MHMnIgorbXNnc3RyICIlLjI1MHMg4KSu4KS+IOCkpOCljeCksOClgeCkn+CkvyDgpKrgpKLgpY3gpKjgpYHgpLngpYvgpLjgpY0iCisKKyM6IGxpYi9kcGtnL3V0aWxzLmM6NjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZnZXRzIGdhdmUgYW4gZW1wdHkgc3RyaW5nIGZyb20gYCUuMjUwcyciCittc2dzdHIgImZnZXRzIOCksuClhyBkaXZlcnNpb25zIFtpXSDgpKzgpL7gpJ8g4KSP4KSJ4KSf4KS+IOCksOCkv+CkpOCljeCkpOCliyDgpLjgpY3gpJ/gpY3gpLDgpL/gpJngpY0g4KSm4KS/4KSv4KWLIgorCisjOiBsaWIvZHBrZy91dGlscy5jOjYzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ0b28tbG9uZyBsaW5lIG9yIG1pc3NpbmcgbmV3bGluZSBpbiBgJS4yNTBzJyIKK21zZ3N0ciAi4KSr4KS+4KSH4KSyIGAlLjI1MHMnIOCkpuClguCkt+Ckv+CkpCDgpJsgLSAlLjI1MHMg4KSq4KSb4KS/IOCkqOCkr+CkvuCkgSDgpLLgpL7gpIfgpKgg4KS54KSw4KSf4KS+4KSH4KSw4KS54KWH4KSbIgorCisjOiBsaWIvZHBrZy91dGlscy5jOjc1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVvZiByZWFkaW5nIGAlLjI1MHMnIgorbXNnc3RyICIlLjI1MHMg4KSu4KS+IOCkheCkqOCkquClh+CkleCljeCkt+Ckv+CkpCDgpKvgpL7gpIfgpLLgpJXgpYsg4KS44KSu4KS+4KSq4KWN4KSk4KS/IgorCisjOiBsaWIvZHBrZy92YXJidWYuYzo4MiBsaWIvZHBrZy92YXJidWYuYzo4OAorbXNnaWQgImVycm9yIGZvcm1hdHRpbmcgc3RyaW5nIGludG8gdmFyYnVmIHZhcmlhYmxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjE3OSBzcmMvYXJjaGl2ZXMuYzoyMDAgc3JjL2FyY2hpdmVzLmM6NzI0Cittc2dpZCAiZXJyb3IgcmVhZGluZyBmcm9tIGRwa2ctZGViIHBpcGUiCittc2dzdHIgImRwa2ctZGViIOCkquCkvuCkh+CkquCkrOCkvuCknyDgpKrgpKLgpY3gpKbgpL4g4KSk4KWN4KSw4KWB4KSf4KS/IgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxOTUKKyMsIGMtZm9ybWF0Cittc2dpZCAic2tpcHBlZCB1bnBhY2tpbmcgZmlsZSAnJS4yNTVzJyAocmVwbGFjZWQgb3IgZXhjbHVkZWQ/KSIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoyNDYgc3JjL2FyY2hpdmVzLmM6MjUwCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHNldHRpbmcgdGltZXN0YW1wcyBvZiBgJS4yNTVzJyIKK21zZ3N0ciAiYCUuMjU1cycg4KSV4KWLIOCkn+CkvuCkh+CkruCkuOCljeCkn+CkvuCkruCljeCkquCkueCksOClgiDgpLjgpYfgpJ/gpL/gpJngpY0g4KSX4KSw4KWN4KSm4KS+IOCkpOCljeCksOClgeCkn+CkvyIKKworIzogc3JjL2FyY2hpdmVzLmM6MjYyCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHNldHRpbmcgb3duZXJzaGlwIG9mIHN5bWxpbmsgYCUuMjU1cyciCittc2dzdHIgIuCkuOCkv+CkruCksuCkv+CkmeCljeCklSBgJS4yNTVzJ+CkleCliyDgpLjgpY3gpLXgpL7gpK7gpL/gpKTgpY3gpLUg4KS44KWH4KSfIOCkl+CksOCljeCkpuCkviDgpKTgpY3gpLDgpYHgpJ/gpL8iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjI2NSBzcmMvYXJjaGl2ZXMuYzo3MzQgc3JjL3N0YXRjbWQuYzoxNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igc2V0dGluZyBvd25lcnNoaXAgb2YgYCUuMjU1cyciCittc2dzdHIgImAlLjI1NXMnIOCkleCliyDgpLjgpY3gpK/gpL7gpK7gpL/gpKTgpY3gpLUg4KS44KWH4KSfIOCkl+CksOCljeCkpuCkviDgpKTgpY3gpLDgpYHgpJ/gpL8iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjI2NyBzcmMvYXJjaGl2ZXMuYzo3MzYgc3JjL3N0YXRjbWQuYzoxNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igc2V0dGluZyBwZXJtaXNzaW9ucyBvZiBgJS4yNTVzJyIKK21zZ3N0ciAiYCUuMjU1cyfgpJXgpYsg4KS44KWH4KSf4KS/4KSZ4KWNIOCkheCkqOClgeCkruCkpOCkvyDgpKTgpY3gpLDgpYHgpJ/gpL8iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjM5NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHN0YXQgKGRlcmVmZXJlbmNlKSBleGlzdGluZyBzeW1saW5rIGAlLjI1MHMnIgorbXNnc3RyICJgJS4yNTBzJyDgpK7gpL4g4KSV4KS+4KSw4KWN4KSv4KSo4KWN4KS14KSv4KSoIOCkheCkqOClgeCkruCkpOCkv+CkueCksOClgiDgpLjgpYfgpJ8g4KSX4KSw4KWN4KSoIOCkheCkleCljeCkt+CkriIKKworIzogc3JjL2FyY2hpdmVzLmM6NDE3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmYWlsZWQgdG8gc3RhdCAoZGVyZWZlcmVuY2UpIHByb3Bvc2VkIG5ldyBzeW1saW5rIHRhcmdldCBgJS4yNTBzJyBmb3IgIgorInN5bWxpbmsgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6NDc1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisidHJ5aW5nIHRvIG92ZXJ3cml0ZSBgJS4yNTBzJywgd2hpY2ggaXMgdGhlIGRpdmVydGVkIHZlcnNpb24gb2YgYCIKKyIlLjI1MHMnIChwYWNrYWdlOiAlLjEwMHMpIgorbXNnc3RyICIiCisiYCUuMjUwcycg4KSF4KSn4KS/4KSy4KWH4KSW4KSoIOCkl+CksOCljeCkqCDgpKrgpY3gpLDgpK/gpL7gpLgg4KSX4KSw4KWN4KSm4KWILCDgpJzgpYHgpKggYCUuMjUwcyclLjEwcyUuMTAwcyUuMTBzIOCkleCliyDgpKvgpYfgpLDgpL/gpI/gpJXgpYsg4KS44KSC4KS44KWN4KSV4KSw4KSjICIKKyLgpLngpYsg4KWkIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo0ODEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInRyeWluZyB0byBvdmVyd3JpdGUgYCUuMjUwcycsIHdoaWNoIGlzIHRoZSBkaXZlcnRlZCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICIiCisiYCUuMjUwcycg4KSF4KSn4KS/4KSy4KWH4KSW4KSoIOCkl+CksOCljeCkqCDgpKrgpY3gpLDgpK/gpL7gpLgg4KSX4KSw4KWN4KSm4KWILCDgpJzgpYHgpKggYCUuMjUwcyclLjEwcyUuMTAwcyUuMTBzIOCkleCliyDgpKvgpYfgpLDgpL/gpI/gpJXgpYsg4KS44KSC4KS44KWN4KSV4KSw4KSjICIKKyLgpLngpYsg4KWkIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo1MTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgYCUuMjU1cycgKHdoaWNoIEkgd2FzIGFib3V0IHRvIGluc3RhbGwpIgorbXNnc3RyICJgJS4yNTVzJyAo4KSc4KWB4KSoIOCkruCliOCksuClhyDgpLjgpY3gpKXgpL7gpKrgpKjgpL4g4KSX4KSw4KWN4KSoIOCksuCkvuCkl+Clh+CkleCliyDgpKXgpL/gpI8pIOCksuCkvuCkiCDgpKTgpYvgpJXgpY3gpKgg4KSF4KSV4KWN4KS34KSuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo1MTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVuYWJsZSB0byBjbGVhbiB1cCBtZXNzIHN1cnJvdW5kaW5nIGAlLjI1NXMnIGJlZm9yZSBpbnN0YWxsaW5nIGFub3RoZXIgIgorInZlcnNpb24iCittc2dzdHIgIuCkheCkqOCljeCkryDgpLjgpILgpLjgpY3gpJXgpLDgpKMg4KS44KWN4KSl4KS+4KSq4KSo4KS+IOCkl+CksOCljeCkqOClgeCkreCkqOCljeCkpuCkviDgpKrgpLngpL/gpLLgpYcgYCUuMjU1cycg4KS14KSw4KS/4KSq4KSw4KS/4KSV4KWLIOCkteCkvuCkpOCkvuCkteCksOCko+CkueCksOClgiDgpLngpJ/gpL7gpIngpKgg4KSF4KSV4KWN4KS34KSuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo1MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgcmVzdG9yZWQgYCUuMjU1cycgYmVmb3JlIGluc3RhbGxpbmcgYW5vdGhlciB2ZXJzaW9uIgorbXNnc3RyICLgpIXgpKjgpY3gpK8g4KS44KSC4KS44KWN4KSV4KSw4KSjIOCkuOCljeCkpeCkvuCkquCkqOCkviDgpJfgpLDgpY3gpKjgpYEg4KSq4KS54KS/4KSy4KWHIOCkquClguCksOCljeCkteCkvuCkteCkuOCljeCkpeCkvuCkruCkviDgpLLgpY3gpK/gpL7gpI/gpJXgpYsgYCUuMjU1cycg4KSk4KWL4KSV4KWN4KSoIOCkheCkleCljeCkt+CkriIKKworIzogc3JjL2FyY2hpdmVzLmM6NTYxCisjLCBjLWZvcm1hdAorbXNnaWQgImFyY2hpdmUgY29udGFpbmVkIG9iamVjdCBgJS4yNTVzJyBvZiB1bmtub3duIHR5cGUgMHgleCIKK21zZ3N0ciAi4KS44KSZ4KWN4KSX4KWN4KSw4KS54KSy4KWHIOCkheCknOCljeCknuCkvuCkpCDgpKrgpY3gpLDgpJXgpL7gpLDgpJXgpYsg4KS14KS44KWN4KSk4KWBIGAlLjI1NXMnIOCkuOCkruCkvuCkteClh+CktiDgpJfgpLDgpY3gpK/gpYsgMHgleCIKKworIzogc3JjL2FyY2hpdmVzLmM6NjI2IHNyYy9kaXZlcnRjbWQuYzoxNTAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjY4MgorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMjIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyODQKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNDQxIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNjgwCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE2NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI0NAorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MjcKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImNhbm5vdCBzdGF0IG9sZCBuYW1lIGAlcyc6ICVzIgorbXNnaWQgImNhbm5vdCBzdGF0IGZpbGUgJyVzJyIKK21zZ3N0ciAi4KSq4KWB4KSw4KS+4KSo4KWLIOCkqOCkvuCkriBgJXMnIOCkpOCli+CkleCljeCkqCDgpLjgpJXgpL/gpKbgpYjgpKg6ICVzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVwbGFjaW5nIGZpbGVzIGluIG9sZCBwYWNrYWdlICVzIC4uLlxuIgorbXNnc3RyICLgpKrgpYHgpLDgpL7gpKjgpYsg4KS44KSC4KS44KWN4KSV4KSw4KSj4KSu4KS+IOCkq+CkvuCkh+CksuCkueCksOClgiDgpKzgpKbgpLLgpY3gpKbgpYggJXMgLi4uXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjY0NQorIywgYy1mb3JtYXQKK21zZ2lkICJSZXBsYWNlZCBieSBmaWxlcyBpbiBpbnN0YWxsZWQgcGFja2FnZSAlcyAuLi5cbiIKK21zZ3N0ciAi4KS44KWN4KSl4KS+4KSq4KSo4KS+IOCkl+CksOCkv+Ckj+CkleCliyDgpKrgpY3gpK/gpL7gpJXgpYfgpJzgpK7gpL4g4KSr4KS+4KSH4KSy4KS54KSw4KWCIOCkpuCljeCksOCkvuCksOCkviDgpKrgpY3gpLDgpKTgpL/gpLjgpY3gpKXgpL7gpKrgpL/gpKQg4KSX4KSw4KS/4KSv4KWLICVzIC4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ0cnlpbmcgdG8gb3ZlcndyaXRlIGRpcmVjdG9yeSAnJS4yNTBzJyBpbiBwYWNrYWdlICUuMjUwcyAlLjI1MHMgd2l0aCAiCisibm9uZGlyZWN0b3J5IgorbXNnc3RyICLgpKHgpL7gpIfgpLDgpYfgpJXgpY3gpJ/gpLDgpYAg4KSs4KS/4KSo4KS+4KSV4KWLIOCkquCljeCkr+CkvuCkleClh+CknGAlLjI1MHMn4KSu4KS+IOCkoeCkvuCkh+CksOClh+CkleCljeCkn+CksOClgCAlLjI1MHMg4KSF4KSn4KS+4KS14KSn4KS/4KSVIOCkl+CksOCljeCkqCDgpKrgpY3gpLDgpK/gpL7gpLgg4KSX4KSw4KWN4KSm4KWIIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInRyeWluZyB0byBvdmVyd3JpdGUgJyUuMjUwcycsIHdoaWNoIGlzIGFsc28gaW4gcGFja2FnZSAlLjI1MHMgJS4yNTBzIgorbXNnc3RyICJgJS4yNTBzJ+CkheCkp+CkvuCkteCkp+Ckv+CklSDgpJfgpLDgpY3gpKgg4KSq4KWN4KSw4KSv4KS+4KS4IOCkl+CksOCljeCkpuCliCwg4KSc4KWB4KSoIOCkquCljeCkr+CkvuCkleClh+CknCAlLjI1MHMg4KSu4KS+IOCkquCkqOCkvyDgpJsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjcxMQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBgJS4yNTVzJyAod2hpbGUgcHJvY2Vzc2luZyBgJS4yNTVzJykiCittc2dzdHIgImAlLjI1NXMn4KSy4KS+4KSIIChgJS4yNTVzJ+CkruCkviApIOCkquCkouCljeCkqCDgpIXgpLjgpKvgpLIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjcxOAorIywgYy1mb3JtYXQKK21zZ2lkICJiYWNrZW5kIGRwa2ctZGViIGR1cmluZyBgJS4yNTVzJyIKK21zZ3N0ciAiZHBrZy1kZWIgYCUuMjU1cycg4KSs4KWH4KSy4KS+4KSu4KS+IOCkrOCljeCkr+CkvuCkleCkh+CkqOCljeCkoSIKKworIzogc3JjL2FyY2hpdmVzLmM6NzQ0IHNyYy9hcmNoaXZlcy5jOjkwOCBzcmMvYXJjaGl2ZXMuYzo5NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZy93cml0aW5nIGAlLjI1NXMnIgorbXNnc3RyICLgpKzgpKjgpY3gpKYg4KSX4KSw4KWN4KSm4KS+L+CksuClh+CkluCljeCkpuCkviBgJS4yNTVzJyDgpKTgpY3gpLDgpYHgpJ/gpL8iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc0OAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBwaXBlIGAlLjI1NXMnIgorbXNnc3RyICLgpKrgpL7gpIfgpKogYCUuMjU1cycg4KS44KS/4KSw4KWN4KSc4KSo4KS+IOCkl+CksOCljeCkpuCkviDgpKTgpY3gpLDgpYHgpJ/gpL8iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc1MyBzcmMvYXJjaGl2ZXMuYzo3NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgZGV2aWNlIGAlLjI1NXMnIgorbXNnc3RyICLgpK/gpKjgpY3gpKTgpY3gpLAgYCUuMjU1cycg4KS44KS/4KSw4KWN4KSc4KSo4KS+IOCkl+CksOCljeCkpuCkviDgpKTgpY3gpLDgpYHgpJ/gpL8iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc3MQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBoYXJkIGxpbmsgYCUuMjU1cyciCittc2dzdHIgIuCkueCkvuCksOCljeCkoSDgpLLgpL/gpJngpY3gpJUgYCUuMjU1cycg4KS44KS/4KSw4KWN4KSc4KSo4KS+IOCkl+CksOCljeCkpuCkviDgpKTgpY3gpLDgpYHgpJ/gpL8iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc3NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NTM5CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIHN5bWJvbGljIGxpbmsgYCUuMjU1cyciCittc2dzdHIgIuCkquCljeCksOCkpOCkv+CkleCkvuCkpOCljeCkruCklSDgpLLgpL/gpJngpY3gpJUgYCUuMjU1cycg4KS44KS/4KSw4KWN4KSc4KSo4KS+IOCkl+CksOCljeCkpuCkviDgpKTgpY3gpLDgpYHgpJ/gpL8iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc4MworIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBkaXJlY3RvcnkgYCUuMjU1cyciCittc2dzdHIgIuCkoeCkvuCkh+CksOClh+CkleCljeCkn+CksOClgCBgJS4yNTVzJyDgpLjgpL/gpLDgpY3gpJzgpKjgpL4g4KSX4KSw4KWN4KSm4KS+IOCkpOCljeCksOClgeCkn+CkvyIKKworIzogc3JjL2FyY2hpdmVzLmM6ODIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBtb3ZlIGFzaWRlIGAlLjI1NXMnIHRvIGluc3RhbGwgbmV3IHZlcnNpb24iCittc2dzdHIgIuCkqOCkr+CkvuCkgSDgpLjgpILgpLjgpY3gpJXgpLDgpKMg4KS44KWN4KSl4KS+4KSq4KSo4KS+IOCkl+CksOCljeCkqCBgJS4yNTVzJyDgpLLgpL7gpIgg4KSb4KWH4KSJ4KSu4KS+IOCkuOCkvuCksOCljeCkqCDgpIXgpJXgpY3gpLfgpK4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjgzMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MzIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIGxpbmsgYCUuMjU1cyciCittc2dzdHIgIuCksuCkv+CkmeCljeCklWAlLjI1NXMnIOCkquCkouCljeCkqCDgpIXgpJXgpY3gpLfgpK4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjgzNCBzcmMvY29uZmlndXJlLmM6NDIzCisjLCBjLWZvcm1hdAorbXNnaWQgInN5bWJvbGljIGxpbmsgJyUuMjUwcycgc2l6ZSBoYXMgY2hhbmdlZCBmcm9tICVqZCB0byAlemQiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6ODM5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBtYWtlIGJhY2t1cCBzeW1saW5rIGZvciBgJS4yNTVzJyIKK21zZ3N0ciAi4KS44KS/4KSu4KSy4KS/4KSZ4KWN4KSVIGAlLjI1NXMnIOCkleCkviDgpLLgpL7gpJfgpL8g4KSc4KSX4KWH4KSh4KS+IOCkrOCkqOCkvuCkieCkqCDgpIXgpJXgpY3gpLfgpK4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjg0MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hvd24gYmFja3VwIHN5bWxpbmsgZm9yIGAlLjI1NXMnIgorbXNnc3RyICLgpLjgpL/gpK7gpLLgpL/gpJngpY3gpJUgYCUuMjU1cycg4KSV4KS+IOCksuCkvuCkl+CkvyDgpJzgpJfgpYfgpKHgpL4g4KS44KWN4KS14KS+4KSu4KS/4KSk4KWN4KS1IOCkquCksOCkv+CkteCksOCljeCkpOCkqCDgpJfgpLDgpY3gpKgg4KSF4KSV4KWN4KS34KSuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4NDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG1ha2UgYmFja3VwIGxpbmsgb2YgYCUuMjU1cycgYmVmb3JlIGluc3RhbGxpbmcgbmV3IHZlcnNpb24iCittc2dzdHIgIuCkqOCkr+CkvuCkgSDgpLjgpILgpLjgpY3gpJXgpLDgpKMg4KS44KWN4KSl4KS+4KSq4KSo4KS+IOCkl+CksOCljeCkqCDgpKrgpLngpL/gpLLgpYcg4KSc4KSX4KWH4KSh4KS+IOCksuCkv+CkmeCljeCklWAlLjI1NXMnIOCkrOCkqOCkvuCkieCkqCDgpIXgpJXgpY3gpLfgpK4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjg2MyBzcmMvYXJjaGl2ZXMuYzo5NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IHZlcnNpb24gb2YgYCUuMjU1cyciCittc2dzdHIgImAlLjI1NXMnIOCkleCliyDgpKjgpK/gpL7gpIEg4KS44KSC4KS44KWN4KSV4KSw4KSjIOCkuOCljeCkpeCkvuCkquCkqOCkviDgpJfgpLDgpY3gpKgg4KSF4KSV4KWN4KS34KSuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo5MDIgc3JjL2FyY2hpdmVzLmM6OTQ1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiAnJS4yNTVzJyIKK21zZ3N0ciAiYCUuMjU1cycg4KS44KS/4KSw4KWN4KSc4KSo4KS+IOCkl+CksOCljeCkqCDgpIXgpJXgpY3gpLfgpK4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjk0NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgZmlsZSAnJS4yNTVzJyIKK21zZ3N0ciAiYCUuMjU1cycg4KSs4KSr4KSwIOCkrOCkqOCljeCkpiDgpJfgpLDgpY3gpKgg4KSF4KSV4KWN4KS34KSuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDAwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiaWdub3JpbmcgZGVwZW5kZW5jeSBwcm9ibGVtIHdpdGggJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiDgpJrgpYfgpKTgpL7gpLXgpKjgpYAgLSAlcyDgpJXgpYsg4KS54KSf4KS+4KSJ4KSo4KWHIOCkuOCkgeCklyDgpKjgpL/gpLDgpY3gpK3gpLDgpKTgpL4g4KS44KSu4KS44KWN4KSv4KS+IOCkheCkteCknOCljeCknuCkviDgpJfgpLDgpY3gpKbgpYg6XG4iCisiJXMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJjb25zaWRlcmluZyBkZWNvbmZpZ3VyYXRpb24gb2YgZXNzZW50aWFsXG4iCisiIHBhY2thZ2UgJXMsIHRvIGVuYWJsZSAlcy4iCittc2dzdHIgIiIKKyJkcGtnOiDgpJrgpYfgpKTgpL7gpLXgpKjgpYAgLSDgpIXgpKTgpY3gpK/gpL7gpLXgpLbgpY3gpK/gpJVcbiIKKyIg4KSq4KWN4KSv4KS+4KSV4KWH4KScICVzIOCkleCliyDgpKHgpL/gpJXgpKjgpY3gpKvgpL/gpJfgpLDgpYfgpLjgpKgg4KSn4KWN4KSv4KS+4KSoIOCkpuCkv+CkpuCliCAsICVz4KSV4KWLIOCkueCkn+CkvuCkieCkqOClhyDgpLjgpJXgpY3gpLfgpK4g4KSq4KS+4KSw4KWN4KSoIOClpFxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDA4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogbm8sICVzIGlzIGVzc2VudGlhbCwgd2lsbCBub3QgZGVjb25maWd1cmVcbiIKKyIgaXQgaW4gb3JkZXIgdG8gZW5hYmxlICVzLlxuIgorbXNnc3RyICIiCisiZHBrZzog4KS54KWL4KSH4KSoLCAlcyDgpIbgpLXgpLbgpY3gpK/gpJUg4KSb4KWI4KSoLCDgpKHgpL/gpJXgpKjgpY3gpKvgpL/gpJfgpLAg4KSX4KSw4KS/4KSP4KSV4KWLIOCkm+CliOCkqFxuIgorIuCkr+CliyDgpLngpJ/gpL7gpIngpKjgpYcgJXMg4KSV4KWLIOCkuOCkleCljeCkt+CkriDgpJfgpLDgpY3gpKggIOCkleCljeCksOCkruCkruCkviDgpJsg4KWkXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMjIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBubywgY2Fubm90IHByb2NlZWQgd2l0aCAlcyAoLS1hdXRvLWRlY29uZmlndXJlIHdpbGwgaGVscCk6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiDgpLngpYvgpIfgpKgsICVzIOCkueCkn+CkvuCkieCkqCDgpLjgpJXgpY3gpKbgpYjgpKggKC0t4KS44KWN4KS14KSkIOCkoeCkv+CkleCkqOCljeCkq+Ckv+Ckl+CksOCksuClhyDgpK7gpKbgpY3gpKbgpKQg4KSX4KSw4KWN4KSo4KWH4KSbKTpcbiIKKyIlcyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAzMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAicmVtb3ZhbCBvZiAlLjI1MHMiCittc2dzdHIgIiUuMjUwcyDgpK7gpL4g4KSk4KWN4KSw4KWB4KSf4KS/IOCkquCkouCljeCkqOClgeCkueCli+CkuOCljSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA1NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiaW5zdGFsbGF0aW9uIG9mICUuMjUwcyIKK21zZ3N0ciAiYCUuMjU1cycg4KSV4KWLIOCkqOCkr+CkvuCkgSDgpLjgpILgpLjgpY3gpJXgpLDgpKMg4KS44KWN4KSl4KS+4KSq4KSo4KS+IOCkl+CksOCljeCkqCDgpIXgpJXgpY3gpLfgpK4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNTgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBjb25zaWRlcmluZyBkZWNvbmZpZ3VyYXRpb24gb2YgJXMsIHdoaWNoIHdvdWxkIGJlIGJyb2tlbiBieSAlcyAuLi5cbiIKK21zZ3N0ciAiZHBrZzogJXPgpJXgpYsg4KSq4KSV4KWN4KS34KSu4KS+ICVzIOCkueCkn+CkvuCkieCkqCDgpLXgpL/gpJrgpL7gpLAg4KSX4KSw4KWN4KSm4KWIIC4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDY1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiB5ZXMsIHdpbGwgZGVjb25maWd1cmUgJXMgKGJyb2tlbiBieSAlcykuXG4iCittc2dzdHIgImRwa2c6IOCkueCliywgJXMg4KSV4KWLIOCkquCkleCljeCkt+CkruCkviAlcyDgpLngpJ/gpY3gpKjgpYfgpJsg4KWkXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNjkgc3JjL2FyY2hpdmVzLmM6MTE4NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogcmVnYXJkaW5nICVzIGNvbnRhaW5pbmcgJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiAlcyDgpLjgpK7gpL7gpLXgpYfgpLYg4KSX4KSw4KWN4KSm4KWIICVzIOCkp+CljeCkr+CkvuCkqCDgpKbgpL/gpKbgpYg6XG4iCisiJXMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNzcKKyMsIGZ1enp5Cittc2dpZCAiaWdub3JpbmcgYnJlYWthZ2UsIG1heSBwcm9jZWVkIGFueXdheSEiCittc2dzdHIgImRwa2c6IOCkmuClh+CkpOCkvuCkteCkqOClgCAtIOCkheCkteCknOCljeCknuCkviDgpLXgpL/gpJog4KSq4KSw4KS44KWN4KSq4KSwLeCkteCkv+CksOCli+Ckpywg4KSc4KWHIOCkreCkjyDgpKrgpKjgpL8g4KSs4KSi4KWN4KSoIOCkuOCkleCljeCkqOClgeCkueClgeCkqOCljeCkmyAhXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImluc3RhbGxpbmcgJS4yNTBzIHdvdWxkIGJyZWFrICUuMjUwcywgYW5kXG4iCisiIGRlY29uZmlndXJhdGlvbiBpcyBub3QgcGVybWl0dGVkICgtLWF1dG8tZGVjb25maWd1cmUgbWlnaHQgaGVscCkiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA4NgorIywgYy1mb3JtYXQKK21zZ2lkICJpbnN0YWxsaW5nICUuMjUwcyB3b3VsZCBicmVhayBleGlzdGluZyBzb2Z0d2FyZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTE2CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IGNvbnNpZGVyaW5nIHJlbW92aW5nICVzIGluIGZhdm91ciBvZiAlcyAuLi5cbiIKK21zZ3N0ciAiZHBrZzogJXPgpJXgpYsg4KSq4KSV4KWN4KS34KSu4KS+ICVzIOCkueCkn+CkvuCkieCkqCDgpLXgpL/gpJrgpL7gpLAg4KSX4KSw4KWN4KSm4KWIIC4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTIyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGlzIG5vdCBwcm9wZXJseSBpbnN0YWxsZWQgLSBpZ25vcmluZyBhbnkgZGVwZW5kZW5jaWVzIG9uIGl0LlxuIgorbXNnc3RyICIlcyDgpLDgpL7gpK7gpY3gpLDgpYsg4KS44KSB4KSXIOCkuOCljeCkpeCkvuCkquCkqOCkviDgpJfgpLDgpL/gpI/gpJXgpYsg4KSb4KWI4KSoIC0g4KSv4KS44KSu4KS+IOCkleClgeCkqOCliCDgpKjgpL/gpLDgpY3gpK3gpLDgpKTgpL7gpLngpLDgpYIg4KSF4KS14KSc4KWN4KSe4KS+IOCkl+CksOCljeCkpuCliCDgpaRcbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE1MQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiBtYXkgaGF2ZSB0cm91YmxlIHJlbW92aW5nICVzLCBhcyBpdCBwcm92aWRlcyAlcyAuLi5cbiIKK21zZ3N0ciAiZHBrZzogJXMg4KS54KSf4KS+4KSJ4KSm4KS+IOCkneCkqOCljeCkneCknyDgpLngpYHgpKgg4KS44KSV4KWN4KSbLCDgpK/gpLjgpLLgpYcg4KSv4KS4IOCksOClgeCkquCkruCkviDgpKrgpY3gpLDgpKbgpL7gpKgg4KSX4KSw4KWN4KSm4KSbICVzIC4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTY2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogcGFja2FnZSAlcyByZXF1aXJlcyByZWluc3RhbGxhdGlvbiwgYnV0IHdpbGwgcmVtb3ZlIGFueXdheSBhcyB5b3UgIgorInJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiIgorImRwa2c6IOCkquCljeCkr+CkvuCkleClh+CknCAlcyDgpLLgpL7gpIgg4KSq4KWC4KSoIOCkuOCljeCkpeCkvuCkquCkqOCkviDgpIbgpLXgpLbgpY3gpK/gpJUg4KSbLCDgpKTgpLAg4KSc4KWHIOCkreCkjyDgpKrgpKjgpL8g4KSk4KSq4KS+4KSI4KSB4KSV4KWLIOCkheCkqOClgeCksOCli+CkpyDgpIXgpKjgpYHgpLjgpL7gpLAg4KS54KSf4KS+4KSJ4KSo4KWB4KSbICIKKyLgpaRcbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE2OQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiBwYWNrYWdlICVzIHJlcXVpcmVzIHJlaW5zdGFsbGF0aW9uLCB3aWxsIG5vdCByZW1vdmUuXG4iCittc2dzdHIgImRwa2c6IOCkquCljeCkr+CkvuCkleClh+CknCAlcyDgpLLgpL7gpIgg4KSq4KWC4KSoIOCkuOCljeCkpeCkvuCkquCkqOCkviDgpIbgpLXgpLbgpY3gpK/gpJUg4KSbLCDgpLngpJ/gpY3gpKjgpYcg4KSb4KWI4KSoXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogeWVzLCB3aWxsIHJlbW92ZSAlcyBpbiBmYXZvdXIgb2YgJXMuXG4iCittc2dzdHIgImRwa2c6IOCkueCliywgJXMg4KSV4KWLIOCkquCkleCljeCkt+CkruCkviAlcyDgpLngpJ/gpY3gpKjgpYfgpJsg4KWkXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmxpY3RpbmcgcGFja2FnZXMgLSBub3QgaW5zdGFsbGluZyAlLjI1MHMiCittc2dzdHIgIuCkquCksOCkuOCljeCkquCksC3gpLXgpL/gpLDgpYvgpKfgpYAg4KSq4KWN4KSv4KS+4KSV4KWH4KSc4KS54KSw4KWCICUuMjUwcyDgpLjgpY3gpKXgpL7gpKrgpKjgpL4g4KSo4KSX4KSw4KWN4KSm4KWIIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTkxCisjLCBmdXp6eQorbXNnaWQgImlnbm9yaW5nIGNvbmZsaWN0LCBtYXkgcHJvY2VlZCBhbnl3YXkhIgorbXNnc3RyICJkcGtnOiDgpJrgpYfgpKTgpL7gpLXgpKjgpYAgLSDgpIXgpLXgpJzgpY3gpJ7gpL4g4KS14KS/4KSaIOCkquCksOCkuOCljeCkquCksC3gpLXgpL/gpLDgpYvgpKcsIOCknOClhyDgpK3gpI8g4KSq4KSo4KS/IOCkrOCkouCljeCkqCDgpLjgpJXgpY3gpKjgpYHgpLngpYHgpKjgpY3gpJsgIVxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjM1CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgLS1yZWN1cnNpdmUgbmVlZHMgYXQgbGVhc3Qgb25lIHBhdGggYXJndW1lbnQiCittc2dzdHIgIi0tJXMgLS3gpJXgpK7gpY3gpKTgpL/gpK7gpL4g4KSP4KSVIOCkruCkvuCksOCljeCklyDgpKTgpLDgpY3gpJUg4KSq4KWB4KSo4KSw4KS+4KS14KWD4KSk4KWAIOCkhuCkteCktuCljeCkr+CklSDgpJsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNDUKKyMsIGZ1enp5Cittc2dpZCAiZmluZCBmb3IgZHBrZyAtLXJlY3Vyc2l2ZSIKK21zZ3N0ciAi4KSq4KWB4KSo4KSw4KS+4KS14KWD4KSk4KS/4KSV4KWLIOCksuCkvuCkl+CkvyDgpJXgpL7gpLDgpY3gpK/gpKjgpY3gpLXgpK/gpKgg4KSX4KSw4KWN4KSoIOCkheCkuOCkq+CksiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI2NgorbXNnaWQgImZhaWxlZCB0byBmZG9wZW4gZmluZCdzIHBpcGUiCittc2dzdHIgIifgpKvgpYfgpLLgpL4g4KSq4KS+4KSw4KWN4KSo4KWB4KS54KWL4KS4JyDgpJXgpYsg4KSq4KS+4KSH4KSqIGZkb3BlbiDgpJfgpLDgpY3gpKgg4KSF4KS44KSr4KSyIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjcyCittc2dpZCAiZXJyb3IgcmVhZGluZyBmaW5kJ3MgcGlwZSIKK21zZ3N0ciAiJ+Ckq+Clh+CksuCkviDgpKrgpL7gpLDgpY3gpKjgpYHgpLngpYvgpLgnIOCkleCliyDgpKrgpL7gpIfgpKog4KSq4KSi4KWN4KSm4KS+IOCkpOCljeCksOClgeCkn+CkvyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3MworbXNnaWQgImVycm9yIGNsb3NpbmcgZmluZCdzIHBpcGUiCittc2dzdHIgIifgpKvgpYfgpLLgpL4g4KSq4KS+4KSw4KWN4KSo4KWB4KS54KWL4KS4JyDgpJXgpYsg4KSq4KS+4KSH4KSqIOCkrOCkqOCljeCkpiDgpJfgpLDgpY3gpKbgpL4g4KSk4KWN4KSw4KWB4KSf4KS/IgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjc2CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbmQgZm9yIC0tcmVjdXJzaXZlIHJldHVybmVkIHVuaGFuZGxlZCBlcnJvciAlaSIKK21zZ3N0ciAi4KSq4KWB4KSo4KSw4KS+4KS14KWD4KSk4KS/4KSV4KS+IOCksuCkvuCkl+CkvyAn4KSr4KWH4KSy4KS+IOCkquCkvuCksOCljeCkqOClgeCkueCli+CkuCcg4KSy4KWHIOCkueCljeCkr+CkvuCkqOCljeCkoeCksiDgpKjgpJfgpLDgpL/gpI/gpJXgpYsg4KSk4KWN4KSw4KWB4KSf4KS/ICVpIOCkq+Ckv+CksOCljeCkpOCkviDgpJfgpLDgpY3gpK/gpYsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNzkKK21zZ2lkICJzZWFyY2hlZCwgYnV0IGZvdW5kIG5vIHBhY2thZ2VzIChmaWxlcyBtYXRjaGluZyAqLmRlYikiCittc2dzdHIgIuCkluCli+CknOCkv+Ckj+CkleCliywg4KSk4KSwIOCkq+Clh+CksuCkviDgpKjgpKrgpL7gpLDgpL/gpI/gpJXgpYsg4KSq4KWN4KSv4KS+4KSV4KWH4KSc4KS54KSw4KWCICggKi5kZWIg4KS44KSB4KSXIOCkruCkv+CksuCljeCkqOClhyDgpKvgpL7gpIfgpLLgpLngpLDgpYIpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjkwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYXQgbGVhc3Qgb25lIHBhY2thZ2UgYXJjaGl2ZSBmaWxlIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIOCksuCkvuCkiCDgpJXgpK7gpY3gpKTgpL/gpK7gpL4g4KSP4KSJ4KSf4KS+IOCkquCljeCkr+CkvuCkleClh+CknCDgpLjgpJngpY3gpJfgpY3gpLDgpLkg4KSr4KS+4KSH4KSyIOCkpOCksOCljeCklSDgpIbgpLXgpLbgpY3gpK/gpJUg4KSbIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzI1IHNyYy9kaXZlcnRjbWQuYzo3OCBzcmMvZGl2ZXJ0Y21kLmM6MTE4CisjOiBzcmMvZW5xdWlyeS5jOjE2NiBzcmMvZW5xdWlyeS5jOjI3OSBzcmMvZW5xdWlyeS5jOjQ0OSBzcmMvZW5xdWlyeS5jOjQ1MQorIzogc3JjL2VucXVpcnkuYzo0NjQgc3JjL21haW4uYzo2NiBzcmMvbWFpbi5jOjE2MyBzcmMvbWFpbi5jOjMxNAorIzogc3JjL21haW4uYzo0OTMgc3JjL3BhY2thZ2VzLmM6MjU0IHNyYy9xdWVyeWNtZC5jOjI1MiBzcmMvcXVlcnljbWQuYzozNTUKKyM6IHNyYy9xdWVyeWNtZC5jOjM5NiBzcmMvcXVlcnljbWQuYzo0MDQgc3JjL3F1ZXJ5Y21kLmM6NDQ4IHNyYy9xdWVyeWNtZC5jOjUxNworIzogc3JjL3F1ZXJ5Y21kLmM6NjA2IHNyYy9xdWVyeWNtZC5jOjY1MCBzcmMvc2VsZWN0LmM6Nzkgc3JjL3N0YXRjbWQuYzo2OAorIzogc3JjL3N0YXRjbWQuYzo5OCBzcmMvdHJpZ2NtZC5jOjU4IHNyYy90cmlnY21kLmM6OTAgZHBrZy1kZWIvYnVpbGQuYzo0NDEKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyMTcgZHBrZy1kZWIvZXh0cmFjdC5jOjI1MCBkcGtnLWRlYi9pbmZvLmM6MjAzCisjOiBkcGtnLWRlYi9pbmZvLmM6MjY1IGRwa2ctZGViL21haW4uYzo2MCBkcGtnLWRlYi9tYWluLmM6MTI2CisjOiBkcGtnLXNwbGl0L2luZm8uYzoyNTcgZHBrZy1zcGxpdC9tYWluLmM6NTQgZHBrZy1zcGxpdC9tYWluLmM6OTgKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxNDQgZHBrZy1zcGxpdC9xdWV1ZS5jOjI4MAorbXNnaWQgIjxzdGFuZGFyZCBvdXRwdXQ+IgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzMjYgc3JjL3BhY2thZ2VzLmM6MjU1IHNyYy9xdWVyeWNtZC5jOjI1MworIzogc3JjL3F1ZXJ5Y21kLmM6MzUzIHNyYy9xdWVyeWNtZC5jOjQ1NCBzcmMvcXVlcnljbWQuYzo1MTggc3JjL3NlbGVjdC5jOjgwCisjOiBkcGtnLXNwbGl0L21haW4uYzoxNjkgZHBrZy1zcGxpdC9xdWV1ZS5jOjIxOAorbXNnaWQgIjxzdGFuZGFyZCBlcnJvcj4iCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTM2NworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiU2VsZWN0aW5nIHByZXZpb3VzbHkgZGVzZWxlY3RlZCBwYWNrYWdlICVzLlxuIgorbXNnaWQgIlNlbGVjdGluZyBwcmV2aW91c2x5IHVuc2VsZWN0ZWQgcGFja2FnZSAlcy5cbiIKK21zZ3N0ciAi4KSq4KS54KS/4KSy4KWN4KSv4KWIIOCkmuCkr+CkqCDgpLngpJ/gpL7gpI/gpJXgpYsg4KSq4KWN4KSv4KS+4KSV4KWH4KScICVzIOCkmuCkr+CkqCDgpJfgpLDgpY3gpKbgpYggXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzNzEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIlNraXBwaW5nIGRlc2VsZWN0ZWQgcGFja2FnZSAlcy5cbiIKK21zZ2lkICJTa2lwcGluZyB1bnNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dzdHIgIuCkmuCkr+CkqCDgpLngpJ/gpL7gpI/gpJXgpYsg4KSq4KWN4KSv4KS+4KSV4KWH4KScICVzIOCkq+CkoeCljeCkleCkvuCkieCkpuCliFxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzg3CisjLCBjLWZvcm1hdAorbXNnaWQgIlZlcnNpb24gJS4yNTBzIG9mICUuMjUwcyBhbHJlYWR5IGluc3RhbGxlZCwgc2tpcHBpbmcuXG4iCittc2dzdHIgIuCkuOCkguCkuOCljeCkleCksOCkoyAlLjI1MHMgb2YgJS4yNTBzIOCkquCkueCkv+CksuCljeCkr+CliCDgpLjgpY3gpKXgpL7gpKrgpL/gpKQg4KSbLCDgpKvgpKHgpY3gpJXgpL7gpIngpKbgpYhcbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTM5NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZG93bmdyYWRpbmcgJS4yNTBzIGZyb20gJS4yNTBzIHRvICUuMjUwcy4iCittc2dzdHIgIiVzIC0g4KSa4KWH4KSk4KS+4KS14KSo4KWAOiAlLjI1MHMg4KSs4KS+4KSfICUuMjUwcyDgpLjgpK7gpY3gpK4gJS4yNTBzIOCkuOCljeCkpOCksOCkqOCljeCkr+ClgeCkqCDgpJfgpLDgpY3gpKbgpYjgpJsg4KWkXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjE0MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiV2lsbCBub3QgZG93bmdyYWRlICUuMjUwcyBmcm9tIHZlcnNpb24gJS4yNTBzIHRvICUuMjUwcywgc2tpcHBpbmcuXG4iCittc2dzdHIgIiUuMjUwcyDgpKzgpL7gpJ8g4KS44KSC4KS44KWN4KSV4KSw4KSjICUuMjUwcyDgpLjgpK7gpY3gpK4gJS4yNTBzIOCkuOCljeCkpOCksOCkqOCljeCkr+ClgeCkqCDgpLngpYHgpKjgpYcg4KSb4KWI4KSoLCDgpKvgpKHgpY3gpJXgpL7gpIngpKbgpYgg4KWkXG4iCisKKyM6IHNyYy9jbGVhbnVwLmM6ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVuYWJsZSB0byByZW1vdmUgbmV3bHktaW5zdGFsbGVkIHZlcnNpb24gb2YgYCUuMjUwcycgdG8gYWxsb3cgcmVpbnN0YWxsYXRpb24gIgorIm9mIGJhY2t1cCBjb3B5IgorbXNnc3RyICIiCisi4KSc4KSX4KWH4KSh4KS+IOCkquCljeCksOCkpOCkv+CksuCkv+CkquCkv+CkleCliyDgpKrgpYLgpKjgpLjgpY3gpKXgpL7gpKrgpKjgpL7gpLLgpL7gpIgg4KSF4KSo4KWB4KSu4KSk4KS/IOCkpuCkv+CkqCAlLjI1MHMn4KSV4KWLIOCkreCksOCljeCkluCksOCliCDgpLjgpY3gpKXgpL7gpKrgpL/gpKQg4KS44KSC4KS44KWN4KSV4KSw4KSjIOCkueCkn+CkvuCkieCkqCDgpIXgpJXgpY3gpLfgpK4iCisKKyM6IHNyYy9jbGVhbnVwLmM6OTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlc3RvcmUgYmFja3VwIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dzdHIgIiUuMjUwcycg4KSV4KWLIOCknOCkl+Clh+CkoeCkviDgpLjgpILgpLjgpY3gpJXgpLDgpKMg4KSq4KWC4KSw4KWN4KS14KS+4KS14KS44KWN4KSl4KS+4KSu4KS+IOCksuCljeCkr+CkvuCkieCkqCDgpIXgpJXgpY3gpLfgpK4iCisKKyM6IHNyYy9jbGVhbnVwLmM6OTcKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byByZXN0b3JlIGJhY2t1cCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgYmFja3VwIGNvcHkgb2YgJyUuMjUwcyciCittc2dzdHIgIiUuMjUwcycg4KSV4KWLIOCknOCkl+Clh+CkoeCkviDgpLjgpILgpLjgpY3gpJXgpLDgpKMg4KSq4KWC4KSw4KWN4KS14KS+4KS14KS44KWN4KSl4KS+4KSu4KS+IOCksuCljeCkr+CkvuCkieCkqCDgpIXgpJXgpY3gpLfgpK4iCisKKyM6IHNyYy9jbGVhbnVwLmM6MTAxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgbmV3bHktaW5zdGFsbGVkIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dzdHIgIiUuMjUwcycg4KSV4KWLIOCkreCksOCljeCkluCksOCliCDgpLjgpY3gpKXgpL7gpKrgpL/gpKQg4KS44KSC4KS44KWN4KSV4KSw4KSjIOCkueCkn+CkvuCkieCkqCDgpIXgpJXgpY3gpLfgpK4iCisKKyM6IHNyYy9jbGVhbnVwLmM6MTA4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgbmV3bHktZXh0cmFjdGVkIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dzdHIgIiUuMjUwcycg4KSV4KWLIOCkqOCkr+CkvuCkgSDgpJ3gpL/gpJXgpL/gpI/gpJXgpYsg4KS44KSC4KS44KWN4KSV4KSw4KSjIOCkueCkn+CkvuCkieCkqCDgpIXgpJXgpY3gpLfgpK4iCisKKyM6IHNyYy9jb25maWd1cmUuYzoxMDQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byBzdGF0IG5ldyBkaXN0IGNvbmZmaWxlIGAlLjI1MHMnIgorbXNnaWQgInVuYWJsZSB0byBzdGF0IG5ldyBkaXN0cmlidXRlZCBjb25mZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAi4KSo4KSv4KS+4KSBIOCkteCkv+CkpOCksOCkoyDgpJXgpKjgpY3gpKvgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KSk4KWL4KSV4KWN4KSoIOCkheCkleCljeCkt+CkriIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBjdXJyZW50IGluc3RhbGxlZCBjb25mZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4KS54KS+4KSyIOCkuOCljeCkpeCkvuCkquCkv+CkpCDgpJXgpKjgpY3gpKvgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KSk4KWL4KSV4KWN4KSoIOCkheCkleCljeCkt+CkriIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjEyNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiQ29uZmlndXJhdGlvbiBmaWxlIGAlcycsIGRvZXMgbm90IGV4aXN0IG9uIHN5c3RlbS5cbiIKKyJJbnN0YWxsaW5nIG5ldyBjb25maWcgZmlsZSBhcyB5b3UgcmVxdWVzdGVkLlxuIgorbXNnc3RyICIiCisiXG4iCisi4KSV4KSo4KWN4KSr4KS/4KSX4KSw4KWH4KS44KSoIOCkq+CkvuCkh+CksmAlcycsIOCkpOCkquCkvuCkiOCkgeCkleCliyDgpKrgpY3gpLDgpKPgpL7gpLLgpYDgpK7gpL4g4KSF4KS14KS44KWN4KSl4KS/4KSkIOCkm+CliOCkqCDgpaRcbiIKKyLgpKTgpKrgpL7gpIjgpIHgpJXgpYsg4KSF4KSo4KWB4KSw4KWL4KSnIOCkheCkqOClgeCkuOCkvuCksCDgpKjgpK/gpL7gpIEg4KSV4KSo4KWN4KSr4KS/4KSX4KSwIOCkq+CkvuCkh+CksiDgpLjgpY3gpKXgpL7gpKrgpKjgpL4g4KSX4KSw4KWN4KSm4KWIIOClpFxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTY4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIHJlbW92ZSBvbGQgYmFja3VwICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiZHBrZzogJXM6IOCkmuClh+CkpOCkvuCkteCkqOClgCAtIOCkquClgeCksOCkvuCkqOCliyDgpJzgpJfgpYfgpKHgpL4g4KS54KSf4KS+4KSJ4KSoIOCkheCkuOCkq+CksiBgJS4yNTBzJzogJXNcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE3NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW5hbWUgJyUuMjUwcycgdG8gJyUuMjUwcyc6ICVzIgorbXNnc3RyICJkcGtnOiAlczog4KSa4KWH4KSk4KS+4KS14KSo4KWAIC0g4KSo4KS+4KSuIOCkq+Clh+CksOCljeCkqCDgpIXgpLjgpKvgpLJgJS4yNTBzJyB0byBgJS4yNTBzJzogJXNcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE4MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW1vdmUgJyUuMjUwcyc6ICVzIgorbXNnc3RyICIlczog4KSy4KWHICclcyAlcycg4KSV4KS+4KSw4KWN4KSv4KS+4KSo4KWN4KS14KSv4KSoIOCkl+CksOCljeCkqCDgpIXgpLjgpKvgpLIiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxODgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlIG9sZCBkaXN0cmlidXRlZCB2ZXJzaW9uICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiZHBrZzogJXM6IOCkmuClh+CkpOCkvuCkteCkqOClgCAtIOCkquClgeCksOCkvuCkqOCliyDgpLXgpL/gpKTgpLDgpKMg4KS44KSC4KS44KWN4KSV4KSw4KSjIGAlLjI1MHMnIOCkueCkn+CkvuCkieCkqCDgpIXgpLjgpKvgpLI6ICVzXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzoxOTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlICclLjI1MHMnIChiZWZvcmUgb3ZlcndyaXRlKTogJXMiCittc2dzdHIgImRwa2c6ICVzOiDgpJrgpYfgpKTgpL7gpLXgpKjgpYAgLSBgJS4yNTBzJyAo4KSF4KSn4KS/4KSy4KWH4KSW4KSoIOCkquCkueCkv+CksuClhykg4KS54KSf4KS+4KSJ4KSoIOCkheCkuOCkq+CksjogJXNcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE5NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byBsaW5rICclLjI1MHMnIHRvICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiZHBrZzogJXM6IOCkmuClh+CkpOCkvuCkteCkqOClgCAtIGAlLjI1MHMnIOCksuCkvuCkiCBgJS4yNTBzJ+CkuOCkguCklyDgpLLgpL/gpJngpY3gpJUg4KSX4KSw4KWN4KSoIOCkheCkuOCkq+CksjogJXNcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjIwMAorIywgYy1mb3JtYXQKK21zZ2lkICJJbnN0YWxsaW5nIG5ldyB2ZXJzaW9uIG9mIGNvbmZpZyBmaWxlICVzIC4uLlxuIgorbXNnc3RyICLgpJXgpKjgpKvgpL/gpJcg4KSr4KS+4KSH4KSyICVzIOCkleCliyDgpKjgpK/gpL7gpIEg4KS44KSC4KS44KWN4KSV4KSw4KSjIOCkuOCljeCkpeCkvuCkquCkqOCkviDgpJfgpLDgpY3gpKbgpYggLi4uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzoyMDYgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjU0NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBgJS4yNTBzJyBhcyBgJS4yNTBzJyIKK21zZ3N0ciAiYCUuMjUwcycg4KSV4KWLIOCksOClgeCkquCkruCkviBgJS4yNTBzJyDgpLjgpY3gpKXgpL7gpKrgpKjgpL4g4KSX4KSw4KWN4KSoIOCkheCkleCljeCkt+CkriIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI1NworIywgYy1mb3JtYXQKK21zZ2lkICJubyBwYWNrYWdlIG5hbWVkIGAlcycgaXMgaW5zdGFsbGVkLCBjYW5ub3QgY29uZmlndXJlIgorbXNnc3RyICJgJXMnIOCkqOCkvuCkriDgpJfgpLDgpYfgpJXgpYsg4KSV4KWB4KSo4KWIIOCkquCkqOCkvyDgpKrgpY3gpK/gpL7gpJXgpYfgpJwg4KS44KWN4KSl4KS+4KSq4KSo4KS+IOCkl+CksOCkv+Ckj+CkleCliyDgpJvgpYjgpKgsIOCkleCkqOCljeCkq+Ckv+Ckl+CksCDgpJfgpLDgpY3gpKgg4KS44KSV4KS/4KSm4KWI4KSoIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjYwCisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgJS4yNTBzIGlzIGFscmVhZHkgaW5zdGFsbGVkIGFuZCBjb25maWd1cmVkIgorbXNnc3RyICLgpKrgpY3gpK/gpL7gpJXgpYfgpJwgJS4yNTBzIOCkquCkueCkv+CksuCljeCkr+CliCDgpLjgpY3gpKXgpL7gpKrgpL/gpKQg4KSwIOCkleCkqOCljeCkq+Ckv+Ckl+CksCDgpJfgpLDgpL/gpI/gpJXgpYsg4KSbIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjYzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJwYWNrYWdlICUuMjUwcyBpcyBub3QgcmVhZHkgZm9yIGNvbmZpZ3VyYXRpb25cbiIKKyIgY2Fubm90IGNvbmZpZ3VyZSAoY3VycmVudCBzdGF0dXMgYCUuMjUwcycpIgorbXNnc3RyICIiCisi4KSq4KWN4KSv4KS+4KSV4KWH4KScICUuMjUwcyDgpJXgpKjgpY3gpKvgpL/gpJfgpLDgpJXgpL4g4KSy4KS+4KSX4KS/IOCkpOCkr+CkvuCksCDgpJvgpYjgpKhcbiIKKyLgpJXgpKjgpY3gpKvgpL/gpJfgpLAg4KSX4KSw4KWN4KSoIOCkuOCkleCkv+CkpuCliOCkqCAgKOCkueCkvuCksuCkleCliyDgpLjgpY3gpKXgpL/gpKTgpL8gYCUuMjUwcycpIgorCisjOiBzcmMvY29uZmlndXJlLmM6Mjk0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBkZXBlbmRlbmN5IHByb2JsZW1zIHByZXZlbnQgY29uZmlndXJhdGlvbiBvZiAlczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6JXMg4KSV4KWLIOCkleCkqOCljeCkq+Ckv+Ckl+CksOClh+CkuOCkqCDgpKjgpL/gpLDgpY3gpK3gpLDgpKTgpL4g4KS44KSu4KS44KWN4KSv4KS+4KSV4KS+IOCkleCkvuCksOCko+CksuClhyDgpLDgpYvgpJXgpY3gpKbgpJsgOlxuIgorIiVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6Mjk3Cittc2dpZCAiZGVwZW5kZW5jeSBwcm9ibGVtcyAtIGxlYXZpbmcgdW5jb25maWd1cmVkIgorbXNnc3RyICLgpKjgpL/gpLDgpY3gpK3gpLDgpKTgpL4g4KS44KSu4KS44KWN4KSv4KS+4KS54KSw4KWCIC0g4KSV4KSo4KWN4KSr4KS/4KSX4KSw4KWH4KS44KSoIOCkqOCkl+CksOClh+CkleCliyDgpJvgpYvgpKHgpY3gpKbgpYgiCisKKyM6IHNyYy9jb25maWd1cmUuYzozMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6ICVzOiBkZXBlbmRlbmN5IHByb2JsZW1zLCBidXQgY29uZmlndXJpbmcgYW55d2F5IGFzIHlvdSByZXF1ZXN0ZWQ6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiAlczog4KSo4KS/4KSw4KWN4KSt4KSw4KSk4KS+IOCkuOCkruCkuOCljeCkr+CkvuCkueCksOClgiwg4KSk4KSwIOCknOClhyDgpK3gpI8g4KSq4KSo4KS/IOCkpOCkquCkvuCkiOCkgeCkleCliyDgpIXgpKjgpYHgpLDgpYvgpKfgpJXgpYsg4KSw4KWB4KSq4KSu4KS+IOCkleCkqOCljeCkq+Ckv+Ckl+CksCDgpJfgpLDgpY3gpKbgpYg6XG4iCisiJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzozMDkKK21zZ2lkICIiCisiUGFja2FnZSBpcyBpbiBhIHZlcnkgYmFkIGluY29uc2lzdGVudCBzdGF0ZSAtIHlvdSBzaG91bGRcbiIKKyIgcmVpbnN0YWxsIGl0IGJlZm9yZSBhdHRlbXB0aW5nIGNvbmZpZ3VyYXRpb24uIgorbXNnc3RyICIiCisi4KSq4KWN4KSv4KS+4KSV4KWH4KScIOCkj+CkleCkpuCkriDgpJbgpLDgpL7gpKwg4KSF4KSv4KWL4KSX4KWN4KSvIOCkuOCljeCkpeCkv+CkpOClgOCkruCkviDgpJsgLSDgpKTgpKrgpL7gpIjgpIHgpLLgpYdcbiIKKyLgpK/gpLjgpLLgpL7gpIgg4KSV4KSo4KWN4KSr4KS/4KSX4KSw4KWH4KS44KSoIOCkquCljeCksOCkr+CkpOCljeCkqCDgpJfgpLDgpY3gpKgg4KSq4KWC4KSw4KWN4KS1IOCkquClguCkqCDgpLjgpY3gpKXgpL7gpKrgpKjgpL4g4KSX4KSw4KWN4KSo4KWBIOCkquCksOCljeCkpuCkmyDgpaQiCisKKyM6IHNyYy9jb25maWd1cmUuYzozMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2V0dGluZyB1cCAlcyAoJXMpIC4uLlxuIgorbXNnc3RyICLgpLjgpYfgpJ/gpL/gpJngpY0g4KSX4KSw4KWN4KSm4KWIICVzICglcykgLi4uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzozOTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogdW5hYmxlIHRvIHN0YXQgY29uZmlnIGZpbGUgJyVzJ1xuIgorIiAoPSAnJXMnKTogJXMiCittc2dzdHIgIiIKKyJkcGtnOiAlczog4KSa4KWH4KSk4KS+4KS14KSo4KWAIC0g4KSV4KSo4KWN4KSr4KS/4KSXIOCkq+CkvuCkh+CksmAlcycg4KSk4KWL4KSV4KWN4KSoIOCkheCkleCljeCkt+CkriBcbiIKKyIgKD0gYCVzJyk6ICVzXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo0MDkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogY29uZmlnIGZpbGUgJyVzJyBpcyBhIGNpcmN1bGFyIGxpbmtcbiIKKyIgKD0gJyVzJykiCittc2dzdHIgIiIKKyJkcGtnOiAlczog4KSa4KWH4KSk4KS+4KS14KSo4KWAIC0g4KSV4KSo4KWN4KSr4KS/4KSXIOCkq+CkvuCkh+CksiBgJXMnIOCkquCksOCkv+CkquCkpOCljeCksCDgpLLgpL/gpJngpY3gpJUg4KS54KWLIFxuIgorIiAoPSBgJXMnKVxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDE4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IHVuYWJsZSB0byByZWFkbGluayBjb25mZmlsZSAnJXMnXG4iCisiICg9ICclcycpOiAlcyIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiDgpJrgpYfgpKTgpL7gpLXgpKjgpYAgLSDgpLLgpL/gpJngpY3gpJUg4KSV4KSo4KWN4KSr4KSr4KS+4KSH4KSyYCVzJyDgpKrgpKLgpY3gpKgg4KSF4KS44KSr4KSyIFxuIgorIiAoPSBgJXMnKTogJXNcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQ0NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBjb25mZmlsZSAnJS4yNTBzJyByZXNvbHZlcyB0byBkZWdlbmVyYXRlIGZpbGVuYW1lXG4iCisiICgnJXMnIGlzIGEgc3ltbGluayB0byAnJXMnKSIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiDgpJrgpYfgpKTgpL7gpLXgpKjgpYAgLSDgpJXgpKjgpY3gpKvgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KSy4KWHIOCkteCkv+CkleClg+CkpCDgpKvgpL7gpIfgpLLgpKjgpL7gpK4g4KS44KSu4KS+4KSn4KS+4KSoIOCkl+CksOCljeCkpuCkm1xuIgorIiAoYCVzJ+CksuClh2AlcyfgpK7gpL4g4KS44KS/4KSu4KSy4KS/4KSZ4KWN4KSVIOCkueCliylcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQ2MAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGNvbmZmaWxlICclLjI1MHMnIGlzIG5vdCBhIHBsYWluIGZpbGUgb3Igc3ltbGluayAoPSAnJXMnKSIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiDgpJrgpYfgpKTgpL7gpLXgpKjgpYAgLSDgpJXgpKjgpY3gpKvgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KSP4KSJ4KSf4KS+IOCkuOCkvuCkpuCkviDgpKvgpL7gpIfgpLIg4KS14KS+IOCkuOCkv+CkruCksuCkv+CkmeCljeCklSDgpLngpYvgpIfgpKggKD0gYCVzJylcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQ4NgorbXNnaWQgIm1kNWhhc2giCittc2dzdHIgIm1kNWhhc2giCisKKyM6IHNyYy9jb25maWd1cmUuYzo0OTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiB1bmFibGUgdG8gb3BlbiBjb25mZmlsZSAlcyBmb3IgaGFzaDogJXMiCittc2dzdHIgImRwa2c6ICVzOiDgpJrgpYfgpKTgpL7gpLXgpKjgpYAgLSDgpLngpY3gpK/gpL7gpLjgpJXgpL4g4KSy4KS+4KSX4KS/IOCkleCkqOCljeCkq+Ckq+CkvuCkh+CksiAlcyDgpJbgpYvgpLLgpY3gpKgg4KSF4KSV4KWN4KS34KSuOiAlc1xuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NTIyIHNyYy9jb25maWd1cmUuYzo1MjYKK21zZ2lkICJjb25mZmlsZSBkaWZmZXJlbmNlIHZpc3VhbGl6ZXIiCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjU0MworbXNnaWQgIlR5cGUgYGV4aXQnIHdoZW4geW91J3JlIGRvbmUuXG4iCittc2dzdHIgIuCkpOCkquCkvuCkiOCkgeCksuClhyDgpJfgpLDgpL/gpLjgpJXgpYcg4KSq4KSb4KS/ICdleGl0JyDgpJ/gpL7gpIfgpKog4KSX4KSw4KWN4KSo4KWB4KS54KWL4KS44KWNIOClpFxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NTUyIHNyYy9jb25maWd1cmUuYzo1NTYKK21zZ2lkICJjb25mZmlsZSBzaGVsbCIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjAyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJDb25maWd1cmF0aW9uIGZpbGUgYCVzJyIKK21zZ3N0ciAiIgorIlxuIgorIuCkleCkqOCljeCkq+Ckv+Ckl+CksOClh+CkuOCkqCDgpKvgpL7gpIfgpLIgYCVzJyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYwNAorIywgYy1mb3JtYXQKK21zZ2lkICIgKGFjdHVhbGx5IGAlcycpIgorbXNnc3RyICIgKOCkteCkvuCkuOCljeCkpOCkteCkruCkviBgJXMnKSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYwOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiID09PiBGaWxlIG9uIHN5c3RlbSBjcmVhdGVkIGJ5IHlvdSBvciBieSBhIHNjcmlwdC5cbiIKKyIgPT0+IEZpbGUgYWxzbyBpbiBwYWNrYWdlIHByb3ZpZGVkIGJ5IHBhY2thZ2UgbWFpbnRhaW5lci5cbiIKK21zZ3N0ciAiIgorIlxuIgorIiA9PT4g4KSk4KSq4KS+4KSI4KSBIOCkteCkviDgpI/gpIngpJ/gpL4g4KS44KWN4KSV4KWN4KSw4KS/4KSq4KWN4KSf4KSm4KWN4KSn4KS+4KSw4KS+IOCkquCljeCksOCko+CkvuCksuClgOCkruCkviDgpKvgpL7gpIfgpLIg4KS44KS/4KSw4KWN4KSc4KSo4KS+IOCkreCkr+CliyDgpaRcbiIKKyIgPT0+IOCkquCljeCkr+CkvuCkleClh+CknCDgpK7gpLDgpY3gpK7gpKQg4KSX4KSw4KWN4KSo4KWH4KSm4KWN4KS14KS+4KSw4KS+IOCkquCljeCkr+CkvuCkleClh+CknOCkruCkviDgpKvgpL7gpIfgpLIg4KSq4KSo4KS/IOCkquCljeCksOCkpuCkvuCkqCDgpJfgpLDgpY3gpK/gpYsg4KWkXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiAgICAgTm90IG1vZGlmaWVkIHNpbmNlIGluc3RhbGxhdGlvbi5cbiIKK21zZ3N0ciAiIgorIlxuIgorIiAgICAg4KS44KWN4KSl4KS+4KSq4KSo4KS+IOCkpuClh+CkluCkvyDgpKrgpLDgpL/gpK7gpL7gpLDgpY3gpJzgpKgg4KSX4KSw4KS/4KSP4KSV4KWLIOCkm+CliOCkqCDgpaRcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYxNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiID09PiBNb2RpZmllZCAoYnkgeW91IG9yIGJ5IGEgc2NyaXB0KSBzaW5jZSBpbnN0YWxsYXRpb24uXG4iCittc2dzdHIgIiIKKyJcbiIKKyIgPT0+IOCkuOCljeCkpeCkvuCkquCkqOCkviDgpKbgpYfgpJbgpL8o4KSk4KSq4KS+4KSI4KSBIOCkteCkviDgpKTgpKrgpL7gpIjgpIHgpJXgpYsg4KS44KWN4KSV4KWN4KSw4KS/4KSq4KWN4KSf4KSm4KWN4KSn4KS+4KSw4KS+KSDgpKrgpLDgpL/gpK7gpL7gpLDgpY3gpJzgpL/gpKQg4KWkXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiA9PT4gRGVsZXRlZCAoYnkgeW91IG9yIGJ5IGEgc2NyaXB0KSBzaW5jZSBpbnN0YWxsYXRpb24uXG4iCittc2dzdHIgIiIKKyJcbiIKKyIgPT0+IOCkuOCljeCkpeCkvuCkquCkqOCkviDgpKbgpYfgpJbgpL8gKOCkpOCkquCkvuCkiOCkgSDgpLXgpL4g4KS44KWN4KSV4KWN4KSw4KS/4KSq4KWN4KSfIOCkpuCljeCkp+CkvuCksOCkvikg4KS54KSf4KS+4KSH4KSP4KSV4KWLIOClpFxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjE5CisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gUGFja2FnZSBkaXN0cmlidXRvciBoYXMgc2hpcHBlZCBhbiB1cGRhdGVkIHZlcnNpb24uXG4iCittc2dzdHIgIiA9PT7gpI/gpIngpJ/gpL4g4KSF4KSm4KWN4KSv4KS+4KS14KSn4KS/4KSVIOCkuOCkguCkuOCljeCkleCksOCkoyDgpKrgpY3gpK/gpL7gpJXgpYfgpJwg4KS14KS/4KSk4KSw4KSV4KSy4KWH4KSXIOCkuOCkvyDgpJfgpLDgpYfgpJXgpYvgpKog4KSjIOCkmyDgpaRcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYyMAorIywgYy1mb3JtYXQKK21zZ2lkICIgICAgIFZlcnNpb24gaW4gcGFja2FnZSBpcyB0aGUgc2FtZSBhcyBhdCBsYXN0IGluc3RhbGxhdGlvbi5cbiIKK21zZ3N0ciAiICAgIOCkquCljeCkr+CkvuCkleClh+CknOCkruCkviDgpLjgpILgpLjgpY3gpJXgpLDgpKMg4KSF4KSo4KWN4KSk4KS/4KSuIOCkuOCljeCkpeCkvuCkquCkqOCkviDgpKzgpLDgpL7gpKzgpLAg4KSbIOClpFxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjI4CisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gVXNpbmcgbmV3IGZpbGUgYXMgeW91IHJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiID09PiDgpKTgpKrgpL7gpIjgpIHgpJXgpYsg4KSF4KSo4KWB4KSw4KWL4KSn4KSV4KWLIOCksOClgeCkquCkruCkviDgpKjgpK/gpL7gpIEg4KSr4KS+4KSH4KSyIOCkquCljeCksOCkr+Cli+CklyDgpJfgpLDgpY3gpKbgpYjgpJsg4KWkXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBVc2luZyBjdXJyZW50IG9sZCBmaWxlIGFzIHlvdSByZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiA9PT4g4KSk4KSq4KS+4KSI4KSB4KSV4KWLIOCkheCkqOClgeCksOCli+Ckp+CkleCliyDgpLDgpYHgpKrgpK7gpL4g4KS54KS+4KSyIOCkquClgeCksOCkvuCkqOCliyDgpKvgpL7gpIfgpLIg4KSq4KWN4KSw4KSv4KWL4KSXIOCkl+CksOCljeCkpuCliOCkmyDgpaRcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY0MQorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IEtlZXBpbmcgb2xkIGNvbmZpZyBmaWxlIGFzIGRlZmF1bHQuXG4iCittc2dzdHIgIiA9PT4g4KSq4KWB4KSw4KS+4KSo4KWLIOCkleCkqOCljeCkq+Ckv+CklyDgpKvgpL7gpIfgpLIg4KSq4KWC4KSw4KWN4KS14KSo4KS/4KSw4KWN4KSn4KS+4KSw4KS/4KSk4KSV4KWLIOCksOClgeCkquCkruCkviDgpLDgpL7gpJbgpY3gpKbgpYjgpJsg4KWkXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBVc2luZyBuZXcgY29uZmlnIGZpbGUgYXMgZGVmYXVsdC5cbiIKK21zZ3N0ciAiID09PiDgpKjgpK/gpL7gpIEg4KSV4KSo4KWN4KSr4KS/4KSXIOCkq+CkvuCkh+CksiDgpKrgpYLgpLDgpY3gpLXgpKjgpL/gpLDgpY3gpKfgpL7gpLDgpL/gpKTgpJXgpYsg4KSw4KWB4KSq4KSu4KS+IOCkquCljeCksOCkr+Cli+CklyDgpJfgpLDgpY3gpKbgpYjgpJsg4KWkXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyIgICBXaGF0IHdvdWxkIHlvdSBsaWtlIHRvIGRvIGFib3V0IGl0ID8gIFlvdXIgb3B0aW9ucyBhcmU6XG4iCisiICAgIFkgb3IgSSAgOiBpbnN0YWxsIHRoZSBwYWNrYWdlIG1haW50YWluZXIncyB2ZXJzaW9uXG4iCisiICAgIE4gb3IgTyAgOiBrZWVwIHlvdXIgY3VycmVudGx5LWluc3RhbGxlZCB2ZXJzaW9uXG4iCisiICAgICAgRCAgICAgOiBzaG93IHRoZSBkaWZmZXJlbmNlcyBiZXR3ZWVuIHRoZSB2ZXJzaW9uc1xuIgorIiAgICAgIFogICAgIDogc3RhcnQgYSBzaGVsbCB0byBleGFtaW5lIHRoZSBzaXR1YXRpb25cbiIKK21zZ3N0ciAiIgorIiAgIOCkpOCkquCkvuCkiOCkgeCksuClhyDgpK/gpLjgpJXgpYsg4KSs4KS+4KSw4KWH4KSu4KS+IOCkleClhyDgpJfgpLDgpY3gpKgg4KSa4KS+4KS54KSo4KWB4KS54KWB4KSo4KWN4KSbID8gIOCkpOCkquCkvuCkiOCkgeCkleCliyDgpLXgpL/gpJXgpLLgpY3gpKrgpLngpLDgpYI6XG4iCisiICAgIFkg4KS14KS+IEkgIDog4KSq4KWN4KSv4KS+4KSV4KWH4KScIOCkruCksOCljeCkruCkpCDgpJfgpLDgpY3gpKjgpYcg4KS44KSC4KS44KWN4KSV4KSw4KSjIOCkuOCljeCkpeCkvuCkquCkqOCkviDgpJfgpLDgpY3gpKjgpYHgpLngpYvgpLjgpY1cbiIKKyIgICAgTiBvciBPICA6IOCkueCkvuCksuCkuOCkvuCksuCliCDgpLjgpY3gpKXgpL7gpKrgpKjgpL4g4KSX4KSw4KS/4KSP4KSV4KWLIOCkuOCkguCkuOCljeCkleCksOCkoyDgpLDgpL7gpJbgpY3gpKjgpYHgpLngpYvgpLjgpY1cbiIKKyIgICAgICBEICAgICA6IOCkuOCkguCkuOCljeCkleCksOCko+CkueCksOClgiDgpKzgpL/gpJrgpJXgpYsg4KSr4KSw4KSV4KS54KSw4KWCIOCkpuClh+CkluCkvuCkieCkqOClgeCkueCli+CkuOCljVxuIgorIiAgICAgIFogICAgIDog4KS14KS44KWN4KSk4KWB4KS44KWN4KSl4KS/4KSk4KS/IOCkquCksOCkv+CkleCljeCkt+CkoyDgpJfgpLDgpY3gpKgg4KS44KWLIOCkquCljeCksOCkleCljeCksOCkv+Ckr+CkviDgpKrgpYPgpLfgpY3gpKDgpK3gpYLgpK7gpL8g4KSX4KSw4KWN4KSo4KWB4KS54KWL4KS44KWNIFxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjU5CisjLCBjLWZvcm1hdAorbXNnaWQgIiBUaGUgZGVmYXVsdCBhY3Rpb24gaXMgdG8ga2VlcCB5b3VyIGN1cnJlbnQgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIOCkpOCkquCkvuCkiOCkgeCkleCliyDgpLngpL7gpLLgpJXgpYsg4KS44KSC4KS44KWN4KSV4KSw4KSjIOCkquClguCksOCljeCkteCkqOCkv+CksOCljeCkp+CkvuCksOCkv+CkpCDgpJXgpL7gpLDgpY3gpK8g4KSw4KS+4KSW4KWN4KSo4KSV4KS+IOCksuCkvuCkl+CkvyDgpLngpYsg4KWkXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIFRoZSBkZWZhdWx0IGFjdGlvbiBpcyB0byBpbnN0YWxsIHRoZSBuZXcgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIOCkquClguCksOCljeCkteCkqOCkv+CksOCljeCkp+CkvuCksOCkv+CkpCDgpJXgpL7gpLDgpY3gpK8g4KSo4KSv4KS+4KSBIOCkuOCkguCkuOCljeCkleCksOCkoyDgpLjgpY3gpKXgpL7gpKrgpKjgpL4g4KSX4KSw4KWN4KSo4KSy4KS+4KSIIOCkueCliyDgpaRcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY2NgorbXNnaWQgIltkZWZhdWx0PU5dIgorbXNnc3RyICJb4KSq4KWC4KSw4KWN4KS14KSo4KS/4KSw4KWN4KSn4KS+4KSw4KS/4KSkPU5dIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjY3Cittc2dpZCAiW2RlZmF1bHQ9WV0iCittc2dzdHIgIlvgpKrgpYLgpLDgpY3gpLXgpKjgpL/gpLDgpY3gpKfgpL7gpLDgpL/gpKQ9WV0iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NjgKK21zZ2lkICJbbm8gZGVmYXVsdF0iCittc2dzdHIgIlvgpKrgpYLgpLDgpY3gpLXgpKjgpL/gpLDgpY3gpKfgpL7gpLDgpL/gpKQg4KSb4KWI4KSoXSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY3MQorbXNnaWQgImVycm9yIHdyaXRpbmcgdG8gc3RkZXJyLCBkaXNjb3ZlcmVkIGJlZm9yZSBjb25mZmlsZSBwcm9tcHQiCittc2dzdHIgInN0ZGVyciDgpLLgpL7gpIgg4KSy4KWH4KSW4KWN4KSm4KS+IOCkpOCljeCksOClgeCkn+Ckvywg4KSV4KSo4KWN4KSr4KSr4KS+4KSH4KSyIOCkquCljeCksOCli+CkruCljeCknyDgpKrgpLngpL/gpLLgpYcg4KSq4KSk4KWN4KSk4KS+IOCksuCkl+CkvuCkh+Ckr+CliyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY4MAorbXNnaWQgInJlYWQgZXJyb3Igb24gc3RkaW4gYXQgY29uZmZpbGUgcHJvbXB0IgorbXNnc3RyICLgpJXgpKjgpY3gpKvgpKvgpL7gpIfgpLIg4KSq4KWN4KSw4KWL4KSu4KWN4KSf4KSV4KWLIHN0ZGluIOCkruCkviDgpKTgpY3gpLDgpYHgpJ/gpL8g4KSq4KSi4KWN4KSo4KWB4KS54KWL4KS44KWNIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjgxCittc2dpZCAiRU9GIG9uIHN0ZGluIGF0IGNvbmZmaWxlIHByb21wdCIKK21zZ3N0ciAiRU9GIOCkleCliyBzdGRpbiDgpK7gpL4g4KSV4KSo4KWN4KSr4KSr4KS+4KSH4KSyIOCkquCljeCksOCli+CkruCljeCknyIKKworIzogc3JjL2RlcGNvbi5jOjE3NQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBkZXBlbmRzIG9uICVzIgorbXNnc3RyICIlcyDgpK7gpL4g4KSo4KS/4KSw4KWN4KSt4KSwIOCkueClgeCkqOCljeCkmyAlcyIKKworIzogc3JjL2RlcGNvbi5jOjE3OAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBwcmUtZGVwZW5kcyBvbiAlcyIKK21zZ3N0ciAiJXMg4KSq4KS54KS/4KSy4KWHIOCkqOCliCAlcyDgpK7gpL4g4KSo4KS/4KSw4KWN4KSt4KSwIOCkueClgeCkqOCljeCkmyIKKworIzogc3JjL2RlcGNvbi5jOjE4MQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyByZWNvbW1lbmRzICVzIgorbXNnc3RyICIlcyDgpLLgpYcgJXMg4KSy4KS+4KSIIOCkuOCkv+Ckq+CkvuCksOCkv+CktiDgpJfgpLDgpY3gpKbgpJsiCisKKyM6IHNyYy9kZXBjb24uYzoxODQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgc3VnZ2VzdHMgJXMiCittc2dzdHIgIiVzIOCksuClhyAlcyDgpLjgpYHgpJ3gpL7gpLUg4KSm4KS/4KSo4KWN4KSbIgorCisjOiBzcmMvZGVwY29uLmM6MTg3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGJyZWFrcyAlcyIKK21zZ3N0ciAiJXMg4KSy4KWHICVzIOCksuCkvuCkiCDgpLXgpL/gpJrgpY3gpJvgpYfgpKYg4KSX4KSw4KWN4KSm4KSbIgorCisjOiBzcmMvZGVwY29uLmM6MTkwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGNvbmZsaWN0cyB3aXRoICVzIgorbXNnc3RyICIlcyDgpLjgpIHgpJcgJXMg4KSm4KWN4KS14KSo4KWN4KSm4KWN4KS1IOCkl+CksOCljeCkpuCkmyIKKworIzogc3JjL2RlcGNvbi5jOjE5MworIywgYy1mb3JtYXQKK21zZ2lkICIlcyBlbmhhbmNlcyAlcyIKK21zZ3N0ciAiJXMg4KSy4KWHICVzIOCkrOCkouCkvuCkieCkgeCkpuCkmyIKKworIzogc3JjL2RlcGNvbi5jOjI5NgorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyDgpLLgpL7gpIgg4KS54KSf4KS+4KSP4KSV4KWLIOCkueClgeCkqOClgSDgpKrgpLDgpY3gpKbgpJsg4KWkXG4iCisKKyM6IHNyYy9kZXBjb24uYzoyOTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdG8gYmUgZGVjb25maWd1cmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyDgpLLgpL7gpIgg4KSh4KS/4KSV4KSo4KWN4KSr4KS/4KSX4KSwIOCkl+CksOCljeCkqOClgSDgpKrgpLDgpY3gpJsg4KWkXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdG8gYmUgaW5zdGFsbGVkLCBidXQgaXMgdmVyc2lvbiAlLjI1MHMuXG4iCittc2dzdHIgIiAgJS4yNTBzIOCkuOCljeCkpeCkvuCkquCkv+CkpCDgpLngpYHgpKjgpYEg4KSq4KSw4KWN4KSm4KSbLCDgpKTgpLAg4KS44KSC4KS44KWN4KSV4KSw4KSjICUuMjUwcyDgpK7gpL4g4KWkXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgaW5zdGFsbGVkLCBidXQgaXMgdmVyc2lvbiAlLjI1MHMuXG4iCittc2dzdHIgIiAgJS4yNTBzIOCkuOCljeCkpeCkvuCkquCkqOCkviDgpJfgpLDgpL/gpI/gpJXgpYsg4KSbLCDgpKTgpLAg4KS44KSC4KS44KWN4KSV4KSw4KSjICUuMjUwcyDgpK7gpL4g4KWkXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdW5wYWNrZWQsIGJ1dCBoYXMgbmV2ZXIgYmVlbiBjb25maWd1cmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyDgpJbgpYvgpLLgpL/gpI/gpJXgpYsg4KSbLCDgpKTgpLAg4KSV4KS54KS/4KSy4KWHIOCkquCkqOCkvyDgpJXgpKjgpY3gpKvgpL/gpJfgpLAg4KSX4KS/4KSw4KS/4KSP4KSoIOClpFxuIgorCisjOiBzcmMvZGVwY29uLmM6MzM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHVucGFja2VkLCBidXQgaXMgdmVyc2lvbiAlLjI1MHMuXG4iCittc2dzdHIgIiAgJS4yNTBzIOCkluCli+CksuCkv+Ckj+CkleCliyDgpJssIOCkpOCksCDgpLjgpILgpLjgpY3gpJXgpLDgpKMgJS4yNTBzIOCkruCkviDgpaRcbiIKKworIzogc3JjL2RlcGNvbi5jOjM0MworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBsYXRlc3QgY29uZmlndXJlZCB2ZXJzaW9uIGlzICUuMjUwcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMg4KSF4KSo4KWN4KSk4KS/4KSu4KS+IOCkleCkqOCljeCkq+Ckv+Ckl+CksCDgpJfgpLDgpL/gpI/gpJXgpYsg4KS44KSC4KS44KWN4KSV4KSw4KSjICUuMjUwcyDgpLngpYsg4KWkXG4iCisKKyM6IHNyYy9kZXBjb24uYzozNTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgJXMuXG4iCittc2dzdHIgIiAgJS4yNTBzICAlcyDgpLngpYsg4KWkXG4iCisKKyM6IHNyYy9kZXBjb24uYzozODgKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGJ1dCBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyDgpLLgpYcgICUuMjUwcyDgpKrgpY3gpLDgpKbgpL7gpKgg4KSX4KSw4KWN4KSm4KSbIOCkpOCksCDgpLngpJ/gpL7gpIfgpI/gpJXgpYsg4KS54KWB4KSo4KWBIOCkquCksOCljeCkpuCkmyDgpaRcbiIKKworIzogc3JjL2RlcGNvbi5jOjM5MgorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYnV0IGlzIHRvIGJlIGRlY29uZmlndXJlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMg4KSy4KWHICUuMjUwcyDgpKrgpY3gpLDgpKbgpL7gpKgg4KSX4KSw4KWN4KSm4KSbIOCkpOCksCDgpKHgpL/gpJXgpKjgpY3gpKvgpL/gpJfgpLAg4KSX4KSw4KS/4KSP4KSV4KWLIOCkueClgeCkqOClgeCkquCksOCljeCkpuCkmyDgpaRcbiIKKworIzogc3JjL2RlcGNvbi5jOjQwMQorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYnV0IGlzICVzLlxuIgorbXNnc3RyICIgICUuMjUwcyDgpLLgpYcgJS4yNTBzIOCkquCljeCksOCkpuCkvuCkqCDgpJfgpLDgpY3gpKbgpJsg4KSk4KSwICVzIOCkueCliyDgpaRcbiIKKworIzogc3JjL2RlcGNvbi5jOjQxNQorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIgICUuMjUwcyDgpLjgpY3gpKXgpL7gpKrgpKjgpL4g4KSX4KSw4KS/4KSP4KSV4KWLIOCkm+CliOCkqCDgpaRcbiIKKworIzogc3JjL2RlcGNvbi5jOjQ0MworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyAodmVyc2lvbiAlLjI1MHMpIGlzIHRvIGJlIGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMgKOCkuOCkguCkuOCljeCkleCksOCkoyAlLjI1MHMpIOCkuOCljeCkpeCkvuCkquCkv+CkpCDgpLngpYHgpKjgpYEg4KSq4KSw4KWN4KSm4KSbIOClpFxuIgorCisjOiBzcmMvZGVwY29uLmM6NDY4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyAodmVyc2lvbiAlLjI1MHMpIGlzIHByZXNlbnQgYW5kICVzLlxuIgorbXNnc3RyICIgICUuMjUwcyAo4KS44KSC4KS44KWN4KSV4KSw4KSjICUuMjUwcykgJXMg4KS54KWLIOClpFxuIgorCisjOiBzcmMvZGVwY29uLmM6NDk1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBhbmQgaXMgdG8gYmUgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIgICUuMjUwcyDgpLLgpYcgJS4yNTBzIOCkquCljeCksOCkpuCkvuCkqCDgpJfgpLDgpY3gpKbgpJsg4KSwIOCkuOCljeCkpeCkvuCkquCkv+CkpCDgpLngpYHgpKjgpYEg4KSq4KSw4KWN4KSm4KSbIOClpFxuIgorCisjOiBzcmMvZGVwY29uLmM6NTM3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYW5kIGlzIHByZXNlbnQgYW5kICVzLlxuIgorbXNnc3RyICIgICUuMjUwcyDgpLLgpYcgJS4yNTBzIOCkquCljeCksOCkpuCkvuCkqCDgpJfgpLDgpY3gpKbgpJsg4KSwICVzIOCkueCliyDgpaRcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjUwCisjLCBmdXp6eQorbXNnaWQgIlVzZSAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgZGl2ZXJ0aW5nIGZpbGVzLiIKK21zZ3N0ciAi4KSu4KSm4KWN4KSm4KSk4KSV4KWLIOCksuCkvuCkl+CkvyBkcGtnLXNwbGl0IC0taGVscCDgpJ/gpL7gpIfgpKog4KSX4KSw4KWN4KSo4KWB4KS54KWL4KS44KWNIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjYgc3JjL3N0YXRjbWQuYzo1NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuICVzIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIuCkoeClh+CkrOCkv+Ckr+CkqCAlcyDgpLjgpILgpLjgpY3gpJXgpLDgpKMgJXMgXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo3MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIlxuIgorI3wgIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyN8ICJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLiIKK21zZ2lkICIiCisiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDEwIEd1aWxsZW0gSm92ZXIuXG4iCittc2dzdHIgIiIKKyJcbiIKKyLgpKrgpY3gpLDgpKTgpL/gpLLgpL/gpKrgpL8g4KSF4KSn4KS/4KSV4KS+4KSwICjgpLjgpYApIOClp+Clr+Clr+ClqyDgpIfgpK/gpL7gpKgg4KSc4KWN4KSv4KS+4KSV4KWN4KS44KSoXG4iCisi4KSq4KWN4KSw4KSk4KS/4KSy4KS/4KSq4KS/IOCkheCkp+Ckv+CkleCkvuCksCAo4KS44KWAKSDgpajgpabgpabgpaYs4KWo4KWm4KWm4KWnIOCkteCkv+CksOCljeCkmuCkvuCksOCljeCkoSDgpIbgpJXgpLDgpY3gpK7gpY3gpK/gpL7gpKgiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo3NSBzcmMvbWFpbi5jOjYzIHNyYy9xdWVyeWNtZC5jOjYwMyBzcmMvc3RhdGNtZC5jOjY1CisjOiBzcmMvdHJpZ2NtZC5jOjU1IGRwa2ctZGViL21haW4uYzo1NyBkcGtnLXNwbGl0L21haW4uYzo1MQorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjg5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvclxuIgorImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LlxuIgorbXNnc3RyICIiCisiXG4iCisi4KSv4KWLIOCkqOCkv+CktuClgeCksuCljeCklSDgpLjgpKvgpY3gpJ/gpLXgpYfgpK/gpLAg4KS54KWLOyAg4KSq4KWN4KSw4KSk4KS/4KSy4KS/4KSq4KS/IOCkuOCksOCljeCkpOCkleCkviDgpLLgpL7gpJfgpL8g4KSc4KWAIOCkj+CkqCDgpK/gpYIg4KS44KS+4KSn4KS+4KSw4KSjIOCkuOCkvuCksOCljeCkteCknOCkqOCkv+CklSDgpIfgpJzgpL7gpJzgpKTgpKrgpKTgpY3gpLDgpJXgpYsgIgorIuCkuOCkguCkuOCljeCkleCksOCkoyDgpagg4KS14KS+XG4iCisi4KSq4KSb4KS/4KSy4KWN4KSy4KWLIOCkueClh+CksOCljeCkqOClgeCkueCli+CkuOCljSDgpaQg4KSV4KWB4KSo4KWIIOCkquCkqOCkvyDgpLXgpL7gpLDgpYfgpKjgpY3gpJ/gpYAg4KSb4KWI4KSoIOClpFxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6ODcgc3JjL21haW4uYzo4MSBzcmMvcXVlcnljbWQuYzo2MTUgc3JjL3N0YXRjbWQuYzo3NworIzogZHBrZy1kZWIvbWFpbi5jOjY5IGRwa2ctc3BsaXQvbWFpbi5jOjYzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo5NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIDxjb21tYW5kPlxuIgorIlxuIgorbXNnc3RyICIiCisi4KSJ4KSq4KSv4KWL4KSXOiAlcyBbPG9wdGlvbj4gLi4uXSA8Y29tbWFuZD5cbiIKKyJcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjkxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIFstLWFkZF0gPGZpbGU+ICAgICAgICAgICBhZGQgYSBkaXZlcnNpb24uXG4iCisiICAtLXJlbW92ZSA8ZmlsZT4gICAgICAgICAgcmVtb3ZlIHRoZSBkaXZlcnNpb24uXG4iCisiICAtLWxpc3QgWzxnbG9iLXBhdHRlcm4+XSAgc2hvdyBmaWxlIGRpdmVyc2lvbnMuXG4iCisiICAtLWxpc3RwYWNrYWdlIDxmaWxlPiAgICAgc2hvdyB3aGF0IHBhY2thZ2UgZGl2ZXJ0cyB0aGUgZmlsZS5cbiIKKyIgIC0tdHJ1ZW5hbWUgPGZpbGU+ICAgICAgICByZXR1cm4gdGhlIGRpdmVydGVkIGZpbGUuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjEwMAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLXBhY2thZ2UgPHBhY2thZ2U+ICAgICAgbmFtZSBvZiB0aGUgcGFja2FnZSB3aG9zZSBjb3B5IG9mIDxmaWxlPiB3aWxsICIKKyJub3RcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJlIGRpdmVydGVkLlxuIgorIiAgLS1sb2NhbCAgICAgICAgICAgICAgICAgIGFsbCBwYWNrYWdlcycgdmVyc2lvbnMgYXJlIGRpdmVydGVkLlxuIgorIiAgLS1kaXZlcnQgPGRpdmVydC10bz4gICAgIHRoZSBuYW1lIHVzZWQgYnkgb3RoZXIgcGFja2FnZXMnIHZlcnNpb25zLlxuIgorIiAgLS1yZW5hbWUgICAgICAgICAgICAgICAgIGFjdHVhbGx5IG1vdmUgdGhlIGZpbGUgYXNpZGUgKG9yIGJhY2spLlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIHNldCB0aGUgZGlyZWN0b3J5IHdpdGggdGhlIGRpdmVyc2lvbnMgZmlsZS5cbiIKKyIgIC0tdGVzdCAgICAgICAgICAgICAgICAgICBkb24ndCBkbyBhbnl0aGluZywganVzdCBkZW1vbnN0cmF0ZS5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBxdWlldCBvcGVyYXRpb24sIG1pbmltYWwgb3V0cHV0LlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIuCkieCkquCkr+Cli+CklzogJXMgWzxvcHRpb24+IC4uLl0gPGNvbW1hbmQ+XG4iCisiXG4iCisi4KSG4KSm4KWH4KS24KS54KSw4KWCOlxuIgorIiAgWy0tYWRkXSA8ZmlsZT4gICAgICAgICAgIOCkoeCkvuCkh+CkreCksOCljeCkuOCkqCDgpKXgpKrgpY3gpKjgpYHgpLngpYvgpLjgpY1cbiIKKyIgIC0tcmVtb3ZlIDxmaWxlPiAgICAgICAgICDgpKHgpL7gpIfgpK3gpLDgpY3gpLjgpKgg4KS54KSf4KS+4KSJ4KSo4KWB4KS54KWL4KS44KWNXG4iCisiICAtLWxpc3QgWzxnbG9iLXBhdHRlcm4+XSAg4KSh4KS+4KSH4KSt4KSw4KWN4KS44KSoIOCkpuClh+CkluCkvuCkieCkqOClgeCkueCli+CkuOCljVxuIgorIiAgLS10cnVlbmFtZSA8ZmlsZT4gICAgICAgIOCkq+Clh+CksOCkv+Ckj+CkleCliyDgpKvgpL7gpIfgpLIg4KSr4KSw4KWN4KSV4KS+4KSJ4KSo4KWB4KS54KWL4KS44KWNXG4iCisiXG4iCisi4KS14KS/4KSV4KSy4KWN4KSqOlxuIgorIiAgLS3gpKrgpY3gpK/gpL7gpJXgpYfgpJwgPHBhY2thZ2U+ICAgICAgPGZpbGU+IOCkleCliyDgpKrgpY3gpLDgpKTgpL/gpLLgpL/gpKrgpL8g4KSo4KSr4KWH4KSw4KS/4KSo4KWHIOCkquCljeCkr+CkvuCkleClh+CknOCkleCli1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg4KSo4KS+4KSuXG4iCisiICAtLWxvY2FsICAgICAgICAgICAgICAgICAg4KS44KSs4KWIIOCkquCljeCkr+CkvuCkleClh+CknOCkleCliyDgpKHgpL7gpIfgpK3gpLDgpY3gpLjgpKgg4KSr4KWH4KSw4KS/4KSo4KWHIOCkm1xuIgorIiAgLS1kaXZlcnQgPGRpdmVydC10bz4gICAgIOCkheCkqOCljeCkryDgpKrgpY3gpK/gpL7gpJXgpYfgpJwg4KS44KSC4KS44KWN4KSV4KSw4KSj4KSm4KWN4KS14KS+4KSw4KS+IOCkquCljeCksOCkr+Cli+CklyDgpJfgpLDgpL/gpI/gpJXgpYsg4KSo4KS+4KSuXG4iCisiICAtLXJlbmFtZSAgICAgICAgICAgICAgICAg4KSb4KWH4KSJ4KSk4KS/4KSwIOCkq+CkvuCkh+CksiDgpLjgpL7gpLDgpY3gpKjgpYHgpLngpYvgpLjgpY0gKOCkteCkviDgpKrgpJvgpL7gpKHgpL8pXG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAg4KSh4KS+4KSH4KSt4KSw4KWN4KS44KSoIOCkq+CkvuCkh+CksuCkuOCkgeCklyDgpKHgpL7gpIfgpLDgpYfgpJXgpY3gpJ/gpLDgpYAg4KS44KWH4KSfIOCkl+CksOCljeCkqOClgeCkueCli+CkuOCljVxuIgorIiAgLS10ZXN0ICAgICAgICAgICAgICAgICAgIOCkleClh+CkueCkvyDgpKrgpKjgpL8g4KSo4KSX4KSw4KWN4KSo4KWB4KS54KWL4KS44KWNLCDgpK7gpL7gpKTgpY3gpLAg4KSm4KWH4KSW4KS+4KSJ4KSo4KWB4KS54KWL4KS44KWNXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAg4KS24KS+4KSo4KWN4KSkIOCkuOCknuCljeCkmuCkvuCksuCkqCwg4KSo4KWN4KSv4KWC4KSo4KSk4KSuIOCkqOCkv+CksOCljeCkl+CkpFxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIOCkr+CliyDgpK7gpKbgpY3gpKbgpKQg4KS44KSo4KWN4KSm4KWH4KS2IOCkpuClh+CkluCkvuCkieCkqOClgeCkueCli+CkuOCljVxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIOCkuOCkguCkuOCljeCkleCksOCkoyDgpKbgpYfgpJbgpL7gpIngpKjgpYHgpLngpYvgpLjgpY1cbiIKKyJcbiIKKyLgpKXgpKrgpY3gpKbgpL4sIOCkquClguCksOCljeCkteCkqOCkv+CksOCljeCkp+CkvuCksOCkv+CkpCAtLeCkuOCljeCkpeCkvuCkqOCkv+CkryDgpLngpYsg4KSwIC0t4KSr4KWH4KSw4KWN4KSo4KWB4KS54KWL4KS44KWNIDxvcmlnaW5hbD4uZGlzdHJpYi5cbiIKKyLgpLngpJ/gpL7gpIngpKbgpL4sIC0t4KSq4KWN4KSv4KS+4KSV4KWH4KScIOCkteCkviAtLeCkuOCljeCkpeCkvuCkqOCkv+CkryDgpLAgLS3gpK/gpKbgpL8g4KSo4KS/4KSw4KWN4KSm4KS/4KS34KWN4KSfIOCkl+CksOCkv+Ckj+CkruCkviDgpKvgpYfgpLDgpL7gpIcg4KSu4KS/4KSy4KWN4KSo4KWBIOCkquCksOCljeCkpuCkm1xuIgorIuCkquCljeCkr+CkvuCkleClh+CknCBwcmVpbnN0L3Bvc3RybSDgpLjgpY3gpJXgpY3gpLDgpL/gpKrgpY3gpJ/gpLLgpYcg4KS44KSn4KWIIC0t4KSq4KWN4KSv4KS+4KSV4KWH4KScIOCksCAtLeCkq+Clh+CksOCkvuCkhyDgpKjgpL/gpLDgpY3gpKbgpL/gpLfgpY3gpJ8g4KSX4KSw4KWN4KSo4KWBIOCkquCksOCljeCkpuCkmy5cbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiV2hlbiBhZGRpbmcsIGRlZmF1bHQgaXMgLS1sb2NhbCBhbmQgLS1kaXZlcnQgPG9yaWdpbmFsPi5kaXN0cmliLlxuIgorIldoZW4gcmVtb3ZpbmcsIC0tcGFja2FnZSBvciAtLWxvY2FsIGFuZCAtLWRpdmVydCBtdXN0IG1hdGNoIGlmIHNwZWNpZmllZC5cbiIKKyJQYWNrYWdlIHByZWluc3QvcG9zdHJtIHNjcmlwdHMgc2hvdWxkIGFsd2F5cyBzcGVjaWZ5IC0tcGFja2FnZSBhbmQgLS0iCisiZGl2ZXJ0LlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoxNjgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImVycm9yIGNoZWNraW5nIGAlcyc6ICVzIgorbXNnaWQgImVycm9yIGNoZWNraW5nICclcyciCittc2dzdHIgIuCknOCkvuCkgeCkmiDgpKTgpY3gpLDgpYHgpJ/gpL8gYCVzJzogJXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInJlbmFtZSBpbnZvbHZlcyBvdmVyd3JpdGluZyBgJXMnIHdpdGhcbiIKKyIgIGRpZmZlcmVudCBmaWxlIGAlcycsIG5vdCBhbGxvd2VkIgorbXNnc3RyICIiCisi4KSq4KWB4KSoOiDgpKjgpL7gpK7gpJXgpLDgpKPgpK7gpL4gYCVzJyDgpLLgpL7gpIhcbiIKKyIgIOCkq+CksOCklSDgpKvgpL7gpIfgpLIgYCVzJyDgpIXgpKfgpL/gpLLgpYfgpJbgpKgg4KS44KSu4KS+4KS14KWH4KS2IOCkueClgeCkqOCljeCkmywg4KS44KWN4KS14KS/4KSV4KS+4KSw4KWN4KSvIOCkm+CliOCkqCIKKworIzogc3JjL2RpdmVydGNtZC5jOjIyMyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTM3MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBmaWxlICclcyciCittc2dzdHIgIuCkuOCljeCksOCli+CkpCDgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KSW4KWL4KSy4KWN4KSoIOCkheCkleCljeCkt+CkriIKKworIzogc3JjL2RpdmVydGNtZC5jOjIyNworbXNnaWQgImZpbGUgY29weSIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjM5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW5ub3Qgc3RhdCBuZXcgbmFtZSBgJXMnOiAlcyIKK21zZ2lkICJjYW5ub3QgcmVuYW1lICclcycgdG8gJyVzJyIKK21zZ3N0ciAi4KSo4KSv4KS+4KSBIOCkqOCkvuCkriBgJXMnIOCkpOCli+CkleCljeCkqCDgpLjgpJXgpL/gpKbgpYjgpKg6ICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjUyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJyZW5hbWU6IHJlbW92ZSBkdXBsaWNhdGUgb2xkIGxpbmsgYCVzJzogJXMiCittc2dpZCAicmVuYW1lOiByZW1vdmUgZHVwbGljYXRlIG9sZCBsaW5rICclcyciCittc2dzdHIgIuCkquClgeCkqDog4KSo4KS+4KSu4KSV4KSw4KSjIOCkl+CksOCljeCkqOClgeCkueCli+CkuOCljTog4KSq4KWB4KSw4KS+4KSo4KWLIOCkqOCkleCljeCkleCksuClgCDgpLLgpL/gpJngpY3gpJUgYCVzJyDgpLngpJ/gpL7gpIngpKjgpYHgpLngpYvgpLjgpY06ICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjYyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gb3BlbiBzb3VyY2UgZmlsZSBgJS4yNTBzJyIKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIGNvcGllZCBzb3VyY2UgZmlsZSAnJXMnIgorbXNnc3RyICLgpLjgpY3gpLDgpYvgpKQg4KSr4KS+4KSH4KSyIGAlLjI1MHMnIOCkluCli+CksuCljeCkqCDgpIXgpJXgpY3gpLfgpK4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyODQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImxvY2FsIGRpdmVyc2lvbiBvZiAlcyIKK21zZ3N0ciAi4KS44KWN4KSl4KS+4KSo4KS/4KSvIOCksOClgeCkquCkruCkviDgpKTgpL/gpLAg4KSu4KWL4KSh4KS/4KSP4KSV4KWLOiAlc1xuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mjg2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJsb2NhbCBkaXZlcnNpb24gb2YgJXMgdG8gJXMiCittc2dzdHIgIuCkuOCljeCkpeCkvuCkqOCkv+CkryDgpLDgpYHgpKrgpK7gpL4g4KSk4KS/4KSwIOCkruCli+CkoeCkv+Ckj+CkleClizogJXNcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjI5MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZGl2ZXJzaW9uIGJ5ICVzIgorbXNnaWQgImRpdmVyc2lvbiBvZiAlcyBieSAlcyIKK21zZ3N0ciAiJXMg4KSm4KWN4KSn4KS+4KSw4KS+IOCkruCli+CkoSIKKworIzogc3JjL2RpdmVydGNtZC5jOjI5MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJzaW9uIG9mICVzIHRvICVzIGJ5ICVzIgorbXNnc3RyICIlcyDgpKbgpY3gpKfgpL7gpLDgpL4gJXMg4KSu4KS+IOCkq+Clh+CksOCkv+Ckj+CkleCli1xuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MzA5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJkaXZlcnNpb24gYnkgJXMiCittc2dpZCAiYW55IGRpdmVyc2lvbiBvZiAlcyIKK21zZ3N0ciAiJXMg4KSm4KWN4KSn4KS+4KSw4KS+IOCkruCli+CkoSIKKworIzogc3JjL2RpdmVydGNtZC5jOjMxMQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiYW55IGRpdmVyc2lvbiBvZiAlcyB0byAlcyIKK21zZ3N0ciAiJXMg4KSm4KWN4KSn4KS+4KSw4KS+ICVzIOCkruCkviDgpKvgpYfgpLDgpL/gpI/gpJXgpYtcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjM1NworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiY2Fubm90IG9wZW4gR1BMIGZpbGUiCittc2dpZCAiY2Fubm90IGNyZWF0ZSBuZXcgJXMgZmlsZSIKK21zZ3N0ciAiR1BM4KSr4KS+4KSH4KSyIOCkluCli+CksuCljeCkqCDgpLjgpJXgpYfgpKgiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozNzUgc3JjL3N0YXRjbWQuYzoyMTUgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE0MDQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCBmaWxlICclcyciCittc2dzdHIgInZzbnByaW50ZiDgpK7gpL4g4KSr4KWN4KSy4KS4IOCkl+CksOCljeCkqCDgpIXgpJXgpY3gpLfgpK4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozODIKKyMsIGZ1enp5CisjfCBtc2dpZCAicmVtb3ZlIG9sZCBkaXZlcnNpb25zLW9sZDogJXMiCittc2dpZCAiZXJyb3IgcmVtb3Zpbmcgb2xkIGRpdmVyc2lvbnMtb2xkIgorbXNnc3RyICLgpKrgpYHgpLDgpL7gpKjgpYsg4KSh4KS+4KSH4KSt4KSw4KWN4KS44KSoIOCkueCkn+CkvuCkieCkqOClgeCkueCli+CkuOCljS3gpKrgpYHgpLDgpL7gpKjgpYs6ICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mzg0CisjLCBmdXp6eQorbXNnaWQgImVycm9yIGNyZWF0aW5nIG5ldyBkaXZlcnNpb25zLW9sZCIKK21zZ3N0ciAi4KSo4KSv4KS+4KSBIHN0YXRvdmVycmlkZSDgpLjgpL/gpLDgpY3gpJzgpKjgpL4g4KSX4KSw4KWN4KSm4KS+IOCkpOCljeCksOClgeCkn+CkvzogJXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozODYKKyMsIGZ1enp5Cittc2dpZCAiZXJyb3IgaW5zdGFsbGluZyBuZXcgZGl2ZXJzaW9ucyIKK21zZ3N0ciAi4KSo4KSv4KS+4KSBIHN0YXRvdmVycmlkZSDgpLjgpY3gpKXgpL7gpKrgpKjgpL4g4KSk4KWN4KSw4KWB4KSf4KS/OiAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjQwNiBzcmMvZGl2ZXJ0Y21kLmM6NTAzIHNyYy9kaXZlcnRjbWQuYzo2MTAKKyM6IHNyYy9kaXZlcnRjbWQuYzo2MzAgc3JjL3N0YXRjbWQuYzoyOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhIHNpbmdsZSBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyDgpLLgpL7gpIgg4KSP4KSV4KSyIOCkpOCksOCljeCklSDgpIbgpLXgpLbgpY3gpK/gpJUg4KSq4KSw4KWN4KSm4KSbIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDA5IHNyYy9kaXZlcnRjbWQuYzo0MzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZW5hbWUgXCIlc1wiIGlzIG5vdCBhYnNvbHV0ZSIKK21zZ3N0ciAi4KSr4KS+4KSH4KSy4KSo4KS+4KSuIFwiJXNcIiDgpLjgpY3gpKXgpL/gpLAg4KSb4KWI4KSoIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDExIHNyYy9zdGF0Y21kLmM6MjQ5Cittc2dpZCAiZmlsZSBtYXkgbm90IGNvbnRhaW4gbmV3bGluZXMiCittc2dzdHIgIuCkq+CkvuCkh+CksuClhyDgpKjgpK/gpL7gpIHgpLDgpYfgpJbgpL4g4KS44KSu4KS+4KS14KWH4KS2IOCkqOCkl+CksOClh+CkleCliyDgpLngpYHgpKgg4KS44KSV4KWN4KSbIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDE4Cittc2dpZCAiQ2Fubm90IGRpdmVydCBkaXJlY3RvcmllcyIKK21zZ3N0ciAi4KSh4KS+4KSH4KSw4KWH4KSV4KWN4KSf4KSw4KWAIOCkq+Clh+CksOCljeCkqCDgpLjgpJXgpL/gpKbgpYjgpKgiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MzMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBkaXZlcnQgZmlsZSAnJXMnIHRvIGl0c2VsZiIKK21zZ3N0ciAi4KSh4KS+4KSH4KSw4KWH4KSV4KWN4KSf4KSw4KWAIOCkq+Clh+CksOCljeCkqCDgpLjgpJXgpL/gpKbgpYjgpKgiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0NTMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIkxlYXZpbmcgYCVzJyIKK21zZ2lkICJMZWF2aW5nICclcydcbiIKK21zZ3N0ciAi4KSb4KWL4KSh4KWN4KSm4KWI4KSbIGAlcyciCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBjbGFzaGVzIHdpdGggYCVzJyIKK21zZ3N0ciAid2l0aCBgJXMnIOCkuOCkgeCklyBgJXMnIOCkpuCljeCkteCkqOCljeCkpuCkueCksOClgiAiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0ODEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIkFkZGluZyBgJXMnIgorbXNnaWQgIkFkZGluZyAnJXMnXG4iCittc2dzdHIgImAlcycg4KSl4KSq4KWN4KSm4KS+IgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTEwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJObyBkaXZlcnNpb24gYCVzJywgbm9uZSByZW1vdmVkIgorbXNnaWQgIk5vIGRpdmVyc2lvbiAnJXMnLCBub25lIHJlbW92ZWQuXG4iCittc2dzdHIgIiBgJXMnIOCkoeCkvuCkh+CkreCksOCljeCkuOCkqCDgpLngpYvgpIfgpKgsIOCkleClh+CkueCkvyDgpKrgpKjgpL8g4KS54KSf4KS+4KSH4KSP4KSoIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTI1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJtaXNtYXRjaCBvbiBkaXZlcnQtdG9cbiIKKyIgIHdoZW4gcmVtb3ZpbmcgYCVzJ1xuIgorIiAgZm91bmQgYCVzJyIKK21zZ3N0ciAiIgorIiVzJyDgpLngpJ/gpL7gpIngpKbgpL4gXG4iCisiICBkaXZlcnQtdG8g4KSu4KS+XG4iCisiICBgJXMnIOCkq+Clh+CksuCkviDgpKrgpLDgpY3gpK/gpYsiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm1pc21hdGNoIG9uIHBhY2thZ2VcbiIKKyIgIHdoZW4gcmVtb3ZpbmcgYCVzJ1xuIgorIiAgZm91bmQgYCVzJyIKK21zZ3N0ciAiIgorIiBgJXMnIOCkueCkn+CkvuCkieCkpuCkviDgpKrgpY3gpK/gpL7gpJXgpYfgpJzgpK7gpL5cbiIKKyIgIGAlcycg4KSs4KWH4KSu4KWH4KSyXG4iCisiICDgpKvgpYfgpLLgpL4g4KSq4KSw4KWN4KSv4KWLIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTM5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJSZW1vdmluZyBgJXMnIgorbXNnaWQgIlJlbW92aW5nICclcydcbiIKK21zZ3N0ciAi4KS54KSf4KS+4KSJ4KSm4KWI4KSbIGAlcyciCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo2NTcKK21zZ2lkICJwYWNrYWdlIG1heSBub3QgY29udGFpbiBuZXdsaW5lcyIKK21zZ3N0ciAi4KSq4KWN4KSv4KS+4KSV4KWH4KSc4KSy4KWHIOCkqOCkr+CkvuCkgeCksOClh+CkluCkviDgpLjgpK7gpL7gpLXgpYfgpLYg4KSo4KSX4KSw4KWN4KSoIOCkuOCkleCljeCkmyIKKworIzogc3JjL2RpdmVydGNtZC5jOjY2NgorbXNnaWQgImRpdmVydC10byBtYXkgbm90IGNvbnRhaW4gbmV3bGluZXMiCittc2dzdHIgIuCkr+CkuOCkruCkviDgpKvgpYfgpLDgpY3gpKjgpYfgpLLgpYcg4KSo4KSv4KS+4KSB4KSw4KWH4KSW4KS+4KS54KSw4KWCIOCkuOCkruCkvuCkteClh+CktiDgpKjgpJfgpLDgpY3gpKgg4KS44KSV4KWN4KSbIgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzo2NAorbXNnaWQgImZhaWxlZCB0byBvcGVuIGRpdmVyc2lvbnMgZmlsZSIKK21zZ3N0ciAiZGl2ZXJzaW9ucyDgpKvgpL7gpIfgpLIg4KSW4KWL4KSy4KWN4KSoIOCkheCkuOCkq+CksiIKKworIzogc3JjL2RpdmVydGRiLmM6NzEKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgcHJldmlvdXMgZGl2ZXJzaW9ucyBmaWxlIgorbXNnc3RyICLgpIXgpJjgpL/gpLLgpY3gpLLgpYsgZGl2ZXJzaW9ucyDgpKvgpL7gpIfgpLIgZnN0YXQg4KSX4KSw4KWN4KSoIOCkheCkuOCkq+CksiIKKworIzogc3JjL2RpdmVydGRiLmM6NzMKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgZGl2ZXJzaW9ucyBmaWxlIgorbXNnc3RyICJkaXZlcnNpb25zIOCkq+CkvuCkh+CksiBmc3RhdCDgpJfgpLDgpY3gpKgg4KSF4KS44KSr4KSyIgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzoxMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmxpY3RpbmcgZGl2ZXJzaW9ucyBpbnZvbHZpbmcgYCUuMjUwcycgb3IgYCUuMjUwcyciCittc2dzdHIgIuCkpuCljeCkp+CkqOCljeCkpuCkvuCkpOCljeCkruCklSBkaXZlcnNpb25z4KSy4KWHYCUuMjUwcycgb3IgYCUuMjUwcycg4KS44KSC4KSy4KSX4KWN4KSwIOCkl+CksOCljeCkpuCliCIKKworIzogc3JjL2VucXVpcnkuYzo3MworbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBpbiBhIG1lc3MgZHVlIHRvIHNlcmlvdXMgcHJvYmxlbXMgZHVyaW5nXG4iCisiaW5zdGFsbGF0aW9uLiAgVGhleSBtdXN0IGJlIHJlaW5zdGFsbGVkIGZvciB0aGVtIChhbmQgYW55IHBhY2thZ2VzXG4iCisidGhhdCBkZXBlbmQgb24gdGhlbSkgdG8gZnVuY3Rpb24gcHJvcGVybHk6XG4iCittc2dzdHIgIiIKKyLgpKjgpL/gpK7gpY3gpKgg4KSq4KWN4KSv4KS+4KSV4KWH4KSc4KS54KSw4KWCIOCkuOCljeCkpeCkvuCkquCkqOCkvlxuIgorIuCkl+CksOCljeCkpuCkvuCkleCliyAg4KSX4KSu4KWN4KSt4KS/4KSwIOCkuOCkruCkuOCljeCkr+CkvuCkueCksOClgeCkleCliyDgpJXgpL7gpLDgpKPgpLLgpYcg4KSd4KSo4KWN4KSd4KSf4KSu4KS+IOCkm+CkqOCljSDgpaQgIOCkpOCkv+CkqOCkv+CkueCksOClgiAo4KSwIOCkleClgeCkqOCliCDgpKrgpY3gpK/gpL7gpJXgpYfgpJzgpLngpLDgpYJcbiIKKyLgpJzgpYHgpKgg4KSk4KS/4KSo4KS/4KS54KSw4KWB4KSu4KS+IOCkreCksCDgpKrgpLDgpY3gpKbgpJvgpKjgpY0pIOCksuCkvuCkiCDgpLDgpL7gpK7gpY3gpLDgpYsg4KS44KSB4KSXIOCkleCkvuCksOCljeCkr+Ckl+CksOCljeCkqOCkleCkviDgpLLgpL7gpJfgpL8g4KSq4KWC4KSoIOCkuOCljeCkpeCkvuCkquCkqOCkviDgpJfgpLDgpY3gpKjgpYEg4KSq4KSw4KWN4KSm4KSbOlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjgwCittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgaGF2ZSBiZWVuIHVucGFja2VkIGJ1dCBub3QgeWV0IGNvbmZpZ3VyZWQuXG4iCisiVGhleSBtdXN0IGJlIGNvbmZpZ3VyZWQgdXNpbmcgZHBrZyAtLWNvbmZpZ3VyZSBvciB0aGUgY29uZmlndXJlXG4iCisibWVudSBvcHRpb24gaW4gZHNlbGVjdCBmb3IgdGhlbSB0byB3b3JrOlxuIgorbXNnc3RyICIiCisi4KSo4KS/4KSu4KWN4KSoIOCkquCljeCkr+CkvuCkleClh+CkueCksOClgiDgpJbgpYvgpLLgpL/gpI/gpJXgpL4g4KSb4KSo4KWNIOCkpOCksCDgpIXgpLngpL/gpLLgpYcg4KS44KSu4KWN4KSuIOCkleCkqOCljeCkq+Ckv+Ckl+CksCDgpJfgpLDgpL/gpI/gpJXgpYsg4KSb4KWI4KSoIOClpFxuIgorIuCkpOCkv+CkqOCkv+CkueCksOClgeCksuCkvuCkiCDgpJXgpL7gpK7gpJXgpL4g4KSy4KS+4KSX4KS/ICfgpJrgpK/gpKgg4KS54KSf4KS+4KSJ4KSo4KWB4KS54KWL4KS44KWNJyDgpJXgpKjgpY3gpKvgpL/gpJfgpLAg4KSu4KWH4KSo4KWBIOCkteCkv+CkleCksuCljeCkquCkruCkviDgpLXgpL4gZHBrZyAtLeCkleCkqOCljeCkq+Ckv+Ckl+CksCBcbiIKKyLgpKrgpY3gpLDgpK/gpYvgpJcg4KSX4KSw4KWH4KSwIOCkleCkqOCljeCkq+Ckl+CksCDgpJfgpLDgpY3gpKjgpYHgpKrgpLDgpY3gpKbgpJs6XG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6ODcKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgb25seSBoYWxmIGNvbmZpZ3VyZWQsIHByb2JhYmx5IGR1ZSB0byBwcm9ibGVtc1xuIgorImNvbmZpZ3VyaW5nIHRoZW0gdGhlIGZpcnN0IHRpbWUuICBUaGUgY29uZmlndXJhdGlvbiBzaG91bGQgYmUgcmV0cmllZCB1c2luZ1xuIgorImRwa2cgLS1jb25maWd1cmUgPHBhY2thZ2U+IG9yIHRoZSBjb25maWd1cmUgbWVudSBvcHRpb24gaW4gZHNlbGVjdDpcbiIKK21zZ3N0ciAiIgorIuCkuOCkruCljeCkreCkteCkpCDgpKrgpLngpL/gpLLgpYsg4KSq4KSf4KSVXG4iCisi4KSV4KSo4KWN4KSr4KS/4KSX4KSwIOCkl+CksOCljeCkpuCkvuCkleCliyDgpLjgpK7gpLjgpY3gpK/gpL7gpJXgpL4g4KSV4KS+4KSw4KSj4KSy4KWHIOCkl+CksOCljeCkpuCkviDgpKjgpL/gpK7gpY3gpKgg4KSq4KWN4KSv4KS+4KSV4KWH4KSc4KS54KSw4KWCIOCkruCkvuCkpOCljeCksCDgpIbgpKfgpL4g4KSV4KSo4KWN4KSr4KS/4KSX4KSwIOCkl+CksOCkv+Ckj+CkleCkviDgpJvgpKjgpY0g4KWkICAiCisi4KSV4KSo4KWN4KSr4KS/4KSX4KSw4KWH4KS44KSoIFxuIgorImRwa2cgLS1jb25maWd1cmUgPHBhY2thZ2U+IOCkquCljeCksOCkr+Cli+CklyDgpJfgpLDgpY3gpKbgpYgg4KS14KS+ICfgpJrgpK/gpKgg4KS54KSf4KS+4KSJ4KSo4KWB4KS54KWL4KS4JyDgpK7gpYfgpKjgpYEg4KS14KS/4KSV4KSy4KWN4KSq4KSV4KWLIOCkquCljeCksOCkr+Cli+CklyDgpJfgpLDgpY3gpKbgpYggIgorIuCkquClguCkqCDgpKrgpY3gpLDgpL7gpKrgpY3gpKTgpL8g4KSX4KSw4KWN4KSo4KWBIOCkquCksOCljeCkpuCkmzpcbiIKKworIzogc3JjL2VucXVpcnkuYzo5NAorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBvbmx5IGhhbGYgaW5zdGFsbGVkLCBkdWUgdG8gcHJvYmxlbXMgZHVyaW5nXG4iCisiaW5zdGFsbGF0aW9uLiAgVGhlIGluc3RhbGxhdGlvbiBjYW4gcHJvYmFibHkgYmUgY29tcGxldGVkIGJ5IHJldHJ5aW5nIGl0O1xuIgorInRoZSBwYWNrYWdlcyBjYW4gYmUgcmVtb3ZlZCB1c2luZyBkc2VsZWN0IG9yIGRwa2cgLS1yZW1vdmU6XG4iCittc2dzdHIgIiIKKyLgpLjgpY3gpKXgpL7gpKrgpKjgpL4g4KSX4KSw4KWN4KSm4KS+4KSV4KWLIOCkuOCkruCkuOCljeCkr+CkvuCkleCliyDgpJXgpL7gpLDgpKPgpLLgpYcg4KSX4KSw4KWN4KSm4KS+XG4iCisi4KSo4KS/4KSu4KWN4KSoIOCkquCljeCkr+CkvuCkleClh+CknOCkueCksOClgiDgpK7gpL7gpKTgpY3gpLAg4KSG4KSn4KS+IOCkuOCljeCkpeCkvuCkquCkqOCkviDgpK3gpI/gpJXgpYsg4KSbIOClpCAg4KS44KSu4KWN4KSt4KS14KSkIOCkuOCliyDgpLjgpY3gpKXgpL7gpKrgpKjgpL4g4KSk4KWN4KSv4KWLIOCkquClguCkqCDgpKrgpY3gpLDgpL7gpKrgpY3gpKTgpL/gpKbgpY3gpKfgpL7gpLDgpL4gIgorIuCkquClgeCksOCkviDgpJfgpLDgpY3gpKgg4KS44KSV4KS/4KSo4KWN4KSbO1xuIgorIuCkquCljeCkr+CkvuCkleClh+CknOCkueCksOClgiBkc2VsZWN0IOCkteCkviBkcGtnIC0t4KS54KSf4KS+4KSJ4KSo4KWB4KS54KWL4KS44KWNIOCkquCljeCksOCkr+Cli+CklyDgpJfgpLDgpYfgpLAg4KS54KSf4KS+4KSJ4KSoIOCkuOCkleCkv+CkqOCljeCkmzpcbiIKKworIzogc3JjL2VucXVpcnkuYzoxMDEKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgYXdhaXRpbmcgcHJvY2Vzc2luZyBvZiB0cmlnZ2VycyB0aGF0IHRoZXlcbiIKKyJoYXZlIGFjdGl2YXRlZCBpbiBvdGhlciBwYWNrYWdlcy4gIFRoaXMgcHJvY2Vzc2luZyBjYW4gYmUgcmVxdWVzdGVkIHVzaW5nXG4iCisiZHNlbGVjdCBvciBkcGtnIC0tY29uZmlndXJlIC0tcGVuZGluZyAob3IgZHBrZyAtLXRyaWdnZXJzLW9ubHkpOlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTA4Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgaGF2ZSBiZWVuIHRyaWdnZXJlZCwgYnV0IHRoZSB0cmlnZ2VyIHByb2Nlc3NpbmdcbiIKKyJoYXMgbm90IHlldCBiZWVuIGRvbmUuICBUcmlnZ2VyIHByb2Nlc3NpbmcgY2FuIGJlIHJlcXVlc3RlZCB1c2luZ1xuIgorImRzZWxlY3Qgb3IgZHBrZyAtLWNvbmZpZ3VyZSAtLXBlbmRpbmcgKG9yIGRwa2cgLS10cmlnZ2Vycy1vbmx5KTpcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZW5xdWlyeS5jOjEzNyBzcmMvZW5xdWlyeS5jOjIxMSBzcmMvZW5xdWlyeS5jOjI5MiBzcmMvZW5xdWlyeS5jOjM3MworIzogc3JjL2VucXVpcnkuYzo0NjAgc3JjL3NlbGVjdC5jOjk4IHNyYy9zZWxlY3QuYzoxNjQgc3JjL3RyaWdjbWQuYzoxOTkKKyM6IHNyYy91cGRhdGUuYzo0OCBzcmMvdXBkYXRlLmM6MTEzIGRwa2ctc3BsaXQvcXVldWUuYzoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyB0YWtlcyBubyBhcmd1bWVudHMiCittc2dzdHIgIi0tJXMg4KSy4KWHIOCkleClgeCkqOCliCDgpKTgpLDgpY3gpJXgpLngpLDgpYIg4KSy4KS/4KSm4KWI4KSoIgorCisjOiBzcmMvZW5xdWlyeS5jOjE1MgorbXNnaWQgIiIKKyJBbm90aGVyIHByb2Nlc3MgaGFzIGxvY2tlZCB0aGUgZGF0YWJhc2UgZm9yIHdyaXRpbmcsIGFuZCBtaWdodCBjdXJyZW50bHkgYmVcbiIKKyJtb2RpZnlpbmcgaXQsIHNvbWUgb2YgdGhlIGZvbGxvd2luZyBwcm9ibGVtcyBtaWdodCBqdXN0IGJlIGR1ZSB0byB0aGF0LlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTkxCisjLCBmdXp6eQorI3wgbXNnaWQgIjx1bmtub3duPiIKK21zZ2N0eHQgInNlY3Rpb24iCittc2dpZCAiPHVua25vd24+IgorbXNnc3RyICI8dW5rbm93bj4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MjUxCisjLCBjLWZvcm1hdAorbXNnaWQgIiAlZCBpbiAlczogIgorbXNnc3RyICIgJWQg4KSu4KS+ICVzOiAiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MjY2CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIgJWQgcGFja2FnZXMsIGZyb20gdGhlIGZvbGxvd2luZyBzZWN0aW9uczoiCittc2dpZCAiICVkIHBhY2thZ2UsIGZyb20gdGhlIGZvbGxvd2luZyBzZWN0aW9uOiIKK21zZ2lkX3BsdXJhbCAiICVkIHBhY2thZ2VzLCBmcm9tIHRoZSBmb2xsb3dpbmcgc2VjdGlvbnM6IgorbXNnc3RyWzBdICIgJWQg4KSq4KWN4KSv4KS+4KSV4KWH4KSc4KS54KSw4KWCLCDgpKjgpL/gpK7gpY3gpKgg4KS44KWH4KSV4KWN4KS44KSo4KSs4KS+4KSfOiIKK21zZ3N0clsxXSAiICVkIOCkquCljeCkr+CkvuCkleClh+CknOCkueCksOClgiwg4KSo4KS/4KSu4KWN4KSoIOCkuOClh+CkleCljeCkuOCkqOCkrOCkvuCknzoiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzA1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiVmVyc2lvbiBvZiBkcGtnIHdpdGggd29ya2luZyAlcyBzdXBwb3J0IG5vdCB5ZXQgY29uZmlndXJlZC5cbiIKKyIgUGxlYXNlIHVzZSAnZHBrZyAtLWNvbmZpZ3VyZSBkcGtnJywgYW5kIHRoZW4gdHJ5IGFnYWluLlxuIgorbXNnc3RyICIiCisiZHBrZyDgpJXgpYsg4KS44KSC4KS44KWN4KSV4KSw4KSjIOCkuOCkgeCklyDgpJXgpL7gpLDgpY3gpK/gpJfgpKQg4KSH4KSq4KWL4KSVIOCkheCkueCkv+CksuClhyDgpLjgpK7gpY3gpK4g4KSV4KSo4KWN4KSr4KS/4KSX4KSwIOCkl+CksOCkv+Ckj+CkleCliyDgpJvgpYjgpKgg4KWkXG4iCisiIOCkleClg+CkquCkr+CkvmBkcGtnIC0t4KSV4KSo4KWN4KSr4KS/4KSX4KSwIGRwa2cnLCDgpLAg4KSk4KWN4KSv4KS44KSq4KSb4KS/IOCkq+Clh+CksOClgCDgpKrgpY3gpLDgpK/gpL7gpLgg4KSX4KSw4KWN4KSo4KWB4KS54KWL4KS44KWNIOClpFxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjMxMAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZHBrZyBub3QgcmVjb3JkZWQgYXMgaW5zdGFsbGVkLCBjYW5ub3QgY2hlY2sgZm9yICVzIHN1cHBvcnQhXG4iCittc2dzdHIgIiIKKyJkcGtnIOCksuCkvuCkiCDgpLjgpY3gpKXgpL7gpKrgpKjgpL4g4KSX4KSw4KS/4KSP4KSV4KWLIOCksOClgeCkquCkruCkviDgpLDgpYfgpJXgpKEg4KSX4KSw4KS/4KSP4KSV4KWLIOCkm+CliOCkqCwg4KSH4KSq4KWL4KSVIOCkuOCkruCksOCljeCkpeCkqOCkleCkviDgpLLgpL7gpJfgpL8g4KSc4KS+4KSB4KSaIOCkl+CksOCljeCkqCDgpLjgpJXgpY3gpKbgpYjgpKggIVxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjMyMQorbXNnaWQgIlByZS1EZXBlbmRzIGZpZWxkIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzI5Cittc2dpZCAiZXBvY2giCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzozMzcKK21zZ2lkICJsb25nIGZpbGVuYW1lcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZW5xdWlyeS5jOjM0NgorbXNnaWQgIm11bHRpcGxlIENvbmZsaWN0cyBhbmQgUmVwbGFjZXMiCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzo0MzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IGNhbm5vdCBzZWUgaG93IHRvIHNhdGlzZnkgcHJlLWRlcGVuZGVuY3k6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKyJkcGtnOiDgpJXgpLjgpLDgpL8g4KSq4KWC4KSw4KWN4KS1LeCkqOCkv+CksOCljeCkreCksOCkpOCkviDgpLjgpKjgpY3gpKTgpYHgpLfgpY3gpJ8g4KSX4KSw4KWH4KSV4KWLIOCkueClh+CksOCljeCkqCDgpLjgpJXgpL/gpKbgpYjgpKggOlxuIgorIiAlc1xuIgorCisjOiBzcmMvZW5xdWlyeS5jOjQzNQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc2F0aXNmeSBwcmUtZGVwZW5kZW5jaWVzIGZvciAlLjI1MHMgKHdhbnRlZCBkdWUgdG8gJS4yNTBzKSIKK21zZ3N0ciAiICUuMjUwcyAoICUuMjUwc+CkleCkvuCksOCko+CksuClhyDgpJrgpL7gpLngpL/gpK/gpYspIOCkleCkviDgpLLgpL7gpJfgpL8g4KSq4KWC4KSw4KWN4KS1LeCkqOCkv+CksOCljeCkreCksOCkpOCkviDgpLjgpKjgpY3gpKTgpYHgpLfgpY3gpJ8g4KSX4KSw4KWN4KSoIOCkuOCkleCkv+CkpuCliOCkqCIKKworIzogc3JjL2VucXVpcnkuYzo0NzIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIm9ic29sZXRlIG9wdGlvbiAnLS0lcycsIHBsZWFzZSB1c2UgJy0tJXMnIGluc3RlYWQuIgorbXNnc3RyICLgpJrgpYfgpKTgpL7gpLXgpKjgpYA6IOCkheCkquCljeCksOCkmuCksuCkv+CkpCDgpLXgpL/gpJXgpLLgpY3gpKogYC0tJXMnXG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6NTE5Cittc2dpZCAiIgorIi0tY29tcGFyZS12ZXJzaW9ucyB0YWtlcyB0aHJlZSBhcmd1bWVudHM6IDx2ZXJzaW9uPiA8cmVsYXRpb24+IDx2ZXJzaW9uPiIKK21zZ3N0ciAiLS1jb21wYXJlLeCkuOCkguCkuOCljeCkleCksOCko+CksuClhyDgpKTgpL/gpKjgpLXgpJ/gpL4g4KSk4KSw4KWN4KSV4KS54KSw4KWCIOCksuCkv+CkqOCljeCkmzogPHZlcnNpb24+IDxyZWxhdGlvbj4gPHZlcnNpb24+IgorCisjOiBzcmMvZW5xdWlyeS5jOjUyNAorbXNnaWQgIi0tY29tcGFyZS12ZXJzaW9ucyBiYWQgcmVsYXRpb24iCittc2dzdHIgIi0tY29tcGFyZS3gpLjgpILgpLjgpY3gpJXgpLDgpKPgpLngpLDgpYIg4KSW4KSw4KS+4KSsIOCkuOCkruCljeCkrOCkqOCljeCkpyIKKworIzogc3JjL2VucXVpcnkuYzo1Mjkgc3JjL2VucXVpcnkuYzo1MzEgc3JjL2VucXVpcnkuYzo1NDAgc3JjL2VucXVpcnkuYzo1NDIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInZlcnNpb24gJyVzJyBoYXMgYmFkIHN5bnRheDogJXMiCittc2dzdHIgImRwa2c6IOCkuOCkguCkuOCljeCkleCksOCkoyAnJXMnIOCkuOCkgeCklyDgpJbgpLDgpL7gpKwg4KS14KS+4KSV4KWN4KSvIOCkuOCkguCksOCkmuCkqOCkviDgpJs6ICVzXG4iCisKKyM6IHNyYy9lcnJvcnMuYzo2MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IGVycm9yIHByb2Nlc3NpbmcgJXMgKC0tJXMpOlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisiJXM6IOCkquCljeCksOCkleCljeCksOCkv+Ckr+CkviDgpJfgpLDgpY3gpKbgpL4g4KSk4KWN4KSw4KWB4KSf4KS/ICVzICgtLSVzKTpcbiIKKyIgJXNcbiIKKworIzogc3JjL2Vycm9ycy5jOjY4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiZHBrZzogZmFpbGVkIHRvIGFsbG9jYXRlIG1lbW9yeSBmb3IgbmV3IGVudHJ5IGluIGxpc3Qgb2YgZmFpbGVkIHBhY2thZ2VzLiIKK21zZ2lkICIiCisiJXM6IGZhaWxlZCB0byBhbGxvY2F0ZSBtZW1vcnkgZm9yIG5ldyBlbnRyeSBpbiBsaXN0IG9mIGZhaWxlZCBwYWNrYWdlczogJXMiCittc2dzdHIgIiIKKyJkcGtnOiDgpIXgpLjgpKvgpLIg4KSq4KWN4KSv4KS+4KSV4KWH4KSc4KS54KSw4KWB4KSV4KWLIOCkuOClguCkmuClgOCkruCkviDgpKjgpK/gpL7gpIEg4KSq4KWN4KSw4KS14KS/4KS34KWN4KSf4KS/4KSV4KS+IOCksuCkvuCkl+CkvyDgpLjgpY3gpK7gpYPgpKTgpL8g4KSs4KS+4KSB4KSh4KSr4KS+4KShIOCkl+CksOCljeCkqCDgpIXgpLjgpKvgpLIg4KSt4KSv4KWLIOClpCIKKworIzogc3JjL2Vycm9ycy5jOjc5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJkcGtnOiB0b28gbWFueSBlcnJvcnMsIHN0b3BwaW5nXG4iCittc2dpZCAiJXM6IHRvbyBtYW55IGVycm9ycywgc3RvcHBpbmdcbiIKK21zZ3N0ciAiZHBrZzog4KSF4KSk4KS/IOCkp+Clh+CksOCliCDgpKTgpY3gpLDgpYHgpJ/gpL/gpLngpLDgpYIsIOCksOCli+CkleCljeCkpuCliOCkm1xuIgorCisjOiBzcmMvZXJyb3JzLmM6ODcKK21zZ2lkICJFcnJvcnMgd2VyZSBlbmNvdW50ZXJlZCB3aGlsZSBwcm9jZXNzaW5nOlxuIgorbXNnc3RyICLgpKrgpY3gpLDgpJXgpY3gpLDgpL/gpK/gpL4g4KSX4KSw4KS/4KSV4KWLIOCkrOClh+CksuCkvuCkruCkviDgpKTgpY3gpLDgpYHgpJ/gpL/gpLngpLDgpYIg4KS44KSB4KSXIOCkuOCkvuCkruCkqOCkviDgpJfgpLDgpY3gpK/gpYs6XG4iCisKKyM6IHNyYy9lcnJvcnMuYzo5NAorbXNnaWQgIlByb2Nlc3Npbmcgd2FzIGhhbHRlZCBiZWNhdXNlIHRoZXJlIHdlcmUgdG9vIG1hbnkgZXJyb3JzLlxuIgorbXNnc3RyICLgpIXgpKTgpL8g4KSn4KWH4KSw4KWIIOCkpOCljeCksOClgeCkn+Ckv+CkueCksOClgiDgpK3gpI/gpJXgpL7gpLLgpYcg4KSq4KWN4KSw4KSV4KWN4KSw4KS/4KSv4KS+IOCksOCli+CkleCkv+Ckr+CliyDgpaRcbiIKKworIzogc3JjL2Vycm9ycy5jOjEwNQorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlICVzIHdhcyBvbiBob2xkLCBwcm9jZXNzaW5nIGl0IGFueXdheSBhcyB5b3UgcmVxdWVzdGVkXG4iCittc2dzdHIgIiIKKyLgpKrgpY3gpK/gpL7gpJXgpYfgpJwgJXMg4KSq4KSw4KWN4KSW4KS+4KSH4KSu4KS+IOCkpeCkv+Ckr+Cliywg4KSc4KWHIOCkreCkjyDgpKrgpKjgpL8g4KSk4KSq4KS+4KSI4KSB4KSV4KWLIOCkheCkqOClgeCksOCli+Ckp+CkleCliyDgpLDgpYHgpKrgpK7gpL4g4KSv4KS44KSy4KS+4KSIIOCkquCljeCksOCkleCljeCksOCkv+Ckr+CkviDgpJfgpLDgpY3gpKbgpYjgpJtcbiIKKworIzogc3JjL2Vycm9ycy5jOjEwOQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiUGFja2FnZSAlcyBpcyBvbiBob2xkLCBub3QgdG91Y2hpbmcgaXQuICBVc2UgLS1mb3JjZS1ob2xkIHRvIG92ZXJyaWRlLlxuIgorbXNnc3RyICLgpKrgpY3gpK/gpL7gpJXgpYfgpJwgJXMg4KSq4KSw4KWN4KSW4KS+4KSH4KSu4KS+IOCkmywg4KSv4KS44KSy4KS+4KSIIOCkqOCkm+Cli+Ckh+CkleCkqCDgpaQgIOCkheCkp+Ckv+CksuClh+CkluCkqCDgpJfgpLDgpY3gpKggVXNlIC0tZm9yY2UtaG9sZCBcbiIKKworIzogc3JjL2Vycm9ycy5jOjExOQorIywgZnV6enkKK21zZ2lkICJvdmVycmlkaW5nIHByb2JsZW0gYmVjYXVzZSAtLWZvcmNlIGVuYWJsZWQ6IgorbXNnc3RyICIiCisiZHBrZyAtIOCkmuClh+CkpOCkvuCkteCkqOClgCwg4KSF4KSn4KS/4KSy4KWH4KSW4KSoIOCkl+CksOCljeCkpuCkviDgpKTgpY3gpLDgpYHgpJ/gpL8g4KSV4KS/4KSo4KSt4KSo4KWHLS1mb3JjZSDgpLjgpJXgpY3gpLfgpK46XG4iCisiICIKKworIzogc3JjL2ZpbGVzZGIuYzozMDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlIGAlLjI1MHMnIgorbXNnc3RyICLgpKrgpY3gpK/gpL7gpJXgpYfgpJwgYCUuMjUwcycg4KSV4KS+IOCksuCkvuCkl+CkvyDgpKvgpL7gpIfgpLLgpJXgpYsg4KS44KWC4KSa4KWAIOCkq+CkvuCkh+CksiDgpJbgpYvgpLLgpY3gpKgg4KSF4KSV4KWN4KS34KSuIgorCisjOiBzcmMvZmlsZXNkYi5jOjMxMQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorImZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSBgJS4yNTBzJyBtaXNzaW5nLCBhc3N1bWluZyBwYWNrYWdlIGhhcyBubyBmaWxlcyAiCisiY3VycmVudGx5IGluc3RhbGxlZC4iCittc2dzdHIgIiIKKyJkcGtnOiDgpJfgpK7gpY3gpK3gpL/gpLAg4KSa4KWH4KSk4KS+4KS14KSo4KWAOiDgpKrgpY3gpK/gpL7gpJXgpYfgpJxgJS4yNTBzJ+CkleCkviDgpLLgpJfgpL8g4KSr4KS+4KSH4KSy4KSV4KWLIOCkuOClguCkmuClgCDgpKvgpL7gpIfgpLIg4KS54KSw4KS+4KSH4KSw4KS54KWH4KSV4KWLIOCkmywg4KSu4KS+4KSo4KS/4KSP4KSV4KWLICIKKyLgpKrgpY3gpK/gpL7gpJXgpYfgpJwg4KS44KSB4KSXIOCkueCkvuCksuCkruCkviDgpLjgpY3gpKXgpL7gpKrgpL/gpKQg4KSr4KS+4KSH4KSy4KS54KSw4KWCIOCkm+CliOCkqCDgpaRcbiIKKworIzogc3JjL2ZpbGVzZGIuYzozMjIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAnJS4yNTBzJyIKK21zZ3N0ciAi4KSq4KWN4KSv4KS+4KSV4KWH4KScIGAlLjI1MHMnIOCkleCkviDgpLLgpL7gpJfgpL8g4KSr4KS+4KSH4KSy4KSV4KWLIOCkuOClguCkmuClgCDgpKvgpL7gpIfgpLIg4KSW4KWL4KSy4KWN4KSoIOCkheCkleCljeCkt+CkriIKKworIzogc3JjL2ZpbGVzZGIuYzozMzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGVzIGxpc3QgZm9yIHBhY2thZ2UgYCUuMjUwcyciCittc2dpZCAicmVhZGluZyBmaWxlcyBsaXN0IGZvciBwYWNrYWdlICclLjI1MHMnIgorbXNnc3RyICLgpKrgpY3gpK/gpL7gpJXgpYfgpJwgYCUuMjUwcycg4KSV4KS+IOCksuCkvuCkl+CkvyDgpKvgpL7gpIfgpLLgpJXgpYsg4KS44KWC4KSa4KWAIgorCisjOiBzcmMvZmlsZXNkYi5jOjMzNgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICclLjI1MHMnIGlzIG1pc3NpbmcgZmluYWwgbmV3bGluZSIKK21zZ3N0ciAi4KSw4KS/4KSk4KWN4KSk4KWLIOCkq+CkvuCkh+CksuCkqOCkvuCkriDgpLjgpK7gpL7gpLngpL/gpKQg4KSX4KSw4KWN4KSo4KWHIOCkquCljeCkr+CkvuCkleClh+CknCBgJS4yNTBzJyDgpJXgpL4g4KSy4KS+4KSX4KS/IOCkq+CkvuCkh+CksuCkleCliyDgpLjgpYLgpJrgpYAg4KSr4KS+4KSH4KSyIgorCisjOiBzcmMvZmlsZXNkYi5jOjM0NAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcycgY29udGFpbnMgZW1wdHkgZmlsZW5hbWUiCittc2dzdHIgIuCksOCkv+CkpOCljeCkpOCliyDgpKvgpL7gpIfgpLLgpKjgpL7gpK4g4KS44KSu4KS+4KS54KS/4KSkIOCkl+CksOCljeCkqOClhyDgpKrgpY3gpK/gpL7gpJXgpYfgpJwgYCUuMjUwcycg4KSV4KS+IOCksuCkvuCkl+CkvyDgpKvgpL7gpIfgpLLgpJXgpYsg4KS44KWC4KSa4KWAIOCkq+CkvuCkh+CksiIKKworIzogc3JjL2ZpbGVzZGIuYzozNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcyciCittc2dzdHIgIuCkquCljeCkr+CkvuCkleClh+CknCBgJS4yNTBzJyDgpJXgpL4g4KSy4KS+4KSX4KS/IOCkq+CkvuCkh+CksuCkleCliyDgpLjgpYLgpJrgpYAg4KSr4KS+4KSH4KSyIOCkrOCkqOCljeCkpiDgpJfgpLDgpY3gpKbgpL4g4KSk4KWN4KSw4KWB4KSf4KS/IgorCisjOiBzcmMvZmlsZXNkYi5jOjQ2MgorbXNnaWQgIihSZWFkaW5nIGRhdGFiYXNlIC4uLiAiCittc2dzdHIgIijgpKHgpYfgpJ/gpL7gpLXgpYfgpLYg4KSq4KSi4KWN4KSm4KWIIC4uLiAiCisKKyM6IHNyYy9maWxlc2RiLmM6NDgzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIlZCBmaWxlcyBhbmQgZGlyZWN0b3JpZXMgY3VycmVudGx5IGluc3RhbGxlZC4pXG4iCittc2dpZCAiJWQgZmlsZSBvciBkaXJlY3RvcnkgY3VycmVudGx5IGluc3RhbGxlZC4pXG4iCittc2dpZF9wbHVyYWwgIiVkIGZpbGVzIGFuZCBkaXJlY3RvcmllcyBjdXJyZW50bHkgaW5zdGFsbGVkLilcbiIKK21zZ3N0clswXSAiJWQg4KSr4KS+4KSH4KSy4KS54KSw4KWCIOCksCDgpKHgpL7gpIfgpLDgpYfgpJXgpY3gpJ/gpLDgpYDgpLngpLDgpYIg4KS54KS+4KSy4KWI4KSu4KS+IOCkuOCljeCkpeCkvuCkquCkqOCkviDgpK3gpK/gpYsg4KWkKVxuIgorbXNnc3RyWzFdICIlZCDgpKvgpL7gpIfgpLLgpLngpLDgpYIg4KSwIOCkoeCkvuCkh+CksOClh+CkleCljeCkn+CksOClgOCkueCksOClgiDgpLngpL7gpLLgpYjgpK7gpL4g4KS44KWN4KSl4KS+4KSq4KSo4KS+IOCkreCkr+CliyDgpaQpXG4iCisKKyM6IHNyYy9maWxlc2RiLmM6NTE2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIuCkquCljeCkr+CkvuCkleClh+CknCAlcyDgpJXgpL4g4KSy4KS+4KSX4KS/IOCkheCkpuCljeCkr+CkvuCkteCkp+Ckv+CklSDgpKvgpL7gpIfgpLLgpJXgpYsg4KS44KWC4KSa4KWAIOCkq+CkvuCkh+CksiDgpLjgpL/gpLDgpY3gpJzgpKjgpL4g4KSX4KSw4KWN4KSoIOCkheCkleCljeCkt+CkriIKKworIzogc3JjL2ZpbGVzZGIuYzo1MjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIHRvIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICLgpKrgpY3gpK/gpL7gpJXgpYfgpJwgJXMg4KSV4KS+IOCksuCkvuCkl+CkvyDgpIXgpKbgpY3gpK/gpL7gpLXgpKfgpL/gpJUg4KSr4KS+4KSH4KSy4KSV4KWLIOCkuOClguCkmuClgCDgpKvgpL7gpIfgpLLgpK7gpL4g4KSy4KWH4KSW4KWN4KSoIOCkheCkuOCkq+CksiIKKworIzogc3JjL2ZpbGVzZGIuYzo1MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZsdXNoIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICLgpKrgpY3gpK/gpL7gpJXgpYfgpJwgJXMg4KSV4KS+IOCksuCkvuCkl+CkvyDgpIXgpKbgpY3gpK/gpL7gpLXgpKfgpL/gpJUg4KSr4KS+4KSH4KSy4KSV4KWLIOCkuOClguCkmuClgCDgpKvgpL7gpIfgpLIg4KSr4KWN4KSy4KS4IOCkl+CksOCljeCkqCDgpIXgpLjgpKvgpLIiCisKKyM6IHNyYy9maWxlc2RiLmM6NTMwCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBzeW5jIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICLgpKrgpY3gpK/gpL7gpJXgpYfgpJwgJXMg4KSV4KS+IOCksuCkvuCkl+CkvyDgpIXgpKbgpY3gpK/gpL7gpLXgpKfgpL/gpJUg4KS44KWC4KSa4KWAIOCkq+CkvuCkh+CksiDgpLjgpK7gpJXgpY3gpLDgpK7gpKMg4KSX4KSw4KWN4KSoIOCkheCkuOCkq+CksiIKKworIzogc3JjL2ZpbGVzZGIuYzo1MzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNsb3NlIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICLgpKrgpY3gpK/gpL7gpJXgpYfgpJwgJXMg4KSV4KS+IOCksuCkvuCkl+CkvyDgpIXgpKbgpY3gpK/gpL7gpLXgpKfgpL/gpJUg4KSr4KS+4KSH4KSy4KSV4KWLIOCkuOClguCkmuClgCDgpKvgpL7gpIfgpLIg4KSs4KSo4KWN4KSmIOCkl+CksOCljeCkqCDgpIXgpLjgpKvgpLIiCisKKyM6IHNyYy9maWxlc2RiLmM6NTM1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBpbnN0YWxsIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICLgpKrgpY3gpK/gpL7gpJXgpYfgpJwgJXMg4KSV4KS+IOCksuCkvuCkl+CkvyDgpIXgpKbgpY3gpK/gpL7gpLXgpKfgpL/gpJUg4KSr4KS+4KSH4KSy4KSV4KWLIOCkuOClguCkmuClgCDgpKvgpL7gpIfgpLIg4KS44KWN4KSl4KS+4KSq4KSo4KS+IOCkl+CksOCljeCkqCDgpIXgpLjgpKvgpLIiCisKKyM6IHNyYy9oZWxwLmM6NDgKK21zZ2lkICJub3QgaW5zdGFsbGVkIgorbXNnc3RyICLgpLjgpY3gpKXgpL7gpKrgpKjgpL4g4KSo4KSX4KSw4KS/4KSP4KSV4KWLIgorCisjOiBzcmMvaGVscC5jOjQ5Cittc2dpZCAibm90IGluc3RhbGxlZCBidXQgY29uZmlncyByZW1haW4iCittc2dzdHIgIuCkuOCljeCkpeCkvuCkquCkqOCkviDgpKjgpJfgpLDgpL/gpI/gpJXgpYsg4KSk4KSwIOCkleCkqOCljeCkq+Ckv+Ckl+CksOClh+CkuOCkqCDgpKzgpL/gpJXgpYAg4KSbIgorCisjOiBzcmMvaGVscC5jOjUwCisjLCBmdXp6eQorbXNnaWQgImJyb2tlbiBkdWUgdG8gZmFpbGVkIHJlbW92YWwgb3IgaW5zdGFsbGF0aW9uIgorbXNnc3RyICLgpIXgpLjgpKvgpLIg4KS54KSf4KS+4KSJ4KSo4KWH4KSV4KWLIOCkleCkvuCksOCko+CksuClhyDgpKzgpL/gpJfgpY3gpLDgpL/gpK/gpYsiCisKKyM6IHNyYy9oZWxwLmM6NTEKK21zZ2lkICJ1bnBhY2tlZCBidXQgbm90IGNvbmZpZ3VyZWQiCittc2dzdHIgIuCkluCli+CksuCkv+Ckj+CkleCliyDgpKTgpLAg4KSV4KSo4KWN4KSr4KS/4KSX4KSwIOCkqOCkl+CksOCkv+Ckj+CkleCliyIKKworIzogc3JjL2hlbHAuYzo1MgorbXNnaWQgImJyb2tlbiBkdWUgdG8gcG9zdGluc3QgZmFpbHVyZSIKK21zZ3N0ciAicG9zdGluc3Qg4KSV4KWLIOCkheCkuOCkq+CksuCkpOCkvuCkleCliyDgpJXgpL7gpLDgpKPgpLLgpYcg4KSs4KS/4KSX4KWN4KSw4KS/4KSv4KWLIgorCisjOiBzcmMvaGVscC5jOjUzCittc2dpZCAiYXdhaXRpbmcgdHJpZ2dlciBwcm9jZXNzaW5nIGJ5IGFub3RoZXIgcGFja2FnZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvaGVscC5jOjU0Cittc2dpZCAidHJpZ2dlcmVkIgorbXNnc3RyICIiCisKKyM6IHNyYy9oZWxwLmM6NTUKK21zZ2lkICJpbnN0YWxsZWQiCittc2dzdHIgIuCkuOCljeCkpeCkvuCkquCkv+CkpCIKKworIzogc3JjL2hlbHAuYzoxMDcKKyMsIGZ1enp5Cittc2dpZCAiUEFUSCBpcyBub3Qgc2V0LiIKK21zZ3N0ciAiZHBrZyAtIOCkpOCljeCksOClgeCkn+CkvzogUEFUSCDgpLjgpYfgpJ8g4KSX4KSw4KWH4KSV4KWLIOCkm+CliOCkqCDgpaRcbiIKKworIzogc3JjL2hlbHAuYzoxMjkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiclcycgbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuIgorbXNnc3RyICJkcGtnOiBgJXMnIOCksuCkvuCkiCBQQVRIIOCkq+Clh+CksuCkviDgpKrgpL7gpLDgpL/gpI/gpKgg4KWkXG4iCisKKyM6IHNyYy9oZWxwLmM6MTM4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiJWQgZXhwZWN0ZWQgcHJvZ3JhbSBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS5cbiIKKyIlcyIKK21zZ2lkX3BsdXJhbCAiIgorIiVkIGV4cGVjdGVkIHByb2dyYW1zIG5vdCBmb3VuZCBpbiBQQVRIIG9yIG5vdCBleGVjdXRhYmxlLlxuIgorIiVzIgorbXNnc3RyWzBdICJkcGtnOiBgJXMnIOCksuCkvuCkiCBQQVRIIOCkq+Clh+CksuCkviDgpKrgpL7gpLDgpL/gpI/gpKgg4KWkXG4iCittc2dzdHJbMV0gImRwa2c6IGAlcycg4KSy4KS+4KSIIFBBVEgg4KSr4KWH4KSy4KS+IOCkquCkvuCksOCkv+Ckj+CkqCDgpaRcbiIKKworIzogc3JjL2hlbHAuYzoxNDEKKyMsIGZ1enp5Cittc2dpZCAiIgorIk5vdGU6IHJvb3QncyBQQVRIIHNob3VsZCB1c3VhbGx5IGNvbnRhaW4gL3Vzci9sb2NhbC9zYmluLCAvdXNyL3NiaW4gYW5kIC8iCisic2Jpbi4iCittc2dzdHIgIiIKKyIlZCDgpIbgpLbgpL7gpKTgpL/gpKQg4KSV4KS+4KSw4KWN4KSv4KSV4KWN4KSw4KSuKOCkueCksOClgikgUEFUSCDgpK7gpL4g4KSr4KWH4KSy4KS+IOCkquCksOClh+CkqCDgpaRcbiIKKyJOQjog4KSu4KWC4KSy4KSV4KWLIFBBVEgg4KSy4KWHIOCkheCkleCljeCkuOCksCAvdXNyL2xvY2FsL3NiaW4sIC91c3Ivc2JpbiBhbmQgL3NiaW4g4KS44KSu4KS+4KS14KWH4KS2IOCkl+CksOCljeCkpuCkmyDgpaQiCisKKyM6IHNyYy9oZWxwLmM6MTg4Cittc2dpZCAiYWRtaW5kaXIgbXVzdCBiZSBpbnNpZGUgaW5zdGRpciBmb3IgZHBrZyB0byB3b3JrIHByb3Blcmx5IgorbXNnc3RyICIiCisKKyM6IHNyYy9oZWxwLmM6MTkwIHNyYy9tYWluLmM6NzQ3CisjLCBmdXp6eQorbXNnaWQgInVuYWJsZSB0byBzZXRlbnYgZm9yIHN1YnByb2Nlc3NlcyIKK21zZ3N0ciAidnNucHJpbnRmIOCkruCkviDgpLjgpYHgpLDgpYIg4KSX4KSw4KWN4KSoIOCkheCkleCljeCkt+CkriIKKworIzogc3JjL2hlbHAuYzoxOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNocm9vdCB0byBgJS4yNTBzJyIKK21zZ3N0ciAiYCUuMjUwcycg4KSy4KS+4KSIIGNocm9vdCDgpJfgpLDgpY3gpKgg4KSF4KS44KSr4KSyIgorCisjOiBzcmMvaGVscC5jOjE5NCBkcGtnLWRlYi9idWlsZC5jOjQ1NSBkcGtnLWRlYi9idWlsZC5jOjQ1NworIzogZHBrZy1kZWIvYnVpbGQuYzo1MzYgZHBrZy1kZWIvYnVpbGQuYzo1NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIGAlLjI1NXMnIgorbXNnc3RyICJgJS4yNTVzJyDgpK7gpL4g4KSh4KS+4KSH4KSw4KWH4KSV4KWN4KSf4KSw4KWAIOCkquCksOCkv+CkteCksOCljeCkpOCkqCDgpJfgpLDgpY3gpKgg4KSF4KSV4KWN4KS34KSuIgorCisjOiBzcmMvaGVscC5jOjI1NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IGV4ZWN1dGUgcGVybWlzc2lvbnMgb24gYCUuMjUwcyciCittc2dzdHIgImAlLjI1MHMnIOCkruCkviDgpJXgpL7gpLDgpY3gpK/gpKjgpY3gpLXgpK/gpKgg4KSF4KSo4KWB4KSu4KSk4KS/4KS54KSw4KWCIOCkuOClh+CknyDgpJfgpLDgpY3gpKgg4KSF4KSV4KWN4KS34KSuIgorCisjOiBzcmMvaGVscC5jOjI3NgorIywgZnV6enkKK21zZ2lkICJ1bmFibGUgdG8gc2V0ZW52IGZvciBtYWludGFpbmVyIHNjcmlwdCIKK21zZ3N0ciAidnNucHJpbnRmIOCkruCkviDgpLjgpYHgpLDgpYIg4KSX4KSw4KWN4KSoIOCkheCkleCljeCkt+CkriIKKworIzogc3JjL2hlbHAuYzozMDAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImluc3RhbGxlZCAlcyBzY3JpcHQiCittc2dzdHIgIuCkquClgeCksOCkvuCkqOCliyAlcyDgpLjgpY3gpJXgpY3gpLDgpL/gpKrgpY3gpJ8iCisKKyM6IHNyYy9oZWxwLmM6MzEzIHNyYy9oZWxwLmM6MzgyIHNyYy9oZWxwLmM6NDQxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0ICVzIGAlLjI1MHMnIgorbXNnc3RyICIgJXMgYCUuMjUwcycg4KSy4KS+4KSIIHN0YXQg4KSX4KSw4KWN4KSoIOCkheCkleCljeCkt+CkriIKKworIzogc3JjL2hlbHAuYzozNjggc3JjL2hlbHAuYzo0MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAibmV3ICVzIHNjcmlwdCIKK21zZ3N0ciAi4KSo4KSv4KS+4KSBICVzIOCkuOCljeCkleCljeCksOCkv+CkquCljeCknyIKKworIzogc3JjL2hlbHAuYzo0MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAib2xkICVzIHNjcmlwdCIKK21zZ3N0ciAi4KSq4KWB4KSw4KS+4KSo4KWLICVzIOCkuOCljeCkleCljeCksOCkv+CkquCljeCknyIKKworIzogc3JjL2hlbHAuYzo0MTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0ICVzICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiICVzIGAlLjI1MHMnIOCksuCkvuCkiCBzdGF0IOCkl+CksOCljeCkqCDgpIXgpJXgpY3gpLfgpK4iCisKKyM6IHNyYy9oZWxwLmM6NDI1CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2cgLSB0cnlpbmcgc2NyaXB0IGZyb20gdGhlIG5ldyBwYWNrYWdlIGluc3RlYWQgLi4uXG4iCittc2dzdHIgImRwa2cgLSDgpLjgpL7gpJ/gpY3gpJ/gpYvgpK7gpL4g4KSo4KSv4KS+4KSBIOCkquCljeCkr+CkvuCkleClh+CknOCkrOCkvuCknyDgpJ/gpL7gpIfgpKrgpL/gpJngpY3gpJcg4KS44KWN4KSV4KWN4KSw4KS/4KSq4KWN4KSfIC4uLlxuIgorCisjOiBzcmMvaGVscC5jOjQzOQorbXNnaWQgInRoZXJlIGlzIG5vIHNjcmlwdCBpbiB0aGUgbmV3IHZlcnNpb24gb2YgdGhlIHBhY2thZ2UgLSBnaXZpbmcgdXAiCittc2dzdHIgIuCkpOCljeCkr+CkueCkvuCkgSDgpKrgpY3gpK/gpL7gpJXgpYfgpJzgpJXgpYsg4KSo4KSv4KS+4KSBIOCkuOCkguCkuOCljeCkleCksOCko+CkruCkviDgpLjgpY3gpJXgpY3gpLDgpL/gpKrgpY3gpJ8g4KSb4KWI4KSoIC0g4KSb4KWL4KSh4KWN4KSm4KWIIgorCisjOiBzcmMvaGVscC5jOjQ0NQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiAuLi4gaXQgbG9va3MgbGlrZSB0aGF0IHdlbnQgT0suXG4iCittc2dzdHIgImRwa2c6IC4uLiDgpK/gpYsg4KSX4KSP4KSV4KWLIE9LIOCknOCkuOCljeCkpOCliyDgpKbgpYfgpJbgpL/gpKjgpY3gpJsg4KWkXG4iCisKKyM6IHNyYy9oZWxwLmM6NjE2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2VjdXJlbHkgcmVtb3ZlICclLjI1NXMnIgorbXNnc3RyICJgJS4yNTVzJyDgpLjgpL/gpLDgpY3gpJzgpKjgpL4g4KSX4KSw4KWN4KSoIOCkheCkleCljeCkt+CkriIKKworIzogc3JjL2hlbHAuYzo2MjEgZHBrZy1kZWIvaW5mby5jOjY1IGRwa2ctZGViL2luZm8uYzo2NworbXNnaWQgInJtIGNvbW1hbmQgZm9yIGNsZWFudXAiCittc2dzdHIgIiIKKworIzogc3JjL2luZm9kYi5jOjUyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGVjayBleGlzdGVuY2Ugb2YgYCUuMjUwcyciCittc2dzdHIgImAlLjI1MHMn4KSV4KWLIOCkheCkteCkuOCljeCkpeCkv+CkpOCkvyDgpJzgpL7gpIHgpJog4KSX4KSw4KWN4KSoIOCkheCkleCljeCkt+CkriIKKworIzogc3JjL2luZm9kYi5jOjcwCittc2dpZCAiY2Fubm90IHJlYWQgaW5mbyBkaXJlY3RvcnkiCittc2dzdHIgIuCkuOClguCkmuCkqOCkviDgpKHgpL7gpIfgpLDgpYfgpJXgpY3gpJ/gpLDgpYAg4KSq4KSi4KWN4KSoIOCkuOCkleCljeCkpuCliOCkqCIKKworIzogc3JjL21haW4uYzo2MAorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIG1hbmFnZW1lbnQgcHJvZ3JhbSB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICLgpKHgpYfgpLXgpL/gpK/gpKggYCVzJyDgpKrgpY3gpK/gpL7gpJXgpYfgpJwg4KSs4KWN4KSv4KS14KS44KWN4KSl4KS+4KSq4KSoIOCkleCkvuCksOCljeCkr+CkleCljeCksOCkriDgpLjgpILgpLjgpY3gpJXgpLDgpKMgJXMgLlxuIgorCisjOiBzcmMvbWFpbi5jOjg1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtaXwtLWluc3RhbGwgICAgICAgPC5kZWIgZmlsZSBuYW1lPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyZWN0b3J5PiAuLi5cbiIKKyIgIC0tdW5wYWNrICAgICAgICAgICA8LmRlYiBmaWxlIG5hbWU+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXJlY3Rvcnk+IC4uLlxuIgorIiAgLUF8LS1yZWNvcmQtYXZhaWwgIDwuZGViIGZpbGUgbmFtZT4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRpcmVjdG9yeT4gLi4uXG4iCisiICAtLWNvbmZpZ3VyZSAgICAgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLS10cmlnZ2Vycy1vbmx5ICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC1yfC0tcmVtb3ZlICAgICAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtUHwtLXB1cmdlICAgICAgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLS1nZXQtc2VsZWN0aW9ucyBbPHBhdHRlcm4+IC4uLl0gR2V0IGxpc3Qgb2Ygc2VsZWN0aW9ucyB0byBzdGRvdXQuXG4iCisiICAtLXNldC1zZWxlY3Rpb25zICAgICAgICAgICAgICAgICBTZXQgcGFja2FnZSBzZWxlY3Rpb25zIGZyb20gc3RkaW4uXG4iCisiICAtLWNsZWFyLXNlbGVjdGlvbnMgICAgICAgICAgICAgICBEZXNlbGVjdCBldmVyeSBub24tZXNzZW50aWFsIHBhY2thZ2UuXG4iCisiICAtLXVwZGF0ZS1hdmFpbCA8UGFja2FnZXMtZmlsZT4gICBSZXBsYWNlIGF2YWlsYWJsZSBwYWNrYWdlcyBpbmZvLlxuIgorIiAgLS1tZXJnZS1hdmFpbCA8UGFja2FnZXMtZmlsZT4gICAgTWVyZ2Ugd2l0aCBpbmZvIGZyb20gZmlsZS5cbiIKKyIgIC0tY2xlYXItYXZhaWwgICAgICAgICAgICAgICAgICAgIEVyYXNlIGV4aXN0aW5nIGF2YWlsYWJsZSBpbmZvLlxuIgorIiAgLS1mb3JnZXQtb2xkLXVuYXZhaWwgICAgICAgICAgICAgRm9yZ2V0IHVuaW5zdGFsbGVkIHVuYXZhaWxhYmxlIHBrZ3MuXG4iCisiICAtc3wtLXN0YXR1cyA8cGFja2FnZT4gLi4uICAgICAgICBEaXNwbGF5IHBhY2thZ2Ugc3RhdHVzIGRldGFpbHMuXG4iCisiICAtcHwtLXByaW50LWF2YWlsIDxwYWNrYWdlPiAuLi4gICBEaXNwbGF5IGF2YWlsYWJsZSB2ZXJzaW9uIGRldGFpbHMuXG4iCisiICAtTHwtLWxpc3RmaWxlcyA8cGFja2FnZT4gLi4uICAgICBMaXN0IGZpbGVzIGBvd25lZCcgYnkgcGFja2FnZShzKS5cbiIKKyIgIC1sfC0tbGlzdCBbPHBhdHRlcm4+IC4uLl0gICAgICAgIExpc3QgcGFja2FnZXMgY29uY2lzZWx5LlxuIgorIiAgLVN8LS1zZWFyY2ggPHBhdHRlcm4+IC4uLiAgICAgICAgRmluZCBwYWNrYWdlKHMpIG93bmluZyBmaWxlKHMpLlxuIgorIiAgLUN8LS1hdWRpdCAgICAgICAgICAgICAgICAgICAgICAgQ2hlY2sgZm9yIGJyb2tlbiBwYWNrYWdlKHMpLlxuIgorIiAgLS1wcmludC1hcmNoaXRlY3R1cmUgICAgICAgICAgICAgUHJpbnQgZHBrZyBhcmNoaXRlY3R1cmUuXG4iCisiICAtLWNvbXBhcmUtdmVyc2lvbnMgPGE+IDxvcD4gPGI+ICBDb21wYXJlIHZlcnNpb24gbnVtYmVycyAtIHNlZSBiZWxvdy5cbiIKKyIgIC0tZm9yY2UtaGVscCAgICAgICAgICAgICAgICAgICAgIFNob3cgaGVscCBvbiBmb3JjaW5nLlxuIgorIiAgLURofC0tZGVidWc9aGVscCAgICAgICAgICAgICAgICAgU2hvdyBoZWxwIG9uIGRlYnVnZ2luZy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIuCkhuCkpuClh+CktuCkueCksOClgjpcbiIKKyIgIC1pfC0t4KS44KWN4KSl4KS+4KSq4KSo4KS+IOCkl+CksOCljeCkqOClgeCkueCli+CkuOCljSAgICAgICA8LmRlYiBmaWxlIG5hbWU+IC4uLiB8IC1SfC0t4KSq4KWB4KSo4KS+4KSw4KS+4KS14KWD4KSk4KS/4KSVICIKKyI8ZGlyZWN0b3J5PiAuLi5cbiIKKyIgIC0t4KSq4KWN4KSv4KS+4KSVIOCkqOCkl+CksOCljeCkqOClgeCkueCli+CkuOCljSAgICAgICAgICAgPC5kZWIgZmlsZSBuYW1lPiAuLi4gfCAtUnwtLeCkquClgeCkqOCkvuCksOCkvuCkteClg+CkpOCkv+CklSAiCisiPGRpcmVjdG9yeT4gLi4uXG4iCisiICAtQXwtLeCkieCkquCksuCkrOCljeCkpy3gpLDgpYfgpJXgpLDgpY3gpKEgIDwuZGViIGZpbGUgbmFtZT4gLi4uIHwgLVJ8LS3gpKrgpYHgpKjgpL7gpLDgpL7gpLXgpYPgpKTgpL/gpJUgPGRpcmVjdG9yeT4gLi4uXG4iCisiICAtLeCkleCkqOCkq+Ckv+Ckl+CksCDgpJfgpLDgpY3gpKjgpYHgpLngpYvgpLjgpY0gICAgICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLeCkpeCkvuCkpOClgFxuIgorIiAgLXJ8LS3gpLngpJ/gpL7gpIngpKjgpYHgpLngpYvgpLjgpY0gICAgICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLeCkpeCkvuCkpOClgFxuIgorIiAgLVB8LS3gpKjgpL/gpLDgpY3gpK7gpLIg4KSX4KSw4KWN4KSo4KWB4KS54KWL4KS44KWNICAgICAgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0t4KSl4KS+4KSk4KWAXG4iCisiICAtLeCkquCljeCksOCkvuCkquCljeCkpCDgpJfgpLDgpY3gpKjgpYHgpLngpYvgpLjgpY0t4KSa4KSv4KSo4KS54KSw4KWCIFs8cGF0dGVybj4gLi4uXSAgc3Rkb3V0IOCkruCkviDgpJrgpK/gpKjgpLngpLDgpYHgpJXgpYsg4KS44KWC4KSa4KS/IOCkquCljeCksOCkvuCkquCljeCkpCDgpJfgpLDgpY3gpKjgpYHgpLngpYvgpLjgpY0gIgorIuClpFxuIgorIiAgLS3gpJrgpK/gpKjgpLngpLDgpYIt4KS44KWH4KSfIOCkl+CksOCljeCkqOClgeCkueCli+CkuOCljSAgICAgICAgICAgICAgICAgIHN0ZGluIOCkrOCkvuCknyDgpKrgpY3gpK/gpL7gpJXgpYfgpJwg4KSa4KSv4KSo4KS54KSw4KWCIOCkuOClh+CknyDgpJfgpLDgpY3gpKjgpYHgpLngpYvgpLjgpY0g4KWkXG4iCisiICAtLeCkmuCkr+CkqOCkueCksOClgi3gpLjgpY3gpKrgpLfgpY3gpJ8g4KSX4KSw4KWN4KSo4KWB4KS54KWL4KS44KWNICAgICAgICAgICAgICAg4KSq4KWN4KSw4KSk4KWN4KSv4KWH4KSVIOCkheCkqOCkteCkvuCktuCljeCkr+CklSDgpKrgpY3gpK/gpL7gpJXgpYfgpJwg4KSa4KSv4KSoIOCkqOCkl+CksOCljeCkqOClgeCkueCli+CkuOCljSDgpaRcbiIKKyIgIC0t4KSF4KSm4KWN4KSv4KS+4KS14KSn4KS/4KSVIOCkl+CksOCljeCkqOClgeCkueCli+CkuOCljS3gpIngpKrgpLLgpKzgpY3gpKcgPFBhY2thZ2VzLWZpbGU+ICAg4KSJ4KSq4KSy4KSs4KWN4KSnIOCkquCljeCkr+CkvuCkleClh+CknCDgpLjgpYLgpJrgpKjgpL7gpLngpLDgpYIg4KSs4KSm4KSy4KWN4KSo4KWB4KS54KWL4KS44KWNIOClpFxuIgorIiAgLS3gpK7gpL/gpLLgpL7gpIngpKjgpYHgpLngpYvgpLjgpY0t4KSJ4KSq4KSy4KSs4KWN4KSnIDxQYWNrYWdlcy1maWxlPiAgICDgpKvgpL7gpIfgpLLgpKzgpL7gpJ8g4KS44KWC4KSa4KSo4KS+IOCkuOCkgeCkl+CliCDgpK7gpL/gpLLgpL7gpIngpKjgpYHgpLngpYvgpLjgpY0g4KWkXG4iCisiICAtLeCkieCkquCksuCkrOCljeCkpy3gpLjgpY3gpKrgpLfgpY3gpJ8g4KSX4KSw4KWN4KSo4KWB4KS54KWL4KS44KWNICAgICAgICAgICAgICAgICAgICDgpIXgpLXgpLjgpY3gpKXgpL/gpKQg4KSJ4KSq4KSy4KSs4KWN4KSnIOCkuOClguCkmuCkqOCkviDgpK7gpYfgpJ/gpY3gpKjgpYHgpLngpYvgpLjgpY0g4KWkXG4iCisiICAtLeCkieCkquCksuCkrOCljeCkpyDgpKjgpK3gpI/gpJXgpYst4KSq4KWB4KSw4KS+4KSo4KWLLeCkrOCkv+CksOCljeCkuOCkqOClgeCkueCli+CkuOCljSAgICAgICAgICAgICDgpLjgpY3gpKXgpL7gpKrgpKjgpL4g4KSo4KSt4KSP4KSV4KWLIOCkieCkquCksuCkrOCljeCkpyDgpLXgpL/gpLngpL/gpKggcGtncyAiCisi4KSs4KS/4KSw4KWN4KS44KSo4KWB4KS54KWL4KS44KWNIOClpFxuIgorIiAgLXN8LS3gpLXgpLjgpY3gpKTgpYHgpLjgpY3gpKXgpL/gpKTgpL8gPHBhY2thZ2U+IC4uLiAgICAgICAg4KSq4KWN4KSv4KS+4KSV4KWH4KScIOCkteCkuOCljeCkpOClgeCkuOCljeCkpeCkv+CkpOCkvyDgpLXgpL/gpLXgpLDgpKPgpLngpLDgpYIg4KSq4KWN4KSw4KSm4KSw4KWN4KS24KSoIOCkl+CksOCljeCkqOClgeCkueCli+CkuOCljSDgpaRcbiIKKyIgIC1wfC0t4KSu4KWB4KSm4KWN4KSw4KSjIOCkl+CksOCljeCkqOClgeCkueCli+CkuOCljS3gpIngpKrgpLLgpKzgpY3gpKcgPHBhY2thZ2U+IC4uLiAgIOCkieCkquCksuCkrOCljeCkpyDgpLjgpILgpLjgpY3gpJXgpLDgpKMg4KS14KS/4KS14KSw4KSj4KS54KSw4KWCIOCkquCljeCksOCkpuCksOCljeCktuCkqOCljeCktuCkqCAiCisi4KSX4KSw4KWN4KSo4KWB4KS54KWL4KS44KWNIFxuIgorIiAgLUx8LS3gpLjgpYLgpJrgpL8g4KSr4KS+4KSH4KSy4KS54KSw4KWCIDxwYWNrYWdlPiAuLi4gICAgICDgpKrgpY3gpK/gpL7gpJXgpYfgpJzgpLngpLDgpYHgpLLgpYcg4KSq4KWN4KSw4KS+4KSq4KWN4KSkIOCkl+CksOClh+CkleCliyDgpLjgpYLgpJrgpL8g4KSr4KS+4KSH4KSy4KS54KSw4KWCIOClpFxuIgorIiAgLWx8LS1saXN0IFs8cGF0dGVybj4gLi4uXSAgICAgICAg4KSq4KWN4KSv4KS+4KSV4KWH4KSc4KS54KSw4KWCIOCkuOCkguCkleCljeCkt+Clh+CkquCkruCkviDgpLjgpYLgpJrgpL8g4KSX4KSw4KWN4KSo4KWB4KS54KWL4KS44KWNIOClpFxuIgorIiAgLVN8LS3gpJbgpYvgpJzgpYAg4KSX4KSw4KWN4KSo4KWB4KS54KWL4KS44KWNIDxwYXR0ZXJuPiAuLi4gICAgICAgIOCkq+CkvuCkh+CksiDgpKrgpY3gpLDgpL7gpKrgpY3gpKQg4KSX4KSw4KWN4KSm4KS+IOCkquCljeCkr+CkvuCkleClh+CknCAo4KS54KSw4KWCKSDgpKvgpYfgpLLgpL4gIgorIuCkquCkvuCksOCljeCkqOClgeCkueCli+CkuOCljUZpbmQgcGFja2FnZShzKSBvd25pbmcgZmlsZShzKS5cbiIKKyIgIC1DfC0t4KSy4KWH4KSW4KS+4KSq4KSw4KWA4KSV4KWN4KS34KSjICAgICAgICAgICAgICAgICAgICAgICDgpK3gpL7gpIHgpJrgpL/gpI/gpJXgpL4g4KSq4KWN4KSv4KS+4KSV4KWH4KScICjgpLngpLDgpYIpIOCknOCkvuCkgeCkmuCkqOClgeCkueCli+CkuOCljVxuIgorIiAgLS3gpLXgpL7gpLjgpY3gpKTgpYHgpJXgpLLgpL4g4KSu4KWB4KSm4KWN4KSw4KSjIOCkl+CksOCljeCkqOClgeCkueCli+CkuOCljSAgICAgICAgICAgICAgZHBrZyDgpLXgpL7gpLjgpY3gpKTgpYHgpJXgpLLgpL4g4KSu4KWB4KSm4KWN4KSw4KSjIOCkl+CksOCljeCkqOClgeCkueCli+CkuOCljSDgpaRcbiIKKyIg4KSk4KWB4KSy4KSo4KS+IOCkl+CksOCljeCkqOClgeCkueCli+CkuOCljWHgpLjgpILgpLjgpY3gpJXgpLDgpKPgpLngpLDgpYJvbnMgPGE+IDxvcD4gPGI+ICAg4KS44KSC4KS44KWN4KSV4KSw4KSjIOCkuOCkguCkluCljeCkr+CkvuCkueCksOClgiDgpKTgpYHgpLLgpKjgpL4g4KSX4KSw4KWN4KSo4KWB4KS54KWL4KS44KWNIC0g4KSk4KSyIOCkueClh+CksOCljeCkqOClgeCkueCli+CkuOCljVxuIgorIiDgpJzgpYvgpKHgpKbgpL7gpLBy4KSu4KSm4KWN4KSm4KSkZWxwICAgICAgICAgICAgICAgICAgICAg4KSc4KWL4KShIOCkpuCkv+CkqOClgeCkruCkviDgpK7gpKbgpY3gpKbgpKQg4KSm4KWH4KSW4KS+4KSJ4KSo4KWB4KS54KWL4KS44KWNXG4iCisiICAtRGh8LS1kZWJ1Zz1oZWxwICAgICAgICAgICAgICAgICDgpKHgpL/gpKzgpJfgpL/gpJngpK7gpL4g4KSu4KSm4KWN4KSm4KSkIOCkpuClh+CkluCkvuCkieCkqOClgeCkueCli+CkuOCljSDgpaRcbiIKKyJcbiIKKworIzogc3JjL21haW4uYzoxMTMgc3JjL3F1ZXJ5Y21kLmM6NjMxIHNyYy90cmlnY21kLmM6NzcgZHBrZy1kZWIvbWFpbi5jOjg4CisjOiBkcGtnLXNwbGl0L21haW4uYzo3NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIiAgLWh8LS1oZWxwICAgICAgICAgICAgICAgICAgICAgICAgU2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCittc2dzdHIgIiIKKyIgIC1ofC0t4KSu4KSm4KWN4KSm4KSkIOCkl+CksOCljeCkqOClgeCkueCli+CkuOCljSAgICAgICAgICAgICAgICAgICAgICAgIOCkr+CliyDgpK7gpKbgpY3gpKbgpKQg4KS44KSC4KSm4KWH4KS2IOCkpuClh+CkluCkvuCkieCkqOClgeCkueCli+CkuOCljSDgpaRcbiIKKyIgIC0t4KS44KSC4KS44KWN4KSV4KSw4KSjICAgICAgICAgICAgICAgICAgICAgICAg4KS44KSC4KS44KWN4KSV4KSw4KSjIOCkpuClh+CkluCkvuCkieCkqOClgeCkueCli+CkuOCljSDgpaRcbiIKKyIgIC0t4KSF4KSo4KWB4KSu4KSk4KS/IOCkquCkpOCljeCksHwtLeCkheCkqOClgeCkruCkpOCkvyDgpKrgpKTgpY3gpLAgICAgICAgICAgICAg4KSq4KWN4KSw4KSk4KS/4KSy4KS/4KSq4KWAIOCkheCkp+Ckv+CkleCkvuCksOCkleCliyDgpIXgpKjgpYHgpK7gpKTgpL8g4KSq4KSk4KWN4KSwIOCkqOCkv+Ckr+CkriAiCisi4KSm4KWH4KSW4KS+4KSJ4KSo4KWB4KS54KWL4KS44KWNIOClpFxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjExOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVXNlIGRwa2cgLWJ8LS1idWlsZHwtY3wtLWNvbnRlbnRzfC1lfC0tY29udHJvbHwtSXwtLWluZm98LWZ8LS1maWVsZHxcbiIKKyIgLXh8LS1leHRyYWN0fC1YfC0tdmV4dHJhY3R8LS1mc3lzLXRhcmZpbGUgIG9uIGFyY2hpdmVzICh0eXBlICVzIC0taGVscCkuXG4iCisiXG4iCittc2dzdHIgIiIKKyLgpLjgpJngpY3gpJfgpY3gpLDgpLkgKHR5cGUgJXMgLS1oZWxwKSDgpK7gpL5kcGtnIC1ifC0tYnVpbGR8LWN8LS1jb250ZW50c3wtZXwtLWNvbnRyb2x8LUl8LS0iCisiaW5mb3wtZnwtLWZpZWxkfFxuIgorIiAteHwtLWV4dHJhY3R8LVh8LS12ZXh0cmFjdHwtLWZzeXMtdGFyZmlsZSDgpKrgpY3gpLDgpK/gpYvgpJcg4KSX4KSw4KWN4KSo4KWB4KS54KWL4KS44KWNIOClpFxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjEyMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiRm9yIGludGVybmFsIHVzZTogZHBrZyAtLWFzc2VydC1zdXBwb3J0LXByZWRlcGVuZHMgfCAtLXByZWRlcC1wYWNrYWdlIHxcbiIKKyIgIC0tYXNzZXJ0LXdvcmtpbmctZXBvY2ggfCAtLWFzc2VydC1sb25nLWZpbGVuYW1lcyB8IC0tYXNzZXJ0LW11bHRpLWNvbnJlcC5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIuCkhuCkqOCljeCkpOCksOClgOCklSDgpKrgpY3gpLDgpK/gpYvgpJfgpJXgpYsg4KSy4KS+4KSX4KS/OmRwa2cgLS1hc3NlcnQtc3VwcG9ydC1wcmVkZXBlbmRzIHwgLS1wcmVkZXAtcGFja2FnZSB8XG4iCisiICAtLWFzc2VydC13b3JraW5nLWVwb2NoIHwgLS1hc3NlcnQtbG9uZy1maWxlbmFtZXMgfCAtLWFzc2VydC1tdWx0aS1jb25yZXAuXG4iCisKKyM6IHNyYy9tYWluLmM6MTI4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT4gICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorIiAgLS1yb290PTxkaXJlY3Rvcnk+ICAgICAgICAgSW5zdGFsbCBvbiBhIGRpZmZlcmVudCByb290IGRpcmVjdG9yeS5cbiIKKyIgIC0taW5zdGRpcj08ZGlyZWN0b3J5PiAgICAgIENoYW5nZSBpbnN0YWxsYXRpb24gZGlyIHdpdGhvdXQgY2hhbmdpbmcgYWRtaW4gIgorImRpci5cbiIKKyIgIC0tcGF0aC1leGNsdWRlPTxwYXR0ZXJuPiAgIERvIG5vdCBpbnN0YWxsIHBhdGhzIHdoaWNoIG1hdGNoIGEgc2hlbGwgIgorInBhdHRlcm4uXG4iCisiICAtLXBhdGgtaW5jbHVkZT08cGF0dGVybj4gICBSZS1pbmNsdWRlIGEgcGF0dGVybiBhZnRlciBhIHByZXZpb3VzICIKKyJleGNsdXNpb24uXG4iCisiICAtT3wtLXNlbGVjdGVkLW9ubHkgICAgICAgICBTa2lwIHBhY2thZ2VzIG5vdCBzZWxlY3RlZCBmb3IgaW5zdGFsbC8iCisidXBncmFkZS5cbiIKKyIgIC1FfC0tc2tpcC1zYW1lLXZlcnNpb24gICAgIFNraXAgcGFja2FnZXMgd2hvc2Ugc2FtZSB2ZXJzaW9uIGlzIGluc3RhbGxlZC5cbiIKKyIgIC1HfC0tcmVmdXNlLWRvd25ncmFkZSAgICAgIFNraXAgcGFja2FnZXMgd2l0aCBlYXJsaWVyIHZlcnNpb24gdGhhbiAiCisiaW5zdGFsbGVkLlxuIgorIiAgLUJ8LS1hdXRvLWRlY29uZmlndXJlICAgICAgSW5zdGFsbCBldmVuIGlmIGl0IHdvdWxkIGJyZWFrIHNvbWUgb3RoZXIgIgorInBhY2thZ2UuXG4iCisiICAtLVtuby1ddHJpZ2dlcnMgICAgICAgICAgICBTa2lwIG9yIGZvcmNlIGNvbnNlcXVlbnRpYWwgdHJpZ2dlciAiCisicHJvY2Vzc2luZy5cbiIKKyIgIC0tbm8tZGVic2lnICAgICAgICAgICAgICAgIERvIG5vdCB0cnkgdG8gdmVyaWZ5IHBhY2thZ2Ugc2lnbmF0dXJlcy5cbiIKKyIgIC0tbm8tYWN0fC0tZHJ5LXJ1bnwtLXNpbXVsYXRlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBKdXN0IHNheSB3aGF0IHdlIHdvdWxkIGRvIC0gZG9uJ3QgZG8gaXQuXG4iCisiICAtRHwtLWRlYnVnPTxvY3RhbD4gICAgICAgICBFbmFibGUgZGVidWdnaW5nIChzZWUgLURoZWxwIG9yIC0tZGVidWc9aGVscCkuXG4iCisiICAtLXN0YXR1cy1mZCA8bj4gICAgICAgICAgICBTZW5kIHN0YXR1cyBjaGFuZ2UgdXBkYXRlcyB0byBmaWxlIGRlc2NyaXB0b3IgIgorIjxuPi5cbiIKKyIgIC0tbG9nPTxmaWxlbmFtZT4gICAgICAgICAgIExvZyBzdGF0dXMgY2hhbmdlcyBhbmQgYWN0aW9ucyB0byA8ZmlsZW5hbWU+LlxuIgorIiAgLS1pZ25vcmUtZGVwZW5kcz08cGFja2FnZT4sLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZ25vcmUgZGVwZW5kZW5jaWVzIGludm9sdmluZyA8cGFja2FnZT4uXG4iCisiICAtLWZvcmNlLS4uLiAgICAgICAgICAgICAgICBPdmVycmlkZSBwcm9ibGVtcyAoc2VlIC0tZm9yY2UtaGVscCkuXG4iCisiICAtLW5vLWZvcmNlLS4uLnwtLXJlZnVzZS0uLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3Agd2hlbiBwcm9ibGVtcyBlbmNvdW50ZXJlZC5cbiIKKyIgIC0tYWJvcnQtYWZ0ZXIgPG4+ICAgICAgICAgIEFib3J0IGFmdGVyIGVuY291bnRlcmluZyA8bj4gZXJyb3JzLlxuIgorIlxuIgorbXNnc3RyICIiCisi4KS14KS/4KSV4KSy4KWN4KSq4KS54KSw4KWCOlxuIgorIiAgLS1hZG1pbmRpcj08ZGlyZWN0b3J5PiAgICAgICVzIOCkleCliyDgpLjgpJ/gpY3gpJ/gpL7gpK7gpL4gPGRpcmVjdG9yeT4g4KSq4KWN4KSw4KSv4KWL4KSXIOCkl+CksOCljeCkqOClgeCkueCli+CkuOCljSDgpaRcbiIKKyIgIC0tcm9vdD08ZGlyZWN0b3J5PiAgICAgICAgIOCkteCkv+CkreCkv+CkqOCljeCkqCDgpK7gpYLgpLIg4KSh4KS+4KSH4KSw4KWH4KSV4KWN4KSf4KWN4KSw4KWA4KSu4KS+IOCkuOCljeCkpeCkvuCkquCkqOCkviDgpJfgpLDgpY3gpKjgpYHgpLngpYvgpLjgpY0g4KWkXG4iCisiICAtLWluc3RkaXI9PGRpcmVjdG9yeT4gICAgICAgYWRtaW4gZGlyIOCkquCksOCkv+CkteCksOCljeCkpOCkqCDgpKjgpJfgpLDgpYAg4KS44KWN4KSl4KS+4KSq4KSo4KS+IGRpciDgpKrgpLDgpL/gpLXgpLDgpY3gpKTgpKggIgorIuCkl+CksOCljeCkqOClgeCkueCli+CkuOCljSDgpaRcbiIKKyIgIC1PfC0t4KSu4KS+4KSk4KWN4KSwLeCkmuCkr+CkqCDgpK3gpK/gpYsgICAgICAgICAg4KS44KWN4KSl4KS+4KSq4KSo4KS+L+CkuOCljeCkpOCksOCkteClg+CkpuCljeCkp+CkvyDgpJfgpLDgpKjgpJXgpYsg4KSy4KS+4KSX4KS/IOCkq+CkoeCljeCkleCkv+Ckj+CkleCliyDgpKrgpY3gpK/gpL7gpJXgpYfgpJzgpLngpLDgpYIg4KSa4KSv4KSoICIKKyLgpK3gpI/gpKgg4KWkXG4iCisiICAtRXwtLeCkieCkueClgC3gpLjgpILgpLjgpY3gpJXgpLDgpKMt4KSr4KSh4KWN4KSV4KS+4KSJ4KSo4KWB4KS54KWL4KS44KWNICAgICDgpKvgpKHgpY3gpJXgpL/gpI/gpJXgpYsg4KSq4KWN4KSv4KS+4KSV4KWH4KSc4KS54KSw4KWB4KSV4KWLIOCkieCkueClgCDgpLjgpILgpLjgpY3gpJXgpLDgpKMg4KS44KWN4KSl4KS+4KSq4KSo4KS+IOCkreCkr+CliyDgpaRcbiIKKyIgIC1HfC0t4KS44KWN4KSk4KSw4KSV4KSuIOCkl+CksOCljeCkqC3gpIXgpLjgpY3gpLXgpYDgpJXgpL7gpLAg4KSX4KSw4KWN4KSo4KWB4KS54KWL4KS44KWNICAgICAg4KSr4KSh4KWN4KSV4KS/4KSP4KSV4KWLIOCkquCljeCkr+CkvuCkleClh+CknOCkueCksOClgiDgpLjgpIHgpJfgpYgg4KSq4KS54KS/4KSy4KWH4KSV4KWLIOCkuOCkguCkuOCljeCkleCksOCkoyDgpLjgpY3gpKXgpL7gpKrgpKjgpL4gIgorIuCkreCkr+CliyDgpaRcbiIKKyIgIC1CfC0t4KS44KWN4KS14KSkLeCkleCkqOCkq+Ckv+Ckl+CksCDgpKjgpJfgpLDgpY3gpKjgpYHgpLngpYvgpLjgpY0gICAgICDgpK/gpKbgpL8g4KSv4KS44KSy4KWHIOCkheCkqOCljeCkryDgpKrgpY3gpK/gpL7gpJXgpYfgpJzgpLLgpL7gpIgg4KS14KS/4KSa4KWN4KSb4KWH4KSm4KSoIOCkl+CksOCljeCkmyDgpK3gpKjgpYcg4KSq4KSo4KS/IOCkuOCljeCkpeCkvuCkquCkqOCkviAiCisi4KSX4KSw4KWN4KSo4KWB4KS54KWL4KS44KWNIOClpFxuIgorIiAgLS1kZWJzaWct4KS54KWL4KSH4KSoICAgICAgICAgICAgICAgICDgpKrgpY3gpK/gpL7gpJXgpYfgpJwg4KS54KS44KWN4KSk4KS+4KSV4KWN4KS34KSw4KS54KSw4KWCIOCksOClguCknOClgiDgpJfgpLDgpY3gpKjgpYcg4KSq4KWN4KSw4KSv4KS+4KS4IOCkqOCkl+CksOCljeCkqOClgeCkueCli+CkuOCljSDgpaRcbiIKKyIgIC0tbm8tYWN0fC0tZHJ5LXJ1bnwtLXNpbXVsYXRlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg4KS54KS+4KSu4KWA4KSy4KWHIOCkl+CksOClh+CkleCliyDgpK3gpKjgpY3gpKjgpYHgpLngpYvgpLjgpY0g4KSu4KS+4KSk4KWN4KSwIC0g4KSo4KSX4KSw4KWN4KSo4KWB4KS54KWL4KS44KWNIOClpFxuIgorIiAgLUR8LS1kZWJ1Zz08b2N0YWw+ICAgICAgICAg4KSh4KS/4KSs4KSXIOCkheCkleCljeCkt+CkriDgpJfgpLDgpL/gpKbgpYjgpJsgKC1EaGVscCDgpLXgpL4gLS1kZWJ1Zz1oZWxwKSDgpLngpYfgpLDgpY3gpKjgpYHgpLngpYvgpLjgpY0gIgorIuClpFxuIgorIiAgLS1zdGF0dXMtZmQgPG4+ICAgICAgICAgICAgIOCkq+CkvuCkh+CksiDgpLXgpLDgpY3gpKPgpKjgpJXgpLDgpY3gpKTgpL7gpK7gpL4g4KS14KS44KWN4KSk4KWBIOCkuOCljeCkpeCkv+CkpOCkvyDgpKrgpLDgpL/gpLXgpLDgpY3gpKTgpKgg4KSF4KSm4KWN4KSv4KS+4KS14KSn4KS/4KSV4KS54KSw4KWCICIKKyLgpKrgpKDgpL7gpIngpKjgpYHgpLngpYvgpLjgpY0gPG4+LlxuIgorIiAgLS1sb2c9PGZpbGVuYW1lPiAgICAgICAgICAg4KSy4KSXIOCkteCkuOCljeCkpOClgeCkuOCljeCkpeCkv+CkpOCkv+CksuClhyA8ZmlsZW5hbWU+IOCkruCkviDgpKrgpLDgpL/gpLXgpLDgpY3gpKTgpKgg4KSwIOCkleCkvuCksOCljeCkryDgpJfgpLDgpY3gpKbgpJsgIgorIuClpFxuIgorIiAgLS1pZ25vcmUtZGVwZW5kcz08cGFja2FnZT4sLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhY2thZ2U+ICDgpLjgpK7gpY3gpK7gpL/gpLLgpL/gpKQg4KSX4KSw4KWHIOCkqOCkv+CksOCljeCkreCksOCkpOCkvuCkueCksOClgiDgpIngpKrgpYfgpJXgpY3gpLfgpL4g4KSX4KSw4KWN4KSo4KWB4KS54KWL4KS44KWNICAiCisi4KWkXG4iCisiICAt4KSc4KWL4KShIOCkl+CksOCljeCkqOClgeCkueCli+CkuOCljWUtLi4uICAgICAgICAgICAgICAg4KS44KSu4KS44KWN4KSv4KS+4KS54KSw4KWCIOCkheCkp+Ckv+CksuClh+CkluCkqCDgpJfgpLDgpY3gpKjgpYHgpLngpYvgpLjgpY1zICAtLWZvcmNlLWhlbCDgpLngpYfgpLDgpY3gpKjgpYHgpLngpYvgpLjgpY1wICIKKyLgpaQuXG4iCisiICAtLW5vLWZvcmNlLS4uLnwtLXJlZnVzZS0uLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAg4KS44KSu4KS44KWN4KSv4KS+4KS54KSw4KWCIOCkhuCkieCkqCDgpKXgpL7gpLLgpYfgpKrgpJvgpL8g4KSw4KWL4KSV4KWN4KSo4KWB4KS54KWL4KS44KWNIOClpC5cbiIKKyIgIC0tYWJvcnQtYWZ0ZXIgPG4+ICAgICAgICAgZyA8bj7gpKTgpY3gpLDgpYHgpJ/gpL/gpLngpLDgpYIg4KSG4KSP4KSq4KSb4KS/IOCkquCksOCkv+CkpOCljeCkr+CkvuCklyDgpJfgpLDgpY3gpKjgpYHgpLngpYvgpLjgpY0g4KWkLlxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjE1NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tcGFyaXNvbiBvcGVyYXRvcnMgZm9yIC0tY29tcGFyZS12ZXJzaW9ucyBhcmU6XG4iCisiICBsdCBsZSBlcSBuZSBnZSBndCAgICAgICAodHJlYXQgZW1wdHkgdmVyc2lvbiBhcyBlYXJsaWVyIHRoYW4gYW55ICIKKyJ2ZXJzaW9uKTtcbiIKKyIgIGx0LW5sIGxlLW5sIGdlLW5sIGd0LW5sICh0cmVhdCBlbXB0eSB2ZXJzaW9uIGFzIGxhdGVyIHRoYW4gYW55IHZlcnNpb24pO1xuIgorIiAgPCA8PCA8PSA9ID49ID4+ID4gICAgICAgKG9ubHkgZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBjb250cm9sIGZpbGUgIgorInN5bnRheCkuXG4iCisiXG4iCittc2dzdHIgIiIKKyLgpKTgpYHgpLLgpY3gpKjgpL7gpKTgpY3gpK7gpJUt4KS44KSC4KS44KWN4KSV4KSw4KSj4KS54KSw4KWB4KSV4KWLIOCksuCkvuCkl+CkvyAtLSDgpKTgpYHgpLLgpY3gpKjgpL7gpKTgpY3gpK7gpJUg4KS44KSe4KWN4KSa4KS+4KSy4KSV4KS54KSw4KWCOlxuIgorIiAgbHQgbGUgZXEgbmUgZ2UgZ3QgICAgICAgKOCkleClgeCkqOCliCDgpLjgpILgpLjgpY3gpJXgpLDgpKMg4KSt4KSo4KWN4KSm4KS+IOCkluCkvuCksuClgCDgpLjgpILgpLjgpY3gpJXgpLDgpKPgpJXgpYsg4KSw4KWB4KSq4KSu4KS+IOCkquCkueCkv+CksuClh+CkleCliyDgpLjgpILgpLjgpY3gpJXgpLDgpKPgpLLgpL7gpIggIgorIuCkteCljeCkr+CkteCkueCkvuCksCDgpJfgpLDgpY3gpKjgpYHgpLngpYvgpLjgpY0pO1xuIgorIiAgbHQtbmwgbGUtbmwgZ2UtbmwgZ3QtbmwgKOCkleClgeCkqOCliCDgpLjgpILgpLjgpY3gpJXgpLDgpKMg4KSt4KSo4KWN4KSm4KS+IOCkluCkvuCksuClgCDgpLjgpILgpLjgpY3gpJXgpLDgpKPgpJXgpYsg4KSw4KWB4KSq4KSu4KS+IOCkquCkm+Ckv+CkleCliyDgpLjgpILgpLjgpY3gpJXgpLDgpKPgpLLgpL7gpIggIgorIuCkteCljeCkr+CkteCkueCkvuCksCDgpJfgpLDgpY3gpKjgpYHgpLngpYvgpLjgpY0pO1xuIgorIiAgPCA8PCA8PSA9ID49ID4+ID4gICAgICAgKOCkqOCkv+Ckr+CkqOCljeCkpOCljeCksOCkoyDgpKvgpL7gpIfgpLIg4KS44KS/4KSo4KWN4KSf4KWN4KSv4KS+4KSV4KWN4KS4IOCkuOCkgeCklyDgpK7gpL/gpLLgpY3gpKbgpYvgpJXgpYsg4KSy4KS+4KSX4KS/IOCkruCkvuCkpOCljeCksCkg4KWkXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTYxCisjLCBjLWZvcm1hdAorbXNnaWQgIlVzZSBgZHNlbGVjdCcgb3IgYGFwdGl0dWRlJyBmb3IgdXNlci1mcmllbmRseSBwYWNrYWdlIG1hbmFnZW1lbnQuXG4iCittc2dzdHIgIiIKKyLgpKrgpY3gpLDgpK/gpYvgpJfgpJXgpLDgpY3gpKTgpL4t4KSu4KS/4KSk4KWN4KSw4KS14KSkIOCkquCljeCkr+CkvuCkleClh+CknCDgpLXgpY3gpK/gpLXgpLjgpY3gpKXgpL7gpKrgpKjgpJXgpL4g4KSy4KS+4KSX4KS/IGBkc2VsZWN0JyBvciBgYXB0aXR1ZGUnIOCkquCljeCksOCkr+Cli+CklyDgpJfgpLDgpY3gpKjgpYHgpLngpYvgpLjgpY0gIgorIuClpFxuIgorCisjOiBzcmMvbWFpbi5jOjE3MAorIywgZnV6enkKK21zZ2lkICIiCisiVHlwZSBkcGtnIC0taGVscCBmb3IgaGVscCBhYm91dCBpbnN0YWxsaW5nIGFuZCBkZWluc3RhbGxpbmcgcGFja2FnZXMgWypdO1xuIgorIlVzZSBgZHNlbGVjdCcgb3IgYGFwdGl0dWRlJyBmb3IgdXNlci1mcmllbmRseSBwYWNrYWdlIG1hbmFnZW1lbnQ7XG4iCisiVHlwZSBkcGtnIC1EaGVscCBmb3IgYSBsaXN0IG9mIGRwa2cgZGVidWcgZmxhZyB2YWx1ZXM7XG4iCisiVHlwZSBkcGtnIC0tZm9yY2UtaGVscCBmb3IgYSBsaXN0IG9mIGZvcmNpbmcgb3B0aW9ucztcbiIKKyJUeXBlIGRwa2ctZGViIC0taGVscCBmb3IgaGVscCBhYm91dCBtYW5pcHVsYXRpbmcgKi5kZWIgZmlsZXM7XG4iCisiXG4iCisiT3B0aW9ucyBtYXJrZWQgWypdIHByb2R1Y2UgYSBsb3Qgb2Ygb3V0cHV0IC0gcGlwZSBpdCB0aHJvdWdoIGBsZXNzJyBvciAiCisiYG1vcmUnICEiCittc2dzdHIgIiIKKyJkcGtnIOCkn+CkvuCkh+CkqiDgpJfgpLDgpY3gpKjgpYHgpLngpYvgpLjgpY0gLS3gpLjgpY3gpKXgpL7gpKrgpKjgpL4g4KSt4KSP4KSV4KWLIOCksCDgpLjgpY3gpKXgpL7gpKrgpKjgpL4g4KSo4KSt4KSP4KSV4KWLIOCkquCljeCkr+CkvuCkleClh+CknOCkueCksOClgeCkleCli+CkrOCkvuCksOClhyDgpK7gpKbgpY3gpKbgpKTgpJXgpYsg4KSy4KS+4KSX4KS/IOCkruCkpuCljeCkpuCkpCAiCisi4KSX4KSw4KWN4KSo4KWB4KS54KWL4KS44KWNIFsqXTtcbiIKKyLgpKrgpY3gpLDgpK/gpYvgpJfgpJXgpLDgpY3gpKTgpL4t4KS54KS/4KSk4KWI4KS34KWAIOCkquCljeCkr+CkvuCkleClh+CknCDgpLXgpY3gpK/gpLXgpLjgpY3gpKXgpL7gpKrgpKjgpJXgpYsg4KSy4KS+4KSX4KS/IGBkc2VsZWN0JyDgpLXgpL4gYGFwdGl0dWRlJyDgpKrgpY3gpLDgpK/gpYvgpJcgIgorIuCkl+CksOCljeCkqOClgeCkueCli+CkuOCljSA7XG4iCisiIGRwa2cg4KSf4KS+4KSH4KSqIOCkl+CksOCljeCkqOClgeCkueCli+CkuOCljSAtIGRwa2cg4KSh4KS/4KSs4KSXIOCkneCko+CljeCkoeCkviDgpK7gpL7gpKjgpLngpLDgpYHgpJXgpYsg4KS44KWC4KSa4KS/4KSV4KWLIOCksuCkvuCkl+CkvyBEaGVscDtcbiIKKyJkcGtnIOCkn+CkvuCkh+CkqiDgpJfgpLDgpY3gpKjgpYHgpLngpYvgpLjgpY0gLS0g4KSc4KWL4KSh4KSm4KS+4KSwIOCkteCkv+CkleCksuCljeCkquCkueCksOClgeCkleCliyDgpLjgpYLgpJrgpL/gpJXgpYsg4KSy4KS+4KSX4KS/IOCknOCli+CkoeCkpuCkvuCksC3gpK7gpKbgpY3gpKbgpKQ7XG4iCisiZHBrZy1kZWIg4KSf4KS+4KSH4KSqIOCkl+CksOCljeCkqOClgeCkueCli+CkuOCljSAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgbWFuaXB1bGF0aW5nICouZGViIOCkq+CkvuCkh+CksuCkueCksOClgiAiCisi4KSo4KS/4KSw4KWN4KS14KS+4KS54KSj4KSV4KWLIOCkrOCkvuCksOClhyDgpK7gpKbgpY3gpKbgpKQg4KSX4KSw4KWN4KSo4KSV4KWLIOCksuCkvuCkl+CkvyDgpK7gpKbgpY3gpKbgpKQg4KSX4KSw4KWN4KSo4KWB4KS54KWL4KS44KWNO1xuIgorImRwa2cg4KSf4KS+4KSH4KSqIOCkl+CksOCljeCkqOClgeCkueCli+CkuOCljS0t4KSq4KWN4KSw4KSk4KS/4KSy4KS/4KSq4KWAIOCkheCkp+Ckv+CkleCkvuCksCDgpLAg4KS14KS+4KSw4KWH4KSo4KWN4KSf4KWA4KSV4KWLIOCkheCkreCkvuCkteCkleCliyDgpLLgpL7gpJfgpL8g4KSF4KSo4KWB4KSu4KSk4KS/IOCkquCkpOCljeCksCAoR05VIEdQTCkgIgorIlsqXS5cbiIKKyJcbiIKKyLgpJrgpL/gpKjgpY3gpLkg4KSy4KSX4KS+4KSH4KSP4KSV4KS+IOCkteCkv+CkleCksuCljeCkquCkueCksOClgiBbKl0g4KSy4KWHIOCkp+Clh+CksOCliCDgpKjgpL/gpLDgpY3gpJfgpKTgpLngpLDgpYIg4KSJ4KSk4KWN4KSq4KSo4KWN4KSoIOCkl+CksOCljeCkpuCkmyAgLSBgbGVzcycg4KS14KS+IGBtb3JlJyDgpKbgpY3gpLXgpL7gpLDgpL4gIgorIuCkr+CkuOCksuCkvuCkiCDgpKrgpL7gpIfgpKog4KSX4KSw4KWN4KSo4KWB4KS54KWL4KS44KWNICEiCisKKyM6IHNyYy9tYWluLmM6MjE5Cittc2dpZCAiU2V0IGFsbCBmb3JjZSBvcHRpb25zIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjIxCittc2dpZCAiUmVwbGFjZSBhIHBhY2thZ2Ugd2l0aCBhIGxvd2VyIHZlcnNpb24iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjMKK21zZ2lkICJDb25maWd1cmUgYW55IHBhY2thZ2Ugd2hpY2ggbWF5IGhlbHAgdGhpcyBvbmUiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjUKK21zZ2lkICJQcm9jZXNzIGluY2lkZW50YWwgcGFja2FnZXMgZXZlbiB3aGVuIG9uIGhvbGQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjcKK21zZ2lkICJUcnkgdG8gKGRlKWluc3RhbGwgdGhpbmdzIGV2ZW4gd2hlbiBub3Qgcm9vdCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIyOQorbXNnaWQgIlBBVEggaXMgbWlzc2luZyBpbXBvcnRhbnQgcHJvZ3JhbXMsIHByb2JsZW1zIGxpa2VseSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzMQorbXNnaWQgIkluc3RhbGwgYSBwYWNrYWdlIGV2ZW4gaWYgaXQgZmFpbHMgYXV0aGVudGljaXR5IGNoZWNrIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjMzCittc2dpZCAiUHJvY2VzcyBldmVuIHBhY2thZ2VzIHdpdGggd3JvbmcgdmVyc2lvbnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzUKK21zZ2lkICJPdmVyd3JpdGUgYSBmaWxlIGZyb20gb25lIHBhY2thZ2Ugd2l0aCBhbm90aGVyIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjM3Cittc2dpZCAiT3ZlcndyaXRlIGEgZGl2ZXJ0ZWQgZmlsZSB3aXRoIGFuIHVuZGl2ZXJ0ZWQgdmVyc2lvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzOQorbXNnaWQgIk92ZXJ3cml0ZSBvbmUgcGFja2FnZSdzIGRpcmVjdG9yeSB3aXRoIGFub3RoZXIncyBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjQxCittc2dpZCAiRG8gbm90IHBlcmZvcm0gc2FmZSBJL08gb3BlcmF0aW9ucyB3aGVuIHVucGFja2luZyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI0MworbXNnaWQgIkFsd2F5cyB1c2UgdGhlIG5ldyBjb25maWcgZmlsZXMsIGRvbid0IHByb21wdCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI0NQorbXNnaWQgIkFsd2F5cyB1c2UgdGhlIG9sZCBjb25maWcgZmlsZXMsIGRvbid0IHByb21wdCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI0OAorbXNnaWQgIiIKKyJVc2UgdGhlIGRlZmF1bHQgb3B0aW9uIGZvciBuZXcgY29uZmlnIGZpbGVzIGlmIG9uZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICBpcyBhdmFpbGFibGUsIGRvbid0IHByb21wdC4gSWYgbm8gZGVmYXVsdCBjYW4gYmUgIgorImZvdW5kLFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICB5b3Ugd2lsbCBiZSBwcm9tcHRlZCB1bmxlc3Mgb25lIG9mIHRoZSBjb25mb2xkIG9yXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmZuZXcgb3B0aW9ucyBpcyBhbHNvIGdpdmVuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjUzCittc2dpZCAiQWx3YXlzIGluc3RhbGwgbWlzc2luZyBjb25maWcgZmlsZXMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNTUKK21zZ2lkICJPZmZlciB0byByZXBsYWNlIGNvbmZpZyBmaWxlcyB3aXRoIG5vIG5ldyB2ZXJzaW9ucyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI1NworbXNnaWQgIlByb2Nlc3MgZXZlbiBwYWNrYWdlcyB3aXRoIHdyb25nIG9yIG5vIGFyY2hpdGVjdHVyZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI1OQorbXNnaWQgIkluc3RhbGwgZXZlbiBpZiBpdCB3b3VsZCBicmVhayBhbm90aGVyIHBhY2thZ2UiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNjEKK21zZ2lkICJBbGxvdyBpbnN0YWxsYXRpb24gb2YgY29uZmxpY3RpbmcgcGFja2FnZXMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNjMKKyMsIGZ1enp5CisjfCBtc2dpZCAiZGVwZW5kZW5jeSBwcm9ibGVtcyAtIG5vdCByZW1vdmluZyIKK21zZ2lkICJUdXJuIGFsbCBkZXBlbmRlbmN5IHByb2JsZW1zIGludG8gd2FybmluZ3MiCittc2dzdHIgIuCkqOCkv+CksOCljeCkreCksOCkpOCkviDgpLjgpK7gpLjgpY3gpK/gpL7gpLngpLDgpYIgLSDgpLngpJ/gpY3gpKbgpYjgpKgiCisKKyM6IHNyYy9tYWluLmM6MjY1CisjLCBmdXp6eQorI3wgbXNnaWQgImRlcGVuZGVuY3kgcHJvYmxlbXMgLSBub3QgcmVtb3ZpbmciCittc2dpZCAiVHVybiBkZXBlbmRlbmN5IHZlcnNpb24gcHJvYmxlbXMgaW50byB3YXJuaW5ncyIKK21zZ3N0ciAi4KSo4KS/4KSw4KWN4KSt4KSw4KSk4KS+IOCkuOCkruCkuOCljeCkr+CkvuCkueCksOClgiAtIOCkueCkn+CljeCkpuCliOCkqCIKKworIzogc3JjL21haW4uYzoyNjcKK21zZ2lkICJSZW1vdmUgcGFja2FnZXMgd2hpY2ggcmVxdWlyZSBpbnN0YWxsYXRpb24iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNjkKK21zZ2lkICJSZW1vdmUgYW4gZXNzZW50aWFsIHBhY2thZ2UiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODEKK21zZ2lkICJHZW5lcmFsbHkgaGVscGZ1bCBwcm9ncmVzcyBpbmZvcm1hdGlvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4MgorIywgZnV6enkKK21zZ2lkICJJbnZvY2F0aW9uIGFuZCBzdGF0dXMgb2YgbWFpbnRhaW5lciBzY3JpcHRzIgorbXNnc3RyICJ2c25wcmludGYg4KSu4KS+IOCkuOClgeCksOClgiDgpJfgpLDgpY3gpKgg4KSF4KSV4KWN4KS34KSuIgorCisjOiBzcmMvbWFpbi5jOjI4MworbXNnaWQgIk91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4NAorbXNnaWQgIkxvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg1CisjLCBmdXp6eQorI3wgbXNnaWQgInJlYWQgZXJyb3IgaW4gY29uZmlndXJhdGlvbiBmaWxlIGAlLjI1NXMnIgorbXNnaWQgIk91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGUiCittc2dzdHIgIuCkleCkqOCljeCkq+Ckv+Ckl+CksOClh+CkuOCkqGAlLjI1NXMnIOCkq+CkvuCkh+CksuCkruCkviDgpKTgpY3gpLDgpYHgpJ/gpL8g4KSq4KSi4KWN4KSo4KWB4KS54KWL4KS44KWNIgorCisjOiBzcmMvbWFpbi5jOjI4NgorbXNnaWQgIkxvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4NworbXNnaWQgIkRlcGVuZGVuY2llcyBhbmQgY29uZmxpY3RzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg4Cittc2dpZCAiTG90cyBvZiBkZXBlbmRlbmNpZXMvY29uZmxpY3RzIG91dHB1dCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4OQorbXNnaWQgIlRyaWdnZXIgYWN0aXZhdGlvbiBhbmQgcHJvY2Vzc2luZyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MAorbXNnaWQgIkxvdHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2VycyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MQorbXNnaWQgIlNpbGx5IGFtb3VudHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2VycyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MgorbXNnaWQgIkxvdHMgb2YgZHJpdmVsIGFib3V0IGVnIHRoZSBkcGtnL2luZm8gZGlyZWN0b3J5IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjkzCittc2dpZCAiSW5zYW5lIGFtb3VudHMgb2YgZHJpdmVsIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MzA0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlcyBkZWJ1Z2dpbmcgb3B0aW9uLCAtLWRlYnVnPTxvY3RhbD4gb3IgLUQ8b2N0YWw+OlxuIgorIlxuIgorIiBOdW1iZXIgIFJlZi4gaW4gc291cmNlICAgRGVzY3JpcHRpb25cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjMxMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiRGVidWdnaW5nIG9wdGlvbnMgY2FuIGJlIG1peGVkIHVzaW5nIGJpdHdpc2Utb3IuXG4iCisiTm90ZSB0aGF0IHRoZSBtZWFuaW5ncyBhbmQgdmFsdWVzIGFyZSBzdWJqZWN0IHRvIGNoYW5nZS5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjMxOQorbXNnaWQgIi0tZGVidWcgcmVxdWlyZXMgYW4gb2N0YWwgYXJndW1lbnQiCittc2dzdHIgIi0t4KSh4KS/4KSs4KSX4KSy4KS+4KSIIOCkj+CkieCkn+CkviBvY3RhbCDgpKTgpLDgpY3gpJXgpK7gpL4g4KSG4KS14KS24KWN4KSv4KSVIOCkueClgeCkqOCljeCkmyIKKworIzogc3JjL21haW4uYzozNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAibnVsbCBwYWNrYWdlIG5hbWUgaW4gLS1pZ25vcmUtZGVwZW5kcyBjb21tYS1zZXBhcmF0ZWQgbGlzdCBgJS4yNTBzJyIKK21zZ3N0ciAiLS1pZ25vcmUtZGVwZW5kcyBjb21tYS1zZXBhcmF0ZWQgbGlzdCBgJS4yNTBzJyDgpK7gpL4g4KS24KWC4KSo4KWN4KSvIOCkquCljeCkr+CkvuCkleClh+CknCIKKworIzogc3JjL21haW4uYzozNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS1pZ25vcmUtZGVwZW5kcyByZXF1aXJlcyBhIGxlZ2FsIHBhY2thZ2UgbmFtZS4gYCUuMjUwcycgaXMgbm90OyAlcyIKK21zZ3N0ciAiIgorIi0taWdub3JlLWRlcGVuZHMg4KSy4KS+4KSIIOCkleCkvuCkqOClguCkqOClgCDgpKrgpY3gpK/gpL7gpJXgpYfgpJwg4KSo4KS+4KSu4KSV4KWLIOCkhuCkteCktuCljeCkr+CkleCkpOCkviDgpKrgpLDgpY3gpKbgpJsg4KWkIGAlLjI1MHMnIOCkueCli+Ckh+CkqDsgJXMiCisKKyM6IHNyYy9tYWluLmM6MzcxIHNyYy9tYWluLmM6MzgxIHNyYy9tYWluLmM6NjQ5IGRwa2ctc3BsaXQvbWFpbi5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGludGVnZXIgZm9yIC0tJXM6IGAlLjI1MHMnIgorbXNnc3RyICItLSVzIOCkleCkviDgpLLgpL7gpJfgpL8g4KSH4KSo4KWN4KSc4KS/4KSf4KSwIOCkheCkteCliOCkpzogYCUuMjUwcycgICAiCisKKyM6IHNyYy9tYWluLmM6NDM4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGV4ZWN1dGluZyBob29rICclcycsIGV4aXQgY29kZSAlZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjQ2NQorbXNnaWQgInN0YXR1cyBsb2dnZXIiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzo0ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzIGZvcmNpbmcgb3B0aW9ucyAtIGNvbnRyb2wgYmVoYXZpb3VyIHdoZW4gcHJvYmxlbXMgZm91bmQ6XG4iCisiICB3YXJuIGJ1dCBjb250aW51ZTogIC0tZm9yY2UtPHRoaW5nPiw8dGhpbmc+LC4uLlxuIgorIiAgc3RvcCB3aXRoIGVycm9yOiAgICAtLXJlZnVzZS08dGhpbmc+LDx0aGluZz4sLi4uIHwgLS1uby1mb3JjZS08dGhpbmc+LC4uLlxuIgorIiBGb3JjaW5nIHRoaW5nczpcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjQ5MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiV0FSTklORyAtIHVzZSBvZiBvcHRpb25zIG1hcmtlZCBbIV0gY2FuIHNlcmlvdXNseSBkYW1hZ2UgeW91ciBpbnN0YWxsYXRpb24uXG4iCisiRm9yY2luZyBvcHRpb25zIG1hcmtlZCBbKl0gYXJlIGVuYWJsZWQgYnkgZGVmYXVsdC5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjUwNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGZvcmNlL3JlZnVzZSBvcHRpb24gYCUuKnMnIgorbXNnc3RyICLgpIXgpJzgpY3gpJ7gpL7gpKQg4KSm4KS14KS+4KSsL+CkheCkteCkv+CkuOCljeCkleCkvuCksCDgpLXgpL/gpJXgpLLgpY3gpKogYCUuKnMiCisKKyM6IHNyYy9tYWluLmM6NTEzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJvYnNvbGV0ZSBmb3JjZS9yZWZ1c2Ugb3B0aW9uICclcydcbiIKK21zZ3N0ciAi4KSa4KWH4KSk4KS+4KS14KSo4KWAOiDgpIXgpKrgpY3gpLDgpJrgpLLgpL/gpKQg4KSm4KS14KS+4KS1L+CkheCkuOCljeCkteCkv+CkleCkvuCksCDgpLXgpL/gpJXgpLLgpY3gpKogYCVzJ1xuIgorCisjOiBzcmMvbWFpbi5jOjY0MworbXNnaWQgIi0tY29tbWFuZC1mZCB0YWtlcyBvbmUgYXJndW1lbnQsIG5vdCB6ZXJvIgorbXNnc3RyICItLeCkhuCkpuClh+Ckti1mZCDgpI/gpIngpJ/gpL4g4KSk4KSw4KWN4KSVIOCksuCkv+CkqOCljeCkmywg4KS24KWB4KSo4KWN4KSvIOCkueCli+Ckh+CkqCIKKworIzogc3JjL21haW4uYzo2NDUKK21zZ2lkICItLWNvbW1hbmQtZmQgb25seSB0YWtlcyBvbmUgYXJndW1lbnQiCittc2dzdHIgIi0t4KSG4KSm4KWH4KS2LWZkIOCksuClhyDgpK7gpL7gpKTgpY3gpLAg4KSP4KSJ4KSf4KS+IOCkpOCksOCljeCklSDgpLLgpL/gpKjgpY3gpJsiCisKKyM6IHNyYy9tYWluLmM6NjUxCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkbid0IG9wZW4gYCVpJyBmb3Igc3RyZWFtIgorbXNnc3RyICLgpKrgpY3gpLDgpLXgpL7gpLngpJXgpL4g4KSy4KS+4KSX4KS/YCVpJyDgpJbgpYvgpYvgpLLgpY3gpKgg4KS44KSV4KWH4KSoIgorCisjOiBzcmMvbWFpbi5jOjY3NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVvZiBiZWZvcmUgZW5kIG9mIGxpbmUgJWQiCittc2dzdHIgIuCksuCkvuCkh+CkqOCkleCliyDgpLjgpK7gpL7gpKrgpY3gpKTgpYAg4KSq4KS54KS/4KSy4KWHICVkIOCkheCkquCljeCksOCkpOCljeCkr+CkvuCkuOCkv+CkpCBlb2YiCisKKyM6IHNyYy9tYWluLmM6NzE5IHNyYy9tYWluLmM6NzQxIHNyYy9xdWVyeWNtZC5jOjY5MiBzcmMvc3RhdGNtZC5jOjM3OQorIzogZHBrZy1kZWIvbWFpbi5jOjIwMSBkcGtnLXNwbGl0L21haW4uYzoxNjMKK21zZ2lkICJuZWVkIGFuIGFjdGlvbiBvcHRpb24iCittc2dzdHIgIuCkj+CkieCkn+CkviDgpJXgpL7gpLDgpY3gpK8g4KS14KS/4KSV4KSy4KWN4KSqIOCkhuCkteCktuCljeCkr+CklSIKKworIzogc3JjL3BhY2thZ2VzLmM6MTEzCittc2dpZCAiIgorInlvdSBtdXN0IHNwZWNpZnkgcGFja2FnZXMgYnkgdGhlaXIgb3duIG5hbWVzLCBub3QgYnkgcXVvdGluZyB0aGUgbmFtZXMgb2YgIgorInRoZSBmaWxlcyB0aGV5IGNvbWUgaW4iCittc2dzdHIgIiIKKyLgpKTgpKrgpL7gpIjgpIHgpLLgpYcg4KSq4KWN4KSv4KS+4KSV4KWH4KSc4KS54KSw4KWCIOCkpOCkv+CkqOCkv+CkueCksOClgeCkleCliCDgpKjgpL7gpK7gpLngpLDgpYIg4KSm4KWN4KSn4KS+4KSw4KS+IOCkqOCkv+CksOCljeCkpuClg+Ckt+CljeCknyDgpJfgpLDgpY3gpKjgpYEg4KSq4KSw4KWN4KSm4KSbLCDgpK3gpL/gpKTgpY3gpLAg4KSG4KSJ4KSo4KWHIOCkpOCkvyDgpKvgpL7gpIfgpLLgpLngpLDgpYHgpJXgpYsg4KSo4KS+4KSuICAiCisi4KSJ4KSm4KWN4KSn4KSw4KSjIOCkl+CksOClh+CksCDgpLngpYvgpIfgpKgiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjEzMworIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIC0tcGVuZGluZyBkb2VzIG5vdCB0YWtlIGFueSBub24tb3B0aW9uIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS0lcyAt4KS14KS/4KSa4KS+4KSw4KS+4KSn4KS/4KSo4KSy4KWHIOCkleClgeCkqOCliCDgpLXgpL/gpJXgpLLgpY3gpKog4KSs4KS/4KS54KS/4KSoIOCkpOCksOCljeCkleCkueCksOClgiDgpLLgpL/gpKbgpYjgpKgiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjEzOCBzcmMvcXVlcnljbWQuYzozNzUgc3JjL3F1ZXJ5Y21kLmM6NTY1CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYXQgbGVhc3Qgb25lIHBhY2thZ2UgbmFtZSBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyDgpLLgpL7gpIgg4KSV4KSu4KWN4KSk4KS/4KSu4KS+IOCkquCkqOCkvyDgpI/gpIngpJ/gpL4g4KSq4KWN4KSv4KS+4KSV4KWH4KScIOCkqOCkvuCkriDgpKTgpLDgpY3gpJUg4KSG4KS14KS24KWN4KSv4KSVIOCkquCksOCljeCkpuCkmyIKKworIzogc3JjL3BhY2thZ2VzLmM6MTc5CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgJXMgbGlzdGVkIG1vcmUgdGhhbiBvbmNlLCBvbmx5IHByb2Nlc3Npbmcgb25jZS5cbiIKK21zZ3N0ciAi4KSq4KWN4KSv4KS+4KSV4KWH4KScICVz4KSy4KWHIOCkj+CklSDgpKrgpJ/gpJUg4KSt4KSo4KWN4KSm4KS+IOCkrOCkouCkvyDgpLjgpYLgpJrgpYDgpKzgpKbgpY3gpKcg4KSX4KSw4KWN4KSm4KSbLCDgpKrgpY3gpLDgpJXgpY3gpLDgpL/gpK/gpL4g4KSX4KSw4KWN4KSo4KWHIOCkruCkvuCkpOCljeCksCDgpI/gpJUg4KSq4KSf4KSVIOClpFxuIgorCisjOiBzcmMvcGFja2FnZXMuYzoxODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk1vcmUgdGhhbiBvbmUgY29weSBvZiBwYWNrYWdlICVzIGhhcyBiZWVuIHVucGFja2VkXG4iCisiIGluIHRoaXMgcnVuICEgIE9ubHkgY29uZmlndXJpbmcgaXQgb25jZS5cbiIKK21zZ3N0ciAiIgorIuCkquCljeCkr+CkvuCkleClh+CknCAlcyDgpJXgpYsg4KSP4KSVIOCkreCkqOCljeCkpuCkviDgpKzgpKLgpL8g4KSq4KWN4KSw4KSk4KS/4KSy4KS/4KSq4KS/4KS54KSw4KWBIOCkmuCkvuCksuCkruCkviBcbiIKKyIg4KSW4KWL4KSy4KS/4KSP4KSV4KS+IOCkm+CkqOCljSAhIOCkj+CklSDgpKrgpJ/gpJUg4KSu4KS+4KSk4KWN4KSwIOCkleCkqOCljeCkq+Ckv+Ckl+CksCDgpJfgpLDgpY3gpKjgpYHgpLngpYvgpLjgpY1cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MjMyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisicGFja2FnZSAlLjI1MHMgaXMgbm90IHJlYWR5IGZvciB0cmlnZ2VyIHByb2Nlc3NpbmdcbiIKKyIgKGN1cnJlbnQgc3RhdHVzIGAlLjI1MHMnIHdpdGggbm8gcGVuZGluZyB0cmlnZ2VycykiCittc2dzdHIgIiIKKyLgpKrgpY3gpK/gpL7gpJXgpYfgpJwgJS4yNTBzIOCkleCkqOCljeCkq+Ckv+Ckl+CksOCkleCkviDgpLLgpL7gpJfgpL8g4KSk4KSv4KS+4KSwIOCkm+CliOCkqFxuIgorIuCkleCkqOCljeCkq+Ckv+Ckl+CksCDgpJfgpLDgpY3gpKgg4KS44KSV4KS/4KSm4KWI4KSoICAo4KS54KS+4KSy4KSV4KWLIOCkuOCljeCkpeCkv+CkpOCkvyBgJS4yNTBzJykiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjMzNAorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgd2hpY2ggcHJvdmlkZXMgJXMgaXMgdG8gYmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiIOCkquCljeCkr+CkvuCkleClh+CknCAlcyDgpJzgpLjgpLLgpYcgJXMg4KS54KSf4KS+4KSJ4KSoIOCkuOCkleCljeCkqOClhyDgpKrgpY3gpLDgpKbgpL7gpKgg4KSX4KSw4KWN4KSm4KSbIOClpFxuIgorCisjOiBzcmMvcGFja2FnZXMuYzozMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIGlzIHRvIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiAg4KSq4KWN4KSv4KS+4KSV4KWH4KScICVzIOCkueCkn+CkvuCkh+CkqOClgSDgpKrgpLDgpY3gpKbgpJsg4KWkXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjM1NAorIywgYy1mb3JtYXQKK21zZ2lkICIgIFZlcnNpb24gb2YgJXMgb24gc3lzdGVtIGlzICVzLlxuIgorbXNnc3RyICIgICAlcyDgpJXgpYsg4KS44KSC4KS44KWN4KSV4KSw4KSj4KSu4KS+IOCkquCljeCksOCko+CkvuCksuClgCAlcyDgpLngpYsg4KWkXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjM3NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIHdoaWNoIHByb3ZpZGVzICVzIGF3YWl0cyB0cmlnZ2VyIHByb2Nlc3NpbmcuXG4iCittc2dzdHIgIiDgpKrgpY3gpK/gpL7gpJXgpYfgpJwgJXMg4KSc4KS44KSy4KWHICVzIOCkueCkn+CkvuCkieCkqCDgpLjgpJXgpY3gpKjgpYcg4KSq4KWN4KSw4KSm4KS+4KSoIOCkl+CksOCljeCkpuCkmyDgpaRcbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MzgwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgYXdhaXRzIHRyaWdnZXIgcHJvY2Vzc2luZy5cbiIKK21zZ3N0ciAiICDgpKrgpY3gpK/gpL7gpJXgpYfgpJwgJXMg4KS54KSf4KS+4KSH4KSo4KWBIOCkquCksOCljeCkpuCkmyDgpaRcbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDEwCisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IGFsc28gY29uZmlndXJpbmcgYCVzJyAocmVxdWlyZWQgYnkgYCVzJylcbiIKK21zZ3N0ciAiZHBrZzogYCVzJyDgpKrgpKjgpL8g4KSV4KSo4KWN4KSr4KS/4KSX4KSwIOCkl+CksOCljeCkpuCliCAoYCVzJ+CkpuCljeCkp+CkvuCksOCkviDgpIbgpLXgpLbgpY3gpK/gpJUpXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQxOAorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgd2hpY2ggcHJvdmlkZXMgJXMgaXMgbm90IGNvbmZpZ3VyZWQgeWV0LlxuIgorbXNnc3RyICIgIOCkquCljeCkr+CkvuCkleClh+CknCAlcyDgpJzgpLjgpLLgpYcgJXMg4KSq4KWN4KSw4KSm4KS+4KSoIOCkl+CksOCljeCkpuCkmyDgpIXgpLngpL/gpLLgpYcg4KS44KSu4KWN4KSuIOCkleCkqOCljeCkq+Ckv+Ckl+CksCDgpJfgpLDgpL/gpI/gpJXgpYsg4KSb4KWI4KSoIOClpFxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIGlzIG5vdCBjb25maWd1cmVkIHlldC5cbiIKK21zZ3N0ciAiICDgpKrgpY3gpK/gpL7gpJXgpYfgpJwgJXMg4KSF4KS54KS/4KSy4KWHIOCkuOCkruCljeCkriDgpJXgpKjgpY3gpKvgpL/gpJfgpLAg4KSX4KSw4KS/4KSP4KSV4KWLIOCkm+CliOCkqCDgpaRcbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyB3aGljaCBwcm92aWRlcyAlcyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIgIOCkquCljeCkr+CkvuCkleClh+CknCAlcyDgpJzgpLjgpLLgpYcgJXMg4KSq4KWN4KSw4KSm4KS+4KSoIOCkl+CksOCljeCkpuCkmyDgpIXgpLngpL/gpLLgpYcg4KS44KSu4KWN4KSuIOCkuOCljeCkpeCkvuCkquCkqOCkviDgpJfgpLDgpL/gpI/gpJXgpYsg4KSb4KWI4KSoIOClpFxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIGlzIG5vdCBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAg4KSq4KWN4KSv4KS+4KSV4KWH4KScICVzIOCkuOCljeCkpeCkvuCkquCkqOCkviDgpJfgpLDgpL/gpI/gpJXgpYsg4KSb4KWI4KSoIOClpFxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0NzIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiAlcyAoJXMpIGJyZWFrcyAlcyBhbmQgaXMgJXMuXG4iCittc2dzdHIgIiAgJS4yNTBzIOCksuClhyAlLjI1MHMg4KSq4KWN4KSw4KSm4KS+4KSoIOCkl+CksOCljeCkpuCkmyDgpLAgJXMg4KS54KWLIOClpFxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0NzgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiAgJXMgKCVzKSBwcm92aWRlcyAlcy5cbiIKK21zZ3N0ciAiJXMgKOCkieCkquCkquCljeCksOCkleCljeCksOCkv+Ckr+Ckvik6ICVzXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQ4MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiICBWZXJzaW9uIG9mICVzIHRvIGJlIGNvbmZpZ3VyZWQgaXMgJXMuXG4iCittc2dzdHIgIiAgICVzIOCkleCliyDgpLjgpILgpLjgpY3gpJXgpLDgpKPgpK7gpL4g4KSq4KWN4KSw4KSj4KS+4KSy4KWAICVzIOCkueCliyDgpaRcbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NTk2Cittc2dpZCAiIGRlcGVuZHMgb24gIgorbXNnc3RyICIg4KSv4KS44KSu4KS+IOCkqOCkv+CksOCljeCkreCksCDgpJfgpLDgpY3gpKbgpJsgIgorCisjOiBzcmMvcGFja2FnZXMuYzo2MDIKK21zZ2lkICI7IGhvd2V2ZXI6XG4iCittc2dzdHIgIjsg4KSv4KSm4KWN4KSv4KSq4KWAOlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjcxCisjLCBjLWZvcm1hdAorbXNnaWQgIi4uLi8lcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjkxCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGVuc3VyaW5nIGAlLjI1MHMnIGRvZXNuJ3QgZXhpc3QiCittc2dzdHIgIuCkpOCljeCksOClgeCkn+CkvyDgpLjgpYHgpKjgpL/gpLbgpY3gpJrgpL/gpKQg4KSX4KSw4KWN4KSo4KWHIGAlLjI1MHMnIOCkheCkteCkuOCljeCkpeCkv+CkpCDgpJvgpYjgpKgiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTkKK21zZ2lkICJzcGxpdCBwYWNrYWdlIHJlYXNzZW1ibHkiCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxMDgKK21zZ2lkICJyZWFzc2VtYmxlZCBwYWNrYWdlIGZpbGUiCittc2dzdHIgIuCkquClguCkqCDgpI/gpJXgpKTgpY3gpLDgpL/gpKQg4KSX4KSw4KS/4KSP4KSV4KWLIOCkquCljeCkr+CkvuCkleClh+CknOCkviDgpKvgpL7gpIfgpLIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTMzCisjLCBjLWZvcm1hdAorbXNnaWQgIkF1dGhlbnRpY2F0aW5nICVzIC4uLlxuIgorbXNnc3RyICLgpKrgpY3gpLDgpK7gpL7gpKPgpL/gpKQg4KSX4KSw4KWN4KSm4KWI4KSbICVzIC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEzOQorbXNnaWQgInBhY2thZ2Ugc2lnbmF0dXJlIHZlcmlmaWNhdGlvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE0NgorIywgYy1mb3JtYXQKK21zZ2lkICJWZXJpZmljYXRpb24gb24gcGFja2FnZSAlcyBmYWlsZWQhIgorbXNnc3RyICLgpKrgpY3gpK/gpL7gpJXgpYfgpJwgJXMg4KSu4KS+IOCksOClgeCknOClgSDgpIXgpLjgpKvgpLIhIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE0OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVmVyaWZpY2F0aW9uIG9uIHBhY2thZ2UgJXMgZmFpbGVkLFxuIgorImJ1dCBpbnN0YWxsaW5nIGFueXdheSBhcyB5b3UgcmVxdWVzdGVkLlxuIgorbXNnc3RyICIiCisi4KSq4KWN4KSv4KS+4KSV4KWH4KScICVz4KSu4KS+IOCksOClgeCknOClgSDgpIXgpLjgpKvgpLIsXG4iCisi4KSk4KSwIOCknOClhyDgpK3gpI8g4KSq4KSo4KS/IOCkpOCkquCkvuCkiOCkgeCkleCliyDgpIXgpKjgpYHgpLDgpYvgpKfgpJXgpYsg4KSw4KWB4KSq4KSu4KS+IOCkuOCljeCkpeCkvuCkquCkqOCkviDgpJfgpLDgpY3gpKbgpYjgpJsg4KWkXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTUyCisjLCBjLWZvcm1hdAorbXNnaWQgInBhc3NlZFxuIgorbXNnc3RyICLgpKrgpL7gpLgg4KSX4KSw4KWN4KSv4KWLXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTY1IGRwa2ctZGViL2luZm8uYzo4MQorIywgZnV6enkKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHRlbXBvcmFyeSBkaXJlY3RvcnkiCittc2dzdHIgIuCkheCkuOCljeCkpeCkvuCkr+ClgCDgpKHgpL7gpIfgpLDgpYfgpJXgpY3gpJ/gpLDgpYAg4KSo4KS+4KSuIOCkrOCkqOCkvuCkieCkqCDgpIXgpLjgpKvgpLIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MjA1CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgJXMgaGFzIHRvbyBtYW55IENvbmZsaWN0cy9SZXBsYWNlcyBwYWlycyIKK21zZ3N0ciAi4KSq4KWN4KSv4KS+4KSV4KWH4KScICVzIOCkuOCkgeCklyDgpKfgpYfgpLDgpYgg4KSm4KWN4KS14KSo4KWN4KSm4KWN4KS1L+CkteCkv+CkuOCljeCkpeCkvuCkquCkqCDgpJzgpYvgpKHgpYAg4KSb4KSo4KWNIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjI0MworIywgYy1mb3JtYXQKK21zZ2lkICJvbGQgdmVyc2lvbiBvZiBwYWNrYWdlIGhhcyBvdmVybHktbG9uZyBpbmZvIGZpbGUgbmFtZSBzdGFydGluZyBgJS4yNTBzJyIKK21zZ3N0ciAiIOCkquCljeCkr+CkvuCkleClh+CknOCkleCliyDgpKrgpYHgpLDgpL7gpKjgpYsg4KS44KSC4KS44KWN4KSV4KSw4KSj4KS44KSB4KSXIGAlLjI1MHMn4KS44KSB4KSXIOCkuOClgeCksOClgeCkhuCkpCDgpIXgpKTgpL8t4KSy4KS+4KSu4KWLIOCkuOClguCkmuCkqOCkviDgpKvgpL7gpIfgpLIg4KSo4KS+4KSuIOCkmyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyODEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBvYnNvbGV0ZSBpbmZvIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuCkheCkquCljeCksOCkmuCksuCkv+CkpCDgpLjgpYLgpJrgpKjgpL4g4KSr4KS+4KSH4KSyIGAlLjI1MHMg4KS54KSf4KS+4KSJ4KSoIOCkheCkleCljeCkt+CkriIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyODYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgKHN1cHBvc2VkKSBuZXcgaW5mbyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLgpKjgpK/gpL7gpIEg4KS44KWC4KSa4KSo4KS+IOCkq+CkvuCkh+CksiDgpLjgpY3gpKXgpL7gpKrgpKggKOCkruCkvuCkqOClh+CkleCliykg4KSX4KSw4KWN4KSoIOCkheCkleCljeCkt+CkrmAlLjI1MHMnIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjI5NgorbXNnaWQgInVuYWJsZSB0byBvcGVuIHRlbXAgY29udHJvbCBkaXJlY3RvcnkiCittc2dzdHIgIuCkheCkuOCljeCkpeCkvuCkr+ClgCDgpKjgpL/gpK/gpKjgpY3gpKTgpY3gpLDgpKMg4KSh4KS+4KSH4KSw4KWH4KSV4KWN4KSf4KSw4KWAIOCkluCli+CksuCljeCkqCDgpIXgpJXgpY3gpLfgpK4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzA3CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgY29udGFpbnMgb3Zlcmx5LWxvbmcgY29udHJvbCBpbmZvIGZpbGUgbmFtZSAoc3RhcnRpbmcgYCUuNTBzJykiCittc2dzdHIgIuCkquCljeCkr+CkvuCkleClh+CknOCksuClhyDgpIXgpKTgpL8g4KSn4KWH4KSw4KWIIOCksuCkvuCkruCliyDgpKjgpL/gpK/gpKjgpY3gpKTgpY3gpLDgpKMg4KS44KWC4KSa4KSo4KS+IOCkq+CkvuCkh+CksuCkqOCkvuCkriAo4KS44KWB4KSw4KWCYCUuNTBzJykg4KS44KSu4KS+4KS14KWH4KS2IOCkl+CksOCljeCkpuCkmyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBjb250cm9sIGluZm8gY29udGFpbmVkIGRpcmVjdG9yeSBgJS4yNTBzJyIKK21zZ3N0ciAi4KSq4KWN4KSv4KS+4KSV4KWH4KScIOCkqOCkv+Ckr+CkqOCljeCkpOCljeCksOCkoyDgpLjgpYLgpJrgpKjgpL7gpLLgpYdgJS4yNTBzJyDgpKHgpL7gpIfgpLDgpYfgpJXgpY3gpJ/gpLDgpYAg4KS44KSu4KS+4KS54KS/4KSkIOCkl+CksOCljeCkpuCkmyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMTYKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBjb250cm9sIGluZm8gcm1kaXIgb2YgYCUuMjUwcycgZGlkbid0IHNheSBub3QgYSBkaXIiCittc2dzdHIgInJtZGlyIOCkleCliyBgJS4yNTBzJyDgpKrgpY3gpK/gpL7gpJXgpYfgpJwg4KSo4KS/4KSv4KSo4KWN4KSk4KWN4KSw4KSjIOCkuOClguCkmuCkqOCkvuCksuClhyBkaXIg4KS54KWL4KSH4KSoIOCkreCkqOCljeCkpuCliOCkqCIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMjYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgJXMgY29udGFpbmVkIGxpc3QgYXMgaW5mbyBmaWxlIgorbXNnc3RyICJkcGtnOiDgpJrgpYfgpKTgpL7gpLXgpKjgpYAgLSDgpKrgpY3gpK/gpL7gpJXgpYfgpJwgJXMg4KSy4KWHIOCkuOClguCkmuCkqOCkviDgpKvgpL7gpIfgpLLgpJXgpYsg4KSw4KWB4KSq4KSu4KS+IOCkuOCkruCkvuCkueCkv+CkpCDgpJfgpLDgpY3gpKbgpJsiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzMzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyBpbmZvIGZpbGUgYCUuMjUwcycgYXMgYCUuMjUwcyciCittc2dzdHIgIuCkqOCkr+CkvuCkgSDgpLjgpYLgpJrgpKjgpL4g4KSr4KS+4KSH4KSyIGAlLjI1MHMnIOCkleCliyDgpLDgpYHgpKrgpK7gpL4gYCUuMjUwcycg4KS44KWN4KSl4KS+4KSq4KSo4KS+IOCkl+CksOCljeCkqCDgpIXgpJXgpY3gpLfgpK4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzQ5IHNyYy9yZW1vdmUuYzoxOTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSBjb250cm9sIGluZm8gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4KSo4KS/4KSv4KSo4KWN4KSk4KWN4KSw4KSjIOCkuOClguCkmuCkqOCkviDgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KS54KSf4KS+4KSJ4KSoIOCkheCkleCljeCkt+CkriIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo0MTEKK21zZ2lkICJjYW5ub3QgYWNjZXNzIGFyY2hpdmUiCittc2dzdHIgIuCkuOCkmeCljeCkl+CljeCksOCkueCkruCkviDgpKrgpLngpYHgpIHgpJog4KSX4KSw4KWN4KSoIOCkuOCkleCkv+CkpuCliOCkqCIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo0MzMKKyMsIGZ1enp5CisjfCBtc2dpZCAiY29udHJvbCBpbmZvcm1hdGlvbiBsZW5ndGgiCittc2dpZCAicGFja2FnZSBjb250cm9sIGluZm9ybWF0aW9uIGV4dHJhY3Rpb24iCittc2dzdHIgIuCkqOCkv+Ckr+CkqOCljeCkpOCljeCksOCkoyDgpLjgpYLgpJrgpKjgpL4g4KSy4KSu4KWN4KSs4KS+4KSIIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjQ2MAorIywgYy1mb3JtYXQKK21zZ2lkICJSZWNvcmRlZCBpbmZvIGFib3V0ICVzIGZyb20gJXMuXG4iCittc2dzdHIgIiVzIOCkrOCkvuCknyAlcyDgpJXgpL4g4KSs4KS+4KSw4KWH4KSu4KS+IOCksOClh+CksOCljeCkleCkoSDgpJfgpLDgpL/gpI/gpJXgpYsg4KS44KWC4KSa4KSo4KS+IOClpFxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjQ2OAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGFyY2hpdGVjdHVyZSAoJXMpIGRvZXMgbm90IG1hdGNoIHN5c3RlbSAoJXMpIgorbXNnc3RyICLgpKrgpY3gpK/gpL7gpJXgpYfgpJwg4KSs4KSo4KS+4KS14KSfICglcykg4KSq4KWN4KSw4KSj4KS+4KSy4KWAICglcyngpLjgpILgpJcg4KSu4KWH4KSyIOCkluCkvuCkpuCliOCkqCIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1MjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IHJlZ2FyZGluZyAlcyBjb250YWluaW5nICVzLCBwcmUtZGVwZW5kZW5jeSBwcm9ibGVtOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogICVzIOCkp+CljeCkr+CkvuCkqOCkpuCkv+CkpuCliCAlcyDgpLjgpK7gpL7gpLngpL/gpKQsIOCkquClguCksOCljeCktS3gpKjgpL/gpLDgpY3gpK3gpLDgpKTgpL4g4KS44KSu4KS44KWN4KSv4KS+OlxuIgorIiVzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjUyNgorIywgYy1mb3JtYXQKK21zZ2lkICJwcmUtZGVwZW5kZW5jeSBwcm9ibGVtIC0gbm90IGluc3RhbGxpbmcgJS4yNTBzIgorbXNnc3RyICLgpKrgpYLgpLDgpY3gpKgt4KSo4KS/4KSw4KWN4KSt4KSw4KSk4KS+IOCkuOCkruCkuOCljeCkr+CkviAtIOCkheCknSAlLjI1MHMg4KS44KWN4KSl4KS+4KSq4KSo4KS+IOCkl+CksOCkv+CkpuCliCDgpJvgpYjgpKgiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTI3CisjLCBmdXp6eQorbXNnaWQgImlnbm9yaW5nIHByZS1kZXBlbmRlbmN5IHByb2JsZW0hIgorbXNnc3RyICJkcGtnOiDgpJrgpYfgpKTgpL7gpLXgpKjgpYAgLSDgpKrgpYLgpLDgpY3gpLUt4KSo4KS/4KSw4KWN4KSt4KSw4KSk4KS+IOCkuOCkruCkuOCljeCkr+CkviDgpIXgpLXgpJzgpY3gpJ7gpL4g4KSX4KSw4KWN4KSm4KWI4KSbICFcbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHJlcGFyaW5nIHRvIHJlcGxhY2UgJXMgJXMgKHVzaW5nICVzKSAuLi5cbiIKK21zZ3N0ciAi4KSq4KWN4KSw4KSk4KS/4KS44KWN4KSl4KS+4KSq4KSoIOCkl+CksOCljeCkqCDgpKTgpK/gpL7gpLDgpYAgJXMgJXMgKOCkquCljeCksOCkr+Cli+CklyDgpJfgpLDgpY3gpKbgpYggJXMpIC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjU0OQorIywgYy1mb3JtYXQKK21zZ2lkICJVbnBhY2tpbmcgJXMgKGZyb20gJXMpIC4uLlxuIgorbXNnc3RyICLgpJbgpYvgpLLgpY3gpKbgpYggJXMgKOCkrOCkvuCknyAlcykgLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTgwCisjLCBjLWZvcm1hdAorbXNnaWQgIm5hbWUgb2YgY29uZmZpbGUgKHN0YXJ0aW5nIGAlLjI1MHMnKSBpcyB0b28gbG9uZyAoPiVkIGNoYXJhY3RlcnMpIgorbXNnc3RyICLgpJXgpKjgpY3gpKvgpKvgpL7gpIfgpLLgpJXgpYsg4KSo4KS+4KSuICjgpLjgpYHgpLDgpYEgYCUuMjUwcycpIOCkp+Clh+CksOCliCDgpLLgpL7gpK7gpYsg4KSbICg+JWQg4KSV4KWN4KSv4KS+4KSw4KWH4KSV4KWN4KSf4KSw4KS54KSw4KWCKSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2MzMgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVhZCBlcnJvciBpbiAlLjI1MHMiCittc2dzdHIgIiUuMjUwcyDgpK7gpL4g4KSk4KWN4KSw4KWB4KSf4KS/IOCkquCkouCljeCkqOClgeCkueCli+CkuOCljSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyAlLjI1MHMiCittc2dzdHIgIiUuMjUwcyDgpKzgpKjgpY3gpKYg4KSX4KSw4KWN4KSm4KS+IOCkpOCljeCksOClgeCkn+CkvyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2MzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgdHJ5aW5nIHRvIG9wZW4gJS4yNTBzIgorbXNnc3RyICIlLjI1MHMg4KSW4KWL4KSy4KWN4KSoIOCkquCljeCksOCkr+CkvuCkuCDgpJfgpLDgpY3gpKbgpL4g4KSk4KWN4KSw4KWB4KSf4KS/IgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjY3OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiRGUtY29uZmlndXJpbmcgJXMsIHRvIGFsbG93IHJlbW92YWwgb2YgJXMgLi4uXG4iCittc2dzdHIgIiVzIOCkoeCkvy3gpJXgpKjgpY3gpKvgpYDgpJfgpLAg4KSX4KSw4KWN4KSo4KWB4KS54KWL4KS44KWNLCDgpJzgpLjgpLLgpYcg4KS54KS+4KSu4KS/4KSy4KWHICVzIOCkueCkn+CkvuCkieCkqCDgpLjgpJXgpY3gpJvgpYwuLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2ODEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIkRlLWNvbmZpZ3VyaW5nICVzIC4uLlxuIgorbXNnc3RyICLgpLngpJ/gpL7gpIngpIHgpKbgpYjgpJsgJXMgLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NzU1CisjLCBjLWZvcm1hdAorbXNnaWQgIlVucGFja2luZyByZXBsYWNlbWVudCAlLjI1MHMgLi4uXG4iCittc2dzdHIgIuCkquCljeCksOCkpOCkv+CkuOCljeCkpeCkvuCkquCkqCDgpJbgpYvgpLLgpY3gpKbgpYggJS4yNTBzIC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjg0MAorbXNnaWQgInBhY2thZ2UgZmlsZXN5c3RlbSBhcmNoaXZlIGV4dHJhY3Rpb24iCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NTQKK21zZ2lkICJlcnJvciByZWFkaW5nIGRwa2ctZGViIHRhciBvdXRwdXQiCittc2dzdHIgImRwa2ctZGViIOCkn+CkvuCksCDgpKjgpL/gpLDgpY3gpJfgpKQg4KSq4KSi4KWN4KSm4KS+IOCkpOCljeCksOClgeCkn+CkvyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NTYKK21zZ2lkICJjb3JydXB0ZWQgZmlsZXN5c3RlbSB0YXJmaWxlIC0gY29ycnVwdGVkIHBhY2thZ2UgYXJjaGl2ZSIKK21zZ3N0ciAi4KSm4KWB4KS34KS/4KSkIOCkq+CkvuCkh+CksuCkquCljeCksOCko+CkvuCksuClgCDgpJ/gpL7gpLDgpKvgpL7gpIfgpLIgLSDgpKbgpYHgpLfgpL/gpKQg4KSq4KWN4KSv4KS+4KSV4KWH4KScIOCkuOCkmeCljeCkl+CljeCksOCkuSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NTkKK21zZ2lkICJkcGtnLWRlYjogemFwIHBvc3NpYmxlIHRyYWlsaW5nIHplcm9zIgorbXNnc3RyICJkcGtnLWRlYjog4KSc4KWN4KSv4KS+4KSq4KSy4KWHIOCkuOCkruCljeCkreCkteCkpCDgpLbgpYHgpKjgpY3gpK/gpLngpLDgpYIg4KSf4KWN4KSw4KS+4KSv4KSyIOCkl+CksOCljeCkpuCliCIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5MTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBzdGF0IG9sZCBmaWxlICclLjI1MHMnIHNvIG5vdCBkZWxldGluZyBpdDogJXMiCittc2dzdHIgImRwa2c64KSa4KWH4KSk4KS+4KS14KSo4KWAIC0g4KSq4KWB4KSw4KS+4KSo4KWLIOCkq+CkvuCkh+CksiBgJS4yNTBzJyDgpJfgpLDgpY3gpKgg4KS44KSV4KWH4KSoIOCkpOCljeCkr+CkuOCliOCksuClhyDgpK/gpLjgpLLgpL7gpIgg4KSo4KSu4KWH4KSf4KWN4KSm4KWIOiAlcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5MjUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkZWxldGUgb2xkIGRpcmVjdG9yeSAnJS4yNTBzJzogJXMiCittc2dzdHIgImRwa2c6IOCkmuClh+CkpOCkvuCkteCkqOClgCAtIOCkquClgeCksOCkvuCkqOCliyDgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KSu4KWH4KSf4KWN4KSoIOCkheCkleCljeCkt+CkrjogJXNcbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5MjgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIm9sZCBjb25mZmlsZSAnJS4yNTBzJyB3YXMgYW4gZW1wdHkgZGlyZWN0b3J5IChhbmQgaGFzIG5vdyBiZWVuIGRlbGV0ZWQpIgorbXNnc3RyICIiCisiZHBrZzog4KSa4KWH4KSk4KS+4KS14KSo4KWAIC0g4KSq4KWB4KSw4KS+4KSo4KWLIOCkleCkqOCljeCkq+Ckq+CkvuCkh+CksiBgJS4yNTBzJyDgpI/gpIngpJ/gpL4g4KSw4KS/4KSk4KWN4KSk4KWLIOCkoeCkvuCkh+CksOClh+CkleCljeCkn+CksOClgCDgpLngpYsgKOCksCDgpIXgpLngpL/gpLLgpYcg4KSV4KS44KSw4KS/ICIKKyLgpK7gpYfgpJ/gpL/gpKbgpYgg4KSbKVxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjk3NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBvdGhlciBuZXcgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4KSF4KSo4KWN4KSvIOCkqOCkr+CkvuCkgSDgpKvgpL7gpIfgpLIgYCUuMjUwcycgc3RhdCDgpJfgpLDgpY3gpKgg4KSF4KSV4KWN4KS34KSuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjk4NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIm9sZCBmaWxlICclLjI1MHMnIGlzIHRoZSBzYW1lIGFzIHNldmVyYWwgbmV3IGZpbGVzISAoYm90aCAnJS4yNTBzJyBhbmQgIgorIiclLjI1MHMnKSIKK21zZ3N0ciAiIgorImRwa2c6IOCkmuClh+CkpOCkvuCkteCkqOClgCAtIOCkquClguCksOCkvuCkqOCliyDgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KS14KS/4KSt4KS/4KSo4KWN4KSoIOCkqOCkr+CkvuCkgSDgpKvgpL7gpIfgpLLgpLjgpIHgpJcg4KS44KSu4KS+4KSoIOCkmyEgICjgpKbgpYHgpLXgpYggYCUuMjUwcycg4KSwICIKKyJgJS4yNTBzJylcbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxMDI1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2VjdXJlbHkgcmVtb3ZlIG9sZCBmaWxlICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiZHBrZzog4KSa4KWH4KSk4KS+4KS14KSo4KWAIC0g4KSq4KWB4KSw4KS+4KSo4KWLIOCkq+CkvuCkh+CksiAlcyDgpIXgpJXgpY3gpLfgpK4gYCUlLjI1MHMnOiAlJXNcbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxMjA2CisjLCBjLWZvcm1hdAorbXNnaWQgIihOb3RpbmcgZGlzYXBwZWFyYW5jZSBvZiAlcywgd2hpY2ggaGFzIGJlZW4gY29tcGxldGVseSByZXBsYWNlZC4pXG4iCittc2dzdHIgIiggJXMg4KSV4KWLIOCkleClh+CkueCkv+CkquCkqOCkvyDgpLngpLDgpL7gpI/gpJXgpYsg4KSb4KWI4KSoLCDgpKTgpL8g4KS44KSu4KWN4KSq4KWB4KSw4KWN4KSjIOCksOClgeCkquCkruCkviDgpKrgpY3gpLDgpKTgpL/gpLjgpY3gpKXgpL7gpKrgpKgg4KSX4KSw4KS/4KSP4KSV4KWLIOCkmylcbiIKKworIy4gVFJBTlNMQVRPUlM6IFRoaXMgaXMgdGhlIGhlYWRlciB0aGF0IGFwcGVhcnMgb24gJ2Rwa2ctcXVlcnkgLWwnLiBUaGUKKyMuICogc3RyaW5nIHNob3VsZCByZW1haW4gdW5kZXIgODAgY2hhcmFjdGVycy4gVGhlIHVwcGVyY2FzZSBsZXR0ZXJzIGluCisjLiAqIHRoZSBzdGF0ZSB2YWx1ZXMgZGVub3RlIHRoZSBhYmJyZXZpYXRlZCBsZXR0ZXIgdGhhdCB3aWxsIGFwcGVhciBvbgorIy4gKiB0aGUgZmlyc3QgdGhyZWUgY29sdW1ucywgd2hpY2ggc2hvdWxkIGlkZWFsbHkgbWF0Y2ggdGhlIEVuZ2xpc2ggb25lCisjLiAqIChlLmcuIFJlbW92ZSDihpIgc3VwUmltZWl4KSwgc2VlIGRwa2ctcXVlcnkoMSkgZm9yIGZ1cnRoZXIgZGV0YWlscy4gVGhlCisjLiAqIHRyYW5zbGF0ZWQgbWVzc2FnZSBjYW4gdXNlIGFkZGl0aW9uYWwgbGluZXMgaWYgbmVlZGVkLgorIzogc3JjL3F1ZXJ5Y21kLmM6MTQ5CisjLCBmdXp6eQorbXNnaWQgIiIKKyJEZXNpcmVkPVVua25vd24vSW5zdGFsbC9SZW1vdmUvUHVyZ2UvSG9sZFxuIgorInwgU3RhdHVzPU5vdC9JbnN0L0NvbmYtZmlsZXMvVW5wYWNrZWQvaGFsRi1jb25mL0hhbGYtaW5zdC90cmlnLWFXYWl0L1RyaWctIgorInBlbmRcbiIKKyJ8LyBFcnI/PShub25lKS9SZWluc3QtcmVxdWlyZWQgKFN0YXR1cyxFcnI6IHVwcGVyY2FzZT1iYWQpXG4iCittc2dzdHIgIiIKKyIgIERlc2lyZWQ9VW5rbm93bi9JbnN0YWxsL1JlbW92ZS9QdXJnZS9Ib2xkXG4iCisifCBTdGF0dXM9Tm90L0luc3RhbGxlZC9Db25maWctZmlsZXMvVW5wYWNrZWQvRmFpbGVkLWNvbmZpZy9IYWxmLWluc3RhbGxlZFxuIgorInwvIEVycj89KG5vbmUpL0hvbGQvUmVpbnN0LXJlcXVpcmVkL1g9Ym90aC1wcm9ibGVtcyAoU3RhdHVzLEVycjogIgorInVwcGVyY2FzZT1iYWQpXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjE1MworbXNnaWQgIk5hbWUiCittc2dzdHIgIuCkqOCkvuCkriIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MTUzCittc2dpZCAiVmVyc2lvbiIKK21zZ3N0ciAi4KS44KSC4KS44KWN4KSV4KSw4KSjIgorCisjOiBzcmMvcXVlcnljbWQuYzoxNTQKK21zZ2lkICJEZXNjcmlwdGlvbiIKK21zZ3N0ciAi4KSs4KSw4KWN4KSj4KSoIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNDYgc3JjL3F1ZXJ5Y21kLmM6NTExIHNyYy9zZWxlY3QuYzo3NQorIywgYy1mb3JtYXQKK21zZ2lkICJObyBwYWNrYWdlcyBmb3VuZCBtYXRjaGluZyAlcy5cbiIKK21zZ3N0ciAiICVzIOCkuOCkguCklyDgpK7gpL/gpLLgpY3gpKjgpYcg4KSV4KWB4KSo4KWIIOCkquCkqOCkvyDgpKrgpY3gpK/gpL7gpJXgpYfgpJzgpLngpLDgpYIg4KSr4KWH4KSy4KS+IOCkquCksOClh+CkqCDgpaRcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MjczCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnNpb24gYnkgJXMgZnJvbTogJXNcbiIKK21zZ3N0ciAiJXMg4KSm4KWN4KSn4KS+4KSw4KS+ICVzIOCkruCkviDgpKvgpYfgpLDgpL/gpI/gpJXgpYtcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6Mjc1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnNpb24gYnkgJXMgdG86ICVzXG4iCittc2dzdHIgIiVzIOCkpuCljeCkp+CkvuCksOCkviAlcyDgpK7gpL4g4KSr4KWH4KSw4KS/4KSP4KSV4KWLXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI3OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAibG9jYWwgZGl2ZXJzaW9uIGZyb206ICVzXG4iCittc2dzdHIgIuCkuOCljeCkpeCkvuCkqOClgOCkryDgpK7gpYvgpKEiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI3OQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAibG9jYWwgZGl2ZXJzaW9uIHRvOiAlc1xuIgorbXNnc3RyICLgpLjgpY3gpKXgpL7gpKjgpL/gpK8g4KSw4KWB4KSq4KSu4KS+IOCkpOCkv+CksCDgpK7gpYvgpKHgpL/gpI/gpJXgpYs6ICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjMwOQorbXNnaWQgIi0tc2VhcmNoIG5lZWRzIGF0IGxlYXN0IG9uZSBmaWxlIG5hbWUgcGF0dGVybiBhcmd1bWVudCIKK21zZ3N0ciAiLS3gpJbgpYvgpJzgpYDgpLLgpL7gpIgg4KSV4KSu4KWN4KSk4KS/4KSu4KS+IOCkquCkqOCkvyDgpI/gpIngpJ/gpL4g4KSr4KS+4KSH4KSy4KSo4KS+4KSuIOCkrOCkvuCkqOCljeCkleClgCDgpKTgpLDgpY3gpJUg4KSG4KS14KS24KWN4KSv4KSVIOCkquCksOCljeCkpuCkmyIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MzUwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJObyBwYWNrYWdlcyBmb3VuZCBtYXRjaGluZyAlcy5cbiIKK21zZ2lkICIlczogbm8gcGF0aCBmb3VuZCBtYXRjaGluZyBwYXR0ZXJuICVzLlxuIgorbXNnc3RyICIgJXMg4KS44KSC4KSXIOCkruCkv+CksuCljeCkqOClhyDgpJXgpYHgpKjgpYgg4KSq4KSo4KS/IOCkquCljeCkr+CkvuCkleClh+CknOCkueCksOClgiDgpKvgpYfgpLLgpL4g4KSq4KSw4KWH4KSoIOClpFxuIgorCisjOiBzcmMvcXVlcnljbWQuYzozOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSBgJXMnIGlzIG5vdCBpbnN0YWxsZWQgYW5kIG5vIGluZm8gaXMgYXZhaWxhYmxlLlxuIgorbXNnc3RyICLgpKrgpY3gpK/gpL7gpJXgpYfgpJwgYCVzJyDgpLjgpY3gpKXgpL7gpKrgpKjgpL4g4KSX4KSw4KWH4KSV4KWLIOCkm+CliOCkqCDgpLAg4KS44KWC4KSa4KSo4KS+IOCkieCkquCksuCkrOCljeCkpyDgpJsg4KWkXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQwMQorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlIGAlcycgaXMgbm90IGF2YWlsYWJsZS5cbiIKK21zZ3N0ciAi4KSq4KWN4KSv4KS+4KSV4KWH4KScIGAlcycg4KSJ4KSq4KSy4KSs4KWN4KSnIOCkm+CliOCkqCDgpaRcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDEwIHNyYy9xdWVyeWNtZC5jOjU4NQorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlIGAlcycgaXMgbm90IGluc3RhbGxlZC5cbiIKK21zZ3N0ciAi4KSq4KWN4KSv4KS+4KSV4KWH4KScIGAlcycg4KS44KWN4KSl4KS+4KSq4KS/4KSkIOCkm+CliOCkqCDgpaRcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDE4CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgYCVzJyBkb2VzIG5vdCBjb250YWluIGFueSBmaWxlcyAoISlcbiIKK21zZ3N0ciAi4KSq4KWN4KSv4KS+4KSV4KWH4KScIGAlcycg4KSy4KWHIOCkleClgeCkqOCliCDgpKrgpKjgpL8g4KSr4KS+4KSH4KSyIOCkuOCkruCkvuCkueCkv+CkpCDgpJfgpLDgpY3gpKbgpYjgpKggKCEpXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQyNQorIywgYy1mb3JtYXQKK21zZ2lkICJsb2NhbGx5IGRpdmVydGVkIHRvOiAlc1xuIgorbXNnc3RyICLgpLjgpY3gpKXgpL7gpKjgpL/gpK8g4KSw4KWB4KSq4KSu4KS+IOCkpOCkv+CksCDgpK7gpYvgpKHgpL/gpI/gpJXgpYs6ICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQyOAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGRpdmVydHMgb3RoZXJzIHRvOiAlc1xuIgorbXNnc3RyICLgpIXgpKjgpY3gpK/gpLLgpL7gpIgg4KSq4KWN4KSv4KS+4KSV4KWH4KSc4KSy4KWHICVzIOCkruCkviDgpKvgpYfgpLDgpY3gpKbgpJs6XG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQzMQorIywgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnRlZCBieSAlcyB0bzogJXNcbiIKK21zZ3N0ciAiJXMg4KSm4KWN4KSn4KS+4KSw4KS+ICVzIOCkruCkviDgpKvgpYfgpLDgpL/gpI/gpJXgpYtcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDUyCittc2dpZCAiIgorIlVzZSBkcGtnIC0taW5mbyAoPSBkcGtnLWRlYiAtLWluZm8pIHRvIGV4YW1pbmUgYXJjaGl2ZSBmaWxlcyxcbiIKKyJhbmQgZHBrZyAtLWNvbnRlbnRzICg9IGRwa2ctZGViIC0tY29udGVudHMpIHRvIGxpc3QgdGhlaXIgY29udGVudHMuXG4iCittc2dzdHIgIiIKKyJkcGtnIOCkquCljeCksOCkr+Cli+CklyDgpJfgpLDgpY3gpKjgpYHgpLngpYvgpLjgpY0gLS3gpLjgpYLgpJrgpKjgpL4gKD0gZHBrZy1kZWIgLS1pbmZvKSDgpLjgpJngpY3gpJfgpY3gpLDgpLkg4KSr4KS+4KSH4KSyIOCkquCksOCkv+CkleCljeCktyDgpJfgpLDgpY3gpKgsXG4iCisi4KSwIGRwa2cgLS3gpLjgpK7gpL7gpLXgpYfgpLbgpLIg4KSX4KSw4KWN4KSm4KSbICg9IGRwa2ctZGViIC0tY29udGVudHMpIOCkpOCljeCkr+CkuOCkleCliyDgpLjgpK7gpL7gpLXgpYfgpLYg4KS44KSZ4KWN4KSX4KWN4KSw4KS5IOCkl+CksOCljeCkqFxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo1NzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgYXQgbW9zdCB0d28gYXJndW1lbnRzIgorbXNnc3RyICItLWJ1aWxkIOCksuClhyDgpKzgpKLgpL/gpK7gpL4g4KSm4KWB4KSI4KS14KSf4KS+IOCkpOCksOCljeCkleCkueCksOClgiDgpLLgpL/gpKjgpY3gpJsiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjU3OAorIywgYy1mb3JtYXQKK21zZ2lkICJjb250cm9sIGZpbGUgY29udGFpbnMgJWMiCittc2dzdHIgIiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjAwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gJXMgcGFja2FnZSBtYW5hZ2VtZW50IHByb2dyYW0gcXVlcnkgdG9vbCB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICLgpKHgpYfgpLXgpL/gpK/gpKggYCVzJyDgpKrgpY3gpK/gpL7gpJXgpYfgpJwg4KSs4KWN4KSv4KS14KS44KWN4KSl4KS+4KSq4KSoIOCkleCkvuCksOCljeCkr+CkleCljeCksOCkriDgpLjgpILgpLjgpY3gpJXgpLDgpKMgJXMgLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo2MTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1zfC0tc3RhdHVzIDxwYWNrYWdlPiAuLi4gICAgICAgIERpc3BsYXkgcGFja2FnZSBzdGF0dXMgZGV0YWlscy5cbiIKKyIgIC1wfC0tcHJpbnQtYXZhaWwgPHBhY2thZ2U+IC4uLiAgIERpc3BsYXkgYXZhaWxhYmxlIHZlcnNpb24gZGV0YWlscy5cbiIKKyIgIC1MfC0tbGlzdGZpbGVzIDxwYWNrYWdlPiAuLi4gICAgIExpc3QgZmlsZXMgYG93bmVkJyBieSBwYWNrYWdlKHMpLlxuIgorIiAgLWx8LS1saXN0IFs8cGF0dGVybj4gLi4uXSAgICAgICAgTGlzdCBwYWNrYWdlcyBjb25jaXNlbHkuXG4iCisiICAtV3wtLXNob3cgWzxwYXR0ZXJuPiAuLi5dICAgICAgICBTaG93IGluZm9ybWF0aW9uIG9uIHBhY2thZ2UocykuXG4iCisiICAtU3wtLXNlYXJjaCA8cGF0dGVybj4gLi4uICAgICAgICBGaW5kIHBhY2thZ2Uocykgb3duaW5nIGZpbGUocykuXG4iCisiICAtY3wtLWNvbnRyb2wtcGF0aCA8cGFja2FnZT4gWzxmaWxlPl1cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFByaW50IHBhdGggZm9yIHBhY2thZ2UgY29udHJvbCBmaWxlLlxuIgorIlxuIgorbXNnc3RyICIiCisi4KSG4KSm4KWH4KS24KS54KSw4KWCOlxuIgorIiAgLXN8LS3gpLXgpLjgpY3gpKTgpYHgpLjgpY3gpKXgpL/gpKTgpL8gPHBhY2thZ2U+IC4uLiAgICAgICAg4KSq4KWN4KSv4KS+4KSV4KWH4KScIOCkteCkuOCljeCkpOClgeCkuOCljeCkpeCkv+CkpOCkvyDgpLXgpL/gpLXgpLDgpKPgpLngpLDgpYIg4KSq4KWN4KSw4KSm4KSw4KWN4KS24KSoIOCkl+CksOCljeCkqOClgeCkueCli+CkuOCljSDgpaRcbiIKKyIgIC1wfC0t4KSb4KS+4KSq4KWN4KSo4KWB4KS54KWL4KS44KWNLeCkieCkquCksuCkrOCljeCkpyA8cGFja2FnZT4gLi4uICAg4KSJ4KSq4KSy4KSs4KWN4KSnIOCkuOCkguCkuOCljeCkleCksOCkoyDgpLXgpL/gpLXgpLDgpKPgpLngpLDgpYIg4KSq4KWN4KSw4KSm4KSw4KWN4KS24KSoIOCkl+CksOCljeCkqOClgeCkueCli+CkuOCljSDgpaRcbiIKKyIgIC1MfC0t4KS44KWC4KSa4KS/IOCkq+CkvuCkh+CksuCkueCksOClgiA8cGFja2FnZT4gLi4uICAgICDgpKrgpY3gpK/gpL7gpJXgpYfgpJzgpLngpLDgpYIg4KSm4KWN4KS14KS+4KSw4KS+IOCkquCljeCksOCkvuCkquCljeCkpCDgpLjgpYLgpJrgpL8g4KSr4KS+4KSH4KSy4KS54KSw4KWCIOClpFxuIgorIiAgLWx8LS3gpLjgpYLgpJrgpL8gWzxwYXR0ZXJuPiAuLi5dICAgICAgICDgpKrgpY3gpK/gpL7gpJXgpYfgpJzgpLngpLDgpYIg4KS44KSC4KSV4KWN4KS34KWH4KSq4KSu4KS+IOCkuOClguCkmuCkvyDgpJfgpLDgpY3gpKjgpYHgpLngpYvgpLjgpY0g4KWkXG4iCisiICAtV3wtLeCkpuClh+CkluCkvuCkieCkqOClgeCkueCli+CkuOCljSA8cGF0dGVybj4gLi4uICAgICAgICAgIOCkquCljeCkr+CkvuCkleClh+CknOCkueCksOClgeCkruCkviDgpLjgpYLgpJrgpKjgpL4g4KSm4KWH4KSW4KS+4KSJ4KSo4KWB4KS54KWL4KS44KWNIOClpFxuIgorIiAgLVN8LS3gpJbgpYvgpJzgpYAg4KSX4KSw4KWN4KSo4KWB4KS54KWL4KS44KWNIDxwYXR0ZXJuPiAuLi4gICAgICAgIOCkq+CkvuCkh+CksuCkueCksOClgiDgpKrgpY3gpLDgpL7gpKrgpY3gpKQg4KSX4KSw4KWN4KSo4KWHIOCkquCljeCkr+CkvuCkleClh+CknOCkueCksOClgiDgpKvgpYfgpLLgpL4g4KSq4KS+4KSw4KWN4KSo4KWB4KS54KWL4KS44KWNICIKKyLgpaRcbiIKKyJcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjM2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hZG1pbmRpcj08ZGlyZWN0b3J5PiAgICAgICAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMuXG4iCisiICAtZnwtLXNob3dmb3JtYXQ9PGZvcm1hdD4gICAgICAgICBVc2UgYWx0ZXJuYXRpdmUgZm9ybWF0IGZvciAtLXNob3cuXG4iCisiXG4iCittc2dzdHIgIiIKKyI6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgICAgICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyIgIC1mfC0tc2hvd2Zvcm1hdD08Zm9ybWF0PiAgICAgICAgIOCkpuClh+CkluCkvuCkieCkqOCkleCliy3gpLLgpL7gpJfgpL8g4KS14KWI4KSV4KSy4KWN4KSq4KS/4KSVIOCkouCkvuCkgeCkmuCkviDgpKrgpY3gpLDgpK/gpYvgpJcg4KSX4KSw4KWN4KSo4KWB4KS54KWL4KS44KWNIOClpFxuIgorIlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo2NDIgZHBrZy1kZWIvbWFpbi5jOjExMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiRm9ybWF0IHN5bnRheDpcbiIKKyIgIEEgZm9ybWF0IGlzIGEgc3RyaW5nIHRoYXQgd2lsbCBiZSBvdXRwdXQgZm9yIGVhY2ggcGFja2FnZS4gVGhlIGZvcm1hdFxuIgorIiAgY2FuIGluY2x1ZGUgdGhlIHN0YW5kYXJkIGVzY2FwZSBzZXF1ZW5jZXMgXFxuIChuZXdsaW5lKSwgXFxyIChjYXJyaWFnZVxuIgorIiAgcmV0dXJuKSBvciBcXFxcIChwbGFpbiBiYWNrc2xhc2gpLiBQYWNrYWdlIGluZm9ybWF0aW9uIGNhbiBiZSBpbmNsdWRlZFxuIgorIiAgYnkgaW5zZXJ0aW5nIHZhcmlhYmxlIHJlZmVyZW5jZXMgdG8gcGFja2FnZSBmaWVsZHMgdXNpbmcgdGhlICR7dmFyWzsiCisid2lkdGhdfVxuIgorIiAgc3ludGF4LiBGaWVsZHMgd2lsbCBiZSByaWdodC1hbGlnbmVkIHVubGVzcyB0aGUgd2lkdGggaXMgbmVnYXRpdmUgaW4gIgorIndoaWNoXG4iCisiICBjYXNlIGxlZnQgYWxpZ25tZW50IHdpbGwgYmUgdXNlZC5cbiIKK21zZ3N0ciAiIgorIuCkouCkvuCkgeCkmuCkvuCkrOCkpuCljeCkpyDgpLXgpL7gpJXgpY3gpK8g4KS44KSC4KSw4KSa4KSo4KS+OlxuIgorIiAg4KSi4KS+4KSB4KSa4KS+IOCkuOCljeCkn+CljeCksOCkv+CkmSDgpLngpYsg4KSc4KWLIOCkquCljeCksOCkpOCljeCkr+Clh+CklSDgpKrgpY3gpK/gpL7gpJXgpYfgpJzgpJXgpYsg4KSy4KS+4KSX4KS/IOCkqOCkv+CksOCljeCkl+CkvuCkpCDgpLngpYHgpKjgpYfgpJsg4KWkIOCkouCkvuCkgeCkmuCkvuCksuClh1xuIgorIiAgIOCkm+Cli+CkoeCkv+Ckj+CkleCkviDgpK7gpL7gpKjgpJUg4KSF4KSo4KWB4KSV4KWN4KSw4KSu4KS54KSw4KWCIFxcbiAobmV3bGluZSksIFxcciAoY2FycmlhZ2VcbiIKKyIgIHJldHVybikg4KS14KS+IFxcXFwgKHBsYWluIGJhY2tzbGFzaCkg4KS44KSu4KS+4KS14KWH4KS2IOCkl+CksOCljeCkqCDgpLjgpJXgpY3gpJsg4KWkIOCkquCljeCkr+CkvuCkleClh+CknCDgpKvgpL7gpIHgpJ/gpLngpLDgpYHgpK7gpL4gJHt2YXJbOyIKKyJ3aWR0aF19IOCkteCkvuCkleCljeCkr+CkuOCkguCksOCkmuCkqOCkviDgpKrgpY3gpLDgpK/gpYvgpJcg4KSX4KSw4KWH4KSwIOCkmuCksiDgpLjgpKjgpY3gpKbgpLDgpY3gpK3gpLngpLDgpYIg4KSY4KWB4KS44KS+4KSP4KSwIOCkuOClguCkmuCkqOCkvuCkueCksOClgiDgpLjgpK7gpL7gpLXgpYfgpLYg4KSX4KSw4KWN4KSoIOCkuOCkleCkv+CkqOCljeCkmyDgpaRcbiIKKyLgpJrgpYzgpKHgpL4g4KSo4KSV4KS+4KSw4KS+4KSk4KWN4KSu4KSVIOCkreCkj+CkpOCkviDgpKrgpKjgpL8g4KSr4KS+4KSB4KSf4KS54KSw4KWCIOCkuOCkueClgCDgpLjgpILgpLLgpJfgpY3gpKgg4KSb4KSo4KWNIOCknOClgeCkqCDgpJXgpYfgpLjgpK7gpL4g4KSb4KWL4KSh4KS/4KSP4KSV4KS+IOCksOClh+CkluCkvuCkueCksOClgiDgpKrgpY3gpLDgpK/gpYvgpJcg4KS54KWB4KSo4KWH4KSb4KSo4KWNICIKKyLgpaQgXG4iCisiXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjY1NgorbXNnaWQgIlVzZSAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgcXVlcnlpbmcgcGFja2FnZXMuIgorbXNnc3RyICIiCisKKyM6IHNyYy9yZW1vdmUuYzo4OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgcmVxdWVzdCB0byByZW1vdmUgJS4yNTBzIHdoaWNoIGlzbid0IGluc3RhbGxlZC4iCittc2dzdHIgImRwa2cgLSDgpJrgpYfgpKTgpL7gpLXgpKjgpYA6ICAlLjI1MHMg4KS54KSf4KS+4KSJ4KSo4KWHIOCkheCkqOClgeCksOCli+CkpyDgpIXgpLXgpJzgpY3gpJ7gpL4g4KSX4KSw4KWN4KSm4KWI4KSbIOCknOClgeCkqCDgpLjgpY3gpKXgpL7gpKrgpL/gpKQg4KSb4KWI4KSoIOClpFxuIgorCisjOiBzcmMvcmVtb3ZlLmM6OTUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpZ25vcmluZyByZXF1ZXN0IHRvIHJlbW92ZSAlLjI1MHMsIG9ubHkgdGhlIGNvbmZpZ1xuIgorIiBmaWxlcyBvZiB3aGljaCBhcmUgb24gdGhlIHN5c3RlbS4gVXNlIC0tcHVyZ2UgdG8gcmVtb3ZlIHRoZW0gdG9vLiIKK21zZ3N0ciAiIgorImRwa2cgLSDgpJrgpYfgpKTgpL7gpLXgpKjgpYA6ICUuMjUwcyDgpLngpJ/gpL7gpIngpKjgpYcg4KSF4KSo4KWB4KSw4KWL4KSnIOCkheCkteCknOCljeCknuCkviDgpJfgpLDgpY3gpKbgpYjgpJssIOCkruCkvuCkpOCljeCksCDgpJXgpKjgpY3gpKvgpL/gpJfgpLBcbiIKKyIg4KSr4KS+4KSH4KSy4KS54KSw4KWCIOCknOClgeCkqCDgpKrgpY3gpLDgpKPgpL7gpLLgpYDgpK7gpL4g4KSb4KSo4KWNIOClpCAgIOCkpOCkv+CkqOCkv+CkueCksOClgeCksuCkvuCkiCDgpKrgpKjgpL8g4KS54KSf4KS+4KSJ4KSoIC0tcHVyZ2Ug4KSV4KWLIOCkquCljeCksOCkr+Cli+CklyDgpJfgpLDgpY3gpKjgpYHgpLngpYvgpLjgpY0g4KWkXG4iCisKKyM6IHNyYy9yZW1vdmUuYzoxMDMKK21zZ2lkICJUaGlzIGlzIGFuIGVzc2VudGlhbCBwYWNrYWdlIC0gaXQgc2hvdWxkIG5vdCBiZSByZW1vdmVkLiIKK21zZ3N0ciAi4KSv4KWLIOCkheCkpOCljeCkr+CkvuCkteCktuCljeCkr+CklSDgpKrgpY3gpK/gpL7gpJXgpYfgpJwg4KS54KWLIC0g4KSv4KS44KSy4KS+4KSIIOCkueCkn+CkvuCkieCkqCDgpLngpYHgpKbgpYjgpKgg4KWkIgorCisjOiBzcmMvcmVtb3ZlLmM6MTI4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBkZXBlbmRlbmN5IHByb2JsZW1zIHByZXZlbnQgcmVtb3ZhbCBvZiAlczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6IOCkqOCkv+CksOCljeCkreCksOCkpOCkvuCkleCliyDgpLjgpK7gpLjgpY3gpK/gpL7gpLLgpYcgJXMg4KSy4KS+4KSHIOCkruClh+Ckn+CljeCkqOCkrOCkvuCknyDgpLDgpYvgpJXgpY3gpK/gpYs6XG4iCisiJXMiCisKKyM6IHNyYy9yZW1vdmUuYzoxMzAKK21zZ2lkICJkZXBlbmRlbmN5IHByb2JsZW1zIC0gbm90IHJlbW92aW5nIgorbXNnc3RyICLgpKjgpL/gpLDgpY3gpK3gpLDgpKTgpL4g4KS44KSu4KS44KWN4KSv4KS+4KS54KSw4KWCIC0g4KS54KSf4KWN4KSm4KWI4KSoIgorCisjOiBzcmMvcmVtb3ZlLmM6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiAlczogZGVwZW5kZW5jeSBwcm9ibGVtcywgYnV0IHJlbW92aW5nIGFueXdheSBhcyB5b3UgcmVxdWVzdGVkOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogJXM6IOCkqOCkv+CksOCljeCkreCksOCkpOCkviDgpLjgpK7gpLjgpY3gpK/gpL7gpLngpLDgpYEsIOCkpOCksCDgpKTgpKrgpL7gpIjgpIHgpJXgpYsg4KSF4KSo4KWB4KSw4KWL4KSn4KSu4KS+IOCknOClhyDgpK3gpI8g4KSq4KSo4KS/IOCkueCkn+CkvuCkieCkpuCliOCkmzpcbiIKKyIlcyIKKworIzogc3JjL3JlbW92ZS5jOjE0MgorbXNnaWQgIiIKKyJQYWNrYWdlIGlzIGluIGEgdmVyeSBiYWQgaW5jb25zaXN0ZW50IHN0YXRlIC0geW91IHNob3VsZFxuIgorIiByZWluc3RhbGwgaXQgYmVmb3JlIGF0dGVtcHRpbmcgYSByZW1vdmFsLiIKK21zZ3N0ciAiIgorIuCkquCljeCkr+CkvuCkleClh+CknCDgpKfgpYfgpLDgpYgg4KSs4KS+4KSd4KS/4KSo4KWHIOCkuOCljeCkpeCkv+CkpOCkv+CkruCkviDgpJsgLSDgpKTgpKrgpL7gpIfgpIHgpLLgpYcg4KS54KSf4KS+4KSJ4KSoIOCkleCli+CktuCkv+CkuCDgpJfgpLDgpY3gpKjgpYEg4KSq4KWC4KSw4KWN4KS1XG4iCisiIOCkr+CkuOCksuCkvuCkiCDgpKrgpYLgpKgg4KS44KWN4KSl4KS+4KSq4KSo4KS+IOCkl+CksOCljeCkqOClgeCkquCksOCljeCkpuCkmyDgpaQiCisKKyM6IHNyYy9yZW1vdmUuYzoxNDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiV291bGQgcmVtb3ZlIG9yIHB1cmdlICVzIC4uLlxuIgorbXNnc3RyICLgpKTgpKrgpL7gpIjgpIHgpLLgpYcg4KS54KSf4KS+4KSJ4KSo4KWB4KS54KWB4KSo4KWN4KSbIOCkleCkvyDgpKrgpLDgpY3gpJwg4KSX4KSw4KWN4KSo4KWB4KS54KWB4KSo4KWN4KSbICVzIC4uLlxuIgorCisjOiBzcmMvcmVtb3ZlLmM6MTU3CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlbW92aW5nICVzIC4uLlxuIgorbXNnc3RyICLgpLngpJ/gpL7gpIngpIHgpKbgpYjgpJsgJXMgLi4uXG4iCisKKyM6IHNyYy9yZW1vdmUuYzoyNzUgc3JjL3JlbW92ZS5jOjM2NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIndoaWxlIHJlbW92aW5nICUuMjUwcywgdW5hYmxlIHRvIHJlbW92ZSBkaXJlY3RvcnkgJyUuMjUwcyc6ICVzIC0gZGlyZWN0b3J5ICIKKyJtYXkgYmUgYSBtb3VudCBwb2ludD8iCittc2dzdHIgIiIKKyJkcGtnIC0g4KSa4KWH4KSk4KS+4KS14KSo4KWAOiAlLjI1MHMg4KS54KSf4KS+4KSJ4KSm4KS+LCBgJS4yNTBzJyDgpKHgpL7gpIfgpLDgpYfgpJXgpY3gpJ/gpLDgpYAg4KS54KSf4KS+4KSJ4KSoIOCkheCkleCljeCkt+CkrjogJXMgLSDgpKHgpL7gpIfgpLDgpYfgpJXgpY3gpJ/gpLDgpYAgIgorIuCkj+CkieCkn+CkviDgpK7gpL7gpIngpKjgpY3gpJ8g4KSs4KS/4KSo4KWN4KSm4KWBIOCkueClgeCkqOCkuOCkleCljeCkmyA/XG4iCisKKyM6IHNyYy9yZW1vdmUuYzoyODkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWN1cmVseSByZW1vdmUgJyUuMjUwcyciCittc2dzdHIgImAlLjI1NXMnIOCkuOCkv+CksOCljeCknOCkqOCkviDgpJfgpLDgpY3gpKgg4KSF4KSV4KWN4KS34KSuIgorCisjOiBzcmMvcmVtb3ZlLmM6MzYxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ3aGlsZSByZW1vdmluZyAlLjI1MHMsIGRpcmVjdG9yeSAnJS4yNTBzJyBub3QgZW1wdHkgc28gbm90IHJlbW92ZWQuIgorbXNnc3RyICIiCisiZHBrZyAtIOCkmuClh+CkpOCkvuCkteCkqOClgDogJS4yNTBzIOCkueCkn+CkvuCkieCkpuCkviwg4KSh4KS+4KSH4KSw4KWH4KSV4KWN4KSf4KSw4KWAIGAlLjI1MHMnIOCksOCkv+CkpOCljeCkpOCliyDgpJvgpYjgpKgg4KSk4KWN4KSv4KS44KWI4KSy4KWHIOCkueCkn+CkvuCkieCkqCDgpLjgpJXgpL/gpI/gpKgg4KWkXG4iCisKKyM6IHNyYy9yZW1vdmUuYzozODMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImNhbm5vdCByZW1vdmUgYCUuMjUwcyciCittc2dpZCAiY2Fubm90IHJlbW92ZSAnJS4yNTBzJyIKK21zZ3N0ciAiYCUuMjUwcycg4KS54KSf4KS+4KSJ4KSoIOCkuOCkleCljeCkpuCliOCkqCIKKworIzogc3JjL3JlbW92ZS5jOjQwOQorIywgYy1mb3JtYXQKK21zZ2lkICJQdXJnaW5nIGNvbmZpZ3VyYXRpb24gZmlsZXMgZm9yICVzIC4uLlxuIgorbXNnc3RyICIgJXMgLi4uIOCkleCkviDgpLLgpL7gpJfgpL8g4KSV4KSo4KWN4KSr4KS/4KSX4KSw4KWH4KS44KSoIOCkq+CkvuCkh+CksuCkueCksOClgiDgpKrgpLDgpY3gpJzgpJfgpLDgpY3gpKbgpYhcbiIKKworIzogc3JjL3JlbW92ZS5jOjQ1OQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVtb3ZlIG9sZCBjb25maWcgZmlsZSBgJS4yNTBzJyAoPSBgJS4yNTBzJykiCittc2dzdHIgIuCkquClgeCksOCkvuCkqOCliyDgpJXgpKjgpY3gpKvgpL/gpJcg4KSr4KS+4KSH4KSyIGAlLjI1MHMnICg9IGAlLjI1MHMnKSDgpLngpJ/gpL7gpIngpKgg4KS44KSV4KWN4KSm4KWI4KSoIgorCisjOiBzcmMvcmVtb3ZlLmM6NDc0CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZWFkIGNvbmZpZyBmaWxlIGRpciBgJS4yNTBzJyAoZnJvbSBgJS4yNTBzJykiCittc2dzdHIgIuCkleCkqOCljeCkq+Ckv+CklyDgpKvgpL7gpIfgpLIg4KSh4KS+4KSH4KSw4KWH4KSV4KWN4KSf4KSw4KWAIGAlLjI1MHMnIChmcm9tIGAlLjI1MHMnKSDgpKrgpKLgpY3gpKgg4KS44KSV4KWN4KSm4KWI4KSoIgorCisjOiBzcmMvcmVtb3ZlLmM6NTEwCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZW1vdmUgb2xkIGJhY2t1cCBjb25maWcgZmlsZSBgJS4yNTBzJyAob2YgYCUuMjUwcycpIgorbXNnc3RyICLgpKrgpYHgpLDgpL7gpKjgpYsg4KSV4KSo4KWN4KSr4KS/4KSXIOCkq+CkvuCkh+CksiBgJS4yNTBzJyAob2YgYCUuMjUwcycpIOCkueCkn+CkvuCkieCkqCDgpLjgpJXgpY3gpKbgpYjgpKgiCisKKyM6IHNyYy9yZW1vdmUuYzo1NjgKK21zZ2lkICJjYW5ub3QgcmVtb3ZlIG9sZCBmaWxlcyBsaXN0IgorbXNnc3RyICLgpKrgpYHgpLDgpL7gpKjgpYsg4KSr4KS+4KSH4KSyIOCkuOClguCkmuClgCDgpLngpJ/gpL7gpIngpKgg4KS44KSV4KWN4KSm4KWI4KSoIgorCisjOiBzcmMvcmVtb3ZlLmM6NTc0Cittc2dpZCAiY2FuJ3QgcmVtb3ZlIG9sZCBwb3N0cm0gc2NyaXB0IgorbXNnc3RyICLgpKrgpYHgpLDgpL7gpKjgpYsgcG9zdHJtIOCkuOCljeCkleCljeCksOCkv+CkquCljeCknyDgpLngpJ/gpL7gpIngpKgg4KS44KSV4KWN4KSm4KWI4KSoIgorCisjOiBzcmMvc2VsZWN0LmM6MTE1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW9mIGluIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICLgpLLgpL7gpIfgpKggJWQg4KSV4KWLIOCkquCljeCkr+CkvuCkleClh+CknCDgpKjgpL7gpK7gpK7gpL4gZW9mIOCkheCkquCljeCksOCkpOCljeCkr+CkvuCkuOCkv+CkpCIKKworIzogc3JjL3NlbGVjdC5jOjExNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBsaW5lIGluIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICLgpLLgpL7gpIfgpKggJWQg4KSV4KWLIOCkquCljeCkr+CkvuCkleClh+CknOCkruCkviDgpIXgpKrgpY3gpLDgpKTgpY3gpK/gpL7gpLjgpL/gpKQg4KSy4KS+4KSH4KSo4KSV4KWLIOCkuOCkruCkvuCkquCljeCkpOClgCIKKworIzogc3JjL3NlbGVjdC5jOjEyMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVvZiBhZnRlciBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZCIKK21zZ3N0ciAi4KSy4KS+4KSH4KSoICVkIOCkleCliyDgpKrgpY3gpK/gpL7gpJXgpYfgpJwg4KSo4KS+4KSuIOCkquCkm+CkvyDgpIXgpKrgpY3gpLDgpKTgpY3gpK/gpL7gpLjgpL/gpKQgZW9mIgorCisjOiBzcmMvc2VsZWN0LmM6MTIzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGxpbmUgYWZ0ZXIgcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQiCittc2dzdHIgIuCksuCkvuCkh+CkqCAlZCDgpJXgpYsg4KSq4KWN4KSv4KS+4KSV4KWH4KScIOCkqOCkvuCkriDgpKrgpJvgpL8g4KSF4KSq4KWN4KSw4KSk4KWN4KSv4KS+4KS44KS/4KSkIOCksuCkvuCkh+CkqOCkleCliyDgpLjgpK7gpL7gpKrgpY3gpKTgpYAiCisKKyM6IHNyYy9zZWxlY3QuYzoxMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBkYXRhIGFmdGVyIHBhY2thZ2UgYW5kIHNlbGVjdGlvbiBhdCBsaW5lICVkIgorbXNnc3RyICLgpLLgpL7gpIfgpKggJWQg4KSu4KS+IOCkquCljeCkr+CkvuCkleClh+CknCDgpLAg4KSa4KSv4KSoIOCkquCkm+CkvyDgpIXgpKrgpY3gpLDgpKTgpY3gpK/gpL7gpLjgpL/gpKQg4KSh4KWH4KSf4KS+IgorCisjOiBzcmMvc2VsZWN0LmM6MTM5CisjLCBjLWZvcm1hdAorbXNnaWQgImlsbGVnYWwgcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQ6ICUuMjUwcyIKK21zZ3N0ciAi4KSy4KS+4KSH4KSoICVkOiAlLjI1MHMg4KSu4KS+IOCkheCkteCliOCkpyDgpKrgpY3gpK/gpL7gpJXgpYfgpJwg4KSo4KS+4KSuIgorCisjOiBzcmMvc2VsZWN0LmM6MTQzCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gd2FudGVkIHN0YXR1cyBhdCBsaW5lICVkOiAlLjI1MHMiCittc2dzdHIgIuCksuCkvuCkh+CkqCAlZDogJS4yNTBzIOCkruCkviDgpIXgpJzgpY3gpJ7gpL7gpKQg4KS14KS44KWN4KSk4KWB4KS44KWN4KSl4KS/4KSk4KS/IOCkmyAiCisKKyM6IHNyYy9zZWxlY3QuYzoxNDkKK21zZ2lkICJyZWFkIGVycm9yIG9uIHN0YW5kYXJkIGlucHV0IgorbXNnc3RyICLgpK7gpL7gpKjgpJUg4KSG4KSX4KSk4KSu4KS+IOCkpOCljeCksOClgeCkn+CkvyDgpKrgpKLgpY3gpKjgpYHgpLngpYvgpLjgpY0iCisKKyM6IHNyYy9zdGF0Y21kLmM6NTIKK21zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IG92ZXJyaWRpbmcgZmlsZSBzdGF0IGluZm9ybWF0aW9uLiIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGNtZC5jOjYxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29weXJpZ2h0IChDKSAyMDAwLCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDA2LTIwMDkgR3VpbGxlbSBKb3Zlci5cbiIKK21zZ3N0ciAiIgorIlxuIgorIuCkquCljeCksOCkpOCkv+CksuCkv+CkquCkvyDgpIXgpKfgpL/gpJXgpL7gpLAgKOCkuOClgCkg4KWn4KWv4KWv4KWrIOCkh+Ckr+CkvuCkqCDgpJzgpY3gpK/gpL7gpJXgpY3gpLjgpKhcbiIKKyLgpKrgpY3gpLDgpKTgpL/gpLLgpL/gpKrgpL8g4KSF4KSn4KS/4KSV4KS+4KSwICjgpLjgpYApIOClqOClpuClpuClpi3gpajgpabgpabgpagg4KS14KS/4KSa4KS+4KSw4KWN4KShIOCkheCkleCksOCljeCkruCljeCkr+CkvuCkqCIKKworIzogc3JjL3N0YXRjbWQuYzo4MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtLWFkZCA8b3duZXI+IDxncm91cD4gPG1vZGU+IDxmaWxlPlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGFkZCBhIG5ldyBlbnRyeSBpbnRvIHRoZSBkYXRhYmFzZS5cbiIKKyIgIC0tcmVtb3ZlIDxmaWxlPiAgICAgICAgICByZW1vdmUgZmlsZSBmcm9tIHRoZSBkYXRhYmFzZS5cbiIKKyIgIC0tbGlzdCBbPGdsb2ItcGF0dGVybj5dICBsaXN0IGN1cnJlbnQgb3ZlcnJpZGVzIGluIHRoZSBkYXRhYmFzZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGNtZC5jOjg5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICBzZXQgdGhlIGRpcmVjdG9yeSB3aXRoIHRoZSBzdGF0b3ZlcnJpZGUgZmlsZS5cbiIKKyIgIC0tdXBkYXRlICAgICAgICAgICAgICAgICBpbW1lZGlhdGVseSB1cGRhdGUgZmlsZSBwZXJtaXNzaW9ucy5cbiIKKyIgIC0tZm9yY2UgICAgICAgICAgICAgICAgICBmb3JjZSBhbiBhY3Rpb24gZXZlbiBpZiBhIHNhbml0eSBjaGVjayBmYWlscy5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBxdWlldCBvcGVyYXRpb24sIG1pbmltYWwgb3V0cHV0LlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIuCkieCkquCkr+Cli+CklzogJXMgWzxvcHRpb24+IC4uLl0gPGNvbW1hbmQ+XG4iCisiXG4iCisi4KSG4KSm4KWH4KS2OlxuIgorIiAgLS1hZGQgPG93bmVyPiA8Z3JvdXA+IDxtb2RlPiA8ZmlsZT5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICDgpKHgpL7gpJ/gpL7gpKzgpYfgpLjgpK7gpL4g4KSo4KSv4KS+4KSBIOCkquCljeCksOCkteCkv+Ckt+CljeCkn+CkvyDgpKXgpKrgpY3gpKjgpYHgpLngpYvgpLjgpY0g4KWkXG4iCisiICAtLXJlbW92ZSA8ZmlsZT4gICAgICAgICAg4KSh4KS+4KSf4KS+4KSs4KWH4KWH4KS44KSs4KS+4KSfIOCkq+CkvuCkh+CksiDgpLngpJ/gpL7gpIngpKjgpYHgpLngpYvgpLjgpY0g4KWkXG4iCisiICAtLWxpc3QgWzxnbG9iLXBhdHRlcm4+XSAg4KSh4KS+4KSf4KS+4KSs4KWH4KS44KSu4KS+IOCkueCkvuCksuCliOCkleCliyDgpIXgpKbgpY3gpK/gpL7gpLXgpKfgpL/gpJUg4KS44KWC4KSa4KWAXG4iCisiXG4iCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICBzdGF0b3ZlcnJpZGUg4KSr4KS+4KSH4KSy4KS44KSB4KSXIOCkoeCkvuCkh+CksOClh+CkleCljeCkn+CksOClgCDgpLjgpYfgpJ8g4KSX4KSw4KWN4KSo4KWB4KS54KWL4KS44KWNIOClpFxuIgorIiAgLS11cGRhdGUgICAgICAgICAgICAgICAgIOCkq+CkvuCkh+CksiDgpIXgpKjgpYHgpK7gpKTgpL8g4KSk4KSk4KWN4KSV4KS+4KSy4KWIIOCkheCkpuCljeCkr+CkvuCkteCkp+Ckv+CklSDgpJfgpLDgpY3gpKjgpYHgpLngpYvgpLjgpY0g4KWkXG4iCisiICAtLWZvcmNlICAgICAgICAgICAgICAgICAg4KSv4KSm4KS/IOCkteCkv+CkteClh+CkleClgCDgpJzgpL7gpIHgpJog4KSF4KS44KSr4KSyIOCkreCkj+CkruCkviDgpJXgpL7gpLDgpY3gpK8g4KSs4KSyIOCkl+CksOCljeCkqOClgeCkueCli+CkuOCljSDgpaRcbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICDgpLbgpL7gpKjgpY3gpKQg4KS44KSe4KWN4KSa4KS+4KSy4KSoLCDgpKjgpY3gpK/gpYLgpKjgpKTgpK4g4KSo4KS/4KSw4KWN4KSX4KSkXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAg4KSu4KSm4KWN4KSm4KSkIOCkuOCkqOCljeCkpuClh+CktiDgpKbgpYfgpJbgpL7gpIngpKjgpYHgpLngpYvgpLjgpY0g4KWkXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAg4KS44KSC4KS44KWN4KSV4KSw4KSjIOCkpuClh+CkluCkvuCkieCkqOClgeCkueCli+CkuOCljSDgpaRcbiIKKworIzogc3JjL3N0YXRjbWQuYzoxMTYKK21zZ2lkICJzdHJpcHBpbmcgdHJhaWxpbmcgLyIKK21zZ3N0ciAi4KSF4KSo4KS+4KS14KWD4KSkIOCkn+CljeCksOClh+CksuCkv+CkmSIKKworIzogc3JjL3N0YXRjbWQuYzoyMDcKKyMsIGZ1enp5Cittc2dpZCAiY2Fubm90IG9wZW4gbmV3IHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICLgpKjgpK/gpL7gpIEgc3RhdG92ZXJyaWRlIOCkq+CkvuCkh+CksiDgpJbgpYvgpLLgpY3gpKgg4KSF4KS44KSr4KSyOiAlcyIKKworIzogc3JjL3N0YXRjbWQuYzoyMjIKKyMsIGZ1enp5Cittc2dpZCAiZXJyb3IgcmVtb3Zpbmcgc3RhdG92ZXJyaWRlLW9sZCIKK21zZ3N0ciAi4KSq4KWB4KSw4KS+4KSo4KWLIHN0YXRvdmVycmlkZSDgpLngpJ/gpL7gpIngpKgg4KSk4KWN4KSw4KWB4KSf4KS/OiVzIgorCisjOiBzcmMvc3RhdGNtZC5jOjIyNAorIywgZnV6enkKK21zZ2lkICJlcnJvciBjcmVhdGluZyBuZXcgc3RhdG92ZXJyaWRlLW9sZCIKK21zZ3N0ciAi4KSo4KSv4KS+4KSBIHN0YXRvdmVycmlkZSDgpLjgpL/gpLDgpY3gpJzgpKjgpL4g4KSX4KSw4KWN4KSm4KS+IOCkpOCljeCksOClgeCkn+CkvzogJXMiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjI2CisjLCBmdXp6eQorbXNnaWQgImVycm9yIGluc3RhbGxpbmcgbmV3IHN0YXRvdmVycmlkZSIKK21zZ3N0ciAi4KSo4KSv4KS+4KSBIHN0YXRvdmVycmlkZSDgpLjgpY3gpKXgpL7gpKrgpKjgpL4g4KSk4KWN4KSw4KWB4KSf4KS/OiAlcyIKKworIzogc3JjL3N0YXRjbWQuYzoyNDYKK21zZ2lkICItLWFkZCBuZWVkcyBmb3VyIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS3gpIbgpLXgpLbgpY3gpK/gpJUg4KSa4KS+4KSwIOCkpOCksOCljeCklSDgpKXgpKrgpY3gpKjgpYHgpLngpYvgpLjgpY0iCisKKyM6IHNyYy9zdGF0Y21kLmM6MjU2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiQW4gb3ZlcnJpZGUgZm9yICclcycgYWxyZWFkeSBleGlzdHMsIGJ1dCAtLWZvcmNlIHNwZWNpZmllZCBzbyB3aWxsIGJlICIKKyJpZ25vcmVkLiIKK21zZ3N0ciAi4KSk4KSwLS3gpKjgpL/gpLDgpY3gpKbgpL/gpLfgpY3gpJ8g4KSs4KSyIOCkpOCljeCkr+CkuOCliCDgpJXgpL7gpLDgpKPgpLLgpYgg4KSJ4KSq4KWH4KSV4KWN4KS34KS+IOCkl+CksOCkv+CkqOClh+CkmyDgpaQiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjYwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJBbiBvdmVycmlkZSBmb3IgJyVzJyBhbHJlYWR5IGV4aXN0cywgYWJvcnRpbmcuIgorbXNnc3RyICJcIiVzXCLgpJXgpL4g4KSy4KS+4KSX4KS/IOCkheCkp+Ckv+CksuClh+CkluCkqCDgpKrgpLngpL/gpLLgpYcg4KSo4KWIIOCkheCkteCkuOCljeCkpeCkv+CkpCDgpJssIgorCisjOiBzcmMvc3RhdGNtZC5jOjI3MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiLS11cGRhdGUgZ2l2ZW4gYnV0ICVzIGRvZXMgbm90IGV4aXN0IgorbXNnc3RyICLgpJrgpYfgpKTgpL7gpLXgpKjgpYAtLeCkheCkpuCljeCkr+CkvuCkteCkp+Ckv+CklSDgpKbgpL/gpIfgpI/gpJXgpYsg4KSbIOCkpOCksCAlcyDgpIXgpLXgpLjgpY3gpKXgpL/gpKQg4KSb4KWI4KSoIgorCisjOiBzcmMvc3RhdGNtZC5jOjI5NgorbXNnaWQgIk5vIG92ZXJyaWRlIHByZXNlbnQuIgorbXNnc3RyICLgpIXgpKfgpL/gpLLgpYfgpJbgpKgg4KSF4KS14KS44KWN4KSl4KS/4KSkIOCkm+CliOCkqCIKKworIzogc3JjL3N0YXRjbWQuYzozMDQKKyMsIGZ1enp5Cittc2dpZCAiLS11cGRhdGUgaXMgdXNlbGVzcyBmb3IgLS1yZW1vdmUiCittc2dzdHIgIuCkmuClh+CkpOCkvuCkteCkqOClgDotLeCkueCkn+CkvuCkieCkqC0t4KSF4KSm4KWN4KSv4KS+4KS14KSn4KS/4KSVIOCkieCkquCkr+Cli+Ckl+CkvyDgpJvgpYjgpKgiCisKKyM6IHNyYy9zdGF0ZGIuYzo1OQorIywgZnV6enkKK21zZ2lkICJzeW50YXggZXJyb3I6IGludmFsaWQgdWlkIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICLgpKjgpK/gpL7gpIEgc3RhdG92ZXJyaWRlIOCkuOCljeCkpeCkvuCkquCkqOCkviDgpKTgpY3gpLDgpYHgpJ/gpL86ICVzIgorCisjOiBzcmMvc3RhdGRiLmM6NjQKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yOiB1bmtub3duIHVzZXIgJyVzJyBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGRiLmM6ODMKKyMsIGZ1enp5Cittc2dpZCAic3ludGF4IGVycm9yOiBpbnZhbGlkIGdpZCBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAi4KSo4KSv4KS+4KSBIHN0YXRvdmVycmlkZSDgpLjgpY3gpKXgpL7gpKrgpKjgpL4g4KSk4KWN4KSw4KWB4KSf4KS/OiAlcyIKKworIzogc3JjL3N0YXRkYi5jOjg4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3I6IHVua25vd24gZ3JvdXAgJyVzJyBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAic3RhdG92ZXJyaWRlIOCkq+CkvuCkh+CksiDgpJbgpYvgpLLgpY3gpKgg4KSF4KS44KSr4KSyIgorCisjOiBzcmMvc3RhdGRiLmM6MTA0CisjLCBmdXp6eQorbXNnaWQgInN5bnRheCBlcnJvcjogaW52YWxpZCBtb2RlIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJzdGF0b3ZlcnJpZGUg4KSr4KS+4KSH4KSyIOCkluCli+CksuCljeCkqCDgpIXgpLjgpKvgpLIiCisKKyM6IHNyYy9zdGF0ZGIuYzoxMjcKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAic3RhdG92ZXJyaWRlIOCkq+CkvuCkh+CksiDgpJbgpYvgpLLgpY3gpKgg4KSF4KS44KSr4KSyIgorCisjOiBzcmMvc3RhdGRiLmM6MTM0Cittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJzdGF0b3ZlcnJpZGUg4KSr4KS+4KSH4KSyIGZzdGF0IOCkl+CksOCljeCkqCDgpIXgpLjgpKvgpLIiCisKKyM6IHNyYy9zdGF0ZGIuYzoxMzcKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgcHJldmlvdXMgc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIuCkheCkmOCkv+CksuCljeCksuCliyBzdGF0b3ZlcnJpZGUg4KSr4KS+4KSH4KSyIGZzdGF0IOCkl+CksOCljeCkqCDgpIXgpLjgpKvgpLIiCisKKyM6IHNyYy9zdGF0ZGIuYzoxNjIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInN0YXRvdmVycmlkZSBmaWxlIGAlLjI1MHMnIgorbXNnaWQgInJlYWRpbmcgc3RhdG92ZXJyaWRlIGZpbGUgJyUuMjUwcyciCittc2dzdHIgInN0YXRvdmVycmlkZSDgpKvgpL7gpIfgpLIgYCUuMjUwcyciCisKKyM6IHNyYy9zdGF0ZGIuYzoxNjkKKyMsIGZ1enp5Cittc2dpZCAic3RhdG92ZXJyaWRlIGZpbGUgaXMgbWlzc2luZyBmaW5hbCBuZXdsaW5lIgorbXNnc3RyICJzdGF0b3ZlcnJpZGUg4KSr4KS+4KSH4KSy4KSy4KWHIOCksOCkv+CkpOCljeCkpOCliyDgpLLgpL7gpIfgpKgg4KS44KSu4KS+4KS14KWH4KS2IOCkl+CksOCljeCkpuCkmyIKKworIzogc3JjL3N0YXRkYi5jOjE3MworbXNnaWQgInN0YXRvdmVycmlkZSBmaWxlIGNvbnRhaW5zIGVtcHR5IGxpbmUiCittc2dzdHIgInN0YXRvdmVycmlkZSDgpKvgpL7gpIfgpLLgpLLgpYcg4KSw4KS/4KSk4KWN4KSk4KWLIOCksuCkvuCkh+CkqCDgpLjgpK7gpL7gpLXgpYfgpLYg4KSX4KSw4KWN4KSm4KSbIgorCisjOiBzcmMvc3RhdGRiLmM6MTc4IHNyYy9zdGF0ZGIuYzoxOTAgc3JjL3N0YXRkYi5jOjIwMgorIywgZnV6enkKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgInN0YXRvdmVycmlkZSDgpKvgpL7gpIfgpLIg4KSW4KWL4KSy4KWN4KSoIOCkheCkuOCkq+CksiIKKworIzogc3JjL3N0YXRkYi5jOjE4NiBzcmMvc3RhdGRiLmM6MTk4IHNyYy9zdGF0ZGIuYzoyMTAKKyMsIGZ1enp5Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgbGluZSBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAi4KSy4KS+4KSH4KSoICVkIOCkleCliyDgpKrgpY3gpK/gpL7gpJXgpYfgpJzgpK7gpL4g4KSF4KSq4KWN4KSw4KSk4KWN4KSv4KS+4KS44KS/4KSkIOCksuCkvuCkh+CkqOCkleCliyDgpLjgpK7gpL7gpKrgpY3gpKTgpYAiCisKKyM6IHNyYy9zdGF0ZGIuYzoyMTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIm11bHRpcGxlIHN0YXR1c292ZXJyaWRlcyBwcmVzZW50IGZvciBmaWxlICclLjI1MHMnIgorbXNnc3RyICJzdGF0b3ZlcnJpZGUg4KSr4KS+4KSH4KSyIGAlLjI1MHMnIgorCisjOiBzcmMvdHJpZ2NtZC5jOjQ2CisjLCBmdXp6eQorbXNnaWQgIlR5cGUgZHBrZy10cmlnZ2VyIC0taGVscCBmb3IgaGVscCBhYm91dCB0aGlzIHV0aWxpdHkuIgorbXNnc3RyICLgpK7gpKbgpY3gpKbgpKTgpJXgpYsg4KSy4KS+4KSX4KS/IGRwa2ctc3BsaXQgLS1oZWxwIOCkn+CkvuCkh+CkqiDgpJfgpLDgpY3gpKjgpYHgpLngpYvgpLjgpY0iCisKKyM6IHNyYy90cmlnY21kLmM6NTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiAlcyBwYWNrYWdlIHRyaWdnZXIgdXRpbGl0eSB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICLgpKHgpYfgpKzgpL/gpK/gpKggYCVzJyDgpKrgpY3gpK/gpL7gpJXgpYfgpJwg4KS14KWN4KSv4KS14KS44KWN4KSl4KS+4KSq4KSoIOCkleCkvuCksOCljeCkr+CkleCljeCksOCkriDgpKrgpY3gpLDgpLbgpY3gpKgg4KSJ4KSq4KSV4KSw4KSjXG4iCisKKyM6IHNyYy90cmlnY21kLmM6NjcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJVc2FnZTogJXMgWzxvcHRpb25zPiAuLi5dIDx0cmlnZ2VyLW5hbWU+XG4iCisiICAgICAgICVzIFs8b3B0aW9ucz4gLi4uXSA8Y29tbWFuZD5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIuCkieCkquCkr+Cli+CklzogJXMgWzxvcHRpb24+IC4uLl0gPGNvbW1hbmQ+XG4iCisiXG4iCisKKyM6IHNyYy90cmlnY21kLmM6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLS1jaGVjay1zdXBwb3J0ZWQgICAgICAgICAgICAgICAgQ2hlY2sgaWYgdGhlIHJ1bm5pbmcgZHBrZyBzdXBwb3J0cyAiCisidHJpZ2dlcnMuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogc3JjL3RyaWdjbWQuYzo4MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorIiAgLS1ieS1wYWNrYWdlPTxwYWNrYWdlPiAgICAgICAgICAgT3ZlcnJpZGUgdHJpZ2dlciBhd2FpdGVyIChub3JtYWxseSBzZXRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnkgZHBrZykuXG4iCisiICAtLW5vLWF3YWl0ICAgICAgICAgICAgICAgICAgICAgICBObyBwYWNrYWdlIG5lZWRzIHRvIGF3YWl0IHRoZSAiCisicHJvY2Vzc2luZy5cbiIKKyIgIC0tbm8tYWN0ICAgICAgICAgICAgICAgICAgICAgICAgIEp1c3QgdGVzdCAtIGRvbid0IGFjdHVhbGx5IGNoYW5nZSAiCisiYW55dGhpbmcuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogc3JjL3RyaWdjbWQuYzoxNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IHRyaWdnZXJzIGRhdGEgZGlyZWN0b3J5IG5vdCB5ZXQgY3JlYXRlZFxuIgorbXNnc3RyICIiCisKKyM6IHNyYy90cmlnY21kLmM6MTU2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB0cmlnZ2VyIHJlY29yZHMgbm90IHlldCBpbiBleGlzdGVuY2VcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIwNQorIywgZnV6enkKK21zZ2lkICJ0YWtlcyBvbmUgYXJndW1lbnQsIHRoZSB0cmlnZ2VyIG5hbWUiCittc2dzdHIgIi0tJXMg4KSy4KWHIOCkj+CklSDgpK7gpL7gpKTgpY3gpLAgKC5kZWIg4KSr4KS+4KSH4KSy4KSo4KS+4KSuKSDgpKTgpLDgpY3gpJUg4KSy4KS/4KSo4KWN4KSbIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIxMAorbXNnaWQgIm11c3QgYmUgY2FsbGVkIGZyb20gYSBtYWludGFpbmVyIHNjcmlwdCAob3Igd2l0aCBhIC0tYnktcGFja2FnZSBvcHRpb24pIgorbXNnc3RyICIiCisKKyM6IHNyYy90cmlnY21kLmM6MjE1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJpbGxlZ2FsIGF3YWl0ZWQgcGFja2FnZSBuYW1lICclLjI1MHMnOiAlLjI1MHMiCittc2dzdHIgImAlcycg4KSr4KS+4KSB4KSfLCDgpIXgpLXgpYjgpKcg4KSq4KWN4KSv4KS+4KSV4KWH4KScIOCkqOCkvuCkriBgJS4yNTVzJzogJXMiCisKKyM6IHNyYy90cmlnY21kLmM6MjIxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHRyaWdnZXIgbmFtZSBgJS4yNTBzJzogJS4yNTBzIgorbXNnc3RyICJgJXMnIOCkq+CkvuCkgeCknywg4KSF4KS14KWI4KSnIOCkquCljeCkr+CkvuCkleClh+CknCDgpKjgpL7gpK4gYCUuMjU1cyc6ICVzIgorCisjOiBzcmMvdHJpZ3Byb2MuYzoyNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBjeWNsZSBmb3VuZCB3aGlsZSBwcm9jZXNzaW5nIHRyaWdnZXJzOlxuIgorIiBjaGFpbiBvZiBwYWNrYWdlcyB3aG9zZSB0cmlnZ2VycyBhcmUgb3IgbWF5IGJlIHJlc3BvbnNpYmxlOlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy90cmlncHJvYy5jOjI1OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiIHBhY2thZ2VzJyBwZW5kaW5nIHRyaWdnZXJzIHdoaWNoIGFyZSBvciBtYXkgYmUgdW5yZXNvbHZhYmxlOlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy90cmlncHJvYy5jOjI4MQorbXNnaWQgInRyaWdnZXJzIGxvb3BpbmcsIGFiYW5kb25lZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvdHJpZ3Byb2MuYzozMTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIlByb2Nlc3NpbmcgdHJpZ2dlcnMgZm9yICVzIC4uLlxuIgorbXNnc3RyICIgJXMgLi4uIOCkleCkviDgpLLgpL7gpJfgpL8g4KSV4KSo4KWN4KSr4KS/4KSX4KSw4KWH4KS44KSoIOCkq+CkvuCkh+CksuCkueCksOClgiDgpKrgpLDgpY3gpJzgpJfgpLDgpY3gpKbgpYhcbiIKKworIzogc3JjL3VwZGF0ZS5jOjUyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICItLSVzIG5lZWRzIGV4YWN0bHkgb25lIFBhY2thZ2VzIGZpbGUgYXJndW1lbnQiCittc2dpZCAiLS0lcyBuZWVkcyBleGFjdGx5IG9uZSBQYWNrYWdlcy1maWxlIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIOCksuCkvuCkiCDgpK/gpKXgpL7gpLDgpY3gpKXgpK7gpL4g4KSP4KSJ4KSf4KS+IOCkquCljeCkr+CkvuCkleClh+CknCDgpKvgpL7gpIfgpLIg4KSk4KSw4KWN4KSVIOCkhuCkteCktuCljeCkr+CklSDgpKrgpLDgpY3gpKbgpJsiCisKKyM6IHNyYy91cGRhdGUuYzo2MgorbXNnaWQgInVuYWJsZSB0byBhY2Nlc3MgZHBrZyBzdGF0dXMgYXJlYSBmb3IgYnVsayBhdmFpbGFibGUgdXBkYXRlIgorbXNnc3RyICJidWxrIOCkieCkquCksuCkrOCljeCkpyDgpIXgpKbgpY3gpK/gpL7gpLXgpKfgpL/gpJXgpJXgpL4g4KSy4KS+4KSX4KS/IGRwa2cg4KS44KWN4KSl4KS/4KSk4KS/IOCkleCljeCkt+Clh+CkpOCljeCksCDgpKrgpLngpYHgpIHgpJog4KSX4KSw4KWN4KSoIOCkheCkleCljeCkt+CkriIKKworIzogc3JjL3VwZGF0ZS5jOjY0Cittc2dpZCAiYnVsayBhdmFpbGFibGUgdXBkYXRlIHJlcXVpcmVzIHdyaXRlIGFjY2VzcyB0byBkcGtnIHN0YXR1cyBhcmVhIgorbXNnc3RyICJidWxrIOCkieCkquCksuCkrOCljeCkpyDgpIXgpKbgpY3gpK/gpL7gpLXgpKfgpL/gpJXgpLLgpL7gpIggZHBrZyDgpLjgpY3gpKXgpL/gpKTgpL8g4KSV4KWN4KS34KWH4KSk4KWN4KSw4KSu4KS+IOCksuClh+CkluCljeCkryDgpKrgpLngpYHgpIHgpJog4KSG4KS14KS24KWN4KSv4KSVIOCkquCksOCljeCkpuCkmyIKKworIzogc3JjL3VwZGF0ZS5jOjcxCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlcGxhY2luZyBhdmFpbGFibGUgcGFja2FnZXMgaW5mbywgdXNpbmcgJXMuXG4iCittc2dzdHIgIiVzIOCkquCljeCksOCkr+Cli+CklyDgpJfgpLDgpY3gpKbgpYgsIOCkieCkquCksuCkrOCljeCkpyDgpKrgpY3gpK/gpL7gpJXgpYfgpJzgpJXgpL4g4KS44KWC4KSa4KSo4KS+IOCkquCljeCksOCkpOCkv+CkuOCljeCkpeCkvuCkquCkqCDgpJfgpLDgpY3gpKbgpYgg4KWkXG4iCisKKyM6IHNyYy91cGRhdGUuYzo3NAorIywgYy1mb3JtYXQKK21zZ2lkICJVcGRhdGluZyBhdmFpbGFibGUgcGFja2FnZXMgaW5mbywgdXNpbmcgJXMuXG4iCittc2dzdHIgIiVzIOCkquCljeCksOCkr+Cli+CklyDgpJfgpLDgpY3gpKbgpYgsIOCkieCkquCksuCkrOCljeCkpyDgpKrgpY3gpK/gpL7gpJXgpYfgpJwg4KS44KWC4KSa4KSo4KS+4KS54KSw4KWCIOCkheCkpuCljeCkr+CkvuCkteCkp+Ckv+CklSDgpJfgpLDgpY3gpKbgpYgg4KWkXG4iCisKKyM6IHNyYy91cGRhdGUuYzoxMDEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIkluZm9ybWF0aW9uIGFib3V0ICVkIHBhY2thZ2Uocykgd2FzIHVwZGF0ZWQuXG4iCittc2dpZCAiSW5mb3JtYXRpb24gYWJvdXQgJWQgcGFja2FnZSB3YXMgdXBkYXRlZC5cbiIKK21zZ2lkX3BsdXJhbCAiSW5mb3JtYXRpb24gYWJvdXQgJWQgcGFja2FnZXMgd2FzIHVwZGF0ZWQuXG4iCittc2dzdHJbMF0gIiVkIOCkquCljeCkr+CkvuCkleClh+CknCjgpLngpLDgpYIpIOCkrOCkvuCksOClh+CkleCliyDgpLjgpYLgpJrgpKjgpL4g4KSF4KSm4KWN4KSv4KS+4KS14KSn4KS/4KSVIOCkl+CksOCkv+Ckr+CliyDgpaRcbiIKK21zZ3N0clsxXSAiJWQg4KSq4KWN4KSv4KS+4KSV4KWH4KScKOCkueCksOClgikg4KSs4KS+4KSw4KWH4KSV4KWLIOCkuOClguCkmuCkqOCkviDgpIXgpKbgpY3gpK/gpL7gpLXgpKfgpL/gpJUg4KSX4KSw4KS/4KSv4KWLIOClpFxuIgorCisjOiBzcmMvdXBkYXRlLmM6MTE1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJvYnNvbGV0ZSAnLS0lcycgb3B0aW9uLCB1bmF2YWlsYWJsZSBwYWNrYWdlcyBhcmUgYXV0b21hdGljYWxseSBjbGVhbmVkIHVwLiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIG5hbWUgJyUuNTBzLi4uJyBpcyB0b28gbG9uZyIKK21zZ3N0ciAi4KSr4KS+4KSH4KSyIOCkqOCkvuCkriAnJS41MHMuLi4nIOCkp+Clh+CksOCliCDgpLLgpL7gpK7gpYsg4KSbIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjEyOQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgZmlsZSBuYW1lICclLjI1MHMnIgorbXNnc3RyICLgpLjgpY3gpLDgpYvgpKQg4KSr4KS+4KSH4KSyIGAlLjI1MHMnIOCkluCli+CksuCljeCkqCDgpIXgpJXgpY3gpLfgpK4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTg5CisjLCBmdXp6eQorbXNnaWQgInVuYWJsZSB0byBzdGF0IGNvbnRyb2wgZGlyZWN0b3J5IgorbXNnc3RyICLgpIXgpLjgpY3gpKXgpL7gpK/gpYAg4KSo4KS/4KSv4KSo4KWN4KSk4KWN4KSw4KSjIOCkoeCkvuCkh+CksOClh+CkleCljeCkn+CksOClgCDgpJbgpYvgpLLgpY3gpKgg4KSF4KSV4KWN4KS34KSuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjE5MQorIywgZnV6enkKK21zZ2lkICJjb250cm9sIGRpcmVjdG9yeSBpcyBub3QgYSBkaXJlY3RvcnkiCittc2dzdHIgIuCkuOClguCkmuCkqOCkviDgpKHgpL7gpIfgpLDgpYfgpJXgpY3gpJ/gpLDgpYAg4KSq4KSi4KWN4KSoIOCkuOCkleCljeCkpuCliOCkqCIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoxOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29udHJvbCBkaXJlY3RvcnkgaGFzIGJhZCBwZXJtaXNzaW9ucyAlMDNsbyAobXVzdCBiZSA+PTA3NTUgYW5kIDw9MDc3NSkiCittc2dzdHIgIuCkqOCkv+Ckr+CkqOCljeCkpOCljeCksOCkoyDgpKHgpL7gpIfgpLDgpYfgpJXgpY3gpJ/gpLDgpYDgpK7gpL4g4KSW4KSw4KS+4KSsIOCkheCkqOClgeCkruCkpOCkv+CkueCksOClgiAlMDNsbyDgpJvgpKjgpY0o4KS54KWB4KSoIOCkquCksOCljeCkqOClhyA+PTA3NTUg4KSwIDw9MDc3NSkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjA0CisjLCBjLWZvcm1hdAorbXNnaWQgIm1haW50YWluZXIgc2NyaXB0IGAlLjUwcycgaXMgbm90IGEgcGxhaW4gZmlsZSBvciBzeW1saW5rIgorbXNnc3RyICLgpK7gpLDgpY3gpK7gpKQg4KSX4KSw4KWN4KSo4KWHIOCkuOCljeCkleCljeCksOCkv+CkquCljeCknyBgJS41MHMnIOCkj+CkieCkn+CkviDgpLjgpL7gpKbgpL4g4KS44KS/4KSu4KSy4KS/4KSZ4KWN4KSVIOCkteCkviDgpKvgpL7gpIfgpLIg4KS54KWL4KSH4KSoIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjIwNworIywgYy1mb3JtYXQKK21zZ2lkICIiCisibWFpbnRhaW5lciBzY3JpcHQgYCUuNTBzJyBoYXMgYmFkIHBlcm1pc3Npb25zICUwM2xvIChtdXN0IGJlID49MDU1NSBhbmQgIgorIjw9MDc3NSkiCittc2dzdHIgIiIKKyLgpK7gpLDgpY3gpK7gpKQg4KSX4KSw4KWN4KSo4KWHIOCkuOCljeCkleCljeCksOCkv+CkquCljeCknyBgJS41MHMnIOCkuOCkguCklyDgpJbgpLDgpL7gpKwg4KSF4KSo4KWB4KSu4KSk4KS/4KS54KSw4KWCICUwM2xvIOCkm+CkqOCljSAo4KS54KWB4KSo4KWB4KSq4KSw4KWN4KSo4KWHID49MDU1NSDgpLAgPD0wNzc1KSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAibWFpbnRhaW5lciBzY3JpcHQgYCUuNTBzJyBpcyBub3Qgc3RhdHRhYmxlIgorbXNnc3RyICLgpK7gpLDgpY3gpK7gpKQg4KSX4KSw4KWN4KSo4KWHIOCkuOCljeCkleCljeCksOCkv+CkquCljeCknyBgJS41MHMnIOCkuOCljeCkpeCkv+CksCDgpJvgpYjgpKgiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjM3Cittc2dpZCAiZXJyb3Igb3BlbmluZyBjb25mZmlsZXMgZmlsZSIKK21zZ3N0ciAi4KSV4KSo4KWN4KSr4KSr4KS+4KSH4KSyIOCkq+CkvuCkh+CksiDgpJbgpYvgpLLgpY3gpKbgpL4g4KSk4KWN4KSw4KWB4KSf4KS/IgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI0NgorbXNnaWQgImVtcHR5IHN0cmluZyBmcm9tIGZnZXRzIHJlYWRpbmcgY29uZmZpbGVzIgorbXNnc3RyICJmZ2V0cyDgpKrgpKLgpY3gpKjgpYcg4KSV4KSo4KWN4KSr4KSr4KS+4KSH4KSy4KS54KSw4KWC4KSs4KS+4KSfIOCksOCkv+CkpOCljeCkpOCliyDgpLjgpY3gpJ/gpY3gpLDgpL/gpJngpY0iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjUxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBuYW1lICclLjUwcy4uLicgaXMgdG9vIGxvbmcsIG9yIG1pc3NpbmcgZmluYWwgbmV3bGluZSIKK21zZ3N0ciAiIgorIuCkmuClh+CkpOCkvuCkteCkqOClgCwg4KSV4KSo4KWN4KSr4KSr4KS+4KSH4KSyIOCkqOCkvuCkriBgJS41MHMuLi4nIOCkp+Clh+CksOCliCDgpLLgpL7gpK7gpYsg4KSbLCDgpLXgpL4g4KSF4KSo4KWN4KSk4KS/4KSuIOCkqOCkr+CkvuCkgeCksuCkvuCkh+CkqCDgpLngpLDgpL7gpIfgpLDgpLngpYfgpJXgpYsg4KSbIFxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI2NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgZmlsZW5hbWUgJyVzJyBjb250YWlucyB0cmFpbGluZyB3aGl0ZSBzcGFjZXMiCittc2dzdHIgIuCkmuClh+CkpOCkvuCkteCkqOClgCwg4KSV4KSo4KWN4KSr4KSr4KS+4KSH4KSyIGAlcyfgpLLgpYcg4KS44KWH4KSk4KWLIOCkluCkvuCksuClgOCkuOCljeCkpeCkvuCkqCDgpKrgpJvgpY3gpK/gpL7gpIngpKjgpYcg4KS44KSu4KS+4KS14KWH4KS2IOCkl+CksOCljeCkpuCkm1xuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI2NgorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBgJS4yNTBzJyBkb2VzIG5vdCBhcHBlYXIgaW4gcGFja2FnZSIKK21zZ3N0ciAi4KSV4KSo4KWN4KSr4KSr4KS+4KSH4KSyIGAlLjI1MHMnIOCkquCljeCkr+CkvuCkleClh+CknOCkruCkviDgpKbgpYfgpJbgpL4g4KSq4KSw4KWN4KSm4KWI4KSoIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI2OAorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBgJS4yNTBzJyBpcyBub3Qgc3RhdHRhYmxlIgorbXNnc3RyICLgpJXgpKjgpY3gpKvgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KS44KWN4KSl4KS/4KSwIOCkm+CliOCkqCIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlICclcycgaXMgbm90IGEgcGxhaW4gZmlsZSIKK21zZ3N0ciAi4KSa4KWH4KSk4KS+4KS14KSo4KWALCDgpJXgpKjgpY3gpKvgpKvgpL7gpIfgpLIgYCVzJyDgpLjgpL7gpKbgpL4g4KSr4KS+4KSH4KSyIOCkueCli+Ckh+CkqFxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI3NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgbmFtZSAnJXMnIGlzIGR1cGxpY2F0ZWQiCittc2dzdHIgIiAlcyDgpLjgpY3gpLLgpYfgpK0g4KSo4KS+4KSuICDgpKjgpJXgpY3gpJXgpLIg4KSX4KSw4KS/4KSv4KWLIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI4NworbXNnaWQgImVycm9yIHJlYWRpbmcgY29uZmZpbGVzIGZpbGUiCittc2dzdHIgIuCkleCkqOCljeCkq+CkvuCkh+CksiDgpKvgpL7gpIfgpLIg4KSq4KSi4KWN4KSm4KS+IOCkpOCljeCksOClgeCkn+CkvyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzozMzkKK21zZ2lkICJwYWNrYWdlIG5hbWUgaGFzIGNoYXJhY3RlcnMgdGhhdCBhcmVuJ3QgbG93ZXJjYXNlIGFscGhhbnVtcyBvciBgLSsuJyIKK21zZ3N0ciAi4KSq4KWN4KSv4KS+4KSV4KWH4KScIOCkqOCkvuCkruCkruCkviDgpJXgpY3gpK/gpL7gpLDgpYfgpJXgpY3gpJ/gpLDgpLngpLDgpYIg4KSb4KSo4KWNIOCknOClgeCkqCDgpLjgpL7gpKjgpYsg4KSF4KSV4KWN4KS34KSwIOCkheCksuCljeCkq+CkvuCkqOCljeCkr+ClgeCkruCljeCkuCDgpLXgpL4gLSsg4KS54KWL4KSH4KSoIOClpCIKKworIzogZHBrZy1kZWIvYnVpbGQuYzozNDEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiclcycgY29udGFpbnMgdXNlci1kZWZpbmVkIFByaW9yaXR5IHZhbHVlICclcyciCittc2dzdHIgIuCkmuClh+CkpOCkvuCkteCkqOClgCwgYCVzJyDgpLLgpYcg4KSq4KWN4KSw4KSv4KWL4KSXLeCkquCksOCkv+CkreCkvuCkt+Ckv+CkpCDgpKrgpY3gpLDgpL7gpKXgpK7gpL/gpJXgpKTgpL4g4KSu4KS+4KSoIGAlcycg4KS44KSu4KS+4KS14KWH4KS2IOCkl+CksOCljeCkpuCkmyBcbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzozNDcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiclcycgY29udGFpbnMgdXNlci1kZWZpbmVkIGZpZWxkICclcyciCittc2dzdHIgIuCkmuClh+CkpOCkvuCkteCkqOClgCwgYCVzJyDgpLLgpYcg4KSq4KWN4KSw4KSv4KWL4KSXLeCkquCksOCkv+CkreCkvuCkt+Ckv+CkpCDgpKvgpL7gpIHgpJ8g4KS44KSu4KS+4KS14KWH4KS2IOCkl+CksOCljeCkpuCkmyBgJXMnXG4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MzU4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJpZ25vcmluZyAlZCB3YXJuaW5nIGFib3V0IHRoZSBjb250cm9sIGZpbGUocylcbiIKK21zZ2lkX3BsdXJhbCAiaWdub3JpbmcgJWQgd2FybmluZ3MgYWJvdXQgdGhlIGNvbnRyb2wgZmlsZShzKVxuIgorbXNnc3RyWzBdICJkcGtnLWRlYjogICVkIOCksuClhyDgpJXgpKjgpY3gpKvgpKvgpL7gpIfgpLIo4KS54KSw4KWCKSDgpJXgpL4g4KSs4KS+4KSw4KWH4KSu4KS+IOCkmuClh+CkpOCkvuCkteCkqOClgOCkueCksOClgiDgpIXgpLXgpJzgpY3gpJ7gpL4g4KSX4KSw4KWN4KSm4KWIXG4iCittc2dzdHJbMV0gImRwa2ctZGViOiAgJWQg4KSy4KWHIOCkleCkqOCljeCkq+Ckq+CkvuCkh+CksijgpLngpLDgpYIpIOCkleCkviDgpKzgpL7gpLDgpYfgpK7gpL4g4KSa4KWH4KSk4KS+4KS14KSo4KWA4KS54KSw4KWCIOCkheCkteCknOCljeCknuCkviDgpJfgpLDgpY3gpKbgpYhcbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MDMgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MjkKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDM2CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSA8ZGlyZWN0b3J5PiBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyDgpLLgpL7gpIggPGRpcmVjdG9yeT4g4KSG4KS14KS24KWN4KSv4KSVIOCkquCksOCljeCkpuCkmyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MDkKK21zZ2lkICItLWJ1aWxkIHRha2VzIGF0IG1vc3QgdHdvIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS1idWlsZCDgpLLgpYcg4KSs4KSi4KS/4KSu4KS+IOCkpuClgeCkiOCkteCkn+CkviDgpKTgpLDgpY3gpJXgpLngpLDgpYIg4KSy4KS/4KSo4KWN4KSbIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQxMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hlY2sgZm9yIGV4aXN0ZW5jZSBvZiBhcmNoaXZlIGAlLjI1MHMnIgorbXNnc3RyICLgpLjgpJngpY3gpJfgpY3gpLDgpLkgYCUuMjUwcycg4KSV4KWLIOCkieCkquCkuOCljeCkpeCkv+CkpOCkv+CkleCkviDgpLLgpL7gpJfgpL8g4KSc4KS+4KSB4KSaIOCkl+CksOCljeCkqCDgpIXgpJXgpY3gpLfgpK4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDMwCittc2dpZCAidGFyZ2V0IGlzIGRpcmVjdG9yeSAtIGNhbm5vdCBza2lwIGNvbnRyb2wgZmlsZSBjaGVjayIKK21zZ3N0ciAi4KSy4KSV4KWN4KS34KSV4KWN4KSvIOCkoeCkvuCkh+CksOClh+CkleCljeCkn+CksOClgCDgpLngpYsgLSDgpKjgpL/gpK/gpKjgpY3gpKTgpY3gpLDgpKMg4KSr4KS+4KSH4KSyIOCknOCkvuCkgeCkmiDgpKvgpKHgpY3gpJXgpL7gpIngpKgg4KS44KSV4KS/4KSm4KWI4KSoIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQzMQorbXNnaWQgIm5vdCBjaGVja2luZyBjb250ZW50cyBvZiBjb250cm9sIGFyZWEuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDMyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJkcGtnLWRlYjogYnVpbGRpbmcgYW4gdW5rbm93biBwYWNrYWdlIGluICclcycuXG4iCittc2dzdHIgImRwa2ctZGViOiDgpKrgpY3gpK/gpL7gpJXgpYfgpJwgYCVzJyDgpK7gpL4gYCVzIOCkrOCkqOCkvuCkieCkpuCliCDgpaRcbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZy1kZWI6IGJ1aWxkaW5nIHBhY2thZ2UgYCVzJyBpbiBgJXMnLlxuIgorbXNnc3RyICJkcGtnLWRlYjog4KSq4KWN4KSv4KS+4KSV4KWH4KScIGAlcycg4KSu4KS+IGAlcyDgpKzgpKjgpL7gpIngpKbgpYgg4KWkXG4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDY3IGRwa2ctZGViL2J1aWxkLmM6NTIxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gbWFrZSB0bXBmaWxlIChkYXRhKSIKK21zZ2lkICJmYWlsZWQgdG8gbWFrZSB0ZW1wb3JhcnkgZmlsZSAoJXMpIgorbXNnc3RyICJ0bXBmaWxlICjgpKHgpYfgpJ/gpL4pIOCkrOCkqOCkvuCkieCkqCDgpIXgpLjgpKvgpLIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDY3IGRwa2ctZGViL2J1aWxkLmM6NDcwIGRwa2ctZGViL2J1aWxkLmM6NDc3CisjOiBkcGtnLWRlYi9idWlsZC5jOjQ4NSBkcGtnLWRlYi9idWlsZC5jOjQ5NCBkcGtnLWRlYi9idWlsZC5jOjQ5OQorIywgZnV6enkKKyN8IG1zZ2lkICJjb250cm9sIGFyZWEiCittc2dpZCAiY29udHJvbCBtZW1iZXIiCittc2dzdHIgIuCkqOCkv+Ckr+CkqOCljeCkpOCljeCksOCkoyDgpJXgpY3gpLfgpYfgpKTgpY3gpLAiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDcwIGRwa2ctZGViL2J1aWxkLmM6NTI0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gdW5saW5rIHRtcGZpbGUgKGRhdGEpLCAlcyIKK21zZ2lkICJmYWlsZWQgdG8gdW5saW5rIHRlbXBvcmFyeSBmaWxlICglcyksICVzIgorbXNnc3RyICJ0bXBmaWxlICjgpKHgpYfgpJ/gpL4pIOCkheCkqOCksuCkv+CkmeCljeCklSDgpJfgpLDgpY3gpKgg4KSF4KS44KSr4KSyLCAlcyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0ODUgZHBrZy1kZWIvYnVpbGQuYzo1OTMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdG1wZmlsZSAoZGF0YSkiCittc2dpZCAiZmFpbGVkIHRvIHJld2luZCB0ZW1wb3JhcnkgZmlsZSAoJXMpIgorbXNnc3RyICJ0bXBmaWxlICjgpKHgpYfgpJ/gpL4pIOCksOCkv+CkteCkvuCkh+CkqOCljeCkoSDgpJfgpLDgpY3gpKgg4KSF4KS44KSr4KSyIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ5NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHN0YXQgdGVtcG9yYXJ5IGZpbGUgKCVzKSIKK21zZ3N0ciAidG1wZmlsZSAo4KSh4KWH4KSf4KS+KSDgpKzgpKjgpL7gpIngpKgg4KSF4KS44KSr4KSyIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ5OAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciB3cml0aW5nIGAlcyciCittc2dzdHIgIuCksuClh+CkluCljeCkpuCliCDgpJfgpLDgpY3gpKbgpL4g4KSk4KWN4KSw4KWB4KSf4KS/IGAlcyciCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTIxIGRwa2ctZGViL2J1aWxkLmM6NTI0IGRwa2ctZGViL2J1aWxkLmM6NTQ2CisjOiBkcGtnLWRlYi9idWlsZC5jOjU3MiBkcGtnLWRlYi9idWlsZC5jOjU4MCBkcGtnLWRlYi9idWlsZC5jOjU5MworIywgZnV6enkKKyN8IG1zZ2lkICJiZXR3ZWVuIG1lbWJlcnMiCittc2dpZCAiZGF0YSBtZW1iZXIiCittc2dzdHIgIuCkuOCkpuCkuOCljeCkr+CkueCksOClgeCkleCliyDgpKzgpL/gpJoiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTcxIGRwa2ctZGViL2J1aWxkLmM6NTgwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gd3JpdGUgZmlsZW5hbWUgdG8gdGFyIHBpcGUgKGRhdGEpIgorbXNnaWQgImZhaWxlZCB0byB3cml0ZSBmaWxlbmFtZSB0byB0YXIgcGlwZSAoJXMpIgorbXNnc3RyICLgpKrgpL7gpIfgpKogKOCkoeClh+Ckn+Ckvikg4KSf4KS+4KSw4KSy4KS+4KSIIOCkq+CkvuCkh+CksuCkqOCkvuCkriDgpLLgpYfgpJbgpY3gpKgg4KSF4KS44KSr4KSyIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjU4NAorbXNnaWQgIjxjb21wcmVzcz4gZnJvbSB0YXIgLWNmIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzo2MSBkcGtnLWRlYi9leHRyYWN0LmM6NjMKK21zZ2lkICJzaGVsbCBjb21tYW5kIHRvIG1vdmUgZmlsZXMiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjcwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGZpbGUgaW4gJXMgaW4gJS4yNTVzIgorbXNnc3RyICIlLjI1NXMg4KSu4KS+ICVzIOCkruCkviDgpKvgpL7gpIfgpLLgpJXgpYsg4KSF4KSq4KWN4KSw4KSk4KWN4KSv4KS+4KS44KS/4KSkIOCkuOCkruCkvuCkquCljeCkpOCkvyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHJlYWRpbmcgJXMgZnJvbSBmaWxlICUuMjU1cyIKK21zZ3N0ciAi4KSr4KS+4KSH4KSyICUuMjU1cyDgpKzgpL7gpJ8gJXMg4KSq4KSi4KWN4KSm4KS+IOCkpOCljeCksOClgeCkn+CkvyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjEyNQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCBhcmNoaXZlIGAlLjI1NXMnIgorbXNnc3RyICLgpLjgpJngpY3gpJfgpY3gpLDgpLlgJS4yNTVzJyDgpKrgpKLgpY3gpKgg4KSF4KS44KSr4KSyIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTI3Cittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGFyY2hpdmUiCittc2dzdHIgIuCkuOCkmeCljeCkl+CljeCksOCkuSBmc3RhdCDgpJfgpLDgpY3gpKgg4KSF4KS44KSr4KSyIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTMxCisjLCBmdXp6eQorI3wgbXNnaWQgImFyY2hpdmUgaGFzIG5vIGRvdCBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ2lkICJhcmNoaXZlIG1hZ2ljIHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICLgpLjgpILgpLjgpY3gpJXgpLDgpKMg4KSo4KSu4KWN4KSs4KSw4KSu4KS+IOCkuOCkmeCljeCkl+CljeCksOCkueCkuOCkguCklyDgpKXgpYvgpKrgpY3gpLLgpL4g4KSb4KWI4KSoIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTQzCisjLCBmdXp6eQorI3wgbXNnaWQgImFyY2hpdmUgaGFzIG5vIG5ld2xpbmVzIGluIGhlYWRlciIKK21zZ2lkICJhcmNoaXZlIG1lbWJlciBoZWFkZXIiCittc2dzdHIgIuCkuOCkmeCljeCkl+CljeCksOCkueCkruCkviDgpLngpYfgpKHgpLDgpK7gpL4g4KSV4KWB4KSo4KWIIOCkquCkqOCkvyDgpKjgpY3gpK/gpYHgpLLgpL7gpIfgpKgg4KSb4KWI4KSoIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTQ4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgcGFydCBudW1iZXIiCittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIGFyY2hpdmUgaGVhZGVyIG1hZ2ljIgorbXNnc3RyICLgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KSm4KWC4KS34KS/4KSkIOCkmyAtIOCkluCksOCkvuCkrCDgpK3gpL7gpJcg4KSo4KSu4KWN4KSs4KSwIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTU1CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgbm90IGEgZGViaWFuIGJpbmFyeSBhcmNoaXZlICh0cnkgZHBrZy1zcGxpdD8pIgorbXNnc3RyICLgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KSh4KWH4KSs4KS/4KSv4KSoIOCkrOCkvuCkh+CkqOCksOCkvyDgpLjgpJngpY3gpJfgpY3gpLDgpLkg4KS54KWL4KSH4KSoICh0cnkgZHBrZy1zcGxpdD8pIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTU5CisjLCBmdXp6eQorI3wgbXNnaWQgImFyY2hpdmUgaGFzIG5vIGRvdCBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ2lkICJhcmNoaXZlIGluZm9ybWF0aW9uIGhlYWRlciBtZW1iZXIiCittc2dzdHIgIuCkuOCkguCkuOCljeCkleCksOCkoyDgpKjgpK7gpY3gpKzgpLDgpK7gpL4g4KS44KSZ4KWN4KSX4KWN4KSw4KS54KS44KSC4KSXIOCkpeCli+CkquCljeCksuCkviDgpJvgpYjgpKgiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNjIKK21zZ2lkICJhcmNoaXZlIGhhcyBubyBuZXdsaW5lcyBpbiBoZWFkZXIiCittc2dzdHIgIuCkuOCkmeCljeCkl+CljeCksOCkueCkruCkviDgpLngpYfgpKHgpLDgpK7gpL4g4KSV4KWB4KSo4KWIIOCkquCkqOCkvyDgpKjgpY3gpK/gpYHgpLLgpL7gpIfgpKgg4KSb4KWI4KSoIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTY1Cittc2dpZCAiYXJjaGl2ZSBoYXMgbm8gZG90IGluIHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICLgpLjgpILgpLjgpY3gpJXgpLDgpKMg4KSo4KSu4KWN4KSs4KSw4KSu4KS+IOCkuOCkmeCljeCkl+CljeCksOCkueCkuOCkguCklyDgpKXgpYvgpKrgpY3gpLLgpL4g4KSb4KWI4KSoIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTY4CisjLCBjLWZvcm1hdAorbXNnaWQgImFyY2hpdmUgdmVyc2lvbiAlLjI1MHMgbm90IHVuZGVyc3Rvb2QsIGdldCBuZXdlciBkcGtnLWRlYiIKK21zZ3N0ciAi4KS44KSZ4KWN4KSX4KWN4KSw4KS5IOCkuOCkguCkuOCljeCkleCksOCkoyAlLjI1MHMg4KSs4KWB4KSd4KWH4KSoLCDgpKjgpK/gpL7gpIEgZHBrZy1kZWIg4KSq4KS+4KSJ4KSo4KWB4KS54KWL4KS44KWNIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTc5IGRwa2ctZGViL2V4dHJhY3QuYzoyMDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInNraXBwZWQgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ2lkICJza2lwcGVkIGFyY2hpdmUgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ3N0ciAiJXMg4KSs4KS+4KSfIOCkuOCkpuCkuOCljeCkryDgpKHgpYfgpJ/gpL4g4KSr4KSh4KWN4KSV4KS/4KSv4KWLIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTk0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGNvbnRhaW5zIHVudW5kZXJzdG9vZCBkYXRhIG1lbWJlciAlLipzLCBnaXZpbmcgdXAiCittc2dpZCAiYXJjaGl2ZSAnJS4yNTBzJyBjb250YWlucyBub3QgdW5kZXJzdG9vZCBkYXRhIG1lbWJlciAlLipzLCBnaXZpbmcgdXAiCittc2dzdHIgIuCkq+CkvuCkh+CksiBgJS4yNTBzJyDgpLLgpYcg4KSo4KSs4KWB4KSd4KWN4KSo4KWHIOCkoeClh+Ckn+CkviDgpLjgpKbgpLjgpY3gpK8gJS4qcyDgpLjgpK7gpL7gpLXgpYfgpLYg4KSX4KSw4KWN4KSm4KSbLCDgpJvgpYvgpKHgpY3gpKbgpYgiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxOTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgY29udGFpbnMgdHdvIGNvbnRyb2wgbWVtYmVycywgZ2l2aW5nIHVwIgorbXNnaWQgImFyY2hpdmUgJyUuMjUwcycgY29udGFpbnMgdHdvIGNvbnRyb2wgbWVtYmVycywgZ2l2aW5nIHVwIgorbXNnc3RyICLgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KSy4KWHIOCkpuClgeCkiCDgpLjgpKbgpLjgpY3gpK/gpLngpLDgpYIg4KS44KSu4KS+4KS14KWH4KS2IOCkl+CksOCljeCkpuCkmywg4KSb4KWL4KSh4KWN4KSm4KWIIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjE0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiIG5ldyBkZWJpYW4gcGFja2FnZSwgdmVyc2lvbiAlcy5cbiIKKyN8ICIgc2l6ZSAlbGQgYnl0ZXM6IGNvbnRyb2wgYXJjaGl2ZT0gJXppIGJ5dGVzLlxuIgorbXNnaWQgIiIKKyIgbmV3IGRlYmlhbiBwYWNrYWdlLCB2ZXJzaW9uICVzLlxuIgorIiBzaXplICVqZCBieXRlczogY29udHJvbCBhcmNoaXZlPSAlamQgYnl0ZXMuXG4iCittc2dzdHIgIiIKKyIg4KSo4KSv4KS+4KSBIOCkoeClh+CkrOCkv+Ckr+CkqCDgpKrgpY3gpK/gpL7gpJXgpYfgpJwsIOCkuOCkguCkuOCljeCkleCksOCkoyAlcy5cbiIKKyIg4KSG4KSV4KS+4KSwICVsZCDgpKzgpL7gpIfgpJ/gpY3gpLg6IOCkqOCkv+Ckr+CkqOCljeCkpOCljeCksOCkoyDgpLjgpJngpY3gpJfgpY3gpLDgpLk9ICV6aSDgpKzgpL7gpIfgpJ/gpY3gpLgg4KWkXG4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyMzIKK21zZ2lkICJhcmNoaXZlIGNvbnRyb2wgbWVtYmVyIHNpemUiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIzNQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYXJjaGl2ZSBoYXMgbWFsZm9ybWF0dGVkIGNvbnRyb2wgbGVuZ3RoIGAlcyciCittc2dpZCAiYXJjaGl2ZSBoYXMgbWFsZm9ybWF0dGVkIGNvbnRyb2wgbWVtYmVyIHNpemUgJyVzJyIKK21zZ3N0ciAi4KS44KSZ4KWN4KSX4KWN4KSw4KS54KS44KSC4KSXIOCkqOCksOCkvuCkruCljeCksOCliyDgpKLgpL7gpIHgpJrgpL7gpKzgpKbgpY3gpKcg4KSo4KS/4KSv4KSo4KWN4KSk4KWN4KSw4KSjIOCksuCkruCljeCkrOCkvuCkiCBgJXMnIOCkmyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI0MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic2tpcHBlZCBtZW1iZXIgZGF0YSBmcm9tICVzIgorbXNnaWQgInNraXBwZWQgYXJjaGl2ZSBjb250cm9sIG1lbWJlciBkYXRhIGZyb20gJXMiCittc2dzdHIgIiVzIOCkrOCkvuCknyDgpLjgpKbgpLjgpY3gpK8g4KSh4KWH4KSf4KS+IOCkq+CkoeCljeCkleCkv+Ckr+CliyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI0NgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiBvbGQgZGViaWFuIHBhY2thZ2UsIHZlcnNpb24gJXMuXG4iCisjfCAiIHNpemUgJWxkIGJ5dGVzOiBjb250cm9sIGFyY2hpdmU9ICV6aSwgbWFpbiBhcmNoaXZlPSAlbGQuXG4iCittc2dpZCAiIgorIiBvbGQgZGViaWFuIHBhY2thZ2UsIHZlcnNpb24gJXMuXG4iCisiIHNpemUgJWpkIGJ5dGVzOiBjb250cm9sIGFyY2hpdmU9ICVqZCwgbWFpbiBhcmNoaXZlPSAlamQuXG4iCittc2dzdHIgIiIKKyIg4KSq4KWB4KSw4KS+4KSo4KWLIOCkoeClh+CkrOCkv+Ckr+CkqCDgpKrgpY3gpK/gpL7gpJXgpYfgpJwsIOCkuOCkguCkuOCljeCkleCksOCkoyAlcyDgpaRcbiIKKyIg4KSG4KSV4KS+4KSwICVsZCDgpKzgpL7gpIfgpJ/gpY3gpLg6IOCkqOCkv+Ckr+CkqOCljeCkpOCljeCksOCkoyDgpLjgpJngpY3gpJfgpY3gpLDgpLk9ICV6aSwg4KSu4KWB4KSW4KWN4KSvIOCkuOCkmeCljeCkl+CljeCksOCkuT0gJWxkIOClpFxuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjU1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnLWRlYjogZmlsZSBsb29rcyBsaWtlIGl0IG1pZ2h0IGJlIGFuIGFyY2hpdmUgd2hpY2ggaGFzIGJlZW5cbiIKKyJkcGtnLWRlYjogICAgY29ycnVwdGVkIGJ5IGJlaW5nIGRvd25sb2FkZWQgaW4gQVNDSUkgbW9kZVxuIgorbXNnc3RyICIiCisiZHBrZy1kZWI6IOCkq+CkvuCkh+CksiDgpJzgpLjgpY3gpKTgpYsg4KSm4KWH4KSW4KS/4KSo4KWN4KSbIOCkr+CliyDgpLjgpK7gpY3gpK3gpLXgpKQg4KSP4KSJ4KSf4KS+IOCkuOCkmeCljeCkl+CljeCksOCkuSDgpLngpYsg4KSc4KWB4KSoXG4iCisiZHBrZy1kZWI6ICAgIEFTQ0lJIOCkruCli+CkoeCkruCkviDgpKHgpL7gpIngpKjgpLLgpYvgpKEg4KSX4KSw4KS/4KSm4KS+IOCkpuClgeCkt+Ckv+CkpCDgpK3gpI/gpJXgpYsg4KSbXG4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCUuMjU1cycgaXMgbm90IGEgZGViaWFuIGZvcm1hdCBhcmNoaXZlIgorbXNnc3RyICJgJS4yNTVzJyDgpKHgpYfgpKzgpL/gpK/gpKgg4KSi4KS+4KSB4KSa4KS+IOCkuOCkmeCljeCkl+CljeCksOCkuSDgpLngpYvgpIfgpKgiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNjYKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgdG8gcGlwZSBpbiBjb3B5IgorbXNnc3RyICLgpKrgpY3gpLDgpKTgpL/gpLLgpL/gpKrgpL/gpK7gpL4g4KSq4KS+4KSH4KSq4KSy4KS+4KSIIOCksuClh+CkluCljeCkqCDgpIXgpLjgpKvgpLIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNjgKK21zZ2lkICJmYWlsZWQgdG8gY2xvc2UgcGlwZSBpbiBjb3B5IgorbXNnc3RyICLgpKrgpY3gpLDgpKTgpL/gpLLgpL/gpKrgpL/gpK7gpL4g4KSq4KS+4KSH4KSqIOCkrOCkqOCljeCkpiDgpJfgpLDgpY3gpKgg4KSF4KS44KSr4KSyIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6Mjg0Cittc2dpZCAiZGF0YSIKK21zZ3N0ciAi4KSh4KWH4KSf4KS+IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzA3Cittc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIGRpcmVjdG9yeSIKK21zZ3N0ciAi4KSh4KS+4KSH4KSw4KWH4KSV4KWN4KSf4KSw4KWA4KSy4KS+4KSIIGNoZGlyIOCkl+CksOCljeCkqCDgpIXgpLjgpKvgpLIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozMTAKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGRpcmVjdG9yeSIKK21zZ3N0ciAi4KSh4KS+4KSH4KSw4KWH4KSV4KWN4KSf4KSw4KWAIOCkuOCkv+CksOCljeCknOCkqOCkviDgpJfgpLDgpY3gpKgg4KSF4KS44KSr4KSyIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzEyCittc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIGRpcmVjdG9yeSBhZnRlciBjcmVhdGluZyBpdCIKK21zZ3N0ciAi4KSh4KS+4KSH4KSw4KWH4KSV4KWN4KSf4KSw4KWAIOCkuOCkv+CksOCljeCknOCkqOCkviDgpJfgpLDgpYcg4KSq4KSb4KS/IOCkoeCkvuCkh+CksOClh+CkleCljeCkn+CksOClgOCksuCkvuCkiCBjaGRpciDgpJfgpLDgpY3gpKgg4KSF4KS44KSr4KSyIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzIzCisjLCBmdXp6eQorbXNnaWQgIjxkZWNvbXByZXNzPiIKK21zZ3N0ciAiJXM6IOCkheCkuOCkmeCljeCkleClgeCkmuCkqCIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMyNQorIywgZnV6enkKK21zZ2lkICJwYXN0ZSIKK21zZ3N0ciAi4KSq4KS+4KS4IOCkl+CksOCljeCkr+Cli1xuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzQyIGRwa2ctZGViL2V4dHJhY3QuYzozNjMgZHBrZy1kZWIvZXh0cmFjdC5jOjQwMgorIzogZHBrZy1kZWIvaW5mby5jOjc3CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSAuZGViIGZpbGVuYW1lIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIOCksuCkvuCkiCAuZGViIOCkq+CkvuCkh+CksuCkqOCkvuCkriDgpKTgpLDgpY3gpJUg4KSG4KS14KS24KWN4KSv4KSVIOCkmyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjM0NyBkcGtnLWRlYi9leHRyYWN0LmM6NDA2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyItLSVzIG5lZWRzIGEgdGFyZ2V0IGRpcmVjdG9yeS5cbiIKKyJQZXJoYXBzIHlvdSBzaG91bGQgYmUgdXNpbmcgZHBrZyAtLWluc3RhbGwgPyIKK21zZ3N0ciAiIgorIi0tJXMg4KSy4KS+4KSIIOCksuCkleCljeCkt+Ckv+CkpCDgpKHgpL7gpIfgpLDgpYfgpJXgpY3gpJ/gpLDgpYAg4KSG4KS14KS24KWN4KSv4KSVIOCkmyDgpaRcbiIKKyLgpLjgpK7gpY3gpK3gpLXgpKQg4KSk4KSq4KS+4KSI4KSB4KSy4KS+4KSIIGRwa2cgLS3gpLjgpY3gpKXgpL7gpKrgpKjgpL4g4KSq4KWN4KSw4KSv4KWL4KSXIOCkl+CksOCljeCkqOClgSDgpKrgpLDgpY3gpKbgpJsgPyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjM1MCBkcGtnLWRlYi9leHRyYWN0LmM6NDEwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgYXQgbW9zdCB0d28gYXJndW1lbnRzICguZGViIGFuZCBkaXJlY3RvcnkpIgorbXNnc3RyICItLSVzIOCksuClhyDgpKzgpKLgpL/gpK7gpL4g4KSm4KWB4KSIIOCkpOCksOCljeCkleCkueCksOClgiAoLmRlYiDgpLAg4KSh4KS+4KSH4KSw4KWH4KSV4KWN4KSf4KSw4KWAKSDgpLLgpL/gpKjgpY3gpJsiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyB0YWtlcyBvbmx5IG9uZSBhcmd1bWVudCAoLmRlYiBmaWxlbmFtZSkiCittc2dzdHIgIi0tJXMg4KSy4KWHIOCkj+CklSDgpK7gpL7gpKTgpY3gpLAgKC5kZWIg4KSr4KS+4KSH4KSy4KSo4KS+4KSuKSDgpKTgpLDgpY3gpJUg4KSy4KS/4KSo4KWN4KSbIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6NjMKK21zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gYC8nIGZvciBjbGVhbnVwIgorbXNnc3RyICIgYC8nIOCksuCkvuCkiCDgpJbgpL7gpLLgpYAg4KSX4KSw4KWN4KSo4KSV4KS+IOCksuCkvuCkl+CkvyBjaGRpciDgpJfgpLDgpY3gpKgg4KSF4KS44KSr4KSyIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTA2CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW5ub3Qgc3RhdCBvbGQgbmFtZSBgJXMnOiAlcyIKK21zZ2lkICJjb250cm9sIGZpbGUgJyVzJyIKK21zZ3N0ciAi4KSq4KWB4KSw4KS+4KSo4KWLIOCkqOCkvuCkriBgJXMnIOCkpOCli+CkleCljeCkqCDgpLjgpJXgpL/gpKbgpYjgpKg6ICVzIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTEwCisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2ctZGViOiBgJS4yNTVzJyBjb250YWlucyBubyBjb250cm9sIGNvbXBvbmVudCBgJS4yNTVzJ1xuIgorbXNnc3RyICJkcGtnLWRlYjogYCUuMjU1cycg4KSy4KWHIOCkqOCkv+Ckr+CkqOCljeCkpOCljeCksOCkoyDgpIXgpLXgpK/gpLUgYCUuMjU1cyfgpLjgpK7gpL7gpLXgpYfgpLYg4KSX4KSw4KWN4KSm4KSbXG4iCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAib3BlbiBjb21wb25lbnQgYCUuMjU1cycgKGluICUuMjU1cykgZmFpbGVkIGluIGFuIHVuZXhwZWN0ZWQgd2F5IgorbXNnc3RyICLgpIXgpLXgpK/gpLVgJS4yNTVzJyAoaW4gJS4yNTVzKeCkluCli+CksuCljeCkqCDgpIXgpKrgpY3gpLDgpKTgpY3gpK/gpL7gpLjgpL/gpKQg4KSw4KWB4KSq4KSy4KWHIOCkheCkuOCkq+CksiIKKworIzogZHBrZy1kZWIvaW5mby5jOjEyMQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiT25lIHJlcXVlc3RlZCBjb250cm9sIGNvbXBvbmVudCBpcyBtaXNzaW5nIgorbXNnaWQgIiVkIHJlcXVlc3RlZCBjb250cm9sIGNvbXBvbmVudCBpcyBtaXNzaW5nIgorbXNnaWRfcGx1cmFsICIlZCByZXF1ZXN0ZWQgY29udHJvbCBjb21wb25lbnRzIGFyZSBtaXNzaW5nIgorbXNnc3RyWzBdICLgpI/gpIngpJ/gpL4g4KSF4KSo4KWB4KSw4KWL4KSnIOCkl+CksOCkv+Ckj+CkleCliyDgpKjgpL/gpK/gpKjgpY3gpKTgpY3gpLDgpKMg4KSF4KS14KSv4KS1IOCkueCksOCkvuCkh+CksOCkueClh+CkleCliyDgpJsiCittc2dzdHJbMV0gIuCkj+CkieCkn+CkviDgpIXgpKjgpYHgpLDgpYvgpKcg4KSX4KSw4KS/4KSP4KSV4KWLIOCkqOCkv+Ckr+CkqOCljeCkpOCljeCksOCkoyDgpIXgpLXgpK/gpLUg4KS54KSw4KS+4KSH4KSw4KS54KWH4KSV4KWLIOCkmyIKKworIzogZHBrZy1kZWIvaW5mby5jOjEzOSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NDI0CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzY2FuIGRpcmVjdG9yeSBgJS4yNTVzJyIKK21zZ3N0ciAi4KSh4KS+4KSH4KSw4KWH4KSV4KWN4KSf4KSw4KWAIGAlLjI1NXMnIOCkuOCljeCkleCljeCkr+CkvuCkqCDgpJfgpLDgpY3gpKgg4KS44KSV4KS/4KSm4KWI4KSoIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTQ4CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzdGF0IGAlLjI1NXMnIChpbiBgJS4yNTVzJykiCittc2dzdHIgImAlLjI1NXMn4KSy4KS+4KSIIChgJS4yNTVzJ+CkruCkvikg4KS44KWB4KSw4KWCIOCkl+CksOCljeCkqCDgpLjgpJXgpL/gpKbgpYjgpKgiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IG9wZW4gYCUuMjU1cycgKGluIGAlLjI1NXMnKSIKK21zZ3N0ciAiYCUuMjU1cyfgpLLgpL7gpIggKGAlLjI1NXMn4KSu4KS+KSDgpJbgpYvgpLLgpY3gpKgg4KS44KSV4KS/4KSm4KWI4KSoIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTY3IGRwa2ctZGViL2luZm8uYzoxODUgZHBrZy1kZWIvaW5mby5jOjE5OQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCBgJS4yNTVzJyAoaW4gYCUuMjU1cycpIgorbXNnc3RyICJgJS4yNTVzJ+CksuCkvuCkiCAoYCUuMjU1cyfgpK7gpL4gKSDgpKrgpKLgpY3gpKgg4KSF4KS44KSr4KSyIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTcwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIgJTdsZCBieXRlcywgJTVkIGxpbmVzICAgJWMgICUtMjAuMTI3cyAlLjEyN3NcbiIKK21zZ2lkICIgJTdqZCBieXRlcywgJTVkIGxpbmVzICAgJWMgICUtMjAuMTI3cyAlLjEyN3NcbiIKK21zZ3N0ciAiICU3bGQgYnl0ZXMsICU1ZCBsaW5lcyAgICVjICAlLTIwLjEyN3MgJS4xMjdzXG4iCisKKyM6IGRwa2ctZGViL2luZm8uYzoxNzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAgICBub3QgYSBwbGFpbiBmaWxlICAgICAgICAgICUuMjU1c1xuIgorbXNnc3RyICIgICAgIOCkj+CkieCkn+CkviDgpLjgpL7gpKbgpL4g4KSr4KS+4KSH4KSyIOCkueCli+Ckh+CkqCAgICAgICAgICAlLjI1NXNcbiIKKworIzogZHBrZy1kZWIvaW5mby5jOjE4NgorbXNnaWQgIihubyBgY29udHJvbCcgZmlsZSBpbiBjb250cm9sIGFyY2hpdmUhKVxuIgorbXNnc3RyICIoIGBjb250cm9sJyDgpKvgpL7gpIfgpLIg4KSo4KS/4KSv4KSo4KWN4KSk4KWN4KSw4KSjIOCkuOCkmeCljeCkl+CljeCksOCkueCkruCkviDgpJvgpYjgpKggISlcbiIKKworIzogZHBrZy1kZWIvaW5mby5jOjIyMgorbXNnaWQgImNvdWxkIG5vdCBvcGVuIHRoZSBgY29udHJvbCcgY29tcG9uZW50IgorbXNnc3RyICJgY29udHJvbCcg4KSF4KS14KSv4KS14KS54KSw4KWCIOCkluCli+CksuCljeCkqCDgpLjgpJXgpYfgpKgiCisKKyM6IGRwa2ctZGViL2luZm8uYzoyNjEKK21zZ2lkICJmYWlsZWQgZHVyaW5nIHJlYWQgb2YgYGNvbnRyb2wnIGNvbXBvbmVudCIKK21zZ3N0ciAiYGNvbnRyb2wnIOCkleCliyDgpIXgpLXgpK/gpLXgpLngpLDgpYIg4KSq4KSi4KWN4KSo4KWH4KSs4KWH4KSy4KS+4KSu4KS+IOCkheCkuOCkq+CksiIKKworIzogZHBrZy1kZWIvaW5mby5jOjI2MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyB0aGUgJyVzJyBjb21wb25lbnQiCittc2dzdHIgIifgpKvgpYfgpLLgpL4g4KSq4KS+4KSw4KWN4KSo4KWB4KS54KWL4KS4JyDgpJXgpYsg4KSq4KS+4KSH4KSqIOCkrOCkqOCljeCkpiDgpJfgpLDgpY3gpKbgpL4g4KSk4KWN4KSw4KWB4KSf4KS/IgorCisjOiBkcGtnLWRlYi9pbmZvLmM6Mjc4Cittc2dpZCAiRXJyb3IgaW4gZm9ybWF0IgorbXNnc3RyICLgpKLgpL7gpIHgpJrgpL7gpK7gpL4g4KSk4KWN4KSw4KWB4KSf4KS/IgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MzI4Cittc2dpZCAiLS1jb250ZW50cyB0YWtlcyBleGFjdGx5IG9uZSBhcmd1bWVudCIKK21zZ3N0ciAiLS3gpLjgpL7gpK7gpJfgpY3gpLDgpL/gpLngpLDgpYHgpLLgpYcg4KSv4KSl4KS+4KSw4KWN4KSl4KSu4KS+IOCkj+CkieCkn+CkviDgpKTgpLDgpY3gpJUg4KSy4KS/4KSo4KWN4KSbIgorCisjOiBkcGtnLWRlYi9tYWluLmM6NTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuIGAlcycgcGFja2FnZSBhcmNoaXZlIGJhY2tlbmQgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAi4KSh4KWH4KSs4KS/4KSv4KSoIGAlcycg4KSq4KWN4KSv4KS+4KSV4KWH4KScIOCkuOCkmeCljeCkl+CljeCksOCkuSDgpKzgpY3gpK/gpL7gpJXgpIfgpKjgpY3gpKEg4KS44KSC4KS44KWN4KSV4KSw4KSjICVzIOClpFxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6NzMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJDb21tYW5kczpcbiIKKyN8ICIgIC1ifC0tYnVpbGQgPGRpcmVjdG9yeT4gWzxkZWI+XSAgIEJ1aWxkIGFuIGFyY2hpdmUuXG4iCisjfCAiICAtY3wtLWNvbnRlbnRzIDxkZWI+ICAgICAgICAgICAgICBMaXN0IGNvbnRlbnRzLlxuIgorI3wgIiAgLUl8LS1pbmZvIDxkZWI+IFs8Y2ZpbGU+IC4uLl0gICAgU2hvdyBpbmZvIHRvIHN0ZG91dC5cbiIKKyN8ICIgIC1XfC0tc2hvdyA8ZGViPiAgICAgICAgICAgICAgICAgIFNob3cgaW5mb3JtYXRpb24gb24gcGFja2FnZShzKVxuIgorI3wgIiAgLWZ8LS1maWVsZCA8ZGViPiBbPGNmaWVsZD4gLi4uXSAgU2hvdyBmaWVsZChzKSB0byBzdGRvdXQuXG4iCisjfCAiICAtZXwtLWNvbnRyb2wgPGRlYj4gWzxkaXJlY3Rvcnk+XSBFeHRyYWN0IGNvbnRyb2wgaW5mby5cbiIKKyN8ICIgIC14fC0tZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PiAgIEV4dHJhY3QgZmlsZXMuXG4iCisjfCAiICAtWHwtLXZleHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+ICBFeHRyYWN0ICYgbGlzdCBmaWxlcy5cbiIKKyN8ICIgIC0tZnN5cy10YXJmaWxlIDxkZWI+ICAgICAgICAgICAgIE91dHB1dCBmaWxlc3lzdGVtIHRhcmZpbGUuXG4iCisjfCAiXG4iCittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLWJ8LS1idWlsZCA8ZGlyZWN0b3J5PiBbPGRlYj5dICAgQnVpbGQgYW4gYXJjaGl2ZS5cbiIKKyIgIC1jfC0tY29udGVudHMgPGRlYj4gICAgICAgICAgICAgIExpc3QgY29udGVudHMuXG4iCisiICAtSXwtLWluZm8gPGRlYj4gWzxjZmlsZT4gLi4uXSAgICBTaG93IGluZm8gdG8gc3Rkb3V0LlxuIgorIiAgLVd8LS1zaG93IDxkZWI+ICAgICAgICAgICAgICAgICAgU2hvdyBpbmZvcm1hdGlvbiBvbiBwYWNrYWdlKHMpXG4iCisiICAtZnwtLWZpZWxkIDxkZWI+IFs8Y2ZpZWxkPiAuLi5dICBTaG93IGZpZWxkKHMpIHRvIHN0ZG91dC5cbiIKKyIgIC1lfC0tY29udHJvbCA8ZGViPiBbPGRpcmVjdG9yeT5dIEV4dHJhY3QgY29udHJvbCBpbmZvLlxuIgorIiAgLXh8LS1leHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+ICAgRXh0cmFjdCBmaWxlcy5cbiIKKyIgIC1YfC0tdmV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gIEV4dHJhY3QgJiBsaXN0IGZpbGVzLlxuIgorIiAgLVJ8LS1yYXctZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRXh0cmFjdCBjb250cm9sIGluZm8gYW5kIGZpbGVzLlxuIgorIiAgLS1mc3lzLXRhcmZpbGUgPGRlYj4gICAgICAgICAgICAgT3V0cHV0IGZpbGVzeXN0ZW0gdGFyZmlsZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIuCkhuCkpuClh+CktuCkueCksOClgjpcbiIKKyIgIC1ifC0t4KSo4KS/4KSw4KWN4KSu4KS+4KSjIOCkl+CksOCljeCkqOClgeCkueCli+CkuOCljSA8ZGlyZWN0b3J5PiBbPGRlYj5dICAg4KSP4KSJ4KSf4KS+IOCkuOCkvuCkruCkl+CljeCksOClgCDgpKjgpL/gpLDgpY3gpK7gpL7gpKMg4KSX4KSw4KWN4KSo4KWB4KS54KWL4KS44KWNIOClpFxuIgorIiAgLWN8LS3gpLjgpL7gpK7gpJfgpY3gpLDgpYDgpLngpLDgpYIgPGRlYj4gICAgICAgICAgICAgIOCkuOCkvuCkruCkl+CljeCksOClgOCkueCksOClgiDgpLjgpYLgpJrgpL8g4KSX4KSw4KWN4KSo4KWB4KS54KWL4KS44KWNIOClpFxuIgorIiAgLUl8LS3gpLjgpYLgpJrgpKjgpL4gPGRlYj4gWzxjZmlsZT4gLi4uXSAgICAgc3Rkb3V0IOCkruCkviDgpLjgpYLgpJrgpKjgpL4g4KSm4KWH4KSW4KS+4KSJ4KSo4KWB4KS54KWL4KS44KWNIOClpFxuIgorIiAgLVd8LS3gpKbgpYfgpJbgpL7gpIngpKjgpYHgpLngpYvgpLjgpY0gPGRlYj4gICAgICAgICAgICAgICAgICDgpKrgpY3gpK/gpL7gpJXgpYfgpJzgpLngpLDgpYHgpK7gpL4g4KS44KWC4KSa4KSo4KS+IOCkpuClh+CkluCkvuCkieCkqOClgeCkueCli+CkuOCljVxuIgorIiAgLWZ8LS3gpKvgpL7gpIHgpJ8gPGRlYj4gWzxjZmllbGQ+IC4uLl0gICBzdGRvdXQg4KSu4KS+IOCkq+CkvuCkgeCkn+CkueCksOClgiDgpKbgpYfgpJbgpL7gpIngpKjgpYHgpLngpYvgpLjgpY0g4KWkXG4iCisiICAtZXwtLeCkqOCkv+Ckr+CkqOCljeCkpOCljeCksOCkoyDgpJfgpLDgpY3gpKjgpYHgpLngpYvgpLjgpY0gPGRlYj4gWzxkaXJlY3Rvcnk+XSDgpKjgpL/gpK/gpKjgpY3gpKTgpY3gpLDgpKMg4KS44KWC4KSa4KSo4KS+IOCkneCkv+CkleCljeCkqOClgeCkueCli+CkuOCljSDgpaRcbiIKKyIgIC14fC0t4KSd4KS/4KSV4KWN4KSo4KWB4KS54KWL4KS44KWNIDxkZWI+IDxkaXJlY3Rvcnk+ICAg4KSr4KS+4KSH4KSy4KS54KSw4KWCIOCkneCkv+CkleCljeCkqOClgeCkueCli+CkuOCljSDgpaRcbiIKKyIgIC1YfC0tduCkneCkv+CkleCljeCkqOClgeCkueCli+CkuOCljSA8ZGViPiA8ZGlyZWN0b3J5PiAg4KSr4KS+4KSH4KSy4KS54KSw4KWCIOCkneCkv+CkleCljeCkqOClgeCkueCli+CkuOCljSDgpLAg4KS44KWC4KSa4KS/IOCkl+CksOCljeCkqOClgeCkueCli+CkuOCljSDgpaRcbiIKKyIgIC0tZnN5cy10YXJmaWxlIDxkZWI+ICAgICAgICAgICAgIOCkqOCkv+CksOCljeCkl+CkpCDgpKvgpL7gpIfgpLIg4KSq4KWN4KSw4KSj4KS+4KSy4KWAIOCkn+CkvuCksOCkq+CkvuCkh+CksiDgpaRcbiIKKyJcbiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjkzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyI8ZGViPiBpcyB0aGUgZmlsZW5hbWUgb2YgYSBEZWJpYW4gZm9ybWF0IGFyY2hpdmUuXG4iCisiPGNmaWxlPiBpcyB0aGUgbmFtZSBvZiBhbiBhZG1pbmlzdHJhdGl2ZSBmaWxlIGNvbXBvbmVudC5cbiIKKyI8Y2ZpZWxkPiBpcyB0aGUgbmFtZSBvZiBhIGZpZWxkIGluIHRoZSBtYWluIGBjb250cm9sJyBmaWxlLlxuIgorIlxuIgorbXNnc3RyICIiCisiPGRlYj4g4KSh4KWH4KS14KS/4KSv4KSoIOCkouCkvuCkgeCkmuCkviDgpLjgpJngpY3gpJfgpY3gpLDgpLngpJXgpYsg4KSr4KS+4KSH4KSy4KSo4KS+4KSuIOCkueCliyDgpaRcbiIKKyI8Y2ZpbGU+IOCkj+CkieCkn+CkviDgpKrgpY3gpLDgpLbgpL7gpLjgpKjgpL/gpJUg4KSr4KS+4KSH4KSyIOCkheCkteCkr+CkteCkleCliyDgpKjgpL7gpK4g4KS54KWLIOClpFxuIgorIjxjZmllbGQ+IOCkruClgeCkluCljeCkryBgY29udHJvbCcg4KSr4KS+4KSH4KSy4KSu4KS+IOCkq+CkvuCkgeCkn+CkleCliyDgpKjgpL7gpK4g4KWkIFxuIgorIlxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6OTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1zaG93Zm9ybWF0PTxmb3JtYXQ+ICAgICAgICAgICAgVXNlIGFsdGVybmF0aXZlIGZvcm1hdCBmb3IgLS1zaG93LlxuIgorIiAgLXYsIC0tdmVyYm9zZSAgICAgICAgICAgICAgICAgICAgRW5hYmxlIHZlcmJvc2Ugb3V0cHV0LlxuIgorIiAgLUQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRW5hYmxlIGRlYnVnZ2luZyBvdXRwdXQuXG4iCisiICAtLW9sZCwgLS1uZXcgICAgICAgICAgICAgICAgICAgICBTZWxlY3QgYXJjaGl2ZSBmb3JtYXQuXG4iCisiICAtLW5vY2hlY2sgICAgICAgICAgICAgICAgICAgICAgICBTdXBwcmVzcyBjb250cm9sIGZpbGUgY2hlY2sgKGJ1aWxkIGJhZFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWNrYWdlcykuXG4iCisiICAteiMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTZXQgdGhlIGNvbXByZXNzaW9uIGxldmVsIHdoZW4gYnVpbGRpbmcuXG4iCisiICAtWjx0eXBlPiAgICAgICAgICAgICAgICAgICAgICAgICBTZXQgdGhlIGNvbXByZXNzaW9uIHR5cGUgdXNlZCB3aGVuICIKKyJidWlsZGluZy5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWxsb3dlZCB0eXBlczogZ3ppcCwgeHosIGJ6aXAyLCBsem1hLCAiCisibm9uZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIuCkteCkv+CkleCksuCljeCkqjpcbiIKKyIgIC0tc2hvd2Zvcm1hdD08Zm9ybWF0PiAgICAgICAgICAgIOCkpuClh+CkluCkvuCkieCkqOCkleCkviDgpLLgpL7gpJfgpL8g4KS14KWI4KSV4KSy4KWN4KSq4KS/4KSVIOCkouCkvuCkgeCkmuCkviDgpKrgpY3gpLDgpK/gpYvgpJcg4KSX4KSw4KWN4KSo4KWB4KS54KWL4KS44KWNIOClpFxuIgorIiAgLUQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg4KSk4KWN4KSw4KWB4KSf4KS/IOCkruCli+CkmuCkqCDgpKjgpL/gpLDgpY3gpJfgpKQg4KS44KSV4KWN4KS34KSuIOCkquCkvuCksOCljeCkqOClgeCkueCli+CkuOCljSDgpaRcbiIKKyIgIC0tb2xkLCAtLW5ldyAgICAgICAgICAgICAgICAgICAgIOCkuOCkmeCljeCkl+CljeCksOCkuSDgpKLgpL7gpIHgpJrgpL4g4KSa4KSv4KSoIOCkl+CksOCljeCkqOClgeCkueCli+CkuOCljSDgpaRcbiIKKyIgIC0tbm9jaGVjayAgICAgICAgICAgICAgICAgICAgICAgIOCkq+CkvuCkh+CksiDgpJzgpL7gpIHgpJog4KSo4KS/4KSv4KSo4KWN4KSk4KWN4KSw4KSjIOCkuOCkmeCljeCkleClgeCkmuCkqCDgpJfgpLDgpY3gpKbgpJsgKOCkluCksOCkvuCktVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDgpKrgpY3gpK/gpL7gpJXgpYfgpJwg4KSo4KS/4KSw4KWN4KSu4KS+4KSjIOCkl+CksOCljeCkpuCkmykg4KWkXG4iCisiICAteiMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDgpKjgpL/gpLDgpY3gpK7gpL7gpKMg4KSX4KSw4KWN4KSm4KS+IOCkuOCkmeCljeCkleClgeCkmuCkqCDgpLjgpY3gpKTgpLAg4KS44KWH4KSfIOCkl+CksOCljeCkpuCkmyDgpaRcbiIKKyIgIC1aPHR5cGU+ICAgICAgICAgICAgICAgICAgICAgICAgIOCkqOCkv+CksOCljeCkruCkvuCkoyDgpJfgpLDgpY3gpKbgpL4g4KSq4KWN4KSw4KSv4KSXIOCkl+CksOCkv+Ckj+CkleCliyDgpLjgpJngpY3gpJXgpYHgpJrgpKgg4KSq4KWN4KSw4KSV4KS+4KSwIOCkuOClh+CknyAiCisi4KSX4KSw4KWN4KSm4KSbIOClpFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDgpLjgpY3gpLXgpYDgpJXgpYPgpKQg4KSu4KS+4KSoOiBnemlwLCBiemlwMiwgbHptYSwg4KSV4KWB4KSo4KWIIOCkueCli+Ckh+CkqCAiCisi4KWkXG4iCisiXG4iCisKKyM6IGRwa2ctZGViL21haW4uYzoxMjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIlVzZSBgZHBrZycgdG8gaW5zdGFsbCBhbmQgcmVtb3ZlIHBhY2thZ2VzIGZyb20geW91ciBzeXN0ZW0sIG9yXG4iCisiYGRzZWxlY3QnIG9yIGBhcHRpdHVkZScgZm9yIHVzZXItZnJpZW5kbHkgcGFja2FnZSBtYW5hZ2VtZW50LiAgUGFja2FnZXNcbiIKKyJ1bnBhY2tlZCB1c2luZyBgZHBrZy1kZWIgLS1leHRyYWN0JyB3aWxsIGJlIGluY29ycmVjdGx5IGluc3RhbGxlZCAhXG4iCittc2dzdHIgIiIKKyJcbiIKKyLgpKTgpKrgpL7gpIjgpIHgpJXgpYsg4KSq4KWN4KSw4KSj4KS+4KSy4KWA4KSs4KS+4KSfIOCkquCljeCkr+CkvuCkleClh+CknOCkueCksOClgiDgpLjgpY3gpKXgpL7gpKrgpKjgpL4g4KSX4KSw4KWN4KSoIOCksCDgpLngpJ/gpL7gpIngpKggYGRwa2cnIOCkquCljeCksOCkr+Cli+CklyDgpJfgpLDgpY3gpKjgpYHgpLngpYvgpLjgpY1cbiIKKyIsIOCkteCkviDgpKrgpY3gpLDgpK/gpYvgpJfgpJXgpLDgpY3gpKTgpL7gpLLgpYcg4KSw4KWB4KSa4KS+4KSJ4KSo4KWHIOCkleCkv+CkuOCkv+CkruCkleCliyDgpKrgpY3gpK/gpL7gpJXgpYfgpJwg4KS14KWN4KSv4KS14KS44KWN4KSq4KSl4KS+4KSo4KSV4KWLIOCksuCkvuCkl+CkvyBgZHNlbGVjdCcg4KS14KS+IGBhcHRpdHVkZScgIgorIuCkquCljeCksOCkr+Cli+CklyDgpJfgpLDgpY3gpKjgpYHgpLngpYvgpLjgpY0g4KWkXG4iCisiYGRwa2ctZGViIC0tZXh0cmFjdCcg4KSq4KWN4KSw4KSv4KWL4KSXIOCkl+CksOClh+CksCDgpKrgpY3gpK/gpL7gpJXgpYfgpJzgpLngpLDgpYIg4KSq4KWN4KSv4KS+4KSVIOCkqOCkl+CksOCljeCkpuCkviDgpJfgpLLgpKQg4KSw4KWB4KSq4KSu4KS+IOCkuOCljeCkpeCkvuCkquCkqOCkviDgpLngpYHgpKjgpYfgpJsgIVxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTMyCittc2dpZCAiIgorIlR5cGUgZHBrZy1kZWIgLS1oZWxwIGZvciBoZWxwIGFib3V0IG1hbmlwdWxhdGluZyAqLmRlYiBmaWxlcztcbiIKKyJUeXBlIGRwa2cgLS1oZWxwIGZvciBoZWxwIGFib3V0IGluc3RhbGxpbmcgYW5kIGRlaW5zdGFsbGluZyBwYWNrYWdlcy4iCittc2dzdHIgIiIKKyIqLmRlYiDgpKvgpL7gpIfgpLLgpLngpLDgpYEg4KSu4KS/4KSy4KS+4KSJ4KSoIOCkruCkpuCljeCkpuCkpOCkleCliyDgpLLgpL7gpJfgpL8gZHBrZy1kZWIgLS1oZWxwIOCkn+CkvuCkh+CkqiDgpJfgpLDgpY3gpKjgpYHgpLngpYvgpLjgpY07XG4iCisi4KSq4KWN4KSv4KS+4KSV4KWH4KSc4KS54KSw4KWB4KSV4KWLIOCkuOCljeCkpeCkvuCkquCkqOCkviDgpJfgpLDgpY3gpKjgpYcg4KSwIOCkuOCljeCkpeCkvuCkquCkqOCkvuCkrOCkvuCknyDgpLngpJ/gpL7gpIngpKjgpYcg4KSs4KS+4KSw4KWH4KSu4KS+IOCkruCkpuCljeCkpuCkpCDgpJfgpLDgpY3gpKjgpJXgpYsg4KSy4KS+4KSX4KS/IGRwa2cgLS1oZWxwICIKKyLgpJ/gpL7gpIfgpKog4KSX4KSw4KWN4KSo4KWB4KS54KWL4KS44KWNIOClpCIKKworIzogZHBrZy1kZWIvbWFpbi5jOjE0OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBpbnRlZ2VyIGZvciAtJWM6ICclLjI1MHMnIgorbXNnc3RyICItLSVzIOCkleCkviDgpLLgpL7gpJfgpL8g4KSH4KSo4KWN4KSc4KS/4KSf4KSwIOCkheCkteCliOCkpzogYCUuMjUwcycgICAiCisKKyM6IGRwa2ctZGViL21haW4uYzoxNTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgY29tcHJlc3Npb24gbGV2ZWwgZm9yIC0lYzogJWxkJyIKK21zZ3N0ciAiLS0lcyDgpJXgpL4g4KSy4KS+4KSX4KS/IOCkh+CkqOCljeCknOCkv+Ckn+CksCDgpIXgpLXgpYjgpKc6IGAlLjI1MHMnICAgIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTYxCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gY29tcHJlc3Npb24gdHlwZSBgJXMnISIKK21zZ3N0ciAi4KSF4KSc4KWN4KSe4KS+4KSkIOCkuOCkmeCljeCkleClgeCkmuCkqCDgpKrgpY3gpLDgpJXgpL7gpLAgYCVzJyEiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjUyCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBkaWdpdCAoY29kZSAlZCkgaW4gJXMiCittc2dzdHIgIuCkq+CkvuCkh+CksiBgJS4yNTBzJyDgpKbgpYHgpLfgpL/gpKQg4KSbIC0g4KSW4KSw4KS+4KSsIOCkheCkmeCljeCklSAo4KSV4KWL4KShICVkKSDgpK7gpL4gJXMiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjYwCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtICUuMjUwcyBtaXNzaW5nIgorbXNnc3RyICLgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KSm4KWC4KS34KS/4KSkIOCkmyAtICUuMjUwcyDgpLngpLDgpL7gpIfgpLDgpLngpYfgpJsiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjYzCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIG1pc3NpbmcgbmV3bGluZSBhZnRlciAlLjI1MHMiCittc2dzdHIgIuCkq+CkvuCkh+CksiBgJS4yNTBzJyDgpKbgpYLgpLfgpL/gpKQg4KSbIC0gJS4yNTBzIOCkquCkm+CkvyDgpKjgpK/gpL7gpIEg4KSy4KS+4KSH4KSoIOCkueCksOCkn+CkvuCkh+CksOCkueClh+CkmyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6ODkgZHBrZy1zcGxpdC9tYWluLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHJlYWRpbmcgJS4yNTBzIgorbXNnc3RyICIlLjI1MHMg4KSq4KSi4KWN4KSm4KS+IOCkpOCljeCksOClgeCkn+CkvyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTAzCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBtYWdpYyBhdCBlbmQgb2YgZmlyc3QgaGVhZGVyIgorbXNnc3RyICLgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KSm4KWB4KS34KS/4KSkIOCkmyAtIOCkquCkueCkv+CksuCliyDgpLngpYfgpKHgpLDgpJXgpYsg4KS44KSu4KS+4KSq4KWN4KSk4KWA4KSu4KS+IOCkluCksOCkvuCkrCDgpJzgpL7gpKbgpYEiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjExMworIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgcGFkZGluZyBjaGFyYWN0ZXIgKGNvZGUgJWQpIgorbXNnc3RyICLgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KSm4KWC4KS34KS/4KSkIOCkmyAtIOCkluCksOCkvuCkrCDgpJfgpKbgpY3gpKbgpL4g4KSV4KWN4KSv4KS+4KSw4KWH4KSV4KWN4KSf4KSwICjgpJXgpYvgpKEgJWQpIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gbnVsbHMgaW4gaW5mbyBzZWN0aW9uIgorbXNnc3RyICLgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KSm4KWC4KS34KS/4KSkIOCkmyAtIOCkuOClguCkmuCkqOCkviDgpLjgpYfgpJXgpY3gpLjgpKjgpK7gpL4g4KS24KWC4KSo4KWN4KSv4KS54KSw4KWCIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMjIKKyMsIGZ1enp5Cittc2dpZCAiZm9ybWF0IHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICLgpLjgpILgpLjgpY3gpJXgpLDgpKMg4KSo4KSu4KWN4KSs4KSwIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBmb3JtYXQgdmVyc2lvbiBgJS4yNTBzJyAtIHlvdSBuZWVkIGEgbmV3ZXIgZHBrZy1zcGxpdCIKK21zZ3N0ciAiIgorIuCkq+CkvuCkh+CksiBgJS4yNTBzJyDgpKLgpL7gpIHgpJrgpL7gpKzgpKbgpY3gpKcg4KS44KSC4KS44KWN4KSV4KSw4KSjIOCkueCliyBgJS4yNTBzJyAtIOCkpOCkquCkvuCkiOCkgeCksuCkvuCkiCDgpKjgpK/gpL7gpIEgZHBrZy1zcGxpdCDgpJrgpL7gpLngpL/gpKjgpY3gpJsiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyNworIywgZnV6enkKK21zZ2lkICJwYWNrYWdlIG5hbWUiCittc2dzdHIgIiAo4KSq4KWN4KSv4KS+4KSV4KWH4KScOiAiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyOAorIywgZnV6enkKK21zZ2lkICJwYWNrYWdlIHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICLgpLjgpILgpLjgpY3gpJXgpLDgpKMg4KSo4KSu4KWN4KSs4KSwIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMjkKK21zZ2lkICJwYWNrYWdlIGZpbGUgTUQ1IGNoZWNrc3VtIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEzMgorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgTUQ1IGNoZWNrc3VtIGAlLjI1MHMnIgorbXNnc3RyICLgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KSm4KWC4KS34KS/4KSkIOCkmyAtIOCkluCksOCkvuCkrCBNRDUg4KSa4KWH4KSV4KS44KSuIGAlLjI1MHMnIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMzQgZHBrZy1zcGxpdC9pbmZvLmM6MTM1Cittc2dpZCAiYXJjaGl2ZSB0b3RhbCBzaXplIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEzNiBkcGtnLXNwbGl0L2luZm8uYzoxMzcKK21zZ2lkICJhcmNoaXZlIHBhcnQgb2Zmc2V0IgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEzOQorIywgZnV6enkKK21zZ2lkICJhcmNoaXZlIHBhcnQgbnVtYmVycyIKK21zZ3N0ciAi4KS44KSC4KS44KWN4KSV4KSw4KSjIOCkqOCkruCljeCkrOCksCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTQyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBubyBzbGFzaCBiZXR3ZWVuIHBhcnQgbnVtYmVycyIKK21zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBubyBzbGFzaCBiZXR3ZWVuIGFyY2hpdmUgcGFydCBudW1iZXJzIgorbXNnc3RyICLgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KSm4KWC4KS34KS/4KSkIOCkmyAtIOCkreCkvuCklyDgpKjgpK7gpY3gpKzgpLDgpLngpLDgpYIg4KSs4KWA4KSaIOCkuOCljeCksuCljeCkr+CkvuCkuCDgpJvgpYjgpKgiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE0NQorbXNnaWQgIm51bWJlciBvZiBhcmNoaXZlIHBhcnRzIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE0NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIG51bWJlciBvZiBhcmNoaXZlIHBhcnRzIgorbXNnc3RyICLgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KSm4KWC4KS34KS/4KSkIOCkmyAtIOCkluCksOCkvuCkrCDgpK3gpL7gpJcg4KSo4KSu4KWN4KSs4KSwIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDkKKyMsIGZ1enp5Cittc2dpZCAiYXJjaGl2ZSBwYXJ0cyBudW1iZXIiCittc2dzdHIgIuCkuOCkguCkuOCljeCkleCksOCkoyDgpKjgpK7gpY3gpKzgpLAiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE1MQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIHBhcnQgbnVtYmVyIgorbXNnaWQgImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBhcmNoaXZlIHBhcnQgbnVtYmVyIgorbXNnc3RyICLgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KSm4KWC4KS34KS/4KSkIOCkmyAtIOCkluCksOCkvuCkrCDgpK3gpL7gpJcg4KSo4KSu4KWN4KSs4KSwIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNTcKKyMsIGZ1enp5Cittc2dpZCAicGFja2FnZSBhcmNoaXRlY3R1cmUiCittc2dzdHIgIiAo4KSq4KWN4KSv4KS+4KSV4KWH4KScOiAiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE2NgorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgbWFnaWMgYXQgZW5kIG9mIHNlY29uZCBoZWFkZXIiCittc2dzdHIgIuCkq+CkvuCkh+CksiBgJS4yNTBzJyDgpKbgpYLgpLfgpL/gpKQg4KSbIC0g4KSm4KWL4KS44KWN4KSw4KWLIOCkueClh+CkoeCksOCkleCliyDgpLjgpK7gpL7gpKrgpY3gpKTgpL/gpK7gpL4g4KSW4KSw4KS+4KSsIOCknOCkvuCkpuClgiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTY4CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIHNlY29uZCBtZW1iZXIgaXMgbm90IGRhdGEgbWVtYmVyIgorbXNnc3RyICLgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KSm4KWC4KS34KS/4KSkIOCkmyAtIOCkpuCli+CkuOCljeCksOCliyDgpLjgpKbgpLjgpY3gpK8g4KSh4KWH4KSf4KS+IOCkuOCkpuCkuOCljeCkryDgpLngpYvgpIfgpKgiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE3NAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSB3cm9uZyBudW1iZXIgb2YgcGFydHMgZm9yIHF1b3RlZCBzaXplcyIKK21zZ3N0ciAi4KSr4KS+4KSH4KSyIGAlLjI1MHMnIOCkpuClguCkt+Ckv+CkpCDgpJsgLeCkieCkpuCljeCkp+CksOCkoyDgpJfgpLDgpL/gpI/gpJXgpYsg4KS44KS+4KSH4KSc4KS54KSw4KWB4KSV4KWLIOCksuCkvuCkl+CkvyDgpK3gpL7gpJfgpLngpLDgpYHgpJXgpYsg4KSX4KSy4KSkIOCkqOCkruCljeCkrOCksCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTc4CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIHNpemUgaXMgd3JvbmcgZm9yIHF1b3RlZCBwYXJ0IG51bWJlciIKK21zZ3N0ciAi4KSr4KS+4KSH4KSyIGAlLjI1MHMnIOCkpuClguCkt+Ckv+CkpCDgpJsgLSDgpIngpKbgpY3gpKfgpLDgpKMg4KSX4KSw4KS/4KSP4KSV4KWLIOCkreCkvuCklyDgpKjgpK7gpY3gpKzgpLDgpJXgpYsg4KSy4KS+4KSX4KS/IOCkuOCkvuCkh+CknCDgpJfgpLLgpKQg4KSbIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxODQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZzdGF0IHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4KSt4KS+4KSXIOCkq+CkvuCkh+CksmAlLjI1MHMnIGZzdGF0IOCkl+CksOCljeCkqCDgpIXgpJXgpY3gpLfgpK4iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE4OQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSB0b28gc2hvcnQiCittc2dzdHIgIuCkq+CkvuCkh+CksiBgJS4yNTBzJyDgpKbgpYLgpLfgpL/gpKQg4KSbIC0g4KSF4KSk4KS/IOCkm+Cli+Ckn+CliyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjAyIGRwa2ctc3BsaXQvaW5mby5jOjI0OQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgb3BlbiBhcmNoaXZlIHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4KS44KSZ4KWN4KSX4KWN4KSw4KS5IOCkreCkvuCklyDgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KSW4KWL4KSy4KWN4KSoIOCkuOCkleCkv+CkpuCliOCkqCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjA0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgbm90IGFuIGFyY2hpdmUgcGFydCIKK21zZ3N0ciAi4KSr4KS+4KSH4KSyIGAlLjI1MHMnIOCkj+CkieCkn+CkviDgpLjgpJngpY3gpJfgpY3gpLDgpLkg4KSt4KS+4KSXIOCkueCli+Ckh+CkqCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjA5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiJXM6XG4iCisjfCAiICAgIFBhcnQgZm9ybWF0IHZlcnNpb246ICAgICAgICAgICAgJXNcbiIKKyN8ICIgICAgUGFydCBvZiBwYWNrYWdlOiAgICAgICAgICAgICAgICAlc1xuIgorI3wgIiAgICAgICAgLi4uIHZlcnNpb246ICAgICAgICAgICAgICAgICVzXG4iCisjfCAiICAgICAgICAuLi4gTUQ1IGNoZWNrc3VtOiAgICAgICAgICAgJXNcbiIKKyN8ICIgICAgICAgIC4uLiBsZW5ndGg6ICAgICAgICAgICAgICAgICAlbHUgYnl0ZXNcbiIKKyN8ICIgICAgICAgIC4uLiBzcGxpdCBldmVyeTogICAgICAgICAgICAlbHUgYnl0ZXNcbiIKKyN8ICIgICAgUGFydCBudW1iZXI6ICAgICAgICAgICAgICAgICAgICAlZC8lZFxuIgorI3wgIiAgICBQYXJ0IGxlbmd0aDogICAgICAgICAgICAgICAgICAgICV6aSBieXRlc1xuIgorI3wgIiAgICBQYXJ0IG9mZnNldDogICAgICAgICAgICAgICAgICAgICVsdSBieXRlc1xuIgorI3wgIiAgICBQYXJ0IGZpbGUgc2l6ZSAodXNlZCBwb3J0aW9uKTogICVsdSBieXRlc1xuIgorI3wgIlxuIgorbXNnaWQgIiIKKyIlczpcbiIKKyIgICAgUGFydCBmb3JtYXQgdmVyc2lvbjogICAgICAgICAgICAlc1xuIgorIiAgICBQYXJ0IG9mIHBhY2thZ2U6ICAgICAgICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gdmVyc2lvbjogICAgICAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiBhcmNoaXRlY3R1cmU6ICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIE1ENSBjaGVja3N1bTogICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gbGVuZ3RoOiAgICAgICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgICAgICAuLi4gc3BsaXQgZXZlcnk6ICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgIFBhcnQgbnVtYmVyOiAgICAgICAgICAgICAgICAgICAgJWQvJWRcbiIKKyIgICAgUGFydCBsZW5ndGg6ICAgICAgICAgICAgICAgICAgICAlamQgYnl0ZXNcbiIKKyIgICAgUGFydCBvZmZzZXQ6ICAgICAgICAgICAgICAgICAgICAlamQgYnl0ZXNcbiIKKyIgICAgUGFydCBmaWxlIHNpemUgKHVzZWQgcG9ydGlvbik6ICAlamQgYnl0ZXNcbiIKKyJcbiIKK21zZ3N0ciAiIgorIiVzOlxuIgorIiAgICDgpK3gpL7gpJcg4KSi4KS+4KSB4KSa4KS+IOCkuOCkguCkuOCljeCkleCksOCkozogICAgICAgICAgICAlc1xuIgorIiAgICDgpKrgpY3gpK/gpL7gpJXgpYfgpJzgpJXgpYsg4KSt4KS+4KSXOiAgICAgICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIOCkuOCkguCkuOCljeCkleCksOCkozogICAgICAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiBNRDUg4KSa4KWH4KSV4KS44KSuOiAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiDgpLLgpK7gpY3gpKzgpL7gpIg6ICAgICAgICAgICAgICAgICAlbHUg4KSs4KS+4KSH4KSf4KS54KSw4KWCXG4iCisiICAgICAgICAuLi4g4KSq4KWN4KSw4KSk4KWN4KSv4KWH4KSVIOCkteCkv+CkreCkvuCknOCkqCDgpJfgpLDgpY3gpKjgpYHgpLngpYvgpLjgpY06ICAgICAgICAgICAgJWx1IOCkrOCkvuCkh+Ckn+CkueCksOClglxuIgorIiAgICDgpK3gpL7gpJcg4KSo4KSu4KWN4KSs4KSwOiAgICAgICAgICAgICAgICAgICAgJWQvJWRcbiIKKyIgICAg4KSt4KS+4KSX4KSV4KWLIOCksuCkruCljeCkrOCkvuCkiDogICAgICAgICAgICAgICAgICAgICV6aSDgpKzgpL7gpIfgpJ/gpLngpLDgpYJcbiIKKyIgICAg4KSt4KS+4KSXIOCkheCkq+CkuOClh+CknzogICAgICAgICAgICAgICAgICAgICVsdSDgpKzgpL7gpIfgpJ/gpLngpLDgpYJcbiIKKyIgICAg4KSr4KS+4KSH4KSyIOCkuOCkvuCkh+CknOCkleCliyDgpK3gpL7gpJco4KSq4KWN4KSw4KSv4KWL4KSXIOCkl+CksOCkv+Ckj+CkleCliyDgpK3gpL7gpJcpOiAgJWx1IOCkrOCkvuCkh+Ckn+CkueCksOClglxuIgorIlxuIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyMjUKKyMsIGZ1enp5CisjfCBtc2dpZCAiPHVua25vd24+IgorbXNnY3R4dCAiYXJjaGl0ZWN0dXJlIgorbXNnaWQgIjx1bmtub3duPiIKK21zZ3N0ciAiPHVua25vd24+IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyNDQgZHBrZy1zcGxpdC9qb2luLmM6MTA1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICItLSVzIHJlcXVpcmVzIG9uZSBvciBtb3JlIHBhcnQgZmlsZSBhcmd1bWVudHMiCittc2dzdHIgIi0t4KS44KWC4KSa4KSo4KS+4KSy4KS+4KSIIOCkj+CkieCkn+CkviDgpLXgpL4g4KSn4KWH4KSw4KWIIOCkreCkvuCklyDgpKvgpL7gpIfgpLIg4KSk4KSw4KWN4KSV4KS54KSw4KWCIOCkhuCkteCktuCljeCkr+CklSDgpKrgpLDgpY3gpKbgpJsiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjI1NQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlcycgaXMgbm90IGFuIGFyY2hpdmUgcGFydFxuIgorbXNnc3RyICLgpKvgpL7gpIfgpLIgYCVzJyDgpI/gpIngpJ/gpL4g4KS44KSZ4KWN4KSX4KWN4KSw4KS5IOCkreCkvuCklyDgpLngpYvgpIfgpKhcbiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHV0dGluZyBwYWNrYWdlICVzIHRvZ2V0aGVyIGZyb20gJWQgcGFydDogIgorbXNnaWRfcGx1cmFsICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0czogIgorbXNnc3RyWzBdICIiCittc2dzdHJbMV0gIiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gb3V0cHV0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuCkqOCkv+CksOCljeCkl+CkvuCkpCDgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KSW4KWL4KSy4KWN4KSoIOCkheCkleCljeCkt+CkriIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIChyZSlvcGVuIGlucHV0IHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4KSG4KSX4KSkIOCkreCkvuCklyDgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KSq4KWB4KSoOiDgpJbgpYvgpLLgpY3gpKgg4KSF4KSV4KWN4KS34KSuIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1OAorIywgZnV6enkKKyN8IG1zZ2lkICJTa2lwcGluZyBkZXNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dpZCAic2tpcHBpbmcgc3BsaXQgcGFja2FnZSBoZWFkZXIiCittc2dzdHIgIuCkmuCkr+CkqCDgpLngpJ/gpL7gpI/gpJXgpYsg4KSq4KWN4KSv4KS+4KSV4KWH4KScICVzIOCkq+CkoeCljeCkleCkvuCkieCkpuCliFxuIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1OQorIywgZnV6enkKKyN8IG1zZ2lkICJtaXNzaW5nIHBhY2thZ2UiCittc2dpZCAic3BsaXQgcGFja2FnZSBwYXJ0IgorbXNnc3RyICLgpLngpLDgpL7gpIfgpLDgpLngpYfgpJXgpYsg4KSq4KWN4KSv4KS+4KSV4KWH4KScIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo2OSBkcGtnLXNwbGl0L3NwbGl0LmM6MjM3CisjLCBjLWZvcm1hdAorbXNnaWQgImRvbmVcbiIKK21zZ3N0ciAi4KSq4KWC4KSw4KS+IOCkreCkr+Cli1xuIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo4NQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlcyBgJS4yNTBzJyBhbmQgYCUuMjUwcycgYXJlIG5vdCBwYXJ0cyBvZiB0aGUgc2FtZSBmaWxlIgorbXNnc3RyICLgpKvgpL7gpIfgpLLgpLngpLDgpYIgYCUuMjUwcycg4KSwIGAlLjI1MHMnICDgpIngpLngpYAg4KSr4KS+4KSH4KSy4KSV4KS+IOCkreCkvuCkl+CkueCksOClgiDgpLngpYvgpIfgpKgiCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjkwCisjLCBjLWZvcm1hdAorbXNnaWQgInRoZXJlIGFyZSBzZXZlcmFsIHZlcnNpb25zIG9mIHBhcnQgJWQgLSBhdCBsZWFzdCBgJS4yNTBzJyBhbmQgYCUuMjUwcyciCittc2dzdHIgIuCkpOCljeCkr+CkueCkvuCkgSAlZCDgpK3gpL7gpJfgpJXgpYsg4KSF4KSy4KSXIOCkuOCkguCkuOCljeCkleCksOCko+CkueCksOClgiDgpJvgpKjgpY0gLSDgpJXgpK7gpY3gpKTgpL/gpK7gpL4gYCUuMjUwcycg4KSwYCUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjEyOAorIywgYy1mb3JtYXQKK21zZ2lkICJwYXJ0ICVkIGlzIG1pc3NpbmciCittc2dzdHIgIuCkreCkvuCklyAlZCDgpLngpLDgpL7gpIfgpLDgpLngpYfgpJXgpYsg4KSbIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo0NworIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIHNwbGl0L2pvaW4gdG9vbDsgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAi4KSh4KWH4KS14KS/4KSv4KSoIGAlcycg4KSq4KWN4KSv4KS+4KSV4KWH4KScIOCkieCkquCkleCksOCkoyDgpLXgpL/gpK3gpL7gpJzgpKgv4KSc4KSh4KS+4KSoIOCkl+CksOCljeCkqOClgeCkueCli+CkuOCljTvgpLjgpILgpLjgpY3gpJXgpLDgpKMgJXMg4KWkXG4iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIkNvcHlyaWdodCAoQykgMTk5NC0xOTk2IElhbiBKYWNrc29uLlxuIgorbXNnc3RyICLgpKrgpY3gpLDgpKTgpL/gpLLgpL/gpKrgpYAg4KSF4KSn4KS/4KSV4KS+4KSwIOClp+Clr+Clr+Clqi3gpafgpa/gpa/gpawg4KSH4KSv4KS+4KSoIOCknOCljeCkr+CkvuCkleCljeCkuOCkqCDgpaRcbiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6NjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLXN8LS1zcGxpdCA8ZmlsZT4gWzxwcmVmaXg+XSAgICAgU3BsaXQgYW4gYXJjaGl2ZS5cbiIKKyIgIC1qfC0tam9pbiA8cGFydD4gPHBhcnQ+IC4uLiAgICAgIEpvaW4gcGFydHMgdG9nZXRoZXIuXG4iCisiICAtSXwtLWluZm8gPHBhcnQ+IC4uLiAgICAgICAgICAgICBEaXNwbGF5IGluZm8gYWJvdXQgYSBwYXJ0LlxuIgorIiAgLWF8LS1hdXRvIC1vIDxjb21wbGV0ZT4gPHBhcnQ+ICAgQXV0by1hY2N1bXVsYXRlIHBhcnRzLlxuIgorIiAgLWx8LS1saXN0cSAgICAgICAgICAgICAgICAgICAgICAgTGlzdCB1bm1hdGNoZWQgcGllY2VzLlxuIgorIiAgLWR8LS1kaXNjYXJkIFs8ZmlsZW5hbWU+IC4uLl0gICAgRGlzY2FyZCB1bm1hdGNoZWQgcGllY2VzLlxuIgorIlxuIgorbXNnc3RyICIiCisi4KSG4KSm4KWH4KS24KS54KSw4KWCOlxuIgorIiAgLXN8LS3gpLXgpL/gpK3gpL7gpJzgpKgg4KSX4KSw4KWN4KSo4KWB4KS54KWL4KS44KWNIDxmaWxlPiBbPHByZWZpeD5dICAgICDgpI/gpIngpJ/gpL4g4KS44KSZ4KWN4KSX4KWN4KSw4KS5IOCkteCkv+CkreCkvuCknOCkqCDgpJfgpLDgpY3gpKjgpYHgpLngpYvgpLjgpY0g4KWkXG4iCisiICAtanwtLeCknOCkoeCkvuCkqCDgpJfgpLDgpY3gpKjgpYHgpLngpYvgpLjgpY0gPHBhcnQ+IDxwYXJ0PiAuLi4gICAgICDgpK3gpL7gpJfgpLngpLDgpYIg4KS44KSC4KSX4KWIIOCknOCkoeCkvuCkqCDgpJfgpLDgpY3gpKjgpYHgpLngpYvgpLjgpY0g4KWkXG4iCisiICAtSXwtLeCkuOClguCkmuCkqOCkviA8cGFydD4gLi4uICAgICAgICAgICAgIOCkj+CkieCkn+CkviDgpKzgpL7gpJfgpJXgpYsg4KSs4KS+4KSw4KWH4KSu4KS+IOCkuOClguCkmuCkqOCkviDgpKrgpY3gpLDgpKbgpLDgpY3gpLbgpKgg4KSX4KSw4KWN4KSo4KWB4KS54KWL4KS44KWNIOClpFxuIgorIiAgLWF8LS1hdXRvIC1vIDxjb21wbGV0ZT4gPHBhcnQ+ICAg4KSt4KS+4KSX4KS54KSw4KWCIOCkuOCljeCkteCkpCDgpLjgpILgpJrgpK8g4KSX4KSw4KWN4KSo4KWB4KS54KWL4KS44KWNIOClpFxuIgorIiAgLWx8LS1saXN0cSAgICAgICAgICAgICAgICAgICAgICAgIOCkruClh+CksiDgpKjgpJbgpL7gpI/gpJXgpL4g4KSf4KWB4KSV4KWN4KSw4KS+4KS54KSw4KWCIOCkuOClguCkmuCkvyDgpJfgpLDgpY3gpKjgpYHgpLngpYvgpLjgpY0g4KWkXG4iCisiICAtZHwtLeCkm+Cli+CkoeCljeCkqOClgeCkueCli+CkuOCljSBbPGZpbGVuYW1lPiAuLi5dICAgIOCkruClh+CksiDgpKjgpJbgpL7gpI/gpJXgpL4g4KSf4KWB4KSV4KWN4KSw4KS+4KS54KSw4KWCIOCkm+Cli+CkoeCljeCkqOClgeCkueCli+CkuOCljSDgpaRcbiIKKyJcbiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6ODIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJPcHRpb25zOlxuIgorI3wgIiAgLS1kZXBvdGRpciA8ZGlyZWN0b3J5PiAgICAgICAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMvJXMuXG4iCisjfCAiICAtU3wtLXBhcnRzaXplIDxzaXplPiAgICAgICAgICAgICBJbiBLaUIsIGZvciAtcyAoZGVmYXVsdCBpcyA0NTApLlxuIgorI3wgIiAgLW98LS1vdXRwdXQgPGZpbGU+ICAgICAgICAgICAgICAgRm9yIC1qIChkZWZhdWx0IGlzIDxwYWNrYWdlPi08dmVyc2lvbj4uIgorI3wgImRlYikuXG4iCisjfCAiICAtUXwtLW5wcXVpZXQgICAgICAgICAgICAgICAgICAgICBCZSBxdWlldCB3aGVuIC1hIGlzIG5vdCBhIHBhcnQuXG4iCisjfCAiICAtLW1zZG9zICAgICAgICAgICAgICAgICAgICAgICAgICBHZW5lcmF0ZSA4LjMgZmlsZW5hbWVzLlxuIgorI3wgIlxuIgorI3wgIkV4aXQgc3RhdHVzOiAwID0gT0s7ICAxID0gLWEgaXMgbm90IGEgcGFydDsgIDIgPSB0cm91YmxlIVxuIgorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1kZXBvdGRpciA8ZGlyZWN0b3J5PiAgICAgICAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMvJXMuXG4iCisiICAtU3wtLXBhcnRzaXplIDxzaXplPiAgICAgICAgICAgICBJbiBLaUIsIGZvciAtcyAoZGVmYXVsdCBpcyA0NTApLlxuIgorIiAgLW98LS1vdXRwdXQgPGZpbGU+ICAgICAgICAgICAgICAgRmlsZW5hbWUsIGZvciAtaiAoZGVmYXVsdCBpc1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGFja2FnZT5fPHZlcnNpb24+XzxhcmNoPi5kZWIpLlxuIgorIiAgLVF8LS1ucHF1aWV0ICAgICAgICAgICAgICAgICAgICAgQmUgcXVpZXQgd2hlbiAtYSBpcyBub3QgYSBwYXJ0LlxuIgorIiAgLS1tc2RvcyAgICAgICAgICAgICAgICAgICAgICAgICAgR2VuZXJhdGUgOC4zIGZpbGVuYW1lcy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIuCkteCkv+CkleCksuCljeCkquCkueCksOClgjpcbiIKKyIgIC0tZGVwb3RkaXIgPGRpcmVjdG9yeT4gICAgICAgICAgICVzLyVzIOCkleCliyDgpLjgpJ/gpY3gpJ/gpL7gpK7gpL4gPGRpcmVjdG9yeT4g4KSq4KWN4KSw4KSv4KWL4KSXIOCkl+CksOCljeCkqOClgeCkueCli+CkuOCljSAiCisi4KWkXG4iCisiICAtU3wtLeCkreCkvuCklyDgpLjgpL7gpIfgpJwgPHNpemU+ICAgICAgICAgICAgICBLaUIg4KSu4KS+LCAtcyDgpJXgpL4g4KSy4KS+4KSX4KS/ICjgpKrgpYLgpLDgpY3gpLXgpKjgpL/gpLDgpY3gpKfgpL7gpLDgpL/gpKQg4KWq4KWr4KWmIOCkueCliykgIgorIuClpFxuIgorIiAgLW98LS3gpKjgpL/gpLDgpY3gpJfgpL7gpKQgPGZpbGU+ICAgICAgICAgICAgICAgLWog4KSV4KS+IOCksuCkvuCkl+CkvyAo4KSq4KWC4KSw4KWN4KS14KSo4KS/4KSw4KWN4KSn4KS+4KSw4KS/4KSkIDxwYWNrYWdlPi0iCisiPHZlcnNpb24+LmRlYiDgpLngpYspIOClpFxuIgorIiAgLVF8LS1ucHF1aWV0ICAgICAgICAgICAgICAgICAgICAgIC1hICDgpK3gpL7gpJcg4KSo4KS54KWB4KSB4KSm4KS+IOCkuOCljeCkpeCkv+CksCDgpLDgpLngpKjgpYHgpLngpYvgpLjgpY0g4KWkXG4iCisiICAtLW1zZG9zICAgICAgICAgICAgICAgICAgICAgICAgICDgpa4u4KWpIOCkq+CkvuCkh+CksuCkqOCkvuCkruCkueCksOClgiDgpLjgpL/gpLDgpY3gpJzgpKjgpL4g4KSX4KSw4KWN4KSo4KWB4KS54KWL4KS44KWNIOClpFxuIgorIlxuIgorIuCkteCkuOCljeCkpOClgeCkuOCljeCkpeCkv+CkpOCkvyDgpKzgpKjgpY3gpKYg4KSX4KSw4KWN4KSo4KWB4KS54KWL4KS44KWNOiAwID0gT0s7ICAxID0gLWEg4KSt4KS+4KSXIOCkueClizsgIDIgPSDgpLjgpK7gpLjgpY3gpK/gpL4gIVxuIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo5MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiRXhpdCBzdGF0dXM6XG4iCisiICAwID0gb2tcbiIKKyIgIDEgPSB3aXRoIC0tYXV0bywgZmlsZSBpcyBub3QgYSBwYXJ0XG4iCisiICAyID0gdHJvdWJsZVxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjEwMworbXNnaWQgIlR5cGUgZHBrZy1zcGxpdCAtLWhlbHAgZm9yIGhlbHAuIgorbXNnc3RyICLgpK7gpKbgpY3gpKbgpKTgpJXgpYsg4KSy4KS+4KSX4KS/IGRwa2ctc3BsaXQgLS1oZWxwIOCkn+CkvuCkh+CkqiDgpJfgpLDgpY3gpKjgpYHgpLngpYvgpLjgpY0iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjExNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBmaWxlIGluICUuMjUwcyIKK21zZ3N0ciAiJS4yNTBzIOCkruCkviDgpIXgpKjgpKrgpYfgpJXgpY3gpLfgpL/gpKQg4KSr4KS+4KSH4KSy4KSV4KWLIOCkuOCkruCkvuCkquCljeCkpOCkvyIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6MTI2Cittc2dpZCAicGFydCBzaXplIGlzIGZhciB0b28gbGFyZ2Ugb3IgaXMgbm90IHBvc2l0aXZlIgorbXNnc3RyICLgpK3gpL7gpJcg4KS44KS+4KSH4KScIOCkn+CkvuCkgeCkouCkviDgpIXgpKTgpL8g4KSg4KWC4KSy4KWLIOCkmyDgpLXgpL4g4KS44KSV4KS+4KSw4KS+4KSk4KWN4KSu4KSVIOCkm+CliOCkqCIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6MTMwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJwYXJ0IHNpemUgbXVzdCBiZSBhdCBsZWFzdCAlZCBLaUIgKHRvIGFsbG93IGZvciBoZWFkZXIpIgorbXNnc3RyICLgpK3gpL7gpJcg4KS44KS+4KSH4KScIOCkleCkruCljeCkpOCkv+CkruCkviAlZGsg4KS54KWB4KSo4KWB4KSq4KSw4KWN4KSbICjgpLngpYfgpKHgpLDgpJXgpYsg4KSy4KS+4KSX4KS/IOCkheCkqOClgeCkruCkpOCkvyDgpKbgpL/gpKgpIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgZGVwb3QgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICLgpKHgpL/gpKrgpYvgpJ8g4KSh4KS+4KSH4KSw4KWH4KSV4KWN4KSf4KWN4KSw4KWAIGAlLjI1MHMnIOCkquCkouCljeCkqCDgpIXgpJXgpY3gpLfgpK4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxMzQKK21zZ2lkICItLWF1dG8gcmVxdWlyZXMgdGhlIHVzZSBvZiB0aGUgLS1vdXRwdXQgb3B0aW9uIgorbXNnc3RyICItLeCkqOCkv+CksOCljeCkl+CkvuCkpCDgpLXgpL/gpJXgpLLgpY3gpKrgpJXgpYsg4KSq4KWN4KSw4KSv4KWL4KSXIOCkuOCljeCkteCkvuCkmuCkvuCksuCkv+CkpC0t4KSG4KS14KS24KWN4KSv4KSVIOCkmyIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjEzNgorbXNnaWQgIi0tYXV0byByZXF1aXJlcyBleGFjdGx5IG9uZSBwYXJ0IGZpbGUgYXJndW1lbnQiCittc2dzdHIgIi0t4KS14KS+4KS44KWN4KSk4KS14KS/4KSVIOCkj+CklSDgpK3gpL7gpJcg4KSr4KS+4KSH4KSyIOCkpOCksOCljeCklSDgpLjgpY3gpLXgpJrgpL7gpLLgpL/gpKQg4KSG4KS14KS24KWN4KSv4KSVIOCkquCksOCljeCkpuCkmyIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE0MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuCkreCkvuCklyDgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KSq4KSi4KWN4KSm4KS+IOCkpOCljeCksOClgeCkn+CkvyIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE0MworIywgYy1mb3JtYXQKK21zZ2lkICJGaWxlIGAlLjI1MHMnIGlzIG5vdCBwYXJ0IG9mIGEgbXVsdGlwYXJ0IGFyY2hpdmUuXG4iCittc2dzdHIgIuCkq+CkvuCkh+CksiBgJS4yNTBzJyDgpKzgpLngpYHgpIHgpK3gpL7gpJcg4KS44KSZ4KWN4KSX4KWN4KSw4KS54KSV4KWLIOCkreCkvuCklyDgpLngpYvgpIfgpKgg4KWkXG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlb3BlbiBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuCkreCkvuCklyDgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KSq4KWB4KSoOuCkluCli+CksuCljeCkqCDgpIXgpJXgpY3gpLfgpK4g4KSt4KSv4KWLIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTgyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIG5ldyBkZXBvdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLgpKjgpK/gpL7gpIEg4KSh4KS/4KSq4KWL4KSfIOCkq+CkvuCkh+CksiBgJS4yNTBzJyDgpJbgpYvgpLLgpY3gpKgg4KSF4KSV4KWN4KS34KSuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTg0Cittc2dpZCAiZXh0cmFjdGluZyBzcGxpdCBwYXJ0IgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbmFtZSBuZXcgZGVwb3QgZmlsZSBgJS4yNTBzJyB0byBgJS4yNTBzJyIKK21zZ3N0ciAi4KSo4KSv4KS+4KSBIOCkoeCkv+CkquCli+CknyDgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KSu4KS+IGAlLjI1MHMnIOCkquClgeCkqDrgpKjgpL7gpK7gpJXgpLDgpKgg4KSX4KSw4KWN4KSoIOCkheCkleCljeCkt+CkriIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE5NgorIywgYy1mb3JtYXQKK21zZ2lkICJQYXJ0ICVkIG9mIHBhY2thZ2UgJXMgZmlsZWQgKHN0aWxsIHdhbnQgIgorbXNnc3RyICLgpK3gpL7gpJcgJWQg4KSV4KWLIOCkquCljeCkr+CkvuCkleClh+CknCAlcyDgpK3gpLDgpL/gpK/gpYsgKOCkheCkneCliCDgpJrgpL7gpLngpKjgpY3gpJsiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyMDAKK21zZ2lkICIgYW5kICIKK21zZ3N0ciAi4KSwIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjE0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkZWxldGUgdXNlZC11cCBkZXBvdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLgpKHgpL/gpKrgpYvgpJ8g4KSr4KS+4KSH4KSyIGAlLjI1MHMnIOCkleCliyDgpKrgpY3gpLDgpK/gpYvgpJfgpLLgpL7gpIgg4KSu4KWH4KSf4KWN4KSoIOCkheCkleCljeCkt+CkriIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjIzNQorbXNnaWQgIkp1bmsgZmlsZXMgbGVmdCBhcm91bmQgaW4gdGhlIGRlcG90IGRpcmVjdG9yeTpcbiIKK21zZ3N0ciAi4KSc4KSC4KSVIOCkq+CkvuCkh+CksuCkueCksOClgiDgpKHgpL/gpKrgpYvgpJ8g4KSh4KS+4KSH4KSw4KWH4KSV4KWN4KSf4KWN4KSw4KWAIOCkteCksOCkv+CkquCksOCkvyDgpJvgpYvgpKHgpL/gpKjgpY3gpJs6XG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNDAgZHBrZy1zcGxpdC9xdWV1ZS5jOjI2OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBgJS4yNTBzJyIKK21zZ3N0ciAiYCUuMjUwcycg4KS44KWN4KSl4KS/4KSwIOCkl+CksOCljeCkqCDgpIXgpJXgpY3gpLfgpK4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNDMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiAlcyAoJWx1IGJ5dGVzKVxuIgorbXNnaWQgIiAlcyAoJWpkIGJ5dGVzKVxuIgorbXNnc3RyICIgJXMgKCVsdSDgpKzgpL7gpIfgpJ/gpLngpLDgpYIpXG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICVzIChub3QgYSBwbGFpbiBmaWxlKVxuIgorbXNnc3RyICIgJXMgKOCkluCkvuCksuClgCDgpKvgpL7gpIfgpLIg4KS54KWL4KSH4KSoKVxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjUwCittc2dpZCAiUGFja2FnZXMgbm90IHlldCByZWFzc2VtYmxlZDpcbiIKK21zZ3N0ciAi4KSq4KWN4KSv4KS+4KSV4KWH4KSc4KS54KSw4KWCIOCkheCkueCkv+CksuClhyDgpLjgpK7gpY3gpK4g4KSq4KWB4KSoOuCknOCli+CkoeCkv+Ckj+CkleCliyDgpJvgpYjgpKg6XG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIFBhY2thZ2UgJXM6IHBhcnQocykgIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFydCBmaWxlIGAlLjI1MHMnIGlzIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgIuCkreCkvuCklyDgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KSW4KS+4KSy4KWAIOCkq+CkvuCkh+CksiDgpLngpYvgpIfgpKgiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNzgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIih0b3RhbCAlbHUgYnl0ZXMpXG4iCittc2dpZCAiKHRvdGFsICVqZCBieXRlcylcbiIKK21zZ3N0ciAiKOCknOCkruCljeCkruCkviAlbHUg4KSs4KS+4KSH4KSf4KS54KSw4KWCKVxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MzA0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkaXNjYXJkIGAlLjI1MHMnIgorbXNnc3RyICJgJS4yNTBzJyDgpJvgpYvgpKHgpY3gpKgg4KSF4KSV4KWN4KS34KSuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MzA1CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlbGV0ZWQgJXMuXG4iCittc2dzdHIgIiVzIOCkruClh+Ckn+Ckv+Ckr+CliyDgpaRcbiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjcwIGRwa2ctc3BsaXQvc3BsaXQuYzo3NiBkcGtnLXNwbGl0L3NwbGl0LmM6ODEKK21zZ2lkICJwYWNrYWdlIGZpZWxkIHZhbHVlIGV4dHJhY3Rpb24iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjEzMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBzb3VyY2UgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4KS44KWN4KSw4KWL4KSkIOCkq+CkvuCkh+CksiBgJS4yNTBzJyDgpJbgpYvgpLLgpY3gpKgg4KSF4KSV4KWN4KS34KSuIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTMzCittc2dpZCAidW5hYmxlIHRvIGZzdGF0IHNvdXJjZSBmaWxlIgorbXNnc3RyICLgpLjgpY3gpLDgpYvgpKQg4KSr4KS+4KSH4KSyIOCkuOCljeCkpeCkv+CksCDgpJfgpLDgpY3gpKgg4KSF4KSV4KWN4KS34KSuIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTM1CisjLCBjLWZvcm1hdAorbXNnaWQgInNvdXJjZSBmaWxlIGAlLjI1MHMnIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgIuCkuOCljeCksOCli+CkpCDgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KSW4KS+4KSy4KWAIOCkq+CkvuCkh+CksiDgpLngpYvgpIfgpKgiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxNTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiU3BsaXR0aW5nIHBhY2thZ2UgJXMgaW50byAlZCBwYXJ0OiAiCittc2dpZF9wbHVyYWwgIlNwbGl0dGluZyBwYWNrYWdlICVzIGludG8gJWQgcGFydHM6ICIKK21zZ3N0clswXSAiIgorbXNnc3RyWzFdICIiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxOTMKK21zZ2lkICIiCisiSGVhZGVyIGlzIHRvbyBsb25nLCBtYWtpbmcgcGFydCB0b28gbG9uZy4gWW91ciBwYWNrYWdlIG5hbWUgb3IgdmVyc2lvblxuIgorIm51bWJlcnMgbXVzdCBiZSBleHRyYW9yZGluYXJpbHkgbG9uZywgb3Igc29tZXRoaW5nLiBHaXZpbmcgdXAuXG4iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjI0OQorbXNnaWQgIi0tc3BsaXQgbmVlZHMgYSBzb3VyY2UgZmlsZW5hbWUgYXJndW1lbnQiCittc2dzdHIgIuCkteCkv+CkreCkvuCknOCkqOCksuCkvuCkiCDgpLjgpY3gpLDgpYvgpKQg4KSr4KS+4KSH4KSy4KSo4KS+4KSuIOCkpOCksOCljeCkleCkleCliyDgpIbgpLXgpLbgpY3gpK/gpJUg4KSq4KSw4KWN4KSm4KSbIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MjUyCittc2dpZCAiLS1zcGxpdCB0YWtlcyBhdCBtb3N0IGEgc291cmNlIGZpbGVuYW1lIGFuZCBkZXN0aW5hdGlvbiBwcmVmaXgiCittc2dzdHIgIi0t4KS14KS/4KSt4KS+4KSc4KSo4KSy4KWHIOCkrOCkouClgOCkruCkviDgpLjgpY3gpLDgpYvgpKQg4KSr4KS+4KSH4KSy4KSo4KS+4KSuIOCksCDgpJfgpKjgpKTgpKzgpY3gpK8g4KSJ4KSq4KS44KSw4KWN4KSXIOCksuCkv+CkqOCljeCkmyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjg0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiXG4iCisjfCAiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorI3wgIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uIgorbXNnaWQgIiIKKyJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLTIwMDIgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDktMjAxMCBSYXBoYWVsIEhlcnR6b2cuXG4iCittc2dzdHIgIiIKKyJcbiIKKyLgpKrgpY3gpLDgpKTgpL/gpLLgpL/gpKrgpL8g4KSF4KSn4KS/4KSV4KS+4KSwICjgpLjgpYApIOClp+Clr+Clr+ClqyDgpIfgpK/gpL7gpKgg4KSc4KWN4KSv4KS+4KSV4KWN4KS44KSoXG4iCisi4KSq4KWN4KSw4KSk4KS/4KSy4KS/4KSq4KS/IOCkheCkp+Ckv+CkleCkvuCksCAo4KS44KWAKSDgpajgpabgpabgpaYs4KWo4KWm4KWm4KWnIOCkteCkv+CksOCljeCkmuCkvuCksOCljeCkoSDgpIbgpJXgpLDgpY3gpK7gpY3gpK/gpL7gpKgiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMDEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC0taW5zdGFsbCA8bGluaz4gPG5hbWU+IDxwYXRoPiA8cHJpb3JpdHk+XG4iCisiICAgIFstLXNsYXZlIDxsaW5rPiA8bmFtZT4gPHBhdGg+XSAuLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBhZGQgYSBncm91cCBvZiBhbHRlcm5hdGl2ZXMgdG8gdGhlIHN5c3RlbS5cbiIKKyIgIC0tcmVtb3ZlIDxuYW1lPiA8cGF0aD4gICByZW1vdmUgPHBhdGg+IGZyb20gdGhlIDxuYW1lPiBncm91cCBhbHRlcm5hdGl2ZS5cbiIKKyIgIC0tcmVtb3ZlLWFsbCA8bmFtZT4gICAgICByZW1vdmUgPG5hbWU+IGdyb3VwIGZyb20gdGhlIGFsdGVybmF0aXZlcyAiCisic3lzdGVtLlxuIgorIiAgLS1hdXRvIDxuYW1lPiAgICAgICAgICAgIHN3aXRjaCB0aGUgbWFzdGVyIGxpbmsgPG5hbWU+IHRvIGF1dG9tYXRpYyBtb2RlLlxuIgorIiAgLS1kaXNwbGF5IDxuYW1lPiAgICAgICAgIGRpc3BsYXkgaW5mb3JtYXRpb24gYWJvdXQgdGhlIDxuYW1lPiBncm91cC5cbiIKKyIgIC0tcXVlcnkgPG5hbWU+ICAgICAgICAgICBtYWNoaW5lIHBhcnNlYWJsZSB2ZXJzaW9uIG9mIC0tZGlzcGxheSA8bmFtZT4uXG4iCisiICAtLWxpc3QgPG5hbWU+ICAgICAgICAgICAgZGlzcGxheSBhbGwgdGFyZ2V0cyBvZiB0aGUgPG5hbWU+IGdyb3VwLlxuIgorIiAgLS1nZXQtc2VsZWN0aW9ucyAgICAgICAgIGxpc3QgbWFzdGVyIGFsdGVybmF0aXZlIG5hbWVzIGFuZCB0aGVpciBzdGF0dXMuXG4iCisiICAtLXNldC1zZWxlY3Rpb25zICAgICAgICAgcmVhZCBhbHRlcm5hdGl2ZSBzdGF0dXMgZnJvbSBzdGFuZGFyZCBpbnB1dC5cbiIKKyIgIC0tY29uZmlnIDxuYW1lPiAgICAgICAgICBzaG93IGFsdGVybmF0aXZlcyBmb3IgdGhlIDxuYW1lPiBncm91cCBhbmQgYXNrICIKKyJ0aGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2VyIHRvIHNlbGVjdCB3aGljaCBvbmUgdG8gdXNlLlxuIgorIiAgLS1zZXQgPG5hbWU+IDxwYXRoPiAgICAgIHNldCA8cGF0aD4gYXMgYWx0ZXJuYXRpdmUgZm9yIDxuYW1lPi5cbiIKKyIgIC0tYWxsICAgICAgICAgICAgICAgICAgICBjYWxsIC0tY29uZmlnIG9uIGFsbCBhbHRlcm5hdGl2ZXMuXG4iCisiXG4iCittc2dzdHIgIiIKKyLgpKrgpY3gpLDgpK/gpYvgpJc6ICVzIFs8b3B0aW9uPiAuLi5dIDxjb21tYW5kPlxuIgorIlxuIgorIuCkhuCkpuClh+CktjpcbiIKKyIgIC0t4KS44KWN4KSl4KS+4KSq4KSo4KS+IDxsaW5rPiA8bmFtZT4gPHBhdGg+IDxwcmlvcml0eT5cbiIKKyIgICAgWy0tc2xhdmUgPGxpbms+IDxuYW1lPiA8cGF0aD5dIC4uLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIOCkquCljeCksOCko+CkvuCksuClgOCkruCkviDgpLXgpL/gpJXgpLLgpY3gpKrgpJXgpYsg4KS44KSu4KWC4KS5IOCkpeCkquCljeCkqOClgeCkueCli+CkuOCljSDgpaRcbiIKKyIgIC0tcmVtb3ZlIDxuYW1lPiA8cGF0aD4gICDgpLjgpK7gpYLgpLkg4KS14KS/4KSV4KSy4KWN4KSqPG5hbWU+IOCkrOCkvuCknyA8cGF0aD4g4KS54KSf4KS+4KSJ4KSo4KWB4KS54KWL4KS44KWNIOClpFxuIgorIiAgLS1yZW1vdmUtYWxsIDxuYW1lPiAgICAgIOCkteCliOCkleCksuCljeCkquCkv+CklSDgpKrgpY3gpLDgpKPgpL7gpLLgpYDgpKzgpL7gpJ8gPG5hbWU+IOCkuOCkruClguCkuSDgpLngpJ/gpL7gpIngpKjgpYHgpLngpYvgpLjgpY1cbiIKKyIgIC0tYXV0byA8bmFtZT4gICAgICAgICAgICDgpLjgpY3gpLXgpJrgpL7gpLLgpL/gpKQg4KSu4KWL4KSh4KSu4KS+IOCkruClgeCkluCljeCkryDgpLLgpL/gpJngpY3gpJUgPG5hbWU+IOCkuOCljeCkteCkv+CkmiDgpJfgpLDgpY3gpKjgpYHgpLngpYvgpLjgpY0g4KWkXG4iCisiICAtLWRpc3BsYXkgPG5hbWU+ICAgICAgICAg4KS44KSu4KWC4KS54KSV4KS+IOCkrOCkvuCksOClh+CkruCkvjxuYW1lPiDgpJzgpL7gpKjgpJXgpL7gpLDgpYAg4KSq4KWN4KSw4KSw4KWN4KSm4KS24KSoIOCkl+CksOCljeCkqOClgeCkueCli+CkuOCljSDgpaRcbiIKKyIgIC0tbGlzdCA8bmFtZT4gICAgICAgICAgICAg4KS44KSu4KWC4KS54KSV4KS+PG5hbWU+IOCkuOCkrOCliCDgpLLgpJXgpY3gpLfgpY3gpK8g4KSq4KWN4KSw4KSw4KWN4KSm4KS24KSoIOCkl+CksOCljeCkqOClgeCkueCli+CkuOCljSDgpaRcbiIKKyIgIC0tY29uZmlnIDxuYW1lPiAgICAgICAgICDgpLjgpK7gpYLgpLngpJXgpL4g4KSy4KS+4KSX4KS/PG5hbWU+IOCkteCkv+CkleCksuCljeCkqiDgpKbgpYfgpJbgpL7gpIngpKjgpYHgpLngpYvgpLjgpY0g4KSwIOCkquCljeCksOCkr+Cli+Ckl+CkleCksOCljeCkpOCkvuCksuCkvuCkiCAiCisi4KSq4KWN4KSw4KSv4KWL4KSXIOCkl+CksOCljeCkqOClhyDgpI/gpIngpJ/gpL5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICDgpJrgpK/gpKgg4KSX4KSw4KWN4KSoIOCkuOCli+Ckp+CljeCkqOClgeCkueCli+CkuOCljSDgpaRcbiIKKyIgIC0tc2V0IDxuYW1lPiA8cGF0aD4gICAgICDgpK/gpLjgpJXgpL4g4KSy4KS+4KSX4KS/IOCkteCkv+CkleCksuCljeCkquCkleCkviDgpLDgpYHgpKrgpK7gpL48bmFtZT4g4KS44KWH4KSfIOCkl+CksOCljeCkqOClgeCkueCli+CkuOCljSA8cGF0aD4g4KWkXG4iCisiICAtLWFsbCAgICAgICAgICAgICAgICAgICAgY2FsbCAtLeCkuOCkrOCliCDgpLXgpL/gpJXgpLLgpY3gpKrgpK7gpL4g4KSV4KSo4KWN4KSr4KS/4KSXIOCkl+CksOCljeCkqOClgeCkueCli+CkuOCljSDgpaRcbiIKKyJcbiIKKyI8bGluaz4gJXMvPG5hbWU+IOCkpuClh+CkluCkvuCkieCkqOClhyDgpLjgpL/gpK7gpLLgpL/gpJngpY3gpJUg4KS44KWC4KSa4KSVIOCkueCliyDgpaRcbiIKKyIgIChlLmcuIC91c3IvYmluL3BhZ2VyKVxuIgorIjxuYW1lPiDgpK/gpYsg4KSy4KS/4KSZ4KWN4KSVIOCkuOCkruClguCkueCkleCkviDgpLLgpL7gpJfgpL8g4KSu4KWB4KSW4KWN4KSvIOCkqOCkvuCkriDgpLngpYsg4KWkXG4iCisiICAo4KSJ4KSm4KS+4KS54KSw4KSj4KSV4KS+IOCksuCkvuCkl+CkvyDgpKrgpYfgpJzgpLApXG4iCisiPHBhdGg+IOCkteCliOCkleCksuCljeCkquCkv+CklSDgpLLgpJXgpY3gpLfgpL/gpKQg4KSr4KS+4KSH4KSyIOCkruCkp+CljeCkr+ClhyDgpI/gpIngpJ/gpL7gpJXgpYsg4KS44KWN4KSl4KS+4KSoIOCkueCliyDgpaRcbiIKKyIgIChlLmcuIC91c3IvYmluL2xlc3MpXG4iCisiPHByaW9yaXR5PiDgpIfgpKjgpY3gpJ/gpL/gpJzgpLDgpK7gpL47IOCkieCkmuCljeCkmiDgpKjgpK7gpY3gpKzgpLDgpJXgpYsg4KS14KS/4KSV4KSy4KWN4KSq4KSu4KS+IOCkieCkmuCljeCkmiDgpKrgpY3gpLDgpL7gpKXgpK7gpL/gpJXgpKTgpL4g4KS54KWB4KSo4KWN4KSbXG4iCisiICDgpLjgpY3gpLXgpJrgpL7gpLLgpL/gpKQg4KSu4KWL4KShIOClpFxuIgorIlxuIgorIuCkteCkv+CkleCksuCljeCkqjpcbiIKKyIgIC0tYWx0ZGlyIDxkaXJlY3Rvcnk+ICAgICDgpLXgpYjgpJXgpLLgpY3gpKrgpL/gpJUg4KSh4KS+4KSH4KSw4KWH4KSV4KWN4KSf4KSw4KWAIOCkquCksOCkv+CkteCksOCljeCkpOCkqCDgpJfgpLDgpY3gpKjgpYHgpLngpYvgpLjgpY0g4KWkXG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAg4KSq4KWN4KSw4KS24KS+4KS44KSo4KS/4KSVIOCkoeCkvuCkh+CksOClh+CkleCljeCkn+CksOClgCDgpKrgpLDgpL/gpLXgpLDgpY3gpKTgpKgg4KSX4KSw4KWN4KSo4KWB4KS54KWL4KS44KWNIOClpFxuIgorIiAgLS10ZXN0ICAgICAgICAgICAgICAgICAgIOCkleClh+CkueCkvyDgpKrgpKjgpL8g4KSo4KSX4KSw4KWN4KSo4KWB4KS54KWL4KS44KWNLCDgpJXgpYfgpKzgpLIg4KSm4KWH4KSW4KS+4KSJ4KSo4KWB4KS54KWL4KS44KWNIOClpFxuIgorIiAgLS12ZXJib3NlICAgICAgICAgICAgICAgIOCkreCksOCkrOCli+CkuCDgpLjgpJ7gpY3gpJrgpL7gpLLgpKgsIOCkheCksOClgiDgpKjgpL/gpLDgpY3gpJfgpKQg4KWkXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAg4KS24KS+4KSo4KWN4KSkIOCkuOCknuCljeCkmuCkvuCksuCkqCwg4KSo4KWN4KSv4KWC4KSo4KSk4KSuIOCkqOCkv+CksOCljeCkl+CkpCDgpaRcbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICDgpK/gpYsg4KSu4KSm4KWN4KSm4KSkIOCkuOCkqOCljeCkpuClh+CktiDgpKbgpYfgpJbgpL7gpIngpKjgpYHgpLngpYvgpLjgpY0g4KWkXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAg4KS44KSC4KS44KWN4KSV4KSw4KSjIOCkpuClh+CkluCkvuCkieCkqOClgeCkueCli+CkuOCljSDgpaRcbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiPGxpbms+IGlzIHRoZSBzeW1saW5rIHBvaW50aW5nIHRvICVzLzxuYW1lPi5cbiIKKyIgIChlLmcuIC91c3IvYmluL3BhZ2VyKVxuIgorIjxuYW1lPiBpcyB0aGUgbWFzdGVyIG5hbWUgZm9yIHRoaXMgbGluayBncm91cC5cbiIKKyIgIChlLmcuIHBhZ2VyKVxuIgorIjxwYXRoPiBpcyB0aGUgbG9jYXRpb24gb2Ygb25lIG9mIHRoZSBhbHRlcm5hdGl2ZSB0YXJnZXQgZmlsZXMuXG4iCisiICAoZS5nLiAvdXNyL2Jpbi9sZXNzKVxuIgorIjxwcmlvcml0eT4gaXMgYW4gaW50ZWdlcjsgb3B0aW9ucyB3aXRoIGhpZ2hlciBudW1iZXJzIGhhdmUgaGlnaGVyIHByaW9yaXR5ICIKKyJpblxuIgorIiAgYXV0b21hdGljIG1vZGUuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzMQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFsdGRpciA8ZGlyZWN0b3J5PiAgICAgY2hhbmdlIHRoZSBhbHRlcm5hdGl2ZXMgZGlyZWN0b3J5LlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIGNoYW5nZSB0aGUgYWRtaW5pc3RyYXRpdmUgZGlyZWN0b3J5LlxuIgorIiAgLS1sb2cgPGZpbGU+ICAgICAgICAgICAgIGNoYW5nZSB0aGUgbG9nIGZpbGUuXG4iCisiICAtLWZvcmNlICAgICAgICAgICAgICAgICAgYWxsb3cgcmVwbGFjaW5nIGZpbGVzIHdpdGggYWx0ZXJuYXRpdmUgbGlua3MuXG4iCisiICAtLXNraXAtYXV0byAgICAgICAgICAgICAgc2tpcCBwcm9tcHQgZm9yIGFsdGVybmF0aXZlcyBjb3JyZWN0bHkgIgorImNvbmZpZ3VyZWRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBhdXRvbWF0aWMgbW9kZSAocmVsZXZhbnQgZm9yIC0tY29uZmlnIG9ubHkpXG4iCisiICAtLXZlcmJvc2UgICAgICAgICAgICAgICAgdmVyYm9zZSBvcGVyYXRpb24sIG1vcmUgb3V0cHV0LlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHF1aWV0IG9wZXJhdGlvbiwgbWluaW1hbCBvdXRwdXQuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorbXNnc3RyICIiCisi4KSJ4KSq4KSv4KWL4KSXOiAlcyBbPG9wdGlvbj4gLi4uXSA8Y29tbWFuZD5cbiIKKyJcbiIKKyLgpIbgpKbgpYfgpLY6XG4iCisiICAtLWFkZCA8b3duZXI+IDxncm91cD4gPG1vZGU+IDxmaWxlPlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIOCkoeCkvuCkn+CkvuCkrOClh+CkuOCkruCkviDgpKjgpK/gpL7gpIEg4KSq4KWN4KSw4KS14KS/4KS34KWN4KSf4KS/IOCkpeCkquCljeCkqOClgeCkueCli+CkuOCljSDgpaRcbiIKKyIgIC0tcmVtb3ZlIDxmaWxlPiAgICAgICAgICDgpKHgpL7gpJ/gpL7gpKzgpYfgpYfgpLjgpKzgpL7gpJ8g4KSr4KS+4KSH4KSyIOCkueCkn+CkvuCkieCkqOClgeCkueCli+CkuOCljSDgpaRcbiIKKyIgIC0tbGlzdCBbPGdsb2ItcGF0dGVybj5dICDgpKHgpL7gpJ/gpL7gpKzgpYfgpLjgpK7gpL4g4KS54KS+4KSy4KWI4KSV4KWLIOCkheCkpuCljeCkr+CkvuCkteCkp+Ckv+CklSDgpLjgpYLgpJrgpYBcbiIKKyJcbiIKKyJPcHRpb25zOlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIHN0YXRvdmVycmlkZSDgpKvgpL7gpIfgpLLgpLjgpIHgpJcg4KSh4KS+4KSH4KSw4KWH4KSV4KWN4KSf4KSw4KWAIOCkuOClh+CknyDgpJfgpLDgpY3gpKjgpYHgpLngpYvgpLjgpY0g4KWkXG4iCisiICAtLXVwZGF0ZSAgICAgICAgICAgICAgICAg4KSr4KS+4KSH4KSyIOCkheCkqOClgeCkruCkpOCkvyDgpKTgpKTgpY3gpJXgpL7gpLLgpYgg4KSF4KSm4KWN4KSv4KS+4KS14KSn4KS/4KSVIOCkl+CksOCljeCkqOClgeCkueCli+CkuOCljSDgpaRcbiIKKyIgIC0tZm9yY2UgICAgICAgICAgICAgICAgICDgpK/gpKbgpL8g4KS14KS/4KS14KWH4KSV4KWAIOCknOCkvuCkgeCkmiDgpIXgpLjgpKvgpLIg4KSt4KSP4KSu4KS+IOCkleCkvuCksOCljeCkryDgpKzgpLIg4KSX4KSw4KWN4KSo4KWB4KS54KWL4KS44KWNIOClpFxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIOCktuCkvuCkqOCljeCkpCDgpLjgpJ7gpY3gpJrgpL7gpLLgpKgsIOCkqOCljeCkr+ClguCkqOCkpOCkriDgpKjgpL/gpLDgpY3gpJfgpKRcbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICDgpK7gpKbgpY3gpKbgpKQg4KS44KSo4KWN4KSm4KWH4KS2IOCkpuClh+CkluCkvuCkieCkqOClgeCkueCli+CkuOCljSDgpaRcbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICDgpLjgpILgpLjgpY3gpJXgpLDgpKMg4KSm4KWH4KSW4KS+4KSJ4KSo4KWB4KS54KWL4KS44KWNIOClpFxuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNjMKKyMsIGZ1enp5CisjfCBtc2dpZCAicGFyc2UgZXJyb3IiCittc2dpZCAiZXJyb3IiCittc2dzdHIgIuCkpOCljeCksOClgeCkn+CkvyDgpKrgpKbgpLXgpLDgpY3gpKPgpKgg4KSX4KSw4KWN4KSo4KWB4KS54KWL4KS44KWNIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTkzCittc2dpZCAid2FybmluZyIKK21zZ3N0ciAi4KSa4KWH4KSk4KS+4KS14KSo4KWAIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MzU2CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ0d28gY29tbWFuZHMgc3BlY2lmaWVkOiAlcyBhbmQgLS0lcyIKK21zZ2lkICJ0d28gY29tbWFuZHMgc3BlY2lmaWVkOiAtLSVzIGFuZCAtLSVzIgorbXNnc3RyICLgpKjgpL/gpLDgpY3gpKbgpL/gpLfgpY3gpJ8g4KSm4KWB4KSH4KS14KSf4KS+IOCkhuCkpuClh+CktjogJXMg4KSwIC0tJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzozODcKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImNhbm5vdCBvcGVuIGRpdmVyc2lvbnM6ICVzIgorbXNnaWQgImNhbm5vdCBhcHBlbmQgdG8gJyVzJyIKK21zZ3N0ciAiZGl2ZXJzaW9ucyDgpJbgpYvgpLLgpY3gpKgg4KSF4KS44KSr4KSyOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjU1NgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHJlbW92ZSAlczogJXMiCittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSAnJXMnIgorbXNnc3RyICIlcyDgpLngpJ/gpL7gpIngpKgg4KSF4KSV4KWN4KS34KSuOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGZpbGUgd2hpbGUgdHJ5aW5nIHRvIHJlYWQgJXMiCittc2dzdHIgIiUuMjU1cyDgpK7gpL4gJXMg4KSu4KS+IOCkq+CkvuCkh+CksuCkleCliyDgpIXgpKrgpY3gpLDgpKTgpY3gpK/gpL7gpLjgpL/gpKQg4KS44KSu4KS+4KSq4KWN4KSk4KS/IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTExMworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAid2hpbGUgcmVhZGluZyAlczogJXMiCittc2dzdHIgIiVzIOCkquCkouCljeCkqCDgpIXgpJXgpY3gpLfgpK46ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTExOQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAibGluZSBub3QgdGVybWluYXRlZCB3aGlsZSB0cnlpbmcgdG8gcmVhZCAlcyIKK21zZ3N0ciAiJS4yNTVzIOCkruCkviAlcyDgpK7gpL4g4KSr4KS+4KSH4KSy4KSV4KWLIOCkheCkquCljeCksOCkpOCljeCkr+CkvuCkuOCkv+CkpCDgpLjgpK7gpL7gpKrgpY3gpKTgpL8iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTM3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlcyBjb3JydXB0OiAlcyIKK21zZ3N0ciAi4KSG4KSo4KWN4KSk4KSw4KS/4KSVIOCkpOCljeCksOClgeCkn+CkvzogJXMg4KSm4KWB4KS34KS/4KSkOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAibmV3bGluZXMgcHJvaGliaXRlZCBpbiB1cGRhdGUtYWx0ZXJuYXRpdmVzIGZpbGVzICglcykiCittc2dzdHIgIuCkheCkpuCljeCkr+CkvuCkteCkp+Ckv+CklS3gpLXgpYjgpJXgpLLgpY3gpKrgpL/gpJUg4KSr4KS+4KSH4KSy4KS54KSw4KWCICglcykg4KSu4KS+IOCkqOCkr+CkvuCkgeCksOClh+CkluCkviDgpKjgpL/gpLfgpYfgpKfgpL/gpKQg4KSX4KSw4KS/4KSP4KSV4KWLIOCkmyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNjMKK21zZ2lkICJzbGF2ZSBuYW1lIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTcxIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDA1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJkdXBsaWNhdGUgc2xhdmUgJXMiCittc2dpZCAiZHVwbGljYXRlIHNsYXZlIG5hbWUgJXMiCittc2dzdHIgIuCkqOCkleCljeCkleCksiDgpKrgpY3gpLDgpKTgpL8g4KS44KWN4KSy4KWH4KStICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE3NAorIywgZnV6enkKK21zZ2lkICJzbGF2ZSBsaW5rIgorbXNnc3RyICLgpKjgpJXgpY3gpJXgpLIg4KSq4KWN4KSw4KSk4KS/IOCkuOCljeCksuClh+CkrSDgpLLgpL/gpJngpY3gpJUgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTc4CisjLCBjLWZvcm1hdAorbXNnaWQgInNsYXZlIGxpbmsgc2FtZSBhcyBtYWluIGxpbmsgJXMiCittc2dzdHIgIiVzIOCkruClgeCkluCljeCkryDgpLLgpL/gpJngpY3gpJUg4KSc4KS44KWN4KSk4KWIIOCkuOCljeCksuClh+CkrSDgpLLgpL/gpJngpY3gpJUiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTg1IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDEyCisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBzbGF2ZSBsaW5rICVzIgorbXNnc3RyICLgpKjgpJXgpY3gpJXgpLIg4KSq4KWN4KSw4KSk4KS/IOCkuOCljeCksuClh+CkrSDgpLLgpL/gpJngpY3gpJUgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjA0Cittc2dpZCAibWFzdGVyIGZpbGUiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHBhdGggJXMiCittc2dzdHIgIuCkqOCkleCljeCkleCksiDgpK7gpL7gpLDgpY3gpJcgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjI2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiYWx0ZXJuYXRpdmUgJXMgKHBhcnQgb2YgbGluayBncm91cCAlcykgZG9lc24ndCBleGlzdC4gUmVtb3ZpbmcgZnJvbSBsaXN0IG9mICIKKyJhbHRlcm5hdGl2ZXMuIgorbXNnc3RyICIlcyDgpK7gpL4g4KSk4KWL4KSV4KWN4KSoICVzIOCkleCkviDgpLLgpL7gpJfgpL8g4KS14KS/4KSV4KSy4KWN4KSqIC0g4KSc4KWB4KSoIOCkq+Clh+CksuCkviDgpKrgpLDgpYfgpKgg4KWkIOCkteCkv+CkleCksuCljeCkquCkleCliyDgpLjgpYLgpJrgpYDgpKzgpL7gpJ8g4KS54KSf4KS+4KSJ4KSm4KWI4KSbIOClpCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMjkgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyNDAKKyMsIGZ1enp5Cittc2dpZCAicHJpb3JpdHkiCittc2dzdHIgIuCkquCljeCksOCkvuCkpeCkruCkv+CkleCkpOCkviAlcyAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMzIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyNDkKK21zZ2lkICJzbGF2ZSBmaWxlIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjQ0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJwcmlvcml0eSBvZiAlczogJXMiCittc2dzdHIgIuCkquCljeCksOCkvuCkpeCkruCkv+CkleCkpOCkviAlcyAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyOTcKK21zZ2lkICJzdGF0dXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyOTkKKyMsIGZ1enp5Cittc2dpZCAiaW52YWxpZCBzdGF0dXMiCittc2dzdHIgIuCkheCkteCliOCkpyDgpIXgpKbgpY3gpK/gpL7gpLXgpKfgpL/gpJUg4KSu4KWL4KShIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTMwNAorIywgZnV6enkKK21zZ2lkICJtYXN0ZXIgbGluayIKK21zZ3N0ciAi4KSo4KSV4KWN4KSV4KSyIOCkquCljeCksOCkpOCkvyDgpLjgpY3gpLLgpYfgpK0g4KSy4KS/4KSZ4KWN4KSVICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTM0OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZGlzY2FyZGluZyBvYnNvbGV0ZSBzbGF2ZSBsaW5rICVzICglcykuIgorbXNnc3RyICLgpJvgpYHgpJ/gpYfgpJXgpYsg4KS44KWN4KSy4KWH4KStIOCksuCkv+CkmeCljeCklSAlcyAoJXMpIOCkquCksOCkv+CkpOCljeCkr+CkvuCklyDgpJfgpLDgpY3gpKbgpYjgpJsiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTAyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTY5CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYzOAorbXNnaWQgImF1dG8gbW9kZSIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU3OAorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MzkKK21zZ2lkICJtYW51YWwgbW9kZSIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwNQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiICBsaW5rIGN1cnJlbnRseSBwb2ludHMgdG8gJXMiCittc2dzdHIgIiVzIOCkruCkviDgpLngpL7gpLLgpYjgpJXgpYsg4KSs4KS/4KSo4KWN4KSm4KWB4KSu4KS+IOCksuCkv+CkmeCljeCklSDgpJfgpLDgpY3gpKjgpYHgpLngpYvgpLjgpY0iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTA4CisjLCBmdXp6eQorbXNnaWQgIiAgbGluayBjdXJyZW50bHkgYWJzZW50IgorbXNnc3RyICLgpLngpL7gpLLgpYgg4KSF4KSo4KWB4KSq4KS44KWN4KSl4KS/4KSkIOCksuCkv+CkmeCljeCklSDgpJfgpLDgpY3gpKjgpYHgpLngpYvgpLjgpY0iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTEyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIlcyAtIHByaW9yaXR5ICVzIgorbXNnaWQgIiVzIC0gcHJpb3JpdHkgJWQiCittc2dzdHIgIiVzIC0g4KSq4KWN4KSw4KS+4KSl4KSu4KS/4KSV4KSk4KS+ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUxNQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiICBzbGF2ZSAlczogJXMiCittc2dzdHIgIuCkuOCljeCksuClh+CkrSAlczogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTIyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJDdXJyZW50ICdiZXN0JyB2ZXJzaW9uIGlzICclcycuIgorbXNnc3RyICLgpLngpL7gpLLgpJXgpYsg4KSJ4KSq4KSv4KWB4KSV4KWN4KSkIOCkuOCkguCkuOCljeCkleCksOCkoyAlcyDgpLngpYsg4KWkIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUyNAorbXNnaWQgIk5vIHZlcnNpb25zIGF2YWlsYWJsZS4iCittc2dzdHIgIuCkuOCkguCkuOCljeCkleCksOCkoyDgpIngpKrgpLLgpKzgpY3gpKcg4KSb4KWI4KSoIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU1MworIywgYy1mb3JtYXQKK21zZ2lkICJUaGVyZSBpcyAlZCBjaG9pY2UgZm9yIHRoZSBhbHRlcm5hdGl2ZSAlcyAocHJvdmlkaW5nICVzKS4iCittc2dpZF9wbHVyYWwgIlRoZXJlIGFyZSAlZCBjaG9pY2VzIGZvciB0aGUgYWx0ZXJuYXRpdmUgJXMgKHByb3ZpZGluZyAlcykuIgorbXNnc3RyWzBdICIiCittc2dzdHJbMV0gIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NjAKKyMsIGZ1enp5Cittc2dpZCAiU2VsZWN0aW9uIgorbXNnc3RyICLgpKzgpLDgpY3gpKPgpKgiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYxCittc2dpZCAiUGF0aCIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2MQorIywgZnV6enkKK21zZ2lkICJQcmlvcml0eSIKK21zZ3N0ciAi4KSq4KWN4KSw4KS+4KSl4KSu4KS/4KSV4KSk4KS+ICVzICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2MQorbXNnaWQgIlN0YXR1cyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU4MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiUHJlc3MgZW50ZXIgdG8ga2VlcCB0aGUgY3VycmVudCBjaG9pY2VbKl0sIG9yIHR5cGUgc2VsZWN0aW9uIG51bWJlcjogIgorbXNnc3RyICLgpKrgpYLgpLDgpY3gpLXgpKjgpL/gpLDgpY3gpKfgpL7gpLDgpL/gpKQgWypdIOCksOCkvuCkluCljeCkqCAn4KSq4KWN4KSw4KS14KS/4KS34KWN4KSfIOCkl+CksOCljeCkqOClgeCkueCli+CkuOCljScg4KSl4KS/4KSa4KWN4KSo4KWB4KS54KWL4KS44KWNLCDgpLXgpL4g4KSa4KSv4KSoIOCkuOCkmeCljeCkluCljeCkr+CkviDgpJ/gpL7gpIfgpKog4KSX4KSw4KWN4KSo4KWB4KS54KWL4KS44KWNIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTcyMQorIywgYy1mb3JtYXQKK21zZ2lkICJub3QgcmVwbGFjaW5nICVzIHdpdGggYSBsaW5rLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTc2MgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW4ndCBpbnN0YWxsIHVua25vd24gY2hvaWNlICVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNzgwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJza2lwIGNyZWF0aW9uIG9mICVzIGJlY2F1c2UgYXNzb2NpYXRlZCBmaWxlICVzIChvZiBsaW5rIGdyb3VwICVzKSBkb2Vzbid0ICIKKyJleGlzdC4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IHJlbW92aW5nICVzIHNpbmNlIGl0J3Mgbm90IGEgc3ltbGluay4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNDEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2FsbCAlcy4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiQWx0ZXJuYXRpdmUgJXMgdW5jaGFuZ2VkIGJlY2F1c2UgY2hvaWNlICVzIGlzIG5vdCBhdmFpbGFibGUuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDU1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJTa2lwIHVua25vd24gYWx0ZXJuYXRpdmUgJXMuIgorbXNnc3RyICJgJXMnIOCkteCkv+CkleCksuCljeCkqiDgpKvgpYfgpLLgpL4g4KSq4KS+4KSw4KWN4KSoIOCkuOCkleCkv+CkpuCliOCkqCDgpaQiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDc3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJsaW5lIHRvbyBsb25nIG9yIG5vdCB0ZXJtaW5hdGVkIHdoaWxlIHRyeWluZyB0byByZWFkICVzIgorbXNnc3RyICIlLjI1NXMg4KSu4KS+ICVzIOCkruCkviDgpKvgpL7gpIfgpLLgpJXgpYsg4KSF4KSq4KWN4KSw4KSk4KWN4KSv4KS+4KS44KS/4KSkIOCkuOCkruCkvuCkquCljeCkpOCkvyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwOTAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxMDMKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTEzCisjLCBjLWZvcm1hdAorbXNnaWQgIlNraXAgaW52YWxpZCBsaW5lOiAlcyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjEzMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAicmVuYW1pbmcgJXMgbGluayBmcm9tICVzIHRvICVzLiIKK21zZ3N0ciAiJXMg4KSs4KS+4KSfICVzIOCkruCkviAlcyDgpLLgpL/gpJngpY3gpJUg4KSq4KWB4KSoOiDgpKjgpL7gpK7gpJXgpLDgpKMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTczCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJyZW5hbWluZyAlcyBzbGF2ZSBsaW5rIGZyb20gJXMgdG8gJXMuIgorbXNnc3RyICIlcyDgpKzgpL7gpJ8gJXMg4KSu4KS+IOCkuOCljeCksuClh+CkrSDgpLLgpL/gpJngpY3gpJUgJXMg4KSq4KWB4KSoOiDgpKjgpL7gpK7gpJXgpLDgpKMgICIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgbmFtZSAoJXMpIG11c3Qgbm90IGNvbnRhaW4gJy8nIGFuZCBzcGFjZXMuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTkzCisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIGxpbmsgaXMgbm90IGFic29sdXRlIGFzIGl0IHNob3VsZCBiZTogJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxOTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgcGF0aCBpcyBub3QgYWJzb2x1dGUgYXMgaXQgc2hvdWxkIGJlOiAlcyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjIyNAorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBtYXN0ZXI6IGl0IGlzIGEgc2xhdmUgb2YgJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyMzIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgbGluayAlcyBpcyBhbHJlYWR5IG1hbmFnZWQgYnkgJXMuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjQxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBwYXRoICVzIGRvZXNuJ3QgZXhpc3QuIgorbXNnc3RyICLgpJrgpYfgpKTgpL7gpLXgpKjgpYAtLeCkheCkpuCljeCkr+CkvuCkteCkp+Ckv+CklSDgpKbgpL/gpIfgpI/gpJXgpYsg4KSbIOCkpOCksCAlcyDgpIXgpLXgpLjgpY3gpKXgpL/gpKQg4KSb4KWI4KSoIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI1NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgc2xhdmUgb2YgJXM6IGl0IGlzIGEgbWFzdGVyIGFsdGVybmF0aXZlLiIKK21zZ3N0ciAiJXMg4KSu4KS+IOCkpOCli+CkleCljeCkqCAlcyDgpJXgpL4g4KSy4KS+4KSX4KS/IOCkteCkv+CkleCksuCljeCkqiAtIOCknOClgeCkqCDgpKvgpYfgpLLgpL4g4KSq4KSw4KWH4KSoIOClpCDgpLXgpL/gpJXgpLLgpY3gpKrgpJXgpYsg4KS44KWC4KSa4KWA4KSs4KS+4KSfIOCkueCkn+CkvuCkieCkpuCliOCkmyDgpaQiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjU4CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlICVzIGNhbid0IGJlIHNsYXZlIG9mICVzOiBpdCBpcyBhIHNsYXZlIG9mICVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjc4CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIGxpbmsgJXMgaXMgYWxyZWFkeSBtYW5hZ2VkIGJ5ICVzIChzbGF2ZSBvZiAlcykuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzI0CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gYXJndW1lbnQgYCVzJyIKK21zZ3N0ciAi4KSF4KSc4KWN4KSe4KS+4KSkIOCkpOCksOCljeCklSBgJXMnIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM0MworbXNnaWQgIi0taW5zdGFsbCBuZWVkcyA8bGluaz4gPG5hbWU+IDxwYXRoPiA8cHJpb3JpdHk+IgorbXNnc3RyICItLeCkuOCljeCkpeCkvuCkquCkqOCkvuCksuCkvuCkiCDgpIbgpLXgpLbgpY3gpK/gpJUgPGxpbms+IDxuYW1lPiA8cGF0aD4gPHByaW9yaXR5PiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNDYgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzOTcKK21zZ2lkICI8bGluaz4gYW5kIDxwYXRoPiBjYW4ndCBiZSB0aGUgc2FtZSIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM0OQorbXNnaWQgInByaW9yaXR5IG11c3QgYmUgYW4gaW50ZWdlciIKK21zZ3N0ciAi4KSq4KWN4KSw4KS+4KSl4KSu4KS/4KSV4KSk4KS+IOCkh+CkqOCljeCkn+Ckv+CknOCksCDgpLngpYHgpKjgpYHgpKrgpLDgpY3gpKbgpJsiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzYyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgPG5hbWU+IDxwYXRoPiIKK21zZ3N0ciAiLS0lcyDgpLLgpL7gpIggPG5hbWU+IDxwYXRoPiDgpIbgpLXgpLbgpY3gpK/gpJUg4KSq4KSw4KWN4KSm4KSbIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM3NgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIDxuYW1lPiIKK21zZ3N0ciAiLS0lcyDgpLLgpL7gpIggPG5hbWU+IOCkhuCkteCktuCljeCkr+CklSDgpKrgpLDgpY3gpKbgpJsiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzg4Cittc2dpZCAiLS1zbGF2ZSBvbmx5IGFsbG93ZWQgd2l0aCAtLWluc3RhbGwiCittc2dzdHIgIi0t4KS44KWN4KSy4KWH4KStIOCkleClh+CkrOCksiAtLeCkuOCljeCkpeCkvuCkquCkqOCkvuCkuOCkgeCklyDgpLjgpY3gpLXgpL/gpJXgpYPgpKQg4KS54KWB4KSo4KWN4KSbIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM5MAorbXNnaWQgIi0tc2xhdmUgbmVlZHMgPGxpbms+IDxuYW1lPiA8cGF0aD4iCittc2dzdHIgIi0t4KS44KWN4KSy4KWH4KSt4KSy4KS+4KSIIDxsaW5rPiA8bmFtZT4gPHBhdGg+IOCkhuCkteCktuCljeCkr+CklSDgpKrgpLDgpY3gpKbgpJsiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzk5CisjLCBjLWZvcm1hdAorbXNnaWQgIm5hbWUgJXMgaXMgYm90aCBwcmltYXJ5IGFuZCBzbGF2ZSIKK21zZ3N0ciAiICVzIOCkqOCkvuCkriDgpKrgpY3gpLDgpL7gpKXgpK7gpL/gpJUg4KSwIOCkuOCljeCksuClh+CkrSDgpKbgpYHgpKzgpYgg4KS54KWLIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQwMgorIywgYy1mb3JtYXQKK21zZ2lkICJsaW5rICVzIGlzIGJvdGggcHJpbWFyeSBhbmQgc2xhdmUiCittc2dzdHIgIiVzIOCksuCkv+CkmeCljeCklSDgpKrgpY3gpLDgpL7gpKXgpK7gpL/gpJUg4KSwIOCkuOCljeCksuClh+CkrSDgpKbgpYHgpKzgpYgg4KS54KWLIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQyMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhIDxmaWxlPiBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyDgpLLgpL7gpIgg4KSP4KSV4KSyIOCkpOCksOCljeCklSDgpIbgpLXgpLbgpY3gpK/gpJUg4KSq4KSw4KWN4KSm4KSbIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQ0OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiBgJXMnIgorbXNnc3RyICLgpIXgpJzgpY3gpJ7gpL7gpKQg4KS14KS/4KSV4KSy4KWN4KSqIGAlcyciCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDUzCisjLCBmdXp6eQorbXNnaWQgIiIKKyJuZWVkIC0tZGlzcGxheSwgLS1xdWVyeSwgLS1saXN0LCAtLWdldC1zZWxlY3Rpb25zLCAtLWNvbmZpZywgLS1zZXQsIC0tc2V0LSIKKyJzZWxlY3Rpb25zLCAtLWluc3RhbGwsIC0tcmVtb3ZlLCAtLWFsbCwgLS1yZW1vdmUtYWxsIG9yIC0tYXV0byIKK21zZ3N0ciAiIgorIm5lZWQgLS1kaXNwbGF5LCAtLWNvbmZpZywgLS1zZXQsIC0taW5zdGFsbCwgLS1yZW1vdmUsIC0tYWxsLCAtLXJlbW92ZS1hbGwgb3IgIgorIi0tYXV0byIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0OTAKKyMsIGZ1enp5CisjfCBtc2dpZCAicmVhZCBlcnJvciBvbiBzdGFuZGFyZCBpbnB1dCIKK21zZ2lkICI8c3RhbmRhcmQgaW5wdXQ+IgorbXNnc3RyICLgpK7gpL7gpKjgpJUg4KSG4KSX4KSk4KSu4KS+IOCkpOCljeCksOClgeCkn+CkvyDgpKrgpKLgpY3gpKjgpYHgpLngpYvgpLjgpY0iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTAwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTAzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJubyBhbHRlcm5hdGl2ZXMgZm9yICVzLiIKK21zZ3N0ciAiJXMg4KSV4KS+IOCksuCkvuCkl+CkvyDgpLXgpL/gpJXgpLLgpY3gpKog4KSb4KWI4KSoIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUzMAorIywgYy1mb3JtYXQKK21zZ2lkICIlcy8lcyBpcyBkYW5nbGluZywgaXQgd2lsbCBiZSB1cGRhdGVkIHdpdGggYmVzdCBjaG9pY2UuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTM0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiJXMvJXMgaGFzIGJlZW4gY2hhbmdlZCAobWFudWFsbHkgb3IgYnkgYSBzY3JpcHQpLiBTd2l0Y2hpbmcgdG8gbWFudWFsICIKKyJ1cGRhdGVzIG9ubHkuIgorbXNnc3RyICIiCisiJXMg4KSq4KSw4KS/4KS14KSw4KWN4KSk4KSoIOCkl+CksOCkv+Ckj+CkleCliyDgpJsgKOCkruCljeCkr+CkvuCkqOClgeCkheCksuClgCDgpLXgpL4g4KS44KWN4KSV4KWN4KSw4KS/4KSq4KWN4KSf4KSm4KWN4KS14KS+4KSw4KS+KVxuIgorIuCkruCljeCkr+CkvuCkqOClgeCkheCksiDgpIXgpKbgpY3gpK/gpL7gpLXgpKfgpL/gpJXgpLLgpL7gpIgg4KSu4KS+4KSk4KWN4KSwIOCkuOCljeCkteCkv+CkmuCkv+CkmSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NDIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInNldHRpbmcgdXAgYXV0b21hdGljIHNlbGVjdGlvbiBvZiAlcy4iCittc2dzdHIgIiVzIOCkleCliyDgpLjgpY3gpLXgpJrgpL7gpLLgpL/gpKQg4KSa4KSv4KSoIOCkuOClh+CknyDgpJfgpLDgpY3gpKbgpYjgpJsiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTUxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBmb3IgJXMgbm90IHJlZ2lzdGVyZWQsIG5vdCBzZXR0aW5nLiIKK21zZ3N0ciAiJXMg4KSV4KS+IOCksuCkvuCkl+CkvyAlcyDgpLXgpL/gpJXgpLLgpY3gpKog4KSm4KSw4KWN4KSk4KS+IOCkl+CksOCkv+Ckj+CkleCliyDgpJvgpYjgpKgsIOCkueCkn+CkvuCkh+Ckj+CkleCliyDgpJvgpYjgpKgg4KWkIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU1NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU2MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiVGhlcmUgaXMgbm8gcHJvZ3JhbSB3aGljaCBwcm92aWRlcyAlcy4iCittc2dzdHIgIiIKKyLgpKTgpY3gpK/gpLngpL7gpIEgJXMg4KSJ4KSq4KSy4KSs4KWN4KSnIOCkl+CksOCljeCkqOClhyDgpJXgpL7gpLDgpY3gpK/gpJXgpY3gpLDgpK4g4KSb4KWI4KSoIOClpFxuIgorIuCkleCkqOCljeCkq+Ckv+Ckl+CksCDgpJfgpLDgpY3gpKjgpLLgpL7gpIgg4KSV4KWH4KS54KWAIOCkm+CliOCkqCDgpaRcbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NjUgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NzUKK21zZ2lkICJOb3RoaW5nIHRvIGNvbmZpZ3VyZS4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiVGhlcmUgaXMgb25seSBvbmUgYWx0ZXJuYXRpdmUgaW4gbGluayBncm91cCAlczogJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1ODQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlICVzIGZvciAlcyBub3QgcmVnaXN0ZXJlZCwgbm90IHJlbW92aW5nLiIKK21zZ3N0ciAiJXMg4KSV4KS+IOCksuCkvuCkl+CkvyAlcyDgpLXgpL/gpJXgpLLgpY3gpKog4KSm4KSw4KWN4KSk4KS+IOCkl+CksOCkv+Ckj+CkleCliyDgpJvgpYjgpKgsIOCkueCkn+CkvuCkh+Ckj+CkleCliyDgpJvgpYjgpKgg4KWkIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU5MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAicmVtb3ZpbmcgbWFudWFsbHkgc2VsZWN0ZWQgYWx0ZXJuYXRpdmUgLSBzd2l0Y2hpbmcgJXMgdG8gYXV0byBtb2RlIgorbXNnc3RyICLgpK7gpY3gpK/gpL7gpKjgpYHgpIXgpLLgpYAg4KSa4KSv4KSoIOCkl+CksOCkv+Ckj+CkleCliyDgpLXgpL/gpJXgpLLgpY3gpKog4KS54KSf4KS+4KSJ4KSm4KWI4KSbIC0g4KS44KWN4KS14KSkOiDgpK7gpYvgpKHgpK7gpL4g4KS44KWN4KS14KS/4KSaIOCkl+CksOCljeCkpuCliOCkmyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MTcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImF1dG9tYXRpYyB1cGRhdGVzIG9mICVzLyVzIGFyZSBkaXNhYmxlZCwgbGVhdmluZyBpdCBhbG9uZS4iCittc2dzdHIgIiAlcyDgpJXgpYsg4KS44KWN4KS14KSa4KS+4KSy4KS/4KSkIOCkheCkpuCljeCkr+CkvuCkteCkp+Ckv+CklSDgpIXgpJXgpY3gpLfgpK4g4KSq4KS+4KSw4KS/4KSv4KWLLCDgpK/gpLjgpLLgpL7gpIgg4KSb4KWL4KSh4KWN4KSo4KWB4KS54KWL4KS44KWNIOClpCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInRvIHJldHVybiB0byBhdXRvbWF0aWMgdXBkYXRlcyB1c2UgJyVzIC0tYXV0byAlcycuIgorbXNnc3RyICLgpLjgpY3gpLXgpJrgpL7gpLLgpL/gpKQg4KSF4KSm4KWN4KSv4KS+4KS14KSn4KS/4KSVIOCkq+CksOCljeCkleCkvuCkieCkqCDgpIXgpKbgpY3gpK/gpL7gpLXgpKfgpL/gpJUt4KS14KS/4KSV4KSy4KWN4KSq4KS54KSw4KWCLS3gpLjgpY3gpLXgpKQgJXMnIOCkquCljeCksOCkr+Cli+CklyDgpJfgpLDgpY3gpKjgpYHgpLngpYvgpLjgpY0g4KWkIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYzNgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidXNpbmcgJXMgdG8gcHJvdmlkZSAlcyAoJXMpIGluICVzLiIKK21zZ3N0ciAiIGAlcycg4KSq4KWN4KSw4KSm4KS+4KSoIOCkl+CksOCljeCkqCBgJXMnIOCkquCljeCksOCkr+Cli+CklyDgpJfgpLDgpY3gpKbgpYjgpJsiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjQ0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmb3JjaW5nIHJlaW5zdGFsbGF0aW9uIG9mIGFsdGVybmF0aXZlICVzIGJlY2F1c2UgbGluayBncm91cCAlcyBpcyBicm9rZW4uIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjUxCisjLCBjLWZvcm1hdAorbXNnaWQgImN1cnJlbnQgYWx0ZXJuYXRpdmUgJXMgaXMgdW5rbm93biwgc3dpdGNoaW5nIHRvICVzIGZvciBsaW5rIGdyb3VwICVzLiIKK21zZ3N0ciAiIgorCisjLCBmdXp6eQorI34gbXNnaWQgIml0IGlzIGEgc2xhdmUgb2YgJXMiCisjfiBtc2dzdHIgIuCkuOCljeCksuClh+CkrSAlczogJXMiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgImNhbm5vdCBzdGF0IG9sZCBuYW1lIGAlcyc6ICVzIgorI34gbXNnaWQgImNhbm5vdCBzdGF0ICVzOiAlcyIKKyN+IG1zZ3N0ciAi4KSq4KWB4KSw4KS+4KSo4KWLIOCkqOCkvuCkriBgJXMnIOCkpOCli+CkleCljeCkqCDgpLjgpJXgpL/gpKbgpYjgpKg6ICVzIgorCisjLCBmdXp6eQorI358IG1zZ2lkICIlczogY29weWluZyAlcyB0byAlcyBmYWlsZWQsIGdpdmluZyB1cDogJXMiCisjfiBtc2dpZCAic2NhbiBvZiAlcyBmYWlsZWQ6ICVzIgorI34gbXNnc3RyICIlczogJXMg4KSu4KS+ICVzIOCkquCljeCksOCkpOCkv+CksuCkv+CkquCkvyDgpJfgpLDgpY3gpKgg4KSF4KS44KSr4KSyLCDgpJvgpYvgpKHgpY3gpKbgpYjgpJs6ICVzIgorCisjLCBmdXp6eQorI358IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyAlcyIKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlY3V0ZSAlczogJXMiCisjfiBtc2dzdHIgIiVzIOCkleCkvuCksOCljeCkr+CkvuCkqOCljeCkteCkr+CkqCDgpJfgpLDgpY3gpKgg4KSF4KS44KSr4KSyIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIG1ha2UgJXMgYSBzeW1saW5rIHRvICVzOiAlcyIKKyN+IG1zZ3N0ciAiJXMg4KSu4KS+ICVzIOCkuOCkv+CkruCksuCkv+CkmeCljeCklSDgpKzgpKjgpL7gpIngpKgg4KSF4KSV4KWN4KS34KSuOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsICVzIGFzICVzOiAlcyIKKyN+IG1zZ3N0ciAiJXMg4KSV4KWLIOCksOClguCkquCkruCkviAlcyDgpLjgpY3gpKXgpL7gpKrgpKjgpL4g4KSX4KSw4KWN4KSoIOCkheCkleCljeCkt+CkrjogJXMiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAid2hpbGUgd3JpdGluZyAlczogJXMiCisjfiBtc2dzdHIgInN0ZG91dCDgpLLgpYfgpJbgpY3gpKbgpL4g4KSk4KWN4KSw4KWB4KSf4KS/OiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byByZWFkICVzOiAlcyIKKyN+IG1zZ3N0ciAiJXMg4KSq4KSi4KWN4KSoIOCkheCkleCljeCkt+CkrjogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gY2xvc2UgJXM6ICVzIgorI34gbXNnc3RyICIlcyDgpKzgpKjgpY3gpKYg4KSX4KSw4KWN4KSoIOCkheCkleCljeCkt+CkrjogJXMiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgInVuYWJsZSB0byB3cml0ZSAlczogJXMiCisjfiBtc2dpZCAiY2Fubm90IHdyaXRlICVzOiAlcyIKKyN+IG1zZ3N0ciAiJXMg4KSy4KWH4KSW4KWN4KSoIOCkheCkleCljeCkt+CkrjogJXMiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgInVuYWJsZSB0byByZW5hbWUgJXMgdG8gJXM6ICVzIgorI34gbXNnaWQgInVuYWJsZSB0byByZW5hbWUgZmlsZSAnJXMnIHRvICclcyciCisjfiBtc2dzdHIgIiVzIOCksuCkvuCkiCAlcyDgpK7gpL4g4KSq4KWB4KSoOiDgpKjgpL7gpK7gpJXgpLDgpKMg4KSX4KSw4KWN4KSoIOCkheCkleCljeCkt+CkrjogJXMiCisKKyN+IG1zZ2lkICJtYWxsb2MgZmFpbGVkICglbGQgYnl0ZXMpIgorI34gbXNnc3RyICLgpK7gpL7gpLLgpYvgpJUg4KSF4KS44KSr4KSyICglbGQg4KSs4KS+4KSH4KSf4KS54KSw4KWCKSIKKworI34gbXNnaWQgInJlYWxsb2MgZmFpbGVkICglbGQgYnl0ZXMpIgorI34gbXNnc3RyICLgpLDgpL/gpI/gpLLgpYvgpJUg4KSF4KS44KSr4KSyICglbGQg4KSs4KS+4KSH4KSf4KS54KSw4KWCKSIKKworI34gbXNnaWQgInVuYWJsZSB0byB1bmJ1ZmZlciBgJS4yNTVzJyIKKyN+IG1zZ3N0ciAiYCUuMjU1cycg4KSs4KSr4KSwIOCkrOCkqOCljeCkpiDgpJfgpLDgpY3gpKgg4KSF4KSV4KWN4KS34KSuIgorCisjfiBtc2dpZCAicGFydCBmaWxlIGAlLjI1MHMnIGhhcyB0cmFpbGluZyBnYXJiYWdlIgorI34gbXNnc3RyICLgpK3gpL7gpJcg4KSr4KS+4KSH4KSyIGAlLjI1MHMnIOCkuOCkgeCklyDgpIXgpLXgpLjgpY3gpKXgpL/gpKQg4KSF4KS24KWB4KSm4KWN4KSn4KS/IgorCisjfiBtc2dpZCAic2l6ZSAlN2Qgb2NjdXJzICU1ZCB0aW1lc1xuIgorI34gbXNnc3RyICLgpLjgpL7gpIfgpJwgJTdkIOCknOCkruCljeCkruCkviAlNWQg4KSq4KSf4KSVIOCksOCkueCkqOCljeCkm1xuIgorCisjfiBtc2dpZCAib3V0IG9mIG1lbW9yeSBwdXNoaW5nIGVycm9yIGhhbmRsZXI6ICIKKyN+IG1zZ3N0ciAi4KS44KWN4KSu4KWD4KSk4KWAIOCkrOCkvuCkueCkv+CksCDgpKTgpY3gpLDgpYHgpJ/gpL8g4KS54KWN4KSv4KS+4KSo4KWN4KSh4KSy4KSwIOCkouCkleClh+CksuCljeCkpuCliDogIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHVubG9jayBkcGtnIHN0YXR1cyBkYXRhYmFzZSIKKyN+IG1zZ3N0ciAiZHBrZyDgpLXgpLjgpY3gpKTgpYHgpLjgpY3gpKXgpL/gpKTgpL8g4KSh4KWH4KSf4KS+4KS14KWH4KS2IOCkpOCkvuCksuCljeCkmuCkviDgpKvgpYHgpJXgpL7gpIngpKgg4KSF4KSV4KWN4KS34KSuIgorCisjfiBtc2dpZCAiY29weSBpbmZvIGZpbGUgYCUuMjU1cyciCisjfiBtc2dzdHIgIuCkuOClguCkmuCkqOCkviDgpKvgpL7gpIfgpLJgJS4yNTVzJyDgpKrgpY3gpLDgpKTgpL/gpLLgpL/gpKrgpL8g4KSX4KSw4KWN4KSo4KWB4KS54KWL4KS44KWNIgorCisjfiBtc2dpZCAicGFyc2UgZXJyb3IiCisjfiBtc2dzdHIgIuCkpOCljeCksOClgeCkn+CkvyDgpKrgpKbgpLXgpLDgpY3gpKPgpKgg4KSX4KSw4KWN4KSo4KWB4KS54KWL4KS44KWNIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHdyaXRlIHBhcnNpbmcgd2FybmluZyIKKyN+IG1zZ3N0ciAi4KSq4KSm4KS14KSw4KWN4KSj4KSoIOCkl+CksOCljeCkqOClhyDgpJrgpYfgpKTgpL7gpLXgpKjgpYAg4KSy4KWH4KSW4KWN4KSoIOCkheCkuOCkq+CksiIKKworI34gbXNnaWQgImZhaWxlZCB0byBydW4gJXMgKCUuMjUwcykiCisjfiBtc2dzdHIgIiVzICglLjI1MHMpIOCkmuCksuCkvuCkieCkqCDgpIXgpLjgpKvgpLIiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBzaGVsbCAoJS4yNTBzKSIKKyN+IG1zZ3N0ciAi4KS24KWH4KSyICglLjI1MHMpIOCkleCkvuCksOCljeCkr+CkqOCljeCkteCkr+CkqCDgpJfgpLDgpY3gpKgg4KSF4KS44KSr4KSyIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGNoZWNrIGZvciBleGlzdGVuY2Ugb2YgYCUuMjUwcyciCisjfiBtc2dzdHIgImAlLjI1MHMnIOCkleCliyDgpIXgpLjgpY3gpKTgpL/gpKTgpY3gpLXgpJXgpL4g4KSy4KS+4KSX4KS/IOCknOCkvuCkgeCkmiDgpJfgpLDgpY3gpKgg4KSF4KS44KSr4KSyIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgcm0gZm9yIGNsZWFudXAiCisjfiBtc2dzdHIgIuCkluCkvuCksuClgCDgpJfgpLDgpY3gpKjgpJXgpL4g4KSy4KS+4KSX4KS/IHJtIOCkleCkvuCksOCljeCkr+CkvuCkqOCljeCkteCkr+CkqCDgpJfgpLDgpY3gpKgg4KSF4KS44KSr4KSyIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICIlcyBkZWJ1Z2dpbmcgb3B0aW9uLCAtLWRlYnVnPTxvY3RhbD4gb3IgLUQ8b2N0YWw+OlxuIgorI34gIlxuIgorI34gIiBudW1iZXIgIHJlZi4gaW4gc291cmNlICAgZGVzY3JpcHRpb25cbiIKKyN+ICIgICAgICAxICAgZ2VuZXJhbCAgICAgICAgICAgR2VuZXJhbGx5IGhlbHBmdWwgcHJvZ3Jlc3MgaW5mb3JtYXRpb25cbiIKKyN+ICIgICAgICAyICAgc2NyaXB0cyAgICAgICAgICAgSW52b2NhdGlvbiBhbmQgc3RhdHVzIG9mIG1haW50YWluZXIgc2NyaXB0c1xuIgorI34gIiAgICAgMTAgICBlYWNoZmlsZSAgICAgICAgICBPdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWRcbiIKKyN+ICIgICAgMTAwICAgZWFjaGZpbGVkZXRhaWwgICAgTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWRcbiIKKyN+ICIgICAgIDIwICAgY29uZmYgICAgICAgICAgICAgT3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZVxuIgorI34gIiAgICAyMDAgICBjb25mZmRldGFpbCAgICAgICBMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGVcbiIKKyN+ICIgICAgIDQwICAgZGVwY29uICAgICAgICAgICAgRGVwZW5kZW5jaWVzIGFuZCBjb25mbGljdHNcbiIKKyN+ICIgICAgNDAwICAgZGVwY29uZGV0YWlsICAgICAgTG90cyBvZiBkZXBlbmRlbmNpZXMvY29uZmxpY3RzIG91dHB1dFxuIgorI34gIiAgMTAwMDAgICB0cmlnZ2VycyAgICAgICAgICBUcmlnZ2VyIGFjdGl2YXRpb24gYW5kIHByb2Nlc3NpbmdcbiIKKyN+ICIgIDIwMDAwICAgdHJpZ2dlcnNkZXRhaWwgICAgTG90cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzXG4iCisjfiAiICA0MDAwMCAgIHRyaWdnZXJzc3R1cGlkICAgIFNpbGx5IGFtb3VudHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2Vyc1xuIgorI34gIiAgIDEwMDAgICB2ZXJ5dmVyYm9zZSAgICAgICBMb3RzIG9mIGRyaXZlbCBhYm91dCBlZyB0aGUgZHBrZy9pbmZvICIKKyN+ICJkaXJlY3RvcnlcbiIKKyN+ICIgICAyMDAwICAgc3R1cGlkbHl2ZXJib3NlICAgSW5zYW5lIGFtb3VudHMgb2YgZHJpdmVsXG4iCisjfiAiXG4iCisjfiAiRGVidWdnaW5nIG9wdGlvbnMgYXJlIGJlIG1peGVkIHVzaW5nIGJpdHdpc2Utb3IuXG4iCisjfiAiTm90ZSB0aGF0IHRoZSBtZWFuaW5ncyBhbmQgdmFsdWVzIGFyZSBzdWJqZWN0IHRvIGNoYW5nZS5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIiVzIOCkoeCkv+CkrOCklyDgpLXgpL/gpJXgpLLgpY3gpKrgpLngpLDgpYIsIC0tZGVidWc9PG9jdGFsPiDgpLXgpL4gLUQ8b2N0YWw+OlxuIgorI34gIlxuIgorI34gIuCkuOCljeCksOCli+CkpCDgpLXgpLDgpY3gpKPgpKjgpK7gpL4gICAgIOCkuOCkv+Ckq+CkvuCksOCkv+CkuCAgICDgpJfgpLDgpL/gpI/gpJXgpYsg4KSo4KSu4KWN4KSs4KSwIFxuIgorI34gIiAgICAgIOClpyAgIOCkuOCkvuCkruCkvuCkqOCljeCkryAgICAgICAgICAg4KS44KS+4KSu4KS+4KSo4KWN4KSvIOCkieCkquCkr+Cli+Ckl+ClgCDgpKrgpY3gpLDgpJfgpKTgpL8g4KS44KWC4KSa4KSo4KS+XG4iCisjfiAiICAgICAg4KWoICAg4KS44KWN4KSV4KWN4KSw4KS/4KSr4KWN4KSf4KS54KSw4KWCICAgICAgICAgICAgICAgIOCkuOCkguCkreCkvuCksOCkleCksOCljeCkpOCkviDgpLjgpY3gpJXgpY3gpLDgpL/gpKvgpY3gpJ/gpLngpLDgpYHgpJXgpYsg4KSG4KS54KWN4KS14KS+4KSoIOCksCDgpLXgpLjgpY3gpKTgpYEg4KS44KWN4KSl4KS/4KSk4KS/XG4iCisjfiAiICAgICDgpafgpaYgICDgpKrgpY3gpLDgpKTgpY3gpK/gpYfgpJUg4KSr4KS+4KSH4KSyICAgICAgICAgIOCkquCljeCksOCkpOCljeCkr+Clh+CklSDgpKrgpY3gpLDgpJXgpY3gpLDgpL/gpK/gpL7gpJfgpKQg4KSr4KS+4KSH4KSy4KSV4KWLIOCkqOCkv+CksOCljeCkl+CkpFxuIgorI34gIiAgICDgpafgpabgpaYgICDgpKrgpY3gpLDgpKTgpY3gpK/gpYfgpJUg4KSr4KS+4KSH4KSy4KSV4KWLIOCkteCkv+CkpOCksOCkoyAgICAg4KSq4KWN4KSw4KSk4KWN4KSv4KWH4KSVIOCkquCljeCksOCkleCljeCksOCkv+Ckr+CkvuCkl+CkpCDgpKvgpL7gpIfgpLLgpJXgpYsg4KSF4KSk4KWN4KSv4KS+4KSn4KS/4KSVIOCkqOCkv+CksOCljeCkl+CkvuCkpCBcbiIKKyN+ICIgICAgIOClqOClpiAgIGNvbmZmICAgICAgICAgICAgIOCkquCljeCksOCkpOCljeCkr+Clh+CklSDgpJXgpKjgpKvgpL/gpJfgpLDgpYfgpLjgpKgg4KSr4KS+4KSH4KSy4KSV4KWLIOCksuCkvuCkl+CkvyDgpKjgpL/gpLDgpY3gpJfgpL7gpKRcbiIKKyN+ICIgICAg4KWo4KWm4KWmICAgY29uZmZkZXRhaWwgICAgICAg4KSq4KWN4KSw4KSk4KWN4KSv4KWH4KSVIOCkleCkqOCkq+Ckv+Ckl+CksOClh+CkuOCkqCDgpKvgpL7gpIfgpLLgpJXgpYsg4KSy4KS+4KSX4KS/IOCkheCkpOCljeCkr+CkvuCkp+Ckv+CklSDgpKjgpL/gpLDgpY3gpJfgpL7gpKRcbiIKKyN+ICIgICAgIOClquClpiAgIGRlcGNvbiAgICAgICAgICAgIOCkqOCkv+CksOCljeCkreCksOCkpOCkvuCkueCksOClgiDgpLAg4KSm4KWN4KS14KSo4KWN4KSm4KS54KSw4KWCXG4iCisjfiAiICAgIOClquClpuClpiAgIGRlcGNvbmRldGFpbCAgICAgIOCkheCkpOCljeCkr+CkvuCkp+Ckv+CklSDgpKjgpL/gpLDgpY3gpK3gpLDgpKTgpL7gpLngpLDgpYIv4KSm4KWN4KS14KSo4KWN4KSm4KS54KSw4KWCIOCkqOCkv+CksOCljeCkl+CkvuCkpFxuIgorI34gIiAgIOClp+ClpuClpuClpiAgIHZlcnl2ZXJib3NlICAgICAgICBkcGtnL2luZm8g4KSh4KS+4KSH4KSw4KWH4KSV4KWN4KSf4KWN4KSw4KWAIGVnIOCkrOCkvuCksOClhyDgpIXgpKTgpY3gpK/gpL7gpKfgpL/gpJUg4KSo4KSa4KS+4KS54KS/4KSC4KSm4KWLICIKKyN+ICLgpJXgpYHgpLDgpL5cbiIKKyN+ICIgICAyMDAwICAgc3R1cGlkbHl2ZXJib3NlICAg4KSo4KSa4KS+4KS54KS/4KSC4KSm4KWLIOCkleClgeCksOCkvuCkleCliyDgpIngpKjgpY3gpK7gpKTgpY3gpKQg4KSw4KSV4KSu4KS54KSw4KWCIFxuIgorI34gIlxuIgorI34gImJpdHdpc2Utb3Ig4KSq4KWN4KSw4KSv4KWL4KSXIOCkl+CksOClh+CksCDgpKHgpL/gpKzgpJcg4KS14KS/4KSV4KSy4KWN4KSq4KS54KSw4KWCIOCkruCkv+CktuCljeCksOCkoyDgpJfgpLDgpL/gpK/gpYsg4KWkXG4iCisjfiAi4KSv4KS+4KSmIOCkl+CksOCljeCkqOClgeCkueCli+CkuOCljSDgpJXgpL8g4KSu4KS+4KSo4KWH4KS54KSw4KWCIOCksCDgpK7gpL7gpKjgpLngpLDgpYIg4KSq4KSw4KS/4KS14KSw4KWN4KSk4KSoIOCkueClgeCkqOClgeCkquCksOCljeCkqOClhyDgpLXgpLjgpY3gpKTgpYHgpLngpLDgpYIg4KS54KWB4KSo4KWNIOClpFxuIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICIlcyBmb3JjaW5nIG9wdGlvbnMgLSBjb250cm9sIGJlaGF2aW91ciB3aGVuIHByb2JsZW1zIGZvdW5kOlxuIgorI34gIiAgd2FybiBidXQgY29udGludWU6ICAtLWZvcmNlLTx0aGluZz4sPHRoaW5nPiwuLi5cbiIKKyN+ICIgIHN0b3Agd2l0aCBlcnJvcjogICAgLS1yZWZ1c2UtPHRoaW5nPiw8dGhpbmc+LC4uLiB8IC0tbm8tZm9yY2UtIgorI34gIjx0aGluZz4sLi4uXG4iCisjfiAiIEZvcmNpbmcgdGhpbmdzOlxuIgorI34gIiAgYWxsIFshXSAgICAgICAgICAgICAgICBTZXQgYWxsIGZvcmNlIG9wdGlvbnNcbiIKKyN+ICIgIGRvd25ncmFkZSBbKl0gICAgICAgICAgUmVwbGFjZSBhIHBhY2thZ2Ugd2l0aCBhIGxvd2VyIHZlcnNpb25cbiIKKyN+ICIgIGNvbmZpZ3VyZS1hbnkgICAgICAgICAgQ29uZmlndXJlIGFueSBwYWNrYWdlIHdoaWNoIG1heSBoZWxwIHRoaXMgb25lXG4iCisjfiAiICBob2xkICAgICAgICAgICAgICAgICAgIFByb2Nlc3MgaW5jaWRlbnRhbCBwYWNrYWdlcyBldmVuIHdoZW4gb24gaG9sZFxuIgorI34gIiAgYmFkLXBhdGggICAgICAgICAgICAgICBQQVRIIGlzIG1pc3NpbmcgaW1wb3J0YW50IHByb2dyYW1zLCBwcm9ibGVtcyAiCisjfiAibGlrZWx5XG4iCisjfiAiICBub3Qtcm9vdCAgICAgICAgICAgICAgIFRyeSB0byAoZGUpaW5zdGFsbCB0aGluZ3MgZXZlbiB3aGVuIG5vdCByb290XG4iCisjfiAiICBvdmVyd3JpdGUgICAgICAgICAgICAgIE92ZXJ3cml0ZSBhIGZpbGUgZnJvbSBvbmUgcGFja2FnZSB3aXRoIGFub3RoZXJcbiIKKyN+ICIgIG92ZXJ3cml0ZS1kaXZlcnRlZCAgICAgT3ZlcndyaXRlIGEgZGl2ZXJ0ZWQgZmlsZSB3aXRoIGFuIHVuZGl2ZXJ0ZWQgIgorI34gInZlcnNpb25cbiIKKyN+ICIgIGJhZC12ZXJpZnkgICAgICAgICAgICAgSW5zdGFsbCBhIHBhY2thZ2UgZXZlbiBpZiBpdCBmYWlscyBhdXRoZW50aWNpdHkgIgorI34gImNoZWNrXG4iCisjfiAiICBkZXBlbmRzLXZlcnNpb24gWyFdICAgIFR1cm4gZGVwZW5kZW5jeSB2ZXJzaW9uIHByb2JsZW1zIGludG8gd2FybmluZ3NcbiIKKyN+ICIgIGRlcGVuZHMgWyFdICAgICAgICAgICAgVHVybiBhbGwgZGVwZW5kZW5jeSBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzXG4iCisjfiAiICBjb25mbmV3IFshXSAgICAgICAgICAgIEFsd2F5cyB1c2UgdGhlIG5ldyBjb25maWcgZmlsZXMsIGRvbid0IHByb21wdFxuIgorI34gIiAgY29uZm9sZCBbIV0gICAgICAgICAgICBBbHdheXMgdXNlIHRoZSBvbGQgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHRcbiIKKyN+ICIgIGNvbmZkZWYgWyFdICAgICAgICAgICAgVXNlIHRoZSBkZWZhdWx0IG9wdGlvbiBmb3IgbmV3IGNvbmZpZyBmaWxlcyBpZiAiCisjfiAib25lXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIGlzIGF2YWlsYWJsZSwgZG9uJ3QgcHJvbXB0LiBJZiBubyBkZWZhdWx0IGNhbiBiZSAiCisjfiAiZm91bmQsXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIHlvdSB3aWxsIGJlIHByb21wdGVkIHVubGVzcyBvbmUgb2YgdGhlIGNvbmZvbGQgIgorI34gIm9yXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmZuZXcgb3B0aW9ucyBpcyBhbHNvIGdpdmVuXG4iCisjfiAiICBjb25mbWlzcyBbIV0gICAgICAgICAgIEFsd2F5cyBpbnN0YWxsIG1pc3NpbmcgY29uZmlnIGZpbGVzXG4iCisjfiAiICBjb25mYXNrIFshXSAgICAgICAgICAgIE9mZmVyIHRvIHJlcGxhY2UgY29uZmlnIGZpbGVzIHdpdGggbm8gbmV3ICIKKyN+ICJ2ZXJzaW9uc1xuIgorI34gIiAgYnJlYWtzIFshXSAgICAgICAgICAgICBJbnN0YWxsIGV2ZW4gaWYgaXQgd291bGQgYnJlYWsgYW5vdGhlciBwYWNrYWdlXG4iCisjfiAiICBjb25mbGljdHMgWyFdICAgICAgICAgIEFsbG93IGluc3RhbGxhdGlvbiBvZiBjb25mbGljdGluZyBwYWNrYWdlc1xuIgorI34gIiAgYXJjaGl0ZWN0dXJlIFshXSAgICAgICBQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyBhcmNoaXRlY3R1cmVcbiIKKyN+ICIgIG92ZXJ3cml0ZS1kaXIgWyFdICAgICAgT3ZlcndyaXRlIG9uZSBwYWNrYWdlJ3MgZGlyZWN0b3J5IHdpdGggYW5vdGhlcidzICIKKyN+ICJmaWxlXG4iCisjfiAiICB1bnNhZmUtaW8gWyFdICAgICAgICAgIERvIG5vdCBwZXJmb3JtIHNhZmUgSS9PIG9wZXJhdGlvbnMgd2hlbiAiCisjfiAidW5wYWNraW5nXG4iCisjfiAiICByZW1vdmUtcmVpbnN0cmVxIFshXSAgIFJlbW92ZSBwYWNrYWdlcyB3aGljaCByZXF1aXJlIGluc3RhbGxhdGlvblxuIgorI34gIiAgcmVtb3ZlLWVzc2VudGlhbCBbIV0gICBSZW1vdmUgYW4gZXNzZW50aWFsIHBhY2thZ2VcbiIKKyN+ICJcbiIKKyN+ICJXQVJOSU5HIC0gdXNlIG9mIG9wdGlvbnMgbWFya2VkIFshXSBjYW4gc2VyaW91c2x5IGRhbWFnZSB5b3VyICIKKyN+ICJpbnN0YWxsYXRpb24uXG4iCisjfiAiRm9yY2luZyBvcHRpb25zIG1hcmtlZCBbKl0gYXJlIGVuYWJsZWQgYnkgZGVmYXVsdC5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIiVzIOCknOCli+CkoSDgpKbgpL/gpKjgpYcg4KS14KS/4KSV4KSy4KWN4KSq4KS54KSw4KWCIC0g4KS44KSu4KS44KWN4KSv4KS+4KS54KSw4KWCIOCkq+Clh+CksuCkviDgpKrgpLDgpY3gpKbgpL4g4KS14KWN4KSv4KS14KS54KS+4KSwIOCkqOCkv+Ckr+CkqOCljeCkpOCljeCksOCkoyDgpJfgpLDgpY3gpKjgpYHgpLngpYvgpLjgpY06XG4iCisjfiAiICDgpJrgpYfgpKTgpL7gpLXgpKjgpYAg4KSm4KS/4KSo4KWB4KS54KWL4KS44KWNIOCkpOCksCDgpKjgpL/gpLDgpKjgpY3gpKTgpLDgpKTgpL4g4KSm4KS/4KSo4KWB4KS54KWL4KS44KWNOiAgLS3gpJzgpYvgpKEg4KSX4KSw4KWN4KSo4KWB4KS54KWL4KS44KWNLTx0aGluZz4sIDx0aGluZz4sLi4uXG4iCisjfiAiICDgpKTgpY3gpLDgpYHgpJ/gpL8g4KS44KSC4KSX4KWIIOCksOCli+CkleCljeCkqOClgeCkueCli+CkuOCljTogICAgLS3gpIXgpLjgpY3gpLXgpYDgpJXgpL7gpLAg4KSX4KSw4KWN4KSo4KWB4KS54KWL4KS44KWNLTx0aGluZz4sPHRoaW5nPiwuLi4gfCAtLeCknOCli+CkoS0iCisjfiAi4KSo4KSX4KSw4KWN4KSo4KWB4KS54KWL4KS44KWNLTx0aGluZz4sLi4uXG4iCisjfiAiIOCkmuClgOCknOCkueCksOClgiDgpJzgpYvgpKEg4KSX4KSw4KS/4KSm4KWIOlxuIgorI34gIiAg4KS44KSs4KWIIFshXSAgICAgICAgICAgICAgICDgpLjgpKzgpYgg4KSc4KWL4KSh4KSm4KS+4KSwIOCkteCkv+CkleCksuCljeCkquCkueCksOClgiDgpLjgpYfgpJ8g4KSX4KSw4KWN4KSo4KWB4KS54KWL4KS44KWNXG4iCisjfiAiICDgpLjgpY3gpKTgpLDgpJXgpK4g4KSX4KSw4KWN4KSo4KWB4KS54KWL4KS44KWNIFsqXSAgICAgICAgICDgpJXgpK4g4KS44KSC4KS44KWN4KSV4KSw4KSjIOCkuOCkguCkl+CliCDgpKrgpY3gpK/gpL7gpJXgpYfgpJwg4KSs4KSm4KSy4KWN4KSo4KWB4KS54KWL4KS44KWNXG4iCisjfiAiICDgpJXgpYHgpKjgpYgt4KSV4KSo4KSr4KS/4KSX4KSwIOCkl+CksOCljeCkqOClgeCkueCli+CkuOCljSAgICAgICAgICDgpK/gpYsg4KSP4KSJ4KSf4KS+4KSy4KS+4KSIIOCkruCkpuCljeCkpuCkpCDgpJfgpLDgpY3gpKgg4KS44KSV4KWN4KSo4KWHIOCkleClgeCkqOCliCDgpKrgpKjgpL8g4KSq4KWN4KSv4KS+4KSV4KWH4KScIOCkleCkqOCkq+Ckv+Ckl+CksCAiCisjfiAi4KSX4KSw4KWN4KSo4KWB4KS54KWL4KS44KWNXG4iCisjfiAiICDgpLjgpK7gpL7gpIngpKjgpYHgpLngpYvgpLjgpY0gICAgICAgICAgICAgICAgICAg4KS54KWL4KSy4KWN4KSh4KSu4KS+IOCkreCkj+CkquCkqOCkvyDgpIbgpJXgpLjgpY3gpK7gpL/gpJUg4KSq4KWN4KSv4KS+4KSV4KWH4KSc4KS54KSw4KWCIOCkquCljeCksOCkleCljeCksOCkv+Ckr+CkviDgpJfgpLDgpY3gpKjgpYHgpLngpYvgpLjgpY0gXG4iCisjfiAiICDgpJbgpLDgpL7gpKwt4KSs4KS+4KSf4KWLICAgICAgICAgICAgICAgUEFUSCDgpLLgpYcg4KSu4KSoIOCkquCksOClh+CkleCkviDgpK7gpLngpKTgpY3gpLXgpKrgpYLgpLDgpY3gpKMg4KSV4KS+4KSw4KWN4KSv4KSV4KWN4KSw4KSu4KS54KSw4KWCLCDgpLjgpK7gpLjgpY3gpK/gpL7gpLngpLDgpYIgIgorI34gIuCkueCksOCkvuCkh+CksOCkueClh+CkleCliyDgpJtcbiIKKyN+ICIgIOCkruClguCksi3gpLngpYvgpIfgpKggICAgICAgICAgICAgICDgpK7gpYLgpLIg4KSo4KSt4KSP4KSk4KS+IOCkquCkqOCkvyDgpJrgpL/gpJzgpLngpLDgpYIg4KSq4KWB4KSoOuCkuOCljeCkpeCkvuCkquCkqOCkviDgpJfgpLDgpY3gpKjgpYcg4KSq4KWN4KSw4KSv4KS+4KS4IOCkl+CksOCljeCkqOClgeCkueCli+CkuOCljVxuIgorI34gIiAg4KSF4KSn4KS/4KSy4KWH4KSW4KSoIOCkl+CksOCljeCkqOClgeCkueCli+CkuOCljSAgICAgICAgICAgICAg4KSP4KSJ4KSf4KS+IOCkquCljeCkr+CkvuCkleClh+CknOCkrOCkvuCknyDgpIXgpLDgpY3gpJXgpYvgpK7gpL4g4KSr4KS+4KSH4KSyIOCkheCkp+Ckv+CksuClh+CkluCkqCDgpJfgpLDgpY3gpKjgpYHgpLngpYvgpLjgpY1cbiIKKyN+ICIgIOCkheCkp+Ckv+CksuClh+CkluCkqC3gpKvgpYfgpLDgpL/gpK/gpYsgICAgIOCkqOCkq+Clh+CksOCkv+Ckj+CkleCkviDgpI/gpIngpJ/gpL4g4KS44KSC4KS44KWN4KSV4KSw4KSjIOCkuOCkgeCklyDgpKvgpYfgpLDgpL/gpI/gpJXgpYsg4KSr4KS+4KSH4KSyIOCkheCkp+Ckv+CksuClh+CkluCkqCDgpJfgpLDgpY3gpKjgpYHgpLngpYvgpLjgpY1cbiIKKyN+ICIgIOCkluCksOCkvuCkrC3gpLDgpYLgpJzgpYIgICAgICAgICAgICAg4KSv4KS44KSy4KWHIOCkhuCkp+Ckv+CkleCkvuCksOCkv+CklSDgpJzgpL7gpIHgpJog4KSF4KS44KSr4KSyIOCkl+CksOClh+CkquCkqOCkvyDgpKrgpY3gpK/gpL7gpJXgpYfgpJwg4KS44KWN4KSl4KS+4KSq4KSo4KS+IOCkl+CksOCljeCkqOClgeCkueCli+CkuOCljVxuIgorI34gIiAg4KSG4KSn4KS+4KSw4KS/4KSkLeCkreCksOCljeCkuOCkqCBbIV0gICAg4KSo4KS/4KSw4KWN4KSt4KSw4KSk4KS+IOCkuOCkguCkuOCljeCkleCksOCkoyDgpLjgpK7gpLjgpY3gpK/gpL7gpLngpLDgpYIg4KSa4KWH4KSk4KS+4KS14KSo4KWA4KS54KSw4KWB4KSu4KS+IOCkruCli+CkoeCljeCkqOClgeCkueCli+CkuOCljVxuIgorI34gIiAg4KSG4KSn4KS+4KSw4KS/4KSkIFshXSAgICAgICAgICAgIOCkuOCkrOCliCDgpKjgpL/gpLDgpY3gpK3gpLDgpKTgpL4g4KS44KSu4KS44KWN4KSv4KS+4KS54KSw4KWCIOCkmuClh+CkpOCkvuCkteCkqOClgOCkueCksOClgeCkruCkviDgpK7gpYvgpKHgpY3gpKjgpYHgpLngpYvgpLjgpY1cbiIKKyN+ICIgIGNvbmZuZXcgWyFdICAgICAgICAgICAg4KS44KSn4KWIIOCkqOCkr+CkvuCkgSDgpJXgpKjgpKvgpL/gpJfgpLDgpYfgpLjgpKggIOCkq+CkvuCkh+CksiDgpKrgpY3gpLDgpK/gpYvgpJcg4KSX4KSw4KWN4KSo4KS+4KSy4KWHLOCkquCljeCksOCli+CkruCljeCkquCljeCknyDgpJfgpLDgpY3gpKbgpYjgpKhcbiIKKyN+ICIgIGNvbmZvbGQgWyFdICAgICAgICAgICAg4KS44KSn4KWIIOCkquClgeCksOCkvuCkqOCliyDgpJXgpKjgpKvgpL/gpJfgpLDgpYfgpLjgpKgg4KSr4KS+4KSH4KSyIOCkquCljeCksOCkr+Cli+CklyDgpJfgpLDgpY3gpKjgpL7gpLLgpYcs4KSq4KWN4KSw4KWL4KSu4KWN4KSq4KWN4KSfIOCkl+CksOCljeCkpuCliOCkqFxuIgorI34gIiAgY29uZmRlZiBbIV0gICAgICAgICAgICDgpKjgpK/gpL7gpIEg4KSV4KSo4KSr4KS/4KSX4KSw4KWH4KS44KSoIOCkq+CkvuCkh+CksuCkueCksOClgeCkleCliyDgpLLgpL7gpJfgpL8g4KSq4KWC4KSw4KWN4KS14KSo4KS/4KSw4KWN4KSn4KS/4KSkIOCkteCkv+CkleCksuCljeCkqiDgpKrgpY3gpLDgpK/gpYvgpJcgIgorI34gIuCkl+CksOCljeCkqOClgeCkueCli+CkuOCljSDgpK/gpKbgpL8g4KSP4KSJ4KSf4KS+XG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIOCkieCkquCksuCkrOCljeCkpyDgpJsg4KSt4KSo4KWHLCDgpKrgpY3gpLDgpYvgpK7gpY3gpKrgpY3gpJ8g4KSX4KSw4KWN4KSm4KWI4KSoIOClpCDgpK/gpKbgpL8g4KSq4KWC4KSw4KWN4KS14KSo4KS/4KSw4KWN4KSn4KS+4KSw4KSj4KS54KSw4KWCIOCkq+Clh+CksuCkviAiCisjfiAi4KSq4KSw4KWH4KSoIOCkreCkqOClhyxcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmZvbGQg4KSV4KWLIOCkj+CkieCkn+CkviDgpLXgpL5cbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgY29uZm5ldyDgpLXgpL/gpJXgpLLgpY3gpKrgpLngpLDgpYIg4KSm4KS/4KSP4KSk4KS+IOCkquCkqOCkvyDgpKTgpKrgpL7gpIjgpIEg4KSq4KWN4KSw4KWL4KSu4KWN4KSq4KWN4KSfIOCkueClgeCkqOClh+Ckm1xuIgorI34gIiAgY29uZm1pc3MgWyFdICAgICAgICAgICDgpLjgpKfgpYgg4KS54KSw4KS+4KSH4KSw4KS54KWH4KSV4KWLIOCkleCkqOCkq+Ckv+Ckl+CksOClh+CkuOCkqCDgpKvgpL7gpIfgpLIg4KS44KWN4KSl4KS+4KSq4KSo4KS+IOCkl+CksOCljeCkqOClgeCkueCli+CkuOCljVxuIgorI34gIiAg4KSm4KWN4KS14KSo4KWN4KSm4KS54KSw4KWCIFshXSAgICAgICAgICDgpKbgpY3gpLXgpKjgpY3gpKbgpL7gpKTgpY3gpK7gpJUg4KSq4KWN4KSv4KS+4KSV4KWH4KSc4KS54KSw4KWC4KSV4KWLIOCkuOCljeCkpeCkvuCkquCkqOCkvuCksuCkvuCkiCDgpIXgpKjgpYHgpK7gpKTgpL8g4KSm4KS/4KSo4KWN4KSbXG4iCisjfiAiICDgpLXgpL7gpLjgpY3gpKTgpYHgpJXgpLLgpL4gWyFdICAgICAgIOCkl+CksuCkpCDgpLXgpL7gpLjgpY3gpKTgpYHgpJXgpLLgpL4g4KSt4KSP4KSk4KS+IOCkquCkqOCkvyDgpKrgpY3gpK/gpL7gpJXgpYfgpJzgpLngpLDgpYIg4KSq4KWN4KSw4KSV4KWN4KSw4KS/4KSv4KS+IOCkl+CksOCljeCkqOClgeCkueCli+CkuOCljVxuIgorI34gIiAgZGlyLeCkheCkp+Ckv+CksuClh+CkluCkqCDgpJfgpLDgpY3gpKjgpYHgpLngpYvgpLjgpY0gWyFdICAgICAg4KSF4KSw4KWN4KSV4KWLIOCkq+CkvuCkh+CksuCkueCksOClgiDgpLjgpIHgpJcg4KSP4KSJ4KSf4KS+IOCkquCljeCkr+CkvuCkleClh+CknOCkleCliyDgpKHgpL7gpIfgpLDgpYfgpJXgpY3gpJ/gpY3gpLDgpYAg4KSF4KSn4KS/4KSy4KWH4KSW4KSoICIKKyN+ICLgpJfgpLDgpY3gpKjgpYHgpLngpYvgpLjgpY1cbiIKKyN+ICIgIHJlaW5zdHJlcS3gpLngpJ/gpL7gpIngpKjgpYHgpLngpYvgpLjgpY0gWyFdICAg4KS44KWN4KSl4KS+4KSq4KSo4KS+IOCkhuCkteCktuCljeCkr+CklSDgpKrgpLDgpY3gpKjgpYcg4KSq4KWN4KSv4KS+4KSV4KWH4KSc4KS54KSw4KWCIOCkueCkn+CkvuCkieCkqOClgeCkueCli+CkuOCljSBcbiIKKyN+ICIgIOCkhuCkteCktuCljeCkr+CklS3gpLngpJ/gpL7gpIngpKjgpYHgpLngpYvgpLjgpY0gWyFdICAg4KSP4KSJ4KSf4KS+IOCkhuCkteCktuCljeCkr+CklSDgpKrgpY3gpK/gpL7gpJXgpYfgpJwg4KS54KSf4KS+4KSJ4KSo4KWB4KS54KWL4KS44KWNXG4iCisjfiAiXG4iCisjfiAi4KSa4KWH4KSk4KS+4KS14KSo4KWAIC0g4KSa4KS/4KSo4KWN4KS5IFshXSAg4KSy4KSX4KS+4KSP4KSV4KWLIOCkteCkv+CkleCksuCljeCkquCkueCksOClgeCkleCliyDgpKrgpY3gpLDgpK/gpYvgpJfgpLLgpYcg4KSk4KSq4KS+4KSI4KSB4KSV4KWLIOCkuOCljeCkpeCkvuCkquCkqOCkviDgpJfgpK7gpY3gpK3gpYDgpLDgpKTgpL7gpKrgpYLgpLDgpY3gpLXgpJUg4KSo4KS34KWN4KSfICIKKyN+ICLgpJfgpLDgpY3gpKgg4KS44KSV4KWN4KSbIOClpFxuIgorI34gIiBbKl0g4KSa4KS/4KSo4KWN4KS5IOCksuCkl+CkvuCkj+CkleCliyDgpJzgpYvgpKHgpKbgpL7gpLAg4KS14KS/4KSV4KSy4KWN4KSq4KS54KSw4KWCIOCkquClguCksOCljeCkteCkqOCkv+CksOCljeCkp+CkvuCksOCkv+CkpCDgpLjgpJXgpY3gpLfgpK4g4KS54KWB4KSo4KWN4KSb4KSo4KWNIOClpFxuIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgZHBrZy1zcGxpdCB0byBzZWUgaWYgaXQncyBwYXJ0IG9mIGEgbXVsdGlwYXJ0ZXIiCisjfiBtc2dzdHIgIuCkr+CkpuCkvyDgpK/gpLjgpJXgpYsg4KSP4KSJ4KSf4KS+IOCkruCksuCljeCkn+Ckv+CkquCkvuCksOCljeCkn+CksCDgpLngpYsg4KSt4KSo4KWHIGRwa2ctc3BsaXQg4KSV4KS+4KSw4KWN4KSv4KS+4KSo4KWN4KS14KSv4KSoIOCkl+CksOCljeCkqCDgpIXgpLjgpKvgpLIgIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWNsIGRlYnNpZy12ZXJpZnkiCisjfiBtc2dzdHIgImRlYnNpZy3gpLDgpYHgpJzgpYEg4KSX4KSw4KWN4KSo4KWB4KS54KWL4KS44KWNIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgZHBrZy1kZWIgdG8gZXh0cmFjdCBjb250cm9sIGluZm9ybWF0aW9uIgorI34gbXNnc3RyICLgpKjgpL/gpK/gpKjgpY3gpKTgpY3gpLDgpKMg4KS44KWC4KSa4KSo4KS+IOCkneCkv+CkleCljeCkqOCksuCkvuCkiCBkcGtnLWRlYiDgpJXgpL7gpLDgpY3gpK/gpL7gpKjgpY3gpLXgpK/gpKgg4KSX4KSw4KWN4KSoIOCkheCkuOCkq+CksiIKKworI34gbXNnaWQgInVuYWJsZSB0byBleGVjIGRwa2ctZGViIHRvIGdldCBmaWxlc3lzdGVtIGFyY2hpdmUiCisjfiBtc2dzdHIgIuCkq+CkvuCkh+CksuCkquCljeCksOCko+CkvuCksuClgCDgpLjgpJngpY3gpJfgpY3gpLDgpLkg4KSq4KS+4KSJ4KSoIGRwa2ctZGViIOCkleCkvuCksOCljeCkr+CkvuCkqOCljeCkteCkr+CkqCDgpJfgpLDgpY3gpKgg4KSF4KSV4KWN4KS34KSuIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSBkaXNhcHBlYXJpbmcgY29udHJvbCBpbmZvIGZpbGUgYCUuMjUwcyciCisjfiBtc2dzdHIgIuCkheCkpuClg+CktuCljeCkryDgpKjgpL/gpK/gpKjgpY3gpKTgpY3gpLDgpKMg4KS44KWC4KSa4KSo4KS+IOCkq+CkvuCkh+CksiBgJS4yNTBzJyDgpK7gpYfgpJ/gpY3gpKgg4KSF4KSV4KWN4KS34KSuIgorCisjfiBtc2dpZCAiZHBrZzogJXMgbm90IGZvdW5kLlxuIgorI34gbXNnc3RyICJkcGtnOiAlcyDgpKvgpYfgpLLgpL4g4KSq4KSw4KWH4KSoIOClpFxuIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIC4uLi9ERUJJQU4iCisjfiBtc2dzdHIgIi4uLi9ERUJJQU4g4KSu4KS+IOCkoeCkvuCkh+CksOClh+CkleCljeCkn+CksOClgCDgpKrgpLDgpL/gpLXgpLDgpY3gpKTgpKgg4KSX4KSw4KWN4KSoIOCkheCkuOCkq+CksiIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIHRhciAtY2YiCisjfiBtc2dzdHIgIuCkn+CkvuCksCAtY2Yg4KSV4KS+4KSw4KWN4KSv4KS+4KSo4KWN4KS14KSv4KSoIOCkl+CksOCljeCkqCDgpIXgpLjgpKvgpLIiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gbWFrZSB0bXBmaWxlIChjb250cm9sKSIKKyN+IG1zZ3N0ciAidG1wZmlsZSAo4KSo4KS/4KSv4KSo4KWN4KSk4KWN4KSw4KSjKSDgpKzgpKjgpL7gpIngpKgg4KSF4KS44KSr4KSyIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHVubGluayB0bXBmaWxlIChjb250cm9sKSwgJXMiCisjfiBtc2dzdHIgInRtcGZpbGUgKOCkqOCkv+Ckr+CkqOCljeCkpOCljeCksOCkoykg4KSF4KSo4KSy4KS/4KSZ4KWN4KSVIOCkl+CksOCljeCkqCDgpIXgpLjgpKvgpLIsICVzIgorCisjfiBtc2dpZCAiY29udHJvbCIKKyN+IG1zZ3N0ciAi4KSo4KS/4KSv4KSo4KWN4KSk4KWN4KSw4KSjIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHJld2luZCB0bXBmaWxlIChjb250cm9sKSIKKyN+IG1zZ3N0ciAidG1wZmlsZSAo4KSo4KS/4KSv4KSo4KWN4KSk4KWN4KSw4KSjKSDgpLDgpL/gpLXgpL7gpIfgpKjgpY3gpKEg4KSF4KS44KSr4KSyIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGZzdGF0IHRtcGZpbGUgKGNvbnRyb2wpIgorI34gbXNnc3RyICJ0bXBmaWxlICjgpKjgpL/gpK/gpKjgpY3gpKTgpY3gpLDgpKMpIGZzdGF0IOCkl+CksOCljeCkqCDgpIXgpLjgpKvgpLIiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBmaW5kIgorI34gbXNnc3RyICLgpJbgpYvgpJzgpYAg4KSV4KS+4KSw4KWN4KSv4KSo4KWN4KS14KSv4KSoIOCkl+CksOCljeCkqCDgpIXgpLjgpKvgpLIiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBzaCAtYyBtdiBmb28vKiAmYyIKKyN+IG1zZ3N0ciAic2ggLWMgbXYgZm9vLyogJmMg4KSV4KS+4KSw4KWN4KSv4KS+4KSo4KWN4KS14KSv4KSoIOCkl+CksOCljeCkqCDgpIXgpLjgpKvgpLIiCisKKyN+IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSAlLjI1MHMgbGVuZ3RoIGNvbnRhaW5zIG51bGxzIgorI34gbXNnc3RyICLgpKvgpL7gpIfgpLIgYCUuMjUwcycg4KSm4KWB4KS34KS/4KSkIOCkmyAtICUuMjUwcyDgpLLgpK7gpY3gpKzgpL7gpIjgpLLgpYcg4KS24KWB4KSo4KWN4KSvIOCkuOCkruCkvuCkteClh+CktiDgpJfgpLDgpY3gpKbgpJsiCisKKyN+IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBuZWdhdGl2ZSBtZW1iZXIgbGVuZ3RoICV6aSIKKyN+IG1zZ3N0ciAi4KSr4KS+4KSH4KSyIGAlLjI1MHMnIOCkpuClgeCkt+Ckv+CkpCDgpJsgLSDgpKjgpJXgpLDgpL7gpKTgpY3gpK7gpJUg4KS44KSm4KS44KWN4KSvIOCksuCkruCljeCkrOCkvuCkiCAlemkiCisKKyN+IG1zZ2lkICJmYWlsZWQgZ2V0dGluZyB0aGUgY3VycmVudCBmaWxlIHBvc2l0aW9uIgorI34gbXNnc3RyICLgpLngpL7gpLLgpJXgpYsg4KSr4KS+4KSH4KSyIOCkuOCljeCkpeCkvuCkqCDgpKrgpL7gpIngpKgg4KSF4KS44KSr4KSyIgorCisjfiBtc2dpZCAiZmFpbGVkIHNldHRpbmcgdGhlIGN1cnJlbnQgZmlsZSBwb3NpdGlvbiIKKyN+IG1zZ3N0ciAi4KS54KS+4KSy4KSV4KWLIOCkq+CkvuCkh+CksiDgpLjgpY3gpKXgpL7gpKgg4KS44KWH4KSf4KS/4KSZ4KWNIOCkheCkuOCkq+CksiIKKworI34gbXNnaWQgInZlcnNpb24gbnVtYmVyIgorI34gbXNnc3RyICLgpLjgpILgpLjgpY3gpJXgpLDgpKMg4KSo4KSu4KWN4KSs4KSwIgorCisjfiBtc2dpZCAiaGVhZGVyIGluZm8gbWVtYmVyIgorI34gbXNnc3RyICLgpLngpYfgpKHgpLAg4KS44KWC4KSa4KSo4KS+IOCkuOCkpuCkuOCljeCkryIKKworIywgZnV6enkKKyN+fCBtc2dpZCAic2tpcHBlZCBtZW1iZXIgZGF0YSBmcm9tICVzIgorI34gbXNnaWQgInNraXBwZWQgY29udHJvbCBhcmVhIGZyb20gJXMiCisjfiBtc2dzdHIgIiVzIOCkrOCkvuCknyDgpLjgpKbgpLjgpY3gpK8g4KSh4KWH4KSf4KS+IOCkq+CkoeCljeCkleCkv+Ckr+CliyIKKworIywgZnV6enkKKyN+IG1zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHRlbXBvcmFyeSBkaXJlY3RvcnkiCisjfiBtc2dzdHIgIuCkheCkuOCljeCkpeCkvuCkr+ClgCDgpKHgpL7gpIfgpLDgpYfgpJXgpY3gpJ/gpLDgpYAg4KSo4KS+4KSuIOCkrOCkqOCkvuCkieCkqCDgpIXgpLjgpKvgpLIiCisKKyN+IG1zZ2lkICJpbmZvX3NwZXciCisjfiBtc2dzdHIgIuCkuOClguCkmuCkqOCkviDgpKjgpL/gpJXgpL7gpLLgpY3gpKjgpYHgpLngpYvgpLjgpY0iCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgImZhaWxlZCB0byBleGVjIGRwa2ctZGViIHRvIGV4dHJhY3QgY29udHJvbCBpbmZvcm1hdGlvbiIKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBkcGtnLWRlYiB0byBleHRyYWN0IGZpZWxkIHZhbHVlIgorI34gbXNnc3RyICLgpKjgpL/gpK/gpKjgpY3gpKTgpY3gpLDgpKMg4KS44KWC4KSa4KSo4KS+IOCkneCkv+CkleCljeCkqOCksuCkvuCkiCBkcGtnLWRlYiDgpJXgpL7gpLDgpY3gpK/gpL7gpKjgpY3gpLXgpK/gpKgg4KSX4KSw4KWN4KSoIOCkheCkuOCkq+CksiIKKworIywgZnV6enkKKyN+fCBtc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSAlczogJXMiCisjfiBtc2dpZCAidW5hYmxlIHRvIHN0YXQgJXM6ICVzIgorI34gbXNnc3RyICIlcyDgpLjgpL/gpLDgpY3gpJzgpKjgpL4g4KSX4KSw4KWN4KSoIOCkheCkleCljeCkt+CkrjogJXMiCisKKyN+IG1zZ2lkICJzbGF2ZSBuYW1lICVzIGR1cGxpY2F0ZWQiCisjfiBtc2dzdHIgIiAlcyDgpLjgpY3gpLLgpYfgpK0g4KSo4KS+4KSuICDgpKjgpJXgpY3gpJXgpLIg4KSX4KSw4KS/4KSv4KWLIgorCisjfiBtc2dpZCAic2xhdmUgbGluayAlcyBkdXBsaWNhdGVkIgorI34gbXNnc3RyICIlcyDgpLjgpY3gpLLgpYfgpK0g4KSy4KS/4KSZ4KWN4KSVIOCkqOCkleCljeCkleCksiDgpJfgpLDgpL/gpK/gpYsiCisKKyN+IG1zZ2lkICIlZCByZXF1ZXN0ZWQgY29udHJvbCBjb21wb25lbnRzIGFyZSBtaXNzaW5nIgorI34gbXNnc3RyICIlZCDgpIXgpKjgpYHgpLDgpYvgpKcg4KSX4KSw4KS/4KSP4KSV4KWLIOCkqOCkv+Ckr+CkqOCljeCkpOCljeCksOCkoyDgpIXgpLXgpK/gpLXgpLngpLDgpYIg4KS54KSw4KS+4KSH4KSw4KS54KWH4KSV4KS+IOCkm+CkqOCljSIKKworI34gbXNnaWQgImNhdCAoZGF0YSkiCisjfiBtc2dzdHIgIuCkleCljeCkr+CkvuCknyAo4KSh4KWH4KSf4KS+KSIKKworI34gbXNnaWQgImZhaWxlZCB0byBvcGVuIHBpcGUgZGVzY3JpcHRvciBgMScgaW4gcGFzdGUiCisjfiBtc2dzdHIgIifgpJ/gpL7gpLjgpY3gpKjgpYHgpLngpYvgpLgnIOCkruCkviDgpKrgpL7gpIfgpKog4KS14KSw4KWN4KSj4KSo4KSV4KSw4KWN4KSk4KS+IGAxJ+CkluCli+CksuCljeCkqCDgpIXgpLjgpKvgpLIiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gd3JpdGUgdG8gZ3ppcCAtZGMiCisjfiBtc2dzdHIgImd6aXAgLWRjIOCksuClh+CkluCljeCkqCDgpIXgpLjgpKvgpLIiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gY2xvc2UgZ3ppcCAtZGMiCisjfiBtc2dzdHIgImd6aXAgLWRjIOCkrOCkqOCljeCkpiDgpJfgpLDgpY3gpKgg4KSF4KS44KSr4KSyIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHN5c2NhbGwgbHNlZWsgdG8gZmlsZXMgYXJjaGl2ZSBwb3J0aW9uIgorI34gbXNnc3RyICLgpKvgpL7gpIfgpLLgpJXgpYsg4KS44KSZ4KWN4KSX4KWN4KSw4KS5IOCkreCkvuCkl+CkruCkviBzeXNjYWxsIElzZWVrIOCkl+CksOCljeCkqCDgpIXgpLjgpKvgpLIiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gZXhlYyBta3NwbGl0IgorI34gbXNnc3RyICJta3NwbGl0IOCkleCkvuCksOCljeCkr+CkvuCkqOCljeCkteCkr+CkqCDgpJfgpLDgpY3gpKgg4KSF4KSV4KWN4KS34KSuIgorCisjfiBtc2dpZCAiIgorI34gIlxuIgorI34gIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLiIKKyN+IG1zZ3N0ciAiIgorI34gIlxuIgorI34gIuCkquCljeCksOCkpOCkv+CksuCkv+CkquCkvyDgpIXgpKfgpL/gpJXgpL7gpLAgKOCkuOClgCkg4KWn4KWv4KWv4KWrIOCkh+Ckr+CkvuCkqCDgpJzgpY3gpK/gpL7gpJXgpY3gpLjgpKhcbiIKKyN+ICLgpKrgpY3gpLDgpKTgpL/gpLLgpL/gpKrgpL8g4KSF4KSn4KS/4KSV4KS+4KSwICjgpLjgpYApIOClqOClpuClpuClpizgpajgpabgpabgpacg4KS14KS/4KSw4KWN4KSa4KS+4KSw4KWN4KShIOCkhuCkleCksOCljeCkruCljeCkr+CkvuCkqCIKKworI34gbXNnaWQgInR3byBjb21tYW5kcyBzcGVjaWZpZWQ6ICVzIGFuZCAtLSVzIgorI34gbXNnc3RyICLgpKjgpL/gpLDgpY3gpKbgpL/gpLfgpY3gpJ8g4KSm4KWB4KSH4KS14KSf4KS+IOCkhuCkpuClh+CktjogJXMg4KSwIC0tJXMiCisKKyN+IG1zZ2lkICItLSVzIG5lZWRzIGEgZGl2ZXJ0LXRvIGFyZ3VtZW50IgorI34gbXNnc3RyICItLSVzIOCksuCkvuCkiCDgpKTgpLDgpY3gpJXgpK7gpL4g4KSr4KWH4KSw4KWN4KSo4KWHIOCkhuCkteCktuCljeCkr+CklSDgpKrgpLDgpY3gpKbgpJsiCisKKyN+IG1zZ2lkICItLSVzIG5lZWRzIGEgPHBhY2thZ2U+IGFyZ3VtZW50IgorI34gbXNnc3RyICItLSVzIOCksuCkvuCkiCA8cGFja2FnZT4g4KSG4KS14KS24KWN4KSv4KSVIOCkquCksOCljeCkpuCkmyIKKworI34gbXNnaWQgImNhbm5vdCBvcGVuIGRpdmVyc2lvbnM6ICVzIgorI34gbXNnc3RyICJkaXZlcnNpb25zIOCkluCli+CksuCljeCkqCDgpIXgpLjgpKvgpLI6ICVzIgorCisjfiBtc2dpZCAibWlzc2luZyBhbHRuYW1lIgorI34gbXNnc3RyICLgpLngpLDgpL7gpIfgpLDgpLngpYfgpJXgpYsg4KSF4KSy4KWN4KSf4KSo4KS+4KSuIgorCisjfiBtc2dpZCAiaW50ZXJuYWwgZXJyb3IgLSBiYWQgbW9kZSBgJXMnIgorI34gbXNnc3RyICLgpIbgpKjgpY3gpKTgpLDgpL/gpJUg4KSk4KWN4KSw4KWB4KSf4KS/OiDgpJbgpLDgpL7gpKwg4KSu4KWL4KShOiBgJXMnIgorCisjfiBtc2dpZCAiY2Fubm90IHN0YXQgb2xkIG5hbWUgYCVzJzogJXMiCisjfiBtc2dzdHIgIuCkquClgeCksOCkvuCkqOCliyDgpKjgpL7gpK4gYCVzJyDgpKTgpYvgpJXgpY3gpKgg4KS44KSV4KS/4KSm4KWI4KSoOiAlcyIKKworI34gbXNnaWQgInJlbmFtZTogcmVuYW1lIGAlcycgdG8gYCVzJzogJXMiCisjfiBtc2dzdHIgIuCkquClgeCkqDog4KSo4KS+4KSu4KSV4KSw4KSjOiBgJXMnIOCksuCkvuCkiCBgJXMnIOCkruCkviDgpKrgpYHgpKg6IOCkqOCkvuCkruCkleCksOCkoyDgpJfgpLDgpY3gpKjgpYHgpLngpYvgpLjgpY06ICVzIgorCisjfiBtc2dpZCAiY3JlYXRlIGRpdmVyc2lvbnMtbmV3OiAlcyIKKyN+IG1zZ3N0ciAi4KSh4KS+4KSH4KSt4KSw4KWN4KS44KSoIOCkuOCkv+CksOCljeCknOCkqOCkviDgpJfgpLDgpY3gpKjgpYHgpLngpYvgpLjgpY0t4KSo4KSv4KS+4KSBOiAlcyIKKworI34gbXNnaWQgIndyaXRlIGRpdmVyc2lvbnMtbmV3OiAlcyIKKyN+IG1zZ3N0ciAi4KSh4KS+4KSH4KSt4KSw4KWN4KS44KSoIOCksuClh+CkluCljeCkqOClgeCkueCli+CkuOCljS3gpKjgpK/gpL7gpIE6ICVzIgorCisjfiBtc2dpZCAiY2xvc2UgZGl2ZXJzaW9ucy1uZXc6ICVzIgorI34gbXNnc3RyICLgpKHgpL7gpIfgpK3gpLDgpY3gpLjgpKgg4KSs4KSo4KWN4KSmIOCkl+CksOCljeCkqOClgeCkueCli+CkuOCljS3gpKjgpK/gpL7gpIE6ICVzIgorCisjfiBtc2dpZCAiY3JlYXRlIG5ldyBkaXZlcnNpb25zLW9sZDogJXMiCisjfiBtc2dzdHIgIuCkqOCkr+CkvuCkgSDgpKHgpL7gpIfgpK3gpLDgpY3gpLjgpKgg4KS44KS/4KSw4KWN4KSc4KSo4KS+IOCkl+CksOCljeCkqOClgeCkueCli+CkuOCljS3gpKrgpYHgpLDgpL7gpKjgpYs6ICVzIgorCisjfiBtc2dpZCAiaW5zdGFsbCBuZXcgZGl2ZXJzaW9uczogJXMiCisjfiBtc2dzdHIgIuCkqOCkr+CkvuCkgSDgpKHgpL7gpIfgpK3gpLDgpY3gpLjgpKgg4KS44KWN4KSl4KS+4KSq4KSo4KS+IOCkl+CksOCljeCkqOClgeCkueCli+CkuOCljTogJXMiCisKKyN+IG1zZ2lkICJpbnRlcm5hbCBlcnJvcjogJXMgY29ycnVwdDogJXMiCisjfiBtc2dzdHIgIuCkhuCkqOCljeCkpOCksOCkv+CklSDgpKTgpY3gpLDgpYHgpJ/gpL86ICVzIOCkpuClgeCkt+Ckv+CkpDogJXMiCisKKyN+IG1zZ2lkICJkcGtnLWRlYiAtIGVycm9yOiAlcyAoYCVzJykgZG9lc24ndCBjb250YWluIGFueSBkaWdpdHNcbiIKKyN+IG1zZ3N0ciAiZHBrZy1kZWIgLSDgpKTgpY3gpLDgpYHgpJ/gpL86ICVzIChgJXMnKSDgpLLgpYcg4KSV4KWB4KSo4KWIIOCkquCkqOCkvyDgpIXgpJngpY3gpJXgpLngpLDgpYIg4KS44KSu4KS+4KS54KS/4KSkIOCkl+CksOCljeCkpuCliOCkqFxuIgorCisjLCBmdXp6eQorI34gbXNnaWQgIkRlYmlhbiByZXZpc2lvbiIKKyN+IG1zZ3N0ciAi4KSh4KWH4KSs4KS/4KSv4KSoICVzIOCkuOCkguCkuOCljeCkleCksOCkoyAlcyBcbiIKKworI34gbXNnaWQgIiVkIGVycm9ycyBpbiBjb250cm9sIGZpbGUiCisjfiBtc2dzdHIgIiVkIOCkqOCkv+Ckr+CkqOCljeCkpOCljeCksOCkoyDgpKvgpL7gpIfgpLLgpK7gpL4g4KSk4KWN4KSw4KWB4KSf4KS/4KS54KSw4KWCIgorCisjLCBmdXp6eQorI358IG1zZ2lkICJ1bmFibGUgdG8gcmVhZCAlczogJXMiCisjfiBtc2dpZCAiY2FuJ3QgcmVhZGRpciAlczogJXMiCisjfiBtc2dzdHIgIiVzIOCkquCkouCljeCkqCDgpIXgpJXgpY3gpLfgpK46ICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIGluIGJ1ZmZlcl93cml0ZShmZCkgKCVpLCByZXQ9JWxpKTogJXMiCisjfiBtc2dzdHIgIuCkrOCkq+CksCDgpLLgpYfgpJbgpL7gpIjgpK7gpL4g4KSF4KS44KSr4KSy4KSk4KS+KGZkKSAoJWksIHJldD0lbGkpOiAlcyIKKworI34gbXNnaWQgImVvZiBpbiBidWZmZXJfd3JpdGUoc3RyZWFtKTogJXMiCisjfiBtc2dzdHIgIuCkrOCkq+CksCDgpLLgpYfgpJbgpL7gpIjgpK7gpL4gZW9mKHN0cmVhbSk6ICVzIgorCisjfiBtc2dpZCAiZXJyb3IgaW4gYnVmZmVyX3dyaXRlKHN0cmVhbSk6ICVzIgorI34gbXNnc3RyICLgpKzgpKvgpLAg4KSy4KWH4KSW4KS+4KSI4KSu4KS+IOCkpOCljeCksOClgeCkn+CkvyjgpKrgpY3gpLDgpLXgpL7gpLkpOiAlcyIKKworI34gbXNnaWQgImZhaWxlZCBpbiBidWZmZXJfcmVhZChmZCk6ICVzIgorI34gbXNnc3RyICLgpKzgpKvgpLAg4KSq4KSi4KS+4KSI4KSu4KS+IOCkheCkuOCkq+CksihmZCk6ICVzIgorCisjfiBtc2dpZCAiZXJyb3IgaW4gYnVmZmVyX3JlYWQoc3RyZWFtKTogJXMiCisjfiBtc2dzdHIgIuCkrOCkq+CksCDgpKrgpKLgpL7gpIjgpK7gpL4g4KSk4KWN4KSw4KWB4KSf4KS/KOCkquCljeCksOCkteCkvuCkuSk6ICVzIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiVzIHJldHVybmVkIGVycm9yIGV4aXQgc3RhdHVzICVkIgorI34gbXNnc3RyICLgpIngpKrgpKrgpY3gpLDgpJXgpY3gpLDgpL/gpK/gpL7gpLngpLDgpYIgJXMg4KSr4KS/4KSw4KWN4KSk4KS+IOCkpOCljeCksOClgeCkn+CkvyDgpKjgpL/gpJXgpL7gpLgg4KS44KWN4KSl4KS/4KSk4KS/ICVkIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiVzIGtpbGxlZCBieSBzaWduYWwgKCVzKSVzIgorI34gbXNnc3RyICLgpIngpKrgpKrgpY3gpLDgpJXgpY3gpLDgpL/gpK/gpL7gpLngpLDgpYIgJXMg4KS44KSC4KSV4KWH4KSk4KSm4KWN4KSn4KS+4KSw4KS+IOCkruCkvuCksOCkv+Ckr+CliyAoJXMpJXMiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiIgorI34gIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSB2ZXJzaW9uIDIgb3JcbiIKKyN+ICJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIlxuIgorI34gIuCkr+CliyDgpKjgpL/gpLbgpYHgpLLgpY3gpJUg4KS44KSr4KWN4KSf4KS14KWH4KSv4KSwIOCkueClizsgIOCkquCljeCksOCkpOCkv+CksuCkv+CkquCkvyDgpLjgpLDgpY3gpKTgpJXgpL4g4KSy4KS+4KSX4KS/IOCknOClgCDgpI/gpKgg4KSv4KWCIOCkuOCkvuCkp+CkvuCksOCkoyDgpLjgpL7gpLDgpY3gpLXgpJzgpKjgpL/gpJUgIgorI34gIuCkh+CknOCkvuCknOCkpOCkquCkpOCljeCksOCkleCliyDgpLjgpILgpLjgpY3gpJXgpLDgpKMg4KWoIOCkteCkvlxuIgorI34gIuCkquCkm+Ckv+CksuCljeCksuCliyDgpLngpYfgpLDgpY3gpKjgpYHgpLngpYvgpLjgpY0g4KWkIOCkleClgeCkqOCliCDgpKrgpKjgpL8g4KS14KS+4KSw4KWH4KSo4KWN4KSf4KWAIOCkm+CliOCkqCDgpaRcbiIKKworI34gbXNnaWQgIiIKKyN+ICJcbiIKKyN+ICJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgdmVyc2lvbiAyIG9yXG4iCisjfiAibGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJcbiIKKyN+ICLgpK/gpYsg4KSo4KS/4KS24KWB4KSy4KWN4KSVIOCkuOCkq+CljeCkn+CkteClh+Ckr+CksCDgpLngpYs7ICDgpKrgpY3gpLDgpKTgpL/gpLLgpL/gpKrgpL8g4KS44KSw4KWN4KSk4KSV4KS+IOCksuCkvuCkl+CkvyDgpJzgpYAg4KSP4KSoIOCkr+ClgiDgpLjgpL7gpKfgpL7gpLDgpKMg4KS44KS+4KSw4KWN4KS14KSc4KSo4KS/4KSVICIKKyN+ICLgpIfgpJzgpL7gpJzgpKTgpKrgpKTgpY3gpLDgpJXgpYsg4KS44KSC4KS44KWN4KSV4KSw4KSjIOClqCDgpLXgpL5cbiIKKyN+ICLgpKrgpJvgpL/gpLLgpY3gpLLgpYsg4KS54KWH4KSw4KWN4KSo4KWB4KS54KWL4KS44KWNIOClpCDgpJXgpYHgpKjgpYgg4KSq4KSo4KS/IOCkteCkvuCksOClh+CkqOCljeCkn+ClgCDgpJvgpYjgpKgg4KWkXG4iCisKKyN+IG1zZ2lkICIlczogZmFpbGVkIHRvIGV4ZWMgJyVzICVzJyIKKyN+IG1zZ3N0ciAiJXM6IOCksuClhyAnJXMgJXMnIOCkleCkvuCksOCljeCkr+CkvuCkqOCljeCkteCkr+CkqCDgpJfgpLDgpY3gpKgg4KSF4KS44KSr4KSyIgorCisjfiBtc2dpZCAiJXM6IGludGVybmFsIGd6aXAgZXJyb3I6IHJlYWQ6IGAlcyciCisjfiBtc2dzdHIgIiVzOiDgpIbgpKjgpY3gpKTgpLDgpL/gpJUgZ3ppcCDgpKTgpY3gpLDgpYHgpJ/gpL86IOCkquCkouCljeCkqOClgeCkueCli+CkuOCljTogYCVzJyIKKworI34gbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIGVycm9yOiB3cml0ZTogYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IOCkhuCkqOCljeCkpOCksOCkv+CklSBnemlwIOCkpOCljeCksOClgeCkn+Ckvzog4KSy4KWH4KSW4KWN4KSo4KWB4KS54KWL4KS44KWNOiBgJXMnIgorCisjfiBtc2dpZCAiJXM6IGludGVybmFsIGd6aXAgZXJyb3I6IHJlYWQoJWkpICE9IHdyaXRlKCVpKSIKKyN+IG1zZ3N0ciAiJXM6IOCkhuCkqOCljeCkpOCksOCkv+CklSBnemlwIOCkpOCljeCksOClgeCkn+Ckvzog4KSq4KSi4KWN4KSo4KWB4KS54KWL4KS44KWNKCVpKSAhPSDgpLLgpYfgpJbgpY3gpKjgpYHgpLngpYvgpLjgpY0oJWkpIgorCisjfiBtc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIGVycm9yOiByZWFkOiBgJXMnIgorI34gbXNnc3RyICIlczog4KSG4KSo4KWN4KSk4KSw4KS/4KSVIGJ6aXAyIOCkpOCljeCksOClgeCkn+Ckvzog4KSq4KSi4KWN4KSo4KWB4KS54KWL4KS44KWNOiBgJXMnIgorCisjfiBtc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIGVycm9yOiB3cml0ZTogYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IOCkhuCkqOCljeCkpOCksOCkv+CklSBiemlwMiDgpKTgpY3gpLDgpYHgpJ/gpL86IOCksuClh+CkluCljeCkqOClgeCkueCli+CkuOCljTogYCVzJyIKKworI34gbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiBlcnJvcjogcmVhZCglaSkgIT0gd3JpdGUoJWkpIgorI34gbXNnc3RyICIlczog4KSG4KSo4KWN4KSk4KSw4KS/4KSVIGJ6aXAyIOCkpOCljeCksOClgeCkn+Ckvzog4KSq4KSi4KWN4KSo4KWB4KS54KWL4KS44KWNKCVpKSAhPSDgpLLgpYfgpJbgpY3gpKjgpYHgpLngpYvgpLjgpY0oJWkpIgorCisjfiBtc2dpZCAiRG9uJ3QgZm9yZ2V0IHRvIGZvcmVncm91bmQgKGBmZycpIHRoaXMgcHJvY2VzcyB3aGVuIHlvdSdyZSBkb25lICFcbiIKKyN+IG1zZ3N0ciAi4KSc4KSsIOCkpOCkquCkvuCkiOCkgeCksuClhyDgpJfgpLDgpY3gpKjgpYHgpLngpYHgpKjgpY3gpJsg4KSk4KSsIOCkuOCliyDgpKrgpY3gpLDgpJXgpY3gpLDgpL/gpK/gpL4g4KSF4KSX4KWN4KSw4KSt4KWC4KSu4KS/IChgZmcnKSDgpJfgpLDgpY3gpKgg4KSo4KS14KS/4KSw4KWN4KS44KSo4KWB4KS54KWL4KS44KWNICFcbiIKKworI34gbXNnaWQgIiIKKyN+ICJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAyIG9yXG4iCisjfiAibGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuXG4iCisjfiAiU2VlICVzIC0tbGljZW5zZSBmb3IgY29weXJpZ2h0IGFuZCBsaWNlbnNlIGRldGFpbHMuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICLgpK/gpYsg4KSo4KS/4KS24KWB4KSy4KWN4KSVIOCkuOCkq+CljeCkn+CkteClh+Ckr+CksCDgpLngpYs7IEdOVSDgpLjgpL7gpKfgpL7gpLDgpKMg4KS44KS+4KSw4KWN4KSs4KSc4KSo4KS/4KSVIOCkh+CknOCkvuCknOCkpOCkquCkpOCljeCksOCkleCliyDgpLjgpILgpLjgpY3gpJXgpLDgpKMg4KWoIOCkteCkvlxuIgorI34gIiDgpKrgpJvgpL/gpLLgpY3gpLLgpYsg4KSq4KWN4KSw4KSk4KS/4KSy4KS/4KSq4KS/IOCkl+CksOCljeCkqOCkleCliyDgpLjgpLDgpY3gpKTgpLngpLDgpYIg4KS54KWH4KSw4KWN4KSo4KWB4KS54KWL4KS44KWNIOClpCDgpKTgpY3gpK/gpLngpL7gpIEg4KSV4KWB4KSo4KWIIOCkquCkqOCkvyDgpLXgpL7gpLDgpYfgpKjgpY3gpJ/gpYAg4KSb4KWI4KSoIOClpFxuIgorI34gIuCkquCljeCksOCkpOCkv+CksuCkv+CkquCkvyDgpIXgpKfgpL/gpJXgpL7gpLAg4KSwIOCkh+CknOCkvuCknOCkpOCkquCkpOCljeCksCDgpLXgpL/gpLXgpLDgpKPgpJXgpL4g4KSy4KS+4KSX4KS/ICVzIC0t4KSH4KSc4KS+4KSc4KSk4KSq4KSk4KWN4KSwIOCkueClh+CksOCljeCkqOClgeCkueCli+CkuOCljSDgpaRcbiIKKworI34gbXNnaWQgInVuYWJsZSB0byBnZXQgdW5pcXVlIGZpbGVuYW1lIGZvciBjb250cm9sIGluZm8iCisjfiBtc2dzdHIgIuCkqOCkv+Ckr+CkqOCljeCkpOCljeCksOCkoyDgpLjgpYLgpJrgpKjgpL7gpJXgpL4g4KSy4KS+4KSX4KS/IOCkheCkpuCljeCkp+Ckv+CkpOCkv+CkryDgpKvgpL7gpIfgpLLgpKjgpL7gpK4g4KSq4KS+4KSJ4KSoIOCkheCkleCljeCkt+CkriIKKworI34gbXNnaWQgIkRlYmlhbiBgJXMnIHBhY2thZ2UgbWFuYWdlbWVudCBwcm9ncmFtIHF1ZXJ5IHRvb2xcbiIKKyN+IG1zZ3N0ciAi4KSh4KWH4KSs4KS/4KSv4KSoIGAlcycg4KSq4KWN4KSv4KS+4KSV4KWH4KScIOCkteCljeCkr+CkteCkuOCljeCkpeCkvuCkquCkqCDgpJXgpL7gpLDgpY3gpK/gpJXgpY3gpLDgpK4g4KSq4KWN4KSw4KS24KWN4KSoIOCkieCkquCkleCksOCko1xuIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IHF1ZXJ5aW5nIHBhY2thZ2VzO1xuIgorI34gIlVzZSAtLWxpY2Vuc2UgZm9yIGNvcHlyaWdodCBsaWNlbnNlIGFuZCBsYWNrIG9mIHdhcnJhbnR5IChHTlUgR1BMKS4iCisjfiBtc2dzdHIgIiIKKyN+ICLgpKrgpY3gpLDgpK/gpYvgpJcg4KSX4KSw4KWN4KSo4KWB4KS54KWL4KS44KWNIC0taGVscCBmb3IgaGVscCBhYm91dCBxdWVyeWluZyBwYWNrYWdlcztcbiIKKyN+ICLgpKrgpY3gpLDgpK/gpYvgpJcg4KSX4KSw4KWN4KSo4KWB4KS54KWL4KS44KWNIC0tIChHTlUgR1BMKSDgpJXgpYsg4KS14KS+4KSw4KWH4KSo4KWN4KSf4KWA4KSV4KWLIOCkheCkreCkvuCkteCkruCkviDgpLAg4KSq4KWN4KSw4KSk4KS/4KSy4KS/4KSq4KS/IOCkheCkp+Ckv+CkleCkvuCksCDgpIfgpJzgpL7gpJzgpKTgpKrgpKTgpY3gpLDgpJXgpL4gIgorI34gIuCksuCkvuCkl+CkvyDgpIfgpJzgpL7gpJzgpKTgpKrgpKTgpY3gpLAg4KWkXG4iCisjfiAiXG4iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gY2hvd24gJXM6ICVzIgorI34gbXNnc3RyICLgpKjgpL/gpK7gpY3gpKggKOCkheCkqOClgeCkruCkpOCkvyDgpKrgpLDgpL/gpLXgpLDgpY3gpKTgpKgg4KSX4KSw4KWN4KSoIOCkheCkuOCkq+CksikgY2hvd24gJXM6ICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGNobW9kICVzOiAlcyIKKyN+IG1zZ3N0ciAiY2htb2Qg4KSX4KSw4KWN4KSoIOCkheCkuOCkq+CksiAlczogJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZm9yayBmb3IgY2xlYW51cCIKKyN+IG1zZ3N0ciAi4KSW4KS+4KSy4KWAIOCkl+CksOCljeCkqOCkleCkviDgpLLgpL7gpJfgpL8g4KSr4KWN4KSw4KWL4KSVIOCkl+CksOCljeCkqCDgpIXgpLjgpKvgpLIiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gd2FpdCBmb3Igcm0gY2xlYW51cCIKKyN+IG1zZ3N0ciAicm0g4KSW4KS+4KSy4KS/IOCkl+CksOCljeCkqOCkleCkviDgpLLgpL7gpJfgpL8g4KSq4KSw4KWN4KSW4KSoIOCkheCkuOCkq+CksiIKKworI34gbXNnaWQgInJtIGNsZWFudXAgZmFpbGVkLCBjb2RlICVkXG4iCisjfiBtc2dzdHIgInJtIOCkluCkvuCksuClgCDgpJfgpLDgpY3gpKgg4KSF4KS44KSr4KSyLCDgpJXgpYvgpKEgJWRcbiIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIHJtIC1yZiIKKyN+IG1zZ3N0ciAicm0gLXJmIOCkleCkvuCksOCljeCkr+CkvuCkqOCljeCkteCkr+CkqCDgpJfgpLDgpY3gpKgg4KSF4KS44KSr4KSyIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHJlYWQgYGNvbnRyb2wnIChpbiBgJS4yNTVzJykiCisjfiBtc2dzdHIgIuCkqOCkv+Ckr+CkqOCljeCkpOCljeCksOCkoycgKGluIGAlLjI1NXMnKSDgpKrgpKLgpY3gpKgg4KSF4KS44KSr4KSyIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHNlZWsgYmFjayIKKyN+IG1zZ3N0ciAi4KSq4KSb4KS+4KSh4KS/IOCkluCli+CknOCljeCkqCDgpIXgpJXgpY3gpLfgpK4iCisKKyN+IG1zZ2lkICJ1bmtub3duIGRhdGEgdHlwZSBgJWknIGluIGJ1ZmZlcl93cml0ZVxuIgorI34gbXNnc3RyICLgpKzgpKvgpLAg4KSy4KWH4KSW4KS+4KSI4KSu4KS+IOCkheCknOCljeCknuCkvuCkpCDgpKHgpYfgpJ/gpL4g4KSq4KWN4KSw4KSV4KS+4KSwYCVpJyBcbiIKKworI34gbXNnaWQgInVua25vd24gZGF0YSB0eXBlIGAlaScgaW4gYnVmZmVyX3JlYWRcbiIKKyN+IG1zZ3N0ciAi4KSs4KSr4KSwIOCkquCkouCkvuCkiOCkruCkviBgJWknIOCkheCknOCljeCknuCkvuCkpCDgpKHgpYfgpJ/gpL4g4KSq4KWN4KSw4KSV4KS+4KSwIFxuIgorCisjfiBtc2dpZCAid2FpdCBmb3Igc2hlbGwgZmFpbGVkIgorI34gbXNnc3RyICLgpJXgpJXgpY3gpLfgpJXgpL4g4KSy4KS+4KSX4KS/IOCkquCljeCksOCkpOCkv+CkleCljeCkt+CkviDgpIXgpLjgpKvgpLIiCisKKyN+IG1zZ2lkICJyZWFkIGVycm9yIGluIGRpdmVyc2lvbnMgW2ldIgorI34gbXNnc3RyICJkaXZlcnNpb25zIFtpXSDgpK7gpL4g4KSk4KWN4KSw4KWB4KSf4KS/IOCkquCkouCljeCkqOClgeCkueCli+CkuOCljSIKKworI34gbXNnaWQgInVubGluayIKKyN+IG1zZ3N0ciAi4KSy4KS/4KSZ4KWN4KSVIOCkrOCkv+CkmuCljeCkm+Clh+CkpiDgpJfgpLDgpY3gpKjgpYHgpLngpYvgpLjgpY0iCisKKyN+IG1zZ2lkICJjaG1vZCIKKyN+IG1zZ3N0ciAiY2htb2QiCisKKyN+IG1zZ2lkICJkZWxldGUiCisjfiBtc2dzdHIgIuCkruClh+Ckn+CljeCkqOClgeCkueCli+CkuOCljSIKKworIywgZnV6enkKKyN+IG1zZ2lkICJmYWlsZWQgdG8gJXMgJyUuMjU1cyciCisjfiBtc2dzdHIgIiAlcyBgJSUuMjU1cyfgpK7gpL4g4KSF4KS44KSr4KSyIgorCisjfiBtc2dpZCAid2FpdCBmb3IgZHBrZy1zcGxpdCBmYWlsZWQiCisjfiBtc2dzdHIgImRwa2ctc3BsaXQg4KSq4KSw4KWN4KSW4KSo4KWH4KSV4KS+IOCksuCkvuCkl+CkvyDgpIXgpLjgpKvgpLIiCisKKyN+IG1zZ2lkICJjYW5ub3QgcmVtb3ZlIGZpbGUgYCUuMjUwcyciCisjfiBtc2dzdHIgIuCkq+CkvuCkh+CksiBgJS4yNTBzJyDgpLngpJ/gpL7gpIngpKgg4KS44KSV4KWN4KSm4KWI4KSoIgorCisjfiBtc2dpZCAiIgorI34gIlxuIgorI34gIkNvcHlyaWdodCAoQykgMjAwMCBXaWNoZXJ0IEFra2VybWFuLiIKKyN+IG1zZ3N0ciAiIgorI34gIlxuIgorI34gIuCkquCljeCksOCkpOCkv+CksuCkv+CkquCkvyDgpIXgpKfgpL/gpJXgpL7gpLAgKOCkuOClgCkg4KWo4KWm4KWm4KWmIOCkteCkv+CkmuCksOCljeCknyDgpIbgpJXgpLDgpK7gpY3gpK/gpL7gpKgiCisKKyN+IG1zZ2lkICJubyBtb2RlIHNwZWNpZmllZCIKKyN+IG1zZ3N0ciAi4KSu4KWL4KShIOCkqOCkv+CksOCljeCkpuCkv+Ckt+CljeCknyDgpJvgpYjgpKgiCisKKyN+IG1zZ2lkICJpbGxlZ2FsIHVzZXIgJXMiCisjfiBtc2dzdHIgIuCkheCkteCliOCkp+CkvuCkqOCkv+CklSDgpKrgpY3gpLDgpK/gpYvgpJfgpJXgpLDgpY3gpKTgpL4gJXMiCisKKyN+IG1zZ2lkICJub24tZXhpc3RpbmcgdXNlciAlcyIKKyN+IG1zZ3N0ciAi4KSF4KS14KS44KWN4KSl4KS/4KSkIOCkqOCksOCkueClh+CkleCliyDgpKrgpY3gpLDgpK/gpYvgpJfgpJXgpLDgpY3gpKTgpL4gJXMiCisKKyN+IG1zZ2lkICJpbGxlZ2FsIGdyb3VwICVzIgorI34gbXNnc3RyICLgpIXgpLXgpYjgpKfgpL7gpKjgpL/gpJUg4KS44KSu4KWC4KS5ICVzIgorCisjfiBtc2dpZCAibm9uLWV4aXN0aW5nIGdyb3VwICVzIgorI34gbXNnc3RyICLgpIXgpLXgpLjgpY3gpKXgpL/gpKQg4KSo4KSw4KS54KWH4KSV4KWLIOCkuOCkruClguCkuSAlcyIKKworI34gbXNnaWQgImlsbGVnYWwgbW9kZSAlcyIKKyN+IG1zZ3N0ciAi4KSF4KS14KWI4KSn4KS+4KSo4KS/4KSVIOCkruCli+CkoSAlcyIKKworI34gbXNnaWQgImFib3J0aW5nIgorI34gbXNnc3RyICLgpKrgpLDgpL/gpKTgpY3gpK/gpL7gpJcg4KSX4KSw4KWN4KSm4KWI4KSbIgorCisjfiBtc2dpZCAiY2Fubm90IG9wZW4gc3RhdG92ZXJyaWRlOiAlcyIKKyN+IG1zZ3N0ciAic3RhdG92ZXJyaWRlIOCkluCli+CksuCljeCkqCDgpIXgpLjgpKvgpLI6ICVzIgorCisjfiBtc2dpZCAiTXVsdGlwbGUgb3ZlcnJpZGVzIGZvciBcIiVzXCIsIGFib3J0aW5nIgorI34gbXNnc3RyICJcIiVzXCIg4KSV4KS+IOCksuCkvuCkl+CkvyDgpKzgpLngpYHgpLXgpL/gpKcg4KSF4KSn4KS/4KSy4KWH4KSW4KSoLCDgpKrgpLDgpL/gpKTgpY3gpK/gpL7gpJcg4KSX4KSw4KWN4KSm4KWI4KSbIgorCisjfiBtc2dpZCAiZmFpbGVkIHdyaXRlIGR1cmluZyBoYXNocmVwb3J0IgorI34gbXNnc3RyICLgpLngpY3gpK/gpL7gpLjgpLDgpL/gpKrgpYvgpJ8g4KSs4KSW4KSkIOCksuClh+CkluCljeCkqCDgpIXgpLjgpKvgpLIiCisKKyN+IG1zZ2lkICJjb25maWd1cmF0aW9uIGVycm9yOiB1bmtub3duIG9wdGlvbiAlcyIKKyN+IG1zZ3N0ciAi4KSV4KSo4KWN4KSr4KS/4KSX4KSw4KWH4KS44KSoIOCkpOCljeCksOClgeCkn+Ckvzog4KSF4KSc4KWN4KSe4KS+4KSkIOCkteCkv+CkleCksuCljeCkqiAlcyIKKworI34gbXNnaWQgImNvbmZpZ3VyYXRpb24gZXJyb3I6ICVzIGRvZXMgbm90IHRha2UgYSB2YWx1ZSIKKyN+IG1zZ3N0ciAi4KSV4KSo4KWN4KSr4KS/4KSX4KSw4KWH4KS44KSoIOCkpOCljeCksOClgeCkn+CkvzogJXMg4KSy4KWHIOCkruCkvuCkqCDgpLLgpL/gpKbgpYjgpKgiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAidW5leGVjcHRlZCBlbmQgb2YgbGluZSBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKKyN+IG1zZ3N0ciAi4KSy4KS+4KSH4KSoICVkIOCkleCliyDgpKrgpY3gpK/gpL7gpJXgpYfgpJzgpK7gpL4g4KSF4KSq4KWN4KSw4KSk4KWN4KSv4KS+4KS44KS/4KSkIOCksuCkvuCkh+CkqOCkleCliyDgpLjgpK7gpL7gpKrgpY3gpKTgpYAiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiLS1jaGVjay1zdXBwb3J0ZWQgdGFrZXMgbm8gYXJndW1lbnRzIgorI34gbXNnc3RyICItLSVzIOCksuClhyDgpJXgpYHgpKjgpYgg4KSk4KSw4KWN4KSV4KS54KSw4KWCIOCksuCkv+CkpuCliOCkqCIKKworI34gbXNnaWQgIi0tZm9yZ2V0LW9sZC11bmF2YWlsIHRha2VzIG5vIGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiLS1mb3JnZXQtb2xkLXVuYXZhaWwg4KSy4KWHIOCkleClgeCkqOCliCDgpKTgpLDgpY3gpJXgpLngpLDgpYIg4KSy4KS/4KSm4KWI4KSoIgorCisjfiBtc2dpZCAiIgorI34gIlxuIgorI34gIkNvcHlyaWdodCAoQykgMTk5NCwxOTk1IElhbiBKYWNrc29uLiIKKyN+IG1zZ3N0ciAiIgorI34gIlxuIgorI34gIuCkquCljeCksOCkpOCkv+CksuCkv+CkquClgCDgpIXgpKfgpL/gpJXgpL7gpLAgKOCkuOClgCkg4KWn4KWv4KWv4KWqLOClp+Clr+Clr+ClqyDgpIfgpK/gpL7gpKgg4KSc4KWN4KSv4KS+4KSV4KWN4KS44KSoICIKKworI34gbXNnaWQgIiIKKyN+ICJVc2FnZTogJXMgWzxvcHRpb25zPiAuLi5dIFstLV0gPGZpbGVuYW1lPlxuIgorI34gIlxuIgorI34gIk9wdGlvbnM6XG4iCisjfiAiICAtLXNlY3Rpb24gPHJlZ2V4cD4gPHRpdGxlPlxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHB1dCB0aGUgbmV3IGVudHJ5IGluIHRoZSA8cmVnZXg+IG1hdGNoZWQgIgorI34gInNlY3Rpb25cbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICBvciBjcmVhdGUgYSBuZXcgb25lIHdpdGggPHRpdGxlPiBpZiBub24tIgorI34gImV4aXN0ZW50LlxuIgorI34gIiAgLS1tZW51ZW50cnk9PHRleHQ+ICAgICAgIHNldCB0aGUgbWVudSBlbnRyeS5cbiIKKyN+ICIgIC0tZGVzY3JpcHRpb249PHRleHQ+ICAgICBzZXQgdGhlIGRlc2NyaXB0aW9uIHRvIGJlIHVzZWQgaW4gdGhlIG1lbnUgIgorI34gImVudHJ5LlxuIgorI34gIiAgLS1pbmZvLWZpbGU9PHBhdGg+ICAgICAgIHNwZWNpZnkgaW5mbyBmaWxlIHRvIGluc3RhbGwgaW4gdGhlICIKKyN+ICJkaXJlY3RvcnkuXG4iCisjfiAiICAtLWRpci1maWxlPTxwYXRoPiAgICAgICAgc3BlY2lmeSBmaWxlIG5hbWUgb2YgaW5mbyBkaXJlY3RvcnkgZmlsZS5cbiIKKyN+ICIgIC0taW5mb2Rpcj08ZGlyZWN0b3J5PiAgICBzYW1lIGFzICctLWRpci1maWxlPTxkaXJlY3Rvcnk+L2RpcicuXG4iCisjfiAiICAtLWluZm8tZGlyPTxkaXJlY3Rvcnk+ICAgbGlrZXdpc2UuXG4iCisjfiAiICAtLWtlZXAtb2xkICAgICAgICAgICAgICAgZG8gbm90IHJlcGxhY2UgZW50cmllcyBub3IgcmVtb3ZlIGVtcHR5IG9uZXMuXG4iCisjfiAiICAtLXJlbW92ZSAgICAgICAgICAgICAgICAgcmVtb3ZlIHRoZSBlbnRyeSBzcGVjaWZpZWQgYnkgPGZpbGVuYW1lPiAiCisjfiAiYmFzZW5hbWUuXG4iCisjfiAiICAtLXJlbW92ZS1leGFjdGx5ICAgICAgICAgcmVtb3ZlIHRoZSBleGFjdCA8ZmlsZW5hbWU+IGVudHJ5LlxuIgorI34gIiAgLS10ZXN0ICAgICAgICAgICAgICAgICAgIGVuYWJsZXMgdGVzdCBtb2RlIChubyBhY3Rpb25zIHRha2VuKS5cbiIKKyN+ICIgIC0tZGVidWcgICAgICAgICAgICAgICAgICBlbmFibGVzIGRlYnVnIG1vZGUgKHNob3cgbW9yZSBpbmZvcm1hdGlvbikuXG4iCisjfiAiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgZG8gbm90IHNob3cgb3V0cHV0IG1lc3NhZ2VzLlxuIgorI34gIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisjfiAiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIuCkieCkquCkr+Cli+CklzogJXMgWzxvcHRpb25zPiAuLi5dIFstLV0gPGZpbGVuYW1lPlxuIgorI34gIlxuIgorI34gIuCkteCkv+CkleCksuCljeCkqjpcbiIKKyN+ICIgIC0tc2VjdGlvbiA8cmVnZXhwPiA8dGl0bGU+XG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlZ2V4PiDgpK7gpL/gpLLgpY3gpKbgpYsg4KS44KWH4KSV4KWN4KS44KSo4KSu4KS+IOCkqOCkr+CkvuCkgSDgpKrgpY3gpLDgpLXgpL/gpLfgpY3gpJ/gpL8g4KSw4KS+4KSW4KWN4KSo4KWB4KS54KWL4KS44KWNIOCkteCkvlxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgIOCkheCkteCkuOCljeCkpeCkv+CkpCDgpKjgpLDgpLngpYfgpK7gpL4gPHRpdGxlPiDgpLjgpIHgpJcg4KSo4KSv4KS+4KSBIOCkuOCkv+CksOCljeCknOCkqOCkvuCkl+CksOCljeCkqOClgeCkueCli+CkuOCljSDgpaRcbiIKKyN+ICIgIC0tbWVudWVudHJ5PTx0ZXh0PiAgICAgICDgpK7gpYfgpKjgpYEg4KSq4KWN4KSw4KS14KS/4KS34KWN4KSf4KS/IOCkuOClh+CknyDgpJfgpLDgpY3gpKjgpYHgpLngpYvgpLjgpY0g4KWkXG4iCisjfiAiICAtLWRlc2NyaXB0aW9uPTx0ZXh0PiAgICAg4KSu4KWH4KSo4KWBIOCkquCljeCksOCkteCkv+Ckt+CljeCkn+Ckv+CkruCkviDgpKrgpY3gpLDgpK/gpYvgpJcg4KSX4KSw4KS/4KSo4KWHIOCkteCksOCljeCko+CkqOCkuOClh+CknyDgpJfgpLDgpY3gpKjgpYHgpLngpYvgpLjgpY0g4KWkXG4iCisjfiAiICAtLWluZm8tZmlsZT08cGF0aD4gICAgICAg4KSh4KS+4KSH4KSw4KWH4KSV4KWN4KSf4KSw4KWA4KSu4KS+IOCkuOCljeCkpeCkvuCkquCkqOCkviDgpJfgpLDgpY3gpKgg4KS44KWC4KSa4KSo4KS+IOCkq+CkvuCkh+CksiDgpKjgpL/gpLDgpY3gpKbgpL/gpLfgpY3gpJ8g4KSX4KSw4KWN4KSo4KWB4KS54KWL4KS44KWNICIKKyN+ICLgpaRcbiIKKyN+ICIgIC0tZGlyLWZpbGU9PHBhdGg+ICAgICAgICDgpLjgpYLgpJrgpKjgpL4g4KSh4KS+4KSH4KSw4KWH4KSV4KWN4KSf4KSw4KWAIOCkq+CkvuCkh+CksuCkleCliyDgpKvgpL7gpIfgpLIg4KSo4KS+4KSuIOCkqOCkv+CksOCljeCkpuCkv+Ckt+CljeCknyDgpJfgpLDgpY3gpKjgpYHgpLngpYvgpLjgpY0gIgorI34gIuClpFxuIgorI34gIiAgLS1pbmZvZGlyPTxkaXJlY3Rvcnk+ICAgIOCkr+CliyDgpJzgpLjgpY3gpKTgpYggJy0tZGlyLWZpbGU9PGRpcmVjdG9yeT4vZGlyJy5cbiIKKyN+ICIgIC0taW5mby1kaXI9PGRpcmVjdG9yeT4gICDgpKTgpY3gpK/gpLjgpY3gpKTgpYgg4KSX4KSw4KWAXG4iCisjfiAiICAtLWtlZXAtb2xkICAgICAgICAgICAgICAg4KSq4KWN4KSw4KS14KS/4KS34KWN4KSf4KS/IOCkquCljeCksOCkpOCkv+CkuOCljeCkpeCkvuCkquCkqCDgpLAg4KSw4KS/4KSk4KWN4KSk4KWLIOCkqOCkl+CksOCljeCkqOClgeCkueCli+CkuOCljSDgpaRcbiIKKyN+ICIgIC0tcmVtb3ZlICAgICAgICAgICAgICAgICA8ZmlsZW5hbWU+IOCkhuCkp+CkvuCksOCkqOCkvuCkruCkpuCljeCkteCkvuCksOCkviDgpKjgpL/gpLDgpY3gpKbgpL/gpLfgpY3gpJ8g4KSq4KWN4KSw4KS14KS/4KS34KWN4KSf4KS/ICIKKyN+ICLgpLngpJ/gpL7gpIngpKjgpYHgpLngpYvgpLjgpY0g4KWkXG4iCisjfiAiICAtLXJlbW92ZS1leGFjdGx5ICAgICAgICAg4KSJ4KS44KWN4KSk4KWIIDxmaWxlbmFtZT4g4KSq4KWN4KSw4KS14KS/4KS34KWN4KSf4KS/IOCkueCkn+CkvuCkieCkqOClgeCkueCli+CkuOCljVxuIgorI34gIiAgLS10ZXN0ICAgICAgICAgICAgICAgICAgIOCkquCksOCkv+CkleCljeCkt+CkoyDgpK7gpYvgpKEg4KS44KSV4KWN4KS34KSuIOCkquCkvuCksOCljeCkpuCkmyAoIOCkleClgeCkqOCliCDgpJfgpKTgpL/gpLXgpL/gpKfgpL8g4KSt4KSP4KSoKSDgpaRcbiIKKyN+ICIgIC0tZGVidWcgICAgICAgICAgICAgICAgICDgpKHgpL/gpKzgpJcg4KSu4KWL4KShIOCkuOCkleCljeCkt+CkriDgpKrgpL7gpLDgpY3gpKbgpJsgKOCkrOCkouCkvyDgpJzgpL7gpKjgpJXgpL7gpLDgpYAg4KSm4KWH4KSW4KS+4KSJ4KSo4KWB4KS54KWL4KS44KWNKSDgpaRcbiIKKyN+ICIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICDgpKjgpL/gpLDgpY3gpJfgpKQg4KS44KSo4KWN4KSm4KWH4KS2IOCkqOCkpuClh+CkluCkvuCkvuCkieCkqOClgeCkueCli+CkuOCljSDgpaRcbiIKKyN+ICIgIC0taGVscCAgICAgICAgICAgICAgICAgICDgpK7gpKbgpY3gpKbgpKQg4KS44KSo4KWN4KSm4KWH4KS2IOCkpuClh+CkluCkvuCkieCkqOClgeCkueCli+CkuOCljSDgpaRcbiIKKyN+ICIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICDgpLjgpILgpLjgpY3gpJXgpLDgpKMg4KSm4KWH4KSW4KS+4KSJ4KSo4KWB4KS54KWL4KS44KWNIOClpFxuIgorCisjfiBtc2dpZCAiY291bGQgbm90IG9wZW4gc3RkZXJyIGZvciBvdXRwdXQhICVzIgorI34gbXNnc3RyICJg4KSo4KS/4KSw4KWN4KSX4KSk4KSV4KS+IOCksuCkvuCkl+CkvyBzdGRlcnIg4KSW4KWL4KSy4KWN4KSoIOCkuOCkleClh+CkqCAhICVzIgorCisjfiBtc2dpZCAiJXM6IC0tc2VjdGlvbiBuZWVkcyB0d28gbW9yZSBhcmdzIgorI34gbXNnc3RyICIlczogLS3gpLjgpYfgpJXgpY3gpLjgpKjgpLLgpL7gpIgg4KSm4KWB4KSIIOCkreCkqOCljeCkpuCkviDgpKzgpKLgpL8g4KSk4KSw4KWN4KSVIOCkhuCkteCktuCljeCkr+CklSDgpKrgpLDgpY3gpKbgpJsiCisKKyN+IG1zZ2lkICIlczogb3B0aW9uIC0tJXMgaXMgZGVwcmVjYXRlZCAoaWdub3JlZCkiCisjfiBtc2dzdHIgIiVzOiDgpLXgpL/gpJXgpLLgpY3gpKogLS0lcyDgpKHgpYfgpKrgpY3gpLDgpL/gpJXgpYfgpJ8g4KSbICjgpIngpKrgpYfgpJXgpY3gpLfgpL/gpKQpIgorCisjfiBtc2dpZCAiJXM6IHVua25vd24gb3B0aW9uIGAlcyciCisjfiBtc2dzdHIgIiVzOiDgpIXgpJzgpY3gpJ7gpL7gpKQg4KS14KS/4KSV4KSy4KWN4KSqIC0tJyVzJyIKKworI34gbXNnaWQgIiVzOiB0b28gbWFueSBhcmd1bWVudHMiCisjfiBtc2dzdHIgIiVzOiDgpKfgpYfgpLDgpYgg4KSk4KSw4KWN4KSV4KS54KSw4KWCIgorCisjfiBtc2dpZCAiJXM6IC0tc2VjdGlvbiBpZ25vcmVkIHdpdGggLS1yZW1vdmUiCisjfiBtc2dzdHIgIiVzOiAtLeCkueCkn+CkvuCkieCkqOClgeCkueCli+CkuOCljSAtLeCkuOCkgeCklyDgpLjgpYfgpJXgpY3gpLjgpKgg4KSJ4KSq4KWH4KSV4KWN4KS34KS/4KSkIgorCisjfiBtc2dpZCAiJXM6IC0tZGVzY3JpcHRpb24gaWdub3JlZCB3aXRoIC0tcmVtb3ZlIgorI34gbXNnc3RyICIlczogLS3gpLngpJ/gpL7gpIngpKjgpYHgpLngpYvgpLjgpY0gLS3gpLjgpIHgpJcg4KS14KSw4KWN4KSj4KSoIOCkieCkquClh+CkleCljeCkt+Ckv+CkpCIKKworI34gbXNnaWQgIiVzOiB0ZXN0IG1vZGUgLSBkaXIgZmlsZSB3aWxsIG5vdCBiZSB1cGRhdGVkIgorI34gbXNnc3RyICIlczog4KSq4KSw4KWA4KSV4KWN4KS34KSjIOCkruCli+CkoSAtIGRpciDgpKvgpL7gpIfgpLIg4KSF4KSm4KWN4KSv4KS+4KS14KSn4KS/4KSVIOCkueClgeCkpuCliOCkqCIKKworI34gbXNnaWQgIiVzOiB3YXJuaW5nLCBpZ25vcmluZyBjb25mdXNpbmcgSU5GTy1ESVItRU5UUlkgaW4gZmlsZS4iCisjfiBtc2dzdHIgIiVzOiDgpJrgpYfgpKTgpL7gpLXgpKjgpYAsIOCkq+CkvuCkh+CksuCkruCkviBJTkZPLURJUi1FTlRSWSDgpKbgpY3gpLXgpL/gpL/gpLXgpL/gpKfgpL4g4KSJ4KSq4KWH4KSV4KWN4KS34KS+IOCkl+CksOCljeCkpuCliOCkmyIKKworI34gbXNnaWQgImludmFsaWQgaW5mbyBlbnRyeSIKKyN+IG1zZ3N0ciAi4KSF4KS14KWI4KSnIOCkuOClguCkmuCkqOCkviDgpKrgpY3gpLDgpLXgpL/gpLfgpY3gpJ/gpL8iCisKKyN+IG1zZ2lkICIiCisjfiAiXG4iCisjfiAiTm8gYFNUQVJULUlORk8tRElSLUVOVFJZJyBhbmQgbm8gYFRoaXMgZmlsZSBkb2N1bWVudHMnLlxuIgorI34gIiVzOiB1bmFibGUgdG8gZGV0ZXJtaW5lIGRlc2NyaXB0aW9uIGZvciBgZGlyJyBlbnRyeSAtIGdpdmluZyB1cFxuIgorI34gbXNnc3RyICIiCisjfiAiXG4iCisjfiAiYFNUQVJULUlORk8tRElSLUVOVFJZJyDgpLngpYvgpIfgpKgg4KSwIOCkr+CliyDgpKvgpL7gpIfgpLIg4KSV4KS+4KSX4KSc4KS+4KSkIOCkueCli+Ckh+CkqCcuXG4iCisjfiAiJXM6IGBkaXInIOCkquCljeCksOCkteCkv+Ckt+CljeCkn+Ckv+CkleCkviDgpLLgpL7gpJfgpL8g4KS14KSw4KWN4KSj4KSoIOCkqOCkv+CksOCljeCkp+CkvuCksOCkoyDgpJfgpLDgpY3gpKgg4KSF4KSV4KWN4KS34KSuIC0g4KSb4KWL4KSh4KWN4KSm4KWI4KSbXG4iCisKKyN+IG1zZ2lkICIlczogbm8gZmlsZSAlcywgcmV0cmlldmluZyBiYWNrdXAgZmlsZSAlcy4iCisjfiBtc2dzdHIgIiVzOiAlcyDgpKvgpL7gpIfgpLIg4KSb4KWI4KSoLCDgpJzgpJfgpYfgpKHgpL4g4KSr4KS+4KSH4KSyICVzIOCkquClgeCkqDog4KSq4KWN4KSw4KS+4KSq4KWN4KSk4KS/IgorCisjfiBtc2dpZCAiJXM6IG5vIGJhY2t1cCBmaWxlICVzIGF2YWlsYWJsZSwgcmV0cmlldmluZyBkZWZhdWx0IGZpbGUuIgorI34gbXNnc3RyICIlczogJXMg4KSc4KSX4KWH4KSh4KS+IOCkq+CkvuCkh+CksiDgpIngpKrgpLLgpKzgpY3gpKcg4KSb4KWI4KSoLCDgpKrgpYLgpLDgpY3gpLXgpKjgpL/gpLDgpY3gpKfgpL7gpLDgpL/gpKQg4KSr4KS+4KSH4KSyIOCkquClgeCkqDog4KSq4KWN4KSw4KS+4KSq4KWN4KSkIOCkl+CksOCljeCkpuCliOCkmyIKKworI34gbXNnaWQgIiVzOiBubyBiYWNrdXAgZmlsZSAlcyBhdmFpbGFibGUuIgorI34gbXNnc3RyICIlczogJXMg4KSc4KSX4KWH4KSh4KS+IOCkq+CkvuCkh+CksiDgpIngpKrgpLLgpKzgpY3gpKcg4KSb4KWI4KSoIgorCisjfiBtc2dpZCAiJXM6IG5vIGRlZmF1bHQgZmlsZSAlcyBhdmFpbGFibGUsIGdpdmluZyB1cC4iCisjfiBtc2dzdHIgIiVzOiAlcyDgpKrgpYLgpLDgpY3gpLXgpKjgpL/gpLDgpY3gpKfgpL7gpLDgpL/gpKQg4KSr4KS+4KSH4KSyIOCkieCkquCksuCkrOCljeCkpyDgpJvgpYjgpKgsIOCkm+Cli+CkoeCljeCkpuCliOCkmyIKKworI34gbXNnaWQgIiVzOiBmYWlsZWQgdG8gbG9jayBkaXIgZm9yIGVkaXRpbmchICVzIgorI34gbXNnc3RyICIlczog4KS44KSu4KWN4KSq4KS+4KSm4KSo4KSV4KS+IOCksuCkvuCkl+CkvyDgpKHgpL7gpIfgpLDgpYfgpJXgpY3gpJ/gpLDgpYAg4KSk4KS+4KSy4KWN4KSa4KS+IOCksuCkl+CkvuCkieCkqCDgpIXgpLjgpKvgpLIgISAlcyIKKworI34gbXNnaWQgInRyeSBkZWxldGluZyAlcz8iCisjfiBtc2dzdHIgIiVzIOCkruClh+Ckn+CljeCkqCDgpKrgpY3gpLDgpK/gpL7gpLgg4KSX4KSw4KWN4KSo4KWB4KS54KWB4KSo4KWN4KSbID8iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gb3BlbiAlczogJXMiCisjfiBtc2dzdHIgIiVzIOCkluCli+CksuCljeCkqCDgpIXgpJXgpY3gpLfgpK46ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGNsb3NlICVzIGFmdGVyIHJlYWQ6ICVzIgorI34gbXNnc3RyICLgpKrgpKLgpYcg4KSq4KSb4KS/ICVzIOCkrOCkqOCljeCkpiDgpJfgpLDgpY3gpKgg4KSF4KSV4KWN4KS34KSuOiAlcyIKKworI34gbXNnaWQgIiVzOiBleGlzdGluZyBlbnRyeSBmb3IgYCVzJyBub3QgcmVwbGFjZWQiCisjfiBtc2dzdHIgIiVzOiBgJXMnIOCkleCkviDgpLLgpL7gpJfgpL8g4KSF4KS14KS44KWN4KSl4KS/4KSkIOCkquCljeCksOCkteCkv+Ckt+CljeCkn+CkvyDgpKrgpY3gpLDgpKTgpL/gpLjgpY3gpKXgpL7gpKrgpKgg4KSX4KSw4KS/4KSP4KSV4KWLIOCkm+CliOCkqCIKKworI34gbXNnaWQgIiVzOiByZXBsYWNpbmcgZXhpc3RpbmcgZGlyIGVudHJ5IGZvciBgJXMnIgorI34gbXNnc3RyICIlczogYCVzJyDgpJXgpL4g4KSy4KS+4KSX4KS/IOCkheCkteCkuOCljeCkpeCkv+CkpCBkaXIg4KSq4KWN4KSw4KS14KS/4KS34KWN4KSf4KS/IOCkquCljeCksOCkpOCkv+CkuOCljeCkpeCkvuCkquCkqCDgpJfgpLDgpY3gpKbgpYjgpJsiCisKKyN+IG1zZ2lkICIlczogY3JlYXRpbmcgbmV3IHNlY3Rpb24gYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IOCkqOCkr+CkvuCkgSDgpLjgpYfgpJXgpY3gpLjgpKggYCVzJyDgpLjgpL/gpLDgpY3gpJzgpKjgpL4g4KSX4KSw4KWN4KSm4KWI4KSbIgorCisjfiBtc2dpZCAiJXM6IG5vIHNlY3Rpb25zIHlldCwgY3JlYXRpbmcgTWlzY2VsbGFuZW91cyBzZWN0aW9uIHRvby4iCisjfiBtc2dzdHIgIiVzOiDgpIXgpJ0g4KS44KSu4KWN4KSuIOCkleClgeCkqOCliCDgpLjgpYfgpJXgpY3gpLjgpKgg4KSb4KWI4KSoLCDgpLXgpL/gpLXgpL/gpKcg4KS44KWH4KSV4KWN4KS44KSoIOCkuOCkv+CksOCljeCknOCkqOCkviDgpJfgpLDgpY3gpKbgpYjgpJsgIgorCisjfiBtc2dpZCAiJXM6IG5vIHNlY3Rpb24gc3BlY2lmaWVkIGZvciBuZXcgZW50cnksIHBsYWNpbmcgYXQgZW5kIgorI34gbXNnc3RyICIiCisjfiAiJXM6IOCkqOCkr+CkvuCkgSDgpKrgpY3gpLDgpLXgpL/gpLfgpY3gpJ/gpL/gpJXgpL4g4KSy4KS+4KSX4KS/IOCkleClgeCkqOCliCDgpKrgpKjgpL8g4KS44KWH4KSV4KWN4KS44KSoIOCkqOCkv+CksOCljeCkpuCkv+Ckt+CljeCknyDgpJfgpLDgpL/gpI/gpJXgpYsg4KSb4KWI4KSoLCDgpIXgpKjgpY3gpKTgpY3gpK/gpK7gpL4g4KS44KWN4KSl4KS+4KSq4KSoIOCkl+CksOCljeCkpuCliOCkmyIKKworI34gbXNnaWQgIiVzOiBkZWxldGluZyBlbnRyeSBgJXMgLi4uJyIKKyN+IG1zZ3N0ciAiJXM6IOCkruClh+Ckn+CljeCkpuCliCDgpJfgpLDgpYfgpJXgpYsg4KSq4KWN4KSw4KS14KS/4KS34KWN4KSf4KS/IGAlcyAuLi4nIgorCisjfiBtc2dpZCAiJXM6IGVtcHR5IHNlY3Rpb24gYCVzJyBub3QgcmVtb3ZlZCIKKyN+IG1zZ3N0ciAiJXM6IGAlcycg4KSw4KS/4KSk4KWN4KSk4KWLIOCkuOClh+CkleCljeCkuOCkqCDgpLngpJ/gpL7gpIfgpI/gpKgiCisKKyN+IG1zZ2lkICIlczogZGVsZXRpbmcgZW1wdHkgc2VjdGlvbiBgJXMnIgorI34gbXNnc3RyICIlczogYCVzJyDgpLDgpL/gpKTgpY3gpKTgpYsg4KS44KWH4KSV4KWN4KS44KSoIOCkruClh+Ckn+CljeCkpuCliOCkmyIKKworI34gbXNnaWQgIiVzOiBubyBlbnRyeSBmb3IgZmlsZSBgJXMnIGFuZCBtZW51IGVudHJ5IGAlcyciCisjfiBtc2dzdHIgIiIKKyN+ICIlczogbm8gZW50cnkgZm9yIGZpbGUgYCVzJyDgpKvgpL7gpIfgpLIg4KSwIGAlcycg4KSu4KWH4KSo4KWBIOCkquCljeCksOCkteCkv+Ckt+CljeCkn+Ckv+CkleCkviDgpLLgpL7gpJfgpL8gIOCkleClgeCkqOCliCDgpKrgpKjgpL8g4KSq4KWN4KSw4KS14KS/4KS34KWN4KSf4KS/ICIKKyN+ICLgpJvgpYjgpKgiCisKKyN+IG1zZ2lkICIlczogbm8gZW50cnkgZm9yIGZpbGUgYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IGAlcycg4KSr4KS+4KSH4KSy4KSV4KS+IOCksuCkvuCkl+CkvyDgpJXgpYHgpKjgpYgg4KSq4KWN4KSw4KS14KS/4KS34KWN4KSf4KS/IOCkm+CliOCkqCIKKworI34gbXNnaWQgInVuYWJsZSB0byBiYWNrdXAgb2xkICVzLCBnaXZpbmcgdXA6ICVzIgorI34gbXNnc3RyICLgpKrgpYHgpLDgpL7gpKjgpYsgJXMg4KSV4KWLIOCknOCkl+Clh+CkoeCkviDgpKzgpKjgpL7gpIngpKgg4KSF4KSV4KWN4KS34KSuLCDgpJvgpYvgpKHgpY3gpKbgpYjgpJs6ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3ICVzOiAlcyIKKyN+IG1zZ3N0ciAi4KSo4KSv4KS+4KSBICVzIOCkuOCljeCkpeCkvuCkquCkqOCkviDgpIXgpJXgpY3gpLfgpK46ICVzIgorCisjfiBtc2dpZCAiJXM6IGNvdWxkIG5vdCBiYWNrdXAgJXMgaW4gJXM6ICVzIgorI34gbXNnc3RyICIlczogJXMg4KSu4KS+ICVzIOCksuCkvuCkiCDgpJzgpJfgpYfgpKHgpL4g4KSs4KSo4KS+4KSJ4KSoIOCkuOCkleClh+CkqCA6ICVzIgorCisjfiBtc2dpZCAiJXM6IHdhcm5pbmcgLSB1bmFibGUgdG8gdW5sb2NrICVzOiAlcyIKKyN+IG1zZ3N0ciAiJXM6IOCkmuClh+CkpOCkvuCkteCkqOClgCAtICVzIOCkpOCkvuCksuCljeCkmuCkviDgpJbgpYvgpLLgpY3gpKgg4KSF4KSV4KWN4KS34KSuOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byByZWFkICVzOiAlZCIKKyN+IG1zZ3N0ciAiJXMg4KSq4KSi4KWN4KSoIOCkheCkleCljeCkt+CkrjogJWQiCisKKyN+IG1zZ2lkICJkYmc6ICVzIgorI34gbXNnc3RyICJkYmc6ICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIG9wZW4gdG1wZmlsZSAoY29udHJvbCksICVzIgorI34gbXNnc3RyICJ0bXBmaWxlICjgpKjgpL/gpK/gpKjgpY3gpKTgpY3gpLDgpKMpIOCkluCli+CksuCljeCkqCDgpIXgpLjgpKvgpLIsICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIG9wZW4gdG1wZmlsZSAoZGF0YSksICVzIgorI34gbXNnc3RyICJ0bXBmaWxlICjgpKHgpYfgpJ/gpL4pIOCkluCli+CksuCljeCkqCDgpIXgpLjgpKvgpLIsICVzIgorCisjfiBtc2dpZCAiaW52YWxpZCBudW1iZXIgZm9yIC0tY29tbWFuZC1mZCIKKyN+IG1zZ3N0ciAiLS3gpIbgpKbgpYfgpLYtZmQg4KSV4KS+IOCksuCkvuCkl+CkvyDgpIXgpLXgpYjgpKcg4KSo4KSu4KWN4KSs4KSwIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHJld2luZCBhdCBzdGFydCBvZiB2c25wcmludGYiCisjfiBtc2dzdHIgInZzbnByaW50ZiDgpJXgpYsg4KS44KWB4KSw4KWB4KSu4KS+IOCkq+Clh+CksOCkvyDgpJjgpYHgpK7gpL7gpIngpKgg4KSF4KSV4KWN4KS34KSuIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHRydW5jYXRlIGluIHZzbnByaW50ZiIKKyN+IG1zZ3N0ciAidnNucHJpbnRmIOCkruCkviDgpJXgpL7gpJ/gpY3gpKgg4KSF4KSV4KWN4KS34KSuIgorCisjfiBtc2dpZCAid3JpdGUgZXJyb3IgaW4gdnNucHJpbnRmIgorI34gbXNnc3RyICJ2c25wcmludGYg4KSu4KS+IOCkpOCljeCksOClgeCkn+CkvyDgpLLgpYfgpJbgpY3gpKjgpYHgpLngpYvgpLjgpY0iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gc3RhdCBpbiB2c25wcmludGYiCisjfiBtc2dzdHIgInZzbnByaW50ZiDgpK7gpL4g4KS44KWB4KSw4KWCIOCkl+CksOCljeCkqCDgpIXgpJXgpY3gpLfgpK4iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcmV3aW5kIGluIHZzbnByaW50ZiIKKyN+IG1zZ3N0ciAidnNucHJpbnRmIOCkruCkviDgpKvgpYfgpLDgpL8g4KS44KWB4KSw4KWCIOCkl+CksOCljeCkqCDgpIXgpLjgpJXgpY3gpLciCisKKyN+IG1zZ2lkICJyZWFkIGVycm9yIGluIHZzbnByaW50ZiB0cnVuY2F0ZWQiCisjfiBtc2dzdHIgIuCkleCkvuCkn+Ckv+Ckj+CkleCliyB2c25wcmludGYg4KSu4KS+IOCkpOCljeCksOClgeCkn+CkvyDgpLLgpYfgpJbgpY3gpKjgpYHgpLngpYvgpLjgpY0iCisKKyN+IG1zZ2lkICJTeXN0ZW0gZXJyb3Igbm8uJWQiCisjfiBtc2dzdHIgIuCkquCljeCksOCko+CkvuCksuClgCDgpKTgpY3gpLDgpYHgpJ/gpL8g4KSo4KSu4KWN4KSs4KSwLiVkIgorCisjfiBtc2dpZCAiU2lnbmFsIG5vLiVkIgorI34gbXNnc3RyICLgpLjgpILgpJXgpYfgpKQg4KSo4KSu4KWN4KSs4KSwLiVkIgorCisjfiBtc2dpZCAiZHBrZzogd2FybmluZyAtICVzIHJldHVybmVkIGVycm9yIGV4aXQgc3RhdHVzICVkXG4iCisjfiBtc2dzdHIgImRwa2c64KSa4KWH4KSk4KS+4KS14KSo4KWAIC0gJXMg4KSr4KS/4KSw4KWN4KSk4KS+IOCkpOCljeCksOClgeCkn+CkvyDgpKjgpL/gpJXgpL7gpLgg4KS44KWN4KSl4KS/4KSk4KS/ICVkXG4iCisKKyN+IG1zZ2lkICJkcGtnOiB3YXJuaW5nIC0gJXMga2lsbGVkIGJ5IHNpZ25hbCAoJXMpJXNcbiIKKyN+IG1zZ3N0ciAiZHBrZzog4KSa4KWH4KSk4KS+4KS14KSo4KWAIC0gJXMg4KS44KSC4KSV4KWH4KSk4KSm4KWN4KSn4KS+4KSw4KS+IOCkruCkvuCksOCkv+Ckr+CliyAoJXMpJXNcbiIKKworI34gbXNnaWQgImZhaWxlZCB0byByZWFkIGAlcycgYXQgbGluZSAlZCIKKyN+IG1zZ3N0ciAiYCVzJyDgpK7gpL4g4KSy4KS+4KSH4KSoICVkIOCkquCkouCljeCkqCDgpIXgpLjgpKvgpLIiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAicGFyc2UgZXJyb3IsIGluIGZpbGUgYCUuMjU1cycgbmVhciBsaW5lICVkIgorI34gbXNnc3RyICIlcywg4KSr4KS+4KSH4KSyIGAlLjI1NXMn4KSu4KS+IOCkqOCknOCkv+CkleCkleCliyDgpLLgpL7gpIfgpKggJWQiCisKKyN+IG1zZ2lkICIgcGFja2FnZSBgJS4yNTVzJyIKKyN+IG1zZ3N0ciAiIOCkquCljeCkr+CkvuCkleClh+CknCBgJS4yNTVzJyIKKworI34gbXNnaWQgImZhaWxlZCB0byByZWFsbG9jIGZvciB2YXJpYWJsZSBidWZmZXIiCisjfiBtc2dzdHIgIuCkmuCksiDgpKzgpKvgpLDgpJXgpL4g4KSy4KS+4KSX4KS/IOCkquClguCkqCDgpKzgpL7gpIHgpKHgpKvgpL7gpKEg4KSX4KSw4KWN4KSoIOCkheCkuOCkq+CksiIKKworI34gbXNnaWQgInByb2Nlc3NfYXJjaGl2ZSAuLi4gIGFscmVhZHkgZGlzYXBwZWFyZWQgISIKKyN+IG1zZ3N0ciAi4KS44KSZ4KWN4KSX4KWN4KSw4KS5IOCkquCljeCksOCkleCljeCksOCkv+Ckr+CkviAuLi4gIOCkquCkueCkv+CksuCljeCkr+CliCDgpLngpLDgpL7gpIcg4KS44KSV4KWH4KSV4KWLIOCkmyAhIgorCisjfiBtc2dpZCAiZ29iYmxlIHJlcGxhY2VkIGZpbGUgYCUuMjU1cyciCisjfiBtc2dzdHIgIuCkl+Cli+CkrOCksiDgpKvgpL7gpIfgpLIgYCUuMjU1cycg4KSq4KWN4KSw4KSk4KS/4KS44KWN4KSl4KS+4KSq4KSoIOCkl+CksOCljeCkr+CliyIKKworI34gbXNnaWQgImRwa2c6ICVzOiB3YXJuaW5nIC0gZmFpbGVkIHRvIHJlbW92ZSBgJS4yNTBzJzogJXNcbiIKKyN+IG1zZ3N0ciAiZHBrZzogJXM6IOCkmuClh+CkpOCkvuCkteCkqOClgCAtIOCkueCkn+CkvuCkieCkqCDgpIXgpLjgpKvgpLJgJS4yNTBzJzogJXNcbiIKKworI34gbXNnaWQgIi0tYXVkaXQgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnRzIgorI34gbXNnc3RyICItLeCksuClh+CkluCkvuCkquCksOCkv+CkleCljeCkt+Cko+CksuClhyDgpJXgpYHgpKjgpYgg4KSq4KSo4KS/IOCkpOCksOCljeCkleCkueCksOClgiDgpLLgpL/gpKbgpYjgpKgiCisKKyN+IG1zZ2lkICItLXlldC10by11bnBhY2sgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnRzIgorI34gbXNnc3RyICItLXlldC10by11bnBhY2sg4KSy4KWHIOCkleClgeCkqOCliCDgpKrgpKjgpL8g4KSk4KSw4KWN4KSV4KS54KSw4KWCIOCksuCkv+CkpuCliOCkqCIKKworI34gbXNnaWQgIi0tYXNzZXJ0LSogZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnRzIgorI34gbXNnc3RyICItLWFzc2VydC0qIOCksuClhyDgpJXgpYHgpKjgpYgg4KSq4KSo4KS/IOCkpOCksOCljeCkleCkueCksOClgiDgpLLgpL/gpKbgpYjgpKgiCisKKyN+IG1zZ2lkICItLXByZWRlcC1wYWNrYWdlIGRvZXMgbm90IHRha2UgYW55IGFyZ3VtZW50IgorI34gbXNnc3RyICItLXByZWRlcC3gpKrgpY3gpK/gpL7gpJXgpYfgpJzgpLLgpYcg4KSV4KWB4KSo4KWIIOCkquCkqOCkvyDgpKTgpLDgpY3gpJXgpLngpLDgpYIg4KSy4KS/4KSm4KWI4KSoIgorCisjfiBtc2dpZCAiLS1wcmludC1hcmNoaXRlY3R1cmUgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tcHJpbnQt4KSs4KSo4KS+4KS14KSf4KSy4KWHIOCkleClgeCkqOCliCDgpKTgpLDgpY3gpJXgpLngpLDgpYIg4KSy4KS/4KSm4KWI4KSoIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHN0YXQgaW5zdGFsbGVkICVzIHNjcmlwdCBgJS4yNTBzJyIKKyN+IG1zZ3N0ciAi4KS44KWN4KSl4KS+4KSq4KS/4KSkICVzIOCkuOCljeCkleCljeCksOCkv+CkquCljeCknyBgJS4yNTBzJyBzdGF0IOCkl+CksOCljeCkqCDgpIXgpJXgpY3gpLfgpK4iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gc3RhdCBuZXcgJXMgc2NyaXB0IGAlLjI1MHMnIgorI34gbXNnc3RyICLgpKjgpK/gpL7gpIEgJXMg4KS44KWN4KSV4KWN4KSw4KS/4KSq4KWN4KSfIGAlLjI1MHMnIHN0YXQg4KSX4KSw4KWN4KSoIOCkheCkleCljeCkt+CkriIKKworI34gbXNnaWQgInVuYWJsZSB0byBleGVjdXRlIG5ldyAlcyIKKyN+IG1zZ3N0ciAi4KSo4KSv4KS+4KSBICVzIOCkleCkvuCksOCljeCkr+CkqOCljeCkteCkr+CkqCDgpJfgpLDgpY3gpKgg4KSF4KSV4KWN4KS34KSuIgorCisjfiBtc2dpZCAiZHBrZzogd2FybmluZyAtIHVuYWJsZSB0byBzdGF0ICVzIGAlLjI1MHMnOiAlc1xuIgorI34gbXNnc3RyICJkcGtnOiDgpJrgpYfgpKTgpL7gpLXgpKjgpYAgLSBzdGF0IOCkl+CksOCljeCkqCDgpIXgpJXgpY3gpLfgpK4gJXMgYCUuMjUwcyc6ICVzXG4iCisKKyN+IG1zZ2lkICItLXNldC1zZWxlY3Rpb25zIGRvZXMgbm90IHRha2UgYW55IGFyZ3VtZW50IgorI34gbXNnc3RyICItLeCkuOClh+Ckny3gpJrgpK/gpKjgpLngpLDgpYHgpLLgpYcg4KSV4KWB4KSo4KWIIOCkquCkqOCkvyDgpKTgpLDgpY3gpJXgpLngpLDgpYIg4KSy4KS/4KSm4KWI4KSo4KSo4KWNIgorCisjfiBtc2dpZCAiLS1jbGVhci1zZWxlY3Rpb25zIGRvZXMgbm90IHRha2UgYW55IGFyZ3VtZW50IgorI34gbXNnc3RyICItLeCkluCkvuCksuClgCDgpJfgpLDgpY3gpKjgpYHgpLngpYvgpLjgpY0t4KSa4KSv4KSo4KS54KSw4KWB4KSy4KWHIOCkleClgeCkqOCliCDgpKrgpKjgpL8g4KSk4KSw4KWN4KSVIOCksuCkv+CkpuCliOCkqCIKKworI34gbXNnaWQgIi0tYnVpbGQgbmVlZHMgYSBkaXJlY3RvcnkgYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tYnVpbGQg4KSy4KS+4KSIIOCkj+CkieCkn+CkviDgpKHgpL7gpIfgpLDgpYfgpJXgpY3gpJ/gpLDgpYAg4KSk4KSw4KWN4KSVIOCkhuCkteCktuCljeCkr+CklSDgpKrgpLDgpY3gpKbgpJsiCisKKyN+IG1zZ2lkICIiCisjfiAiZHBrZy1kZWI6IHdhcm5pbmcsIG5vdCBjaGVja2luZyBjb250ZW50cyBvZiBjb250cm9sIGFyZWEuXG4iCisjfiAiZHBrZy1kZWI6IGJ1aWxkaW5nIGFuIHVua25vd24gcGFja2FnZSBpbiBgJXMnLlxuIgorI34gbXNnc3RyICIiCisjfiAiZHBrZy1kZWI6IOCkmuClh+CkpOCkvuCkteCkqOClgCwg4KSo4KS/4KSv4KSo4KWN4KSk4KWN4KSw4KSjIOCkleCljeCkt+Clh+CkpOCljeCksOCkleCliyDgpLXgpL/gpLfgpK/gpLngpLDgpYIg4KSc4KS+4KSB4KSaIOCkqOCkl+CksOCljeCkqOClgeCkueCli+CkuOCljVxuIgorI34gImRwa2ctZGViOiDgpI/gpIngpJ/gpL4g4KSF4KSc4KWN4KSe4KS+4KSkIOCkquCljeCkr+CkvuCkleClh+CknGAlcycg4KSu4KS+IOCkrOCkqOCkvuCkieCkpuCliCDgpaRcbiIKKworI34gbXNnaWQgIkludGVybmFsIGVycm9yLCBjb21wcmVzc190eXBlIGAlaScgdW5rbm93biEiCisjfiBtc2dzdHIgIuCkhuCkqOCljeCkpOCksOCkv+CklSDgpKTgpY3gpLDgpYHgpJ/gpL8sIOCkl+CkpuCljeCkpuClgF/gpKrgpY3gpLDgpJXgpL7gpLAgYCVpJyDgpIXgpJzgpY3gpJ7gpL7gpKQhIgorCisjfiBtc2dpZCAiLS1qb2luIHJlcXVpcmVzIG9uZSBvciBtb3JlIHBhcnQgZmlsZSBhcmd1bWVudHMiCisjfiBtc2dzdHIgIuCkhuCkteCktuCljeCkr+CklSDgpI/gpIngpJ/gpL4g4KS14KS+IOCkp+Clh+CksOCliCDgpK3gpL7gpJcg4KSr4KS+4KSH4KSyIOCkpOCksOCljeCkleCkueCksOClgiDgpJzgpKHgpL7gpKgg4KSX4KSw4KWN4KSo4KWB4KS54KWL4KS44KWNIgorCisjfiBtc2dpZCAiLS1saXN0cSBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudHMiCisjfiBtc2dzdHIgIi0tbGlzdHEg4KSy4KWHIOCkleClgeCkqOCliCDgpKTgpLDgpY3gpJXgpLngpLDgpYIg4KSy4KS/4KSm4KWI4KSoIgorCisjfiBtc2dpZCAiIgorI34gIlxuIgorI34gIkNvcHlyaWdodCAoQykgMTk5NiBLaW0tTWluaCBLYXBsYW4uIgorI34gbXNnc3RyICIiCisjfiAiXG4iCisjfiAi4KSq4KWN4KSw4KSk4KS/4KSy4KS/4KSq4KWAIOCkheCkp+Ckv+CkleCkvuCksCjgpLjgpYApIOClp+Clr+Clr+ClrCDgpJXgpL/gpK4t4KSu4KS/4KSoIOCkleCkquCljeCksuCkvuCkqCIKKworI34gbXNnaWQgIiIKKyN+ICJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gWy0tXSBbPGRpcm5hbWU+XVxuIgorI34gIlxuIgorI34gIk9wdGlvbnM6XG4iCisjfiAiICAtLXVuc2FmZSAgICAgc2V0IHNvbWUgYWRkaXRpb25hbCBwb3NzaWJseSB1c2VmdWwgb3B0aW9ucy5cbiIKKyN+ICIgICAgICAgICAgICAgICB3YXJuaW5nOiB0aGlzIG9wdGlvbiBtYXkgZ2FyYmxlIGFuIG90aGVyd2lzZSBjb3JyZWN0ICIKKyN+ICJmaWxlLlxuIgorI34gIiAgLS1oZWxwICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisjfiAiICAtLXZlcnNpb24gICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIuCkieCkquCkr+Cli+CklzogJXMgWzxvcHRpb24+IC4uLl0gWy0tXSBbPGRpcm5hbWU+XVxuIgorI34gIlxuIgorI34gIuCkteCkv+CkleCksuCljeCkqjpcbiIKKyN+ICIgIC0t4KSF4KS44KWB4KSw4KSV4KWN4KS34KS/4KSkICAgICDgpJXgpYfgpLngpL8g4KSl4KSqIOCkuOCkguCkreCkvuCkteCkv+CkpCDgpIngpKrgpK/gpYvgpJfgpL8g4KS14KS/4KSV4KSy4KWN4KSq4KS54KSw4KWCIOCkuOClh+CknyDgpJfgpLDgpY3gpKjgpYHgpLngpYvgpLjgpY1cbiIKKyN+ICIgICAgICAgICAgICAgICDgpJrgpYfgpKTgpL7gpLXgpKjgpYA6IOCkr+CliyDgpLXgpL/gpJXgpLLgpY3gpKrgpLLgpYcg4KSs4KS/4KSX4KS+4KSw4KWN4KSoIOCkquCkqOCkvyDgpLjgpJXgpY3gpJsg4KSF4KSo4KWN4KSv4KSl4KS+IOCkq+CkvuCkh+CksiDgpKDgpYDgpJUg4KSX4KSw4KWN4KSm4KSbIOClpFxuIgorI34gIiAgLS3gpK7gpKbgpY3gpKbgpKQgICAgICAg4KSk4KWAIOCkruCkpuCljeCkpuCkpCDgpLjgpKjgpY3gpKbgpYfgpLbgpLngpLDgpYIg4KSm4KWH4KSW4KS+4KSJ4KSo4KWB4KS54KWL4KS44KWNXG4iCisjfiAiICAtLeCkuOCkguCkuOCljeCkleCksOCkoyAgICDgpLjgpILgpLjgpY3gpJXgpLDgpKMg4KSm4KWH4KSW4KS+4KSJ4KSo4KWB4KS54KWL4KS44KWNXG4iCisKKyN+IG1zZ2lkICJ0cnkgZGVsZXRpbmcgJXMiCisjfiBtc2dzdHIgIiVzIOCkruClh+Ckn+CljeCkqCDgpKrgpY3gpLDgpK/gpL7gpLgg4KSX4KSw4KWN4KSo4KWB4KS54KWL4KS44KWNIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGluc3RhbGwgJXM7IGl0IHdpbGwgYmUgbGVmdCBhcyAlczogJXMiCisjfiBtc2dzdHIgIiVzIOCkuOCljeCkpeCkvuCkquCkqOCkviDgpJfgpLDgpY3gpKgg4KSF4KSV4KWN4KS34KSuOyDgpK/gpYsgJXMg4KSV4KWLIOCksOClguCkquCkruCkviDgpJvgpYvgpKHgpL/gpKjgpY3gpJs6ICVzIgorCisjfiBtc2dpZCAiJXM6IHVuYWJsZSB0byB1bmxvY2sgJXM6ICVzIgorI34gbXNnc3RyICIlczogJXMg4KSk4KS+4KSy4KWN4KSa4KS+IOCkluCli+CksuCljeCkqCDgpIXgpJXgpY3gpLfgpK46ICVzIgorCisjfiBtc2dpZCAiJXMgLSBzdGF0dXMgaXMgJXMuIgorI34gbXNnc3RyICIlcyAtICDgpLXgpLjgpY3gpKTgpYHgpLjgpY3gpKXgpL/gpKTgpL8gJXMg4KSbIgorCisjfiBtc2dpZCAiIGxpbmsgdW5yZWFkYWJsZSAtICVzIgorI34gbXNnc3RyICLgpKrgpKLgpY3gpKgg4KSF4KSv4KWL4KSX4KWN4KSvIOCksuCkv+CkmeCljeCklSAtICVzIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICJ3YXJuaW5nOiAlcyBpcyBzdXBwb3NlZCB0byBiZSBhIHN5bWxpbmsgdG8gJXMsIFxuIgorI34gIm9yIG5vbmV4aXN0ZW50OyBob3dldmVyLCByZWFkbGluayBmYWlsZWQ6ICVzIgorI34gbXNnc3RyICIiCisjfiAi4KSa4KWH4KSk4KS+4KS14KSo4KWAOiAlcyDgpLLgpL7gpIggJXMg4KSu4KS+IOCkuOCkv+CkruCksuCkv+CkmeCljeCklSDgpK3gpI/gpJXgpYsg4KSu4KS+4KSo4KS/4KSo4KWN4KSbXG4iCisjfiAiICjgpLXgpL4g4KSF4KS14KS44KWN4KSl4KS/4KSkIOCkqOCksOCkueClh+CkleCliyk7IOCkr+CkpuCljeCkr+CkquClgCwg4KSw4KS/4KSh4KSy4KS/4KSZ4KWN4KSVIOCkheCkuOCkq+CksjogJXMiCisKKyN+IG1zZ2lkICJMZWF2aW5nICVzICglcykgcG9pbnRpbmcgdG8gJXMuIgorI34gbXNnc3RyICIlcyDgpK7gpL4g4KSk4KWL4KSV4KWN4KSoICVzICglcykg4KSb4KWL4KSh4KWN4KSm4KWI4KSbIgorCisjfiBtc2dpZCAiVXBkYXRpbmcgJXMgKCVzKSB0byBwb2ludCB0byAlcy4iCisjfiBtc2dzdHIgIiVzIOCkruCkviDgpKTgpYvgpJXgpY3gpKggJXMgKCVzKSDgpIXgpKbgpY3gpK/gpL7gpLXgpKfgpL/gpJUg4KSX4KSw4KWN4KSm4KWI4KSbIgorCisjfiBtc2dpZCAiUmVtb3ZpbmcgJXMgKCVzKSwgbm90IGFwcHJvcHJpYXRlIHdpdGggJXMuIgorI34gbXNnc3RyICIlcyAoJXMpIOCkueCkn+CkvuCkieCkpuCliOCkmywgJXMg4KS44KSB4KSXIOCkieCkquCkr+ClgeCkleCljeCkpCDgpJvgpYjgpKgg4KWkIgorCisjfiBtc2dpZCAiIgorI34gIkNoZWNraW5nIGF2YWlsYWJsZSB2ZXJzaW9ucyBvZiAlcywgdXBkYXRpbmcgbGlua3MgaW4gJXMgLi4uXG4iCisjfiAiKFlvdSBtYXkgbW9kaWZ5IHRoZSBzeW1saW5rcyB0aGVyZSB5b3Vyc2VsZiBpZiBkZXNpcmVkIC0gc2VlIGBtYW4gbG4nLikiCisjfiBtc2dzdHIgIiIKKyN+ICIlcyDgpJXgpYsg4KSJ4KSq4KSy4KSs4KWN4KSnIOCkuOCkguCkuOCljeCkleCksOCkoyDgpJzgpL7gpIHgpJosICVzIOCkruCkviDgpLLgpL/gpJngpY3gpJUg4KSF4KSm4KWN4KSv4KS+4KS+4KS14KSn4KS/4KSVIC4uLlxuIgorI34gIijgpIbgpLXgpLbgpY3gpK/gpJUg4KSq4KSw4KWH4KSu4KS+IOCkpOCkquCkvuCkiOCkgeCksuClhyDgpLjgpL/gpK7gpLLgpL/gpJngpY3gpJUg4KSq4KSw4KS/4KSu4KS+4KSw4KWN4KSc4KSoIOCkl+CksOCljeCkqCDgpLjgpJXgpY3gpKjgpYHgpLngpYHgpKjgpY3gpJstIGBtYW4gbG4nIOCkueClh+CksOCljeCkqOClgeCkueCli+CkuOCljSDgpaQpIgorCisjfiBtc2dpZCAic2xhdmUgbGluayBuYW1lICVzIGR1cGxpY2F0ZWQiCisjfiBtc2dzdHIgIiVzIOCkuOCljeCksuClh+CkrSDgpLLgpL/gpJngpY3gpJUg4KSo4KS+4KSuIOCkqOCkleCljeCkleCksiDgpKzgpKjgpL7gpIfgpK/gpYsiCisKKyN+IG1zZ2lkICJSZWNvdmVyaW5nIGZyb20gcHJldmlvdXMgZmFpbGVkIHVwZGF0ZSBvZiAlcyAuLi4iCisjfiBtc2dzdHIgIiAlcyAuLi7gpJXgpYsg4KSF4KSY4KS/4KSy4KWN4KSy4KWLIOCkheCkuOCkq+CksiDgpIXgpKbgpY3gpK/gpL7gpLXgpKfgpL/gpJXgpKzgpL7gpJ8g4KSq4KWB4KSoOiDgpKrgpY3gpLDgpL7gpKrgpY3gpKQg4KSX4KSw4KWN4KSm4KWI4KSbIOClpCIKKworI34gbXNnaWQgInVuYWJsZSB0byBvcGVuICVzIGZvciB3cml0ZTogJXMiCisjfiBtc2dzdHIgIuCksuClh+CkluCljeCkqOCkleCkviDgpLLgpL7gpJfgpL8gJXMg4KSW4KWL4KSy4KWN4KSoIOCkheCkleCljeCkt+CkrjogJXMiCisKKyN+IG1zZ2lkICJMYXN0IHBhY2thZ2UgcHJvdmlkaW5nICVzICglcykgcmVtb3ZlZCwgZGVsZXRpbmcgaXQuIgorI34gbXNnc3RyICIlcyAoJXMpIOCkquCljeCksOCkpuCkvuCkqCDgpJfgpLDgpY3gpKjgpYcg4KSF4KSo4KWN4KSk4KS/4KSuIOCkquCljeCkr+CkvuCkleClh+CknCDgpLngpJ/gpL7gpIfgpK/gpYssIOCkr+CkuOCksuCkvuCkiCDgpK7gpYfgpJ/gpY3gpKbgpYjgpJsg4KWkIgorCisjfiBtc2dpZCAiIgorI34gIlRoZXJlIGlzIG9ubHkgMSBwcm9ncmFtIHdoaWNoIHByb3ZpZGVzICVzXG4iCisjfiAiKCVzKS4gTm90aGluZyB0byBjb25maWd1cmUuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICLgpKTgpY3gpK/gpLngpL7gpIEgJXMg4KSq4KWN4KSw4KSm4KS+4KSoIOCkl+CksOCljeCkqOClhyDgpJXgpYfgpKzgpLIg4KWnIOCkleCkvuCksOCljeCkr+CkleCljeCksOCkriDgpK7gpL7gpKTgpY3gpLAg4KSbXG4iCisjfiAiKCVzKS4g4KSV4KSo4KWN4KSr4KS/4KSX4KSwIOCkl+CksOCljeCkqCDgpJXgpYfgpLngpL8g4KSq4KSo4KS/IOCkm+CliOCkqCDgpaRcbiIKKworI34gbXNnaWQgIiIKKyN+ICJUaGVyZSBhcmUgJXMgYWx0ZXJuYXRpdmVzIHdoaWNoIHByb3ZpZGUgYCVzJy5cbiIKKyN+ICJcbiIKKyN+ICIgIFNlbGVjdGlvbiAgICBBbHRlcm5hdGl2ZVxuIgorI34gIi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4iCisjfiBtc2dzdHIgIiIKKyN+ICLgpKTgpY3gpK/gpLngpL7gpIEgYCVzJyDgpKrgpY3gpLDgpKbgpL7gpKgg4KSX4KSw4KWN4KSo4KWHICVzIOCkteCkv+CkleCksuCljeCkquCkueCksOClgiDgpJvgpKjgpY0g4KWkXG4iCisjfiAiXG4iCisjfiAiICDgpJrgpK/gpKggICAg4KS14KS/4KSV4KSy4KWN4KSqXG4iCisjfiAiLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiIKKworI34gbXNnaWQgImVycm9yIG9yIGVvZiByZWFkaW5nICVzIGZvciAlcyAoJXMpIgorI34gbXNnc3RyICIlcyAoJXMpIOCkleCkviDgpLLgpL7gpJfgpL8g4KSk4KWN4KSw4KWB4KSf4KS/IOCkteCkviBlb2Yg4KSq4KSi4KS+4KSHICVzIgorCisjfiBtc2dpZCAibWlzc2luZyBuZXdsaW5lIGFmdGVyICVzIgorI34gbXNnc3RyICIlcyDgpKrgpJvgpL8g4KS54KSw4KS+4KSH4KSw4KS54KWH4KSV4KWLIOCkqOCkr+CkvuCkgeCksOClh+CkluCkviIKKworI34gbXNnaWQgIlNlcmlvdXMgcHJvYmxlbTogJXMiCisjfiBtc2dzdHIgIuCkl+CkruCljeCkreClgOCksCDgpLjgpK7gpLjgpY3gpK/gpL46ICVzIgorCisjfiBtc2dpZCAiY291bGRuJ3QgYWxsb2NhdGUgbWVtb3J5IGZvciBzdHJkdXAgaW4gZmluZHBhY2thZ2UoJXMpIgorI34gbXNnc3RyICLgpKvgpYfgpLLgpL4g4KSq4KS+4KSw4KWN4KSo4KWHIOCkquCljeCkr+CkvuCkleClh+CknCglcykg4KSu4KS+IHN0cmR1cCDgpJXgpL4g4KSy4KS+4KSX4KS/IOCkuOCljeCkruClg+CkpOCkvyDgpKzgpL7gpJngpIHgpKvgpL7gpKEg4KSX4KSw4KWN4KSoIOCkuOCkleClh+CkqCDgpaQiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gYWxsb2NhdGUgYnVmZmVyIGluIGJ1ZmZlcl9jb3B5ICglcykiCisjfiBtc2dzdHIgIuCkrOCkq+CksCDgpKrgpY3gpLDgpKTgpL/gpLLgpL/gpKrgpL/gpK7gpL4g4KSs4KSr4KSwIOCkrOCkvuCkgeCkoeCkq+CkvuCknyDgpJfgpLDgpY3gpKgg4KSF4KS44KSr4KSyICglcykiCisKKyN+IG1zZ2lkICJFcnJvciBhbGxvY2F0aW5nIG1lbW9yeSBmb3IgY2ZnZmlsZW5hbWUiCisjfiBtc2dzdHIgImNmZ2ZpbGVuYW1lIOCkleCkviDgpLLgpL7gpJfgpL8g4KS44KWN4KSu4KWD4KSk4KS/IOCkrOCkvuCkgeCkoeCkq+CkvuCkoSDgpJfgpLDgpY3gpKbgpL4g4KSk4KWN4KSw4KWB4KSf4KS/IgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIG1hbGxvYyBmb3IgaW5mbyBmaWxlIGAlLjI1NXMnIgorI34gbXNnc3RyICLgpLjgpYLgpJrgpKjgpL4g4KSr4KS+4KSH4KSyIGAlLjI1NXMn4KSV4KS+IOCksuCkvuCkl+CkvyDgpK7gpL7gpLLgpYvgpJUg4KSX4KSw4KWN4KSoIOCkheCkuOCkq+CksiIKKworI34gbXNnaWQgImRpdmVyc2lvbnMgZmlsZSBoYXMgdG9vLWxvbmcgbGluZSBvciBFT0YgW2ldIgorI34gbXNnc3RyICJkaXZlcnNpb25zIOCkuOCkguCklyDgpIXgpKTgpL8g4KSy4KS+4KSu4KWLIOCksuCkvuCkh+CkqCDgpLXgpL4gIEVPRiBbaV0g4KSbIgorCisjfiBtc2dpZCAicmVhZCBlcnJvciBpbiBkaXZlcnNpb25zIFtpaV0iCisjfiBtc2dzdHIgImRpdmVyc2lvbnMgW2lpXSDgpK7gpL4g4KSk4KWN4KSw4KWB4KSf4KS/IOCkquCkouCljeCkqOClgeCkueCli+CkuOCljSIKKworI34gbXNnaWQgInVuZXhwZWN0ZWQgRU9GIGluIGRpdmVyc2lvbnMgW2lpXSIKKyN+IG1zZ3N0ciAiZGl2ZXJzaW9ucyBbaWldIOCkruCkviDgpIXgpKrgpY3gpLDgpKTgpY3gpK/gpL7gpLjgpL/gpKQgRU9GIgorCisjfiBtc2dpZCAiZmdldHMgZ2F2ZSBhbiBlbXB0eSBzdHJpbmcgZnJvbSBkaXZlcnNpb25zIFtpaV0iCisjfiBtc2dzdHIgImZnZXRzIOCksuClhyBkaXZlcnNpb25zIFtpaV0g4KSs4KS+4KSfIOCkj+CkieCkn+CkviDgpLDgpL/gpKTgpY3gpKTgpYsg4KS44KWN4KSf4KWN4KSw4KS/4KSZ4KWNIOCkpuCkv+Ckr+CliyIKKworI34gbXNnaWQgImRpdmVyc2lvbnMgZmlsZSBoYXMgdG9vLWxvbmcgbGluZSBvciBFT0YgW2lpXSIKKyN+IG1zZ3N0ciAiZGl2ZXJzaW9ucyDgpKvgpL7gpIfgpLIg4KS44KSB4KSXIOCkheCkpOCkvyDgpLLgpL7gpK7gpYsg4KSy4KS+4KSH4KSoIOCkteCkviBFT0YgW2lpXSDgpJsiCisKKyN+IG1zZ2lkICJyZWFkIGVycm9yIGluIGRpdmVyc2lvbnMgW2lpaV0iCisjfiBtc2dzdHIgImRpdmVyc2lvbnMgW2lpaV0g4KSu4KS+IOCkpOCljeCksOClgeCkn+CkvyDgpKrgpKLgpY3gpKjgpYHgpLngpYvgpLjgpY0iCisKKyN+IG1zZ2lkICJ1bmV4cGVjdGVkIEVPRiBpbiBkaXZlcnNpb25zIFtpaWldIgorI34gbXNnc3RyICJkaXZlcnNpb25zIFtpaWldIOCkruCkviDgpIXgpKrgpY3gpLDgpKTgpY3gpK/gpL7gpLjgpL/gpKQgRU9GIgorCisjfiBtc2dpZCAiZmdldHMgZ2F2ZSBhbiBlbXB0eSBzdHJpbmcgZnJvbSBkaXZlcnNpb25zIFtpaWldIgorI34gbXNnc3RyICJmZ2V0cyDgpLLgpYcgIGRpdmVyc2lvbnMgW2lpaV0g4KSs4KS+4KSfIOCkj+CkieCkn+CkviDgpLDgpL/gpKTgpY3gpKTgpYsg4KS44KWN4KSf4KWN4KSw4KS/4KSZ4KWNIOCkpuCkv+Ckr+CliyIKKworI34gbXNnaWQgImNvdWxkbid0IG1hbGxvYyBpbiBleGVjYmFja2VuZCIKKyN+IG1zZ3N0ciAiZXhlY2JhY2tlbmQg4KSu4KS+IOCkruCkvuCksuCli+CklSDgpJfgpLDgpY3gpKgg4KS44KSV4KWH4KSoIgorCisjfiBtc2dpZCAiY291bGRuJ3Qgc3RyZHVwIGluIGV4ZWNiYWNrZW5kIgorI34gbXNnc3RyICJleGVjYmFja2VuZCDgpK7gpL4gc3RyZHVwIOCkl+CksOCljeCkqCDgpLjgpJXgpYfgpKggIgorCisjfiBtc2dpZCAiZmFpbGVkIGFsbG9jYXRpbmcgbWVtb3J5IGZvciB2YXJpYWJsZSBgY3RybGFyZWEnIgorI34gbXNnc3RyICLgpJrgpLIgYGN0cmxhcmVhJyDgpJXgpL4g4KSy4KS+4KSX4KS/IOCkuOCljeCkruClg+CkpOCkvyDgpKzgpL7gpKHgpKvgpL7gpIHgpKEg4KSX4KSw4KWN4KSoIOCkheCkuOCkq+CksiIKKworI34gbXNnaWQgIkNhbm5vdCBnZXQgRU5PRU5UIHZhbHVlIGZyb20gJXM6ICVzIgorI34gbXNnc3RyICIlcyDgpKzgpL7gpJ8gRU5PRU5UIOCkruCkvuCkqCDgpKrgpY3gpLDgpL7gpKrgpY3gpKQg4KSX4KSw4KWN4KSoIOCkuOCkleCkv+CkpuCliOCkqDogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gZW5zdXJlICVzIG5vbmV4aXN0ZW50OiAlcyIKKyN+IG1zZ3N0ciAiJXMg4KSF4KS14KS44KWN4KSl4KS/4KSkIOCkqOCksOCkueClh+CkleCliyDgpK/gpJXgpL/gpKgg4KSX4KSw4KWN4KSoIOCkheCkleCljeCkt+CkrjogJXMiCisKKyN+IG1zZ2lkICIiCisjfiAid2FybmluZzogJXMgaXMgc3VwcG9zZWQgdG8gYmUgYSBzbGF2ZSBzeW1saW5rIHRvXG4iCisjfiAiICVzLCBvciBub25leGlzdGVudDsgaG93ZXZlciwgcmVhZGxpbmsgZmFpbGVkOiAlcyIKKyN+IG1zZ3N0ciAiIgorI34gIuCkmuClh+CkpOCkvuCkteCkqOClgCA6ICVzIOCksuCkvuCkiFxuIgorI34gIiAlcyDgpK7gpL4g4KS44KWN4KSy4KWH4KStIOCkuOCkv+CkruCksuCkv+CkmeCljeCklSwg4KS14KS+IOCkheCkteCkuOCljeCkpeCkv+CkpCDgpKjgpLDgpLngpYfgpJXgpYsg4KSu4KS+4KSo4KS/4KSo4KWN4KSbOyDgpK/gpKbgpY3gpK/gpKrgpYAsIOCksOCkv+CkoeCksuCkv+CkmeCljeCklSDgpIXgpLjgpKvgpLIg4KSt4KSv4KWLOiAlcyIKKworI34gbXNnaWQgIiIKKyN+ICJkcGtnOiByZWdhcmRpbmcgJXMgY29udGFpbmluZyAlczpcbiIKKyN+ICIgcGFja2FnZSB1c2VzIEJyZWFrczsgbm90IHN1cHBvcnRlZCBpbiB0aGlzIGRwa2dcbiIKKyN+IG1zZ3N0ciAiIgorI34gImRwa2c6ICVzIOCkteCkv+CkmuCkvuCksCDgpJfgpLDgpY3gpKbgpYggJXMg4KS44KSu4KS+4KS54KS/4KSkOlxuIgorI34gIiDgpKrgpY3gpK/gpL7gpJXgpYfgpJzgpLLgpYcg4KS14KS/4KSa4KWN4KSb4KWH4KSmIOCkquCljeCksOCkr+Cli+CklyDgpJfgpLDgpY3gpKbgpJs7IGRwa2cg4KSu4KS+IOCkuOCkruCksOCljeCkpeCkqCDgpJfgpLDgpY3gpKbgpYjgpKhcbiIKKworI34gbXNnaWQgInVuc3VwcG9ydGVkIGRlcGVuZGVuY3kgcHJvYmxlbSAtIG5vdCBpbnN0YWxsaW5nICUuMjUwcyIKKyN+IG1zZ3N0ciAi4KSF4KS44KSu4KSw4KWN4KSl4KS/4KSkIOCkhuCktuCljeCksOCkv+CkpCDgpLjgpK7gpLjgpY3gpK/gpL4gLSAlLjI1MHMg4KS44KWN4KSl4KS+4KSq4KSo4KS+IOCkreCkj+CkqCIKKworI34gbXNnaWQgImRwa2c6IHdhcm5pbmcgLSBpZ25vcmluZyBCcmVha3MgIVxuIgorI34gbXNnc3RyICJkcGtnOiDgpJrgpYfgpKTgpL7gpLXgpKjgpYAgLSDgpLXgpL/gpJrgpY3gpJvgpYfgpKYg4KSJ4KSq4KWH4KSV4KWN4KS34KS+ICFcbiIKKworI34gbXNnaWQgInRvIgorI34gbXNnc3RyICLgpLLgpL7gpIgiCisKKyN+IG1zZ2lkICJmcm9tIgorI34gbXNnc3RyICLgpKzgpL7gpJ8iCisKKyN+IG1zZ2lkICJlcnJvciByZWFkaW5nICVzIgorI34gbXNnc3RyICIgJXMg4KSq4KSi4KWN4KSm4KS+IOCkpOCljeCksOClgeCkn+CkvyIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvcG8vbmwuZ21vIGIvZHBrZy0xLjE2LjEuMS9wby9ubC5nbW8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDRiMzA5MwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvcG8vbmwuZ21vCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvcG8vbmwucG8gYi9kcGtnLTEuMTYuMS4xL3BvL25sLnBvCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjMyODgyY2UKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3BvL25sLnBvCkBAIC0wLDAgKzEsNzI1NiBAQAorbXNnaWQgIiIKK21zZ3N0ciAiIgorIlByb2plY3QtSWQtVmVyc2lvbjogZHBrZyAxLjkuNFxuIgorIlJlcG9ydC1Nc2dpZC1CdWdzLVRvOiBkZWJpYW4tZHBrZ0BsaXN0cy5kZWJpYW4ub3JnXG4iCisiUE9ULUNyZWF0aW9uLURhdGU6IDIwMTEtMTAtMTQgMDc6MTErMDIwMFxuIgorIlBPLVJldmlzaW9uLURhdGU6IDIwMDctMDUtMTAgMTY6MTkrMDEwMFxuIgorIkxhc3QtVHJhbnNsYXRvcjogQmFydCBDb3JuZWxpcyA8Y29iYWNvQHNrb2xlbGludXgubm8+XG4iCisiTGFuZ3VhZ2UtVGVhbTogRHV0Y2ggPGRlYmlhbi1sMTBuLWR1dGNoQGRlYmlhbi5vcmc+XG4iCisiTGFuZ3VhZ2U6IG5sXG4iCisiTUlNRS1WZXJzaW9uOiAxLjBcbiIKKyJDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9VVRGLThcbiIKKyJDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiA4Yml0XG4iCisKKyM6IGxpYi9kcGtnL2FyLmM6NjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgJyVjJyBpbiBhcmNoaXZlICclLjI1MHMnIG1lbWJlciAnJS4xNnMnIHNpemUiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvYXIuYzo4MSBsaWIvZHBrZy9hci5jOjk3IGxpYi9kcGtnL2FyLmM6MTA4IGxpYi9kcGtnL2FyLmM6MTEyCisjOiBsaWIvZHBrZy9hci5jOjEzNCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE1NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIGZpbGUgJyVzJyIKK21zZ3N0ciAia2FuIGJyb25iZXN0YW5kIGAlLjI1MHMnIG5pZXQgb3BlbmVuIgorCisjOiBsaWIvZHBrZy9hci5jOjk0CisjLCBjLWZvcm1hdAorbXNnaWQgImdlbmVyYXRlZCBjb3JydXB0IGFyIGhlYWRlciBmb3IgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9hci5jOjEyMworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGFyIG1lbWJlciBmaWxlICglcykiCittc2dzdHIgImFhbm1ha2VuIHRtcGZpbGUgKGRhdGEpIGlzIG1pc2x1a3QiCisKKyM6IGxpYi9kcGtnL2FyLmM6MTMwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJhciBtZW1iZXIgZmlsZSAoJXMpIgorbXNnc3RyICJhYW5tYWtlbiB0bXBmaWxlIChkYXRhKSBpcyBtaXNsdWt0IgorCisjOiBsaWIvZHBrZy9idWZmZXIuYzoxOTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZWFkIG9uIGJ1ZmZlciBjb3B5IGZvciAlcyIKK21zZ3N0ciAiZm91dCBpbiBidWZmZXJfY29weSAoJXMpIgorCisjOiBsaWIvZHBrZy9idWZmZXIuYzoyMTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCBpbiB3cml0ZSBvbiBidWZmZXIgY29weSBmb3IgJXMiCittc2dzdHIgImZvdXQgaW4gYnVmZmVyX2NvcHkgKCVzKSIKKworIzogbGliL2Rwa2cvYnVmZmVyLmM6MjIwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJzaG9ydCByZWFkIG9uIGJ1ZmZlciBjb3B5IGZvciAlcyIKK21zZ3N0ciAic2hvcnQgcmVhZCBpbiBidWZmZXJfY29weSAoJXMpIgorCisjOiBsaWIvZHBrZy9idWZmZXIuYzoyODgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byBleGVjIHRhciIKK21zZ2lkICJmYWlsZWQgdG8gc2VlayAlcyIKK21zZ3N0ciAidWl0dm9lcmVuIHZhbiB0YXIgaXMgbWlzbHVrdCIKKworIzogbGliL2Rwa2cvY29tbWFuZC5jOjE3OCBsaWIvZHBrZy9jb21tYW5kLmM6MjA0IHNyYy9oZWxwLmM6NjIxCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjk4IHNyYy9wcm9jZXNzYXJjLmM6MTM4IHNyYy9wcm9jZXNzYXJjLmM6NDMyCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjgzOSBkcGtnLWRlYi9idWlsZC5jOjQ1OSBkcGtnLWRlYi9idWlsZC5jOjUzOAorIzogZHBrZy1kZWIvYnVpbGQuYzo1NjEgZHBrZy1kZWIvZXh0cmFjdC5jOjMxNyBkcGtnLWRlYi9pbmZvLmM6NjUKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzo2OSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NDU3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZXhlY3V0ZSAlcyAoJXMpIgorbXNnc3RyICJrYW4gJXMgbmlldCB1aXR2b2VyZW4iCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGRlY29tcHJlc3Npb24iCittc2dzdHIgIiVzOiBkZWNvbXByZXNzaWUiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6ODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGNvbXByZXNzaW9uIgorbXNnc3RyICIlczogY29tcHJlc3NpZSIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yIGJpbmRpbmcgaW5wdXQgdG8gZ3ppcCBzdHJlYW0iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxMjQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHJlYWQgZXJyb3I6ICclcyciCittc2dzdHIgIiVzOiBpbnRlcm5lIGd6aXAgZm91dCBgJXMnIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjEzMiBsaWIvZHBrZy9jb21wcmVzcy5jOjEzNgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgd3JpdGUgZXJyb3IiCittc2dzdHIgIiVzOiBpbnRlcm5lIGd6aXAgZm91dCBgJXMnIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE1MAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZXJyb3IgYmluZGluZyBvdXRwdXQgdG8gZ3ppcCBzdHJlYW0iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxNTcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHJlYWQgZXJyb3IiCittc2dzdHIgIiVzOiBpbnRlcm5lIGd6aXAgZm91dCBgJXMnIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE2NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgd3JpdGUgZXJyb3I6ICclcyciCittc2dzdHIgIiVzOiBpbnRlcm5lIGd6aXAgZm91dCBgJXMnIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE4MAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgd3JpdGUgZXJyb3I6ICVzIgorbXNnc3RyICIlczogaW50ZXJuZSBnemlwIGZvdXQgYCVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyMjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yIGJpbmRpbmcgaW5wdXQgdG8gYnppcDIgc3RyZWFtIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjMyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgcmVhZCBlcnJvcjogJyVzJyIKK21zZ3N0ciAiJXM6IGludGVybmUgYnppcDIgZm91dCBgJXMnIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI0MCBsaWIvZHBrZy9jb21wcmVzcy5jOjI0NCBsaWIvZHBrZy9jb21wcmVzcy5jOjI5NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIHdyaXRlIGVycm9yIgorbXNnc3RyICIlczogaW50ZXJuZSBiemlwMiBmb3V0IGAlcyciCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjU4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvciBiaW5kaW5nIG91dHB1dCB0byBiemlwMiBzdHJlYW0iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyNjUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiByZWFkIGVycm9yIgorbXNnc3RyICIlczogaW50ZXJuZSBiemlwMiBmb3V0IGAlcyciCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6Mjc1IGxpYi9kcGtnL2NvbXByZXNzLmM6Mjg2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgd3JpdGUgZXJyb3I6ICclcyciCittc2dzdHIgIiVzOiBpbnRlcm5lIGJ6aXAyIGZvdXQgYCVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyODIKK21zZ2lkICJ1bmV4cGVjdGVkIGJ6aXAyIGVycm9yIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVwZGF0ZXMgZGlyZWN0b3J5IGNvbnRhaW5zIGZpbGUgYCUuMjUwcycgd2hvc2UgbmFtZSBpcyB0b28gbG9uZyAobGVuZ3RoPSVkLCAiCisibWF4PSVkKSIKK21zZ3N0ciAiIgorImRlIG1hcCB1cGRhdGVzIGJldmF0IGVlbiBiZXN0YW5kIGAlLjI1MHMnIHdhYXJ2YW4gZGUgbmFhbSB0ZSBsYW5nIGlzIChsZW5ndGU9IgorIiVkLCBtYXg9JWQpIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1cGRhdGVzIGRpcmVjdG9yeSBjb250YWlucyBmaWxlcyB3aXRoIGRpZmZlcmVudCBsZW5ndGggbmFtZXMgKGJvdGggJWQgYW5kICVkKSIKK21zZ3N0ciAiIgorImRlIG1hcCB1cGRhdGVzIGJldmF0IGJlc3RhbmRlbiBtZXQgbmFtZW4gdmFuIHZlcnNjaGlsbGVuZGUgbGVuZ3RlICh6b3dlbCAlZCAiCisiYWxzICVkKSIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzo4NgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc2NhbiB1cGRhdGVzIGRpcmVjdG9yeSBgJS4yNTVzJyIKK21zZ3N0ciAia2FuICd1cGRhdGVzJy1tYXAgYCUuMjU1cycgbmlldCBzY2FubmVuIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVtb3ZlIGluY29ycG9yYXRlZCB1cGRhdGUgZmlsZSAlLjI1NXMiCittc2dzdHIgInZlcndpamRlcmVuIHZhbiBpbiByZWtlbmluZyBnZW5vbWVuICd1cGRhdGUnLWJlc3RhbmQgJS4yNTVzIGlzIG1pc2x1a3QiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTIxIGRwa2ctZGViL2J1aWxkLmM6NDQ3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgYCUuMjU1cyciCittc2dzdHIgImthbiBgJS4yNTVzJyBuaWV0IGFhbm1ha2VuIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEyNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmlsbCAlLjI1MHMgd2l0aCBwYWRkaW5nIgorbXNnc3RyICJrYW4gJS4yNTBzIG5pZXQgb3B2dWxsZW4iCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTI3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCAlLjI1MHMgYWZ0ZXIgcGFkZGluZyIKK21zZ3N0ciAia2FuICUuMjUwcyBuaWV0IGRvb3JzcG9lbGVuIG5hIG9wdnVsbGluZyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxMjkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNlZWsgdG8gc3RhcnQgb2YgJS4yNTBzIGFmdGVyIHBhZGRpbmciCittc2dzdHIgImthbiBuaWV0IG5hYXIgaGV0IGJlZ2luIHZhbiAlLjI1MHMgZ2FhbiBuYSBvcHZ1bGxpbmciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTk1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gb3BlbiB0bXBmaWxlIGZvciB2c25wcmludGYiCittc2dpZCAidW5hYmxlIHRvIG9wZW4gbG9jayBmaWxlICVzIGZvciB0ZXN0aW5nIgorbXNnc3RyICJrYW4gaGV0IHRpamRlbGlqa2UgYmVzdGFuZCB2b29yIHZzbnByaW50ZiBuaWV0IG9wZW5lbiIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyMjEKK21zZ2lkICJ1bmFibGUgdG8gb3Blbi9jcmVhdGUgc3RhdHVzIGRhdGFiYXNlIGxvY2tmaWxlIgorbXNnc3RyICJrYW4gaGV0IHN0YXR1c2RhdGFiYXNlIHZlcmdyZW5kZWxpbmdzYmVzdGFuZCBuaWV0IG9wZW5lbi9hYW5tYWtlbiIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyMzEKK21zZ2lkICJ5b3UgZG8gbm90IGhhdmUgcGVybWlzc2lvbiB0byBsb2NrIHRoZSBkcGtnIHN0YXR1cyBkYXRhYmFzZSIKK21zZ3N0ciAiIgorInUgaGVlZnQgZGUgYmVub2RpZ2RlIHJlY2h0ZW4gbmlldCBvbSBkcGtnIHN0YXR1c2RhdGFiYXNlIHRlIHZlcmdyZW5kZWxlbiIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyMzMKKyMsIGZ1enp5CisjfCBtc2dpZCAidW5hYmxlIHRvIGxvY2sgZHBrZyBzdGF0dXMgZGF0YWJhc2UiCittc2dpZCAiZHBrZyBzdGF0dXMgZGF0YWJhc2UiCittc2dzdHIgImthbiBkZSAnZHBrZyctc3RhdHVzZGF0YWJhc2UgbmlldCB2ZXJncmVuZGVsZW4iCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjU3Cittc2dpZCAicmVxdWVzdGVkIG9wZXJhdGlvbiByZXF1aXJlcyBzdXBlcnVzZXIgcHJpdmlsZWdlIgorbXNnc3RyICJkZXplIGJld2Vya2luZyBrYW4gYWxsZWVuIHVpdGdldm9lcmQgd29yZGVuIGRvb3IgZGUgYmVoZWVyZGVyIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjI2MgorbXNnaWQgInVuYWJsZSB0byBhY2Nlc3MgZHBrZyBzdGF0dXMgYXJlYSIKK21zZ3N0ciAia2FuIG5pZXQgYmlubmVuIGJpaiBoZXQgc3RhdHVzZ2ViaWVkIHZhbiBkcGtnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjI2NAorbXNnaWQgIm9wZXJhdGlvbiByZXF1aXJlcyByZWFkL3dyaXRlIGFjY2VzcyB0byBkcGtnIHN0YXR1cyBhcmVhIgorbXNnc3RyICIiCisidm9vciBkZXplIGJld2Vya2luZyB6aWpuIGxlZXMtIGVuIHNjaHJpamZyZWNodGVuIG5vZGlnIGluIGhldCBkcGtnICIKKyJzdGF0dXNnZWJpZWQiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzA5CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZW1vdmUgbXkgb3duIHVwZGF0ZSBmaWxlICUuMjU1cyIKK21zZ3N0ciAia2FuIG1pam4gZWlnZW4gdXBkYXRlIGJlc3RhbmQgJS4yNTVzIG5pZXQgdmVyd2lqZGVyZW4iCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzQ3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAia2FuIGRlIG5pZXV3ZSBzdGF0dXMgdmFuIGAlLjI1MHMnIG5pZXQgd2Vnc2NocmlqdmVuIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM0OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgImthbiBkZSBuaWV1d2Ugc3RhdHVzIHZhbiBgJS4yNTBzJyBuaWV0IGRvb3JzcG9lbGVuIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM1MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gdHJ1bmNhdGUgZm9yIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJrYW4gbmlldCBhZmthcHBlbiB2b29yIGRlIG5pZXV3ZSBzdGF0dXMgdmFuIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM1MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZnN5bmMgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgImthbiBuaWV1d2Ugc3RhdHVzIHZhbiBgJS4yNTBzJyBuaWV0IHN5bmNocm9uaXNlcmVuIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM1NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgImthbiBuaWV1d2Ugc3RhdHVzIHZhbiBgJS4yNTBzJyBuaWV0IGFmc2x1aXRlbiIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgImthbiBuaWV1d2Ugc3RhdHVzIHZhbiBgJS4yNTBzJyBuaWV0IGluc3RhbGxlcmVuIgorCisjOiBsaWIvZHBrZy9kaXIuYzo1MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHJlYWQgZmlsZWRlc2NyaXB0b3IgZmxhZ3MgZm9yICUuMjUwcyIKK21zZ2lkICJ1bmFibGUgdG8gZ2V0IGZpbGUgZGVzY3JpcHRvciBmb3IgZGlyZWN0b3J5ICclcyciCittc2dzdHIgImthbiBkZSBiZXN0YW5kc2Jlc2NocmlqdmluZ3N2bGFnZ2VuIHZvb3IgJS4yNTBzIG5pZXQgbGV6ZW4iCisKKyM6IGxpYi9kcGtnL2Rpci5jOjU0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBkaXJlY3RvcnkgJyVzJyIKK21zZ3N0ciAia2FuIGJyb25iZXN0YW5kIGAlLjI1MHMnIG5pZXQgb3BlbmVuIgorCisjOiBsaWIvZHBrZy9kaXIuYzo2OSBsaWIvZHBrZy9kaXIuYzoxMzEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICJrYW4gYnJvbmJlc3RhbmQgYCUuMjUwcycgbmlldCBvcGVuZW4iCisKKyM6IGxpYi9kcGtnL2Rpci5jOjEwOSBzcmMvZGl2ZXJ0Y21kLmM6MjE4IGRwa2ctc3BsaXQvc3BsaXQuYzoyMDIKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjkzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBmaWxlICclcyciCittc2dzdHIgImthbiBicm9uYmVzdGFuZCBgJS4yNTBzJyBuaWV0IG9wZW5lbiIKKworIzogbGliL2Rwa2cvZGlyLmM6MTExIHNyYy9kaXZlcnRjbWQuYzoyMzIgc3JjL2RpdmVydGNtZC5jOjM3NworIzogc3JjL3N0YXRjbWQuYzoyMTcgZHBrZy1kZWIvYnVpbGQuYzo1OTggZHBrZy1zcGxpdC9qb2luLmM6NjUKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxODcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE0MDYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzeW5jIGZpbGUgJyVzJyIKK21zZ3N0ciAia2FuIGJyb25iZXN0YW5kIGAlLjI1MHMnIG5pZXQgb3BlbmVuIgorCisjOiBsaWIvZHBrZy9kaXIuYzoxMTMgc3JjL2RpdmVydGNtZC5jOjIzNCBzcmMvZGl2ZXJ0Y21kLmM6Mzc5CisjOiBkcGtnLWRlYi9idWlsZC5jOjYwMCBkcGtnLXNwbGl0L2pvaW4uYzo2NyBkcGtnLXNwbGl0L3F1ZXVlLmM6MTg5CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTMxNCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTQwOAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIGZpbGUgJyVzJyIKK21zZ3N0ciAia2FuIG5pZXQgZG9vcnNwb2VsZW4gaW4gdnNucHJpbnRmIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6Mzk2CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB3cml0ZSBkZXRhaWxzIG9mIGAlLjUwcycgdG8gYCUuMjUwcyciCittc2dzdHIgIndlZ3NjaHJpanZlbiBkZXRhaWxzICclLjUwcycgdG90ICclLjI1MHMnIGlzIG1pc2x1a3QiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0MjMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuICclcycgZm9yIHdyaXRpbmcgJXMgZGF0YWJhc2UiCittc2dzdHIgImthbiBgJXMnIG5pZXQgb3BlbmVuIG9tICVzLWluZm9ybWF0aWUgdGUgc2NocmlqdmVuIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDI2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IGJ1ZmZlcmluZyBvbiAlcyBkYXRhYmFzZSBmaWxlIgorbXNnc3RyICJrYW4gZ2VlbiBidWZmZXIgaW5zdGVsbGVuIG9wIGhldCBzdGF0dXNiZXN0YW5kIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDM4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgJXMgZGF0YWJhc2UgcmVjb3JkIGFib3V0ICclLjUwcycgdG8gJyUuMjUwcyciCittc2dzdHIgImhldCBzY2hyaWp2ZW4gdmFuIGVlbiAlcy12ZWxkIG92ZXIgYCUuNTBzJyBuYWFyIGAlLjI1MHMnIGlzIG1pc2x1a3QiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NDYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBmbHVzaCAlcyBkYXRhYmFzZSB0byAnJS4yNTBzJyIKK21zZ3N0ciAiaGV0IGRvb3JzcG9lbGVuIHZhbiAlcyBpbmZvcm1hdGllIG5hYXIgYCUuMjUwcycgaXMgbWlzbHVrdCIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ0OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZzeW5jICVzIGRhdGFiYXNlIHRvICclLjI1MHMnIgorbXNnc3RyICJmc3luYyB2YW4gJXMgaW5mb3JtYXRpZSBuYWFyIGAlLjI1MHMnIGlzIG1pc2x1a3QiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjbG9zZSAnJS4yNTBzJyBhZnRlciB3cml0aW5nICVzIGRhdGFiYXNlIgorbXNnc3RyICJzbHVpdGVuIHZhbiBgJS4yNTBzJyBpcyBtaXNsdWt0IHZhbiBzY2hyaWp2ZW4gdmFuICVzIGluZm9ybWF0aWUiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NTUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBsaW5rICclLjI1MHMnIHRvICclLjI1MHMnIGZvciBiYWNrdXAgb2YgJXMgZGF0YWJhc2UiCittc2dzdHIgImthbiBgJS4yNTBzJyBuaWV0IG5hYXIgYCUuMjUwcycga29wcGVsZW4gb20gJXMgaW5mb3JtYXRpZSB0ZSBiZXdhcmVuIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDU4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gaW5zdGFsbCAnJS4yNTBzJyBhcyAnJS4yNTBzJyBjb250YWluaW5nICVzIGRhdGFiYXNlIgorbXNnc3RyICJrYW4gYCUuMjUwcycgbmlldCBhbHMgYCUuMjUwcycgaW5zdGFsbGVyZW4gbWV0ICVzIGluZm9ybWF0aWUiCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzo5NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IHVucmVjb3ZlcmFibGUgZmF0YWwgZXJyb3IsIGFib3J0aW5nOlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoxMDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBvdXRzaWRlIGVycm9yIGNvbnRleHQsIGFib3J0aW5nOlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoxMjAKKyMsIGZ1enp5CisjfCBtc2dpZCAib3V0IG9mIG1lbW9yeSBmb3IgbmV3IGNsZWFudXAgZW50cnkiCittc2dpZCAib3V0IG9mIG1lbW9yeSBmb3IgbmV3IGVycm9yIGNvbnRleHQiCittc2dzdHIgImdlZW4gZ2VoZXVnZW4gbWVlciB2b29yIGVlbiBuaWV1d2Ugb3BzY2hvb24taW5nYW5nIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MTgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogZXJyb3Igd2hpbGUgY2xlYW5pbmcgdXA6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKyIlczogZm91dCB0aWpkZW5zIG9wcnVpbWVuOlxuIgorIiAlc1xuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MjAxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJkcGtnOiB0b28gbWFueSBuZXN0ZWQgZXJyb3JzIGR1cmluZyBlcnJvciByZWNvdmVyeSAhIVxuIgorbXNnaWQgIiVzOiB0b28gbWFueSBuZXN0ZWQgZXJyb3JzIGR1cmluZyBlcnJvciByZWNvdmVyeSEhXG4iCittc2dzdHIgImRwa2c6IHRlIHZlZWwgZ2VuZXN0ZSBmb3V0ZW4gdGlqZGVucyBmb3V0aGVyc3RlbCAhIVxuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MjY4IGxpYi9kcGtnL2VoYW5kbGUuYzozMDcKK21zZ2lkICJvdXQgb2YgbWVtb3J5IGZvciBuZXcgY2xlYW51cCBlbnRyeSIKK21zZ3N0ciAiZ2VlbiBnZWhldWdlbiBtZWVyIHZvb3IgZWVuIG5pZXV3ZSBvcHNjaG9vbi1pbmdhbmciCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoyOTEKK21zZ2lkICJvdXQgb2YgbWVtb3J5IGZvciBuZXcgY2xlYW51cCBlbnRyeSB3aXRoIG1hbnkgYXJndW1lbnRzIgorbXNnc3RyICJnZWVuIGdlaGV1Z2VuIG1lZXIgdm9vciBlZW4gbmlldXdlIG9wc2Nob29uLWluZ2FuZyBtZXQgdmVlbCBhcmd1bWVudGVuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MzUyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogZXJyb3I6ICVzXG4iCittc2dzdHIgIiIKKyIlczogZm91dCB0aWpkZW5zIG9wcnVpbWVuOlxuIgorIiAlc1xuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MzkzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogd2FybmluZzogJXNcbiIKK21zZ3N0ciAiIgorIiVzOiBmb3V0IHRpamRlbnMgb3BydWltZW46XG4iCisiICVzXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzo0MTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiVzOiVkOiBpbnRlcm5hbCBlcnJvcjogJXNcbiIKK21zZ3N0ciAiJXM6JWQ6IGludGVybmUgZm91dCBgJXMnXG4iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGlzIG1pc3NpbmciCittc2dzdHIgIiVzIG9udGJyZWVrdCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImAlLipzJyBpcyBub3QgYWxsb3dlZCBmb3IgJXMiCittc2dpZCAiJyUuNTBzJyBpcyBub3QgYWxsb3dlZCBmb3IgJXMiCittc2dzdHIgImAlLipzJyBpcyBuaWV0IHRvZWdlc3RhYW4gdm9vciAlcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NzMKKyMsIGMtZm9ybWF0Cittc2dpZCAianVuayBhZnRlciAlcyIKK21zZ3N0ciAicm9tbWVsIG5hICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo4NworIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHBhY2thZ2UgbmFtZSAoJS4yNTBzKSIKK21zZ3N0ciAib25nZWxkaWdlIHBha2tldG5hYW0gKCUuMjUwcykiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJlbXB0eSBmaWxlIGRldGFpbHMgZmllbGQgYCVzJyIKK21zZ3N0ciAibGVlZyB2ZWxkIHZvb3IgYmVzdGFuZHNkZXRhaWxzIGAlcyciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjEwNQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGRldGFpbHMgZmllbGQgYCVzJyBub3QgYWxsb3dlZCBpbiBzdGF0dXMgZmlsZSIKK21zZ3N0ciAidmVsZCB2b29yIGJlc3RhbmRzZGV0YWlscyBgJXMnIG5pZXQgdG9lZ2VzdGFhbiBpbiBzdGF0dXNiZXN0YW5kIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidG9vIG1hbnkgdmFsdWVzIGluIGZpbGUgZGV0YWlscyBmaWVsZCBgJXMnIChjb21wYXJlZCB0byBvdGhlcnMpIgorbXNnc3RyICIiCisidGUgdmVlbCB3YWFyZGVuIGluIHZlbGQgdm9vciBiZXN0YW5kc2RldGFpbHMgYCVzJyAodmVyZ2VsZWtlbiBtZXQgYW5kZXJlbikiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjEzMgorIywgYy1mb3JtYXQKK21zZ2lkICJ0b28gZmV3IHZhbHVlcyBpbiBmaWxlIGRldGFpbHMgZmllbGQgYCVzJyAoY29tcGFyZWQgdG8gb3RoZXJzKSIKK21zZ3N0ciAiIgorInRlIHdlaW5pZyB3YWFyZGVuIGluIGhldCB2ZWxkIHZvb3IgYmVzdGFuZHNkZXRhaWxzIGAlcycgKHZlcmdlbGVrZW4gbWV0ICIKKyJhbmRlcmVuKSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTU0Cittc2dpZCAieWVzL25vIGluIGJvb2xlYW4gZmllbGQiCittc2dzdHIgInllcy9ubyBpbiBib29sZWFuIHZlbGQiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE3NAorbXNnaWQgIndvcmQgaW4gYHByaW9yaXR5JyBmaWVsZCIKK21zZ3N0ciAid29vcmQgaW4gJ3ByaW9yaXRlaXQnLXZlbGQiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE4NgorbXNnaWQgInZhbHVlIGZvciBgc3RhdHVzJyBmaWVsZCBub3QgYWxsb3dlZCBpbiB0aGlzIGNvbnRleHQiCittc2dzdHIgIndhYXJkZSB2b29yIGBzdGF0dXMnLXZlbGQgaXMgbmlldCB0b2VnZXN0YWFuIGluIGRlemUgY29udGV4dCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTkxCittc2dpZCAiZmlyc3QgKHdhbnQpIHdvcmQgaW4gYHN0YXR1cycgZmllbGQiCittc2dzdHIgImVlcnN0ZSAod2FudCkgd29vcmQgaW4gYHN0YXR1cyctdmVsZCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTk0Cittc2dpZCAic2Vjb25kIChlcnJvcikgd29yZCBpbiBgc3RhdHVzJyBmaWVsZCIKK21zZ3N0ciAiVHdlZWRlIChlcnJvcikgd29vcmQgaW4gYHN0YXR1cyctdmVsZCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTk3Cittc2dpZCAidGhpcmQgKHN0YXR1cykgd29yZCBpbiBgc3RhdHVzJyBmaWVsZCIKK21zZ3N0ciAiZGVyZGUgKHN0YXR1cykgd29vcmQgaW4gYHN0YXR1cyctdmVsZCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjA3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJlcnJvciBpbiBWZXJzaW9uIHN0cmluZyBgJS4yNTBzJzogJS4yNTBzIgorbXNnaWQgImVycm9yIGluIFZlcnNpb24gc3RyaW5nICclLjI1MHMnIgorbXNnc3RyICJmb3V0IGluIFZlcnNpb24gc3RyaW5nIGAlLjI1MHMnOiAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjIxOAorbXNnaWQgIm9ic29sZXRlIGBSZXZpc2lvbicgb3IgYFBhY2thZ2UtUmV2aXNpb24nIGZpZWxkIHVzZWQiCittc2dzdHIgInZlcm91ZGVyZGUgYFJldmlzaW9uJyBvZiBgUGFja2FnZS1SZXZpc2lvbictdmVsZCBnZWJydWlrdCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjM1Cittc2dpZCAidmFsdWUgZm9yIGBjb25maWctdmVyc2lvbicgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICJ3YWFyZGUgdm9vciBgY29uZmlnLXZlcnNpb24nLXZlbGQgbmlldCB0b2VnZXN0YWFuIGluIGRlemUgY29udGV4dCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjQwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJlcnJvciBpbiBDb25maWctVmVyc2lvbiBzdHJpbmcgYCUuMjUwcyc6ICUuMjUwcyIKK21zZ2lkICJlcnJvciBpbiBDb25maWctVmVyc2lvbiBzdHJpbmcgJyUuMjUwcyciCittc2dzdHIgImZvdXQgaW4gJ0NvbmZpZy1WZXJzaW9uJy1zdHJpbmcgYCUuMjUwcyc6ICUuMjUwcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjY2CisjLCBjLWZvcm1hdAorbXNnaWQgInZhbHVlIGZvciBgY29uZmZpbGVzJyBoYXMgbWFsZm9ybWF0dGVkIGxpbmUgYCUuKnMnIgorbXNnc3RyICJ3YWFyZGUgdm9vciBgY29uZmZpbGVzJyBoZWVmdCBlZW4gdmVya2VlcmQgb3BnZW1hYWt0ZSByZWdlbCBgJS4qcyciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjI4NworIywgYy1mb3JtYXQKK21zZ2lkICJ2YWx1ZSBmb3IgYGNvbmZmaWxlcycgaGFzIGxpbmUgc3RhcnRpbmcgd2l0aCBub24tc3BhY2UgYCVjJyIKK21zZ3N0ciAiIgorIndhYXJkZSB2b29yIGBjb25mZmlsZXMnIGhlZWZ0IGVlbiByZWdlbCBkaWUgbmlldCBiZWdpbnQgbWV0IGVlbiBzcGF0aWUgKGAlYycpIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzozMDQKK21zZ2lkICJyb290IG9yIG51bGwgZGlyZWN0b3J5IGlzIGxpc3RlZCBhcyBhIGNvbmZmaWxlIgorbXNnc3RyICJob29mZC0gb2YgbnVsbC1tYXAgd29yZHQgZ2Vub2VtZCBhbHMgZWVuIGNvbmZmaWxlIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzozNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIG1pc3NpbmcgcGFja2FnZSBuYW1lLCBvciBnYXJiYWdlIHdoZXJlIHBhY2thZ2UgbmFtZSBleHBlY3RlZCIKK21zZ3N0ciAiIgorImAlcyctdmVsZCwgb250YnJla2VuZGUgcGFra2V0bmFhbSwgb2Ygcm9tbWVsIHdhYXIgZWVuIHBha2tldG5hYW0gd2VyZCAiCisidmVyd2FjaHQiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjM3MAorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGZpZWxkLCBpbnZhbGlkIHBhY2thZ2UgbmFtZSBgJS4yNTVzJzogJXMiCittc2dzdHIgImAlcyctdmVsZCwgb25nZWxkaWdlIHBha2tldG5hYW0gYCUuMjU1cyc6ICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgYmFkIHZlcnNpb24gcmVsYXRpb25zaGlwICVjJWMiCittc2dzdHIgIiIKKyJgJXMnLXZlbGQsIHZlcndpanppbmcgbmFhciBgJS4yNTVzJzpcbiIKKyIgZm91dGUgdmVyc2llLXJlbGF0aWUgJWMlYyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDEyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6XG4iCisiIGAlYycgaXMgb2Jzb2xldGUsIHVzZSBgJWM9JyBvciBgJWMlYycgaW5zdGVhZCIKK21zZ3N0ciAiIgorImAlcyctdmVsZCwgdmVyd2lqemluZyBuYWFyIGAlLjI1NXMnOlxuIgorIiBgJWMnIGlzIHZlcm91ZGVyZCwgZ2VicnVpayBgJWM9JyBvZiBgJWMlYyciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQyMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOlxuIgorIiBpbXBsaWNpdCBleGFjdCBtYXRjaCBvbiB2ZXJzaW9uIG51bWJlciwgc3VnZ2VzdCB1c2luZyBgPScgaW5zdGVhZCIKK21zZ3N0ciAiIgorImAlcyctdmVsZCwgdmVyd2lqemluZyBuYWFyIGAlLjI1NXMnOlxuIgorIiBpbXBsaWNpZXRlIGV4YWN0ZSBvdmVyZWVua29tc3QgaW4gdmVyc2llbnVtbWVyLCBnZWJydWlrIGA9JyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDMwCittc2dpZCAiT25seSBleGFjdCB2ZXJzaW9ucyBtYXkgYmUgdXNlZCBmb3IgUHJvdmlkZXMiCittc2dzdHIgIlNsZWNodHMgZXhhY3RlIHZlcnNpZXMgbW9nZW4gZ2VicnVpa3Qgd29yZGVuIHZvb3IgUHJvdmlkZXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQzNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOlxuIgorIiB2ZXJzaW9uIHZhbHVlIHN0YXJ0cyB3aXRoIG5vbi1hbHBoYW51bWVyaWMsIHN1Z2dlc3QgYWRkaW5nIGEgc3BhY2UiCittc2dzdHIgIiIKKyJgJXMnLXZlbGQsIHZlcndpanppbmcgbmFhciBgJS4yNTVzJzpcbiIKKyIgdmVyc2lld2FhcmRlIGJlZ2ludCBtZXQgZWVuIG5pZXQtYWxmYW51bWVyaWVrIHRla2VuLCB2b2VnIGJpanYuIGVlbiBzcGF0aWUgIgorInRvZSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDUxIGxpYi9kcGtnL2ZpZWxkcy5jOjQ1NQorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6IHZlcnNpb24gY29udGFpbnMgYCVjJyIKK21zZ3N0ciAiYCVzJy12ZWxkLCB2ZXJ3aWp6aW5nIG5hYXIgYCUuMjU1cyc6IHZlcnNpZSBiZXZhdCBgJWMnIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOiB2ZXJzaW9uIHVudGVybWluYXRlZCIKK21zZ3N0ciAiYCVzJy12ZWxkLCB2ZXJ3aWp6aW5nIG5hYXIgYCUuMjU1cyc6IHZlcnNpZSBuaWV0IGFmZ2VzbG90ZW4iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ2NQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOiBlcnJvciBpbiB2ZXJzaW9uOiAlLjI1NXMiCittc2dpZCAiJyVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvICclLjI1NXMnOiBlcnJvciBpbiB2ZXJzaW9uIgorbXNnc3RyICJgJXMnLXZlbGQsIHZlcndpanppbmcgbmFhciBgJS4yNTVzJzogZm91dCBpbiB2ZXJzaWU6ICUuMjU1cyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDc1CisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgZmllbGQsIHN5bnRheCBlcnJvciBhZnRlciByZWZlcmVuY2UgdG8gcGFja2FnZSBgJS4yNTVzJyIKK21zZ3N0ciAiYCVzJy12ZWxkLCBzeW50YXhmb3V0IG5hIHZlcndpanppbmcgbmFhciBwYWtrZXQgYCUuMjU1cyciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ4MgorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZXMgKGB8Jykgbm90IGFsbG93ZWQgaW4gJXMgZmllbGQiCittc2dzdHIgImFsdGVybmF0aWV2ZW4gKGB8JykgbmlldCB0b2VnZXN0YWFuIGluICclcyctdmVsZCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTM2CisjLCBmdXp6eQorbXNnaWQgInZhbHVlIGZvciBgdHJpZ2dlcnMtcGVuZGluZycgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICJ3YWFyZGUgdm9vciBgY29uZmlnLXZlcnNpb24nLXZlbGQgbmlldCB0b2VnZXN0YWFuIGluIGRlemUgY29udGV4dCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTQzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJpbGxlZ2FsIHBlbmRpbmcgdHJpZ2dlciBuYW1lIGAlLjI1NXMnOiAlcyIKK21zZ3N0ciAiYCVzJy12ZWxkLCBvbmdlbGRpZ2UgcGFra2V0bmFhbSBgJS4yNTVzJzogJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU0NworIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgcGVuZGluZyB0cmlnZ2VyIGAlLjI1NXMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU2MQorIywgZnV6enkKK21zZ2lkICJ2YWx1ZSBmb3IgYHRyaWdnZXJzLWF3YWl0ZWQnIGZpZWxkIG5vdCBhbGxvd2VkIGluIHRoaXMgY29udGV4dCIKK21zZ3N0ciAid2FhcmRlIHZvb3IgYHN0YXR1cyctdmVsZCBpcyBuaWV0IHRvZWdlc3RhYW4gaW4gZGV6ZSBjb250ZXh0IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NjgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImlsbGVnYWwgcGFja2FnZSBuYW1lIGluIGF3YWl0ZWQgdHJpZ2dlciBgJS4yNTVzJzogJXMiCittc2dzdHIgIm9uZ2VsZGlnZSBwYWtrZXRuYWFtIG9wIHJlZ2VsICVkOiAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU3NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIGF3YWl0ZWQgdHJpZ2dlciBwYWNrYWdlIGAlLjI1NXMnIgorbXNnc3RyICJiZXN0YW5kZW5saWpzdC1iZXN0YW5kIHZvb3IgcGFra2V0IGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy9maWxlLmM6NTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IHNvdXJjZSBmaWxlICclLjI1MHMnIgorbXNnc3RyICJrYW4gYnJvbmJlc3RhbmQgYCUuMjUwcycgbmlldCBvcGVuZW4iCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzo1NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoYW5nZSBvd25lcnNoaXAgb2YgdGFyZ2V0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgImthbiBkZSBlaWdlbmFhciB2YW4gaGV0IG5pZXV3ZSBjb25mZmlsZSBgJS4yNTBzJyBuaWV0IHZlcmFuZGVyZW4iCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzo1OQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNldCBtb2RlIG9mIHRhcmdldCBmaWxlICclLjI1MHMnIgorbXNnc3RyICJrYW4gZGUgbW9kdXMgdmFuIGhldCBuaWV1d2UgY29uZmZpbGUgYCUuMjUwcycgbmlldCB2ZXJhbmRlcmVuIgorCisjOiBsaWIvZHBrZy9maWxlLmM6ODUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byB1bmxvY2sgJXM6ICVzIgorbXNnaWQgInVuYWJsZSB0byB1bmxvY2sgJXMiCittc2dzdHIgImthbiAlcyBuaWV0IG9udGdyZW5kZWxlbjogJXMiCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzoxMTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGVjayBmaWxlICclcycgbG9jayBzdGF0dXMiCittc2dzdHIgImthbiBicm9uYmVzdGFuZCBgJS4yNTBzJyBuaWV0IG9wZW5lbiIKKworIzogbGliL2Rwa2cvZmlsZS5jOjE0NgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic3RhdHVzIGRhdGFiYXNlIGFyZWEgaXMgbG9ja2VkIGJ5IGFub3RoZXIgcHJvY2VzcyIKK21zZ2lkICIlcyBpcyBsb2NrZWQgYnkgYW5vdGhlciBwcm9jZXNzIgorbXNnc3RyICJzdGF0dXNkYXRhYmFzZWdlYmllZCBpcyB2ZXJncmVuZGVsZCBkb29yIGVlbiBhbmRlciBwcm9jZXMiCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzoxNDgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byB1bmxvY2sgJXM6ICVzIgorbXNnaWQgInVuYWJsZSB0byBsb2NrICVzIgorbXNnc3RyICJrYW4gJXMgbmlldCBvbnRncmVuZGVsZW46ICVzIgorCisjOiBsaWIvZHBrZy9sb2cuYzo1MworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBvcGVuIGxvZyBgJXMnOiAlc1xuIgorbXNnc3RyICJrYW4gbG9nYmVzdGFuZCBuaWV0IG9wZW5lbiBgJXMnOiAlc1xuIgorCisjOiBsaWIvZHBrZy9sb2cuYzo4NQorbXNnaWQgIjxwYWNrYWdlIHN0YXR1cyBhbmQgcHJvZ3Jlc3MgZmlsZSBkZXNjcmlwdG9yPiIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9sb2cuYzoxMTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSB0byBzdGF0dXMgZmQgJWQiCittc2dzdHIgImthbiBkZSBuaWV1d2Ugc3RhdHVzIHZhbiBgJS4yNTBzJyBuaWV0IHdlZ3NjaHJpanZlbiIKKworIzogbGliL2Rwa2cvbWxpYi5jOjQ0IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIm1hbGxvYyBmYWlsZWQgKCV6dSBieXRlcykiCittc2dzdHIgInJlYWxsb2MgaXMgbWlzbHVrdCAoJWxkIGJ5dGVzKSIKKworIzogbGliL2Rwa2cvbWxpYi5jOjU4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJyZWFsbG9jIGZhaWxlZCAoJXp1IGJ5dGVzKSIKK21zZ3N0ciAicmVhbGxvYyBpcyBtaXNsdWt0ICglbGQgYnl0ZXMpIgorCisjOiBsaWIvZHBrZy9tbGliLmM6NzIgbGliL2Rwa2cvbWxpYi5jOjkwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNzcKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzozMzQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMDcKKyMsIGZ1enp5Cittc2dpZCAiZmFpbGVkIHRvIGFsbG9jYXRlIG1lbW9yeSIKK21zZ3N0ciAiYWFubWFrZW4gbWFwIGlzIG1pc2x1a3QiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGR1cCBmb3Igc3RkJXMiCittc2dzdHIgImR1cCBvcCBzdGQlcyBpcyBtaXNsdWt0IgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTAzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBkdXAgZm9yIGZkICVkIgorbXNnc3RyICJkdXAgb3AgZmQgJWQgaXMgbWlzbHVrdCIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEwOQorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgcGlwZSIKK21zZ3N0ciAiYWFubWFrZW4gcGlqcCBpcyBtaXNsdWt0IgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTE3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJlcnJvciB3cml0aW5nIHRvICclcyciCittc2dzdHIgImZvdXQgYmlqIHNjaHJpanZlbiBuYWFyIGAlcyciCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgZmlsZWRlc2NyaXB0b3IgZmxhZ3MgZm9yICUuMjUwcyIKK21zZ3N0ciAia2FuIGRlIGJlc3RhbmRzYmVzY2hyaWp2aW5nc3ZsYWdnZW4gdm9vciAlLjI1MHMgbmlldCBsZXplbiIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEyNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IGNsb3NlLW9uLWV4ZWMgZmxhZyBmb3IgJS4yNTBzIgorbXNnc3RyICJrYW4gZGUgY2xvc2Utb24tZXhlYyB2bGFnIHZvb3IgJS4yNTBzIG5pZXQgaW5zdGVsbGVuIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6NjMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImNvbmZpZ3VyYXRpb24gZXJyb3I6ICVzOiVkOiAlcyIKK21zZ3N0ciAiY29uZmlndXJhdGllZm91dDogJXMgaGVlZnQgZWVuIHdhYXJkZSBub2RpZyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjc1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiBjb25maWd1cmF0aW9uIGZpbGUgJyUuMjU1cycgZm9yIHJlYWRpbmc6ICVzIgorbXNnc3RyICJrYW4gY29uZmlndXJhdGllLWJlc3RhbmQgJS4yNTVzIG5pZXQgb3BlbmVuIG9tIHRlIGxlemVuIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYmFsYW5jZWQgcXVvdGVzIGluICclcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjExNworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gJyVzJyIKK21zZ3N0ciAib25iZWtlbmRlIG9wdGllICclcyciCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiclcycgbmVlZHMgYSB2YWx1ZSIKK21zZ3N0ciAiLS0lcyBvcHRpZSB2ZXJ3YWNodCBlZW4gd2FhcmRlIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTI3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICInJXMnIGRvZXMgbm90IHRha2UgYSB2YWx1ZSIKK21zZ3N0ciAiLS0lcyBvcHRpZSB2ZXJ3YWNodCBnZWVuIHdhYXJkZSIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjEzMworIywgYy1mb3JtYXQKK21zZ2lkICJyZWFkIGVycm9yIGluIGNvbmZpZ3VyYXRpb24gZmlsZSBgJS4yNTVzJyIKK21zZ3N0ciAibGVlc2ZvdXQgaW4gY29uZmlndXJhdGllYmVzdGFuZCBgJS4yNTVzJyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nIGNvbmZpZ3VyYXRpb24gZmlsZSBgJS4yNTVzJyIKK21zZ3N0ciAiZm91dCBiaWogc2x1aXRlbiB2YW4gY29uZmlndXJhdGllYmVzdGFuZCBgJS4yNTVzJyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjE3MAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igb3BlbmluZyBjb25maWd1cmF0aW9uIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICJmb3V0IGJpaiBzbHVpdGVuIHZhbiBjb25maWd1cmF0aWViZXN0YW5kIGAlLjI1NXMnIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjI4CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gb3B0aW9uIC0tJXMiCittc2dzdHIgIm9uYmVrZW5kZSBvcHRpZSAtLSVzIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgb3B0aW9uIHRha2VzIGEgdmFsdWUiCittc2dzdHIgIi0tJXMgb3B0aWUgdmVyd2FjaHQgZWVuIHdhYXJkZSIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjIzNworIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG9wdGlvbiBkb2VzIG5vdCB0YWtlIGEgdmFsdWUiCittc2dzdHIgIi0tJXMgb3B0aWUgdmVyd2FjaHQgZ2VlbiB3YWFyZGUiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyNDUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gLSVjIgorbXNnc3RyICJvbmJla2VuZGUgb3B0aWUgLSVjIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjUwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0lYyBvcHRpb24gdGFrZXMgYSB2YWx1ZSIKK21zZ3N0ciAiLSVjIHZlcndhY2h0IGVlbiB3YWFyZGUiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiLSVjIG9wdGlvbiBkb2VzIG5vdCB0YWtlIGEgdmFsdWUiCittc2dzdHIgIi0lYyBvcHRpZSB2ZXJ3YWNodCBnZWVuIHdhYXJkZSIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI3MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAib2Jzb2xldGUgb3B0aW9uICctLSVzJ1xuIgorbXNnc3RyICJMZXQgb3A6IHZlcm91ZGVyZGUgb3B0aWUgYC0tJXMnXG4iCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmxpY3RpbmcgYWN0aW9ucyAtJWMgKC0tJXMpIGFuZCAtJWMgKC0tJXMpIgorbXNnc3RyICJ0ZWdlbnN0cmlqZGlnZSBhY3RpZXMgLSVjICgtLSVzKSBlbiAtJWMgKC0tJXMpIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgdmFsdWUgZm9yIGAlcycgZmllbGQiCittc2dzdHIgImR1YmJlbGUgd2FhcmRlIHZvb3IgYCVzJy12ZWxkIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjE0NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1c2VyLWRlZmluZWQgZmllbGQgbmFtZSBgJS4qcycgdG9vIHNob3J0IgorbXNnc3RyICJ6ZWxmIGdlZGVmaW5pZWVyZGUgdmVsZG5hYW0gYCUuKnMnIHRlIGtvcnQiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MTUyCisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSB2YWx1ZSBmb3IgdXNlci1kZWZpbmVkIGZpZWxkIGAlLipzJyIKK21zZ3N0ciAiZHViYmVsZSB3YWFyZGUgdm9vciB6ZWxmIGdlZGVmaW5pZWVyZCB2ZWxkIGAlLipzJyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMDcKK21zZ2lkICJDb25maWd1cmVkLVZlcnNpb24gZm9yIHBhY2thZ2Ugd2l0aCBpbmFwcHJvcHJpYXRlIFN0YXR1cyIKK21zZ3N0ciAiJ0NvbmZpZ3VyZWQtVmVyc2lvbicgdmFuIHBha2tldCBtZXQgb25nZXBhc3RlIHN0YXR1cyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzICVzIGJ1dCB0cmlnZ2VycyBhcmUgYXdhaXRlZCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjIyMgorbXNnaWQgInBhY2thZ2UgaGFzIHN0YXR1cyB0cmlnZ2Vycy1hd2FpdGVkIGJ1dCBubyB0cmlnZ2VycyBhd2FpdGVkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjI4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgaGFzIHN0YXR1cyAlcyBidXQgdHJpZ2dlcnMgYXJlIHBlbmRpbmciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMzIKK21zZ2lkICJwYWNrYWdlIGhhcyBzdGF0dXMgdHJpZ2dlcnMtcGVuZGluZyBidXQgbm8gdHJpZ2dlcnMgcGVuZGluZyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjI0MgorbXNnaWQgIlBhY2thZ2Ugd2hpY2ggaW4gc3RhdGUgbm90LWluc3RhbGxlZCBoYXMgY29uZmZpbGVzLCBmb3JnZXR0aW5nIHRoZW0iCittc2dzdHIgIiIKKyJQYWtrZXQgaW4gdG9lc3RhbmQgYG5vdC1pbnN0YWxsZWQnIGhlZWZ0IGNvbmZmaWxlcywgZGV6ZSB3b3JkZW4gdmVyZ2V0ZW4iCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzM1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuIHBhY2thZ2UgaW5mbyBmaWxlIGAlLjI1NXMnIGZvciByZWFkaW5nIgorbXNnc3RyICJmb3V0IGJpaiBvcGVuZW4gdmFuIHBha2tldC1pbmZvIGJlc3RhbmQgYCUuMjU1cycgb20gdGUgbGV6ZW4iCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzQxCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbid0IHN0YXQgcGFja2FnZSBpbmZvIGZpbGUgYCUuMjU1cyciCittc2dzdHIgImthbiBpbmZvcm1hdGllYmVzdGFuZCBuaWV0IG9wdnJhZ2VuIHVpdCBgJS4yNTVzJyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2FuJ3QgbW1hcCBwYWNrYWdlIGluZm8gZmlsZSBgJS4yNTVzJyIKK21zZ3N0ciAia2FuIGhldCBpbmZvcm1hdGllYmVzdGFuZCBuaWV0IG1tYXBwZW4gaW4gYCUuMjU1cyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzUyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW4ndCBzdGF0IHBhY2thZ2UgaW5mbyBmaWxlIGAlLjI1NXMnIgorbXNnaWQgInJlYWRpbmcgcGFja2FnZSBpbmZvIGZpbGUgJyUuMjU1cyciCittc2dzdHIgImthbiBpbmZvcm1hdGllYmVzdGFuZCBuaWV0IG9wdnJhZ2VuIHVpdCBgJS4yNTVzJyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNsb3NlIGFmdGVyIHJlYWQ6IGAlLjI1NXMnIgorbXNnc3RyICJrYW4gbmlldCBhZnNsdWl0ZW4gbmEgbGV6ZW46IGAlLjI1NXMnIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQwNAorIywgYy1mb3JtYXQKK21zZ2lkICJFT0YgYWZ0ZXIgZmllbGQgbmFtZSBgJS4qcyciCittc2dzdHIgIkVPRiBuYSB2ZWxkbmFhbSBgJS4qcyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDA3CisjLCBjLWZvcm1hdAorbXNnaWQgIm5ld2xpbmUgaW4gZmllbGQgbmFtZSBgJS4qcyciCittc2dzdHIgIm5pZXV3ZSByZWdlbCBpbiB2ZWxkbmFhbSBgJS4qcyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDEwCisjLCBjLWZvcm1hdAorbXNnaWQgIk1TRE9TIEVPRiAoXlopIGluIGZpZWxkIG5hbWUgYCUuKnMnIgorbXNnc3RyICJNU0RPUyBFT0YgKF5aKSBpbiB2ZWxkbmFhbSBgJS4qcyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDE0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpZWxkIG5hbWUgYCUuKnMnIG11c3QgYmUgZm9sbG93ZWQgYnkgY29sb24iCittc2dzdHIgInZlbGRuYWFtIGAlLipzJyBtb2V0IGdldm9sZ2Qgd29yZGVuIGRvb3IgZWVuIGR1YmJlbGUgcHVudCIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiRU9GIGJlZm9yZSB2YWx1ZSBvZiBmaWVsZCBgJS4qcycgKG1pc3NpbmcgZmluYWwgbmV3bGluZSkiCittc2dzdHIgIiIKKyJFT0Ygdm9vciB3YWFyZGUgdm9vciB2ZWxkIGAlLipzJyAob250YnJla2VuZGUgYWZzbHVpdGVuZGUgbmlldXdlIHJlZ2VsKSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiTVNET1MgRU9GIGNoYXIgaW4gdmFsdWUgb2YgZmllbGQgYCUuKnMnIChtaXNzaW5nIG5ld2xpbmU/KSIKK21zZ3N0ciAiTVNET1MgRU9GIHRla2VuIGluIHdhYXJkZSB2YW4gdmVsZCBgJS4qcycgKG9udGJyZWtlbmRlIG5pZXV3ZSByZWdlbD8pIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQ0MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAibmV3bGluZSBpbiBmaWVsZCBuYW1lIGAlLipzJyIKK21zZ2lkICJibGFuayBsaW5lIGluIHZhbHVlIG9mIGZpZWxkICclLipzJyIKK21zZ3N0ciAibmlldXdlIHJlZ2VsIGluIHZlbGRuYWFtIGAlLipzJyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiRU9GIGR1cmluZyB2YWx1ZSBvZiBmaWVsZCBgJS4qcycgKG1pc3NpbmcgZmluYWwgbmV3bGluZSkiCittc2dzdHIgIkVPRiBpbiB3YWFyZGUgdmFuIHZlbGQgYCUuKnMnIChvbnRicmVrZW5kZSBhZnNsdWl0ZW5kZSBuaWV1d2UgcmVnZWwpIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjU0NgorbXNnaWQgInNldmVyYWwgcGFja2FnZSBpbmZvIGVudHJpZXMgZm91bmQsIG9ubHkgb25lIGFsbG93ZWQiCittc2dzdHIgIm1lZXJkZXJlIHBha2tldCBpbmZvcm1hdGllLWluZ2FuZ2VuIGdldm9uZGVuLCBzbGVjaHRzIGVlbiB0b2VnZXN0YWFuIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjU3MgorIywgYy1mb3JtYXQKK21zZ2lkICJubyBwYWNrYWdlIGluZm9ybWF0aW9uIGluIGAlLjI1NXMnIgorbXNnc3RyICJnZWVuIHBha2tldGluZm9ybWF0aWUgaW4gYCUuMjU1cyciCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjQ1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisicGFyc2luZyBmaWxlICclLjI1NXMnIG5lYXIgbGluZSAlZCBwYWNrYWdlICclLjI1NXMnOlxuIgorIiAlLjI1NXMiCittc2dzdHIgIiVzLCBpbiBiZXN0YW5kIGAlLjI1NXMnIGJpaiByZWdlbCAlZCIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6NDgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJwYXJzaW5nIGZpbGUgJyUuMjU1cycgbmVhciBsaW5lICVkOlxuIgorIiAlLjI1NXMiCittc2dzdHIgIiVzLCBpbiBiZXN0YW5kIGAlLjI1NXMnIGJpaiByZWdlbCAlZCIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MTI1Cittc2dpZCAibWF5IG5vdCBiZSBlbXB0eSBzdHJpbmciCittc2dzdHIgIm1hZyBuaWV0IGVlbiBsZWdlIHN0cmluZyB6aWpuIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoxMjcKKyMsIGZ1enp5CisjfCBtc2dpZCAibXVzdCBzdGFydCB3aXRoIGFuIGFscGhhbnVtZXJpYyIKK21zZ2lkICJtdXN0IHN0YXJ0IHdpdGggYW4gYWxwaGFudW1lcmljIGNoYXJhY3RlciIKK21zZ3N0ciAibW9ldCBiZWdpbm5lbiBtZXQgZWVuIGFsZmFudW1lcmllayB0ZWtlbiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MTM2CisjLCBjLWZvcm1hdAorbXNnaWQgImNoYXJhY3RlciBgJWMnIG5vdCBhbGxvd2VkIChvbmx5IGxldHRlcnMsIGRpZ2l0cyBhbmQgY2hhcmFjdGVycyBgJXMnKSIKK21zZ3N0ciAiIgorInRla2VuIGAlYycgaXMgbmlldCB0b2VnZXN0YWFuIChlbmtlbCBsZXR0ZXJzLCBjaWpmZXJzIGVuIGRlIGthcmFrdGVycyAnJXMnICIKKyJ6aWpuIHRvZWdlc3RhYW4pIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoxNzgKKyMsIGZ1enp5CisjfCBtc2dpZCAiPG5vbmU+IgorbXNnY3R4dCAidmVyc2lvbiIKK21zZ2lkICI8bm9uZT4iCittc2dzdHIgIjxnZWVuPiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjA5Cittc2dpZCAidmVyc2lvbiBzdHJpbmcgaXMgZW1wdHkiCittc2dzdHIgInZlcnNpZXN0cmluZyBpcyBsZWVnIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyMjQKK21zZ2lkICJ2ZXJzaW9uIHN0cmluZyBoYXMgZW1iZWRkZWQgc3BhY2VzIgorbXNnc3RyICJ2ZXJzaWVzdHJpbmcgYmV2YXQgc3BhdGllcyIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjMwCittc2dpZCAiZXBvY2ggaW4gdmVyc2lvbiBpcyBub3QgbnVtYmVyIgorbXNnc3RyICJlcG9jaCBpbiB2ZXJzaWVudW1tZXIgaXMgZ2VlbiBudW1tZXIiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjIzMgorbXNnaWQgIm5vdGhpbmcgYWZ0ZXIgY29sb24gaW4gdmVyc2lvbiBudW1iZXIiCittc2dzdHIgImVyIGtvbXQgbmlldHMgbmEgZGUgZHViYmVsZSBwdW50IGluIGhldCB2ZXJzaWVudW1tZXIiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjI0NworbXNnaWQgInZlcnNpb24gbnVtYmVyIGRvZXMgbm90IHN0YXJ0IHdpdGggZGlnaXQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjUwCisjLCBmdXp6eQorI3wgbXNnaWQgIm5vdGhpbmcgYWZ0ZXIgY29sb24gaW4gdmVyc2lvbiBudW1iZXIiCittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgaW4gdmVyc2lvbiBudW1iZXIiCittc2dzdHIgImVyIGtvbXQgbmlldHMgbmEgZGUgZHViYmVsZSBwdW50IGluIGhldCB2ZXJzaWVudW1tZXIiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjI1NAorIywgZnV6enkKKyN8IG1zZ2lkICJub3RoaW5nIGFmdGVyIGNvbG9uIGluIHZlcnNpb24gbnVtYmVyIgorbXNnaWQgImludmFsaWQgY2hhcmFjdGVyIGluIHJldmlzaW9uIG51bWJlciIKK21zZ3N0ciAiZXIga29tdCBuaWV0cyBuYSBkZSBkdWJiZWxlIHB1bnQgaW4gaGV0IHZlcnNpZW51bW1lciIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6Mjk5IGxpYi9kcGtnL3BhcnNlaGVscC5jOjMxMQorIywgYy1mb3JtYXQKK21zZ2lkICJtaXNzaW5nICVzIgorbXNnc3RyICJvbnRicmVrZW5kZSAlcyIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MzAxIGxpYi9kcGtnL3BhcnNlaGVscC5jOjMxNAorIywgYy1mb3JtYXQKK21zZ2lkICJlbXB0eSB2YWx1ZSBmb3IgJXMiCittc2dzdHIgImxlZ2Ugd2FhcmRlIHZvb3IgJXMiCisKKyM6IGxpYi9kcGtnL3BrZy1mb3JtYXQuYzo4MAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGNoYXJhY3RlciBgJWMnIGluIGZpZWxkIHdpZHRoXG4iCittc2dzdHIgIk9uZ2VsZGlnIGthcmFrdGVyICclYycgaW4gaGV0IHZlbGQgd2lkdGhcbiIKKworIzogbGliL2Rwa2cvcGtnLWZvcm1hdC5jOjE3MgorIywgYy1mb3JtYXQKK21zZ2lkICJDbG9zaW5nIGJyYWNlIG1pc3NpbmcgaW4gZm9ybWF0XG4iCittc2dzdHIgIlNsdWl0ZW5kIGhhYWtqZSBuaWV0IGluIGhldCBmb3JtYWF0IGFhbndlemlnXG4iCisKKyM6IGxpYi9kcGtnL3BrZy1zaG93LmM6NDAKK21zZ2lkICIobm8gZGVzY3JpcHRpb24gYXZhaWxhYmxlKSIKK21zZ3N0ciAiKGdlZW4gYmVzY2hyaWp2aW5nIGJlc2NoaWtiYWFyKSIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjU1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaWdub3JlIHNpZ25hbCAlcyBiZWZvcmUgcnVubmluZyAlLjI1MHMiCittc2dzdHIgImthbiBzaWduYWFsICVzIG5pZXQgbmVnZXJlbiBhbHZvcmVucyBoZXQgc2NyaXB0IHRlIHN0YXJ0ZW4iCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzo2OAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciB1bi1jYXRjaGluZyBzaWduYWwgJXM6ICVzXG4iCittc2dzdHIgImZvdXQgYmlqIG9udC1hZnZhbmdlbiB2YW4gc2lnbmFhbCAlczogJXNcbiIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjc4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIChzdWJwcm9jZXNzKTogJXNcbiIKK21zZ3N0ciAiJXMgKHN1YnByb2Nlcyk6ICVzXG4iCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzo4OSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NDU0Cittc2dpZCAiZm9yayBmYWlsZWQiCittc2dzdHIgInZvcmsgaXMgbWlzbHVrdCIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjExOQorIywgYy1mb3JtYXQKK21zZ2lkICJzdWJwcm9jZXNzICVzIHJldHVybmVkIGVycm9yIGV4aXQgc3RhdHVzICVkIgorbXNnc3RyICJzdWJwcm9jZXMgJXMgZ2FmIGVlbiBmb3V0d2FhcmRlICVkIHRlcnVnIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTI4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJzdWJwcm9jZXNzICVzIHdhcyBpbnRlcnJ1cHRlZCIKK21zZ3N0ciAid2FjaHRlbiBvcCAlcyBpcyBtaXNsdWt0IgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTMwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJzdWJwcm9jZXNzICVzIGtpbGxlZCBieSBzaWduYWwgKCVzKSVzIgorbXNnaWQgInN1YnByb2Nlc3MgJXMgd2FzIGtpbGxlZCBieSBzaWduYWwgKCVzKSVzIgorbXNnc3RyICJzdWJwcm9jZXMgJXMgd2VyZCBnZWRvb2QgZG9vciBzaWduYWFsICglcyklcyIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEzMgorbXNnaWQgIiwgY29yZSBkdW1wZWQiCittc2dzdHIgIiwga2VybiBnZWR1bXB0IgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgInN1YnByb2Nlc3MgJXMgZmFpbGVkIHdpdGggd2FpdCBzdGF0dXMgY29kZSAlZCIKK21zZ3N0ciAic3VicHJvY2VzICVzICBpcyBtaXNsdWt0IG1ldCB3YWNodHN0YXR1c2NvZGUgJWQiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxNTEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQ2MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAid2FpdCBmb3Igc3VicHJvY2VzcyAlcyBmYWlsZWQiCittc2dzdHIgIndhY2h0ZW4gb3AgJXMgaXMgbWlzbHVrdCIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBwYWNrYWdlIG5hbWUgYCUuMjUwcycgaW4gdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDo4MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidHJ1bmNhdGVkIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgInN0YXRvdmVycmlkZSBiZXN0YW5kIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDo4NQorIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyBhdCBjaGFyYWN0ZXIgYCVzJyVzIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjEzNAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4vY3JlYXRlIHRyaWdnZXJzIGxvY2tmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrYW4gYnJvbmJlc3RhbmQgYCUuMjUwcycgbmlldCBvcGVuZW4iCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjE0MQorIywgZnV6enkKK21zZ2lkICJ0cmlnZ2VycyBhcmVhIgorbXNnc3RyICJrYW4gJXMgbmlldCBvbnRncmVuZGVsZW46ICVzIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImthbiBvcCBoZXQgbmlldXdlIGJlc3RhbmQgYCUuMjUwcycgZ2VlbiBzdGF0IHVpdHZvZXJlbiIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MTY1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrYW4gYnJvbmJlc3RhbmQgYCUuMjUwcycgbmlldCBvcGVuZW4iCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjE3OQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4vY3JlYXRlIG5ldyB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrYW4gbmlldXcgZGVwb3RiZXN0YW5kIGAlLjI1MHMnIG5pZXQgb3BlbmVuIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoyMTUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHJlYWRpbmcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiZm91dCBiaWogbGV6ZW4gdmFuICVzIHVpdCBiZXN0YW5kICUuMjU1cyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MjIzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImthbiBuaWV1dyBkZXBvdGJlc3RhbmQgYCUuMjUwcycgbmlldCBvcGVuZW4iCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjIyOAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIG5ldyB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrYW4gbmlldXcgZGVwb3RiZXN0YW5kIGAlLjI1MHMnIG5pZXQgb3BlbmVuIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoyMzIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrYW4gZGUgbmlldXdlIHZlcnNpZSB2YW4gYCUuMjU1cycgbmlldCBpbnN0YWxsZXJlbiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjIyMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiaW52YWxpZCBvciB1bmtub3duIHN5bnRheCBpbiB0cmlnZ2VyIG5hbWUgYCUuMjUwcycgKGluIHRyaWdnZXIgaW50ZXJlc3RzIGZvciAiCisicGFja2FnZSBgJS4yNTBzJykiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjI2MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gdHJpZ2dlciBpbnRlcmVzdCBsaXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgImthbiBuaWV1dyBkZXBvdGJlc3RhbmQgYCUuMjUwcycgbmlldCBvcGVuZW4iCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzoyOTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrYW4gZGVlbGJlc3RhbmQgYCUuMjUwcycgbmlldCBsZXplbiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMwNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIHN5bnRheCBlcnJvcjsgaWxsZWdhbCBwYWNrYWdlIG5hbWUgYCUuMjUwcyc6ICIKKyIlLjI1MHMiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMxOAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgImthbiBvcCBoZXQgbmlldXdlIGJlc3RhbmQgYCUuMjUwcycgZ2VlbiBzdGF0IHVpdHZvZXJlbiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMyMQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgImthbiBvcCBoZXQgbmlldXdlIGJlc3RhbmQgYCUuMjUwcycgZ2VlbiBzdGF0IHVpdHZvZXJlbiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMyNAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAia2FuIG9wIGhldCBuaWV1d2UgYmVzdGFuZCBgJS4yNTBzJyBnZWVuIHN0YXQgdWl0dm9lcmVuIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzMyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrYW4gZGUgbmlldXdlIHZlcnNpZSB2YW4gYCUuMjU1cycgbmlldCBpbnN0YWxsZXJlbiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjM0MCBsaWIvZHBrZy90cmlnbGliLmM6MzQyIGxpYi9kcGtnL3RyaWdsaWIuYzo0NzIKKyM6IHNyYy9yZW1vdmUuYzoyODYgc3JjL3JlbW92ZS5jOjM3NworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVtb3ZlIGAlLjI1MHMnIgorbXNnc3RyICJrYW4gYCUuMjUwcycgbmlldCB2ZXJ3aWpkZXJlbiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjM2MAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrYW4gb3AgaGV0IG5pZXV3ZSBiZXN0YW5kIGAlLjI1MHMnIGdlZW4gc3RhdCB1aXR2b2VyZW4iCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozODMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrYW4gb3AgaGV0IG5pZXV3ZSBiZXN0YW5kIGAlLjI1MHMnIGdlZW4gc3RhdCB1aXR2b2VyZW4iCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0NTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkdXBsaWNhdGUgZmlsZSB0cmlnZ2VyIGludGVyZXN0IGZvciBmaWxlbmFtZSBgJS4yNTBzJyBhbmQgcGFja2FnZSBgJS4yNTBzJyIKK21zZ3N0ciAia2FuIG5pZXV3ZSBpbmZvYmVzdGFuZCBgJS4yNTBzJyBuaWV0IGluc3RhbGxlcmVuIGFscyBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ4MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrYW4gbmlldXcgZGVwb3RiZXN0YW5kIGAlLjI1MHMnIG5pZXQgb3BlbmVuIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDkzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia2FuIG5pZXV3IGRlcG90YmVzdGFuZCBgJS4yNTBzJyBuaWV0IG9wZW5lbiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ5NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgJyUuMjUwcyciCittc2dzdHIgImthbiBuaWV1dyBkZXBvdGJlc3RhbmQgYCUuMjUwcycgbmlldCBvcGVuZW4iCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0OTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzeW5jIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgJyUuMjUwcyciCittc2dzdHIgImthbiBuaWV1dyBkZXBvdGJlc3RhbmQgYCUuMjUwcycgbmlldCBvcGVuZW4iCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1MDMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrYW4gbmlldXcgZGVwb3RiZXN0YW5kIGAlLjI1MHMnIG5pZXQgb3BlbmVuIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTA3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGFzIGAlLjI1MHMnIgorbXNnc3RyICJrYW4gbmlldXdlIGluZm9iZXN0YW5kIGAlLjI1MHMnIG5pZXQgaW5zdGFsbGVyZW4gYWxzIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTQyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImthbiBkZWVsYmVzdGFuZCBgJS4yNTBzJyBuaWV0IGxlemVuIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTUyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJsZWVzZm91dCBpbiBjb25maWd1cmF0aWViZXN0YW5kIGAlLjI1NXMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTYzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmaWxlIHRyaWdnZXJzIHJlY29yZCBtZW50aW9ucyBpbGxlZ2FsIHBhY2thZ2UgbmFtZSBgJS4yNTBzJyAoZm9yIGludGVyZXN0IGluICIKKyJmaWxlIGAlLjI1MHMnKTogJS4yNTBzIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo2NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInRyaWdnZXJzIGNpIGZpbGUgYCUuMjUwcycgY29udGFpbnMgaWxsZWdhbCB0cmlnZ2VyIHN5bnRheCBpbiB0cmlnZ2VyIG5hbWUgYCIKKyIlLjI1MHMnOiAlLjI1MHMiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjY4NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gdHJpZ2dlcnMgY2kgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia2FuIGJyb25iZXN0YW5kIGAlLjI1MHMnIG5pZXQgb3BlbmVuIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Njk5Cittc2dpZCAidHJpZ2dlcnMgY2kgZmlsZSBjb250YWlucyB1bmtub3duIGRpcmVjdGl2ZSBzeW50YXgiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjcxMgorIywgYy1mb3JtYXQKK21zZ2lkICJ0cmlnZ2VycyBjaSBmaWxlIGNvbnRhaW5zIHVua25vd24gZGlyZWN0aXZlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo3NzYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdHJpZ2dlcnMgc3RhdGUgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICJrYW4gZGVwb3QgbWFwIGAlLjI1MHMnIG5pZXQgbGV6ZW4iCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo3NzkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgb3duZXJzaGlwIG9mIHRyaWdnZXJzIHN0YXRlIGRpcmVjdG9yeSBgJS4yNTBzJyIKK21zZ3N0ciAia2FuIGRlcG90IG1hcCBgJS4yNTBzJyBuaWV0IGxlemVuIgorCisjOiBsaWIvZHBrZy90cmlnbmFtZS5jOjM0Cittc2dpZCAiZW1wdHkgdHJpZ2dlciBuYW1lcyBhcmUgbm90IHBlcm1pdHRlZCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy90cmlnbmFtZS5jOjM4Cittc2dpZCAidHJpZ2dlciBuYW1lIGNvbnRhaW5zIGludmFsaWQgY2hhcmFjdGVyIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3V0aWxzLmM6NTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInJlYWQgZXJyb3IgaW4gYCUuMjUwcyciCittc2dzdHIgImxlZXNmb3V0IGluICUuMjUwcyIKKworIzogbGliL2Rwa2cvdXRpbHMuYzo2MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmdldHMgZ2F2ZSBhbiBlbXB0eSBzdHJpbmcgZnJvbSBgJS4yNTBzJyIKK21zZ3N0ciAiZmdldHMga3dhbSB0ZXJ1ZyBtZXQgZWVuIGxlZ2Ugc3RyaW5nIHVpdCBvbWxlaWRpbmdlbiBbaV0iCisKKyM6IGxpYi9kcGtnL3V0aWxzLmM6NjMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInRvby1sb25nIGxpbmUgb3IgbWlzc2luZyBuZXdsaW5lIGluIGAlLjI1MHMnIgorbXNnc3RyICJiZXN0YW5kIGAlLjI1MHMnIGlzIGJlc2NoYWRpZ2QgLSBvbnRicmVrZW5kZSBuaWV1d2UgcmVnZWwgbmEgJS4yNTBzIgorCisjOiBsaWIvZHBrZy91dGlscy5jOjc1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVvZiByZWFkaW5nIGAlLjI1MHMnIgorbXNnc3RyICJvbnZlcndhY2h0cyBiZXN0YW5kc2VpbmRlIGluICUuMjUwcyIKKworIzogbGliL2Rwa2cvdmFyYnVmLmM6ODIgbGliL2Rwa2cvdmFyYnVmLmM6ODgKK21zZ2lkICJlcnJvciBmb3JtYXR0aW5nIHN0cmluZyBpbnRvIHZhcmJ1ZiB2YXJpYWJsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxNzkgc3JjL2FyY2hpdmVzLmM6MjAwIHNyYy9hcmNoaXZlcy5jOjcyNAorbXNnaWQgImVycm9yIHJlYWRpbmcgZnJvbSBkcGtnLWRlYiBwaXBlIgorbXNnc3RyICJmb3V0IGJpaiBoZXQgbGV6ZW4gdWl0IGRlICdkcGtnLWRlYictcGlqcCIKKworIzogc3JjL2FyY2hpdmVzLmM6MTk1CisjLCBjLWZvcm1hdAorbXNnaWQgInNraXBwZWQgdW5wYWNraW5nIGZpbGUgJyUuMjU1cycgKHJlcGxhY2VkIG9yIGV4Y2x1ZGVkPykiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MjQ2IHNyYy9hcmNoaXZlcy5jOjI1MAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIHRpbWVzdGFtcHMgb2YgYCUuMjU1cyciCittc2dzdHIgImZvdXQgYmlqIGhldCBpbnN0ZWxsZW4gdmFuIGRlIHRpamQgdmFuIGAlLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoyNjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igc2V0dGluZyBvd25lcnNoaXAgb2Ygc3ltbGluayBgJS4yNTVzJyIKK21zZ3N0ciAiIgorImZvdXQgYmlqIGhldCBpbnN0ZWxsZW4gdmFuIGRlIGVpZ2VuYWFyIHZhbiBkZSBzeW1ib2xpc2NoZSBrb3BwZWxpbmcgYCUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjI2NSBzcmMvYXJjaGl2ZXMuYzo3MzQgc3JjL3N0YXRjbWQuYzoxNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igc2V0dGluZyBvd25lcnNoaXAgb2YgYCUuMjU1cyciCittc2dzdHIgImZvdXQgYmlqIGhldCBpbnN0ZWxsZW4gdmFuIGRlIGVpZ2VuYWFyIHZhbiBgJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6MjY3IHNyYy9hcmNoaXZlcy5jOjczNiBzcmMvc3RhdGNtZC5jOjE2NQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIHBlcm1pc3Npb25zIG9mIGAlLjI1NXMnIgorbXNnc3RyICJmb3V0IGJpaiBoZXQgaW5zdGVsbGVuIHZhbiBkZSBwZXJtaXNzaWVzIG9wIGAlLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzozOTUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBzdGF0IChkZXJlZmVyZW5jZSkgZXhpc3Rpbmcgc3ltbGluayBgJS4yNTBzJyIKK21zZ3N0ciAia2FuIGAlLjI1MHMnIG5pZXQgdWl0dm9lcmJhYXIgbWFrZW4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjQxNworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZmFpbGVkIHRvIHN0YXQgKGRlcmVmZXJlbmNlKSBwcm9wb3NlZCBuZXcgc3ltbGluayB0YXJnZXQgYCUuMjUwcycgZm9yICIKKyJzeW1saW5rIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjQ3NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorInRyeWluZyB0byBvdmVyd3JpdGUgYCUuMjUwcycsIHdoaWNoIGlzIHRoZSBkaXZlcnRlZCB2ZXJzaW9uIG9mIGAiCisiJS4yNTBzJyAocGFja2FnZTogJS4xMDBzKSIKK21zZ3N0ciAiIgorInBvZ2luZyB0b3Qgb3ZlcnNjaHJpanZlbiB2YW4gYCUuMjUwcycsIHdhdCBlZW4gb21nZWxlaWRlIHZlcnNpZSBpcyB2YW4gYCIKKyIlLjI1MHMnJS4xMHMlLjEwMHMlLjEwcyIKKworIzogc3JjL2FyY2hpdmVzLmM6NDgxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ0cnlpbmcgdG8gb3ZlcndyaXRlIGAlLjI1MHMnLCB3aGljaCBpcyB0aGUgZGl2ZXJ0ZWQgdmVyc2lvbiBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiIgorInBvZ2luZyB0b3Qgb3ZlcnNjaHJpanZlbiB2YW4gYCUuMjUwcycsIHdhdCBlZW4gb21nZWxlaWRlIHZlcnNpZSBpcyB2YW4gYCIKKyIlLjI1MHMnJS4xMHMlLjEwMHMlLjEwcyIKKworIzogc3JjL2FyY2hpdmVzLmM6NTExCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGAlLjI1NXMnICh3aGljaCBJIHdhcyBhYm91dCB0byBpbnN0YWxsKSIKK21zZ3N0ciAiIgorImthbiBkZSBzdGF0dXMgdmFuIGAlLjI1NXMnIG5pZXQgb3B2cmFnZW4gKGRpZSBpayBuZXQgd2lsZGUgZ2FhbiBpbnN0YWxsZXJlbikiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjUxOQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidW5hYmxlIHRvIGNsZWFuIHVwIG1lc3Mgc3Vycm91bmRpbmcgYCUuMjU1cycgYmVmb3JlIGluc3RhbGxpbmcgYW5vdGhlciAiCisidmVyc2lvbiIKK21zZ3N0ciAiIgorImthbiBkZSByb21tZWwgcm9uZCBgJS4yNTVzJyBuaWV0IG9wcnVpbWVuIGFsdm9yZW5zIGVlbiBuaWV1d2UgdmVyc2llIHRlICIKKyJpbnN0YWxsZXJlbiIKKworIzogc3JjL2FyY2hpdmVzLmM6NTI1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IHJlc3RvcmVkIGAlLjI1NXMnIGJlZm9yZSBpbnN0YWxsaW5nIGFub3RoZXIgdmVyc2lvbiIKK21zZ3N0ciAiIgorImthbiBkZSBzdGF0dXMgdmFuIGRlIHRlcnVnZ2V6ZXR0ZSBgJS4yNTVzJyBuaWV0IG9wdnJhZ2VuIHZvb3IgZGUgaW5zdGFsbGF0aWUgIgorInZhbiBlZW4gbmlldXdlIHZlcnNpZSIKKworIzogc3JjL2FyY2hpdmVzLmM6NTYxCisjLCBjLWZvcm1hdAorbXNnaWQgImFyY2hpdmUgY29udGFpbmVkIG9iamVjdCBgJS4yNTVzJyBvZiB1bmtub3duIHR5cGUgMHgleCIKK21zZ3N0ciAiYXJjaGllZiBiZXZhdHRlIGVlbiBvYmplY3QgYCUuMjU1cycgdmFuIGhldCBvbmJla2VuZGUgdHlwZSAweCV4IgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2MjYgc3JjL2RpdmVydGNtZC5jOjE1MCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NjgyCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIyMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI4NAorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE0NDEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE2ODAKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTY3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjQ0CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUyNworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiY2Fubm90IHN0YXQgb2xkIG5hbWUgYCVzJzogJXMiCittc2dpZCAiY2Fubm90IHN0YXQgZmlsZSAnJXMnIgorbXNnc3RyICJrYW4gZGUgc3RhdHVzIHZhbiBkZSBvdWRlIG5hYW0gJyVzJyBuaWV0IG9wdnJhZ2VuOiAlcyIKKworIzogc3JjL2FyY2hpdmVzLmM6NjQxCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlcGxhY2luZyBmaWxlcyBpbiBvbGQgcGFja2FnZSAlcyAuLi5cbiIKK21zZ3N0ciAiT3ZlcnNjaHJpanZlbiB2YW4gZGUgYmVzdGFuZGVuIGluIGhldCBvdWRlIHBha2tldCAlcyAuLi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6NjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlcGxhY2VkIGJ5IGZpbGVzIGluIGluc3RhbGxlZCBwYWNrYWdlICVzIC4uLlxuIgorbXNnc3RyICJWZXJ2YW5nZW4gZG9vciBiZXN0YW5kZW4gaW4gZ2XDr25zdGFsbGVlcmQgcGFra2V0ICVzIC4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ0cnlpbmcgdG8gb3ZlcndyaXRlIGRpcmVjdG9yeSAnJS4yNTBzJyBpbiBwYWNrYWdlICUuMjUwcyAlLjI1MHMgd2l0aCAiCisibm9uZGlyZWN0b3J5IgorbXNnc3RyICIiCisicG9naW5nIHRvdCBvdmVyc2NocmlqdmVuIHZhbiBtYXAgYCUuMjUwcycgaW4gcGFra2V0ICUuMjUwcyBtZXQgaWV0cyBkYXQgZ2VlbiAiCisibWFwIGlzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInRyeWluZyB0byBvdmVyd3JpdGUgJyUuMjUwcycsIHdoaWNoIGlzIGFsc28gaW4gcGFja2FnZSAlLjI1MHMgJS4yNTBzIgorbXNnc3RyICJwb2dpbmcgdG90IG92ZXJzY2hyaWp2ZW4gdmFuIGAlLjI1MHMnLCB3YXQgb29rIGluIHBha2tldCAlLjI1MHMgeml0IgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3MTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgYCUuMjU1cycgKHdoaWxlIHByb2Nlc3NpbmcgYCUuMjU1cycpIgorbXNnc3RyICJrYW4gbmlldCBgJS4yNTVzJyBuaWV0IGxlemVuIChpbiBgJS4yNTVzJykiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjcxOAorIywgYy1mb3JtYXQKK21zZ2lkICJiYWNrZW5kIGRwa2ctZGViIGR1cmluZyBgJS4yNTVzJyIKK21zZ3N0ciAiZm91dCBpbiBkcGtnLWRlYiB0aWpkZW5zIGAlLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NDQgc3JjL2FyY2hpdmVzLmM6OTA4IHNyYy9hcmNoaXZlcy5jOjk0OQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nL3dyaXRpbmcgYCUuMjU1cyciCittc2dzdHIgImZvdXQgYmlqIGhldCBzbHVpdGVuIHZhbi9zY2hyaWp2ZW4gbmFhciBgJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6NzQ4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIHBpcGUgYCUuMjU1cyciCittc2dzdHIgImZvdXQgYmlqIGhldCBhYW5tYWtlbiB2YW4gZGUgcGlqcCBgJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6NzUzIHNyYy9hcmNoaXZlcy5jOjc1OAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBkZXZpY2UgYCUuMjU1cyciCittc2dzdHIgImZvdXQgYmlqIGhldCBhYW5tYWtlbiB2YW4gaGV0IGFwcGFyYWF0YmVzdGFuZCBgJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6NzcxCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIGhhcmQgbGluayBgJS4yNTVzJyIKK21zZ3N0ciAiZm91dCBiaWogaGV0IG1ha2VuIHZhbiBkZSB2YXN0ZSBrb3BwZWxpbmcgYCUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc3NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NTM5CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIHN5bWJvbGljIGxpbmsgYCUuMjU1cyciCittc2dzdHIgImZvdXQgYmlqIGhldCBtYWtlbiB2YW4gZGUgc3ltYm9saXNjaGUga29wcGVsaW5nIGAlLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgZGlyZWN0b3J5IGAlLjI1NXMnIgorbXNnc3RyICJmb3V0IGJpaiBoZXQgbWFrZW4gdmFuIGRlIG1hcCBgJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6ODIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBtb3ZlIGFzaWRlIGAlLjI1NXMnIHRvIGluc3RhbGwgbmV3IHZlcnNpb24iCittc2dzdHIgImt1biBgJS4yNTVzJyBuaWV0IG9wemlqIHpldHRlbiBvbSBlZW4gbmlldXdlIHZlcnNpZSB0ZSBpbnN0YWxsZXJlbiIKKworIzogc3JjL2FyY2hpdmVzLmM6ODMyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzozMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgbGluayBgJS4yNTVzJyIKK21zZ3N0ciAia2FuIGtvcHBlbGluZyBuaWV0IGxlemVuIHVpdCBgJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6ODM0IHNyYy9jb25maWd1cmUuYzo0MjMKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ltYm9saWMgbGluayAnJS4yNTBzJyBzaXplIGhhcyBjaGFuZ2VkIGZyb20gJWpkIHRvICV6ZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG1ha2UgYmFja3VwIHN5bWxpbmsgZm9yIGAlLjI1NXMnIgorbXNnc3RyICJrYW4gZ2VlbiByZXNlcnZla29wcGVsaW5nIG1ha2VuIHZvb3IgYCUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjg0MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hvd24gYmFja3VwIHN5bWxpbmsgZm9yIGAlLjI1NXMnIgorbXNnc3RyICJrYW4gZGUgZWlnZW5hYXIgdmFuIGRlIHJlc2VydmVrb3BwZWxpbmcgbmlldCBpbnN0ZWxsZW4gdm9vciBgJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6ODQ2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBtYWtlIGJhY2t1cCBsaW5rIG9mIGAlLjI1NXMnIGJlZm9yZSBpbnN0YWxsaW5nIG5ldyB2ZXJzaW9uIgorbXNnc3RyICIiCisia2FuIGdlZW4gcmVzZXJ2ZWtvcHBlbGluZyB2YW4gYCUuMjU1cycgbWFrZW4gdm9vciBkZSBpbnN0YWxsYXRpZSB2YW4gZGUgIgorIm5pZXV3ZSB2ZXJzaWUiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjg2MyBzcmMvYXJjaGl2ZXMuYzo5NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IHZlcnNpb24gb2YgYCUuMjU1cyciCittc2dzdHIgImthbiBkZSBuaWV1d2UgdmVyc2llIHZhbiBgJS4yNTVzJyBuaWV0IGluc3RhbGxlcmVuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo5MDIgc3JjL2FyY2hpdmVzLmM6OTQ1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiAnJS4yNTVzJyIKK21zZ3N0ciAia2FuIGAlLjI1NXMnIG5pZXQgYWFubWFrZW4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjk0NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgZmlsZSAnJS4yNTVzJyIKK21zZ3N0ciAia2FuIGAlLjI1NXMnIG5pZXQgb250YnVmZmVyZW4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMDAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpZ25vcmluZyBkZXBlbmRlbmN5IHByb2JsZW0gd2l0aCAlczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6IHdhYXJzY2h1d2luZyAtIHZlcmVpc3RlbnByb2JsZWVtIGJpaiBoZXQgdmVyd2lqZGVyZW4gdmFuICVzIHdvcmR0ICIKKyJnZW5lZ2VlcmQ6XG4iCisiJXMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJjb25zaWRlcmluZyBkZWNvbmZpZ3VyYXRpb24gb2YgZXNzZW50aWFsXG4iCisiIHBhY2thZ2UgJXMsIHRvIGVuYWJsZSAlcy4iCittc2dzdHIgIiIKKyJkcGtnOiB3YWFyc2NodXdpbmcgLSBkZWNvbmZpZ3VyYXRpZSB2YW4gaGV0IGVzc2VudGnDq2xlXG4iCisiIHBha2tldCAlcyB3b3JkdCBvdmVyd29nZW4gdGVuZWluZGUgJXMgdGUga3VubmVuIHZlcndpamRlcmVuLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDA4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogbm8sICVzIGlzIGVzc2VudGlhbCwgd2lsbCBub3QgZGVjb25maWd1cmVcbiIKKyIgaXQgaW4gb3JkZXIgdG8gZW5hYmxlICVzLlxuIgorbXNnc3RyICIiCisiZHBrZzogbmVlLCAlcyBpcyBlc3NlbnRpw6tlbCBlbiB3b3JkdCBkdXMgbmlldCBnZWRlY29uZmlndXJlZXJkXG4iCisiIG9tIGRlIHZlcndpamRlcmluZyB2YW4gJXMgbW9nZWxpamsgdGUgbWFrZW4uXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMjIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBubywgY2Fubm90IHByb2NlZWQgd2l0aCAlcyAoLS1hdXRvLWRlY29uZmlndXJlIHdpbGwgaGVscCk6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiBuZWUsICVzIGthbiBuaWV0IHZlcndpamRlcmQgd29yZGVuICgtLWF1dG8tZGVjb25maWd1cmUga2FuIGhlbHBlbik6XG4iCisiJXMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMzIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInJlbW92YWwgb2YgJS4yNTBzIgorbXNnc3RyICJsZWVzZm91dCBpbiAlLjI1MHMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNTcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImluc3RhbGxhdGlvbiBvZiAlLjI1MHMiCittc2dzdHIgImthbiBkZSBuaWV1d2UgdmVyc2llIHZhbiBgJS4yNTVzJyBuaWV0IGluc3RhbGxlcmVuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDU4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogY29uc2lkZXJpbmcgZGVjb25maWd1cmF0aW9uIG9mICVzLCB3aGljaCB3b3VsZCBiZSBicm9rZW4gYnkgJXMgLi4uXG4iCittc2dzdHIgImRwa2c6IHZlcndpamRlcmluZyB2YW4gJXMgdGVuIGd1bnN0ZSB2YW4gJXMgd29yZHQgb3ZlcndvZ2VuLi4uXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNjUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IHllcywgd2lsbCBkZWNvbmZpZ3VyZSAlcyAoYnJva2VuIGJ5ICVzKS5cbiIKK21zZ3N0ciAiZHBrZzogamEsICVzIHdvcmR0IHZlcndpamRlcmQgdGVuIGd1bnN0ZSB2YW4gJXMuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNjkgc3JjL2FyY2hpdmVzLmM6MTE4NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogcmVnYXJkaW5nICVzIGNvbnRhaW5pbmcgJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiBiZXRyZWZmZW5kZSAlcyBkaWUgJXMgYmV2YXQ6XG4iCisiJXMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNzcKKyMsIGZ1enp5Cittc2dpZCAiaWdub3JpbmcgYnJlYWthZ2UsIG1heSBwcm9jZWVkIGFueXdheSEiCittc2dzdHIgIiIKKyJkcGtnOiBsZXQgb3AgLSBjb25mbGljdCB3b3JkdCBnZW5lZ2VlcmQsIG1vZ2VsaWprIHdvcmR0IGVyIGRvb3JnZWdhYW4hXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImluc3RhbGxpbmcgJS4yNTBzIHdvdWxkIGJyZWFrICUuMjUwcywgYW5kXG4iCisiIGRlY29uZmlndXJhdGlvbiBpcyBub3QgcGVybWl0dGVkICgtLWF1dG8tZGVjb25maWd1cmUgbWlnaHQgaGVscCkiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA4NgorIywgYy1mb3JtYXQKK21zZ2lkICJpbnN0YWxsaW5nICUuMjUwcyB3b3VsZCBicmVhayBleGlzdGluZyBzb2Z0d2FyZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTE2CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IGNvbnNpZGVyaW5nIHJlbW92aW5nICVzIGluIGZhdm91ciBvZiAlcyAuLi5cbiIKK21zZ3N0ciAiZHBrZzogdmVyd2lqZGVyaW5nIHZhbiAlcyB0ZW4gZ3Vuc3RlIHZhbiAlcyB3b3JkdCBvdmVyd29nZW4uLi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTEyMgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgcHJvcGVybHkgaW5zdGFsbGVkIC0gaWdub3JpbmcgYW55IGRlcGVuZGVuY2llcyBvbiBpdC5cbiIKK21zZ3N0ciAiJXMgaXMgbmlldCBnb2VkIGdlw69uc3RhbGxlZXJkIC0gdmVyZWlzdGVuIHdvcmRlbiBnZW5lZ2VlcmQuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogbWF5IGhhdmUgdHJvdWJsZSByZW1vdmluZyAlcywgYXMgaXQgcHJvdmlkZXMgJXMgLi4uXG4iCittc2dzdHIgIiIKKyJkcGtnOiBtb2dlbGlqayBnZWVmdCBoZXQgdmVyd2lqZGVyZW4gdmFuICVzIHByb2JsZW1lbiwgYWFuZ2V6aWVuIGhldCAlcyAiCisidm9vcnppZXQgLi4uXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExNjYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBwYWNrYWdlICVzIHJlcXVpcmVzIHJlaW5zdGFsbGF0aW9uLCBidXQgd2lsbCByZW1vdmUgYW55d2F5IGFzIHlvdSAiCisicmVxdWVzdGVkLlxuIgorbXNnc3RyICIiCisiZHBrZzogcGFra2V0ICVzIGJlaG9lZnQgaGVyaW5zdGFsbGF0aWUsIG9wIHV3IGFhbnZyYWFnIHdvcmR0IGhldCB0b2NoICIKKyJ2ZXJ3aWpkZXJkLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTY5CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IHBhY2thZ2UgJXMgcmVxdWlyZXMgcmVpbnN0YWxsYXRpb24sIHdpbGwgbm90IHJlbW92ZS5cbiIKK21zZ3N0ciAiZHBrZzogcGFra2V0ICVzIGJlaG9lZnQgaGVyaW5zdGFsbGF0aWUsIHphbCBoZXQgbmlldCB2ZXJ3aWpkZXJlbi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE3OAorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiB5ZXMsIHdpbGwgcmVtb3ZlICVzIGluIGZhdm91ciBvZiAlcy5cbiIKK21zZ3N0ciAiZHBrZzogamEsICVzIHdvcmR0IHZlcndpamRlcmQgdGVuIGd1bnN0ZSB2YW4gJXMuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmxpY3RpbmcgcGFja2FnZXMgLSBub3QgaW5zdGFsbGluZyAlLjI1MHMiCittc2dzdHIgImNvbmZsaWN0ZXJlbmRlIHBha2tldHRlbiAtICUuMjUwcyB3b3JkdCBuaWV0IGdlw69uc3RhbGxlZXJkIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTkxCisjLCBmdXp6eQorbXNnaWQgImlnbm9yaW5nIGNvbmZsaWN0LCBtYXkgcHJvY2VlZCBhbnl3YXkhIgorbXNnc3RyICIiCisiZHBrZzogbGV0IG9wIC0gY29uZmxpY3Qgd29yZHQgZ2VuZWdlZXJkLCBtb2dlbGlqayB3b3JkdCBlciBkb29yZ2VnYWFuIVxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjM1CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgLS1yZWN1cnNpdmUgbmVlZHMgYXQgbGVhc3Qgb25lIHBhdGggYXJndW1lbnQiCittc2dzdHIgIi0tJXMgLS1yZWN1cnNpdmUgaGVlZnQgb3AgemlqbiBtaW5zdCDDqcOpbiBwYWQtYXJndW1lbnQgbm9kaWciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNDUKKyMsIGZ1enp5Cittc2dpZCAiZmluZCBmb3IgZHBrZyAtLXJlY3Vyc2l2ZSIKK21zZ3N0ciAidWl0dm9lcmVuIHZhbiAnZmluZCcgdm9vciAtLXJlY3Vyc2l2ZSBpcyBtaXNsdWt0IgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjY2Cittc2dpZCAiZmFpbGVkIHRvIGZkb3BlbiBmaW5kJ3MgcGlwZSIKK21zZ3N0ciAiaGV0IHRvZXBhc3NlbiB2YW4gZmRvcGVuIG9wIGRlIHBpanAgbmFhciBmaW5kIGlzIG1pc2x1a3QiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNzIKK21zZ2lkICJlcnJvciByZWFkaW5nIGZpbmQncyBwaXBlIgorbXNnc3RyICJmb3V0IGJpaiBoZXQgbGV6ZW4gdmFuIGRlIHBpanAgbmFhciBmaW5kIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjczCittc2dpZCAiZXJyb3IgY2xvc2luZyBmaW5kJ3MgcGlwZSIKK21zZ3N0ciAiZm91dCBiaWogaGV0IHNsdWl0ZW4gdmFuIGRlIHBpanAgbmFhciBmaW5kIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjc2CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbmQgZm9yIC0tcmVjdXJzaXZlIHJldHVybmVkIHVuaGFuZGxlZCBlcnJvciAlaSIKK21zZ3N0ciAiZmluZCB2b29yIC0tcmVjdXJzaXZlIGdhZiBvbmFmZ2VoYW5kZWxkZSBmb3V0ICVpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjc5Cittc2dpZCAic2VhcmNoZWQsIGJ1dCBmb3VuZCBubyBwYWNrYWdlcyAoZmlsZXMgbWF0Y2hpbmcgKi5kZWIpIgorbXNnc3RyICIiCisiZXIgaXMgZ2VrZWtlbiwgbWFhciBlciB6aWpuIGdlZW4gcGFra2V0dGVuIGdldm9uZGVuIChiZXN0YW5kZW4gZGllICIKKyJvdmVyZWVua29tZW4gbWV0ICouZGViKSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI5MAorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGF0IGxlYXN0IG9uZSBwYWNrYWdlIGFyY2hpdmUgZmlsZSBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyBoZWVmdCBvcCB6aWpuIG1pbnN0IMOpw6luIHBha2tldC1iZXN0YW5kc25hYW0gYXJndW1lbnQgbm9kaWciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzMjUgc3JjL2RpdmVydGNtZC5jOjc4IHNyYy9kaXZlcnRjbWQuYzoxMTgKKyM6IHNyYy9lbnF1aXJ5LmM6MTY2IHNyYy9lbnF1aXJ5LmM6Mjc5IHNyYy9lbnF1aXJ5LmM6NDQ5IHNyYy9lbnF1aXJ5LmM6NDUxCisjOiBzcmMvZW5xdWlyeS5jOjQ2NCBzcmMvbWFpbi5jOjY2IHNyYy9tYWluLmM6MTYzIHNyYy9tYWluLmM6MzE0CisjOiBzcmMvbWFpbi5jOjQ5MyBzcmMvcGFja2FnZXMuYzoyNTQgc3JjL3F1ZXJ5Y21kLmM6MjUyIHNyYy9xdWVyeWNtZC5jOjM1NQorIzogc3JjL3F1ZXJ5Y21kLmM6Mzk2IHNyYy9xdWVyeWNtZC5jOjQwNCBzcmMvcXVlcnljbWQuYzo0NDggc3JjL3F1ZXJ5Y21kLmM6NTE3CisjOiBzcmMvcXVlcnljbWQuYzo2MDYgc3JjL3F1ZXJ5Y21kLmM6NjUwIHNyYy9zZWxlY3QuYzo3OSBzcmMvc3RhdGNtZC5jOjY4CisjOiBzcmMvc3RhdGNtZC5jOjk4IHNyYy90cmlnY21kLmM6NTggc3JjL3RyaWdjbWQuYzo5MCBkcGtnLWRlYi9idWlsZC5jOjQ0MQorIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIxNyBkcGtnLWRlYi9leHRyYWN0LmM6MjUwIGRwa2ctZGViL2luZm8uYzoyMDMKKyM6IGRwa2ctZGViL2luZm8uYzoyNjUgZHBrZy1kZWIvbWFpbi5jOjYwIGRwa2ctZGViL21haW4uYzoxMjYKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjI1NyBkcGtnLXNwbGl0L21haW4uYzo1NCBkcGtnLXNwbGl0L21haW4uYzo5OAorIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE0NCBkcGtnLXNwbGl0L3F1ZXVlLmM6MjgwCittc2dpZCAiPHN0YW5kYXJkIG91dHB1dD4iCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTMyNiBzcmMvcGFja2FnZXMuYzoyNTUgc3JjL3F1ZXJ5Y21kLmM6MjUzCisjOiBzcmMvcXVlcnljbWQuYzozNTMgc3JjL3F1ZXJ5Y21kLmM6NDU0IHNyYy9xdWVyeWNtZC5jOjUxOCBzcmMvc2VsZWN0LmM6ODAKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjE2OSBkcGtnLXNwbGl0L3F1ZXVlLmM6MjE4Cittc2dpZCAiPHN0YW5kYXJkIGVycm9yPiIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzY3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJTZWxlY3RpbmcgcHJldmlvdXNseSBkZXNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dpZCAiU2VsZWN0aW5nIHByZXZpb3VzbHkgdW5zZWxlY3RlZCBwYWNrYWdlICVzLlxuIgorbXNnc3RyICJTZWxlY3RlcmVuIHZhbiB2b29yaGVlbiBuaWV0IGdlc2VsZWN0ZWVyZCBwYWtrZXQgJXMuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzNzEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIlNraXBwaW5nIGRlc2VsZWN0ZWQgcGFja2FnZSAlcy5cbiIKK21zZ2lkICJTa2lwcGluZyB1bnNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dzdHIgIk92ZXJzbGFhbiB2YW4gbmlldCBnZXNlbGVjdGVlcmQgcGFra2V0ICVzLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzg3CisjLCBjLWZvcm1hdAorbXNnaWQgIlZlcnNpb24gJS4yNTBzIG9mICUuMjUwcyBhbHJlYWR5IGluc3RhbGxlZCwgc2tpcHBpbmcuXG4iCittc2dzdHIgIlZlcnNpZSAlLjI1MHMgdmFuICUuMjUwcyBpcyByZWVkcyBnZcOvbnN0YWxsZWVyZCwgd29yZHQgb3Zlcmdlc2xhZ2VuLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzk3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJkb3duZ3JhZGluZyAlLjI1MHMgZnJvbSAlLjI1MHMgdG8gJS4yNTBzLiIKK21zZ3N0ciAiJXMgLSBsZXQgb3A6ICUuMjUwcyB3b3JkdCBnZWRlZ3JhZGVlcmQgdmFuICUuMjUwcyBuYWFyICUuMjUwcy5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTQwMgorIywgYy1mb3JtYXQKK21zZ2lkICJXaWxsIG5vdCBkb3duZ3JhZGUgJS4yNTBzIGZyb20gdmVyc2lvbiAlLjI1MHMgdG8gJS4yNTBzLCBza2lwcGluZy5cbiIKK21zZ3N0ciAiIgorIiUuMjUwcyB3b3JkdCBuaWV0IGdlZGVncmFkZWVyZCB2YW4gdmVyc2llICUuMjUwcyBuYWFyICUuMjUwcywgbWFhciB3b3JkdCAiCisib3Zlcmdlc2xhZ2VuLlxuIgorCisjOiBzcmMvY2xlYW51cC5jOjg2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1bmFibGUgdG8gcmVtb3ZlIG5ld2x5LWluc3RhbGxlZCB2ZXJzaW9uIG9mIGAlLjI1MHMnIHRvIGFsbG93IHJlaW5zdGFsbGF0aW9uICIKKyJvZiBiYWNrdXAgY29weSIKK21zZ3N0ciAiIgorImthbiBkZSBuaWV1dyBnZcOvbnN0YWxsZWVyZGUgdmVyc2llIHZhbiBgJS4yNTBzJyBuaWV0IHZlcndpamRlcmVuIG9tIGRlICIKKyJyZXNlcnZla29waWUgd2VlciB0ZSBpbnN0YWxsZXJlbiIKKworIzogc3JjL2NsZWFudXAuYzo5MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVzdG9yZSBiYWNrdXAgdmVyc2lvbiBvZiBgJS4yNTBzJyIKK21zZ3N0ciAia2FuIGRlIHJlc2VydmVrb3BpZS12ZXJzaWUgdmFuIGAlLjI1MHMnIG5pZXQgdGVydWd6ZXR0ZW4iCisKKyM6IHNyYy9jbGVhbnVwLmM6OTcKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byByZXN0b3JlIGJhY2t1cCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgYmFja3VwIGNvcHkgb2YgJyUuMjUwcyciCittc2dzdHIgImthbiBkZSByZXNlcnZla29waWUtdmVyc2llIHZhbiBgJS4yNTBzJyBuaWV0IHRlcnVnemV0dGVuIgorCisjOiBzcmMvY2xlYW51cC5jOjEwMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIG5ld2x5LWluc3RhbGxlZCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICJrYW4gZGUgbmlldXcgZ2XDr25zdGFsbGVlcmRlIHZlcnNpZSB2YW4gYCUuMjUwcycgbmlldCB2ZXJ3aWpkZXJlbiIKKworIzogc3JjL2NsZWFudXAuYzoxMDgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBuZXdseS1leHRyYWN0ZWQgdmVyc2lvbiBvZiBgJS4yNTBzJyIKK21zZ3N0ciAia2FuIGRlIG5pZXV3IGdlw6t4dHJhaGVlcmRlIHZlcnNpZSB2YW4gYCUuMjUwcycgbmlldCB2ZXJ3aWpkZXJlbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjEwNAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHN0YXQgbmV3IGRpc3QgY29uZmZpbGUgYCUuMjUwcyciCittc2dpZCAidW5hYmxlIHRvIHN0YXQgbmV3IGRpc3RyaWJ1dGVkIGNvbmZmaWxlICclLjI1MHMnIgorbXNnc3RyICIiCisia2FuIGRlIHN0YXR1cyB2YW4gZGUgbmlldXcgZ2VkaXN0cmlidWVlcmRlIGNvbmZmaWxlIGAlLjI1MHMnIG5pZXQgb3B2cmFnZW4iCisKKyM6IHNyYy9jb25maWd1cmUuYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgY3VycmVudCBpbnN0YWxsZWQgY29uZmZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKyJrYW4gZGUgc3RhdHVzIHZhbiBkZSBodWlkaWcgZ2XDr25zdGFsbGVlcmRlIGNvbmZmaWxlIGAlLjI1MHMnIG5pZXQgb3B2cmFnZW4iCisKKyM6IHNyYy9jb25maWd1cmUuYzoxMjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIkNvbmZpZ3VyYXRpb24gZmlsZSBgJXMnLCBkb2VzIG5vdCBleGlzdCBvbiBzeXN0ZW0uXG4iCisiSW5zdGFsbGluZyBuZXcgY29uZmlnIGZpbGUgYXMgeW91IHJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiIgorIlxuIgorIkNvbmZpZ3VyYXRpZWJlc3RhbmQgYCVzJyBiZXN0YWF0IG5pZXQgb3AgaGV0IHN5c3RlZW0uXG4iCisiSGV0IG5pZXV3ZSBjb25maWd1cmF0aWViZXN0YW5kIHdvcmR0IGdlw69uc3RhbGxlZXJkIHpvYWxzIGdldnJhYWdkLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTY4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIHJlbW92ZSBvbGQgYmFja3VwICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiB3YWFyc2NodXdpbmcgLSBrYW4gb3VkZSByZXNlcnZla29waWUgYCUuMjUwcycgbmlldCB2ZXJ3aWpkZXJlbjogIgorIiVzXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzoxNzYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVuYW1lICclLjI1MHMnIHRvICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiB3YWFyc2NodXdpbmcgLSBrYW4gYCUuMjUwcycgbmlldCBoZXJub2VtZW4gbmFhciBgJS4yNTBzJzogJXNcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE4MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW1vdmUgJyUuMjUwcyc6ICVzIgorbXNnc3RyICIlczogdWl0dm9lcmVuIHZhbiAnJXMgJXMnIGlzIG1pc2x1a3QiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxODgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlIG9sZCBkaXN0cmlidXRlZCB2ZXJzaW9uICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiB3YWFyc2NodXdpbmcgLSBrYW4gb3VkZSBnZWRpc3RyaWJ1ZWVyZGUgdmVyc2llIGAlLjI1MHMnIG5pZXQgIgorInZlcndpamRlcmVuOiAlc1xuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTkyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIHJlbW92ZSAnJS4yNTBzJyAoYmVmb3JlIG92ZXJ3cml0ZSk6ICVzIgorbXNnc3RyICIiCisiZHBrZzogJXM6IHdhYXJzY2h1d2luZyAtIGthbiBgJS4yNTBzJyBuaWV0IHZlcndpamRlcmVuICh2b29yIG92ZXJzY2hyaWp2ZW4pOiAiCisiJXNcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE5NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byBsaW5rICclLjI1MHMnIHRvICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiB3YWFyc2NodXdpbmcgLSBrYW4gYCUuMjUwcycgbmlldCBuYWFyIGAlLjI1MHMnIGxhdGVuIHZlcndpanplbjogIgorIiVzXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzoyMDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW5zdGFsbGluZyBuZXcgdmVyc2lvbiBvZiBjb25maWcgZmlsZSAlcyAuLi5cbiIKK21zZ3N0ciAiSW5zdGFsbGVyZW4gdmFuIG5pZXV3ZSB2ZXJzaWUgdmFuIGNvbmZpZ3VyYXRpZWJlc3RhbmQgJXMgLi4uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzoyMDYgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjU0NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBgJS4yNTBzJyBhcyBgJS4yNTBzJyIKK21zZ3N0ciAia2FuIGAlLjI1MHMnIG5pZXQgaW5zdGFsbGVyZW4gYWxzIGAlLjI1MHMnIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjU3CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHBhY2thZ2UgbmFtZWQgYCVzJyBpcyBpbnN0YWxsZWQsIGNhbm5vdCBjb25maWd1cmUiCittc2dzdHIgIiIKKyJlZW4gcGFra2V0IG1ldCBkZSBuYWFtIGAlcycgaXMgbmlldCBnZcOvbnN0YWxsZWVyZCwga2FuIGhldCBuaWV0IGNvbmZpZ3VyZXJlbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI2MAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlICUuMjUwcyBpcyBhbHJlYWR5IGluc3RhbGxlZCBhbmQgY29uZmlndXJlZCIKK21zZ3N0ciAicGFra2V0ICUuMjUwcyBpcyByZWVkcyBnZcOvbnN0YWxsZWVyZCBlbiBnZWNvbmZpZ3VyZWVyZCIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI2MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisicGFja2FnZSAlLjI1MHMgaXMgbm90IHJlYWR5IGZvciBjb25maWd1cmF0aW9uXG4iCisiIGNhbm5vdCBjb25maWd1cmUgKGN1cnJlbnQgc3RhdHVzIGAlLjI1MHMnKSIKK21zZ3N0ciAiIgorInBha2tldCAlLjI1MHMgaXMgbmlldCBnZXJlZWQgdm9vciBjb25maWd1cmF0aWVcbiIKKyIga2FuIGhldCBuaWV0IGNvbmZpZ3VyZXJlbiAoaHVpZGlnZSBzdGF0dXMgYCUuMjUwcycpIgorCisjOiBzcmMvY29uZmlndXJlLmM6Mjk0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBkZXBlbmRlbmN5IHByb2JsZW1zIHByZXZlbnQgY29uZmlndXJhdGlvbiBvZiAlczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6IHZlcmVpc3RlbnByb2JsZW1lbiB2ZXJoaW5kZXJlbiBkZSBjb25maWd1cmF0aWUgdmFuICVzOlxuIgorIiVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6Mjk3Cittc2dpZCAiZGVwZW5kZW5jeSBwcm9ibGVtcyAtIGxlYXZpbmcgdW5jb25maWd1cmVkIgorbXNnc3RyICJ2ZXJlaXN0ZW5wcm9ibGVtZW4gLSBibGlqZnQgb25nZWNvbmZpZ3VyZWVyZCIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjMwMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogJXM6IGRlcGVuZGVuY3kgcHJvYmxlbXMsIGJ1dCBjb25maWd1cmluZyBhbnl3YXkgYXMgeW91IHJlcXVlc3RlZDpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiB2ZXJlaXN0ZW5wcm9ibGVtZW4sIG1hYXIgd29yZHQgdG9jaCBnZWNvbmZpZ3VyZWVyZCB6b2FscyAiCisiZ2V2cmFhZ2Q6XG4iCisiJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzozMDkKK21zZ2lkICIiCisiUGFja2FnZSBpcyBpbiBhIHZlcnkgYmFkIGluY29uc2lzdGVudCBzdGF0ZSAtIHlvdSBzaG91bGRcbiIKKyIgcmVpbnN0YWxsIGl0IGJlZm9yZSBhdHRlbXB0aW5nIGNvbmZpZ3VyYXRpb24uIgorbXNnc3RyICIiCisiUGFra2V0IGlzIGluIGVlbiB6ZWVyIGluY29uc2lzdGVudGUgc3RhYXQgLSB1IHp1bHQgaGV0IG9wbmlldXdcbiIKKyIgbW9ldGVuIGluc3RhbGxlcmVuIGFsdm9yZW5zIGhldCB0ZSBjb25maWd1cmVyZW4uIgorCisjOiBzcmMvY29uZmlndXJlLmM6MzEyCisjLCBjLWZvcm1hdAorbXNnaWQgIlNldHRpbmcgdXAgJXMgKCVzKSAuLi5cbiIKK21zZ3N0ciAiSW5zdGVsbGVuIHZhbiAlcyAoJXMpIC4uLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6Mzk2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IHVuYWJsZSB0byBzdGF0IGNvbmZpZyBmaWxlICclcydcbiIKKyIgKD0gJyVzJyk6ICVzIgorbXNnc3RyICIiCisiZHBrZzogJXM6IHdhYXJzY2h1d2luZyAtIGthbiBkZSBzdGF0dXMgdmFuIGNvbmZpZ3VyYXRpZWJlc3RhbmQgYCVzJyBuaWV0ICIKKyJvcHZyYWdlblxuIgorIiAoPSBgJXMnKTogJXNcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQwOQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBjb25maWcgZmlsZSAnJXMnIGlzIGEgY2lyY3VsYXIgbGlua1xuIgorIiAoPSAnJXMnKSIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiB3YWFyc2NodXdpbmcgLSBjb25maWd1cmF0aWViZXN0YW5kIGAlcycgaXMgZWVuIGNpcmN1bGFpcmUgIgorInZlcndpanppbmdcbiIKKyIgKD0gYCVzJylcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQxOAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiB1bmFibGUgdG8gcmVhZGxpbmsgY29uZmZpbGUgJyVzJ1xuIgorIiAoPSAnJXMnKTogJXMiCittc2dzdHIgIiIKKyJkcGtnOiAlczogd2FhcnNjaHV3aW5nIC0gcmVhZGxpbmsgb3AgY29uZmlndXJhdGllYmVzdGFuZCBgJXMnIGlzIG1pc2x1a3RcbiIKKyIgKD0gYCVzJyk6ICVzXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo0NDQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogY29uZmZpbGUgJyUuMjUwcycgcmVzb2x2ZXMgdG8gZGVnZW5lcmF0ZSBmaWxlbmFtZVxuIgorIiAoJyVzJyBpcyBhIHN5bWxpbmsgdG8gJyVzJykiCittc2dzdHIgIiIKKyJkcGtnOiAlczogd2FhcnNjaHV3aW5nIC0gY29uZmlndXJhdGllYmVzdGFuZCBgJS4yNTBzJyB2ZXJ3aWpzdCBuYWFyIGVlbiAiCisidmVyb3VkZXJkZSBiZXN0YW5kc25hYW1cbiIKKyIgKGAlcycgaXMgZWVuIHN5bWJvbGlzY2hlIGtvcHBlbGluZyBuYWFyIGAlcycpXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo0NjAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBjb25mZmlsZSAnJS4yNTBzJyBpcyBub3QgYSBwbGFpbiBmaWxlIG9yIHN5bWxpbmsgKD0gJyVzJykiCittc2dzdHIgIiIKKyJkcGtnOiAlczogd2FhcnNjaHV3aW5nIC0gY29uZmlndXJhdGllYmVzdGFuZCBgJS4yNTBzJyBpcyBuaWV0IGVlbiBnZXdvb24gIgorImJlc3RhbmQgb2Ygc3ltYm9saXNjaGUga29wcGVsaW5nICg9IGAlcycpXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo0ODYKK21zZ2lkICJtZDVoYXNoIgorbXNnc3RyICJtZDVoYXNoIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDkyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogdW5hYmxlIHRvIG9wZW4gY29uZmZpbGUgJXMgZm9yIGhhc2g6ICVzIgorbXNnc3RyICIiCisiZHBrZzogJXM6IHdhYXJzY2h1d2luZyAtIGthbiBjb25maWd1cmF0aWViZXN0YW5kICVzIG5pZXQgb3BlbmVuIHZvb3IgaGFzaDogIgorIiVzXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo1MjIgc3JjL2NvbmZpZ3VyZS5jOjUyNgorbXNnaWQgImNvbmZmaWxlIGRpZmZlcmVuY2UgdmlzdWFsaXplciIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NTQzCittc2dpZCAiVHlwZSBgZXhpdCcgd2hlbiB5b3UncmUgZG9uZS5cbiIKK21zZ3N0ciAiVHlwZSBgZXhpdCcgYWxzIHUga2xhYXIgYmVudC5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjU1MiBzcmMvY29uZmlndXJlLmM6NTU2Cittc2dpZCAiY29uZmZpbGUgc2hlbGwiCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYwMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiQ29uZmlndXJhdGlvbiBmaWxlIGAlcyciCittc2dzdHIgIiIKKyJcbiIKKyJDb25maWd1cmF0aWViZXN0YW5kIGAlcyciCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIChhY3R1YWxseSBgJXMnKSIKK21zZ3N0ciAiIChpbiB3ZXJrZWxpamtoZWlkIGAlcycpIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjA4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgPT0+IEZpbGUgb24gc3lzdGVtIGNyZWF0ZWQgYnkgeW91IG9yIGJ5IGEgc2NyaXB0LlxuIgorIiA9PT4gRmlsZSBhbHNvIGluIHBhY2thZ2UgcHJvdmlkZWQgYnkgcGFja2FnZSBtYWludGFpbmVyLlxuIgorbXNnc3RyICIiCisiXG4iCisiID09PiBCZXN0YW5kIG9wIHN5c3RlZW0gaXMgZ2VtYWFrdCBkb29yIHUgb2YgZWVuIHNjcmlwdC5cbiIKKyIgPT0+IEJlc3RhbmQgeml0IG9vayBpbiBoZXQgcGFra2V0IHZhbiBkZSBwYWtrZXRiZWhlZXJkZXIuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiAgICAgTm90IG1vZGlmaWVkIHNpbmNlIGluc3RhbGxhdGlvbi5cbiIKK21zZ3N0ciAiIgorIlxuIgorIiAgICBOaWV0IHZlcmFuZGVyZCBzaW5kcyBpbnN0YWxsYXRpZS5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYxNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiID09PiBNb2RpZmllZCAoYnkgeW91IG9yIGJ5IGEgc2NyaXB0KSBzaW5jZSBpbnN0YWxsYXRpb24uXG4iCittc2dzdHIgIiIKKyJcbiIKKyIgPT0+IFZlcmFuZGVyZCAoZG9vciB1IG9mIGVlbiBzY3JpcHQpIHNpbmRzIGluc3RhbGxhdGllLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjE2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgPT0+IERlbGV0ZWQgKGJ5IHlvdSBvciBieSBhIHNjcmlwdCkgc2luY2UgaW5zdGFsbGF0aW9uLlxuIgorbXNnc3RyICIiCisiXG4iCisiID09PiBWZXJ3aWpkZXJkIChkb29yIHUgb2YgZWVuIHNjcmlwdCkgc2luZHMgaW5zdGFsbGF0aWUuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBQYWNrYWdlIGRpc3RyaWJ1dG9yIGhhcyBzaGlwcGVkIGFuIHVwZGF0ZWQgdmVyc2lvbi5cbiIKK21zZ3N0ciAiID09PiBQYWtrZXQtZGlzdHJpYnV0ZXVyIGhlZWZ0IGVlbiBiaWpnZXdlcmt0ZSB2ZXJzaWUgZ2VtYWFrdC5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYyMAorIywgYy1mb3JtYXQKK21zZ2lkICIgICAgIFZlcnNpb24gaW4gcGFja2FnZSBpcyB0aGUgc2FtZSBhcyBhdCBsYXN0IGluc3RhbGxhdGlvbi5cbiIKK21zZ3N0ciAiICAgIFZlcnNpZSBpbiBwYWtrZXQgaXMgZ2VsaWprIGFhbiBkaWUgdmFuIGRlIGxhYXRzdGUgaW5zdGFsbGF0aWUuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBVc2luZyBuZXcgZmlsZSBhcyB5b3UgcmVxdWVzdGVkLlxuIgorbXNnc3RyICIgPT0+IE5pZXV3ZSBiZXN0YW5kIHdvcmR0IGdlYnJ1aWt0LCB6b2FscyBnZXZyYWFnZC5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYzMgorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IFVzaW5nIGN1cnJlbnQgb2xkIGZpbGUgYXMgeW91IHJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiID09PiBIdWlkaWdlLCBvdWRlIGJlc3RhbmQgd29yZHQgZ2VicnVpa3Qgem9hbHMgZ2V2cmFhZ2QuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBLZWVwaW5nIG9sZCBjb25maWcgZmlsZSBhcyBkZWZhdWx0LlxuIgorbXNnc3RyICIgPT0+IEh1aWRpZyBvdWRlIGNvbmZpZ3VyYXRpZWJlc3RhbmQgd29yZHQgc3RhbmRhYXJkIGJld2FhcmQuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBVc2luZyBuZXcgY29uZmlnIGZpbGUgYXMgZGVmYXVsdC5cbiIKK21zZ3N0ciAiID09PiBIZXQgbmlldXdlIGJlc3RhbmQgd29yZHQgc3RhbmRhYXJkIGdlYnJ1aWt0LlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjUyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiICAgV2hhdCB3b3VsZCB5b3UgbGlrZSB0byBkbyBhYm91dCBpdCA/ICBZb3VyIG9wdGlvbnMgYXJlOlxuIgorIiAgICBZIG9yIEkgIDogaW5zdGFsbCB0aGUgcGFja2FnZSBtYWludGFpbmVyJ3MgdmVyc2lvblxuIgorIiAgICBOIG9yIE8gIDoga2VlcCB5b3VyIGN1cnJlbnRseS1pbnN0YWxsZWQgdmVyc2lvblxuIgorIiAgICAgIEQgICAgIDogc2hvdyB0aGUgZGlmZmVyZW5jZXMgYmV0d2VlbiB0aGUgdmVyc2lvbnNcbiIKKyIgICAgICBaICAgICA6IHN0YXJ0IGEgc2hlbGwgdG8gZXhhbWluZSB0aGUgc2l0dWF0aW9uXG4iCittc2dzdHIgIiIKKyIgICBXYXQgd2lsdCB1IGVyIGFhbiBkb2VuID8gIERlIHZvbGdlbmRlIGtldXplcyB6aWpuIG1vZ2VsaWprOlxuIgorIiAgICBZIG9mIEkgIDogaW5zdGFsbGVlciBkZSB2ZXJzaWUgdmFuIGRlIHBha2tldGJlaGVlcmRlclxuIgorIiAgICBOIG9mIE8gIDogYmVob3VkdCBkZSBodWlkaWcgZ2XDr25zdGFsbGVlcmRlIHZlcnNpZVxuIgorIiAgICAgIEQgICAgIDogdG9vbiBkZSB2ZXJzY2hpbGxlbiB0dXNzZW4gZGUgdmVyc2llc1xuIgorIiAgICAgIFogICAgIDogc3R1dXIgZGl0IHByb2NlcyBuYWFyIGRlIGFjaHRlcmdyb25kIG9tIGRlIHNpdHVhdGllIHRlICIKKyJiZWtpamtlblxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjU5CisjLCBjLWZvcm1hdAorbXNnaWQgIiBUaGUgZGVmYXVsdCBhY3Rpb24gaXMgdG8ga2VlcCB5b3VyIGN1cnJlbnQgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIERlIHN0YW5kYWFyZGFjdGllIGlzIG9tIGRlIGh1aWRpZ2UgdmVyc2llIHRlIGJld2FyZW4uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIFRoZSBkZWZhdWx0IGFjdGlvbiBpcyB0byBpbnN0YWxsIHRoZSBuZXcgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIERlIHN0YW5kYWFyZGFjdGllIGlzIG9tIGRlIG5pZXV3ZSB2ZXJzaWUgdGUgaW5zdGFsbGVyZW4uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NjYKK21zZ2lkICJbZGVmYXVsdD1OXSIKK21zZ3N0ciAiW3N0YW5kYWFyZD1OXSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY2NworbXNnaWQgIltkZWZhdWx0PVldIgorbXNnc3RyICJbc3RhbmRhYXJkPVldIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjY4Cittc2dpZCAiW25vIGRlZmF1bHRdIgorbXNnc3RyICJbZ2VlbiBzdGFuZGFhcmRdIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjcxCittc2dpZCAiZXJyb3Igd3JpdGluZyB0byBzdGRlcnIsIGRpc2NvdmVyZWQgYmVmb3JlIGNvbmZmaWxlIHByb21wdCIKK21zZ3N0ciAiZm91dCBiaWogc2NocmlqdmVuIG5hYXIgc3RkZXJyLCBvbnRkZWt0IHZvb3IgZGUgY29uZmZpbGUgcHJvbXB0IgorCisjOiBzcmMvY29uZmlndXJlLmM6NjgwCittc2dpZCAicmVhZCBlcnJvciBvbiBzdGRpbiBhdCBjb25mZmlsZSBwcm9tcHQiCittc2dzdHIgImxlZXNmb3V0IG9wIHN0ZGluIGJpaiBjb25mZmlsZSBwcm9tcHQiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2ODEKK21zZ2lkICJFT0Ygb24gc3RkaW4gYXQgY29uZmZpbGUgcHJvbXB0IgorbXNnc3RyICJFT0Ygb3Agc3RkaW4gYmlqIGNvbmZmaWxlIHByb21wdCIKKworIzogc3JjL2RlcGNvbi5jOjE3NQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBkZXBlbmRzIG9uICVzIgorbXNnc3RyICIlcyBpcyBhZmhhbmtlbGlqayB2YW4gJXMiCisKKyM6IHNyYy9kZXBjb24uYzoxNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcHJlLWRlcGVuZHMgb24gJXMiCittc2dzdHIgIiVzIGlzIHZvb3ItYWZoYW5rZWxpamsgdmFuICVzIgorCisjOiBzcmMvZGVwY29uLmM6MTgxCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHJlY29tbWVuZHMgJXMiCittc2dzdHIgIiVzIGJldmVlbHQgYWFuICVzIgorCisjOiBzcmMvZGVwY29uLmM6MTg0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHN1Z2dlc3RzICVzIgorbXNnc3RyICIlcyBzdWdnZXJlZXJ0ICVzIgorCisjOiBzcmMvZGVwY29uLmM6MTg3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGJyZWFrcyAlcyIKK21zZ3N0ciAiJXMgYnJlZWt0ICVzIgorCisjOiBzcmMvZGVwY29uLmM6MTkwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGNvbmZsaWN0cyB3aXRoICVzIgorbXNnc3RyICIlcyBpcyBpbiBzdHJpamQgbWV0ICVzIgorCisjOiBzcmMvZGVwY29uLmM6MTkzCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGVuaGFuY2VzICVzIgorbXNnc3RyICIlcyB2ZXJiZXRlcnQgJXMiCisKKyM6IHNyYy9kZXBjb24uYzoyOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdG8gYmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMgd29yZHQgdmVyd2lqZGVyZC5cbiIKKworIzogc3JjL2RlcGNvbi5jOjI5OQorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB0byBiZSBkZWNvbmZpZ3VyZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIHdvcmR0IGdlZGVjb25maWd1cmVlcmQuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdG8gYmUgaW5zdGFsbGVkLCBidXQgaXMgdmVyc2lvbiAlLjI1MHMuXG4iCittc2dzdHIgIiAgJS4yNTBzIHdvcmR0IGdlw69uc3RhbGxlZXJkLCBtYWFyIGlzIHZlcnNpZSAlLjI1MHMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgaW5zdGFsbGVkLCBidXQgaXMgdmVyc2lvbiAlLjI1MHMuXG4iCittc2dzdHIgIiAgJS4yNTBzIGlzIGdlw69uc3RhbGxlZXJkLCBtYWFyIGlzIHZlcnNpZSAlLjI1MHMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdW5wYWNrZWQsIGJ1dCBoYXMgbmV2ZXIgYmVlbiBjb25maWd1cmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyBpcyB1aXRnZXBha3QsIG1hYXIgaXMgbm9vaXQgZ2Vjb25maWd1cmVlcmQuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdW5wYWNrZWQsIGJ1dCBpcyB2ZXJzaW9uICUuMjUwcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgaXMgdWl0Z2VwYWt0LCBtYWFyIGlzIHZlcnNpZSAlLjI1MHMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozNDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgbGF0ZXN0IGNvbmZpZ3VyZWQgdmVyc2lvbiBpcyAlLjI1MHMuXG4iCittc2dzdHIgIiAgJS4yNTBzIGxhYXRzdCBnZWNvbmZpZ3VyZWVyZGUgdmVyc2llIGlzICUuMjUwcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjM1MworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyAlcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgaXMgJXMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozODgKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGJ1dCBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyBiZXZhdCAlLjI1MHMgbWFhciB3b3JkdCB2ZXJ3aWpkZXJkLlxuIgorCisjOiBzcmMvZGVwY29uLmM6MzkyCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBidXQgaXMgdG8gYmUgZGVjb25maWd1cmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyBiZXZhdCAlLjI1MHMgbWFhciB3b3JkdCBnZWRlY29uZmlndXJlZXJkLlxuIgorCisjOiBzcmMvZGVwY29uLmM6NDAxCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBidXQgaXMgJXMuXG4iCittc2dzdHIgIiAgJS4yNTBzIGJldmF0ICUuMjUwcyBtYWFyIGlzICVzLlxuIgorCisjOiBzcmMvZGVwY29uLmM6NDE1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIG5vdCBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIGlzIG5pZXQgZ2XDr25zdGFsbGVlcmQuXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgKHZlcnNpb24gJS4yNTBzKSBpcyB0byBiZSBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzICh2ZXJzaWUgJS4yNTBzKSB3b3JkdCBnZcOvbnN0YWxsZWVyZC5cbiIKKworIzogc3JjL2RlcGNvbi5jOjQ2OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgKHZlcnNpb24gJS4yNTBzKSBpcyBwcmVzZW50IGFuZCAlcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgKHZlcnNpZSAlLjI1MHMpIGlzICVzLlxuIgorCisjOiBzcmMvZGVwY29uLmM6NDk1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBhbmQgaXMgdG8gYmUgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIgICUuMjUwcyBiZXZhdCAlLjI1MHMgZW4gd29yZHQgZ2XDr25zdGFsbGVlcmRcbiIKKworIzogc3JjL2RlcGNvbi5jOjUzNworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGFuZCBpcyBwcmVzZW50IGFuZCAlcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgYmV2YXQgJS4yNTBzIGVuIGlzICVzLlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTAKKyMsIGZ1enp5Cittc2dpZCAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBkaXZlcnRpbmcgZmlsZXMuIgorbXNnc3RyICJUeXBlIGRwa2ctc3BsaXQgLS1oZWxwIHZvb3IgaHVscC4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo2NiBzcmMvc3RhdGNtZC5jOjU3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo4MAorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gJXMgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiRGViaWFuICVzIHZlcnNpZSAgJXMuXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo3MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIlxuIgorI3wgIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyN8ICJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLiIKK21zZ2lkICIiCisiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDEwIEd1aWxsZW0gSm92ZXIuXG4iCittc2dzdHIgIiIKKyJcbiIKKyJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo3NSBzcmMvbWFpbi5jOjYzIHNyYy9xdWVyeWNtZC5jOjYwMyBzcmMvc3RhdGNtZC5jOjY1CisjOiBzcmMvdHJpZ2NtZC5jOjU1IGRwa2ctZGViL21haW4uYzo1NyBkcGtnLXNwbGl0L21haW4uYzo1MQorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjg5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvclxuIgorImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LlxuIgorbXNnc3RyICIiCisiXG4iCisiRGl0IGlzIHZyaWplIHByb2dyYW1tYXR1dXI7IHppZSBkZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSB2ZXJzaWUgMlxuIgorIm9mIGxhdGVyIHZvb3Iga29wacOrZXJ2b29yd2FhcmRlbi4gIEVyIGlzIEdFRU4gZ2FyYW50aWUuXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo4NyBzcmMvbWFpbi5jOjgxIHNyYy9xdWVyeWNtZC5jOjYxNSBzcmMvc3RhdGNtZC5jOjc3CisjOiBkcGtnLWRlYi9tYWluLmM6NjkgZHBrZy1zcGxpdC9tYWluLmM6NjMgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjk3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gPGNvbW1hbmQ+XG4iCisiXG4iCittc2dzdHIgIiIKKyJHZWJydWlrOiAlcyBbPG9wdGllPiAuLi5dIDxjb21tYW5kbz5cbiIKKyJcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjkxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIFstLWFkZF0gPGZpbGU+ICAgICAgICAgICBhZGQgYSBkaXZlcnNpb24uXG4iCisiICAtLXJlbW92ZSA8ZmlsZT4gICAgICAgICAgcmVtb3ZlIHRoZSBkaXZlcnNpb24uXG4iCisiICAtLWxpc3QgWzxnbG9iLXBhdHRlcm4+XSAgc2hvdyBmaWxlIGRpdmVyc2lvbnMuXG4iCisiICAtLWxpc3RwYWNrYWdlIDxmaWxlPiAgICAgc2hvdyB3aGF0IHBhY2thZ2UgZGl2ZXJ0cyB0aGUgZmlsZS5cbiIKKyIgIC0tdHJ1ZW5hbWUgPGZpbGU+ICAgICAgICByZXR1cm4gdGhlIGRpdmVydGVkIGZpbGUuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjEwMAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLXBhY2thZ2UgPHBhY2thZ2U+ICAgICAgbmFtZSBvZiB0aGUgcGFja2FnZSB3aG9zZSBjb3B5IG9mIDxmaWxlPiB3aWxsICIKKyJub3RcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJlIGRpdmVydGVkLlxuIgorIiAgLS1sb2NhbCAgICAgICAgICAgICAgICAgIGFsbCBwYWNrYWdlcycgdmVyc2lvbnMgYXJlIGRpdmVydGVkLlxuIgorIiAgLS1kaXZlcnQgPGRpdmVydC10bz4gICAgIHRoZSBuYW1lIHVzZWQgYnkgb3RoZXIgcGFja2FnZXMnIHZlcnNpb25zLlxuIgorIiAgLS1yZW5hbWUgICAgICAgICAgICAgICAgIGFjdHVhbGx5IG1vdmUgdGhlIGZpbGUgYXNpZGUgKG9yIGJhY2spLlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIHNldCB0aGUgZGlyZWN0b3J5IHdpdGggdGhlIGRpdmVyc2lvbnMgZmlsZS5cbiIKKyIgIC0tdGVzdCAgICAgICAgICAgICAgICAgICBkb24ndCBkbyBhbnl0aGluZywganVzdCBkZW1vbnN0cmF0ZS5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBxdWlldCBvcGVyYXRpb24sIG1pbmltYWwgb3V0cHV0LlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIkdlYnJ1aWs6ICVzIFs8b3B0aWU+IC4uLl0gPGNvbW1hbmRvPlxuIgorIlxuIgorIkNvbW1hbmRvJ3M6XG4iCisiICBbLS1hZGRdIDxiZXN0YW5kPiAgICAgICAgdm9lZ3QgZWVuIG9tbGVpZGluZyB0b2UuXG4iCisiICAtLXJlbW92ZSA8YmVzdGFuZD4gICAgdmVyd2lqZGVyZCBlZW4gb21sZWlkaW5nLlxuIgorIiAgLS1saXN0IFs8Z2xvYi1wYXRyb29uPl0gIHRvb250IGJlc3RhbmRzb21sZWlkaW5nZW4uXG4iCisiICAtLXRydWVuYW1lIDxiZXN0YW5kPiBnZWVmdCBoZXQgb21nZWxlaWRlbiBiZXN0YW5kIHRlcnVnLlxuIgorIlxuIgorIk9wdGllczpcbiIKKyIgIC0tcGFja2FnZSA8cGFra2V0PiAgbmFhbSB2YW4gaGV0IHBha2tldCB3aWVucyBrb3BpZSB2YW4gPGJlc3RhbmQgbmlldFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbWdlbGVpZCB6YWwgd29yZHQuXG4iCisiICAtLWxvY2FsICAgICAgICAgICAgICAgICAgICAgICAgIGFsbGUgdmVyc2llcyB1aXQgcGFra2V0dGVuIHdvcmRlbiAiCisib21nZWxlaWQuXG4iCisiICAtLWRpdmVydCA8b21sZWlkZW4tbmFhcj4gZGUgbmFhbSBkaWUgZG9vciB2ZXJzaWVzIGluIGFuZGVyZSBwYWtrZXR0ZW4gXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZWJydWlrdCB3b3JkdC5cbiIKKyIgIC0tcmVuYW1lICAgICAgICAgICAgICAgICAgIHBsYWF0cyBoZXQgYmVzdGFuZCBhYW4gZGUga2FudCAob2YgdGVydWcpLlxuIgorIiAgLS1hZG1pbmRpciA8YW1wPiAgIHN0ZWwgZGUgbWFwIG1ldCBoZXQgJ2RpdmVyc2lvbnMnLWJlc3RhbmQgaW4uXG4iCisiICAtLXRlc3QgICAgICAgICAgICAgICAgICAgICAgICBkb2UgbmlrcywgdG9vbiBlbmtlbCB3YXQgZ2VkYWFuIHpvdSB3b3JkZW4uXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgICAgIHN0aWxsZSBvcGVyYXRpZSwgbWluaW1hbGUgdWl0dm9lci5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICAgICAgdG9vbiBkZXplIGhlbHBib29kc2NoYXAuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgICB0b29uIGRlIHZlcnNpZS5cbiIKKyJcbiIKKyJUaWpkZW5zIHRvZXZvZWdlbiBpcyBkZSBzdGFuZGFhcmR3YWFyZGUgLS1sb2NhbCBlbiAtLWRpdmVydCA8b3JpZ2luZWVsPiAiCisiZGlzdHJpYi5cbiIKKyJUaWpkZW5zIHZlcndpamRlcmVuIG1vZXRlbiAtLXBhY2thZ2Ugb2YgLS1sb2NhbCBlbiAtLWRpdmVydCBvdmVyZWVua29tZW4gIgorImluZGllblxuIgorIm9wZ2VnZXZlbi5cbiIKKyJQYWtrZXQgcHJlaW5zdC9wb3N0cm0tc2NyaXB0cyBkaWVuZW4gYWx0aWpkIC0tcGFja2FnZSBlbi0tZGl2ZXJ0IG9wIHRlICIKKyJnZXZlbi5cbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiV2hlbiBhZGRpbmcsIGRlZmF1bHQgaXMgLS1sb2NhbCBhbmQgLS1kaXZlcnQgPG9yaWdpbmFsPi5kaXN0cmliLlxuIgorIldoZW4gcmVtb3ZpbmcsIC0tcGFja2FnZSBvciAtLWxvY2FsIGFuZCAtLWRpdmVydCBtdXN0IG1hdGNoIGlmIHNwZWNpZmllZC5cbiIKKyJQYWNrYWdlIHByZWluc3QvcG9zdHJtIHNjcmlwdHMgc2hvdWxkIGFsd2F5cyBzcGVjaWZ5IC0tcGFja2FnZSBhbmQgLS0iCisiZGl2ZXJ0LlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoxNjgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImVycm9yIGNoZWNraW5nIGAlcyc6ICVzIgorbXNnaWQgImVycm9yIGNoZWNraW5nICclcyciCittc2dzdHIgIiclcycgd29yZHQgb3AgZm91dGVuIGdlY29udHJvbGVlcmQ6ICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjAzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJyZW5hbWUgaW52b2x2ZXMgb3ZlcndyaXRpbmcgYCVzJyB3aXRoXG4iCisiICBkaWZmZXJlbnQgZmlsZSBgJXMnLCBub3QgYWxsb3dlZCIKK21zZ3N0ciAiIgorImhlcm5vZW1lbiBvbXZhdCBvdmVyc2NocmlqdmVuIHZhbiAnJXMnIG1ldFxuIgorIiAgdmVyc2NoaWxsZW5kIGJlc3RhbmQgJyVzJywgbmlldCB0b2VnZWxhdGVuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjIzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzczCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGZpbGUgJyVzJyIKK21zZ3N0ciAia2FuIGJyb25iZXN0YW5kIGAlLjI1MHMnIG5pZXQgb3BlbmVuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjI3Cittc2dpZCAiZmlsZSBjb3B5IgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyMzkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImNhbm5vdCBzdGF0IG5ldyBuYW1lIGAlcyc6ICVzIgorbXNnaWQgImNhbm5vdCByZW5hbWUgJyVzJyB0byAnJXMnIgorbXNnc3RyICJrYW4gZGUgc3RhdHVzIHZhbiBkZSBuaWV1d2UgbmFhbSAlcyBuaWV0IG9wdnJhZ2VuOiAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjI1MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAicmVuYW1lOiByZW1vdmUgZHVwbGljYXRlIG9sZCBsaW5rIGAlcyc6ICVzIgorbXNnaWQgInJlbmFtZTogcmVtb3ZlIGR1cGxpY2F0ZSBvbGQgbGluayAnJXMnIgorbXNnc3RyICJoZXJub21lbjogdmVyd2lqZGVyZW4gdmFuIG91ZGUgZHViYmVsZSBsaW5rICclcyc6ICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjYyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gb3BlbiBzb3VyY2UgZmlsZSBgJS4yNTBzJyIKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIGNvcGllZCBzb3VyY2UgZmlsZSAnJXMnIgorbXNnc3RyICJrYW4gYnJvbmJlc3RhbmQgYCUuMjUwcycgbmlldCBvcGVuZW4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyODQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImxvY2FsIGRpdmVyc2lvbiBvZiAlcyIKK21zZ3N0ciAibG9rYWFsIG9tZ2VsZWlkIG5hYXI6ICVzXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyODYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImxvY2FsIGRpdmVyc2lvbiBvZiAlcyB0byAlcyIKK21zZ3N0ciAibG9rYWFsIG9tZ2VsZWlkIG5hYXI6ICVzXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyOTAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImRpdmVyc2lvbiBieSAlcyIKK21zZ2lkICJkaXZlcnNpb24gb2YgJXMgYnkgJXMiCittc2dzdHIgInZlcndpanppbmcgZG9vciAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjI5MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJzaW9uIG9mICVzIHRvICVzIGJ5ICVzIgorbXNnc3RyICJvbWdlbGVpZCBkb29yICVzIG5hYXI6ICVzXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozMDkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImRpdmVyc2lvbiBieSAlcyIKK21zZ2lkICJhbnkgZGl2ZXJzaW9uIG9mICVzIgorbXNnc3RyICJ2ZXJ3aWp6aW5nIGRvb3IgJXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozMTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImFueSBkaXZlcnNpb24gb2YgJXMgdG8gJXMiCittc2dzdHIgIm9tZ2VsZWlkIGRvb3IgJXMgbmFhcjogJXNcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjM1NworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiY2Fubm90IG9wZW4gR1BMIGZpbGUiCittc2dpZCAiY2Fubm90IGNyZWF0ZSBuZXcgJXMgZmlsZSIKK21zZ3N0ciAia2FuIEdQTC1iZXN0YW5kIG5pZXQgb3BlbmVuICIKKworIzogc3JjL2RpdmVydGNtZC5jOjM3NSBzcmMvc3RhdGNtZC5jOjIxNSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTQwNAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIGZpbGUgJyVzJyIKK21zZ3N0ciAia2FuIG5pZXQgZG9vcnNwb2VsZW4gaW4gdnNucHJpbnRmIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MzgyCisjLCBmdXp6eQorI3wgbXNnaWQgInJlbW92ZSBvbGQgZGl2ZXJzaW9ucy1vbGQ6ICVzIgorbXNnaWQgImVycm9yIHJlbW92aW5nIG9sZCBkaXZlcnNpb25zLW9sZCIKK21zZ3N0ciAib3VkZSBkaXZlcnNpb25zLW9sZCB2ZXJ3aWpkZXJlbjogJXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozODQKKyMsIGZ1enp5Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgbmV3IGRpdmVyc2lvbnMtb2xkIgorbXNnc3RyICJmb3V0IGJpaiBhYW5tYWtlbiB2YW4gbmlldXdlIHN0YXRvdmVycmlkZS1vbGQ6ICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mzg2CisjLCBmdXp6eQorbXNnaWQgImVycm9yIGluc3RhbGxpbmcgbmV3IGRpdmVyc2lvbnMiCittc2dzdHIgImZvdXQgYmlqIGluc3RhbGxlcmVuIHZhbiBuaWV1d2Ugc3RhdG92ZXJyaWRlOiAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjQwNiBzcmMvZGl2ZXJ0Y21kLmM6NTAzIHNyYy9kaXZlcnRjbWQuYzo2MTAKKyM6IHNyYy9kaXZlcnRjbWQuYzo2MzAgc3JjL3N0YXRjbWQuYzoyOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhIHNpbmdsZSBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyBoZWVmdCBlZW4gZW5rZWwgYXJndW1lbnQgbm9kaWciCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MDkgc3JjL2RpdmVydGNtZC5jOjQzMAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlbmFtZSBcIiVzXCIgaXMgbm90IGFic29sdXRlIgorbXNnc3RyICJiZXN0YW5kc25hYW0gJyVzJyBpcyBuaWV0IGFic29sdXV0IgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDExIHNyYy9zdGF0Y21kLmM6MjQ5Cittc2dpZCAiZmlsZSBtYXkgbm90IGNvbnRhaW4gbmV3bGluZXMiCittc2dzdHIgImJlc3RhbmQgbWFnIGdlZW4gcmVnZWxlaW5kZW4gYmV2YXR0ZW4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MTgKK21zZ2lkICJDYW5ub3QgZGl2ZXJ0IGRpcmVjdG9yaWVzIgorbXNnc3RyICJLYW4gZ2VlbiBtYXBwZW4gb21sZWlkZW4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MzMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBkaXZlcnQgZmlsZSAnJXMnIHRvIGl0c2VsZiIKK21zZ3N0ciAiS2FuIGdlZW4gbWFwcGVuIG9tbGVpZGVuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDUzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJMZWF2aW5nIGAlcyciCittc2dpZCAiTGVhdmluZyAnJXMnXG4iCittc2dzdHIgIiclcycgd29yZHQgdmVybGF0ZW4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBjbGFzaGVzIHdpdGggYCVzJyIKK21zZ3N0ciAiJyVzJyBjb25mbGljdGVlcnQgbWV0ICclcyciCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0ODEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIkFkZGluZyBgJXMnIgorbXNnaWQgIkFkZGluZyAnJXMnXG4iCittc2dzdHIgIiclcycgd29yZHQgdG9lZ2V2b2VnZCIKKworIzogc3JjL2RpdmVydGNtZC5jOjUxMAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiTm8gZGl2ZXJzaW9uIGAlcycsIG5vbmUgcmVtb3ZlZCIKK21zZ2lkICJObyBkaXZlcnNpb24gJyVzJywgbm9uZSByZW1vdmVkLlxuIgorbXNnc3RyICJFciBpcyBnZWVuIG9tbGVpZGluZyAnJXMnLCBnZWVuIHZlcndpamRlcmQiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm1pc21hdGNoIG9uIGRpdmVydC10b1xuIgorIiAgd2hlbiByZW1vdmluZyBgJXMnXG4iCisiICBmb3VuZCBgJXMnIgorbXNnc3RyICIiCisib21sZWlkZW4tbmFhciBrb210IG5pZXQgb3ZlcmVlblxuIgorIiAgYmlqIHZlcndpamRlcmVuIHZhbiAnJXMnXG4iCisiICAnJXMnIGdldm9uZGVuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJtaXNtYXRjaCBvbiBwYWNrYWdlXG4iCisiICB3aGVuIHJlbW92aW5nIGAlcydcbiIKKyIgIGZvdW5kIGAlcyciCittc2dzdHIgIiIKKyJwYWtrZXRuYWFtIGtvbXQgbmlldCBvdmVyZWVuXG4iCisiICBiaWogdmVyd2lqZGVyZW4gdmFuICclcydcbiIKKyIgICclcycgZ2V2b25kZW4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MzkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIlJlbW92aW5nIGAlcyciCittc2dpZCAiUmVtb3ZpbmcgJyVzJ1xuIgorbXNnc3RyICIlcyB3b3JkdCB2ZXJ3aWpkZXJkIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjU3Cittc2dpZCAicGFja2FnZSBtYXkgbm90IGNvbnRhaW4gbmV3bGluZXMiCittc2dzdHIgInBha2tldG5hYW0gbWFnIGdlZW4gcmVnZWxlaW5kZW4gYmV2YXR0ZW4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo2NjYKK21zZ2lkICJkaXZlcnQtdG8gbWF5IG5vdCBjb250YWluIG5ld2xpbmVzIgorbXNnc3RyICJvbWxlaWRlbi1uYWFyIG1hZyBnZWVuIHJlZ2VsZWluZGVuIGJldmF0dGVuIgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzo2NAorbXNnaWQgImZhaWxlZCB0byBvcGVuIGRpdmVyc2lvbnMgZmlsZSIKK21zZ3N0ciAia2FuIG9tbGVpZGluZ2VuLWJlc3RhbmQgbmlldCBvcGVuZW4iCisKKyM6IHNyYy9kaXZlcnRkYi5jOjcxCittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IHByZXZpb3VzIGRpdmVyc2lvbnMgZmlsZSIKK21zZ3N0ciAia2FuIGRlIHN0YXR1cyB2YW4gaGV0IHZvcmlnZSBvbWxlaWRpbmdzYmVzdGFuZCBuaWV0IG9wdnJhZ2VuIgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzo3MworbXNnaWQgImZhaWxlZCB0byBmc3RhdCBkaXZlcnNpb25zIGZpbGUiCittc2dzdHIgImthbiBkZSBzdGF0dXMgdmFuIGhldCBvbWxlaWRpbmdlbmJlc3RhbmQgbmlldCBvcHZyYWdlbiIKKworIzogc3JjL2RpdmVydGRiLmM6MTEzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZsaWN0aW5nIGRpdmVyc2lvbnMgaW52b2x2aW5nIGAlLjI1MHMnIG9yIGAlLjI1MHMnIgorbXNnc3RyICJ0ZWdlbnN0cmlqZGlnZSBvbWxlaWRpbmdlbiB0dXNzZW4gYCUuMjUwcycgb2YgYCUuMjUwcyciCisKKyM6IHNyYy9lbnF1aXJ5LmM6NzMKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgaW4gYSBtZXNzIGR1ZSB0byBzZXJpb3VzIHByb2JsZW1zIGR1cmluZ1xuIgorImluc3RhbGxhdGlvbi4gIFRoZXkgbXVzdCBiZSByZWluc3RhbGxlZCBmb3IgdGhlbSAoYW5kIGFueSBwYWNrYWdlc1xuIgorInRoYXQgZGVwZW5kIG9uIHRoZW0pIHRvIGZ1bmN0aW9uIHByb3Blcmx5OlxuIgorbXNnc3RyICIiCisiRGUgdm9sZ2VuZGUgcGFra2V0dGVuIHppam4gZWVuIHJvbW1lbHRqZSB3ZWdlbnMgZXJuc3RpZ2UgcHJvYmxlbWVuXG4iCisidGlqZGVucyBkZSBpbnN0YWxsYXRpZS4gIFplIG1vZXRlbiBvcG5pZXV3IHdvcmRlbiBnZcOvbnN0YWxsZWVyZCBvbSB6ZSAoZW5cbiIKKyJwYWtrZXR0ZW4gZGllIGVydmFuIGFmaGFua2VsaWprIHppam4pIGdvZWQgdGUgbGF0ZW4gZnVuY3Rpb25lcmVuOlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjgwCittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgaGF2ZSBiZWVuIHVucGFja2VkIGJ1dCBub3QgeWV0IGNvbmZpZ3VyZWQuXG4iCisiVGhleSBtdXN0IGJlIGNvbmZpZ3VyZWQgdXNpbmcgZHBrZyAtLWNvbmZpZ3VyZSBvciB0aGUgY29uZmlndXJlXG4iCisibWVudSBvcHRpb24gaW4gZHNlbGVjdCBmb3IgdGhlbSB0byB3b3JrOlxuIgorbXNnc3RyICIiCisiRGUgdm9sZ2VuZGUgcGFra2V0dGVuIHppam4gdWl0Z2VwYWt0IG1hYXIgbm9nIG5pZXQgZ2Vjb25maWd1cmVlcmQuICBaZVxuIgorIm1vZXRlbiBnZWNvbmZpZ3VyZWVyZCB3b3JkZW4gbWV0IGRwa2cgLS1jb25maWd1cmUgb2YgZGUgbWVudSBvcHRpZVxuIgorIkNvbmZpZ3VyZXJlbiBpbiBkc2VsZWN0IG9tIHplIHRlIGxhdGVuIHdlcmtlbjpcbiIKKworIzogc3JjL2VucXVpcnkuYzo4NworbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBvbmx5IGhhbGYgY29uZmlndXJlZCwgcHJvYmFibHkgZHVlIHRvIHByb2JsZW1zXG4iCisiY29uZmlndXJpbmcgdGhlbSB0aGUgZmlyc3QgdGltZS4gIFRoZSBjb25maWd1cmF0aW9uIHNob3VsZCBiZSByZXRyaWVkIHVzaW5nXG4iCisiZHBrZyAtLWNvbmZpZ3VyZSA8cGFja2FnZT4gb3IgdGhlIGNvbmZpZ3VyZSBtZW51IG9wdGlvbiBpbiBkc2VsZWN0OlxuIgorbXNnc3RyICIiCisiRGUgdm9sZ2VuZGUgcGFra2V0dGVuIHppam4gc2xlY2h0cyBoYWxmIGdlY29uZmlndXJlZXJkLCB3YWFyc2NoaWpubGlqa1xuIgorIndlZ2VucyBwcm9ibGVtZW4gdGlqZGVucyBkZSBlZXJzdGUga2VlciBjb25maWd1cmVyZW4uICBIZXRcbiIKKyJjb25maWd1cmVyZW4gem91IG9wbmlldXcgbW9ldGVuIGdlYmV1cmVuIG1ldCBkcGtnIC0tY29uZmlndXJlIDxwYWtrZXQ+XG4iCisib2YgZGUgbWVudSBvcHRpZSBDb25maWd1cmVyZW4gaW4gZHNlbGVjdDpcbiIKKworIzogc3JjL2VucXVpcnkuYzo5NAorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBvbmx5IGhhbGYgaW5zdGFsbGVkLCBkdWUgdG8gcHJvYmxlbXMgZHVyaW5nXG4iCisiaW5zdGFsbGF0aW9uLiAgVGhlIGluc3RhbGxhdGlvbiBjYW4gcHJvYmFibHkgYmUgY29tcGxldGVkIGJ5IHJldHJ5aW5nIGl0O1xuIgorInRoZSBwYWNrYWdlcyBjYW4gYmUgcmVtb3ZlZCB1c2luZyBkc2VsZWN0IG9yIGRwa2cgLS1yZW1vdmU6XG4iCittc2dzdHIgIiIKKyJEZSB2b2xnZW5kZSBwYWtrZXR0ZW4gemlqbiBzbGVjaHRzIGhhbGYgZ2XDr25zdGFsbGVlcmQsIHdlZ2Vuc1xuIgorInByb2JsZW1lbiBtZXQgaW5zdGFsbGF0aWUuICBEZSBpbnN0YWxsYXRpZSB3b3JkdCB3YWFyc2NoaWpubGlqa1xuIgorImFmZ2Vyb25kIG5hIGVlbiBuaWV1d2UgcG9naW5nOyBkZSBwYWtrZXR0ZW4ga3VubmVuIHZlcndpamRlcmQgd29yZGVuXG4iCisibWV0IGRzZWxlY3Qgb2YgZHBrZyAtLXJlbW92ZTpcbiIKKworIzogc3JjL2VucXVpcnkuYzoxMDEKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgYXdhaXRpbmcgcHJvY2Vzc2luZyBvZiB0cmlnZ2VycyB0aGF0IHRoZXlcbiIKKyJoYXZlIGFjdGl2YXRlZCBpbiBvdGhlciBwYWNrYWdlcy4gIFRoaXMgcHJvY2Vzc2luZyBjYW4gYmUgcmVxdWVzdGVkIHVzaW5nXG4iCisiZHNlbGVjdCBvciBkcGtnIC0tY29uZmlndXJlIC0tcGVuZGluZyAob3IgZHBrZyAtLXRyaWdnZXJzLW9ubHkpOlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTA4Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgaGF2ZSBiZWVuIHRyaWdnZXJlZCwgYnV0IHRoZSB0cmlnZ2VyIHByb2Nlc3NpbmdcbiIKKyJoYXMgbm90IHlldCBiZWVuIGRvbmUuICBUcmlnZ2VyIHByb2Nlc3NpbmcgY2FuIGJlIHJlcXVlc3RlZCB1c2luZ1xuIgorImRzZWxlY3Qgb3IgZHBrZyAtLWNvbmZpZ3VyZSAtLXBlbmRpbmcgKG9yIGRwa2cgLS10cmlnZ2Vycy1vbmx5KTpcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZW5xdWlyeS5jOjEzNyBzcmMvZW5xdWlyeS5jOjIxMSBzcmMvZW5xdWlyeS5jOjI5MiBzcmMvZW5xdWlyeS5jOjM3MworIzogc3JjL2VucXVpcnkuYzo0NjAgc3JjL3NlbGVjdC5jOjk4IHNyYy9zZWxlY3QuYzoxNjQgc3JjL3RyaWdjbWQuYzoxOTkKKyM6IHNyYy91cGRhdGUuYzo0OCBzcmMvdXBkYXRlLmM6MTEzIGRwa2ctc3BsaXQvcXVldWUuYzoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyB0YWtlcyBubyBhcmd1bWVudHMiCittc2dzdHIgIi0tJXMgdmVyd2FjaHQgZ2VlbiBhcmd1bWVudGVuIgorCisjOiBzcmMvZW5xdWlyeS5jOjE1MgorbXNnaWQgIiIKKyJBbm90aGVyIHByb2Nlc3MgaGFzIGxvY2tlZCB0aGUgZGF0YWJhc2UgZm9yIHdyaXRpbmcsIGFuZCBtaWdodCBjdXJyZW50bHkgYmVcbiIKKyJtb2RpZnlpbmcgaXQsIHNvbWUgb2YgdGhlIGZvbGxvd2luZyBwcm9ibGVtcyBtaWdodCBqdXN0IGJlIGR1ZSB0byB0aGF0LlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTkxCisjLCBmdXp6eQorI3wgbXNnaWQgIjx1bmtub3duPiIKK21zZ2N0eHQgInNlY3Rpb24iCittc2dpZCAiPHVua25vd24+IgorbXNnc3RyICI8b25iZWtlbmQ+IgorCisjOiBzcmMvZW5xdWlyeS5jOjI1MQorIywgYy1mb3JtYXQKK21zZ2lkICIgJWQgaW4gJXM6ICIKK21zZ3N0ciAiICVkIGluICVzOiAiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MjY2CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIgJWQgcGFja2FnZXMsIGZyb20gdGhlIGZvbGxvd2luZyBzZWN0aW9uczoiCittc2dpZCAiICVkIHBhY2thZ2UsIGZyb20gdGhlIGZvbGxvd2luZyBzZWN0aW9uOiIKK21zZ2lkX3BsdXJhbCAiICVkIHBhY2thZ2VzLCBmcm9tIHRoZSBmb2xsb3dpbmcgc2VjdGlvbnM6IgorbXNnc3RyWzBdICIgJWQgcGFra2V0dGVuLCB1aXQgZGUgdm9sZ2VuZGUgc2VjdGllczoiCittc2dzdHJbMV0gIiAlZCBwYWtrZXR0ZW4sIHVpdCBkZSB2b2xnZW5kZSBzZWN0aWVzOiIKKworIzogc3JjL2VucXVpcnkuYzozMDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJWZXJzaW9uIG9mIGRwa2cgd2l0aCB3b3JraW5nICVzIHN1cHBvcnQgbm90IHlldCBjb25maWd1cmVkLlxuIgorIiBQbGVhc2UgdXNlICdkcGtnIC0tY29uZmlndXJlIGRwa2cnLCBhbmQgdGhlbiB0cnkgYWdhaW4uXG4iCittc2dzdHIgIiIKKyJWZXJzaWUgdmFuIGRwa2cgbWV0IHdlcmtlbmRlIGVwb2NoIG9uZGVyc3RldW5pbmcgaXMgbm9nIG5pZXQgIgorImdlY29uZmlndXJlZXJkLlxuIgorIiAgR2VsaWV2ZSBvcG5pZXV3IHRlIHByb2JlcmVuIG1ldCBgZHBrZyAtLWNvbmZpZ3VyZSBkcGtnJy5cbiIKKworIzogc3JjL2VucXVpcnkuYzozMTAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImRwa2cgbm90IHJlY29yZGVkIGFzIGluc3RhbGxlZCwgY2Fubm90IGNoZWNrIGZvciAlcyBzdXBwb3J0IVxuIgorbXNnc3RyICIiCisiZHBrZyBpcyBuaWV0IGFscyBnZcOvbnN0YWxsZWVyZCBnZXJlZ2lzdHJlZXJkLCBrYW4gbmlldCBjb250cm9sZXJlbiBvcCAiCisib25kZXJzdGV1bmluZyB2b29yIGVwb2NoICFcbiIKKworIzogc3JjL2VucXVpcnkuYzozMjEKK21zZ2lkICJQcmUtRGVwZW5kcyBmaWVsZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvZW5xdWlyeS5jOjMyOQorbXNnaWQgImVwb2NoIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzM3Cittc2dpZCAibG9uZyBmaWxlbmFtZXMiCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzozNDYKK21zZ2lkICJtdWx0aXBsZSBDb25mbGljdHMgYW5kIFJlcGxhY2VzIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6NDM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBjYW5ub3Qgc2VlIGhvdyB0byBzYXRpc2Z5IHByZS1kZXBlbmRlbmN5OlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisiZHBrZzoga2FuIGdlZW4gbWFuaWVyIHZpbmRlbiBvbSBhYW4gdm9vci12ZXJlaXN0ZSB0ZSB2b2xkb2VuOlxuIgorIiAlc1xuIgorCisjOiBzcmMvZW5xdWlyeS5jOjQzNQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc2F0aXNmeSBwcmUtZGVwZW5kZW5jaWVzIGZvciAlLjI1MHMgKHdhbnRlZCBkdWUgdG8gJS4yNTBzKSIKK21zZ3N0ciAiIgorImthbiBuaWV0IHZvbGRvZW4gYWFuIHZvb3ItdmVyZWlzdGVuIHZvb3IgJS4yNTBzIChnZXdlbnN0IHdlZ2VucyAlLjI1MHMpIgorCisjOiBzcmMvZW5xdWlyeS5jOjQ3MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAib2Jzb2xldGUgb3B0aW9uICctLSVzJywgcGxlYXNlIHVzZSAnLS0lcycgaW5zdGVhZC4iCittc2dzdHIgIkxldCBvcDogdmVyb3VkZXJkZSBvcHRpZSBgLS0lcydcbiIKKworIzogc3JjL2VucXVpcnkuYzo1MTkKK21zZ2lkICIiCisiLS1jb21wYXJlLXZlcnNpb25zIHRha2VzIHRocmVlIGFyZ3VtZW50czogPHZlcnNpb24+IDxyZWxhdGlvbj4gPHZlcnNpb24+IgorbXNnc3RyICIiCisiLS1jb21wYXJlLXZlcnNpb25zIHZlcndhY2h0IGRyaWUgYXJndW1lbnRlbjogPHZlcnNpZT4gPHJlbGF0aWU+IDx2ZXJzaWU+IgorCisjOiBzcmMvZW5xdWlyeS5jOjUyNAorbXNnaWQgIi0tY29tcGFyZS12ZXJzaW9ucyBiYWQgcmVsYXRpb24iCittc2dzdHIgIi0tY29tcGFyZS12ZXJzaW9ucyBmb3V0ZSByZWxhdGllIgorCisjOiBzcmMvZW5xdWlyeS5jOjUyOSBzcmMvZW5xdWlyeS5jOjUzMSBzcmMvZW5xdWlyeS5jOjU0MCBzcmMvZW5xdWlyeS5jOjU0MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidmVyc2lvbiAnJXMnIGhhcyBiYWQgc3ludGF4OiAlcyIKK21zZ3N0ciAiZHBrZzogdmVyc2llICclcycgaGVlZnQgdmVya2VlcmRlIHN5bnRheDogJXNcbiIKKworIzogc3JjL2Vycm9ycy5jOjYwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogZXJyb3IgcHJvY2Vzc2luZyAlcyAoLS0lcyk6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKyIlczogZm91dCBiaWogYWZoYW5kZWxlbiB2YW4gJXMgKC0tJXMpOlxuIgorIiAlc1xuIgorCisjOiBzcmMvZXJyb3JzLmM6NjgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJkcGtnOiBmYWlsZWQgdG8gYWxsb2NhdGUgbWVtb3J5IGZvciBuZXcgZW50cnkgaW4gbGlzdCBvZiBmYWlsZWQgcGFja2FnZXMuIgorbXNnaWQgIiIKKyIlczogZmFpbGVkIHRvIGFsbG9jYXRlIG1lbW9yeSBmb3IgbmV3IGVudHJ5IGluIGxpc3Qgb2YgZmFpbGVkIHBhY2thZ2VzOiAlcyIKK21zZ3N0ciAiIgorImRwa2c6IGdlaGV1Z2VuIHZyaWptYWtlbiB2b29yIG5pZXV3ZSBpbmdhbmcgaW4gbGlqc3QgdmFuIGlzIG1pc2x1a3QgIgorInBha2tldHRlbiBpcyBtaXNsdWt0LiIKKworIzogc3JjL2Vycm9ycy5jOjc5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJkcGtnOiB0b28gbWFueSBlcnJvcnMsIHN0b3BwaW5nXG4iCittc2dpZCAiJXM6IHRvbyBtYW55IGVycm9ycywgc3RvcHBpbmdcbiIKK21zZ3N0ciAiZHBrZzogdGUgdmVlbCBmb3V0ZW4sIHByb2dyYW1tYSB3b3JkdCBiZcOqaW5kaWdkXG4iCisKKyM6IHNyYy9lcnJvcnMuYzo4NworbXNnaWQgIkVycm9ycyB3ZXJlIGVuY291bnRlcmVkIHdoaWxlIHByb2Nlc3Npbmc6XG4iCittc2dzdHIgIkZvdXRlbiBnZXZvbmRlbiB0aWpkZW5zIGJlaGFuZGVsZW4gdmFuOlxuIgorCisjOiBzcmMvZXJyb3JzLmM6OTQKK21zZ2lkICJQcm9jZXNzaW5nIHdhcyBoYWx0ZWQgYmVjYXVzZSB0aGVyZSB3ZXJlIHRvbyBtYW55IGVycm9ycy5cbiIKK21zZ3N0ciAiQWZoYW5kZWxpbmcgd2VyZCBhZmdlYnJva2VuIG9tZGF0IGVyIHRlIHZlZWwgZm91dGVuIHdhcmVuLlxuIgorCisjOiBzcmMvZXJyb3JzLmM6MTA1CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgJXMgd2FzIG9uIGhvbGQsIHByb2Nlc3NpbmcgaXQgYW55d2F5IGFzIHlvdSByZXF1ZXN0ZWRcbiIKK21zZ3N0ciAiUGFra2V0ICVzIHdhcyBvbiBob2xkLCB3b3JkdCB0b2NoIGJlaGFuZGVsZCB6b2FscyBnZXZyYWFnZFxuIgorCisjOiBzcmMvZXJyb3JzLmM6MTA5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJQYWNrYWdlICVzIGlzIG9uIGhvbGQsIG5vdCB0b3VjaGluZyBpdC4gIFVzZSAtLWZvcmNlLWhvbGQgdG8gb3ZlcnJpZGUuXG4iCittc2dzdHIgIiIKKyJQYWtrZXQgJXMgaXMgb24gaG9sZCwgd29yZHQgbmlldCBhYW5nZXJhYWt0LiAgR2VicnVpayAtLWZvcmNlLWhvbGQgb20gdGUgIgorIm5lZ2VyZW4uXG4iCisKKyM6IHNyYy9lcnJvcnMuYzoxMTkKKyMsIGZ1enp5Cittc2dpZCAib3ZlcnJpZGluZyBwcm9ibGVtIGJlY2F1c2UgLS1mb3JjZSBlbmFibGVkOiIKK21zZ3N0ciAiIgorImRwa2cgLSB3YWFyc2NodXdpbmcsIHByb2JsZWVtIHdvcmR0IGdlZm9yY2VlcmQgb21kYXQgLS1mb3JjZSBhYW5zdGFhdDpcbiIKKyIgIgorCisjOiBzcmMvZmlsZXNkYi5jOjMwNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcyciCittc2dzdHIgImthbiBiZXN0YW5kZW5saWpzdC1iZXN0YW5kIG5pZXQgb3BlbmVuIHZvb3IgcGFra2V0IGAlLjI1MHMnIgorCisjOiBzcmMvZmlsZXNkYi5jOjMxMQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorImZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSBgJS4yNTBzJyBtaXNzaW5nLCBhc3N1bWluZyBwYWNrYWdlIGhhcyBubyBmaWxlcyAiCisiY3VycmVudGx5IGluc3RhbGxlZC4iCittc2dzdHIgIiIKKyJkcGtnOiBlcm5zdGlnZSB3YWFyc2NodXdpbmc6IGJlc3RhbmRlbmxpanN0LWJlc3RhbmQgdm9vciBwYWtrZXRcbiIKKyJgJS4yNTBzJyBvbnRicmVla3QsIGFhbmdlbm9tZW4gd29yZHQgZGF0IGhldCBwYWtrZXQgZ2VlbiBiZXN0YW5kZW5cbiIKKyJoZWVmdCBnZcOvbnN0YWxsZWVyZC5cbiIKKworIzogc3JjL2ZpbGVzZGIuYzozMjIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAnJS4yNTBzJyIKK21zZ3N0ciAia2FuIGJlc3RhbmRlbmxpanN0LWJlc3RhbmQgbmlldCBvcGVuZW4gdm9vciBwYWtrZXQgYCUuMjUwcyciCisKKyM6IHNyYy9maWxlc2RiLmM6MzMwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlcyBsaXN0IGZvciBwYWNrYWdlIGAlLjI1MHMnIgorbXNnaWQgInJlYWRpbmcgZmlsZXMgbGlzdCBmb3IgcGFja2FnZSAnJS4yNTBzJyIKK21zZ3N0ciAiYmVzdGFuZGVubGlqc3QtYmVzdGFuZCB2b29yIHBha2tldCBgJS4yNTBzJyIKKworIzogc3JjL2ZpbGVzZGIuYzozMzYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAnJS4yNTBzJyBpcyBtaXNzaW5nIGZpbmFsIG5ld2xpbmUiCittc2dzdHIgIiIKKyJiZXN0YW5kZW5saWpzdC1iZXN0YW5kIHZvb3IgcGFra2V0IGAlLjI1MHMnIGJldmF0IGVlbiBsZWdlIGJlc3RhbmRzbmFhbSIKKworIzogc3JjL2ZpbGVzZGIuYzozNDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlIGAlLjI1MHMnIGNvbnRhaW5zIGVtcHR5IGZpbGVuYW1lIgorbXNnc3RyICIiCisiYmVzdGFuZGVubGlqc3QtYmVzdGFuZCB2b29yIHBha2tldCBgJS4yNTBzJyBiZXZhdCBlZW4gbGVnZSBiZXN0YW5kc25hYW0iCisKKyM6IHNyYy9maWxlc2RiLmM6MzUyCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlIGAlLjI1MHMnIgorbXNnc3RyICJmb3V0IGJpaiBzbHVpdGVuIHZhbiBiZXN0YW5kZW5saWpzdC1iZXN0YW5kIHZvb3IgcGFra2V0IGAlLjI1MHMnIgorCisjOiBzcmMvZmlsZXNkYi5jOjQ2MgorbXNnaWQgIihSZWFkaW5nIGRhdGFiYXNlIC4uLiAiCittc2dzdHIgIihEYXRhYmFzZSBpbmxlemVuIC4uLiAiCisKKyM6IHNyYy9maWxlc2RiLmM6NDgzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIlZCBmaWxlcyBhbmQgZGlyZWN0b3JpZXMgY3VycmVudGx5IGluc3RhbGxlZC4pXG4iCittc2dpZCAiJWQgZmlsZSBvciBkaXJlY3RvcnkgY3VycmVudGx5IGluc3RhbGxlZC4pXG4iCittc2dpZF9wbHVyYWwgIiVkIGZpbGVzIGFuZCBkaXJlY3RvcmllcyBjdXJyZW50bHkgaW5zdGFsbGVkLilcbiIKK21zZ3N0clswXSAiJWQgYmVzdGFuZGVuIGVuIG1hcHBlbiBnZcOvbnN0YWxsZWVyZC4pXG4iCittc2dzdHJbMV0gIiVkIGJlc3RhbmRlbiBlbiBtYXBwZW4gZ2XDr25zdGFsbGVlcmQuKVxuIgorCisjOiBzcmMvZmlsZXNkYi5jOjUxNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICJrYW4gYmlqZ2V3ZXJrdCBiZXN0YW5kZW5saWpzdC1iZXN0YW5kIHZvb3IgcGFra2V0ICVzIG5pZXQgYWFubWFrZW4iCisKKyM6IHNyYy9maWxlc2RiLmM6NTI2CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB3cml0ZSB0byB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAiIgorImthbiBuaWV0IHNjaHJpanZlbiBuYWFyIGJpamdld2Vya3QgYmVzdGFuZGVubGlqc3QtYmVzdGFuZCB2b29yIHBha2tldCAlcyIKKworIzogc3JjL2ZpbGVzZGIuYzo1MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZsdXNoIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICJrYW4gYmlqZ2V3ZXJrdCBiZXN0YW5kZW5saWpzdC1iZXN0YW5kIHZvb3IgcGFra2V0ICVzIG5pZXQgZG9vcnNwb2VsZW4iCisKKyM6IHNyYy9maWxlc2RiLmM6NTMwCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBzeW5jIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICIiCisia2FuIGJpamdld2Vya3QgYmVzdGFuZGVubGlqc3QtYmVzdGFuZCB2b29yIHBha2tldCAlcyBuaWV0IHN5bmNocm9uaXNlcmVuIgorCisjOiBzcmMvZmlsZXNkYi5jOjUzMworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2xvc2UgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgImthbiBiaWpnZXdlcmt0IGJlc3RhbmRlbmxpanN0LWJlc3RhbmQgdm9vciBwYWtrZXQgJXMgbmlldCBzbHVpdGVuIgorCisjOiBzcmMvZmlsZXNkYi5jOjUzNQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gaW5zdGFsbCB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAia2FuIGJpamdld2Vya3QgYmVzdGFuZGVubGlqc3QtYmVzdGFuZCB2b29yIHBha2tldCAlcyBuaWV0IGluc3RhbGxlcmVuIgorCisjOiBzcmMvaGVscC5jOjQ4Cittc2dpZCAibm90IGluc3RhbGxlZCIKK21zZ3N0ciAibmlldCBnZcOvbnN0YWxsZWVyZCIKKworIzogc3JjL2hlbHAuYzo0OQorbXNnaWQgIm5vdCBpbnN0YWxsZWQgYnV0IGNvbmZpZ3MgcmVtYWluIgorbXNnc3RyICJuaWV0IGdlw69uc3RhbGxlZXJkIG1hYXIgY29uZmlndXJhdGllIGlzIGFjaHRlcmdlYmxldmVuIgorCisjOiBzcmMvaGVscC5jOjUwCisjLCBmdXp6eQorbXNnaWQgImJyb2tlbiBkdWUgdG8gZmFpbGVkIHJlbW92YWwgb3IgaW5zdGFsbGF0aW9uIgorbXNnc3RyICJuaWV0LXdlcmtlbmQgbWlzbHVrdGUgdmVyd2lqZGVyaW5nIgorCisjOiBzcmMvaGVscC5jOjUxCittc2dpZCAidW5wYWNrZWQgYnV0IG5vdCBjb25maWd1cmVkIgorbXNnc3RyICJ1aXRnZXBha3QgbWFhciBuaWV0IGdlY29uZmlndXJlZXJkIgorCisjOiBzcmMvaGVscC5jOjUyCittc2dpZCAiYnJva2VuIGR1ZSB0byBwb3N0aW5zdCBmYWlsdXJlIgorbXNnc3RyICJuaWV0LXdlcmtlbmQgd2VnZW5zIGZvdXQgdGlqZGVucyB1aXR2b2VyZW4gJ3Bvc3RpbnN0Jy1zY3JpcHQiCisKKyM6IHNyYy9oZWxwLmM6NTMKK21zZ2lkICJhd2FpdGluZyB0cmlnZ2VyIHByb2Nlc3NpbmcgYnkgYW5vdGhlciBwYWNrYWdlIgorbXNnc3RyICIiCisKKyM6IHNyYy9oZWxwLmM6NTQKK21zZ2lkICJ0cmlnZ2VyZWQiCittc2dzdHIgIiIKKworIzogc3JjL2hlbHAuYzo1NQorbXNnaWQgImluc3RhbGxlZCIKK21zZ3N0ciAiZ2XDr25zdGFsbGVlcmQiCisKKyM6IHNyYy9oZWxwLmM6MTA3CisjLCBmdXp6eQorbXNnaWQgIlBBVEggaXMgbm90IHNldC4iCittc2dzdHIgImRwa2cgLSBmb3V0OiBQQVRIIGlzIG5pZXQgaW5nZXN0ZWxkLlxuIgorCisjOiBzcmMvaGVscC5jOjEyOQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS4iCittc2dzdHIgImRwa2c6IGAlcycgbmlldCBnZXZvbmRlbiBpbiBQQVRILlxuIgorCisjOiBzcmMvaGVscC5jOjEzOAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIiVkIGV4cGVjdGVkIHByb2dyYW0gbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuXG4iCisiJXMiCittc2dpZF9wbHVyYWwgIiIKKyIlZCBleHBlY3RlZCBwcm9ncmFtcyBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS5cbiIKKyIlcyIKK21zZ3N0clswXSAiZHBrZzogYCVzJyBuaWV0IGdldm9uZGVuIGluIFBBVEguXG4iCittc2dzdHJbMV0gImRwa2c6IGAlcycgbmlldCBnZXZvbmRlbiBpbiBQQVRILlxuIgorCisjOiBzcmMvaGVscC5jOjE0MQorIywgZnV6enkKK21zZ2lkICIiCisiTm90ZTogcm9vdCdzIFBBVEggc2hvdWxkIHVzdWFsbHkgY29udGFpbiAvdXNyL2xvY2FsL3NiaW4sIC91c3Ivc2JpbiBhbmQgLyIKKyJzYmluLiIKK21zZ3N0ciAiIgorIiVkIHZlcndhY2h0KGUpIHByb2dyYW1tYSgncykgbmlldCBnZXZvbmRlbiBpbiBQQVRILlxuIgorIk5COiBQQVRIIHZhbiByb290IGJldmF0IGdld29vbmxpamsgL3Vzci9sb2NhbC9zYmluLCAvdXNyL3NiaW4gZW4gL3NiaW4uIgorCisjOiBzcmMvaGVscC5jOjE4OAorbXNnaWQgImFkbWluZGlyIG11c3QgYmUgaW5zaWRlIGluc3RkaXIgZm9yIGRwa2cgdG8gd29yayBwcm9wZXJseSIKK21zZ3N0ciAiIgorCisjOiBzcmMvaGVscC5jOjE5MCBzcmMvbWFpbi5jOjc0NworIywgZnV6enkKK21zZ2lkICJ1bmFibGUgdG8gc2V0ZW52IGZvciBzdWJwcm9jZXNzZXMiCittc2dzdHIgImthbiBnZWVuIHN0YXR1cyBvcHZyYWdlbiBpbiB2c25wcmludGYiCisKKyM6IHNyYy9oZWxwLmM6MTkyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjaHJvb3QgdG8gYCUuMjUwcyciCittc2dzdHIgImNocm9vdCBuYWFyIGAlLjI1MHMnIGlzIG1pc2x1a3QiCisKKyM6IHNyYy9oZWxwLmM6MTk0IGRwa2ctZGViL2J1aWxkLmM6NDU1IGRwa2ctZGViL2J1aWxkLmM6NDU3CisjOiBkcGtnLWRlYi9idWlsZC5jOjUzNiBkcGtnLWRlYi9idWlsZC5jOjU1OAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gYCUuMjU1cyciCittc2dzdHIgImNoZGlyIG5hYXIgYCUuMjU1cycgaXMgbWlzbHVrdCIKKworIzogc3JjL2hlbHAuYzoyNTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNldCBleGVjdXRlIHBlcm1pc3Npb25zIG9uIGAlLjI1MHMnIgorbXNnc3RyICJrYW4gYCUuMjUwcycgbmlldCB1aXR2b2VyYmFhciBtYWtlbiIKKworIzogc3JjL2hlbHAuYzoyNzYKKyMsIGZ1enp5Cittc2dpZCAidW5hYmxlIHRvIHNldGVudiBmb3IgbWFpbnRhaW5lciBzY3JpcHQiCittc2dzdHIgImthbiBnZWVuIHN0YXR1cyBvcHZyYWdlbiBpbiB2c25wcmludGYiCisKKyM6IHNyYy9oZWxwLmM6MzAwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJpbnN0YWxsZWQgJXMgc2NyaXB0IgorbXNnc3RyICJ2ZXJvdWRlcmQgJXMgc2NyaXB0IgorCisjOiBzcmMvaGVscC5jOjMxMyBzcmMvaGVscC5jOjM4MiBzcmMvaGVscC5jOjQ0MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCAlcyBgJS4yNTBzJyIKK21zZ3N0ciAia2FuIGRlIHN0YXR1cyB2YW4gJXMgYCUuMjUwcycgbmlldCBvcHZyYWdlbiIKKworIzogc3JjL2hlbHAuYzozNjggc3JjL2hlbHAuYzo0MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAibmV3ICVzIHNjcmlwdCIKK21zZ3N0ciAibmlldXcgJXMgc2NyaXB0IgorCisjOiBzcmMvaGVscC5jOjQwMgorIywgYy1mb3JtYXQKK21zZ2lkICJvbGQgJXMgc2NyaXB0IgorbXNnc3RyICJ2ZXJvdWRlcmQgJXMgc2NyaXB0IgorCisjOiBzcmMvaGVscC5jOjQxNgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgJXMgJyUuMjUwcyc6ICVzIgorbXNnc3RyICJrYW4gZGUgc3RhdHVzIHZhbiAlcyBgJS4yNTBzJyBuaWV0IG9wdnJhZ2VuIgorCisjOiBzcmMvaGVscC5jOjQyNQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnIC0gdHJ5aW5nIHNjcmlwdCBmcm9tIHRoZSBuZXcgcGFja2FnZSBpbnN0ZWFkIC4uLlxuIgorbXNnc3RyICJkcGtnIC0gc2NyaXB0IHVpdCBoZXQgbmlldXdlIHBha2tldCB3b3JkdCBnZXByb2JlZXJkIC4uLlxuIgorCisjOiBzcmMvaGVscC5jOjQzOQorbXNnaWQgInRoZXJlIGlzIG5vIHNjcmlwdCBpbiB0aGUgbmV3IHZlcnNpb24gb2YgdGhlIHBhY2thZ2UgLSBnaXZpbmcgdXAiCittc2dzdHIgIiIKKyJlciBpcyBnZWVuIHNjcmlwdCBpbiBkZSBuaWV1d2UgdmVyc2llIHZhbiBoZXQgcGFra2V0IC0gZXIgd29yZHQgb3BnZWdldmVuIgorCisjOiBzcmMvaGVscC5jOjQ0NQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiAuLi4gaXQgbG9va3MgbGlrZSB0aGF0IHdlbnQgT0suXG4iCittc2dzdHIgImRwa2c6IC4uLiBoZXQgbGlqa3QgZXIgb3AgZGF0IGRhdCBnb2VkIGdpbmcuXG4iCisKKyM6IHNyYy9oZWxwLmM6NjE2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2VjdXJlbHkgcmVtb3ZlICclLjI1NXMnIgorbXNnc3RyICJrYW4gYCUuMjU1cycgbmlldCBhYW5tYWtlbiIKKworIzogc3JjL2hlbHAuYzo2MjEgZHBrZy1kZWIvaW5mby5jOjY1IGRwa2ctZGViL2luZm8uYzo2NworbXNnaWQgInJtIGNvbW1hbmQgZm9yIGNsZWFudXAiCittc2dzdHIgIiIKKworIzogc3JjL2luZm9kYi5jOjUyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGVjayBleGlzdGVuY2Ugb2YgYCUuMjUwcyciCittc2dzdHIgImthbiBoZXQgYmVzdGFhbiB2YW4gYCUuMjUwcycgbmlldCB2ZXJpZmnDq3JlbiIKKworIzogc3JjL2luZm9kYi5jOjcwCittc2dpZCAiY2Fubm90IHJlYWQgaW5mbyBkaXJlY3RvcnkiCittc2dzdHIgImthbiBpbmZvIG1hcCBuaWV0IGxlemVuIgorCisjOiBzcmMvbWFpbi5jOjYwCisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiBgJXMnIHBhY2thZ2UgbWFuYWdlbWVudCBwcm9ncmFtIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkRlYmlhbiAnJXMnICBwYWtrZXRiZWhlZXJzcHJvZ3JhbW1hIHZlcnNpZSAlcy5cbiIKKworIzogc3JjL21haW4uYzo4NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLWl8LS1pbnN0YWxsICAgICAgIDwuZGViIGZpbGUgbmFtZT4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRpcmVjdG9yeT4gLi4uXG4iCisiICAtLXVucGFjayAgICAgICAgICAgPC5kZWIgZmlsZSBuYW1lPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyZWN0b3J5PiAuLi5cbiIKKyIgIC1BfC0tcmVjb3JkLWF2YWlsICA8LmRlYiBmaWxlIG5hbWU+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXJlY3Rvcnk+IC4uLlxuIgorIiAgLS1jb25maWd1cmUgICAgICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC0tdHJpZ2dlcnMtb25seSAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtcnwtLXJlbW92ZSAgICAgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLVB8LS1wdXJnZSAgICAgICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC0tZ2V0LXNlbGVjdGlvbnMgWzxwYXR0ZXJuPiAuLi5dIEdldCBsaXN0IG9mIHNlbGVjdGlvbnMgdG8gc3Rkb3V0LlxuIgorIiAgLS1zZXQtc2VsZWN0aW9ucyAgICAgICAgICAgICAgICAgU2V0IHBhY2thZ2Ugc2VsZWN0aW9ucyBmcm9tIHN0ZGluLlxuIgorIiAgLS1jbGVhci1zZWxlY3Rpb25zICAgICAgICAgICAgICAgRGVzZWxlY3QgZXZlcnkgbm9uLWVzc2VudGlhbCBwYWNrYWdlLlxuIgorIiAgLS11cGRhdGUtYXZhaWwgPFBhY2thZ2VzLWZpbGU+ICAgUmVwbGFjZSBhdmFpbGFibGUgcGFja2FnZXMgaW5mby5cbiIKKyIgIC0tbWVyZ2UtYXZhaWwgPFBhY2thZ2VzLWZpbGU+ICAgIE1lcmdlIHdpdGggaW5mbyBmcm9tIGZpbGUuXG4iCisiICAtLWNsZWFyLWF2YWlsICAgICAgICAgICAgICAgICAgICBFcmFzZSBleGlzdGluZyBhdmFpbGFibGUgaW5mby5cbiIKKyIgIC0tZm9yZ2V0LW9sZC11bmF2YWlsICAgICAgICAgICAgIEZvcmdldCB1bmluc3RhbGxlZCB1bmF2YWlsYWJsZSBwa2dzLlxuIgorIiAgLXN8LS1zdGF0dXMgPHBhY2thZ2U+IC4uLiAgICAgICAgRGlzcGxheSBwYWNrYWdlIHN0YXR1cyBkZXRhaWxzLlxuIgorIiAgLXB8LS1wcmludC1hdmFpbCA8cGFja2FnZT4gLi4uICAgRGlzcGxheSBhdmFpbGFibGUgdmVyc2lvbiBkZXRhaWxzLlxuIgorIiAgLUx8LS1saXN0ZmlsZXMgPHBhY2thZ2U+IC4uLiAgICAgTGlzdCBmaWxlcyBgb3duZWQnIGJ5IHBhY2thZ2UocykuXG4iCisiICAtbHwtLWxpc3QgWzxwYXR0ZXJuPiAuLi5dICAgICAgICBMaXN0IHBhY2thZ2VzIGNvbmNpc2VseS5cbiIKKyIgIC1TfC0tc2VhcmNoIDxwYXR0ZXJuPiAuLi4gICAgICAgIEZpbmQgcGFja2FnZShzKSBvd25pbmcgZmlsZShzKS5cbiIKKyIgIC1DfC0tYXVkaXQgICAgICAgICAgICAgICAgICAgICAgIENoZWNrIGZvciBicm9rZW4gcGFja2FnZShzKS5cbiIKKyIgIC0tcHJpbnQtYXJjaGl0ZWN0dXJlICAgICAgICAgICAgIFByaW50IGRwa2cgYXJjaGl0ZWN0dXJlLlxuIgorIiAgLS1jb21wYXJlLXZlcnNpb25zIDxhPiA8b3A+IDxiPiAgQ29tcGFyZSB2ZXJzaW9uIG51bWJlcnMgLSBzZWUgYmVsb3cuXG4iCisiICAtLWZvcmNlLWhlbHAgICAgICAgICAgICAgICAgICAgICBTaG93IGhlbHAgb24gZm9yY2luZy5cbiIKKyIgIC1EaHwtLWRlYnVnPWhlbHAgICAgICAgICAgICAgICAgIFNob3cgaGVscCBvbiBkZWJ1Z2dpbmcuXG4iCisiXG4iCittc2dzdHIgIiIKKyJDb21tYW5kb3M6XG4iCisiICAtaXwtLWluc3RhbGwgICAgICA8LmRlYiBiZXN0YW5kc25hYW0+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxtYXA+IC4uLlxuIgorIiAgLS11bnBhY2sgICAgICAgICAgPC5kZWIgYmVzdGFuZHNuYWFtPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8bWFwPiAuLi5cbiIKKyIgIC1BfC0tcmVjb3JkLWF2YWlsIDwuZGViIGJlc3RhbmRzbmFhbT4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPG1hcD4gLi4uXG4iCisiICAtLWNvbmZpZ3VyZSAgICAgICA8cGFra2V0bmFhbT4gICAgICAgIC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLXJ8LS1yZW1vdmUgfCAgICAgPHBha2tldG5hYW0+ICAgICAgICAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC1QfC0tcHVyZ2UgICAgICAgIDxwYWtrZXRuYWFtPiAgICAgIC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLS1nZXQtc2VsZWN0aW9ucyBbPHBhdHJvb24+IC4uLl0gICAgdG9vbiBsaWpzdCBzZWxlY3RpZXMgb3Agc3Rkb3V0LlxuIgorIiAgLS1zZXQtc2VsZWN0aW9ucyAgICAgICAgICAgICAgICAgICAgbmVlbSBwYWtrZXRzZWxlY3RpZXMgdmFuIHN0ZGluLlxuIgorIiAgLS1jbGVhci1zZWxlY3Rpb25zICAgICAgICAgICAgICAgICAgRGVzZWxlY3QgYWxsZSBuaWV0LWVzc2VudGnDq2xlICIKKyJwYWtldHRlbi5cbiIKKyIgIC0tdXBkYXRlLWF2YWlsIDxQYWtrZXRiZXN0YW5kPiAgIHZlcnZhbmcgZGUgYmVzY2hpa2JhcmUgcGFra2V0aW5mby5cbiIKKyIgIC0tbWVyZ2UtYXZhaWwgPFBha2tldGJlc3RhbmQ+ICAgIHNhbWVudm9lZ2VuIG1ldCBiZXNjaGlrYmFhci1pbmZvLlxuIgorIiAgLS1jbGVhci1hdmFpbCAgICAgICAgICAgICAgICAgICAgICAgICAgIHZlcndpamRlciBodWlkaWdlIGJlc2NoaWtiYWFyLSIKKyJpbmZvLlxuIgorIiAgLS1mb3JnZXQtb2xkLXVuYXZhaWwgICAgICAgICAgICAgICAgdmVyZ2VldCBuaWV0LWdlw69uc3RhbGxlZXJkZSBvdWRlICIKKyJwYWtrZXR0ZW4uXG4iCisiICAtc3wtLXN0YXR1cyA8cGFra2V0LW5hYW0+IC4uLiAgICAgICBnZWVmIGRlIHN0YXR1cyB2YW4gcGFra2V0LlxuIgorIiAgLXB8LS1wcmludC1hdmFpbCA8cGFra2V0LW5hYW0+IC4uLiAgZ2VlZiBiZXNjaGlrYmFhci1pbmZvIHZlcnNpZSBkZXRhaWxzLlxuIgorIiAgLUx8LS1saXN0ZmlsZXMgPHBha2tldC1uYWFtPiAuLi4gICAgZ2VlZiBiZXN0YW5kZW4gZGllIGB2YW4nIHBha2tldCB6aWpuLlxuIgorIiAgLWx8LS1saXN0IFs8cGF0cm9vbj4gLi4uXSAgICAgICAgICAgZ2VlZiBlZW4ga29ydGUgbGlqc3QgdmFuIHBha2tldHRlbi5cbiIKKyIgIC1TfC0tc2VhcmNoIDxwYXRyb29uPiAuLi4gICAgICB2aW5kIHBha2tldHRlbiBkaWUgYmVzdGFuZGVuIGJldmF0dGVuLlxuIgorIiAgLUN8LS1hdWRpdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB6b2VrIG5hYXIga2Fwb3R0ZSBwYWtrZXR0ZW4uXG4iCisiICAtLXByaW50LWFyY2hpdGVjdHVyZSAgICAgICAgICAgICAgICBnZWVmIGRwa2ctYXJjaGl0ZWN0dXVyIHdlZXIuXG4iCisiICAtLWNvbXBhcmUtdmVyc2lvbnMgPGE+IDxyZWw+IDxiPiAgICB2ZXJnZWxpamsgdmVyc2llbnVtbWVycyAoemllIG9uZGVyKS5cbiIKKyIgIC0tZm9yY2UtaGVscCAgICAgICAgICAgICAgICAgICAgICAgICAgICBodWxwIG92ZXIgZm9yY2VyZW4gIC1EaHwtLSIKKyJkZWJ1Zz1oZWxwICAgICAgICAgICAgICAgICAgaHVscCBvdmVyIGRlYnVnZ2VuLlxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjExMyBzcmMvcXVlcnljbWQuYzo2MzEgc3JjL3RyaWdjbWQuYzo3NyBkcGtnLWRlYi9tYWluLmM6ODgKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjc3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiICAtaHwtLWhlbHAgICAgICAgICAgICAgICAgICAgICAgICBTaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICAgICAgICAgU2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIiAgLWh8LS1oZWxwICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRvb24gZGV6ZSBoZWxwYm9vZHNjaGFwLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRvb24gaGV0IHZlcnNpZW51bW1lci5cbiIKKyIgIC0tbGljZW5zZSB8IC0tbGljZW5jZSAgICAgICAgICAgIGdlZWYgYXV0ZXVyc3JlY2h0ZW4gZW4gZ2FyYW50aWUuXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTE4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJVc2UgZHBrZyAtYnwtLWJ1aWxkfC1jfC0tY29udGVudHN8LWV8LS1jb250cm9sfC1JfC0taW5mb3wtZnwtLWZpZWxkfFxuIgorIiAteHwtLWV4dHJhY3R8LVh8LS12ZXh0cmFjdHwtLWZzeXMtdGFyZmlsZSAgb24gYXJjaGl2ZXMgKHR5cGUgJXMgLS1oZWxwKS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIkdlYnJ1aWsgZHBrZyAtYnwtLWJ1aWxkfC1jfC0tY29udGVudHN8LWV8LS1jb250cm9sfC1JfC0taW5mb3wtZnwtLWZpZWxkfFxuIgorIiAteHwtLWV4dHJhY3R8LVh8LS12ZXh0cmFjdHwtLWZzeXMtdGFyZmlsZSAgb3AgYXJjaGlldmVuICh0eXBlICVzIC0taGVscC4pXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTIzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJGb3IgaW50ZXJuYWwgdXNlOiBkcGtnIC0tYXNzZXJ0LXN1cHBvcnQtcHJlZGVwZW5kcyB8IC0tcHJlZGVwLXBhY2thZ2UgfFxuIgorIiAgLS1hc3NlcnQtd29ya2luZy1lcG9jaCB8IC0tYXNzZXJ0LWxvbmctZmlsZW5hbWVzIHwgLS1hc3NlcnQtbXVsdGktY29ucmVwLlxuIgorIlxuIgorbXNnc3RyICIiCisiVm9vciBpbnRlcm4gZ2VicnVpazogZHBrZyAtLWFzc2VydC1zdXBwb3J0LXByZWRlcGVuZHMgfCAtLXByZWRlcC1wYWNrYWdlIHxcbiIKKyIgIC0tYXNzZXJ0LXdvcmtpbmctZXBvY2ggfCAtLWFzc2VydC1sb25nLWZpbGVuYW1lcyB8IC0tYXNzZXJ0LW11bHRpLWNvbnJlcFxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjEyOAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyIgIC0tcm9vdD08ZGlyZWN0b3J5PiAgICAgICAgIEluc3RhbGwgb24gYSBkaWZmZXJlbnQgcm9vdCBkaXJlY3RvcnkuXG4iCisiICAtLWluc3RkaXI9PGRpcmVjdG9yeT4gICAgICBDaGFuZ2UgaW5zdGFsbGF0aW9uIGRpciB3aXRob3V0IGNoYW5naW5nIGFkbWluICIKKyJkaXIuXG4iCisiICAtLXBhdGgtZXhjbHVkZT08cGF0dGVybj4gICBEbyBub3QgaW5zdGFsbCBwYXRocyB3aGljaCBtYXRjaCBhIHNoZWxsICIKKyJwYXR0ZXJuLlxuIgorIiAgLS1wYXRoLWluY2x1ZGU9PHBhdHRlcm4+ICAgUmUtaW5jbHVkZSBhIHBhdHRlcm4gYWZ0ZXIgYSBwcmV2aW91cyAiCisiZXhjbHVzaW9uLlxuIgorIiAgLU98LS1zZWxlY3RlZC1vbmx5ICAgICAgICAgU2tpcCBwYWNrYWdlcyBub3Qgc2VsZWN0ZWQgZm9yIGluc3RhbGwvIgorInVwZ3JhZGUuXG4iCisiICAtRXwtLXNraXAtc2FtZS12ZXJzaW9uICAgICBTa2lwIHBhY2thZ2VzIHdob3NlIHNhbWUgdmVyc2lvbiBpcyBpbnN0YWxsZWQuXG4iCisiICAtR3wtLXJlZnVzZS1kb3duZ3JhZGUgICAgICBTa2lwIHBhY2thZ2VzIHdpdGggZWFybGllciB2ZXJzaW9uIHRoYW4gIgorImluc3RhbGxlZC5cbiIKKyIgIC1CfC0tYXV0by1kZWNvbmZpZ3VyZSAgICAgIEluc3RhbGwgZXZlbiBpZiBpdCB3b3VsZCBicmVhayBzb21lIG90aGVyICIKKyJwYWNrYWdlLlxuIgorIiAgLS1bbm8tXXRyaWdnZXJzICAgICAgICAgICAgU2tpcCBvciBmb3JjZSBjb25zZXF1ZW50aWFsIHRyaWdnZXIgIgorInByb2Nlc3NpbmcuXG4iCisiICAtLW5vLWRlYnNpZyAgICAgICAgICAgICAgICBEbyBub3QgdHJ5IHRvIHZlcmlmeSBwYWNrYWdlIHNpZ25hdHVyZXMuXG4iCisiICAtLW5vLWFjdHwtLWRyeS1ydW58LS1zaW11bGF0ZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSnVzdCBzYXkgd2hhdCB3ZSB3b3VsZCBkbyAtIGRvbid0IGRvIGl0LlxuIgorIiAgLUR8LS1kZWJ1Zz08b2N0YWw+ICAgICAgICAgRW5hYmxlIGRlYnVnZ2luZyAoc2VlIC1EaGVscCBvciAtLWRlYnVnPWhlbHApLlxuIgorIiAgLS1zdGF0dXMtZmQgPG4+ICAgICAgICAgICAgU2VuZCBzdGF0dXMgY2hhbmdlIHVwZGF0ZXMgdG8gZmlsZSBkZXNjcmlwdG9yICIKKyI8bj4uXG4iCisiICAtLWxvZz08ZmlsZW5hbWU+ICAgICAgICAgICBMb2cgc3RhdHVzIGNoYW5nZXMgYW5kIGFjdGlvbnMgdG8gPGZpbGVuYW1lPi5cbiIKKyIgIC0taWdub3JlLWRlcGVuZHM9PHBhY2thZ2U+LC4uLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSWdub3JlIGRlcGVuZGVuY2llcyBpbnZvbHZpbmcgPHBhY2thZ2U+LlxuIgorIiAgLS1mb3JjZS0uLi4gICAgICAgICAgICAgICAgT3ZlcnJpZGUgcHJvYmxlbXMgKHNlZSAtLWZvcmNlLWhlbHApLlxuIgorIiAgLS1uby1mb3JjZS0uLi58LS1yZWZ1c2UtLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9wIHdoZW4gcHJvYmxlbXMgZW5jb3VudGVyZWQuXG4iCisiICAtLWFib3J0LWFmdGVyIDxuPiAgICAgICAgICBBYm9ydCBhZnRlciBlbmNvdW50ZXJpbmcgPG4+IGVycm9ycy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIk9wdGllczpcbiIKKyIgIC0tYWRtaW5kaXI9PG1hcD4gICAgICAgR2VicnVpayA8bWFwPiBpbiBwbGFhdHMgdmFuICVzXG4iCisiICAtLXJvb3Q9PG1hcD4gICAgICAgICAgICAgICBJbnN0YWxsZWVyIG9wIGVlbiBzeXN0ZWVtIG1ldCBhbmRlcmUgaG9vZmRtYXBcbiIKKyIgIC0taW5zdGRpcj08bWFwPiAgICAgICAgICAgIFZlcmFuZGVyIGhvb2ZkbWFwIG1hYXIgbmlldCBhZG1pbmlzdHJhdGllbWFwXG4iCisiICAtT3wtLXNlbGVjdGVkLW9ubHkgICAgICAgICAgIFNraXAgcGFra2V0dGVuIG5vdCBzZWxlY3RlZCBmb3IgaW5zdGFsbC8iCisidXBncmFkZVxuIgorIiAgLUV8LS1za2lwLXNhbWUtdmVyc2lvbiAgICBTa2lwIHBha2tldHRlbiBtZXQgZGV6ZWxmZGUgdmVyc2llIGFscyAiCisiZ2XDr25zdGFsbGVlcmRcbiIKKyIgIC1HfC0tcmVmdXNlLWRvd25ncmFkZSAgICBTa2lwIHBha2tldHRlbiBtZXQgZWVyZGVyZSB2ZXJzaWUgZGFuICIKKyJnZcOvc3RhbGxlZXJkXG4iCisiICAtQnwtLWF1dG8tZGVjb25maWd1cmUgICAgICBJbnN0YWxsZWVyIHplbGZzIGFscyBoZXQgZWVuIGFuZGVyIHBha2tldCAiCisidmVybmllbHRcbiIKKyIgIC0tbm8tZGVic2lnICAgICAgICAgICAgICAgICAgICAgIFZlcmlmaWVlciBnZWVuIGRpZ2l0YWxlIGhhbmR0ZWtlbmluZ2VuIG9wICIKKyJwYWtrZXR0ZW5cbiIKKyIgIC0tbm8tYWN0fC0tZHJ5LXJ1bnwtLXNpbXVsYXRlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTWVsZCB3YXQgZHBrZyB6b3UgZG9lbiwgem9uZGVyIGhldCAiCisidGUgZG9lblxuIgorIiAgLUR8LS1kZWJ1Zz08b2N0YWw+ICAgICAgIEFjdGl2ZWVyIGRlYnVnIC0gemllIC1EaGVscCBvZiAtLWRlYnVnPWhlbHBcbiIKKyIgIC0tc3RhdHVzLWZkIDxuPiAgICAgICAgICAgICAgIFN0dXVyIHN0YXR1cyBjaGFuZ2UgdXBkYXRlcyBuYWFyIGZpbGUgIgorImRlc2NyaXB0b3IgPG4+XG4iCisiICAtLWxvZz08YmVzdGFuZHNuYWFtPiBsb2cgc3RhdHVzdmVyYW5kZXJpbmdlbiBlbiBhY3RpZXMgbmFhciAiCisiPGJlc3RhbmRzbmFhbT5cbiIKKyIgICAtLWlnbm9yZS1kZXBlbmRzPTxwYWtrZXQ+LC4uLiBOZWdlZXIgdmVyZWlzdGVuIGJpaiA8cGFra2V0PlxuIgorIiAgLS1mb3JjZS0uLi4gICAgICAgICAgICAgICAgICAgICAgICAgIEZvcmNlZXIgb3Bsb3NzaW5nZW4gLSB6aWUgLS1mb3JjZS0iCisiaGVscFxuIgorIiAgLS1uby1mb3JjZS0uLi58LS1yZWZ1c2UtLi4uICAgU3RvcCBiaWogcHJvYmxlbWVuXG4iCisiICAtLWFib3J0LWFmdGVyIDxuPiAgICAgICAgICAgIEJyZWVrIGFmIG5hIDxuPiBmb3V0ZW5cbiIKKyJcbiIKKworIzogc3JjL21haW4uYzoxNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbXBhcmlzb24gb3BlcmF0b3JzIGZvciAtLWNvbXBhcmUtdmVyc2lvbnMgYXJlOlxuIgorIiAgbHQgbGUgZXEgbmUgZ2UgZ3QgICAgICAgKHRyZWF0IGVtcHR5IHZlcnNpb24gYXMgZWFybGllciB0aGFuIGFueSAiCisidmVyc2lvbik7XG4iCisiICBsdC1ubCBsZS1ubCBnZS1ubCBndC1ubCAodHJlYXQgZW1wdHkgdmVyc2lvbiBhcyBsYXRlciB0aGFuIGFueSB2ZXJzaW9uKTtcbiIKKyIgIDwgPDwgPD0gPSA+PSA+PiA+ICAgICAgIChvbmx5IGZvciBjb21wYXRpYmlsaXR5IHdpdGggY29udHJvbCBmaWxlICIKKyJzeW50YXgpLlxuIgorIlxuIgorbXNnc3RyICIiCisiVmVyZ2VsaWpraW5nc29wZXJhdG9yZW4gdm9vciAtLWNvbXBhcmUtdmVyc2lvbnM6XG4iCisiIGx0IGxlIGVxIG5lIGdlIGd0ICAgICAgIChnZWVuIHZlcnNpZSB3b3JkdCBiZWhhbmRlbGQgYWxzIGVlcmRlciBkYW4gZ2VsaWprICIKKyJ3ZWxrZSB2ZXJzaWUpO1xuIgorIiBsdC1ubCBsZS1ubCBnZS1ubCBndC1ubCAoZ2VlbiB2ZXJzaWUgd29yZHQgYmVoYW5kZWxkIGFscyBlZXJkZXIgZGFuIGdlbGlqayAiCisid2Vsa2UgdmVyc2llKTtcbiIKKyIgPCA8PCA8PSA9ID49ID4+ID4gKGVua2VsIHZvb3IgY29tcGF0aWJpbGl0ZWl0IG1ldCBkZSBzeW50YXggdmFuICdjb250cm9sLSIKKyJiZXN0YW5kZW4pLlxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjE2MQorIywgYy1mb3JtYXQKK21zZ2lkICJVc2UgYGRzZWxlY3QnIG9yIGBhcHRpdHVkZScgZm9yIHVzZXItZnJpZW5kbHkgcGFja2FnZSBtYW5hZ2VtZW50LlxuIgorbXNnc3RyICIiCisiR2VicnVpayBgYXB0aXR1ZGUnIG9mICdkc2VsZWN0JyB2b29yIGdlYnJ1aWtlcnN2cmllbmRlbGlqayBwYWtrZXRiZWhlZXIuXG4iCisKKyM6IHNyYy9tYWluLmM6MTcwCisjLCBmdXp6eQorbXNnaWQgIiIKKyJUeXBlIGRwa2cgLS1oZWxwIGZvciBoZWxwIGFib3V0IGluc3RhbGxpbmcgYW5kIGRlaW5zdGFsbGluZyBwYWNrYWdlcyBbKl07XG4iCisiVXNlIGBkc2VsZWN0JyBvciBgYXB0aXR1ZGUnIGZvciB1c2VyLWZyaWVuZGx5IHBhY2thZ2UgbWFuYWdlbWVudDtcbiIKKyJUeXBlIGRwa2cgLURoZWxwIGZvciBhIGxpc3Qgb2YgZHBrZyBkZWJ1ZyBmbGFnIHZhbHVlcztcbiIKKyJUeXBlIGRwa2cgLS1mb3JjZS1oZWxwIGZvciBhIGxpc3Qgb2YgZm9yY2luZyBvcHRpb25zO1xuIgorIlR5cGUgZHBrZy1kZWIgLS1oZWxwIGZvciBoZWxwIGFib3V0IG1hbmlwdWxhdGluZyAqLmRlYiBmaWxlcztcbiIKKyJcbiIKKyJPcHRpb25zIG1hcmtlZCBbKl0gcHJvZHVjZSBhIGxvdCBvZiBvdXRwdXQgLSBwaXBlIGl0IHRocm91Z2ggYGxlc3MnIG9yICIKKyJgbW9yZScgISIKK21zZ3N0ciAiIgorIlR5cGUgZHBrZyAtLWhlbHAgdm9vciBodWxwIG1ldCBpbnN0YWxsYXRpZSBlbiBkZcOvbnN0YWxsYXRpZSB2YW4gcGFra2V0dGVuICIKKyJbKl07XG4iCisiR2VicnVpayAnZHNlbGVjdCcgb2YgJ2FwdGl0dWRlJyB2b29yIGdlYnJ1aWtlcnN2cmllbmRlbGlqayBwYWtrZXRiZWhlZXI7XG4iCisiVHlwZSBkcGtnIC1EaGVscCB2b29yIGVlbiBsaWpzdCB2YW4gZHBrZyBkZWJ1Z3ZsYWdnZW47XG4iCisiVHlwZSBkcGtnIC0tZm9yY2UtaGVscCB2b29yIGVlbiBsaWpzdCBtZXQgZm9yY2Vlci1vcHRpZXM7XG4iCisiVHlwZSBkcGtnLWRlYiAtLWhlbHAgdm9vciBodWxwIG1ldCBtYW5pcHVsZXJlbiB2YW4gKi5kZWIgYmVzdGFuZGVuO1xuIgorIlR5cGUgZHBrZyAtLWxpY2Vuc2Ugdm9vciBhdXRldXJzcmVjaHQsIGxpY2VudGllIGVuIG9udGJyZWtlbiB2YW4gZ2FyYW50aWUgIgorIihHTlUgR1BMKSBbKl0uXG4iCisiXG4iCisiT3B0aWVzIGdlbWFya2VlcmQgbWV0IFsqXSBwcm9kdWNlcmVuIGVlbiBob29wIHVpdHZvZXIgLSBwaWpwIGhldCBkb29yIGBsZXNzJyAiCisib2YgYG1vcmUnICEiCisKKyM6IHNyYy9tYWluLmM6MjE5Cittc2dpZCAiU2V0IGFsbCBmb3JjZSBvcHRpb25zIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjIxCittc2dpZCAiUmVwbGFjZSBhIHBhY2thZ2Ugd2l0aCBhIGxvd2VyIHZlcnNpb24iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjMKK21zZ2lkICJDb25maWd1cmUgYW55IHBhY2thZ2Ugd2hpY2ggbWF5IGhlbHAgdGhpcyBvbmUiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjUKK21zZ2lkICJQcm9jZXNzIGluY2lkZW50YWwgcGFja2FnZXMgZXZlbiB3aGVuIG9uIGhvbGQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjcKK21zZ2lkICJUcnkgdG8gKGRlKWluc3RhbGwgdGhpbmdzIGV2ZW4gd2hlbiBub3Qgcm9vdCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIyOQorbXNnaWQgIlBBVEggaXMgbWlzc2luZyBpbXBvcnRhbnQgcHJvZ3JhbXMsIHByb2JsZW1zIGxpa2VseSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzMQorbXNnaWQgIkluc3RhbGwgYSBwYWNrYWdlIGV2ZW4gaWYgaXQgZmFpbHMgYXV0aGVudGljaXR5IGNoZWNrIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjMzCittc2dpZCAiUHJvY2VzcyBldmVuIHBhY2thZ2VzIHdpdGggd3JvbmcgdmVyc2lvbnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzUKK21zZ2lkICJPdmVyd3JpdGUgYSBmaWxlIGZyb20gb25lIHBhY2thZ2Ugd2l0aCBhbm90aGVyIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjM3Cittc2dpZCAiT3ZlcndyaXRlIGEgZGl2ZXJ0ZWQgZmlsZSB3aXRoIGFuIHVuZGl2ZXJ0ZWQgdmVyc2lvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzOQorbXNnaWQgIk92ZXJ3cml0ZSBvbmUgcGFja2FnZSdzIGRpcmVjdG9yeSB3aXRoIGFub3RoZXIncyBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjQxCittc2dpZCAiRG8gbm90IHBlcmZvcm0gc2FmZSBJL08gb3BlcmF0aW9ucyB3aGVuIHVucGFja2luZyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI0MworbXNnaWQgIkFsd2F5cyB1c2UgdGhlIG5ldyBjb25maWcgZmlsZXMsIGRvbid0IHByb21wdCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI0NQorbXNnaWQgIkFsd2F5cyB1c2UgdGhlIG9sZCBjb25maWcgZmlsZXMsIGRvbid0IHByb21wdCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI0OAorbXNnaWQgIiIKKyJVc2UgdGhlIGRlZmF1bHQgb3B0aW9uIGZvciBuZXcgY29uZmlnIGZpbGVzIGlmIG9uZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICBpcyBhdmFpbGFibGUsIGRvbid0IHByb21wdC4gSWYgbm8gZGVmYXVsdCBjYW4gYmUgIgorImZvdW5kLFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICB5b3Ugd2lsbCBiZSBwcm9tcHRlZCB1bmxlc3Mgb25lIG9mIHRoZSBjb25mb2xkIG9yXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmZuZXcgb3B0aW9ucyBpcyBhbHNvIGdpdmVuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjUzCittc2dpZCAiQWx3YXlzIGluc3RhbGwgbWlzc2luZyBjb25maWcgZmlsZXMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNTUKK21zZ2lkICJPZmZlciB0byByZXBsYWNlIGNvbmZpZyBmaWxlcyB3aXRoIG5vIG5ldyB2ZXJzaW9ucyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI1NworbXNnaWQgIlByb2Nlc3MgZXZlbiBwYWNrYWdlcyB3aXRoIHdyb25nIG9yIG5vIGFyY2hpdGVjdHVyZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI1OQorbXNnaWQgIkluc3RhbGwgZXZlbiBpZiBpdCB3b3VsZCBicmVhayBhbm90aGVyIHBhY2thZ2UiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNjEKK21zZ2lkICJBbGxvdyBpbnN0YWxsYXRpb24gb2YgY29uZmxpY3RpbmcgcGFja2FnZXMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNjMKKyMsIGZ1enp5CisjfCBtc2dpZCAiZGVwZW5kZW5jeSBwcm9ibGVtcyAtIG5vdCByZW1vdmluZyIKK21zZ2lkICJUdXJuIGFsbCBkZXBlbmRlbmN5IHByb2JsZW1zIGludG8gd2FybmluZ3MiCittc2dzdHIgInZlcmVpc3RlbnByb2JsZW1lbiAtIG5pZXQgdmVyd2lqZGVyZCIKKworIzogc3JjL21haW4uYzoyNjUKKyMsIGZ1enp5CisjfCBtc2dpZCAiZGVwZW5kZW5jeSBwcm9ibGVtcyAtIG5vdCByZW1vdmluZyIKK21zZ2lkICJUdXJuIGRlcGVuZGVuY3kgdmVyc2lvbiBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzIgorbXNnc3RyICJ2ZXJlaXN0ZW5wcm9ibGVtZW4gLSBuaWV0IHZlcndpamRlcmQiCisKKyM6IHNyYy9tYWluLmM6MjY3Cittc2dpZCAiUmVtb3ZlIHBhY2thZ2VzIHdoaWNoIHJlcXVpcmUgaW5zdGFsbGF0aW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjY5Cittc2dpZCAiUmVtb3ZlIGFuIGVzc2VudGlhbCBwYWNrYWdlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjgxCittc2dpZCAiR2VuZXJhbGx5IGhlbHBmdWwgcHJvZ3Jlc3MgaW5mb3JtYXRpb24iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODIKKyMsIGZ1enp5Cittc2dpZCAiSW52b2NhdGlvbiBhbmQgc3RhdHVzIG9mIG1haW50YWluZXIgc2NyaXB0cyIKK21zZ3N0ciAia2FuIGdlZW4gc3RhdHVzIG9wdnJhZ2VuIGluIHZzbnByaW50ZiIKKworIzogc3JjL21haW4uYzoyODMKK21zZ2lkICJPdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODQKK21zZ2lkICJMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4NQorIywgZnV6enkKKyN8IG1zZ2lkICJyZWFkIGVycm9yIGluIGNvbmZpZ3VyYXRpb24gZmlsZSBgJS4yNTVzJyIKK21zZ2lkICJPdXRwdXQgZm9yIGVhY2ggY29uZmlndXJhdGlvbiBmaWxlIgorbXNnc3RyICJsZWVzZm91dCBpbiBjb25maWd1cmF0aWViZXN0YW5kIGAlLjI1NXMnIgorCisjOiBzcmMvbWFpbi5jOjI4NgorbXNnaWQgIkxvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4NworbXNnaWQgIkRlcGVuZGVuY2llcyBhbmQgY29uZmxpY3RzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg4Cittc2dpZCAiTG90cyBvZiBkZXBlbmRlbmNpZXMvY29uZmxpY3RzIG91dHB1dCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4OQorbXNnaWQgIlRyaWdnZXIgYWN0aXZhdGlvbiBhbmQgcHJvY2Vzc2luZyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MAorbXNnaWQgIkxvdHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2VycyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MQorbXNnaWQgIlNpbGx5IGFtb3VudHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2VycyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MgorbXNnaWQgIkxvdHMgb2YgZHJpdmVsIGFib3V0IGVnIHRoZSBkcGtnL2luZm8gZGlyZWN0b3J5IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjkzCittc2dpZCAiSW5zYW5lIGFtb3VudHMgb2YgZHJpdmVsIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MzA0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlcyBkZWJ1Z2dpbmcgb3B0aW9uLCAtLWRlYnVnPTxvY3RhbD4gb3IgLUQ8b2N0YWw+OlxuIgorIlxuIgorIiBOdW1iZXIgIFJlZi4gaW4gc291cmNlICAgRGVzY3JpcHRpb25cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjMxMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiRGVidWdnaW5nIG9wdGlvbnMgY2FuIGJlIG1peGVkIHVzaW5nIGJpdHdpc2Utb3IuXG4iCisiTm90ZSB0aGF0IHRoZSBtZWFuaW5ncyBhbmQgdmFsdWVzIGFyZSBzdWJqZWN0IHRvIGNoYW5nZS5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjMxOQorbXNnaWQgIi0tZGVidWcgcmVxdWlyZXMgYW4gb2N0YWwgYXJndW1lbnQiCittc2dzdHIgIi0tZGVidWcgdmVyZWlzdCBlZW4gb2N0YWFsIGFyZ3VtZW50IgorCisjOiBzcmMvbWFpbi5jOjM0OAorIywgYy1mb3JtYXQKK21zZ2lkICJudWxsIHBhY2thZ2UgbmFtZSBpbiAtLWlnbm9yZS1kZXBlbmRzIGNvbW1hLXNlcGFyYXRlZCBsaXN0IGAlLjI1MHMnIgorbXNnc3RyICIiCisibGVnZSBwYWtrZXRuYWFtIGluIC0taWdub3JlLWRlcGVuZHMgbGlqc3QgYCUuMjUwcycgKGdlc2NoZWlkZW4gZG9vciBrb21tYSdzKSIKKworIzogc3JjL21haW4uYzozNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS1pZ25vcmUtZGVwZW5kcyByZXF1aXJlcyBhIGxlZ2FsIHBhY2thZ2UgbmFtZS4gYCUuMjUwcycgaXMgbm90OyAlcyIKK21zZ3N0ciAiIgorIi0taWdub3JlLWRlcGVuZHMgdmVyZWlzdCBlZW4gdG9lZ2VzdGFuZSBwYWtrZXRuYWFtLiBgJS4yNTBzJyBpcyBkYXQgbmlldDsgJXMiCisKKyM6IHNyYy9tYWluLmM6MzcxIHNyYy9tYWluLmM6MzgxIHNyYy9tYWluLmM6NjQ5IGRwa2ctc3BsaXQvbWFpbi5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGludGVnZXIgZm9yIC0tJXM6IGAlLjI1MHMnIgorbXNnc3RyICJvbmdlbGRpZyBnZXRhbCB2b29yIC0tJXM6IGAlLjI1MHMnIgorCisjOiBzcmMvbWFpbi5jOjQzOAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBleGVjdXRpbmcgaG9vayAnJXMnLCBleGl0IGNvZGUgJWQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzo0NjUKK21zZ2lkICJzdGF0dXMgbG9nZ2VyIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6NDgwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlcyBmb3JjaW5nIG9wdGlvbnMgLSBjb250cm9sIGJlaGF2aW91ciB3aGVuIHByb2JsZW1zIGZvdW5kOlxuIgorIiAgd2FybiBidXQgY29udGludWU6ICAtLWZvcmNlLTx0aGluZz4sPHRoaW5nPiwuLi5cbiIKKyIgIHN0b3Agd2l0aCBlcnJvcjogICAgLS1yZWZ1c2UtPHRoaW5nPiw8dGhpbmc+LC4uLiB8IC0tbm8tZm9yY2UtPHRoaW5nPiwuLi5cbiIKKyIgRm9yY2luZyB0aGluZ3M6XG4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzo0OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIldBUk5JTkcgLSB1c2Ugb2Ygb3B0aW9ucyBtYXJrZWQgWyFdIGNhbiBzZXJpb3VzbHkgZGFtYWdlIHlvdXIgaW5zdGFsbGF0aW9uLlxuIgorIkZvcmNpbmcgb3B0aW9ucyBtYXJrZWQgWypdIGFyZSBlbmFibGVkIGJ5IGRlZmF1bHQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzo1MDQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBmb3JjZS9yZWZ1c2Ugb3B0aW9uIGAlLipzJyIKK21zZ3N0ciAib25iZWtlbmRlIGZvcmNlL3JlZnVzZSBvcHRpZSBgJS4qcyciCisKKyM6IHNyYy9tYWluLmM6NTEzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJvYnNvbGV0ZSBmb3JjZS9yZWZ1c2Ugb3B0aW9uICclcydcbiIKK21zZ3N0ciAiTGV0IG9wOiB2ZXJvdWRlcmRlIGZvcmNlZXIvd2VpZ2VyIG9wdGllIGAlcydcbiIKKworIzogc3JjL21haW4uYzo2NDMKK21zZ2lkICItLWNvbW1hbmQtZmQgdGFrZXMgb25lIGFyZ3VtZW50LCBub3QgemVybyIKK21zZ3N0ciAiLS1jb21tYW5kLWZkIGFhbnZhYXJkIHNsZWNodHMgw6nDqW4gYXJndW1lbnQsIGVuIGRhdCBtYWcgbmlldCBudWwgemlqbiIKKworIzogc3JjL21haW4uYzo2NDUKK21zZ2lkICItLWNvbW1hbmQtZmQgb25seSB0YWtlcyBvbmUgYXJndW1lbnQiCittc2dzdHIgIi0tY29tbWFuZC1mZCBhYW52YWFyZCBzbGVjaHRzIMOpw6luIGFyZ3VtZW50IgorCisjOiBzcmMvbWFpbi5jOjY1MQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBvcGVuIGAlaScgZm9yIHN0cmVhbSIKK21zZ3N0ciAia2FuIGAlaScgbmlldCBvcGVuZW4gdm9vciBzdHJlYW0iCisKKyM6IHNyYy9tYWluLmM6Njc2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW9mIGJlZm9yZSBlbmQgb2YgbGluZSAlZCIKK21zZ3N0ciAib252ZXJ3YWNodCBiZXN0YW5kc2VpbmRlIHZvb3IgZWluZGUgcmVnZWwgJWQiCisKKyM6IHNyYy9tYWluLmM6NzE5IHNyYy9tYWluLmM6NzQxIHNyYy9xdWVyeWNtZC5jOjY5MiBzcmMvc3RhdGNtZC5jOjM3OQorIzogZHBrZy1kZWIvbWFpbi5jOjIwMSBkcGtnLXNwbGl0L21haW4uYzoxNjMKK21zZ2lkICJuZWVkIGFuIGFjdGlvbiBvcHRpb24iCittc2dzdHIgImhlYiBlZW4gYWN0aWUtb3B0aWUgbm9kaWciCisKKyM6IHNyYy9wYWNrYWdlcy5jOjExMworbXNnaWQgIiIKKyJ5b3UgbXVzdCBzcGVjaWZ5IHBhY2thZ2VzIGJ5IHRoZWlyIG93biBuYW1lcywgbm90IGJ5IHF1b3RpbmcgdGhlIG5hbWVzIG9mICIKKyJ0aGUgZmlsZXMgdGhleSBjb21lIGluIgorbXNnc3RyICIiCisidSBkaWVudCBwYWtrZXR0ZW4gYmlqIGh1biBlaWdlbiBuYW1lbiBvcCB0ZSBnZXZlbiwgZW4gZHVzIG5pZXQgbWV0IGRlIG5hYW0gIgorInZhbiBoZXQgYmVzdGFuZCB3YWFyIHplIGlueml0dGVuIgorCisjOiBzcmMvcGFja2FnZXMuYzoxMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyAtLXBlbmRpbmcgZG9lcyBub3QgdGFrZSBhbnkgbm9uLW9wdGlvbiBhcmd1bWVudHMiCittc2dzdHIgIi0tJXMgLS1wZW5kaW5nIGFjY2VwdGVlcnQgZ2VlbiBuaWV0LW9wdGllIGFyZ3VtZW50ZW4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjEzOCBzcmMvcXVlcnljbWQuYzozNzUgc3JjL3F1ZXJ5Y21kLmM6NTY1CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYXQgbGVhc3Qgb25lIHBhY2thZ2UgbmFtZSBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyBoZWVmdCB0ZW4gbWluc3RlIGVlbiBwYWtrZXRuYWFtIGFyZ3VtZW50IG5vZGlnIgorCisjOiBzcmMvcGFja2FnZXMuYzoxNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSAlcyBsaXN0ZWQgbW9yZSB0aGFuIG9uY2UsIG9ubHkgcHJvY2Vzc2luZyBvbmNlLlxuIgorbXNnc3RyICJQYWtrZXQgJXMgaXMgbWVlciBkYW4gZWVucyBnZWdldmVuLCBzbGVjaHRzIGVlbiBrZWVyIGJlaGFuZGVsZC5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MTgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJNb3JlIHRoYW4gb25lIGNvcHkgb2YgcGFja2FnZSAlcyBoYXMgYmVlbiB1bnBhY2tlZFxuIgorIiBpbiB0aGlzIHJ1biAhICBPbmx5IGNvbmZpZ3VyaW5nIGl0IG9uY2UuXG4iCittc2dzdHIgIiIKKyJNZWVyIGRhbiBlZW4ga29waWUgdmFuIHBha2tldCAlcyBpcyB1aXRnZXBha3QgaW4gZGV6ZSByb25kZSFcbiIKKyIgV29yZHQgc2xlY2h0cyBlZW4ga2VlciBnZWNvbmZpZ3VyZWVyZC5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MjMyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisicGFja2FnZSAlLjI1MHMgaXMgbm90IHJlYWR5IGZvciB0cmlnZ2VyIHByb2Nlc3NpbmdcbiIKKyIgKGN1cnJlbnQgc3RhdHVzIGAlLjI1MHMnIHdpdGggbm8gcGVuZGluZyB0cmlnZ2VycykiCittc2dzdHIgIiIKKyJwYWtrZXQgJS4yNTBzIGlzIG5pZXQgZ2VyZWVkIHZvb3IgY29uZmlndXJhdGllXG4iCisiIGthbiBoZXQgbmlldCBjb25maWd1cmVyZW4gKGh1aWRpZ2Ugc3RhdHVzIGAlLjI1MHMnKSIKKworIzogc3JjL3BhY2thZ2VzLmM6MzM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyB3aGljaCBwcm92aWRlcyAlcyBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIgICBQYWtrZXQgJXMgZGF0IHZvb3J6aWV0IGluICVzIHphbCB2ZXJ3aWpkZXJkIHdvcmRlbi5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MzM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIgIFBha2tldCAlcyB6YWwgdmVyd2lqZGVyZCB3b3JkZW4uXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjM1NAorIywgYy1mb3JtYXQKK21zZ2lkICIgIFZlcnNpb24gb2YgJXMgb24gc3lzdGVtIGlzICVzLlxuIgorbXNnc3RyICIgIFZlcnNpZSB2YW4gJXMgb3AgZGl0IHN5c3RlZW0gaXMgJXMuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjM3NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIHdoaWNoIHByb3ZpZGVzICVzIGF3YWl0cyB0cmlnZ2VyIHByb2Nlc3NpbmcuXG4iCittc2dzdHIgIiAgIFBha2tldCAlcyBkYXQgdm9vcnppZXQgaW4gJXMgemFsIHZlcndpamRlcmQgd29yZGVuLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzozODAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyBhd2FpdHMgdHJpZ2dlciBwcm9jZXNzaW5nLlxuIgorbXNnc3RyICIgIFBha2tldCAlcyB6YWwgdmVyd2lqZGVyZCB3b3JkZW4uXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQxMAorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiBhbHNvIGNvbmZpZ3VyaW5nIGAlcycgKHJlcXVpcmVkIGJ5IGAlcycpXG4iCittc2dzdHIgImRwa2c6IG9vayBgJXMnIHdvcmR0IGdlY29uZmlndXJlZXJkICh2ZXJlaXN0IGRvb3IgYCVzJylcbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDE4CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyB3aGljaCBwcm92aWRlcyAlcyBpcyBub3QgY29uZmlndXJlZCB5ZXQuXG4iCittc2dzdHIgIiAgUGFra2V0ICVzIGRhdCB2b29yemlldCBpbiAlcyBpcyBub2cgbmlldCBnZWNvbmZpZ3VyZWVyZC5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDIxCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyBpcyBub3QgY29uZmlndXJlZCB5ZXQuXG4iCittc2dzdHIgIiAgUGFra2V0ICVzIGlzIG5vZyBuaWV0IGdlY29uZmlndXJlZXJkLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIHdoaWNoIHByb3ZpZGVzICVzIGlzIG5vdCBpbnN0YWxsZWQuXG4iCittc2dzdHIgIlBha2tldCAlcyBkYXQgJXMgdm9vcnppZXQgaXMgbmlldCBnZcOvbnN0YWxsZWVyZC5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDM1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIgIFBha2tldCBgJXMnIGlzIG5pZXQgZ2XDr25zdGFsbGVlcmQuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQ3MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiICVzICglcykgYnJlYWtzICVzIGFuZCBpcyAlcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgYmV2YXQgJS4yNTBzIGVuIGlzICVzLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0NzgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiAgJXMgKCVzKSBwcm92aWRlcyAlcy5cbiIKK21zZ3N0ciAiJXMgKHN1YnByb2Nlcyk6ICVzXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQ4MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiICBWZXJzaW9uIG9mICVzIHRvIGJlIGNvbmZpZ3VyZWQgaXMgJXMuXG4iCittc2dzdHIgIiAgVmVyc2llIHZhbiAlcyBvcCBkaXQgc3lzdGVlbSBpcyAlcy5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NTk2Cittc2dpZCAiIGRlcGVuZHMgb24gIgorbXNnc3RyICIgaXMgYWZoYW5rZWxpamsgdmFuICIKKworIzogc3JjL3BhY2thZ2VzLmM6NjAyCittc2dpZCAiOyBob3dldmVyOlxuIgorbXNnc3RyICI7IG1hYXI6XG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiLi4uLyVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgZW5zdXJpbmcgYCUuMjUwcycgZG9lc24ndCBleGlzdCIKK21zZ3N0ciAiZm91dCBiaWogdmVyaWZpw6tyZW4gZGF0IGAlLjI1MHMnIG5pZXQgYmVzdGFhdCIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5OQorbXNnaWQgInNwbGl0IHBhY2thZ2UgcmVhc3NlbWJseSIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEwOAorbXNnaWQgInJlYXNzZW1ibGVkIHBhY2thZ2UgZmlsZSIKK21zZ3N0ciAicGFra2V0YmVzdGFuZCB3ZWVyIHNhbWVuZ2VzdGVsZCIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiQXV0aGVudGljYXRpbmcgJXMgLi4uXG4iCittc2dzdHIgIkF1dGhlbnRpY2VyZW4gdmFuICVzIC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEzOQorbXNnaWQgInBhY2thZ2Ugc2lnbmF0dXJlIHZlcmlmaWNhdGlvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE0NgorIywgYy1mb3JtYXQKK21zZ2lkICJWZXJpZmljYXRpb24gb24gcGFja2FnZSAlcyBmYWlsZWQhIgorbXNnc3RyICJWZXJpZmljYXRpZSB2YW4gcGFra2V0ICVzIGlzIG1pc2x1a3QhIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE0OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVmVyaWZpY2F0aW9uIG9uIHBhY2thZ2UgJXMgZmFpbGVkLFxuIgorImJ1dCBpbnN0YWxsaW5nIGFueXdheSBhcyB5b3UgcmVxdWVzdGVkLlxuIgorbXNnc3RyICIiCisiVmVyaWZpY2F0aWUgdmFuIHBha2tldCAlcyBpcyBtaXNsdWt0LFxuIgorIm1hYXIgd29yZHQgdG9jaCBnZcOvbnN0YWxsZWVyZCB6b2FscyBnZXZyYWFnZC5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFzc2VkXG4iCittc2dzdHIgImNvcnJlY3RcbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxNjUgZHBrZy1kZWIvaW5mby5jOjgxCisjLCBmdXp6eQorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdGVtcG9yYXJ5IGRpcmVjdG9yeSIKK21zZ3N0ciAiYWFubWFrZW4gdmFuIGVlbiB0aWpkZWxpamtlIGJlc3RhbmRzbmFhbSBpcyBtaXNsdWt0IgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjIwNQorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlICVzIGhhcyB0b28gbWFueSBDb25mbGljdHMvUmVwbGFjZXMgcGFpcnMiCittc2dzdHIgInBha2tldCAlcyBoZWVmdCB0ZXZlZWwgJ0NvbmZsaWN0cy9SZXBsYWNlcyctcGFyZW4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MjQzCisjLCBjLWZvcm1hdAorbXNnaWQgIm9sZCB2ZXJzaW9uIG9mIHBhY2thZ2UgaGFzIG92ZXJseS1sb25nIGluZm8gZmlsZSBuYW1lIHN0YXJ0aW5nIGAlLjI1MHMnIgorbXNnc3RyICIiCisib3VkZSB2ZXJzaWUgdmFuIHBha2tldCBoZWVmdCB0ZSBsYW5nZSBpbmZvYmVzdGFuZHNuYWFtIGJlZ2lubmVuZCBtZXQgYCUuMjUwcyciCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MjgxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgb2Jzb2xldGUgaW5mbyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrYW4gdmVyb3VkZXJkIGluZm9iZXN0YW5kIGAlLjI1MHMnIG5pZXQgdmVyd2lqZGVyZW4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6Mjg2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIChzdXBwb3NlZCkgbmV3IGluZm8gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia2FuICh3YWFyc2NoaWpubGlqaykgbmlldXdlIGluZm9iZXN0YW5kIGAlLjI1MHMnIG5pZXQgaW5zdGFsbGVyZW4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6Mjk2Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gdGVtcCBjb250cm9sIGRpcmVjdG9yeSIKK21zZ3N0ciAia2FuIHRpamRlbGlqa2UgYmVzdHVyaW5nc21hcCBuaWV0IG9wZW5lbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMDcKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBjb250YWlucyBvdmVybHktbG9uZyBjb250cm9sIGluZm8gZmlsZSBuYW1lIChzdGFydGluZyBgJS41MHMnKSIKK21zZ3N0ciAiIgorImJlc3RhbmRzbmFhbSB2YW4gaGV0ICdjb250cm9sJy1pbmZvYmVzdGFuZCB2YW4gZGl0IHBha2tldCBpcyB0ZSBsYW5nICIKKyIoYmVnaW5uZW5kIG1ldCBgJS41MHMnKSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBjb250cm9sIGluZm8gY29udGFpbmVkIGRpcmVjdG9yeSBgJS4yNTBzJyIKK21zZ3N0ciAicGFra2V0ICdjb250cm9sJy1pbmZvYmVzdGFuZCBiZXZhdCBtYXAgYCUuMjUwcyciCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzE2CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgY29udHJvbCBpbmZvIHJtZGlyIG9mIGAlLjI1MHMnIGRpZG4ndCBzYXkgbm90IGEgZGlyIgorbXNnc3RyICJybWRpciB2YW4gcGFra2V0IGJlc3R1cmluZ3NpbmZvIGAlLjI1MHMnIHplaSBuaWV0IGRhdCBoZXQgZ2VlbiBtYXAgaXMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzI2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlICVzIGNvbnRhaW5lZCBsaXN0IGFzIGluZm8gZmlsZSIKK21zZ3N0ciAiZHBrZzogd2FhcnNjaHV3aW5nIC0gcGFra2V0ICVzIGJldmF0IGVlbiBsaWpzdCBhbHMgaW5mb2Jlc3RhbmQiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzMzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyBpbmZvIGZpbGUgYCUuMjUwcycgYXMgYCUuMjUwcyciCittc2dzdHIgImthbiBuaWV1d2UgaW5mb2Jlc3RhbmQgYCUuMjUwcycgbmlldCBpbnN0YWxsZXJlbiBhbHMgYCUuMjUwcyciCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzQ5IHNyYy9yZW1vdmUuYzoxOTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSBjb250cm9sIGluZm8gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia2FuIGJlc3R1cmluZ3NpbmZvLWJlc3RhbmQgYCUuMjUwcycgbmlldCB2ZXJ3aWpkZXJlbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo0MTEKK21zZ2lkICJjYW5ub3QgYWNjZXNzIGFyY2hpdmUiCittc2dzdHIgImthbiBhcmNoaWVmIG5pZXQgYmVuYWRlcmVuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjQzMworIywgZnV6enkKKyN8IG1zZ2lkICJjb250cm9sIGluZm9ybWF0aW9uIGxlbmd0aCIKK21zZ2lkICJwYWNrYWdlIGNvbnRyb2wgaW5mb3JtYXRpb24gZXh0cmFjdGlvbiIKK21zZ3N0ciAiJ2NvbnRyb2wnLWluZm9ybWF0aWVsZW5ndGUiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDYwCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlY29yZGVkIGluZm8gYWJvdXQgJXMgZnJvbSAlcy5cbiIKK21zZ3N0ciAiSW5mb3JtYXRpZSBvdmVyICVzIHVpdCAlcyBpcyBvcGdlbm9tZW4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDY4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgYXJjaGl0ZWN0dXJlICglcykgZG9lcyBub3QgbWF0Y2ggc3lzdGVtICglcykiCittc2dzdHIgInBha2tldC1hcmNoaXRlY3R1dXIgKCVzKSBrb210IG5pZXQgb3ZlcmVlbiBtZXQgaGV0IHN5c3RlZW0gKCVzKSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1MjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IHJlZ2FyZGluZyAlcyBjb250YWluaW5nICVzLCBwcmUtZGVwZW5kZW5jeSBwcm9ibGVtOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogdm9vci12ZXJlaXN0ZW5wcm9ibGVlbSBtZXQgJXMgZGF0ICVzIGJldmF0OlxuIgorIiVzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjUyNgorIywgYy1mb3JtYXQKK21zZ2lkICJwcmUtZGVwZW5kZW5jeSBwcm9ibGVtIC0gbm90IGluc3RhbGxpbmcgJS4yNTBzIgorbXNnc3RyICJ2b29yLXZlcmVpc3RlbnByb2JsZWVtIC0gJS4yNTBzIHdvcmR0IG5pZXQgZ2XDr25zdGFsbGVlcmQiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTI3CisjLCBmdXp6eQorbXNnaWQgImlnbm9yaW5nIHByZS1kZXBlbmRlbmN5IHByb2JsZW0hIgorbXNnc3RyICJkcGtnOiB3YWFyc2NodXdpbmcgLSB2b29yYWZoYW5rZWxpamtoZWlzcHJvYmxlZW0gd29yZHQgZ2VuZWdlZXJkICFcbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHJlcGFyaW5nIHRvIHJlcGxhY2UgJXMgJXMgKHVzaW5nICVzKSAuLi5cbiIKK21zZ3N0ciAiVm9vcmJlcmVpZGVuIG9tICVzICVzIHRlIHZlcnZhbmdlbiAoZG9vciAlcykgLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIlVucGFja2luZyAlcyAoZnJvbSAlcykgLi4uXG4iCittc2dzdHIgIlVpdHBha2tlbiB2YW4gJXMgKHVpdCAlcykgLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTgwCisjLCBjLWZvcm1hdAorbXNnaWQgIm5hbWUgb2YgY29uZmZpbGUgKHN0YXJ0aW5nIGAlLjI1MHMnKSBpcyB0b28gbG9uZyAoPiVkIGNoYXJhY3RlcnMpIgorbXNnc3RyICIiCisibmFhbSB2YW4gY29uZmlndXJhdGllYmVzdGFuZCAoYmVnaW5uZW5kIG1ldCBgJS4yNTBzJykgaXMgdGUgbGFuZyAoPiVkIHRla2VucykiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjMzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDcxCisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWQgZXJyb3IgaW4gJS4yNTBzIgorbXNnc3RyICJsZWVzZm91dCBpbiAlLjI1MHMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjM1CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgJS4yNTBzIgorbXNnc3RyICJmb3V0IGJpaiBzbHVpdGVuIHZhbiAlLjI1MHMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjM3CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHRyeWluZyB0byBvcGVuICUuMjUwcyIKK21zZ3N0ciAiZm91dCBiaWogb3BlbmVuIHZhbiAlLjI1MHMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6Njc4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJEZS1jb25maWd1cmluZyAlcywgdG8gYWxsb3cgcmVtb3ZhbCBvZiAlcyAuLi5cbiIKK21zZ3N0ciAiRGUtY29uZmlndXJlcmVuIHZhbiAlcywgem9kYXQgJXMgdmVyd2lqZGVyZCBrYW4gd29yZGVuIC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjY4MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiRGUtY29uZmlndXJpbmcgJXMgLi4uXG4iCittc2dzdHIgIiVzIHdvcmR0IHZlcndpamRlcmQgLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NzU1CisjLCBjLWZvcm1hdAorbXNnaWQgIlVucGFja2luZyByZXBsYWNlbWVudCAlLjI1MHMgLi4uXG4iCittc2dzdHIgIlVpdHBha2tlbiB2YW4gdmVydmFuZ2VuZGUgJS4yNTBzIC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjg0MAorbXNnaWQgInBhY2thZ2UgZmlsZXN5c3RlbSBhcmNoaXZlIGV4dHJhY3Rpb24iCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NTQKK21zZ2lkICJlcnJvciByZWFkaW5nIGRwa2ctZGViIHRhciBvdXRwdXQiCittc2dzdHIgImZvdXQgYmlqIGxlemVuIHZhbiBkcGtnLWRlYiB0YXIgdWl0dm9lciIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NTYKK21zZ2lkICJjb3JydXB0ZWQgZmlsZXN5c3RlbSB0YXJmaWxlIC0gY29ycnVwdGVkIHBhY2thZ2UgYXJjaGl2ZSIKK21zZ3N0ciAiYmVzY2hhZGlnZCBiZXN0YW5kc3N5c3RlZW0gdGFyYmVzdGFuZCAtIGJlc2NoYWRpZ2QgcGFra2V0YXJjaGllZiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NTkKK21zZ2lkICJkcGtnLWRlYjogemFwIHBvc3NpYmxlIHRyYWlsaW5nIHplcm9zIgorbXNnc3RyICJkcGtnLWRlYjogemFwIG1vZ2VsaWprZSBuYWtvbWVuZGUgbnVsbGVuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjkxOQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHN0YXQgb2xkIGZpbGUgJyUuMjUwcycgc28gbm90IGRlbGV0aW5nIGl0OiAlcyIKK21zZ3N0ciAiIgorImRwa2c6IHdhYXJzY2h1d2luZyAtIGthbiBnZWVuIHN0YXQgdWl0dm9lcmVuIG9wIGhldCBvdWRlIGJlc3RhbmQgYCUuMjUwcycsICIKKyJiaWpnZXZvbGcgd29yZHQgZGl0IG5pZXQgdmVyd2lqZGVydDogJXMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTI1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGVsZXRlIG9sZCBkaXJlY3RvcnkgJyUuMjUwcyc6ICVzIgorbXNnc3RyICJkcGtnOiB3YWFyc2NodXdpbmcgLSBrYW4gZGUgb3VkZSBtYXAgYCUuMjUwcycgbmlldCB2ZXJ3aWpkZXJlbjogJXNcbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5MjgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIm9sZCBjb25mZmlsZSAnJS4yNTBzJyB3YXMgYW4gZW1wdHkgZGlyZWN0b3J5IChhbmQgaGFzIG5vdyBiZWVuIGRlbGV0ZWQpIgorbXNnc3RyICIiCisiZHBrZzogd2FhcnNjaHV3aW5nIC0gb3VkIGNvbmZpZ3VyYXRpZWJlc3RhbmQgYCUuMjUwcycgd2FzIGVlbiBsZWdlIG1hcCAoZW4gIgorImlzIG51IHZlcndpamRlcmQpXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTc1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IG90aGVyIG5ldyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrYW4gb3AgaGV0IG5pZXV3ZSBiZXN0YW5kIGAlLjI1MHMnIGdlZW4gc3RhdCB1aXR2b2VyZW4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTg2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisib2xkIGZpbGUgJyUuMjUwcycgaXMgdGhlIHNhbWUgYXMgc2V2ZXJhbCBuZXcgZmlsZXMhIChib3RoICclLjI1MHMnIGFuZCAiCisiJyUuMjUwcycpIgorbXNnc3RyICIiCisiZHBrZzogd2FhcnNjaHV3aW5nIC0gaGV0IG91ZGUgYmVzdGFuZCBgJS4yNTBzJyBpcyBoZXR6ZWxmZGUgYWxzICIKKyJ2ZXJzY2hpbGxlbmRlIG5pZXV3ZSBiZXN0YW5kZW4hICgnJS4yNTBzJyBlbiAnJS4yNTBzJylcbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxMDI1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2VjdXJlbHkgcmVtb3ZlIG9sZCBmaWxlICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiZHBrZzogd2FhcnNjaHV3aW5nIC0ga2FuIG91ZCBiZXN0YW5kIGAlJS4yNTBzJyBuaWV0ICVzOiAlJXNcbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxMjA2CisjLCBjLWZvcm1hdAorbXNnaWQgIihOb3RpbmcgZGlzYXBwZWFyYW5jZSBvZiAlcywgd2hpY2ggaGFzIGJlZW4gY29tcGxldGVseSByZXBsYWNlZC4pXG4iCittc2dzdHIgIihWZXJkd2lqbmluZyB2YW4gJXMgaXMgb3BnZW1lcmt0LCBoZXQgaXMgdG90YWFsIHZlcnZhbmdlbiBpcy4pXG4iCisKKyMuIFRSQU5TTEFUT1JTOiBUaGlzIGlzIHRoZSBoZWFkZXIgdGhhdCBhcHBlYXJzIG9uICdkcGtnLXF1ZXJ5IC1sJy4gVGhlCisjLiAqIHN0cmluZyBzaG91bGQgcmVtYWluIHVuZGVyIDgwIGNoYXJhY3RlcnMuIFRoZSB1cHBlcmNhc2UgbGV0dGVycyBpbgorIy4gKiB0aGUgc3RhdGUgdmFsdWVzIGRlbm90ZSB0aGUgYWJicmV2aWF0ZWQgbGV0dGVyIHRoYXQgd2lsbCBhcHBlYXIgb24KKyMuICogdGhlIGZpcnN0IHRocmVlIGNvbHVtbnMsIHdoaWNoIHNob3VsZCBpZGVhbGx5IG1hdGNoIHRoZSBFbmdsaXNoIG9uZQorIy4gKiAoZS5nLiBSZW1vdmUg4oaSIHN1cFJpbWVpeCksIHNlZSBkcGtnLXF1ZXJ5KDEpIGZvciBmdXJ0aGVyIGRldGFpbHMuIFRoZQorIy4gKiB0cmFuc2xhdGVkIG1lc3NhZ2UgY2FuIHVzZSBhZGRpdGlvbmFsIGxpbmVzIGlmIG5lZWRlZC4KKyM6IHNyYy9xdWVyeWNtZC5jOjE0OQorIywgZnV6enkKK21zZ2lkICIiCisiRGVzaXJlZD1Vbmtub3duL0luc3RhbGwvUmVtb3ZlL1B1cmdlL0hvbGRcbiIKKyJ8IFN0YXR1cz1Ob3QvSW5zdC9Db25mLWZpbGVzL1VucGFja2VkL2hhbEYtY29uZi9IYWxmLWluc3QvdHJpZy1hV2FpdC9UcmlnLSIKKyJwZW5kXG4iCisifC8gRXJyPz0obm9uZSkvUmVpbnN0LXJlcXVpcmVkIChTdGF0dXMsRXJyOiB1cHBlcmNhc2U9YmFkKVxuIgorbXNnc3RyICIiCisiR2V3ZW5zdD0oVSlPbmJla2VuZC9JbnN0YWxsZXJlbi9SZW1vdmUvUHVyZ2UvSG9sZFxuIgorInwgU3RhdHVzPU5pZXQvZ2VJbnN0YWxsZWVyZC9Db25maWcvVWl0Z2VwYWt0LyhGKWNvbmZpZy1taXNsdWt0L0hhbGYtZ2VpbnN0XG4iCisifC8gRm91dD89KGdlZW4pL0hvbGQvUmVpbnN0IG5vZGlnL1g9YmVpZGUgKFN0YXR1cyxGb3V0OiBob29mZGxldHQ9ZXJuc3RpZylcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MTUzCittc2dpZCAiTmFtZSIKK21zZ3N0ciAiTmFhbSIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MTUzCittc2dpZCAiVmVyc2lvbiIKK21zZ3N0ciAiVmVyc2llIgorCisjOiBzcmMvcXVlcnljbWQuYzoxNTQKK21zZ2lkICJEZXNjcmlwdGlvbiIKK21zZ3N0ciAiT21zY2hyaWp2aW5nIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNDYgc3JjL3F1ZXJ5Y21kLmM6NTExIHNyYy9zZWxlY3QuYzo3NQorIywgYy1mb3JtYXQKK21zZ2lkICJObyBwYWNrYWdlcyBmb3VuZCBtYXRjaGluZyAlcy5cbiIKK21zZ3N0ciAiR2VlbiBwYWtrZXR0ZW4gZ2V2b25kZW4gb3ZlcmVlbmtvbWVuZCBtZXQgJXMuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI3MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJzaW9uIGJ5ICVzIGZyb206ICVzXG4iCittc2dzdHIgIm9tZ2VsZWlkIGRvb3IgJXMgbmFhcjogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6Mjc1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnNpb24gYnkgJXMgdG86ICVzXG4iCittc2dzdHIgIm9tZ2VsZWlkIGRvb3IgJXMgbmFhcjogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6Mjc4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJsb2NhbCBkaXZlcnNpb24gZnJvbTogJXNcbiIKK21zZ3N0ciAibG9rYWxlIHZlcndpanppbmciCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI3OQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAibG9jYWwgZGl2ZXJzaW9uIHRvOiAlc1xuIgorbXNnc3RyICJsb2thYWwgb21nZWxlaWQgbmFhcjogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MzA5Cittc2dpZCAiLS1zZWFyY2ggbmVlZHMgYXQgbGVhc3Qgb25lIGZpbGUgbmFtZSBwYXR0ZXJuIGFyZ3VtZW50IgorbXNnc3RyICItLXNlYXJjaCBoZWVmdCB0ZW4gbWluc3RlIGVlbiBiZXN0YW5kc25hYW0gcGF0cm9vbiBhcmd1bWVudCBub2RpZyIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MzUwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJObyBwYWNrYWdlcyBmb3VuZCBtYXRjaGluZyAlcy5cbiIKK21zZ2lkICIlczogbm8gcGF0aCBmb3VuZCBtYXRjaGluZyBwYXR0ZXJuICVzLlxuIgorbXNnc3RyICJHZWVuIHBha2tldHRlbiBnZXZvbmRlbiBvdmVyZWVua29tZW5kIG1ldCAlcy5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MzkzCisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgYCVzJyBpcyBub3QgaW5zdGFsbGVkIGFuZCBubyBpbmZvIGlzIGF2YWlsYWJsZS5cbiIKK21zZ3N0ciAiUGFra2V0IGAlcycgaXMgbmlldCBnZcOvbnN0YWxsZWVyZCBlbiBnZWVuIGluZm8gaXMgYmVzY2hpa2JhYXIuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQwMQorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlIGAlcycgaXMgbm90IGF2YWlsYWJsZS5cbiIKK21zZ3N0ciAiUGFra2V0IGAlcycgaXMgbmlldCBiZXNjaGlrYmFhci5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDEwIHNyYy9xdWVyeWNtZC5jOjU4NQorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlIGAlcycgaXMgbm90IGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiUGFra2V0IGAlcycgaXMgbmlldCBnZcOvbnN0YWxsZWVyZC5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDE4CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgYCVzJyBkb2VzIG5vdCBjb250YWluIGFueSBmaWxlcyAoISlcbiIKK21zZ3N0ciAiUGFra2V0IGAlcycgYmV2YXQgZ2VlbiBiZXN0YW5kZW4gKCEpXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQyNQorIywgYy1mb3JtYXQKK21zZ2lkICJsb2NhbGx5IGRpdmVydGVkIHRvOiAlc1xuIgorbXNnc3RyICJsb2thYWwgb21nZWxlaWQgbmFhcjogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDI4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgZGl2ZXJ0cyBvdGhlcnMgdG86ICVzXG4iCittc2dzdHIgInBha2tldCBsZWlkdCBhbmRlcmUgb20gbmFhcjogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDMxCisjLCBjLWZvcm1hdAorbXNnaWQgImRpdmVydGVkIGJ5ICVzIHRvOiAlc1xuIgorbXNnc3RyICJvbWdlbGVpZCBkb29yICVzIG5hYXI6ICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQ1MgorbXNnaWQgIiIKKyJVc2UgZHBrZyAtLWluZm8gKD0gZHBrZy1kZWIgLS1pbmZvKSB0byBleGFtaW5lIGFyY2hpdmUgZmlsZXMsXG4iCisiYW5kIGRwa2cgLS1jb250ZW50cyAoPSBkcGtnLWRlYiAtLWNvbnRlbnRzKSB0byBsaXN0IHRoZWlyIGNvbnRlbnRzLlxuIgorbXNnc3RyICIiCisiR2VicnVpayBkcGtnIC0taW5mbyAoPSBkcGtnLWRlYiAtLWluZm8pIG9tIGFyY2hpZWZiZXN0YW5kZW4gdGUgYmVraWprZW4sXG4iCisiZW4gZHBrZyAtLWNvbnRlbnRzICg9IGRwa2ctZGViIC0tY29udGVudHMpIG9tIGRlIGluaG91ZCB3ZWVyIHRlIGdldmVuLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo1NzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgYXQgbW9zdCB0d28gYXJndW1lbnRzIgorbXNnc3RyICItLWJ1aWxkIHZlcndhY2h0IHRlbiBob29nc3RlIHR3ZWUgYXJndW1lbnRlbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NTc4CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbnRyb2wgZmlsZSBjb250YWlucyAlYyIKK21zZ3N0ciAiIgorCisjOiBzcmMvcXVlcnljbWQuYzo2MDAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiAlcyBwYWNrYWdlIG1hbmFnZW1lbnQgcHJvZ3JhbSBxdWVyeSB0b29sIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkRlYmlhbiAnJXMnICBwYWtrZXRiZWhlZXJzcHJvZ3JhbW1hIHZlcnNpZSAlcy5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjE5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtc3wtLXN0YXR1cyA8cGFja2FnZT4gLi4uICAgICAgICBEaXNwbGF5IHBhY2thZ2Ugc3RhdHVzIGRldGFpbHMuXG4iCisiICAtcHwtLXByaW50LWF2YWlsIDxwYWNrYWdlPiAuLi4gICBEaXNwbGF5IGF2YWlsYWJsZSB2ZXJzaW9uIGRldGFpbHMuXG4iCisiICAtTHwtLWxpc3RmaWxlcyA8cGFja2FnZT4gLi4uICAgICBMaXN0IGZpbGVzIGBvd25lZCcgYnkgcGFja2FnZShzKS5cbiIKKyIgIC1sfC0tbGlzdCBbPHBhdHRlcm4+IC4uLl0gICAgICAgIExpc3QgcGFja2FnZXMgY29uY2lzZWx5LlxuIgorIiAgLVd8LS1zaG93IFs8cGF0dGVybj4gLi4uXSAgICAgICAgU2hvdyBpbmZvcm1hdGlvbiBvbiBwYWNrYWdlKHMpLlxuIgorIiAgLVN8LS1zZWFyY2ggPHBhdHRlcm4+IC4uLiAgICAgICAgRmluZCBwYWNrYWdlKHMpIG93bmluZyBmaWxlKHMpLlxuIgorIiAgLWN8LS1jb250cm9sLXBhdGggPHBhY2thZ2U+IFs8ZmlsZT5dXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQcmludCBwYXRoIGZvciBwYWNrYWdlIGNvbnRyb2wgZmlsZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIkNvbW1hbmRvczpcbiIKKyIgIC1zfC0tc3RhdHVzIDxwYWtrZXRuYWFtPiAuLi4gICAgICB0b29uIGRldGFpbHMgdmFuIHBha2tldHN0YXR1c1xuIgorIiAgLXB8LS1wcmludC1hdmFpbCA8cGFra2V0bmFhbT4gLi4uIHRvb24gZGV0YWlscyB2YW4gYmVzY2hpa2JhcmUgdmVyc2llXG4iCisiICAtTHwtLWxpc3RmaWxlcyA8cGFra2V0bmFhbT4gLi4uICAgc29tIGJlc3RhbmRlbiAndmFuJyBoZXQgcGFra2V0IG9wXG4iCisiICAtbHwtLWxpc3QgWzxwYXRyb29uPiAuLi5dICAgICAgICAgc29tIGRlIHBha2tldHRlbiBrb3J0IG9wXG4iCisiICAtV3wtLXNob3cgPHBhdHJvb24+IC4uLiAgICAgIHRvb24gZGUgaW5mb3JtYXRpZSBvdmVyIGhldCBwYWtrZXRcbiIKKyIgIC1TfC0tc2VhcmNoIDxwYXRyb29uPiAuLi4gICAgdmluZHQgaGV0IHBha2tldCB2YW4gd2llIGhldCBiZXN0YW5kIGlzXG4iCisiXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjYzNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorIiAgLWZ8LS1zaG93Zm9ybWF0PTxmb3JtYXQ+ICAgICAgICAgVXNlIGFsdGVybmF0aXZlIGZvcm1hdCBmb3IgLS1zaG93LlxuIgorIlxuIgorbXNnc3RyICIiCisiT3B0aWVzOlxuIgorIiAtLWFkbWluZGlyPTxtYXA+ICAgICAgICAgICAgR2VicnVpayA8bWFwPiBpbiBwbGFhdHMgdmFuICVzXG4iCisiICAtLXNob3dmb3JtYXQ9PGZvcm1hYXQ+IEdlYnJ1aWsgYWx0ZXJuYXRpZWYgZm9ybWFhdCB2b29yIC0tc2hvd1xuIgorIlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo2NDIgZHBrZy1kZWIvbWFpbi5jOjExMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiRm9ybWF0IHN5bnRheDpcbiIKKyIgIEEgZm9ybWF0IGlzIGEgc3RyaW5nIHRoYXQgd2lsbCBiZSBvdXRwdXQgZm9yIGVhY2ggcGFja2FnZS4gVGhlIGZvcm1hdFxuIgorIiAgY2FuIGluY2x1ZGUgdGhlIHN0YW5kYXJkIGVzY2FwZSBzZXF1ZW5jZXMgXFxuIChuZXdsaW5lKSwgXFxyIChjYXJyaWFnZVxuIgorIiAgcmV0dXJuKSBvciBcXFxcIChwbGFpbiBiYWNrc2xhc2gpLiBQYWNrYWdlIGluZm9ybWF0aW9uIGNhbiBiZSBpbmNsdWRlZFxuIgorIiAgYnkgaW5zZXJ0aW5nIHZhcmlhYmxlIHJlZmVyZW5jZXMgdG8gcGFja2FnZSBmaWVsZHMgdXNpbmcgdGhlICR7dmFyWzsiCisid2lkdGhdfVxuIgorIiAgc3ludGF4LiBGaWVsZHMgd2lsbCBiZSByaWdodC1hbGlnbmVkIHVubGVzcyB0aGUgd2lkdGggaXMgbmVnYXRpdmUgaW4gIgorIndoaWNoXG4iCisiICBjYXNlIGxlZnQgYWxpZ25tZW50IHdpbGwgYmUgdXNlZC5cbiIKK21zZ3N0ciAiIgorIkZvcm1hYXQtc3ludGF4OlxuIgorIiAgRWVuIGZvcm1hYXQgaXMgZWVuIHN0cmluZyBkaWUgdm9vciBlbGsgcGFra2V0IHVpdGdlc2NocmV2ZW4gd29yZHQuXG4iCisiICBIZXQgZm9ybWFhdCBtYWcgc3RhbmRhYXJkICdlc2NhcGUnLXNlcXVlbnRpZXMgYmV2YXR0ZW5cbiIKKyIgIFxcbiAobmV3bGluZSksIFxcciAoY2FycmlhZ2UgcmV0dXJuKSwgXFxcXCAoZ2V3b25lIGJhY2tzbGFzaCkuIFBha2tldC1cbiIKKyIgIGZvcm1hdGllIGthbiB0b2VnZXZvZWdkIHdvcmRlbiB2aWEgdmFyaWFiZWxlIHJlZmVyZW50aWVzIG5hYXJcbiIKKyIgIHBha2tldHZlbGRlbiB2aWEgZGUgJHt2YXJbO2JyZWVkdGVdfSBzeW50YXguIFZlbGRlbiB3b3JkZW4gcmVjaHRzXG4iCisiICB1aXRnZWxpam5kIHRlbnppaiBkZSBicmVlZHRlIG5lZ2F0aWVmIGlzLCBpbiB3ZWxrIGdldmFsIHplIGxpbmtzICIKKyJ1aXRnZWxpam5kXG4iCisiICB3b3JkZW4uXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjY1NgorbXNnaWQgIlVzZSAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgcXVlcnlpbmcgcGFja2FnZXMuIgorbXNnc3RyICIiCisKKyM6IHNyYy9yZW1vdmUuYzo4OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgcmVxdWVzdCB0byByZW1vdmUgJS4yNTBzIHdoaWNoIGlzbid0IGluc3RhbGxlZC4iCittc2dzdHIgIiIKKyJkcGtnIC0gd2FhcnNjaHV3aW5nOiB2ZXJ6b2VrIG9tICUuMjUwcyB0ZSB2ZXJ3aWpkZXJlbiB3b3JkdCBnZW5lZ2VlcmQgb21kYXQgIgorImhldCBuaWV0IGdlw69uc3RhbGxlZXJkIGlzLlxuIgorCisjOiBzcmMvcmVtb3ZlLmM6OTUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpZ25vcmluZyByZXF1ZXN0IHRvIHJlbW92ZSAlLjI1MHMsIG9ubHkgdGhlIGNvbmZpZ1xuIgorIiBmaWxlcyBvZiB3aGljaCBhcmUgb24gdGhlIHN5c3RlbS4gVXNlIC0tcHVyZ2UgdG8gcmVtb3ZlIHRoZW0gdG9vLiIKK21zZ3N0ciAiIgorImRwa2cgLSB3YWFyc2NodXdpbmc6IHZlcnpvZWsgb20gJS4yNTBzIHRlIHZlcndpamRlcmVuIHdvcmR0IGdlbmVnZWVyZCxcbiIKKyIgYWxsZWVuIGRlIGNvbmZpZ3VyYXRpZWJlc3RhbmRlbiBzdGFhbiBub2cgb3AgaGV0IHN5c3RlZW0uICBHZWJydWlrXG4iCisiIC0tcHVyZ2Ugb20gb29rIGRpZSB0ZSB2ZXJ3aWpkZXJlbi5cbiIKKworIzogc3JjL3JlbW92ZS5jOjEwMworbXNnaWQgIlRoaXMgaXMgYW4gZXNzZW50aWFsIHBhY2thZ2UgLSBpdCBzaG91bGQgbm90IGJlIHJlbW92ZWQuIgorbXNnc3RyICJEaXQgaXMgZWVuIGVzc2VudGllZWwgcGFra2V0IC0gaGV0IG1hZyBuaWV0IHZlcndpamRlcmQgd29yZGVuLiIKKworIzogc3JjL3JlbW92ZS5jOjEyOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogZGVwZW5kZW5jeSBwcm9ibGVtcyBwcmV2ZW50IHJlbW92YWwgb2YgJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiB2ZXJlaXN0ZW5wcm9ibGVtZW4gdmVyaGluZGVyZW4gdmVyd2lqZGVyZW4gdmFuICVzOlxuIgorIiVzIgorCisjOiBzcmMvcmVtb3ZlLmM6MTMwCittc2dpZCAiZGVwZW5kZW5jeSBwcm9ibGVtcyAtIG5vdCByZW1vdmluZyIKK21zZ3N0ciAidmVyZWlzdGVucHJvYmxlbWVuIC0gbmlldCB2ZXJ3aWpkZXJkIgorCisjOiBzcmMvcmVtb3ZlLmM6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiAlczogZGVwZW5kZW5jeSBwcm9ibGVtcywgYnV0IHJlbW92aW5nIGFueXdheSBhcyB5b3UgcmVxdWVzdGVkOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogJXM6IHZlcmVpc3RlbnByb2JsZW1lbiwgbWFhciB3b3JkdCBvcCB2ZXJ6b2VrIHRvY2ggdmVyd2lqZGVyZDpcbiIKKyIlcyIKKworIzogc3JjL3JlbW92ZS5jOjE0MgorbXNnaWQgIiIKKyJQYWNrYWdlIGlzIGluIGEgdmVyeSBiYWQgaW5jb25zaXN0ZW50IHN0YXRlIC0geW91IHNob3VsZFxuIgorIiByZWluc3RhbGwgaXQgYmVmb3JlIGF0dGVtcHRpbmcgYSByZW1vdmFsLiIKK21zZ3N0ciAiIgorIlBha2tldCBpcyBpbiBlZW4gZXJuc3RpZ2UgaW5jb25zaXN0ZW50ZSBzdGF0dXMgLSB1IG1vZXQgaGV0IG9wbmlldXdcbiIKKyIgaW5zdGFsbGVyZW4gYWx2b3JlbnMgaGV0IHRlIHZlcndpamRlcmVuLiIKKworIzogc3JjL3JlbW92ZS5jOjE0OQorIywgYy1mb3JtYXQKK21zZ2lkICJXb3VsZCByZW1vdmUgb3IgcHVyZ2UgJXMgLi4uXG4iCittc2dzdHIgIlpvdSAlcyB2ZXJ3aWpkZXJlbiBvZiB3aXNzZW4gLi4uXG4iCisKKyM6IHNyYy9yZW1vdmUuYzoxNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVtb3ZpbmcgJXMgLi4uXG4iCittc2dzdHIgIiVzIHdvcmR0IHZlcndpamRlcmQgLi4uXG4iCisKKyM6IHNyYy9yZW1vdmUuYzoyNzUgc3JjL3JlbW92ZS5jOjM2NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIndoaWxlIHJlbW92aW5nICUuMjUwcywgdW5hYmxlIHRvIHJlbW92ZSBkaXJlY3RvcnkgJyUuMjUwcyc6ICVzIC0gZGlyZWN0b3J5ICIKKyJtYXkgYmUgYSBtb3VudCBwb2ludD8iCittc2dzdHIgIiIKKyJkcGtnIC0gd2FhcnNjaHV3aW5nOiB0aWpkZW5zIHZlcndpamRlcmVuIHZhbiAlLjI1MHMga2FuIGRlIG1hcCBgJS4yNTBzJyBuaWV0ICIKKyJ2ZXJ3aWpkZXJkIHdvcmRlbjogJXMgLSBpcyBkZXplIG1hcCBlZW4gYWFuaGVjaHRwdW50IHppam4/XG4iCisKKyM6IHNyYy9yZW1vdmUuYzoyODkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWN1cmVseSByZW1vdmUgJyUuMjUwcyciCittc2dzdHIgImthbiBgJS4yNTVzJyBuaWV0IGFhbm1ha2VuIgorCisjOiBzcmMvcmVtb3ZlLmM6MzYxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ3aGlsZSByZW1vdmluZyAlLjI1MHMsIGRpcmVjdG9yeSAnJS4yNTBzJyBub3QgZW1wdHkgc28gbm90IHJlbW92ZWQuIgorbXNnc3RyICIiCisiZHBrZyAtIHdhYXJzY2h1d2luZzogdGlqZGVucyB2ZXJ3aWpkZXJlbiB2YW4gJS4yNTBzLCBtYXAgYCUuMjUwcycgbmlldCBsZWVnICIKKyJkdXMgbmlldCB2ZXJ3aWpkZXJkLlxuIgorCisjOiBzcmMvcmVtb3ZlLmM6MzgzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW5ub3QgcmVtb3ZlIGAlLjI1MHMnIgorbXNnaWQgImNhbm5vdCByZW1vdmUgJyUuMjUwcyciCittc2dzdHIgImthbiBgJS4yNTBzJyBuaWV0IHZlcndpamRlcmVuIgorCisjOiBzcmMvcmVtb3ZlLmM6NDA5CisjLCBjLWZvcm1hdAorbXNnaWQgIlB1cmdpbmcgY29uZmlndXJhdGlvbiBmaWxlcyBmb3IgJXMgLi4uXG4iCittc2dzdHIgIldpc3NlbiB2YW4gY29uZmlndXJhdGllYmVzdGFuZGVuIHZvb3IgJXMgLi4uXG4iCisKKyM6IHNyYy9yZW1vdmUuYzo0NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlbW92ZSBvbGQgY29uZmlnIGZpbGUgYCUuMjUwcycgKD0gYCUuMjUwcycpIgorbXNnc3RyICJrYW4gb3VkIGNvbmZpZ3VyYXRpZWJlc3RhbmQgYCUuMjUwcycgbmlldCB2ZXJ3aWpkZXJlbiAoPSBgJS4yNTBzJykiCisKKyM6IHNyYy9yZW1vdmUuYzo0NzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlYWQgY29uZmlnIGZpbGUgZGlyIGAlLjI1MHMnIChmcm9tIGAlLjI1MHMnKSIKK21zZ3N0ciAia2FuIGNvbmZpZ3VyYXRpZW1hcCBgJS4yNTBzJyBuaWV0IGxlemVuICh2YW4gYCUuMjUwcycpIgorCisjOiBzcmMvcmVtb3ZlLmM6NTEwCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZW1vdmUgb2xkIGJhY2t1cCBjb25maWcgZmlsZSBgJS4yNTBzJyAob2YgYCUuMjUwcycpIgorbXNnc3RyICIiCisia2FuIG91ZCBiYWNrdXAgY29uZmlndXJhdGllYmVzdGFuZCBgJS4yNTBzJyBuaWV0IHZlcndpamRlcmVuICh2YW4gYCUuMjUwcycpIgorCisjOiBzcmMvcmVtb3ZlLmM6NTY4Cittc2dpZCAiY2Fubm90IHJlbW92ZSBvbGQgZmlsZXMgbGlzdCIKK21zZ3N0ciAia2FuIG91ZGUgYmVzdGFuZGVubGlqc3QgbmlldCB2ZXJ3aWpkZXJlbiIKKworIzogc3JjL3JlbW92ZS5jOjU3NAorbXNnaWQgImNhbid0IHJlbW92ZSBvbGQgcG9zdHJtIHNjcmlwdCIKK21zZ3N0ciAia2FuIG91ZCBwb3N0cm0gc2NyaXB0IG5pZXQgdmVyd2lqZGVyZW4iCisKKyM6IHNyYy9zZWxlY3QuYzoxMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgaW4gcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQiCittc2dzdHIgIm9udmVyd2FjaHQgYmVzdGFuZHNlaW5kZSBpbiBwYWtrZXRuYWFtIG9wIHJlZ2VsICVkIgorCisjOiBzcmMvc2VsZWN0LmM6MTE2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGxpbmUgaW4gcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQiCittc2dzdHIgIm9udmVyd2FjaHQgcmVnZWxlaW5kZSBpbiBwYWtrZXRuYWFtIG9wIHJlZ2VsICVkIgorCisjOiBzcmMvc2VsZWN0LmM6MTIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW9mIGFmdGVyIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICJvbnZlcndhY2h0IGJlc3RhbmRzZWluZGUgbmEgcGFra2V0bmFhbSBvcCByZWdlbCAlZCIKKworIzogc3JjL3NlbGVjdC5jOjEyMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBsaW5lIGFmdGVyIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICJvbnZlcndhY2h0IHJlZ2VsZWluZGUgbmEgcGFra2V0bmFhbSBvcCByZWdlbCAlZCIKKworIzogc3JjL3NlbGVjdC5jOjEzNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGRhdGEgYWZ0ZXIgcGFja2FnZSBhbmQgc2VsZWN0aW9uIGF0IGxpbmUgJWQiCittc2dzdHIgIm9udmVyd2FjaHRlIGdlZ2V2ZW5zIG5hIHBha2tldCBlbiBzZWxlY3RpZSBvcCByZWdlbCAlZCIKKworIzogc3JjL3NlbGVjdC5jOjEzOQorIywgYy1mb3JtYXQKK21zZ2lkICJpbGxlZ2FsIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkOiAlLjI1MHMiCittc2dzdHIgIm9uZ2VsZGlnZSBwYWtrZXRuYWFtIG9wIHJlZ2VsICVkOiAlLjI1MHMiCisKKyM6IHNyYy9zZWxlY3QuYzoxNDMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biB3YW50ZWQgc3RhdHVzIGF0IGxpbmUgJWQ6ICUuMjUwcyIKK21zZ3N0ciAib25iZWtlbmRlIGdld2Vuc3Qtc3RhdHVzIG9wIHJlZ2VsICVkOiAlLjI1MHMiCisKKyM6IHNyYy9zZWxlY3QuYzoxNDkKK21zZ2lkICJyZWFkIGVycm9yIG9uIHN0YW5kYXJkIGlucHV0IgorbXNnc3RyICJsZWVzZm91dCBvcCBzdGFuZGFhcmQgaW52b2VyIgorCisjOiBzcmMvc3RhdGNtZC5jOjUyCittc2dpZCAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBvdmVycmlkaW5nIGZpbGUgc3RhdCBpbmZvcm1hdGlvbi4iCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRjbWQuYzo2MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvcHlyaWdodCAoQykgMjAwMCwgMjAwMSBXaWNoZXJ0IEFra2VybWFuLlxuIgorIkNvcHlyaWdodCAoQykgMjAwNi0yMDA5IEd1aWxsZW0gSm92ZXIuXG4iCittc2dzdHIgIiIKKyJcbiIKKyJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLTIwMDIgV2ljaGVydCBBa2tlcm1hbi4iCisKKyM6IHNyYy9zdGF0Y21kLmM6ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLS1hZGQgPG93bmVyPiA8Z3JvdXA+IDxtb2RlPiA8ZmlsZT5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBhZGQgYSBuZXcgZW50cnkgaW50byB0aGUgZGF0YWJhc2UuXG4iCisiICAtLXJlbW92ZSA8ZmlsZT4gICAgICAgICAgcmVtb3ZlIGZpbGUgZnJvbSB0aGUgZGF0YWJhc2UuXG4iCisiICAtLWxpc3QgWzxnbG9iLXBhdHRlcm4+XSAgbGlzdCBjdXJyZW50IG92ZXJyaWRlcyBpbiB0aGUgZGF0YWJhc2UuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRjbWQuYzo4OQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgc2V0IHRoZSBkaXJlY3Rvcnkgd2l0aCB0aGUgc3RhdG92ZXJyaWRlIGZpbGUuXG4iCisiICAtLXVwZGF0ZSAgICAgICAgICAgICAgICAgaW1tZWRpYXRlbHkgdXBkYXRlIGZpbGUgcGVybWlzc2lvbnMuXG4iCisiICAtLWZvcmNlICAgICAgICAgICAgICAgICAgZm9yY2UgYW4gYWN0aW9uIGV2ZW4gaWYgYSBzYW5pdHkgY2hlY2sgZmFpbHMuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgcXVpZXQgb3BlcmF0aW9uLCBtaW5pbWFsIG91dHB1dC5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCittc2dzdHIgIiIKKyJHZWJydWlrOiAlcyBbPG9wdGllPiAuLi5dIDxjb21tYW5kbz5cbiIKKyJcbiIKKyJDK29tbWFuZG8nczpcbiIKKyIgIC0tYWRkIDxlaWdlbmFhcj4gPGdyb2VwPiA8bW9kdXM+IDxiZXN0YW5kPlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2b2VnIGVlbiBuaWV1d2UgaW5nYW5nIHRvZSBhYW4gZGUgIgorImRhdGFiYXNlLlxuIgorIiAgLS1yZW1vdmUgPGJlc3RhbmQ+ICAgIHZlcndpamRlciBiZXN0YW5kIHVpdCBkZSBkYXRhYmFzZS5cbiIKKyIgIC0tbGlzdCBbPGdsb2ItcGF0cm9vbj5dICB0b29uIGRlIG92ZXJzdGlqZ2luZ2VuIGRpZSBtb21lbnRlZWwgaW4gZGUgIgorImRhdGFiYXNlIHppdHRlbi5cbiIKKyJcbiIKKyJPcHRpZXM6XG4iCisiICAtLWFkbWluZGlyIDxtYXA+IHN0ZWwgZGUgbWFwIG1ldCBoZXQgJ3N0YXRvdmVycmlkZSctYmVzdGFuZCBpbi5cbiIKKyIgIC0tdXBkYXRlICAgICAgICAgICAgICAgICBiZXN0YW5kc3JlY2h0ZW4gb25taWRkZWxsaWprIGJpandlcmtlbi5cbiIKKyIgIC0tZm9yY2UgICAgICAgICAgICAgICAgICAgICBhY3RpZSBhZmR3aW5nZW4gemVsZnMgYWxzIGRlIGdlem9uZGhlaWQtY2hlY2sgIgorIm1pc2x1a3QuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgICAgc3RpbGxlIG9wZXJhdGllLCBtaW5pbWFsZSB1aXR2b2VyLlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgICAgIHRvb24gZGV6ZSBoZWxwYm9vZHNjaGFwLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICB0b29uIGRlIHZlcnNpZS5cbiIKKworIzogc3JjL3N0YXRjbWQuYzoxMTYKK21zZ2lkICJzdHJpcHBpbmcgdHJhaWxpbmcgLyIKK21zZ3N0ciAiLyBvcCBlaW5kZSB3b3JkdCB3ZWdnZWhhYWxkIgorCisjOiBzcmMvc3RhdGNtZC5jOjIwNworIywgZnV6enkKK21zZ2lkICJjYW5ub3Qgb3BlbiBuZXcgc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgImthbiBuaWV1dyBzdGF0b3ZlcnJpZGUtYmVzdGFuZCBuaWV0IG9wZW5lbjogJXMiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjIyCisjLCBmdXp6eQorbXNnaWQgImVycm9yIHJlbW92aW5nIHN0YXRvdmVycmlkZS1vbGQiCittc2dzdHIgImZvdXQgYmlqIHZlcndpamRlcmVuIHZhbiBzdGF0b3ZlcnJpZGUtb2xkOiAlcyIKKworIzogc3JjL3N0YXRjbWQuYzoyMjQKKyMsIGZ1enp5Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgbmV3IHN0YXRvdmVycmlkZS1vbGQiCittc2dzdHIgImZvdXQgYmlqIGFhbm1ha2VuIHZhbiBuaWV1d2Ugc3RhdG92ZXJyaWRlLW9sZDogJXMiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjI2CisjLCBmdXp6eQorbXNnaWQgImVycm9yIGluc3RhbGxpbmcgbmV3IHN0YXRvdmVycmlkZSIKK21zZ3N0ciAiZm91dCBiaWogaW5zdGFsbGVyZW4gdmFuIG5pZXV3ZSBzdGF0b3ZlcnJpZGU6ICVzIgorCisjOiBzcmMvc3RhdGNtZC5jOjI0NgorbXNnaWQgIi0tYWRkIG5lZWRzIGZvdXIgYXJndW1lbnRzIgorbXNnc3RyICItLWFkZCBoZWVmdCBlZW4gdmllciBhcmd1bWVudGVuIG5vZGlnIgorCisjOiBzcmMvc3RhdGNtZC5jOjI1NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIkFuIG92ZXJyaWRlIGZvciAnJXMnIGFscmVhZHkgZXhpc3RzLCBidXQgLS1mb3JjZSBzcGVjaWZpZWQgc28gd2lsbCBiZSAiCisiaWdub3JlZC4iCittc2dzdHIgIm1hYXIgLS1mb3JjZSBpcyBvcGdlZ2V2ZW4gd2FhcmRvb3IgZGl0IGdlbmVnZWVyZCB3b3JkdC4iCisKKyM6IHNyYy9zdGF0Y21kLmM6MjYwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJBbiBvdmVycmlkZSBmb3IgJyVzJyBhbHJlYWR5IGV4aXN0cywgYWJvcnRpbmcuIgorbXNnc3RyICJFciBiZXN0YWF0IHJlZWRzIGVlbiBvdmVyc3RpamdpbmcgJyVzJyIKKworIzogc3JjL3N0YXRjbWQuYzoyNzIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIi0tdXBkYXRlIGdpdmVuIGJ1dCAlcyBkb2VzIG5vdCBleGlzdCIKK21zZ3N0ciAid2FhcnNjaHV3aW5nOiAtLXVwZGF0ZSBpcyBvcGdlZ2V2ZW4gbWFhciAlcyBiZXN0YWF0IG5pZXQiCisKKyM6IHNyYy9zdGF0Y21kLmM6Mjk2Cittc2dpZCAiTm8gb3ZlcnJpZGUgcHJlc2VudC4iCittc2dzdHIgIkdlZW4gb3ZlcnN0aWpnaW5nIGFhbndlemlnIgorCisjOiBzcmMvc3RhdGNtZC5jOjMwNAorIywgZnV6enkKK21zZ2lkICItLXVwZGF0ZSBpcyB1c2VsZXNzIGZvciAtLXJlbW92ZSIKK21zZ3N0ciAid2FhcnNjaHV3aW5nOiAtLXVwZGF0ZSBpcyB3YWFyZGVsb29zIHZvb3IgLS1yZW1vdmUiCisKKyM6IHNyYy9zdGF0ZGIuYzo1OQorIywgZnV6enkKK21zZ2lkICJzeW50YXggZXJyb3I6IGludmFsaWQgdWlkIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJmb3V0IGJpaiBpbnN0YWxsZXJlbiB2YW4gbmlldXdlIHN0YXRvdmVycmlkZTogJXMiCisKKyM6IHNyYy9zdGF0ZGIuYzo2NAorIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3I6IHVua25vd24gdXNlciAnJXMnIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0ZGIuYzo4MworIywgZnV6enkKK21zZ2lkICJzeW50YXggZXJyb3I6IGludmFsaWQgZ2lkIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJmb3V0IGJpaiBpbnN0YWxsZXJlbiB2YW4gbmlldXdlIHN0YXRvdmVycmlkZTogJXMiCisKKyM6IHNyYy9zdGF0ZGIuYzo4OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yOiB1bmtub3duIGdyb3VwICclcycgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgImthbiBzdGF0b3ZlcnJpZGUtYmVzdGFuZCBuaWV0IG9wZW5lbiIKKworIzogc3JjL3N0YXRkYi5jOjEwNAorIywgZnV6enkKK21zZ2lkICJzeW50YXggZXJyb3I6IGludmFsaWQgbW9kZSBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAia2FuIHN0YXRvdmVycmlkZS1iZXN0YW5kIG5pZXQgb3BlbmVuIgorCisjOiBzcmMvc3RhdGRiLmM6MTI3Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgImthbiBzdGF0b3ZlcnJpZGUtYmVzdGFuZCBuaWV0IG9wZW5lbiIKKworIzogc3JjL3N0YXRkYi5jOjEzNAorbXNnaWQgImZhaWxlZCB0byBmc3RhdCBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAia2FuIGRlIHN0YXR1cyB2YW4gaGV0IHN0YXRvdmVycmlkZS1iZXN0YW5kIG5pZXQgb3B2cmFnZW4iCisKKyM6IHNyYy9zdGF0ZGIuYzoxMzcKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgcHJldmlvdXMgc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgImthbiBkZSBzdGF0dXMgdmFuIGhldCB2b3JpZ2Ugc3RhdG92ZXJyaWRlIGJlc3RhbmQgbmlldCBvcHZyYWdlbiIKKworIzogc3JjL3N0YXRkYi5jOjE2MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic3RhdG92ZXJyaWRlIGZpbGUgYCUuMjUwcyciCittc2dpZCAicmVhZGluZyBzdGF0b3ZlcnJpZGUgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAic3RhdG92ZXJyaWRlIGJlc3RhbmQgYCUuMjUwcyciCisKKyM6IHNyYy9zdGF0ZGIuYzoxNjkKKyMsIGZ1enp5Cittc2dpZCAic3RhdG92ZXJyaWRlIGZpbGUgaXMgbWlzc2luZyBmaW5hbCBuZXdsaW5lIgorbXNnc3RyICJzdGF0b3ZlcnJpZGUtYmVzdGFuZCBiZXZhdCBlZW4gbGVnZSByZWdlbCIKKworIzogc3JjL3N0YXRkYi5jOjE3MworbXNnaWQgInN0YXRvdmVycmlkZSBmaWxlIGNvbnRhaW5zIGVtcHR5IGxpbmUiCittc2dzdHIgInN0YXRvdmVycmlkZS1iZXN0YW5kIGJldmF0IGVlbiBsZWdlIHJlZ2VsIgorCisjOiBzcmMvc3RhdGRiLmM6MTc4IHNyYy9zdGF0ZGIuYzoxOTAgc3JjL3N0YXRkYi5jOjIwMgorIywgZnV6enkKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgImthbiBzdGF0b3ZlcnJpZGUtYmVzdGFuZCBuaWV0IG9wZW5lbiIKKworIzogc3JjL3N0YXRkYi5jOjE4NiBzcmMvc3RhdGRiLmM6MTk4IHNyYy9zdGF0ZGIuYzoyMTAKKyMsIGZ1enp5Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgbGluZSBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAib252ZXJ3YWNodCByZWdlbGVpbmRlIGluIHBha2tldG5hYW0gb3AgcmVnZWwgJWQiCisKKyM6IHNyYy9zdGF0ZGIuYzoyMTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIm11bHRpcGxlIHN0YXR1c292ZXJyaWRlcyBwcmVzZW50IGZvciBmaWxlICclLjI1MHMnIgorbXNnc3RyICJzdGF0b3ZlcnJpZGUgYmVzdGFuZCBgJS4yNTBzJyIKKworIzogc3JjL3RyaWdjbWQuYzo0NgorIywgZnV6enkKK21zZ2lkICJUeXBlIGRwa2ctdHJpZ2dlciAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgdGhpcyB1dGlsaXR5LiIKK21zZ3N0ciAiVHlwZSBkcGtnLXNwbGl0IC0taGVscCB2b29yIGh1bHAuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjUxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gJXMgcGFja2FnZSB0cmlnZ2VyIHV0aWxpdHkgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiRGViaWFuICclcycgcGFra2V0YmVoZWVyIGJldnJhZ2luZ3Nwcm9ncmFtbWFcbiIKKworIzogc3JjL3RyaWdjbWQuYzo2NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbnM+IC4uLl0gPHRyaWdnZXItbmFtZT5cbiIKKyIgICAgICAgJXMgWzxvcHRpb25zPiAuLi5dIDxjb21tYW5kPlxuIgorIlxuIgorbXNnc3RyICIiCisiR2VicnVpazogJXMgWzxvcHRpZT4gLi4uXSA8Y29tbWFuZG8+XG4iCisiXG4iCisKKyM6IHNyYy90cmlnY21kLmM6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLS1jaGVjay1zdXBwb3J0ZWQgICAgICAgICAgICAgICAgQ2hlY2sgaWYgdGhlIHJ1bm5pbmcgZHBrZyBzdXBwb3J0cyAiCisidHJpZ2dlcnMuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogc3JjL3RyaWdjbWQuYzo4MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorIiAgLS1ieS1wYWNrYWdlPTxwYWNrYWdlPiAgICAgICAgICAgT3ZlcnJpZGUgdHJpZ2dlciBhd2FpdGVyIChub3JtYWxseSBzZXRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnkgZHBrZykuXG4iCisiICAtLW5vLWF3YWl0ICAgICAgICAgICAgICAgICAgICAgICBObyBwYWNrYWdlIG5lZWRzIHRvIGF3YWl0IHRoZSAiCisicHJvY2Vzc2luZy5cbiIKKyIgIC0tbm8tYWN0ICAgICAgICAgICAgICAgICAgICAgICAgIEp1c3QgdGVzdCAtIGRvbid0IGFjdHVhbGx5IGNoYW5nZSAiCisiYW55dGhpbmcuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogc3JjL3RyaWdjbWQuYzoxNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IHRyaWdnZXJzIGRhdGEgZGlyZWN0b3J5IG5vdCB5ZXQgY3JlYXRlZFxuIgorbXNnc3RyICIiCisKKyM6IHNyYy90cmlnY21kLmM6MTU2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB0cmlnZ2VyIHJlY29yZHMgbm90IHlldCBpbiBleGlzdGVuY2VcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIwNQorIywgZnV6enkKK21zZ2lkICJ0YWtlcyBvbmUgYXJndW1lbnQsIHRoZSB0cmlnZ2VyIG5hbWUiCittc2dzdHIgIi0tJXMgdmVyd2FjaHQgc2xlY2h0cyBlZW4gYXJndW1lbnQgKC5kZWIgYmVzdGFuZHNuYWFtKSIKKworIzogc3JjL3RyaWdjbWQuYzoyMTAKK21zZ2lkICJtdXN0IGJlIGNhbGxlZCBmcm9tIGEgbWFpbnRhaW5lciBzY3JpcHQgKG9yIHdpdGggYSAtLWJ5LXBhY2thZ2Ugb3B0aW9uKSIKK21zZ3N0ciAiIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIxNQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiaWxsZWdhbCBhd2FpdGVkIHBhY2thZ2UgbmFtZSAnJS4yNTBzJzogJS4yNTBzIgorbXNnc3RyICJgJXMnLXZlbGQsIG9uZ2VsZGlnZSBwYWtrZXRuYWFtIGAlLjI1NXMnOiAlcyIKKworIzogc3JjL3RyaWdjbWQuYzoyMjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgdHJpZ2dlciBuYW1lIGAlLjI1MHMnOiAlLjI1MHMiCittc2dzdHIgImAlcyctdmVsZCwgb25nZWxkaWdlIHBha2tldG5hYW0gYCUuMjU1cyc6ICVzIgorCisjOiBzcmMvdHJpZ3Byb2MuYzoyNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBjeWNsZSBmb3VuZCB3aGlsZSBwcm9jZXNzaW5nIHRyaWdnZXJzOlxuIgorIiBjaGFpbiBvZiBwYWNrYWdlcyB3aG9zZSB0cmlnZ2VycyBhcmUgb3IgbWF5IGJlIHJlc3BvbnNpYmxlOlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy90cmlncHJvYy5jOjI1OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiIHBhY2thZ2VzJyBwZW5kaW5nIHRyaWdnZXJzIHdoaWNoIGFyZSBvciBtYXkgYmUgdW5yZXNvbHZhYmxlOlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy90cmlncHJvYy5jOjI4MQorbXNnaWQgInRyaWdnZXJzIGxvb3BpbmcsIGFiYW5kb25lZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvdHJpZ3Byb2MuYzozMTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIlByb2Nlc3NpbmcgdHJpZ2dlcnMgZm9yICVzIC4uLlxuIgorbXNnc3RyICJXaXNzZW4gdmFuIGNvbmZpZ3VyYXRpZWJlc3RhbmRlbiB2b29yICVzIC4uLlxuIgorCisjOiBzcmMvdXBkYXRlLmM6NTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIi0tJXMgbmVlZHMgZXhhY3RseSBvbmUgUGFja2FnZXMgZmlsZSBhcmd1bWVudCIKK21zZ2lkICItLSVzIG5lZWRzIGV4YWN0bHkgb25lIFBhY2thZ2VzLWZpbGUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMgdmVyd2FjaHQgcHJlY2llcyDDqcOpbiBQYWNrYWdlcyBiZXN0YW5kIGFscyBhcmd1bWVudCIKKworIzogc3JjL3VwZGF0ZS5jOjYyCittc2dpZCAidW5hYmxlIHRvIGFjY2VzcyBkcGtnIHN0YXR1cyBhcmVhIGZvciBidWxrIGF2YWlsYWJsZSB1cGRhdGUiCittc2dzdHIgImthbiBuaWV0IGJpaiBkZSBkcGtnIHN0YXR1c29tZ2V2aW5nIHZvb3IgbWFzc2FsZSB1cGRhdGUiCisKKyM6IHNyYy91cGRhdGUuYzo2NAorbXNnaWQgImJ1bGsgYXZhaWxhYmxlIHVwZGF0ZSByZXF1aXJlcyB3cml0ZSBhY2Nlc3MgdG8gZHBrZyBzdGF0dXMgYXJlYSIKK21zZ3N0ciAiIgorImdyb3RlIGJpandlcmtpbmcgdmFuIGRlIGJlc2NoaWtiYWFyaGVpZHNkYXRhYmFzZSB2ZXJlaXN0IHNjaHJpamZ0b2VnYW5nIHRvdCAiCisiZGUgZHBrZyBzdGF0dXNvbWdldmluZyIKKworIzogc3JjL3VwZGF0ZS5jOjcxCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlcGxhY2luZyBhdmFpbGFibGUgcGFja2FnZXMgaW5mbywgdXNpbmcgJXMuXG4iCittc2dzdHIgIlZlcnZhbmdlbiB2YW4gaGV0IG91ZGUgYmVzY2hpa2JhcmUgcGFra2V0dGVuYmVzdGFuZCwgbWV0ICVzLlxuIgorCisjOiBzcmMvdXBkYXRlLmM6NzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiVXBkYXRpbmcgYXZhaWxhYmxlIHBhY2thZ2VzIGluZm8sIHVzaW5nICVzLlxuIgorbXNnc3RyICJCaWp3ZXJrZW4gdmFuIGhldCBiZXNjaGlrYmFyZSBwYWtrZXR0ZW5iZXN0YW5kLCBtZXQgJXMuXG4iCisKKyM6IHNyYy91cGRhdGUuYzoxMDEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIkluZm9ybWF0aW9uIGFib3V0ICVkIHBhY2thZ2Uocykgd2FzIHVwZGF0ZWQuXG4iCittc2dpZCAiSW5mb3JtYXRpb24gYWJvdXQgJWQgcGFja2FnZSB3YXMgdXBkYXRlZC5cbiIKK21zZ2lkX3BsdXJhbCAiSW5mb3JtYXRpb24gYWJvdXQgJWQgcGFja2FnZXMgd2FzIHVwZGF0ZWQuXG4iCittc2dzdHJbMF0gIkluZm9ybWF0aWUgb3ZlciAlZCBwYWtrZXQodGVuKSB3ZXJkIGJpamdld2Vya3QuXG4iCittc2dzdHJbMV0gIkluZm9ybWF0aWUgb3ZlciAlZCBwYWtrZXQodGVuKSB3ZXJkIGJpamdld2Vya3QuXG4iCisKKyM6IHNyYy91cGRhdGUuYzoxMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm9ic29sZXRlICctLSVzJyBvcHRpb24sIHVuYXZhaWxhYmxlIHBhY2thZ2VzIGFyZSBhdXRvbWF0aWNhbGx5IGNsZWFuZWQgdXAuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgbmFtZSAnJS41MHMuLi4nIGlzIHRvbyBsb25nIgorbXNnc3RyICJiZXN0YW5kc25hYW0gJyUuNTBzLi4uJyBpcyB0ZSBsYW5nIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjEyOQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgZmlsZSBuYW1lICclLjI1MHMnIgorbXNnc3RyICJrYW4gYnJvbmJlc3RhbmQgYCUuMjUwcycgbmlldCBvcGVuZW4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTg5CisjLCBmdXp6eQorbXNnaWQgInVuYWJsZSB0byBzdGF0IGNvbnRyb2wgZGlyZWN0b3J5IgorbXNnc3RyICJrYW4gdGlqZGVsaWprZSBiZXN0dXJpbmdzbWFwIG5pZXQgb3BlbmVuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjE5MQorIywgZnV6enkKK21zZ2lkICJjb250cm9sIGRpcmVjdG9yeSBpcyBub3QgYSBkaXJlY3RvcnkiCittc2dzdHIgImthbiBpbmZvIG1hcCBuaWV0IGxlemVuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjE5MworIywgYy1mb3JtYXQKK21zZ2lkICJjb250cm9sIGRpcmVjdG9yeSBoYXMgYmFkIHBlcm1pc3Npb25zICUwM2xvIChtdXN0IGJlID49MDc1NSBhbmQgPD0wNzc1KSIKK21zZ3N0ciAiIgorImJlc3R1cmluZ3NtYXAgaGVlZnQgZm91dGlldmUgcGVybWlzc2llcyAlMDNsbyAobW9ldCA+PTA3NTUgZW4gPD0wNzc1IHppam4pIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjIwNAorIywgYy1mb3JtYXQKK21zZ2lkICJtYWludGFpbmVyIHNjcmlwdCBgJS41MHMnIGlzIG5vdCBhIHBsYWluIGZpbGUgb3Igc3ltbGluayIKK21zZ3N0ciAiIgorImJlaGVlcmRlcnNzY3JpcHQgYCUuNTBzJyBpcyBuaWV0IGVlbiBnZXdvb24gYmVzdGFuZCBvZiBzeW1ib2xpc2NoZSBrb3BwZWxpbmciCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjA3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJtYWludGFpbmVyIHNjcmlwdCBgJS41MHMnIGhhcyBiYWQgcGVybWlzc2lvbnMgJTAzbG8gKG11c3QgYmUgPj0wNTU1IGFuZCAiCisiPD0wNzc1KSIKK21zZ3N0ciAiIgorImJlaGVlcmRlcnNzY3JpcHQgYCUuNTBzJyBoZWVmdCBmb3V0ZSBwZXJtaXNzaWVzICUwM2xvIChtb2V0ID49MDU1NSBlbiA8PTA3NzUgIgorInppam4pIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjIxMQorIywgYy1mb3JtYXQKK21zZ2lkICJtYWludGFpbmVyIHNjcmlwdCBgJS41MHMnIGlzIG5vdCBzdGF0dGFibGUiCittc2dzdHIgImJlaGVlcmRlcnNzY3JpcHQgYCUuNTBzJyBpcyBuaWV0IG9wdnJhYWdiYWFyIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjIzNworbXNnaWQgImVycm9yIG9wZW5pbmcgY29uZmZpbGVzIGZpbGUiCittc2dzdHIgImZvdXQgYmlqIG9wZW5lbiBjb25maWd1cmF0aWViZXN0YW5kZW4tYmVzdGFuZCIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNDYKK21zZ2lkICJlbXB0eSBzdHJpbmcgZnJvbSBmZ2V0cyByZWFkaW5nIGNvbmZmaWxlcyIKK21zZ3N0ciAibGVnZSBzdHJpbmcgdmFuIGZnZXRzIGJpaiBsZXplbiBjb25maWd1cmF0aWViZXN0YW5kZW4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjUxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBuYW1lICclLjUwcy4uLicgaXMgdG9vIGxvbmcsIG9yIG1pc3NpbmcgZmluYWwgbmV3bGluZSIKK21zZ3N0ciAiIgorIndhYXJzY2h1d2luZywgY29uZmlndXJhdGllYmVzdGFuZHNuYWFtIGAlLjUwcy4uLicgaXMgdGUgbGFuZywgb2YgYWZzbHVpdGVuZGUgIgorIm5pZXV3ZSByZWdlbCBvbnRicmVla3RcbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNjQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIGZpbGVuYW1lICclcycgY29udGFpbnMgdHJhaWxpbmcgd2hpdGUgc3BhY2VzIgorbXNnc3RyICJ3YWFyc2NodXdpbmcsIGNvbmZpZ3VyYXRpZWJlc3RhbmQgYCVzJyBlaW5kaWd0IG1ldCBsZWVncnVpbXRlXG4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjY2CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIGAlLjI1MHMnIGRvZXMgbm90IGFwcGVhciBpbiBwYWNrYWdlIgorbXNnc3RyICJjb25maWd1cmF0aWViZXN0YW5kIGAlLjI1MHMnIHppdCBuaWV0IGluIGhldCBwYWtrZXQiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjY4CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIGAlLjI1MHMnIGlzIG5vdCBzdGF0dGFibGUiCittc2dzdHIgImNvbmZpZ3VyYXRpZWJlc3RhbmQgYCUuMjUwcycgaXMgbmlldCBvcHZyYWFnYmFhciIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlICclcycgaXMgbm90IGEgcGxhaW4gZmlsZSIKK21zZ3N0ciAid2FhcnNjaHV3aW5nLCBjb25maWd1cmF0aWViZXN0YW5kIGAlcycgaXMgbmlldCBlZW4gZ2V3b29uIGJlc3RhbmRcbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNzQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIG5hbWUgJyVzJyBpcyBkdXBsaWNhdGVkIgorbXNnc3RyICJzbGFhZi1uYWFtICVzIGlzIGdlZHVwbGljZWVyZCIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyODcKK21zZ2lkICJlcnJvciByZWFkaW5nIGNvbmZmaWxlcyBmaWxlIgorbXNnc3RyICJmb3V0IGJpaiBsZXplbiBjb25maWd1cmF0aWViZXN0YW5kZW4tYmVzdGFuZCIKKworIzogZHBrZy1kZWIvYnVpbGQuYzozMzkKK21zZ2lkICJwYWNrYWdlIG5hbWUgaGFzIGNoYXJhY3RlcnMgdGhhdCBhcmVuJ3QgbG93ZXJjYXNlIGFscGhhbnVtcyBvciBgLSsuJyIKK21zZ3N0ciAiIgorInBha2tldG5hYW0gaGVlZnQgdGVrZW5zIGRpZSBuaWV0IGtsZWluZSBsZXR0ZXJzIG9mIGNpamZlcnMgb2YgJy0rLicgemlqbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzozNDEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiclcycgY29udGFpbnMgdXNlci1kZWZpbmVkIFByaW9yaXR5IHZhbHVlICclcyciCittc2dzdHIgIndhYXJzY2h1d2luZywgYCVzJyBiZXZhdCB6ZWxmIGdlZGVmaW5pw6tlcmRlICdQcmlvcml0eSctd2FhcmRlIGAlcydcbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzozNDcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiclcycgY29udGFpbnMgdXNlci1kZWZpbmVkIGZpZWxkICclcyciCittc2dzdHIgIndhYXJzY2h1d2luZywgYCVzJyBiZXZhdCB6ZWxmIGdlZGVmaW5pw6tlcmQgdmVsZCBgJXMnXG4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MzU4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJpZ25vcmluZyAlZCB3YXJuaW5nIGFib3V0IHRoZSBjb250cm9sIGZpbGUocylcbiIKK21zZ2lkX3BsdXJhbCAiaWdub3JpbmcgJWQgd2FybmluZ3MgYWJvdXQgdGhlIGNvbnRyb2wgZmlsZShzKVxuIgorbXNnc3RyWzBdICIiCisiZHBrZy1kZWI6ICVkIHdhYXJzY2h1d2luZ2VuIG92ZXIgZGUgYmVzdHVyaW5nc2Jlc3RhbmQoZW4pIGdlbmVnZWVyZFxuIgorbXNnc3RyWzFdICIiCisiZHBrZy1kZWI6ICVkIHdhYXJzY2h1d2luZ2VuIG92ZXIgZGUgYmVzdHVyaW5nc2Jlc3RhbmQoZW4pIGdlbmVnZWVyZFxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQwMyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQyOQorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhIDxkaXJlY3Rvcnk+IGFyZ3VtZW50IgorbXNnc3RyICItLSVzIGhlZWZ0IGVlbiBtYXAgYWxzIGFyZ3VtZW50IG5vZGlnIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQwOQorbXNnaWQgIi0tYnVpbGQgdGFrZXMgYXQgbW9zdCB0d28gYXJndW1lbnRzIgorbXNnc3RyICItLWJ1aWxkIHZlcndhY2h0IHRlbiBob29nc3RlIHR3ZWUgYXJndW1lbnRlbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoZWNrIGZvciBleGlzdGVuY2Ugb2YgYXJjaGl2ZSBgJS4yNTBzJyIKK21zZ3N0ciAia2FuIGhldCBiZXN0YWFuIHZhbiBoZXQgYXJjaGllZiBgJS4yNTBzJyBuaWV0IHZlcmlmacOrcmVuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQzMAorbXNnaWQgInRhcmdldCBpcyBkaXJlY3RvcnkgLSBjYW5ub3Qgc2tpcCBjb250cm9sIGZpbGUgY2hlY2siCittc2dzdHIgImRvZWwgaXMgZWVuIG1hcCAtIGthbiBjb250cm9sZSBiZXN0dXJpbmdzYmVzdGFuZCBuaWV0IG92ZXJzbGFhbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzEKK21zZ2lkICJub3QgY2hlY2tpbmcgY29udGVudHMgb2YgY29udHJvbCBhcmVhLiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQzMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZHBrZy1kZWI6IGJ1aWxkaW5nIGFuIHVua25vd24gcGFja2FnZSBpbiAnJXMnLlxuIgorbXNnc3RyICJkcGtnLWRlYjogYm91d2VuIHZhbiBwYWtrZXQgYCVzJyBpbiBgJXMnLlxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQzOQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnLWRlYjogYnVpbGRpbmcgcGFja2FnZSBgJXMnIGluIGAlcycuXG4iCittc2dzdHIgImRwa2ctZGViOiBib3V3ZW4gdmFuIHBha2tldCBgJXMnIGluIGAlcycuXG4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDY3IGRwa2ctZGViL2J1aWxkLmM6NTIxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gbWFrZSB0bXBmaWxlIChkYXRhKSIKK21zZ2lkICJmYWlsZWQgdG8gbWFrZSB0ZW1wb3JhcnkgZmlsZSAoJXMpIgorbXNnc3RyICJhYW5tYWtlbiB0bXBmaWxlIChkYXRhKSBpcyBtaXNsdWt0IgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ2NyBkcGtnLWRlYi9idWlsZC5jOjQ3MCBkcGtnLWRlYi9idWlsZC5jOjQ3NworIzogZHBrZy1kZWIvYnVpbGQuYzo0ODUgZHBrZy1kZWIvYnVpbGQuYzo0OTQgZHBrZy1kZWIvYnVpbGQuYzo0OTkKKyMsIGZ1enp5CisjfCBtc2dpZCAiY29udHJvbCBhcmVhIgorbXNnaWQgImNvbnRyb2wgbWVtYmVyIgorbXNnc3RyICJjb250cm9sZWdlYmllZCIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0NzAgZHBrZy1kZWIvYnVpbGQuYzo1MjQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byB1bmxpbmsgdG1wZmlsZSAoZGF0YSksICVzIgorbXNnaWQgImZhaWxlZCB0byB1bmxpbmsgdGVtcG9yYXJ5IGZpbGUgKCVzKSwgJXMiCittc2dzdHIgIm9udGxpbmtlbiB0bXBmaWxlIChkYXRhKSwgJXMgaXMgbWlzbHVrdCIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0ODUgZHBrZy1kZWIvYnVpbGQuYzo1OTMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdG1wZmlsZSAoZGF0YSkiCittc2dpZCAiZmFpbGVkIHRvIHJld2luZCB0ZW1wb3JhcnkgZmlsZSAoJXMpIgorbXNnc3RyICJ0ZXJ1Z3Nwb2VsZW4gdmFuIHRtcGZpbGUgKGRhdGEpIGlzIG1pc2x1a3QiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDk0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gc3RhdCB0ZW1wb3JhcnkgZmlsZSAoJXMpIgorbXNnc3RyICJhYW5tYWtlbiB0bXBmaWxlIChkYXRhKSBpcyBtaXNsdWt0IgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ5OAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciB3cml0aW5nIGAlcyciCittc2dzdHIgImZvdXQgYmlqIHNjaHJpanZlbiBuYWFyIGAlcyciCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTIxIGRwa2ctZGViL2J1aWxkLmM6NTI0IGRwa2ctZGViL2J1aWxkLmM6NTQ2CisjOiBkcGtnLWRlYi9idWlsZC5jOjU3MiBkcGtnLWRlYi9idWlsZC5jOjU4MCBkcGtnLWRlYi9idWlsZC5jOjU5MworIywgZnV6enkKKyN8IG1zZ2lkICJiZXR3ZWVuIG1lbWJlcnMiCittc2dpZCAiZGF0YSBtZW1iZXIiCittc2dzdHIgInR1c3NlbiBsZWRlbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo1NzEgZHBrZy1kZWIvYnVpbGQuYzo1ODAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byB3cml0ZSBmaWxlbmFtZSB0byB0YXIgcGlwZSAoZGF0YSkiCittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIGZpbGVuYW1lIHRvIHRhciBwaXBlICglcykiCittc2dzdHIgInNjaHJpanZlbiB2YSBiZXN0YW5kc25hYW0gbmFhciBkZSAndGFyJy1waWpwIChkYXRhKSBpcyBtaXNsdWt0IgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjU4NAorbXNnaWQgIjxjb21wcmVzcz4gZnJvbSB0YXIgLWNmIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzo2MSBkcGtnLWRlYi9leHRyYWN0LmM6NjMKK21zZ2lkICJzaGVsbCBjb21tYW5kIHRvIG1vdmUgZmlsZXMiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjcwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGZpbGUgaW4gJXMgaW4gJS4yNTVzIgorbXNnc3RyICJvbnZlcndhY2h0IGJlc3RhbmRzZWluZGUgaW4gJXMgb3AgJS4yNTVzIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcmVhZGluZyAlcyBmcm9tIGZpbGUgJS4yNTVzIgorbXNnc3RyICJmb3V0IGJpaiBsZXplbiB2YW4gJXMgdWl0IGJlc3RhbmQgJS4yNTVzIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTI1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZWFkIGFyY2hpdmUgYCUuMjU1cyciCittc2dzdHIgImthbiBuaWV0IGxlemVuIHVpdCBhcmNoaWVmIGAlLjI1NXMnIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTI3Cittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGFyY2hpdmUiCittc2dzdHIgImthbiBhcmNoaWVmIG5pZXQgdmluZGVuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTMxCisjLCBmdXp6eQorI3wgbXNnaWQgImFyY2hpdmUgaGFzIG5vIGRvdCBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ2lkICJhcmNoaXZlIG1hZ2ljIHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICJhcmNoaWVmIGhlZWZ0IGdlZW4gcHVudCBpbiBoZXQgdmVyc2llbnVtbWVyIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTQzCisjLCBmdXp6eQorI3wgbXNnaWQgImFyY2hpdmUgaGFzIG5vIG5ld2xpbmVzIGluIGhlYWRlciIKK21zZ2lkICJhcmNoaXZlIG1lbWJlciBoZWFkZXIiCittc2dzdHIgImFyY2hpZWYgaGVlZnQgZ2VlbiBuaWV1d2UgcmVnZWxzIGluIGtvcHRla3N0IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTQ4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgcGFydCBudW1iZXIiCittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIGFyY2hpdmUgaGVhZGVyIG1hZ2ljIgorbXNnc3RyICJiZXN0YW5kIGAlLjI1MHMnIGlzIGJlc2NoYWRpZ2QgLSBmb3V0aWVmIGRlZWxudW1tZXIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBub3QgYSBkZWJpYW4gYmluYXJ5IGFyY2hpdmUgKHRyeSBkcGtnLXNwbGl0PykiCittc2dzdHIgIiIKKyJiZXN0YW5kIGAlLjI1MHMnIGlzIG5pZXQgZWVuIGRlYmlhbiBiaW5haXIgYXJjaGllZiAocHJvYmVlciBkcGtnLXNwbGl0PykiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNTkKKyMsIGZ1enp5CisjfCBtc2dpZCAiYXJjaGl2ZSBoYXMgbm8gZG90IGluIHZlcnNpb24gbnVtYmVyIgorbXNnaWQgImFyY2hpdmUgaW5mb3JtYXRpb24gaGVhZGVyIG1lbWJlciIKK21zZ3N0ciAiYXJjaGllZiBoZWVmdCBnZWVuIHB1bnQgaW4gaGV0IHZlcnNpZW51bW1lciIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE2MgorbXNnaWQgImFyY2hpdmUgaGFzIG5vIG5ld2xpbmVzIGluIGhlYWRlciIKK21zZ3N0ciAiYXJjaGllZiBoZWVmdCBnZWVuIG5pZXV3ZSByZWdlbHMgaW4ga29wdGVrc3QiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNjUKK21zZ2lkICJhcmNoaXZlIGhhcyBubyBkb3QgaW4gdmVyc2lvbiBudW1iZXIiCittc2dzdHIgImFyY2hpZWYgaGVlZnQgZ2VlbiBwdW50IGluIGhldCB2ZXJzaWVudW1tZXIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiYXJjaGl2ZSB2ZXJzaW9uICUuMjUwcyBub3QgdW5kZXJzdG9vZCwgZ2V0IG5ld2VyIGRwa2ctZGViIgorbXNnc3RyICJhcmNoaWVmIHZlcnNpZSAlLjI1MHMgbmlldCBiZWdyZXBlbiwgbmVlbSBlZW4gbmlldXdlcmUgZHBrZy1kZWIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNzkgZHBrZy1kZWIvZXh0cmFjdC5jOjIwNQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic2tpcHBlZCBtZW1iZXIgZGF0YSBmcm9tICVzIgorbXNnaWQgInNraXBwZWQgYXJjaGl2ZSBtZW1iZXIgZGF0YSBmcm9tICVzIgorbXNnc3RyICJsaWQgZGF0YSB2YW4gJXMgb3Zlcmdlc2xhZ2VuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTk0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGNvbnRhaW5zIHVudW5kZXJzdG9vZCBkYXRhIG1lbWJlciAlLipzLCBnaXZpbmcgdXAiCittc2dpZCAiYXJjaGl2ZSAnJS4yNTBzJyBjb250YWlucyBub3QgdW5kZXJzdG9vZCBkYXRhIG1lbWJlciAlLipzLCBnaXZpbmcgdXAiCittc2dzdHIgImJlc3RhbmQgYCUuMjUwcycgYmV2YXQgb25iZWdyZXBlbiBkYXRhbGlkICUuKnMsIGVyIHdvcmR0IG9wZ2VnZXZlbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE5OQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZSBgJS4yNTBzJyBjb250YWlucyB0d28gY29udHJvbCBtZW1iZXJzLCBnaXZpbmcgdXAiCittc2dpZCAiYXJjaGl2ZSAnJS4yNTBzJyBjb250YWlucyB0d28gY29udHJvbCBtZW1iZXJzLCBnaXZpbmcgdXAiCittc2dzdHIgImJlc3RhbmQgYCUuMjUwcycgYmV2YXQgdHdlZSBiZXN0dXJpbmdzbGVkZW4sIGVyIHdvcmR0IG9wZ2VnZXZlbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIxNAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiBuZXcgZGViaWFuIHBhY2thZ2UsIHZlcnNpb24gJXMuXG4iCisjfCAiIHNpemUgJWxkIGJ5dGVzOiBjb250cm9sIGFyY2hpdmU9ICV6aSBieXRlcy5cbiIKK21zZ2lkICIiCisiIG5ldyBkZWJpYW4gcGFja2FnZSwgdmVyc2lvbiAlcy5cbiIKKyIgc2l6ZSAlamQgYnl0ZXM6IGNvbnRyb2wgYXJjaGl2ZT0gJWpkIGJ5dGVzLlxuIgorbXNnc3RyICIiCisiIG5pZXV3IGRlYmlhbiBwYWtrZXQsIHZlcnNpZSAlcy5cbiIKKyIgZ3Jvb3R0ZSAlbGQgYnl0ZXM6IGJlc3R1cmluZ3NhcmNoaWVmPSAlemkgYnl0ZXMuXG4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyMzIKK21zZ2lkICJhcmNoaXZlIGNvbnRyb2wgbWVtYmVyIHNpemUiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIzNQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYXJjaGl2ZSBoYXMgbWFsZm9ybWF0dGVkIGNvbnRyb2wgbGVuZ3RoIGAlcyciCittc2dpZCAiYXJjaGl2ZSBoYXMgbWFsZm9ybWF0dGVkIGNvbnRyb2wgbWVtYmVyIHNpemUgJyVzJyIKK21zZ3N0ciAiYXJjaGllZiBoZWVmdCB2ZXJrZWVyZGUgJ2NvbnRyb2wnLWxlbmd0ZSBgJXMnIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjQyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJza2lwcGVkIG1lbWJlciBkYXRhIGZyb20gJXMiCittc2dpZCAic2tpcHBlZCBhcmNoaXZlIGNvbnRyb2wgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ3N0ciAibGlkIGRhdGEgdmFuICVzIG92ZXJnZXNsYWdlbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI0NgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiBvbGQgZGViaWFuIHBhY2thZ2UsIHZlcnNpb24gJXMuXG4iCisjfCAiIHNpemUgJWxkIGJ5dGVzOiBjb250cm9sIGFyY2hpdmU9ICV6aSwgbWFpbiBhcmNoaXZlPSAlbGQuXG4iCittc2dpZCAiIgorIiBvbGQgZGViaWFuIHBhY2thZ2UsIHZlcnNpb24gJXMuXG4iCisiIHNpemUgJWpkIGJ5dGVzOiBjb250cm9sIGFyY2hpdmU9ICVqZCwgbWFpbiBhcmNoaXZlPSAlamQuXG4iCittc2dzdHIgIiIKKyIgdmVyb3VkZXJkIGRlYmlhbiBwYWtrZXQsIHZlcnNpZSAlcy5cbiIKKyIgZ3Jvb3R0ZSAlbGQgYnl0ZXM6IGJlc3R1cmluZ3NhcmNoaWVmPSAlemksIGhvb2ZkYXJjaGllZj0gJWxkLlxuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjU1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnLWRlYjogZmlsZSBsb29rcyBsaWtlIGl0IG1pZ2h0IGJlIGFuIGFyY2hpdmUgd2hpY2ggaGFzIGJlZW5cbiIKKyJkcGtnLWRlYjogICAgY29ycnVwdGVkIGJ5IGJlaW5nIGRvd25sb2FkZWQgaW4gQVNDSUkgbW9kZVxuIgorbXNnc3RyICIiCisiZHBrZy1kZWI6IGJlc3RhbmQgemlldCBlciB1aXQgYWxzb2YgaGV0IGVlbiBhcmNoaWVmIGlzIGRhdCBiZXNjaGFkaWdkXG4iCisiZHBrZy1kZWI6ICAgIGlzIGRvb3IgaGV0IHRlIGRvd25sb2FkZW4gaW4gQVNDSUkgbW9kZVxuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjU5CisjLCBjLWZvcm1hdAorbXNnaWQgImAlLjI1NXMnIGlzIG5vdCBhIGRlYmlhbiBmb3JtYXQgYXJjaGl2ZSIKK21zZ3N0ciAiYCUuMjU1cycgaXMgZ2VlbiBhcmNoaWVmIGluIGRlYmlhbiBmb3JtYWF0IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjY2Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIHRvIHBpcGUgaW4gY29weSIKK21zZ3N0ciAic2NocmlqdmVuIG5hYXIgZGUgcGlqcCBpbiBjb3B5IGlzIG1pc2x1a3QiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNjgKK21zZ2lkICJmYWlsZWQgdG8gY2xvc2UgcGlwZSBpbiBjb3B5IgorbXNnc3RyICJzbHVpdGVuIHZhbiBkZSBwaWpwIGluIGNvcHkgaXMgbWlzbHVrdCIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI4NAorbXNnaWQgImRhdGEiCittc2dzdHIgImRhdGEiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozMDcKK21zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gZGlyZWN0b3J5IgorbXNnc3RyICJjaGRpciBuYWFyIGRlIG1hcCBpcyBtaXNsdWt0IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzEwCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBkaXJlY3RvcnkiCittc2dzdHIgImFhbm1ha2VuIG1hcCBpcyBtaXNsdWt0IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzEyCittc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIGRpcmVjdG9yeSBhZnRlciBjcmVhdGluZyBpdCIKK21zZ3N0ciAiY2hkaXIgbmFhciBkZSBtYXAgbmEgaGV0IGFhbm1ha2VuIGVydmFuIGlzIG1pc2x1a3QiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozMjMKKyMsIGZ1enp5Cittc2dpZCAiPGRlY29tcHJlc3M+IgorbXNnc3RyICIlczogZGVjb21wcmVzc2llIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzI1CisjLCBmdXp6eQorbXNnaWQgInBhc3RlIgorbXNnc3RyICJjb3JyZWN0XG4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozNDIgZHBrZy1kZWIvZXh0cmFjdC5jOjM2MyBkcGtnLWRlYi9leHRyYWN0LmM6NDAyCisjOiBkcGtnLWRlYi9pbmZvLmM6NzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhIC5kZWIgZmlsZW5hbWUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMgdmVyd2FjaHQgZWVuIC5kZWIgYmVzdGFuZHNuYWFtIGFyZ3VtZW50IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzQ3IGRwa2ctZGViL2V4dHJhY3QuYzo0MDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIi0tJXMgbmVlZHMgYSB0YXJnZXQgZGlyZWN0b3J5LlxuIgorIlBlcmhhcHMgeW91IHNob3VsZCBiZSB1c2luZyBkcGtnIC0taW5zdGFsbCA/IgorbXNnc3RyICIiCisiLS0lcyBoZWVmdCBlZW4gZG9lbG1hcCBub2RpZy5cbiIKKyJNaXNzY2hpZW4gaGVlZnQgdSAnZHBrZyAtLWluc3RhbGwnIG5vZGlnPyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjM1MCBkcGtnLWRlYi9leHRyYWN0LmM6NDEwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgYXQgbW9zdCB0d28gYXJndW1lbnRzICguZGViIGFuZCBkaXJlY3RvcnkpIgorbXNnc3RyICItLSVzIHZlcndhY2h0IHRlbiBob29nc3RlIHR3ZWUgYXJndW1lbnRlbiAoLmRlYiBlbiBtYXApIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzY1CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgb25seSBvbmUgYXJndW1lbnQgKC5kZWIgZmlsZW5hbWUpIgorbXNnc3RyICItLSVzIHZlcndhY2h0IHNsZWNodHMgZWVuIGFyZ3VtZW50ICguZGViIGJlc3RhbmRzbmFhbSkiCisKKyM6IGRwa2ctZGViL2luZm8uYzo2MworbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byBgLycgZm9yIGNsZWFudXAiCittc2dzdHIgImNoZGlyIG5hYXIgYC8nIG9tIG9wIHRlIHJ1aW1lbiBpcyBtaXNsdWt0IgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTA2CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW5ub3Qgc3RhdCBvbGQgbmFtZSBgJXMnOiAlcyIKK21zZ2lkICJjb250cm9sIGZpbGUgJyVzJyIKK21zZ3N0ciAia2FuIGRlIHN0YXR1cyB2YW4gZGUgb3VkZSBuYWFtICclcycgbmlldCBvcHZyYWdlbjogJXMiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZy1kZWI6IGAlLjI1NXMnIGNvbnRhaW5zIG5vIGNvbnRyb2wgY29tcG9uZW50IGAlLjI1NXMnXG4iCittc2dzdHIgImRwa2ctZGViOiBgJS4yNTVzJyBiZXZhdCBnZWVuIGJlc3R1cmluZ3NvbmRlcmRlZWwgYCUuMjU1cydcbiIKKworIzogZHBrZy1kZWIvaW5mby5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICJvcGVuIGNvbXBvbmVudCBgJS4yNTVzJyAoaW4gJS4yNTVzKSBmYWlsZWQgaW4gYW4gdW5leHBlY3RlZCB3YXkiCittc2dzdHIgIm9wZW5lbiB2YW4gb25kZXJkZWVsIGAlLjI1NXMnIChpbiAlLjI1NXMpIGlzIG1pc2x1a3Qgb252ZXJ3YWNodHMiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIk9uZSByZXF1ZXN0ZWQgY29udHJvbCBjb21wb25lbnQgaXMgbWlzc2luZyIKK21zZ2lkICIlZCByZXF1ZXN0ZWQgY29udHJvbCBjb21wb25lbnQgaXMgbWlzc2luZyIKK21zZ2lkX3BsdXJhbCAiJWQgcmVxdWVzdGVkIGNvbnRyb2wgY29tcG9uZW50cyBhcmUgbWlzc2luZyIKK21zZ3N0clswXSAidGVuIG1pbnN0ZSBlZW4gZ2V2cmFhZ2QgYmVzdHVyaW5nc2VsZW1lbnQgb250YnJlZWt0IgorbXNnc3RyWzFdICJ0ZW4gbWluc3RlIGVlbiBnZXZyYWFnZCBiZXN0dXJpbmdzZWxlbWVudCBvbnRicmVla3QiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMzkgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQyNAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc2NhbiBkaXJlY3RvcnkgYCUuMjU1cyciCittc2dzdHIgImthbiBtYXAgYCUuMjU1cycgbmlldCBhZmxlemVuIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTQ4CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzdGF0IGAlLjI1NXMnIChpbiBgJS4yNTVzJykiCittc2dzdHIgImthbiBkZSBzdGF0dXMgdmFuIGAlLjI1NXMnIG5pZXQgb3B2cmFnZW4gKGluIGAlLjI1NXMnKSIKKworIzogZHBrZy1kZWIvaW5mby5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgb3BlbiBgJS4yNTVzJyAoaW4gYCUuMjU1cycpIgorbXNnc3RyICJrYW4gYCUuMjU1cycgbmlldCBvcGVuZW4gKGluIGAlLjI1NXMnKSIKKworIzogZHBrZy1kZWIvaW5mby5jOjE2NyBkcGtnLWRlYi9pbmZvLmM6MTg1IGRwa2ctZGViL2luZm8uYzoxOTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgYCUuMjU1cycgKGluIGAlLjI1NXMnKSIKK21zZ3N0ciAia2FuIG5pZXQgYCUuMjU1cycgbmlldCBsZXplbiAoaW4gYCUuMjU1cycpIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTcwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIgJTdsZCBieXRlcywgJTVkIGxpbmVzICAgJWMgICUtMjAuMTI3cyAlLjEyN3NcbiIKK21zZ2lkICIgJTdqZCBieXRlcywgJTVkIGxpbmVzICAgJWMgICUtMjAuMTI3cyAlLjEyN3NcbiIKK21zZ3N0ciAiICU3bGQgYnl0ZXMsICU1ZCByZWdlbHMgICVjICAlLTIwLjEyN3MgJS4xMjdzXG4iCisKKyM6IGRwa2ctZGViL2luZm8uYzoxNzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAgICBub3QgYSBwbGFpbiBmaWxlICAgICAgICAgICUuMjU1c1xuIgorbXNnc3RyICIgICAgIGdlZW4gZ2V3b29uIGJlc3RhbmQgICAgICAlLjI1NXNcbiIKKworIzogZHBrZy1kZWIvaW5mby5jOjE4NgorbXNnaWQgIihubyBgY29udHJvbCcgZmlsZSBpbiBjb250cm9sIGFyY2hpdmUhKVxuIgorbXNnc3RyICIoZ2VlbiBgY29udHJvbCctYmVzdGFuZCBpbiBiZXN0dXJpbmdzYXJjaGllZiEpXG4iCisKKyM6IGRwa2ctZGViL2luZm8uYzoyMjIKK21zZ2lkICJjb3VsZCBub3Qgb3BlbiB0aGUgYGNvbnRyb2wnIGNvbXBvbmVudCIKK21zZ3N0ciAia2FuIG9uZGVyZGVlbCBgY29udHJvbCcgbmlldCBvcGVuZW4iCisKKyM6IGRwa2ctZGViL2luZm8uYzoyNjEKK21zZ2lkICJmYWlsZWQgZHVyaW5nIHJlYWQgb2YgYGNvbnRyb2wnIGNvbXBvbmVudCIKK21zZ3N0ciAiZm91dCBiaWogbGV6ZW4gdmFuIG9uZGVyZGVlbCBgY29udHJvbCciCisKKyM6IGRwa2ctZGViL2luZm8uYzoyNjMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgdGhlICclcycgY29tcG9uZW50IgorbXNnc3RyICJmb3V0IGJpaiBoZXQgc2x1aXRlbiB2YW4gZGUgcGlqcCBuYWFyIGZpbmQiCisKKyM6IGRwa2ctZGViL2luZm8uYzoyNzgKK21zZ2lkICJFcnJvciBpbiBmb3JtYXQiCittc2dzdHIgIkZvcm1hYXRmb3V0IgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MzI4Cittc2dpZCAiLS1jb250ZW50cyB0YWtlcyBleGFjdGx5IG9uZSBhcmd1bWVudCIKK21zZ3N0ciAiLS1jb250ZW50cyB2ZXJ3YWNodCBwcmVjaWVzIGVlbiBhcmd1bWVudCIKKworIzogZHBrZy1kZWIvbWFpbi5jOjU0CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiBgJXMnIHBhY2thZ2UgYXJjaGl2ZSBiYWNrZW5kIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkRlYmlhbiAnJXMnIHBha2tldGFyY2hpZWZiYWNrZW5kIHZlcnNpZSAgJXMuXG4iCisKKyM6IGRwa2ctZGViL21haW4uYzo3MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIkNvbW1hbmRzOlxuIgorI3wgIiAgLWJ8LS1idWlsZCA8ZGlyZWN0b3J5PiBbPGRlYj5dICAgQnVpbGQgYW4gYXJjaGl2ZS5cbiIKKyN8ICIgIC1jfC0tY29udGVudHMgPGRlYj4gICAgICAgICAgICAgIExpc3QgY29udGVudHMuXG4iCisjfCAiICAtSXwtLWluZm8gPGRlYj4gWzxjZmlsZT4gLi4uXSAgICBTaG93IGluZm8gdG8gc3Rkb3V0LlxuIgorI3wgIiAgLVd8LS1zaG93IDxkZWI+ICAgICAgICAgICAgICAgICAgU2hvdyBpbmZvcm1hdGlvbiBvbiBwYWNrYWdlKHMpXG4iCisjfCAiICAtZnwtLWZpZWxkIDxkZWI+IFs8Y2ZpZWxkPiAuLi5dICBTaG93IGZpZWxkKHMpIHRvIHN0ZG91dC5cbiIKKyN8ICIgIC1lfC0tY29udHJvbCA8ZGViPiBbPGRpcmVjdG9yeT5dIEV4dHJhY3QgY29udHJvbCBpbmZvLlxuIgorI3wgIiAgLXh8LS1leHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+ICAgRXh0cmFjdCBmaWxlcy5cbiIKKyN8ICIgIC1YfC0tdmV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gIEV4dHJhY3QgJiBsaXN0IGZpbGVzLlxuIgorI3wgIiAgLS1mc3lzLXRhcmZpbGUgPGRlYj4gICAgICAgICAgICAgT3V0cHV0IGZpbGVzeXN0ZW0gdGFyZmlsZS5cbiIKKyN8ICJcbiIKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtYnwtLWJ1aWxkIDxkaXJlY3Rvcnk+IFs8ZGViPl0gICBCdWlsZCBhbiBhcmNoaXZlLlxuIgorIiAgLWN8LS1jb250ZW50cyA8ZGViPiAgICAgICAgICAgICAgTGlzdCBjb250ZW50cy5cbiIKKyIgIC1JfC0taW5mbyA8ZGViPiBbPGNmaWxlPiAuLi5dICAgIFNob3cgaW5mbyB0byBzdGRvdXQuXG4iCisiICAtV3wtLXNob3cgPGRlYj4gICAgICAgICAgICAgICAgICBTaG93IGluZm9ybWF0aW9uIG9uIHBhY2thZ2UocylcbiIKKyIgIC1mfC0tZmllbGQgPGRlYj4gWzxjZmllbGQ+IC4uLl0gIFNob3cgZmllbGQocykgdG8gc3Rkb3V0LlxuIgorIiAgLWV8LS1jb250cm9sIDxkZWI+IFs8ZGlyZWN0b3J5Pl0gRXh0cmFjdCBjb250cm9sIGluZm8uXG4iCisiICAteHwtLWV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gICBFeHRyYWN0IGZpbGVzLlxuIgorIiAgLVh8LS12ZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PiAgRXh0cmFjdCAmIGxpc3QgZmlsZXMuXG4iCisiICAtUnwtLXJhdy1leHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFeHRyYWN0IGNvbnRyb2wgaW5mbyBhbmQgZmlsZXMuXG4iCisiICAtLWZzeXMtdGFyZmlsZSA8ZGViPiAgICAgICAgICAgICBPdXRwdXQgZmlsZXN5c3RlbSB0YXJmaWxlLlxuIgorIlxuIgorbXNnc3RyICIiCisiQ29tbWFuZG9zOlxuIgorIiAgLWJ8LS1idWlsZCA8bWFwPiBbPGRlYj5dICAgIGJvdXcgZWVuIGFyY2hpZWYuXG4iCisiICAtY3wtLWNvbnRlbnRzIDxkZWI+ICAgICAgICAgICAgICB0b29uIGRlIGluaG91ZC5cbiIKKyIgIC1JfC0taW5mbyA8ZGViPiBbPGNiZXN0YW5kPi4uLl0gIHRvb24gZGUgaW5mbyBvcCBzdGRvdXQuXG4iCisiICAtV3wtLXNob3cgPGRlYj4gICAgICAgICAgICAgICAgICAgdG9vbiBpbmZvcm1hdGllIG92ZXIgZGUgcGFra2V0dGVuXG4iCisiICAtZnwtLWZpZWxkIDxkZWI+IFs8Y3ZlbGQ+Li4uXSAgdG9vbiBkZSB2ZWxkZW4gb3Agc3Rkb3V0LlxuIgorIiAgLWV8LS1jb250cm9sIDxkZWI+IFs8bWFwPl0gcGFrIGNvbnRyb2wtaW5mbyB1aXQuXG4iCisiICAteHwtLWV4dHJhY3QgPGRlYj4gPG1hcD4gICBwYWsgYmVzdGFuZGVuIHVpdC5cbiIKKyIgIC1YfC0tdmV4dHJhY3QgPGRlYj4gPG1hcD4gcGFrIGJlc3RhbmRlbiB1aXQgZW4gZ2VlZiBlZW4gbGlqc3Qgd2Vlci5cbiIKKyIgIC0tZnN5cy10YXJmaWxlIDxkZWI+ICAgICAgICAgICAgICAgdm9lciBiZXN0YW5kc3N5c3RlZW0gdGFyIGJlc3RhbmQgdWl0LlxuIgorIlxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6OTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIjxkZWI+IGlzIHRoZSBmaWxlbmFtZSBvZiBhIERlYmlhbiBmb3JtYXQgYXJjaGl2ZS5cbiIKKyI8Y2ZpbGU+IGlzIHRoZSBuYW1lIG9mIGFuIGFkbWluaXN0cmF0aXZlIGZpbGUgY29tcG9uZW50LlxuIgorIjxjZmllbGQ+IGlzIHRoZSBuYW1lIG9mIGEgZmllbGQgaW4gdGhlIG1haW4gYGNvbnRyb2wnIGZpbGUuXG4iCisiXG4iCittc2dzdHIgIiIKKyI8ZGViPiAgIGlzIGRlIGJlc3RhbmRzbmFhbSB2YW4gZWVuIHBha2tldCBpbiBkZWJpYW4tYXJjaGllZmZvcm1hYXQuXG4iCisiPGNiZXN0YW5kPiBpcyBkZSBuYWFtIHZhbiBlZW4gYWRtaW5pc3RyYXRpZWYgYmVzdGFuZC5cbiIKKyI8Y3ZlbGQ+IGlzIGRlIG5hYW0gdmFuIGVlbiB2ZWxkIGluIGhldCBiZWxhbmdyaWprc3RlICdjb250cm9sJy1iZXN0YW5kLlxuIgorIlxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6OTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1zaG93Zm9ybWF0PTxmb3JtYXQ+ICAgICAgICAgICAgVXNlIGFsdGVybmF0aXZlIGZvcm1hdCBmb3IgLS1zaG93LlxuIgorIiAgLXYsIC0tdmVyYm9zZSAgICAgICAgICAgICAgICAgICAgRW5hYmxlIHZlcmJvc2Ugb3V0cHV0LlxuIgorIiAgLUQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRW5hYmxlIGRlYnVnZ2luZyBvdXRwdXQuXG4iCisiICAtLW9sZCwgLS1uZXcgICAgICAgICAgICAgICAgICAgICBTZWxlY3QgYXJjaGl2ZSBmb3JtYXQuXG4iCisiICAtLW5vY2hlY2sgICAgICAgICAgICAgICAgICAgICAgICBTdXBwcmVzcyBjb250cm9sIGZpbGUgY2hlY2sgKGJ1aWxkIGJhZFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWNrYWdlcykuXG4iCisiICAteiMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTZXQgdGhlIGNvbXByZXNzaW9uIGxldmVsIHdoZW4gYnVpbGRpbmcuXG4iCisiICAtWjx0eXBlPiAgICAgICAgICAgICAgICAgICAgICAgICBTZXQgdGhlIGNvbXByZXNzaW9uIHR5cGUgdXNlZCB3aGVuICIKKyJidWlsZGluZy5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWxsb3dlZCB0eXBlczogZ3ppcCwgeHosIGJ6aXAyLCBsem1hLCAiCisibm9uZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIk9wdGllczpcbiIKKyIgIC0tc2hvd2Zvcm1hdD08Zm9ybWFhdD4gZ2VicnVpayBhbHRlcm5hdGllZiBmb3JtYWF0IHZvb3IgLS1zaG93XG4iCisiICAtRCAgICAgICAgICAgICAgICAgICAgICAgIGFjdGl2ZWVyIGRlYnVnZ2luZy11aXR2b2VyXG4iCisiICAtLW9sZCwgLS1uZXcgICAgICAgICBzZWxlY3RlZXIgYXJjaGllZmZvcm1hYXRcbiIKKyIgIC0tbm9jaGVjayAgICAgICAgICAgb25kZXJkcnVrIGNoZWNrIHZhbiAnY29udHJvbCctYmVzdGFuZCAoYm91dyBzbGVjaHRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWtrZXQpXG4iCisiICAteiMgICAgICAgICAgICAgICAgICAgICAgb20gZGUgY29tcHJlc3NpZSBpbiB0ZSBzdGVsbGVuIGJpaiBoZXQgYm91d2VuXG4iCisiICAtWjx0eXBlPiAgICAgICAgICAgb20gaGV0IGNvbXByZXNzaWV0eXBlIGluIHRlIHN0ZWxsZW4gYmlqIGhldCBib3V3ZW5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b2VnZWxhdGVuIHdhYXJkZXM6IGd6aXAsIGJ6aXAyLCBsem1hLCBnZWVuXG4iCisiXG4iCisKKyM6IGRwa2ctZGViL21haW4uYzoxMjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIlVzZSBgZHBrZycgdG8gaW5zdGFsbCBhbmQgcmVtb3ZlIHBhY2thZ2VzIGZyb20geW91ciBzeXN0ZW0sIG9yXG4iCisiYGRzZWxlY3QnIG9yIGBhcHRpdHVkZScgZm9yIHVzZXItZnJpZW5kbHkgcGFja2FnZSBtYW5hZ2VtZW50LiAgUGFja2FnZXNcbiIKKyJ1bnBhY2tlZCB1c2luZyBgZHBrZy1kZWIgLS1leHRyYWN0JyB3aWxsIGJlIGluY29ycmVjdGx5IGluc3RhbGxlZCAhXG4iCittc2dzdHIgIiIKKyJcbiIKKyJHZWJydWlrICdkcGtnJyBvbSBwYWtrZXR0ZW4gdGUgaW5zdGFsbGVyZW4gb2YgdGUgZGUtaW5zdGFsbGVyZW4gdmFuIHV3XG4iCisic3lzdGVlbSwgb2YgZ2VicnVpayAnYXB0aXR1ZGUnIG9mICdkc2VsZWN0JyB2b29yIGdlYnJ1aWtlcnN2cmllbmRlbGlqa1xuIgorInBha2tldGJlaGVlci4gVmlhICdkcGtnLWRlYiAtLWV4dHJhY3QnIHVpdGdlcGFrdGUgcGFra2V0dGVuIHdvcmRlblxuIgorIm5pZXQganVpc3QgZ2XDr25zdGFsbGVlcmQhXG4iCisKKyM6IGRwa2ctZGViL21haW4uYzoxMzIKK21zZ2lkICIiCisiVHlwZSBkcGtnLWRlYiAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgbWFuaXB1bGF0aW5nICouZGViIGZpbGVzO1xuIgorIlR5cGUgZHBrZyAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgaW5zdGFsbGluZyBhbmQgZGVpbnN0YWxsaW5nIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorIlR5cGUgZHBrZy1kZWIgLS1oZWxwIHZvb3IgaHVscCBiaWogbWFuaXB1bGVyZW4gdmFuICouZGViIGJlc3RhbmRlbjtcbiIKKyJUeXBlIGRwa2cgLS1oZWxwIHZvb3IgaHVscCBiaWogaW5zdGFsbGVyZW4gZW4gdmVyd2lqZGVyZW4gdmFuIHBha2tldHRlbi4iCisKKyM6IGRwa2ctZGViL21haW4uYzoxNDgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgaW50ZWdlciBmb3IgLSVjOiAnJS4yNTBzJyIKK21zZ3N0ciAib25nZWxkaWcgZ2V0YWwgdm9vciAtLSVzOiBgJS4yNTBzJyIKKworIzogZHBrZy1kZWIvbWFpbi5jOjE1MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjb21wcmVzc2lvbiBsZXZlbCBmb3IgLSVjOiAlbGQnIgorbXNnc3RyICJvbmdlbGRpZyBnZXRhbCB2b29yIC0tJXM6IGAlLjI1MHMnIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTYxCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gY29tcHJlc3Npb24gdHlwZSBgJXMnISIKK21zZ3N0ciAib25iZWtlbmQgY29tcHJlc3NpZXR5cGUgJyVzJyEiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjUyCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBkaWdpdCAoY29kZSAlZCkgaW4gJXMiCittc2dzdHIgImJlc3RhbmQgYCUuMjUwcycgaXMgYmVzY2hhZGlnZCAtIGZvdXRpZWYgY2lqZmVyIChjb2RlICVkKSBpbiAlcyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gJS4yNTBzIG1pc3NpbmciCittc2dzdHIgImJlc3RhbmQgYCUuMjUwcycgaXMgYmVzY2hhZGlnZCAtICUuMjUwcyBvbnRicmVla3QiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjYzCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIG1pc3NpbmcgbmV3bGluZSBhZnRlciAlLjI1MHMiCittc2dzdHIgImJlc3RhbmQgYCUuMjUwcycgaXMgYmVzY2hhZGlnZCAtIG9udGJyZWtlbmRlIG5pZXV3ZSByZWdlbCBuYSAlLjI1MHMiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjg5IGRwa2ctc3BsaXQvbWFpbi5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciByZWFkaW5nICUuMjUwcyIKK21zZ3N0ciAiZm91dCBiaWogc2NocmlqdmVuICUuMjUwcyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTAzCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBtYWdpYyBhdCBlbmQgb2YgZmlyc3QgaGVhZGVyIgorbXNnc3RyICIiCisiYmVzdGFuZCBgJS4yNTBzJyBpcyBiZXNjaGFkaWdkIC0gZm91dGUgbWFnaXNjaGUgY29kZSBuYSBoZXQgZWluZGUgdmFuIGRlICIKKyJlZXJzdGUga29wIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIHBhZGRpbmcgY2hhcmFjdGVyIChjb2RlICVkKSIKK21zZ3N0ciAiYmVzdGFuZCBgJS4yNTBzJyBpcyBiZXNjaGFkaWdkIC0gZm91dGllZiBvcHZ1bHRla2VuIChjb2RlICVkKSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTE3CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIG51bGxzIGluIGluZm8gc2VjdGlvbiIKK21zZ3N0ciAiYmVzdGFuZCBgJS4yNTBzJyBpcyBiZXNjaGFkaWdkIC0gbnVsdGVrZW5zIGluIGluZm9kZWVsIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMjIKKyMsIGZ1enp5Cittc2dpZCAiZm9ybWF0IHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICJ2ZXJzaWVudW1tZXIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGZvcm1hdCB2ZXJzaW9uIGAlLjI1MHMnIC0geW91IG5lZWQgYSBuZXdlciBkcGtnLXNwbGl0IgorbXNnc3RyICIiCisiYmVzdGFuZCBgJS4yNTBzJyBoZWVmdCBpbmRlbGluZyB2ZXJzaWUgYCUuMjUwcycgLSB1IGhlZWZ0IGVlbiBuaWV1d2VyZSBkcGtnLSIKKyJzcGxpdCBub2RpZyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTI3CisjLCBmdXp6eQorbXNnaWQgInBhY2thZ2UgbmFtZSIKK21zZ3N0ciAiIChwYWtrZXQ6ICIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTI4CisjLCBmdXp6eQorbXNnaWQgInBhY2thZ2UgdmVyc2lvbiBudW1iZXIiCittc2dzdHIgInZlcnNpZW51bW1lciIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTI5Cittc2dpZCAicGFja2FnZSBmaWxlIE1ENSBjaGVja3N1bSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIE1ENSBjaGVja3N1bSBgJS4yNTBzJyIKK21zZ3N0ciAiYmVzdGFuZCBgJS4yNTBzJyBpcyBiZXNjaGFkaWdkIC0gZm91dGlldmUgTUQ1IGNvbnRyb2xlc29tIGAlLjI1MHMnIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMzQgZHBrZy1zcGxpdC9pbmZvLmM6MTM1Cittc2dpZCAiYXJjaGl2ZSB0b3RhbCBzaXplIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEzNiBkcGtnLXNwbGl0L2luZm8uYzoxMzcKK21zZ2lkICJhcmNoaXZlIHBhcnQgb2Zmc2V0IgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEzOQorIywgZnV6enkKK21zZ2lkICJhcmNoaXZlIHBhcnQgbnVtYmVycyIKK21zZ3N0ciAidmVyc2llbnVtbWVyIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIG5vIHNsYXNoIGJldHdlZW4gcGFydCBudW1iZXJzIgorbXNnaWQgImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIG5vIHNsYXNoIGJldHdlZW4gYXJjaGl2ZSBwYXJ0IG51bWJlcnMiCittc2dzdHIgImJlc3RhbmQgYCUuMjUwcycgaXMgYmVzY2hhZGlnZCAtIGdlZW4gLyB0dXNzZW4gZGVlbG51bW1lcnMiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE0NQorbXNnaWQgIm51bWJlciBvZiBhcmNoaXZlIHBhcnRzIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE0NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIG51bWJlciBvZiBhcmNoaXZlIHBhcnRzIgorbXNnc3RyICJiZXN0YW5kIGAlLjI1MHMnIGlzIGJlc2NoYWRpZ2QgLSBmb3V0aWVmIGRlZWxudW1tZXIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE0OQorIywgZnV6enkKK21zZ2lkICJhcmNoaXZlIHBhcnRzIG51bWJlciIKK21zZ3N0ciAidmVyc2llbnVtbWVyIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBwYXJ0IG51bWJlciIKK21zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgYXJjaGl2ZSBwYXJ0IG51bWJlciIKK21zZ3N0ciAiYmVzdGFuZCBgJS4yNTBzJyBpcyBiZXNjaGFkaWdkIC0gZm91dGllZiBkZWVsbnVtbWVyIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNTcKKyMsIGZ1enp5Cittc2dpZCAicGFja2FnZSBhcmNoaXRlY3R1cmUiCittc2dzdHIgIiAocGFra2V0OiAiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE2NgorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgbWFnaWMgYXQgZW5kIG9mIHNlY29uZCBoZWFkZXIiCittc2dzdHIgIiIKKyJiZXN0YW5kIGAlLjI1MHMnIGlzIGJlc2NoYWRpZ2QgLSBmb3V0aWV2ZSBtYWdpc2NoZSBjb2RlIGFhbiBlaW5kZSB0d2VlZGUga29wIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gc2Vjb25kIG1lbWJlciBpcyBub3QgZGF0YSBtZW1iZXIiCittc2dzdHIgImJlc3RhbmQgYCUuMjUwcycgaXMgYmVzY2hhZGlnZCAtIHR3ZWVkZSBsaWQgaXMgbmlldCBlZW4gZGF0YWxpZCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTc0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIHdyb25nIG51bWJlciBvZiBwYXJ0cyBmb3IgcXVvdGVkIHNpemVzIgorbXNnc3RyICIiCisiYmVzdGFuZCBgJS4yNTBzJyBpcyBiZXNjaGFkaWdkIC0gZm91dGllZiBudW1tZXIgdm9vciBvbmRlcmRlbGVuIHZvb3IgIgorIm9wZ2VnZXZlbiBncm9vdHRlcyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTc4CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIHNpemUgaXMgd3JvbmcgZm9yIHF1b3RlZCBwYXJ0IG51bWJlciIKK21zZ3N0ciAiIgorImJlc3RhbmQgYCUuMjUwcycgaXMgYmVzY2hhZGlnZCAtIGdyb290dGUgaXMgZm91dCB2b29yIG9wZ2VnZXZlbiBkZWVsbnVtbWVyIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxODQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZzdGF0IHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia2FuIG9uZGVyZGVlbGJlc3RhbmQgYCUuMjUwcycgbmlldCB2aW5kZW4iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE4OQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSB0b28gc2hvcnQiCittc2dzdHIgImJlc3RhbmQgYCUuMjUwcycgaXMgYmVzY2hhZGlnZCAtIHRlIGtvcnQiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjIwMiBkcGtnLXNwbGl0L2luZm8uYzoyNDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IG9wZW4gYXJjaGl2ZSBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgImthbiBhcmNoaWVmb25kZXJkZWVsLCBiZXN0YW5kIGAlLjI1MHMnIG5pZXQgb3BlbmVuIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBub3QgYW4gYXJjaGl2ZSBwYXJ0IgorbXNnc3RyICJiZXN0YW5kIGAlLjI1MHMnIGlzIG5pZXQgZWVuIGFyY2hpZWZvbmRlcmRlZWwiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjIwOQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiVzOlxuIgorI3wgIiAgICBQYXJ0IGZvcm1hdCB2ZXJzaW9uOiAgICAgICAgICAgICVzXG4iCisjfCAiICAgIFBhcnQgb2YgcGFja2FnZTogICAgICAgICAgICAgICAgJXNcbiIKKyN8ICIgICAgICAgIC4uLiB2ZXJzaW9uOiAgICAgICAgICAgICAgICAlc1xuIgorI3wgIiAgICAgICAgLi4uIE1ENSBjaGVja3N1bTogICAgICAgICAgICVzXG4iCisjfCAiICAgICAgICAuLi4gbGVuZ3RoOiAgICAgICAgICAgICAgICAgJWx1IGJ5dGVzXG4iCisjfCAiICAgICAgICAuLi4gc3BsaXQgZXZlcnk6ICAgICAgICAgICAgJWx1IGJ5dGVzXG4iCisjfCAiICAgIFBhcnQgbnVtYmVyOiAgICAgICAgICAgICAgICAgICAgJWQvJWRcbiIKKyN8ICIgICAgUGFydCBsZW5ndGg6ICAgICAgICAgICAgICAgICAgICAlemkgYnl0ZXNcbiIKKyN8ICIgICAgUGFydCBvZmZzZXQ6ICAgICAgICAgICAgICAgICAgICAlbHUgYnl0ZXNcbiIKKyN8ICIgICAgUGFydCBmaWxlIHNpemUgKHVzZWQgcG9ydGlvbik6ICAlbHUgYnl0ZXNcbiIKKyN8ICJcbiIKK21zZ2lkICIiCisiJXM6XG4iCisiICAgIFBhcnQgZm9ybWF0IHZlcnNpb246ICAgICAgICAgICAgJXNcbiIKKyIgICAgUGFydCBvZiBwYWNrYWdlOiAgICAgICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIHZlcnNpb246ICAgICAgICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gYXJjaGl0ZWN0dXJlOiAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiBNRDUgY2hlY2tzdW06ICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIGxlbmd0aDogICAgICAgICAgICAgICAgICVqZCBieXRlc1xuIgorIiAgICAgICAgLi4uIHNwbGl0IGV2ZXJ5OiAgICAgICAgICAgICVqZCBieXRlc1xuIgorIiAgICBQYXJ0IG51bWJlcjogICAgICAgICAgICAgICAgICAgICVkLyVkXG4iCisiICAgIFBhcnQgbGVuZ3RoOiAgICAgICAgICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgIFBhcnQgb2Zmc2V0OiAgICAgICAgICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgIFBhcnQgZmlsZSBzaXplICh1c2VkIHBvcnRpb24pOiAgJWpkIGJ5dGVzXG4iCisiXG4iCittc2dzdHIgIiIKKyIlczpcbiIKKyIgICAgRGVlbCBmb3JtYWF0dmVyc2llOiAgICAgICAgICAgICAgICAgICAgICAgICAgJXNcbiIKKyIgICAgRGVlbCB2YW4gcGFra2V0OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gdmVyc2llOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiBNRDUgY29udHJvbGVzb206ICAgICAgICAgICAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiBsZW5ndGU6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAlbHUgYnl0ZXNcbiIKKyIgICAgICAgIC4uLiBtYWFrIG9wZGVsaW5nIGVsa2U6ICAgICAgICAgICAgICAgICAgICVsdSBieXRlc1xuIgorIiAgICBOdW1tZXIgZGVlbDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICVkLyVkXG4iCisiICAgIExlbmd0ZSBkZWVsOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJXppIGJ5dGVzXG4iCisiICAgIEJlZ2luIGRlZWw6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICVsdSBieXRlc1xuIgorIiAgICBCZXN0YW5kc2dyb290dGUgZGVlbCAoZ2VicnVpa3RlIHN0dWspOiAlbHUgYnl0ZXNcbiIKKyJcbiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjI1CisjLCBmdXp6eQorI3wgbXNnaWQgIjx1bmtub3duPiIKK21zZ2N0eHQgImFyY2hpdGVjdHVyZSIKK21zZ2lkICI8dW5rbm93bj4iCittc2dzdHIgIjxvbmJla2VuZD4iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjI0NCBkcGtnLXNwbGl0L2pvaW4uYzoxMDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgcmVxdWlyZXMgb25lIG9yIG1vcmUgcGFydCBmaWxlIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS1pbmZvIHZlcmVpc3QgZWVuIG9mIG1lZXJkZXJlIG9uZGVyZGVlbGJlc3RhbmRlbiBhbHMgYXJndW1lbnRlbiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjU1CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCVzJyBpcyBub3QgYW4gYXJjaGl2ZSBwYXJ0XG4iCittc2dzdHIgImJlc3RhbmQgYCVzJyBpcyBuaWV0IGVlbiBhcmNoaWVmb25kZXJkZWVsXG4iCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjQ0CisjLCBjLWZvcm1hdAorbXNnaWQgIlB1dHRpbmcgcGFja2FnZSAlcyB0b2dldGhlciBmcm9tICVkIHBhcnQ6ICIKK21zZ2lkX3BsdXJhbCAiUHV0dGluZyBwYWNrYWdlICVzIHRvZ2V0aGVyIGZyb20gJWQgcGFydHM6ICIKK21zZ3N0clswXSAiIgorbXNnc3RyWzFdICIiCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjUxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIG91dHB1dCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrYW4gdWl0dm9lcmJlc3RhbmQgYCUuMjUwcycgbmlldCBvcGVuZW4iCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjU3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byAocmUpb3BlbiBpbnB1dCBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgImthbiBpbnZvZXIgb25kZXJkZWxlbmJlc3RhbmQgYCUuMjUwcycgbmlldCAob3BuaWV1dykgb3BlbmVuIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1OAorIywgZnV6enkKKyN8IG1zZ2lkICJTa2lwcGluZyBkZXNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dpZCAic2tpcHBpbmcgc3BsaXQgcGFja2FnZSBoZWFkZXIiCittc2dzdHIgIk92ZXJzbGFhbiB2YW4gbmlldCBnZXNlbGVjdGVlcmQgcGFra2V0ICVzLlxuIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1OQorIywgZnV6enkKKyN8IG1zZ2lkICJtaXNzaW5nIHBhY2thZ2UiCittc2dpZCAic3BsaXQgcGFja2FnZSBwYXJ0IgorbXNnc3RyICJvbnRicmVrZW5kZSBwYWtrZXRuYWFtIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo2OSBkcGtnLXNwbGl0L3NwbGl0LmM6MjM3CisjLCBjLWZvcm1hdAorbXNnaWQgImRvbmVcbiIKK21zZ3N0ciAia2xhYXJcbiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZXMgYCUuMjUwcycgYW5kIGAlLjI1MHMnIGFyZSBub3QgcGFydHMgb2YgdGhlIHNhbWUgZmlsZSIKK21zZ3N0ciAiIgorImJlc3RhbmRlbiBgJS4yNTBzJyBlbiBgJS4yNTBzJyB6aWpuIGdlZW4gb25kZXJkZWxlbiB2YW4gaGV0IHplbGZkZSBiZXN0YW5kIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo5MAorIywgYy1mb3JtYXQKK21zZ2lkICJ0aGVyZSBhcmUgc2V2ZXJhbCB2ZXJzaW9ucyBvZiBwYXJ0ICVkIC0gYXQgbGVhc3QgYCUuMjUwcycgYW5kIGAlLjI1MHMnIgorbXNnc3RyICJlciB6aWpuIG1lZXJkZXJlIHZlcnNpZXMgdmFuIGRlZWwgJWQgLSB0ZW4gbWluc3RlIGAlLjI1MHMnIGVuIGAlLjI1MHMnIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzoxMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFydCAlZCBpcyBtaXNzaW5nIgorbXNnc3RyICJkZWVsICVkIG9udGJyZWVrdCIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6NDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuIGAlcycgcGFja2FnZSBzcGxpdC9qb2luIHRvb2w7IHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkRlYmlhbiAnJXMnIHBha2tldCBzcGxpdC9zYW1lbnZvZWdwcm9ncmFtbWE7IHZlcnNpZSAlcy5cbiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ29weXJpZ2h0IChDKSAxOTk0LTE5OTYgSWFuIEphY2tzb24uXG4iCittc2dzdHIgIkNvcHlyaWdodCAoQykgMTk5NC0xOTk2IElhbiBKYWNrc29uLlxuIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo2NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtc3wtLXNwbGl0IDxmaWxlPiBbPHByZWZpeD5dICAgICBTcGxpdCBhbiBhcmNoaXZlLlxuIgorIiAgLWp8LS1qb2luIDxwYXJ0PiA8cGFydD4gLi4uICAgICAgSm9pbiBwYXJ0cyB0b2dldGhlci5cbiIKKyIgIC1JfC0taW5mbyA8cGFydD4gLi4uICAgICAgICAgICAgIERpc3BsYXkgaW5mbyBhYm91dCBhIHBhcnQuXG4iCisiICAtYXwtLWF1dG8gLW8gPGNvbXBsZXRlPiA8cGFydD4gICBBdXRvLWFjY3VtdWxhdGUgcGFydHMuXG4iCisiICAtbHwtLWxpc3RxICAgICAgICAgICAgICAgICAgICAgICBMaXN0IHVubWF0Y2hlZCBwaWVjZXMuXG4iCisiICAtZHwtLWRpc2NhcmQgWzxmaWxlbmFtZT4gLi4uXSAgICBEaXNjYXJkIHVubWF0Y2hlZCBwaWVjZXMuXG4iCisiXG4iCittc2dzdHIgIiIKKyJDb21tYW5kb3M6XG4iCisiICAtc3wtLXNwbGl0IDxiZXN0YW5kPiBbPHByZWZpeD5dICAgU3BsaXRzIGVlbiBhcmNoaWVmLlxuIgorIiAgLWp8LS1qb2luIDxkZWVsPiA8ZGVlbD4gLi4uICAgICAgICAgICAgQ29tYmluZWVyIGRlbGVuLlxuIgorIiAgLUl8LS1pbmZvIDxkZWVsPiAuLi4gICAgICAgICAgICAgICAgICAgICAgICAgVG9vbiBpbmZvIG92ZXIgZGVlbC5cbiIKKyIgIC1hfC0tYXV0byAtbyA8Y29tcGxlZXQ+IDxkZWVsPiBBdXRvLWNvbWJpbmVlciBkZWxlbi5cbiIKKyIgIC1sfC0tbGlzdHEgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUb29uIG1pc3NlbmRlIGRlbGVuLlxuIgorIiAgLWR8LS1kaXNjYXJkIFs8YmVzdGFuZD4gLi4uXSAgICAgICAgICBWZXJ3aWpkZXIgbWlzc2VuZGUgZGVsZW4uXG4iCisiXG4iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjgyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiT3B0aW9uczpcbiIKKyN8ICIgIC0tZGVwb3RkaXIgPGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLyVzLlxuIgorI3wgIiAgLVN8LS1wYXJ0c2l6ZSA8c2l6ZT4gICAgICAgICAgICAgSW4gS2lCLCBmb3IgLXMgKGRlZmF1bHQgaXMgNDUwKS5cbiIKKyN8ICIgIC1vfC0tb3V0cHV0IDxmaWxlPiAgICAgICAgICAgICAgIEZvciAtaiAoZGVmYXVsdCBpcyA8cGFja2FnZT4tPHZlcnNpb24+LiIKKyN8ICJkZWIpLlxuIgorI3wgIiAgLVF8LS1ucHF1aWV0ICAgICAgICAgICAgICAgICAgICAgQmUgcXVpZXQgd2hlbiAtYSBpcyBub3QgYSBwYXJ0LlxuIgorI3wgIiAgLS1tc2RvcyAgICAgICAgICAgICAgICAgICAgICAgICAgR2VuZXJhdGUgOC4zIGZpbGVuYW1lcy5cbiIKKyN8ICJcbiIKKyN8ICJFeGl0IHN0YXR1czogMCA9IE9LOyAgMSA9IC1hIGlzIG5vdCBhIHBhcnQ7ICAyID0gdHJvdWJsZSFcbiIKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tZGVwb3RkaXIgPGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLyVzLlxuIgorIiAgLVN8LS1wYXJ0c2l6ZSA8c2l6ZT4gICAgICAgICAgICAgSW4gS2lCLCBmb3IgLXMgKGRlZmF1bHQgaXMgNDUwKS5cbiIKKyIgIC1vfC0tb3V0cHV0IDxmaWxlPiAgICAgICAgICAgICAgIEZpbGVuYW1lLCBmb3IgLWogKGRlZmF1bHQgaXNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhY2thZ2U+Xzx2ZXJzaW9uPl88YXJjaD4uZGViKS5cbiIKKyIgIC1RfC0tbnBxdWlldCAgICAgICAgICAgICAgICAgICAgIEJlIHF1aWV0IHdoZW4gLWEgaXMgbm90IGEgcGFydC5cbiIKKyIgIC0tbXNkb3MgICAgICAgICAgICAgICAgICAgICAgICAgIEdlbmVyYXRlIDguMyBmaWxlbmFtZXMuXG4iCisiXG4iCittc2dzdHIgIiIKKyJPcHRpZXM6XG4iCisiICAgIC0tZGVwb3RkaXIgPG1hcD4gICAgICAgICAgICAgKHN0YW5kYWFyZCBpcyAlcy8lcylcbiIKKyIgICAgLVN8LS1wYXJ0c2l6ZSA8Z3Jvb3R0ZT4gICAgICAoaW4gS2IsIHZvb3IgLXMgaXMgc3RhbmRhYXJkIDQ1MClcbiIKKyIgICAgLW98LS1vdXRwdXQgPGJlc3RhbmQ+ICAgICAgICAodm9vciAtaiBpcyBzdGFuZGFhcmQgPHBha2tldD4tPHZlcnNpZT4uIgorImRlYilcbiIKKyIgICAgLVF8LS1ucHF1aWV0ICAgICAgICAgICAgICAgICAoc3RpbCBhbHMgLWEgbmlldCBlZW4gZGVlbCBpcylcbiIKKyIgICAgLS1tc2RvcyAgICAgICAgICAgICAgICAgICAgICAoZ2VuZXJlZXIgOC4zIGJlc3RhbmRzbmFtZW4pXG4iCisiXG4iCisiVWl0Z2FuZy1zdGF0dXM6IDAgPSBPSzsgIDEgPSAtYSBpcyBnZWVuIGRlZWw7ICAyID0gbW9laWxpamtoZWRlbiFcbiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6OTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkV4aXQgc3RhdHVzOlxuIgorIiAgMCA9IG9rXG4iCisiICAxID0gd2l0aCAtLWF1dG8sIGZpbGUgaXMgbm90IGEgcGFydFxuIgorIiAgMiA9IHRyb3VibGVcbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMDMKK21zZ2lkICJUeXBlIGRwa2ctc3BsaXQgLS1oZWxwIGZvciBoZWxwLiIKK21zZ3N0ciAiVHlwZSBkcGtnLXNwbGl0IC0taGVscCB2b29yIGh1bHAuIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgZmlsZSBpbiAlLjI1MHMiCittc2dzdHIgIm9udmVyd2FjaHRzIGJlc3RhbmRzZWluZGUgaW4gJS4yNTBzIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMjYKK21zZ2lkICJwYXJ0IHNpemUgaXMgZmFyIHRvbyBsYXJnZSBvciBpcyBub3QgcG9zaXRpdmUiCittc2dzdHIgImRlZWwgaXMgdGUgZ3Jvb3Qgb2YgbmlldCBwb3NpdGllZiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6MTMwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJwYXJ0IHNpemUgbXVzdCBiZSBhdCBsZWFzdCAlZCBLaUIgKHRvIGFsbG93IGZvciBoZWFkZXIpIgorbXNnc3RyICJkZWVsIG1vZXQgdGVuIG1pbnN0ZSAlZGsgZ3Jvb3QgemlqbiAodm9vciBpbmZvcm1hdGllKSIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjkwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIGRlcG90IGRpcmVjdG9yeSBgJS4yNTBzJyIKK21zZ3N0ciAia2FuIGRlcG90IG1hcCBgJS4yNTBzJyBuaWV0IGxlemVuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTM0Cittc2dpZCAiLS1hdXRvIHJlcXVpcmVzIHRoZSB1c2Ugb2YgdGhlIC0tb3V0cHV0IG9wdGlvbiIKK21zZ3N0ciAiLS1hdXRvIHZlcmVpc3QgaGV0IGdlYnJ1aWsgdmFuIGRlIC0tb3V0cHV0IG9wdGllIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTM2Cittc2dpZCAiLS1hdXRvIHJlcXVpcmVzIGV4YWN0bHkgb25lIHBhcnQgZmlsZSBhcmd1bWVudCIKK21zZ3N0ciAiLS1hdXRvIHZlcmVpc3QgcHJlY2llcyBlZW4gZGVlbGJlc3RhbmQgYWxzIGFyZ3VtZW50IgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTQwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia2FuIGRlZWxiZXN0YW5kIGAlLjI1MHMnIG5pZXQgbGV6ZW4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxNDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiRmlsZSBgJS4yNTBzJyBpcyBub3QgcGFydCBvZiBhIG11bHRpcGFydCBhcmNoaXZlLlxuIgorbXNnc3RyICJCZXN0YW5kIGAlLjI1MHMnIGlzIGdlZW4gb25kZXJkZWVsIHZhbiBlZW4gbWVlcmRlbGlnIGFyY2hpZWYuXG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlb3BlbiBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgImthbiBkZWVsYmVzdGFuZCBgJS4yNTBzJyBuaWV0IG9wbmlldXcgb3BlbmVuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTgyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIG5ldyBkZXBvdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrYW4gbmlldXcgZGVwb3RiZXN0YW5kIGAlLjI1MHMnIG5pZXQgb3BlbmVuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTg0Cittc2dpZCAiZXh0cmFjdGluZyBzcGxpdCBwYXJ0IgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbmFtZSBuZXcgZGVwb3QgZmlsZSBgJS4yNTBzJyB0byBgJS4yNTBzJyIKK21zZ3N0ciAia2FuIG5pZXV3ZSBkZXBvdGJlc3RhbmQgbmlldCBoZXJub2VtZW4gdmFuIGAlLjI1MHMnIG5hYXIgYCUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFydCAlZCBvZiBwYWNrYWdlICVzIGZpbGVkIChzdGlsbCB3YW50ICIKK21zZ3N0ciAiRGVlbCAlZCB2YW4gcGFra2V0ICVzIG9wZ2VzbGFnZW4gKGlrIHdpbCBub2cgIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjAwCittc2dpZCAiIGFuZCAiCittc2dzdHIgIiBlbiAiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSB1c2VkLXVwIGRlcG90IGZpbGUgYCUuMjUwcyciCittc2dzdHIgImthbiBnZWJydWlrdCBkZXBvdGJlc3RhbmQgYCUuMjUwcycgbmlldCB2ZXJ3aWpkZXJlbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjIzNQorbXNnaWQgIkp1bmsgZmlsZXMgbGVmdCBhcm91bmQgaW4gdGhlIGRlcG90IGRpcmVjdG9yeTpcbiIKK21zZ3N0ciAiUm9tbWVsIGFjaHRlcmdlbGF0ZW4gaW4gZGUgZGVwb3RtYXA6XG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNDAgZHBrZy1zcGxpdC9xdWV1ZS5jOjI2OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBgJS4yNTBzJyIKK21zZ3N0ciAia2FuIGAlLjI1MHMnIG5pZXQgb3B2cmFnZW4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNDMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiAlcyAoJWx1IGJ5dGVzKVxuIgorbXNnaWQgIiAlcyAoJWpkIGJ5dGVzKVxuIgorbXNnc3RyICIgJXMgKCVsdSBieXRlcylcbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI0NQorIywgYy1mb3JtYXQKK21zZ2lkICIgJXMgKG5vdCBhIHBsYWluIGZpbGUpXG4iCittc2dzdHIgIiAlcyAobmlldCBlZW4gZ2V3b29uIGJlc3RhbmQpXG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNTAKK21zZ2lkICJQYWNrYWdlcyBub3QgeWV0IHJlYXNzZW1ibGVkOlxuIgorbXNnc3RyICJOb2cgbmlldCBzYW1lbmdldm9lZ2RlIHBha2tldHRlbjpcbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI1OAorIywgYy1mb3JtYXQKK21zZ2lkICIgUGFja2FnZSAlczogcGFydChzKSAiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI3MQorIywgYy1mb3JtYXQKK21zZ2lkICJwYXJ0IGZpbGUgYCUuMjUwcycgaXMgbm90IGEgcGxhaW4gZmlsZSIKK21zZ3N0ciAiZGVlbGJlc3RhbmQgYCUuMjUwcycgaXMgbmlldCBlZW4gZ2V3b29uIGJlc3RhbmQiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNzgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIih0b3RhbCAlbHUgYnl0ZXMpXG4iCittc2dpZCAiKHRvdGFsICVqZCBieXRlcylcbiIKK21zZ3N0ciAiKHRvdGFhbCAlbHUgYnl0ZXMpXG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzozMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRpc2NhcmQgYCUuMjUwcyciCittc2dzdHIgImthbiBgJS4yNTBzJyBuaWV0IHdlZ2RvZW4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzozMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGVsZXRlZCAlcy5cbiIKK21zZ3N0ciAiJXMgdmVyd2lqZGVyZC5cbiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjcwIGRwa2ctc3BsaXQvc3BsaXQuYzo3NiBkcGtnLXNwbGl0L3NwbGl0LmM6ODEKK21zZ2lkICJwYWNrYWdlIGZpZWxkIHZhbHVlIGV4dHJhY3Rpb24iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjEzMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBzb3VyY2UgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia2FuIGJyb25iZXN0YW5kIGAlLjI1MHMnIG5pZXQgb3BlbmVuIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTMzCittc2dpZCAidW5hYmxlIHRvIGZzdGF0IHNvdXJjZSBmaWxlIgorbXNnc3RyICJrYW4gYnJvbmJlc3RhbmQgbmlldCAnZnN0YXQnLWVuIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTM1CisjLCBjLWZvcm1hdAorbXNnaWQgInNvdXJjZSBmaWxlIGAlLjI1MHMnIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgImJyb25iZXN0YW5kIGAlLjI1MHMnIGlzIGdlZW4gZ2V3b29uIGJlc3RhbmQiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxNTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiU3BsaXR0aW5nIHBhY2thZ2UgJXMgaW50byAlZCBwYXJ0OiAiCittc2dpZF9wbHVyYWwgIlNwbGl0dGluZyBwYWNrYWdlICVzIGludG8gJWQgcGFydHM6ICIKK21zZ3N0clswXSAiIgorbXNnc3RyWzFdICIiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxOTMKK21zZ2lkICIiCisiSGVhZGVyIGlzIHRvbyBsb25nLCBtYWtpbmcgcGFydCB0b28gbG9uZy4gWW91ciBwYWNrYWdlIG5hbWUgb3IgdmVyc2lvblxuIgorIm51bWJlcnMgbXVzdCBiZSBleHRyYW9yZGluYXJpbHkgbG9uZywgb3Igc29tZXRoaW5nLiBHaXZpbmcgdXAuXG4iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjI0OQorbXNnaWQgIi0tc3BsaXQgbmVlZHMgYSBzb3VyY2UgZmlsZW5hbWUgYXJndW1lbnQiCittc2dzdHIgIi0tc3BsaXQgdmVyd2FjaHQgZWVuIGJyb25iZXN0YW5kIGFscyBhcmd1bWVudCIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjI1MgorbXNnaWQgIi0tc3BsaXQgdGFrZXMgYXQgbW9zdCBhIHNvdXJjZSBmaWxlbmFtZSBhbmQgZGVzdGluYXRpb24gcHJlZml4IgorbXNnc3RyICItLXNwbGl0IHZlcndhY2h0IGhvb2dzdGVucyBlZW4gYnJvbmJlc3RhbmQgZW4gZG9lbHByZWZpeCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjg0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiXG4iCisjfCAiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorI3wgIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uIgorbXNnaWQgIiIKKyJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLTIwMDIgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDktMjAxMCBSYXBoYWVsIEhlcnR6b2cuXG4iCittc2dzdHIgIiIKKyJcbiIKKyJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMDEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC0taW5zdGFsbCA8bGluaz4gPG5hbWU+IDxwYXRoPiA8cHJpb3JpdHk+XG4iCisiICAgIFstLXNsYXZlIDxsaW5rPiA8bmFtZT4gPHBhdGg+XSAuLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBhZGQgYSBncm91cCBvZiBhbHRlcm5hdGl2ZXMgdG8gdGhlIHN5c3RlbS5cbiIKKyIgIC0tcmVtb3ZlIDxuYW1lPiA8cGF0aD4gICByZW1vdmUgPHBhdGg+IGZyb20gdGhlIDxuYW1lPiBncm91cCBhbHRlcm5hdGl2ZS5cbiIKKyIgIC0tcmVtb3ZlLWFsbCA8bmFtZT4gICAgICByZW1vdmUgPG5hbWU+IGdyb3VwIGZyb20gdGhlIGFsdGVybmF0aXZlcyAiCisic3lzdGVtLlxuIgorIiAgLS1hdXRvIDxuYW1lPiAgICAgICAgICAgIHN3aXRjaCB0aGUgbWFzdGVyIGxpbmsgPG5hbWU+IHRvIGF1dG9tYXRpYyBtb2RlLlxuIgorIiAgLS1kaXNwbGF5IDxuYW1lPiAgICAgICAgIGRpc3BsYXkgaW5mb3JtYXRpb24gYWJvdXQgdGhlIDxuYW1lPiBncm91cC5cbiIKKyIgIC0tcXVlcnkgPG5hbWU+ICAgICAgICAgICBtYWNoaW5lIHBhcnNlYWJsZSB2ZXJzaW9uIG9mIC0tZGlzcGxheSA8bmFtZT4uXG4iCisiICAtLWxpc3QgPG5hbWU+ICAgICAgICAgICAgZGlzcGxheSBhbGwgdGFyZ2V0cyBvZiB0aGUgPG5hbWU+IGdyb3VwLlxuIgorIiAgLS1nZXQtc2VsZWN0aW9ucyAgICAgICAgIGxpc3QgbWFzdGVyIGFsdGVybmF0aXZlIG5hbWVzIGFuZCB0aGVpciBzdGF0dXMuXG4iCisiICAtLXNldC1zZWxlY3Rpb25zICAgICAgICAgcmVhZCBhbHRlcm5hdGl2ZSBzdGF0dXMgZnJvbSBzdGFuZGFyZCBpbnB1dC5cbiIKKyIgIC0tY29uZmlnIDxuYW1lPiAgICAgICAgICBzaG93IGFsdGVybmF0aXZlcyBmb3IgdGhlIDxuYW1lPiBncm91cCBhbmQgYXNrICIKKyJ0aGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2VyIHRvIHNlbGVjdCB3aGljaCBvbmUgdG8gdXNlLlxuIgorIiAgLS1zZXQgPG5hbWU+IDxwYXRoPiAgICAgIHNldCA8cGF0aD4gYXMgYWx0ZXJuYXRpdmUgZm9yIDxuYW1lPi5cbiIKKyIgIC0tYWxsICAgICAgICAgICAgICAgICAgICBjYWxsIC0tY29uZmlnIG9uIGFsbCBhbHRlcm5hdGl2ZXMuXG4iCisiXG4iCittc2dzdHIgIiIKKyJHZWJydWlrOiAlcyBbPG9wdGllPiAuLi5dIDxjb21tYW5kbz5cbiIKKyJcbiIKKyJDb21tYW5kbydzOlxuIgorIiAgLS1pbnN0YWxsIDxsaW5rPiA8bmFhbT4gPHBhZD4gPHByaW9yaXRlaXQ+XG4iCisiICAgIFstLXNsYXZlIDxsaW5rPiA8bmFhbT4gPHBhZD5dIC4uLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHZvZWd0IGVlbiBncm9lcCB2YW4gYWx0ZXJuYXRpZXZlbiB0b2UgYWFuIGhldCAiCisic3lzdGVlbS5cbiIKKyIgIC0tcmVtb3ZlIDxuYWFtPiA8cGFkPiB2ZXJ3aWpkZXJkIDxwYWQ+IHZhbiBkZSBncm9lcCBhbHRlcm5hdGlldmVuIGdlbmFhbWQgIgorIjxuYWFtPi5cbiIKKyIgIC0tcmVtb3ZlLWFsbCA8bmFhbT4gICAgICAgIHZlcndpamRlcmQgPG5hYW0+LWdyb2VwIHZhbiBoZXQgYWx0ZXJuYXRpZXZlbi0iCisic3lzdGVlbS5cbiIKKyIgIC0tYXV0byA8bmFhbT4gICAgICAgICAgICAgICAgICB6ZXQgZGUgaG9vZmRsaW5rIDxuYWFtPiBvbSBuYWFyICIKKyJhdXRvbWF0aXNjaGUgbW9kdXMuXG4iCisiICAtLWRpc3BsYXkgPG5hYW0+ICAgICAgICAgICAgICB0b29udCBpbmZvcm1hdGllIG92ZXIgZGUgPG5hYW0+LWdyb2VwLlxuIgorIiAgLS1saXN0IDxuYWFtPiAgICAgICAgICAgICAgICAgICAgIHRvb250IGluZm9ybWF0aWUgb3ZlciBhbGxlIGRvZWxlbiBpbiBkZSAiCisiPG5hYW0+LWdyb2VwLlxuIgorIiAgLS1jb25maWcgPG5hYW0+ICAgICAgICAgICAgICAgdG9vbnQgYWxsZSBhbHRlcm5hdGlldmVuIHZvb3IgZGUgPG5hYW0+LSIKKyJncm9lcCBlbiB2cmFhZ3QgZGUgXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZWJydWlrZXIgd2Vsa2UgdGUgIgorImdlYnJ1aWtlbi5cbiIKKyIgIC0tc2V0IDxuYWFtPiA8cGFkPiAgICAgICBzdGVsdCA8cGFkPiBpbiBhbHMgYWx0ZXJuYXRpZWYgdm9vciA8bmFhbT4uXG4iCisiICAtLWFsbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvZXB0IC0tY29uZmlnIGFhbiB2b29yIGFsbGUgIgorImFsdGVybmF0aWV2ZW4uXG4iCisiXG4iCisiPGxpbms+IGlzIGRlIGxpbmsgZGllIHZlcndpanN0IG5hYXIgJXMvPG5hYW0+XG4iCisiICAodmIuIC91c3IvYmluL3BhZ2VyKS5cbiIKKyI8bmFhbT4gaXMgZGUgbmFhbSBpbiAvZXRjL2FsdGVybmF0aXZlc1xuIgorIiAgKHZiLiBwYWdlcikuXG4iCisiPHBhZD4gaXMgZGUgbmFhbSB3YWFybmFhciB2ZXJ3ZXplbiB3b3JkdFxuIgorIiAgKHZiLiAvdXNyL2Jpbi9sZXNzKS5cbiIKKyI8cHJpb3JpdGVpdD4gaXMgZWVuIGludGVnZXIgZ2V0YWw7IG9wdGllcyBtZXQgaG9nZXJlIG51bW1lcnMgaGViYmVuXG4iCisiICBob2dlcmUgcHJpb3JpdGVpdCBpbiBhdXRvbWF0aXNjaGUgbW9kdXMuXG4iCisiXG4iCisiT3B0aWVzOlxuIgorIiAgLS1hbHRkaXIgPG1hcD4gICAgICAgdmVyYW5kZXIgZGUgYWx0ZXJuYXRpZXZlbi1tYXAuXG4iCisiICAtLWFkbWluZGlyIDxtYXA+IHZlcmFuZGVyIGRlIGFkbWluaXN0cmF0aWV2ZSBtYXAuXG4iCisiICAtLXRlc3QgICAgICAgICAgICAgICAgICAgICAgIGRvZSBuaWtzLCB0b29uIGVua2VsIHdhdCBnZWRhYW4gem91IHdvcmRlbi5cbiIKKyIgIC0tdmVyYm9zZSAgICAgICAgICAgICAgICAgbHVpZHJ1Y2h0aWdlIG9wZXJhdGllLCBtZWVyIHVpdHZvZXIuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgICAgIHN0aWxsZSBvcGVyYXRpZSwgbWluaW1hbGUgdWl0dm9lci5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICAgICAgdG9vbiBkZXplIGhlbHBib29kc2NoYXAuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgICB0b29uIGRlIHZlcnNpZS5cbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiPGxpbms+IGlzIHRoZSBzeW1saW5rIHBvaW50aW5nIHRvICVzLzxuYW1lPi5cbiIKKyIgIChlLmcuIC91c3IvYmluL3BhZ2VyKVxuIgorIjxuYW1lPiBpcyB0aGUgbWFzdGVyIG5hbWUgZm9yIHRoaXMgbGluayBncm91cC5cbiIKKyIgIChlLmcuIHBhZ2VyKVxuIgorIjxwYXRoPiBpcyB0aGUgbG9jYXRpb24gb2Ygb25lIG9mIHRoZSBhbHRlcm5hdGl2ZSB0YXJnZXQgZmlsZXMuXG4iCisiICAoZS5nLiAvdXNyL2Jpbi9sZXNzKVxuIgorIjxwcmlvcml0eT4gaXMgYW4gaW50ZWdlcjsgb3B0aW9ucyB3aXRoIGhpZ2hlciBudW1iZXJzIGhhdmUgaGlnaGVyIHByaW9yaXR5ICIKKyJpblxuIgorIiAgYXV0b21hdGljIG1vZGUuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzMQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFsdGRpciA8ZGlyZWN0b3J5PiAgICAgY2hhbmdlIHRoZSBhbHRlcm5hdGl2ZXMgZGlyZWN0b3J5LlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIGNoYW5nZSB0aGUgYWRtaW5pc3RyYXRpdmUgZGlyZWN0b3J5LlxuIgorIiAgLS1sb2cgPGZpbGU+ICAgICAgICAgICAgIGNoYW5nZSB0aGUgbG9nIGZpbGUuXG4iCisiICAtLWZvcmNlICAgICAgICAgICAgICAgICAgYWxsb3cgcmVwbGFjaW5nIGZpbGVzIHdpdGggYWx0ZXJuYXRpdmUgbGlua3MuXG4iCisiICAtLXNraXAtYXV0byAgICAgICAgICAgICAgc2tpcCBwcm9tcHQgZm9yIGFsdGVybmF0aXZlcyBjb3JyZWN0bHkgIgorImNvbmZpZ3VyZWRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBhdXRvbWF0aWMgbW9kZSAocmVsZXZhbnQgZm9yIC0tY29uZmlnIG9ubHkpXG4iCisiICAtLXZlcmJvc2UgICAgICAgICAgICAgICAgdmVyYm9zZSBvcGVyYXRpb24sIG1vcmUgb3V0cHV0LlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHF1aWV0IG9wZXJhdGlvbiwgbWluaW1hbCBvdXRwdXQuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorbXNnc3RyICIiCisiR2VicnVpazogJXMgWzxvcHRpZT4gLi4uXSA8Y29tbWFuZG8+XG4iCisiXG4iCisiQytvbW1hbmRvJ3M6XG4iCisiICAtLWFkZCA8ZWlnZW5hYXI+IDxncm9lcD4gPG1vZHVzPiA8YmVzdGFuZD5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdm9lZyBlZW4gbmlldXdlIGluZ2FuZyB0b2UgYWFuIGRlICIKKyJkYXRhYmFzZS5cbiIKKyIgIC0tcmVtb3ZlIDxiZXN0YW5kPiAgICB2ZXJ3aWpkZXIgYmVzdGFuZCB1aXQgZGUgZGF0YWJhc2UuXG4iCisiICAtLWxpc3QgWzxnbG9iLXBhdHJvb24+XSAgdG9vbiBkZSBvdmVyc3RpamdpbmdlbiBkaWUgbW9tZW50ZWVsIGluIGRlICIKKyJkYXRhYmFzZSB6aXR0ZW4uXG4iCisiXG4iCisiT3B0aWVzOlxuIgorIiAgLS1hZG1pbmRpciA8bWFwPiBzdGVsIGRlIG1hcCBtZXQgaGV0ICdzdGF0b3ZlcnJpZGUnLWJlc3RhbmQgaW4uXG4iCisiICAtLXVwZGF0ZSAgICAgICAgICAgICAgICAgYmVzdGFuZHNyZWNodGVuIG9ubWlkZGVsbGlqayBiaWp3ZXJrZW4uXG4iCisiICAtLWZvcmNlICAgICAgICAgICAgICAgICAgICAgYWN0aWUgYWZkd2luZ2VuIHplbGZzIGFscyBkZSBnZXpvbmRoZWlkLWNoZWNrICIKKyJtaXNsdWt0LlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgICAgIHN0aWxsZSBvcGVyYXRpZSwgbWluaW1hbGUgdWl0dm9lci5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICAgICB0b29uIGRlemUgaGVscGJvb2RzY2hhcC5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgdG9vbiBkZSB2ZXJzaWUuXG4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE2MworIywgZnV6enkKKyN8IG1zZ2lkICJwYXJzZSBlcnJvciIKK21zZ2lkICJlcnJvciIKK21zZ3N0ciAib250bGVlZGZvdXQiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxOTMKK21zZ2lkICJ3YXJuaW5nIgorbXNnc3RyICJ3YWFyc2NodXdpbmciCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzozNTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInR3byBjb21tYW5kcyBzcGVjaWZpZWQ6IC0tJXMgYW5kIC0tJXMiCittc2dzdHIgInR3ZWUgbW9kZXMgb3BnZWdldmVuOiAlcyBlbiAtLSVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6Mzg3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW5ub3Qgb3BlbiBkaXZlcnNpb25zOiAlcyIKK21zZ2lkICJjYW5ub3QgYXBwZW5kIHRvICclcyciCittc2dzdHIgImthbiBvbWxlaWRpbmdlbi1iZXN0YW5kIG5pZXQgb3BlbmVuOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjU1NgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHJlbW92ZSAlczogJXMiCittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSAnJXMnIgorbXNnc3RyICJ2ZXJ3aWpkZXJlbiB2YW4gJXMgaXMgbWlzbHVrdDogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTExCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBmaWxlIHdoaWxlIHRyeWluZyB0byByZWFkICVzIgorbXNnc3RyICJvbnZlcndhY2h0IGJlc3RhbmRzZWluZGUgaW4gJXMgb3AgJS4yNTVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTExMworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAid2hpbGUgcmVhZGluZyAlczogJXMiCittc2dzdHIgImthbiAlcyBuaWV0IGxlemVuOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImxpbmUgbm90IHRlcm1pbmF0ZWQgd2hpbGUgdHJ5aW5nIHRvIHJlYWQgJXMiCittc2dzdHIgIm9udmVyd2FjaHQgYmVzdGFuZHNlaW5kZSBpbiAlcyBvcCAlLjI1NXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTM3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlcyBjb3JydXB0OiAlcyIKK21zZ3N0ciAiaW50ZXJuZSBmb3V0OiAlcyBpcyBjb3JydXB0OiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAibmV3bGluZXMgcHJvaGliaXRlZCBpbiB1cGRhdGUtYWx0ZXJuYXRpdmVzIGZpbGVzICglcykiCittc2dzdHIgIiIKKyJyZWdlbGVpbmRlbiB6aWpuIG5pZXQgdG9lZ2VsYXRlbiBpbiAndXBkYXRlLWFsdGVybmF0aXZlcyctYmVzdGFuZGVuICglcykiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTYzCittc2dpZCAic2xhdmUgbmFtZSIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE3MSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQwNQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZHVwbGljYXRlIHNsYXZlICVzIgorbXNnaWQgImR1cGxpY2F0ZSBzbGF2ZSBuYW1lICVzIgorbXNnc3RyICJkdWJiZWxlICdzbGF2ZScgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTc0CisjLCBmdXp6eQorbXNnaWQgInNsYXZlIGxpbmsiCittc2dzdHIgImR1YmJlbGUgJ3NsYXZlJy1saW5rICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE3OAorIywgYy1mb3JtYXQKK21zZ2lkICJzbGF2ZSBsaW5rIHNhbWUgYXMgbWFpbiBsaW5rICVzIgorbXNnc3RyICJzbGFhZi1saW5rIGlzIGdlbGlqayBhYW4gaG9vZmRsaW5rICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE4NSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQxMgorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgc2xhdmUgbGluayAlcyIKK21zZ3N0ciAiZHViYmVsZSAnc2xhdmUnLWxpbmsgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjA0Cittc2dpZCAibWFzdGVyIGZpbGUiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHBhdGggJXMiCittc2dzdHIgImR1YmJlbCBwYWQgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjI2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiYWx0ZXJuYXRpdmUgJXMgKHBhcnQgb2YgbGluayBncm91cCAlcykgZG9lc24ndCBleGlzdC4gUmVtb3ZpbmcgZnJvbSBsaXN0IG9mICIKKyJhbHRlcm5hdGl2ZXMuIgorbXNnc3RyICIiCisiQWx0ZXJuYXRpZWYgdm9vciAlcyB2ZXJ3aWpzdCBuYWFyICVzIC0gd2F0IG5pZXQgZ2V2b25kZW4gaXMsIFdvcmR0ICIKKyJ2ZXJ3aWpkZXJkIHZhbiBsaWpzdCB2YW4gYWx0ZXJuYXRpZXZlbi4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjI5IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjQwCisjLCBmdXp6eQorbXNnaWQgInByaW9yaXR5IgorbXNnc3RyICJwcmlvcml0ZWl0ICVzICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIzMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI0OQorbXNnaWQgInNsYXZlIGZpbGUiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyNDQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInByaW9yaXR5IG9mICVzOiAlcyIKK21zZ3N0ciAicHJpb3JpdGVpdCAlcyAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyOTcKK21zZ2lkICJzdGF0dXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyOTkKK21zZ2lkICJpbnZhbGlkIHN0YXR1cyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTMwNAorIywgZnV6enkKK21zZ2lkICJtYXN0ZXIgbGluayIKK21zZ3N0ciAiZHViYmVsZSAnc2xhdmUnLWxpbmsgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzQ4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJkaXNjYXJkaW5nIG9ic29sZXRlIHNsYXZlIGxpbmsgJXMgKCVzKS4iCittc2dzdHIgIlZlcm91ZGVyZGUgc2xhYWYtbGluayAlcyB3b3JkdCB3ZWdnZWdvb2lkICglcykuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2OQorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MzgKK21zZ2lkICJhdXRvIG1vZGUiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MDIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NzgKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjM5Cittc2dpZCAibWFudWFsIG1vZGUiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiAgbGluayBjdXJyZW50bHkgcG9pbnRzIHRvICVzIgorbXNnc3RyICJsaW5rIHZlcndpanN0IG1vbWVudGVlbCBuYWFyICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwOAorIywgZnV6enkKK21zZ2lkICIgIGxpbmsgY3VycmVudGx5IGFic2VudCIKK21zZ3N0ciAibGluayBpcyBtb21lbnRlZWwgYWZ3ZXppZyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiVzIC0gcHJpb3JpdHkgJXMiCittc2dpZCAiJXMgLSBwcmlvcml0eSAlZCIKK21zZ3N0ciAiJXMgLSBwcmlvcml0ZWl0ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUxNQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiICBzbGF2ZSAlczogJXMiCittc2dzdHIgInNsYWFmICVzOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MjIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIkN1cnJlbnQgJ2Jlc3QnIHZlcnNpb24gaXMgJyVzJy4iCittc2dzdHIgIkh1aWRnZSAnYmVzdGUnIHZlcnNpZSBpcyAlcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTI0Cittc2dpZCAiTm8gdmVyc2lvbnMgYXZhaWxhYmxlLiIKK21zZ3N0ciAiR2VlbiB2ZXJzaWVzIGJlc2NoaWtiYWFyIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU1MworIywgYy1mb3JtYXQKK21zZ2lkICJUaGVyZSBpcyAlZCBjaG9pY2UgZm9yIHRoZSBhbHRlcm5hdGl2ZSAlcyAocHJvdmlkaW5nICVzKS4iCittc2dpZF9wbHVyYWwgIlRoZXJlIGFyZSAlZCBjaG9pY2VzIGZvciB0aGUgYWx0ZXJuYXRpdmUgJXMgKHByb3ZpZGluZyAlcykuIgorbXNnc3RyWzBdICIiCittc2dzdHJbMV0gIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NjAKKyMsIGZ1enp5Cittc2dpZCAiU2VsZWN0aW9uIgorbXNnc3RyICJPbXNjaHJpanZpbmciCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYxCittc2dpZCAiUGF0aCIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2MQorIywgZnV6enkKK21zZ2lkICJQcmlvcml0eSIKK21zZ3N0ciAicHJpb3JpdGVpdCAlcyAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NjEKK21zZ2lkICJTdGF0dXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1ODIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIlByZXNzIGVudGVyIHRvIGtlZXAgdGhlIGN1cnJlbnQgY2hvaWNlWypdLCBvciB0eXBlIHNlbGVjdGlvbiBudW1iZXI6ICIKK21zZ3N0ciAiIgorImRydWsgZW50ZXIgb20gZGUgc3RhbmRhYXJkd2FhcmRlIFsqXSB0ZSBiZWhvdWRlbiwgb2YgIGdlZWYgaGV0ICIKKyJzZWxlY3RpZW51bWJlciBpbjogIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTcyMQorIywgYy1mb3JtYXQKK21zZ2lkICJub3QgcmVwbGFjaW5nICVzIHdpdGggYSBsaW5rLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTc2MgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW4ndCBpbnN0YWxsIHVua25vd24gY2hvaWNlICVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNzgwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJza2lwIGNyZWF0aW9uIG9mICVzIGJlY2F1c2UgYXNzb2NpYXRlZCBmaWxlICVzIChvZiBsaW5rIGdyb3VwICVzKSBkb2Vzbid0ICIKKyJleGlzdC4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IHJlbW92aW5nICVzIHNpbmNlIGl0J3Mgbm90IGEgc3ltbGluay4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNDEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2FsbCAlcy4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiQWx0ZXJuYXRpdmUgJXMgdW5jaGFuZ2VkIGJlY2F1c2UgY2hvaWNlICVzIGlzIG5vdCBhdmFpbGFibGUuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDU1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJTa2lwIHVua25vd24gYWx0ZXJuYXRpdmUgJXMuIgorbXNnc3RyICJLYW4gZ2VlbiBhbHRlcm5hdGllZiAnJXMnIHZpbmRlbi4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDc3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJsaW5lIHRvbyBsb25nIG9yIG5vdCB0ZXJtaW5hdGVkIHdoaWxlIHRyeWluZyB0byByZWFkICVzIgorbXNnc3RyICJvbnZlcndhY2h0IGJlc3RhbmRzZWluZGUgaW4gJXMgb3AgJS4yNTVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA5MCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjEwMworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2tpcCBpbnZhbGlkIGxpbmU6ICVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTMyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJyZW5hbWluZyAlcyBsaW5rIGZyb20gJXMgdG8gJXMuIgorbXNnc3RyICIlcy1saW5rIHdvcmR0IGhlcm5vZW10IHZhbiAlcyBuYWFyICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxNzMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInJlbmFtaW5nICVzIHNsYXZlIGxpbmsgZnJvbSAlcyB0byAlcy4iCittc2dzdHIgIlNsYWFmLWxpbmsgJXMgd29yZHQgaGVybm9lbXQgdmFuICVzIG5hYXIgJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE4OQorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBuYW1lICglcykgbXVzdCBub3QgY29udGFpbiAnLycgYW5kIHNwYWNlcy4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgbGluayBpcyBub3QgYWJzb2x1dGUgYXMgaXQgc2hvdWxkIGJlOiAlcyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE5NworIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBwYXRoIGlzIG5vdCBhYnNvbHV0ZSBhcyBpdCBzaG91bGQgYmU6ICVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjI0CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlICVzIGNhbid0IGJlIG1hc3RlcjogaXQgaXMgYSBzbGF2ZSBvZiAlcyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjIzMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI2NworIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBsaW5rICVzIGlzIGFscmVhZHkgbWFuYWdlZCBieSAlcy4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNDEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIHBhdGggJXMgZG9lc24ndCBleGlzdC4iCittc2dzdHIgIndhYXJzY2h1d2luZzogLS11cGRhdGUgaXMgb3BnZWdldmVuIG1hYXIgJXMgYmVzdGFhdCBuaWV0IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI1NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgc2xhdmUgb2YgJXM6IGl0IGlzIGEgbWFzdGVyIGFsdGVybmF0aXZlLiIKK21zZ3N0ciAiIgorIkFsdGVybmF0aWVmIHZvb3IgJXMgdmVyd2lqc3QgbmFhciAlcyAtIHdhdCBuaWV0IGdldm9uZGVuIGlzLCBXb3JkdCAiCisidmVyd2lqZGVyZCB2YW4gbGlqc3QgdmFuIGFsdGVybmF0aWV2ZW4uIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI1OAorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBzbGF2ZSBvZiAlczogaXQgaXMgYSBzbGF2ZSBvZiAlcyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI3OAorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBsaW5rICVzIGlzIGFscmVhZHkgbWFuYWdlZCBieSAlcyAoc2xhdmUgb2YgJXMpLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjMyNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGFyZ3VtZW50IGAlcyciCittc2dzdHIgIm9uYmVrZW5kIGFyZ3VtZW50ICclcyciCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzQzCittc2dpZCAiLS1pbnN0YWxsIG5lZWRzIDxsaW5rPiA8bmFtZT4gPHBhdGg+IDxwcmlvcml0eT4iCittc2dzdHIgIi0taW5zdGFsbCBoZWVmdCA8bGluaz4gPG5hbWU+IDxwYXRoPiA8cHJpb3JpdHk+IG5vZGlnIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM0NiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM5NworbXNnaWQgIjxsaW5rPiBhbmQgPHBhdGg+IGNhbid0IGJlIHRoZSBzYW1lIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzQ5Cittc2dpZCAicHJpb3JpdHkgbXVzdCBiZSBhbiBpbnRlZ2VyIgorbXNnc3RyICJwcmlvcml0ZWl0IG1vZXQgZWVuIGludGVnZXIgZ2V0YWwgemlqbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyA8bmFtZT4gPHBhdGg+IgorbXNnc3RyICItLSVzIGhlZWZ0IDxuYWFtPiA8cGFkPiBub2RpZyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyA8bmFtZT4iCittc2dzdHIgIi0tJXMgaGVlZnQgPG5hYW0+IG5vZGlnIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM4OAorbXNnaWQgIi0tc2xhdmUgb25seSBhbGxvd2VkIHdpdGggLS1pbnN0YWxsIgorbXNnc3RyICItLXNsYXZlIGlzIGVua2VsIHRvZWdlbGF0ZW4gbWV0IC0taW5zdGFsbCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzOTAKK21zZ2lkICItLXNsYXZlIG5lZWRzIDxsaW5rPiA8bmFtZT4gPHBhdGg+IgorbXNnc3RyICItLXNsYXZlIGhlZWZ0IDxsaW5rPiA8bmFtZT4gPHBhdGg+IG5vZGlnIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM5OQorIywgYy1mb3JtYXQKK21zZ2lkICJuYW1lICVzIGlzIGJvdGggcHJpbWFyeSBhbmQgc2xhdmUiCittc2dzdHIgImRlIG5hYW0gJXMgaXMgem93ZWwgaG9vZmQgYWxzIHNsYWFmIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQwMgorIywgYy1mb3JtYXQKK21zZ2lkICJsaW5rICVzIGlzIGJvdGggcHJpbWFyeSBhbmQgc2xhdmUiCittc2dzdHIgImRlIGxpbmtzICVzIGlzIHpvd2VsIGhvb2ZkIGFscyBzbGFhZiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MjIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSA8ZmlsZT4gYXJndW1lbnQiCittc2dzdHIgIi0tJXMgaGVlZnQgZWVuIGVua2VsIGFyZ3VtZW50IG5vZGlnIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQ0OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiBgJXMnIgorbXNnc3RyICJvbmJla2VuZGUgb3B0aWUgJyVzJyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0NTMKKyMsIGZ1enp5Cittc2dpZCAiIgorIm5lZWQgLS1kaXNwbGF5LCAtLXF1ZXJ5LCAtLWxpc3QsIC0tZ2V0LXNlbGVjdGlvbnMsIC0tY29uZmlnLCAtLXNldCwgLS1zZXQtIgorInNlbGVjdGlvbnMsIC0taW5zdGFsbCwgLS1yZW1vdmUsIC0tYWxsLCAtLXJlbW92ZS1hbGwgb3IgLS1hdXRvIgorbXNnc3RyICIiCisiLS1kaXNwbGF5LCAtLWNvbmZpZywgLS1zZXQsIC0taW5zdGFsbCwgLS1yZW1vdmUsIC0tYWxsLCAtLXJlbW92ZS1hbGwgb2YgLS0iCisiYXV0byBpcyBub2RpZyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0OTAKKyMsIGZ1enp5CisjfCBtc2dpZCAicmVhZCBlcnJvciBvbiBzdGFuZGFyZCBpbnB1dCIKK21zZ2lkICI8c3RhbmRhcmQgaW5wdXQ+IgorbXNnc3RyICJsZWVzZm91dCBvcCBzdGFuZGFhcmQgaW52b2VyIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUwMCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUwMworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAibm8gYWx0ZXJuYXRpdmVzIGZvciAlcy4iCittc2dzdHIgIkVyIHppam4gZ2VlbiBhbHRlcm5hdGlldmVuIHZvb3IgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTMwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzLyVzIGlzIGRhbmdsaW5nLCBpdCB3aWxsIGJlIHVwZGF0ZWQgd2l0aCBiZXN0IGNob2ljZS4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MzQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlcy8lcyBoYXMgYmVlbiBjaGFuZ2VkIChtYW51YWxseSBvciBieSBhIHNjcmlwdCkuIFN3aXRjaGluZyB0byBtYW51YWwgIgorInVwZGF0ZXMgb25seS4iCittc2dzdHIgIiIKKyIlcyBpcyB2ZXJhbmRlcmQgKGhhbmRtYXRpZyBvZiBkb29yIGVlbiBzY3JpcHQpLlxuIgorIkVyIHdvcmR0IG9tZ2VzY2hha2VsZCBuYWFyIGVua2VsIGhhbmRtYXRpZ2UgdXBkYXRlcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTQyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJzZXR0aW5nIHVwIGF1dG9tYXRpYyBzZWxlY3Rpb24gb2YgJXMuIgorbXNnc3RyICJBdXRvbWF0aXNjaGUgc2VsZWN0aWUgdmFuICVzIHdvcmR0IG9wZ2V6ZXQuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU1MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgZm9yICVzIG5vdCByZWdpc3RlcmVkLCBub3Qgc2V0dGluZy4iCittc2dzdHIgIkFsdGVybmF0aWVmICVzIHZvb3IgJXMgaXMgbmlldCBnZXJlZ2lzdHJlZXJkLCB3b3JkdCBuaWV0IHZlcndpamRlcmQuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU1NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU2MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiVGhlcmUgaXMgbm8gcHJvZ3JhbSB3aGljaCBwcm92aWRlcyAlcy4iCittc2dzdHIgIiIKKyJFciBpcyBnZWVuIHByb2dyYW1tYSBkYXQgJXMgdm9vcnppZXRcbiIKKyJFciBpcyBuaWV0cyBpbiB0ZSBzdGVsbGVuLlxuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU2NSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU3NQorbXNnaWQgIk5vdGhpbmcgdG8gY29uZmlndXJlLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU3MworIywgYy1mb3JtYXQKK21zZ2lkICJUaGVyZSBpcyBvbmx5IG9uZSBhbHRlcm5hdGl2ZSBpbiBsaW5rIGdyb3VwICVzOiAlcyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU4NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgZm9yICVzIG5vdCByZWdpc3RlcmVkLCBub3QgcmVtb3ZpbmcuIgorbXNnc3RyICJBbHRlcm5hdGllZiAlcyB2b29yICVzIGlzIG5pZXQgZ2VyZWdpc3RyZWVyZCwgd29yZHQgbmlldCB2ZXJ3aWpkZXJkLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1OTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInJlbW92aW5nIG1hbnVhbGx5IHNlbGVjdGVkIGFsdGVybmF0aXZlIC0gc3dpdGNoaW5nICVzIHRvIGF1dG8gbW9kZSIKK21zZ3N0ciAiIgorIkhhbmRtYXRpZyBnZXNlbGVjdGVlcmQgYWx0ZXJuYXRpZWYgd29yZHQgdmVyd2lqZGVyZCAtIHdvcmR0IG9tZ2VzY2hha2VsZCAiCisibmFhciBhdXRvbWF0aXNjaGUgbW9kdXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjE3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJhdXRvbWF0aWMgdXBkYXRlcyBvZiAlcy8lcyBhcmUgZGlzYWJsZWQsIGxlYXZpbmcgaXQgYWxvbmUuIgorbXNnc3RyICIiCisiQXV0b21hdGlzY2hlIG9wd2FhcmRlcmluZ2VuIHZhbiAlcyB6aWpuIHVpdGdlc2NoYWtlbGQsIGhldCB3b3JkdCBtZXQgcnVzdCAiCisiZ2VsYXRlbi4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjE5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ0byByZXR1cm4gdG8gYXV0b21hdGljIHVwZGF0ZXMgdXNlICclcyAtLWF1dG8gJXMnLiIKK21zZ3N0ciAiIgorIk9tIGF1dG9tYXRpc2NoZSBvcHdhYXJkZXJpbmdlbiB0ZXJ1ZyBpbiB0ZSBzY2hha2VsZW4ga3VudCAndXBkYXRlLSIKKyJhbHRlcm5hdGl2ZXMgLS1hdXRvICVzJyBnZWJydWlrZW4uIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYzNgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidXNpbmcgJXMgdG8gcHJvdmlkZSAlcyAoJXMpIGluICVzLiIKK21zZ3N0ciAiJyVzJyB3b3JkdCBnZWJydWlrdCBvbSBpbiAnJXMnIHRlIHZvb3J6aWVuLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImZvcmNpbmcgcmVpbnN0YWxsYXRpb24gb2YgYWx0ZXJuYXRpdmUgJXMgYmVjYXVzZSBsaW5rIGdyb3VwICVzIGlzIGJyb2tlbi4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY3VycmVudCBhbHRlcm5hdGl2ZSAlcyBpcyB1bmtub3duLCBzd2l0Y2hpbmcgdG8gJXMgZm9yIGxpbmsgZ3JvdXAgJXMuIgorbXNnc3RyICIiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiaXQgaXMgYSBzbGF2ZSBvZiAlcyIKKyN+IG1zZ3N0ciAic2xhYWYgJXM6ICVzIgorCisjLCBmdXp6eQorI358IG1zZ2lkICJjYW5ub3Qgc3RhdCBvbGQgbmFtZSBgJXMnOiAlcyIKKyN+IG1zZ2lkICJjYW5ub3Qgc3RhdCAlczogJXMiCisjfiBtc2dzdHIgImthbiBkZSBzdGF0dXMgdmFuIGRlIG91ZGUgbmFhbSAnJXMnIG5pZXQgb3B2cmFnZW46ICVzIgorCisjLCBmdXp6eQorI358IG1zZ2lkICIlczogY29weWluZyAlcyB0byAlcyBmYWlsZWQsIGdpdmluZyB1cDogJXMiCisjfiBtc2dpZCAic2NhbiBvZiAlcyBmYWlsZWQ6ICVzIgorI34gbXNnc3RyICIlczoga29wacOrcmVuIHZhbiAlcyBuYWFyICVzIGlzIG1pc2x1a3QsIHBvZ2luZyB3b3JkdCBvcGdlZ2V2ZW46ICVzIgorCisjLCBmdXp6eQorI358IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyAlcyIKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlY3V0ZSAlczogJXMiCisjfiBtc2dzdHIgImthbiAlcyBuaWV0IHVpdHZvZXJlbiIKKworI34gbXNnaWQgInVuYWJsZSB0byBtYWtlICVzIGEgc3ltbGluayB0byAlczogJXMiCisjfiBtc2dzdHIgImthbiB2YW4gJXMgZ2VlbiBzeW1ib2xpc2NoZSBrb3BwZWxpbmcgbmFhciAlcyBtYWtlbjogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCAlcyBhcyAlczogJXMiCisjfiBtc2dzdHIgImthbiAlcyBuaWV0IGluc3RhbGxlcmVuIGFscyAlczogJXMiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAid2hpbGUgd3JpdGluZyAlczogJXMiCisjfiBtc2dzdHIgImZvdXQgYmlqIHNjaHJpanZlbiBuYWFyIHN0ZG91dDogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcmVhZCAlczogJXMiCisjfiBtc2dzdHIgImthbiAlcyBuaWV0IGxlemVuOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byBjbG9zZSAlczogJXMiCisjfiBtc2dzdHIgImthbiAlcyBuaWV0IHNsdWl0ZW46ICVzIgorCisjLCBmdXp6eQorI358IG1zZ2lkICJ1bmFibGUgdG8gd3JpdGUgJXM6ICVzIgorI34gbXNnaWQgImNhbm5vdCB3cml0ZSAlczogJXMiCisjfiBtc2dzdHIgImthbiAlcyBuaWV0IHZlcndpamRlcmVuOiAlcyIKKworIywgZnV6enkKKyN+fCBtc2dpZCAidW5hYmxlIHRvIHJlbmFtZSAlcyB0byAlczogJXMiCisjfiBtc2dpZCAidW5hYmxlIHRvIHJlbmFtZSBmaWxlICclcycgdG8gJyVzJyIKKyN+IG1zZ3N0ciAia2FuICVzIG5pZXQgaGVybm9lbWVuIG5hYXIgJXM6ICVzIgorCisjfiBtc2dpZCAibWFsbG9jIGZhaWxlZCAoJWxkIGJ5dGVzKSIKKyN+IG1zZ3N0ciAibWFsbG9jIGlzIG1pc2x1a3QgKCVsZCBieXRlcykiCisKKyN+IG1zZ2lkICJyZWFsbG9jIGZhaWxlZCAoJWxkIGJ5dGVzKSIKKyN+IG1zZ3N0ciAicmVhbGxvYyBpcyBtaXNsdWt0ICglbGQgYnl0ZXMpIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHVuYnVmZmVyIGAlLjI1NXMnIgorI34gbXNnc3RyICJrYW4gYCUuMjU1cycgbmlldCBvbnRidWZmZXJlbiIKKworI34gbXNnaWQgInBhcnQgZmlsZSBgJS4yNTBzJyBoYXMgdHJhaWxpbmcgZ2FyYmFnZSIKKyN+IG1zZ3N0ciAiZGVlbGJlc3RhbmQgYCUuMjUwcycgaGVlZnQgcm9tbWVsIGFhbiBoZXQgZWluZGUiCisKKyN+IG1zZ2lkICJzaXplICU3ZCBvY2N1cnMgJTVkIHRpbWVzXG4iCisjfiBtc2dzdHIgImdyb290dGUgJTdkIGtvbXQgJTVkIGtlZXIgdm9vclxuIgorCisjfiBtc2dpZCAib3V0IG9mIG1lbW9yeSBwdXNoaW5nIGVycm9yIGhhbmRsZXI6ICIKKyN+IG1zZ3N0ciAiZ2VoZXVnZW4gbG9vcHQgdm9sIHRpamRlbnMgZm91dGFmaGFuZGVsaW5nOiAiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gdW5sb2NrIGRwa2cgc3RhdHVzIGRhdGFiYXNlIgorI34gbXNnc3RyICJrYW4gZHBrZyBzdGF0dXMgZGF0YWJhc2UgbmlldCBvbnRncmVuZGVsZW4iCisKKyN+IG1zZ2lkICJjb3B5IGluZm8gZmlsZSBgJS4yNTVzJyIKKyN+IG1zZ3N0ciAia29wacOrcmVuIHZhbiBpbmZvcm1hdGllYmVzdGFuZCBgJS4yNTVzJyIKKworI34gbXNnaWQgInBhcnNlIGVycm9yIgorI34gbXNnc3RyICJvbnRsZWVkZm91dCIKKworI34gbXNnaWQgImZhaWxlZCB0byB3cml0ZSBwYXJzaW5nIHdhcm5pbmciCisjfiBtc2dzdHIgImthbiBvbnRsZWVkd2FhcnNjaHV3aW5nIG5pZXQgc2NocmlqdmVuIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHJ1biAlcyAoJS4yNTBzKSIKKyN+IG1zZ3N0ciAidWl0dm9lcmVuIHZhbiAlcyBpcyBtaXNsdWt0ICglLjI1MHMpIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgc2hlbGwgKCUuMjUwcykiCisjfiBtc2dzdHIgImthbiBkZSBzaGVsbCBuaWV0IHN0YXJ0ZW4gKCUuMjUwcykiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gY2hlY2sgZm9yIGV4aXN0ZW5jZSBvZiBgJS4yNTBzJyIKKyN+IG1zZ3N0ciAia2FuIGhldCBiZXN0YWFuIHZhbiBgJS4yNTBzJyBuaWV0IHZlcmlmacOrcmVuIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgcm0gZm9yIGNsZWFudXAiCisjfiBtc2dzdHIgImthbiBybSBuaWV0IHVpdHZvZXJlbiBvbSBvcCB0ZSBydWltZW4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiIgorI34gIiVzIGRlYnVnZ2luZyBvcHRpb24sIC0tZGVidWc9PG9jdGFsPiBvciAtRDxvY3RhbD46XG4iCisjfiAiXG4iCisjfiAiIG51bWJlciAgcmVmLiBpbiBzb3VyY2UgICBkZXNjcmlwdGlvblxuIgorI34gIiAgICAgIDEgICBnZW5lcmFsICAgICAgICAgICBHZW5lcmFsbHkgaGVscGZ1bCBwcm9ncmVzcyBpbmZvcm1hdGlvblxuIgorI34gIiAgICAgIDIgICBzY3JpcHRzICAgICAgICAgICBJbnZvY2F0aW9uIGFuZCBzdGF0dXMgb2YgbWFpbnRhaW5lciBzY3JpcHRzXG4iCisjfiAiICAgICAxMCAgIGVhY2hmaWxlICAgICAgICAgIE91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZFxuIgorI34gIiAgICAxMDAgICBlYWNoZmlsZWRldGFpbCAgICBMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZFxuIgorI34gIiAgICAgMjAgICBjb25mZiAgICAgICAgICAgICBPdXRwdXQgZm9yIGVhY2ggY29uZmlndXJhdGlvbiBmaWxlXG4iCisjfiAiICAgIDIwMCAgIGNvbmZmZGV0YWlsICAgICAgIExvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZVxuIgorI34gIiAgICAgNDAgICBkZXBjb24gICAgICAgICAgICBEZXBlbmRlbmNpZXMgYW5kIGNvbmZsaWN0c1xuIgorI34gIiAgICA0MDAgICBkZXBjb25kZXRhaWwgICAgICBMb3RzIG9mIGRlcGVuZGVuY2llcy9jb25mbGljdHMgb3V0cHV0XG4iCisjfiAiICAxMDAwMCAgIHRyaWdnZXJzICAgICAgICAgIFRyaWdnZXIgYWN0aXZhdGlvbiBhbmQgcHJvY2Vzc2luZ1xuIgorI34gIiAgMjAwMDAgICB0cmlnZ2Vyc2RldGFpbCAgICBMb3RzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnNcbiIKKyN+ICIgIDQwMDAwICAgdHJpZ2dlcnNzdHVwaWQgICAgU2lsbHkgYW1vdW50cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzXG4iCisjfiAiICAgMTAwMCAgIHZlcnl2ZXJib3NlICAgICAgIExvdHMgb2YgZHJpdmVsIGFib3V0IGVnIHRoZSBkcGtnL2luZm8gIgorI34gImRpcmVjdG9yeVxuIgorI34gIiAgIDIwMDAgICBzdHVwaWRseXZlcmJvc2UgICBJbnNhbmUgYW1vdW50cyBvZiBkcml2ZWxcbiIKKyN+ICJcbiIKKyN+ICJEZWJ1Z2dpbmcgb3B0aW9ucyBhcmUgYmUgbWl4ZWQgdXNpbmcgYml0d2lzZS1vci5cbiIKKyN+ICJOb3RlIHRoYXQgdGhlIG1lYW5pbmdzIGFuZCB2YWx1ZXMgYXJlIHN1YmplY3QgdG8gY2hhbmdlLlxuIgorI34gbXNnc3RyICIiCisjfiAiJXMgZGVidWcgb3B0aWUsIC0tZGVidWc9PG9jdGFhbD4gb2YgLUQ8b2N0YWFsPjpcbiIKKyN+ICJcbiIKKyN+ICIgbnVtbWVyICByZWYuIGluIGJyb248ICAgICBvbXNjaHJpanZpbmdcbiIKKyN+ICIgICAgICAxICBnZW5lcmFsICAgICAgICAgICBBbGdlbWVuZSBiZWh1bHB6YW1lIHZvb3J0Z2FuZ3NpbmZvcm1hdGllXG4iCisjfiAiICAgICAgMiAgc2NyaXB0cyAgICAgICAgICAgQWFucm9lcCBlbiBzdGF0dXMgdmFuIGJlaGVlcmRlcnNzY3JpcHRzXG4iCisjfiAiICAgICAxMCAgZWFjaGZpbGUgICAgICAgICAgVWl0dm9lciB2b29yIGllZGVyIGJlaGFuZGVsZCBiZXN0YW5kXG4iCisjfiAiICAgIDEwMCAgZWFjaGZpbGVkZXRhaWwgICAgVmVlbCB1aXR2b2VyIHZvb3IgaWVkZXIgYmVoYW5kZWxkIGJlc3RhbmRcbiIKKyN+ICIgICAgIDIwICBjb25mZiAgICAgICAgICAgICBVaXR2b2VyIHZvb3IgaWVkZXIgY29uZmlndXJhdGllYmVzdGFuZFxuIgorI34gIiAgICAyMDAgIGNvbmZmZGV0YWlsICAgICAgIFZlZWwgdWl0dm9lciB2b29yIGllZGVyIGNvbmZpZ3VyYXRpZWJlc3RhbmRcbiIKKyN+ICIgICAgIDQwICBkZXBjb24gICAgICAgICAgICBBZmhhbmtlbGlqa2hlZGVuIGVuIGNvbmZsaWN0ZW5cbiIKKyN+ICIgICAgNDAwICBkZXBjb25kZXRhaWwgICAgICBWZWVsIHVpdHZvZXIgdm9vciB2ZXJlaXN0ZW4gZW4gY29uZmxpY3RlblxuIgorI34gIiAgIDEwMDAgIHZlcnl2ZXJib3NlICAgICAgIFZlZWwgZ2V6ZXZlciBvdmVyIGJpanYuIGRlIGRwa2cvaW5mbyBtYXBcbiIKKyN+ICIgICAyMDAwICBzdHVwaWRseXZlcmJvc2UgICBJZGlvdGUgaG9ldmVlbGhlZGVuIGdlemV2ZXJcbiIKKyN+ICJcbiIKKyN+ICJEZWJ1Zy1vcHRpZXMga3VubmVuIHdvcmRlbiBnZWNvbWJpbmVlcmQgbWV0IGJpdHNnZXdpanplIG9mLlxuIgorI34gIk1lcmsgb3AgZGF0IGRlIGJldGVrZW5pc3NlbiBlbiB3YWFyZGVuIGt1bm5lbiB2ZXJhbmRlcmVuLlxuIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICIlcyBmb3JjaW5nIG9wdGlvbnMgLSBjb250cm9sIGJlaGF2aW91ciB3aGVuIHByb2JsZW1zIGZvdW5kOlxuIgorI34gIiAgd2FybiBidXQgY29udGludWU6ICAtLWZvcmNlLTx0aGluZz4sPHRoaW5nPiwuLi5cbiIKKyN+ICIgIHN0b3Agd2l0aCBlcnJvcjogICAgLS1yZWZ1c2UtPHRoaW5nPiw8dGhpbmc+LC4uLiB8IC0tbm8tZm9yY2UtIgorI34gIjx0aGluZz4sLi4uXG4iCisjfiAiIEZvcmNpbmcgdGhpbmdzOlxuIgorI34gIiAgYWxsIFshXSAgICAgICAgICAgICAgICBTZXQgYWxsIGZvcmNlIG9wdGlvbnNcbiIKKyN+ICIgIGRvd25ncmFkZSBbKl0gICAgICAgICAgUmVwbGFjZSBhIHBhY2thZ2Ugd2l0aCBhIGxvd2VyIHZlcnNpb25cbiIKKyN+ICIgIGNvbmZpZ3VyZS1hbnkgICAgICAgICAgQ29uZmlndXJlIGFueSBwYWNrYWdlIHdoaWNoIG1heSBoZWxwIHRoaXMgb25lXG4iCisjfiAiICBob2xkICAgICAgICAgICAgICAgICAgIFByb2Nlc3MgaW5jaWRlbnRhbCBwYWNrYWdlcyBldmVuIHdoZW4gb24gaG9sZFxuIgorI34gIiAgYmFkLXBhdGggICAgICAgICAgICAgICBQQVRIIGlzIG1pc3NpbmcgaW1wb3J0YW50IHByb2dyYW1zLCBwcm9ibGVtcyAiCisjfiAibGlrZWx5XG4iCisjfiAiICBub3Qtcm9vdCAgICAgICAgICAgICAgIFRyeSB0byAoZGUpaW5zdGFsbCB0aGluZ3MgZXZlbiB3aGVuIG5vdCByb290XG4iCisjfiAiICBvdmVyd3JpdGUgICAgICAgICAgICAgIE92ZXJ3cml0ZSBhIGZpbGUgZnJvbSBvbmUgcGFja2FnZSB3aXRoIGFub3RoZXJcbiIKKyN+ICIgIG92ZXJ3cml0ZS1kaXZlcnRlZCAgICAgT3ZlcndyaXRlIGEgZGl2ZXJ0ZWQgZmlsZSB3aXRoIGFuIHVuZGl2ZXJ0ZWQgIgorI34gInZlcnNpb25cbiIKKyN+ICIgIGJhZC12ZXJpZnkgICAgICAgICAgICAgSW5zdGFsbCBhIHBhY2thZ2UgZXZlbiBpZiBpdCBmYWlscyBhdXRoZW50aWNpdHkgIgorI34gImNoZWNrXG4iCisjfiAiICBkZXBlbmRzLXZlcnNpb24gWyFdICAgIFR1cm4gZGVwZW5kZW5jeSB2ZXJzaW9uIHByb2JsZW1zIGludG8gd2FybmluZ3NcbiIKKyN+ICIgIGRlcGVuZHMgWyFdICAgICAgICAgICAgVHVybiBhbGwgZGVwZW5kZW5jeSBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzXG4iCisjfiAiICBjb25mbmV3IFshXSAgICAgICAgICAgIEFsd2F5cyB1c2UgdGhlIG5ldyBjb25maWcgZmlsZXMsIGRvbid0IHByb21wdFxuIgorI34gIiAgY29uZm9sZCBbIV0gICAgICAgICAgICBBbHdheXMgdXNlIHRoZSBvbGQgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHRcbiIKKyN+ICIgIGNvbmZkZWYgWyFdICAgICAgICAgICAgVXNlIHRoZSBkZWZhdWx0IG9wdGlvbiBmb3IgbmV3IGNvbmZpZyBmaWxlcyBpZiAiCisjfiAib25lXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIGlzIGF2YWlsYWJsZSwgZG9uJ3QgcHJvbXB0LiBJZiBubyBkZWZhdWx0IGNhbiBiZSAiCisjfiAiZm91bmQsXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIHlvdSB3aWxsIGJlIHByb21wdGVkIHVubGVzcyBvbmUgb2YgdGhlIGNvbmZvbGQgIgorI34gIm9yXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmZuZXcgb3B0aW9ucyBpcyBhbHNvIGdpdmVuXG4iCisjfiAiICBjb25mbWlzcyBbIV0gICAgICAgICAgIEFsd2F5cyBpbnN0YWxsIG1pc3NpbmcgY29uZmlnIGZpbGVzXG4iCisjfiAiICBjb25mYXNrIFshXSAgICAgICAgICAgIE9mZmVyIHRvIHJlcGxhY2UgY29uZmlnIGZpbGVzIHdpdGggbm8gbmV3ICIKKyN+ICJ2ZXJzaW9uc1xuIgorI34gIiAgYnJlYWtzIFshXSAgICAgICAgICAgICBJbnN0YWxsIGV2ZW4gaWYgaXQgd291bGQgYnJlYWsgYW5vdGhlciBwYWNrYWdlXG4iCisjfiAiICBjb25mbGljdHMgWyFdICAgICAgICAgIEFsbG93IGluc3RhbGxhdGlvbiBvZiBjb25mbGljdGluZyBwYWNrYWdlc1xuIgorI34gIiAgYXJjaGl0ZWN0dXJlIFshXSAgICAgICBQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyBhcmNoaXRlY3R1cmVcbiIKKyN+ICIgIG92ZXJ3cml0ZS1kaXIgWyFdICAgICAgT3ZlcndyaXRlIG9uZSBwYWNrYWdlJ3MgZGlyZWN0b3J5IHdpdGggYW5vdGhlcidzICIKKyN+ICJmaWxlXG4iCisjfiAiICB1bnNhZmUtaW8gWyFdICAgICAgICAgIERvIG5vdCBwZXJmb3JtIHNhZmUgSS9PIG9wZXJhdGlvbnMgd2hlbiAiCisjfiAidW5wYWNraW5nXG4iCisjfiAiICByZW1vdmUtcmVpbnN0cmVxIFshXSAgIFJlbW92ZSBwYWNrYWdlcyB3aGljaCByZXF1aXJlIGluc3RhbGxhdGlvblxuIgorI34gIiAgcmVtb3ZlLWVzc2VudGlhbCBbIV0gICBSZW1vdmUgYW4gZXNzZW50aWFsIHBhY2thZ2VcbiIKKyN+ICJcbiIKKyN+ICJXQVJOSU5HIC0gdXNlIG9mIG9wdGlvbnMgbWFya2VkIFshXSBjYW4gc2VyaW91c2x5IGRhbWFnZSB5b3VyICIKKyN+ICJpbnN0YWxsYXRpb24uXG4iCisjfiAiRm9yY2luZyBvcHRpb25zIG1hcmtlZCBbKl0gYXJlIGVuYWJsZWQgYnkgZGVmYXVsdC5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIiVzIGZvcmNlZXItb3B0aWVzIC0gYmVzdHV1ciBoYW5kZWx3aWp6ZSBiaWogcHJvYmxlbWVuOlxuIgorI34gIiAgd2FhcnNjaHV3IG1hYXIgZ2EgZG9vcjogLS1mb3JjZS08aWV0cz4sPGlldHM+LC4uLlxuIgorI34gIiAgc3RvcCBtZXQgZm91dG1lbGRpbmc6IC0tcmVmdXNlLTxpZXRzPiw8aWV0cz4sLi4uIHwgLS1uby1mb3JjZS0iCisjfiAiPGlldHM+LC4uLlxuIgorI34gIiBGb3JjZWVyb3B0aWVzOlxuIgorI34gIiAgYWxsICAgICAgICAgICAgICAgICAgICBaZXQgYWxsZSBmb3JjZWVyLW9wdGllc1xuIgorI34gIiAgZG93bmdyYWRlIFsqXSAgICAgICAgICBWZXJ2YW5nIHBha2tldHRlbiBtZXQgZWVuIGxhZ2VyZSB2ZXJzaWVcbiIKKyN+ICIgIGNvbmZpZ3VyZS1hbnkgICAgICAgICAgQ29uZmlndXJlZXIgZWVuIHBha2tldCBkYXQga2FuIGhlbHBlbiBiaWogZGl0ICIKKyN+ICJwYWtrZXRcbiIKKyN+ICIgIGhvbGQgICAgICAgICAgICAgICAgICAgQmVoYW5kZWwgb29rIHBha2tldHRlbiBkaWUgb3AgaG9sZCBzdGFhblxuIgorI34gIiAgYmFkLXBhdGggICAgICAgICAgICAgICBCZWxhbmdyaWprZSBwcm9ncmFtbWEncyBvbnRicmVrZW4gaW4gUEFUSCwgIgorI34gIndhYXJzY2hpam5saWprIHByb2JsZW1hdGlzY2hcbiIKKyN+ICIgIG5vdC1yb290ICAgICAgICAgICAgICAgUHJvYmVlciBkaW5nZW4gdGUgKGRlKWluc3RhbGxlcmVuIG9vayBhbHMgbmlldC0iCisjfiAicm9vdFxuIgorI34gIiAgb3ZlcndyaXRlICAgICAgICAgICAgICBPdmVyc2NocmlqZiBlZW4gYmVzdGFuZCB1aXQgaGV0IGVuZSBwYWtrZXQgbWV0ICIKKyN+ICJlZW4gYW5kZXJcbiIKKyN+ICIgIG92ZXJ3cml0ZS1kaXZlcnRlZCAgICAgT3ZlcnNjaHJpamYgZWVuIG9tbGVpZGluZyBtZXQgZWVuIG5pZXQtb21nZWxlaWRlICIKKyN+ICJ2ZXJzaWVcbiIKKyN+ICIgIGJhZC12ZXJpZnkgICAgICAgICAgICAgSW5zdGFsbGVlciBlZW4gcGFra2V0IHplbGZzIGFsIG1pc2x1a3QgZGUgIgorI34gInZlcmlmaWNhdGllXG4iCisjfiAiICBkZXBlbmRzLXZlcnNpb24gWyFdICAgIFZlcmFuZGVyIHZlcmVpc3RlbnByb2JsZW1lbiBtZXQgdmVyc2llcyBpbiAiCisjfiAid2FhcnNjaHV3aW5nZW5cbiIKKyN+ICIgIGRlcGVuZHMgWyFdICAgICAgICAgICAgVmVyYW5kZXIgYWxsZSB2ZXJlaXN0ZW5wcm9ibGVtZW4gaW4gIgorI34gIndhYXJzY2h1d2luZ2VuXG4iCisjfiAiICBjb25mbmV3IFshXSAgICAgICAgICAgIEdlYnJ1aWsgYWx0aWpkIGRlIG5pZXV3ZSBjb25maWd1cmF0aWViZXN0YW5kZW4sICIKKyN+ICJ2cmFhZyBuaWV0c1xuIgorI34gIiAgY29uZm9sZCBbIV0gICAgICAgICAgICBHZWJydWlrIGFsdGlqZCBkZSBvdWRlIGNvbmZpZ3VyYXRpZWJlc3RhbmRlbiwgIgorI34gInZyYWFnIG5pZXRzXG4iCisjfiAiICBjb25mZGVmIFshXSAgICAgICAgICAgIEdlYnJ1aWsgYWx0aWpkIGRlIHN0YW5kYWFyZG9wdGllIHZvb3IgbmlldXdlXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmZpZ3VyYXRpZWJlc3RhbmRlbiwgdnJhYWcgbmlldHMuICBBbHMgZ2VlblxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICBzdGFuZGFhcmQgaXMgZ2V2b25kZW4gd29yZHQgaGV0IGdldnJhYWdkXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIHRlbnppaiBvb2sgY29uZm9sZCBvZiBjb25mbmV3IG9wZ2VnZXZlbiBpc1xuIgorI34gIiAgY29uZm1pc3MgWyFdICAgICAgICAgICBJbnN0YWxsZWVyIGFsdGlqZCBvbnRicmVrZW5kZSAiCisjfiAiY29uZmlndXJhdGllYmVzdGFuZGVuXG4iCisjfiAiICBjb25mbGljdHMgWyFdICAgICAgICAgIFN0YSBpbnN0YWxsYXRpZSB2YW4gY29uZmxpY3RlcmVuZGUgcGFra2V0dGVuICIKKyN+ICJ0b2VcbiIKKyN+ICIgIGFyY2hpdGVjdHVyZSBbIV0gICAgICAgQmVoYW5kZWwgb29rIHBha2tldHRlbiBtZXQgZWVuIHZlcmtlZXJkZSAiCisjfiAiYXJjaGl0ZWN0dXVyXG4iCisjfiAiICBvdmVyd3JpdGUtZGlyIFshXSAgICAgIE92ZXJzY2hyaWpmIGVlbiBtYXAgaW4gZWVuIHBha2tldCBtZXQgZWVuICIKKyN+ICJiZXN0YW5kIHVpdCBlZW4gYW5kZXJcbiIKKyN+ICIgIHJlbW92ZS1yZWluc3RyZXEgWyFdICAgVmVyd2lqZGVyIHBha2tldHRlbiBkaWUgaGVyaW5zdGFsbGF0aWUgbm9kaWcgIgorI34gImhlYmJlblxuIgorI34gIiAgcmVtb3ZlLWVzc2VudGlhbCBbIV0gICBWZXJ3aWpkZXIgZWVuIGVzc2VudGllZWwgcGFra2V0XG4iCisjfiAiXG4iCisjfiAiV0FBUlNDSFVXSU5HIC0gaGV0IGdlYnJ1aWsgdmFuIGRlIG9wdGllcyBtZXQgWyFdIGt1bm5lbiB1dyBpbnN0YWxsYXRpZSAiCisjfiAiZXJuc3RpZyBiZXNjaGFkaWdlbi5cbiIKKyN+ICJGb3JjZWVyb3B0aWVzIGdlbWFya2VlcmQgbWV0IFsqXSBzdGFhbiBzdGFuZGFhcmQgYWFuLlxuIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgZHBrZy1zcGxpdCB0byBzZWUgaWYgaXQncyBwYXJ0IG9mIGEgbXVsdGlwYXJ0ZXIiCisjfiBtc2dzdHIgIiIKKyN+ICJrYW4gZHBrZy1zcGxpdCBuaWV0IHVpdHZvZXJlbiBvbSB0ZSB6aWVuIG9mIGhldCBlZW4gb25kZXJkZWVsIGlzIHZhbiAiCisjfiAibWVlcmRlcmUgZGVsZW4iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlY2wgZGVic2lnLXZlcmlmeSIKKyN+IG1zZ3N0ciAidWl0dm9lcmVuIHZhbiBkZWJzaWctdmVyaWZ5IGlzIG1pc2x1a3QiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBkcGtnLWRlYiB0byBleHRyYWN0IGNvbnRyb2wgaW5mb3JtYXRpb24iCisjfiBtc2dzdHIgImthbiBkcGtnLWRlYiBuaWV0IHVpdHZvZXJlbiBvbSBiZXN0dXJpbmdzaW5mb3JtYXRpZSB0ZSBleHRyYWhlcmVuIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGV4ZWMgZHBrZy1kZWIgdG8gZ2V0IGZpbGVzeXN0ZW0gYXJjaGl2ZSIKKyN+IG1zZ3N0ciAia2FuIGRwa2ctZGViIG5pZXQgdWl0dm9lcmVuIG9tIGJlc3RhbmRzc3lzdGVlbS1hcmNoaWVmIHRlIGtyaWpnZW4iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gZGVsZXRlIGRpc2FwcGVhcmluZyBjb250cm9sIGluZm8gZmlsZSBgJS4yNTBzJyIKKyN+IG1zZ3N0ciAiIgorI34gImthbiBvdWRlIHZlcmR3aWpuZW5kZSBiZXN0dXJpbmdzIGluZm9iZXN0YW5kIGAlLjI1MHMnIG5pZXQgdmVyd2lqZGVyZW4iCisKKyN+IG1zZ2lkICJkcGtnOiAlcyBub3QgZm91bmQuXG4iCisjfiBtc2dzdHIgImRwa2c6ICVzIG5pZXQgZ2V2b25kZW4uXG4iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gLi4uL0RFQklBTiIKKyN+IG1zZ3N0ciAiY2hkaXIgbmFhciAuLi9ERUJJQU4gaXMgbWlzbHVrdCIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIHRhciAtY2YiCisjfiBtc2dzdHIgInVpdHZvZXJlbiB2YW4gJ3RhciAtY2YnIGlzIG1pc2x1a3QiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gbWFrZSB0bXBmaWxlIChjb250cm9sKSIKKyN+IG1zZ3N0ciAiYWFubWFrZW4gdG1wZmlsZSAoY29udHJvbCkgaXMgbWlzbHVrdCIKKworI34gbXNnaWQgImZhaWxlZCB0byB1bmxpbmsgdG1wZmlsZSAoY29udHJvbCksICVzIgorI34gbXNnc3RyICJvbnRsaW5rZW4gdmFuIHRtcGZpbGUgKGNvbnRyb2wpLCAlcyBpcyBtaXNsdWt0IgorCisjfiBtc2dpZCAiY29udHJvbCIKKyN+IG1zZ3N0ciAiYmVzdHVyaW5nc2Jlc3RhbmQiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gcmV3aW5kIHRtcGZpbGUgKGNvbnRyb2wpIgorI34gbXNnc3RyICJ0ZXJ1Z3Nwb2VsZW4gdmFuIHRtcGZpbGUgKGNvbnRyb2wpIGlzIG1pc2x1a3QiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZnN0YXQgdG1wZmlsZSAoY29udHJvbCkiCisjfiBtc2dzdHIgImZzdGF0IHZhbiB0bXBmaWxlIChjb250cm9sKSBpcyBtaXNsdWlrdCIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIGZpbmQiCisjfiBtc2dzdHIgInVpdHZvZXJlbiB2YW4gZmluZCBpcyBtaXNsdWt0IgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgc2ggLWMgbXYgZm9vLyogJmMiCisjfiBtc2dzdHIgImthbiBzaCAtYyBtdiBmb28vKiAmYyBuaWV0IHVpdHZvZXJlbiIKKworI34gbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtICUuMjUwcyBsZW5ndGggY29udGFpbnMgbnVsbHMiCisjfiBtc2dzdHIgImJlc3RhbmQgYCUuMjUwcycgaXMgYmVzY2hhZGlnZCAtICUuMjUwcyBiZXZhdCBudWx0ZWtlbnMiCisKKyN+IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBuZWdhdGl2ZSBtZW1iZXIgbGVuZ3RoICV6aSIKKyN+IG1zZ3N0ciAiYmVzdGFuZCBgJS4yNTBzJyBpcyBiZXNjaGFkaWdkIC0gbmVnYXRpZXZlIGxpZGxlbmd0ZSAlemkiCisKKyN+IG1zZ2lkICJmYWlsZWQgZ2V0dGluZyB0aGUgY3VycmVudCBmaWxlIHBvc2l0aW9uIgorI34gbXNnc3RyICJvcGhhbGVuIHZhbiBkZSBodWlkaWdlIGJlc3RhbmQtcG9zaXRpZSBpcyBtaXNsdWt0IgorCisjfiBtc2dpZCAiZmFpbGVkIHNldHRpbmcgdGhlIGN1cnJlbnQgZmlsZSBwb3NpdGlvbiIKKyN+IG1zZ3N0ciAiaW5zdGVsbGVuIHZhbiBkZSBodWlkaWdlIGJlc3RhbmQtcG9zaXRpZSBpcyBtaXNsdWt0IgorCisjfiBtc2dpZCAidmVyc2lvbiBudW1iZXIiCisjfiBtc2dzdHIgInZlcnNpZW51bW1lciIKKworI34gbXNnaWQgImhlYWRlciBpbmZvIG1lbWJlciIKKyN+IG1zZ3N0ciAia29wdGVrc3QtaW5mb3JtYXRpZWxpZCIKKworIywgZnV6enkKKyN+fCBtc2dpZCAic2tpcHBlZCBtZW1iZXIgZGF0YSBmcm9tICVzIgorI34gbXNnaWQgInNraXBwZWQgY29udHJvbCBhcmVhIGZyb20gJXMiCisjfiBtc2dzdHIgImxpZCBkYXRhIHZhbiAlcyBvdmVyZ2VzbGFnZW4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSB0ZW1wb3JhcnkgZGlyZWN0b3J5IgorI34gbXNnc3RyICJhYW5tYWtlbiB2YW4gZWVuIHRpamRlbGlqa2UgYmVzdGFuZHNuYWFtIGlzIG1pc2x1a3QiCisKKyN+IG1zZ2lkICJpbmZvX3NwZXciCisjfiBtc2dzdHIgImluZm9fc3BldyIKKworIywgZnV6enkKKyN+fCBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgZHBrZy1kZWIgdG8gZXh0cmFjdCBjb250cm9sIGluZm9ybWF0aW9uIgorI34gbXNnaWQgImZhaWxlZCB0byBleGVjIGRwa2ctZGViIHRvIGV4dHJhY3QgZmllbGQgdmFsdWUiCisjfiBtc2dzdHIgImthbiBkcGtnLWRlYiBuaWV0IHVpdHZvZXJlbiBvbSBiZXN0dXJpbmdzaW5mb3JtYXRpZSB0ZSBleHRyYWhlcmVuIgorCisjLCBmdXp6eQorI358IG1zZ2lkICJ1bmFibGUgdG8gY3JlYXRlICVzOiAlcyIKKyN+IG1zZ2lkICJ1bmFibGUgdG8gc3RhdCAlczogJXMiCisjfiBtc2dzdHIgImthbiAlcyBuaWV0IGFhbm1ha2VuOiAlcyIKKworI34gbXNnaWQgInNsYXZlIG5hbWUgJXMgZHVwbGljYXRlZCIKKyN+IG1zZ3N0ciAic2xhYWYtbmFhbSAlcyBpcyBnZWR1cGxpY2VlcmQiCisKKyN+IG1zZ2lkICJzbGF2ZSBsaW5rICVzIGR1cGxpY2F0ZWQiCisjfiBtc2dzdHIgInNsYWFmLWxpbmsgJXMgaXMgZ2VkdXBsaWNlZXJkIgorCisjfiBtc2dpZCAiJWQgcmVxdWVzdGVkIGNvbnRyb2wgY29tcG9uZW50cyBhcmUgbWlzc2luZyIKKyN+IG1zZ3N0ciAiJWQgb3BnZXZyYWFnZGUgYmVzdHVyaW5nc2VsZW1lbnRlbiBvbnRicmVrZW4iCisKKyN+IG1zZ2lkICJjYXQgKGRhdGEpIgorI34gbXNnc3RyICJjYXQgKGRhdGEpIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIG9wZW4gcGlwZSBkZXNjcmlwdG9yIGAxJyBpbiBwYXN0ZSIKKyN+IG1zZ3N0ciAib3BlbmVuIHZhbiBiZXN0YW5kcGlqcCAnMScgaW4gcGxha2tlbiBpcyBtaXNsdWt0IgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHdyaXRlIHRvIGd6aXAgLWRjIgorI34gbXNnc3RyICJzY2hyaWp2ZW4gbmFhciAnZ3ppcCAtZGMnIGlzIG1pc2x1a3QiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gY2xvc2UgZ3ppcCAtZGMiCisjfiBtc2dzdHIgImFmc2x1aXRlbiAnZ3ppcCAtZGMnIGlzIG1pc2x1a3QiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gc3lzY2FsbCBsc2VlayB0byBmaWxlcyBhcmNoaXZlIHBvcnRpb24iCisjfiBtc2dzdHIgInN5c3RlZW1hYW5yb2VwIGxzZWVrIG5hYXIgYmVzdGFuZHNhcmNoaWVmZGVlbCBpcyBtaXNsdWt0IgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGV4ZWMgbWtzcGxpdCIKKyN+IG1zZ3N0ciAia2FuIG1rc3BsaXQgbmlldCB1aXR2b2VyZW4iCisKKyN+IG1zZ2lkICIiCisjfiAiXG4iCisjfiAiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorI34gIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uIgorI34gbXNnc3RyICIiCisjfiAiXG4iCisjfiAiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorI34gIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uIgorCisjLCBmdXp6eQorI34gbXNnaWQgInR3byBjb21tYW5kcyBzcGVjaWZpZWQ6ICVzIGFuZCAtLSVzIgorI34gbXNnc3RyICJ0d2VlIG1vZGVzIG9wZ2VnZXZlbjogJXMgZW4gLS0lcyIKKworI34gbXNnaWQgIi0tJXMgbmVlZHMgYSBkaXZlcnQtdG8gYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tJXMgaGVlZnQgZWVuIG9tbGVpZGVuLW5hYXIgYXJndW1lbnQgbm9kaWciCisKKyN+IG1zZ2lkICItLSVzIG5lZWRzIGEgPHBhY2thZ2U+IGFyZ3VtZW50IgorI34gbXNnc3RyICItLSVzIGhlZWZ0IGVlbiBwYWtrZXRuYWFtIGFscyBhcmd1bWVudCBub2RpZyIKKworI34gbXNnaWQgImNhbm5vdCBvcGVuIGRpdmVyc2lvbnM6ICVzIgorI34gbXNnc3RyICJrYW4gb21sZWlkaW5nZW4tYmVzdGFuZCBuaWV0IG9wZW5lbjogJXMiCisKKyN+IG1zZ2lkICJtaXNzaW5nIGFsdG5hbWUiCisjfiBtc2dzdHIgIm9udGJyZWtlbmRlIGFsdG5hbWUiCisKKyN+IG1zZ2lkICJpbnRlcm5hbCBlcnJvciAtIGJhZCBtb2RlIGAlcyciCisjfiBtc2dzdHIgImludGVybmUgZm91dCAtIHNsZWNodGUgbW9kdXMgJyVzJyIKKworI34gbXNnaWQgImNhbm5vdCBzdGF0IG9sZCBuYW1lIGAlcyc6ICVzIgorI34gbXNnc3RyICJrYW4gZGUgc3RhdHVzIHZhbiBkZSBvdWRlIG5hYW0gJyVzJyBuaWV0IG9wdnJhZ2VuOiAlcyIKKworI34gbXNnaWQgInJlbmFtZTogcmVuYW1lIGAlcycgdG8gYCVzJzogJXMiCisjfiBtc2dzdHIgImhlcm5vZW1lbjogJyVzJyB3b3JkdCBoZXJub2VtdCBuYWFyICclcyc6ICVzIgorCisjfiBtc2dpZCAiY3JlYXRlIGRpdmVyc2lvbnMtbmV3OiAlcyIKKyN+IG1zZ3N0ciAiZGl2ZXJzaW9ucy1uZXcgYWFubWFrZW46ICVzIgorCisjfiBtc2dpZCAid3JpdGUgZGl2ZXJzaW9ucy1uZXc6ICVzIgorI34gbXNnc3RyICJkaXZlcnNpb25zLW5ldyBzY2hyaWp2ZW46ICAlcyIKKworI34gbXNnaWQgImNsb3NlIGRpdmVyc2lvbnMtbmV3OiAlcyIKKyN+IG1zZ3N0ciAiZGl2ZXJzaW9ucy1uZXcgYWZzbHVpdGVuOiAgJXMiCisKKyN+IG1zZ2lkICJjcmVhdGUgbmV3IGRpdmVyc2lvbnMtb2xkOiAlcyIKKyN+IG1zZ3N0ciAibmlldXdlIGRpdmVyc2lvbnMtbmV3IGFhbm1ha2VuOiAlcyIKKworI34gbXNnaWQgImluc3RhbGwgbmV3IGRpdmVyc2lvbnM6ICVzIgorI34gbXNnc3RyICJuaWV1d2Ugb21sZWlkaW5nZW4gaW5zdGFsbGVyZW46ICVzIgorCisjfiBtc2dpZCAiaW50ZXJuYWwgZXJyb3I6ICVzIGNvcnJ1cHQ6ICVzIgorI34gbXNnc3RyICJpbnRlcm5lIGZvdXQ6ICVzIGlzIGNvcnJ1cHQ6ICVzIgorCisjfiBtc2dpZCAiZHBrZy1kZWIgLSBlcnJvcjogJXMgKGAlcycpIGRvZXNuJ3QgY29udGFpbiBhbnkgZGlnaXRzXG4iCisjfiBtc2dzdHIgImRwa2ctZGViIC0gZm91dDogJXMgKGAlcycpIGJldmF0IGdlZW4gY2lqZmVyc1xuIgorCisjLCBmdXp6eQorI34gbXNnaWQgIkRlYmlhbiByZXZpc2lvbiIKKyN+IG1zZ3N0ciAiRGViaWFuICVzIHZlcnNpZSAgJXMuXG4iCisKKyN+IG1zZ2lkICIlZCBlcnJvcnMgaW4gY29udHJvbCBmaWxlIgorI34gbXNnc3RyICIlZCBmb3V0ZW4gaW4gYmVzdHVyaW5nc2Jlc3RhbmQiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgInVuYWJsZSB0byByZWFkICVzOiAlcyIKKyN+IG1zZ2lkICJjYW4ndCByZWFkZGlyICVzOiAlcyIKKyN+IG1zZ3N0ciAia2FuICVzIG5pZXQgbGV6ZW46ICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIGluIGJ1ZmZlcl93cml0ZShmZCkgKCVpLCByZXQ9JWxpKTogJXMiCisjfiBtc2dzdHIgInByb2JsZWVtIHRlZ2VuZ2Vrb21lbiBpbiBidWZmZXJfd3JpdGUoZmQpICglaSwgcmV0PSVsaSk6ICVzIgorCisjfiBtc2dpZCAiZW9mIGluIGJ1ZmZlcl93cml0ZShzdHJlYW0pOiAlcyIKKyN+IG1zZ3N0ciAiYmVzdGFuZHNlaW5kZSBpbiBidWZmZXJfd3JpdGUoc3RyZWFtKTogJXMiCisKKyN+IG1zZ2lkICJlcnJvciBpbiBidWZmZXJfd3JpdGUoc3RyZWFtKTogJXMiCisjfiBtc2dzdHIgImZvdXQgaW4gYnVmZmVyX3dyaXRlKHN0cmVhbSk6ICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIGluIGJ1ZmZlcl9yZWFkKGZkKTogJXMiCisjfiBtc2dzdHIgImZvdXQgaW4gYnVmZmVyX3JlYWQoZmQpOiAlcyIKKworI34gbXNnaWQgImVycm9yIGluIGJ1ZmZlcl9yZWFkKHN0cmVhbSk6ICVzIgorI34gbXNnc3RyICJmb3V0IGluIGJ1ZmZlcl9yZWFkKHN0cmVhbSk6ICVzIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiVzIHJldHVybmVkIGVycm9yIGV4aXQgc3RhdHVzICVkIgorI34gbXNnc3RyICJzdWJwcm9jZXMgJXMgZ2FmIGVlbiBmb3V0d2FhcmRlICVkIHRlcnVnIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiVzIGtpbGxlZCBieSBzaWduYWwgKCVzKSVzIgorI34gbXNnc3RyICJzdWJwcm9jZXMgJXMgd2VyZCBnZWRvb2QgZG9vciBzaWduYWFsICglcyklcyIKKworIywgZnV6enkKKyN+IG1zZ2lkICIiCisjfiAiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbmNlIHZlcnNpb24gMiBvclxuIgorI34gImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LlxuIgorI34gbXNnc3RyICIiCisjfiAiXG4iCisjfiAiRGl0IGlzIHZyaWplIHByb2dyYW1tYXR1dXI7IHppZSBkZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSB2ZXJzaWUgMlxuIgorI34gIm9mIGxhdGVyIHZvb3Iga29wacOrZXJ2b29yd2FhcmRlbi4gIEVyIGlzIEdFRU4gZ2FyYW50aWUuXG4iCisKKyN+IG1zZ2lkICIiCisjfiAiXG4iCisjfiAiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbmNlIHZlcnNpb24gMiBvclxuIgorI34gImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LlxuIgorI34gbXNnc3RyICIiCisjfiAiXG4iCisjfiAiRGl0IGlzIHZyaWplIHByb2dyYW1tYXR1dXI7IHppZSBkZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSB2ZXJzaWUgMlxuIgorI34gIm9mIGxhdGVyIHZvb3Iga29wacOrZXJ2b29yd2FhcmRlbi4gIEVyIGlzIEdFRU4gZ2FyYW50aWUuXG4iCisKKyN+IG1zZ2lkICIlczogZmFpbGVkIHRvIGV4ZWMgJyVzICVzJyIKKyN+IG1zZ3N0ciAiJXM6IHVpdHZvZXJlbiB2YW4gJyVzICVzJyBpcyBtaXNsdWt0IgorCisjfiBtc2dpZCAiJXM6IGludGVybmFsIGd6aXAgZXJyb3I6IHJlYWQ6IGAlcyciCisjfiBtc2dzdHIgIiVzOiBpbnRlcm5lIGd6aXAgZm91dDogcmVhZDogYCVzJyIKKworI34gbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIGVycm9yOiB3cml0ZTogYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IGludGVybmUgZ3ppcCBmb3V0OiB3cml0ZTogYCVzJyIKKworI34gbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIGVycm9yOiByZWFkKCVpKSAhPSB3cml0ZSglaSkiCisjfiBtc2dzdHIgIiVzOiBpbnRlcm5lIGd6aXAgZm91dDogcmVhZCglaSkgIT0gd3JpdGUoJWkpIgorCisjfiBtc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIGVycm9yOiByZWFkOiBgJXMnIgorI34gbXNnc3RyICIlczogaW50ZXJuZSBiemlwMiBmb3V0OiByZWFkOiBgJXMnIgorCisjfiBtc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIGVycm9yOiB3cml0ZTogYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IGludGVybmUgYnppcDIgZm91dDogd3JpdGUgYCVzJyIKKworI34gbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiBlcnJvcjogcmVhZCglaSkgIT0gd3JpdGUoJWkpIgorI34gbXNnc3RyICIlczogaW50ZXJuZSBiemlwMiBmb3V0OiByZWFkKCVpKSAhPSB3cml0ZSglaSkiCisKKyN+IG1zZ2lkICJEb24ndCBmb3JnZXQgdG8gZm9yZWdyb3VuZCAoYGZnJykgdGhpcyBwcm9jZXNzIHdoZW4geW91J3JlIGRvbmUgIVxuIgorI34gbXNnc3RyICIiCisjfiAiVmVyZ2VldCBuaWV0IG9tIGRpdCBwcm9jZXMgd2VlciB0ZSBhY3RpdmVyZW4gKGBmZycpIGFscyB1IGtsYWFyIGJlbnQhXG4iCisKKyN+IG1zZ2lkICIiCisjfiAiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvclxuIgorI34gImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LlxuIgorI34gIlNlZSAlcyAtLWxpY2Vuc2UgZm9yIGNvcHlyaWdodCBhbmQgbGljZW5zZSBkZXRhaWxzLlxuIgorI34gbXNnc3RyICIiCisjfiAiRGl0IGlzIHZyaWplIHByb2dyYW1tYXR1dXI7IHppZSBkZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSB2ZXJzaWUgMlxuIgorI34gIm9mIGxhdGVyIHZvb3Iga29wacOrZXJ2b29yd2FhcmRlbi4gIEVyIGlzIEdFRU4gZ2FyYW50aWUuXG4iCisjfiAiWmllICVzIC0tbGljZW5zZSB2b29yIGF1dGV1cnNyZWNodGVuIGVuIGxpY2VudGllZGV0YWlscy5cbiIKKworI34gbXNnaWQgInVuYWJsZSB0byBnZXQgdW5pcXVlIGZpbGVuYW1lIGZvciBjb250cm9sIGluZm8iCisjfiBtc2dzdHIgImthbiBnZWVuIHVuaWVrZSBiZXN0YW5kc25hYW0ga3JpamdlbiB2b29yIGJlc3R1cmluZ3NpbmZvcm1hdGllIgorCisjfiBtc2dpZCAiRGViaWFuIGAlcycgcGFja2FnZSBtYW5hZ2VtZW50IHByb2dyYW0gcXVlcnkgdG9vbFxuIgorI34gbXNnc3RyICJEZWJpYW4gJyVzJyBwYWtrZXRiZWhlZXIgYmV2cmFnaW5nc3Byb2dyYW1tYVxuIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IHF1ZXJ5aW5nIHBhY2thZ2VzO1xuIgorI34gIlVzZSAtLWxpY2Vuc2UgZm9yIGNvcHlyaWdodCBsaWNlbnNlIGFuZCBsYWNrIG9mIHdhcnJhbnR5IChHTlUgR1BMKS4iCisjfiBtc2dzdHIgIiIKKyN+ICJHZWJydWlrIC0taGVscCB2b29yIGh1bHAgaS52Lm0uIGhldCBiZXZyYWdlbiB2YW4gcGFra2V0dGVuO1xuIgorI34gIkdlYnJ1aWsgLS1saWNlbnNlIHZvb3IgY29weXJpZ2h0bGljZW50aWUgZW4gZ2VicmVrIGFhbiBnYXJhbnRpZSAoR05VICIKKyN+ICJHUEwpLlxuIgorI34gIlxuIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGNob3duICVzOiAlcyIKKyN+IG1zZ3N0ciAiY2hvd24gb3AgJXMgaXMgbWlzbHVrdDogJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gY2htb2QgJXM6ICVzIgorI34gbXNnc3RyICJjaG1vZCBvcCAlcyBpcyBtaXNsdWt0OiAlcyIKKworI34gbXNnaWQgImZhaWxlZCB0byBmb3JrIGZvciBjbGVhbnVwIgorI34gbXNnc3RyICJ2b3JrIHZvb3Igb3BydWltaW5nIGlzIG1pc2x1a3QiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gd2FpdCBmb3Igcm0gY2xlYW51cCIKKyN+IG1zZ3N0ciAid2FjaHRlbiBvcCAncm0nLW9wcnVpbWluZyBpcyBtaXNsdWt0IgorCisjfiBtc2dpZCAicm0gY2xlYW51cCBmYWlsZWQsIGNvZGUgJWRcbiIKKyN+IG1zZ3N0ciAiJ3JtJy1vcHJ1aW1pbmcgaXMgbWlzbHVrdCwgY29kZSAlZFxuIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgcm0gLXJmIgorI34gbXNnc3RyICJ1aXR2b2VyZW4gdmFuICdybSAtcmYnIGlzIG1pc2x1a3QiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gcmVhZCBgY29udHJvbCcgKGluIGAlLjI1NXMnKSIKKyN+IG1zZ3N0ciAia2FuIGBjb250cm9sJyBuaWV0IGxlemVuIChpbiBgJS4yNTVzJykiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gc2VlayBiYWNrIgorI34gbXNnc3RyICJrYW4gbmlldCB0ZXJ1Z3NjaHVpdmVuIgorCisjfiBtc2dpZCAidW5rbm93biBkYXRhIHR5cGUgYCVpJyBpbiBidWZmZXJfd3JpdGVcbiIKKyN+IG1zZ3N0ciAib25iZWtlbmQgZGF0YXR5cGUgYCVpJyBpbiBidWZmZXJfd3JpdGVcbiIKKworI34gbXNnaWQgInVua25vd24gZGF0YSB0eXBlIGAlaScgaW4gYnVmZmVyX3JlYWRcbiIKKyN+IG1zZ3N0ciAib25iZWtlbmQgZGF0YXR5cGUgYCVpJyBpbiBidWZmZXJfcmVhZFxuIgorCisjfiBtc2dpZCAid2FpdCBmb3Igc2hlbGwgZmFpbGVkIgorI34gbXNnc3RyICJ3YWNodGVuIG9wIHNoZWxsIGlzIG1pc2x1a3QiCisKKyN+IG1zZ2lkICJyZWFkIGVycm9yIGluIGRpdmVyc2lvbnMgW2ldIgorI34gbXNnc3RyICJsZWVzZm91dCBpbiBvbWxlaWRpbmdlbiBbaV0iCisKKyN+IG1zZ2lkICJ1bmxpbmsiCisjfiBtc2dzdHIgImRlbGluayIKKworI34gbXNnaWQgImNobW9kIgorI34gbXNnc3RyICJjaG1vZCIKKworI34gbXNnaWQgImRlbGV0ZSIKKyN+IG1zZ3N0ciAidmVyd2lqZGVyIgorCisjLCBmdXp6eQorI34gbXNnaWQgImZhaWxlZCB0byAlcyAnJS4yNTVzJyIKKyN+IG1zZ3N0ciAiJXMgJyUlLjI1NXMnIGlzIG1pc2x1a3QiCisKKyN+IG1zZ2lkICJ3YWl0IGZvciBkcGtnLXNwbGl0IGZhaWxlZCIKKyN+IG1zZ3N0ciAid2FjaHRlbiBvcCBkcGtnLXNwbGl0IGlzIG1pc2x1a3QiCisKKyN+IG1zZ2lkICJjYW5ub3QgcmVtb3ZlIGZpbGUgYCUuMjUwcyciCisjfiBtc2dzdHIgImthbiBiZXN0YW5kIGAlLjI1MHMnIG5pZXQgdmVyd2lqZGVyZW4iCisKKyN+IG1zZ2lkICIiCisjfiAiXG4iCisjfiAiQ29weXJpZ2h0IChDKSAyMDAwIFdpY2hlcnQgQWtrZXJtYW4uIgorI34gbXNnc3RyICIiCisjfiAiXG4iCisjfiAiQ29weXJpZ2h0IChDKSAyMDAwIFdpY2hlcnQgQWtrZXJtYW4uIgorCisjfiBtc2dpZCAibm8gbW9kZSBzcGVjaWZpZWQiCisjfiBtc2dzdHIgImdlZW4gbW9kdXMgb3BnZWdldmVuIgorCisjfiBtc2dpZCAiaWxsZWdhbCB1c2VyICVzIgorI34gbXNnc3RyICJpbGxlZ2FsZSBnZWJydWlrZXIgJXMiCisKKyN+IG1zZ2lkICJub24tZXhpc3RpbmcgdXNlciAlcyIKKyN+IG1zZ3N0ciAibmlldC1iZXN0YWFuZGUgZ2VicnVpa2VyICVzIgorCisjfiBtc2dpZCAiaWxsZWdhbCBncm91cCAlcyIKKyN+IG1zZ3N0ciAiaWxsZWdhbGUgZ3JvZXAgJXMiCisKKyN+IG1zZ2lkICJub24tZXhpc3RpbmcgZ3JvdXAgJXMiCisjfiBtc2dzdHIgIm5pZXQtYmVzdGFhbmRlIGdyb2VwICVzIgorCisjfiBtc2dpZCAiaWxsZWdhbCBtb2RlICVzIgorI34gbXNnc3RyICJpbGxlZ2FsZSBtb2R1cyAlcyIKKworI34gbXNnaWQgImFib3J0aW5nIgorI34gbXNnc3RyICJlciB3b3JkdCBhZmdlYnJva2VuIgorCisjfiBtc2dpZCAiY2Fubm90IG9wZW4gc3RhdG92ZXJyaWRlOiAlcyIKKyN+IG1zZ3N0ciAia2FuIHN0YXRvdmVycmlkZS1iZXN0YW5kIG5pZXQgb3BlbmVuOiAlcyIKKworI34gbXNnaWQgIk11bHRpcGxlIG92ZXJyaWRlcyBmb3IgXCIlc1wiLCBhYm9ydGluZyIKKyN+IG1zZ3N0ciAiTWVlcmRlciBvdmVyc3RpamdpbmdlbiB2b29yICclcycsIGVyIHdvcmR0IGFmZ2Vicm9rZW4iCisKKyN+IG1zZ2lkICJmYWlsZWQgd3JpdGUgZHVyaW5nIGhhc2hyZXBvcnQiCisjfiBtc2dzdHIgInNjaHJpanZlbiBpcyBtaXNsdWt0IHRpamRlbnMgZnJvbW1lbHJhcHBvcnQiCisKKyN+IG1zZ2lkICJjb25maWd1cmF0aW9uIGVycm9yOiB1bmtub3duIG9wdGlvbiAlcyIKKyN+IG1zZ3N0ciAiY29uZmlndXJhdGllZm91dDogb25iZWtlbmRlIG9wdGllICVzIgorCisjfiBtc2dpZCAiY29uZmlndXJhdGlvbiBlcnJvcjogJXMgZG9lcyBub3QgdGFrZSBhIHZhbHVlIgorI34gbXNnc3RyICJjb25maWd1cmF0aWVmb3V0OiAlcyBhY2NlcHRlZXJ0IGdlZW4gd2FhcmRlIgorCisjLCBmdXp6eQorI34gbXNnaWQgInVuZXhlY3B0ZWQgZW5kIG9mIGxpbmUgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCisjfiBtc2dzdHIgIm9udmVyd2FjaHQgcmVnZWxlaW5kZSBpbiBwYWtrZXRuYWFtIG9wIHJlZ2VsICVkIgorCisjLCBmdXp6eQorI34gbXNnaWQgIi0tY2hlY2stc3VwcG9ydGVkIHRha2VzIG5vIGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiLS0lcyB2ZXJ3YWNodCBnZWVuIGFyZ3VtZW50ZW4iCisKKyN+IG1zZ2lkICItLWZvcmdldC1vbGQtdW5hdmFpbCB0YWtlcyBubyBhcmd1bWVudHMiCisjfiBtc2dzdHIgIi0tZm9yZ2V0LW9sZC11bmF2YWlsIHZlcndhY2h0IGdlZW4gYXJndW1lbnRlbiIKKworI34gbXNnaWQgIiIKKyN+ICJcbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDE5OTQsMTk5NSBJYW4gSmFja3Nvbi4iCisjfiBtc2dzdHIgIiIKKyN+ICJcbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDE5OTQtMTk5NiBJYW4gSmFja3Nvbi4iCisKKyN+IG1zZ2lkICIiCisjfiAiVXNhZ2U6ICVzIFs8b3B0aW9ucz4gLi4uXSBbLS1dIDxmaWxlbmFtZT5cbiIKKyN+ICJcbiIKKyN+ICJPcHRpb25zOlxuIgorI34gIiAgLS1zZWN0aW9uIDxyZWdleHA+IDx0aXRsZT5cbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICBwdXQgdGhlIG5ldyBlbnRyeSBpbiB0aGUgPHJlZ2V4PiBtYXRjaGVkICIKKyN+ICJzZWN0aW9uXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgb3IgY3JlYXRlIGEgbmV3IG9uZSB3aXRoIDx0aXRsZT4gaWYgbm9uLSIKKyN+ICJleGlzdGVudC5cbiIKKyN+ICIgIC0tbWVudWVudHJ5PTx0ZXh0PiAgICAgICBzZXQgdGhlIG1lbnUgZW50cnkuXG4iCisjfiAiICAtLWRlc2NyaXB0aW9uPTx0ZXh0PiAgICAgc2V0IHRoZSBkZXNjcmlwdGlvbiB0byBiZSB1c2VkIGluIHRoZSBtZW51ICIKKyN+ICJlbnRyeS5cbiIKKyN+ICIgIC0taW5mby1maWxlPTxwYXRoPiAgICAgICBzcGVjaWZ5IGluZm8gZmlsZSB0byBpbnN0YWxsIGluIHRoZSAiCisjfiAiZGlyZWN0b3J5LlxuIgorI34gIiAgLS1kaXItZmlsZT08cGF0aD4gICAgICAgIHNwZWNpZnkgZmlsZSBuYW1lIG9mIGluZm8gZGlyZWN0b3J5IGZpbGUuXG4iCisjfiAiICAtLWluZm9kaXI9PGRpcmVjdG9yeT4gICAgc2FtZSBhcyAnLS1kaXItZmlsZT08ZGlyZWN0b3J5Pi9kaXInLlxuIgorI34gIiAgLS1pbmZvLWRpcj08ZGlyZWN0b3J5PiAgIGxpa2V3aXNlLlxuIgorI34gIiAgLS1rZWVwLW9sZCAgICAgICAgICAgICAgIGRvIG5vdCByZXBsYWNlIGVudHJpZXMgbm9yIHJlbW92ZSBlbXB0eSBvbmVzLlxuIgorI34gIiAgLS1yZW1vdmUgICAgICAgICAgICAgICAgIHJlbW92ZSB0aGUgZW50cnkgc3BlY2lmaWVkIGJ5IDxmaWxlbmFtZT4gIgorI34gImJhc2VuYW1lLlxuIgorI34gIiAgLS1yZW1vdmUtZXhhY3RseSAgICAgICAgIHJlbW92ZSB0aGUgZXhhY3QgPGZpbGVuYW1lPiBlbnRyeS5cbiIKKyN+ICIgIC0tdGVzdCAgICAgICAgICAgICAgICAgICBlbmFibGVzIHRlc3QgbW9kZSAobm8gYWN0aW9ucyB0YWtlbikuXG4iCisjfiAiICAtLWRlYnVnICAgICAgICAgICAgICAgICAgZW5hYmxlcyBkZWJ1ZyBtb2RlIChzaG93IG1vcmUgaW5mb3JtYXRpb24pLlxuIgorI34gIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIGRvIG5vdCBzaG93IG91dHB1dCBtZXNzYWdlcy5cbiIKKyN+ICIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorI34gIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJHZWJydWlrOiAlcyBbPG9wdGllcz4gLi4uXSBbLS1dIDxiZXN0YW5kc25hYW0+XG4iCisjfiAiXG4iCisjfiAiT3B0aWVzOlxuIgorI34gIiAgLS1zZWN0aW9uIDxyZWdleHA+IDx0aXRlbD5cbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICB6ZXQgZGUgbmlldXdlIGluZ2FuZyBpbiBkZSBtZXQgPHJlZ2V4PiAiCisjfiAib3ZlcmVlbmtvbWVuZGUgc2VjdGllXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgb2YgbWFhayBlZW4gbmlldXdlIGFhbiBtZXQgPHRpdGVsPiBpbmRpZW4gIgorI34gIm9uYmVzdGFhbmQuXG4iCisjfiAiICAtLW1lbnVlbnRyeT08dGVrc3Q+IHN0ZWwgZGUgbWVudS1pbmdhbmcgaW4uXG4iCisjfiAiICAtLWRlc2NyaXB0aW9uPTx0ZWtzdD4gc3RlbCBkZSBiZXNjaHJpanZpbmcgdGUgZ2VicnVpa2VuIGluIGRlIG1lbnUtIgorI34gImluZ2FuZyBpbi5cbiIKKyN+ICIgIC0taW5mby1maWxlPTxwYWQ+ICAgICAgICAgZ2VlZiBoZXQgaW4gZGUgbWFwIHRlIGluc3RhbGxlcmVuICdpbmZvJy0iCisjfiAiYmVzdGFuZCBvcC5cbiIKKyN+ICIgIC0tZGlyLWZpbGU9PHBhZD4gICAgICAgICAgIGdlZWYgZGUgYmVzdGFuZHNuYWFtIHZhbiBoZXQgJ2luZm8gbWFwJyAiCisjfiAiYmVzdGFuZCBvcC5cbiIKKyN+ICIgIC0taW5mb2Rpcj08bWFwPiAgICAgICAgICB6b2FscyAnLS1kaXItZmlsZT08bWFwPi9kaXInLlxuIgorI34gIiAgLS1pbmZvLWRpcj08bWFwPiAgICAgICAgIGlkZW0uXG4iCisjfiAiICAtLWtlZXAtb2xkICAgICAgICAgICAgICAgICAgICAgIG92ZXJzY2hyaWpmIGdlZW4gaW5nYW5nZW4sIGVuIHZlcndpamRlciAiCisjfiAiZ2VlbiBsZWdlLlxuIgorI34gIiAgLS1yZW1vdmUgICAgICAgICAgICAgICAgICAgICAgIHZlcndpamRlciBkZSBkb29yIDxiZXN0YW5kc25hYW0+ICIKKyN+ICJiYXNpc25hYW0gb3BnZWdldmVuIGluZ2FuZy5cbiIKKyN+ICIgIC0tcmVtb3ZlLWV4YWN0bHkgICAgICAgICAgIHZlcndpamRlciBkZSBleGFjdGUgPGJlc3RhbmRzbmFhbT4gaW5nYW5nLlxuIgorI34gIiAgLS10ZXN0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhY3RpdmVlcnQgZGUgdGVzdC1tb2R1cyAoZXIgd29yZGVuICIKKyN+ICJnZWVuIGFjdGllcyB1aXRnZXZvZXJkKS5cbiIKKyN+ICIgIC0tZGVidWcgICAgICAgICAgICAgICAgICAgICAgICAgYWN0aXZlZXJ0IGRlIGRlYnVnLW1vZHVzICh0b29udCBtZWVyICIKKyN+ICJpbmZvcm1hdGllKS5cbiIKKyN+ICIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICAgICAgICAgICB0b29uIGdlZW4gYm9vZGNoYXBwZW4uXG4iCisjfiAiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9vbiBkZXplIGhlbHBib29kc2NoYXAuXG4iCisjfiAiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgICAgICAgIHRvb24gZGUgdmVyc2llLlxuIgorCisjfiBtc2dpZCAiY291bGQgbm90IG9wZW4gc3RkZXJyIGZvciBvdXRwdXQhICVzIgorI34gbXNnc3RyICJLYW4gc3RkZXJyIG5pZXQgb3BlbiB2b29yIHVpdHZvZXIhICVzIgorCisjfiBtc2dpZCAiJXM6IC0tc2VjdGlvbiBuZWVkcyB0d28gbW9yZSBhcmdzIgorI34gbXNnc3RyICIlczogLS1zZWN0aWUgaGVlZnQgbm9nIHR3ZWUgYXJndW1lbnRlbiBub2RpZyIKKworI34gbXNnaWQgIiVzOiBvcHRpb24gLS0lcyBpcyBkZXByZWNhdGVkIChpZ25vcmVkKSIKKyN+IG1zZ3N0ciAiJXM6IG9wdGllIC0tJXMgaXMgdmVyb3VkZXJkICh3b3JkdCBnZW5lZ2VlcmQpIgorCisjfiBtc2dpZCAiJXM6IHVua25vd24gb3B0aW9uIGAlcyciCisjfiBtc2dzdHIgIiVzOiBvbmJla2VuZGUgb3B0aWUgJyVzJyIKKworI34gbXNnaWQgIiVzOiB0b28gbWFueSBhcmd1bWVudHMiCisjfiBtc2dzdHIgIiVzOiB0ZXZlZWwgYXJndW1lbnRlbiIKKworI34gbXNnaWQgIiVzOiAtLXNlY3Rpb24gaWdub3JlZCB3aXRoIC0tcmVtb3ZlIgorI34gbXNnc3RyICIlczogLS1zZWN0aW9uIHdvcmR0IGdlbmVnZWVyZCBiaWogLS1yZW1vdmUiCisKKyN+IG1zZ2lkICIlczogLS1kZXNjcmlwdGlvbiBpZ25vcmVkIHdpdGggLS1yZW1vdmUiCisjfiBtc2dzdHIgIiVzOiAtLWRlc2NyaXB0aW9uIHdvcmR0IGdlbmVnZWVyZCBiaWogLS1yZW1vdmUiCisKKyN+IG1zZ2lkICIlczogdGVzdCBtb2RlIC0gZGlyIGZpbGUgd2lsbCBub3QgYmUgdXBkYXRlZCIKKyN+IG1zZ3N0ciAiJXM6IHRlc3QgbW9kdXMgLSBkaXItYmVzdGFuZCB3b3JkdCBuaWV0IGJpamdld2Vya3QiCisKKyN+IG1zZ2lkICIlczogd2FybmluZywgaWdub3JpbmcgY29uZnVzaW5nIElORk8tRElSLUVOVFJZIGluIGZpbGUuIgorI34gbXNnc3RyICIiCisjfiAiJXM6IHdhYXJzY2h1d2luZywgdmVyd2FycmVuZGUgSU5GTy1ESVItRU5UUlkgaW4gYmVzdGFuZCB3b3JkdCBnZW5lZ2VlcmQuIgorCisjfiBtc2dpZCAiaW52YWxpZCBpbmZvIGVudHJ5IgorI34gbXNnc3RyICJvbmdlbGRpZ2UgaW5mby1pbmdhbmciCisKKyN+IG1zZ2lkICIiCisjfiAiXG4iCisjfiAiTm8gYFNUQVJULUlORk8tRElSLUVOVFJZJyBhbmQgbm8gYFRoaXMgZmlsZSBkb2N1bWVudHMnLlxuIgorI34gIiVzOiB1bmFibGUgdG8gZGV0ZXJtaW5lIGRlc2NyaXB0aW9uIGZvciBgZGlyJyBlbnRyeSAtIGdpdmluZyB1cFxuIgorI34gbXNnc3RyICIiCisjfiAiXG4iCisjfiAiRXIgaXMgZ2VlbiAnU1RBUlQtSU5GTy1ESVItRU5UUlknIGVuIGdlZW4gJ1RoaXMgZmlsZSBkb2N1bWVudHMnLlxuIgorI34gIiVzOiBrYW4gZ2VlbiBiZXNjaHJpanZpbmcgdm9vciAnZGlyJy1pbmdhbmcgYmVwYWxlbiAtIHBvZ2luZyB3b3JkdCAiCisjfiAib3BnZWdldmVuXG4iCisKKyN+IG1zZ2lkICIlczogbm8gZmlsZSAlcywgcmV0cmlldmluZyBiYWNrdXAgZmlsZSAlcy4iCisjfiBtc2dzdHIgIiVzOiBnZWVuIGJlc3RhbmQgJXMsIHJlc2VydmVrb3BpZSAlcyB3b3JkdCBvcGdlaGFhbGQiCisKKyN+IG1zZ2lkICIlczogbm8gYmFja3VwIGZpbGUgJXMgYXZhaWxhYmxlLCByZXRyaWV2aW5nIGRlZmF1bHQgZmlsZS4iCisjfiBtc2dzdHIgIiIKKyN+ICIlczogZ2VlbiByZXNlcnZla29waWUgJXMgYmVzY2hpa2JhYXIsIHN0YW5kYWFyZGJlc3RhbmQgd29yZHQgb3BnZWhhYWxkIgorCisjfiBtc2dpZCAiJXM6IG5vIGJhY2t1cCBmaWxlICVzIGF2YWlsYWJsZS4iCisjfiBtc2dzdHIgIiVzOiBnZWVuIHJlc2VydmVrb3BpZSAlcyBiZXNjaGlrYmFhciIKKworI34gbXNnaWQgIiVzOiBubyBkZWZhdWx0IGZpbGUgJXMgYXZhaWxhYmxlLCBnaXZpbmcgdXAuIgorI34gbXNnc3RyICIlczogZ2VlbiBzdGFuZGFhcmRiZXN0YW5kICVzIGJlc2NoaWtiYWFyLCBkaXQgd29yZHQgb3BnZWdldmVuLiIKKworI34gbXNnaWQgIiVzOiBmYWlsZWQgdG8gbG9jayBkaXIgZm9yIGVkaXRpbmchICVzIgorI34gbXNnc3RyICIlczogbWFwIHZlcmdyZW5kZWxlbiB2b29yIGFhbnBhc3NlbiBpcyBtaXNsdWt0ISAlcyIKKworI34gbXNnaWQgInRyeSBkZWxldGluZyAlcz8iCisjfiBtc2dzdHIgInByb2JlZXJ0IHUgJXMgdGUgdmVyd2lqZGVyZW4/IgorCisjfiBtc2dpZCAidW5hYmxlIHRvIG9wZW4gJXM6ICVzIgorI34gbXNnc3RyICJrYW4gJXMgbmlldCBvcGVuZW46ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGNsb3NlICVzIGFmdGVyIHJlYWQ6ICVzIgorI34gbXNnc3RyICJrYW4gJXMgbmlldCBzbHVpdGVuIG5hIGxlemVuOiAlcyIKKworI34gbXNnaWQgIiVzOiBleGlzdGluZyBlbnRyeSBmb3IgYCVzJyBub3QgcmVwbGFjZWQiCisjfiBtc2dzdHIgIiVzOiBiZXN0YWFuZGUgaW5nYW5nICclcycgd29yZHQgbmlldCB2ZXJ2YW5nZW4iCisKKyN+IG1zZ2lkICIlczogcmVwbGFjaW5nIGV4aXN0aW5nIGRpciBlbnRyeSBmb3IgYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IGJlc3RhYW5kZSAnZGlyJy1pbmdhbmcgdm9vciAnJXMnIHdvcmR0IHZlcnZhbmdlbiIKKworI34gbXNnaWQgIiVzOiBjcmVhdGluZyBuZXcgc2VjdGlvbiBgJXMnIgorI34gbXNnc3RyICIlczogbmlldXdlIHNlY3RpZSAnJXMnIHdvcmR0IGFhbmdlbWFha3QiCisKKyN+IG1zZ2lkICIlczogbm8gc2VjdGlvbnMgeWV0LCBjcmVhdGluZyBNaXNjZWxsYW5lb3VzIHNlY3Rpb24gdG9vLiIKKyN+IG1zZ3N0ciAiIgorI34gIiVzOiBlciB6aWpuIG5vZyBnZWVuIHNlY3RpZXMsICdNaXNjZWxsYW5lb3VzJy1zZWN0aWUgd29yZHQgb29rIGFhbmdlbWFha3QuIgorCisjfiBtc2dpZCAiJXM6IG5vIHNlY3Rpb24gc3BlY2lmaWVkIGZvciBuZXcgZW50cnksIHBsYWNpbmcgYXQgZW5kIgorI34gbXNnc3RyICIiCisjfiAiJXM6IGVyIGlzIGdlZW4gc2VjdGllIG9wZ2VnZXZlbiB2b29yIGRlIG5pZXV3ZSBpbmdhbmcsIHdvcmR0IGFhbiBoZXQgIgorI34gImVpbmRlIGdlcGxhYXRzdCIKKworI34gbXNnaWQgIiVzOiBkZWxldGluZyBlbnRyeSBgJXMgLi4uJyIKKyN+IG1zZ3N0ciAiJXM6IGluZ2FuZyAnJXMgLi4uJyB3b3JkdCB2ZXJ3aWpkZXJkIgorCisjfiBtc2dpZCAiJXM6IGVtcHR5IHNlY3Rpb24gYCVzJyBub3QgcmVtb3ZlZCIKKyN+IG1zZ3N0ciAiJXM6IGxlZ2Ugc2VjdGllICclcycgd29yZHQgbmlldCB2ZXJ3aWpkZXJkIgorCisjfiBtc2dpZCAiJXM6IGRlbGV0aW5nIGVtcHR5IHNlY3Rpb24gYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IGxlZ2Ugc2VjdGllICclcycgd29yZHQgdmVyd2lqZGVyZCIKKworI34gbXNnaWQgIiVzOiBubyBlbnRyeSBmb3IgZmlsZSBgJXMnIGFuZCBtZW51IGVudHJ5IGAlcyciCisjfiBtc2dzdHIgIiVzOiBnZWVuIGluZ2FuZyB2b29yIGJlc3RhbmQgJyVzJyBlbiBtZW51LWluZ2FuZyAnJXMnIgorCisjfiBtc2dpZCAiJXM6IG5vIGVudHJ5IGZvciBmaWxlIGAlcyciCisjfiBtc2dzdHIgIiVzOiBnZWVuIGl0ZW0gdm9vciBiZXN0YW5kICclcyciCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gYmFja3VwIG9sZCAlcywgZ2l2aW5nIHVwOiAlcyIKKyN+IG1zZ3N0ciAia2FuIGdlZW4gcmVzZXJ2ZWtvcGllIG1ha2VuIHZhbiBvdWRlICVzLCBkaXQgd29yZHQgb3BnZWdldmVuOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyAlczogJXMiCisjfiBtc2dzdHIgImthbiBuaWV1d2UgJXMgbmlldCBpbnN0YWxsZXJlbjogJXMiCisKKyN+IG1zZ2lkICIlczogY291bGQgbm90IGJhY2t1cCAlcyBpbiAlczogJXMiCisjfiBtc2dzdHIgIiVzOiByZXNlcnZla29waWUgdmFuICAlcyBpbiAlcyBrb24gbmlldCBnZW1hYWt0IHdvcmRlbjogJXMiCisKKyN+IG1zZ2lkICIlczogd2FybmluZyAtIHVuYWJsZSB0byB1bmxvY2sgJXM6ICVzIgorI34gbXNnc3RyICIlczogd2FhcnNjaHV3aW5nIC0ga2FuICVzIG5pZXQgb250Z3JlbmRlbGVuOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byByZWFkICVzOiAlZCIKKyN+IG1zZ3N0ciAia2FuICVzIG5pZXQgbGV6ZW46ICVkIgorCisjfiBtc2dpZCAiZGJnOiAlcyIKKyN+IG1zZ3N0ciAiZGJnOiAlcyIKKworI34gbXNnaWQgImZhaWxlZCB0byBvcGVuIHRtcGZpbGUgKGNvbnRyb2wpLCAlcyIKKyN+IG1zZ3N0ciAib3BlbmVuIHRtcGZpbGUgKGNvbnRyb2wpLCAlcyBpcyBtaXNsdWt0IgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIG9wZW4gdG1wZmlsZSAoZGF0YSksICVzIgorI34gbXNnc3RyICJvcGVuZW4gdG1wZmlsZSAoZGF0YSksICVzIGlzIG1pc2x1a3QiCisKKyN+IG1zZ2lkICJpbnZhbGlkIG51bWJlciBmb3IgLS1jb21tYW5kLWZkIgorI34gbXNnc3RyICJvbmdlbGRpZyBudW1tZXIgdm9vciAtLWNvbW1hbmQtZmQiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcmV3aW5kIGF0IHN0YXJ0IG9mIHZzbnByaW50ZiIKKyN+IG1zZ3N0ciAia2FuIG5pZXQgdGVydWdzcG9lbGVuIGJpaiBoZXQgYmVnaW4gdmFuIHZzbnByaW50ZiIKKworI34gbXNnaWQgInVuYWJsZSB0byB0cnVuY2F0ZSBpbiB2c25wcmludGYiCisjfiBtc2dzdHIgImthbiBuaWV0IGFma2FwcGVuIGluIHZzbnByaW50ZiIKKworI34gbXNnaWQgIndyaXRlIGVycm9yIGluIHZzbnByaW50ZiIKKyN+IG1zZ3N0ciAic2NocmlqZmZvdXQgaW4gdnNucHJpbnRmIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHN0YXQgaW4gdnNucHJpbnRmIgorI34gbXNnc3RyICJrYW4gZ2VlbiBzdGF0dXMgb3B2cmFnZW4gaW4gdnNucHJpbnRmIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHJld2luZCBpbiB2c25wcmludGYiCisjfiBtc2dzdHIgImthbiBuaWV0IHRlcnVnc3BvZWxlbiBpbiB2c25wcmludGYiCisKKyN+IG1zZ2lkICJyZWFkIGVycm9yIGluIHZzbnByaW50ZiB0cnVuY2F0ZWQiCisjfiBtc2dzdHIgImxlZXNmb3V0IGluIHZzbnByaW50ZiBhZmdla2FwdCIKKworI34gbXNnaWQgIlN5c3RlbSBlcnJvciBuby4lZCIKKyN+IG1zZ3N0ciAiU3lzdGVlbWZvdXQgbnIuICVkIgorCisjfiBtc2dpZCAiU2lnbmFsIG5vLiVkIgorI34gbXNnc3RyICJTaWduYWFsIG5yLiAlZCIKKworI34gbXNnaWQgImRwa2c6IHdhcm5pbmcgLSAlcyByZXR1cm5lZCBlcnJvciBleGl0IHN0YXR1cyAlZFxuIgorI34gbXNnc3RyICJkcGtnOiB3YWFyc2NodXdpbmcgLSAlcyBnYWYgZWVuIGZvdXRjb2RlICVkXG4iCisKKyN+IG1zZ2lkICJkcGtnOiB3YXJuaW5nIC0gJXMga2lsbGVkIGJ5IHNpZ25hbCAoJXMpJXNcbiIKKyN+IG1zZ3N0ciAiZHBrZzogd2FhcnNjaHV3aW5nIC0gJXMgZ2Vkb29kIGRvb3Igc2lnbmFhbCAoJXMpJXNcbiIKKworI34gbXNnaWQgImZhaWxlZCB0byByZWFkIGAlcycgYXQgbGluZSAlZCIKKyN+IG1zZ3N0ciAia2FuIGAlcycgbmlldCBsZXplbiBvcCByZWdlbCAlZCIKKworIywgZnV6enkKKyN+IG1zZ2lkICJwYXJzZSBlcnJvciwgaW4gZmlsZSBgJS4yNTVzJyBuZWFyIGxpbmUgJWQiCisjfiBtc2dzdHIgIiVzLCBpbiBiZXN0YW5kIGAlLjI1NXMnIGJpaiByZWdlbCAlZCIKKworI34gbXNnaWQgIiBwYWNrYWdlIGAlLjI1NXMnIgorI34gbXNnc3RyICIgcGFra2V0IGAlLjI1NXMnIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHJlYWxsb2MgZm9yIHZhcmlhYmxlIGJ1ZmZlciIKKyN+IG1zZ3N0ciAicmVhbGxvYyB2b29yIHZhcmlhYmVsZSBidWZmZXIgaXMgbWlzbHVrdCIKKworI34gbXNnaWQgInByb2Nlc3NfYXJjaGl2ZSAuLi4gIGFscmVhZHkgZGlzYXBwZWFyZWQgISIKKyN+IG1zZ3N0ciAicHJvY2Vzc19hcmNoaXZlIC4uLiAgaXMgcmVlZHMgdmVyZHdlbmVuICEiCisKKyN+IG1zZ2lkICJnb2JibGUgcmVwbGFjZWQgZmlsZSBgJS4yNTVzJyIKKyN+IG1zZ3N0ciAiZWV0IHZlcnZhbmdlbiBiZXN0YW5kIGAlLjI1NXMnICBvcCIKKworI34gbXNnaWQgImRwa2c6ICVzOiB3YXJuaW5nIC0gZmFpbGVkIHRvIHJlbW92ZSBgJS4yNTBzJzogJXNcbiIKKyN+IG1zZ3N0ciAiZHBrZzogJXM6IHdhYXJzY2h1d2luZyAtIGthbiBgJS4yNTBzJyBuaWV0IHZlcndpamRlcmVuOiAlc1xuIgorCisjfiBtc2dpZCAiLS1hdWRpdCBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudHMiCisjfiBtc2dzdHIgIi0tYXVkaXQgdmVyd2FjaHQgZ2VlbiBhcmd1bWVudGVuIgorCisjfiBtc2dpZCAiLS15ZXQtdG8tdW5wYWNrIGRvZXMgbm90IHRha2UgYW55IGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiLS15ZXQtdG8tdW5wYWNrIHZlcndhY2h0IGdlZW4gYXJndW1lbnRlbiIKKworI34gbXNnaWQgIi0tYXNzZXJ0LSogZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnRzIgorI34gbXNnc3RyICItLWFzc2VydC0qIHZlcndhY2h0IGdlZW4gYXJndW1lbnRlbiIKKworI34gbXNnaWQgIi0tcHJlZGVwLXBhY2thZ2UgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tcHJlZGVwLXBhY2thZ2UgYWNjZXB0ZWVydCBnZWVuIGFyZ3VtZW50ZW4iCisKKyN+IG1zZ2lkICItLXByaW50LWFyY2hpdGVjdHVyZSBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudCIKKyN+IG1zZ3N0ciAiLS1wcmludC1hcmNoaXRlY3R1cmUgYWNjZXB0ZWVydCBnZWVuIGFyZ3VtZW50ZW4iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gc3RhdCBpbnN0YWxsZWQgJXMgc2NyaXB0IGAlLjI1MHMnIgorI34gbXNnc3RyICIiCisjfiAia2FuIGRlIHN0YXR1cyB2YW4gaGV0IGdlw69uc3RhbGxlZXJkZSAlcyBzY3JpcHQgYCUuMjUwcycgbmlldCBvcHZyYWdlbiIKKworI34gbXNnaWQgInVuYWJsZSB0byBzdGF0IG5ldyAlcyBzY3JpcHQgYCUuMjUwcyciCisjfiBtc2dzdHIgImthbiBkZSBzdGF0dXMgdmFuIGhldCBuaWV1d2UgJXMgc2NyaXB0IGAlLjI1MHMnIG5pZXQgb3B2cmFnZW4iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gZXhlY3V0ZSBuZXcgJXMiCisjfiBtc2dzdHIgImthbiBuaWV1dyAlcyBuaWV0IHVpdHZvZXJlbiIKKworI34gbXNnaWQgImRwa2c6IHdhcm5pbmcgLSB1bmFibGUgdG8gc3RhdCAlcyBgJS4yNTBzJzogJXNcbiIKKyN+IG1zZ3N0ciAiIgorI34gImRwa2c6IHdhYXJzY2h1d2luZyAtIGthbiBkZSBzdGF0dXMgdmFuICVzIGAlLjI1MHMnIG5pZXQgb3B2cmFnZW46ICVzXG4iCisKKyN+IG1zZ2lkICItLXNldC1zZWxlY3Rpb25zIGRvZXMgbm90IHRha2UgYW55IGFyZ3VtZW50IgorI34gbXNnc3RyICItLXNldC1zZWxlY3Rpb25zIHZlcndhY2h0IGdlZW4gYXJndW1lbnRlbiIKKworI34gbXNnaWQgIi0tY2xlYXItc2VsZWN0aW9ucyBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudCIKKyN+IG1zZ3N0ciAiLS1jbGVhci1zZWxlY3Rpb25zIHZlcndhY2h0IGdlZW4gYXJndW1lbnRlbiIKKworI34gbXNnaWQgIi0tYnVpbGQgbmVlZHMgYSBkaXJlY3RvcnkgYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tYnVpbGQgaGVlZnQgZWVuIG1hcCBhcmd1bWVudCBub2RpZyIKKworI34gbXNnaWQgIiIKKyN+ICJkcGtnLWRlYjogd2FybmluZywgbm90IGNoZWNraW5nIGNvbnRlbnRzIG9mIGNvbnRyb2wgYXJlYS5cbiIKKyN+ICJkcGtnLWRlYjogYnVpbGRpbmcgYW4gdW5rbm93biBwYWNrYWdlIGluIGAlcycuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJkcGtnLWRlYjogd2FhcnNjaHV3aW5nLCBpbmhvdWQgdmFuIGhldCBiZXN0dXJpbmdzZ2ViaWVkIGlzIG5pZXQgIgorI34gImdlY29udHJvbGVlcmQuXG4iCisjfiAiZHBrZy1kZWI6IGJvdXdlbiB2YW4gb25iZWtlbmQgcGFra2V0IGluIGAlcycuXG4iCisKKyN+IG1zZ2lkICJJbnRlcm5hbCBlcnJvciwgY29tcHJlc3NfdHlwZSBgJWknIHVua25vd24hIgorI34gbXNnc3RyICJJbnRlcm5lIGZvdXQsIGNvbXByZXNzaWV0eXBlICclaScgaXMgb25iZWtlbmQhIgorCisjfiBtc2dpZCAiLS1qb2luIHJlcXVpcmVzIG9uZSBvciBtb3JlIHBhcnQgZmlsZSBhcmd1bWVudHMiCisjfiBtc2dzdHIgIi0tam9pbiB2ZXJlaXN0IGVlbiBvZiBtZWVyZGVyZSBkZWVsYmVzdGFuZGVuIGFscyBhcmd1bWVudGVuIgorCisjfiBtc2dpZCAiLS1saXN0cSBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudHMiCisjfiBtc2dzdHIgIi0tbGlzdHEgdmVyd2FjaHQgZ2VlbiBhcmd1bWVudGVuIgorCisjfiBtc2dpZCAiIgorI34gIlxuIgorI34gIkNvcHlyaWdodCAoQykgMTk5NiBLaW0tTWluaCBLYXBsYW4uIgorI34gbXNnc3RyICIiCisjfiAiXG4iCisjfiAiQ29weXJpZ2h0IChDKSA5OTYgS2ltLU1pbmggS2FwbGFuIgorCisjfiBtc2dpZCAiIgorI34gIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSBbLS1dIFs8ZGlybmFtZT5dXG4iCisjfiAiXG4iCisjfiAiT3B0aW9uczpcbiIKKyN+ICIgIC0tdW5zYWZlICAgICBzZXQgc29tZSBhZGRpdGlvbmFsIHBvc3NpYmx5IHVzZWZ1bCBvcHRpb25zLlxuIgorI34gIiAgICAgICAgICAgICAgIHdhcm5pbmc6IHRoaXMgb3B0aW9uIG1heSBnYXJibGUgYW4gb3RoZXJ3aXNlIGNvcnJlY3QgIgorI34gImZpbGUuXG4iCisjfiAiICAtLWhlbHAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyN+ICIgIC0tdmVyc2lvbiAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorI34gbXNnc3RyICIiCisjfiAiR2VicnVpazogJXMgWzxvcHRpZT4gLi4uXSBbLS1dIFs8bWFwbmFhbT5dXG4iCisjfiAiXG4iCisjfiAiT3B0aWVzOlxuIgorI34gIiAgLS11bnNhZmUgICAgc3RlbCBzb21taWdlIGFhbnZ1bGxlbmRlIG1vZ2VsaWprIG51dHRpZ2Ugb3B0aWVzIGluLlxuIgorI34gIiAgICB3YWFyc2NodXdpbmc6IGRlemUgb3B0aWUga2FuIGVlbiBhbmRlcnMgY29ycmVjdCBiZXN0YW5kIG1pc3Zvcm1lbiBcbiIKKyN+ICIgIC0taGVscCAgICAgICAgdG9vbiBkZXplIGhlbHBib29kc2NoYXAuXG4iCisjfiAiICAtLXZlcnNpb24gICB0b29uIGRlIHZlcnNpZS5cbiIKKworI34gbXNnaWQgInRyeSBkZWxldGluZyAlcyIKKyN+IG1zZ3N0ciAicHJvYmVlciAlcyB0ZSB2ZXJ3aWpkZXJlbiIKKworI34gbXNnaWQgImZhaWxlZCB0byBpbnN0YWxsICVzOyBpdCB3aWxsIGJlIGxlZnQgYXMgJXM6ICVzIgorI34gbXNnc3RyICJpbnN0YWxsZXJlbiB2YW4gJXMgaXMgbWlzbHVrdDogaGV0IHdvcmR0IGdlbGF0ZW4gYWxzICVzOiAlcyIKKworI34gbXNnaWQgIiVzOiB1bmFibGUgdG8gdW5sb2NrICVzOiAlcyIKKyN+IG1zZ3N0ciAiJXM6IG9udGdyZW5kZWxlbiB2YW4gJXMgaXMgbWlzbHVrdDogJXMiCisKKyN+IG1zZ2lkICIlcyAtIHN0YXR1cyBpcyAlcy4iCisjfiBtc2dzdHIgIiVzIC0gc3RhdHVzIGlzICVzLiIKKworI34gbXNnaWQgIiBsaW5rIHVucmVhZGFibGUgLSAlcyIKKyN+IG1zZ3N0ciAibGluayBpcyBvbmxlZXNiYWFyIC0gJXMiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiIgorI34gIndhcm5pbmc6ICVzIGlzIHN1cHBvc2VkIHRvIGJlIGEgc3ltbGluayB0byAlcywgXG4iCisjfiAib3Igbm9uZXhpc3RlbnQ7IGhvd2V2ZXIsIHJlYWRsaW5rIGZhaWxlZDogJXMiCisjfiBtc2dzdHIgIiIKKyN+ICJ3YWFyc2NodXdpbmc6ICVzIHdvcmR0IHZlcm9uZGVyc3RlbGQgZWVuIHN5bWJvbGlzY2hlIGtvcHBlbGluZyBuYWFyICVzIHRlICIKKyN+ICJ6aWpuXG4iCisjfiAiIChvZiBvbmJlc3RhYW5kKTsgZWNodGVyIHJlYWRsaW5rIGlzIG1pc2x1a3Q6ICVzIgorCisjfiBtc2dpZCAiTGVhdmluZyAlcyAoJXMpIHBvaW50aW5nIHRvICVzLiIKKyN+IG1zZ3N0ciAiJXMgKCVzKSBsYXRlbiB3ZSB6b2FscyBpcywgdmVyd2lqemVuZCBuYWFyICVzLiIKKworI34gbXNnaWQgIlVwZGF0aW5nICVzICglcykgdG8gcG9pbnQgdG8gJXMuIgorI34gbXNnc3RyICIlcyAoJXMpIHdvcmR0IGJpamdld2Vya3Qgb20gbmFhciAlcyB0ZSB2ZXJ3aWp6ZW4uIgorCisjfiBtc2dpZCAiUmVtb3ZpbmcgJXMgKCVzKSwgbm90IGFwcHJvcHJpYXRlIHdpdGggJXMuIgorI34gbXNnc3RyICIlcyAoJXMpIHdvcmR0IHZlcndpamRlcnQsIG5pZXQgdG9lcGFzc2VsaWprIG1ldCAlcy4iCisKKyN+IG1zZ2lkICIiCisjfiAiQ2hlY2tpbmcgYXZhaWxhYmxlIHZlcnNpb25zIG9mICVzLCB1cGRhdGluZyBsaW5rcyBpbiAlcyAuLi5cbiIKKyN+ICIoWW91IG1heSBtb2RpZnkgdGhlIHN5bWxpbmtzIHRoZXJlIHlvdXJzZWxmIGlmIGRlc2lyZWQgLSBzZWUgYG1hbiBsbicuKSIKKyN+IG1zZ3N0ciAiIgorI34gIkJlc2NoaWtiYXJlIHZlcnNpZXMgdmFuICVzIHdvcmRlbiBuYWdla2VrZW4sIGxpbmtzIGluICVzIHdvcmRlbiAiCisjfiAiYmlqZ2V3ZXJrdCAuLi5cbiIKKyN+ICIoVSBrdW50IGRlIHN5bWJvbGlzY2hlIGtvcHBlbGluZ2VuIGRlc2dld2Vuc3QgemVsZiB3aWp6aWdlbiAtIHppZSAnbWFuICIKKyN+ICJsbicuKSIKKworI34gbXNnaWQgInNsYXZlIGxpbmsgbmFtZSAlcyBkdXBsaWNhdGVkIgorI34gbXNnc3RyICJzbGFhZi1saW5rbmFhbSAlcyBpcyBkdWJiZWwiCisKKyN+IG1zZ2lkICJSZWNvdmVyaW5nIGZyb20gcHJldmlvdXMgZmFpbGVkIHVwZGF0ZSBvZiAlcyAuLi4iCisjfiBtc2dzdHIgIkVyIHdvcmR0IGhlcnN0ZWx0IHZhbiBkZSB2b3JpZ2UgbWlzbHVrdGUgb3B3YWFyZGVyaW5nIHZhbiAlcyAuLi4iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gb3BlbiAlcyBmb3Igd3JpdGU6ICVzIgorI34gbXNnc3RyICJrYW4gJXMgbmlldCBvcGVuZW4gdm9vciBzY2hyaWp2ZW46ICVzIgorCisjfiBtc2dpZCAiTGFzdCBwYWNrYWdlIHByb3ZpZGluZyAlcyAoJXMpIHJlbW92ZWQsIGRlbGV0aW5nIGl0LiIKKyN+IG1zZ3N0ciAiIgorI34gIkxhYXRzdGUgcGFra2V0IGRhdCB2b29yemFnIGluICVzICglcykgaXMgdmVyd2lqZGVyZCwgZGl0IHdvcmR0ICIKKyN+ICJ2ZXJ3aWpkZXJkLiAiCisKKyN+IG1zZ2lkICIiCisjfiAiVGhlcmUgaXMgb25seSAxIHByb2dyYW0gd2hpY2ggcHJvdmlkZXMgJXNcbiIKKyN+ICIoJXMpLiBOb3RoaW5nIHRvIGNvbmZpZ3VyZS5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIkVyIGlzIHNsZWNodHMgMSBwcm9ncmFtbWEgZGF0ICVzIHZvb3J6aWV0XG4iCisjfiAiKCVzKS4gRXIgaXMgbmlldHMgaW4gdGUgc3RlbGxlbi5cbiIKKworI34gbXNnaWQgIiIKKyN+ICJUaGVyZSBhcmUgJXMgYWx0ZXJuYXRpdmVzIHdoaWNoIHByb3ZpZGUgYCVzJy5cbiIKKyN+ICJcbiIKKyN+ICIgIFNlbGVjdGlvbiAgICBBbHRlcm5hdGl2ZVxuIgorI34gIi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJFciB6aWpuICVzIGFsdGVybmF0aWV2ZW4gZGllICclcycgdm9vcnppZW4uXG4iCisjfiAiXG4iCisjfiAiICBTZWxlY3RpZSAgICBBbHRlcm5hdGlldmVuXG4iCisjfiAiLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiIKKworI34gbXNnaWQgImVycm9yIG9yIGVvZiByZWFkaW5nICVzIGZvciAlcyAoJXMpIgorI34gbXNnc3RyICJmb3V0IG9mIGVvZiBiaWogbGV6ZW4gdmFuICVzIHZvb3IgJXMgKCVzKSIKKworI34gbXNnaWQgIm1pc3NpbmcgbmV3bGluZSBhZnRlciAlcyIKKyN+IG1zZ3N0ciAibWlzc2VuZCByZWdlbGVpbmRlIG5hICVzIgorCisjfiBtc2dpZCAiU2VyaW91cyBwcm9ibGVtOiAlcyIKKyN+IG1zZ3N0ciAiRXJuc3RpZyBwcm9ibGVlbTogJXMiCisKKyN+IG1zZ2lkICJjb3VsZG4ndCBhbGxvY2F0ZSBtZW1vcnkgZm9yIHN0cmR1cCBpbiBmaW5kcGFja2FnZSglcykiCisjfiBtc2dzdHIgInJlc2VydmVyZW4gdmFuIGdlaGV1Z2VuIHZvb3Igc3RyZHVwIGluIGZpbmRwYWNrYWdlKCVzKSBpcyBtaXNsdWt0IgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGFsbG9jYXRlIGJ1ZmZlciBpbiBidWZmZXJfY29weSAoJXMpIgorI34gbXNnc3RyICJhbGxvY2VyZW4gdmFuIGJ1ZmZlciBpcyBtaXNsdWt0IGluIGJ1ZmZlcl9jb3B5ICglcykiCisKKyN+IG1zZ2lkICJFcnJvciBhbGxvY2F0aW5nIG1lbW9yeSBmb3IgY2ZnZmlsZW5hbWUiCisjfiBtc2dzdHIgIkZvdXQgYmlqIGhldCB0b2V3aWp6ZW4gdmFuIGdlaGV1Z2VuIHZvb3IgY2ZnZmlsZW5hbWUiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gbWFsbG9jIGZvciBpbmZvIGZpbGUgYCUuMjU1cyciCisjfiBtc2dzdHIgImthbiBnZWVuIGdlaGV1Z2VuIHJlc2VydmVyZW4gdm9vciBpbmZvcm1hdGllYmVzdGFuZCBgJS4yNTVzJyIKKworI34gbXNnaWQgImRpdmVyc2lvbnMgZmlsZSBoYXMgdG9vLWxvbmcgbGluZSBvciBFT0YgW2ldIgorI34gbXNnc3RyICJvbWxlaWRpbmdlbmJlc3RhbmQgaGVlZnQgZWVuIHRlIGxhbmdlIHJlZ2VsIG9mIEVPRiBbaV0iCisKKyN+IG1zZ2lkICJyZWFkIGVycm9yIGluIGRpdmVyc2lvbnMgW2lpXSIKKyN+IG1zZ3N0ciAibGVlc2ZvdXQgaW4gb21sZWlkaW5nZW4gW2lpXSIKKworI34gbXNnaWQgInVuZXhwZWN0ZWQgRU9GIGluIGRpdmVyc2lvbnMgW2lpXSIKKyN+IG1zZ3N0ciAib252ZXJ3YWNodGUgRU9GIGluIG9tbGVpZGluZ2VuIFtpaV0iCisKKyN+IG1zZ2lkICJmZ2V0cyBnYXZlIGFuIGVtcHR5IHN0cmluZyBmcm9tIGRpdmVyc2lvbnMgW2lpXSIKKyN+IG1zZ3N0ciAiZmdldHMgZ2FmIGVlbiBsZWdlIHN0cmluZyB1aXQgb21sZWlkaW5nZW4gW2lpXSIKKworI34gbXNnaWQgImRpdmVyc2lvbnMgZmlsZSBoYXMgdG9vLWxvbmcgbGluZSBvciBFT0YgW2lpXSIKKyN+IG1zZ3N0ciAib21sZWlkaW5nZW5iZXN0YW5kIGhlZWZ0IGVlbiB0ZSBsYW5nZSByZWdlbCBvZiBFT0YgW2lpXSIKKworI34gbXNnaWQgInJlYWQgZXJyb3IgaW4gZGl2ZXJzaW9ucyBbaWlpXSIKKyN+IG1zZ3N0ciAibGVlc2ZvdXQgaW4gb21sZWlkaW5nZW4gW2lpaV0iCisKKyN+IG1zZ2lkICJ1bmV4cGVjdGVkIEVPRiBpbiBkaXZlcnNpb25zIFtpaWldIgorI34gbXNnc3RyICJvbnZlcndhY2h0ZSBFT0YgaW4gb21sZWlkaW5nZW4gW2lpaV0iCisKKyN+IG1zZ2lkICJmZ2V0cyBnYXZlIGFuIGVtcHR5IHN0cmluZyBmcm9tIGRpdmVyc2lvbnMgW2lpaV0iCisjfiBtc2dzdHIgImZnZXRzIGdhZiBlZW4gbGVnZSByZWdlbCB1aXQgb21sZWlkaW5nZW4gW2lpaV0iCisKKyN+IG1zZ2lkICJjb3VsZG4ndCBtYWxsb2MgaW4gZXhlY2JhY2tlbmQiCisjfiBtc2dzdHIgImthbiBnZWVuIGdlaGV1Z2VuIHJlc2VydmVyZW4gaW4gZXhlYy1iYWNrZW5kIgorCisjfiBtc2dpZCAiY291bGRuJ3Qgc3RyZHVwIGluIGV4ZWNiYWNrZW5kIgorI34gbXNnc3RyICJzdHJkdXAgaXMgbWlzbHVrdCBpbiBleGVjLWJhY2tlbmQiCisKKyN+IG1zZ2lkICJmYWlsZWQgYWxsb2NhdGluZyBtZW1vcnkgZm9yIHZhcmlhYmxlIGBjdHJsYXJlYSciCisjfiBtc2dzdHIgInRvZXdpanplbiB2YW4gZ2VoZXVnZW4gdm9vciBkZSB2YXJpYWJlbGUgJ2N0cmxhcmVhJyBpcyBtaXNsdWt0IgorCisjfiBtc2dpZCAiQ2Fubm90IGdldCBFTk9FTlQgdmFsdWUgZnJvbSAlczogJXMiCisjfiBtc2dzdHIgIkthbiBnZWVuIEVOT0VOVC13YWFyZGUga3JpamdlbiB2YW4gJXM6ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGVuc3VyZSAlcyBub25leGlzdGVudDogJXMiCisjfiBtc2dzdHIgImthbiBuaWV0IHZlcnpla2VyZW4gZGF0ICVzIG5pZXQgYmVzdGFhdDogJXMiCisKKyN+IG1zZ2lkICIiCisjfiAid2FybmluZzogJXMgaXMgc3VwcG9zZWQgdG8gYmUgYSBzbGF2ZSBzeW1saW5rIHRvXG4iCisjfiAiICVzLCBvciBub25leGlzdGVudDsgaG93ZXZlciwgcmVhZGxpbmsgZmFpbGVkOiAlcyIKKyN+IG1zZ3N0ciAiIgorI34gIndhYXJzY2h1d2luZzogJXMgd29yZHQgdmVyb25kZXJzdGVsZCBlZW4gc2xhYWYtbGluayB0ZSB6aWpuIHZvb3JcbiIKKyN+ICIgJXMsIG9mIG9uYmVzdGFhbmQ7IGVjaHRlciByZWFkbGluayBpcyBtaXNsdWt0OiAlcyIKKworI34gbXNnaWQgIiIKKyN+ICJkcGtnOiByZWdhcmRpbmcgJXMgY29udGFpbmluZyAlczpcbiIKKyN+ICIgcGFja2FnZSB1c2VzIEJyZWFrczsgbm90IHN1cHBvcnRlZCBpbiB0aGlzIGRwa2dcbiIKKyN+IG1zZ3N0ciAiIgorI34gImRwa2c6IGJldHJlZmZlbmRlICVzIG1ldCBkYWFyaW4gJXM6XG4iCisjfiAiIHBha2V0IGdlYnJ1aWt0ICdCcmVha3MnLXZlbGQ7IGRlemUgdmVyc2llIHZhbiBkcGtnIG9uZGVyc3RldW50IGRpdCBuaWV0XG4iCisKKyN+IG1zZ2lkICJ1bnN1cHBvcnRlZCBkZXBlbmRlbmN5IHByb2JsZW0gLSBub3QgaW5zdGFsbGluZyAlLjI1MHMiCisjfiBtc2dzdHIgIiIKKyN+ICJuaWV0LW9uZGVyc3RldW5kIHZlcmVpc3RlbnByb2JsZWVtIC0gJS4yNTBzIHdvcmR0IG5pZXQgZ2XDr25zdGFsbGVlcmQiCisKKyN+IG1zZ2lkICJkcGtnOiB3YXJuaW5nIC0gaWdub3JpbmcgQnJlYWtzICFcbiIKKyN+IG1zZ3N0ciAiZHBrZzogd2FhcnNjaHV3aW5nIC0gJ0JyZWFrcyctdmVsZCB3b3JkdCBnZW5lZ2VlcmQgIVxuIgorCisjfiBtc2dpZCAidG8iCisjfiBtc2dzdHIgIm5hYXIiCisKKyN+IG1zZ2lkICJmcm9tIgorI34gbXNnc3RyICJ2YW4iCisKKyN+IG1zZ2lkICJlcnJvciByZWFkaW5nICVzIgorI34gbXNnc3RyICJmb3V0IGJpaiBsZXplbiAlcyIKKworI34gbXNnaWQgInR3byBtb2RlcyBzcGVjaWZpZWQ6ICVzIGFuZCAtLSVzIgorI34gbXNnc3RyICJ0d2VlIG1vZGVzIG9wZ2VnZXZlbjogJXMgZW4gLS0lcyIKKworI34gbXNnaWQgIm1hbmZsYWciCisjfiBtc2dzdHIgIm1hbmZsYWciCisKKyN+IG1zZ2lkICIlczogZmFpbGVkIHRvIGV4ZWMgZ3ppcCAtZGMiCisjfiBtc2dzdHIgIiVzOiB1aXR2b2VyZW4gdmFuICdnemlwIC1kYycgaXMgbWlzbHVrdCIKKworI34gbXNnaWQgIiVzOiBmYWlsZWQgdG8gZXhlYyBiemlwMiAtZGMiCisjfiBtc2dzdHIgIiVzOiB1aXR2b2VyZW4gdmFuICAnYnppcDIgLWRjJyBpcyBtaXNsdWt0IgorCisjfiBtc2dpZCAiJXM6IGZhaWxlZCB0byBleGVjIGJ6aXAyICVzIgorI34gbXNnc3RyICIlczogdWl0dm9lcmVuIHZhbiBiemlwMiAlcyBpcyBtaXNsdWt0IgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9wby9ubi5nbW8gYi9kcGtnLTEuMTYuMS4xL3BvL25uLmdtbwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mMmQ2OWQ3Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9wby9ubi5nbW8KQmluYXJ5IGZpbGVzIGRpZmZlcgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9wby9ubi5wbyBiL2Rwa2ctMS4xNi4xLjEvcG8vbm4ucG8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOWJmZjEzMAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvcG8vbm4ucG8KQEAgLTAsMCArMSw3MDA2IEBACisjIHRyYW5zbGF0aW9uIG9mIGRlYmNvbmZfbm4ucG8gdG8gTm9yd2VnaWFuIG55bm9yc2sKKyMgdHJhbnNsYXRpb24gb2YgZHBrZ19ubi5wbyB0byBOb3J3ZWdpYW4gKE55bm9yc2spCisjIHRyYW5zbGF0aW9uIG9mIG5uLnBvIHRvIE5vcndlZ2lhbiBueW5vcnNrCisjIHRyYW5zbGF0aW9uIG9mIGRwa2cucG8gdG8gTm9yd2VnaWFuIG55bm9yc2sKKyMgdHJhbnNsYXRpb24gb2Ygbm4ucG8gdG8gTm9yd2VnaWFuIE55bm9yc2sKKyMgdHJhbnNsYXRpb24gb2YgZHBrZy5wbyB0byBOb3J3ZWdpYW4gTnlub3JzaworIyBHYXV0ZSBIdm9zbGVmIEt2YWxuZXMgPGdhdXRlQHZlcmRzdmV2ZW4uY29tPiwgMjAwMywgMjAwNC4KKyMgSMOldmFyZCBLb3Jzdm9sbCA8a29yc3ZvbGxAc2t1bGVsaW51eC5ubz4sIDIwMDMsIDIwMDQsIDIwMDUuCittc2dpZCAiIgorbXNnc3RyICIiCisiUHJvamVjdC1JZC1WZXJzaW9uOiBkZWJjb25mX25uXG4iCisiUmVwb3J0LU1zZ2lkLUJ1Z3MtVG86IGRlYmlhbi1kcGtnQGxpc3RzLmRlYmlhbi5vcmdcbiIKKyJQT1QtQ3JlYXRpb24tRGF0ZTogMjAxMS0xMC0xNCAwNzoxMSswMjAwXG4iCisiUE8tUmV2aXNpb24tRGF0ZTogMjAwNi0wMi0xNyAwODo1MiswMjAwXG4iCisiTGFzdC1UcmFuc2xhdG9yOiBIw6V2YXJkIEtvcnN2b2xsIDxrb3Jzdm9sbEBza3VsZWxpbnV4Lm5vPlxuIgorIkxhbmd1YWdlLVRlYW06IE5vcndlZ2lhbiBueW5vcnNrIDxpMThuLW5uQGxpc3Rlci5waW5nLnVpby5ubz5cbiIKKyJMYW5ndWFnZTogbm5cbiIKKyJNSU1FLVZlcnNpb246IDEuMFxuIgorIkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD1VVEYtOFxuIgorIkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXRcbiIKKyJYLUdlbmVyYXRvcjogS0JhYmVsIDEuMTBcbiIKKyJQbHVyYWwtRm9ybXM6ICBucGx1cmFscz0yOyBwbHVyYWw9KG4gIT0gMSk7XG4iCisKKyM6IGxpYi9kcGtnL2FyLmM6NjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgJyVjJyBpbiBhcmNoaXZlICclLjI1MHMnIG1lbWJlciAnJS4xNnMnIHNpemUiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvYXIuYzo4MSBsaWIvZHBrZy9hci5jOjk3IGxpYi9kcGtnL2FyLmM6MTA4IGxpYi9kcGtnL2FyLmM6MTEyCisjOiBsaWIvZHBrZy9hci5jOjEzNCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE1NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIGZpbGUgJyVzJyIKK21zZ3N0ciAia2xhcnRlIGlra2plIG9wbmEga2plbGRlZmlsYSDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy9hci5jOjk0CisjLCBjLWZvcm1hdAorbXNnaWQgImdlbmVyYXRlZCBjb3JydXB0IGFyIGhlYWRlciBmb3IgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9hci5jOjEyMworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGFyIG1lbWJlciBmaWxlICglcykiCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBvcHByZXR0YSBtZWxsb21iZWxzIGZpbCAoZGF0YSkiCisKKyM6IGxpYi9kcGtnL2FyLmM6MTMwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJhciBtZW1iZXIgZmlsZSAoJXMpIgorbXNnc3RyICJrbGFydGUgaWtramUgb3BwcmV0dGEgbWVsbG9tYmVscyBmaWwgKGRhdGEpIgorCisjOiBsaWIvZHBrZy9idWZmZXIuYzoxOTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZWFkIG9uIGJ1ZmZlciBjb3B5IGZvciAlcyIKK21zZ3N0ciAibWlzbHVra2FzdCBpIGJ1ZmZlcl9jb3B5ICglcykiCisKKyM6IGxpYi9kcGtnL2J1ZmZlci5jOjIxMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIGluIHdyaXRlIG9uIGJ1ZmZlciBjb3B5IGZvciAlcyIKK21zZ3N0ciAibWlzbHVra2FzdCBpIGJ1ZmZlcl9jb3B5ICglcykiCisKKyM6IGxpYi9kcGtnL2J1ZmZlci5jOjIyMAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAic2hvcnQgcmVhZCBvbiBidWZmZXIgY29weSBmb3IgJXMiCittc2dzdHIgImtvcnQgbGVzaW5nIGkgYnVmZmVyX2NvcHkgKCVzKSIKKworIzogbGliL2Rwa2cvYnVmZmVyLmM6Mjg4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyB0YXIiCittc2dpZCAiZmFpbGVkIHRvIHNlZWsgJXMiCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBrw7h5cmEgwqt0YXLCuyIKKworIzogbGliL2Rwa2cvY29tbWFuZC5jOjE3OCBsaWIvZHBrZy9jb21tYW5kLmM6MjA0IHNyYy9oZWxwLmM6NjIxCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjk4IHNyYy9wcm9jZXNzYXJjLmM6MTM4IHNyYy9wcm9jZXNzYXJjLmM6NDMyCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjgzOSBkcGtnLWRlYi9idWlsZC5jOjQ1OSBkcGtnLWRlYi9idWlsZC5jOjUzOAorIzogZHBrZy1kZWIvYnVpbGQuYzo1NjEgZHBrZy1kZWIvZXh0cmFjdC5jOjMxNyBkcGtnLWRlYi9pbmZvLmM6NjUKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzo2OSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NDU3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZXhlY3V0ZSAlcyAoJXMpIgorbXNnc3RyICJrbGFydGUgaWtramUga8O4eXJhICVzIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBkZWNvbXByZXNzaW9uIgorbXNnc3RyICIlczogZGVrb21wcmltZXJpbmciCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6ODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGNvbXByZXNzaW9uIgorbXNnc3RyICIlczoga29tcHJpbWVyaW5nIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjExMgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZXJyb3IgYmluZGluZyBpbnB1dCB0byBnemlwIHN0cmVhbSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjEyNAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgcmVhZCBlcnJvcjogJyVzJyIKK21zZ3N0ciAiJXM6IGludGVybiBnemlwLWZlaWw6IMKrJXPCuyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxMzIgbGliL2Rwa2cvY29tcHJlc3MuYzoxMzYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHdyaXRlIGVycm9yIgorbXNnc3RyICIlczogaW50ZXJuIGd6aXAtZmVpbDogwqslc8K7IgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE1MAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZXJyb3IgYmluZGluZyBvdXRwdXQgdG8gZ3ppcCBzdHJlYW0iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxNTcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHJlYWQgZXJyb3IiCittc2dzdHIgIiVzOiBpbnRlcm4gZ3ppcC1mZWlsOiDCqyVzwrsiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTY3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCB3cml0ZSBlcnJvcjogJyVzJyIKK21zZ3N0ciAiJXM6IGludGVybiBnemlwLWZlaWw6IMKrJXPCuyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxODAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHdyaXRlIGVycm9yOiAlcyIKK21zZ3N0ciAiJXM6IGludGVybiBnemlwLWZlaWw6IMKrJXPCuyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyMjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yIGJpbmRpbmcgaW5wdXQgdG8gYnppcDIgc3RyZWFtIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjMyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgcmVhZCBlcnJvcjogJyVzJyIKK21zZ3N0ciAiJXM6IGludGVybiBiemlwMi1mZWlsOiDCqyVzwrsiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjQwIGxpYi9kcGtnL2NvbXByZXNzLmM6MjQ0IGxpYi9kcGtnL2NvbXByZXNzLmM6Mjk0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgd3JpdGUgZXJyb3IiCittc2dzdHIgIiVzOiBpbnRlcm4gYnppcDItZmVpbDogwqslc8K7IgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI1OAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZXJyb3IgYmluZGluZyBvdXRwdXQgdG8gYnppcDIgc3RyZWFtIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjY1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgcmVhZCBlcnJvciIKK21zZ3N0ciAiJXM6IGludGVybiBiemlwMi1mZWlsOiDCqyVzwrsiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6Mjc1IGxpYi9kcGtnL2NvbXByZXNzLmM6Mjg2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgd3JpdGUgZXJyb3I6ICclcyciCittc2dzdHIgIiVzOiBpbnRlcm4gYnppcDItZmVpbDogwqslc8K7IgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI4MgorbXNnaWQgInVuZXhwZWN0ZWQgYnppcDIgZXJyb3IiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzo2OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidXBkYXRlcyBkaXJlY3RvcnkgY29udGFpbnMgZmlsZSBgJS4yNTBzJyB3aG9zZSBuYW1lIGlzIHRvbyBsb25nIChsZW5ndGg9JWQsICIKKyJtYXg9JWQpIgorbXNnc3RyICIiCisib3BwZGF0ZXJpbmdza2F0YWxvZ2VuIGlubmVoZWxkIGZpbGEgwqslLjI1MHPCuywgc29tIGhhciBmb3IgbGFuZ3QgbmFtbiAobGVuZ2Q9IgorIiVkLCBtYWtzPSVkKSIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzo3MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidXBkYXRlcyBkaXJlY3RvcnkgY29udGFpbnMgZmlsZXMgd2l0aCBkaWZmZXJlbnQgbGVuZ3RoIG5hbWVzIChib3RoICVkIGFuZCAlZCkiCittc2dzdHIgIiIKKyJvcHBkYXRlcmluZ3NrYXRhbG9nZW4gaW5uZWhlbGQgZmlsZXIgbWVkIHVsaWtlIG5hbW5lbGVuZ2RlciAoYsOlZGUgJWQgb2cgJWQpIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjg2CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzY2FuIHVwZGF0ZXMgZGlyZWN0b3J5IGAlLjI1NXMnIgorbXNnc3RyICJrbGFydGUgaWtramUgc2thbm5hIG9wcGRhdGVyaW5nc2thdGFsb2dlbiDCqyUuMjU1c8K7IgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVtb3ZlIGluY29ycG9yYXRlZCB1cGRhdGUgZmlsZSAlLjI1NXMiCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBmamVybmEgZGVuIGlubmxlbW1hIG9wcGRhdGVyaW5nc2ZpbGEgJS4yNTVzIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEyMSBkcGtnLWRlYi9idWlsZC5jOjQ0NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGAlLjI1NXMnIgorbXNnc3RyICJrbGFydGUgaWtramUgb3BwcmV0dGEgwqslLjI1NXPCuyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxMjUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZpbGwgJS4yNTBzIHdpdGggcGFkZGluZyIKK21zZ3N0ciAia2xhcnRlIGlra2plIGV0dGVyZnlsbGEgJS4yNTBzIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEyNworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoICUuMjUwcyBhZnRlciBwYWRkaW5nIgorbXNnc3RyICJrbGFydGUgaWtramUgdMO4bW1hICUuMjUwcyBldHRlciBldHRlcmZ5bGxpbmdhIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEyOQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNlZWsgdG8gc3RhcnQgb2YgJS4yNTBzIGFmdGVyIHBhZGRpbmciCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBzw7hramEgdGlsIHN0YXJ0ZW4gYXYgJS4yNTBzIGV0dGVyIGV0dGVyZnlsbGluZ2EiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTk1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gb3BlbiB0bXBmaWxlIGZvciB2c25wcmludGYiCittc2dpZCAidW5hYmxlIHRvIG9wZW4gbG9jayBmaWxlICVzIGZvciB0ZXN0aW5nIgorbXNnc3RyICJrbGFydGUgaWtramUgb3BuYSBtZWxsb21iZWxzIGZpbCBmb3IgdnNucHJpbnRmIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjIyMQorbXNnaWQgInVuYWJsZSB0byBvcGVuL2NyZWF0ZSBzdGF0dXMgZGF0YWJhc2UgbG9ja2ZpbGUiCittc2dzdHIgImtsYXJ0ZSBpa2tqZSDDpXBuYS9vcHByZXR0YSBsw6VzZWZpbGEgdGlsIHN0YXR1c2RhdGFiYXNlbiIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyMzEKK21zZ2lkICJ5b3UgZG8gbm90IGhhdmUgcGVybWlzc2lvbiB0byBsb2NrIHRoZSBkcGtnIHN0YXR1cyBkYXRhYmFzZSIKK21zZ3N0ciAiZHUgaGFyIGlra2plIGzDuHl2ZSB0aWwgw6UgbMOlc2EgZHBrZy1zdGF0dXNkYXRhYmFzZW4iCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjMzCisjLCBmdXp6eQorI3wgbXNnaWQgInVuYWJsZSB0byBsb2NrIGRwa2cgc3RhdHVzIGRhdGFiYXNlIgorbXNnaWQgImRwa2cgc3RhdHVzIGRhdGFiYXNlIgorbXNnc3RyICJrbGFydGUgaWtramUgbMOlc2EgZHBrZy1zdGF0dXNkYXRhYmFzZW4iCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjU3Cittc2dpZCAicmVxdWVzdGVkIG9wZXJhdGlvbiByZXF1aXJlcyBzdXBlcnVzZXIgcHJpdmlsZWdlIgorbXNnc3RyICJkZW4gw7huc2t0ZSBoYW5kbGluZ2Ega3JldiBzdXBlcmJydWthcnRpbGdhbmciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjYyCittc2dpZCAidW5hYmxlIHRvIGFjY2VzcyBkcGtnIHN0YXR1cyBhcmVhIgorbXNnc3RyICJmw6VyIGlra2plIHRpbGdhbmcgdGlsIGRwa2ctc3RhdHVzb21yw6VkZXQiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjY0Cittc2dpZCAib3BlcmF0aW9uIHJlcXVpcmVzIHJlYWQvd3JpdGUgYWNjZXNzIHRvIGRwa2cgc3RhdHVzIGFyZWEiCittc2dzdHIgIm9wZXJhc2pvbmVuIGtyZXYgbGVzZS0gb2cgc2tyaXZldGlsZ2FuZyB0aWwgZHBrZy1zdGF0dXNvbXLDpWRldCIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozMDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlbW92ZSBteSBvd24gdXBkYXRlIGZpbGUgJS4yNTVzIgorbXNnc3RyICJrbGFydGUgaWtramUgZmplcm5hIG1pIGVpZ2Egb3BwZGF0ZXJpbmdzZmlsICUuMjU1cyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJrbGFydGUgaWtramUgc2tyaXZhIG9wcGRhdGVydCBzdGF0dXMgZm9yIMKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzQ5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAia2xhcnRlIGlra2plIHTDuG1tYSBvcHBkYXRlcnQgc3RhdHVzIGZvciDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM1MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gdHJ1bmNhdGUgZm9yIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJrbGFydGUgaWtramUga2xpcHBhIGZvciBvcHBkYXRlcnQgc3RhdHVzIGZvciDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM1MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZnN5bmMgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBzeW5rcm9uaXNlcmEgb3BwZGF0ZXJ0IHN0YXR1cyBmb3IgwqslLjI1MHPCuyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJrbGFydGUgaWtramUgbHVra2Egb3BwZGF0ZXJ0IHN0YXR1cyBmb3IgwqslLjI1MHPCuyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBpbnN0YWxsZXJhIG9wcGRhdGVydCBzdGF0dXMgZm9yIMKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL2Rpci5jOjUwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gcmVhZCBmaWxlZGVzY3JpcHRvciBmbGFncyBmb3IgJS4yNTBzIgorbXNnaWQgInVuYWJsZSB0byBnZXQgZmlsZSBkZXNjcmlwdG9yIGZvciBkaXJlY3RvcnkgJyVzJyIKK21zZ3N0ciAia2xhcnRlIGlra2plIGxlc2EgZmlsZGVza3JpcHRvcmZsYWdnIGZvciAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL2Rpci5jOjU0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBkaXJlY3RvcnkgJyVzJyIKK21zZ3N0ciAia2xhcnRlIGlra2plIG9wbmEga2plbGRlZmlsYSDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy9kaXIuYzo2OSBsaWIvZHBrZy9kaXIuYzoxMzEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICJrbGFydGUgaWtramUgb3BuYSBramVsZGVmaWxhIMKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL2Rpci5jOjEwOSBzcmMvZGl2ZXJ0Y21kLmM6MjE4IGRwa2ctc3BsaXQvc3BsaXQuYzoyMDIKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjkzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBmaWxlICclcyciCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBvcG5hIGtqZWxkZWZpbGEgwqslLjI1MHPCuyIKKworIzogbGliL2Rwa2cvZGlyLmM6MTExIHNyYy9kaXZlcnRjbWQuYzoyMzIgc3JjL2RpdmVydGNtZC5jOjM3NworIzogc3JjL3N0YXRjbWQuYzoyMTcgZHBrZy1kZWIvYnVpbGQuYzo1OTggZHBrZy1zcGxpdC9qb2luLmM6NjUKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxODcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE0MDYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzeW5jIGZpbGUgJyVzJyIKK21zZ3N0ciAia2xhcnRlIGlra2plIG9wbmEga2plbGRlZmlsYSDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy9kaXIuYzoxMTMgc3JjL2RpdmVydGNtZC5jOjIzNCBzcmMvZGl2ZXJ0Y21kLmM6Mzc5CisjOiBkcGtnLWRlYi9idWlsZC5jOjYwMCBkcGtnLXNwbGl0L2pvaW4uYzo2NyBkcGtnLXNwbGl0L3F1ZXVlLmM6MTg5CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTMxNCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTQwOAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIGZpbGUgJyVzJyIKK21zZ3N0ciAia2xhcnRlIGlra2plIHTDuG1tYSBpIHZzbnByaW50ZiIKKworIzogbGliL2Rwa2cvZHVtcC5jOjM5NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIGRldGFpbHMgb2YgYCUuNTBzJyB0byBgJS4yNTBzJyIKK21zZ3N0ciAia2xhcnRlIGlra2plIHNrcml2YSAlcy1wb3N0IG9tIMKrJS41MHPCuyB0aWwgwqslLjI1MHPCuyIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQyMworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gJyVzJyBmb3Igd3JpdGluZyAlcyBkYXRhYmFzZSIKK21zZ3N0ciAia2xhcnRlIGlra2plIG9wbmEgwqslc8K7IGZvciDDpSBza3JpdmEgJXMtaW5mb3JtYXNqb24iCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0MjYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgYnVmZmVyaW5nIG9uICVzIGRhdGFiYXNlIGZpbGUiCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBtZWxsb21sYWdyYSBzdGF0dXNmaWwiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0MzgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB3cml0ZSAlcyBkYXRhYmFzZSByZWNvcmQgYWJvdXQgJyUuNTBzJyB0byAnJS4yNTBzJyIKK21zZ3N0ciAia2xhcnRlIGlra2plIHNrcml2YSAlcy1wb3N0IG9tIMKrJS41MHPCuyB0aWwgwqslLjI1MHPCuyIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ0NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZsdXNoICVzIGRhdGFiYXNlIHRvICclLjI1MHMnIgorbXNnc3RyICJrbGFydGUgaWtramUgdMO4bW1hICVzLWluZm9ybWFzam9uIHRpbCDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDQ4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZnN5bmMgJXMgZGF0YWJhc2UgdG8gJyUuMjUwcyciCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBzeW5rcm9uaXNlcmEgJXMtaW5mb3JtYXNqb24gdGlsIMKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjbG9zZSAnJS4yNTBzJyBhZnRlciB3cml0aW5nICVzIGRhdGFiYXNlIgorbXNnc3RyICJrbGFydGUgaWtramUgbHVra2EgwqslLjI1MHPCuyBldHRlciBza3JpdmluZyBhdiAlcy1pbmZvcm1hc2pvbiIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ1NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGxpbmsgJyUuMjUwcycgdG8gJyUuMjUwcycgZm9yIGJhY2t1cCBvZiAlcyBkYXRhYmFzZSIKK21zZ3N0ciAiIgorImtsYXJ0ZSBpa2tqZSBsZW5ramEgwqslLjI1MHPCuyB0aWwgwqslLjI1MHPCuyBmb3Igc2lrcmluZ3Nrb3BpZXJpbmcgYXYgJXMtaW5mbyIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ1OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGluc3RhbGwgJyUuMjUwcycgYXMgJyUuMjUwcycgY29udGFpbmluZyAlcyBkYXRhYmFzZSIKK21zZ3N0ciAia2xhcnRlIGlra2plIGluc3RhbGxlcmEgwqslLjI1MHPCuyBzb20gwqslLjI1MHPCuyBtZWQgJXMtaW5mbyIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjk0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogdW5yZWNvdmVyYWJsZSBmYXRhbCBlcnJvciwgYWJvcnRpbmc6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjEwMAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IG91dHNpZGUgZXJyb3IgY29udGV4dCwgYWJvcnRpbmc6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjEyMAorIywgZnV6enkKKyN8IG1zZ2lkICJvdXQgb2YgbWVtb3J5IGZvciBuZXcgY2xlYW51cCBlbnRyeSIKK21zZ2lkICJvdXQgb2YgbWVtb3J5IGZvciBuZXcgZXJyb3IgY29udGV4dCIKK21zZ3N0ciAiaWtramUgbm9rIG1pbm5lIHRpbCBueSBvcHByeWRkaW5nc29wcGbDuHJpbmciCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoxODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBlcnJvciB3aGlsZSBjbGVhbmluZyB1cDpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorIiVzOiBmZWlsIHZlZCBvcHByeWRkaW5nOlxuIgorIiAlc1xuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MjAxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJkcGtnOiB0b28gbWFueSBuZXN0ZWQgZXJyb3JzIGR1cmluZyBlcnJvciByZWNvdmVyeSAhIVxuIgorbXNnaWQgIiVzOiB0b28gbWFueSBuZXN0ZWQgZXJyb3JzIGR1cmluZyBlcnJvciByZWNvdmVyeSEhXG4iCittc2dzdHIgImRwa2c6IEZvciBtYW5nZSBzYW1hbmZsZXR0YSBmZWlsIHVuZGVyIGZlaWxvcHByZXR0aW5nXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoyNjggbGliL2Rwa2cvZWhhbmRsZS5jOjMwNworbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBjbGVhbnVwIGVudHJ5IgorbXNnc3RyICJpa2tqZSBub2sgbWlubmUgdGlsIG55IG9wcHJ5ZGRpbmdzb3BwZsO4cmluZyIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjI5MQorbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBjbGVhbnVwIGVudHJ5IHdpdGggbWFueSBhcmd1bWVudHMiCittc2dzdHIgImlra2plIG5vayBtaW5uZSB0aWwgbnkgb3BwcnlkZGluZ3NvcHBmw7hyaW5nIG1lZCBtYW5nZSBwYXJhbWV0cmFyIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MzUyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogZXJyb3I6ICVzXG4iCittc2dzdHIgIiIKKyIlczogRmVpbCB2ZWQgYmVoYW5kbGluZyBhdiAlcyAoLS0lcyk6XG4iCisiICVzXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzozOTMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiB3YXJuaW5nOiAlc1xuIgorbXNnc3RyICJmZWlsIHZlZCBza3JpdmluZyBhdiDCqyVzwrsiCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzo0MTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiVzOiVkOiBpbnRlcm5hbCBlcnJvcjogJXNcbiIKK21zZ3N0ciAiJXM6JWQ6IGludGVybiBmZWlsIMKrJXPCu1xuIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBpcyBtaXNzaW5nIgorbXNnc3RyICIlcyBtYW5nbGFyIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0OQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYCUuKnMnIGlzIG5vdCBhbGxvd2VkIGZvciAlcyIKK21zZ2lkICInJS41MHMnIGlzIG5vdCBhbGxvd2VkIGZvciAlcyIKK21zZ3N0ciAiwqslLipzwrsga2FuIGlra2plIGJydWthc3QgZm9yICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo3MworIywgYy1mb3JtYXQKK21zZ2lkICJqdW5rIGFmdGVyICVzIgorbXNnc3RyICJyb3QgZXR0ZXIgJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjg3CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgcGFja2FnZSBuYW1lICglLjI1MHMpIgorbXNnc3RyICJ1Z3lsZGlnIHBha2tlbmFtbiAoJS4yNTBzKSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgImVtcHR5IGZpbGUgZGV0YWlscyBmaWVsZCBgJXMnIgorbXNnc3RyICJ0b210IGZpbGRldGFsamZlbHQgwqslc8K7IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBkZXRhaWxzIGZpZWxkIGAlcycgbm90IGFsbG93ZWQgaW4gc3RhdHVzIGZpbGUiCittc2dzdHIgImZpbGRldGFsamZlbHRldCDCqyVzwrsga2FuIGlra2plIGJydWthc3QgaSBzdGF0dXNmaWxhIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidG9vIG1hbnkgdmFsdWVzIGluIGZpbGUgZGV0YWlscyBmaWVsZCBgJXMnIChjb21wYXJlZCB0byBvdGhlcnMpIgorbXNnc3RyICJmb3IgbWFuZ2UgdmVyZGlhciBpIGZpbGRldGFsamZlbHRldCDCqyVzwrsgKHNhbWFubGlrbmEgbWVkIGFuZHJlKSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTMyCisjLCBjLWZvcm1hdAorbXNnaWQgInRvbyBmZXcgdmFsdWVzIGluIGZpbGUgZGV0YWlscyBmaWVsZCBgJXMnIChjb21wYXJlZCB0byBvdGhlcnMpIgorbXNnc3RyICJmb3IgZsOlIHZlcmRpYXIgaSBmaWxkZXRhbGpmZWx0ZXQgwqslc8K7IChzYW1hbmxpa25hIG1lZCBhbmRyZSkiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE1NAorbXNnaWQgInllcy9ubyBpbiBib29sZWFuIGZpZWxkIgorbXNnc3RyICJqYS9uZWkgaSBib29sc2sgZmVsdCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTc0Cittc2dpZCAid29yZCBpbiBgcHJpb3JpdHknIGZpZWxkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE4NgorbXNnaWQgInZhbHVlIGZvciBgc3RhdHVzJyBmaWVsZCBub3QgYWxsb3dlZCBpbiB0aGlzIGNvbnRleHQiCittc2dzdHIgInZlcmRpIGkgwqtzdGF0dXPCuy1mZWx0IGthbiBpa2tqZSBicnVrYXN0IGkgZGVubmUgc2FtYW5oZW5nZW4iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE5MQorIywgZnV6enkKK21zZ2lkICJmaXJzdCAod2FudCkgd29yZCBpbiBgc3RhdHVzJyBmaWVsZCIKK21zZ3N0ciAidHJlZGplIG9yZCAoc3RhdHVzKSBpIMKrc3RhdHVzwrstZmVsdCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTk0CisjLCBmdXp6eQorbXNnaWQgInNlY29uZCAoZXJyb3IpIHdvcmQgaW4gYHN0YXR1cycgZmllbGQiCittc2dzdHIgInRyZWRqZSBvcmQgKHN0YXR1cykgaSDCq3N0YXR1c8K7LWZlbHQiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE5NworbXNnaWQgInRoaXJkIChzdGF0dXMpIHdvcmQgaW4gYHN0YXR1cycgZmllbGQiCittc2dzdHIgInRyZWRqZSBvcmQgKHN0YXR1cykgaSDCq3N0YXR1c8K7LWZlbHQiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjIwNworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZXJyb3IgaW4gVmVyc2lvbiBzdHJpbmcgYCUuMjUwcyc6ICUuMjUwcyIKK21zZ2lkICJlcnJvciBpbiBWZXJzaW9uIHN0cmluZyAnJS4yNTBzJyIKK21zZ3N0ciAiZmVpbCBpIHZlcnNqb25zc3RyZW5nIMKrJS4yNTBzwrs6ICUuMjUwcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjE4Cittc2dpZCAib2Jzb2xldGUgYFJldmlzaW9uJyBvciBgUGFja2FnZS1SZXZpc2lvbicgZmllbGQgdXNlZCIKK21zZ3N0ciAiZm9yZWxkYSDCq1JldmlzaW9uwrstIGVsbGVyIMKrUGFja2FnZS1SZXZpc2lvbsK7LWZlbHQgYnJ1a3QiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjIzNQorbXNnaWQgInZhbHVlIGZvciBgY29uZmlnLXZlcnNpb24nIGZpZWxkIG5vdCBhbGxvd2VkIGluIHRoaXMgY29udGV4dCIKK21zZ3N0ciAiIgorInZlcmRpZW4gZm9yIMKrY29uZmlnLXZlcnNpb27Cuy1mZWx0ZXQga2FuIGlra2plIGJydWthc3QgaSBkZW5uZSBzYW1hbmhlbmdlbiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjQwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJlcnJvciBpbiBDb25maWctVmVyc2lvbiBzdHJpbmcgYCUuMjUwcyc6ICUuMjUwcyIKK21zZ2lkICJlcnJvciBpbiBDb25maWctVmVyc2lvbiBzdHJpbmcgJyUuMjUwcyciCittc2dzdHIgImZlaWwgaSBDb25maWctVmVyc2lvbi1zdHJlbmcgwqslLjI1MHPCuzogJS4yNTBzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAidmFsdWUgZm9yIGBjb25mZmlsZXMnIGhhcyBtYWxmb3JtYXR0ZWQgbGluZSBgJS4qcyciCittc2dzdHIgInZlcmRpZW4gZm9yIMKrY29uZmZpbGVzwrsgaGFyIGVpIGxpbmplIG1lZCB1Z3lsZGlnIGZvcm1hdCDCqyUuKnPCuyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6Mjg3CisjLCBjLWZvcm1hdAorbXNnaWQgInZhbHVlIGZvciBgY29uZmZpbGVzJyBoYXMgbGluZSBzdGFydGluZyB3aXRoIG5vbi1zcGFjZSBgJWMnIgorbXNnc3RyICJ2ZXJkaWVuIGZvciDCq2NvbmZmaWxlc8K7IGhhciBlaSBsaW5qZSBzb20gc3RhcnRhciB1dGFuIG1lbGxvbXJvbSDCqyVjwrsiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjMwNAorbXNnaWQgInJvb3Qgb3IgbnVsbCBkaXJlY3RvcnkgaXMgbGlzdGVkIGFzIGEgY29uZmZpbGUiCittc2dzdHIgInJvdC0gZWxsZXIgbnVsbC1rYXRhbG9nIGVyIG5lbW50IHNvbSBvcHBzZXR0c2ZpbCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MzY1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJgJXMnIGZpZWxkLCBtaXNzaW5nIHBhY2thZ2UgbmFtZSwgb3IgZ2FyYmFnZSB3aGVyZSBwYWNrYWdlIG5hbWUgZXhwZWN0ZWQiCittc2dzdHIgIiIKKyLCqyVzwrstZmVsdCwgbWFuZ2xhbmRlIHBha2tlbmFtbiBlbGxlciByb3QgZGVyIGRldCBza3VsbGUgdmVyYSBlaXQgcGFra2VuYW1uIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzozNzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBmaWVsZCwgaW52YWxpZCBwYWNrYWdlIG5hbWUgYCUuMjU1cyc6ICVzIgorbXNnc3RyICLCqyVzwrstZmVsdCwgdWd5bGRpZyBwYWtrZW5hbW4gwqslLjI1NXPCuzogJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQwNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOlxuIgorIiBiYWQgdmVyc2lvbiByZWxhdGlvbnNoaXAgJWMlYyIKK21zZ3N0ciAiIgorIsKrJXPCuy1mZWx0LCByZWZlcmFuc2UgdGlsIMKrJS4yNTVzwrs6XG4iCisiIHVneWxkaWcgdmVyc2pvbnNmb3Job2xkICVjJWMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQxMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOlxuIgorIiBgJWMnIGlzIG9ic29sZXRlLCB1c2UgYCVjPScgb3IgYCVjJWMnIGluc3RlYWQiCittc2dzdHIgIiIKKyLCqyVzwrstZmVsdCwgcmVmZXJhbnNlIHRpbCDCqyUuMjU1c8K7OlxuIgorIiDCqyVjwrsgZXIgZm9yZWxkYSwgYnJ1ayDCqyVjPcK7IGVsbGVyIMKrJWMlY8K7IGkgc3RhZGVuIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgaW1wbGljaXQgZXhhY3QgbWF0Y2ggb24gdmVyc2lvbiBudW1iZXIsIHN1Z2dlc3QgdXNpbmcgYD0nIGluc3RlYWQiCittc2dzdHIgIiIKKyLCqyVzwrstZmVsdCwgcmVmZXJhbnNlIHRpbCDCqyUuMjU1c8K7OlxuIgorIiBpbXBsaXNpdHQgbsO4eWFrdGlnIHRyZWZmIG1lZCB2ZXJzam9uc251bW1lciwgZsO4cmVzbMOlciDCqz3CuyBpIHN0YWRlbiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDMwCittc2dpZCAiT25seSBleGFjdCB2ZXJzaW9ucyBtYXkgYmUgdXNlZCBmb3IgUHJvdmlkZXMiCittc2dzdHIgIkJlcnJlIG7DuHlha3RpZ2UgdmVyc2pvbmFyIGthbiBicnVrYXN0IGkgUHJvdmlkZXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQzNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOlxuIgorIiB2ZXJzaW9uIHZhbHVlIHN0YXJ0cyB3aXRoIG5vbi1hbHBoYW51bWVyaWMsIHN1Z2dlc3QgYWRkaW5nIGEgc3BhY2UiCittc2dzdHIgIiIKKyLCqyVzwrstZmVsdCwgcmVmZXJhbnNlIHRpbCDCqyUuMjU1c8K7OlxuIgorIiB2ZXJzam9uc3ZlcmRpZW4gc3RhcnRhciBtZWQgZWl0IGlra2plLWFsZmFudW1lcmlzayB0ZWlrbiwgZsO4cmVzbMOlciDDpSBsZWdnamEgIgorInRpbCBlaXQgbWVsbG9tcm9tIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NTEgbGliL2Rwa2cvZmllbGRzLmM6NDU1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6IHZlcnNpb24gY29udGFpbnMgYCVjJyIKK21zZ3N0ciAiwqslc8K7LWZlbHQsIHJlZmVyYW5zZSB0aWwgwqslLjI1NXPCuzogdmVyc2pvbiBpbm5laGVsZCDCqyjCuyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDU5CisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzogdmVyc2lvbiB1bnRlcm1pbmF0ZWQiCittc2dzdHIgIsKrJXPCuy1mZWx0LCByZWZlcmFuc2UgdGlsIMKrJS4yNTVzwrs6IHZlcnNqb24gaWtramUgYXZzbHV0dGEiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ2NQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOiBlcnJvciBpbiB2ZXJzaW9uOiAlLjI1NXMiCittc2dpZCAiJyVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvICclLjI1NXMnOiBlcnJvciBpbiB2ZXJzaW9uIgorbXNnc3RyICLCqyVzwrstZmVsdCwgcmVmZXJhbnNlIHRpbCDCqyUuMjU1c8K7OiBmZWlsIGkgdmVyc2pvbjogJS4yNTVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBmaWVsZCwgc3ludGF4IGVycm9yIGFmdGVyIHJlZmVyZW5jZSB0byBwYWNrYWdlIGAlLjI1NXMnIgorbXNnc3RyICLCqyVzwrstZmVsdCwgc3ludGFrc2ZlaWwgZXR0ZXIgcmVmZXJhbnNlIHRpbCBwYWtrZW4gwqslLjI1NXPCuyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDgyCisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlcyAoYHwnKSBub3QgYWxsb3dlZCBpbiAlcyBmaWVsZCIKK21zZ3N0ciAiYWx0ZXJuYXRpdiAowqt8wrspIGthbiBpa2tqZSBicnVrYXN0IGkgJXMtZmVsdGV0IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1MzYKKyMsIGZ1enp5Cittc2dpZCAidmFsdWUgZm9yIGB0cmlnZ2Vycy1wZW5kaW5nJyBmaWVsZCBub3QgYWxsb3dlZCBpbiB0aGlzIGNvbnRleHQiCittc2dzdHIgIiIKKyJ2ZXJkaWVuIGZvciDCq2NvbmZpZy12ZXJzaW9uwrstZmVsdGV0IGthbiBpa2tqZSBicnVrYXN0IGkgZGVubmUgc2FtYW5oZW5nZW4iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU0MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiaWxsZWdhbCBwZW5kaW5nIHRyaWdnZXIgbmFtZSBgJS4yNTVzJzogJXMiCittc2dzdHIgIsKrJXPCuy1mZWx0LCB1Z3lsZGlnIHBha2tlbmFtbiDCqyUuMjU1c8K7OiAlcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTQ3CisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBwZW5kaW5nIHRyaWdnZXIgYCUuMjU1cyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTYxCisjLCBmdXp6eQorbXNnaWQgInZhbHVlIGZvciBgdHJpZ2dlcnMtYXdhaXRlZCcgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICJ2ZXJkaSBpIMKrc3RhdHVzwrstZmVsdCBrYW4gaWtramUgYnJ1a2FzdCBpIGRlbm5lIHNhbWFuaGVuZ2VuIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NjgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImlsbGVnYWwgcGFja2FnZSBuYW1lIGluIGF3YWl0ZWQgdHJpZ2dlciBgJS4yNTVzJzogJXMiCittc2dzdHIgInVneWxkaWcgcGFra2VuYW1uIHDDpSBsaW5qZSAlZDogJS4yNTBzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NzQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBhd2FpdGVkIHRyaWdnZXIgcGFja2FnZSBgJS4yNTVzJyIKK21zZ3N0ciAiZmlsbGlzdGUgZm9yIHBha2tlbiDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy9maWxlLmM6NTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IHNvdXJjZSBmaWxlICclLjI1MHMnIgorbXNnc3RyICJrbGFydGUgaWtramUgb3BuYSBramVsZGVmaWxhIMKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzo1NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoYW5nZSBvd25lcnNoaXAgb2YgdGFyZ2V0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgIiIKKyJrbGFydGUgaWtramUgZW5kcmEgZWlnYXJza2FwZW4gdGlsIGRlbiBueWUgZGlzdHJpYnVzam9uc29wcHNldHRzZmlsYSDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy9maWxlLmM6NTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgbW9kZSBvZiB0YXJnZXQgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAiIgorImtsYXJ0ZSBpa2tqZSBzZXRqYSBtb2R1c2VuIHRpbCBkZW4gbnllIGRpc3RyaWJ1c2pvbnNvcHBzZXR0c2ZpbGEgwqslLjI1MHPCuyIKKworIzogbGliL2Rwa2cvZmlsZS5jOjg1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gdW5sb2NrICVzIgorbXNnc3RyICJrbGFydGUgaWtramUga8O4eXJhICVzIgorCisjOiBsaWIvZHBrZy9maWxlLmM6MTExCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hlY2sgZmlsZSAnJXMnIGxvY2sgc3RhdHVzIgorbXNnc3RyICJrbGFydGUgaWtramUgb3BuYSBramVsZGVmaWxhIMKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzoxNDYKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInN0YXR1cyBkYXRhYmFzZSBhcmVhIGlzIGxvY2tlZCBieSBhbm90aGVyIHByb2Nlc3MiCittc2dpZCAiJXMgaXMgbG9ja2VkIGJ5IGFub3RoZXIgcHJvY2VzcyIKK21zZ3N0ciAic3RhdHVzZGF0YWJhc2VvbXLDpWRldCBlciBsw6VzdCBhdiBlaW4gYW5uYW4gcHJvc2VzcyIKKworIzogbGliL2Rwa2cvZmlsZS5jOjE0OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGxvY2sgJXMiCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBrw7h5cmEgJXMiCisKKyM6IGxpYi9kcGtnL2xvZy5jOjUzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkbid0IG9wZW4gbG9nIGAlcyc6ICVzXG4iCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBvcG5hIGF2bHVzaW5nc2ZpbCDCqyVzwrs6ICVzXG4iCisKKyM6IGxpYi9kcGtnL2xvZy5jOjg1Cittc2dpZCAiPHBhY2thZ2Ugc3RhdHVzIGFuZCBwcm9ncmVzcyBmaWxlIGRlc2NyaXB0b3I+IgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2xvZy5jOjExNAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIHRvIHN0YXR1cyBmZCAlZCIKK21zZ3N0ciAia2xhcnRlIGlra2plIHNrcml2YSBvcHBkYXRlcnQgc3RhdHVzIGZvciDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy9tbGliLmM6NDQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAibWFsbG9jIGZhaWxlZCAoJXp1IGJ5dGVzKSIKK21zZ3N0ciAibnl0aWxkZWxpbmcgbWlzbHVra2FzdCAoJWxkIGJ5dGUpIgorCisjOiBsaWIvZHBrZy9tbGliLmM6NTgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInJlYWxsb2MgZmFpbGVkICglenUgYnl0ZXMpIgorbXNnc3RyICJueXRpbGRlbGluZyBtaXNsdWtrYXN0ICglbGQgYnl0ZSkiCisKKyM6IGxpYi9kcGtnL21saWIuYzo3MiBsaWIvZHBrZy9tbGliLmM6OTAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI3NworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjMzNCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTEwNworIywgZnV6enkKK21zZ2lkICJmYWlsZWQgdG8gYWxsb2NhdGUgbWVtb3J5IgorbXNnc3RyICJrbGFydGUgaWtramUgb3BwcmV0dGEga2F0YWxvZyIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZHVwIGZvciBzdGQlcyIKK21zZ3N0ciAia2xhcnRlIGlra2plIHV0ZsO4cmEgwqtkdXDCuyBmb3Igc3RkJXMiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGR1cCBmb3IgZmQgJWQiCittc2dzdHIgImtsYXJ0ZSBpa2tqZSB1dGbDuHJhIMKrZHVwwrsgZm9yIGZkICVkIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTA5Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBwaXBlIgorbXNnc3RyICJrbGFydGUgaWtramUgb3BwcmV0dGEgcsO4eXIiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMTcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHdyaXRpbmcgdG8gJyVzJyIKK21zZ3N0ciAiZmVpbCB2ZWQgc2tyaXZpbmcgYXYgwqslc8K7IgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIGZpbGVkZXNjcmlwdG9yIGZsYWdzIGZvciAlLjI1MHMiCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBsZXNhIGZpbGRlc2tyaXB0b3JmbGFnZyBmb3IgJS4yNTBzIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTI2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgY2xvc2Utb24tZXhlYyBmbGFnIGZvciAlLjI1MHMiCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBzZXRqYSBmbGFnZ2V0IMKrY2xvc2Utb24tZXhlY8K7IGZvciAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzo2MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiY29uZmlndXJhdGlvbiBlcnJvcjogJXM6JWQ6ICVzIgorbXNnc3RyICJvcHBzZXR0c2ZlaWw6ICVzIHRyZW5nIGVpbiBwYXJhbWV0ZXIiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzo3NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gY29uZmlndXJhdGlvbiBmaWxlICclLjI1NXMnIGZvciByZWFkaW5nOiAlcyIKK21zZ3N0ciAia2xhcnRlIGlra2plIG9wbmEgb3Bwc2V0dHNmaWxhIMKrJS4yNTVzwrsgZm9yIGxlc2luZyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmJhbGFuY2VkIHF1b3RlcyBpbiAnJXMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMTcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gb3B0aW9uICclcyciCittc2dzdHIgInVramVudCB2YWwgLS0lcyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjEyMQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBuZWVkcyBhIHZhbHVlIgorbXNnc3RyICJ2YWxldCAtLSVzIHRyZW5nIGVpbiBwYXJhbWV0ZXIiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMjcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiclcycgZG9lcyBub3QgdGFrZSBhIHZhbHVlIgorbXNnc3RyICJ2YWxldCAtLSVzIHNrYWwgaWtramUgaGEgbm9rb24gcGFyYW1ldGVyIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTMzCisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWQgZXJyb3IgaW4gY29uZmlndXJhdGlvbiBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICJsZXNlZmVpbCBpIG9wcHNldHRzZmlsYSDCqyUuMjU1c8K7IgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgY29uZmlndXJhdGlvbiBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICJmZWlsIHZlZCBsdWtraW5nIGF2IG9wcHNldHRzZmlsYSDCqyUuMjU1c8K7IgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTcwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBvcGVuaW5nIGNvbmZpZ3VyYXRpb24gZGlyZWN0b3J5ICclcyciCittc2dzdHIgImZlaWwgdmVkIGx1a2tpbmcgYXYgb3Bwc2V0dHNmaWxhIMKrJS4yNTVzwrsiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gLS0lcyIKK21zZ3N0ciAidWtqZW50IHZhbCAtLSVzIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgb3B0aW9uIHRha2VzIGEgdmFsdWUiCittc2dzdHIgInZhbGV0IC0tJXMgdHJlbmcgZWluIHBhcmFtZXRlciIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjIzNworIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG9wdGlvbiBkb2VzIG5vdCB0YWtlIGEgdmFsdWUiCittc2dzdHIgInZhbGV0IC0tJXMgc2thbCBpa2tqZSBoYSBub2tvbiBwYXJhbWV0ZXIiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyNDUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gLSVjIgorbXNnc3RyICJ1a2plbnQgdmFsIC0lYyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI1MAorIywgYy1mb3JtYXQKK21zZ2lkICItJWMgb3B0aW9uIHRha2VzIGEgdmFsdWUiCittc2dzdHIgInZhbGV0IC0lYyB0cmVuZyBlaW4gcGFyYW1ldGVyIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjU4CisjLCBjLWZvcm1hdAorbXNnaWQgIi0lYyBvcHRpb24gZG9lcyBub3QgdGFrZSBhIHZhbHVlIgorbXNnc3RyICJ2YWxldCAtJWMgc2thbCBpa2tqZSBoYSBub2tvbiBwYXJhbWV0ZXIiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyNzEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIm9ic29sZXRlIG9wdGlvbiAnLS0lcydcbiIKK21zZ3N0ciAiw4V0dmFyaW5nOiBGb3JlbGRhIHZhbCDCqyVzwrtcbiIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI4NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiY29uZmxpY3RpbmcgYWN0aW9ucyAtJWMgKC0tJXMpIGFuZCAtJWMgKC0tJXMpIgorbXNnc3RyICJoYW5kbGluZ2FyIGkga29uZmxpa3QgLS0lcyBvZyAtLSVzIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgdmFsdWUgZm9yIGAlcycgZmllbGQiCittc2dzdHIgInZlcmRpZW4gZm9yIGZlbHRldCDCqyVzwrsgZmluc3QgbWVpciBlbm4gw6lpbiBnb25nIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjE0NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1c2VyLWRlZmluZWQgZmllbGQgbmFtZSBgJS4qcycgdG9vIHNob3J0IgorbXNnc3RyICJkZXQgYnJ1a2FyZGVmaW5lcnRlIGZlbHRuYW1uZXQgwqslLipzwrsgZXIgZm9yIGtvcnQiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MTUyCisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSB2YWx1ZSBmb3IgdXNlci1kZWZpbmVkIGZpZWxkIGAlLipzJyIKK21zZ3N0ciAiZGV0IGJydWthcmRlZmluZXJ0ZSBmZWx0ZXQgwqslLipzwrsgZmluc3QgbWVpciBlbm4gw6lpbiBnb25nIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjIwNworbXNnaWQgIkNvbmZpZ3VyZWQtVmVyc2lvbiBmb3IgcGFja2FnZSB3aXRoIGluYXBwcm9wcmlhdGUgU3RhdHVzIgorbXNnc3RyICJPcHBzZXR0IHZlcnNqb24gZm9yIHBha2tlIG1lZCBzdGF0dXMgc29tIGlra2plIHBhc3NhciIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzICVzIGJ1dCB0cmlnZ2VycyBhcmUgYXdhaXRlZCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjIyMgorbXNnaWQgInBhY2thZ2UgaGFzIHN0YXR1cyB0cmlnZ2Vycy1hd2FpdGVkIGJ1dCBubyB0cmlnZ2VycyBhd2FpdGVkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjI4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgaGFzIHN0YXR1cyAlcyBidXQgdHJpZ2dlcnMgYXJlIHBlbmRpbmciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMzIKK21zZ2lkICJwYWNrYWdlIGhhcyBzdGF0dXMgdHJpZ2dlcnMtcGVuZGluZyBidXQgbm8gdHJpZ2dlcnMgcGVuZGluZyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjI0MgorbXNnaWQgIlBhY2thZ2Ugd2hpY2ggaW4gc3RhdGUgbm90LWluc3RhbGxlZCBoYXMgY29uZmZpbGVzLCBmb3JnZXR0aW5nIHRoZW0iCittc2dzdHIgIiIKKyJFaW4gcGFra2Ugc29tIGlra2plIGVyIGluc3RhbGxlcnQgaGFyIG9wcHNldHRzZmlsZXIuIERlaSB2ZXJ0IGlnbm9yZXJ0ZS4iCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzM1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuIHBhY2thZ2UgaW5mbyBmaWxlIGAlLjI1NXMnIGZvciByZWFkaW5nIgorbXNnc3RyICJrbGFydGUgaWtramUgb3BuYSBwYWtrZWluZm9maWxhIMKrJS4yNTVzwrsgZm9yIGxlc2luZyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozNDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2FuJ3Qgc3RhdCBwYWNrYWdlIGluZm8gZmlsZSBgJS4yNTVzJyIKK21zZ3N0ciAiZmlubiBpa2tqZSBwYWtrZWluZm9maWxhIMKrJS4yNTVzwrsiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzQ3CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbid0IG1tYXAgcGFja2FnZSBpbmZvIGZpbGUgYCUuMjU1cyciCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBrw7h5cmEgwqttbWFwwrsgcMOlIHBha2tlaW5mb2ZpbGEgwqslLjI1NXPCuyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozNTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImNhbid0IHN0YXQgcGFja2FnZSBpbmZvIGZpbGUgYCUuMjU1cyciCittc2dpZCAicmVhZGluZyBwYWNrYWdlIGluZm8gZmlsZSAnJS4yNTVzJyIKK21zZ3N0ciAiZmlubiBpa2tqZSBwYWtrZWluZm9maWxhIMKrJS4yNTVzwrsiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzYzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjbG9zZSBhZnRlciByZWFkOiBgJS4yNTVzJyIKK21zZ3N0ciAia2xhcnRlIGlra2plIGx1a2thIGV0dGVyIGxlc2luZzogwqslLjI1NXPCuyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiRU9GIGFmdGVyIGZpZWxkIG5hbWUgYCUuKnMnIgorbXNnc3RyICJzbHV0dCBww6UgZmlsYSBldHRlciBmZWx0bmFtbiDCqyUuKnPCuyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MDcKKyMsIGMtZm9ybWF0Cittc2dpZCAibmV3bGluZSBpbiBmaWVsZCBuYW1lIGAlLipzJyIKK21zZ3N0ciAibGluamVza2lmdCBpIGZlbHRuYW1uIMKrJS4qc8K7IgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQxMAorIywgYy1mb3JtYXQKK21zZ2lkICJNU0RPUyBFT0YgKF5aKSBpbiBmaWVsZCBuYW1lIGAlLipzJyIKK21zZ3N0ciAiTVMtRE9TLXNsdXR0IHDDpSBmaWxhICheWikgaSBmZWx0bmFtbiDCqyUuKnPCuyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmllbGQgbmFtZSBgJS4qcycgbXVzdCBiZSBmb2xsb3dlZCBieSBjb2xvbiIKK21zZ3N0ciAiZmVsdG5hbW5ldCDCqyUuKnPCuyBza2FsIGbDuGxnamFzdCBhdiBlaXQga29sb24iCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDI1CisjLCBjLWZvcm1hdAorbXNnaWQgIkVPRiBiZWZvcmUgdmFsdWUgb2YgZmllbGQgYCUuKnMnIChtaXNzaW5nIGZpbmFsIG5ld2xpbmUpIgorbXNnc3RyICIiCisic2x1dHQgcMOlIGZpbCBmw7hyIHZlcmRpZW4gdGlsIGZlbHRldCDCqyUuKnPCuyAobWFuZ2xhciBsaW5qZXNraWZ0IHRpbCBzbHV0dCkiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDI5CisjLCBjLWZvcm1hdAorbXNnaWQgIk1TRE9TIEVPRiBjaGFyIGluIHZhbHVlIG9mIGZpZWxkIGAlLipzJyAobWlzc2luZyBuZXdsaW5lPykiCittc2dzdHIgIiIKKyJNU0RPUy10ZWlrbiBmb3Igc2x1dHQgcMOlIGZpbCBpIHZlcmRpZW4gZm9yIGZlbHRldCDCqyUuKnPCuyAobWFuZ2xhciAiCisibGluamVza2lmdD8pIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQ0MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAibmV3bGluZSBpbiBmaWVsZCBuYW1lIGAlLipzJyIKK21zZ2lkICJibGFuayBsaW5lIGluIHZhbHVlIG9mIGZpZWxkICclLipzJyIKK21zZ3N0ciAibGluamVza2lmdCBpIGZlbHRuYW1uIMKrJS4qc8K7IgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQ2MQorIywgYy1mb3JtYXQKK21zZ2lkICJFT0YgZHVyaW5nIHZhbHVlIG9mIGZpZWxkIGAlLipzJyAobWlzc2luZyBmaW5hbCBuZXdsaW5lKSIKK21zZ3N0ciAiIgorInNsdXR0IHDDpSBmaWwgaSB2ZXJkaWVuIGZvciBmZWx0ZXQgwqslLipzwrsgKG1hbmdsYXIgYXZzbHV0dGFuZGUgbGluamVza2lmdCkiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NTQ2Cittc2dpZCAic2V2ZXJhbCBwYWNrYWdlIGluZm8gZW50cmllcyBmb3VuZCwgb25seSBvbmUgYWxsb3dlZCIKK21zZ3N0ciAiZmFubiBmbGVpcmUgcGFra2VpbmZvcm1hc2pvbnNvcHBmw7hyaW5nYXIsIGthbiBiZXJyZSBoYSBlaSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo1NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gcGFja2FnZSBpbmZvcm1hdGlvbiBpbiBgJS4yNTVzJyIKK21zZ3N0ciAiaW5nZW4gcGFra2VpbmZvcm1hc2pvbiBpIMKrJS4yNTVzwrsiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjQ1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisicGFyc2luZyBmaWxlICclLjI1NXMnIG5lYXIgbGluZSAlZCBwYWNrYWdlICclLjI1NXMnOlxuIgorIiAlLjI1NXMiCittc2dzdHIgIiVzLCBpIGZpbGEgwqslLjI1NXPCuyBuw6ZyIGxpbmplICVkIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzo0OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorInBhcnNpbmcgZmlsZSAnJS4yNTVzJyBuZWFyIGxpbmUgJWQ6XG4iCisiICUuMjU1cyIKK21zZ3N0ciAiJXMsIGkgZmlsYSDCqyUuMjU1c8K7IG7DpnIgbGluamUgJWQiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjEyNQorbXNnaWQgIm1heSBub3QgYmUgZW1wdHkgc3RyaW5nIgorbXNnc3RyICJrYW4gaWtramUgdmVyYSBlaW4gdG9tIHN0cmVuZyIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MTI3CisjLCBmdXp6eQorI3wgbXNnaWQgIm11c3Qgc3RhcnQgd2l0aCBhbiBhbHBoYW51bWVyaWMiCittc2dpZCAibXVzdCBzdGFydCB3aXRoIGFuIGFscGhhbnVtZXJpYyBjaGFyYWN0ZXIiCittc2dzdHIgIm3DpSBzdGFydGEgbWVkIGVpdCBhbGZhbnVtZXJpc2sgdGVpa24iCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjEzNgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiY2hhcmFjdGVyIGAlYycgbm90IGFsbG93ZWQgKG9ubHkgbGV0dGVycywgZGlnaXRzIGFuZCBjaGFyYWN0ZXJzIGAlcycpIgorbXNnc3RyICIiCisidGVpa25ldCDCqyVjwrsga2FuIGlra2plIGJydWthc3QgLSBiZXJyZSBib2tzdGF2YXIsIHNpZmZlciBvZyAlcyBrYW4gYnJ1a2FzdCIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MTc4CisjLCBmdXp6eQorI3wgbXNnaWQgIjxub25lPiIKK21zZ2N0eHQgInZlcnNpb24iCittc2dpZCAiPG5vbmU+IgorbXNnc3RyICI8aW5nZW4+IgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyMDkKK21zZ2lkICJ2ZXJzaW9uIHN0cmluZyBpcyBlbXB0eSIKK21zZ3N0ciAidmVyc2pvbnNzdHJlbmdlbiBlciB0b20iCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjIyNAorbXNnaWQgInZlcnNpb24gc3RyaW5nIGhhcyBlbWJlZGRlZCBzcGFjZXMiCittc2dzdHIgInZlcnNqb25zc3RyZW5nZW4gaW5uZWhlbGQgbWVsbG9tcm9tIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyMzAKK21zZ2lkICJlcG9jaCBpbiB2ZXJzaW9uIGlzIG5vdCBudW1iZXIiCittc2dzdHIgImVwb2tlbiBpIHZlcnNqb25lbiBlciBpa2tqZSBlaXQgdGFsIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyMzIKK21zZ2lkICJub3RoaW5nIGFmdGVyIGNvbG9uIGluIHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICJpbmdlbnRpbmcgZXR0ZXIga29sb25ldCBpIHZlcnNqb25zbnVtbWVyZXQiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjI0NworbXNnaWQgInZlcnNpb24gbnVtYmVyIGRvZXMgbm90IHN0YXJ0IHdpdGggZGlnaXQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjUwCisjLCBmdXp6eQorI3wgbXNnaWQgIm5vdGhpbmcgYWZ0ZXIgY29sb24gaW4gdmVyc2lvbiBudW1iZXIiCittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgaW4gdmVyc2lvbiBudW1iZXIiCittc2dzdHIgImluZ2VudGluZyBldHRlciBrb2xvbmV0IGkgdmVyc2pvbnNudW1tZXJldCIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjU0CisjLCBmdXp6eQorI3wgbXNnaWQgIm5vdGhpbmcgYWZ0ZXIgY29sb24gaW4gdmVyc2lvbiBudW1iZXIiCittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgaW4gcmV2aXNpb24gbnVtYmVyIgorbXNnc3RyICJpbmdlbnRpbmcgZXR0ZXIga29sb25ldCBpIHZlcnNqb25zbnVtbWVyZXQiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjI5OSBsaWIvZHBrZy9wYXJzZWhlbHAuYzozMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAibWlzc2luZyAlcyIKK21zZ3N0ciAibWFuZ2xhciAlcyIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MzAxIGxpYi9kcGtnL3BhcnNlaGVscC5jOjMxNAorIywgYy1mb3JtYXQKK21zZ2lkICJlbXB0eSB2YWx1ZSBmb3IgJXMiCittc2dzdHIgInRvbSB2ZXJkaSBmb3IgJXMiCisKKyM6IGxpYi9kcGtnL3BrZy1mb3JtYXQuYzo4MAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGNoYXJhY3RlciBgJWMnIGluIGZpZWxkIHdpZHRoXG4iCittc2dzdHIgInVneWxkaWcgdGVpa24gwqslY8K7IGkgZmVsdGJyZWlkZGFcbiIKKworIzogbGliL2Rwa2cvcGtnLWZvcm1hdC5jOjE3MgorIywgYy1mb3JtYXQKK21zZ2lkICJDbG9zaW5nIGJyYWNlIG1pc3NpbmcgaW4gZm9ybWF0XG4iCittc2dzdHIgIkjDuGdyZXBhcmVudGVzIG1hbmdsYXIgaSBmb3JtYXRldFxuIgorCisjOiBsaWIvZHBrZy9wa2ctc2hvdy5jOjQwCittc2dpZCAiKG5vIGRlc2NyaXB0aW9uIGF2YWlsYWJsZSkiCittc2dzdHIgIihpbmdhIHNraWxkcmluZyB0aWxnamVuZ2VsZWcpIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6NTUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpZ25vcmUgc2lnbmFsICVzIGJlZm9yZSBydW5uaW5nICUuMjUwcyIKK21zZ3N0ciAia2xhcnRlIGlra2plIGlnbm9yZXJhIHNpZ25hbGV0ICVzIGbDuHIgc2tyaXB0ZXQgdmFydCBrw7h5cnQiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzo2OAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciB1bi1jYXRjaGluZyBzaWduYWwgJXM6ICVzXG4iCittc2dzdHIgImZlaWwgdmVkIGJsb2trZXJpbmcgYXYgc2lnbmFsZXQgJXM6ICVzXG4iCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzo3OAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyAoc3VicHJvY2Vzcyk6ICVzXG4iCittc2dzdHIgIiVzICh1bmRlcnByb3Nlc3MpOiAlc1xuIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6ODkgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQ1NAorbXNnaWQgImZvcmsgZmFpbGVkIgorbXNnc3RyICJnYWZsaW5nIG1pc2x1a2thc3QiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMTkKKyMsIGMtZm9ybWF0Cittc2dpZCAic3VicHJvY2VzcyAlcyByZXR1cm5lZCBlcnJvciBleGl0IHN0YXR1cyAlZCIKK21zZ3N0ciAidW5kZXJwcm9zZXNzZW4gJXMgcmV0dXJuZXJ0ZSBmZWlsc3RhdHVzICVkIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTI4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJzdWJwcm9jZXNzICVzIHdhcyBpbnRlcnJ1cHRlZCIKK21zZ3N0ciAidmVudGluZyBww6UgJXMgbWlzbHVra2FzdCIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEzMAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic3VicHJvY2VzcyAlcyBraWxsZWQgYnkgc2lnbmFsICglcyklcyIKK21zZ2lkICJzdWJwcm9jZXNzICVzIHdhcyBraWxsZWQgYnkgc2lnbmFsICglcyklcyIKK21zZ3N0ciAidW5kZXJwcm9zZXNzZW4gJXMgZHJlcGVuIGF2IHNpZ25hbCAoJXMpJXMiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMzIKK21zZ2lkICIsIGNvcmUgZHVtcGVkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAic3VicHJvY2VzcyAlcyBmYWlsZWQgd2l0aCB3YWl0IHN0YXR1cyBjb2RlICVkIgorbXNnc3RyICJ1bmRlcnByb3Nlc3NlbiAlcyBtaXNsdWtrYXN0IG1lZCB2ZW50ZXN0YXR1c2tvZGUgJWQiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxNTEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQ2MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAid2FpdCBmb3Igc3VicHJvY2VzcyAlcyBmYWlsZWQiCittc2dzdHIgInZlbnRpbmcgcMOlICVzIG1pc2x1a2thc3QiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgcGFja2FnZSBuYW1lIGAlLjI1MHMnIGluIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6ODEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInRydW5jYXRlZCB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLCq3N0YXRvdmVycmlkZcK7LWZpbCDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDo4NQorIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyBhdCBjaGFyYWN0ZXIgYCVzJyVzIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjEzNAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4vY3JlYXRlIHRyaWdnZXJzIGxvY2tmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrbGFydGUgaWtramUgb3BuYSBramVsZGVmaWxhIMKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjE0MQorIywgZnV6enkKK21zZ2lkICJ0cmlnZ2VycyBhcmVhIgorbXNnc3RyICJrbGFydGUgaWtramUga8O4eXJhICVzIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBrw7h5cmEgwqtmc3RhdMK7IHDDpSBkZWxmaWxhIMKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjE2NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia2xhcnRlIGlra2plIG9wbmEga2plbGRlZmlsYSDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNzkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuL2NyZWF0ZSBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia2xhcnRlIGlra2plIG9wbmEgZGVuIG55ZSBkZXBvdGZpbGEgwqslLjI1MHPCuyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MjE1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJlcnJvciByZWFkaW5nIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBsZXNhICVzIGZyw6UgJS4yNTVzIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoyMjMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia2xhcnRlIGlra2plIG9wbmEgZGVuIG55ZSBkZXBvdGZpbGEgwqslLjI1MHPCuyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MjI4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBvcG5hIGRlbiBueWUgZGVwb3RmaWxhIMKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjIzMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBpbnN0YWxsZXJhIG55IHZlcnNqb24gYXYgwqslLjI1NXPCuyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjIyMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiaW52YWxpZCBvciB1bmtub3duIHN5bnRheCBpbiB0cmlnZ2VyIG5hbWUgYCUuMjUwcycgKGluIHRyaWdnZXIgaW50ZXJlc3RzIGZvciAiCisicGFja2FnZSBgJS4yNTBzJykiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjI2MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gdHJpZ2dlciBpbnRlcmVzdCBsaXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBvcG5hIGRlbiBueWUgZGVwb3RmaWxhIMKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzoyOTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrbGFydGUgaWtramUgbGVzYSBkZWxmaWxhIMKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyBzeW50YXggZXJyb3I7IGlsbGVnYWwgcGFja2FnZSBuYW1lIGAlLjI1MHMnOiAiCisiJS4yNTBzIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMTgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrbGFydGUgaWtramUga8O4eXJhIMKrZnN0YXTCuyBww6UgZGVsZmlsYSDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzIxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAia2xhcnRlIGlra2plIGvDuHlyYSDCq2ZzdGF0wrsgcMOlIGRlbGZpbGEgwqslLjI1MHPCuyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMyNAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAia2xhcnRlIGlra2plIGvDuHlyYSDCq2ZzdGF0wrsgcMOlIGRlbGZpbGEgwqslLjI1MHPCuyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMzMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia2xhcnRlIGlra2plIGluc3RhbGxlcmEgbnkgdmVyc2pvbiBhdiDCqyUuMjU1c8K7IgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzQwIGxpYi9kcGtnL3RyaWdsaWIuYzozNDIgbGliL2Rwa2cvdHJpZ2xpYi5jOjQ3MgorIzogc3JjL3JlbW92ZS5jOjI4NiBzcmMvcmVtb3ZlLmM6Mzc3CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZW1vdmUgYCUuMjUwcyciCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBmamVybmEgwqslLjI1MHPCuyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjM2MAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrbGFydGUgaWtramUga8O4eXJhIMKrZnN0YXTCuyBww6UgZGVsZmlsYSDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzgzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia2xhcnRlIGlra2plIGvDuHlyYSDCq2ZzdGF0wrsgcMOlIGRlbGZpbGEgwqslLjI1MHPCuyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ1NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorImR1cGxpY2F0ZSBmaWxlIHRyaWdnZXIgaW50ZXJlc3QgZm9yIGZpbGVuYW1lIGAlLjI1MHMnIGFuZCBwYWNrYWdlIGAlLjI1MHMnIgorbXNnc3RyICJrbGFydGUgaWtramUgaW5zdGFsbGVyYSBueSBpbmZvcm1hc2pvbnNmaWwgwqslLjI1MHPCuyBzb20gwqslLjI1MHPCuyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ4MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrbGFydGUgaWtramUgb3BuYSBkZW4gbnllIGRlcG90ZmlsYSDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDkzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia2xhcnRlIGlra2plIG9wbmEgZGVuIG55ZSBkZXBvdGZpbGEgwqslLjI1MHPCuyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ5NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgJyUuMjUwcyciCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBvcG5hIGRlbiBueWUgZGVwb3RmaWxhIMKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0OTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzeW5jIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgJyUuMjUwcyciCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBvcG5hIGRlbiBueWUgZGVwb3RmaWxhIMKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1MDMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrbGFydGUgaWtramUgb3BuYSBkZW4gbnllIGRlcG90ZmlsYSDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTA3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGFzIGAlLjI1MHMnIgorbXNnc3RyICJrbGFydGUgaWtramUgaW5zdGFsbGVyYSBueSBpbmZvcm1hc2pvbnNmaWwgwqslLjI1MHPCuyBzb20gwqslLjI1MHPCuyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjU0MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrbGFydGUgaWtramUgbGVzYSBkZWxmaWxhIMKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1NTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInN5bnRheCBlcnJvciBpbiBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImxlc2VmZWlsIGkgb3Bwc2V0dHNmaWxhIMKrJS4yNTVzwrsiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImZpbGUgdHJpZ2dlcnMgcmVjb3JkIG1lbnRpb25zIGlsbGVnYWwgcGFja2FnZSBuYW1lIGAlLjI1MHMnIChmb3IgaW50ZXJlc3QgaW4gIgorImZpbGUgYCUuMjUwcycpOiAlLjI1MHMiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjY2NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidHJpZ2dlcnMgY2kgZmlsZSBgJS4yNTBzJyBjb250YWlucyBpbGxlZ2FsIHRyaWdnZXIgc3ludGF4IGluIHRyaWdnZXIgbmFtZSBgIgorIiUuMjUwcyc6ICUuMjUwcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Njg0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiB0cmlnZ2VycyBjaSBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrbGFydGUgaWtramUgb3BuYSBramVsZGVmaWxhIMKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo2OTkKK21zZ2lkICJ0cmlnZ2VycyBjaSBmaWxlIGNvbnRhaW5zIHVua25vd24gZGlyZWN0aXZlIHN5bnRheCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NzEyCisjLCBjLWZvcm1hdAorbXNnaWQgInRyaWdnZXJzIGNpIGZpbGUgY29udGFpbnMgdW5rbm93biBkaXJlY3RpdmUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjc3NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSB0cmlnZ2VycyBzdGF0ZSBkaXJlY3RvcnkgYCUuMjUwcyciCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBsZXNhIGRlcG90a2F0YWxvZ2VuIMKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo3NzkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgb3duZXJzaGlwIG9mIHRyaWdnZXJzIHN0YXRlIGRpcmVjdG9yeSBgJS4yNTBzJyIKK21zZ3N0ciAia2xhcnRlIGlra2plIGxlc2EgZGVwb3RrYXRhbG9nZW4gwqslLjI1MHPCuyIKKworIzogbGliL2Rwa2cvdHJpZ25hbWUuYzozNAorbXNnaWQgImVtcHR5IHRyaWdnZXIgbmFtZXMgYXJlIG5vdCBwZXJtaXR0ZWQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ25hbWUuYzozOAorbXNnaWQgInRyaWdnZXIgbmFtZSBjb250YWlucyBpbnZhbGlkIGNoYXJhY3RlciIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy91dGlscy5jOjU2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJyZWFkIGVycm9yIGluIGAlLjI1MHMnIgorbXNnc3RyICJsZXNlZmVpbCBpICUuMjUwcyIKKworIzogbGliL2Rwa2cvdXRpbHMuYzo2MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmdldHMgZ2F2ZSBhbiBlbXB0eSBzdHJpbmcgZnJvbSBgJS4yNTBzJyIKK21zZ3N0ciAiwqtmZ2V0c8K7IGdhdiBlaW4gdG9tIHN0cmVuZyBmcsOlIG9tZGlyaWdlcmluZ3NmaWxhIFtpXSIKKworIzogbGliL2Rwa2cvdXRpbHMuYzo2MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidG9vLWxvbmcgbGluZSBvciBtaXNzaW5nIG5ld2xpbmUgaW4gYCUuMjUwcyciCittc2dzdHIgImZpbGEgwqslLjI1MHPCuyBlciDDuHlkZWxhZ2QgLSBtYW5nbGFyIGxpbmplc2tpZnQgZXR0ZXIgJS4yNTBzIgorCisjOiBsaWIvZHBrZy91dGlscy5jOjc1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVvZiByZWFkaW5nIGAlLjI1MHMnIgorbXNnc3RyICJ1dmVudGEgc2x1dHQgcMOlIGZpbCBpICUuMjUwcyIKKworIzogbGliL2Rwa2cvdmFyYnVmLmM6ODIgbGliL2Rwa2cvdmFyYnVmLmM6ODgKK21zZ2lkICJlcnJvciBmb3JtYXR0aW5nIHN0cmluZyBpbnRvIHZhcmJ1ZiB2YXJpYWJsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxNzkgc3JjL2FyY2hpdmVzLmM6MjAwIHNyYy9hcmNoaXZlcy5jOjcyNAorbXNnaWQgImVycm9yIHJlYWRpbmcgZnJvbSBkcGtnLWRlYiBwaXBlIgorbXNnc3RyICJmZWlsIHZlZCBsZXNpbmcgZnLDpSBkcGtnLWRlYi1yw7h5ciIKKworIzogc3JjL2FyY2hpdmVzLmM6MTk1CisjLCBjLWZvcm1hdAorbXNnaWQgInNraXBwZWQgdW5wYWNraW5nIGZpbGUgJyUuMjU1cycgKHJlcGxhY2VkIG9yIGV4Y2x1ZGVkPykiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MjQ2IHNyYy9hcmNoaXZlcy5jOjI1MAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIHRpbWVzdGFtcHMgb2YgYCUuMjU1cyciCittc2dzdHIgImZlaWwgdmVkIHNldGppbmcgYXYgdGlkc21lcmtlIGZvciDCqyUuMjU1c8K7IgorCisjOiBzcmMvYXJjaGl2ZXMuYzoyNjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igc2V0dGluZyBvd25lcnNoaXAgb2Ygc3ltbGluayBgJS4yNTVzJyIKK21zZ3N0ciAiZmVpbCB2ZWQgc2V0amluZyBhdiBlaWdhcnNrYXAgZm9yIGRlbiBzeW1ib2xza2UgbGVua2phIMKrJS4yNTVzwrsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjI2NSBzcmMvYXJjaGl2ZXMuYzo3MzQgc3JjL3N0YXRjbWQuYzoxNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igc2V0dGluZyBvd25lcnNoaXAgb2YgYCUuMjU1cyciCittc2dzdHIgImZlaWwgdmVkIHNldGppbmcgYXYgZWlnYXJza2FwIGZvciDCqyUuMjU1c8K7IgorCisjOiBzcmMvYXJjaGl2ZXMuYzoyNjcgc3JjL2FyY2hpdmVzLmM6NzM2IHNyYy9zdGF0Y21kLmM6MTY1CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHNldHRpbmcgcGVybWlzc2lvbnMgb2YgYCUuMjU1cyciCittc2dzdHIgImZlaWwgdmVkIHNldGppbmcgYXYgZmlscmV0dGFyIGZvciDCqyUuMjU1c8K7IgorCisjOiBzcmMvYXJjaGl2ZXMuYzozOTUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBzdGF0IChkZXJlZmVyZW5jZSkgZXhpc3Rpbmcgc3ltbGluayBgJS4yNTBzJyIKK21zZ3N0ciAia2xhcnRlIGlra2plIHNldGphIGvDuHlyZWzDuHl2ZSBww6UgwqslLjI1MHPCuyIKKworIzogc3JjL2FyY2hpdmVzLmM6NDE3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmYWlsZWQgdG8gc3RhdCAoZGVyZWZlcmVuY2UpIHByb3Bvc2VkIG5ldyBzeW1saW5rIHRhcmdldCBgJS4yNTBzJyBmb3IgIgorInN5bWxpbmsgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6NDc1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisidHJ5aW5nIHRvIG92ZXJ3cml0ZSBgJS4yNTBzJywgd2hpY2ggaXMgdGhlIGRpdmVydGVkIHZlcnNpb24gb2YgYCIKKyIlLjI1MHMnIChwYWNrYWdlOiAlLjEwMHMpIgorbXNnc3RyICIiCisicHLDuHZlciDDpSBza3JpdmEgb3ZlciDCqyUuMjUwc8K7LCBzb20gZXIgZGVuIG9tZGlyaWdlcnRlIHZlcnNqb25lbiBhdiAiCisiwqslLjI1MHPCuyUuMTBzJS4xMDBzJS4xMHMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjQ4MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidHJ5aW5nIHRvIG92ZXJ3cml0ZSBgJS4yNTBzJywgd2hpY2ggaXMgdGhlIGRpdmVydGVkIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dzdHIgIiIKKyJwcsO4dmVyIMOlIHNrcml2YSBvdmVyIMKrJS4yNTBzwrssIHNvbSBlciBkZW4gb21kaXJpZ2VydGUgdmVyc2pvbmVuIGF2ICIKKyLCqyUuMjUwc8K7JS4xMHMlLjEwMHMlLjEwcyIKKworIzogc3JjL2FyY2hpdmVzLmM6NTExCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGAlLjI1NXMnICh3aGljaCBJIHdhcyBhYm91dCB0byBpbnN0YWxsKSIKK21zZ3N0ciAiZmFubiBpa2tqZSDCqyUuMjU1c8K7IChzb20gZWcgc2t1bGxlIHRpbCDDpSBpbnN0YWxsZXJhKSIKKworIzogc3JjL2FyY2hpdmVzLmM6NTE5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1bmFibGUgdG8gY2xlYW4gdXAgbWVzcyBzdXJyb3VuZGluZyBgJS4yNTVzJyBiZWZvcmUgaW5zdGFsbGluZyBhbm90aGVyICIKKyJ2ZXJzaW9uIgorbXNnc3RyICIiCisia2xhcnRlIGlra2plIHJ5ZGRhIG9wcCBpIHJvdGV0IHJ1bmR0IMKrJS4yNTVzwrsgZsO4ciBlaW4gYW5uYW4gdmVyc2pvbiBza3VsbGUgIgorImluc3RhbGxlcmFzdCIKKworIzogc3JjL2FyY2hpdmVzLmM6NTI1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IHJlc3RvcmVkIGAlLjI1NXMnIGJlZm9yZSBpbnN0YWxsaW5nIGFub3RoZXIgdmVyc2lvbiIKK21zZ3N0ciAiIgorImZhbm4gaWtramUgZ2plbm9wcHJldHRhIMKrJS4yNTVzwrsgZsO4ciBlaW4gYW5uYW4gdmVyc2pvbiBza3VsbGUgaW5zdGFsbGVyYXN0IgorCisjOiBzcmMvYXJjaGl2ZXMuYzo1NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiYXJjaGl2ZSBjb250YWluZWQgb2JqZWN0IGAlLjI1NXMnIG9mIHVua25vd24gdHlwZSAweCV4IgorbXNnc3RyICJhcmtpdmV0IGlubmVoZWxkdCBvYmpla3RldCDCqyUuMjU1c8K7IG1lZCB1a2plbmQgdHlwZSAweCV4IgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2MjYgc3JjL2RpdmVydGNtZC5jOjE1MCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NjgyCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIyMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI4NAorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE0NDEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE2ODAKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTY3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjQ0CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUyNworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHN0YXQgZmlsZSAnJXMnIgorbXNnc3RyICJmYW5uIGlra2plIMKrJS4yNTVzwrsgKGkgwqslLjI1NXPCuykiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjY0MQorIywgYy1mb3JtYXQKK21zZ2lkICJSZXBsYWNpbmcgZmlsZXMgaW4gb2xkIHBhY2thZ2UgJXMgLi4uXG4iCittc2dzdHIgIkJ5dGVyIHV0IGZpbGVyIGkgZGVuIGdhbWxlIHBha2tlbiAlcyAuLi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6NjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlcGxhY2VkIGJ5IGZpbGVzIGluIGluc3RhbGxlZCBwYWNrYWdlICVzIC4uLlxuIgorbXNnc3RyICJCeXR0YSB1dCBtZWQgZmlsZXIgaSBkZW4gaW5zdGFsbGVydGUgcGFra2VuICVzIC4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ0cnlpbmcgdG8gb3ZlcndyaXRlIGRpcmVjdG9yeSAnJS4yNTBzJyBpbiBwYWNrYWdlICUuMjUwcyAlLjI1MHMgd2l0aCAiCisibm9uZGlyZWN0b3J5IgorbXNnc3RyICIiCisicHLDuHZlciDDpSBza3JpdmEgb3ZlciBrYXRhbG9nZW4gwqslLjI1MHPCuyBpIHBha2tlbiAlLjI1MHMgbWVkIG5va28gYW5uYSBlbm4gIgorImVpbiBrYXRhbG9nIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInRyeWluZyB0byBvdmVyd3JpdGUgJyUuMjUwcycsIHdoaWNoIGlzIGFsc28gaW4gcGFja2FnZSAlLjI1MHMgJS4yNTBzIgorbXNnc3RyICJwcsO4dmVyIMOlIHNrcml2YSBvdmVyIMKrJS4yNTBzwrssIHNvbSDDsmcgZmluc3QgaSBwYWtrZW4gJS4yNTBzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3MTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgYCUuMjU1cycgKHdoaWxlIHByb2Nlc3NpbmcgYCUuMjU1cycpIgorbXNnc3RyICJrbGFydGUgaWtramUgbGVzYSDCqyUuMjU1c8K7IChpIMKrJS4yNTVzwrspIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3MTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFja2VuZCBkcGtnLWRlYiBkdXJpbmcgYCUuMjU1cyciCittc2dzdHIgImJha2dydW5uc3N5c3RlbSBkcGtnLWRlYiB1bmRlciDCqyUuMjU1c8K7IgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NDQgc3JjL2FyY2hpdmVzLmM6OTA4IHNyYy9hcmNoaXZlcy5jOjk0OQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nL3dyaXRpbmcgYCUuMjU1cyciCittc2dzdHIgImZlaWwgdmVkIGx1a2tpbmcvc2tyaXZpbmcgYXYgwqslLjI1NXPCuyIKKworIzogc3JjL2FyY2hpdmVzLmM6NzQ4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIHBpcGUgYCUuMjU1cyciCittc2dzdHIgImZlaWwgdmVkIG9wcHJldHRpbmcgYXYgcsO4eXIgwqslLjI1NXPCuyIKKworIzogc3JjL2FyY2hpdmVzLmM6NzUzIHNyYy9hcmNoaXZlcy5jOjc1OAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBkZXZpY2UgYCUuMjU1cyciCittc2dzdHIgImZlaWwgdmVkIG9wcHJldHRpbmcgYXYgZWluaW5nIMKrJS4yNTVzwrsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc3MQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBoYXJkIGxpbmsgYCUuMjU1cyciCittc2dzdHIgImZlaWwgdmVkIG9wcHJldHRpbmcgYXYgaGFyZCBsZW5ramUgwqslLjI1NXPCuyIKKworIzogc3JjL2FyY2hpdmVzLmM6Nzc3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo1MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgc3ltYm9saWMgbGluayBgJS4yNTVzJyIKK21zZ3N0ciAiZmVpbCB2ZWQgb3BwcmV0dGluZyBhdiBzeW1ib2xzayBsZW5ramUgwqslLjI1NXPCuyIKKworIzogc3JjL2FyY2hpdmVzLmM6NzgzCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIGRpcmVjdG9yeSBgJS4yNTVzJyIKK21zZ3N0ciAiZmVpbCB2ZWQgb3BwcmV0dGluZyBhdiBrYXRhbG9nZW4gwqslLjI1NXPCuyIKKworIzogc3JjL2FyY2hpdmVzLmM6ODIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBtb3ZlIGFzaWRlIGAlLjI1NXMnIHRvIGluc3RhbGwgbmV3IHZlcnNpb24iCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBmbHl0dGEgwqslLjI1NXPCuyBmb3Igw6UgaW5zdGFsbGVyYSBlaW4gbnkgdmVyc2pvbiIKKworIzogc3JjL2FyY2hpdmVzLmM6ODMyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzozMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgbGluayBgJS4yNTVzJyIKK21zZ3N0ciAia2xhcnRlIGlra2plIGxlc2EgbGVua2phIMKrJS4yNTVzwrsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjgzNCBzcmMvY29uZmlndXJlLmM6NDIzCisjLCBjLWZvcm1hdAorbXNnaWQgInN5bWJvbGljIGxpbmsgJyUuMjUwcycgc2l6ZSBoYXMgY2hhbmdlZCBmcm9tICVqZCB0byAlemQiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6ODM5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBtYWtlIGJhY2t1cCBzeW1saW5rIGZvciBgJS4yNTVzJyIKK21zZ3N0ciAia2xhcnRlIGlra2plIGxhZ2Egc2lrcmluZ3Nrb3BpIGF2IGRlbiBzeW1ib2xza2UgbGVua2phIMKrJS4yNTVzwrsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjg0MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hvd24gYmFja3VwIHN5bWxpbmsgZm9yIGAlLjI1NXMnIgorbXNnc3RyICJrbGFydGUgaWtramUgZW5kcmEgZWlnYXJza2FwZW4gdGlsIGRlbiBzeW1ib2xza2UgbGVua2phIMKrJS4yNTVzwrsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjg0NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gbWFrZSBiYWNrdXAgbGluayBvZiBgJS4yNTVzJyBiZWZvcmUgaW5zdGFsbGluZyBuZXcgdmVyc2lvbiIKK21zZ3N0ciAiIgorImtsYXJ0ZSBpa2tqZSBsYWdhIHNpa3Jpbmdza29waSBhdiBsZW5ramEgwqslLjI1NXPCuyBmw7hyIGVpbiBueSB2ZXJzam9uIHNrdWxsZSAiCisiaW5zdGFsbGVyYXN0IgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4NjMgc3JjL2FyY2hpdmVzLmM6OTU3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyB2ZXJzaW9uIG9mIGAlLjI1NXMnIgorbXNnc3RyICJrbGFydGUgaWtramUgaW5zdGFsbGVyYSBueSB2ZXJzam9uIGF2IMKrJS4yNTVzwrsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjkwMiBzcmMvYXJjaGl2ZXMuYzo5NDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuICclLjI1NXMnIgorbXNnc3RyICJrbGFydGUgaWtramUgb3BwcmV0dGEgwqslLjI1NXPCuyIKKworIzogc3JjL2FyY2hpdmVzLmM6OTQ3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBmaWxlICclLjI1NXMnIgorbXNnc3RyICJrbGFydGUgaWtramUgbHVra2EgbWVsbG9tbGFnZXIgZm9yIMKrJS4yNTVzwrsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMDAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpZ25vcmluZyBkZXBlbmRlbmN5IHByb2JsZW0gd2l0aCAlczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6IMOFdHZhcmluZyAtIGlnbm9yZXJlciBrcmF2cHJvYmxlbSB2ZWQgZmplcm5pbmcgYXYgJXM6XG4iCisiJXMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJjb25zaWRlcmluZyBkZWNvbmZpZ3VyYXRpb24gb2YgZXNzZW50aWFsXG4iCisiIHBhY2thZ2UgJXMsIHRvIGVuYWJsZSAlcy4iCittc2dzdHIgIiIKKyJkcGtnOiDDhXR2YXJpbmcgLSB2dXJkZXJlciBmamVybmluZyBhdiBvcHBzZXR0IGZvciBkZW4gbsO4ZHZlbmRpZ2VcbiIKKyIgcGFra2VuICVzIGZvciDDpSBrdW5uYSBmamVybmEgJXMuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMDgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBubywgJXMgaXMgZXNzZW50aWFsLCB3aWxsIG5vdCBkZWNvbmZpZ3VyZVxuIgorIiBpdCBpbiBvcmRlciB0byBlbmFibGUgJXMuXG4iCittc2dzdHIgIiIKKyJkcGtnOiBOZWksICVzIGVyIG7DuGR2ZW5kaWcuIFZpbCBpa2tqZSBmamVybmEgb3Bwc2V0dGV0XG4iCisiIGZvciDDpSBrdW5uYSBmamVybmEgJXMuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMjIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBubywgY2Fubm90IHByb2NlZWQgd2l0aCAlcyAoLS1hdXRvLWRlY29uZmlndXJlIHdpbGwgaGVscCk6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiBOZWksIGthbiBpa2tqZSBmamVybmEgJXMgKC0tYXV0by1kZWNvbmZpZ3VyZSBrYW4gaGplbHBhKTpcbiIKKyIlcyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAzMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAicmVtb3ZhbCBvZiAlLjI1MHMiCittc2dzdHIgImxlc2VmZWlsIGkgJS4yNTBzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDU3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJpbnN0YWxsYXRpb24gb2YgJS4yNTBzIgorbXNnc3RyICJrbGFydGUgaWtramUgaW5zdGFsbGVyYSBueSB2ZXJzam9uIGF2IMKrJS4yNTVzwrsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNTgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBjb25zaWRlcmluZyBkZWNvbmZpZ3VyYXRpb24gb2YgJXMsIHdoaWNoIHdvdWxkIGJlIGJyb2tlbiBieSAlcyAuLi5cbiIKK21zZ3N0ciAiZHBrZzogVnVyZGVyZXIgw6UgZmplcm5hICVzIHRpbCBmb3JkZWwgZm9yICVzIC4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDY1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiB5ZXMsIHdpbGwgZGVjb25maWd1cmUgJXMgKGJyb2tlbiBieSAlcykuXG4iCittc2dzdHIgImRwa2c6IEphLCBmamVybmFyICVzIHRpbCBmb3JkZWwgZm9yICVzLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDY5IHNyYy9hcmNoaXZlcy5jOjExODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IHJlZ2FyZGluZyAlcyBjb250YWluaW5nICVzOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogS255dHQgdGlsICVzLCBzb20gaW5uZWhlbGQgJXM6XG4iCisiJXMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNzcKKyMsIGZ1enp5Cittc2dpZCAiaWdub3JpbmcgYnJlYWthZ2UsIG1heSBwcm9jZWVkIGFueXdheSEiCittc2dzdHIgImRwa2c6IMOFdHZhcmluZyAtIGlnbm9yZXJlciBrb25mbGlrdCwgbWVuIGthbiBoYWxkYSBmcmFtIGxpa2V2ZWwuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImluc3RhbGxpbmcgJS4yNTBzIHdvdWxkIGJyZWFrICUuMjUwcywgYW5kXG4iCisiIGRlY29uZmlndXJhdGlvbiBpcyBub3QgcGVybWl0dGVkICgtLWF1dG8tZGVjb25maWd1cmUgbWlnaHQgaGVscCkiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA4NgorIywgYy1mb3JtYXQKK21zZ2lkICJpbnN0YWxsaW5nICUuMjUwcyB3b3VsZCBicmVhayBleGlzdGluZyBzb2Z0d2FyZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTE2CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IGNvbnNpZGVyaW5nIHJlbW92aW5nICVzIGluIGZhdm91ciBvZiAlcyAuLi5cbiIKK21zZ3N0ciAiZHBrZzogVnVyZGVyZXIgw6UgZmplcm5hICVzIHRpbCBmb3JkZWwgZm9yICVzIC4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTIyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGlzIG5vdCBwcm9wZXJseSBpbnN0YWxsZWQgLSBpZ25vcmluZyBhbnkgZGVwZW5kZW5jaWVzIG9uIGl0LlxuIgorbXNnc3RyICIlcyBlciBpa2tqZSBza2lra2VsZWcgaW5zdGFsbGVydCAtIGlnbm9yZXJlciBwYWtrZWtyYXYuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogbWF5IGhhdmUgdHJvdWJsZSByZW1vdmluZyAlcywgYXMgaXQgcHJvdmlkZXMgJXMgLi4uXG4iCittc2dzdHIgImRwa2c6IEthbiBmw6UgcHJvYmxlbSBtZWQgw6UgZmplcm5hICVzLCBzaWRhbiBoYW4gdGlsYnlyICVzIC4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTY2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogcGFja2FnZSAlcyByZXF1aXJlcyByZWluc3RhbGxhdGlvbiwgYnV0IHdpbGwgcmVtb3ZlIGFueXdheSBhcyB5b3UgIgorInJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiIgorImRwa2c6IFBha2tlbiAlcyBrcmV2IGluc3RhbGxhc2pvbiBww6Ugbnl0dCwgbWVuIHZlcnQgZmplcm5hIGxpa2V2ZWwsIHNpZGFuIGR1ICIKKyLDuG5za2plciBkZXQuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExNjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogcGFja2FnZSAlcyByZXF1aXJlcyByZWluc3RhbGxhdGlvbiwgd2lsbCBub3QgcmVtb3ZlLlxuIgorbXNnc3RyICJkcGtnOiBQYWtrZW4gJXMga3JldiBpbnN0YWxsYXNqb24gcMOlIG55dHQsIHPDpSBoYW4gdmVydCBpa2tqZSBmamVybmEuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogeWVzLCB3aWxsIHJlbW92ZSAlcyBpbiBmYXZvdXIgb2YgJXMuXG4iCittc2dzdHIgImRwa2c6IEphLCBmamVybmFyICVzIHRpbCBmb3JkZWwgZm9yICVzLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTkwCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZsaWN0aW5nIHBhY2thZ2VzIC0gbm90IGluc3RhbGxpbmcgJS4yNTBzIgorbXNnc3RyICJwYWtrYXIgaSBrb25mbGlrdCAtIGluc3RhbGxlcmVyIGlra2plICUuMjUwcyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE5MQorIywgZnV6enkKK21zZ2lkICJpZ25vcmluZyBjb25mbGljdCwgbWF5IHByb2NlZWQgYW55d2F5ISIKK21zZ3N0ciAiZHBrZzogw4V0dmFyaW5nIC0gaWdub3JlcmVyIGtvbmZsaWt0LCBtZW4ga2FuIGhhbGRhIGZyYW0gbGlrZXZlbC5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTIzNQorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIC0tcmVjdXJzaXZlIG5lZWRzIGF0IGxlYXN0IG9uZSBwYXRoIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIC0tcmVjdXJzaXZlIHRyZW5nIG1pbnN0IMOpaW4gc3RpZ3BhcmFtZXRlciIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI0NQorIywgZnV6enkKK21zZ2lkICJmaW5kIGZvciBkcGtnIC0tcmVjdXJzaXZlIgorbXNnc3RyICJrbGFydGUgaWtramUga8O4eXJhIMKrZmluZMK7IGZvciAtLXJlY3Vyc2l2ZSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI2NgorbXNnaWQgImZhaWxlZCB0byBmZG9wZW4gZmluZCdzIHBpcGUiCittc2dzdHIgImtsYXJ0ZSBpa2tqZSB1dGbDuHJhIMKrZmRvcGVuwrsgcMOlIGZpbmQtcsO4eXJldCIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3MgorbXNnaWQgImVycm9yIHJlYWRpbmcgZmluZCdzIHBpcGUiCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBsZXNhIGZpbmQtcsO4eXJldCIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3MworbXNnaWQgImVycm9yIGNsb3NpbmcgZmluZCdzIHBpcGUiCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBsdWtrYSBmaW5kLXLDuHlyZXQiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmluZCBmb3IgLS1yZWN1cnNpdmUgcmV0dXJuZWQgdW5oYW5kbGVkIGVycm9yICVpIgorbXNnc3RyICJmaW5kIGZvciAtLXJlY3Vyc2l2ZSByZXR1cm5lcnRlIGRlbiB1Zm9ydXRzZXR0ZSBmZWlsZW4gJWkiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNzkKK21zZ2lkICJzZWFyY2hlZCwgYnV0IGZvdW5kIG5vIHBhY2thZ2VzIChmaWxlcyBtYXRjaGluZyAqLmRlYikiCittc2dzdHIgInPDuGt0ZSwgbWVuIGZhbm4gaW5nZW4gcGFra2FyIChmaWxlciBtZWQgbmFtbiAqLmRlYikiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhdCBsZWFzdCBvbmUgcGFja2FnZSBhcmNoaXZlIGZpbGUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMgdHJlbmcgbWluc3Qgw6lpIHBha2tlYXJraXZmaWwgc29tIHBhcmFtZXRlciIKKworIzogc3JjL2FyY2hpdmVzLmM6MTMyNSBzcmMvZGl2ZXJ0Y21kLmM6Nzggc3JjL2RpdmVydGNtZC5jOjExOAorIzogc3JjL2VucXVpcnkuYzoxNjYgc3JjL2VucXVpcnkuYzoyNzkgc3JjL2VucXVpcnkuYzo0NDkgc3JjL2VucXVpcnkuYzo0NTEKKyM6IHNyYy9lbnF1aXJ5LmM6NDY0IHNyYy9tYWluLmM6NjYgc3JjL21haW4uYzoxNjMgc3JjL21haW4uYzozMTQKKyM6IHNyYy9tYWluLmM6NDkzIHNyYy9wYWNrYWdlcy5jOjI1NCBzcmMvcXVlcnljbWQuYzoyNTIgc3JjL3F1ZXJ5Y21kLmM6MzU1CisjOiBzcmMvcXVlcnljbWQuYzozOTYgc3JjL3F1ZXJ5Y21kLmM6NDA0IHNyYy9xdWVyeWNtZC5jOjQ0OCBzcmMvcXVlcnljbWQuYzo1MTcKKyM6IHNyYy9xdWVyeWNtZC5jOjYwNiBzcmMvcXVlcnljbWQuYzo2NTAgc3JjL3NlbGVjdC5jOjc5IHNyYy9zdGF0Y21kLmM6NjgKKyM6IHNyYy9zdGF0Y21kLmM6OTggc3JjL3RyaWdjbWQuYzo1OCBzcmMvdHJpZ2NtZC5jOjkwIGRwa2ctZGViL2J1aWxkLmM6NDQxCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjE3IGRwa2ctZGViL2V4dHJhY3QuYzoyNTAgZHBrZy1kZWIvaW5mby5jOjIwMworIzogZHBrZy1kZWIvaW5mby5jOjI2NSBkcGtnLWRlYi9tYWluLmM6NjAgZHBrZy1kZWIvbWFpbi5jOjEyNgorIzogZHBrZy1zcGxpdC9pbmZvLmM6MjU3IGRwa2ctc3BsaXQvbWFpbi5jOjU0IGRwa2ctc3BsaXQvbWFpbi5jOjk4CisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTQ0IGRwa2ctc3BsaXQvcXVldWUuYzoyODAKK21zZ2lkICI8c3RhbmRhcmQgb3V0cHV0PiIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzI2IHNyYy9wYWNrYWdlcy5jOjI1NSBzcmMvcXVlcnljbWQuYzoyNTMKKyM6IHNyYy9xdWVyeWNtZC5jOjM1MyBzcmMvcXVlcnljbWQuYzo0NTQgc3JjL3F1ZXJ5Y21kLmM6NTE4IHNyYy9zZWxlY3QuYzo4MAorIzogZHBrZy1zcGxpdC9tYWluLmM6MTY5IGRwa2ctc3BsaXQvcXVldWUuYzoyMTgKK21zZ2lkICI8c3RhbmRhcmQgZXJyb3I+IgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzNjcKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIlNlbGVjdGluZyBwcmV2aW91c2x5IGRlc2VsZWN0ZWQgcGFja2FnZSAlcy5cbiIKK21zZ2lkICJTZWxlY3RpbmcgcHJldmlvdXNseSB1bnNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dzdHIgIlRlayBpIGJydWsgcGFra2VuICVzICh0aWRsZWdhcmUgaWtramUgaSBicnVrKS5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTM3MQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiU2tpcHBpbmcgZGVzZWxlY3RlZCBwYWNrYWdlICVzLlxuIgorbXNnaWQgIlNraXBwaW5nIHVuc2VsZWN0ZWQgcGFja2FnZSAlcy5cbiIKK21zZ3N0ciAiSG9wcGFyIG92ZXIgcGFra2VuICVzLiAoSWtramUgdmFsdClcbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTM4NworIywgYy1mb3JtYXQKK21zZ2lkICJWZXJzaW9uICUuMjUwcyBvZiAlLjI1MHMgYWxyZWFkeSBpbnN0YWxsZWQsIHNraXBwaW5nLlxuIgorbXNnc3RyICJWZXJzam9uICUuMjUwcyBhdiAlLjI1MHMgZXIgaW5zdGFsbGVydCBmcsOlIGbDuHIsIGhvcHBhciBvdmVyLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzk3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJkb3duZ3JhZGluZyAlLjI1MHMgZnJvbSAlLjI1MHMgdG8gJS4yNTBzLiIKK21zZ3N0ciAiJXMgLSDDhXR2YXJpbmc6IE5lZGdyYWRlcmVyICUuMjUwcyBmcsOlICUuMjUwcyB0aWwgJS4yNTBzLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxNDAyCisjLCBjLWZvcm1hdAorbXNnaWQgIldpbGwgbm90IGRvd25ncmFkZSAlLjI1MHMgZnJvbSB2ZXJzaW9uICUuMjUwcyB0byAlLjI1MHMsIHNraXBwaW5nLlxuIgorbXNnc3RyICIiCisiVmlsIGlra2plIG5lZGdyYWRlcmEgJS4yNTBzIGZyw6UgdmVyc2pvbiAlLjI1MHMgdGlsICUuMjUwcywgaG9wcGFyIG92ZXIuXG4iCisKKyM6IHNyYy9jbGVhbnVwLmM6ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVuYWJsZSB0byByZW1vdmUgbmV3bHktaW5zdGFsbGVkIHZlcnNpb24gb2YgYCUuMjUwcycgdG8gYWxsb3cgcmVpbnN0YWxsYXRpb24gIgorIm9mIGJhY2t1cCBjb3B5IgorbXNnc3RyICIiCisia2xhcnRlIGlra2plIGZqZXJuYSBkZW4gbnlpbnN0YWxsZXJ0ZSB2ZXJzam9uZW4gYXYgwqslLjI1MHPCuyBmb3Igw6Uga3VubmEgIgorImluc3RhbGxlcmEgc2lrcmluZ3Nrb3BpZW4gcMOlIG55dHQiCisKKyM6IHNyYy9jbGVhbnVwLmM6OTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlc3RvcmUgYmFja3VwIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBnamVub3BwcmV0dGEgc2lrcmluZ3Nrb3BpZW4gYXYgwqslLjI1MHPCuyIKKworIzogc3JjL2NsZWFudXAuYzo5NworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHJlc3RvcmUgYmFja3VwIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBiYWNrdXAgY29weSBvZiAnJS4yNTBzJyIKK21zZ3N0ciAia2xhcnRlIGlra2plIGdqZW5vcHByZXR0YSBzaWtyaW5nc2tvcGllbiBhdiDCqyUuMjUwc8K7IgorCisjOiBzcmMvY2xlYW51cC5jOjEwMQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBuZXdseS1pbnN0YWxsZWQgdmVyc2lvbiBvZiBgJS4yNTBzJyIKK21zZ3N0ciAia2xhcnRlIGlra2plIGZqZXJuYSBkZW4gbnl1dHBha2thIHZlcnNqb25lbiBhdiDCqyUuMjUwc8K7IgorCisjOiBzcmMvY2xlYW51cC5jOjEwOAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIG5ld2x5LWV4dHJhY3RlZCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICJrbGFydGUgaWtramUgZmplcm5hIGRlbiBueXV0cGFra2EgdmVyc2pvbmVuIGF2IMKrJS4yNTBzwrsiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxMDQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byBzdGF0IG5ldyBkaXN0IGNvbmZmaWxlIGAlLjI1MHMnIgorbXNnaWQgInVuYWJsZSB0byBzdGF0IG5ldyBkaXN0cmlidXRlZCBjb25mZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAiZmFubiBpa2tqZSBkZW4gbnllIGRpc3RyaWJ1c2pvbnNvcHBzZXR0c2ZpbGEgwqslLjI1MHPCuyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBjdXJyZW50IGluc3RhbGxlZCBjb25mZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiZmFubiBpa2tqZSBkZW4gaW5zdGFsbGVydGUgb3Bwc2V0dHNmaWxhIMKrJS4yNTBzwrsiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxMjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIkNvbmZpZ3VyYXRpb24gZmlsZSBgJXMnLCBkb2VzIG5vdCBleGlzdCBvbiBzeXN0ZW0uXG4iCisiSW5zdGFsbGluZyBuZXcgY29uZmlnIGZpbGUgYXMgeW91IHJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiIgorIlxuIgorIk9wcHNldHRzZmlsYSDCqyVzwrsgZmluc3QgaWtramUgcMOlIHN5c3RlbWV0LlxuIgorIkluc3RhbGxlcmVyIG55IG9wcHNldHRzZmlsIHNpZGFuIGR1IMO4bnNramVyIGRldC5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE2OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW1vdmUgb2xkIGJhY2t1cCAnJS4yNTBzJzogJXMiCittc2dzdHIgIiIKKyJkcGtnOiAlczogw4V0dmFyaW5nIC0ga2xhcnRlIGlra2plIGZqZXJuYSBkZW4gZ2FtbGUgc2lrcmluZ3Nrb3BpZW4gwqslLjI1MHPCuzogIgorIiVzXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzoxNzYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVuYW1lICclLjI1MHMnIHRvICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiDDhXR2YXJpbmcgLSBrbGFydGUgaWtramUgZW5kcmEgbmFtbmV0IHDDpSDCqyUuMjUwc8K7IHRpbCDCqyUuMjUwc8K7OiAlc1xuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTgyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIHJlbW92ZSAnJS4yNTBzJzogJXMiCittc2dzdHIgIiVzOiBLbGFydGUgaWtramUga8O4eXJhIGd6aXAgJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxODgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlIG9sZCBkaXN0cmlidXRlZCB2ZXJzaW9uICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiDDhXR2YXJpbmcgLSBrbGFydGUgaWtramUgZmplcm5hIGRlbiB0aWRsZWdhcmUgZGlzdHJpYnVlcnRlICIKKyJ2ZXJzam9uZW4gwqslLjI1MHPCuzogJXNcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE5MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW1vdmUgJyUuMjUwcycgKGJlZm9yZSBvdmVyd3JpdGUpOiAlcyIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiDDhXR2YXJpbmcgLSBrbGFydGUgaWtramUgZmplcm5hIMKrJS4yNTBzwrsgKGbDuHIgb3ZlcnNrcml2aW5nKTogJXNcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE5NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byBsaW5rICclLjI1MHMnIHRvICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiZHBrZzogJXM6IMOFdHZhcmluZyAtIGtsYXJ0ZSBpa2tqZSBsZW5ramEgwqslLjI1MHPCuyB0aWwgwqslLjI1MHPCuzogJXNcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjIwMAorIywgYy1mb3JtYXQKK21zZ2lkICJJbnN0YWxsaW5nIG5ldyB2ZXJzaW9uIG9mIGNvbmZpZyBmaWxlICVzIC4uLlxuIgorbXNnc3RyICJJbnN0YWxsZXJlciBueSB2ZXJzam9uIGF2IG9wcHNldHRzZmlsYSAlcyAuLi5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjIwNiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NTQ2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIGAlLjI1MHMnIGFzIGAlLjI1MHMnIgorbXNnc3RyICJrbGFydGUgaWtramUgaW5zdGFsbGVyYSDCqyUuMjUwc8K7IHNvbSDCqyUuMjUwc8K7IgorCisjOiBzcmMvY29uZmlndXJlLmM6MjU3CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHBhY2thZ2UgbmFtZWQgYCVzJyBpcyBpbnN0YWxsZWQsIGNhbm5vdCBjb25maWd1cmUiCittc2dzdHIgImluZ2VuIHBha2tlIG1lZCBuYW1uZXQgwqslc8K7IGVyIGluc3RhbGxlcnQsIGthbiBpa2tqZSBzZXRqYSBvcHAiCisKKyM6IHNyYy9jb25maWd1cmUuYzoyNjAKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlLjI1MHMgaXMgYWxyZWFkeSBpbnN0YWxsZWQgYW5kIGNvbmZpZ3VyZWQiCittc2dzdHIgInBha2tlbiAlLjI1MHMgZXIgaW5zdGFsbGVydCBvZyBzZXR0IG9wcCBmcsOlIGbDuHIiCisKKyM6IHNyYy9jb25maWd1cmUuYzoyNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInBhY2thZ2UgJS4yNTBzIGlzIG5vdCByZWFkeSBmb3IgY29uZmlndXJhdGlvblxuIgorIiBjYW5ub3QgY29uZmlndXJlIChjdXJyZW50IHN0YXR1cyBgJS4yNTBzJykiCittc2dzdHIgIiIKKyJwYWtrZW4gJS4yNTBzIGVyIGlra2plIGtsYXIgZm9yIG9wcHNldHRcbiIKKyIga2FuIGlra2plIHNldGphIG9wcCAobm92ZXJhbmRlIHN0YXR1cyDCqyUuMjUwc8K7KSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI5NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogZGVwZW5kZW5jeSBwcm9ibGVtcyBwcmV2ZW50IGNvbmZpZ3VyYXRpb24gb2YgJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiBLcmF2cHJvYmxlbSBoaW5kcmFyIG9wcHNldHRldCBhdiAlczpcbiIKKyIlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI5NworbXNnaWQgImRlcGVuZGVuY3kgcHJvYmxlbXMgLSBsZWF2aW5nIHVuY29uZmlndXJlZCIKK21zZ3N0ciAia3JhdnByb2JsZW0gLSBzZXQgaWtramUgb3BwIHBha2tlbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjMwMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogJXM6IGRlcGVuZGVuY3kgcHJvYmxlbXMsIGJ1dCBjb25maWd1cmluZyBhbnl3YXkgYXMgeW91IHJlcXVlc3RlZDpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiBLcmF2cHJvYmxlbSwgbWVuIHNldCBvcHAgbGlrZXZlbCBzaWRhbiBkdSDDuG5za2plciBkZXQ6XG4iCisiJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzozMDkKK21zZ2lkICIiCisiUGFja2FnZSBpcyBpbiBhIHZlcnkgYmFkIGluY29uc2lzdGVudCBzdGF0ZSAtIHlvdSBzaG91bGRcbiIKKyIgcmVpbnN0YWxsIGl0IGJlZm9yZSBhdHRlbXB0aW5nIGNvbmZpZ3VyYXRpb24uIgorbXNnc3RyICIiCisiUGFra2VuIGVyIGkgZWluIHZlbGRpZyBpbmtvbnNpc3RlbnQgdGlsc3RhbmQsIG9nIGLDuHJcbiIKKyJpbnN0YWxsZXJhc3QgcMOlIG55dHQgZsO4ciBkdSBzZXQgaGFuIG9wcC4iCisKKyM6IHNyYy9jb25maWd1cmUuYzozMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2V0dGluZyB1cCAlcyAoJXMpIC4uLlxuIgorbXNnc3RyICJTZXQgb3BwICVzICglcykgLi4uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzozOTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogdW5hYmxlIHRvIHN0YXQgY29uZmlnIGZpbGUgJyVzJ1xuIgorIiAoPSAnJXMnKTogJXMiCittc2dzdHIgIiIKKyJkcGtnOiAlczogw4V0dmFyaW5nIC0gZmFubiBpa2tqZSBvcHBzZXR0c2ZpbGEgwqslc8K7XG4iCisiICg9IMKrJXPCuyk6ICVzXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo0MDkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogY29uZmlnIGZpbGUgJyVzJyBpcyBhIGNpcmN1bGFyIGxpbmtcbiIKKyIgKD0gJyVzJykiCittc2dzdHIgIiIKKyJkcGtnOiAlczogw4V0dmFyaW5nIC0gb3Bwc2V0dHNmaWxhIMKrJXPCuyBlciBlaSBsZW5ramUgc29tIHBlaWthciB0aWwgc2VnICIKKyJzasO4bHZcbiIKKyIgKD0gwqslc8K7KVxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDE4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IHVuYWJsZSB0byByZWFkbGluayBjb25mZmlsZSAnJXMnXG4iCisiICg9ICclcycpOiAlcyIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiDDhXR2YXJpbmcgLSBrbGFydGUgaWtramUgbGVzYSBsZW5ramEgZm9yIG9wcHNldHRzZmlsYSDCqyVzwrtcbiIKKyIgKD0gwqslc8K7KTogJXNcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQ0NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBjb25mZmlsZSAnJS4yNTBzJyByZXNvbHZlcyB0byBkZWdlbmVyYXRlIGZpbGVuYW1lXG4iCisiICgnJXMnIGlzIGEgc3ltbGluayB0byAnJXMnKSIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiDDhXR2YXJpbmcgLSBvcHBzZXR0c2ZpbGEgwqslLjI1MHPCuyB2ZXJ0IHRpbCBlaXQgZGVnZW5lcmVydCBmaWxuYW1uXG4iCisiKMKrJXPCuyBlciBlaSBzeW1ib2xzayBsZW5ramUgdGlsIMKrJXPCuylcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQ2MAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGNvbmZmaWxlICclLjI1MHMnIGlzIG5vdCBhIHBsYWluIGZpbGUgb3Igc3ltbGluayAoPSAnJXMnKSIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiDDhXR2YXJpbmcgLSBvcHBzZXR0c2ZpbGEgwqslLjI1MHPCuyBlciBpbmdhIHZhbmxlZyBmaWwgZWxsZXIgc3ltYm9sc2sgIgorImxlbmtqZSAoPSDCqyVzwrspXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo0ODYKK21zZ2lkICJtZDVoYXNoIgorbXNnc3RyICJtZDUtbsO4a2tlbCIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQ5MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IHVuYWJsZSB0byBvcGVuIGNvbmZmaWxlICVzIGZvciBoYXNoOiAlcyIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiDDhXR2YXJpbmcgLSBrbGFydGUgaWtramUgb3BuYSBvcHBzZXR0c2ZpbGEgJXMgZm9yIG7DuGtrZWw6ICVzXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo1MjIgc3JjL2NvbmZpZ3VyZS5jOjUyNgorbXNnaWQgImNvbmZmaWxlIGRpZmZlcmVuY2UgdmlzdWFsaXplciIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NTQzCittc2dpZCAiVHlwZSBgZXhpdCcgd2hlbiB5b3UncmUgZG9uZS5cbiIKK21zZ3N0ciAiU2tyaXYgwqtleGl0wrsgbsOlciBkdSBlciBmZXJkaWcuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo1NTIgc3JjL2NvbmZpZ3VyZS5jOjU1NgorbXNnaWQgImNvbmZmaWxlIHNoZWxsIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIkNvbmZpZ3VyYXRpb24gZmlsZSBgJXMnIgorbXNnc3RyICIiCisiXG4iCisiT3Bwc2V0dHNmaWwgwqslc8K7IgorCisjOiBzcmMvY29uZmlndXJlLmM6NjA0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAoYWN0dWFsbHkgYCVzJykiCittc2dzdHIgIiAoZmFrdGlzayDCqyVzwrspIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjA4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgPT0+IEZpbGUgb24gc3lzdGVtIGNyZWF0ZWQgYnkgeW91IG9yIGJ5IGEgc2NyaXB0LlxuIgorIiA9PT4gRmlsZSBhbHNvIGluIHBhY2thZ2UgcHJvdmlkZWQgYnkgcGFja2FnZSBtYWludGFpbmVyLlxuIgorbXNnc3RyICIiCisiXG4iCisiID09PiBGaWxhIHDDpSBzeXN0ZW1ldCBlciBvcHByZXR0YSBhdiBkZWcgZWxsZXIgZWl0IHNrcmlwdC5cbiIKKyIgPT0+IEZpbGEgZmluc3Qgw7JnIGkgcGFra2VuIGZyw6UgcGFra2V2ZWRsaWtlaGFsZGFyZW4uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiAgICAgTm90IG1vZGlmaWVkIHNpbmNlIGluc3RhbGxhdGlvbi5cbiIKK21zZ3N0ciAiIgorIlxuIgorIiAgICAgSWtramUgZW5kcmEgc2lkYW4gaW5zdGFsbGFzam9uZW4uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiA9PT4gTW9kaWZpZWQgKGJ5IHlvdSBvciBieSBhIHNjcmlwdCkgc2luY2UgaW5zdGFsbGF0aW9uLlxuIgorbXNnc3RyICIiCisiXG4iCisiID09PiBFbmRyYSAoYXYgZGVnIGVsbGVyIGF2IGVpdCBza3JpcHQpIHNpZGFuIGluc3RhbGxhc2pvbmVuLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjE2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiID09PiBEZWxldGVkIChieSB5b3Ugb3IgYnkgYSBzY3JpcHQpIHNpbmNlIGluc3RhbGxhdGlvbi5cbiIKK21zZ3N0ciAiIgorIlxuIgorIiA9PT4gRW5kcmEgKGF2IGRlZyBlbGxlciBhdiBlaXQgc2tyaXB0KSBzaWRhbiBpbnN0YWxsYXNqb25lbi5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYxOQorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IFBhY2thZ2UgZGlzdHJpYnV0b3IgaGFzIHNoaXBwZWQgYW4gdXBkYXRlZCB2ZXJzaW9uLlxuIgorbXNnc3RyICIgPT0+IFBha2tlZGlzdHJpYnV0w7hyZW4gaGFyIGdqZXZlIHV0IGVpbiBvcHBkYXRlcnQgdmVyc2pvbi5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYyMAorIywgYy1mb3JtYXQKK21zZ2lkICIgICAgIFZlcnNpb24gaW4gcGFja2FnZSBpcyB0aGUgc2FtZSBhcyBhdCBsYXN0IGluc3RhbGxhdGlvbi5cbiIKK21zZ3N0ciAiICAgICBWZXJzam9uZW4gaSBwYWtrZW4gZXIgZGVuIHNhbWUgc29tIHZlZCBzaXN0ZSBpbnN0YWxsYXNqb24uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBVc2luZyBuZXcgZmlsZSBhcyB5b3UgcmVxdWVzdGVkLlxuIgorbXNnc3RyICIgPT0+IEJydWthciBkZW4gbnllIGZpbGEgc2lkYW4gZHUgw7huc2tqZXIgZGV0LlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gVXNpbmcgY3VycmVudCBvbGQgZmlsZSBhcyB5b3UgcmVxdWVzdGVkLlxuIgorbXNnc3RyICIgPT0+IEJydWthciBkZW4gZ2FtbGUgZmlsYSBzaWRhbiBkdSDDuG5za2plciBkZXQuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBLZWVwaW5nIG9sZCBjb25maWcgZmlsZSBhcyBkZWZhdWx0LlxuIgorbXNnc3RyICIgPT0+IFRlayB2YXJlIHDDpSBkZW4gZ2FtbGUgb3Bwc2V0dHNmaWxhIHNvbSBzdGFuZGFyZC5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY0NQorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IFVzaW5nIG5ldyBjb25maWcgZmlsZSBhcyBkZWZhdWx0LlxuIgorbXNnc3RyICIgPT0+IEJydWthciBkZW4gbnllIG9wcHNldHRzZmlsYSBzb20gc3RhbmRhcmQuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyIgICBXaGF0IHdvdWxkIHlvdSBsaWtlIHRvIGRvIGFib3V0IGl0ID8gIFlvdXIgb3B0aW9ucyBhcmU6XG4iCisiICAgIFkgb3IgSSAgOiBpbnN0YWxsIHRoZSBwYWNrYWdlIG1haW50YWluZXIncyB2ZXJzaW9uXG4iCisiICAgIE4gb3IgTyAgOiBrZWVwIHlvdXIgY3VycmVudGx5LWluc3RhbGxlZCB2ZXJzaW9uXG4iCisiICAgICAgRCAgICAgOiBzaG93IHRoZSBkaWZmZXJlbmNlcyBiZXR3ZWVuIHRoZSB2ZXJzaW9uc1xuIgorIiAgICAgIFogICAgIDogc3RhcnQgYSBzaGVsbCB0byBleGFtaW5lIHRoZSBzaXR1YXRpb25cbiIKK21zZ3N0ciAiIgorIiAgIEt2YSB2aWwgZHUgZ2plcmEgbWVkIGRldD8gQWx0ZXJuYXRpdmEgZXI6XG4iCisiICAgIFkgZWxsZXIgSSAgOiBJbnN0YWxsZXIgcGFra2V2ZWRsaWtlaGFsZGFyZW4gc2luIHZlcnNqb24uXG4iCisiICAgIE4gZWxsZXIgTyA6IFRhIHZhcmUgcMOlIGRlbiB2ZXJzam9uZW4gc29tIGVyIGluc3RhbGxlcnQuXG4iCisiICAgICAgICBEICAgICA6IFZpcyBza2lsbmFkZW4gbWVsbG9tIHZlcnNqb25hbmUuXG4iCisiICAgICAgICBaICAgICA6IFNlbmQgZGVubmUgcHJvc2Vzc2VuIHRpbCBiYWtncnVubmVuIGZvciDDpSB1bmRlcnPDuGtqYSAiCisibsOmcmFyZS5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY1OQorIywgYy1mb3JtYXQKK21zZ2lkICIgVGhlIGRlZmF1bHQgYWN0aW9uIGlzIHRvIGtlZXAgeW91ciBjdXJyZW50IHZlcnNpb24uXG4iCittc2dzdHIgIiBTdGFuZGFyZGhhbmRsaW5nYSBlciDDpSB0YSB2YXJlIHDDpSBkZW4gdmVyc2pvbmVuIHNvbSBlciBpbnN0YWxsZXJ0LlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjYxCisjLCBjLWZvcm1hdAorbXNnaWQgIiBUaGUgZGVmYXVsdCBhY3Rpb24gaXMgdG8gaW5zdGFsbCB0aGUgbmV3IHZlcnNpb24uXG4iCittc2dzdHIgIiBTdGFuZGFyZGhhbmRsaW5nYSBlciDDpSBpbnN0YWxsZXJhIGRlbiBueWUgdmVyc2pvbmVuLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjY2Cittc2dpZCAiW2RlZmF1bHQ9Tl0iCittc2dzdHIgIltzdGFuZGFyZD1OXSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY2NworbXNnaWQgIltkZWZhdWx0PVldIgorbXNnc3RyICJbc3RhbmRhcmQ9WV0iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NjgKK21zZ2lkICJbbm8gZGVmYXVsdF0iCittc2dzdHIgIltpbmdhIHN0YW5kYXJkaGFuZGxpbmddIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjcxCittc2dpZCAiZXJyb3Igd3JpdGluZyB0byBzdGRlcnIsIGRpc2NvdmVyZWQgYmVmb3JlIGNvbmZmaWxlIHByb21wdCIKK21zZ3N0ciAiZmVpbCB2ZWQgc2tyaXZpbmcgdGlsIHN0YW5kYXJkZmVpbCwgb3BwZGFnYSBmw7hyIG9wcHNldHRzZmlscHJvbXB0IgorCisjOiBzcmMvY29uZmlndXJlLmM6NjgwCittc2dpZCAicmVhZCBlcnJvciBvbiBzdGRpbiBhdCBjb25mZmlsZSBwcm9tcHQiCittc2dzdHIgImxlc2VmZWlsIHDDpSBzdGFuZGFyZC1pbm4gdmVkIG9wcHNldHRzZmlscHJvbXB0IgorCisjOiBzcmMvY29uZmlndXJlLmM6NjgxCittc2dpZCAiRU9GIG9uIHN0ZGluIGF0IGNvbmZmaWxlIHByb21wdCIKK21zZ3N0ciAic2x1dHQgcMOlIGZpbCB2ZWQgc3RhbmRhcmQtaW5uIHZlZCBvcHBzZXR0c2ZpbHByb21wdCIKKworIzogc3JjL2RlcGNvbi5jOjE3NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXMgZGVwZW5kcyBvbiAlcyIKK21zZ3N0ciAiIGtyZXYgIgorCisjOiBzcmMvZGVwY29uLmM6MTc4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlcyBwcmUtZGVwZW5kcyBvbiAlcyIKK21zZ3N0ciAiIGbDuHIta3JldiAiCisKKyM6IHNyYy9kZXBjb24uYzoxODEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzIHJlY29tbWVuZHMgJXMiCittc2dzdHIgIiB0aWxyw6VyICIKKworIzogc3JjL2RlcGNvbi5jOjE4NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXMgc3VnZ2VzdHMgJXMiCittc2dzdHIgIiBmw7hyZXNsw6VyICIKKworIzogc3JjL2RlcGNvbi5jOjE4NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXMgYnJlYWtzICVzIgorbXNnc3RyICIlcyAodW5kZXJwcm9zZXNzKTogJXNcbiIKKworIzogc3JjL2RlcGNvbi5jOjE5MAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXMgY29uZmxpY3RzIHdpdGggJXMiCittc2dzdHIgIiBlciBpIGtvbmZsaWt0IG1lZCAiCisKKyM6IHNyYy9kZXBjb24uYzoxOTMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzIGVuaGFuY2VzICVzIgorbXNnc3RyICIgZm9yYmV0cmFyICIKKworIzogc3JjL2RlcGNvbi5jOjI5NgorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyB2aWwgdmVydGEgZmplcm5hLlxuIgorCisjOiBzcmMvZGVwY29uLmM6Mjk5CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHRvIGJlIGRlY29uZmlndXJlZC5cbiIKK21zZ3N0ciAiICBPcHBzZXR0ZXQgYXYgJS4yNTBzIHZpbCB2ZXJ0YSBmamVybmEuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdG8gYmUgaW5zdGFsbGVkLCBidXQgaXMgdmVyc2lvbiAlLjI1MHMuXG4iCittc2dzdHIgIiAgJS4yNTBzIHNrYWwgaW5zdGFsbGVyYXN0LCBtZW4gdmVyc2pvbmVuIGVyICUuMjUwcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjMxNAorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyBpbnN0YWxsZWQsIGJ1dCBpcyB2ZXJzaW9uICUuMjUwcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgZXIgaW5zdGFsbGVydCwgbWVuIHZlcnNqb25lbiBlciAlLjI1MHMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdW5wYWNrZWQsIGJ1dCBoYXMgbmV2ZXIgYmVlbiBjb25maWd1cmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyBlciBwYWtrYSB1dCwgbWVuIGVyIGFsZHJpIHNldHQgb3BwLlxuIgorCisjOiBzcmMvZGVwY29uLmM6MzM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHVucGFja2VkLCBidXQgaXMgdmVyc2lvbiAlLjI1MHMuXG4iCittc2dzdHIgIiAgJS4yNTBzIGVyIHBha2thIHV0LCBtZW4gdmVyc2pvbmVuIGVyICUuMjUwcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjM0MworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBsYXRlc3QgY29uZmlndXJlZCB2ZXJzaW9uIGlzICUuMjUwcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgc2lzdGUgb3Bwc2V0dGUgdmVyc2pvbiBlciAlLjI1MHMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozNTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgJXMuXG4iCittc2dzdHIgIiUuMjUwcyBlciAlcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjM4OAorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYnV0IGlzIHRvIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIHRpbGJ5ciAlLjI1MHMsIG1lbiBza2FsIGZqZXJuYXN0LlxuIgorCisjOiBzcmMvZGVwY29uLmM6MzkyCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBidXQgaXMgdG8gYmUgZGVjb25maWd1cmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyB0aWxieXIgJS4yNTBzLCBtZW4gb3Bwc2V0dGV0IHNrYWwgZmplcm5hc3QuXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0MDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGJ1dCBpcyAlcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgdGlsYnlyICUuMjUwcywgbWVuIGVyICVzLlxuIgorCisjOiBzcmMvZGVwY29uLmM6NDE1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIG5vdCBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIGVyIGlra2plIGluc3RhbGxlcnQuXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgKHZlcnNpb24gJS4yNTBzKSBpcyB0byBiZSBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzICh2ZXJzam9uICUuMjUwcykgdmlsIHZlcnRhIGluc3RhbGxlcnQuXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0NjgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzICh2ZXJzaW9uICUuMjUwcykgaXMgcHJlc2VudCBhbmQgJXMuXG4iCittc2dzdHIgIiAgJS4yNTBzICh2ZXJzam9uICUuMjUwcykgZXIgJXMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGFuZCBpcyB0byBiZSBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIHRpbGJ5ciAlLjI1MHMgb2cgc2thbCBpbnN0YWxsZXJhc3QuXG4iCisKKyM6IHNyYy9kZXBjb24uYzo1MzcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBhbmQgaXMgcHJlc2VudCBhbmQgJXMuXG4iCittc2dzdHIgIiAgJS4yNTBzIHRpbGJ5ciAlLjI1MHMgb2cgZXIgJXMuXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MAorIywgZnV6enkKK21zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IGRpdmVydGluZyBmaWxlcy4iCittc2dzdHIgIlNrcml2IMKrZHBrZy1zcGxpdCAtLWhlbHDCuyBmb3IgaGplbHAuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjYgc3JjL3N0YXRjbWQuYzo1NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6ODAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiAlcyB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICInIHZlcnNqb24gZm9yIHBha2tlYXJraXZtb3RvcmVuICIKKworIzogc3JjL2RpdmVydGNtZC5jOjcwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMTAgR3VpbGxlbSBKb3Zlci5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NzUgc3JjL21haW4uYzo2MyBzcmMvcXVlcnljbWQuYzo2MDMgc3JjL3N0YXRjbWQuYzo2NQorIzogc3JjL3RyaWdjbWQuYzo1NSBkcGtnLWRlYi9tYWluLmM6NTcgZHBrZy1zcGxpdC9tYWluLmM6NTEKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo4OQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgb3JcbiIKKyJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKK21zZ3N0ciAiIgorIkRldHRlIGVyIGZyaSBwcm9ncmFtdmFyZS4gRHUgZmlubiBrb3BpZXJpbmdzdmlsa8OlcmEgaVxuIgorIkdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbmNlIHZlcnNqb24gMiBlbGxlciBueWFyZS4gRGV0IGZpbnN0IElOR0VOIGdhcmFudGkuXG4iCisiU2rDpSDCq2Rwa2ctZGViIC0tbGljZW5jZcK7IGZvciBkZXRhbGphci5cbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjg3IHNyYy9tYWluLmM6ODEgc3JjL3F1ZXJ5Y21kLmM6NjE1IHNyYy9zdGF0Y21kLmM6NzcKKyM6IGRwa2ctZGViL21haW4uYzo2OSBkcGtnLXNwbGl0L21haW4uYzo2MyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6OTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSA8Y29tbWFuZD5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6OTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgWy0tYWRkXSA8ZmlsZT4gICAgICAgICAgIGFkZCBhIGRpdmVyc2lvbi5cbiIKKyIgIC0tcmVtb3ZlIDxmaWxlPiAgICAgICAgICByZW1vdmUgdGhlIGRpdmVyc2lvbi5cbiIKKyIgIC0tbGlzdCBbPGdsb2ItcGF0dGVybj5dICBzaG93IGZpbGUgZGl2ZXJzaW9ucy5cbiIKKyIgIC0tbGlzdHBhY2thZ2UgPGZpbGU+ICAgICBzaG93IHdoYXQgcGFja2FnZSBkaXZlcnRzIHRoZSBmaWxlLlxuIgorIiAgLS10cnVlbmFtZSA8ZmlsZT4gICAgICAgIHJldHVybiB0aGUgZGl2ZXJ0ZWQgZmlsZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MTAwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1wYWNrYWdlIDxwYWNrYWdlPiAgICAgIG5hbWUgb2YgdGhlIHBhY2thZ2Ugd2hvc2UgY29weSBvZiA8ZmlsZT4gd2lsbCAiCisibm90XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiZSBkaXZlcnRlZC5cbiIKKyIgIC0tbG9jYWwgICAgICAgICAgICAgICAgICBhbGwgcGFja2FnZXMnIHZlcnNpb25zIGFyZSBkaXZlcnRlZC5cbiIKKyIgIC0tZGl2ZXJ0IDxkaXZlcnQtdG8+ICAgICB0aGUgbmFtZSB1c2VkIGJ5IG90aGVyIHBhY2thZ2VzJyB2ZXJzaW9ucy5cbiIKKyIgIC0tcmVuYW1lICAgICAgICAgICAgICAgICBhY3R1YWxseSBtb3ZlIHRoZSBmaWxlIGFzaWRlIChvciBiYWNrKS5cbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICBzZXQgdGhlIGRpcmVjdG9yeSB3aXRoIHRoZSBkaXZlcnNpb25zIGZpbGUuXG4iCisiICAtLXRlc3QgICAgICAgICAgICAgICAgICAgZG9uJ3QgZG8gYW55dGhpbmcsIGp1c3QgZGVtb25zdHJhdGUuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgcXVpZXQgb3BlcmF0aW9uLCBtaW5pbWFsIG91dHB1dC5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiV2hlbiBhZGRpbmcsIGRlZmF1bHQgaXMgLS1sb2NhbCBhbmQgLS1kaXZlcnQgPG9yaWdpbmFsPi5kaXN0cmliLlxuIgorIldoZW4gcmVtb3ZpbmcsIC0tcGFja2FnZSBvciAtLWxvY2FsIGFuZCAtLWRpdmVydCBtdXN0IG1hdGNoIGlmIHNwZWNpZmllZC5cbiIKKyJQYWNrYWdlIHByZWluc3QvcG9zdHJtIHNjcmlwdHMgc2hvdWxkIGFsd2F5cyBzcGVjaWZ5IC0tcGFja2FnZSBhbmQgLS0iCisiZGl2ZXJ0LlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoxNjgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNoZWNraW5nICclcyciCittc2dzdHIgImZlaWwgdmVkIHNrcml2aW5nIGF2IMKrJXPCuyIKKworIzogc3JjL2RpdmVydGNtZC5jOjIwMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisicmVuYW1lIGludm9sdmVzIG92ZXJ3cml0aW5nIGAlcycgd2l0aFxuIgorIiAgZGlmZmVyZW50IGZpbGUgYCVzJywgbm90IGFsbG93ZWQiCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjIyMyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTM3MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBmaWxlICclcyciCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBvcG5hIGtqZWxkZWZpbGEgwqslLjI1MHPCuyIKKworIzogc3JjL2RpdmVydGNtZC5jOjIyNworbXNnaWQgImZpbGUgY29weSIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjM5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVuYW1lICclcycgdG8gJyVzJyIKK21zZ3N0ciAiZmFubiBpa2tqZSDCqyUuMjU1c8K7IChpIMKrJS4yNTVzwrspIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjUyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJyZW5hbWU6IHJlbW92ZSBkdXBsaWNhdGUgb2xkIGxpbmsgJyVzJyIKK21zZ3N0ciAidmVyZGllbiBmb3IgZmVsdGV0IMKrJXPCuyBmaW5zdCBtZWlyIGVubiDDqWluIGdvbmciCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyNjIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byBvcGVuIHNvdXJjZSBmaWxlIGAlLjI1MHMnIgorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgY29waWVkIHNvdXJjZSBmaWxlICclcyciCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBvcG5hIGtqZWxkZWZpbGEgwqslLjI1MHPCuyIKKworIzogc3JjL2RpdmVydGNtZC5jOjI4NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAibG9jYWwgZGl2ZXJzaW9uIG9mICVzIgorbXNnc3RyICJsb2thbHQgb21kaXJpZ2VydCIKKworIzogc3JjL2RpdmVydGNtZC5jOjI4NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAibG9jYWwgZGl2ZXJzaW9uIG9mICVzIHRvICVzIgorbXNnc3RyICJsb2thbHQgb21kaXJpZ2VydCIKKworIzogc3JjL2RpdmVydGNtZC5jOjI5MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZGl2ZXJzaW9uIGJ5ICVzIgorbXNnaWQgImRpdmVyc2lvbiBvZiAlcyBieSAlcyIKK21zZ3N0ciAib21kaXJpZ2VydCBtZWQgJXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyOTMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImRpdmVyc2lvbiBvZiAlcyB0byAlcyBieSAlcyIKK21zZ3N0ciAib21kaXJpZ2VydCBhdiAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjMwOQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZGl2ZXJzaW9uIGJ5ICVzIgorbXNnaWQgImFueSBkaXZlcnNpb24gb2YgJXMiCittc2dzdHIgIm9tZGlyaWdlcnQgbWVkICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MzExCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJhbnkgZGl2ZXJzaW9uIG9mICVzIHRvICVzIgorbXNnc3RyICJvbWRpcmlnZXJ0IGF2ICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MzU3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgY3JlYXRlIG5ldyAlcyBmaWxlIgorbXNnc3RyICJrYW4gaWtramUgb3BuYSBHUEwtZmlsIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mzc1IHNyYy9zdGF0Y21kLmM6MjE1IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNDA0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggZmlsZSAnJXMnIgorbXNnc3RyICJrbGFydGUgaWtramUgdMO4bW1hIGkgdnNucHJpbnRmIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MzgyCisjLCBmdXp6eQorbXNnaWQgImVycm9yIHJlbW92aW5nIG9sZCBkaXZlcnNpb25zLW9sZCIKK21zZ3N0ciAiZmVpbCB2ZWQgb3BwcmV0dGluZyBhdiBlaW5pbmcgwqslLjI1NXPCuyIKKworIzogc3JjL2RpdmVydGNtZC5jOjM4NAorIywgZnV6enkKK21zZ2lkICJlcnJvciBjcmVhdGluZyBuZXcgZGl2ZXJzaW9ucy1vbGQiCittc2dzdHIgImZlaWwgdmVkIG9wcHJldHRpbmcgYXYgZWluaW5nIMKrJS4yNTVzwrsiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozODYKKyMsIGZ1enp5Cittc2dpZCAiZXJyb3IgaW5zdGFsbGluZyBuZXcgZGl2ZXJzaW9ucyIKK21zZ3N0ciAiZmVpbCB2ZWQgb3BwcmV0dGluZyBhdiBlaW5pbmcgwqslLjI1NXPCuyIKKworIzogc3JjL2RpdmVydGNtZC5jOjQwNiBzcmMvZGl2ZXJ0Y21kLmM6NTAzIHNyYy9kaXZlcnRjbWQuYzo2MTAKKyM6IHNyYy9kaXZlcnRjbWQuYzo2MzAgc3JjL3N0YXRjbWQuYzoyOTAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSBzaW5nbGUgYXJndW1lbnQiCittc2dzdHIgIi0tYnVpbGQga3JldiBlaW4ga2F0YWxvZ3BhcmFtZXRlciIKKworIzogc3JjL2RpdmVydGNtZC5jOjQwOSBzcmMvZGl2ZXJ0Y21kLmM6NDMwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmaWxlbmFtZSBcIiVzXCIgaXMgbm90IGFic29sdXRlIgorbXNnc3RyICJmaW5uIGlra2plIG9wcHNldHRzZmlsYSDCqyUuMjUwc8K7IgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDExIHNyYy9zdGF0Y21kLmM6MjQ5Cittc2dpZCAiZmlsZSBtYXkgbm90IGNvbnRhaW4gbmV3bGluZXMiCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjQxOAorIywgZnV6enkKK21zZ2lkICJDYW5ub3QgZGl2ZXJ0IGRpcmVjdG9yaWVzIgorbXNnc3RyICJrbGFydGUgaWtramUgbGVzYSBpbmZva2F0YWxvZ2VuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDMzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgZGl2ZXJ0IGZpbGUgJyVzJyB0byBpdHNlbGYiCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBsZXNhIGluZm9rYXRhbG9nZW4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0NTMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIkxlYXZpbmcgJyVzJ1xuIgorbXNnc3RyICJmZWlsIHZlZCBza3JpdmluZyBhdiDCqyVzwrsiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBjbGFzaGVzIHdpdGggYCVzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDgxCisjLCBjLWZvcm1hdAorbXNnaWQgIkFkZGluZyAnJXMnXG4iCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjUxMAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIGlzIHRvIGJlIHJlbW92ZWQuXG4iCittc2dpZCAiTm8gZGl2ZXJzaW9uICclcycsIG5vbmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiIHZpbCBibGkgZmplcm5hLlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTI1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJtaXNtYXRjaCBvbiBkaXZlcnQtdG9cbiIKKyIgIHdoZW4gcmVtb3ZpbmcgYCVzJ1xuIgorIiAgZm91bmQgYCVzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJtaXNtYXRjaCBvbiBwYWNrYWdlXG4iCisiICB3aGVuIHJlbW92aW5nIGAlcydcbiIKKyIgIGZvdW5kIGAlcyciCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjUzOQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiUmVtb3ZpbmcgJyVzJ1xuIgorbXNnc3RyICJGamVybmFyICVzIC4uLlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjU3CisjLCBmdXp6eQorbXNnaWQgInBhY2thZ2UgbWF5IG5vdCBjb250YWluIG5ld2xpbmVzIgorbXNnc3RyICJQYWtrZW4gwqslc8K7IGlubmVoZWxkIGluZ2VuIGZpbGVyICghKVxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjY2Cittc2dpZCAiZGl2ZXJ0LXRvIG1heSBub3QgY29udGFpbiBuZXdsaW5lcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzo2NAorbXNnaWQgImZhaWxlZCB0byBvcGVuIGRpdmVyc2lvbnMgZmlsZSIKK21zZ3N0ciAia2xhcnRlIGlra2plIG9wbmEgb21kaXJpZ2VyaW5nc2ZpbCIKKworIzogc3JjL2RpdmVydGRiLmM6NzEKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgcHJldmlvdXMgZGl2ZXJzaW9ucyBmaWxlIgorbXNnc3RyICJrbGFydGUgaWtramUgdXRmw7hyYSDCq2ZzdGF0wrsgcMOlIGRlbiBmw7hycmUgb21kaXJpZ2VyaW5nc2ZpbGEiCisKKyM6IHNyYy9kaXZlcnRkYi5jOjczCittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGRpdmVyc2lvbnMgZmlsZSIKK21zZ3N0ciAia2xhcnRlIGlra2plIHV0ZsO4cmEgwqtmc3RhdMK7IHDDpSBvbWRpcmlnZXJpbmdzZmlsYSIKKworIzogc3JjL2RpdmVydGRiLmM6MTEzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZsaWN0aW5nIGRpdmVyc2lvbnMgaW52b2x2aW5nIGAlLjI1MHMnIG9yIGAlLjI1MHMnIgorbXNnc3RyICIiCisib21kaXJpZ2VyaW5nYXIgaSBrb25mbGlrdCBtZWQga3ZhcmFuZHJlLCBpbnZvbHZlcmVyIMKrJS4yNTBzwrsgZWxsZXIgwqslLjI1MHPCuyIKKworIzogc3JjL2VucXVpcnkuYzo3MworbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBpbiBhIG1lc3MgZHVlIHRvIHNlcmlvdXMgcHJvYmxlbXMgZHVyaW5nXG4iCisiaW5zdGFsbGF0aW9uLiAgVGhleSBtdXN0IGJlIHJlaW5zdGFsbGVkIGZvciB0aGVtIChhbmQgYW55IHBhY2thZ2VzXG4iCisidGhhdCBkZXBlbmQgb24gdGhlbSkgdG8gZnVuY3Rpb24gcHJvcGVybHk6XG4iCittc2dzdHIgIiIKKyJEZWkgZsO4bGdqYW5kZSBwYWtrYW5lIGVyIGkgdW9yZGVuIGdydW5uYSBhbHZvcmxlZ2UgcHJvYmxlbSB1bmRlclxuIgorImluc3RhbGxhc2pvbmVuLiBEZWkgbcOlIGluc3RhbGxlcmFzdCBww6Ugbnl0dCBmb3IgYXQgZGVpIChvZyBldmVudHVlbGxlICIKKyJwYWtrYXJcbiIKKyJzb20gZXIgYXZoZW5naWdlIGF2IGRlaSkgc2thbCB2ZXJrYSBza2lra2VsZWc6XG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6ODAKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBoYXZlIGJlZW4gdW5wYWNrZWQgYnV0IG5vdCB5ZXQgY29uZmlndXJlZC5cbiIKKyJUaGV5IG11c3QgYmUgY29uZmlndXJlZCB1c2luZyBkcGtnIC0tY29uZmlndXJlIG9yIHRoZSBjb25maWd1cmVcbiIKKyJtZW51IG9wdGlvbiBpbiBkc2VsZWN0IGZvciB0aGVtIHRvIHdvcms6XG4iCittc2dzdHIgIiIKKyJEZWkgZsO4bGdqYW5kZSBwYWtrYW5lIGVyIHBha2thIHV0LCBtZW4gZXIgaWtramUgc2V0dGUgb3BwIGVubm8uXG4iCisiRGVpIG3DpSBzZXRqYXN0IG9wcCBtZWQgwqtkcGtnIC0tY29uZmlndXJlwrsgZWxsZXIgZnLDpSBvcHBzZXR0c21lbnllblxuIgorImkgZHNlbGVjdCBmb3IgYXQgZGVpIHNrYWwgdmVya2E6XG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6ODcKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgb25seSBoYWxmIGNvbmZpZ3VyZWQsIHByb2JhYmx5IGR1ZSB0byBwcm9ibGVtc1xuIgorImNvbmZpZ3VyaW5nIHRoZW0gdGhlIGZpcnN0IHRpbWUuICBUaGUgY29uZmlndXJhdGlvbiBzaG91bGQgYmUgcmV0cmllZCB1c2luZ1xuIgorImRwa2cgLS1jb25maWd1cmUgPHBhY2thZ2U+IG9yIHRoZSBjb25maWd1cmUgbWVudSBvcHRpb24gaW4gZHNlbGVjdDpcbiIKK21zZ3N0ciAiIgorIkRlaSBmw7hsZ2phbmRlIHBha2thbmUgZXIgYmVycmUgaGFsdnZlZ3Mgb3Bwc2V0dGUsIHNhbm5zeW5sZWd2aXMgZm9yZGlcbiIKKyJkZXQgb3Bwc3RvZCBwcm9ibGVtIGbDuHJzdGUgZ29uZ2VuIGRlaSB2YXJ0IHNldHRlIG9wcC4gUGFra2FuZSBiw7hyIHNldGphc3RcbiIKKyJvcHAgcMOlIG55dHQgbWVkIMKrZHBrZyAtLWNvbmZpZ3VyZSA8cGFra2U+wrsgZWxsZXIgb3Bwc2V0dHNtZW55ZW4gaSBkc2VsZWN0LlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjk0Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgYXJlIG9ubHkgaGFsZiBpbnN0YWxsZWQsIGR1ZSB0byBwcm9ibGVtcyBkdXJpbmdcbiIKKyJpbnN0YWxsYXRpb24uICBUaGUgaW5zdGFsbGF0aW9uIGNhbiBwcm9iYWJseSBiZSBjb21wbGV0ZWQgYnkgcmV0cnlpbmcgaXQ7XG4iCisidGhlIHBhY2thZ2VzIGNhbiBiZSByZW1vdmVkIHVzaW5nIGRzZWxlY3Qgb3IgZHBrZyAtLXJlbW92ZTpcbiIKK21zZ3N0ciAiIgorIkRlaSBmw7hsZ2phbmRlIHBha2thbmUgZXIgYmVycmUgaGFsdnZlZ3MgaW5zdGFsbGVydGUsIGZvcmRpIGRldCBvcHBzdG9kXG4iCisicHJvYmxlbSB1bmRlciBpbnN0YWxsYXNqb25lbi4gSW5zdGFsbGFzam9uZW4ga2FuIHNhbm5zeW5sZWd2aXMgIgorImdqZW5ub21mw7hyYXN0XG4iCisidmVkIMOlIHByw7h2YSBww6Ugbnl0dC4gUGFra2FuZSBrYW4gZmplcm5hc3QgbWVkIGRzZWxlY3QgZWxsZXIgwqtkcGtnIC0tIgorInJlbW92ZcK7OlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjEwMQorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBhd2FpdGluZyBwcm9jZXNzaW5nIG9mIHRyaWdnZXJzIHRoYXQgdGhleVxuIgorImhhdmUgYWN0aXZhdGVkIGluIG90aGVyIHBhY2thZ2VzLiAgVGhpcyBwcm9jZXNzaW5nIGNhbiBiZSByZXF1ZXN0ZWQgdXNpbmdcbiIKKyJkc2VsZWN0IG9yIGRwa2cgLS1jb25maWd1cmUgLS1wZW5kaW5nIChvciBkcGtnIC0tdHJpZ2dlcnMtb25seSk6XG4iCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzoxMDgKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBoYXZlIGJlZW4gdHJpZ2dlcmVkLCBidXQgdGhlIHRyaWdnZXIgcHJvY2Vzc2luZ1xuIgorImhhcyBub3QgeWV0IGJlZW4gZG9uZS4gIFRyaWdnZXIgcHJvY2Vzc2luZyBjYW4gYmUgcmVxdWVzdGVkIHVzaW5nXG4iCisiZHNlbGVjdCBvciBkcGtnIC0tY29uZmlndXJlIC0tcGVuZGluZyAob3IgZHBrZyAtLXRyaWdnZXJzLW9ubHkpOlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTM3IHNyYy9lbnF1aXJ5LmM6MjExIHNyYy9lbnF1aXJ5LmM6MjkyIHNyYy9lbnF1aXJ5LmM6MzczCisjOiBzcmMvZW5xdWlyeS5jOjQ2MCBzcmMvc2VsZWN0LmM6OTggc3JjL3NlbGVjdC5jOjE2NCBzcmMvdHJpZ2NtZC5jOjE5OQorIzogc3JjL3VwZGF0ZS5jOjQ4IHNyYy91cGRhdGUuYzoxMTMgZHBrZy1zcGxpdC9xdWV1ZS5jOjIzMgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIHRha2VzIG5vIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS0lcyB0ZWsgaW5nZW4gcGFyYW1ldHJhciIKKworIzogc3JjL2VucXVpcnkuYzoxNTIKK21zZ2lkICIiCisiQW5vdGhlciBwcm9jZXNzIGhhcyBsb2NrZWQgdGhlIGRhdGFiYXNlIGZvciB3cml0aW5nLCBhbmQgbWlnaHQgY3VycmVudGx5IGJlXG4iCisibW9kaWZ5aW5nIGl0LCBzb21lIG9mIHRoZSBmb2xsb3dpbmcgcHJvYmxlbXMgbWlnaHQganVzdCBiZSBkdWUgdG8gdGhhdC5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZW5xdWlyeS5jOjE5MQorIywgZnV6enkKKyN8IG1zZ2lkICI8dW5rbm93bj4iCittc2djdHh0ICJzZWN0aW9uIgorbXNnaWQgIjx1bmtub3duPiIKK21zZ3N0ciAiPHVramVuZD4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MjUxCisjLCBjLWZvcm1hdAorbXNnaWQgIiAlZCBpbiAlczogIgorbXNnc3RyICIgJWQgaSAlczogIgorCisjOiBzcmMvZW5xdWlyeS5jOjI2NgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiICVkIHBhY2thZ2VzLCBmcm9tIHRoZSBmb2xsb3dpbmcgc2VjdGlvbnM6IgorbXNnaWQgIiAlZCBwYWNrYWdlLCBmcm9tIHRoZSBmb2xsb3dpbmcgc2VjdGlvbjoiCittc2dpZF9wbHVyYWwgIiAlZCBwYWNrYWdlcywgZnJvbSB0aGUgZm9sbG93aW5nIHNlY3Rpb25zOiIKK21zZ3N0clswXSAiICVkIHBha2thciBmcsOlIGbDuGxnamFuZGUga2F0ZWdvcmlhcjoiCittc2dzdHJbMV0gIiAlZCBwYWtrYXIgZnLDpSBmw7hsZ2phbmRlIGthdGVnb3JpYXI6IgorCisjOiBzcmMvZW5xdWlyeS5jOjMwNQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIlZlcnNpb24gb2YgZHBrZyB3aXRoIHdvcmtpbmcgJXMgc3VwcG9ydCBub3QgeWV0IGNvbmZpZ3VyZWQuXG4iCisiIFBsZWFzZSB1c2UgJ2Rwa2cgLS1jb25maWd1cmUgZHBrZycsIGFuZCB0aGVuIHRyeSBhZ2Fpbi5cbiIKK21zZ3N0ciAiIgorIlZlcnNqb25lbiBhdiBkcGtnIG1lZCBmdW5nZXJhbmRlIGVwb2tlc3TDuHR0ZSBlciBpa2tqZSBzZXR0IG9wcCBlbm5vLlxuIgorIiBLw7h5ciDCq2Rwa2cgLS1jb25maWd1cmUgZHBrZ8K7IG9nIHByw7h2IHDDpSBueXR0LlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjMxMAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZHBrZyBub3QgcmVjb3JkZWQgYXMgaW5zdGFsbGVkLCBjYW5ub3QgY2hlY2sgZm9yICVzIHN1cHBvcnQhXG4iCittc2dzdHIgIiIKKyJkcGtnIGVyIGlra2plIHJlZ2lzdHJlcnQgc29tIGluc3RhbGxlcnQuIEthbiBpa2tqZSB1bmRlcnPDuGtqYSBlcG9rZXN0w7h0dGUuXG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzIxCittc2dpZCAiUHJlLURlcGVuZHMgZmllbGQiCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzozMjkKK21zZ2lkICJlcG9jaCIKK21zZ3N0ciAiIgorCisjOiBzcmMvZW5xdWlyeS5jOjMzNworbXNnaWQgImxvbmcgZmlsZW5hbWVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzQ2Cittc2dpZCAibXVsdGlwbGUgQ29uZmxpY3RzIGFuZCBSZXBsYWNlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZW5xdWlyeS5jOjQzNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogY2Fubm90IHNlZSBob3cgdG8gc2F0aXNmeSBwcmUtZGVwZW5kZW5jeTpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorImRwa2c6IEZpbm4gaWtramUgdXQga29ybGVpcyBmw7hya3JhdmV0IGthbiBvcHBmeWxsYXN0OlxuIgorIiAlc1xuIgorCisjOiBzcmMvZW5xdWlyeS5jOjQzNQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc2F0aXNmeSBwcmUtZGVwZW5kZW5jaWVzIGZvciAlLjI1MHMgKHdhbnRlZCBkdWUgdG8gJS4yNTBzKSIKK21zZ3N0ciAia2FuIGlra2plIG9wcGZ5bGxhIGbDuHJrcmF2IGZvciAlLjI1MHMgKMO4bnNrdCBncnVubmEgJS4yNTBzKSIKKworIzogc3JjL2VucXVpcnkuYzo0NzIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIm9ic29sZXRlIG9wdGlvbiAnLS0lcycsIHBsZWFzZSB1c2UgJy0tJXMnIGluc3RlYWQuIgorbXNnc3RyICLDhXR2YXJpbmc6IEZvcmVsZGEgdmFsIMKrJXPCu1xuIgorCisjOiBzcmMvZW5xdWlyeS5jOjUxOQorbXNnaWQgIiIKKyItLWNvbXBhcmUtdmVyc2lvbnMgdGFrZXMgdGhyZWUgYXJndW1lbnRzOiA8dmVyc2lvbj4gPHJlbGF0aW9uPiA8dmVyc2lvbj4iCittc2dzdHIgIi0tY29tcGFyZS12ZXJzaW9ucyB0ZWsgdHJlIGFyZ3VtZW50OiA8dmVyc2pvbj4gPHJlbGFzam9uPiA8dmVyc2pvbj4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6NTI0Cittc2dpZCAiLS1jb21wYXJlLXZlcnNpb25zIGJhZCByZWxhdGlvbiIKK21zZ3N0ciAiLS1jb21wYXJlLXZlcnNpb25zIHVneWxkaWcgcmVsYXNqb24iCisKKyM6IHNyYy9lbnF1aXJ5LmM6NTI5IHNyYy9lbnF1aXJ5LmM6NTMxIHNyYy9lbnF1aXJ5LmM6NTQwIHNyYy9lbnF1aXJ5LmM6NTQyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ2ZXJzaW9uICclcycgaGFzIGJhZCBzeW50YXg6ICVzIgorbXNnc3RyICJ2ZXJzam9uIGEgaGFyIHVneWxkaWcgc3ludGFrczogJXNcbiIKKworIzogc3JjL2Vycm9ycy5jOjYwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogZXJyb3IgcHJvY2Vzc2luZyAlcyAoLS0lcyk6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKyIlczogRmVpbCB2ZWQgYmVoYW5kbGluZyBhdiAlcyAoLS0lcyk6XG4iCisiICVzXG4iCisKKyM6IHNyYy9lcnJvcnMuYzo2OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgImRwa2c6IGZhaWxlZCB0byBhbGxvY2F0ZSBtZW1vcnkgZm9yIG5ldyBlbnRyeSBpbiBsaXN0IG9mIGZhaWxlZCBwYWNrYWdlcy4iCittc2dpZCAiIgorIiVzOiBmYWlsZWQgdG8gYWxsb2NhdGUgbWVtb3J5IGZvciBuZXcgZW50cnkgaW4gbGlzdCBvZiBmYWlsZWQgcGFja2FnZXM6ICVzIgorbXNnc3RyICIiCisiZHBrZzogS2xhcnRlIGlra2plIHRpbGRlbGEgbWlubmUgZm9yIG55IG9wcGbDuHJpbmcgaSBsaXN0YSBvdmVyIG1pc2x1a2thICIKKyJwYWtrYXIuIgorCisjOiBzcmMvZXJyb3JzLmM6NzkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImRwa2c6IHRvbyBtYW55IGVycm9ycywgc3RvcHBpbmdcbiIKK21zZ2lkICIlczogdG9vIG1hbnkgZXJyb3JzLCBzdG9wcGluZ1xuIgorbXNnc3RyICJkcGtnOiBGb3IgbWFuZ2UgZmVpbCwgc3RvcHBhclxuIgorCisjOiBzcmMvZXJyb3JzLmM6ODcKK21zZ2lkICJFcnJvcnMgd2VyZSBlbmNvdW50ZXJlZCB3aGlsZSBwcm9jZXNzaW5nOlxuIgorbXNnc3RyICJEZXQgb3Bwc3RvZCBmZWlsIHZlZCBiZWhhbmRsaW5nYSBhdjpcbiIKKworIzogc3JjL2Vycm9ycy5jOjk0Cittc2dpZCAiUHJvY2Vzc2luZyB3YXMgaGFsdGVkIGJlY2F1c2UgdGhlcmUgd2VyZSB0b28gbWFueSBlcnJvcnMuXG4iCittc2dzdHIgIkJlaGFuZGxpbmdhIHZhcnQgc3RvcHBhIHDDpSBncnVubiBhdiBmb3IgbWFuZ2UgZmVpbC5cbiIKKworIzogc3JjL2Vycm9ycy5jOjEwNQorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlICVzIHdhcyBvbiBob2xkLCBwcm9jZXNzaW5nIGl0IGFueXdheSBhcyB5b3UgcmVxdWVzdGVkXG4iCittc2dzdHIgIiIKKyJQYWtrZW4gJXMgdmFyIGhhbGRlbiB0aWxiYWtlLCBtZW4gYmxpciBiZWhhbmRsYSBsaWtldmVsIHNpZGFuIGR1IMO4bnNramVyICIKKyJkZXRcbiIKKworIzogc3JjL2Vycm9ycy5jOjEwOQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiUGFja2FnZSAlcyBpcyBvbiBob2xkLCBub3QgdG91Y2hpbmcgaXQuICBVc2UgLS1mb3JjZS1ob2xkIHRvIG92ZXJyaWRlLlxuIgorbXNnc3RyICIiCisiUGFra2VuICVzIGVyIGhhbGRlbiB0aWxiYWtlLCBvZyB2ZXJ0IGlra2plIHLDuHJ0LiBCcnVrIC0tZm9yY2UtaG9sZCBmb3Igw6UgIgorInR2aW5nYSBnamVubm9tIGJlaGFuZGxpbmcuXG4iCisKKyM6IHNyYy9lcnJvcnMuYzoxMTkKKyMsIGZ1enp5Cittc2dpZCAib3ZlcnJpZGluZyBwcm9ibGVtIGJlY2F1c2UgLS1mb3JjZSBlbmFibGVkOiIKK21zZ3N0ciAiIgorImRwa2cgLSDDhXR2YXJpbmcsIG92ZXJzdHlyZXIgcHJvYmxlbWV0IGZvcmRpIC0tZm9yY2UgZXIgc2zDpXR0IHDDpTpcbiIKKyIgIgorCisjOiBzcmMvZmlsZXNkYi5jOjMwNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcyciCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBvcG5hIGZpbGxpc3RlZmlsYSBmb3IgcGFra2VuIMKrJS4yNTBzwrsiCisKKyM6IHNyYy9maWxlc2RiLmM6MzExCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlIGAlLjI1MHMnIG1pc3NpbmcsIGFzc3VtaW5nIHBhY2thZ2UgaGFzIG5vIGZpbGVzICIKKyJjdXJyZW50bHkgaW5zdGFsbGVkLiIKK21zZ3N0ciAiIgorImRwa2c6IEFsdm9ybGVnIMOldHZhcmluZzogRmlsbGlzdGVmaWxhIGZvciBwYWtrZW4gwqslLjI1MHPCuyBtYW5nbGFyLiBHw6VyIHV0ICIKKyJmcsOlIGF0IHBha2tlbiBpa2tqZSBoYXIgbm9rb24gZmlsZXIgaW5zdGFsbGVydC5cbiIKKworIzogc3JjL2ZpbGVzZGIuYzozMjIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAnJS4yNTBzJyIKK21zZ3N0ciAia2xhcnRlIGlra2plIG9wbmEgZmlsbGlzdGVmaWxhIGZvciBwYWtrZW4gwqslLjI1MHPCuyIKKworIzogc3JjL2ZpbGVzZGIuYzozMzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGVzIGxpc3QgZm9yIHBhY2thZ2UgYCUuMjUwcyciCittc2dpZCAicmVhZGluZyBmaWxlcyBsaXN0IGZvciBwYWNrYWdlICclLjI1MHMnIgorbXNnc3RyICJmaWxsaXN0ZSBmb3IgcGFra2VuIMKrJS4yNTBzwrsiCisKKyM6IHNyYy9maWxlc2RiLmM6MzM2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJyUuMjUwcycgaXMgbWlzc2luZyBmaW5hbCBuZXdsaW5lIgorbXNnc3RyICJmaWxsaXN0ZWZpbGEgZm9yIHBha2tlbiDCqyUuMjUwc8K7IGlubmVoZWxkIGVpdCB0b210IGZpbG5hbW4iCisKKyM6IHNyYy9maWxlc2RiLmM6MzQ0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSBgJS4yNTBzJyBjb250YWlucyBlbXB0eSBmaWxlbmFtZSIKK21zZ3N0ciAiZmlsbGlzdGVmaWxhIGZvciBwYWtrZW4gwqslLjI1MHPCuyBpbm5laGVsZCBlaXQgdG9tdCBmaWxuYW1uIgorCisjOiBzcmMvZmlsZXNkYi5jOjM1MgorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSBgJS4yNTBzJyIKK21zZ3N0ciAiZmVpbCB2ZWQgbHVra2luZyBhdiBmaWxsaXN0ZWZpbGEgZm9yIHBha2tlbiDCqyUuMjUwc8K7IgorCisjOiBzcmMvZmlsZXNkYi5jOjQ2MgorbXNnaWQgIihSZWFkaW5nIGRhdGFiYXNlIC4uLiAiCittc2dzdHIgIihMZXMgZGF0YWJhc2UgLi4uICIKKworIzogc3JjL2ZpbGVzZGIuYzo0ODMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiVkIGZpbGVzIGFuZCBkaXJlY3RvcmllcyBjdXJyZW50bHkgaW5zdGFsbGVkLilcbiIKK21zZ2lkICIlZCBmaWxlIG9yIGRpcmVjdG9yeSBjdXJyZW50bHkgaW5zdGFsbGVkLilcbiIKK21zZ2lkX3BsdXJhbCAiJWQgZmlsZXMgYW5kIGRpcmVjdG9yaWVzIGN1cnJlbnRseSBpbnN0YWxsZWQuKVxuIgorbXNnc3RyWzBdICIlZCBmaWxlciBvZyBrYXRhbG9nYXIgZXIgaW5zdGFsbGVydGUuKVxuIgorbXNnc3RyWzFdICIlZCBmaWxlciBvZyBrYXRhbG9nYXIgZXIgaW5zdGFsbGVydGUuKVxuIgorCisjOiBzcmMvZmlsZXNkYi5jOjUxNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICJrbGFydGUgaWtramUgbGFnYSBvcHBkYXRlcnQgZmlsbGlzdGVmaWwgZm9yIHBha2tlbiAlcyIKKworIzogc3JjL2ZpbGVzZGIuYzo1MjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIHRvIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICJrbGFydGUgaWtramUgc2tyaXZhIHRpbCBvcHBkYXRlcnQgZmlsbGlzdGVmaWwgZm9yIHBha2tlbiAlcyIKKworIzogc3JjL2ZpbGVzZGIuYzo1MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZsdXNoIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICJrbGFydGUgaWtramUgdMO4bW1hIG9wcGRhdGVydCBmaWxsaXN0ZWZpbCBmb3IgcGFra2VuICVzIgorCisjOiBzcmMvZmlsZXNkYi5jOjUzMAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gc3luYyB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAia2xhcnRlIGlra2plIHN5bmtyb25pc2VyYSBvcHBkYXRlcnQgZmlsbGlzdGVmaWwgZm9yIHBha2tlbiAlcyIKKworIzogc3JjL2ZpbGVzZGIuYzo1MzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNsb3NlIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICJrbGFydGUgaWtramUgbHVra2Egb3BwZGF0ZXJ0IGZpbGxpc3RlZmlsIGZvciBwYWtrZW4gJXMiCisKKyM6IHNyYy9maWxlc2RiLmM6NTM1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBpbnN0YWxsIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICJrbGFydGUgaWtramUgaW5zdGFsbGVyYSBvcHBkYXRlcnQgZmlsbGlzdGVmaWwgZm9yIHBha2tlbiAlcyIKKworIzogc3JjL2hlbHAuYzo0OAorbXNnaWQgIm5vdCBpbnN0YWxsZWQiCittc2dzdHIgImlra2plIGluc3RhbGxlcnQiCisKKyM6IHNyYy9oZWxwLmM6NDkKK21zZ2lkICJub3QgaW5zdGFsbGVkIGJ1dCBjb25maWdzIHJlbWFpbiIKK21zZ3N0ciAiaWtramUgaW5zdGFsbGVydCwgbWVuIG9wcHNldHRldCBsaWdnIGlubmUiCisKKyM6IHNyYy9oZWxwLmM6NTAKKyMsIGZ1enp5Cittc2dpZCAiYnJva2VuIGR1ZSB0byBmYWlsZWQgcmVtb3ZhbCBvciBpbnN0YWxsYXRpb24iCittc2dzdHIgIsO4eWRlbGFnZCBww6UgZ3J1bm4gYXYgbWlzbHVra2EgZmplcm5pbmciCisKKyM6IHNyYy9oZWxwLmM6NTEKK21zZ2lkICJ1bnBhY2tlZCBidXQgbm90IGNvbmZpZ3VyZWQiCittc2dzdHIgInBha2thIHV0LCBtZW4gaWtramUgc2V0dCBvcHAiCisKKyM6IHNyYy9oZWxwLmM6NTIKK21zZ2lkICJicm9rZW4gZHVlIHRvIHBvc3RpbnN0IGZhaWx1cmUiCittc2dzdHIgIsO4eWRlbGFnZCBww6UgZ3J1bm4gYXYgZXR0ZXJpbnN0YWxsYXNqb25zZmVpbCIKKworIzogc3JjL2hlbHAuYzo1MworbXNnaWQgImF3YWl0aW5nIHRyaWdnZXIgcHJvY2Vzc2luZyBieSBhbm90aGVyIHBhY2thZ2UiCittc2dzdHIgIiIKKworIzogc3JjL2hlbHAuYzo1NAorbXNnaWQgInRyaWdnZXJlZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvaGVscC5jOjU1Cittc2dpZCAiaW5zdGFsbGVkIgorbXNnc3RyICJpbnN0YWxsZXJ0IgorCisjOiBzcmMvaGVscC5jOjEwNworIywgZnV6enkKK21zZ2lkICJQQVRIIGlzIG5vdCBzZXQuIgorbXNnc3RyICJkcGtnIC0gZmVpbDogUEFUSCBlciBpa2tqZSBzZXR0LlxuIgorCisjOiBzcmMvaGVscC5jOjEyOQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS4iCittc2dzdHIgImRwa2c6IEZhbm4gaWtramUgwqslc8K7IGkgUEFUSC5cbiIKKworIzogc3JjL2hlbHAuYzoxMzgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlZCBleHBlY3RlZCBwcm9ncmFtIG5vdCBmb3VuZCBpbiBQQVRIIG9yIG5vdCBleGVjdXRhYmxlLlxuIgorIiVzIgorbXNnaWRfcGx1cmFsICIiCisiJWQgZXhwZWN0ZWQgcHJvZ3JhbXMgbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuXG4iCisiJXMiCittc2dzdHJbMF0gImRwa2c6IEZhbm4gaWtramUgwqslc8K7IGkgUEFUSC5cbiIKK21zZ3N0clsxXSAiZHBrZzogRmFubiBpa2tqZSDCqyVzwrsgaSBQQVRILlxuIgorCisjOiBzcmMvaGVscC5jOjE0MQorIywgZnV6enkKK21zZ2lkICIiCisiTm90ZTogcm9vdCdzIFBBVEggc2hvdWxkIHVzdWFsbHkgY29udGFpbiAvdXNyL2xvY2FsL3NiaW4sIC91c3Ivc2JpbiBhbmQgLyIKKyJzYmluLiIKK21zZ3N0ciAiIgorIiVkIGZvcnZlbnRhIHByb2dyYW0gdmFydCBpa2tqZSBmdW5uZSBpIHPDuGtqZXN0aWdlbiAoUEFUSCkuXG4iCisiTkI6IEZvciByb290IGLDuHIgUEFUSCBpbm5laGFsZGEgL3Vzci9sb2NhbC9zYmluLCAvdXNyL3NiaW4gb2cgL3NiaW4uIgorCisjOiBzcmMvaGVscC5jOjE4OAorbXNnaWQgImFkbWluZGlyIG11c3QgYmUgaW5zaWRlIGluc3RkaXIgZm9yIGRwa2cgdG8gd29yayBwcm9wZXJseSIKK21zZ3N0ciAiIgorCisjOiBzcmMvaGVscC5jOjE5MCBzcmMvbWFpbi5jOjc0NworIywgZnV6enkKK21zZ2lkICJ1bmFibGUgdG8gc2V0ZW52IGZvciBzdWJwcm9jZXNzZXMiCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBmw6Ugc3RhdHVzIGkgdnNucHJpbnRmIgorCisjOiBzcmMvaGVscC5jOjE5MgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2hyb290IHRvIGAlLjI1MHMnIgorbXNnc3RyICJrbGFydGUgaWtramUgc2tpZnRhIGZpbHJvdCB0aWwgwqslLjI1MHPCuyIKKworIzogc3JjL2hlbHAuYzoxOTQgZHBrZy1kZWIvYnVpbGQuYzo0NTUgZHBrZy1kZWIvYnVpbGQuYzo0NTcKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTM2IGRwa2ctZGViL2J1aWxkLmM6NTU4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byBgJS4yNTVzJyIKK21zZ3N0ciAia2xhcnRlIGlra2plIHNraWZ0YSBrYXRhbG9nIHRpbCDCqyUuMjU1c8K7IgorCisjOiBzcmMvaGVscC5jOjI1NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IGV4ZWN1dGUgcGVybWlzc2lvbnMgb24gYCUuMjUwcyciCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBzZXRqYSBrw7h5cmVsw7h5dmUgcMOlIMKrJS4yNTBzwrsiCisKKyM6IHNyYy9oZWxwLmM6Mjc2CisjLCBmdXp6eQorbXNnaWQgInVuYWJsZSB0byBzZXRlbnYgZm9yIG1haW50YWluZXIgc2NyaXB0IgorbXNnc3RyICJrbGFydGUgaWtramUgZsOlIHN0YXR1cyBpIHZzbnByaW50ZiIKKworIzogc3JjL2hlbHAuYzozMDAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImluc3RhbGxlZCAlcyBzY3JpcHQiCittc2dzdHIgImdhbW1hbHQgJXMtc2tyaXB0IgorCisjOiBzcmMvaGVscC5jOjMxMyBzcmMvaGVscC5jOjM4MiBzcmMvaGVscC5jOjQ0MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCAlcyBgJS4yNTBzJyIKK21zZ3N0ciAiZmlubiBpa2tqZSAlcyDCqyUuMjUwc8K7IgorCisjOiBzcmMvaGVscC5jOjM2OCBzcmMvaGVscC5jOjQyOAorIywgYy1mb3JtYXQKK21zZ2lkICJuZXcgJXMgc2NyaXB0IgorbXNnc3RyICJueXR0ICVzLXNrcmlwdCIKKworIzogc3JjL2hlbHAuYzo0MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAib2xkICVzIHNjcmlwdCIKK21zZ3N0ciAiZ2FtbWFsdCAlcy1za3JpcHQiCisKKyM6IHNyYy9oZWxwLmM6NDE2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCAlcyAnJS4yNTBzJzogJXMiCittc2dzdHIgImZpbm4gaWtramUgJXMgwqslLjI1MHPCuyIKKworIzogc3JjL2hlbHAuYzo0MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZyAtIHRyeWluZyBzY3JpcHQgZnJvbSB0aGUgbmV3IHBhY2thZ2UgaW5zdGVhZCAuLi5cbiIKK21zZ3N0ciAiZHBrZyAtIHByw7h2ZXIgaSBzdGFkZW4gZWl0IHNrcmlwdCBmcsOlIGRlbiBueWUgcGFra2VuIC4uLlxuIgorCisjOiBzcmMvaGVscC5jOjQzOQorbXNnaWQgInRoZXJlIGlzIG5vIHNjcmlwdCBpbiB0aGUgbmV3IHZlcnNpb24gb2YgdGhlIHBhY2thZ2UgLSBnaXZpbmcgdXAiCittc2dzdHIgImRldCBmaW5zdCBpbmdlbiBza3JpcHQgaSBkZW4gbnllIHZlcnNqb25lbiBhdiBwYWtrZW4gLSBnamV2IG9wcCIKKworIzogc3JjL2hlbHAuYzo0NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogLi4uIGl0IGxvb2tzIGxpa2UgdGhhdCB3ZW50IE9LLlxuIgorbXNnc3RyICJkcGtnOiAuLi4gZGV0IHNlciB1dCB0aWwgYXQgZGV0IGdqZWtrIGZpbnQuXG4iCisKKyM6IHNyYy9oZWxwLmM6NjE2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2VjdXJlbHkgcmVtb3ZlICclLjI1NXMnIgorbXNnc3RyICJrbGFydGUgaWtramUgb3BwcmV0dGEgwqslLjI1NXPCuyIKKworIzogc3JjL2hlbHAuYzo2MjEgZHBrZy1kZWIvaW5mby5jOjY1IGRwa2ctZGViL2luZm8uYzo2NworbXNnaWQgInJtIGNvbW1hbmQgZm9yIGNsZWFudXAiCittc2dzdHIgIiIKKworIzogc3JjL2luZm9kYi5jOjUyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGVjayBleGlzdGVuY2Ugb2YgYCUuMjUwcyciCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBzamVra2Egb20gwqslLjI1MHPCuyBmaW5zdCIKKworIzogc3JjL2luZm9kYi5jOjcwCittc2dpZCAiY2Fubm90IHJlYWQgaW5mbyBkaXJlY3RvcnkiCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBsZXNhIGluZm9rYXRhbG9nZW4iCisKKyM6IHNyYy9tYWluLmM6NjAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiBgJXMnIHBhY2thZ2UgbWFuYWdlbWVudCBwcm9ncmFtIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIsK7IHBha2tlaGFuZHRlcmluZ3Nwcm9ncmFtLCB2ZXJzam9uICIKKworIzogc3JjL21haW4uYzo4NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtaXwtLWluc3RhbGwgICAgICAgPC5kZWIgZmlsZSBuYW1lPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyZWN0b3J5PiAuLi5cbiIKKyIgIC0tdW5wYWNrICAgICAgICAgICA8LmRlYiBmaWxlIG5hbWU+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXJlY3Rvcnk+IC4uLlxuIgorIiAgLUF8LS1yZWNvcmQtYXZhaWwgIDwuZGViIGZpbGUgbmFtZT4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRpcmVjdG9yeT4gLi4uXG4iCisiICAtLWNvbmZpZ3VyZSAgICAgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLS10cmlnZ2Vycy1vbmx5ICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC1yfC0tcmVtb3ZlICAgICAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtUHwtLXB1cmdlICAgICAgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLS1nZXQtc2VsZWN0aW9ucyBbPHBhdHRlcm4+IC4uLl0gR2V0IGxpc3Qgb2Ygc2VsZWN0aW9ucyB0byBzdGRvdXQuXG4iCisiICAtLXNldC1zZWxlY3Rpb25zICAgICAgICAgICAgICAgICBTZXQgcGFja2FnZSBzZWxlY3Rpb25zIGZyb20gc3RkaW4uXG4iCisiICAtLWNsZWFyLXNlbGVjdGlvbnMgICAgICAgICAgICAgICBEZXNlbGVjdCBldmVyeSBub24tZXNzZW50aWFsIHBhY2thZ2UuXG4iCisiICAtLXVwZGF0ZS1hdmFpbCA8UGFja2FnZXMtZmlsZT4gICBSZXBsYWNlIGF2YWlsYWJsZSBwYWNrYWdlcyBpbmZvLlxuIgorIiAgLS1tZXJnZS1hdmFpbCA8UGFja2FnZXMtZmlsZT4gICAgTWVyZ2Ugd2l0aCBpbmZvIGZyb20gZmlsZS5cbiIKKyIgIC0tY2xlYXItYXZhaWwgICAgICAgICAgICAgICAgICAgIEVyYXNlIGV4aXN0aW5nIGF2YWlsYWJsZSBpbmZvLlxuIgorIiAgLS1mb3JnZXQtb2xkLXVuYXZhaWwgICAgICAgICAgICAgRm9yZ2V0IHVuaW5zdGFsbGVkIHVuYXZhaWxhYmxlIHBrZ3MuXG4iCisiICAtc3wtLXN0YXR1cyA8cGFja2FnZT4gLi4uICAgICAgICBEaXNwbGF5IHBhY2thZ2Ugc3RhdHVzIGRldGFpbHMuXG4iCisiICAtcHwtLXByaW50LWF2YWlsIDxwYWNrYWdlPiAuLi4gICBEaXNwbGF5IGF2YWlsYWJsZSB2ZXJzaW9uIGRldGFpbHMuXG4iCisiICAtTHwtLWxpc3RmaWxlcyA8cGFja2FnZT4gLi4uICAgICBMaXN0IGZpbGVzIGBvd25lZCcgYnkgcGFja2FnZShzKS5cbiIKKyIgIC1sfC0tbGlzdCBbPHBhdHRlcm4+IC4uLl0gICAgICAgIExpc3QgcGFja2FnZXMgY29uY2lzZWx5LlxuIgorIiAgLVN8LS1zZWFyY2ggPHBhdHRlcm4+IC4uLiAgICAgICAgRmluZCBwYWNrYWdlKHMpIG93bmluZyBmaWxlKHMpLlxuIgorIiAgLUN8LS1hdWRpdCAgICAgICAgICAgICAgICAgICAgICAgQ2hlY2sgZm9yIGJyb2tlbiBwYWNrYWdlKHMpLlxuIgorIiAgLS1wcmludC1hcmNoaXRlY3R1cmUgICAgICAgICAgICAgUHJpbnQgZHBrZyBhcmNoaXRlY3R1cmUuXG4iCisiICAtLWNvbXBhcmUtdmVyc2lvbnMgPGE+IDxvcD4gPGI+ICBDb21wYXJlIHZlcnNpb24gbnVtYmVycyAtIHNlZSBiZWxvdy5cbiIKKyIgIC0tZm9yY2UtaGVscCAgICAgICAgICAgICAgICAgICAgIFNob3cgaGVscCBvbiBmb3JjaW5nLlxuIgorIiAgLURofC0tZGVidWc9aGVscCAgICAgICAgICAgICAgICAgU2hvdyBoZWxwIG9uIGRlYnVnZ2luZy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjExMyBzcmMvcXVlcnljbWQuYzo2MzEgc3JjL3RyaWdjbWQuYzo3NyBkcGtnLWRlYi9tYWluLmM6ODgKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjc3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIgIC1ofC0taGVscCAgICAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgICAgICAgICBTaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MTE4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJVc2UgZHBrZyAtYnwtLWJ1aWxkfC1jfC0tY29udGVudHN8LWV8LS1jb250cm9sfC1JfC0taW5mb3wtZnwtLWZpZWxkfFxuIgorIiAteHwtLWV4dHJhY3R8LVh8LS12ZXh0cmFjdHwtLWZzeXMtdGFyZmlsZSAgb24gYXJjaGl2ZXMgKHR5cGUgJXMgLS1oZWxwKS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjEyMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiRm9yIGludGVybmFsIHVzZTogZHBrZyAtLWFzc2VydC1zdXBwb3J0LXByZWRlcGVuZHMgfCAtLXByZWRlcC1wYWNrYWdlIHxcbiIKKyIgIC0tYXNzZXJ0LXdvcmtpbmctZXBvY2ggfCAtLWFzc2VydC1sb25nLWZpbGVuYW1lcyB8IC0tYXNzZXJ0LW11bHRpLWNvbnJlcC5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjEyOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT4gICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorIiAgLS1yb290PTxkaXJlY3Rvcnk+ICAgICAgICAgSW5zdGFsbCBvbiBhIGRpZmZlcmVudCByb290IGRpcmVjdG9yeS5cbiIKKyIgIC0taW5zdGRpcj08ZGlyZWN0b3J5PiAgICAgIENoYW5nZSBpbnN0YWxsYXRpb24gZGlyIHdpdGhvdXQgY2hhbmdpbmcgYWRtaW4gIgorImRpci5cbiIKKyIgIC0tcGF0aC1leGNsdWRlPTxwYXR0ZXJuPiAgIERvIG5vdCBpbnN0YWxsIHBhdGhzIHdoaWNoIG1hdGNoIGEgc2hlbGwgIgorInBhdHRlcm4uXG4iCisiICAtLXBhdGgtaW5jbHVkZT08cGF0dGVybj4gICBSZS1pbmNsdWRlIGEgcGF0dGVybiBhZnRlciBhIHByZXZpb3VzICIKKyJleGNsdXNpb24uXG4iCisiICAtT3wtLXNlbGVjdGVkLW9ubHkgICAgICAgICBTa2lwIHBhY2thZ2VzIG5vdCBzZWxlY3RlZCBmb3IgaW5zdGFsbC8iCisidXBncmFkZS5cbiIKKyIgIC1FfC0tc2tpcC1zYW1lLXZlcnNpb24gICAgIFNraXAgcGFja2FnZXMgd2hvc2Ugc2FtZSB2ZXJzaW9uIGlzIGluc3RhbGxlZC5cbiIKKyIgIC1HfC0tcmVmdXNlLWRvd25ncmFkZSAgICAgIFNraXAgcGFja2FnZXMgd2l0aCBlYXJsaWVyIHZlcnNpb24gdGhhbiAiCisiaW5zdGFsbGVkLlxuIgorIiAgLUJ8LS1hdXRvLWRlY29uZmlndXJlICAgICAgSW5zdGFsbCBldmVuIGlmIGl0IHdvdWxkIGJyZWFrIHNvbWUgb3RoZXIgIgorInBhY2thZ2UuXG4iCisiICAtLVtuby1ddHJpZ2dlcnMgICAgICAgICAgICBTa2lwIG9yIGZvcmNlIGNvbnNlcXVlbnRpYWwgdHJpZ2dlciAiCisicHJvY2Vzc2luZy5cbiIKKyIgIC0tbm8tZGVic2lnICAgICAgICAgICAgICAgIERvIG5vdCB0cnkgdG8gdmVyaWZ5IHBhY2thZ2Ugc2lnbmF0dXJlcy5cbiIKKyIgIC0tbm8tYWN0fC0tZHJ5LXJ1bnwtLXNpbXVsYXRlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBKdXN0IHNheSB3aGF0IHdlIHdvdWxkIGRvIC0gZG9uJ3QgZG8gaXQuXG4iCisiICAtRHwtLWRlYnVnPTxvY3RhbD4gICAgICAgICBFbmFibGUgZGVidWdnaW5nIChzZWUgLURoZWxwIG9yIC0tZGVidWc9aGVscCkuXG4iCisiICAtLXN0YXR1cy1mZCA8bj4gICAgICAgICAgICBTZW5kIHN0YXR1cyBjaGFuZ2UgdXBkYXRlcyB0byBmaWxlIGRlc2NyaXB0b3IgIgorIjxuPi5cbiIKKyIgIC0tbG9nPTxmaWxlbmFtZT4gICAgICAgICAgIExvZyBzdGF0dXMgY2hhbmdlcyBhbmQgYWN0aW9ucyB0byA8ZmlsZW5hbWU+LlxuIgorIiAgLS1pZ25vcmUtZGVwZW5kcz08cGFja2FnZT4sLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZ25vcmUgZGVwZW5kZW5jaWVzIGludm9sdmluZyA8cGFja2FnZT4uXG4iCisiICAtLWZvcmNlLS4uLiAgICAgICAgICAgICAgICBPdmVycmlkZSBwcm9ibGVtcyAoc2VlIC0tZm9yY2UtaGVscCkuXG4iCisiICAtLW5vLWZvcmNlLS4uLnwtLXJlZnVzZS0uLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3Agd2hlbiBwcm9ibGVtcyBlbmNvdW50ZXJlZC5cbiIKKyIgIC0tYWJvcnQtYWZ0ZXIgPG4+ICAgICAgICAgIEFib3J0IGFmdGVyIGVuY291bnRlcmluZyA8bj4gZXJyb3JzLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MTU0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21wYXJpc29uIG9wZXJhdG9ycyBmb3IgLS1jb21wYXJlLXZlcnNpb25zIGFyZTpcbiIKKyIgIGx0IGxlIGVxIG5lIGdlIGd0ICAgICAgICh0cmVhdCBlbXB0eSB2ZXJzaW9uIGFzIGVhcmxpZXIgdGhhbiBhbnkgIgorInZlcnNpb24pO1xuIgorIiAgbHQtbmwgbGUtbmwgZ2UtbmwgZ3QtbmwgKHRyZWF0IGVtcHR5IHZlcnNpb24gYXMgbGF0ZXIgdGhhbiBhbnkgdmVyc2lvbik7XG4iCisiICA8IDw8IDw9ID0gPj0gPj4gPiAgICAgICAob25seSBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIGNvbnRyb2wgZmlsZSAiCisic3ludGF4KS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjE2MQorIywgYy1mb3JtYXQKK21zZ2lkICJVc2UgYGRzZWxlY3QnIG9yIGBhcHRpdHVkZScgZm9yIHVzZXItZnJpZW5kbHkgcGFja2FnZSBtYW5hZ2VtZW50LlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MTcwCisjLCBmdXp6eQorbXNnaWQgIiIKKyJUeXBlIGRwa2cgLS1oZWxwIGZvciBoZWxwIGFib3V0IGluc3RhbGxpbmcgYW5kIGRlaW5zdGFsbGluZyBwYWNrYWdlcyBbKl07XG4iCisiVXNlIGBkc2VsZWN0JyBvciBgYXB0aXR1ZGUnIGZvciB1c2VyLWZyaWVuZGx5IHBhY2thZ2UgbWFuYWdlbWVudDtcbiIKKyJUeXBlIGRwa2cgLURoZWxwIGZvciBhIGxpc3Qgb2YgZHBrZyBkZWJ1ZyBmbGFnIHZhbHVlcztcbiIKKyJUeXBlIGRwa2cgLS1mb3JjZS1oZWxwIGZvciBhIGxpc3Qgb2YgZm9yY2luZyBvcHRpb25zO1xuIgorIlR5cGUgZHBrZy1kZWIgLS1oZWxwIGZvciBoZWxwIGFib3V0IG1hbmlwdWxhdGluZyAqLmRlYiBmaWxlcztcbiIKKyJcbiIKKyJPcHRpb25zIG1hcmtlZCBbKl0gcHJvZHVjZSBhIGxvdCBvZiBvdXRwdXQgLSBwaXBlIGl0IHRocm91Z2ggYGxlc3MnIG9yICIKKyJgbW9yZScgISIKK21zZ3N0ciAiIgorIlNrcml2IMKrZHBrZyAtLWhlbHDCuyBmb3IgaGplbHAgb20gaW5zdGFsbGFzam9uIG9nIGF2aW5zdGFsbGFzam9uIGF2IHBha2thciAiCisiWypdO1xuIgorIkJydWsgwqtkc2VsZWN0wrsgZWxsZXIgwqthcHRpdHVkZcK7IGZvciBlaSBsaXR0IG1laXIgYnJ1a2FydmVubmxlZyAiCisicGFra2VoYW5kdGVyaW5nO1xuIgorIlNrcml2IMKrZHBrZyAtRGhlbHDCuyBmb3IgZWkgbGlzdGUgb3ZlciBhdmx1c2luZ3NmdW5rc2pvbmFuZSB0aWwgZHBrZztcbiIKKyJTa3JpdiDCq2Rwa2cgLS1mb3JjZS1oZWxwwrsgZm9yIGluZm8gb20ga29ybGVpcyBvcGVyYXNqb25hciBrYW4gdHZpbmdhc3QgIgorImdqZW5ub207XG4iCisiU2tyaXYgwqtkcGtnLWRlYiAtLWhlbHDCuyBmb3IgaGplbHAgb20gZW5kcmluZyBhdiAqLmRlYi1maWxlcjtcbiIKKyJTa3JpdiDCq2Rwa2cgLS1saWNlbmNlwrsgZm9yIG9wcGhhdnNyZXR0YXIgb2cgZnLDpXNrcml2aW5nIGF2IGdhcmFudGkgKEdOVSBHUEwpICIKKyJbKl0uXG4iCisiXG4iCisiVmFsIG1hcmtlcnQgbWVkIFsqXSBnamV2IG15a2plIHRla3N0IC0gYnJ1ayDCq2xlc3PCuyBlbGxlciDCq21vcmXCuyBmb3Igw6UgbGVzYSAiCisiaW5mb3JtYXNqb25lbi4iCisKKyM6IHNyYy9tYWluLmM6MjE5Cittc2dpZCAiU2V0IGFsbCBmb3JjZSBvcHRpb25zIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjIxCittc2dpZCAiUmVwbGFjZSBhIHBhY2thZ2Ugd2l0aCBhIGxvd2VyIHZlcnNpb24iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjMKK21zZ2lkICJDb25maWd1cmUgYW55IHBhY2thZ2Ugd2hpY2ggbWF5IGhlbHAgdGhpcyBvbmUiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjUKK21zZ2lkICJQcm9jZXNzIGluY2lkZW50YWwgcGFja2FnZXMgZXZlbiB3aGVuIG9uIGhvbGQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjcKK21zZ2lkICJUcnkgdG8gKGRlKWluc3RhbGwgdGhpbmdzIGV2ZW4gd2hlbiBub3Qgcm9vdCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIyOQorbXNnaWQgIlBBVEggaXMgbWlzc2luZyBpbXBvcnRhbnQgcHJvZ3JhbXMsIHByb2JsZW1zIGxpa2VseSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzMQorbXNnaWQgIkluc3RhbGwgYSBwYWNrYWdlIGV2ZW4gaWYgaXQgZmFpbHMgYXV0aGVudGljaXR5IGNoZWNrIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjMzCittc2dpZCAiUHJvY2VzcyBldmVuIHBhY2thZ2VzIHdpdGggd3JvbmcgdmVyc2lvbnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzUKK21zZ2lkICJPdmVyd3JpdGUgYSBmaWxlIGZyb20gb25lIHBhY2thZ2Ugd2l0aCBhbm90aGVyIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjM3Cittc2dpZCAiT3ZlcndyaXRlIGEgZGl2ZXJ0ZWQgZmlsZSB3aXRoIGFuIHVuZGl2ZXJ0ZWQgdmVyc2lvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzOQorbXNnaWQgIk92ZXJ3cml0ZSBvbmUgcGFja2FnZSdzIGRpcmVjdG9yeSB3aXRoIGFub3RoZXIncyBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjQxCittc2dpZCAiRG8gbm90IHBlcmZvcm0gc2FmZSBJL08gb3BlcmF0aW9ucyB3aGVuIHVucGFja2luZyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI0MworbXNnaWQgIkFsd2F5cyB1c2UgdGhlIG5ldyBjb25maWcgZmlsZXMsIGRvbid0IHByb21wdCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI0NQorbXNnaWQgIkFsd2F5cyB1c2UgdGhlIG9sZCBjb25maWcgZmlsZXMsIGRvbid0IHByb21wdCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI0OAorbXNnaWQgIiIKKyJVc2UgdGhlIGRlZmF1bHQgb3B0aW9uIGZvciBuZXcgY29uZmlnIGZpbGVzIGlmIG9uZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICBpcyBhdmFpbGFibGUsIGRvbid0IHByb21wdC4gSWYgbm8gZGVmYXVsdCBjYW4gYmUgIgorImZvdW5kLFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICB5b3Ugd2lsbCBiZSBwcm9tcHRlZCB1bmxlc3Mgb25lIG9mIHRoZSBjb25mb2xkIG9yXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmZuZXcgb3B0aW9ucyBpcyBhbHNvIGdpdmVuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjUzCittc2dpZCAiQWx3YXlzIGluc3RhbGwgbWlzc2luZyBjb25maWcgZmlsZXMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNTUKK21zZ2lkICJPZmZlciB0byByZXBsYWNlIGNvbmZpZyBmaWxlcyB3aXRoIG5vIG5ldyB2ZXJzaW9ucyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI1NworbXNnaWQgIlByb2Nlc3MgZXZlbiBwYWNrYWdlcyB3aXRoIHdyb25nIG9yIG5vIGFyY2hpdGVjdHVyZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI1OQorbXNnaWQgIkluc3RhbGwgZXZlbiBpZiBpdCB3b3VsZCBicmVhayBhbm90aGVyIHBhY2thZ2UiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNjEKK21zZ2lkICJBbGxvdyBpbnN0YWxsYXRpb24gb2YgY29uZmxpY3RpbmcgcGFja2FnZXMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNjMKKyMsIGZ1enp5CisjfCBtc2dpZCAiZGVwZW5kZW5jeSBwcm9ibGVtcyAtIG5vdCByZW1vdmluZyIKK21zZ2lkICJUdXJuIGFsbCBkZXBlbmRlbmN5IHByb2JsZW1zIGludG8gd2FybmluZ3MiCittc2dzdHIgImtyYXZwcm9ibGVtIC0gZmplcm5hciBpa2tqZSIKKworIzogc3JjL21haW4uYzoyNjUKKyMsIGZ1enp5CisjfCBtc2dpZCAiZGVwZW5kZW5jeSBwcm9ibGVtcyAtIG5vdCByZW1vdmluZyIKK21zZ2lkICJUdXJuIGRlcGVuZGVuY3kgdmVyc2lvbiBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzIgorbXNnc3RyICJrcmF2cHJvYmxlbSAtIGZqZXJuYXIgaWtramUiCisKKyM6IHNyYy9tYWluLmM6MjY3Cittc2dpZCAiUmVtb3ZlIHBhY2thZ2VzIHdoaWNoIHJlcXVpcmUgaW5zdGFsbGF0aW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjY5Cittc2dpZCAiUmVtb3ZlIGFuIGVzc2VudGlhbCBwYWNrYWdlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjgxCittc2dpZCAiR2VuZXJhbGx5IGhlbHBmdWwgcHJvZ3Jlc3MgaW5mb3JtYXRpb24iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODIKKyMsIGZ1enp5Cittc2dpZCAiSW52b2NhdGlvbiBhbmQgc3RhdHVzIG9mIG1haW50YWluZXIgc2NyaXB0cyIKK21zZ3N0ciAia2xhcnRlIGlra2plIGbDpSBzdGF0dXMgaSB2c25wcmludGYiCisKKyM6IHNyYy9tYWluLmM6MjgzCittc2dpZCAiT3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg0Cittc2dpZCAiTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODUKKyMsIGZ1enp5CisjfCBtc2dpZCAicmVhZCBlcnJvciBpbiBjb25maWd1cmF0aW9uIGZpbGUgYCUuMjU1cyciCittc2dpZCAiT3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZSIKK21zZ3N0ciAibGVzZWZlaWwgaSBvcHBzZXR0c2ZpbGEgwqslLjI1NXPCuyIKKworIzogc3JjL21haW4uYzoyODYKK21zZ2lkICJMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGUiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODcKK21zZ2lkICJEZXBlbmRlbmNpZXMgYW5kIGNvbmZsaWN0cyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4OAorbXNnaWQgIkxvdHMgb2YgZGVwZW5kZW5jaWVzL2NvbmZsaWN0cyBvdXRwdXQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODkKK21zZ2lkICJUcmlnZ2VyIGFjdGl2YXRpb24gYW5kIHByb2Nlc3NpbmciCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyOTAKK21zZ2lkICJMb3RzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyOTEKK21zZ2lkICJTaWxseSBhbW91bnRzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyOTIKK21zZ2lkICJMb3RzIG9mIGRyaXZlbCBhYm91dCBlZyB0aGUgZHBrZy9pbmZvIGRpcmVjdG9yeSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MworbXNnaWQgIkluc2FuZSBhbW91bnRzIG9mIGRyaXZlbCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjMwNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXMgZGVidWdnaW5nIG9wdGlvbiwgLS1kZWJ1Zz08b2N0YWw+IG9yIC1EPG9jdGFsPjpcbiIKKyJcbiIKKyIgTnVtYmVyICBSZWYuIGluIHNvdXJjZSAgIERlc2NyaXB0aW9uXG4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzozMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIkRlYnVnZ2luZyBvcHRpb25zIGNhbiBiZSBtaXhlZCB1c2luZyBiaXR3aXNlLW9yLlxuIgorIk5vdGUgdGhhdCB0aGUgbWVhbmluZ3MgYW5kIHZhbHVlcyBhcmUgc3ViamVjdCB0byBjaGFuZ2UuXG4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzozMTkKK21zZ2lkICItLWRlYnVnIHJlcXVpcmVzIGFuIG9jdGFsIGFyZ3VtZW50IgorbXNnc3RyICItLSBkZWJ1ZyBrcmV2IGVpbiBva3RhbCBwYXJhbWV0ZXIiCisKKyM6IHNyYy9tYWluLmM6MzQ4CisjLCBjLWZvcm1hdAorbXNnaWQgIm51bGwgcGFja2FnZSBuYW1lIGluIC0taWdub3JlLWRlcGVuZHMgY29tbWEtc2VwYXJhdGVkIGxpc3QgYCUuMjUwcyciCittc2dzdHIgInRvbXQgcGFra2VuYW1uIGkgZGVuIGtvbW1hZGVsdGUgbGlzdGEgdGlsIC0taWdub3JlLWRlcGVuZHMgwqslLjI1MHPCuyIKKworIzogc3JjL21haW4uYzozNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS1pZ25vcmUtZGVwZW5kcyByZXF1aXJlcyBhIGxlZ2FsIHBhY2thZ2UgbmFtZS4gYCUuMjUwcycgaXMgbm90OyAlcyIKK21zZ3N0ciAiIgorIi0taWdub3JlLWRlcGVuZHMga3JldiBlaXQgZ3lsZGlnIHBha2tlbmFtbi4gwqslLjI1MHPCuyBlciBpa2tqZSBneWxkaWc7ICVzIgorCisjOiBzcmMvbWFpbi5jOjM3MSBzcmMvbWFpbi5jOjM4MSBzcmMvbWFpbi5jOjY0OSBkcGtnLXNwbGl0L21haW4uYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBpbnRlZ2VyIGZvciAtLSVzOiBgJS4yNTBzJyIKK21zZ3N0ciAidWd5bGRpZyBoZWlsdGFsIGZvciAtLSVzOiDCqyUuMjUwc8K7IgorCisjOiBzcmMvbWFpbi5jOjQzOAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBleGVjdXRpbmcgaG9vayAnJXMnLCBleGl0IGNvZGUgJWQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzo0NjUKK21zZ2lkICJzdGF0dXMgbG9nZ2VyIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6NDgwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlcyBmb3JjaW5nIG9wdGlvbnMgLSBjb250cm9sIGJlaGF2aW91ciB3aGVuIHByb2JsZW1zIGZvdW5kOlxuIgorIiAgd2FybiBidXQgY29udGludWU6ICAtLWZvcmNlLTx0aGluZz4sPHRoaW5nPiwuLi5cbiIKKyIgIHN0b3Agd2l0aCBlcnJvcjogICAgLS1yZWZ1c2UtPHRoaW5nPiw8dGhpbmc+LC4uLiB8IC0tbm8tZm9yY2UtPHRoaW5nPiwuLi5cbiIKKyIgRm9yY2luZyB0aGluZ3M6XG4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzo0OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIldBUk5JTkcgLSB1c2Ugb2Ygb3B0aW9ucyBtYXJrZWQgWyFdIGNhbiBzZXJpb3VzbHkgZGFtYWdlIHlvdXIgaW5zdGFsbGF0aW9uLlxuIgorIkZvcmNpbmcgb3B0aW9ucyBtYXJrZWQgWypdIGFyZSBlbmFibGVkIGJ5IGRlZmF1bHQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzo1MDQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBmb3JjZS9yZWZ1c2Ugb3B0aW9uIGAlLipzJyIKK21zZ3N0ciAidWtqZW5kIHR2aW5naW5ncy0vYXZ2aXNpbmdzdmFsIMKrJS4qc8K7IgorCisjOiBzcmMvbWFpbi5jOjUxMworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAib2Jzb2xldGUgZm9yY2UvcmVmdXNlIG9wdGlvbiAnJXMnXG4iCittc2dzdHIgIsOFdHZhcmluZzogRm9yZWxkYSB2YWwgwqslc8K7XG4iCisKKyM6IHNyYy9tYWluLmM6NjQzCisjLCBmdXp6eQorbXNnaWQgIi0tY29tbWFuZC1mZCB0YWtlcyBvbmUgYXJndW1lbnQsIG5vdCB6ZXJvIgorbXNnc3RyICItLWNvbW1hbmQtZmQgdGVrIMOpaW4gcGFyYW1ldGVyLCBpa2tqZSBudWxsIgorCisjOiBzcmMvbWFpbi5jOjY0NQorIywgZnV6enkKK21zZ2lkICItLWNvbW1hbmQtZmQgb25seSB0YWtlcyBvbmUgYXJndW1lbnQiCittc2dzdHIgIi0tY29tbWFuZC1mZCB0ZWsgYmVycmUgZWluIHBhcmFtZXRlciIKKworIzogc3JjL21haW4uYzo2NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGRuJ3Qgb3BlbiBgJWknIGZvciBzdHJlYW0iCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBvcG5hIMKrJWnCuyBmb3Igc3RyYXVtIgorCisjOiBzcmMvbWFpbi5jOjY3NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVvZiBiZWZvcmUgZW5kIG9mIGxpbmUgJWQiCittc2dzdHIgInV2ZW50YSBzbHV0dCBww6UgZmlsIGbDuHIgc2x1dHRlbiBhdiBsaW5qZSAlZCIKKworIzogc3JjL21haW4uYzo3MTkgc3JjL21haW4uYzo3NDEgc3JjL3F1ZXJ5Y21kLmM6NjkyIHNyYy9zdGF0Y21kLmM6Mzc5CisjOiBkcGtnLWRlYi9tYWluLmM6MjAxIGRwa2ctc3BsaXQvbWFpbi5jOjE2MworbXNnaWQgIm5lZWQgYW4gYWN0aW9uIG9wdGlvbiIKK21zZ3N0ciAidHJlbmcgZWl0IGhhbmRsaW5nc3ZhbCIKKworIzogc3JjL3BhY2thZ2VzLmM6MTEzCittc2dpZCAiIgorInlvdSBtdXN0IHNwZWNpZnkgcGFja2FnZXMgYnkgdGhlaXIgb3duIG5hbWVzLCBub3QgYnkgcXVvdGluZyB0aGUgbmFtZXMgb2YgIgorInRoZSBmaWxlcyB0aGV5IGNvbWUgaW4iCittc2dzdHIgIiIKKyJkdSBtw6UgZ2kgc2rDuGx2ZSBuYW1uZXQgcMOlIHBha2thbmUsIGlra2plIG5hbW5hIHDDpSBmaWxlbmUgc29tIHBha2thbmUgbGlnZyBpIgorCisjOiBzcmMvcGFja2FnZXMuYzoxMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyAtLXBlbmRpbmcgZG9lcyBub3QgdGFrZSBhbnkgbm9uLW9wdGlvbiBhcmd1bWVudHMiCittc2dzdHIgIi0tJXMgLS1wZW5kaW5nIHRlayBpbmdlbiBpa2tqZS12YWxwYXJhbWV0cmFyIgorCisjOiBzcmMvcGFja2FnZXMuYzoxMzggc3JjL3F1ZXJ5Y21kLmM6Mzc1IHNyYy9xdWVyeWNtZC5jOjU2NQorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGF0IGxlYXN0IG9uZSBwYWNrYWdlIG5hbWUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMgdHJlbmcgbWluc3QgZWl0dCBwYWtrZW5hbW4gc29tIHBhcmFtZXRlciIKKworIzogc3JjL3BhY2thZ2VzLmM6MTc5CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgJXMgbGlzdGVkIG1vcmUgdGhhbiBvbmNlLCBvbmx5IHByb2Nlc3Npbmcgb25jZS5cbiIKK21zZ3N0ciAiUGFra2VuICVzIGVyIG5lbW50IGZsZWlyZSBnb25nZXIsIGJlaGFuZGxhciBiZXJyZSDDqWluIGdvbmcuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjE4MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiTW9yZSB0aGFuIG9uZSBjb3B5IG9mIHBhY2thZ2UgJXMgaGFzIGJlZW4gdW5wYWNrZWRcbiIKKyIgaW4gdGhpcyBydW4gISAgT25seSBjb25maWd1cmluZyBpdCBvbmNlLlxuIgorbXNnc3RyICIiCisiRmxlaXJlIGtvcGlhciBhdiBwYWtrZW4gJXMgZXIgcGFra2EgdXQgaSBkZW5uZVxuIgorIiBvbWdhbmdlbi4gU2V0IGJlcnJlIG9wcCDDqWluIGdvbmcuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjIzMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorInBhY2thZ2UgJS4yNTBzIGlzIG5vdCByZWFkeSBmb3IgdHJpZ2dlciBwcm9jZXNzaW5nXG4iCisiIChjdXJyZW50IHN0YXR1cyBgJS4yNTBzJyB3aXRoIG5vIHBlbmRpbmcgdHJpZ2dlcnMpIgorbXNnc3RyICIiCisicGFra2VuICUuMjUwcyBlciBpa2tqZSBrbGFyIGZvciBvcHBzZXR0XG4iCisiIGthbiBpa2tqZSBzZXRqYSBvcHAgKG5vdmVyYW5kZSBzdGF0dXMgwqslLjI1MHPCuykiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjMzNAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIHdoaWNoIHByb3ZpZGVzICVzIGlzIHRvIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIHRpbGJ5ciAlLjI1MHMsIG1lbiBza2FsIGZqZXJuYXN0LlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzozMzcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyB2aWwgdmVydGEgZmplcm5hLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzozNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBWZXJzaW9uIG9mICVzIG9uIHN5c3RlbSBpcyAlcy5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcGFja2FnZXMuYzozNzYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyB3aGljaCBwcm92aWRlcyAlcyBhd2FpdHMgdHJpZ2dlciBwcm9jZXNzaW5nLlxuIgorbXNnc3RyICIgICUuMjUwcyB0aWxieXIgJS4yNTBzLCBtZW4gc2thbCBmamVybmFzdC5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MzgwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgYXdhaXRzIHRyaWdnZXIgcHJvY2Vzc2luZy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgdmlsIHZlcnRhIGZqZXJuYS5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDEwCisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IGFsc28gY29uZmlndXJpbmcgYCVzJyAocmVxdWlyZWQgYnkgYCVzJylcbiIKK21zZ3N0ciAiZHBrZzogc2V0IMOyZyBvcHAgwqslc8K7IChrcmF2ZCBhdiDCqyVzwrspXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQxOAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIHdoaWNoIHByb3ZpZGVzICVzIGlzIG5vdCBjb25maWd1cmVkIHlldC5cbiIKK21zZ3N0ciAiICAlLjI1MHMgdGlsYnlyICUuMjUwcywgbWVuIG9wcHNldHRldCBza2FsIGZqZXJuYXN0LlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyBpcyBub3QgY29uZmlndXJlZCB5ZXQuXG4iCittc2dzdHIgIiBlciBpa2tqZSBzZXR0IG9wcCBlbm5vLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MzIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyB3aGljaCBwcm92aWRlcyAlcyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICJQYWtrZW4gwqslc8K7IGVyIGlra2plIGluc3RhbGxlcnQuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQzNQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIGlzIG5vdCBpbnN0YWxsZWQuXG4iCittc2dzdHIgIlBha2tlbiDCqyVzwrsgZXIgaWtramUgaW5zdGFsbGVydC5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDcyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIgJXMgKCVzKSBicmVha3MgJXMgYW5kIGlzICVzLlxuIgorbXNnc3RyICIgICUuMjUwcyB0aWxieXIgJS4yNTBzIG9nIGVyICVzLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0NzgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiAgJXMgKCVzKSBwcm92aWRlcyAlcy5cbiIKK21zZ3N0ciAiJXMgKHVuZGVycHJvc2Vzcyk6ICVzXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQ4MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiICBWZXJzaW9uIG9mICVzIHRvIGJlIGNvbmZpZ3VyZWQgaXMgJXMuXG4iCittc2dzdHIgIiAgT3Bwc2V0dGV0IGF2ICUuMjUwcyB2aWwgdmVydGEgZmplcm5hLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo1OTYKK21zZ2lkICIgZGVwZW5kcyBvbiAiCittc2dzdHIgIiBrcmV2ICIKKworIzogc3JjL3BhY2thZ2VzLmM6NjAyCittc2dpZCAiOyBob3dldmVyOlxuIgorbXNnc3RyICIuIE1lbjpcbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo3MQorIywgYy1mb3JtYXQKK21zZ2lkICIuLi4vJXMiCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5MQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBlbnN1cmluZyBgJS4yNTBzJyBkb2Vzbid0IGV4aXN0IgorbXNnc3RyICJrbGFydGUgaWtramUgc2lrcmEgYXQgwqslLjI1MHPCuyBpa2tqZSBmaW5zdCIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5OQorbXNnaWQgInNwbGl0IHBhY2thZ2UgcmVhc3NlbWJseSIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEwOAorbXNnaWQgInJlYXNzZW1ibGVkIHBhY2thZ2UgZmlsZSIKK21zZ3N0ciAicGFra2VmaWwgc2V0dCBzYW1hbiBhdHQiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTMzCisjLCBjLWZvcm1hdAorbXNnaWQgIkF1dGhlbnRpY2F0aW5nICVzIC4uLlxuIgorbXNnc3RyICJHb2RramVubmVyICVzIC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEzOQorbXNnaWQgInBhY2thZ2Ugc2lnbmF0dXJlIHZlcmlmaWNhdGlvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE0NgorIywgYy1mb3JtYXQKK21zZ2lkICJWZXJpZmljYXRpb24gb24gcGFja2FnZSAlcyBmYWlsZWQhIgorbXNnc3RyICJTdGFkZmVzdGluZ2EgYXYgJXMgbWlzbHVra2FzdC4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTQ4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJWZXJpZmljYXRpb24gb24gcGFja2FnZSAlcyBmYWlsZWQsXG4iCisiYnV0IGluc3RhbGxpbmcgYW55d2F5IGFzIHlvdSByZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiIKKyJTdGFkZmVzdGluZ2EgYXYgJXMgbWlzbHVra2FzdCxcbiIKKyJtZW4gaW5zdGFsbGVyZXIgbGlrZXZlbCBzaWRhbiBkdSDDuG5za2plciBkZXQuXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTUyCisjLCBjLWZvcm1hdAorbXNnaWQgInBhc3NlZFxuIgorbXNnc3RyICJnb2RramVudFxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE2NSBkcGtnLWRlYi9pbmZvLmM6ODEKKyMsIGZ1enp5Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSB0ZW1wb3JhcnkgZGlyZWN0b3J5IgorbXNnc3RyICJrbGFydGUgaWtramUgbGFnYSBtZWxsb21iZWxzIGthdGFsb2duYW1uIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjIwNQorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlICVzIGhhcyB0b28gbWFueSBDb25mbGljdHMvUmVwbGFjZXMgcGFpcnMiCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyNDMKKyMsIGMtZm9ybWF0Cittc2dpZCAib2xkIHZlcnNpb24gb2YgcGFja2FnZSBoYXMgb3Zlcmx5LWxvbmcgaW5mbyBmaWxlIG5hbWUgc3RhcnRpbmcgYCUuMjUwcyciCittc2dzdHIgIiIKKyJkZW4gZ2FtbGUgdmVyc2pvbmVuIGF2IHBha2tlbiBoYXIgZWl0IGFsdGZvciBsYW5ndCBmaWxuYW1uIHNvbSBzdGFydGFyIHDDpSAiCisiwqslLjI1MHPCuyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyODEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBvYnNvbGV0ZSBpbmZvIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBmamVybmEgZGVuIGZvcmVsZGEgaW5mb3JtYXNqb25zZmlsYSDCqyUuMjUwc8K7IgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjI4NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCAoc3VwcG9zZWQpIG5ldyBpbmZvIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBpbnN0YWxsZXJhIGRlbiAodmlzc3Rub2spIG55ZSBpbmZvcm1hc2pvbnNmaWxhIMKrJS4yNTBzwrsiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6Mjk2Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gdGVtcCBjb250cm9sIGRpcmVjdG9yeSIKK21zZ3N0ciAia2xhcnRlIGlra2plIG9wbmEgZGVuIG1lbGxvbWJlbHNlIGtvbnRyb2xsa2F0YWxvZ2VuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMwNworIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGNvbnRhaW5zIG92ZXJseS1sb25nIGNvbnRyb2wgaW5mbyBmaWxlIG5hbWUgKHN0YXJ0aW5nIGAlLjUwcycpIgorbXNnc3RyICIiCisicGFra2VuIGlubmVoZWxkIGVpdCBhbHRmb3IgbGFuZ3QgaW5mb3JtYXNqb25zZmlsbmFtbiAoc3RhcnRhciBtZWQgwqslLjUwc8K7KSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBjb250cm9sIGluZm8gY29udGFpbmVkIGRpcmVjdG9yeSBgJS4yNTBzJyIKK21zZ3N0ciAicGFra2Vrb250cm9sbGluZm9ybWFzam9uZW4gaW5uZWhlbGQga2F0YWxvZ2VuIMKrJS4yNTBzwrsiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzE2CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgY29udHJvbCBpbmZvIHJtZGlyIG9mIGAlLjI1MHMnIGRpZG4ndCBzYXkgbm90IGEgZGlyIgorbXNnc3RyICJwYWtrZWtvbnRyb2xsaW5mb3JtYXNqb24sIHJtZGlyIGF2IMKrJS4yNTBzwrsgc2EgaWtramUgwqtpbmdlbiBrYXRhbG9nwrsiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzI2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlICVzIGNvbnRhaW5lZCBsaXN0IGFzIGluZm8gZmlsZSIKK21zZ3N0ciAiZHBrZzogw4V0dmFyaW5nIC0gcGFra2VuICVzIGlubmVoZWxkIGVpIGxpc3RlIHNvbSBpbmZvcm1hc2pvbnNmaWwiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzMzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyBpbmZvIGZpbGUgYCUuMjUwcycgYXMgYCUuMjUwcyciCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBpbnN0YWxsZXJhIG55IGluZm9ybWFzam9uc2ZpbCDCqyUuMjUwc8K7IHNvbSDCqyUuMjUwc8K7IgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjM0OSBzcmMvcmVtb3ZlLmM6MTk4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkZWxldGUgY29udHJvbCBpbmZvIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBzbGV0dGEga29udHJvbGxpbmZvcm1hc2pvbnNmaWxhIMKrJS4yNTBzwrsiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDExCittc2dpZCAiY2Fubm90IGFjY2VzcyBhcmNoaXZlIgorbXNnc3RyICJmw6VyIGlra2plIHRpbGdhbmcgdGlsIGFya2l2ZXQiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDMzCisjLCBmdXp6eQorbXNnaWQgInBhY2thZ2UgY29udHJvbCBpbmZvcm1hdGlvbiBleHRyYWN0aW9uIgorbXNnc3RyICJrb250cm9sbGluZm9ybWFzam9uc2xlbmdkIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjQ2MAorIywgYy1mb3JtYXQKK21zZ2lkICJSZWNvcmRlZCBpbmZvIGFib3V0ICVzIGZyb20gJXMuXG4iCittc2dzdHIgIlRla2UgdmFyZSBww6UgaW5mb3JtYXNqb24gb20gJXMgZnLDpSAlcy5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo0NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBhcmNoaXRlY3R1cmUgKCVzKSBkb2VzIG5vdCBtYXRjaCBzeXN0ZW0gKCVzKSIKK21zZ3N0ciAicGFra2VhcmtpdGVrdHVyZW4gKCVzKSBwYXNzYXIgaWtramUgdGlsIHN5c3RlbWV0ICglcykiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTIzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiByZWdhcmRpbmcgJXMgY29udGFpbmluZyAlcywgcHJlLWRlcGVuZGVuY3kgcHJvYmxlbTpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6IFZlZHLDuHJhbmRlICVzIHNvbSBpbm5laGVsZCAlcywgcHJvYmxlbSBtZWQgZsO4cmtyYXY6XG4iCisiJXMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTI2CisjLCBjLWZvcm1hdAorbXNnaWQgInByZS1kZXBlbmRlbmN5IHByb2JsZW0gLSBub3QgaW5zdGFsbGluZyAlLjI1MHMiCittc2dzdHIgInByb2JsZW0gbWVkIGbDuHJrcmF2IC0gaW5zdGFsbGVyZXIgaWtramUgJS4yNTBzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjUyNworIywgZnV6enkKK21zZ2lkICJpZ25vcmluZyBwcmUtZGVwZW5kZW5jeSBwcm9ibGVtISIKK21zZ3N0ciAiZHBrZzogw4V0dmFyaW5nIC0gaWdub3JlcmVyIHByb2JsZW0gbWVkIGbDuHJrcmF2LlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjU0MworIywgYy1mb3JtYXQKK21zZ2lkICJQcmVwYXJpbmcgdG8gcmVwbGFjZSAlcyAlcyAodXNpbmcgJXMpIC4uLlxuIgorbXNnc3RyICJHamVyIGtsYXIgdGlsIMOlIGJ5dGEgdXQgJXMgJXMgKHZlZCBicnVrIGF2ICVzKSAuLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiVW5wYWNraW5nICVzIChmcm9tICVzKSAuLi5cbiIKK21zZ3N0ciAiUGFra2FyIHV0ICVzIChmcsOlICVzKSAuLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAibmFtZSBvZiBjb25mZmlsZSAoc3RhcnRpbmcgYCUuMjUwcycpIGlzIHRvbyBsb25nICg+JWQgY2hhcmFjdGVycykiCittc2dzdHIgIm5hbW5ldCBww6Ugb3Bwc2V0dHNmaWxhIChzdGFydGFyIG1lZCDCqyUuMjUwc8K7KSBlciBmb3IgbGFuZ3QgKD4lZCB0ZWlrbikiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjMzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDcxCisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWQgZXJyb3IgaW4gJS4yNTBzIgorbXNnc3RyICJsZXNlZmVpbCBpICUuMjUwcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyAlLjI1MHMiCittc2dzdHIgImZlaWwgdmVkIGx1a2tpbmcgYXYgJS4yNTBzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjYzNworIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciB0cnlpbmcgdG8gb3BlbiAlLjI1MHMiCittc2dzdHIgImZlaWwgdmVkIG9wbmluZyBhdiAlLjI1MHMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6Njc4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJEZS1jb25maWd1cmluZyAlcywgdG8gYWxsb3cgcmVtb3ZhbCBvZiAlcyAuLi5cbiIKK21zZ3N0ciAiRmplcm5hciBvcHBzZXR0ZXQgYXYgJXMsIHNsaWsgYXQgJXMga2FuIGZqZXJuYXN0IC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjY4MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiRGUtY29uZmlndXJpbmcgJXMgLi4uXG4iCittc2dzdHIgIkZqZXJuYXIgJXMgLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NzU1CisjLCBjLWZvcm1hdAorbXNnaWQgIlVucGFja2luZyByZXBsYWNlbWVudCAlLjI1MHMgLi4uXG4iCittc2dzdHIgIlBha2thciB1dCBlcnN0YXR0aW5nYSAlLjI1MHMgLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6ODQwCittc2dpZCAicGFja2FnZSBmaWxlc3lzdGVtIGFyY2hpdmUgZXh0cmFjdGlvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjg1NAorbXNnaWQgImVycm9yIHJlYWRpbmcgZHBrZy1kZWIgdGFyIG91dHB1dCIKK21zZ3N0ciAiZmVpbCB2ZWQgbGVzaW5nIGF2IHRhci11dGRhdGEgZnLDpSBkcGtnLWRlYiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NTYKK21zZ2lkICJjb3JydXB0ZWQgZmlsZXN5c3RlbSB0YXJmaWxlIC0gY29ycnVwdGVkIHBhY2thZ2UgYXJjaGl2ZSIKK21zZ3N0ciAiw7h5ZGVsYWdkIGZpbHN5c3RlbS10YXJmaWwgLSDDuHlkZWxhZ3QgcGFra2VhcmtpdiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NTkKK21zZ2lkICJkcGtnLWRlYjogemFwIHBvc3NpYmxlIHRyYWlsaW5nIHplcm9zIgorbXNnc3RyICJkcGtnLWRlYjogRmplcm4gZXZlbnR1ZWxsZSBhdnNsdXR0YW5kZSBudWxsYXIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTE5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgc3RhdCBvbGQgZmlsZSAnJS4yNTBzJyBzbyBub3QgZGVsZXRpbmcgaXQ6ICVzIgorbXNnc3RyICJkcGtnOiDDhXR2YXJpbmcgLSBrbGFydGUgaWtramUgc2xldHRhIGRlbiBnYW1sZSBmaWxhIMKrJS4yNTBzwrs6ICVzXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTI1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGVsZXRlIG9sZCBkaXJlY3RvcnkgJyUuMjUwcyc6ICVzIgorbXNnc3RyICJkcGtnOiDDhXR2YXJpbmcgLSBrbGFydGUgaWtramUgc2xldHRhIGRlbiBnYW1sZSBmaWxhIMKrJS4yNTBzwrs6ICVzXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTI4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJvbGQgY29uZmZpbGUgJyUuMjUwcycgd2FzIGFuIGVtcHR5IGRpcmVjdG9yeSAoYW5kIGhhcyBub3cgYmVlbiBkZWxldGVkKSIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiDDhXR2YXJpbmcgLSBvcHBzZXR0c2ZpbGEgwqslLjI1MHPCuyBlciBpbmdhIHZhbmxlZyBmaWwgZWxsZXIgc3ltYm9sc2sgIgorImxlbmtqZSAoPSDCqyVzwrspXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTc1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBvdGhlciBuZXcgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia2xhcnRlIGlra2plIGvDuHlyYSDCq2ZzdGF0wrsgcMOlIGRlbGZpbGEgwqslLjI1MHPCuyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5ODYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJvbGQgZmlsZSAnJS4yNTBzJyBpcyB0aGUgc2FtZSBhcyBzZXZlcmFsIG5ldyBmaWxlcyEgKGJvdGggJyUuMjUwcycgYW5kICIKKyInJS4yNTBzJykiCittc2dzdHIgIiIKKyJkcGtnOiAlczogw4V0dmFyaW5nIC0gb3Bwc2V0dHNmaWxhIMKrJS4yNTBzwrsgZXIgaW5nYSB2YW5sZWcgZmlsIGVsbGVyIHN5bWJvbHNrICIKKyJsZW5ramUgKD0gwqslc8K7KVxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEwMjUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWN1cmVseSByZW1vdmUgb2xkIGZpbGUgJyUuMjUwcyc6ICVzIgorbXNnc3RyICJkcGtnOiDDhXR2YXJpbmcgLSBrbGFydGUgaWtramUgc2xldHRhIGRlbiBnYW1sZSBmaWxhIMKrJS4yNTBzwrs6ICVzXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTIwNgorIywgYy1mb3JtYXQKK21zZ2lkICIoTm90aW5nIGRpc2FwcGVhcmFuY2Ugb2YgJXMsIHdoaWNoIGhhcyBiZWVuIGNvbXBsZXRlbHkgcmVwbGFjZWQuKVxuIgorbXNnc3RyICIoTGVnZyBtZXJrZSB0aWwgYXQgJXMgZXIgZm9yc3Z1bm5lbiwgb2cgZnVsbHN0ZW5kaWcgZXJzdGF0dGEuKVxuIgorCisjLiBUUkFOU0xBVE9SUzogVGhpcyBpcyB0aGUgaGVhZGVyIHRoYXQgYXBwZWFycyBvbiAnZHBrZy1xdWVyeSAtbCcuIFRoZQorIy4gKiBzdHJpbmcgc2hvdWxkIHJlbWFpbiB1bmRlciA4MCBjaGFyYWN0ZXJzLiBUaGUgdXBwZXJjYXNlIGxldHRlcnMgaW4KKyMuICogdGhlIHN0YXRlIHZhbHVlcyBkZW5vdGUgdGhlIGFiYnJldmlhdGVkIGxldHRlciB0aGF0IHdpbGwgYXBwZWFyIG9uCisjLiAqIHRoZSBmaXJzdCB0aHJlZSBjb2x1bW5zLCB3aGljaCBzaG91bGQgaWRlYWxseSBtYXRjaCB0aGUgRW5nbGlzaCBvbmUKKyMuICogKGUuZy4gUmVtb3ZlIOKGkiBzdXBSaW1laXgpLCBzZWUgZHBrZy1xdWVyeSgxKSBmb3IgZnVydGhlciBkZXRhaWxzLiBUaGUKKyMuICogdHJhbnNsYXRlZCBtZXNzYWdlIGNhbiB1c2UgYWRkaXRpb25hbCBsaW5lcyBpZiBuZWVkZWQuCisjOiBzcmMvcXVlcnljbWQuYzoxNDkKKyMsIGZ1enp5Cittc2dpZCAiIgorIkRlc2lyZWQ9VW5rbm93bi9JbnN0YWxsL1JlbW92ZS9QdXJnZS9Ib2xkXG4iCisifCBTdGF0dXM9Tm90L0luc3QvQ29uZi1maWxlcy9VbnBhY2tlZC9oYWxGLWNvbmYvSGFsZi1pbnN0L3RyaWctYVdhaXQvVHJpZy0iCisicGVuZFxuIgorInwvIEVycj89KG5vbmUpL1JlaW5zdC1yZXF1aXJlZCAoU3RhdHVzLEVycjogdXBwZXJjYXNlPWJhZClcbiIKK21zZ3N0ciAiIgorIsOYbnNrdD1Va2plbmQvSW5zdGFsbGVyL0ZqZXJuL1JlaW5zayB1dC9IZWxkdCB0aWxiYWtlXG4iCisifCBTdGF0dXM9SWtramUvSW5zdGFsbGVydC9PcHBzZXR0c2ZpbGVyL1V0cGFra2EvT3Bwc2V0dHNmZWlsL0hhbHZpbnN0YWxsZXJ0XG4iCisifC8gRmVpbD89KGluZ2VuKS9IZWxkdCB0aWxiYWtlL03DpSBpbnN0LiBww6Ugbnl0dC9YPWJlZ2dlLWRlbGFyIChTdGF0dXMsRmVpbDogIgorInZlcnNhbGFyPWR1bXQpXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjE1MworbXNnaWQgIk5hbWUiCittc2dzdHIgIk5hbW4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjE1MworbXNnaWQgIlZlcnNpb24iCittc2dzdHIgIlZlcnNqb24iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjE1NAorbXNnaWQgIkRlc2NyaXB0aW9uIgorbXNnc3RyICJTa2lsZHJpbmciCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI0NiBzcmMvcXVlcnljbWQuYzo1MTEgc3JjL3NlbGVjdC5jOjc1CisjLCBjLWZvcm1hdAorbXNnaWQgIk5vIHBhY2thZ2VzIGZvdW5kIG1hdGNoaW5nICVzLlxuIgorbXNnc3RyICJGYW5uIGluZ2VuIHBha2thciBzb20gcGFzc2FyIHRpbCDCqyVzwrsuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI3MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJzaW9uIGJ5ICVzIGZyb206ICVzXG4iCittc2dzdHIgIm9tZGlyaWdlcnQgYXYgJXMiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI3NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJzaW9uIGJ5ICVzIHRvOiAlc1xuIgorbXNnc3RyICJvbWRpcmlnZXJ0IGF2ICVzIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNzgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImxvY2FsIGRpdmVyc2lvbiBmcm9tOiAlc1xuIgorbXNnc3RyICJsb2thbCBvbWRpcmlnZXJpbmciCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI3OQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAibG9jYWwgZGl2ZXJzaW9uIHRvOiAlc1xuIgorbXNnc3RyICJsb2thbHQgb21kaXJpZ2VydCIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MzA5Cittc2dpZCAiLS1zZWFyY2ggbmVlZHMgYXQgbGVhc3Qgb25lIGZpbGUgbmFtZSBwYXR0ZXJuIGFyZ3VtZW50IgorbXNnc3RyICItLXNlYXJjaCBrcmV2IG1pbnN0IGVpdHQgZmlsbmFtbnNtw7huc3RlciBzb20gcGFyYW1ldGVyIgorCisjOiBzcmMvcXVlcnljbWQuYzozNTAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIk5vIHBhY2thZ2VzIGZvdW5kIG1hdGNoaW5nICVzLlxuIgorbXNnaWQgIiVzOiBubyBwYXRoIGZvdW5kIG1hdGNoaW5nIHBhdHRlcm4gJXMuXG4iCittc2dzdHIgIkZhbm4gaW5nZW4gcGFra2FyIHNvbSBwYXNzYXIgdGlsIMKrJXPCuy5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MzkzCisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgYCVzJyBpcyBub3QgaW5zdGFsbGVkIGFuZCBubyBpbmZvIGlzIGF2YWlsYWJsZS5cbiIKK21zZ3N0ciAiIgorIlBha2tlbiDCqyVzwrsgZXIgaWtramUgaW5zdGFsbGVydCBvZyBkZXQgZmluc3QgaW5nZW4gaW5mb3JtYXNqb24gb20gaGFuLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSBgJXMnIGlzIG5vdCBhdmFpbGFibGUuXG4iCittc2dzdHIgIlBha2tlbiDCqyVzwrsgZXIgaWtramUgdGlsZ2plbmdlbGVnLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MTAgc3JjL3F1ZXJ5Y21kLmM6NTg1CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgYCVzJyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICJQYWtrZW4gwqslc8K7IGVyIGlra2plIGluc3RhbGxlcnQuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQxOAorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlIGAlcycgZG9lcyBub3QgY29udGFpbiBhbnkgZmlsZXMgKCEpXG4iCittc2dzdHIgIlBha2tlbiDCqyVzwrsgaW5uZWhlbGQgaW5nZW4gZmlsZXIgKCEpXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQyNQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAibG9jYWxseSBkaXZlcnRlZCB0bzogJXNcbiIKK21zZ3N0ciAibG9rYWx0IG9tZGlyaWdlcnQiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQyOAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBkaXZlcnRzIG90aGVycyB0bzogJXNcbiIKK21zZ3N0ciAicGFra2VuIG9tZGlyaWdlcmVyIGFuZHJlIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MzEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImRpdmVydGVkIGJ5ICVzIHRvOiAlc1xuIgorbXNnc3RyICJvbWRpcmlnZXJ0IGF2ICVzIgorCisjOiBzcmMvcXVlcnljbWQuYzo0NTIKK21zZ2lkICIiCisiVXNlIGRwa2cgLS1pbmZvICg9IGRwa2ctZGViIC0taW5mbykgdG8gZXhhbWluZSBhcmNoaXZlIGZpbGVzLFxuIgorImFuZCBkcGtnIC0tY29udGVudHMgKD0gZHBrZy1kZWIgLS1jb250ZW50cykgdG8gbGlzdCB0aGVpciBjb250ZW50cy5cbiIKK21zZ3N0ciAiIgorIkJydWsgZHBrZyAtLWluZm8gKD0gZHBrZy1kZWIgLS1pbmZvKSBmb3Igw6UgdW5kZXJzw7hramEgYXJraXZmaWxlcixcbiIKKyJvZyBkcGtnIC0tY29udGVudHMgKD0gZHBrZy1kZWIgLS1jb250ZW50cykgZm9yIMOlIHZpc2EgaW5uaGFsZGV0IGkgZGVpLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo1NzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgYXQgbW9zdCB0d28gYXJndW1lbnRzIgorbXNnc3RyICItLWJ1aWxkIHRlayBow7hnc3QgdG8gcGFyYW1ldHJhciIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NTc4CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbnRyb2wgZmlsZSBjb250YWlucyAlYyIKK21zZ3N0ciAiIgorCisjOiBzcmMvcXVlcnljbWQuYzo2MDAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiAlcyBwYWNrYWdlIG1hbmFnZW1lbnQgcHJvZ3JhbSBxdWVyeSB0b29sIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIsK7IHBha2tlaGFuZHRlcmluZ3Nwcm9ncmFtLCB2ZXJzam9uICIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjE5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtc3wtLXN0YXR1cyA8cGFja2FnZT4gLi4uICAgICAgICBEaXNwbGF5IHBhY2thZ2Ugc3RhdHVzIGRldGFpbHMuXG4iCisiICAtcHwtLXByaW50LWF2YWlsIDxwYWNrYWdlPiAuLi4gICBEaXNwbGF5IGF2YWlsYWJsZSB2ZXJzaW9uIGRldGFpbHMuXG4iCisiICAtTHwtLWxpc3RmaWxlcyA8cGFja2FnZT4gLi4uICAgICBMaXN0IGZpbGVzIGBvd25lZCcgYnkgcGFja2FnZShzKS5cbiIKKyIgIC1sfC0tbGlzdCBbPHBhdHRlcm4+IC4uLl0gICAgICAgIExpc3QgcGFja2FnZXMgY29uY2lzZWx5LlxuIgorIiAgLVd8LS1zaG93IFs8cGF0dGVybj4gLi4uXSAgICAgICAgU2hvdyBpbmZvcm1hdGlvbiBvbiBwYWNrYWdlKHMpLlxuIgorIiAgLVN8LS1zZWFyY2ggPHBhdHRlcm4+IC4uLiAgICAgICAgRmluZCBwYWNrYWdlKHMpIG93bmluZyBmaWxlKHMpLlxuIgorIiAgLWN8LS1jb250cm9sLXBhdGggPHBhY2thZ2U+IFs8ZmlsZT5dXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQcmludCBwYXRoIGZvciBwYWNrYWdlIGNvbnRyb2wgZmlsZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIiBbPGFsdGVybmF0aXY+XSA8a29tbWFuZG8+XG4iCisiS29tbWFuZG9hcjpcbiIKKyIgIC1zfC0tc3RhdHVzIDxwYWtrZW5hbW4+IC4uLiAgICAgICAgdmlzZXIgcGFra2VzdGF0dXNkZXRhbGphclxuIgorIiAgLXB8LS1wcmludC1hdmFpbCA8cGFra2VuYW1uPiAuLi4gICB2aXNlciBkZXRhbGphciBvbSB0aWxnamVuZ2VsZWcgdmVyc2pvblxuIgorIiAgLUx8LS1saXN0ZmlsZXMgPHBha2tlbmFtbj4gLi4uICAgICB2aXNlciBmaWxlciBzb20gZXIgZWlnZCBhdiBwYWtrZS8iCisicGFra2FyXG4iCisiICAtbHwtLWxpc3QgWzxtw7huc3Rlcj4gLi4uXSAgICAgICAgICAgdmlzZXIga29ydCBwYWtrZW92ZXJzaWt0XG4iCisiICAtV3wtLXNob3cgPG3DuG5zdGVyPiAuLi4gICAgICAgICAgICAgdmlzZXIgb3BwbHlzbmluZ2FyIG9tIHBha2tlL3Bha2thclxuIgorIiAgLVN8LS1zZWFyY2ggPG3DuG5zdGVyPiAuLi4gICAgICAgICAgIGZpbm4gcGFra2FyIHNvbSBlaWcgZmlsKGVyKVxuIgorIiAgLS1oZWxwIHwgLS12ZXJzaW9uICAgICAgICAgICAgICAgICAgdmlzZXIgZGVubmUgaGplbHBhIC8gdmVyc2pvbnNudW1tZXJldFxuIgorIiAgLS1saWNlbmNlICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlzZXIgbGlzZW5zdmlsa8OlcmFcbiIKKyJcbiIKKyJBbHRlcm5hdGl2OlxuIgorIiAgLS1hZG1pbmRpcj08a2F0YWxvZz4gICAgICAgIEJydWsgPGthdGFsb2c+IGkgc3RhZGVuIGZvciAlc1xuIgorIiAgLS1mfC0tc2hvd2Zvcm1hdD08Zm9ybWF0PiAgIEJydWsgYWx0ZXJuYXRpdnQgZm9ybWF0IGZvciAtLXNob3dcbiIKKyJcbiIKKyJGb3JtYXRzeW50YWtzOlxuIgorIiAgRWl0IGZvcm1hdCBlciBkZW4gc3RyZW5nZW4gc29tIHZlcnQgYnJ1a3QgZm9yIMOlIHZpc2EgZWluIHBha2tlLiBGb3JtYXRldFxuIgorIiAga2FuIGlubmVoYWxkYSBkZWkgdmFubGVnZSBlc2NhcGUtc2VrdmVuc2FuZSBcXG4gKGxpbmplc2tpZnQpLCBcXHIgIgorIih2b2ducmV0dXIpXG4iCisiICBlbGxlciBcXFxcIChyZWluIG9tdmVuZHQgc2tyw6VzdHJlaykuIFBha2tlb3BwbHlzbmluZ2FyIGthbiBzZXRqYXN0IGlubiAiCisidmVkXG4iCisiICDDpSBzZXRqYSBpbm4gdmFyaWFiZWxyZWZlcmFuc2FyIHRpbCBwYWtrZWZlbHQgbWVkIHN5bnRha3NlblxuIgorIiAgJHt2YXJbO2JyZWlkZF19LiBGZWx0YSB2aWwgdmVyYSBow7hncmVqdXN0ZXJ0ZSwgbWVkIG1pbmRyZSBicmVpZGRhIGVyIFxuIgorIm5lZ2F0aXYuIEkgc8OlIGZhbGwgdmlsIGRlaSB2ZXJhIHZlbnN0cmVqdXN0ZXJ0ZS5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjM2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hZG1pbmRpcj08ZGlyZWN0b3J5PiAgICAgICAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMuXG4iCisiICAtZnwtLXNob3dmb3JtYXQ9PGZvcm1hdD4gICAgICAgICBVc2UgYWx0ZXJuYXRpdmUgZm9ybWF0IGZvciAtLXNob3cuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjQyIGRwa2ctZGViL21haW4uYzoxMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkZvcm1hdCBzeW50YXg6XG4iCisiICBBIGZvcm1hdCBpcyBhIHN0cmluZyB0aGF0IHdpbGwgYmUgb3V0cHV0IGZvciBlYWNoIHBhY2thZ2UuIFRoZSBmb3JtYXRcbiIKKyIgIGNhbiBpbmNsdWRlIHRoZSBzdGFuZGFyZCBlc2NhcGUgc2VxdWVuY2VzIFxcbiAobmV3bGluZSksIFxcciAoY2FycmlhZ2VcbiIKKyIgIHJldHVybikgb3IgXFxcXCAocGxhaW4gYmFja3NsYXNoKS4gUGFja2FnZSBpbmZvcm1hdGlvbiBjYW4gYmUgaW5jbHVkZWRcbiIKKyIgIGJ5IGluc2VydGluZyB2YXJpYWJsZSByZWZlcmVuY2VzIHRvIHBhY2thZ2UgZmllbGRzIHVzaW5nIHRoZSAke3Zhcls7IgorIndpZHRoXX1cbiIKKyIgIHN5bnRheC4gRmllbGRzIHdpbGwgYmUgcmlnaHQtYWxpZ25lZCB1bmxlc3MgdGhlIHdpZHRoIGlzIG5lZ2F0aXZlIGluICIKKyJ3aGljaFxuIgorIiAgY2FzZSBsZWZ0IGFsaWdubWVudCB3aWxsIGJlIHVzZWQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjU2Cittc2dpZCAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBxdWVyeWluZyBwYWNrYWdlcy4iCittc2dzdHIgIiIKKworIzogc3JjL3JlbW92ZS5jOjg4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJpZ25vcmluZyByZXF1ZXN0IHRvIHJlbW92ZSAlLjI1MHMgd2hpY2ggaXNuJ3QgaW5zdGFsbGVkLiIKK21zZ3N0ciAiIgorImRwa2cgLSDDpXR2YXJpbmc6IElnbm9yZXJlciDDuG5za2V0IG9tIMOlIGZqZXJuYSAlLjI1MHMgc29tIGlra2plIGVyICIKKyJpbnN0YWxsZXJ0LlxuIgorCisjOiBzcmMvcmVtb3ZlLmM6OTUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpZ25vcmluZyByZXF1ZXN0IHRvIHJlbW92ZSAlLjI1MHMsIG9ubHkgdGhlIGNvbmZpZ1xuIgorIiBmaWxlcyBvZiB3aGljaCBhcmUgb24gdGhlIHN5c3RlbS4gVXNlIC0tcHVyZ2UgdG8gcmVtb3ZlIHRoZW0gdG9vLiIKK21zZ3N0ciAiIgorImRwa2cgLSDDpXR2YXJpbmc6IElnbm9yZXJlciDDuG5za2V0IG9tIMOlIGZqZXJuYSAlLjI1MHMuIEJlcnJlXG4iCisib3Bwc2V0dHNmaWxlbmUgZmluc3QgcMOlIHN5c3RlbWV0LiBCcnVrIC0tcHVyZ2UgZm9yIMOlIGZqZXJuYSBkZXNzZSDDsmcuXG4iCisKKyM6IHNyYy9yZW1vdmUuYzoxMDMKK21zZ2lkICJUaGlzIGlzIGFuIGVzc2VudGlhbCBwYWNrYWdlIC0gaXQgc2hvdWxkIG5vdCBiZSByZW1vdmVkLiIKK21zZ3N0ciAiRGV0dGUgZXIgZWluIG7DuGR2ZW5kaWcgcGFra2UgLSBkZW4gYsO4ciBpa2tqZSBmamVybmFzdC4iCisKKyM6IHNyYy9yZW1vdmUuYzoxMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IGRlcGVuZGVuY3kgcHJvYmxlbXMgcHJldmVudCByZW1vdmFsIG9mICVzOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogS3JhdnByb2JsZW0gaGluZHJhciBmamVybmluZyBhdiAlczpcbiIKKyIlcyIKKworIzogc3JjL3JlbW92ZS5jOjEzMAorbXNnaWQgImRlcGVuZGVuY3kgcHJvYmxlbXMgLSBub3QgcmVtb3ZpbmciCittc2dzdHIgImtyYXZwcm9ibGVtIC0gZmplcm5hciBpa2tqZSIKKworIzogc3JjL3JlbW92ZS5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogJXM6IGRlcGVuZGVuY3kgcHJvYmxlbXMsIGJ1dCByZW1vdmluZyBhbnl3YXkgYXMgeW91IHJlcXVlc3RlZDpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiBLcmF2cHJvYmxlbSwgbWVuIGZqZXJuYXIgbGlrZXZlbCBzaWRhbiBkdSDDuG5za2plciBkZXQ6XG4iCisiJXMiCisKKyM6IHNyYy9yZW1vdmUuYzoxNDIKK21zZ2lkICIiCisiUGFja2FnZSBpcyBpbiBhIHZlcnkgYmFkIGluY29uc2lzdGVudCBzdGF0ZSAtIHlvdSBzaG91bGRcbiIKKyIgcmVpbnN0YWxsIGl0IGJlZm9yZSBhdHRlbXB0aW5nIGEgcmVtb3ZhbC4iCittc2dzdHIgIiIKKyJQYWtrZW4gZXIgaSBlaW4gdmVsZGlnIGTDpXJsZWcsIGlua29uc2lzdGVudCB0aWxzdGFuZC4gRHUgYsO4clxuIgorImluc3RhbGxlcmEgcGFra2VuIHDDpSBueXR0IGbDuHIgZHUgcHLDuHZlciDDpSBmamVybmEgaGFuLiIKKworIzogc3JjL3JlbW92ZS5jOjE0OQorIywgYy1mb3JtYXQKK21zZ2lkICJXb3VsZCByZW1vdmUgb3IgcHVyZ2UgJXMgLi4uXG4iCittc2dzdHIgIlZpbGxlIGZqZXJuYSBlbGxlciByZWluc2thIHV0ICVzIC4uLlxuIgorCisjOiBzcmMvcmVtb3ZlLmM6MTU3CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlbW92aW5nICVzIC4uLlxuIgorbXNnc3RyICJGamVybmFyICVzIC4uLlxuIgorCisjOiBzcmMvcmVtb3ZlLmM6Mjc1IHNyYy9yZW1vdmUuYzozNjYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ3aGlsZSByZW1vdmluZyAlLjI1MHMsIHVuYWJsZSB0byByZW1vdmUgZGlyZWN0b3J5ICclLjI1MHMnOiAlcyAtIGRpcmVjdG9yeSAiCisibWF5IGJlIGEgbW91bnQgcG9pbnQ/IgorbXNnc3RyICIiCisiZHBrZyAtIMOldHZhcmluZzogVmVkIGZqZXJuaW5nIGF2ICUuMjUwcyBrdW5uZSBpa2tqZSBrYXRhbG9nZW4gwqslLjI1MHPCuyAiCisiZmplcm5hc3Q6ICVzIC0ga2F0YWxvZ2VuIGthbiB2ZXJhIGVpdCBtb250ZXJpbmdzcHVua3QuXG4iCisKKyM6IHNyYy9yZW1vdmUuYzoyODkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWN1cmVseSByZW1vdmUgJyUuMjUwcyciCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBvcHByZXR0YSAlLjI1MHMiCisKKyM6IHNyYy9yZW1vdmUuYzozNjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIndoaWxlIHJlbW92aW5nICUuMjUwcywgZGlyZWN0b3J5ICclLjI1MHMnIG5vdCBlbXB0eSBzbyBub3QgcmVtb3ZlZC4iCittc2dzdHIgIiIKKyJkcGtnIC0gw6V0dmFyaW5nOiBWZWQgZmplcm5pbmcgYXYgJS4yNTBzIHZhciBrYXRhbG9nZW4gwqslLjI1MHPCuyBpa2tqZSB0b20uICIKKyJIYW4gdmFydCBkaWZvciBpa2tqZSBmamVybmEuXG4iCisKKyM6IHNyYy9yZW1vdmUuYzozODMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImNhbm5vdCByZW1vdmUgYCUuMjUwcyciCittc2dpZCAiY2Fubm90IHJlbW92ZSAnJS4yNTBzJyIKK21zZ3N0ciAia2xhcnRlIGlra2plIGZqZXJuYSDCqyUuMjUwc8K7IgorCisjOiBzcmMvcmVtb3ZlLmM6NDA5CisjLCBjLWZvcm1hdAorbXNnaWQgIlB1cmdpbmcgY29uZmlndXJhdGlvbiBmaWxlcyBmb3IgJXMgLi4uXG4iCittc2dzdHIgIlJlaW5za2FyIHV0IG9wcHNldHRzZmlsZXIgZm9yICVzIC4uLlxuIgorCisjOiBzcmMvcmVtb3ZlLmM6NDU5CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZW1vdmUgb2xkIGNvbmZpZyBmaWxlIGAlLjI1MHMnICg9IGAlLjI1MHMnKSIKK21zZ3N0ciAia2xhcnRlIGlra2plIGZqZXJuYSBkZW4gZ2FtbGUgb3Bwc2V0dHNmaWxhIMKrJS4yNTBzwrsgKD0gwqslLjI1MHPCuykiCisKKyM6IHNyYy9yZW1vdmUuYzo0NzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlYWQgY29uZmlnIGZpbGUgZGlyIGAlLjI1MHMnIChmcm9tIGAlLjI1MHMnKSIKK21zZ3N0ciAia2xhcnRlIGlra2plIGxlc2Egb3Bwc2V0dHNmaWxrYXRhbG9nZW4gwqslLjI1MHPCuyAoZnLDpSDCqyUuMjUwc8K7KSIKKworIzogc3JjL3JlbW92ZS5jOjUxMAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVtb3ZlIG9sZCBiYWNrdXAgY29uZmlnIGZpbGUgYCUuMjUwcycgKG9mIGAlLjI1MHMnKSIKK21zZ3N0ciAiIgorImtsYXJ0ZSBpa2tqZSBmamVybmEgZGVuIGdhbWxlIHNpa3Jpbmdza29waWVuIGF2IG9wcHNldHRzZmlsYSDCqyUuMjUwc8K7IChmcsOlICIKKyLCqyUuMjUwc8K7KSIKKworIzogc3JjL3JlbW92ZS5jOjU2OAorbXNnaWQgImNhbm5vdCByZW1vdmUgb2xkIGZpbGVzIGxpc3QiCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBmamVybmEgZ2FtbWFsIGZpbGxpc3RlIgorCisjOiBzcmMvcmVtb3ZlLmM6NTc0Cittc2dpZCAiY2FuJ3QgcmVtb3ZlIG9sZCBwb3N0cm0gc2NyaXB0IgorbXNnc3RyICJrbGFydGUgaWtramUgZmplcm5hIGdhbW1hbHQgZXR0ZXJmamVybmluZ3Nza3JpcHQiCisKKyM6IHNyYy9zZWxlY3QuYzoxMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgaW4gcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQiCittc2dzdHIgInV2ZW50YSBzbHV0dCBww6UgZmlsIGkgcGFra2VuYW1uZXQgcMOlIGxpbmplICVkIgorCisjOiBzcmMvc2VsZWN0LmM6MTE2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGxpbmUgaW4gcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQiCittc2dzdHIgInV2ZW50YSBzbHV0dCBww6UgbGluamUgaSBwYWtrZW5hbW5ldCBww6UgbGluamUgJWQiCisKKyM6IHNyYy9zZWxlY3QuYzoxMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgYWZ0ZXIgcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQiCittc2dzdHIgInV2ZW50YSBzbHV0dCBww6UgZmlsIGV0dGVyIHBha2tlbmFtbmV0IHDDpSBsaW5qZSAlZCIKKworIzogc3JjL3NlbGVjdC5jOjEyMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBsaW5lIGFmdGVyIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICJ1dmVudGEgc2x1dHQgcMOlIGxpbmplIGV0dGVyIHBha2tlbmFtbmV0IHDDpSBsaW5qZSAlZCIKKworIzogc3JjL3NlbGVjdC5jOjEzNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGRhdGEgYWZ0ZXIgcGFja2FnZSBhbmQgc2VsZWN0aW9uIGF0IGxpbmUgJWQiCittc2dzdHIgInV2ZW50YSBkYXRhIGV0dGVyIHBha2tlIG9nIHZhbCBww6UgbGluamUgJWQiCisKKyM6IHNyYy9zZWxlY3QuYzoxMzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWxsZWdhbCBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZDogJS4yNTBzIgorbXNnc3RyICJ1Z3lsZGlnIHBha2tlbmFtbiBww6UgbGluamUgJWQ6ICUuMjUwcyIKKworIzogc3JjL3NlbGVjdC5jOjE0MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIHdhbnRlZCBzdGF0dXMgYXQgbGluZSAlZDogJS4yNTBzIgorbXNnc3RyICJ1a2plbmQgw7huc2t0IHN0YXR1cyBww6UgbGluamUgJWQ6ICUuMjUwcyIKKworIzogc3JjL3NlbGVjdC5jOjE0OQorbXNnaWQgInJlYWQgZXJyb3Igb24gc3RhbmRhcmQgaW5wdXQiCittc2dzdHIgImxlc2VmZWlsIGZyw6Ugc3RhbmRhcmQtaW5uIgorCisjOiBzcmMvc3RhdGNtZC5jOjUyCittc2dpZCAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBvdmVycmlkaW5nIGZpbGUgc3RhdCBpbmZvcm1hdGlvbi4iCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRjbWQuYzo2MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29weXJpZ2h0IChDKSAyMDAwLCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDA2LTIwMDkgR3VpbGxlbSBKb3Zlci5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGNtZC5jOjgxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC0tYWRkIDxvd25lcj4gPGdyb3VwPiA8bW9kZT4gPGZpbGU+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkIGEgbmV3IGVudHJ5IGludG8gdGhlIGRhdGFiYXNlLlxuIgorIiAgLS1yZW1vdmUgPGZpbGU+ICAgICAgICAgIHJlbW92ZSBmaWxlIGZyb20gdGhlIGRhdGFiYXNlLlxuIgorIiAgLS1saXN0IFs8Z2xvYi1wYXR0ZXJuPl0gIGxpc3QgY3VycmVudCBvdmVycmlkZXMgaW4gdGhlIGRhdGFiYXNlLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0Y21kLmM6ODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgc2V0IHRoZSBkaXJlY3Rvcnkgd2l0aCB0aGUgc3RhdG92ZXJyaWRlIGZpbGUuXG4iCisiICAtLXVwZGF0ZSAgICAgICAgICAgICAgICAgaW1tZWRpYXRlbHkgdXBkYXRlIGZpbGUgcGVybWlzc2lvbnMuXG4iCisiICAtLWZvcmNlICAgICAgICAgICAgICAgICAgZm9yY2UgYW4gYWN0aW9uIGV2ZW4gaWYgYSBzYW5pdHkgY2hlY2sgZmFpbHMuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgcXVpZXQgb3BlcmF0aW9uLCBtaW5pbWFsIG91dHB1dC5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRjbWQuYzoxMTYKK21zZ2lkICJzdHJpcHBpbmcgdHJhaWxpbmcgLyIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGNtZC5jOjIwNworIywgZnV6enkKK21zZ2lkICJjYW5ub3Qgb3BlbiBuZXcgc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBvcG5hIMKrc3RhdG92ZXJyaWRlwrstZmlsYSIKKworIzogc3JjL3N0YXRjbWQuYzoyMjIKKyMsIGZ1enp5Cittc2dpZCAiZXJyb3IgcmVtb3Zpbmcgc3RhdG92ZXJyaWRlLW9sZCIKK21zZ3N0ciAiZmVpbCB2ZWQgb3BwcmV0dGluZyBhdiBlaW5pbmcgwqslLjI1NXPCuyIKKworIzogc3JjL3N0YXRjbWQuYzoyMjQKKyMsIGZ1enp5Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgbmV3IHN0YXRvdmVycmlkZS1vbGQiCittc2dzdHIgImZlaWwgdmVkIG9wcHJldHRpbmcgYXYgZWluaW5nIMKrJS4yNTVzwrsiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjI2CisjLCBmdXp6eQorbXNnaWQgImVycm9yIGluc3RhbGxpbmcgbmV3IHN0YXRvdmVycmlkZSIKK21zZ3N0ciAiZmVpbCB2ZWQgb3BwcmV0dGluZyBhdiBlaW5pbmcgwqslLjI1NXPCuyIKKworIzogc3JjL3N0YXRjbWQuYzoyNDYKKyMsIGZ1enp5Cittc2dpZCAiLS1hZGQgbmVlZHMgZm91ciBhcmd1bWVudHMiCittc2dzdHIgIi0tYnVpbGQga3JldiBlaW4ga2F0YWxvZ3BhcmFtZXRlciIKKworIzogc3JjL3N0YXRjbWQuYzoyNTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkFuIG92ZXJyaWRlIGZvciAnJXMnIGFscmVhZHkgZXhpc3RzLCBidXQgLS1mb3JjZSBzcGVjaWZpZWQgc28gd2lsbCBiZSAiCisiaWdub3JlZC4iCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRjbWQuYzoyNjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiQW4gb3ZlcnJpZGUgZm9yICclcycgYWxyZWFkeSBleGlzdHMsIGFib3J0aW5nLiIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGNtZC5jOjI3MgorIywgYy1mb3JtYXQKK21zZ2lkICItLXVwZGF0ZSBnaXZlbiBidXQgJXMgZG9lcyBub3QgZXhpc3QiCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRjbWQuYzoyOTYKK21zZ2lkICJObyBvdmVycmlkZSBwcmVzZW50LiIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGNtZC5jOjMwNAorbXNnaWQgIi0tdXBkYXRlIGlzIHVzZWxlc3MgZm9yIC0tcmVtb3ZlIgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0ZGIuYzo1OQorIywgZnV6enkKK21zZ2lkICJzeW50YXggZXJyb3I6IGludmFsaWQgdWlkIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJrbGFydGUgaWtramUgb3BuYSDCq3N0YXRvdmVycmlkZcK7LWZpbGEiCisKKyM6IHNyYy9zdGF0ZGIuYzo2NAorIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3I6IHVua25vd24gdXNlciAnJXMnIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0ZGIuYzo4MworIywgZnV6enkKK21zZ2lkICJzeW50YXggZXJyb3I6IGludmFsaWQgZ2lkIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJrbGFydGUgaWtramUgb3BuYSDCq3N0YXRvdmVycmlkZcK7LWZpbGEiCisKKyM6IHNyYy9zdGF0ZGIuYzo4OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yOiB1bmtub3duIGdyb3VwICclcycgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBvcG5hIMKrc3RhdG92ZXJyaWRlwrstZmlsYSIKKworIzogc3JjL3N0YXRkYi5jOjEwNAorIywgZnV6enkKK21zZ2lkICJzeW50YXggZXJyb3I6IGludmFsaWQgbW9kZSBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAia2xhcnRlIGlra2plIG9wbmEgwqtzdGF0b3ZlcnJpZGXCuy1maWxhIgorCisjOiBzcmMvc3RhdGRiLmM6MTI3Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBvcG5hIMKrc3RhdG92ZXJyaWRlwrstZmlsYSIKKworIzogc3JjL3N0YXRkYi5jOjEzNAorbXNnaWQgImZhaWxlZCB0byBmc3RhdCBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAia2xhcnRlIGlra2plIHV0ZsO4cmEgwqtmc3RhdMK7IHDDpSDCq3N0YXRvdmVycmlkZcK7LWZpbGEiCisKKyM6IHNyYy9zdGF0ZGIuYzoxMzcKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgcHJldmlvdXMgc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgImtsYXJ0ZSBpa2tqZSB1dGbDuHJhIMKrZnN0YXTCuyBww6UgZGVuIGbDuHJyZSDCq3N0YXRvdmVycmlkZcK7LWZpbGEiCisKKyM6IHNyYy9zdGF0ZGIuYzoxNjIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInN0YXRvdmVycmlkZSBmaWxlIGAlLjI1MHMnIgorbXNnaWQgInJlYWRpbmcgc3RhdG92ZXJyaWRlIGZpbGUgJyUuMjUwcyciCittc2dzdHIgIsKrc3RhdG92ZXJyaWRlwrstZmlsIMKrJS4yNTBzwrsiCisKKyM6IHNyYy9zdGF0ZGIuYzoxNjkKKyMsIGZ1enp5Cittc2dpZCAic3RhdG92ZXJyaWRlIGZpbGUgaXMgbWlzc2luZyBmaW5hbCBuZXdsaW5lIgorbXNnc3RyICLCq3N0YXRvdmVycmlkZcK7LWZpbGEgaW5uZWhlbGQgZWkgdG9tIGxpbmplIgorCisjOiBzcmMvc3RhdGRiLmM6MTczCittc2dpZCAic3RhdG92ZXJyaWRlIGZpbGUgY29udGFpbnMgZW1wdHkgbGluZSIKK21zZ3N0ciAiwqtzdGF0b3ZlcnJpZGXCuy1maWxhIGlubmVoZWxkIGVpIHRvbSBsaW5qZSIKKworIzogc3JjL3N0YXRkYi5jOjE3OCBzcmMvc3RhdGRiLmM6MTkwIHNyYy9zdGF0ZGIuYzoyMDIKKyMsIGZ1enp5Cittc2dpZCAic3ludGF4IGVycm9yIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJrbGFydGUgaWtramUgb3BuYSDCq3N0YXRvdmVycmlkZcK7LWZpbGEiCisKKyM6IHNyYy9zdGF0ZGIuYzoxODYgc3JjL3N0YXRkYi5jOjE5OCBzcmMvc3RhdGRiLmM6MjEwCisjLCBmdXp6eQorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGxpbmUgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgInV2ZW50YSBzbHV0dCBww6UgbGluamUgaSBwYWtrZW5hbW5ldCBww6UgbGluamUgJWQiCisKKyM6IHNyYy9zdGF0ZGIuYzoyMTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIm11bHRpcGxlIHN0YXR1c292ZXJyaWRlcyBwcmVzZW50IGZvciBmaWxlICclLjI1MHMnIgorbXNnc3RyICLCq3N0YXRvdmVycmlkZcK7LWZpbCDCqyUuMjUwc8K7IgorCisjOiBzcmMvdHJpZ2NtZC5jOjQ2CisjLCBmdXp6eQorbXNnaWQgIlR5cGUgZHBrZy10cmlnZ2VyIC0taGVscCBmb3IgaGVscCBhYm91dCB0aGlzIHV0aWxpdHkuIgorbXNnc3RyICJTa3JpdiDCq2Rwa2ctc3BsaXQgLS1oZWxwwrsgZm9yIGhqZWxwLiIKKworIzogc3JjL3RyaWdjbWQuYzo1MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuICVzIHBhY2thZ2UgdHJpZ2dlciB1dGlsaXR5IHZlcnNpb24gJXMuXG4iCittc2dzdHIgIsK7IHBha2tlaGFuZHRlcmluZ3Nwcm9ncmFtXG4iCisKKyM6IHNyYy90cmlnY21kLmM6NjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbnM+IC4uLl0gPHRyaWdnZXItbmFtZT5cbiIKKyIgICAgICAgJXMgWzxvcHRpb25zPiAuLi5dIDxjb21tYW5kPlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy90cmlnY21kLmM6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLS1jaGVjay1zdXBwb3J0ZWQgICAgICAgICAgICAgICAgQ2hlY2sgaWYgdGhlIHJ1bm5pbmcgZHBrZyBzdXBwb3J0cyAiCisidHJpZ2dlcnMuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogc3JjL3RyaWdjbWQuYzo4MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorIiAgLS1ieS1wYWNrYWdlPTxwYWNrYWdlPiAgICAgICAgICAgT3ZlcnJpZGUgdHJpZ2dlciBhd2FpdGVyIChub3JtYWxseSBzZXRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnkgZHBrZykuXG4iCisiICAtLW5vLWF3YWl0ICAgICAgICAgICAgICAgICAgICAgICBObyBwYWNrYWdlIG5lZWRzIHRvIGF3YWl0IHRoZSAiCisicHJvY2Vzc2luZy5cbiIKKyIgIC0tbm8tYWN0ICAgICAgICAgICAgICAgICAgICAgICAgIEp1c3QgdGVzdCAtIGRvbid0IGFjdHVhbGx5IGNoYW5nZSAiCisiYW55dGhpbmcuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogc3JjL3RyaWdjbWQuYzoxNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IHRyaWdnZXJzIGRhdGEgZGlyZWN0b3J5IG5vdCB5ZXQgY3JlYXRlZFxuIgorbXNnc3RyICIiCisKKyM6IHNyYy90cmlnY21kLmM6MTU2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB0cmlnZ2VyIHJlY29yZHMgbm90IHlldCBpbiBleGlzdGVuY2VcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIwNQorIywgZnV6enkKK21zZ2lkICJ0YWtlcyBvbmUgYXJndW1lbnQsIHRoZSB0cmlnZ2VyIG5hbWUiCittc2dzdHIgIi0tJXMgdGVrIGJlcnJlIMOpaW4gcGFyYW1ldGVyICguZGViLWZpbG5hbW4pIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIxMAorbXNnaWQgIm11c3QgYmUgY2FsbGVkIGZyb20gYSBtYWludGFpbmVyIHNjcmlwdCAob3Igd2l0aCBhIC0tYnktcGFja2FnZSBvcHRpb24pIgorbXNnc3RyICIiCisKKyM6IHNyYy90cmlnY21kLmM6MjE1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJpbGxlZ2FsIGF3YWl0ZWQgcGFja2FnZSBuYW1lICclLjI1MHMnOiAlLjI1MHMiCittc2dzdHIgIsKrJXPCuy1mZWx0LCB1Z3lsZGlnIHBha2tlbmFtbiDCqyUuMjU1c8K7OiAlcyIKKworIzogc3JjL3RyaWdjbWQuYzoyMjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgdHJpZ2dlciBuYW1lIGAlLjI1MHMnOiAlLjI1MHMiCittc2dzdHIgIsKrJXPCuy1mZWx0LCB1Z3lsZGlnIHBha2tlbmFtbiDCqyUuMjU1c8K7OiAlcyIKKworIzogc3JjL3RyaWdwcm9jLmM6MjUwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogY3ljbGUgZm91bmQgd2hpbGUgcHJvY2Vzc2luZyB0cmlnZ2VyczpcbiIKKyIgY2hhaW4gb2YgcGFja2FnZXMgd2hvc2UgdHJpZ2dlcnMgYXJlIG9yIG1heSBiZSByZXNwb25zaWJsZTpcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvdHJpZ3Byb2MuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiBwYWNrYWdlcycgcGVuZGluZyB0cmlnZ2VycyB3aGljaCBhcmUgb3IgbWF5IGJlIHVucmVzb2x2YWJsZTpcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvdHJpZ3Byb2MuYzoyODEKK21zZ2lkICJ0cmlnZ2VycyBsb29waW5nLCBhYmFuZG9uZWQiCittc2dzdHIgIiIKKworIzogc3JjL3RyaWdwcm9jLmM6MzEyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJQcm9jZXNzaW5nIHRyaWdnZXJzIGZvciAlcyAuLi5cbiIKK21zZ3N0ciAiUmVpbnNrYXIgdXQgb3Bwc2V0dHNmaWxlciBmb3IgJXMgLi4uXG4iCisKKyM6IHNyYy91cGRhdGUuYzo1MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiLS0lcyBuZWVkcyBleGFjdGx5IG9uZSBQYWNrYWdlcyBmaWxlIGFyZ3VtZW50IgorbXNnaWQgIi0tJXMgbmVlZHMgZXhhY3RseSBvbmUgUGFja2FnZXMtZmlsZSBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyB0cmVuZyBha2t1cmF0IMOpaSDCq1BhY2thZ2VzwrstZmlsIHNvbSBwYXJhbWV0ZXIiCisKKyM6IHNyYy91cGRhdGUuYzo2MgorbXNnaWQgInVuYWJsZSB0byBhY2Nlc3MgZHBrZyBzdGF0dXMgYXJlYSBmb3IgYnVsayBhdmFpbGFibGUgdXBkYXRlIgorbXNnc3RyICIiCisia2xhcnRlIGlra2plIGbDpSB0aWxnYW5nIHRpbCBkcGtnLXN0YXR1c29tcsOlZGV0IGZvciByw6UgdGlsZ2plbmdlb3BwZGF0ZXJpbmciCisKKyM6IHNyYy91cGRhdGUuYzo2NAorbXNnaWQgImJ1bGsgYXZhaWxhYmxlIHVwZGF0ZSByZXF1aXJlcyB3cml0ZSBhY2Nlc3MgdG8gZHBrZyBzdGF0dXMgYXJlYSIKK21zZ3N0ciAicsOlIHRpbGdqZW5nZW9wcGRhdGVyaW5nIGtyZXYgc2tyaXZldGlsZ2FuZyB0aWwgZHBrZy1zdGF0dXNvbXLDpWRldCIKKworIzogc3JjL3VwZGF0ZS5jOjcxCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlcGxhY2luZyBhdmFpbGFibGUgcGFja2FnZXMgaW5mbywgdXNpbmcgJXMuXG4iCittc2dzdHIgIkJ5dGVyIHV0IGluZm9ybWFzam9uIG9tIHRpbGdqZW5nZWxlZ2UgcGFra2FyLCB2ZWQgaGplbHAgYXYgJXMuXG4iCisKKyM6IHNyYy91cGRhdGUuYzo3NAorIywgYy1mb3JtYXQKK21zZ2lkICJVcGRhdGluZyBhdmFpbGFibGUgcGFja2FnZXMgaW5mbywgdXNpbmcgJXMuXG4iCittc2dzdHIgIk9wcGRhdGVyZXIgb3BwbHlzbmluZ2FyIG9tIHRpbGdqZW5nZWxlZ2UgcGFra2FyLCB2ZWQgaGplbHAgYXYgJXMuXG4iCisKKyM6IHNyYy91cGRhdGUuYzoxMDEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIkluZm9ybWF0aW9uIGFib3V0ICVkIHBhY2thZ2Uocykgd2FzIHVwZGF0ZWQuXG4iCittc2dpZCAiSW5mb3JtYXRpb24gYWJvdXQgJWQgcGFja2FnZSB3YXMgdXBkYXRlZC5cbiIKK21zZ2lkX3BsdXJhbCAiSW5mb3JtYXRpb24gYWJvdXQgJWQgcGFja2FnZXMgd2FzIHVwZGF0ZWQuXG4iCittc2dzdHJbMF0gIkluZm9ybWFzam9uIG9tICVkIHBha2tlL3Bha2thciB2YXJ0IG9wcGRhdGVydC5cbiIKK21zZ3N0clsxXSAiSW5mb3JtYXNqb24gb20gJWQgcGFra2UvcGFra2FyIHZhcnQgb3BwZGF0ZXJ0LlxuIgorCisjOiBzcmMvdXBkYXRlLmM6MTE1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJvYnNvbGV0ZSAnLS0lcycgb3B0aW9uLCB1bmF2YWlsYWJsZSBwYWNrYWdlcyBhcmUgYXV0b21hdGljYWxseSBjbGVhbmVkIHVwLiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIG5hbWUgJyUuNTBzLi4uJyBpcyB0b28gbG9uZyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjEyOQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgZmlsZSBuYW1lICclLjI1MHMnIgorbXNnc3RyICJrbGFydGUgaWtramUgb3BuYSBramVsZGVmaWxhIMKrJS4yNTBzwrsiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTg5CisjLCBmdXp6eQorbXNnaWQgInVuYWJsZSB0byBzdGF0IGNvbnRyb2wgZGlyZWN0b3J5IgorbXNnc3RyICJrbGFydGUgaWtramUgb3BuYSBkZW4gbWVsbG9tYmVsc2Uga29udHJvbGxrYXRhbG9nZW4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTkxCisjLCBmdXp6eQorbXNnaWQgImNvbnRyb2wgZGlyZWN0b3J5IGlzIG5vdCBhIGRpcmVjdG9yeSIKK21zZ3N0ciAia2xhcnRlIGlra2plIGxlc2EgaW5mb2thdGFsb2dlbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoxOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29udHJvbCBkaXJlY3RvcnkgaGFzIGJhZCBwZXJtaXNzaW9ucyAlMDNsbyAobXVzdCBiZSA+PTA3NTUgYW5kIDw9MDc3NSkiCittc2dzdHIgIiIKKyJrb250cm9sbGthdGFsb2dlbiBoYXIgZmVpbCB0aWxnYW5nc2zDuHl2ZSAlMDNsbyAobcOlIHZlcmEgPj0wNzU1IG9nIDw9MDc3NSkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjA0CisjLCBjLWZvcm1hdAorbXNnaWQgIm1haW50YWluZXIgc2NyaXB0IGAlLjUwcycgaXMgbm90IGEgcGxhaW4gZmlsZSBvciBzeW1saW5rIgorbXNnc3RyICIiCisidmVkbGlrZWhhbGRhcnNrcmlwdGV0IMKrJS41MHPCuyBlciB2ZXJrZW4gZWkgcmVpbiBmaWwgZWxsZXIgZWkgc3ltYm9sc2sgbGVua2plIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjIwNworIywgYy1mb3JtYXQKK21zZ2lkICIiCisibWFpbnRhaW5lciBzY3JpcHQgYCUuNTBzJyBoYXMgYmFkIHBlcm1pc3Npb25zICUwM2xvIChtdXN0IGJlID49MDU1NSBhbmQgIgorIjw9MDc3NSkiCittc2dzdHIgIiIKKyJ2ZWRsaWtlaGFsZGFyc2tyaXB0ZXQgwqslLjUwc8K7IGhhciBmZWlsIHRpbGdhbmdzbMO4eXZlICUwM2xvIChtw6UgdmVyYSA+PTA1NTUgIgorIm9nIDw9MDc3NSkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjExCisjLCBjLWZvcm1hdAorbXNnaWQgIm1haW50YWluZXIgc2NyaXB0IGAlLjUwcycgaXMgbm90IHN0YXR0YWJsZSIKK21zZ3N0ciAiZmlubiBpa2tqZSB2ZWRsaWtlaGFsZGFyc2tyaXB0ZXQgwqslLjUwc8K7IgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjIzNworbXNnaWQgImVycm9yIG9wZW5pbmcgY29uZmZpbGVzIGZpbGUiCittc2dzdHIgImZlaWwgdmVkIG9wbmluZyBhdiDCq2NvbmZmaWxlc8K7LWZpbGEiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjQ2Cittc2dpZCAiZW1wdHkgc3RyaW5nIGZyb20gZmdldHMgcmVhZGluZyBjb25mZmlsZXMiCittc2dzdHIgInRvbSBzdHJlbmcgZnLDpSDCq2ZnZXRzwrsgdmVkIGxlc2luZyBhdiBvcHBzZXR0c2ZpbGVyIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI1MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgbmFtZSAnJS41MHMuLi4nIGlzIHRvbyBsb25nLCBvciBtaXNzaW5nIGZpbmFsIG5ld2xpbmUiCittc2dzdHIgIiIKKyLDpXR2YXJpbmcsIG5hbW5ldCBww6Ugb3Bwc2V0dHNmaWxhIMKrJS41MHMuLi7CuyBlciBmb3IgbGFuZ3QgZWxsZXIgbWFuZ2xhciAiCisibGluamVza2lmdCB0aWwgc2x1dHRcbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNjQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIGZpbGVuYW1lICclcycgY29udGFpbnMgdHJhaWxpbmcgd2hpdGUgc3BhY2VzIgorbXNnc3RyICLDpXR2YXJpbmcsIG9wcHNldHRzZmlsYSDCqyVzwrsgZXIgaW5nYSB2YW5sZWcgZmlsXG4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjY2CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIGAlLjI1MHMnIGRvZXMgbm90IGFwcGVhciBpbiBwYWNrYWdlIgorbXNnc3RyICJvcHBzZXR0c2ZpbGEgwqslLjI1MHPCuyBmaW5zdCBpa2tqZSBpIHBha2tlbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgYCUuMjUwcycgaXMgbm90IHN0YXR0YWJsZSIKK21zZ3N0ciAiZmlubiBpa2tqZSBvcHBzZXR0c2ZpbGEgwqslLjI1MHPCuyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlICclcycgaXMgbm90IGEgcGxhaW4gZmlsZSIKK21zZ3N0ciAiw6V0dmFyaW5nLCBvcHBzZXR0c2ZpbGEgwqslc8K7IGVyIGluZ2EgdmFubGVnIGZpbFxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI3NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgbmFtZSAnJXMnIGlzIGR1cGxpY2F0ZWQiCittc2dzdHIgIsOldHZhcmluZywgb3Bwc2V0dHNmaWxhIMKrJXPCuyBlciBpbmdhIHZhbmxlZyBmaWxcbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyODcKK21zZ2lkICJlcnJvciByZWFkaW5nIGNvbmZmaWxlcyBmaWxlIgorbXNnc3RyICJmZWlsIHZlZCBsZXNpbmcgYXYgwqtjb25mZmlsZXPCuy1maWxhIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjMzOQorbXNnaWQgInBhY2thZ2UgbmFtZSBoYXMgY2hhcmFjdGVycyB0aGF0IGFyZW4ndCBsb3dlcmNhc2UgYWxwaGFudW1zIG9yIGAtKy4nIgorbXNnc3RyICJwYWtrZW5hbW5ldCBoYXIgdGVpa24gc29tIHZlcmtlbiBlciBzbcOlIGJva3N0YXZhciwgdGFsIGVsbGVyIMKrLSsuwrsiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MzQxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICInJXMnIGNvbnRhaW5zIHVzZXItZGVmaW5lZCBQcmlvcml0eSB2YWx1ZSAnJXMnIgorbXNnc3RyICLDpXR2YXJpbmcsIMKrJXPCuyBpbm5laGVsZCBicnVrYXJkZWZpbmVydCBwcmlvcml0ZXRzdmVyZGkgwqslc8K7XG4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MzQ3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICInJXMnIGNvbnRhaW5zIHVzZXItZGVmaW5lZCBmaWVsZCAnJXMnIgorbXNnc3RyICLDpXR2YXJpbmcsIMKrJXPCuyBpbm5laGVsZCBicnVrYXJkZWZpbmVydCBmZWx0IMKrJXPCu1xuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjM1OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgJWQgd2FybmluZyBhYm91dCB0aGUgY29udHJvbCBmaWxlKHMpXG4iCittc2dpZF9wbHVyYWwgImlnbm9yaW5nICVkIHdhcm5pbmdzIGFib3V0IHRoZSBjb250cm9sIGZpbGUocylcbiIKK21zZ3N0clswXSAiZHBrZy1kZWI6IElnbm9yZXJlciAlZCDDpXR2YXJpbmdhciBvbSBrb250cm9sbGZpbGVuZVxuIgorbXNnc3RyWzFdICJkcGtnLWRlYjogSWdub3JlcmVyICVkIMOldHZhcmluZ2FyIG9tIGtvbnRyb2xsZmlsZW5lXG4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDAzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDI5CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQzNgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhIDxkaXJlY3Rvcnk+IGFyZ3VtZW50IgorbXNnc3RyICItLWJ1aWxkIGtyZXYgZWluIGthdGFsb2dwYXJhbWV0ZXIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDA5Cittc2dpZCAiLS1idWlsZCB0YWtlcyBhdCBtb3N0IHR3byBhcmd1bWVudHMiCittc2dzdHIgIi0tYnVpbGQgdGVrIGjDuGdzdCB0byBwYXJhbWV0cmFyIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQxMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hlY2sgZm9yIGV4aXN0ZW5jZSBvZiBhcmNoaXZlIGAlLjI1MHMnIgorbXNnc3RyICJrbGFydGUgaWtramUgc2pla2thIG9tIGFya2l2ZXQgwqslLjI1MHPCuyBmaW5zdCIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzAKK21zZ2lkICJ0YXJnZXQgaXMgZGlyZWN0b3J5IC0gY2Fubm90IHNraXAgY29udHJvbCBmaWxlIGNoZWNrIgorbXNnc3RyICJtw6VsZXQgZXIgZWluIGthdGFsb2cgLSBrYW4gaWtramUgaG9wcGEgb3ZlciBrb250cm9sbGZpbHNqZWtrIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQzMQorbXNnaWQgIm5vdCBjaGVja2luZyBjb250ZW50cyBvZiBjb250cm9sIGFyZWEuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDMyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJkcGtnLWRlYjogYnVpbGRpbmcgYW4gdW5rbm93biBwYWNrYWdlIGluICclcycuXG4iCittc2dzdHIgImRwa2ctZGViOiBCeWdnamVyIHBha2tlbiDCqyVzwrsgaSDCqyVzwrsuXG4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDM5CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2ctZGViOiBidWlsZGluZyBwYWNrYWdlIGAlcycgaW4gYCVzJy5cbiIKK21zZ3N0ciAiZHBrZy1kZWI6IEJ5Z2dqZXIgcGFra2VuIMKrJXPCuyBpIMKrJXPCuy5cbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0NjcgZHBrZy1kZWIvYnVpbGQuYzo1MjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byBtYWtlIHRtcGZpbGUgKGRhdGEpIgorbXNnaWQgImZhaWxlZCB0byBtYWtlIHRlbXBvcmFyeSBmaWxlICglcykiCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBvcHByZXR0YSBtZWxsb21iZWxzIGZpbCAoZGF0YSkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDY3IGRwa2ctZGViL2J1aWxkLmM6NDcwIGRwa2ctZGViL2J1aWxkLmM6NDc3CisjOiBkcGtnLWRlYi9idWlsZC5jOjQ4NSBkcGtnLWRlYi9idWlsZC5jOjQ5NCBkcGtnLWRlYi9idWlsZC5jOjQ5OQorIywgZnV6enkKK21zZ2lkICJjb250cm9sIG1lbWJlciIKK21zZ3N0ciAia29udHJvbGxvbXLDpWRlIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ3MCBkcGtnLWRlYi9idWlsZC5jOjUyNAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIHVubGluayB0bXBmaWxlIChkYXRhKSwgJXMiCittc2dpZCAiZmFpbGVkIHRvIHVubGluayB0ZW1wb3JhcnkgZmlsZSAoJXMpLCAlcyIKK21zZ3N0ciAia2xhcnRlIGlra2plIGZqZXJuYSBsZW5ramUgdGlsIG1lbGxvbWJlbHMgZmlsIChkYXRhKSwgJXMiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDg1IGRwa2ctZGViL2J1aWxkLmM6NTkzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gcmV3aW5kIHRtcGZpbGUgKGRhdGEpIgorbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdGVtcG9yYXJ5IGZpbGUgKCVzKSIKK21zZ3N0ciAia2xhcnRlIGlra2plIGhvcHBhIHRpbGJha2UgaSBtZWxsb21iZWxzIGZpbCAoZGF0YSkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDk0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gc3RhdCB0ZW1wb3JhcnkgZmlsZSAoJXMpIgorbXNnc3RyICJrbGFydGUgaWtramUgb3BwcmV0dGEgbWVsbG9tYmVscyBmaWwgKGRhdGEpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ5OAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciB3cml0aW5nIGAlcyciCittc2dzdHIgImZlaWwgdmVkIHNrcml2aW5nIGF2IMKrJXPCuyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo1MjEgZHBrZy1kZWIvYnVpbGQuYzo1MjQgZHBrZy1kZWIvYnVpbGQuYzo1NDYKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTcyIGRwa2ctZGViL2J1aWxkLmM6NTgwIGRwa2ctZGViL2J1aWxkLmM6NTkzCisjLCBmdXp6eQorI3wgbXNnaWQgImJldHdlZW4gbWVtYmVycyIKK21zZ2lkICJkYXRhIG1lbWJlciIKK21zZ3N0ciAibWVsbG9tIG1lZGxlbW1lciIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo1NzEgZHBrZy1kZWIvYnVpbGQuYzo1ODAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byB3cml0ZSBmaWxlbmFtZSB0byB0YXIgcGlwZSAoZGF0YSkiCittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIGZpbGVuYW1lIHRvIHRhciBwaXBlICglcykiCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBza3JpdmEgZmlsbmFtbiB0aWwgdGFyLXLDuHlyIChkYXRhKSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo1ODQKK21zZ2lkICI8Y29tcHJlc3M+IGZyb20gdGFyIC1jZiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6NjEgZHBrZy1kZWIvZXh0cmFjdC5jOjYzCittc2dpZCAic2hlbGwgY29tbWFuZCB0byBtb3ZlIGZpbGVzIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzo3MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBmaWxlIGluICVzIGluICUuMjU1cyIKK21zZ3N0ciAidXZlbnRhIHNsdXR0IHDDpSBmaWwgaSAlcyBpICUuMjU1cyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjcyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJlcnJvciByZWFkaW5nICVzIGZyb20gZmlsZSAlLjI1NXMiCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBsZXNhICVzIGZyw6UgJS4yNTVzIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTI1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZWFkIGFyY2hpdmUgYCUuMjU1cyciCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBsZXNhIGFya2l2ZXQgwqslLjI1NXPCuyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjEyNworbXNnaWQgImZhaWxlZCB0byBmc3RhdCBhcmNoaXZlIgorbXNnc3RyICJrbGFydGUgaWtramUga8O4eXJhIMKrZnN0YXTCuyBww6UgYXJraXZldCIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjEzMQorIywgZnV6enkKKyN8IG1zZ2lkICJhcmNoaXZlIGhhcyBubyBkb3QgaW4gdmVyc2lvbiBudW1iZXIiCittc2dpZCAiYXJjaGl2ZSBtYWdpYyB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAiYXJraXZldCBtYW5nbGFyIHB1bmt0dW0gaSB2ZXJzam9uc251bW1lcmV0IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTQzCisjLCBmdXp6eQorI3wgbXNnaWQgImFyY2hpdmUgaGFzIG5vIG5ld2xpbmVzIGluIGhlYWRlciIKK21zZ2lkICJhcmNoaXZlIG1lbWJlciBoZWFkZXIiCittc2dzdHIgImFya2l2ZXQgbWFuZ2xhciBsaW5qZXNraWZ0IGkgaG92dWRldCIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE0OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIHBhcnQgbnVtYmVyIgorbXNnaWQgImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBhcmNoaXZlIGhlYWRlciBtYWdpYyIKK21zZ3N0ciAiZmlsYSDCqyUuMjUwc8K7IGVyIMO4eWRlbGFnZCAtIHVneWxkaWcgZGVsbnVtbWVyIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTU1CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgbm90IGEgZGViaWFuIGJpbmFyeSBhcmNoaXZlICh0cnkgZHBrZy1zcGxpdD8pIgorbXNnc3RyICJmaWxhIMKrJS4yNTBzwrsgZXIgaWtramUgZWl0IGJpbsOmcnQgRGViaWFuLWFya2l2IChwcsO4diBkcGtnLXNwbGl0PykiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNTkKKyMsIGZ1enp5CisjfCBtc2dpZCAiYXJjaGl2ZSBoYXMgbm8gZG90IGluIHZlcnNpb24gbnVtYmVyIgorbXNnaWQgImFyY2hpdmUgaW5mb3JtYXRpb24gaGVhZGVyIG1lbWJlciIKK21zZ3N0ciAiYXJraXZldCBtYW5nbGFyIHB1bmt0dW0gaSB2ZXJzam9uc251bW1lcmV0IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTYyCittc2dpZCAiYXJjaGl2ZSBoYXMgbm8gbmV3bGluZXMgaW4gaGVhZGVyIgorbXNnc3RyICJhcmtpdmV0IG1hbmdsYXIgbGluamVza2lmdCBpIGhvdnVkZXQiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNjUKK21zZ2lkICJhcmNoaXZlIGhhcyBubyBkb3QgaW4gdmVyc2lvbiBudW1iZXIiCittc2dzdHIgImFya2l2ZXQgbWFuZ2xhciBwdW5rdHVtIGkgdmVyc2pvbnNudW1tZXJldCIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE2OAorIywgYy1mb3JtYXQKK21zZ2lkICJhcmNoaXZlIHZlcnNpb24gJS4yNTBzIG5vdCB1bmRlcnN0b29kLCBnZXQgbmV3ZXIgZHBrZy1kZWIiCittc2dzdHIgInNrasO4bmFyIGlra2plIGFya2l2dmVyc2pvbmVuICUuMjUwcy4gRHUgdHJlbmcgZWluIG55YXJlIGRwa2ctZGViIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTc5IGRwa2ctZGViL2V4dHJhY3QuYzoyMDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInNraXBwZWQgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ2lkICJza2lwcGVkIGFyY2hpdmUgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ3N0ciAiaG9wcGEgb3ZlciBtZWRsZW1zZGF0YSBmcsOlICVzIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTk0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGNvbnRhaW5zIHVudW5kZXJzdG9vZCBkYXRhIG1lbWJlciAlLipzLCBnaXZpbmcgdXAiCittc2dpZCAiYXJjaGl2ZSAnJS4yNTBzJyBjb250YWlucyBub3QgdW5kZXJzdG9vZCBkYXRhIG1lbWJlciAlLipzLCBnaXZpbmcgdXAiCittc2dzdHIgIiIKKyJmaWxhIMKrJS4yNTBzwrsgaW5uZWhlbGQgZWl0IGRhdGFtZWRsZW0gJS4qcyBzb20gZWcgaWtramUgc2tqw7huYXIuIEdqZXYgb3BwIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTk5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGNvbnRhaW5zIHR3byBjb250cm9sIG1lbWJlcnMsIGdpdmluZyB1cCIKK21zZ2lkICJhcmNoaXZlICclLjI1MHMnIGNvbnRhaW5zIHR3byBjb250cm9sIG1lbWJlcnMsIGdpdmluZyB1cCIKK21zZ3N0ciAiZmlsYSDCqyUuMjUwc8K7IGlubmVoZWxkIHRvIGtvbnRyb2xsbWVkbGVtbWVyLiBHamV2IG9wcCIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIxNAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiBuZXcgZGViaWFuIHBhY2thZ2UsIHZlcnNpb24gJXMuXG4iCisjfCAiIHNpemUgJWxkIGJ5dGVzOiBjb250cm9sIGFyY2hpdmU9ICV6aSBieXRlcy5cbiIKK21zZ2lkICIiCisiIG5ldyBkZWJpYW4gcGFja2FnZSwgdmVyc2lvbiAlcy5cbiIKKyIgc2l6ZSAlamQgYnl0ZXM6IGNvbnRyb2wgYXJjaGl2ZT0gJWpkIGJ5dGVzLlxuIgorbXNnc3RyICIiCisiIG55IERlYmlhbi1wYWtrZSwgdmVyc2pvbiAlcy5cbiIKKyIgc3RvcmxlaWsgJWxkIGJ5dGU6IGtvbnRyb2xsYXJraXYgPSAlemkgYnl0ZS5cbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIzMgorbXNnaWQgImFyY2hpdmUgY29udHJvbCBtZW1iZXIgc2l6ZSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjM1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJhcmNoaXZlIGhhcyBtYWxmb3JtYXR0ZWQgY29udHJvbCBtZW1iZXIgc2l6ZSAnJXMnIgorbXNnc3RyICJhcmtpdmV0IGhhciBlaSBtaXNmb3JtYSBrb250cm9sbGVuZ2Qgwqslc8K7IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjQyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJza2lwcGVkIG1lbWJlciBkYXRhIGZyb20gJXMiCittc2dpZCAic2tpcHBlZCBhcmNoaXZlIGNvbnRyb2wgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ3N0ciAiaG9wcGEgb3ZlciBtZWRsZW1zZGF0YSBmcsOlICVzIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjQ2CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiIG9sZCBkZWJpYW4gcGFja2FnZSwgdmVyc2lvbiAlcy5cbiIKKyN8ICIgc2l6ZSAlbGQgYnl0ZXM6IGNvbnRyb2wgYXJjaGl2ZT0gJXppLCBtYWluIGFyY2hpdmU9ICVsZC5cbiIKK21zZ2lkICIiCisiIG9sZCBkZWJpYW4gcGFja2FnZSwgdmVyc2lvbiAlcy5cbiIKKyIgc2l6ZSAlamQgYnl0ZXM6IGNvbnRyb2wgYXJjaGl2ZT0gJWpkLCBtYWluIGFyY2hpdmU9ICVqZC5cbiIKK21zZ3N0ciAiIgorIiBnYW1tYWwgRGViaWFuLXBha2tlLCB2ZXJzam9uICVzLlxuIgorIiBzdG9ybGVpayAlbGQgYnl0ZToga29udHJvbGxhcmtpdiA9ICV6aSwgaG92dWRhcmtpdiA9ICVsZC5cbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI1NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZy1kZWI6IGZpbGUgbG9va3MgbGlrZSBpdCBtaWdodCBiZSBhbiBhcmNoaXZlIHdoaWNoIGhhcyBiZWVuXG4iCisiZHBrZy1kZWI6ICAgIGNvcnJ1cHRlZCBieSBiZWluZyBkb3dubG9hZGVkIGluIEFTQ0lJIG1vZGVcbiIKK21zZ3N0ciAiIgorImRwa2ctZGViOiBEZXQgc2VyIHV0IHRpbCBhdCBmaWxhIGVyIGVpdCBhcmtpdiBzb20gaGFyIGJsaXR0XG4iCisiZHBrZy1kZWI6ICAgIMO4eWRlbGFndCBmb3JkaSBkZXQgZXIgbGFzdGEgbmVkIGkgQVNDSUktbW9kdXMuXG4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCUuMjU1cycgaXMgbm90IGEgZGViaWFuIGZvcm1hdCBhcmNoaXZlIgorbXNnc3RyICLCqyUuMjU1c8K7IGVyIGlra2plIGVpdCBhcmtpdiBpIERlYmlhbi1mb3JtYXQiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNjYKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgdG8gcGlwZSBpbiBjb3B5IgorbXNnc3RyICJrbGFydGUgaWtramUgc2tyaXZhIHRpbCByw7h5cmV0IGkgwqtjb3B5wrsiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNjgKK21zZ2lkICJmYWlsZWQgdG8gY2xvc2UgcGlwZSBpbiBjb3B5IgorbXNnc3RyICJrbGFydGUgaWtramUgbHVra2EgcsO4eXJldCBpIMKrY29wecK7IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6Mjg0Cittc2dpZCAiZGF0YSIKK21zZ3N0ciAiZGF0YSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMwNworbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byBkaXJlY3RvcnkiCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBza2lmdGEgdGlsIGthdGFsb2ciCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozMTAKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGRpcmVjdG9yeSIKK21zZ3N0ciAia2xhcnRlIGlra2plIG9wcHJldHRhIGthdGFsb2ciCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozMTIKK21zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gZGlyZWN0b3J5IGFmdGVyIGNyZWF0aW5nIGl0IgorbXNnc3RyICJrbGFydGUgaWtramUgc2tpZnRhIHRpbCBrYXRhbG9nZW4gZXR0ZXIgw6UgaGEgb3BwcmV0dGEgaGFuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzIzCisjLCBmdXp6eQorbXNnaWQgIjxkZWNvbXByZXNzPiIKK21zZ3N0ciAiJXM6IGRla29tcHJpbWVyaW5nIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzI1CisjLCBmdXp6eQorbXNnaWQgInBhc3RlIgorbXNnc3RyICJnb2RramVudFxuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzQyIGRwa2ctZGViL2V4dHJhY3QuYzozNjMgZHBrZy1kZWIvZXh0cmFjdC5jOjQwMgorIzogZHBrZy1kZWIvaW5mby5jOjc3CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSAuZGViIGZpbGVuYW1lIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIGtyZXYgZWl0IC5kZWItZmlsbmFtbiBzb20gcGFyYW1ldGVyIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzQ3IGRwa2ctZGViL2V4dHJhY3QuYzo0MDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIi0tJXMgbmVlZHMgYSB0YXJnZXQgZGlyZWN0b3J5LlxuIgorIlBlcmhhcHMgeW91IHNob3VsZCBiZSB1c2luZyBkcGtnIC0taW5zdGFsbCA/IgorbXNnc3RyICIiCisiLS0lcyBrcmV2IGVpbiBtw6Vsa2F0YWxvZy5cbiIKKyJLYW4gZGV0IGhlbmRhIGR1IG1laW50ZSDDpSBicnVrYSDCq2Rwa2cgLS1pbnN0YWxswrs/IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzUwIGRwa2ctZGViL2V4dHJhY3QuYzo0MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyB0YWtlcyBhdCBtb3N0IHR3byBhcmd1bWVudHMgKC5kZWIgYW5kIGRpcmVjdG9yeSkiCittc2dzdHIgIi0tJXMgdGVrIGjDuGdzdCB0byBwYXJhbWV0cmFyICguZGViIG9nIGthdGFsb2cpIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzY1CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgb25seSBvbmUgYXJndW1lbnQgKC5kZWIgZmlsZW5hbWUpIgorbXNnc3RyICItLSVzIHRlayBiZXJyZSDDqWluIHBhcmFtZXRlciAoLmRlYi1maWxuYW1uKSIKKworIzogZHBrZy1kZWIvaW5mby5jOjYzCittc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIGAvJyBmb3IgY2xlYW51cCIKK21zZ3N0ciAia2xhcnRlIGlra2plIHNraWZ0YSB0aWwga2F0YWxvZ2VuIMKrL8K7IGZvciDDpSByeWRkYSBvcHAiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMDYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImNvbnRyb2wgZmlsZSAnJXMnIgorbXNnc3RyICJmYW5uIGlra2plIMKrJS4yNTVzwrsgKGkgwqslLjI1NXPCuykiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZy1kZWI6IGAlLjI1NXMnIGNvbnRhaW5zIG5vIGNvbnRyb2wgY29tcG9uZW50IGAlLjI1NXMnXG4iCittc2dzdHIgImRwa2ctZGViOiDCqyUuMjU1c8K7IGlubmVoZWxkIGlra2plIGtvbnRyb2xsa29tcG9uZW50ZW4gwqslLjI1NXPCu1xuIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgIm9wZW4gY29tcG9uZW50IGAlLjI1NXMnIChpbiAlLjI1NXMpIGZhaWxlZCBpbiBhbiB1bmV4cGVjdGVkIHdheSIKK21zZ3N0ciAiIgorIm9wbmluZyBhdiBrb21wb25lbnRlbiDCqyUuMjU1c8K7IChpICUuMjU1cykgbWlzbHVra2FzdCBww6UgZWluIHV2ZW50YSBtw6V0ZSIKKworIzogZHBrZy1kZWIvaW5mby5jOjEyMQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiT25lIHJlcXVlc3RlZCBjb250cm9sIGNvbXBvbmVudCBpcyBtaXNzaW5nIgorbXNnaWQgIiVkIHJlcXVlc3RlZCBjb250cm9sIGNvbXBvbmVudCBpcyBtaXNzaW5nIgorbXNnaWRfcGx1cmFsICIlZCByZXF1ZXN0ZWQgY29udHJvbCBjb21wb25lbnRzIGFyZSBtaXNzaW5nIgorbXNnc3RyWzBdICJFaXR0IMO4bnNrdCBrb250cm9sbGtvbXBvbmVudCBtYW5nbGFyIgorbXNnc3RyWzFdICJFaXR0IMO4bnNrdCBrb250cm9sbGtvbXBvbmVudCBtYW5nbGFyIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTM5IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo0MjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHNjYW4gZGlyZWN0b3J5IGAlLjI1NXMnIgorbXNnc3RyICJrbGFydGUgaWtramUgc2thbm5hIGthdGFsb2dlbiDCqyUuMjU1c8K7IgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTQ4CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzdGF0IGAlLjI1NXMnIChpbiBgJS4yNTVzJykiCittc2dzdHIgImZhbm4gaWtramUgwqslLjI1NXPCuyAoaSDCqyUuMjU1c8K7KSIKKworIzogZHBrZy1kZWIvaW5mby5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgb3BlbiBgJS4yNTVzJyAoaW4gYCUuMjU1cycpIgorbXNnc3RyICJrbGFydGUgaWtramUgb3BuYSDCqyUuMjU1c8K7IChpIMKrJS4yNTVzwrspIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTY3IGRwa2ctZGViL2luZm8uYzoxODUgZHBrZy1kZWIvaW5mby5jOjE5OQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCBgJS4yNTVzJyAoaW4gYCUuMjU1cycpIgorbXNnc3RyICJrbGFydGUgaWtramUgbGVzYSDCqyUuMjU1c8K7IChpIMKrJS4yNTVzwrspIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTcwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIgJTdsZCBieXRlcywgJTVkIGxpbmVzICAgJWMgICUtMjAuMTI3cyAlLjEyN3NcbiIKK21zZ2lkICIgJTdqZCBieXRlcywgJTVkIGxpbmVzICAgJWMgICUtMjAuMTI3cyAlLjEyN3NcbiIKK21zZ3N0ciAiICU3bGQgYnl0ZSwgJTVkIGxpbmplciAgICVjICAlLTIwLjEyN3MgJS4xMjdzXG4iCisKKyM6IGRwa2ctZGViL2luZm8uYzoxNzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAgICBub3QgYSBwbGFpbiBmaWxlICAgICAgICAgICUuMjU1c1xuIgorbXNnc3RyICIgICAgIGlra2plIGVpIHZhbmxlZyBmaWwgICAgICAgICAgJS4yNTVzXG4iCisKKyM6IGRwa2ctZGViL2luZm8uYzoxODYKK21zZ2lkICIobm8gYGNvbnRyb2wnIGZpbGUgaW4gY29udHJvbCBhcmNoaXZlISlcbiIKK21zZ3N0ciAiKGluZ2Egwqtjb250cm9swrstZmlsIGkga29udHJvbGxhcmtpdmV0KVxuIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MjIyCittc2dpZCAiY291bGQgbm90IG9wZW4gdGhlIGBjb250cm9sJyBjb21wb25lbnQiCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBvcG5hIGtvbXBvbmVudGVuIMKrY29udHJvbMK7IgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MjYxCittc2dpZCAiZmFpbGVkIGR1cmluZyByZWFkIG9mIGBjb250cm9sJyBjb21wb25lbnQiCittc2dzdHIgImZlaWwgdmVkIGxlc2luZyBhdiBrb21wb25lbnRlbiDCq2NvbnRyb2zCuyIKKworIzogZHBrZy1kZWIvaW5mby5jOjI2MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyB0aGUgJyVzJyBjb21wb25lbnQiCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBsdWtrYSBmaW5kLXLDuHlyZXQiCisKKyM6IGRwa2ctZGViL2luZm8uYzoyNzgKK21zZ2lkICJFcnJvciBpbiBmb3JtYXQiCittc2dzdHIgIkZlaWwgaSBmb3JtYXQiCisKKyM6IGRwa2ctZGViL2luZm8uYzozMjgKK21zZ2lkICItLWNvbnRlbnRzIHRha2VzIGV4YWN0bHkgb25lIGFyZ3VtZW50IgorbXNnc3RyICItLWNvbnRlbnRzIHRlayBha2t1cmF0IMOpaW4gcGFyYW1ldGVyIgorCisjOiBkcGtnLWRlYi9tYWluLmM6NTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiBgJXMnIHBhY2thZ2UgYXJjaGl2ZSBiYWNrZW5kIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIicgdmVyc2pvbiBmb3IgcGFra2Vhcmtpdm1vdG9yZW4gIgorCisjOiBkcGtnLWRlYi9tYWluLmM6NzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLWJ8LS1idWlsZCA8ZGlyZWN0b3J5PiBbPGRlYj5dICAgQnVpbGQgYW4gYXJjaGl2ZS5cbiIKKyIgIC1jfC0tY29udGVudHMgPGRlYj4gICAgICAgICAgICAgIExpc3QgY29udGVudHMuXG4iCisiICAtSXwtLWluZm8gPGRlYj4gWzxjZmlsZT4gLi4uXSAgICBTaG93IGluZm8gdG8gc3Rkb3V0LlxuIgorIiAgLVd8LS1zaG93IDxkZWI+ICAgICAgICAgICAgICAgICAgU2hvdyBpbmZvcm1hdGlvbiBvbiBwYWNrYWdlKHMpXG4iCisiICAtZnwtLWZpZWxkIDxkZWI+IFs8Y2ZpZWxkPiAuLi5dICBTaG93IGZpZWxkKHMpIHRvIHN0ZG91dC5cbiIKKyIgIC1lfC0tY29udHJvbCA8ZGViPiBbPGRpcmVjdG9yeT5dIEV4dHJhY3QgY29udHJvbCBpbmZvLlxuIgorIiAgLXh8LS1leHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+ICAgRXh0cmFjdCBmaWxlcy5cbiIKKyIgIC1YfC0tdmV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gIEV4dHJhY3QgJiBsaXN0IGZpbGVzLlxuIgorIiAgLVJ8LS1yYXctZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRXh0cmFjdCBjb250cm9sIGluZm8gYW5kIGZpbGVzLlxuIgorIiAgLS1mc3lzLXRhcmZpbGUgPGRlYj4gICAgICAgICAgICAgT3V0cHV0IGZpbGVzeXN0ZW0gdGFyZmlsZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9tYWluLmM6OTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIjxkZWI+IGlzIHRoZSBmaWxlbmFtZSBvZiBhIERlYmlhbiBmb3JtYXQgYXJjaGl2ZS5cbiIKKyI8Y2ZpbGU+IGlzIHRoZSBuYW1lIG9mIGFuIGFkbWluaXN0cmF0aXZlIGZpbGUgY29tcG9uZW50LlxuIgorIjxjZmllbGQ+IGlzIHRoZSBuYW1lIG9mIGEgZmllbGQgaW4gdGhlIG1haW4gYGNvbnRyb2wnIGZpbGUuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjk5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1zaG93Zm9ybWF0PTxmb3JtYXQ+ICAgICAgICAgICAgVXNlIGFsdGVybmF0aXZlIGZvcm1hdCBmb3IgLS1zaG93LlxuIgorIiAgLXYsIC0tdmVyYm9zZSAgICAgICAgICAgICAgICAgICAgRW5hYmxlIHZlcmJvc2Ugb3V0cHV0LlxuIgorIiAgLUQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRW5hYmxlIGRlYnVnZ2luZyBvdXRwdXQuXG4iCisiICAtLW9sZCwgLS1uZXcgICAgICAgICAgICAgICAgICAgICBTZWxlY3QgYXJjaGl2ZSBmb3JtYXQuXG4iCisiICAtLW5vY2hlY2sgICAgICAgICAgICAgICAgICAgICAgICBTdXBwcmVzcyBjb250cm9sIGZpbGUgY2hlY2sgKGJ1aWxkIGJhZFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWNrYWdlcykuXG4iCisiICAteiMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTZXQgdGhlIGNvbXByZXNzaW9uIGxldmVsIHdoZW4gYnVpbGRpbmcuXG4iCisiICAtWjx0eXBlPiAgICAgICAgICAgICAgICAgICAgICAgICBTZXQgdGhlIGNvbXByZXNzaW9uIHR5cGUgdXNlZCB3aGVuICIKKyJidWlsZGluZy5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWxsb3dlZCB0eXBlczogZ3ppcCwgeHosIGJ6aXAyLCBsem1hLCAiCisibm9uZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTIxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJVc2UgYGRwa2cnIHRvIGluc3RhbGwgYW5kIHJlbW92ZSBwYWNrYWdlcyBmcm9tIHlvdXIgc3lzdGVtLCBvclxuIgorImBkc2VsZWN0JyBvciBgYXB0aXR1ZGUnIGZvciB1c2VyLWZyaWVuZGx5IHBhY2thZ2UgbWFuYWdlbWVudC4gIFBhY2thZ2VzXG4iCisidW5wYWNrZWQgdXNpbmcgYGRwa2ctZGViIC0tZXh0cmFjdCcgd2lsbCBiZSBpbmNvcnJlY3RseSBpbnN0YWxsZWQgIVxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL21haW4uYzoxMzIKK21zZ2lkICIiCisiVHlwZSBkcGtnLWRlYiAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgbWFuaXB1bGF0aW5nICouZGViIGZpbGVzO1xuIgorIlR5cGUgZHBrZyAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgaW5zdGFsbGluZyBhbmQgZGVpbnN0YWxsaW5nIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorIlNrcml2IMKrZHBrZy1kZWIgLS1oZWxwwrsgZm9yIGhqZWxwIG1lZCBlbmRyaW5nIGF2ICouZGViLWZpbGVyLlxuIgorIlNrcml2IMKrZHBrZyAtLWhlbHDCuyBmb3IgaGplbHAgbWVkIMOlIGluc3RhbGxlcmEgb2cgYXZpbnN0YWxsZXJhIHBha2thci4iCisKKyM6IGRwa2ctZGViL21haW4uYzoxNDgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgaW50ZWdlciBmb3IgLSVjOiAnJS4yNTBzJyIKK21zZ3N0ciAidWd5bGRpZyBoZWlsdGFsIGZvciAtLSVzOiDCqyUuMjUwc8K7IgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTUxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGNvbXByZXNzaW9uIGxldmVsIGZvciAtJWM6ICVsZCciCittc2dzdHIgInVneWxkaWcgaGVpbHRhbCBmb3IgLS0lczogwqslLjI1MHPCuyIKKworIzogZHBrZy1kZWIvbWFpbi5jOjE2MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGNvbXByZXNzaW9uIHR5cGUgYCVzJyEiCittc2dzdHIgInVramVuZCBrb21wcmltZXJpbmdzdHlwZSDCqyVzwrshIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzo1MgorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgZGlnaXQgKGNvZGUgJWQpIGluICVzIgorbXNnc3RyICJmaWxhIMKrJS4yNTBzwrsgZXIgw7h5ZGVsYWdkIC0gdWd5bGRpZyBzaWZmZXIgKGtvZGUgJWQpIGkgJXMiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjYwCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtICUuMjUwcyBtaXNzaW5nIgorbXNnc3RyICJmaWxhIMKrJS4yNTBzwrsgZXIgw7h5ZGVsYWdkIC0gJS4yNTBzIG1hbmdsYXIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjYzCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIG1pc3NpbmcgbmV3bGluZSBhZnRlciAlLjI1MHMiCittc2dzdHIgImZpbGEgwqslLjI1MHPCuyBlciDDuHlkZWxhZ2QgLSBtYW5nbGFyIGxpbmplc2tpZnQgZXR0ZXIgJS4yNTBzIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzo4OSBkcGtnLXNwbGl0L21haW4uYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcmVhZGluZyAlLjI1MHMiCittc2dzdHIgImZlaWwgdmVkIGxlc2luZyBhdiAlLjI1MHMiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEwMworIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgbWFnaWMgYXQgZW5kIG9mIGZpcnN0IGhlYWRlciIKK21zZ3N0ciAiIgorImZpbGEgwqslLjI1MHPCuyBlciDDuHlkZWxhZ2QgLSB1Z3lsZGlnIG1hZ2lzayBudW1tZXIgc2lzdCBpIGRldCBmw7hyc3RlIGhvdnVkZXQiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjExMworIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgcGFkZGluZyBjaGFyYWN0ZXIgKGNvZGUgJWQpIgorbXNnc3RyICJmaWxhIMKrJS4yNTBzwrsgZXIgw7h5ZGVsYWdkIC0gdWd5bGRpZyBmeWxsdGVpa24gKGtvZGUgJWQpIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gbnVsbHMgaW4gaW5mbyBzZWN0aW9uIgorbXNnc3RyICJmaWxhIMKrJS4yNTBzwrsgZXIgw7h5ZGVsYWdkIC0gbnVsbGFyIGkgaW5mb3JtYXNqb25zZGVsZW4iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyMgorIywgZnV6enkKK21zZ2lkICJmb3JtYXQgdmVyc2lvbiBudW1iZXIiCittc2dzdHIgInZlcnNqb25zbnVtbWVyIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBmb3JtYXQgdmVyc2lvbiBgJS4yNTBzJyAtIHlvdSBuZWVkIGEgbmV3ZXIgZHBrZy1zcGxpdCIKK21zZ3N0ciAiIgorImZpbGEgwqslLjI1MHPCuyBoYXIgZm9ybWF0dmVyc2pvbiDCqyUuMjUwc8K7IC0gZHUgdHJlbmcgZWluIG55YXJlIGRwa2ctc3BsaXQiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyNworIywgZnV6enkKK21zZ2lkICJwYWNrYWdlIG5hbWUiCittc2dzdHIgIiAocGFra2U6ICIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTI4CisjLCBmdXp6eQorbXNnaWQgInBhY2thZ2UgdmVyc2lvbiBudW1iZXIiCittc2dzdHIgInZlcnNqb25zbnVtbWVyIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMjkKK21zZ2lkICJwYWNrYWdlIGZpbGUgTUQ1IGNoZWNrc3VtIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEzMgorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgTUQ1IGNoZWNrc3VtIGAlLjI1MHMnIgorbXNnc3RyICJmaWxhIMKrJS4yNTBzwrsgZXIgw7h5ZGVsYWdkIC0gdWd5bGRpZyBNRDUtc2pla2tzdW0gwqslLjI1MHPCuyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTM0IGRwa2ctc3BsaXQvaW5mby5jOjEzNQorbXNnaWQgImFyY2hpdmUgdG90YWwgc2l6ZSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMzYgZHBrZy1zcGxpdC9pbmZvLmM6MTM3Cittc2dpZCAiYXJjaGl2ZSBwYXJ0IG9mZnNldCIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMzkKKyMsIGZ1enp5Cittc2dpZCAiYXJjaGl2ZSBwYXJ0IG51bWJlcnMiCittc2dzdHIgInZlcnNqb25zbnVtbWVyIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIG5vIHNsYXNoIGJldHdlZW4gcGFydCBudW1iZXJzIgorbXNnaWQgImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIG5vIHNsYXNoIGJldHdlZW4gYXJjaGl2ZSBwYXJ0IG51bWJlcnMiCittc2dzdHIgImZpbGEgwqslLjI1MHPCuyBlciDDuHlkZWxhZ2QgLSBpbmdlbiBza3LDpXN0cmVrIG1lbGxvbSBkZWxudW1tZXJhIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDUKK21zZ2lkICJudW1iZXIgb2YgYXJjaGl2ZSBwYXJ0cyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBudW1iZXIgb2YgYXJjaGl2ZSBwYXJ0cyIKK21zZ3N0ciAiZmlsYSDCqyUuMjUwc8K7IGVyIMO4eWRlbGFnZCAtIHVneWxkaWcgZGVsbnVtbWVyIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDkKKyMsIGZ1enp5Cittc2dpZCAiYXJjaGl2ZSBwYXJ0cyBudW1iZXIiCittc2dzdHIgInZlcnNqb25zbnVtbWVyIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBwYXJ0IG51bWJlciIKK21zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgYXJjaGl2ZSBwYXJ0IG51bWJlciIKK21zZ3N0ciAiZmlsYSDCqyUuMjUwc8K7IGVyIMO4eWRlbGFnZCAtIHVneWxkaWcgZGVsbnVtbWVyIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNTcKKyMsIGZ1enp5Cittc2dpZCAicGFja2FnZSBhcmNoaXRlY3R1cmUiCittc2dzdHIgIiAocGFra2U6ICIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTY2CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBtYWdpYyBhdCBlbmQgb2Ygc2Vjb25kIGhlYWRlciIKK21zZ3N0ciAiIgorImZpbGEgwqslLjI1MHPCuyBlciDDuHlkZWxhZ2QgLSB1Z3lsZGlnIG1hZ2lzayBudW1tZXIgdGlsIHNsdXR0IGkgZGV0IGFuZHJlICIKKyJob3Z1ZGV0IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gc2Vjb25kIG1lbWJlciBpcyBub3QgZGF0YSBtZW1iZXIiCittc2dzdHIgIiIKKyJmaWxhIMKrJS4yNTBzwrsgZXIgw7h5ZGVsYWdkIC0gZGVuIGFuZHJlIG1lZGxlbW1lbiBlciBpa2tqZSBlaW4gZGF0YW1lZGxlbSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTc0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIHdyb25nIG51bWJlciBvZiBwYXJ0cyBmb3IgcXVvdGVkIHNpemVzIgorbXNnc3RyICIiCisiZmlsYSDCqyUuMjUwc8K7IGVyIMO4eWRlbGFnZCAtIGZlaWwgdGFsIHDDpSBkZWxhciBpIGZvcmhvbGQgdGlsIG9wcGx5c25pbmdhbmUiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE3OAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBzaXplIGlzIHdyb25nIGZvciBxdW90ZWQgcGFydCBudW1iZXIiCittc2dzdHIgImZpbGEgwqslLjI1MHPCuyBlciDDuHlkZWxhZ2QgLSBmZWlsIHN0b3JsZWlrIGkgZm9yaG9sZCB0aWwgb3BwbHlzbmluZ2FuZSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTg0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmc3RhdCBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBrw7h5cmEgwqtmc3RhdMK7IHDDpSBkZWxmaWxhIMKrJS4yNTBzwrsiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE4OQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSB0b28gc2hvcnQiCittc2dzdHIgImZpbGEgwqslLjI1MHPCuyBlciDDuHlkZWxhZ2QgLSBmb3Iga29ydCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjAyIGRwa2ctc3BsaXQvaW5mby5jOjI0OQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgb3BlbiBhcmNoaXZlIHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia2xhcnRlIGlra2plIG9wbmEgYXJraXZkZWxmaWxhIMKrJS4yNTBzwrsiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjIwNAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIG5vdCBhbiBhcmNoaXZlIHBhcnQiCittc2dzdHIgImZpbGEgwqslLjI1MHPCuyBlciBpa2tqZSBlaW4gYXJraXZkZWwiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjIwOQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiVzOlxuIgorI3wgIiAgICBQYXJ0IGZvcm1hdCB2ZXJzaW9uOiAgICAgICAgICAgICVzXG4iCisjfCAiICAgIFBhcnQgb2YgcGFja2FnZTogICAgICAgICAgICAgICAgJXNcbiIKKyN8ICIgICAgICAgIC4uLiB2ZXJzaW9uOiAgICAgICAgICAgICAgICAlc1xuIgorI3wgIiAgICAgICAgLi4uIE1ENSBjaGVja3N1bTogICAgICAgICAgICVzXG4iCisjfCAiICAgICAgICAuLi4gbGVuZ3RoOiAgICAgICAgICAgICAgICAgJWx1IGJ5dGVzXG4iCisjfCAiICAgICAgICAuLi4gc3BsaXQgZXZlcnk6ICAgICAgICAgICAgJWx1IGJ5dGVzXG4iCisjfCAiICAgIFBhcnQgbnVtYmVyOiAgICAgICAgICAgICAgICAgICAgJWQvJWRcbiIKKyN8ICIgICAgUGFydCBsZW5ndGg6ICAgICAgICAgICAgICAgICAgICAlemkgYnl0ZXNcbiIKKyN8ICIgICAgUGFydCBvZmZzZXQ6ICAgICAgICAgICAgICAgICAgICAlbHUgYnl0ZXNcbiIKKyN8ICIgICAgUGFydCBmaWxlIHNpemUgKHVzZWQgcG9ydGlvbik6ICAlbHUgYnl0ZXNcbiIKKyN8ICJcbiIKK21zZ2lkICIiCisiJXM6XG4iCisiICAgIFBhcnQgZm9ybWF0IHZlcnNpb246ICAgICAgICAgICAgJXNcbiIKKyIgICAgUGFydCBvZiBwYWNrYWdlOiAgICAgICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIHZlcnNpb246ICAgICAgICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gYXJjaGl0ZWN0dXJlOiAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiBNRDUgY2hlY2tzdW06ICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIGxlbmd0aDogICAgICAgICAgICAgICAgICVqZCBieXRlc1xuIgorIiAgICAgICAgLi4uIHNwbGl0IGV2ZXJ5OiAgICAgICAgICAgICVqZCBieXRlc1xuIgorIiAgICBQYXJ0IG51bWJlcjogICAgICAgICAgICAgICAgICAgICVkLyVkXG4iCisiICAgIFBhcnQgbGVuZ3RoOiAgICAgICAgICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgIFBhcnQgb2Zmc2V0OiAgICAgICAgICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgIFBhcnQgZmlsZSBzaXplICh1c2VkIHBvcnRpb24pOiAgJWpkIGJ5dGVzXG4iCisiXG4iCittc2dzdHIgIiIKKyIlczpcbiIKKyIgICAgRGVsZm9ybWF0dmVyc2pvbjogICAgICAgICAgICAgICAlc1xuIgorIiAgICBEZWwgaSBwYWtrZTogICAgICAgICAgICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gdmVyc2pvbjogICAgICAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiBNRDUtc2pla2tzdW06ICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIGxlbmdkOiAgICAgICAgICAgICAgICAgICVsdSBieXRlXG4iCisiICAgICAgICAuLi4gZGVsIGZvciBrdmFyOiAgICAgICAgICAgJWx1IGJ5dGVcbiIKKyIgICAgRGVsbnVtbWVyOiAgICAgICAgICAgICAgICAgICAgICAlZC8lZFxuIgorIiAgICBEZWwtbGVuZ2Q6ICAgICAgICAgICAgICAgICAgICAgICV6aSBieXRlXG4iCisiICAgIERlbGZvcnNreXZpbmc6ICAgICAgICAgICAgICAgICAgJWx1IGJ5dGVcbiIKKyIgICAgRGVsZmlsc3RvcmxlaWsgKGJydWt0IGRlbCk6ICAgICVsdSBieXRlXG4iCisiXG4iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjIyNQorIywgZnV6enkKKyN8IG1zZ2lkICI8dW5rbm93bj4iCittc2djdHh0ICJhcmNoaXRlY3R1cmUiCittc2dpZCAiPHVua25vd24+IgorbXNnc3RyICI8dWtqZW5kPiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjQ0IGRwa2ctc3BsaXQvam9pbi5jOjEwNQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiLS0lcyByZXF1aXJlcyBvbmUgb3IgbW9yZSBwYXJ0IGZpbGUgYXJndW1lbnRzIgorbXNnc3RyICItLWluZm8gdGVrIGVpbiBlbGxlciBmbGVpcmUgZGVsZmlscGFyYW1ldHJhciIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjU1CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCVzJyBpcyBub3QgYW4gYXJjaGl2ZSBwYXJ0XG4iCittc2dzdHIgImZpbGEgwqslc8K7IGVyIGluZ2VuIGFya2l2ZGVsXG4iCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjQ0CisjLCBjLWZvcm1hdAorbXNnaWQgIlB1dHRpbmcgcGFja2FnZSAlcyB0b2dldGhlciBmcm9tICVkIHBhcnQ6ICIKK21zZ2lkX3BsdXJhbCAiUHV0dGluZyBwYWNrYWdlICVzIHRvZ2V0aGVyIGZyb20gJWQgcGFydHM6ICIKK21zZ3N0clswXSAiIgorbXNnc3RyWzFdICIiCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjUxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIG91dHB1dCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrbGFydGUgaWtramUgb3BuYSB1dGZpbGEgwqslLjI1MHPCuyIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIChyZSlvcGVuIGlucHV0IHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia2xhcnRlIGlra2plIChnamVuKW9wbmEgaW5uZGVsZmlsYSDCqyUuMjUwc8K7IgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1OAorIywgZnV6enkKKyN8IG1zZ2lkICJTa2lwcGluZyBkZXNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dpZCAic2tpcHBpbmcgc3BsaXQgcGFja2FnZSBoZWFkZXIiCittc2dzdHIgIkhvcHBhciBvdmVyIHBha2tlbiAlcy4gKElra2plIHZhbHQpXG4iCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjU5CisjLCBmdXp6eQorbXNnaWQgInNwbGl0IHBhY2thZ2UgcGFydCIKK21zZ3N0ciAibWFuZ2xhciAlcyIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NjkgZHBrZy1zcGxpdC9zcGxpdC5jOjIzNworIywgYy1mb3JtYXQKK21zZ2lkICJkb25lXG4iCittc2dzdHIgImZlcmRpZ1xuIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo4NQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlcyBgJS4yNTBzJyBhbmQgYCUuMjUwcycgYXJlIG5vdCBwYXJ0cyBvZiB0aGUgc2FtZSBmaWxlIgorbXNnc3RyICJmaWxlbmUgwqslLjI1MHPCuyBvZyDCqyUuMjUwc8K7IGjDuHlyZXIgaWtramUgdGlsIGRlbiBzYW1lIGZpbGEiCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjkwCisjLCBjLWZvcm1hdAorbXNnaWQgInRoZXJlIGFyZSBzZXZlcmFsIHZlcnNpb25zIG9mIHBhcnQgJWQgLSBhdCBsZWFzdCBgJS4yNTBzJyBhbmQgYCUuMjUwcyciCittc2dzdHIgImRldCBmaW5zdCBmbGVpcmUgdmVyc2pvbmFyIGF2IGRlbGVuICVkIC0gaWFsbGZhbGwgwqslLjI1MHPCuyBvZyDCqyUuMjUwc8K7IgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzoxMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFydCAlZCBpcyBtaXNzaW5nIgorbXNnc3RyICJkZWxlbiAlZCBtYW5nbGFyIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo0NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuIGAlcycgcGFja2FnZSBzcGxpdC9qb2luIHRvb2w7IHZlcnNpb24gJXMuXG4iCittc2dzdHIgIiIKKyJEZWJpYW4gR05VL0xpbnV4IMKrZHBrZy1zcGxpdMK7LCB2ZXJrdMO4eSBmb3IgcGFra2VkZWxpbmcgb2cgc2FtYW5zZXRqaW5nLCAiCisidmVyc2pvbiAiCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIkNvcHlyaWdodCAoQykgMTk5NC0xOTk2IElhbiBKYWNrc29uLlxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjY3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1zfC0tc3BsaXQgPGZpbGU+IFs8cHJlZml4Pl0gICAgIFNwbGl0IGFuIGFyY2hpdmUuXG4iCisiICAtanwtLWpvaW4gPHBhcnQ+IDxwYXJ0PiAuLi4gICAgICBKb2luIHBhcnRzIHRvZ2V0aGVyLlxuIgorIiAgLUl8LS1pbmZvIDxwYXJ0PiAuLi4gICAgICAgICAgICAgRGlzcGxheSBpbmZvIGFib3V0IGEgcGFydC5cbiIKKyIgIC1hfC0tYXV0byAtbyA8Y29tcGxldGU+IDxwYXJ0PiAgIEF1dG8tYWNjdW11bGF0ZSBwYXJ0cy5cbiIKKyIgIC1sfC0tbGlzdHEgICAgICAgICAgICAgICAgICAgICAgIExpc3QgdW5tYXRjaGVkIHBpZWNlcy5cbiIKKyIgIC1kfC0tZGlzY2FyZCBbPGZpbGVuYW1lPiAuLi5dICAgIERpc2NhcmQgdW5tYXRjaGVkIHBpZWNlcy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo4MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tZGVwb3RkaXIgPGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLyVzLlxuIgorIiAgLVN8LS1wYXJ0c2l6ZSA8c2l6ZT4gICAgICAgICAgICAgSW4gS2lCLCBmb3IgLXMgKGRlZmF1bHQgaXMgNDUwKS5cbiIKKyIgIC1vfC0tb3V0cHV0IDxmaWxlPiAgICAgICAgICAgICAgIEZpbGVuYW1lLCBmb3IgLWogKGRlZmF1bHQgaXNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhY2thZ2U+Xzx2ZXJzaW9uPl88YXJjaD4uZGViKS5cbiIKKyIgIC1RfC0tbnBxdWlldCAgICAgICAgICAgICAgICAgICAgIEJlIHF1aWV0IHdoZW4gLWEgaXMgbm90IGEgcGFydC5cbiIKKyIgIC0tbXNkb3MgICAgICAgICAgICAgICAgICAgICAgICAgIEdlbmVyYXRlIDguMyBmaWxlbmFtZXMuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6OTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkV4aXQgc3RhdHVzOlxuIgorIiAgMCA9IG9rXG4iCisiICAxID0gd2l0aCAtLWF1dG8sIGZpbGUgaXMgbm90IGEgcGFydFxuIgorIiAgMiA9IHRyb3VibGVcbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMDMKK21zZ2lkICJUeXBlIGRwa2ctc3BsaXQgLS1oZWxwIGZvciBoZWxwLiIKK21zZ3N0ciAiU2tyaXYgwqtkcGtnLXNwbGl0IC0taGVscMK7IGZvciBoamVscC4iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjExNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBmaWxlIGluICUuMjUwcyIKK21zZ3N0ciAidXZlbnRhIHNsdXR0IHDDpSBmaWwgaSAlLjI1MHMiCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjEyNgorbXNnaWQgInBhcnQgc2l6ZSBpcyBmYXIgdG9vIGxhcmdlIG9yIGlzIG5vdCBwb3NpdGl2ZSIKK21zZ3N0ciAiZGVsZW4gZXIgYWx0Zm9yIHN0b3IgZWxsZXIgc3RvcmxlaWtlbiBlciBpa2tqZSBwb3NpdGl2IgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInBhcnQgc2l6ZSBtdXN0IGJlIGF0IGxlYXN0ICVkIEtpQiAodG8gYWxsb3cgZm9yIGhlYWRlcikiCittc2dzdHIgImRlbGVuIG3DpSBtaW5zdCB2ZXJhIHDDpSAlZGsgKGZvciBhdCBob3Z1ZGV0IHNrYWwgZsOlIHBsYXNzKSIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjkwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIGRlcG90IGRpcmVjdG9yeSBgJS4yNTBzJyIKK21zZ3N0ciAia2xhcnRlIGlra2plIGxlc2EgZGVwb3RrYXRhbG9nZW4gwqslLjI1MHPCuyIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjEzNAorbXNnaWQgIi0tYXV0byByZXF1aXJlcyB0aGUgdXNlIG9mIHRoZSAtLW91dHB1dCBvcHRpb24iCittc2dzdHIgIi0tYXV0byBrcmV2IGF0IGR1IGJydWthciBhbHRlcm5hdGl2ZXQgLS1vdXRwdXQiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxMzYKK21zZ2lkICItLWF1dG8gcmVxdWlyZXMgZXhhY3RseSBvbmUgcGFydCBmaWxlIGFyZ3VtZW50IgorbXNnc3RyICItLWF1dG8ga3JldiBuw7h5YWt0aWcgw6lpbiBkZWxmaWxwYXJhbWV0ZXIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxNDAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrbGFydGUgaWtramUgbGVzYSBkZWxmaWxhIMKrJS4yNTBzwrsiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxNDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiRmlsZSBgJS4yNTBzJyBpcyBub3QgcGFydCBvZiBhIG11bHRpcGFydCBhcmNoaXZlLlxuIgorbXNnc3RyICJGaWxhIMKrJS4yNTBzwrsgZXIgaWtramUgZWluIGRlbCBhdiBlaXQgb3BwZGVsdCBhcmtpdi5cbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE3OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVvcGVuIHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia2xhcnRlIGlra2plIG9wbmEgZGVsZmlsYSDCqyUuMjUwc8K7IHDDpSBueXR0IgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTgyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIG5ldyBkZXBvdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrbGFydGUgaWtramUgb3BuYSBkZW4gbnllIGRlcG90ZmlsYSDCqyUuMjUwc8K7IgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTg0Cittc2dpZCAiZXh0cmFjdGluZyBzcGxpdCBwYXJ0IgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbmFtZSBuZXcgZGVwb3QgZmlsZSBgJS4yNTBzJyB0byBgJS4yNTBzJyIKK21zZ3N0ciAiIgorImtsYXJ0ZSBpa2tqZSBlbmRyYSBuYW1uZXQgcMOlIGRlbiBueWUgZGVwb3RmaWxhIGZyw6UgwqslLjI1MHPCuyB0aWwgwqslLjI1MHPCuyIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE5NgorIywgYy1mb3JtYXQKK21zZ2lkICJQYXJ0ICVkIG9mIHBhY2thZ2UgJXMgZmlsZWQgKHN0aWxsIHdhbnQgIgorbXNnc3RyICJEZWwgJWQgYXYgcGFra2VuICVzIGVyIGxhZ3JhICjDuG5za2plciBlbmTDpSAiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyMDAKK21zZ2lkICIgYW5kICIKK21zZ3N0ciAiIG9nICIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjIxNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGVsZXRlIHVzZWQtdXAgZGVwb3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia2xhcnRlIGlra2plIHNsZXR0YSBkZW4gb3BwYnJ1a3RlIGRlcG90ZmlsYSDCqyUuMjUwc8K7IgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjM1Cittc2dpZCAiSnVuayBmaWxlcyBsZWZ0IGFyb3VuZCBpbiB0aGUgZGVwb3QgZGlyZWN0b3J5OlxuIgorbXNnc3RyICJCb3NmaWxlciBzb20gbGlnZyBhdHQgaSBkZXBvdGthdGFsb2dlbjpcbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI0MCBkcGtnLXNwbGl0L3F1ZXVlLmM6MjY5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGAlLjI1MHMnIgorbXNnc3RyICJmYW5uIGlra2plIMKrJS4yNTBzwrsiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNDMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiAlcyAoJWx1IGJ5dGVzKVxuIgorbXNnaWQgIiAlcyAoJWpkIGJ5dGVzKVxuIgorbXNnc3RyICIgJXMgKCVsdSBieXRlKVxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAlcyAobm90IGEgcGxhaW4gZmlsZSlcbiIKK21zZ3N0ciAiICVzIChpa2tqZSBlaSB2YW5sZWcgZmlsKVxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjUwCittc2dpZCAiUGFja2FnZXMgbm90IHlldCByZWFzc2VtYmxlZDpcbiIKK21zZ3N0ciAiUGFra2FyIHNvbSBpa2tqZSBlciBzZXR0ZSBzYW1hbiBhdHQ6XG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIFBhY2thZ2UgJXM6IHBhcnQocykgIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFydCBmaWxlIGAlLjI1MHMnIGlzIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgImRlbGZpbGEgwqslLjI1MHPCuyBlciBpa2tqZSBlaSB2YW5sZWcgZmlsIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6Mjc4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIodG90YWwgJWx1IGJ5dGVzKVxuIgorbXNnaWQgIih0b3RhbCAlamQgYnl0ZXMpXG4iCittc2dzdHIgIihpIGFsdCAlbHUgYnl0ZSlcbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjMwNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGlzY2FyZCBgJS4yNTBzJyIKK21zZ3N0ciAia2xhcnRlIGlra2plIHNsZXR0YSDCqyUuMjUwc8K7IgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MzA1CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlbGV0ZWQgJXMuXG4iCittc2dzdHIgIlNsZXR0YSAlcy5cbiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjcwIGRwa2ctc3BsaXQvc3BsaXQuYzo3NiBkcGtnLXNwbGl0L3NwbGl0LmM6ODEKK21zZ2lkICJwYWNrYWdlIGZpZWxkIHZhbHVlIGV4dHJhY3Rpb24iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjEzMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBzb3VyY2UgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia2xhcnRlIGlra2plIG9wbmEga2plbGRlZmlsYSDCqyUuMjUwc8K7IgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTMzCittc2dpZCAidW5hYmxlIHRvIGZzdGF0IHNvdXJjZSBmaWxlIgorbXNnc3RyICJrbGFydGUgaWtramUga8O4eXJhIMKrZnN0YXTCuyBww6Uga2plbGRlZmlsYSIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjEzNQorIywgYy1mb3JtYXQKK21zZ2lkICJzb3VyY2UgZmlsZSBgJS4yNTBzJyBub3QgYSBwbGFpbiBmaWxlIgorbXNnc3RyICJramVsZGVmaWxhIMKrJS4yNTBzwrsgZXIgaW5nYSB2YW5sZWcgZmlsIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTUzCisjLCBjLWZvcm1hdAorbXNnaWQgIlNwbGl0dGluZyBwYWNrYWdlICVzIGludG8gJWQgcGFydDogIgorbXNnaWRfcGx1cmFsICJTcGxpdHRpbmcgcGFja2FnZSAlcyBpbnRvICVkIHBhcnRzOiAiCittc2dzdHJbMF0gIiIKK21zZ3N0clsxXSAiIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTkzCittc2dpZCAiIgorIkhlYWRlciBpcyB0b28gbG9uZywgbWFraW5nIHBhcnQgdG9vIGxvbmcuIFlvdXIgcGFja2FnZSBuYW1lIG9yIHZlcnNpb25cbiIKKyJudW1iZXJzIG11c3QgYmUgZXh0cmFvcmRpbmFyaWx5IGxvbmcsIG9yIHNvbWV0aGluZy4gR2l2aW5nIHVwLlxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoyNDkKK21zZ2lkICItLXNwbGl0IG5lZWRzIGEgc291cmNlIGZpbGVuYW1lIGFyZ3VtZW50IgorbXNnc3RyICItLXNwbGl0IGtyZXYgZWkga2plbGRlZmlsIHNvbSBwYXJhbWV0ZXIiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoyNTIKK21zZ2lkICItLXNwbGl0IHRha2VzIGF0IG1vc3QgYSBzb3VyY2UgZmlsZW5hbWUgYW5kIGRlc3RpbmF0aW9uIHByZWZpeCIKK21zZ3N0ciAiLS1zcGxpdCB0ZWsgaMO4Z3N0IGVpdHQga2plbGRlZmlsbmFtbiBvZyBtw6VscHJlZmlrcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjg0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLTIwMDIgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDktMjAxMCBSYXBoYWVsIEhlcnR6b2cuXG4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEwMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtLWluc3RhbGwgPGxpbms+IDxuYW1lPiA8cGF0aD4gPHByaW9yaXR5PlxuIgorIiAgICBbLS1zbGF2ZSA8bGluaz4gPG5hbWU+IDxwYXRoPl0gLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkIGEgZ3JvdXAgb2YgYWx0ZXJuYXRpdmVzIHRvIHRoZSBzeXN0ZW0uXG4iCisiICAtLXJlbW92ZSA8bmFtZT4gPHBhdGg+ICAgcmVtb3ZlIDxwYXRoPiBmcm9tIHRoZSA8bmFtZT4gZ3JvdXAgYWx0ZXJuYXRpdmUuXG4iCisiICAtLXJlbW92ZS1hbGwgPG5hbWU+ICAgICAgcmVtb3ZlIDxuYW1lPiBncm91cCBmcm9tIHRoZSBhbHRlcm5hdGl2ZXMgIgorInN5c3RlbS5cbiIKKyIgIC0tYXV0byA8bmFtZT4gICAgICAgICAgICBzd2l0Y2ggdGhlIG1hc3RlciBsaW5rIDxuYW1lPiB0byBhdXRvbWF0aWMgbW9kZS5cbiIKKyIgIC0tZGlzcGxheSA8bmFtZT4gICAgICAgICBkaXNwbGF5IGluZm9ybWF0aW9uIGFib3V0IHRoZSA8bmFtZT4gZ3JvdXAuXG4iCisiICAtLXF1ZXJ5IDxuYW1lPiAgICAgICAgICAgbWFjaGluZSBwYXJzZWFibGUgdmVyc2lvbiBvZiAtLWRpc3BsYXkgPG5hbWU+LlxuIgorIiAgLS1saXN0IDxuYW1lPiAgICAgICAgICAgIGRpc3BsYXkgYWxsIHRhcmdldHMgb2YgdGhlIDxuYW1lPiBncm91cC5cbiIKKyIgIC0tZ2V0LXNlbGVjdGlvbnMgICAgICAgICBsaXN0IG1hc3RlciBhbHRlcm5hdGl2ZSBuYW1lcyBhbmQgdGhlaXIgc3RhdHVzLlxuIgorIiAgLS1zZXQtc2VsZWN0aW9ucyAgICAgICAgIHJlYWQgYWx0ZXJuYXRpdmUgc3RhdHVzIGZyb20gc3RhbmRhcmQgaW5wdXQuXG4iCisiICAtLWNvbmZpZyA8bmFtZT4gICAgICAgICAgc2hvdyBhbHRlcm5hdGl2ZXMgZm9yIHRoZSA8bmFtZT4gZ3JvdXAgYW5kIGFzayAiCisidGhlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlciB0byBzZWxlY3Qgd2hpY2ggb25lIHRvIHVzZS5cbiIKKyIgIC0tc2V0IDxuYW1lPiA8cGF0aD4gICAgICBzZXQgPHBhdGg+IGFzIGFsdGVybmF0aXZlIGZvciA8bmFtZT4uXG4iCisiICAtLWFsbCAgICAgICAgICAgICAgICAgICAgY2FsbCAtLWNvbmZpZyBvbiBhbGwgYWx0ZXJuYXRpdmVzLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIjxsaW5rPiBpcyB0aGUgc3ltbGluayBwb2ludGluZyB0byAlcy88bmFtZT4uXG4iCisiICAoZS5nLiAvdXNyL2Jpbi9wYWdlcilcbiIKKyI8bmFtZT4gaXMgdGhlIG1hc3RlciBuYW1lIGZvciB0aGlzIGxpbmsgZ3JvdXAuXG4iCisiICAoZS5nLiBwYWdlcilcbiIKKyI8cGF0aD4gaXMgdGhlIGxvY2F0aW9uIG9mIG9uZSBvZiB0aGUgYWx0ZXJuYXRpdmUgdGFyZ2V0IGZpbGVzLlxuIgorIiAgKGUuZy4gL3Vzci9iaW4vbGVzcylcbiIKKyI8cHJpb3JpdHk+IGlzIGFuIGludGVnZXI7IG9wdGlvbnMgd2l0aCBoaWdoZXIgbnVtYmVycyBoYXZlIGhpZ2hlciBwcmlvcml0eSAiCisiaW5cbiIKKyIgIGF1dG9tYXRpYyBtb2RlLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFsdGRpciA8ZGlyZWN0b3J5PiAgICAgY2hhbmdlIHRoZSBhbHRlcm5hdGl2ZXMgZGlyZWN0b3J5LlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIGNoYW5nZSB0aGUgYWRtaW5pc3RyYXRpdmUgZGlyZWN0b3J5LlxuIgorIiAgLS1sb2cgPGZpbGU+ICAgICAgICAgICAgIGNoYW5nZSB0aGUgbG9nIGZpbGUuXG4iCisiICAtLWZvcmNlICAgICAgICAgICAgICAgICAgYWxsb3cgcmVwbGFjaW5nIGZpbGVzIHdpdGggYWx0ZXJuYXRpdmUgbGlua3MuXG4iCisiICAtLXNraXAtYXV0byAgICAgICAgICAgICAgc2tpcCBwcm9tcHQgZm9yIGFsdGVybmF0aXZlcyBjb3JyZWN0bHkgIgorImNvbmZpZ3VyZWRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBhdXRvbWF0aWMgbW9kZSAocmVsZXZhbnQgZm9yIC0tY29uZmlnIG9ubHkpXG4iCisiICAtLXZlcmJvc2UgICAgICAgICAgICAgICAgdmVyYm9zZSBvcGVyYXRpb24sIG1vcmUgb3V0cHV0LlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHF1aWV0IG9wZXJhdGlvbiwgbWluaW1hbCBvdXRwdXQuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE2MworIywgZnV6enkKKyN8IG1zZ2lkICJwYXJzZSBlcnJvciIKK21zZ2lkICJlcnJvciIKK21zZ3N0ciAidG9sa2luZ3NmZWlsIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTkzCittc2dpZCAid2FybmluZyIKK21zZ3N0ciAiw6V0dmFyaW5nIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MzU2CisjLCBjLWZvcm1hdAorbXNnaWQgInR3byBjb21tYW5kcyBzcGVjaWZpZWQ6IC0tJXMgYW5kIC0tJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjM4NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGFwcGVuZCB0byAnJXMnIgorbXNnc3RyICJrbGFydGUgaWtramUgb3BuYSBhdmx1c2luZ3NmaWwgwqslc8K7OiAlc1xuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NTU2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlICclcyciCittc2dzdHIgImtsYXJ0ZSBpa2tqZSBrw7h5cmEgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTExCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBmaWxlIHdoaWxlIHRyeWluZyB0byByZWFkICVzIgorbXNnc3RyICJ1dmVudGEgc2x1dHQgcMOlIGZpbCBpICVzIGkgJS4yNTVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTExMworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAid2hpbGUgcmVhZGluZyAlczogJXMiCittc2dzdHIgIm9tZGlyaWdlcnQgYXYgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTE5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJsaW5lIG5vdCB0ZXJtaW5hdGVkIHdoaWxlIHRyeWluZyB0byByZWFkICVzIgorbXNnc3RyICJ1dmVudGEgc2x1dHQgcMOlIGZpbCBpICVzIGkgJS4yNTVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTEzNworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXMgY29ycnVwdDogJXMiCittc2dzdHIgIiVzOiBJbnRlcm4gZ3ppcC1mZWlsOiBTa3JlaXY6IMKrJXPCuyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAibmV3bGluZXMgcHJvaGliaXRlZCBpbiB1cGRhdGUtYWx0ZXJuYXRpdmVzIGZpbGVzICglcykiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNjMKK21zZ2lkICJzbGF2ZSBuYW1lIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTcxIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDA1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgc2xhdmUgbmFtZSAlcyIKK21zZ3N0ciAidmVyZGllbiBmb3IgZmVsdGV0IMKrJXPCuyBmaW5zdCBtZWlyIGVubiDDqWluIGdvbmciCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTc0CisjLCBmdXp6eQorbXNnaWQgInNsYXZlIGxpbmsiCittc2dzdHIgInZlcmRpZW4gZm9yIGZlbHRldCDCqyVzwrsgZmluc3QgbWVpciBlbm4gw6lpbiBnb25nIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE3OAorIywgYy1mb3JtYXQKK21zZ2lkICJzbGF2ZSBsaW5rIHNhbWUgYXMgbWFpbiBsaW5rICVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTg1IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDEyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgc2xhdmUgbGluayAlcyIKK21zZ3N0ciAidmVyZGllbiBmb3IgZmVsdGV0IMKrJXPCuyBmaW5zdCBtZWlyIGVubiDDqWluIGdvbmciCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjA0Cittc2dpZCAibWFzdGVyIGZpbGUiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHBhdGggJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImFsdGVybmF0aXZlICVzIChwYXJ0IG9mIGxpbmsgZ3JvdXAgJXMpIGRvZXNuJ3QgZXhpc3QuIFJlbW92aW5nIGZyb20gbGlzdCBvZiAiCisiYWx0ZXJuYXRpdmVzLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIyOSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI0MAorbXNnaWQgInByaW9yaXR5IgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjMyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjQ5Cittc2dpZCAic2xhdmUgZmlsZSIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI0NAorIywgYy1mb3JtYXQKK21zZ2lkICJwcmlvcml0eSBvZiAlczogJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyOTcKK21zZ2lkICJzdGF0dXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyOTkKK21zZ2lkICJpbnZhbGlkIHN0YXR1cyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTMwNAorIywgZnV6enkKK21zZ2lkICJtYXN0ZXIgbGluayIKK21zZ3N0ciAidmVyZGllbiBmb3IgZmVsdGV0IMKrJXPCuyBmaW5zdCBtZWlyIGVubiDDqWluIGdvbmciCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzQ4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJkaXNjYXJkaW5nIG9ic29sZXRlIHNsYXZlIGxpbmsgJXMgKCVzKS4iCittc2dzdHIgInZlcmRpZW4gZm9yIGZlbHRldCDCqyVzwrsgZmluc3QgbWVpciBlbm4gw6lpbiBnb25nIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2OQorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MzgKK21zZ2lkICJhdXRvIG1vZGUiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MDIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NzgKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjM5Cittc2dpZCAibWFudWFsIG1vZGUiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBsaW5rIGN1cnJlbnRseSBwb2ludHMgdG8gJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MDgKK21zZ2lkICIgIGxpbmsgY3VycmVudGx5IGFic2VudCIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUxMgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyAtIHByaW9yaXR5ICVkIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTE1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIgIHNsYXZlICVzOiAlcyIKK21zZ3N0ciAia2xhcnRlIGlra2plIGvDuHlyYSAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MjIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIkN1cnJlbnQgJ2Jlc3QnIHZlcnNpb24gaXMgJyVzJy4iCittc2dzdHIgIicgdmVyc2pvbiBmb3IgcGFra2Vhcmtpdm1vdG9yZW4gIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUyNAorIywgZnV6enkKK21zZ2lkICJObyB2ZXJzaW9ucyBhdmFpbGFibGUuIgorbXNnc3RyICIoaW5nYSBza2lsZHJpbmcgdGlsZ2plbmdlbGVnKSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiVGhlcmUgaXMgJWQgY2hvaWNlIGZvciB0aGUgYWx0ZXJuYXRpdmUgJXMgKHByb3ZpZGluZyAlcykuIgorbXNnaWRfcGx1cmFsICJUaGVyZSBhcmUgJWQgY2hvaWNlcyBmb3IgdGhlIGFsdGVybmF0aXZlICVzIChwcm92aWRpbmcgJXMpLiIKK21zZ3N0clswXSAiIgorbXNnc3RyWzFdICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYwCisjLCBmdXp6eQorbXNnaWQgIlNlbGVjdGlvbiIKK21zZ3N0ciAiU2tpbGRyaW5nIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2MQorbXNnaWQgIlBhdGgiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NjEKK21zZ2lkICJQcmlvcml0eSIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2MQorbXNnaWQgIlN0YXR1cyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU4MgorIywgYy1mb3JtYXQKK21zZ2lkICJQcmVzcyBlbnRlciB0byBrZWVwIHRoZSBjdXJyZW50IGNob2ljZVsqXSwgb3IgdHlwZSBzZWxlY3Rpb24gbnVtYmVyOiAiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3MjEKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IHJlcGxhY2luZyAlcyB3aXRoIGEgbGluay4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3NjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2FuJ3QgaW5zdGFsbCB1bmtub3duIGNob2ljZSAlcyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTc4MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisic2tpcCBjcmVhdGlvbiBvZiAlcyBiZWNhdXNlIGFzc29jaWF0ZWQgZmlsZSAlcyAob2YgbGluayBncm91cCAlcykgZG9lc24ndCAiCisiZXhpc3QuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNzkwCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vdCByZW1vdmluZyAlcyBzaW5jZSBpdCdzIG5vdCBhIHN5bWxpbmsuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDQxIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDQ3CisjLCBjLWZvcm1hdAorbXNnaWQgIkNhbGwgJXMuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDUxCisjLCBjLWZvcm1hdAorbXNnaWQgIkFsdGVybmF0aXZlICVzIHVuY2hhbmdlZCBiZWNhdXNlIGNob2ljZSAlcyBpcyBub3QgYXZhaWxhYmxlLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA1NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiU2tpcCB1bmtub3duIGFsdGVybmF0aXZlICVzLiIKK21zZ3N0ciAidWtqZW5kIGtvbXByaW1lcmluZ3N0eXBlIMKrJXPCuyEiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDc3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJsaW5lIHRvbyBsb25nIG9yIG5vdCB0ZXJtaW5hdGVkIHdoaWxlIHRyeWluZyB0byByZWFkICVzIgorbXNnc3RyICJ1dmVudGEgc2x1dHQgcMOlIGZpbCBpICVzIGkgJS4yNTVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA5MCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjEwMworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2tpcCBpbnZhbGlkIGxpbmU6ICVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTMyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJyZW5hbWluZyAlcyBsaW5rIGZyb20gJXMgdG8gJXMuIgorbXNnc3RyICJQYWtrYXIgdXQgJXMgKGZyw6UgJXMpIC4uLlxuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE3MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAicmVuYW1pbmcgJXMgc2xhdmUgbGluayBmcm9tICVzIHRvICVzLiIKK21zZ3N0ciAiUGFra2FyIHV0ICVzIChmcsOlICVzKSAuLi5cbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgbmFtZSAoJXMpIG11c3Qgbm90IGNvbnRhaW4gJy8nIGFuZCBzcGFjZXMuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTkzCisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIGxpbmsgaXMgbm90IGFic29sdXRlIGFzIGl0IHNob3VsZCBiZTogJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxOTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgcGF0aCBpcyBub3QgYWJzb2x1dGUgYXMgaXQgc2hvdWxkIGJlOiAlcyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjIyNAorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBtYXN0ZXI6IGl0IGlzIGEgc2xhdmUgb2YgJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyMzIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgbGluayAlcyBpcyBhbHJlYWR5IG1hbmFnZWQgYnkgJXMuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjQxCisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIHBhdGggJXMgZG9lc24ndCBleGlzdC4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgc2xhdmUgb2YgJXM6IGl0IGlzIGEgbWFzdGVyIGFsdGVybmF0aXZlLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI1OAorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBzbGF2ZSBvZiAlczogaXQgaXMgYSBzbGF2ZSBvZiAlcyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI3OAorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBsaW5rICVzIGlzIGFscmVhZHkgbWFuYWdlZCBieSAlcyAoc2xhdmUgb2YgJXMpLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjMyNAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBhcmd1bWVudCBgJXMnIgorbXNnc3RyICJ1a2plbmQga29tcHJpbWVyaW5nc3R5cGUgwqslc8K7ISIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNDMKK21zZ2lkICItLWluc3RhbGwgbmVlZHMgPGxpbms+IDxuYW1lPiA8cGF0aD4gPHByaW9yaXR5PiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM0NiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM5NworbXNnaWQgIjxsaW5rPiBhbmQgPHBhdGg+IGNhbid0IGJlIHRoZSBzYW1lIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzQ5Cittc2dpZCAicHJpb3JpdHkgbXVzdCBiZSBhbiBpbnRlZ2VyIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzYyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIDxuYW1lPiA8cGF0aD4iCittc2dzdHIgIi0tJXMga3JldiBlaXQgLmRlYi1maWxuYW1uIHNvbSBwYXJhbWV0ZXIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzc2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIDxuYW1lPiIKK21zZ3N0ciAiLS0lcyB0ZWsgaW5nZW4gcGFyYW1ldHJhciIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzODgKK21zZ2lkICItLXNsYXZlIG9ubHkgYWxsb3dlZCB3aXRoIC0taW5zdGFsbCIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM5MAorbXNnaWQgIi0tc2xhdmUgbmVlZHMgPGxpbms+IDxuYW1lPiA8cGF0aD4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzOTkKKyMsIGMtZm9ybWF0Cittc2dpZCAibmFtZSAlcyBpcyBib3RoIHByaW1hcnkgYW5kIHNsYXZlIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDAyCisjLCBjLWZvcm1hdAorbXNnaWQgImxpbmsgJXMgaXMgYm90aCBwcmltYXJ5IGFuZCBzbGF2ZSIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQyMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhIDxmaWxlPiBhcmd1bWVudCIKK21zZ3N0ciAiLS1idWlsZCBrcmV2IGVpbiBrYXRhbG9ncGFyYW1ldGVyIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQ0OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gYCVzJyIKK21zZ3N0ciAidWtqZW50IHZhbCAtLSVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQ1MworbXNnaWQgIiIKKyJuZWVkIC0tZGlzcGxheSwgLS1xdWVyeSwgLS1saXN0LCAtLWdldC1zZWxlY3Rpb25zLCAtLWNvbmZpZywgLS1zZXQsIC0tc2V0LSIKKyJzZWxlY3Rpb25zLCAtLWluc3RhbGwsIC0tcmVtb3ZlLCAtLWFsbCwgLS1yZW1vdmUtYWxsIG9yIC0tYXV0byIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQ5MAorIywgZnV6enkKKyN8IG1zZ2lkICJyZWFkIGVycm9yIG9uIHN0YW5kYXJkIGlucHV0IgorbXNnaWQgIjxzdGFuZGFyZCBpbnB1dD4iCittc2dzdHIgImxlc2VmZWlsIGZyw6Ugc3RhbmRhcmQtaW5uIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUwMCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUwMworIywgYy1mb3JtYXQKK21zZ2lkICJubyBhbHRlcm5hdGl2ZXMgZm9yICVzLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUzMAorIywgYy1mb3JtYXQKK21zZ2lkICIlcy8lcyBpcyBkYW5nbGluZywgaXQgd2lsbCBiZSB1cGRhdGVkIHdpdGggYmVzdCBjaG9pY2UuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlcy8lcyBoYXMgYmVlbiBjaGFuZ2VkIChtYW51YWxseSBvciBieSBhIHNjcmlwdCkuIFN3aXRjaGluZyB0byBtYW51YWwgIgorInVwZGF0ZXMgb25seS4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NDIKKyMsIGMtZm9ybWF0Cittc2dpZCAic2V0dGluZyB1cCBhdXRvbWF0aWMgc2VsZWN0aW9uIG9mICVzLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU1MQorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBmb3IgJXMgbm90IHJlZ2lzdGVyZWQsIG5vdCBzZXR0aW5nLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU1NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU2MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiVGhlcmUgaXMgbm8gcHJvZ3JhbSB3aGljaCBwcm92aWRlcyAlcy4iCittc2dzdHIgIiAgJS4yNTBzIHRpbGJ5ciAlLjI1MHMsIG1lbiBvcHBzZXR0ZXQgc2thbCBmamVybmFzdC5cbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NjUgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NzUKK21zZ2lkICJOb3RoaW5nIHRvIGNvbmZpZ3VyZS4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiVGhlcmUgaXMgb25seSBvbmUgYWx0ZXJuYXRpdmUgaW4gbGluayBncm91cCAlczogJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1ODQKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgZm9yICVzIG5vdCByZWdpc3RlcmVkLCBub3QgcmVtb3ZpbmcuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTkyCisjLCBjLWZvcm1hdAorbXNnaWQgInJlbW92aW5nIG1hbnVhbGx5IHNlbGVjdGVkIGFsdGVybmF0aXZlIC0gc3dpdGNoaW5nICVzIHRvIGF1dG8gbW9kZSIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYxNworIywgYy1mb3JtYXQKK21zZ2lkICJhdXRvbWF0aWMgdXBkYXRlcyBvZiAlcy8lcyBhcmUgZGlzYWJsZWQsIGxlYXZpbmcgaXQgYWxvbmUuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjE5CisjLCBjLWZvcm1hdAorbXNnaWQgInRvIHJldHVybiB0byBhdXRvbWF0aWMgdXBkYXRlcyB1c2UgJyVzIC0tYXV0byAlcycuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjM2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1c2luZyAlcyB0byBwcm92aWRlICVzICglcykgaW4gJXMuIgorbXNnc3RyICIlcyAodW5kZXJwcm9zZXNzKTogJXNcbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImZvcmNpbmcgcmVpbnN0YWxsYXRpb24gb2YgYWx0ZXJuYXRpdmUgJXMgYmVjYXVzZSBsaW5rIGdyb3VwICVzIGlzIGJyb2tlbi4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY3VycmVudCBhbHRlcm5hdGl2ZSAlcyBpcyB1bmtub3duLCBzd2l0Y2hpbmcgdG8gJXMgZm9yIGxpbmsgZ3JvdXAgJXMuIgorbXNnc3RyICIiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiY2Fubm90IHN0YXQgJXM6ICVzIgorI34gbXNnc3RyICJmYW5uIGlra2plIMKrJS4yNTVzwrsgKGkgwqslLjI1NXPCuykiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgImZhaWxlZCB0byBleGVjICVzIgorI34gbXNnaWQgImZhaWxlZCB0byBleGVjdXRlICVzOiAlcyIKKyN+IG1zZ3N0ciAia2xhcnRlIGlra2plIGvDuHlyYSAlcyIKKworIywgZnV6enkKKyN+IG1zZ2lkICJ1bmFibGUgdG8gbWFrZSAlcyBhIHN5bWxpbmsgdG8gJXM6ICVzIgorI34gbXNnc3RyICJrbGFydGUgaWtramUgbGFnYSBzaWtyaW5nc2tvcGkgYXYgZGVuIHN5bWJvbHNrZSBsZW5ramEgwqslLjI1NXPCuyIKKworIywgZnV6enkKKyN+IG1zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCAlcyBhcyAlczogJXMiCisjfiBtc2dzdHIgImtsYXJ0ZSBpa2tqZSBpbnN0YWxsZXJhIMKrJS4yNTBzwrsgc29tIMKrJS4yNTBzwrsiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAid2hpbGUgd3JpdGluZyAlczogJXMiCisjfiBtc2dzdHIgImZlaWwgdmVkIHNrcml2aW5nIGF2IMKrJXPCuyIKKworIywgZnV6enkKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcmVhZCAlczogJXMiCisjfiBtc2dzdHIgImtsYXJ0ZSBpa2tqZSBrw7h5cmEgJXMiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAidW5hYmxlIHRvIGNsb3NlICVzOiAlcyIKKyN+IG1zZ3N0ciAia2xhcnRlIGlra2plIGvDuHlyYSAlcyIKKworIywgZnV6enkKKyN+IG1zZ2lkICJjYW5ub3Qgd3JpdGUgJXM6ICVzIgorI34gbXNnc3RyICJrbGFydGUgaWtramUga8O4eXJhICVzIgorCisjLCBmdXp6eQorI34gbXNnaWQgInVuYWJsZSB0byByZW5hbWUgZmlsZSAnJXMnIHRvICclcyciCisjfiBtc2dzdHIgImZpbm4gaWtramUgJXMgwqslLjI1MHPCuyIKKworI34gbXNnaWQgIm1hbGxvYyBmYWlsZWQgKCVsZCBieXRlcykiCisjfiBtc2dzdHIgIm1pbm5ldGlsZGVsaW5nIG1pc2x1a2thc3QgKCVsZCBieXRlKSIKKworI34gbXNnaWQgInJlYWxsb2MgZmFpbGVkICglbGQgYnl0ZXMpIgorI34gbXNnc3RyICJueXRpbGRlbGluZyBtaXNsdWtrYXN0ICglbGQgYnl0ZSkiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gdW5idWZmZXIgYCUuMjU1cyciCisjfiBtc2dzdHIgImtsYXJ0ZSBpa2tqZSBsdWtrYSBtZWxsb21sYWdlciBmb3IgwqslLjI1NXPCuyIKKworI34gbXNnaWQgInBhcnQgZmlsZSBgJS4yNTBzJyBoYXMgdHJhaWxpbmcgZ2FyYmFnZSIKKyN+IG1zZ3N0ciAiZGVsZmlsYSDCqyUuMjUwc8K7IHNsdXR0YXIgbWVkIGJlcnJlIGJvcyIKKworI34gbXNnaWQgInNpemUgJTdkIG9jY3VycyAlNWQgdGltZXNcbiIKKyN+IG1zZ3N0ciAic3RvcmxlaWsgJTdkIGbDuHJla2plbSAlNWQgZ29uZ2VyXG4iCisKKyN+IG1zZ2lkICJvdXQgb2YgbWVtb3J5IHB1c2hpbmcgZXJyb3IgaGFuZGxlcjogIgorI34gbXNnc3RyICJpa2tqZSBub2sgbWlubmUgdW5kZXIgZmVpbGhhbmR0ZXJpbmc6ICIKKworI34gbXNnaWQgInVuYWJsZSB0byB1bmxvY2sgZHBrZyBzdGF0dXMgZGF0YWJhc2UiCisjfiBtc2dzdHIgImtsYXJ0ZSBpa2tqZSBsw6VzYSBvcHAgZHBrZy1zdGF0dXNkYXRhYmFzZW4iCisKKyN+IG1zZ2lkICJjb3B5IGluZm8gZmlsZSBgJS4yNTVzJyIKKyN+IG1zZ3N0ciAia29waWVyIGluZm9ybWFzam9uc2ZpbGEgwqslLjI1NXPCuyIKKworI34gbXNnaWQgInBhcnNlIGVycm9yIgorI34gbXNnc3RyICJ0b2xraW5nc2ZlaWwiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gd3JpdGUgcGFyc2luZyB3YXJuaW5nIgorI34gbXNnc3RyICJrbGFydGUgaWtramUgc2tyaXZhIHRvbGtpbmdzw6V0dmFyaW5nIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHJ1biAlcyAoJS4yNTBzKSIKKyN+IG1zZ3N0ciAia2xhcnRlIGlra2plIGvDuHlyYSAlcyAoJS4yNTBzKSIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIHNoZWxsICglLjI1MHMpIgorI34gbXNnc3RyICJrbGFydGUgaWtramUga8O4eXJhIHNrYWwgKCUuMjUwcykiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gY2hlY2sgZm9yIGV4aXN0ZW5jZSBvZiBgJS4yNTBzJyIKKyN+IG1zZ3N0ciAia2xhcnRlIGlra2plIHNqZWtrYSBvbSDCqyUuMjUwc8K7IGZpbnN0IgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgcm0gZm9yIGNsZWFudXAiCisjfiBtc2dzdHIgImtsYXJ0ZSBpa2tqZSBrw7h5cmEgwqtybcK7IGZvciBvcHByeWRkaW5nIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICIlcyBkZWJ1Z2dpbmcgb3B0aW9uLCAtLWRlYnVnPTxvY3RhbD4gb3IgLUQ8b2N0YWw+OlxuIgorI34gIlxuIgorI34gIiBudW1iZXIgIHJlZi4gaW4gc291cmNlICAgZGVzY3JpcHRpb25cbiIKKyN+ICIgICAgICAxICAgZ2VuZXJhbCAgICAgICAgICAgR2VuZXJhbGx5IGhlbHBmdWwgcHJvZ3Jlc3MgaW5mb3JtYXRpb25cbiIKKyN+ICIgICAgICAyICAgc2NyaXB0cyAgICAgICAgICAgSW52b2NhdGlvbiBhbmQgc3RhdHVzIG9mIG1haW50YWluZXIgc2NyaXB0c1xuIgorI34gIiAgICAgMTAgICBlYWNoZmlsZSAgICAgICAgICBPdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWRcbiIKKyN+ICIgICAgMTAwICAgZWFjaGZpbGVkZXRhaWwgICAgTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWRcbiIKKyN+ICIgICAgIDIwICAgY29uZmYgICAgICAgICAgICAgT3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZVxuIgorI34gIiAgICAyMDAgICBjb25mZmRldGFpbCAgICAgICBMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGVcbiIKKyN+ICIgICAgIDQwICAgZGVwY29uICAgICAgICAgICAgRGVwZW5kZW5jaWVzIGFuZCBjb25mbGljdHNcbiIKKyN+ICIgICAgNDAwICAgZGVwY29uZGV0YWlsICAgICAgTG90cyBvZiBkZXBlbmRlbmNpZXMvY29uZmxpY3RzIG91dHB1dFxuIgorI34gIiAgMTAwMDAgICB0cmlnZ2VycyAgICAgICAgICBUcmlnZ2VyIGFjdGl2YXRpb24gYW5kIHByb2Nlc3NpbmdcbiIKKyN+ICIgIDIwMDAwICAgdHJpZ2dlcnNkZXRhaWwgICAgTG90cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzXG4iCisjfiAiICA0MDAwMCAgIHRyaWdnZXJzc3R1cGlkICAgIFNpbGx5IGFtb3VudHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2Vyc1xuIgorI34gIiAgIDEwMDAgICB2ZXJ5dmVyYm9zZSAgICAgICBMb3RzIG9mIGRyaXZlbCBhYm91dCBlZyB0aGUgZHBrZy9pbmZvICIKKyN+ICJkaXJlY3RvcnlcbiIKKyN+ICIgICAyMDAwICAgc3R1cGlkbHl2ZXJib3NlICAgSW5zYW5lIGFtb3VudHMgb2YgZHJpdmVsXG4iCisjfiAiXG4iCisjfiAiRGVidWdnaW5nIG9wdGlvbnMgYXJlIGJlIG1peGVkIHVzaW5nIGJpdHdpc2Utb3IuXG4iCisjfiAiTm90ZSB0aGF0IHRoZSBtZWFuaW5ncyBhbmQgdmFsdWVzIGFyZSBzdWJqZWN0IHRvIGNoYW5nZS5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIiVzIGF2bHVzaW5nc3ZhbCwgLS1kZWJ1Zz08b2t0YWw+IGVsbGVyIC1EPG9rdGFsPjpcbiIKKyN+ICJcbiIKKyN+ICIgVmVyZGkgIFJlZi4ga2plbGRldGVrc3QgIFNraWxkcmluZ1xuIgorI34gIiAgICAgMSAgZ2VuZXJhbCAgICAgICAgICAgR2VuZXJlbGwgZnJhbWdhbmdzaW5mb3JtYXNqb25cbiIKKyN+ICIgICAgIDIgIHNjcmlwdHMgICAgICAgICAgIFV0ZsO4cmluZyBvZyBzdGF0dXMgZm9yIHZlZGxpa2VoYWxkc3NrcmlwdFxuIgorI34gIiAgICAxMCAgZWFjaGZpbGUgICAgICAgICAgVmlzIG1lbGRpbmcgZm9yIGt2YXIgZmlsIHNvbSB2ZXJ0IGJlaGFuZGxhXG4iCisjfiAiICAgMTAwICBlYWNoZmlsZWRldGFpbCAgICBWaXMgbXlramUgaW5mb3JtYXNqb24gZm9yIGt2YXIgZmlsIHNvbSB2ZXJ0ICIKKyN+ICJiZWhhbmRsYVxuIgorI34gIiAgICAyMCAgY29uZmYgICAgICAgICAgICAgVmlzIG1lbGRpbmcgZm9yIGt2YXIgb3Bwc2V0dHNmaWxcbiIKKyN+ICIgICAyMDAgIGNvbmZmaWxlZGV0YWlsICAgIFZpcyBteWtqZSBpbmZvcm1hc2pvbiBmb3Iga3ZhciBvcHBzZXR0c2ZpbFxuIgorI34gIiAgICA0MCAgZGVwY29uICAgICAgICAgICAgVmlzIHBha2tla3JhdiBvZyBrb25mbGlrdGFyXG4iCisjfiAiICAgNDAwICBkZXBjb25kZXRhaWwgICAgICBWaXMgbXlramUgaW5mb3JtYXNqb24gb20gcGFra2VrcmF2IG9nICIKKyN+ICJrb25mbGlrdGFyXG4iCisjfiAiICAxMDAwICB2ZXJ5dmVyYm9zZSAgICAgICBWZWxkaWcgbXlramUgaW5mb3JtYXNqb24gb20gdC5kLiBrYXRhbG9nZW4gZHBrZy8iCisjfiAiaW5mb1xuIgorI34gIiAgMjAwMCAgc3R1cGlkbHl2ZXJib3NlICAgVWZhdHRlbGVnIG15a2plIGluZm9ybWFzam9uXG4iCisjfiAiXG4iCisjfiAiQXZsdXNpbmdzdmFsYSBrYW4ga29tYmluZXJhc3QgbWVkIGxvZ2lzayBlbGxlci5cbiIKKyN+ICJMZWdnIG1lcmtlIHRpbCBhdCB0eWRpbmdhbmUgb2cgdmVyZGlhbmUga2FuIHZlcnRhIGVuZHJhLlxuIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICIlcyBmb3JjaW5nIG9wdGlvbnMgLSBjb250cm9sIGJlaGF2aW91ciB3aGVuIHByb2JsZW1zIGZvdW5kOlxuIgorI34gIiAgd2FybiBidXQgY29udGludWU6ICAtLWZvcmNlLTx0aGluZz4sPHRoaW5nPiwuLi5cbiIKKyN+ICIgIHN0b3Agd2l0aCBlcnJvcjogICAgLS1yZWZ1c2UtPHRoaW5nPiw8dGhpbmc+LC4uLiB8IC0tbm8tZm9yY2UtIgorI34gIjx0aGluZz4sLi4uXG4iCisjfiAiIEZvcmNpbmcgdGhpbmdzOlxuIgorI34gIiAgYWxsIFshXSAgICAgICAgICAgICAgICBTZXQgYWxsIGZvcmNlIG9wdGlvbnNcbiIKKyN+ICIgIGRvd25ncmFkZSBbKl0gICAgICAgICAgUmVwbGFjZSBhIHBhY2thZ2Ugd2l0aCBhIGxvd2VyIHZlcnNpb25cbiIKKyN+ICIgIGNvbmZpZ3VyZS1hbnkgICAgICAgICAgQ29uZmlndXJlIGFueSBwYWNrYWdlIHdoaWNoIG1heSBoZWxwIHRoaXMgb25lXG4iCisjfiAiICBob2xkICAgICAgICAgICAgICAgICAgIFByb2Nlc3MgaW5jaWRlbnRhbCBwYWNrYWdlcyBldmVuIHdoZW4gb24gaG9sZFxuIgorI34gIiAgYmFkLXBhdGggICAgICAgICAgICAgICBQQVRIIGlzIG1pc3NpbmcgaW1wb3J0YW50IHByb2dyYW1zLCBwcm9ibGVtcyAiCisjfiAibGlrZWx5XG4iCisjfiAiICBub3Qtcm9vdCAgICAgICAgICAgICAgIFRyeSB0byAoZGUpaW5zdGFsbCB0aGluZ3MgZXZlbiB3aGVuIG5vdCByb290XG4iCisjfiAiICBvdmVyd3JpdGUgICAgICAgICAgICAgIE92ZXJ3cml0ZSBhIGZpbGUgZnJvbSBvbmUgcGFja2FnZSB3aXRoIGFub3RoZXJcbiIKKyN+ICIgIG92ZXJ3cml0ZS1kaXZlcnRlZCAgICAgT3ZlcndyaXRlIGEgZGl2ZXJ0ZWQgZmlsZSB3aXRoIGFuIHVuZGl2ZXJ0ZWQgIgorI34gInZlcnNpb25cbiIKKyN+ICIgIGJhZC12ZXJpZnkgICAgICAgICAgICAgSW5zdGFsbCBhIHBhY2thZ2UgZXZlbiBpZiBpdCBmYWlscyBhdXRoZW50aWNpdHkgIgorI34gImNoZWNrXG4iCisjfiAiICBkZXBlbmRzLXZlcnNpb24gWyFdICAgIFR1cm4gZGVwZW5kZW5jeSB2ZXJzaW9uIHByb2JsZW1zIGludG8gd2FybmluZ3NcbiIKKyN+ICIgIGRlcGVuZHMgWyFdICAgICAgICAgICAgVHVybiBhbGwgZGVwZW5kZW5jeSBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzXG4iCisjfiAiICBjb25mbmV3IFshXSAgICAgICAgICAgIEFsd2F5cyB1c2UgdGhlIG5ldyBjb25maWcgZmlsZXMsIGRvbid0IHByb21wdFxuIgorI34gIiAgY29uZm9sZCBbIV0gICAgICAgICAgICBBbHdheXMgdXNlIHRoZSBvbGQgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHRcbiIKKyN+ICIgIGNvbmZkZWYgWyFdICAgICAgICAgICAgVXNlIHRoZSBkZWZhdWx0IG9wdGlvbiBmb3IgbmV3IGNvbmZpZyBmaWxlcyBpZiAiCisjfiAib25lXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIGlzIGF2YWlsYWJsZSwgZG9uJ3QgcHJvbXB0LiBJZiBubyBkZWZhdWx0IGNhbiBiZSAiCisjfiAiZm91bmQsXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIHlvdSB3aWxsIGJlIHByb21wdGVkIHVubGVzcyBvbmUgb2YgdGhlIGNvbmZvbGQgIgorI34gIm9yXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmZuZXcgb3B0aW9ucyBpcyBhbHNvIGdpdmVuXG4iCisjfiAiICBjb25mbWlzcyBbIV0gICAgICAgICAgIEFsd2F5cyBpbnN0YWxsIG1pc3NpbmcgY29uZmlnIGZpbGVzXG4iCisjfiAiICBjb25mYXNrIFshXSAgICAgICAgICAgIE9mZmVyIHRvIHJlcGxhY2UgY29uZmlnIGZpbGVzIHdpdGggbm8gbmV3ICIKKyN+ICJ2ZXJzaW9uc1xuIgorI34gIiAgYnJlYWtzIFshXSAgICAgICAgICAgICBJbnN0YWxsIGV2ZW4gaWYgaXQgd291bGQgYnJlYWsgYW5vdGhlciBwYWNrYWdlXG4iCisjfiAiICBjb25mbGljdHMgWyFdICAgICAgICAgIEFsbG93IGluc3RhbGxhdGlvbiBvZiBjb25mbGljdGluZyBwYWNrYWdlc1xuIgorI34gIiAgYXJjaGl0ZWN0dXJlIFshXSAgICAgICBQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyBhcmNoaXRlY3R1cmVcbiIKKyN+ICIgIG92ZXJ3cml0ZS1kaXIgWyFdICAgICAgT3ZlcndyaXRlIG9uZSBwYWNrYWdlJ3MgZGlyZWN0b3J5IHdpdGggYW5vdGhlcidzICIKKyN+ICJmaWxlXG4iCisjfiAiICB1bnNhZmUtaW8gWyFdICAgICAgICAgIERvIG5vdCBwZXJmb3JtIHNhZmUgSS9PIG9wZXJhdGlvbnMgd2hlbiAiCisjfiAidW5wYWNraW5nXG4iCisjfiAiICByZW1vdmUtcmVpbnN0cmVxIFshXSAgIFJlbW92ZSBwYWNrYWdlcyB3aGljaCByZXF1aXJlIGluc3RhbGxhdGlvblxuIgorI34gIiAgcmVtb3ZlLWVzc2VudGlhbCBbIV0gICBSZW1vdmUgYW4gZXNzZW50aWFsIHBhY2thZ2VcbiIKKyN+ICJcbiIKKyN+ICJXQVJOSU5HIC0gdXNlIG9mIG9wdGlvbnMgbWFya2VkIFshXSBjYW4gc2VyaW91c2x5IGRhbWFnZSB5b3VyICIKKyN+ICJpbnN0YWxsYXRpb24uXG4iCisjfiAiRm9yY2luZyBvcHRpb25zIG1hcmtlZCBbKl0gYXJlIGVuYWJsZWQgYnkgZGVmYXVsdC5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIiVzIHZhbCBmb3IgdHZhbmcgLSBzdHlyZXIgaGFuZHRlcmluZ2EgdmVkIHByb2JsZW06XG4iCisjfiAiICDDpXR2YXIsIG1lbiBoYWxkIGZyYW06IC0tZm9yY2UtPHRpbmc+LDx0aW5nPiwuLi5cbiIKKyN+ICIgIHN0b3BwIG1lZCBmZWlsOiAgICAgLS1yZWZ1c2UtPHRpbmc+LDx0aW5nPiwuLi4gfCAtLW5vLWZvcmNlLTx0aW5nPiwuLi5cbiIKKyN+ICIgVHZpbmcgZ2plbm5vbTpcbiIKKyN+ICIgIGFsbCAgICAgICAgICAgICAgICAgICAgU2V0IGFsbGUgdmFsIGZvciB0dmFuZ1xuIgorI34gIiAgYXV0by1zZWxlY3QgWypdICAgICAgICBWZWwgLyBpa2tqZSB2ZWwgcGFra2FyIGZvciBpbnN0YWxsZXJpbmcgb2cgIgorI34gImZqZXJuaW5nXG4iCisjfiAiICBkb3duZ3JhZGUgWypdICAgICAgICAgIEJ5dCB1dCBlaW4gcGFra2UgbWVkIGVpbiB0aWRsZWdhcmUgdmVyc2pvblxuIgorI34gIiAgY29uZmlndXJlLWFueSAgICAgICAgICBTZXQgb3BwIGFsbGUgcGFra2Fyc29tIGthbiBoamVscGEgZGVubmVcbiIKKyN+ICIgIGhvbGQgICAgICAgICAgICAgICAgICAgSGFuZHRlciBwYWtrYXIgc2rDuGx2IG9tIGRlaSBlciBoYWxkbmUgdGlsYmFrZVxuIgorI34gIiAgYmFkLXBhdGggICAgICAgICAgICAgICBTdGlnZW4gKFBBVEgpIG1hbmdsYXIgdmlrdGlnZSBwcm9ncmFtLCBmb3J2ZW50ICIKKyN+ICJwcm9ibGVtXG4iCisjfiAiICBub3Qtcm9vdCAgICAgICAgICAgICAgIFByw6V2IMOlIChhdilpbnN0YWxsZXJhIHRpbmcgdXRhbiDDpSB2ZXJhIHJvb3RcbiIKKyN+ICIgIG92ZXJ3cml0ZSAgICAgICAgICAgICAgU2tyaXYgb3ZlciBlaSBmaWwgZnLDpSBlaW4gcGFra2UgbWVkIGVpbiBhbm5hblxuIgorI34gIiAgb3ZlcndyaXRlLWRpdmVydGVkICAgICBTa3JpdiBvdmVyIGVpIG9tZGlyaWdlcmV0IGZpbCBtZWQgZWkgc29tIGlra2plICIKKyN+ICJlciBvbWRpcmlnZXJ0XG4iCisjfiAiICBiYWQtdmVyaWZ5ICAgICAgICAgICAgIEluc3RhbGxlciBwYWtrZSwgc2rDuGx2IG9tIGhhbiBpa2tqZSBrYW4gIgorI34gImdvZGtqZW5uYXN0XG4iCisjfiAiICBkZXBlbmRzLXZlcnNpb24gWyFdICAgIEdqZXIgYWxsZSB2ZXJzam9uc2tyYXYgdGlsIMOldHZhcmluZ2FyXG4iCisjfiAiICBkZXBlbmRzIFshXSAgICAgICAgICAgIEdqZXIgYWxsZSBwYWtrZWtyYXYgdGlsIMOldHZhcmluZ2FyXG4iCisjfiAiICBjb25mbmV3IFshXSAgICAgICAgICAgIEJydWsgYWxsdGlkIG55ZSBvcHBzZXR0c2ZpbGVyIHV0YW4gw6Ugc3DDuHJqYVxuIgorI34gIiAgY29uZm9sZCBbIV0gICAgICAgICAgICBCcnVrIGFsbHRpZCBnYW1sZSBvcHBzZXR0c2ZpbGVyIHV0YW4gw6Ugc3DDuHJqYVxuIgorI34gIiAgY29uZmRlZiBbIV0gICAgICAgICAgICBCcnVrIHN0YW5kYXJkaW5uc3RpbGxpbmdhIGZvciBueWUgb3Bwc2V0dHNmaWxlclxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICB1dGFuIMOlIHNww7hyamEuIERlcnNvbSBkZXQgaWtramUgZmluc3QgZWlcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgc3RhbmRhcmRpbm5zdGlsbGluZywgdmlsIGR1IGJsaSBzcHVyZCBtZWQgbWluZHJlICIKKyN+ICJkdVxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICBpIHRpbGxlZ2cgaGFyIHZhbHQgwqtjb25mb2xkwrsgZWxsZXIgwqtjb25mbmV3wrsuXG4iCisjfiAiICBjb25mbWlzcyBbIV0gICAgICAgICAgIEluc3RhbGxlciBhbGx0aWQgb3Bwc2V0dHNmaWxlciBzb20gbWFuZ2xhclxuIgorI34gIiAgY29uZmxpY3RzIFshXSAgICAgICAgICBUaWxsYXQgaW5zdGFsbGFzam9uIGF2IHBha2thciBzb20gZXIgaSBrb25mbGlrdFxuIgorI34gIiAgYXJjaGl0ZWN0dXJlIFshXSAgICAgICBIYW5kdGVyIMOyZyBwYWtrYXIgbWVkIGZlaWwgYXJraXRla3R1clxuIgorI34gIiAgb3ZlcndyaXRlLWRpciBbIV0gICAgICBTa3JpdiBvdmVyIGthdGFsb2dhciBmcsOlIGVpbiBwYWtrZSBtZWQgZmlsZXIgZnLDpSAiCisjfiAiZWluIGFubmFuXG4iCisjfiAiICByZW1vdmUtcmVpbnN0cmVxIFshXSAgIEZqZXJuIHBha2thciBzb20ga3JldiBpbnN0YWxsYXNqb25cbiIKKyN+ICIgIHJlbW92ZS1lc3NlbnRpYWwgWyFdICAgRmplcm4gZWluIG7DuGR2ZW5kaWcgcGFra2VcbiIKKyN+ICJcbiIKKyN+ICLDhVRWQVJJTkcgLSBGdW5rc2pvbmFyIG1lcmt0ZSBtZWQgWyFdIGthbiDDuHlkZWxlZ2dqYSBpbnN0YWxsYXNqb25lbiAiCisjfiAiYWx2b3JsZWcuXG4iCisjfiAiVmFsYSBzb20gZXIgbWVya3RlIG1lZCBbKl0gZXIgc2zDpXR0IHDDpSBzb20gc3RhbmRhcmQuXG4iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBkcGtnLXNwbGl0IHRvIHNlZSBpZiBpdCdzIHBhcnQgb2YgYSBtdWx0aXBhcnRlciIKKyN+IG1zZ3N0ciAiIgorI34gImtsYXJ0ZSBpa2tqZSBrw7h5cmEgwqtkcGtnLXNwbGl0wrsgZm9yIMOlIHNqw6Ugb20gcGFra2VuIGVyIGVpbiBkZWwgYXYgZWluICIKKyN+ICJmbGVpcmRlbHQgcGFra2UiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlY2wgZGVic2lnLXZlcmlmeSIKKyN+IG1zZ3N0ciAia2xhcnRlIGlra2plIGvDuHlyYSBkZWJzaWctdmVyaWZ5IgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgZHBrZy1kZWIgdG8gZXh0cmFjdCBjb250cm9sIGluZm9ybWF0aW9uIgorI34gbXNnc3RyICJrbGFydGUgaWtramUga8O4eXJhIMKrZHBrZy1kZWLCuyBmb3Igw6UgaGVudGEgdXQga29udHJvbGxpbmZvcm1hc2pvbiIKKworI34gbXNnaWQgInVuYWJsZSB0byBleGVjIGRwa2ctZGViIHRvIGdldCBmaWxlc3lzdGVtIGFyY2hpdmUiCisjfiBtc2dzdHIgImtsYXJ0ZSBpa2tqZSBrw7h5cmEgwqtkcGtnLWRlYsK7IGZvciDDpSBoZW50YSBmaWxzeXN0ZW1hcmtpdiIKKworI34gbXNnaWQgInVuYWJsZSB0byBkZWxldGUgZGlzYXBwZWFyaW5nIGNvbnRyb2wgaW5mbyBmaWxlIGAlLjI1MHMnIgorI34gbXNnc3RyICIiCisjfiAia2xhcnRlIGlra2plIHNsZXR0YSBkZW4gZm9yc3Zpbm5hbmRlIGtvbnRyb2xsaW5mb3JtYXNqb25zZmlsYSDCqyUuMjUwc8K7IgorCisjfiBtc2dpZCAiZHBrZzogJXMgbm90IGZvdW5kLlxuIgorI34gbXNnc3RyICJkcGtnOiBmYW5uIGlra2plICVzLlxuIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIC4uLi9ERUJJQU4iCisjfiBtc2dzdHIgImtsYXJ0ZSBpa2tqZSBza2lmdGEga2F0YWxvZyB0aWwgLi4uL0RFQklBTiIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIHRhciAtY2YiCisjfiBtc2dzdHIgImtsYXJ0ZSBpa2tqZSBrw7h5cmEgwqt0YXIgLWNmwrsiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gbWFrZSB0bXBmaWxlIChjb250cm9sKSIKKyN+IG1zZ3N0ciAia2xhcnRlIGlra2plIG9wcHJldHRhIG1lbGxvbWJlbHMgZmlsIChrb250cm9sbCkiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gdW5saW5rIHRtcGZpbGUgKGNvbnRyb2wpLCAlcyIKKyN+IG1zZ3N0ciAia2xhcnRlIGlra2plIGZqZXJuYSBsZW5ramUgdGlsIG1lbGxvbWJlbHMgZmlsIChrb250cm9sbCksICVzIgorCisjfiBtc2dpZCAiY29udHJvbCIKKyN+IG1zZ3N0ciAia29udHJvbGwiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gcmV3aW5kIHRtcGZpbGUgKGNvbnRyb2wpIgorI34gbXNnc3RyICJrbGFydGUgaWtramUgaG9wcGEgdGlsYmFrZSBpIG1lbGxvbWJlbHMgZmlsIChrb250cm9sbCkiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZnN0YXQgdG1wZmlsZSAoY29udHJvbCkiCisjfiBtc2dzdHIgImtsYXJ0ZSBpa2tqZSBrw7h5cmEgwqtmc3RhdMK7IHDDpSBtZWxsb21iZWxzIGZpbCAoa29udHJvbGwpIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgZmluZCIKKyN+IG1zZ3N0ciAia2xhcnRlIGlra2plIGvDuHlyYSDCq2ZpbmTCuyIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIHNoIC1jIG12IGZvby8qICZjIgorI34gbXNnc3RyICJrbGFydGUgaWtramUga8O4eXJhIMKrc2ggLWMgbXYgZm9vLyogJmPCuyIKKworI34gbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtICUuMjUwcyBsZW5ndGggY29udGFpbnMgbnVsbHMiCisjfiBtc2dzdHIgImZpbGEgwqslLjI1MHPCuyBlciDDuHlkZWxhZ2QgLSBsZW5nZGEgcMOlICUuMjUwcyBpbm5laGVsZCBudWxsYXIiCisKKyN+IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBuZWdhdGl2ZSBtZW1iZXIgbGVuZ3RoICV6aSIKKyN+IG1zZ3N0ciAiZmlsYSDCqyUuMjUwc8K7IGVyIMO4eWRlbGFnZCAtIG5lZ2F0aXYgbGVuZ2QgcMOlIG1lZGxlbSAlemkiCisKKyN+IG1zZ2lkICJ2ZXJzaW9uIG51bWJlciIKKyN+IG1zZ3N0ciAidmVyc2pvbnNudW1tZXIiCisKKyN+IG1zZ2lkICJoZWFkZXIgaW5mbyBtZW1iZXIiCisjfiBtc2dzdHIgImhvdnVkaW5mb3JtYXNqb25zbWVkbGVtIgorCisjLCBmdXp6eQorI358IG1zZ2lkICJza2lwcGVkIG1lbWJlciBkYXRhIGZyb20gJXMiCisjfiBtc2dpZCAic2tpcHBlZCBjb250cm9sIGFyZWEgZnJvbSAlcyIKKyN+IG1zZ3N0ciAiaG9wcGEgb3ZlciBtZWRsZW1zZGF0YSBmcsOlICVzIgorCisjLCBmdXp6eQorI34gbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgdGVtcG9yYXJ5IGRpcmVjdG9yeSIKKyN+IG1zZ3N0ciAia2xhcnRlIGlra2plIGxhZ2EgbWVsbG9tYmVscyBrYXRhbG9nbmFtbiIKKworI34gbXNnaWQgImluZm9fc3BldyIKKyN+IG1zZ3N0ciAiaW5mb19zcGV3IgorCisjLCBmdXp6eQorI358IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBkcGtnLWRlYiB0byBleHRyYWN0IGNvbnRyb2wgaW5mb3JtYXRpb24iCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgZHBrZy1kZWIgdG8gZXh0cmFjdCBmaWVsZCB2YWx1ZSIKKyN+IG1zZ3N0ciAia2xhcnRlIGlra2plIGvDuHlyYSDCq2Rwa2ctZGViwrsgZm9yIMOlIGhlbnRhIHV0IGtvbnRyb2xsaW5mb3JtYXNqb24iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAidW5hYmxlIHRvIHN0YXQgJXM6ICVzIgorI34gbXNnc3RyICJrbGFydGUgaWtramUga8O4eXJhICVzIgorCisjfiBtc2dpZCAiJWQgcmVxdWVzdGVkIGNvbnRyb2wgY29tcG9uZW50cyBhcmUgbWlzc2luZyIKKyN+IG1zZ3N0ciAiJWQgw7huc2t0ZSBrb250cm9sbGtvbXBvbmVudCBtYW5nbGFyIgorCisjfiBtc2dpZCAiY2F0IChkYXRhKSIKKyN+IG1zZ3N0ciAiY2F0IChkYXRhKSIKKworIywgZnV6enkKKyN+IG1zZ2lkICJmYWlsZWQgdG8gb3BlbiBwaXBlIGRlc2NyaXB0b3IgYDEnIGluIHBhc3RlIgorI34gbXNnc3RyICJrbGFydGUgaWtramUga8O4eXJhIMKrZmRvcGVuIHAxwrsgaSBpbm5zZXRqaW5nIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHdyaXRlIHRvIGd6aXAgLWRjIgorI34gbXNnc3RyICJrbGFydGUgaWtramUgc2tyaXZhIHRpbCDCq2d6aXAgLWRjwrsiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gY2xvc2UgZ3ppcCAtZGMiCisjfiBtc2dzdHIgImtsYXJ0ZSBpa2tqZSBsdWtrYSDCq2d6aXAgLWRjwrsiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gc3lzY2FsbCBsc2VlayB0byBmaWxlcyBhcmNoaXZlIHBvcnRpb24iCisjfiBtc2dzdHIgImtsYXJ0ZSBpa2tqZSB1dGbDuHJhIHN5c3RlbWthbGxldCDCq2xzZWVrwrsgcMOlIGFya2l2ZmlsZGVsZW4iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gZXhlYyBta3NwbGl0IgorI34gbXNnc3RyICJrbGFydGUgaWtramUga8O4eXJhIMKrbWtzcGxpdMK7IgorCisjLCBmdXp6eQorI34gbXNnaWQgIi0tJXMgbmVlZHMgYSBkaXZlcnQtdG8gYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tYnVpbGQga3JldiBlaW4ga2F0YWxvZ3BhcmFtZXRlciIKKworIywgZnV6enkKKyN+IG1zZ2lkICItLSVzIG5lZWRzIGEgPHBhY2thZ2U+IGFyZ3VtZW50IgorI34gbXNnc3RyICItLSVzIHRyZW5nIG1pbnN0IGVpdHQgcGFra2VuYW1uIHNvbSBwYXJhbWV0ZXIiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiY2Fubm90IG9wZW4gZGl2ZXJzaW9uczogJXMiCisjfiBtc2dzdHIgImtsYXJ0ZSBpa2tqZSBvcG5hIG9tZGlyaWdlcmluZ3NmaWwiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAibWlzc2luZyBhbHRuYW1lIgorI34gbXNnc3RyICJtYW5nbGFyICVzIgorCisjLCBmdXp6eQorI34gbXNnaWQgImludGVybmFsIGVycm9yIC0gYmFkIG1vZGUgYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IEludGVybiBnemlwLWZlaWw6IExhczogwqslc8K7IgorCisjLCBmdXp6eQorI34gbXNnaWQgImNhbm5vdCBzdGF0IG9sZCBuYW1lIGAlcyc6ICVzIgorI34gbXNnc3RyICJmYW5uIGlra2plIMKrJS4yNTVzwrsgKGkgwqslLjI1NXPCuykiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAicmVuYW1lOiByZW5hbWUgYCVzJyB0byBgJXMnOiAlcyIKKyN+IG1zZ3N0ciAiIgorI34gImRwa2c6ICVzOiDDhXR2YXJpbmcgLSBrbGFydGUgaWtramUgZW5kcmEgbmFtbmV0IHDDpSDCqyUuMjUwc8K7IHRpbCDCqyUuMjUwc8K7OiAiCisjfiAiJXNcbiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJjcmVhdGUgZGl2ZXJzaW9ucy1uZXc6ICVzIgorI34gbXNnc3RyICJsZXNlZmVpbCBpIG9tZGlyaWdlcmluZ3NmaWxhIFtpXSIKKworIywgZnV6enkKKyN+IG1zZ2lkICJ3cml0ZSBkaXZlcnNpb25zLW5ldzogJXMiCisjfiBtc2dzdHIgIm9tZGlyaWdlcnQgbWVkICVzIgorCisjLCBmdXp6eQorI34gbXNnaWQgImNsb3NlIGRpdmVyc2lvbnMtbmV3OiAlcyIKKyN+IG1zZ3N0ciAib21kaXJpZ2VydCBtZWQgJXMiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiY3JlYXRlIG5ldyBkaXZlcnNpb25zLW9sZDogJXMiCisjfiBtc2dzdHIgImxlc2VmZWlsIGkgb21kaXJpZ2VyaW5nc2ZpbGEgW2ldIgorCisjLCBmdXp6eQorI34gbXNnaWQgImluc3RhbGwgbmV3IGRpdmVyc2lvbnM6ICVzIgorI34gbXNnc3RyICJrbGFydGUgaWtramUgaW5zdGFsbGVyYSBueSB2ZXJzam9uIGF2IMKrJS4yNTVzwrsiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiaW50ZXJuYWwgZXJyb3I6ICVzIGNvcnJ1cHQ6ICVzIgorI34gbXNnc3RyICIlczogSW50ZXJuIGd6aXAtZmVpbDogU2tyZWl2OiDCqyVzwrsiCisKKyN+IG1zZ2lkICJkcGtnLWRlYiAtIGVycm9yOiAlcyAoYCVzJykgZG9lc24ndCBjb250YWluIGFueSBkaWdpdHNcbiIKKyN+IG1zZ3N0ciAiZHBrZy1kZWIgLSBmZWlsOiAlcyAowqslc8K7KSBpbm5laGVsZCBpbmdlbiB0YWxcbiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJEZWJpYW4gcmV2aXNpb24iCisjfiBtc2dzdHIgIicgdmVyc2pvbiBmb3IgcGFra2Vhcmtpdm1vdG9yZW4gIgorCisjfiBtc2dpZCAiJWQgZXJyb3JzIGluIGNvbnRyb2wgZmlsZSIKKyN+IG1zZ3N0ciAiJWQgZmVpbCBpIGtvbnRyb2xsZmlsYSIKKworIywgZnV6enkKKyN+IG1zZ2lkICJjYW4ndCByZWFkZGlyICVzOiAlcyIKKyN+IG1zZ3N0ciAia2xhcnRlIGlra2plIG9wbmEgYXZsdXNpbmdzZmlsIMKrJXPCuzogJXNcbiIKKworI34gbXNnaWQgImZhaWxlZCBpbiBidWZmZXJfd3JpdGUoZmQpICglaSwgcmV0PSVsaSk6ICVzIgorI34gbXNnc3RyICJmZWlsYSBpIGJ1ZmZlcl93cml0ZShmZCkgKCVpLCByZXQ9JWxpKTogJXMiCisKKyN+IG1zZ2lkICJlb2YgaW4gYnVmZmVyX3dyaXRlKHN0cmVhbSk6ICVzIgorI34gbXNnc3RyICJzbHV0dCBww6UgZmlsIGkgYnVmZmVyX3dyaXRlKHN0cmVhbSk6ICVzIgorCisjfiBtc2dpZCAiZXJyb3IgaW4gYnVmZmVyX3dyaXRlKHN0cmVhbSk6ICVzIgorI34gbXNnc3RyICJmZWlsIGkgYnVmZmVyX3dyaXRlKHN0cmVhbSk6ICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIGluIGJ1ZmZlcl9yZWFkKGZkKTogJXMiCisjfiBtc2dzdHIgIm1pc2x1a2thc3QgaSBidWZmZXJfcmVhZChmZCk6ICVzIgorCisjfiBtc2dpZCAiZXJyb3IgaW4gYnVmZmVyX3JlYWQoc3RyZWFtKTogJXMiCisjfiBtc2dzdHIgImZlaWwgaSBidWZmZXJfcmVhZChzdHJlYW0pOiAlcyIKKworIywgZnV6enkKKyN+IG1zZ2lkICIlcyByZXR1cm5lZCBlcnJvciBleGl0IHN0YXR1cyAlZCIKKyN+IG1zZ3N0ciAidW5kZXJwcm9zZXNzZW4gJXMgcmV0dXJuZXJ0ZSBmZWlsc3RhdHVzICVkIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiVzIGtpbGxlZCBieSBzaWduYWwgKCVzKSVzIgorI34gbXNnc3RyICJ1bmRlcnByb3Nlc3NlbiAlcyBkcmVwZW4gYXYgc2lnbmFsICglcyklcyIKKworIywgZnV6enkKKyN+IG1zZ2lkICIiCisjfiAiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbmNlIHZlcnNpb24gMiBvclxuIgorI34gImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LlxuIgorI34gbXNnc3RyICIiCisjfiAiRGV0dGUgZXIgZnJpIHByb2dyYW12YXJlLiBEdSBmaW5uIGtvcGllcmluZ3N2aWxrw6VyYSBpXG4iCisjfiAiR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgdmVyc2pvbiAyIGVsbGVyIG55YXJlLiBEZXQgZmluc3QgSU5HRU4gIgorI34gImdhcmFudGkuXG4iCisjfiAiU2rDpSDCq2Rwa2ctZGViIC0tbGljZW5jZcK7IGZvciBkZXRhbGphci5cbiIKKworIywgZnV6enkKKyN+IG1zZ2lkICIiCisjfiAiXG4iCisjfiAiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbmNlIHZlcnNpb24gMiBvclxuIgorI34gImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LlxuIgorI34gbXNnc3RyICIiCisjfiAiRGV0dGUgZXIgZnJpIHByb2dyYW12YXJlLiBEdSBmaW5uIGtvcGllcmluZ3N2aWxrw6VyYSBpXG4iCisjfiAiR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgdmVyc2pvbiAyIGVsbGVyIG55YXJlLiBEZXQgZmluc3QgSU5HRU4gIgorI34gImdhcmFudGkuXG4iCisjfiAiU2rDpSDCq2Rwa2ctZGViIC0tbGljZW5jZcK7IGZvciBkZXRhbGphci5cbiIKKworIywgZnV6enkKKyN+IG1zZ2lkICIlczogZmFpbGVkIHRvIGV4ZWMgJyVzICVzJyIKKyN+IG1zZ3N0ciAiJXM6IEtsYXJ0ZSBpa2tqZSBrw7h5cmEgZ3ppcCAlcyIKKworI34gbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIGVycm9yOiByZWFkOiBgJXMnIgorI34gbXNnc3RyICIlczogSW50ZXJuIGd6aXAtZmVpbDogTGFzOiDCqyVzwrsiCisKKyN+IG1zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCBlcnJvcjogd3JpdGU6IGAlcyciCisjfiBtc2dzdHIgIiVzOiBJbnRlcm4gZ3ppcC1mZWlsOiBTa3JlaXY6IMKrJXPCuyIKKworI34gbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIGVycm9yOiByZWFkKCVpKSAhPSB3cml0ZSglaSkiCisjfiBtc2dzdHIgIiVzOiBJbnRlcm4gZ3ppcC1mZWlsOiBsZXNlKCVpKSAhPSBza3JpdmUoJWkpIgorCisjfiBtc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIGVycm9yOiByZWFkOiBgJXMnIgorI34gbXNnc3RyICIlczogaW50ZXJuIGJ6aXAyLWZlaWw6IGxhczogwqslc8K7IgorCisjfiBtc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIGVycm9yOiB3cml0ZTogYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IGludGVybiBiemlwMi1mZWlsOiBza3JlaXY6IMKrJXPCuyIKKworI34gbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiBlcnJvcjogcmVhZCglaSkgIT0gd3JpdGUoJWkpIgorI34gbXNnc3RyICIlczogaW50ZXJuIGJ6aXAyLWZlaWw6IGxlc2UoJWkpICE9IHNrcml2ZSglaSkiCisKKyN+IG1zZ2lkICJEb24ndCBmb3JnZXQgdG8gZm9yZWdyb3VuZCAoYGZnJykgdGhpcyBwcm9jZXNzIHdoZW4geW91J3JlIGRvbmUgIVxuIgorI34gbXNnc3RyICIiCisjfiAiSWtramUgZ2zDuHltIMOlIHNldGphIGRlbm5lIHByb3Nlc3NlbiBpIGZyYW1ncnVubmVuICjCq2ZnwrspIG7DpXIgZHUgZXIgIgorI34gImZlcmRpZy5cbiIKKworIywgZnV6enkKKyN+IG1zZ2lkICIiCisjfiAiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvclxuIgorI34gImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LlxuIgorI34gIlNlZSAlcyAtLWxpY2Vuc2UgZm9yIGNvcHlyaWdodCBhbmQgbGljZW5zZSBkZXRhaWxzLlxuIgorI34gbXNnc3RyICIiCisjfiAiRGV0dGUgZXIgZnJpIHByb2dyYW12YXJlLiBEdSBmaW5uIGtvcGllcmluZ3N2aWxrw6VyYSBpXG4iCisjfiAiR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgdmVyc2pvbiAyIGVsbGVyIG55YXJlLiBEZXQgZmluc3QgSU5HRU4gIgorI34gImdhcmFudGkuXG4iCisjfiAiU2rDpSDCq2Rwa2ctZGViIC0tbGljZW5jZcK7IGZvciBkZXRhbGphci5cbiIKKworI34gbXNnaWQgInVuYWJsZSB0byBnZXQgdW5pcXVlIGZpbGVuYW1lIGZvciBjb250cm9sIGluZm8iCisjfiBtc2dzdHIgImtsYXJ0ZSBpa2tqZSBmw6UgdW5pa3QgZmlsbmFtbiBmb3Iga29udHJvbGxpbmZvcm1hc2pvbiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIG1hbmFnZW1lbnQgcHJvZ3JhbSBxdWVyeSB0b29sXG4iCisjfiBtc2dzdHIgIsK7IHBha2tlaGFuZHRlcmluZ3Nwcm9ncmFtXG4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiIgorI34gIlVzZSAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgcXVlcnlpbmcgcGFja2FnZXM7XG4iCisjfiAiVXNlIC0tbGljZW5zZSBmb3IgY29weXJpZ2h0IGxpY2Vuc2UgYW5kIGxhY2sgb2Ygd2FycmFudHkgKEdOVSBHUEwpLiIKKyN+IG1zZ3N0ciAiIgorI34gIkJydWsgLS1oZWxwIGZvciBoamVscCBvbSBwYWtrZXNww7hyamluZy5cbiIKKyN+ICJCcnVrIC0tbGljZW5zZSBmb3Igb3BwaGF2c3JldHRsaXNlbnMgb2cgZ2FyYW50aWZyw6Vza3JpdmluZyAoR05VIEdQTCkuXG4iCisjfiAiXG4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiZmFpbGVkIHRvIGNob3duICVzOiAlcyIKKyN+IG1zZ3N0ciAia2xhcnRlIGlra2plIGvDuHlyYSAlcyAoJS4yNTBzKSIKKworIywgZnV6enkKKyN+IG1zZ2lkICJmYWlsZWQgdG8gY2htb2QgJXM6ICVzIgorI34gbXNnc3RyICJrbGFydGUgaWtramUga8O4eXJhICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGZvcmsgZm9yIGNsZWFudXAiCisjfiBtc2dzdHIgImtsYXJ0ZSBpa2tqZSBzcGxpdHRhIHByb3Nlc3MgZm9yIG9wcHJ5ZGRpbmciCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gd2FpdCBmb3Igcm0gY2xlYW51cCIKKyN+IG1zZ3N0ciAia2xhcnRlIGlra2plIHZlbnRhIHDDpSDCq3Jtwrstb3BwcnlkZGluZyIKKworI34gbXNnaWQgInJtIGNsZWFudXAgZmFpbGVkLCBjb2RlICVkXG4iCisjfiBtc2dzdHIgIsKrcm3Cuy1vcHByeWRkaW5nIG1pc2x1a2thc3QsIGtvZGUgJWRcbiIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIHJtIC1yZiIKKyN+IG1zZ3N0ciAia2xhcnRlIGlra2plIGvDuHlyYSDCq3JtIC1yZsK7IgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHJlYWQgYGNvbnRyb2wnIChpbiBgJS4yNTVzJykiCisjfiBtc2dzdHIgImtsYXJ0ZSBpa2tqZSBsZXNhIMKrY29udHJvbMK7IChpIMKrJS4yNTVzwrspIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHNlZWsgYmFjayIKKyN+IG1zZ3N0ciAia2xhcnRlIGlra2plIHPDuGtqYSBiYWtvdmVyIgorCisjfiBtc2dpZCAidW5rbm93biBkYXRhIHR5cGUgYCVpJyBpbiBidWZmZXJfd3JpdGVcbiIKKyN+IG1zZ3N0ciAidWtqZW5kIGRhdGF0eXBlIMKrJWnCuyBpIGJ1ZmZlcl93cml0ZVxuIgorCisjfiBtc2dpZCAidW5rbm93biBkYXRhIHR5cGUgYCVpJyBpbiBidWZmZXJfcmVhZFxuIgorI34gbXNnc3RyICJ1a2plbmQgZGF0YXR5cGUgwqslacK7IGkgYnVmZmVyX3JlYWRcbiIKKworI34gbXNnaWQgIndhaXQgZm9yIHNoZWxsIGZhaWxlZCIKKyN+IG1zZ3N0ciAidmVudGluZyBww6Ugc2thbCBtaXNsdWtrYXN0IgorCisjfiBtc2dpZCAicmVhZCBlcnJvciBpbiBkaXZlcnNpb25zIFtpXSIKKyN+IG1zZ3N0ciAibGVzZWZlaWwgaSBvbWRpcmlnZXJpbmdzZmlsYSBbaV0iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiY2htb2QiCisjfiBtc2dzdHIgImhhbGQgdGlsYmFrZSIKKworIywgZnV6enkKKyN+IG1zZ2lkICJmYWlsZWQgdG8gJXMgJyUuMjU1cyciCisjfiBtc2dzdHIgImtsYXJ0ZSBpa2tqZSBza2lmdGEga2F0YWxvZyB0aWwgwqslLjI1NXPCuyIKKworI34gbXNnaWQgIndhaXQgZm9yIGRwa2ctc3BsaXQgZmFpbGVkIgorI34gbXNnc3RyICJ2ZW50aW5nYSBww6UgwqtkcGtnLXNwbGl0wrsgbWlzbHVra2FzdCIKKworI34gbXNnaWQgImNhbm5vdCByZW1vdmUgZmlsZSBgJS4yNTBzJyIKKyN+IG1zZ3N0ciAia2xhcnRlIGlra2plIGZqZXJuYSBmaWxhIMKrJS4yNTBzwrsiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiYWJvcnRpbmciCisjfiBtc2dzdHIgIsOldHZhcmluZyIKKworIywgZnV6enkKKyN+IG1zZ2lkICJjYW5ub3Qgb3BlbiBzdGF0b3ZlcnJpZGU6ICVzIgorI34gbXNnc3RyICJrbGFydGUgaWtramUgb3BuYSDCq3N0YXRvdmVycmlkZcK7LWZpbGEiCisKKyN+IG1zZ2lkICJmYWlsZWQgd3JpdGUgZHVyaW5nIGhhc2hyZXBvcnQiCisjfiBtc2dzdHIgImtsYXJ0ZSBpa2tqZSBza3JpdmEgdW5kZXIgwqtoYXNocmVwb3J0wrsiCisKKyN+IG1zZ2lkICJjb25maWd1cmF0aW9uIGVycm9yOiB1bmtub3duIG9wdGlvbiAlcyIKKyN+IG1zZ3N0ciAib3Bwc2V0dHNmZWlsOiB1a2plbnQgdmFsICVzIgorCisjfiBtc2dpZCAiY29uZmlndXJhdGlvbiBlcnJvcjogJXMgZG9lcyBub3QgdGFrZSBhIHZhbHVlIgorI34gbXNnc3RyICJvcHBzZXR0c2ZlaWw6ICVzIHNrYWwgaWtramUgaGEgbm9rb24gcGFyYW1ldGVyIgorCisjLCBmdXp6eQorI34gbXNnaWQgImRwa2c6IHZlcnNpb24gJyVzJyBoYXMgYmFkIHN5bnRheDogJXNcbiIKKyN+IG1zZ3N0ciAidmVyc2pvbiBiIGhhciB1Z3lsZGlnIHN5bnRha3M6ICVzXG4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAidW5leGVjcHRlZCBlbmQgb2YgbGluZSBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKKyN+IG1zZ3N0ciAidXZlbnRhIHNsdXR0IHDDpSBsaW5qZSBpIHBha2tlbmFtbmV0IHDDpSBsaW5qZSAlZCIKKworIywgZnV6enkKKyN+IG1zZ2lkICItLWNoZWNrLXN1cHBvcnRlZCB0YWtlcyBubyBhcmd1bWVudHMiCisjfiBtc2dzdHIgIi0tJXMgdGVrIGluZ2VuIHBhcmFtZXRyYXIiCisKKyN+IG1zZ2lkICItLWZvcmdldC1vbGQtdW5hdmFpbCB0YWtlcyBubyBhcmd1bWVudHMiCisjfiBtc2dzdHIgIi0tZm9yZ2V0LW9sZC11bmF2YWlsIHRlayBpbmdlbiBhcmd1bWVudCIKKworIywgZnV6enkKKyN+IG1zZ2lkICJjb3VsZCBub3Qgb3BlbiBzdGRlcnIgZm9yIG91dHB1dCEgJXMiCisjfiBtc2dzdHIgImtsYXJ0ZSBpa2tqZSBvcG5hIGtvbXBvbmVudGVuIMKrY29udHJvbMK7IgorCisjLCBmdXp6eQorI34gbXNnaWQgIiVzOiB1bmtub3duIG9wdGlvbiBgJXMnIgorI34gbXNnc3RyICJ1a2plbnQgdmFsIC0tJXMiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiJXM6IHRvbyBtYW55IGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiLS0lcyB0ZWsgaW5nZW4gcGFyYW1ldHJhciIKKworIywgZnV6enkKKyN+IG1zZ2lkICIlczogZmFpbGVkIHRvIGxvY2sgZGlyIGZvciBlZGl0aW5nISAlcyIKKyN+IG1zZ3N0ciAiJXM6IEtsYXJ0ZSBpa2tqZSBrw7h5cmEgZ3ppcCAlcyIKKworIywgZnV6enkKKyN+IG1zZ2lkICJ1bmFibGUgdG8gb3BlbiAlczogJXMiCisjfiBtc2dzdHIgImtsYXJ0ZSBpa2tqZSBrw7h5cmEgJXMiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAidW5hYmxlIHRvIGNsb3NlICVzIGFmdGVyIHJlYWQ6ICVzIgorI34gbXNnc3RyICJrbGFydGUgaWtramUgbHVra2EgZXR0ZXIgbGVzaW5nOiDCqyUuMjU1c8K7IgorCisjLCBmdXp6eQorI34gbXNnaWQgIiVzOiBjcmVhdGluZyBuZXcgc2VjdGlvbiBgJXMnIgorI34gbXNnc3RyICJmZWlsIHZlZCBvcHByZXR0aW5nIGF2IGthdGFsb2dlbiDCqyUuMjU1c8K7IgorCisjLCBmdXp6eQorI34gbXNnaWQgIiVzOiBubyBlbnRyeSBmb3IgZmlsZSBgJXMnIgorI34gbXNnc3RyICJrb3BpZXIgaW5mb3JtYXNqb25zZmlsYSDCqyUuMjU1c8K7IgorCisjLCBmdXp6eQorI34gbXNnaWQgInVuYWJsZSB0byBiYWNrdXAgb2xkICVzLCBnaXZpbmcgdXA6ICVzIgorI34gbXNnc3RyICJrbGFydGUgaWtramUga8O4eXJhICVzIgorCisjLCBmdXp6eQorI34gbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyAlczogJXMiCisjfiBtc2dzdHIgImtsYXJ0ZSBpa2tqZSBpbnN0YWxsZXJhIMKrJS4yNTBzwrsgc29tIMKrJS4yNTBzwrsiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiJXM6IGNvdWxkIG5vdCBiYWNrdXAgJXMgaW4gJXM6ICVzIgorI34gbXNnc3RyICJrbGFydGUgaWtramUgb3BuYSBhdmx1c2luZ3NmaWwgwqslc8K7OiAlc1xuIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiVzOiB3YXJuaW5nIC0gdW5hYmxlIHRvIHVubG9jayAlczogJXMiCisjfiBtc2dzdHIgImRwa2c6IMOFdHZhcmluZyAtIGZhbm4gaWtramUgJXMgwqslLjI1MHPCuzogJXNcbiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcmVhZCAlczogJWQiCisjfiBtc2dzdHIgImtsYXJ0ZSBpa2tqZSBrw7h5cmEgJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gb3BlbiB0bXBmaWxlIChjb250cm9sKSwgJXMiCisjfiBtc2dzdHIgImtsYXJ0ZSBpa2tqZSBvcG5hIG1lbGxvbWJlbHMgZmlsIChrb250cm9sbCksICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIG9wZW4gdG1wZmlsZSAoZGF0YSksICVzIgorI34gbXNnc3RyICJrbGFydGUgaWtramUgb3BuYSBtZWxsb21iZWxzIGZpbCAoZGF0YSksICVzIgorCisjfiBtc2dpZCAiaW52YWxpZCBudW1iZXIgZm9yIC0tY29tbWFuZC1mZCIKKyN+IG1zZ3N0ciAidWd5bGRpZyB0YWwgZm9yIC0tY29tbWFuZC1mZCIKKworI34gbXNnaWQgInVuYWJsZSB0byByZXdpbmQgYXQgc3RhcnQgb2YgdnNucHJpbnRmIgorI34gbXNnc3RyICJrbGFydGUgaWtramUgaG9wcGEgdGlsYmFrZSB0aWwgc3RhcnRlbiBhdiB2c25wcmludGYiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gdHJ1bmNhdGUgaW4gdnNucHJpbnRmIgorI34gbXNnc3RyICJrbGFydGUgaWtramUga29ydGEgYXYgaSB2c25wcmludGYiCisKKyN+IG1zZ2lkICJ3cml0ZSBlcnJvciBpbiB2c25wcmludGYiCisjfiBtc2dzdHIgInNrcml2ZWZlaWwgaSB2c25wcmludGYiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gc3RhdCBpbiB2c25wcmludGYiCisjfiBtc2dzdHIgImtsYXJ0ZSBpa2tqZSBmw6Ugc3RhdHVzIGkgdnNucHJpbnRmIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHJld2luZCBpbiB2c25wcmludGYiCisjfiBtc2dzdHIgImtsYXJ0ZSBpa2tqZSBob3BwYSB0aWxiYWtlIGkgdnNucHJpbnRmIgorCisjfiBtc2dpZCAicmVhZCBlcnJvciBpbiB2c25wcmludGYgdHJ1bmNhdGVkIgorI34gbXNnc3RyICJsZXNlZmVpbCBpIHZzbnByaW50ZiBrdXR0YSBhdiIKKworI34gbXNnaWQgIlN5c3RlbSBlcnJvciBuby4lZCIKKyN+IG1zZ3N0ciAiU3lzdGVtZmVpbCBuci4gJWQiCisKKyN+IG1zZ2lkICJTaWduYWwgbm8uJWQiCisjfiBtc2dzdHIgIlNpZ25hbCBuci4gJWQiCisKKyN+IG1zZ2lkICJkcGtnOiB3YXJuaW5nIC0gJXMgcmV0dXJuZWQgZXJyb3IgZXhpdCBzdGF0dXMgJWRcbiIKKyN+IG1zZ3N0ciAiZHBrZzogw4V0dmFyaW5nIC0gJXMgcmV0dXJuZXJ0ZSBmZWlsc3RhdHVzICVkXG4iCisKKyN+IG1zZ2lkICJkcGtnOiB3YXJuaW5nIC0gJXMga2lsbGVkIGJ5IHNpZ25hbCAoJXMpJXNcbiIKKyN+IG1zZ3N0ciAiZHBrZzogw4V0dmFyaW5nIC0gJXMgZHJlcGVuIGF2IHNpZ25hbCAoJXMpJXNcbiIKKworI34gbXNnaWQgImZhaWxlZCB0byByZWFkIGAlcycgYXQgbGluZSAlZCIKKyN+IG1zZ3N0ciAia2xhcnRlIGlra2plIGxlc2Egwqslc8K7IHZlZCBsaW5qZSDCqyVkwrsiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAicGFyc2UgZXJyb3IsIGluIGZpbGUgYCUuMjU1cycgbmVhciBsaW5lICVkIgorI34gbXNnc3RyICIlcywgaSBmaWxhIMKrJS4yNTVzwrsgbsOmciBsaW5qZSAlZCIKKworI34gbXNnaWQgIiBwYWNrYWdlIGAlLjI1NXMnIgorI34gbXNnc3RyICIgcGFra2VuIMKrJS4yNTVzwrsiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gcmVhbGxvYyBmb3IgdmFyaWFibGUgYnVmZmVyIgorI34gbXNnc3RyICJrbGFydGUgaWtramUgdGlsZGVsYSBww6Ugbnl0dCBmb3IgdmFyaWFiZWwgYnVmZmVyIgorCisjfiBtc2dpZCAicHJvY2Vzc19hcmNoaXZlIC4uLiAgYWxyZWFkeSBkaXNhcHBlYXJlZCAhIgorI34gbXNnc3RyICJwcm9jZXNzX2FyY2hpdmUgLi4uIG1hbmdsYXIgZnLDpSBmw7hyISIKKworI34gbXNnaWQgImdvYmJsZSByZXBsYWNlZCBmaWxlIGAlLjI1NXMnIgorI34gbXNnc3RyICJMYXMgb2cgaG9wcGEgZm9yYmkgZmlsYSDCqyUuMjU1c8K7IgorCisjfiBtc2dpZCAiZHBrZzogJXM6IHdhcm5pbmcgLSBmYWlsZWQgdG8gcmVtb3ZlIGAlLjI1MHMnOiAlc1xuIgorI34gbXNnc3RyICJkcGtnOiAlczogw4V0dmFyaW5nIC0ga2xhcnRlIGlra2plIGZqZXJuYSDCqyUuMjUwc8K7OiAlc1xuIgorCisjfiBtc2dpZCAiLS1hdWRpdCBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudHMiCisjfiBtc2dzdHIgIi0tYXVkaXQgdGVrIGluZ2VuIHBhcmFtZXRyYXIiCisKKyN+IG1zZ2lkICItLXlldC10by11bnBhY2sgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnRzIgorI34gbXNnc3RyICItLXlldC10by11bnBhY2sgdGVrIGluZ2VuIHBhcmFtZXRyYXIiCisKKyN+IG1zZ2lkICItLWFzc2VydC0qIGRvZXMgbm90IHRha2UgYW55IGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiLS1hc3NlcnQtKiB0ZWsgaW5nZW4gcGFyYW1ldHJhciIKKworI34gbXNnaWQgIi0tcHJlZGVwLXBhY2thZ2UgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tcHJlZGVwLXBhY2thZ2UgdGVrIGluZ2VuIHBhcmFtZXRyYXIiCisKKyN+IG1zZ2lkICItLXByaW50LWFyY2hpdGVjdHVyZSBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudCIKKyN+IG1zZ3N0ciAiLS1wcmludC1hcmNoaXRlY3R1cmUgdGVrIGluZ2VuIHBhcmFtZXRyYXIiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gc3RhdCBpbnN0YWxsZWQgJXMgc2NyaXB0IGAlLjI1MHMnIgorI34gbXNnc3RyICJmYW5uIGlra2plIGRldCBpbnN0YWxsZXJ0ZSAlcy1za3JpcHRldCDCqyUuMjUwc8K7IgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHN0YXQgbmV3ICVzIHNjcmlwdCBgJS4yNTBzJyIKKyN+IG1zZ3N0ciAiZmFubiBpa2tqZSBkZW4gbnllICVzLXNrcmlwdGV0IMKrJS4yNTBzwrsiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gZXhlY3V0ZSBuZXcgJXMiCisjfiBtc2dzdHIgImtsYXJ0ZSBpa2tqZSBrw7h5cmEgbnl0dCAlcyIKKworI34gbXNnaWQgImRwa2c6IHdhcm5pbmcgLSB1bmFibGUgdG8gc3RhdCAlcyBgJS4yNTBzJzogJXNcbiIKKyN+IG1zZ3N0ciAiZHBrZzogw4V0dmFyaW5nIC0gZmFubiBpa2tqZSAlcyDCqyUuMjUwc8K7OiAlc1xuIgorCisjfiBtc2dpZCAiLS1zZXQtc2VsZWN0aW9ucyBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudCIKKyN+IG1zZ3N0ciAiLS1zZXQtc2VsZWN0aW9ucyB0ZWsgaW5nZW4gcGFyYW1ldHJhciIKKworIywgZnV6enkKKyN+IG1zZ2lkICItLWNsZWFyLXNlbGVjdGlvbnMgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tc2V0LXNlbGVjdGlvbnMgdGVrIGluZ2VuIHBhcmFtZXRyYXIiCisKKyN+IG1zZ2lkICItLWJ1aWxkIG5lZWRzIGEgZGlyZWN0b3J5IGFyZ3VtZW50IgorI34gbXNnc3RyICItLWJ1aWxkIGtyZXYgZWluIGthdGFsb2dwYXJhbWV0ZXIiCisKKyN+IG1zZ2lkICIiCisjfiAiZHBrZy1kZWI6IHdhcm5pbmcsIG5vdCBjaGVja2luZyBjb250ZW50cyBvZiBjb250cm9sIGFyZWEuXG4iCisjfiAiZHBrZy1kZWI6IGJ1aWxkaW5nIGFuIHVua25vd24gcGFja2FnZSBpbiBgJXMnLlxuIgorI34gbXNnc3RyICIiCisjfiAiZHBrZy1kZWI6IMOFdHZhcmluZywgc2pla2thciBpa2tqZSBpbm5oYWxkZXQgaSBrb250cm9sbG9tcsOlZGV0LlxuIgorI34gImRwa2ctZGViOiBCeWdnamVyIGVpbiB1a2plbmQgcGFra2UgaSDCqyVzwrsuXG4iCisKKyN+IG1zZ2lkICJJbnRlcm5hbCBlcnJvciwgY29tcHJlc3NfdHlwZSBgJWknIHVua25vd24hIgorI34gbXNnc3RyICJJbnRlcm4gZmVpbDsga29tcHJlc2pvbnN0eXBlIMKrJWnCuyB1a2plbnQhIgorCisjfiBtc2dpZCAiLS1qb2luIHJlcXVpcmVzIG9uZSBvciBtb3JlIHBhcnQgZmlsZSBhcmd1bWVudHMiCisjfiBtc2dzdHIgIi0tam9pbiB0ZWsgZWluIGVsbGVyIGZsZWlyZSBkZWxmaWxwYXJhbWV0cmFyIgorCisjfiBtc2dpZCAiLS1saXN0cSBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudHMiCisjfiBtc2dzdHIgIi0tbGlzdHEgdGVrIGluZ2VuIHBhcmFtZXRyYXIiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiZmFpbGVkIHRvIGluc3RhbGwgJXM7IGl0IHdpbGwgYmUgbGVmdCBhcyAlczogJXMiCisjfiBtc2dzdHIgImtsYXJ0ZSBpa2tqZSBpbnN0YWxsZXJhIMKrJS4yNTBzwrsgc29tIMKrJS4yNTBzwrsiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiJXM6IHVuYWJsZSB0byB1bmxvY2sgJXM6ICVzIgorI34gbXNnc3RyICIlczogS2xhcnRlIGlra2plIGvDuHlyYSBnemlwICVzIgorCisjLCBmdXp6eQorI34gbXNnaWQgInVuYWJsZSB0byBvcGVuICVzIGZvciB3cml0ZTogJXMiCisjfiBtc2dzdHIgImtsYXJ0ZSBpa2tqZSBvcG5hIGtqZWxkZWZpbGEgwqslLjI1MHPCuyIKKworIywgZnV6enkKKyN+IG1zZ2lkICJlcnJvciB3cml0aW5nIHN0ZG91dDogJXMiCisjfiBtc2dzdHIgImZlaWwgdmVkIHNrcml2aW5nIGF2IMKrJXPCuyIKKworIywgZnV6enkKKyN+IG1zZ2lkICJlcnJvciBvciBlb2YgcmVhZGluZyAlcyBmb3IgJXMgKCVzKSIKKyN+IG1zZ3N0ciAia2xhcnRlIGlra2plIGxlc2EgJXMgZnLDpSAlLjI1NXMiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAibWlzc2luZyBuZXdsaW5lIGFmdGVyICVzIgorI34gbXNnc3RyICJmaWxhIMKrJS4yNTBzwrsgZXIgw7h5ZGVsYWdkIC0gbWFuZ2xhciBsaW5qZXNraWZ0IGV0dGVyICUuMjUwcyIKKworI34gbXNnaWQgImNvdWxkbid0IGFsbG9jYXRlIG1lbW9yeSBmb3Igc3RyZHVwIGluIGZpbmRwYWNrYWdlKCVzKSIKKyN+IG1zZ3N0ciAia2xhcnRlIGlra2plIHRpbGRlbGEgbWlubmUgZm9yIHN0cmR1cCBpIGZpbmRwYWNrYWdlKCVzKSIKKworI34gbXNnaWQgImZhaWxlZCB0byBhbGxvY2F0ZSBidWZmZXIgaW4gYnVmZmVyX2NvcHkgKCVzKSIKKyN+IG1zZ3N0ciAia2xhcnRlIGlra2plIHRpbGRlbGEgbWVsbG9tbGFnZXIgaSBidWZmZXJfY29weSAoJXMpIgorCisjfiBtc2dpZCAiRXJyb3IgYWxsb2NhdGluZyBtZW1vcnkgZm9yIGNmZ2ZpbGVuYW1lIgorI34gbXNnc3RyICJGZWlsIHZlZCB0aWxkZWxpbmcgYXYgbWlubmUgdGlsIGNmZ2ZpbGVuYW1lIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIG1hbGxvYyBmb3IgaW5mbyBmaWxlIGAlLjI1NXMnIgorI34gbXNnc3RyICJrbGFydGUgaWtramUgdGlsZGVsYSBtaW5uZSBmb3IgaW5mb2ZpbGEgwqslLjI1NXPCuyIKKworI34gbXNnaWQgImRpdmVyc2lvbnMgZmlsZSBoYXMgdG9vLWxvbmcgbGluZSBvciBFT0YgW2ldIgorI34gbXNnc3RyICJvbWRpcmlnZXJpbmdzZmlsYSBoYXIgZWkgZm9yIGxhbmcgbGluamUgZWxsZXIgc2x1dHQgcMOlIGZpbCBbaV0iCisKKyN+IG1zZ2lkICJyZWFkIGVycm9yIGluIGRpdmVyc2lvbnMgW2lpXSIKKyN+IG1zZ3N0ciAibGVzZWZlaWwgaSBvbWRpcmlnZXJpbmdzZmlsYSBbaWldIgorCisjfiBtc2dpZCAidW5leHBlY3RlZCBFT0YgaW4gZGl2ZXJzaW9ucyBbaWldIgorI34gbXNnc3RyICJ1dmVudGEgc2x1dHQgcMOlIGZpbCBpIG9tZGlyaWdlcmluZ3NmaWxhIFtpaV0iCisKKyN+IG1zZ2lkICJmZ2V0cyBnYXZlIGFuIGVtcHR5IHN0cmluZyBmcm9tIGRpdmVyc2lvbnMgW2lpXSIKKyN+IG1zZ3N0ciAiwqtmZ2V0c8K7IGdhdiBlaW4gdG9tIHN0cmVuZyBmcsOlIG9tZGlyaWdlcmluZ3NmaWxhIFtpaV0iCisKKyN+IG1zZ2lkICJkaXZlcnNpb25zIGZpbGUgaGFzIHRvby1sb25nIGxpbmUgb3IgRU9GIFtpaV0iCisjfiBtc2dzdHIgIm9tZGlyaWdlcmluZ3NmaWxhIGhhciBlaSBmb3IgbGFuZyBsaW5qZSBlbGxlciBzbHV0dCBww6UgZmlsIFtpaV0iCisKKyN+IG1zZ2lkICJyZWFkIGVycm9yIGluIGRpdmVyc2lvbnMgW2lpaV0iCisjfiBtc2dzdHIgImxlc2VmZWlsIGkgb21kaXJpZ2VyaW5nc2ZpbCBbaWlpXSIKKworI34gbXNnaWQgInVuZXhwZWN0ZWQgRU9GIGluIGRpdmVyc2lvbnMgW2lpaV0iCisjfiBtc2dzdHIgInV2ZW50YSBzbHV0dCBww6UgZmlsIGkgb21kaXJpZ2VyaW5nc2ZpbGEgW2lpaV0iCisKKyN+IG1zZ2lkICJmZ2V0cyBnYXZlIGFuIGVtcHR5IHN0cmluZyBmcm9tIGRpdmVyc2lvbnMgW2lpaV0iCisjfiBtc2dzdHIgIsKrZmdldHPCuyBnYXYgZWluIHRvbSBzdHJlbmcgZnLDpSBvbWRpcmlnZXJpbmdzZmlsYSBbaWlpXSIKKworI34gbXNnaWQgImNvdWxkbid0IG1hbGxvYyBpbiBleGVjYmFja2VuZCIKKyN+IG1zZ3N0ciAia2xhcnRlIGlra2plIHV0ZsO4cmEgwqttYWxsb2PCuyBpIGV4ZWNiYWNrZW5kIgorCisjfiBtc2dpZCAiY291bGRuJ3Qgc3RyZHVwIGluIGV4ZWNiYWNrZW5kIgorI34gbXNnc3RyICJrbGFydGUgaWtramUgdXRmw7hyYSDCq3N0cmR1cMK7IGkgZXhlY2JhY2tlbmQiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiZmFpbGVkIGFsbG9jYXRpbmcgbWVtb3J5IGZvciB2YXJpYWJsZSBgY3RybGFyZWEnIgorI34gbXNnc3RyICJGZWlsIHZlZCB0aWxkZWxpbmcgYXYgbWlubmUgdGlsIGNmZ2ZpbGVuYW1lIgorCisjLCBmdXp6eQorI34gbXNnaWQgInVuYWJsZSB0byBlbnN1cmUgJXMgbm9uZXhpc3RlbnQ6ICVzIgorI34gbXNnc3RyICJrbGFydGUgaWtramUga8O4eXJhIG55dHQgJXMiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiIgorI34gImRwa2c6IHJlZ2FyZGluZyAlcyBjb250YWluaW5nICVzOlxuIgorI34gIiBwYWNrYWdlIHVzZXMgQnJlYWtzOyBub3Qgc3VwcG9ydGVkIGluIHRoaXMgZHBrZ1xuIgorI34gbXNnc3RyICIiCisjfiAiZHBrZzogVmVkcsO4cmFuZGUgJXMgc29tIGlubmVoZWxkICVzLCBwcm9ibGVtIG1lZCBmw7hya3JhdjpcbiIKKyN+ICIlcyIKKworIywgZnV6enkKKyN+IG1zZ2lkICJ1bnN1cHBvcnRlZCBkZXBlbmRlbmN5IHByb2JsZW0gLSBub3QgaW5zdGFsbGluZyAlLjI1MHMiCisjfiBtc2dzdHIgInByb2JsZW0gbWVkIGbDuHJrcmF2IC0gaW5zdGFsbGVyZXIgaWtramUgJS4yNTBzIgorCisjLCBmdXp6eQorI34gbXNnaWQgImRwa2c6IHdhcm5pbmcgLSBpZ25vcmluZyBCcmVha3MgIVxuIgorI34gbXNnc3RyICJkcGtnOiDDhXR2YXJpbmcgLSBpZ25vcmVyZXIgcHJvYmxlbSBtZWQgZsO4cmtyYXYuXG4iCisKKyN+IG1zZ2lkICJ0byIKKyN+IG1zZ3N0ciAidGlsIgorCisjfiBtc2dpZCAiZnJvbSIKKyN+IG1zZ3N0ciAiZnLDpSIKKworI34gbXNnaWQgImVycm9yIHJlYWRpbmcgJXMiCisjfiBtc2dzdHIgImZlaWwgdmVkIGxlc2luZyBhdiAlcyIKKworI34gbXNnaWQgIiVzOiBmYWlsZWQgdG8gZXhlYyBnemlwIC1kYyIKKyN+IG1zZ3N0ciAiJXM6IGtsYXJ0ZSBpa2tqZSBrw7h5cmEgwqtnemlwIC1kY8K7IgorCisjfiBtc2dpZCAiJXM6IGZhaWxlZCB0byBleGVjIGJ6aXAyIC1kYyIKKyN+IG1zZ3N0ciAiJXM6IGtsYXJ0ZSBpa2tqZSBrw7h5cmEgwqtiemlwMiAtZGPCuyIKKworI34gbXNnaWQgIiVzOiBmYWlsZWQgdG8gZXhlYyBiemlwMiAlcyIKKyN+IG1zZ3N0ciAiJXM6IGtsYXJ0ZSBpa2tqZSBrw7h5cmEgYnppcDIgJXMiCisKKyN+IG1zZ2lkICJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6IHZlcnNpb24gY29udGFpbnMgYCAnIgorI34gbXNnc3RyICLCqyVzwrstZmVsdCwgcmVmZXJhbnNlIHRpbCDCqyUuMjU1c8K7OiB2ZXJzam9uIGlubmVoZWxkIMKrIMK7IgorCisjLCBmdXp6eQorI34gbXNnaWQgIiVzOiBjbG9zZSAlcyBhZnRlciByZWFkOiAlcyIKKyN+IG1zZ3N0ciAia2xhcnRlIGlra2plIGx1a2thIGV0dGVyIGxlc2luZzogwqslLjI1NXPCuyIKKworIywgZnV6enkKKyN+IG1zZ2lkICItLWFkbWluZGlyIG5lZWRzIGEgZGlyZWN0b3J5IGFyZ3VtZW50IgorI34gbXNnc3RyICItLWJ1aWxkIGtyZXYgZWluIGthdGFsb2dwYXJhbWV0ZXIiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiLS1yZW1vdmUgbmVlZHMgYSBzaW5nbGUgYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tJXMga3JldiBlaXQgLmRlYi1maWxuYW1uIHNvbSBwYXJhbWV0ZXIiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiLS10cnVlbmFtZSBuZWVkcyBhIHNpbmdsZSBhcmd1bWVudCIKKyN+IG1zZ3N0ciAiLS1idWlsZCBrcmV2IGVpbiBrYXRhbG9ncGFyYW1ldGVyIgorCisjLCBmdXp6eQorI34gbXNnaWQgIi0tcmVtb3ZlIG5lZWRzIG9uZSBhcmd1bWVudHMiCisjfiBtc2dzdHIgIi0tJXMgdGVrIGluZ2VuIHBhcmFtZXRyYXIiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiZHBrZy1zdGF0b3ZlcnJpZGU6ICVzIgorI34gbXNnc3RyICLCq3N0YXRvdmVycmlkZcK7LWZpbCDCqyUuMjUwc8K7IgorCisjLCBmdXp6eQorI34gbXNnaWQgIi0tYWRtaW5kaXIgbmVlZHMgYSA8ZGlyZWN0b3J5PiBhcmd1bWVudCIKKyN+IG1zZ3N0ciAiLS1idWlsZCBrcmV2IGVpbiBrYXRhbG9ncGFyYW1ldGVyIgorCisjLCBmdXp6eQorI34gbXNnaWQgImZhaWxlZCB0byBvcGVuICVzOiAlcyIKKyN+IG1zZ3N0ciAia2xhcnRlIGlra2plIGvDuHlyYSAlcyAoJS4yNTBzKSIKKworIywgZnV6enkKKyN+IG1zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCAlcyBhcyAlcyIKKyN+IG1zZ3N0ciAia2xhcnRlIGlra2plIGluc3RhbGxlcmEgwqslLjI1MHPCuyBzb20gwqslLjI1MHPCuyIKKworIywgZnV6enkKKyN+IG1zZ2lkICIiCisjfiAiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIDxjb21tYW5kPlxuIgorI34gIlxuIgorI34gIkNvbW1hbmRzOlxuIgorI34gIiAgLWl8LS1pbnN0YWxsICAgICAgIDwuZGViIGZpbGUgbmFtZT4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRpcj4gLi4uXG4iCisjfiAiICAtLXVucGFjayAgICAgICAgICAgPC5kZWIgZmlsZSBuYW1lPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyPiAuLi5cbiIKKyN+ICIgIC1BfC0tcmVjb3JkLWF2YWlsICA8LmRlYiBmaWxlIG5hbWU+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXI+IC4uLlxuIgorI34gIiAgLS1jb25maWd1cmUgICAgICAgIDxwYWNrYWdlLW5hbWU+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorI34gIiAgLXJ8LS1yZW1vdmUgICAgICAgIDxwYWNrYWdlLW5hbWU+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorI34gIiAgLVB8LS1wdXJnZSAgICAgICAgIDxwYWNrYWdlLW5hbWU+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorI34gIiAgLS1nZXQtc2VsZWN0aW9ucyBbPHBhdHRlcm4+IC4uLl0gICAgIEdldCBsaXN0IG9mIHNlbGVjdGlvbnMgdG8gc3Rkb3V0LlxuIgorI34gIiAgLS1zZXQtc2VsZWN0aW9ucyAgICAgICAgICAgICAgICAgICAgIFNldCBwYWNrYWdlIHNlbGVjdGlvbnMgZnJvbSAiCisjfiAic3RkaW4uXG4iCisjfiAiICAtLWNsZWFyLXNlbGVjdGlvbnMgICAgICAgICAgICAgICAgICAgRGVzZWxlY3QgZXZlcnkgbm9uLWVzc2VudGlhbCAiCisjfiAicGFja2FnZS5cbiIKKyN+ICIgIC0tdXBkYXRlLWF2YWlsIDxQYWNrYWdlcy1maWxlPiAgICAgICBSZXBsYWNlIGF2YWlsYWJsZSBwYWNrYWdlcyBpbmZvLlxuIgorI34gIiAgLS1tZXJnZS1hdmFpbCA8UGFja2FnZXMtZmlsZT4gICAgICAgIE1lcmdlIHdpdGggaW5mbyBmcm9tIGZpbGUuXG4iCisjfiAiICAtLWNsZWFyLWF2YWlsICAgICAgICAgICAgICAgICAgICAgICAgRXJhc2UgZXhpc3RpbmcgYXZhaWxhYmxlIGluZm8uXG4iCisjfiAiICAtLWZvcmdldC1vbGQtdW5hdmFpbCAgICAgICAgICAgICAgICAgRm9yZ2V0IHVuaW5zdGFsbGVkIHVuYXZhaWxhYmxlICIKKyN+ICJwa2dzLlxuIgorI34gIiAgLXN8LS1zdGF0dXMgPHBhY2thZ2UtbmFtZT4gLi4uICAgICAgIERpc3BsYXkgcGFja2FnZSBzdGF0dXMgZGV0YWlscy5cbiIKKyN+ICIgIC1wfC0tcHJpbnQtYXZhaWwgPHBhY2thZ2UtbmFtZT4gLi4uICBEaXNwbGF5IGF2YWlsYWJsZSB2ZXJzaW9uICIKKyN+ICJkZXRhaWxzLlxuIgorI34gIiAgLUx8LS1saXN0ZmlsZXMgPHBhY2thZ2UtbmFtZT4gLi4uICAgIExpc3QgZmlsZXMgYG93bmVkJyBieSBwYWNrYWdlKHMpLlxuIgorI34gIiAgLWx8LS1saXN0IFs8cGF0dGVybj4gLi4uXSAgICAgICAgICAgIExpc3QgcGFja2FnZXMgY29uY2lzZWx5LlxuIgorI34gIiAgLVN8LS1zZWFyY2ggPHBhdHRlcm4+IC4uLiAgICAgICAgICAgIEZpbmQgcGFja2FnZShzKSBvd25pbmcgZmlsZShzKS5cbiIKKyN+ICIgIC1DfC0tYXVkaXQgICAgICAgICAgICAgICAgICAgICAgICAgICBDaGVjayBmb3IgYnJva2VuIHBhY2thZ2UocykuXG4iCisjfiAiICAtLXByaW50LWFyY2hpdGVjdHVyZSAgICAgICAgICAgICAgICAgUHJpbnQgZHBrZyBhcmNoaXRlY3R1cmUuXG4iCisjfiAiICAtLWNvbXBhcmUtdmVyc2lvbnMgPGE+IDxyZWw+IDxiPiAgICAgQ29tcGFyZSB2ZXJzaW9uIG51bWJlcnMgLSBzZWUgIgorI34gImJlbG93LlxuIgorI34gIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisjfiAiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgICAgICAgICAgICAgU2hvdyB0aGUgdmVyc2lvbi5cbiIKKyN+ICIgIC0tZm9yY2UtaGVscCB8IC1EaHwtLWRlYnVnPWhlbHAgICAgICBIZWxwIG9uIGZvcmNpbmcgcmVzcC4gZGVidWdnaW5nLlxuIgorI34gIiAgLS1saWNlbnNlIHwgLS1saWNlbmNlICAgICAgICAgICAgICAgIFByaW50IGNvcHlyaWdodCBsaWNlbnNpbmcgdGVybXMuXG4iCisjfiAiXG4iCisjfiAiVXNlIGRwa2cgLWJ8LS1idWlsZHwtY3wtLWNvbnRlbnRzfC1lfC0tY29udHJvbHwtSXwtLWluZm98LWZ8LS1maWVsZHxcbiIKKyN+ICIgLXh8LS1leHRyYWN0fC1YfC0tdmV4dHJhY3R8LS1mc3lzLXRhcmZpbGUgIG9uIGFyY2hpdmVzICh0eXBlICVzIC0tIgorI34gImhlbHApLlxuIgorI34gIlxuIgorI34gIkZvciBpbnRlcm5hbCB1c2U6IGRwa2cgLS1hc3NlcnQtc3VwcG9ydC1wcmVkZXBlbmRzIHwgLS1wcmVkZXAtcGFja2FnZSB8XG4iCisjfiAiICAtLWFzc2VydC13b3JraW5nLWVwb2NoIHwgLS1hc3NlcnQtbG9uZy1maWxlbmFtZXMgfCAtLWFzc2VydC1tdWx0aS0iCisjfiAiY29ucmVwLlxuIgorI34gIlxuIgorI34gIk9wdGlvbnM6XG4iCisjfiAiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyN+ICIgIC0tcm9vdD08ZGlyZWN0b3J5PiAgICAgICAgIEluc3RhbGwgb24gYWx0ZXJuYXRpdmUgc3lzdGVtIHJvb3RlZCAiCisjfiAiZWxzZXdoZXJlLlxuIgorI34gIiAgLS1pbnN0ZGlyPTxkaXJlY3Rvcnk+ICAgICAgQ2hhbmdlIGluc3QnbiByb290IHdpdGhvdXQgY2hhbmdpbmcgYWRtaW4gIgorI34gImRpci5cbiIKKyN+ICIgIC1PfC0tc2VsZWN0ZWQtb25seSAgICAgICAgIFNraXAgcGFja2FnZXMgbm90IHNlbGVjdGVkIGZvciBpbnN0YWxsLyIKKyN+ICJ1cGdyYWRlLlxuIgorI34gIiAgLUV8LS1za2lwLXNhbWUtdmVyc2lvbiAgICAgU2tpcCBwYWNrYWdlcyB3aG9zZSBzYW1lIHZlcnNpb24gaXMgIgorI34gImluc3RhbGxlZC5cbiIKKyN+ICIgIC1HfC0tcmVmdXNlLWRvd25ncmFkZSAgICAgIFNraXAgcGFja2FnZXMgd2l0aCBlYXJsaWVyIHZlcnNpb24gdGhhbiAiCisjfiAiaW5zdGFsbGVkLlxuIgorI34gIiAgLUJ8LS1hdXRvLWRlY29uZmlndXJlICAgICAgSW5zdGFsbCBldmVuIGlmIGl0IHdvdWxkIGJyZWFrIHNvbWUgb3RoZXIgIgorI34gInBhY2thZ2UuXG4iCisjfiAiICAtLW5vLWRlYnNpZyAgICAgICAgICAgICAgICBEbyBub3QgdHJ5IHRvIHZlcmlmeSBwYWNrYWdlIHNpZ25hdHVyZXMuXG4iCisjfiAiICAtLW5vLWFjdHwtLWRyeS1ydW58LS1zaW11bGF0ZVxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSnVzdCBzYXkgd2hhdCB3ZSB3b3VsZCBkbyAtIGRvbid0IGRvIGl0LlxuIgorI34gIiAgLUR8LS1kZWJ1Zz08b2N0YWw+ICAgICAgICAgRW5hYmxlIGRlYnVnZ2luZyAtIHNlZSAtRGhlbHAgb3IgLS0iCisjfiAiZGVidWc9aGVscC5cbiIKKyN+ICIgIC0tc3RhdHVzLWZkIDxuPiAgICAgICAgICAgIFNlbmQgc3RhdHVzIGNoYW5nZSB1cGRhdGVzIHRvIGZpbGUgIgorI34gImRlc2NyaXB0b3IgPG4+LlxuIgorI34gIiAgLS1sb2c9PGZpbGVuYW1lPiAgICAgICAgICAgTG9nIHN0YXR1cyBjaGFuZ2VzIGFuZCBhY3Rpb25zIHRvICIKKyN+ICI8ZmlsZW5hbWU+LlxuIgorI34gIiAgLS1pZ25vcmUtZGVwZW5kcz08cGFja2FnZT4sLi4uIElnbm9yZSBkZXBlbmRlbmNpZXMgaW52b2x2aW5nICIKKyN+ICI8cGFja2FnZT4uXG4iCisjfiAiICAtLWZvcmNlLS4uLiAgICAgICAgICAgICAgICAgICAgT3ZlcnJpZGUgcHJvYmxlbXMgLSBzZWUgLS1mb3JjZS1oZWxwLlxuIgorI34gIiAgLS1uby1mb3JjZS0uLi58LS1yZWZ1c2UtLi4uICAgIFN0b3Agd2hlbiBwcm9ibGVtcyBlbmNvdW50ZXJlZC5cbiIKKyN+ICIgIC0tYWJvcnQtYWZ0ZXIgPG4+ICAgICAgICAgICAgICBBYm9ydCBhZnRlciBlbmNvdW50ZXJpbmcgPG4+IGVycm9ycy5cbiIKKyN+ICJcbiIKKyN+ICJDb21wYXJpc29uIG9wZXJhdG9ycyBmb3IgLS1jb21wYXJlLXZlcnNpb25zIGFyZTpcbiIKKyN+ICIgIGx0IGxlIGVxIG5lIGdlIGd0ICAgICAgICh0cmVhdCBlbXB0eSB2ZXJzaW9uIGFzIGVhcmxpZXIgdGhhbiBhbnkgIgorI34gInZlcnNpb24pO1xuIgorI34gIiAgbHQtbmwgbGUtbmwgZ2UtbmwgZ3QtbmwgKHRyZWF0IGVtcHR5IHZlcnNpb24gYXMgbGF0ZXIgdGhhbiBhbnkgIgorI34gInZlcnNpb24pO1xuIgorI34gIiAgPCA8PCA8PSA9ID49ID4+ID4gICAgICAgKG9ubHkgZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBjb250cm9sIGZpbGUgIgorI34gInN5bnRheCkuXG4iCisjfiAiXG4iCisjfiAiVXNlIGBkc2VsZWN0JyBvciBgYXB0aXR1ZGUnIGZvciB1c2VyLWZyaWVuZGx5IHBhY2thZ2UgbWFuYWdlbWVudC5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIkJydWs6IFxuIgorI34gIiAgZHBrZyAtaXwtLWluc3RhbGwgICAgICA8LmRlYi1maWxuYW1uPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSAiCisjfiAiPGthdGFsb2c+IC4uLlxuIgorI34gIiAgZHBrZyAtLXVucGFjayAgICAgICAgICA8LmRlYi1maWxuYW1uPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSAiCisjfiAiPGthdGFsb2c+IC4uLlxuIgorI34gIiAgZHBrZyAtQXwtLXJlY29yZC1hdmFpbCA8LmRlYi1maWxuYW1uPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSAiCisjfiAiPGthdGFsb2c+IC4uLlxuIgorI34gIiAgZHBrZyAtLWNvbmZpZ3VyZSAgICAgICAgICAgICAgPHBha2tlbmFtbj4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisjfiAiICBkcGtnIC1yfC0tcmVtb3ZlIHwgLVB8LS1wdXJnZSA8cGFra2VuYW1uPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyN+ICIgIGRwa2cgLS1nZXQtc2VsZWN0aW9ucyBbPG3DuG5zdGVyPiAuLi5dICAgIHNlbmQgbGlzdGUgb3ZlciB2YWxhIHRpbCAiCisjfiAic3RhbmRhcmQtdXRcbiIKKyN+ICIgIGRwa2cgLS1zZXQtc2VsZWN0aW9ucyAgICAgICAgICAgICAgICAgICAgb3BwZ2kgcGFra2V2YWxhIGZyw6Ugc3RhbmRhcmQtIgorI34gImlublxuIgorI34gIiAgZHBrZyAtLXVwZGF0ZS1hdmFpbCA8UGFja2FnZXMtZmlsPiAgICAgICBieXQgdXQgaW5mb3JtYXNqb24gb21cbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGlsZ2plbmdlbGVnZSBwYWtrYXJcbiIKKyN+ICIgIGRwa2cgLS1tZXJnZS1hdmFpbCA8UGFja2FnZXMtZmlsPiAgICAgICAgZmxldHQgbWVkIGluZm9ybWFzam9uIGZyw6UgZmlsXG4iCisjfiAiICBkcGtnIC0tY2xlYXItYXZhaWwgICAgICAgICAgICAgICAgICAgICAgIHNsZXR0IGVrc2lzdGVyYW5kZSAiCisjfiAidGlsZ2plbmdlaW5mb3JtYXNqb25cbiIKKyN+ICIgIGRwa2cgLS1mb3JnZXQtb2xkLXVuYXZhaWwgICAgICAgICAgICAgICAgZ2zDuHltIGlra2plLWluc3RhbGxlcnRlLCBcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWtramUtdGlsZ2plbmdlbGVnZSBwYWtrYXJcbiIKKyN+ICIgIGRwa2cgLXN8LS1zdGF0dXMgPHBha2tlbmFtbj4gLi4uICAgICAgICAgdmlzIGRldGFsamFyIG9tIHBha2tlc3RhdHVzXG4iCisjfiAiICBkcGtnIC1wfC0tcHJpbnQtYXZhaWwgPHBha2tlbmFtbj4gLi4uICAgIHZpcyB0aWxnamVuZ2VsZWcgdmVyc2pvblxuIgorI34gIiAgZHBrZyAtTHwtLWxpc3RmaWxlcyA8cGFra2VuYW1uPiAuLi4gICAgICB2aXMgZGVpIGZpbGVuZSBzb20ga2plbVxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmcsOlIHBha2thbmVcbiIKKyN+ICIgIGRwa2cgLWx8LS1saXN0IFs8bcO4bnN0ZXI+IC4uLl0gICAgICAgICAgIHZpcyBvdmVyc2lrdGxlZyBwYWtrZWxpc3RlXG4iCisjfiAiICBkcGtnIC1TfC0tc2VhcmNoIDxtw7huc3Rlcj4gLi4uICAgICAgICAgICBmaW5kIHBha2tlL3Bha2thciBzb21cbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5uZWhlbGQgZmlsYSAocilcbiIKKyN+ICIgIGRwa2cgLUN8LS1hdWRpdCAgICAgICAgICAgICAgICAgICAgICAgICAgc2pla2sgZm9yIMO4eWRlbGFnZGUgcGFra2FyXG4iCisjfiAiICBkcGtnIC0tcHJpbnQtYXJjaGl0ZWN0dXJlICAgICAgICAgICAgICAgIHZpcyBtw6VsYXJraXRla3R1clxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoYnJ1a2FyIEdDQylcbiIKKyN+ICIgIGRwa2cgLS1jb21wYXJlLXZlcnNpb25zIDxhPiA8dWRnPiA8Yj4gICAgc2FtYW5saWtuIHZlcnNqb25zbnVtbWVyLFxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzasOlIG5lZGFuZm9yXG4iCisjfiAiICBkcGtnIC0taGVscCB8IC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgIHZpcyBkZW5uZSBoamVscGEgLyAiCisjfiAidmVyc2pvbnNuci5cbiIKKyN+ICIgIGRwa2cgLS1mb3JjZS1oZWxwIHwgLURofC0tZGVidWc9aGVscCAgICAgaGplbHAgb20gdHZpbmdpbmcgb2cgYXZsdXNpbmdcbiIKKyN+ICIgIGRwa2cgLS1saWNlbmNlICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlzIG9wcGhhdnNyZXR0cy0gb2dcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlzZW5zdmlsa8OlclxuIgorI34gIlxuIgorI34gIkJydWsgZHBrZyAtYnwtLWJ1aWxkfC1jfC0tY29udGVudHN8LWV8LS1jb250cm9sfC1JfC0taW5mb3wtZnwtLWZpZWxkfFxuIgorI34gIiAteHwtLWV4dHJhY3R8LVh8LS12ZXh0cmFjdHwtLWZzeXMtdGFyZmlsZSAgcMOlIGFya2l2IChza3JpdiAlcyAtLWhlbHAuKVxuIgorI34gIlxuIgorI34gIkZvciBpbnRlcm50IGJydWs6IGRwa2cgLS1hc3NlcnQtc3VwcG9ydC1wcmVkZXBlbmRzIHwgLS1wcmVkZXAtcGFja2FnZSB8XG4iCisjfiAiICAtLWFzc2VydC13b3JraW5nLWVwb2NoIHwgLS1hc3NlcnQtbG9uZy1maWxlbmFtZXMgfCAtLWFzc2VydC1tdWx0aS0iCisjfiAiY29ucmVwXG4iCisjfiAiXG4iCisjfiAiVmFsOlxuIgorI34gIiAgLS1hZG1pbmRpcj08a2F0YWxvZz4gICAgIEJydWsgPGthdGFsb2c+IGkgc3RhZGVuIGZvciAlc1xuIgorI34gIiAgLS1yb290PTxrYXRhbG9nPiAgICAgICAgICAgSW5zdGFsbGVyIHDDpSBhbHRlcm5hdGl2dCBzeXN0ZW0gbWVkIGVpIGFubmEgIgorI34gImZpbHJvdFxuIgorI34gIiAgLS1pbnN0ZGlyPTxrYXRhbG9nPiAgICAgICAgU2tpZnQgaW5zdGFsbGFzam9uc3JvdCB1dGFuIMOlIHNraWZ0YVxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWRtaW5pc3RyYXNqb25za2F0YWxvZ1xuIgorI34gIiAgLU98LS1zZWxlY3RlZC1vbmx5ICAgICAgICAgSG9wcCBvdmVyIHBha2thciBzb20gaWtramUgZXIgdmFsZGUgZm9yXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnN0YWxsYXNqb24vb3BwZ3JhZGVyaW5nXG4iCisjfiAiICAtRXwtLXNraXAtc2FtZS12ZXJzaW9uICAgICBIb3BwIG92ZXIgcGFra2FyIGRlciBkZW4gc2FtZSB2ZXJzam9uZW4gZXJcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluc3RhbGxlcnQgZnLDpSBmw7hyXG4iCisjfiAiICAtR3wtLXJlZnVzZS1kb3duZ3JhZGUgICAgICBIb3BwIG92ZXIgcGFra2FyIG1lZCBsw6VnYXJlIHZlcnNqb25zbnVtbWVyXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbm4gZGVuIGluc3RhbGxlcnRlXG4iCisjfiAiICAtQnwtLWF1dG8tZGVjb25maWd1cmUgICAgICBJbnN0YWxsZXIgc2rDuGx2IG9tIGRldCBramVtIHRpbCDDpSAiCisjfiAiw7h5ZGVsZWdnamFcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFuZHJlIHBha2thclxuIgorI34gIiAgLS1uby1kZWJzaWcgICAgICAgICAgICAgICAgSWtrZSBwcsO4diDDpSBzdGFkZmVzdGEgcGFra2VzaWduYXR1cmFyXG4iCisjfiAiICAtLW5vLWFjdHwtLWRyeS1ydW58LS1zaW11bGF0ZVxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVmlzIGJlcnJlIGRldCBzb20ga2plbSB0aWwgw6Ugc2tqZSAtIHV0YW4gw6VcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdqZXJhIGRldFxuIgorI34gIiAgLUR8LS1kZWJ1Zz08b2t0YWw+ICAgICAgICAgU2zDpSBww6UgYXZsdXNpbmcgLSBzasOlIC1EaGVscFxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZWxsZXIgLS1kZWJ1Zz1oZWxwXG4iCisjfiAiICAtLXN0YXR1cy1mZCA8bj4gICAgICAgICAgICBTZW5kIHN0YXR1c2VuZHJpbmdzb3BwZGF0ZXJpbmdhciB0aWxcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGRlc2tyaXB0b3IgPG4+XG4iCisjfiAiICAtLWxvZz08ZmlsbmFtbj4gICAgICAgICAgICBMb2dnIHN0YXR1c2VuZHJpbmdhciBhbmQgaGFuZGxpbmdhciB0aWwgIgorI34gIjxmaWxuYW1uPlxuIgorI34gIiAgLS1pZ25vcmUtZGVwZW5kcz08cGFra2U+LC4uLiAgIElnbm9yZXIgcGFra2VrcmF2IG1lZCBwYWtrZW4gPHBha2tlPlxuIgorI34gIiAgLS1mb3JjZS0uLi4gICAgICAgICAgICAgICAgICAgIFR2aW5nIGdqZW5ub20gb3BlcmFzam9uIC0gc2rDpSAtLWZvcmNlLSIKKyN+ICJoZWxwXG4iCisjfiAiICAtLW5vLWZvcmNlLS4uLnwtLXJlZnVzZS0uLi4gICAgU3RvcHAgbsOlciBwcm9ibGVtIG9wcHN0w6VyXG4iCisjfiAiICAtLWFib3J0LWFmdGVyIDxuPiAgICAgICAgICAgICAgQXZicnl0IGV0dGVyICA8bj4gZmVpbFxuIgorI34gIlxuIgorI34gIlNhbWFubGlrbmluZ3NvcGVyYXRvcmFyIHRpbCAtLWNvbXBhcmUtdmVyc2lvbnMgZXI6XG4iCisjfiAiIGx0IGxlIGVxIG5lIGdlIGd0ICAgICAgIChzasOlIHDDpSDCq3RvbSB2ZXJzam9uwrsgc29tIGVsZHJlIGVubiBhbmRyZSAiCisjfiAidmVyc2pvbmFyKTtcbiIKKyN+ICIgbHQtbmwgbGUtbmwgZ2UtbmwgZ3QtbmwgKHNqw6UgcMOlIMKrdG9tIHZlcnNqb27CuyBzb20gbnlhcmUgZW5uIGFuZHJlICIKKyN+ICJ2ZXJzam9uYXIpO1xuIgorI34gIiA8IDw8IDw9ID0gPj0gPj4gPiAgICAgICAoYmVycmUgZm9yIGtvbXBhdGliaWxpdGV0IG1lZCBzeW50YWtzZW4gaVxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICBrb250cm9sbGZpbGEpLlxuIgorI34gIlxuIgorI34gIkJydWsgwqtkc2VsZWN0wrsgZWxsZXIgwqthcHRpdHVkZcK7IGZvciBlaSBsaXR0IG1laXIgYnJ1a2FydmVubmxlZyAiCisjfiAicGFra2VoYW5kdGVyaW5nLlxuIgorCisjfiBtc2dpZCAiICBQYWNrYWdlICIKKyN+IG1zZ3N0ciAiICBQYWtrZW4gIgorCisjfiBtc2dpZCAiIHdoaWNoIHByb3ZpZGVzICIKKyN+IG1zZ3N0ciAiIHNvbSB0aWxieXIgIgorCisjfiBtc2dpZCAiICBWZXJzaW9uIG9mICIKKyN+IG1zZ3N0ciAiICBWZXJzam9uZW4gYXYgIgorCisjfiBtc2dpZCAiIG9uIHN5c3RlbSBpcyAiCisjfiBtc2dzdHIgIiBww6Ugc3lzdGVtZXQgZXIgIgorCisjfiBtc2dpZCAiIGlzIG5vdCBpbnN0YWxsZWQuXG4iCisjfiBtc2dzdHIgIiBlciBpa2tqZSBpbnN0YWxsZXJ0LlxuIgorCisjfiBtc2dpZCAiIHRvOiAlc1xuIgorI34gbXNnc3RyICIgdGlsOiAlc1xuIgorCisjfiBtc2dpZCAiZmdldHBvcyBmYWlsZWQiCisjfiBtc2dzdHIgIsKrZmdldHBvc8K7IG1pc2x1a2thc3QiCisKKyN+IG1zZ2lkICJmc2V0cG9zIGZhaWxlZCIKKyN+IG1zZ3N0ciAiwqtmc2V0cG9zwrsgbWlzbHVra2FzdCIKKworIywgZnV6enkKKyN+IG1zZ2lkICIiCisjfiAiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIDxjb21tYW5kPlxuIgorI34gIlxuIgorI34gIkNvbW1hbmRzOlxuIgorI34gIiAgLWJ8LS1idWlsZCA8ZGlyZWN0b3J5PiBbPGRlYj5dICAgIEJ1aWxkIGFuIGFyY2hpdmUuXG4iCisjfiAiICAtY3wtLWNvbnRlbnRzIDxkZWI+ICAgICAgICAgICAgICAgTGlzdCBjb250ZW50cy5cbiIKKyN+ICIgIC1JfC0taW5mbyA8ZGViPiBbPGNmaWxlPi4uLl0gICAgICBTaG93IGluZm8gdG8gc3Rkb3V0LlxuIgorI34gIiAgLVd8LS1zaG93IDxkZWI+ICAgICAgICAgICAgICAgICAgIFNob3cgaW5mb3JtYXRpb24gb24gcGFja2FnZShzKVxuIgorI34gIiAgLWZ8LS1maWVsZCA8ZGViPiBbPGNmaWVsZD4uLi5dICAgIFNob3cgZmllbGQocykgdG8gc3Rkb3V0LlxuIgorI34gIiAgLWV8LS1jb250cm9sIDxkZWI+IFs8ZGlyZWN0b3J5Pl0gIEV4dHJhY3QgY29udHJvbCBpbmZvLlxuIgorI34gIiAgLXh8LS1leHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+ICAgIEV4dHJhY3QgZmlsZXMuXG4iCisjfiAiICAtWHwtLXZleHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+ICAgRXh0cmFjdCAmIGxpc3QgZmlsZXMuXG4iCisjfiAiICAtLWZzeXMtdGFyZmlsZSA8ZGViPiAgICAgICAgICAgICAgT3V0cHV0IGZpbGVzeXN0ZW0gdGFyZmlsZS5cbiIKKyN+ICIgIC1ofC0taGVscCAgICAgICAgICAgICAgICAgICAgICAgICBEaXNwbGF5IHRoaXMgbWVzc2FnZS5cbiIKKyN+ICIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgICAgICAgICBTaG93IHZlcnNpb24uXG4iCisjfiAiICAtLWxpY2Vuc2UgfCAtLWxpY2VuY2UgICAgICAgICAgICAgU2hvdyBsaWNlbnNlLlxuIgorI34gIlxuIgorI34gIjxkZWI+IGlzIHRoZSBmaWxlbmFtZSBvZiBhIERlYmlhbiBmb3JtYXQgYXJjaGl2ZS5cbiIKKyN+ICI8Y2ZpbGU+IGlzIHRoZSBuYW1lIG9mIGFuIGFkbWluaXN0cmF0aXZlIGZpbGUgY29tcG9uZW50LlxuIgorI34gIjxjZmllbGQ+IGlzIHRoZSBuYW1lIG9mIGEgZmllbGQgaW4gdGhlIG1haW4gYGNvbnRyb2wnIGZpbGUuXG4iCisjfiAiXG4iCisjfiAiT3B0aW9uczpcbiIKKyN+ICIgIC0tc2hvd2Zvcm1hdD08Zm9ybWF0PiAgICAgIFVzZSBhbHRlcm5hdGl2ZSBmb3JtYXQgZm9yIC0tc2hvdy5cbiIKKyN+ICIgIC1EICAgICAgICAgICAgICAgICAgICAgICAgIEVuYWJsZSBkZWJ1Z2dpbmcgb3V0cHV0LlxuIgorI34gIiAgLS1vbGQsIC0tbmV3ICAgICAgICAgICAgICAgU2VsZWN0IGFyY2hpdmUgZm9ybWF0LlxuIgorI34gIiAgLS1ub2NoZWNrICAgICAgICAgICAgICAgICAgU3VwcHJlc3MgY29udHJvbCBmaWxlIGNoZWNrIChidWlsZCBiYWQgIgorI34gInBhY2thZ2UpLlxuIgorI34gIiAgLXojICAgICAgICAgICAgICAgICAgICAgICAgU2V0IHRoZSBjb21wcmVzc2lvbiBsZXZlbCB3aGVuIGJ1aWxkaW5nLlxuIgorI34gIiAgLVo8dHlwZT4gICAgICAgICAgICAgICAgICAgU2V0IHRoZSBjb21wcmVzc2lvbiB0eXBlIHRvIHVzZSB3aGVuICIKKyN+ICJidWlsZGluZy5cbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFsbG93ZWQgdmFsdWVzOiBnemlwLCBiemlwMiwgbm9uZS5cbiIKKyN+ICJcbiIKKyN+IG1zZ3N0ciAiIgorI34gIktvbW1hbmRvOlxuIgorI34gIiAgLWJ8LS1idWlsZCA8a2F0YWxvZz4gWzxkZWI+XSAgICAgIEJ5Z2cgZWl0IGFya2l2LlxuIgorI34gIiAgLWN8LS1jb250ZW50cyA8ZGViPiAgICAgICAgICAgICAgIFZpcyBpbm5oYWxkLlxuIgorI34gIiAgLUl8LS1pbmZvIDxkZWI+IFs8Y2ZpbD4uLi5dICAgICAgIEluZm9ybWFzam9uIHRpbCBzdGFuZGFyZC11dC5cbiIKKyN+ICIgIC1XfC0tc2hvdyA8ZGViPiAgICAgICAgICAgICAgICAgICBWaXMgb3BwbHlzbmluZ2FyIG9tIHBha2tlLlxuIgorI34gIiAgLWZ8LS1maWVsZCA8ZGViPiBbPGNmZWx0Pi4uLl0gICAgIFZpcyBmZWx0IHRpbCBzdGFuZGFyZC11dC5cbiIKKyN+ICIgIC1lfC0tY29udHJvbCA8ZGViPiBbPGthdGFsb2c+XSAgICBIZW50IHV0IGtvbnRyb2xsb3BwbHlzbmluZ2FyLlxuIgorI34gIiAgLXh8LS1leHRyYWN0IDxkZWI+IDxrYXRhbG9nPiAgICAgIEhlbnQgdXQgZmlsZXIuXG4iCisjfiAiICAtWHwtLXZleHRyYWN0IDxkZWI+IDxrYXRhbG9nPiAgICAgSGVudCB1dCBvZyB2aXMgZmlsZXIuXG4iCisjfiAiICAtLWZzeXMtdGFyZmlsZSA8ZGViPiAgICAgICAgICAgICAgVXRkYXRhIHRpbCB0YXItZmlsLlxuIgorI34gIiAgLWh8LS1oZWxwICAgICAgICAgICAgICAgICAgICAgICAgIFZpcyBkZW5uZSBoamVscGV0ZWtzdGVuLlxuIgorI34gIiAgLS12ZXJzaW9uIHwgLS1saWNlbmNlICAgICAgICAgICAgIFZpcyB2ZXJzam9uL2xpc2Vucy5cbiIKKyN+ICJcbiIKKyN+ICI8ZGViPiBlciBmaWxuYW1uZXQgcMOlIGVpdCBhcmtpdiBpIERlYmlhbi1mb3JtYXQuXG4iCisjfiAiPGNmaWw+IGVyIG5hbW5ldCBww6UgZWl0IGFkbWluaXN0cmF0aXZ0IGZpbGtvbXBvbmVudC5cbiIKKyN+ICI8Y2ZlbHQ+IGVyIG5hbW5ldCBww6UgZWl0IGZlbHQgaSDCq2NvbnRyb2zCuy1maWxhLlxuIgorI34gIlxuIgorI34gIlZhbDpcbiIKKyN+ICIgIC0tc2hvd2Zvcm1hdD08Zm9ybWF0PiAgIEJydWsgYWx0ZXJuYXRpdnQgZm9ybWF0IHRpbCAtLXNob3dcbiIKKyN+ICIgIC1EICAgICAgICAgICAgICAgICAgICAgIFZpcyBhdmx1c2luZ3NkYXRhXG4iCisjfiAiICAtLW9sZCwgLS1uZXcgICAgICAgICAgICBWZWwgYXJraXZmb3JtYXQuXG4iCisjfiAiICAtLW5vY2hlY2sgICAgICAgICAgICAgICBJa2tqZSBzamVrayBrb250cm9sbGZpbCAoYnlnZyB1Z3lsZGlnIHBha2tlKS5cbiIKKyN+ICIgIC16IyAgICAgICAgICAgICAgICAgICAgIFNldCBrb21wcmltZXJpbmdzZ3JhZCB2ZWQgYnlnZ2luZ2FcbiIKKyN+ICIgIC1aPHR5cGU+ICAgICAgICAgICAgICAgIFNldCBrb21wcmVzam9uc3R5cGVuIHNvbSBza2FsIGJydWthc3QgdmVkICIKKyN+ICJieWdnaW5nLlxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgVGlsbGV0bmUgdmVyZGlhcjogZ3ppcCwgYnppcDIsIG5vbmVcbiIKKyN+ICJcbiIKKyN+ICJGb3JtYXQtc3ludGFrczpcbiIKKyN+ICIgIEVpdCBmb3JtYXQgZXIgZWluIHN0cmVuZyBzb20gdmlsIGJsaSB2aXN0IGZvciBrdmFyIHBha2tlLiBGb3JtYXRldCBrYW5cbiIKKyN+ICIgIGlubmVoYWxkYSBkZWkgdmFubGVnZSBrb250cm9sc2VrdmVuc2FuZSBcXG4gKGxpbmplc2tpZnQpLCBcXHIgIgorI34gIih2b2ducmV0dXIpXG4iCisjfiAiICBlbGxlciBcXFxcIChiYWtvdmVyc2tyw6VzdHJlaykuIFBha2tlb3BwbHlzbmluZ2FyIGthbiB0YWthc3QgbWVkIHZlZFxuIgorI34gIiAgw6Ugc2V0amEgaW5uIHZhcmlhYmVscmVmZXJlbnNhciB0aWwgcGFra2VmZWx0IG1lZCBzeW50YWtzZW5cbiIKKyN+ICIgICR7dmFyWzticmVpZGRdfS4gRmVsdGEgdmlsIHZlcmEgaMO4Z3JlanVzdGVydGUgbWVkIG1pbmRyZSBicmVpZGRhIGVyXG4iCisjfiAibmVnYXRpdi4gSSBzw6UgZmFsbCB2aWwgZGVpIHZlcmEgdmVuc3RyZWp1c3RlcnRlLlxuIgorI34gIlxuIgorI34gIkJydWsgwqtkcGtnwrsgdGlsIMOlIGluc3RhbGxlcmEgb2cgZmplcm5hIHBha2thciBmcsOlIHN5c3RlbWV0LCBlbGxlclxuIgorI34gIsKrZHNlbGVjdMK7IGVsbGVyIMKrYXB0aXR1ZGXCuyBmb3IgYnJ1a2FydmVubmxlZyBwYWtrZWhhbmR0ZXJpbmcuIFBha2thciBzb20gIgorI34gImVyXG4iCisjfiAicGFra2EgdXQgbWVkIMKrZHBrZy1kZWIgLS1leHRyYWN0wrsgdmlsIGlra2plIHZlcnRhIHJldHQgaW5zdGFsbGVydGUuXG4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiIgorI34gIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSA8Y29tbWFuZD5cbiIKKyN+ICJcbiIKKyN+ICJDb21tYW5kczpcbiIKKyN+ICIgIC1zfC0tc3BsaXQgPGZpbGU+IFs8cHJlZml4Pl0gICAgU3BsaXQgYW4gYXJjaGl2ZS5cbiIKKyN+ICIgIC1qfC0tam9pbiA8cGFydD4gPHBhcnQ+IC4uLiAgICAgSm9pbiBwYXJ0cyB0b2dldGhlci5cbiIKKyN+ICIgIC1JfC0taW5mbyA8cGFydD4gLi4uICAgICAgICAgICAgRGlzcGxheSBpbmZvIGFib3V0IGEgcGFydC5cbiIKKyN+ICIgIC1ofC0taGVscCAgICAgICAgICAgICAgICAgICAgICAgU2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyN+ICIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgICAgICAgU2hvdyB0aGUgdmVyc2lvbi5cbiIKKyN+ICIgIC0tbGljZW5zZSAgICAgICAgICAgICAgICAgICAgICAgU2hvdyB0aGUgbGljZW5zZS5cbiIKKyN+ICJcbiIKKyN+ICIgIC1hfC0tYXV0byAtbyA8Y29tcGxldGU+IDxwYXJ0PiAgQXV0by1hY2N1bXVsYXRlIHBhcnRzLlxuIgorI34gIiAgLWx8LS1saXN0cSAgICAgICAgICAgICAgICAgICAgICBMaXN0IHVubWF0Y2hlZCBwaWVjZXMuXG4iCisjfiAiICAtZHwtLWRpc2NhcmQgWzxmaWxlbmFtZT4gLi4uXSAgIERpc2NhcmQgdW5tYXRjaGVkIHBpZWNlcy5cbiIKKyN+ICJcbiIKKyN+ICJPcHRpb25zOlxuIgorI34gIiAgLS1kZXBvdGRpciA8ZGlyZWN0b3J5PiAgICAgICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy8lcy5cbiIKKyN+ICIgIC1TfC0tcGFydHNpemUgPHNpemU+ICAgICAgICAgICAgSW4gS2lCLCBmb3IgLXMgKGRlZmF1bHQgaXMgNDUwKS5cbiIKKyN+ICIgIC1vfC0tb3V0cHV0IDxmaWxlPiAgICAgICAgICAgICAgRm9yIC1qIChkZWZhdWx0IGlzIDxwYWNrYWdlPi08dmVyc2lvbj4uIgorI34gImRlYikuXG4iCisjfiAiICAtUXwtLW5wcXVpZXQgICAgICAgICAgICAgICAgICAgIEJlIHF1aWV0IHdoZW4gLWEgaXMgbm90IGEgcGFydC5cbiIKKyN+ICIgIC0tbXNkb3MgICAgICAgICAgICAgICAgICAgICAgICAgR2VuZXJhdGUgOC4zIGZpbGVuYW1lcy5cbiIKKyN+ICJcbiIKKyN+ICJFeGl0IHN0YXR1czogMCA9IE9LOyAgMSA9IC1hIGlzIG5vdCBhIHBhcnQ7ICAyID0gdHJvdWJsZSFcbiIKKyN+IG1zZ3N0ciAiIgorI34gIkJydWs6IGRwa2ctc3BsaXQgLXN8LS1zcGxpdCA8ZmlsPiBbPHByZWZpa3M+XSAgICAgRGVsIG9wcCBlaXQgYXJraXYuXG4iCisjfiAiICAgICAgZHBrZy1zcGxpdCAtanwtLWpvaW4gPGRlbD4gPGRlbD4gLi4uICAgICAgICBGw7h5IHNhbWFuIGRlbGFyLlxuIgorI34gIiAgICAgIGRwa2ctc3BsaXQgLUl8LS1pbmZvIDxwYXJ0PiAuLi4gICAgICAgICAgICAgVmlzIGluZm8gb20gZWluIGRlbC5cbiIKKyN+ICIgICAgICBkcGtnLXNwbGl0IC1ofC0taGVscHwtLXZlcnNpb258LS1saWNlbmNlICAgIFZpcyBoZWxwL3ZlcnNpb24vIgorI34gImxpY2VuY2UuXG4iCisjfiAiXG4iCisjfiAiICAgICAgZHBrZy1zcGxpdCAtYXwtLWF1dG8gLW8gPGFsdCBzYW1hbj4gPGRlbD4gICBBdXRvbWF0aXNrIHNhbWxhIG9wcCAiCisjfiAiZGVsYXIuXG4iCisjfiAiICAgICAgZHBrZy1zcGxpdCAtbHwtLWxpc3RxICAgICAgICAgICAgICAgICAgICAgICBMaXN0IG9wcCBkZWxhciBzb20gIgorI34gImlra2plIHBhc3Nhci5cbiIKKyN+ICIgICAgICBkcGtnLXNwbGl0IC1kfC0tZGlzY2FyZCBbPGZpbG5hbW4+IC4uLl0gICAgIFZyYWthIGRlbGFyIHNvbSBpa2tqZSAiCisjfiAicGFzc2FyLlxuIgorI34gIlxuIgorI34gIlZhbDogIC0tZGVwb3RkaXIgPGthdGFsb2c+ICAgICAgKHN0YW5kYXJkIGVyICVzLyVzKVxuIgorI34gIiAgICAgIC1TfC0tcGFydHNpemUgPHN0b3JsZWlrPiAgKGkgS2IsIGZvciAtcywgc3RhbmRhcmQgZXIgNDUwKVxuIgorI34gIiAgICAgIC1vfC0tb3V0cHV0IDxmaWw+ICAgICAgICAgKGZvciAtaiwgc3RhbmRhcmQgZXIgPHBha2tlPi08dmVyc2pvbj4uIgorI34gImRlYilcbiIKKyN+ICIgICAgICAtUXwtLW5wcXVpZXQgICAgICAgICAgICAgICh2ZXIgc3RpbGxlIG7DpXIgLWEgaWtramUgZXIgZWluIGRlbClcbiIKKyN+ICIgICAgICAtLW1zZG9zICAgICAgICAgICAgICAgICAgIChsYWcgOC4zLWZpbG5hbW4pXG4iCisjfiAiXG4iCisjfiAiQXZzbHV0dGluZ3N0YXR1czogMCA9IE9LOyAgMSA9IC1hIGVyIGlra2plIGVpbiBkZWw7ICAyID0gcHJvYmxlbSFcbiIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvcG8vcGEuZ21vIGIvZHBrZy0xLjE2LjEuMS9wby9wYS5nbW8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODBkNzRlNwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvcG8vcGEuZ21vCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvcG8vcGEucG8gYi9kcGtnLTEuMTYuMS4xL3BvL3BhLnBvCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjY1NDFhYzUKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3BvL3BhLnBvCkBAIC0wLDAgKzEsNjE2MSBAQAorIyB0cmFuc2xhdGlvbiBvZiBwYS5wbyB0byBQdW5qYWJpCisjIENvcHlyaWdodCAoQykgWUVBUiBTb2Z0d2FyZSBpbiB0aGUgUHVibGljIEludGVyZXN0LCBJbmMuCisjIFRoaXMgZmlsZSBpcyBkaXN0cmlidXRlZCB1bmRlciB0aGUgc2FtZSBsaWNlbnNlIGFzIHRoZSBQQUNLQUdFIHBhY2thZ2UuCisjCisjIEEgUyBBbGFtIDxhcGJyYXJAZ21haWwuY29tPiwgMjAwNi4KK21zZ2lkICIiCittc2dzdHIgIiIKKyJQcm9qZWN0LUlkLVZlcnNpb246IHBhXG4iCisiUmVwb3J0LU1zZ2lkLUJ1Z3MtVG86IGRlYmlhbi1kcGtnQGxpc3RzLmRlYmlhbi5vcmdcbiIKKyJQT1QtQ3JlYXRpb24tRGF0ZTogMjAxMS0xMC0xNCAwNzoxMSswMjAwXG4iCisiUE8tUmV2aXNpb24tRGF0ZTogMjAwNi0xMi0yNSAwODoyMyswNTMwXG4iCisiTGFzdC1UcmFuc2xhdG9yOiBBIFMgQWxhbSA8YXBicmFyQGdtYWlsLmNvbT5cbiIKKyJMYW5ndWFnZS1UZWFtOiBQdW5qYWJpIDxmZWRvcmEtdHJhbnMtcGFAcmVkaGF0LmNvbT5cbiIKKyJMYW5ndWFnZTogcGFcbiIKKyJNSU1FLVZlcnNpb246IDEuMFxuIgorIkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD1VVEYtOFxuIgorIkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXRcbiIKKyJYLUdlbmVyYXRvcjogS0JhYmVsIDEuMTEuNFxuIgorIlBsdXJhbC1Gb3JtczogbnBsdXJhbHM9MjsgcGx1cmFsPShuICE9IDEpO1xuIgorCisjOiBsaWIvZHBrZy9hci5jOjY2CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgY2hhcmFjdGVyICclYycgaW4gYXJjaGl2ZSAnJS4yNTBzJyBtZW1iZXIgJyUuMTZzJyBzaXplIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2FyLmM6ODEgbGliL2Rwa2cvYXIuYzo5NyBsaWIvZHBrZy9hci5jOjEwOCBsaWIvZHBrZy9hci5jOjExMgorIzogbGliL2Rwa2cvYXIuYzoxMzQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBmaWxlICclcyciCittc2dzdHIgIiVzIOComuCosuCovuCoieCooyDgqLLgqIgg4KiF4Ki44Kir4Ki84KiyIgorCisjOiBsaWIvZHBrZy9hci5jOjk0CisjLCBjLWZvcm1hdAorbXNnaWQgImdlbmVyYXRlZCBjb3JydXB0IGFyIGhlYWRlciBmb3IgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9hci5jOjEyMworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGFyIG1lbWJlciBmaWxlICglcykiCittc2dzdHIgIiVzIOCorOCoo+CovuCoieCooyDgqLLgqIgg4KiF4Ki44Kir4Ki84KiyOiAlcyIKKworIzogbGliL2Rwa2cvYXIuYzoxMzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImFyIG1lbWJlciBmaWxlICglcykiCittc2dzdHIgIiVzIOCorOCoo+CovuCoieCooyDgqLLgqIgg4KiF4Ki44Kir4Ki84KiyOiAlcyIKKworIzogbGliL2Rwa2cvYnVmZmVyLmM6MTk2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCBvbiBidWZmZXIgY29weSBmb3IgJXMiCittc2dzdHIgIiVzIOComuCosuCovuCoieCooyDgqLLgqIgg4KiF4Ki44Kir4Ki84KiyIgorCisjOiBsaWIvZHBrZy9idWZmZXIuYzoyMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIGluIHdyaXRlIG9uIGJ1ZmZlciBjb3B5IGZvciAlcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9idWZmZXIuYzoyMjAKKyMsIGMtZm9ybWF0Cittc2dpZCAic2hvcnQgcmVhZCBvbiBidWZmZXIgY29weSBmb3IgJXMiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvYnVmZmVyLmM6Mjg4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gc2VlayAlcyIKK21zZ3N0ciAiJXMg4Kia4Kiy4Ki+4KiJ4KijIOCosuCoiCDgqIXgqLjgqKvgqLzgqLIiCisKKyM6IGxpYi9kcGtnL2NvbW1hbmQuYzoxNzggbGliL2Rwa2cvY29tbWFuZC5jOjIwNCBzcmMvaGVscC5jOjYyMQorIzogc3JjL3Byb2Nlc3NhcmMuYzo5OCBzcmMvcHJvY2Vzc2FyYy5jOjEzOCBzcmMvcHJvY2Vzc2FyYy5jOjQzMgorIzogc3JjL3Byb2Nlc3NhcmMuYzo4MzkgZHBrZy1kZWIvYnVpbGQuYzo0NTkgZHBrZy1kZWIvYnVpbGQuYzo1MzgKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTYxIGRwa2ctZGViL2V4dHJhY3QuYzozMTcgZHBrZy1kZWIvaW5mby5jOjY1CisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6NjkgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQ1NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGV4ZWN1dGUgJXMgKCVzKSIKK21zZ3N0ciAiJXMg4Kia4Kiy4Ki+4KiJ4KijIOCosuCoiCDgqIXgqLjgqKvgqLzgqLIiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGRlY29tcHJlc3Npb24iCittc2dzdHIgIiVzOiDgqKHgqYDgqJXgqKrgqY3gqLDgqYjgqLjgqLzgqKgiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6ODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGNvbXByZXNzaW9uIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTEyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvciBiaW5kaW5nIGlucHV0IHRvIGd6aXAgc3RyZWFtIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTI0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCByZWFkIGVycm9yOiAnJXMnIgorbXNnc3RyICIlczog4KiF4Kmw4Kim4Kiw4KmC4KioIGd6aXAg4KiX4Kiy4Kik4KmAOiBgJXMnIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjEzMiBsaWIvZHBrZy9jb21wcmVzcy5jOjEzNgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgd3JpdGUgZXJyb3IiCittc2dzdHIgIiVzOiDgqIXgqbDgqKbgqLDgqYLgqKggZ3ppcCDgqJfgqLLgqKTgqYA6IGAlcyciCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTUwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvciBiaW5kaW5nIG91dHB1dCB0byBnemlwIHN0cmVhbSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE1NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgcmVhZCBlcnJvciIKK21zZ3N0ciAiJXM6IOCoheCpsOCopuCosOCpguCoqCBnemlwIOCol+CosuCopOCpgDogYCVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxNjcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHdyaXRlIGVycm9yOiAnJXMnIgorbXNnc3RyICIlczog4KiF4Kmw4Kim4Kiw4KmC4KioIGd6aXAg4KiX4Kiy4Kik4KmAOiBgJXMnIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE4MAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgd3JpdGUgZXJyb3I6ICVzIgorbXNnc3RyICIlczog4KiF4Kmw4Kim4Kiw4KmC4KioIGd6aXAg4KiX4Kiy4Kik4KmAOiBgJXMnIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjIyMAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZXJyb3IgYmluZGluZyBpbnB1dCB0byBiemlwMiBzdHJlYW0iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyMzIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiByZWFkIGVycm9yOiAnJXMnIgorbXNnc3RyICIlczog4KiF4Kmw4Kim4Kiw4KmC4KioIGd6aXAg4KiX4Kiy4Kik4KmAOiBgJXMnIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI0MCBsaWIvZHBrZy9jb21wcmVzcy5jOjI0NCBsaWIvZHBrZy9jb21wcmVzcy5jOjI5NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIHdyaXRlIGVycm9yIgorbXNnc3RyICIlczog4KiF4Kmw4Kim4Kiw4KmC4KioIGd6aXAg4KiX4Kiy4Kik4KmAOiBgJXMnIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI1OAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZXJyb3IgYmluZGluZyBvdXRwdXQgdG8gYnppcDIgc3RyZWFtIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjY1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgcmVhZCBlcnJvciIKK21zZ3N0ciAiJXM6IOCoheCpsOCopuCosOCpguCoqCBnemlwIOCol+CosuCopOCpgDogYCVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyNzUgbGliL2Rwa2cvY29tcHJlc3MuYzoyODYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiB3cml0ZSBlcnJvcjogJyVzJyIKK21zZ3N0ciAiJXM6IOCoheCpsOCopuCosOCpguCoqCBnemlwIOCol+CosuCopOCpgDogYCVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyODIKK21zZ2lkICJ1bmV4cGVjdGVkIGJ6aXAyIGVycm9yIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVwZGF0ZXMgZGlyZWN0b3J5IGNvbnRhaW5zIGZpbGUgYCUuMjUwcycgd2hvc2UgbmFtZSBpcyB0b28gbG9uZyAobGVuZ3RoPSVkLCAiCisibWF4PSVkKSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1cGRhdGVzIGRpcmVjdG9yeSBjb250YWlucyBmaWxlcyB3aXRoIGRpZmZlcmVudCBsZW5ndGggbmFtZXMgKGJvdGggJWQgYW5kICVkKSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjg2CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzY2FuIHVwZGF0ZXMgZGlyZWN0b3J5IGAlLjI1NXMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZW1vdmUgaW5jb3Jwb3JhdGVkIHVwZGF0ZSBmaWxlICUuMjU1cyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEyMSBkcGtnLWRlYi9idWlsZC5jOjQ0NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGAlLjI1NXMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTI1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmaWxsICUuMjUwcyB3aXRoIHBhZGRpbmciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxMjcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoICUuMjUwcyBhZnRlciBwYWRkaW5nIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTI5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWVrIHRvIHN0YXJ0IG9mICUuMjUwcyBhZnRlciBwYWRkaW5nIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTk1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBsb2NrIGZpbGUgJXMgZm9yIHRlc3RpbmciCittc2dzdHIgIiVzIOColuCpi+CosuCpjeCoueCooyDgqLLgqIgg4KiF4Ki44Kir4Ki84KiyOiAlcyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyMjEKK21zZ2lkICJ1bmFibGUgdG8gb3Blbi9jcmVhdGUgc3RhdHVzIGRhdGFiYXNlIGxvY2tmaWxlIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjMxCittc2dpZCAieW91IGRvIG5vdCBoYXZlIHBlcm1pc3Npb24gdG8gbG9jayB0aGUgZHBrZyBzdGF0dXMgZGF0YWJhc2UiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyMzMKK21zZ2lkICJkcGtnIHN0YXR1cyBkYXRhYmFzZSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjI1NworbXNnaWQgInJlcXVlc3RlZCBvcGVyYXRpb24gcmVxdWlyZXMgc3VwZXJ1c2VyIHByaXZpbGVnZSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjI2MgorbXNnaWQgInVuYWJsZSB0byBhY2Nlc3MgZHBrZyBzdGF0dXMgYXJlYSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjI2NAorbXNnaWQgIm9wZXJhdGlvbiByZXF1aXJlcyByZWFkL3dyaXRlIGFjY2VzcyB0byBkcGtnIHN0YXR1cyBhcmVhIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzA5CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZW1vdmUgbXkgb3duIHVwZGF0ZSBmaWxlICUuMjU1cyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM0NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNDkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzUxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB0cnVuY2F0ZSBmb3IgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZzeW5jIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzU1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM1OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9kaXIuYzo1MAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGdldCBmaWxlIGRlc2NyaXB0b3IgZm9yIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICLgqKHgqL7gqIfgqLDgqYjgqJXgqJ/gqLDgqYAg4Kis4Kij4Ki+4KiJ4KijIOCosuCoiCDgqKvgqYfgqLLgqY3gqLkiCisKKyM6IGxpYi9kcGtnL2Rpci5jOjU0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBkaXJlY3RvcnkgJyVzJyIKK21zZ3N0ciAiJXMg4Kia4Kiy4Ki+4KiJ4KijIOCosuCoiCDgqIXgqLjgqKvgqLzgqLIiCisKKyM6IGxpYi9kcGtnL2Rpci5jOjY5IGxpYi9kcGtnL2Rpci5jOjEzMQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gZGlyZWN0b3J5ICclcyciCittc2dzdHIgIiVzIOComuCosuCovuCoieCooyDgqLLgqIgg4KiF4Ki44Kir4Ki84KiyIgorCisjOiBsaWIvZHBrZy9kaXIuYzoxMDkgc3JjL2RpdmVydGNtZC5jOjIxOCBkcGtnLXNwbGl0L3NwbGl0LmM6MjAyCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI5MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gZmlsZSAnJXMnIgorbXNnc3RyICIlcyDgqJrgqLLgqL7gqIngqKMg4Kiy4KiIIOCoheCouOCoq+CovOCosiIKKworIzogbGliL2Rwa2cvZGlyLmM6MTExIHNyYy9kaXZlcnRjbWQuYzoyMzIgc3JjL2RpdmVydGNtZC5jOjM3NworIzogc3JjL3N0YXRjbWQuYzoyMTcgZHBrZy1kZWIvYnVpbGQuYzo1OTggZHBrZy1zcGxpdC9qb2luLmM6NjUKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxODcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE0MDYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzeW5jIGZpbGUgJyVzJyIKK21zZ3N0ciAiJXMg4Kia4Kiy4Ki+4KiJ4KijIOCosuCoiCDgqIXgqLjgqKvgqLzgqLIiCisKKyM6IGxpYi9kcGtnL2Rpci5jOjExMyBzcmMvZGl2ZXJ0Y21kLmM6MjM0IHNyYy9kaXZlcnRjbWQuYzozNzkKKyM6IGRwa2ctZGViL2J1aWxkLmM6NjAwIGRwa2ctc3BsaXQvam9pbi5jOjY3IGRwa2ctc3BsaXQvcXVldWUuYzoxODkKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzE0IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNDA4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgZmlsZSAnJXMnIgorbXNnc3RyICIlcyDgqJrgqLLgqL7gqIngqKMg4Kiy4KiIIOCoheCouOCoq+CovOCosiIKKworIzogbGliL2Rwa2cvZHVtcC5jOjM5NgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgZGV0YWlscyBvZiBgJS41MHMnIHRvIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0MjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gJyVzJyBmb3Igd3JpdGluZyAlcyBkYXRhYmFzZSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDI2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgYnVmZmVyaW5nIG9uICVzIGRhdGFiYXNlIGZpbGUiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQzOAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlICVzIGRhdGFiYXNlIHJlY29yZCBhYm91dCAnJS41MHMnIHRvICclLjI1MHMnIgorbXNnc3RyICIlcyDgqJrgqLLgqL7gqIngqKMg4Kiy4KiIIOCoheCouOCoq+CovOCosiIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ0NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZsdXNoICVzIGRhdGFiYXNlIHRvICclLjI1MHMnIgorbXNnc3RyICIlcyBgJSUuMjU1cycg4Kiy4KiIIOCoq+Cph+CosuCpjeCouSIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ0OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZzeW5jICVzIGRhdGFiYXNlIHRvICclLjI1MHMnIgorbXNnc3RyICIlcyBgJSUuMjU1cycg4Kiy4KiIIOCoq+Cph+CosuCpjeCouSIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ1MQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2xvc2UgJyUuMjUwcycgYWZ0ZXIgd3JpdGluZyAlcyBkYXRhYmFzZSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDU1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gbGluayAnJS4yNTBzJyB0byAnJS4yNTBzJyBmb3IgYmFja3VwIG9mICVzIGRhdGFiYXNlIgorbXNnc3RyICIlcyDgqJrgqLLgqL7gqIngqKMg4Kiy4KiIIOCoheCouOCoq+CovOCosiIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ1OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGluc3RhbGwgJyUuMjUwcycgYXMgJyUuMjUwcycgY29udGFpbmluZyAlcyBkYXRhYmFzZSIKK21zZ3N0ciAiJXMg4Kia4Kiy4Ki+4KiJ4KijIOCosuCoiCDgqIXgqLjgqKvgqLzgqLIiCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzo5NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IHVucmVjb3ZlcmFibGUgZmF0YWwgZXJyb3IsIGFib3J0aW5nOlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoxMDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBvdXRzaWRlIGVycm9yIGNvbnRleHQsIGFib3J0aW5nOlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoxMjAKK21zZ2lkICJvdXQgb2YgbWVtb3J5IGZvciBuZXcgZXJyb3IgY29udGV4dCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MTgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogZXJyb3Igd2hpbGUgY2xlYW5pbmcgdXA6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKyIlczog4Ki44Ki+4Kir4Ki8IOColeCosOCoqCDgqKbgqYzgqLDgqL7gqKgg4KiX4Kiy4Kik4KmAOlxuIgorIiAlc1xuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MjAxCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB0b28gbWFueSBuZXN0ZWQgZXJyb3JzIGR1cmluZyBlcnJvciByZWNvdmVyeSEhXG4iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjI2OCBsaWIvZHBrZy9laGFuZGxlLmM6MzA3Cittc2dpZCAib3V0IG9mIG1lbW9yeSBmb3IgbmV3IGNsZWFudXAgZW50cnkiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjI5MQorbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBjbGVhbnVwIGVudHJ5IHdpdGggbWFueSBhcmd1bWVudHMiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjM1MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yOiAlc1xuIgorbXNnc3RyICIiCisiJXM6IOCouOCovuCoq+CovCDgqJXgqLDgqKgg4Kim4KmM4Kiw4Ki+4KioIOCol+CosuCopOCpgDpcbiIKKyIgJXNcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjM5MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IHdhcm5pbmc6ICVzXG4iCittc2dzdHIgIiIKKyIlczog4Ki44Ki+4Kir4Ki8IOColeCosOCoqCDgqKbgqYzgqLDgqL7gqKgg4KiX4Kiy4Kik4KmAOlxuIgorIiAlc1xuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6NDE2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczolczolZDogaW50ZXJuYWwgZXJyb3I6ICVzXG4iCittc2dzdHIgIiVzOiDgqIXgqbDgqKbgqLDgqYLgqKggZ3ppcCDgqJfgqLLgqKTgqYA6IGAlcyciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGlzIG1pc3NpbmciCittc2dzdHIgIiVzIOCol+CpgeCpsOCoriDgqLngqYgiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIgICUuMjUwcyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnaWQgIiclLjUwcycgaXMgbm90IGFsbG93ZWQgZm9yICVzIgorbXNnc3RyICIgICUuMjUwcyDgqIfgqbDgqLjgqJ/gqL7gqLIg4Kio4Ki54KmA4KiCIOCoueCpiOClpFxuIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo3MworIywgYy1mb3JtYXQKK21zZ2lkICJqdW5rIGFmdGVyICVzIgorbXNnc3RyICIlcyDgqKzgqL7gqIXgqKYg4KiV4KmC4Kmc4Ki+IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo4NworIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHBhY2thZ2UgbmFtZSAoJS4yNTBzKSIKK21zZ3N0ciAi4KiX4Kiy4KikIOCoquCpiOColeCph+ConCDgqKjgqL7gqIIgKCUuMjUwcykiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJlbXB0eSBmaWxlIGRldGFpbHMgZmllbGQgYCVzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBkZXRhaWxzIGZpZWxkIGAlcycgbm90IGFsbG93ZWQgaW4gc3RhdHVzIGZpbGUiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTE4CisjLCBjLWZvcm1hdAorbXNnaWQgInRvbyBtYW55IHZhbHVlcyBpbiBmaWxlIGRldGFpbHMgZmllbGQgYCVzJyAoY29tcGFyZWQgdG8gb3RoZXJzKSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAidG9vIGZldyB2YWx1ZXMgaW4gZmlsZSBkZXRhaWxzIGZpZWxkIGAlcycgKGNvbXBhcmVkIHRvIG90aGVycykiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTU0Cittc2dpZCAieWVzL25vIGluIGJvb2xlYW4gZmllbGQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTc0Cittc2dpZCAid29yZCBpbiBgcHJpb3JpdHknIGZpZWxkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE4NgorbXNnaWQgInZhbHVlIGZvciBgc3RhdHVzJyBmaWVsZCBub3QgYWxsb3dlZCBpbiB0aGlzIGNvbnRleHQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTkxCittc2dpZCAiZmlyc3QgKHdhbnQpIHdvcmQgaW4gYHN0YXR1cycgZmllbGQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTk0Cittc2dpZCAic2Vjb25kIChlcnJvcikgd29yZCBpbiBgc3RhdHVzJyBmaWVsZCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxOTcKK21zZ2lkICJ0aGlyZCAoc3RhdHVzKSB3b3JkIGluIGBzdGF0dXMnIGZpZWxkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjIwNworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZXJyb3IgY2xvc2luZyAlLjI1MHMiCittc2dpZCAiZXJyb3IgaW4gVmVyc2lvbiBzdHJpbmcgJyUuMjUwcyciCittc2dzdHIgIiUuMjUwcyDgqKzgqbDgqKYg4KiV4Kiw4KioICfgqJog4KiX4Kiy4Kik4KmAIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyMTgKK21zZ2lkICJvYnNvbGV0ZSBgUmV2aXNpb24nIG9yIGBQYWNrYWdlLVJldmlzaW9uJyBmaWVsZCB1c2VkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjIzNQorbXNnaWQgInZhbHVlIGZvciBgY29uZmlnLXZlcnNpb24nIGZpZWxkIG5vdCBhbGxvd2VkIGluIHRoaXMgY29udGV4dCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyNDAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGluIENvbmZpZy1WZXJzaW9uIHN0cmluZyAnJS4yNTBzJyIKK21zZ3N0ciAiY29uZmZpbGVzIOCoq+CovuCoh+CosiDgqIXgqKrgqLXgqL7gqKYg4KiW4KmL4Kiy4KmN4Ki54KijIOCopuCpjOCosOCovuCoqCDgqJfgqLLgqKTgqYAiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjI2NgorIywgYy1mb3JtYXQKK21zZ2lkICJ2YWx1ZSBmb3IgYGNvbmZmaWxlcycgaGFzIG1hbGZvcm1hdHRlZCBsaW5lIGAlLipzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyODcKKyMsIGMtZm9ybWF0Cittc2dpZCAidmFsdWUgZm9yIGBjb25mZmlsZXMnIGhhcyBsaW5lIHN0YXJ0aW5nIHdpdGggbm9uLXNwYWNlIGAlYyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MzA0Cittc2dpZCAicm9vdCBvciBudWxsIGRpcmVjdG9yeSBpcyBsaXN0ZWQgYXMgYSBjb25mZmlsZSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzozNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIG1pc3NpbmcgcGFja2FnZSBuYW1lLCBvciBnYXJiYWdlIHdoZXJlIHBhY2thZ2UgbmFtZSBleHBlY3RlZCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzozNzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBmaWVsZCwgaW52YWxpZCBwYWNrYWdlIG5hbWUgYCUuMjU1cyc6ICVzIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQwNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOlxuIgorIiBiYWQgdmVyc2lvbiByZWxhdGlvbnNoaXAgJWMlYyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgYCVjJyBpcyBvYnNvbGV0ZSwgdXNlIGAlYz0nIG9yIGAlYyVjJyBpbnN0ZWFkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQyMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOlxuIgorIiBpbXBsaWNpdCBleGFjdCBtYXRjaCBvbiB2ZXJzaW9uIG51bWJlciwgc3VnZ2VzdCB1c2luZyBgPScgaW5zdGVhZCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MzAKK21zZ2lkICJPbmx5IGV4YWN0IHZlcnNpb25zIG1heSBiZSB1c2VkIGZvciBQcm92aWRlcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgdmVyc2lvbiB2YWx1ZSBzdGFydHMgd2l0aCBub24tYWxwaGFudW1lcmljLCBzdWdnZXN0IGFkZGluZyBhIHNwYWNlIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ1MSBsaWIvZHBrZy9maWVsZHMuYzo0NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOiB2ZXJzaW9uIGNvbnRhaW5zIGAlYyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDU5CisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzogdmVyc2lvbiB1bnRlcm1pbmF0ZWQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDY1CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgZmllbGQsIHJlZmVyZW5jZSB0byAnJS4yNTVzJzogZXJyb3IgaW4gdmVyc2lvbiIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBmaWVsZCwgc3ludGF4IGVycm9yIGFmdGVyIHJlZmVyZW5jZSB0byBwYWNrYWdlIGAlLjI1NXMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ4MgorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZXMgKGB8Jykgbm90IGFsbG93ZWQgaW4gJXMgZmllbGQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTM2Cittc2dpZCAidmFsdWUgZm9yIGB0cmlnZ2Vycy1wZW5kaW5nJyBmaWVsZCBub3QgYWxsb3dlZCBpbiB0aGlzIGNvbnRleHQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTQzCisjLCBjLWZvcm1hdAorbXNnaWQgImlsbGVnYWwgcGVuZGluZyB0cmlnZ2VyIG5hbWUgYCUuMjU1cyc6ICVzIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU0NworIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgcGVuZGluZyB0cmlnZ2VyIGAlLjI1NXMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU2MQorbXNnaWQgInZhbHVlIGZvciBgdHJpZ2dlcnMtYXdhaXRlZCcgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU2OAorIywgYy1mb3JtYXQKK21zZ2lkICJpbGxlZ2FsIHBhY2thZ2UgbmFtZSBpbiBhd2FpdGVkIHRyaWdnZXIgYCUuMjU1cyc6ICVzIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU3NAorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgYXdhaXRlZCB0cmlnZ2VyIHBhY2thZ2UgYCUuMjU1cyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmlsZS5jOjUxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBzb3VyY2UgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAiJXMg4Kis4Kij4Ki+4KiJ4KijIOCosuCoiCDgqIXgqLjgqKvgqLzgqLI6ICVzIgorCisjOiBsaWIvZHBrZy9maWxlLmM6NTUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGFuZ2Ugb3duZXJzaGlwIG9mIHRhcmdldCBmaWxlICclLjI1MHMnIgorbXNnc3RyICLgqJXgqbDgqJ/gqLDgqYvgqLIg4Kir4Ki+4KiH4KiyIOConOCovuCoo+ColeCovuCosOCpgCBgJS4yNTBzJyDgqLngqJ/gqL7gqIngqKMg4Kiy4KiIIOCoheCouOCoq+CovOCosiIKKworIzogbGliL2Rwa2cvZmlsZS5jOjU5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IG1vZGUgb2YgdGFyZ2V0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgIuColeCpsOCon+CosOCpi+CosiDgqKvgqL7gqIfgqLIg4Kic4Ki+4Kij4KiV4Ki+4Kiw4KmAIGAlLjI1MHMnIOCoueCon+CovuCoieCooyDgqLLgqIgg4KiF4Ki44Kir4Ki84KiyIgorCisjOiBsaWIvZHBrZy9maWxlLmM6ODUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byBvcGVuICVzOiAlcyIKK21zZ2lkICJ1bmFibGUgdG8gdW5sb2NrICVzIgorbXNnc3RyICIlcyDgqJbgqYvgqLLgqY3gqLngqKMg4Kiy4KiIIOCoheCouOCoq+CovOCosjogJXMiCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzoxMTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGVjayBmaWxlICclcycgbG9jayBzdGF0dXMiCittc2dzdHIgIiVzIOComuCosuCovuCoieCooyDgqLLgqIgg4KiF4Ki44Kir4Ki84KiyIgorCisjOiBsaWIvZHBrZy9maWxlLmM6MTQ2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGlzIGxvY2tlZCBieSBhbm90aGVyIHByb2Nlc3MiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmlsZS5jOjE0OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIG9wZW4gJXM6ICVzIgorbXNnaWQgInVuYWJsZSB0byBsb2NrICVzIgorbXNnc3RyICIlcyDgqJbgqYvgqLLgqY3gqLngqKMg4Kiy4KiIIOCoheCouOCoq+CovOCosjogJXMiCisKKyM6IGxpYi9kcGtnL2xvZy5jOjUzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkbid0IG9wZW4gbG9nIGAlcyc6ICVzXG4iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvbG9nLmM6ODUKK21zZ2lkICI8cGFja2FnZSBzdGF0dXMgYW5kIHByb2dyZXNzIGZpbGUgZGVzY3JpcHRvcj4iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvbG9nLmM6MTE0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgdG8gc3RhdHVzIGZkICVkIgorbXNnc3RyICIlcyDgqLLgqL/gqJbgqKMg4Kiy4KiIIOCoheCouOCoq+CovOCosjogJXMiCisKKyM6IGxpYi9kcGtnL21saWIuYzo0NCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJtYWxsb2MgZmFpbGVkICglenUgYnl0ZXMpIgorbXNnc3RyICIo4KiV4KmB4Kmx4KiyICVsdSDgqKzgqL7gqIjgqJ8pXG4iCisKKyM6IGxpYi9kcGtnL21saWIuYzo1OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAicmVhbGxvYyBmYWlsZWQgKCV6dSBieXRlcykiCittc2dzdHIgIijgqJXgqYHgqbHgqLIgJWx1IOCorOCovuCoiOConylcbiIKKworIzogbGliL2Rwa2cvbWxpYi5jOjcyIGxpYi9kcGtnL21saWIuYzo5MCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6Mjc3CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MzM0IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTA3CisjLCBmdXp6eQorbXNnaWQgImZhaWxlZCB0byBhbGxvY2F0ZSBtZW1vcnkiCittc2dzdHIgIuCooeCovuCoh+CosOCpiOColeCon+CosOCpgCDgqKzgqKPgqL7gqIngqKMg4Kiy4KiIIOCoq+Cph+CosuCpjeCouSIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZHVwIGZvciBzdGQlcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTAzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBkdXAgZm9yIGZkICVkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMDkKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHBpcGUiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvbWxpYi5jOjExNworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igd3JpdGluZyB0byAnJXMnIgorbXNnc3RyICJgJXMnIOCosuCov+ColuCooyDgqKbgqYzgqLDgqL7gqKgg4KiX4Kiy4Kik4KmAIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIGZpbGVkZXNjcmlwdG9yIGZsYWdzIGZvciAlLjI1MHMiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEyNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IGNsb3NlLW9uLWV4ZWMgZmxhZyBmb3IgJS4yNTBzIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzo2MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiY29uZmlndXJhdGlvbiBlcnJvcjogJXM6JWQ6ICVzIgorbXNnc3RyICIiCisiXG4iCisi4Ki44Kmw4Kiw4Kia4Kio4Ki+IOCoq+CovuCoh+CosiBgJXMnIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gY29uZmlndXJhdGlvbiBmaWxlICclLjI1NXMnIGZvciByZWFkaW5nOiAlcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYmFsYW5jZWQgcXVvdGVzIGluICclcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjExNworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gJyVzJyIKK21zZ3N0ciAi4KiF4Kij4Kic4Ki+4KijIOComuCpi+CooyBgJXMnIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTIxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICInJXMnIG5lZWRzIGEgdmFsdWUiCittc2dzdHIgIi0tJXMgbmVlZHMgPG5hbWU+IgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTI3CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgZG9lcyBub3QgdGFrZSBhIHZhbHVlIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVhZCBlcnJvciBpbiBjb25maWd1cmF0aW9uIGZpbGUgYCUuMjU1cyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nIGNvbmZpZ3VyYXRpb24gZmlsZSBgJS4yNTVzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTcwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBvcGVuaW5nIGNvbmZpZ3VyYXRpb24gZGlyZWN0b3J5ICclcyciCittc2dzdHIgImNvbmZmaWxlcyDgqKvgqL7gqIfgqLIg4KiF4Kiq4Ki14Ki+4KimIOColuCpi+CosuCpjeCoueCooyDgqKbgqYzgqLDgqL7gqKgg4KiX4Kiy4Kik4KmAIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjI4CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gb3B0aW9uIC0tJXMiCittc2dzdHIgIuCoheCoo+ConOCovuCoo+CpgCDgqJrgqYvgqKMgLS0lcyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjIzMgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG9wdGlvbiB0YWtlcyBhIHZhbHVlIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBvcHRpb24gZG9lcyBub3QgdGFrZSBhIHZhbHVlIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyNDUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gLSVjIgorbXNnc3RyICLgqIXgqKPgqJzgqL7gqKPgqYAg4Kia4KmL4KijIC0lYyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI1MAorIywgYy1mb3JtYXQKK21zZ2lkICItJWMgb3B0aW9uIHRha2VzIGEgdmFsdWUiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI1OAorIywgYy1mb3JtYXQKK21zZ2lkICItJWMgb3B0aW9uIGRvZXMgbm90IHRha2UgYSB2YWx1ZSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjcxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJvYnNvbGV0ZSBvcHRpb24gJy0tJXMnXG4iCittc2dzdHIgIuCoheCoo+ConOCovuCoo+CpgCDgqJrgqYvgqKMgLS0lcyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI4NworIywgYy1mb3JtYXQKK21zZ2lkICJjb25mbGljdGluZyBhY3Rpb25zIC0lYyAoLS0lcykgYW5kIC0lYyAoLS0lcykiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHZhbHVlIGZvciBgJXMnIGZpZWxkIgorbXNnc3RyICJgJXMnIOColuCph+CopOCosCDgqKbgqL4g4Kim4KmC4Ki54Kiw4Ki+IOCoruCpgeCpseCosiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoxNDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidXNlci1kZWZpbmVkIGZpZWxkIG5hbWUgYCUuKnMnIHRvbyBzaG9ydCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgdmFsdWUgZm9yIHVzZXItZGVmaW5lZCBmaWVsZCBgJS4qcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMDcKK21zZ2lkICJDb25maWd1cmVkLVZlcnNpb24gZm9yIHBhY2thZ2Ugd2l0aCBpbmFwcHJvcHJpYXRlIFN0YXR1cyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjIxOAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGhhcyBzdGF0dXMgJXMgYnV0IHRyaWdnZXJzIGFyZSBhd2FpdGVkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjIyCittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzIHRyaWdnZXJzLWF3YWl0ZWQgYnV0IG5vIHRyaWdnZXJzIGF3YWl0ZWQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzICVzIGJ1dCB0cmlnZ2VycyBhcmUgcGVuZGluZyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjIzMgorbXNnaWQgInBhY2thZ2UgaGFzIHN0YXR1cyB0cmlnZ2Vycy1wZW5kaW5nIGJ1dCBubyB0cmlnZ2VycyBwZW5kaW5nIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjQyCittc2dpZCAiUGFja2FnZSB3aGljaCBpbiBzdGF0ZSBub3QtaW5zdGFsbGVkIGhhcyBjb25mZmlsZXMsIGZvcmdldHRpbmcgdGhlbSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjMzNQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiBwYWNrYWdlIGluZm8gZmlsZSBgJS4yNTVzJyBmb3IgcmVhZGluZyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjM0MQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW4ndCBzdGF0IHBhY2thZ2UgaW5mbyBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzQ3CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbid0IG1tYXAgcGFja2FnZSBpbmZvIGZpbGUgYCUuMjU1cyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozNTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiBwYWNrYWdlIGAlLjI1NXMnIgorbXNnaWQgInJlYWRpbmcgcGFja2FnZSBpbmZvIGZpbGUgJyUuMjU1cyciCittc2dzdHIgIiDgqKrgqYjgqJXgqYfgqJwgYCUuMjU1cyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzYzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjbG9zZSBhZnRlciByZWFkOiBgJS4yNTVzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQwNAorIywgYy1mb3JtYXQKK21zZ2lkICJFT0YgYWZ0ZXIgZmllbGQgbmFtZSBgJS4qcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MDcKKyMsIGMtZm9ybWF0Cittc2dpZCAibmV3bGluZSBpbiBmaWVsZCBuYW1lIGAlLipzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQxMAorIywgYy1mb3JtYXQKK21zZ2lkICJNU0RPUyBFT0YgKF5aKSBpbiBmaWVsZCBuYW1lIGAlLipzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQxNAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWVsZCBuYW1lIGAlLipzJyBtdXN0IGJlIGZvbGxvd2VkIGJ5IGNvbG9uIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDI1CisjLCBjLWZvcm1hdAorbXNnaWQgIkVPRiBiZWZvcmUgdmFsdWUgb2YgZmllbGQgYCUuKnMnIChtaXNzaW5nIGZpbmFsIG5ld2xpbmUpIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDI5CisjLCBjLWZvcm1hdAorbXNnaWQgIk1TRE9TIEVPRiBjaGFyIGluIHZhbHVlIG9mIGZpZWxkIGAlLipzJyAobWlzc2luZyBuZXdsaW5lPykiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0NDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmxhbmsgbGluZSBpbiB2YWx1ZSBvZiBmaWVsZCAnJS4qcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiRU9GIGR1cmluZyB2YWx1ZSBvZiBmaWVsZCBgJS4qcycgKG1pc3NpbmcgZmluYWwgbmV3bGluZSkiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo1NDYKK21zZ2lkICJzZXZlcmFsIHBhY2thZ2UgaW5mbyBlbnRyaWVzIGZvdW5kLCBvbmx5IG9uZSBhbGxvd2VkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NTcyCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHBhY2thZ2UgaW5mb3JtYXRpb24gaW4gYCUuMjU1cyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInBhcnNpbmcgZmlsZSAnJS4yNTVzJyBuZWFyIGxpbmUgJWQgcGFja2FnZSAnJS4yNTVzJzpcbiIKKyIgJS4yNTVzIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjQ4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJwYXJzaW5nIGZpbGUgJyUuMjU1cycgbmVhciBsaW5lICVkOlxuIgorIiAlLjI1NXMiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MTI1Cittc2dpZCAibWF5IG5vdCBiZSBlbXB0eSBzdHJpbmciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MTI3Cittc2dpZCAibXVzdCBzdGFydCB3aXRoIGFuIGFscGhhbnVtZXJpYyBjaGFyYWN0ZXIiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MTM2CisjLCBjLWZvcm1hdAorbXNnaWQgImNoYXJhY3RlciBgJWMnIG5vdCBhbGxvd2VkIChvbmx5IGxldHRlcnMsIGRpZ2l0cyBhbmQgY2hhcmFjdGVycyBgJXMnKSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoxNzgKKyMsIGZ1enp5CisjfCBtc2dpZCAiPG5vbmU+IgorbXNnY3R4dCAidmVyc2lvbiIKK21zZ2lkICI8bm9uZT4iCittc2dzdHIgIjxub25lPiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjA5Cittc2dpZCAidmVyc2lvbiBzdHJpbmcgaXMgZW1wdHkiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjI0Cittc2dpZCAidmVyc2lvbiBzdHJpbmcgaGFzIGVtYmVkZGVkIHNwYWNlcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyMzAKK21zZ2lkICJlcG9jaCBpbiB2ZXJzaW9uIGlzIG5vdCBudW1iZXIiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjMyCittc2dpZCAibm90aGluZyBhZnRlciBjb2xvbiBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyNDcKK21zZ2lkICJ2ZXJzaW9uIG51bWJlciBkb2VzIG5vdCBzdGFydCB3aXRoIGRpZ2l0IgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjI1MAorIywgZnV6enkKK21zZ2lkICJpbnZhbGlkIGNoYXJhY3RlciBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAi4Ki14Kiw4Kic4KioIOCoqOCpsOCorOCosCIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjU0Cittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgaW4gcmV2aXNpb24gbnVtYmVyIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjI5OSBsaWIvZHBrZy9wYXJzZWhlbHAuYzozMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAibWlzc2luZyAlcyIKK21zZ3N0ciAiJXMg4KiX4KmB4Kmw4KiuIOCoueCpiCIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MzAxIGxpYi9kcGtnL3BhcnNlaGVscC5jOjMxNAorIywgYy1mb3JtYXQKK21zZ2lkICJlbXB0eSB2YWx1ZSBmb3IgJXMiCittc2dzdHIgIiVzIOCosuCoiCDgqJbgqL7gqLLgqYAg4Kiu4KmB4Kmx4KiyIgorCisjOiBsaWIvZHBrZy9wa2ctZm9ybWF0LmM6ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgYCVjJyBpbiBmaWVsZCB3aWR0aFxuIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BrZy1mb3JtYXQuYzoxNzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2xvc2luZyBicmFjZSBtaXNzaW5nIGluIGZvcm1hdFxuIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BrZy1zaG93LmM6NDAKK21zZ2lkICIobm8gZGVzY3JpcHRpb24gYXZhaWxhYmxlKSIKK21zZ3N0ciAiKOColeCpi+CoiCDgqLXgqYfgqLDgqLXgqL4g4KiJ4Kiq4Kiy4Kmx4Kis4KinIOCoqOCoueCpgOCogikiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzo1NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGlnbm9yZSBzaWduYWwgJXMgYmVmb3JlIHJ1bm5pbmcgJS4yNTBzIgorbXNnc3RyICLgqJXgqbDgqJ/gqLDgqYvgqLIg4Kir4Ki+4KiH4KiyIOConOCovuCoo+ColeCovuCosOCpgCBgJS4yNTBzJyDgqLngqJ/gqL7gqIngqKMg4Kiy4KiIIOCoheCouOCoq+CovOCosiIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjY4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJlcnJvciB1bi1jYXRjaGluZyBzaWduYWwgJXM6ICVzXG4iCittc2dzdHIgImAlcycg4Kic4Ki+4KiC4KiaIOCopuCpjOCosOCovuCoqCDgqJfgqLLgqKTgqYA6ICVzIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgKHN1YnByb2Nlc3MpOiAlc1xuIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzo4OSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NDU0Cittc2dpZCAiZm9yayBmYWlsZWQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjExOQorIywgYy1mb3JtYXQKK21zZ2lkICJzdWJwcm9jZXNzICVzIHJldHVybmVkIGVycm9yIGV4aXQgc3RhdHVzICVkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMjgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInN1YnByb2Nlc3MgJXMgd2FzIGludGVycnVwdGVkIgorbXNnc3RyICLgqLjgqLzgqYjgqbHgqLIg4Kir4KmH4Kiy4KmN4Ki5IOCoueCpiyDgqLLgqYgg4Kim4Ki/4KiTIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTMwCisjLCBjLWZvcm1hdAorbXNnaWQgInN1YnByb2Nlc3MgJXMgd2FzIGtpbGxlZCBieSBzaWduYWwgKCVzKSVzIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMzIKK21zZ2lkICIsIGNvcmUgZHVtcGVkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAic3VicHJvY2VzcyAlcyBmYWlsZWQgd2l0aCB3YWl0IHN0YXR1cyBjb2RlICVkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxNTEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQ2MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAid2FpdCBmb3Igc3VicHJvY2VzcyAlcyBmYWlsZWQiCittc2dzdHIgIuCouOCovOCpiOCpseCosiDgqKvgqYfgqLLgqY3gqLkg4Ki54KmLIOCosuCpiCDgqKbgqL/gqJMiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgcGFja2FnZSBuYW1lIGAlLjI1MHMnIGluIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6ODEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInRydW5jYXRlZCB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLgqKvgqL7gqIfgqLIgYCUuMjUwcycg4Ki54Kif4Ki+4KiJ4KijIOCosuCoiCDgqIXgqLjgqKvgqLzgqLIiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjg1CisjLCBjLWZvcm1hdAorbXNnaWQgInN5bnRheCBlcnJvciBpbiB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIGF0IGNoYXJhY3RlciBgJXMnJXMiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MTM0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3Blbi9jcmVhdGUgdHJpZ2dlcnMgbG9ja2ZpbGUgYCUuMjUwcyciCittc2dzdHIgIuColeCpsOCon+CosOCpi+CosiDgqKvgqL7gqIfgqLIg4Kic4Ki+4Kij4KiV4Ki+4Kiw4KmAIGAlLjI1MHMnIOCoueCon+CovuCoieCooyDgqLLgqIgg4KiF4Ki44Kir4Ki84KiyIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNDEKKyMsIGZ1enp5Cittc2dpZCAidHJpZ2dlcnMgYXJlYSIKK21zZ3N0ciAiJXMg4Kiy4Ki/4KiW4KijIOCosuCoiCDgqIXgqLjgqKvgqLzgqLI6ICVzIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuColeCpsOCon+CosOCpi+CosiDgqKvgqL7gqIfgqLIg4Kic4Ki+4Kij4KiV4Ki+4Kiw4KmAIGAlLjI1MHMnIOCoueCon+CovuCoieCooyDgqLLgqIgg4KiF4Ki44Kir4Ki84KiyIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNjUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuColeCpsOCon+CosOCpi+CosiDgqKvgqL7gqIfgqLIg4Kic4Ki+4Kij4KiV4Ki+4Kiw4KmAIGAlLjI1MHMnIOCoueCon+CovuCoieCooyDgqLLgqIgg4KiF4Ki44Kir4Ki84KiyIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNzkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuL2NyZWF0ZSBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4KiV4Kmw4Kif4Kiw4KmL4KiyIOCoq+CovuCoh+CosiDgqJzgqL7gqKPgqJXgqL7gqLDgqYAgYCUuMjUwcycg4Ki54Kif4Ki+4KiJ4KijIOCosuCoiCDgqIXgqLjgqKvgqLzgqLIiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjIxNQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcmVhZGluZyB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIlLjI1MHMg4Kiq4Kmc4KmN4Ki54KioIOCopuCpjOCosOCovuCoqCDgqJfgqLLgqKTgqYAiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjIyMworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ldyB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLgqJXgqbDgqJ/gqLDgqYvgqLIg4Kir4Ki+4KiH4KiyIOConOCovuCoo+ColeCovuCosOCpgCBgJS4yNTBzJyDgqLngqJ/gqL7gqIngqKMg4Kiy4KiIIOCoheCouOCoq+CovOCosiIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MjI4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuColeCpsOCon+CosOCpi+CosiDgqKvgqL7gqIfgqLIg4Kic4Ki+4Kij4KiV4Ki+4Kiw4KmAIGAlLjI1MHMnIOCoueCon+CovuCoieCooyDgqLLgqIgg4KiF4Ki44Kir4Ki84KiyIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoyMzIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLgqJXgqbDgqJ/gqLDgqYvgqLIg4Kir4Ki+4KiH4KiyIOConOCovuCoo+ColeCovuCosOCpgCBgJS4yNTBzJyDgqLngqJ/gqL7gqIngqKMg4Kiy4KiIIOCoheCouOCoq+CovOCosiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjIyMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiaW52YWxpZCBvciB1bmtub3duIHN5bnRheCBpbiB0cmlnZ2VyIG5hbWUgYCUuMjUwcycgKGluIHRyaWdnZXIgaW50ZXJlc3RzIGZvciAiCisicGFja2FnZSBgJS4yNTBzJykiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjI2MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gdHJpZ2dlciBpbnRlcmVzdCBsaXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuColeCpsOCon+CosOCpi+CosiDgqKvgqL7gqIfgqLIg4Kic4Ki+4Kij4KiV4Ki+4Kiw4KmAIGAlLjI1MHMnIOCoueCon+CovuCoieCooyDgqLLgqIgg4KiF4Ki44Kir4Ki84KiyIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MjkyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmV3aW5kIHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4KiV4Kmw4Kif4Kiw4KmL4KiyIOCoq+CovuCoh+CosiDgqJzgqL7gqKPgqJXgqL7gqLDgqYAgYCUuMjUwcycg4Ki54Kif4Ki+4KiJ4KijIOCosuCoiCDgqIXgqLjgqKvgqLzgqLIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyBzeW50YXggZXJyb3I7IGlsbGVnYWwgcGFja2FnZSBuYW1lIGAlLjI1MHMnOiAiCisiJS4yNTBzIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMTgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLgqJXgqbDgqJ/gqLDgqYvgqLIg4Kir4Ki+4KiH4KiyIOConOCovuCoo+ColeCovuCosOCpgCBgJS4yNTBzJyDgqLngqJ/gqL7gqIngqKMg4Kiy4KiIIOCoheCouOCoq+CovOCosiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMyMQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgIuColeCpsOCon+CosOCpi+CosiDgqKvgqL7gqIfgqLIg4Kic4Ki+4Kij4KiV4Ki+4Kiw4KmAIGAlLjI1MHMnIOCoueCon+CovuCoieCooyDgqLLgqIgg4KiF4Ki44Kir4Ki84KiyIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzI0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlICclLjI1MHMnIgorbXNnc3RyICLgqJXgqbDgqJ/gqLDgqYvgqLIg4Kir4Ki+4KiH4KiyIOConOCovuCoo+ColeCovuCosOCpgCBgJS4yNTBzJyDgqLngqJ/gqL7gqIngqKMg4Kiy4KiIIOCoheCouOCoq+CovOCosiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMzMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4KiV4Kmw4Kif4Kiw4KmL4KiyIOCoq+CovuCoh+CosiDgqJzgqL7gqKPgqJXgqL7gqLDgqYAgYCUuMjUwcycg4Ki54Kif4Ki+4KiJ4KijIOCosuCoiCDgqIXgqLjgqKvgqLzgqLIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozNDAgbGliL2Rwa2cvdHJpZ2xpYi5jOjM0MiBsaWIvZHBrZy90cmlnbGliLmM6NDcyCisjOiBzcmMvcmVtb3ZlLmM6Mjg2IHNyYy9yZW1vdmUuYzozNzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlbW92ZSBgJS4yNTBzJyIKK21zZ3N0ciAiYCUuMjUwcycg4Ki54Kif4Ki+4KiIIOCoqOCoueCpgOCogiDgqJzgqL4g4Ki44KiV4Kim4KmAIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzYwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuColeCpsOCon+CosOCpi+CosiDgqKvgqL7gqIfgqLIg4Kic4Ki+4Kij4KiV4Ki+4Kiw4KmAIGAlLjI1MHMnIOCoueCon+CovuCoieCooyDgqLLgqIgg4KiF4Ki44Kir4Ki84KiyIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzgzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4KiV4Kmw4Kif4Kiw4KmL4KiyIOCoq+CovuCoh+CosiDgqJzgqL7gqKPgqJXgqL7gqLDgqYAgYCUuMjUwcycg4Ki54Kif4Ki+4KiJ4KijIOCosuCoiCDgqIXgqLjgqKvgqLzgqLIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0NTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImR1cGxpY2F0ZSBmaWxlIHRyaWdnZXIgaW50ZXJlc3QgZm9yIGZpbGVuYW1lIGAlLjI1MHMnIGFuZCBwYWNrYWdlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0ODMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4KiV4Kmw4Kif4Kiw4KmL4KiyIOCoq+CovuCoh+CosiDgqJzgqL7gqKPgqJXgqL7gqLDgqYAgYCUuMjUwcycg4Ki54Kif4Ki+4KiJ4KijIOCosuCoiCDgqIXgqLjgqKvgqLzgqLIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0OTMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLgqJXgqbDgqJ/gqLDgqYvgqLIg4Kir4Ki+4KiH4KiyIOConOCovuCoo+ColeCovuCosOCpgCBgJS4yNTBzJyDgqLngqJ/gqL7gqIngqKMg4Kiy4KiIIOCoheCouOCoq+CovOCosiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ5NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgJyUuMjUwcyciCittc2dzdHIgIuColeCpsOCon+CosOCpi+CosiDgqKvgqL7gqIfgqLIg4Kic4Ki+4Kij4KiV4Ki+4Kiw4KmAIGAlLjI1MHMnIOCoueCon+CovuCoieCooyDgqLLgqIgg4KiF4Ki44Kir4Ki84KiyIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDk5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlICclLjI1MHMnIgorbXNnc3RyICLgqJXgqbDgqJ/gqLDgqYvgqLIg4Kir4Ki+4KiH4KiyIOConOCovuCoo+ColeCovuCosOCpgCBgJS4yNTBzJyDgqLngqJ/gqL7gqIngqKMg4Kiy4KiIIOCoheCouOCoq+CovOCosiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjUwMworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuColeCpsOCon+CosOCpi+CosiDgqKvgqL7gqIfgqLIg4Kic4Ki+4Kij4KiV4Ki+4Kiw4KmAIGAlLjI1MHMnIOCoueCon+CovuCoieCooyDgqLLgqIgg4KiF4Ki44Kir4Ki84KiyIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTA3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGFzIGAlLjI1MHMnIgorbXNnc3RyICLgqJXgqbDgqJ/gqLDgqYvgqLIg4Kir4Ki+4KiH4KiyIOConOCovuCoo+ColeCovuCosOCpgCBgJS4yNTBzJyDgqLngqJ/gqL7gqIngqKMg4Kiy4KiIIOCoheCouOCoq+CovOCosiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjU0MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLgqJXgqbDgqJ/gqLDgqYvgqLIg4Kir4Ki+4KiH4KiyIOConOCovuCoo+ColeCovuCosOCpgCBgJS4yNTBzJyDgqLngqJ/gqL7gqIngqKMg4Kiy4KiIIOCoheCouOCoq+CovOCosiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjU1MgorIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImZpbGUgdHJpZ2dlcnMgcmVjb3JkIG1lbnRpb25zIGlsbGVnYWwgcGFja2FnZSBuYW1lIGAlLjI1MHMnIChmb3IgaW50ZXJlc3QgaW4gIgorImZpbGUgYCUuMjUwcycpOiAlLjI1MHMiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjY2NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidHJpZ2dlcnMgY2kgZmlsZSBgJS4yNTBzJyBjb250YWlucyBpbGxlZ2FsIHRyaWdnZXIgc3ludGF4IGluIHRyaWdnZXIgbmFtZSBgIgorIiUuMjUwcyc6ICUuMjUwcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Njg0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiB0cmlnZ2VycyBjaSBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLgqJXgqbDgqJ/gqLDgqYvgqLIg4Kir4Ki+4KiH4KiyIOConOCovuCoo+ColeCovuCosOCpgCBgJS4yNTBzJyDgqLngqJ/gqL7gqIngqKMg4Kiy4KiIIOCoheCouOCoq+CovOCosiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjY5OQorbXNnaWQgInRyaWdnZXJzIGNpIGZpbGUgY29udGFpbnMgdW5rbm93biBkaXJlY3RpdmUgc3ludGF4IgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo3MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJpZ2dlcnMgY2kgZmlsZSBjb250YWlucyB1bmtub3duIGRpcmVjdGl2ZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Nzc2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHRyaWdnZXJzIHN0YXRlIGRpcmVjdG9yeSBgJS4yNTBzJyIKK21zZ3N0ciAi4KiV4Kmw4Kif4Kiw4KmL4KiyIOCoq+CovuCoh+CosiDgqJzgqL7gqKPgqJXgqL7gqLDgqYAgYCUuMjUwcycg4Ki54Kif4Ki+4KiJ4KijIOCosuCoiCDgqIXgqLjgqKvgqLzgqLIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo3NzkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgb3duZXJzaGlwIG9mIHRyaWdnZXJzIHN0YXRlIGRpcmVjdG9yeSBgJS4yNTBzJyIKK21zZ3N0ciAi4KiV4Kmw4Kif4Kiw4KmL4KiyIOCoq+CovuCoh+CosiDgqJzgqL7gqKPgqJXgqL7gqLDgqYAgYCUuMjUwcycg4Ki54Kif4Ki+4KiJ4KijIOCosuCoiCDgqIXgqLjgqKvgqLzgqLIiCisKKyM6IGxpYi9kcGtnL3RyaWduYW1lLmM6MzQKK21zZ2lkICJlbXB0eSB0cmlnZ2VyIG5hbWVzIGFyZSBub3QgcGVybWl0dGVkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWduYW1lLmM6MzgKK21zZ2lkICJ0cmlnZ2VyIG5hbWUgY29udGFpbnMgaW52YWxpZCBjaGFyYWN0ZXIiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdXRpbHMuYzo1NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAicmVhZCBlcnJvciBpbiBgJS4yNTBzJyIKK21zZ3N0ciAiJS4yNTBzIOCoquCpnOCpjeCoueCoqCAn4KiaIOCol+CosuCopOCpgCIKKworIzogbGliL2Rwa2cvdXRpbHMuYzo2MQorIywgYy1mb3JtYXQKK21zZ2lkICJmZ2V0cyBnYXZlIGFuIGVtcHR5IHN0cmluZyBmcm9tIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3V0aWxzLmM6NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAidG9vLWxvbmcgbGluZSBvciBtaXNzaW5nIG5ld2xpbmUgaW4gYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdXRpbHMuYzo3NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgcmVhZGluZyBgJS4yNTBzJyIKK21zZ3N0ciAiJS4yNTBzIOCoquCpnOCpjeCoueCoqCDgqKbgqYzgqLDgqL7gqKgg4KiX4Kiy4Kik4KmAIgorCisjOiBsaWIvZHBrZy92YXJidWYuYzo4MiBsaWIvZHBrZy92YXJidWYuYzo4OAorbXNnaWQgImVycm9yIGZvcm1hdHRpbmcgc3RyaW5nIGludG8gdmFyYnVmIHZhcmlhYmxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjE3OSBzcmMvYXJjaGl2ZXMuYzoyMDAgc3JjL2FyY2hpdmVzLmM6NzI0Cittc2dpZCAiZXJyb3IgcmVhZGluZyBmcm9tIGRwa2ctZGViIHBpcGUiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTk1CisjLCBjLWZvcm1hdAorbXNnaWQgInNraXBwZWQgdW5wYWNraW5nIGZpbGUgJyUuMjU1cycgKHJlcGxhY2VkIG9yIGV4Y2x1ZGVkPykiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MjQ2IHNyYy9hcmNoaXZlcy5jOjI1MAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIHRpbWVzdGFtcHMgb2YgYCUuMjU1cyciCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MjYyCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHNldHRpbmcgb3duZXJzaGlwIG9mIHN5bWxpbmsgYCUuMjU1cyciCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MjY1IHNyYy9hcmNoaXZlcy5jOjczNCBzcmMvc3RhdGNtZC5jOjE2MworIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIG93bmVyc2hpcCBvZiBgJS4yNTVzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoyNjcgc3JjL2FyY2hpdmVzLmM6NzM2IHNyYy9zdGF0Y21kLmM6MTY1CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHNldHRpbmcgcGVybWlzc2lvbnMgb2YgYCUuMjU1cyciCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6Mzk1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBzdGF0IChkZXJlZmVyZW5jZSkgZXhpc3Rpbmcgc3ltbGluayBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo0MTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImZhaWxlZCB0byBzdGF0IChkZXJlZmVyZW5jZSkgcHJvcG9zZWQgbmV3IHN5bWxpbmsgdGFyZ2V0IGAlLjI1MHMnIGZvciAiCisic3ltbGluayBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo0NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInRyeWluZyB0byBvdmVyd3JpdGUgYCUuMjUwcycsIHdoaWNoIGlzIHRoZSBkaXZlcnRlZCB2ZXJzaW9uIG9mIGAiCisiJS4yNTBzJyAocGFja2FnZTogJS4xMDBzKSIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo0ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJ5aW5nIHRvIG92ZXJ3cml0ZSBgJS4yNTBzJywgd2hpY2ggaXMgdGhlIGRpdmVydGVkIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6NTExCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGAlLjI1NXMnICh3aGljaCBJIHdhcyBhYm91dCB0byBpbnN0YWxsKSIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo1MTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVuYWJsZSB0byBjbGVhbiB1cCBtZXNzIHN1cnJvdW5kaW5nIGAlLjI1NXMnIGJlZm9yZSBpbnN0YWxsaW5nIGFub3RoZXIgIgorInZlcnNpb24iCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6NTI1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IHJlc3RvcmVkIGAlLjI1NXMnIGJlZm9yZSBpbnN0YWxsaW5nIGFub3RoZXIgdmVyc2lvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo1NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiYXJjaGl2ZSBjb250YWluZWQgb2JqZWN0IGAlLjI1NXMnIG9mIHVua25vd24gdHlwZSAweCV4IgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjYyNiBzcmMvZGl2ZXJ0Y21kLmM6MTUwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo2ODIKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjIyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjg0CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTQ0MSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTY4MAorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxNjcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNDQKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTI3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gcmVhZCAlczogJXMiCittc2dpZCAiY2Fubm90IHN0YXQgZmlsZSAnJXMnIgorbXNnc3RyICIlcyDgqKrgqZzgqY3gqLngqKgg4Kiy4KiIIOCoheCouOCoq+CovOCosjogJXMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjY0MQorIywgYy1mb3JtYXQKK21zZ2lkICJSZXBsYWNpbmcgZmlsZXMgaW4gb2xkIHBhY2thZ2UgJXMgLi4uXG4iCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6NjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlcGxhY2VkIGJ5IGZpbGVzIGluIGluc3RhbGxlZCBwYWNrYWdlICVzIC4uLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjY1NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidHJ5aW5nIHRvIG92ZXJ3cml0ZSBkaXJlY3RvcnkgJyUuMjUwcycgaW4gcGFja2FnZSAlLjI1MHMgJS4yNTBzIHdpdGggIgorIm5vbmRpcmVjdG9yeSIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJ5aW5nIHRvIG92ZXJ3cml0ZSAnJS4yNTBzJywgd2hpY2ggaXMgYWxzbyBpbiBwYWNrYWdlICUuMjUwcyAlLjI1MHMiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6NzExCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGAlLjI1NXMnICh3aGlsZSBwcm9jZXNzaW5nIGAlLjI1NXMnKSIKK21zZ3N0ciAi4KiV4Kmw4Kif4Kiw4KmL4KiyIOCoq+CovuCoh+CosiDgqJzgqL7gqKPgqJXgqL7gqLDgqYAgYCUuMjUwcycg4Ki54Kif4Ki+4KiJ4KijIOCosuCoiCDgqIXgqLjgqKvgqLzgqLIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjcxOAorIywgYy1mb3JtYXQKK21zZ2lkICJiYWNrZW5kIGRwa2ctZGViIGR1cmluZyBgJS4yNTVzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NDQgc3JjL2FyY2hpdmVzLmM6OTA4IHNyYy9hcmNoaXZlcy5jOjk0OQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nL3dyaXRpbmcgYCUuMjU1cyciCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6NzQ4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIHBpcGUgYCUuMjU1cyciCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6NzUzIHNyYy9hcmNoaXZlcy5jOjc1OAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBkZXZpY2UgYCUuMjU1cyciCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6NzcxCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIGhhcmQgbGluayBgJS4yNTVzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NzcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjUzOQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBzeW1ib2xpYyBsaW5rIGAlLjI1NXMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc4MworIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBkaXJlY3RvcnkgYCUuMjU1cyciCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6ODIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBtb3ZlIGFzaWRlIGAlLjI1NXMnIHRvIGluc3RhbGwgbmV3IHZlcnNpb24iCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6ODMyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzozMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgbGluayBgJS4yNTVzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4MzQgc3JjL2NvbmZpZ3VyZS5jOjQyMworIywgYy1mb3JtYXQKK21zZ2lkICJzeW1ib2xpYyBsaW5rICclLjI1MHMnIHNpemUgaGFzIGNoYW5nZWQgZnJvbSAlamQgdG8gJXpkIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjgzOQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gbWFrZSBiYWNrdXAgc3ltbGluayBmb3IgYCUuMjU1cyciCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6ODQxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaG93biBiYWNrdXAgc3ltbGluayBmb3IgYCUuMjU1cyciCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6ODQ2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBtYWtlIGJhY2t1cCBsaW5rIG9mIGAlLjI1NXMnIGJlZm9yZSBpbnN0YWxsaW5nIG5ldyB2ZXJzaW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjg2MyBzcmMvYXJjaGl2ZXMuYzo5NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IHZlcnNpb24gb2YgYCUuMjU1cyciCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6OTAyIHNyYy9hcmNoaXZlcy5jOjk0NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gJyUuMjU1cyciCittc2dzdHIgIiVzIOCoueCon+CovuCoieCooyDgqLLgqIgg4KiF4Ki44Kir4Ki84KiyOiAlcyIKKworIzogc3JjL2FyY2hpdmVzLmM6OTQ3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBmaWxlICclLjI1NXMnIgorbXNnc3RyICIlcyDgqLngqJ/gqL7gqIngqKMg4Kiy4KiIIOCoheCouOCoq+CovOCosjogJXMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMDAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpZ25vcmluZyBkZXBlbmRlbmN5IHByb2JsZW0gd2l0aCAlczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6IOCoqOCov+CosOCoreCosOCopOCoviDgqLjgqK7gqbHgqLjgqL/gqIYg4Kio4KmHICVzIOCoqOCpguCpsCDgqLngqJ/gqL7gqIngqKMg4Kik4KmL4KiCIOCosOCpi+ColeCov+CohjpcbiIKKyIlcyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAwNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiY29uc2lkZXJpbmcgZGVjb25maWd1cmF0aW9uIG9mIGVzc2VudGlhbFxuIgorIiBwYWNrYWdlICVzLCB0byBlbmFibGUgJXMuIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IG5vLCAlcyBpcyBlc3NlbnRpYWwsIHdpbGwgbm90IGRlY29uZmlndXJlXG4iCisiIGl0IGluIG9yZGVyIHRvIGVuYWJsZSAlcy5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDIyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBubywgY2Fubm90IHByb2NlZWQgd2l0aCAlcyAoLS1hdXRvLWRlY29uZmlndXJlIHdpbGwgaGVscCk6XG4iCisiJXMiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAzMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAicmVtb3ZhbCBvZiAlLjI1MHMiCittc2dzdHIgIiUuMjUwcyDgqKrgqZzgqY3gqLngqKggJ+ComiDgqJfgqLLgqKTgqYAiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW5zdGFsbGF0aW9uIG9mICUuMjUwcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDU4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBjb25zaWRlcmluZyBkZWNvbmZpZ3VyYXRpb24gb2YgJXMsIHdoaWNoIHdvdWxkIGJlIGJyb2tlbiBieSAlcyAuLi5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDY1CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IHllcywgd2lsbCBkZWNvbmZpZ3VyZSAlcyAoYnJva2VuIGJ5ICVzKS5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDY5IHNyYy9hcmNoaXZlcy5jOjExODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IHJlZ2FyZGluZyAlcyBjb250YWluaW5nICVzOlxuIgorIiVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNzcKK21zZ2lkICJpZ25vcmluZyBicmVha2FnZSwgbWF5IHByb2NlZWQgYW55d2F5ISIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDgyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpbnN0YWxsaW5nICUuMjUwcyB3b3VsZCBicmVhayAlLjI1MHMsIGFuZFxuIgorIiBkZWNvbmZpZ3VyYXRpb24gaXMgbm90IHBlcm1pdHRlZCAoLS1hdXRvLWRlY29uZmlndXJlIG1pZ2h0IGhlbHApIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW5zdGFsbGluZyAlLjI1MHMgd291bGQgYnJlYWsgZXhpc3Rpbmcgc29mdHdhcmUiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTExNgorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiBjb25zaWRlcmluZyByZW1vdmluZyAlcyBpbiBmYXZvdXIgb2YgJXMgLi4uXG4iCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTEyMgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgcHJvcGVybHkgaW5zdGFsbGVkIC0gaWdub3JpbmcgYW55IGRlcGVuZGVuY2llcyBvbiBpdC5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTUxCisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IG1heSBoYXZlIHRyb3VibGUgcmVtb3ZpbmcgJXMsIGFzIGl0IHByb3ZpZGVzICVzIC4uLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExNjYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBwYWNrYWdlICVzIHJlcXVpcmVzIHJlaW5zdGFsbGF0aW9uLCBidXQgd2lsbCByZW1vdmUgYW55d2F5IGFzIHlvdSAiCisicmVxdWVzdGVkLlxuIgorbXNnc3RyICIiCisi4Kiq4KmI4KiV4KmH4KicICVzIOCopuCpgCDgqJzgqL7gqILgqJog4Kir4KmH4Kiy4KmN4Ki5IOCoueCpi+CoiFxuIgorIuCoquCosCDgqKTgqYHgqLngqL7gqKHgqYAg4Kiu4Kmw4KiXIOCoheCoqOCpgeCouOCovuCosCDgqIfgqbDgqLjgqJ/gqL7gqLIg4KiV4KmA4Kik4Ki+IOConOCoviDgqLDgqL/gqLngqL4g4Ki54KmI4KWkXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExNjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogcGFja2FnZSAlcyByZXF1aXJlcyByZWluc3RhbGxhdGlvbiwgd2lsbCBub3QgcmVtb3ZlLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogeWVzLCB3aWxsIHJlbW92ZSAlcyBpbiBmYXZvdXIgb2YgJXMuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE5MAorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mbGljdGluZyBwYWNrYWdlcyAtIG5vdCBpbnN0YWxsaW5nICUuMjUwcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTkxCittc2dpZCAiaWdub3JpbmcgY29uZmxpY3QsIG1heSBwcm9jZWVkIGFueXdheSEiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTIzNQorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIC0tcmVjdXJzaXZlIG5lZWRzIGF0IGxlYXN0IG9uZSBwYXRoIGFyZ3VtZW50IgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNDUKK21zZ2lkICJmaW5kIGZvciBkcGtnIC0tcmVjdXJzaXZlIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNjYKK21zZ2lkICJmYWlsZWQgdG8gZmRvcGVuIGZpbmQncyBwaXBlIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNzIKK21zZ2lkICJlcnJvciByZWFkaW5nIGZpbmQncyBwaXBlIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNzMKK21zZ2lkICJlcnJvciBjbG9zaW5nIGZpbmQncyBwaXBlIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmluZCBmb3IgLS1yZWN1cnNpdmUgcmV0dXJuZWQgdW5oYW5kbGVkIGVycm9yICVpIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNzkKK21zZ2lkICJzZWFyY2hlZCwgYnV0IGZvdW5kIG5vIHBhY2thZ2VzIChmaWxlcyBtYXRjaGluZyAqLmRlYikiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI5MAorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGF0IGxlYXN0IG9uZSBwYWNrYWdlIGFyY2hpdmUgZmlsZSBhcmd1bWVudCIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzI1IHNyYy9kaXZlcnRjbWQuYzo3OCBzcmMvZGl2ZXJ0Y21kLmM6MTE4CisjOiBzcmMvZW5xdWlyeS5jOjE2NiBzcmMvZW5xdWlyeS5jOjI3OSBzcmMvZW5xdWlyeS5jOjQ0OSBzcmMvZW5xdWlyeS5jOjQ1MQorIzogc3JjL2VucXVpcnkuYzo0NjQgc3JjL21haW4uYzo2NiBzcmMvbWFpbi5jOjE2MyBzcmMvbWFpbi5jOjMxNAorIzogc3JjL21haW4uYzo0OTMgc3JjL3BhY2thZ2VzLmM6MjU0IHNyYy9xdWVyeWNtZC5jOjI1MiBzcmMvcXVlcnljbWQuYzozNTUKKyM6IHNyYy9xdWVyeWNtZC5jOjM5NiBzcmMvcXVlcnljbWQuYzo0MDQgc3JjL3F1ZXJ5Y21kLmM6NDQ4IHNyYy9xdWVyeWNtZC5jOjUxNworIzogc3JjL3F1ZXJ5Y21kLmM6NjA2IHNyYy9xdWVyeWNtZC5jOjY1MCBzcmMvc2VsZWN0LmM6Nzkgc3JjL3N0YXRjbWQuYzo2OAorIzogc3JjL3N0YXRjbWQuYzo5OCBzcmMvdHJpZ2NtZC5jOjU4IHNyYy90cmlnY21kLmM6OTAgZHBrZy1kZWIvYnVpbGQuYzo0NDEKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyMTcgZHBrZy1kZWIvZXh0cmFjdC5jOjI1MCBkcGtnLWRlYi9pbmZvLmM6MjAzCisjOiBkcGtnLWRlYi9pbmZvLmM6MjY1IGRwa2ctZGViL21haW4uYzo2MCBkcGtnLWRlYi9tYWluLmM6MTI2CisjOiBkcGtnLXNwbGl0L2luZm8uYzoyNTcgZHBrZy1zcGxpdC9tYWluLmM6NTQgZHBrZy1zcGxpdC9tYWluLmM6OTgKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxNDQgZHBrZy1zcGxpdC9xdWV1ZS5jOjI4MAorbXNnaWQgIjxzdGFuZGFyZCBvdXRwdXQ+IgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzMjYgc3JjL3BhY2thZ2VzLmM6MjU1IHNyYy9xdWVyeWNtZC5jOjI1MworIzogc3JjL3F1ZXJ5Y21kLmM6MzUzIHNyYy9xdWVyeWNtZC5jOjQ1NCBzcmMvcXVlcnljbWQuYzo1MTggc3JjL3NlbGVjdC5jOjgwCisjOiBkcGtnLXNwbGl0L21haW4uYzoxNjkgZHBrZy1zcGxpdC9xdWV1ZS5jOjIxOAorbXNnaWQgIjxzdGFuZGFyZCBlcnJvcj4iCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTM2NworIywgYy1mb3JtYXQKK21zZ2lkICJTZWxlY3RpbmcgcHJldmlvdXNseSB1bnNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTM3MQorIywgYy1mb3JtYXQKK21zZ2lkICJTa2lwcGluZyB1bnNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTM4NworIywgYy1mb3JtYXQKK21zZ2lkICJWZXJzaW9uICUuMjUwcyBvZiAlLjI1MHMgYWxyZWFkeSBpbnN0YWxsZWQsIHNraXBwaW5nLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzOTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZG93bmdyYWRpbmcgJS4yNTBzIGZyb20gJS4yNTBzIHRvICUuMjUwcy4iCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTQwMgorIywgYy1mb3JtYXQKK21zZ2lkICJXaWxsIG5vdCBkb3duZ3JhZGUgJS4yNTBzIGZyb20gdmVyc2lvbiAlLjI1MHMgdG8gJS4yNTBzLCBza2lwcGluZy5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvY2xlYW51cC5jOjg2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1bmFibGUgdG8gcmVtb3ZlIG5ld2x5LWluc3RhbGxlZCB2ZXJzaW9uIG9mIGAlLjI1MHMnIHRvIGFsbG93IHJlaW5zdGFsbGF0aW9uICIKKyJvZiBiYWNrdXAgY29weSIKK21zZ3N0ciAiIgorCisjOiBzcmMvY2xlYW51cC5jOjkzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZXN0b3JlIGJhY2t1cCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9jbGVhbnVwLmM6OTcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgYmFja3VwIGNvcHkgb2YgJyUuMjUwcyciCittc2dzdHIgIiVzIOComuCosuCovuCoieCooyDgqLLgqIgg4KiF4Ki44Kir4Ki84KiyIgorCisjOiBzcmMvY2xlYW51cC5jOjEwMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIG5ld2x5LWluc3RhbGxlZCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9jbGVhbnVwLmM6MTA4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgbmV3bHktZXh0cmFjdGVkIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjEwNAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgbmV3IGRpc3RyaWJ1dGVkIGNvbmZmaWxlICclLjI1MHMnIgorbXNnc3RyICIlcyDgqKzgqKPgqL7gqIngqKMg4Kiy4KiIIOCoheCouOCoq+CovOCosjogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgY3VycmVudCBpbnN0YWxsZWQgY29uZmZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjEyNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiQ29uZmlndXJhdGlvbiBmaWxlIGAlcycsIGRvZXMgbm90IGV4aXN0IG9uIHN5c3RlbS5cbiIKKyJJbnN0YWxsaW5nIG5ldyBjb25maWcgZmlsZSBhcyB5b3UgcmVxdWVzdGVkLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxNjgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlIG9sZCBiYWNrdXAgJyUuMjUwcyc6ICVzIgorbXNnc3RyICIlcyDgqJrgqLLgqL7gqIngqKMg4Kiy4KiIIOCoheCouOCoq+CovOCosiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE3NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW5hbWUgJyUuMjUwcycgdG8gJyUuMjUwcyc6ICVzIgorbXNnc3RyICIlcyDgqJrgqLLgqL7gqIngqKMg4Kiy4KiIIOCoheCouOCoq+CovOCosiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE4MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW1vdmUgJyUuMjUwcyc6ICVzIgorbXNnc3RyICIlcyDgqJrgqLLgqL7gqIngqKMg4Kiy4KiIIOCoheCouOCoq+CovOCosiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE4OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW1vdmUgb2xkIGRpc3RyaWJ1dGVkIHZlcnNpb24gJyUuMjUwcyc6ICVzIgorbXNnc3RyICLgqJXgqbDgqJ/gqLDgqYvgqLIg4Kir4Ki+4KiH4KiyIOConOCovuCoo+ColeCovuCosOCpgCBgJS4yNTBzJyDgqLngqJ/gqL7gqIngqKMg4Kiy4KiIIOCoheCouOCoq+CovOCosiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE5MgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIHJlbW92ZSAnJS4yNTBzJyAoYmVmb3JlIG92ZXJ3cml0ZSk6ICVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxOTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gbGluayAnJS4yNTBzJyB0byAnJS4yNTBzJzogJXMiCittc2dzdHIgIiVzIOComuCosuCovuCoieCooyDgqLLgqIgg4KiF4Ki44Kir4Ki84KiyIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjAwCisjLCBjLWZvcm1hdAorbXNnaWQgIkluc3RhbGxpbmcgbmV3IHZlcnNpb24gb2YgY29uZmlnIGZpbGUgJXMgLi4uXG4iCittc2dzdHIgIuCouOCpsOCosOComuCoqOCoviDgqKvgqL7gqIfgqLIgJXMg4Kim4Ki+IOCoqOCoteCovuCogiDgqLXgqLDgqJzgqKgg4KiH4Kmw4Ki44Kif4Ki+4KiyIOColeCpgOCopOCoviDgqJzgqL4g4Kiw4Ki/4Ki54Ki+IOCoueCpiC4uLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjA2IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo1NDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgYCUuMjUwcycgYXMgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI1NworIywgYy1mb3JtYXQKK21zZ2lkICJubyBwYWNrYWdlIG5hbWVkIGAlcycgaXMgaW5zdGFsbGVkLCBjYW5ub3QgY29uZmlndXJlIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzoyNjAKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlLjI1MHMgaXMgYWxyZWFkeSBpbnN0YWxsZWQgYW5kIGNvbmZpZ3VyZWQiCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI2MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisicGFja2FnZSAlLjI1MHMgaXMgbm90IHJlYWR5IGZvciBjb25maWd1cmF0aW9uXG4iCisiIGNhbm5vdCBjb25maWd1cmUgKGN1cnJlbnQgc3RhdHVzIGAlLjI1MHMnKSIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6Mjk0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBkZXBlbmRlbmN5IHByb2JsZW1zIHByZXZlbnQgY29uZmlndXJhdGlvbiBvZiAlczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6Mjk3Cittc2dpZCAiZGVwZW5kZW5jeSBwcm9ibGVtcyAtIGxlYXZpbmcgdW5jb25maWd1cmVkIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzozMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6ICVzOiBkZXBlbmRlbmN5IHByb2JsZW1zLCBidXQgY29uZmlndXJpbmcgYW55d2F5IGFzIHlvdSByZXF1ZXN0ZWQ6XG4iCisiJXMiCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjMwOQorbXNnaWQgIiIKKyJQYWNrYWdlIGlzIGluIGEgdmVyeSBiYWQgaW5jb25zaXN0ZW50IHN0YXRlIC0geW91IHNob3VsZFxuIgorIiByZWluc3RhbGwgaXQgYmVmb3JlIGF0dGVtcHRpbmcgY29uZmlndXJhdGlvbi4iCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjMxMgorIywgYy1mb3JtYXQKK21zZ2lkICJTZXR0aW5nIHVwICVzICglcykgLi4uXG4iCittc2dzdHIgIiVzICglcykg4Ki44KmI4Kmx4Kif4KiF4Kmx4KiqIOColeCpgOCopOCoviDgqJzgqL4g4Kiw4Ki/4Ki54Ki+IOCoueCpiCAuLi5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjM5NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IHVuYWJsZSB0byBzdGF0IGNvbmZpZyBmaWxlICclcydcbiIKKyIgKD0gJyVzJyk6ICVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo0MDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBjb25maWcgZmlsZSAnJXMnIGlzIGEgY2lyY3VsYXIgbGlua1xuIgorIiAoPSAnJXMnKSIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDE4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogdW5hYmxlIHRvIHJlYWRsaW5rIGNvbmZmaWxlICclcydcbiIKKyIgKD0gJyVzJyk6ICVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo0NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBjb25mZmlsZSAnJS4yNTBzJyByZXNvbHZlcyB0byBkZWdlbmVyYXRlIGZpbGVuYW1lXG4iCisiICgnJXMnIGlzIGEgc3ltbGluayB0byAnJXMnKSIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDYwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBjb25mZmlsZSAnJS4yNTBzJyBpcyBub3QgYSBwbGFpbiBmaWxlIG9yIHN5bWxpbmsgKD0gJyVzJykiCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQ4NgorbXNnaWQgIm1kNWhhc2giCittc2dzdHIgIm1kNWhhc2giCisKKyM6IHNyYy9jb25maWd1cmUuYzo0OTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiB1bmFibGUgdG8gb3BlbiBjb25mZmlsZSAlcyBmb3IgaGFzaDogJXMiCittc2dzdHIgIiVzIOColuCpi+CosuCpjeCoueCooyDgqLLgqIgg4KiF4Ki44Kir4Ki84KiyOiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjUyMiBzcmMvY29uZmlndXJlLmM6NTI2Cittc2dpZCAiY29uZmZpbGUgZGlmZmVyZW5jZSB2aXN1YWxpemVyIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo1NDMKK21zZ2lkICJUeXBlIGBleGl0JyB3aGVuIHlvdSdyZSBkb25lLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo1NTIgc3JjL2NvbmZpZ3VyZS5jOjU1NgorbXNnaWQgImNvbmZmaWxlIHNoZWxsIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIkNvbmZpZ3VyYXRpb24gZmlsZSBgJXMnIgorbXNnc3RyICIiCisiXG4iCisi4Ki44Kmw4Kiw4Kia4Kio4Ki+IOCoq+CovuCoh+CosiBgJXMnIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjA0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAoYWN0dWFsbHkgYCVzJykiCittc2dzdHIgIiAo4KiF4Ki44KiyIGAlcycpIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjA4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgPT0+IEZpbGUgb24gc3lzdGVtIGNyZWF0ZWQgYnkgeW91IG9yIGJ5IGEgc2NyaXB0LlxuIgorIiA9PT4gRmlsZSBhbHNvIGluIHBhY2thZ2UgcHJvdmlkZWQgYnkgcGFja2FnZSBtYWludGFpbmVyLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiAgICAgTm90IG1vZGlmaWVkIHNpbmNlIGluc3RhbGxhdGlvbi5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjE1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgPT0+IE1vZGlmaWVkIChieSB5b3Ugb3IgYnkgYSBzY3JpcHQpIHNpbmNlIGluc3RhbGxhdGlvbi5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjE2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgPT0+IERlbGV0ZWQgKGJ5IHlvdSBvciBieSBhIHNjcmlwdCkgc2luY2UgaW5zdGFsbGF0aW9uLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBQYWNrYWdlIGRpc3RyaWJ1dG9yIGhhcyBzaGlwcGVkIGFuIHVwZGF0ZWQgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjIwCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgICAgVmVyc2lvbiBpbiBwYWNrYWdlIGlzIHRoZSBzYW1lIGFzIGF0IGxhc3QgaW5zdGFsbGF0aW9uLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBVc2luZyBuZXcgZmlsZSBhcyB5b3UgcmVxdWVzdGVkLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBVc2luZyBjdXJyZW50IG9sZCBmaWxlIGFzIHlvdSByZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY0MQorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IEtlZXBpbmcgb2xkIGNvbmZpZyBmaWxlIGFzIGRlZmF1bHQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY0NQorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IFVzaW5nIG5ldyBjb25maWcgZmlsZSBhcyBkZWZhdWx0LlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiAgIFdoYXQgd291bGQgeW91IGxpa2UgdG8gZG8gYWJvdXQgaXQgPyAgWW91ciBvcHRpb25zIGFyZTpcbiIKKyIgICAgWSBvciBJICA6IGluc3RhbGwgdGhlIHBhY2thZ2UgbWFpbnRhaW5lcidzIHZlcnNpb25cbiIKKyIgICAgTiBvciBPICA6IGtlZXAgeW91ciBjdXJyZW50bHktaW5zdGFsbGVkIHZlcnNpb25cbiIKKyIgICAgICBEICAgICA6IHNob3cgdGhlIGRpZmZlcmVuY2VzIGJldHdlZW4gdGhlIHZlcnNpb25zXG4iCisiICAgICAgWiAgICAgOiBzdGFydCBhIHNoZWxsIHRvIGV4YW1pbmUgdGhlIHNpdHVhdGlvblxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIFRoZSBkZWZhdWx0IGFjdGlvbiBpcyB0byBrZWVwIHlvdXIgY3VycmVudCB2ZXJzaW9uLlxuIgorbXNnc3RyICIg4Kik4KmB4Ki54Ki+4Kih4KmHIOCoruCpjOConOCpguCopuCoviDgqLXgqLDgqJzgqKgg4Kio4KmC4KmwIOCosOCpseColuCooyDgqLLgqIgg4Kiu4KmC4KiyIOColeCovuCosOCoteCovuCoiCDgqLngqYjgpaRcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY2MQorIywgYy1mb3JtYXQKK21zZ2lkICIgVGhlIGRlZmF1bHQgYWN0aW9uIGlzIHRvIGluc3RhbGwgdGhlIG5ldyB2ZXJzaW9uLlxuIgorbXNnc3RyICIg4Kio4Ki14KmH4KiCIOCoteCosOConOCoqCDgqKjgqYLgqbAg4KiH4Kmw4Ki44Kif4Ki+4KiyIOColeCosOCoqCDgqLLgqIgg4Kiu4KmC4KiyIOColeCovuCosOCoteCovuCoiCDgqLngqYjgpaRcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY2NgorbXNnaWQgIltkZWZhdWx0PU5dIgorbXNnc3RyICJbZGVmYXVsdD1OXSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY2NworbXNnaWQgIltkZWZhdWx0PVldIgorbXNnc3RyICJbZGVmYXVsdD1ZXSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY2OAorbXNnaWQgIltubyBkZWZhdWx0XSIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjcxCittc2dpZCAiZXJyb3Igd3JpdGluZyB0byBzdGRlcnIsIGRpc2NvdmVyZWQgYmVmb3JlIGNvbmZmaWxlIHByb21wdCIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjgwCittc2dpZCAicmVhZCBlcnJvciBvbiBzdGRpbiBhdCBjb25mZmlsZSBwcm9tcHQiCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY4MQorbXNnaWQgIkVPRiBvbiBzdGRpbiBhdCBjb25mZmlsZSBwcm9tcHQiCittc2dzdHIgIiIKKworIzogc3JjL2RlcGNvbi5jOjE3NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXMgZGVwZW5kcyBvbiAlcyIKK21zZ3N0ciAiIOCoqOCov+CosOCoreCosCDgqLngqYggIgorCisjOiBzcmMvZGVwY29uLmM6MTc4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlcyBwcmUtZGVwZW5kcyBvbiAlcyIKK21zZ3N0ciAiIOCoquCoueCov+CosuCovuCogiDgqKjgqL/gqLDgqK3gqLAg4Ki54KmIICIKKworIzogc3JjL2RlcGNvbi5jOjE4MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXMgcmVjb21tZW5kcyAlcyIKK21zZ3N0ciAiIOCouOCov+Coq+CovuCosOCouOCovOCpgCAiCisKKyM6IHNyYy9kZXBjb24uYzoxODQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzIHN1Z2dlc3RzICVzIgorbXNnc3RyICIg4Ki44KmB4Kid4Ki+4KiFICIKKworIzogc3JjL2RlcGNvbi5jOjE4NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXMgYnJlYWtzICVzIgorbXNnc3RyICIg4Kis4Kiw4KmH4KiVICIKKworIzogc3JjL2RlcGNvbi5jOjE5MAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXMgY29uZmxpY3RzIHdpdGggJXMiCittc2dzdHIgIiDgqIXgqKrgqLXgqL7gqKYg4Ki54KmIICIKKworIzogc3JjL2RlcGNvbi5jOjE5MworIywgYy1mb3JtYXQKK21zZ2lkICIlcyBlbmhhbmNlcyAlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGVwY29uLmM6Mjk2CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHRvIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIOCoueCon+CovuCoh+CohiDgqJzgqL7gqLXgqYfgqJfgqL7gpaRcbiIKKworIzogc3JjL2RlcGNvbi5jOjI5OQorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB0byBiZSBkZWNvbmZpZ3VyZWQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2RlcGNvbi5jOjMwNAorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB0byBiZSBpbnN0YWxsZWQsIGJ1dCBpcyB2ZXJzaW9uICUuMjUwcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMg4KiH4Kmw4Ki44Kif4Ki+4KiyIOCoueCpiCwg4Kiq4KiwIOCoteCosOConOCoqCAlLjI1MHMg4Ki54KmI4KWkXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgaW5zdGFsbGVkLCBidXQgaXMgdmVyc2lvbiAlLjI1MHMuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2RlcGNvbi5jOjMzMworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB1bnBhY2tlZCwgYnV0IGhhcyBuZXZlciBiZWVuIGNvbmZpZ3VyZWQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2RlcGNvbi5jOjMzNworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB1bnBhY2tlZCwgYnV0IGlzIHZlcnNpb24gJS4yNTBzLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9kZXBjb24uYzozNDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgbGF0ZXN0IGNvbmZpZ3VyZWQgdmVyc2lvbiBpcyAlLjI1MHMuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2RlcGNvbi5jOjM1MworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyAlcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgJXMg4Ki54KmI4KWkXG4iCisKKyM6IHNyYy9kZXBjb24uYzozODgKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGJ1dCBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9kZXBjb24uYzozOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGJ1dCBpcyB0byBiZSBkZWNvbmZpZ3VyZWQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2RlcGNvbi5jOjQwMQorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYnV0IGlzICVzLlxuIgorbXNnc3RyICIgICUuMjUwcyAlLjI1MHMg4Kim4Ki/4Kmw4Kim4Ki+IOCoueCpiCwg4Kiq4KiwICVzIOCoueCpiOClpFxuIgorCisjOiBzcmMvZGVwY29uLmM6NDE1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIG5vdCBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIOCoh+CpsOCouOCon+CovuCosiDgqKjgqLngqYDgqIIg4Ki54KmI4KWkXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgKHZlcnNpb24gJS4yNTBzKSBpcyB0byBiZSBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzICjgqLXgqLDgqJzgqKggJS4yNTBzKSDgqIfgqbDgqLjgqJ/gqL7gqLIg4KiV4KmA4Kik4Ki+IOConOCovuCoteCph+Col+CovuClpFxuIgorCisjOiBzcmMvZGVwY29uLmM6NDY4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyAodmVyc2lvbiAlLjI1MHMpIGlzIHByZXNlbnQgYW5kICVzLlxuIgorbXNnc3RyICIgICUuMjUwcyAo4Ki14Kiw4Kic4KioICUuMjUwcykgJXMg4Ki54KmI4KWkXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGFuZCBpcyB0byBiZSBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzICUuMjUwcyDgqKbgqL/gqbDgqKbgqL4g4Ki54KmIIOCoheCopOCphyDgqIfgqbDgqLjgqJ/gqL7gqLIg4KiV4KmA4Kik4Ki+IOConOCovuCoteCph+Col+CovuClpFxuIgorCisjOiBzcmMvZGVwY29uLmM6NTM3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYW5kIGlzIHByZXNlbnQgYW5kICVzLlxuIgorbXNnc3RyICIgICUuMjUwcyAlLjI1MHMg4Kim4Ki/4Kmw4Kim4Ki+IOCoueCpiCDgqIXgqKTgqYcgJXMg4Ki54KmIXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MAorbXNnaWQgIlVzZSAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgZGl2ZXJ0aW5nIGZpbGVzLiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjYgc3JjL3N0YXRjbWQuYzo1NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuICVzIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIuCooeCph+CorOCpgOCoheCoqCAlcyDgqLXgqLDgqJzgqKggJXNcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjcwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiXG4iCisjfCAiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorI3wgIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uIgorbXNnaWQgIiIKKyJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMTAgR3VpbGxlbSBKb3Zlci5cbiIKK21zZ3N0ciAiIgorIlxuIgorIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLiIKKworIzogc3JjL2RpdmVydGNtZC5jOjc1IHNyYy9tYWluLmM6NjMgc3JjL3F1ZXJ5Y21kLmM6NjAzIHNyYy9zdGF0Y21kLmM6NjUKKyM6IHNyYy90cmlnY21kLmM6NTUgZHBrZy1kZWIvbWFpbi5jOjU3IGRwa2ctc3BsaXQvbWFpbi5jOjUxCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6ODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgb3JcbiIKKyJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6ODcgc3JjL21haW4uYzo4MSBzcmMvcXVlcnljbWQuYzo2MTUgc3JjL3N0YXRjbWQuYzo3NworIzogZHBrZy1kZWIvbWFpbi5jOjY5IGRwa2ctc3BsaXQvbWFpbi5jOjYzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo5NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIDxjb21tYW5kPlxuIgorIlxuIgorbXNnc3RyICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIDxjb21tYW5kPlxuIgorIlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6OTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgWy0tYWRkXSA8ZmlsZT4gICAgICAgICAgIGFkZCBhIGRpdmVyc2lvbi5cbiIKKyIgIC0tcmVtb3ZlIDxmaWxlPiAgICAgICAgICByZW1vdmUgdGhlIGRpdmVyc2lvbi5cbiIKKyIgIC0tbGlzdCBbPGdsb2ItcGF0dGVybj5dICBzaG93IGZpbGUgZGl2ZXJzaW9ucy5cbiIKKyIgIC0tbGlzdHBhY2thZ2UgPGZpbGU+ICAgICBzaG93IHdoYXQgcGFja2FnZSBkaXZlcnRzIHRoZSBmaWxlLlxuIgorIiAgLS10cnVlbmFtZSA8ZmlsZT4gICAgICAgIHJldHVybiB0aGUgZGl2ZXJ0ZWQgZmlsZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MTAwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tcGFja2FnZSA8cGFja2FnZT4gICAgICBuYW1lIG9mIHRoZSBwYWNrYWdlIHdob3NlIGNvcHkgb2YgPGZpbGU+IHdpbGwgIgorIm5vdFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmUgZGl2ZXJ0ZWQuXG4iCisiICAtLWxvY2FsICAgICAgICAgICAgICAgICAgYWxsIHBhY2thZ2VzJyB2ZXJzaW9ucyBhcmUgZGl2ZXJ0ZWQuXG4iCisiICAtLWRpdmVydCA8ZGl2ZXJ0LXRvPiAgICAgdGhlIG5hbWUgdXNlZCBieSBvdGhlciBwYWNrYWdlcycgdmVyc2lvbnMuXG4iCisiICAtLXJlbmFtZSAgICAgICAgICAgICAgICAgYWN0dWFsbHkgbW92ZSB0aGUgZmlsZSBhc2lkZSAob3IgYmFjaykuXG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgc2V0IHRoZSBkaXJlY3Rvcnkgd2l0aCB0aGUgZGl2ZXJzaW9ucyBmaWxlLlxuIgorIiAgLS10ZXN0ICAgICAgICAgICAgICAgICAgIGRvbid0IGRvIGFueXRoaW5nLCBqdXN0IGRlbW9uc3RyYXRlLlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHF1aWV0IG9wZXJhdGlvbiwgbWluaW1hbCBvdXRwdXQuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorbXNnc3RyICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIDxjb21tYW5kPlxuIgorIlxuIgorIkNvbW1hbmRzOlxuIgorIiAgWy0tYWRkXSA8ZmlsZT4gICAgICAgICAgIGFkZCBhIGRpdmVyc2lvbi5cbiIKKyIgIC0tcmVtb3ZlIDxmaWxlPiAgICAgICAgICByZW1vdmUgdGhlIGRpdmVyc2lvbi5cbiIKKyIgIC0tbGlzdCBbPGdsb2ItcGF0dGVybj5dICBzaG93IGZpbGUgZGl2ZXJzaW9ucy5cbiIKKyIgIC0tdHJ1ZW5hbWUgPGZpbGU+ICAgICAgICByZXR1cm4gdGhlIGRpdmVydGVkIGZpbGUuXG4iCisiXG4iCisiT3B0aW9uczpcbiIKKyIgIC0tcGFja2FnZSA8cGFja2FnZT4gICAgICBuYW1lIG9mIHRoZSBwYWNrYWdlIHdob3NlIGNvcHkgb2YgPGZpbGU+IHdpbGwgIgorIm5vdFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmUgZGl2ZXJ0ZWQuXG4iCisiICAtLWxvY2FsICAgICAgICAgICAgICAgICAgYWxsIHBhY2thZ2VzJyB2ZXJzaW9ucyBhcmUgZGl2ZXJ0ZWQuXG4iCisiICAtLWRpdmVydCA8ZGl2ZXJ0LXRvPiAgICAgdGhlIG5hbWUgdXNlZCBieSBvdGhlciBwYWNrYWdlcycgdmVyc2lvbnMuXG4iCisiICAtLXJlbmFtZSAgICAgICAgICAgICAgICAgYWN0dWFsbHkgbW92ZSB0aGUgZmlsZSBhc2lkZSAob3IgYmFjaykuXG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgc2V0IHRoZSBkaXJlY3Rvcnkgd2l0aCB0aGUgZGl2ZXJzaW9ucyBmaWxlLlxuIgorIiAgLS10ZXN0ICAgICAgICAgICAgICAgICAgIGRvbid0IGRvIGFueXRoaW5nLCBqdXN0IGRlbW9uc3RyYXRlLlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHF1aWV0IG9wZXJhdGlvbiwgbWluaW1hbCBvdXRwdXQuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorIldoZW4gYWRkaW5nLCBkZWZhdWx0IGlzIC0tbG9jYWwgYW5kIC0tZGl2ZXJ0IDxvcmlnaW5hbD4uZGlzdHJpYi5cbiIKKyJXaGVuIHJlbW92aW5nLCAtLXBhY2thZ2Ugb3IgLS1sb2NhbCBhbmQgLS1kaXZlcnQgbXVzdCBtYXRjaCBpZiBzcGVjaWZpZWQuXG4iCisiUGFja2FnZSBwcmVpbnN0L3Bvc3RybSBzY3JpcHRzIHNob3VsZCBhbHdheXMgc3BlY2lmeSAtLXBhY2thZ2UgYW5kIC0tIgorImRpdmVydC5cbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiV2hlbiBhZGRpbmcsIGRlZmF1bHQgaXMgLS1sb2NhbCBhbmQgLS1kaXZlcnQgPG9yaWdpbmFsPi5kaXN0cmliLlxuIgorIldoZW4gcmVtb3ZpbmcsIC0tcGFja2FnZSBvciAtLWxvY2FsIGFuZCAtLWRpdmVydCBtdXN0IG1hdGNoIGlmIHNwZWNpZmllZC5cbiIKKyJQYWNrYWdlIHByZWluc3QvcG9zdHJtIHNjcmlwdHMgc2hvdWxkIGFsd2F5cyBzcGVjaWZ5IC0tcGFja2FnZSBhbmQgLS0iCisiZGl2ZXJ0LlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoxNjgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImVycm9yIGNoZWNraW5nIGAlcyc6ICVzIgorbXNnaWQgImVycm9yIGNoZWNraW5nICclcyciCittc2dzdHIgImAlcycg4Kic4Ki+4KiC4KiaIOCopuCpjOCosOCovuCoqCDgqJfgqLLgqKTgqYA6ICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjAzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJyZW5hbWUgaW52b2x2ZXMgb3ZlcndyaXRpbmcgYCVzJyB3aXRoXG4iCisiICBkaWZmZXJlbnQgZmlsZSBgJXMnLCBub3QgYWxsb3dlZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjIzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzczCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGZpbGUgJyVzJyIKK21zZ3N0ciAiJXMg4Kia4Kiy4Ki+4KiJ4KijIOCosuCoiCDgqIXgqLjgqKvgqLzgqLIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyMjcKK21zZ2lkICJmaWxlIGNvcHkiCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjIzOQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHdyaXRlICVzOiAlcyIKK21zZ2lkICJjYW5ub3QgcmVuYW1lICclcycgdG8gJyVzJyIKK21zZ3N0ciAiJXMg4Kiy4Ki/4KiW4KijIOCosuCoiCDgqIXgqLjgqKvgqLzgqLI6ICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjUyCisjLCBjLWZvcm1hdAorbXNnaWQgInJlbmFtZTogcmVtb3ZlIGR1cGxpY2F0ZSBvbGQgbGluayAnJXMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyNjIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgY29waWVkIHNvdXJjZSBmaWxlICclcyciCittc2dzdHIgIiVzIOComuCosuCovuCoieCooyDgqLLgqIgg4KiF4Ki44Kir4Ki84KiyIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mjg0CisjLCBjLWZvcm1hdAorbXNnaWQgImxvY2FsIGRpdmVyc2lvbiBvZiAlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mjg2CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIgIFZlcnNpb24gb2YgJXMgb24gc3lzdGVtIGlzICVzLlxuIgorbXNnaWQgImxvY2FsIGRpdmVyc2lvbiBvZiAlcyB0byAlcyIKK21zZ3N0ciAiICAlcyDgqKbgqL4g4Ki44Ki/4Ki44Kif4KiuIOCoieCpseCopOCphyAlcyDgqLXgqLDgqJzgqKgg4Ki54KmI4KWkXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyOTAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiAgVmVyc2lvbiBvZiAlcyBvbiBzeXN0ZW0gaXMgJXMuXG4iCittc2dpZCAiZGl2ZXJzaW9uIG9mICVzIGJ5ICVzIgorbXNnc3RyICIgICVzIOCopuCoviDgqLjgqL/gqLjgqJ/gqK4g4KiJ4Kmx4Kik4KmHICVzIOCoteCosOConOCoqCDgqLngqYjgpaRcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjI5MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiICBWZXJzaW9uIG9mICVzIG9uIHN5c3RlbSBpcyAlcy5cbiIKK21zZ2lkICJkaXZlcnNpb24gb2YgJXMgdG8gJXMgYnkgJXMiCittc2dzdHIgIiAgJXMg4Kim4Ki+IOCouOCov+CouOCon+CoriDgqIngqbHgqKTgqYcgJXMg4Ki14Kiw4Kic4KioIOCoueCpiOClpFxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MzA5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJEZWJpYW4gJXMgdmVyc2lvbiAlcy5cbiIKK21zZ2lkICJhbnkgZGl2ZXJzaW9uIG9mICVzIgorbXNnc3RyICLgqKHgqYfgqKzgqYDgqIXgqKggJXMg4Ki14Kiw4Kic4KioICVzXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozMTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiAgVmVyc2lvbiBvZiAlcyBvbiBzeXN0ZW0gaXMgJXMuXG4iCittc2dpZCAiYW55IGRpdmVyc2lvbiBvZiAlcyB0byAlcyIKK21zZ3N0ciAiICAlcyDgqKbgqL4g4Ki44Ki/4Ki44Kif4KiuIOCoieCpseCopOCphyAlcyDgqLXgqLDgqJzgqKgg4Ki54KmI4KWkXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozNTcKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byB3cml0ZSAlczogJXMiCittc2dpZCAiY2Fubm90IGNyZWF0ZSBuZXcgJXMgZmlsZSIKK21zZ3N0ciAiJXMg4Kiy4Ki/4KiW4KijIOCosuCoiCDgqIXgqLjgqKvgqLzgqLI6ICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mzc1IHNyYy9zdGF0Y21kLmM6MjE1IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNDA0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggZmlsZSAnJXMnIgorbXNnc3RyICIlcyDgqJrgqLLgqL7gqIngqKMg4Kiy4KiIIOCoheCouOCoq+CovOCosiIKKworIzogc3JjL2RpdmVydGNtZC5jOjM4MgorbXNnaWQgImVycm9yIHJlbW92aW5nIG9sZCBkaXZlcnNpb25zLW9sZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mzg0CisjLCBmdXp6eQorI3wgbXNnaWQgImVycm9yIHJlYWRpbmcgY29uZmZpbGVzIGZpbGUiCittc2dpZCAiZXJyb3IgY3JlYXRpbmcgbmV3IGRpdmVyc2lvbnMtb2xkIgorbXNnc3RyICJjb25mZmlsZXMg4Kir4Ki+4KiH4KiyIOCoheCoquCoteCovuCopiDgqKrgqZzgqY3gqLngqKgg4Kim4KmM4Kiw4Ki+4KioIOCol+CosuCopOCpgCIKKworIzogc3JjL2RpdmVydGNtZC5jOjM4NgorbXNnaWQgImVycm9yIGluc3RhbGxpbmcgbmV3IGRpdmVyc2lvbnMiCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjQwNiBzcmMvZGl2ZXJ0Y21kLmM6NTAzIHNyYy9kaXZlcnRjbWQuYzo2MTAKKyM6IHNyYy9kaXZlcnRjbWQuYzo2MzAgc3JjL3N0YXRjbWQuYzoyOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhIHNpbmdsZSBhcmd1bWVudCIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDA5IHNyYy9kaXZlcnRjbWQuYzo0MzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZW5hbWUgXCIlc1wiIGlzIG5vdCBhYnNvbHV0ZSIKK21zZ3N0ciAi4Kir4Ki+4KiH4KiyIOCoqOCovuCogiBcIiVzXCIg4Kiq4KmC4Kiw4Ki+IOCoqOCoueCpgOCogiDgqLngqYgiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MTEgc3JjL3N0YXRjbWQuYzoyNDkKK21zZ2lkICJmaWxlIG1heSBub3QgY29udGFpbiBuZXdsaW5lcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDE4Cittc2dpZCAiQ2Fubm90IGRpdmVydCBkaXJlY3RvcmllcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDMzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgZGl2ZXJ0IGZpbGUgJyVzJyB0byBpdHNlbGYiCittc2dzdHIgIuCoq+CovuCoh+CosiBgJS4yNTBzJyDgqLngqJ/gqL7gqIngqKMg4Kiy4KiIIOCoheCouOCoq+CovOCosiIKKworIzogc3JjL2RpdmVydGNtZC5jOjQ1MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiTGVhdmluZyBgJXMnIgorbXNnaWQgIkxlYXZpbmcgJyVzJ1xuIgorbXNnc3RyICJgJXMnIOCom+CpseCooeCov+CohiDgqJzgqL4g4Kiw4Ki/4Ki54Ki+IOCoueCpiCIKKworIzogc3JjL2RpdmVydGNtZC5jOjQ1OAorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGNsYXNoZXMgd2l0aCBgJXMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0ODEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIkFkZGluZyBgJXMnIgorbXNnaWQgIkFkZGluZyAnJXMnXG4iCittc2dzdHIgImAlcycg4Kic4KmL4Kmc4Ki/4KiGIOConOCoviDgqLDgqL/gqLngqL4g4Ki54KmIIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTEwCisjLCBjLWZvcm1hdAorbXNnaWQgIk5vIGRpdmVyc2lvbiAnJXMnLCBub25lIHJlbW92ZWQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjUyNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisibWlzbWF0Y2ggb24gZGl2ZXJ0LXRvXG4iCisiICB3aGVuIHJlbW92aW5nIGAlcydcbiIKKyIgIGZvdW5kIGAlcyciCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjUzMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisibWlzbWF0Y2ggb24gcGFja2FnZVxuIgorIiAgd2hlbiByZW1vdmluZyBgJXMnXG4iCisiICBmb3VuZCBgJXMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MzkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIlJlbW92aW5nIGAlcyciCittc2dpZCAiUmVtb3ZpbmcgJyVzJ1xuIgorbXNnc3RyICJgJXMnIOCoueCon+CovuCoh+CohiDgqJzgqL4g4Kiw4Ki/4Ki54Ki+IOCoueCpiCIKKworIzogc3JjL2RpdmVydGNtZC5jOjY1NworbXNnaWQgInBhY2thZ2UgbWF5IG5vdCBjb250YWluIG5ld2xpbmVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo2NjYKK21zZ2lkICJkaXZlcnQtdG8gbWF5IG5vdCBjb250YWluIG5ld2xpbmVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRkYi5jOjY0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gZGl2ZXJzaW9ucyBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRkYi5jOjcxCittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IHByZXZpb3VzIGRpdmVyc2lvbnMgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzo3MworbXNnaWQgImZhaWxlZCB0byBmc3RhdCBkaXZlcnNpb25zIGZpbGUiCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGRiLmM6MTEzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZsaWN0aW5nIGRpdmVyc2lvbnMgaW52b2x2aW5nIGAlLjI1MHMnIG9yIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6NzMKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgaW4gYSBtZXNzIGR1ZSB0byBzZXJpb3VzIHByb2JsZW1zIGR1cmluZ1xuIgorImluc3RhbGxhdGlvbi4gIFRoZXkgbXVzdCBiZSByZWluc3RhbGxlZCBmb3IgdGhlbSAoYW5kIGFueSBwYWNrYWdlc1xuIgorInRoYXQgZGVwZW5kIG9uIHRoZW0pIHRvIGZ1bmN0aW9uIHByb3Blcmx5OlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6ODAKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBoYXZlIGJlZW4gdW5wYWNrZWQgYnV0IG5vdCB5ZXQgY29uZmlndXJlZC5cbiIKKyJUaGV5IG11c3QgYmUgY29uZmlndXJlZCB1c2luZyBkcGtnIC0tY29uZmlndXJlIG9yIHRoZSBjb25maWd1cmVcbiIKKyJtZW51IG9wdGlvbiBpbiBkc2VsZWN0IGZvciB0aGVtIHRvIHdvcms6XG4iCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzo4NworbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBvbmx5IGhhbGYgY29uZmlndXJlZCwgcHJvYmFibHkgZHVlIHRvIHByb2JsZW1zXG4iCisiY29uZmlndXJpbmcgdGhlbSB0aGUgZmlyc3QgdGltZS4gIFRoZSBjb25maWd1cmF0aW9uIHNob3VsZCBiZSByZXRyaWVkIHVzaW5nXG4iCisiZHBrZyAtLWNvbmZpZ3VyZSA8cGFja2FnZT4gb3IgdGhlIGNvbmZpZ3VyZSBtZW51IG9wdGlvbiBpbiBkc2VsZWN0OlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6OTQKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgb25seSBoYWxmIGluc3RhbGxlZCwgZHVlIHRvIHByb2JsZW1zIGR1cmluZ1xuIgorImluc3RhbGxhdGlvbi4gIFRoZSBpbnN0YWxsYXRpb24gY2FuIHByb2JhYmx5IGJlIGNvbXBsZXRlZCBieSByZXRyeWluZyBpdDtcbiIKKyJ0aGUgcGFja2FnZXMgY2FuIGJlIHJlbW92ZWQgdXNpbmcgZHNlbGVjdCBvciBkcGtnIC0tcmVtb3ZlOlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTAxCittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgYXJlIGF3YWl0aW5nIHByb2Nlc3Npbmcgb2YgdHJpZ2dlcnMgdGhhdCB0aGV5XG4iCisiaGF2ZSBhY3RpdmF0ZWQgaW4gb3RoZXIgcGFja2FnZXMuICBUaGlzIHByb2Nlc3NpbmcgY2FuIGJlIHJlcXVlc3RlZCB1c2luZ1xuIgorImRzZWxlY3Qgb3IgZHBrZyAtLWNvbmZpZ3VyZSAtLXBlbmRpbmcgKG9yIGRwa2cgLS10cmlnZ2Vycy1vbmx5KTpcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZW5xdWlyeS5jOjEwOAorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGhhdmUgYmVlbiB0cmlnZ2VyZWQsIGJ1dCB0aGUgdHJpZ2dlciBwcm9jZXNzaW5nXG4iCisiaGFzIG5vdCB5ZXQgYmVlbiBkb25lLiAgVHJpZ2dlciBwcm9jZXNzaW5nIGNhbiBiZSByZXF1ZXN0ZWQgdXNpbmdcbiIKKyJkc2VsZWN0IG9yIGRwa2cgLS1jb25maWd1cmUgLS1wZW5kaW5nIChvciBkcGtnIC0tdHJpZ2dlcnMtb25seSk6XG4iCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzoxMzcgc3JjL2VucXVpcnkuYzoyMTEgc3JjL2VucXVpcnkuYzoyOTIgc3JjL2VucXVpcnkuYzozNzMKKyM6IHNyYy9lbnF1aXJ5LmM6NDYwIHNyYy9zZWxlY3QuYzo5OCBzcmMvc2VsZWN0LmM6MTY0IHNyYy90cmlnY21kLmM6MTk5CisjOiBzcmMvdXBkYXRlLmM6NDggc3JjL3VwZGF0ZS5jOjExMyBkcGtnLXNwbGl0L3F1ZXVlLmM6MjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgbm8gYXJndW1lbnRzIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTUyCittc2dpZCAiIgorIkFub3RoZXIgcHJvY2VzcyBoYXMgbG9ja2VkIHRoZSBkYXRhYmFzZSBmb3Igd3JpdGluZywgYW5kIG1pZ2h0IGN1cnJlbnRseSBiZVxuIgorIm1vZGlmeWluZyBpdCwgc29tZSBvZiB0aGUgZm9sbG93aW5nIHByb2JsZW1zIG1pZ2h0IGp1c3QgYmUgZHVlIHRvIHRoYXQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzoxOTEKKyMsIGZ1enp5CisjfCBtc2dpZCAiPHVua25vd24+IgorbXNnY3R4dCAic2VjdGlvbiIKK21zZ2lkICI8dW5rbm93bj4iCittc2dzdHIgIjx1bmtub3duPiIKKworIzogc3JjL2VucXVpcnkuYzoyNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiICVkIGluICVzOiAiCittc2dzdHIgIiAlMiRzICUxJGQg4Ki14Ki/4Kmx4KiaOiIKKworIzogc3JjL2VucXVpcnkuYzoyNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiICVkIHBhY2thZ2UsIGZyb20gdGhlIGZvbGxvd2luZyBzZWN0aW9uOiIKK21zZ2lkX3BsdXJhbCAiICVkIHBhY2thZ2VzLCBmcm9tIHRoZSBmb2xsb3dpbmcgc2VjdGlvbnM6IgorbXNnc3RyWzBdICIiCittc2dzdHJbMV0gIiIKKworIzogc3JjL2VucXVpcnkuYzozMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlZlcnNpb24gb2YgZHBrZyB3aXRoIHdvcmtpbmcgJXMgc3VwcG9ydCBub3QgeWV0IGNvbmZpZ3VyZWQuXG4iCisiIFBsZWFzZSB1c2UgJ2Rwa2cgLS1jb25maWd1cmUgZHBrZycsIGFuZCB0aGVuIHRyeSBhZ2Fpbi5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZW5xdWlyeS5jOjMxMAorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnIG5vdCByZWNvcmRlZCBhcyBpbnN0YWxsZWQsIGNhbm5vdCBjaGVjayBmb3IgJXMgc3VwcG9ydCFcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZW5xdWlyeS5jOjMyMQorbXNnaWQgIlByZS1EZXBlbmRzIGZpZWxkIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzI5Cittc2dpZCAiZXBvY2giCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzozMzcKK21zZ2lkICJsb25nIGZpbGVuYW1lcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZW5xdWlyeS5jOjM0NgorbXNnaWQgIm11bHRpcGxlIENvbmZsaWN0cyBhbmQgUmVwbGFjZXMiCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzo0MzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IGNhbm5vdCBzZWUgaG93IHRvIHNhdGlzZnkgcHJlLWRlcGVuZGVuY3k6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzo0MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHNhdGlzZnkgcHJlLWRlcGVuZGVuY2llcyBmb3IgJS4yNTBzICh3YW50ZWQgZHVlIHRvICUuMjUwcykiCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzo0NzIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIm9ic29sZXRlIG9wdGlvbiAnLS0lcycsIHBsZWFzZSB1c2UgJy0tJXMnIGluc3RlYWQuIgorbXNnc3RyICLgqIXgqKPgqJzgqL7gqKPgqYAg4Kia4KmL4KijIC0tJXMiCisKKyM6IHNyYy9lbnF1aXJ5LmM6NTE5Cittc2dpZCAiIgorIi0tY29tcGFyZS12ZXJzaW9ucyB0YWtlcyB0aHJlZSBhcmd1bWVudHM6IDx2ZXJzaW9uPiA8cmVsYXRpb24+IDx2ZXJzaW9uPiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZW5xdWlyeS5jOjUyNAorbXNnaWQgIi0tY29tcGFyZS12ZXJzaW9ucyBiYWQgcmVsYXRpb24iCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzo1Mjkgc3JjL2VucXVpcnkuYzo1MzEgc3JjL2VucXVpcnkuYzo1NDAgc3JjL2VucXVpcnkuYzo1NDIKKyMsIGMtZm9ybWF0Cittc2dpZCAidmVyc2lvbiAnJXMnIGhhcyBiYWQgc3ludGF4OiAlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZXJyb3JzLmM6NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBlcnJvciBwcm9jZXNzaW5nICVzICgtLSVzKTpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZXJyb3JzLmM6NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBmYWlsZWQgdG8gYWxsb2NhdGUgbWVtb3J5IGZvciBuZXcgZW50cnkgaW4gbGlzdCBvZiBmYWlsZWQgcGFja2FnZXM6ICVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9lcnJvcnMuYzo3OQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZHBrZzogdG9vIG1hbnkgZXJyb3JzLCBzdG9wcGluZ1xuIgorbXNnaWQgIiVzOiB0b28gbWFueSBlcnJvcnMsIHN0b3BwaW5nXG4iCittc2dzdHIgImRwa2c6IOCorOCoueCpgeCopCDgqJfgqLLgqKTgqYDgqIbgqIIsIOCosOCpi+ColeCov+CohiDgqJzgqL4g4Kiw4Ki/4Ki54Ki+IOCoueCpiFxuIgorCisjOiBzcmMvZXJyb3JzLmM6ODcKK21zZ2lkICJFcnJvcnMgd2VyZSBlbmNvdW50ZXJlZCB3aGlsZSBwcm9jZXNzaW5nOlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9lcnJvcnMuYzo5NAorbXNnaWQgIlByb2Nlc3Npbmcgd2FzIGhhbHRlZCBiZWNhdXNlIHRoZXJlIHdlcmUgdG9vIG1hbnkgZXJyb3JzLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9lcnJvcnMuYzoxMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSAlcyB3YXMgb24gaG9sZCwgcHJvY2Vzc2luZyBpdCBhbnl3YXkgYXMgeW91IHJlcXVlc3RlZFxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9lcnJvcnMuYzoxMDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlBhY2thZ2UgJXMgaXMgb24gaG9sZCwgbm90IHRvdWNoaW5nIGl0LiAgVXNlIC0tZm9yY2UtaG9sZCB0byBvdmVycmlkZS5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZXJyb3JzLmM6MTE5Cittc2dpZCAib3ZlcnJpZGluZyBwcm9ibGVtIGJlY2F1c2UgLS1mb3JjZSBlbmFibGVkOiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZmlsZXNkYi5jOjMwNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogc3JjL2ZpbGVzZGIuYzozMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSBgJS4yNTBzJyBtaXNzaW5nLCBhc3N1bWluZyBwYWNrYWdlIGhhcyBubyBmaWxlcyAiCisiY3VycmVudGx5IGluc3RhbGxlZC4iCittc2dzdHIgIiIKKworIzogc3JjL2ZpbGVzZGIuYzozMjIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAnJS4yNTBzJyIKK21zZ3N0ciAi4KiV4Kmw4Kif4Kiw4KmL4KiyIOCoq+CovuCoh+CosiDgqJzgqL7gqKPgqJXgqL7gqLDgqYAgYCUuMjUwcycg4Ki54Kif4Ki+4KiJ4KijIOCosuCoiCDgqIXgqLjgqKvgqLzgqLIiCisKKyM6IHNyYy9maWxlc2RiLmM6MzMwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJyZWFkaW5nIGZpbGVzIGxpc3QgZm9yIHBhY2thZ2UgJyUuMjUwcyciCittc2dzdHIgIuColeCpsOCon+CosOCpi+CosiDgqKvgqL7gqIfgqLIg4Kic4Ki+4Kij4KiV4Ki+4Kiw4KmAIGAlLjI1MHMnIOCoueCon+CovuCoieCooyDgqLLgqIgg4KiF4Ki44Kir4Ki84KiyIgorCisjOiBzcmMvZmlsZXNkYi5jOjMzNgorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJyUuMjUwcycgaXMgbWlzc2luZyBmaW5hbCBuZXdsaW5lIgorbXNnc3RyICIiCisKKyM6IHNyYy9maWxlc2RiLmM6MzQ0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSBgJS4yNTBzJyBjb250YWlucyBlbXB0eSBmaWxlbmFtZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvZmlsZXNkYi5jOjM1MgorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZmlsZXNkYi5jOjQ2MgorbXNnaWQgIihSZWFkaW5nIGRhdGFiYXNlIC4uLiAiCittc2dzdHIgIijgqKHgqL7gqJ/gqL7gqKzgqYfgqLgg4Kiq4Kmc4KmN4Ki54Ki/4KiGIOConOCoviDgqLDgqL/gqLngqL4g4Ki54KmIIC4uLiAiCisKKyM6IHNyYy9maWxlc2RiLmM6NDgzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIlZCBmaWxlcyBhbmQgZGlyZWN0b3JpZXMgY3VycmVudGx5IGluc3RhbGxlZC4pXG4iCittc2dpZCAiJWQgZmlsZSBvciBkaXJlY3RvcnkgY3VycmVudGx5IGluc3RhbGxlZC4pXG4iCittc2dpZF9wbHVyYWwgIiVkIGZpbGVzIGFuZCBkaXJlY3RvcmllcyBjdXJyZW50bHkgaW5zdGFsbGVkLilcbiIKK21zZ3N0clswXSAiJWQg4Kir4Ki+4KiH4Kiy4Ki+4KiCIOCoheCopOCphyDgqKHgqL7gqIfgqLDgqYjgqJXgqJ/gqLDgqYDgqIbgqIIg4KiH4Ki4IOCouOCoruCph+CogiDgqIfgqbDgqLjgqJ/gqL7gqLIg4Ki54Kio4KWkKVxuIgorbXNnc3RyWzFdICIlZCDgqKvgqL7gqIfgqLLgqL7gqIIg4KiF4Kik4KmHIOCooeCovuCoh+CosOCpiOColeCon+CosOCpgOCohuCogiDgqIfgqLgg4Ki44Kiu4KmH4KiCIOCoh+CpsOCouOCon+CovuCosiDgqLngqKjgpaQpXG4iCisKKyM6IHNyYy9maWxlc2RiLmM6NTE2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIiIKKworIzogc3JjL2ZpbGVzZGIuYzo1MjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIHRvIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9maWxlc2RiLmM6NTI4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBmbHVzaCB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZmlsZXNkYi5jOjUzMAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gc3luYyB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZmlsZXNkYi5jOjUzMworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2xvc2UgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIiIKKworIzogc3JjL2ZpbGVzZGIuYzo1MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGluc3RhbGwgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIiIKKworIzogc3JjL2hlbHAuYzo0OAorbXNnaWQgIm5vdCBpbnN0YWxsZWQiCittc2dzdHIgIuCoh+CpsOCouOCon+CovuCosiDgqKjgqLngqYDgqIIg4Ki54KmIIgorCisjOiBzcmMvaGVscC5jOjQ5Cittc2dpZCAibm90IGluc3RhbGxlZCBidXQgY29uZmlncyByZW1haW4iCittc2dzdHIgIuCoh+CpsOCouOCon+CovuCosiDgqKjgqLngqYDgqIIg4Ki54KmILCDgqKrgqLAg4Ki44Kmw4Kiw4Kia4Kio4Ki+IOCosOCoueCph+Col+CpgCIKKworIzogc3JjL2hlbHAuYzo1MAorbXNnaWQgImJyb2tlbiBkdWUgdG8gZmFpbGVkIHJlbW92YWwgb3IgaW5zdGFsbGF0aW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9oZWxwLmM6NTEKK21zZ2lkICJ1bnBhY2tlZCBidXQgbm90IGNvbmZpZ3VyZWQiCittc2dzdHIgIiIKKworIzogc3JjL2hlbHAuYzo1MgorbXNnaWQgImJyb2tlbiBkdWUgdG8gcG9zdGluc3QgZmFpbHVyZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvaGVscC5jOjUzCittc2dpZCAiYXdhaXRpbmcgdHJpZ2dlciBwcm9jZXNzaW5nIGJ5IGFub3RoZXIgcGFja2FnZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvaGVscC5jOjU0Cittc2dpZCAidHJpZ2dlcmVkIgorbXNnc3RyICIiCisKKyM6IHNyYy9oZWxwLmM6NTUKK21zZ2lkICJpbnN0YWxsZWQiCittc2dzdHIgIuCoh+CpsOCouOCon+CovuCosiDgqLngqYvgqIfgqIYiCisKKyM6IHNyYy9oZWxwLmM6MTA3Cittc2dpZCAiUEFUSCBpcyBub3Qgc2V0LiIKK21zZ3N0ciAiIgorCisjOiBzcmMvaGVscC5jOjEyOQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS4iCittc2dzdHIgImRwa2c6ICVzIOCoqOCoueCpgOCogiDgqLLgqbHgqK3gqL/gqIYg4Ki54KmI4KWkXG4iCisKKyM6IHNyYy9oZWxwLmM6MTM4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiJWQgZXhwZWN0ZWQgcHJvZ3JhbSBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS5cbiIKKyIlcyIKK21zZ2lkX3BsdXJhbCAiIgorIiVkIGV4cGVjdGVkIHByb2dyYW1zIG5vdCBmb3VuZCBpbiBQQVRIIG9yIG5vdCBleGVjdXRhYmxlLlxuIgorIiVzIgorbXNnc3RyWzBdICJkcGtnOiAlcyDgqKjgqLngqYDgqIIg4Kiy4Kmx4Kit4Ki/4KiGIOCoueCpiOClpFxuIgorbXNnc3RyWzFdICJkcGtnOiAlcyDgqKjgqLngqYDgqIIg4Kiy4Kmx4Kit4Ki/4KiGIOCoueCpiOClpFxuIgorCisjOiBzcmMvaGVscC5jOjE0MQorbXNnaWQgIiIKKyJOb3RlOiByb290J3MgUEFUSCBzaG91bGQgdXN1YWxseSBjb250YWluIC91c3IvbG9jYWwvc2JpbiwgL3Vzci9zYmluIGFuZCAvIgorInNiaW4uIgorbXNnc3RyICIiCisKKyM6IHNyYy9oZWxwLmM6MTg4Cittc2dpZCAiYWRtaW5kaXIgbXVzdCBiZSBpbnNpZGUgaW5zdGRpciBmb3IgZHBrZyB0byB3b3JrIHByb3Blcmx5IgorbXNnc3RyICIiCisKKyM6IHNyYy9oZWxwLmM6MTkwIHNyYy9tYWluLmM6NzQ3Cittc2dpZCAidW5hYmxlIHRvIHNldGVudiBmb3Igc3VicHJvY2Vzc2VzIgorbXNnc3RyICIiCisKKyM6IHNyYy9oZWxwLmM6MTkyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjaHJvb3QgdG8gYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogc3JjL2hlbHAuYzoxOTQgZHBrZy1kZWIvYnVpbGQuYzo0NTUgZHBrZy1kZWIvYnVpbGQuYzo0NTcKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTM2IGRwa2ctZGViL2J1aWxkLmM6NTU4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byBgJS4yNTVzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvaGVscC5jOjI1NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IGV4ZWN1dGUgcGVybWlzc2lvbnMgb24gYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogc3JjL2hlbHAuYzoyNzYKK21zZ2lkICJ1bmFibGUgdG8gc2V0ZW52IGZvciBtYWludGFpbmVyIHNjcmlwdCIKK21zZ3N0ciAiIgorCisjOiBzcmMvaGVscC5jOjMwMAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiaW5zdGFsbGVkICVzIHNjcmlwdCIKK21zZ3N0ciAi4Kiq4KmB4Kiw4Ki+4Kij4KmAICVzIOCouOColeCpjeCosOCov+CoquConyIKKworIzogc3JjL2hlbHAuYzozMTMgc3JjL2hlbHAuYzozODIgc3JjL2hlbHAuYzo0NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgJXMgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogc3JjL2hlbHAuYzozNjggc3JjL2hlbHAuYzo0MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAibmV3ICVzIHNjcmlwdCIKK21zZ3N0ciAi4Kio4Ki14KmA4KiCICVzIOCouOColeCpjeCosOCov+CoquConyIKKworIzogc3JjL2hlbHAuYzo0MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAib2xkICVzIHNjcmlwdCIKK21zZ3N0ciAi4Kiq4KmB4Kiw4Ki+4Kij4KmAICVzIOCouOColeCpjeCosOCov+CoquConyIKKworIzogc3JjL2hlbHAuYzo0MTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0ICVzICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiJXMg4Kis4Kij4Ki+4KiJ4KijIOCosuCoiCDgqIXgqLjgqKvgqLzgqLI6ICVzIgorCisjOiBzcmMvaGVscC5jOjQyNQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnIC0gdHJ5aW5nIHNjcmlwdCBmcm9tIHRoZSBuZXcgcGFja2FnZSBpbnN0ZWFkIC4uLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9oZWxwLmM6NDM5Cittc2dpZCAidGhlcmUgaXMgbm8gc2NyaXB0IGluIHRoZSBuZXcgdmVyc2lvbiBvZiB0aGUgcGFja2FnZSAtIGdpdmluZyB1cCIKK21zZ3N0ciAiIgorCisjOiBzcmMvaGVscC5jOjQ0NQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiAuLi4gaXQgbG9va3MgbGlrZSB0aGF0IHdlbnQgT0suXG4iCittc2dzdHIgIiIKKworIzogc3JjL2hlbHAuYzo2MTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWN1cmVseSByZW1vdmUgJyUuMjU1cyciCittc2dzdHIgIiVzIOCoueCon+CovuCoieCooyDgqLLgqIgg4KiF4Ki44Kir4Ki84KiyOiAlcyIKKworIzogc3JjL2hlbHAuYzo2MjEgZHBrZy1kZWIvaW5mby5jOjY1IGRwa2ctZGViL2luZm8uYzo2NworbXNnaWQgInJtIGNvbW1hbmQgZm9yIGNsZWFudXAiCittc2dzdHIgIiIKKworIzogc3JjL2luZm9kYi5jOjUyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hlY2sgZXhpc3RlbmNlIG9mIGAlLjI1MHMnIgorbXNnc3RyICIlcyDgqLngqJ/gqL7gqIngqKMg4Kiy4KiIIOCoheCouOCoq+CovOCosjogJXMiCisKKyM6IHNyYy9pbmZvZGIuYzo3MAorbXNnaWQgImNhbm5vdCByZWFkIGluZm8gZGlyZWN0b3J5IgorbXNnc3RyICLgqJzgqL7gqKPgqJXgqL7gqLDgqYAg4Kih4Ki+4KiH4Kiw4KmI4KiV4Kif4Kiw4KmAIOCoquCpnOCpjeCoueCpgCDgqKjgqLngqYDgqIIg4Kic4Ki+IOCouOColeCopuCpgCIKKworIzogc3JjL21haW4uYzo2MAorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIG1hbmFnZW1lbnQgcHJvZ3JhbSB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICLgqKHgqYfgqKzgqYDgqIXgqKggYCVzJyDgqKrgqYjgqJXgqYfgqJwg4Kiu4KmI4Kio4Kic4KmH4Kiu4Ki/4Kmw4KifIOCoquCosOCpi+Col+CosOCovuCoriDgqLXgqLDgqJzgqKggJXMg4Ki54KmI4KWkXG4iCisKKyM6IHNyYy9tYWluLmM6ODUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1pfC0taW5zdGFsbCAgICAgICA8LmRlYiBmaWxlIG5hbWU+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXJlY3Rvcnk+IC4uLlxuIgorIiAgLS11bnBhY2sgICAgICAgICAgIDwuZGViIGZpbGUgbmFtZT4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRpcmVjdG9yeT4gLi4uXG4iCisiICAtQXwtLXJlY29yZC1hdmFpbCAgPC5kZWIgZmlsZSBuYW1lPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyZWN0b3J5PiAuLi5cbiIKKyIgIC0tY29uZmlndXJlICAgICAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtLXRyaWdnZXJzLW9ubHkgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLXJ8LS1yZW1vdmUgICAgICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC1QfC0tcHVyZ2UgICAgICAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtLWdldC1zZWxlY3Rpb25zIFs8cGF0dGVybj4gLi4uXSBHZXQgbGlzdCBvZiBzZWxlY3Rpb25zIHRvIHN0ZG91dC5cbiIKKyIgIC0tc2V0LXNlbGVjdGlvbnMgICAgICAgICAgICAgICAgIFNldCBwYWNrYWdlIHNlbGVjdGlvbnMgZnJvbSBzdGRpbi5cbiIKKyIgIC0tY2xlYXItc2VsZWN0aW9ucyAgICAgICAgICAgICAgIERlc2VsZWN0IGV2ZXJ5IG5vbi1lc3NlbnRpYWwgcGFja2FnZS5cbiIKKyIgIC0tdXBkYXRlLWF2YWlsIDxQYWNrYWdlcy1maWxlPiAgIFJlcGxhY2UgYXZhaWxhYmxlIHBhY2thZ2VzIGluZm8uXG4iCisiICAtLW1lcmdlLWF2YWlsIDxQYWNrYWdlcy1maWxlPiAgICBNZXJnZSB3aXRoIGluZm8gZnJvbSBmaWxlLlxuIgorIiAgLS1jbGVhci1hdmFpbCAgICAgICAgICAgICAgICAgICAgRXJhc2UgZXhpc3RpbmcgYXZhaWxhYmxlIGluZm8uXG4iCisiICAtLWZvcmdldC1vbGQtdW5hdmFpbCAgICAgICAgICAgICBGb3JnZXQgdW5pbnN0YWxsZWQgdW5hdmFpbGFibGUgcGtncy5cbiIKKyIgIC1zfC0tc3RhdHVzIDxwYWNrYWdlPiAuLi4gICAgICAgIERpc3BsYXkgcGFja2FnZSBzdGF0dXMgZGV0YWlscy5cbiIKKyIgIC1wfC0tcHJpbnQtYXZhaWwgPHBhY2thZ2U+IC4uLiAgIERpc3BsYXkgYXZhaWxhYmxlIHZlcnNpb24gZGV0YWlscy5cbiIKKyIgIC1MfC0tbGlzdGZpbGVzIDxwYWNrYWdlPiAuLi4gICAgIExpc3QgZmlsZXMgYG93bmVkJyBieSBwYWNrYWdlKHMpLlxuIgorIiAgLWx8LS1saXN0IFs8cGF0dGVybj4gLi4uXSAgICAgICAgTGlzdCBwYWNrYWdlcyBjb25jaXNlbHkuXG4iCisiICAtU3wtLXNlYXJjaCA8cGF0dGVybj4gLi4uICAgICAgICBGaW5kIHBhY2thZ2Uocykgb3duaW5nIGZpbGUocykuXG4iCisiICAtQ3wtLWF1ZGl0ICAgICAgICAgICAgICAgICAgICAgICBDaGVjayBmb3IgYnJva2VuIHBhY2thZ2UocykuXG4iCisiICAtLXByaW50LWFyY2hpdGVjdHVyZSAgICAgICAgICAgICBQcmludCBkcGtnIGFyY2hpdGVjdHVyZS5cbiIKKyIgIC0tY29tcGFyZS12ZXJzaW9ucyA8YT4gPG9wPiA8Yj4gIENvbXBhcmUgdmVyc2lvbiBudW1iZXJzIC0gc2VlIGJlbG93LlxuIgorIiAgLS1mb3JjZS1oZWxwICAgICAgICAgICAgICAgICAgICAgU2hvdyBoZWxwIG9uIGZvcmNpbmcuXG4iCisiICAtRGh8LS1kZWJ1Zz1oZWxwICAgICAgICAgICAgICAgICBTaG93IGhlbHAgb24gZGVidWdnaW5nLlxuIgorIlxuIgorbXNnc3RyICIiCisiQ29tbWFuZHM6XG4iCisiICAtaXwtLWluc3RhbGwgICAgICAgPC5kZWIgZmlsZSBuYW1lPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyZWN0b3J5PiAuLi5cbiIKKyIgIC0tdW5wYWNrICAgICAgICAgICA8LmRlYiBmaWxlIG5hbWU+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXJlY3Rvcnk+IC4uLlxuIgorIiAgLUF8LS1yZWNvcmQtYXZhaWwgIDwuZGViIGZpbGUgbmFtZT4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRpcmVjdG9yeT4gLi4uXG4iCisiICAtLWNvbmZpZ3VyZSAgICAgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLXJ8LS1yZW1vdmUgICAgICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC1QfC0tcHVyZ2UgICAgICAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtLWdldC1zZWxlY3Rpb25zIFs8cGF0dGVybj4gLi4uXSBHZXQgbGlzdCBvZiBzZWxlY3Rpb25zIHRvIHN0ZG91dC5cbiIKKyIgIC0tc2V0LXNlbGVjdGlvbnMgICAgICAgICAgICAgICAgIFNldCBwYWNrYWdlIHNlbGVjdGlvbnMgZnJvbSBzdGRpbi5cbiIKKyIgIC0tY2xlYXItc2VsZWN0aW9ucyAgICAgICAgICAgICAgIERlc2VsZWN0IGV2ZXJ5IG5vbi1lc3NlbnRpYWwgcGFja2FnZS5cbiIKKyIgIC0tdXBkYXRlLWF2YWlsIDxQYWNrYWdlcy1maWxlPiAgIFJlcGxhY2UgYXZhaWxhYmxlIHBhY2thZ2VzIGluZm8uXG4iCisiICAtLW1lcmdlLWF2YWlsIDxQYWNrYWdlcy1maWxlPiAgICBNZXJnZSB3aXRoIGluZm8gZnJvbSBmaWxlLlxuIgorIiAgLS1jbGVhci1hdmFpbCAgICAgICAgICAgICAgICAgICAgRXJhc2UgZXhpc3RpbmcgYXZhaWxhYmxlIGluZm8uXG4iCisiICAtLWZvcmdldC1vbGQtdW5hdmFpbCAgICAgICAgICAgICBGb3JnZXQgdW5pbnN0YWxsZWQgdW5hdmFpbGFibGUgcGtncy5cbiIKKyIgIC1zfC0tc3RhdHVzIDxwYWNrYWdlPiAuLi4gICAgICAgIERpc3BsYXkgcGFja2FnZSBzdGF0dXMgZGV0YWlscy5cbiIKKyIgIC1wfC0tcHJpbnQtYXZhaWwgPHBhY2thZ2U+IC4uLiAgIERpc3BsYXkgYXZhaWxhYmxlIHZlcnNpb24gZGV0YWlscy5cbiIKKyIgIC1MfC0tbGlzdGZpbGVzIDxwYWNrYWdlPiAuLi4gICAgIExpc3QgZmlsZXMgYG93bmVkJyBieSBwYWNrYWdlKHMpLlxuIgorIiAgLWx8LS1saXN0IFs8cGF0dGVybj4gLi4uXSAgICAgICAgTGlzdCBwYWNrYWdlcyBjb25jaXNlbHkuXG4iCisiICAtU3wtLXNlYXJjaCA8cGF0dGVybj4gLi4uICAgICAgICBGaW5kIHBhY2thZ2Uocykgb3duaW5nIGZpbGUocykuXG4iCisiICAtQ3wtLWF1ZGl0ICAgICAgICAgICAgICAgICAgICAgICBDaGVjayBmb3IgYnJva2VuIHBhY2thZ2UocykuXG4iCisiICAtLXByaW50LWFyY2hpdGVjdHVyZSAgICAgICAgICAgICBQcmludCBkcGtnIGFyY2hpdGVjdHVyZS5cbiIKKyIgIC0tY29tcGFyZS12ZXJzaW9ucyA8YT4gPG9wPiA8Yj4gIENvbXBhcmUgdmVyc2lvbiBudW1iZXJzIC0gc2VlIGJlbG93LlxuIgorIiAgLS1mb3JjZS1oZWxwICAgICAgICAgICAgICAgICAgICAgU2hvdyBoZWxwIG9uIGZvcmNpbmcuXG4iCisiICAtRGh8LS1kZWJ1Zz1oZWxwICAgICAgICAgICAgICAgICBTaG93IGhlbHAgb24gZGVidWdnaW5nLlxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjExMyBzcmMvcXVlcnljbWQuYzo2MzEgc3JjL3RyaWdjbWQuYzo3NyBkcGtnLWRlYi9tYWluLmM6ODgKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjc3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiICAtaHwtLWhlbHAgICAgICAgICAgICAgICAgICAgICAgICBTaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICAgICAgICAgU2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIiAgLWh8LS1oZWxwICAgICAgICAgICAgICAgICAgICAgICAgU2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhlIHZlcnNpb24uXG4iCisiICAtLWxpY2Vuc2V8LS1saWNlbmNlICAgICAgICAgICAgICBTaG93IHRoZSBjb3B5cmlnaHQgbGljZW5zaW5nIHRlcm1zLlxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjExOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVXNlIGRwa2cgLWJ8LS1idWlsZHwtY3wtLWNvbnRlbnRzfC1lfC0tY29udHJvbHwtSXwtLWluZm98LWZ8LS1maWVsZHxcbiIKKyIgLXh8LS1leHRyYWN0fC1YfC0tdmV4dHJhY3R8LS1mc3lzLXRhcmZpbGUgIG9uIGFyY2hpdmVzICh0eXBlICVzIC0taGVscCkuXG4iCisiXG4iCittc2dzdHIgIiIKKyJVc2UgZHBrZyAtYnwtLWJ1aWxkfC1jfC0tY29udGVudHN8LWV8LS1jb250cm9sfC1JfC0taW5mb3wtZnwtLWZpZWxkfFxuIgorIiAteHwtLWV4dHJhY3R8LVh8LS12ZXh0cmFjdHwtLWZzeXMtdGFyZmlsZSAgb24gYXJjaGl2ZXMgKHR5cGUgJXMgLS1oZWxwKS5cbiIKKyJcbiIKKworIzogc3JjL21haW4uYzoxMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkZvciBpbnRlcm5hbCB1c2U6IGRwa2cgLS1hc3NlcnQtc3VwcG9ydC1wcmVkZXBlbmRzIHwgLS1wcmVkZXAtcGFja2FnZSB8XG4iCisiICAtLWFzc2VydC13b3JraW5nLWVwb2NoIHwgLS1hc3NlcnQtbG9uZy1maWxlbmFtZXMgfCAtLWFzc2VydC1tdWx0aS1jb25yZXAuXG4iCisiXG4iCittc2dzdHIgIiIKKyJGb3IgaW50ZXJuYWwgdXNlOiBkcGtnIC0tYXNzZXJ0LXN1cHBvcnQtcHJlZGVwZW5kcyB8IC0tcHJlZGVwLXBhY2thZ2UgfFxuIgorIiAgLS1hc3NlcnQtd29ya2luZy1lcG9jaCB8IC0tYXNzZXJ0LWxvbmctZmlsZW5hbWVzIHwgLS1hc3NlcnQtbXVsdGktY29ucmVwLlxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjEyOAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyIgIC0tcm9vdD08ZGlyZWN0b3J5PiAgICAgICAgIEluc3RhbGwgb24gYSBkaWZmZXJlbnQgcm9vdCBkaXJlY3RvcnkuXG4iCisiICAtLWluc3RkaXI9PGRpcmVjdG9yeT4gICAgICBDaGFuZ2UgaW5zdGFsbGF0aW9uIGRpciB3aXRob3V0IGNoYW5naW5nIGFkbWluICIKKyJkaXIuXG4iCisiICAtLXBhdGgtZXhjbHVkZT08cGF0dGVybj4gICBEbyBub3QgaW5zdGFsbCBwYXRocyB3aGljaCBtYXRjaCBhIHNoZWxsICIKKyJwYXR0ZXJuLlxuIgorIiAgLS1wYXRoLWluY2x1ZGU9PHBhdHRlcm4+ICAgUmUtaW5jbHVkZSBhIHBhdHRlcm4gYWZ0ZXIgYSBwcmV2aW91cyAiCisiZXhjbHVzaW9uLlxuIgorIiAgLU98LS1zZWxlY3RlZC1vbmx5ICAgICAgICAgU2tpcCBwYWNrYWdlcyBub3Qgc2VsZWN0ZWQgZm9yIGluc3RhbGwvIgorInVwZ3JhZGUuXG4iCisiICAtRXwtLXNraXAtc2FtZS12ZXJzaW9uICAgICBTa2lwIHBhY2thZ2VzIHdob3NlIHNhbWUgdmVyc2lvbiBpcyBpbnN0YWxsZWQuXG4iCisiICAtR3wtLXJlZnVzZS1kb3duZ3JhZGUgICAgICBTa2lwIHBhY2thZ2VzIHdpdGggZWFybGllciB2ZXJzaW9uIHRoYW4gIgorImluc3RhbGxlZC5cbiIKKyIgIC1CfC0tYXV0by1kZWNvbmZpZ3VyZSAgICAgIEluc3RhbGwgZXZlbiBpZiBpdCB3b3VsZCBicmVhayBzb21lIG90aGVyICIKKyJwYWNrYWdlLlxuIgorIiAgLS1bbm8tXXRyaWdnZXJzICAgICAgICAgICAgU2tpcCBvciBmb3JjZSBjb25zZXF1ZW50aWFsIHRyaWdnZXIgIgorInByb2Nlc3NpbmcuXG4iCisiICAtLW5vLWRlYnNpZyAgICAgICAgICAgICAgICBEbyBub3QgdHJ5IHRvIHZlcmlmeSBwYWNrYWdlIHNpZ25hdHVyZXMuXG4iCisiICAtLW5vLWFjdHwtLWRyeS1ydW58LS1zaW11bGF0ZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSnVzdCBzYXkgd2hhdCB3ZSB3b3VsZCBkbyAtIGRvbid0IGRvIGl0LlxuIgorIiAgLUR8LS1kZWJ1Zz08b2N0YWw+ICAgICAgICAgRW5hYmxlIGRlYnVnZ2luZyAoc2VlIC1EaGVscCBvciAtLWRlYnVnPWhlbHApLlxuIgorIiAgLS1zdGF0dXMtZmQgPG4+ICAgICAgICAgICAgU2VuZCBzdGF0dXMgY2hhbmdlIHVwZGF0ZXMgdG8gZmlsZSBkZXNjcmlwdG9yICIKKyI8bj4uXG4iCisiICAtLWxvZz08ZmlsZW5hbWU+ICAgICAgICAgICBMb2cgc3RhdHVzIGNoYW5nZXMgYW5kIGFjdGlvbnMgdG8gPGZpbGVuYW1lPi5cbiIKKyIgIC0taWdub3JlLWRlcGVuZHM9PHBhY2thZ2U+LC4uLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSWdub3JlIGRlcGVuZGVuY2llcyBpbnZvbHZpbmcgPHBhY2thZ2U+LlxuIgorIiAgLS1mb3JjZS0uLi4gICAgICAgICAgICAgICAgT3ZlcnJpZGUgcHJvYmxlbXMgKHNlZSAtLWZvcmNlLWhlbHApLlxuIgorIiAgLS1uby1mb3JjZS0uLi58LS1yZWZ1c2UtLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9wIHdoZW4gcHJvYmxlbXMgZW5jb3VudGVyZWQuXG4iCisiICAtLWFib3J0LWFmdGVyIDxuPiAgICAgICAgICBBYm9ydCBhZnRlciBlbmNvdW50ZXJpbmcgPG4+IGVycm9ycy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyIgIC0tcm9vdD08ZGlyZWN0b3J5PiAgICAgICAgIEluc3RhbGwgb24gYSBkaWZmZXJlbnQgcm9vdCBkaXJlY3RvcnkuXG4iCisiICAtLWluc3RkaXI9PGRpcmVjdG9yeT4gICAgICBDaGFuZ2UgaW5zdGFsbGF0aW9uIGRpciB3aXRob3V0IGNoYW5naW5nIGFkbWluICIKKyJkaXIuXG4iCisiICAtT3wtLXNlbGVjdGVkLW9ubHkgICAgICAgICBTa2lwIHBhY2thZ2VzIG5vdCBzZWxlY3RlZCBmb3IgaW5zdGFsbC8iCisidXBncmFkZS5cbiIKKyIgIC1FfC0tc2tpcC1zYW1lLXZlcnNpb24gICAgIFNraXAgcGFja2FnZXMgd2hvc2Ugc2FtZSB2ZXJzaW9uIGlzIGluc3RhbGxlZC5cbiIKKyIgIC1HfC0tcmVmdXNlLWRvd25ncmFkZSAgICAgIFNraXAgcGFja2FnZXMgd2l0aCBlYXJsaWVyIHZlcnNpb24gdGhhbiAiCisiaW5zdGFsbGVkLlxuIgorIiAgLUJ8LS1hdXRvLWRlY29uZmlndXJlICAgICAgSW5zdGFsbCBldmVuIGlmIGl0IHdvdWxkIGJyZWFrIHNvbWUgb3RoZXIgIgorInBhY2thZ2UuXG4iCisiICAtLW5vLWRlYnNpZyAgICAgICAgICAgICAgICBEbyBub3QgdHJ5IHRvIHZlcmlmeSBwYWNrYWdlIHNpZ25hdHVyZXMuXG4iCisiICAtLW5vLWFjdHwtLWRyeS1ydW58LS1zaW11bGF0ZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSnVzdCBzYXkgd2hhdCB3ZSB3b3VsZCBkbyAtIGRvbid0IGRvIGl0LlxuIgorIiAgLUR8LS1kZWJ1Zz08b2N0YWw+ICAgICAgICAgRW5hYmxlIGRlYnVnZ2luZyAoc2VlIC1EaGVscCBvciAtLWRlYnVnPWhlbHApLlxuIgorIiAgLS1zdGF0dXMtZmQgPG4+ICAgICAgICAgICAgU2VuZCBzdGF0dXMgY2hhbmdlIHVwZGF0ZXMgdG8gZmlsZSBkZXNjcmlwdG9yICIKKyI8bj4uXG4iCisiICAtLWxvZz08ZmlsZW5hbWU+ICAgICAgICAgICBMb2cgc3RhdHVzIGNoYW5nZXMgYW5kIGFjdGlvbnMgdG8gPGZpbGVuYW1lPi5cbiIKKyIgIC0taWdub3JlLWRlcGVuZHM9PHBhY2thZ2U+LC4uLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSWdub3JlIGRlcGVuZGVuY2llcyBpbnZvbHZpbmcgPHBhY2thZ2U+LlxuIgorIiAgLS1mb3JjZS0uLi4gICAgICAgICAgICAgICAgT3ZlcnJpZGUgcHJvYmxlbXMgKHNlZSAtLWZvcmNlLWhlbHApLlxuIgorIiAgLS1uby1mb3JjZS0uLi58LS1yZWZ1c2UtLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9wIHdoZW4gcHJvYmxlbXMgZW5jb3VudGVyZWQuXG4iCisiICAtLWFib3J0LWFmdGVyIDxuPiAgICAgICAgICBBYm9ydCBhZnRlciBlbmNvdW50ZXJpbmcgPG4+IGVycm9ycy5cbiIKKyJcbiIKKworIzogc3JjL21haW4uYzoxNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbXBhcmlzb24gb3BlcmF0b3JzIGZvciAtLWNvbXBhcmUtdmVyc2lvbnMgYXJlOlxuIgorIiAgbHQgbGUgZXEgbmUgZ2UgZ3QgICAgICAgKHRyZWF0IGVtcHR5IHZlcnNpb24gYXMgZWFybGllciB0aGFuIGFueSAiCisidmVyc2lvbik7XG4iCisiICBsdC1ubCBsZS1ubCBnZS1ubCBndC1ubCAodHJlYXQgZW1wdHkgdmVyc2lvbiBhcyBsYXRlciB0aGFuIGFueSB2ZXJzaW9uKTtcbiIKKyIgIDwgPDwgPD0gPSA+PSA+PiA+ICAgICAgIChvbmx5IGZvciBjb21wYXRpYmlsaXR5IHdpdGggY29udHJvbCBmaWxlICIKKyJzeW50YXgpLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MTYxCisjLCBjLWZvcm1hdAorbXNnaWQgIlVzZSBgZHNlbGVjdCcgb3IgYGFwdGl0dWRlJyBmb3IgdXNlci1mcmllbmRseSBwYWNrYWdlIG1hbmFnZW1lbnQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoxNzAKK21zZ2lkICIiCisiVHlwZSBkcGtnIC0taGVscCBmb3IgaGVscCBhYm91dCBpbnN0YWxsaW5nIGFuZCBkZWluc3RhbGxpbmcgcGFja2FnZXMgWypdO1xuIgorIlVzZSBgZHNlbGVjdCcgb3IgYGFwdGl0dWRlJyBmb3IgdXNlci1mcmllbmRseSBwYWNrYWdlIG1hbmFnZW1lbnQ7XG4iCisiVHlwZSBkcGtnIC1EaGVscCBmb3IgYSBsaXN0IG9mIGRwa2cgZGVidWcgZmxhZyB2YWx1ZXM7XG4iCisiVHlwZSBkcGtnIC0tZm9yY2UtaGVscCBmb3IgYSBsaXN0IG9mIGZvcmNpbmcgb3B0aW9ucztcbiIKKyJUeXBlIGRwa2ctZGViIC0taGVscCBmb3IgaGVscCBhYm91dCBtYW5pcHVsYXRpbmcgKi5kZWIgZmlsZXM7XG4iCisiXG4iCisiT3B0aW9ucyBtYXJrZWQgWypdIHByb2R1Y2UgYSBsb3Qgb2Ygb3V0cHV0IC0gcGlwZSBpdCB0aHJvdWdoIGBsZXNzJyBvciAiCisiYG1vcmUnICEiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMTkKK21zZ2lkICJTZXQgYWxsIGZvcmNlIG9wdGlvbnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjEKK21zZ2lkICJSZXBsYWNlIGEgcGFja2FnZSB3aXRoIGEgbG93ZXIgdmVyc2lvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIyMworbXNnaWQgIkNvbmZpZ3VyZSBhbnkgcGFja2FnZSB3aGljaCBtYXkgaGVscCB0aGlzIG9uZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIyNQorbXNnaWQgIlByb2Nlc3MgaW5jaWRlbnRhbCBwYWNrYWdlcyBldmVuIHdoZW4gb24gaG9sZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIyNworbXNnaWQgIlRyeSB0byAoZGUpaW5zdGFsbCB0aGluZ3MgZXZlbiB3aGVuIG5vdCByb290IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjI5Cittc2dpZCAiUEFUSCBpcyBtaXNzaW5nIGltcG9ydGFudCBwcm9ncmFtcywgcHJvYmxlbXMgbGlrZWx5IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjMxCittc2dpZCAiSW5zdGFsbCBhIHBhY2thZ2UgZXZlbiBpZiBpdCBmYWlscyBhdXRoZW50aWNpdHkgY2hlY2siCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzMKK21zZ2lkICJQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyB2ZXJzaW9ucyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzNQorbXNnaWQgIk92ZXJ3cml0ZSBhIGZpbGUgZnJvbSBvbmUgcGFja2FnZSB3aXRoIGFub3RoZXIiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzcKK21zZ2lkICJPdmVyd3JpdGUgYSBkaXZlcnRlZCBmaWxlIHdpdGggYW4gdW5kaXZlcnRlZCB2ZXJzaW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjM5Cittc2dpZCAiT3ZlcndyaXRlIG9uZSBwYWNrYWdlJ3MgZGlyZWN0b3J5IHdpdGggYW5vdGhlcidzIGZpbGUiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDEKK21zZ2lkICJEbyBub3QgcGVyZm9ybSBzYWZlIEkvTyBvcGVyYXRpb25zIHdoZW4gdW5wYWNraW5nIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjQzCittc2dpZCAiQWx3YXlzIHVzZSB0aGUgbmV3IGNvbmZpZyBmaWxlcywgZG9uJ3QgcHJvbXB0IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjQ1Cittc2dpZCAiQWx3YXlzIHVzZSB0aGUgb2xkIGNvbmZpZyBmaWxlcywgZG9uJ3QgcHJvbXB0IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjQ4Cittc2dpZCAiIgorIlVzZSB0aGUgZGVmYXVsdCBvcHRpb24gZm9yIG5ldyBjb25maWcgZmlsZXMgaWYgb25lXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgIGlzIGF2YWlsYWJsZSwgZG9uJ3QgcHJvbXB0LiBJZiBubyBkZWZhdWx0IGNhbiBiZSAiCisiZm91bmQsXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgIHlvdSB3aWxsIGJlIHByb21wdGVkIHVubGVzcyBvbmUgb2YgdGhlIGNvbmZvbGQgb3JcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgY29uZm5ldyBvcHRpb25zIGlzIGFsc28gZ2l2ZW4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNTMKK21zZ2lkICJBbHdheXMgaW5zdGFsbCBtaXNzaW5nIGNvbmZpZyBmaWxlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI1NQorbXNnaWQgIk9mZmVyIHRvIHJlcGxhY2UgY29uZmlnIGZpbGVzIHdpdGggbm8gbmV3IHZlcnNpb25zIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjU3Cittc2dpZCAiUHJvY2VzcyBldmVuIHBhY2thZ2VzIHdpdGggd3Jvbmcgb3Igbm8gYXJjaGl0ZWN0dXJlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjU5Cittc2dpZCAiSW5zdGFsbCBldmVuIGlmIGl0IHdvdWxkIGJyZWFrIGFub3RoZXIgcGFja2FnZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI2MQorbXNnaWQgIkFsbG93IGluc3RhbGxhdGlvbiBvZiBjb25mbGljdGluZyBwYWNrYWdlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI2MworIywgZnV6enkKK21zZ2lkICJUdXJuIGFsbCBkZXBlbmRlbmN5IHByb2JsZW1zIGludG8gd2FybmluZ3MiCittc2dzdHIgIiIKKyJkcGtnOiDgqKjgqL/gqLDgqK3gqLDgqKTgqL4g4Ki44Kiu4Kmx4Ki44Ki/4KiGIOCoqOCphyAlcyDgqKjgqYLgqbAg4Ki54Kif4Ki+4KiJ4KijIOCopOCpi+CogiDgqLDgqYvgqJXgqL/gqIY6XG4iCisiJXMiCisKKyM6IHNyYy9tYWluLmM6MjY1CisjLCBmdXp6eQorbXNnaWQgIlR1cm4gZGVwZW5kZW5jeSB2ZXJzaW9uIHByb2JsZW1zIGludG8gd2FybmluZ3MiCittc2dzdHIgIiIKKyJkcGtnOiDgqKjgqL/gqLDgqK3gqLDgqKTgqL4g4Ki44Kiu4Kmx4Ki44Ki/4KiGIOCoqOCphyAlcyDgqKjgqYLgqbAg4Ki54Kif4Ki+4KiJ4KijIOCopOCpi+CogiDgqLDgqYvgqJXgqL/gqIY6XG4iCisiJXMiCisKKyM6IHNyYy9tYWluLmM6MjY3Cittc2dpZCAiUmVtb3ZlIHBhY2thZ2VzIHdoaWNoIHJlcXVpcmUgaW5zdGFsbGF0aW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjY5Cittc2dpZCAiUmVtb3ZlIGFuIGVzc2VudGlhbCBwYWNrYWdlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjgxCittc2dpZCAiR2VuZXJhbGx5IGhlbHBmdWwgcHJvZ3Jlc3MgaW5mb3JtYXRpb24iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODIKK21zZ2lkICJJbnZvY2F0aW9uIGFuZCBzdGF0dXMgb2YgbWFpbnRhaW5lciBzY3JpcHRzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjgzCittc2dpZCAiT3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg0Cittc2dpZCAiTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODUKK21zZ2lkICJPdXRwdXQgZm9yIGVhY2ggY29uZmlndXJhdGlvbiBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg2Cittc2dpZCAiTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggY29uZmlndXJhdGlvbiBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg3Cittc2dpZCAiRGVwZW5kZW5jaWVzIGFuZCBjb25mbGljdHMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODgKK21zZ2lkICJMb3RzIG9mIGRlcGVuZGVuY2llcy9jb25mbGljdHMgb3V0cHV0IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg5Cittc2dpZCAiVHJpZ2dlciBhY3RpdmF0aW9uIGFuZCBwcm9jZXNzaW5nIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjkwCittc2dpZCAiTG90cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjkxCittc2dpZCAiU2lsbHkgYW1vdW50cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjkyCittc2dpZCAiTG90cyBvZiBkcml2ZWwgYWJvdXQgZWcgdGhlIGRwa2cvaW5mbyBkaXJlY3RvcnkiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyOTMKK21zZ2lkICJJbnNhbmUgYW1vdW50cyBvZiBkcml2ZWwiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzozMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzIGRlYnVnZ2luZyBvcHRpb24sIC0tZGVidWc9PG9jdGFsPiBvciAtRDxvY3RhbD46XG4iCisiXG4iCisiIE51bWJlciAgUmVmLiBpbiBzb3VyY2UgICBEZXNjcmlwdGlvblxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MzExCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJEZWJ1Z2dpbmcgb3B0aW9ucyBjYW4gYmUgbWl4ZWQgdXNpbmcgYml0d2lzZS1vci5cbiIKKyJOb3RlIHRoYXQgdGhlIG1lYW5pbmdzIGFuZCB2YWx1ZXMgYXJlIHN1YmplY3QgdG8gY2hhbmdlLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MzE5Cittc2dpZCAiLS1kZWJ1ZyByZXF1aXJlcyBhbiBvY3RhbCBhcmd1bWVudCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjM0OAorIywgYy1mb3JtYXQKK21zZ2lkICJudWxsIHBhY2thZ2UgbmFtZSBpbiAtLWlnbm9yZS1kZXBlbmRzIGNvbW1hLXNlcGFyYXRlZCBsaXN0IGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MzU0CisjLCBjLWZvcm1hdAorbXNnaWQgIi0taWdub3JlLWRlcGVuZHMgcmVxdWlyZXMgYSBsZWdhbCBwYWNrYWdlIG5hbWUuIGAlLjI1MHMnIGlzIG5vdDsgJXMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzozNzEgc3JjL21haW4uYzozODEgc3JjL21haW4uYzo2NDkgZHBrZy1zcGxpdC9tYWluLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgaW50ZWdlciBmb3IgLS0lczogYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzo0MzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgZXhlY3V0aW5nIGhvb2sgJyVzJywgZXhpdCBjb2RlICVkIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6NDY1Cittc2dpZCAic3RhdHVzIGxvZ2dlciIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjQ4MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXMgZm9yY2luZyBvcHRpb25zIC0gY29udHJvbCBiZWhhdmlvdXIgd2hlbiBwcm9ibGVtcyBmb3VuZDpcbiIKKyIgIHdhcm4gYnV0IGNvbnRpbnVlOiAgLS1mb3JjZS08dGhpbmc+LDx0aGluZz4sLi4uXG4iCisiICBzdG9wIHdpdGggZXJyb3I6ICAgIC0tcmVmdXNlLTx0aGluZz4sPHRoaW5nPiwuLi4gfCAtLW5vLWZvcmNlLTx0aGluZz4sLi4uXG4iCisiIEZvcmNpbmcgdGhpbmdzOlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6NDkwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJXQVJOSU5HIC0gdXNlIG9mIG9wdGlvbnMgbWFya2VkIFshXSBjYW4gc2VyaW91c2x5IGRhbWFnZSB5b3VyIGluc3RhbGxhdGlvbi5cbiIKKyJGb3JjaW5nIG9wdGlvbnMgbWFya2VkIFsqXSBhcmUgZW5hYmxlZCBieSBkZWZhdWx0LlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6NTA0CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gZm9yY2UvcmVmdXNlIG9wdGlvbiBgJS4qcyciCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzo1MTMKKyMsIGMtZm9ybWF0Cittc2dpZCAib2Jzb2xldGUgZm9yY2UvcmVmdXNlIG9wdGlvbiAnJXMnXG4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzo2NDMKK21zZ2lkICItLWNvbW1hbmQtZmQgdGFrZXMgb25lIGFyZ3VtZW50LCBub3QgemVybyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjY0NQorbXNnaWQgIi0tY29tbWFuZC1mZCBvbmx5IHRha2VzIG9uZSBhcmd1bWVudCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjY1MQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBvcGVuIGAlaScgZm9yIHN0cmVhbSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjY3NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVvZiBiZWZvcmUgZW5kIG9mIGxpbmUgJWQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzo3MTkgc3JjL21haW4uYzo3NDEgc3JjL3F1ZXJ5Y21kLmM6NjkyIHNyYy9zdGF0Y21kLmM6Mzc5CisjOiBkcGtnLWRlYi9tYWluLmM6MjAxIGRwa2ctc3BsaXQvbWFpbi5jOjE2MworbXNnaWQgIm5lZWQgYW4gYWN0aW9uIG9wdGlvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcGFja2FnZXMuYzoxMTMKK21zZ2lkICIiCisieW91IG11c3Qgc3BlY2lmeSBwYWNrYWdlcyBieSB0aGVpciBvd24gbmFtZXMsIG5vdCBieSBxdW90aW5nIHRoZSBuYW1lcyBvZiAiCisidGhlIGZpbGVzIHRoZXkgY29tZSBpbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcGFja2FnZXMuYzoxMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyAtLXBlbmRpbmcgZG9lcyBub3QgdGFrZSBhbnkgbm9uLW9wdGlvbiBhcmd1bWVudHMiCittc2dzdHIgIiIKKworIzogc3JjL3BhY2thZ2VzLmM6MTM4IHNyYy9xdWVyeWNtZC5jOjM3NSBzcmMvcXVlcnljbWQuYzo1NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhdCBsZWFzdCBvbmUgcGFja2FnZSBuYW1lIGFyZ3VtZW50IgorbXNnc3RyICIiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjE3OQorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlICVzIGxpc3RlZCBtb3JlIHRoYW4gb25jZSwgb25seSBwcm9jZXNzaW5nIG9uY2UuXG4iCittc2dzdHIgIuCoquCpiOColeCph+ConCAlcyDgqIfgqbHgqJUg4Kik4KmL4KiCIOCoteCpseCopyDgqLXgqL7gqLAg4Ki14KmH4KiW4Ki+4KiH4KiGIOCol+Cov+CohiDgqLngqYgsIOCoquCosCDgqJXgqL7gqLDgqLXgqL7gqIgg4KiF4Kin4KmA4KioIOCoh+CpseColSDgqLXgqL7gqLAg4Ki54KmAIOCohuCoj+Col+CovuClpFxuIgorCisjOiBzcmMvcGFja2FnZXMuYzoxODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk1vcmUgdGhhbiBvbmUgY29weSBvZiBwYWNrYWdlICVzIGhhcyBiZWVuIHVucGFja2VkXG4iCisiIGluIHRoaXMgcnVuICEgIE9ubHkgY29uZmlndXJpbmcgaXQgb25jZS5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcGFja2FnZXMuYzoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInBhY2thZ2UgJS4yNTBzIGlzIG5vdCByZWFkeSBmb3IgdHJpZ2dlciBwcm9jZXNzaW5nXG4iCisiIChjdXJyZW50IHN0YXR1cyBgJS4yNTBzJyB3aXRoIG5vIHBlbmRpbmcgdHJpZ2dlcnMpIgorbXNnc3RyICIiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjMzNAorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgd2hpY2ggcHJvdmlkZXMgJXMgaXMgdG8gYmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcGFja2FnZXMuYzozMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIGlzIHRvIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiAg4Kiq4KmI4KiV4KmH4KicICVzIOCoueCon+CovuCoh+CohiDgqJzgqL7gqLXgqYfgqJfgqL7gpaRcbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MzU0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgVmVyc2lvbiBvZiAlcyBvbiBzeXN0ZW0gaXMgJXMuXG4iCittc2dzdHIgIiAgJXMg4Kim4Ki+IOCouOCov+CouOCon+CoriDgqIngqbHgqKTgqYcgJXMg4Ki14Kiw4Kic4KioIOCoueCpiOClpFxuIgorCisjOiBzcmMvcGFja2FnZXMuYzozNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIHdoaWNoIHByb3ZpZGVzICVzIGF3YWl0cyB0cmlnZ2VyIHByb2Nlc3NpbmcuXG4iCittc2dzdHIgIiIKKworIzogc3JjL3BhY2thZ2VzLmM6MzgwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgYXdhaXRzIHRyaWdnZXIgcHJvY2Vzc2luZy5cbiIKK21zZ3N0ciAiICDgqKrgqYjgqJXgqYfgqJwgJXMg4Ki54Kif4Ki+4KiH4KiGIOConOCovuCoteCph+Col+CovuClpFxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogYWxzbyBjb25maWd1cmluZyBgJXMnIChyZXF1aXJlZCBieSBgJXMnKVxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQxOAorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgd2hpY2ggcHJvdmlkZXMgJXMgaXMgbm90IGNvbmZpZ3VyZWQgeWV0LlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQyMQorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgaXMgbm90IGNvbmZpZ3VyZWQgeWV0LlxuIgorbXNnc3RyICIgIOCoquCpiOColeCph+ConCAlcyDgqLngqL7gqLLgqYcg4Ki44Kmw4Kiw4Kia4Ki/4KikIOCoqOCoueCpgOCogiDgqLngqYjgpaRcbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyB3aGljaCBwcm92aWRlcyAlcyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQzNQorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgaXMgbm90IGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiICDgqKrgqYjgqJXgqYfgqJwgJXMg4KiH4Kmw4Ki44Kif4Ki+4KiyIOCoqOCoueCpgOCogiDgqLngqYjgpaRcbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDcyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIgJXMgKCVzKSBicmVha3MgJXMgYW5kIGlzICVzLlxuIgorbXNnc3RyICIgICUuMjUwcyAlLjI1MHMg4Kim4Ki/4Kmw4Kim4Ki+IOCoueCpiCDgqIXgqKTgqYcgJXMg4Ki54KmIXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQ3OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiICAlcyAoJXMpIHByb3ZpZGVzICVzLlxuIgorbXNnc3RyICIgICUuMjUwcyAlcyDgqLngqYjgpaRcbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDgyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIgIFZlcnNpb24gb2YgJXMgdG8gYmUgY29uZmlndXJlZCBpcyAlcy5cbiIKK21zZ3N0ciAiICAlcyDgqKbgqL4g4Ki44Ki/4Ki44Kif4KiuIOCoieCpseCopOCphyAlcyDgqLXgqLDgqJzgqKgg4Ki54KmI4KWkXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjU5NgorbXNnaWQgIiBkZXBlbmRzIG9uICIKK21zZ3N0ciAiIOCoqOCov+CosOCoreCosCDgqLngqYggIgorCisjOiBzcmMvcGFja2FnZXMuYzo2MDIKK21zZ2lkICI7IGhvd2V2ZXI6XG4iCittc2dzdHIgIjsg4Kiq4KiwOlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjcxCisjLCBjLWZvcm1hdAorbXNnaWQgIi4uLi8lcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjkxCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGVuc3VyaW5nIGAlLjI1MHMnIGRvZXNuJ3QgZXhpc3QiCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5OQorbXNnaWQgInNwbGl0IHBhY2thZ2UgcmVhc3NlbWJseSIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEwOAorbXNnaWQgInJlYXNzZW1ibGVkIHBhY2thZ2UgZmlsZSIKK21zZ3N0ciAi4Kiq4KmI4KiV4KmH4KicIOCoq+CovuCoh+CosiDgqK7gqYHgqZwt4Kic4KmL4Kmc4Ki/4KiGIOConOCoviDgqLDgqL/gqLngqL4g4Ki54KmIIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEzMworIywgYy1mb3JtYXQKK21zZ2lkICJBdXRoZW50aWNhdGluZyAlcyAuLi5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEzOQorbXNnaWQgInBhY2thZ2Ugc2lnbmF0dXJlIHZlcmlmaWNhdGlvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE0NgorIywgYy1mb3JtYXQKK21zZ2lkICJWZXJpZmljYXRpb24gb24gcGFja2FnZSAlcyBmYWlsZWQhIgorbXNnc3RyICLgqKrgqYjgqJXgqYfgqJwgJXMg4Kim4KmAIOConOCovuCoguComiDgqKvgqYfgqLLgqY3gqLkg4Ki54KmL4KiIISIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlZlcmlmaWNhdGlvbiBvbiBwYWNrYWdlICVzIGZhaWxlZCxcbiIKKyJidXQgaW5zdGFsbGluZyBhbnl3YXkgYXMgeW91IHJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiIgorIuCoquCpiOColeCph+ConCAlcyDgqKbgqYAg4Kic4Ki+4KiC4KiaIOCoq+Cph+CosuCpjeCouSDgqLngqYvgqIhcbiIKKyLgqKrgqLAg4Kik4KmB4Ki54Ki+4Kih4KmAIOCoruCpsOColyDgqIXgqKjgqYHgqLjgqL7gqLAg4KiH4Kmw4Ki44Kif4Ki+4KiyIOColeCpgOCopOCoviDgqJzgqL4g4Kiw4Ki/4Ki54Ki+IOCoueCpiOClpFxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICJwYXNzZWRcbiIKK21zZ3N0ciAi4Kiq4Ki+4Ki4IOCoueCpi+Coh+CohlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE2NSBkcGtnLWRlYi9pbmZvLmM6ODEKKyMsIGZ1enp5Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSB0ZW1wb3JhcnkgZGlyZWN0b3J5IgorbXNnc3RyICLgqKHgqL7gqIfgqLDgqYjgqJXgqJ/gqLDgqYAg4Kis4Kij4Ki+4KiJ4KijIOCosuCoiCDgqKvgqYfgqLLgqY3gqLkiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MjA1CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgJXMgaGFzIHRvbyBtYW55IENvbmZsaWN0cy9SZXBsYWNlcyBwYWlycyIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjI0MworIywgYy1mb3JtYXQKK21zZ2lkICJvbGQgdmVyc2lvbiBvZiBwYWNrYWdlIGhhcyBvdmVybHktbG9uZyBpbmZvIGZpbGUgbmFtZSBzdGFydGluZyBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjI4MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIG9ic29sZXRlIGluZm8gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjI4NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCAoc3VwcG9zZWQpIG5ldyBpbmZvIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyOTYKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiB0ZW1wIGNvbnRyb2wgZGlyZWN0b3J5IgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzA3CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgY29udGFpbnMgb3Zlcmx5LWxvbmcgY29udHJvbCBpbmZvIGZpbGUgbmFtZSAoc3RhcnRpbmcgYCUuNTBzJykiCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBjb250cm9sIGluZm8gY29udGFpbmVkIGRpcmVjdG9yeSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMxNgorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGNvbnRyb2wgaW5mbyBybWRpciBvZiBgJS4yNTBzJyBkaWRuJ3Qgc2F5IG5vdCBhIGRpciIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMyNgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlcyBjb250YWluZWQgbGlzdCBhcyBpbmZvIGZpbGUiCittc2dzdHIgIuCoquCpiOColeCph+ConCBgJXMnICfgqJog4KiV4KmL4KiIIOCoq+CovuCoh+CosiDgqKjgqLngqYDgqIIg4Ki54KmIICghKVxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMzMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgaW5mbyBmaWxlIGAlLjI1MHMnIGFzIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzQ5IHNyYy9yZW1vdmUuYzoxOTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSBjb250cm9sIGluZm8gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4KiV4Kmw4Kif4Kiw4KmL4KiyIOCoq+CovuCoh+CosiDgqJzgqL7gqKPgqJXgqL7gqLDgqYAgYCUuMjUwcycg4Ki54Kif4Ki+4KiJ4KijIOCosuCoiCDgqIXgqLjgqKvgqLzgqLIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDExCittc2dpZCAiY2Fubm90IGFjY2VzcyBhcmNoaXZlIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDMzCisjLCBmdXp6eQorI3wgbXNnaWQgImNvbnRyb2wgaW5mb3JtYXRpb24gbGVuZ3RoIgorbXNnaWQgInBhY2thZ2UgY29udHJvbCBpbmZvcm1hdGlvbiBleHRyYWN0aW9uIgorbXNnc3RyICLgqJXgqbDgqJ/gqLDgqYvgqLIg4Kic4Ki+4Kij4KiV4Ki+4Kiw4KmAIOCosuCpsOCorOCovuCoiCIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo0NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVjb3JkZWQgaW5mbyBhYm91dCAlcyBmcm9tICVzLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDY4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgYXJjaGl0ZWN0dXJlICglcykgZG9lcyBub3QgbWF0Y2ggc3lzdGVtICglcykiCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1MjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IHJlZ2FyZGluZyAlcyBjb250YWluaW5nICVzLCBwcmUtZGVwZW5kZW5jeSBwcm9ibGVtOlxuIgorIiVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTI2CisjLCBjLWZvcm1hdAorbXNnaWQgInByZS1kZXBlbmRlbmN5IHByb2JsZW0gLSBub3QgaW5zdGFsbGluZyAlLjI1MHMiCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1MjcKKyMsIGZ1enp5Cittc2dpZCAiaWdub3JpbmcgcHJlLWRlcGVuZGVuY3kgcHJvYmxlbSEiCittc2dzdHIgIiIKKyJkcGtnOiDgqKjgqL/gqLDgqK3gqLDgqKTgqL4g4Ki44Kiu4Kmx4Ki44Ki/4KiGIOCoqOCphyAlcyDgqKjgqYLgqbAg4Ki54Kif4Ki+4KiJ4KijIOCopOCpi+CogiDgqLDgqYvgqJXgqL/gqIY6XG4iCisiJXMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTQzCisjLCBjLWZvcm1hdAorbXNnaWQgIlByZXBhcmluZyB0byByZXBsYWNlICVzICVzICh1c2luZyAlcykgLi4uXG4iCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiVW5wYWNraW5nICVzIChmcm9tICVzKSAuLi5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjU4MAorIywgYy1mb3JtYXQKK21zZ2lkICJuYW1lIG9mIGNvbmZmaWxlIChzdGFydGluZyBgJS4yNTBzJykgaXMgdG9vIGxvbmcgKD4lZCBjaGFyYWN0ZXJzKSIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjYzMyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA3MQorIywgYy1mb3JtYXQKK21zZ2lkICJyZWFkIGVycm9yIGluICUuMjUwcyIKK21zZ3N0ciAiJS4yNTBzIOCoquCpnOCpjeCoueCoqCAn4KiaIOCol+CosuCopOCpgCIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyAlLjI1MHMiCittc2dzdHIgIiUuMjUwcyDgqKzgqbDgqKYg4KiV4Kiw4KioICfgqJog4KiX4Kiy4Kik4KmAIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjYzNworIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciB0cnlpbmcgdG8gb3BlbiAlLjI1MHMiCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGUtY29uZmlndXJpbmcgJXMsIHRvIGFsbG93IHJlbW92YWwgb2YgJXMgLi4uXG4iCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2ODEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIkRlLWNvbmZpZ3VyaW5nICVzIC4uLlxuIgorbXNnc3RyICIlcyDgqLngqJ/gqL7gqIfgqIYg4Kic4Ki+IOCosOCov+CoueCoviDgqLngqYguLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo3NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiVW5wYWNraW5nIHJlcGxhY2VtZW50ICUuMjUwcyAuLi5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjg0MAorbXNnaWQgInBhY2thZ2UgZmlsZXN5c3RlbSBhcmNoaXZlIGV4dHJhY3Rpb24iCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NTQKK21zZ2lkICJlcnJvciByZWFkaW5nIGRwa2ctZGViIHRhciBvdXRwdXQiCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NTYKK21zZ2lkICJjb3JydXB0ZWQgZmlsZXN5c3RlbSB0YXJmaWxlIC0gY29ycnVwdGVkIHBhY2thZ2UgYXJjaGl2ZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjg1OQorbXNnaWQgImRwa2ctZGViOiB6YXAgcG9zc2libGUgdHJhaWxpbmcgemVyb3MiCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5MTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHN0YXQgb2xkIGZpbGUgJyUuMjUwcycgc28gbm90IGRlbGV0aW5nIGl0OiAlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjkyNQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSBvbGQgZGlyZWN0b3J5ICclLjI1MHMnOiAlcyIKK21zZ3N0ciAi4KiV4Kmw4Kif4Kiw4KmL4KiyIOCoq+CovuCoh+CosiDgqJzgqL7gqKPgqJXgqL7gqLDgqYAgYCUuMjUwcycg4Ki54Kif4Ki+4KiJ4KijIOCosuCoiCDgqIXgqLjgqKvgqLzgqLIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTI4CisjLCBjLWZvcm1hdAorbXNnaWQgIm9sZCBjb25mZmlsZSAnJS4yNTBzJyB3YXMgYW4gZW1wdHkgZGlyZWN0b3J5IChhbmQgaGFzIG5vdyBiZWVuIGRlbGV0ZWQpIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTc1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IG90aGVyIG5ldyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTg2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJvbGQgZmlsZSAnJS4yNTBzJyBpcyB0aGUgc2FtZSBhcyBzZXZlcmFsIG5ldyBmaWxlcyEgKGJvdGggJyUuMjUwcycgYW5kICIKKyInJS4yNTBzJykiCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxMDI1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2VjdXJlbHkgcmVtb3ZlIG9sZCBmaWxlICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiJXMg4KiW4KmL4Kiy4KmN4Ki54KijIOCosuCoiCDgqIXgqLjgqKvgqLzgqLI6ICVzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEyMDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiKE5vdGluZyBkaXNhcHBlYXJhbmNlIG9mICVzLCB3aGljaCBoYXMgYmVlbiBjb21wbGV0ZWx5IHJlcGxhY2VkLilcbiIKK21zZ3N0ciAiIgorCisjLiBUUkFOU0xBVE9SUzogVGhpcyBpcyB0aGUgaGVhZGVyIHRoYXQgYXBwZWFycyBvbiAnZHBrZy1xdWVyeSAtbCcuIFRoZQorIy4gKiBzdHJpbmcgc2hvdWxkIHJlbWFpbiB1bmRlciA4MCBjaGFyYWN0ZXJzLiBUaGUgdXBwZXJjYXNlIGxldHRlcnMgaW4KKyMuICogdGhlIHN0YXRlIHZhbHVlcyBkZW5vdGUgdGhlIGFiYnJldmlhdGVkIGxldHRlciB0aGF0IHdpbGwgYXBwZWFyIG9uCisjLiAqIHRoZSBmaXJzdCB0aHJlZSBjb2x1bW5zLCB3aGljaCBzaG91bGQgaWRlYWxseSBtYXRjaCB0aGUgRW5nbGlzaCBvbmUKKyMuICogKGUuZy4gUmVtb3ZlIOKGkiBzdXBSaW1laXgpLCBzZWUgZHBrZy1xdWVyeSgxKSBmb3IgZnVydGhlciBkZXRhaWxzLiBUaGUKKyMuICogdHJhbnNsYXRlZCBtZXNzYWdlIGNhbiB1c2UgYWRkaXRpb25hbCBsaW5lcyBpZiBuZWVkZWQuCisjOiBzcmMvcXVlcnljbWQuYzoxNDkKK21zZ2lkICIiCisiRGVzaXJlZD1Vbmtub3duL0luc3RhbGwvUmVtb3ZlL1B1cmdlL0hvbGRcbiIKKyJ8IFN0YXR1cz1Ob3QvSW5zdC9Db25mLWZpbGVzL1VucGFja2VkL2hhbEYtY29uZi9IYWxmLWluc3QvdHJpZy1hV2FpdC9UcmlnLSIKKyJwZW5kXG4iCisifC8gRXJyPz0obm9uZSkvUmVpbnN0LXJlcXVpcmVkIChTdGF0dXMsRXJyOiB1cHBlcmNhc2U9YmFkKVxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjE1MworbXNnaWQgIk5hbWUiCittc2dzdHIgIuCoqOCovuCogiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MTUzCittc2dpZCAiVmVyc2lvbiIKK21zZ3N0ciAi4Ki14Kiw4Kic4KioIgorCisjOiBzcmMvcXVlcnljbWQuYzoxNTQKK21zZ2lkICJEZXNjcmlwdGlvbiIKK21zZ3N0ciAi4Ki14KmH4Kiw4Ki14Ki+IgorCisjOiBzcmMvcXVlcnljbWQuYzoyNDYgc3JjL3F1ZXJ5Y21kLmM6NTExIHNyYy9zZWxlY3QuYzo3NQorIywgYy1mb3JtYXQKK21zZ2lkICJObyBwYWNrYWdlcyBmb3VuZCBtYXRjaGluZyAlcy5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJzaW9uIGJ5ICVzIGZyb206ICVzXG4iCittc2dzdHIgIiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6Mjc1CisjLCBjLWZvcm1hdAorbXNnaWQgImRpdmVyc2lvbiBieSAlcyB0bzogJXNcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9jYWwgZGl2ZXJzaW9uIGZyb206ICVzXG4iCittc2dzdHIgIiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6Mjc5CisjLCBjLWZvcm1hdAorbXNnaWQgImxvY2FsIGRpdmVyc2lvbiB0bzogJXNcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcXVlcnljbWQuYzozMDkKK21zZ2lkICItLXNlYXJjaCBuZWVkcyBhdCBsZWFzdCBvbmUgZmlsZSBuYW1lIHBhdHRlcm4gYXJndW1lbnQiCittc2dzdHIgIiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MzUwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBubyBwYXRoIGZvdW5kIG1hdGNoaW5nIHBhdHRlcm4gJXMuXG4iCittc2dzdHIgIiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MzkzCisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgYCVzJyBpcyBub3QgaW5zdGFsbGVkIGFuZCBubyBpbmZvIGlzIGF2YWlsYWJsZS5cbiIKK21zZ3N0ciAi4Kiq4KmI4KiV4KmH4KicIGAlcycg4KiH4Kmw4Ki44Kif4Ki+4KiyIOCoqOCoueCpgOCogiDgqLngqYgg4KiF4Kik4KmHIOColeCpi+CoiCDgqJzgqL7gqKPgqJXgqL7gqLDgqYAg4KiJ4Kiq4Kiy4Kmx4Kis4KinIOCoqOCoueCpgOCogiDgqLngqYjgpaRcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDAxCisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgYCVzJyBpcyBub3QgYXZhaWxhYmxlLlxuIgorbXNnc3RyICLgqKrgqYjgqJXgqYfgqJwgYCVzJyDgqIngqKrgqLLgqbHgqKzgqKcg4Kio4Ki54KmA4KiCIOCoueCpiOClpFxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MTAgc3JjL3F1ZXJ5Y21kLmM6NTg1CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgYCVzJyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICLgqKrgqYjgqJXgqYfgqJwgYCVzJyDgqIfgqbDgqLjgqJ/gqL7gqLIg4Kio4Ki54KmA4KiCIOCoueCpiOClpFxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSBgJXMnIGRvZXMgbm90IGNvbnRhaW4gYW55IGZpbGVzICghKVxuIgorbXNnc3RyICLgqKrgqYjgqJXgqYfgqJwgYCVzJyAn4KiaIOColeCpi+CoiCDgqKvgqL7gqIfgqLIg4Kio4Ki54KmA4KiCIOCoueCpiCAoISlcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDI1CisjLCBjLWZvcm1hdAorbXNnaWQgImxvY2FsbHkgZGl2ZXJ0ZWQgdG86ICVzXG4iCittc2dzdHIgIiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDI4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgZGl2ZXJ0cyBvdGhlcnMgdG86ICVzXG4iCittc2dzdHIgIiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDMxCisjLCBjLWZvcm1hdAorbXNnaWQgImRpdmVydGVkIGJ5ICVzIHRvOiAlc1xuIgorbXNnc3RyICIiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQ1MgorbXNnaWQgIiIKKyJVc2UgZHBrZyAtLWluZm8gKD0gZHBrZy1kZWIgLS1pbmZvKSB0byBleGFtaW5lIGFyY2hpdmUgZmlsZXMsXG4iCisiYW5kIGRwa2cgLS1jb250ZW50cyAoPSBkcGtnLWRlYiAtLWNvbnRlbnRzKSB0byBsaXN0IHRoZWlyIGNvbnRlbnRzLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjU3MAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiLS0lcyB0YWtlcyBhdCBtb3N0IHR3byBhcmd1bWVudHMiCittc2dzdHIgIi0tJXMgbmVlZHMgPG5hbWU+IgorCisjOiBzcmMvcXVlcnljbWQuYzo1NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29udHJvbCBmaWxlIGNvbnRhaW5zICVjIgorbXNnc3RyICIiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjYwMAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuICVzIHBhY2thZ2UgbWFuYWdlbWVudCBwcm9ncmFtIHF1ZXJ5IHRvb2wgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAi4Kih4KmH4Kis4KmA4KiF4KioIGAlcycg4Kiq4KmI4KiV4KmH4KicIOCoruCpiOCoqOConOCph+CoruCov+CpsOConyDgqKrgqLDgqYvgqJfgqLDgqL7gqK4g4Ki14Kiw4Kic4KioICVzIOCoueCpiOClpFxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo2MTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1zfC0tc3RhdHVzIDxwYWNrYWdlPiAuLi4gICAgICAgIERpc3BsYXkgcGFja2FnZSBzdGF0dXMgZGV0YWlscy5cbiIKKyIgIC1wfC0tcHJpbnQtYXZhaWwgPHBhY2thZ2U+IC4uLiAgIERpc3BsYXkgYXZhaWxhYmxlIHZlcnNpb24gZGV0YWlscy5cbiIKKyIgIC1MfC0tbGlzdGZpbGVzIDxwYWNrYWdlPiAuLi4gICAgIExpc3QgZmlsZXMgYG93bmVkJyBieSBwYWNrYWdlKHMpLlxuIgorIiAgLWx8LS1saXN0IFs8cGF0dGVybj4gLi4uXSAgICAgICAgTGlzdCBwYWNrYWdlcyBjb25jaXNlbHkuXG4iCisiICAtV3wtLXNob3cgWzxwYXR0ZXJuPiAuLi5dICAgICAgICBTaG93IGluZm9ybWF0aW9uIG9uIHBhY2thZ2UocykuXG4iCisiICAtU3wtLXNlYXJjaCA8cGF0dGVybj4gLi4uICAgICAgICBGaW5kIHBhY2thZ2Uocykgb3duaW5nIGZpbGUocykuXG4iCisiICAtY3wtLWNvbnRyb2wtcGF0aCA8cGFja2FnZT4gWzxmaWxlPl1cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFByaW50IHBhdGggZm9yIHBhY2thZ2UgY29udHJvbCBmaWxlLlxuIgorIlxuIgorbXNnc3RyICIiCisiQ29tbWFuZHM6XG4iCisiICAtc3wtLXN0YXR1cyA8cGFja2FnZT4gLi4uICAgICAgICBEaXNwbGF5IHBhY2thZ2Ugc3RhdHVzIGRldGFpbHMuXG4iCisiICAtcHwtLXByaW50LWF2YWlsIDxwYWNrYWdlPiAuLi4gICBEaXNwbGF5IGF2YWlsYWJsZSB2ZXJzaW9uIGRldGFpbHMuXG4iCisiICAtTHwtLWxpc3RmaWxlcyA8cGFja2FnZT4gLi4uICAgICBMaXN0IGZpbGVzIGBvd25lZCcgYnkgcGFja2FnZShzKS5cbiIKKyIgIC1sfC0tbGlzdCBbPHBhdHRlcm4+IC4uLl0gICAgICAgIExpc3QgcGFja2FnZXMgY29uY2lzZWx5LlxuIgorIiAgLVd8LS1zaG93IDxwYXR0ZXJuPiAuLi4gICAgICAgICAgU2hvdyBpbmZvcm1hdGlvbiBvbiBwYWNrYWdlKHMpLlxuIgorIiAgLVN8LS1zZWFyY2ggPHBhdHRlcm4+IC4uLiAgICAgICAgRmluZCBwYWNrYWdlKHMpIG93bmluZyBmaWxlKHMpLlxuIgorIlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo2MzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgICAgICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyIgIC1mfC0tc2hvd2Zvcm1hdD08Zm9ybWF0PiAgICAgICAgIFVzZSBhbHRlcm5hdGl2ZSBmb3JtYXQgZm9yIC0tc2hvdy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgICAgICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyIgIC1mfC0tc2hvd2Zvcm1hdD08Zm9ybWF0PiAgICAgICAgIFVzZSBhbHRlcm5hdGl2ZSBmb3JtYXQgZm9yIC0tc2hvdy5cbiIKKyJcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjQyIGRwa2ctZGViL21haW4uYzoxMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkZvcm1hdCBzeW50YXg6XG4iCisiICBBIGZvcm1hdCBpcyBhIHN0cmluZyB0aGF0IHdpbGwgYmUgb3V0cHV0IGZvciBlYWNoIHBhY2thZ2UuIFRoZSBmb3JtYXRcbiIKKyIgIGNhbiBpbmNsdWRlIHRoZSBzdGFuZGFyZCBlc2NhcGUgc2VxdWVuY2VzIFxcbiAobmV3bGluZSksIFxcciAoY2FycmlhZ2VcbiIKKyIgIHJldHVybikgb3IgXFxcXCAocGxhaW4gYmFja3NsYXNoKS4gUGFja2FnZSBpbmZvcm1hdGlvbiBjYW4gYmUgaW5jbHVkZWRcbiIKKyIgIGJ5IGluc2VydGluZyB2YXJpYWJsZSByZWZlcmVuY2VzIHRvIHBhY2thZ2UgZmllbGRzIHVzaW5nIHRoZSAke3Zhcls7IgorIndpZHRoXX1cbiIKKyIgIHN5bnRheC4gRmllbGRzIHdpbGwgYmUgcmlnaHQtYWxpZ25lZCB1bmxlc3MgdGhlIHdpZHRoIGlzIG5lZ2F0aXZlIGluICIKKyJ3aGljaFxuIgorIiAgY2FzZSBsZWZ0IGFsaWdubWVudCB3aWxsIGJlIHVzZWQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjU2Cittc2dpZCAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBxdWVyeWluZyBwYWNrYWdlcy4iCittc2dzdHIgIiIKKworIzogc3JjL3JlbW92ZS5jOjg4CisjLCBjLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nIHJlcXVlc3QgdG8gcmVtb3ZlICUuMjUwcyB3aGljaCBpc24ndCBpbnN0YWxsZWQuIgorbXNnc3RyICIiCisKKyM6IHNyYy9yZW1vdmUuYzo5NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiaWdub3JpbmcgcmVxdWVzdCB0byByZW1vdmUgJS4yNTBzLCBvbmx5IHRoZSBjb25maWdcbiIKKyIgZmlsZXMgb2Ygd2hpY2ggYXJlIG9uIHRoZSBzeXN0ZW0uIFVzZSAtLXB1cmdlIHRvIHJlbW92ZSB0aGVtIHRvby4iCittc2dzdHIgIiIKKworIzogc3JjL3JlbW92ZS5jOjEwMworbXNnaWQgIlRoaXMgaXMgYW4gZXNzZW50aWFsIHBhY2thZ2UgLSBpdCBzaG91bGQgbm90IGJlIHJlbW92ZWQuIgorbXNnc3RyICIiCisKKyM6IHNyYy9yZW1vdmUuYzoxMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IGRlcGVuZGVuY3kgcHJvYmxlbXMgcHJldmVudCByZW1vdmFsIG9mICVzOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzog4Kio4Ki/4Kiw4Kit4Kiw4Kik4Ki+IOCouOCoruCpseCouOCov+CohiDgqKjgqYcgJXMg4Kio4KmC4KmwIOCoueCon+CovuCoieCooyDgqKTgqYvgqIIg4Kiw4KmL4KiV4Ki/4KiGOlxuIgorIiVzIgorCisjOiBzcmMvcmVtb3ZlLmM6MTMwCittc2dpZCAiZGVwZW5kZW5jeSBwcm9ibGVtcyAtIG5vdCByZW1vdmluZyIKK21zZ3N0ciAiIgorCisjOiBzcmMvcmVtb3ZlLmM6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiAlczogZGVwZW5kZW5jeSBwcm9ibGVtcywgYnV0IHJlbW92aW5nIGFueXdheSBhcyB5b3UgcmVxdWVzdGVkOlxuIgorIiVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9yZW1vdmUuYzoxNDIKK21zZ2lkICIiCisiUGFja2FnZSBpcyBpbiBhIHZlcnkgYmFkIGluY29uc2lzdGVudCBzdGF0ZSAtIHlvdSBzaG91bGRcbiIKKyIgcmVpbnN0YWxsIGl0IGJlZm9yZSBhdHRlbXB0aW5nIGEgcmVtb3ZhbC4iCittc2dzdHIgIiIKKworIzogc3JjL3JlbW92ZS5jOjE0OQorIywgYy1mb3JtYXQKK21zZ2lkICJXb3VsZCByZW1vdmUgb3IgcHVyZ2UgJXMgLi4uXG4iCittc2dzdHIgIiIKKworIzogc3JjL3JlbW92ZS5jOjE1NworIywgYy1mb3JtYXQKK21zZ2lkICJSZW1vdmluZyAlcyAuLi5cbiIKK21zZ3N0ciAiJXMg4Ki54Kif4Ki+4KiH4KiGIOConOCoviDgqLDgqL/gqLngqL4g4Ki54KmILi4uXG4iCisKKyM6IHNyYy9yZW1vdmUuYzoyNzUgc3JjL3JlbW92ZS5jOjM2NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisid2hpbGUgcmVtb3ZpbmcgJS4yNTBzLCB1bmFibGUgdG8gcmVtb3ZlIGRpcmVjdG9yeSAnJS4yNTBzJzogJXMgLSBkaXJlY3RvcnkgIgorIm1heSBiZSBhIG1vdW50IHBvaW50PyIKK21zZ3N0ciAiIgorCisjOiBzcmMvcmVtb3ZlLmM6Mjg5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2VjdXJlbHkgcmVtb3ZlICclLjI1MHMnIgorbXNnc3RyICIlcyDgqJbgqYvgqLLgqY3gqLngqKMg4Kiy4KiIIOCoheCouOCoq+CovOCosjogJXMiCisKKyM6IHNyYy9yZW1vdmUuYzozNjEKKyMsIGMtZm9ybWF0Cittc2dpZCAid2hpbGUgcmVtb3ZpbmcgJS4yNTBzLCBkaXJlY3RvcnkgJyUuMjUwcycgbm90IGVtcHR5IHNvIG5vdCByZW1vdmVkLiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcmVtb3ZlLmM6MzgzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW5ub3QgcmVtb3ZlIGAlLjI1MHMnIgorbXNnaWQgImNhbm5vdCByZW1vdmUgJyUuMjUwcyciCittc2dzdHIgImAlLjI1MHMnIOCoueCon+CovuCoiCDgqKjgqLngqYDgqIIg4Kic4Ki+IOCouOColeCopuCpgCIKKworIzogc3JjL3JlbW92ZS5jOjQwOQorIywgYy1mb3JtYXQKK21zZ2lkICJQdXJnaW5nIGNvbmZpZ3VyYXRpb24gZmlsZXMgZm9yICVzIC4uLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9yZW1vdmUuYzo0NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlbW92ZSBvbGQgY29uZmlnIGZpbGUgYCUuMjUwcycgKD0gYCUuMjUwcycpIgorbXNnc3RyICIiCisKKyM6IHNyYy9yZW1vdmUuYzo0NzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlYWQgY29uZmlnIGZpbGUgZGlyIGAlLjI1MHMnIChmcm9tIGAlLjI1MHMnKSIKK21zZ3N0ciAiIgorCisjOiBzcmMvcmVtb3ZlLmM6NTEwCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZW1vdmUgb2xkIGJhY2t1cCBjb25maWcgZmlsZSBgJS4yNTBzJyAob2YgYCUuMjUwcycpIgorbXNnc3RyICIiCisKKyM6IHNyYy9yZW1vdmUuYzo1NjgKK21zZ2lkICJjYW5ub3QgcmVtb3ZlIG9sZCBmaWxlcyBsaXN0IgorbXNnc3RyICLgqKrgqYHgqLDgqL7gqKPgqYAg4Kir4Ki+4KiH4KiyIOCouOCpguComuCpgCDgqLngqJ/gqL7gqIgg4Kio4Ki54KmA4KiCIOConOCoviDgqLjgqJXgqKbgqYAiCisKKyM6IHNyYy9yZW1vdmUuYzo1NzQKK21zZ2lkICJjYW4ndCByZW1vdmUgb2xkIHBvc3RybSBzY3JpcHQiCittc2dzdHIgIiIKKworIzogc3JjL3NlbGVjdC5jOjExNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVvZiBpbiBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvc2VsZWN0LmM6MTE2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGxpbmUgaW4gcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQiCittc2dzdHIgIiIKKworIzogc3JjL3NlbGVjdC5jOjEyMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVvZiBhZnRlciBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvc2VsZWN0LmM6MTIzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGxpbmUgYWZ0ZXIgcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQiCittc2dzdHIgIiIKKworIzogc3JjL3NlbGVjdC5jOjEzNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGRhdGEgYWZ0ZXIgcGFja2FnZSBhbmQgc2VsZWN0aW9uIGF0IGxpbmUgJWQiCittc2dzdHIgIiIKKworIzogc3JjL3NlbGVjdC5jOjEzOQorIywgYy1mb3JtYXQKK21zZ2lkICJpbGxlZ2FsIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkOiAlLjI1MHMiCittc2dzdHIgIiIKKworIzogc3JjL3NlbGVjdC5jOjE0MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIHdhbnRlZCBzdGF0dXMgYXQgbGluZSAlZDogJS4yNTBzIgorbXNnc3RyICIiCisKKyM6IHNyYy9zZWxlY3QuYzoxNDkKK21zZ2lkICJyZWFkIGVycm9yIG9uIHN0YW5kYXJkIGlucHV0IgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0Y21kLmM6NTIKK21zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IG92ZXJyaWRpbmcgZmlsZSBzdGF0IGluZm9ybWF0aW9uLiIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGNtZC5jOjYxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29weXJpZ2h0IChDKSAyMDAwLCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDA2LTIwMDkgR3VpbGxlbSBKb3Zlci5cbiIKK21zZ3N0ciAiIgorIlxuIgorIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAtMjAwMiBXaWNoZXJ0IEFra2VybWFuLiIKKworIzogc3JjL3N0YXRjbWQuYzo4MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtLWFkZCA8b3duZXI+IDxncm91cD4gPG1vZGU+IDxmaWxlPlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGFkZCBhIG5ldyBlbnRyeSBpbnRvIHRoZSBkYXRhYmFzZS5cbiIKKyIgIC0tcmVtb3ZlIDxmaWxlPiAgICAgICAgICByZW1vdmUgZmlsZSBmcm9tIHRoZSBkYXRhYmFzZS5cbiIKKyIgIC0tbGlzdCBbPGdsb2ItcGF0dGVybj5dICBsaXN0IGN1cnJlbnQgb3ZlcnJpZGVzIGluIHRoZSBkYXRhYmFzZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGNtZC5jOjg5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICBzZXQgdGhlIGRpcmVjdG9yeSB3aXRoIHRoZSBzdGF0b3ZlcnJpZGUgZmlsZS5cbiIKKyIgIC0tdXBkYXRlICAgICAgICAgICAgICAgICBpbW1lZGlhdGVseSB1cGRhdGUgZmlsZSBwZXJtaXNzaW9ucy5cbiIKKyIgIC0tZm9yY2UgICAgICAgICAgICAgICAgICBmb3JjZSBhbiBhY3Rpb24gZXZlbiBpZiBhIHNhbml0eSBjaGVjayBmYWlscy5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBxdWlldCBvcGVyYXRpb24sIG1pbmltYWwgb3V0cHV0LlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSA8Y29tbWFuZD5cbiIKKyJcbiIKKyJDb21tYW5kczpcbiIKKyIgIC0tYWRkIDxvd25lcj4gPGdyb3VwPiA8bW9kZT4gPGZpbGU+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkIGEgbmV3IGVudHJ5IGludG8gdGhlIGRhdGFiYXNlLlxuIgorIiAgLS1yZW1vdmUgPGZpbGU+ICAgICAgICAgIHJlbW92ZSBmaWxlIGZyb20gdGhlIGRhdGFiYXNlLlxuIgorIiAgLS1saXN0IFs8Z2xvYi1wYXR0ZXJuPl0gIGxpc3QgY3VycmVudCBvdmVycmlkZXMgaW4gdGhlIGRhdGFiYXNlLlxuIgorIlxuIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgc2V0IHRoZSBkaXJlY3Rvcnkgd2l0aCB0aGUgc3RhdG92ZXJyaWRlIGZpbGUuXG4iCisiICAtLXVwZGF0ZSAgICAgICAgICAgICAgICAgaW1tZWRpYXRlbHkgdXBkYXRlIGZpbGUgcGVybWlzc2lvbnMuXG4iCisiICAtLWZvcmNlICAgICAgICAgICAgICAgICAgZm9yY2UgYW4gYWN0aW9uIGV2ZW4gaWYgYSBzYW5pdHkgY2hlY2sgZmFpbHMuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgcXVpZXQgb3BlcmF0aW9uLCBtaW5pbWFsIG91dHB1dC5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisKKyM6IHNyYy9zdGF0Y21kLmM6MTE2Cittc2dpZCAic3RyaXBwaW5nIHRyYWlsaW5nIC8iCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRjbWQuYzoyMDcKK21zZ2lkICJjYW5ub3Qgb3BlbiBuZXcgc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRjbWQuYzoyMjIKK21zZ2lkICJlcnJvciByZW1vdmluZyBzdGF0b3ZlcnJpZGUtb2xkIgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjI0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgbmV3IHN0YXRvdmVycmlkZS1vbGQiCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRjbWQuYzoyMjYKK21zZ2lkICJlcnJvciBpbnN0YWxsaW5nIG5ldyBzdGF0b3ZlcnJpZGUiCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRjbWQuYzoyNDYKK21zZ2lkICItLWFkZCBuZWVkcyBmb3VyIGFyZ3VtZW50cyIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGNtZC5jOjI1NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQW4gb3ZlcnJpZGUgZm9yICclcycgYWxyZWFkeSBleGlzdHMsIGJ1dCAtLWZvcmNlIHNwZWNpZmllZCBzbyB3aWxsIGJlICIKKyJpZ25vcmVkLiIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGNtZC5jOjI2MAorIywgYy1mb3JtYXQKK21zZ2lkICJBbiBvdmVycmlkZSBmb3IgJyVzJyBhbHJlYWR5IGV4aXN0cywgYWJvcnRpbmcuIgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjcyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tdXBkYXRlIGdpdmVuIGJ1dCAlcyBkb2VzIG5vdCBleGlzdCIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGNtZC5jOjI5NgorbXNnaWQgIk5vIG92ZXJyaWRlIHByZXNlbnQuIgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0Y21kLmM6MzA0Cittc2dpZCAiLS11cGRhdGUgaXMgdXNlbGVzcyBmb3IgLS1yZW1vdmUiCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRkYi5jOjU5Cittc2dpZCAic3ludGF4IGVycm9yOiBpbnZhbGlkIHVpZCBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGRiLmM6NjQKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yOiB1bmtub3duIHVzZXIgJyVzJyBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGRiLmM6ODMKK21zZ2lkICJzeW50YXggZXJyb3I6IGludmFsaWQgZ2lkIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0ZGIuYzo4OAorIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3I6IHVua25vd24gZ3JvdXAgJyVzJyBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGRiLmM6MTA0Cittc2dpZCAic3ludGF4IGVycm9yOiBpbnZhbGlkIG1vZGUgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRkYi5jOjEyNworbXNnaWQgImZhaWxlZCB0byBvcGVuIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0ZGIuYzoxMzQKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRkYi5jOjEzNworbXNnaWQgImZhaWxlZCB0byBmc3RhdCBwcmV2aW91cyBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGRiLmM6MTYyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJyZWFkaW5nIHN0YXRvdmVycmlkZSBmaWxlICclLjI1MHMnIgorbXNnc3RyICLgqJXgqbDgqJ/gqLDgqYvgqLIg4Kir4Ki+4KiH4KiyIOConOCovuCoo+ColeCovuCosOCpgCBgJS4yNTBzJyDgqLngqJ/gqL7gqIngqKMg4Kiy4KiIIOCoheCouOCoq+CovOCosiIKKworIzogc3JjL3N0YXRkYi5jOjE2OQorbXNnaWQgInN0YXRvdmVycmlkZSBmaWxlIGlzIG1pc3NpbmcgZmluYWwgbmV3bGluZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGRiLmM6MTczCittc2dpZCAic3RhdG92ZXJyaWRlIGZpbGUgY29udGFpbnMgZW1wdHkgbGluZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGRiLmM6MTc4IHNyYy9zdGF0ZGIuYzoxOTAgc3JjL3N0YXRkYi5jOjIwMgorbXNnaWQgInN5bnRheCBlcnJvciBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGRiLmM6MTg2IHNyYy9zdGF0ZGIuYzoxOTggc3JjL3N0YXRkYi5jOjIxMAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGxpbmUgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRkYi5jOjIxNAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAibXVsdGlwbGUgc3RhdHVzb3ZlcnJpZGVzIHByZXNlbnQgZm9yIGZpbGUgJyUuMjUwcyciCittc2dzdHIgIuColeCpsOCon+CosOCpi+CosiDgqKvgqL7gqIfgqLIg4Kic4Ki+4Kij4KiV4Ki+4Kiw4KmAIGAlLjI1MHMnIOCoueCon+CovuCoieCooyDgqLLgqIgg4KiF4Ki44Kir4Ki84KiyIgorCisjOiBzcmMvdHJpZ2NtZC5jOjQ2Cittc2dpZCAiVHlwZSBkcGtnLXRyaWdnZXIgLS1oZWxwIGZvciBoZWxwIGFib3V0IHRoaXMgdXRpbGl0eS4iCittc2dzdHIgIiIKKworIzogc3JjL3RyaWdjbWQuYzo1MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuICVzIHBhY2thZ2UgdHJpZ2dlciB1dGlsaXR5IHZlcnNpb24gJXMuXG4iCittc2dzdHIgIuCooeCph+CorOCpgOCoheCoqCBgJXMnIOCoquCpiOColeCph+ConCDgqK7gqYjgqKjgqJzgqYfgqK7gqL/gqbDgqJ8g4Kiq4Kiw4KmL4KiX4Kiw4Ki+4KiuIOCoteCosOConOCoqCAlcyDgqLngqYjgpaRcbiIKKworIzogc3JjL3RyaWdjbWQuYzo2NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbnM+IC4uLl0gPHRyaWdnZXItbmFtZT5cbiIKKyIgICAgICAgJXMgWzxvcHRpb25zPiAuLi5dIDxjb21tYW5kPlxuIgorIlxuIgorbXNnc3RyICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIDxjb21tYW5kPlxuIgorIlxuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC0tY2hlY2stc3VwcG9ydGVkICAgICAgICAgICAgICAgIENoZWNrIGlmIHRoZSBydW5uaW5nIGRwa2cgc3VwcG9ydHMgIgorInRyaWdnZXJzLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy90cmlnY21kLmM6ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgICAgICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyIgIC0tYnktcGFja2FnZT08cGFja2FnZT4gICAgICAgICAgIE92ZXJyaWRlIHRyaWdnZXIgYXdhaXRlciAobm9ybWFsbHkgc2V0XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ5IGRwa2cpLlxuIgorIiAgLS1uby1hd2FpdCAgICAgICAgICAgICAgICAgICAgICAgTm8gcGFja2FnZSBuZWVkcyB0byBhd2FpdCB0aGUgIgorInByb2Nlc3NpbmcuXG4iCisiICAtLW5vLWFjdCAgICAgICAgICAgICAgICAgICAgICAgICBKdXN0IHRlc3QgLSBkb24ndCBhY3R1YWxseSBjaGFuZ2UgIgorImFueXRoaW5nLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy90cmlnY21kLmM6MTUyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB0cmlnZ2VycyBkYXRhIGRpcmVjdG9yeSBub3QgeWV0IGNyZWF0ZWRcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvdHJpZ2NtZC5jOjE1NgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogdHJpZ2dlciByZWNvcmRzIG5vdCB5ZXQgaW4gZXhpc3RlbmNlXG4iCittc2dzdHIgIiIKKworIzogc3JjL3RyaWdjbWQuYzoyMDUKK21zZ2lkICJ0YWtlcyBvbmUgYXJndW1lbnQsIHRoZSB0cmlnZ2VyIG5hbWUiCittc2dzdHIgIiIKKworIzogc3JjL3RyaWdjbWQuYzoyMTAKK21zZ2lkICJtdXN0IGJlIGNhbGxlZCBmcm9tIGEgbWFpbnRhaW5lciBzY3JpcHQgKG9yIHdpdGggYSAtLWJ5LXBhY2thZ2Ugb3B0aW9uKSIKK21zZ3N0ciAiIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIxNQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiaWxsZWdhbCBhd2FpdGVkIHBhY2thZ2UgbmFtZSAnJS4yNTBzJzogJS4yNTBzIgorbXNnc3RyICLgqJfgqLLgqKQg4Kiq4KmI4KiV4KmH4KicIOCoqOCovuCogiAoJS4yNTBzKSIKKworIzogc3JjL3RyaWdjbWQuYzoyMjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgdHJpZ2dlciBuYW1lIGAlLjI1MHMnOiAlLjI1MHMiCittc2dzdHIgIuCol+CosuCopCDgqKrgqYjgqJXgqYfgqJwg4Kio4Ki+4KiCICglLjI1MHMpIgorCisjOiBzcmMvdHJpZ3Byb2MuYzoyNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBjeWNsZSBmb3VuZCB3aGlsZSBwcm9jZXNzaW5nIHRyaWdnZXJzOlxuIgorIiBjaGFpbiBvZiBwYWNrYWdlcyB3aG9zZSB0cmlnZ2VycyBhcmUgb3IgbWF5IGJlIHJlc3BvbnNpYmxlOlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy90cmlncHJvYy5jOjI1OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiIHBhY2thZ2VzJyBwZW5kaW5nIHRyaWdnZXJzIHdoaWNoIGFyZSBvciBtYXkgYmUgdW5yZXNvbHZhYmxlOlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy90cmlncHJvYy5jOjI4MQorbXNnaWQgInRyaWdnZXJzIGxvb3BpbmcsIGFiYW5kb25lZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvdHJpZ3Byb2MuYzozMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHJvY2Vzc2luZyB0cmlnZ2VycyBmb3IgJXMgLi4uXG4iCittc2dzdHIgIiIKKworIzogc3JjL3VwZGF0ZS5jOjUyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGV4YWN0bHkgb25lIFBhY2thZ2VzLWZpbGUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMgbmVlZHMgPG5hbWU+IgorCisjOiBzcmMvdXBkYXRlLmM6NjIKK21zZ2lkICJ1bmFibGUgdG8gYWNjZXNzIGRwa2cgc3RhdHVzIGFyZWEgZm9yIGJ1bGsgYXZhaWxhYmxlIHVwZGF0ZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvdXBkYXRlLmM6NjQKK21zZ2lkICJidWxrIGF2YWlsYWJsZSB1cGRhdGUgcmVxdWlyZXMgd3JpdGUgYWNjZXNzIHRvIGRwa2cgc3RhdHVzIGFyZWEiCittc2dzdHIgIiIKKworIzogc3JjL3VwZGF0ZS5jOjcxCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlcGxhY2luZyBhdmFpbGFibGUgcGFja2FnZXMgaW5mbywgdXNpbmcgJXMuXG4iCittc2dzdHIgIiIKKworIzogc3JjL3VwZGF0ZS5jOjc0CisjLCBjLWZvcm1hdAorbXNnaWQgIlVwZGF0aW5nIGF2YWlsYWJsZSBwYWNrYWdlcyBpbmZvLCB1c2luZyAlcy5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvdXBkYXRlLmM6MTAxCisjLCBjLWZvcm1hdAorbXNnaWQgIkluZm9ybWF0aW9uIGFib3V0ICVkIHBhY2thZ2Ugd2FzIHVwZGF0ZWQuXG4iCittc2dpZF9wbHVyYWwgIkluZm9ybWF0aW9uIGFib3V0ICVkIHBhY2thZ2VzIHdhcyB1cGRhdGVkLlxuIgorbXNnc3RyWzBdICIiCittc2dzdHJbMV0gIiIKKworIzogc3JjL3VwZGF0ZS5jOjExNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisib2Jzb2xldGUgJy0tJXMnIG9wdGlvbiwgdW5hdmFpbGFibGUgcGFja2FnZXMgYXJlIGF1dG9tYXRpY2FsbHkgY2xlYW5lZCB1cC4iCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBuYW1lICclLjUwcy4uLicgaXMgdG9vIGxvbmciCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoxMjkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGZpbGUgbmFtZSAnJS4yNTBzJyIKK21zZ3N0ciAiJXMg4Kis4Kij4Ki+4KiJ4KijIOCosuCoiCDgqIXgqLjgqKvgqLzgqLI6ICVzIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjE4OQorIywgZnV6enkKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBjb250cm9sIGRpcmVjdG9yeSIKK21zZ3N0ciAi4Kih4Ki+4KiH4Kiw4KmI4KiV4Kif4Kiw4KmAIOCorOCopuCosuCooyDgqLLgqIgg4Kir4KmH4Kiy4KmN4Ki5IgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjE5MQorIywgZnV6enkKK21zZ2lkICJjb250cm9sIGRpcmVjdG9yeSBpcyBub3QgYSBkaXJlY3RvcnkiCittc2dzdHIgIuConOCovuCoo+ColeCovuCosOCpgCDgqKHgqL7gqIfgqLDgqYjgqJXgqJ/gqLDgqYAg4Kiq4Kmc4KmN4Ki54KmAIOCoqOCoueCpgOCogiDgqJzgqL4g4Ki44KiV4Kim4KmAIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjE5MworIywgYy1mb3JtYXQKK21zZ2lkICJjb250cm9sIGRpcmVjdG9yeSBoYXMgYmFkIHBlcm1pc3Npb25zICUwM2xvIChtdXN0IGJlID49MDc1NSBhbmQgPD0wNzc1KSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjIwNAorIywgYy1mb3JtYXQKK21zZ2lkICJtYWludGFpbmVyIHNjcmlwdCBgJS41MHMnIGlzIG5vdCBhIHBsYWluIGZpbGUgb3Igc3ltbGluayIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjIwNworIywgYy1mb3JtYXQKK21zZ2lkICIiCisibWFpbnRhaW5lciBzY3JpcHQgYCUuNTBzJyBoYXMgYmFkIHBlcm1pc3Npb25zICUwM2xvIChtdXN0IGJlID49MDU1NSBhbmQgIgorIjw9MDc3NSkiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAibWFpbnRhaW5lciBzY3JpcHQgYCUuNTBzJyBpcyBub3Qgc3RhdHRhYmxlIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjM3Cittc2dpZCAiZXJyb3Igb3BlbmluZyBjb25mZmlsZXMgZmlsZSIKK21zZ3N0ciAiY29uZmZpbGVzIOCoq+CovuCoh+CosiDgqIXgqKrgqLXgqL7gqKYg4KiW4KmL4Kiy4KmN4Ki54KijIOCopuCpjOCosOCovuCoqCDgqJfgqLLgqKTgqYAiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjQ2Cittc2dpZCAiZW1wdHkgc3RyaW5nIGZyb20gZmdldHMgcmVhZGluZyBjb25mZmlsZXMiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgbmFtZSAnJS41MHMuLi4nIGlzIHRvbyBsb25nLCBvciBtaXNzaW5nIGZpbmFsIG5ld2xpbmUiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgZmlsZW5hbWUgJyVzJyBjb250YWlucyB0cmFpbGluZyB3aGl0ZSBzcGFjZXMiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgYCUuMjUwcycgZG9lcyBub3QgYXBwZWFyIGluIHBhY2thZ2UiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgYCUuMjUwcycgaXMgbm90IHN0YXR0YWJsZSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI3MAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgJyVzJyBpcyBub3QgYSBwbGFpbiBmaWxlIgorbXNnc3RyICIgJXMgKOCoh+CpseColSDgqLjgqKfgqL7gqLDgqKgg4Kir4Ki+4KiH4KiyIOCoqOCoueCpgOCogilcbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNzQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIG5hbWUgJyVzJyBpcyBkdXBsaWNhdGVkIgorbXNnc3RyICIgJXMgKOCoh+CpseColSDgqLjgqKfgqL7gqLDgqKgg4Kir4Ki+4KiH4KiyIOCoqOCoueCpgOCogilcbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyODcKK21zZ2lkICJlcnJvciByZWFkaW5nIGNvbmZmaWxlcyBmaWxlIgorbXNnc3RyICJjb25mZmlsZXMg4Kir4Ki+4KiH4KiyIOCoheCoquCoteCovuCopiDgqKrgqZzgqY3gqLngqKgg4Kim4KmM4Kiw4Ki+4KioIOCol+CosuCopOCpgCIKKworIzogZHBrZy1kZWIvYnVpbGQuYzozMzkKK21zZ2lkICJwYWNrYWdlIG5hbWUgaGFzIGNoYXJhY3RlcnMgdGhhdCBhcmVuJ3QgbG93ZXJjYXNlIGFscGhhbnVtcyBvciBgLSsuJyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjM0MQorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGNvbnRhaW5zIHVzZXItZGVmaW5lZCBQcmlvcml0eSB2YWx1ZSAnJXMnIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MzQ3CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgY29udGFpbnMgdXNlci1kZWZpbmVkIGZpZWxkICclcyciCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzozNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgJWQgd2FybmluZyBhYm91dCB0aGUgY29udHJvbCBmaWxlKHMpXG4iCittc2dpZF9wbHVyYWwgImlnbm9yaW5nICVkIHdhcm5pbmdzIGFib3V0IHRoZSBjb250cm9sIGZpbGUocylcbiIKK21zZ3N0clswXSAiIgorbXNnc3RyWzFdICIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDAzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDI5CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQzNgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGEgPGRpcmVjdG9yeT4gYXJndW1lbnQiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MDkKK21zZ2lkICItLWJ1aWxkIHRha2VzIGF0IG1vc3QgdHdvIGFyZ3VtZW50cyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQxMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hlY2sgZm9yIGV4aXN0ZW5jZSBvZiBhcmNoaXZlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDMwCittc2dpZCAidGFyZ2V0IGlzIGRpcmVjdG9yeSAtIGNhbm5vdCBza2lwIGNvbnRyb2wgZmlsZSBjaGVjayIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQzMQorbXNnaWQgIm5vdCBjaGVja2luZyBjb250ZW50cyBvZiBjb250cm9sIGFyZWEuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDMyCisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2ctZGViOiBidWlsZGluZyBhbiB1bmtub3duIHBhY2thZ2UgaW4gJyVzJy5cbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQzOQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnLWRlYjogYnVpbGRpbmcgcGFja2FnZSBgJXMnIGluIGAlcycuXG4iCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0NjcgZHBrZy1kZWIvYnVpbGQuYzo1MjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBtYWtlIHRlbXBvcmFyeSBmaWxlICglcykiCittc2dzdHIgIiVzIOCorOCoo+CovuCoieCooyDgqLLgqIgg4KiF4Ki44Kir4Ki84KiyOiAlcyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0NjcgZHBrZy1kZWIvYnVpbGQuYzo0NzAgZHBrZy1kZWIvYnVpbGQuYzo0NzcKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDg1IGRwa2ctZGViL2J1aWxkLmM6NDk0IGRwa2ctZGViL2J1aWxkLmM6NDk5CisjLCBmdXp6eQorI3wgbXNnaWQgImNvbnRyb2wiCittc2dpZCAiY29udHJvbCBtZW1iZXIiCittc2dzdHIgIuColeCpsOCon+CosOCpi+CosiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0NzAgZHBrZy1kZWIvYnVpbGQuYzo1MjQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB1bmxpbmsgdGVtcG9yYXJ5IGZpbGUgKCVzKSwgJXMiCittc2dzdHIgIiVzIOCorOCoo+CovuCoieCooyDgqLLgqIgg4KiF4Ki44Kir4Ki84KiyOiAlcyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0ODUgZHBrZy1kZWIvYnVpbGQuYzo1OTMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdGVtcG9yYXJ5IGZpbGUgKCVzKSIKK21zZ3N0ciAiJXMg4Kis4Kij4Ki+4KiJ4KijIOCosuCoiCDgqIXgqLjgqKvgqLzgqLI6ICVzIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ5NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHN0YXQgdGVtcG9yYXJ5IGZpbGUgKCVzKSIKK21zZ3N0ciAiJXMg4Kis4Kij4Ki+4KiJ4KijIOCosuCoiCDgqIXgqLjgqKvgqLzgqLI6ICVzIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ5OAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciB3cml0aW5nIGAlcyciCittc2dzdHIgImAlcycg4Kiy4Ki/4KiW4KijIOCopuCpjOCosOCovuCoqCDgqJfgqLLgqKTgqYAiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTIxIGRwa2ctZGViL2J1aWxkLmM6NTI0IGRwa2ctZGViL2J1aWxkLmM6NTQ2CisjOiBkcGtnLWRlYi9idWlsZC5jOjU3MiBkcGtnLWRlYi9idWlsZC5jOjU4MCBkcGtnLWRlYi9idWlsZC5jOjU5MworIywgZnV6enkKKyN8IG1zZ2lkICJiZXR3ZWVuIG1lbWJlcnMiCittc2dpZCAiZGF0YSBtZW1iZXIiCittc2dzdHIgIuCoruCpiOCoguCorOCosOCovuCogiAn4KiaIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjU3MSBkcGtnLWRlYi9idWlsZC5jOjU4MAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIGZpbGVuYW1lIHRvIHRhciBwaXBlICglcykiCittc2dzdHIgIiVzIOCorOCoo+CovuCoieCooyDgqLLgqIgg4KiF4Ki44Kir4Ki84KiyOiAlcyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo1ODQKK21zZ2lkICI8Y29tcHJlc3M+IGZyb20gdGFyIC1jZiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6NjEgZHBrZy1kZWIvZXh0cmFjdC5jOjYzCittc2dpZCAic2hlbGwgY29tbWFuZCB0byBtb3ZlIGZpbGVzIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzo3MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBmaWxlIGluICVzIGluICUuMjU1cyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcmVhZGluZyAlcyBmcm9tIGZpbGUgJS4yNTVzIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxMjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgYXJjaGl2ZSBgJS4yNTVzJyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTI3Cittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGFyY2hpdmUiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjEzMQorIywgZnV6enkKK21zZ2lkICJhcmNoaXZlIG1hZ2ljIHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICLgqLXgqLDgqJzgqKgg4Kio4Kmw4Kis4KiwIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTQzCittc2dpZCAiYXJjaGl2ZSBtZW1iZXIgaGVhZGVyIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIGFyY2hpdmUgaGVhZGVyIG1hZ2ljIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBub3QgYSBkZWJpYW4gYmluYXJ5IGFyY2hpdmUgKHRyeSBkcGtnLXNwbGl0PykiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE1OQorbXNnaWQgImFyY2hpdmUgaW5mb3JtYXRpb24gaGVhZGVyIG1lbWJlciIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTYyCittc2dpZCAiYXJjaGl2ZSBoYXMgbm8gbmV3bGluZXMgaW4gaGVhZGVyIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNjUKK21zZ2lkICJhcmNoaXZlIGhhcyBubyBkb3QgaW4gdmVyc2lvbiBudW1iZXIiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE2OAorIywgYy1mb3JtYXQKK21zZ2lkICJhcmNoaXZlIHZlcnNpb24gJS4yNTBzIG5vdCB1bmRlcnN0b29kLCBnZXQgbmV3ZXIgZHBrZy1kZWIiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE3OSBkcGtnLWRlYi9leHRyYWN0LmM6MjA1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjb250cm9sIGFyZWEiCittc2dpZCAic2tpcHBlZCBhcmNoaXZlIG1lbWJlciBkYXRhIGZyb20gJXMiCittc2dzdHIgIuColeCpsOCon+CosOCpi+CosiDgqI/gqLDgqYDgqIYiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxOTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiYXJjaGl2ZSAnJS4yNTBzJyBjb250YWlucyBub3QgdW5kZXJzdG9vZCBkYXRhIG1lbWJlciAlLipzLCBnaXZpbmcgdXAiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE5OQorIywgYy1mb3JtYXQKK21zZ2lkICJhcmNoaXZlICclLjI1MHMnIGNvbnRhaW5zIHR3byBjb250cm9sIG1lbWJlcnMsIGdpdmluZyB1cCIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjE0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiIG5ldyBkZWJpYW4gcGFja2FnZSwgdmVyc2lvbiAlcy5cbiIKKyN8ICIgc2l6ZSAlbGQgYnl0ZXM6IGNvbnRyb2wgYXJjaGl2ZT0gJXppIGJ5dGVzLlxuIgorbXNnaWQgIiIKKyIgbmV3IGRlYmlhbiBwYWNrYWdlLCB2ZXJzaW9uICVzLlxuIgorIiBzaXplICVqZCBieXRlczogY29udHJvbCBhcmNoaXZlPSAlamQgYnl0ZXMuXG4iCittc2dzdHIgIiIKKyIg4Kio4Ki14Ki+4KiCIOCooeCph+CorOCpgOCoheCoqCDgqKrgqYjgqJXgqYfgqJwsIOCoteCosOConOCoqCAlc+ClpFxuIgorIiDgqIbgqJXgqL7gqLAgJWxkIOCorOCovuCoiOConzog4KiV4Kmw4Kif4Kiw4KmL4KiyIOCoheCosOCovuComuCpgOCotTogJXppIOCorOCovuCoiOCon+ClpFxuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjMyCittc2dpZCAiYXJjaGl2ZSBjb250cm9sIG1lbWJlciBzaXplIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyMzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiYXJjaGl2ZSBoYXMgbWFsZm9ybWF0dGVkIGNvbnRyb2wgbWVtYmVyIHNpemUgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjQyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjb250cm9sIGFyZWEiCittc2dpZCAic2tpcHBlZCBhcmNoaXZlIGNvbnRyb2wgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ3N0ciAi4KiV4Kmw4Kif4Kiw4KmL4KiyIOCoj+CosOCpgOCohiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI0NgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiBuZXcgZGViaWFuIHBhY2thZ2UsIHZlcnNpb24gJXMuXG4iCisjfCAiIHNpemUgJWxkIGJ5dGVzOiBjb250cm9sIGFyY2hpdmU9ICV6aSBieXRlcy5cbiIKK21zZ2lkICIiCisiIG9sZCBkZWJpYW4gcGFja2FnZSwgdmVyc2lvbiAlcy5cbiIKKyIgc2l6ZSAlamQgYnl0ZXM6IGNvbnRyb2wgYXJjaGl2ZT0gJWpkLCBtYWluIGFyY2hpdmU9ICVqZC5cbiIKK21zZ3N0ciAiIgorIiDgqKjgqLXgqL7gqIIg4Kih4KmH4Kis4KmA4KiF4KioIOCoquCpiOColeCph+ConCwg4Ki14Kiw4Kic4KioICVz4KWkXG4iCisiIOCohuColeCovuCosCAlbGQg4Kis4Ki+4KiI4KifOiDgqJXgqbDgqJ/gqLDgqYvgqLIg4KiF4Kiw4Ki+4Kia4KmA4Ki1OiAlemkg4Kis4Ki+4KiI4Kif4KWkXG4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2ctZGViOiBmaWxlIGxvb2tzIGxpa2UgaXQgbWlnaHQgYmUgYW4gYXJjaGl2ZSB3aGljaCBoYXMgYmVlblxuIgorImRwa2ctZGViOiAgICBjb3JydXB0ZWQgYnkgYmVpbmcgZG93bmxvYWRlZCBpbiBBU0NJSSBtb2RlXG4iCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI1OQorIywgYy1mb3JtYXQKK21zZ2lkICJgJS4yNTVzJyBpcyBub3QgYSBkZWJpYW4gZm9ybWF0IGFyY2hpdmUiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI2NgorbXNnaWQgImZhaWxlZCB0byB3cml0ZSB0byBwaXBlIGluIGNvcHkiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI2OAorbXNnaWQgImZhaWxlZCB0byBjbG9zZSBwaXBlIGluIGNvcHkiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI4NAorbXNnaWQgImRhdGEiCittc2dzdHIgIuCooeCovuCon+CoviIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMwNworbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byBkaXJlY3RvcnkiCittc2dzdHIgIuCooeCovuCoh+CosOCpiOColeCon+CosOCpgCDgqKzgqKbgqLLgqKMg4Kiy4KiIIOCoq+Cph+CosuCpjeCouSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMxMAorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgZGlyZWN0b3J5IgorbXNnc3RyICLgqKHgqL7gqIfgqLDgqYjgqJXgqJ/gqLDgqYAg4Kis4Kij4Ki+4KiJ4KijIOCosuCoiCDgqKvgqYfgqLLgqY3gqLkiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozMTIKK21zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gZGlyZWN0b3J5IGFmdGVyIGNyZWF0aW5nIGl0IgorbXNnc3RyICLgqKHgqL7gqIfgqLDgqYjgqJXgqJ/gqLDgqYAg4Kis4Kij4Ki+4KiJ4KijIOCorOCovuCoheCopiDgqIfgqLggJ+ComiDgqJzgqL7gqKMg4Kiy4KiIIOCoq+Cph+CosuCpjeCouSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMyMworIywgZnV6enkKK21zZ2lkICI8ZGVjb21wcmVzcz4iCittc2dzdHIgIiVzOiDgqKHgqYDgqJXgqKrgqY3gqLDgqYjgqLjgqLzgqKgiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozMjUKKyMsIGZ1enp5Cittc2dpZCAicGFzdGUiCittc2dzdHIgIuCoquCovuCouCDgqLngqYvgqIfgqIZcbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjM0MiBkcGtnLWRlYi9leHRyYWN0LmM6MzYzIGRwa2ctZGViL2V4dHJhY3QuYzo0MDIKKyM6IGRwa2ctZGViL2luZm8uYzo3NworIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGEgLmRlYiBmaWxlbmFtZSBhcmd1bWVudCIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzQ3IGRwa2ctZGViL2V4dHJhY3QuYzo0MDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIi0tJXMgbmVlZHMgYSB0YXJnZXQgZGlyZWN0b3J5LlxuIgorIlBlcmhhcHMgeW91IHNob3VsZCBiZSB1c2luZyBkcGtnIC0taW5zdGFsbCA/IgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozNTAgZHBrZy1kZWIvZXh0cmFjdC5jOjQxMAorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIHRha2VzIGF0IG1vc3QgdHdvIGFyZ3VtZW50cyAoLmRlYiBhbmQgZGlyZWN0b3J5KSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzY1CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgb25seSBvbmUgYXJndW1lbnQgKC5kZWIgZmlsZW5hbWUpIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2luZm8uYzo2MworbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byBgLycgZm9yIGNsZWFudXAiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvaW5mby5jOjEwNgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHJlYWQgJXM6ICVzIgorbXNnaWQgImNvbnRyb2wgZmlsZSAnJXMnIgorbXNnc3RyICIlcyDgqKrgqZzgqY3gqLngqKgg4Kiy4KiIIOCoheCouOCoq+CovOCosjogJXMiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZy1kZWI6IGAlLjI1NXMnIGNvbnRhaW5zIG5vIGNvbnRyb2wgY29tcG9uZW50IGAlLjI1NXMnXG4iCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvaW5mby5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICJvcGVuIGNvbXBvbmVudCBgJS4yNTVzJyAoaW4gJS4yNTVzKSBmYWlsZWQgaW4gYW4gdW5leHBlY3RlZCB3YXkiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvaW5mby5jOjEyMQorIywgYy1mb3JtYXQKK21zZ2lkICIlZCByZXF1ZXN0ZWQgY29udHJvbCBjb21wb25lbnQgaXMgbWlzc2luZyIKK21zZ2lkX3BsdXJhbCAiJWQgcmVxdWVzdGVkIGNvbnRyb2wgY29tcG9uZW50cyBhcmUgbWlzc2luZyIKK21zZ3N0clswXSAiIgorbXNnc3RyWzFdICIiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMzkgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQyNAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc2NhbiBkaXJlY3RvcnkgYCUuMjU1cyciCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvaW5mby5jOjE0OAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc3RhdCBgJS4yNTVzJyAoaW4gYCUuMjU1cycpIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IG9wZW4gYCUuMjU1cycgKGluIGAlLjI1NXMnKSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTY3IGRwa2ctZGViL2luZm8uYzoxODUgZHBrZy1kZWIvaW5mby5jOjE5OQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCBgJS4yNTVzJyAoaW4gYCUuMjU1cycpIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxNzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiAlN2xkIGJ5dGVzLCAlNWQgbGluZXMgICAlYyAgJS0yMC4xMjdzICUuMTI3c1xuIgorbXNnaWQgIiAlN2pkIGJ5dGVzLCAlNWQgbGluZXMgICAlYyAgJS0yMC4xMjdzICUuMTI3c1xuIgorbXNnc3RyICIgJTdsZCBieXRlcywgJTVkIGxpbmVzICAgJWMgICUtMjAuMTI3cyAlLjEyN3NcbiIKKworIzogZHBrZy1kZWIvaW5mby5jOjE3NAorIywgYy1mb3JtYXQKK21zZ2lkICIgICAgIG5vdCBhIHBsYWluIGZpbGUgICAgICAgICAgJS4yNTVzXG4iCittc2dzdHIgIiAgICAgbm90IGEgcGxhaW4gZmlsZSAgICAgICAgICAlLjI1NXNcbiIKKworIzogZHBrZy1kZWIvaW5mby5jOjE4NgorbXNnaWQgIihubyBgY29udHJvbCcgZmlsZSBpbiBjb250cm9sIGFyY2hpdmUhKVxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2luZm8uYzoyMjIKK21zZ2lkICJjb3VsZCBub3Qgb3BlbiB0aGUgYGNvbnRyb2wnIGNvbXBvbmVudCIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MjYxCittc2dpZCAiZmFpbGVkIGR1cmluZyByZWFkIG9mIGBjb250cm9sJyBjb21wb25lbnQiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvaW5mby5jOjI2MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyB0aGUgJyVzJyBjb21wb25lbnQiCittc2dzdHIgIiUuMjUwcyDgqKzgqbDgqKYg4KiV4Kiw4KioICfgqJog4KiX4Kiy4Kik4KmAIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6Mjc4Cittc2dpZCAiRXJyb3IgaW4gZm9ybWF0IgorbXNnc3RyICLgqKvgqL7gqLDgqK7gqYjgqJ8gJ+ComiDgqJfgqLLgqKTgqYAiCisKKyM6IGRwa2ctZGViL2luZm8uYzozMjgKK21zZ2lkICItLWNvbnRlbnRzIHRha2VzIGV4YWN0bHkgb25lIGFyZ3VtZW50IgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL21haW4uYzo1NAorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIGFyY2hpdmUgYmFja2VuZCB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL21haW4uYzo3MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIkNvbW1hbmRzOlxuIgorI3wgIiAgLWJ8LS1idWlsZCA8ZGlyZWN0b3J5PiBbPGRlYj5dICAgQnVpbGQgYW4gYXJjaGl2ZS5cbiIKKyN8ICIgIC1jfC0tY29udGVudHMgPGRlYj4gICAgICAgICAgICAgIExpc3QgY29udGVudHMuXG4iCisjfCAiICAtSXwtLWluZm8gPGRlYj4gWzxjZmlsZT4gLi4uXSAgICBTaG93IGluZm8gdG8gc3Rkb3V0LlxuIgorI3wgIiAgLVd8LS1zaG93IDxkZWI+ICAgICAgICAgICAgICAgICAgU2hvdyBpbmZvcm1hdGlvbiBvbiBwYWNrYWdlKHMpXG4iCisjfCAiICAtZnwtLWZpZWxkIDxkZWI+IFs8Y2ZpZWxkPiAuLi5dICBTaG93IGZpZWxkKHMpIHRvIHN0ZG91dC5cbiIKKyN8ICIgIC1lfC0tY29udHJvbCA8ZGViPiBbPGRpcmVjdG9yeT5dIEV4dHJhY3QgY29udHJvbCBpbmZvLlxuIgorI3wgIiAgLXh8LS1leHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+ICAgRXh0cmFjdCBmaWxlcy5cbiIKKyN8ICIgIC1YfC0tdmV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gIEV4dHJhY3QgJiBsaXN0IGZpbGVzLlxuIgorI3wgIiAgLS1mc3lzLXRhcmZpbGUgPGRlYj4gICAgICAgICAgICAgT3V0cHV0IGZpbGVzeXN0ZW0gdGFyZmlsZS5cbiIKKyN8ICJcbiIKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtYnwtLWJ1aWxkIDxkaXJlY3Rvcnk+IFs8ZGViPl0gICBCdWlsZCBhbiBhcmNoaXZlLlxuIgorIiAgLWN8LS1jb250ZW50cyA8ZGViPiAgICAgICAgICAgICAgTGlzdCBjb250ZW50cy5cbiIKKyIgIC1JfC0taW5mbyA8ZGViPiBbPGNmaWxlPiAuLi5dICAgIFNob3cgaW5mbyB0byBzdGRvdXQuXG4iCisiICAtV3wtLXNob3cgPGRlYj4gICAgICAgICAgICAgICAgICBTaG93IGluZm9ybWF0aW9uIG9uIHBhY2thZ2UocylcbiIKKyIgIC1mfC0tZmllbGQgPGRlYj4gWzxjZmllbGQ+IC4uLl0gIFNob3cgZmllbGQocykgdG8gc3Rkb3V0LlxuIgorIiAgLWV8LS1jb250cm9sIDxkZWI+IFs8ZGlyZWN0b3J5Pl0gRXh0cmFjdCBjb250cm9sIGluZm8uXG4iCisiICAteHwtLWV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gICBFeHRyYWN0IGZpbGVzLlxuIgorIiAgLVh8LS12ZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PiAgRXh0cmFjdCAmIGxpc3QgZmlsZXMuXG4iCisiICAtUnwtLXJhdy1leHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFeHRyYWN0IGNvbnRyb2wgaW5mbyBhbmQgZmlsZXMuXG4iCisiICAtLWZzeXMtdGFyZmlsZSA8ZGViPiAgICAgICAgICAgICBPdXRwdXQgZmlsZXN5c3RlbSB0YXJmaWxlLlxuIgorIlxuIgorbXNnc3RyICIiCisiQ29tbWFuZHM6XG4iCisiICAtYnwtLWJ1aWxkIDxkaXJlY3Rvcnk+IFs8ZGViPl0gICBCdWlsZCBhbiBhcmNoaXZlLlxuIgorIiAgLWN8LS1jb250ZW50cyA8ZGViPiAgICAgICAgICAgICAgTGlzdCBjb250ZW50cy5cbiIKKyIgIC1JfC0taW5mbyA8ZGViPiBbPGNmaWxlPiAuLi5dICAgIFNob3cgaW5mbyB0byBzdGRvdXQuXG4iCisiICAtV3wtLXNob3cgPGRlYj4gICAgICAgICAgICAgICAgICBTaG93IGluZm9ybWF0aW9uIG9uIHBhY2thZ2UocylcbiIKKyIgIC1mfC0tZmllbGQgPGRlYj4gWzxjZmllbGQ+IC4uLl0gIFNob3cgZmllbGQocykgdG8gc3Rkb3V0LlxuIgorIiAgLWV8LS1jb250cm9sIDxkZWI+IFs8ZGlyZWN0b3J5Pl0gRXh0cmFjdCBjb250cm9sIGluZm8uXG4iCisiICAteHwtLWV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gICBFeHRyYWN0IGZpbGVzLlxuIgorIiAgLVh8LS12ZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PiAgRXh0cmFjdCAmIGxpc3QgZmlsZXMuXG4iCisiICAtLWZzeXMtdGFyZmlsZSA8ZGViPiAgICAgICAgICAgICBPdXRwdXQgZmlsZXN5c3RlbSB0YXJmaWxlLlxuIgorIlxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6OTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIjxkZWI+IGlzIHRoZSBmaWxlbmFtZSBvZiBhIERlYmlhbiBmb3JtYXQgYXJjaGl2ZS5cbiIKKyI8Y2ZpbGU+IGlzIHRoZSBuYW1lIG9mIGFuIGFkbWluaXN0cmF0aXZlIGZpbGUgY29tcG9uZW50LlxuIgorIjxjZmllbGQ+IGlzIHRoZSBuYW1lIG9mIGEgZmllbGQgaW4gdGhlIG1haW4gYGNvbnRyb2wnIGZpbGUuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjk5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tc2hvd2Zvcm1hdD08Zm9ybWF0PiAgICAgICAgICAgIFVzZSBhbHRlcm5hdGl2ZSBmb3JtYXQgZm9yIC0tc2hvdy5cbiIKKyIgIC12LCAtLXZlcmJvc2UgICAgICAgICAgICAgICAgICAgIEVuYWJsZSB2ZXJib3NlIG91dHB1dC5cbiIKKyIgIC1EICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVuYWJsZSBkZWJ1Z2dpbmcgb3V0cHV0LlxuIgorIiAgLS1vbGQsIC0tbmV3ICAgICAgICAgICAgICAgICAgICAgU2VsZWN0IGFyY2hpdmUgZm9ybWF0LlxuIgorIiAgLS1ub2NoZWNrICAgICAgICAgICAgICAgICAgICAgICAgU3VwcHJlc3MgY29udHJvbCBmaWxlIGNoZWNrIChidWlsZCBiYWRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFja2FnZXMpLlxuIgorIiAgLXojICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU2V0IHRoZSBjb21wcmVzc2lvbiBsZXZlbCB3aGVuIGJ1aWxkaW5nLlxuIgorIiAgLVo8dHlwZT4gICAgICAgICAgICAgICAgICAgICAgICAgU2V0IHRoZSBjb21wcmVzc2lvbiB0eXBlIHVzZWQgd2hlbiAiCisiYnVpbGRpbmcuXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFsbG93ZWQgdHlwZXM6IGd6aXAsIHh6LCBiemlwMiwgbHptYSwgIgorIm5vbmUuXG4iCisiXG4iCittc2dzdHIgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1zaG93Zm9ybWF0PTxmb3JtYXQ+ICAgICAgICAgICAgVXNlIGFsdGVybmF0aXZlIGZvcm1hdCBmb3IgLS1zaG93LlxuIgorIiAgLUQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRW5hYmxlIGRlYnVnZ2luZyBvdXRwdXQuXG4iCisiICAtLW9sZCwgLS1uZXcgICAgICAgICAgICAgICAgICAgICBTZWxlY3QgYXJjaGl2ZSBmb3JtYXQuXG4iCisiICAtLW5vY2hlY2sgICAgICAgICAgICAgICAgICAgICAgICBTdXBwcmVzcyBjb250cm9sIGZpbGUgY2hlY2sgKGJ1aWxkIGJhZFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWNrYWdlcykuXG4iCisiICAteiMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTZXQgdGhlIGNvbXByZXNzaW9uIGxldmVsIHdoZW4gYnVpbGRpbmcuXG4iCisiICAtWjx0eXBlPiAgICAgICAgICAgICAgICAgICAgICAgICBTZXQgdGhlIGNvbXByZXNzaW9uIHR5cGUgdXNlZCB3aGVuICIKKyJidWlsZGluZy5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWxsb3dlZCB2YWx1ZXM6IGd6aXAsIGJ6aXAyLCBub25lLlxuIgorIlxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTIxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJVc2UgYGRwa2cnIHRvIGluc3RhbGwgYW5kIHJlbW92ZSBwYWNrYWdlcyBmcm9tIHlvdXIgc3lzdGVtLCBvclxuIgorImBkc2VsZWN0JyBvciBgYXB0aXR1ZGUnIGZvciB1c2VyLWZyaWVuZGx5IHBhY2thZ2UgbWFuYWdlbWVudC4gIFBhY2thZ2VzXG4iCisidW5wYWNrZWQgdXNpbmcgYGRwa2ctZGViIC0tZXh0cmFjdCcgd2lsbCBiZSBpbmNvcnJlY3RseSBpbnN0YWxsZWQgIVxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL21haW4uYzoxMzIKK21zZ2lkICIiCisiVHlwZSBkcGtnLWRlYiAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgbWFuaXB1bGF0aW5nICouZGViIGZpbGVzO1xuIgorIlR5cGUgZHBrZyAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgaW5zdGFsbGluZyBhbmQgZGVpbnN0YWxsaW5nIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTQ4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGludGVnZXIgZm9yIC0lYzogJyUuMjUwcyciCittc2dzdHIgIuCol+CosuCopCDgqKrgqYjgqJXgqYfgqJwg4Kio4Ki+4KiCICglLjI1MHMpIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTUxCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgY29tcHJlc3Npb24gbGV2ZWwgZm9yIC0lYzogJWxkJyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTYxCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gY29tcHJlc3Npb24gdHlwZSBgJXMnISIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzo1MgorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgZGlnaXQgKGNvZGUgJWQpIGluICVzIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjYwCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtICUuMjUwcyBtaXNzaW5nIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjYzCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIG1pc3NpbmcgbmV3bGluZSBhZnRlciAlLjI1MHMiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6ODkgZHBrZy1zcGxpdC9tYWluLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHJlYWRpbmcgJS4yNTBzIgorbXNnc3RyICIlLjI1MHMg4Kiq4Kmc4KmN4Ki54KioIOCopuCpjOCosOCovuCoqCDgqJfgqLLgqKTgqYAiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEwMworIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgbWFnaWMgYXQgZW5kIG9mIGZpcnN0IGhlYWRlciIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIHBhZGRpbmcgY2hhcmFjdGVyIChjb2RlICVkKSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gbnVsbHMgaW4gaW5mbyBzZWN0aW9uIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyMgorIywgZnV6enkKK21zZ2lkICJmb3JtYXQgdmVyc2lvbiBudW1iZXIiCittc2dzdHIgIuCoteCosOConOCoqCDgqKjgqbDgqKzgqLAiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGZvcm1hdCB2ZXJzaW9uIGAlLjI1MHMnIC0geW91IG5lZWQgYSBuZXdlciBkcGtnLXNwbGl0IgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyNworIywgZnV6enkKK21zZ2lkICJwYWNrYWdlIG5hbWUiCittc2dzdHIgIiAo4Kiq4KmI4KiV4KmH4KicOiAiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyOAorIywgZnV6enkKK21zZ2lkICJwYWNrYWdlIHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICLgqLXgqLDgqJzgqKgg4Kio4Kmw4Kis4KiwIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMjkKK21zZ2lkICJwYWNrYWdlIGZpbGUgTUQ1IGNoZWNrc3VtIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEzMgorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgTUQ1IGNoZWNrc3VtIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEzNCBkcGtnLXNwbGl0L2luZm8uYzoxMzUKK21zZ2lkICJhcmNoaXZlIHRvdGFsIHNpemUiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTM2IGRwa2ctc3BsaXQvaW5mby5jOjEzNworbXNnaWQgImFyY2hpdmUgcGFydCBvZmZzZXQiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTM5CisjLCBmdXp6eQorbXNnaWQgImFyY2hpdmUgcGFydCBudW1iZXJzIgorbXNnc3RyICLgqLXgqLDgqJzgqKgg4Kio4Kmw4Kis4KiwIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gbm8gc2xhc2ggYmV0d2VlbiBhcmNoaXZlIHBhcnQgbnVtYmVycyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDUKK21zZ2lkICJudW1iZXIgb2YgYXJjaGl2ZSBwYXJ0cyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIG51bWJlciBvZiBhcmNoaXZlIHBhcnRzIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE0OQorIywgZnV6enkKK21zZ2lkICJhcmNoaXZlIHBhcnRzIG51bWJlciIKK21zZ3N0ciAi4Ki14Kiw4Kic4KioIOCoqOCpsOCorOCosCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTUxCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBhcmNoaXZlIHBhcnQgbnVtYmVyIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE1NworIywgZnV6enkKK21zZ2lkICJwYWNrYWdlIGFyY2hpdGVjdHVyZSIKK21zZ3N0ciAiICjgqKrgqYjgqJXgqYfgqJw6ICIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTY2CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBtYWdpYyBhdCBlbmQgb2Ygc2Vjb25kIGhlYWRlciIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gc2Vjb25kIG1lbWJlciBpcyBub3QgZGF0YSBtZW1iZXIiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTc0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIHdyb25nIG51bWJlciBvZiBwYXJ0cyBmb3IgcXVvdGVkIHNpemVzIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE3OAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBzaXplIGlzIHdyb25nIGZvciBxdW90ZWQgcGFydCBudW1iZXIiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTg0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmc3RhdCBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTg5CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIHRvbyBzaG9ydCIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyMDIgZHBrZy1zcGxpdC9pbmZvLmM6MjQ5CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBvcGVuIGFyY2hpdmUgcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjIwNAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIG5vdCBhbiBhcmNoaXZlIHBhcnQiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjA5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiJXM6XG4iCisjfCAiICAgIFBhcnQgZm9ybWF0IHZlcnNpb246ICAgICAgICAgICAgJXNcbiIKKyN8ICIgICAgUGFydCBvZiBwYWNrYWdlOiAgICAgICAgICAgICAgICAlc1xuIgorI3wgIiAgICAgICAgLi4uIHZlcnNpb246ICAgICAgICAgICAgICAgICVzXG4iCisjfCAiICAgICAgICAuLi4gTUQ1IGNoZWNrc3VtOiAgICAgICAgICAgJXNcbiIKKyN8ICIgICAgICAgIC4uLiBsZW5ndGg6ICAgICAgICAgICAgICAgICAlbHUgYnl0ZXNcbiIKKyN8ICIgICAgICAgIC4uLiBzcGxpdCBldmVyeTogICAgICAgICAgICAlbHUgYnl0ZXNcbiIKKyN8ICIgICAgUGFydCBudW1iZXI6ICAgICAgICAgICAgICAgICAgICAlZC8lZFxuIgorI3wgIiAgICBQYXJ0IGxlbmd0aDogICAgICAgICAgICAgICAgICAgICV6aSBieXRlc1xuIgorI3wgIiAgICBQYXJ0IG9mZnNldDogICAgICAgICAgICAgICAgICAgICVsdSBieXRlc1xuIgorI3wgIiAgICBQYXJ0IGZpbGUgc2l6ZSAodXNlZCBwb3J0aW9uKTogICVsdSBieXRlc1xuIgorI3wgIlxuIgorbXNnaWQgIiIKKyIlczpcbiIKKyIgICAgUGFydCBmb3JtYXQgdmVyc2lvbjogICAgICAgICAgICAlc1xuIgorIiAgICBQYXJ0IG9mIHBhY2thZ2U6ICAgICAgICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gdmVyc2lvbjogICAgICAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiBhcmNoaXRlY3R1cmU6ICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIE1ENSBjaGVja3N1bTogICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gbGVuZ3RoOiAgICAgICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgICAgICAuLi4gc3BsaXQgZXZlcnk6ICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgIFBhcnQgbnVtYmVyOiAgICAgICAgICAgICAgICAgICAgJWQvJWRcbiIKKyIgICAgUGFydCBsZW5ndGg6ICAgICAgICAgICAgICAgICAgICAlamQgYnl0ZXNcbiIKKyIgICAgUGFydCBvZmZzZXQ6ICAgICAgICAgICAgICAgICAgICAlamQgYnl0ZXNcbiIKKyIgICAgUGFydCBmaWxlIHNpemUgKHVzZWQgcG9ydGlvbik6ICAlamQgYnl0ZXNcbiIKKyJcbiIKK21zZ3N0ciAiIgorIiVzOlxuIgorIiAgICBQYXJ0IGZvcm1hdCB2ZXJzaW9uOiAgICAgICAgICAgICVzXG4iCisiICAgIFBhcnQgb2YgcGFja2FnZTogICAgICAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiB2ZXJzaW9uOiAgICAgICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIE1ENSBjaGVja3N1bTogICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gbGVuZ3RoOiAgICAgICAgICAgICAgICAgJWx1IGJ5dGVzXG4iCisiICAgICAgICAuLi4gc3BsaXQgZXZlcnk6ICAgICAgICAgICAgJWx1IGJ5dGVzXG4iCisiICAgIFBhcnQgbnVtYmVyOiAgICAgICAgICAgICAgICAgICAgJWQvJWRcbiIKKyIgICAgUGFydCBsZW5ndGg6ICAgICAgICAgICAgICAgICAgICAlemkgYnl0ZXNcbiIKKyIgICAgUGFydCBvZmZzZXQ6ICAgICAgICAgICAgICAgICAgICAlbHUgYnl0ZXNcbiIKKyIgICAgUGFydCBmaWxlIHNpemUgKHVzZWQgcG9ydGlvbik6ICAlbHUgYnl0ZXNcbiIKKyJcbiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjI1CisjLCBmdXp6eQorI3wgbXNnaWQgIjx1bmtub3duPiIKK21zZ2N0eHQgImFyY2hpdGVjdHVyZSIKK21zZ2lkICI8dW5rbm93bj4iCittc2dzdHIgIjx1bmtub3duPiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjQ0IGRwa2ctc3BsaXQvam9pbi5jOjEwNQorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIHJlcXVpcmVzIG9uZSBvciBtb3JlIHBhcnQgZmlsZSBhcmd1bWVudHMiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjU1CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCVzJyBpcyBub3QgYW4gYXJjaGl2ZSBwYXJ0XG4iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHV0dGluZyBwYWNrYWdlICVzIHRvZ2V0aGVyIGZyb20gJWQgcGFydDogIgorbXNnaWRfcGx1cmFsICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0czogIgorbXNnc3RyWzBdICIiCittc2dzdHJbMV0gIiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gb3V0cHV0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIChyZSlvcGVuIGlucHV0IHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1OAorbXNnaWQgInNraXBwaW5nIHNwbGl0IHBhY2thZ2UgaGVhZGVyIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjU5CisjLCBmdXp6eQorI3wgbXNnaWQgIm1pc3NpbmcgcGFja2FnZSIKK21zZ2lkICJzcGxpdCBwYWNrYWdlIHBhcnQiCittc2dzdHIgIuCol+CpgeCpsOCoriDgqKrgqYjgqJXgqYfgqJwiCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjY5IGRwa2ctc3BsaXQvc3BsaXQuYzoyMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZG9uZVxuIgorbXNnc3RyICLgqK7gqYHgqJXgqbDgqK7gqLJcbiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZXMgYCUuMjUwcycgYW5kIGAlLjI1MHMnIGFyZSBub3QgcGFydHMgb2YgdGhlIHNhbWUgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo5MAorIywgYy1mb3JtYXQKK21zZ2lkICJ0aGVyZSBhcmUgc2V2ZXJhbCB2ZXJzaW9ucyBvZiBwYXJ0ICVkIC0gYXQgbGVhc3QgYCUuMjUwcycgYW5kIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjEyOAorIywgYy1mb3JtYXQKK21zZ2lkICJwYXJ0ICVkIGlzIG1pc3NpbmciCittc2dzdHIgIiVkIOCoreCovuColyDgqJfgqYHgqbDgqK4g4Ki54KmIIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo0NworIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIHNwbGl0L2pvaW4gdG9vbDsgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo0OQorIywgYy1mb3JtYXQKK21zZ2lkICJDb3B5cmlnaHQgKEMpIDE5OTQtMTk5NiBJYW4gSmFja3Nvbi5cbiIKK21zZ3N0ciAiQ29weXJpZ2h0IChDKSAxOTk0LTE5OTYgSWFuIEphY2tzb24uXG4iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjY3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1zfC0tc3BsaXQgPGZpbGU+IFs8cHJlZml4Pl0gICAgIFNwbGl0IGFuIGFyY2hpdmUuXG4iCisiICAtanwtLWpvaW4gPHBhcnQ+IDxwYXJ0PiAuLi4gICAgICBKb2luIHBhcnRzIHRvZ2V0aGVyLlxuIgorIiAgLUl8LS1pbmZvIDxwYXJ0PiAuLi4gICAgICAgICAgICAgRGlzcGxheSBpbmZvIGFib3V0IGEgcGFydC5cbiIKKyIgIC1hfC0tYXV0byAtbyA8Y29tcGxldGU+IDxwYXJ0PiAgIEF1dG8tYWNjdW11bGF0ZSBwYXJ0cy5cbiIKKyIgIC1sfC0tbGlzdHEgICAgICAgICAgICAgICAgICAgICAgIExpc3QgdW5tYXRjaGVkIHBpZWNlcy5cbiIKKyIgIC1kfC0tZGlzY2FyZCBbPGZpbGVuYW1lPiAuLi5dICAgIERpc2NhcmQgdW5tYXRjaGVkIHBpZWNlcy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIkNvbW1hbmRzOlxuIgorIiAgLXN8LS1zcGxpdCA8ZmlsZT4gWzxwcmVmaXg+XSAgICAgU3BsaXQgYW4gYXJjaGl2ZS5cbiIKKyIgIC1qfC0tam9pbiA8cGFydD4gPHBhcnQ+IC4uLiAgICAgIEpvaW4gcGFydHMgdG9nZXRoZXIuXG4iCisiICAtSXwtLWluZm8gPHBhcnQ+IC4uLiAgICAgICAgICAgICBEaXNwbGF5IGluZm8gYWJvdXQgYSBwYXJ0LlxuIgorIiAgLWF8LS1hdXRvIC1vIDxjb21wbGV0ZT4gPHBhcnQ+ICAgQXV0by1hY2N1bXVsYXRlIHBhcnRzLlxuIgorIiAgLWx8LS1saXN0cSAgICAgICAgICAgICAgICAgICAgICAgTGlzdCB1bm1hdGNoZWQgcGllY2VzLlxuIgorIiAgLWR8LS1kaXNjYXJkIFs8ZmlsZW5hbWU+IC4uLl0gICAgRGlzY2FyZCB1bm1hdGNoZWQgcGllY2VzLlxuIgorIlxuIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo4MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIk9wdGlvbnM6XG4iCisjfCAiICAtLWRlcG90ZGlyIDxkaXJlY3Rvcnk+ICAgICAgICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy8lcy5cbiIKKyN8ICIgIC1TfC0tcGFydHNpemUgPHNpemU+ICAgICAgICAgICAgIEluIEtpQiwgZm9yIC1zIChkZWZhdWx0IGlzIDQ1MCkuXG4iCisjfCAiICAtb3wtLW91dHB1dCA8ZmlsZT4gICAgICAgICAgICAgICBGb3IgLWogKGRlZmF1bHQgaXMgPHBhY2thZ2U+LTx2ZXJzaW9uPi4iCisjfCAiZGViKS5cbiIKKyN8ICIgIC1RfC0tbnBxdWlldCAgICAgICAgICAgICAgICAgICAgIEJlIHF1aWV0IHdoZW4gLWEgaXMgbm90IGEgcGFydC5cbiIKKyN8ICIgIC0tbXNkb3MgICAgICAgICAgICAgICAgICAgICAgICAgIEdlbmVyYXRlIDguMyBmaWxlbmFtZXMuXG4iCisjfCAiXG4iCisjfCAiRXhpdCBzdGF0dXM6IDAgPSBPSzsgIDEgPSAtYSBpcyBub3QgYSBwYXJ0OyAgMiA9IHRyb3VibGUhXG4iCittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWRlcG90ZGlyIDxkaXJlY3Rvcnk+ICAgICAgICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy8lcy5cbiIKKyIgIC1TfC0tcGFydHNpemUgPHNpemU+ICAgICAgICAgICAgIEluIEtpQiwgZm9yIC1zIChkZWZhdWx0IGlzIDQ1MCkuXG4iCisiICAtb3wtLW91dHB1dCA8ZmlsZT4gICAgICAgICAgICAgICBGaWxlbmFtZSwgZm9yIC1qIChkZWZhdWx0IGlzXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYWNrYWdlPl88dmVyc2lvbj5fPGFyY2g+LmRlYikuXG4iCisiICAtUXwtLW5wcXVpZXQgICAgICAgICAgICAgICAgICAgICBCZSBxdWlldCB3aGVuIC1hIGlzIG5vdCBhIHBhcnQuXG4iCisiICAtLW1zZG9zICAgICAgICAgICAgICAgICAgICAgICAgICBHZW5lcmF0ZSA4LjMgZmlsZW5hbWVzLlxuIgorIlxuIgorbXNnc3RyICIiCisiT3B0aW9uczpcbiIKKyIgIC0tZGVwb3RkaXIgPGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLyVzLlxuIgorIiAgLVN8LS1wYXJ0c2l6ZSA8c2l6ZT4gICAgICAgICAgICAgSW4gS2lCLCBmb3IgLXMgKGRlZmF1bHQgaXMgNDUwKS5cbiIKKyIgIC1vfC0tb3V0cHV0IDxmaWxlPiAgICAgICAgICAgICAgIEZvciAtaiAoZGVmYXVsdCBpcyA8cGFja2FnZT4tPHZlcnNpb24+LiIKKyJkZWIpLlxuIgorIiAgLVF8LS1ucHF1aWV0ICAgICAgICAgICAgICAgICAgICAgQmUgcXVpZXQgd2hlbiAtYSBpcyBub3QgYSBwYXJ0LlxuIgorIiAgLS1tc2RvcyAgICAgICAgICAgICAgICAgICAgICAgICAgR2VuZXJhdGUgOC4zIGZpbGVuYW1lcy5cbiIKKyJcbiIKKyJFeGl0IHN0YXR1czogMCA9IE9LOyAgMSA9IC1hIGlzIG5vdCBhIHBhcnQ7ICAyID0gdHJvdWJsZSFcbiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6OTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkV4aXQgc3RhdHVzOlxuIgorIiAgMCA9IG9rXG4iCisiICAxID0gd2l0aCAtLWF1dG8sIGZpbGUgaXMgbm90IGEgcGFydFxuIgorIiAgMiA9IHRyb3VibGVcbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMDMKK21zZ2lkICJUeXBlIGRwa2ctc3BsaXQgLS1oZWxwIGZvciBoZWxwLiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgZmlsZSBpbiAlLjI1MHMiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6MTI2Cittc2dpZCAicGFydCBzaXplIGlzIGZhciB0b28gbGFyZ2Ugb3IgaXMgbm90IHBvc2l0aXZlIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjEzMAorIywgYy1mb3JtYXQKK21zZ2lkICJwYXJ0IHNpemUgbXVzdCBiZSBhdCBsZWFzdCAlZCBLaUIgKHRvIGFsbG93IGZvciBoZWFkZXIpIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzo5MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBkZXBvdCBkaXJlY3RvcnkgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjEzNAorbXNnaWQgIi0tYXV0byByZXF1aXJlcyB0aGUgdXNlIG9mIHRoZSAtLW91dHB1dCBvcHRpb24iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjEzNgorbXNnaWQgIi0tYXV0byByZXF1aXJlcyBleGFjdGx5IG9uZSBwYXJ0IGZpbGUgYXJndW1lbnQiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE0MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE0MworIywgYy1mb3JtYXQKK21zZ2lkICJGaWxlIGAlLjI1MHMnIGlzIG5vdCBwYXJ0IG9mIGEgbXVsdGlwYXJ0IGFyY2hpdmUuXG4iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE3OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVvcGVuIHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTgyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIG5ldyBkZXBvdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxODQKK21zZ2lkICJleHRyYWN0aW5nIHNwbGl0IHBhcnQiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE5MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVuYW1lIG5ldyBkZXBvdCBmaWxlIGAlLjI1MHMnIHRvIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFydCAlZCBvZiBwYWNrYWdlICVzIGZpbGVkIChzdGlsbCB3YW50ICIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjAwCittc2dpZCAiIGFuZCAiCittc2dzdHIgIiDgqIXgqKTgqYcgIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjE0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkZWxldGUgdXNlZC11cCBkZXBvdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyMzUKK21zZ2lkICJKdW5rIGZpbGVzIGxlZnQgYXJvdW5kIGluIHRoZSBkZXBvdCBkaXJlY3Rvcnk6XG4iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI0MCBkcGtnLXNwbGl0L3F1ZXVlLmM6MjY5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNDMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiAlcyAoJWx1IGJ5dGVzKVxuIgorbXNnaWQgIiAlcyAoJWpkIGJ5dGVzKVxuIgorbXNnc3RyICIgJXMgKCVsdSDgqKzgqL7gqIjgqJ8pXG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICVzIChub3QgYSBwbGFpbiBmaWxlKVxuIgorbXNnc3RyICIgJXMgKOCoh+CpseColSDgqLjgqKfgqL7gqLDgqKgg4Kir4Ki+4KiH4KiyIOCoqOCoueCpgOCogilcbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI1MAorbXNnaWQgIlBhY2thZ2VzIG5vdCB5ZXQgcmVhc3NlbWJsZWQ6XG4iCittc2dzdHIgIuCoquCpiOColeCph+ConCDgqLngqL7gqLLgqYcg4Kiu4KmB4KmcLeConOCpi+CpnOCov+CohiDgqKjgqLngqYDgqIIg4KiX4Ki/4KiGOlxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjU4CisjLCBjLWZvcm1hdAorbXNnaWQgIiBQYWNrYWdlICVzOiBwYXJ0KHMpICIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjcxCisjLCBjLWZvcm1hdAorbXNnaWQgInBhcnQgZmlsZSBgJS4yNTBzJyBpcyBub3QgYSBwbGFpbiBmaWxlIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNzgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIih0b3RhbCAlbHUgYnl0ZXMpXG4iCittc2dpZCAiKHRvdGFsICVqZCBieXRlcylcbiIKK21zZ3N0ciAiKOColeCpgeCpseCosiAlbHUg4Kis4Ki+4KiI4KifKVxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MzA0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkaXNjYXJkIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzozMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGVsZXRlZCAlcy5cbiIKK21zZ3N0ciAiJXMg4Ki54Kif4Ki+4KiH4KiG4KWkXG4iCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzo3MCBkcGtnLXNwbGl0L3NwbGl0LmM6NzYgZHBrZy1zcGxpdC9zcGxpdC5jOjgxCittc2dpZCAicGFja2FnZSBmaWVsZCB2YWx1ZSBleHRyYWN0aW9uIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxMzEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gc291cmNlIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjEzMworbXNnaWQgInVuYWJsZSB0byBmc3RhdCBzb3VyY2UgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTM1CisjLCBjLWZvcm1hdAorbXNnaWQgInNvdXJjZSBmaWxlIGAlLjI1MHMnIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjE1MworIywgYy1mb3JtYXQKK21zZ2lkICJTcGxpdHRpbmcgcGFja2FnZSAlcyBpbnRvICVkIHBhcnQ6ICIKK21zZ2lkX3BsdXJhbCAiU3BsaXR0aW5nIHBhY2thZ2UgJXMgaW50byAlZCBwYXJ0czogIgorbXNnc3RyWzBdICIiCittc2dzdHJbMV0gIiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjE5MworbXNnaWQgIiIKKyJIZWFkZXIgaXMgdG9vIGxvbmcsIG1ha2luZyBwYXJ0IHRvbyBsb25nLiBZb3VyIHBhY2thZ2UgbmFtZSBvciB2ZXJzaW9uXG4iCisibnVtYmVycyBtdXN0IGJlIGV4dHJhb3JkaW5hcmlseSBsb25nLCBvciBzb21ldGhpbmcuIEdpdmluZyB1cC5cbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MjQ5Cittc2dpZCAiLS1zcGxpdCBuZWVkcyBhIHNvdXJjZSBmaWxlbmFtZSBhcmd1bWVudCIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MjUyCittc2dpZCAiLS1zcGxpdCB0YWtlcyBhdCBtb3N0IGEgc291cmNlIGZpbGVuYW1lIGFuZCBkZXN0aW5hdGlvbiBwcmVmaXgiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjg0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiXG4iCisjfCAiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorI3wgIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uIgorbXNnaWQgIiIKKyJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLTIwMDIgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDktMjAxMCBSYXBoYWVsIEhlcnR6b2cuXG4iCittc2dzdHIgIiIKKyJcbiIKKyJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMDEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC0taW5zdGFsbCA8bGluaz4gPG5hbWU+IDxwYXRoPiA8cHJpb3JpdHk+XG4iCisiICAgIFstLXNsYXZlIDxsaW5rPiA8bmFtZT4gPHBhdGg+XSAuLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBhZGQgYSBncm91cCBvZiBhbHRlcm5hdGl2ZXMgdG8gdGhlIHN5c3RlbS5cbiIKKyIgIC0tcmVtb3ZlIDxuYW1lPiA8cGF0aD4gICByZW1vdmUgPHBhdGg+IGZyb20gdGhlIDxuYW1lPiBncm91cCBhbHRlcm5hdGl2ZS5cbiIKKyIgIC0tcmVtb3ZlLWFsbCA8bmFtZT4gICAgICByZW1vdmUgPG5hbWU+IGdyb3VwIGZyb20gdGhlIGFsdGVybmF0aXZlcyAiCisic3lzdGVtLlxuIgorIiAgLS1hdXRvIDxuYW1lPiAgICAgICAgICAgIHN3aXRjaCB0aGUgbWFzdGVyIGxpbmsgPG5hbWU+IHRvIGF1dG9tYXRpYyBtb2RlLlxuIgorIiAgLS1kaXNwbGF5IDxuYW1lPiAgICAgICAgIGRpc3BsYXkgaW5mb3JtYXRpb24gYWJvdXQgdGhlIDxuYW1lPiBncm91cC5cbiIKKyIgIC0tcXVlcnkgPG5hbWU+ICAgICAgICAgICBtYWNoaW5lIHBhcnNlYWJsZSB2ZXJzaW9uIG9mIC0tZGlzcGxheSA8bmFtZT4uXG4iCisiICAtLWxpc3QgPG5hbWU+ICAgICAgICAgICAgZGlzcGxheSBhbGwgdGFyZ2V0cyBvZiB0aGUgPG5hbWU+IGdyb3VwLlxuIgorIiAgLS1nZXQtc2VsZWN0aW9ucyAgICAgICAgIGxpc3QgbWFzdGVyIGFsdGVybmF0aXZlIG5hbWVzIGFuZCB0aGVpciBzdGF0dXMuXG4iCisiICAtLXNldC1zZWxlY3Rpb25zICAgICAgICAgcmVhZCBhbHRlcm5hdGl2ZSBzdGF0dXMgZnJvbSBzdGFuZGFyZCBpbnB1dC5cbiIKKyIgIC0tY29uZmlnIDxuYW1lPiAgICAgICAgICBzaG93IGFsdGVybmF0aXZlcyBmb3IgdGhlIDxuYW1lPiBncm91cCBhbmQgYXNrICIKKyJ0aGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2VyIHRvIHNlbGVjdCB3aGljaCBvbmUgdG8gdXNlLlxuIgorIiAgLS1zZXQgPG5hbWU+IDxwYXRoPiAgICAgIHNldCA8cGF0aD4gYXMgYWx0ZXJuYXRpdmUgZm9yIDxuYW1lPi5cbiIKKyIgIC0tYWxsICAgICAgICAgICAgICAgICAgICBjYWxsIC0tY29uZmlnIG9uIGFsbCBhbHRlcm5hdGl2ZXMuXG4iCisiXG4iCittc2dzdHIgIiIKKyJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gPGNvbW1hbmQ+XG4iCisiXG4iCisiQ29tbWFuZHM6XG4iCisiICAtLWluc3RhbGwgPGxpbms+IDxuYW1lPiA8cGF0aD4gPHByaW9yaXR5PlxuIgorIiAgICBbLS1zbGF2ZSA8bGluaz4gPG5hbWU+IDxwYXRoPl0gLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkIGEgZ3JvdXAgb2YgYWx0ZXJuYXRpdmVzIHRvIHRoZSBzeXN0ZW0uXG4iCisiICAtLXJlbW92ZSA8bmFtZT4gPHBhdGg+ICAgcmVtb3ZlIDxwYXRoPiBmcm9tIHRoZSA8bmFtZT4gZ3JvdXAgYWx0ZXJuYXRpdmUuXG4iCisiICAtLXJlbW92ZS1hbGwgPG5hbWU+ICAgICAgcmVtb3ZlIDxuYW1lPiBncm91cCBmcm9tIHRoZSBhbHRlcm5hdGl2ZXMgIgorInN5c3RlbS5cbiIKKyIgIC0tYXV0byA8bmFtZT4gICAgICAgICAgICBzd2l0Y2ggdGhlIG1hc3RlciBsaW5rIDxuYW1lPiB0byBhdXRvbWF0aWMgbW9kZS5cbiIKKyIgIC0tZGlzcGxheSA8bmFtZT4gICAgICAgICBkaXNwbGF5IGluZm9ybWF0aW9uIGFib3V0IHRoZSA8bmFtZT4gZ3JvdXAuXG4iCisiICAtLWxpc3QgPG5hbWU+ICAgICAgICAgICAgZGlzcGxheSBhbGwgdGFyZ2V0cyBvZiB0aGUgPG5hbWU+IGdyb3VwLlxuIgorIiAgLS1jb25maWcgPG5hbWU+ICAgICAgICAgIHNob3cgYWx0ZXJuYXRpdmVzIGZvciB0aGUgPG5hbWU+IGdyb3VwIGFuZCBhc2sgIgorInRoZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzZXIgdG8gc2VsZWN0IHdoaWNoIG9uZSB0byB1c2UuXG4iCisiICAtLXNldCA8bmFtZT4gPHBhdGg+ICAgICAgc2V0IDxwYXRoPiBhcyBhbHRlcm5hdGl2ZSBmb3IgPG5hbWU+LlxuIgorIiAgLS1hbGwgICAgICAgICAgICAgICAgICAgIGNhbGwgLS1jb25maWcgb24gYWxsIGFsdGVybmF0aXZlcy5cbiIKKyJcbiIKKyI8bGluaz4gaXMgdGhlIHN5bWxpbmsgcG9pbnRpbmcgdG8gL2V0Yy9hbHRlcm5hdGl2ZXMvPG5hbWU+LlxuIgorIiAgKGUuZy4gL3Vzci9iaW4vcGFnZXIpXG4iCisiPG5hbWU+IGlzIHRoZSBtYXN0ZXIgbmFtZSBmb3IgdGhpcyBsaW5rIGdyb3VwLlxuIgorIiAgKGUuZy4gcGFnZXIpXG4iCisiPHBhdGg+IGlzIHRoZSBsb2NhdGlvbiBvZiBvbmUgb2YgdGhlIGFsdGVybmF0aXZlIHRhcmdldCBmaWxlcy5cbiIKKyIgIChlLmcuIC91c3IvYmluL2xlc3MpXG4iCisiPHByaW9yaXR5PiBpcyBhbiBpbnRlZ2VyOyBvcHRpb25zIHdpdGggaGlnaGVyIG51bWJlcnMgaGF2ZSBoaWdoZXIgcHJpb3JpdHkgIgorImluXG4iCisiICBhdXRvbWF0aWMgbW9kZS5cbiIKKyJcbiIKKyJPcHRpb25zOlxuIgorIiAgLS1hbHRkaXIgPGRpcmVjdG9yeT4gICAgIGNoYW5nZSB0aGUgYWx0ZXJuYXRpdmVzIGRpcmVjdG9yeS5cbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICBjaGFuZ2UgdGhlIGFkbWluaXN0cmF0aXZlIGRpcmVjdG9yeS5cbiIKKyIgIC0tdGVzdCAgICAgICAgICAgICAgICAgICBkb24ndCBkbyBhbnl0aGluZywganVzdCBkZW1vbnN0cmF0ZS5cbiIKKyIgIC0tdmVyYm9zZSAgICAgICAgICAgICAgICB2ZXJib3NlIG9wZXJhdGlvbiwgbW9yZSBvdXRwdXQuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgcXVpZXQgb3BlcmF0aW9uLCBtaW5pbWFsIG91dHB1dC5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIjxsaW5rPiBpcyB0aGUgc3ltbGluayBwb2ludGluZyB0byAlcy88bmFtZT4uXG4iCisiICAoZS5nLiAvdXNyL2Jpbi9wYWdlcilcbiIKKyI8bmFtZT4gaXMgdGhlIG1hc3RlciBuYW1lIGZvciB0aGlzIGxpbmsgZ3JvdXAuXG4iCisiICAoZS5nLiBwYWdlcilcbiIKKyI8cGF0aD4gaXMgdGhlIGxvY2F0aW9uIG9mIG9uZSBvZiB0aGUgYWx0ZXJuYXRpdmUgdGFyZ2V0IGZpbGVzLlxuIgorIiAgKGUuZy4gL3Vzci9iaW4vbGVzcylcbiIKKyI8cHJpb3JpdHk+IGlzIGFuIGludGVnZXI7IG9wdGlvbnMgd2l0aCBoaWdoZXIgbnVtYmVycyBoYXZlIGhpZ2hlciBwcmlvcml0eSAiCisiaW5cbiIKKyIgIGF1dG9tYXRpYyBtb2RlLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hbHRkaXIgPGRpcmVjdG9yeT4gICAgIGNoYW5nZSB0aGUgYWx0ZXJuYXRpdmVzIGRpcmVjdG9yeS5cbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICBjaGFuZ2UgdGhlIGFkbWluaXN0cmF0aXZlIGRpcmVjdG9yeS5cbiIKKyIgIC0tbG9nIDxmaWxlPiAgICAgICAgICAgICBjaGFuZ2UgdGhlIGxvZyBmaWxlLlxuIgorIiAgLS1mb3JjZSAgICAgICAgICAgICAgICAgIGFsbG93IHJlcGxhY2luZyBmaWxlcyB3aXRoIGFsdGVybmF0aXZlIGxpbmtzLlxuIgorIiAgLS1za2lwLWF1dG8gICAgICAgICAgICAgIHNraXAgcHJvbXB0IGZvciBhbHRlcm5hdGl2ZXMgY29ycmVjdGx5ICIKKyJjb25maWd1cmVkXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gYXV0b21hdGljIG1vZGUgKHJlbGV2YW50IGZvciAtLWNvbmZpZyBvbmx5KVxuIgorIiAgLS12ZXJib3NlICAgICAgICAgICAgICAgIHZlcmJvc2Ugb3BlcmF0aW9uLCBtb3JlIG91dHB1dC5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBxdWlldCBvcGVyYXRpb24sIG1pbmltYWwgb3V0cHV0LlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSA8Y29tbWFuZD5cbiIKKyJcbiIKKyJDb21tYW5kczpcbiIKKyIgIC0tYWRkIDxvd25lcj4gPGdyb3VwPiA8bW9kZT4gPGZpbGU+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkIGEgbmV3IGVudHJ5IGludG8gdGhlIGRhdGFiYXNlLlxuIgorIiAgLS1yZW1vdmUgPGZpbGU+ICAgICAgICAgIHJlbW92ZSBmaWxlIGZyb20gdGhlIGRhdGFiYXNlLlxuIgorIiAgLS1saXN0IFs8Z2xvYi1wYXR0ZXJuPl0gIGxpc3QgY3VycmVudCBvdmVycmlkZXMgaW4gdGhlIGRhdGFiYXNlLlxuIgorIlxuIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgc2V0IHRoZSBkaXJlY3Rvcnkgd2l0aCB0aGUgc3RhdG92ZXJyaWRlIGZpbGUuXG4iCisiICAtLXVwZGF0ZSAgICAgICAgICAgICAgICAgaW1tZWRpYXRlbHkgdXBkYXRlIGZpbGUgcGVybWlzc2lvbnMuXG4iCisiICAtLWZvcmNlICAgICAgICAgICAgICAgICAgZm9yY2UgYW4gYWN0aW9uIGV2ZW4gaWYgYSBzYW5pdHkgY2hlY2sgZmFpbHMuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgcXVpZXQgb3BlcmF0aW9uLCBtaW5pbWFsIG91dHB1dC5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE2MworIywgZnV6enkKKyN8IG1zZ2lkICJwYXJzZSBlcnJvciIKK21zZ2lkICJlcnJvciIKK21zZ3N0ciAi4Kiq4Ki+4Kiw4Ki4IOCol+CosuCopOCpgCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE5MworbXNnaWQgIndhcm5pbmciCittc2dzdHIgIuComuCph+CopOCovuCoteCoqOCpgCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjM1NgorIywgYy1mb3JtYXQKK21zZ2lkICJ0d28gY29tbWFuZHMgc3BlY2lmaWVkOiAtLSVzIGFuZCAtLSVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzozODcKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byByZWFkICVzOiAlcyIKK21zZ2lkICJjYW5ub3QgYXBwZW5kIHRvICclcyciCittc2dzdHIgIiVzIOCoquCpnOCpjeCoueCoqCDgqLLgqIgg4KiF4Ki44Kir4Ki84KiyOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjU1NgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHJlbW92ZSAlczogJXMiCittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSAnJXMnIgorbXNnc3RyICIlcyDgqLngqJ/gqL7gqIngqKMg4Kiy4KiIIOCoheCouOCoq+CovOCosjogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTExCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGZpbGUgd2hpbGUgdHJ5aW5nIHRvIHJlYWQgJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMTMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIndoaWxlIHJlYWRpbmcgJXM6ICVzIgorbXNnc3RyICIlcyDgqKrgqZzgqY3gqLngqKgg4Kiy4KiIIOCoheCouOCoq+CovOCosjogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTE5CisjLCBjLWZvcm1hdAorbXNnaWQgImxpbmUgbm90IHRlcm1pbmF0ZWQgd2hpbGUgdHJ5aW5nIHRvIHJlYWQgJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMzcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzIGNvcnJ1cHQ6ICVzIgorbXNnc3RyICLgqIXgqbDgqKbgqLDgqYLgqKjgqYAg4KiX4Kiy4Kik4KmAOiAlcyDgqKjgqL/gqJXgqL7gqLDgqL46ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE1MAorIywgYy1mb3JtYXQKK21zZ2lkICJuZXdsaW5lcyBwcm9oaWJpdGVkIGluIHVwZGF0ZS1hbHRlcm5hdGl2ZXMgZmlsZXMgKCVzKSIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE2MworbXNnaWQgInNsYXZlIG5hbWUiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNzEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImR1cGxpY2F0ZSBzbGF2ZSAlcyIKK21zZ2lkICJkdXBsaWNhdGUgc2xhdmUgbmFtZSAlcyIKK21zZ3N0ciAi4Kim4KmB4Ki54Kiw4Ki+IOCouOCosuCph+CotSAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNzQKK21zZ2lkICJzbGF2ZSBsaW5rIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTc4CisjLCBjLWZvcm1hdAorbXNnaWQgInNsYXZlIGxpbmsgc2FtZSBhcyBtYWluIGxpbmsgJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExODUgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHNsYXZlIGxpbmsgJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMDQKK21zZ2lkICJtYXN0ZXIgZmlsZSIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIxMworIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgcGF0aCAlcyIKK21zZ3N0ciAi4Kim4KmB4Ki54Kiw4Ki+IOCoruCovuCosOColyAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImFsdGVybmF0aXZlICVzIChwYXJ0IG9mIGxpbmsgZ3JvdXAgJXMpIGRvZXNuJ3QgZXhpc3QuIFJlbW92aW5nIGZyb20gbGlzdCBvZiAiCisiYWx0ZXJuYXRpdmVzLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIyOSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI0MAorIywgZnV6enkKK21zZ2lkICJwcmlvcml0eSIKK21zZ3N0ciAi4Kik4Kiw4Kic4KmA4Ki5ICVzICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIzMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI0OQorbXNnaWQgInNsYXZlIGZpbGUiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyNDQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInByaW9yaXR5IG9mICVzOiAlcyIKK21zZ3N0ciAi4Kik4Kiw4Kic4KmA4Ki5ICVzICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI5NworbXNnaWQgInN0YXR1cyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI5OQorbXNnaWQgImludmFsaWQgc3RhdHVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzA0Cittc2dpZCAibWFzdGVyIGxpbmsiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGlzY2FyZGluZyBvYnNvbGV0ZSBzbGF2ZSBsaW5rICVzICglcykuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTAyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTY5CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYzOAorbXNnaWQgImF1dG8gbW9kZSIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU3OAorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MzkKK21zZ2lkICJtYW51YWwgbW9kZSIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwNQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiICBsaW5rIGN1cnJlbnRseSBwb2ludHMgdG8gJXMiCittc2dzdHIgIiDgqLjgqKzgqbDgqKcgJXMg4Kio4KmC4KmwIOCoh+CouOCovOCovuCosOCoviDgqJXgqLDgqKbgqL4g4Ki54KmIIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwOAorIywgZnV6enkKK21zZ2lkICIgIGxpbmsgY3VycmVudGx5IGFic2VudCIKK21zZ3N0ciAiIOCouOCorOCpsOCopyDgqIfgqLgg4Ki44Kiu4KmH4KiCIOCoruCpjOConOCpguCopiDgqKjgqLngqYDgqIIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTEyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIlcyAtIHByaW9yaXR5ICVzIgorbXNnaWQgIiVzIC0gcHJpb3JpdHkgJWQiCittc2dzdHIgIiVzIC0g4Kik4Kiw4Kic4KmA4Ki5ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUxNQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiICBzbGF2ZSAlczogJXMiCittc2dzdHIgIiDgqLjgqLLgqYfgqLUgJXM6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUyMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiQ3VycmVudCAnYmVzdCcgdmVyc2lvbiBpcyAnJXMnLiIKK21zZ3N0ciAiJXMg4Kim4Ki+IOCoruCpjOConOCpguCopuCovmBiZXN0JyDgqLXgqLDgqJzgqKgg4Ki54KmI4KWkIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUyNAorbXNnaWQgIk5vIHZlcnNpb25zIGF2YWlsYWJsZS4iCittc2dzdHIgIuColeCpi+CoiCDgqLXgqLDgqJzgqKgg4KiJ4Kiq4Kiy4Kmx4Kis4KinIOCoqOCoueCpgOCogiDgqLngqYjgpaQiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTUzCisjLCBjLWZvcm1hdAorbXNnaWQgIlRoZXJlIGlzICVkIGNob2ljZSBmb3IgdGhlIGFsdGVybmF0aXZlICVzIChwcm92aWRpbmcgJXMpLiIKK21zZ2lkX3BsdXJhbCAiVGhlcmUgYXJlICVkIGNob2ljZXMgZm9yIHRoZSBhbHRlcm5hdGl2ZSAlcyAocHJvdmlkaW5nICVzKS4iCittc2dzdHJbMF0gIiIKK21zZ3N0clsxXSAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2MAorIywgZnV6enkKK21zZ2lkICJTZWxlY3Rpb24iCittc2dzdHIgIuCoteCph+CosOCoteCoviIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NjEKK21zZ2lkICJQYXRoIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYxCisjLCBmdXp6eQorbXNnaWQgIlByaW9yaXR5IgorbXNnc3RyICLgqKTgqLDgqJzgqYDgqLkgJXMgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYxCittc2dpZCAiU3RhdHVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTgyCisjLCBjLWZvcm1hdAorbXNnaWQgIlByZXNzIGVudGVyIHRvIGtlZXAgdGhlIGN1cnJlbnQgY2hvaWNlWypdLCBvciB0eXBlIHNlbGVjdGlvbiBudW1iZXI6ICIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTcyMQorIywgYy1mb3JtYXQKK21zZ2lkICJub3QgcmVwbGFjaW5nICVzIHdpdGggYSBsaW5rLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTc2MgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW4ndCBpbnN0YWxsIHVua25vd24gY2hvaWNlICVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNzgwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJza2lwIGNyZWF0aW9uIG9mICVzIGJlY2F1c2UgYXNzb2NpYXRlZCBmaWxlICVzIChvZiBsaW5rIGdyb3VwICVzKSBkb2Vzbid0ICIKKyJleGlzdC4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IHJlbW92aW5nICVzIHNpbmNlIGl0J3Mgbm90IGEgc3ltbGluay4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNDEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2FsbCAlcy4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiQWx0ZXJuYXRpdmUgJXMgdW5jaGFuZ2VkIGJlY2F1c2UgY2hvaWNlICVzIGlzIG5vdCBhdmFpbGFibGUuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDU1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJTa2lwIHVua25vd24gYWx0ZXJuYXRpdmUgJXMuIgorbXNnc3RyICIlcyDgqLLgqIgg4KiV4KmL4KiIIOCorOCopuCosiDgqKjgqLngqYDgqIIg4Ki54KmI4KWkIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA3NworIywgYy1mb3JtYXQKK21zZ2lkICJsaW5lIHRvbyBsb25nIG9yIG5vdCB0ZXJtaW5hdGVkIHdoaWxlIHRyeWluZyB0byByZWFkICVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDkwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTAzCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjExMworIywgYy1mb3JtYXQKK21zZ2lkICJTa2lwIGludmFsaWQgbGluZTogJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVuYW1pbmcgJXMgbGluayBmcm9tICVzIHRvICVzLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE3MworIywgYy1mb3JtYXQKK21zZ2lkICJyZW5hbWluZyAlcyBzbGF2ZSBsaW5rIGZyb20gJXMgdG8gJXMuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTg5CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIG5hbWUgKCVzKSBtdXN0IG5vdCBjb250YWluICcvJyBhbmQgc3BhY2VzLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE5MworIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBsaW5rIGlzIG5vdCBhYnNvbHV0ZSBhcyBpdCBzaG91bGQgYmU6ICVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTk3CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIHBhdGggaXMgbm90IGFic29sdXRlIGFzIGl0IHNob3VsZCBiZTogJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgbWFzdGVyOiBpdCBpcyBhIHNsYXZlIG9mICVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjMyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjY3CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIGxpbmsgJXMgaXMgYWxyZWFkeSBtYW5hZ2VkIGJ5ICVzLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI0MQorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBwYXRoICVzIGRvZXNuJ3QgZXhpc3QuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjU0CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlICVzIGNhbid0IGJlIHNsYXZlIG9mICVzOiBpdCBpcyBhIG1hc3RlciBhbHRlcm5hdGl2ZS4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgc2xhdmUgb2YgJXM6IGl0IGlzIGEgc2xhdmUgb2YgJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgbGluayAlcyBpcyBhbHJlYWR5IG1hbmFnZWQgYnkgJXMgKHNsYXZlIG9mICVzKS4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBhcmd1bWVudCBgJXMnIgorbXNnc3RyICLgqLLgqL7gqJzgqLzgqK7gqYAg4Kiu4KmB4Kmx4KiyIGAlcyciCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzQzCittc2dpZCAiLS1pbnN0YWxsIG5lZWRzIDxsaW5rPiA8bmFtZT4gPHBhdGg+IDxwcmlvcml0eT4iCittc2dzdHIgIi0taW5zdGFsbCBuZWVkcyA8bGluaz4gPG5hbWU+IDxwYXRoPiA8cHJpb3JpdHk+IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM0NiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM5NworbXNnaWQgIjxsaW5rPiBhbmQgPHBhdGg+IGNhbid0IGJlIHRoZSBzYW1lIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzQ5Cittc2dpZCAicHJpb3JpdHkgbXVzdCBiZSBhbiBpbnRlZ2VyIgorbXNnc3RyICLgqKTgqLDgqJzgqYDgqLkg4KiH4Kmx4KiVIOCoquCpguCosOCoqCDgqIXgqbDgqJUg4Ki54KmAIOComuCovuCoueCpgOCopuCoviDgqLngqYgiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzYyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgPG5hbWU+IDxwYXRoPiIKK21zZ3N0ciAiLS0lcyBuZWVkcyA8bmFtZT4gPHBhdGg+IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM3NgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIDxuYW1lPiIKK21zZ3N0ciAiLS0lcyBuZWVkcyA8bmFtZT4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzg4Cittc2dpZCAiLS1zbGF2ZSBvbmx5IGFsbG93ZWQgd2l0aCAtLWluc3RhbGwiCittc2dzdHIgIi0tc2xhdmUgb25seSBhbGxvd2VkIHdpdGggLS1pbnN0YWxsIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM5MAorbXNnaWQgIi0tc2xhdmUgbmVlZHMgPGxpbms+IDxuYW1lPiA8cGF0aD4iCittc2dzdHIgIi0tc2xhdmUgbmVlZHMgPGxpbms+IDxuYW1lPiA8cGF0aD4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzk5CisjLCBjLWZvcm1hdAorbXNnaWQgIm5hbWUgJXMgaXMgYm90aCBwcmltYXJ5IGFuZCBzbGF2ZSIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQwMgorIywgYy1mb3JtYXQKK21zZ2lkICJsaW5rICVzIGlzIGJvdGggcHJpbWFyeSBhbmQgc2xhdmUiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MjIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSA8ZmlsZT4gYXJndW1lbnQiCittc2dzdHIgIi0tJXMgbmVlZHMgPG5hbWU+IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQ0OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiBgJXMnIgorbXNnc3RyICLgqIXgqKPgqJzgqL7gqKMg4Kia4KmL4KijIGAlcyciCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDUzCisjLCBmdXp6eQorbXNnaWQgIiIKKyJuZWVkIC0tZGlzcGxheSwgLS1xdWVyeSwgLS1saXN0LCAtLWdldC1zZWxlY3Rpb25zLCAtLWNvbmZpZywgLS1zZXQsIC0tc2V0LSIKKyJzZWxlY3Rpb25zLCAtLWluc3RhbGwsIC0tcmVtb3ZlLCAtLWFsbCwgLS1yZW1vdmUtYWxsIG9yIC0tYXV0byIKK21zZ3N0ciAiIgorIm5lZWQgLS1kaXNwbGF5LCAtLWNvbmZpZywgLS1zZXQsIC0taW5zdGFsbCwgLS1yZW1vdmUsIC0tYWxsLCAtLXJlbW92ZS1hbGwgb3IgIgorIi0tYXV0byIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0OTAKK21zZ2lkICI8c3RhbmRhcmQgaW5wdXQ+IgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTAwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTAzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJubyBhbHRlcm5hdGl2ZXMgZm9yICVzLiIKK21zZ3N0ciAiJXMg4Kiy4KiIIOColeCpi+CoiCDgqKzgqKbgqLIg4Kio4Ki54KmA4KiCIOCoueCpiOClpCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMvJXMgaXMgZGFuZ2xpbmcsIGl0IHdpbGwgYmUgdXBkYXRlZCB3aXRoIGJlc3QgY2hvaWNlLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUzNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXMvJXMgaGFzIGJlZW4gY2hhbmdlZCAobWFudWFsbHkgb3IgYnkgYSBzY3JpcHQpLiBTd2l0Y2hpbmcgdG8gbWFudWFsICIKKyJ1cGRhdGVzIG9ubHkuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTQyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJzZXR0aW5nIHVwIGF1dG9tYXRpYyBzZWxlY3Rpb24gb2YgJXMuIgorbXNnc3RyICIlcyDgqLLgqIgg4KiG4Kif4KmL4Kiu4KmI4Kif4Ki/4KiVIOComuCpi+CooyDgqLjgqYjgqJ/gqIXgqbHgqKog4KiV4KmA4Kik4KmAIOConOCoviDgqLDgqLngqYAg4Ki54KmIIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU1MQorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBmb3IgJXMgbm90IHJlZ2lzdGVyZWQsIG5vdCBzZXR0aW5nLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU1NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU2MworIywgYy1mb3JtYXQKK21zZ2lkICJUaGVyZSBpcyBubyBwcm9ncmFtIHdoaWNoIHByb3ZpZGVzICVzLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU2NSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU3NQorbXNnaWQgIk5vdGhpbmcgdG8gY29uZmlndXJlLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU3MworIywgYy1mb3JtYXQKK21zZ2lkICJUaGVyZSBpcyBvbmx5IG9uZSBhbHRlcm5hdGl2ZSBpbiBsaW5rIGdyb3VwICVzOiAlcyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU4NAorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBmb3IgJXMgbm90IHJlZ2lzdGVyZWQsIG5vdCByZW1vdmluZy4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1OTIKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVtb3ZpbmcgbWFudWFsbHkgc2VsZWN0ZWQgYWx0ZXJuYXRpdmUgLSBzd2l0Y2hpbmcgJXMgdG8gYXV0byBtb2RlIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjE3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJhdXRvbWF0aWMgdXBkYXRlcyBvZiAlcy8lcyBhcmUgZGlzYWJsZWQsIGxlYXZpbmcgaXQgYWxvbmUuIgorbXNnc3RyICIlcyDgqLLgqIgg4KiG4Kif4KmL4Kiu4KmI4Kif4Ki/4KiVIOCoheCpseCoquCooeCph+ConyDgqIbgqK/gqYvgqJcg4Ki54KmILCDgqIfgqLgg4Kio4KmC4KmwIOCoh+CpseColeCosuCoviDgqJvgqbHgqKHgqL/gqIYg4Kic4Ki+4KiC4Kim4Ki+IOCoueCpiCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MTkKKyMsIGMtZm9ybWF0Cittc2dpZCAidG8gcmV0dXJuIHRvIGF1dG9tYXRpYyB1cGRhdGVzIHVzZSAnJXMgLS1hdXRvICVzJy4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MzYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVzaW5nICVzIHRvIHByb3ZpZGUgJXMgKCVzKSBpbiAlcy4iCittc2dzdHIgIiAgJS4yNTBzICVzIOCoueCpiOClpFxuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjY0NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZm9yY2luZyByZWluc3RhbGxhdGlvbiBvZiBhbHRlcm5hdGl2ZSAlcyBiZWNhdXNlIGxpbmsgZ3JvdXAgJXMgaXMgYnJva2VuLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjY1MQorIywgYy1mb3JtYXQKK21zZ2lkICJjdXJyZW50IGFsdGVybmF0aXZlICVzIGlzIHVua25vd24sIHN3aXRjaGluZyB0byAlcyBmb3IgbGluayBncm91cCAlcy4iCittc2dzdHIgIiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJpdCBpcyBhIHNsYXZlIG9mICVzIgorI34gbXNnc3RyICIg4Ki44Kiy4KmH4Ki1ICVzOiAlcyIKKworIywgZnV6enkKKyN+fCBtc2dpZCAidW5hYmxlIHRvIHJlYWQgJXM6ICVzIgorI34gbXNnaWQgImNhbm5vdCBzdGF0ICVzOiAlcyIKKyN+IG1zZ3N0ciAiJXMg4Kiq4Kmc4KmN4Ki54KioIOCosuCoiCDgqIXgqLjgqKvgqLzgqLI6ICVzIgorCisjLCBmdXp6eQorI34gbXNnaWQgIndoaWxlIHdyaXRpbmcgJXM6ICVzIgorI34gbXNnc3RyICIlcyDgqLLgqL/gqJbgqKMg4Kiy4KiIIOCoheCouOCoq+CovOCosjogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcmVhZCAlczogJXMiCisjfiBtc2dzdHIgIiVzIOCoquCpnOCpjeCoueCoqCDgqLLgqIgg4KiF4Ki44Kir4Ki84KiyOiAlcyIKKworIywgZnV6enkKKyN+fCBtc2dpZCAidW5hYmxlIHRvIHdyaXRlICVzOiAlcyIKKyN+IG1zZ2lkICJjYW5ub3Qgd3JpdGUgJXM6ICVzIgorI34gbXNnc3RyICIlcyDgqLLgqL/gqJbgqKMg4Kiy4KiIIOCoheCouOCoq+CovOCosjogJXMiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAidW5hYmxlIHRvIHJlbmFtZSBmaWxlICclcycgdG8gJyVzJyIKKyN+IG1zZ3N0ciAiJXMg4Kia4Kiy4Ki+4KiJ4KijIOCosuCoiCDgqIXgqLjgqKvgqLzgqLIiCisKKyN+IG1zZ2lkICJwYXJzZSBlcnJvciIKKyN+IG1zZ3N0ciAi4Kiq4Ki+4Kiw4Ki4IOCol+CosuCopOCpgCIKKworIywgZnV6enkKKyN+IG1zZ2lkICIiCisjfiAiJXMgZGVidWdnaW5nIG9wdGlvbiwgLS1kZWJ1Zz08b2N0YWw+IG9yIC1EPG9jdGFsPjpcbiIKKyN+ICJcbiIKKyN+ICIgbnVtYmVyICByZWYuIGluIHNvdXJjZSAgIGRlc2NyaXB0aW9uXG4iCisjfiAiICAgICAgMSAgIGdlbmVyYWwgICAgICAgICAgIEdlbmVyYWxseSBoZWxwZnVsIHByb2dyZXNzIGluZm9ybWF0aW9uXG4iCisjfiAiICAgICAgMiAgIHNjcmlwdHMgICAgICAgICAgIEludm9jYXRpb24gYW5kIHN0YXR1cyBvZiBtYWludGFpbmVyIHNjcmlwdHNcbiIKKyN+ICIgICAgIDEwICAgZWFjaGZpbGUgICAgICAgICAgT3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkXG4iCisjfiAiICAgIDEwMCAgIGVhY2hmaWxlZGV0YWlsICAgIExvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkXG4iCisjfiAiICAgICAyMCAgIGNvbmZmICAgICAgICAgICAgIE91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGVcbiIKKyN+ICIgICAgMjAwICAgY29uZmZkZXRhaWwgICAgICAgTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggY29uZmlndXJhdGlvbiBmaWxlXG4iCisjfiAiICAgICA0MCAgIGRlcGNvbiAgICAgICAgICAgIERlcGVuZGVuY2llcyBhbmQgY29uZmxpY3RzXG4iCisjfiAiICAgIDQwMCAgIGRlcGNvbmRldGFpbCAgICAgIExvdHMgb2YgZGVwZW5kZW5jaWVzL2NvbmZsaWN0cyBvdXRwdXRcbiIKKyN+ICIgIDEwMDAwICAgdHJpZ2dlcnMgICAgICAgICAgVHJpZ2dlciBhY3RpdmF0aW9uIGFuZCBwcm9jZXNzaW5nXG4iCisjfiAiICAyMDAwMCAgIHRyaWdnZXJzZGV0YWlsICAgIExvdHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2Vyc1xuIgorI34gIiAgNDAwMDAgICB0cmlnZ2Vyc3N0dXBpZCAgICBTaWxseSBhbW91bnRzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnNcbiIKKyN+ICIgICAxMDAwICAgdmVyeXZlcmJvc2UgICAgICAgTG90cyBvZiBkcml2ZWwgYWJvdXQgZWcgdGhlIGRwa2cvaW5mbyAiCisjfiAiZGlyZWN0b3J5XG4iCisjfiAiICAgMjAwMCAgIHN0dXBpZGx5dmVyYm9zZSAgIEluc2FuZSBhbW91bnRzIG9mIGRyaXZlbFxuIgorI34gIlxuIgorI34gIkRlYnVnZ2luZyBvcHRpb25zIGFyZSBiZSBtaXhlZCB1c2luZyBiaXR3aXNlLW9yLlxuIgorI34gIk5vdGUgdGhhdCB0aGUgbWVhbmluZ3MgYW5kIHZhbHVlcyBhcmUgc3ViamVjdCB0byBjaGFuZ2UuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICIlcyBkZWJ1Z2dpbmcgb3B0aW9uLCAtLWRlYnVnPTxvY3RhbD4gb3IgLUQ8b2N0YWw+OlxuIgorI34gIlxuIgorI34gIiBudW1iZXIgIHJlZi4gaW4gc291cmNlICAgZGVzY3JpcHRpb25cbiIKKyN+ICIgICAgICAxICAgZ2VuZXJhbCAgICAgICAgICAgR2VuZXJhbGx5IGhlbHBmdWwgcHJvZ3Jlc3MgaW5mb3JtYXRpb25cbiIKKyN+ICIgICAgICAyICAgc2NyaXB0cyAgICAgICAgICAgSW52b2NhdGlvbiBhbmQgc3RhdHVzIG9mIG1haW50YWluZXIgc2NyaXB0c1xuIgorI34gIiAgICAgMTAgICBlYWNoZmlsZSAgICAgICAgICBPdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWRcbiIKKyN+ICIgICAgMTAwICAgZWFjaGZpbGVkZXRhaWwgICAgTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWRcbiIKKyN+ICIgICAgIDIwICAgY29uZmYgICAgICAgICAgICAgT3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZVxuIgorI34gIiAgICAyMDAgICBjb25mZmRldGFpbCAgICAgICBMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGVcbiIKKyN+ICIgICAgIDQwICAgZGVwY29uICAgICAgICAgICAgRGVwZW5kZW5jaWVzIGFuZCBjb25mbGljdHNcbiIKKyN+ICIgICAgNDAwICAgZGVwY29uZGV0YWlsICAgICAgTG90cyBvZiBkZXBlbmRlbmNpZXMvY29uZmxpY3RzIG91dHB1dFxuIgorI34gIiAgIDEwMDAgICB2ZXJ5dmVyYm9zZSAgICAgICBMb3RzIG9mIGRyaXZlbCBhYm91dCBlZyB0aGUgZHBrZy9pbmZvICIKKyN+ICJkaXJlY3RvcnlcbiIKKyN+ICIgICAyMDAwICAgc3R1cGlkbHl2ZXJib3NlICAgSW5zYW5lIGFtb3VudHMgb2YgZHJpdmVsXG4iCisjfiAiXG4iCisjfiAiRGVidWdnaW5nIG9wdGlvbnMgYXJlIGJlIG1peGVkIHVzaW5nIGJpdHdpc2Utb3IuXG4iCisjfiAiTm90ZSB0aGF0IHRoZSBtZWFuaW5ncyBhbmQgdmFsdWVzIGFyZSBzdWJqZWN0IHRvIGNoYW5nZS5cbiIKKworIywgZnV6enkKKyN+IG1zZ2lkICIiCisjfiAiJXMgZm9yY2luZyBvcHRpb25zIC0gY29udHJvbCBiZWhhdmlvdXIgd2hlbiBwcm9ibGVtcyBmb3VuZDpcbiIKKyN+ICIgIHdhcm4gYnV0IGNvbnRpbnVlOiAgLS1mb3JjZS08dGhpbmc+LDx0aGluZz4sLi4uXG4iCisjfiAiICBzdG9wIHdpdGggZXJyb3I6ICAgIC0tcmVmdXNlLTx0aGluZz4sPHRoaW5nPiwuLi4gfCAtLW5vLWZvcmNlLSIKKyN+ICI8dGhpbmc+LC4uLlxuIgorI34gIiBGb3JjaW5nIHRoaW5nczpcbiIKKyN+ICIgIGFsbCBbIV0gICAgICAgICAgICAgICAgU2V0IGFsbCBmb3JjZSBvcHRpb25zXG4iCisjfiAiICBkb3duZ3JhZGUgWypdICAgICAgICAgIFJlcGxhY2UgYSBwYWNrYWdlIHdpdGggYSBsb3dlciB2ZXJzaW9uXG4iCisjfiAiICBjb25maWd1cmUtYW55ICAgICAgICAgIENvbmZpZ3VyZSBhbnkgcGFja2FnZSB3aGljaCBtYXkgaGVscCB0aGlzIG9uZVxuIgorI34gIiAgaG9sZCAgICAgICAgICAgICAgICAgICBQcm9jZXNzIGluY2lkZW50YWwgcGFja2FnZXMgZXZlbiB3aGVuIG9uIGhvbGRcbiIKKyN+ICIgIGJhZC1wYXRoICAgICAgICAgICAgICAgUEFUSCBpcyBtaXNzaW5nIGltcG9ydGFudCBwcm9ncmFtcywgcHJvYmxlbXMgIgorI34gImxpa2VseVxuIgorI34gIiAgbm90LXJvb3QgICAgICAgICAgICAgICBUcnkgdG8gKGRlKWluc3RhbGwgdGhpbmdzIGV2ZW4gd2hlbiBub3Qgcm9vdFxuIgorI34gIiAgb3ZlcndyaXRlICAgICAgICAgICAgICBPdmVyd3JpdGUgYSBmaWxlIGZyb20gb25lIHBhY2thZ2Ugd2l0aCBhbm90aGVyXG4iCisjfiAiICBvdmVyd3JpdGUtZGl2ZXJ0ZWQgICAgIE92ZXJ3cml0ZSBhIGRpdmVydGVkIGZpbGUgd2l0aCBhbiB1bmRpdmVydGVkICIKKyN+ICJ2ZXJzaW9uXG4iCisjfiAiICBiYWQtdmVyaWZ5ICAgICAgICAgICAgIEluc3RhbGwgYSBwYWNrYWdlIGV2ZW4gaWYgaXQgZmFpbHMgYXV0aGVudGljaXR5ICIKKyN+ICJjaGVja1xuIgorI34gIiAgZGVwZW5kcy12ZXJzaW9uIFshXSAgICBUdXJuIGRlcGVuZGVuY3kgdmVyc2lvbiBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzXG4iCisjfiAiICBkZXBlbmRzIFshXSAgICAgICAgICAgIFR1cm4gYWxsIGRlcGVuZGVuY3kgcHJvYmxlbXMgaW50byB3YXJuaW5nc1xuIgorI34gIiAgY29uZm5ldyBbIV0gICAgICAgICAgICBBbHdheXMgdXNlIHRoZSBuZXcgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHRcbiIKKyN+ICIgIGNvbmZvbGQgWyFdICAgICAgICAgICAgQWx3YXlzIHVzZSB0aGUgb2xkIGNvbmZpZyBmaWxlcywgZG9uJ3QgcHJvbXB0XG4iCisjfiAiICBjb25mZGVmIFshXSAgICAgICAgICAgIFVzZSB0aGUgZGVmYXVsdCBvcHRpb24gZm9yIG5ldyBjb25maWcgZmlsZXMgaWYgIgorI34gIm9uZVxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICBpcyBhdmFpbGFibGUsIGRvbid0IHByb21wdC4gSWYgbm8gZGVmYXVsdCBjYW4gYmUgIgorI34gImZvdW5kLFxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICB5b3Ugd2lsbCBiZSBwcm9tcHRlZCB1bmxlc3Mgb25lIG9mIHRoZSBjb25mb2xkICIKKyN+ICJvclxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICBjb25mbmV3IG9wdGlvbnMgaXMgYWxzbyBnaXZlblxuIgorI34gIiAgY29uZm1pc3MgWyFdICAgICAgICAgICBBbHdheXMgaW5zdGFsbCBtaXNzaW5nIGNvbmZpZyBmaWxlc1xuIgorI34gIiAgY29uZmFzayBbIV0gICAgICAgICAgICBPZmZlciB0byByZXBsYWNlIGNvbmZpZyBmaWxlcyB3aXRoIG5vIG5ldyAiCisjfiAidmVyc2lvbnNcbiIKKyN+ICIgIGJyZWFrcyBbIV0gICAgICAgICAgICAgSW5zdGFsbCBldmVuIGlmIGl0IHdvdWxkIGJyZWFrIGFub3RoZXIgcGFja2FnZVxuIgorI34gIiAgY29uZmxpY3RzIFshXSAgICAgICAgICBBbGxvdyBpbnN0YWxsYXRpb24gb2YgY29uZmxpY3RpbmcgcGFja2FnZXNcbiIKKyN+ICIgIGFyY2hpdGVjdHVyZSBbIV0gICAgICAgUHJvY2VzcyBldmVuIHBhY2thZ2VzIHdpdGggd3JvbmcgYXJjaGl0ZWN0dXJlXG4iCisjfiAiICBvdmVyd3JpdGUtZGlyIFshXSAgICAgIE92ZXJ3cml0ZSBvbmUgcGFja2FnZSdzIGRpcmVjdG9yeSB3aXRoIGFub3RoZXIncyAiCisjfiAiZmlsZVxuIgorI34gIiAgdW5zYWZlLWlvIFshXSAgICAgICAgICBEbyBub3QgcGVyZm9ybSBzYWZlIEkvTyBvcGVyYXRpb25zIHdoZW4gIgorI34gInVucGFja2luZ1xuIgorI34gIiAgcmVtb3ZlLXJlaW5zdHJlcSBbIV0gICBSZW1vdmUgcGFja2FnZXMgd2hpY2ggcmVxdWlyZSBpbnN0YWxsYXRpb25cbiIKKyN+ICIgIHJlbW92ZS1lc3NlbnRpYWwgWyFdICAgUmVtb3ZlIGFuIGVzc2VudGlhbCBwYWNrYWdlXG4iCisjfiAiXG4iCisjfiAiV0FSTklORyAtIHVzZSBvZiBvcHRpb25zIG1hcmtlZCBbIV0gY2FuIHNlcmlvdXNseSBkYW1hZ2UgeW91ciAiCisjfiAiaW5zdGFsbGF0aW9uLlxuIgorI34gIkZvcmNpbmcgb3B0aW9ucyBtYXJrZWQgWypdIGFyZSBlbmFibGVkIGJ5IGRlZmF1bHQuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICIlcyBmb3JjaW5nIG9wdGlvbnMgLSBjb250cm9sIGJlaGF2aW91ciB3aGVuIHByb2JsZW1zIGZvdW5kOlxuIgorI34gIiAgd2FybiBidXQgY29udGludWU6ICAtLWZvcmNlLTx0aGluZz4sPHRoaW5nPiwuLi5cbiIKKyN+ICIgIHN0b3Agd2l0aCBlcnJvcjogICAgLS1yZWZ1c2UtPHRoaW5nPiw8dGhpbmc+LC4uLiB8IC0tbm8tZm9yY2UtIgorI34gIjx0aGluZz4sLi4uXG4iCisjfiAiIEZvcmNpbmcgdGhpbmdzOlxuIgorI34gIiAgYWxsIFshXSAgICAgICAgICAgICAgICBTZXQgYWxsIGZvcmNlIG9wdGlvbnNcbiIKKyN+ICIgIGRvd25ncmFkZSBbKl0gICAgICAgICAgUmVwbGFjZSBhIHBhY2thZ2Ugd2l0aCBhIGxvd2VyIHZlcnNpb25cbiIKKyN+ICIgIGNvbmZpZ3VyZS1hbnkgICAgICAgICAgQ29uZmlndXJlIGFueSBwYWNrYWdlIHdoaWNoIG1heSBoZWxwIHRoaXMgb25lXG4iCisjfiAiICBob2xkICAgICAgICAgICAgICAgICAgIFByb2Nlc3MgaW5jaWRlbnRhbCBwYWNrYWdlcyBldmVuIHdoZW4gb24gaG9sZFxuIgorI34gIiAgYmFkLXBhdGggICAgICAgICAgICAgICBQQVRIIGlzIG1pc3NpbmcgaW1wb3J0YW50IHByb2dyYW1zLCBwcm9ibGVtcyAiCisjfiAibGlrZWx5XG4iCisjfiAiICBub3Qtcm9vdCAgICAgICAgICAgICAgIFRyeSB0byAoZGUpaW5zdGFsbCB0aGluZ3MgZXZlbiB3aGVuIG5vdCByb290XG4iCisjfiAiICBvdmVyd3JpdGUgICAgICAgICAgICAgIE92ZXJ3cml0ZSBhIGZpbGUgZnJvbSBvbmUgcGFja2FnZSB3aXRoIGFub3RoZXJcbiIKKyN+ICIgIG92ZXJ3cml0ZS1kaXZlcnRlZCAgICAgT3ZlcndyaXRlIGEgZGl2ZXJ0ZWQgZmlsZSB3aXRoIGFuIHVuZGl2ZXJ0ZWQgIgorI34gInZlcnNpb25cbiIKKyN+ICIgIGJhZC12ZXJpZnkgICAgICAgICAgICAgSW5zdGFsbCBhIHBhY2thZ2UgZXZlbiBpZiBpdCBmYWlscyBhdXRoZW50aWNpdHkgIgorI34gImNoZWNrXG4iCisjfiAiICBkZXBlbmRzLXZlcnNpb24gWyFdICAgIFR1cm4gZGVwZW5kZW5jeSB2ZXJzaW9uIHByb2JsZW1zIGludG8gd2FybmluZ3NcbiIKKyN+ICIgIGRlcGVuZHMgWyFdICAgICAgICAgICAgVHVybiBhbGwgZGVwZW5kZW5jeSBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzXG4iCisjfiAiICBjb25mbmV3IFshXSAgICAgICAgICAgIEFsd2F5cyB1c2UgdGhlIG5ldyBjb25maWcgZmlsZXMsIGRvbid0IHByb21wdFxuIgorI34gIiAgY29uZm9sZCBbIV0gICAgICAgICAgICBBbHdheXMgdXNlIHRoZSBvbGQgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHRcbiIKKyN+ICIgIGNvbmZkZWYgWyFdICAgICAgICAgICAgVXNlIHRoZSBkZWZhdWx0IG9wdGlvbiBmb3IgbmV3IGNvbmZpZyBmaWxlcyBpZiAiCisjfiAib25lXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIGlzIGF2YWlsYWJsZSwgZG9uJ3QgcHJvbXB0LiBJZiBubyBkZWZhdWx0IGNhbiBiZSAiCisjfiAiZm91bmQsXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIHlvdSB3aWxsIGJlIHByb21wdGVkIHVubGVzcyBvbmUgb2YgdGhlIGNvbmZvbGQgIgorI34gIm9yXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmZuZXcgb3B0aW9ucyBpcyBhbHNvIGdpdmVuXG4iCisjfiAiICBjb25mbWlzcyBbIV0gICAgICAgICAgIEFsd2F5cyBpbnN0YWxsIG1pc3NpbmcgY29uZmlnIGZpbGVzXG4iCisjfiAiICBjb25mbGljdHMgWyFdICAgICAgICAgIEFsbG93IGluc3RhbGxhdGlvbiBvZiBjb25mbGljdGluZyBwYWNrYWdlc1xuIgorI34gIiAgYXJjaGl0ZWN0dXJlIFshXSAgICAgICBQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyBhcmNoaXRlY3R1cmVcbiIKKyN+ICIgIG92ZXJ3cml0ZS1kaXIgWyFdICAgICAgT3ZlcndyaXRlIG9uZSBwYWNrYWdlJ3MgZGlyZWN0b3J5IHdpdGggYW5vdGhlcidzICIKKyN+ICJmaWxlXG4iCisjfiAiICByZW1vdmUtcmVpbnN0cmVxIFshXSAgIFJlbW92ZSBwYWNrYWdlcyB3aGljaCByZXF1aXJlIGluc3RhbGxhdGlvblxuIgorI34gIiAgcmVtb3ZlLWVzc2VudGlhbCBbIV0gICBSZW1vdmUgYW4gZXNzZW50aWFsIHBhY2thZ2VcbiIKKyN+ICJcbiIKKyN+ICJXQVJOSU5HIC0gdXNlIG9mIG9wdGlvbnMgbWFya2VkIFshXSBjYW4gc2VyaW91c2x5IGRhbWFnZSB5b3VyICIKKyN+ICJpbnN0YWxsYXRpb24uXG4iCisjfiAiRm9yY2luZyBvcHRpb25zIG1hcmtlZCBbKl0gYXJlIGVuYWJsZWQgYnkgZGVmYXVsdC5cbiIKKworI34gbXNnaWQgImRwa2c6ICVzIG5vdCBmb3VuZC5cbiIKKyN+IG1zZ3N0ciAiZHBrZzogJXMg4Kio4Ki54KmA4KiCIOCosuCpseCoreCov+CohiDgqLngqYjgpaRcbiIKKworI34gbXNnaWQgInZlcnNpb24gbnVtYmVyIgorI34gbXNnc3RyICLgqLXgqLDgqJzgqKgg4Kio4Kmw4Kis4KiwIgorCisjfiBtc2dpZCAiaGVhZGVyIGluZm8gbWVtYmVyIgorI34gbXNnc3RyICLgqLngqYjgqILgqKHgqLAg4Kic4Ki+4Kij4KiV4Ki+4Kiw4KmAIOCoruCpiOCoguCorOCosCIKKworIywgZnV6enkKKyN+IG1zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHRlbXBvcmFyeSBkaXJlY3RvcnkiCisjfiBtc2dzdHIgIuCooeCovuCoh+CosOCpiOColeCon+CosOCpgCDgqKzgqKPgqL7gqIngqKMg4Kiy4KiIIOCoq+Cph+CosuCpjeCouSIKKworIywgZnV6enkKKyN+fCBtc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSAlczogJXMiCisjfiBtc2dpZCAidW5hYmxlIHRvIHN0YXQgJXM6ICVzIgorI34gbXNnc3RyICIlcyDgqKzgqKPgqL7gqIngqKMg4Kiy4KiIIOCoheCouOCoq+CovOCosjogJXMiCisKKyN+IG1zZ2lkICJjYXQgKGRhdGEpIgorI34gbXNnc3RyICJjYXQgKOCooeCovuCon+CovikiCisKKyN+IG1zZ2lkICIiCisjfiAiXG4iCisjfiAiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorI34gIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uIgorI34gbXNnc3RyICIiCisjfiAiXG4iCisjfiAiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorI34gIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uIgorCisjfiBtc2dpZCAiaW50ZXJuYWwgZXJyb3I6ICVzIGNvcnJ1cHQ6ICVzIgorI34gbXNnc3RyICLgqIXgqbDgqKbgqLDgqYLgqKjgqYAg4KiX4Kiy4Kik4KmAOiAlcyDgqKjgqL/gqJXgqL7gqLDgqL46ICVzIgorCisjLCBmdXp6eQorI34gbXNnaWQgIkRlYmlhbiByZXZpc2lvbiIKKyN+IG1zZ3N0ciAi4Kih4KmH4Kis4KmA4KiF4KioICVzIOCoteCosOConOCoqCAlc1xuIgorCisjfiBtc2dpZCAiJWQgZXJyb3JzIGluIGNvbnRyb2wgZmlsZSIKKyN+IG1zZ3N0ciAi4KiV4Kmw4Kif4Kiw4KmL4KiyIOCoq+CovuCoh+CosiAlZCAn4KiaIOCol+CosuCopOCpgOCohuCogiIKKworIywgZnV6enkKKyN+IG1zZ2lkICIlczogZmFpbGVkIHRvIGV4ZWMgJyVzICVzJyIKKyN+IG1zZ3N0ciAiJXMg4Kia4Kiy4Ki+4KiJ4KijIOCosuCoiCDgqIXgqLjgqKvgqLzgqLIiCisKKyN+IG1zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCBlcnJvcjogcmVhZDogYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IOCoheCpsOCopuCosOCpguCoqOCpgCBnemlwIOCol+CosuCopOCpgDog4Kiq4Kmc4KmN4Ki54KioOiBgJXMnIgorCisjfiBtc2dpZCAiJXM6IGludGVybmFsIGd6aXAgZXJyb3I6IHdyaXRlOiBgJXMnIgorI34gbXNnc3RyICIlczog4KiF4Kmw4Kim4Kiw4KmC4Kio4KmAIGd6aXAg4KiX4Kiy4Kik4KmAOiDgqLLgqL/gqJbgqKM6IGAlcyciCisKKyN+IG1zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCBlcnJvcjogcmVhZCglaSkgIT0gd3JpdGUoJWkpIgorI34gbXNnc3RyICIlczog4KiF4Kmw4Kim4Kiw4KmC4Kio4KmAIGd6aXAg4KiX4Kiy4Kik4KmAOiDgqKrgqZzgqY3gqLngqKgoJWkpICE9IOCosuCov+ColuCooyglaSkiCisKKyN+IG1zZ2lkICJ3YWl0IGZvciBzaGVsbCBmYWlsZWQiCisjfiBtc2dzdHIgIuCouOCovOCpiOCpseCosiDgqKvgqYfgqLLgqY3gqLkg4Ki54KmLIOCosuCpiCDgqKbgqL/gqJMiCisKKyN+IG1zZ2lkICJ1bmxpbmsiCisjfiBtc2dzdHIgInVubGluayIKKworI34gbXNnaWQgImNobW9kIgorI34gbXNnc3RyICJjaG1vZCIKKworI34gbXNnaWQgImRlbGV0ZSIKKyN+IG1zZ3N0ciAi4Ki54Kif4Ki+4KiTIgorCisjfiBtc2dpZCAiIgorI34gIlxuIgorI34gIkNvcHlyaWdodCAoQykgMjAwMCBXaWNoZXJ0IEFra2VybWFuLiIKKyN+IG1zZ3N0ciAiIgorI34gIlxuIgorI34gIkNvcHlyaWdodCAoQykgMjAwMCBXaWNoZXJ0IEFra2VybWFuLiIKKworI34gbXNnaWQgIm5vIG1vZGUgc3BlY2lmaWVkIgorI34gbXNnc3RyICLgqJXgqYvgqIgg4Kii4Kmw4KiXIOCoqOCoueCpgOCogiDgqKbgqL/gqbHgqKTgqL4iCisKKyN+IG1zZ2lkICJpbGxlZ2FsIHVzZXIgJXMiCisjfiBtc2dzdHIgIuCol+CosuCopCDgqIngqKrgqK3gqYvgqJfgqYAgJXMiCisKKyN+IG1zZ2lkICJub24tZXhpc3RpbmcgdXNlciAlcyIKKyN+IG1zZ3N0ciAi4Kio4Ki+LeCoruCpjOConOCpguCopiDgqIngqKrgqK3gqYvgqJfgqYAgJXMiCisKKyN+IG1zZ2lkICJpbGxlZ2FsIGdyb3VwICVzIgorI34gbXNnc3RyICLgqJfgqLLgqKQg4KiX4Kiw4KmB4Kmx4KiqICVzIgorCisjfiBtc2dpZCAiYWJvcnRpbmciCisjfiBtc2dzdHIgIuCoheCop+CpguCosOCoviDgqJvgqbHgqKHgqL/gqIYg4Kic4Ki+4KiC4Kim4Ki+IOCoueCpiCIKKworI34gbXNnaWQgIiIKKyN+ICJcbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDE5OTQsMTk5NSBJYW4gSmFja3Nvbi4iCisjfiBtc2dzdHIgIiIKKyN+ICJcbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDE5OTQsMTk5NSBJYW4gSmFja3Nvbi4iCisKKyN+IG1zZ2lkICIiCisjfiAiVXNhZ2U6ICVzIFs8b3B0aW9ucz4gLi4uXSBbLS1dIDxmaWxlbmFtZT5cbiIKKyN+ICJcbiIKKyN+ICJPcHRpb25zOlxuIgorI34gIiAgLS1zZWN0aW9uIDxyZWdleHA+IDx0aXRsZT5cbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICBwdXQgdGhlIG5ldyBlbnRyeSBpbiB0aGUgPHJlZ2V4PiBtYXRjaGVkICIKKyN+ICJzZWN0aW9uXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgb3IgY3JlYXRlIGEgbmV3IG9uZSB3aXRoIDx0aXRsZT4gaWYgbm9uLSIKKyN+ICJleGlzdGVudC5cbiIKKyN+ICIgIC0tbWVudWVudHJ5PTx0ZXh0PiAgICAgICBzZXQgdGhlIG1lbnUgZW50cnkuXG4iCisjfiAiICAtLWRlc2NyaXB0aW9uPTx0ZXh0PiAgICAgc2V0IHRoZSBkZXNjcmlwdGlvbiB0byBiZSB1c2VkIGluIHRoZSBtZW51ICIKKyN+ICJlbnRyeS5cbiIKKyN+ICIgIC0taW5mby1maWxlPTxwYXRoPiAgICAgICBzcGVjaWZ5IGluZm8gZmlsZSB0byBpbnN0YWxsIGluIHRoZSAiCisjfiAiZGlyZWN0b3J5LlxuIgorI34gIiAgLS1kaXItZmlsZT08cGF0aD4gICAgICAgIHNwZWNpZnkgZmlsZSBuYW1lIG9mIGluZm8gZGlyZWN0b3J5IGZpbGUuXG4iCisjfiAiICAtLWluZm9kaXI9PGRpcmVjdG9yeT4gICAgc2FtZSBhcyAnLS1kaXItZmlsZT08ZGlyZWN0b3J5Pi9kaXInLlxuIgorI34gIiAgLS1pbmZvLWRpcj08ZGlyZWN0b3J5PiAgIGxpa2V3aXNlLlxuIgorI34gIiAgLS1rZWVwLW9sZCAgICAgICAgICAgICAgIGRvIG5vdCByZXBsYWNlIGVudHJpZXMgbm9yIHJlbW92ZSBlbXB0eSBvbmVzLlxuIgorI34gIiAgLS1yZW1vdmUgICAgICAgICAgICAgICAgIHJlbW92ZSB0aGUgZW50cnkgc3BlY2lmaWVkIGJ5IDxmaWxlbmFtZT4gIgorI34gImJhc2VuYW1lLlxuIgorI34gIiAgLS1yZW1vdmUtZXhhY3RseSAgICAgICAgIHJlbW92ZSB0aGUgZXhhY3QgPGZpbGVuYW1lPiBlbnRyeS5cbiIKKyN+ICIgIC0tdGVzdCAgICAgICAgICAgICAgICAgICBlbmFibGVzIHRlc3QgbW9kZSAobm8gYWN0aW9ucyB0YWtlbikuXG4iCisjfiAiICAtLWRlYnVnICAgICAgICAgICAgICAgICAgZW5hYmxlcyBkZWJ1ZyBtb2RlIChzaG93IG1vcmUgaW5mb3JtYXRpb24pLlxuIgorI34gIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIGRvIG5vdCBzaG93IG91dHB1dCBtZXNzYWdlcy5cbiIKKyN+ICIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorI34gIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJVc2FnZTogJXMgWzxvcHRpb25zPiAuLi5dIFstLV0gPGZpbGVuYW1lPlxuIgorI34gIlxuIgorI34gIk9wdGlvbnM6XG4iCisjfiAiICAtLXNlY3Rpb24gPHJlZ2V4cD4gPHRpdGxlPlxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHB1dCB0aGUgbmV3IGVudHJ5IGluIHRoZSA8cmVnZXg+IG1hdGNoZWQgIgorI34gInNlY3Rpb25cbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICBvciBjcmVhdGUgYSBuZXcgb25lIHdpdGggPHRpdGxlPiBpZiBub24tIgorI34gImV4aXN0ZW50LlxuIgorI34gIiAgLS1tZW51ZW50cnk9PHRleHQ+ICAgICAgIHNldCB0aGUgbWVudSBlbnRyeS5cbiIKKyN+ICIgIC0tZGVzY3JpcHRpb249PHRleHQ+ICAgICBzZXQgdGhlIGRlc2NyaXB0aW9uIHRvIGJlIHVzZWQgaW4gdGhlIG1lbnUgIgorI34gImVudHJ5LlxuIgorI34gIiAgLS1pbmZvLWZpbGU9PHBhdGg+ICAgICAgIHNwZWNpZnkgaW5mbyBmaWxlIHRvIGluc3RhbGwgaW4gdGhlICIKKyN+ICJkaXJlY3RvcnkuXG4iCisjfiAiICAtLWRpci1maWxlPTxwYXRoPiAgICAgICAgc3BlY2lmeSBmaWxlIG5hbWUgb2YgaW5mbyBkaXJlY3RvcnkgZmlsZS5cbiIKKyN+ICIgIC0taW5mb2Rpcj08ZGlyZWN0b3J5PiAgICBzYW1lIGFzICctLWRpci1maWxlPTxkaXJlY3Rvcnk+L2RpcicuXG4iCisjfiAiICAtLWluZm8tZGlyPTxkaXJlY3Rvcnk+ICAgbGlrZXdpc2UuXG4iCisjfiAiICAtLWtlZXAtb2xkICAgICAgICAgICAgICAgZG8gbm90IHJlcGxhY2UgZW50cmllcyBub3IgcmVtb3ZlIGVtcHR5IG9uZXMuXG4iCisjfiAiICAtLXJlbW92ZSAgICAgICAgICAgICAgICAgcmVtb3ZlIHRoZSBlbnRyeSBzcGVjaWZpZWQgYnkgPGZpbGVuYW1lPiAiCisjfiAiYmFzZW5hbWUuXG4iCisjfiAiICAtLXJlbW92ZS1leGFjdGx5ICAgICAgICAgcmVtb3ZlIHRoZSBleGFjdCA8ZmlsZW5hbWU+IGVudHJ5LlxuIgorI34gIiAgLS10ZXN0ICAgICAgICAgICAgICAgICAgIGVuYWJsZXMgdGVzdCBtb2RlIChubyBhY3Rpb25zIHRha2VuKS5cbiIKKyN+ICIgIC0tZGVidWcgICAgICAgICAgICAgICAgICBlbmFibGVzIGRlYnVnIG1vZGUgKHNob3cgbW9yZSBpbmZvcm1hdGlvbikuXG4iCisjfiAiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgZG8gbm90IHNob3cgb3V0cHV0IG1lc3NhZ2VzLlxuIgorI34gIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisjfiAiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKworI34gbXNnaWQgIiVzOiAtLXNlY3Rpb24gbmVlZHMgdHdvIG1vcmUgYXJncyIKKyN+IG1zZ3N0ciAiJXM6IC0tc2VjdGlvbiBuZWVkcyB0d28gbW9yZSBhcmdzIgorCisjfiBtc2dpZCAiJXM6IG9wdGlvbiAtLSVzIGlzIGRlcHJlY2F0ZWQgKGlnbm9yZWQpIgorI34gbXNnc3RyICIlczogb3B0aW9uIC0tJXMgaXMgZGVwcmVjYXRlZCAoaWdub3JlZCkiCisKKyN+IG1zZ2lkICIlczogLS1zZWN0aW9uIGlnbm9yZWQgd2l0aCAtLXJlbW92ZSIKKyN+IG1zZ3N0ciAiJXM6IC0tc2VjdGlvbiBpZ25vcmVkIHdpdGggLS1yZW1vdmUiCisKKyN+IG1zZ2lkICIlczogLS1kZXNjcmlwdGlvbiBpZ25vcmVkIHdpdGggLS1yZW1vdmUiCisjfiBtc2dzdHIgIiVzOiAtLWRlc2NyaXB0aW9uIGlnbm9yZWQgd2l0aCAtLXJlbW92ZSIKKworI34gbXNnaWQgImludmFsaWQgaW5mbyBlbnRyeSIKKyN+IG1zZ3N0ciAi4KiX4Kiy4KikIOConOCovuCoo+ColeCovuCosOCpgCDgqIfgqbDgqKbgqLDgqL7gqJzgqLwiCisKKyN+IG1zZ2lkICJ0cnkgZGVsZXRpbmcgJXM/IgorI34gbXNnc3RyICLgqJXgqYAgJXMg4Ki54Kif4Ki+4KiJ4KijIOCopuCpgCDgqJXgqYvgqLjgqLzgqL/gqLjgqLwg4KiV4Kiw4Kio4KmAIOCoueCpiD8iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcmVhZCAlczogJWQiCisjfiBtc2dzdHIgIiVzIOCoquCpnOCpjeCoueCoqCDgqLLgqIgg4KiF4Ki44Kir4Ki84KiyOiAlZCIKKworI34gbXNnaWQgImRiZzogJXMiCisjfiBtc2dzdHIgImRiZzogJXMiCisKKyN+IG1zZ2lkICJTeXN0ZW0gZXJyb3Igbm8uJWQiCisjfiBtc2dzdHIgIuCouOCov+CouOCon+CoriDgqJfgqLLgqKTgqYAg4Kio4KmwOiAlZCIKKworI34gbXNnaWQgIlNpZ25hbCBuby4lZCIKKyN+IG1zZ3N0ciAi4Ki44Ki/4KiX4Kio4KiyIOCoqOCpsC4lZCIKKworI34gbXNnaWQgIiIKKyN+ICJcbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDE5OTYgS2ltLU1pbmggS2FwbGFuLiIKKyN+IG1zZ3N0ciAiIgorI34gIlxuIgorI34gIkNvcHlyaWdodCAoQykgMTk5NiBLaW0tTWluaCBLYXBsYW4uIgorCisjfiBtc2dpZCAiIgorI34gIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSBbLS1dIFs8ZGlybmFtZT5dXG4iCisjfiAiXG4iCisjfiAiT3B0aW9uczpcbiIKKyN+ICIgIC0tdW5zYWZlICAgICBzZXQgc29tZSBhZGRpdGlvbmFsIHBvc3NpYmx5IHVzZWZ1bCBvcHRpb25zLlxuIgorI34gIiAgICAgICAgICAgICAgIHdhcm5pbmc6IHRoaXMgb3B0aW9uIG1heSBnYXJibGUgYW4gb3RoZXJ3aXNlIGNvcnJlY3QgIgorI34gImZpbGUuXG4iCisjfiAiICAtLWhlbHAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyN+ICIgIC0tdmVyc2lvbiAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorI34gbXNnc3RyICIiCisjfiAiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIFstLV0gWzxkaXJuYW1lPl1cbiIKKyN+ICJcbiIKKyN+ICJPcHRpb25zOlxuIgorI34gIiAgLS11bnNhZmUgICAgIHNldCBzb21lIGFkZGl0aW9uYWwgcG9zc2libHkgdXNlZnVsIG9wdGlvbnMuXG4iCisjfiAiICAgICAgICAgICAgICAgd2FybmluZzogdGhpcyBvcHRpb24gbWF5IGdhcmJsZSBhbiBvdGhlcndpc2UgY29ycmVjdCAiCisjfiAiZmlsZS5cbiIKKyN+ICIgIC0taGVscCAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorI34gIiAgLS12ZXJzaW9uICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisKKyN+IG1zZ2lkICJ0cnkgZGVsZXRpbmcgJXMiCisjfiBtc2dzdHIgIiVzIOCoueCon+CovuCoieCooyDgqKbgqYAg4KiV4KmL4Ki44Ki84Ki/4Ki44Ki8IOConOCovuCosOCpgCIKKworI34gbXNnaWQgIiVzIC0gc3RhdHVzIGlzICVzLiIKKyN+IG1zZ3N0ciAiJXMgLSDgqLngqL7gqLLgqKQgJXMg4Ki54KmI4KWkIgorCisjfiBtc2dpZCAiIGxpbmsgdW5yZWFkYWJsZSAtICVzIgorI34gbXNnc3RyICIg4Ki44Kis4Kmw4KinIOCoquCpnOCpjeCoueCoqOCor+Cpi+ColyDgqKjgqLngqYDgqIIgLSAlcyIKKworI34gbXNnaWQgIm1pc3NpbmcgbmV3bGluZSBhZnRlciAlcyIKKyN+IG1zZ3N0ciAi4Kio4Ki14KmA4KiCLeCosuCovuCoh+CoqCAlcyDgqKzgqL7gqIXgqKYg4Kiu4KmM4Kic4KmC4KimIOCoqOCoueCpgOCogiIKKworI34gbXNnaWQgIlNlcmlvdXMgcHJvYmxlbTogJXMiCisjfiBtc2dzdHIgIuCol+CpsOCoreCpgOCosCDgqLjgqK7gqbHgqLjgqL/gqIY6ICVzIgorCisjfiBtc2dpZCAidG8iCisjfiBtc2dzdHIgIuCoteCpseCosiIKKworI34gbXNnaWQgImZyb20iCisjfiBtc2dzdHIgIuCopOCpi+CogiIKKworI34gbXNnaWQgImVycm9yIHJlYWRpbmcgJXMiCisjfiBtc2dzdHIgIiVzIOCoquCpnOCpjeCoueCoqCDgqKbgqYzgqLDgqL7gqKgg4KiX4Kiy4Kik4KmAIgorCisjfiBtc2dpZCAibWFuZmxhZyIKKyN+IG1zZ3N0ciAibWFuZmxhZyIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvcG8vcGwuZ21vIGIvZHBrZy0xLjE2LjEuMS9wby9wbC5nbW8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjYwZmMxMgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvcG8vcGwuZ21vCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvcG8vcGwucG8gYi9kcGtnLTEuMTYuMS4xL3BvL3BsLnBvCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjA3ZjQyOTkKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3BvL3BsLnBvCkBAIC0wLDAgKzEsNjkzOSBAQAorIyBQb2xpc2ggdHJhbnNsYXRpb24gb2YgZHBrZworIyBDb3B5cmlnaHQgKEMpIDE5OTkgU29mdHdhcmUgaW4gdGhlIFB1YmxpYyBJbnRlcmVzdCwgSW5jLgorIyBQaW90ciBSb3N6YXR5Y2tpIDxkZXh0ZXJAZGViaWFuLm9yZz4sIDE5OTkuCisjIEJhcnRvc3ogRmXFhHNraSA8ZmVuaW9AZGViaWFuLm9yZz4sIDIwMDQtMjAwNQorIyBSb2JlcnQgTHViZXJkYSA8cm9iZXJ0QGRlYmlhbi5vcmc+LCAyMDA2LTIwMDgKKyMgV2lrdG9yIFdhbmRhY2hvd2ljeiA8c2lyeWVzQGdtYWlsLmNvbT4sIDIwMDgtMjAwOQorIworIyBOYXpld25pY3R3byBpIHNww7Nqbm/Fm8SHIHTFgnVtYWN6ZcWEIHByb2dyYW3Ds3cgYXB0LCBhcHRpdHVkZSwgc3luYXB0aWMgaSBpbm55Y2g6CisjIGh0dHA6Ly93aWtpLmRlYmlhbi5vcmcvUG9saXNoTDEwTi9QYWNrYWdlSW5zdGFsbGVycworbXNnaWQgIiIKK21zZ3N0ciAiIgorIlByb2plY3QtSWQtVmVyc2lvbjogZHBrZyAxLjE1LjRcbiIKKyJSZXBvcnQtTXNnaWQtQnVncy1UbzogZGViaWFuLWRwa2dAbGlzdHMuZGViaWFuLm9yZ1xuIgorIlBPVC1DcmVhdGlvbi1EYXRlOiAyMDExLTEwLTE0IDA3OjExKzAyMDBcbiIKKyJQTy1SZXZpc2lvbi1EYXRlOiAyMDA5LTExLTE0IDE3OjQ1KzAxMDBcbiIKKyJMYXN0LVRyYW5zbGF0b3I6IFdpa3RvciBXYW5kYWNob3dpY3ogPHNpcnllc0BnbWFpbC5jb20+XG4iCisiTGFuZ3VhZ2UtVGVhbTogUG9saXNoIDxkZWJpYW4tbDEwLW4tcG9saXNoQGxpc3RzLmRlYmlhbi5vcmc+XG4iCisiTGFuZ3VhZ2U6IHBsXG4iCisiTUlNRS1WZXJzaW9uOiAxLjBcbiIKKyJDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9VVRGLThcbiIKKyJDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiA4Yml0XG4iCisiUGx1cmFsLUZvcm1zOiBucGx1cmFscz0zOyBwbHVyYWw9bj09MSA/IDAgOiBuJTEwPj0yICYmIG4lMTA8PTQgJiYgKG4lMTAwPDEwICIKKyJ8fCBuJTEwMD49MjApID8gMSA6IDI7XG4iCisKKyM6IGxpYi9kcGtnL2FyLmM6NjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgJyVjJyBpbiBhcmNoaXZlICclLjI1MHMnIG1lbWJlciAnJS4xNnMnIHNpemUiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvYXIuYzo4MSBsaWIvZHBrZy9hci5jOjk3IGxpYi9kcGtnL2FyLmM6MTA4IGxpYi9kcGtnL2FyLmM6MTEyCisjOiBsaWIvZHBrZy9hci5jOjEzNCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE1NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIGZpbGUgJyVzJyIKK21zZ3N0ciAibmllIG1vxbxuYSBvdHdvcnp5xIcgcGxpa3Ugxbpyw7NkxYJvd2VnbyBcIiUuMjU1c1wiIgorCisjOiBsaWIvZHBrZy9hci5jOjk0CisjLCBjLWZvcm1hdAorbXNnaWQgImdlbmVyYXRlZCBjb3JydXB0IGFyIGhlYWRlciBmb3IgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9hci5jOjEyMworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIGZzdGF0IHRtcGZpbGUgKGRhdGEpIgorbXNnaWQgImZhaWxlZCB0byBmc3RhdCBhciBtZW1iZXIgZmlsZSAoJXMpIgorbXNnc3RyICJuaWUgbW/FvG5hIHVzdGFsacSHIHN0YW51IHR5bWN6YXNvd2VnbyBwbGlrdSAoc2VrY2phIGRhdGEpIgorCisjOiBsaWIvZHBrZy9hci5jOjEzMAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIGZzdGF0IHRtcGZpbGUgKGRhdGEpIgorbXNnaWQgImFyIG1lbWJlciBmaWxlICglcykiCittc2dzdHIgIm5pZSBtb8W8bmEgdXN0YWxpxIcgc3RhbnUgdHltY3phc293ZWdvIHBsaWt1IChzZWtjamEgZGF0YSkiCisKKyM6IGxpYi9kcGtnL2J1ZmZlci5jOjE5NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgb24gYnVmZmVyIGNvcHkgZm9yICVzIgorbXNnc3RyICJixYLEhWQgdyBidWZmZXJfY29weSAoJXMpIgorCisjOiBsaWIvZHBrZy9idWZmZXIuYzoyMTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCBpbiB3cml0ZSBvbiBidWZmZXIgY29weSBmb3IgJXMiCittc2dzdHIgImLFgsSFZCB3IGJ1ZmZlcl9jb3B5ICglcykiCisKKyM6IGxpYi9kcGtnL2J1ZmZlci5jOjIyMAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAic2hvcnQgcmVhZCBvbiBidWZmZXIgY29weSBmb3IgJXMiCittc2dzdHIgImtyw7N0a2kgb2Rjenl0IHcgYnVmZmVyX2NvcHkgKCVzKSIKKworIzogbGliL2Rwa2cvYnVmZmVyLmM6Mjg4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyB0YXIiCittc2dpZCAiZmFpbGVkIHRvIHNlZWsgJXMiCittc2dzdHIgIm5pZSBtb8W8bmEgd3l3b8WCYcSHIFwidGFyXCIiCisKKyM6IGxpYi9kcGtnL2NvbW1hbmQuYzoxNzggbGliL2Rwa2cvY29tbWFuZC5jOjIwNCBzcmMvaGVscC5jOjYyMQorIzogc3JjL3Byb2Nlc3NhcmMuYzo5OCBzcmMvcHJvY2Vzc2FyYy5jOjEzOCBzcmMvcHJvY2Vzc2FyYy5jOjQzMgorIzogc3JjL3Byb2Nlc3NhcmMuYzo4MzkgZHBrZy1kZWIvYnVpbGQuYzo0NTkgZHBrZy1kZWIvYnVpbGQuYzo1MzgKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTYxIGRwa2ctZGViL2V4dHJhY3QuYzozMTcgZHBrZy1kZWIvaW5mby5jOjY1CisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6NjkgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQ1NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGV4ZWN1dGUgJXMgKCVzKSIKK21zZ3N0ciAibmllIG1vxbxuYSB3eWtvbmHEhyAlcyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzo4MworIywgYy1mb3JtYXQKK21zZ2lkICIlczogZGVjb21wcmVzc2lvbiIKK21zZ3N0ciAiJXM6IGRla29tcHJlc2phIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjg5CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBjb21wcmVzc2lvbiIKK21zZ3N0ciAiJXM6IGtvbXByZXNqYSIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yIGJpbmRpbmcgaW5wdXQgdG8gZ3ppcCBzdHJlYW0iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxMjQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHJlYWQgZXJyb3I6ICclcyciCittc2dzdHIgIiVzOiB3ZXduxJl0cnpueSBixYLEhWQgZ3ppcDogXCIlc1wiIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjEzMiBsaWIvZHBrZy9jb21wcmVzcy5jOjEzNgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgd3JpdGUgZXJyb3IiCittc2dzdHIgIiVzOiB3ZXduxJl0cnpueSBixYLEhWQgZ3ppcDogXCIlc1wiIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE1MAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZXJyb3IgYmluZGluZyBvdXRwdXQgdG8gZ3ppcCBzdHJlYW0iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxNTcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHJlYWQgZXJyb3IiCittc2dzdHIgIiVzOiB3ZXduxJl0cnpueSBixYLEhWQgZ3ppcDogXCIlc1wiIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE2NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgd3JpdGUgZXJyb3I6ICclcyciCittc2dzdHIgIiVzOiB3ZXduxJl0cnpueSBixYLEhWQgZ3ppcDogXCIlc1wiIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE4MAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgd3JpdGUgZXJyb3I6ICVzIgorbXNnc3RyICIlczogd2V3bsSZdHJ6bnkgYsWCxIVkIGd6aXA6IFwiJXNcIiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyMjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yIGJpbmRpbmcgaW5wdXQgdG8gYnppcDIgc3RyZWFtIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjMyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgcmVhZCBlcnJvcjogJyVzJyIKK21zZ3N0ciAiJXM6IHdld27EmXRyem55IGLFgsSFZCBiemlwMjogXCIlc1wiIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI0MCBsaWIvZHBrZy9jb21wcmVzcy5jOjI0NCBsaWIvZHBrZy9jb21wcmVzcy5jOjI5NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIHdyaXRlIGVycm9yIgorbXNnc3RyICIlczogd2V3bsSZdHJ6bnkgYsWCxIVkIGJ6aXAyOiBcIiVzXCIiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjU4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvciBiaW5kaW5nIG91dHB1dCB0byBiemlwMiBzdHJlYW0iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyNjUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiByZWFkIGVycm9yIgorbXNnc3RyICIlczogd2V3bsSZdHJ6bnkgYsWCxIVkIGJ6aXAyOiBcIiVzXCIiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6Mjc1IGxpYi9kcGtnL2NvbXByZXNzLmM6Mjg2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgd3JpdGUgZXJyb3I6ICclcyciCittc2dzdHIgIiVzOiB3ZXduxJl0cnpueSBixYLEhWQgYnppcDI6IFwiJXNcIiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyODIKK21zZ2lkICJ1bmV4cGVjdGVkIGJ6aXAyIGVycm9yIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVwZGF0ZXMgZGlyZWN0b3J5IGNvbnRhaW5zIGZpbGUgYCUuMjUwcycgd2hvc2UgbmFtZSBpcyB0b28gbG9uZyAobGVuZ3RoPSVkLCAiCisibWF4PSVkKSIKK21zZ3N0ciAiIgorImthdGFsb2cgXCJ1cGRhdGVzXCIgemF3aWVyYSBwbGlrIFwiJS4yNTBzXCIgbyB6Ynl0IGTFgnVnaWVqIG5hendpZSAoZMWCdWdvxZvEhz0iCisiJWQsIG1ha3N5bWFsbmllPSVkKSIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzo3MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidXBkYXRlcyBkaXJlY3RvcnkgY29udGFpbnMgZmlsZXMgd2l0aCBkaWZmZXJlbnQgbGVuZ3RoIG5hbWVzIChib3RoICVkIGFuZCAlZCkiCittc2dzdHIgIiIKKyJrYXRhbG9nIFwidXBkYXRlc1wiIHphd2llcmEgcGxpa2kgeiBuYXp3YW1pIG8gcsOzxbxuZWogZMWCdWdvxZtjaSAoJWQgb3JheiAlZCkiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHNjYW4gdXBkYXRlcyBkaXJlY3RvcnkgYCUuMjU1cyciCittc2dzdHIgIm5pZSBtb8W8bmEgcHJ6ZXN6dWthxIcga2F0YWxvZ3UgXCJ1cGRhdGVzXCIgJS4yNTVzIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVtb3ZlIGluY29ycG9yYXRlZCB1cGRhdGUgZmlsZSAlLjI1NXMiCittc2dzdHIgIm5pZSBtb8W8bmEgdXN1bsSFxIcgcGxpa3UgJS4yNTVzIHoga2F0YWxvZ3UgXCJ1cGRhdGVzXCIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTIxIGRwa2ctZGViL2J1aWxkLmM6NDQ3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgYCUuMjU1cyciCittc2dzdHIgIm5pZSBtb8W8bmEgdXR3b3J6ecSHIFwiJS4yNTVzXCIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTI1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmaWxsICUuMjUwcyB3aXRoIHBhZGRpbmciCittc2dzdHIgIm5pZSBtb8W8bmEgd3lwZcWCbmnEhyBwbGlrdSAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTI3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCAlLjI1MHMgYWZ0ZXIgcGFkZGluZyIKK21zZ3N0ciAibmllIG1vxbxuYSBvcHLDs8W8bmnEhyBidWZvcsOzdyBwbGlrdSAlLjI1MHMgcG8gamVnbyB3eXBlxYJuaWVuaXUiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTI5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWVrIHRvIHN0YXJ0IG9mICUuMjUwcyBhZnRlciBwYWRkaW5nIgorbXNnc3RyICJuaWUgbW/FvG5hIHByemV3aW7EhcSHIG5hIHBvY3rEhXRlayBwbGlrdSAlLjI1MHMgcG8gamVnbyB3eXBlxYJuaWVuaXUiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTk1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIlczogdW5hYmxlIHRvIG9wZW4gY29uZmZpbGUgJXMgZm9yIGhhc2g6ICVzIgorbXNnaWQgInVuYWJsZSB0byBvcGVuIGxvY2sgZmlsZSAlcyBmb3IgdGVzdGluZyIKK21zZ3N0ciAiIgorIiVzOiBuaWUgbW/FvG5hIG90d29yennEhyBwbGlrdSBrb25maWd1cmFjeWpuZWdvICVzIGRsYSBzcHJhd2R6ZW5pYSBzdW15ICIKKyJrb250cm9sbmVqOiAlcyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyMjEKK21zZ2lkICJ1bmFibGUgdG8gb3Blbi9jcmVhdGUgc3RhdHVzIGRhdGFiYXNlIGxvY2tmaWxlIgorbXNnc3RyICJuaWUgbW/FvG5hIG90d29yennEhy91dHdvcnp5xIcgcGxpa3UgYmxva3VqxIVjZWdvIGJhesSZIGRhbnljaCBzdGFudSBkcGtnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjIzMQorbXNnaWQgInlvdSBkbyBub3QgaGF2ZSBwZXJtaXNzaW9uIHRvIGxvY2sgdGhlIGRwa2cgc3RhdHVzIGRhdGFiYXNlIgorbXNnc3RyICJicmFrIHByYXcgZG8gemFibG9rb3dhbmlhIGJhenkgZGFueWNoIHN0YW51IGRwa2ciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjMzCisjLCBmdXp6eQorI3wgbXNnaWQgInVuYWJsZSB0byBsb2NrIGRwa2cgc3RhdHVzIGRhdGFiYXNlIgorbXNnaWQgImRwa2cgc3RhdHVzIGRhdGFiYXNlIgorbXNnc3RyICJuaWUgbW/FvG5hIHphYmxva293YcSHIGJhenkgZGFueWNoIHN0YW51IGRwa2ciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjU3Cittc2dpZCAicmVxdWVzdGVkIG9wZXJhdGlvbiByZXF1aXJlcyBzdXBlcnVzZXIgcHJpdmlsZWdlIgorbXNnc3RyICLFvMSFZGFuYSBvcGVyYWNqYSB3eW1hZ2EgdXByYXduaWXFhCBhZG1pbmlzdHJhdG9yYSIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyNjIKK21zZ2lkICJ1bmFibGUgdG8gYWNjZXNzIGRwa2cgc3RhdHVzIGFyZWEiCittc2dzdHIgImJyYWsgZG9zdMSZcHUgZG8gc2VrY2ppIHN0YW51IGRwa2ciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjY0Cittc2dpZCAib3BlcmF0aW9uIHJlcXVpcmVzIHJlYWQvd3JpdGUgYWNjZXNzIHRvIGRwa2cgc3RhdHVzIGFyZWEiCittc2dzdHIgIm9wZXJhY2phIHd5bWFnYSB1cHJhd25pZcWEIHphcGlzdS9vZGN6eXR1IHNla2NqaSBzdGFudSBkcGtnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjMwOQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVtb3ZlIG15IG93biB1cGRhdGUgZmlsZSAlLjI1NXMiCittc2dzdHIgIm5pZSBtb8W8bmEgdXN1bsSFxIcgdWFrdHVhbG5pb25lZ28gcGxpa3UgJS4yNTVzIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM0NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgIm5pZSBtb8W8bmEgemFwaXNhxIcgdWFrdHVhbG5pb25lZ28gcGxpa3UgXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNDkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJuaWUgbW/FvG5hIG9wcsOzxbxuacSHIGJ1Zm9yw7N3IHVha3R1YWxuaW9uZWdvIHBsaWt1IFwiJS4yNTBzXCIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzUxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB0cnVuY2F0ZSBmb3IgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgIm5pZSBtb8W8bmEgb2JjacSFxIcgdWFrdHVhbG5pb25lZ28gcGxpa3UgXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZzeW5jIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJuaWUgbW/FvG5hIHpzeW5jaHJvbml6b3dhxIcgdWFrdHVhbG5pb25lZ28gcGxpa3UgXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJuaWUgbW/FvG5hIHphbWtuxIXEhyB1YWt0dWFsbmlvbmVnbyBwbGlrdSBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM1OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAibmllIG1vxbxuYSB6YWluc3RhbG93YcSHIHVha3R1YWxuaW9uZWdvIHBsaWt1IFwiJS4yNTBzXCIiCisKKyM6IGxpYi9kcGtnL2Rpci5jOjUwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gcmVhZCBmaWxlZGVzY3JpcHRvciBmbGFncyBmb3IgJS4yNTBzIgorbXNnaWQgInVuYWJsZSB0byBnZXQgZmlsZSBkZXNjcmlwdG9yIGZvciBkaXJlY3RvcnkgJyVzJyIKK21zZ3N0ciAibmllIG1vxbxuYSBvZGN6eXRhxIcgZmxhZyBkZXNrcnlwdG9yYSBwbGlrdSBkbGEgXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvZGlyLmM6NTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzeW5jIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICJuaWUgbW/FvG5hIG90d29yennEhyBwbGlrdSDFunLDs2TFgm93ZWdvIFwiJS4yNTVzXCIiCisKKyM6IGxpYi9kcGtnL2Rpci5jOjY5IGxpYi9kcGtnL2Rpci5jOjEzMQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gZGlyZWN0b3J5ICclcyciCittc2dzdHIgIm5pZSBtb8W8bmEgb3R3b3J6ecSHIHBsaWt1IMW6csOzZMWCb3dlZ28gXCIlLjI1NXNcIiIKKworIzogbGliL2Rwa2cvZGlyLmM6MTA5IHNyYy9kaXZlcnRjbWQuYzoyMTggZHBrZy1zcGxpdC9zcGxpdC5jOjIwMgorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyOTMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIGZpbGUgJyVzJyIKK21zZ3N0ciAibmllIG1vxbxuYSBvdHdvcnp5xIcgcGxpa3Ugxbpyw7NkxYJvd2VnbyBcIiUuMjU1c1wiIgorCisjOiBsaWIvZHBrZy9kaXIuYzoxMTEgc3JjL2RpdmVydGNtZC5jOjIzMiBzcmMvZGl2ZXJ0Y21kLmM6Mzc3CisjOiBzcmMvc3RhdGNtZC5jOjIxNyBkcGtnLWRlYi9idWlsZC5jOjU5OCBkcGtnLXNwbGl0L2pvaW4uYzo2NQorIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE4NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTQwNgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgZmlsZSAnJXMnIgorbXNnc3RyICJuaWUgbW/FvG5hIG90d29yennEhyBwbGlrdSDFunLDs2TFgm93ZWdvIFwiJS4yNTVzXCIiCisKKyM6IGxpYi9kcGtnL2Rpci5jOjExMyBzcmMvZGl2ZXJ0Y21kLmM6MjM0IHNyYy9kaXZlcnRjbWQuYzozNzkKKyM6IGRwa2ctZGViL2J1aWxkLmM6NjAwIGRwa2ctc3BsaXQvam9pbi5jOjY3IGRwa2ctc3BsaXQvcXVldWUuYzoxODkKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzE0IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNDA4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgZmlsZSAnJXMnIgorbXNnc3RyICJuaWUgbW/FvG5hIHVzdGFsacSHIHN0YW51IHBsaWt1IGN6xJnFm2NpIFwiJS4yNTBzXCIiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzozOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIGRldGFpbHMgb2YgYCUuNTBzJyB0byBgJS4yNTBzJyIKK21zZ3N0ciAibmllIG1vxbxuYSB6YXBpc2HEhyBzemN6ZWfDs8WCw7N3IG8gXCIlLjUwc1wiIHcgXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQyMworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gJyVzJyBmb3Igd3JpdGluZyAlcyBkYXRhYmFzZSIKK21zZ3N0ciAibmllIG1vxbxuYSBvdHdvcnp5xIcgXCIlLjI1MHNcIiB3IGNlbHUgemFwaXNhbmlhIGluZm9ybWFjamkgJXMiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0MjYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgYnVmZmVyaW5nIG9uICVzIGRhdGFiYXNlIGZpbGUiCittc2dzdHIgIm5pZSBtb8W8bmEgdXN0YXdpxIcgYnVmb3Jvd2FuaWEgcGxpa3Ugc3RhdHVzdSIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQzOAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlICVzIGRhdGFiYXNlIHJlY29yZCBhYm91dCAnJS41MHMnIHRvICclLjI1MHMnIgorbXNnc3RyICJuaWUgbW/FvG5hIHphcGlzYcSHIHJla29yZHUgXCIlc1wiIGRvdHljesSFY2VnbyBcIiUuNTBzXCIgdyBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDQ2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZmx1c2ggJXMgZGF0YWJhc2UgdG8gJyUuMjUwcyciCittc2dzdHIgIm5pZSBtb8W8bmEgb3Byw7PFvG5pxIcgYnVmb3LDs3cgaW5mb3JtYWNqaSAlcyB3IFwiJS4yNTBzXCIiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NDgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBmc3luYyAlcyBkYXRhYmFzZSB0byAnJS4yNTBzJyIKK21zZ3N0ciAibmllIG1vxbxuYSB6c3luY2hyb25pem93YcSHIGluZm9ybWFjamkgJXMgdyBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDUxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2xvc2UgJyUuMjUwcycgYWZ0ZXIgd3JpdGluZyAlcyBkYXRhYmFzZSIKK21zZ3N0ciAibmllIG1vxbxuYSB6YW1rbsSFxIcgXCIlLjI1MHNcIiBwbyB6YXBpc2FuaXUgaW5mb3JtYWNqaSAlcyIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ1NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGxpbmsgJyUuMjUwcycgdG8gJyUuMjUwcycgZm9yIGJhY2t1cCBvZiAlcyBkYXRhYmFzZSIKK21zZ3N0ciAiIgorIm5pZSBtb8W8bmEgdXR3b3J6ecSHIGRvd2nEhXphbmlhIHogXCIlLjI1MHNcIiBkbyBcIiUuMjUwc1wiLCBhYnkgcHJ6ZWNob3dhxIcgIgorImluZm9ybWFjasSZICVzIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDU4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gaW5zdGFsbCAnJS4yNTBzJyBhcyAnJS4yNTBzJyBjb250YWluaW5nICVzIGRhdGFiYXNlIgorbXNnc3RyICIiCisibmllIG1vxbxuYSBixYLEhWQgemFpbnN0YWxvd2HEhyBcIiUuMjUwc1wiIGpha28gXCIlLjI1MHNcIiBvIHphd2FydGVqIGluZm9ybWFjamkgIgorIiVzIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6OTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiB1bnJlY292ZXJhYmxlIGZhdGFsIGVycm9yLCBhYm9ydGluZzpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorIiVzOiBuaWVuYXByYXdpYWxueSBixYLEhWQga3J5dHljem55LCBwcnplcnl3YW5pZTpcbiIKKyIgJXNcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjEwMAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiVzOiB1bnJlY292ZXJhYmxlIGZhdGFsIGVycm9yLCBhYm9ydGluZzpcbiIKKyN8ICIgJXNcbiIKK21zZ2lkICIiCisiJXM6IG91dHNpZGUgZXJyb3IgY29udGV4dCwgYWJvcnRpbmc6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKyIlczogbmllbmFwcmF3aWFsbnkgYsWCxIVkIGtyeXR5Y3pueSwgcHJ6ZXJ5d2FuaWU6XG4iCisiICVzXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoxMjAKKyMsIGZ1enp5CisjfCBtc2dpZCAib3V0IG9mIG1lbW9yeSBmb3IgbmV3IGNsZWFudXAgZW50cnkiCittc2dpZCAib3V0IG9mIG1lbW9yeSBmb3IgbmV3IGVycm9yIGNvbnRleHQiCittc2dzdHIgImJyYWsgcGFtacSZY2kgbmEgbm93xIUgcG96eWNqxJkgZGxhIG9ic8WCdWdpIGN6eXN6Y3plbmlhIMWbcm9kb3dpc2thIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MTgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogZXJyb3Igd2hpbGUgY2xlYW5pbmcgdXA6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKyIlczogYsWCxIVkIHBvZGN6YXMgY3p5c3pjemVuaWEgxZtyb2Rvd2lza2E6XG4iCisiICVzXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoyMDEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImRwa2c6IHRvbyBtYW55IG5lc3RlZCBlcnJvcnMgZHVyaW5nIGVycm9yIHJlY292ZXJ5ICEhXG4iCittc2dpZCAiJXM6IHRvbyBtYW55IG5lc3RlZCBlcnJvcnMgZHVyaW5nIGVycm9yIHJlY292ZXJ5ISFcbiIKK21zZ3N0ciAiZHBrZzogemEgZHXFvG8gb3NhZHpvbnljaCBixYLEmWTDs3cgcG9kY3phcyBvYnPFgnVnaSBixYLEmWR1ISFcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjI2OCBsaWIvZHBrZy9laGFuZGxlLmM6MzA3Cittc2dpZCAib3V0IG9mIG1lbW9yeSBmb3IgbmV3IGNsZWFudXAgZW50cnkiCittc2dzdHIgImJyYWsgcGFtacSZY2kgbmEgbm93xIUgcG96eWNqxJkgZGxhIG9ic8WCdWdpIGN6eXN6Y3plbmlhIMWbcm9kb3dpc2thIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MjkxCittc2dpZCAib3V0IG9mIG1lbW9yeSBmb3IgbmV3IGNsZWFudXAgZW50cnkgd2l0aCBtYW55IGFyZ3VtZW50cyIKK21zZ3N0ciAiIgorImJyYWsgcGFtacSZY2kgbmEgbm93xIUgcG96eWNqxJkgeiBhcmd1bWVudGFtaSBkbGEgb2JzxYJ1Z2kgY3p5c3pjemVuaWEgxZtyb2Rvd2lza2EiCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzozNTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiVzOiB3YXJuaW5nOiAlc1xuIgorbXNnaWQgIiVzOiBlcnJvcjogJXNcbiIKK21zZ3N0ciAiJXM6IG9zdHJ6ZcW8ZW5pZTogJXNcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjM5MworIywgYy1mb3JtYXQKK21zZ2lkICIlczogd2FybmluZzogJXNcbiIKK21zZ3N0ciAiJXM6IG9zdHJ6ZcW8ZW5pZTogJXNcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjQxNgorIywgYy1mb3JtYXQKK21zZ2lkICIlczolczolZDogaW50ZXJuYWwgZXJyb3I6ICVzXG4iCittc2dzdHIgIiVzOiVzOiVkOiB3ZXduxJl0cnpueSBixYLEhWQ6ICVzXG4iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGlzIG1pc3NpbmciCittc2dzdHIgImJyYWsgJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJgJS4qcycgaXMgbm90IGFsbG93ZWQgZm9yICVzIgorbXNnaWQgIiclLjUwcycgaXMgbm90IGFsbG93ZWQgZm9yICVzIgorbXNnc3RyICJcIiUuKnNcIiBqZXN0IG5pZWRvendvbG9ueSBkbGEgJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjczCisjLCBjLWZvcm1hdAorbXNnaWQgImp1bmsgYWZ0ZXIgJXMiCittc2dzdHIgIsWbbWllY2kgcG8gJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjg3CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgcGFja2FnZSBuYW1lICglLjI1MHMpIgorbXNnc3RyICJuaWVwb3ByYXduYSBuYXp3YSBwYWtpZXR1ICglLjI1MHMpIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZW1wdHkgZmlsZSBkZXRhaWxzIGZpZWxkIGAlcyciCittc2dzdHIgInB1c3RlIHBvbGUgb3Bpc3UgcGxpa3UgXCIlc1wiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBkZXRhaWxzIGZpZWxkIGAlcycgbm90IGFsbG93ZWQgaW4gc3RhdHVzIGZpbGUiCittc2dzdHIgInBvbGUgb3Bpc3UgcGxpa3UgXCIlc1wiIGplc3QgbmllZG96d29sb25lIHcgcGxpa3Ugc3RhdHVzdSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTE4CisjLCBjLWZvcm1hdAorbXNnaWQgInRvbyBtYW55IHZhbHVlcyBpbiBmaWxlIGRldGFpbHMgZmllbGQgYCVzJyAoY29tcGFyZWQgdG8gb3RoZXJzKSIKK21zZ3N0ciAiemEgZHXFvG8gZGFueWNoIHcgcG9sdSBvcGlzdSBwbGlrdSBcIiVzXCIgKHcgcG9yw7N3bmFuaXUgeiBpbm55bWkpIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAidG9vIGZldyB2YWx1ZXMgaW4gZmlsZSBkZXRhaWxzIGZpZWxkIGAlcycgKGNvbXBhcmVkIHRvIG90aGVycykiCittc2dzdHIgInphIG1hxYJvIGRhbnljaCB3IHBvbHUgb3Bpc3UgcGxpa3UgXCIlc1wiICh3IHBvcsOzd25hbml1IHogaW5ueW1pKSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTU0Cittc2dpZCAieWVzL25vIGluIGJvb2xlYW4gZmllbGQiCittc2dzdHIgInllcy9ubyB3IHBvbHUgYm9vbGVhbiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTc0Cittc2dpZCAid29yZCBpbiBgcHJpb3JpdHknIGZpZWxkIgorbXNnc3RyICJzxYJvd28gdyBwb2x1IFwicHJpb3JpdHlcIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTg2Cittc2dpZCAidmFsdWUgZm9yIGBzdGF0dXMnIGZpZWxkIG5vdCBhbGxvd2VkIGluIHRoaXMgY29udGV4dCIKK21zZ3N0ciAibmllZG96d29sb25hIHdhcnRvxZvEhyB3IHR5bSBrb250ZWvFm2NpZSBkbGEgcG9sYSBcInN0YXR1c1wiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxOTEKK21zZ2lkICJmaXJzdCAod2FudCkgd29yZCBpbiBgc3RhdHVzJyBmaWVsZCIKK21zZ3N0ciAicGllcndzemUgKHdhbnQpIHPFgm93byB3IHBvbHUgXCJzdGF0dXNcIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTk0Cittc2dpZCAic2Vjb25kIChlcnJvcikgd29yZCBpbiBgc3RhdHVzJyBmaWVsZCIKK21zZ3N0ciAiZHJ1Z2llIChlcnJvcikgc8WCb3dvIHcgcG9sdSBcInN0YXR1c1wiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxOTcKK21zZ2lkICJ0aGlyZCAoc3RhdHVzKSB3b3JkIGluIGBzdGF0dXMnIGZpZWxkIgorbXNnc3RyICJ0cnplY2llIChzdGF0dXMpIHPFgm93byB3IHBvbHUgXCJzdGF0dXNcIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjA3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJlcnJvciBpbiBWZXJzaW9uIHN0cmluZyBgJS4yNTBzJzogJS4yNTBzIgorbXNnaWQgImVycm9yIGluIFZlcnNpb24gc3RyaW5nICclLjI1MHMnIgorbXNnc3RyICJixYLEhWQgdyBwb2x1IFZlcnNpb24gXCIlLjI1MHNcIjogJS4yNTBzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyMTgKK21zZ2lkICJvYnNvbGV0ZSBgUmV2aXNpb24nIG9yIGBQYWNrYWdlLVJldmlzaW9uJyBmaWVsZCB1c2VkIgorbXNnc3RyICIiCisidcW8eXRvIG5pZXd5a29yenlzdHl3YW5lZ28ganXFvCBwb2xhIFwiUmV2aXNpb25cIiBsdWIgXCJQYWNrYWdlLVJldmlzaW9uXCIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjIzNQorbXNnaWQgInZhbHVlIGZvciBgY29uZmlnLXZlcnNpb24nIGZpZWxkIG5vdCBhbGxvd2VkIGluIHRoaXMgY29udGV4dCIKK21zZ3N0ciAid2FydG/Fm8SHIGRsYSBwb2xhIFwiY29uZmlnLXZlcnNpb25cIiBqZXN0IG5pZWRvendvbG9uYSB3IHR5bSBrb250ZWvFm2NpZSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjQwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJlcnJvciBpbiBDb25maWctVmVyc2lvbiBzdHJpbmcgYCUuMjUwcyc6ICUuMjUwcyIKK21zZ2lkICJlcnJvciBpbiBDb25maWctVmVyc2lvbiBzdHJpbmcgJyUuMjUwcyciCittc2dzdHIgImLFgsSFZCB3IHBvbHUgQ29uZmlnLVZlcnNpb24gXCIlLjI1MHNcIjogJS4yNTBzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAidmFsdWUgZm9yIGBjb25mZmlsZXMnIGhhcyBtYWxmb3JtYXR0ZWQgbGluZSBgJS4qcyciCittc2dzdHIgIndhcnRvxZvEhyBkbGEgXCJjb25mZmlsZXNcIiBtYSBuaWVwb3ByYXduxIUgbGluacSZIFwiJS4qc1wiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyODcKKyMsIGMtZm9ybWF0Cittc2dpZCAidmFsdWUgZm9yIGBjb25mZmlsZXMnIGhhcyBsaW5lIHN0YXJ0aW5nIHdpdGggbm9uLXNwYWNlIGAlYyciCittc2dzdHIgIiIKKyJ3YXJ0b8WbxIcgZGxhIFwiY29uZmZpbGVzXCIgbWEgbGluacSZIHJvenBvY3rEmXTEhSBvZCB6bmFrdSBuaWVixJlkxIVjZWdvIHNwYWNqxIUgIgorIlwiJWNcIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MzA0Cittc2dpZCAicm9vdCBvciBudWxsIGRpcmVjdG9yeSBpcyBsaXN0ZWQgYXMgYSBjb25mZmlsZSIKK21zZ3N0ciAia2F0YWxvZyBnxYLDs3dueSBsdWIgcHVzdHkgamVzdCB1xbx5dHkgamFrbyBcImNvbmZmaWxlXCIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjM2NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgbWlzc2luZyBwYWNrYWdlIG5hbWUsIG9yIGdhcmJhZ2Ugd2hlcmUgcGFja2FnZSBuYW1lIGV4cGVjdGVkIgorbXNnc3RyICIiCisicG9sZSBcIiVzXCIsIGJyYWsgbmF6d3kgcGFraWV0dSBsdWIgxZttaWVjaSB3IG1pZWpzY3UsIGdkemllIHNwb2R6aWV3YW5vIHNpxJkgIgorIm5hend5IHBha2lldHUiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjM3MAorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGZpZWxkLCBpbnZhbGlkIHBhY2thZ2UgbmFtZSBgJS4yNTVzJzogJXMiCittc2dzdHIgInBvbGUgXCIlc1wiLCBixYLEmWRuYSBuYXp3YSBwYWtpZXR1IFwiJS4yNTVzXCI6ICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgYmFkIHZlcnNpb24gcmVsYXRpb25zaGlwICVjJWMiCittc2dzdHIgIiIKKyJwb2xlIFwiJXNcIiwgdyBvZG5pZXNpZW5pdSBkbyBcIiUuMjU1c1wiOlxuIgorIiB6xYJ5IG51bWVyIHdlcnNqaSByZWxhY2ppICVjJWMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQxMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOlxuIgorIiBgJWMnIGlzIG9ic29sZXRlLCB1c2UgYCVjPScgb3IgYCVjJWMnIGluc3RlYWQiCittc2dzdHIgIiIKKyJwb2xlIFwiJXNcIiwgdyBvZG5pZXNpZW5pdSBkbyBcIiUuMjU1c1wiOlxuIgorIiBcIiVjXCIgamVzdCBqdcW8IG5pZXd5a29yenlzdHl3YW5lLCBuYWxlxbx5IHXFvHnEhyB3IHphbWlhbiBcIiVjPVwiIGx1YiBcIiVjJWNcIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDIyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6XG4iCisiIGltcGxpY2l0IGV4YWN0IG1hdGNoIG9uIHZlcnNpb24gbnVtYmVyLCBzdWdnZXN0IHVzaW5nIGA9JyBpbnN0ZWFkIgorbXNnc3RyICIiCisicG9sZSBcIiVzXCIsIHcgb2RuaWVzaWVuaXUgZG8gXCIlLjI1NXNcIjpcbiIKKyIgd3lrb3J6eXN0YW55IGplc3Qga29ua3JldG55IG51bWVyIHdlcnNqaSBwcnp5IHBvcsOzd255d2FuaXUsIG5hbGXFvHkgdcW8ecSHIHcgIgorInphbWlhbiBcIj1cIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDMwCittc2dpZCAiT25seSBleGFjdCB2ZXJzaW9ucyBtYXkgYmUgdXNlZCBmb3IgUHJvdmlkZXMiCittc2dzdHIgIlcgcG9sdSBQcm92aWRlcyBtb8W8bmEgdcW8eXdhxIcgd3nFgsSFY3puaWUgZG9rxYJhZG55Y2ggd2Vyc2ppIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgdmVyc2lvbiB2YWx1ZSBzdGFydHMgd2l0aCBub24tYWxwaGFudW1lcmljLCBzdWdnZXN0IGFkZGluZyBhIHNwYWNlIgorbXNnc3RyICIiCisicG9sZSBcIiVzXCIsIHcgb2RuaWVzaWVuaXUgZG8gXCIlLjI1NXNcIjpcbiIKKyIgbnVtZXIgd2Vyc2ppIG5pZSByb3pwb2N6eW5hIHNpxJkgb2Qgem5ha3UgYWxmYW51bWVyeWN6bmVnbywgbmFsZcW8eSBkb2RhxIcgIgorInNwYWNqxJkiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ1MSBsaWIvZHBrZy9maWVsZHMuYzo0NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOiB2ZXJzaW9uIGNvbnRhaW5zIGAlYyciCittc2dzdHIgInBvbGUgXCIlc1wiLCB3IG9kbmllc2llbml1IGRvIFwiJS4yNTVzXCI6IG51bWVyIHdlcnNqaSB6YXdpZXJhIFwiJWNcIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDU5CisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzogdmVyc2lvbiB1bnRlcm1pbmF0ZWQiCittc2dzdHIgInBvbGUgXCIlc1wiLCB3IG9kbmllc2llbml1IGRvIFwiJS4yNTVzXCI6IG51bWVyIHdlcnNqaSBuaWV6YWtvxYRjem9ueSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDY1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6IGVycm9yIGluIHZlcnNpb246ICUuMjU1cyIKK21zZ2lkICInJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gJyUuMjU1cyc6IGVycm9yIGluIHZlcnNpb24iCittc2dzdHIgIiIKKyJwb2xlIFwiJXNcIiwgdyBvZG5pZXNpZW5pdSBkbyBcIiUuMjU1c1wiOiBixYLEhWQgdyBudW1lcnplIHdlcnNqaTogJS4yNTVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBmaWVsZCwgc3ludGF4IGVycm9yIGFmdGVyIHJlZmVyZW5jZSB0byBwYWNrYWdlIGAlLjI1NXMnIgorbXNnc3RyICJwb2xlIFwiJXNcIiwgYsWCxIVkIHNrxYJhZG5pIHBvIG9kbmllc2llbml1IGRvIHBha2lldHUgXCIlLjI1NXNcIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDgyCisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlcyAoYHwnKSBub3QgYWxsb3dlZCBpbiAlcyBmaWVsZCIKK21zZ3N0ciAid3liw7NyIChcInxcIikgbmllZG96d29sb255IGRsYSBwb2xhICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1MzYKK21zZ2lkICJ2YWx1ZSBmb3IgYHRyaWdnZXJzLXBlbmRpbmcnIGZpZWxkIG5vdCBhbGxvd2VkIGluIHRoaXMgY29udGV4dCIKK21zZ3N0ciAid2FydG/Fm8SHIHcgcG9sdSBcInRyaWdnZXJzLXBlbmRpbmdcIiBqZXN0IG5pZWRvendvbG9uYSB3IHR5bSBrb250ZWvFm2NpZSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTQzCisjLCBjLWZvcm1hdAorbXNnaWQgImlsbGVnYWwgcGVuZGluZyB0cmlnZ2VyIG5hbWUgYCUuMjU1cyc6ICVzIgorbXNnc3RyICJuaWVwcmF3aWTFgm93YSBuYXp3YSB6YXBsYW5vd2FuZWdvIHd5endhbGFjemEgXCIlLjI1NXNcIjogJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU0NworIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgcGVuZGluZyB0cmlnZ2VyIGAlLjI1NXMnIgorbXNnc3RyICJwb3dpZWxvbmEgbmF6d2EgemFwbGFub3dhbmVnbyB3eXp3YWxhY3phIFwiJS4yNTVzXCIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU2MQorbXNnaWQgInZhbHVlIGZvciBgdHJpZ2dlcnMtYXdhaXRlZCcgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICJ3YXJ0b8WbxIcgdyBwb2x1IFwidHJpZ2dlcnMtYXdhaXRlZFwiIGplc3QgbmllZG96d29sb25hIHcgdHltIGtvbnRla8WbY2llIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWxsZWdhbCBwYWNrYWdlIG5hbWUgaW4gYXdhaXRlZCB0cmlnZ2VyIGAlLjI1NXMnOiAlcyIKK21zZ3N0ciAibmllcHJhd2lkxYJvd2EgbmF6d2EgcGFraWV0dSB3IG9jemVrdWrEhWN5bSB3eXp3YWxhY3p1IFwiJS4yNTVzXCI6ICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIGF3YWl0ZWQgdHJpZ2dlciBwYWNrYWdlIGAlLjI1NXMnIgorbXNnc3RyICJwb3dpZWxvbnkgcGFraWV0IG9jemVrdWrEhWNlZ28gd3l6d2FsYWN6YSBcIiUuMjU1c1wiIgorCisjOiBsaWIvZHBrZy9maWxlLmM6NTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IHNvdXJjZSBmaWxlICclLjI1MHMnIgorbXNnc3RyICJuaWUgbW/FvG5hIG90d29yennEhyBwbGlrdSDFunLDs2TFgm93ZWdvIFwiJS4yNTVzXCIiCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzo1NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoYW5nZSBvd25lcnNoaXAgb2YgdGFyZ2V0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgIm5pZSBtb8W8bmEgem1pZW5pxIcgd8WCYcWbY2ljaWVsYSBub3dlZ28gcGxpa3Uga29uZmlndXJhY3lqbmVnbyBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy9maWxlLmM6NTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgbW9kZSBvZiB0YXJnZXQgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAibmllIG1vxbxuYSB6bWllbmnEhyB1cHJhd25pZcWEIG5vd2VnbyBwbGlrdSBrb25maWd1cmFjeWpuZWdvIFwiJS4yNTBzXCIiCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzo4NQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIGNsb3NlICVzOiAlcyIKK21zZ2lkICJ1bmFibGUgdG8gdW5sb2NrICVzIgorbXNnc3RyICJuaWUgbW/FvG5hIHphbWtuxIXEhyAlczogJXMiCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzoxMTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGVjayBmaWxlICclcycgbG9jayBzdGF0dXMiCittc2dzdHIgIm5pZSBtb8W8bmEgb3R3b3J6ecSHIHBsaWt1IMW6csOzZMWCb3dlZ28gXCIlLjI1NXNcIiIKKworIzogbGliL2Rwa2cvZmlsZS5jOjE0NgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic3RhdHVzIGRhdGFiYXNlIGFyZWEgaXMgbG9ja2VkIGJ5IGFub3RoZXIgcHJvY2VzcyIKK21zZ2lkICIlcyBpcyBsb2NrZWQgYnkgYW5vdGhlciBwcm9jZXNzIgorbXNnc3RyICJiYXphIGRhbnljaCBzdGFudSBqZXN0IHphYmxva293YW5hIHByemV6IGlubnkgcHJvY2VzIgorCisjOiBsaWIvZHBrZy9maWxlLmM6MTQ4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gY2xvc2UgJXM6ICVzIgorbXNnaWQgInVuYWJsZSB0byBsb2NrICVzIgorbXNnc3RyICJuaWUgbW/FvG5hIHphbWtuxIXEhyAlczogJXMiCisKKyM6IGxpYi9kcGtnL2xvZy5jOjUzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkbid0IG9wZW4gbG9nIGAlcyc6ICVzXG4iCittc2dzdHIgIm5pZSBtb8W8bmEgb3R3b3J6ecSHIHBsaWt1IGR6aWVubmlrYSBcIiVzXCI6ICVzXG4iCisKKyM6IGxpYi9kcGtnL2xvZy5jOjg1Cittc2dpZCAiPHBhY2thZ2Ugc3RhdHVzIGFuZCBwcm9ncmVzcyBmaWxlIGRlc2NyaXB0b3I+IgorbXNnc3RyICI8ZGVza3J5cHRvcmEgcGxpa3UgemUgc3RhdHVzZW0gaSBwb3N0xJlwZW0gcGFraWV0dT4iCisKKyM6IGxpYi9kcGtnL2xvZy5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgdG8gc3RhdHVzIGZkICVkIgorbXNnc3RyICJuaWUgbW/FvG5hIHphcGlzYcSHIHN0YXR1c3UgZG8gZmQgJWQiCisKKyM6IGxpYi9kcGtnL21saWIuYzo0NCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJtYWxsb2MgZmFpbGVkICglbGQgYnl0ZXMpIgorbXNnaWQgIm1hbGxvYyBmYWlsZWQgKCV6dSBieXRlcykiCittc2dzdHIgIm5pZSBtb8W8bmEgd3lrb25hxIcgZnVua2NqaSBcIm1hbGxvY1wiICglbGQgYmFqdMOzdykiCisKKyM6IGxpYi9kcGtnL21saWIuYzo1OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAicmVhbGxvYyBmYWlsZWQgKCVsZCBieXRlcykiCittc2dpZCAicmVhbGxvYyBmYWlsZWQgKCV6dSBieXRlcykiCittc2dzdHIgIm5pZSBtb8W8bmEgd3lrb25hxIcgZnVua2NqaSBcInJlYWxsb2NcIiAoJWxkIGJhanTDs3cpIgorCisjOiBsaWIvZHBrZy9tbGliLmM6NzIgbGliL2Rwa2cvbWxpYi5jOjkwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNzcKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzozMzQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMDcKK21zZ2lkICJmYWlsZWQgdG8gYWxsb2NhdGUgbWVtb3J5IgorbXNnc3RyICJuaWUgbW/FvG5hIHphYWxva293YcSHIHBhbWnEmWNpIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBkdXAgZm9yIHN0ZCVzIgorbXNnc3RyICJuaWUgbW/FvG5hIHd5a29uYcSHIGZ1bmtjamkgXCJkdXBcIiBkbGEgc3RkJXMiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGR1cCBmb3IgZmQgJWQiCittc2dzdHIgIm5pZSBtb8W8bmEgd3lrb25hxIcgZnVua2NqaSBcImR1cFwiIGRsYSBmZCAlZCIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEwOQorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgcGlwZSIKK21zZ3N0ciAibmllIG1vxbxuYSB1dHdvcnp5xIcgcG90b2t1IgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTE3CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHdyaXRpbmcgdG8gJyVzJyIKK21zZ3N0ciAiYsWCxIVkIHphcGlzdSBkbyAnJXMnIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIGZpbGVkZXNjcmlwdG9yIGZsYWdzIGZvciAlLjI1MHMiCittc2dzdHIgIm5pZSBtb8W8bmEgb2Rjenl0YcSHIGZsYWcgZGVza3J5cHRvcmEgcGxpa3UgZGxhIFwiJS4yNTBzXCIiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMjYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNldCBjbG9zZS1vbi1leGVjIGZsYWcgZm9yICUuMjUwcyIKK21zZ3N0ciAibmllIG1vxbxuYSB1c3Rhd2nEhyBmbGFnaSBjbG9zZS1vbi1leGVjIGRsYSBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmlndXJhdGlvbiBlcnJvcjogJXM6JWQ6ICVzIgorbXNnc3RyICJixYLEhWQga29uZmlndXJhY2ppOiAlczolZDogJXMiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzo3NQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiBjb25maWd1cmF0aW9uIGZpbGUgJyUuMjU1cycgZm9yIHJlYWRpbmc6ICVzIgorbXNnc3RyICJuaWUgbW/FvG5hIG90d29yennEhyBkbyBvZGN6eXR1IHBsaWt1IGtvbmZpZ3VyYWN5am5lZ28gXCIlLjI1NXNcIjogJXMiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5iYWxhbmNlZCBxdW90ZXMgaW4gJyVzJyIKK21zZ3N0ciAibmllc3Bhcm93YW5lIGN1ZHp5c8WCb3d5IHcgXCIlc1wiIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTE3CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gb3B0aW9uICclcyciCittc2dzdHIgIm5pZXpuYW5hIG9wY2phIFwiJXNcIiIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjEyMQorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIG5lZWRzIGEgdmFsdWUiCittc2dzdHIgIm9wY2phIFwiJXNcIiB3eW1hZ2EgcG9kYW5pYSB3YXJ0b8WbY2kiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBkb2VzIG5vdCB0YWtlIGEgdmFsdWUiCittc2dzdHIgIm9wY2phIFwiJXNcIiBuaWUgcHJ6eWptdWplIMW8YWRueWNoIHdhcnRvxZtjaSIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjEzMworIywgYy1mb3JtYXQKK21zZ2lkICJyZWFkIGVycm9yIGluIGNvbmZpZ3VyYXRpb24gZmlsZSBgJS4yNTVzJyIKK21zZ3N0ciAiYsWCxIVkIG9kY3p5dHUgcGxpa3Uga29uZmlndXJhY3lqbmVnbyBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgY29uZmlndXJhdGlvbiBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICJixYLEhWQgcHJ6eSB6YW15a2FuaXUgcGxpa3Uga29uZmlndXJhY3lqbmVnbyBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTcwCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIG9wZW5pbmcgY29uZmlndXJhdGlvbiBkaXJlY3RvcnkgJyVzJyIKK21zZ3N0ciAiYsWCxIVkIHByenkgb3R3YXJjaXUga2F0YWxvZ3Uga29uZmlndXJhY2ppIFwiJXNcIiIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjIyOAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiAtLSVzIgorbXNnc3RyICJuaWV6bmFuYSBvcGNqYSAtLSVzIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgb3B0aW9uIHRha2VzIGEgdmFsdWUiCittc2dzdHIgIm9wY2phIC0tJXMgd3ltYWdhIHBvZGFuaWEgd2FydG/Fm2NpIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjM3CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgb3B0aW9uIGRvZXMgbm90IHRha2UgYSB2YWx1ZSIKK21zZ3N0ciAib3BjamEgLS0lcyBuaWUgcHJ6eWptdWplIMW8YWRueWNoIHdhcnRvxZtjaSIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI0NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiAtJWMiCittc2dzdHIgIm5pZXpuYW5hIG9wY2phIC0lYyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI1MAorIywgYy1mb3JtYXQKK21zZ2lkICItJWMgb3B0aW9uIHRha2VzIGEgdmFsdWUiCittc2dzdHIgIm9wY2phIC0lYyB3eW1hZ2EgcG9kYW5pYSB3YXJ0b8WbY2kiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiLSVjIG9wdGlvbiBkb2VzIG5vdCB0YWtlIGEgdmFsdWUiCittc2dzdHIgIm9wY2phIC0lYyBuaWUgcHJ6eWptdWplIMW8YWRueWNoIHdhcnRvxZtjaSIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI3MQorIywgYy1mb3JtYXQKK21zZ2lkICJvYnNvbGV0ZSBvcHRpb24gJy0tJXMnXG4iCittc2dzdHIgIm5pZXd5a29yenlzdHl3YW5hIGp1xbwgb3BjamEgXCItLSVzXCJcbiIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI4NworIywgYy1mb3JtYXQKK21zZ2lkICJjb25mbGljdGluZyBhY3Rpb25zIC0lYyAoLS0lcykgYW5kIC0lYyAoLS0lcykiCittc2dzdHIgImtvbmZsaWt0IG1pxJlkenkgZHppYcWCYW5pZW0gLSVjICgtLSVzKSBpIC0lYyAoLS0lcykiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSB2YWx1ZSBmb3IgYCVzJyBmaWVsZCIKK21zZ3N0ciAicG93aWVsb25hIHdhcnRvxZvEhyBwb2xhIFwiJXNcIiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoxNDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidXNlci1kZWZpbmVkIGZpZWxkIG5hbWUgYCUuKnMnIHRvbyBzaG9ydCIKK21zZ3N0ciAicG9sZSBkZWZpbmlvd2FuZSBwcnpleiB1xbx5dGtvd25pa2EgbWEgemJ5dCBrcsOzdGvEhSBuYXp3xJkgXCIlLipzXCIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MTUyCisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSB2YWx1ZSBmb3IgdXNlci1kZWZpbmVkIGZpZWxkIGAlLipzJyIKK21zZ3N0ciAicG93aWVsb25hIHdhcnRvxZvEhyBwb2xhIGRlZmluaW93YW5lZ28gcHJ6ZXogdcW8eXRrb3duaWthIFwiJS4qc1wiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjIwNworbXNnaWQgIkNvbmZpZ3VyZWQtVmVyc2lvbiBmb3IgcGFja2FnZSB3aXRoIGluYXBwcm9wcmlhdGUgU3RhdHVzIgorbXNnc3RyICJDb25maWd1cmVkLVZlcnNpb24gZGxhIHBha2lldHUgeiBuaWVwcmF3aWTFgm93eW0gc3RhdHVzZW0iCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjE4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgaGFzIHN0YXR1cyAlcyBidXQgdHJpZ2dlcnMgYXJlIGF3YWl0ZWQiCittc2dzdHIgInBha2lldCBtYSBzdGF0dXMgJXMsIGFsZSBzxIUgb2N6ZWt1asSFY2Ugd3l6d2FsYWN6ZSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMjIKK21zZ2lkICJwYWNrYWdlIGhhcyBzdGF0dXMgdHJpZ2dlcnMtYXdhaXRlZCBidXQgbm8gdHJpZ2dlcnMgYXdhaXRlZCIKK21zZ3N0ciAicGFraWV0IG1hIHN0YXR1cyB0cmlnZ2Vycy1hd2FpdGVkLCBhbGUgYnJhayBvY3pla3VqxIVjeWNoIHd5endhbGFjenkiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjI4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgaGFzIHN0YXR1cyAlcyBidXQgdHJpZ2dlcnMgYXJlIHBlbmRpbmciCittc2dzdHIgInBha2lldCBtYSBzdGF0dXMgJXMsIGFsZSBzxIUgemFwbGFub3dhbmUgd3l6d2FsYWN6ZSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMzIKK21zZ2lkICJwYWNrYWdlIGhhcyBzdGF0dXMgdHJpZ2dlcnMtcGVuZGluZyBidXQgbm8gdHJpZ2dlcnMgcGVuZGluZyIKK21zZ3N0ciAicGFraWV0IG1hIHN0YXR1cyB0cmlnZ2Vycy1wZW5kaW5nLCBhbGUgYnJhayB6YXBsYW5vd2FueWNoIHd5endhbGFjenkiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjQyCittc2dpZCAiUGFja2FnZSB3aGljaCBpbiBzdGF0ZSBub3QtaW5zdGFsbGVkIGhhcyBjb25mZmlsZXMsIGZvcmdldHRpbmcgdGhlbSIKK21zZ3N0ciAiIgorIk5pZXphaW5zdGFsb3dhbnkgcGFraWV0IG1hIHBsaWtpIGtvbmZpZ3VyYWN5am5lLCBpbmZvcm1hY2plIG8gbmljaCB6b3N0YWrEhSAiCisidXN1bmnEmXRlIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjMzNQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiBwYWNrYWdlIGluZm8gZmlsZSBgJS4yNTVzJyBmb3IgcmVhZGluZyIKK21zZ3N0ciAiIgorIm5pZSBtb8W8bmEgb3R3b3J6ecSHIGRvIG9kY3p5dHUgcGxpa3UgXCIlLjI1NXNcIiB6YXdpZXJhasSFY2VnbyBpbmZvcm1hY2plIG8gIgorInBha2llY2llIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjM0MQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW4ndCBzdGF0IHBhY2thZ2UgaW5mbyBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICIiCisibmllIG1vxbxuYSB3eWtvbmHEhyBmdW5rY2ppIFwic3RhdFwiIG5hIHBsaWt1IGluZm9ybWFjamkgbyBwYWtpZWNpZSBcIiUuMjU1c1wiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjM0NworIywgYy1mb3JtYXQKK21zZ2lkICJjYW4ndCBtbWFwIHBhY2thZ2UgaW5mbyBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICIiCisibmllIG1vxbxuYSB3eWtvbmHEhyBmdW5rY2ppIFwibW1hcFwiIG5hIHBsaWt1IGluZm9ybWFjamkgbyBwYWtpZWNpZSBcIiUuMjU1c1wiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjM1MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiY2FuJ3Qgc3RhdCBwYWNrYWdlIGluZm8gZmlsZSBgJS4yNTVzJyIKK21zZ2lkICJyZWFkaW5nIHBhY2thZ2UgaW5mbyBmaWxlICclLjI1NXMnIgorbXNnc3RyICIiCisibmllIG1vxbxuYSB3eWtvbmHEhyBmdW5rY2ppIFwic3RhdFwiIG5hIHBsaWt1IGluZm9ybWFjamkgbyBwYWtpZWNpZSBcIiUuMjU1c1wiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjM2MworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2xvc2UgYWZ0ZXIgcmVhZDogYCUuMjU1cyciCittc2dzdHIgIm5pZSBtb8W8bmEgemFta27EhcSHIFwiJS4yNTVzXCIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDA0CisjLCBjLWZvcm1hdAorbXNnaWQgIkVPRiBhZnRlciBmaWVsZCBuYW1lIGAlLipzJyIKK21zZ3N0ciAiRU9GIHBvIG5hendpZSBwb2xhIFwiJS4qc1wiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQwNworIywgYy1mb3JtYXQKK21zZ2lkICJuZXdsaW5lIGluIGZpZWxkIG5hbWUgYCUuKnMnIgorbXNnc3RyICJrb25pZWMgbGluaWkgdyBuYXp3aWUgcG9sYSBcIiUuKnNcIiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiTVNET1MgRU9GICheWikgaW4gZmllbGQgbmFtZSBgJS4qcyciCittc2dzdHIgIk1TRE9TIEVPRiAoXlopIHcgbmF6d2llIHBvbGEgXCIlLipzXCIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDE0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpZWxkIG5hbWUgYCUuKnMnIG11c3QgYmUgZm9sbG93ZWQgYnkgY29sb24iCittc2dzdHIgInBvIG5hendpZSBwb2xhIFwiJS4qc1wiIG11c2kgd3lzdMSFcGnEhyBkd3Vrcm9wZWsiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDI1CisjLCBjLWZvcm1hdAorbXNnaWQgIkVPRiBiZWZvcmUgdmFsdWUgb2YgZmllbGQgYCUuKnMnIChtaXNzaW5nIGZpbmFsIG5ld2xpbmUpIgorbXNnc3RyICJFT0YgcHJ6ZWQgd2FydG/Fm2NpxIUgcG9sYSBcIiUuKnNcIiAoYnJhayBrb8WEY2EgbGluaWkpIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQyOQorIywgYy1mb3JtYXQKK21zZ2lkICJNU0RPUyBFT0YgY2hhciBpbiB2YWx1ZSBvZiBmaWVsZCBgJS4qcycgKG1pc3NpbmcgbmV3bGluZT8pIgorbXNnc3RyICJNU0RPUyBFT0YgdyB3YXJ0b8WbY2kgcG9sYSBcIiUuKnNcIiAoYnJhayBrb8WEY2EgbGluaWk/KSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0NDAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIm5ld2xpbmUgaW4gZmllbGQgbmFtZSBgJS4qcyciCittc2dpZCAiYmxhbmsgbGluZSBpbiB2YWx1ZSBvZiBmaWVsZCAnJS4qcyciCittc2dzdHIgImtvbmllYyBsaW5paSB3IG5hendpZSBwb2xhIFwiJS4qc1wiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQ2MQorIywgYy1mb3JtYXQKK21zZ2lkICJFT0YgZHVyaW5nIHZhbHVlIG9mIGZpZWxkIGAlLipzJyAobWlzc2luZyBmaW5hbCBuZXdsaW5lKSIKK21zZ3N0ciAiRU9GIHcgd2FydG/Fm2NpIHBvbGEgXCIlLipzXCIgKGJyYWsga2/FhGNhIGxpbmlpKSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo1NDYKK21zZ2lkICJzZXZlcmFsIHBhY2thZ2UgaW5mbyBlbnRyaWVzIGZvdW5kLCBvbmx5IG9uZSBhbGxvd2VkIgorbXNnc3RyICIiCisib2RuYWxlemlvbm8ga2lsa2Ega29waWkgaW5mb3JtYWNqaSBvIHBha2llY2llLCB0eWxrbyBqZWRuYSBqZXN0IGRvendvbG9uYSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo1NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gcGFja2FnZSBpbmZvcm1hdGlvbiBpbiBgJS4yNTVzJyIKK21zZ3N0ciAiYnJhayBpbmZvcm1hY2ppIG8gcGFraWVjaWUgdyBcIiUuMjU1c1wiIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzo0NQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiVzLCBpbiBmaWxlICclLjI1NXMnIG5lYXIgbGluZSAlZCBwYWNrYWdlICclLjI1NXMnOlxuIgorI3wgIiAiCittc2dpZCAiIgorInBhcnNpbmcgZmlsZSAnJS4yNTVzJyBuZWFyIGxpbmUgJWQgcGFja2FnZSAnJS4yNTVzJzpcbiIKKyIgJS4yNTVzIgorbXNnc3RyICIiCisiJXMsIHcgcGxpa3UgXCIlLjI1NXNcIiBuaWVkYWxla28gbGluaWkgJWQgcGFraWV0IFwiJS4yNTVzXCI6XG4iCisiICIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6NDgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIlcywgaW4gZmlsZSAnJS4yNTVzJyBuZWFyIGxpbmUgJWQ6XG4iCisjfCAiICIKK21zZ2lkICIiCisicGFyc2luZyBmaWxlICclLjI1NXMnIG5lYXIgbGluZSAlZDpcbiIKKyIgJS4yNTVzIgorbXNnc3RyICIiCisiJXMsIHcgcGxpa3UgXCIlLjI1NXNcIiBuaWVkYWxla28gbGluaWkgJWRcbiIKKyIgIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoxMjUKK21zZ2lkICJtYXkgbm90IGJlIGVtcHR5IHN0cmluZyIKK21zZ3N0ciAibmllIG1vxbxuYSB1xbx5xIcgcHVzdGVnbyBjacSFZ3Ugem5ha8OzdyIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MTI3CisjLCBmdXp6eQorI3wgbXNnaWQgIm11c3Qgc3RhcnQgd2l0aCBhbiBhbHBoYW51bWVyaWMiCittc2dpZCAibXVzdCBzdGFydCB3aXRoIGFuIGFscGhhbnVtZXJpYyBjaGFyYWN0ZXIiCittc2dzdHIgIm11c2kgc2nEmSB6bmFjenluYcSHIG9kIGxpdGVyeSBsdWIgY3lmcnkiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjEzNgorIywgYy1mb3JtYXQKK21zZ2lkICJjaGFyYWN0ZXIgYCVjJyBub3QgYWxsb3dlZCAob25seSBsZXR0ZXJzLCBkaWdpdHMgYW5kIGNoYXJhY3RlcnMgYCVzJykiCittc2dzdHIgInpuYWsgXCIlY1wiIGplc3QgbmllZG96d29sb255IChtb8W8bmEgdcW8ecSHIHR5bGtvIGxpdGVyLCBjeWZyIGkgXCIlc1wiKSIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MTc4CisjLCBmdXp6eQorI3wgbXNnaWQgIjxub25lPiIKK21zZ2N0eHQgInZlcnNpb24iCittc2dpZCAiPG5vbmU+IgorbXNnc3RyICI8YnJhaz4iCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjIwOQorbXNnaWQgInZlcnNpb24gc3RyaW5nIGlzIGVtcHR5IgorbXNnc3RyICJjacSFZyB6bmFrw7N3IGRsYSBudW1lcnUgd2Vyc2ppIGplc3QgcHVzdHkiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjIyNAorbXNnaWQgInZlcnNpb24gc3RyaW5nIGhhcyBlbWJlZGRlZCBzcGFjZXMiCittc2dzdHIgImNpxIVnIHpuYWvDs3cgZGxhIG51bWVydSB3ZXJzamkgemF3aWVyYSBzcGFjamUiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjIzMAorbXNnaWQgImVwb2NoIGluIHZlcnNpb24gaXMgbm90IG51bWJlciIKK21zZ3N0ciAiZXBva2EgdyBudW1lcnplIHdlcnNqaSBuaWUgamVzdCBsaWN6YsSFIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyMzIKK21zZ2lkICJub3RoaW5nIGFmdGVyIGNvbG9uIGluIHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICJicmFrIHpuYWvDs3cgcG8gZHd1a3JvcGt1IHcgbnVtZXJ6ZSB3ZXJzamkiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjI0NworbXNnaWQgInZlcnNpb24gbnVtYmVyIGRvZXMgbm90IHN0YXJ0IHdpdGggZGlnaXQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjUwCisjLCBmdXp6eQorI3wgbXNnaWQgIm5vdGhpbmcgYWZ0ZXIgY29sb24gaW4gdmVyc2lvbiBudW1iZXIiCittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgaW4gdmVyc2lvbiBudW1iZXIiCittc2dzdHIgImJyYWsgem5ha8OzdyBwbyBkd3Vrcm9wa3UgdyBudW1lcnplIHdlcnNqaSIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjU0CisjLCBmdXp6eQorI3wgbXNnaWQgIm5vdGhpbmcgYWZ0ZXIgY29sb24gaW4gdmVyc2lvbiBudW1iZXIiCittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgaW4gcmV2aXNpb24gbnVtYmVyIgorbXNnc3RyICJicmFrIHpuYWvDs3cgcG8gZHd1a3JvcGt1IHcgbnVtZXJ6ZSB3ZXJzamkiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjI5OSBsaWIvZHBrZy9wYXJzZWhlbHAuYzozMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAibWlzc2luZyAlcyIKK21zZ3N0ciAiYnJha3VqxIVjeSAlcyIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MzAxIGxpYi9kcGtnL3BhcnNlaGVscC5jOjMxNAorIywgYy1mb3JtYXQKK21zZ2lkICJlbXB0eSB2YWx1ZSBmb3IgJXMiCittc2dzdHIgImJyYWsgd2FydG/Fm2NpIGRsYSAlcyIKKworIzogbGliL2Rwa2cvcGtnLWZvcm1hdC5jOjgwCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgY2hhcmFjdGVyIGAlYycgaW4gZmllbGQgd2lkdGhcbiIKK21zZ3N0ciAibmllcHJhd2lkxYJvd3kgem5hayBcIiVjXCIgdyBzemVyb2tvxZtjaSBwb2xhXG4iCisKKyM6IGxpYi9kcGtnL3BrZy1mb3JtYXQuYzoxNzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2xvc2luZyBicmFjZSBtaXNzaW5nIGluIGZvcm1hdFxuIgorbXNnc3RyICJXIGZvcm1hY2llIGJyYWt1amUgbmF3aWFzdSB6YW15a2FqxIVjZWdvXG4iCisKKyM6IGxpYi9kcGtnL3BrZy1zaG93LmM6NDAKK21zZ2lkICIobm8gZGVzY3JpcHRpb24gYXZhaWxhYmxlKSIKK21zZ3N0ciAiKGJyYWsgZG9zdMSZcG5lZ28gb3Bpc3UpIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGlnbm9yZSBzaWduYWwgJXMgYmVmb3JlIHJ1bm5pbmcgJS4yNTBzIgorbXNnc3RyICJuaWUgbW/FvG5hIHppZ25vcm93YcSHIHN5Z25hxYJ1ICVzIHByemVkIHd5a29uYW5pZW0gJS4yNTBzIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgdW4tY2F0Y2hpbmcgc2lnbmFsICVzOiAlc1xuIgorbXNnc3RyICJuaWUgbW/FvG5hIG9kenlza2HEhyBzeWduYcWCdSAlczogJXNcbiIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjc4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIChzdWJwcm9jZXNzKTogJXNcbiIKK21zZ3N0ciAiJXMgKHBvZHByb2Nlcyk6ICVzXG4iCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzo4OSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NDU0Cittc2dpZCAiZm9yayBmYWlsZWQiCittc2dzdHIgIm5pZSBtb8W8bmEgd3lrb25hxIcgZnVua2NqaSBcImZvcmtcIiIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjExOQorIywgYy1mb3JtYXQKK21zZ2lkICJzdWJwcm9jZXNzICVzIHJldHVybmVkIGVycm9yIGV4aXQgc3RhdHVzICVkIgorbXNnc3RyICJwb2Rwcm9jZXMgJXMgendyw7NjacWCIGtvZCBixYLEmWR1ICVkIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTI4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJzdWJwcm9jZXNzICVzIHdhcyBpbnRlcnJ1cHRlZCIKK21zZ3N0ciAiYsWCxIVkIGZ1bmtjamkgXCJ3YWl0XCIgZGxhICVzIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTMwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJzdWJwcm9jZXNzICVzIGtpbGxlZCBieSBzaWduYWwgKCVzKSVzIgorbXNnaWQgInN1YnByb2Nlc3MgJXMgd2FzIGtpbGxlZCBieSBzaWduYWwgKCVzKSVzIgorbXNnc3RyICJwb2Rwcm9jZXMgJXMgem9zdGHFgiB6YWJpdHkgc3lnbmHFgmVtICglcyklcyIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEzMgorbXNnaWQgIiwgY29yZSBkdW1wZWQiCittc2dzdHIgIiwgenJ6dXQgcGFtacSZY2kiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAic3VicHJvY2VzcyAlcyBmYWlsZWQgd2l0aCB3YWl0IHN0YXR1cyBjb2RlICVkIgorbXNnc3RyICJwb2Rwcm9jZXMgJXMgemfFgm9zacWCIGLFgsSFZCBwb3ByemV6IGtvZCAlZCBmdW5rY2ppIFwid2FpdFwiIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTUxIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo0NjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIndhaXQgZm9yIHN1YnByb2Nlc3MgJXMgZmFpbGVkIgorbXNnc3RyICJixYLEhWQgZnVua2NqaSBcIndhaXRcIiBkbGEgJXMiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgcGFja2FnZSBuYW1lIGAlLjI1MHMnIGluIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKyJuaWVwcmF3aWTFgm93YSBuYXp3YSBwYWtpZXR1IFwiJS4yNTBzXCIgdyBwbGlrdSB3eXp3YWxhY3p5IG9kxYJvxbxvbnljaCBcIiUuMjUwcyIKKyJcIiIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJ1bmNhdGVkIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm9iY2nEmXR5IHBsaWsgd3l6d2FsYWN6eSBvZMWCb8W8b255Y2ggXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yIGluIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcycgYXQgY2hhcmFjdGVyIGAlcyclcyIKK21zZ3N0ciAiIgorImLFgsSFZCBza8WCYWRuaSB3IHBsaWt1IHd5endhbGFjenkgb2TFgm/FvG9ueWNoIFwiJS4yNTBzXCIgbmEgcG96eWNqaSBcIiVzXCIlcyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuL2NyZWF0ZSB0cmlnZ2VycyBsb2NrZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorIm5pZSBtb8W8bmEgb3R3b3J6ecSHL3V0d29yennEhyBwbGlrdSBibG9rdWrEhWNlZ28gZGxhIHd5endhbGFjenkgXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MTQxCisjLCBmdXp6eQorI3wgbXNnaWQgInRyaWdnZXJlZCIKK21zZ2lkICJ0cmlnZ2VycyBhcmVhIgorbXNnc3RyICJ3eXp3YWxhY3ogcG9idWR6b255IgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmllIG1vxbxuYSB1c3RhbGnEhyBzdGFudSBwbGlrdSB3eXp3YWxhY3p5IG9kxYJvxbxvbnljaCBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmllIG1vxbxuYSBvdHdvcnp5xIcgcGxpa3Ugd3l6d2FsYWN6eSBvZMWCb8W8b255Y2ggXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MTc5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuL2NyZWF0ZSBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorIm5pZSBtb8W8bmEgb3R3b3J6ecSHL3V0d29yennEhyBub3dlZ28gcGxpa3Ugd3l6d2FsYWN6eSBvZMWCb8W8b255Y2ggXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MjE1CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHJlYWRpbmcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiYsWCxIVkIHBvZGN6YXMgb2Rjenl0dSBwbGlrdSB3eXp3YWxhY3p5IG9kxYJvxbxvbnljaCBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoyMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ldyB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuaWUgbW/FvG5hIHphcGlzYcSHIG5vd2VnbyBwbGlrdSB3eXp3YWxhY3p5IG9kxYJvxbxvbnljaCBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoyMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIG5ldyB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuaWUgbW/FvG5hIHphbWtuxIXEhyBub3dlZ28gcGxpa3Ugd3l6d2FsYWN6eSBvZMWCb8W8b255Y2ggXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MjMyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuaWUgbW/FvG5hIHphaW5zdGFsb3dhxIcgbm93ZWdvIHBsaWt1IHd5endhbGFjenkgb2TFgm/FvG9ueWNoIFwiJS4yNTBzXCIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzoyMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImludmFsaWQgb3IgdW5rbm93biBzeW50YXggaW4gdHJpZ2dlciBuYW1lIGAlLjI1MHMnIChpbiB0cmlnZ2VyIGludGVyZXN0cyBmb3IgIgorInBhY2thZ2UgYCUuMjUwcycpIgorbXNnc3RyICIiCisibmllcHJhd2lkxYJvd2EgbHViIG5pZXpuYW5hIHNrxYJhZG5pYSBuYXp3eSB3eXp3YWxhY3phIFwiJS4yNTBzXCIgKHcgd2FydW5rYWNoICIKKyJ1cnVjaG9taWVuaWEgd3l6d2FsYWN6YSBkbGEgcGFraWV0dSBcIiUuMjUwc1wiKSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjI2MworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiB0cmlnZ2VyIGludGVyZXN0IGxpc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorIm5pZSB1ZGHFgm8gc2nEmSBvdHdvcnp5xIcgcGxpa3UgbGlzdHkgd2FydW5rw7N3IHVydWNob21pZW5pYSB3eXp3YWxhY3phIFwiJS4yNTBzIgorIlwiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MjkyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisibmllIHVkYcWCbyBzacSZIHByemV3aW7EhcSHIHBsaWt1IHdhcnVua8OzdyB1cnVjaG9taWVuaWEgd3l6d2FsYWN6YSBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzA1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcycgc3ludGF4IGVycm9yOyBpbGxlZ2FsIHBhY2thZ2UgbmFtZSBgJS4yNTBzJzogIgorIiUuMjUwcyIKK21zZ3N0ciAiIgorImLFgsSFZCBza8WCYWRuaSB3IHBsaWt1IHdhcnVua8OzdyB1cnVjaG9taWVuaWEgd3l6d2FsYWN6YSBcIiUuMjUwc1wiIC0gIgorIm5pZXByYXdpZMWCb3dhIG5hendhIHBha2lldHUgXCIlLjI1MHNcIjogJS4yNTBzIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzE4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisibmllIG1vxbxuYSB6YXBpc2HEhyBub3dlZ28gcGxpa3Ugd2FydW5rw7N3IHVydWNob21pZW5pYSB3eXp3YWxhY3phIFwiJS4yNTBzXCIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlICclLjI1MHMnIgorbXNnc3RyICIiCisibmllIG1vxbxuYSB6YW1rbsSFxIcgbm93ZWdvIHBsaWt1IHdhcnVua8OzdyB1cnVjaG9taWVuaWEgd3l6d2FsYWN6YSBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzI0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlICclLjI1MHMnIgorbXNnc3RyICIiCisibmllIG1vxbxuYSB6YW1rbsSFxIcgbm93ZWdvIHBsaWt1IHdhcnVua8OzdyB1cnVjaG9taWVuaWEgd3l6d2FsYWN6YSBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzMyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKyJuaWUgbW/FvG5hIHphaW5zdGFsb3dhxIcgbm93ZWdvIHBsaWt1IHdhcnVua8OzdyB1cnVjaG9taWVuaWEgd3l6d2FsYWN6YSBcIiUuMjUwcyIKKyJcIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjM0MCBsaWIvZHBrZy90cmlnbGliLmM6MzQyIGxpYi9kcGtnL3RyaWdsaWIuYzo0NzIKKyM6IHNyYy9yZW1vdmUuYzoyODYgc3JjL3JlbW92ZS5jOjM3NworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVtb3ZlIGAlLjI1MHMnIgorbXNnc3RyICJuaWUgbW/FvG5hIHVzdW7EhcSHIFwiJS4yNTBzXCIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozNjAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisibmllIG1vxbxuYSB1dHdvcnp5xIcgbm93ZWdvIHBsaWt1IHdhcnVua8OzdyB1cnVjaG9taWVuaWEgd3l6d2FsYWN6YSBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzgzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisibmllIG1vxbxuYSB6YW1rbsSFxIcgbm93ZWdvIHBsaWt1IHdhcnVua8OzdyB1cnVjaG9taWVuaWEgd3l6d2FsYWN6YSBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDU2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkdXBsaWNhdGUgZmlsZSB0cmlnZ2VyIGludGVyZXN0IGZvciBmaWxlbmFtZSBgJS4yNTBzJyBhbmQgcGFja2FnZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorInBvd2llbG9ueSB3YXJ1bmVrIHVydWNob21pZW5pYSB3eXp3YWxhY3phIHBsaWtvd2VnbyBkbGEgcGxpa3UgXCIlLjI1MHNcIiBpICIKKyJwYWtpZXR1IFwiJS4yNTBzXCIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuaWUgbW/FvG5hIHV0d29yennEhyBub3dlZ28gcGxpa3Ugd3l6d2FsYWN6eSBwbGlrb3d5Y2ggXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ5MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmllIG1vxbxuYSB6YXBpc2HEhyBub3dlZ28gcGxpa3Ugd3l6d2FsYWN6eSBwbGlrb3d5Y2ggXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ5NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgJyUuMjUwcyciCittc2dzdHIgIm5pZSBtb8W8bmEgemFta27EhcSHIG5vd2VnbyBwbGlrdSB3eXp3YWxhY3p5IHBsaWtvd3ljaCBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDk5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlICclLjI1MHMnIgorbXNnc3RyICJuaWUgbW/FvG5hIHphbWtuxIXEhyBub3dlZ28gcGxpa3Ugd3l6d2FsYWN6eSBwbGlrb3d5Y2ggXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjUwMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmllIG1vxbxuYSB6YW1rbsSFxIcgbm93ZWdvIHBsaWt1IHd5endhbGFjenkgcGxpa293eWNoIFwiJS4yNTBzXCIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1MDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSBhcyBgJS4yNTBzJyIKK21zZ3N0ciAiIgorIm5pZSBtb8W8bmEgemFpbnN0YWxvd2HEhyBub3dlZ28gcGxpa3Ugd3l6d2FsYWN6eSBwbGlrb3d5Y2ggamFrbyBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTQyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmllIG1vxbxuYSBvZGN6eXRhxIcgcGxpa3Ugd3l6d2FsYWN6eSBwbGlrb3d5Y2ggXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjU1MgorIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJixYLEhWQgc2vFgmFkbmkgdyBwbGlrdSB3eXp3YWxhY3p5IHBsaWtvd3ljaCAgXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjU2MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZmlsZSB0cmlnZ2VycyByZWNvcmQgbWVudGlvbnMgaWxsZWdhbCBwYWNrYWdlIG5hbWUgYCUuMjUwcycgKGZvciBpbnRlcmVzdCBpbiAiCisiZmlsZSBgJS4yNTBzJyk6ICUuMjUwcyIKK21zZ3N0ciAiIgorIm9waXMgd3l6d2FsYWN6YSBwbGlrb3dlZ28gemF3aWVyYSBuaWVwcmF3aWTFgm93xIUgbmF6d8SZIHBha2lldHUgXCIlLjI1MHNcIiAodyAiCisid2FydW5rdSB1cnVjaG9taWVuaWEgZGxhIHBsaWt1IFwiJS4yNTBzXCIpOiAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo2NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInRyaWdnZXJzIGNpIGZpbGUgYCUuMjUwcycgY29udGFpbnMgaWxsZWdhbCB0cmlnZ2VyIHN5bnRheCBpbiB0cmlnZ2VyIG5hbWUgYCIKKyIlLjI1MHMnOiAlLjI1MHMiCittc2dzdHIgIiIKKyJwbGlrIGluZm9ybWFjamkga29udHJvbG55Y2ggdHJpZ2dlcnMgXCIlLjI1MHNcIiBtYSBuaWVwcmF3aWTFgm93xIUgc2vFgmFkbmnEmSB3ICIKKyJuYXp3aWUgd3l6d2FsYWN6YSBcIiUuMjUwc1wiOiAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo2ODQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gdHJpZ2dlcnMgY2kgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmllIG1vxbxuYSBvdHdvcnp5xIcgcGxpa3UgaW5mb3JtYWNqaSBrb250cm9sbnljaCB0cmlnZ2VycyBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Njk5Cittc2dpZCAidHJpZ2dlcnMgY2kgZmlsZSBjb250YWlucyB1bmtub3duIGRpcmVjdGl2ZSBzeW50YXgiCittc2dzdHIgIiIKKyJwbGlrIGluZm9ybWFjamkga29udHJvbG55Y2ggdHJpZ2dlcnMgemF3aWVyYSBuaWVwb3ByYXduxIUgc2vFgmFkbmnEmSBkeXJla3R5d3kiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo3MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJpZ2dlcnMgY2kgZmlsZSBjb250YWlucyB1bmtub3duIGRpcmVjdGl2ZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorInBsaWsgaW5mb3JtYWNqaSBrb250cm9sbnljaCB0cmlnZ2VycyB6YXdpZXJhIG5pZXpuYW7EhSBkeXJla3R5d8SZIFwiJS4yNTBzXCIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo3NzYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSB0cmlnZ2VycyBzdGF0ZSBkaXJlY3RvcnkgYCUuMjUwcyciCittc2dzdHIgIm5pZSBtb8W8bmEgdXR3b3J6ecSHIGthdGFsb2d1IHN0YW51IHd5endhbGFjenkgXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjc3OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IG93bmVyc2hpcCBvZiB0cmlnZ2VycyBzdGF0ZSBkaXJlY3RvcnkgYCUuMjUwcyciCittc2dzdHIgIm5pZSBtb8W8bmEgem1pZW5pxIcgd8WCYcWbY2ljaWVsYSBrYXRhbG9ndSBzdGFudSB3eXp3YWxhY3p5IFwiJS4yNTBzXCIiCisKKyM6IGxpYi9kcGtnL3RyaWduYW1lLmM6MzQKK21zZ2lkICJlbXB0eSB0cmlnZ2VyIG5hbWVzIGFyZSBub3QgcGVybWl0dGVkIgorbXNnc3RyICJwdXN0ZSBuYXp3eSB3eXp3YWxhY3p5IHPEhSBuaWVkb3p3b2xvbmUiCisKKyM6IGxpYi9kcGtnL3RyaWduYW1lLmM6MzgKK21zZ2lkICJ0cmlnZ2VyIG5hbWUgY29udGFpbnMgaW52YWxpZCBjaGFyYWN0ZXIiCittc2dzdHIgIm5hendhIHd5endhbGFjemEgemF3aWVyYSBuaWVwb3ByYXdueSB6bmFrIgorCisjOiBsaWIvZHBrZy91dGlscy5jOjU2CisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWQgZXJyb3IgaW4gYCUuMjUwcyciCittc2dzdHIgImLFgsSFZCBvZGN6eXR1IFwiJS4yNTBzXCIiCisKKyM6IGxpYi9kcGtnL3V0aWxzLmM6NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmdldHMgZ2F2ZSBhbiBlbXB0eSBzdHJpbmcgZnJvbSBgJS4yNTBzJyIKK21zZ3N0ciAiZnVua2NqYSBcImZnZXRzXCIgendyw7NjacWCYSBwdXN0eSBjacSFZyB6bmFrw7N3IHogXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvdXRpbHMuYzo2MworIywgYy1mb3JtYXQKK21zZ2lkICJ0b28tbG9uZyBsaW5lIG9yIG1pc3NpbmcgbmV3bGluZSBpbiBgJS4yNTBzJyIKK21zZ3N0ciAiemJ5dCBkxYJ1Z2EgbGluaWEgbHViIGJyYWt1asSFY3kgem5hayBub3dlaiBsaW5paSB3IFwiJS4yNTBzXCIiCisKKyM6IGxpYi9kcGtnL3V0aWxzLmM6NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgcmVhZGluZyBgJS4yNTBzJyIKK21zZ3N0ciAibmllb2N6ZWtpd2FueSBrb25pZWMgcGxpa3UgcG9kY3phcyBjenl0YW5pYSBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy92YXJidWYuYzo4MiBsaWIvZHBrZy92YXJidWYuYzo4OAorbXNnaWQgImVycm9yIGZvcm1hdHRpbmcgc3RyaW5nIGludG8gdmFyYnVmIHZhcmlhYmxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjE3OSBzcmMvYXJjaGl2ZXMuYzoyMDAgc3JjL2FyY2hpdmVzLmM6NzI0Cittc2dpZCAiZXJyb3IgcmVhZGluZyBmcm9tIGRwa2ctZGViIHBpcGUiCittc2dzdHIgIm5pZSBtb8W8bmEgb2Rjenl0YcSHIHBvdG9rdSB6IFwiZHBrZy1kZWJcIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTk1CisjLCBjLWZvcm1hdAorbXNnaWQgInNraXBwZWQgdW5wYWNraW5nIGZpbGUgJyUuMjU1cycgKHJlcGxhY2VkIG9yIGV4Y2x1ZGVkPykiCittc2dzdHIgInBvbWluacSZY2llIHJvenBha293YW5pYSBwbGlrdSBcIiUuMjU1c1wiICh6YXN0xIVwaW9ueSBsdWIgd3nFgsSFY3pvbnk/KSIKKworIzogc3JjL2FyY2hpdmVzLmM6MjQ2IHNyYy9hcmNoaXZlcy5jOjI1MAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIHRpbWVzdGFtcHMgb2YgYCUuMjU1cyciCittc2dzdHIgIm5pZSBtb8W8bmEgemFrdHVhbGl6b3dhxIcgY3phc3UgbW9keWZpa2FjamkgZGxhIFwiJS4yNTVzXCIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjI2MgorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIG93bmVyc2hpcCBvZiBzeW1saW5rIGAlLjI1NXMnIgorbXNnc3RyICJuaWUgbW/FvG5hIHptaWVuacSHIHfFgmHFm2NpY2llbGEgZG93acSFemFuaWEgc3ltYm9saWN6bmVnbyBcIiUuMjU1c1wiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoyNjUgc3JjL2FyY2hpdmVzLmM6NzM0IHNyYy9zdGF0Y21kLmM6MTYzCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHNldHRpbmcgb3duZXJzaGlwIG9mIGAlLjI1NXMnIgorbXNnc3RyICJuaWUgbW/FvG5hIHptaWVuacSHIHfFgmHFm2NpY2llbGEgXCIlLjI1NXNcIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MjY3IHNyYy9hcmNoaXZlcy5jOjczNiBzcmMvc3RhdGNtZC5jOjE2NQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIHBlcm1pc3Npb25zIG9mIGAlLjI1NXMnIgorbXNnc3RyICJuaWUgbW/FvG5hIHptaWVuacSHIHVwcmF3bmllxYQgXCIlLjI1NXNcIiIKKworIzogc3JjL2FyY2hpdmVzLmM6Mzk1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBzdGF0IChkZXJlZmVyZW5jZSkgZXhpc3Rpbmcgc3ltbGluayBgJS4yNTBzJyIKK21zZ3N0ciAibmllIG1vxbxuYSByb3p3acSFemHEhyBkb3dpxIV6YW5pYSBzeW1ib2xpY3puZWdvIFwiJS4yNTBzXCIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjQxNworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZmFpbGVkIHRvIHN0YXQgKGRlcmVmZXJlbmNlKSBwcm9wb3NlZCBuZXcgc3ltbGluayB0YXJnZXQgYCUuMjUwcycgZm9yICIKKyJzeW1saW5rIGAlLjI1MHMnIgorbXNnc3RyICIiCisibmllIG1vxbxuYSB1c3RhbGnEhyBzdGFudSAocm96d2nEhXphxIcpIHByb3Bvbm93YW5lZ28gbm93ZWdvIGNlbHUgZG93acSFemFuaWEgIgorInN5bWJvbGljem5lZ28gXCIlLjI1MHNcIiBkbGEgZG93acSFemFuaWEgXCIlLjI1MHNcIiIKKworIzogc3JjL2FyY2hpdmVzLmM6NDc1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ0cnlpbmcgdG8gb3ZlcndyaXRlIGAlLjI1MHMnLCB3aGljaCBpcyB0aGUgZGl2ZXJ0ZWQgdmVyc2lvbiBvZiBgIgorIiUuMjUwcycgKHBhY2thZ2U6ICUuMTAwcykiCittc2dzdHIgIiIKKyJwcsOzYmEgbmFkcGlzYW5pYSBcIiUuMjUwc1wiLCBrdMOzcnkgamVzdCBvbWluacSZY2llbSBcIiUuMjUwc1wiIChwYWtpZXQgJS4xMDBzKSIKKworIzogc3JjL2FyY2hpdmVzLmM6NDgxCisjLCBjLWZvcm1hdAorbXNnaWQgInRyeWluZyB0byBvdmVyd3JpdGUgYCUuMjUwcycsIHdoaWNoIGlzIHRoZSBkaXZlcnRlZCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICJwcsOzYmEgbmFkcGlzYW5pYSBcIiUuMjUwc1wiLCBrdMOzcnkgamVzdCBvbWluacSZY2llbSBcIiUuMjUwc1wiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo1MTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgYCUuMjU1cycgKHdoaWNoIEkgd2FzIGFib3V0IHRvIGluc3RhbGwpIgorbXNnc3RyICJuaWUgbW/FvG5hIHVzdGFsacSHIHN0YW51IFwiJS4yNTVzXCIgKGt0w7NyeSBtaWHFgiBiecSHIHphaW5zdGFsb3dhbnkpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo1MTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVuYWJsZSB0byBjbGVhbiB1cCBtZXNzIHN1cnJvdW5kaW5nIGAlLjI1NXMnIGJlZm9yZSBpbnN0YWxsaW5nIGFub3RoZXIgIgorInZlcnNpb24iCittc2dzdHIgIiIKKyJuaWUgbW/FvG5hIHd5a29uYcSHIHBvcnrEhWRrb3dhbmlhIGRsYSBcIiUuMjU1c1wiIGRvcMOza2kgbmllIHpvc3RhbmllICIKKyJ6YWluc3RhbG93YW5hIGlubmEgamVnbyB3ZXJzamEiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjUyNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCByZXN0b3JlZCBgJS4yNTVzJyBiZWZvcmUgaW5zdGFsbGluZyBhbm90aGVyIHZlcnNpb24iCittc2dzdHIgIiIKKyJuaWUgbW/FvG5hIHVzdGFsacSHIHN0YW51IG9kenlza2FuZWdvIFwiJS4yNTVzXCIgZG9ww7NraSBuaWUgem9zdGFuaWUgIgorInphaW5zdGFsb3dhbmEgaW5uYSBqZWdvIHdlcnNqYSIKKworIzogc3JjL2FyY2hpdmVzLmM6NTYxCisjLCBjLWZvcm1hdAorbXNnaWQgImFyY2hpdmUgY29udGFpbmVkIG9iamVjdCBgJS4yNTVzJyBvZiB1bmtub3duIHR5cGUgMHgleCIKK21zZ3N0ciAiYXJjaGl3dW0gemF3aWVyYSBvYmlla3QgXCIlLjI1NXNcIiBuaWV6bmFuZWdvIHR5cHUgMHgleCIKKworIzogc3JjL2FyY2hpdmVzLmM6NjI2IHNyYy9kaXZlcnRjbWQuYzoxNTAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjY4MgorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMjIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyODQKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNDQxIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNjgwCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE2NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI0NAorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MjcKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImNhbm5vdCBzdGF0IG9sZCBuYW1lIGAlcyc6ICVzIgorbXNnaWQgImNhbm5vdCBzdGF0IGZpbGUgJyVzJyIKK21zZ3N0ciAibmllIG1vxbxuYSB1c3RhbGnEhyBzdGFudSBzdGFyZWdvIHBsaWt1IFwiJXNcIiA6ICVzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVwbGFjaW5nIGZpbGVzIGluIG9sZCBwYWNrYWdlICVzIC4uLlxuIgorbXNnc3RyICJaYXN0xIVwaWVuaWUgcGxpa8OzdyB6IHBvcHJ6ZWRuaWVnbyBwYWtpZXR1ICVzIC4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVwbGFjZWQgYnkgZmlsZXMgaW4gaW5zdGFsbGVkIHBhY2thZ2UgJXMgLi4uXG4iCittc2dzdHIgIlphc3TEhXBpZW5pZSBwcnpleiBwbGlraSB6IGluc3RhbG93YW5lZ28gcGFraWV0dSAlcyAuLi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6NjU0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ0cnlpbmcgdG8gb3ZlcndyaXRlIGRpcmVjdG9yeSAnJS4yNTBzJyBpbiBwYWNrYWdlICUuMjUwcyAlLjI1MHMgd2l0aCAiCisibm9uZGlyZWN0b3J5IgorbXNnc3RyICIiCisicHLDs2JhIG5hZHBpc2FuaWEga2F0YWxvZ3UgXCIlLjI1MHNcIiB3IHBha2llY2llICUuMjUwcyAlLjI1MHMgcHJ6ZXogb2JpZWt0ICIKKyJuaWUgYsSZZMSFY3kga2F0YWxvZ2llbSIKKworIzogc3JjL2FyY2hpdmVzLmM6NjYxCisjLCBjLWZvcm1hdAorbXNnaWQgInRyeWluZyB0byBvdmVyd3JpdGUgJyUuMjUwcycsIHdoaWNoIGlzIGFsc28gaW4gcGFja2FnZSAlLjI1MHMgJS4yNTBzIgorbXNnc3RyICIiCisicHLDs2JhIG5hZHBpc2FuaWEgXCIlLjI1MHNcIiwga3TDs3J5IGlzdG5pZWplIHRha8W8ZSB3IHBha2llY2llICUuMjUwcyAlLjI1MHMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjcxMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGAlLjI1NXMnICh3aGlsZSBwcm9jZXNzaW5nIGAlLjI1NXMnKSIKK21zZ3N0ciAibmllIG1vxbxuYSB1dHdvcnp5xIcgXCIlLjI1NXNcIiAocG9kY3phcyBwcnpldHdhcnphbmlhIFwiJS4yNTVzXCIpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3MTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFja2VuZCBkcGtnLWRlYiBkdXJpbmcgYCUuMjU1cyciCittc2dzdHIgInVydWNob21pb255IGRwa2ctZGViIHBvZGN6YXMgXCIlLjI1NXNcIiIKKworIzogc3JjL2FyY2hpdmVzLmM6NzQ0IHNyYy9hcmNoaXZlcy5jOjkwOCBzcmMvYXJjaGl2ZXMuYzo5NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZy93cml0aW5nIGAlLjI1NXMnIgorbXNnc3RyICJuaWUgbW/FvG5hIHphbWtuxIXEhy96YXBpc2HEhyBcIiUuMjU1c1wiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgcGlwZSBgJS4yNTVzJyIKK21zZ3N0ciAibmllIG1vxbxuYSB1dHdvcnp5xIcgcG90b2t1IFwiJS4yNTVzXCIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc1MyBzcmMvYXJjaGl2ZXMuYzo3NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgZGV2aWNlIGAlLjI1NXMnIgorbXNnc3RyICJuaWUgbW/FvG5hIHV0d29yennEhyB1cnrEhWR6ZW5pYSBcIiUuMjU1c1wiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgaGFyZCBsaW5rIGAlLjI1NXMnIgorbXNnc3RyICJuaWUgbW/FvG5hIHV0d29yennEhyBkb3dpxIV6YW5pYSBcIiUuMjU1c1wiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NzcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjUzOQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBzeW1ib2xpYyBsaW5rIGAlLjI1NXMnIgorbXNnc3RyICJuaWUgbW/FvG5hIHV0d29yennEhyBkb3dpxIV6YW5pYSBzeW1ib2xpY3puZWdvIFwiJS4yNTVzXCIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc4MworIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBkaXJlY3RvcnkgYCUuMjU1cyciCittc2dzdHIgIm5pZSBtb8W8bmEgdXR3b3J6ecSHIGthdGFsb2d1IFwiJS4yNTVzXCIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjgyMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gbW92ZSBhc2lkZSBgJS4yNTVzJyB0byBpbnN0YWxsIG5ldyB2ZXJzaW9uIgorbXNnc3RyICJuaWUgbW/FvG5hIHByemVuaWXFm8SHIFwiJS4yNTVzXCIsIGFieSB6YWluc3RhbG93YcSHIG5vd8SFIHdlcnNqxJkiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjgzMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MzIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIGxpbmsgYCUuMjU1cyciCittc2dzdHIgIm5pZSBtb8W8bmEgb2Rjenl0YcSHIGRvd2nEhXphbmlhIFwiJS4yNTVzXCIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjgzNCBzcmMvY29uZmlndXJlLmM6NDIzCisjLCBjLWZvcm1hdAorbXNnaWQgInN5bWJvbGljIGxpbmsgJyUuMjUwcycgc2l6ZSBoYXMgY2hhbmdlZCBmcm9tICVqZCB0byAlemQiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6ODM5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBtYWtlIGJhY2t1cCBzeW1saW5rIGZvciBgJS4yNTVzJyIKK21zZ3N0ciAibmllIG1vxbxuYSB6cm9iacSHIGtvcGlpIGRvd2nEhXphbmlhIHN5bWJvbGljem5lZ28gZGxhIFwiJS4yNTVzXCIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjg0MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hvd24gYmFja3VwIHN5bWxpbmsgZm9yIGAlLjI1NXMnIgorbXNnc3RyICIiCisibmllIG1vxbxuYSB6bWllbmnEhyB3xYJhxZtjaWNpZWxhIGtvcGlpIGRvd2nEhXphbmlhIHN5bWJvbGljem5lZ28gZGxhIFwiJS4yNTVzXCIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjg0NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gbWFrZSBiYWNrdXAgbGluayBvZiBgJS4yNTVzJyBiZWZvcmUgaW5zdGFsbGluZyBuZXcgdmVyc2lvbiIKK21zZ3N0ciAiIgorIm5pZSBtb8W8bmEgenJvYmnEhyBrb3BpaSBkb3dpxIV6YW5pYSBkbGEgXCIlLjI1NXNcIiBkb3DDs2tpIG5pZSB6b3N0YW5pZSAiCisiemFpbnN0YWxvd2FuYSBpbm5hIGplZ28gd2Vyc2phIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4NjMgc3JjL2FyY2hpdmVzLmM6OTU3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyB2ZXJzaW9uIG9mIGAlLjI1NXMnIgorbXNnc3RyICJuaWUgbW/FvG5hIHphaW5zdGFsb3dhxIcgbm93ZWogd2Vyc2ppIFwiJS4yNTVzXCIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjkwMiBzcmMvYXJjaGl2ZXMuYzo5NDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuICclLjI1NXMnIgorbXNnc3RyICJuaWUgbW/FvG5hIHV0d29yennEhyBcIiUuMjU1c1wiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo5NDcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzeW5jIGZpbGUgJyUuMjU1cyciCittc2dzdHIgIm5pZSBtb8W8bmEgd3lrb25hxIcgZnVua2NqaSBcInNldHZidWZcIiBkbGEgXCIlLjI1NXNcIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAwMAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiaWdub3JpbmcgZGVwZW5kZW5jeSBwcm9ibGVtIHdpdGggJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyJ6aWdub3Jvd2FuaWUgcHJvYmxlbXUgeiB6YWxlxbxub8WbY2lhbWkgdyAlczpcbiIKKyIlcyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAwNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiY29uc2lkZXJpbmcgZGVjb25maWd1cmF0aW9uIG9mIGVzc2VudGlhbFxuIgorIiBwYWNrYWdlICVzLCB0byBlbmFibGUgJXMuIgorbXNnc3RyICIiCisicm96d2HFvGFuaWUgZGVrb25maWd1cmFjamkgaXN0b3RuZWdvXG4iCisiIHBha2lldHUgJXMsIGFieSB3xYLEhWN6ecSHICVzLiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAwOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogbm8sICVzIGlzIGVzc2VudGlhbCwgd2lsbCBub3QgZGVjb25maWd1cmVcbiIKKyIgaXQgaW4gb3JkZXIgdG8gZW5hYmxlICVzLlxuIgorbXNnc3RyICIiCisiZHBrZzogbmllc3RldHksICVzIGplc3QgaXN0b3RueW0gcGFraWV0ZW0sIGt0w7NyeSBuaWUgem9zdGFuaWVcbiIKKyIgemRla29uZmlndXJvd2FueSwgYWJ5IHfFgsSFY3p5xIcgJXMuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IG5vLCBjYW5ub3QgcHJvY2VlZCB3aXRoICVzICgtLWF1dG8tZGVjb25maWd1cmUgd2lsbCBoZWxwKTpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6IG5pZXN0ZXR5LCBuaWUgbW/FvG5hIGtvbnR5bnVvd2HEhyBwcnpldHdhcnphbmlhICVzICgtLWF1dG8tZGVjb25maWd1cmUgIgorIm1vxbxlIHBvbcOzYyk6XG4iCisiJXMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVtb3ZhbCBvZiAlLjI1MHMiCittc2dzdHIgInVzdXdhbmllICUuMjUwcyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA1NworIywgYy1mb3JtYXQKK21zZ2lkICJpbnN0YWxsYXRpb24gb2YgJS4yNTBzIgorbXNnc3RyICJpbnN0YWxvd2FuaWUgJS4yNTBzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDU4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBjb25zaWRlcmluZyBkZWNvbmZpZ3VyYXRpb24gb2YgJXMsIHdoaWNoIHdvdWxkIGJlIGJyb2tlbiBieSAlcyAuLi5cbiIKK21zZ3N0ciAiIgorImRwa2c6IHJvendhxbxhbmllIGRla29uZmlndXJhY2ppICVzLCBrdMOzcmVnbyB6YWxlxbxub8WbY2kgem9zdGHFgnlieSBuYXJ1c3pvbmUgIgorInByemV6ICVzIC4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDY1CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IHllcywgd2lsbCBkZWNvbmZpZ3VyZSAlcyAoYnJva2VuIGJ5ICVzKS5cbiIKK21zZ3N0ciAiIgorImRwa2c6IHRhaywgJXMgem9zdGFuaWUgemRla29uZmlndXJvd2FueSAobmFydXN6ZW5pZSB6YWxlxbxub8WbY2kgcHJ6ZXogJXMpLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDY5IHNyYy9hcmNoaXZlcy5jOjExODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IHJlZ2FyZGluZyAlcyBjb250YWluaW5nICVzOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogdyBvZG5pZXNpZW5pdSBkbyAlcyB6YXdpZXJhasSFY2VnbyAlczpcbiIKKyIlcyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA3NworbXNnaWQgImlnbm9yaW5nIGJyZWFrYWdlLCBtYXkgcHJvY2VlZCBhbnl3YXkhIgorbXNnc3RyICJ6aWdub3Jvd2FuaWUgbmFydXN6ZW5pYSB6YWxlxbxub8WbY2ksIGRhbHN6ZSBwcnpldHdhcnphbmllISIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA4MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiaW5zdGFsbGluZyAlLjI1MHMgd291bGQgYnJlYWsgJS4yNTBzLCBhbmRcbiIKKyIgZGVjb25maWd1cmF0aW9uIGlzIG5vdCBwZXJtaXR0ZWQgKC0tYXV0by1kZWNvbmZpZ3VyZSBtaWdodCBoZWxwKSIKK21zZ3N0ciAiIgorImluc3RhbGFjamEgJS4yNTBzIG5hcnVzemEgemFsZcW8bm/Fm2NpICUuMjUwcywgYVxuIgorIm5pZSBwb3p3b2xvbm8gbmEgZGVrb25maWd1cmFjasSZICgtLWF1dG8tZGVjb25maWd1cmUgbW/FvGUgcG9tw7NjKSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA4NgorIywgYy1mb3JtYXQKK21zZ2lkICJpbnN0YWxsaW5nICUuMjUwcyB3b3VsZCBicmVhayBleGlzdGluZyBzb2Z0d2FyZSIKK21zZ3N0ciAiIgorImluc3RhbGFjamEgJS4yNTBzIHdwcm93YWR6aSBuaWVzcGXFgm5pb25lIHphbGXFvG5vxZtjaSB3IGlzdG5pZWrEhWN5bSAiCisib3Byb2dyYW1vd2FuaXUiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExMTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogY29uc2lkZXJpbmcgcmVtb3ZpbmcgJXMgaW4gZmF2b3VyIG9mICVzIC4uLlxuIgorbXNnc3RyICJkcGtnOiByb3p3YcW8YW5pZSB1c3VuacSZY2lhICVzIHcgemFtaWFuIHphICVzIC4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTIyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGlzIG5vdCBwcm9wZXJseSBpbnN0YWxsZWQgLSBpZ25vcmluZyBhbnkgZGVwZW5kZW5jaWVzIG9uIGl0LlxuIgorbXNnc3RyICIiCisiJXMgbmllIGplc3QgcG9wcmF3bmllIHphaW5zdGFsb3dhbnkgLSBpZ25vcm93YW5pZSB6YWxlxbxub8WbY2kgb2QgbmllZ28uXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogbWF5IGhhdmUgdHJvdWJsZSByZW1vdmluZyAlcywgYXMgaXQgcHJvdmlkZXMgJXMgLi4uXG4iCittc2dzdHIgIiIKKyJkcGtnOiBtb2fEhSB3eXN0xIVwacSHIHByb2JsZW15IHByenkgdXN1d2FuaXUgJXMsIGpha28gxbxlIGRvc3RhcmN6YSAlcyAuLi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE2NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogcGFja2FnZSAlcyByZXF1aXJlcyByZWluc3RhbGxhdGlvbiwgYnV0IHdpbGwgcmVtb3ZlIGFueXdheSBhcyB5b3UgIgorInJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiIgorImRwa2c6IHBha2lldCAlcyB3eW1hZ2EgcG9ub3duZWogaW5zdGFsYWNqaSwgYWxlIHpvc3RhbmllIHVzdW5pxJl0eSB3ZWTFgnVnICIKKyLFvMSFZGFuaWEuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExNjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogcGFja2FnZSAlcyByZXF1aXJlcyByZWluc3RhbGxhdGlvbiwgd2lsbCBub3QgcmVtb3ZlLlxuIgorbXNnc3RyICJkcGtnOiBwYWtpZXQgJXMgd3ltYWdhIHBvbm93bmVqIGluc3RhbGFjamkgaSBuaWUgem9zdGFuaWUgdXN1bmnEmXR5LlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTc4CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IHllcywgd2lsbCByZW1vdmUgJXMgaW4gZmF2b3VyIG9mICVzLlxuIgorbXNnc3RyICJkcGtnOiB0YWssICVzIHpvc3RhbmllIHVzdW5pxJl0eSB3IHphbWlhbiB6YSAlcy5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE5MAorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mbGljdGluZyBwYWNrYWdlcyAtIG5vdCBpbnN0YWxsaW5nICUuMjUwcyIKK21zZ3N0ciAia29uZmxpa3QgcGFraWV0w7N3IC0gbmllIGLEmWR6aWUgaW5zdGFsb3dhbnkgJS4yNTBzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTkxCittc2dpZCAiaWdub3JpbmcgY29uZmxpY3QsIG1heSBwcm9jZWVkIGFueXdheSEiCittc2dzdHIgInppZ25vcm93YW5pZSBrb25mbGlrdHUsIGRhbHN6ZSBwcnpldHdhcnphbmllISIKKworIzogc3JjL2FyY2hpdmVzLmM6MTIzNQorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIC0tcmVjdXJzaXZlIG5lZWRzIGF0IGxlYXN0IG9uZSBwYXRoIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIC0tcmVjdXJzaXZlIHd5bWFnYSBjbyBuYWptbmllaiBqZWRuZWdvIGFyZ3VtZW50dSBixJlkxIVjZWdvIMWbY2llxbxrxIUiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNDUKKyMsIGZ1enp5Cittc2dpZCAiZmluZCBmb3IgZHBrZyAtLXJlY3Vyc2l2ZSIKK21zZ3N0ciAibmllIG1vxbxuYSB3eWtvbmHEhyBwb2xlY2VuaWEgXCJmaW5kXCIgZGxhIC0tcmVjdXJzaXZlIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjY2Cittc2dpZCAiZmFpbGVkIHRvIGZkb3BlbiBmaW5kJ3MgcGlwZSIKK21zZ3N0ciAibmllIG1vxbxuYSB1dHdvcnp5xIcgcG90b2t1IGRsYSBcImZpbmRcIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3MgorbXNnaWQgImVycm9yIHJlYWRpbmcgZmluZCdzIHBpcGUiCittc2dzdHIgIm5pZSBtb8W8bmEgb2Rjenl0YcSHIHogcG90b2t1IGRsYSBcImZpbmRcIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3MworbXNnaWQgImVycm9yIGNsb3NpbmcgZmluZCdzIHBpcGUiCittc2dzdHIgIm5pZSBtb8W8bmEgemFta27EhcSHIHBvdG9rdSBkbGEgXCJmaW5kXCIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmluZCBmb3IgLS1yZWN1cnNpdmUgcmV0dXJuZWQgdW5oYW5kbGVkIGVycm9yICVpIgorbXNnc3RyICJ3eXN6dWtpd2FuaWUgLS1yZWN1cnNpdmUgendyw7NjacWCbyBuaWVvYnPFgnVnaXdhbnkgYsWCxIVkICVpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjc5Cittc2dpZCAic2VhcmNoZWQsIGJ1dCBmb3VuZCBubyBwYWNrYWdlcyAoZmlsZXMgbWF0Y2hpbmcgKi5kZWIpIgorbXNnc3RyICJwcnplc3p1a2FuZSwgYWxlIG5pZSB6bmFsZXppb25vIMW8YWRueWNoIHBha2lldMOzdyAocGxpa8OzdyAqLmRlYikiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhdCBsZWFzdCBvbmUgcGFja2FnZSBhcmNoaXZlIGZpbGUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMgd3ltYWdhIGNvIG5ham1uaWVqIGplZG5lZ28gYXJndW1lbnR1IGLEmWTEhWNlZ28gcGxpa2llbSBhcmNoaXd1bSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTMyNSBzcmMvZGl2ZXJ0Y21kLmM6Nzggc3JjL2RpdmVydGNtZC5jOjExOAorIzogc3JjL2VucXVpcnkuYzoxNjYgc3JjL2VucXVpcnkuYzoyNzkgc3JjL2VucXVpcnkuYzo0NDkgc3JjL2VucXVpcnkuYzo0NTEKKyM6IHNyYy9lbnF1aXJ5LmM6NDY0IHNyYy9tYWluLmM6NjYgc3JjL21haW4uYzoxNjMgc3JjL21haW4uYzozMTQKKyM6IHNyYy9tYWluLmM6NDkzIHNyYy9wYWNrYWdlcy5jOjI1NCBzcmMvcXVlcnljbWQuYzoyNTIgc3JjL3F1ZXJ5Y21kLmM6MzU1CisjOiBzcmMvcXVlcnljbWQuYzozOTYgc3JjL3F1ZXJ5Y21kLmM6NDA0IHNyYy9xdWVyeWNtZC5jOjQ0OCBzcmMvcXVlcnljbWQuYzo1MTcKKyM6IHNyYy9xdWVyeWNtZC5jOjYwNiBzcmMvcXVlcnljbWQuYzo2NTAgc3JjL3NlbGVjdC5jOjc5IHNyYy9zdGF0Y21kLmM6NjgKKyM6IHNyYy9zdGF0Y21kLmM6OTggc3JjL3RyaWdjbWQuYzo1OCBzcmMvdHJpZ2NtZC5jOjkwIGRwa2ctZGViL2J1aWxkLmM6NDQxCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjE3IGRwa2ctZGViL2V4dHJhY3QuYzoyNTAgZHBrZy1kZWIvaW5mby5jOjIwMworIzogZHBrZy1kZWIvaW5mby5jOjI2NSBkcGtnLWRlYi9tYWluLmM6NjAgZHBrZy1kZWIvbWFpbi5jOjEyNgorIzogZHBrZy1zcGxpdC9pbmZvLmM6MjU3IGRwa2ctc3BsaXQvbWFpbi5jOjU0IGRwa2ctc3BsaXQvbWFpbi5jOjk4CisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTQ0IGRwa2ctc3BsaXQvcXVldWUuYzoyODAKK21zZ2lkICI8c3RhbmRhcmQgb3V0cHV0PiIKK21zZ3N0ciAiPHN0YW5kYXJkb3dlIHd5asWbY2llPiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTMyNiBzcmMvcGFja2FnZXMuYzoyNTUgc3JjL3F1ZXJ5Y21kLmM6MjUzCisjOiBzcmMvcXVlcnljbWQuYzozNTMgc3JjL3F1ZXJ5Y21kLmM6NDU0IHNyYy9xdWVyeWNtZC5jOjUxOCBzcmMvc2VsZWN0LmM6ODAKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjE2OSBkcGtnLXNwbGl0L3F1ZXVlLmM6MjE4Cittc2dpZCAiPHN0YW5kYXJkIGVycm9yPiIKK21zZ3N0ciAiPHN0YW5kYXJkb3dlIHd5asWbY2llIGLFgsSZZMOzdz4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzNjcKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIlNlbGVjdGluZyBwcmV2aW91c2x5IGRlc2VsZWN0ZWQgcGFja2FnZSAlcy5cbiIKK21zZ2lkICJTZWxlY3RpbmcgcHJldmlvdXNseSB1bnNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dzdHIgIlphem5hY3plbmllIHBvcHJ6ZWRuaW8gbmllemF6bmFjem9uZWdvIHBha2lldHUgJXMuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzNzEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIlNraXBwaW5nIGRlc2VsZWN0ZWQgcGFja2FnZSAlcy5cbiIKK21zZ2lkICJTa2lwcGluZyB1bnNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dzdHIgIlBvbWluacSZY2llIG5pZXphem5hY3pvbmVnbyBwYWtpZXR1ICVzLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzg3CisjLCBjLWZvcm1hdAorbXNnaWQgIlZlcnNpb24gJS4yNTBzIG9mICUuMjUwcyBhbHJlYWR5IGluc3RhbGxlZCwgc2tpcHBpbmcuXG4iCittc2dzdHIgIldlcnNqYSAlLjI1MHMgcGFraWV0dSAlLjI1MHMgamVzdCBqdcW8IHphaW5zdGFsb3dhbmEuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzOTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZG93bmdyYWRpbmcgJS4yNTBzIGZyb20gJS4yNTBzIHRvICUuMjUwcy4iCittc2dzdHIgInphc3TEhXBpZW5pZSAlLjI1MHMgdyB3ZXJzamkgJS4yNTBzIHdjemXFm25pZWpzesSFIHdlcnNqxIUgJS4yNTBzLiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTQwMgorIywgYy1mb3JtYXQKK21zZ2lkICJXaWxsIG5vdCBkb3duZ3JhZGUgJS4yNTBzIGZyb20gdmVyc2lvbiAlLjI1MHMgdG8gJS4yNTBzLCBza2lwcGluZy5cbiIKK21zZ3N0ciAiIgorIlBha2lldCAlLjI1MHMgdyB3ZXJzamkgJS4yNTBzIG5pZSBixJlkemllIHphc3TEhXBpb255IHdjemXFm25pZWpzesSFIHdlcnNqxIUgIgorIiUuMjUwcy5cbiIKKworIzogc3JjL2NsZWFudXAuYzo4NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidW5hYmxlIHRvIHJlbW92ZSBuZXdseS1pbnN0YWxsZWQgdmVyc2lvbiBvZiBgJS4yNTBzJyB0byBhbGxvdyByZWluc3RhbGxhdGlvbiAiCisib2YgYmFja3VwIGNvcHkiCittc2dzdHIgIiIKKyJuaWUgbW/FvG5hIHVzdW7EhcSHIHphaW5zdGFsb3dhbmVqIG5vd2VqIHdlcnNqaSBcIiUuMjUwc1wiLCBhYnkgdW1vxbxsaXdpxIcgIgorInBvbm93bsSFIGluc3RhbGFjasSZIGtvcGlpIHphcGFzb3dlaiIKKworIzogc3JjL2NsZWFudXAuYzo5MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVzdG9yZSBiYWNrdXAgdmVyc2lvbiBvZiBgJS4yNTBzJyIKK21zZ3N0ciAibmllIG1vxbxuYSBvZHR3b3J6ecSHIGtvcGlpIHphcGFzb3dlaiBcIiUuMjUwc1wiIgorCisjOiBzcmMvY2xlYW51cC5jOjk3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gcmVzdG9yZSBiYWNrdXAgdmVyc2lvbiBvZiBgJS4yNTBzJyIKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIGJhY2t1cCBjb3B5IG9mICclLjI1MHMnIgorbXNnc3RyICJuaWUgbW/FvG5hIG9kdHdvcnp5xIcga29waWkgemFwYXNvd2VqIFwiJS4yNTBzXCIiCisKKyM6IHNyYy9jbGVhbnVwLmM6MTAxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgbmV3bHktaW5zdGFsbGVkIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dzdHIgIm5pZSBtb8W8bmEgdXN1bsSFxIcgbm93byB6YWluc3RhbG93YW5laiB3ZXJzamkgXCIlLjI1MHNcIiIKKworIzogc3JjL2NsZWFudXAuYzoxMDgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBuZXdseS1leHRyYWN0ZWQgdmVyc2lvbiBvZiBgJS4yNTBzJyIKK21zZ3N0ciAibmllIG1vxbxuYSB1c3VuxIXEhyB6YWluc3RhbG93YW5laiBub3dlaiB3ZXJzamkgXCIlLjI1MHNcIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjEwNAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHN0YXQgbmV3IGRpc3QgY29uZmZpbGUgYCUuMjUwcyciCittc2dpZCAidW5hYmxlIHRvIHN0YXQgbmV3IGRpc3RyaWJ1dGVkIGNvbmZmaWxlICclLjI1MHMnIgorbXNnc3RyICJuaWUgbW/FvG5hIHVzdGFsacSHIHN0YW51IG5vd2VnbyBwbGlrdSBrb25maWd1cmFjeWpuZWdvIFwiJS4yNTBzXCIiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgY3VycmVudCBpbnN0YWxsZWQgY29uZmZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5pZSBtb8W8bmEgdXN0YWxpxIcgc3RhbnUgYWt0dWFsbmVnbyBwbGlrdSBrb25maWd1cmFjeWpuZWdvIFwiJS4yNTBzXCIiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxMjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIkNvbmZpZ3VyYXRpb24gZmlsZSBgJXMnLCBkb2VzIG5vdCBleGlzdCBvbiBzeXN0ZW0uXG4iCisiSW5zdGFsbGluZyBuZXcgY29uZmlnIGZpbGUgYXMgeW91IHJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiIgorIlxuIgorIlBsaWsga29uZmlndXJhY3lqbnkgXCIlc1wiIG5pZSBpc3RuaWVqZSB3IHN5c3RlbWllLlxuIgorIkluc3RhbG93YW5pZSBub3dlZ28gcGxpa3Uga29uZmlndXJhY3lqbmVnbyB3ZWTFgnVnIMW8xIVkYW5pYS5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE2OAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIHJlbW92ZSBvbGQgYmFja3VwICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiJXM6IG5pZSBtb8W8bmEgdXN1bsSFxIcgcG9wcnplZG5pZWoga29waWkgXCIlLjI1MHNcIjogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW5hbWUgJyUuMjUwcycgdG8gJyUuMjUwcyc6ICVzIgorbXNnc3RyICIlczogbmllIG1vxbxuYSB6bWllbmnEhyBuYXp3eSBcIiUuMjUwc1wiIG5hIFwiJS4yNTBzXCI6ICVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTgyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiJXM6IG5pZSBtb8W8bmEgdXN1bsSFxIcgXCIlLjI1MHNcIjogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxODgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlIG9sZCBkaXN0cmliIHZlcnNpb24gJyUuMjUwcyc6ICVzIgorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlIG9sZCBkaXN0cmlidXRlZCB2ZXJzaW9uICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiJXM6IG5pZSBtb8W8bmEgdXN1bsSFxIcgcG9wcnplZG5pZWogd2Vyc2ppIFwiJS4yNTBzXCI6ICVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTkyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlICclLjI1MHMnIChiZWZvcmUgb3ZlcndyaXRlKTogJXMiCittc2dzdHIgIiVzOiBuaWUgbW/FvG5hIHVzdW7EhcSHIFwiJS4yNTBzXCIgKHByemVkIG5hZHBpc2FuaWVtKTogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byBsaW5rICclLjI1MHMnIHRvICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiJXM6IG5pZSBtb8W8bmEgdXR3b3J6ecSHIGRvd2nEhXphbmlhIFwiJS4yNTBzXCIgZG8gXCIlLjI1MHNcIjogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoyMDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW5zdGFsbGluZyBuZXcgdmVyc2lvbiBvZiBjb25maWcgZmlsZSAlcyAuLi5cbiIKK21zZ3N0ciAiSW5zdGFsb3dhbmllIG5vd2VqIHdlcnNqaSBwbGlrdSBrb25maWd1cmFjeWpuZWdvICVzIC4uLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjA2IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo1NDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgYCUuMjUwcycgYXMgYCUuMjUwcyciCittc2dzdHIgIm5pZSBtb8W8bmEgemFpbnN0YWxvd2HEhyBcIiUuMjUwc1wiIGpha28gXCIlLjI1MHNcIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI1NworIywgYy1mb3JtYXQKK21zZ2lkICJubyBwYWNrYWdlIG5hbWVkIGAlcycgaXMgaW5zdGFsbGVkLCBjYW5ub3QgY29uZmlndXJlIgorbXNnc3RyICJwYWtpZXQgXCIlc1wiIG5pZSBqZXN0IHphaW5zdGFsb3dhbnksIG5pZSBtb8W8bmEgZ28gc2tvbmZpZ3Vyb3dhxIciCisKKyM6IHNyYy9jb25maWd1cmUuYzoyNjAKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlLjI1MHMgaXMgYWxyZWFkeSBpbnN0YWxsZWQgYW5kIGNvbmZpZ3VyZWQiCittc2dzdHIgInBha2lldCAlLjI1MHMgamVzdCBqdcW8IHphaW5zdGFsb3dhbnkgaSBza29uZmlndXJvd2FueSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI2MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisicGFja2FnZSAlLjI1MHMgaXMgbm90IHJlYWR5IGZvciBjb25maWd1cmF0aW9uXG4iCisiIGNhbm5vdCBjb25maWd1cmUgKGN1cnJlbnQgc3RhdHVzIGAlLjI1MHMnKSIKK21zZ3N0ciAiIgorInBha2lldCAlLjI1MHMgbmllIGplc3QgZ290b3d5IGRvIHNrb25maWd1cm93YW5pYVxuIgorIiBuaWUgbW/FvG5hIGdvIHNrb25maWd1cm93YcSHIChiaWXFvMSFY3kgc3RhbiBcIiUuMjUwc1wiKSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI5NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogZGVwZW5kZW5jeSBwcm9ibGVtcyBwcmV2ZW50IGNvbmZpZ3VyYXRpb24gb2YgJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiBwcm9ibGVteSB6IHphbGXFvG5vxZtjaWFtaSB1bmllbW/FvGxpd2lhasSFIHNrb25maWd1cm93YW5pZSAlczpcbiIKKyIlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI5NworbXNnaWQgImRlcGVuZGVuY3kgcHJvYmxlbXMgLSBsZWF2aW5nIHVuY29uZmlndXJlZCIKK21zZ3N0ciAicHJvYmxlbXkgeiB6YWxlxbxub8WbY2lhbWkgLSBwb3pvc3Rhd2lvbnkgbmllc2tvbmZpZ3Vyb3dhbnkiCisKKyM6IHNyYy9jb25maWd1cmUuYzozMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6ICVzOiBkZXBlbmRlbmN5IHByb2JsZW1zLCBidXQgY29uZmlndXJpbmcgYW55d2F5IGFzIHlvdSByZXF1ZXN0ZWQ6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiAlczogcHJvYmxlbXkgeiB6YWxlxbxub8WbY2lhbWksIGFsZSB6b3N0YW5pZSBza29uZmlndXJvd2FueSB3ZWTFgnVnICIKKyLFvMSFZGFuaWE6XG4iCisiJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzozMDkKK21zZ2lkICIiCisiUGFja2FnZSBpcyBpbiBhIHZlcnkgYmFkIGluY29uc2lzdGVudCBzdGF0ZSAtIHlvdSBzaG91bGRcbiIKKyIgcmVpbnN0YWxsIGl0IGJlZm9yZSBhdHRlbXB0aW5nIGNvbmZpZ3VyYXRpb24uIgorbXNnc3RyICIiCisiUGFraWV0IGplc3QgdyB6xYJ5bSBzdGFuaWUgLSBwb3dpbmllbiB6b3N0YcSHIHByemVpbnN0YWxvd2FueVxuIgorIiBwcnplZCBwcsOzYsSFIGplZ28gc2tvbmZpZ3Vyb3dhbmlhLiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjMxMgorIywgYy1mb3JtYXQKK21zZ2lkICJTZXR0aW5nIHVwICVzICglcykgLi4uXG4iCittc2dzdHIgIktvbmZpZ3Vyb3dhbmllICVzICglcykgLi4uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzozOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiB1bmFibGUgdG8gc3RhdCBjb25maWcgZmlsZSAnJXMnXG4iCisiICg9ICclcycpOiAlcyIKK21zZ3N0ciAiIgorIiVzOiBuaWUgbW/FvG5hIHVzdGFsacSHIHN0YW51IHBsaWt1IGtvbmZpZ3VyYWN5am5lZ28gXCIlc1wiXG4iCisiICg9IFwiJXNcIik6ICVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDA5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogY29uZmlnIGZpbGUgJyVzJyBpcyBhIGNpcmN1bGFyIGxpbmtcbiIKKyIgKD0gJyVzJykiCittc2dzdHIgIiIKKyIlczogcGxpayBrb25maWd1cmFjeWpueSBcIiVzXCIgamVzdCB6YXDEmXRsb255bSBkb3dpxIV6YW5pZW1cbiIKKyIgKD0gXCIlc1wiKSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQxOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IHVuYWJsZSB0byByZWFkbGluayBjb25mZmlsZSAnJXMnXG4iCisiICg9ICclcycpOiAlcyIKK21zZ3N0ciAiIgorIiVzOiBuaWUgbW/FvG5hIG9rcmXFm2xpxIcgZG93acSFemFuaWEgZG8gcGxpa3Uga29uZmlndXJhY3lqbmVnbyBcIiVzXCJcbiIKKyIgKD0gXCIlc1wiKTogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzo0NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBjb25mZmlsZSAnJS4yNTBzJyByZXNvbHZlcyB0byBkZWdlbmVyYXRlIGZpbGVuYW1lXG4iCisiICgnJXMnIGlzIGEgc3ltbGluayB0byAnJXMnKSIKK21zZ3N0ciAiIgorIiVzOiBwbGlrIGtvbmZpZ3VyYWN5am55IFwiJS4yNTBzXCIgamVzdCBkb3dpxIV6YW5pZW0gZG8gYsWCxJlkbmVnbyBwbGlrdVxuIgorIiAoXCIlc1wiIGplc3QgZG93acSFemFuaWVtIGRvIFwiJXNcIikiCisKKyM6IHNyYy9jb25maWd1cmUuYzo0NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGNvbmZmaWxlICclLjI1MHMnIGlzIG5vdCBhIHBsYWluIGZpbGUgb3Igc3ltbGluayAoPSAnJXMnKSIKK21zZ3N0ciAiIgorIiVzOiBwbGlrIGtvbmZpZ3VyYWN5am55IFwiJS4yNTBzXCIgbmllIGplc3QgcGxpa2llbSBhbmkgZG93acSFemFuaWVtICg9IFwiJXMiCisiXCIpIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDg2Cittc2dpZCAibWQ1aGFzaCIKK21zZ3N0ciAic2tyw7N0IG1kNSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQ5MgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogdW5hYmxlIHRvIG9wZW4gY29uZmZpbGUgJXMgZm9yIGhhc2g6ICVzIgorbXNnc3RyICIiCisiJXM6IG5pZSBtb8W8bmEgb3R3b3J6ecSHIHBsaWt1IGtvbmZpZ3VyYWN5am5lZ28gJXMgZGxhIHNwcmF3ZHplbmlhIHN1bXkgIgorImtvbnRyb2xuZWo6ICVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6NTIyIHNyYy9jb25maWd1cmUuYzo1MjYKK21zZ2lkICJjb25mZmlsZSBkaWZmZXJlbmNlIHZpc3VhbGl6ZXIiCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjU0MworbXNnaWQgIlR5cGUgYGV4aXQnIHdoZW4geW91J3JlIGRvbmUuXG4iCittc2dzdHIgIk5hbGXFvHkgd3Bpc2HEhyBcImV4aXRcIiBwbyB6YWtvxYRjemVuaXUgcHJhY3kuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo1NTIgc3JjL2NvbmZpZ3VyZS5jOjU1NgorbXNnaWQgImNvbmZmaWxlIHNoZWxsIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIkNvbmZpZ3VyYXRpb24gZmlsZSBgJXMnIgorbXNnc3RyICIiCisiXG4iCisiUGxpayBrb25maWd1cmFjeWpueSBcIiVzXCIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIChhY3R1YWxseSBgJXMnKSIKK21zZ3N0ciAiIChha3R1YWxuaWUgXCIlc1wiKSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYwOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiID09PiBGaWxlIG9uIHN5c3RlbSBjcmVhdGVkIGJ5IHlvdSBvciBieSBhIHNjcmlwdC5cbiIKKyIgPT0+IEZpbGUgYWxzbyBpbiBwYWNrYWdlIHByb3ZpZGVkIGJ5IHBhY2thZ2UgbWFpbnRhaW5lci5cbiIKK21zZ3N0ciAiIgorIlxuIgorIiA9PT4gUGxpayB3IHN5c3RlbWllIHV0d29yem9ueSBwcnpleiBhZG1pbmlzdHJhdG9yYSBsdWIgc2tyeXB0LlxuIgorIiA9PT4gUGxpayB3IHBha2llY2llIGRvc3RhcmN6b255IHByemV6IG9waWVrdW5hIHBha2lldHUuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiAgICAgTm90IG1vZGlmaWVkIHNpbmNlIGluc3RhbGxhdGlvbi5cbiIKK21zZ3N0ciAiIgorIlxuIgorIiAgICAgTmllIHptb2R5Zmlrb3dhbnkgcG8gemFpbnN0YWxvd2FuaXUuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiA9PT4gTW9kaWZpZWQgKGJ5IHlvdSBvciBieSBhIHNjcmlwdCkgc2luY2UgaW5zdGFsbGF0aW9uLlxuIgorbXNnc3RyICIiCisiXG4iCisiID09PiBabW9keWZpa293YW55IChwcnpleiBhZG1pbmlzdHJhdG9yYSBsdWIgc2tyeXB0KSBwbyB6YWluc3RhbG93YW5pdS5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYxNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiID09PiBEZWxldGVkIChieSB5b3Ugb3IgYnkgYSBzY3JpcHQpIHNpbmNlIGluc3RhbGxhdGlvbi5cbiIKK21zZ3N0ciAiIgorIlxuIgorIiA9PT4gVXN1bmnEmXR5IChwcnpleiBhZG1pbmlzdHJhdG9yYSBsdWIgc2tyeXB0KSBwbyB6YWluc3RhbG93YW5pdS5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYxOQorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IFBhY2thZ2UgZGlzdHJpYnV0b3IgaGFzIHNoaXBwZWQgYW4gdXBkYXRlZCB2ZXJzaW9uLlxuIgorbXNnc3RyICIgPT0+IFR3w7NyY2EgcGFraWV0dSB6YW1pZcWbY2nFgiB6YWt0dWFsaXpvd2FuxIUgd2Vyc2rEmS5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYyMAorIywgYy1mb3JtYXQKK21zZ2lkICIgICAgIFZlcnNpb24gaW4gcGFja2FnZSBpcyB0aGUgc2FtZSBhcyBhdCBsYXN0IGluc3RhbGxhdGlvbi5cbiIKK21zZ3N0ciAiICAgICBXZXJzamEgdyBwYWtpZWNpZSBqZXN0IHRha2Egc2FtYSBqYWsgcHJ6eSBvc3RhdG5pZWogaW5zdGFsYWNqaS5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYyOAorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IFVzaW5nIG5ldyBmaWxlIGFzIHlvdSByZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiA9PT4gV3lrb3J6eXN0YW55IHpvc3RhbmllIG5vd3kgcGxpayB3ZWTFgnVnIMW8xIVkYW5pYS5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYzMgorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IFVzaW5nIGN1cnJlbnQgb2xkIGZpbGUgYXMgeW91IHJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiID09PiBXeWtvcnp5c3Rhbnkgem9zdGFuaWUgYWt0dWFsbnkgcGxpayB3ZWTFgnVnIMW8xIVkYW5pYS5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY0MQorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IEtlZXBpbmcgb2xkIGNvbmZpZyBmaWxlIGFzIGRlZmF1bHQuXG4iCittc2dzdHIgIiA9PT4gRG9tecWbbG5pZSB6b3N0YW5pZSB6YWNob3dhbnkgcG9wcnplZG5pIHBsaWsga29uZmlndXJhY3lqbnkuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBVc2luZyBuZXcgY29uZmlnIGZpbGUgYXMgZGVmYXVsdC5cbiIKK21zZ3N0ciAiID09PiBEb215xZtsbmllIHpvc3RhbmllIHphaW5zdGFsb3dhbnkgbm93eSBwbGlrIGtvbmZpZ3VyYWN5am55LlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjUyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiICAgV2hhdCB3b3VsZCB5b3UgbGlrZSB0byBkbyBhYm91dCBpdCA/ICBZb3VyIG9wdGlvbnMgYXJlOlxuIgorIiAgICBZIG9yIEkgIDogaW5zdGFsbCB0aGUgcGFja2FnZSBtYWludGFpbmVyJ3MgdmVyc2lvblxuIgorIiAgICBOIG9yIE8gIDoga2VlcCB5b3VyIGN1cnJlbnRseS1pbnN0YWxsZWQgdmVyc2lvblxuIgorIiAgICAgIEQgICAgIDogc2hvdyB0aGUgZGlmZmVyZW5jZXMgYmV0d2VlbiB0aGUgdmVyc2lvbnNcbiIKKyIgICAgICBaICAgICA6IHN0YXJ0IGEgc2hlbGwgdG8gZXhhbWluZSB0aGUgc2l0dWF0aW9uXG4iCittc2dzdHIgIiIKKyIgICBOYWxlxbx5IHd5YnJhxIcgamVkbm8geiBwb8WbcsOzZCB3eW1pZW5pb255Y2ggcG9uacW8ZWogZHppYcWCYcWEOlxuIgorIiAgICBZIGx1YiBJICA6IHphaW5zdGFsb3dhbmllIG5vd2VqIHdlcnNqaSB6IHBha2lldHVcbiIKKyIgICAgTiBsdWIgTyAgOiB6YWNob3dhbmllIGJpZcW8xIVjZWogd2Vyc2ppXG4iCisiICAgICAgRCAgICAgIDogcG9rYXphbmllIHLDs8W8bmljIHBvbWnEmWR6eSB3ZXJzamFtaSBwbGlrdVxuIgorIiAgICAgIFogICAgICA6IHphdHJ6eW1hbmllIHRlZ28gcHJvY2VzdSB3IGNlbHUgcm96ZXpuYW5pYSBzeXR1YWNqaVxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjU5CisjLCBjLWZvcm1hdAorbXNnaWQgIiBUaGUgZGVmYXVsdCBhY3Rpb24gaXMgdG8ga2VlcCB5b3VyIGN1cnJlbnQgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIERvbXnFm2xueW0gZHppYcWCYW5pZW0gamVzdCB6YWNob3dhbmllIGJpZcW8xIVjZWogd2Vyc2ppLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjYxCisjLCBjLWZvcm1hdAorbXNnaWQgIiBUaGUgZGVmYXVsdCBhY3Rpb24gaXMgdG8gaW5zdGFsbCB0aGUgbmV3IHZlcnNpb24uXG4iCittc2dzdHIgIiBEb215xZtsbnltIGR6aWHFgmFuaWVtIGplc3QgemFpbnN0YWxvd2FuaWUgbm93ZWogd2Vyc2ppLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjY2Cittc2dpZCAiW2RlZmF1bHQ9Tl0iCittc2dzdHIgIltkb215xZtsbmllPU5dIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjY3Cittc2dpZCAiW2RlZmF1bHQ9WV0iCittc2dzdHIgIltkb215xZtsbmllPVldIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjY4Cittc2dpZCAiW25vIGRlZmF1bHRdIgorbXNnc3RyICJbYnJhayBkb215xZtsbmVnbyBkemlhxYJhbmlhXSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY3MQorbXNnaWQgImVycm9yIHdyaXRpbmcgdG8gc3RkZXJyLCBkaXNjb3ZlcmVkIGJlZm9yZSBjb25mZmlsZSBwcm9tcHQiCittc2dzdHIgImLFgsSFZCB6YXBpc3UgZG8gc3RkZXJyIHd5a3J5dHkgcHJ6ZWQgdWthemFuaWVtIHNpxJkgem5ha3UgemFjaMSZdHkiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2ODAKK21zZ2lkICJyZWFkIGVycm9yIG9uIHN0ZGluIGF0IGNvbmZmaWxlIHByb21wdCIKK21zZ3N0ciAiYsWCxIVkIG9kY3p5dHUgemUgc3RhbmRhcmRvd2VnbyB3ZWrFm2NpYSB3eWtyeXR5IHBvIHpuYWt1IHphY2jEmXR5IgorCisjOiBzcmMvY29uZmlndXJlLmM6NjgxCittc2dpZCAiRU9GIG9uIHN0ZGluIGF0IGNvbmZmaWxlIHByb21wdCIKK21zZ3N0ciAiRU9GIG5hIHN0YW5kYXJkb3d5bSB3ZWrFm2NpdSB3cHJvd2Fkem9ueSB6ZSB6bmFrdSB6YWNoxJl0eSIKKworIzogc3JjL2RlcGNvbi5jOjE3NQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBkZXBlbmRzIG9uICVzIgorbXNnc3RyICIlcyB3eW1hZ2EgJXMiCisKKyM6IHNyYy9kZXBjb24uYzoxNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcHJlLWRlcGVuZHMgb24gJXMiCittc2dzdHIgIiVzIHd5bWFnYSB3c3TEmXBuaWUgJXMiCisKKyM6IHNyYy9kZXBjb24uYzoxODEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcmVjb21tZW5kcyAlcyIKK21zZ3N0ciAiJXMgcG9sZWNhICVzIgorCisjOiBzcmMvZGVwY29uLmM6MTg0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHN1Z2dlc3RzICVzIgorbXNnc3RyICIlcyBzdWdlcnVqZSAlcyIKKworIzogc3JjL2RlcGNvbi5jOjE4NworIywgYy1mb3JtYXQKK21zZ2lkICIlcyBicmVha3MgJXMiCittc2dzdHIgIiVzIG5hcnVzemEgemFsZcW8bm/Fm2NpICVzIgorCisjOiBzcmMvZGVwY29uLmM6MTkwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGNvbmZsaWN0cyB3aXRoICVzIgorbXNnc3RyICIlcyB3IGtvbmZsaWtjaWUgeiAlcyIKKworIzogc3JjL2RlcGNvbi5jOjE5MworIywgYy1mb3JtYXQKK21zZ2lkICIlcyBlbmhhbmNlcyAlcyIKK21zZ3N0ciAiJXMgcm96c3plcnphICVzIgorCisjOiBzcmMvZGVwY29uLmM6Mjk2CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHRvIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIGplc3QgcHJ6ZXpuYWN6b255IGRvIHVzdW5pxJljaWEuXG4iCisKKyM6IHNyYy9kZXBjb24uYzoyOTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdG8gYmUgZGVjb25maWd1cmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyBqZXN0IHByemV6bmFjem9ueSBkbyB6ZGVrb25maWd1cm93YW5pYS5cbiIKKworIzogc3JjL2RlcGNvbi5jOjMwNAorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB0byBiZSBpbnN0YWxsZWQsIGJ1dCBpcyB2ZXJzaW9uICUuMjUwcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgamVzdCBwcnplem5hY3pvbnkgZG8gemFpbnN0YWxvd2FuaWEsIGFsZSB3IHdlcnNqaSAlLjI1MHMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgaW5zdGFsbGVkLCBidXQgaXMgdmVyc2lvbiAlLjI1MHMuXG4iCittc2dzdHIgIiAgJS4yNTBzIGplc3QgemFpbnN0YWxvd2FueSwgYWxlIHcgd2Vyc2ppICUuMjUwcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjMzMworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB1bnBhY2tlZCwgYnV0IGhhcyBuZXZlciBiZWVuIGNvbmZpZ3VyZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIGplc3Qgcm96cGFrb3dhbnksIGFsZSBuaWUgYnnFgiBqZXN6Y3plIHNrb25maWd1cm93YW55LlxuIgorCisjOiBzcmMvZGVwY29uLmM6MzM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHVucGFja2VkLCBidXQgaXMgdmVyc2lvbiAlLjI1MHMuXG4iCittc2dzdHIgIiAgJS4yNTBzIGplc3Qgcm96cGFrb3dhbnksIGFsZSB3IHdlcnNqaSAlLjI1MHMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozNDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgbGF0ZXN0IGNvbmZpZ3VyZWQgdmVyc2lvbiBpcyAlLjI1MHMuXG4iCittc2dzdHIgIiAgJS4yNTBzIG1hIHNrb25maWd1cm93YW7EhSB3ZXJzasSZICUuMjUwcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjM1MworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyAlcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgamVzdCAlcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjM4OAorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYnV0IGlzIHRvIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIGRvc3RhcmN6YSAlLjI1MHMgYWxlIGplc3QgcHJ6ZXpuYWN6b255IGRvIHVzdW5pxJljaWEuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGJ1dCBpcyB0byBiZSBkZWNvbmZpZ3VyZWQuXG4iCittc2dzdHIgIiIKKyIgICUuMjUwcyBkb3N0YXJjemEgJS4yNTBzIGFsZSBqZXN0IHByemV6bmFjem9ueSBkbyB6ZGVrb25maWd1cm93YW5pYS5cbiIKKworIzogc3JjL2RlcGNvbi5jOjQwMQorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYnV0IGlzICVzLlxuIgorbXNnc3RyICIgICUuMjUwcyBkb3N0YXJjemEgJS4yNTBzIGFsZSBqZXN0ICVzLlxuIgorCisjOiBzcmMvZGVwY29uLmM6NDE1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIG5vdCBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIG5pZSBqZXN0IHphaW5zdGFsb3dhbnkuXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgKHZlcnNpb24gJS4yNTBzKSBpcyB0byBiZSBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzICh3ZXJzamEgJS4yNTBzKSBqZXN0IHByemV6bmFjem9ueSBkbyB6YWluc3RhbG93YW5pYS5cbiIKKworIzogc3JjL2RlcGNvbi5jOjQ2OAorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyAodmVyc2lvbiAlLjI1MHMpIGlzIHByZXNlbnQgYW5kICVzLlxuIgorbXNnc3RyICIgICUuMjUwcyAod2Vyc2phICUuMjUwcykgamVzdCBvYmVjbnkgaSAlcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjQ5NQorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYW5kIGlzIHRvIGJlIGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMgZG9zdGFyY3phICUuMjUwcyBpIGplc3QgcHJ6ZXpuYWN6b255IGRvIHphaW5zdGFsb3dhbmlhLlxuIgorCisjOiBzcmMvZGVwY29uLmM6NTM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBhbmQgaXMgcHJlc2VudCBhbmQgJXMuXG4iCittc2dzdHIgIiAgJS4yNTBzIGRvc3RhcmN6YSAlLjI1MHMgaSBqZXN0IG9iZWNueSBvcmF6ICVzLlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTAKKyMsIGZ1enp5CisjfCBtc2dpZCAiVHlwZSBkcGtnLXRyaWdnZXIgLS1oZWxwIGZvciBoZWxwIGFib3V0IHRoaXMgdXRpbGl0eS4iCittc2dpZCAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBkaXZlcnRpbmcgZmlsZXMuIgorbXNnc3RyICJXcGlzeiBkcGtnLXRyaWdnZXIgLS1oZWxwLCBhYnkgb3RyenltYcSHIHBvbW9jLiIKKworIzogc3JjL2RpdmVydGNtZC5jOjY2IHNyYy9zdGF0Y21kLmM6NTcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjgwCisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiAlcyB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICJEZWJpYW4gJXMgdyB3ZXJzamkgJXMuXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo3MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIlxuIgorI3wgIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyN8ICJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLiIKK21zZ2lkICIiCisiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDEwIEd1aWxsZW0gSm92ZXIuXG4iCittc2dzdHIgIiIKKyJcbiIKKyJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo3NSBzcmMvbWFpbi5jOjYzIHNyYy9xdWVyeWNtZC5jOjYwMyBzcmMvc3RhdGNtZC5jOjY1CisjOiBzcmMvdHJpZ2NtZC5jOjU1IGRwa2ctZGViL21haW4uYzo1NyBkcGtnLXNwbGl0L21haW4uYzo1MQorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjg5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvclxuIgorImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LlxuIgorbXNnc3RyICIiCisiXG4iCisiTmluaWVqc3p5IHByb2dyYW0gamVzdCBvcHJvZ3JhbW93YW5pZW0gd29sbnltLCBzcHJhd2TFuiBcbiIKKyJQb3dzemVjaG7EhSBMaWNlbmNqxJkgUHVibGljem7EhSBHTlUgdyB3ZXJzamkgZHJ1Z2llaiBsdWIgcMOzxbpuaWVqc3plaixcbiIKKyJieSBkb3dpZWR6aWXEhyBzacSZIG8gd2FydW5rYWNoIHJvenBvd3N6ZWNobmlhbmlhLlxuIgorIkJyYWsgSkFLSUVKS09MV0lFSyBnd2FyYW5jamkuXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo4NyBzcmMvbWFpbi5jOjgxIHNyYy9xdWVyeWNtZC5jOjYxNSBzcmMvc3RhdGNtZC5jOjc3CisjOiBkcGtnLWRlYi9tYWluLmM6NjkgZHBrZy1zcGxpdC9tYWluLmM6NjMgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjk3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gPGNvbW1hbmQ+XG4iCisiXG4iCittc2dzdHIgIiIKKyJVxbx5Y2llOiAlcyBbPG9wY2phPiAuLi5dIDxwb2xlY2VuaWU+XG4iCisiXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo5MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICBbLS1hZGRdIDxmaWxlPiAgICAgICAgICAgYWRkIGEgZGl2ZXJzaW9uLlxuIgorIiAgLS1yZW1vdmUgPGZpbGU+ICAgICAgICAgIHJlbW92ZSB0aGUgZGl2ZXJzaW9uLlxuIgorIiAgLS1saXN0IFs8Z2xvYi1wYXR0ZXJuPl0gIHNob3cgZmlsZSBkaXZlcnNpb25zLlxuIgorIiAgLS1saXN0cGFja2FnZSA8ZmlsZT4gICAgIHNob3cgd2hhdCBwYWNrYWdlIGRpdmVydHMgdGhlIGZpbGUuXG4iCisiICAtLXRydWVuYW1lIDxmaWxlPiAgICAgICAgcmV0dXJuIHRoZSBkaXZlcnRlZCBmaWxlLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoxMDAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gPGNvbW1hbmQ+XG4iCisjfCAiXG4iCisjfCAiQ29tbWFuZHM6XG4iCisjfCAiICBbLS1hZGRdIDxmaWxlPiAgICAgICAgICAgYWRkIGEgZGl2ZXJzaW9uLlxuIgorI3wgIiAgLS1yZW1vdmUgPGZpbGU+ICAgICAgICAgIHJlbW92ZSB0aGUgZGl2ZXJzaW9uLlxuIgorI3wgIiAgLS1saXN0IFs8Z2xvYi1wYXR0ZXJuPl0gIHNob3cgZmlsZSBkaXZlcnNpb25zLlxuIgorI3wgIiAgLS1saXN0cGFja2FnZSA8ZmlsZT4gICAgIHNob3cgd2hhdCBwYWNrYWdlIGRpdmVydHMgdGhlIGZpbGUuXG4iCisjfCAiICAtLXRydWVuYW1lIDxmaWxlPiAgICAgICAgcmV0dXJuIHRoZSBkaXZlcnRlZCBmaWxlLlxuIgorI3wgIlxuIgorI3wgIk9wdGlvbnM6XG4iCisjfCAiICAtLXBhY2thZ2UgPHBhY2thZ2U+ICAgICAgbmFtZSBvZiB0aGUgcGFja2FnZSB3aG9zZSBjb3B5IG9mIDxmaWxlPiB3aWxsICIKKyN8ICJub3RcbiIKKyN8ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJlIGRpdmVydGVkLlxuIgorI3wgIiAgLS1sb2NhbCAgICAgICAgICAgICAgICAgIGFsbCBwYWNrYWdlcycgdmVyc2lvbnMgYXJlIGRpdmVydGVkLlxuIgorI3wgIiAgLS1kaXZlcnQgPGRpdmVydC10bz4gICAgIHRoZSBuYW1lIHVzZWQgYnkgb3RoZXIgcGFja2FnZXMnIHZlcnNpb25zLlxuIgorI3wgIiAgLS1yZW5hbWUgICAgICAgICAgICAgICAgIGFjdHVhbGx5IG1vdmUgdGhlIGZpbGUgYXNpZGUgKG9yIGJhY2spLlxuIgorI3wgIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIHNldCB0aGUgZGlyZWN0b3J5IHdpdGggdGhlIGRpdmVyc2lvbnMgZmlsZS5cbiIKKyN8ICIgIC0tdGVzdCAgICAgICAgICAgICAgICAgICBkb24ndCBkbyBhbnl0aGluZywganVzdCBkZW1vbnN0cmF0ZS5cbiIKKyN8ICIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBxdWlldCBvcGVyYXRpb24sIG1pbmltYWwgb3V0cHV0LlxuIgorI3wgIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisjfCAiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyN8ICJcbiIKKyN8ICJXaGVuIGFkZGluZywgZGVmYXVsdCBpcyAtLWxvY2FsIGFuZCAtLWRpdmVydCA8b3JpZ2luYWw+LmRpc3RyaWIuXG4iCisjfCAiV2hlbiByZW1vdmluZywgLS1wYWNrYWdlIG9yIC0tbG9jYWwgYW5kIC0tZGl2ZXJ0IG11c3QgbWF0Y2ggaWYgIgorI3wgInNwZWNpZmllZC5cbiIKKyN8ICJQYWNrYWdlIHByZWluc3QvcG9zdHJtIHNjcmlwdHMgc2hvdWxkIGFsd2F5cyBzcGVjaWZ5IC0tcGFja2FnZSBhbmQgLS0iCisjfCAiZGl2ZXJ0LlxuIgorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1wYWNrYWdlIDxwYWNrYWdlPiAgICAgIG5hbWUgb2YgdGhlIHBhY2thZ2Ugd2hvc2UgY29weSBvZiA8ZmlsZT4gd2lsbCAiCisibm90XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiZSBkaXZlcnRlZC5cbiIKKyIgIC0tbG9jYWwgICAgICAgICAgICAgICAgICBhbGwgcGFja2FnZXMnIHZlcnNpb25zIGFyZSBkaXZlcnRlZC5cbiIKKyIgIC0tZGl2ZXJ0IDxkaXZlcnQtdG8+ICAgICB0aGUgbmFtZSB1c2VkIGJ5IG90aGVyIHBhY2thZ2VzJyB2ZXJzaW9ucy5cbiIKKyIgIC0tcmVuYW1lICAgICAgICAgICAgICAgICBhY3R1YWxseSBtb3ZlIHRoZSBmaWxlIGFzaWRlIChvciBiYWNrKS5cbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICBzZXQgdGhlIGRpcmVjdG9yeSB3aXRoIHRoZSBkaXZlcnNpb25zIGZpbGUuXG4iCisiICAtLXRlc3QgICAgICAgICAgICAgICAgICAgZG9uJ3QgZG8gYW55dGhpbmcsIGp1c3QgZGVtb25zdHJhdGUuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgcXVpZXQgb3BlcmF0aW9uLCBtaW5pbWFsIG91dHB1dC5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCittc2dzdHIgIiIKKyJVxbx5Y2llOiAlcyBbPG9wY2phPiAuLi5dIDxwb2xlY2VuaWU+XG4iCisiXG4iCisiUG9sZWNlbmlhOlxuIgorIiAgWy0tYWRkXSA8cGxpaz4gICAgICAgICAgIGRvZGFqZSBvbWluacSZY2llLlxuIgorIiAgLS1yZW1vdmUgPHBsaWs+ICAgICAgICAgIHVzdXdhIG9taW5pxJljaWUuXG4iCisiICAtLWxpc3QgWzx3em9yemVjLWdsb2I+XSAgcG9rYXp1amUgb21pbmnEmWNpYSBwbGlrdS5cbiIKKyIgIC0tbGlzdHBhY2thZ2UgPHBsaWs+ICAgICBwb2thenVqZSBwYWtpZXQgemF3aWVyYWrEhWN5IG9taW5pxJljaWUgcGxpa3UuXG4iCisiICAtLXRydWVuYW1lIDxwbGlrPiAgICAgICAgendyYWNhIG9taW5pxJl0eSBwbGlrLlxuIgorIlxuIgorIk9wY2plOlxuIgorIiAgLS1wYWNrYWdlIDxwYWtpZXQ+ICAgICAgIG5hendhIHBha2lldHUsIGt0w7NyZWdvIGtvcGlhIDxwbGlrdT4gbmllXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgIGLEmWR6aWUgb21pbmnEmXRhLlxuIgorIiAgLS1sb2NhbCAgICAgICAgICAgICAgICAgIHdzenlzdGtpZSB3ZXJzamUgcGFraWV0dSBzxIUgb21pamFuZS5cbiIKKyIgIC0tZGl2ZXJ0IDxkaXZlcnQtdG8+ICAgICBuYXp3YSB1xbx5d2FuZSBwcnpleiB3ZXJzamUgaW5ueWNoIHBha2lldMOzdy5cbiIKKyIgIC0tcmVuYW1lICAgICAgICAgICAgICAgICBuYXR5Y2htaWFzdCB6bWllbmlhIG5henfEmSBwbGlrdS5cbiIKKyIgIC0tYWRtaW5kaXIgPGthdGFsb2c+ICAgICB1c3Rhd2lhIGthdGFsb2cgemF3aWVyYWrEhWN5IHBsaWsgZGl2ZXJzaW9ucy5cbiIKKyIgIC0tdGVzdCAgICAgICAgICAgICAgICAgICBuaWMgbmllIHJvYmksIHR5bGtvIHBva2F6dWplLCBjbyBiecWCb2J5ICIKKyJ6cm9iaW9uZS5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICB0cnliIGNpY2h5LCBrb211bmlrYXR5IG9ncmFuaWN6b25lIGRvIG1pbmltdW0uXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgd3nFm3dpZXRsYSB0ZW4ga29tdW5pa2F0IHBvbW9jeVxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHd5xZt3aWV0bGEgaW5mb3JtYWNqZSBvIHdlcnNqaS5cbiIKKyJcbiIKKyJEb215xZtsbmUgb3BjamUgcG9kY3phcyBkb2Rhd2FuaWE6IC0tbG9jYWwgaSAtLWRpdmVydCA8b3J5Z2luYcWCPi5kaXN0cmliLlxuIgorIlBvZGN6YXMgdXN1d2FuaWE6IC0tcGFja2FnZSBsdWIgLS1sb2NhbCBpIC0tZGl2ZXJ0IG11c3rEhSBwYXNvd2HEhywgamXFm2xpICIKKyJwb2Rhbm8uXG4iCisiU2tyeXB0eSBwcnplZC9wb2luc3RhbGFjeWpuZSBtdXN6xIUgemF3c3plIHBvZGF3YcSHIC0tcGFja2FnZSBpIC0tZGl2ZXJ0LlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJXaGVuIGFkZGluZywgZGVmYXVsdCBpcyAtLWxvY2FsIGFuZCAtLWRpdmVydCA8b3JpZ2luYWw+LmRpc3RyaWIuXG4iCisiV2hlbiByZW1vdmluZywgLS1wYWNrYWdlIG9yIC0tbG9jYWwgYW5kIC0tZGl2ZXJ0IG11c3QgbWF0Y2ggaWYgc3BlY2lmaWVkLlxuIgorIlBhY2thZ2UgcHJlaW5zdC9wb3N0cm0gc2NyaXB0cyBzaG91bGQgYWx3YXlzIHNwZWNpZnkgLS1wYWNrYWdlIGFuZCAtLSIKKyJkaXZlcnQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjE2OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZXJyb3IgY2hlY2tpbmcgYCVzJzogJXMiCittc2dpZCAiZXJyb3IgY2hlY2tpbmcgJyVzJyIKK21zZ3N0ciAiYsWCxIVkIHNwcmF3ZHphbmlhIFwiJXNcIjogJXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInJlbmFtZSBpbnZvbHZlcyBvdmVyd3JpdGluZyBgJXMnIHdpdGhcbiIKKyIgIGRpZmZlcmVudCBmaWxlIGAlcycsIG5vdCBhbGxvd2VkIgorbXNnc3RyICIiCisiem1pYW5hIG5hend5IG96bmFjemEgbmFkcGlzYW5pZSBcIiVzXCIgXG4iCisiICBpbm55bSBwbGlraWVtIFwiJXNcIiwgY28gbmllIGplc3QgZG96d29sb25lIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjIzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzczCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGZpbGUgJyVzJyIKK21zZ3N0ciAibmllIG1vxbxuYSBvdHdvcnp5xIcgcGxpa3Ugxbpyw7NkxYJvd2VnbyBcIiUuMjU1c1wiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjI3Cittc2dpZCAiZmlsZSBjb3B5IgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyMzkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImNhbm5vdCBzdGF0IG5ldyBuYW1lIGAlcyc6ICVzIgorbXNnaWQgImNhbm5vdCByZW5hbWUgJyVzJyB0byAnJXMnIgorbXNnc3RyICJuaWUgbW/FvG5hIHVzdGFsacSHIHN0YW51IG5vd2VnbyBwbGlrdSBcIiVzXCIgOiAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjI1MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAicmVuYW1lOiByZW1vdmUgZHVwbGljYXRlIG9sZCBsaW5rIGAlcyc6ICVzIgorbXNnaWQgInJlbmFtZTogcmVtb3ZlIGR1cGxpY2F0ZSBvbGQgbGluayAnJXMnIgorbXNnc3RyICJyZW5hbWU6IHVzdXdhbmllIHBvd2llbG9uZWdvIHN0YXJlZ28gZG93acSFemFuaWEgXCIlc1wiOiAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjI2MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIG9wZW4gc291cmNlIGZpbGUgYCUuMjUwcyciCittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBjb3BpZWQgc291cmNlIGZpbGUgJyVzJyIKK21zZ3N0ciAibmllIG1vxbxuYSBvdHdvcnp5xIcgcGxpa3Ugxbpyw7NkxYJvd2VnbyBcIiUuMjU1c1wiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mjg0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJsb2NhbCBkaXZlcnNpb24gdG86ICVzXG4iCittc2dpZCAibG9jYWwgZGl2ZXJzaW9uIG9mICVzIgorbXNnc3RyICJsb2thbG5lIG9taW5pxJljaWUgZG86ICVzXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyODYKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImxvY2FsIGRpdmVyc2lvbiB0bzogJXNcbiIKK21zZ2lkICJsb2NhbCBkaXZlcnNpb24gb2YgJXMgdG8gJXMiCittc2dzdHIgImxva2FsbmUgb21pbmnEmWNpZSBkbzogJXNcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjI5MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZGl2ZXJzaW9uIGJ5ICVzIHRvOiAlc1xuIgorbXNnaWQgImRpdmVyc2lvbiBvZiAlcyBieSAlcyIKK21zZ3N0ciAib21pbmnEmWNpZSBwcnpleiAlcyBkbzogJXNcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjI5MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZGl2ZXJzaW9uIGJ5ICVzIHRvOiAlc1xuIgorbXNnaWQgImRpdmVyc2lvbiBvZiAlcyB0byAlcyBieSAlcyIKK21zZ3N0ciAib21pbmnEmWNpZSBwcnpleiAlcyBkbzogJXNcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjMwOQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAibG9jYWwgZGl2ZXJzaW9uIHRvOiAlc1xuIgorbXNnaWQgImFueSBkaXZlcnNpb24gb2YgJXMiCittc2dzdHIgImxva2FsbmUgb21pbmnEmWNpZSBkbzogJXNcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjMxMQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZGl2ZXJzaW9uIGJ5ICVzIHRvOiAlc1xuIgorbXNnaWQgImFueSBkaXZlcnNpb24gb2YgJXMgdG8gJXMiCittc2dzdHIgIm9taW5pxJljaWUgcHJ6ZXogJXMgZG86ICVzXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozNTcKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImNhbm5vdCBvcGVuIEdQTCBmaWxlIgorbXNnaWQgImNhbm5vdCBjcmVhdGUgbmV3ICVzIGZpbGUiCittc2dzdHIgIm5pZSBtb8W8bmEgb3R3b3J6ecSHIHBsaWt1IEdQTCIKKworIzogc3JjL2RpdmVydGNtZC5jOjM3NSBzcmMvc3RhdGNtZC5jOjIxNSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTQwNAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIGZpbGUgJyVzJyIKK21zZ3N0ciAibmllIG1vxbxuYSB1c3RhbGnEhyBzdGFudSBwbGlrdSBjesSZxZtjaSBcIiUuMjUwc1wiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MzgyCisjLCBmdXp6eQorI3wgbXNnaWQgInJlbW92ZSBvbGQgZGl2ZXJzaW9ucy1vbGQ6ICVzIgorbXNnaWQgImVycm9yIHJlbW92aW5nIG9sZCBkaXZlcnNpb25zLW9sZCIKK21zZ3N0ciAidXN1d2FuaWUgc3RhcmVnbyBwbGlrdSBkaXZlcnNpb25zLW9sZDogJXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozODQKKyMsIGZ1enp5Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgbmV3IGRpdmVyc2lvbnMtb2xkIgorbXNnc3RyICJixYLEhWQgdHdvcnplbmlhIG5vd2VnbyBwbGlrdSBzdGF0b3ZlcnJpZGUtb2xkOiAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjM4NgorIywgZnV6enkKK21zZ2lkICJlcnJvciBpbnN0YWxsaW5nIG5ldyBkaXZlcnNpb25zIgorbXNnc3RyICJixYLEhWQgaW5zdGFsb3dhbmlhIG5vd2VnbyBwbGlrdSBzdGF0b3ZlcnJpZGU6ICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDA2IHNyYy9kaXZlcnRjbWQuYzo1MDMgc3JjL2RpdmVydGNtZC5jOjYxMAorIzogc3JjL2RpdmVydGNtZC5jOjYzMCBzcmMvc3RhdGNtZC5jOjI5MAorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGEgc2luZ2xlIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIHd5bWFnYSBwb2RhbmlhIHBvamVkeW5jemVnbyBhcmd1bWVudHUiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MDkgc3JjL2RpdmVydGNtZC5jOjQzMAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlbmFtZSBcIiVzXCIgaXMgbm90IGFic29sdXRlIgorbXNnc3RyICJuYXp3YSBwbGlrdSBcIiVzXCIgbmllIGplc3QgYWJzb2x1dG5hIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDExIHNyYy9zdGF0Y21kLmM6MjQ5Cittc2dpZCAiZmlsZSBtYXkgbm90IGNvbnRhaW4gbmV3bGluZXMiCittc2dzdHIgInBsaWsgbmllIG1vxbxlIHphd2llcmHEhyB6bmFrw7N3IG5vd2VqIGxpbmlpIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDE4Cittc2dpZCAiQ2Fubm90IGRpdmVydCBkaXJlY3RvcmllcyIKK21zZ3N0ciAiTmllIG1vxbxuYSBvbWlqYcSHIGthdGFsb2fDs3ciCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MzMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBkaXZlcnQgZmlsZSAnJXMnIHRvIGl0c2VsZiIKK21zZ3N0ciAiTmllIG1vxbxuYSBvbWlqYcSHIGthdGFsb2fDs3ciCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0NTMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIkxlYXZpbmcgYCVzJyIKK21zZ2lkICJMZWF2aW5nICclcydcbiIKK21zZ3N0ciAiT3B1c3pjemFuaWUgXCIlc1wiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDU4CisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgY2xhc2hlcyB3aXRoIGAlcyciCittc2dzdHIgIlwiJXNcIiBrb2xpZHVqZSB6IFwiJXNcIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjQ4MQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiQWRkaW5nIGAlcyciCittc2dpZCAiQWRkaW5nICclcydcbiIKK21zZ3N0ciAiRG9kYXdhbmllIFwiJXNcIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjUxMAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiTm8gZGl2ZXJzaW9uIGAlcycsIG5vbmUgcmVtb3ZlZCIKK21zZ2lkICJObyBkaXZlcnNpb24gJyVzJywgbm9uZSByZW1vdmVkLlxuIgorbXNnc3RyICJCcmFrIG9taW5pxJljaWEgXCIlc1wiLCBuaWMgbmllIHVzdW5pxJl0byIKKworIzogc3JjL2RpdmVydGNtZC5jOjUyNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisibWlzbWF0Y2ggb24gZGl2ZXJ0LXRvXG4iCisiICB3aGVuIHJlbW92aW5nIGAlcydcbiIKKyIgIGZvdW5kIGAlcyciCittc2dzdHIgIiIKKyJuaWVkb3Bhc293YW5pZSBhcmd1bWVudHUgZGl2ZXJ0LXRvXG4iCisiICBwb2RjemFzIHVzdXdhbmlhIFwiJXNcIlxuIgorIiAgem5hbGV6aW9ubyBcIiVzXCIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm1pc21hdGNoIG9uIHBhY2thZ2VcbiIKKyIgIHdoZW4gcmVtb3ZpbmcgYCVzJ1xuIgorIiAgZm91bmQgYCVzJyIKK21zZ3N0ciAiIgorIm5pZWRvcGFzb3dhbmllIHBha2lldHVcbiIKKyIgIHBvZGN6YXMgdXN1d2FuaWEgXCIlc1wiXG4iCisiICB6bmFsZXppb25vIFwiJXNcIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjUzOQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiUmVtb3ZpbmcgYCVzJyIKK21zZ2lkICJSZW1vdmluZyAnJXMnXG4iCittc2dzdHIgIlVzdXdhbmllIFwiJXNcIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjY1NworbXNnaWQgInBhY2thZ2UgbWF5IG5vdCBjb250YWluIG5ld2xpbmVzIgorbXNnc3RyICJwYWtpZXQgbmllIG1vxbxlIHphd2llcmHEhyB6bmFrw7N3IG5vd2VqIGxpbmlpIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjY2Cittc2dpZCAiZGl2ZXJ0LXRvIG1heSBub3QgY29udGFpbiBuZXdsaW5lcyIKK21zZ3N0ciAiZGl2ZXJ0LXRvIG5pZSBtb8W8ZSB6YXdpZXJhxIcgem5ha8OzdyBub3dlaiBsaW5paSIKKworIzogc3JjL2RpdmVydGRiLmM6NjQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiBkaXZlcnNpb25zIGZpbGUiCittc2dzdHIgIm5pZSBtb8W8bmEgb3R3b3J6ecSHIGxpc3R5IG9taW5pxJl0eWNoIHBsaWvDs3ciCisKKyM6IHNyYy9kaXZlcnRkYi5jOjcxCittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IHByZXZpb3VzIGRpdmVyc2lvbnMgZmlsZSIKK21zZ3N0ciAibmllIG1vxbxuYSB1c3RhbGnEhyBzdGFudSBwb3ByemVkbmllaiBsaXN0eSBvbWluacSZdHljaCBwbGlrw7N3IgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzo3MworbXNnaWQgImZhaWxlZCB0byBmc3RhdCBkaXZlcnNpb25zIGZpbGUiCittc2dzdHIgIm5pZSBtb8W8bmEgdXN0YWxpxIcgc3RhbnUgbGlzdHkgb21pbmnEmXR5Y2ggcGxpa8OzdyIKKworIzogc3JjL2RpdmVydGRiLmM6MTEzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZsaWN0aW5nIGRpdmVyc2lvbnMgaW52b2x2aW5nIGAlLjI1MHMnIG9yIGAlLjI1MHMnIgorbXNnc3RyICJrb25mbGlrdCBkbGEgb21pbmnEmWNpYSBcIiUuMjUwc1wiIGx1YiBcIiUuMjUwc1wiIgorCisjOiBzcmMvZW5xdWlyeS5jOjczCittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgYXJlIGluIGEgbWVzcyBkdWUgdG8gc2VyaW91cyBwcm9ibGVtcyBkdXJpbmdcbiIKKyJpbnN0YWxsYXRpb24uICBUaGV5IG11c3QgYmUgcmVpbnN0YWxsZWQgZm9yIHRoZW0gKGFuZCBhbnkgcGFja2FnZXNcbiIKKyJ0aGF0IGRlcGVuZCBvbiB0aGVtKSB0byBmdW5jdGlvbiBwcm9wZXJseTpcbiIKK21zZ3N0ciAiIgorIlcgcHJ6eXBhZGt1IG5pxbxlaiB3eW1pZW5pb255Y2ggcGFraWV0w7N3IHd5c3TEhXBpxYJ5IHByb2JsZW15IHBvZGN6YXNcbiIKKyJpbnN0YWxvd2FuaWEuIEFieSB0ZSBwYWtpZXR5IChvcmF6IGlubmUsIHphbGXFvG5lIG9kIG5pY2gpIGR6aWHFgmHFgnlcbiIKKyJwb3ByYXduaWUsIG11c3rEhSB6b3N0YcSHIHByemVpbnN0YWxvd2FuZS5cbiIKKworIzogc3JjL2VucXVpcnkuYzo4MAorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGhhdmUgYmVlbiB1bnBhY2tlZCBidXQgbm90IHlldCBjb25maWd1cmVkLlxuIgorIlRoZXkgbXVzdCBiZSBjb25maWd1cmVkIHVzaW5nIGRwa2cgLS1jb25maWd1cmUgb3IgdGhlIGNvbmZpZ3VyZVxuIgorIm1lbnUgb3B0aW9uIGluIGRzZWxlY3QgZm9yIHRoZW0gdG8gd29yazpcbiIKK21zZ3N0ciAiIgorIk5pxbxlaiB3eW1pZW5pb25lIHBha2lldHkgem9zdGHFgnkgcm96cGFrb3dhbmUgYWxlIG5pZSBza29uZmlndXJvd2FuZS5cbiIKKyJBYnkgdGUgcGFraWV0eSBkemlhxYJhxYJ5IHBvcHJhd25pZSwgbXVzesSFIHpvc3RhxIcgc2tvbmZpZ3Vyb3dhbmUgcG9wcnplelxuIgorInd5d2/FgmFuaWUgZHBrZyAtLWNvbmZpZ3VyZSBsdWIgdcW8eWNpZSBvcGNqaSBrb25maWd1cmFjamkgdyBtZW51IGRzZWxlY3QuXG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6ODcKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgb25seSBoYWxmIGNvbmZpZ3VyZWQsIHByb2JhYmx5IGR1ZSB0byBwcm9ibGVtc1xuIgorImNvbmZpZ3VyaW5nIHRoZW0gdGhlIGZpcnN0IHRpbWUuICBUaGUgY29uZmlndXJhdGlvbiBzaG91bGQgYmUgcmV0cmllZCB1c2luZ1xuIgorImRwa2cgLS1jb25maWd1cmUgPHBhY2thZ2U+IG9yIHRoZSBjb25maWd1cmUgbWVudSBvcHRpb24gaW4gZHNlbGVjdDpcbiIKK21zZ3N0ciAiIgorIk5pxbxlaiB3eW1pZW5pb25lIHBha2lldHkgem9zdGHFgnkgd3DDs8WCLXNrb25maWd1cm93YW5lLCBnZHnFvCBwcmF3ZG9wb2RvYm5pZVxuIgorInd5c3TEhXBpxYJ5IHByb2JsZW15IHBvZGN6YXMgaWNoIHBpZXJ3c3plZ28ga29uZmlndXJvd2FuaWEuIE5hbGXFvHkgcG9ub3dpxIdcbiIKKyJwcsOzYsSZIGtvbmZpZ3Vyb3dhbmlhIHd5d2/FgmFuaWVtIGRwa2cgLS1jb25maWd1cmUgPHBha2lldD4gbHViIHXFvHljaWVtXG4iCisib3Bjamkga29uZmlndXJhY2ppIHogbWVudSB3IGRzZWxlY3Q6XG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6OTQKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgb25seSBoYWxmIGluc3RhbGxlZCwgZHVlIHRvIHByb2JsZW1zIGR1cmluZ1xuIgorImluc3RhbGxhdGlvbi4gIFRoZSBpbnN0YWxsYXRpb24gY2FuIHByb2JhYmx5IGJlIGNvbXBsZXRlZCBieSByZXRyeWluZyBpdDtcbiIKKyJ0aGUgcGFja2FnZXMgY2FuIGJlIHJlbW92ZWQgdXNpbmcgZHNlbGVjdCBvciBkcGtnIC0tcmVtb3ZlOlxuIgorbXNnc3RyICIiCisiTmnFvGVqIHd5bWllbmlvbmUgcGFraWV0eSB6b3N0YcWCeSB3cMOzxYItemFpbnN0YWxvd2FuZSwgZ2R5xbwgd3lzdMSFcGnFgnkgIgorInByb2JsZW15XG4iCisicG9kY3phcyBpY2ggaW5zdGFsb3dhbmlhLiBQcm9jZXMgdGVuIHByYXdkb3BvZG9ibmllIG1vxbxlIHpvc3RhxIcgcG93dMOzcnpvbnk7XG4iCisicGFraWV0eSBtb2fEhSB0ZcW8IGJ5xIcgdXN1bmnEmXRlIHBvcHJ6ZXogd3l3b8WCYW5pZSBkcGtnIC0tcmVtb3ZlIGx1YiB1xbx5Y2llICIKKyJkc2VsZWN0LlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjEwMQorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBhd2FpdGluZyBwcm9jZXNzaW5nIG9mIHRyaWdnZXJzIHRoYXQgdGhleVxuIgorImhhdmUgYWN0aXZhdGVkIGluIG90aGVyIHBhY2thZ2VzLiAgVGhpcyBwcm9jZXNzaW5nIGNhbiBiZSByZXF1ZXN0ZWQgdXNpbmdcbiIKKyJkc2VsZWN0IG9yIGRwa2cgLS1jb25maWd1cmUgLS1wZW5kaW5nIChvciBkcGtnIC0tdHJpZ2dlcnMtb25seSk6XG4iCittc2dzdHIgIiIKKyJOYXN0xJlwdWrEhWNlIHBha2lldHkgb2N6ZWt1asSFIG5hIHByemV0d29yemVuaWUgd3l6d2FsYWN6eSwga3TDs3JlIHpvc3RhxYJ5XG4iCisiYWt0eXdvd2FuZSB3IGlubnljaCBwYWtpZXRhY2guIFByemV0d2FyemFuaWUgbW/FvG5hIHd5d2/FgmHEhyBuYSDFvMSFZGFuaWUgIgorInXFvHl3YWrEhWNcbiIKKyJkcGtnIC0tY29uZmlndXJlIC0tcGVuZGluZyAobHViIGRwa2cgLS10cmlnZ2Vycy1vbmx5KSBhbGJvIGRzZWxlY3Q6XG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTA4Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgaGF2ZSBiZWVuIHRyaWdnZXJlZCwgYnV0IHRoZSB0cmlnZ2VyIHByb2Nlc3NpbmdcbiIKKyJoYXMgbm90IHlldCBiZWVuIGRvbmUuICBUcmlnZ2VyIHByb2Nlc3NpbmcgY2FuIGJlIHJlcXVlc3RlZCB1c2luZ1xuIgorImRzZWxlY3Qgb3IgZHBrZyAtLWNvbmZpZ3VyZSAtLXBlbmRpbmcgKG9yIGRwa2cgLS10cmlnZ2Vycy1vbmx5KTpcbiIKK21zZ3N0ciAiIgorIk5hc3TEmXB1asSFY2UgcGFraWV0eSB6b3N0YcWCeSBwb2J1ZHpvbmUsIGFsZSBwcnpldHdhcnphbmllIHd5endhbGFjenlcbiIKKyJqZXN6Y3plIHNpxJkgbmllIHpha2/FhGN6ecWCby4gUHJ6ZXR3YXJ6YW5pZSBtb8W8bmEgd3l3b8WCYcSHIG5hIMW8xIVkYW5pZSB1xbx5d2FqxIVjXG4iCisiZHBrZyAtLWNvbmZpZ3VyZSAtLXBlbmRpbmcgKGx1YiBkcGtnIC0tdHJpZ2dlcnMtb25seSkgYWxibyBkc2VsZWN0OlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjEzNyBzcmMvZW5xdWlyeS5jOjIxMSBzcmMvZW5xdWlyeS5jOjI5MiBzcmMvZW5xdWlyeS5jOjM3MworIzogc3JjL2VucXVpcnkuYzo0NjAgc3JjL3NlbGVjdC5jOjk4IHNyYy9zZWxlY3QuYzoxNjQgc3JjL3RyaWdjbWQuYzoxOTkKKyM6IHNyYy91cGRhdGUuYzo0OCBzcmMvdXBkYXRlLmM6MTEzIGRwa2ctc3BsaXQvcXVldWUuYzoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyB0YWtlcyBubyBhcmd1bWVudHMiCittc2dzdHIgIi0tJXMgbmllIHd5bWFnYSBwb2Rhd2FuaWEgYXJndW1lbnTDs3ciCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTUyCittc2dpZCAiIgorIkFub3RoZXIgcHJvY2VzcyBoYXMgbG9ja2VkIHRoZSBkYXRhYmFzZSBmb3Igd3JpdGluZywgYW5kIG1pZ2h0IGN1cnJlbnRseSBiZVxuIgorIm1vZGlmeWluZyBpdCwgc29tZSBvZiB0aGUgZm9sbG93aW5nIHByb2JsZW1zIG1pZ2h0IGp1c3QgYmUgZHVlIHRvIHRoYXQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzoxOTEKKyMsIGZ1enp5CisjfCBtc2dpZCAiPHVua25vd24+IgorbXNnY3R4dCAic2VjdGlvbiIKK21zZ2lkICI8dW5rbm93bj4iCittc2dzdHIgIjxuaWV6bmFueT4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MjUxCisjLCBjLWZvcm1hdAorbXNnaWQgIiAlZCBpbiAlczogIgorbXNnc3RyICIgJWQgdyAlczogIgorCisjOiBzcmMvZW5xdWlyeS5jOjI2NgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiICVkIHBhY2thZ2VzLCBmcm9tIHRoZSBmb2xsb3dpbmcgc2VjdGlvbnM6IgorbXNnaWQgIiAlZCBwYWNrYWdlLCBmcm9tIHRoZSBmb2xsb3dpbmcgc2VjdGlvbjoiCittc2dpZF9wbHVyYWwgIiAlZCBwYWNrYWdlcywgZnJvbSB0aGUgZm9sbG93aW5nIHNlY3Rpb25zOiIKK21zZ3N0clswXSAiICVkIHBha2lldMOzdywgeiBuYXN0xJlwdWrEhWN5Y2ggc2VrY2ppOiIKK21zZ3N0clsxXSAiICVkIHBha2lldMOzdywgeiBuYXN0xJlwdWrEhWN5Y2ggc2VrY2ppOiIKK21zZ3N0clsyXSAiICVkIHBha2lldMOzdywgeiBuYXN0xJlwdWrEhWN5Y2ggc2VrY2ppOiIKKworIzogc3JjL2VucXVpcnkuYzozMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlZlcnNpb24gb2YgZHBrZyB3aXRoIHdvcmtpbmcgJXMgc3VwcG9ydCBub3QgeWV0IGNvbmZpZ3VyZWQuXG4iCisiIFBsZWFzZSB1c2UgJ2Rwa2cgLS1jb25maWd1cmUgZHBrZycsIGFuZCB0aGVuIHRyeSBhZ2Fpbi5cbiIKK21zZ3N0ciAiIgorIldlcnNqYSBkcGtnIG9ic8WCdWd1asSFY2EgJXMgbmllIGplc3QgamVzemN6ZSBza29uZmlndXJvd2FuYS5cbiIKKyIgTmFsZcW8eSB3eWtvbmHEhyBcImRwa2cgLS1jb25maWd1cmUgZHBrZ1wiIGkgcMOzxbpuaWVqIHNwcsOzYm93YcSHIHBvbm93bmllLlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjMxMAorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnIG5vdCByZWNvcmRlZCBhcyBpbnN0YWxsZWQsIGNhbm5vdCBjaGVjayBmb3IgJXMgc3VwcG9ydCFcbiIKK21zZ3N0ciAiIgorIm5pZSBvZG5hbGV6aW9ubyBkcGtnIHcgYmF6aWUgZGFueWNoLCBuaWUgbW/FvG5hIHNwcmF3ZHppxIcgY3p5IG9ic8WCdWd1amUgJXMhXG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzIxCittc2dpZCAiUHJlLURlcGVuZHMgZmllbGQiCittc2dzdHIgInBvbGUgUHJlLURlcGVuZHMiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzI5Cittc2dpZCAiZXBvY2giCittc2dzdHIgImVwb2thIgorCisjOiBzcmMvZW5xdWlyeS5jOjMzNworbXNnaWQgImxvbmcgZmlsZW5hbWVzIgorbXNnc3RyICJkxYJ1Z2llIG5hend5IHBsaWvDs3ciCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzQ2Cittc2dpZCAibXVsdGlwbGUgQ29uZmxpY3RzIGFuZCBSZXBsYWNlcyIKK21zZ3N0ciAid2llbG9rcm90bmUgb2tyZcWbbGVuaWEgQ29uZmxpY3RzIGkgUmVwbGFjZXMiCisKKyM6IHNyYy9lbnF1aXJ5LmM6NDM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBjYW5ub3Qgc2VlIGhvdyB0byBzYXRpc2Z5IHByZS1kZXBlbmRlbmN5OlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisiZHBrZzogbmllIG1vxbxuYSByb3p3acSFemHEhyBwcm9ibGVtdSB6ZSB3c3TEmXBueW1pIHd5bWFnYW5pYW1pOlxuIgorIiAlc1xuIgorCisjOiBzcmMvZW5xdWlyeS5jOjQzNQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc2F0aXNmeSBwcmUtZGVwZW5kZW5jaWVzIGZvciAlLjI1MHMgKHdhbnRlZCBkdWUgdG8gJS4yNTBzKSIKK21zZ3N0ciAiIgorIm5pZSBtb8W8bmEgcm96d2nEhXphxIcgcHJvYmxlbXUgemUgd3N0xJlwbnltaSB3eW1hZ2FuaWFtaSBkbGEgJS4yNTBzIChwb3RyemVibmUgIgorImRsYSAlLjI1MHMpIgorCisjOiBzcmMvZW5xdWlyeS5jOjQ3MgorIywgYy1mb3JtYXQKK21zZ2lkICJvYnNvbGV0ZSBvcHRpb24gJy0tJXMnLCBwbGVhc2UgdXNlICctLSVzJyBpbnN0ZWFkLiIKK21zZ3N0ciAiIgorIm5pZXd5a29yenlzdHl3YW5hIGp1xbwgb3BjamEgXCItLSVzXCIsIHphbWlhc3QgbmllaiBwcm9zesSZIHXFvHl3YcSHIFwiLS0lc1wiLiIKKworIzogc3JjL2VucXVpcnkuYzo1MTkKK21zZ2lkICIiCisiLS1jb21wYXJlLXZlcnNpb25zIHRha2VzIHRocmVlIGFyZ3VtZW50czogPHZlcnNpb24+IDxyZWxhdGlvbj4gPHZlcnNpb24+IgorbXNnc3RyICIiCisiLS1jb21wYXJlLXZlcnNpb25zIHd5bWFnYSBwb2RhbmlhIHRyemVjaCBhcmd1bWVudMOzdzogPHdlcnNqYT4gPHJlbGFjamE+ICIKKyI8d2Vyc2phPiIKKworIzogc3JjL2VucXVpcnkuYzo1MjQKK21zZ2lkICItLWNvbXBhcmUtdmVyc2lvbnMgYmFkIHJlbGF0aW9uIgorbXNnc3RyICJixYLEmWRuYSByZWxhY2phIGRsYSAtLWNvbXBhcmUtdmVyc2lvbnMiCisKKyM6IHNyYy9lbnF1aXJ5LmM6NTI5IHNyYy9lbnF1aXJ5LmM6NTMxIHNyYy9lbnF1aXJ5LmM6NTQwIHNyYy9lbnF1aXJ5LmM6NTQyCisjLCBjLWZvcm1hdAorbXNnaWQgInZlcnNpb24gJyVzJyBoYXMgYmFkIHN5bnRheDogJXMiCittc2dzdHIgIndlcnNqYSBcIiVzXCIgbWEgesWCxIUgc2vFgmFkbmnEmTogJXMiCisKKyM6IHNyYy9lcnJvcnMuYzo2MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IGVycm9yIHByb2Nlc3NpbmcgJXMgKC0tJXMpOlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisiJXM6IGLFgsSFZCBwcnpldHdhcnphbmlhICVzICgtLSVzKTpcbiIKKyIgJXNcbiIKKworIzogc3JjL2Vycm9ycy5jOjY4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiZHBrZzogZmFpbGVkIHRvIGFsbG9jYXRlIG1lbW9yeSBmb3IgbmV3IGVudHJ5IGluIGxpc3Qgb2YgZmFpbGVkIHBhY2thZ2VzLiIKK21zZ2lkICIiCisiJXM6IGZhaWxlZCB0byBhbGxvY2F0ZSBtZW1vcnkgZm9yIG5ldyBlbnRyeSBpbiBsaXN0IG9mIGZhaWxlZCBwYWNrYWdlczogJXMiCittc2dzdHIgIiIKKyJkcGtnOiBixYLEhWQgcG9kY3phcyBwcnp5ZHppZWxhbmlhIHBhbWnEmWNpIGRsYSBub3dlaiBwb3p5Y2ppIHcgbGnFm2NpZSBixYLEmWRueWNoICIKKyJwYWtpZXTDs3cuIgorCisjOiBzcmMvZXJyb3JzLmM6NzkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImRwa2c6IHRvbyBtYW55IGVycm9ycywgc3RvcHBpbmdcbiIKK21zZ2lkICIlczogdG9vIG1hbnkgZXJyb3JzLCBzdG9wcGluZ1xuIgorbXNnc3RyICJkcGtnOiB6Ynl0IHdpZWxlIGLFgsSZZMOzdywgemF0cnp5bWFuaWVcbiIKKworIzogc3JjL2Vycm9ycy5jOjg3Cittc2dpZCAiRXJyb3JzIHdlcmUgZW5jb3VudGVyZWQgd2hpbGUgcHJvY2Vzc2luZzpcbiIKK21zZ3N0ciAiV3lzdMSFcGnFgnkgYsWCxJlkeSBwb2RjemFzIHByemV0d2FyemFuaWE6XG4iCisKKyM6IHNyYy9lcnJvcnMuYzo5NAorbXNnaWQgIlByb2Nlc3Npbmcgd2FzIGhhbHRlZCBiZWNhdXNlIHRoZXJlIHdlcmUgdG9vIG1hbnkgZXJyb3JzLlxuIgorbXNnc3RyICIiCisiUHJ6ZXR3YXJ6YW5pZSB6b3N0YcWCbyB6YXRyenltYW5lIHogcG93b2R1IHd5c3TEhXBpZW5pYSB6Ynl0IHdpZWx1IGLFgsSZZMOzdy5cbiIKKworIzogc3JjL2Vycm9ycy5jOjEwNQorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlICVzIHdhcyBvbiBob2xkLCBwcm9jZXNzaW5nIGl0IGFueXdheSBhcyB5b3UgcmVxdWVzdGVkXG4iCittc2dzdHIgIlBha2lldCAlcyB6b3N0YcWCIHdzdHJ6eW1hbnksIHpvc3RhbmllIHByemV0d29yem9ueSB3ZWTFgnVnIMW8xIVkYW5pYVxuIgorCisjOiBzcmMvZXJyb3JzLmM6MTA5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJQYWNrYWdlICVzIGlzIG9uIGhvbGQsIG5vdCB0b3VjaGluZyBpdC4gIFVzZSAtLWZvcmNlLWhvbGQgdG8gb3ZlcnJpZGUuXG4iCittc2dzdHIgIiIKKyJQYWtpZXQgJXMgamVzdCB3c3RyenltYW55IGkgbmllIGLEmWR6aWUgcHJ6ZXR3YXJ6YW55LiAgLS1mb3JjZS1ob2xkIHd5bXVzemEgIgorImplZ28gcHJ6ZXR3b3J6ZW5pZS5cbiIKKworIzogc3JjL2Vycm9ycy5jOjExOQorbXNnaWQgIm92ZXJyaWRpbmcgcHJvYmxlbSBiZWNhdXNlIC0tZm9yY2UgZW5hYmxlZDoiCittc2dzdHIgInByb2JsZW0gemlnbm9yb3dhbnkgcG8gdcW8eWNpdSBvcGNqaSAtLWZvcmNlOiIKKworIzogc3JjL2ZpbGVzZGIuYzozMDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlIGAlLjI1MHMnIgorbXNnc3RyICJuaWUgbW/FvG5hIG90d29yennEhyBsaXN0eSBwbGlrw7N3IHBha2lldHUgXCIlLjI1MHNcIiIKKworIzogc3JjL2ZpbGVzZGIuYzozMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSBgJS4yNTBzJyBtaXNzaW5nLCBhc3N1bWluZyBwYWNrYWdlIGhhcyBubyBmaWxlcyAiCisiY3VycmVudGx5IGluc3RhbGxlZC4iCittc2dzdHIgIiIKKyJicmFrIGxpc3R5IHBsaWvDs3cgcGFraWV0dSBcIiUuMjUwc1wiLCBwcnp5asSZY2llIMW8ZSBwYWtpZXQgbmllIG1hICIKKyJ6YWluc3RhbG93YW55Y2ggcGxpa8Ozdy4iCisKKyM6IHNyYy9maWxlc2RiLmM6MzIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAnJS4yNTBzJyIKK21zZ3N0ciAibmllIG1vxbxuYSB1c3RhbGnEhyBzdGFudSBsaXN0eSBwbGlrw7N3IHBha2lldHUgXCIlLjI1MHNcIiIKKworIzogc3JjL2ZpbGVzZGIuYzozMzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGVzIGxpc3QgZm9yIHBhY2thZ2UgYCUuMjUwcyciCittc2dpZCAicmVhZGluZyBmaWxlcyBsaXN0IGZvciBwYWNrYWdlICclLjI1MHMnIgorbXNnc3RyICJsaXN0YSBwbGlrw7N3IHBha2lldHUgXCIlLjI1MHNcIiIKKworIzogc3JjL2ZpbGVzZGIuYzozMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICclLjI1MHMnIGlzIG1pc3NpbmcgZmluYWwgbmV3bGluZSIKK21zZ3N0ciAibGlzdGEgcGxpa8OzdyBwYWtpZXR1IFwiJS4yNTBzXCIgbmllIHphd2llcmEga2/FhGN6xIVjZWogcHVzdGVqIGxpbmlpIgorCisjOiBzcmMvZmlsZXNkYi5jOjM0NAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcycgY29udGFpbnMgZW1wdHkgZmlsZW5hbWUiCittc2dzdHIgImxpc3RhIHBsaWvDs3cgcGFraWV0dSBcIiUuMjUwc1wiIHphd2llcmEgcHVzdMSFIG5henfEmSBwbGlrdSIKKworIzogc3JjL2ZpbGVzZGIuYzozNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcyciCittc2dzdHIgIm5pZSBtb8W8bmEgemFta27EhcSHIGxpc3R5IHBsaWvDs3cgcGFraWV0dSBcIiUuMjUwc1wiIgorCisjOiBzcmMvZmlsZXNkYi5jOjQ2MgorbXNnaWQgIihSZWFkaW5nIGRhdGFiYXNlIC4uLiAiCittc2dzdHIgIihPZGN6eXR5d2FuaWUgYmF6eSBkYW55Y2ggLi4uICIKKworIzogc3JjL2ZpbGVzZGIuYzo0ODMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiVkIGZpbGVzIGFuZCBkaXJlY3RvcmllcyBjdXJyZW50bHkgaW5zdGFsbGVkLilcbiIKK21zZ2lkICIlZCBmaWxlIG9yIGRpcmVjdG9yeSBjdXJyZW50bHkgaW5zdGFsbGVkLilcbiIKK21zZ2lkX3BsdXJhbCAiJWQgZmlsZXMgYW5kIGRpcmVjdG9yaWVzIGN1cnJlbnRseSBpbnN0YWxsZWQuKVxuIgorbXNnc3RyWzBdICIlZCBwbGlrw7N3IGkga2F0YWxvZ8OzdyBvYmVjbmllIHphaW5zdGFsb3dhbnljaC4pXG4iCittc2dzdHJbMV0gIiVkIHBsaWvDs3cgaSBrYXRhbG9nw7N3IG9iZWNuaWUgemFpbnN0YWxvd2FueWNoLilcbiIKK21zZ3N0clsyXSAiJWQgcGxpa8OzdyBpIGthdGFsb2fDs3cgb2JlY25pZSB6YWluc3RhbG93YW55Y2guKVxuIgorCisjOiBzcmMvZmlsZXNkYi5jOjUxNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICJuaWUgbW/FvG5hIHV0d29yennEhyB6YWt0dWFsaXpvd2FuZWogbGlzdHkgcGxpa8OzdyBwYWtpZXR1ICVzIgorCisjOiBzcmMvZmlsZXNkYi5jOjUyNgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgdG8gdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIm5pZSBtb8W8bmEgemFwaXNhxIcgemFrdHVhbGl6b3dhbmVqIGxpc3R5IHBsaWvDs3cgcGFraWV0dSAlcyIKKworIzogc3JjL2ZpbGVzZGIuYzo1MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZsdXNoIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICJuaWUgbW/FvG5hIG9wcsOzxbxuacSHIGJ1Zm9yw7N3IGRsYSB6YWt0dWFsaXpvd2FuZWogbGlzdHkgcGxpa8OzdyBwYWtpZXR1ICVzIgorCisjOiBzcmMvZmlsZXNkYi5jOjUzMAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gc3luYyB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAibmllIG1vxbxuYSB6c3luY2hyb25pem93YcSHIHpha3R1YWxpem93YW5laiBsaXN0eSBwbGlrw7N3IHBha2lldHUgJXMiCisKKyM6IHNyYy9maWxlc2RiLmM6NTMzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjbG9zZSB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAibmllIG1vxbxuYSB6YW1rbsSFxIcgemFrdHVhbGl6b3dhbmVqIGxpc3R5IHBsaWvDs3cgcGFraWV0dSAlcyIKKworIzogc3JjL2ZpbGVzZGIuYzo1MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGluc3RhbGwgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIm5pZSBtb8W8bmEgemFpbnN0YWxvd2HEhyB6YWt0dWFsaXpvd2FuZWogbGlzdHkgcGxpa8OzdyBwYWtpZXR1ICVzIgorCisjOiBzcmMvaGVscC5jOjQ4Cittc2dpZCAibm90IGluc3RhbGxlZCIKK21zZ3N0ciAibmllIHphaW5zdGFsb3dhbnkiCisKKyM6IHNyYy9oZWxwLmM6NDkKK21zZ2lkICJub3QgaW5zdGFsbGVkIGJ1dCBjb25maWdzIHJlbWFpbiIKK21zZ3N0ciAibmllIHphaW5zdGFsb3dhbnkgYWxlIHBsaWtpIGtvbmZpZ3VyYWN5am5lIHBvem9zdGHFgnkiCisKKyM6IHNyYy9oZWxwLmM6NTAKK21zZ2lkICJicm9rZW4gZHVlIHRvIGZhaWxlZCByZW1vdmFsIG9yIGluc3RhbGxhdGlvbiIKK21zZ3N0ciAidXN6a29kem9ueSB6IHBvd29kdSBixYLEmWTDs3cgcG9kY3phcyB1c3V3YW5pYSBsdWIgaW5zdGFsYWNqaSIKKworIzogc3JjL2hlbHAuYzo1MQorbXNnaWQgInVucGFja2VkIGJ1dCBub3QgY29uZmlndXJlZCIKK21zZ3N0ciAicm96cGFrb3dhbnkgYWxlIG5pZSBza29uZmlndXJvd2FueSIKKworIzogc3JjL2hlbHAuYzo1MgorbXNnaWQgImJyb2tlbiBkdWUgdG8gcG9zdGluc3QgZmFpbHVyZSIKK21zZ3N0ciAidXN6a29kem9ueSBwb2RjemFzIHByemV0d2FyemFuaWEgc2tyeXB0dSBcInBvc3RpbnN0XCIiCisKKyM6IHNyYy9oZWxwLmM6NTMKK21zZ2lkICJhd2FpdGluZyB0cmlnZ2VyIHByb2Nlc3NpbmcgYnkgYW5vdGhlciBwYWNrYWdlIgorbXNnc3RyICJvY3pla2l3YW5pZSBuYSBwcnpldHdvcnplbmllIHd5endhbGFjenkgcHJ6ZXogaW5ueSBwYWtpZXQiCisKKyM6IHNyYy9oZWxwLmM6NTQKK21zZ2lkICJ0cmlnZ2VyZWQiCittc2dzdHIgInd5endhbGFjeiBwb2J1ZHpvbnkiCisKKyM6IHNyYy9oZWxwLmM6NTUKK21zZ2lkICJpbnN0YWxsZWQiCittc2dzdHIgInphaW5zdGFsb3dhbnkiCisKKyM6IHNyYy9oZWxwLmM6MTA3CisjLCBmdXp6eQorbXNnaWQgIlBBVEggaXMgbm90IHNldC4iCittc2dzdHIgImRwa2cgLSBixYLEhWQ6IHptaWVubmEgUEFUSCBqZXN0IG5pZSB1c3Rhd2lvbmEuXG4iCisKKyM6IHNyYy9oZWxwLmM6MTI5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICInJXMnIG5vdCBmb3VuZCBpbiBQQVRIIG9yIG5vdCBleGVjdXRhYmxlLiIKK21zZ3N0ciAiZHBrZzogbmllIG9kbmFsZXppb25vIFwiJXNcIiB3IFBBVEguXG4iCisKKyM6IHNyYy9oZWxwLmM6MTM4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiJWQgZXhwZWN0ZWQgcHJvZ3JhbSBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS5cbiIKKyIlcyIKK21zZ2lkX3BsdXJhbCAiIgorIiVkIGV4cGVjdGVkIHByb2dyYW1zIG5vdCBmb3VuZCBpbiBQQVRIIG9yIG5vdCBleGVjdXRhYmxlLlxuIgorIiVzIgorbXNnc3RyWzBdICJkcGtnOiBuaWUgb2RuYWxlemlvbm8gXCIlc1wiIHcgUEFUSC5cbiIKK21zZ3N0clsxXSAiZHBrZzogbmllIG9kbmFsZXppb25vIFwiJXNcIiB3IFBBVEguXG4iCittc2dzdHJbMl0gImRwa2c6IG5pZSBvZG5hbGV6aW9ubyBcIiVzXCIgdyBQQVRILlxuIgorCisjOiBzcmMvaGVscC5jOjE0MQorIywgZnV6enkKK21zZ2lkICIiCisiTm90ZTogcm9vdCdzIFBBVEggc2hvdWxkIHVzdWFsbHkgY29udGFpbiAvdXNyL2xvY2FsL3NiaW4sIC91c3Ivc2JpbiBhbmQgLyIKKyJzYmluLiIKK21zZ3N0ciAiIgorIiVkIHByb2dyYW0ow7N3KSBuaWUgb2RuYWxlemlvbm8gdyBQQVRILlxuIgorIlptaWVubmEgUEFUSCBkbGEga29udGEgYWRtaW5pc3RyYXRvcmEgcG93aW5uYSB6YXdpZXJhxIcga2F0YWxvZ2kgL3Vzci9sb2NhbC8iCisic2JpbiwgL3Vzci9zYmluIG9yYXogL3NiaW4uIgorCisjOiBzcmMvaGVscC5jOjE4OAorbXNnaWQgImFkbWluZGlyIG11c3QgYmUgaW5zaWRlIGluc3RkaXIgZm9yIGRwa2cgdG8gd29yayBwcm9wZXJseSIKK21zZ3N0ciAiIgorCisjOiBzcmMvaGVscC5jOjE5MCBzcmMvbWFpbi5jOjc0NworIywgZnV6enkKKyN8IG1zZ2lkICJ1bmFibGUgdG8gc2V0ZW52IGZvciBtYWludGFpbmVyIHNjcmlwdCIKK21zZ2lkICJ1bmFibGUgdG8gc2V0ZW52IGZvciBzdWJwcm9jZXNzZXMiCittc2dzdHIgImLFgsSFZCB1c3Rhd2lhbmlhIHptaWVubnljaCDFm3JvZG93aXNrYSBkbGEgc2tyeXB0dSBvZCBvcGlla3VuYSBwYWtpZXR1IgorCisjOiBzcmMvaGVscC5jOjE5MgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2hyb290IHRvIGAlLjI1MHMnIgorbXNnc3RyICJuaWUgbW/FvG5hIHptaWVuacSHIGthdGFsb2d1IGfFgsOzd25lZ28gbmEgXCIlLjI1NXNcIiIKKworIzogc3JjL2hlbHAuYzoxOTQgZHBrZy1kZWIvYnVpbGQuYzo0NTUgZHBrZy1kZWIvYnVpbGQuYzo0NTcKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTM2IGRwa2ctZGViL2J1aWxkLmM6NTU4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byBgJS4yNTVzJyIKK21zZ3N0ciAibmllIG1vxbxuYSB6bWllbmnEhyBrYXRhbG9ndSBuYSBcIiUuMjU1c1wiIgorCisjOiBzcmMvaGVscC5jOjI1NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IGV4ZWN1dGUgcGVybWlzc2lvbnMgb24gYCUuMjUwcyciCittc2dzdHIgIm5pZSBtb8W8bmEgdXN0YXdpxIcgcHJhdyBkbyB3eWtvbnl3YW5pYSBcIiUuMjUwc1wiIgorCisjOiBzcmMvaGVscC5jOjI3NgorbXNnaWQgInVuYWJsZSB0byBzZXRlbnYgZm9yIG1haW50YWluZXIgc2NyaXB0IgorbXNnc3RyICJixYLEhWQgdXN0YXdpYW5pYSB6bWllbm55Y2ggxZtyb2Rvd2lza2EgZGxhIHNrcnlwdHUgb2Qgb3BpZWt1bmEgcGFraWV0dSIKKworIzogc3JjL2hlbHAuYzozMDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW5zdGFsbGVkICVzIHNjcmlwdCIKK21zZ3N0ciAiemFpbnN0YWxvd2FueSBza3J5cHQgJXMiCisKKyM6IHNyYy9oZWxwLmM6MzEzIHNyYy9oZWxwLmM6MzgyIHNyYy9oZWxwLmM6NDQxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0ICVzIGAlLjI1MHMnIgorbXNnc3RyICJuaWUgbW/FvG5hIHVzdGFsacSHIHN0YW51ICVzIFwiJS4yNTBzXCIiCisKKyM6IHNyYy9oZWxwLmM6MzY4IHNyYy9oZWxwLmM6NDI4CisjLCBjLWZvcm1hdAorbXNnaWQgIm5ldyAlcyBzY3JpcHQiCittc2dzdHIgIm5vd3kgc2tyeXB0ICVzIgorCisjOiBzcmMvaGVscC5jOjQwMgorIywgYy1mb3JtYXQKK21zZ2lkICJvbGQgJXMgc2NyaXB0IgorbXNnc3RyICJwb3ByemVkbmkgc2tyeXB0ICVzIgorCisjOiBzcmMvaGVscC5jOjQxNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCAlcyAnJS4yNTBzJzogJXMiCittc2dzdHIgIm5pZSBtb8W8bmEgdXN0YWxpxIcgc3RhbnUgJXMgXCIlLjI1MHNcIjogJXMiCisKKyM6IHNyYy9oZWxwLmM6NDI1CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2cgLSB0cnlpbmcgc2NyaXB0IGZyb20gdGhlIG5ldyBwYWNrYWdlIGluc3RlYWQgLi4uXG4iCittc2dzdHIgImRwa2cgLSBwcsOzYmEgd3l3b8WCYW5pYSBza3J5cHR1IHogbm93ZWdvIHBha2lldHUgLi4uXG4iCisKKyM6IHNyYy9oZWxwLmM6NDM5Cittc2dpZCAidGhlcmUgaXMgbm8gc2NyaXB0IGluIHRoZSBuZXcgdmVyc2lvbiBvZiB0aGUgcGFja2FnZSAtIGdpdmluZyB1cCIKK21zZ3N0ciAiYnJhayBza3J5cHR1IHcgbm93ZWogd2Vyc2ppIHBha2lldHUgLSB6YW5pZWNoYW5pZSB3eXdvxYJhbmlhIHNrcnlwdHUiCisKKyM6IHNyYy9oZWxwLmM6NDQ1CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IC4uLiBpdCBsb29rcyBsaWtlIHRoYXQgd2VudCBPSy5cbiIKK21zZ3N0ciAiZHBrZzogLi4uIG5hanByYXdkb3BvZG9ibmllaiB3eXdvxYJhbmllIHNrcnlwdHUgcG93aW9kxYJvIHNpxJkuXG4iCisKKyM6IHNyYy9oZWxwLmM6NjE2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2VjdXJlbHkgcmVtb3ZlICclLjI1NXMnIgorbXNnc3RyICJuaWUgbW/FvG5hIHV0d29yennEhyBcIiUuMjU1c1wiIgorCisjOiBzcmMvaGVscC5jOjYyMSBkcGtnLWRlYi9pbmZvLmM6NjUgZHBrZy1kZWIvaW5mby5jOjY3Cittc2dpZCAicm0gY29tbWFuZCBmb3IgY2xlYW51cCIKK21zZ3N0ciAiIgorCisjOiBzcmMvaW5mb2RiLmM6NTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoZWNrIGV4aXN0ZW5jZSBvZiBgJS4yNTBzJyIKK21zZ3N0ciAibmllIG1vxbxuYSBzdHdpZXJkemnEhyBpc3RuaWVuaWEgXCIlLjI1MHNcIiIKKworIzogc3JjL2luZm9kYi5jOjcwCittc2dpZCAiY2Fubm90IHJlYWQgaW5mbyBkaXJlY3RvcnkiCittc2dzdHIgIm5pZSBtb8W8bmEgb2Rjenl0YcSHIGthdGFsb2d1IGluZm9ybWFjeWpuZWdvIgorCisjOiBzcmMvbWFpbi5jOjYwCisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiBgJXMnIHBhY2thZ2UgbWFuYWdlbWVudCBwcm9ncmFtIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkRlYmlhbiBcIiVzXCIsIHByb2dyYW0gZG8gemFyesSFZHphbmlhIHBha2lldGFtaSwgd2Vyc2phIFwiJXNcIi5cbiIKKworIzogc3JjL21haW4uYzo4NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtaXwtLWluc3RhbGwgICAgICAgPC5kZWIgZmlsZSBuYW1lPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyZWN0b3J5PiAuLi5cbiIKKyIgIC0tdW5wYWNrICAgICAgICAgICA8LmRlYiBmaWxlIG5hbWU+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXJlY3Rvcnk+IC4uLlxuIgorIiAgLUF8LS1yZWNvcmQtYXZhaWwgIDwuZGViIGZpbGUgbmFtZT4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRpcmVjdG9yeT4gLi4uXG4iCisiICAtLWNvbmZpZ3VyZSAgICAgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLS10cmlnZ2Vycy1vbmx5ICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC1yfC0tcmVtb3ZlICAgICAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtUHwtLXB1cmdlICAgICAgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLS1nZXQtc2VsZWN0aW9ucyBbPHBhdHRlcm4+IC4uLl0gR2V0IGxpc3Qgb2Ygc2VsZWN0aW9ucyB0byBzdGRvdXQuXG4iCisiICAtLXNldC1zZWxlY3Rpb25zICAgICAgICAgICAgICAgICBTZXQgcGFja2FnZSBzZWxlY3Rpb25zIGZyb20gc3RkaW4uXG4iCisiICAtLWNsZWFyLXNlbGVjdGlvbnMgICAgICAgICAgICAgICBEZXNlbGVjdCBldmVyeSBub24tZXNzZW50aWFsIHBhY2thZ2UuXG4iCisiICAtLXVwZGF0ZS1hdmFpbCA8UGFja2FnZXMtZmlsZT4gICBSZXBsYWNlIGF2YWlsYWJsZSBwYWNrYWdlcyBpbmZvLlxuIgorIiAgLS1tZXJnZS1hdmFpbCA8UGFja2FnZXMtZmlsZT4gICAgTWVyZ2Ugd2l0aCBpbmZvIGZyb20gZmlsZS5cbiIKKyIgIC0tY2xlYXItYXZhaWwgICAgICAgICAgICAgICAgICAgIEVyYXNlIGV4aXN0aW5nIGF2YWlsYWJsZSBpbmZvLlxuIgorIiAgLS1mb3JnZXQtb2xkLXVuYXZhaWwgICAgICAgICAgICAgRm9yZ2V0IHVuaW5zdGFsbGVkIHVuYXZhaWxhYmxlIHBrZ3MuXG4iCisiICAtc3wtLXN0YXR1cyA8cGFja2FnZT4gLi4uICAgICAgICBEaXNwbGF5IHBhY2thZ2Ugc3RhdHVzIGRldGFpbHMuXG4iCisiICAtcHwtLXByaW50LWF2YWlsIDxwYWNrYWdlPiAuLi4gICBEaXNwbGF5IGF2YWlsYWJsZSB2ZXJzaW9uIGRldGFpbHMuXG4iCisiICAtTHwtLWxpc3RmaWxlcyA8cGFja2FnZT4gLi4uICAgICBMaXN0IGZpbGVzIGBvd25lZCcgYnkgcGFja2FnZShzKS5cbiIKKyIgIC1sfC0tbGlzdCBbPHBhdHRlcm4+IC4uLl0gICAgICAgIExpc3QgcGFja2FnZXMgY29uY2lzZWx5LlxuIgorIiAgLVN8LS1zZWFyY2ggPHBhdHRlcm4+IC4uLiAgICAgICAgRmluZCBwYWNrYWdlKHMpIG93bmluZyBmaWxlKHMpLlxuIgorIiAgLUN8LS1hdWRpdCAgICAgICAgICAgICAgICAgICAgICAgQ2hlY2sgZm9yIGJyb2tlbiBwYWNrYWdlKHMpLlxuIgorIiAgLS1wcmludC1hcmNoaXRlY3R1cmUgICAgICAgICAgICAgUHJpbnQgZHBrZyBhcmNoaXRlY3R1cmUuXG4iCisiICAtLWNvbXBhcmUtdmVyc2lvbnMgPGE+IDxvcD4gPGI+ICBDb21wYXJlIHZlcnNpb24gbnVtYmVycyAtIHNlZSBiZWxvdy5cbiIKKyIgIC0tZm9yY2UtaGVscCAgICAgICAgICAgICAgICAgICAgIFNob3cgaGVscCBvbiBmb3JjaW5nLlxuIgorIiAgLURofC0tZGVidWc9aGVscCAgICAgICAgICAgICAgICAgU2hvdyBoZWxwIG9uIGRlYnVnZ2luZy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIlBvbGVjZW5pYTpcbiIKKyIgIC1pfC0taW5zdGFsbCAgICAgICA8cGxpayAuZGViPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8a2F0YWxvZz4gLi4uXG4iCisiICAtLXVucGFjayAgICAgICAgICAgPHBsaWsgLmRlYj4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGthdGFsb2c+IC4uLlxuIgorIiAgLUF8LS1yZWNvcmQtYXZhaWwgIDxwbGlrIC5kZWI+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxrYXRhbG9nPiAuLi5cbiIKKyIgIC0tY29uZmlndXJlICAgICAgICA8bmF6d2EgcGFraWV0dT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtLXRyaWdnZXJzLW9ubHkgICAgPG5hendhIHBha2lldHU+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLXJ8LS1yZW1vdmUgICAgICAgIDxuYXp3YSBwYWtpZXR1PiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC1QfC0tcHVyZ2UgICAgICAgICA8bmF6d2EgcGFraWV0dT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtLWdldC1zZWxlY3Rpb25zIFs8d3pvcnplYz4gLi4uXSAgV3nFm3dpZXRsZW5pZSB6YXpuYWN6ZcWEIHBha2lldMOzdyBuYSAiCisic3Rkb3V0LlxuIgorIiAgLS1zZXQtc2VsZWN0aW9ucyAgICAgICAgICAgICAgICAgIFBvYnJhbmllIHphem5hY3plxYQgcGFraWV0w7N3IHogc3RkaW4uXG4iCisiICAtLWNsZWFyLXNlbGVjdGlvbnMgICAgICAgICAgICAgICAgT2R6bmFjemVuaWUgcGFraWV0w7N3IGlubnljaCBuacW8ICIKKyJuaWV6YsSZZG5lLlxuIgorIiAgLS11cGRhdGUtYXZhaWwgPHBsaWsgUGFja2FnZXM+ICAgIFBvZG1pYW5hIGluZm8gbyBkb3N0xJlwbnljaCBwYWtpZXRhY2guXG4iCisiICAtLW1lcmdlLWF2YWlsIDxwbGlrIFBhY2thZ2VzPiAgICAgRG9kYW5pZSBpbmZvIG8gZG9zdMSZcG55Y2ggcGFraWV0YWNoLlxuIgorIiAgLS1jbGVhci1hdmFpbCAgICAgICAgICAgICAgICAgICAgIFVzdXdhbmllIGluZm8gbyBkb3N0xJlwbnljaCBwYWtpZXRhY2guXG4iCisiICAtLWZvcmdldC1vbGQtdW5hdmFpbCAgICAgICAgICAgICAgVXN1d2FuaWUgaW5mbyBvIG5pZWRvc3QuIG5pZXphaW5zdC5cbiIKKyIgIC1zfC0tc3RhdHVzIDxuYXp3YS1wYWtpZXR1PiAuLi4gICBTemN6ZWfDs8WCeSBvIHN0YW5pZSBwYWtpZXR1XG4iCisiICAtcHwtLXByaW50LWF2YWlsIDxuYXp3YS1wYWtpZXR1PiAuLi4gU3pjemVnw7PFgnkgbyBkb3N0xJlwbnltIHBha2llY2llLlxuIgorIiAgLUx8LS1saXN0ZmlsZXMgPG5hendhLXBha2lldHU+IC4uLiAgIExpc3RhIHBsaWvDs3cgemF3YXJ0eWNoIHcgcGFraWVjaWUuXG4iCisiICAtbHwtLWxpc3QgWzx3em9yemVjPiAuLi5dICAgICAgICAgWndpxJl6xYJhIGxpc3RhIHBha2lldMOzdy5cbiIKKyIgIC1TfC0tc2VhcmNoIDx3em9yemVjPiAuLi4gICAgICAgICBTenVrYW5pZSBwYWtpZXR1IHphd2llcmFqxIVjZWdvIHBsaWsuXG4iCisiICAtQ3wtLWF1ZGl0ICAgICAgICAgICAgICAgICAgICAgICAgU3ByYXdkemFuaWUgdXN6a29kem9ueWNoIHBha2lldMOzdy5cbiIKKyIgIC0tcHJpbnQtYXJjaGl0ZWN0dXJlICAgICAgICAgICAgICBQb2RhbmllIGFyY2hpdGVrdHVyeSBkcGtnLlxuIgorIiAgLS1jb21wYXJlLXZlcnNpb25zIDxhPiA8cmVsPiA8Yj4gIFBvcsOzd25hbmllIG51bWVyw7N3IHdlcnNqaSAtIHBhdHJ6ICIKKyJuacW8ZWouXG4iCisiICAtLWZvcmNlLWhlbHAgICAgICAgICAgICAgICAgICAgICAgUG9tb2MgbmEgdGVtYXQgd3ltdXN6YW5pYS5cbiIKKyIgIC1EaHwtLWRlYnVnPWhlbHAgICAgICAgICAgICAgICAgICBQb21vYyBuYSB0ZW1hdCBkZWJ1Z293YW5pYS5cbiIKKyJcbiIKKworIzogc3JjL21haW4uYzoxMTMgc3JjL3F1ZXJ5Y21kLmM6NjMxIHNyYy90cmlnY21kLmM6NzcgZHBrZy1kZWIvbWFpbi5jOjg4CisjOiBkcGtnLXNwbGl0L21haW4uYzo3NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIiAgLWh8LS1oZWxwICAgICAgICAgICAgICAgICAgICAgICAgU2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCittc2dzdHIgIiIKKyIgIC1ofC0taGVscCAgICAgICAgICAgICAgICAgICAgICBQb2thenVqZSB0ZW4gZWtyYW4gcG9tb2N5LlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICAgICAgIFBva2F6dWplIGluZm9ybWFjamUgbyB3ZXJzamkgcHJvZ3JhbXUuXG4iCisiICAtLWxpY2Vuc2V8LS1saWNlbmNlICAgICAgICAgICAgUG9rYXp1amUgaW5mbyBvIGxpY2VuY2ppIGkgcHJhd2FjaCAiCisiYXV0b3Jza2ljaC5cbiIKKyJcbiIKKworIzogc3JjL21haW4uYzoxMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlVzZSBkcGtnIC1ifC0tYnVpbGR8LWN8LS1jb250ZW50c3wtZXwtLWNvbnRyb2x8LUl8LS1pbmZvfC1mfC0tZmllbGR8XG4iCisiIC14fC0tZXh0cmFjdHwtWHwtLXZleHRyYWN0fC0tZnN5cy10YXJmaWxlICBvbiBhcmNoaXZlcyAodHlwZSAlcyAtLWhlbHApLlxuIgorIlxuIgorbXNnc3RyICIiCisiVcW8eWogZHBrZyAtYnwtLWJ1aWxkfC1jfC0tY29udGVudHN8LWV8LS1jb250cm9sfC1JfC0taW5mb3wtZnwtLWZpZWxkfFxuIgorIiAteHwtLWV4dHJhY3R8LVh8LS12ZXh0cmFjdHwtLWZzeXMtdGFyZmlsZSBuYSBhcmNoaXdhY2ggKHBhdHJ6ICVzIC0taGVscCkuXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTIzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJGb3IgaW50ZXJuYWwgdXNlOiBkcGtnIC0tYXNzZXJ0LXN1cHBvcnQtcHJlZGVwZW5kcyB8IC0tcHJlZGVwLXBhY2thZ2UgfFxuIgorIiAgLS1hc3NlcnQtd29ya2luZy1lcG9jaCB8IC0tYXNzZXJ0LWxvbmctZmlsZW5hbWVzIHwgLS1hc3NlcnQtbXVsdGktY29ucmVwLlxuIgorIlxuIgorbXNnc3RyICIiCisiRG8gdcW8eXRrdSB3ZXduxJl0cnpuZWdvOiAtLWFzc2VydC1zdXBwb3J0LXByZWRlcGVuZHMgfCAtLXByZWRlcC1wYWNrYWdlIHxcbiIKKyIgIC0tYXNzZXJ0LXdvcmtpbmctZXBvY2ggfCAtLWFzc2VydC1sb25nLWZpbGVuYW1lcyB8IC0tYXNzZXJ0LW11bHRpLWNvbnJlcC5cbiIKKyJcbiIKKworIzogc3JjL21haW4uYzoxMjgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJPcHRpb25zOlxuIgorI3wgIiAgLS1hZG1pbmRpcj08ZGlyZWN0b3J5PiAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMuXG4iCisjfCAiICAtLXJvb3Q9PGRpcmVjdG9yeT4gICAgICAgICBJbnN0YWxsIG9uIGEgZGlmZmVyZW50IHJvb3QgZGlyZWN0b3J5LlxuIgorI3wgIiAgLS1pbnN0ZGlyPTxkaXJlY3Rvcnk+ICAgICAgQ2hhbmdlIGluc3RhbGxhdGlvbiBkaXIgd2l0aG91dCBjaGFuZ2luZyAiCisjfCAiYWRtaW4gZGlyLlxuIgorI3wgIiAgLU98LS1zZWxlY3RlZC1vbmx5ICAgICAgICAgU2tpcCBwYWNrYWdlcyBub3Qgc2VsZWN0ZWQgZm9yIGluc3RhbGwvIgorI3wgInVwZ3JhZGUuXG4iCisjfCAiICAtRXwtLXNraXAtc2FtZS12ZXJzaW9uICAgICBTa2lwIHBhY2thZ2VzIHdob3NlIHNhbWUgdmVyc2lvbiBpcyAiCisjfCAiaW5zdGFsbGVkLlxuIgorI3wgIiAgLUd8LS1yZWZ1c2UtZG93bmdyYWRlICAgICAgU2tpcCBwYWNrYWdlcyB3aXRoIGVhcmxpZXIgdmVyc2lvbiB0aGFuICIKKyN8ICJpbnN0YWxsZWQuXG4iCisjfCAiICAtQnwtLWF1dG8tZGVjb25maWd1cmUgICAgICBJbnN0YWxsIGV2ZW4gaWYgaXQgd291bGQgYnJlYWsgc29tZSBvdGhlciAiCisjfCAicGFja2FnZS5cbiIKKyN8ICIgIC0tW25vLV10cmlnZ2VycyAgICAgICAgICAgIFNraXAgb3IgZm9yY2UgY29uc2VxdWVudGlhbCB0cmlnZ2VyICIKKyN8ICJwcm9jZXNzaW5nLlxuIgorI3wgIiAgLS1uby1kZWJzaWcgICAgICAgICAgICAgICAgRG8gbm90IHRyeSB0byB2ZXJpZnkgcGFja2FnZSBzaWduYXR1cmVzLlxuIgorI3wgIiAgLS1uby1hY3R8LS1kcnktcnVufC0tc2ltdWxhdGVcbiIKKyN8ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEp1c3Qgc2F5IHdoYXQgd2Ugd291bGQgZG8gLSBkb24ndCBkbyBpdC5cbiIKKyN8ICIgIC1EfC0tZGVidWc9PG9jdGFsPiAgICAgICAgIEVuYWJsZSBkZWJ1Z2dpbmcgKHNlZSAtRGhlbHAgb3IgLS0iCisjfCAiZGVidWc9aGVscCkuXG4iCisjfCAiICAtLXN0YXR1cy1mZCA8bj4gICAgICAgICAgICBTZW5kIHN0YXR1cyBjaGFuZ2UgdXBkYXRlcyB0byBmaWxlICIKKyN8ICJkZXNjcmlwdG9yIDxuPi5cbiIKKyN8ICIgIC0tbG9nPTxmaWxlbmFtZT4gICAgICAgICAgIExvZyBzdGF0dXMgY2hhbmdlcyBhbmQgYWN0aW9ucyB0byAiCisjfCAiPGZpbGVuYW1lPi5cbiIKKyN8ICIgIC0taWdub3JlLWRlcGVuZHM9PHBhY2thZ2U+LC4uLlxuIgorI3wgIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSWdub3JlIGRlcGVuZGVuY2llcyBpbnZvbHZpbmcgPHBhY2thZ2U+LlxuIgorI3wgIiAgLS1mb3JjZS0uLi4gICAgICAgICAgICAgICAgT3ZlcnJpZGUgcHJvYmxlbXMgKHNlZSAtLWZvcmNlLWhlbHApLlxuIgorI3wgIiAgLS1uby1mb3JjZS0uLi58LS1yZWZ1c2UtLi4uXG4iCisjfCAiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9wIHdoZW4gcHJvYmxlbXMgZW5jb3VudGVyZWQuXG4iCisjfCAiICAtLWFib3J0LWFmdGVyIDxuPiAgICAgICAgICBBYm9ydCBhZnRlciBlbmNvdW50ZXJpbmcgPG4+IGVycm9ycy5cbiIKKyN8ICJcbiIKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT4gICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorIiAgLS1yb290PTxkaXJlY3Rvcnk+ICAgICAgICAgSW5zdGFsbCBvbiBhIGRpZmZlcmVudCByb290IGRpcmVjdG9yeS5cbiIKKyIgIC0taW5zdGRpcj08ZGlyZWN0b3J5PiAgICAgIENoYW5nZSBpbnN0YWxsYXRpb24gZGlyIHdpdGhvdXQgY2hhbmdpbmcgYWRtaW4gIgorImRpci5cbiIKKyIgIC0tcGF0aC1leGNsdWRlPTxwYXR0ZXJuPiAgIERvIG5vdCBpbnN0YWxsIHBhdGhzIHdoaWNoIG1hdGNoIGEgc2hlbGwgIgorInBhdHRlcm4uXG4iCisiICAtLXBhdGgtaW5jbHVkZT08cGF0dGVybj4gICBSZS1pbmNsdWRlIGEgcGF0dGVybiBhZnRlciBhIHByZXZpb3VzICIKKyJleGNsdXNpb24uXG4iCisiICAtT3wtLXNlbGVjdGVkLW9ubHkgICAgICAgICBTa2lwIHBhY2thZ2VzIG5vdCBzZWxlY3RlZCBmb3IgaW5zdGFsbC8iCisidXBncmFkZS5cbiIKKyIgIC1FfC0tc2tpcC1zYW1lLXZlcnNpb24gICAgIFNraXAgcGFja2FnZXMgd2hvc2Ugc2FtZSB2ZXJzaW9uIGlzIGluc3RhbGxlZC5cbiIKKyIgIC1HfC0tcmVmdXNlLWRvd25ncmFkZSAgICAgIFNraXAgcGFja2FnZXMgd2l0aCBlYXJsaWVyIHZlcnNpb24gdGhhbiAiCisiaW5zdGFsbGVkLlxuIgorIiAgLUJ8LS1hdXRvLWRlY29uZmlndXJlICAgICAgSW5zdGFsbCBldmVuIGlmIGl0IHdvdWxkIGJyZWFrIHNvbWUgb3RoZXIgIgorInBhY2thZ2UuXG4iCisiICAtLVtuby1ddHJpZ2dlcnMgICAgICAgICAgICBTa2lwIG9yIGZvcmNlIGNvbnNlcXVlbnRpYWwgdHJpZ2dlciAiCisicHJvY2Vzc2luZy5cbiIKKyIgIC0tbm8tZGVic2lnICAgICAgICAgICAgICAgIERvIG5vdCB0cnkgdG8gdmVyaWZ5IHBhY2thZ2Ugc2lnbmF0dXJlcy5cbiIKKyIgIC0tbm8tYWN0fC0tZHJ5LXJ1bnwtLXNpbXVsYXRlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBKdXN0IHNheSB3aGF0IHdlIHdvdWxkIGRvIC0gZG9uJ3QgZG8gaXQuXG4iCisiICAtRHwtLWRlYnVnPTxvY3RhbD4gICAgICAgICBFbmFibGUgZGVidWdnaW5nIChzZWUgLURoZWxwIG9yIC0tZGVidWc9aGVscCkuXG4iCisiICAtLXN0YXR1cy1mZCA8bj4gICAgICAgICAgICBTZW5kIHN0YXR1cyBjaGFuZ2UgdXBkYXRlcyB0byBmaWxlIGRlc2NyaXB0b3IgIgorIjxuPi5cbiIKKyIgIC0tbG9nPTxmaWxlbmFtZT4gICAgICAgICAgIExvZyBzdGF0dXMgY2hhbmdlcyBhbmQgYWN0aW9ucyB0byA8ZmlsZW5hbWU+LlxuIgorIiAgLS1pZ25vcmUtZGVwZW5kcz08cGFja2FnZT4sLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZ25vcmUgZGVwZW5kZW5jaWVzIGludm9sdmluZyA8cGFja2FnZT4uXG4iCisiICAtLWZvcmNlLS4uLiAgICAgICAgICAgICAgICBPdmVycmlkZSBwcm9ibGVtcyAoc2VlIC0tZm9yY2UtaGVscCkuXG4iCisiICAtLW5vLWZvcmNlLS4uLnwtLXJlZnVzZS0uLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3Agd2hlbiBwcm9ibGVtcyBlbmNvdW50ZXJlZC5cbiIKKyIgIC0tYWJvcnQtYWZ0ZXIgPG4+ICAgICAgICAgIEFib3J0IGFmdGVyIGVuY291bnRlcmluZyA8bj4gZXJyb3JzLlxuIgorIlxuIgorbXNnc3RyICIiCisiT3BjamU6XG4iCisiICAtLWFkbWluZGlyPTxrYXRhbG9nPiAgICBVxbx5d2EgPGthdGFsb2d1PiB6YW1pYXN0ICVzLlxuIgorIiAgLS1yb290PTxrYXRhbG9nPiAgICAgICAgSW5zdGFsYWNqYSB3IHN5c3RlbWllIG8gaW5ueW0ga29yemVuaXUuXG4iCisiICAtLWluc3RkaXI9PGthdGFsb2c+ICAgICBabWlhbmEga2F0YWxvZ3UgZ8WCw7N3bmVnbyBiZXoga2F0LiBhZG1pbmlzdHJhY3lqbi5cbiIKKyIgIC1PfC0tc2VsZWN0ZWQtb25seSAgICAgIFBvbWnFhCBwYWtpZXR5IG5pZXd5YnJhbmUgZG8gemFpbnN0Li9ha3R1YWxpemFjamkuXG4iCisiICAtRXwtLXNraXAtc2FtZS12ZXJzaW9uICBQb21pxYQgcGFraWV0eSBvIHRlaiBzYW1laiB3ZXJzamkgY28gIgorInphaW5zdGFsb3dhbmEuXG4iCisiICAtRz0tLXJlZnVzZS1kb3duZ3JhZGUgICBQb21pxYQgcGFraWV0eSBvIHdjemXFm25pZWpzemVqIHdlcnNqaSBuacW8ICIKKyJ6YWluc3RhbC5cbiIKKyIgIC1CfC0tYXV0by1kZWNvbmZpZ3VyZSAgIEluc3RhbHVqIG1pbW8gbmFydXN6YW5pYSB6YWxlxbxub8WbY2kgaW5uZWdvICIKKyJwYWtpZXR1LlxuIgorIiAgLS1bbm8tXXRyaWdnZXJzICAgICAgICAgT3B1c3pjemEgbHViIHd5bXVzemEgcHJ6ZXR3YXJ6YW5pZSB3eXp3YWxhY3p5LlxuIgorIiAgLS1uby1kZWJzaWcgICAgICAgICAgICAgQmV6IHByw7NiIHNwcmF3ZHphbmlhIHBvZHBpc8OzdyBwYWtpZXTDs3cuXG4iCisiICAtLW5vLWFjdHwtLWRyeS1ydW58LS1zaW11bGF0ZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgVHlsa28gcG9rYcW8LCBjbyBzacSZIHN0YW5pZSAtIG5pZSB6bWllbmlhaiAiCisibmljemVnby5cbiIKKyIgIC1EfC0tZGVidWc9PMOzc2Vta293bz4gICBXxYLEhWN6ZW5pZSBkZWJ1Z2dlcmEgLSBwYXRyeiAtRGhlbHAgbHViIC0tIgorImRlYnVnPWhlbHAuXG4iCisiICAtLXN0YXR1cy1mZCA8bj4gICAgICAgICBXeXPFgmFuaWUgYWt0dWFsaXphY2ppIHptaWFuIHN0YW51IGRvIGRlc2tyeXB0LiAiCisiPG4+LlxuIgorIiAgLS1sb2c9PHBsaWs+ICAgICAgICAgICAgWmFwaXN5d2FuaWUgem1pYW4gZG8gcGxpa3UgPHBsaWs+LlxuIgorIiAgLS1pZ25vcmUtZGVwZW5kcz08cGFraWV0PiwuLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgIElnbm9yb3dhbmllIHphbGXFvG5vxZtjaSBkb3R5Y3rEhWNlIDxwYWtpZXR1Pi5cbiIKKyIgIC0tZm9yY2UtLi4uICAgICAgICAgICAgIFBvbWlqYW5pZSBwcm9ibGVtw7N3IC0gem9iYWN6IC0tZm9yY2UtaGVscC5cbiIKKyIgIC0tbm8tZm9yY2UtLi4ufC0tcmVmdXNlLS4uLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgWmF0cnp5bWFuaWUsIGplxZtsaSB3eXN0xIVwacSFIHByb2JsZW15LlxuIgorIiAgLS1hYm9ydC1hZnRlciA8bj4gICAgICAgWmF0cnp5bWFuaWUgcG8gd3lzdMSFcGllbml1IDxuPiBixYLEmWTDs3cuXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTU0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21wYXJpc29uIG9wZXJhdG9ycyBmb3IgLS1jb21wYXJlLXZlcnNpb25zIGFyZTpcbiIKKyIgIGx0IGxlIGVxIG5lIGdlIGd0ICAgICAgICh0cmVhdCBlbXB0eSB2ZXJzaW9uIGFzIGVhcmxpZXIgdGhhbiBhbnkgIgorInZlcnNpb24pO1xuIgorIiAgbHQtbmwgbGUtbmwgZ2UtbmwgZ3QtbmwgKHRyZWF0IGVtcHR5IHZlcnNpb24gYXMgbGF0ZXIgdGhhbiBhbnkgdmVyc2lvbik7XG4iCisiICA8IDw8IDw9ID0gPj0gPj4gPiAgICAgICAob25seSBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIGNvbnRyb2wgZmlsZSAiCisic3ludGF4KS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIk9wZXJhdG9yeSBwb3LDs3duYW5pYSBkbGEgLS1jb21wYXJlLXZlcnNpb25zOlxuIgorIiBsdCBsZSBlcSBuZSBnZSBndCAgICAgICAoYnJhayB3ZXJzamkgdHJha3Rvd2FueSBqYWtvIHdjemXFm25pZWpzemEpO1xuIgorIiBsdC1ubCBsZS1ubCBnZS1ubCBndC1ubCAoYnJhayB3ZXJzamkgdHJha3Rvd2FueSBqYWtvIHDDs8W6bmllanN6YSk7XG4iCisiIDwgPDwgPD0gPSA+PSA+PiA+ICAgICAgIChkbGEgemFjaG93LiBrb21wYXR5Yi4gemUgc2vFgmFkbmnEhSBwbGlrdSAiCisia29udHJvbG4uKS5cbiIKKyJcbiIKKworIzogc3JjL21haW4uYzoxNjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiVXNlIGBkc2VsZWN0JyBvciBgYXB0aXR1ZGUnIGZvciB1c2VyLWZyaWVuZGx5IHBhY2thZ2UgbWFuYWdlbWVudC5cbiIKK21zZ3N0ciAiIgorIlByb3N6xJkgdcW8ecSHIFwiZHNlbGVjdFwiIGx1YiBcImFwdGl0dWRlXCIsIGplxZtsaSBwb3RyemVibnkgamVzdCB3eWdvZG55XG4iCisicHJvZ3JhbSBkbyB6YXJ6xIVkemFuaWEgcGFraWV0YW1pLlxuIgorCisjOiBzcmMvbWFpbi5jOjE3MAorIywgZnV6enkKK21zZ2lkICIiCisiVHlwZSBkcGtnIC0taGVscCBmb3IgaGVscCBhYm91dCBpbnN0YWxsaW5nIGFuZCBkZWluc3RhbGxpbmcgcGFja2FnZXMgWypdO1xuIgorIlVzZSBgZHNlbGVjdCcgb3IgYGFwdGl0dWRlJyBmb3IgdXNlci1mcmllbmRseSBwYWNrYWdlIG1hbmFnZW1lbnQ7XG4iCisiVHlwZSBkcGtnIC1EaGVscCBmb3IgYSBsaXN0IG9mIGRwa2cgZGVidWcgZmxhZyB2YWx1ZXM7XG4iCisiVHlwZSBkcGtnIC0tZm9yY2UtaGVscCBmb3IgYSBsaXN0IG9mIGZvcmNpbmcgb3B0aW9ucztcbiIKKyJUeXBlIGRwa2ctZGViIC0taGVscCBmb3IgaGVscCBhYm91dCBtYW5pcHVsYXRpbmcgKi5kZWIgZmlsZXM7XG4iCisiXG4iCisiT3B0aW9ucyBtYXJrZWQgWypdIHByb2R1Y2UgYSBsb3Qgb2Ygb3V0cHV0IC0gcGlwZSBpdCB0aHJvdWdoIGBsZXNzJyBvciAiCisiYG1vcmUnICEiCittc2dzdHIgIiIKKyJXcGlzeiBkcGtnIC0taGVscCwgYWJ5IGRvd2llZHppZcSHIHNpxJkgamFrIChvZClpbnN0YWxvd2HEhyBwYWtpZXR5IFsqXTtcbiIKKyJVxbx5aiBcImRzZWxlY3RcIiBsdWIgXCJhcHRpdHVkZVwiLCBqZcWbbGkgcG90cnplYnVqZXN6IHd5Z29kbmVnbyBwcm9ncmFtdVxuIgorImRvIHphcnrEhWR6YW5pYSBwYWtpZXRhbWk7XG4iCisiV3Bpc3ogIGRwa2cgLURoZWxwLCBhYnkgZG93aWVkemllxIcgc2nEmSBvIG9wY2phY2ggZGVidWdnZXJhO1xuIgorIldwaXN6ICBkcGtnIC0tZm9yY2UtaGVscCwgYWJ5IGRvd2llZHppZcSHIHNpxJksIGphayBpZ25vcm93YcSHIHByb2JsZW15O1xuIgorIldwaXN6ICBkcGtnLWRlYiAtLWhlbHAsIGFieSBkb3dpZWR6aWXEhyBzacSZLCBqYWsgb3Blcm93YcSHIHBsaWthbWkgKi5kZWI7XG4iCisiV3Bpc3ogIGRwa2cgLS1saWNlbmNlLCBhYnkgcG96bmHEhyB3YXJ1bmtpIGxpY2VuY2ppIGkgZ3dhcmFuY2ppIChHTlUgR1BMKSAiCisiWypdLlxuIgorIlxuIgorIk9wY2plIG96bmFjem9uZSBbKl0gcG9kYWrEhSBkdcW8byB0cmXFm2NpIC0gc2tpZXJ1aiBwb3RvayBuYSBcImxlc3NcIiBsdWIgXCJtb3JlIgorIlwiISIKKworIzogc3JjL21haW4uYzoyMTkKK21zZ2lkICJTZXQgYWxsIGZvcmNlIG9wdGlvbnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjEKK21zZ2lkICJSZXBsYWNlIGEgcGFja2FnZSB3aXRoIGEgbG93ZXIgdmVyc2lvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIyMworbXNnaWQgIkNvbmZpZ3VyZSBhbnkgcGFja2FnZSB3aGljaCBtYXkgaGVscCB0aGlzIG9uZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIyNQorbXNnaWQgIlByb2Nlc3MgaW5jaWRlbnRhbCBwYWNrYWdlcyBldmVuIHdoZW4gb24gaG9sZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIyNworbXNnaWQgIlRyeSB0byAoZGUpaW5zdGFsbCB0aGluZ3MgZXZlbiB3aGVuIG5vdCByb290IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjI5Cittc2dpZCAiUEFUSCBpcyBtaXNzaW5nIGltcG9ydGFudCBwcm9ncmFtcywgcHJvYmxlbXMgbGlrZWx5IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjMxCittc2dpZCAiSW5zdGFsbCBhIHBhY2thZ2UgZXZlbiBpZiBpdCBmYWlscyBhdXRoZW50aWNpdHkgY2hlY2siCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzMKK21zZ2lkICJQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyB2ZXJzaW9ucyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzNQorbXNnaWQgIk92ZXJ3cml0ZSBhIGZpbGUgZnJvbSBvbmUgcGFja2FnZSB3aXRoIGFub3RoZXIiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzcKK21zZ2lkICJPdmVyd3JpdGUgYSBkaXZlcnRlZCBmaWxlIHdpdGggYW4gdW5kaXZlcnRlZCB2ZXJzaW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjM5Cittc2dpZCAiT3ZlcndyaXRlIG9uZSBwYWNrYWdlJ3MgZGlyZWN0b3J5IHdpdGggYW5vdGhlcidzIGZpbGUiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDEKK21zZ2lkICJEbyBub3QgcGVyZm9ybSBzYWZlIEkvTyBvcGVyYXRpb25zIHdoZW4gdW5wYWNraW5nIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjQzCittc2dpZCAiQWx3YXlzIHVzZSB0aGUgbmV3IGNvbmZpZyBmaWxlcywgZG9uJ3QgcHJvbXB0IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjQ1Cittc2dpZCAiQWx3YXlzIHVzZSB0aGUgb2xkIGNvbmZpZyBmaWxlcywgZG9uJ3QgcHJvbXB0IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjQ4Cittc2dpZCAiIgorIlVzZSB0aGUgZGVmYXVsdCBvcHRpb24gZm9yIG5ldyBjb25maWcgZmlsZXMgaWYgb25lXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgIGlzIGF2YWlsYWJsZSwgZG9uJ3QgcHJvbXB0LiBJZiBubyBkZWZhdWx0IGNhbiBiZSAiCisiZm91bmQsXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgIHlvdSB3aWxsIGJlIHByb21wdGVkIHVubGVzcyBvbmUgb2YgdGhlIGNvbmZvbGQgb3JcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgY29uZm5ldyBvcHRpb25zIGlzIGFsc28gZ2l2ZW4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNTMKK21zZ2lkICJBbHdheXMgaW5zdGFsbCBtaXNzaW5nIGNvbmZpZyBmaWxlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI1NQorbXNnaWQgIk9mZmVyIHRvIHJlcGxhY2UgY29uZmlnIGZpbGVzIHdpdGggbm8gbmV3IHZlcnNpb25zIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjU3Cittc2dpZCAiUHJvY2VzcyBldmVuIHBhY2thZ2VzIHdpdGggd3Jvbmcgb3Igbm8gYXJjaGl0ZWN0dXJlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjU5Cittc2dpZCAiSW5zdGFsbCBldmVuIGlmIGl0IHdvdWxkIGJyZWFrIGFub3RoZXIgcGFja2FnZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI2MQorbXNnaWQgIkFsbG93IGluc3RhbGxhdGlvbiBvZiBjb25mbGljdGluZyBwYWNrYWdlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI2MworIywgZnV6enkKKyN8IG1zZ2lkICJkZXBlbmRlbmN5IHByb2JsZW1zIC0gbm90IHJlbW92aW5nIgorbXNnaWQgIlR1cm4gYWxsIGRlcGVuZGVuY3kgcHJvYmxlbXMgaW50byB3YXJuaW5ncyIKK21zZ3N0ciAicHJvYmxlbXkgeiB6YWxlxbxub8WbY2lhbWkgLSBuaWUgYsSZZHppZSB1c3V3YW55IgorCisjOiBzcmMvbWFpbi5jOjI2NQorIywgZnV6enkKKyN8IG1zZ2lkICJkZXBlbmRlbmN5IHByb2JsZW1zIC0gbm90IHJlbW92aW5nIgorbXNnaWQgIlR1cm4gZGVwZW5kZW5jeSB2ZXJzaW9uIHByb2JsZW1zIGludG8gd2FybmluZ3MiCittc2dzdHIgInByb2JsZW15IHogemFsZcW8bm/Fm2NpYW1pIC0gbmllIGLEmWR6aWUgdXN1d2FueSIKKworIzogc3JjL21haW4uYzoyNjcKK21zZ2lkICJSZW1vdmUgcGFja2FnZXMgd2hpY2ggcmVxdWlyZSBpbnN0YWxsYXRpb24iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNjkKK21zZ2lkICJSZW1vdmUgYW4gZXNzZW50aWFsIHBhY2thZ2UiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODEKK21zZ2lkICJHZW5lcmFsbHkgaGVscGZ1bCBwcm9ncmVzcyBpbmZvcm1hdGlvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4MgorIywgZnV6enkKKyN8IG1zZ2lkICJ1bmFibGUgdG8gc2V0ZW52IGZvciBtYWludGFpbmVyIHNjcmlwdCIKK21zZ2lkICJJbnZvY2F0aW9uIGFuZCBzdGF0dXMgb2YgbWFpbnRhaW5lciBzY3JpcHRzIgorbXNnc3RyICJixYLEhWQgdXN0YXdpYW5pYSB6bWllbm55Y2ggxZtyb2Rvd2lza2EgZGxhIHNrcnlwdHUgb2Qgb3BpZWt1bmEgcGFraWV0dSIKKworIzogc3JjL21haW4uYzoyODMKK21zZ2lkICJPdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODQKK21zZ2lkICJMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4NQorIywgZnV6enkKKyN8IG1zZ2lkICJyZWFkIGVycm9yIGluIGNvbmZpZ3VyYXRpb24gZmlsZSBgJS4yNTVzJyIKK21zZ2lkICJPdXRwdXQgZm9yIGVhY2ggY29uZmlndXJhdGlvbiBmaWxlIgorbXNnc3RyICJixYLEhWQgb2Rjenl0dSBwbGlrdSBrb25maWd1cmFjeWpuZWdvIFwiJS4yNTBzXCIiCisKKyM6IHNyYy9tYWluLmM6Mjg2Cittc2dpZCAiTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggY29uZmlndXJhdGlvbiBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg3Cittc2dpZCAiRGVwZW5kZW5jaWVzIGFuZCBjb25mbGljdHMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODgKK21zZ2lkICJMb3RzIG9mIGRlcGVuZGVuY2llcy9jb25mbGljdHMgb3V0cHV0IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg5Cittc2dpZCAiVHJpZ2dlciBhY3RpdmF0aW9uIGFuZCBwcm9jZXNzaW5nIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjkwCittc2dpZCAiTG90cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjkxCittc2dpZCAiU2lsbHkgYW1vdW50cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjkyCittc2dpZCAiTG90cyBvZiBkcml2ZWwgYWJvdXQgZWcgdGhlIGRwa2cvaW5mbyBkaXJlY3RvcnkiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyOTMKK21zZ2lkICJJbnNhbmUgYW1vdW50cyBvZiBkcml2ZWwiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzozMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzIGRlYnVnZ2luZyBvcHRpb24sIC0tZGVidWc9PG9jdGFsPiBvciAtRDxvY3RhbD46XG4iCisiXG4iCisiIE51bWJlciAgUmVmLiBpbiBzb3VyY2UgICBEZXNjcmlwdGlvblxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MzExCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJEZWJ1Z2dpbmcgb3B0aW9ucyBjYW4gYmUgbWl4ZWQgdXNpbmcgYml0d2lzZS1vci5cbiIKKyJOb3RlIHRoYXQgdGhlIG1lYW5pbmdzIGFuZCB2YWx1ZXMgYXJlIHN1YmplY3QgdG8gY2hhbmdlLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MzE5Cittc2dpZCAiLS1kZWJ1ZyByZXF1aXJlcyBhbiBvY3RhbCBhcmd1bWVudCIKK21zZ3N0ciAiLS1kZWJ1ZyB3eW1hZ2EgcG9kYW5pYSBhcmd1bWVudHUgYsSZZMSFY2VnbyBsaWN6YsSFIMOzc2Vta293xIUiCisKKyM6IHNyYy9tYWluLmM6MzQ4CisjLCBjLWZvcm1hdAorbXNnaWQgIm51bGwgcGFja2FnZSBuYW1lIGluIC0taWdub3JlLWRlcGVuZHMgY29tbWEtc2VwYXJhdGVkIGxpc3QgYCUuMjUwcyciCittc2dzdHIgIiIKKyJwdXN0YSBuYXp3YSBwYWtpZXR1IGRsYSAtLWlnbm9yZS1kZXBlbmRzIHcgbGnFm2NpZSByb3pkemllbGFuZWogcHJ6ZWNpbmthbWkgIgorIlwiJS4yNTBzXCIiCisKKyM6IHNyYy9tYWluLmM6MzU0CisjLCBjLWZvcm1hdAorbXNnaWQgIi0taWdub3JlLWRlcGVuZHMgcmVxdWlyZXMgYSBsZWdhbCBwYWNrYWdlIG5hbWUuIGAlLjI1MHMnIGlzIG5vdDsgJXMiCittc2dzdHIgIiIKKyItLWlnbm9yZS1kZXBlbmRzIHd5bWFnYSBwb2RhbmlhIHBvcHJhd25laiBuYXp3eSBwYWtpZXR1LiBcIiUuMjUwc1wiIGplc3QgIgorIm5pZXBvcHJhd255OyAlcyIKKworIzogc3JjL21haW4uYzozNzEgc3JjL21haW4uYzozODEgc3JjL21haW4uYzo2NDkgZHBrZy1zcGxpdC9tYWluLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgaW50ZWdlciBmb3IgLS0lczogYCUuMjUwcyciCittc2dzdHIgImLFgsSZZG5hIHdhcnRvxZvEhyBsaWN6Ym93YSBkbGEgLS0lczogXCIlLjI1MHNcIiIKKworIzogc3JjL21haW4uYzo0MzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgZXhlY3V0aW5nIGhvb2sgJyVzJywgZXhpdCBjb2RlICVkIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6NDY1CisjLCBmdXp6eQorI3wgbXNnaWQgInN0YXR1cyIKK21zZ2lkICJzdGF0dXMgbG9nZ2VyIgorbXNnc3RyICJzdGF0dXMiCisKKyM6IHNyYy9tYWluLmM6NDgwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlcyBmb3JjaW5nIG9wdGlvbnMgLSBjb250cm9sIGJlaGF2aW91ciB3aGVuIHByb2JsZW1zIGZvdW5kOlxuIgorIiAgd2FybiBidXQgY29udGludWU6ICAtLWZvcmNlLTx0aGluZz4sPHRoaW5nPiwuLi5cbiIKKyIgIHN0b3Agd2l0aCBlcnJvcjogICAgLS1yZWZ1c2UtPHRoaW5nPiw8dGhpbmc+LC4uLiB8IC0tbm8tZm9yY2UtPHRoaW5nPiwuLi5cbiIKKyIgRm9yY2luZyB0aGluZ3M6XG4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzo0OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIldBUk5JTkcgLSB1c2Ugb2Ygb3B0aW9ucyBtYXJrZWQgWyFdIGNhbiBzZXJpb3VzbHkgZGFtYWdlIHlvdXIgaW5zdGFsbGF0aW9uLlxuIgorIkZvcmNpbmcgb3B0aW9ucyBtYXJrZWQgWypdIGFyZSBlbmFibGVkIGJ5IGRlZmF1bHQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzo1MDQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBmb3JjZS9yZWZ1c2Ugb3B0aW9uIGAlLipzJyIKK21zZ3N0ciAibmllem5hbmEgb3BjamEgZm9yY2UvcmVmdXNlIFwiJS4qc1wiIgorCisjOiBzcmMvbWFpbi5jOjUxMworIywgYy1mb3JtYXQKK21zZ2lkICJvYnNvbGV0ZSBmb3JjZS9yZWZ1c2Ugb3B0aW9uICclcydcbiIKK21zZ3N0ciAibmlld3lrb3J6eXN0eXdhbmEganXFvCBvcGNqYSBmb3JjZS9yZWZ1c2UgXCIlc1wiXG4iCisKKyM6IHNyYy9tYWluLmM6NjQzCittc2dpZCAiLS1jb21tYW5kLWZkIHRha2VzIG9uZSBhcmd1bWVudCwgbm90IHplcm8iCittc2dzdHIgIi0tY29tbWFuZC1mZCB3eW1hZ2EgamVkbmVnbyBhcmd1bWVudHUsIG5pZSB6ZXJvIgorCisjOiBzcmMvbWFpbi5jOjY0NQorbXNnaWQgIi0tY29tbWFuZC1mZCBvbmx5IHRha2VzIG9uZSBhcmd1bWVudCIKK21zZ3N0ciAiLS1jb21tYW5kLWZkIHd5bWFnYSB0eWxrbyBqZWRuZWdvIGFyZ3VtZW50dSIKKworIzogc3JjL21haW4uYzo2NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGRuJ3Qgb3BlbiBgJWknIGZvciBzdHJlYW0iCittc2dzdHIgIm5pZSB1ZGHFgm8gc2nEmSBvdHdvcnp5xIcgXCIlaVwiIGpha28gc3RydW1pZW5pYSIKKworIzogc3JjL21haW4uYzo2NzYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgYmVmb3JlIGVuZCBvZiBsaW5lICVkIgorbXNnc3RyICJuaWVzcG9kemlld2FueSBFT0YgcHJ6ZWQga2/FhGNlbSBsaW5paSAlZCIKKworIzogc3JjL21haW4uYzo3MTkgc3JjL21haW4uYzo3NDEgc3JjL3F1ZXJ5Y21kLmM6NjkyIHNyYy9zdGF0Y21kLmM6Mzc5CisjOiBkcGtnLWRlYi9tYWluLmM6MjAxIGRwa2ctc3BsaXQvbWFpbi5jOjE2MworbXNnaWQgIm5lZWQgYW4gYWN0aW9uIG9wdGlvbiIKK21zZ3N0ciAibmFsZcW8eSBva3JlxZtsacSHIGR6aWHFgmFuaWUiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjExMworbXNnaWQgIiIKKyJ5b3UgbXVzdCBzcGVjaWZ5IHBhY2thZ2VzIGJ5IHRoZWlyIG93biBuYW1lcywgbm90IGJ5IHF1b3RpbmcgdGhlIG5hbWVzIG9mICIKKyJ0aGUgZmlsZXMgdGhleSBjb21lIGluIgorbXNnc3RyICIiCisibmFsZcW8eSBwb2RhxIcgbmF6d8SZIHBha2lldHUsIGEgbmllIG5henfEmSBwbGlrdSwgeiBrdMOzcmVnbyB6b3N0YcWCIHphaW5zdGFsb3dhbnkiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjEzMworIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIC0tcGVuZGluZyBkb2VzIG5vdCB0YWtlIGFueSBub24tb3B0aW9uIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS0lcyAtLXBlbmRpbmcgd3ltYWdhIG5pZXBvZGF3YW5pYSBhcmd1bWVudMOzdyBuaWUgYsSZZMSFY3ljaCBvcGNqxIUiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjEzOCBzcmMvcXVlcnljbWQuYzozNzUgc3JjL3F1ZXJ5Y21kLmM6NTY1CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYXQgbGVhc3Qgb25lIHBhY2thZ2UgbmFtZSBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyB3eW1hZ2EgY28gbmFqbW5pZWogamVkbmVqIG5hend5IHBha2lldHUiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjE3OQorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlICVzIGxpc3RlZCBtb3JlIHRoYW4gb25jZSwgb25seSBwcm9jZXNzaW5nIG9uY2UuXG4iCittc2dzdHIgIiIKKyJQYWtpZXQgJXMgamVzdCB3eW1pZW5pb255IGtpbGt1a3JvdG5pZSwgYWxlIHpvc3RhbmllIHByemV0d29yem9ueSB0eWxrbyAiCisicmF6LlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzoxODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk1vcmUgdGhhbiBvbmUgY29weSBvZiBwYWNrYWdlICVzIGhhcyBiZWVuIHVucGFja2VkXG4iCisiIGluIHRoaXMgcnVuICEgIE9ubHkgY29uZmlndXJpbmcgaXQgb25jZS5cbiIKK21zZ3N0ciAiIgorIlJvenBha293YW5hIHpvc3RhxYJhIHdpxJljZWogbmnFvCBqZWRuYSBrb3BpYSBwYWtpZXR1ICVzXG4iCisiIHcgdHltIHByemViaWVndSEgIEtvbmZpZ3VyYWNqYSBvZGLEmWR6aWUgc2nEmSB0eWxrbyBkbGEgamVkbmVqLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInBhY2thZ2UgJS4yNTBzIGlzIG5vdCByZWFkeSBmb3IgdHJpZ2dlciBwcm9jZXNzaW5nXG4iCisiIChjdXJyZW50IHN0YXR1cyBgJS4yNTBzJyB3aXRoIG5vIHBlbmRpbmcgdHJpZ2dlcnMpIgorbXNnc3RyICIiCisicGFraWV0ICUuMjUwcyBqZXN0IG5pZSBnb3Rvd3kgbmEgcHJ6ZXR3YXJ6YW5pZSB3eXp3YWxhY3p5XG4iCisiIChiaWXFvMSFY3kgc3RhbiBcIiUuMjUwc1wiLCBiZXogemFwbGFub3dhbnljaCB3eXp3YWxhY3p5KSIKKworIzogc3JjL3BhY2thZ2VzLmM6MzM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyB3aGljaCBwcm92aWRlcyAlcyBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIgIFBha2lldCAlcyBkb3N0YXJjemEgJXMsIGFsZSBqZXN0IHByemV6bmFjem9ueSBkbyB1c3VuacSZY2lhLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzozMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIGlzIHRvIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiAgUGFraWV0ICVzIGplc3QgcHJ6ZXpuYWN6b255IGRvIHVzdW5pxJljaWEuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjM1NAorIywgYy1mb3JtYXQKK21zZ2lkICIgIFZlcnNpb24gb2YgJXMgb24gc3lzdGVtIGlzICVzLlxuIgorbXNnc3RyICIgIFdlcnNqxIUgJXMgdyBzeXN0ZW1pZSBqZXN0ICVzLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzozNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIHdoaWNoIHByb3ZpZGVzICVzIGF3YWl0cyB0cmlnZ2VyIHByb2Nlc3NpbmcuXG4iCittc2dzdHIgIiAgUGFraWV0ICVzIGRvc3RhcmN6YWrEhWN5ICVzIGN6ZWthIG5hIHByemV0d2FyemFuaWUgd3l6d2FsYWN6eS5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MzgwCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyBhd2FpdHMgdHJpZ2dlciBwcm9jZXNzaW5nLlxuIgorbXNnc3RyICIgIFBha2lldCAlcyBvY3pla3VqZSBuYSBwcnpldHdhcnphbmllIHd5endhbGFjenkuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQxMAorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiBhbHNvIGNvbmZpZ3VyaW5nIGAlcycgKHJlcXVpcmVkIGJ5IGAlcycpXG4iCittc2dzdHIgImRwa2c6IGtvbmZpZ3VyYWNqYSB0YWvFvGUgZGxhIFwiJXNcIiAod3ltYWdhbmEgcHJ6ZXogXCIlc1wiKVxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIHdoaWNoIHByb3ZpZGVzICVzIGlzIG5vdCBjb25maWd1cmVkIHlldC5cbiIKK21zZ3N0ciAiICBQYWtpZXQgJXMgZG9zdGFyY3phICVzLCBhbGUgbmllIHpvc3RhxYIgamVzemN6ZSBza29uZmlndXJvd2FueS5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDIxCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyBpcyBub3QgY29uZmlndXJlZCB5ZXQuXG4iCittc2dzdHIgIiAgUGFraWV0ICVzIG5pZSBqZXN0IGplc3pjemUgc2tvbmZpZ3Vyb3dhbnkuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQzMgorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgd2hpY2ggcHJvdmlkZXMgJXMgaXMgbm90IGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiICBQYWtpZXQgJXMgZG9zdGFyY3phasSFY3kgJXMgbmllIGplc3QgemFpbnN0YWxvd2FueS5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDM1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIgIFBha2lldCAlcyBuaWUgamVzdCB6YWluc3RhbG93YW55LlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICVzICglcykgYnJlYWtzICVzIGFuZCBpcyAlcy5cbiIKK21zZ3N0ciAiICVzICglcykgbmFydXN6YSB6YWxlxbxub8WbY2kgJXMgaSBqZXN0ICVzLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlcyAoJXMpIHByb3ZpZGVzICVzLlxuIgorbXNnc3RyICIgICVzICglcykgZG9zdGFyY3phICVzLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBWZXJzaW9uIG9mICVzIHRvIGJlIGNvbmZpZ3VyZWQgaXMgJXMuXG4iCittc2dzdHIgIiAgV2Vyc2rEhSAlcyBkbyBza29uZmlndXJvd2FuaWEgamVzdCAlcy5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NTk2Cittc2dpZCAiIGRlcGVuZHMgb24gIgorbXNnc3RyICIgemFsZcW8eSBvZCAiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjYwMgorbXNnaWQgIjsgaG93ZXZlcjpcbiIKK21zZ3N0ciAiOyBqZWRuYWvFvGU6XG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiLi4uLyVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgZW5zdXJpbmcgYCUuMjUwcycgZG9lc24ndCBleGlzdCIKK21zZ3N0ciAibmllIG1vxbxuYSB1c3VuxIXEhyBcIiUuMjUwc1wiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjk5Cittc2dpZCAic3BsaXQgcGFja2FnZSByZWFzc2VtYmx5IgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTA4Cittc2dpZCAicmVhc3NlbWJsZWQgcGFja2FnZSBmaWxlIgorbXNnc3RyICJwcnplYnVkb3dhbmllIHBsaWt1IHBha2lldHUiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTMzCisjLCBjLWZvcm1hdAorbXNnaWQgIkF1dGhlbnRpY2F0aW5nICVzIC4uLlxuIgorbXNnc3RyICJTcHJhd2R6YW5pZSAlcyAuLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxMzkKK21zZ2lkICJwYWNrYWdlIHNpZ25hdHVyZSB2ZXJpZmljYXRpb24iCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxNDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiVmVyaWZpY2F0aW9uIG9uIHBhY2thZ2UgJXMgZmFpbGVkISIKK21zZ3N0ciAiU3ByYXdkemVuaWUgcGFraWV0dSAlcyBuaWUgcG93aW9kxYJvIHNpxJkhIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE0OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVmVyaWZpY2F0aW9uIG9uIHBhY2thZ2UgJXMgZmFpbGVkLFxuIgorImJ1dCBpbnN0YWxsaW5nIGFueXdheSBhcyB5b3UgcmVxdWVzdGVkLlxuIgorbXNnc3RyICIiCisiTmllIHVkYcWCbyBzacSZIHNwcmF3ZHppxIcgcGFraWV0dSAlcyxcbiIKKyJhbGUgem9zdGFuaWUgemFpbnN0YWxvd2FueSB3ZWTFgnVnIMW8xIVkYW5pYVxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICJwYXNzZWRcbiIKK21zZ3N0ciAicG93aW9kxYJvIHNpxJlcbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxNjUgZHBrZy1kZWIvaW5mby5jOjgxCisjLCBmdXp6eQorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdGVtcG9yYXJ5IGRpcmVjdG9yeSIKK21zZ3N0ciAibmllIG1vxbxuYSB1dHdvcnp5xIcgbmF6d3kgdHltY3phc293ZWdvIGthdGFsb2d1IgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjIwNQorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlICVzIGhhcyB0b28gbWFueSBDb25mbGljdHMvUmVwbGFjZXMgcGFpcnMiCittc2dzdHIgInBha2lldCAlcyBtYSB6Ynl0IHdpZWxlIHBhciBDb25mbGl0cy9SZXBsYWNlcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyNDMKKyMsIGMtZm9ybWF0Cittc2dpZCAib2xkIHZlcnNpb24gb2YgcGFja2FnZSBoYXMgb3Zlcmx5LWxvbmcgaW5mbyBmaWxlIG5hbWUgc3RhcnRpbmcgYCUuMjUwcyciCittc2dzdHIgIiIKKyJwb3ByemVkbmlhIHdlcnNqYSBwYWtpZXR1IG1hIHBsaWsgaW5mb3JtYWN5am55IG8gemJ5dCBkxYJ1Z2llaiBuYXp3aWUgIgorInJvenBvY3p5bmFqxIVjZWogc2nEmSBvZCBcIiUuMjUwc1wiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjI4MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIG9ic29sZXRlIGluZm8gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmllIG1vxbxuYSB1c3VuxIXEhyBuaWVha3R1YWxuZWdvIHBsaWt1IGluZm9ybWFjeWpuZWdvIFwiJS4yNTBzXCIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6Mjg2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIChzdXBwb3NlZCkgbmV3IGluZm8gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmllIG1vxbxuYSB6YWluc3RhbG93YcSHIG5vd2VnbyBwbGlrdSBpbmZvcm1hY3lqbmVnbyBcIiUuMjUwc1wiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjI5NgorbXNnaWQgInVuYWJsZSB0byBvcGVuIHRlbXAgY29udHJvbCBkaXJlY3RvcnkiCittc2dzdHIgIm5pZSBtb8W8bmEgb3R3b3J6ecSHIHR5bWN6YXNvd2VnbyBrYXRhbG9ndSBrb250cm9sbmVnbyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMDcKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBjb250YWlucyBvdmVybHktbG9uZyBjb250cm9sIGluZm8gZmlsZSBuYW1lIChzdGFydGluZyBgJS41MHMnKSIKK21zZ3N0ciAiIgorInBha2lldCB6YXdpZXJhIHBsaWsga29udHJvbG55IG8gemJ5dCBkxYJ1Z2llaiBuYXp3aWUgKHJvenBvY3p5bmFqxIVjZWogc2nEmSBvZCAiCisiXCIlLjUwc1wiKSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBjb250cm9sIGluZm8gY29udGFpbmVkIGRpcmVjdG9yeSBgJS4yNTBzJyIKK21zZ3N0ciAiYXJjaGl3dW0ga29udHJvbG5lIHBha2lldHUgemF3aWVyYSBrYXRhbG9nIFwiJS4yNTBzXCIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzE2CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgY29udHJvbCBpbmZvIHJtZGlyIG9mIGAlLjI1MHMnIGRpZG4ndCBzYXkgbm90IGEgZGlyIgorbXNnc3RyICIiCisicHLDs2JhIHVzdW5pxJljaWEga2F0YWxvZ3UgXCIlLjI1MHNcIiBuaWUgd3lrYXphxYJhLCDFvGUgdG8gbmllIGplc3Qga2F0YWxvZyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMjYKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlcyBjb250YWluZWQgbGlzdCBhcyBpbmZvIGZpbGUiCittc2dzdHIgInBha2lldCAlcyB6YXdpZXJhxYIgbGlzdMSZIHBsaWvDs3cgamFrbyBwbGlrIGluZm9ybWFjeWpueSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IGluZm8gZmlsZSBgJS4yNTBzJyBhcyBgJS4yNTBzJyIKK21zZ3N0ciAiIgorIm5pZSBtb8W8bmEgemFpbnN0YWxvd2HEhyBub3dlZ28gcGxpa3UgaW5mb3JtYWN5am5lZ28gXCIlLjI1MHNcIiBqYWtvIFwiJS4yNTBzXCIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzQ5IHNyYy9yZW1vdmUuYzoxOTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSBjb250cm9sIGluZm8gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmllIG1vxbxuYSB1c3VuxIXEhyBwbGlrdSBrb250cm9sbmVnbyBcIiUuMjUwc1wiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjQxMQorbXNnaWQgImNhbm5vdCBhY2Nlc3MgYXJjaGl2ZSIKK21zZ3N0ciAiYnJhayBkb3N0xJlwdSBkbyBhcmNoaXd1bSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo0MzMKKyMsIGZ1enp5CisjfCBtc2dpZCAiY29udHJvbCBpbmZvcm1hdGlvbiBsZW5ndGgiCittc2dpZCAicGFja2FnZSBjb250cm9sIGluZm9ybWF0aW9uIGV4dHJhY3Rpb24iCittc2dzdHIgInJvem1pYXIgaW5mb3JtYWNqaSBrb250cm9sbmVqIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjQ2MAorIywgYy1mb3JtYXQKK21zZ2lkICJSZWNvcmRlZCBpbmZvIGFib3V0ICVzIGZyb20gJXMuXG4iCittc2dzdHIgIlphcGlzYW5lIGluZm9ybWFjamUgbyAlcyB6ICVzLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjQ2OAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGFyY2hpdGVjdHVyZSAoJXMpIGRvZXMgbm90IG1hdGNoIHN5c3RlbSAoJXMpIgorbXNnc3RyICJhcmNoaXRla3R1cmEgcGFraWV0dSAoJXMpIG5pZSB6Z2FkemEgc2nEmSB6IGFyY2hpdGVrdHVyxIUgc3lzdGVtdSAoJXMpIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjUyMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogcmVnYXJkaW5nICVzIGNvbnRhaW5pbmcgJXMsIHByZS1kZXBlbmRlbmN5IHByb2JsZW06XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiBwcm9ibGVtIHplIHdzdMSZcG55bWkgd3ltYWdhbmlhbWkgJXMgemF3aWVyYWrEhWNlZ28gJXM6XG4iCisiJXMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTI2CisjLCBjLWZvcm1hdAorbXNnaWQgInByZS1kZXBlbmRlbmN5IHByb2JsZW0gLSBub3QgaW5zdGFsbGluZyAlLjI1MHMiCittc2dzdHIgInByb2JsZW0gemUgd3N0xJlwbnltaSB3eW1hZ2FuaWFtaSAtICUuMjUwcyBuaWUgYsSZZHppZSBpbnN0YWxvd2FueSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1MjcKK21zZ2lkICJpZ25vcmluZyBwcmUtZGVwZW5kZW5jeSBwcm9ibGVtISIKK21zZ3N0ciAiemlnbm9yb3dhbmllIHByb2JsZW11IHplIHdzdMSZcG55bWkgd3ltYWdhbmlhbWkhIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjU0MworIywgYy1mb3JtYXQKK21zZ2lkICJQcmVwYXJpbmcgdG8gcmVwbGFjZSAlcyAlcyAodXNpbmcgJXMpIC4uLlxuIgorbXNnc3RyICJQcnp5Z290b3dhbmllIGRvIHphc3TEhXBpZW5pYSAlcyAlcyAod3lrb3J6eXN0dWrEhWMgJXMpIC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjU0OQorIywgYy1mb3JtYXQKK21zZ2lkICJVbnBhY2tpbmcgJXMgKGZyb20gJXMpIC4uLlxuIgorbXNnc3RyICJSb3pwYWtvd2FuaWUgJXMgKHogJXMpIC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjU4MAorIywgYy1mb3JtYXQKK21zZ2lkICJuYW1lIG9mIGNvbmZmaWxlIChzdGFydGluZyBgJS4yNTBzJykgaXMgdG9vIGxvbmcgKD4lZCBjaGFyYWN0ZXJzKSIKK21zZ3N0ciAiIgorIm5hendhIHBsaWt1IGtvbmZpZ3VyYWN5am5lZ28gKHJvenBvY3p5bmFqxIVjYSBzacSZIG9kIFwiJS4yNTBzXCIpIGplc3QgemJ5dCAiCisiZMWCdWdhICg+JWQgem5ha8OzdykiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjMzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDcxCisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWQgZXJyb3IgaW4gJS4yNTBzIgorbXNnc3RyICJuaWUgbW/FvG5hIG9kY3p5dGHEhyAlLjI1MHMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjM1CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgJS4yNTBzIgorbXNnc3RyICJuaWUgbW/FvG5hIHphbWtuxIXEhyAlLjI1MHMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjM3CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHRyeWluZyB0byBvcGVuICUuMjUwcyIKK21zZ3N0ciAibmllIG1vxbxuYSBvdHdvcnp5xIcgJS4yNTBzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjY3OAorIywgYy1mb3JtYXQKK21zZ2lkICJEZS1jb25maWd1cmluZyAlcywgdG8gYWxsb3cgcmVtb3ZhbCBvZiAlcyAuLi5cbiIKK21zZ3N0ciAiRGVrb25maWd1cm93YW5pZSAlcywgdGFrIMW8ZWJ5IG1vxbxuYSBiecWCbyB1c3VuxIXEhyAlcyAuLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGUtY29uZmlndXJpbmcgJXMgLi4uXG4iCittc2dzdHIgIkRla29uZmlndXJvd2FuaWUgJXMgLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NzU1CisjLCBjLWZvcm1hdAorbXNnaWQgIlVucGFja2luZyByZXBsYWNlbWVudCAlLjI1MHMgLi4uXG4iCittc2dzdHIgIlJvenBha293YW5pZSBwYWtpZXR1IHphc3TEmXB1asSFY2VnbyAlLjI1MHMgLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6ODQwCittc2dpZCAicGFja2FnZSBmaWxlc3lzdGVtIGFyY2hpdmUgZXh0cmFjdGlvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjg1NAorbXNnaWQgImVycm9yIHJlYWRpbmcgZHBrZy1kZWIgdGFyIG91dHB1dCIKK21zZ3N0ciAibmllIG1vxbxuYSBvZGN6eXRhxIcgcG90b2t1IHogXCJkcGtnLWRlYlwiIHphd2llcmFqxIVjZWdvIGFyY2hpd3VtIHRhciIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NTYKK21zZ2lkICJjb3JydXB0ZWQgZmlsZXN5c3RlbSB0YXJmaWxlIC0gY29ycnVwdGVkIHBhY2thZ2UgYXJjaGl2ZSIKK21zZ3N0ciAidXN6a29kem9uZSBhcmNoaXd1bSB0YXIgLSB1c3prb2R6b25lIGFyY2hpd3VtIHBha2lldHUiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6ODU5Cittc2dpZCAiZHBrZy1kZWI6IHphcCBwb3NzaWJsZSB0cmFpbGluZyB6ZXJvcyIKK21zZ3N0ciAiZHBrZy1kZWI6IHVzdW5pxJljaWUgcHJhd2RvcG9kb2JueWNoIHplciBuYSBrb8WEY3UiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTE5CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBzdGF0IG9sZCBmaWxlICclLjI1MHMnIHNvIG5vdCBkZWxldGluZyBpdDogJXMiCittc2dzdHIgIiIKKyJuaWUgbW/FvG5hIHVzdGFsacSHIHN0YW51IHBvcHJ6ZWRuaWVnbyBwbGlrdSBcIiUuMjUwc1wiLCBwbGlrIG5pZSBixJlkemllICIKKyJ1c3V3YW55OiAlcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSBvbGQgZGlyZWN0b3J5ICclLjI1MHMnOiAlcyIKK21zZ3N0ciAibmllIG1vxbxuYSB1c3VuxIXEhyBwb3ByemVkbmllZ28ga2F0YWxvZ3UgXCIlLjI1MHNcIjogJXMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTI4CisjLCBjLWZvcm1hdAorbXNnaWQgIm9sZCBjb25mZmlsZSAnJS4yNTBzJyB3YXMgYW4gZW1wdHkgZGlyZWN0b3J5IChhbmQgaGFzIG5vdyBiZWVuIGRlbGV0ZWQpIgorbXNnc3RyICIiCisicG9wcnplZG5pIHBsaWsga29uZmlndXJhY3lqbnkgXCIlLjI1MHNcIiBiecWCIHB1c3R5bSBrYXRhbG9naWVtICAoaSB3xYJhxZtuaWUgIgorInpvc3RhxYIgdXN1bmnEmXR5KSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgb3RoZXIgbmV3IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5pZSBtb8W8bmEgdXN0YWxpxIcgc3RhbnUgbm93ZWdvIHBsaWt1IFwiJS4yNTBzXCIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTg2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJvbGQgZmlsZSAnJS4yNTBzJyBpcyB0aGUgc2FtZSBhcyBzZXZlcmFsIG5ldyBmaWxlcyEgKGJvdGggJyUuMjUwcycgYW5kICIKKyInJS4yNTBzJykiCittc2dzdHIgIiIKKyJzdGFyeSBwbGlrIFwiJS4yNTBzXCIgamVzdCB0YWtpIHNhbSwgamFrIGtpbGthIG5vd3ljaCBwbGlrw7N3ISAoemFyw7N3bm8gIgorIlwiJS4yNTBzLCBqYWsgaSBcIiUuMjUwc1wiKSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxMDI1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2VjdXJlbHkgcmVtb3ZlIG9sZCBmaWxlICclLjI1MHMnOiAlcyIKK21zZ3N0ciAibmllIG1vxbxuYSAlcyBwb3ByemVkbmllZ28gcGxpa3UgXCIlLjI1MHNcIjogJXMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTIwNgorIywgYy1mb3JtYXQKK21zZ2lkICIoTm90aW5nIGRpc2FwcGVhcmFuY2Ugb2YgJXMsIHdoaWNoIGhhcyBiZWVuIGNvbXBsZXRlbHkgcmVwbGFjZWQuKVxuIgorbXNnc3RyICIoU3R3aWVyZHpvbm8gem5pa25pxJljaWUgJXMsIGt0w7NyeSB6b3N0YcWCIHp1cGXFgm5pZSB6YXN0xIVwaW9ueS4pXG4iCisKKyMuIFRSQU5TTEFUT1JTOiBUaGlzIGlzIHRoZSBoZWFkZXIgdGhhdCBhcHBlYXJzIG9uICdkcGtnLXF1ZXJ5IC1sJy4gVGhlCisjLiAqIHN0cmluZyBzaG91bGQgcmVtYWluIHVuZGVyIDgwIGNoYXJhY3RlcnMuIFRoZSB1cHBlcmNhc2UgbGV0dGVycyBpbgorIy4gKiB0aGUgc3RhdGUgdmFsdWVzIGRlbm90ZSB0aGUgYWJicmV2aWF0ZWQgbGV0dGVyIHRoYXQgd2lsbCBhcHBlYXIgb24KKyMuICogdGhlIGZpcnN0IHRocmVlIGNvbHVtbnMsIHdoaWNoIHNob3VsZCBpZGVhbGx5IG1hdGNoIHRoZSBFbmdsaXNoIG9uZQorIy4gKiAoZS5nLiBSZW1vdmUg4oaSIHN1cFJpbWVpeCksIHNlZSBkcGtnLXF1ZXJ5KDEpIGZvciBmdXJ0aGVyIGRldGFpbHMuIFRoZQorIy4gKiB0cmFuc2xhdGVkIG1lc3NhZ2UgY2FuIHVzZSBhZGRpdGlvbmFsIGxpbmVzIGlmIG5lZWRlZC4KKyM6IHNyYy9xdWVyeWNtZC5jOjE0OQorIywgZnV6enkKK21zZ2lkICIiCisiRGVzaXJlZD1Vbmtub3duL0luc3RhbGwvUmVtb3ZlL1B1cmdlL0hvbGRcbiIKKyJ8IFN0YXR1cz1Ob3QvSW5zdC9Db25mLWZpbGVzL1VucGFja2VkL2hhbEYtY29uZi9IYWxmLWluc3QvdHJpZy1hV2FpdC9UcmlnLSIKKyJwZW5kXG4iCisifC8gRXJyPz0obm9uZSkvUmVpbnN0LXJlcXVpcmVkIChTdGF0dXMsRXJyOiB1cHBlcmNhc2U9YmFkKVxuIgorbXNnc3RyICIiCisiV3liw7NyPVU9Tmllem5hbnkvST1JbnN0YWxhY2phL1I9VXN1bmnEmWNpZS9QPVd5Y3p5c3pjemVuaWUvSD1aYXRyenltYW5pZVxuIgorInwgU3Rhbj1OPUJyYWsvST1aYWluc3QuL0M9U2tvbmZpZy4vVT1Sb3pwYWsuL0Y9Tmllc2tvbmZpZy4vSD1XcMOzxYItemFpbnN0Li8iCisiVz1XeXp3LWN6ZWsvVD1XeXp3LXphcGxcbiIKKyJ8LyBCxYLEmWR5Pz0oYnJhaykvSD1Xc3RyenltLi9SPURvIHByemVpbnN0LiAoU3RhbixCxYLEmWR5OndpZWxrLmxpdC49xbpsZSlcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MTUzCittc2dpZCAiTmFtZSIKK21zZ3N0ciAiTmF6d2EiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjE1MworbXNnaWQgIlZlcnNpb24iCittc2dzdHIgIldlcnNqYSIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MTU0Cittc2dpZCAiRGVzY3JpcHRpb24iCittc2dzdHIgIk9waXMiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI0NiBzcmMvcXVlcnljbWQuYzo1MTEgc3JjL3NlbGVjdC5jOjc1CisjLCBjLWZvcm1hdAorbXNnaWQgIk5vIHBhY2thZ2VzIGZvdW5kIG1hdGNoaW5nICVzLlxuIgorbXNnc3RyICJOaWUgem5hbGV6aW9ubyBwYWtpZXR1IHBhc3VqxIVjZWdvIGRvIHd6b3JjYSAlcy5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MjczCisjLCBjLWZvcm1hdAorbXNnaWQgImRpdmVyc2lvbiBieSAlcyBmcm9tOiAlc1xuIgorbXNnc3RyICJvbWluacSZY2llIHByemV6ICVzIHo6ICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI3NQorIywgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnNpb24gYnkgJXMgdG86ICVzXG4iCittc2dzdHIgIm9taW5pxJljaWUgcHJ6ZXogJXMgZG86ICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI3OAorIywgYy1mb3JtYXQKK21zZ2lkICJsb2NhbCBkaXZlcnNpb24gZnJvbTogJXNcbiIKK21zZ3N0ciAibG9rYWxuZSBvbWluacSZY2llIHo6ICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI3OQorIywgYy1mb3JtYXQKK21zZ2lkICJsb2NhbCBkaXZlcnNpb24gdG86ICVzXG4iCittc2dzdHIgImxva2FsbmUgb21pbmnEmWNpZSBkbzogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MzA5Cittc2dpZCAiLS1zZWFyY2ggbmVlZHMgYXQgbGVhc3Qgb25lIGZpbGUgbmFtZSBwYXR0ZXJuIGFyZ3VtZW50IgorbXNnc3RyICItLXNlYXJjaCB3eW1hZ2EgcG9kYW5pYSBjbyBuYWptbmllaiBqZWRuZWdvIHd6b3JjYSBwbGlrdSIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MzUwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJObyBwYWNrYWdlcyBmb3VuZCBtYXRjaGluZyAlcy5cbiIKK21zZ2lkICIlczogbm8gcGF0aCBmb3VuZCBtYXRjaGluZyBwYXR0ZXJuICVzLlxuIgorbXNnc3RyICJOaWUgem5hbGV6aW9ubyBwYWtpZXR1IHBhc3VqxIVjZWdvIGRvIHd6b3JjYSAlcy5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MzkzCisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgYCVzJyBpcyBub3QgaW5zdGFsbGVkIGFuZCBubyBpbmZvIGlzIGF2YWlsYWJsZS5cbiIKK21zZ3N0ciAiIgorIlBha2lldCBcIiVzXCIgbmllIGplc3QgemFpbnN0YWxvd2FueSBpIGluZm9ybWFjamUgbyBuaW0gbmllIHPEhSBkb3N0xJlwbmUuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQwMQorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlIGAlcycgaXMgbm90IGF2YWlsYWJsZS5cbiIKK21zZ3N0ciAiUGFraWV0IFwiJXNcIiBuaWUgamVzdCBkb3N0xJlwbnkuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQxMCBzcmMvcXVlcnljbWQuYzo1ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSBgJXMnIGlzIG5vdCBpbnN0YWxsZWQuXG4iCittc2dzdHIgIlBha2lldCBcIiVzXCIgbmllIGplc3QgemFpbnN0YWxvd2FueS5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDE4CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgYCVzJyBkb2VzIG5vdCBjb250YWluIGFueSBmaWxlcyAoISlcbiIKK21zZ3N0ciAiUGFraWV0IFwiJXNcIiBuaWUgemF3aWVyYSDFvGFkbmVnbyBwbGlrdSAoISlcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDI1CisjLCBjLWZvcm1hdAorbXNnaWQgImxvY2FsbHkgZGl2ZXJ0ZWQgdG86ICVzXG4iCittc2dzdHIgImxva2FsbmllIG9taW5pxJl0eSBkbyAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBkaXZlcnRzIG90aGVycyB0bzogJXNcbiIKK21zZ3N0ciAicGFraWV0IG9taWphIGlubmUgZG86ICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQzMQorIywgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnRlZCBieSAlcyB0bzogJXNcbiIKK21zZ3N0ciAib21pbmnEmXR5IHByemV6ICVzIGRvOiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0NTIKK21zZ2lkICIiCisiVXNlIGRwa2cgLS1pbmZvICg9IGRwa2ctZGViIC0taW5mbykgdG8gZXhhbWluZSBhcmNoaXZlIGZpbGVzLFxuIgorImFuZCBkcGtnIC0tY29udGVudHMgKD0gZHBrZy1kZWIgLS1jb250ZW50cykgdG8gbGlzdCB0aGVpciBjb250ZW50cy5cbiIKK21zZ3N0ciAiIgorIlXFvHlqIGRwa2cgLS1pbmZvICg9IGRwa2ctZGViIC0taW5mbyksIGFieSB6b2JhY3p5xIcgaW5mb3JtYWNqZSBvIHBha2llY2llLFxuIgorIm9yYXogZHBrZyAtLWNvbnRlbnRzICg9IGRwa2ctZGViIC0tY29udGVudHMpLCBhYnkgc3ByYXdkemnEhyBqZWdvIHphd2FydG/Fm8SHLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo1NzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgYXQgbW9zdCB0d28gYXJndW1lbnRzIgorbXNnc3RyICItLWJ1aWxkIHd5bWFnYSBwb2RhbmlhIG5hand5xbxlaiBkd8OzY2ggYXJndW1lbnTDs3ciCisKKyM6IHNyYy9xdWVyeWNtZC5jOjU3OAorIywgYy1mb3JtYXQKK21zZ2lkICJjb250cm9sIGZpbGUgY29udGFpbnMgJWMiCittc2dzdHIgInBsaWsga29udHJvbG55IHphd2llcmEgJWMiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjYwMAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuICVzIHBhY2thZ2UgbWFuYWdlbWVudCBwcm9ncmFtIHF1ZXJ5IHRvb2wgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiRGViaWFuIFwiJXNcIiwgcHJvZ3JhbSBkbyB6YXJ6xIVkemFuaWEgcGFraWV0YW1pLCB3ZXJzamEgXCIlc1wiLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo2MTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJDb21tYW5kczpcbiIKKyN8ICIgIC1zfC0tc3RhdHVzIDxwYWNrYWdlPiAuLi4gICAgICAgIERpc3BsYXkgcGFja2FnZSBzdGF0dXMgZGV0YWlscy5cbiIKKyN8ICIgIC1wfC0tcHJpbnQtYXZhaWwgPHBhY2thZ2U+IC4uLiAgIERpc3BsYXkgYXZhaWxhYmxlIHZlcnNpb24gZGV0YWlscy5cbiIKKyN8ICIgIC1MfC0tbGlzdGZpbGVzIDxwYWNrYWdlPiAuLi4gICAgIExpc3QgZmlsZXMgYG93bmVkJyBieSBwYWNrYWdlKHMpLlxuIgorI3wgIiAgLWx8LS1saXN0IFs8cGF0dGVybj4gLi4uXSAgICAgICAgTGlzdCBwYWNrYWdlcyBjb25jaXNlbHkuXG4iCisjfCAiICAtV3wtLXNob3cgPHBhdHRlcm4+IC4uLiAgICAgICAgICBTaG93IGluZm9ybWF0aW9uIG9uIHBhY2thZ2UocykuXG4iCisjfCAiICAtU3wtLXNlYXJjaCA8cGF0dGVybj4gLi4uICAgICAgICBGaW5kIHBhY2thZ2Uocykgb3duaW5nIGZpbGUocykuXG4iCisjfCAiICAtY3wtLWNvbnRyb2wtcGF0aCA8cGFja2FnZT4gWzxmaWxlPl1cbiIKKyN8ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFByaW50IHBhdGggZm9yIHBhY2thZ2UgY29udHJvbCBmaWxlLlxuIgorI3wgIlxuIgorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1zfC0tc3RhdHVzIDxwYWNrYWdlPiAuLi4gICAgICAgIERpc3BsYXkgcGFja2FnZSBzdGF0dXMgZGV0YWlscy5cbiIKKyIgIC1wfC0tcHJpbnQtYXZhaWwgPHBhY2thZ2U+IC4uLiAgIERpc3BsYXkgYXZhaWxhYmxlIHZlcnNpb24gZGV0YWlscy5cbiIKKyIgIC1MfC0tbGlzdGZpbGVzIDxwYWNrYWdlPiAuLi4gICAgIExpc3QgZmlsZXMgYG93bmVkJyBieSBwYWNrYWdlKHMpLlxuIgorIiAgLWx8LS1saXN0IFs8cGF0dGVybj4gLi4uXSAgICAgICAgTGlzdCBwYWNrYWdlcyBjb25jaXNlbHkuXG4iCisiICAtV3wtLXNob3cgWzxwYXR0ZXJuPiAuLi5dICAgICAgICBTaG93IGluZm9ybWF0aW9uIG9uIHBhY2thZ2UocykuXG4iCisiICAtU3wtLXNlYXJjaCA8cGF0dGVybj4gLi4uICAgICAgICBGaW5kIHBhY2thZ2Uocykgb3duaW5nIGZpbGUocykuXG4iCisiICAtY3wtLWNvbnRyb2wtcGF0aCA8cGFja2FnZT4gWzxmaWxlPl1cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFByaW50IHBhdGggZm9yIHBhY2thZ2UgY29udHJvbCBmaWxlLlxuIgorIlxuIgorbXNnc3RyICIiCisiUG9sZWNlbmlhOlxuIgorIiAgLXN8LS1zdGF0dXMgPG5hendhLXBha2lldHU+IC4uLiAgICAgIFBva2F6YW5pZSBzemN6ZWfDs8WCw7N3IG8gc3RhbmllICIKKyJwYWtpZXR1LlxuIgorIiAgLXB8LS1wcmludC1hdmFpbCA8bmF6d2EtcGFraWV0dT4gLi4uIFBva2F6YW5pZSBzemN6ZWfDs8WCw7N3IG8gZG9zdMSZcG5laiAiCisid2Vyc2ppLlxuIgorIiAgLUx8LS1saXN0ZmlsZXMgPG5hendhLXBha2lldHU+IC4uLiAgIExpc3RhIHBsaWvDs3cgZGFuZWdvIHBha2lldHUuXG4iCisiICAtbHwtLWxpc3QgWzx3em9yemVjPiAuLi5dICAgICAgICAgICAgWndpxJl6xYJhIGxpc3RhIHBha2lldMOzdy5cbiIKKyIgIC1XfC0tc2hvdyA8d3pvcnplYz4gLi4uICAgICAgICAgICAgICBQb2themFuaWUgaW5mb3JtYWNqaSBvIHBha2llY2llLlxuIgorIiAgLVN8LS1zZWFyY2ggPHd6b3J6ZWM+IC4uLiAgICAgICAgICAgIFpuYWpkxbogcGFraWV0KHkpIHphd2llcmFqxIVjZSBwbGlrIgorIihpKS5cbiIKKyIgIC1jfC0tY29udHJvbC1wYXRoIDxwYWtpZXQ+IFs8cGxpaz5dICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICIKKyJQb2themFuaWUgxZtjaWXFvGtpIGRsYSBwbGlrdSBrb250cm9sbmVnbyBwYWtpZXR1LlxuIgorIlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo2MzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgICAgICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyIgIC1mfC0tc2hvd2Zvcm1hdD08Zm9ybWF0PiAgICAgICAgIFVzZSBhbHRlcm5hdGl2ZSBmb3JtYXQgZm9yIC0tc2hvdy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIk9wY2plOlxuIgorIiAgLS1hZG1pbmRpcj08a2F0YWxvZz4gICAgICAgICAgIFXFvHljaWUgPGthdGFsb2d1PiB6YW1pYXN0ICVzLlxuIgorIiAgLWZ8LS1zaG93Zm9ybWF0PTxmb3JtYXQ+ICAgICAgIFXFvHljaWUgcG9kYW5lZ28gZm9ybWF0dSBkbGEgLS1zaG93LlxuIgorIlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo2NDIgZHBrZy1kZWIvbWFpbi5jOjExMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiRm9ybWF0IHN5bnRheDpcbiIKKyIgIEEgZm9ybWF0IGlzIGEgc3RyaW5nIHRoYXQgd2lsbCBiZSBvdXRwdXQgZm9yIGVhY2ggcGFja2FnZS4gVGhlIGZvcm1hdFxuIgorIiAgY2FuIGluY2x1ZGUgdGhlIHN0YW5kYXJkIGVzY2FwZSBzZXF1ZW5jZXMgXFxuIChuZXdsaW5lKSwgXFxyIChjYXJyaWFnZVxuIgorIiAgcmV0dXJuKSBvciBcXFxcIChwbGFpbiBiYWNrc2xhc2gpLiBQYWNrYWdlIGluZm9ybWF0aW9uIGNhbiBiZSBpbmNsdWRlZFxuIgorIiAgYnkgaW5zZXJ0aW5nIHZhcmlhYmxlIHJlZmVyZW5jZXMgdG8gcGFja2FnZSBmaWVsZHMgdXNpbmcgdGhlICR7dmFyWzsiCisid2lkdGhdfVxuIgorIiAgc3ludGF4LiBGaWVsZHMgd2lsbCBiZSByaWdodC1hbGlnbmVkIHVubGVzcyB0aGUgd2lkdGggaXMgbmVnYXRpdmUgaW4gIgorIndoaWNoXG4iCisiICBjYXNlIGxlZnQgYWxpZ25tZW50IHdpbGwgYmUgdXNlZC5cbiIKK21zZ3N0ciAiIgorIlNrxYJhZG5pYSBmb3JtYXR1OlxuIgorIiAgRm9ybWF0IGplc3QgY2nEhWdpZW0gem5ha8Ozdywga3TDs3J5IGLEmWR6aWUgd3lwaXNhbnkgZGxhIGthxbxkZWdvIHBha2lldHUuXG4iCisiICBNb8W8ZSB6YXdpZXJhxIcgc3RhbmRhcmRvd2Ugc2Vrd2VuY2plIGVzY2FwZSAtIFxcbiAobm93YSBsaW5pYSksXG4iCisiICBcXHIgKHBvd3LDs3Qga2FyZXRraSkgbHViIChcXFxcKSAoend5a8WCeSBvZHdyb3RueSB1a2/Fm25paykuIEluZm9ybWFjamVcbiIKKyIgIG8gcGFraWV0YWNoIG1vZ8SFIGJ5xIcgemHFgsSFY3pvbmUgcHJ6ZXogd3N0YXdpZW5pZSBvZHdvxYJhxYQgZG8gem1pZW5ueWNoLFxuIgorIiAgdcW8eXdhasSFYyBza8WCYWRuaSAke3Zhcls7c3plcm9rb8WbxIddfS4gUG9sYSBixJlkxIUgcHJ6ZXN1bmnEmXRlIGRvIHByYXdlalxuIgorIiAgc3Ryb255LCBjaHliYSDFvGUgem1pZW5uYSBzemVyb2tvxZvEhyBqZXN0IHVqZW1uYSwgY28gc3Bvd29kdWplXG4iCisiICBwcnplc3VuacSZY2llIGRvIHN0cm9ueSBsZXdlai5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjU2Cittc2dpZCAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBxdWVyeWluZyBwYWNrYWdlcy4iCittc2dzdHIgIiIKKworIzogc3JjL3JlbW92ZS5jOjg4CisjLCBjLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nIHJlcXVlc3QgdG8gcmVtb3ZlICUuMjUwcyB3aGljaCBpc24ndCBpbnN0YWxsZWQuIgorbXNnc3RyICJ6aWdub3Jvd2FuaWUgxbzEhWRhbmlhIHVzdW5pxJljaWEgJS4yNTBzLCBrdMOzcnkgbmllIGplc3QgemFpbnN0YWxvd2FueS4iCisKKyM6IHNyYy9yZW1vdmUuYzo5NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiaWdub3JpbmcgcmVxdWVzdCB0byByZW1vdmUgJS4yNTBzLCBvbmx5IHRoZSBjb25maWdcbiIKKyIgZmlsZXMgb2Ygd2hpY2ggYXJlIG9uIHRoZSBzeXN0ZW0uIFVzZSAtLXB1cmdlIHRvIHJlbW92ZSB0aGVtIHRvby4iCittc2dzdHIgIiIKKyJ6aWdub3Jvd2FuaWUgxbzEhWRhbmlhIHVzdW5pxJljaWEgJS4yNTBzLCBwb25pZXdhxbxcbiIKKyIgdyBzeXN0ZW1pZSBzxIUgdHlsa28gamVnbyBwbGlraSBrb25maWd1cmFjeWpuZS4gLS1wdXJnZSB1c3VuaWUgdGFrxbxlIHRlICIKKyJwbGlraS4iCisKKyM6IHNyYy9yZW1vdmUuYzoxMDMKK21zZ2lkICJUaGlzIGlzIGFuIGVzc2VudGlhbCBwYWNrYWdlIC0gaXQgc2hvdWxkIG5vdCBiZSByZW1vdmVkLiIKK21zZ3N0ciAiVG8gamVzdCBpc3RvdG55IHBha2lldCAtIG5pZSBwb3dpbmllbiBiecSHIHVzdXdhbnkuIgorCisjOiBzcmMvcmVtb3ZlLmM6MTI4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBkZXBlbmRlbmN5IHByb2JsZW1zIHByZXZlbnQgcmVtb3ZhbCBvZiAlczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6IHByb2JsZW15IHogemFsZcW8bm/Fm2NpYW1pIHVuaWVtb8W8bGl3aWFqxIUgdXN1bmnEmWNpZSAlczpcbiIKKyIlcyIKKworIzogc3JjL3JlbW92ZS5jOjEzMAorbXNnaWQgImRlcGVuZGVuY3kgcHJvYmxlbXMgLSBub3QgcmVtb3ZpbmciCittc2dzdHIgInByb2JsZW15IHogemFsZcW8bm/Fm2NpYW1pIC0gbmllIGLEmWR6aWUgdXN1d2FueSIKKworIzogc3JjL3JlbW92ZS5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogJXM6IGRlcGVuZGVuY3kgcHJvYmxlbXMsIGJ1dCByZW1vdmluZyBhbnl3YXkgYXMgeW91IHJlcXVlc3RlZDpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiBwcm9ibGVteSB6IHphbGXFvG5vxZtjaWFtaSwgdXN1d2FuaWUgd2VkxYJ1ZyDFvMSFZGFuaWE6XG4iCisiJXMiCisKKyM6IHNyYy9yZW1vdmUuYzoxNDIKK21zZ2lkICIiCisiUGFja2FnZSBpcyBpbiBhIHZlcnkgYmFkIGluY29uc2lzdGVudCBzdGF0ZSAtIHlvdSBzaG91bGRcbiIKKyIgcmVpbnN0YWxsIGl0IGJlZm9yZSBhdHRlbXB0aW5nIGEgcmVtb3ZhbC4iCittc2dzdHIgIiIKKyJQYWtpZXQgamVzdCB3IHrFgnltIHN0YW5pZSAtIHBvd2luaWVuIHpvc3RhxIcgcHJ6ZWluc3RhbG93YW55XG4iCisiIHByemVkIHVzdW5pxJljaWVtLiIKKworIzogc3JjL3JlbW92ZS5jOjE0OQorIywgYy1mb3JtYXQKK21zZ2lkICJXb3VsZCByZW1vdmUgb3IgcHVyZ2UgJXMgLi4uXG4iCittc2dzdHIgIlVzdW5pxJljaWUgbHViIHd5Y3p5c3pjemVuaWUgJXMgLi4uXG4iCisKKyM6IHNyYy9yZW1vdmUuYzoxNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVtb3ZpbmcgJXMgLi4uXG4iCittc2dzdHIgIlVzdXdhbmllICVzIC4uLlxuIgorCisjOiBzcmMvcmVtb3ZlLmM6Mjc1IHNyYy9yZW1vdmUuYzozNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIndoaWxlIHJlbW92aW5nICUuMjUwcywgdW5hYmxlIHRvIHJlbW92ZSBkaXJlY3RvcnkgJyUuMjUwcyc6ICVzIC0gZGlyZWN0b3J5ICIKKyJtYXkgYmUgYSBtb3VudCBwb2ludD8iCittc2dzdHIgIiIKKyJwb2RjemFzIHVzdXdhbmlhICUuMjUwcyBuaWUgbW/FvG5hIHVzdW7EhcSHIGthdGFsb2d1IFwiJS4yNTBzXCI6ICVzIC0gYnnEhyBtb8W8ZSAiCisia2F0YWxvZyBqZXN0IHB1bmt0ZW0gbW9udG93YW5pYT8iCisKKyM6IHNyYy9yZW1vdmUuYzoyODkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWN1cmVseSByZW1vdmUgJyUuMjUwcyciCittc2dzdHIgIm5pZSBtb8W8bmEgdXR3b3J6ecSHIFwiJS4yNTVzXCIiCisKKyM6IHNyYy9yZW1vdmUuYzozNjEKKyMsIGMtZm9ybWF0Cittc2dpZCAid2hpbGUgcmVtb3ZpbmcgJS4yNTBzLCBkaXJlY3RvcnkgJyUuMjUwcycgbm90IGVtcHR5IHNvIG5vdCByZW1vdmVkLiIKK21zZ3N0ciAiIgorInBvZGN6YXMgdXN1d2FuaWEgJS4yNTBzLCBrYXRhbG9nIFwiJS4yNTBzXCIgbmllIGJ5xYIgcHVzdHksIHdpxJljIG5pZSB6b3N0YcWCICIKKyJ1c3VuacSZdHkuIgorCisjOiBzcmMvcmVtb3ZlLmM6MzgzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW5ub3QgcmVtb3ZlIGAlLjI1MHMnIgorbXNnaWQgImNhbm5vdCByZW1vdmUgJyUuMjUwcyciCittc2dzdHIgIm5pZSBtb8W8bmEgdXN1bsSFxIcgXCIlLjI1MHNcIiIKKworIzogc3JjL3JlbW92ZS5jOjQwOQorIywgYy1mb3JtYXQKK21zZ2lkICJQdXJnaW5nIGNvbmZpZ3VyYXRpb24gZmlsZXMgZm9yICVzIC4uLlxuIgorbXNnc3RyICJDenlzemN6ZW5pZSB6IHBsaWvDs3cga29uZmlndXJhY3lqbnljaCBkbGEgJXMgLi4uXG4iCisKKyM6IHNyYy9yZW1vdmUuYzo0NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlbW92ZSBvbGQgY29uZmlnIGZpbGUgYCUuMjUwcycgKD0gYCUuMjUwcycpIgorbXNnc3RyICIiCisibmllIG1vxbxuYSB1c3VuxIXEhyBwb3ByemVkbmllZ28gcGxpa3Uga29uZmlndXJhY3lqbmVnbyBcIiUuMjUwc1wiICg9IFwiJS4yNTBzIgorIlwiKSIKKworIzogc3JjL3JlbW92ZS5jOjQ3NAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVhZCBjb25maWcgZmlsZSBkaXIgYCUuMjUwcycgKGZyb20gYCUuMjUwcycpIgorbXNnc3RyICIiCisibmllIG1vxbxuYSBvZGN6eXRhxIcga2F0YWxvZ3Ugc3RhcmVnbyBwbGlrdSBrb25maWd1cmFjeWpuZWdvIFwiJS4yNTBzXCIgKD0gIgorIlwiJS4yNTBzXCIpIgorCisjOiBzcmMvcmVtb3ZlLmM6NTEwCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZW1vdmUgb2xkIGJhY2t1cCBjb25maWcgZmlsZSBgJS4yNTBzJyAob2YgYCUuMjUwcycpIgorbXNnc3RyICIiCisibmllIG1vxbxuYSB1c3VuxIXEhyBrb3BpaSBwb3ByemVkbmllZ28gcGxpa3Uga29uZmlndXJhY3lqbmVnbyBcIiUuMjUwc1wiICg9ICIKKyJcIiUuMjUwc1wiKSIKKworIzogc3JjL3JlbW92ZS5jOjU2OAorbXNnaWQgImNhbm5vdCByZW1vdmUgb2xkIGZpbGVzIGxpc3QiCittc2dzdHIgIm5pZSBtb8W8bmEgdXN1bsSFxIcgcG9wcnplZG5pZWogbGlzdHkgcGxpa8OzdyIKKworIzogc3JjL3JlbW92ZS5jOjU3NAorbXNnaWQgImNhbid0IHJlbW92ZSBvbGQgcG9zdHJtIHNjcmlwdCIKK21zZ3N0ciAibmllIG1vxbxuYSB1c3VuxIXEhyBwb3ByemVkbmllZ28gc2tyeXB0dSBwb3N0cm0iCisKKyM6IHNyYy9zZWxlY3QuYzoxMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgaW4gcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQiCittc2dzdHIgIm5pZXNwb2R6aWV3YW55IEVPRiB3IG5hendpZSBwYWtpZXR1IHcgbGluaWkgJWQiCisKKyM6IHNyYy9zZWxlY3QuYzoxMTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgbGluZSBpbiBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZCIKK21zZ3N0ciAibmllc3BvZHppZXdhbnkga29uaWVjIGxpbmlpIHcgbmF6d2llIHBha2lldHUgdyBsaW5paSAlZCIKKworIzogc3JjL3NlbGVjdC5jOjEyMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVvZiBhZnRlciBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZCIKK21zZ3N0ciAibmllc3BvZHppZXdhbnkgRU9GIHBvIG5hendpZSBwYWtpZXR1IHcgbGluaWkgJWQiCisKKyM6IHNyYy9zZWxlY3QuYzoxMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgbGluZSBhZnRlciBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZCIKK21zZ3N0ciAibmllc3BvZHppZXdhbnkga29uaWVjIGxpbmlpIHBvIG5hendpZSBwYWtpZXR1IHcgbGluaWkgJWQiCisKKyM6IHNyYy9zZWxlY3QuYzoxMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBkYXRhIGFmdGVyIHBhY2thZ2UgYW5kIHNlbGVjdGlvbiBhdCBsaW5lICVkIgorbXNnc3RyICJuaWVzcG9kemlld2FuZSBkYW5lIHBvIG5hendpZSBwYWtpZXR1IGkgd3lib3J6ZSB3IGxpbmlpICVkIgorCisjOiBzcmMvc2VsZWN0LmM6MTM5CisjLCBjLWZvcm1hdAorbXNnaWQgImlsbGVnYWwgcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQ6ICUuMjUwcyIKK21zZ3N0ciAibmllcHJhd2lkxYJvd2EgbmF6d2EgcGFraWV0dSB3IGxpbmlpICVkOiAlLjI1MHMiCisKKyM6IHNyYy9zZWxlY3QuYzoxNDMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biB3YW50ZWQgc3RhdHVzIGF0IGxpbmUgJWQ6ICUuMjUwcyIKK21zZ3N0ciAibmllem5hbnkgc3RhbiDFvMSFZGFuaWEgcGFraWV0dSB3IGxpbmlpICVkOiAlLjI1MHMiCisKKyM6IHNyYy9zZWxlY3QuYzoxNDkKK21zZ2lkICJyZWFkIGVycm9yIG9uIHN0YW5kYXJkIGlucHV0IgorbXNnc3RyICJuaWUgbW/FvG5hIG9kY3p5dGHEhyBzdGFuZGFyZG93ZWdvIHdlasWbY2lhIgorCisjOiBzcmMvc3RhdGNtZC5jOjUyCittc2dpZCAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBvdmVycmlkaW5nIGZpbGUgc3RhdCBpbmZvcm1hdGlvbi4iCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRjbWQuYzo2MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvcHlyaWdodCAoQykgMjAwMCwgMjAwMSBXaWNoZXJ0IEFra2VybWFuLlxuIgorIkNvcHlyaWdodCAoQykgMjAwNi0yMDA5IEd1aWxsZW0gSm92ZXIuXG4iCittc2dzdHIgIiIKKyJcbiIKKyJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi4iCisKKyM6IHNyYy9zdGF0Y21kLmM6ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLS1hZGQgPG93bmVyPiA8Z3JvdXA+IDxtb2RlPiA8ZmlsZT5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBhZGQgYSBuZXcgZW50cnkgaW50byB0aGUgZGF0YWJhc2UuXG4iCisiICAtLXJlbW92ZSA8ZmlsZT4gICAgICAgICAgcmVtb3ZlIGZpbGUgZnJvbSB0aGUgZGF0YWJhc2UuXG4iCisiICAtLWxpc3QgWzxnbG9iLXBhdHRlcm4+XSAgbGlzdCBjdXJyZW50IG92ZXJyaWRlcyBpbiB0aGUgZGF0YWJhc2UuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRjbWQuYzo4OQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgc2V0IHRoZSBkaXJlY3Rvcnkgd2l0aCB0aGUgc3RhdG92ZXJyaWRlIGZpbGUuXG4iCisiICAtLXVwZGF0ZSAgICAgICAgICAgICAgICAgaW1tZWRpYXRlbHkgdXBkYXRlIGZpbGUgcGVybWlzc2lvbnMuXG4iCisiICAtLWZvcmNlICAgICAgICAgICAgICAgICAgZm9yY2UgYW4gYWN0aW9uIGV2ZW4gaWYgYSBzYW5pdHkgY2hlY2sgZmFpbHMuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgcXVpZXQgb3BlcmF0aW9uLCBtaW5pbWFsIG91dHB1dC5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCittc2dzdHIgIiIKKyJVxbx5Y2llOiAlcyBbPG9wY2phPiAuLi5dIDxwb2xlY2VuaWU+XG4iCisiXG4iCisiUG9sZWNlbmlhOlxuIgorIiAgLS1hZGQgPHfFgmHFm2NpY2llbD4gPGdydXBhPiA8dHJ5Yj4gPHBsaWs+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgZG9kYWplIG5vd3kgd3BpcyBkbyBiYXp5IGRhbnljaC5cbiIKKyIgIC0tcmVtb3ZlIDxwbGlrPiAgICAgICAgICB1c3V3YSBwbGlrIHogYmF6eSBkYW55Y2guXG4iCisiICAtLWxpc3QgWzx3em9yemVjLWdsb2I+XSAgd3nFm3dpZXRsYSBiaWXFvMSFY2UgbmFkcGlzYW5pYSB6IGJhenkgZGFueWNoLlxuIgorIlxuIgorIk9wY2plOlxuIgorIiAgLS1hZG1pbmRpciA8a2F0YWxvZz4gICAgIHVzdGF3aWEga2F0YWxvZyB6YXdpZXJhasSFY3kgcGxpayBzdGF0b3ZlcnJpZGUuXG4iCisiICAtLXVwZGF0ZSAgICAgICAgICAgICAgICAgbmF0eWNobWlhc3QgYWt0dWFsaXp1amUgcHJhd2EgZG8gcGxpa3UuXG4iCisiICAtLWZvcmNlICAgICAgICAgICAgICAgICAgd3ltdXN6YSBha2NqxJksIG5hd2V0IGplxbxlbGkgdGVzdHkgYnkgemFicm9uacWCeS5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICB0cnliIGNpY2h5LCBrb211bmlrYXR5IG9ncmFuaWN6b25lIGRvIG1pbmltdW0uXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgd3nFm3dpZXRsYSB0ZW4ga29tdW5pa2F0IHBvbW9jeS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICB3ecWbd2lldGxhIGluZm9ybWFjamUgbyB3ZXJzamkuXG4iCisKKyM6IHNyYy9zdGF0Y21kLmM6MTE2Cittc2dpZCAic3RyaXBwaW5nIHRyYWlsaW5nIC8iCittc2dzdHIgInVzdXdhbmllIGtvxYRjb3d5Y2ggem5ha8OzdyAvIgorCisjOiBzcmMvc3RhdGNtZC5jOjIwNworIywgZnV6enkKK21zZ2lkICJjYW5ub3Qgb3BlbiBuZXcgc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIm5pZSBtb8W8bmEgb3R3b3J6ecSHIG5vd2VnbyBwbGlrdSBzdGF0b3ZlcnJpZGU6ICVzIgorCisjOiBzcmMvc3RhdGNtZC5jOjIyMgorIywgZnV6enkKK21zZ2lkICJlcnJvciByZW1vdmluZyBzdGF0b3ZlcnJpZGUtb2xkIgorbXNnc3RyICJixYLEhWQgdXN1d2FuaWEgc3RhdG92ZXJyaWRlLW9sZDogJXMiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjI0CisjLCBmdXp6eQorbXNnaWQgImVycm9yIGNyZWF0aW5nIG5ldyBzdGF0b3ZlcnJpZGUtb2xkIgorbXNnc3RyICJixYLEhWQgdHdvcnplbmlhIG5vd2VnbyBwbGlrdSBzdGF0b3ZlcnJpZGUtb2xkOiAlcyIKKworIzogc3JjL3N0YXRjbWQuYzoyMjYKKyMsIGZ1enp5Cittc2dpZCAiZXJyb3IgaW5zdGFsbGluZyBuZXcgc3RhdG92ZXJyaWRlIgorbXNnc3RyICJixYLEhWQgaW5zdGFsb3dhbmlhIG5vd2VnbyBwbGlrdSBzdGF0b3ZlcnJpZGU6ICVzIgorCisjOiBzcmMvc3RhdGNtZC5jOjI0NgorbXNnaWQgIi0tYWRkIG5lZWRzIGZvdXIgYXJndW1lbnRzIgorbXNnc3RyICItLWFkZCB3eW1hZ2EgcG9kYW5pYSBjenRlcmVjaCBhcmd1bWVudMOzdyIKKworIzogc3JjL3N0YXRjbWQuYzoyNTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJBbiBvdmVycmlkZSBmb3IgJyVzJyBhbHJlYWR5IGV4aXN0cywgYnV0IC0tZm9yY2Ugc3BlY2lmaWVkIHNvIHdpbGwgYmUgIgorImlnbm9yZWQuIgorbXNnc3RyICJhbGUgcG9kYW5vIC0tZm9yY2UsIHdpxJljIHpvc3RhbmllIHppZ25vcm93YW55LiIKKworIzogc3JjL3N0YXRjbWQuYzoyNjAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIkFuIG92ZXJyaWRlIGZvciAnJXMnIGFscmVhZHkgZXhpc3RzLCBhYm9ydGluZy4iCittc2dzdHIgIkp1xbwgaXN0bmllamUgbmFkcGlzYW5pZSBkbGEgXCIlc1wiLCAiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjcyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICItLXVwZGF0ZSBnaXZlbiBidXQgJXMgZG9lcyBub3QgZXhpc3QiCittc2dzdHIgIm9zdHJ6ZcW8ZW5pZTogcG9kYW5vIC0tdXBkYXRlLCBhbGUgJXMgbmllIGlzdG5pZWplIgorCisjOiBzcmMvc3RhdGNtZC5jOjI5NgorbXNnaWQgIk5vIG92ZXJyaWRlIHByZXNlbnQuIgorbXNnc3RyICJCcmFrIG5hZHBpc2FuaWEuIgorCisjOiBzcmMvc3RhdGNtZC5jOjMwNAorIywgZnV6enkKK21zZ2lkICItLXVwZGF0ZSBpcyB1c2VsZXNzIGZvciAtLXJlbW92ZSIKK21zZ3N0ciAib3N0cnplxbxlbmllOiAtLXVwZGF0ZSBqZXN0IGJlenXFvHl0ZWN6bmUgdyBwb8WCxIVjemVuaXUgeiAtLXJlbW92ZSIKKworIzogc3JjL3N0YXRkYi5jOjU5Cittc2dpZCAic3ludGF4IGVycm9yOiBpbnZhbGlkIHVpZCBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiYsWCxIVkIHNrxYJhZG5pOiBuaWV3xYJhxZtjaXd5IHVpZCB3IHBsaWt1IHN0YXRvdmVycmlkZSIKKworIzogc3JjL3N0YXRkYi5jOjY0CisjLCBjLWZvcm1hdAorbXNnaWQgInN5bnRheCBlcnJvcjogdW5rbm93biB1c2VyICclcycgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgImLFgsSFZCBza8WCYWRuaTogbmllem5hbnkgdcW8eXRrb3duaWsgXCIlc1wiIHcgcGxpa3Ugc3RhdG92ZXJyaWRlIgorCisjOiBzcmMvc3RhdGRiLmM6ODMKK21zZ2lkICJzeW50YXggZXJyb3I6IGludmFsaWQgZ2lkIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJixYLEhWQgc2vFgmFkbmk6IG5pZXfFgmHFm2Npd3kgZ2lkIHcgcGxpa3Ugc3RhdG92ZXJyaWRlOiAlcyIKKworIzogc3JjL3N0YXRkYi5jOjg4CisjLCBjLWZvcm1hdAorbXNnaWQgInN5bnRheCBlcnJvcjogdW5rbm93biBncm91cCAnJXMnIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJixYLEhWQgc2vFgmFkbmk6IG5pZXpuYW5hIGdydXBhIFwiJXNcIiB3IHBsaWt1IHN0YXRvdmVycmlkZSIKKworIzogc3JjL3N0YXRkYi5jOjEwNAorbXNnaWQgInN5bnRheCBlcnJvcjogaW52YWxpZCBtb2RlIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJixYLEhWQgc2vFgmFkbmk6IG5pZXfFgmHFm2Npd3kgdHJ5YiB3IHBsaWt1IHN0YXRvdmVycmlkZSIKKworIzogc3JjL3N0YXRkYi5jOjEyNworbXNnaWQgImZhaWxlZCB0byBvcGVuIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJuaWUgbW/FvG5hIG90d29yennEhyBsaXN0eSBwbGlrdSBzdGF0b3ZlcnJpZGUiCisKKyM6IHNyYy9zdGF0ZGIuYzoxMzQKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIm5pZSBtb8W8bmEgdXN0YWxpxIcgc3RhbnUgcGxpa3Ugc3RhdG92ZXJyaWRlIgorCisjOiBzcmMvc3RhdGRiLmM6MTM3Cittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IHByZXZpb3VzIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJuaWUgbW/FvG5hIHVzdGFsacSHIHN0YW51IHBvcHJ6ZWRuaWVnbyBwbGlrdSBzdGF0b3ZlcnJpZGUiCisKKyM6IHNyYy9zdGF0ZGIuYzoxNjIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInN0YXRvdmVycmlkZSBmaWxlIGAlLjI1MHMnIgorbXNnaWQgInJlYWRpbmcgc3RhdG92ZXJyaWRlIGZpbGUgJyUuMjUwcyciCittc2dzdHIgInBsaWt1IHN0YXRvdmVycmlkZSBcIiUuMjUwc1wiIgorCisjOiBzcmMvc3RhdGRiLmM6MTY5Cittc2dpZCAic3RhdG92ZXJyaWRlIGZpbGUgaXMgbWlzc2luZyBmaW5hbCBuZXdsaW5lIgorbXNnc3RyICJwbGlrIHN0YXRvdmVycmlkZSBuaWUgemF3aWVyYSBrb8WEY3rEhWNlaiBwdXN0ZWogbGluaWkiCisKKyM6IHNyYy9zdGF0ZGIuYzoxNzMKK21zZ2lkICJzdGF0b3ZlcnJpZGUgZmlsZSBjb250YWlucyBlbXB0eSBsaW5lIgorbXNnc3RyICJwbGlrIHN0YXRvdmVycmlkZSB6YXdpZXJhIHB1c3TEhSBsaW5pxJkiCisKKyM6IHNyYy9zdGF0ZGIuYzoxNzggc3JjL3N0YXRkYi5jOjE5MCBzcmMvc3RhdGRiLmM6MjAyCittc2dpZCAic3ludGF4IGVycm9yIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJixYLEhWQgc2vFgmFkbmkgdyBwbGlrdSBzdGF0b3ZlcnJpZGUiCisKKyM6IHNyYy9zdGF0ZGIuYzoxODYgc3JjL3N0YXRkYi5jOjE5OCBzcmMvc3RhdGRiLmM6MjEwCittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgbGluZSBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAibmllc3BvZHppZXdhbnkga29uaWVjIGxpbmlpIHcgcGxpa3Ugc3RhdG92ZXJyaWRlIgorCisjOiBzcmMvc3RhdGRiLmM6MjE0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJtdWx0aXBsZSBzdGF0dXNvdmVyaWRlcyBwcmVzZW50IGZvciBmaWxlICclLjI1MHMnIgorbXNnaWQgIm11bHRpcGxlIHN0YXR1c292ZXJyaWRlcyBwcmVzZW50IGZvciBmaWxlICclLjI1MHMnIgorbXNnc3RyICJ3aWVsb2tyb3RuZSBva3JlxZtsZW5pYSBzdGF0dXNvdmVycmlkZSBkbGEgcGxpa3UgXCIlLjI1MHNcIiIKKworIzogc3JjL3RyaWdjbWQuYzo0NgorbXNnaWQgIlR5cGUgZHBrZy10cmlnZ2VyIC0taGVscCBmb3IgaGVscCBhYm91dCB0aGlzIHV0aWxpdHkuIgorbXNnc3RyICJXcGlzeiBkcGtnLXRyaWdnZXIgLS1oZWxwLCBhYnkgb3RyenltYcSHIHBvbW9jLiIKKworIzogc3JjL3RyaWdjbWQuYzo1MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuICVzIHBhY2thZ2UgdHJpZ2dlciB1dGlsaXR5IHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkRlYmlhbiBgJXMnLCBuYXJ6xJlkemllIHXFvHl0a293ZSB3eXp3YWxhY3p5IHBha2lldMOzdy5cbiIKKworIzogc3JjL3RyaWdjbWQuYzo2NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9ucz4gLi4uXSA8dHJpZ2dlci1uYW1lPlxuIgorIiAgICAgICAlcyBbPG9wdGlvbnM+IC4uLl0gPGNvbW1hbmQ+XG4iCisiXG4iCittc2dzdHIgIiIKKyJVxbx5Y2llOiAlcyBbPG9wY2plPiAuLi5dIDxuYXp3YV93eXp3YWxhY3phPlxuIgorIiAgICAgICAgJXMgWzxvcGNqZT4gLi4uXSA8cG9sZWNlbmllPlxuIgorIlxuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC0tY2hlY2stc3VwcG9ydGVkICAgICAgICAgICAgICAgIENoZWNrIGlmIHRoZSBydW5uaW5nIGRwa2cgc3VwcG9ydHMgIgorInRyaWdnZXJzLlxuIgorIlxuIgorbXNnc3RyICIiCisiUG9sZWNlbmlhOlxuIgorIiAgLS1jaGVjay1zdXBwb3J0ZWQgICAgICAgICAgICAgIFNwcmF3ZHphLCBjenkgdXJ1Y2hvbWlvbmUgZHBrZyBvYnPFgnVndWplICIKKyJ3eXp3YWxhY3plLlxuIgorIlxuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjgyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hZG1pbmRpcj08ZGlyZWN0b3J5PiAgICAgICAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMuXG4iCisiICAtLWJ5LXBhY2thZ2U9PHBhY2thZ2U+ICAgICAgICAgICBPdmVycmlkZSB0cmlnZ2VyIGF3YWl0ZXIgKG5vcm1hbGx5IHNldFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBieSBkcGtnKS5cbiIKKyIgIC0tbm8tYXdhaXQgICAgICAgICAgICAgICAgICAgICAgIE5vIHBhY2thZ2UgbmVlZHMgdG8gYXdhaXQgdGhlICIKKyJwcm9jZXNzaW5nLlxuIgorIiAgLS1uby1hY3QgICAgICAgICAgICAgICAgICAgICAgICAgSnVzdCB0ZXN0IC0gZG9uJ3QgYWN0dWFsbHkgY2hhbmdlICIKKyJhbnl0aGluZy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIk9wY2plOlxuIgorIiAgLS1hZG1pbmRpcj08a2F0YWxvZz4gICAgICAgICAgIFXFvHljaWUgPGthdGFsb2d1PiB6YW1pYXN0ICVzLlxuIgorIiAgLS1ieS1wYWNrYWdlPTxwYWtpZXQ+ICAgICAgICAgIFd5bXVzemVuaWUgcGFraWV0dSBvY3pla3VqxIVjZWdvIG5hICIKKyJ3eXp3YWxhY3pcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChub3JtYWxuaWUgdXN0YXdpYW5lIHByemV6IGRwa2cpLlxuIgorIiAgLS1uby1hd2FpdCAgICAgICAgICAgICAgICAgICAgIFBha2lldHkgbmllIGLEmWTEhSBjemVrYcSHIG5hIHByemV0d2FyemFuaWUuXG4iCisiICAtLW5vLWFjdCAgICAgICAgICAgICAgICAgICAgICAgVHlsa28gdGVzdCAtIGJleiB3eWtvbnl3YW5pYSDFvGFkbnljaCAiCisiem1pYW4uXG4iCisiXG4iCisKKyM6IHNyYy90cmlnY21kLmM6MTUyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB0cmlnZ2VycyBkYXRhIGRpcmVjdG9yeSBub3QgeWV0IGNyZWF0ZWRcbiIKK21zZ3N0ciAiJXM6IG5pZSB1dHdvcnpvbm8gamVzemN6ZSBrYXRhbG9ndSB6YXdpZXJhasSFY2VnbyBkYW5lIHd5endhbGFjenlcbiIKKworIzogc3JjL3RyaWdjbWQuYzoxNTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IHRyaWdnZXIgcmVjb3JkcyBub3QgeWV0IGluIGV4aXN0ZW5jZVxuIgorbXNnc3RyICIlczogaW5mb3JtYWNqZSBvIHd5endhbGFjemFjaCBqZXN6Y3plIG5pZSBpc3RuaWVqxIVcbiIKKworIzogc3JjL3RyaWdjbWQuYzoyMDUKK21zZ2lkICJ0YWtlcyBvbmUgYXJndW1lbnQsIHRoZSB0cmlnZ2VyIG5hbWUiCittc2dzdHIgInd5bWFnYSBwb2RhbmlhIGplZG5lZ28gYXJndW1lbnR1IC0gbmF6d3kgd3l6d2FsYWN6YSIKKworIzogc3JjL3RyaWdjbWQuYzoyMTAKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgImRwa2ctdHJpZ2dlciBtdXN0IGJlIGNhbGxlZCBmcm9tIGEgbWFpbnRhaW5lciBzY3JpcHQgKG9yIHdpdGggYSAtLWJ5LSIKKyN8ICJwYWNrYWdlIG9wdGlvbikiCittc2dpZCAibXVzdCBiZSBjYWxsZWQgZnJvbSBhIG1haW50YWluZXIgc2NyaXB0IChvciB3aXRoIGEgLS1ieS1wYWNrYWdlIG9wdGlvbikiCittc2dzdHIgIiIKKyJkcGtnLXRyaWdnZXIgbXVzaSBiecSHIHVydWNoYW1pYW55IHplIHNrcnlwdMOzdyBvcGlla3Vuw7N3IHBha2lldMOzdyAobHViIHogIgorIm9wY2rEhSAtLWJ5LXBhY2thZ2UpIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIxNQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZHBrZy10cmlnZ2VyOiBpbGxlZ2FsIGF3YWl0ZWQgcGFja2FnZSBuYW1lIGAlLjI1MHMnOiAlLjI1MHMiCittc2dpZCAiaWxsZWdhbCBhd2FpdGVkIHBhY2thZ2UgbmFtZSAnJS4yNTBzJzogJS4yNTBzIgorbXNnc3RyICIiCisiZHBrZy10cmlnZ2VyOiBuaWVwcmF3aWTFgm93YSBuYXp3YSBwYWtpZXR1IGRvIG9jemVraXdhbmlhIFwiJS4yNTBzXCI6ICUuMjUwcyIKKworIzogc3JjL3RyaWdjbWQuYzoyMjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCB0cmlnZ2VyIG5hbWUgYCUuMjUwcyc6ICUuMjUwcyIKK21zZ3N0ciAibmlld8WCYcWbY2l3YSBuYXp3YSB3eXp3YWxhY3phIFwiJS4yNTBzXCI6ICUuMjUwcyIKKworIzogc3JjL3RyaWdwcm9jLmM6MjUwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogY3ljbGUgZm91bmQgd2hpbGUgcHJvY2Vzc2luZyB0cmlnZ2VyczpcbiIKKyIgY2hhaW4gb2YgcGFja2FnZXMgd2hvc2UgdHJpZ2dlcnMgYXJlIG9yIG1heSBiZSByZXNwb25zaWJsZTpcbiIKK21zZ3N0ciAiIgorIiVzOiB3eWtyeXRvIGN5a2wgcG9kY3phcyBwcnpldHdhcnphbmlhIHd5endhbGFjenk6XG4iCisiIGxpc3RhIHBha2lldMOzdywga3TDs3J5Y2ggd3l6d2FsYWN6ZSBtb2fFgnkgdG8gc3Bvd29kb3dhxIc6XG4iCisKKyM6IHNyYy90cmlncHJvYy5jOjI1OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiIHBhY2thZ2VzJyBwZW5kaW5nIHRyaWdnZXJzIHdoaWNoIGFyZSBvciBtYXkgYmUgdW5yZXNvbHZhYmxlOlxuIgorbXNnc3RyICIiCisiXG4iCisiIHphcGxhbm93YW55Y2ggd3l6d2FsYWN6eSwga3TDs3JlIHPEhSBsdWIgbW9nxIUgYnnEhyBuaWVyb3p3acSFenl3YWxuZTpcbiIKKworIzogc3JjL3RyaWdwcm9jLmM6MjgxCittc2dpZCAidHJpZ2dlcnMgbG9vcGluZywgYWJhbmRvbmVkIgorbXNnc3RyICJ6YXDEmXRsZW5pZSB3eXp3YWxhY3p5LCBwcnplcnl3YW5pZSIKKworIzogc3JjL3RyaWdwcm9jLmM6MzEyCisjLCBjLWZvcm1hdAorbXNnaWQgIlByb2Nlc3NpbmcgdHJpZ2dlcnMgZm9yICVzIC4uLlxuIgorbXNnc3RyICJQcnpldHdhcnphbmllIHd5endhbGFjenkgZGxhICVzLi4uXG4iCisKKyM6IHNyYy91cGRhdGUuYzo1MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiLS0lcyBuZWVkcyBleGFjdGx5IG9uZSBQYWNrYWdlcyBmaWxlIGFyZ3VtZW50IgorbXNnaWQgIi0tJXMgbmVlZHMgZXhhY3RseSBvbmUgUGFja2FnZXMtZmlsZSBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyB3eW1hZ2EgcG9kYW5pYSBkb2vFgmFkbmllIGplZG5laiBuYXp3eSBwbGlrdSBwYWtpZXR1IgorCisjOiBzcmMvdXBkYXRlLmM6NjIKK21zZ2lkICJ1bmFibGUgdG8gYWNjZXNzIGRwa2cgc3RhdHVzIGFyZWEgZm9yIGJ1bGsgYXZhaWxhYmxlIHVwZGF0ZSIKK21zZ3N0ciAiYnJhayBkb3N0xJlwdSBkbyBrYXRhbG9ndSBhZG1pbmlzdHJhY3lqbmVnbyBkcGtnIgorCisjOiBzcmMvdXBkYXRlLmM6NjQKK21zZ2lkICJidWxrIGF2YWlsYWJsZSB1cGRhdGUgcmVxdWlyZXMgd3JpdGUgYWNjZXNzIHRvIGRwa2cgc3RhdHVzIGFyZWEiCittc2dzdHIgImJyYWsgcHJhdyB6YXBpc3UgZG8ga2F0YWxvZ3UgYWRtaW5pc3RyYWN5am5lZ28gZHBrZyIKKworIzogc3JjL3VwZGF0ZS5jOjcxCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlcGxhY2luZyBhdmFpbGFibGUgcGFja2FnZXMgaW5mbywgdXNpbmcgJXMuXG4iCittc2dzdHIgIlphc3TEhXBpZW5pZSBpbmZvcm1hY2ppIG8gZG9zdMSZcG55Y2ggcGFraWV0YWNoLCBwcnp5IHXFvHljaXUgJXMuXG4iCisKKyM6IHNyYy91cGRhdGUuYzo3NAorIywgYy1mb3JtYXQKK21zZ2lkICJVcGRhdGluZyBhdmFpbGFibGUgcGFja2FnZXMgaW5mbywgdXNpbmcgJXMuXG4iCittc2dzdHIgIlpha3R1YWxpem93YW5pZSBpbmZvcm1hY2ppIG8gZG9zdMSZcG55Y2ggcGFraWV0YWNoLCBwcnp5IHXFvHljaXUgJXMuXG4iCisKKyM6IHNyYy91cGRhdGUuYzoxMDEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIkluZm9ybWF0aW9uIGFib3V0ICVkIHBhY2thZ2Uocykgd2FzIHVwZGF0ZWQuXG4iCittc2dpZCAiSW5mb3JtYXRpb24gYWJvdXQgJWQgcGFja2FnZSB3YXMgdXBkYXRlZC5cbiIKK21zZ2lkX3BsdXJhbCAiSW5mb3JtYXRpb24gYWJvdXQgJWQgcGFja2FnZXMgd2FzIHVwZGF0ZWQuXG4iCittc2dzdHJbMF0gIkluZm9ybWFjamUgbyAlZCBwYWtpZXRhY2ggem9zdGHFgnkgemFrdHVhbGl6b3dhbmUuXG4iCittc2dzdHJbMV0gIkluZm9ybWFjamUgbyAlZCBwYWtpZXRhY2ggem9zdGHFgnkgemFrdHVhbGl6b3dhbmUuXG4iCittc2dzdHJbMl0gIkluZm9ybWFjamUgbyAlZCBwYWtpZXRhY2ggem9zdGHFgnkgemFrdHVhbGl6b3dhbmUuXG4iCisKKyM6IHNyYy91cGRhdGUuYzoxMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm9ic29sZXRlICctLSVzJyBvcHRpb24sIHVuYXZhaWxhYmxlIHBhY2thZ2VzIGFyZSBhdXRvbWF0aWNhbGx5IGNsZWFuZWQgdXAuIgorbXNnc3RyICIiCisibmlld3lrb3J6eXN0eXdhbmEganXFvCBvcGNqYSBcIi0tJXNcIiwgbmllZG9zdMSZcG5lIHBha2lldHkgYsSZZMSFIGF1dG9tYXR5Y3puaWUgIgorImN6eXN6Y3pvbmUuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIG5hbWUgJyUuNTBzLi4uJyBpcyB0b28gbG9uZyIKK21zZ3N0ciAibmF6d2EgcGxpa3UgXCIlcy41MHMuLi5cIiBqZXN0IHpieXQgZMWCdWdhIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjEyOQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgZmlsZSBuYW1lICclLjI1MHMnIgorbXNnc3RyICJuaWUgbW/FvG5hIG90d29yennEhyBwbGlrdSDFunLDs2TFgm93ZWdvIFwiJS4yNTVzXCIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTg5Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgY29udHJvbCBkaXJlY3RvcnkiCittc2dzdHIgIm5pZSBtb8W8bmEgdXN0YWxpxIcgc3RhbnUga2F0YWxvZ3Uga29udHJvbG5lZ28iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTkxCittc2dpZCAiY29udHJvbCBkaXJlY3RvcnkgaXMgbm90IGEgZGlyZWN0b3J5IgorbXNnc3RyICJrYXRhbG9nIGtvbnRyb2xueSBuaWUgamVzdCBrYXRhbG9naWVtIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjE5MworIywgYy1mb3JtYXQKK21zZ2lkICJjb250cm9sIGRpcmVjdG9yeSBoYXMgYmFkIHBlcm1pc3Npb25zICUwM2xvIChtdXN0IGJlID49MDc1NSBhbmQgPD0wNzc1KSIKK21zZ3N0ciAia2F0YWxvZyBrb250cm9sbnkgbWEgesWCZSBwcmF3YSAlMDNsbyAobXVzesSFIGJ5xIcgPj0wNzU1IG9yYXogPD0wNzc1KSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAibWFpbnRhaW5lciBzY3JpcHQgYCUuNTBzJyBpcyBub3QgYSBwbGFpbiBmaWxlIG9yIHN5bWxpbmsiCittc2dzdHIgIiIKKyJza3J5cHQgaW5zdGFsYWN5am55IFwiJS41MHNcIiBuaWUgamVzdCBwbGlraWVtIGFuaSBkb3dpxIV6YW5pZW0gc3ltYm9saWN6bnltIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjIwNworIywgYy1mb3JtYXQKK21zZ2lkICIiCisibWFpbnRhaW5lciBzY3JpcHQgYCUuNTBzJyBoYXMgYmFkIHBlcm1pc3Npb25zICUwM2xvIChtdXN0IGJlID49MDU1NSBhbmQgIgorIjw9MDc3NSkiCittc2dzdHIgIiIKKyJza3J5cHQgaW5zdGFsYWN5am55IFwiJS41MHNcIiBtYSB6xYJlIHByYXdhICUwM2xvIChtdXN6xIUgYnnEhyA+PTA1NTUgb3JheiAiCisiPD0wNzc1KSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAibWFpbnRhaW5lciBzY3JpcHQgYCUuNTBzJyBpcyBub3Qgc3RhdHRhYmxlIgorbXNnc3RyICJuaWUgbW/FvG5hIHNwcmF3ZHppxIcgc3RhbnUgc2tyeXB0dSBpbnN0YWxhY3lqbmVnbyBcIiUuNTBzXCIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjM3Cittc2dpZCAiZXJyb3Igb3BlbmluZyBjb25mZmlsZXMgZmlsZSIKK21zZ3N0ciAibmllIG1vxbxuYSBvdHdvcnp5xIcgcGxpa3Uga29uZmlndXJhY3lqbmVnbyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNDYKK21zZ2lkICJlbXB0eSBzdHJpbmcgZnJvbSBmZ2V0cyByZWFkaW5nIGNvbmZmaWxlcyIKK21zZ3N0ciAiIgorImZ1bmtjamEgXCJmZ2V0c1wiIHp3csOzY2nFgmEgcHVzdHkgY2nEhWcgem5ha8OzdyBwb2RjemFzIG9kY3p5dHUgcGxpa3UgIgorImtvbmZpZ3VyYWN5am5lZ28iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjUxCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIG5hbWUgJyUuNTBzLi4uJyBpcyB0b28gbG9uZywgb3IgbWlzc2luZyBmaW5hbCBuZXdsaW5lIgorbXNnc3RyICIiCisibmF6d2EgcGxpa3Uga29uZmlndXJhY3lqbmVnbyBcIiUuNTBzLi4uXCIgamVzdCB6YSBkxYJ1Z2EgbHViIGJyYWsgdyBuaWVqICIKKyJ6bmFrdSBrb8WEY2EgbGluaWkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjY0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIGZpbGVuYW1lICclcycgY29udGFpbnMgdHJhaWxpbmcgd2hpdGUgc3BhY2VzIgorbXNnc3RyICJuYXp3YSBwbGlrdSBrb25maWd1cmFjeWpuZWdvIFwiJXNcIiBrb8WEY3p5IHNpxJkgc3BhY2phbWkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjY2CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIGAlLjI1MHMnIGRvZXMgbm90IGFwcGVhciBpbiBwYWNrYWdlIgorbXNnc3RyICJwbGlrIGtvbmZpZ3VyYWN5am55IFwiJS4yNTBzXCIgbmllIHpvc3RhxYIgb2RuYWxlemlvbnkgdyBwYWtpZWNpZSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgYCUuMjUwcycgaXMgbm90IHN0YXR0YWJsZSIKK21zZ3N0ciAibmllIG1vxbxuYSBzcHJhd2R6acSHIHN0YW51IHBsaWt1IGtvbmZpZ3VyYWN5am5lZ28gXCIlLjI1MHNcIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgJyVzJyBpcyBub3QgYSBwbGFpbiBmaWxlIgorbXNnc3RyICJwbGlrIGtvbmZpZ3VyYWN5am55IFwiJXNcIiBuaWUgamVzdCB6d3lrxYJ5bSBwbGlraWVtIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI3NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgbmFtZSAnJXMnIGlzIGR1cGxpY2F0ZWQiCittc2dzdHIgInBvd2llbG9uYSBuYXp3YSBwb2RyesSZZG5hICVzIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI4NworbXNnaWQgImVycm9yIHJlYWRpbmcgY29uZmZpbGVzIGZpbGUiCittc2dzdHIgIm5pZSBtb8W8bmEgb2Rjenl0YcSHIHBsaWt1IGtvbmZpZ3VyYWN5am5lZ28iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MzM5Cittc2dpZCAicGFja2FnZSBuYW1lIGhhcyBjaGFyYWN0ZXJzIHRoYXQgYXJlbid0IGxvd2VyY2FzZSBhbHBoYW51bXMgb3IgYC0rLiciCittc2dzdHIgIiIKKyJuYXp3YSBwYWtpZXR1IHphd2llcmEgem5ha2kgbmllIGLEmWTEhWNlIG1hxYJ5bWkgbGl0ZXJhbWksIGN5ZnJhbWkgbHViIFwiLSsuXCIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MzQxCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgY29udGFpbnMgdXNlci1kZWZpbmVkIFByaW9yaXR5IHZhbHVlICclcyciCittc2dzdHIgIlwiJXNcIiB6YXdpZXJhIHpkZWZpbmlvd2FueSBwcnpleiB1xbx5dGtvd25pa2EgUHJpb3J5dGV0IFwiJXNcIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzozNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBjb250YWlucyB1c2VyLWRlZmluZWQgZmllbGQgJyVzJyIKK21zZ3N0ciAiXCIlc1wiIHphd2llcmEgcG9sZSB6ZGVmaW5pb3dhbmUgcHJ6ZXogdcW8eXRrb3duaWthIFwiJXNcIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzozNTgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImlnbm9yaW5nICVkIHdhcm5pbmdzIGFib3V0IHRoZSBjb250cm9sIGZpbGUocylcbiIKK21zZ2lkICJpZ25vcmluZyAlZCB3YXJuaW5nIGFib3V0IHRoZSBjb250cm9sIGZpbGUocylcbiIKK21zZ2lkX3BsdXJhbCAiaWdub3JpbmcgJWQgd2FybmluZ3MgYWJvdXQgdGhlIGNvbnRyb2wgZmlsZShzKVxuIgorbXNnc3RyWzBdICJ6aWdub3Jvd2FuaWUgJWQgb3N0cnplxbxlxYQgbmEgdGVtYXQgcGxpa8OzdyBrb250cm9sbnljaFxuIgorbXNnc3RyWzFdICJ6aWdub3Jvd2FuaWUgJWQgb3N0cnplxbxlxYQgbmEgdGVtYXQgcGxpa8OzdyBrb250cm9sbnljaFxuIgorbXNnc3RyWzJdICJ6aWdub3Jvd2FuaWUgJWQgb3N0cnplxbxlxYQgbmEgdGVtYXQgcGxpa8OzdyBrb250cm9sbnljaFxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQwMyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQyOQorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhIDxkaXJlY3Rvcnk+IGFyZ3VtZW50IgorbXNnc3RyICItLSVzIHd5bWFnYSA8a2F0YWxvZ3U+IGpha28gYXJndW1lbnR1IgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQwOQorbXNnaWQgIi0tYnVpbGQgdGFrZXMgYXQgbW9zdCB0d28gYXJndW1lbnRzIgorbXNnc3RyICItLWJ1aWxkIHd5bWFnYSBwb2RhbmlhIG5hand5xbxlaiBkd8OzY2ggYXJndW1lbnTDs3ciCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDEzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGVjayBmb3IgZXhpc3RlbmNlIG9mIGFyY2hpdmUgYCUuMjUwcyciCittc2dzdHIgIm5pZSBtb8W8bmEgc3ByYXdkemnEhyBpc3RuaWVuaWEgYXJjaGl3dW0gXCIlLjI1MHNcIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzAKK21zZ2lkICJ0YXJnZXQgaXMgZGlyZWN0b3J5IC0gY2Fubm90IHNraXAgY29udHJvbCBmaWxlIGNoZWNrIgorbXNnc3RyICJjZWwgamVzdCBrYXRhbG9naWVtIC0gbmllIG1vxbxuYSBwb21pbsSFxIcgc3ByYXdkemVuaWEgcGxpa3Uga29udHJvbG5lZ28iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDMxCittc2dpZCAibm90IGNoZWNraW5nIGNvbnRlbnRzIG9mIGNvbnRyb2wgYXJlYS4iCittc2dzdHIgInBvbWluacSZY2llIHNwcmF3ZHplbmlhIHphd2FydG/Fm2NpIG9ic3phcnUga29udHJvbG5lZ28uIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQzMgorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnLWRlYjogYnVpbGRpbmcgYW4gdW5rbm93biBwYWNrYWdlIGluICclcycuXG4iCittc2dzdHIgImRwa2ctZGViOiBidWRvd2FuaWUgbmllem5hbmVnbyBwYWtpZXR1IHcgXCIlc1wiLlxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQzOQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnLWRlYjogYnVpbGRpbmcgcGFja2FnZSBgJXMnIGluIGAlcycuXG4iCittc2dzdHIgImRwa2ctZGViOiBidWRvd2FuaWUgcGFraWV0dSBcIiVzXCIgdyBcIiVzXCIuXG4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDY3IGRwa2ctZGViL2J1aWxkLmM6NTIxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gbWFrZSB0bXBmaWxlIChkYXRhKSIKK21zZ2lkICJmYWlsZWQgdG8gbWFrZSB0ZW1wb3JhcnkgZmlsZSAoJXMpIgorbXNnc3RyICJuaWUgbW/FvG5hIHV0d29yennEhyB0eW1jemFzb3dlZ28gcGxpa3UgKHNla2NqYSBkYXRhKSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0NjcgZHBrZy1kZWIvYnVpbGQuYzo0NzAgZHBrZy1kZWIvYnVpbGQuYzo0NzcKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDg1IGRwa2ctZGViL2J1aWxkLmM6NDk0IGRwa2ctZGViL2J1aWxkLmM6NDk5CisjLCBmdXp6eQorI3wgbXNnaWQgImNvbnRyb2wgYXJlYSIKK21zZ2lkICJjb250cm9sIG1lbWJlciIKK21zZ3N0ciAib2JzemFyIGtvbnRyb2xueSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0NzAgZHBrZy1kZWIvYnVpbGQuYzo1MjQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byB1bmxpbmsgdG1wZmlsZSAoZGF0YSksICVzIgorbXNnaWQgImZhaWxlZCB0byB1bmxpbmsgdGVtcG9yYXJ5IGZpbGUgKCVzKSwgJXMiCittc2dzdHIgIm5pZSBtb8W8bmEgdXN1bsSFxIcgdHltY3phc293ZWdvIHBsaWt1IChzZWtjamEgZGF0YSksICVzIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ4NSBkcGtnLWRlYi9idWlsZC5jOjU5MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIHJld2luZCB0bXBmaWxlIChkYXRhKSIKK21zZ2lkICJmYWlsZWQgdG8gcmV3aW5kIHRlbXBvcmFyeSBmaWxlICglcykiCittc2dzdHIgIm5pZSBtb8W8bmEgcHJ6ZXdpbsSFxIcgdHltY3phc293ZWdvIHBsaWt1IGFyY2hpd3VtIChzZWtjamEgZGF0YSkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDk0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gZnN0YXQgdG1wZmlsZSAoZGF0YSkiCittc2dpZCAiZmFpbGVkIHRvIHN0YXQgdGVtcG9yYXJ5IGZpbGUgKCVzKSIKK21zZ3N0ciAibmllIG1vxbxuYSB1c3RhbGnEhyBzdGFudSB0eW1jemFzb3dlZ28gcGxpa3UgKHNla2NqYSBkYXRhKSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0OTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igd3JpdGluZyBgJXMnIgorbXNnc3RyICJixYLEhWQgemFwaXN1IFwiJXNcIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo1MjEgZHBrZy1kZWIvYnVpbGQuYzo1MjQgZHBrZy1kZWIvYnVpbGQuYzo1NDYKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTcyIGRwa2ctZGViL2J1aWxkLmM6NTgwIGRwa2ctZGViL2J1aWxkLmM6NTkzCisjLCBmdXp6eQorI3wgbXNnaWQgImJldHdlZW4gbWVtYmVycyIKK21zZ2lkICJkYXRhIG1lbWJlciIKK21zZ3N0ciAicG9tacSZZHp5IGN6xYJvbmFtaSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo1NzEgZHBrZy1kZWIvYnVpbGQuYzo1ODAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byB3cml0ZSBmaWxlbmFtZSB0byB0YXIgcGlwZSAoZGF0YSkiCittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIGZpbGVuYW1lIHRvIHRhciBwaXBlICglcykiCittc2dzdHIgIm5pZSBtb8W8bmEgd3Bpc2HEhyBuYXp3eSBwbGlrdSBkbyBwb3Rva3UgZG8gcHJvZ3JhbXUgdGFyIChzZWtjamEgZGF0YSkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTg0Cittc2dpZCAiPGNvbXByZXNzPiBmcm9tIHRhciAtY2YiCittc2dzdHIgIjxrb21wcmVzamE+IHogdGFyIC1jZiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjYxIGRwa2ctZGViL2V4dHJhY3QuYzo2MworbXNnaWQgInNoZWxsIGNvbW1hbmQgdG8gbW92ZSBmaWxlcyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6NzAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgZmlsZSBpbiAlcyBpbiAlLjI1NXMiCittc2dzdHIgIm5pZXNwb2R6aWV3YW55IGtvbmllYyBsaW5paSB3ICVzIHcgJS4yNTVzIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcmVhZGluZyAlcyBmcm9tIGZpbGUgJS4yNTVzIgorbXNnc3RyICJuaWUgbW/FvG5hIG9kY3p5dGHEhyAlcyB6IHBsaWt1ICUuMjU1cyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjEyNQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCBhcmNoaXZlIGAlLjI1NXMnIgorbXNnc3RyICJuaWUgbW/FvG5hIG9kY3p5dGHEhyBhcmNoaXd1bSBcIiUuMjU1c1wiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTI3Cittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGFyY2hpdmUiCittc2dzdHIgIm5pZSBtb8W8bmEgdXN0YWxpxIcgc3RhbnUgYXJjaGl3dW0iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxMzEKKyMsIGZ1enp5CisjfCBtc2dpZCAiYXJjaGl2ZSBoYXMgbm8gZG90IGluIHZlcnNpb24gbnVtYmVyIgorbXNnaWQgImFyY2hpdmUgbWFnaWMgdmVyc2lvbiBudW1iZXIiCittc2dzdHIgImFyY2hpd3VtIG5pZSB6YXdpZXJhIGtyb3BraSB3IG51bWVyemUgd2Vyc2ppIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTQzCisjLCBmdXp6eQorI3wgbXNnaWQgImFyY2hpdmUgaGFzIG5vIG5ld2xpbmVzIGluIGhlYWRlciIKK21zZ2lkICJhcmNoaXZlIG1lbWJlciBoZWFkZXIiCittc2dzdHIgImFyY2hpd3VtIG5pZSB6YXdpZXJhIHpuYWvDs3cgbm93ZWogbGluaWkgdyBuYWfFgsOzd2t1IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTQ4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgcGFydCBudW1iZXIiCittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIGFyY2hpdmUgaGVhZGVyIG1hZ2ljIgorbXNnc3RyICJwbGlrIFwiJS4yNTBzXCIgamVzdCB1c3prb2R6b255IC0gesWCeSBudW1lciBjesSZxZtjaSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE1NQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIG5vdCBhIGRlYmlhbiBiaW5hcnkgYXJjaGl2ZSAodHJ5IGRwa2ctc3BsaXQ/KSIKK21zZ3N0ciAiIgorInBsaWsgXCIlLjI1MHNcIiBuaWUgamVzdCBhcmNoaXd1bSBiaW5hcm55bSBEZWJpYW5hIChzcHLDs2J1aiBkcGtnLXNwbGl0PykiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNTkKKyMsIGZ1enp5CisjfCBtc2dpZCAiYXJjaGl2ZSBoYXMgbm8gZG90IGluIHZlcnNpb24gbnVtYmVyIgorbXNnaWQgImFyY2hpdmUgaW5mb3JtYXRpb24gaGVhZGVyIG1lbWJlciIKK21zZ3N0ciAiYXJjaGl3dW0gbmllIHphd2llcmEga3JvcGtpIHcgbnVtZXJ6ZSB3ZXJzamkiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNjIKK21zZ2lkICJhcmNoaXZlIGhhcyBubyBuZXdsaW5lcyBpbiBoZWFkZXIiCittc2dzdHIgImFyY2hpd3VtIG5pZSB6YXdpZXJhIHpuYWvDs3cgbm93ZWogbGluaWkgdyBuYWfFgsOzd2t1IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTY1Cittc2dpZCAiYXJjaGl2ZSBoYXMgbm8gZG90IGluIHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICJhcmNoaXd1bSBuaWUgemF3aWVyYSBrcm9wa2kgdyBudW1lcnplIHdlcnNqaSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE2OAorIywgYy1mb3JtYXQKK21zZ2lkICJhcmNoaXZlIHZlcnNpb24gJS4yNTBzIG5vdCB1bmRlcnN0b29kLCBnZXQgbmV3ZXIgZHBrZy1kZWIiCittc2dzdHIgIiIKKyJhcmNoaXd1bSB3IHdlcnNqaSAlLjI1MHMgamVzdCBuaWUgb2JzxYJ1Z2l3YW5lLCBwb3RyemVibnkgamVzdCBub3d5IGRwa2ctZGViIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTc5IGRwa2ctZGViL2V4dHJhY3QuYzoyMDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInNraXBwZWQgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ2lkICJza2lwcGVkIGFyY2hpdmUgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ3N0ciAicG9taW5pxJl0byBkYW5lIGN6xYJvbnUgeiAlcyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE5NAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZSBgJS4yNTBzJyBjb250YWlucyB1bnVuZGVyc3Rvb2QgZGF0YSBtZW1iZXIgJS4qcywgZ2l2aW5nIHVwIgorbXNnaWQgImFyY2hpdmUgJyUuMjUwcycgY29udGFpbnMgbm90IHVuZGVyc3Rvb2QgZGF0YSBtZW1iZXIgJS4qcywgZ2l2aW5nIHVwIgorbXNnc3RyICIiCisicGxpayBcIiUuMjUwc1wiIHphd2llcmEgbmllcm96cG96bmFuZSBhcmNoaXd1bSB6IGRhbnltaSAlLipzLCBwcnplcnl3YW5pZSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE5OQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZSBgJS4yNTBzJyBjb250YWlucyB0d28gY29udHJvbCBtZW1iZXJzLCBnaXZpbmcgdXAiCittc2dpZCAiYXJjaGl2ZSAnJS4yNTBzJyBjb250YWlucyB0d28gY29udHJvbCBtZW1iZXJzLCBnaXZpbmcgdXAiCittc2dzdHIgInBsaWsgXCIlLjI1MHNcIiB6YXdpZXJhIGR3YSBhcmNoaXdhIGtvbnRyb2xuZSwgcHJ6ZXJ5d2FuaWUiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyMTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIgbmV3IGRlYmlhbiBwYWNrYWdlLCB2ZXJzaW9uICVzLlxuIgorI3wgIiBzaXplICVsZCBieXRlczogY29udHJvbCBhcmNoaXZlPSAlemkgYnl0ZXMuXG4iCittc2dpZCAiIgorIiBuZXcgZGViaWFuIHBhY2thZ2UsIHZlcnNpb24gJXMuXG4iCisiIHNpemUgJWpkIGJ5dGVzOiBjb250cm9sIGFyY2hpdmU9ICVqZCBieXRlcy5cbiIKK21zZ3N0ciAiIgorIiBub3d5IHBha2lldCBEZWJpYW5hLCB3ZXJzamEgJXMuXG4iCisiIHJvem1pYXIgJWxkIGJhanTDs3c6IGFyY2hpd3VtIGtvbnRyb2xuZT0gJXppIGJhanTDs3cuXG4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyMzIKK21zZ2lkICJhcmNoaXZlIGNvbnRyb2wgbWVtYmVyIHNpemUiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIzNQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYXJjaGl2ZSBoYXMgbWFsZm9ybWF0dGVkIGNvbnRyb2wgbGVuZ3RoIGAlcyciCittc2dpZCAiYXJjaGl2ZSBoYXMgbWFsZm9ybWF0dGVkIGNvbnRyb2wgbWVtYmVyIHNpemUgJyVzJyIKK21zZ3N0ciAiYXJjaGl3dW0gbWEgesWCeSBmb3JtYXQgcm96bWlhcnUgaW5mb3JtYWNqaSBrb250cm9sbmVqIFwiJXNcIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI0MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic2tpcHBlZCBtZW1iZXIgZGF0YSBmcm9tICVzIgorbXNnaWQgInNraXBwZWQgYXJjaGl2ZSBjb250cm9sIG1lbWJlciBkYXRhIGZyb20gJXMiCittc2dzdHIgInBvbWluacSZdG8gZGFuZSBjesWCb251IHogJXMiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNDYKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIgb2xkIGRlYmlhbiBwYWNrYWdlLCB2ZXJzaW9uICVzLlxuIgorI3wgIiBzaXplICVsZCBieXRlczogY29udHJvbCBhcmNoaXZlPSAlemksIG1haW4gYXJjaGl2ZT0gJWxkLlxuIgorbXNnaWQgIiIKKyIgb2xkIGRlYmlhbiBwYWNrYWdlLCB2ZXJzaW9uICVzLlxuIgorIiBzaXplICVqZCBieXRlczogY29udHJvbCBhcmNoaXZlPSAlamQsIG1haW4gYXJjaGl2ZT0gJWpkLlxuIgorbXNnc3RyICIiCisiIHBvcHJ6ZWRuaSBwYWtpZXQgRGViaWFuYSwgd2Vyc2phICVzLlxuIgorIiByb3ptaWFyICVsZCBiYWp0w7N3OiBhcmNoaXd1bSBrb250cm9sbmU9ICV6aSwgYXJjaGl3dW0geiBkYW55bWk9ICVsZC5cbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI1NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZy1kZWI6IGZpbGUgbG9va3MgbGlrZSBpdCBtaWdodCBiZSBhbiBhcmNoaXZlIHdoaWNoIGhhcyBiZWVuXG4iCisiZHBrZy1kZWI6ICAgIGNvcnJ1cHRlZCBieSBiZWluZyBkb3dubG9hZGVkIGluIEFTQ0lJIG1vZGVcbiIKK21zZ3N0ciAiIgorImRwa2ctZGViOiBwbGlrIHd5Z2zEhWRhIG5hIGFyY2hpd3VtLCBrdMOzcmUgem9zdGHFgm8gdXN6a29kem9uZSBwb2RjemFzXG4iCisiZHBrZy1kZWI6ICAgIHRyYW5zZmVydSBGVFAgZG9rb25hbmVnbyB3IHRyeWJpZSBBU0NJSVxuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjU5CisjLCBjLWZvcm1hdAorbXNnaWQgImAlLjI1NXMnIGlzIG5vdCBhIGRlYmlhbiBmb3JtYXQgYXJjaGl2ZSIKK21zZ3N0ciAiXCIlLjI1NXNcIiBuaWUgamVzdCBwbGlraWVtIGFyY2hpd3VtIERlYmlhbmEiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNjYKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgdG8gcGlwZSBpbiBjb3B5IgorbXNnc3RyICJuaWUgbW/FvG5hIHphcGlzYcSHIHBvdG9rdSBkbGEgZnVua2NqaSBcImNvcHlcIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI2OAorbXNnaWQgImZhaWxlZCB0byBjbG9zZSBwaXBlIGluIGNvcHkiCittc2dzdHIgIm5pZSBtb8W8bmEgemFta27EhcSHIHBvdG9rdSBkbGEgZnVua2NqaSBcImNvcHlcIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI4NAorbXNnaWQgImRhdGEiCittc2dzdHIgImRhdGEiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozMDcKK21zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gZGlyZWN0b3J5IgorbXNnc3RyICJuaWUgbW/FvG5hIHptaWVuacSHIGthdGFsb2d1IGJpZcW8xIVjZWdvIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzEwCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBkaXJlY3RvcnkiCittc2dzdHIgIm5pZSBtb8W8bmEgdXR3b3J6ecSHIGthdGFsb2d1IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzEyCittc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIGRpcmVjdG9yeSBhZnRlciBjcmVhdGluZyBpdCIKK21zZ3N0ciAibmllIG1vxbxuYSB6bWllbmnEhyBrYXRhbG9ndSBwbyBqZWdvIHV0d29yemVuaXUiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozMjMKK21zZ2lkICI8ZGVjb21wcmVzcz4iCittc2dzdHIgIjxkZWtvbXByZXNqYT4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozMjUKK21zZ2lkICJwYXN0ZSIKK21zZ3N0ciAid2tsZWoiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozNDIgZHBrZy1kZWIvZXh0cmFjdC5jOjM2MyBkcGtnLWRlYi9leHRyYWN0LmM6NDAyCisjOiBkcGtnLWRlYi9pbmZvLmM6NzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhIC5kZWIgZmlsZW5hbWUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMgd3ltYWdhIHBvZGFuaWEgbmF6d3kgcGxpa3UgLmRlYiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjM0NyBkcGtnLWRlYi9leHRyYWN0LmM6NDA2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyItLSVzIG5lZWRzIGEgdGFyZ2V0IGRpcmVjdG9yeS5cbiIKKyJQZXJoYXBzIHlvdSBzaG91bGQgYmUgdXNpbmcgZHBrZyAtLWluc3RhbGwgPyIKK21zZ3N0ciAiIgorIi0tJXMgd3ltYWdhIHBvZGFuaWEga2F0YWxvZ3UgZG9jZWxvd2Vnby5cbiIKKyJCecSHIG1vxbxlIG5hbGXFvHkgdcW8ecSHIFwiZHBrZyAtLWluc3RhbGxcIj8iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozNTAgZHBrZy1kZWIvZXh0cmFjdC5jOjQxMAorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIHRha2VzIGF0IG1vc3QgdHdvIGFyZ3VtZW50cyAoLmRlYiBhbmQgZGlyZWN0b3J5KSIKK21zZ3N0ciAiLS0lcyB3eW1hZ2EgcG9kYW5pYSBjbyBuYWp3ecW8ZWogZHfDs2NoIGFyZ3VtZW50w7N3ICguZGViIG9yYXoga2F0YWxvZ3UpIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzY1CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgb25seSBvbmUgYXJndW1lbnQgKC5kZWIgZmlsZW5hbWUpIgorbXNnc3RyICItLSVzIHd5bWFnYSBwb2RhbmlhIGplZG5lZ28gYXJndW1lbnR1IChuYXp3eSBwbGlrdSAuZGViKSIKKworIzogZHBrZy1kZWIvaW5mby5jOjYzCittc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIGAvJyBmb3IgY2xlYW51cCIKK21zZ3N0ciAibmllIG1vxbxuYSB6bWllbmnEhyBrYXRhbG9ndSBuYSBcIi9cIiBwcnp5IGN6eXN6Y3plbml1IMWbcm9kb3dpc2thIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTA2CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW5ub3Qgc3RhdCBvbGQgbmFtZSBgJXMnOiAlcyIKK21zZ2lkICJjb250cm9sIGZpbGUgJyVzJyIKK21zZ3N0ciAibmllIG1vxbxuYSB1c3RhbGnEhyBzdGFudSBzdGFyZWdvIHBsaWt1IFwiJXNcIiA6ICVzIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTEwCisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2ctZGViOiBgJS4yNTVzJyBjb250YWlucyBubyBjb250cm9sIGNvbXBvbmVudCBgJS4yNTVzJ1xuIgorbXNnc3RyICJkcGtnLWRlYjogXCIlLjI1NXNcIiBuaWUgemF3aWVyYSBwbGlrdSBrb250cm9sbmVnbyBcIiUuMjU1c1wiXG4iCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAib3BlbiBjb21wb25lbnQgYCUuMjU1cycgKGluICUuMjU1cykgZmFpbGVkIGluIGFuIHVuZXhwZWN0ZWQgd2F5IgorbXNnc3RyICIiCisibmllIG1vxbxuYSBvdHdvcnp5xIcgcGxpa3UgaW5mb3JtYWN5am5lZ28gXCIlLjI1NXNcIiAodyAlLjI1NXMpIHogIgorIm5pZW9rcmXFm2xvbmVnbyBwb3dvZHUiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIk9uZSByZXF1ZXN0ZWQgY29udHJvbCBjb21wb25lbnQgaXMgbWlzc2luZyIKK21zZ2lkICIlZCByZXF1ZXN0ZWQgY29udHJvbCBjb21wb25lbnQgaXMgbWlzc2luZyIKK21zZ2lkX3BsdXJhbCAiJWQgcmVxdWVzdGVkIGNvbnRyb2wgY29tcG9uZW50cyBhcmUgbWlzc2luZyIKK21zZ3N0clswXSAiQnJhayBqZWRuZWdvIHBsaWt1IGtvbnRyb2xuZWdvIgorbXNnc3RyWzFdICJCcmFrIGplZG5lZ28gcGxpa3Uga29udHJvbG5lZ28iCittc2dzdHJbMl0gIkJyYWsgamVkbmVnbyBwbGlrdSBrb250cm9sbmVnbyIKKworIzogZHBrZy1kZWIvaW5mby5jOjEzOSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NDI0CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzY2FuIGRpcmVjdG9yeSBgJS4yNTVzJyIKK21zZ3N0ciAibmllIG1vxbxuYSBwcnplc3p1a2HEhyBrYXRhbG9ndSBcIiUuMjU1c1wiIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTQ4CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzdGF0IGAlLjI1NXMnIChpbiBgJS4yNTVzJykiCittc2dzdHIgIm5pZSBtb8W8bmEgdXN0YWxpxIcgc3RhbnUgXCIlLjI1NXNcIiAodyBcIiUuMjU1c1wiKSIKKworIzogZHBrZy1kZWIvaW5mby5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgb3BlbiBgJS4yNTVzJyAoaW4gYCUuMjU1cycpIgorbXNnc3RyICJuaWUgbW/FvG5hIG90d29yennEhyBcIiUuMjU1c1wiICh3IFwiJS4yNTVzXCIpIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTY3IGRwa2ctZGViL2luZm8uYzoxODUgZHBrZy1kZWIvaW5mby5jOjE5OQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCBgJS4yNTVzJyAoaW4gYCUuMjU1cycpIgorbXNnc3RyICJuaWUgbW/FvG5hIG9kY3p5dGHEhyBcIiUuMjU1c1wiICh3IFwiJS4yNTVzXCIpIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTcwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIgJTdsZCBieXRlcywgJTVkIGxpbmVzICAgJWMgICUtMjAuMTI3cyAlLjEyN3NcbiIKK21zZ2lkICIgJTdqZCBieXRlcywgJTVkIGxpbmVzICAgJWMgICUtMjAuMTI3cyAlLjEyN3NcbiIKK21zZ3N0ciAiICU3bGQgYmFqdMOzdywgJTVkIGxpbmlpICAgJWMgICUtMjAuMTI3cyAlLjEyN3NcbiIKKworIzogZHBrZy1kZWIvaW5mby5jOjE3NAorIywgYy1mb3JtYXQKK21zZ2lkICIgICAgIG5vdCBhIHBsYWluIGZpbGUgICAgICAgICAgJS4yNTVzXG4iCittc2dzdHIgIiAgICAgbmllIGplc3QgcGxpa2llbSAgICAgICAgICAlLjI1NXNcbiIKKworIzogZHBrZy1kZWIvaW5mby5jOjE4NgorbXNnaWQgIihubyBgY29udHJvbCcgZmlsZSBpbiBjb250cm9sIGFyY2hpdmUhKVxuIgorbXNnc3RyICIoYnJhayBwbGlrdSBcImNvbnRyb2xcIiB3IGFyY2hpd3VtIGtvbnRyb2xueW0hKVxuIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MjIyCittc2dpZCAiY291bGQgbm90IG9wZW4gdGhlIGBjb250cm9sJyBjb21wb25lbnQiCittc2dzdHIgIm5pZSBtb8W8bmEgb3R3b3J6ecSHIHBsaWt1IGtvbnRyb2xuZWdvIFwiY29udHJvbFwiIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MjYxCittc2dpZCAiZmFpbGVkIGR1cmluZyByZWFkIG9mIGBjb250cm9sJyBjb21wb25lbnQiCittc2dzdHIgIm5pZSBtb8W8bmEgb2Rjenl0YcSHIHBsaWt1IGtvbnRyb2xuZWdvIFwiY29udHJvbFwiIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MjYzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nIHRoZSAnJXMnIGNvbXBvbmVudCIKK21zZ3N0ciAibmllIG1vxbxuYSB6YW1rbsSFxIcgcG90b2t1IGRsYSBcImZpbmRcIiIKKworIzogZHBrZy1kZWIvaW5mby5jOjI3OAorbXNnaWQgIkVycm9yIGluIGZvcm1hdCIKK21zZ3N0ciAiQsWCxIVkIHcgZm9ybWFjaWUiCisKKyM6IGRwa2ctZGViL2luZm8uYzozMjgKK21zZ2lkICItLWNvbnRlbnRzIHRha2VzIGV4YWN0bHkgb25lIGFyZ3VtZW50IgorbXNnc3RyICItLWNvbnRlbnRzIHd5bWFnYSBwb2RhbmlhIGRva8WCYWRuaWUgamVkbmVnbyBhcmd1bWVudHUiCisKKyM6IGRwa2ctZGViL21haW4uYzo1NAorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIGFyY2hpdmUgYmFja2VuZCB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICJEZWJpYW4gXCIlc1wiLCBwcm9ncmFtIGRvIHphcnrEhWR6YW5pYSBwYWtpZXRhbWksIHdlcnNqYSAlcy5cbiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjczCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiQ29tbWFuZHM6XG4iCisjfCAiICAtYnwtLWJ1aWxkIDxkaXJlY3Rvcnk+IFs8ZGViPl0gICBCdWlsZCBhbiBhcmNoaXZlLlxuIgorI3wgIiAgLWN8LS1jb250ZW50cyA8ZGViPiAgICAgICAgICAgICAgTGlzdCBjb250ZW50cy5cbiIKKyN8ICIgIC1JfC0taW5mbyA8ZGViPiBbPGNmaWxlPiAuLi5dICAgIFNob3cgaW5mbyB0byBzdGRvdXQuXG4iCisjfCAiICAtV3wtLXNob3cgPGRlYj4gICAgICAgICAgICAgICAgICBTaG93IGluZm9ybWF0aW9uIG9uIHBhY2thZ2UocylcbiIKKyN8ICIgIC1mfC0tZmllbGQgPGRlYj4gWzxjZmllbGQ+IC4uLl0gIFNob3cgZmllbGQocykgdG8gc3Rkb3V0LlxuIgorI3wgIiAgLWV8LS1jb250cm9sIDxkZWI+IFs8ZGlyZWN0b3J5Pl0gRXh0cmFjdCBjb250cm9sIGluZm8uXG4iCisjfCAiICAteHwtLWV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gICBFeHRyYWN0IGZpbGVzLlxuIgorI3wgIiAgLVh8LS12ZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PiAgRXh0cmFjdCAmIGxpc3QgZmlsZXMuXG4iCisjfCAiICAtLWZzeXMtdGFyZmlsZSA8ZGViPiAgICAgICAgICAgICBPdXRwdXQgZmlsZXN5c3RlbSB0YXJmaWxlLlxuIgorI3wgIlxuIgorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1ifC0tYnVpbGQgPGRpcmVjdG9yeT4gWzxkZWI+XSAgIEJ1aWxkIGFuIGFyY2hpdmUuXG4iCisiICAtY3wtLWNvbnRlbnRzIDxkZWI+ICAgICAgICAgICAgICBMaXN0IGNvbnRlbnRzLlxuIgorIiAgLUl8LS1pbmZvIDxkZWI+IFs8Y2ZpbGU+IC4uLl0gICAgU2hvdyBpbmZvIHRvIHN0ZG91dC5cbiIKKyIgIC1XfC0tc2hvdyA8ZGViPiAgICAgICAgICAgICAgICAgIFNob3cgaW5mb3JtYXRpb24gb24gcGFja2FnZShzKVxuIgorIiAgLWZ8LS1maWVsZCA8ZGViPiBbPGNmaWVsZD4gLi4uXSAgU2hvdyBmaWVsZChzKSB0byBzdGRvdXQuXG4iCisiICAtZXwtLWNvbnRyb2wgPGRlYj4gWzxkaXJlY3Rvcnk+XSBFeHRyYWN0IGNvbnRyb2wgaW5mby5cbiIKKyIgIC14fC0tZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PiAgIEV4dHJhY3QgZmlsZXMuXG4iCisiICAtWHwtLXZleHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+ICBFeHRyYWN0ICYgbGlzdCBmaWxlcy5cbiIKKyIgIC1SfC0tcmF3LWV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEV4dHJhY3QgY29udHJvbCBpbmZvIGFuZCBmaWxlcy5cbiIKKyIgIC0tZnN5cy10YXJmaWxlIDxkZWI+ICAgICAgICAgICAgIE91dHB1dCBmaWxlc3lzdGVtIHRhcmZpbGUuXG4iCisiXG4iCittc2dzdHIgIiIKKyJQb2xlY2VuaWE6XG4iCisiICAtYnwtLWJ1aWxkIDxrYXRhbG9nPiBbPGRlYj5dICAgICAgIEJ1ZG93YW5pZSBhcmNoaXd1bS5cbiIKKyIgIC1jfC0tY29udGVudHMgPGRlYj4gICAgICAgICAgICAgICAgV3lwaXNhbmllIHphd2FydG/Fm2NpLlxuIgorIiAgLUl8LS1pbmZvIDxkZWI+IFs8cGxpa2tvbnRyPi4uLl0gICBQb2RhbmllIGluZm9ybWFjamkgbmEgc3Rkb3V0LlxuIgorIiAgLVd8LS1zaG93IDxkZWI+ICAgICAgICAgICAgICAgICAgICBQb2RhbmllIGluZm9ybWFjamkgbyBwYWtpZWNpZSgtYWNoKS5cbiIKKyIgIC1mfC0tZmllbGQgPGRlYj4gWzxwb2xla29udHI+Li4uXSAgUG9kYW5pZSBww7NsIGtvbnRyLiBuYSBzdGRvdXQuXG4iCisiICAtZXwtLWNvbnRyb2wgPGRlYj4gWzxrYXRhbG9nPl0gICAgIFJvenBha293YW5pZSBwbGlrw7N3IGtvbnRyb2xueWNoLlxuIgorIiAgLXh8LS1leHRyYWN0IDxkZWI+IDxrYXRhbG9nPiAgICAgICBSb3pwYWtvd2FuaWUgcGxpa8OzdyBhcmNoaXcuXG4iCisiICAtWHwtLXZleHRyYWN0IDxkZWI+IDxrYXRhbG9nPiAgICAgIFJvenBhay4gaSB3eXBpc2FuaWUgcGxpa8Ozdy5cbiIKKyIgIC0tZnN5cy10YXJmaWxlIDxkZWI+ICAgICAgICAgICAgICAgUG9kYW5pZSBwbGlrw7N3IGFyY2hpd3VtIHRhci5cbiIKKyJcbiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjkzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyI8ZGViPiBpcyB0aGUgZmlsZW5hbWUgb2YgYSBEZWJpYW4gZm9ybWF0IGFyY2hpdmUuXG4iCisiPGNmaWxlPiBpcyB0aGUgbmFtZSBvZiBhbiBhZG1pbmlzdHJhdGl2ZSBmaWxlIGNvbXBvbmVudC5cbiIKKyI8Y2ZpZWxkPiBpcyB0aGUgbmFtZSBvZiBhIGZpZWxkIGluIHRoZSBtYWluIGBjb250cm9sJyBmaWxlLlxuIgorIlxuIgorbXNnc3RyICIiCisiPGRlYj4gamVzdCBuYXp3xIUgcGxpa3UgdyBmb3JtYWNpZSBhcmNoaXd1bSBEZWJpYW5hLlxuIgorIjxwbGlra29udHI+IGplc3QgbmF6d8SFIHBsaWt1IGtvbnRyb2xuZWdvLlxuIgorIjxwb2xla29udHI+IGplc3QgbmF6d8SFIHBvbGEgZ8WCw7N3bmVnbyBwbGlrdSBcImNvbnRyb2xcIi5cbiIKKyJcbiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjk5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tc2hvd2Zvcm1hdD08Zm9ybWF0PiAgICAgICAgICAgIFVzZSBhbHRlcm5hdGl2ZSBmb3JtYXQgZm9yIC0tc2hvdy5cbiIKKyIgIC12LCAtLXZlcmJvc2UgICAgICAgICAgICAgICAgICAgIEVuYWJsZSB2ZXJib3NlIG91dHB1dC5cbiIKKyIgIC1EICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVuYWJsZSBkZWJ1Z2dpbmcgb3V0cHV0LlxuIgorIiAgLS1vbGQsIC0tbmV3ICAgICAgICAgICAgICAgICAgICAgU2VsZWN0IGFyY2hpdmUgZm9ybWF0LlxuIgorIiAgLS1ub2NoZWNrICAgICAgICAgICAgICAgICAgICAgICAgU3VwcHJlc3MgY29udHJvbCBmaWxlIGNoZWNrIChidWlsZCBiYWRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFja2FnZXMpLlxuIgorIiAgLXojICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU2V0IHRoZSBjb21wcmVzc2lvbiBsZXZlbCB3aGVuIGJ1aWxkaW5nLlxuIgorIiAgLVo8dHlwZT4gICAgICAgICAgICAgICAgICAgICAgICAgU2V0IHRoZSBjb21wcmVzc2lvbiB0eXBlIHVzZWQgd2hlbiAiCisiYnVpbGRpbmcuXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFsbG93ZWQgdHlwZXM6IGd6aXAsIHh6LCBiemlwMiwgbHptYSwgIgorIm5vbmUuXG4iCisiXG4iCittc2dzdHIgIiIKKyJPcGNqZTpcbiIKKyIgIC0tc2hvd2Zvcm1hdD08Zm9ybWF0PiAgVcW8eWNpZSBwb2RhbmVnbyBmb3JtYXR1IGRsYSAtLXNob3cuXG4iCisiICAtRCAgICAgICAgICAgICAgICAgICAgIFfFgsSFY3plbmllIGRlYnVnZ2VyYS5cbiIKKyIgIC0tb2xkLCAtLW5ldyAgICAgICAgICAgV3liw7NyIGZvcm1hdHUgYXJjaGl3dW0uXG4iCisiICAtLW5vY2hlY2sgICAgICAgICAgICAgIFBvbWluacSZY2llIHNwcmF3ZHphbmlhIHBsaWt1IGtvbnRyb2xuZWdvICIKKyIodHdvcnplbmllXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgbmllcG9wcmF3bnljaCBwYWtpZXTDs3cpLlxuIgorIiAgLXojICAgICAgICAgICAgICAgICAgICBPa3JlxZtsZW5pZSBzdG9wbmlhIGtvbXByZXNqaSBkbGEgYnVkb3dhbmVnbyAiCisicGFraWV0dS5cbiIKKyIgIC1aPHR5cD4gICAgICAgICAgICAgICAgVXN0YXdpZW5pZSByb2R6YWp1IGtvbXByZXNqaSBwb2RjemFzIGJ1ZG93YW5pYS5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBEb3p3b2xvbmUgd2FydG/Fm2NpOiBnemlwLCBiemlwMiwgbHptYSwgbm9uZS5cbiIKKyJcbiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjEyMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiVXNlIGBkcGtnJyB0byBpbnN0YWxsIGFuZCByZW1vdmUgcGFja2FnZXMgZnJvbSB5b3VyIHN5c3RlbSwgb3JcbiIKKyJgZHNlbGVjdCcgb3IgYGFwdGl0dWRlJyBmb3IgdXNlci1mcmllbmRseSBwYWNrYWdlIG1hbmFnZW1lbnQuICBQYWNrYWdlc1xuIgorInVucGFja2VkIHVzaW5nIGBkcGtnLWRlYiAtLWV4dHJhY3QnIHdpbGwgYmUgaW5jb3JyZWN0bHkgaW5zdGFsbGVkICFcbiIKK21zZ3N0ciAiIgorIlxuIgorIlXFvHlqIFwiZHBrZ1wiLCBhYnkgemFpbnN0YWxvd2HEhyBsdWIgdXN1bsSFxIcgcGFraWV0eSB6IHN5c3RlbXUsIGx1YlxuIgorIlwiZHNlbGVjdFwiIGx1YiBcImFwdGl0dWRlXCIsIGplxZtsaSBwb3RyemVidWplc3ogd3lnb2RuZWdvIHByb2dyYW11XG4iCisiZG8gemFyesSFZHphbmlhIHBha2lldGFtaS4gUGFraWV0eSByb3pwYWtvd2FuZSBwb2xlY2VuaWVtXG4iCisiXCJkcGtnLWRlYiAtLWV4dHJhY3RcIiBuaWUgYsSZZMSFIHBvcHJhd25pZSB6YWluc3RhbG93YW5lIVxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTMyCittc2dpZCAiIgorIlR5cGUgZHBrZy1kZWIgLS1oZWxwIGZvciBoZWxwIGFib3V0IG1hbmlwdWxhdGluZyAqLmRlYiBmaWxlcztcbiIKKyJUeXBlIGRwa2cgLS1oZWxwIGZvciBoZWxwIGFib3V0IGluc3RhbGxpbmcgYW5kIGRlaW5zdGFsbGluZyBwYWNrYWdlcy4iCittc2dzdHIgIiIKKyJXcGlzeiBkcGtnLWRlYiAtLWhlbHAsIGFieSBkb3dpZWR6aWXEhyBzacSZIGphayBvcGVyb3dhxIcgcGxpa2FtaSAqLmRlYjtcbiIKKyJXcGlzeiBkcGtnIC0taGVscCwgYWJ5IGRvd2llZHppZcSHIHNpxJkgamFrIChvZClpbnN0YWxvd2HEhyBwYWtpZXR5LiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjE0OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBpbnRlZ2VyIGZvciAtJWM6ICclLjI1MHMnIgorbXNnc3RyICJixYLEmWRuYSB3YXJ0b8WbxIcgbGljemJvd2EgZGxhIC0tJXM6IFwiJS4yNTBzXCIiCisKKyM6IGRwa2ctZGViL21haW4uYzoxNTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgY29tcHJlc3Npb24gbGV2ZWwgZm9yIC0lYzogJWxkJyIKK21zZ3N0ciAiYsWCxJlkbmEgd2FydG/Fm8SHIGxpY3pib3dhIGRsYSAtLSVzOiBcIiUuMjUwc1wiIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTYxCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gY29tcHJlc3Npb24gdHlwZSBgJXMnISIKK21zZ3N0ciAibmllem5hbnkgdHlwIGtvbXByZXNqaSBcIiVzXCIhIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzo1MgorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgZGlnaXQgKGNvZGUgJWQpIGluICVzIgorbXNnc3RyICJwbGlrIFwiJS4yNTBzXCIgamVzdCB1c3prb2R6b255IC0gesWCYSBjeWZyYSAoa29kICVkKSB3ICVzIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzo2MAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSAlLjI1MHMgbWlzc2luZyIKK21zZ3N0ciAicGxpayBcIiUuMjUwc1wiIGplc3QgdXN6a29kem9ueSAtIGJyYWt1amUgJS4yNTBzIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzo2MworIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBtaXNzaW5nIG5ld2xpbmUgYWZ0ZXIgJS4yNTBzIgorbXNnc3RyICJwbGlrIFwiJS4yNTBzXCIgamVzdCB1c3prb2R6b255IC0gYnJha3VqZSB6bmFrdSBub3dlaiBsaW5paSBwbyAlLjI1MHMiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjg5IGRwa2ctc3BsaXQvbWFpbi5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciByZWFkaW5nICUuMjUwcyIKK21zZ3N0ciAiYsWCxIVkIG9kY3p5dHUgJS4yNTBzIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIG1hZ2ljIGF0IGVuZCBvZiBmaXJzdCBoZWFkZXIiCittc2dzdHIgIiIKKyJwbGlrIFwiJS4yNTBzXCIgamVzdCB1c3prb2R6b255IC0gesWCYSBsaWN6YmEgbWFnaWN6bmEgbmEga2/FhGN1IHBpZXJ3c3plZ28gIgorIm5hZ8WCw7N3a2EiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjExMworIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgcGFkZGluZyBjaGFyYWN0ZXIgKGNvZGUgJWQpIgorbXNnc3RyICJwbGlrIFwiJS4yNTBzXCIgamVzdCB1c3prb2R6b255IC0gesWCeSB6bmFrIChrb2QgJWQpIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gbnVsbHMgaW4gaW5mbyBzZWN0aW9uIgorbXNnc3RyICJwbGlrIFwiJS4yNTBzXCIgamVzdCB1c3prb2R6b255IC0gcHVzdGUgem5ha2kgdyBzZWtjamkgaW5mb3JtYWN5am5laiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTIyCittc2dpZCAiZm9ybWF0IHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICJudW1lciB3ZXJzamkgZm9ybWF0dSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgZm9ybWF0IHZlcnNpb24gYCUuMjUwcycgLSB5b3UgbmVlZCBhIG5ld2VyIGRwa2ctc3BsaXQiCittc2dzdHIgIiIKKyJwbGlrIFwiJS4yNTBzXCIgamVzdCB3IGZvcm1hY2llIHdlcnNqaSBcIiUuMjUwc1wiIC0gcG90cnplYm55IGplc3Qgbm93c3p5ICIKKyJkcGtnLXNwbGl0IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMjcKK21zZ2lkICJwYWNrYWdlIG5hbWUiCittc2dzdHIgIm5hendhIHBha2lldHUiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyOAorbXNnaWQgInBhY2thZ2UgdmVyc2lvbiBudW1iZXIiCittc2dzdHIgIm51bWVyIHdlcnNqaSBwYWtpZXR1IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMjkKK21zZ2lkICJwYWNrYWdlIGZpbGUgTUQ1IGNoZWNrc3VtIgorbXNnc3RyICJzdW1hIGtvbnRyb2xuYSBNRDUgcGxpa3UgcGFraWV0dSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTMyCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBNRDUgY2hlY2tzdW0gYCUuMjUwcyciCittc2dzdHIgInBsaWsgXCIlLjI1MHNcIiBqZXN0IHVzemtvZHpvbnkgLSB6xYJ5IHNrcsOzdCBNRDUgXCIlLjI1MHNcIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTM0IGRwa2ctc3BsaXQvaW5mby5jOjEzNQorbXNnaWQgImFyY2hpdmUgdG90YWwgc2l6ZSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMzYgZHBrZy1zcGxpdC9pbmZvLmM6MTM3CisjLCBmdXp6eQorI3wgbXNnaWQgInBhcnQgb2Zmc2V0IgorbXNnaWQgImFyY2hpdmUgcGFydCBvZmZzZXQiCittc2dzdHIgIm9mZnNldCBjesSZxZtjaSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTM5CisjLCBmdXp6eQorI3wgbXNnaWQgInBhcnQgbnVtYmVycyIKK21zZ2lkICJhcmNoaXZlIHBhcnQgbnVtYmVycyIKK21zZ3N0ciAibnVtZXJ5IGN6xJnFm2NpIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIG5vIHNsYXNoIGJldHdlZW4gcGFydCBudW1iZXJzIgorbXNnaWQgImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIG5vIHNsYXNoIGJldHdlZW4gYXJjaGl2ZSBwYXJ0IG51bWJlcnMiCittc2dzdHIgInBsaWsgXCIlLjI1MHNcIiBqZXN0IHVzemtvZHpvbnkgLSBicmFrIHVrb8WbbmlrYSBtacSZZHp5IG51bWVyYW1pIGN6xJnFm2NpIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDUKKyMsIGZ1enp5CisjfCBtc2dpZCAibnVtYmVyIG9mIHBhcnRzIgorbXNnaWQgIm51bWJlciBvZiBhcmNoaXZlIHBhcnRzIgorbXNnc3RyICJpbG/Fm8SHIGN6xJnFm2NpIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDcKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBudW1iZXIgb2YgcGFydHMiCittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIG51bWJlciBvZiBhcmNoaXZlIHBhcnRzIgorbXNnc3RyICJwbGlrIFwiJS4yNTBzXCIgamVzdCB1c3prb2R6b255IC0gesWCYSBpbG/Fm8SHIGN6xJnFm2NpIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDkKKyMsIGZ1enp5CisjfCBtc2dpZCAicGFydHMgbnVtYmVyIgorbXNnaWQgImFyY2hpdmUgcGFydHMgbnVtYmVyIgorbXNnc3RyICJpbG/Fm8SHIGN6xJnFm2NpIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBwYXJ0IG51bWJlciIKK21zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgYXJjaGl2ZSBwYXJ0IG51bWJlciIKK21zZ3N0ciAicGxpayBcIiUuMjUwc1wiIGplc3QgdXN6a29kem9ueSAtIHrFgnkgbnVtZXIgY3rEmcWbY2kiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE1NworIywgZnV6enkKKyN8IG1zZ2lkICJwYWNrYWdlIG5hbWUiCittc2dpZCAicGFja2FnZSBhcmNoaXRlY3R1cmUiCittc2dzdHIgIm5hendhIHBha2lldHUiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE2NgorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgbWFnaWMgYXQgZW5kIG9mIHNlY29uZCBoZWFkZXIiCittc2dzdHIgIiIKKyJwbGlrIFwiJS4yNTBzXCIgamVzdCB1c3prb2R6b255IC0gesWCYSBsaWN6YmEgbWFnaWN6bmEgbmEga2/FhGN1IGRydWdpZWdvICIKKyJuYWfFgsOzd2thIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gc2Vjb25kIG1lbWJlciBpcyBub3QgZGF0YSBtZW1iZXIiCittc2dzdHIgIiIKKyJwbGlrIFwiJS4yNTBzXCIgamVzdCB1c3prb2R6b255IC0gZHJ1Z2kgY3rFgm9uIG5pZSBqZXN0IGN6xYJvbmVtIHogZGFueW1pIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gd3JvbmcgbnVtYmVyIG9mIHBhcnRzIGZvciBxdW90ZWQgc2l6ZXMiCittc2dzdHIgIiIKKyJwbGlrIFwiJS4yNTBzXCIgamVzdCB1c3prb2R6b255IC0gesWCYSBpbG/Fm8SHIGN6xJnFm2NpIGRsYSB3eWJyYW5lZ28gcm96bWlhcnUiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE3OAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBzaXplIGlzIHdyb25nIGZvciBxdW90ZWQgcGFydCBudW1iZXIiCittc2dzdHIgIiIKKyJwbGlrIFwiJS4yNTBzXCIgamVzdCB1c3prb2R6b255IC0gesWCeSByb3ptaWFyIGRsYSB3eWJyYW5laiBpbG/Fm2NpIGN6xJnFm2NpIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxODQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZzdGF0IHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmllIG1vxbxuYSB1c3RhbGnEhyBzdGFudSBwbGlrdSBjesSZxZtjaSBcIiUuMjUwc1wiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gdG9vIHNob3J0IgorbXNnc3RyICJwbGlrIFwiJS4yNTBzXCIgamVzdCB1c3prb2R6b255IC0gemJ5dCBrcsOzdGtpIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyMDIgZHBrZy1zcGxpdC9pbmZvLmM6MjQ5CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBvcGVuIGFyY2hpdmUgcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuaWUgbW/FvG5hIG90d29yennEhyBwbGlrdSBjesSZxZtjaSBcIiUuMjUwc1wiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBub3QgYW4gYXJjaGl2ZSBwYXJ0IgorbXNnc3RyICJwbGlrIFwiJS4yNTBzXCIgbmllIGplc3QgY3rEmcWbY2nEhSBhcmNoaXd1bSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjA5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiJXM6XG4iCisjfCAiICAgIFBhcnQgZm9ybWF0IHZlcnNpb246ICAgICAgICAgICAgJXNcbiIKKyN8ICIgICAgUGFydCBvZiBwYWNrYWdlOiAgICAgICAgICAgICAgICAlc1xuIgorI3wgIiAgICAgICAgLi4uIHZlcnNpb246ICAgICAgICAgICAgICAgICVzXG4iCisjfCAiICAgICAgICAuLi4gTUQ1IGNoZWNrc3VtOiAgICAgICAgICAgJXNcbiIKKyN8ICIgICAgICAgIC4uLiBsZW5ndGg6ICAgICAgICAgICAgICAgICAlbHUgYnl0ZXNcbiIKKyN8ICIgICAgICAgIC4uLiBzcGxpdCBldmVyeTogICAgICAgICAgICAlbHUgYnl0ZXNcbiIKKyN8ICIgICAgUGFydCBudW1iZXI6ICAgICAgICAgICAgICAgICAgICAlZC8lZFxuIgorI3wgIiAgICBQYXJ0IGxlbmd0aDogICAgICAgICAgICAgICAgICAgICV6aSBieXRlc1xuIgorI3wgIiAgICBQYXJ0IG9mZnNldDogICAgICAgICAgICAgICAgICAgICVsdSBieXRlc1xuIgorI3wgIiAgICBQYXJ0IGZpbGUgc2l6ZSAodXNlZCBwb3J0aW9uKTogICVsdSBieXRlc1xuIgorI3wgIlxuIgorbXNnaWQgIiIKKyIlczpcbiIKKyIgICAgUGFydCBmb3JtYXQgdmVyc2lvbjogICAgICAgICAgICAlc1xuIgorIiAgICBQYXJ0IG9mIHBhY2thZ2U6ICAgICAgICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gdmVyc2lvbjogICAgICAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiBhcmNoaXRlY3R1cmU6ICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIE1ENSBjaGVja3N1bTogICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gbGVuZ3RoOiAgICAgICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgICAgICAuLi4gc3BsaXQgZXZlcnk6ICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgIFBhcnQgbnVtYmVyOiAgICAgICAgICAgICAgICAgICAgJWQvJWRcbiIKKyIgICAgUGFydCBsZW5ndGg6ICAgICAgICAgICAgICAgICAgICAlamQgYnl0ZXNcbiIKKyIgICAgUGFydCBvZmZzZXQ6ICAgICAgICAgICAgICAgICAgICAlamQgYnl0ZXNcbiIKKyIgICAgUGFydCBmaWxlIHNpemUgKHVzZWQgcG9ydGlvbik6ICAlamQgYnl0ZXNcbiIKKyJcbiIKK21zZ3N0ciAiIgorIiVzOlxuIgorIiAgICBXZXJzamEgZm9ybWF0dSBjesSZxZtjaTogICAgICAgICAgJXNcbiIKKyIgICAgQ3rEmcWbxIcgcGFraWV0dTogICAgICAgICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIHdlcnNqYTogICAgICAgICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gc2tyw7N0IE1ENTogICAgICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gZMWCdWdvxZvEhzogICAgICAgICAgICAgICAgJWx1IGJhanTDs3dcbiIKKyIgICAgICAgIC4uLiBwb2R6aWVsb255IGNvOiAgICAgICAgICAlbHUgYmFqdMOzd1xuIgorIiAgICBOdW1lciBjesSZxZtjaTogICAgICAgICAgICAgICAgICAgJWQvJWRcbiIKKyIgICAgRMWCdWdvxZvEhyBjesSZxZtjaTogICAgICAgICAgICAgICAgICV6aSBiYWp0w7N3XG4iCisiICAgIE9mZnNldCBjesSZxZtjaTogICAgICAgICAgICAgICAgICAlbHUgYmFqdMOzd1xuIgorIiAgICBSb3ptaWFyIHBsaWt1IGN6xJnFm2NpICh1xbx5dGEpOiAgICVsdSBiYWp0w7N3XG4iCisiXG4iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjIyNQorIywgZnV6enkKKyN8IG1zZ2lkICI8dW5rbm93bj4iCittc2djdHh0ICJhcmNoaXRlY3R1cmUiCittc2dpZCAiPHVua25vd24+IgorbXNnc3RyICI8bmllem5hbnk+IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyNDQgZHBrZy1zcGxpdC9qb2luLmM6MTA1CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgcmVxdWlyZXMgb25lIG9yIG1vcmUgcGFydCBmaWxlIGFyZ3VtZW50cyIKK21zZ3N0ciAiIgorIi0tJXMgd3ltYWdhIHBvZGFuaWEgY28gbmFqbW5pZWogamVkbmVnbyBhcmd1bWVudHUgYsSZZMSFY2VnbyBwbGlraWVtIGN6xJnFm2NpIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJXMnIGlzIG5vdCBhbiBhcmNoaXZlIHBhcnRcbiIKK21zZ3N0ciAicGxpayBcIiVzXCIgbmllIGplc3QgY3rEmcWbY2nEhSBhcmNoaXd1bVxuIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo0NAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiUHV0dGluZyBwYWNrYWdlICVzIHRvZ2V0aGVyIGZyb20gJWQgcGFydHM6ICIKK21zZ2lkICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0OiAiCittc2dpZF9wbHVyYWwgIlB1dHRpbmcgcGFja2FnZSAlcyB0b2dldGhlciBmcm9tICVkIHBhcnRzOiAiCittc2dzdHJbMF0gIlNrxYJhZGFuaWUgcGFraWV0dSAlcyB6ICVkIGN6xJnFm2NpOiAiCittc2dzdHJbMV0gIlNrxYJhZGFuaWUgcGFraWV0dSAlcyB6ICVkIGN6xJnFm2NpOiAiCittc2dzdHJbMl0gIlNrxYJhZGFuaWUgcGFraWV0dSAlcyB6ICVkIGN6xJnFm2NpOiAiCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjUxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIG91dHB1dCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuaWUgbW/FvG5hIG90d29yennEhyBwbGlrdSB3eWrFm2Npb3dlZ28gXCIlLjI1MHNcIiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIChyZSlvcGVuIGlucHV0IHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmllIG1vxbxuYSBvdHdvcnp5xIcgcGxpa3Ugd2VqxZtjaW93ZWdvIGN6xJnFm2NpIGFyY2hpd3VtIFwiJS4yNTBzXCIiCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjU4CisjLCBmdXp6eQorI3wgbXNnaWQgIlNraXBwaW5nIGRlc2VsZWN0ZWQgcGFja2FnZSAlcy5cbiIKK21zZ2lkICJza2lwcGluZyBzcGxpdCBwYWNrYWdlIGhlYWRlciIKK21zZ3N0ciAiUG9taW5pxJljaWUgbmllemF6bmFjem9uZWdvIHBha2lldHUgJXMuXG4iCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjU5CisjLCBmdXp6eQorI3wgbXNnaWQgIlB1dHRpbmcgcGFja2FnZSAlcyB0b2dldGhlciBmcm9tICVkIHBhcnRzOiAiCittc2dpZCAic3BsaXQgcGFja2FnZSBwYXJ0IgorbXNnc3RyICJTa8WCYWRhbmllIHBha2lldHUgJXMgeiAlZCBjesSZxZtjaTogIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo2OSBkcGtnLXNwbGl0L3NwbGl0LmM6MjM3CisjLCBjLWZvcm1hdAorbXNnaWQgImRvbmVcbiIKK21zZ3N0ciAienJvYmlvbmVcbiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZXMgYCUuMjUwcycgYW5kIGAlLjI1MHMnIGFyZSBub3QgcGFydHMgb2YgdGhlIHNhbWUgZmlsZSIKK21zZ3N0ciAicGxpayBcIiUuMjUwc1wiIG9yYXogXCIlLjI1MHNcIiBuaWUgc8SFIGN6xJnFm2NpYW1pIHRlZ28gc2FtZWdvIGFyY2hpd3VtIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo5MAorIywgYy1mb3JtYXQKK21zZ2lkICJ0aGVyZSBhcmUgc2V2ZXJhbCB2ZXJzaW9ucyBvZiBwYXJ0ICVkIC0gYXQgbGVhc3QgYCUuMjUwcycgYW5kIGAlLjI1MHMnIgorbXNnc3RyICIiCisiamVzdCBraWxrYSByw7PFvG55Y2ggd2Vyc2ppIGN6xJnFm2NpICVkIC0gcHJ6eW5ham1uaWVqIFwiJS4yNTBzXCIgb3JheiBcIiUuMjUwc1wiIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzoxMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFydCAlZCBpcyBtaXNzaW5nIgorbXNnc3RyICJicmFrdWplIGN6xJnFm2NpICVkIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo0NworIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIHNwbGl0L2pvaW4gdG9vbDsgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiRGViaWFuIFwiJXNcIiwgcHJvZ3JhbSBkbyBkemllbGVuaWEvxYLEhWN6ZW5pYSBwYWtpZXTDs3csIHdlcnNqYSAlcy5cbiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ29weXJpZ2h0IChDKSAxOTk0LTE5OTYgSWFuIEphY2tzb24uXG4iCittc2dzdHIgIkNvcHlyaWdodCAoQykgMTk5NC0xOTk2IElhbiBKYWNrc29uLlxuIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo2NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtc3wtLXNwbGl0IDxmaWxlPiBbPHByZWZpeD5dICAgICBTcGxpdCBhbiBhcmNoaXZlLlxuIgorIiAgLWp8LS1qb2luIDxwYXJ0PiA8cGFydD4gLi4uICAgICAgSm9pbiBwYXJ0cyB0b2dldGhlci5cbiIKKyIgIC1JfC0taW5mbyA8cGFydD4gLi4uICAgICAgICAgICAgIERpc3BsYXkgaW5mbyBhYm91dCBhIHBhcnQuXG4iCisiICAtYXwtLWF1dG8gLW8gPGNvbXBsZXRlPiA8cGFydD4gICBBdXRvLWFjY3VtdWxhdGUgcGFydHMuXG4iCisiICAtbHwtLWxpc3RxICAgICAgICAgICAgICAgICAgICAgICBMaXN0IHVubWF0Y2hlZCBwaWVjZXMuXG4iCisiICAtZHwtLWRpc2NhcmQgWzxmaWxlbmFtZT4gLi4uXSAgICBEaXNjYXJkIHVubWF0Y2hlZCBwaWVjZXMuXG4iCisiXG4iCittc2dzdHIgIiIKKyJQb2xlY2VuaWE6XG4iCisiICAtc3wtLXNwbGl0IDxwbGlrPiBbPHByZWZpa3M+XSAgUG9kemllbGVuaWUgYXJjaGl3dW0uXG4iCisiICAtanwtLWpvaW4gPGN6xJnFm8SHPiA8Y3rEmcWbxIc+IC4uLiAgUG/FgsSFY3plbmllIGN6xJnFm2NpIGFyY2hpd3VtLlxuIgorIiAgLUl8LS1pbmZvIDxjesSZxZvEhz4gLi4uICAgICAgICAgIFBvZGFuaWUgaW5mb3JtYWNqaSBvIGN6xJnFm2NpLlxuIgorIiAgLWF8LS1hdXRvIC1vIDxrb21wbGV0PiA8Y3rEmcWbxIc+IEF1dG9tYXR5Y3puZSDFgsSFY3plbmllIGN6xJnFm2NpLlxuIgorIiAgLWx8LS1saXN0cSAgICAgICAgICAgICAgICAgICAgIExpc3RhIG5pZXBhc3VqxIVjeWNoIGN6xJnFm2NpLlxuIgorIiAgLWR8LS1kaXNjYXJkIFs8cGxpaz4gLi4uXSAgICAgIFVzdW5pxJljaWUgbmllcGFzdWrEhWN5Y2ggY3rEmcWbY2kuXG4iCisiXG4iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjgyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiT3B0aW9uczpcbiIKKyN8ICIgIC0tZGVwb3RkaXIgPGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLyVzLlxuIgorI3wgIiAgLVN8LS1wYXJ0c2l6ZSA8c2l6ZT4gICAgICAgICAgICAgSW4gS2lCLCBmb3IgLXMgKGRlZmF1bHQgaXMgNDUwKS5cbiIKKyN8ICIgIC1vfC0tb3V0cHV0IDxmaWxlPiAgICAgICAgICAgICAgIEZvciAtaiAoZGVmYXVsdCBpcyA8cGFja2FnZT4tPHZlcnNpb24+LiIKKyN8ICJkZWIpLlxuIgorI3wgIiAgLVF8LS1ucHF1aWV0ICAgICAgICAgICAgICAgICAgICAgQmUgcXVpZXQgd2hlbiAtYSBpcyBub3QgYSBwYXJ0LlxuIgorI3wgIiAgLS1tc2RvcyAgICAgICAgICAgICAgICAgICAgICAgICAgR2VuZXJhdGUgOC4zIGZpbGVuYW1lcy5cbiIKKyN8ICJcbiIKKyN8ICJFeGl0IHN0YXR1czogMCA9IE9LOyAgMSA9IC1hIGlzIG5vdCBhIHBhcnQ7ICAyID0gdHJvdWJsZSFcbiIKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tZGVwb3RkaXIgPGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLyVzLlxuIgorIiAgLVN8LS1wYXJ0c2l6ZSA8c2l6ZT4gICAgICAgICAgICAgSW4gS2lCLCBmb3IgLXMgKGRlZmF1bHQgaXMgNDUwKS5cbiIKKyIgIC1vfC0tb3V0cHV0IDxmaWxlPiAgICAgICAgICAgICAgIEZpbGVuYW1lLCBmb3IgLWogKGRlZmF1bHQgaXNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhY2thZ2U+Xzx2ZXJzaW9uPl88YXJjaD4uZGViKS5cbiIKKyIgIC1RfC0tbnBxdWlldCAgICAgICAgICAgICAgICAgICAgIEJlIHF1aWV0IHdoZW4gLWEgaXMgbm90IGEgcGFydC5cbiIKKyIgIC0tbXNkb3MgICAgICAgICAgICAgICAgICAgICAgICAgIEdlbmVyYXRlIDguMyBmaWxlbmFtZXMuXG4iCisiXG4iCittc2dzdHIgIiIKKyJPcGNqZTpcbiIKKyIgIC0tZGVwb3RkaXIgPGthdGFsb2c+ICAgICAgICAgICBVxbx5Y2llIDxrYXRhbG9ndT4gemFtaWFzdCAlcy8lcy5cbiIKKyIgIC1TfC0tcGFydHNpemUgPHJvem1pYXI+ICAgICAgICBSb3ptaWFyIHcga0IsIGRsYSAtcyAoZG9tecWbbG5pZSBqZXN0IDQ1MClcbiIKKyIgIC1vfC0tb3V0cHV0IDxwbGlrPiAgICAgICAgICAgICBEbGEgLWogKGRvbXnFm2xuaWUgPHBha2lldD4tPHdlcnNqYT4uZGViKS5cbiIKKyIgIC1RfC0tbnBxdWlldCAgICAgICAgICAgICAgICAgICBCcmFrIGtvbXVuaWthdHUsIGdkeSAtYSBuaWUgamVzdCBjesSZxZtjacSFLlxuIgorIiAgLS1tc2RvcyAgICAgICAgICAgICAgICAgICAgICAgIFR3b3J6ZW5pZSBuYXp3IHBsaWvDs3cgdyBmb3JtYWNpZSA4LjMuXG4iCisiXG4iCisiS29kIHBvd3JvdHU6IDAgPSBPSzsgIDEgPSAtYSBuaWUgamVzdCBjesSZxZtjacSFOyAgMiA9IHByb2JsZW0hXG4iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjkyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJFeGl0IHN0YXR1czpcbiIKKyIgIDAgPSBva1xuIgorIiAgMSA9IHdpdGggLS1hdXRvLCBmaWxlIGlzIG5vdCBhIHBhcnRcbiIKKyIgIDIgPSB0cm91YmxlXG4iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6MTAzCittc2dpZCAiVHlwZSBkcGtnLXNwbGl0IC0taGVscCBmb3IgaGVscC4iCittc2dzdHIgIldwaXN6IGRwa2ctc3BsaXQgLS1oZWxwLCBhYnkgb3RyenltYcSHIHBvbW9jLiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6MTE1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGZpbGUgaW4gJS4yNTBzIgorbXNnc3RyICJuaWVzcG9kemlld2FueSBrb25pZWMgcGxpa3UgZGxhICUuMjUwcyIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6MTI2Cittc2dpZCAicGFydCBzaXplIGlzIGZhciB0b28gbGFyZ2Ugb3IgaXMgbm90IHBvc2l0aXZlIgorbXNnc3RyICJyb3ptaWFyIGN6xJnFm2NpIGplc3QgemEgZHXFvHkgbHViIGplc3QgbGljemLEhSB1amVtbsSFIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMzAKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFydCBzaXplIG11c3QgYmUgYXQgbGVhc3QgJWQgS2lCICh0byBhbGxvdyBmb3IgaGVhZGVyKSIKK21zZ3N0ciAicm96bWlhciBjesSZxZtjaSBtdXNpIG1pZcSHIGNvIG5ham1uaWVqICVkayBLaUIgKGFieSB6bWllxZtjacSHIG5hZ8WCw7N3ZWspIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgZGVwb3QgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICJuaWUgbW/FvG5hIG9kY3p5dGHEhyBrYXRhbG9ndSBjesSZxZtjaSBcIiUuMjUwc1wiIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTM0Cittc2dpZCAiLS1hdXRvIHJlcXVpcmVzIHRoZSB1c2Ugb2YgdGhlIC0tb3V0cHV0IG9wdGlvbiIKK21zZ3N0ciAiLS1hdXRvIHd5bWFnYSB1xbx5Y2lhIG9wY2ppIC0tb3V0cHV0IgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTM2Cittc2dpZCAiLS1hdXRvIHJlcXVpcmVzIGV4YWN0bHkgb25lIHBhcnQgZmlsZSBhcmd1bWVudCIKK21zZ3N0ciAiLS1hdXRvIHd5bWFnYSBwb2RhbmlhIGRva8WCYWRuaWUgamVkbmVnbyBwbGlrdSBjesSZxZtjaSIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE0MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5pZSBtb8W8bmEgb2Rjenl0YcSHIHBsaWt1IGN6xJnFm2NpIFwiJS4yNTBzXCIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxNDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiRmlsZSBgJS4yNTBzJyBpcyBub3QgcGFydCBvZiBhIG11bHRpcGFydCBhcmNoaXZlLlxuIgorbXNnc3RyICJQbGlrIFwiJS4yNTBzXCIgbmllIGplc3QgY3rEmcWbY2nEhSBhcmNoaXd1bS5cbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE3OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVvcGVuIHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmllIG1vxbxuYSBvdHdvcnp5xIcgcGxpa3UgY3rEmcWbY2kgXCIlLjI1MHNcIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE4MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBuZXcgZGVwb3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmllIG1vxbxuYSBvdHdvcnp5xIcgbm93ZWdvIHBsaWt1IGN6xJnFm2NpIFwiJS4yNTBzXCIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxODQKK21zZ2lkICJleHRyYWN0aW5nIHNwbGl0IHBhcnQiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE5MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVuYW1lIG5ldyBkZXBvdCBmaWxlIGAlLjI1MHMnIHRvIGAlLjI1MHMnIgorbXNnc3RyICJuaWUgbW/FvG5hIHptaWVuacSHIG5hend5IG5vd2VnbyBwbGlrdSBjesSZxZtjaSB6IFwiJS4yNTBzXCIgbmEgXCIlLjI1MHNcIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE5NgorIywgYy1mb3JtYXQKK21zZ2lkICJQYXJ0ICVkIG9mIHBhY2thZ2UgJXMgZmlsZWQgKHN0aWxsIHdhbnQgIgorbXNnc3RyICJDesSZxZvEhyAlZCBwYWtpZXR1ICVzIG9kbmFsZXppb25hICh3Y2nEhcW8IHBvdHJ6ZWJhICIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjIwMAorbXNnaWQgIiBhbmQgIgorbXNnc3RyICIgb3JheiAiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSB1c2VkLXVwIGRlcG90IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5pZSBtb8W8bmEgdXN1bsSFxIcgdcW8eXRlZ28gcGxpa3UgY3rEmcWbY2kgXCIlLjI1MHNcIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjIzNQorbXNnaWQgIkp1bmsgZmlsZXMgbGVmdCBhcm91bmQgaW4gdGhlIGRlcG90IGRpcmVjdG9yeTpcbiIKK21zZ3N0ciAiVyBrYXRhbG9ndSBjesSZxZtjaSB6bmFqZHVqxIUgc2nEmSBwbGlraSB6YXdpZXJhasSFY2UgxZttaWVjaTpcbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI0MCBkcGtnLXNwbGl0L3F1ZXVlLmM6MjY5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGAlLjI1MHMnIgorbXNnc3RyICJuaWUgbW/FvG5hIHVzdGFsacSHIHN0YW51IFwiJS4yNTBzXCIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNDMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiAlcyAoJWx1IGJ5dGVzKVxuIgorbXNnaWQgIiAlcyAoJWpkIGJ5dGVzKVxuIgorbXNnc3RyICIgJXMgKCVsdSBiYWp0w7N3KVxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAlcyAobm90IGEgcGxhaW4gZmlsZSlcbiIKK21zZ3N0ciAiICVzIChuaWUgamVzdCBwbGlraWVtKVxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjUwCittc2dpZCAiUGFja2FnZXMgbm90IHlldCByZWFzc2VtYmxlZDpcbiIKK21zZ3N0ciAiUGFraWV0eSBqZXN6Y3plIG5pZSBwcnplYnVkb3dhbmU6XG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIFBhY2thZ2UgJXM6IHBhcnQocykgIgorbXNnc3RyICIgUGFraWV0ICVzOiBjesSZxZvEhyhpKSAiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFydCBmaWxlIGAlLjI1MHMnIGlzIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgInBsaWsgY3rEmcWbY2kgXCIlLjI1MHNcIiBuaWUgamVzdCB6d3lrxYJ5bSBwbGlraWVtIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6Mjc4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIodG90YWwgJWx1IGJ5dGVzKVxuIgorbXNnaWQgIih0b3RhbCAlamQgYnl0ZXMpXG4iCittc2dzdHIgIihjYcWCb8WbxIcgJWx1IGJhanTDs3cpXG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzozMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRpc2NhcmQgYCUuMjUwcyciCittc2dzdHIgIm5pZSBtb8W8bmEgdXN1bsSFxIcgXCIlLjI1MHNcIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjMwNQorIywgYy1mb3JtYXQKK21zZ2lkICJEZWxldGVkICVzLlxuIgorbXNnc3RyICJVc3VuacSZdG8gJXMuXG4iCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzo3MCBkcGtnLXNwbGl0L3NwbGl0LmM6NzYgZHBrZy1zcGxpdC9zcGxpdC5jOjgxCittc2dpZCAicGFja2FnZSBmaWVsZCB2YWx1ZSBleHRyYWN0aW9uIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxMzEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gc291cmNlIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5pZSBtb8W8bmEgb3R3b3J6ecSHIHBsaWt1IMW6csOzZMWCb3dlZ28gXCIlLjI1NXNcIiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjEzMworbXNnaWQgInVuYWJsZSB0byBmc3RhdCBzb3VyY2UgZmlsZSIKK21zZ3N0ciAibmllIG1vxbxuYSB1c3RhbGnEhyBzdGFudSBwbGlrdSDFunLDs2TFgm93ZWdvIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTM1CisjLCBjLWZvcm1hdAorbXNnaWQgInNvdXJjZSBmaWxlIGAlLjI1MHMnIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgInBsaWsgxbpyw7NkxYJvd3kgXCIlLjI1NXNcIiBuaWUgamVzdCB6d3lrxYJ5bSBwbGlraWVtIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTUzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0czogIgorbXNnaWQgIlNwbGl0dGluZyBwYWNrYWdlICVzIGludG8gJWQgcGFydDogIgorbXNnaWRfcGx1cmFsICJTcGxpdHRpbmcgcGFja2FnZSAlcyBpbnRvICVkIHBhcnRzOiAiCittc2dzdHJbMF0gIlNrxYJhZGFuaWUgcGFraWV0dSAlcyB6ICVkIGN6xJnFm2NpOiAiCittc2dzdHJbMV0gIlNrxYJhZGFuaWUgcGFraWV0dSAlcyB6ICVkIGN6xJnFm2NpOiAiCittc2dzdHJbMl0gIlNrxYJhZGFuaWUgcGFraWV0dSAlcyB6ICVkIGN6xJnFm2NpOiAiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxOTMKK21zZ2lkICIiCisiSGVhZGVyIGlzIHRvbyBsb25nLCBtYWtpbmcgcGFydCB0b28gbG9uZy4gWW91ciBwYWNrYWdlIG5hbWUgb3IgdmVyc2lvblxuIgorIm51bWJlcnMgbXVzdCBiZSBleHRyYW9yZGluYXJpbHkgbG9uZywgb3Igc29tZXRoaW5nLiBHaXZpbmcgdXAuXG4iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjI0OQorbXNnaWQgIi0tc3BsaXQgbmVlZHMgYSBzb3VyY2UgZmlsZW5hbWUgYXJndW1lbnQiCittc2dzdHIgIi0tc3BsaXQgd3ltYWdhIHBvZGFuaWEgbmF6d3kgcGxpa3Ugxbpyw7NkxYJvd2VnbyIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjI1MgorbXNnaWQgIi0tc3BsaXQgdGFrZXMgYXQgbW9zdCBhIHNvdXJjZSBmaWxlbmFtZSBhbmQgZGVzdGluYXRpb24gcHJlZml4IgorbXNnc3RyICIiCisiLS1zcGxpdCB3eW1hZ2EgcG9kYW5pYSBjbyBuYWp3ecW8ZWogbmF6d3kgcGxpa3Ugxbpyw7NkxYJvd2VnbyBpIHByZWZpa3N1IGRsYSAiCisicGxpa8OzdyBkb2NlbG93eWNoIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6ODQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJcbiIKKyN8ICJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisjfCAiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi4iCittc2dpZCAiIgorIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAtMjAwMiBXaWNoZXJ0IEFra2VybWFuLlxuIgorIkNvcHlyaWdodCAoQykgMjAwOS0yMDEwIFJhcGhhZWwgSGVydHpvZy5cbiIKK21zZ3N0ciAiIgorIlxuIgorIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEwMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtLWluc3RhbGwgPGxpbms+IDxuYW1lPiA8cGF0aD4gPHByaW9yaXR5PlxuIgorIiAgICBbLS1zbGF2ZSA8bGluaz4gPG5hbWU+IDxwYXRoPl0gLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkIGEgZ3JvdXAgb2YgYWx0ZXJuYXRpdmVzIHRvIHRoZSBzeXN0ZW0uXG4iCisiICAtLXJlbW92ZSA8bmFtZT4gPHBhdGg+ICAgcmVtb3ZlIDxwYXRoPiBmcm9tIHRoZSA8bmFtZT4gZ3JvdXAgYWx0ZXJuYXRpdmUuXG4iCisiICAtLXJlbW92ZS1hbGwgPG5hbWU+ICAgICAgcmVtb3ZlIDxuYW1lPiBncm91cCBmcm9tIHRoZSBhbHRlcm5hdGl2ZXMgIgorInN5c3RlbS5cbiIKKyIgIC0tYXV0byA8bmFtZT4gICAgICAgICAgICBzd2l0Y2ggdGhlIG1hc3RlciBsaW5rIDxuYW1lPiB0byBhdXRvbWF0aWMgbW9kZS5cbiIKKyIgIC0tZGlzcGxheSA8bmFtZT4gICAgICAgICBkaXNwbGF5IGluZm9ybWF0aW9uIGFib3V0IHRoZSA8bmFtZT4gZ3JvdXAuXG4iCisiICAtLXF1ZXJ5IDxuYW1lPiAgICAgICAgICAgbWFjaGluZSBwYXJzZWFibGUgdmVyc2lvbiBvZiAtLWRpc3BsYXkgPG5hbWU+LlxuIgorIiAgLS1saXN0IDxuYW1lPiAgICAgICAgICAgIGRpc3BsYXkgYWxsIHRhcmdldHMgb2YgdGhlIDxuYW1lPiBncm91cC5cbiIKKyIgIC0tZ2V0LXNlbGVjdGlvbnMgICAgICAgICBsaXN0IG1hc3RlciBhbHRlcm5hdGl2ZSBuYW1lcyBhbmQgdGhlaXIgc3RhdHVzLlxuIgorIiAgLS1zZXQtc2VsZWN0aW9ucyAgICAgICAgIHJlYWQgYWx0ZXJuYXRpdmUgc3RhdHVzIGZyb20gc3RhbmRhcmQgaW5wdXQuXG4iCisiICAtLWNvbmZpZyA8bmFtZT4gICAgICAgICAgc2hvdyBhbHRlcm5hdGl2ZXMgZm9yIHRoZSA8bmFtZT4gZ3JvdXAgYW5kIGFzayAiCisidGhlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlciB0byBzZWxlY3Qgd2hpY2ggb25lIHRvIHVzZS5cbiIKKyIgIC0tc2V0IDxuYW1lPiA8cGF0aD4gICAgICBzZXQgPHBhdGg+IGFzIGFsdGVybmF0aXZlIGZvciA8bmFtZT4uXG4iCisiICAtLWFsbCAgICAgICAgICAgICAgICAgICAgY2FsbCAtLWNvbmZpZyBvbiBhbGwgYWx0ZXJuYXRpdmVzLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIjxsaW5rPiBpcyB0aGUgc3ltbGluayBwb2ludGluZyB0byAlcy88bmFtZT4uXG4iCisiICAoZS5nLiAvdXNyL2Jpbi9wYWdlcilcbiIKKyI8bmFtZT4gaXMgdGhlIG1hc3RlciBuYW1lIGZvciB0aGlzIGxpbmsgZ3JvdXAuXG4iCisiICAoZS5nLiBwYWdlcilcbiIKKyI8cGF0aD4gaXMgdGhlIGxvY2F0aW9uIG9mIG9uZSBvZiB0aGUgYWx0ZXJuYXRpdmUgdGFyZ2V0IGZpbGVzLlxuIgorIiAgKGUuZy4gL3Vzci9iaW4vbGVzcylcbiIKKyI8cHJpb3JpdHk+IGlzIGFuIGludGVnZXI7IG9wdGlvbnMgd2l0aCBoaWdoZXIgbnVtYmVycyBoYXZlIGhpZ2hlciBwcmlvcml0eSAiCisiaW5cbiIKKyIgIGF1dG9tYXRpYyBtb2RlLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hbHRkaXIgPGRpcmVjdG9yeT4gICAgIGNoYW5nZSB0aGUgYWx0ZXJuYXRpdmVzIGRpcmVjdG9yeS5cbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICBjaGFuZ2UgdGhlIGFkbWluaXN0cmF0aXZlIGRpcmVjdG9yeS5cbiIKKyIgIC0tbG9nIDxmaWxlPiAgICAgICAgICAgICBjaGFuZ2UgdGhlIGxvZyBmaWxlLlxuIgorIiAgLS1mb3JjZSAgICAgICAgICAgICAgICAgIGFsbG93IHJlcGxhY2luZyBmaWxlcyB3aXRoIGFsdGVybmF0aXZlIGxpbmtzLlxuIgorIiAgLS1za2lwLWF1dG8gICAgICAgICAgICAgIHNraXAgcHJvbXB0IGZvciBhbHRlcm5hdGl2ZXMgY29ycmVjdGx5ICIKKyJjb25maWd1cmVkXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gYXV0b21hdGljIG1vZGUgKHJlbGV2YW50IGZvciAtLWNvbmZpZyBvbmx5KVxuIgorIiAgLS12ZXJib3NlICAgICAgICAgICAgICAgIHZlcmJvc2Ugb3BlcmF0aW9uLCBtb3JlIG91dHB1dC5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBxdWlldCBvcGVyYXRpb24sIG1pbmltYWwgb3V0cHV0LlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIgorIlXFvHljaWU6ICVzIFs8b3BjamE+IC4uLl0gPHBvbGVjZW5pZT5cbiIKKyJcbiIKKyJQb2xlY2VuaWE6XG4iCisiICAtLWFkZCA8d8WCYcWbY2ljaWVsPiA8Z3J1cGE+IDx0cnliPiA8cGxpaz5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBkb2RhamUgbm93eSB3cGlzIGRvIGJhenkgZGFueWNoLlxuIgorIiAgLS1yZW1vdmUgPHBsaWs+ICAgICAgICAgIHVzdXdhIHBsaWsgeiBiYXp5IGRhbnljaC5cbiIKKyIgIC0tbGlzdCBbPHd6b3J6ZWMtZ2xvYj5dICB3ecWbd2lldGxhIGJpZcW8xIVjZSBuYWRwaXNhbmlhIHogYmF6eSBkYW55Y2guXG4iCisiXG4iCisiT3BjamU6XG4iCisiICAtLWFkbWluZGlyIDxrYXRhbG9nPiAgICAgdXN0YXdpYSBrYXRhbG9nIHphd2llcmFqxIVjeSBwbGlrIHN0YXRvdmVycmlkZS5cbiIKKyIgIC0tdXBkYXRlICAgICAgICAgICAgICAgICBuYXR5Y2htaWFzdCBha3R1YWxpenVqZSBwcmF3YSBkbyBwbGlrdS5cbiIKKyIgIC0tZm9yY2UgICAgICAgICAgICAgICAgICB3eW11c3phIGFrY2rEmSwgbmF3ZXQgamXFvGVsaSB0ZXN0eSBieSB6YWJyb25pxYJ5LlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHRyeWIgY2ljaHksIGtvbXVuaWthdHkgb2dyYW5pY3pvbmUgZG8gbWluaW11bS5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICB3ecWbd2lldGxhIHRlbiBrb211bmlrYXQgcG9tb2N5LlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHd5xZt3aWV0bGEgaW5mb3JtYWNqZSBvIHdlcnNqaS5cbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTYzCisjLCBmdXp6eQorI3wgbXNnaWQgInBhcnNlIGVycm9yIgorbXNnaWQgImVycm9yIgorbXNnc3RyICJixYLEhWQgcGFyc293YW5pYSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE5MworbXNnaWQgIndhcm5pbmciCittc2dzdHIgIm9zdHJ6ZcW8ZW5pZSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjM1NgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidHdvIGNvbW1hbmRzIHNwZWNpZmllZDogJXMgYW5kIC0tJXMiCittc2dpZCAidHdvIGNvbW1hbmRzIHNwZWNpZmllZDogLS0lcyBhbmQgLS0lcyIKK21zZ3N0ciAicG9kYW5vIGR3YSBwb2xlY2VuaWE6ICVzIGkgLS0lcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjM4NworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiY2Fubm90IG9wZW4gZGl2ZXJzaW9uczogJXMiCittc2dpZCAiY2Fubm90IGFwcGVuZCB0byAnJXMnIgorbXNnc3RyICJuaWUgbW/FvG5hIG90d29yennEhyBsaXN0eSBvbWluacSZdHljaCBwbGlrw7N3OiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjU1NgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHJlbW92ZSAlczogJXMiCittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSAnJXMnIgorbXNnc3RyICJuaWUgbW/FvG5hIHVzdW7EhcSHICVzOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGZpbGUgaW4gJXMgd2hpbGUgdHJ5aW5nIHRvIHJlYWQgJXMiCittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgZmlsZSB3aGlsZSB0cnlpbmcgdG8gcmVhZCAlcyIKK21zZ3N0ciAibmllc3BvZHppZXdhbnkga29uaWVjIHBsaWt1IHcgJXMgcG9kY3phcyBwcsOzYnkgb2Rjenl0dSAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAid2hpbGUgcmVhZGluZyAlczogJXMiCittc2dzdHIgInBvZGN6YXMgb2Rjenl0dSAlczogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTE5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBmaWxlIGluICVzIHdoaWxlIHRyeWluZyB0byByZWFkICVzIgorbXNnaWQgImxpbmUgbm90IHRlcm1pbmF0ZWQgd2hpbGUgdHJ5aW5nIHRvIHJlYWQgJXMiCittc2dzdHIgIm5pZXNwb2R6aWV3YW55IGtvbmllYyBwbGlrdSB3ICVzIHBvZGN6YXMgcHLDs2J5IG9kY3p5dHUgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGNvcnJ1cHQ6ICVzIgorbXNnc3RyICIlcyB1c3prb2R6b25lOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAibmV3bGluZXMgcHJvaGliaXRlZCBpbiB1cGRhdGUtYWx0ZXJuYXRpdmVzIGZpbGVzICglcykiCittc2dzdHIgInpuYWtpIG5vd2VqIGxpbmlpIHPEhSB6YWJyb25pb25lIHcgcGxpa2FjaCB1cGRhdGUtYWx0ZXJuYXRpdmVzICglcykiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTYzCittc2dpZCAic2xhdmUgbmFtZSIKK21zZ3N0ciAibmF6d2EgcG9kcnrEmWRuYSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNzEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImR1cGxpY2F0ZSBzbGF2ZSAlcyIKK21zZ2lkICJkdXBsaWNhdGUgc2xhdmUgbmFtZSAlcyIKK21zZ3N0ciAicG93aWVsb25hIHdhcnRvxZvEhyBkb3dpxIV6YW5pYSBzeW1ib2xpY3puZWdvICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE3NAorbXNnaWQgInNsYXZlIGxpbmsiCittc2dzdHIgImRvd2nEhXphbmllIHBvZHJ6xJlkbmUiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTc4CisjLCBjLWZvcm1hdAorbXNnaWQgInNsYXZlIGxpbmsgc2FtZSBhcyBtYWluIGxpbmsgJXMiCittc2dzdHIgImRvd2nEhXphbmllIHBvZHJ6xJlkbmUgdGFraWUgc2FtbyBqYWsgZG93acSFemFuaWUgZ8WCw7N3bmUgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTg1IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDEyCisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBzbGF2ZSBsaW5rICVzIgorbXNnc3RyICJwb3dpZWxvbmUgZG93acSFemFuaWUgcG9kcnrEmWRuZSAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMDQKK21zZ2lkICJtYXN0ZXIgZmlsZSIKK21zZ3N0ciAicGxpayBuYWRyesSZZG55IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIxMworIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgcGF0aCAlcyIKK21zZ3N0ciAicG93aWVsb25hIMWbY2llxbxrYSAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImFsdGVybmF0aXZlICVzIChwYXJ0IG9mIGxpbmsgZ3JvdXAgJXMpIGRvZXNuJ3QgZXhpc3QuIFJlbW92aW5nIGZyb20gbGlzdCBvZiAiCisiYWx0ZXJuYXRpdmVzLiIKK21zZ3N0ciAiIgorImFsdGVybmF0eXdhICVzICh6YXdhcnRhIHcgZ3J1cGllIGRvd2nEhXphxYQgJXMpIG5pZSBpc3RuaWVqZS4gVXN1d2FuaWUgamVqIHogIgorImxpc3R5IGFsdGVybmF0eXcuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIyOSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI0MAorbXNnaWQgInByaW9yaXR5IgorbXNnc3RyICJwcmlvcnl0ZXQiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjMyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjQ5Cittc2dpZCAic2xhdmUgZmlsZSIKK21zZ3N0ciAicGxpayBwb2RyesSZZG55IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI0NAorIywgYy1mb3JtYXQKK21zZ2lkICJwcmlvcml0eSBvZiAlczogJXMiCittc2dzdHIgInByaW9yeXRldCAlczogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjk3Cittc2dpZCAic3RhdHVzIgorbXNnc3RyICJzdGF0dXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjk5Cittc2dpZCAiaW52YWxpZCBzdGF0dXMiCittc2dzdHIgIm5pZXBvcHJhd255IHN0YXR1cyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzMDQKKyMsIGZ1enp5Cittc2dpZCAibWFzdGVyIGxpbmsiCittc2dzdHIgInBsaWsgbmFkcnrEmWRueSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGlzY2FyZGluZyBvYnNvbGV0ZSBzbGF2ZSBsaW5rICVzICglcykuIgorbXNnc3RyICJvZHJ6dWNhbmllIHByemVzdGFyemHFgmVnbyBkb3dpxIV6YW5pYSBwb2RyesSZZG5lZ28gJXMgKCVzKS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTAyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTY5CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYzOAorbXNnaWQgImF1dG8gbW9kZSIKK21zZ3N0ciAidHJ5YiBhdXRvIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU3OAorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MzkKK21zZ2lkICJtYW51YWwgbW9kZSIKK21zZ3N0ciAidHJ5YiByxJljem55IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwNQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiICBsaW5rIGN1cnJlbnRseSBwb2ludHMgdG8gJXMiCittc2dzdHIgIiBkb3dpxIV6YW5pZSBvYmVjbmllIHdza2F6dWplIG5hICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwOAorIywgZnV6enkKK21zZ2lkICIgIGxpbmsgY3VycmVudGx5IGFic2VudCIKK21zZ3N0ciAiIG9iZWNuaWUgYnJhayBkb3dpxIV6YW5pYSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiVzIC0gcHJpb3JpdHkgJXMiCittc2dpZCAiJXMgLSBwcmlvcml0eSAlZCIKK21zZ3N0ciAiJXMgLSBwcmlvcnl0ZXQgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTE1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIgIHNsYXZlICVzOiAlcyIKK21zZ3N0ciAiIGRvd2nEhXphbmllIHBvZHJ6xJlkbmUgJXM6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUyMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiQ3VycmVudCAnYmVzdCcgdmVyc2lvbiBpcyAnJXMnLiIKK21zZ3N0ciAiT2JlY25pZSBcIm5hamxlcHN6xIVcIiB3ZXJzasSFIGplc3QgJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUyNAorbXNnaWQgIk5vIHZlcnNpb25zIGF2YWlsYWJsZS4iCittc2dzdHIgIsW7YWRuYSB3ZXJzamEgbmllIGplc3QgZG9zdMSZcG5hLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NTMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIlRoZXJlIGFyZSAlcyBjaG9pY2VzIGZvciB0aGUgYWx0ZXJuYXRpdmUgJXMgKHByb3ZpZGluZyAlcykuIgorbXNnaWQgIlRoZXJlIGlzICVkIGNob2ljZSBmb3IgdGhlIGFsdGVybmF0aXZlICVzIChwcm92aWRpbmcgJXMpLiIKK21zZ2lkX3BsdXJhbCAiVGhlcmUgYXJlICVkIGNob2ljZXMgZm9yIHRoZSBhbHRlcm5hdGl2ZSAlcyAocHJvdmlkaW5nICVzKS4iCittc2dzdHJbMF0gIkplc3QgJXMgZG9zdMSZcG55Y2ggYWx0ZXJuYXR5dyBkbGEgJXMgKGRvc3RhcmN6YWrEhWN5Y2ggJXMpLiIKK21zZ3N0clsxXSAiSmVzdCAlcyBkb3N0xJlwbnljaCBhbHRlcm5hdHl3IGRsYSAlcyAoZG9zdGFyY3phasSFY3ljaCAlcykuIgorbXNnc3RyWzJdICJKZXN0ICVzIGRvc3TEmXBueWNoIGFsdGVybmF0eXcgZGxhICVzIChkb3N0YXJjemFqxIVjeWNoICVzKS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYwCittc2dpZCAiU2VsZWN0aW9uIgorbXNnc3RyICJXeWLDs3IiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYxCittc2dpZCAiUGF0aCIKK21zZ3N0ciAixZpjaWXFvGthIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2MQorbXNnaWQgIlByaW9yaXR5IgorbXNnc3RyICJQcmlvcnl0ZXQiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYxCittc2dpZCAiU3RhdHVzIgorbXNnc3RyICJTdGF0dXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTgyCisjLCBjLWZvcm1hdAorbXNnaWQgIlByZXNzIGVudGVyIHRvIGtlZXAgdGhlIGN1cnJlbnQgY2hvaWNlWypdLCBvciB0eXBlIHNlbGVjdGlvbiBudW1iZXI6ICIKK21zZ3N0ciAiIgorIk5hY2nFm25paiBFbnRlciwgYWJ5IHBvem9zdGF3acSHIGJpZcW8xIVjeSB3eWLDs3JbKl0sIGFsYm8gd3Bpc3ogd3licmFueSBudW1lcjoiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNzIxCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vdCByZXBsYWNpbmcgJXMgd2l0aCBhIGxpbmsuIgorbXNnc3RyICJwb21pbmnEmWNpZSB6YXN0xIVwaWVuaWEgJXMgZG93acSFemFuaWVtLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3NjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2FuJ3QgaW5zdGFsbCB1bmtub3duIGNob2ljZSAlcyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTc4MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisic2tpcCBjcmVhdGlvbiBvZiAlcyBiZWNhdXNlIGFzc29jaWF0ZWQgZmlsZSAlcyAob2YgbGluayBncm91cCAlcykgZG9lc24ndCAiCisiZXhpc3QuIgorbXNnc3RyICIiCisicG9taW5pxJljaWUgdHdvcnplbmlhICVzIHBvbmlld2HFvCBwb3dpxIV6YW55IHBsaWsgJXMgKGx1YiBncnVwYSBkb3dpxIV6YcWEICVzKSAiCisibmllIGlzdG5pZWplLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3OTAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIm5vdCByZXBsYWNpbmcgJXMgd2l0aCBhIGxpbmsuIgorbXNnaWQgIm5vdCByZW1vdmluZyAlcyBzaW5jZSBpdCdzIG5vdCBhIHN5bWxpbmsuIgorbXNnc3RyICJwb21pbmnEmWNpZSB6YXN0xIVwaWVuaWEgJXMgZG93acSFemFuaWVtLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNDEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2FsbCAlcy4iCittc2dzdHIgIld5d2/FgmFuaWUgJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA1MQorIywgYy1mb3JtYXQKK21zZ2lkICJBbHRlcm5hdGl2ZSAlcyB1bmNoYW5nZWQgYmVjYXVzZSBjaG9pY2UgJXMgaXMgbm90IGF2YWlsYWJsZS4iCittc2dzdHIgIk5pZSB6bWllbmlvbmEgYWx0ZXJuYXR5d2EgJXMgcG9uaWV3YcW8IHd5YsOzciAlcyBqZXN0IG5pZWRvc3TEmXBueS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDU1CisjLCBjLWZvcm1hdAorbXNnaWQgIlNraXAgdW5rbm93biBhbHRlcm5hdGl2ZSAlcy4iCittc2dzdHIgIlBvbWluacSZY2llIG5pZXpuYW5laiBhbHRlcm5hdHl3eSAlcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDc3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBmaWxlIGluICVzIHdoaWxlIHRyeWluZyB0byByZWFkICVzIgorbXNnaWQgImxpbmUgdG9vIGxvbmcgb3Igbm90IHRlcm1pbmF0ZWQgd2hpbGUgdHJ5aW5nIHRvIHJlYWQgJXMiCittc2dzdHIgIm5pZXNwb2R6aWV3YW55IGtvbmllYyBwbGlrdSB3ICVzIHBvZGN6YXMgcHLDs2J5IG9kY3p5dHUgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDkwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTAzCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjExMworIywgYy1mb3JtYXQKK21zZ2lkICJTa2lwIGludmFsaWQgbGluZTogJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVuYW1pbmcgJXMgbGluayBmcm9tICVzIHRvICVzLiIKK21zZ3N0ciAiem1pYW5hIG5hend5IGRvd2nEhXphbmlhICVzIHogJXMgbmEgJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE3MworIywgYy1mb3JtYXQKK21zZ2lkICJyZW5hbWluZyAlcyBzbGF2ZSBsaW5rIGZyb20gJXMgdG8gJXMuIgorbXNnc3RyICJ6bWlhbmEgbmF6d3kgZG93acSFemFuaWEgcG9kcnrEmWRuZWdvICVzIHogJXMgbmEgJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE4OQorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBuYW1lICglcykgbXVzdCBub3QgY29udGFpbiAnLycgYW5kIHNwYWNlcy4iCittc2dzdHIgIm5hendhIGFsdGVybmF0eXd5ICglcykgbmllIG1vxbxlIHphd2llcmHEhyBcIi9cIiBpIHNwYWNqaS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTkzCisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIGxpbmsgaXMgbm90IGFic29sdXRlIGFzIGl0IHNob3VsZCBiZTogJXMiCittc2dzdHIgImRvd2nEhXphbmllIGFsdGVybmF0eXd5IG5pZSBqZXN0IGJlend6Z2zEmWRuZSBqYWsgamVzdCB0byB3eW1hZ2FuZTogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTk3CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIHBhdGggaXMgbm90IGFic29sdXRlIGFzIGl0IHNob3VsZCBiZTogJXMiCittc2dzdHIgIsWbY2llxbxrYSBhbHRlcm5hdHl3eSBuaWUgamVzdCBiZXp3emdsxJlkbmEgamFrIGplc3QgdG8gd3ltYWdhbmU6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjIyNAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgbWFzdGVyOiAlcyIKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBtYXN0ZXI6IGl0IGlzIGEgc2xhdmUgb2YgJXMiCittc2dzdHIgImFsdGVybmF0eXdhICVzIG5pZSBtb8W8ZSBiecSHIG5hZHJ6xJlkbmE6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjIzMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI2NworIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBsaW5rICVzIGlzIGFscmVhZHkgbWFuYWdlZCBieSAlcy4iCittc2dzdHIgImRvd2nEhXphbmllIGFsdGVybmF0eXd5ICVzIGplc3QganXFvCB6YXJ6xIVkemFuZSBwcnpleiAlcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjQxCisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIHBhdGggJXMgZG9lc24ndCBleGlzdC4iCittc2dzdHIgIsWbY2llxbxrYSBhbHRlcm5hdHl3eSAlcyBuaWUgaXN0bmllamUuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI1NAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgc2xhdmUgb2YgJXM6ICVzIgorbXNnaWQgImFsdGVybmF0aXZlICVzIGNhbid0IGJlIHNsYXZlIG9mICVzOiBpdCBpcyBhIG1hc3RlciBhbHRlcm5hdGl2ZS4iCittc2dzdHIgImFsdGVybmF0eXdhICVzIG5pZSBtb8W8ZSBiecSHIHBvZHJ6xJlkbmEgd3pnbMSZZGVtICVzOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNTgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImFsdGVybmF0aXZlICVzIGNhbid0IGJlIG1hc3RlcjogJXMiCittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgc2xhdmUgb2YgJXM6IGl0IGlzIGEgc2xhdmUgb2YgJXMiCittc2dzdHIgImFsdGVybmF0eXdhICVzIG5pZSBtb8W8ZSBiecSHIG5hZHJ6xJlkbmE6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI3OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYWx0ZXJuYXRpdmUgbGluayAlcyBpcyBhbHJlYWR5IG1hbmFnZWQgYnkgJXMuIgorbXNnaWQgImFsdGVybmF0aXZlIGxpbmsgJXMgaXMgYWxyZWFkeSBtYW5hZ2VkIGJ5ICVzIChzbGF2ZSBvZiAlcykuIgorbXNnc3RyICJkb3dpxIV6YW5pZSBhbHRlcm5hdHl3eSAlcyBqZXN0IGp1xbwgemFyesSFZHphbmUgcHJ6ZXogJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjMyNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGFyZ3VtZW50IGAlcyciCittc2dzdHIgIm5pZXpuYW55IGFyZ3VtZW50IFwiJXNcIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNDMKK21zZ2lkICItLWluc3RhbGwgbmVlZHMgPGxpbms+IDxuYW1lPiA8cGF0aD4gPHByaW9yaXR5PiIKK21zZ3N0ciAiLS1pbnN0YWxsIHd5bWFnYSBwb2RhbmlhIDxkb3dpxIV6YW5pYT4gPG5hend5PiA8xZtjaWXFvGtpPiA8cHJpb3J5dGV0dT4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzQ2IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzk3Cittc2dpZCAiPGxpbms+IGFuZCA8cGF0aD4gY2FuJ3QgYmUgdGhlIHNhbWUiCittc2dzdHIgIjxkb3dpxIV6YW5pZT4gaSA8xZtjaWXFvGthPiBuaWUgbW9nxIUgYnnEhyB0YWtpZSBzYW1lIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM0OQorbXNnaWQgInByaW9yaXR5IG11c3QgYmUgYW4gaW50ZWdlciIKK21zZ3N0ciAicHJpb3J5dGV0IG11c2kgYnnEhyBsaWN6YsSFIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM2MgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIDxuYW1lPiA8cGF0aD4iCittc2dzdHIgIi0tJXMgd3ltYWdhIGFyZ3VtZW50w7N3IDxuYXp3YT4gPMWbY2llxbxrYT4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzc2CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgPG5hbWU+IgorbXNnc3RyICItLSVzIHd5bWFnYSA8bmF6d3k+IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM4OAorbXNnaWQgIi0tc2xhdmUgb25seSBhbGxvd2VkIHdpdGggLS1pbnN0YWxsIgorbXNnc3RyICJvcGNqYSAtLXNsYXZlIGRvcHVzemN6YWxuYSB0eWxrbyB6IC0taW5zdGFsbCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzOTAKK21zZ2lkICItLXNsYXZlIG5lZWRzIDxsaW5rPiA8bmFtZT4gPHBhdGg+IgorbXNnc3RyICItLXNsYXZlIHd5bWFnYSA8ZG93acSFemFuaWE+IDxuYXp3eT4gPMWbY2llxbxraT4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzk5CisjLCBjLWZvcm1hdAorbXNnaWQgIm5hbWUgJXMgaXMgYm90aCBwcmltYXJ5IGFuZCBzbGF2ZSIKK21zZ3N0ciAibmF6d2EgJXMgamVzdCB6YXLDs3dubyBnxYLDs3duYSwgamFrIGkgcG9kcnrEmWRuYSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAibGluayAlcyBpcyBib3RoIHByaW1hcnkgYW5kIHNsYXZlIgorbXNnc3RyICJkb3dpxIV6YW5pZSAlcyBqZXN0IHphcsOzd25vIGfFgsOzd25lLCBqYWsgaSBwb2RyesSZZG5lIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQyMgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGEgPGZpbGU+IGFyZ3VtZW50IgorbXNnc3RyICItLSVzIHd5bWFnYSBwb2RhbmlhIGFyZ3VtZW50dSA8cGxpaz4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDQ4CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gb3B0aW9uIGAlcyciCittc2dzdHIgIm5pZXpuYW5hIG9wY2phIFwiJXNcIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0NTMKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIm5lZWQgLS1kaXNwbGF5LCAtLXF1ZXJ5LCAtLWxpc3QsIC0tZ2V0LXNlbGVjdGlvbnMsIC0tY29uZmlnLC0tc2V0LCAtLXNldC0iCisjfCAic2VsZWN0aW9ucywgLS1pbnN0YWxsLCAtLXJlbW92ZSwgLS1hbGwsIC0tcmVtb3ZlLWFsbCBvciAtLWF1dG8iCittc2dpZCAiIgorIm5lZWQgLS1kaXNwbGF5LCAtLXF1ZXJ5LCAtLWxpc3QsIC0tZ2V0LXNlbGVjdGlvbnMsIC0tY29uZmlnLCAtLXNldCwgLS1zZXQtIgorInNlbGVjdGlvbnMsIC0taW5zdGFsbCwgLS1yZW1vdmUsIC0tYWxsLCAtLXJlbW92ZS1hbGwgb3IgLS1hdXRvIgorbXNnc3RyICIiCisibmFsZcW8eSBwb2RhxIcgLS1kaXNwbGF5LCAtLXF1ZXJ5LCAtLWxpc3QsIC0tZ2V0LXNlbGVjdGlvbnMsIC0tY29uZmlnLC0tc2V0LCAtLSIKKyJzZXQtc2VsZWN0aW9ucywgLS1pbnN0YWxsLCAtLXJlbW92ZSwgLS1hbGwsIC0tcmVtb3ZlLWFsbCBsdWIgLS1hdXRvIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQ5MAorIywgZnV6enkKKyN8IG1zZ2lkICI8c3RhbmRhcmQgb3V0cHV0PiIKK21zZ2lkICI8c3RhbmRhcmQgaW5wdXQ+IgorbXNnc3RyICI8c3RhbmRhcmRvd2Ugd3lqxZtjaWU+IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUwMCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUwMworIywgYy1mb3JtYXQKK21zZ2lkICJubyBhbHRlcm5hdGl2ZXMgZm9yICVzLiIKK21zZ3N0ciAiYnJhayBhbHRlcm5hdHl3IGRsYSAlcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTMwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIlcyBpcyBkYW5nbGluZywgaXQgd2lsbCBiZSB1cGRhdGVkIHdpdGggYmVzdCBjaG9pY2UuIgorbXNnaWQgIiVzLyVzIGlzIGRhbmdsaW5nLCBpdCB3aWxsIGJlIHVwZGF0ZWQgd2l0aCBiZXN0IGNob2ljZS4iCittc2dzdHIgIiIKKyIlcyBuaWUgamVzdCBwb3ByYXdueW0gZG93acSFemFuaWVtLCB6b3N0YW5pZSB6YWt0dWFsaXpvd2FuZSBuYWpsZXBzenltICIKKyJ3eWJvcmVtLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MzQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIlcyBoYXMgYmVlbiBjaGFuZ2VkIChtYW51YWxseSBvciBieSBhIHNjcmlwdCkuIFN3aXRjaGluZyB0byBtYW51YWwgIgorI3wgInVwZGF0ZXMgb25seS4iCittc2dpZCAiIgorIiVzLyVzIGhhcyBiZWVuIGNoYW5nZWQgKG1hbnVhbGx5IG9yIGJ5IGEgc2NyaXB0KS4gU3dpdGNoaW5nIHRvIG1hbnVhbCAiCisidXBkYXRlcyBvbmx5LiIKK21zZ3N0ciAiIgorIiVzIHpvc3RhxYIgem1pZW5pb255IChyxJljem5pZSBsdWIgcHJ6ZXogc2tyeXB0KS4gUHJ6ZcWCxIVjemFuaWUgZG8gdHJ5YnUgIgorInLEmWN6bnljaCBha3R1YWxpemFjamkuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU0MgorIywgYy1mb3JtYXQKK21zZ2lkICJzZXR0aW5nIHVwIGF1dG9tYXRpYyBzZWxlY3Rpb24gb2YgJXMuIgorbXNnc3RyICJ1c3Rhd2lhbmllIGF1dG9tYXR5Y3puZWdvIHd5YmllcmFuaWEgJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU1MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgZm9yICVzIG5vdCByZWdpc3RlcmVkLCBub3Qgc2V0dGluZy4iCittc2dzdHIgImFsdGVybmF0eXdhICVzIGRsYSAlcyBuaWUgamVzdCB6YXJlamVzdHJvd2FuYSwgbmllIGLEmWR6aWUgdXN1bmnEmXRhLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NTcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiVGhlcmUgaXMgbm8gcHJvZ3JhbSB3aGljaCBwcm92aWRlcyAlcy4iCittc2dzdHIgIk5pZSB6bmFsZXppb25vIHByb2dyYW11LCBrdMOzcnkgZG9zdGFyY3phICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NjUgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NzUKK21zZ2lkICJOb3RoaW5nIHRvIGNvbmZpZ3VyZS4iCittc2dzdHIgIk5pZSBtYSBuaWMgZG8gc2tvbmZpZ3Vyb3dhbmlhLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiVGhlcmUgaXMgb25seSBvbmUgYWx0ZXJuYXRpdmUgaW4gbGluayBncm91cCAlczogJXMiCittc2dzdHIgIkplc3QgdHlsa28gamVkbmEgYWx0ZXJuYXR5d2EgdyBncnVwaWUgZG93acSFemHFhCAlczogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTg0CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlICVzIGZvciAlcyBub3QgcmVnaXN0ZXJlZCwgbm90IHJlbW92aW5nLiIKK21zZ3N0ciAiYWx0ZXJuYXR5d2EgJXMgZGxhICVzIG5pZSBqZXN0IHphcmVqZXN0cm93YW5hLCBuaWUgYsSZZHppZSB1c3VuacSZdGEuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU5MgorIywgYy1mb3JtYXQKK21zZ2lkICJyZW1vdmluZyBtYW51YWxseSBzZWxlY3RlZCBhbHRlcm5hdGl2ZSAtIHN3aXRjaGluZyAlcyB0byBhdXRvIG1vZGUiCittc2dzdHIgInVzdXdhbmllIGFsdGVybmF0eXd5IHd5YnJhbmVqIHLEmWN6bmllIC0gcHJ6ZcWCxIVjemFuaWUgJXMgZG8gdHJ5YnUgYXV0byIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MTcKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImF1dG9tYXRpYyB1cGRhdGVzIG9mICVzIGFyZSBkaXNhYmxlZCwgbGVhdmluZyBpdCBhbG9uZS4iCittc2dpZCAiYXV0b21hdGljIHVwZGF0ZXMgb2YgJXMvJXMgYXJlIGRpc2FibGVkLCBsZWF2aW5nIGl0IGFsb25lLiIKK21zZ3N0ciAiYXV0b21hdHljem5lIGFrdHVhbGl6YWNqZSAlcyBzxIUgd3nFgsSFY3pvbmUsIHBvem9zdGF3aWFuaWUgZ28gYmV6IHptaWFuLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInRvIHJldHVybiB0byBhdXRvbWF0aWMgdXBkYXRlcyB1c2UgYHVwZGF0ZS1hbHRlcm5hdGl2ZXMgLS1hdXRvICVzJy4iCittc2dpZCAidG8gcmV0dXJuIHRvIGF1dG9tYXRpYyB1cGRhdGVzIHVzZSAnJXMgLS1hdXRvICVzJy4iCittc2dzdHIgIiIKKyJhYnkgcG93csOzY2nEhyBkbyBha3R1YWxpemFjamkgYXV0b21hdHljem55Y2gsIHXFvHlqIFwidXBkYXRlLWFsdGVybmF0aXZlcyAtLSIKKyJhdXRvICVzXCIuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYzNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1c2luZyAlcyB0byBwcm92aWRlICVzICglcykgaW4gJXMuIgorbXNnc3RyICJ1xbx5Y2llICVzIGpha28gZG9zdGFyY3phasSFY2VnbyAlcyAoJXMpIHcgJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjY0NAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiVGhlcmUgaXMgb25seSBvbmUgYWx0ZXJuYXRpdmUgaW4gbGluayBncm91cCAlczogJXMiCittc2dpZCAiIgorImZvcmNpbmcgcmVpbnN0YWxsYXRpb24gb2YgYWx0ZXJuYXRpdmUgJXMgYmVjYXVzZSBsaW5rIGdyb3VwICVzIGlzIGJyb2tlbi4iCittc2dzdHIgIkplc3QgdHlsa28gamVkbmEgYWx0ZXJuYXR5d2EgdyBncnVwaWUgZG93acSFemHFhCAlczogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjUxCisjLCBjLWZvcm1hdAorbXNnaWQgImN1cnJlbnQgYWx0ZXJuYXRpdmUgJXMgaXMgdW5rbm93biwgc3dpdGNoaW5nIHRvICVzIGZvciBsaW5rIGdyb3VwICVzLiIKK21zZ3N0ciAiIgorCisjfiBtc2dpZCAiaXQgaXMgYSBtYXN0ZXIgYWx0ZXJuYXRpdmUuIgorI34gbXNnc3RyICJqZXN0IGFsdGVybmF0eXfEhSBuYWRyesSZZG7EhS4iCisKKyN+IG1zZ2lkICJpdCBpcyBhIHNsYXZlIG9mICVzIgorI34gbXNnc3RyICJqZXN0IGRvd2nEhXphbmllbSBwb2RyesSZZG55bSAlcyIKKworIywgZnV6enkKKyN+fCBtc2dpZCAiY2Fubm90IHN0YXQgb2xkIG5hbWUgYCVzJzogJXMiCisjfiBtc2dpZCAiY2Fubm90IHN0YXQgJXM6ICVzIgorI34gbXNnc3RyICJuaWUgbW/FvG5hIHVzdGFsacSHIHN0YW51IHN0YXJlZ28gcGxpa3UgXCIlc1wiIDogJXMiCisKKyN+IG1zZ2lkICJyZWFkbGluayglcykgZmFpbGVkOiAlcyIKKyN+IG1zZ3N0ciAibmlldWRhbmUgcmVhZGxpbmsoJXMpOiAlcyIKKworIywgZnV6enkKKyN+fCBtc2dpZCAicmVhZGxpbmsoJXMpIGZhaWxlZDogJXMiCisjfiBtc2dpZCAic2NhbiBvZiAlcyBmYWlsZWQ6ICVzIgorI34gbXNnc3RyICJuaWV1ZGFuZSByZWFkbGluayglcyk6ICVzIgorCisjLCBmdXp6eQorI358IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyAlcyIKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlY3V0ZSAlczogJXMiCisjfiBtc2dzdHIgInd5d2/FgmFuaWUgJXMgbmllIHBvd2lvZMWCbyBzacSZIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIG1ha2UgJXMgYSBzeW1saW5rIHRvICVzOiAlcyIKKyN+IG1zZ3N0ciAibmllIG1vxbxuYSB6cm9iacSHICVzIGRvd2nEhXphbmllbSBzeW1ib2xpY3pueW0gZG8gJXM6ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgJXMgYXMgJXM6ICVzIgorI34gbXNnc3RyICJuaWUgbW/FvG5hIHphaW5zdGFsb3dhxIcgJXMgamFrbyAlczogJXMiCisKKyN+IG1zZ2lkICJ3aGlsZSB3cml0aW5nICVzOiAlcyIKKyN+IG1zZ3N0ciAicG9kY3phcyB6YXBpc3UgJXM6ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHJlYWQgJXM6ICVzIgorI34gbXNnc3RyICJuaWUgbW/FvG5hIG9kY3p5dGHEhyAlczogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gY2xvc2UgJXM6ICVzIgorI34gbXNnc3RyICJuaWUgbW/FvG5hIHphbWtuxIXEhyAlczogJXMiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgInVuYWJsZSB0byB3cml0ZSAlczogJXMiCisjfiBtc2dpZCAiY2Fubm90IHdyaXRlICVzOiAlcyIKKyN+IG1zZ3N0ciAibmllIG1vxbxuYSB6YXBpc2HEhyAlczogJXMiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAidW5hYmxlIHRvIHJlbmFtZSBmaWxlICclcycgdG8gJyVzJyIKKyN+IG1zZ3N0ciAibmllIG1vxbxuYSBvdHdvcnp5xIcgcGxpa3Ugxbpyw7NkxYJvd2VnbyBcIiUuMjU1c1wiIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHVuYnVmZmVyIGAlLjI1NXMnIgorI34gbXNnc3RyICJuaWUgbW/FvG5hIHd5a29uYcSHIGZ1bmtjamkgXCJzZXR2YnVmXCIgZGxhIFwiJS4yNTVzXCIiCisKKyN+IG1zZ2lkICJwYXJ0IGZpbGUgYCUuMjUwcycgaGFzIHRyYWlsaW5nIGdhcmJhZ2UiCisjfiBtc2dzdHIgInBsaWsgY3rEmcWbY2kgXCIlLjI1MHNcIiB6YXdpZXJhIMWbbWllY2kiCisKKyN+IG1zZ2lkICJzaXplICU3ZCBvY2N1cnMgJTVkIHRpbWVzXG4iCisjfiBtc2dzdHIgInJvem1pYXIgJTdkIHBvamF3acWCIHNpxJkgJTVkIHJhenlcbiIKKworI34gbXNnaWQgIm91dCBvZiBtZW1vcnkgcHVzaGluZyBlcnJvciBoYW5kbGVyOiAiCisjfiBtc2dzdHIgImJyYWsgcGFtacSZY2kgcG9kY3phcyB6YXBpc3UgbmEgc3Rvc2llIHByb2NlZHVyeSBvYnPFgnVnaSBixYLEmWR1OiAiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gdW5sb2NrIGRwa2cgc3RhdHVzIGRhdGFiYXNlIgorI34gbXNnc3RyICJuaWUgbW/FvG5hIG9kYmxva293YcSHIGJhenkgZGFueWNoIHN0YW51IGRwa2ciCisKKyN+IG1zZ2lkICJjb3B5IGluZm8gZmlsZSBgJS4yNTVzJyIKKyN+IG1zZ3N0ciAia29waW93YW5pZSBwbGlrdSBpbmZvcm1hY2ppIFwiJS4yNTBzXCIiCisKKyN+IG1zZ2lkICJwYXJzZSBlcnJvciIKKyN+IG1zZ3N0ciAiYsWCxIVkIHBhcnNvd2FuaWEiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gd3JpdGUgcGFyc2luZyB3YXJuaW5nIgorI34gbXNnc3RyICJuaWUgbW/FvG5hIHphcGlzYcSHIG9zdHJ6ZcW8ZW5pYSBvIGLFgsSZZHppZSBza8WCYWRuaSIKKworI34gbXNnaWQgInVuYWJsZSB0byBsb2NrIHRyaWdnZXJzIGFyZWEiCisjfiBtc2dzdHIgIm5pZSBtb8W8bmEgdXp5c2thxIcgYmxva2FkeSB3eXp3YWxhY3p5IgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHJ1biAlcyAoJS4yNTBzKSIKKyN+IG1zZ3N0ciAibmllIHBvd2lvZMWCbyBzacSZIHd5a29uYW5pZSBwb2xlY2VuaWEgJXMgKCUuMjUwcykiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBzaGVsbCAoJS4yNTBzKSIKKyN+IG1zZ3N0ciAibmllIG1vxbxuYSB3eXdvxYJhxIcgcG93xYJva2kgKCUuMjUwcykiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gY2hlY2sgZm9yIGV4aXN0ZW5jZSBvZiBgJS4yNTBzJyIKKyN+IG1zZ3N0ciAibmllIG1vxbxuYSBzcHJhd2R6acSHLCBjenkgaXN0bmllamUgXCIlLjI1MHNcIiIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIHJtIGZvciBjbGVhbnVwIgorI34gbXNnc3RyICJuaWUgbW/FvG5hIHd5d2/FgmHEhyBcInJtXCIsIGFieSB3eWN6ecWbY2nEhyBrYXRhbG9nIgorCisjfiBtc2dpZCAiIgorI34gIiVzIGRlYnVnZ2luZyBvcHRpb24sIC0tZGVidWc9PG9jdGFsPiBvciAtRDxvY3RhbD46XG4iCisjfiAiXG4iCisjfiAiIG51bWJlciAgcmVmLiBpbiBzb3VyY2UgICBkZXNjcmlwdGlvblxuIgorI34gIiAgICAgIDEgICBnZW5lcmFsICAgICAgICAgICBHZW5lcmFsbHkgaGVscGZ1bCBwcm9ncmVzcyBpbmZvcm1hdGlvblxuIgorI34gIiAgICAgIDIgICBzY3JpcHRzICAgICAgICAgICBJbnZvY2F0aW9uIGFuZCBzdGF0dXMgb2YgbWFpbnRhaW5lciBzY3JpcHRzXG4iCisjfiAiICAgICAxMCAgIGVhY2hmaWxlICAgICAgICAgIE91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZFxuIgorI34gIiAgICAxMDAgICBlYWNoZmlsZWRldGFpbCAgICBMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZFxuIgorI34gIiAgICAgMjAgICBjb25mZiAgICAgICAgICAgICBPdXRwdXQgZm9yIGVhY2ggY29uZmlndXJhdGlvbiBmaWxlXG4iCisjfiAiICAgIDIwMCAgIGNvbmZmZGV0YWlsICAgICAgIExvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZVxuIgorI34gIiAgICAgNDAgICBkZXBjb24gICAgICAgICAgICBEZXBlbmRlbmNpZXMgYW5kIGNvbmZsaWN0c1xuIgorI34gIiAgICA0MDAgICBkZXBjb25kZXRhaWwgICAgICBMb3RzIG9mIGRlcGVuZGVuY2llcy9jb25mbGljdHMgb3V0cHV0XG4iCisjfiAiICAxMDAwMCAgIHRyaWdnZXJzICAgICAgICAgIFRyaWdnZXIgYWN0aXZhdGlvbiBhbmQgcHJvY2Vzc2luZ1xuIgorI34gIiAgMjAwMDAgICB0cmlnZ2Vyc2RldGFpbCAgICBMb3RzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnNcbiIKKyN+ICIgIDQwMDAwICAgdHJpZ2dlcnNzdHVwaWQgICAgU2lsbHkgYW1vdW50cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzXG4iCisjfiAiICAgMTAwMCAgIHZlcnl2ZXJib3NlICAgICAgIExvdHMgb2YgZHJpdmVsIGFib3V0IGVnIHRoZSBkcGtnL2luZm8gIgorI34gImRpcmVjdG9yeVxuIgorI34gIiAgIDIwMDAgICBzdHVwaWRseXZlcmJvc2UgICBJbnNhbmUgYW1vdW50cyBvZiBkcml2ZWxcbiIKKyN+ICJcbiIKKyN+ICJEZWJ1Z2dpbmcgb3B0aW9ucyBhcmUgYmUgbWl4ZWQgdXNpbmcgYml0d2lzZS1vci5cbiIKKyN+ICJOb3RlIHRoYXQgdGhlIG1lYW5pbmdzIGFuZCB2YWx1ZXMgYXJlIHN1YmplY3QgdG8gY2hhbmdlLlxuIgorI34gbXNnc3RyICIiCisjfiAiJXMgLSBvcGNqZSBkZWJ1Z2dlcmEsIC0tZGVidWc9PMOzc2Vta293bz4gbHViIC1EPMOzc2Vta293bz46XG4iCisjfiAiXG4iCisjfiAiIG51bWVyICAgaWRlbnR5ZmlrYXRvciAgICBvcGlzXG4iCisjfiAiICAgICAxICAgZ2VuZXJhbCAgICAgICAgICBPZ8OzbG5pZSBwcnp5ZGF0bmUgaW5mb3JtYWNqZSBvIHBvc3TEmXBpZVxuIgorI34gIiAgICAgMiAgIHNjcmlwdHMgICAgICAgICAgV3l3b8WCYW5pZSBpIHN0YW4gc2tyeXB0w7N3IG9waWVrdW5hIHBha2lldHVcbiIKKyN+ICIgICAgMTAgICBlYWNoZmlsZSAgICAgICAgIEluZm9ybWFjamUgbyBrYcW8ZHltIHByemV0d2FyemFueW0gcGxpa3VcbiIKKyN+ICIgICAxMDAgICBlYWNoZmlsZWRldGFpbCAgIFdpxJljZWogaW5mb3JtYWNqaSBvIGthxbxkeW0gcHJ6ZXR3YXJ6YW55bSBwbGlrdVxuIgorI34gIiAgICAyMCAgIGNvbmZmICAgICAgICAgICAgSW5mb3JtYWNqZSBvIGthxbxkeW0gcGxpa3Uga29uZmlndXJhY3lqbnltXG4iCisjfiAiICAgMjAwICAgY29uZmZkZXRhaWwgICAgICBXacSZY2VqIGluZm9ybWFjamkgbyBrYcW8ZHltIHBsaWt1ICIKKyN+ICJrb25maWd1cmFjeWpueW1cbiIKKyN+ICIgICAgNDAgICBkZXBjb24gICAgICAgICAgIFphbGXFvG5vxZtjaSBpIGtvbmZsaWt0eVxuIgorI34gIiAgIDQwMCAgIGRlcGNvbmRldGFpbCAgICAgV2nEmWNlaiBpbmZvcm1hY2ppIG8gemFsZcW8bm/Fm2NpYWNoIGkgIgorI34gImtvbmZsaWt0YWNoXG4iCisjfiAiIDEwMDAwICAgdHJpZ2dlcnMgICAgICAgICBBa3R5d293YW5pZSBpIHByemV0d2FyemFuaWUgd3l6d2FsYWN6eVxuIgorI34gIiAyMDAwMCAgIHRyaWdnZXJzZGV0YWlsICAgV2nEmWNlaiBpbmZvcm1hY2ppIGRvdHljesSFY3ljaCB3eXp3YWxhY3p5XG4iCisjfiAiIDQwMDAwICAgdHJpZ2dlcnNzdHVwaWQgICBPZ3JvbW5lIGlsb8WbY2kgaW5mb3JtYWNqaSBkb3R5Y3rEhWN5Y2ggIgorI34gInd5endhbGFjenlcbiIKKyN+ICIgIDEwMDAgICB2ZXJ5dmVyYm9zZSAgICAgIFN6Y3plZ8OzxYJvd2UgaW5mb3JtYWNqZSBtLmluLiBvIGJhemllIGRhbnljaCAiCisjfiAiZHBrZ1xuIgorI34gIiAgMjAwMCAgIHN0dXBpZGx5dmVyYm9zZSAgSmVzemN6ZSB3acSZY2VqIHN6Y3plZ8OzxYJvd3ljaCBpbmZvcm1hY2ppXG4iCisjfiAiXG4iCisjfiAiT3BjamUgZGVidWdnZXJhIG1vZ8SFIGJ5xIcgxYLEhWN6b25lIHBvcHJ6ZXogc3VtxJkgYml0b3fEhSBwb3N6Y3plZ8OzbG55Y2ggIgorI34gIndhcnRvxZtjaS5cbiIKKyN+ICJVd2FnYTogem5hY3plbmlhIGkgd2FydG/Fm2NpIG9wY2ppIG1vZ8SFIHNpxJkgem1pZW5pxIchXG4iCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgIiIKKyN+fCAiJXMgZm9yY2luZyBvcHRpb25zIC0gY29udHJvbCBiZWhhdmlvdXIgd2hlbiBwcm9ibGVtcyBmb3VuZDpcbiIKKyN+fCAiICB3YXJuIGJ1dCBjb250aW51ZTogIC0tZm9yY2UtPHRoaW5nPiw8dGhpbmc+LC4uLlxuIgorI358ICIgIHN0b3Agd2l0aCBlcnJvcjogICAgLS1yZWZ1c2UtPHRoaW5nPiw8dGhpbmc+LC4uLiB8IC0tbm8tZm9yY2UtIgorI358ICI8dGhpbmc+LC4uLlxuIgorI358ICIgRm9yY2luZyB0aGluZ3M6XG4iCisjfnwgIiAgYWxsIFshXSAgICAgICAgICAgICAgICBTZXQgYWxsIGZvcmNlIG9wdGlvbnNcbiIKKyN+fCAiICBkb3duZ3JhZGUgWypdICAgICAgICAgIFJlcGxhY2UgYSBwYWNrYWdlIHdpdGggYSBsb3dlciB2ZXJzaW9uXG4iCisjfnwgIiAgY29uZmlndXJlLWFueSAgICAgICAgICBDb25maWd1cmUgYW55IHBhY2thZ2Ugd2hpY2ggbWF5IGhlbHAgdGhpcyBvbmVcbiIKKyN+fCAiICBob2xkICAgICAgICAgICAgICAgICAgIFByb2Nlc3MgaW5jaWRlbnRhbCBwYWNrYWdlcyBldmVuIHdoZW4gb24gaG9sZFxuIgorI358ICIgIGJhZC1wYXRoICAgICAgICAgICAgICAgUEFUSCBpcyBtaXNzaW5nIGltcG9ydGFudCBwcm9ncmFtcywgcHJvYmxlbXMgIgorI358ICJsaWtlbHlcbiIKKyN+fCAiICBub3Qtcm9vdCAgICAgICAgICAgICAgIFRyeSB0byAoZGUpaW5zdGFsbCB0aGluZ3MgZXZlbiB3aGVuIG5vdCByb290XG4iCisjfnwgIiAgb3ZlcndyaXRlICAgICAgICAgICAgICBPdmVyd3JpdGUgYSBmaWxlIGZyb20gb25lIHBhY2thZ2Ugd2l0aCBhbm90aGVyXG4iCisjfnwgIiAgb3ZlcndyaXRlLWRpdmVydGVkICAgICBPdmVyd3JpdGUgYSBkaXZlcnRlZCBmaWxlIHdpdGggYW4gdW5kaXZlcnRlZCAiCisjfnwgInZlcnNpb25cbiIKKyN+fCAiICBiYWQtdmVyaWZ5ICAgICAgICAgICAgIEluc3RhbGwgYSBwYWNrYWdlIGV2ZW4gaWYgaXQgZmFpbHMgYXV0aGVudGljaXR5ICIKKyN+fCAiY2hlY2tcbiIKKyN+fCAiICBkZXBlbmRzLXZlcnNpb24gWyFdICAgIFR1cm4gZGVwZW5kZW5jeSB2ZXJzaW9uIHByb2JsZW1zIGludG8gd2FybmluZ3NcbiIKKyN+fCAiICBkZXBlbmRzIFshXSAgICAgICAgICAgIFR1cm4gYWxsIGRlcGVuZGVuY3kgcHJvYmxlbXMgaW50byB3YXJuaW5nc1xuIgorI358ICIgIGNvbmZuZXcgWyFdICAgICAgICAgICAgQWx3YXlzIHVzZSB0aGUgbmV3IGNvbmZpZyBmaWxlcywgZG9uJ3QgcHJvbXB0XG4iCisjfnwgIiAgY29uZm9sZCBbIV0gICAgICAgICAgICBBbHdheXMgdXNlIHRoZSBvbGQgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHRcbiIKKyN+fCAiICBjb25mZGVmIFshXSAgICAgICAgICAgIFVzZSB0aGUgZGVmYXVsdCBvcHRpb24gZm9yIG5ldyBjb25maWcgZmlsZXMgaWYgIgorI358ICJvbmVcbiIKKyN+fCAiICAgICAgICAgICAgICAgICAgICAgICAgIGlzIGF2YWlsYWJsZSwgZG9uJ3QgcHJvbXB0LiBJZiBubyBkZWZhdWx0IGNhbiAiCisjfnwgImJlIGZvdW5kLFxuIgorI358ICIgICAgICAgICAgICAgICAgICAgICAgICAgeW91IHdpbGwgYmUgcHJvbXB0ZWQgdW5sZXNzIG9uZSBvZiB0aGUgY29uZm9sZCAiCisjfnwgIm9yXG4iCisjfnwgIiAgICAgICAgICAgICAgICAgICAgICAgICBjb25mbmV3IG9wdGlvbnMgaXMgYWxzbyBnaXZlblxuIgorI358ICIgIGNvbmZtaXNzIFshXSAgICAgICAgICAgQWx3YXlzIGluc3RhbGwgbWlzc2luZyBjb25maWcgZmlsZXNcbiIKKyN+fCAiICBicmVha3MgWyFdICAgICAgICAgICAgIEluc3RhbGwgZXZlbiBpZiBpdCB3b3VsZCBicmVhayBhbm90aGVyIHBhY2thZ2VcbiIKKyN+fCAiICBjb25mbGljdHMgWyFdICAgICAgICAgIEFsbG93IGluc3RhbGxhdGlvbiBvZiBjb25mbGljdGluZyBwYWNrYWdlc1xuIgorI358ICIgIGFyY2hpdGVjdHVyZSBbIV0gICAgICAgUHJvY2VzcyBldmVuIHBhY2thZ2VzIHdpdGggd3JvbmcgYXJjaGl0ZWN0dXJlXG4iCisjfnwgIiAgb3ZlcndyaXRlLWRpciBbIV0gICAgICBPdmVyd3JpdGUgb25lIHBhY2thZ2UncyBkaXJlY3Rvcnkgd2l0aCAiCisjfnwgImFub3RoZXIncyBmaWxlXG4iCisjfnwgIiAgcmVtb3ZlLXJlaW5zdHJlcSBbIV0gICBSZW1vdmUgcGFja2FnZXMgd2hpY2ggcmVxdWlyZSBpbnN0YWxsYXRpb25cbiIKKyN+fCAiICByZW1vdmUtZXNzZW50aWFsIFshXSAgIFJlbW92ZSBhbiBlc3NlbnRpYWwgcGFja2FnZVxuIgorI358ICJcbiIKKyN+fCAiV0FSTklORyAtIHVzZSBvZiBvcHRpb25zIG1hcmtlZCBbIV0gY2FuIHNlcmlvdXNseSBkYW1hZ2UgeW91ciAiCisjfnwgImluc3RhbGxhdGlvbi5cbiIKKyN+fCAiRm9yY2luZyBvcHRpb25zIG1hcmtlZCBbKl0gYXJlIGVuYWJsZWQgYnkgZGVmYXVsdC5cbiIKKyN+IG1zZ2lkICIiCisjfiAiJXMgZm9yY2luZyBvcHRpb25zIC0gY29udHJvbCBiZWhhdmlvdXIgd2hlbiBwcm9ibGVtcyBmb3VuZDpcbiIKKyN+ICIgIHdhcm4gYnV0IGNvbnRpbnVlOiAgLS1mb3JjZS08dGhpbmc+LDx0aGluZz4sLi4uXG4iCisjfiAiICBzdG9wIHdpdGggZXJyb3I6ICAgIC0tcmVmdXNlLTx0aGluZz4sPHRoaW5nPiwuLi4gfCAtLW5vLWZvcmNlLSIKKyN+ICI8dGhpbmc+LC4uLlxuIgorI34gIiBGb3JjaW5nIHRoaW5nczpcbiIKKyN+ICIgIGFsbCBbIV0gICAgICAgICAgICAgICAgU2V0IGFsbCBmb3JjZSBvcHRpb25zXG4iCisjfiAiICBkb3duZ3JhZGUgWypdICAgICAgICAgIFJlcGxhY2UgYSBwYWNrYWdlIHdpdGggYSBsb3dlciB2ZXJzaW9uXG4iCisjfiAiICBjb25maWd1cmUtYW55ICAgICAgICAgIENvbmZpZ3VyZSBhbnkgcGFja2FnZSB3aGljaCBtYXkgaGVscCB0aGlzIG9uZVxuIgorI34gIiAgaG9sZCAgICAgICAgICAgICAgICAgICBQcm9jZXNzIGluY2lkZW50YWwgcGFja2FnZXMgZXZlbiB3aGVuIG9uIGhvbGRcbiIKKyN+ICIgIGJhZC1wYXRoICAgICAgICAgICAgICAgUEFUSCBpcyBtaXNzaW5nIGltcG9ydGFudCBwcm9ncmFtcywgcHJvYmxlbXMgIgorI34gImxpa2VseVxuIgorI34gIiAgbm90LXJvb3QgICAgICAgICAgICAgICBUcnkgdG8gKGRlKWluc3RhbGwgdGhpbmdzIGV2ZW4gd2hlbiBub3Qgcm9vdFxuIgorI34gIiAgb3ZlcndyaXRlICAgICAgICAgICAgICBPdmVyd3JpdGUgYSBmaWxlIGZyb20gb25lIHBhY2thZ2Ugd2l0aCBhbm90aGVyXG4iCisjfiAiICBvdmVyd3JpdGUtZGl2ZXJ0ZWQgICAgIE92ZXJ3cml0ZSBhIGRpdmVydGVkIGZpbGUgd2l0aCBhbiB1bmRpdmVydGVkICIKKyN+ICJ2ZXJzaW9uXG4iCisjfiAiICBiYWQtdmVyaWZ5ICAgICAgICAgICAgIEluc3RhbGwgYSBwYWNrYWdlIGV2ZW4gaWYgaXQgZmFpbHMgYXV0aGVudGljaXR5ICIKKyN+ICJjaGVja1xuIgorI34gIiAgZGVwZW5kcy12ZXJzaW9uIFshXSAgICBUdXJuIGRlcGVuZGVuY3kgdmVyc2lvbiBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzXG4iCisjfiAiICBkZXBlbmRzIFshXSAgICAgICAgICAgIFR1cm4gYWxsIGRlcGVuZGVuY3kgcHJvYmxlbXMgaW50byB3YXJuaW5nc1xuIgorI34gIiAgY29uZm5ldyBbIV0gICAgICAgICAgICBBbHdheXMgdXNlIHRoZSBuZXcgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHRcbiIKKyN+ICIgIGNvbmZvbGQgWyFdICAgICAgICAgICAgQWx3YXlzIHVzZSB0aGUgb2xkIGNvbmZpZyBmaWxlcywgZG9uJ3QgcHJvbXB0XG4iCisjfiAiICBjb25mZGVmIFshXSAgICAgICAgICAgIFVzZSB0aGUgZGVmYXVsdCBvcHRpb24gZm9yIG5ldyBjb25maWcgZmlsZXMgaWYgIgorI34gIm9uZVxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICBpcyBhdmFpbGFibGUsIGRvbid0IHByb21wdC4gSWYgbm8gZGVmYXVsdCBjYW4gYmUgIgorI34gImZvdW5kLFxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICB5b3Ugd2lsbCBiZSBwcm9tcHRlZCB1bmxlc3Mgb25lIG9mIHRoZSBjb25mb2xkICIKKyN+ICJvclxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICBjb25mbmV3IG9wdGlvbnMgaXMgYWxzbyBnaXZlblxuIgorI34gIiAgY29uZm1pc3MgWyFdICAgICAgICAgICBBbHdheXMgaW5zdGFsbCBtaXNzaW5nIGNvbmZpZyBmaWxlc1xuIgorI34gIiAgY29uZmFzayBbIV0gICAgICAgICAgICBPZmZlciB0byByZXBsYWNlIGNvbmZpZyBmaWxlcyB3aXRoIG5vIG5ldyAiCisjfiAidmVyc2lvbnNcbiIKKyN+ICIgIGJyZWFrcyBbIV0gICAgICAgICAgICAgSW5zdGFsbCBldmVuIGlmIGl0IHdvdWxkIGJyZWFrIGFub3RoZXIgcGFja2FnZVxuIgorI34gIiAgY29uZmxpY3RzIFshXSAgICAgICAgICBBbGxvdyBpbnN0YWxsYXRpb24gb2YgY29uZmxpY3RpbmcgcGFja2FnZXNcbiIKKyN+ICIgIGFyY2hpdGVjdHVyZSBbIV0gICAgICAgUHJvY2VzcyBldmVuIHBhY2thZ2VzIHdpdGggd3JvbmcgYXJjaGl0ZWN0dXJlXG4iCisjfiAiICBvdmVyd3JpdGUtZGlyIFshXSAgICAgIE92ZXJ3cml0ZSBvbmUgcGFja2FnZSdzIGRpcmVjdG9yeSB3aXRoIGFub3RoZXIncyAiCisjfiAiZmlsZVxuIgorI34gIiAgdW5zYWZlLWlvIFshXSAgICAgICAgICBEbyBub3QgcGVyZm9ybSBzYWZlIEkvTyBvcGVyYXRpb25zIHdoZW4gIgorI34gInVucGFja2luZ1xuIgorI34gIiAgcmVtb3ZlLXJlaW5zdHJlcSBbIV0gICBSZW1vdmUgcGFja2FnZXMgd2hpY2ggcmVxdWlyZSBpbnN0YWxsYXRpb25cbiIKKyN+ICIgIHJlbW92ZS1lc3NlbnRpYWwgWyFdICAgUmVtb3ZlIGFuIGVzc2VudGlhbCBwYWNrYWdlXG4iCisjfiAiXG4iCisjfiAiV0FSTklORyAtIHVzZSBvZiBvcHRpb25zIG1hcmtlZCBbIV0gY2FuIHNlcmlvdXNseSBkYW1hZ2UgeW91ciAiCisjfiAiaW5zdGFsbGF0aW9uLlxuIgorI34gIkZvcmNpbmcgb3B0aW9ucyBtYXJrZWQgWypdIGFyZSBlbmFibGVkIGJ5IGRlZmF1bHQuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICIlcyAtIG9wY2plIHd5bXVzemVuaWEgLSBkemlhxYJhbmlhIHcgcHJ6eXBhZGt1IHd5c3TEhXBpZW5pYSBwcm9ibGVtw7N3OlxuIgorI34gIiAgb3N0cnplxbwsIGFsZSBrb250eW51dWo6IC0tZm9yY2UtPG9wY2phPiw8b3BjamE+LC4uLlxuIgorI34gIiAgd3N0cnp5bWFqIGkgemfFgm/FmyBixYLEhWQ6IC0tcmVmdXNlLTxvcGNqYT4sPG9wY2phPiwuLi4gfCAtLW5vLWZvcmNlLSIKKyN+ICI8b3BjamE+LC4uLlxuIgorI34gIiBPcGNqZSB3eW11c3plbmlhOlxuIgorI34gIiAgYWxsIFshXSAgICAgICAgICAgICAgIFVzdGF3aWVuaWUgd3N6eXN0a2ljaCBvcGNqaSB3eW11c3plbmlhXG4iCisjfiAiICBkb3duZ3JhZGUgWypdICAgICAgICAgWmFzdMSFcGllbmllIHBha2lldHUgd2N6ZcWbbmllanN6xIUgd2Vyc2rEhVxuIgorI34gIiAgY29uZmlndXJlLWFueSAgICAgICAgIFNrb25maWd1cm93YW5pZSBwYWtpZXTDs3csIGt0w7NyZSBtb2fEhSBwb23Ds2MgIgorI34gImJpZcW8xIVjZW11XG4iCisjfiAiICBob2xkICAgICAgICAgICAgICAgICAgUHJ6ZXR3YXJ6YW5pZSBwYWtpZXTDs3csIGt0w7NyZSB6b3N0YcWCeSB3c3RyenltYW5lXG4iCisjfiAiICBiYWQtcGF0aCAgICAgICAgICAgICAgWmlnbm9yb3dhbmllIGJyYWvDs3cgcHJvZ3JhbcOzdyB3IMWbY2llxbxjZSB6bWllbm5laiAiCisjfiAiUEFUSFxuIgorI34gIiAgbm90LXJvb3QgICAgICAgICAgICAgIFByw7NiYSAoZGUpaW5zdGFsYWNqaSwgZ2R5IGRwa2cgbmllIHVydWNob21pxYIgIgorI34gInJvb3RcbiIKKyN+ICIgIG92ZXJ3cml0ZVsqXSAgICAgICAgICBOYWRwaXNhbmllIHBsaWvDs3cgeiBpbm55Y2ggcGFraWV0w7N3XG4iCisjfiAiICBvdmVyd3JpdGUtZGl2ZXJ0ZWQgICAgTmFwaXNhbmllIG9taW5pxJl0eWNoIHBsaWvDs3cgbmllb21pbmnEmXR5bWlcbiIKKyN+ICIgIGJhZC12ZXJpZnkgICAgICAgICAgICBaaWdub3Jvd2FuaWUgcHJvYmxlbcOzdyB6IHBvdHdpZXJkemVuaWVtICIKKyN+ICJhdXRlbnR5Y3pub8WbY2lcbiIKKyN+ICIgIGRlcGVuZHMtdmVyc2lvbiBbIV0gICBaaWdub3Jvd2FuaWUgcHJvYmxlbcOzdyB6IHdlcnNqxIUgcHJ6eSAiCisjfiAiemFsZcW8bm/Fm2NpYWNoXG4iCisjfiAiICBkZXBlbmRzIFshXSAgICAgICAgICAgWmlnbm9yb3dhbmllIHdzemVsa2ljaCBwcm9ibGVtw7N3IHogemFsZcW8bm/Fm2NpYW1pXG4iCisjfiAiICBjb25mbmV3IFshXSAgICAgICAgICAgVcW8eWNpZSBub3dlZ28gcGxpa3Uga29uZmlndXJhY3lqbmVnbyBiZXogcHl0YW5pYVxuIgorI34gIiAgY29uZm9sZCBbIV0gICAgICAgICAgIFXFvHljaWUgcG9wcnplZG5pZWdvIHBsaWt1IGtvbmZpZ3VyYWN5am5lZ28gYmV6ICIKKyN+ICJweXRhbmlhXG4iCisjfiAiICBjb25mZGVmIFshXSAgICAgICAgICAgVcW8eWNpZSBkb215xZtsbmVqIG9wY2ppIGRsYSBwbGlrw7N3IGtvbmZpZy4gYmV6XG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgcHl0YW5pYSwgY2h5YmEgxbxlIG5pZSB1ZGEgc2nEmSBqZWogem5hbGXFusSHLCBhIG5pZVxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgIHBvZGFubyByw7N3bmllxbwgb3BjamkgY29uZm9sZCBhbmkgY29uZm5ldy5cbiIKKyN+ICIgIGNvbmZtaXNzIFshXSAgICAgICAgICBaYWluc3RhbG93YW5pZSBicmFrdWrEhWN5Y2ggcGxpa8OzdyBrb25maWcuIGJleiAiCisjfiAicHl0YW5pYVxuIgorI34gIiAgYnJlYWtzIFshXSAgICAgICAgICAgIEluc3RhbGFjamEgbWltbyBtb8W8bGl3b8WbY2kgdXN6a29kemVuaWEgaW5ueWNoICIKKyN+ICJwYWtpZXTDs3dcbiIKKyN+ICIgIGNvbmZsaWN0cyBbIV0gICAgICAgICBaYWluc3RhbG93YW5pZSBwYWtpZXTDs3cgdHdvcnrEhWN5Y2gga29uZmxpa3RcbiIKKyN+ICIgIGFyY2hpdGVjdHVyZSBbIV0gICAgICBQcnpldHdhcnphbmllIHBha2lldMOzdyBkbGEgaW5uZWogYXJjaGl0ZWt0dXJ5XG4iCisjfiAiICBvdmVyd3JpdGUtZGlyIFshXSAgICAgTmFkcGlzYW5pZSBrYXRhbG9nw7N3IHBsaWthbWkgeiBpbm55Y2ggcGFraWV0w7N3XG4iCisjfiAiICByZW1vdmUtcmVpbnN0cmVxIFshXSAgVXN1bmnEmWNpZSBwYWtpZXTDs3cgd3ltYWdhasSFY3ljaCBwcnplaW5zdGFsb3dhbmlhXG4iCisjfiAiICByZW1vdmUtZXNzZW50aWFsIFshXSAgVXN1bmnEmWNpZSBpc3RvdG55Y2ggcGFraWV0w7N3XG4iCisjfiAiXG4iCisjfiAiVVdBR0EgLSB1xbx5Y2llIG9wY2ppIG96bmFjem9uZWogWyFdIG1vxbxlIHBvd2HFvG5pZSB1c3prb2R6acSHIGluc3RhbGFjasSZLlxuIgorI34gIk9wY2plIHd5bXVzemXFhCBvem5hY3pvbmUgWypdIHPEhSBkb215xZtsbmllIHfFgsSFY3pvbmUuXG4iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBkcGtnLXNwbGl0IHRvIHNlZSBpZiBpdCdzIHBhcnQgb2YgYSBtdWx0aXBhcnRlciIKKyN+IG1zZ3N0ciAiIgorI34gIm5pZSBtb8W8bmEgd3l3b8WCYcSHIFwiZHBrZy1zcGxpdFwiLCBhYnkgdXBld25pxIcgc2nEmSBjenkgcGxpayBuaWUgamVzdCAiCisjfiAiY3rEmcWbY2nEhSB3aWVsb2N6xJnFm2Npb3dlZ28gemVzdGF3dSIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjbCBkZWJzaWctdmVyaWZ5IgorI34gbXNnc3RyICJuaWUgbW/FvG5hIHd5a29uYcSHIFwiZGVic2lnLXZlcmlmeVwiIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgZHBrZy1kZWIgdG8gZXh0cmFjdCBjb250cm9sIGluZm9ybWF0aW9uIgorI34gbXNnc3RyICJuaWUgbW/FvG5hIHd5d2/FgmHEhyBcImRwa2ctZGViXCIsIGFieSBwb2JyYcSHIHBsaWsga29udHJvbG55IgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGV4ZWMgZHBrZy1kZWIgdG8gZ2V0IGZpbGVzeXN0ZW0gYXJjaGl2ZSIKKyN+IG1zZ3N0ciAibmllIG1vxbxuYSB3eXdvxYJhxIcgXCJkcGtnLWRlYlwiLCBhYnkgcG9icmHEhyBhcmNoaXd1bSB6IHBsaWthbWkiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gZGVsZXRlIGRpc2FwcGVhcmluZyBjb250cm9sIGluZm8gZmlsZSBgJS4yNTBzJyIKKyN+IG1zZ3N0ciAibmllIG1vxbxuYSB1c3VuxIXEhyBicmFrdWrEhWNlZ28gcGxpa3Uga29udHJvbG5lZ28gXCIlLjI1MHNcIiIKKworI34gbXNnaWQgImRwa2c6ICVzIG5vdCBmb3VuZC5cbiIKKyN+IG1zZ3N0ciAiZHBrZzogJXMgbmllIG9kbmFsZXppb255LlxuIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIC4uLi9ERUJJQU4iCisjfiBtc2dzdHIgIm5pZSBtb8W8bmEgem1pZW5pxIcga2F0YWxvZ3UgbmEgLi4uL0RFQklBTiIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIHRhciAtY2YiCisjfiBtc2dzdHIgIm5pZSBtb8W8bmEgd3lrb25hxIcgXCJ0YXIgLWNmXCIiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gbWFrZSB0bXBmaWxlIChjb250cm9sKSIKKyN+IG1zZ3N0ciAibmllIG1vxbxuYSB1dHdvcnp5xIcgdHltY3phc293ZWdvIHBsaWt1IChzZWtjamEgY29udHJvbCkiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gdW5saW5rIHRtcGZpbGUgKGNvbnRyb2wpLCAlcyIKKyN+IG1zZ3N0ciAibmllIG1vxbxuYSB1c3VuxIXEhyB0eW1jemFzb3dlZ28gcGxpa3UgKHNla2NqYSBjb250cm9sKSwgJXMiCisKKyN+IG1zZ2lkICJjb250cm9sIgorI34gbXNnc3RyICJjb250cm9sIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHJld2luZCB0bXBmaWxlIChjb250cm9sKSIKKyN+IG1zZ3N0ciAibmllIG1vxbxuYSBwcnpld2luxIXEhyB0eW1jemFzb3dlZ28gcGxpa3UgKHNla2NqYSBjb250cm9sKSIKKworI34gbXNnaWQgImZhaWxlZCB0byBmc3RhdCB0bXBmaWxlIChjb250cm9sKSIKKyN+IG1zZ3N0ciAibmllIG1vxbxuYSB1c3RhbGnEhyBzdGFudSB0eW1jemFzb3dlZ28gcGxpa3UgKHNla2NqYSBjb250cm9sKSIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIGZpbmQiCisjfiBtc2dzdHIgIm5pZSBtb8W8bmEgd3l3b8WCYcSHIFwiZmluZFwiIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgc2ggLWMgbXYgZm9vLyogJmMiCisjfiBtc2dzdHIgIm5pZSBtb8W8bmEgd3l3b8WCYcSHIFwic2ggLWMgbXYgZm9vLyogJmNcIiIKKworI34gbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtICUuMjUwcyBsZW5ndGggY29udGFpbnMgbnVsbHMiCisjfiBtc2dzdHIgIiIKKyN+ICJwbGlrIFwiJS4yNTBzXCIgamVzdCB1c3prb2R6b255IC0gcm96bWlhciAlLjI1MHMgemF3aWVyYSBwdXN0ZSB6bmFraSIKKworI34gbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIG5lZ2F0aXZlIG1lbWJlciBsZW5ndGggJXppIgorI34gbXNnc3RyICJwbGlrIFwiJS4yNTBzXCIgamVzdCB1c3prb2R6b255IC0gdWplbW55IHJvem1pYXIgY3rFgm9udSAlemkiCisKKyN+IG1zZ2lkICJmYWlsZWQgZ2V0dGluZyB0aGUgY3VycmVudCBmaWxlIHBvc2l0aW9uIgorI34gbXNnc3RyICJixYLEhWQgcG9iaWVyYW5pYSBiaWXFvMSFY2VqIHBvenljamkgdyBwbGlrdSIKKworI34gbXNnaWQgImZhaWxlZCBzZXR0aW5nIHRoZSBjdXJyZW50IGZpbGUgcG9zaXRpb24iCisjfiBtc2dzdHIgImLFgsSFZCB1c3Rhd2lhbmlhIGJpZcW8xIVjZWogcG96eWNqaSB3IHBsaWt1IgorCisjfiBtc2dpZCAidmVyc2lvbiBudW1iZXIiCisjfiBtc2dzdHIgIm51bWVyIHdlcnNqaSIKKworI34gbXNnaWQgIm1lbWJlciBsZW5ndGgiCisjfiBtc2dzdHIgInJvem1pYXIgc2vFgmFkbmlrYSIKKworI34gbXNnaWQgImhlYWRlciBpbmZvIG1lbWJlciIKKyN+IG1zZ3N0ciAiY3rFgm9uIGluZm9ybWFjamkgbmFnxYLDs3drb3dlaiIKKworIywgZnV6enkKKyN+fCBtc2dpZCAic2tpcHBlZCBtZW1iZXIgZGF0YSBmcm9tICVzIgorI34gbXNnaWQgInNraXBwZWQgY29udHJvbCBhcmVhIGZyb20gJXMiCisjfiBtc2dzdHIgInBvbWluacSZdG8gZGFuZSBjesWCb251IHogJXMiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSB0ZW1wb3JhcnkgZGlyZWN0b3J5IgorI34gbXNnc3RyICJuaWUgbW/FvG5hIHV0d29yennEhyBuYXp3eSB0eW1jemFzb3dlZ28ga2F0YWxvZ3UiCisKKyN+IG1zZ2lkICJpbmZvX3NwZXciCisjfiBtc2dzdHIgImluZm9fc3BldyIKKworI34gbXNnaWQgImluZm8gbGVuZ3RoIgorI34gbXNnc3RyICJyb3ptaWFyIGluZm9ybWFjamkiCisKKyN+IG1zZ2lkICJ0b3RhbCBsZW5ndGgiCisjfiBtc2dzdHIgInJvem1pYXIgY2HFgmtvd2l0eSIKKworI34gbXNnaWQgImRhdGEgbGVuZ3RoIgorI34gbXNnc3RyICJyb3ptaWFyIGRhbnljaCIKKworIywgZnV6enkKKyN+fCBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgZHBrZy1kZWIgdG8gZXh0cmFjdCBjb250cm9sIGluZm9ybWF0aW9uIgorI34gbXNnaWQgImZhaWxlZCB0byBleGVjIGRwa2ctZGViIHRvIGV4dHJhY3QgZmllbGQgdmFsdWUiCisjfiBtc2dzdHIgIm5pZSBtb8W8bmEgd3l3b8WCYcSHIFwiZHBrZy1kZWJcIiwgYWJ5IHBvYnJhxIcgcGxpayBrb250cm9sbnkiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgInVuYWJsZSB0byByZWFkICVzOiAlcyIKKyN+IG1zZ2lkICJ1bmFibGUgdG8gc3RhdCAlczogJXMiCisjfiBtc2dzdHIgIm5pZSBtb8W8bmEgb2Rjenl0YcSHICVzOiAlcyIKKworI34gbXNnaWQgInNsYXZlIG5hbWUgJXMgZHVwbGljYXRlZCIKKyN+IG1zZ3N0ciAicG93aWVsb25hIG5hendhIHBvZHJ6xJlkbmEgJXMiCisKKyN+IG1zZ2lkICJzbGF2ZSBsaW5rICVzIGR1cGxpY2F0ZWQiCisjfiBtc2dzdHIgInBvd2llbG9uZSBkb3dpxIV6YW5pZSBwb2RyesSZZG5lICVzIgorCisjfiBtc2dpZCAiJWQgcmVxdWVzdGVkIGNvbnRyb2wgY29tcG9uZW50cyBhcmUgbWlzc2luZyIKKyN+IG1zZ3N0ciAiQnJhayAlZCBwbGlrw7N3IGtvbnRyb2xueWNoIgorCisjfiBtc2dpZCAiY2F0IChkYXRhKSIKKyN+IG1zZ3N0ciAiY2F0IChzZWtjamEgZGF0YSkiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gb3BlbiBwaXBlIGRlc2NyaXB0b3IgYDEnIGluIHBhc3RlIgorI34gbXNnc3RyICJuaWUgbW/FvG5hIG90d29yennEhyBkZXNrcnlwdG9yYSBwb3Rva3UgXCIxXCIgZGxhIGZ1bmtjamkgXCJwYXN0ZVwiIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHdyaXRlIHRvIGd6aXAgLWRjIgorI34gbXNnc3RyICJuaWUgbW/FvG5hIHphcGlzYcSHIHBvdG9rdSBkbGEgXCJnemlwIC1kY1wiIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGNsb3NlIGd6aXAgLWRjIgorI34gbXNnc3RyICJuaWUgbW/FvG5hIHphbWtuxIXEhyBwb3Rva3UgZGxhIFwiZ3ppcCAtZGNcIiIKKworI34gbXNnaWQgImZhaWxlZCB0byBzeXNjYWxsIGxzZWVrIHRvIGZpbGVzIGFyY2hpdmUgcG9ydGlvbiIKKyN+IG1zZ3N0ciAibmllIG1vxbxuYSB3eWtvbmHEhyBmdW5rY2ppIFwic3lzY2FsbFwiIGRsYSBcImxzZWVrXCIiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gZXhlYyBta3NwbGl0IgorI34gbXNnc3RyICJuaWUgbW/FvG5hIHd5a29uYcSHIFwibWtzcGxpdFwiIgorCisjfiBtc2dpZCAiIgorI34gIlxuIgorI34gIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLiIKKyN+IG1zZ3N0ciAiIgorI34gIlxuIgorI34gIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLiIKKworI34gbXNnaWQgInR3byBjb21tYW5kcyBzcGVjaWZpZWQ6ICVzIGFuZCAtLSVzIgorI34gbXNnc3RyICJwb2Rhbm8gZHdhIHBvbGVjZW5pYTogJXMgaSAtLSVzIgorCisjfiBtc2dpZCAiLS0lcyBuZWVkcyBhIGRpdmVydC10byBhcmd1bWVudCIKKyN+IG1zZ3N0ciAiLS0lcyB3eW1hZ2EgcG9kYW5pYSBhcmd1bWVudHUgZGl2ZXJ0LXRvIgorCisjfiBtc2dpZCAiLS0lcyBuZWVkcyBhIDxwYWNrYWdlPiBhcmd1bWVudCIKKyN+IG1zZ3N0ciAiLS0lcyB3eW1hZ2EgcG9kYW5pYSA8cGFraWV0dT4gamFrbyBhcmd1bWVudHUiCisKKyN+IG1zZ2lkICJjYW5ub3Qgb3BlbiBkaXZlcnNpb25zOiAlcyIKKyN+IG1zZ3N0ciAibmllIG1vxbxuYSBvdHdvcnp5xIcgbGlzdHkgb21pbmnEmXR5Y2ggcGxpa8OzdzogJXMiCisKKyN+IG1zZ2lkICJtaXNzaW5nIGFsdG5hbWUiCisjfiBtc2dzdHIgImJyYWt1asSFY2EgbmF6d2EgYWx0ZXJuYXR5d3kiCisKKyN+IG1zZ2lkICJtaXNzaW5nIHBhY2thZ2UiCisjfiBtc2dzdHIgImJyYWt1asSFY2EgbmF6d2EgcGFraWV0dSIKKworI34gbXNnaWQgImludGVybmFsIGVycm9yIC0gYmFkIG1vZGUgYCVzJyIKKyN+IG1zZ3N0ciAiYsWCxIVkIHdld27EmXRyem55IC0gbmllcG9wcmF3bnkgdHJ5YiBcIiVzXCIiCisKKyN+IG1zZ2lkICJjYW5ub3Qgc3RhdCBvbGQgbmFtZSBgJXMnOiAlcyIKKyN+IG1zZ3N0ciAibmllIG1vxbxuYSB1c3RhbGnEhyBzdGFudSBzdGFyZWdvIHBsaWt1IFwiJXNcIiA6ICVzIgorCisjfiBtc2dpZCAicmVuYW1lOiByZW5hbWUgYCVzJyB0byBgJXMnOiAlcyIKKyN+IG1zZ3N0ciAicmVuYW1lOiB6bWlhbmEgbmF6d3kgXCIlc1wiIG5hIFwiJXNcIjogJXMiCisKKyN+IG1zZ2lkICJjcmVhdGUgZGl2ZXJzaW9ucy1uZXc6ICVzIgorI34gbXNnc3RyICJ0d29yemVuaWUgcGxpa3UgZGl2ZXJzaW9ucy1uZXc6ICVzIgorCisjfiBtc2dpZCAid3JpdGUgZGl2ZXJzaW9ucy1uZXc6ICVzIgorI34gbXNnc3RyICJ6YXBpc3l3YW5pZSBwbGlrdSBkaXZlcnNpb25zLW5ldzogJXMiCisKKyN+IG1zZ2lkICJjbG9zZSBkaXZlcnNpb25zLW5ldzogJXMiCisjfiBtc2dzdHIgInphbXlrYW5pZSBwbGlrdSBkaXZlcnNpb25zLW5ldzogJXMiCisKKyN+IG1zZ2lkICJjcmVhdGUgbmV3IGRpdmVyc2lvbnMtb2xkOiAlcyIKKyN+IG1zZ3N0ciAiY3p5dGFuaWUgbm93ZWdvIHBsaWt1IGRpdmVyc2lvbnMtb2xkOiAlcyIKKworI34gbXNnaWQgImluc3RhbGwgbmV3IGRpdmVyc2lvbnM6ICVzIgorI34gbXNnc3RyICJpbnN0YWxvd2FuaWUgbm93ZWogbGlzdHkgb21pbmnEmcSHOiAlcyIKKworI34gbXNnaWQgImludGVybmFsIGVycm9yOiAlcyBjb3JydXB0OiAlcyIKKyN+IG1zZ3N0ciAiYsWCxIVkIHdld27EmXRyem55OiB1c3prb2R6b25lICVzOiAlcyIKKworI34gbXNnaWQgImRwa2ctZGViIC0gZXJyb3I6ICVzIChgJXMnKSBkb2Vzbid0IGNvbnRhaW4gYW55IGRpZ2l0c1xuIgorI34gbXNnc3RyICJkcGtnLWRlYiAtIGLFgsSFZDogJXMgKFwiJXNcIikgbmllIHphd2llcmEgxbxhZG5laiBjeWZyeVxuIgorCisjfiBtc2dpZCAiKHVwc3RyZWFtKSB2ZXJzaW9uIgorI34gbXNnc3RyICJ3ZXJzamEgKHVwc3RyZWFtKSIKKworI34gbXNnaWQgIkRlYmlhbiByZXZpc2lvbiIKKyN+IG1zZ3N0ciAiV3lkYW5pZSBEZWJpYW5hIgorCisjfiBtc2dpZCAiJWQgZXJyb3JzIGluIGNvbnRyb2wgZmlsZSIKKyN+IG1zZ3N0ciAiJWQgYsWCxJlkw7N3IHcgcGxpa3Uga29udHJvbG55bSIKKworIywgZnV6enkKKyN+fCBtc2dpZCAidW5hYmxlIHRvIHJlYWQgJXM6ICVzIgorI34gbXNnaWQgImNhbid0IHJlYWRkaXIgJXM6ICVzIgorI34gbXNnc3RyICJuaWUgbW/FvG5hIG9kY3p5dGHEhyAlczogJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgaW4gYnVmZmVyX3dyaXRlKGZkKSAoJWksIHJldD0lbGkpOiAlcyIKKyN+IG1zZ3N0ciAiYsWCxIVkIHcgYnVmZmVyX3dyaXRlKGZkKSAoJWksIHJldD0lbGkpOiAlcykiCisKKyN+IG1zZ2lkICJlb2YgaW4gYnVmZmVyX3dyaXRlKHN0cmVhbSk6ICVzIgorI34gbXNnc3RyICJrb25pZWMgcGxpa3UgdyBidWZmZXJfd3JpdGUoc3RyZWFtKTogJXMiCisKKyN+IG1zZ2lkICJlcnJvciBpbiBidWZmZXJfd3JpdGUoc3RyZWFtKTogJXMiCisjfiBtc2dzdHIgImLFgsSFZCB3IGJ1ZmZlcl93cml0ZShzdHJlYW0pOiAlcyIKKworI34gbXNnaWQgImZhaWxlZCBpbiBidWZmZXJfcmVhZChmZCk6ICVzIgorI34gbXNnc3RyICJixYLEhWQgdyBidWZmZXJfcmVhZChmZCk6ICVzIgorCisjfiBtc2dpZCAiZXJyb3IgaW4gYnVmZmVyX3JlYWQoc3RyZWFtKTogJXMiCisjfiBtc2dzdHIgImLFgsSFZCB3IGJ1ZmZlcl9yZWFkKHN0cmVhbSk6ICVzIgorCisjfiBtc2dpZCAiJXMgcmV0dXJuZWQgZXJyb3IgZXhpdCBzdGF0dXMgJWQiCisjfiBtc2dzdHIgIiVzIHp3csOzY2nFgiBrb2QgYsWCxJlkdSAlZCIKKworI34gbXNnaWQgIiVzIGtpbGxlZCBieSBzaWduYWwgKCVzKSVzIgorI34gbXNnc3RyICIlcyB6b3N0YcWCIHphYml0eSBzeWduYcWCZW0gKCVzKSVzIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgdmVyc2lvbiAyIG9yXG4iCisjfiAibGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJcbiIKKyN+ICJOaW5pZWpzenkgcHJvZ3JhbSBqZXN0IG9wcm9ncmFtb3dhbmllbSB3b2xueW0sIHNwcmF3ZMW6IFxuIgorI34gIlBvd3N6ZWNobsSFIExpY2VuY2rEmSBQdWJsaWN6bsSFIEdOVSB3IHdlcnNqaSBkcnVnaWVqIGx1YiBww7PFum5pZWpzemVqLFxuIgorI34gImJ5IGRvd2llZHppZcSHIHNpxJkgbyB3YXJ1bmthY2ggcm96cG93c3plY2huaWFuaWEuXG4iCisjfiAiQnJhayBKQUtJRUpLT0xXSUVLIGd3YXJhbmNqaS5cbiIKKworI34gbXNnaWQgIiIKKyN+ICJcbiIKKyN+ICJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgdmVyc2lvbiAyIG9yXG4iCisjfiAibGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJcbiIKKyN+ICJOaW5pZWpzenkgcHJvZ3JhbSBqZXN0IG9wcm9ncmFtb3dhbmllbSB3b2xueW0sIHNwcmF3ZMW6IFxuIgorI34gIlBvd3N6ZWNobsSFIExpY2VuY2rEmSBQdWJsaWN6bsSFIEdOVSB3IHdlcnNqaSBkcnVnaWVqIGx1YiBww7PFum5pZWpzemVqLFxuIgorI34gImJ5IGRvd2llZHppZcSHIHNpxJkgbyB3YXJ1bmthY2ggcm96cG93c3plY2huaWFuaWEuXG4iCisjfiAiQnJhayBKQUtJRUpLT0xXSUVLIGd3YXJhbmNqaS5cbiIKKworI34gbXNnaWQgIiVzOiBmYWlsZWQgdG8gZXhlYyAnJXMgJXMnIgorI34gbXNnc3RyICIlczogbmllIG1vxbxuYSB3eWtvbmHEhyBcIiVzICVzXCIiCisKKyN+IG1zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCBlcnJvcjogcmVhZDogYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IHdld27EmXRyem55IGLFgsSFZCBnemlwOiBjenl0YW5pZTogXCIlc1wiIgorCisjfiBtc2dpZCAiJXM6IGludGVybmFsIGd6aXAgZXJyb3I6IHdyaXRlOiBgJXMnIgorI34gbXNnc3RyICIlczogd2V3bsSZdHJ6bnkgYsWCxIVkIGd6aXA6IHphcGlzOiBcIiVzXCIiCisKKyN+IG1zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCBlcnJvcjogcmVhZCglaSkgIT0gd3JpdGUoJWkpIgorI34gbXNnc3RyICIlczogd2V3bsSZdHJ6bnkgYsWCxIVkIGd6aXA6IHJlYWQoJWkpICE9IHdyaXRlKCVpKSIKKworI34gbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiBlcnJvcjogcmVhZDogYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IHdld27EmXRyem55IGLFgsSFZCBiemlwMjogY3p5dGFuaWU6IFwiJXNcIiIKKworI34gbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiBlcnJvcjogd3JpdGU6IGAlcyciCisjfiBtc2dzdHIgIiVzOiB3ZXduxJl0cnpueSBixYLEhWQgYnppcDI6IHphcGlzOiBcIiVzXCIiCisKKyN+IG1zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgZXJyb3I6IHJlYWQoJWkpICE9IHdyaXRlKCVpKSIKKyN+IG1zZ3N0ciAiJXM6IHdld27EmXRyem55IGLFgsSFZCBiemlwMjogcmVhZCglaSkgIT0gd3JpdGUoJWkpIgorCisjfiBtc2dpZCAiRG9uJ3QgZm9yZ2V0IHRvIGZvcmVncm91bmQgKGBmZycpIHRoaXMgcHJvY2VzcyB3aGVuIHlvdSdyZSBkb25lICFcbiIKKyN+IG1zZ3N0ciAiIgorI34gIlBvIHpha2/FhGN6ZW5pdSBwcmFjeSBuYWxlxbx5IHByenl3b8WCYcSHIGfFgsOzd255IHByb2NlcyBwb2xlY2VuaWVtIFwiZmdcIiFcbiIKKworI34gbXNnaWQgIiIKKyN+ICJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAyIG9yXG4iCisjfiAibGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuXG4iCisjfiAiU2VlICVzIC0tbGljZW5zZSBmb3IgY29weXJpZ2h0IGFuZCBsaWNlbnNlIGRldGFpbHMuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJOaW5pZWpzenkgcHJvZ3JhbSBqZXN0IG9wcm9ncmFtb3dhbmllbSB3b2xueW0sIHNwcmF3ZMW6IFBvd3N6ZWNobsSFXG4iCisjfiAiTGljZW5jasSZIFB1YmxpY3puxIUgR05VIHcgd2Vyc2ppIGRydWdpZWogbHViIHDDs8W6bmllanN6ZWosIGJ5IGRvd2llZHppZcSHXG4iCisjfiAic2nEmSBvIHdhcnVua2FjaCByb3pwb3dzemVjaG5pYW5pYS4gQnJhayBKQUtJRUpLT0xXSUVLIGd3YXJhbmNqaS5cbiIKKyN+ICJXacSZY2VqIHN6Y3plZ8OzxYLDs3cgdyAlcyAtLWxpY2Vuc2UuXG4iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gZ2V0IHVuaXF1ZSBmaWxlbmFtZSBmb3IgY29udHJvbCBpbmZvIgorI34gbXNnc3RyICJuaWUgbW/FvG5hIHBvYnJhxIcgdW5pa2FsbmVqIG5hend5IHBsaWt1IGRsYSBwbGlrdSBrb250cm9sbmVnbyIKKworI34gbXNnaWQgIkRlYmlhbiBgJXMnIHBhY2thZ2UgbWFuYWdlbWVudCBwcm9ncmFtIHF1ZXJ5IHRvb2xcbiIKKyN+IG1zZ3N0ciAiRGViaWFuIFwiJXNcIiwgbmFyesSZZHppZSBkbyBwcnplc3p1a2l3YW5pYSBwYWtpZXTDs3dcbiIKKworI34gbXNnaWQgIiIKKyN+ICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IHF1ZXJ5aW5nIHBhY2thZ2VzO1xuIgorI34gIlVzZSAtLWxpY2Vuc2UgZm9yIGNvcHlyaWdodCBsaWNlbnNlIGFuZCBsYWNrIG9mIHdhcnJhbnR5IChHTlUgR1BMKS4iCisjfiBtc2dzdHIgIiIKKyN+ICJVxbx5aiAtLWhlbHAsIGFieSB1enlza2HEhyBwb21vYyBvIHd5c3p1a2l3YW5pdSBwYWtpZXTDs3c7XG4iCisjfiAiVcW8eWogLS1saWNlbmNlLCBhYnkgdXp5c2thxIcgaW5mb3JtYWNqZSBvIHByYXdhY2ggYXV0b3Jza2ljaCBpIGJyYWt1XG4iCisjfiAiICAgICAgIGd3YXJhbmNqaSAoR05VIEdQTCkuIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGNob3duICVzOiAlcyIKKyN+IG1zZ3N0ciAibmllIG1vxbxuYSB6bWllbmnEhyB3xYJhxZtjaWNpZWxhICVzOiAlcyIKKworI34gbXNnaWQgImZhaWxlZCB0byBjaG1vZCAlczogJXMiCisjfiBtc2dzdHIgIm5pZSBtb8W8bmEgem1pZW5pxIcgdXByYXduaWXFhCAlczogJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZm9yayBmb3IgY2xlYW51cCIKKyN+IG1zZ3N0ciAibmllIG1vxbxuYSB3eXdvxYJhxIcgZnVua2NqaSBcImZvcmtcIiBwcnp5IGN6eXN6Y3plbml1IMWbcm9kb3dpc2thIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHdhaXQgZm9yIHJtIGNsZWFudXAiCisjfiBtc2dzdHIgIm5pZSBtb8W8bmEgd3lrb25hxIcgZnVua2NqaSBcIndhaXRcIiBwcnp5IGN6eXN6Y3plbml1IMWbcm9kb3dpc2thIgorCisjfiBtc2dpZCAicm0gY2xlYW51cCBmYWlsZWQsIGNvZGUgJWRcbiIKKyN+IG1zZ3N0ciAibmllIG1vxbxuYSB3eWN6ecWbY2nEhyDFm3JvZG93aXNrYSwgXCJybVwiIHp3csOzY2nFgiBrb2QgYsWCxJlkdSAlZFxuIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgcm0gLXJmIgorI34gbXNnc3RyICJuaWUgbW/FvG5hIHd5d2/FgmHEhyBcInJtIC1yZlwiIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHJlYWQgYGNvbnRyb2wnIChpbiBgJS4yNTVzJykiCisjfiBtc2dzdHIgIm5pZSBtb8W8bmEgb2Rjenl0YcSHIFwiY29udHJvbFwiICh3IFwiJS4yNTVzXCIpIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHNlZWsgYmFjayIKKyN+IG1zZ3N0ciAibmllIG1vxbxuYSB6bWllbmnEhyBwb8WCb8W8ZW5pYSB3IHBsaWt1IgorCisjfiBtc2dpZCAidW5rbm93biBkYXRhIHR5cGUgYCVpJyBpbiBidWZmZXJfd3JpdGVcbiIKKyN+IG1zZ3N0ciAibmllem5hbnkgdHlwIGRhbnljaCBcIiVpXCIgdyBidWZmZXJfd3JpdGVcbiIKKworI34gbXNnaWQgInVua25vd24gZGF0YSB0eXBlIGAlaScgaW4gYnVmZmVyX3JlYWRcbiIKKyN+IG1zZ3N0ciAibmllem5hbnkgdHlwIGRhbnljaCAlaVwiIHcgYnVmZmVyX3JlYWRcbiIKKworI34gbXNnaWQgIndhaXQgZm9yIHNoZWxsIGZhaWxlZCIKKyN+IG1zZ3N0ciAibmllIG1vxbxuYSB3eWtvbmHEhyBmdW5rY2ppIFwid2FpdFwiIGRsYSBwb3fFgm9raSIKKworI34gbXNnaWQgInJlYWQgZXJyb3IgaW4gZGl2ZXJzaW9ucyBbaV0iCisjfiBtc2dzdHIgIm5pZSBtb8W8bmEgb2Rjenl0YcSHIG9taW5pxJljaWEgW2ldIgorCisjfiBtc2dpZCAidW5saW5rIgorI34gbXNnc3RyICJ1bmxpbmsiCisKKyN+IG1zZ2lkICJjaG1vZCIKKyN+IG1zZ3N0ciAiY2htb2QiCisKKyN+IG1zZ2lkICJkZWxldGUiCisjfiBtc2dzdHIgInVzdW7EhcSHIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvICVzICclLjI1NXMnIgorI34gbXNnc3RyICJuaWUgbW/FvG5hICVzIFwiJS4yNTVzXCIiCisKKyN+IG1zZ2lkICJ3YWl0IGZvciBkcGtnLXNwbGl0IGZhaWxlZCIKKyN+IG1zZ3N0ciAibmllIG1vxbxuYSB3eWtvbmHEhyBmdW5rY2ppIFwid2FpdFwiIGRsYSBcImRwa2ctc3BsaXRcIiIKKworI34gbXNnaWQgImNhbm5vdCByZW1vdmUgZmlsZSBgJS4yNTBzJyIKKyN+IG1zZ3N0ciAibmllIG1vxbxuYSB1c3VuxIXEhyBwbGlrdSBcIiUuMjUwc1wiIgorCisjfiBtc2dpZCAiIgorI34gIlxuIgorI34gIkNvcHlyaWdodCAoQykgMjAwMCBXaWNoZXJ0IEFra2VybWFuLiIKKyN+IG1zZ3N0ciAiIgorI34gIlxuIgorI34gIkNvcHlyaWdodCAoQykgMjAwMCBXaWNoZXJ0IEFra2VybWFuLiIKKworI34gbXNnaWQgIm5vIG1vZGUgc3BlY2lmaWVkIgorI34gbXNnc3RyICJuaWUgcG9kYW5vIHRyeWJ1IgorCisjfiBtc2dpZCAiaWxsZWdhbCB1c2VyICVzIgorI34gbXNnc3RyICJuaWV3xYJhxZtjaXd5IHXFvHl0a293bmlrICVzIgorCisjfiBtc2dpZCAibm9uLWV4aXN0aW5nIHVzZXIgJXMiCisjfiBtc2dzdHIgInXFvHl0a293bmlrICVzIG5pZSBpc3RuaWVqZSIKKworI34gbXNnaWQgImlsbGVnYWwgZ3JvdXAgJXMiCisjfiBtc2dzdHIgIm5pZXfFgmHFm2Npd2EgZ3J1cGEgJXMiCisKKyN+IG1zZ2lkICJub24tZXhpc3RpbmcgZ3JvdXAgJXMiCisjfiBtc2dzdHIgImdydXBhICVzIG5pZSBpc3RuaWVqZSIKKworI34gbXNnaWQgImlsbGVnYWwgbW9kZSAlcyIKKyN+IG1zZ3N0ciAibmlld8WCYcWbY2l3eSB0cnliICVzIgorCisjfiBtc2dpZCAiYWJvcnRpbmciCisjfiBtc2dzdHIgInByemVyeXdhbmllIgorCisjfiBtc2dpZCAiY2Fubm90IG9wZW4gc3RhdG92ZXJyaWRlOiAlcyIKKyN+IG1zZ3N0ciAibmllIG1vxbxuYSBvdHdvcnp5xIcgcGxpa3Ugc3RhdG92ZXJyaWRlOiAlcyIKKworI34gbXNnaWQgIk11bHRpcGxlIG92ZXJyaWRlcyBmb3IgXCIlc1wiLCBhYm9ydGluZyIKKyN+IG1zZ3N0ciAiV2llbGUgbmFkcGlzYcWEIGRsYSBcIiVzXCIsIHByemVyeXdhbmllIgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9wby9wdC5nbW8gYi9kcGtnLTEuMTYuMS4xL3BvL3B0LmdtbwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kOWMxZTc4Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9wby9wdC5nbW8KQmluYXJ5IGZpbGVzIGRpZmZlcgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9wby9wdC5wbyBiL2Rwa2ctMS4xNi4xLjEvcG8vcHQucG8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMmM5NmVlYwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvcG8vcHQucG8KQEAgLTAsMCArMSw3NzgzIEBACisjIFBUIHRyYW5zbGF0aW9uIGZvciBkcGtnLgorIyBDb3B5cmlnaHQgKEMpIDIwMDQgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCisjCisjIE1pZ3VlbCBGaWd1ZWlyZWRvIDxlbG1pZ0BkZWJpYW5wdC5vcmc+LCAyMDA0LTIwMTAuCittc2dpZCAiIgorbXNnc3RyICIiCisiUHJvamVjdC1JZC1WZXJzaW9uOiBkcGtnIDEuMTRcbiIKKyJSZXBvcnQtTXNnaWQtQnVncy1UbzogZGViaWFuLWRwa2dAbGlzdHMuZGViaWFuLm9yZ1xuIgorIlBPVC1DcmVhdGlvbi1EYXRlOiAyMDExLTEwLTE0IDA3OjExKzAyMDBcbiIKKyJQTy1SZXZpc2lvbi1EYXRlOiAyMDEwLTEyLTIwIDAzOjEyKzAxMDBcbiIKKyJMYXN0LVRyYW5zbGF0b3I6IE1pZ3VlbCBGaWd1ZWlyZWRvIDxlbG1pZ0BkZWJpYW5wdC5vcmc+XG4iCisiTGFuZ3VhZ2UtVGVhbTogUG9ydHVndWVzZSA8dHJhZHV6QGRlYmlhbnB0Lm9yZz5cbiIKKyJMYW5ndWFnZTogcHRcbiIKKyJNSU1FLVZlcnNpb246IDEuMFxuIgorIkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD1VVEYtOFxuIgorIkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXRcbiIKKyJYLUdlbmVyYXRvcjogTG9rYWxpemUgMS4wXG4iCisiUGx1cmFsLUZvcm1zOiBucGx1cmFscz0yOyBwbHVyYWw9KG4gIT0gMSk7XG4iCisKKyM6IGxpYi9kcGtnL2FyLmM6NjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgJyVjJyBpbiBhcmNoaXZlICclLjI1MHMnIG1lbWJlciAnJS4xNnMnIHNpemUiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvYXIuYzo4MSBsaWIvZHBrZy9hci5jOjk3IGxpYi9kcGtnL2FyLmM6MTA4IGxpYi9kcGtnL2FyLmM6MTEyCisjOiBsaWIvZHBrZy9hci5jOjEzNCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE1NAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgZmlsZSAnJXMnIgorbXNnc3RyICJuw6NvIGZvaSBwb3Nzw612ZWwgZXNjcmV2ZXIgbyBmaWNoZWlybyAnJXMnICIKKworIzogbGliL2Rwa2cvYXIuYzo5NAorIywgYy1mb3JtYXQKK21zZ2lkICJnZW5lcmF0ZWQgY29ycnVwdCBhciBoZWFkZXIgZm9yICclcyciCittc2dzdHIgImdlcmFkbyBjYWJlw6dhbGhvIGFyIGNvcnJvbXBpZG8gcGFyYSAnJXMnIgorCisjOiBsaWIvZHBrZy9hci5jOjEyMworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgYXIgbWVtYmVyIGZpbGUgKCVzKSIKK21zZ3N0ciAiZmFsaG91IGFvIGZhemVyIGZzdGF0IGFvIGZpY2hlaXJvIG1lbWJybyBkZSBhciAoJXMpIgorCisjOiBsaWIvZHBrZy9hci5jOjEzMAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGFyIG1lbWJlciBmaWxlICglcykiCittc2dpZCAiYXIgbWVtYmVyIGZpbGUgKCVzKSIKK21zZ3N0ciAiZmFsaG91IGFvIGZhemVyIGZzdGF0IGFvIGZpY2hlaXJvIG1lbWJybyBkZSBhciAoJXMpIgorCisjOiBsaWIvZHBrZy9idWZmZXIuYzoxOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgb24gYnVmZmVyIGNvcHkgZm9yICVzIgorbXNnc3RyICJmYWxob3UgYW8gbGVyIGVtIGPDs3BpYSBkbyBidWZmZXIgcGFyYSAlcyIKKworIzogbGliL2Rwa2cvYnVmZmVyLmM6MjEyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCBpbiB3cml0ZSBvbiBidWZmZXIgY29weSBmb3IgJXMiCittc2dzdHIgImZhbGhvdSBhbyBlc2NyZXZlciBuYSBjw7NwaWEgZG8gYnVmZmVyIHBhcmEgJXMiCisKKyM6IGxpYi9kcGtnL2J1ZmZlci5jOjIyMAorIywgYy1mb3JtYXQKK21zZ2lkICJzaG9ydCByZWFkIG9uIGJ1ZmZlciBjb3B5IGZvciAlcyIKK21zZ3N0ciAibGVpdHVyYSBjdXJ0YSBlbSBjw7NwaWEgZGUgYnVmZmVyIHBhcmEgJXMiCisKKyM6IGxpYi9kcGtnL2J1ZmZlci5jOjI4OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgdGFyIgorbXNnaWQgImZhaWxlZCB0byBzZWVrICVzIgorbXNnc3RyICJmYWxob3UgZXhlY3V0YXIgbyB0YXIiCisKKyM6IGxpYi9kcGtnL2NvbW1hbmQuYzoxNzggbGliL2Rwa2cvY29tbWFuZC5jOjIwNCBzcmMvaGVscC5jOjYyMQorIzogc3JjL3Byb2Nlc3NhcmMuYzo5OCBzcmMvcHJvY2Vzc2FyYy5jOjEzOCBzcmMvcHJvY2Vzc2FyYy5jOjQzMgorIzogc3JjL3Byb2Nlc3NhcmMuYzo4MzkgZHBrZy1kZWIvYnVpbGQuYzo0NTkgZHBrZy1kZWIvYnVpbGQuYzo1MzgKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTYxIGRwa2ctZGViL2V4dHJhY3QuYzozMTcgZHBrZy1kZWIvaW5mby5jOjY1CisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6NjkgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQ1NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZXhlY3V0ZSAlcyAoJXMpIgorbXNnc3RyICJuw6NvIGZvaSBwb3Nzw612ZWwgZXhlY3V0YXIgJXMgKCVzKSIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzo4MworIywgYy1mb3JtYXQKK21zZ2lkICIlczogZGVjb21wcmVzc2lvbiIKK21zZ3N0ciAiJXM6IGRlc2NvbXByZXNzw6NvIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjg5CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBjb21wcmVzc2lvbiIKK21zZ3N0ciAiJXM6IGNvbXByZXNzw6NvIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjExMgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZXJyb3IgYmluZGluZyBpbnB1dCB0byBnemlwIHN0cmVhbSIKK21zZ3N0ciAiJXM6IGVycm8gYW8gbGlnYXIgZW50cmFkYSBhIHN0cmVhbSBnemlwIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCByZWFkIGVycm9yOiAnJXMnIgorbXNnc3RyICIlczogZXJybyBpbnRlcm5vIGRlIGxlaXR1cmEgZGUgZ3ppcDogJyVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxMzIgbGliL2Rwa2cvY29tcHJlc3MuYzoxMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgd3JpdGUgZXJyb3IiCittc2dzdHIgIiVzOiBlcnJvIGludGVybm8gZGUgZXNjcml0YSBkZSBnemlwIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE1MAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZXJyb3IgYmluZGluZyBvdXRwdXQgdG8gZ3ppcCBzdHJlYW0iCittc2dzdHIgIiVzOiBlcnJvIGRlIGxpZ2HDp8OjbyBkYSBzYcOtZGEgYSBzdHJlYW0gZ3ppcCIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgcmVhZCBlcnJvciIKK21zZ3N0ciAiJXM6IGVycm8gaW50ZXJubyBkZSBsZWl0dXJhIGRlIGd6aXAiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTY3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHdyaXRlIGVycm9yOiAnJXMnIgorbXNnc3RyICIlczogZXJybyBpbnRlcm5vIGRlIGVzY3JpdGEgZGUgZ3ppcDogJyVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgd3JpdGUgZXJyb3I6ICVzIgorbXNnc3RyICIlczogZXJybyBpbnRlcm5vIGRlIGVzY3JpdGEgZGUgZ3ppcDogJXMiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjIwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvciBiaW5kaW5nIGlucHV0IHRvIGJ6aXAyIHN0cmVhbSIKK21zZ3N0ciAiJXM6IGVycm8gZGUgbGlnYcOnw6NvIGRlIGVudHJhZGEgYSBzdHJlYW0gYnppcDIiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiByZWFkIGVycm9yOiAnJXMnIgorbXNnc3RyICIlczogZXJybyBpbnRlcm5vIGRlIGxlaXR1cmEgZGUgYnppcDI6ICclcyciCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjQwIGxpYi9kcGtnL2NvbXByZXNzLmM6MjQ0IGxpYi9kcGtnL2NvbXByZXNzLmM6Mjk0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiB3cml0ZSBlcnJvciIKK21zZ3N0ciAiJXM6IGVycm8gaW50ZXJubyBkZSBlc2NyaXRhIGRlIGJ6aXAyIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI1OAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZXJyb3IgYmluZGluZyBvdXRwdXQgdG8gYnppcDIgc3RyZWFtIgorbXNnc3RyICIlczogZXJybyBkZSBsaWdhw6fDo28gZGUgc2HDrWRhIHBhcmEgc3RyZWFtIGJ6aXAyIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI2NQorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgcmVhZCBlcnJvciIKK21zZ3N0ciAiJXM6IGVycm8gaW50ZXJubyBkZSBsZWl0dXJhIGRlIGJ6aXAyIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI3NSBsaWIvZHBrZy9jb21wcmVzcy5jOjI4NgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgd3JpdGUgZXJyb3I6ICclcyciCittc2dzdHIgIiVzOiBlcnJvIGludGVybm8gZGUgZXNjcml0YSBkZSBiemlwMjogJyVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyODIKK21zZ2lkICJ1bmV4cGVjdGVkIGJ6aXAyIGVycm9yIgorbXNnc3RyICJlcnJvIGluZXNwZXJhZG8gZGUgYnppcDIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVwZGF0ZXMgZGlyZWN0b3J5IGNvbnRhaW5zIGZpbGUgYCUuMjUwcycgd2hvc2UgbmFtZSBpcyB0b28gbG9uZyAobGVuZ3RoPSVkLCAiCisibWF4PSVkKSIKK21zZ3N0ciAiIgorImFjdHVhbGl6YSBvIGRpcmVjdMOzcmlvIGNvbnRlbmRvIG8gZmljaGVpcm8gJS4yNTBzJyBjdWpvIG5vbWUgw6kgZGVtYXNpYWRvICIKKyJsb25nbyAoY29tcHJpbWVudG89JWQsIG1heD0lZCkiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVwZGF0ZXMgZGlyZWN0b3J5IGNvbnRhaW5zIGZpbGVzIHdpdGggZGlmZmVyZW50IGxlbmd0aCBuYW1lcyAoYm90aCAlZCBhbmQgJWQpIgorbXNnc3RyICIiCisiYWN0dWFsaXphIG8gZGlyZWN0w7NyaW8gcXVlIGNvbnTDqW0gZmljaGVpcm9zIGNvbSBkaWZlcmVudGVzIGNvbXByaW1lbnRvcyBkZSAiCisibm9tZXMgKGFtYm9zICVkIGUgJWQpIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjg2CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzY2FuIHVwZGF0ZXMgZGlyZWN0b3J5IGAlLjI1NXMnIgorbXNnc3RyICJuw6NvIHBvZGUgcGVzcXVpc2FyIGRpcmVjdMOzcmlvIGRlIGFjdHVhbGl6YcOnw7VlcyBgJS4yNTVzJyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlbW92ZSBpbmNvcnBvcmF0ZWQgdXBkYXRlIGZpbGUgJS4yNTVzIgorbXNnc3RyICJmYWxob3UgYSByZW1vw6fDo28gZG8gZmljaGVpcm8gZGUgYWN0dWFsaXphw6fDo28gaW5jb3Jwb3JhZG8gJS4yNTVzIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEyMSBkcGtnLWRlYi9idWlsZC5jOjQ0NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGAlLjI1NXMnIgorbXNnc3RyICJuw6NvIGZvaSBwb3Nzw612ZWwgY3JpYXIgYCUuMjU1cyciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTI1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmaWxsICUuMjUwcyB3aXRoIHBhZGRpbmciCittc2dzdHIgIm7Do28gZm9pIHBvc3PDrXZlbCBwcmVlbmNoZXIgJS4yNTBzIGNvbSBlbmNoaW1lbnRvIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEyNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggJS4yNTBzIGFmdGVyIHBhZGRpbmciCittc2dzdHIgIm7Do28gZm9pIHBvc3PDrXZlbCBlc3ZhemlhciAlLjI1MHMgYXDDs3MgZW5jaGltZW50byIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxMjkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNlZWsgdG8gc3RhcnQgb2YgJS4yNTBzIGFmdGVyIHBhZGRpbmciCittc2dzdHIgIm7Do28gZm9pIHBvc3PDrXZlbCBleGVjdXRhciBzZWVrIHBhcmEgbyBpbmljaW8gZGUgJS4yNTBzIGFww7NzIGVuY2hpbWVudG8iCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTk1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIGxvY2sgZmlsZSAlcyBmb3IgdGVzdGluZyIKK21zZ3N0ciAibsOjbyBmb2kgYmxvcXVlYXIgZmljaGVpcm8gJXMgcGFyYSB0ZXN0ZSIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyMjEKK21zZ2lkICJ1bmFibGUgdG8gb3Blbi9jcmVhdGUgc3RhdHVzIGRhdGFiYXNlIGxvY2tmaWxlIgorbXNnc3RyICJuw6NvIGZvaSBwb3Nzw612ZWwgYWJyaXIvY3JpYXIgbG9ja2ZpbGUgZGUgc3RhdHVzIGRhIGJhc2UgZGUgZGFkb3MiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjMxCittc2dpZCAieW91IGRvIG5vdCBoYXZlIHBlcm1pc3Npb24gdG8gbG9jayB0aGUgZHBrZyBzdGF0dXMgZGF0YWJhc2UiCittc2dzdHIgIm7Do28gdGVtIHBlcm1pc3PDo28gcGFyYSBmYXplciBsb2NrIMOgIGJhc2UgZGUgZGFkb3MgZG8gc3RhdHVzIGRwa2ciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjMzCisjLCBmdXp6eQorI3wgbXNnaWQgInVuYWJsZSB0byBsb2NrIGRwa2cgc3RhdHVzIGRhdGFiYXNlIgorbXNnaWQgImRwa2cgc3RhdHVzIGRhdGFiYXNlIgorbXNnc3RyICJuw6NvIGZvaSBwb3Nzw612ZWwgZmF6ZXIgbG9jayDDoCBiYXNlIGRlIGRhZG9zIGRlIHN0YXR1cyBkbyBkcGtnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjI1NworbXNnaWQgInJlcXVlc3RlZCBvcGVyYXRpb24gcmVxdWlyZXMgc3VwZXJ1c2VyIHByaXZpbGVnZSIKK21zZ3N0ciAiYSBvcGVyYcOnw6NvIHBlZGlkYSBuZWNlc3NpdGEgZGUgcHJpdmlsw6lnaW9zIGRlIHN1cGVyLXV0aWxpemFkb3IiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjYyCittc2dpZCAidW5hYmxlIHRvIGFjY2VzcyBkcGtnIHN0YXR1cyBhcmVhIgorbXNnc3RyICJuw6NvIGZvaSBwb3Nzw612ZWwgYWNlZGVyIMOgIMOhcmVhIGRlIHN0YXR1cyBkbyBkcGtnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjI2NAorbXNnaWQgIm9wZXJhdGlvbiByZXF1aXJlcyByZWFkL3dyaXRlIGFjY2VzcyB0byBkcGtnIHN0YXR1cyBhcmVhIgorbXNnc3RyICIiCisiYSBvcGVyYcOnw6NvIG5lY2Vzc2l0YSBkZSBhY2Vzc28gZGUgbGVpdHVyYS9lc2NyaXRhIG5hIMOhcmVhIGRvIGVzdGFkbyBkbyBkcGtnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjMwOQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVtb3ZlIG15IG93biB1cGRhdGUgZmlsZSAlLjI1NXMiCittc2dzdHIgImZhbGhvdSBhIHJlbW/Dp8OjbyBkbyBtZXUgcHLDs3ByaW8gZmljaGVpcm8gZGUgYWN0dWFsaXphw6fDo28gJS4yNTVzIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM0NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgIm7Do28gZm9pIHBvc3PDrXZlbCBlc2NyZXZlciBvIHN0YXR1cyBhY3R1YWxpemFkbyBkZSBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNDkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJuw6NvIGZvaSBwb3Nzw612ZWwgZXN2YXppYXIgbyBzdGF0dXMgYWN0dWFsaXphZG8gZGUgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzUxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB0cnVuY2F0ZSBmb3IgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgIm7Do28gZm9pIHBvc3PDrXZlbCB0cnVuY2FyIHBhcmEgbyBzdGF0dXMgYWN0dWFsaXphZG8gZGUgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzUzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmc3luYyB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAibsOjbyBmb2kgcG9zc8OtdmVsIGZhemVyIGZzeW5jIGFvIHN0YXR1cyBhY3R1YWxpemFkbyBkZSBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJuw6NvIGZvaSBwb3Nzw612ZWwgZmVjaGFyIG8gc3RhdHVzIGFjdHVhbGl6YWRvIGRlIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM1OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAibsOjbyBmb2kgcG9zc8OtdmVsIGluc3RhbGFyIG8gc3RhdHVzIGFjdHVhbGl6YWRvIGRlIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy9kaXIuYzo1MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHJlYWQgZmlsZWRlc2NyaXB0b3IgZmxhZ3MgZm9yICUuMjUwcyIKK21zZ2lkICJ1bmFibGUgdG8gZ2V0IGZpbGUgZGVzY3JpcHRvciBmb3IgZGlyZWN0b3J5ICclcyciCittc2dzdHIgIm7Do28gZm9pIHBvc3PDrXZlbCBsZXIgZmxhZ3MgZGUgZmlsZWRlc2NyaXB0b3IgcGFyYSAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL2Rpci5jOjU0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gc3luYyBmaWxlICclcyciCittc2dpZCAidW5hYmxlIHRvIHN5bmMgZGlyZWN0b3J5ICclcyciCittc2dzdHIgIm7Do28gZm9pIHBvc3PDrXZlbCBmYXplciBzeW5jIGFvIGZpY2hlaXJvICclcyciCisKKyM6IGxpYi9kcGtnL2Rpci5jOjY5IGxpYi9kcGtnL2Rpci5jOjEzMQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIG9wZW4gZmlsZSAnJXMnIgorbXNnaWQgInVuYWJsZSB0byBvcGVuIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICJuw6NvIGZvaSBwb3Nzw612ZWwgYWJyaXIgbyBmaWNoZWlybyAnJXMnIgorCisjOiBsaWIvZHBrZy9kaXIuYzoxMDkgc3JjL2RpdmVydGNtZC5jOjIxOCBkcGtnLXNwbGl0L3NwbGl0LmM6MjAyCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI5MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBmaWxlICclcyciCittc2dzdHIgIm7Do28gZm9pIHBvc3PDrXZlbCBhYnJpciBvIGZpY2hlaXJvICclcyciCisKKyM6IGxpYi9kcGtnL2Rpci5jOjExMSBzcmMvZGl2ZXJ0Y21kLmM6MjMyIHNyYy9kaXZlcnRjbWQuYzozNzcKKyM6IHNyYy9zdGF0Y21kLmM6MjE3IGRwa2ctZGViL2J1aWxkLmM6NTk4IGRwa2ctc3BsaXQvam9pbi5jOjY1CisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTg3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNDA2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzeW5jIGZpbGUgJyVzJyIKK21zZ3N0ciAibsOjbyBmb2kgcG9zc8OtdmVsIGZhemVyIHN5bmMgYW8gZmljaGVpcm8gJyVzJyIKKworIzogbGliL2Rwa2cvZGlyLmM6MTEzIHNyYy9kaXZlcnRjbWQuYzoyMzQgc3JjL2RpdmVydGNtZC5jOjM3OQorIzogZHBrZy1kZWIvYnVpbGQuYzo2MDAgZHBrZy1zcGxpdC9qb2luLmM6NjcgZHBrZy1zcGxpdC9xdWV1ZS5jOjE4OQorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzMTQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE0MDgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIGZpbGUgJyVzJyIKK21zZ3N0ciAibsOjbyBmb2kgcG9zc8OtdmVsIGZlY2hhciBvIGZpY2hlaXJvICclcyciCisKKyM6IGxpYi9kcGtnL2R1bXAuYzozOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIGRldGFpbHMgb2YgYCUuNTBzJyB0byBgJS4yNTBzJyIKK21zZ3N0ciAiZmFsaG91IGVzY3JldmVyIG9zIGRldGFsaGVzIGRlIGAlLjUwcycgYSBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQyMworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiAnJXMnIGZvciB3cml0aW5nICVzIGRhdGFiYXNlIgorbXNnc3RyICJmYWxob3UgYWJyaXIgJyVzJyBwYXJhIGVzY3JpdGEgbmEgYmFzZSBkZSBkYWRvcyAlcyIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQyNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IGJ1ZmZlcmluZyBvbiAlcyBkYXRhYmFzZSBmaWxlIgorbXNnc3RyICJuw6NvIGZvaSBwb3Nzw612ZWwgZXN0YWJlbGVjZXIgYnVmZmVyIG5vIGZpY2hlaXJvIGRlIGJhc2UgZGUgZGFkb3MgJXMiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0MzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlICVzIGRhdGFiYXNlIHJlY29yZCBhYm91dCAnJS41MHMnIHRvICclLjI1MHMnIgorbXNnc3RyICIiCisiZmFsaG91IGFvIGVzY3JldmVyIG8gcmVnaXN0byAlcyBkYSBiYXNlIGRlIGRhZG9zIGNlcmNhIGRlICclLjUwcycgYSAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ0NgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZmx1c2ggJXMgZGF0YWJhc2UgdG8gJyUuMjUwcyciCittc2dzdHIgImZhbGhvdSBlc3ZhemlhciBhIGJhc2UgZGUgZGFkb3MgJXMgcGFyYSAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ0OAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZnN5bmMgJXMgZGF0YWJhc2UgdG8gJyUuMjUwcyciCittc2dzdHIgImZhbGhvdSBvIGZzeW5jIG5hIGJhc2UgZGUgZGFkb3MgJXMgcGFyYSAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ1MQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2xvc2UgJyUuMjUwcycgYWZ0ZXIgd3JpdGluZyAlcyBkYXRhYmFzZSIKK21zZ3N0ciAiZmFsaG91IGZlY2hhciAnJS4yNTBzJyBhcMOzcyBlc2NyZXZlciBhIGJhc2UgZGUgZGFkb3MgJXMiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGxpbmsgJyUuMjUwcycgdG8gJyUuMjUwcycgZm9yIGJhY2t1cCBvZiAlcyBkYXRhYmFzZSIKK21zZ3N0ciAiIgorImZhbGhvdSBjcmlhciBsaW5rICclLjI1MHMnIHBhcmEgJyUuMjUwcycgcGFyYSBiYWNrdXAgZGEgYmFzZSBkZSBkYWRvcyAlcyIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ1OAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gaW5zdGFsbCAnJS4yNTBzJyBhcyAnJS4yNTBzJyBjb250YWluaW5nICVzIGRhdGFiYXNlIgorbXNnc3RyICIiCisiZmFsaG91IGEgaW5zdGFsYcOnw6NvIGRlICclLjI1MHMnIGNvbW8gJyUuMjUwcycgY29udGVuZG8gYSBiYXNlIGRlIGRhZG9zICVzIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6OTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiB1bnJlY292ZXJhYmxlIGZhdGFsIGVycm9yLCBhYm9ydGluZzpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorIiVzOiBlcnJvIGZhdGFsIGlycmVjdXBlcsOhdmVsLCBhIGFib3J0YXI6XG4iCisiICVzXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoxMDAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIlczogdW5yZWNvdmVyYWJsZSBmYXRhbCBlcnJvciwgYWJvcnRpbmc6XG4iCisjfCAiICVzXG4iCittc2dpZCAiIgorIiVzOiBvdXRzaWRlIGVycm9yIGNvbnRleHQsIGFib3J0aW5nOlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisiJXM6IGVycm8gZmF0YWwgaXJyZWN1cGVyw6F2ZWwsIGEgYWJvcnRhcjpcbiIKKyIgJXNcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjEyMAorIywgZnV6enkKKyN8IG1zZ2lkICJvdXQgb2YgbWVtb3J5IGZvciBuZXcgY2xlYW51cCBlbnRyeSIKK21zZ2lkICJvdXQgb2YgbWVtb3J5IGZvciBuZXcgZXJyb3IgY29udGV4dCIKK21zZ3N0ciAic2VtIG1lbcOzcmlhIHBhcmEgbGltcGV6YSBkZSBub3ZhIGVudHJhZGEiCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoxODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBlcnJvciB3aGlsZSBjbGVhbmluZyB1cDpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorIiVzOiBlcnJvIGVucXVhbnRvIGxpbXBhdmE6XG4iCisiICVzXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoyMDEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImRwa2c6IHRvbyBtYW55IG5lc3RlZCBlcnJvcnMgZHVyaW5nIGVycm9yIHJlY292ZXJ5ICEhXG4iCittc2dpZCAiJXM6IHRvbyBtYW55IG5lc3RlZCBlcnJvcnMgZHVyaW5nIGVycm9yIHJlY292ZXJ5ISFcbiIKK21zZ3N0ciAiZHBrZzogZGVtYXNpYWRvcyBlcnJvcyBlbmNhZGVhZG9zIGR1cmFudGUgYSByZWN1cGVyYcOnw6NvIGRlIGVycm9zICEhXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoyNjggbGliL2Rwa2cvZWhhbmRsZS5jOjMwNworbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBjbGVhbnVwIGVudHJ5IgorbXNnc3RyICJzZW0gbWVtw7NyaWEgcGFyYSBsaW1wZXphIGRlIG5vdmEgZW50cmFkYSIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjI5MQorbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBjbGVhbnVwIGVudHJ5IHdpdGggbWFueSBhcmd1bWVudHMiCittc2dzdHIgInNlbSBtZW3Ds3JpYSBwYXJhIG5vdmEgbGltcGV6YSBkZSBlbnRyYWRhIGNvbSBtdWl0b3MgYXJndW1lbnRvcyIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjM1MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yOiAlc1xuIgorbXNnc3RyICIiCisiJXM6IGVycm8gcHJvY2Vzc2FuZG8gJXMgKC0tJXMpOlxuIgorIiAlc1xuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MzkzCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB3YXJuaW5nOiAlc1xuIgorbXNnc3RyICIlczogYXZpc286ICVzXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzo0MTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6JXM6JWQ6IGludGVybmFsIGVycm9yOiAlc1xuIgorbXNnc3RyICIlczolczolZCBlcnJvIGludGVybm86ICVzXG4iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGlzIG1pc3NpbmciCittc2dzdHIgImZhbHRhICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0OQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYCUuKnMnIGlzIG5vdCBhbGxvd2VkIGZvciAlcyIKK21zZ2lkICInJS41MHMnIGlzIG5vdCBhbGxvd2VkIGZvciAlcyIKK21zZ3N0ciAiYCUuKnMnIG7Do28gw6kgcGVybWl0aWRvIHBhcmEgJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjczCisjLCBjLWZvcm1hdAorbXNnaWQgImp1bmsgYWZ0ZXIgJXMiCittc2dzdHIgImxpeG8gYXDDs3MgJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjg3CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgcGFja2FnZSBuYW1lICglLjI1MHMpIgorbXNnc3RyICJub21lIGRlIHBhY290ZSBpbnbDoWxpZG8gKCUuMjUwcykiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJlbXB0eSBmaWxlIGRldGFpbHMgZmllbGQgYCVzJyIKK21zZ3N0ciAiY2FtcG8gZGUgZGV0YWxoZXMgZGUgZmljaGVpcm8gdmF6aW8gYCVzJyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTA1CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgZGV0YWlscyBmaWVsZCBgJXMnIG5vdCBhbGxvd2VkIGluIHN0YXR1cyBmaWxlIgorbXNnc3RyICJjYW1wbyBgJXMnIGRlIGRldGFsaGVzIGRlIGZpY2hlaXJvIG7Do28gw6kgcGVybWl0aWRvIG5vIGZpY2hlaXJvIHN0YXR1cyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTE4CisjLCBjLWZvcm1hdAorbXNnaWQgInRvbyBtYW55IHZhbHVlcyBpbiBmaWxlIGRldGFpbHMgZmllbGQgYCVzJyAoY29tcGFyZWQgdG8gb3RoZXJzKSIKK21zZ3N0ciAiIgorImRlbWFzaWFkb3MgdmFsb3JlcyBubyBjYW1wbyBkZSBkZXRhbGhlcyBgJXMnIGRvIGZpY2hlaXJvIChjb21wYXJhZG8gYSBvdXRyb3MpIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAidG9vIGZldyB2YWx1ZXMgaW4gZmlsZSBkZXRhaWxzIGZpZWxkIGAlcycgKGNvbXBhcmVkIHRvIG90aGVycykiCittc2dzdHIgIiIKKyJ2YWxvcmVzIGEgbWVub3Mgbm8gY2FtcG8gYCVzJyBkZSBkZXRhbGhlcyBkZSBmaWNoZWlybyAoY29tcGFyYWRvIGEgb3V0cm9zKSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTU0Cittc2dpZCAieWVzL25vIGluIGJvb2xlYW4gZmllbGQiCittc2dzdHIgInNpbS9uw6NvIG5vIGNhbXBvIGJvb2xlYW5vIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxNzQKK21zZ2lkICJ3b3JkIGluIGBwcmlvcml0eScgZmllbGQiCittc2dzdHIgInBhbGF2cmEgbm8gY2FtcG8gJ3ByaW9yaXR5JyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTg2Cittc2dpZCAidmFsdWUgZm9yIGBzdGF0dXMnIGZpZWxkIG5vdCBhbGxvd2VkIGluIHRoaXMgY29udGV4dCIKK21zZ3N0ciAidmFsb3IgcGFyYSBvIGNhbXBvIGBzdGF0dXMnIG7Do28gw6kgcGVybWl0aWRvIG5lc3RlIGNvbnRleHRvIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxOTEKK21zZ2lkICJmaXJzdCAod2FudCkgd29yZCBpbiBgc3RhdHVzJyBmaWVsZCIKK21zZ3N0ciAicHJpbWVpcmEgKHdhbnQpIHBhbGF2cmEgbm8gY2FtcG8gYHN0YXR1cyciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE5NAorbXNnaWQgInNlY29uZCAoZXJyb3IpIHdvcmQgaW4gYHN0YXR1cycgZmllbGQiCittc2dzdHIgInNlZ3VuZGEgKGVycm9yKSBwYWxhdnJhIG5vIGNhbXBvIGBzdGF0dXMnIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxOTcKK21zZ2lkICJ0aGlyZCAoc3RhdHVzKSB3b3JkIGluIGBzdGF0dXMnIGZpZWxkIgorbXNnc3RyICJ0ZXJjZWlyYSAoc3RhdHVzKSBwYWxhdnJhIG5vIGNhbXBvIGBzdGF0dXMnIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyMDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgaW4gVmVyc2lvbiBzdHJpbmcgJyUuMjUwcyciCittc2dzdHIgImVycm8gbmEgc3RyaW5nIFZlcnPDo28gJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjIxOAorbXNnaWQgIm9ic29sZXRlIGBSZXZpc2lvbicgb3IgYFBhY2thZ2UtUmV2aXNpb24nIGZpZWxkIHVzZWQiCittc2dzdHIgInV0aWxpemFkb3MgY2FtcG9zIG9ic29sZXRvcyBgUmV2aXNpb24nIGUgYFBhY2thZ2UtUmV2aXNpb24nIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyMzUKK21zZ2lkICJ2YWx1ZSBmb3IgYGNvbmZpZy12ZXJzaW9uJyBmaWVsZCBub3QgYWxsb3dlZCBpbiB0aGlzIGNvbnRleHQiCittc2dzdHIgInZhbG9yIHBhcmEgbyBjYW1wbyBgY29uZmlnLXZlcnNpb24nIG7Do28gw6kgcGVybWl0aWRvIG5lc3RlIGNvbnRleHRvIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyNDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgaW4gQ29uZmlnLVZlcnNpb24gc3RyaW5nICclLjI1MHMnIgorbXNnc3RyICJlcnJvIG5hIHN0cmluZyBDb25maWctVmVyc2lvbiAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjY2CisjLCBjLWZvcm1hdAorbXNnaWQgInZhbHVlIGZvciBgY29uZmZpbGVzJyBoYXMgbWFsZm9ybWF0dGVkIGxpbmUgYCUuKnMnIgorbXNnc3RyICJ2YWxvciBwYXJhIGBjb25mZmlsZXMnIHRlbSB1bWEgbGluaGEgbWFsIGZvcm1hdGFkYSBgJS4qcyciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjI4NworIywgYy1mb3JtYXQKK21zZ2lkICJ2YWx1ZSBmb3IgYGNvbmZmaWxlcycgaGFzIGxpbmUgc3RhcnRpbmcgd2l0aCBub24tc3BhY2UgYCVjJyIKK21zZ3N0ciAidmFsb3IgcGFyYSBgY29uZmZpbGVzJyB0ZW0gdW1hIGxpbmhhIHF1ZSBjb21lw6dhIHBvciB1bSBuw6NvLWVzcGHDp28gYCVjJyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MzA0Cittc2dpZCAicm9vdCBvciBudWxsIGRpcmVjdG9yeSBpcyBsaXN0ZWQgYXMgYSBjb25mZmlsZSIKK21zZ3N0ciAicmFpeiBvdSBkaXJlY3TDs3JpbyBudWxvIGVzdMOhIGxpc3RhZG8gY29tbyBjb25mZmlsZSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MzY1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJgJXMnIGZpZWxkLCBtaXNzaW5nIHBhY2thZ2UgbmFtZSwgb3IgZ2FyYmFnZSB3aGVyZSBwYWNrYWdlIG5hbWUgZXhwZWN0ZWQiCittc2dzdHIgIiIKKyJjYW1wbyBgJXMnLCBmYWx0YSBub21lIGRlIHBhY290ZSwgb3UgbGl4byBvbmRlIGVyYSBlc3BlcmFkbyBub21lIGRlIHBhY290ZSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MzcwCisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgZmllbGQsIGludmFsaWQgcGFja2FnZSBuYW1lIGAlLjI1NXMnOiAlcyIKK21zZ3N0ciAiY2FtcG8gYCVzJywgbm9tZSBkZSBwYWNvdGUgaW52w6FsaWRvIGAlLjI1NXMnOiAlcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDA2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6XG4iCisiIGJhZCB2ZXJzaW9uIHJlbGF0aW9uc2hpcCAlYyVjIgorbXNnc3RyICIiCisiY2FtcG8gYCVzJywgcmVmZXLDqm5jaWEgYSBgJS4yNTVzJzpcbiIKKyIgbcOhIHJlbGHDp8OjbyBkZSB2ZXJzw6NvICVjJWMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQxMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOlxuIgorIiBgJWMnIGlzIG9ic29sZXRlLCB1c2UgYCVjPScgb3IgYCVjJWMnIGluc3RlYWQiCittc2dzdHIgIiIKKyJjYW1wbyBgJXMnLCByZWZlcsOqbmNpYSBhIGAlMjU1cyc6XG4iCisiIGAlYycgZXN0w6Egb2Jzb2xldG8sIGVtIHZleiBkaXNzbyB1dGlsaXplIGAlYz0nIG91IGAlYyVjJyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDIyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6XG4iCisiIGltcGxpY2l0IGV4YWN0IG1hdGNoIG9uIHZlcnNpb24gbnVtYmVyLCBzdWdnZXN0IHVzaW5nIGA9JyBpbnN0ZWFkIgorbXNnc3RyICIiCisiY2FtcG8gYCVzJywgcmVmZXLDqm5jaWEgYSBgJS4yNTVzJzpcbiIKKyIgY29tYmluYcOnw6NvIGV4YWN0YSBpbXBsw61jaXRhIG5vIG7Dum1lcm8gZGUgdmVyc8Ojbywgc3VnZXJlIHV0aWxpemFyIGA9JyBlbSB2ZXogIgorImRpc3NvIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MzAKK21zZ2lkICJPbmx5IGV4YWN0IHZlcnNpb25zIG1heSBiZSB1c2VkIGZvciBQcm92aWRlcyIKK21zZ3N0ciAiQXBlbmFzIHZlcnPDtWVzIGV4YWN0YXMgcG9kZW0gc2VyIHV0aWxpemFkYXMgcGFyYSBQcm92aWRlcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6XG4iCisiIHZlcnNpb24gdmFsdWUgc3RhcnRzIHdpdGggbm9uLWFscGhhbnVtZXJpYywgc3VnZ2VzdCBhZGRpbmcgYSBzcGFjZSIKK21zZ3N0ciAiIgorImNhbXBvIGAlcycsIHJlZmVyw6puY2lhIGEgYCUuMjU1cyc6XG4iCisiIHZhbG9yIGRlIHZlcnPDo28gY29tZcOnYSBwb3IgbsOjby1hbGZhbnVtw6lyaWNvLCBzdWdlcmUgYWRpY2lvbmFyIHVtIGVzcGHDp28iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ1MSBsaWIvZHBrZy9maWVsZHMuYzo0NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOiB2ZXJzaW9uIGNvbnRhaW5zIGAlYyciCittc2dzdHIgImNhbXBvIGAlcycsIHJlZmVyw6puY2lhIGEgYCUuMjU1cyc6IHZlcnPDo28gY29udMOpbSBgJWMnIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOiB2ZXJzaW9uIHVudGVybWluYXRlZCIKK21zZ3N0ciAiY2FtcG8gYCVzJywgcmVmZXLDqm5jaWEgYSBgJS4yNTVzJzogdmVyc8OjbyBuw6NvIHRlcm1pbmFkYSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDY1CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgZmllbGQsIHJlZmVyZW5jZSB0byAnJS4yNTVzJzogZXJyb3IgaW4gdmVyc2lvbiIKK21zZ3N0ciAiY2FtcG8gJyVzJywgcmVmZXLDqm5jaWEgYSAnJS4yNTVzJzogZXJybyBuYSB2ZXJzw6NvIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBmaWVsZCwgc3ludGF4IGVycm9yIGFmdGVyIHJlZmVyZW5jZSB0byBwYWNrYWdlIGAlLjI1NXMnIgorbXNnc3RyICJjYW1wbyBgJXMnLCBlcnJvIGRlIHNpbnRheGUgYXDDs3MgcmVmZXLDqm5jaWEgYW8gcGFjb3RlIGAlLjI1NXMnIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmVzIChgfCcpIG5vdCBhbGxvd2VkIGluICVzIGZpZWxkIgorbXNnc3RyICJhbHRlcm5hdGl2YXMgKGB8JykgbsOjbyBzw6NvIHBlcm1pdGlkYXMgbm8gY2FtcG8gJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjUzNgorbXNnaWQgInZhbHVlIGZvciBgdHJpZ2dlcnMtcGVuZGluZycgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICJvIHZhbG9yIHBhcmEgbyBjYW1wbyBgdHJpZ2dlcnMtcGVuZGluZycgbsOjbyDDqSBwZXJtaXRpZG8gbmVzdGUgY29udGV4dG8iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU0MworIywgYy1mb3JtYXQKK21zZ2lkICJpbGxlZ2FsIHBlbmRpbmcgdHJpZ2dlciBuYW1lIGAlLjI1NXMnOiAlcyIKK21zZ3N0ciAibm9tZSBkZSAndHJpZ2dlcicgcGVuZGVudGUgaWxlZ2FsIGAlLjI1NXMnOiAlcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTQ3CisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBwZW5kaW5nIHRyaWdnZXIgYCUuMjU1cyciCittc2dzdHIgIid0cmlnZ2VyJyBkdXBsaWNhZG8gYCUuMjU1cycgcGVuZGVudGUiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU2MQorbXNnaWQgInZhbHVlIGZvciBgdHJpZ2dlcnMtYXdhaXRlZCcgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICJ2YWxvciBwYXJhIG8gY2FtcG8gYHRyaWdnZXJzLWF3YWl0ZWQnIG7Do28gw6kgcGVybWl0aWRvIG5lc3RlIGNvbnRleHRvIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWxsZWdhbCBwYWNrYWdlIG5hbWUgaW4gYXdhaXRlZCB0cmlnZ2VyIGAlLjI1NXMnOiAlcyIKK21zZ3N0ciAibm9tZSBkZSBwYWNvdGUgaWxlZ2FsIG5vICd0cmlnZ2VyJyBlc3BlcmFkbyBgJS4yNTVzJzogJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU3NAorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgYXdhaXRlZCB0cmlnZ2VyIHBhY2thZ2UgYCUuMjU1cyciCittc2dzdHIgIid0cmlnZ2VyJyBlc3BlcmFkbyBkdXBsaWNhZG8gZG8gcGFjb3RlIGAlLjI1NXMnIgorCisjOiBsaWIvZHBrZy9maWxlLmM6NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgc291cmNlIGZpbGUgJyUuMjUwcyciCittc2dzdHIgIm7Do28gZm9pIHBvc3PDrXZlbCBmYXplciBzdGF0IGFvIGZpY2hlaXJvIGZvbnRlICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy9maWxlLmM6NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoYW5nZSBvd25lcnNoaXAgb2YgdGFyZ2V0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgIm7Do28gZm9pIHBvc3PDrXZlbCBtdWRhciBvIGRvbm8gZG8gZmljaGVpcm8gZGUgZGVzdGlubyAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZmlsZS5jOjU5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgbW9kZSBvZiB0YXJnZXQgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAibsOjbyBmb2kgcG9zc8OtdmVsIGRlZmluaXIgbyBtb2RvIGRvIGZpY2hlaXJvIGRlIGRlc3Rpbm8gJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzo4NQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHVubG9jayAlczogJXMiCittc2dpZCAidW5hYmxlIHRvIHVubG9jayAlcyIKK21zZ3N0ciAibsOjbyBmb2kgcG9zc8OtdmVsIGxpYmVydGFyICVzOiAlcyIKKworIzogbGliL2Rwa2cvZmlsZS5jOjExMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hlY2sgZmlsZSAnJXMnIGxvY2sgc3RhdHVzIgorbXNnc3RyICJuw6NvIGZvaSBwb3Nzw612ZWwgdmVyaWZpY2FyIG8gZXN0YWRvIGRlIGJsb3F1ZWlvIGRvIGZpY2hlaXJvICclcyciCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzoxNDYKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInN0YXR1cyBkYXRhYmFzZSBhcmVhIGlzIGxvY2tlZCBieSBhbm90aGVyIHByb2Nlc3MiCittc2dpZCAiJXMgaXMgbG9ja2VkIGJ5IGFub3RoZXIgcHJvY2VzcyIKK21zZ3N0ciAiw6FyZWEgZGEgYmFzZSBkZSBkYWRvcyBkZSBzdGF0dXMgdGVtIHVtIGxvY2sgZGUgb3V0cm8gcHJvY2Vzc28iCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzoxNDgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byB1bmxvY2sgJXM6ICVzIgorbXNnaWQgInVuYWJsZSB0byBsb2NrICVzIgorbXNnc3RyICJuw6NvIGZvaSBwb3Nzw612ZWwgbGliZXJ0YXIgJXM6ICVzIgorCisjOiBsaWIvZHBrZy9sb2cuYzo1MworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBvcGVuIGxvZyBgJXMnOiAlc1xuIgorbXNnc3RyICJuw6NvIHBvZGUgYWJyaXIgbyBsb2cgYCVzJzogJXNcbiIKKworIzogbGliL2Rwa2cvbG9nLmM6ODUKK21zZ2lkICI8cGFja2FnZSBzdGF0dXMgYW5kIHByb2dyZXNzIGZpbGUgZGVzY3JpcHRvcj4iCittc2dzdHIgIjxlc3RhZG8gZG8gcGFjb3RlIGUgZGVzY3JpcHRvciBkZSBwcm9ncmVzc28gZG8gZmljaGVpcm8+IgorCisjOiBsaWIvZHBrZy9sb2cuYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIHRvIHN0YXR1cyBmZCAlZCIKK21zZ3N0ciAibsOjbyBmb2kgcG9zc8OtdmVsIGVzY3JldmVyIG8gc3RhdHVzIGZkICVkIgorCisjOiBsaWIvZHBrZy9tbGliLmM6NDQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAicmVhbGxvYyBmYWlsZWQgKCV6dSBieXRlcykiCittc2dpZCAibWFsbG9jIGZhaWxlZCAoJXp1IGJ5dGVzKSIKK21zZ3N0ciAicmVhbGxvYyBmYWxob3UgKCV6dSBieXRlcykiCisKKyM6IGxpYi9kcGtnL21saWIuYzo1OAorIywgYy1mb3JtYXQKK21zZ2lkICJyZWFsbG9jIGZhaWxlZCAoJXp1IGJ5dGVzKSIKK21zZ3N0ciAicmVhbGxvYyBmYWxob3UgKCV6dSBieXRlcykiCisKKyM6IGxpYi9kcGtnL21saWIuYzo3MiBsaWIvZHBrZy9tbGliLmM6OTAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI3NworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjMzNCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTEwNworbXNnaWQgImZhaWxlZCB0byBhbGxvY2F0ZSBtZW1vcnkiCittc2dzdHIgImEgYWxvY2HDp8OjbyBkZSBtZW3Ds3JpYSBmYWxob3UiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGR1cCBmb3Igc3RkJXMiCittc2dzdHIgImZhbGhvdSBkdXAgcGFyYSBzdGQlcyIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEwMworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZHVwIGZvciBmZCAlZCIKK21zZ3N0ciAiZmFsaG91IGR1cCBwYXJhIGZkICVkIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTA5Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBwaXBlIgorbXNnc3RyICJmYWxob3UgY3JpYXIgdW0gcGlwZSIKKworIzogbGliL2Rwa2cvbWxpYi5jOjExNworIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciB3cml0aW5nIHRvICclcyciCittc2dzdHIgImVycm8gYW8gZXNjcmV2ZXIgcGFyYSAnJXMnIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIGZpbGVkZXNjcmlwdG9yIGZsYWdzIGZvciAlLjI1MHMiCittc2dzdHIgIm7Do28gZm9pIHBvc3PDrXZlbCBsZXIgZmxhZ3MgZGUgZmlsZWRlc2NyaXB0b3IgcGFyYSAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMjYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNldCBjbG9zZS1vbi1leGVjIGZsYWcgZm9yICUuMjUwcyIKK21zZ3N0ciAibsOjbyBmb2kgcG9zc8OtdmVsIGFjdGl2YXIgZmxhZyBjbG9zZS1vbi1leGVjIHBhcmEgJS4yNTBzIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmlndXJhdGlvbiBlcnJvcjogJXM6JWQ6ICVzIgorbXNnc3RyICJlcnJvIGRlIGNvbmZpZ3VyYcOnw6NvOiAlczolZDogJXMiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzo3NQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiBjb25maWd1cmF0aW9uIGZpbGUgJyUuMjU1cycgZm9yIHJlYWRpbmc6ICVzIgorbXNnc3RyICJmYWxob3UgYW8gYWJyaXIgbyBmaWNoZWlybyBkZSBjb25maWd1cmHDp8OjbyAnJS4yNTVzJyBwYXJhIGxlaXR1cmE6ICVzIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYmFsYW5jZWQgcXVvdGVzIGluICclcyciCittc2dzdHIgImFzcGFzIG7Do28gY29pbmNpZGVudGVzIGVtICclcyciCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gJyVzJyIKK21zZ3N0ciAib3DDp8OjbyBkZXNjb25oZWNpZGEgJyVzJyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjEyMQorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIG5lZWRzIGEgdmFsdWUiCittc2dzdHIgIiclcycgbmVjZXNzaXRhIGRlIHVtIHZhbG9yIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTI3CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgZG9lcyBub3QgdGFrZSBhIHZhbHVlIgorbXNnc3RyICInJXMnIG7Do28gdG9tYSB2YWxvcmVzIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTMzCisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWQgZXJyb3IgaW4gY29uZmlndXJhdGlvbiBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICJlcnJvIGRlIGxlaXR1cmEgbm8gZmljaGVpcm8gZGUgY29uZmlndXJhw6fDo28gYCUuMjU1cyciCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyBjb25maWd1cmF0aW9uIGZpbGUgYCUuMjU1cyciCittc2dzdHIgImVycm8gYW8gZmVjaGFyIG8gZmljaGVpcm8gZGUgY29uZmlndXJhw6fDo28gYCUuMjU1cyciCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxNzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igb3BlbmluZyBjb25maWd1cmF0aW9uIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICJlcnJvIGFvIGZlY2hhciBvIGRpcmVjdMOzcmlvIGRlIGNvbmZpZ3VyYcOnw6NvICclcyciCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gLS0lcyIKK21zZ3N0ciAib3DDp8OjbyBkZXNjb25oZWNpZGEgLS0lcyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjIzMgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG9wdGlvbiB0YWtlcyBhIHZhbHVlIgorbXNnc3RyICJhIG9ww6fDo28gLS0lcyB0b21hIHVtIHZhbG9yIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjM3CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgb3B0aW9uIGRvZXMgbm90IHRha2UgYSB2YWx1ZSIKK21zZ3N0ciAiYSBvcMOnw6NvIC0tJXMgbsOjbyB0b21hIHZhbG9yZXMiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyNDUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gLSVjIgorbXNnc3RyICJvcMOnw6NvIGRlc2NvbmhlY2lkYSAtJWMiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLSVjIG9wdGlvbiB0YWtlcyBhIHZhbHVlIgorbXNnc3RyICJhIG9ww6fDo28gLSVjIHRvbWEgdW0gdmFsb3IiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiLSVjIG9wdGlvbiBkb2VzIG5vdCB0YWtlIGEgdmFsdWUiCittc2dzdHIgImEgb3DDp8OjbyAtJWMgbsOjbyB0b21hIHZhbG9yZXMiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAib2Jzb2xldGUgb3B0aW9uICctLSVzJ1xuIgorbXNnc3RyICJvcMOnw6NvIG9ic29sZXRhICctLSVzJ1xuIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6Mjg3CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZsaWN0aW5nIGFjdGlvbnMgLSVjICgtLSVzKSBhbmQgLSVjICgtLSVzKSIKK21zZ3N0ciAiYWPDp8O1ZXMgZW0gY29uZmxpdG8gLSVjICgtLSVzKSBlIC0lYyAoLS0lcykiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSB2YWx1ZSBmb3IgYCVzJyBmaWVsZCIKK21zZ3N0ciAidmFsb3IgZHVwbGljYWRvIHBhcmEgbyBjYW1wbyBgJXMnIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjE0NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1c2VyLWRlZmluZWQgZmllbGQgbmFtZSBgJS4qcycgdG9vIHNob3J0IgorbXNnc3RyICJub21lIGRvIGNhbXBvIGRlZmluaWRvIHBlbG8gdXRpbGl6YWRvciBgJS4qcycgw6kgbXVpdG8gcGVxdWVubyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoxNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHZhbHVlIGZvciB1c2VyLWRlZmluZWQgZmllbGQgYCUuKnMnIgorbXNnc3RyICJ2YWxvciBkdXBsaWNhZG8gcGFyYSBjYW1wbyBkZWZpbmlkbyBwZWxvIHV0aWxpemFkb3IgYCUuKnMnIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjIwNworbXNnaWQgIkNvbmZpZ3VyZWQtVmVyc2lvbiBmb3IgcGFja2FnZSB3aXRoIGluYXBwcm9wcmlhdGUgU3RhdHVzIgorbXNnc3RyICJDb25maWd1cmVkLVZlcnNpb24gcGFyYSBvIHBhY290ZSBjb20gU3RhdHVzIGluYXByb3ByaWFkbyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzICVzIGJ1dCB0cmlnZ2VycyBhcmUgYXdhaXRlZCIKK21zZ3N0ciAibyBwYWNvdGUgdGVtIGVzdGFkbyAlcyBtYXMgc8OjbyBlc3BlcmFkb3MgJ3RyaWdnZXJzJyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMjIKK21zZ2lkICJwYWNrYWdlIGhhcyBzdGF0dXMgdHJpZ2dlcnMtYXdhaXRlZCBidXQgbm8gdHJpZ2dlcnMgYXdhaXRlZCIKK21zZ3N0ciAiIgorIm8gcGFjb3RlIHRlbSBlc3RhZG8gJ3RyaWdnZXJzLWF3YWl0ZWQnIG1hcyBuw6NvIHPDo28gZXNwZXJhZG9zICd0cmlnZ2VycyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjI4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgaGFzIHN0YXR1cyAlcyBidXQgdHJpZ2dlcnMgYXJlIHBlbmRpbmciCittc2dzdHIgIm8gcGFjb3RlIHRlbSBlc3RhZG8gJXMgbWFzIGVzdMOjbyAndHJpZ2dlcnMnIHBlbmRlbnRlcyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMzIKK21zZ2lkICJwYWNrYWdlIGhhcyBzdGF0dXMgdHJpZ2dlcnMtcGVuZGluZyBidXQgbm8gdHJpZ2dlcnMgcGVuZGluZyIKK21zZ3N0ciAiIgorIm8gcGFjb3RlIHRlbSBlc3RhZG8gJ3RyaWdnZXJzLXBlbmRpbmcnIG1hcyBuw6NvIHRlbSAndHJpZ2dlcnMnIHBlbmRlbnRlcyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyNDIKK21zZ2lkICJQYWNrYWdlIHdoaWNoIGluIHN0YXRlIG5vdC1pbnN0YWxsZWQgaGFzIGNvbmZmaWxlcywgZm9yZ2V0dGluZyB0aGVtIgorbXNnc3RyICIiCisiUGFjb3RlIHF1ZSB0ZW0gZXN0YWRvIG7Do28taW5zdGFsYWRvIHRlbSBmaWNoZWlyb3MgZGUgY29uZmlndXJhw6fDo28sIGEgZXNxdWVjw6otIgorImxvcyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozMzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gcGFja2FnZSBpbmZvIGZpbGUgYCUuMjU1cycgZm9yIHJlYWRpbmciCittc2dzdHIgIiIKKyJmYWxob3UgYW8gYWJyaXIgZmljaGVpcm8gZGUgaW5mb3JtYcOnw7VlcyBkbyBwYWNvdGUgYCUuMjU1cycgcGFyYSBsZWl0dXJhIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjM0MQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW4ndCBzdGF0IHBhY2thZ2UgaW5mbyBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICJuw6NvIHBvZGUgZmF6ZXIgc3RhdCBhbyBmaWNoZWlybyBkZSBpbmZvcm1hw6fDo28gZG8gcGFjb3RlIGAlLjI1NXMnIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjM0NworIywgYy1mb3JtYXQKK21zZ2lkICJjYW4ndCBtbWFwIHBhY2thZ2UgaW5mbyBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICJuw6NvIHBvZGUgZmF6ZXIgbW1hcCBhbyBmaWNoZWlybyBkZSBpbmZvcm1hw6fDo28gZG8gcGFjb3RlIGAlLjI1NXMnIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjM1MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiY2FuJ3Qgc3RhdCBwYWNrYWdlIGluZm8gZmlsZSBgJS4yNTVzJyIKK21zZ2lkICJyZWFkaW5nIHBhY2thZ2UgaW5mbyBmaWxlICclLjI1NXMnIgorbXNnc3RyICJuw6NvIHBvZGUgZmF6ZXIgc3RhdCBhbyBmaWNoZWlybyBkZSBpbmZvcm1hw6fDo28gZG8gcGFjb3RlIGAlLjI1NXMnIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjM2MworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2xvc2UgYWZ0ZXIgcmVhZDogYCUuMjU1cyciCittc2dzdHIgImZhbGhvdSBmZWNoYXIgYXDDs3MgbGVyOiBgJS4yNTVzJyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiRU9GIGFmdGVyIGZpZWxkIG5hbWUgYCUuKnMnIgorbXNnc3RyICJFT0YgYXDDs3MgY2FtcG8gZG8gbm9tZSBgJS4qcyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDA3CisjLCBjLWZvcm1hdAorbXNnaWQgIm5ld2xpbmUgaW4gZmllbGQgbmFtZSBgJS4qcyciCittc2dzdHIgIm5ld2xpbmUgbm8gY2FtcG8gZG8gbm9tZSBgJS4qcyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDEwCisjLCBjLWZvcm1hdAorbXNnaWQgIk1TRE9TIEVPRiAoXlopIGluIGZpZWxkIG5hbWUgYCUuKnMnIgorbXNnc3RyICJNU0RPUyBFT0YgKF5aKSBubyBjYW1wbyBkbyBub21lIGAlLipzJyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmllbGQgbmFtZSBgJS4qcycgbXVzdCBiZSBmb2xsb3dlZCBieSBjb2xvbiIKK21zZ3N0ciAiY2FtcG8gZG8gbm9tZSBgJS4qcycgdGVtIGRlIHNlciBzZWd1aWRvIGRlIGRvaXMgcG9udG9zIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQyNQorIywgYy1mb3JtYXQKK21zZ2lkICJFT0YgYmVmb3JlIHZhbHVlIG9mIGZpZWxkIGAlLipzJyAobWlzc2luZyBmaW5hbCBuZXdsaW5lKSIKK21zZ3N0ciAiRU9GIGFudGVzIGRvIHZhbG9yIGRvIGNhbXBvIGAlLipzJyAoZmFsdGEgbyBuZXdsaW5lIGZpbmFsKSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiTVNET1MgRU9GIGNoYXIgaW4gdmFsdWUgb2YgZmllbGQgYCUuKnMnIChtaXNzaW5nIG5ld2xpbmU/KSIKK21zZ3N0ciAiY2FyYWN0ZXJlIE1TRE9TIEVPRiBubyB2YWxvciBkbyBjYW1wbyBgJS4qcycgKGZhbHRhIG5ld2xpbmU/KSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0NDAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIm5ld2xpbmUgaW4gZmllbGQgbmFtZSBgJS4qcyciCittc2dpZCAiYmxhbmsgbGluZSBpbiB2YWx1ZSBvZiBmaWVsZCAnJS4qcyciCittc2dzdHIgIm5ld2xpbmUgbm8gY2FtcG8gZG8gbm9tZSBgJS4qcyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDYxCisjLCBjLWZvcm1hdAorbXNnaWQgIkVPRiBkdXJpbmcgdmFsdWUgb2YgZmllbGQgYCUuKnMnIChtaXNzaW5nIGZpbmFsIG5ld2xpbmUpIgorbXNnc3RyICJFT0YgZHVyYW50ZSBvIHZhbG9yIGRvIGNhbXBvIGAlLipzJyAoZmFsdGEgbmV3bGluZSBmaW5hbCkiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NTQ2Cittc2dpZCAic2V2ZXJhbCBwYWNrYWdlIGluZm8gZW50cmllcyBmb3VuZCwgb25seSBvbmUgYWxsb3dlZCIKK21zZ3N0ciAiIgorInbDoXJpYXMgZW50cmFkYXMgZGUgaW5mb3JtYcOnw6NvIGRlIHBhY290ZXMgZW5jb250cmFkYXMsIGFwZW5hcyB1bWEgcGVybWl0aWRhIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjU3MgorIywgYy1mb3JtYXQKK21zZ2lkICJubyBwYWNrYWdlIGluZm9ybWF0aW9uIGluIGAlLjI1NXMnIgorbXNnc3RyICJzZW0gaW5mb3JtYcOnw6NvIGRlIHBhY290ZXMgZW0gYCUuMjU1cyciCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjQ1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiJXMsIGluIGZpbGUgJyUuMjU1cycgbmVhciBsaW5lICVkIHBhY2thZ2UgJyUuMjU1cyc6XG4iCisjfCAiICIKK21zZ2lkICIiCisicGFyc2luZyBmaWxlICclLjI1NXMnIG5lYXIgbGluZSAlZCBwYWNrYWdlICclLjI1NXMnOlxuIgorIiAlLjI1NXMiCittc2dzdHIgIiIKKyIlcywgbm8gZmljaGVpcm8gJyUuMjU1cycgcGVydG8gZGEgbGluaGEgJWQgcGFjb3RlICclLjI1NXMnOlxuIgorIiAiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjQ4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiJXMsIGluIGZpbGUgJyUuMjU1cycgbmVhciBsaW5lICVkOlxuIgorI3wgIiAiCittc2dpZCAiIgorInBhcnNpbmcgZmlsZSAnJS4yNTVzJyBuZWFyIGxpbmUgJWQ6XG4iCisiICUuMjU1cyIKK21zZ3N0ciAiIgorIiVzLCBubyBmaWNoZWlybyAnJS4yNTVzJyBwZXJ0byBkYSBsaW5oYSAlZDpcbiIKKyIgIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoxMjUKK21zZ2lkICJtYXkgbm90IGJlIGVtcHR5IHN0cmluZyIKK21zZ3N0ciAibsOjbyBwb2RlIHNlciB1bWEgc3RyaW5nIHZhemlhIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoxMjcKKyMsIGZ1enp5CisjfCBtc2dpZCAibXVzdCBzdGFydCB3aXRoIGFuIGFscGhhbnVtZXJpYyIKK21zZ2lkICJtdXN0IHN0YXJ0IHdpdGggYW4gYWxwaGFudW1lcmljIGNoYXJhY3RlciIKK21zZ3N0ciAidGVtIGRlIGNvbWXDp2FyIHBvciB1bSBhbGZhbnVtw6lyaWNvIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoxMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2hhcmFjdGVyIGAlYycgbm90IGFsbG93ZWQgKG9ubHkgbGV0dGVycywgZGlnaXRzIGFuZCBjaGFyYWN0ZXJzIGAlcycpIgorbXNnc3RyICIiCisibyBjYXJhY3RlcmUgYCVjJyBuw6NvIMOpIHBlcm1pdGlkbyAoYXBlbmFzIGxldHJhcywgZMOtZ2l0b3MgZSBjYXJhY3RlcmVzIGAlcycpIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoxNzgKKyMsIGZ1enp5CisjfCBtc2dpZCAiPG5vbmU+IgorbXNnY3R4dCAidmVyc2lvbiIKK21zZ2lkICI8bm9uZT4iCittc2dzdHIgIjxuZW5odW0+IgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyMDkKK21zZ2lkICJ2ZXJzaW9uIHN0cmluZyBpcyBlbXB0eSIKK21zZ3N0ciAic3RyaW5nIGRlIHZlcnPDo28gZXN0w6EgdmF6aWEiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjIyNAorbXNnaWQgInZlcnNpb24gc3RyaW5nIGhhcyBlbWJlZGRlZCBzcGFjZXMiCittc2dzdHIgInN0cmluZyBkZSB2ZXJzw6NvIGNvbnTDqW0gZXNwYcOnb3MiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjIzMAorbXNnaWQgImVwb2NoIGluIHZlcnNpb24gaXMgbm90IG51bWJlciIKK21zZ3N0ciAiZXJhIG5hIHZlcnPDo28gbsOjbyDDqSB1bSBuw7ptZXJvIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyMzIKK21zZ2lkICJub3RoaW5nIGFmdGVyIGNvbG9uIGluIHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICJuYWRhIGFww7NzIGRvaXMgcG9udG9zIG5vIG7Dum1lcm8gZGUgdmVyc8OjbyIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjQ3Cittc2dpZCAidmVyc2lvbiBudW1iZXIgZG9lcyBub3Qgc3RhcnQgd2l0aCBkaWdpdCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyNTAKK21zZ2lkICJpbnZhbGlkIGNoYXJhY3RlciBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAiY2FyYWN0ZXJlIGludsOhbGlkbyBubyBuw7ptZXJvIGRlIHZlcnPDo28iCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjI1NAorbXNnaWQgImludmFsaWQgY2hhcmFjdGVyIGluIHJldmlzaW9uIG51bWJlciIKK21zZ3N0ciAiY2FyYWN0ZXJlIGludsOhbGlkbyBubyBuw7ptZXJvIGRlIHJldmlzw6NvIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyOTkgbGliL2Rwa2cvcGFyc2VoZWxwLmM6MzExCisjLCBjLWZvcm1hdAorbXNnaWQgIm1pc3NpbmcgJXMiCittc2dzdHIgImZhbHRhICVzIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzozMDEgbGliL2Rwa2cvcGFyc2VoZWxwLmM6MzE0CisjLCBjLWZvcm1hdAorbXNnaWQgImVtcHR5IHZhbHVlIGZvciAlcyIKK21zZ3N0ciAidmFsb3IgdmF6aW8gcGFyYSAlcyIKKworIzogbGliL2Rwa2cvcGtnLWZvcm1hdC5jOjgwCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgY2hhcmFjdGVyIGAlYycgaW4gZmllbGQgd2lkdGhcbiIKK21zZ3N0ciAiY2FyYWN0ZXJlIGludsOhbGlkbyBgJWMnIG5vIGNvbXByaW1lbnRvIGRvIGNhbXBvXG4iCisKKyM6IGxpYi9kcGtnL3BrZy1mb3JtYXQuYzoxNzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2xvc2luZyBicmFjZSBtaXNzaW5nIGluIGZvcm1hdFxuIgorbXNnc3RyICJGYWx0YSBwYXLDqm50ZXNpcyBkZSBmZWNobyBubyBmb3JtYXRvXG4iCisKKyM6IGxpYi9kcGtnL3BrZy1zaG93LmM6NDAKK21zZ2lkICIobm8gZGVzY3JpcHRpb24gYXZhaWxhYmxlKSIKK21zZ3N0ciAiKHNlbSBkZXNjcmnDp8OjbyBkaXNwb27DrXZlbCkiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzo1NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaWdub3JlIHNpZ25hbCAlcyBiZWZvcmUgcnVubmluZyAlLjI1MHMiCittc2dzdHIgIm7Do28gZm9pIHBvc3PDrXZlbCBpZ25vcmFyIG8gc2luYWwgJXMgYW50ZXMgZGUgY29ycmVyICUuMjUwcyIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjY4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHVuLWNhdGNoaW5nIHNpZ25hbCAlczogJXNcbiIKK21zZ3N0ciAiZXJybyBzb2x0YW5kby1zZSBkbyBzaW5hbCAlczogJXNcbiIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjc4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIChzdWJwcm9jZXNzKTogJXNcbiIKK21zZ3N0ciAiJXMgKHN1YnByb2Nlc3NvKTsgJXNcbiIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjg5IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo0NTQKK21zZ2lkICJmb3JrIGZhaWxlZCIKK21zZ3N0ciAiZmFsaG91IGZvcmsiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMTkKKyMsIGMtZm9ybWF0Cittc2dpZCAic3VicHJvY2VzcyAlcyByZXR1cm5lZCBlcnJvciBleGl0IHN0YXR1cyAlZCIKK21zZ3N0ciAic3VicHJvY2Vzc28gJXMgcmV0b3Jub3UgZXJybyBkbyBzdGF0dXMgZGUgc2HDrWRhICVkIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTI4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ3YWl0IGZvciBzdWJwcm9jZXNzICVzIGZhaWxlZCIKK21zZ2lkICJzdWJwcm9jZXNzICVzIHdhcyBpbnRlcnJ1cHRlZCIKK21zZ3N0ciAid2FpdCBwYXJhIG8gc3ViLXByb2Nlc3NvICVzIGZhbGhvdSIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEzMAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic3VicHJvY2VzcyAlcyBraWxsZWQgYnkgc2lnbmFsICglcyklcyIKK21zZ2lkICJzdWJwcm9jZXNzICVzIHdhcyBraWxsZWQgYnkgc2lnbmFsICglcyklcyIKK21zZ3N0ciAic3VicHJvY2Vzc28gJXMgbW9ydG8gcGVsbyBzaW5hbCAoJXMpJXMiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMzIKK21zZ2lkICIsIGNvcmUgZHVtcGVkIgorbXNnc3RyICIsIGNvcmUgZHVtcGVkIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgInN1YnByb2Nlc3MgJXMgZmFpbGVkIHdpdGggd2FpdCBzdGF0dXMgY29kZSAlZCIKK21zZ3N0ciAic3VicHJvY2Vzc28gJXMgZmFsaG91IGNvbSBvIGPDs2RpZ28gZGUgc3RhdHVzIGRlIHdhaXQgJWQiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxNTEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQ2MQorIywgYy1mb3JtYXQKK21zZ2lkICJ3YWl0IGZvciBzdWJwcm9jZXNzICVzIGZhaWxlZCIKK21zZ3N0ciAid2FpdCBwYXJhIG8gc3ViLXByb2Nlc3NvICVzIGZhbGhvdSIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBwYWNrYWdlIG5hbWUgYCUuMjUwcycgaW4gdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorIm5vbWUgZGUgcGFjb3RlIGludsOhbGlkbyBgJS4yNTBzJyBubyBmaWNoZWlybyBgJS4yNTBzJyBkZSAndHJpZ2dlcnMnIGFkaWFkb3MiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjgxCisjLCBjLWZvcm1hdAorbXNnaWQgInRydW5jYXRlZCB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJmaWNoZWlybyBkZSB0cmlnZ2VycyBhZGlhZG9zIGAlLjI1MHMnIHRydW5jYWRvIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDo4NQorIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyBhdCBjaGFyYWN0ZXIgYCVzJyVzIgorbXNnc3RyICIiCisiZXJybyBkZSBzaW50YXhlIG5vIGZpY2hlaXJvIGRlICd0cmlnZ2VycycgYWRpYWRvcyBgJS4yNTBzJyBubyBjYXLDoWN0ZXIgYCVzJyVzIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4vY3JlYXRlIHRyaWdnZXJzIGxvY2tmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuw6NvIGZvaSBwb3Nzw612ZWwgYWJyaXIvY3JpYXIgbyBmaWNoZWlybyBkZSBhY2Vzc28gZXhjbHVzaXZvIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNDEKKyMsIGZ1enp5CisjfCBtc2dpZCAidHJpZ2dlcmVkIgorbXNnaWQgInRyaWdnZXJzIGFyZWEiCittc2dzdHIgImFjY2lvbmFkbyBvIHRyaWdnZXIiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjE1MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuw6NvIGZvaSBwb3Nzw612ZWwgZmF6ZXIgc3RhdCBhbyBmaWNoZWlybyBkZSAndHJpZ2dlcnMnIGFkaWFkb3MgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjE2NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuw6NvIGZvaSBwb3Nzw612ZWwgYWJyaXIgbyBmaWNoZWlybyBkZSAndHJpZ2dlcnMnIGFkaWFkb3MgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjE3OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3Blbi9jcmVhdGUgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKyJuw6NvIGZvaSBwb3Nzw612ZWwgYWJyaXIvY3JpYXIgbm92byBmaWNoZWlybyBkZSAndHJpZ2dlcnMnIGFkaWFkb3MgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjIxNQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciByZWFkaW5nIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImVycm8gYW8gbGVyIG8gZmljaGVpcm8gZGUgJ3RyaWdnZXJzJyBhZGlhZG9zIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoyMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ldyB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisibsOjbyBmb2kgcG9zc8OtdmVsIGVzY3JldmVyIG8gbm92byBmaWNoZWlybyBkZSAndHJpZ2dlcnMnIGFkaWFkb3MgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjIyOAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm7Do28gZm9pIHBvc3PDrXZlbCBmZWNoYXIgbyBub3ZvIGZpY2hlaXJvIGAlLjI1MHMnIGRlICd0cmlnZ2VycycgYWRpYWRvcyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MjMyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuw6NvIGZvaSBwb3Nzw612ZWwgaW5zdGFsYXIgbm92byBmaWNoZWlybyBkZSAndHJpZ2dlcnMnIGFkaWFkb3MgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzoyMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImludmFsaWQgb3IgdW5rbm93biBzeW50YXggaW4gdHJpZ2dlciBuYW1lIGAlLjI1MHMnIChpbiB0cmlnZ2VyIGludGVyZXN0cyBmb3IgIgorInBhY2thZ2UgYCUuMjUwcycpIgorbXNnc3RyICIiCisic2ludGF4ZSBpbnbDoWxpZGEgb3UgZGVzY29uaGVjaWRhIG5vIG5vbWUgYCUuMjUwcycgZG8gJ3RyaWdnZXInIChub3MgIgorImludGVyZXNzZXMgZG8gJ3RyaWdnZXInIHBhcmEgbyBwYWNvdGUgYCUuMjUwcycpIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MjYzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuIHRyaWdnZXIgaW50ZXJlc3QgbGlzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisiZmFsaG91IGEgYWJlcnR1cmEgZG8gZmljaGVpcm8gYCUuMjUwcycgZGUgbGlzdGEgZGUgaW50ZXJlc3NlcyBkbyAndHJpZ2dlciciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzoyOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJld2luZCB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgImZhbGhvdSBvIHJld2luZCBhbyBmaWNoZWlybyBgJS4yNTBzJyBkZSBpbnRlcmVzc2VzIGRvICd0cmlnZ2VyJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMwNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIHN5bnRheCBlcnJvcjsgaWxsZWdhbCBwYWNrYWdlIG5hbWUgYCUuMjUwcyc6ICIKKyIlLjI1MHMiCittc2dzdHIgIiIKKyJlcnJvIGRlIHNpbnRheGUgZG8gZmljaGVpcm8gZGUgaW50ZXJlc3NlLCBgJS4yNTBzJywgZG8gJ3RyaWdnZXInOyBub21lIGAiCisiJS4yNTBzJzogaWxlZ2FsIGRlIHBhY290ZTogJS4yNTBzIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzE4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisibsOjbyBmb2kgcG9zc8OtdmVsIGVzY3JldmVyIG8gbm92byBmaWNoZWlybyBgJS4yNTBzJyBkZSBpbnRlcmVzc2UgZG8gJ3RyaWdnZXInIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzIxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlICclLjI1MHMnIgorbXNnc3RyICIiCisibsOjbyBmb2kgcG9zc8OtdmVsIGVzdmF6aWFyIG8gbm92byBmaWNoZWlybyAnJS4yNTBzJyBkZSBpbnRlcmVzc2UgZG8gJ3RyaWdnZXInIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzI0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzeW5jIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgIiIKKyJuw6NvIGZvaSBwb3Nzw612ZWwgZmF6ZXIgc3luYyBhbyBub3ZvIGZpY2hlaXJvICclLjI1MHMnIGRlIGludGVyZXNzZSBkbyAiCisiJ3RyaWdnZXInIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzMyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKyJuw6NvIGZvaSBwb3Nzw612ZWwgaW5zdGFsYXIgIG8gbm92byBmaWNoZWlybyBgJS4yNTBzJyBkZSBpbnRlcmVzc2UgZG8gJ3RyaWdnZXInIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzQwIGxpYi9kcGtnL3RyaWdsaWIuYzozNDIgbGliL2Rwa2cvdHJpZ2xpYi5jOjQ3MgorIzogc3JjL3JlbW92ZS5jOjI4NiBzcmMvcmVtb3ZlLmM6Mzc3CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZW1vdmUgYCUuMjUwcyciCittc2dzdHIgIm7Do28gcG9kZSByZW1vdmVyIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzYwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorIm7Do28gZm9pIHBvc3PDrXZlbCBjcmlhciB1bSBub3ZvIGZpY2hlaXJvIGAlLjI1MHMnIGRlIGludGVyZXNzZSBkbyAndHJpZ2dlciciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozODMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKyJuw6NvIGZvaSBwb3Nzw612ZWwgZmVjaGFyIG8gbm92byBmaWNoZWlybyAnJS4yNTBzJyBkZSBpbnRlcmVzc2UgZG8gJ3RyaWdnZXInIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDU2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkdXBsaWNhdGUgZmlsZSB0cmlnZ2VyIGludGVyZXN0IGZvciBmaWxlbmFtZSBgJS4yNTBzJyBhbmQgcGFja2FnZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorImZpY2hlaXJvIGR1cGxpY2FkbyBkZSBpbnRlcmVzc2UgZGUgJ3RyaWdnZXInIHBhcmEgbyBmaWNoZWlybyBgJS4yNTBzJyBlICIKKyJwYWNvdGUgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisibsOjbyBmb2kgcG9zc8OtdmVsIGNyaWFyIG5vdm8gZmljaGVpcm8gYCUuMjUwcycgZGUgJ3RyaWdnZXJzJyBkZSBmaWNoZWlybyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ5MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorIm7Do28gZm9pIHBvc3PDrXZlbCBlc2NyZXZlciBub3ZvIGZpY2hlaXJvIGAlLjI1MHMnIGRlICd0cmlnZ2VycycgZGUgZmljaGVpcm8iCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0OTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgJyUuMjUwcyciCittc2dzdHIgIiIKKyJuw6NvIGZvaSBwb3Nzw612ZWwgZXN2YXppYXIgbyBub3ZvIGZpY2hlaXJvICclLjI1MHMnIGRlICd0cmlnZ2VycycgZGUgZmljaGVpcm8iCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0OTkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAiIgorIm7Do28gZm9pIHBvc3PDrXZlbCBmYXplciBzeW5jIG8gbm92byBmaWNoZWlybyAnJS4yNTBzJyBkZSAndHJpZ2dlcnMnIGRlICIKKyJmaWNoZWlybyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjUwMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibsOjbyBmb2kgcG9zc8OtdmVsIGZlY2hhciBvIG5vdm8gZmljaGVpcm8gJyUuMjUwcycgZGUgJ3RyaWdnZXJzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjUwNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGFzIGAlLjI1MHMnIgorbXNnc3RyICIiCisibsOjbyBmb2kgcG9zc8OtdmVsIGluc3RhbGFyIG8gbm92byBmaWNoZWlybyBgJS4yNTBzJyBkZSAndHJpZ2dlcnMnIGRlIGZpY2hlaXJvIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTQyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibsOjbyBmb2kgcG9zc8OtdmVsIGxlciBvIGZpY2hlaXJvIGAlLjI1MHMnIGRlICd0cmlnZ2VycycgZGUgZmljaGVpcm8iCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1NTIKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yIGluIGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiZXJybyBkZSBzaW50YXhlIG5vIGZpY2hlaXJvIGAlLjI1MHMnIGRlICd0cmlnZ2VycycgZGUgZmljaGVpcm8iCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImZpbGUgdHJpZ2dlcnMgcmVjb3JkIG1lbnRpb25zIGlsbGVnYWwgcGFja2FnZSBuYW1lIGAlLjI1MHMnIChmb3IgaW50ZXJlc3QgaW4gIgorImZpbGUgYCUuMjUwcycpOiAlLjI1MHMiCittc2dzdHIgIiIKKyJyZWdpc3RvIGRlIGZpY2hlaXJvIGRlICd0cmlnZ2VyJyBtZW5jaW9uYSBvIG5vbWUgZGUgcGFjb3RlIGlsZWdhbCBgIgorIiUuMjUwcycgKHBhcmEgbyBpbnRlcmVzc2Ugbm8gZmljaGVpcm8gYCUuMjUwcycpOiAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo2NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInRyaWdnZXJzIGNpIGZpbGUgYCUuMjUwcycgY29udGFpbnMgaWxsZWdhbCB0cmlnZ2VyIHN5bnRheCBpbiB0cmlnZ2VyIG5hbWUgYCIKKyIlLjI1MHMnOiAlLjI1MHMiCittc2dzdHIgIiIKKyJvIGZpY2hlaXJvIGAlLjI1MHMnIGRlIHRyaWdnZXJzIGNpIGNvbnTDqW0gc2ludGF4ZSBpbGVnYWwgZGUgdHJpZ2dlciBubyAiCisidHJpZ2dlciBjb20gbyBub21lIGAlLjI1MHMnOiAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo2ODQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gdHJpZ2dlcnMgY2kgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibsOjbyBmb2kgcG9zc8OtdmVsIGFicmlyIG8gZmljaGVpcm8gZGUgdHJpZ2dlcnMgY2kgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo2OTkKK21zZ2lkICJ0cmlnZ2VycyBjaSBmaWxlIGNvbnRhaW5zIHVua25vd24gZGlyZWN0aXZlIHN5bnRheCIKK21zZ3N0ciAibyBmaWNoZWlybyBkZSB0cmlnZ2VycyBjaSBjb250w6ltIHNpbnRheGUgY29tIGRpcmVjdGl2YSBkZXNjb25oZWNpZGEiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo3MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJpZ2dlcnMgY2kgZmlsZSBjb250YWlucyB1bmtub3duIGRpcmVjdGl2ZSBgJS4yNTBzJyIKK21zZ3N0ciAibyBmaWNoZWlybyBkZSB0cmlnZ2VycyBjaSBjb250w6ltIGEgZGlyZWN0aXZhIGAlLjI1MHMnIGRlc2NvbmhlY2lkYSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjc3NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHRyaWdnZXJzIHN0YXRlIGRpcmVjdG9yeSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorIm7Do28gZm9pIHBvc3PDrXZlbCBjcmlhciBvIGRpcmVjdMOzcmlvLCBgJS4yNTBzJywgIGRlIGVzdGFkbyBkZSAndHJpZ2dlcnMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Nzc5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgb3duZXJzaGlwIG9mIHRyaWdnZXJzIHN0YXRlIGRpcmVjdG9yeSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorIm7Do28gZm9pIHBvc3PDrXZlbCBkZWZpbmlyIG8gZG9ubyBkbyBkaXJlY3TDs3JpbyxgJS4yNTBzJywgZGUgZXN0YWRvIGRlICIKKyIndHJpZ2dlcnMnIgorCisjOiBsaWIvZHBrZy90cmlnbmFtZS5jOjM0Cittc2dpZCAiZW1wdHkgdHJpZ2dlciBuYW1lcyBhcmUgbm90IHBlcm1pdHRlZCIKK21zZ3N0ciAibsOjbyBzw6NvIHBlcm1pdGlkb3MgJ3RyaWdnZXJzJyBjb20gbm9tZXMgdmF6aW9zIgorCisjOiBsaWIvZHBrZy90cmlnbmFtZS5jOjM4Cittc2dpZCAidHJpZ2dlciBuYW1lIGNvbnRhaW5zIGludmFsaWQgY2hhcmFjdGVyIgorbXNnc3RyICJvIG5vbWUgZG8gJ3RyaWdnZXInIGNvbnTDqW0gdW0gY2Fyw6FjdGVyIGludsOhbGlkbyIKKworIzogbGliL2Rwa2cvdXRpbHMuYzo1NgorIywgYy1mb3JtYXQKK21zZ2lkICJyZWFkIGVycm9yIGluIGAlLjI1MHMnIgorbXNnc3RyICJlcnJvIGRlIGxlaXR1cmEgZW0gYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3V0aWxzLmM6NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmdldHMgZ2F2ZSBhbiBlbXB0eSBzdHJpbmcgZnJvbSBgJS4yNTBzJyIKK21zZ3N0ciAiZmdldHMgZGV1IHVtYSBzdHJpbmcgdmF6aWEgZGUgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3V0aWxzLmM6NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAidG9vLWxvbmcgbGluZSBvciBtaXNzaW5nIG5ld2xpbmUgaW4gYCUuMjUwcyciCittc2dzdHIgImxpbmhhIGRlbWFzaWFkbyBjb21wcmlkYSBvdSBmYWx0YSAnbmV3bGluZScgZW0gYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3V0aWxzLmM6NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgcmVhZGluZyBgJS4yNTBzJyIKK21zZ3N0ciAiZmltIGRlIGZpY2hlaXJvIGluZXNwZXJhZG8gYW8gbGVyIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy92YXJidWYuYzo4MiBsaWIvZHBrZy92YXJidWYuYzo4OAorbXNnaWQgImVycm9yIGZvcm1hdHRpbmcgc3RyaW5nIGludG8gdmFyYnVmIHZhcmlhYmxlIgorbXNnc3RyICJlcnJvIGFvIGZvcm1hdGFyIGEgc3RyaW5nIHBhcmEgdW1hIHZhcmnDoXZlbCB2YXJidWYiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjE3OSBzcmMvYXJjaGl2ZXMuYzoyMDAgc3JjL2FyY2hpdmVzLmM6NzI0Cittc2dpZCAiZXJyb3IgcmVhZGluZyBmcm9tIGRwa2ctZGViIHBpcGUiCittc2dzdHIgImVycm8gYW8gbGVyIGRvIHBpcGUgZHBrZy1kZWIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjE5NQorIywgYy1mb3JtYXQKK21zZ2lkICJza2lwcGVkIHVucGFja2luZyBmaWxlICclLjI1NXMnIChyZXBsYWNlZCBvciBleGNsdWRlZD8pIgorbXNnc3RyICJzYWx0b3UgZGVzY29tcGFjdGFyIGZpY2hlaXJvICclcy4yNTVzJyAoc3Vic3RpdHXDrWRvIG91IGV4Y2x1w61kbz8pIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoyNDYgc3JjL2FyY2hpdmVzLmM6MjUwCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHNldHRpbmcgdGltZXN0YW1wcyBvZiBgJS4yNTVzJyIKK21zZ3N0ciAiZXJybyBhbyBkZWZpbmlyIHRpbWVzdGFtcHMgZGUgYCUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjI2MgorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIG93bmVyc2hpcCBvZiBzeW1saW5rIGAlLjI1NXMnIgorbXNnc3RyICJlcnJvIGFvIGRlZmluaXIgZG9ubyBkbyBsaW5rIHNpbWLDs2xpY28gYCUyNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6MjY1IHNyYy9hcmNoaXZlcy5jOjczNCBzcmMvc3RhdGNtZC5jOjE2MworIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIG93bmVyc2hpcCBvZiBgJS4yNTVzJyIKK21zZ3N0ciAiZXJybyBhbyBkZWZpbmlyIGRvbm8gZGUgYCUyNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6MjY3IHNyYy9hcmNoaXZlcy5jOjczNiBzcmMvc3RhdGNtZC5jOjE2NQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIHBlcm1pc3Npb25zIG9mIGAlLjI1NXMnIgorbXNnc3RyICJlcnJvIGFvIGRlZmluaXIgcGVybWlzc8O1ZXMgZGUgYCUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjM5NQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gc3RhdCAoZGVyZWZlcmVuY2UpIGV4aXN0aW5nIHN5bWxpbmsgYCUuMjUwcyciCittc2dzdHIgIiIKKyJmYWxob3UgbyBmYXplciBzdGF0IChhbnVsYXIgcmVmZXLDqm5jaWEpIGRlIGxpZ2HDp8OjbyBzaW1iw7NsaWNhIGV4aXN0ZW50ZSBgIgorIiUuMjUwcyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjQxNworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZmFpbGVkIHRvIHN0YXQgKGRlcmVmZXJlbmNlKSBwcm9wb3NlZCBuZXcgc3ltbGluayB0YXJnZXQgYCUuMjUwcycgZm9yICIKKyJzeW1saW5rIGAlLjI1MHMnIgorbXNnc3RyICIiCisiZmFsaG91IG8gZmF6ZXIgc3RhdCAoYW51bGFyIHJlZmVyw6puY2lhKSBwcm9wb3N0byBub3ZvIGFsdm8gcGFyYSBhIGxpZ2HDp8OjbyAiCisic2ltYsOzbGljYSBgJS4yNTBzJyBwYXJhIGEgbGlnYcOnw6NvIHNpbWLDs2xpY2EgYCUuMjUwcyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjQ3NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidHJ5aW5nIHRvIG92ZXJ3cml0ZSBgJS4yNTBzJywgd2hpY2ggaXMgdGhlIGRpdmVydGVkIHZlcnNpb24gb2YgYCIKKyIlLjI1MHMnIChwYWNrYWdlOiAlLjEwMHMpIgorbXNnc3RyICIiCisiYSB0ZW50YXIgc29icmUtZXNjcmV2ZXIgYCUuMjUwcycsIHF1ZSDDqSBhIHZlcnPDo28gZGVzdmlhZGEgZGUgYCIKKyIlMjUwcycgKHBhY290ZTogJS4xMDBzKSIKKworIzogc3JjL2FyY2hpdmVzLmM6NDgxCisjLCBjLWZvcm1hdAorbXNnaWQgInRyeWluZyB0byBvdmVyd3JpdGUgYCUuMjUwcycsIHdoaWNoIGlzIHRoZSBkaXZlcnRlZCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICJhIHRlbnRhciBzb2JyZS1lc2NyZXZlciAlLjI1MHMnLCBxdWUgw6kgYSB2ZXJzw6NvIGRlc3ZpYWRhIGRlIGAlMjUwcyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjUxMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBgJS4yNTVzJyAod2hpY2ggSSB3YXMgYWJvdXQgdG8gaW5zdGFsbCkiCittc2dzdHIgIm7Do28gZm9pIHBvc3PDrXZlbCBmYXplciBzdGF0IGEgYCUuMjU1cycgKHF1ZSBldSBpYSBpbnN0YWxhcikiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjUxOQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidW5hYmxlIHRvIGNsZWFuIHVwIG1lc3Mgc3Vycm91bmRpbmcgYCUuMjU1cycgYmVmb3JlIGluc3RhbGxpbmcgYW5vdGhlciAiCisidmVyc2lvbiIKK21zZ3N0ciAiIgorIm7Do28gZm9pIHBvc3PDrXZlbCBlZmVjdHVhciB1bWEgbGltcGV6YSDDoCB2b2x0YSBkZSBgJS4yNTVzJyBhbnRlcyBkZSBpbnN0YWxhciAiCisib3V0cmEgdmVyc8OjbyIKKworIzogc3JjL2FyY2hpdmVzLmM6NTI1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IHJlc3RvcmVkIGAlLjI1NXMnIGJlZm9yZSBpbnN0YWxsaW5nIGFub3RoZXIgdmVyc2lvbiIKK21zZ3N0ciAiIgorIm7Do28gZm9pIHBvc3PDrXZlbCBmYXplciBzdGF0IGFvIHJlY3VwZXJhZG8gYCUuMjU1cycgYW50ZXMgZGUgaW5zdGFsYXIgb3V0cmEgIgorInZlcnPDo28iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjU2MQorIywgYy1mb3JtYXQKK21zZ2lkICJhcmNoaXZlIGNvbnRhaW5lZCBvYmplY3QgYCUuMjU1cycgb2YgdW5rbm93biB0eXBlIDB4JXgiCittc2dzdHIgImFycXVpdm8gY29udGluaGEgb2JqZWN0byBgJS4yNTVzJyBkZSB0aXBvIGRlc2NvbmhlY2lkbyAweCV4IgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2MjYgc3JjL2RpdmVydGNtZC5jOjE1MCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NjgyCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIyMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI4NAorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE0NDEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE2ODAKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTY3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjQ0CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUyNworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc3RhdCBmaWxlICclcyciCittc2dzdHIgIk7Do28gcG9kZSBmYXplciBzdGF0IGFvIGZpY2hlaXJvICclcyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjY0MQorIywgYy1mb3JtYXQKK21zZ2lkICJSZXBsYWNpbmcgZmlsZXMgaW4gb2xkIHBhY2thZ2UgJXMgLi4uXG4iCittc2dzdHIgIkEgc3Vic3RpdHVpciBmaWNoZWlyb3Mgbm8gcGFjb3RlIGFudGlnbyAlcyAuLi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6NjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlcGxhY2VkIGJ5IGZpbGVzIGluIGluc3RhbGxlZCBwYWNrYWdlICVzIC4uLlxuIgorbXNnc3RyICJTdWJzdGl0dcOtZG8gcG9yIGZpY2hlaXJvcyBubyBwYWNvdGUgaW5zdGFsYWRvICVzIC4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInRyeWluZyB0byBvdmVyd3JpdGUgZGlyZWN0b3J5ICclLjI1MHMnIGluIHBhY2thZ2UgJS4yNTBzICUuMjUwcyB3aXRoICIKKyJub25kaXJlY3RvcnkiCittc2dzdHIgIiIKKyJhIHRlbnRhciBzb2JyZS1lc2NyZXZlciBvIGRpcmVjdMOzcmlvICclLjI1MHMnIG5vIHBhY290ZSAlLjI1MHMgJS4yNTBzIGNvbSB1bSAiCisibsOjbyBkaXJlY3TDs3JpbyIKKworIzogc3JjL2FyY2hpdmVzLmM6NjYxCisjLCBjLWZvcm1hdAorbXNnaWQgInRyeWluZyB0byBvdmVyd3JpdGUgJyUuMjUwcycsIHdoaWNoIGlzIGFsc28gaW4gcGFja2FnZSAlLjI1MHMgJS4yNTBzIgorbXNnc3RyICIiCisiYSB0ZW50YXIgc29icmUtZXNjcmV2ZXIgJyUuMjUwcycsIHF1ZSB0YW1iw6ltIGVzdMOhIG5vIHBhY290ZSAlLjI1MHMgJS4yNTBzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3MTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBgJS4yNTVzJyAod2hpbGUgcHJvY2Vzc2luZyBgJS4yNTVzJykiCittc2dzdHIgIm7Do28gY29uc2VndWl1IGNyaWFyIGAlLjI1NXMnIChlbnF1YW50byBwcm9jZXNzYXZhIGAlLjI1NXMnKSIKKworIzogc3JjL2FyY2hpdmVzLmM6NzE4CisjLCBjLWZvcm1hdAorbXNnaWQgImJhY2tlbmQgZHBrZy1kZWIgZHVyaW5nIGAlLjI1NXMnIgorbXNnc3RyICJiYWNrZW5kIGRwa2ctZGViIGR1cmFudGUgYCUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc0NCBzcmMvYXJjaGl2ZXMuYzo5MDggc3JjL2FyY2hpdmVzLmM6OTQ5CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3Npbmcvd3JpdGluZyBgJS4yNTVzJyIKK21zZ3N0ciAiZXJybyBhbyBmZWNoYXIvZXNjcmV2ZXIgYCUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc0OAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBwaXBlIGAlLjI1NXMnIgorbXNnc3RyICJlcnJvIGFvIGNyaWFyIHBpcGUgYCUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc1MyBzcmMvYXJjaGl2ZXMuYzo3NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgZGV2aWNlIGAlLjI1NXMnIgorbXNnc3RyICJlcnJvIGFvIGNyaWFyIGRpc3Bvc2l0aXZvIGAlLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgaGFyZCBsaW5rIGAlLjI1NXMnIgorbXNnc3RyICJlcnJvIGFvIGNyaWFyIGhhcmQgbGluayBgJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6Nzc3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo1MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgc3ltYm9saWMgbGluayBgJS4yNTVzJyIKK21zZ3N0ciAiZXJybyBhbyBjcmlhciBsaW5rIHNpbWLDs2xpY28gYCUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc4MworIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBkaXJlY3RvcnkgYCUuMjU1cyciCittc2dzdHIgImVycm8gYW8gY3JpYXIgbyBkaXJlY3TDs3JpbyBgJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6ODIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBtb3ZlIGFzaWRlIGAlLjI1NXMnIHRvIGluc3RhbGwgbmV3IHZlcnNpb24iCittc2dzdHIgIm7Do28gZm9pIHBvc3PDrXZlbCBtb3ZlciBgJS4yNTVzJyBwYXJhIGluc3RhbGFyIGEgbm92YSB2ZXJzw6NvIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4MzIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjMyMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBsaW5rIGAlLjI1NXMnIgorbXNnc3RyICJuw6NvIGZvaSBwb3Nzw612ZWwgbGVyIGxpbmsgYCUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjgzNCBzcmMvY29uZmlndXJlLmM6NDIzCisjLCBjLWZvcm1hdAorbXNnaWQgInN5bWJvbGljIGxpbmsgJyUuMjUwcycgc2l6ZSBoYXMgY2hhbmdlZCBmcm9tICVqZCB0byAlemQiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6ODM5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBtYWtlIGJhY2t1cCBzeW1saW5rIGZvciBgJS4yNTVzJyIKK21zZ3N0ciAibsOjbyBmb2kgcG9zc8OtdmVsIGNyaWFyIGJhY2t1cCBkbyBsaW5rIHNpbWLDs2xpY28gcGFyYSBgJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6ODQxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaG93biBiYWNrdXAgc3ltbGluayBmb3IgYCUuMjU1cyciCittc2dzdHIgIm7Do28gZm9pIHBvc3PDrXZlbCBmYXplciBjaG93biBhIGJhY2t1cCBkbyBsaW5rIHNpbWLDs2xpY28gcGFyYSBgJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6ODQ2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBtYWtlIGJhY2t1cCBsaW5rIG9mIGAlLjI1NXMnIGJlZm9yZSBpbnN0YWxsaW5nIG5ldyB2ZXJzaW9uIgorbXNnc3RyICIiCisibsOjbyBmb2kgcG9zc8OtdmVsIGZhemVyIGJhY2t1cCBsaW5rIGRlIGAlLjI1NXMnIGFudGVzIGRlIGluc3RhbGFyIGEgbm92YSAiCisidmVyc8OjbyIKKworIzogc3JjL2FyY2hpdmVzLmM6ODYzIHNyYy9hcmNoaXZlcy5jOjk1NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgdmVyc2lvbiBvZiBgJS4yNTVzJyIKK21zZ3N0ciAibsOjbyBmb2kgcG9zc8OtdmVsIGluc3RhbGFyIG5vdmEgdmVyc8OjbyBkZSBgJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6OTAyIHNyYy9hcmNoaXZlcy5jOjk0NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiAnJS4yNTVzJyIKK21zZ3N0ciAibsOjbyBmb2kgcG9zc8OtdmVsIGFicmlyICclLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo5NDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgZmlsZSAnJS4yNTVzJyIKK21zZ3N0ciAibsOjbyBmb2kgcG9zc8OtdmVsIHN5bmMgYW8gZmljaGVpcm8gJyUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImlnbm9yaW5nIGRlcGVuZGVuY3kgcHJvYmxlbSB3aXRoICVzOlxuIgorIiVzIgorbXNnc3RyICIiCisiYSBpZ25vcmFyIHByb2JsZW1hIGRlIGRlcGVuZMOqbmNpYXMgY29tICVzOlxuIgorIiVzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDA1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJjb25zaWRlcmluZyBkZWNvbmZpZ3VyYXRpb24gb2YgZXNzZW50aWFsXG4iCisiIHBhY2thZ2UgJXMsIHRvIGVuYWJsZSAlcy4iCittc2dzdHIgIiIKKyJhIGNvbnNpZGVyYXIgYSBkZXNjb25maWd1cmHDp8OjbyBkbyBwYWNvdGUgZXNzZW5jaWFsXG4iCisiJXMsIHBhcmEgcGVybWl0aXIgJXMuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDA4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBubywgJXMgaXMgZXNzZW50aWFsLCB3aWxsIG5vdCBkZWNvbmZpZ3VyZVxuIgorIiBpdCBpbiBvcmRlciB0byBlbmFibGUgJXMuXG4iCittc2dzdHIgIiIKKyJkcGtnOiBuw6NvLCAlcyDDqSBlc3NlbmNpYWwsIG7Do28gaXLDoSBkZXNjb25maWd1cmFyXG4iCisiIGRlIG1vZG8gYSBwZXJtaXRpciAlcy5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAyMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogbm8sIGNhbm5vdCBwcm9jZWVkIHdpdGggJXMgKC0tYXV0by1kZWNvbmZpZ3VyZSB3aWxsIGhlbHApOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogbsOjbywgbsOjbyBwb2RlIHByb2NlZGVyIGNvbSAlcyAoLS1hdXRvLWRlY29uZmlndXJlIGlyw6EgYWp1ZGFyKTpcbiIKKyIlcyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAzMgorIywgYy1mb3JtYXQKK21zZ2lkICJyZW1vdmFsIG9mICUuMjUwcyIKK21zZ3N0ciAicmVtb8Onw6NvIGRlICUuMjUwcyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA1NworIywgYy1mb3JtYXQKK21zZ2lkICJpbnN0YWxsYXRpb24gb2YgJS4yNTBzIgorbXNnc3RyICJpbnN0YWxhw6fDo28gZGUgJS4yNTBzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDU4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBjb25zaWRlcmluZyBkZWNvbmZpZ3VyYXRpb24gb2YgJXMsIHdoaWNoIHdvdWxkIGJlIGJyb2tlbiBieSAlcyAuLi5cbiIKK21zZ3N0ciAiIgorImRwa2c6IGEgY29uc2lkZXJhciBhIGRlc2NvbmZpZ3VyYcOnw6NvIGRlICVzLCBxdWUgc2VyaWEgZXN0cmFnYWRhIHBvciAlcyAuLi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA2NQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiB5ZXMsIHdpbGwgZGVjb25maWd1cmUgJXMgKGJyb2tlbiBieSAlcykuXG4iCittc2dzdHIgImRwa2c6IHNpbSwgaXLDoSBkZXNjb25maWd1cmFyICVzIChlc3RyYWdhZG8gcG9yICVzKS5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA2OSBzcmMvYXJjaGl2ZXMuYzoxMTg3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiByZWdhcmRpbmcgJXMgY29udGFpbmluZyAlczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6IGFjZXJjYSBkZSAlcyBjb250ZW5kbyAlczpcbiIKKyIlcyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA3NworbXNnaWQgImlnbm9yaW5nIGJyZWFrYWdlLCBtYXkgcHJvY2VlZCBhbnl3YXkhIgorbXNnc3RyICJhIGlnbm9yYXIgcHJvYmxlbWEsIHBvZGUgcHJvY2VkZXIgZGUgcXVhbHF1ZXIgbW9kbyAhIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDgyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpbnN0YWxsaW5nICUuMjUwcyB3b3VsZCBicmVhayAlLjI1MHMsIGFuZFxuIgorIiBkZWNvbmZpZ3VyYXRpb24gaXMgbm90IHBlcm1pdHRlZCAoLS1hdXRvLWRlY29uZmlndXJlIG1pZ2h0IGhlbHApIgorbXNnc3RyICIiCisiaW5zdGFsYXIgJS4yNTBzIGlyw6EgZXN0cmFnYXIgJS4yNTBzLCBlXG4iCisibsOjbyDDqSBwZXJtaXRpZGEgYSBkZXNjb25maWd1cmHDp8OjbyAoLS1hdXRvLWRlY29uZmlndXJlIHBvZGVyw6EgYWp1ZGFyKSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA4NgorIywgYy1mb3JtYXQKK21zZ2lkICJpbnN0YWxsaW5nICUuMjUwcyB3b3VsZCBicmVhayBleGlzdGluZyBzb2Z0d2FyZSIKK21zZ3N0ciAiaW5zdGFsYXIgJS4yNTBzIGlyw6EgZXN0cmFnYXIgc29mdHdhcmUgZXhpc3RlbnRlIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTE2CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IGNvbnNpZGVyaW5nIHJlbW92aW5nICVzIGluIGZhdm91ciBvZiAlcyAuLi5cbiIKK21zZ3N0ciAiZHBrZzogYSBjb25zaWRlcmFyIHJlbW92ZXIgJXMgZW0gZmF2b3JlY2ltZW50byBkZSAlcyAuLi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTEyMgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgcHJvcGVybHkgaW5zdGFsbGVkIC0gaWdub3JpbmcgYW55IGRlcGVuZGVuY2llcyBvbiBpdC5cbiIKK21zZ3N0ciAiIgorIiVzIG7Do28gZXN0w6EgaW5zdGFsYWRvIGNvbnZlbmllbnRlbWVudGUgLSBhIGlnbm9yYXIgcXVhaXNxdWVyIGRlcGVuZMOqbmNpYXMgIgorIm5lbGUuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogbWF5IGhhdmUgdHJvdWJsZSByZW1vdmluZyAlcywgYXMgaXQgcHJvdmlkZXMgJXMgLi4uXG4iCittc2dzdHIgImRwa2c6IHBvZGUgdGVyIHByb2JsZW1hcyBhbyByZW1vdmVyICVzLCBjb21vIGRpc3BvbmliaWxpemEgJXMgLi4uXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IHBhY2thZ2UgJXMgcmVxdWlyZXMgcmVpbnN0YWxsYXRpb24sIGJ1dCB3aWxsIHJlbW92ZSBhbnl3YXkgYXMgeW91ICIKKyJyZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiIKKyJkcGtnOiBvIHBhY290ZSAlcyBuZWNlc3NpdGEgZGUgcmVpbnN0YWxhw6fDo28sIG1hcyB2YWkgc2VyIHJlbW92aWRvIGRlICIKKyJxdWFscXVlciBtb2RvIGNvbmZvcm1lIHZvY8OqIHBlZGl1LlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTY5CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IHBhY2thZ2UgJXMgcmVxdWlyZXMgcmVpbnN0YWxsYXRpb24sIHdpbGwgbm90IHJlbW92ZS5cbiIKK21zZ3N0ciAiZHBrZzogbyBwYWNvdGUgJXMgbmVjZXNzaXRhIGRlIHJlaW5zdGFsYcOnw6NvLCBuw6NvIGlyw6EgcmVtb3Zlci5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE3OAorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiB5ZXMsIHdpbGwgcmVtb3ZlICVzIGluIGZhdm91ciBvZiAlcy5cbiIKK21zZ3N0ciAiZHBrZzogc2ltLCBpcsOhIHJlbW92ZXIgJXMgZW0gZmF2b3JlY2ltZW50byBkZSAlcyxcbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE5MAorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mbGljdGluZyBwYWNrYWdlcyAtIG5vdCBpbnN0YWxsaW5nICUuMjUwcyIKK21zZ3N0ciAicGFjb3RlcyBlbSBjb25mbGl0byAtIG7Do28gaXLDoSBpbnN0YWxhciAlLjI1MHMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExOTEKK21zZ2lkICJpZ25vcmluZyBjb25mbGljdCwgbWF5IHByb2NlZWQgYW55d2F5ISIKK21zZ3N0ciAiYSBpZ25vcmFyIGNvbmZsaXRvLCBwb2RlIHByb2NlZGVyIGRlIHF1YWxxdWVyIG1vZG8gISIKKworIzogc3JjL2FyY2hpdmVzLmM6MTIzNQorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIC0tcmVjdXJzaXZlIG5lZWRzIGF0IGxlYXN0IG9uZSBwYXRoIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIC0tcmVjdXJzaXZlIG5lY2Vzc2l0YSBkZSBwZWxvIG1lbm9zIHVtIGFyZ3VtZW50byBkZSBwYXRoIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjQ1Cittc2dpZCAiZmluZCBmb3IgZHBrZyAtLXJlY3Vyc2l2ZSIKK21zZ3N0ciAicHJvY3VyYSBwb3IgZHBrZyAtLXJlY3Vyc2l2ZSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI2NgorbXNnaWQgImZhaWxlZCB0byBmZG9wZW4gZmluZCdzIHBpcGUiCittc2dzdHIgImZhbGhvdSBmZG9wZW4gYW8gcGlwZSBkZSBmaW5kIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjcyCittc2dpZCAiZXJyb3IgcmVhZGluZyBmaW5kJ3MgcGlwZSIKK21zZ3N0ciAiZXJybyBuYSBsZWl0dXJhIGRvIHBpcGUgZGUgZmluZCIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3MworbXNnaWQgImVycm9yIGNsb3NpbmcgZmluZCdzIHBpcGUiCittc2dzdHIgImVycm8gYW8gZmVjaGFyIG8gcGlwZSBkZSBmaW5kIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjc2CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbmQgZm9yIC0tcmVjdXJzaXZlIHJldHVybmVkIHVuaGFuZGxlZCBlcnJvciAlaSIKK21zZ3N0ciAiYSBwcm9jdXJhIGRlIC0tcmVjdXJzaXZlIHJldG9ybm91IHVtIGVycm8gJWkgbsOjbyB0cmF0YWRvIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjc5Cittc2dpZCAic2VhcmNoZWQsIGJ1dCBmb3VuZCBubyBwYWNrYWdlcyAoZmlsZXMgbWF0Y2hpbmcgKi5kZWIpIgorbXNnc3RyICJwcm9jdXJvdSwgbWFzIG7Do28gZW5jb250cm91IHBhY290ZXMgKGZpY2hlaXJvcyBjb2luY2lkaW5kbyBjb20gKi5kZWIpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjkwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYXQgbGVhc3Qgb25lIHBhY2thZ2UgYXJjaGl2ZSBmaWxlIGFyZ3VtZW50IgorbXNnc3RyICIiCisiLS0lcyBuZWNlc3NpdGEgcGVsbyBtZW5vcyBkZSB1bSBhcmd1bWVudG8gZGUgZmljaGVpcm8gZGUgYXJxdWl2byBkZSBwYWNvdGUiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzMjUgc3JjL2RpdmVydGNtZC5jOjc4IHNyYy9kaXZlcnRjbWQuYzoxMTgKKyM6IHNyYy9lbnF1aXJ5LmM6MTY2IHNyYy9lbnF1aXJ5LmM6Mjc5IHNyYy9lbnF1aXJ5LmM6NDQ5IHNyYy9lbnF1aXJ5LmM6NDUxCisjOiBzcmMvZW5xdWlyeS5jOjQ2NCBzcmMvbWFpbi5jOjY2IHNyYy9tYWluLmM6MTYzIHNyYy9tYWluLmM6MzE0CisjOiBzcmMvbWFpbi5jOjQ5MyBzcmMvcGFja2FnZXMuYzoyNTQgc3JjL3F1ZXJ5Y21kLmM6MjUyIHNyYy9xdWVyeWNtZC5jOjM1NQorIzogc3JjL3F1ZXJ5Y21kLmM6Mzk2IHNyYy9xdWVyeWNtZC5jOjQwNCBzcmMvcXVlcnljbWQuYzo0NDggc3JjL3F1ZXJ5Y21kLmM6NTE3CisjOiBzcmMvcXVlcnljbWQuYzo2MDYgc3JjL3F1ZXJ5Y21kLmM6NjUwIHNyYy9zZWxlY3QuYzo3OSBzcmMvc3RhdGNtZC5jOjY4CisjOiBzcmMvc3RhdGNtZC5jOjk4IHNyYy90cmlnY21kLmM6NTggc3JjL3RyaWdjbWQuYzo5MCBkcGtnLWRlYi9idWlsZC5jOjQ0MQorIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIxNyBkcGtnLWRlYi9leHRyYWN0LmM6MjUwIGRwa2ctZGViL2luZm8uYzoyMDMKKyM6IGRwa2ctZGViL2luZm8uYzoyNjUgZHBrZy1kZWIvbWFpbi5jOjYwIGRwa2ctZGViL21haW4uYzoxMjYKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjI1NyBkcGtnLXNwbGl0L21haW4uYzo1NCBkcGtnLXNwbGl0L21haW4uYzo5OAorIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE0NCBkcGtnLXNwbGl0L3F1ZXVlLmM6MjgwCittc2dpZCAiPHN0YW5kYXJkIG91dHB1dD4iCittc2dzdHIgIjxzYcOtZGEgc3RhbmRhcmQ+IgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzI2IHNyYy9wYWNrYWdlcy5jOjI1NSBzcmMvcXVlcnljbWQuYzoyNTMKKyM6IHNyYy9xdWVyeWNtZC5jOjM1MyBzcmMvcXVlcnljbWQuYzo0NTQgc3JjL3F1ZXJ5Y21kLmM6NTE4IHNyYy9zZWxlY3QuYzo4MAorIzogZHBrZy1zcGxpdC9tYWluLmM6MTY5IGRwa2ctc3BsaXQvcXVldWUuYzoyMTgKK21zZ2lkICI8c3RhbmRhcmQgZXJyb3I+IgorbXNnc3RyICI8ZXJybyBzdGFuZGFyZD4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzNjcKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIlNlbGVjdGluZyBwcmV2aW91c2x5IGRlc2VsZWN0ZWQgcGFja2FnZSAlcy5cbiIKK21zZ2lkICJTZWxlY3RpbmcgcHJldmlvdXNseSB1bnNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dzdHIgIkEgc2VsZWNjaW9uYXIgcGFjb3RlIGFudGVyaW9ybWVudGUgbsOjbyBzZWxlY2Npb25hZG8gJXNcbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTM3MQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiU2tpcHBpbmcgZGVzZWxlY3RlZCBwYWNrYWdlICVzLlxuIgorbXNnaWQgIlNraXBwaW5nIHVuc2VsZWN0ZWQgcGFja2FnZSAlcy5cbiIKK21zZ3N0ciAiQSBwYXNzYXIgw6AgZnJlbnRlIGRvIHBhY290ZSBuw6NvIHNlbGVjY2lvbmFkbyAlcy5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTM4NworIywgYy1mb3JtYXQKK21zZ2lkICJWZXJzaW9uICUuMjUwcyBvZiAlLjI1MHMgYWxyZWFkeSBpbnN0YWxsZWQsIHNraXBwaW5nLlxuIgorbXNnc3RyICJWZXJzw6NvICUuMjUwcyBkZSAlLjI1MHMgasOhIGVzdMOhIGluc3RhbGFkbywgcGFzc2FuZG8gw6AgZnJlbnRlLFxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzk3CisjLCBjLWZvcm1hdAorbXNnaWQgImRvd25ncmFkaW5nICUuMjUwcyBmcm9tICUuMjUwcyB0byAlLjI1MHMuIgorbXNnc3RyICJhIGZhemVyIGRvd25ncmFkZSBhICUuMjUwcyBkZSAlLjI1MHMgcGFyYSAlLjI1MHMuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxNDAyCisjLCBjLWZvcm1hdAorbXNnaWQgIldpbGwgbm90IGRvd25ncmFkZSAlLjI1MHMgZnJvbSB2ZXJzaW9uICUuMjUwcyB0byAlLjI1MHMsIHNraXBwaW5nLlxuIgorbXNnc3RyICIiCisiTsOjbyBpcsOhIGZhemVyIGRvd25ncmFkZSBkZSAlLjI1MHMgZGEgdmVyc8OjbyAlLjI1MHMgcGFyYSBhICUuMjUwcywgcGFzc2FuZG8gw6AgIgorImZyZW50ZS5cbiIKKworIzogc3JjL2NsZWFudXAuYzo4NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidW5hYmxlIHRvIHJlbW92ZSBuZXdseS1pbnN0YWxsZWQgdmVyc2lvbiBvZiBgJS4yNTBzJyB0byBhbGxvdyByZWluc3RhbGxhdGlvbiAiCisib2YgYmFja3VwIGNvcHkiCittc2dzdHIgIiIKKyJuw6NvIGZvaSBwb3Nzw612ZWwgcmVtb3ZlciB2ZXJzw6NvIHJlY2VudGVtZW50ZSBpbnN0YWxhZGEgZGUgYCUuMjUwcycgcGFyYSAiCisicGVybWl0aXIgcmUtaW5zdGFsYcOnw6NvIGRlIGPDs3BpYSBiYWNrdXAiCisKKyM6IHNyYy9jbGVhbnVwLmM6OTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlc3RvcmUgYmFja3VwIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dzdHIgIm7Do28gZm9pIHBvc3PDrXZlbCByZXN0YXVyYXIgdmVyc8OjbyBkZSBiYWNrdXAgZGUgYCUuMjUwcyciCisKKyM6IHNyYy9jbGVhbnVwLmM6OTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBiYWNrdXAgY29weSBvZiAnJS4yNTBzJyIKK21zZ3N0ciAibsOjbyBmb2kgcG9zc8OtdmVsIHJlbW92ZXIgY8OzcGlhIGRlIGJhY2t1cCBkZSAnJS4yNTBzJyIKKworIzogc3JjL2NsZWFudXAuYzoxMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBuZXdseS1pbnN0YWxsZWQgdmVyc2lvbiBvZiBgJS4yNTBzJyIKK21zZ3N0ciAibsOjbyBmb2kgcG9zc8OtdmVsIHJlbW92ZXIgYSB2ZXJzw6NvIGFjYWJhZGEgZGUgaW5zdGFsYXIgZGUgYCUuMjUwcyciCisKKyM6IHNyYy9jbGVhbnVwLmM6MTA4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgbmV3bHktZXh0cmFjdGVkIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dzdHIgIm7Do28gZm9pIHBvc3PDrXZlbCByZW1vdmVyIHZlcnPDo28gZGUgYCUuMjUwcycgcmVjZW50ZW1lbnRlIGV4dHJhw61kYSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjEwNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBuZXcgZGlzdHJpYnV0ZWQgY29uZmZpbGUgJyUuMjUwcyciCittc2dzdHIgIm7Do28gZm9pIHBvc3PDrXZlbCBmYXplciBzdGF0IGRvIG5vdm8gY29uZmZpbGUgZGlzdHJpYnXDrWRvICclLjI1MHMnIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGN1cnJlbnQgaW5zdGFsbGVkIGNvbmZmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisibsOjbyDDqSBwb3Nzw612ZWwgZmF6ZXIgc3RhdCBhbyBmaWNoZWlybyBkZSBjb25maWd1cmHDp8OjbyBgJS4yNTBzJyBhY3R1YWxtZW50ZSAiCisiaW5zdGFsYWRvIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTI2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJDb25maWd1cmF0aW9uIGZpbGUgYCVzJywgZG9lcyBub3QgZXhpc3Qgb24gc3lzdGVtLlxuIgorIkluc3RhbGxpbmcgbmV3IGNvbmZpZyBmaWxlIGFzIHlvdSByZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiIKKyJcbiIKKyJGaWNoZWlybyBkZSBjb25maWd1cmHDp8OjbyBgJXMnLCBuw6NvIGV4aXN0ZSBubyBzaXN0ZW1hLlxuIgorIkEgaW5zdGFsYXIgbm92byBmaWNoZWlybyBkZSBjb25maWd1cmHDp8OjbyBjb25mb3JtZSB2b2PDqiBwZWRpdS5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE2OAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIHJlbW92ZSBvbGQgYmFja3VwICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiJXM6IGZhbGhvdSByZW1vdmVyIG8gYmFja3VwIGFudGlnbyAnJS4yNTBzJzogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW5hbWUgJyUuMjUwcycgdG8gJyUuMjUwcyc6ICVzIgorbXNnc3RyICIlczogZmFsaG91IHJlbm9tZWFyICclLjI1MHMnIHBhcmEgJyUuMjUwcyc6ICVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTgyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiJXM6IGZhbGhvdSByZW1vdmVyICclLjI1MHMnOiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE4OAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIHJlbW92ZSBvbGQgZGlzdHJpYnV0ZWQgdmVyc2lvbiAnJS4yNTBzJzogJXMiCittc2dzdHIgIiVzOiBmYWxob3UgcmVtb3ZlciBhIHZlcnPDo28gYW50aWdhIGRpc3RyaWJ1w61kYSAnJS4yNTBzJzogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW1vdmUgJyUuMjUwcycgKGJlZm9yZSBvdmVyd3JpdGUpOiAlcyIKK21zZ3N0ciAiJXM6IGZhbGhvdSByZW1vdmVyICclLjI1MHMnIChhbnRlcyBkZSBzb2JyZS1lc2NyZXZlcik6ICVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTk2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gbGluayAnJS4yNTBzJyB0byAnJS4yNTBzJzogJXMiCittc2dzdHIgIiVzOiBmYWxob3UgZmF6ZXIgbyBsaW5rICclLjI1MHMnIHBhcmEgJyUuMjUwcyc6ICVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjAwCisjLCBjLWZvcm1hdAorbXNnaWQgIkluc3RhbGxpbmcgbmV3IHZlcnNpb24gb2YgY29uZmlnIGZpbGUgJXMgLi4uXG4iCittc2dzdHIgIkEgaW5zdGFsYXIgbm92YSB2ZXJzw6NvIGRvIGZpY2hlaXJvIGRlIGNvbmZpZ3VyYcOnw6NvICVzIC4uLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjA2IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo1NDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgYCUuMjUwcycgYXMgYCUuMjUwcyciCittc2dzdHIgIk7Do28gZm9pIHBvc3PDrXZlbCBpbnN0YWxhciBgJS4yNTBzJyBjb21vIGAlLjI1MHMnIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjU3CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHBhY2thZ2UgbmFtZWQgYCVzJyBpcyBpbnN0YWxsZWQsIGNhbm5vdCBjb25maWd1cmUiCittc2dzdHIgIm7Do28gZXN0w6EgaW5zdGFsYWRvIG5lbmh1bSBwYWNvdGUgY2hhbWFkbyBgJXMnLCBuw6NvIHBvZGUgY29uZmlndXJhciIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI2MAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlICUuMjUwcyBpcyBhbHJlYWR5IGluc3RhbGxlZCBhbmQgY29uZmlndXJlZCIKK21zZ3N0ciAibyBwYWNvdGUgJS4yNTBzIGrDoSBlc3TDoSBpbnN0YWxhZG8gZSBjb25maWd1cmFkbyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI2MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisicGFja2FnZSAlLjI1MHMgaXMgbm90IHJlYWR5IGZvciBjb25maWd1cmF0aW9uXG4iCisiIGNhbm5vdCBjb25maWd1cmUgKGN1cnJlbnQgc3RhdHVzIGAlLjI1MHMnKSIKK21zZ3N0ciAiIgorIm8gcGFjb3RlICUuMjUwcyBuw6NvIGVzdMOhIHByb250byBwYXJhIGNvbmZpZ3VyYcOnw6NvXG4iCisiIG7Do28gcG9kZSBjb25maWd1cmFyIChzdGF0dXMgYWN0dWFsIGAlLjI1MHMnKSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI5NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogZGVwZW5kZW5jeSBwcm9ibGVtcyBwcmV2ZW50IGNvbmZpZ3VyYXRpb24gb2YgJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiBwcm9ibGVtYXMgY29tIGRlcGVuZMOqbmNpYXMgaW1wZWRlbSBhIGNvbmZpZ3VyYcOnw6NvIGRlICVzOlxuIgorIiVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6Mjk3Cittc2dpZCAiZGVwZW5kZW5jeSBwcm9ibGVtcyAtIGxlYXZpbmcgdW5jb25maWd1cmVkIgorbXNnc3RyICJwcm9ibGVtYXMgY29tIGRlcGVuZMOqbmNpYXMgLSBhIGRlaXhhciBwb3IgY29uZmlndXJhciIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjMwMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogJXM6IGRlcGVuZGVuY3kgcHJvYmxlbXMsIGJ1dCBjb25maWd1cmluZyBhbnl3YXkgYXMgeW91IHJlcXVlc3RlZDpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiBwcm9ibGVtYXMgY29tIGRlcGVuZMOqbmNpYXMsIG1hcyBhIGNvbmZpZ3VyYXIgw6AgbWVzbWEgY29uZm9ybWUgIgorInBlZGl1OlxuIgorIiVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MzA5Cittc2dpZCAiIgorIlBhY2thZ2UgaXMgaW4gYSB2ZXJ5IGJhZCBpbmNvbnNpc3RlbnQgc3RhdGUgLSB5b3Ugc2hvdWxkXG4iCisiIHJlaW5zdGFsbCBpdCBiZWZvcmUgYXR0ZW1wdGluZyBjb25maWd1cmF0aW9uLiIKK21zZ3N0ciAiIgorIk8gcGFjb3RlIGVzdMOhIG51bSBtYXUgZXN0YWRvIGRlIGluY29uc2lzdMOqbmNpYSAtIGRldmVcbiIKKyIgcmVpbnN0YWxhLWxvIGFudGVzIGRlIHRlbnRhciBjb25maWd1cmEtbG8uIgorCisjOiBzcmMvY29uZmlndXJlLmM6MzEyCisjLCBjLWZvcm1hdAorbXNnaWQgIlNldHRpbmcgdXAgJXMgKCVzKSAuLi5cbiIKK21zZ3N0ciAiQSBpbnN0YWxhciAlcyAoJXMpIC4uLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6Mzk2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogdW5hYmxlIHRvIHN0YXQgY29uZmlnIGZpbGUgJyVzJ1xuIgorIiAoPSAnJXMnKTogJXMiCittc2dzdHIgIiIKKyIlczogbsOjbyBmb2kgcG9zc8OtdmVsIGZhemVyIHN0YXQgYW8gZmljaGVpcm8gZGUgY29uZmlndXJhw6fDo28gJyVzJ1xuIgorIiAoPSAnJXMnKTogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzo0MDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBjb25maWcgZmlsZSAnJXMnIGlzIGEgY2lyY3VsYXIgbGlua1xuIgorIiAoPSAnJXMnKSIKK21zZ3N0ciAiIgorIiVzOiBmaWNoZWlybyBkZSBjb25maWd1cmHDp8OjbyAnJXMnIMOpIHVtIGxpbmsgY2lyY3VsYXJcbiIKKyIgKD0gJyVzJykiCisKKyM6IHNyYy9jb25maWd1cmUuYzo0MTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiB1bmFibGUgdG8gcmVhZGxpbmsgY29uZmZpbGUgJyVzJ1xuIgorIiAoPSAnJXMnKTogJXMiCittc2dzdHIgIiIKKyIlczogbsOjbyBmb2kgcG9zc8OtdmVsIGZhemVyIHJlYWRsaW5rIGFvIGZpY2hlaXJvIGRlIGNvbmZpZ3VyYcOnw6NvICclcydcbiIKKyIgKD0gJyVzJyk6ICVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDQ0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogY29uZmZpbGUgJyUuMjUwcycgcmVzb2x2ZXMgdG8gZGVnZW5lcmF0ZSBmaWxlbmFtZVxuIgorIiAoJyVzJyBpcyBhIHN5bWxpbmsgdG8gJyVzJykiCittc2dzdHIgIiIKKyIlczogZmljaGVpcm8gZGUgY29uZmlndXJhw6fDo28gJyUuMjUwcycgcmVzb2x2ZSBwYXJhIGZpY2hlaXJvIGRlZ2VuZXJhZG9cbiIKKyIgKCclcyDDqSB1bSBsaW5rIHNpbWLDs2xpY28gcGFyYSAnJXMnKSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQ2MAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogY29uZmZpbGUgJyUuMjUwcycgaXMgbm90IGEgcGxhaW4gZmlsZSBvciBzeW1saW5rICg9ICclcycpIgorbXNnc3RyICIiCisiJXM6IGZpY2hlaXJvIGRlIGNvbmZpZ3VyYcOnw6NvICclLjI1MHMnIG7Do28gw6kgdW0gZmljaGVpcm8gZGUgdGV4dG8gb3UgbGluayAiCisic2ltYsOzbGljbyAoPSAnJXMnKSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQ4NgorbXNnaWQgIm1kNWhhc2giCittc2dzdHIgIm1kNWhhc2giCisKKyM6IHNyYy9jb25maWd1cmUuYzo0OTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IHVuYWJsZSB0byBvcGVuIGNvbmZmaWxlICVzIGZvciBoYXNoOiAlcyIKK21zZ3N0ciAiIgorIiVzOiBuw6NvIGZvaSBwb3Nzw612ZWwgYWJyaXIgbyBmaWNoZWlybyBkZSBjb25maWd1cmHDp8OjbyAlcyBwYXJhIG8gaGFzaDogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzo1MjIgc3JjL2NvbmZpZ3VyZS5jOjUyNgorbXNnaWQgImNvbmZmaWxlIGRpZmZlcmVuY2UgdmlzdWFsaXplciIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NTQzCittc2dpZCAiVHlwZSBgZXhpdCcgd2hlbiB5b3UncmUgZG9uZS5cbiIKK21zZ3N0ciAiRXNjcmV2YSBgZXhpdCcgcXVhbmRvIHRpdmVyIHRlcm1pbmFkby5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjU1MiBzcmMvY29uZmlndXJlLmM6NTU2Cittc2dpZCAiY29uZmZpbGUgc2hlbGwiCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYwMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiQ29uZmlndXJhdGlvbiBmaWxlIGAlcyciCittc2dzdHIgIiIKKyJcbiIKKyJGaWNoZWlybyBkZSBjb25maWd1cmHDp8OjbyBgJXMnIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjA0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAoYWN0dWFsbHkgYCVzJykiCittc2dzdHIgIiAobmEgdmVyZGFkZSBgJXMnKSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYwOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiID09PiBGaWxlIG9uIHN5c3RlbSBjcmVhdGVkIGJ5IHlvdSBvciBieSBhIHNjcmlwdC5cbiIKKyIgPT0+IEZpbGUgYWxzbyBpbiBwYWNrYWdlIHByb3ZpZGVkIGJ5IHBhY2thZ2UgbWFpbnRhaW5lci5cbiIKK21zZ3N0ciAiIgorIlxuIgorIiA9PT4gRmljaGVpcm8gbm8gc2lzdGVtYSBjcmlhZG8gcG9yIHNpIG91IHBvciB1bSBzY3JpcHQuXG4iCisiID09PiBGaWNoZWlybyB0YW1iw6ltIG5vIHBhY290ZSBkaXNwb25pYmlsaXphZG8gcGVsbyBtYWludGFpbmVyIGRvIHBhY290ZS5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYxMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiICAgICBOb3QgbW9kaWZpZWQgc2luY2UgaW5zdGFsbGF0aW9uLlxuIgorbXNnc3RyICIiCisiXG4iCisiICAgICBOw6NvIGZvaSBtb2RpZmljYWRvIGRlc2RlIGEgaW5zdGFsYcOnw6NvLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjE1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgPT0+IE1vZGlmaWVkIChieSB5b3Ugb3IgYnkgYSBzY3JpcHQpIHNpbmNlIGluc3RhbGxhdGlvbi5cbiIKK21zZ3N0ciAiIgorIlxuIgorIiA9PT4gTW9kaWZpY2FkbyAocG9yIHNpIG91IHBvciB1bSBzY3JpcHQpIGRlc2RlIGEgaW5zdGFsYcOnw6NvLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjE2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgPT0+IERlbGV0ZWQgKGJ5IHlvdSBvciBieSBhIHNjcmlwdCkgc2luY2UgaW5zdGFsbGF0aW9uLlxuIgorbXNnc3RyICIiCisiXG4iCisiID09PiBBcGFnYWRvIChwb3Igc2kgb3UgcG9yIHVtIHNjcmlwdCkgZGVzZGUgYSBpbnN0YWxhw6fDo28uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBQYWNrYWdlIGRpc3RyaWJ1dG9yIGhhcyBzaGlwcGVkIGFuIHVwZGF0ZWQgdmVyc2lvbi5cbiIKK21zZ3N0ciAiID09PiBPIGRpc3RyaWJ1aWRvciBkbyBwYWNvdGUgZW52aW91IHVtYSB2ZXJzw6NvIGFjdHVhbGl6YWRhLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjIwCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgICAgVmVyc2lvbiBpbiBwYWNrYWdlIGlzIHRoZSBzYW1lIGFzIGF0IGxhc3QgaW5zdGFsbGF0aW9uLlxuIgorbXNnc3RyICIgICAgQSB2ZXJzw6NvIG5vIHBhY290ZSDDqSBhIG1lc21hIHF1ZSBhIGRhIMO6bHRpbWEgaW5zdGFsYcOnw6NvLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjI4CisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gVXNpbmcgbmV3IGZpbGUgYXMgeW91IHJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiID09PiBBIHVzYXIgbyBub3ZvIGZpY2hlaXJvIGNvbmZvcm1lIHZvY8OqIHBlZGl1LlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gVXNpbmcgY3VycmVudCBvbGQgZmlsZSBhcyB5b3UgcmVxdWVzdGVkLlxuIgorbXNnc3RyICIgPT0+IEEgdXNhciBvIGFjdHVhbCBmaWNoZWlybyBhbnRpZ28gY29uZm9ybWUgdm9jw6ogcGVkaXUuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBLZWVwaW5nIG9sZCBjb25maWcgZmlsZSBhcyBkZWZhdWx0LlxuIgorbXNnc3RyICIgPT0+IEEgbWFudGVyIG8gZmljaGVpcm8gZGUgY29uZmlndXJhw6fDo28gYW50aWdvIGNvbW8gcHJlZGVmaW5pw6fDo28uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBVc2luZyBuZXcgY29uZmlnIGZpbGUgYXMgZGVmYXVsdC5cbiIKK21zZ3N0ciAiID09PiBBIHVzYXIgbyBub3ZvIGZpY2hlaXJvIGRlIGNvbmZpZ3VyYcOnw6NvIGNvbW8gcGFkcsOjby5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY1MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiICAgV2hhdCB3b3VsZCB5b3UgbGlrZSB0byBkbyBhYm91dCBpdCA/ICBZb3VyIG9wdGlvbnMgYXJlOlxuIgorIiAgICBZIG9yIEkgIDogaW5zdGFsbCB0aGUgcGFja2FnZSBtYWludGFpbmVyJ3MgdmVyc2lvblxuIgorIiAgICBOIG9yIE8gIDoga2VlcCB5b3VyIGN1cnJlbnRseS1pbnN0YWxsZWQgdmVyc2lvblxuIgorIiAgICAgIEQgICAgIDogc2hvdyB0aGUgZGlmZmVyZW5jZXMgYmV0d2VlbiB0aGUgdmVyc2lvbnNcbiIKKyIgICAgICBaICAgICA6IHN0YXJ0IGEgc2hlbGwgdG8gZXhhbWluZSB0aGUgc2l0dWF0aW9uXG4iCittc2dzdHIgIiIKKyIgICBPIHF1ZSBkZXNlamEgZmF6ZXI/IEFzIHN1YXMgb3DDp8O1ZXMgc8OjbzpcbiIKKyIgICAgWSBvdSBJICA6IGluc3RhbGFyIGEgdmVyc8OjbyBkbyBwYWNvdGUgZG8gbWFpbnRhaW5lclxuIgorIiAgICBOIG91IE8gIDogbWFudGVyIGEgdmVyc8OjbyBhY3R1YWxtZW50ZSBpbnN0YWxhZGFcbiIKKyIgICAgICBEICAgICA6IG1vc3RyYXIgZGlmZXJlbsOnYXMgZW50cmUgYXMgdmVyc8O1ZXNcbiIKKyIgICAgICBaICAgICA6IGluaWNpYXIgdW1hIHNoZWxsIHBhcmEgZXhhbWluYXIgYSBzaXR1YcOnw6NvXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIFRoZSBkZWZhdWx0IGFjdGlvbiBpcyB0byBrZWVwIHlvdXIgY3VycmVudCB2ZXJzaW9uLlxuIgorbXNnc3RyICIgQSBhY8Onw6NvIHBhZHLDo28gw6kgbWFudGVyIGEgc3VhIHZlcnPDo28gYWN0dWFsLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjYxCisjLCBjLWZvcm1hdAorbXNnaWQgIiBUaGUgZGVmYXVsdCBhY3Rpb24gaXMgdG8gaW5zdGFsbCB0aGUgbmV3IHZlcnNpb24uXG4iCittc2dzdHIgIiBBIGFjw6fDo28gcGFkcsOjbyDDqSBpbnN0YWxhciBhIG5vdmEgdmVyc8Ojby5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY2NgorbXNnaWQgIltkZWZhdWx0PU5dIgorbXNnc3RyICJbcGFkcsOjbz1OXSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY2NworbXNnaWQgIltkZWZhdWx0PVldIgorbXNnc3RyICJbcGFkcsOjbz1ZXSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY2OAorbXNnaWQgIltubyBkZWZhdWx0XSIKK21zZ3N0ciAiW3NlbSBwYWRyw6NvXSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY3MQorbXNnaWQgImVycm9yIHdyaXRpbmcgdG8gc3RkZXJyLCBkaXNjb3ZlcmVkIGJlZm9yZSBjb25mZmlsZSBwcm9tcHQiCittc2dzdHIgIiIKKyJlcnJvIGFvIGVzY3JldmVyIHBhcmEgc3RkZXJyLCBkZXNjb2JlcnRvIGFudGVzIGRhIHByb21wdCBkbyBmaWNoZWlybyBkZSAiCisiY29uZmlndXJhw6fDo28iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2ODAKK21zZ2lkICJyZWFkIGVycm9yIG9uIHN0ZGluIGF0IGNvbmZmaWxlIHByb21wdCIKK21zZ3N0ciAiZXJybyBkZSBsZWl0dXJhIGVtIHN0ZGluIG5hIHByb21wdCBkbyBmaWNoZWlybyBkZSBjb25maWd1cmHDp8OjbyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY4MQorbXNnaWQgIkVPRiBvbiBzdGRpbiBhdCBjb25mZmlsZSBwcm9tcHQiCittc2dzdHIgIkVPRiBlbSBzdGRpbiBuYSBwcm9tcHQgZG8gZmljaGVpcm8gZGUgY29uZmlndXJhw6fDo28iCisKKyM6IHNyYy9kZXBjb24uYzoxNzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgZGVwZW5kcyBvbiAlcyIKK21zZ3N0ciAiJXMgZGVwZW5kZSBkZSAlcyIKKworIzogc3JjL2RlcGNvbi5jOjE3OAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBwcmUtZGVwZW5kcyBvbiAlcyIKK21zZ3N0ciAiJXMgcHJlLWRlcGVuZGUgZGUgJXMiCisKKyM6IHNyYy9kZXBjb24uYzoxODEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcmVjb21tZW5kcyAlcyIKK21zZ3N0ciAiJXMgcmVjb21lbmRhICVzIgorCisjOiBzcmMvZGVwY29uLmM6MTg0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHN1Z2dlc3RzICVzIgorbXNnc3RyICIlcyBzdWdlcmUgJXMiCisKKyM6IHNyYy9kZXBjb24uYzoxODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgYnJlYWtzICVzIgorbXNnc3RyICIlcyBkYW5pZmljYSAlcyIKKworIzogc3JjL2RlcGNvbi5jOjE5MAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBjb25mbGljdHMgd2l0aCAlcyIKK21zZ3N0ciAiJXMgZW0gY29uZmxpdG8gY29tICVzIgorCisjOiBzcmMvZGVwY29uLmM6MTkzCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGVuaGFuY2VzICVzIgorbXNnc3RyICIlcyBtZWxob3JhICVzIgorCisjOiBzcmMvZGVwY29uLmM6Mjk2CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHRvIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIHZhaSBzZXIgcmVtb3ZpZG8uXG4iCisKKyM6IHNyYy9kZXBjb24uYzoyOTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdG8gYmUgZGVjb25maWd1cmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyB2YWkgc2VyIGRlc2NvbmZpZ3VyYWRvLlxuIgorCisjOiBzcmMvZGVwY29uLmM6MzA0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHRvIGJlIGluc3RhbGxlZCwgYnV0IGlzIHZlcnNpb24gJS4yNTBzLlxuIgorbXNnc3RyICIgICUuMjUwcyB2YWkgc2VyIGluc3RhbGFkbywgbWFzIMOpIHZlcnPDo28gJS4yNTBzLlxuIgorCisjOiBzcmMvZGVwY29uLmM6MzE0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIGluc3RhbGxlZCwgYnV0IGlzIHZlcnNpb24gJS4yNTBzLlxuIgorbXNnc3RyICIgICUuMjUwcyBlc3TDoSBpbnN0YWxhZG8sIG1hcyDDqSB2ZXJzw6NvICUuMjUwcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjMzMworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB1bnBhY2tlZCwgYnV0IGhhcyBuZXZlciBiZWVuIGNvbmZpZ3VyZWQuXG4iCittc2dzdHIgIiAlLjI1MHMgZXN0w6EgZGVzY29tcGFjdGFkbywgbWFzIG51bmNhIGZvaSBjb25maWd1cmFkby5cbiIKKworIzogc3JjL2RlcGNvbi5jOjMzNworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB1bnBhY2tlZCwgYnV0IGlzIHZlcnNpb24gJS4yNTBzLlxuIgorbXNnc3RyICIgICUuMjUwcyBlc3TDoSBkZXNjb21wYWN0YWRvLCBtYXMgw6kgdmVyc8OjbyAlLjI1MHMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozNDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgbGF0ZXN0IGNvbmZpZ3VyZWQgdmVyc2lvbiBpcyAlLjI1MHMuXG4iCittc2dzdHIgIiAgJS4yNTBzIGEgw7psdGltYSB2ZXJzw6NvIGNvbmZpZ3VyYWRhIMOpICUuMjUwcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjM1MworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyAlcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgw6kgJXMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozODgKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGJ1dCBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyBkaXNwb25pYmlsaXphICUuMjUwcyBtYXMgdmFpIHNlciByZW1vdmlkby5cbiIKKworIzogc3JjL2RlcGNvbi5jOjM5MgorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYnV0IGlzIHRvIGJlIGRlY29uZmlndXJlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMgZGlzcG9uaWJpbGl6YSAlLjI1MHMgbWFzIHZhaSBzZXIgZGVzY29uZmlndXJhZG8uXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0MDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGJ1dCBpcyAlcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgZGlzcG9uaWJpbGl6YSAlLjI1MHMgbWFzIMOpICVzLlxuIgorCisjOiBzcmMvZGVwY29uLmM6NDE1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIG5vdCBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIG7Do28gZXN0w6EgaW5zdGFsYWRvLlxuIgorCisjOiBzcmMvZGVwY29uLmM6NDQzCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzICh2ZXJzaW9uICUuMjUwcykgaXMgdG8gYmUgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIgICUuMjUwcyAodmVyc8OjbyAlLjI1MHMpIHZhaSBzZXIgaW5zdGFsYWRvLlxuIgorCisjOiBzcmMvZGVwY29uLmM6NDY4CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzICh2ZXJzaW9uICUuMjUwcykgaXMgcHJlc2VudCBhbmQgJXMuXG4iCittc2dzdHIgIiAgJS4yNTBzICh2ZXJzw6NvICUuMjUwcykgZXN0w6EgcHJlc2VudGUgZSAlcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjQ5NQorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYW5kIGlzIHRvIGJlIGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMgZGlzcG9uaWJpbGl6YSAlLjI1MHMgZSB2YWkgc2VyIGluc3RhbGFkby5cbiIKKworIzogc3JjL2RlcGNvbi5jOjUzNworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYW5kIGlzIHByZXNlbnQgYW5kICVzLlxuIgorbXNnc3RyICIgICUuMjUwcyBkaXNwb25pYmlsaXphICUuMjUwcyBlIGVzdMOhIHByZXNlbnRlIGUgJXMuXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MAorIywgZnV6enkKKyN8IG1zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IHF1ZXJ5aW5nIHBhY2thZ2VzLiIKK21zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IGRpdmVydGluZyBmaWxlcy4iCittc2dzdHIgIlVzZSAtLWhlbHAgcGFyYSBhanVkYSBzb2JyZSBjb25zdWx0YXIgcGFjb3Rlcy4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo2NiBzcmMvc3RhdGNtZC5jOjU3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo4MAorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gJXMgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiRGViaWFuICVzIHZlcnPDo28gJXMuXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo3MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDEwIEd1aWxsZW0gSm92ZXIuXG4iCittc2dzdHIgIiIKKyJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMTAgR3VpbGxlbSBKb3Zlci5cbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjc1IHNyYy9tYWluLmM6NjMgc3JjL3F1ZXJ5Y21kLmM6NjAzIHNyYy9zdGF0Y21kLmM6NjUKKyM6IHNyYy90cmlnY21kLmM6NTUgZHBrZy1kZWIvbWFpbi5jOjU3IGRwa2ctc3BsaXQvbWFpbi5jOjUxCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6ODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgb3JcbiIKKyJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKK21zZ3N0ciAiIgorIklzdG8gw6kgc29mdHdhcmUgbGl2cmU7IHZlamEgYSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzw6NvIDIgb3VcbiIKKyJwb3N0ZXJpb3IgcGFyYSBjb25kacOnw7VlcyBkZSBjw7NwaWEuIE7Do28gZXhpc3RlIE5FTkhVTUEgZ2FyYW50aWEuXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo4NyBzcmMvbWFpbi5jOjgxIHNyYy9xdWVyeWNtZC5jOjYxNSBzcmMvc3RhdGNtZC5jOjc3CisjOiBkcGtnLWRlYi9tYWluLmM6NjkgZHBrZy1zcGxpdC9tYWluLmM6NjMgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjk3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gPGNvbW1hbmQ+XG4iCisiXG4iCittc2dzdHIgIiIKKyJVdGlsaXphw6fDo286ICVzIFs8b3DDp8Ojbz4gLi4uXSA8Y29tYW5kbz5cbiIKKyJcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjkxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIFstLWFkZF0gPGZpbGU+ICAgICAgICAgICBhZGQgYSBkaXZlcnNpb24uXG4iCisiICAtLXJlbW92ZSA8ZmlsZT4gICAgICAgICAgcmVtb3ZlIHRoZSBkaXZlcnNpb24uXG4iCisiICAtLWxpc3QgWzxnbG9iLXBhdHRlcm4+XSAgc2hvdyBmaWxlIGRpdmVyc2lvbnMuXG4iCisiICAtLWxpc3RwYWNrYWdlIDxmaWxlPiAgICAgc2hvdyB3aGF0IHBhY2thZ2UgZGl2ZXJ0cyB0aGUgZmlsZS5cbiIKKyIgIC0tdHJ1ZW5hbWUgPGZpbGU+ICAgICAgICByZXR1cm4gdGhlIGRpdmVydGVkIGZpbGUuXG4iCisiXG4iCittc2dzdHIgIiIKKyJDb21hbmRvczpcbiIKKyIgWy0tYWRkXSA8ZmljaGVpcm8+ICAgICAgICBhY3Jlc2NlbnRhciB1bSBkZXN2aW8uXG4iCisiIC0tcmVtb3ZlIDxmaWNoZWlybz4gICAgICAgcmVtb3ZlciBvIGRlc3Zpby5cbiIKKyIgLS1saXN0IFs8Z2xvYi1wYXR0ZXJuPl0gICBtb3N0cmFyIG9zIGRlc3Zpb3MgZGUgZmljaGVpcm9zLlxuIgorIiAtLWxpc3RwYWNrYWdlIDxmaWNoZWlybz4gIG1vc3RyYXIgcXVhbCBvIHBhY290ZSBxdWUgZGVzdmlhIG8gZmljaGVpcm8uXG4iCisiIC0tdHJ1ZW5hbWUgPGZpY2hlaXJvPiAgICAgcmV0b3JuYXIgbyBmaWNoZWlybyBkZXN2aWFkby5cbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjEwMAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tcGFja2FnZSA8cGFja2FnZT4gICAgICBuYW1lIG9mIHRoZSBwYWNrYWdlIHdob3NlIGNvcHkgb2YgPGZpbGU+IHdpbGwgIgorIm5vdFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmUgZGl2ZXJ0ZWQuXG4iCisiICAtLWxvY2FsICAgICAgICAgICAgICAgICAgYWxsIHBhY2thZ2VzJyB2ZXJzaW9ucyBhcmUgZGl2ZXJ0ZWQuXG4iCisiICAtLWRpdmVydCA8ZGl2ZXJ0LXRvPiAgICAgdGhlIG5hbWUgdXNlZCBieSBvdGhlciBwYWNrYWdlcycgdmVyc2lvbnMuXG4iCisiICAtLXJlbmFtZSAgICAgICAgICAgICAgICAgYWN0dWFsbHkgbW92ZSB0aGUgZmlsZSBhc2lkZSAob3IgYmFjaykuXG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgc2V0IHRoZSBkaXJlY3Rvcnkgd2l0aCB0aGUgZGl2ZXJzaW9ucyBmaWxlLlxuIgorIiAgLS10ZXN0ICAgICAgICAgICAgICAgICAgIGRvbid0IGRvIGFueXRoaW5nLCBqdXN0IGRlbW9uc3RyYXRlLlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHF1aWV0IG9wZXJhdGlvbiwgbWluaW1hbCBvdXRwdXQuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorbXNnc3RyICIiCisiT3DDp8O1ZXM6XG4iCisiICAtLXBhY2thZ2UgPHBhY290ZT4gICAgICAgbm9tZSBkbyBwYWNvdGUgY3VqYSBjw7NwaWEgZGUgPGZpY2hlaXJvPiBuw6NvIFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2Vyw6EgZGVzdmlhZGEuXG4iCisiICAtLWxvY2FsICAgICAgICAgICAgICAgICAgdG9kYXMgYXMgdmVyc8O1ZXMgZG8gcGFjb3RlcyBlc3TDo28gZGVzdmlhZGFzLlxuIgorIiAgLS1kaXZlcnQgPGRlc3ZpYXIgcGFyYT4gIG8gbm9tZSB1c2FkbyBwZWxhcyBvdXRyYXMgdmVyc8O1ZXMgZG8gcGFjb3RlLlxuIgorIiAgLS1yZW5hbWUgICAgICAgICAgICAgICAgIG1vdmUgbyBmaWNoZWlybyBwYXJhIG91dHJvIGxhZG8gKG91IHBhcmEgdHLDoXMpLlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0w7NyaW8+ICBkZWZpbmlyIG8gZGlyZWN0w7NyaW8gY29tIG9zIGZpY2hlaXJvcyBkZXN2aWFkb3MuXG4iCisiICAtLXRlc3QgICAgICAgICAgICAgICAgICAgbsOjbyBmYXplciBuYWRhLCBhcGVuYXMgZXhlbXBsaWZpY2FyLlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIG9wZXJhw6fDo28gZW0gbW9kbyBzaWxlbmNpb3NvLCBzYcOtZGEgbcOtbmltYS5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICBtb3N0cmFyIGVzdGEgbWVuc2FnZW0gZGUgYWp1ZGEuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgaW5kaWNhciBhIHZlcnPDo28uXG4iCisiXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIldoZW4gYWRkaW5nLCBkZWZhdWx0IGlzIC0tbG9jYWwgYW5kIC0tZGl2ZXJ0IDxvcmlnaW5hbD4uZGlzdHJpYi5cbiIKKyJXaGVuIHJlbW92aW5nLCAtLXBhY2thZ2Ugb3IgLS1sb2NhbCBhbmQgLS1kaXZlcnQgbXVzdCBtYXRjaCBpZiBzcGVjaWZpZWQuXG4iCisiUGFja2FnZSBwcmVpbnN0L3Bvc3RybSBzY3JpcHRzIHNob3VsZCBhbHdheXMgc3BlY2lmeSAtLXBhY2thZ2UgYW5kIC0tIgorImRpdmVydC5cbiIKK21zZ3N0ciAiIgorIkFvIGFjcmVzY2VudGFyLCBvIHByZWRlZmluaWRvIMOpIC0tbG9jYWwgZSAtLWRpdmVydCA8b3JpZ2luYWw+LmRpc3RyaWIuXG4iCisiQW8gcmVtb3ZlciwgLS1wYWNrYWdlIG91IC0tbG9jYWwgZSAtLWRpdmVydCB0w6ptIGRlIGNvaW5jaWRpciBzZSAiCisiZXNwZWNpZmljYWRvcy5cbiIKKyJPcyBzY3JpcHRzIHByZWluc3QvcG9zdHJtIGRvcyBwYWNvdGVzIGRldmVtIHNlbXByZSBlc3BlY2lmaWNhciAtLXBhY2thZ2UgZSAtLSIKKyJkaXZlcnQuXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoxNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2hlY2tpbmcgJyVzJyIKK21zZ3N0ciAiZXJybyBhbyB2ZXJpZmljYXIgJyVzJyIKKworIzogc3JjL2RpdmVydGNtZC5jOjIwMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisicmVuYW1lIGludm9sdmVzIG92ZXJ3cml0aW5nIGAlcycgd2l0aFxuIgorIiAgZGlmZmVyZW50IGZpbGUgYCVzJywgbm90IGFsbG93ZWQiCittc2dzdHIgIiIKKyJyZW5vbWVhciBlbnZvbHZlIHNvYnJlLWVzY3JldmVyIGAlcycgY29tXG4iCisiICB1bSBmaWNoZWlybyBkaWZlcmVudGUgYCVzJywgbsOjbyBwZXJtaXRpZG8iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyMjMgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzNzMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byB3cml0ZSBmaWxlICclcyciCittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBmaWxlICclcyciCittc2dzdHIgIm7Do28gZm9pIHBvc3PDrXZlbCBlc2NyZXZlciBvIGZpY2hlaXJvICclcycgIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjI3Cittc2dpZCAiZmlsZSBjb3B5IgorbXNnc3RyICJjw7NwaWEgZGUgZmljaGVpcm8iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyMzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlbmFtZSAnJXMnIHRvICclcyciCittc2dzdHIgIk7Do28gcG9kZSBmYXplciByZW5vbWVhciAnJXMnIHBhcmEgJyVzJyIKKworIzogc3JjL2RpdmVydGNtZC5jOjI1MgorIywgYy1mb3JtYXQKK21zZ2lkICJyZW5hbWU6IHJlbW92ZSBkdXBsaWNhdGUgb2xkIGxpbmsgJyVzJyIKK21zZ3N0ciAicmVub21lYXI6IHJlbW92ZXIgbyBsaW5rIGFudGlnbyBkdXBsaWNhZG8gJyVzJyIKKworIzogc3JjL2RpdmVydGNtZC5jOjI2MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIG9wZW4gc291cmNlIGZpbGUgYCUuMjUwcyciCittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBjb3BpZWQgc291cmNlIGZpbGUgJyVzJyIKK21zZ3N0ciAibsOjbyBmb2kgcG9zc8OtdmVsIGFicmlyIG8gZmljaGVpcm8gZm9udGUgYCUuMjUwcyciCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyODQKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9jYWwgZGl2ZXJzaW9uIG9mICVzIgorbXNnc3RyICJkZXN2aW8gbG9jYWwgZGUgJXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyODYKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9jYWwgZGl2ZXJzaW9uIG9mICVzIHRvICVzIgorbXNnc3RyICJkZXN2aW8gbG9jYWwgZGUgJXMgcGFyYSAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjI5MAorIywgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnNpb24gb2YgJXMgYnkgJXMiCittc2dzdHIgImRlc3ZpbyBkZSAlcyBwb3IgJXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJzaW9uIG9mICVzIHRvICVzIGJ5ICVzIgorbXNnc3RyICJkZXN2aW8gZGUgJXMgcGFyYSAlcyBwb3IgJXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozMDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiYW55IGRpdmVyc2lvbiBvZiAlcyIKK21zZ3N0ciAicXVhbHF1ZXIgZGVzdmlvIGRlICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MzExCisjLCBjLWZvcm1hdAorbXNnaWQgImFueSBkaXZlcnNpb24gb2YgJXMgdG8gJXMiCittc2dzdHIgInF1YWxxdWVyIGRlc3ZpbyBkZSAlcyBwYXJhICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MzU3CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBjcmVhdGUgbmV3ICVzIGZpbGUiCittc2dzdHIgIm7Do28gcG9kZSBjcmlhciBvIG5vdm8gZmljaGVpcm8gJXMgIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mzc1IHNyYy9zdGF0Y21kLmM6MjE1IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNDA0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCBmaWxlICclcyciCittc2dzdHIgIm7Do28gZm9pIHBvc3PDrXZlbCBmYXplciBmbHVzaCBhbyBmaWNoZWlybyAnJXMnIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MzgyCittc2dpZCAiZXJyb3IgcmVtb3Zpbmcgb2xkIGRpdmVyc2lvbnMtb2xkIgorbXNnc3RyICJlcnJvIGFvIHJlbW92ZXIgbyBhbnRpZ28gZGl2ZXJzaW9ucy1vbGQiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozODQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBuZXcgZGl2ZXJzaW9ucy1vbGQiCittc2dzdHIgImVycm8gYW8gY3JpYXIgbyBub3ZvIGRpdmVyc2lvbnMtb2xkIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mzg2Cittc2dpZCAiZXJyb3IgaW5zdGFsbGluZyBuZXcgZGl2ZXJzaW9ucyIKK21zZ3N0ciAiZXJybyBhbyBpbnN0YWxhciBub3ZvcyBkZXN2aW9zIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDA2IHNyYy9kaXZlcnRjbWQuYzo1MDMgc3JjL2RpdmVydGNtZC5jOjYxMAorIzogc3JjL2RpdmVydGNtZC5jOjYzMCBzcmMvc3RhdGNtZC5jOjI5MAorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGEgc2luZ2xlIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIG5lY2Vzc2l0YSBkZSB1bSDDum5pY28gYXJndW1lbnRvIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDA5IHNyYy9kaXZlcnRjbWQuYzo0MzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZW5hbWUgXCIlc1wiIGlzIG5vdCBhYnNvbHV0ZSIKK21zZ3N0ciAibyBub21lIGRvIGZpY2hlaXJvIFwiJXNcIiBuw6NvIMOpIGFic29sdXRvIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDExIHNyYy9zdGF0Y21kLmM6MjQ5Cittc2dpZCAiZmlsZSBtYXkgbm90IGNvbnRhaW4gbmV3bGluZXMiCittc2dzdHIgIm8gZmljaGVpcm8gbsOjbyBwb2RlIGNvbnRlciBxdWVicmFzIGRlIGxpbmhhIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDE4Cittc2dpZCAiQ2Fubm90IGRpdmVydCBkaXJlY3RvcmllcyIKK21zZ3N0ciAiTsOjbyDDqSBwb3Nzw612ZWwgZGVzdmlhciBkaXJlY3TDs3Jpb3MiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGRpdmVydCBmaWxlICclcycgdG8gaXRzZWxmIgorbXNnc3RyICJuw6NvIMOpIHBvc3PDrXZlbCBkZXN2aWFyIG8gZmljaGVpcm8gJyVzJyBwYXJhIG8gcHLDs3ByaW8iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiTGVhdmluZyAnJXMnXG4iCittc2dzdHIgIkEgZGVpeGFyICclcydcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjQ1OAorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGNsYXNoZXMgd2l0aCBgJXMnIgorbXNnc3RyICJgJXMnIGNob2NhIGNvbSBgJXMnIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDgxCisjLCBjLWZvcm1hdAorbXNnaWQgIkFkZGluZyAnJXMnXG4iCittc2dzdHIgIkEgYWNyZXNjZW50YXIgJyVzJ1xuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTEwCisjLCBjLWZvcm1hdAorbXNnaWQgIk5vIGRpdmVyc2lvbiAnJXMnLCBub25lIHJlbW92ZWQuXG4iCittc2dzdHIgIk5lbmh1bSBkZXN2aW8gJyVzJywgbmVuaHVtIHJlbW92aWRvLlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTI1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJtaXNtYXRjaCBvbiBkaXZlcnQtdG9cbiIKKyIgIHdoZW4gcmVtb3ZpbmcgYCVzJ1xuIgorIiAgZm91bmQgYCVzJyIKK21zZ3N0ciAiIgorImVycm8gYW8gdGVudGFyIGRlc3ZpYXJcbiIKKyIgIHF1YW5kbyBhIHJlbW92ZXIgYCVzJ1xuIgorIiAgZm9pIGVuY29udHJhZG8gYCVzJyIKKworIzogc3JjL2RpdmVydGNtZC5jOjUzMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisibWlzbWF0Y2ggb24gcGFja2FnZVxuIgorIiAgd2hlbiByZW1vdmluZyBgJXMnXG4iCisiICBmb3VuZCBgJXMnIgorbXNnc3RyICIiCisiZXJybyBubyBwYWNvdGVcbiIKKyIgIHF1YW5kbyBhIHJlbW92ZXIgYCVzJ1xuIgorIiAgZm9pIGVuY29udHJhZG8gYCVzJyIKKworIzogc3JjL2RpdmVydGNtZC5jOjUzOQorIywgYy1mb3JtYXQKK21zZ2lkICJSZW1vdmluZyAnJXMnXG4iCittc2dzdHIgIkEgcmVtb3ZlciAnJXMnXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo2NTcKK21zZ2lkICJwYWNrYWdlIG1heSBub3QgY29udGFpbiBuZXdsaW5lcyIKK21zZ3N0ciAibyBwYWNvdGUgbsOjbyBwb2RlIGNvbnRlciBub3ZhcyBsaW5oYXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo2NjYKK21zZ2lkICJkaXZlcnQtdG8gbWF5IG5vdCBjb250YWluIG5ld2xpbmVzIgorbXNnc3RyICJvIGRlc3ZpbyBuw6NvIHBvZGUgY29udGVyIG5vdmFzIGxpbmhhcyIKKworIzogc3JjL2RpdmVydGRiLmM6NjQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiBkaXZlcnNpb25zIGZpbGUiCittc2dzdHIgImZhbGhvdSBhYnJpciBmaWNoZWlybyBkaXZlcnNpb25zIgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzo3MQorbXNnaWQgImZhaWxlZCB0byBmc3RhdCBwcmV2aW91cyBkaXZlcnNpb25zIGZpbGUiCittc2dzdHIgImZhbGhvdSBmc3RhdCBhbyBmaWNoZWlybyBkaXZlcnNpb25zIGFudGVyaW9yIgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzo3MworbXNnaWQgImZhaWxlZCB0byBmc3RhdCBkaXZlcnNpb25zIGZpbGUiCittc2dzdHIgImZhbGhvdSBmc3RhdCBhbyBmaWNoZWlybyBkaXZlcnNpb25zIgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzoxMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmxpY3RpbmcgZGl2ZXJzaW9ucyBpbnZvbHZpbmcgYCUuMjUwcycgb3IgYCUuMjUwcyciCittc2dzdHIgImRlc3Zpb3MgZW0gY29uZmxpdG8gZW52b2x2ZW5kbyBgJS4yNTBzJyBvdSBgJS4yNTBzJyIKKworIzogc3JjL2VucXVpcnkuYzo3MworbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBpbiBhIG1lc3MgZHVlIHRvIHNlcmlvdXMgcHJvYmxlbXMgZHVyaW5nXG4iCisiaW5zdGFsbGF0aW9uLiAgVGhleSBtdXN0IGJlIHJlaW5zdGFsbGVkIGZvciB0aGVtIChhbmQgYW55IHBhY2thZ2VzXG4iCisidGhhdCBkZXBlbmQgb24gdGhlbSkgdG8gZnVuY3Rpb24gcHJvcGVybHk6XG4iCittc2dzdHIgIiIKKyJPcyBzZWd1aW50ZXMgcGFjb3RlcyBlc3TDo28gbnVtYSBjb25mdXPDo28gZGV2aWRvIGEgZ3JhdmVzIHByb2JsZW1hcyBkdXJhbnRlXG4iCisiYSBpbnN0YWxhw6fDo28uICBUw6ptIGRlIHNlciByZS1pbnN0YWxhZG9zIChlIHF1YWlzcXVlciBwYWNvdGVzIHF1ZSBkZXBlbmRhbVxuIgorImRlbGVzKSBwYXJhIGZ1bmNpb25hcmVtIGRldmlkYW1lbnRlOlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjgwCittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgaGF2ZSBiZWVuIHVucGFja2VkIGJ1dCBub3QgeWV0IGNvbmZpZ3VyZWQuXG4iCisiVGhleSBtdXN0IGJlIGNvbmZpZ3VyZWQgdXNpbmcgZHBrZyAtLWNvbmZpZ3VyZSBvciB0aGUgY29uZmlndXJlXG4iCisibWVudSBvcHRpb24gaW4gZHNlbGVjdCBmb3IgdGhlbSB0byB3b3JrOlxuIgorbXNnc3RyICIiCisiT3Mgc2VndWludGVzIHBhY290ZXMgZm9yYW0gZGVzY29tcGFjdGFkb3MgbWFzIGFpbmRhIG7Do28gZm9yYW0gY29uZmlndXJhZG9zLlxuIgorIlTDqm0gZGUgc2VyIGNvbmZpZ3VyYWRvcyB1dGlsaXphbmRvIGRwa2cgLS1jb25maWd1cmUgb3UgYSBvcMOnw6NvIGNvbmZpZ3VyYXJcbiIKKyJubyBtZW51IGRvIGRzZWxlY3QgcGFyYSBmdW5jaW9uYXJlbTpcbiIKKworIzogc3JjL2VucXVpcnkuYzo4NworbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBvbmx5IGhhbGYgY29uZmlndXJlZCwgcHJvYmFibHkgZHVlIHRvIHByb2JsZW1zXG4iCisiY29uZmlndXJpbmcgdGhlbSB0aGUgZmlyc3QgdGltZS4gIFRoZSBjb25maWd1cmF0aW9uIHNob3VsZCBiZSByZXRyaWVkIHVzaW5nXG4iCisiZHBrZyAtLWNvbmZpZ3VyZSA8cGFja2FnZT4gb3IgdGhlIGNvbmZpZ3VyZSBtZW51IG9wdGlvbiBpbiBkc2VsZWN0OlxuIgorbXNnc3RyICIiCisiT3Mgc2VndWludGVzIHBhY290ZXMgc8OzIGVzdMOjbyBzZW1pLWNvbmZpZ3VyYWRvcywgcHJvdmF2ZWxtZW50ZSBkZXZpZG8gYVxuIgorInByb2JsZW1hcyBhIGNvbmZpZ3VyYS1sb3MgcGVsYSBwcmltZWlyYSB2ZXouICBBIGNvbmZpZ3VyYcOnw6NvIGRldmUgc2VyICIKKyJ0ZW50YWRhXG4iCisiZGUgbm92byB1dGlsaXphbmRvIGRwa2cgLS1yZWNvbmZpZ3VyZSA8cGFjb3RlPiBvdSB1c2FuZG8gYSBvcMOnw6NvIGNvbmZpZ3VyYXJcbiIKKyJubyBtZW51IGRvIGRzZWxlY3Q6XG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6OTQKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgb25seSBoYWxmIGluc3RhbGxlZCwgZHVlIHRvIHByb2JsZW1zIGR1cmluZ1xuIgorImluc3RhbGxhdGlvbi4gIFRoZSBpbnN0YWxsYXRpb24gY2FuIHByb2JhYmx5IGJlIGNvbXBsZXRlZCBieSByZXRyeWluZyBpdDtcbiIKKyJ0aGUgcGFja2FnZXMgY2FuIGJlIHJlbW92ZWQgdXNpbmcgZHNlbGVjdCBvciBkcGtnIC0tcmVtb3ZlOlxuIgorbXNnc3RyICIiCisiT3Mgc2VndWludGVzIHBhY290ZXMgc8OzIGVzdMOjbyBzZW1pLWluc3RhbGFkb3MsIGRldmlkbyBhIHByb2JsZW1hcyBkdXJhbnRlXG4iCisiYSBpbnN0YWxhw6fDo28uICBBIGluc3RhbGHDp8OjbyBwb2RlIHByb3ZhdmVsbWVudGUgc2VyIGNvbXBsZXRhZGEgdm9sdGFuZG8gYVxuIgorInRlbnRhcjsgb3MgcGFjb3RlcyBwb2RlbSBzZXIgcmVtb3ZpZG9zIHV0aWxpemFuZG8gbyBkc2VsZWN0IG91IGRwa2cgLS0iCisicmVtb3ZlOlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjEwMQorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBhd2FpdGluZyBwcm9jZXNzaW5nIG9mIHRyaWdnZXJzIHRoYXQgdGhleVxuIgorImhhdmUgYWN0aXZhdGVkIGluIG90aGVyIHBhY2thZ2VzLiAgVGhpcyBwcm9jZXNzaW5nIGNhbiBiZSByZXF1ZXN0ZWQgdXNpbmdcbiIKKyJkc2VsZWN0IG9yIGRwa2cgLS1jb25maWd1cmUgLS1wZW5kaW5nIChvciBkcGtnIC0tdHJpZ2dlcnMtb25seSk6XG4iCittc2dzdHIgIiIKKyJPcyBzZWd1aW50ZXMgcGFjb3RlcyBhZ3VhcmRhbSBvIHByb2Nlc3NhbWVudG8gZGUgJ3RyaWdnZXJzJyBxdWUgYWN0aXZhcmFtICIKKyJub3V0cm9zIHBhY290ZXMuICBFc3RlIHByb2Nlc3NhbWVudG8gcG9kZSBzZXIgY2hhbWFkbyB1dGlsaXphbmRvIG8gZHNlbGVjdCAiCisib3UgZHBrZyAtLWNvbmZpZ3VyZSAtLXBlbmRpbmcgKG91IGRwa2cgLS10cmlnZ2Vycy1vbmx5KTpcbiIKKworIzogc3JjL2VucXVpcnkuYzoxMDgKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBoYXZlIGJlZW4gdHJpZ2dlcmVkLCBidXQgdGhlIHRyaWdnZXIgcHJvY2Vzc2luZ1xuIgorImhhcyBub3QgeWV0IGJlZW4gZG9uZS4gIFRyaWdnZXIgcHJvY2Vzc2luZyBjYW4gYmUgcmVxdWVzdGVkIHVzaW5nXG4iCisiZHNlbGVjdCBvciBkcGtnIC0tY29uZmlndXJlIC0tcGVuZGluZyAob3IgZHBrZyAtLXRyaWdnZXJzLW9ubHkpOlxuIgorbXNnc3RyICIiCisiRm9yYW0gYWN0aXZhZG9zIG9zIHNlZ3VpbnRlcyBwYWNvdGVzLCBtYXMgbyBwcm9jZXNzYW1lbnRvIGRlICd0cmlnZ2VycycgIgorImFpbmRhIG7Do28gZm9pIGVmZWN0dWFkby4gIE8gcHJvY2Vzc2FtZW50byBkZSAndHJpZ2dlcnMnIHBvZGUgc2VyIGNoYW1hZG8gIgorInV0aWxpemFuZG8gbyBkc2VsZWN0IG91IGRwa2cgLS1jb25maWd1cmUgLS1wZW5kaW5nIChvdSBkcGtnIC0tdHJpZ2dlcnMtIgorIm9ubHkpOlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjEzNyBzcmMvZW5xdWlyeS5jOjIxMSBzcmMvZW5xdWlyeS5jOjI5MiBzcmMvZW5xdWlyeS5jOjM3MworIzogc3JjL2VucXVpcnkuYzo0NjAgc3JjL3NlbGVjdC5jOjk4IHNyYy9zZWxlY3QuYzoxNjQgc3JjL3RyaWdjbWQuYzoxOTkKKyM6IHNyYy91cGRhdGUuYzo0OCBzcmMvdXBkYXRlLmM6MTEzIGRwa2ctc3BsaXQvcXVldWUuYzoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyB0YWtlcyBubyBhcmd1bWVudHMiCittc2dzdHIgIi0tJXMgbsOjbyBsZXZhIGFyZ3VtZW50b3MiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTUyCittc2dpZCAiIgorIkFub3RoZXIgcHJvY2VzcyBoYXMgbG9ja2VkIHRoZSBkYXRhYmFzZSBmb3Igd3JpdGluZywgYW5kIG1pZ2h0IGN1cnJlbnRseSBiZVxuIgorIm1vZGlmeWluZyBpdCwgc29tZSBvZiB0aGUgZm9sbG93aW5nIHByb2JsZW1zIG1pZ2h0IGp1c3QgYmUgZHVlIHRvIHRoYXQuXG4iCittc2dzdHIgIiIKKyJPdXRybyBwcm9jZXNzbyBibG9xdWVvdSBhIGJhc2UgZGUgZGFkb3MgcGFyYSBlc2NyaXRhLCBlIGFjdHVhbG1lbnRlIHBvZGUgIgorImVzdGFyIGEgbW9kaWZpY2EtbG8sIGFsZ3VucyBkb3Mgc2VndWludGVzIHByb2JsZW1hcyBwb2RlbSBzZXIgZGV2aWRvcyBhICIKKyJpc3NvLlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjE5MQorIywgZnV6enkKKyN8IG1zZ2lkICI8dW5rbm93bj4iCittc2djdHh0ICJzZWN0aW9uIgorbXNnaWQgIjx1bmtub3duPiIKK21zZ3N0ciAiPGRlc2NvbmhlY2lkbz4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MjUxCisjLCBjLWZvcm1hdAorbXNnaWQgIiAlZCBpbiAlczogIgorbXNnc3RyICIlZCBlbSAlczogIgorCisjOiBzcmMvZW5xdWlyeS5jOjI2NgorIywgYy1mb3JtYXQKK21zZ2lkICIgJWQgcGFja2FnZSwgZnJvbSB0aGUgZm9sbG93aW5nIHNlY3Rpb246IgorbXNnaWRfcGx1cmFsICIgJWQgcGFja2FnZXMsIGZyb20gdGhlIGZvbGxvd2luZyBzZWN0aW9uczoiCittc2dzdHJbMF0gIiAlZCBwYWNvdGUsIGRhIHNlZ3VpbnRlIHNlY8Onw6NvOiIKK21zZ3N0clsxXSAiICVkIHBhY290ZXMsIGRhcyBzZWd1aW50ZXMgc2Vjw6fDtWVzOiIKKworIzogc3JjL2VucXVpcnkuYzozMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlZlcnNpb24gb2YgZHBrZyB3aXRoIHdvcmtpbmcgJXMgc3VwcG9ydCBub3QgeWV0IGNvbmZpZ3VyZWQuXG4iCisiIFBsZWFzZSB1c2UgJ2Rwa2cgLS1jb25maWd1cmUgZHBrZycsIGFuZCB0aGVuIHRyeSBhZ2Fpbi5cbiIKK21zZ3N0ciAiIgorIkEgdmVyc8OjbyBkbyBkcGtnIGNvbSBzdXBvcnRlIGZ1bmNpb25hbCBkZSAlcyBhaW5kYSBuw6NvIGVzdMOhIGNvbmZpZ3VyYWRvLlxuIgorIiBQb3IgZmF2b3IgdXRpbGl6ZSAnZHBrZyAtLWNvbmZpZ3VyZSBkcGtnJywgZSBkZXBvaXMgdGVudGUgbm92YW1lbnRlLlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjMxMAorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnIG5vdCByZWNvcmRlZCBhcyBpbnN0YWxsZWQsIGNhbm5vdCBjaGVjayBmb3IgJXMgc3VwcG9ydCFcbiIKK21zZ3N0ciAiIgorImRwa2cgbsOjbyByZWdpc3RhZG8gY29tbyBpbnN0YWxhZG8sIG7Do28gcG9kZSB2ZXJpZmljYXIgbyBzdXBvcnRlIHBhcmEgJXMhXG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzIxCittc2dpZCAiUHJlLURlcGVuZHMgZmllbGQiCittc2dzdHIgIkNhbXBvIFByZS1EZXBlbmRzIgorCisjOiBzcmMvZW5xdWlyeS5jOjMyOQorbXNnaWQgImVwb2NoIgorbXNnc3RyICJlcmEiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzM3Cittc2dpZCAibG9uZyBmaWxlbmFtZXMiCittc2dzdHIgIm5vbWVzIGRlIGZpY2hlaXJvcyBsb25nb3MiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzQ2Cittc2dpZCAibXVsdGlwbGUgQ29uZmxpY3RzIGFuZCBSZXBsYWNlcyIKK21zZ3N0ciAidsOhcmlvcyBDb25mbGljdHMgZSBSZXBsYWNlcyIKKworIzogc3JjL2VucXVpcnkuYzo0MzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IGNhbm5vdCBzZWUgaG93IHRvIHNhdGlzZnkgcHJlLWRlcGVuZGVuY3k6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKyJkcGtnOiBuw6NvIHZlam8gY29tbyBzYXRpc2ZhemVyIHByZS1kZXBlbmTDqm5jaWE6XG4iCisiICVzXG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6NDM1CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzYXRpc2Z5IHByZS1kZXBlbmRlbmNpZXMgZm9yICUuMjUwcyAod2FudGVkIGR1ZSB0byAlLjI1MHMpIgorbXNnc3RyICIiCisibsOjbyBwb2RlIHNhdGlzZmF6ZXIgcHJlLWRlcGVuZMOqbmNpYXMgcGFyYSAlLjI1MHMgKGRlc2VqYWRhIGRldmlkbyBhICUuMjUwcykiCisKKyM6IHNyYy9lbnF1aXJ5LmM6NDcyCisjLCBjLWZvcm1hdAorbXNnaWQgIm9ic29sZXRlIG9wdGlvbiAnLS0lcycsIHBsZWFzZSB1c2UgJy0tJXMnIGluc3RlYWQuIgorbXNnc3RyICJvcMOnw6NvIG9ic29sZXRhICctLSVzJywgcG9yIGZhdm9yIHV0aWxpemUgYW50ZXMgJy0tJXMnLiIKKworIzogc3JjL2VucXVpcnkuYzo1MTkKK21zZ2lkICIiCisiLS1jb21wYXJlLXZlcnNpb25zIHRha2VzIHRocmVlIGFyZ3VtZW50czogPHZlcnNpb24+IDxyZWxhdGlvbj4gPHZlcnNpb24+IgorbXNnc3RyICItLWNvbXBhcmUtdmVyc2lvbnMgdG9tYSB0csOqcyBhcmd1bWVudG9zOiA8dmVyc8Ojbz4gPHJlbGHDp8Ojbz4gPHZlcnPDo28+IgorCisjOiBzcmMvZW5xdWlyeS5jOjUyNAorbXNnaWQgIi0tY29tcGFyZS12ZXJzaW9ucyBiYWQgcmVsYXRpb24iCittc2dzdHIgIm3DoSByZWxhw6fDo28gZGUgLS1jb21wYXJlLXZlcnNpb25zIgorCisjOiBzcmMvZW5xdWlyeS5jOjUyOSBzcmMvZW5xdWlyeS5jOjUzMSBzcmMvZW5xdWlyeS5jOjU0MCBzcmMvZW5xdWlyeS5jOjU0MgorIywgYy1mb3JtYXQKK21zZ2lkICJ2ZXJzaW9uICclcycgaGFzIGJhZCBzeW50YXg6ICVzIgorbXNnc3RyICJ2ZXJzw6NvICclcycgdGVtIHNpbnRheGUgZXJyYWRhOiAlcyIKKworIzogc3JjL2Vycm9ycy5jOjYwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogZXJyb3IgcHJvY2Vzc2luZyAlcyAoLS0lcyk6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKyIlczogZXJybyBhbyBwcm9jZXNzYXIgJXMgKC0tJXMpOlxuIgorIiAlc1xuIgorCisjOiBzcmMvZXJyb3JzLmM6NjgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJkcGtnOiBmYWlsZWQgdG8gYWxsb2NhdGUgbWVtb3J5IGZvciBuZXcgZW50cnkgaW4gbGlzdCBvZiBmYWlsZWQgcGFja2FnZXMuIgorbXNnaWQgIiIKKyIlczogZmFpbGVkIHRvIGFsbG9jYXRlIG1lbW9yeSBmb3IgbmV3IGVudHJ5IGluIGxpc3Qgb2YgZmFpbGVkIHBhY2thZ2VzOiAlcyIKK21zZ3N0ciAiIgorImRwa2c6IGZhbGhvdSBhbG9jYXIgbWVtw7NyaWEgcGFyYSB1bWEgbm92YSBlbnRyYWRhIG5hIGxpc3RhIGRlIHBhY290ZXMgcXVlICIKKyJmYWxoYXJhbS4iCisKKyM6IHNyYy9lcnJvcnMuYzo3OQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZHBrZzogdG9vIG1hbnkgZXJyb3JzLCBzdG9wcGluZ1xuIgorbXNnaWQgIiVzOiB0b28gbWFueSBlcnJvcnMsIHN0b3BwaW5nXG4iCittc2dzdHIgImRwa2c6IGRlbWFzaWFkb3MgZXJyb3MsIGEgcGFyYXJcbiIKKworIzogc3JjL2Vycm9ycy5jOjg3Cittc2dpZCAiRXJyb3JzIHdlcmUgZW5jb3VudGVyZWQgd2hpbGUgcHJvY2Vzc2luZzpcbiIKK21zZ3N0ciAiRm9yYW0gZW5jb250cmFkb3MgZXJyb3MgZW5xdWFudG8gcHJvY2Vzc2F2YTpcbiIKKworIzogc3JjL2Vycm9ycy5jOjk0Cittc2dpZCAiUHJvY2Vzc2luZyB3YXMgaGFsdGVkIGJlY2F1c2UgdGhlcmUgd2VyZSB0b28gbWFueSBlcnJvcnMuXG4iCittc2dzdHIgIk8gcHJvY2Vzc2FtZW50byBwYXJvdSBwb3JxdWUgb2NvcnJlcmFtIGRlbWFzaWFkb3MgZXJyb3MuXG4iCisKKyM6IHNyYy9lcnJvcnMuYzoxMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSAlcyB3YXMgb24gaG9sZCwgcHJvY2Vzc2luZyBpdCBhbnl3YXkgYXMgeW91IHJlcXVlc3RlZFxuIgorbXNnc3RyICIiCisiTyBwYWNvdGUgJXMgZXN0YXZhIGVtIGVzcGVyYSwgYSBwcm9jZXNzw6EtbG8gbmEgbWVzbWEgY29uZm9ybWUgdm9jw6ogcGVkaXUuXG4iCisKKyM6IHNyYy9lcnJvcnMuYzoxMDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlBhY2thZ2UgJXMgaXMgb24gaG9sZCwgbm90IHRvdWNoaW5nIGl0LiAgVXNlIC0tZm9yY2UtaG9sZCB0byBvdmVycmlkZS5cbiIKK21zZ3N0ciAiIgorIlBhY290ZSAlcyBlc3TDoSBlbSBlc3BlcmEsIG7Do28gbGhlIHRvY2FuZG8uIFV0aWxpemUgLS1mb3JjZS1ob2xkIHBhcmEgIgorImZvcsOnYXIuXG4iCisKKyM6IHNyYy9lcnJvcnMuYzoxMTkKK21zZ2lkICJvdmVycmlkaW5nIHByb2JsZW0gYmVjYXVzZSAtLWZvcmNlIGVuYWJsZWQ6IgorbXNnc3RyICJhIHVsdHJhcGFzc2FyIHByb2JsZW1hIHBvcnF1ZSAtLWZvcmNlIGVzdMOhIGFjdGl2bzogIgorCisjOiBzcmMvZmlsZXNkYi5jOjMwNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcyciCittc2dzdHIgIiIKKyJuw6NvIGZvaSBwb3Nzw612ZWwgYWJyaXIgbyBmaWNoZWlybyBkZSBsaXN0YSBkZSBmaWNoZWlyb3MgcGFyYSBvIHBhY290ZSBgIgorIiUuMjUwcyciCisKKyM6IHNyYy9maWxlc2RiLmM6MzExCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcycgbWlzc2luZywgYXNzdW1pbmcgcGFja2FnZSBoYXMgbm8gZmlsZXMgIgorImN1cnJlbnRseSBpbnN0YWxsZWQuIgorbXNnc3RyICIiCisiZmFsdGEgZmljaGVpcm8gZGUgbGlzdGEgZGUgZmljaGVpcm9zIGAlLjI1MHMnLCBhc3N1bWluZG8gcXVlIG8gcGFjb3RlIG7Do28gIgorInRlbSBhY3R1YWxtZW50ZSBmaWNoZWlyb3MgaW5zdGFsYWRvcy4iCisKKyM6IHNyYy9maWxlc2RiLmM6MzIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAnJS4yNTBzJyIKK21zZ3N0ciAiIgorIm7Do28gZm9pIHBvc3PDrXZlbCBmYXplciBzdGF0IGZpY2hlaXJvIGRlIGxpc3RhIGRlIGZpY2hlaXJvcyBwYXJhIG8gcGFjb3RlICIKKyInJS4yNTBzJyIKKworIzogc3JjL2ZpbGVzZGIuYzozMzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGVzIGxpc3QgZm9yIHBhY2thZ2UgYCUuMjUwcyciCittc2dpZCAicmVhZGluZyBmaWxlcyBsaXN0IGZvciBwYWNrYWdlICclLjI1MHMnIgorbXNnc3RyICJsaXN0YSBkZSBmaWNoZWlyb3MgcGFyYSBvIHBhY290ZSBgJS4yNTBzJyIKKworIzogc3JjL2ZpbGVzZGIuYzozMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICclLjI1MHMnIGlzIG1pc3NpbmcgZmluYWwgbmV3bGluZSIKK21zZ3N0ciAiIgorImZhbHRhIHVtYSBub3ZhIGxpbmhhIGZpbmFsIG5vIGZpY2hlaXJvIGRlIGxpc3RhIGRlIGZpY2hlaXJvcyBwYXJhIG8gcGFjb3RlICIKKyInJS4yNTBzJyIKKworIzogc3JjL2ZpbGVzZGIuYzozNDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlIGAlLjI1MHMnIGNvbnRhaW5zIGVtcHR5IGZpbGVuYW1lIgorbXNnc3RyICIiCisibyBmaWNoZWlybyBkZSBsaXN0YSBkZSBmaWNoZWlyb3MgcGFyYSBvIHBhY290ZSBgJS4yNTBzJyBjb250w6ltIHVtIGZpY2hlaXJvICIKKyJ2YXppbyIKKworIzogc3JjL2ZpbGVzZGIuYzozNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcyciCittc2dzdHIgImVycm8gYW8gZmVjaGFyIG8gZmljaGVpcm8gZGUgbGlzdGEgZGUgZmljaGVpcm9zIHBhcmEgbyBwYWNvdGUgYCUuMjUwcyciCisKKyM6IHNyYy9maWxlc2RiLmM6NDYyCittc2dpZCAiKFJlYWRpbmcgZGF0YWJhc2UgLi4uICIKK21zZ3N0ciAiKEEgbGVyIGEgYmFzZSBkZSBkYWRvcyAuLi4gIgorCisjOiBzcmMvZmlsZXNkYi5jOjQ4MworIywgYy1mb3JtYXQKK21zZ2lkICIlZCBmaWxlIG9yIGRpcmVjdG9yeSBjdXJyZW50bHkgaW5zdGFsbGVkLilcbiIKK21zZ2lkX3BsdXJhbCAiJWQgZmlsZXMgYW5kIGRpcmVjdG9yaWVzIGN1cnJlbnRseSBpbnN0YWxsZWQuKVxuIgorbXNnc3RyWzBdICIlZCBmaWNoZWlybyhzKSBlIGRpcmVjdMOzcmlvKHMpIGFjdHVhbG1lbnRlIGluc3RhbGFkb3MuKVxuIgorbXNnc3RyWzFdICIlZCBmaWNoZWlyb3MgZSBkaXJlY3TDs3Jpb3MgYWN0dWFsbWVudGUgaW5zdGFsYWRvcy4pXG4iCisKKyM6IHNyYy9maWxlc2RiLmM6NTE2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIiIKKyJuw6NvIGZvaSBwb3Nzw612ZWwgY3JpYXIgZmljaGVpcm8gZGUgbGlzdGEgZGUgZmljaGVpcm9zIGFjdHVhbGl6YWRvIHBhcmEgbyAiCisicGFjb3RlICVzIgorCisjOiBzcmMvZmlsZXNkYi5jOjUyNgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgdG8gdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIiIKKyJmYWxob3UgZXNjcmV2ZXIgcGFyYSBmaWNoZWlybyBkZSBsaXN0YSBkZSBmaWNoZWlyb3MgYWN0dWFsaXphZG9zIHBhcmEgbyAiCisicGFjb3RlICVzIgorCisjOiBzcmMvZmlsZXNkYi5jOjUyOAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZmx1c2ggdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIiIKKyJmYWxob3UgZXN2YXppYXIgZmljaGVpcm8gZGUgbGlzdGEgZGUgZmljaGVpcm9zIGFjdHVhbGl6YWRvcyBwYXJhIG8gcGFjb3RlICVzIgorCisjOiBzcmMvZmlsZXNkYi5jOjUzMAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gc3luYyB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAiIgorImZhbGhvdSBzaW5jcm9uaXphciBmaWNoZWlybyBkZSBsaXN0YSBkZSBmaWNoZWlyb3MgYWN0dWFsaXphZG9zIHBhcmEgbyBwYWNvdGUgIgorIiVzIgorCisjOiBzcmMvZmlsZXNkYi5jOjUzMworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2xvc2UgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIiIKKyJmYWxob3UgZmVjaGFyIGZpY2hlaXJvIGRlIGxpc3RhIGRlIGZpY2hlaXJvcyBhY3R1YWxpemFkb3MgcGFyYSBvIHBhY290ZSAlcyIKKworIzogc3JjL2ZpbGVzZGIuYzo1MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGluc3RhbGwgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIiIKKyJmYWxob3UgaW5zdGFsYXIgZmljaGVpcm8gZGUgbGlzdGEgZGUgZmljaGVpcm9zIGFjdHVhbGl6YWRvcyBwYXJhIG8gcGFjb3RlICVzIgorCisjOiBzcmMvaGVscC5jOjQ4Cittc2dpZCAibm90IGluc3RhbGxlZCIKK21zZ3N0ciAibsOjbyBpbnN0YWxhZG8iCisKKyM6IHNyYy9oZWxwLmM6NDkKK21zZ2lkICJub3QgaW5zdGFsbGVkIGJ1dCBjb25maWdzIHJlbWFpbiIKK21zZ3N0ciAibsOjbyBpbnN0YWxhZG8gbWFzIGFzIGNvbmZpZ3VyYcOnw7VlcyBtYW50w6ptLXNlIgorCisjOiBzcmMvaGVscC5jOjUwCittc2dpZCAiYnJva2VuIGR1ZSB0byBmYWlsZWQgcmVtb3ZhbCBvciBpbnN0YWxsYXRpb24iCittc2dzdHIgImVzdHJhZ2FkbyBkZXZpZG8gYSByZW1vw6fDo28gb3UgaW5zdGFsYcOnw6NvIGZhbGhhZGEiCisKKyM6IHNyYy9oZWxwLmM6NTEKK21zZ2lkICJ1bnBhY2tlZCBidXQgbm90IGNvbmZpZ3VyZWQiCittc2dzdHIgImRlc2NvbXBhY3RhZG8gbWFzIG7Do28gY29uZmlndXJhZG8iCisKKyM6IHNyYy9oZWxwLmM6NTIKK21zZ2lkICJicm9rZW4gZHVlIHRvIHBvc3RpbnN0IGZhaWx1cmUiCittc2dzdHIgImVzdHJhZ2FkbyBkZXZpZG8gYSBmYWxoYSBkZSBwb3N0aW5zdCIKKworIzogc3JjL2hlbHAuYzo1MworbXNnaWQgImF3YWl0aW5nIHRyaWdnZXIgcHJvY2Vzc2luZyBieSBhbm90aGVyIHBhY2thZ2UiCittc2dzdHIgImEgYWd1YXJkYXIgbyBwcm9jZXNzYW1lbnRvIGRlICd0cmlnZ2VyJyBwb3Igb3V0cm8gcGFjb3RlIgorCisjOiBzcmMvaGVscC5jOjU0Cittc2dpZCAidHJpZ2dlcmVkIgorbXNnc3RyICJhY2Npb25hZG8gbyB0cmlnZ2VyIgorCisjOiBzcmMvaGVscC5jOjU1Cittc2dpZCAiaW5zdGFsbGVkIgorbXNnc3RyICJpbnN0YWxhZG8iCisKKyM6IHNyYy9oZWxwLmM6MTA3CisjLCBmdXp6eQorI3wgbXNnaWQgImVycm9yOiBQQVRIIGlzIG5vdCBzZXQuIgorbXNnaWQgIlBBVEggaXMgbm90IHNldC4iCittc2dzdHIgImVycm86IFBBVEggbsOjbyBlc3TDoSBkZWZpbmlkby4iCisKKyM6IHNyYy9oZWxwLmM6MTI5CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuIgorbXNnc3RyICInJXMnIG7Do28gZm9pIGVuY29udHJhZG8gZW0gUEFUSCBvdSBuw6NvIMOpIGV4ZWN1dMOhdmVsLiIKKworIzogc3JjL2hlbHAuYzoxMzgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiclcycgbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuIgorbXNnaWQgIiIKKyIlZCBleHBlY3RlZCBwcm9ncmFtIG5vdCBmb3VuZCBpbiBQQVRIIG9yIG5vdCBleGVjdXRhYmxlLlxuIgorIiVzIgorbXNnaWRfcGx1cmFsICIiCisiJWQgZXhwZWN0ZWQgcHJvZ3JhbXMgbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuXG4iCisiJXMiCittc2dzdHJbMF0gIiclcycgbsOjbyBmb2kgZW5jb250cmFkbyBlbSBQQVRIIG91IG7Do28gw6kgZXhlY3V0w6F2ZWwuIgorbXNnc3RyWzFdICInJXMnIG7Do28gZm9pIGVuY29udHJhZG8gZW0gUEFUSCBvdSBuw6NvIMOpIGV4ZWN1dMOhdmVsLiIKKworIzogc3JjL2hlbHAuYzoxNDEKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIiVkIGV4cGVjdGVkIHByb2dyYW0gbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuXG4iCisjfCAiTkI6IHJvb3QncyBQQVRIIHNob3VsZCB1c3VhbGx5IGNvbnRhaW4gL3Vzci9sb2NhbC9zYmluLCAvdXNyL3NiaW4gYW5kIC8iCisjfCAic2Jpbi4iCisjfCBtc2dpZF9wbHVyYWwgIiIKKyN8ICIlZCBleHBlY3RlZCBwcm9ncmFtcyBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS5cbiIKKyN8ICJOQjogcm9vdCdzIFBBVEggc2hvdWxkIHVzdWFsbHkgY29udGFpbiAvdXNyL2xvY2FsL3NiaW4sIC91c3Ivc2JpbiBhbmQgLyIKKyN8ICJzYmluLiIKK21zZ2lkICIiCisiTm90ZTogcm9vdCdzIFBBVEggc2hvdWxkIHVzdWFsbHkgY29udGFpbiAvdXNyL2xvY2FsL3NiaW4sIC91c3Ivc2JpbiBhbmQgLyIKKyJzYmluLiIKK21zZ3N0ciAiIgorIiVkIHByb2dyYW1hIGVzcGVyYWRvIG7Do28gZm9pIGVuY29udHJhZG8gbmEgUEFUSCBvdSBuw6NvIMOpIGV4ZWN1dMOhdmVsLlxuIgorIk5COiBhIFBBVEggZG8gcm9vdCBub3JtYWxtZW50ZSBkZXZlIGNvbnRlciAvdXNyL2xvY2FsL3NiaW4sIC91c3Ivc2JpbiBlIC8iCisic2Jpbi4iCisKKyM6IHNyYy9oZWxwLmM6MTg4Cittc2dpZCAiYWRtaW5kaXIgbXVzdCBiZSBpbnNpZGUgaW5zdGRpciBmb3IgZHBrZyB0byB3b3JrIHByb3Blcmx5IgorbXNnc3RyICIiCisKKyM6IHNyYy9oZWxwLmM6MTkwIHNyYy9tYWluLmM6NzQ3CisjLCBmdXp6eQorI3wgbXNnaWQgInVuYWJsZSB0byBzZXRlbnYgZm9yIG1haW50YWluZXIgc2NyaXB0IgorbXNnaWQgInVuYWJsZSB0byBzZXRlbnYgZm9yIHN1YnByb2Nlc3NlcyIKK21zZ3N0ciAibsOjbyBmb2kgcG9zc8OtdmVsIGZhemVyIHNldGVudiBwYXJhIG8gc2NyaXB0IGRvIG1haW50YWluZXIiCisKKyM6IHNyYy9oZWxwLmM6MTkyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjaHJvb3QgdG8gYCUuMjUwcyciCittc2dzdHIgImZhbGhvdSBvIGNocm9vdCBwYXJhIGAlLjI1MHMnIgorCisjOiBzcmMvaGVscC5jOjE5NCBkcGtnLWRlYi9idWlsZC5jOjQ1NSBkcGtnLWRlYi9idWlsZC5jOjQ1NworIzogZHBrZy1kZWIvYnVpbGQuYzo1MzYgZHBrZy1kZWIvYnVpbGQuYzo1NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIGAlLjI1NXMnIgorbXNnc3RyICJvIGNoZGlyIHBhcmEgYCUuMjU1cycgZmFsaG91IgorCisjOiBzcmMvaGVscC5jOjI1NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IGV4ZWN1dGUgcGVybWlzc2lvbnMgb24gYCUuMjUwcyciCittc2dzdHIgIm7Do28gZm9pIHBvc3PDrXZlbCBkZWZpbmlyIHBlcm1pc3PDtWVzIGRlIGV4ZWN1w6fDo28gZW0gYCUuMjUwcyciCisKKyM6IHNyYy9oZWxwLmM6Mjc2Cittc2dpZCAidW5hYmxlIHRvIHNldGVudiBmb3IgbWFpbnRhaW5lciBzY3JpcHQiCittc2dzdHIgIm7Do28gZm9pIHBvc3PDrXZlbCBmYXplciBzZXRlbnYgcGFyYSBvIHNjcmlwdCBkbyBtYWludGFpbmVyIgorCisjOiBzcmMvaGVscC5jOjMwMAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnN0YWxsZWQgJXMgc2NyaXB0IgorbXNnc3RyICJzY3JpcHQgJXMgaW5zdGFsYWRvIgorCisjOiBzcmMvaGVscC5jOjMxMyBzcmMvaGVscC5jOjM4MiBzcmMvaGVscC5jOjQ0MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCAlcyBgJS4yNTBzJyIKK21zZ3N0ciAibsOjbyBmb2kgcG9zc8OtdmVsIG8gc3RhdCBhICVzIGAlLjI1MHMnIgorCisjOiBzcmMvaGVscC5jOjM2OCBzcmMvaGVscC5jOjQyOAorIywgYy1mb3JtYXQKK21zZ2lkICJuZXcgJXMgc2NyaXB0IgorbXNnc3RyICJub3ZvIHNjcmlwdCAlcyIKKworIzogc3JjL2hlbHAuYzo0MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAib2xkICVzIHNjcmlwdCIKK21zZ3N0ciAic2NyaXB0ICVzIGFudGlnbyIKKworIzogc3JjL2hlbHAuYzo0MTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgJXMgJyUuMjUwcyc6ICVzIgorbXNnc3RyICJuw6NvIGZvaSBwb3Nzw612ZWwgbyBzdGF0ICVzICclLjI1MHMnOiAlcyIKKworIzogc3JjL2hlbHAuYzo0MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZyAtIHRyeWluZyBzY3JpcHQgZnJvbSB0aGUgbmV3IHBhY2thZ2UgaW5zdGVhZCAuLi5cbiIKK21zZ3N0ciAiZHBrZyAtIGVtIHZleiBkaXNzbyBhIHRlbnRhciBzY3JpcHQgZG8gbm92byBwYWNvdGUgLi4uXG4iCisKKyM6IHNyYy9oZWxwLmM6NDM5Cittc2dpZCAidGhlcmUgaXMgbm8gc2NyaXB0IGluIHRoZSBuZXcgdmVyc2lvbiBvZiB0aGUgcGFja2FnZSAtIGdpdmluZyB1cCIKK21zZ3N0ciAibsOjbyBleGlzdGUgc2NyaXB0IG5hIG5vdmEgdmVyc8OjbyBkbyBwYWNvdGUgLSBhIGRlc2lzdGlyIgorCisjOiBzcmMvaGVscC5jOjQ0NQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiAuLi4gaXQgbG9va3MgbGlrZSB0aGF0IHdlbnQgT0suXG4iCittc2dzdHIgImRwa2c6IC4uLiBwYXJlY2UgcXVlIHR1ZG8gY29ycmV1IGJlbS5cbiIKKworIzogc3JjL2hlbHAuYzo2MTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNlY3VyZWx5IHJlbW92ZSAnJS4yNTVzJyIKK21zZ3N0ciAibsOjbyBmb2kgcmVtb3ZlciwgZW0gc2VndXJhbsOnYSwgJyUuMjU1cyciCisKKyM6IHNyYy9oZWxwLmM6NjIxIGRwa2ctZGViL2luZm8uYzo2NSBkcGtnLWRlYi9pbmZvLmM6NjcKK21zZ2lkICJybSBjb21tYW5kIGZvciBjbGVhbnVwIgorbXNnc3RyICIiCisKKyM6IHNyYy9pbmZvZGIuYzo1MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hlY2sgZXhpc3RlbmNlIG9mIGAlLjI1MHMnIgorbXNnc3RyICJuw6NvIGZvaSBwb3Nzw612ZWwgdmVyaWZpY2FyIGEgZXhpc3TDqm5jaWEgZGUgYCUuMjUwcyciCisKKyM6IHNyYy9pbmZvZGIuYzo3MAorbXNnaWQgImNhbm5vdCByZWFkIGluZm8gZGlyZWN0b3J5IgorbXNnc3RyICJuw6NvIHBvZGUgbGVyIGRpcmVjdMOzcmlvIGluZm8iCisKKyM6IHNyYy9tYWluLmM6NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuIGAlcycgcGFja2FnZSBtYW5hZ2VtZW50IHByb2dyYW0gdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiRGViaWFuIGAlcycgcHJvZ3JhbWEgZGUgZ2VzdMOjbyBkZSBwYWNvdGVzIHZlcnPDo28gJXMuXG4iCisKKyM6IHNyYy9tYWluLmM6ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLWl8LS1pbnN0YWxsICAgICAgIDwuZGViIGZpbGUgbmFtZT4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRpcmVjdG9yeT4gLi4uXG4iCisiICAtLXVucGFjayAgICAgICAgICAgPC5kZWIgZmlsZSBuYW1lPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyZWN0b3J5PiAuLi5cbiIKKyIgIC1BfC0tcmVjb3JkLWF2YWlsICA8LmRlYiBmaWxlIG5hbWU+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXJlY3Rvcnk+IC4uLlxuIgorIiAgLS1jb25maWd1cmUgICAgICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC0tdHJpZ2dlcnMtb25seSAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtcnwtLXJlbW92ZSAgICAgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLVB8LS1wdXJnZSAgICAgICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC0tZ2V0LXNlbGVjdGlvbnMgWzxwYXR0ZXJuPiAuLi5dIEdldCBsaXN0IG9mIHNlbGVjdGlvbnMgdG8gc3Rkb3V0LlxuIgorIiAgLS1zZXQtc2VsZWN0aW9ucyAgICAgICAgICAgICAgICAgU2V0IHBhY2thZ2Ugc2VsZWN0aW9ucyBmcm9tIHN0ZGluLlxuIgorIiAgLS1jbGVhci1zZWxlY3Rpb25zICAgICAgICAgICAgICAgRGVzZWxlY3QgZXZlcnkgbm9uLWVzc2VudGlhbCBwYWNrYWdlLlxuIgorIiAgLS11cGRhdGUtYXZhaWwgPFBhY2thZ2VzLWZpbGU+ICAgUmVwbGFjZSBhdmFpbGFibGUgcGFja2FnZXMgaW5mby5cbiIKKyIgIC0tbWVyZ2UtYXZhaWwgPFBhY2thZ2VzLWZpbGU+ICAgIE1lcmdlIHdpdGggaW5mbyBmcm9tIGZpbGUuXG4iCisiICAtLWNsZWFyLWF2YWlsICAgICAgICAgICAgICAgICAgICBFcmFzZSBleGlzdGluZyBhdmFpbGFibGUgaW5mby5cbiIKKyIgIC0tZm9yZ2V0LW9sZC11bmF2YWlsICAgICAgICAgICAgIEZvcmdldCB1bmluc3RhbGxlZCB1bmF2YWlsYWJsZSBwa2dzLlxuIgorIiAgLXN8LS1zdGF0dXMgPHBhY2thZ2U+IC4uLiAgICAgICAgRGlzcGxheSBwYWNrYWdlIHN0YXR1cyBkZXRhaWxzLlxuIgorIiAgLXB8LS1wcmludC1hdmFpbCA8cGFja2FnZT4gLi4uICAgRGlzcGxheSBhdmFpbGFibGUgdmVyc2lvbiBkZXRhaWxzLlxuIgorIiAgLUx8LS1saXN0ZmlsZXMgPHBhY2thZ2U+IC4uLiAgICAgTGlzdCBmaWxlcyBgb3duZWQnIGJ5IHBhY2thZ2UocykuXG4iCisiICAtbHwtLWxpc3QgWzxwYXR0ZXJuPiAuLi5dICAgICAgICBMaXN0IHBhY2thZ2VzIGNvbmNpc2VseS5cbiIKKyIgIC1TfC0tc2VhcmNoIDxwYXR0ZXJuPiAuLi4gICAgICAgIEZpbmQgcGFja2FnZShzKSBvd25pbmcgZmlsZShzKS5cbiIKKyIgIC1DfC0tYXVkaXQgICAgICAgICAgICAgICAgICAgICAgIENoZWNrIGZvciBicm9rZW4gcGFja2FnZShzKS5cbiIKKyIgIC0tcHJpbnQtYXJjaGl0ZWN0dXJlICAgICAgICAgICAgIFByaW50IGRwa2cgYXJjaGl0ZWN0dXJlLlxuIgorIiAgLS1jb21wYXJlLXZlcnNpb25zIDxhPiA8b3A+IDxiPiAgQ29tcGFyZSB2ZXJzaW9uIG51bWJlcnMgLSBzZWUgYmVsb3cuXG4iCisiICAtLWZvcmNlLWhlbHAgICAgICAgICAgICAgICAgICAgICBTaG93IGhlbHAgb24gZm9yY2luZy5cbiIKKyIgIC1EaHwtLWRlYnVnPWhlbHAgICAgICAgICAgICAgICAgIFNob3cgaGVscCBvbiBkZWJ1Z2dpbmcuXG4iCisiXG4iCittc2dzdHIgIiIKKyJDb21hbmRvczpcbiIKKyIgIC1pfC0taW5zdGFsbFx0XHQ8ZmljaGVpcm8gLmRlYj4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRpcmVjdMOzcmlvPiAuLi5cbiIKKyIgIC0tdW5wYWNrXHRcdDxmaWNoZWlybyAuZGViPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyZWN0w7NyaW8+IC4uLlxuIgorIiAgLUF8LS1yZWNvcmQtYXZhaWxcdDxmaWNoZWlybyAuZGViPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyZWN0w7NyaW8+IC4uLlxuIgorIiAgLS1jb25maWd1cmVcdFx0PHBhY290ZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtLXRyaWdnZXJzLW9ubHlcdDxwYWNvdGU+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLXJ8LS1yZW1vdmVcdFx0PHBhY290ZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtUHwtLXB1cmdlXHRcdDxwYWNvdGU+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLS1nZXQtc2VsZWN0aW9ucyBbPHBhZHLDo28+IC4uLl0gXHRFbnZpYXIgYSBsaXN0YSBkZSBzZWxlY8Onw7VlcyBwYXJhICIKKyJzdGRvdXQuXG4iCisiICAtLXNldCBzZWxlY3Rpb25zXHRcdFx0RGVmaW5pciBhIGxpc3RhIGRlIHNlbGVjw6fDtWVzIGEgcGFydGlyIGRlIHN0ZGluLlxuIgorIiAgLS1jbGVhci1zZWxlY3Rpb25zXHRcdFx0RGVzc2VsZWNjaW9uYXIgdG9kb3Mgb3MgcGFjb3RlcyBuw6NvIGVzc2VuY2lhaXMuXG4iCisiICAtLXVwZGF0ZS1hdmFpbCA8RmljaGVpcm8tUGFja2FnZXM+XHRTdWJzdGl0dWlyIGluZm9ybWHDp8OjbyBkZSBwYWNvdGVzICIKKyJkaXNwb27DrXZlaXMuXG4iCisiICAtLW1lcmdlLWF2YWlsIDxGaWNoZWlyby1QYWNrYWdlcz5cdEp1bnRhciBjb20gYSBpbmZvcm1hw6fDo28gZG8gZmljaGVpcm8uXG4iCisiICAtLWNsZWFyLWF2YWlsXHRcdFx0QXBhZ2FyIGluZm9ybWHDp8OjbyBkb3MgZGlzcG9uw612ZWlzIGV4aXN0ZW50ZXMuXG4iCisiICAtLWZvcmdldC1vbGQtdW5hdmFpbFx0XHRcdEVzcXVlY2VyIHBhY290ZXMgZGVzaW5zdGFsYWRvcyBpbmRpc3BvbsOtdmVpcy5cbiIKKyIgIC1zfC0tc3RhdHVzIDxwYWNvdGU+IC4uLlx0XHRNb3N0cmFyIGRldGFsaGVzIGRlIGVzdGFkbyBkbyBwYWNvdGUuXG4iCisiICAtcHwtLXByaW50LWF2YWlsIDxwYWNvdGU+IC4uLlx0TW9zdHJhciBkZXRhbGhlcyBkYSB2ZXJzw6NvIGRpc3BvbsOtdmVsLlxuIgorIiAgLUx8LS1saXN0LWZpbGVzIDxwYWNvdGU+IC4uLiBcdExpc3RhciBmaWNoZWlyb3MgcXVlIHBlcnRlbmNlbSBhbyhzKSBwYWNvdGUiCisiKHMpLlxuIgorIiAgLWx8LS1saXN0IFs8cGFkcsOjbz4gLi4uXSAgICAgXHRMaXN0YXIgcGFjb3RlcyByZXN1bWlkYW1lbnRlLlxuIgorIiAgLVN8LS1zZWFyY2ggPHBhZHLDo28+IC4uLlx0XHRFbmNvbnRyYXIgcGFjb3RlKHMpIGEgcXVlIHBlcnRlbsOnYW0gbyhzKSAiCisiZmljaGVpcm8ocykuXG4iCisiICAtQ3wtLWF1ZGl0XHRcdFx0XHRQcm9jdXJhIHBhY290ZShzKSBjb20gcHJvYmxlbWFzLlxuIgorIiAgLS1wcmludC1hcmNoaXRlY3R1cmVcdFx0XHRFc2NyZXZlciBhIGFycXVpdGVjdHVyYSBkbyBkcGtnLlxuIgorIiAgLS1jb21wYXJlLXZlcnNpb25zIDxhPiA8b3A+IDxiPiBcdENvbXBhcmFyIG7Dum1lcm9zIGRlIHZlcnPDo28gLSB2ZXIgIgorImFiYWl4by5cbiIKKyIgIC0tZm9yY2UtaGVscFx0XHRcdFx0TW9zdHJhciBhanVkYSBzb2JyZSBmb3LDp2FyLlxuIgorIiAgLURofC0tZGVidWc9aGVscFx0XHRcdE1vc3RyYXIgYWp1ZGEgc29icmUgZGVidWdnaW5nLlxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjExMyBzcmMvcXVlcnljbWQuYzo2MzEgc3JjL3RyaWdjbWQuYzo3NyBkcGtnLWRlYi9tYWluLmM6ODgKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjc3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIgIC1ofC0taGVscCAgICAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgICAgICAgICBTaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorbXNnc3RyICIiCisiICAtaHwtLWhlbHAgICAgICAgICAgICAgICAgICAgICAgICBNb3N0cmFyIGVzdGEgbWVuc2FnZW0gZGUgYWp1ZGEuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgICAgICAgICBNb3N0cmFyIGEgdmVyc8Ojby5cbiIKKyJcbiIKKworIzogc3JjL21haW4uYzoxMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlVzZSBkcGtnIC1ifC0tYnVpbGR8LWN8LS1jb250ZW50c3wtZXwtLWNvbnRyb2x8LUl8LS1pbmZvfC1mfC0tZmllbGR8XG4iCisiIC14fC0tZXh0cmFjdHwtWHwtLXZleHRyYWN0fC0tZnN5cy10YXJmaWxlICBvbiBhcmNoaXZlcyAodHlwZSAlcyAtLWhlbHApLlxuIgorIlxuIgorbXNnc3RyICIiCisiVXRpbGl6ZSBkcGtnIC1ifC0tYnVpbGR8LWN8LS1jb250ZW50c3wtZWwtLWNvbnRyb2x8LUl8LS1pbmZvfC1mfC0tZmllbGR8XG4iCisiIC14fC0tZXh0cmFjdHwtWHwtLXZleHRyYWN0fC0tZnN5cy10YXJmaWxlIGVtIGFycXVpdm9zIChlc2NyZXZhICVzIC0taGVscCkuXG4iCisKKyM6IHNyYy9tYWluLmM6MTIzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJGb3IgaW50ZXJuYWwgdXNlOiBkcGtnIC0tYXNzZXJ0LXN1cHBvcnQtcHJlZGVwZW5kcyB8IC0tcHJlZGVwLXBhY2thZ2UgfFxuIgorIiAgLS1hc3NlcnQtd29ya2luZy1lcG9jaCB8IC0tYXNzZXJ0LWxvbmctZmlsZW5hbWVzIHwgLS1hc3NlcnQtbXVsdGktY29ucmVwLlxuIgorIlxuIgorbXNnc3RyICIiCisiUGFyYSB1c28gaW50ZXJubzogZHBrZyAtLWFzc2VydC1zdXBwb3J0LXByZWRlcGVuZHMgfCAtLXByZWRlcGVuZC1wYWNrYWdlIHxcbiIKKyIgIC0tYXNzZXJ0LXdvcmtpbmctZXBvY2ggfCAtLWFzc2VyLWxvbmctZmlsZW5hbWVzIHwgLS1hc3NlcnQtbXVsdGktY29ucmVwLlxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjEyOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT4gICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorIiAgLS1yb290PTxkaXJlY3Rvcnk+ICAgICAgICAgSW5zdGFsbCBvbiBhIGRpZmZlcmVudCByb290IGRpcmVjdG9yeS5cbiIKKyIgIC0taW5zdGRpcj08ZGlyZWN0b3J5PiAgICAgIENoYW5nZSBpbnN0YWxsYXRpb24gZGlyIHdpdGhvdXQgY2hhbmdpbmcgYWRtaW4gIgorImRpci5cbiIKKyIgIC0tcGF0aC1leGNsdWRlPTxwYXR0ZXJuPiAgIERvIG5vdCBpbnN0YWxsIHBhdGhzIHdoaWNoIG1hdGNoIGEgc2hlbGwgIgorInBhdHRlcm4uXG4iCisiICAtLXBhdGgtaW5jbHVkZT08cGF0dGVybj4gICBSZS1pbmNsdWRlIGEgcGF0dGVybiBhZnRlciBhIHByZXZpb3VzICIKKyJleGNsdXNpb24uXG4iCisiICAtT3wtLXNlbGVjdGVkLW9ubHkgICAgICAgICBTa2lwIHBhY2thZ2VzIG5vdCBzZWxlY3RlZCBmb3IgaW5zdGFsbC8iCisidXBncmFkZS5cbiIKKyIgIC1FfC0tc2tpcC1zYW1lLXZlcnNpb24gICAgIFNraXAgcGFja2FnZXMgd2hvc2Ugc2FtZSB2ZXJzaW9uIGlzIGluc3RhbGxlZC5cbiIKKyIgIC1HfC0tcmVmdXNlLWRvd25ncmFkZSAgICAgIFNraXAgcGFja2FnZXMgd2l0aCBlYXJsaWVyIHZlcnNpb24gdGhhbiAiCisiaW5zdGFsbGVkLlxuIgorIiAgLUJ8LS1hdXRvLWRlY29uZmlndXJlICAgICAgSW5zdGFsbCBldmVuIGlmIGl0IHdvdWxkIGJyZWFrIHNvbWUgb3RoZXIgIgorInBhY2thZ2UuXG4iCisiICAtLVtuby1ddHJpZ2dlcnMgICAgICAgICAgICBTa2lwIG9yIGZvcmNlIGNvbnNlcXVlbnRpYWwgdHJpZ2dlciAiCisicHJvY2Vzc2luZy5cbiIKKyIgIC0tbm8tZGVic2lnICAgICAgICAgICAgICAgIERvIG5vdCB0cnkgdG8gdmVyaWZ5IHBhY2thZ2Ugc2lnbmF0dXJlcy5cbiIKKyIgIC0tbm8tYWN0fC0tZHJ5LXJ1bnwtLXNpbXVsYXRlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBKdXN0IHNheSB3aGF0IHdlIHdvdWxkIGRvIC0gZG9uJ3QgZG8gaXQuXG4iCisiICAtRHwtLWRlYnVnPTxvY3RhbD4gICAgICAgICBFbmFibGUgZGVidWdnaW5nIChzZWUgLURoZWxwIG9yIC0tZGVidWc9aGVscCkuXG4iCisiICAtLXN0YXR1cy1mZCA8bj4gICAgICAgICAgICBTZW5kIHN0YXR1cyBjaGFuZ2UgdXBkYXRlcyB0byBmaWxlIGRlc2NyaXB0b3IgIgorIjxuPi5cbiIKKyIgIC0tbG9nPTxmaWxlbmFtZT4gICAgICAgICAgIExvZyBzdGF0dXMgY2hhbmdlcyBhbmQgYWN0aW9ucyB0byA8ZmlsZW5hbWU+LlxuIgorIiAgLS1pZ25vcmUtZGVwZW5kcz08cGFja2FnZT4sLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZ25vcmUgZGVwZW5kZW5jaWVzIGludm9sdmluZyA8cGFja2FnZT4uXG4iCisiICAtLWZvcmNlLS4uLiAgICAgICAgICAgICAgICBPdmVycmlkZSBwcm9ibGVtcyAoc2VlIC0tZm9yY2UtaGVscCkuXG4iCisiICAtLW5vLWZvcmNlLS4uLnwtLXJlZnVzZS0uLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3Agd2hlbiBwcm9ibGVtcyBlbmNvdW50ZXJlZC5cbiIKKyIgIC0tYWJvcnQtYWZ0ZXIgPG4+ICAgICAgICAgIEFib3J0IGFmdGVyIGVuY291bnRlcmluZyA8bj4gZXJyb3JzLlxuIgorIlxuIgorbXNnc3RyICIiCisiT3DDp8O1ZXM6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3TDs3Jpbz4gICAgVXRpbGl6YXIgPGRpcmVjdMOzcmlvPiBlbSB2ZXogZGUgJXMuXG4iCisiICAtLXJvb3Q9PGRpcmVjdMOzcmlvPiAgICAgICAgSW5zdGFsYXIgbnVtIGRpcmVjdMOzcmlvIHJhaXogZGlmZXJlbnRlLlxuIgorIiAgLS1pbnN0ZGlyPTxkaXJlY3TDs3Jpbz4gICAgIE11ZGFyIG8gZGlyIGRlIGluc3RhbGHDp8OjbyBzZW0gbXVkYXIgbyBkaXIgZGUgIgorImFkbWluaXN0cmHDp8Ojby5cbiIKKyIgIC0tcGF0aC1leGNsdWRlPTxwYWRyw6NvPiAgICBOw6NvIGluc3RhbGFyIGNhbWluaG9zIHF1ZSBjb2luY2lkYW0gY29tIG8gIgorInBhZHLDo28gZGEgc2hlbGwuXG4iCisiICAtLXBhdGgtaW5jbHVkZT08cGFkcsOjbz4gICAgUmUtaW5jbHVpciBvIHBhZHLDo28gYXDDs3MgdW1hIHByw6l2aWEgZXhjbHVzw6NvLlxuIgorIiAgLU98LS1zZWxlY3RlZC1vbmx5ICAgICAgICAgU2FsdGFyIHBhY290ZXMgbsOjbyBzZWxlY2Npb25hZG9zIHBhcmEgIgorImluc3RhbGHDp8Ojby9hY3R1YWxpemHDp8Ojby5cbiIKKyIgIC1FfC0tc2tpcC1zYW1lLXZlcnNpb24gICAgIFNhbHRhciBwYWNvdGVzIGN1amEgbWVzbWEgdmVyc8OjbyBlc3TDoSAiCisiaW5zdGFsYWRhLlxuIgorIiAgLUd8LS1yZWZ1c2UtZG93bmdyYWRlICAgICAgU2FsdGFyIHBhY290ZXMgY29tIHZlcnPDo28gYW50ZXJpb3Igw6AgIgorImluc3RhbGFkYS5cbiIKKyIgIC1CfC0tYXV0by1kZWNvbmZpZ3VyZSAgICAgIEluc3RhbGFyIG1lc21vIHF1ZSBlc3RyYWd1ZSBhbGd1bSBvdXRybyAiCisicGFjb3RlLlxuIgorIiAgLS1bbm8tXS10cmlnZ2VycyAgICAgICAgICAgU2FsdGFyIG91IGZvcsOnYXIgbyBjb25zZXF1ZW50ZSBwcm9jZXNzYW1lbnRvIGRlICIKKyJ0cmlnZ2Vycy5cbiIKKyIgIC0tbm8tZGVic2lnICAgICAgICAgICAgICAgIE7Do28gdGVudGFyIHZlcmlmaWNhciBhIGFzc2luYXR1cmEgZG9zIHBhY290ZXMuXG4iCisiICAtLW5vLWFjdHwtLWRyeS1ydW58LS1zaW11bGF0ZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRGl6ZXIgYXBlbmFzIG8gcXVlIGlyaWEgZmF6ZXIgLSBuw6NvIG8gZmF6ZXIuXG4iCisiICAtRHwtLWRlYnVnPTxvY3RhbD4gICAgICAgICBBY3RpdmFyIGEgZGVwdXJhw6fDo28gKHZlciAtRGhlbHAgb3UgLS0iCisiZGVidWc9aGVscCkuXG4iCisiICAtLXN0YXR1cy1mZCA8bj4gICAgICAgICAgICBFbnZpYXIgYWN0dWFsaXphw6fDtWVzIGRlIG11ZGFuw6dhIGRlIGVzdGFkbyBwYXJhICIKKyJvIGZpbGUgZGVzY3JpcHRvciA8bj4uXG4iCisiICAtLWxvZz08bm9tZWZpY2hlaXJvPiAgICAgICBSZWdpc3RhciBtdWRhbsOnYXMgZGUgZXN0YWRvIGUgYWPDp8O1ZXMgcGFyYSAiCisiPG5vbWVmaWNoZWlybz4uXG4iCisiICAtLWlnbm9yZS1kZXBlbmRzPTxwYWNvdGU+LC4uLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSWdub3JhciBhcyBkZXBlbmTDqm5jaWFzIGVudm9sdmVuZG8gPHBhY290ZT4uXG4iCisiICAtLWZvcmNlLS4uLiAgICAgICAgICAgICAgICBVbHRyYXBhc3NhciBwcm9ibGVtYXMgKHZlciAtLWZvcmNlLWhlbHApLlxuIgorIiAgLS1uby1mb3JjZS0uLi58LS1yZWZ1c2UtLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQYXJhciBxdWFuZG8gZm9yZW0gZW5jb250cmFkb3MgcHJvYmxlbWFzLlxuIgorIiAgLS1hYm9ydC1hZnRlciA8bj4gICAgICAgICAgQWJvcnRhciBhcMOzcyBlbmNvbnRyYXIgPG4+IGVycm9zLlxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjE1NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tcGFyaXNvbiBvcGVyYXRvcnMgZm9yIC0tY29tcGFyZS12ZXJzaW9ucyBhcmU6XG4iCisiICBsdCBsZSBlcSBuZSBnZSBndCAgICAgICAodHJlYXQgZW1wdHkgdmVyc2lvbiBhcyBlYXJsaWVyIHRoYW4gYW55ICIKKyJ2ZXJzaW9uKTtcbiIKKyIgIGx0LW5sIGxlLW5sIGdlLW5sIGd0LW5sICh0cmVhdCBlbXB0eSB2ZXJzaW9uIGFzIGxhdGVyIHRoYW4gYW55IHZlcnNpb24pO1xuIgorIiAgPCA8PCA8PSA9ID49ID4+ID4gICAgICAgKG9ubHkgZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBjb250cm9sIGZpbGUgIgorInN5bnRheCkuXG4iCisiXG4iCittc2dzdHIgIiIKKyJPcyBvcGVyYWRvcmVzIGRlIGNvbXBhcmHDp8OjbyBwYXJhIC0tY29tcGFyZS12ZXJzaW9ucyBzw6NvOlxuIgorIiAgbHQgbGUgZXEgbmUgZ2UgZ3RcdCAgICh0cmF0YXIgYSB2ZXJzw6NvIHZhemlhIGNvbW8gYW50ZXJpb3IgYSBxdWFscXVlciAiCisib3V0cmEgdmVyc8Ojbyk7XG4iCisiICBsdC1ubCBsZS1ubCBnZS1ubCBndC1ubCAodHJhdGFyIGEgdmVyc8OjbyB2YXppYSBjb21vIHBvc3RlcmlvciBhIHF1YWxxdWVyICIKKyJvdXRyYSB2ZXJzw6NvKTtcbiIKKyIgIDwgPDwgPD0gPSA9PiA+PiA+ICAgICAgIChhcGVuYXMgcGFyYSBjb21wYXRpYmlsaWRhZGUgY29tIGEgc2ludGF4ZSBkbyAiCisiZmljaGVpcm8gY29udHJvbCkuXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTYxCisjLCBjLWZvcm1hdAorbXNnaWQgIlVzZSBgZHNlbGVjdCcgb3IgYGFwdGl0dWRlJyBmb3IgdXNlci1mcmllbmRseSBwYWNrYWdlIG1hbmFnZW1lbnQuXG4iCittc2dzdHIgIlBhcmEgdW1hIGdlc3TDo28gYW1pZ8OhdmVsIGRlIHBhY290ZXMgdXRpbGl6ZSBgZHNlbGVjdCcgb3UgYGFwdGl0dWRlJy5cbiIKKworIzogc3JjL21haW4uYzoxNzAKK21zZ2lkICIiCisiVHlwZSBkcGtnIC0taGVscCBmb3IgaGVscCBhYm91dCBpbnN0YWxsaW5nIGFuZCBkZWluc3RhbGxpbmcgcGFja2FnZXMgWypdO1xuIgorIlVzZSBgZHNlbGVjdCcgb3IgYGFwdGl0dWRlJyBmb3IgdXNlci1mcmllbmRseSBwYWNrYWdlIG1hbmFnZW1lbnQ7XG4iCisiVHlwZSBkcGtnIC1EaGVscCBmb3IgYSBsaXN0IG9mIGRwa2cgZGVidWcgZmxhZyB2YWx1ZXM7XG4iCisiVHlwZSBkcGtnIC0tZm9yY2UtaGVscCBmb3IgYSBsaXN0IG9mIGZvcmNpbmcgb3B0aW9ucztcbiIKKyJUeXBlIGRwa2ctZGViIC0taGVscCBmb3IgaGVscCBhYm91dCBtYW5pcHVsYXRpbmcgKi5kZWIgZmlsZXM7XG4iCisiXG4iCisiT3B0aW9ucyBtYXJrZWQgWypdIHByb2R1Y2UgYSBsb3Qgb2Ygb3V0cHV0IC0gcGlwZSBpdCB0aHJvdWdoIGBsZXNzJyBvciAiCisiYG1vcmUnICEiCittc2dzdHIgIiIKKyJFc2NyZXZhIGRwa2cgLS1oZWxwIHBhcmEgYWp1ZGEgc29icmUgaW5zdGFsYXIgZSBkZXNpbnN0YWxhciBwYWNvdGVzIFsqXTtcbiIKKyJVdGlsaXplIGBkc2VsZWN0JyBvdSBgYXB0aXR1ZGUnIHBhcmEgZ2VzdMOjbyBkZSBwYWNvdGVzIGFtaWfDoXZlbDtcbiIKKyJFc2NyZXZhIGRwa2cgLURoZWxwIHBhcmEgdW1hIGxpc3RhIGRlIHZhbG9yZXMgZGUgZmxhZ3MgZGUgZGVidWcgZG8gZHBrZztcbiIKKyJFc2NyZXZhIGRwa2cgLS1mb3JjZS1oZWxwIHBhcmEgdW1hIGxpc3RhIGRlIG9ww6fDtWVzIHBhcmEgZm9yw6dhciBvcGVyYcOnw7VlcztcbiIKKyJFc2NyZXZhIGRwa2ctZGViIC0taGVscCBwYXJhIGFqdWRhIHNvYnJlIG1hbmlwdWxhciBmaWNoZWlyb3MgKi5kZWI7XG4iCisiXG4iCisiT3DDp8O1ZXMgbWFyY2FkYXMgY29tIFsqXSBwcm9kdXplbSBtdWl0YSBzYcOtZGEgZGUgdGV4dG8gLSB1dGlsaXplIHBpcGVzIGNvbSAiCisiYGxlc3MnIG91IGBtb3JlJyAhIgorCisjOiBzcmMvbWFpbi5jOjIxOQorbXNnaWQgIlNldCBhbGwgZm9yY2Ugb3B0aW9ucyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIyMQorbXNnaWQgIlJlcGxhY2UgYSBwYWNrYWdlIHdpdGggYSBsb3dlciB2ZXJzaW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjIzCittc2dpZCAiQ29uZmlndXJlIGFueSBwYWNrYWdlIHdoaWNoIG1heSBoZWxwIHRoaXMgb25lIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjI1Cittc2dpZCAiUHJvY2VzcyBpbmNpZGVudGFsIHBhY2thZ2VzIGV2ZW4gd2hlbiBvbiBob2xkIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjI3Cittc2dpZCAiVHJ5IHRvIChkZSlpbnN0YWxsIHRoaW5ncyBldmVuIHdoZW4gbm90IHJvb3QiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjkKK21zZ2lkICJQQVRIIGlzIG1pc3NpbmcgaW1wb3J0YW50IHByb2dyYW1zLCBwcm9ibGVtcyBsaWtlbHkiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzEKK21zZ2lkICJJbnN0YWxsIGEgcGFja2FnZSBldmVuIGlmIGl0IGZhaWxzIGF1dGhlbnRpY2l0eSBjaGVjayIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzMworbXNnaWQgIlByb2Nlc3MgZXZlbiBwYWNrYWdlcyB3aXRoIHdyb25nIHZlcnNpb25zIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjM1Cittc2dpZCAiT3ZlcndyaXRlIGEgZmlsZSBmcm9tIG9uZSBwYWNrYWdlIHdpdGggYW5vdGhlciIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzNworbXNnaWQgIk92ZXJ3cml0ZSBhIGRpdmVydGVkIGZpbGUgd2l0aCBhbiB1bmRpdmVydGVkIHZlcnNpb24iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzkKK21zZ2lkICJPdmVyd3JpdGUgb25lIHBhY2thZ2UncyBkaXJlY3Rvcnkgd2l0aCBhbm90aGVyJ3MgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI0MQorbXNnaWQgIkRvIG5vdCBwZXJmb3JtIHNhZmUgSS9PIG9wZXJhdGlvbnMgd2hlbiB1bnBhY2tpbmciCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDMKK21zZ2lkICJBbHdheXMgdXNlIHRoZSBuZXcgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDUKK21zZ2lkICJBbHdheXMgdXNlIHRoZSBvbGQgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDgKK21zZ2lkICIiCisiVXNlIHRoZSBkZWZhdWx0IG9wdGlvbiBmb3IgbmV3IGNvbmZpZyBmaWxlcyBpZiBvbmVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgaXMgYXZhaWxhYmxlLCBkb24ndCBwcm9tcHQuIElmIG5vIGRlZmF1bHQgY2FuIGJlICIKKyJmb3VuZCxcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgeW91IHdpbGwgYmUgcHJvbXB0ZWQgdW5sZXNzIG9uZSBvZiB0aGUgY29uZm9sZCBvclxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICBjb25mbmV3IG9wdGlvbnMgaXMgYWxzbyBnaXZlbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI1MworbXNnaWQgIkFsd2F5cyBpbnN0YWxsIG1pc3NpbmcgY29uZmlnIGZpbGVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjU1Cittc2dpZCAiT2ZmZXIgdG8gcmVwbGFjZSBjb25maWcgZmlsZXMgd2l0aCBubyBuZXcgdmVyc2lvbnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNTcKK21zZ2lkICJQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyBvciBubyBhcmNoaXRlY3R1cmUiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNTkKK21zZ2lkICJJbnN0YWxsIGV2ZW4gaWYgaXQgd291bGQgYnJlYWsgYW5vdGhlciBwYWNrYWdlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjYxCittc2dpZCAiQWxsb3cgaW5zdGFsbGF0aW9uIG9mIGNvbmZsaWN0aW5nIHBhY2thZ2VzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjYzCisjLCBmdXp6eQorI3wgbXNnaWQgImRlcGVuZGVuY3kgcHJvYmxlbXMgLSBub3QgcmVtb3ZpbmciCittc2dpZCAiVHVybiBhbGwgZGVwZW5kZW5jeSBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzIgorbXNnc3RyICJwcm9ibGVtYXMgY29tIGRlcGVuZMOqbmNpYXMgLSBuw6NvIHJlbW92aWRvIgorCisjOiBzcmMvbWFpbi5jOjI2NQorIywgZnV6enkKKyN8IG1zZ2lkICJkZXBlbmRlbmN5IHByb2JsZW1zIC0gbm90IHJlbW92aW5nIgorbXNnaWQgIlR1cm4gZGVwZW5kZW5jeSB2ZXJzaW9uIHByb2JsZW1zIGludG8gd2FybmluZ3MiCittc2dzdHIgInByb2JsZW1hcyBjb20gZGVwZW5kw6puY2lhcyAtIG7Do28gcmVtb3ZpZG8iCisKKyM6IHNyYy9tYWluLmM6MjY3Cittc2dpZCAiUmVtb3ZlIHBhY2thZ2VzIHdoaWNoIHJlcXVpcmUgaW5zdGFsbGF0aW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjY5Cittc2dpZCAiUmVtb3ZlIGFuIGVzc2VudGlhbCBwYWNrYWdlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjgxCittc2dpZCAiR2VuZXJhbGx5IGhlbHBmdWwgcHJvZ3Jlc3MgaW5mb3JtYXRpb24iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODIKKyMsIGZ1enp5CisjfCBtc2dpZCAidW5hYmxlIHRvIHNldGVudiBmb3IgbWFpbnRhaW5lciBzY3JpcHQiCittc2dpZCAiSW52b2NhdGlvbiBhbmQgc3RhdHVzIG9mIG1haW50YWluZXIgc2NyaXB0cyIKK21zZ3N0ciAibsOjbyBmb2kgcG9zc8OtdmVsIGZhemVyIHNldGVudiBwYXJhIG8gc2NyaXB0IGRvIG1haW50YWluZXIiCisKKyM6IHNyYy9tYWluLmM6MjgzCittc2dpZCAiT3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg0Cittc2dpZCAiTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODUKKyMsIGZ1enp5CisjfCBtc2dpZCAicmVhZCBlcnJvciBpbiBjb25maWd1cmF0aW9uIGZpbGUgYCUuMjU1cyciCittc2dpZCAiT3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZSIKK21zZ3N0ciAiZXJybyBkZSBsZWl0dXJhIG5vIGZpY2hlaXJvIGRlIGNvbmZpZ3VyYcOnw6NvIGAlLjI1NXMnIgorCisjOiBzcmMvbWFpbi5jOjI4NgorbXNnaWQgIkxvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4NworbXNnaWQgIkRlcGVuZGVuY2llcyBhbmQgY29uZmxpY3RzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg4Cittc2dpZCAiTG90cyBvZiBkZXBlbmRlbmNpZXMvY29uZmxpY3RzIG91dHB1dCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4OQorbXNnaWQgIlRyaWdnZXIgYWN0aXZhdGlvbiBhbmQgcHJvY2Vzc2luZyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MAorbXNnaWQgIkxvdHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2VycyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MQorbXNnaWQgIlNpbGx5IGFtb3VudHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2VycyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MgorbXNnaWQgIkxvdHMgb2YgZHJpdmVsIGFib3V0IGVnIHRoZSBkcGtnL2luZm8gZGlyZWN0b3J5IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjkzCittc2dpZCAiSW5zYW5lIGFtb3VudHMgb2YgZHJpdmVsIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MzA0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlcyBkZWJ1Z2dpbmcgb3B0aW9uLCAtLWRlYnVnPTxvY3RhbD4gb3IgLUQ8b2N0YWw+OlxuIgorIlxuIgorIiBOdW1iZXIgIFJlZi4gaW4gc291cmNlICAgRGVzY3JpcHRpb25cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjMxMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiRGVidWdnaW5nIG9wdGlvbnMgY2FuIGJlIG1peGVkIHVzaW5nIGJpdHdpc2Utb3IuXG4iCisiTm90ZSB0aGF0IHRoZSBtZWFuaW5ncyBhbmQgdmFsdWVzIGFyZSBzdWJqZWN0IHRvIGNoYW5nZS5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjMxOQorbXNnaWQgIi0tZGVidWcgcmVxdWlyZXMgYW4gb2N0YWwgYXJndW1lbnQiCittc2dzdHIgIi0tZGVidWcgbmVjZXNzaXRhIGRlIHVtIGFyZ3VtZW50byBlbSBvY3RhbCIKKworIzogc3JjL21haW4uYzozNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAibnVsbCBwYWNrYWdlIG5hbWUgaW4gLS1pZ25vcmUtZGVwZW5kcyBjb21tYS1zZXBhcmF0ZWQgbGlzdCBgJS4yNTBzJyIKK21zZ3N0ciAiIgorIm5vbWUgZGUgcGFjb3RlIG51bG8gbmEgbGlzdGEgc2VwYXJhZGEgcG9yIHZpcmd1bGFzIGRlIC0taWdub3JlLWRlcGVuZHNgIgorIiUuMjUwcyciCisKKyM6IHNyYy9tYWluLmM6MzU0CisjLCBjLWZvcm1hdAorbXNnaWQgIi0taWdub3JlLWRlcGVuZHMgcmVxdWlyZXMgYSBsZWdhbCBwYWNrYWdlIG5hbWUuIGAlLjI1MHMnIGlzIG5vdDsgJXMiCittc2dzdHIgIiIKKyItLWlnbm9yZS1kZXBlbmRzIG5lY2Vzc2l0YSBkZSB1bSBub21lIGRlIHBhY290ZSB2w6FsaWRvLiAgYCUuMjUwcycgbsOjbyBvIMOpOyAlcyIKKworIzogc3JjL21haW4uYzozNzEgc3JjL21haW4uYzozODEgc3JjL21haW4uYzo2NDkgZHBrZy1zcGxpdC9tYWluLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgaW50ZWdlciBmb3IgLS0lczogYCUuMjUwcyciCittc2dzdHIgIm7Dum1lcm8gaW50ZWlybyBpbnbDoWxpZG8gcGFyYSAtLSVzOiBgJS4yNTBzJyIKKworIzogc3JjL21haW4uYzo0MzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgZXhlY3V0aW5nIGhvb2sgJyVzJywgZXhpdCBjb2RlICVkIgorbXNnc3RyICJlcnJvIGFvIGV4ZWN1dGFyIG8gaG9vayAnJXMnLCBjw7NkaWdvIGRlIHNhw61kYSAlZCIKKworIzogc3JjL21haW4uYzo0NjUKKyMsIGZ1enp5CisjfCBtc2dpZCAic3RhdHVzIgorbXNnaWQgInN0YXR1cyBsb2dnZXIiCittc2dzdHIgImVzdGFkbyIKKworIzogc3JjL21haW4uYzo0ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzIGZvcmNpbmcgb3B0aW9ucyAtIGNvbnRyb2wgYmVoYXZpb3VyIHdoZW4gcHJvYmxlbXMgZm91bmQ6XG4iCisiICB3YXJuIGJ1dCBjb250aW51ZTogIC0tZm9yY2UtPHRoaW5nPiw8dGhpbmc+LC4uLlxuIgorIiAgc3RvcCB3aXRoIGVycm9yOiAgICAtLXJlZnVzZS08dGhpbmc+LDx0aGluZz4sLi4uIHwgLS1uby1mb3JjZS08dGhpbmc+LC4uLlxuIgorIiBGb3JjaW5nIHRoaW5nczpcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjQ5MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiV0FSTklORyAtIHVzZSBvZiBvcHRpb25zIG1hcmtlZCBbIV0gY2FuIHNlcmlvdXNseSBkYW1hZ2UgeW91ciBpbnN0YWxsYXRpb24uXG4iCisiRm9yY2luZyBvcHRpb25zIG1hcmtlZCBbKl0gYXJlIGVuYWJsZWQgYnkgZGVmYXVsdC5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjUwNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGZvcmNlL3JlZnVzZSBvcHRpb24gYCUuKnMnIgorbXNnc3RyICJvcMOnw6NvIGRlc2NvbmhlY2lkYSBkZSBmb3LDp2FyL3JlY3VzYXIgYCUuKnMnIgorCisjOiBzcmMvbWFpbi5jOjUxMworIywgYy1mb3JtYXQKK21zZ2lkICJvYnNvbGV0ZSBmb3JjZS9yZWZ1c2Ugb3B0aW9uICclcydcbiIKK21zZ3N0ciAib3DDp8OjbyBmb3LDp2FyL3JlY3VzYXIgb2Jzb2xldGEgJyVzJ1xuIgorCisjOiBzcmMvbWFpbi5jOjY0MworbXNnaWQgIi0tY29tbWFuZC1mZCB0YWtlcyBvbmUgYXJndW1lbnQsIG5vdCB6ZXJvIgorbXNnc3RyICItLWNvbW1hbmQtZmQgbGV2YSB1bSBhcmd1bWVudG8sIG7Do28gemVybyIKKworIzogc3JjL21haW4uYzo2NDUKK21zZ2lkICItLWNvbW1hbmQtZmQgb25seSB0YWtlcyBvbmUgYXJndW1lbnQiCittc2dzdHIgIi0tY29tbWFuZC1mZCBsZXZhIHVtIGFyZ3VtZW50byIKKworIzogc3JjL21haW4uYzo2NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGRuJ3Qgb3BlbiBgJWknIGZvciBzdHJlYW0iCittc2dzdHIgIm7Do28gcG9kZSBhYnJpciBgJWknIHBhcmEgc3RyZWFtIgorCisjOiBzcmMvbWFpbi5jOjY3NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVvZiBiZWZvcmUgZW5kIG9mIGxpbmUgJWQiCittc2dzdHIgImVvZiBpbmVzcGVyYWRvIGFudGVzIGRvIGZpbSBkYSBsaW5oYSAlZCIKKworIzogc3JjL21haW4uYzo3MTkgc3JjL21haW4uYzo3NDEgc3JjL3F1ZXJ5Y21kLmM6NjkyIHNyYy9zdGF0Y21kLmM6Mzc5CisjOiBkcGtnLWRlYi9tYWluLmM6MjAxIGRwa2ctc3BsaXQvbWFpbi5jOjE2MworbXNnaWQgIm5lZWQgYW4gYWN0aW9uIG9wdGlvbiIKK21zZ3N0ciAiw6kgbmVjZXNzw6FyaWEgdW1hIG9ww6fDo28gZGUgYWPDp8OjbyIKKworIzogc3JjL3BhY2thZ2VzLmM6MTEzCittc2dpZCAiIgorInlvdSBtdXN0IHNwZWNpZnkgcGFja2FnZXMgYnkgdGhlaXIgb3duIG5hbWVzLCBub3QgYnkgcXVvdGluZyB0aGUgbmFtZXMgb2YgIgorInRoZSBmaWxlcyB0aGV5IGNvbWUgaW4iCittc2dzdHIgIiIKKyJ0ZW0gZGUgZXNwZWNpZmljYXIgcGFjb3RlcyBwZWxvcyBzZXVzIHByw7NwcmlvcyBub21lcywgbsOjbyBwb3IgdHJhbnNjcmV2ZXIgb3MgIgorIm5vbWVzIGRvcyBmaWNoZWlyb3MgZW0gcXVlIGVsZXMgdsOqbSIKKworIzogc3JjL3BhY2thZ2VzLmM6MTMzCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgLS1wZW5kaW5nIGRvZXMgbm90IHRha2UgYW55IG5vbi1vcHRpb24gYXJndW1lbnRzIgorbXNnc3RyICItLSVzIC0tcGVuZGluZyBuw6NvIGxldmEgcXVhaXNxdWVyIGFyZ3VtZW50b3MgbsOjby1vcMOnw6NvIgorCisjOiBzcmMvcGFja2FnZXMuYzoxMzggc3JjL3F1ZXJ5Y21kLmM6Mzc1IHNyYy9xdWVyeWNtZC5jOjU2NQorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGF0IGxlYXN0IG9uZSBwYWNrYWdlIG5hbWUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMgbmVjZXNzaXRhIGRlIHBlbG8gbWVub3MgdW0gYXJndW1lbnRvIGRlIG5vbWUgZGUgcGFjb3RlIgorCisjOiBzcmMvcGFja2FnZXMuYzoxNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSAlcyBsaXN0ZWQgbW9yZSB0aGFuIG9uY2UsIG9ubHkgcHJvY2Vzc2luZyBvbmNlLlxuIgorbXNnc3RyICJQYWNvdGUgJXMgbGlzdGFkbyBtYWlzIGRlIHVtYSB2ZXosIGFwZW5hcyBwcm9jZXNzYW5kbyB1bWEgdmV6LlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzoxODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk1vcmUgdGhhbiBvbmUgY29weSBvZiBwYWNrYWdlICVzIGhhcyBiZWVuIHVucGFja2VkXG4iCisiIGluIHRoaXMgcnVuICEgIE9ubHkgY29uZmlndXJpbmcgaXQgb25jZS5cbiIKK21zZ3N0ciAiIgorIkZvaSBkZXNjb21wYWN0YWRhIG1haXMgcXVlIHVtYSBjw7NwaWEgZG8gcGFjb3RlICVzXG4iCisiIG5lc3RhIGV4ZWN1w6fDo28gISAgQXBlbmFzIGNvbmZpZ3VyYW5kbyB1bWEgdmV6LlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInBhY2thZ2UgJS4yNTBzIGlzIG5vdCByZWFkeSBmb3IgdHJpZ2dlciBwcm9jZXNzaW5nXG4iCisiIChjdXJyZW50IHN0YXR1cyBgJS4yNTBzJyB3aXRoIG5vIHBlbmRpbmcgdHJpZ2dlcnMpIgorbXNnc3RyICIiCisibyBwYWNvdGUgJS4yNTBzIG7Do28gZXN0w6EgcHJvbnRvIHBhcmEgcHJvY2Vzc2FtZW50byBkZSB0cmlnZ2VyXG4iCisiIChlc3RhZG8gYWN0dWFsIGAlLjI1MHMnIHNlbSB0cmlnZ2VycyBwZW5kZW50ZXMpIgorCisjOiBzcmMvcGFja2FnZXMuYzozMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIHdoaWNoIHByb3ZpZGVzICVzIGlzIHRvIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiAgTyBwYWNvdGUgJXMgcXVlIGRpc3BvbmliaWxpemEgJXMgdmFpIHNlciByZW1vdmlkby5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MzM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIgIE8gcGFjb3RlICVzIHZhaSBzZXIgcmVtb3ZpZG8uXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjM1NAorIywgYy1mb3JtYXQKK21zZ2lkICIgIFZlcnNpb24gb2YgJXMgb24gc3lzdGVtIGlzICVzLlxuIgorbXNnc3RyICIgIEEgdmVyc8OjbyBkZSAlcyBubyBzaXN0ZW1hIMOpICVzLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzozNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIHdoaWNoIHByb3ZpZGVzICVzIGF3YWl0cyB0cmlnZ2VyIHByb2Nlc3NpbmcuXG4iCittc2dzdHIgIiIKKyIgIE8gcGFjb3RlICVzIHF1ZSBkaXNwb25pYmlsaXphICVzIGFndWFyZGEgcGVsbyBwcm9jZXNzYW1lbnRvIGRlIHRyaWdnZXIuLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzozODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIGF3YWl0cyB0cmlnZ2VyIHByb2Nlc3NpbmcuXG4iCittc2dzdHIgIiAgTyBwYWNvdGUgJXMgYWd1YXJkYSBwZWxvIHByb2Nlc3NhbWVudG8gZGUgdHJpZ2dlci5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDEwCisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IGFsc28gY29uZmlndXJpbmcgYCVzJyAocmVxdWlyZWQgYnkgYCVzJylcbiIKK21zZ3N0ciAiZHBrZzogdGFtYsOpbSBhIGNvbmZpZ3VyYXIgYCVzJyAobmVjZXNzw6FyaW8gcG9yIGAlcycpXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQxOAorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgd2hpY2ggcHJvdmlkZXMgJXMgaXMgbm90IGNvbmZpZ3VyZWQgeWV0LlxuIgorbXNnc3RyICIgIE8gcGFjb3RlICVzIHF1ZSBkaXNwb25pYmlsaXphICVzIGFpbmRhIG7Do28gZXN0w6EgY29uZmlndXJhZG8uXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQyMQorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgaXMgbm90IGNvbmZpZ3VyZWQgeWV0LlxuIgorbXNnc3RyICIgTyBwYWNvdGUgJXMgYWluZGEgbsOjbyBlc3TDoSBjb25maWd1cmFkby5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyB3aGljaCBwcm92aWRlcyAlcyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIgIE8gcGFjb3RlICVzIHF1ZSBkaXNwb25pYmlsaXphICVzIG7Do28gZXN0w6EgaW5zdGFsYWRvLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIGlzIG5vdCBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgTyBwYWNvdGUgJXMgbsOjbyBlc3TDoSBpbnN0YWxhZG8uXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQ3MgorIywgYy1mb3JtYXQKK21zZ2lkICIgJXMgKCVzKSBicmVha3MgJXMgYW5kIGlzICVzLlxuIgorbXNnc3RyICIgJXMgKCVzKSBlc3RyYWdhICVzIGUgw6kgJXMuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQ3OAorIywgYy1mb3JtYXQKK21zZ2lkICIgICVzICglcykgcHJvdmlkZXMgJXMuXG4iCittc2dzdHIgIiAgJXMgKCVzKSBkaXNwb25pYmlsaXphICVzLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBWZXJzaW9uIG9mICVzIHRvIGJlIGNvbmZpZ3VyZWQgaXMgJXMuXG4iCittc2dzdHIgIiAgQSB2ZXJzw6NvIGRlICVzIGEgc2VyIGNvbmZpZ3VyYWRhIMOpICVzLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo1OTYKK21zZ2lkICIgZGVwZW5kcyBvbiAiCittc2dzdHIgIiBkZXBlbmRlIGRlICIKKworIzogc3JjL3BhY2thZ2VzLmM6NjAyCittc2dpZCAiOyBob3dldmVyOlxuIgorbXNnc3RyICI7IG5vIGVudGFudG86XG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiLi4uLyVzIgorbXNnc3RyICIuLi4vJXMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgZW5zdXJpbmcgYCUuMjUwcycgZG9lc24ndCBleGlzdCIKK21zZ3N0ciAiZXJybyBhbyBhc3NlZ3VyYXIgcXVlIGAlLjI1MHMnIG7Do28gZXhpc3RlIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjk5Cittc2dpZCAic3BsaXQgcGFja2FnZSByZWFzc2VtYmx5IgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTA4Cittc2dpZCAicmVhc3NlbWJsZWQgcGFja2FnZSBmaWxlIgorbXNnc3RyICJmaWNoZWlybyBkZSBwYWNvdGUgcmUtbW9udGFkbyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiQXV0aGVudGljYXRpbmcgJXMgLi4uXG4iCittc2dzdHIgIkEgYXV0ZW50aWNhciAlcyAuLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxMzkKK21zZ2lkICJwYWNrYWdlIHNpZ25hdHVyZSB2ZXJpZmljYXRpb24iCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxNDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiVmVyaWZpY2F0aW9uIG9uIHBhY2thZ2UgJXMgZmFpbGVkISIKK21zZ3N0ciAiQSB2ZXJpZmljYcOnw6NvIGRvIHBhY290ZSAlcyBmYWxob3UhIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE0OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVmVyaWZpY2F0aW9uIG9uIHBhY2thZ2UgJXMgZmFpbGVkLFxuIgorImJ1dCBpbnN0YWxsaW5nIGFueXdheSBhcyB5b3UgcmVxdWVzdGVkLlxuIgorbXNnc3RyICIiCisiQSBWZXJpZmljYcOnw6NvIGRvIHBhY290ZSAlcyBmYWxob3UsXG4iCisibWFzIGEgaW5zdGFsYXIgw6AgbWVzbWEgY29uZm9ybWUgdm9jw6ogcGVkaXUuXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTUyCisjLCBjLWZvcm1hdAorbXNnaWQgInBhc3NlZFxuIgorbXNnc3RyICJwYXNzb3VcbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxNjUgZHBrZy1kZWIvaW5mby5jOjgxCittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSB0ZW1wb3JhcnkgZGlyZWN0b3J5IgorbXNnc3RyICJuw6NvIGZvaSBwb3Nzw612ZWwgY3JpYXIgZGlyZWN0w7NyaW8gdGVtcG9yw6FyaW8iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MjA1CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgJXMgaGFzIHRvbyBtYW55IENvbmZsaWN0cy9SZXBsYWNlcyBwYWlycyIKK21zZ3N0ciAibyBwYWNvdGUgJXMgdGVtIGRlbWFzaWFkb3MgcGFyZXMgZGUgQ29uZmxpY3RzL1JlcGxhY2VzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjI0MworIywgYy1mb3JtYXQKK21zZ2lkICJvbGQgdmVyc2lvbiBvZiBwYWNrYWdlIGhhcyBvdmVybHktbG9uZyBpbmZvIGZpbGUgbmFtZSBzdGFydGluZyBgJS4yNTBzJyIKK21zZ3N0ciAiIgorImEgYW50aWdhIHZlcnPDo28gZG8gcGFjb3RlIHRlbSB1bSBub21lIGRlIGZpY2hlaXJvIGRlbWFzaWFkbyBjb21wcmlkbyAiCisiY29tZcOnYW5kbyBwb3IgYCUuMjUwcyciCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MjgxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgb2Jzb2xldGUgaW5mbyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuw6NvIGZvaSBwb3Nzw612ZWwgcmVtb3ZlciBvIGZpY2hlaXJvIGRlIGluZm8gb2Jzb2xldG8gYCUuMjUwcyciCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6Mjg2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIChzdXBwb3NlZCkgbmV3IGluZm8gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibsOjbyBmb2kgcG9zc8OtdmVsIGluc3RhbGFyIChvIHN1cG9zdG8pIG5vdm8gZmljaGVpcm8gaW5mbyBgJS4yNTBzJyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyOTYKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiB0ZW1wIGNvbnRyb2wgZGlyZWN0b3J5IgorbXNnc3RyICJuw6NvIGZvaSBwb3Nzw612ZWwgYWJyaXIgbyBkaXJlY3TDs3JpbyB0ZW1wb3LDoXJpbyBkZSBjb250cm9sZSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMDcKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBjb250YWlucyBvdmVybHktbG9uZyBjb250cm9sIGluZm8gZmlsZSBuYW1lIChzdGFydGluZyBgJS41MHMnKSIKK21zZ3N0ciAiIgorIm8gcGFjb3RlIGNvbnTDqW0gdW0gZmljaGVpcm8gZGUgaW5mbyBkZSBjb250cm9sIGNvbSBvIG5vbWUgZGUgZmljaGVpcm8gIgorImRlbWFzaWFkbyBjb21wcmlkbyAoY29tZcOnYW5kbyBwb3IgYCUuNTBzJykiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzE0CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgY29udHJvbCBpbmZvIGNvbnRhaW5lZCBkaXJlY3RvcnkgYCUuMjUwcyciCittc2dzdHIgImEgaW5mb3JtYcOnw6NvIGRlIGNvbnRyb2xlIGRvIHBhY290ZSBjb250w6ltIG8gZGlyZWN0w7NyaW8gYCUuMjUwcyciCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzE2CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgY29udHJvbCBpbmZvIHJtZGlyIG9mIGAlLjI1MHMnIGRpZG4ndCBzYXkgbm90IGEgZGlyIgorbXNnc3RyICIiCisicm1kaXIgZGUgaW5mbyBkZSBjb250cm9sZSBkbyBwYWNvdGUgYCUuMjUwcycgbsOjbyBkaXNzZSBxdWUgbsOjbyBlcmEgdW0gZGlyIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMyNgorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlICVzIGNvbnRhaW5lZCBsaXN0IGFzIGluZm8gZmlsZSIKK21zZ3N0ciAibyBwYWNvdGUgJXMgY29udGluaGEgbGlzdGEgY29tbyBmaWNoZWlybyBpbmZvIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMzMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgaW5mbyBmaWxlIGAlLjI1MHMnIGFzIGAlLjI1MHMnIgorbXNnc3RyICJuw6NvIGZvaSBwb3Nzw612ZWwgaW5zdGFsYXIgbyBub3ZvIGZpY2hlaXJvIGluZm8gYCUuMjUwcycgY29tbyBgJS4yNTBzJyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozNDkgc3JjL3JlbW92ZS5jOjE5OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGVsZXRlIGNvbnRyb2wgaW5mbyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisibsOjbyBmb2kgcG9zc8OtdmVsIHJlbW92ZXIgbyBmaWNoZWlybyBkZSBpbmZvcm1hw6fDtWVzIGRlIGNvbnRyb2xlIGAlLjI1MHMnIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjQxMQorbXNnaWQgImNhbm5vdCBhY2Nlc3MgYXJjaGl2ZSIKK21zZ3N0ciAibsOjbyBwb2RlIGFjZWRlciBhbyBhcnF1aXZvIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjQzMworIywgZnV6enkKKyN8IG1zZ2lkICJjb250cm9sIGluZm9ybWF0aW9uIGxlbmd0aCIKK21zZ2lkICJwYWNrYWdlIGNvbnRyb2wgaW5mb3JtYXRpb24gZXh0cmFjdGlvbiIKK21zZ3N0ciAidGFtYW5obyBkYSBpbmZvcm1hw6fDo28gZGUgY29udHJvbG8iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDYwCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlY29yZGVkIGluZm8gYWJvdXQgJXMgZnJvbSAlcy5cbiIKK21zZ3N0ciAiRm9pIGdyYXZhZGEgaW5mb3JtYcOnw6NvIHNvYnJlICVzIGRlc2RlICVzLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjQ2OAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGFyY2hpdGVjdHVyZSAoJXMpIGRvZXMgbm90IG1hdGNoIHN5c3RlbSAoJXMpIgorbXNnc3RyICJhIGFycXVpdGVjdHVyYSBkbyBwYWNvdGUgKCVzKSBuw6NvIGNvaW5jaWRlIGNvbSBhIGRvIHNpc3RlbWEgKCVzKSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1MjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IHJlZ2FyZGluZyAlcyBjb250YWluaW5nICVzLCBwcmUtZGVwZW5kZW5jeSBwcm9ibGVtOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogYWNlcmNhIGRlICVzIGNvbnRlbmRvICVzLCBwcm9ibGVtYSBkZSBwcmUtZGVwZW5kw6puY2lhOlxuIgorIiVzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjUyNgorIywgYy1mb3JtYXQKK21zZ2lkICJwcmUtZGVwZW5kZW5jeSBwcm9ibGVtIC0gbm90IGluc3RhbGxpbmcgJS4yNTBzIgorbXNnc3RyICJwcm9ibGVtYSBkZSBwcsOpLWRlcGVuZMOqbmNpYSAtIGEgbsOjbyBpbnN0YWxhciAlLjI1MHMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTI3Cittc2dpZCAiaWdub3JpbmcgcHJlLWRlcGVuZGVuY3kgcHJvYmxlbSEiCittc2dzdHIgImEgaWdub3JhciBwcm9ibGVtYSBkZSBwcsOpLWRlcGVuZMOqbmNpYSEiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTQzCisjLCBjLWZvcm1hdAorbXNnaWQgIlByZXBhcmluZyB0byByZXBsYWNlICVzICVzICh1c2luZyAlcykgLi4uXG4iCittc2dzdHIgIkEgcHJlcGFyYXIgcGFyYSBzdWJzdGl0dWlyICVzICVzIChhIHVzYXIgJXMpIC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjU0OQorIywgYy1mb3JtYXQKK21zZ2lkICJVbnBhY2tpbmcgJXMgKGZyb20gJXMpIC4uLlxuIgorbXNnc3RyICJBIGRlc2NvbXBhY3RhciAlcyAoZGVzZGUgJXMpIC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjU4MAorIywgYy1mb3JtYXQKK21zZ2lkICJuYW1lIG9mIGNvbmZmaWxlIChzdGFydGluZyBgJS4yNTBzJykgaXMgdG9vIGxvbmcgKD4lZCBjaGFyYWN0ZXJzKSIKK21zZ3N0ciAiIgorIm5vbWUgZG8gZmljaGVpcm8gZGUgY29uZmlndXJhw6fDo28gKGNvbWXDp2FuZG8gYCUuMjUwcycpIMOpIGRlbWFzaWFkbyBjb21wcmlkbyAoPiIKKyIlZCBjYXJhY3RlcmVzKSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2MzMgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVhZCBlcnJvciBpbiAlLjI1MHMiCittc2dzdHIgImVycm8gZGUgbGVpdHVyYSBlbSAlLjI1MHMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjM1CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgJS4yNTBzIgorbXNnc3RyICJlcnJvIGEgZmVjaGFyICUuMjUwcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2MzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgdHJ5aW5nIHRvIG9wZW4gJS4yNTBzIgorbXNnc3RyICJlcnJvIGFvIHRlbnRhciBhYnJpciAlLjI1MHMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6Njc4CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlLWNvbmZpZ3VyaW5nICVzLCB0byBhbGxvdyByZW1vdmFsIG9mICVzIC4uLlxuIgorbXNnc3RyICJBIGRlc2NvbmZpZ3VyYXIgJXMsIHBhcmEgcGVybWl0aXIgYSByZW1vw6fDo28gZGUgJXMgLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjgxCisjLCBjLWZvcm1hdAorbXNnaWQgIkRlLWNvbmZpZ3VyaW5nICVzIC4uLlxuIgorbXNnc3RyICJBIGRlc2NvbmZpZ3VyYXIgJXMgLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NzU1CisjLCBjLWZvcm1hdAorbXNnaWQgIlVucGFja2luZyByZXBsYWNlbWVudCAlLjI1MHMgLi4uXG4iCittc2dzdHIgIkEgZGVzY29tcGFjdGFyIHN1YnN0aXR1dG8gJS4yNTBzIC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjg0MAorIywgZnV6enkKKyN8IG1zZ2lkICJkcGtnLWRlYiBmaWVsZCBleHRyYWN0aW9uIgorbXNnaWQgInBhY2thZ2UgZmlsZXN5c3RlbSBhcmNoaXZlIGV4dHJhY3Rpb24iCittc2dzdHIgImV4dHJhY8Onw6NvIGRvIGNhbXBvIGRwa2ctZGViICIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NTQKK21zZ2lkICJlcnJvciByZWFkaW5nIGRwa2ctZGViIHRhciBvdXRwdXQiCittc2dzdHIgImVycm8gYW8gbGVyIGEgc2HDrWRhIGRvIHRhciBkZSBkcGtnLWRlYiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NTYKK21zZ2lkICJjb3JydXB0ZWQgZmlsZXN5c3RlbSB0YXJmaWxlIC0gY29ycnVwdGVkIHBhY2thZ2UgYXJjaGl2ZSIKK21zZ3N0ciAiIgorInNpc3RlbWEgZGUgZmljaGVpcm9zIGRvIGZpY2hlaXJvIHRhciBjb3Jyb21waWRvIC0gYXJxdWl2byBkZSBwYWNvdGUgIgorImNvcnJvbXBpZG8iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6ODU5Cittc2dpZCAiZHBrZy1kZWI6IHphcCBwb3NzaWJsZSB0cmFpbGluZyB6ZXJvcyIKK21zZ3N0ciAiZHBrZy1kZWI6IHphcCBwb3Nzw612ZWwgcmFzdG8gZGUgemVyb3MiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTE5CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBzdGF0IG9sZCBmaWxlICclLjI1MHMnIHNvIG5vdCBkZWxldGluZyBpdDogJXMiCittc2dzdHIgIiIKKyJuw6NvIGZvaSBwb3Nzw612ZWwgZmF6ZXIgc3RhdCBhbyBmaWNoZWlybyBhbnRpZ28gJyUuMjUwcycgcG9yIGlzc28gbsOjbyBzZXLDoSAiCisiYXBhZ2FkbzogJXMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTI1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkZWxldGUgb2xkIGRpcmVjdG9yeSAnJS4yNTBzJzogJXMiCittc2dzdHIgIm7Do28gZm9pIHBvc3PDrXZlbCBhcGFnYXIgbyBkaXJlY3TDs3JpbyBhbnRpZ28gJyUuMjUwcyc6ICVzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjkyOAorIywgYy1mb3JtYXQKK21zZ2lkICJvbGQgY29uZmZpbGUgJyUuMjUwcycgd2FzIGFuIGVtcHR5IGRpcmVjdG9yeSAoYW5kIGhhcyBub3cgYmVlbiBkZWxldGVkKSIKK21zZ3N0ciAiIgorIm8gYW50aWdvIGZpY2hlaXJvIGRlIGNvbmZpZ3VyYcOnw6NvICclLjI1MHMnIGVyYSB1bSBkaXJlY3TDs3JpbyB2YXppbyAoZSBhZ29yYSAiCisiZm9pIGFwYWdhZG8pIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjk3NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBvdGhlciBuZXcgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiTsOjbyBmb2kgcG9zc8OtdmVsIGZhemVyIHN0YXQgYSBvdXRybyBub3ZvIGZpY2hlaXJvIGAlLjI1MHMnIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjk4NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisib2xkIGZpbGUgJyUuMjUwcycgaXMgdGhlIHNhbWUgYXMgc2V2ZXJhbCBuZXcgZmlsZXMhIChib3RoICclLjI1MHMnIGFuZCAiCisiJyUuMjUwcycpIgorbXNnc3RyICIiCisibyBmaWNoZWlybyBhbnRpZ28gJyUuMjUwcycgw6kgbyBtZXNtbyBxdWUgdsOhcmlvcyBub3ZvcyBmaWNoZWlyb3MhIChhbWJvcyAiCisiJyUuMjUwcycgZSAnJS4yNTBzJykiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTAyNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2VjdXJlbHkgcmVtb3ZlIG9sZCBmaWxlICclLjI1MHMnOiAlcyIKK21zZ3N0ciAibsOjbyBmb2kgcG9zc8OtdmVsIHJlbW92ZXIgbyBhbnRpZ28gZmljaGVpcm8gJyUuMjUwcycgZW0gc2VndXJhbsOnYTogJXMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTIwNgorIywgYy1mb3JtYXQKK21zZ2lkICIoTm90aW5nIGRpc2FwcGVhcmFuY2Ugb2YgJXMsIHdoaWNoIGhhcyBiZWVuIGNvbXBsZXRlbHkgcmVwbGFjZWQuKVxuIgorbXNnc3RyICIoQSBub3RhciBvIGRlc2FwYXJlY2ltZW50byBkZSAlcywgcXVlIGZvaSB0b3RhbG1lbnRlIHN1YnN0aXR1w61kby4pXG4iCisKKyMuIFRSQU5TTEFUT1JTOiBUaGlzIGlzIHRoZSBoZWFkZXIgdGhhdCBhcHBlYXJzIG9uICdkcGtnLXF1ZXJ5IC1sJy4gVGhlCisjLiAqIHN0cmluZyBzaG91bGQgcmVtYWluIHVuZGVyIDgwIGNoYXJhY3RlcnMuIFRoZSB1cHBlcmNhc2UgbGV0dGVycyBpbgorIy4gKiB0aGUgc3RhdGUgdmFsdWVzIGRlbm90ZSB0aGUgYWJicmV2aWF0ZWQgbGV0dGVyIHRoYXQgd2lsbCBhcHBlYXIgb24KKyMuICogdGhlIGZpcnN0IHRocmVlIGNvbHVtbnMsIHdoaWNoIHNob3VsZCBpZGVhbGx5IG1hdGNoIHRoZSBFbmdsaXNoIG9uZQorIy4gKiAoZS5nLiBSZW1vdmUg4oaSIHN1cFJpbWVpeCksIHNlZSBkcGtnLXF1ZXJ5KDEpIGZvciBmdXJ0aGVyIGRldGFpbHMuIFRoZQorIy4gKiB0cmFuc2xhdGVkIG1lc3NhZ2UgY2FuIHVzZSBhZGRpdGlvbmFsIGxpbmVzIGlmIG5lZWRlZC4KKyM6IHNyYy9xdWVyeWNtZC5jOjE0OQorbXNnaWQgIiIKKyJEZXNpcmVkPVVua25vd24vSW5zdGFsbC9SZW1vdmUvUHVyZ2UvSG9sZFxuIgorInwgU3RhdHVzPU5vdC9JbnN0L0NvbmYtZmlsZXMvVW5wYWNrZWQvaGFsRi1jb25mL0hhbGYtaW5zdC90cmlnLWFXYWl0L1RyaWctIgorInBlbmRcbiIKKyJ8LyBFcnI/PShub25lKS9SZWluc3QtcmVxdWlyZWQgKFN0YXR1cyxFcnI6IHVwcGVyY2FzZT1iYWQpXG4iCittc2dzdHIgIiIKKyJEZXNpcmVkPVVua25vd24vSW5zdGFsbC9SZW1vdmUvUHVyZ2UvSG9sZFxuIgorInwgU3RhdHVzPU5vdC9JbnN0L0NvbmYtZmlsZXMvVW5wYWNrZWQvaGFsRi1jb25mL0hhbGYtaW5zdC90cmlnLWFXYWl0L1RyaWctIgorInBlbmRcbiIKKyJ8LyBFcnI/PShub25lKS9SZWluc3QtcmVxdWlyZWQgKFN0YXR1cyxFcnI6IHVwcGVyY2FzZT1iYWQpXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjE1MworbXNnaWQgIk5hbWUiCittc2dzdHIgIk5vbWUiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjE1MworbXNnaWQgIlZlcnNpb24iCittc2dzdHIgIlZlcnPDo28iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjE1NAorbXNnaWQgIkRlc2NyaXB0aW9uIgorbXNnc3RyICJEZXNjcmnDp8OjbyIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MjQ2IHNyYy9xdWVyeWNtZC5jOjUxMSBzcmMvc2VsZWN0LmM6NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiTm8gcGFja2FnZXMgZm91bmQgbWF0Y2hpbmcgJXMuXG4iCittc2dzdHIgIk7Do28gZm9yYW0gZW5jb250cmFkb3MgcGFjb3RlcyBjb2luY2lkaW5kbyBjb20gJXMuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI3MworIywgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnNpb24gYnkgJXMgZnJvbTogJXNcbiIKK21zZ3N0ciAiZGVzdmlhZG8gcG9yICVzIHBhcmE6ICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI3NQorIywgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnNpb24gYnkgJXMgdG86ICVzXG4iCittc2dzdHIgImRlc3ZpYWRvIHBvciAlcyBwYXJhOiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9jYWwgZGl2ZXJzaW9uIGZyb206ICVzXG4iCittc2dzdHIgImRlc3ZpbyBsb2NhbCBkZTogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6Mjc5CisjLCBjLWZvcm1hdAorbXNnaWQgImxvY2FsIGRpdmVyc2lvbiB0bzogJXNcbiIKK21zZ3N0ciAiZGVzdmlvIGxvY2FsIHBhcmE6ICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjMwOQorbXNnaWQgIi0tc2VhcmNoIG5lZWRzIGF0IGxlYXN0IG9uZSBmaWxlIG5hbWUgcGF0dGVybiBhcmd1bWVudCIKK21zZ3N0ciAiIgorIi0tc2VhcmNoIG5lY2Vzc2l0YSBkZSBwZWxvIG1lbm9zIHVtIGFyZ3VtZW50byBkZSBwYXR0ZXJuIGRlIG5vbWUgZGUgZmljaGVpcm8iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjM1MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiTm8gcGFja2FnZXMgZm91bmQgbWF0Y2hpbmcgJXMuXG4iCittc2dpZCAiJXM6IG5vIHBhdGggZm91bmQgbWF0Y2hpbmcgcGF0dGVybiAlcy5cbiIKK21zZ3N0ciAiTsOjbyBmb3JhbSBlbmNvbnRyYWRvcyBwYWNvdGVzIGNvaW5jaWRpbmRvIGNvbSAlcy5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MzkzCisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgYCVzJyBpcyBub3QgaW5zdGFsbGVkIGFuZCBubyBpbmZvIGlzIGF2YWlsYWJsZS5cbiIKK21zZ3N0ciAiTyBwYWNvdGUgYCVzJyBuw6NvIGVzdMOhIGluc3RhbGFkbyBlIG7Do28gZXN0w6EgZGlzcG9uw612ZWwgaW5mb3JtYcOnw6NvLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSBgJXMnIGlzIG5vdCBhdmFpbGFibGUuXG4iCittc2dzdHIgIk8gcGFjb3RlIGAlcycgbsOjbyBlc3TDoSBkaXNwb27DrXZlbC5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDEwIHNyYy9xdWVyeWNtZC5jOjU4NQorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlIGAlcycgaXMgbm90IGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiTyBwYWNvdGUgYCVzJyBuw6NvIGVzdMOhIGluc3RhbGFkby5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDE4CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgYCVzJyBkb2VzIG5vdCBjb250YWluIGFueSBmaWxlcyAoISlcbiIKK21zZ3N0ciAiTyBwYWNvdGUgYCVzJyBuw6NvIGNvbnTDqW0gcXVhbHF1ZXIgZmljaGVpcm8gKCEpXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQyNQorIywgYy1mb3JtYXQKK21zZ2lkICJsb2NhbGx5IGRpdmVydGVkIHRvOiAlc1xuIgorbXNnc3RyICJsb2NhbG1lbnRlIGRlc3ZpYWRvIHBhcmE6ICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQyOAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGRpdmVydHMgb3RoZXJzIHRvOiAlc1xuIgorbXNnc3RyICJvIHBhY290ZSBkZXN2aWEgb3V0cm9zIHBhcmE6ICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQzMQorIywgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnRlZCBieSAlcyB0bzogJXNcbiIKK21zZ3N0ciAiZGVzdmlhZG8gcG9yICVzIHBhcmE6ICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQ1MgorbXNnaWQgIiIKKyJVc2UgZHBrZyAtLWluZm8gKD0gZHBrZy1kZWIgLS1pbmZvKSB0byBleGFtaW5lIGFyY2hpdmUgZmlsZXMsXG4iCisiYW5kIGRwa2cgLS1jb250ZW50cyAoPSBkcGtnLWRlYiAtLWNvbnRlbnRzKSB0byBsaXN0IHRoZWlyIGNvbnRlbnRzLlxuIgorbXNnc3RyICIiCisiVXRpbGl6ZSBkcGtnIC0taW5mbyAoPSBkcGtnLWRlYiAtLWluZm8pIHBhcmEgZXhhbWluYXIgZmljaGVpcm9zIGRlIGFycXVpdm8sXG4iCisiZSBkcGtnIC0tY29udGVudHMgKD0gZHBrZy1kZWIgLS1jb250ZW50cykgcGFyYSBsaXN0YXIgbyBzZXUgY29udGXDumRvLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo1NzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyB0YWtlcyBhdCBtb3N0IHR3byBhcmd1bWVudHMiCittc2dzdHIgIi0tJXMgbGV2YSBubyBtw6F4aW1vIGRvaXMgYXJndW1lbnRvcyIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NTc4CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbnRyb2wgZmlsZSBjb250YWlucyAlYyIKK21zZ3N0ciAiZmljaGVpcm8gY29udHJvbCBjb250w6ltICVjIgorCisjOiBzcmMvcXVlcnljbWQuYzo2MDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuICVzIHBhY2thZ2UgbWFuYWdlbWVudCBwcm9ncmFtIHF1ZXJ5IHRvb2wgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiIgorIkRlYmlhbiAnJXMnIGZlcnJhbWVudGEgZGUgY29uc3VsdGEgZGUgcHJvZ3JhbWEgZGUgZ2VzdMOjbyBkZSBwYWNvdGVzIHZlcnPDo28gIgorIiVzLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo2MTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJDb21tYW5kczpcbiIKKyN8ICIgIC1zfC0tc3RhdHVzIDxwYWNrYWdlPiAuLi4gICAgICAgIERpc3BsYXkgcGFja2FnZSBzdGF0dXMgZGV0YWlscy5cbiIKKyN8ICIgIC1wfC0tcHJpbnQtYXZhaWwgPHBhY2thZ2U+IC4uLiAgIERpc3BsYXkgYXZhaWxhYmxlIHZlcnNpb24gZGV0YWlscy5cbiIKKyN8ICIgIC1MfC0tbGlzdGZpbGVzIDxwYWNrYWdlPiAuLi4gICAgIExpc3QgZmlsZXMgYG93bmVkJyBieSBwYWNrYWdlKHMpLlxuIgorI3wgIiAgLWx8LS1saXN0IFs8cGF0dGVybj4gLi4uXSAgICAgICAgTGlzdCBwYWNrYWdlcyBjb25jaXNlbHkuXG4iCisjfCAiICAtV3wtLXNob3cgPHBhdHRlcm4+IC4uLiAgICAgICAgICBTaG93IGluZm9ybWF0aW9uIG9uIHBhY2thZ2UocykuXG4iCisjfCAiICAtU3wtLXNlYXJjaCA8cGF0dGVybj4gLi4uICAgICAgICBGaW5kIHBhY2thZ2Uocykgb3duaW5nIGZpbGUocykuXG4iCisjfCAiICAtY3wtLWNvbnRyb2wtcGF0aCA8cGFja2FnZT4gWzxmaWxlPl1cbiIKKyN8ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFByaW50IHBhdGggZm9yIHBhY2thZ2UgY29udHJvbCBmaWxlLlxuIgorI3wgIlxuIgorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1zfC0tc3RhdHVzIDxwYWNrYWdlPiAuLi4gICAgICAgIERpc3BsYXkgcGFja2FnZSBzdGF0dXMgZGV0YWlscy5cbiIKKyIgIC1wfC0tcHJpbnQtYXZhaWwgPHBhY2thZ2U+IC4uLiAgIERpc3BsYXkgYXZhaWxhYmxlIHZlcnNpb24gZGV0YWlscy5cbiIKKyIgIC1MfC0tbGlzdGZpbGVzIDxwYWNrYWdlPiAuLi4gICAgIExpc3QgZmlsZXMgYG93bmVkJyBieSBwYWNrYWdlKHMpLlxuIgorIiAgLWx8LS1saXN0IFs8cGF0dGVybj4gLi4uXSAgICAgICAgTGlzdCBwYWNrYWdlcyBjb25jaXNlbHkuXG4iCisiICAtV3wtLXNob3cgWzxwYXR0ZXJuPiAuLi5dICAgICAgICBTaG93IGluZm9ybWF0aW9uIG9uIHBhY2thZ2UocykuXG4iCisiICAtU3wtLXNlYXJjaCA8cGF0dGVybj4gLi4uICAgICAgICBGaW5kIHBhY2thZ2Uocykgb3duaW5nIGZpbGUocykuXG4iCisiICAtY3wtLWNvbnRyb2wtcGF0aCA8cGFja2FnZT4gWzxmaWxlPl1cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFByaW50IHBhdGggZm9yIHBhY2thZ2UgY29udHJvbCBmaWxlLlxuIgorIlxuIgorbXNnc3RyICIiCisiQ29tYW5kb3M6XG4iCisiICAtc3wtLXN0YXR1cyA8cGFjb3RlPiAuLi4gICAgICAgICBNb3N0cmFyIGRldGFsaGVzIGRvIGVzdGFkbyBkbyBwYWNvdGUuXG4iCisiICAtcHwtLXByaW50LWF2YWlsIDxwYWNvdGU+IC4uLiAgICBNb3N0cmFyIGRldGFsaGVzIGRhIHZlcnPDo28gZGlzcG9uw612ZWwuXG4iCisiICAtTHwtLWxpc3RmaWxlcyA8cGFjb3RlPiAuLi4gICAgICBMaXN0YXIgb3MgZmljaGVpcm9zIHF1ZSBwZXJ0ZW5jZW0gYW8ocykgIgorInBhY290ZXMocykuXG4iCisiICAtbHwtLWxpc3QgWzxwYWRyw6NvPiAuLi5dICAgICAgICAgTGlzdGFyIHBhY290ZXMgZGUgZm9ybWEgY29uY2lzYS5cbiIKKyIgIC1XfC0tc2hvdyA8cGFkcsOjbz4gLi4uICAgICAgICAgICBNb3N0cmFyIGluZm9ybWHDp8OjbyBzb2JyZSBvKHMpIHBhY290ZShzKS5cbiIKKyIgIC1TfC0tc2VhcmNoIDxwYWRyw6NvPiAuLi4gICAgICAgICBNb3N0cmFyIHBhY290ZShzKSBkb25vKHMpIGRvKHMpIGZpY2hlaXJvIgorIihzKS5cbiIKKyIgIC1jfC0tY29udHJvbC1wYXRoIDxwYWNvdGU+IFs8ZmljaGVpcm8+XVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRXNjcmV2ZXIgY2FtaW5obyBkbyBmaWNoZWlybyBjb250cm9sIGRvICIKKyJwYWNvdGUuXG4iCisiXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjYzNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorIiAgLWZ8LS1zaG93Zm9ybWF0PTxmb3JtYXQ+ICAgICAgICAgVXNlIGFsdGVybmF0aXZlIGZvcm1hdCBmb3IgLS1zaG93LlxuIgorIlxuIgorbXNnc3RyICIiCisiT3DDp8O1ZXM6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3TDs3Jpbz5cdCAgICBVc2FyIG8gPGRpcmVjdMOzcmlvPiBlbSB2ZXogZGUgJXMuXG4iCisiICAtZnwtLXNob3dmb3JtYXQ9PGZvcm1hdG8+ICAgICAgICBVc2FyIG8gZm9ybWF0byBhbHRlcm5hdGl2byBwYXJhIC0tc2hvdy5cbiIKKyJcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjQyIGRwa2ctZGViL21haW4uYzoxMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkZvcm1hdCBzeW50YXg6XG4iCisiICBBIGZvcm1hdCBpcyBhIHN0cmluZyB0aGF0IHdpbGwgYmUgb3V0cHV0IGZvciBlYWNoIHBhY2thZ2UuIFRoZSBmb3JtYXRcbiIKKyIgIGNhbiBpbmNsdWRlIHRoZSBzdGFuZGFyZCBlc2NhcGUgc2VxdWVuY2VzIFxcbiAobmV3bGluZSksIFxcciAoY2FycmlhZ2VcbiIKKyIgIHJldHVybikgb3IgXFxcXCAocGxhaW4gYmFja3NsYXNoKS4gUGFja2FnZSBpbmZvcm1hdGlvbiBjYW4gYmUgaW5jbHVkZWRcbiIKKyIgIGJ5IGluc2VydGluZyB2YXJpYWJsZSByZWZlcmVuY2VzIHRvIHBhY2thZ2UgZmllbGRzIHVzaW5nIHRoZSAke3Zhcls7IgorIndpZHRoXX1cbiIKKyIgIHN5bnRheC4gRmllbGRzIHdpbGwgYmUgcmlnaHQtYWxpZ25lZCB1bmxlc3MgdGhlIHdpZHRoIGlzIG5lZ2F0aXZlIGluICIKKyJ3aGljaFxuIgorIiAgY2FzZSBsZWZ0IGFsaWdubWVudCB3aWxsIGJlIHVzZWQuXG4iCittc2dzdHIgIiIKKyJTaW50YXhlIGRlIGZvcm1hdG86XG4iCisiICBVbSBmb3JtYXRvIMOpIHVtYSBzdHJpbmcgcXVlIHZhaSBzZXIgYSBzYcOtZGEgcGFyYSBjYWRhIHBhY290ZS4gTyBmb3JtYXRvXG4iCisiICBwb2RlIGluY2x1aXIgYXMgc2VxdcOqbmNpYXMgZGUgZXNjYXBlIHN0YW5kYXJkIFxcbiAobmV3bGluZSksIFxcclxuIgorIiAgKGNhcnJpYWdlIHJldHVybikgb3UgXFxcXCAocGxhaW4gYmFja3NsYXNoKS4gQSBpbmZvcm1hw6fDo28gZGUgcGFjb3RlIHBvZGVcbiIKKyIgIHNlciBpbmNsdcOtZGEgaW5zZXJpbmRvIHJlZmVyw6puY2lhcyBkZSB2YXJpw6F2ZWlzIGFvcyBjYW1wb3MgZGUgcGFjb3Rlc1xuIgorIiAgdXRpbGl6YW5kbyBhIHNpbnRheGUgJHt2YXJbO3dpZHRoXX0uIE9zIGNhbXBvcyBzZXLDo28gYWxpbmhhZG9zIMOgIGRpcmVpdGFcbiIKKyIgIGEgbsOjbyBzZXIgcXVlIGEgbGFyZ3VyYSBzZWphIG5lZ2F0aXZhLCBuZXN0ZSBjYXNvIG8gYWxpbmhhbWVudG8gw6AgIgorImVzcXVlcmRhXG4iCisiICBzZXLDoSB1dGlsaXphZG8uXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjY1NgorbXNnaWQgIlVzZSAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgcXVlcnlpbmcgcGFja2FnZXMuIgorbXNnc3RyICJVc2UgLS1oZWxwIHBhcmEgYWp1ZGEgc29icmUgY29uc3VsdGFyIHBhY290ZXMuIgorCisjOiBzcmMvcmVtb3ZlLmM6ODgKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgcmVxdWVzdCB0byByZW1vdmUgJS4yNTBzIHdoaWNoIGlzbid0IGluc3RhbGxlZC4iCittc2dzdHIgImEgaWdub3JhciBwZWRpZG8gcGFyYSByZW1vdmVyICUuMjUwcyBvIHF1YWwgbsOjbyBlc3TDoSBpbnN0YWxhZG8uIgorCisjOiBzcmMvcmVtb3ZlLmM6OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImlnbm9yaW5nIHJlcXVlc3QgdG8gcmVtb3ZlICUuMjUwcywgb25seSB0aGUgY29uZmlnXG4iCisiIGZpbGVzIG9mIHdoaWNoIGFyZSBvbiB0aGUgc3lzdGVtLiBVc2UgLS1wdXJnZSB0byByZW1vdmUgdGhlbSB0b28uIgorbXNnc3RyICIiCisiYSBpZ25vcmFyIHBlZGlkbyBwYXJhIHJlbW92ZXIgJS4yNTBzLCBhcGVuYXMgb3MgZmljaGVpcm9zIGRlIFxuIgorImNvbmZpZ3VyYcOnw6NvIGRvIG1lc21vIGVzdMOjbyBubyBzaXN0ZW1hLiBVdGlsaXplIC0tcHVyZ2UgcGFyYSByZW1vdsOqLWxvcyAiCisidGFtYsOpbS4iCisKKyM6IHNyYy9yZW1vdmUuYzoxMDMKK21zZ2lkICJUaGlzIGlzIGFuIGVzc2VudGlhbCBwYWNrYWdlIC0gaXQgc2hvdWxkIG5vdCBiZSByZW1vdmVkLiIKK21zZ3N0ciAiRXN0ZSDDqSB1bSBwYWNvdGUgZXNzZW5jaWFsIC0gbsOjbyBkZXZlIHNlciByZW1vdmlkby4iCisKKyM6IHNyYy9yZW1vdmUuYzoxMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IGRlcGVuZGVuY3kgcHJvYmxlbXMgcHJldmVudCByZW1vdmFsIG9mICVzOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogcHJvYmxlbWFzIGNvbSBkZXBlbmTDqm5jaWFzIHByZXZpbmVtIGEgcmVtb8Onw6NvIGRlICVzOlxuIgorIiVzIgorCisjOiBzcmMvcmVtb3ZlLmM6MTMwCittc2dpZCAiZGVwZW5kZW5jeSBwcm9ibGVtcyAtIG5vdCByZW1vdmluZyIKK21zZ3N0ciAicHJvYmxlbWFzIGNvbSBkZXBlbmTDqm5jaWFzIC0gbsOjbyByZW1vdmlkbyIKKworIzogc3JjL3JlbW92ZS5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogJXM6IGRlcGVuZGVuY3kgcHJvYmxlbXMsIGJ1dCByZW1vdmluZyBhbnl3YXkgYXMgeW91IHJlcXVlc3RlZDpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiBwcm9ibGVtYXMgY29tIGRlcGVuZMOqbmNpYXMsIG1hcyBtZXNtbyBhc3NpbSBhIHJlbW92ZXIgY29uZm9ybWUgIgorInZvY8OqIHBlZGl1OlxuIgorIiVzIgorCisjOiBzcmMvcmVtb3ZlLmM6MTQyCittc2dpZCAiIgorIlBhY2thZ2UgaXMgaW4gYSB2ZXJ5IGJhZCBpbmNvbnNpc3RlbnQgc3RhdGUgLSB5b3Ugc2hvdWxkXG4iCisiIHJlaW5zdGFsbCBpdCBiZWZvcmUgYXR0ZW1wdGluZyBhIHJlbW92YWwuIgorbXNnc3RyICIiCisiTyBwYWNvdGUgZXN0w6EgbnVtIGVzdGFkbyBkZSBpbmNvbnNpc3TDqm5jaWEgbXVpdG8gbWF1IC0gZGV2ZVxuIgorIiByZWluc3RhbGEtbG8gYW50ZXMgZGUgdGVudGFyIHJlbW92w6otbG8uIgorCisjOiBzcmMvcmVtb3ZlLmM6MTQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIldvdWxkIHJlbW92ZSBvciBwdXJnZSAlcyAuLi5cbiIKK21zZ3N0ciAiSXJpYSByZW1vdmVyIG91IGZhemVyIHB1cmdlIGEgJXMuLi5cbiIKKworIzogc3JjL3JlbW92ZS5jOjE1NworIywgYy1mb3JtYXQKK21zZ2lkICJSZW1vdmluZyAlcyAuLi5cbiIKK21zZ3N0ciAiQSByZW1vdmVyICVzIC4uLlxuIgorCisjOiBzcmMvcmVtb3ZlLmM6Mjc1IHNyYy9yZW1vdmUuYzozNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIndoaWxlIHJlbW92aW5nICUuMjUwcywgdW5hYmxlIHRvIHJlbW92ZSBkaXJlY3RvcnkgJyUuMjUwcyc6ICVzIC0gZGlyZWN0b3J5ICIKKyJtYXkgYmUgYSBtb3VudCBwb2ludD8iCittc2dzdHIgIiIKKyJhbyByZW1vdmVyICUuMjUwcywgbsOjbyBmb2kgcG9zc8OtdmVsIHJlbW92ZXIgbyBkaXJlY3TDs3JpbyAnJS4yNTBzJzogJXMgLSBvICIKKyJkaXJlY3TDs3JpbyBwb2RlcsOhIHNlciB1bSBwb250byBkZSBtb250YWdlbT8iCisKKyM6IHNyYy9yZW1vdmUuYzoyODkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNlY3VyZWx5IHJlbW92ZSAnJS4yNTBzJyIKK21zZ3N0ciAibsOjbyBmb2kgcG9zc8OtdmVsIGNyaWFyLCBlbSBzZWd1cmFuw6dhLCAnJS4yNTBzJyIKKworIzogc3JjL3JlbW92ZS5jOjM2MQorIywgYy1mb3JtYXQKK21zZ2lkICJ3aGlsZSByZW1vdmluZyAlLjI1MHMsIGRpcmVjdG9yeSAnJS4yNTBzJyBub3QgZW1wdHkgc28gbm90IHJlbW92ZWQuIgorbXNnc3RyICIiCisiYW8gcmVtb3ZlciAlLjI1MHMsIG8gZGlyZWN0w7NyaW8gJyUuMjUwcycgbsOjbyBlc3RhdmEgdmF6aW8sIHBvciBpc3NvIG7Do28gZm9pICIKKyJyZW1vdmlkby4iCisKKyM6IHNyYy9yZW1vdmUuYzozODMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImNhbm5vdCByZW1vdmUgYCUuMjUwcyciCittc2dpZCAiY2Fubm90IHJlbW92ZSAnJS4yNTBzJyIKK21zZ3N0ciAibsOjbyBwb2RlIHJlbW92ZXIgYCUuMjUwcyciCisKKyM6IHNyYy9yZW1vdmUuYzo0MDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHVyZ2luZyBjb25maWd1cmF0aW9uIGZpbGVzIGZvciAlcyAuLi5cbiIKK21zZ3N0ciAiQSBwdXJnYXIgb3MgZmljaGVpcm9zIGRlIGNvbmZpZ3VyYcOnw6NvIHBhcmEgJXMgLi4uXG4iCisKKyM6IHNyYy9yZW1vdmUuYzo0NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlbW92ZSBvbGQgY29uZmlnIGZpbGUgYCUuMjUwcycgKD0gYCUuMjUwcycpIgorbXNnc3RyICJuw6NvIHBvZGUgcmVtb3ZlciBmaWNoZWlybyBkZSBjb25maWd1cmHDp8OjbyBhbnRpZ28gYCUuMjUwcycgKD0gYCUuMjUwcycpIgorCisjOiBzcmMvcmVtb3ZlLmM6NDc0CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZWFkIGNvbmZpZyBmaWxlIGRpciBgJS4yNTBzJyAoZnJvbSBgJS4yNTBzJykiCittc2dzdHIgIiIKKyJuw6NvIHBvZGUgbGVyIG8gZGlyZWN0w7NyaW8gZG8gZmljaGVpcm8gZGUgY29uZmlndXJhw6fDo28gYCUuMjUwcycgKGRlIGAlLjI1MHMnKSIKKworIzogc3JjL3JlbW92ZS5jOjUxMAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVtb3ZlIG9sZCBiYWNrdXAgY29uZmlnIGZpbGUgYCUuMjUwcycgKG9mIGAlLjI1MHMnKSIKK21zZ3N0ciAiIgorIm7Do28gcG9kZSByZW1vdmVyIG8gYmFja3VwIGRvIGZpY2hlaXJvIGRlIGNvbmZpZ3VyYcOnw6NvIGFudGlnbyBgJS4yNTBzJykgKGRlIGAiCisiJS4yNTBzJykiCisKKyM6IHNyYy9yZW1vdmUuYzo1NjgKK21zZ2lkICJjYW5ub3QgcmVtb3ZlIG9sZCBmaWxlcyBsaXN0IgorbXNnc3RyICJuw6NvIGZvaSBwb3Nzw612ZWwgcmVtb3ZlciBhIGFudGlnYSBsaXN0YSBkZSBmaWNoZWlyb3MiCisKKyM6IHNyYy9yZW1vdmUuYzo1NzQKK21zZ2lkICJjYW4ndCByZW1vdmUgb2xkIHBvc3RybSBzY3JpcHQiCittc2dzdHIgIm7Do28gcG9kZSByZW1vdmVyIG8gc2NyaXB0IHBvc3RybSBhbnRpZ28iCisKKyM6IHNyYy9zZWxlY3QuYzoxMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgaW4gcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQiCittc2dzdHIgImVvZiBpbmVzcGVyYWRvIG5vIG5vbWUgZG8gcGFjb3RlIG5hIGxpbmhhICVkIgorCisjOiBzcmMvc2VsZWN0LmM6MTE2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGxpbmUgaW4gcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQiCittc2dzdHIgImZpbSBkZSBsaW5oYSBpbmVzcGVyYWRvIG5vIG5vbWUgZGUgcGFjb3RlIG5hIGxpbmhhICVkIgorCisjOiBzcmMvc2VsZWN0LmM6MTIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW9mIGFmdGVyIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICJlb2YgaW5lc3BlcmFkbyBhcMOzcyBub21lIGRlIHBhY290ZSBuYSBsaW5oYSAlZCIKKworIzogc3JjL3NlbGVjdC5jOjEyMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBsaW5lIGFmdGVyIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICJmaW0gZGUgbGluaGEgaW5lc3BlcmFkbyBhcMOzcyBub21lIGRlIHBhY290ZSBuYSBsaW5oYSAlZCIKKworIzogc3JjL3NlbGVjdC5jOjEzNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGRhdGEgYWZ0ZXIgcGFja2FnZSBhbmQgc2VsZWN0aW9uIGF0IGxpbmUgJWQiCittc2dzdHIgImRhZG9zIGluZXNwZXJhZG9zIGFww7NzIHBhY290ZSBlIHNlbGVjw6fDo28gbmEgbGluaGEgJWQiCisKKyM6IHNyYy9zZWxlY3QuYzoxMzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWxsZWdhbCBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZDogJS4yNTBzIgorbXNnc3RyICJub21lIGRlIHBhY290ZSBpbGVnYWwgbmEgbGluaGEgJWQ6ICUuMjUwcyIKKworIzogc3JjL3NlbGVjdC5jOjE0MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIHdhbnRlZCBzdGF0dXMgYXQgbGluZSAlZDogJS4yNTBzIgorbXNnc3RyICJlc3RhZG8gcHJvY3VyYWRvIGRlc2NvbmhlY2lkbyBuYSBsaW5oYSAlZDogJS4yNTBzIgorCisjOiBzcmMvc2VsZWN0LmM6MTQ5Cittc2dpZCAicmVhZCBlcnJvciBvbiBzdGFuZGFyZCBpbnB1dCIKK21zZ3N0ciAiZXJybyBkZSBsZWl0dXJhIG5hIGVudHJhZGEgc3RhbmRhcmQiCisKKyM6IHNyYy9zdGF0Y21kLmM6NTIKKyMsIGZ1enp5CisjfCBtc2dpZCAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBxdWVyeWluZyBwYWNrYWdlcy4iCittc2dpZCAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBvdmVycmlkaW5nIGZpbGUgc3RhdCBpbmZvcm1hdGlvbi4iCittc2dzdHIgIlVzZSAtLWhlbHAgcGFyYSBhanVkYSBzb2JyZSBjb25zdWx0YXIgcGFjb3Rlcy4iCisKKyM6IHNyYy9zdGF0Y21kLmM6NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvcHlyaWdodCAoQykgMjAwMCwgMjAwMSBXaWNoZXJ0IEFra2VybWFuLlxuIgorIkNvcHlyaWdodCAoQykgMjAwNi0yMDA5IEd1aWxsZW0gSm92ZXIuXG4iCittc2dzdHIgIiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsIDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDYtMjAwOSBHdWlsbGVtIEpvdmVyLlxuIgorCisjOiBzcmMvc3RhdGNtZC5jOjgxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC0tYWRkIDxvd25lcj4gPGdyb3VwPiA8bW9kZT4gPGZpbGU+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkIGEgbmV3IGVudHJ5IGludG8gdGhlIGRhdGFiYXNlLlxuIgorIiAgLS1yZW1vdmUgPGZpbGU+ICAgICAgICAgIHJlbW92ZSBmaWxlIGZyb20gdGhlIGRhdGFiYXNlLlxuIgorIiAgLS1saXN0IFs8Z2xvYi1wYXR0ZXJuPl0gIGxpc3QgY3VycmVudCBvdmVycmlkZXMgaW4gdGhlIGRhdGFiYXNlLlxuIgorIlxuIgorbXNnc3RyICIiCisiQ29tYW5kb3M6XG4iCisiICAtLWFkZCA8ZG9ubz4gPGdydXBvPiA8bW9kbz4gPGZpY2hlaXJvPlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGFjcmVzY2VudGFyIHVtYSBub3ZhIGVudHJhZGEgbmEgYmFzZSBkZSBkYWRvcy5cbiIKKyIgIC0tcmVtb3ZlIDxmaWNoZWlybz4gICAgICByZW1vdmVyIG8gZmljaGVpcm8gZGEgYmFzZSBkZSBkYWRvcy5cbiIKKyIgIC0tbGlzdCBbPHBhZHLDo28tZ2xvYj5dICAgbGlzdGFyIG9zIGFjdHVhaXMgb3ZlcnJpZGVzIG5hIGJhc2UgZGUgZGFkb3MuXG4iCisiXG4iCisKKyM6IHNyYy9zdGF0Y21kLmM6ODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgc2V0IHRoZSBkaXJlY3Rvcnkgd2l0aCB0aGUgc3RhdG92ZXJyaWRlIGZpbGUuXG4iCisiICAtLXVwZGF0ZSAgICAgICAgICAgICAgICAgaW1tZWRpYXRlbHkgdXBkYXRlIGZpbGUgcGVybWlzc2lvbnMuXG4iCisiICAtLWZvcmNlICAgICAgICAgICAgICAgICAgZm9yY2UgYW4gYWN0aW9uIGV2ZW4gaWYgYSBzYW5pdHkgY2hlY2sgZmFpbHMuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgcXVpZXQgb3BlcmF0aW9uLCBtaW5pbWFsIG91dHB1dC5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCittc2dzdHIgIiIKKyJPcMOnw7VlczpcbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdMOzcmlvPiAgZGVmaW5pciBvIGRpcmVjdMOzcmlvIGNvbSBvIGZpY2hlaXJvICIKKyJzdGF0b3ZlcnJpZGUuXG4iCisiICAtLXVwZGF0ZSAgICAgICAgICAgICAgICAgYWN0dWFsaXphciBpbWVkaWF0YW1lbnRlIGFzIHBlcm1pc3PDtWVzIGRvICIKKyJmaWNoZWlyby5cbiIKKyIgIC0tZm9yY2UgICAgICAgICAgICAgICAgICBmb3LDp2EgdW1hIGFjw6fDo28gbWVzbW8gcXVlIG8gdGVzdGUgZGUgXCJzYW5pZGFkZVwiICIKKyJmYWxoZS5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBhIG9wZXJhw6fDo28gc2lsZW5jaW9zYSwgc2HDrWRhIG3DrW5pbWFcbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICBtb3N0cmFyIGVzdGEgbWVuc2FnZW0gZGUgYWp1ZGEuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgbW9zdHJhciBhIHZlcnPDo28uXG4iCisiXG4iCisKKyM6IHNyYy9zdGF0Y21kLmM6MTE2Cittc2dpZCAic3RyaXBwaW5nIHRyYWlsaW5nIC8iCittc2dzdHIgImEgY29ydGFyIG8gY2FtaW5obyAvIgorCisjOiBzcmMvc3RhdGNtZC5jOjIwNworbXNnaWQgImNhbm5vdCBvcGVuIG5ldyBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAibsOjbyBwb2RlIGFicmlyIG8gZmljaGVpcm8gc3RhdG92ZXJyaWRlIgorCisjOiBzcmMvc3RhdGNtZC5jOjIyMgorbXNnaWQgImVycm9yIHJlbW92aW5nIHN0YXRvdmVycmlkZS1vbGQiCittc2dzdHIgImVycm8gYW8gcmVtb3ZlciBzdGF0b3ZlcnJpZGUtb2xkIgorCisjOiBzcmMvc3RhdGNtZC5jOjIyNAorbXNnaWQgImVycm9yIGNyZWF0aW5nIG5ldyBzdGF0b3ZlcnJpZGUtb2xkIgorbXNnc3RyICJlcnJvIGFvIGNyaWFyIG5vdm8gc3RhdG92ZXJyaWRlLW9sZCIKKworIzogc3JjL3N0YXRjbWQuYzoyMjYKK21zZ2lkICJlcnJvciBpbnN0YWxsaW5nIG5ldyBzdGF0b3ZlcnJpZGUiCittc2dzdHIgImVycm8gYW8gaW5zdGFsYXIgbm92byBzdGF0b3ZlcnJpZGUiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjQ2Cittc2dpZCAiLS1hZGQgbmVlZHMgZm91ciBhcmd1bWVudHMiCittc2dzdHIgIi0tYWRkIG5lY2Vzc2l0YSBkZSBxdWF0cm8gYXJndW1lbnRvcyIKKworIzogc3JjL3N0YXRjbWQuYzoyNTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkFuIG92ZXJyaWRlIGZvciAnJXMnIGFscmVhZHkgZXhpc3RzLCBidXQgLS1mb3JjZSBzcGVjaWZpZWQgc28gd2lsbCBiZSAiCisiaWdub3JlZC4iCittc2dzdHIgIiIKKyJKw6EgZXhpc3RlIHVtIG92ZXJyaWRlIHBhcmEgJyVzJywgbWFzIC0tZm9yY2UgZm9pIGVzcGVjaWZpY2FkbyBwb3IgaXNzbyBzZXLDoSAiCisiaWdub3JhZG8uIgorCisjOiBzcmMvc3RhdGNtZC5jOjI2MAorIywgYy1mb3JtYXQKK21zZ2lkICJBbiBvdmVycmlkZSBmb3IgJyVzJyBhbHJlYWR5IGV4aXN0cywgYWJvcnRpbmcuIgorbXNnc3RyICJKw6EgZXhpc3RlIG92ZXJyaWRlIHBhcmEgXCIlc1wiLCBhYm9ydGFyLiIKKworIzogc3JjL3N0YXRjbWQuYzoyNzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS11cGRhdGUgZ2l2ZW4gYnV0ICVzIGRvZXMgbm90IGV4aXN0IgorbXNnc3RyICItLXVwZGF0ZSBmb2kgZGFkYSBtYXMgJXMgbsOjbyBleGlzdGUiCisKKyM6IHNyYy9zdGF0Y21kLmM6Mjk2Cittc2dpZCAiTm8gb3ZlcnJpZGUgcHJlc2VudC4iCittc2dzdHIgIk7Do28gZXN0w6EgcHJlc2VudGUgbmVuaHVtICdvdmVycmlkZScuIgorCisjOiBzcmMvc3RhdGNtZC5jOjMwNAorbXNnaWQgIi0tdXBkYXRlIGlzIHVzZWxlc3MgZm9yIC0tcmVtb3ZlIgorbXNnc3RyICItLXVwZGF0ZSDDqSBpbsO6dGlsIHBhcmEgLS1yZW1vdmUiCisKKyM6IHNyYy9zdGF0ZGIuYzo1OQorbXNnaWQgInN5bnRheCBlcnJvcjogaW52YWxpZCB1aWQgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgImVycm8gZGUgc2ludGF4ZTogdWlkIGludsOhbGlkbyBubyBmaWNoZWlybyBzdGF0b3ZlcnJpZGUiCisKKyM6IHNyYy9zdGF0ZGIuYzo2NAorIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3I6IHVua25vd24gdXNlciAnJXMnIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJlcnJvIGRlIHNpbnRheGU6IHV0aWxpemFkb3IgZGVzY29uaGVjaWRvICclcycgbm8gZmljaGVpcm8gc3RhdG92ZXJyaWRlIgorCisjOiBzcmMvc3RhdGRiLmM6ODMKK21zZ2lkICJzeW50YXggZXJyb3I6IGludmFsaWQgZ2lkIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJlcnJvIGRlIHNpbnRheGU6IGdpZCBpbnbDoWxpZG8gbm8gZmljaGVpcm8gc3RhdG92ZXJyaWRlIgorCisjOiBzcmMvc3RhdGRiLmM6ODgKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yOiB1bmtub3duIGdyb3VwICclcycgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgImVycm8gZGUgc2ludGF4ZTogZ3J1cG8gJyVzJyBkZXNjb25oZWNpZG8gbm8gc3RhdG92ZXJyaWRlIgorCisjOiBzcmMvc3RhdGRiLmM6MTA0Cittc2dpZCAic3ludGF4IGVycm9yOiBpbnZhbGlkIG1vZGUgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgImVycm8gZGUgc2ludGF4ZTogbW9kbyBpbnbDoWxpZG8gbm8gZmljaGVpcm8gc3RhdG92ZXJyaWRlIgorCisjOiBzcmMvc3RhdGRiLmM6MTI3Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgImZhbGhvdSBhYnJpciBmaWNoZWlybyBzdGF0b3ZlcnJpZGUiCisKKyM6IHNyYy9zdGF0ZGIuYzoxMzQKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgImZhbGhvdSBvIGZzdGF0IGFvIGZpY2hlaXJvcyBzdGF0b3ZlcnJpZGUiCisKKyM6IHNyYy9zdGF0ZGIuYzoxMzcKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgcHJldmlvdXMgc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgImZhbGhvdSBmc3RhdCBhbyBmaWNoZWlybyBzdGF0b3ZlcnJpZGUgYW50ZXJpb3IiCisKKyM6IHNyYy9zdGF0ZGIuYzoxNjIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInN0YXRvdmVycmlkZSBmaWxlIGAlLjI1MHMnIgorbXNnaWQgInJlYWRpbmcgc3RhdG92ZXJyaWRlIGZpbGUgJyUuMjUwcyciCittc2dzdHIgImZpY2hlaXJvIHN0YXRvdmVycmlkZSBgJS4yNTBzJyIKKworIzogc3JjL3N0YXRkYi5jOjE2OQorbXNnaWQgInN0YXRvdmVycmlkZSBmaWxlIGlzIG1pc3NpbmcgZmluYWwgbmV3bGluZSIKK21zZ3N0ciAiZmFsdGEgdW1hIGxpbmhhIHZhemlhIG5vIGZpbmFsIGRvIGZpY2hlaXJvIHN0YXRvdmVycmlkZSIKKworIzogc3JjL3N0YXRkYi5jOjE3MworbXNnaWQgInN0YXRvdmVycmlkZSBmaWxlIGNvbnRhaW5zIGVtcHR5IGxpbmUiCittc2dzdHIgImZpY2hlaXJvIHN0YXRvdmVycmlkZSBjb250w6ltIHVtYSBsaW5oYSB2YXppYSIKKworIzogc3JjL3N0YXRkYi5jOjE3OCBzcmMvc3RhdGRiLmM6MTkwIHNyYy9zdGF0ZGIuYzoyMDIKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgImVycm8gZGUgc2ludGF4ZSBubyBmaWNoZWlybyBzdGF0b3ZlcnJpZGUiCisKKyM6IHNyYy9zdGF0ZGIuYzoxODYgc3JjL3N0YXRkYi5jOjE5OCBzcmMvc3RhdGRiLmM6MjEwCittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgbGluZSBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiZmltIGRlIGxpbmhhIGluZXNwZXJhZG8gbm8gZmljaGVpcm8gc3RhdG92ZXJyaWRlIgorCisjOiBzcmMvc3RhdGRiLmM6MjE0CisjLCBjLWZvcm1hdAorbXNnaWQgIm11bHRpcGxlIHN0YXR1c292ZXJyaWRlcyBwcmVzZW50IGZvciBmaWxlICclLjI1MHMnIgorbXNnc3RyICJ2w6FyaW9zIHN0YXRvdmVycmlkZXMgcHJlc2VudGVzIHBhcmEgbyBmaWNoZWlybyAnJS4yNTBzJyIKKworIzogc3JjL3RyaWdjbWQuYzo0NgorbXNnaWQgIlR5cGUgZHBrZy10cmlnZ2VyIC0taGVscCBmb3IgaGVscCBhYm91dCB0aGlzIHV0aWxpdHkuIgorbXNnc3RyICJFc2NyZXZhIGRwa2ctdHJpZ2dlciAtLWhlbHAgcGFyYSBhanVkYSBhY2VyY2EgZGVzdGUgdXRpbGl0w6FyaW8uIgorCisjOiBzcmMvdHJpZ2NtZC5jOjUxCisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiAlcyBwYWNrYWdlIHRyaWdnZXIgdXRpbGl0eSB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICJEZWJpYW4gJXMgdXRpbGl0w6FyaW8gZGUgdHJpZ2dlciBkZSBwYWNvdGVzIHZlcnPDo28gJXMuXG4iCisKKyM6IHNyYy90cmlnY21kLmM6NjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbnM+IC4uLl0gPHRyaWdnZXItbmFtZT5cbiIKKyIgICAgICAgJXMgWzxvcHRpb25zPiAuLi5dIDxjb21tYW5kPlxuIgorIlxuIgorbXNnc3RyICIiCisiVXRpbGl6YcOnw6NvOiAlcyBbPG9ww6fDtWVzPiAuLi5dIDxub21lLXRyaWdnZXI+XG4iCisiICAgICAgICAgICAgJXMgWzxvcMOnw7Vlcz4gLi4uXSA8Y29tYW5kbz5cbiIKKyJcbiIKKworIzogc3JjL3RyaWdjbWQuYzo3MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtLWNoZWNrLXN1cHBvcnRlZCAgICAgICAgICAgICAgICBDaGVjayBpZiB0aGUgcnVubmluZyBkcGtnIHN1cHBvcnRzICIKKyJ0cmlnZ2Vycy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIkNvbWFuZG9zOlxuIgorIiAgLS1jaGVjay1zdXBwb3J0ZWQgICAgICAgICAgICAgICAgVmVyaWZpY2FyIHNlIG8gZHBrZyBlbSBleGVjdcOnw6NvIHN1cG9ydGEgIgorIid0cmlnZ2VycycuXG4iCisiXG4iCisKKyM6IHNyYy90cmlnY21kLmM6ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgICAgICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyIgIC0tYnktcGFja2FnZT08cGFja2FnZT4gICAgICAgICAgIE92ZXJyaWRlIHRyaWdnZXIgYXdhaXRlciAobm9ybWFsbHkgc2V0XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ5IGRwa2cpLlxuIgorIiAgLS1uby1hd2FpdCAgICAgICAgICAgICAgICAgICAgICAgTm8gcGFja2FnZSBuZWVkcyB0byBhd2FpdCB0aGUgIgorInByb2Nlc3NpbmcuXG4iCisiICAtLW5vLWFjdCAgICAgICAgICAgICAgICAgICAgICAgICBKdXN0IHRlc3QgLSBkb24ndCBhY3R1YWxseSBjaGFuZ2UgIgorImFueXRoaW5nLlxuIgorIlxuIgorbXNnc3RyICIiCisiT3DDp8O1ZXM6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3TDs3Jpbz4gICAgICAgICAgVXRpbGl6YXIgbyA8ZGlyZWN0w7NyaW8+IGVtIHZleiBkZSAlcy5cbiIKKyIgIC0tYnktcGFja2FnZT08cGFjb3RlPiAgICAgICAgICAgIFVsdHJhcGFzc2FyIG8gcXVlIGVzcGVyYSBwZWxvICd0cmlnZ2VyJ1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAobm9ybWFsbWVudGUgZGVmaW5pZG8gcGVsbyBkcGtnKS5cbiIKKyIgIC0tbm8tYXdhaXQgICAgICAgICAgICAgICAgICAgICAgIE5lbmh1bSBwYWNvdGUgbmVjZXNzaXRhIGRlIGVzcGVyYXIgcG9yXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByb2Nlc3NhbWVudG8uXG4iCisiICAtLW5vLWFjdCAgICAgICAgICAgICAgICAgICAgICAgICBBcGVuYXMgdGVzdGFyIC0gbsOjbyBhbHRlcmFyIG5hZGEuXG4iCisiXG4iCisKKyM6IHNyYy90cmlnY21kLmM6MTUyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB0cmlnZ2VycyBkYXRhIGRpcmVjdG9yeSBub3QgeWV0IGNyZWF0ZWRcbiIKK21zZ3N0ciAiJXM6IG8gZGlyZWN0w7NyaW8gZGUgZGFkb3MgZGUgJ3RyaWdnZXJzJyBhaW5kYSBuw6NvIGZvaSBjcmlhZG9cbiIKKworIzogc3JjL3RyaWdjbWQuYzoxNTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IHRyaWdnZXIgcmVjb3JkcyBub3QgeWV0IGluIGV4aXN0ZW5jZVxuIgorbXNnc3RyICIlczogYWluZGEgbsOjbyBleGlzdGVtIHJlZ2lzdG9zIGRlICd0cmlnZ2VyJ1xuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIwNQorbXNnaWQgInRha2VzIG9uZSBhcmd1bWVudCwgdGhlIHRyaWdnZXIgbmFtZSIKK21zZ3N0ciAibGV2YSB1bSBhcmd1bWVudG8sIG8gbm9tZSBkbyAndHJpZ2dlciciCisKKyM6IHNyYy90cmlnY21kLmM6MjEwCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJkcGtnLXRyaWdnZXIgbXVzdCBiZSBjYWxsZWQgZnJvbSBhIG1haW50YWluZXIgc2NyaXB0IChvciB3aXRoIGEgLS1ieS0iCisjfCAicGFja2FnZSBvcHRpb24pIgorbXNnaWQgIm11c3QgYmUgY2FsbGVkIGZyb20gYSBtYWludGFpbmVyIHNjcmlwdCAob3Igd2l0aCBhIC0tYnktcGFja2FnZSBvcHRpb24pIgorbXNnc3RyICIiCisiZHBrZy10cmlnZ2VyIHRlbSBkZSBzZXIgY2hhbWFkbyBwb3IgdW0gc2NyaXB0IGRvICdtYWludGFpbmVyJyAob3UgY29tIHVtYSAiCisib3DDp8OjbyAtLWJ5LXBhY2thZ2UpIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIxNQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZHBrZy10cmlnZ2VyOiBpbGxlZ2FsIGF3YWl0ZWQgcGFja2FnZSBuYW1lIGAlLjI1MHMnOiAlLjI1MHMiCittc2dpZCAiaWxsZWdhbCBhd2FpdGVkIHBhY2thZ2UgbmFtZSAnJS4yNTBzJzogJS4yNTBzIgorbXNnc3RyICJkcGtnLXRyaWdnZXI6IG5vbWUgYCUuMjUwcycgaWxlZ2FsIGRlIHBhY290ZSBlc3BlcmFkbzogJS0yNTBzIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIyMQorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHRyaWdnZXIgbmFtZSBgJS4yNTBzJzogJS4yNTBzIgorbXNnc3RyICJub21lIGAlLjI1MHMnIGRlICd0cmlnZ2VyJyBpbnbDoWxpZG86ICUuMjUwcyIKKworIzogc3JjL3RyaWdwcm9jLmM6MjUwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogY3ljbGUgZm91bmQgd2hpbGUgcHJvY2Vzc2luZyB0cmlnZ2VyczpcbiIKKyIgY2hhaW4gb2YgcGFja2FnZXMgd2hvc2UgdHJpZ2dlcnMgYXJlIG9yIG1heSBiZSByZXNwb25zaWJsZTpcbiIKK21zZ3N0ciAiIgorIiVzOiBmb2kgZW5jb250cmFkbyB1bSBjaWNsbyBhbyBwcm9jZXNzYXIgb3MgdHJpZ2dlcnM6XG4iCisiIGEgY2FkZWlhIGRlIHBhY290ZXMgZGVzc2VzIHRyaWdnZXJzIHPDo28gb3UgcG9kZXLDo28gc2VyIHJlc3BvbnPDoXZlaXM6XG4iCisKKyM6IHNyYy90cmlncHJvYy5jOjI1OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiIHBhY2thZ2VzJyBwZW5kaW5nIHRyaWdnZXJzIHdoaWNoIGFyZSBvciBtYXkgYmUgdW5yZXNvbHZhYmxlOlxuIgorbXNnc3RyICIiCisiXG4iCisiICd0cmlnZ2VycycgcGVuZGVudGVzIGRlIHBhY290ZXMgcXVlIHPDo28gb3UgcG9kZXLDo28gc2VyIG7Do28gc29sdWNpb25hZG9zOlxuIgorCisjOiBzcmMvdHJpZ3Byb2MuYzoyODEKK21zZ2lkICJ0cmlnZ2VycyBsb29waW5nLCBhYmFuZG9uZWQiCittc2dzdHIgInRyaWdnZXJzIGVtIGxvb3AsIGFiYW5kb25hZG8iCisKKyM6IHNyYy90cmlncHJvYy5jOjMxMgorIywgYy1mb3JtYXQKK21zZ2lkICJQcm9jZXNzaW5nIHRyaWdnZXJzIGZvciAlcyAuLi5cbiIKK21zZ3N0ciAiQSBwcm9jZXNzYXIgJ3RyaWdnZXJzJyBwYXJhICVzIC4uLlxuIgorCisjOiBzcmMvdXBkYXRlLmM6NTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIi0tJXMgbmVlZHMgZXhhY3RseSBvbmUgUGFja2FnZXMgZmlsZSBhcmd1bWVudCIKK21zZ2lkICItLSVzIG5lZWRzIGV4YWN0bHkgb25lIFBhY2thZ2VzLWZpbGUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMgbmVjZXNzaXRhIGV4YWN0YW1lbnRlIGRlIHVtIGFyZ3VtZW50byBmaWNoZWlybyBQYWNrYWdlcyIKKworIzogc3JjL3VwZGF0ZS5jOjYyCittc2dpZCAidW5hYmxlIHRvIGFjY2VzcyBkcGtnIHN0YXR1cyBhcmVhIGZvciBidWxrIGF2YWlsYWJsZSB1cGRhdGUiCittc2dzdHIgIiIKKyJuw6NvIGZvaSBwb3Nzw612ZWwgYWNlZGVyIMOgIGFyZWEgZGUgc3RhdHVzIGRvIGRwa2cgcGFyYSB1bWEgY29tcGxldGEgIgorImFjdHVhbGl6YcOnw6NvIgorCisjOiBzcmMvdXBkYXRlLmM6NjQKK21zZ2lkICJidWxrIGF2YWlsYWJsZSB1cGRhdGUgcmVxdWlyZXMgd3JpdGUgYWNjZXNzIHRvIGRwa2cgc3RhdHVzIGFyZWEiCittc2dzdHIgIiIKKyJhY3R1YWxpemHDp8OjbyBjb21wbGV0YSBkZSBkaXNwb25pYmlsaWRhZGUgbmVjZXNzaXRhIGRlIGFjZXNzbyBkZSBlc2NyaXRhIMOgICIKKyLDoXJlYSBkZSBlc3RhZG8gZG8gZHBrZyIKKworIzogc3JjL3VwZGF0ZS5jOjcxCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlcGxhY2luZyBhdmFpbGFibGUgcGFja2FnZXMgaW5mbywgdXNpbmcgJXMuXG4iCittc2dzdHIgIkEgc3Vic3RpdHVpciBhIGluZm9ybWHDp8OjbyBkZSBwYWNvdGVzIGRpc3BvbsOtdmVpcywgYSB1dGlsaXphciAlcy5cbiIKKworIzogc3JjL3VwZGF0ZS5jOjc0CisjLCBjLWZvcm1hdAorbXNnaWQgIlVwZGF0aW5nIGF2YWlsYWJsZSBwYWNrYWdlcyBpbmZvLCB1c2luZyAlcy5cbiIKK21zZ3N0ciAiQSBhY3R1YWxpemFyIGEgaW5mb3JtYcOnw6NvIGRlIHBhY290ZXMgZGlzcG9uw612ZWlzLCBhIHV0aWxpemFyICVzLlxuIgorCisjOiBzcmMvdXBkYXRlLmM6MTAxCisjLCBjLWZvcm1hdAorbXNnaWQgIkluZm9ybWF0aW9uIGFib3V0ICVkIHBhY2thZ2Ugd2FzIHVwZGF0ZWQuXG4iCittc2dpZF9wbHVyYWwgIkluZm9ybWF0aW9uIGFib3V0ICVkIHBhY2thZ2VzIHdhcyB1cGRhdGVkLlxuIgorbXNnc3RyWzBdICJGb2kgYWN0dWFsaXphZGEgYSBpbmZvcm1hw6fDo28gYWNlcmNhIGRlICVkIHBhY290ZShzKS5cbiIKK21zZ3N0clsxXSAiRm9pIGFjdHVhbGl6YWRhIGEgaW5mb3JtYcOnw6NvIGFjZXJjYSBkZSAlZCBwYWNvdGUocykuXG4iCisKKyM6IHNyYy91cGRhdGUuYzoxMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm9ic29sZXRlICctLSVzJyBvcHRpb24sIHVuYXZhaWxhYmxlIHBhY2thZ2VzIGFyZSBhdXRvbWF0aWNhbGx5IGNsZWFuZWQgdXAuIgorbXNnc3RyICIiCisib3DDp8OjbyAnLS0lcycgb2Jzb2xldGEsIHBhY290ZXMgbsOjbyBkaXNwb27DrXZlaXMgc8OjbyBhdXRvbWF0aWNhbWVudGUgbGltcG9zLiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBuYW1lICclLjUwcy4uLicgaXMgdG9vIGxvbmciCittc2dzdHIgIm8gbm9tZSBkZSBmaWNoZWlybyAnJS41MHMuLi4nIMOpIGRlbWFzaWFkbyBncmFuZGUiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTI5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGZpbGUgbmFtZSAnJS4yNTBzJyIKK21zZ3N0ciAibsOjbyBmb2kgcG9zc8OtdmVsIGZhemVyIHN0YXQgYW8gbm9tZSBkZSBmaWNoZWlybyAnJS4yNTBzJyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoxODkKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBjb250cm9sIGRpcmVjdG9yeSIKK21zZ3N0ciAibsOjbyBmb2kgcG9zc8OtdmVsIGZhemVyIHN0YXQgYW8gZGlyZWN0w7NyaW8gY29udHJvbCIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoxOTEKK21zZ2lkICJjb250cm9sIGRpcmVjdG9yeSBpcyBub3QgYSBkaXJlY3RvcnkiCittc2dzdHIgIm8gZGlyZWN0w7NyaW8gZGUgY29udHJvbG8gbsOjbyDDqSB1bSBkaXJlY3TDs3JpbyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoxOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29udHJvbCBkaXJlY3RvcnkgaGFzIGJhZCBwZXJtaXNzaW9ucyAlMDNsbyAobXVzdCBiZSA+PTA3NTUgYW5kIDw9MDc3NSkiCittc2dzdHIgIiIKKyJkaXJlY3TDs3JpbyBkZSBjb250cm9sZSB0ZW0gcGVybWlzc8O1ZXMgZXJyYWRhcyAlMDNsbyAodGVtIGRlIHNlciA+PTA3NTUgZSAiCisiPD0wNzc1KSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAibWFpbnRhaW5lciBzY3JpcHQgYCUuNTBzJyBpcyBub3QgYSBwbGFpbiBmaWxlIG9yIHN5bWxpbmsiCittc2dzdHIgIiIKKyJzY3JpcHQgYCUuNTBzJyBkbyBtYWludGFpbmVyIG7Do28gw6kgZmljaGVpcm8gZGUgdGV4dG8gc2ltcGxlcyBvdSBsaW5rICIKKyJzaW1iw7NsaWNvIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjIwNworIywgYy1mb3JtYXQKK21zZ2lkICIiCisibWFpbnRhaW5lciBzY3JpcHQgYCUuNTBzJyBoYXMgYmFkIHBlcm1pc3Npb25zICUwM2xvIChtdXN0IGJlID49MDU1NSBhbmQgIgorIjw9MDc3NSkiCittc2dzdHIgIiIKKyJzY3JpcHQgYCUuNTBzJyBkbyBtYWludGFpbmVyIHRlbSBwZXJtaXNzw7VlcyBlcnJhZGFzICUwM2xvIChkZXZlbSBzZXIgPj0wNTU1ICIKKyJlIDw9MDc3NSkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjExCisjLCBjLWZvcm1hdAorbXNnaWQgIm1haW50YWluZXIgc2NyaXB0IGAlLjUwcycgaXMgbm90IHN0YXR0YWJsZSIKK21zZ3N0ciAibsOjbyDDqSBwb3Nzw612ZWwgZmF6ZXIgc3RhdCBhbyBzY3JpcHQgYCUuNTBzJyBkbyBtYWludGFpbmVyIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjIzNworbXNnaWQgImVycm9yIG9wZW5pbmcgY29uZmZpbGVzIGZpbGUiCittc2dzdHIgImVycm8gYW8gYWJyaXIgbyBmaWNoZWlybyBjb25mZmlsZXMiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjQ2Cittc2dpZCAiZW1wdHkgc3RyaW5nIGZyb20gZmdldHMgcmVhZGluZyBjb25mZmlsZXMiCittc2dzdHIgInN0cmluZyB2YXppYSB2aW5kYSBkZSBmZ2V0cyBhbyBsZXIgY29uZmZpbGVzIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI1MQorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBuYW1lICclLjUwcy4uLicgaXMgdG9vIGxvbmcsIG9yIG1pc3NpbmcgZmluYWwgbmV3bGluZSIKK21zZ3N0ciAiIgorIm5vbWUgZGUgY29uZmZpbGUgJyUuNTBzLi4uJyDDqSBkZW1hc2lhZG8gbG9uZ28sIG91IGZhbHRhIHVtYSBub3ZhIGxpbmhhIGZpbmFsIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI2NAorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBmaWxlbmFtZSAnJXMnIGNvbnRhaW5zIHRyYWlsaW5nIHdoaXRlIHNwYWNlcyIKK21zZ3N0ciAiIgorIm8gbm9tZSBkbyBmaWNoZWlybyBjb25mZmlsZSAnJXMnIGNvbnTDqW0gZXNwYcOnb3MgZW0gYnJhbmNvIGRlIGVuY2hpbWVudG8iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjY2CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIGAlLjI1MHMnIGRvZXMgbm90IGFwcGVhciBpbiBwYWNrYWdlIgorbXNnc3RyICJvIGNvbmZmaWxlIGAlLjI1MHMnIG7Do28gYXBhcmVjZSBubyBwYWNvdGUiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjY4CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIGAlLjI1MHMnIGlzIG5vdCBzdGF0dGFibGUiCittc2dzdHIgIm7Do28gw6kgcG9zc8OtdmVsIGZhemVyIHN0YXQgYW8gY29uZmZpbGUgYCUuMjUwcyciCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjcwCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlICclcycgaXMgbm90IGEgcGxhaW4gZmlsZSIKK21zZ3N0ciAibyBjb25mZmlsZSAnJXMnIG7Do28gw6kgdW0gZmljaGVpcm8gZGUgdGV4dG8iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6Mjc0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIG5hbWUgJyVzJyBpcyBkdXBsaWNhdGVkIgorbXNnc3RyICJvIG5vbWUgZG8gY29uZmZpbGUgJyVzJyBlc3TDoSBkdXBsaWNhZG8iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6Mjg3Cittc2dpZCAiZXJyb3IgcmVhZGluZyBjb25mZmlsZXMgZmlsZSIKK21zZ3N0ciAiZXJybyBhbyBsZXIgbyBmaWNoZWlybyBjb25mZmlsZXMiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MzM5Cittc2dpZCAicGFja2FnZSBuYW1lIGhhcyBjaGFyYWN0ZXJzIHRoYXQgYXJlbid0IGxvd2VyY2FzZSBhbHBoYW51bXMgb3IgYC0rLiciCittc2dzdHIgIiIKKyJvIG5vbWUgZG8gcGFjb3RlIHRlbSBjYXJhY3RlcmVzIHF1ZSBuw6NvIHPDo28gY2FyYWN0ZXJlcyBhbGZhbnVtw6lyaWNvcyAiCisibWluw7pzY3Vsb3MgbmVtIGAtKy4nIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjM0MQorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGNvbnRhaW5zIHVzZXItZGVmaW5lZCBQcmlvcml0eSB2YWx1ZSAnJXMnIgorbXNnc3RyICInJXMnIGNvbnTDqW0gbyB2YWxvciAnJXMnIGRlIFByaW9yaXR5IGRlZmluaWRvIHBlbG8gdXRpbGl6YWRvciIKKworIzogZHBrZy1kZWIvYnVpbGQuYzozNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBjb250YWlucyB1c2VyLWRlZmluZWQgZmllbGQgJyVzJyIKK21zZ3N0ciAiJyVzJyBjb250w6ltIG8gY2FtcG8gJyVzJyBkZWZpbmlkbyBwZWxvIHV0aWxpemFkb3IiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MzU4CisjLCBjLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nICVkIHdhcm5pbmcgYWJvdXQgdGhlIGNvbnRyb2wgZmlsZShzKVxuIgorbXNnaWRfcGx1cmFsICJpZ25vcmluZyAlZCB3YXJuaW5ncyBhYm91dCB0aGUgY29udHJvbCBmaWxlKHMpXG4iCittc2dzdHJbMF0gImEgaWdub3JhciAlZCBhdmlzbyBhY2VyY2EgZG8gZmljaGVpcm8gY29udHJvbFxuIgorbXNnc3RyWzFdICJhIGlnbm9yYXIgJWQgYXZpc29zIGFjZXJjYSBkbyhzKSBmaWNoZWlybyhzKSBkZSBjb250cm9sZS5cbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MDMgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MjkKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDM2CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSA8ZGlyZWN0b3J5PiBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyBuZWNlc3NpdGEgZGUgdW0gYXJndW1lbnRvIDxkaXJlY3TDs3Jpbz4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDA5Cittc2dpZCAiLS1idWlsZCB0YWtlcyBhdCBtb3N0IHR3byBhcmd1bWVudHMiCittc2dzdHIgIi0tYnVpbGQgbGV2YSBubyBtw6F4aW1vIGRvaXMgYXJndW1lbnRvcyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoZWNrIGZvciBleGlzdGVuY2Ugb2YgYXJjaGl2ZSBgJS4yNTBzJyIKK21zZ3N0ciAibsOjbyBmb2kgcG9zc8OtdmVsIHZlcmlmaWNhciBhIGV4aXN0w6puY2lhIGRvIHJlcG9zaXTDs3JpbyBgJS4yNTBzJyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzAKK21zZ2lkICJ0YXJnZXQgaXMgZGlyZWN0b3J5IC0gY2Fubm90IHNraXAgY29udHJvbCBmaWxlIGNoZWNrIgorbXNnc3RyICIiCisibyBhbHZvIMOpIHVtIGRpcmVjdMOzcmlvIC0gbsOjbyDDqSBwb3Nzw612ZWwgc2FsdGFyIGEgdmVyaWZpY2HDp8OjbyBkbyBmaWNoZWlybyBkZSAiCisiY29udHJvbGUiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDMxCittc2dpZCAibm90IGNoZWNraW5nIGNvbnRlbnRzIG9mIGNvbnRyb2wgYXJlYS4iCittc2dzdHIgImEgbsOjbyB2ZXJpZmljYXIgbyBjb250ZcO6ZG8gZGEgw6FyZWEgZGUgY29udHJvbG8uIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQzMgorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnLWRlYjogYnVpbGRpbmcgYW4gdW5rbm93biBwYWNrYWdlIGluICclcycuXG4iCittc2dzdHIgImRwa2ctZGViOiBhIGNvbnN0cnVpciB1bSBwYWNvdGUgZGVzY29uaGVjaWRvIGVtICclcycuXG4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDM5CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2ctZGViOiBidWlsZGluZyBwYWNrYWdlIGAlcycgaW4gYCVzJy5cbiIKK21zZ3N0ciAiZHBrZy1kZWI6IGEgY29uc3RydWlyIG8gcGFjb3RlIGAlcycgZW0gYCVzJy5cbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0NjcgZHBrZy1kZWIvYnVpbGQuYzo1MjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byBtYWtlIHRtcGZpbGUgKGRhdGEpIgorbXNnaWQgImZhaWxlZCB0byBtYWtlIHRlbXBvcmFyeSBmaWxlICglcykiCittc2dzdHIgImZhbGhvdSBjcmlhciB0bXBmaWxlIChkYXRhKSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0NjcgZHBrZy1kZWIvYnVpbGQuYzo0NzAgZHBrZy1kZWIvYnVpbGQuYzo0NzcKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDg1IGRwa2ctZGViL2J1aWxkLmM6NDk0IGRwa2ctZGViL2J1aWxkLmM6NDk5CisjLCBmdXp6eQorI3wgbXNnaWQgImNvbnRyb2wgYXJlYSIKK21zZ2lkICJjb250cm9sIG1lbWJlciIKK21zZ3N0ciAiw6FyZWEgZGUgY29udHJvbG8iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDcwIGRwa2ctZGViL2J1aWxkLmM6NTI0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gdW5saW5rIHRtcGZpbGUgKGRhdGEpLCAlcyIKK21zZ2lkICJmYWlsZWQgdG8gdW5saW5rIHRlbXBvcmFyeSBmaWxlICglcyksICVzIgorbXNnc3RyICJmYWxob3UgbyB1bmxpbmsgdG1wZmlsZSAoZGF0YSksICVzIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ4NSBkcGtnLWRlYi9idWlsZC5jOjU5MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIHJld2luZCB0bXBmaWxlIChkYXRhKSIKK21zZ2lkICJmYWlsZWQgdG8gcmV3aW5kIHRlbXBvcmFyeSBmaWxlICglcykiCittc2dzdHIgImZhbGhvdSBvIHJld2luZCB0bXBmaWxlIChkYXRhKSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0OTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byBmc3RhdCBhciBtZW1iZXIgZmlsZSAoJXMpIgorbXNnaWQgImZhaWxlZCB0byBzdGF0IHRlbXBvcmFyeSBmaWxlICglcykiCittc2dzdHIgImZhbGhvdSBhbyBmYXplciBmc3RhdCBhbyBmaWNoZWlybyBtZW1icm8gZGUgYXIgKCVzKSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0OTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igd3JpdGluZyBgJXMnIgorbXNnc3RyICJlcnJvIGFvIGVzY3JldmVyIGAlcyciCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTIxIGRwa2ctZGViL2J1aWxkLmM6NTI0IGRwa2ctZGViL2J1aWxkLmM6NTQ2CisjOiBkcGtnLWRlYi9idWlsZC5jOjU3MiBkcGtnLWRlYi9idWlsZC5jOjU4MCBkcGtnLWRlYi9idWlsZC5jOjU5MworIywgZnV6enkKKyN8IG1zZ2lkICJiZXR3ZWVuIG1lbWJlcnMiCittc2dpZCAiZGF0YSBtZW1iZXIiCittc2dzdHIgImVudHJlIG9zIG7Dum1lcm9zIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjU3MSBkcGtnLWRlYi9idWlsZC5jOjU4MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIHdyaXRlIGZpbGVuYW1lIHRvIHRhciBwaXBlIChkYXRhKSIKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgZmlsZW5hbWUgdG8gdGFyIHBpcGUgKCVzKSIKK21zZ3N0ciAiZmFsaG91IGVzY3JldmVyIG8gbm9tZSBkbyBmaWNoZWlybyBwYXJhIHVtIHBpcGUgZG8gdGFyIChkYXRhKSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo1ODQKK21zZ2lkICI8Y29tcHJlc3M+IGZyb20gdGFyIC1jZiIKK21zZ3N0ciAiPGNvbXByaW1pcj4gZGUgdGFyIC1jZiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjYxIGRwa2ctZGViL2V4dHJhY3QuYzo2MworbXNnaWQgInNoZWxsIGNvbW1hbmQgdG8gbW92ZSBmaWxlcyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6NzAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgZmlsZSBpbiAlcyBpbiAlLjI1NXMiCittc2dzdHIgImZpbSBkZSBmaWNoZWlybyBpbmVzcGVyYWRvIGVtICVzIGVtICUuMjU1cyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHJlYWRpbmcgJXMgZnJvbSBmaWxlICUuMjU1cyIKK21zZ3N0ciAiZXJybyBhbyBsZXIgJXMgZG8gZmljaGVpcm8gJS4yNTVzIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTI1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZWFkIGFyY2hpdmUgYCUuMjU1cyciCittc2dzdHIgImZhbGhvdSBsZXIgbyBhcnF1aXZvIGAlLjI1NXMnIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTI3Cittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGFyY2hpdmUiCittc2dzdHIgImZhbGhvdSBvIGZzdGF0IGFvIGFycXVpdm8iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxMzEKKyMsIGZ1enp5CisjfCBtc2dpZCAiYXJjaGl2ZSBoYXMgbm8gZG90IGluIHZlcnNpb24gbnVtYmVyIgorbXNnaWQgImFyY2hpdmUgbWFnaWMgdmVyc2lvbiBudW1iZXIiCittc2dzdHIgIm8gYXJxdWl2byBuw6NvIHRlbSBwb250byBubyBuw7ptZXJvIGRlIHZlcnPDo28iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNDMKKyMsIGZ1enp5CisjfCBtc2dpZCAiYXJjaGl2ZSBoYXMgbm8gbmV3bGluZXMgaW4gaGVhZGVyIgorbXNnaWQgImFyY2hpdmUgbWVtYmVyIGhlYWRlciIKK21zZ3N0ciAibyBhcnF1aXZvIG7Do28gdGVtIG5ld2xpbmVzIG5vIGNhYmXDp2FsaG8iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNDgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBwYXJ0IG51bWJlciIKK21zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgYXJjaGl2ZSBoZWFkZXIgbWFnaWMiCittc2dzdHIgIm8gZmljaGVpcm8gYCUuMjUwcycgZXN0w6EgY29ycm9tcGlkbyAtIG7Dum1lcm8gZGUgcGFydGUgZXJyYWRvIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTU1CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgbm90IGEgZGViaWFuIGJpbmFyeSBhcmNoaXZlICh0cnkgZHBrZy1zcGxpdD8pIgorbXNnc3RyICIiCisibyBmaWNoZWlybyBgJS4yNTBzJyBuw6NvIMOpIHVtIGFycXVpdm8gYmluw6FyaW8gZGViaWFuICh0ZW50ZSBkcGtnLXNwbGl0PykiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNTkKKyMsIGZ1enp5CisjfCBtc2dpZCAiYXJjaGl2ZSBoYXMgbm8gZG90IGluIHZlcnNpb24gbnVtYmVyIgorbXNnaWQgImFyY2hpdmUgaW5mb3JtYXRpb24gaGVhZGVyIG1lbWJlciIKK21zZ3N0ciAibyBhcnF1aXZvIG7Do28gdGVtIHBvbnRvIG5vIG7Dum1lcm8gZGUgdmVyc8OjbyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE2MgorbXNnaWQgImFyY2hpdmUgaGFzIG5vIG5ld2xpbmVzIGluIGhlYWRlciIKK21zZ3N0ciAibyBhcnF1aXZvIG7Do28gdGVtIG5ld2xpbmVzIG5vIGNhYmXDp2FsaG8iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNjUKK21zZ2lkICJhcmNoaXZlIGhhcyBubyBkb3QgaW4gdmVyc2lvbiBudW1iZXIiCittc2dzdHIgIm8gYXJxdWl2byBuw6NvIHRlbSBwb250byBubyBuw7ptZXJvIGRlIHZlcnPDo28iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiYXJjaGl2ZSB2ZXJzaW9uICUuMjUwcyBub3QgdW5kZXJzdG9vZCwgZ2V0IG5ld2VyIGRwa2ctZGViIgorbXNnc3RyICIiCisidmVyc8OjbyBkbyBhcnF1aXZvICUuMjUwcyBuw6NvIGZvaSBjb21wcmVlbmRpZGEsIG9idGVuaGEgdW0gZHBrZy1kZWIgbWFpcyAiCisicmVjZW50ZSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE3OSBkcGtnLWRlYi9leHRyYWN0LmM6MjA1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJza2lwcGVkIG1lbWJlciBkYXRhIGZyb20gJXMiCittc2dpZCAic2tpcHBlZCBhcmNoaXZlIG1lbWJlciBkYXRhIGZyb20gJXMiCittc2dzdHIgInNhbHRvdSBkYWRvcyBkZSBtZW1icm8gZGUgJXMiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxOTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgY29udGFpbnMgdW51bmRlcnN0b29kIGRhdGEgbWVtYmVyICUuKnMsIGdpdmluZyB1cCIKK21zZ2lkICJhcmNoaXZlICclLjI1MHMnIGNvbnRhaW5zIG5vdCB1bmRlcnN0b29kIGRhdGEgbWVtYmVyICUuKnMsIGdpdmluZyB1cCIKK21zZ3N0ciAiIgorIm8gZmljaGVpcm8gYCUuMjUwcycgY29udMOpbSBvIG1lbWJybyBkZSBkYWRvcyAlLipzIG7Do28gY29tcHJlZW5kaWRvLCBhICIKKyJkZXNpc3RpciIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE5OQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZSBgJS4yNTBzJyBjb250YWlucyB0d28gY29udHJvbCBtZW1iZXJzLCBnaXZpbmcgdXAiCittc2dpZCAiYXJjaGl2ZSAnJS4yNTBzJyBjb250YWlucyB0d28gY29udHJvbCBtZW1iZXJzLCBnaXZpbmcgdXAiCittc2dzdHIgIm8gZmljaGVpcm8gYCUuMjUwcycgY29udMOpbSBkb2lzIG1lbWJyb3MgZGUgY29udHJvbGUsIGEgZGVzaXN0aXIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyMTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIgbmV3IGRlYmlhbiBwYWNrYWdlLCB2ZXJzaW9uICVzLlxuIgorI3wgIiBzaXplICVsZCBieXRlczogY29udHJvbCBhcmNoaXZlPSAlemkgYnl0ZXMuXG4iCittc2dpZCAiIgorIiBuZXcgZGViaWFuIHBhY2thZ2UsIHZlcnNpb24gJXMuXG4iCisiIHNpemUgJWpkIGJ5dGVzOiBjb250cm9sIGFyY2hpdmU9ICVqZCBieXRlcy5cbiIKK21zZ3N0ciAiIgorIiBub3ZvIHBhY290ZSBkZWJpYW4sIHZlcnPDo28gJXMuXG4iCisiICVsZCBieXRlcyBkZSB0YW1hbmhvOiBhcnF1aXZvIGRlIGNvbnRyb2xlPSAlemkgYnl0ZXMuXG4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyMzIKK21zZ2lkICJhcmNoaXZlIGNvbnRyb2wgbWVtYmVyIHNpemUiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIzNQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYXJjaGl2ZSBoYXMgbWFsZm9ybWF0dGVkIGNvbnRyb2wgbGVuZ3RoIGAlcyciCittc2dpZCAiYXJjaGl2ZSBoYXMgbWFsZm9ybWF0dGVkIGNvbnRyb2wgbWVtYmVyIHNpemUgJyVzJyIKK21zZ3N0ciAibyBhcnF1aXZvIHRlbSBvIHRhbWFuaG8gZG8gY29udHJvbG8gbWFsIGZvcm1hdGFkbyBgJXMnIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjQyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJza2lwcGVkIG1lbWJlciBkYXRhIGZyb20gJXMiCittc2dpZCAic2tpcHBlZCBhcmNoaXZlIGNvbnRyb2wgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ3N0ciAic2FsdG91IGRhZG9zIGRlIG1lbWJybyBkZSAlcyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI0NgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiBvbGQgZGViaWFuIHBhY2thZ2UsIHZlcnNpb24gJXMuXG4iCisjfCAiIHNpemUgJWxkIGJ5dGVzOiBjb250cm9sIGFyY2hpdmU9ICV6aSwgbWFpbiBhcmNoaXZlPSAlbGQuXG4iCittc2dpZCAiIgorIiBvbGQgZGViaWFuIHBhY2thZ2UsIHZlcnNpb24gJXMuXG4iCisiIHNpemUgJWpkIGJ5dGVzOiBjb250cm9sIGFyY2hpdmU9ICVqZCwgbWFpbiBhcmNoaXZlPSAlamQuXG4iCittc2dzdHIgIiIKKyIgcGFjb3RlIGRlYmlhbiBhbnRpZ28sIHZlcnPDo28gJXMsXG4iCisiIHRhbWFuaG8gJWxkIGJ5dGVzOiBhcnF1aXZvIGRlIGNvbnRyb2xlPSAlemksIGFycXVpdm8gcHJpbmNpcGFsPSAlbGQuXG4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2ctZGViOiBmaWxlIGxvb2tzIGxpa2UgaXQgbWlnaHQgYmUgYW4gYXJjaGl2ZSB3aGljaCBoYXMgYmVlblxuIgorImRwa2ctZGViOiAgICBjb3JydXB0ZWQgYnkgYmVpbmcgZG93bmxvYWRlZCBpbiBBU0NJSSBtb2RlXG4iCittc2dzdHIgIiIKKyJkcGtnLWRlYjogbyBmaWNoZWlybyBwYXJlY2Ugc2VyIHVtIGFycXVpdm8gcXVlIGZvaSBjb3Jyb21waWRvXG4iCisiZHBrZy1kZWI6ICAgIHBvciB0ZXIgc2lkbyBmZWl0byBvIGRvd25sb2FkIGVtIG1vZG8gQVNDSUlcbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI1OQorIywgYy1mb3JtYXQKK21zZ2lkICJgJS4yNTVzJyBpcyBub3QgYSBkZWJpYW4gZm9ybWF0IGFyY2hpdmUiCittc2dzdHIgImAlLjI1NXMnIG7Do28gw6kgdW0gYXJxdWl2byBkZSBmb3JtYXRvIGRlYmlhbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI2NgorbXNnaWQgImZhaWxlZCB0byB3cml0ZSB0byBwaXBlIGluIGNvcHkiCittc2dzdHIgIm7Do28gZm9pIHBvc3PDrXZlbCBlc2NyZXZlciBwYXJhIG8gcGlwZSBuYSBjw7NwaWEiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNjgKK21zZ2lkICJmYWlsZWQgdG8gY2xvc2UgcGlwZSBpbiBjb3B5IgorbXNnc3RyICJmYWxob3UgZmVjaGFyIG8gcGlwZSBuYSBjw7NwaWEiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyODQKK21zZ2lkICJkYXRhIgorbXNnc3RyICJkYWRvcyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMwNworbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byBkaXJlY3RvcnkiCittc2dzdHIgImZhbGhvdSBvIGNoZGlyIHBhcmEgbyBkaXJlY3TDs3JpbyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMxMAorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgZGlyZWN0b3J5IgorbXNnc3RyICJmYWxob3UgY3JpYXIgZGlyZWN0w7NyaW8iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozMTIKK21zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gZGlyZWN0b3J5IGFmdGVyIGNyZWF0aW5nIGl0IgorbXNnc3RyICJmYWxob3UgbyBjaGRpciBwYXJhIG8gZGlyZWN0w7NyaW8gYXDDs3MgbyB0ZXIgY3JpYWRvIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzIzCittc2dpZCAiPGRlY29tcHJlc3M+IgorbXNnc3RyICI8ZGVzY29tcHJlc3PDo28+IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzI1Cittc2dpZCAicGFzdGUiCittc2dzdHIgImNvbGFyIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzQyIGRwa2ctZGViL2V4dHJhY3QuYzozNjMgZHBrZy1kZWIvZXh0cmFjdC5jOjQwMgorIzogZHBrZy1kZWIvaW5mby5jOjc3CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSAuZGViIGZpbGVuYW1lIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIG5lY2Vzc2l0YSBkZSB1bSBmaWNoZWlybyAuZGViIGNvbW8gYXJndW1lbnRvIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzQ3IGRwa2ctZGViL2V4dHJhY3QuYzo0MDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIi0tJXMgbmVlZHMgYSB0YXJnZXQgZGlyZWN0b3J5LlxuIgorIlBlcmhhcHMgeW91IHNob3VsZCBiZSB1c2luZyBkcGtnIC0taW5zdGFsbCA/IgorbXNnc3RyICIiCisiLS0lcyBuZWNlc3NpdGEgZGUgdW0gZGlyZWN0w7NyaW8gZGUgZGVzdGluby5cbiIKKyJUYWx2ZXogdm9jw6ogZGV2ZXNzZSBlc3RhciBhIHV0aWxpemFyIGRwa2cgLS1pbnN0YWxsID8iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozNTAgZHBrZy1kZWIvZXh0cmFjdC5jOjQxMAorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIHRha2VzIGF0IG1vc3QgdHdvIGFyZ3VtZW50cyAoLmRlYiBhbmQgZGlyZWN0b3J5KSIKK21zZ3N0ciAiLS0lcyB0b21hIG5vIG3DoXhpbW8gZG9pcyBhcmd1bWVudG9zICguZGViIGUgZGlyZWN0w7NyaW8pIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzY1CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgb25seSBvbmUgYXJndW1lbnQgKC5kZWIgZmlsZW5hbWUpIgorbXNnc3RyICItLSVzIHRvbWEgYXBlbmFzIHVtIGFyZ3VtZW50byAoZmljaGVpcm8gLmRlYikiCisKKyM6IGRwa2ctZGViL2luZm8uYzo2MworbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byBgLycgZm9yIGNsZWFudXAiCittc2dzdHIgImZhbGhvdSBvIGNoZGlyIHBhcmEgYC8nIHBhcmEgbGltcGV6YSIKKworIzogZHBrZy1kZWIvaW5mby5jOjEwNgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiY2Fubm90IHN0YXQgZmlsZSAnJXMnIgorbXNnaWQgImNvbnRyb2wgZmlsZSAnJXMnIgorbXNnc3RyICJOw6NvIHBvZGUgZmF6ZXIgc3RhdCBhbyBmaWNoZWlybyAnJXMnIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTEwCisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2ctZGViOiBgJS4yNTVzJyBjb250YWlucyBubyBjb250cm9sIGNvbXBvbmVudCBgJS4yNTVzJ1xuIgorbXNnc3RyICJkcGtnLWRlYjogYCUuMjU1cycgbsOjbyBjb250w6ltIG5lbmh1bSBjb21wb25lbnRlIGRlIGNvbnRyb2xlIGAlLjI1NXMnXG4iCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAib3BlbiBjb21wb25lbnQgYCUuMjU1cycgKGluICUuMjU1cykgZmFpbGVkIGluIGFuIHVuZXhwZWN0ZWQgd2F5IgorbXNnc3RyICJhYnJpciBvIGNvbXBvbmVudGUgYCUuMjU1cycgKGVtICUuMjU1cykgZmFsaG91IGRlIHVtIG1vZG8gaW5lc3BlcmFkbyIKKworIzogZHBrZy1kZWIvaW5mby5jOjEyMQorIywgYy1mb3JtYXQKK21zZ2lkICIlZCByZXF1ZXN0ZWQgY29udHJvbCBjb21wb25lbnQgaXMgbWlzc2luZyIKK21zZ2lkX3BsdXJhbCAiJWQgcmVxdWVzdGVkIGNvbnRyb2wgY29tcG9uZW50cyBhcmUgbWlzc2luZyIKK21zZ3N0clswXSAiJWQgY29tcG9uZW50ZSBkZSBjb250cm9sZSBwZWRpZG8gZW0gZmFsdGEiCittc2dzdHJbMV0gIiVkIGNvbXBvbmVudGVzIGRlIGNvbnRyb2xlIHBlZGlkb3MgZW0gZmFsdGEiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMzkgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQyNAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc2NhbiBkaXJlY3RvcnkgYCUuMjU1cyciCittc2dzdHIgIm7Do28gcG9kZSBwZXNxdWlzYXIgbyBkaXJlY3TDs3JpbyBgJS4yNTVzJyIKKworIzogZHBrZy1kZWIvaW5mby5jOjE0OAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc3RhdCBgJS4yNTVzJyAoaW4gYCUuMjU1cycpIgorbXNnc3RyICJOw6NvIHBvZGUgZmF6ZXIgc3RhdCBgJS4yNTVzJyAoZW0gJS4yNTVzJykiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IG9wZW4gYCUuMjU1cycgKGluIGAlLjI1NXMnKSIKK21zZ3N0ciAibsOjbyBwb2RlIGFicmlyIGAlLjI1NXMnIChlbSAlLjI1NXMnKSIKKworIzogZHBrZy1kZWIvaW5mby5jOjE2NyBkcGtnLWRlYi9pbmZvLmM6MTg1IGRwa2ctZGViL2luZm8uYzoxOTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgYCUuMjU1cycgKGluIGAlLjI1NXMnKSIKK21zZ3N0ciAiZmFsaG91IGxlciBgJS4yNTVzJyAoZW0gYCUuMjU1cycpIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTcwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIgJTdsZCBieXRlcywgJTVkIGxpbmVzICAgJWMgICUtMjAuMTI3cyAlLjEyN3NcbiIKK21zZ2lkICIgJTdqZCBieXRlcywgJTVkIGxpbmVzICAgJWMgICUtMjAuMTI3cyAlLjEyN3NcbiIKK21zZ3N0ciAiICU3bGQgYnl0ZXMsICU1ZCBsaW5oYXMgICAlYyAgJS0yMC4xMjdzICUuMTI3c1xuIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTc0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgICAgbm90IGEgcGxhaW4gZmlsZSAgICAgICAgICAlLjI1NXNcbiIKK21zZ3N0ciAiICAgICBuw6NvIMOpIHVtIGZpY2hlaXJvIGNvbXVtICAgJS4yNTVzXG4iCisKKyM6IGRwa2ctZGViL2luZm8uYzoxODYKK21zZ2lkICIobm8gYGNvbnRyb2wnIGZpbGUgaW4gY29udHJvbCBhcmNoaXZlISlcbiIKK21zZ3N0ciAiKG5lbmh1bSBmaWNoZWlybyBgY29udHJvbCcgbm8gYXJxdWl2byBkZSBjb250cm9sZSEpXG4iCisKKyM6IGRwa2ctZGViL2luZm8uYzoyMjIKK21zZ2lkICJjb3VsZCBub3Qgb3BlbiB0aGUgYGNvbnRyb2wnIGNvbXBvbmVudCIKK21zZ3N0ciAibsOjbyBwb2RlIGFicmlyIG8gY29tcG9uZW50ZSBgY29udHJvbCciCisKKyM6IGRwa2ctZGViL2luZm8uYzoyNjEKK21zZ2lkICJmYWlsZWQgZHVyaW5nIHJlYWQgb2YgYGNvbnRyb2wnIGNvbXBvbmVudCIKK21zZ3N0ciAiZmFsaG91IGR1cmFudGUgYSBsZWl0dXJhIGRvIGNvbXBvbmVudGUgYGNvbnRyb2wnIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MjYzCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgdGhlICclcycgY29tcG9uZW50IgorbXNnc3RyICJlcnJvIGFvIGZlY2hhciBvIGNvbXBvbmVudGUgJyVzJyIKKworIzogZHBrZy1kZWIvaW5mby5jOjI3OAorbXNnaWQgIkVycm9yIGluIGZvcm1hdCIKK21zZ3N0ciAiRXJybyBubyBmb3JtYXRvIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MzI4Cittc2dpZCAiLS1jb250ZW50cyB0YWtlcyBleGFjdGx5IG9uZSBhcmd1bWVudCIKK21zZ3N0ciAiLS1jb250ZW50cyB0b21hIGV4YWN0YW1lbnRlIHVtIGFyZ3VtZW50byIKKworIzogZHBrZy1kZWIvbWFpbi5jOjU0CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiBgJXMnIHBhY2thZ2UgYXJjaGl2ZSBiYWNrZW5kIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkRlYmlhbiBgJXMnJyBiYWNrZW5kIGRvIGFycXVpdm8gZGUgcGFjb3RlIHZlcnPDo28gJXMuXG4iCisKKyM6IGRwa2ctZGViL21haW4uYzo3MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIkNvbW1hbmRzOlxuIgorI3wgIiAgLWJ8LS1idWlsZCA8ZGlyZWN0b3J5PiBbPGRlYj5dICAgQnVpbGQgYW4gYXJjaGl2ZS5cbiIKKyN8ICIgIC1jfC0tY29udGVudHMgPGRlYj4gICAgICAgICAgICAgIExpc3QgY29udGVudHMuXG4iCisjfCAiICAtSXwtLWluZm8gPGRlYj4gWzxjZmlsZT4gLi4uXSAgICBTaG93IGluZm8gdG8gc3Rkb3V0LlxuIgorI3wgIiAgLVd8LS1zaG93IDxkZWI+ICAgICAgICAgICAgICAgICAgU2hvdyBpbmZvcm1hdGlvbiBvbiBwYWNrYWdlKHMpXG4iCisjfCAiICAtZnwtLWZpZWxkIDxkZWI+IFs8Y2ZpZWxkPiAuLi5dICBTaG93IGZpZWxkKHMpIHRvIHN0ZG91dC5cbiIKKyN8ICIgIC1lfC0tY29udHJvbCA8ZGViPiBbPGRpcmVjdG9yeT5dIEV4dHJhY3QgY29udHJvbCBpbmZvLlxuIgorI3wgIiAgLXh8LS1leHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+ICAgRXh0cmFjdCBmaWxlcy5cbiIKKyN8ICIgIC1YfC0tdmV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gIEV4dHJhY3QgJiBsaXN0IGZpbGVzLlxuIgorI3wgIiAgLS1mc3lzLXRhcmZpbGUgPGRlYj4gICAgICAgICAgICAgT3V0cHV0IGZpbGVzeXN0ZW0gdGFyZmlsZS5cbiIKKyN8ICJcbiIKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtYnwtLWJ1aWxkIDxkaXJlY3Rvcnk+IFs8ZGViPl0gICBCdWlsZCBhbiBhcmNoaXZlLlxuIgorIiAgLWN8LS1jb250ZW50cyA8ZGViPiAgICAgICAgICAgICAgTGlzdCBjb250ZW50cy5cbiIKKyIgIC1JfC0taW5mbyA8ZGViPiBbPGNmaWxlPiAuLi5dICAgIFNob3cgaW5mbyB0byBzdGRvdXQuXG4iCisiICAtV3wtLXNob3cgPGRlYj4gICAgICAgICAgICAgICAgICBTaG93IGluZm9ybWF0aW9uIG9uIHBhY2thZ2UocylcbiIKKyIgIC1mfC0tZmllbGQgPGRlYj4gWzxjZmllbGQ+IC4uLl0gIFNob3cgZmllbGQocykgdG8gc3Rkb3V0LlxuIgorIiAgLWV8LS1jb250cm9sIDxkZWI+IFs8ZGlyZWN0b3J5Pl0gRXh0cmFjdCBjb250cm9sIGluZm8uXG4iCisiICAteHwtLWV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gICBFeHRyYWN0IGZpbGVzLlxuIgorIiAgLVh8LS12ZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PiAgRXh0cmFjdCAmIGxpc3QgZmlsZXMuXG4iCisiICAtUnwtLXJhdy1leHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFeHRyYWN0IGNvbnRyb2wgaW5mbyBhbmQgZmlsZXMuXG4iCisiICAtLWZzeXMtdGFyZmlsZSA8ZGViPiAgICAgICAgICAgICBPdXRwdXQgZmlsZXN5c3RlbSB0YXJmaWxlLlxuIgorIlxuIgorbXNnc3RyICIiCisiQ29tYW5kb3M6XG4iCisiICAtYnwtLWJ1aWxkIDxkaXJlY3TDs3Jpbz4gWzxkZWI+XSAgQ29uc3RydWlyIHVtIGFycXVpdm8uXG4iCisiICAtY3wtLWNvbnRlbnRzIDxkZWI+ICAgICAgICAgICAgICBMaXN0YXIgbyBjb250ZcO6ZG8uXG4iCisiICAtSXwtLWluZm8gPGRlYj4gWzxjZmlsZT4gLi4uIF0gICBNb3N0cmFyIGluZm8gcGFyYSBzdGRvdXQuXG4iCisiICAtV3wtLXNob3cgPGRlYj4gICAgICAgICAgICAgICAgICBNb3N0cmFyIGluZm9ybWHDp8OjbyBkbyhzKSBwYWNvdGUocykuXG4iCisiICAtZnwtLWZpZWxkIDxkZWI+IFs8Y2ZpZWxkPiAuLi5dICBNb3N0cmFyIGNhbXBvKHMpIHBhcmEgc3Rkb3V0LlxuIgorIiAgLWV8LS1jb250cm9sIDxkZWI+IFs8ZGlyZWN0w7NyaW8+XUV4dHJhaXIgaW5mb3JtYcOnw6NvIGRlIGNvbnRyb2xvLlxuIgorIiAgLXh8LS1leHRyYWN0IDxkZWI+IDxkaXJlY3TDs3Jpbz4gIEV4dHJhaXIgZmljaGVpcm9zLlxuIgorIiAgLVh8LS12ZXh0cmFjdCA8ZGViPiA8ZGlyZWN0w7NyaW8+IEV4dHJhaXIgZSBsaXN0YXIgZmljaGVpcm9zLlxuIgorIiAgLS1mc3lzLXRhcmZpbGUgPGRlYj4gICAgICAgICAgICAgU2HDrWRhIGRvIHNpc3RlbWEgZGUgZmljaGVpcm9zIGRvIGZpY2hlaXJvICIKKyJ0YXIuXG4iCisiXG4iCisKKyM6IGRwa2ctZGViL21haW4uYzo5MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiPGRlYj4gaXMgdGhlIGZpbGVuYW1lIG9mIGEgRGViaWFuIGZvcm1hdCBhcmNoaXZlLlxuIgorIjxjZmlsZT4gaXMgdGhlIG5hbWUgb2YgYW4gYWRtaW5pc3RyYXRpdmUgZmlsZSBjb21wb25lbnQuXG4iCisiPGNmaWVsZD4gaXMgdGhlIG5hbWUgb2YgYSBmaWVsZCBpbiB0aGUgbWFpbiBgY29udHJvbCcgZmlsZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIjxkZWI+IMOpIG8gbm9tZSBkbyBmaWNoZWlybyBkZSB1bSBhcnF1aXZvIGRlIGZvcm1hdG8gRGViaWFuLlxuIgorIjxjZmlsZT4gw6kgbyBub21lIGRlIHVtIGNvbXBvbmVudGUgZGUgdW0gZmljaGVpcm8gYWRtaW5pc3RyYXRpdm8uXG4iCisiPGNmaWVsZD4gw6kgbyBub21lIGRlIHVtIGNhbXBvIG5vIGZpY2hlaXJvIHByaW5jaXBhbCBgY29udHJvbCcuXG4iCisiXG4iCisKKyM6IGRwa2ctZGViL21haW4uYzo5OQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIk9wdGlvbnM6XG4iCisjfCAiICAtLXNob3dmb3JtYXQ9PGZvcm1hdD4gICAgICAgICAgICBVc2UgYWx0ZXJuYXRpdmUgZm9ybWF0IGZvciAtLXNob3cuXG4iCisjfCAiICAtRCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbmFibGUgZGVidWdnaW5nIG91dHB1dC5cbiIKKyN8ICIgIC0tb2xkLCAtLW5ldyAgICAgICAgICAgICAgICAgICAgIFNlbGVjdCBhcmNoaXZlIGZvcm1hdC5cbiIKKyN8ICIgIC0tbm9jaGVjayAgICAgICAgICAgICAgICAgICAgICAgIFN1cHByZXNzIGNvbnRyb2wgZmlsZSBjaGVjayAoYnVpbGQgIgorI3wgImJhZFxuIgorI3wgIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWNrYWdlcykuXG4iCisjfCAiICAteiMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTZXQgdGhlIGNvbXByZXNzaW9uIGxldmVsIHdoZW4gIgorI3wgImJ1aWxkaW5nLlxuIgorI3wgIiAgLVo8dHlwZT4gICAgICAgICAgICAgICAgICAgICAgICAgU2V0IHRoZSBjb21wcmVzc2lvbiB0eXBlIHVzZWQgd2hlbiAiCisjfCAiYnVpbGRpbmcuXG4iCisjfCAiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFsbG93ZWQgdHlwZXM6IGd6aXAsIHh6LCBiemlwMiwgIgorI3wgImx6bWEsIG5vbmUuXG4iCisjfCAiXG4iCittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLXNob3dmb3JtYXQ9PGZvcm1hdD4gICAgICAgICAgICBVc2UgYWx0ZXJuYXRpdmUgZm9ybWF0IGZvciAtLXNob3cuXG4iCisiICAtdiwgLS12ZXJib3NlICAgICAgICAgICAgICAgICAgICBFbmFibGUgdmVyYm9zZSBvdXRwdXQuXG4iCisiICAtRCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbmFibGUgZGVidWdnaW5nIG91dHB1dC5cbiIKKyIgIC0tb2xkLCAtLW5ldyAgICAgICAgICAgICAgICAgICAgIFNlbGVjdCBhcmNoaXZlIGZvcm1hdC5cbiIKKyIgIC0tbm9jaGVjayAgICAgICAgICAgICAgICAgICAgICAgIFN1cHByZXNzIGNvbnRyb2wgZmlsZSBjaGVjayAoYnVpbGQgYmFkXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhY2thZ2VzKS5cbiIKKyIgIC16IyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNldCB0aGUgY29tcHJlc3Npb24gbGV2ZWwgd2hlbiBidWlsZGluZy5cbiIKKyIgIC1aPHR5cGU+ICAgICAgICAgICAgICAgICAgICAgICAgIFNldCB0aGUgY29tcHJlc3Npb24gdHlwZSB1c2VkIHdoZW4gIgorImJ1aWxkaW5nLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBbGxvd2VkIHR5cGVzOiBnemlwLCB4eiwgYnppcDIsIGx6bWEsICIKKyJub25lLlxuIgorIlxuIgorbXNnc3RyICIiCisiT3DDp8O1ZXM6XG4iCisiICAtLXNob3dmb3JtYXQ9PGZvcm1hdG8+ICAgICAgICAgICBVc2FyIGZvcm1hdG8gYWx0ZXJuYXRpdm8gcGFyYSAtLXNob3cuXG4iCisiICAtRCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBIYWJpbGl0YXIgc2HDrWRhIGRlIGRlYnVnLlxuIgorIiAgLS1vbGQsIC0tbmV3ICAgICAgICAgICAgICAgICAgICAgRXNjb2xoZXIgZm9ybWF0byBkbyBhcnF1aXZvLlxuIgorIiAgLS1ub2NoZWNrICAgICAgICAgICAgICAgICAgICAgICAgU3VwcmltaXIgdmVyaWZpY2HDp8OjbyBkbyBhcnF1aXZvIGNvbnRyb2xvXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNvbnN0cnVpciBwYWNvdGVzIG1hbC1mb3JtYWRvcykuXG4iCisiICAteiMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBEZWZpbmlyIG8gbsOtdmVsIGRlIGNvbXByZXNzw6NvIHBhcmEgYSAiCisiY29tcGlsYcOnw6NvLlxuIgorIiAgLVo8dGlwbz4gICAgICAgICAgICAgICAgICAgICAgICAgRGVmaW5pciBvIHRpcG8gZGUgY29tcHJlc3PDo28gdXRpbGl6YWRvIGFvICIKKyJjb21waWxhci5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVGlwb3MgcGVybWl0aWRvczogZ3ppcCwgeHosIGJ6aXAyLCAiCisibHptYSwgbmVuaHVtYS5cbiIKKyJcbiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjEyMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiVXNlIGBkcGtnJyB0byBpbnN0YWxsIGFuZCByZW1vdmUgcGFja2FnZXMgZnJvbSB5b3VyIHN5c3RlbSwgb3JcbiIKKyJgZHNlbGVjdCcgb3IgYGFwdGl0dWRlJyBmb3IgdXNlci1mcmllbmRseSBwYWNrYWdlIG1hbmFnZW1lbnQuICBQYWNrYWdlc1xuIgorInVucGFja2VkIHVzaW5nIGBkcGtnLWRlYiAtLWV4dHJhY3QnIHdpbGwgYmUgaW5jb3JyZWN0bHkgaW5zdGFsbGVkICFcbiIKK21zZ3N0ciAiIgorIlxuIgorIlVzZSBgZHBrZycgcGFyYSBpbnN0YWxhciBlIHJlbW92ZXIgcGFjb3RlcyBkbyBzZXUgc2lzdGVtYSwgb3UgYGRzZWxlY3QnXG4iCisib3UgYGFwdGl0dWRlJyBwYXJhIHVtYSBnZXN0w6NvIGRlIHBhY290ZXMgdXNlci1mcmllbmRseS4gUGFjb3Rlc1xuIgorImRlc2NvbXBhY3RhZG9zIGNvbSBgZHBrZy1kZWIgLS1leHRyYWN0JyBzZXLDo28gaW5jb3JyZWN0YW1lbnRlIGluc3RhbGFkb3MgIVxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTMyCittc2dpZCAiIgorIlR5cGUgZHBrZy1kZWIgLS1oZWxwIGZvciBoZWxwIGFib3V0IG1hbmlwdWxhdGluZyAqLmRlYiBmaWxlcztcbiIKKyJUeXBlIGRwa2cgLS1oZWxwIGZvciBoZWxwIGFib3V0IGluc3RhbGxpbmcgYW5kIGRlaW5zdGFsbGluZyBwYWNrYWdlcy4iCittc2dzdHIgIiIKKyJFc2NyZXZhIGRwa2ctZGViIC0taGVscCBwYXJhIGFqdWRhIHNvYnJlIG1hbmlwdWxhw6fDo28gZGUgZmljaGVpcm9zICouZGViO1xuIgorIkVzY3JldmEgZHBrZyAtLWhlbHAgcGFyYSBhanVkYSBzb2JyZSBpbnN0YWxhciBlIGRlc2luc3RhbGFyIHBhY290ZXMuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTQ4CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgaW50ZWdlciBmb3IgLSVjOiAnJS4yNTBzJyIKK21zZ3N0ciAibsO6bWVybyBpbnRlaXJvIGludsOhbGlkbyBwYXJhIC0lYzogJyUuMjUwcyciCisKKyM6IGRwa2ctZGViL21haW4uYzoxNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjb21wcmVzc2lvbiBsZXZlbCBmb3IgLSVjOiAlbGQnIgorbXNnc3RyICJuw612ZWwgZGUgY29tcHJlc3PDo28gaW52w6FsaWRvIHBhcmEgLSVjOiAlbGQnIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTYxCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gY29tcHJlc3Npb24gdHlwZSBgJXMnISIKK21zZ3N0ciAiY29tcHJlc3PDo28gZGVzY29uaGVjaWRhIHRpcG8gYCVzJyEiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjUyCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBkaWdpdCAoY29kZSAlZCkgaW4gJXMiCittc2dzdHIgIm8gZmljaGVpcm8gYCUuMjUwcycgZXN0w6EgY29ycm9tcGlkbyAtIGTDrWdpdG8gZXJyYWRvIChjw7NkaWdvICVkKSBlbSAlcyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gJS4yNTBzIG1pc3NpbmciCittc2dzdHIgIm8gZmljaGVpcm8gYCUuMjUwcycgZXN0w6EgY29ycm9tcGlkbyAtICUuMjUwcyBlbSBmYWx0YSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gbWlzc2luZyBuZXdsaW5lIGFmdGVyICUuMjUwcyIKK21zZ3N0ciAibyBmaWNoZWlybyBgJS4yNTBzJyBlc3TDoSBjb3Jyb21waWRvIC0gZmFsdGEgbmV3bGluZSBhcMOzcyAlLjI1MHMiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjg5IGRwa2ctc3BsaXQvbWFpbi5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciByZWFkaW5nICUuMjUwcyIKK21zZ3N0ciAiZXJybyBhbyBsZXIgJS4yNTBzIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIG1hZ2ljIGF0IGVuZCBvZiBmaXJzdCBoZWFkZXIiCittc2dzdHIgIiIKKyJvIGZpY2hlaXJvICclLjI1MHMnIGVzdMOhIGNvcnJvbXBpZG8gLSBtYWdpYyBlcnJhZG8gbm8gZmluYWwgZG8gcHJpbWVpcm8gIgorImNhYmXDp2FsaG8iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjExMworIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgcGFkZGluZyBjaGFyYWN0ZXIgKGNvZGUgJWQpIgorbXNnc3RyICIiCisibyBmaWNoZWlybyBgJTI1MHMnIGVzdMOhIGNvcnJvbXBpZG8gLSBjYXJhY3RlcmUgZGUgZW5jaGltZW50byBlcnJhZG8gKGPDs2RpZ28gIgorIiglZCkiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjExNworIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBudWxscyBpbiBpbmZvIHNlY3Rpb24iCittc2dzdHIgIm8gZmljaGVpcm8gYCUuMjUwcycgZXN0w6EgY29ycm9tcGlkbyAtIG51bG9zIG5hIHNlY8Onw6NvIGluZm8iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyMgorbXNnaWQgImZvcm1hdCB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAiZm9ybWF0byBkbyBuw7ptZXJvIGRlIHZlcnPDo28iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGZvcm1hdCB2ZXJzaW9uIGAlLjI1MHMnIC0geW91IG5lZWQgYSBuZXdlciBkcGtnLXNwbGl0IgorbXNnc3RyICIiCisibyBmaWNoZWlybyBgJS4yNTBzJyBlc3TDoSBubyBmb3JtYXRvIHZlcnPDo28gYCUuMjUwcycgLSB2b2PDqiBuZWNlc3NpdGEgZGUgdW0gIgorImRwa2ctc3BsaXQgbWFpcyByZWNlbnRlIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMjcKK21zZ2lkICJwYWNrYWdlIG5hbWUiCittc2dzdHIgIm5vbWUgZGUgcGFjb3RlICIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTI4Cittc2dpZCAicGFja2FnZSB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAibsO6bWVybyBkYSB2ZXJzw6NvIGRlIHBhY290ZSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTI5Cittc2dpZCAicGFja2FnZSBmaWxlIE1ENSBjaGVja3N1bSIKK21zZ3N0ciAidmFsb3IgZGUgY29udHJvbG8gTUQ1IGRvIGZpY2hlaXJvIGRlIHBhY290ZSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTMyCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBNRDUgY2hlY2tzdW0gYCUuMjUwcyciCittc2dzdHIgIm8gZmljaGVpcm8gYCUuMjUwcycgZXN0w6EgY29ycm9tcGlkbyAtIGNoZWNrc3VtIE1ENSBlcnJhZG8gYCUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEzNCBkcGtnLXNwbGl0L2luZm8uYzoxMzUKK21zZ2lkICJhcmNoaXZlIHRvdGFsIHNpemUiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTM2IGRwa2ctc3BsaXQvaW5mby5jOjEzNworIywgZnV6enkKKyN8IG1zZ2lkICJwYXJ0IG9mZnNldCIKK21zZ2lkICJhcmNoaXZlIHBhcnQgb2Zmc2V0IgorbXNnc3RyICJvZmZzZXQiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEzOQorIywgZnV6enkKKyN8IG1zZ2lkICJwYXJ0IG51bWJlcnMiCittc2dpZCAiYXJjaGl2ZSBwYXJ0IG51bWJlcnMiCittc2dzdHIgIm7Dum1lcm9zIGRlIHBlw6dhIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIG5vIHNsYXNoIGJldHdlZW4gcGFydCBudW1iZXJzIgorbXNnaWQgImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIG5vIHNsYXNoIGJldHdlZW4gYXJjaGl2ZSBwYXJ0IG51bWJlcnMiCittc2dzdHIgIiIKKyJvIGZpY2hlaXJvIGAlLjI1MHMnIGVzdMOhIGNvcnJvbXBpZG8gLSBzZW0gYmFycmEgZW50cmUgbsO6bWVyb3MgZGUgcGFydGVzIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDUKKyMsIGZ1enp5CisjfCBtc2dpZCAibnVtYmVyIG9mIHBhcnRzIgorbXNnaWQgIm51bWJlciBvZiBhcmNoaXZlIHBhcnRzIgorbXNnc3RyICJuw7ptZXJvIGRlIHBhcnRlcyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTQ3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgbnVtYmVyIG9mIHBhcnRzIgorbXNnaWQgImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBudW1iZXIgb2YgYXJjaGl2ZSBwYXJ0cyIKK21zZ3N0ciAibyBmaWNoZWlybyAnJS4yNTBzJyBlc3TDoSBjb3Jyb21waWRvIC0gbsO6bWVybyBkZSBwYXJ0ZXMgZXJyYWRvIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDkKKyMsIGZ1enp5CisjfCBtc2dpZCAicGFydHMgbnVtYmVyIgorbXNnaWQgImFyY2hpdmUgcGFydHMgbnVtYmVyIgorbXNnc3RyICJuw7ptZXJvIGRhIHBhcnRlIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBwYXJ0IG51bWJlciIKK21zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgYXJjaGl2ZSBwYXJ0IG51bWJlciIKK21zZ3N0ciAibyBmaWNoZWlybyBgJS4yNTBzJyBlc3TDoSBjb3Jyb21waWRvIC0gbsO6bWVybyBkZSBwYXJ0ZSBlcnJhZG8iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE1NworIywgZnV6enkKKyN8IG1zZ2lkICJwYWNrYWdlIG5hbWUiCittc2dpZCAicGFja2FnZSBhcmNoaXRlY3R1cmUiCittc2dzdHIgIm5vbWUgZGUgcGFjb3RlICIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTY2CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBtYWdpYyBhdCBlbmQgb2Ygc2Vjb25kIGhlYWRlciIKK21zZ3N0ciAiIgorIm8gZmljaGVpcm8gYCUuMjUwcyBlc3TDoSBjb3Jyb21waWRvIC0gbWFnaWMgZXJyYWRvIG5vIGZpbSBkbyBzZWd1bmRvIGNhYmXDp2FsaG8iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE2OAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBzZWNvbmQgbWVtYmVyIGlzIG5vdCBkYXRhIG1lbWJlciIKK21zZ3N0ciAiIgorIm8gZmljaGVpcm8gYCUuMjUwcycgZXN0w6EgY29ycm9tcGlkbyAtIG8gc2VndW5kbyBtZW1icm8gbsOjbyDDqSB1bSBtZW1icm8gZGUgIgorImRhZG9zIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gd3JvbmcgbnVtYmVyIG9mIHBhcnRzIGZvciBxdW90ZWQgc2l6ZXMiCittc2dzdHIgIiIKKyJvIGZpY2hlaXJvIGAlLjI1MHMnIGVzdMOhIGNvcnJvbXBpZG8gLSBuw7ptZXJvIGVycmFkbyBkZSBwYXJ0ZXMgcGFyYSBvcyAiCisidGFtYW5ob3MgY2l0YWRvcyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTc4CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIHNpemUgaXMgd3JvbmcgZm9yIHF1b3RlZCBwYXJ0IG51bWJlciIKK21zZ3N0ciAiIgorIm8gZmljaGVpcm8gYCUyNTBzJyBlc3TDoSBjb3Jyb21waWRvIC0gbyB0YW1hbmhvIGVzdMOhIGVycmFkbyBwYXJhIG8gbsO6bWVybyBkYSAiCisicGFydGUgY2l0YWRvIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxODQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZzdGF0IHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiTsOjbyBmb2kgcG9zc8OtdmVsIGZhemVyIGZzdGF0IMOgIHBhcnRlIGRvIGZpY2hlaXJvIGAlLjI1MHMnIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gdG9vIHNob3J0IgorbXNnc3RyICJvIGZpY2hlaXJvIGAlLjI1MHMnIGVzdMOhIGNvcnJvbXBpZG8gLSBkZW1hc2lhZG8gcGVxdWVubyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjAyIGRwa2ctc3BsaXQvaW5mby5jOjI0OQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgb3BlbiBhcmNoaXZlIHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibsOjbyBwb2RlIGFicmlyIGZpY2hlaXJvIGRlIHBhcnRlIGRlIGFycXVpdm8gYCUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjIwNAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIG5vdCBhbiBhcmNoaXZlIHBhcnQiCittc2dzdHIgIm8gZmljaGVpcm8gYCUyNTBzJyBuw6NvIMOpIHVtYSBwYXJ0ZSBkZSBhcnF1aXZvIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyMDkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIlczpcbiIKKyN8ICIgICAgUGFydCBmb3JtYXQgdmVyc2lvbjogICAgICAgICAgICAlc1xuIgorI3wgIiAgICBQYXJ0IG9mIHBhY2thZ2U6ICAgICAgICAgICAgICAgICVzXG4iCisjfCAiICAgICAgICAuLi4gdmVyc2lvbjogICAgICAgICAgICAgICAgJXNcbiIKKyN8ICIgICAgICAgIC4uLiBNRDUgY2hlY2tzdW06ICAgICAgICAgICAlc1xuIgorI3wgIiAgICAgICAgLi4uIGxlbmd0aDogICAgICAgICAgICAgICAgICVsdSBieXRlc1xuIgorI3wgIiAgICAgICAgLi4uIHNwbGl0IGV2ZXJ5OiAgICAgICAgICAgICVsdSBieXRlc1xuIgorI3wgIiAgICBQYXJ0IG51bWJlcjogICAgICAgICAgICAgICAgICAgICVkLyVkXG4iCisjfCAiICAgIFBhcnQgbGVuZ3RoOiAgICAgICAgICAgICAgICAgICAgJXppIGJ5dGVzXG4iCisjfCAiICAgIFBhcnQgb2Zmc2V0OiAgICAgICAgICAgICAgICAgICAgJWx1IGJ5dGVzXG4iCisjfCAiICAgIFBhcnQgZmlsZSBzaXplICh1c2VkIHBvcnRpb24pOiAgJWx1IGJ5dGVzXG4iCisjfCAiXG4iCittc2dpZCAiIgorIiVzOlxuIgorIiAgICBQYXJ0IGZvcm1hdCB2ZXJzaW9uOiAgICAgICAgICAgICVzXG4iCisiICAgIFBhcnQgb2YgcGFja2FnZTogICAgICAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiB2ZXJzaW9uOiAgICAgICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIGFyY2hpdGVjdHVyZTogICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gTUQ1IGNoZWNrc3VtOiAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiBsZW5ndGg6ICAgICAgICAgICAgICAgICAlamQgYnl0ZXNcbiIKKyIgICAgICAgIC4uLiBzcGxpdCBldmVyeTogICAgICAgICAgICAlamQgYnl0ZXNcbiIKKyIgICAgUGFydCBudW1iZXI6ICAgICAgICAgICAgICAgICAgICAlZC8lZFxuIgorIiAgICBQYXJ0IGxlbmd0aDogICAgICAgICAgICAgICAgICAgICVqZCBieXRlc1xuIgorIiAgICBQYXJ0IG9mZnNldDogICAgICAgICAgICAgICAgICAgICVqZCBieXRlc1xuIgorIiAgICBQYXJ0IGZpbGUgc2l6ZSAodXNlZCBwb3J0aW9uKTogICVqZCBieXRlc1xuIgorIlxuIgorbXNnc3RyICIiCisiJXM6XG4iCisiICAgIFZlcnPDo28gZG8gZm9ybWF0byBwYXJ0ZTogICAgICAgICVzXG4iCisiICAgIFBhcnRlIGRvIHBhY290ZTogICAgICAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiB2ZXJzw6NvOiAgICAgICAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiBNRDUgY2hlY2tzdW06ICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIHRhbWFuaG86ICAgICAgICAgICAgICAgICVsdSBieXRlc1xuIgorIiAgICAgICAgLi4uIGRpdmlkbyBhIGNhZGE6ICAgICAgICAgICVsdSBieXRlc1xuIgorIiAgICBOw7ptZXJvIGRlIHBhcnRlOiAgICAgICAgICAgICAgICAlZC8lZFxuIgorIiAgICBUYW1hbmhvIGRhIHBhcnRlOiAgICAgICAgICAgICAgICV6aSBieXRlc1xuIgorIiAgICBPZmZzZXQgZGEgcGFydGU6ICAgICAgICAgICAgICAgICVsdSBieXRlc1xuIgorIiAgICBUYW0uIHBhcnRlIGZpY2guKHBvcsOnw6NvIHVzYWRhKTogJWx1IGJ5dGVzXG4iCisiXG4iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjIyNQorIywgZnV6enkKKyN8IG1zZ2lkICI8dW5rbm93bj4iCittc2djdHh0ICJhcmNoaXRlY3R1cmUiCittc2dpZCAiPHVua25vd24+IgorbXNnc3RyICI8ZGVzY29uaGVjaWRvPiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjQ0IGRwa2ctc3BsaXQvam9pbi5jOjEwNQorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIHJlcXVpcmVzIG9uZSBvciBtb3JlIHBhcnQgZmlsZSBhcmd1bWVudHMiCittc2dzdHIgIi0tJXMgbmVjZXNzaXRhIGRlIHVtIG91IG1haXMgYXJndW1lbnRvcyBkZSBwYXJ0ZXMgZGUgZmljaGVpcm8iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjI1NQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlcycgaXMgbm90IGFuIGFyY2hpdmUgcGFydFxuIgorbXNnc3RyICJvIGZpY2hlaXJvIGAlcycgbsOjbyDDqSB1bWEgcGFydGUgZGUgYXJxdWl2b1xuIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo0NAorIywgYy1mb3JtYXQKK21zZ2lkICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0OiAiCittc2dpZF9wbHVyYWwgIlB1dHRpbmcgcGFja2FnZSAlcyB0b2dldGhlciBmcm9tICVkIHBhcnRzOiAiCittc2dzdHJbMF0gIkEgZm9ybWFyIG8gcGFjb3RlICVzIGNvbSAlZCBwYXJ0ZTogIgorbXNnc3RyWzFdICJBIGZvcm1hciBvIHBhY290ZSAlcyBjb20gJWQgcGFydGVzOiAiCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjUxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIG91dHB1dCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuw6NvIGZvaSBwb3Nzw612ZWwgYWJyaXIgbyBmaWNoZWlybyBkZSBzYcOtZGEgYCUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjU3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byAocmUpb3BlbiBpbnB1dCBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm7Do28gZm9pIHBvc3PDrXZlbCAocmUpYWJyaXIgZmljaGVpcm8gZGUgZW50cmFkYSBkZSBwYXJ0ZSBgJS4yNTBzJyIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NTgKKyMsIGZ1enp5CisjfCBtc2dpZCAiU2tpcHBpbmcgZGVzZWxlY3RlZCBwYWNrYWdlICVzLlxuIgorbXNnaWQgInNraXBwaW5nIHNwbGl0IHBhY2thZ2UgaGVhZGVyIgorbXNnc3RyICJBIHBhc3NhciDDoCBmcmVudGUgZG8gcGFjb3RlIG7Do28gc2VsZWNjaW9uYWRvICVzLlxuIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1OQorIywgZnV6enkKKyN8IG1zZ2lkICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0OiAiCisjfCBtc2dpZF9wbHVyYWwgIlB1dHRpbmcgcGFja2FnZSAlcyB0b2dldGhlciBmcm9tICVkIHBhcnRzOiAiCittc2dpZCAic3BsaXQgcGFja2FnZSBwYXJ0IgorbXNnc3RyICJBIGZvcm1hciBvIHBhY290ZSAlcyBjb20gJWQgcGFydGU6ICIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NjkgZHBrZy1zcGxpdC9zcGxpdC5jOjIzNworIywgYy1mb3JtYXQKK21zZ2lkICJkb25lXG4iCittc2dzdHIgImZlaXRvXG4iCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjg1CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGVzIGAlLjI1MHMnIGFuZCBgJS4yNTBzJyBhcmUgbm90IHBhcnRzIG9mIHRoZSBzYW1lIGZpbGUiCittc2dzdHIgIm9zIGZpY2hlaXJvcyBgJS4yNTBzJyBlIGAlLjI1MHMnIG7Do28gc8OjbyBwYXJ0ZXMgZG8gbWVzbW8gZmljaGVpcm8iCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjkwCisjLCBjLWZvcm1hdAorbXNnaWQgInRoZXJlIGFyZSBzZXZlcmFsIHZlcnNpb25zIG9mIHBhcnQgJWQgLSBhdCBsZWFzdCBgJS4yNTBzJyBhbmQgYCUuMjUwcyciCittc2dzdHIgImV4aXN0ZW0gZGl2ZXJzYXMgdmVyc8O1ZXMgZGEgcGFydGUgJWQgLSBwZWxvIG1lbm9zIGAlLjI1MHMnIGUgYCUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjEyOAorIywgYy1mb3JtYXQKK21zZ2lkICJwYXJ0ICVkIGlzIG1pc3NpbmciCittc2dzdHIgImZhbHRhIGEgcGFydGUgJWQiCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjQ3CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiBgJXMnIHBhY2thZ2Ugc3BsaXQvam9pbiB0b29sOyB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICJEZWJpYW4gYCVzJyBmZXJyYW1lbnRhIHBhcmEgZGl2aWRpci9qdW50YXIgcGFjb3RlczsgdmVyc8OjbyAlcy5cbiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ29weXJpZ2h0IChDKSAxOTk0LTE5OTYgSWFuIEphY2tzb24uXG4iCittc2dzdHIgIkNvcHlyaWdodCAoQykgMTk5NC0xOTk2IElhbiBKYWNrc29uLlxuIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo2NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtc3wtLXNwbGl0IDxmaWxlPiBbPHByZWZpeD5dICAgICBTcGxpdCBhbiBhcmNoaXZlLlxuIgorIiAgLWp8LS1qb2luIDxwYXJ0PiA8cGFydD4gLi4uICAgICAgSm9pbiBwYXJ0cyB0b2dldGhlci5cbiIKKyIgIC1JfC0taW5mbyA8cGFydD4gLi4uICAgICAgICAgICAgIERpc3BsYXkgaW5mbyBhYm91dCBhIHBhcnQuXG4iCisiICAtYXwtLWF1dG8gLW8gPGNvbXBsZXRlPiA8cGFydD4gICBBdXRvLWFjY3VtdWxhdGUgcGFydHMuXG4iCisiICAtbHwtLWxpc3RxICAgICAgICAgICAgICAgICAgICAgICBMaXN0IHVubWF0Y2hlZCBwaWVjZXMuXG4iCisiICAtZHwtLWRpc2NhcmQgWzxmaWxlbmFtZT4gLi4uXSAgICBEaXNjYXJkIHVubWF0Y2hlZCBwaWVjZXMuXG4iCisiXG4iCittc2dzdHIgIiIKKyIgIC1zfC0tc3BsaXQgPGZpY2hlaXJvPiBbPHByZWZpeG8+XURpdmlkaXIgdW0gYXJxdWl2by5cbiIKKyIgIC1qfC0tam9pbiA8cGFydGU+IDxwYXJ0ZT4gLi4uICAgIFVuaXIgcGFydGVzLlxuIgorIiAgLUl8LS1pbmZvIDxwYXJ0ZT4gLi4uICAgICAgICAgICAgTW9zdHJhciBpbmZvcm1hw6fDo28gc29icmUgcGFydGUuXG4iCisiICAtYXwtLWF1dG8gLW8gPGNvbXBsZXRvPiA8cGFydGU+ICBBdXRvLWFjdW11bGFyIHBhcnRlcy5cbiIKKyIgIC1sfC0tbGlzdHEgICAgICAgICAgICAgICAgICAgICAgIExpc3RhciBib2NhZG9zIHNlbSBjb3JyZXNwb25kw6puY2lhLlxuIgorIiAgLWR8LS1kaXNjYXJkIFs8ZmljaGVpcm8+IC4uLl0gICAgRGVzY2FydGFyIGJvY2Fkb3Mgc2VtIGNvcnJlc3BvbmTDqm5jaWEuXG4iCisiXG4iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjgyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiT3B0aW9uczpcbiIKKyN8ICIgIC0tZGVwb3RkaXIgPGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLyVzLlxuIgorI3wgIiAgLVN8LS1wYXJ0c2l6ZSA8c2l6ZT4gICAgICAgICAgICAgSW4gS2lCLCBmb3IgLXMgKGRlZmF1bHQgaXMgNDUwKS5cbiIKKyN8ICIgIC1vfC0tb3V0cHV0IDxmaWxlPiAgICAgICAgICAgICAgIEZvciAtaiAoZGVmYXVsdCBpcyA8cGFja2FnZT4tPHZlcnNpb24+LiIKKyN8ICJkZWIpLlxuIgorI3wgIiAgLVF8LS1ucHF1aWV0ICAgICAgICAgICAgICAgICAgICAgQmUgcXVpZXQgd2hlbiAtYSBpcyBub3QgYSBwYXJ0LlxuIgorI3wgIiAgLS1tc2RvcyAgICAgICAgICAgICAgICAgICAgICAgICAgR2VuZXJhdGUgOC4zIGZpbGVuYW1lcy5cbiIKKyN8ICJcbiIKKyN8ICJFeGl0IHN0YXR1czogMCA9IE9LOyAgMSA9IC1hIGlzIG5vdCBhIHBhcnQ7ICAyID0gdHJvdWJsZSFcbiIKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tZGVwb3RkaXIgPGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLyVzLlxuIgorIiAgLVN8LS1wYXJ0c2l6ZSA8c2l6ZT4gICAgICAgICAgICAgSW4gS2lCLCBmb3IgLXMgKGRlZmF1bHQgaXMgNDUwKS5cbiIKKyIgIC1vfC0tb3V0cHV0IDxmaWxlPiAgICAgICAgICAgICAgIEZpbGVuYW1lLCBmb3IgLWogKGRlZmF1bHQgaXNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhY2thZ2U+Xzx2ZXJzaW9uPl88YXJjaD4uZGViKS5cbiIKKyIgIC1RfC0tbnBxdWlldCAgICAgICAgICAgICAgICAgICAgIEJlIHF1aWV0IHdoZW4gLWEgaXMgbm90IGEgcGFydC5cbiIKKyIgIC0tbXNkb3MgICAgICAgICAgICAgICAgICAgICAgICAgIEdlbmVyYXRlIDguMyBmaWxlbmFtZXMuXG4iCisiXG4iCittc2dzdHIgIiIKKyJPcMOnw7VlczpcbiIKKyIgIC0tZGVwb3RkaXIgPGRpcmVjdMOzcmlvPiAgICAgICAgICBVc2FyIDxkaXJlY3TDs3Jpbz4gZW0gdmV6IGRlICVzLyVzLlxuIgorIiAgLVN8LS1wYXJ0c2l6ZSA8dGFtYW5obz4gICAgICAgICAgRW0gS2lCLCBwYXJhIC1zIChwb3Igb21pc3PDo28gw6kgNDUwKS5cbiIKKyIgIC1vfC0tb3V0cHV0IDxmaWNoZWlybz4gICAgICAgICAgIFBhcmEgLWogKG9taXNzw6NvIMOpIDxwYWNvdGU+LTx2ZXJzw6NvPi4iCisiZGViKVxuIgorIiAgLVF8LS1ucHF1aWV0ICAgICAgICAgICAgICAgICAgICAgU2lsZW5jaW9zbyBxdWFuZG8gLWEgbsOjbyBmb3IgdW1hIHBhcnRlLlxuIgorIiAgLS1tc2RvcyAgICAgICAgICAgICAgICAgICAgICAgICAgR2VyYXIgbm9tZXMgZGUgZmljaGVpcm9zIDguMi5cbiIKKyJcbiIKKyJFc3RhZG8gZGUgc2HDrWRhOiAwID0gT0s7ICAxID0gLWEgbsOjbyDDqSB1bWEgcGFydGU7ICAyID0gcHJvYmxlbWEhXG4iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjkyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJFeGl0IHN0YXR1czpcbiIKKyIgIDAgPSBva1xuIgorIiAgMSA9IHdpdGggLS1hdXRvLCBmaWxlIGlzIG5vdCBhIHBhcnRcbiIKKyIgIDIgPSB0cm91YmxlXG4iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6MTAzCittc2dpZCAiVHlwZSBkcGtnLXNwbGl0IC0taGVscCBmb3IgaGVscC4iCittc2dzdHIgIkVzY3JldmEgZHBrZy1zcGxpdCAtLWhlbHAgcGFyYSBhanVkYS4iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjExNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBmaWxlIGluICUuMjUwcyIKK21zZ3N0ciAiZmltIGRlIGZpY2hlaXJvIGluZXNwZXJhZG8gZW0gJS4yNTBzIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMjYKK21zZ2lkICJwYXJ0IHNpemUgaXMgZmFyIHRvbyBsYXJnZSBvciBpcyBub3QgcG9zaXRpdmUiCittc2dzdHIgIm8gdGFtYW5obyBkYSBwYXJ0ZSBvdSDDqSBtdWl0byBncmFuZGUgb3UgbsOjbyDDqSBwb3NpdGl2byIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6MTMwCisjLCBjLWZvcm1hdAorbXNnaWQgInBhcnQgc2l6ZSBtdXN0IGJlIGF0IGxlYXN0ICVkIEtpQiAodG8gYWxsb3cgZm9yIGhlYWRlcikiCittc2dzdHIgIiIKKyJvIHRhbWFuaG8gZGEgcGFydGUgdGVtIGRlIHNlciBwZWxvIG1lbm9zICVkIEtpQiAocGFyYSBwZXJtaXRpciBvIGNhYmXDp2FsaG8pIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgZGVwb3QgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICJuw6NvIGZvaSBwb3Nzw612ZWwgbGVyIG8gZGlyZWN0w7NyaW8gZGVwb3QgYCUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxMzQKK21zZ2lkICItLWF1dG8gcmVxdWlyZXMgdGhlIHVzZSBvZiB0aGUgLS1vdXRwdXQgb3B0aW9uIgorbXNnc3RyICItLWF1dG8gbmVjZXNzaXRhIGRhIHV0aWxpemHDp8OjbyBkYSBvcMOnw6NvIC0tb3V0cHV0IgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTM2Cittc2dpZCAiLS1hdXRvIHJlcXVpcmVzIGV4YWN0bHkgb25lIHBhcnQgZmlsZSBhcmd1bWVudCIKK21zZ3N0ciAiLS1hdXRvIG5lY2Vzc2l0YSBleGFjdGFtZW50ZSBkZSB1bSBmaWNoZWlybyBkZSBwYXJ0ZSBjb21vIGFyZ3VtZW50byIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE0MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm7Do28gZm9pIHBvc3PDrXZlbCBsZXIgbyBmaWNoZWlybyBkZSBwYXJ0ZSBgJS4yNTBzJyIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE0MworIywgYy1mb3JtYXQKK21zZ2lkICJGaWxlIGAlLjI1MHMnIGlzIG5vdCBwYXJ0IG9mIGEgbXVsdGlwYXJ0IGFyY2hpdmUuXG4iCittc2dzdHIgIk8gZmljaGVpcm8gYCUuMjUwcycgbsOjbyBmYXogcGFydGUgZGUgdW0gYXJxdWl2byBkZSB2w6FyaWFzIHBhcnRlcy5cbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE3OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVvcGVuIHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibsOjbyBmb2kgcG9zc8OtdmVsIHJlLWFicmlyIGZpY2hlaXJvIGRpdmlkaWRvIGAlLjI1MHMnIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTgyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIG5ldyBkZXBvdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuw6NvIGZvaSBwb3Nzw612ZWwgYWJyaXIgbm92byBmaWNoZWlybyBkZXBvdCBgJS4yNTBzJyIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE4NAorbXNnaWQgImV4dHJhY3Rpbmcgc3BsaXQgcGFydCIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTkyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW5hbWUgbmV3IGRlcG90IGZpbGUgYCUuMjUwcycgdG8gYCUuMjUwcyciCittc2dzdHIgIm7Do28gZm9pIHBvc3PDrXZlbCByZW5vbWVhciBvIG5vdm8gZmljaGVpcm8gZGVwb3QgYCUuMjUwcycgcGFyYSBgJS4yNTBzJyIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE5NgorIywgYy1mb3JtYXQKK21zZ2lkICJQYXJ0ICVkIG9mIHBhY2thZ2UgJXMgZmlsZWQgKHN0aWxsIHdhbnQgIgorbXNnc3RyICJQYXJ0ZSAlZCBkbyBwYWNvdGUgJXMgYXJxdWl2YWRhIChhaW5kYSBxdWVyICIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjIwMAorbXNnaWQgIiBhbmQgIgorbXNnc3RyICIgZSAiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSB1c2VkLXVwIGRlcG90IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm7Do28gZm9pIHBvc3PDrXZlbCBhcGFnYXIgZmljaGVpcm8gZGVwb3QgdXRpbGl6YWRvIGVtIGNpbWEgYCUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyMzUKK21zZ2lkICJKdW5rIGZpbGVzIGxlZnQgYXJvdW5kIGluIHRoZSBkZXBvdCBkaXJlY3Rvcnk6XG4iCittc2dzdHIgIkZpY2hlaXJvcyBkZSBsaXhvIGRlaXhhZG9zIG5vIGRpcmVjdMOzcmlvIGRlcG90OlxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjQwIGRwa2ctc3BsaXQvcXVldWUuYzoyNjkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgYCUuMjUwcyciCittc2dzdHIgIm7Do28gZm9pIHBvc3PDrXZlbCBmYXplciBzdGF0IGAlLjI1MHMnIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjQzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIgJXMgKCVsdSBieXRlcylcbiIKK21zZ2lkICIgJXMgKCVqZCBieXRlcylcbiIKK21zZ3N0ciAiICVzICglbHUgYnl0ZXMpXG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICVzIChub3QgYSBwbGFpbiBmaWxlKVxuIgorbXNnc3RyICIgJXMgKG7Do28gw6kgdW0gZmljaGVpcm8gY29tdW0pXG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNTAKK21zZ2lkICJQYWNrYWdlcyBub3QgeWV0IHJlYXNzZW1ibGVkOlxuIgorbXNnc3RyICJQYWNvdGVzIGFpbmRhIG7Do28gcmVmZWl0b3M6XG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIFBhY2thZ2UgJXM6IHBhcnQocykgIgorbXNnc3RyICIgUGFjb3RlICVzOiBwYXJ0ZShzKSAiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFydCBmaWxlIGAlLjI1MHMnIGlzIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgImZpY2hlaXJvIGRlIHBhcnRlIGAlLjI1MHMnIG7Do28gw6kgdW0gZmljaGVpcm8gY29tdW0iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNzgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIih0b3RhbCAlbHUgYnl0ZXMpXG4iCittc2dpZCAiKHRvdGFsICVqZCBieXRlcylcbiIKK21zZ3N0ciAiKHRvdGFsICVsdSBieXRlcylcbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjMwNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGlzY2FyZCBgJS4yNTBzJyIKK21zZ3N0ciAibsOjbyBmb2kgcG9zc8OtdmVsIGRlc2NhcnRhciBgJS4yNTBzJyIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjMwNQorIywgYy1mb3JtYXQKK21zZ2lkICJEZWxldGVkICVzLlxuIgorbXNnc3RyICJBcGFnYWRvICVzLlxuIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6NzAgZHBrZy1zcGxpdC9zcGxpdC5jOjc2IGRwa2ctc3BsaXQvc3BsaXQuYzo4MQorIywgZnV6enkKKyN8IG1zZ2lkICJkcGtnLWRlYiBmaWVsZCBleHRyYWN0aW9uIgorbXNnaWQgInBhY2thZ2UgZmllbGQgdmFsdWUgZXh0cmFjdGlvbiIKK21zZ3N0ciAiZXh0cmFjw6fDo28gZG8gY2FtcG8gZHBrZy1kZWIgIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTMxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIHNvdXJjZSBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuw6NvIGZvaSBwb3Nzw612ZWwgYWJyaXIgbyBmaWNoZWlybyBmb250ZSBgJS4yNTBzJyIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjEzMworbXNnaWQgInVuYWJsZSB0byBmc3RhdCBzb3VyY2UgZmlsZSIKK21zZ3N0ciAibsOjbyBmb2kgcG9zc8OtdmVsIGZhemVyIGZzdGF0IGFvIGZpY2hlaXJvIGZvbnRlIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTM1CisjLCBjLWZvcm1hdAorbXNnaWQgInNvdXJjZSBmaWxlIGAlLjI1MHMnIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgIm8gZmljaGVpcm8gZm9udGUgYCUuMjUwcycgbsOjbyDDqSB1bSBmaWNoZWlybyBzaW1wbGVzIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTUzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0OiAiCisjfCBtc2dpZF9wbHVyYWwgIlB1dHRpbmcgcGFja2FnZSAlcyB0b2dldGhlciBmcm9tICVkIHBhcnRzOiAiCittc2dpZCAiU3BsaXR0aW5nIHBhY2thZ2UgJXMgaW50byAlZCBwYXJ0OiAiCittc2dpZF9wbHVyYWwgIlNwbGl0dGluZyBwYWNrYWdlICVzIGludG8gJWQgcGFydHM6ICIKK21zZ3N0clswXSAiQSBmb3JtYXIgbyBwYWNvdGUgJXMgY29tICVkIHBhcnRlOiAiCittc2dzdHJbMV0gIkEgZm9ybWFyIG8gcGFjb3RlICVzIGNvbSAlZCBwYXJ0ZXM6ICIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjE5MworbXNnaWQgIiIKKyJIZWFkZXIgaXMgdG9vIGxvbmcsIG1ha2luZyBwYXJ0IHRvbyBsb25nLiBZb3VyIHBhY2thZ2UgbmFtZSBvciB2ZXJzaW9uXG4iCisibnVtYmVycyBtdXN0IGJlIGV4dHJhb3JkaW5hcmlseSBsb25nLCBvciBzb21ldGhpbmcuIEdpdmluZyB1cC5cbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MjQ5Cittc2dpZCAiLS1zcGxpdCBuZWVkcyBhIHNvdXJjZSBmaWxlbmFtZSBhcmd1bWVudCIKK21zZ3N0ciAiLS1zcGxpdCBuZWNlc3NpdGEgZGUgdW0gYXJndW1lbnRvIGRlIGZpY2hlaXJvIGZvbnRlIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MjUyCittc2dpZCAiLS1zcGxpdCB0YWtlcyBhdCBtb3N0IGEgc291cmNlIGZpbGVuYW1lIGFuZCBkZXN0aW5hdGlvbiBwcmVmaXgiCittc2dzdHIgIi0tc3BsaXQgbGV2YSBubyBtw6F4aW1vIHVtIGZpY2hlaXJvIGZvbnRlIGUgdW0gcHJlZml4byBkZSBkZXN0aW5vIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6ODQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAtMjAwMiBXaWNoZXJ0IEFra2VybWFuLlxuIgorIkNvcHlyaWdodCAoQykgMjAwOS0yMDEwIFJhcGhhZWwgSGVydHpvZy5cbiIKK21zZ3N0ciAiIgorIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAtMjAwMiBXaWNoZXJ0IEFra2VybWFuLlxuIgorIkNvcHlyaWdodCAoQykgMjAwOS0yMDEwIFJhcGhhZWwgSGVydHpvZy5cbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEwMQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSA8Y29tbWFuZD5cbiIKKyN8ICJcbiIKKyN8ICJDb21tYW5kczpcbiIKKyN8ICIgIC0taW5zdGFsbCA8bGluaz4gPG5hbWU+IDxwYXRoPiA8cHJpb3JpdHk+XG4iCisjfCAiICAgIFstLXNsYXZlIDxsaW5rPiA8bmFtZT4gPHBhdGg+XSAuLi5cbiIKKyN8ICIgICAgICAgICAgICAgICAgICAgICAgICAgICBhZGQgYSBncm91cCBvZiBhbHRlcm5hdGl2ZXMgdG8gdGhlIHN5c3RlbS5cbiIKKyN8ICIgIC0tcmVtb3ZlIDxuYW1lPiA8cGF0aD4gICByZW1vdmUgPHBhdGg+IGZyb20gdGhlIDxuYW1lPiBncm91cCAiCisjfCAiYWx0ZXJuYXRpdmUuXG4iCisjfCAiICAtLXJlbW92ZS1hbGwgPG5hbWU+ICAgICAgcmVtb3ZlIDxuYW1lPiBncm91cCBmcm9tIHRoZSBhbHRlcm5hdGl2ZXMgIgorI3wgInN5c3RlbS5cbiIKKyN8ICIgIC0tYXV0byA8bmFtZT4gICAgICAgICAgICBzd2l0Y2ggdGhlIG1hc3RlciBsaW5rIDxuYW1lPiB0byBhdXRvbWF0aWMgIgorI3wgIm1vZGUuXG4iCisjfCAiICAtLWRpc3BsYXkgPG5hbWU+ICAgICAgICAgZGlzcGxheSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgPG5hbWU+IGdyb3VwLlxuIgorI3wgIiAgLS1xdWVyeSA8bmFtZT4gICAgICAgICAgIG1hY2hpbmUgcGFyc2VhYmxlIHZlcnNpb24gb2YgLS1kaXNwbGF5ICIKKyN8ICI8bmFtZT4uXG4iCisjfCAiICAtLWxpc3QgPG5hbWU+ICAgICAgICAgICAgZGlzcGxheSBhbGwgdGFyZ2V0cyBvZiB0aGUgPG5hbWU+IGdyb3VwLlxuIgorI3wgIiAgLS1jb25maWcgPG5hbWU+ICAgICAgICAgIHNob3cgYWx0ZXJuYXRpdmVzIGZvciB0aGUgPG5hbWU+IGdyb3VwIGFuZCBhc2sgIgorI3wgInRoZVxuIgorI3wgIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzZXIgdG8gc2VsZWN0IHdoaWNoIG9uZSB0byB1c2UuXG4iCisjfCAiICAtLXNldCA8bmFtZT4gPHBhdGg+ICAgICAgc2V0IDxwYXRoPiBhcyBhbHRlcm5hdGl2ZSBmb3IgPG5hbWU+LlxuIgorI3wgIiAgLS1hbGwgICAgICAgICAgICAgICAgICAgIGNhbGwgLS1jb25maWcgb24gYWxsIGFsdGVybmF0aXZlcy5cbiIKKyN8ICJcbiIKKyN8ICI8bGluaz4gaXMgdGhlIHN5bWxpbmsgcG9pbnRpbmcgdG8gJXMvPG5hbWU+LlxuIgorI3wgIiAgKGUuZy4gL3Vzci9iaW4vcGFnZXIpXG4iCisjfCAiPG5hbWU+IGlzIHRoZSBtYXN0ZXIgbmFtZSBmb3IgdGhpcyBsaW5rIGdyb3VwLlxuIgorI3wgIiAgKGUuZy4gcGFnZXIpXG4iCisjfCAiPHBhdGg+IGlzIHRoZSBsb2NhdGlvbiBvZiBvbmUgb2YgdGhlIGFsdGVybmF0aXZlIHRhcmdldCBmaWxlcy5cbiIKKyN8ICIgIChlLmcuIC91c3IvYmluL2xlc3MpXG4iCisjfCAiPHByaW9yaXR5PiBpcyBhbiBpbnRlZ2VyOyBvcHRpb25zIHdpdGggaGlnaGVyIG51bWJlcnMgaGF2ZSBoaWdoZXIgIgorI3wgInByaW9yaXR5IGluXG4iCisjfCAiICBhdXRvbWF0aWMgbW9kZS5cbiIKKyN8ICJcbiIKKyN8ICJPcHRpb25zOlxuIgorI3wgIiAgLS1hbHRkaXIgPGRpcmVjdG9yeT4gICAgIGNoYW5nZSB0aGUgYWx0ZXJuYXRpdmVzIGRpcmVjdG9yeS5cbiIKKyN8ICIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICBjaGFuZ2UgdGhlIGFkbWluaXN0cmF0aXZlIGRpcmVjdG9yeS5cbiIKKyN8ICIgIC0tc2tpcC1hdXRvICAgICAgICAgICAgICBza2lwIHByb21wdCBmb3IgYWx0ZXJuYXRpdmVzIGNvcnJlY3RseSAiCisjfCAiY29uZmlndXJlZFxuIgorI3wgIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGluIGF1dG9tYXRpYyBtb2RlIChyZWxldmFudCBmb3IgLS1jb25maWcgIgorI3wgIm9ubHkpXG4iCisjfCAiICAtLXZlcmJvc2UgICAgICAgICAgICAgICAgdmVyYm9zZSBvcGVyYXRpb24sIG1vcmUgb3V0cHV0LlxuIgorI3wgIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHF1aWV0IG9wZXJhdGlvbiwgbWluaW1hbCBvdXRwdXQuXG4iCisjfCAiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyN8ICIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC0taW5zdGFsbCA8bGluaz4gPG5hbWU+IDxwYXRoPiA8cHJpb3JpdHk+XG4iCisiICAgIFstLXNsYXZlIDxsaW5rPiA8bmFtZT4gPHBhdGg+XSAuLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBhZGQgYSBncm91cCBvZiBhbHRlcm5hdGl2ZXMgdG8gdGhlIHN5c3RlbS5cbiIKKyIgIC0tcmVtb3ZlIDxuYW1lPiA8cGF0aD4gICByZW1vdmUgPHBhdGg+IGZyb20gdGhlIDxuYW1lPiBncm91cCBhbHRlcm5hdGl2ZS5cbiIKKyIgIC0tcmVtb3ZlLWFsbCA8bmFtZT4gICAgICByZW1vdmUgPG5hbWU+IGdyb3VwIGZyb20gdGhlIGFsdGVybmF0aXZlcyAiCisic3lzdGVtLlxuIgorIiAgLS1hdXRvIDxuYW1lPiAgICAgICAgICAgIHN3aXRjaCB0aGUgbWFzdGVyIGxpbmsgPG5hbWU+IHRvIGF1dG9tYXRpYyBtb2RlLlxuIgorIiAgLS1kaXNwbGF5IDxuYW1lPiAgICAgICAgIGRpc3BsYXkgaW5mb3JtYXRpb24gYWJvdXQgdGhlIDxuYW1lPiBncm91cC5cbiIKKyIgIC0tcXVlcnkgPG5hbWU+ICAgICAgICAgICBtYWNoaW5lIHBhcnNlYWJsZSB2ZXJzaW9uIG9mIC0tZGlzcGxheSA8bmFtZT4uXG4iCisiICAtLWxpc3QgPG5hbWU+ICAgICAgICAgICAgZGlzcGxheSBhbGwgdGFyZ2V0cyBvZiB0aGUgPG5hbWU+IGdyb3VwLlxuIgorIiAgLS1nZXQtc2VsZWN0aW9ucyAgICAgICAgIGxpc3QgbWFzdGVyIGFsdGVybmF0aXZlIG5hbWVzIGFuZCB0aGVpciBzdGF0dXMuXG4iCisiICAtLXNldC1zZWxlY3Rpb25zICAgICAgICAgcmVhZCBhbHRlcm5hdGl2ZSBzdGF0dXMgZnJvbSBzdGFuZGFyZCBpbnB1dC5cbiIKKyIgIC0tY29uZmlnIDxuYW1lPiAgICAgICAgICBzaG93IGFsdGVybmF0aXZlcyBmb3IgdGhlIDxuYW1lPiBncm91cCBhbmQgYXNrICIKKyJ0aGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2VyIHRvIHNlbGVjdCB3aGljaCBvbmUgdG8gdXNlLlxuIgorIiAgLS1zZXQgPG5hbWU+IDxwYXRoPiAgICAgIHNldCA8cGF0aD4gYXMgYWx0ZXJuYXRpdmUgZm9yIDxuYW1lPi5cbiIKKyIgIC0tYWxsICAgICAgICAgICAgICAgICAgICBjYWxsIC0tY29uZmlnIG9uIGFsbCBhbHRlcm5hdGl2ZXMuXG4iCisiXG4iCittc2dzdHIgIiIKKyJVdGlsaXphw6fDo286ICVzIFs8b3DDp8Ojbz4gLi4uXSA8Y29tYW5kbz5cbiIKKyJcbiIKKyJDb21hbmRvczpcbiIKKyIgIC0taW5zdGFsbCA8bGluaz4gPG5vbWU+IDxjYW1pbmhvPiA8cHJpb3JpZGFkZT5cbiIKKyIgICAgWy0tc2xhdmUgPGxpbms+IDxub21lPiA8Y2FtaW5obz5dIC4uLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGFjcmVzY2VudGFyIHVtIGdydXBvIGRlIGFsdGVybmF0aXZhcyBhbyBzaXN0ZW1hLlxuIgorIiAgLS1yZW1vdmUgPG5vbWU+IDxjYW1pbmhvPnJlbW92ZXIgPGNhbWluaG8+IGRvIGdydXBvIGFsdGVybmF0aXZvIDxub21lPi5cbiIKKyIgIC0tcmVtb3ZlLWFsbCA8bm9tZT4gICAgICByZW1vdmVyIG8gZ3J1cG8gPG5vbWU+IGRvIHNpc3RlbWEgZGUgIgorImFsdGVybmF0aXZhcy5cbiIKKyIgIC0tYXV0byA8bm9tZT4gICAgICAgICAgICBjb211dGFyIG8gbGluayBwcmluY2lwYWwgPG5vbWU+IHBhcmEgbyBtb2RvICIKKyJhdXRvbcOhdGljby5cbiIKKyIgIC0tZGlzcGxheSA8bm9tZT4gICAgICAgICBtb3N0cmFyIGluZm9ybWHDp8OjbyBzb2JyZSBvIGdydXBvIDxub21lPi5cbiIKKyIgIC0tcXVlcnkgPG5vbWU+ICAgICAgICAgICB2ZXJzw6NvIHByb2Nlc3PDoXZlbCBwb3IgbcOhcXVpbmEgZGUgLS1kaXNwbGF5ICIKKyI8bm9tZT4uXG4iCisiICAtLWxpc3QgPG5vbWU+ICAgICAgICAgICAgbW9zdHJhciB0b2RvcyBvcyBhbHZvcyBkbyBncnVwbyA8bm9tZT4uXG4iCisiICAtLWNvbmZpZyA8bm9tZT4gICAgICAgICAgbW9zdHJhciBhbHRlcm5hdGl2YXMgcGFyYSBvIGdydXBvIDxub21lPiBlIHBlZGlyXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgYW8gdXRpbGl6YWRvciBwYXJhIGVzY29saGVyIHVtIGEgdXRpbGl6YXIuXG4iCisiICAtLXNldCA8bm9tZT4gPGNhbWluaG8+ICAgZGVmaW5pciBvIDxjYW1pbmhvPiBjb21vIGFsdGVybmF0aXZhIHBhcmEgIgorIjxub21lPi5cbiIKKyIgIC0tYWxsICAgICAgICAgICAgICAgICAgICBjaGFtYXIgLS1jb25maWcgcGFyYSB0b2RhcyBhcyBhbHRlcm5hdGl2YXMuXG4iCisiXG4iCisiPGxpbms+IMOpIG8gbGluayBzaW1iw7NsaWNvIHF1ZSBhcG9udGEgcGFyYSAlcy88bm9tZT4uXG4iCisiICAoZS5nLiAvdXNyL2Jpbi9wYWdlcilcbiIKKyI8bm9tZT4gw6kgbyBub21lIHByaW5jaXBhbCBwYXJhIGVzdGUgZ3J1cG8gZGUgbGluay5cbiIKKyIgIChlLmcuIHBhZ2VyKVxuIgorIjxjYW1pbmhvPiDDqSBhIGxvY2FsaXphw6fDo28gZGUgdW0gZG9zIGZpY2hlaXJvcyBhbHZvIGFsdGVybmF0aXZvcy5cbiIKKyIgIChlLmcuIC91c3IvYmluL2xlc3MpXG4iCisiPHByaW9yaWRhZGU+IMOpIHVtIG7Dum1lcm8gaW50ZWlybzsgb3DDp8O1ZXMgY29tIG7Dum1lcm9zIG1haW9yZXMgdMOqbSBwcmlvcmlkYWRlXG4iCisiICBtYWlzIGVsZXZhZGEgbm8gbW9kbyBhdXRvbcOhdGljby5cbiIKKyJcbiIKKyJPcMOnw7VlczpcbiIKKyIgIC0tYWx0ZGlyIDxkaXJlY3TDs3Jpbz4gICAgYWx0ZXJhciBvIGRpcmVjdMOzcmlvIGRlIGFsdGVybmF0aXZhcy5cbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdMOzcmlvPiAgYWx0ZXJhciBvIGRpcmVjdMOzcmlvIGRlIGFkbWluaXN0cmHDp8Ojby5cbiIKKyIgIC0tc2tpcC1hdXRvICAgICAgICAgICAgICBzYWx0YXIgYSBxdWVzdMOjbyBwYXJhIGFsdGVybmF0aXZhcyBjb3JyZWN0YW1lbnRlICIKKyJjb25maWd1cmFkYXNcbiIKKyIgIC0tdmVyYm9zZSAgICAgICAgICAgICAgICBvcGVyYcOnw6NvIGRldGFsaGFkYSwgbWFpcyB0ZXh0byBuYSBzYcOtZGEuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgb3BlcmHDp8OjbyBzaWxlbmNpb3NhLCB0ZXh0byByZWR1emlkbyBuYSBzYcOtZGEuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgbW9zdHJhciBlc3RhIG1lbnNhZ2VtIGRlIGFqdWRhLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIG1vc3RyYXIgYSB2ZXJzw6NvLlxuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyI8bGluaz4gaXMgdGhlIHN5bWxpbmsgcG9pbnRpbmcgdG8gJXMvPG5hbWU+LlxuIgorIiAgKGUuZy4gL3Vzci9iaW4vcGFnZXIpXG4iCisiPG5hbWU+IGlzIHRoZSBtYXN0ZXIgbmFtZSBmb3IgdGhpcyBsaW5rIGdyb3VwLlxuIgorIiAgKGUuZy4gcGFnZXIpXG4iCisiPHBhdGg+IGlzIHRoZSBsb2NhdGlvbiBvZiBvbmUgb2YgdGhlIGFsdGVybmF0aXZlIHRhcmdldCBmaWxlcy5cbiIKKyIgIChlLmcuIC91c3IvYmluL2xlc3MpXG4iCisiPHByaW9yaXR5PiBpcyBhbiBpbnRlZ2VyOyBvcHRpb25zIHdpdGggaGlnaGVyIG51bWJlcnMgaGF2ZSBoaWdoZXIgcHJpb3JpdHkgIgorImluXG4iCisiICBhdXRvbWF0aWMgbW9kZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTMxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiT3B0aW9uczpcbiIKKyN8ICIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICBzZXQgdGhlIGRpcmVjdG9yeSB3aXRoIHRoZSBzdGF0b3ZlcnJpZGUgZmlsZS5cbiIKKyN8ICIgIC0tdXBkYXRlICAgICAgICAgICAgICAgICBpbW1lZGlhdGVseSB1cGRhdGUgZmlsZSBwZXJtaXNzaW9ucy5cbiIKKyN8ICIgIC0tZm9yY2UgICAgICAgICAgICAgICAgICBmb3JjZSBhbiBhY3Rpb24gZXZlbiBpZiBhIHNhbml0eSBjaGVjayBmYWlscy5cbiIKKyN8ICIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBxdWlldCBvcGVyYXRpb24sIG1pbmltYWwgb3V0cHV0LlxuIgorI3wgIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisjfCAiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyN8ICJcbiIKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWx0ZGlyIDxkaXJlY3Rvcnk+ICAgICBjaGFuZ2UgdGhlIGFsdGVybmF0aXZlcyBkaXJlY3RvcnkuXG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgY2hhbmdlIHRoZSBhZG1pbmlzdHJhdGl2ZSBkaXJlY3RvcnkuXG4iCisiICAtLWxvZyA8ZmlsZT4gICAgICAgICAgICAgY2hhbmdlIHRoZSBsb2cgZmlsZS5cbiIKKyIgIC0tZm9yY2UgICAgICAgICAgICAgICAgICBhbGxvdyByZXBsYWNpbmcgZmlsZXMgd2l0aCBhbHRlcm5hdGl2ZSBsaW5rcy5cbiIKKyIgIC0tc2tpcC1hdXRvICAgICAgICAgICAgICBza2lwIHByb21wdCBmb3IgYWx0ZXJuYXRpdmVzIGNvcnJlY3RseSAiCisiY29uZmlndXJlZFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGluIGF1dG9tYXRpYyBtb2RlIChyZWxldmFudCBmb3IgLS1jb25maWcgb25seSlcbiIKKyIgIC0tdmVyYm9zZSAgICAgICAgICAgICAgICB2ZXJib3NlIG9wZXJhdGlvbiwgbW9yZSBvdXRwdXQuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgcXVpZXQgb3BlcmF0aW9uLCBtaW5pbWFsIG91dHB1dC5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCittc2dzdHIgIiIKKyJPcMOnw7VlczpcbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdMOzcmlvPiAgZGVmaW5pciBvIGRpcmVjdMOzcmlvIGNvbSBvIGZpY2hlaXJvICIKKyJzdGF0b3ZlcnJpZGUuXG4iCisiICAtLXVwZGF0ZSAgICAgICAgICAgICAgICAgYWN0dWFsaXphciBpbWVkaWF0YW1lbnRlIGFzIHBlcm1pc3PDtWVzIGRvICIKKyJmaWNoZWlyby5cbiIKKyIgIC0tZm9yY2UgICAgICAgICAgICAgICAgICBmb3LDp2EgdW1hIGFjw6fDo28gbWVzbW8gcXVlIG8gdGVzdGUgZGUgXCJzYW5pZGFkZVwiICIKKyJmYWxoZS5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBhIG9wZXJhw6fDo28gc2lsZW5jaW9zYSwgc2HDrWRhIG3DrW5pbWFcbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICBtb3N0cmFyIGVzdGEgbWVuc2FnZW0gZGUgYWp1ZGEuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgbW9zdHJhciBhIHZlcnPDo28uXG4iCisiXG4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE2MworbXNnaWQgImVycm9yIgorbXNnc3RyICJlcnJvIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTkzCittc2dpZCAid2FybmluZyIKK21zZ3N0ciAiYXZpc28iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzozNTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidHdvIGNvbW1hbmRzIHNwZWNpZmllZDogLS0lcyBhbmQgLS0lcyIKK21zZ3N0ciAiZG9pcyBjb21hbmRvcyBlc3BlY2lmaWNhZG9zOiAtLSVzIGUgLS0lcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjM4NworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiY2Fubm90IGFwcGVuZCB0byAlczogJXMiCittc2dpZCAiY2Fubm90IGFwcGVuZCB0byAnJXMnIgorbXNnc3RyICJuw6NvIHBvZGUgYWNyZXNjZW50YXIgYSAlczogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo1NTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byByZW1vdmUgJXM6ICVzIgorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgJyVzJyIKK21zZ3N0ciAibsOjbyBmb2kgcG9zc8OtdmVsIHJlbW92ZXIgJXM6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTExMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBmaWxlIHdoaWxlIHRyeWluZyB0byByZWFkICVzIgorbXNnc3RyICJmaW0gZGUgZmljaGVpcm8gaW5lc3BlcmFkbyBhbyB0ZW50YXIgbGVyICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTExMworIywgYy1mb3JtYXQKK21zZ2lkICJ3aGlsZSByZWFkaW5nICVzOiAlcyIKK21zZ3N0ciAiZW5xdWFudG8gbGlhICVzOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMTkKKyMsIGMtZm9ybWF0Cittc2dpZCAibGluZSBub3QgdGVybWluYXRlZCB3aGlsZSB0cnlpbmcgdG8gcmVhZCAlcyIKK21zZ3N0ciAibGluaGEgbsOjbyB0ZXJtaW5hZGEgYW8gdGVudGFyIGxlciAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgY29ycnVwdDogJXMiCittc2dzdHIgIiVzIGNvcnJvbXBpZG86ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE1MAorIywgYy1mb3JtYXQKK21zZ2lkICJuZXdsaW5lcyBwcm9oaWJpdGVkIGluIHVwZGF0ZS1hbHRlcm5hdGl2ZXMgZmlsZXMgKCVzKSIKK21zZ3N0ciAibmV3bGluZXMgcHJvaWJpZGFzIGVtIGZpY2hlaXJvcyB1cGRhdGUtYWx0ZXJuYXRpdmVzICglcykiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTYzCittc2dpZCAic2xhdmUgbmFtZSIKK21zZ3N0ciAibm9tZSBkbyBlc2NyYXZvIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE3MSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQwNQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZHVwbGljYXRlIHNsYXZlICVzIgorbXNnaWQgImR1cGxpY2F0ZSBzbGF2ZSBuYW1lICVzIgorbXNnc3RyICJzbGF2ZSBkdXBsaWNhZG8gJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTc0Cittc2dpZCAic2xhdmUgbGluayIKK21zZ3N0ciAibGlnYcOnw6NvIGFvIGVzY3Jhdm8iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTc4CisjLCBjLWZvcm1hdAorbXNnaWQgInNsYXZlIGxpbmsgc2FtZSBhcyBtYWluIGxpbmsgJXMiCittc2dzdHIgImxpbmsgc2xhdmUgaWd1YWwgYW8gbGluayBwcmluY2lwYWwgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTg1IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDEyCisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBzbGF2ZSBsaW5rICVzIgorbXNnc3RyICInc2xhdmUgbGluaycgZHVwbGljYWRvICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIwNAorbXNnaWQgIm1hc3RlciBmaWxlIgorbXNnc3RyICJmaWNoZWlybyBtZXN0cmUiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjEzCisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBwYXRoICVzIgorbXNnc3RyICJjYW1pbmhvIGR1cGxpY2FkbyAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImFsdGVybmF0aXZlICVzIChwYXJ0IG9mIGxpbmsgZ3JvdXAgJXMpIGRvZXNuJ3QgZXhpc3QuIFJlbW92aW5nIGZyb20gbGlzdCBvZiAiCisiYWx0ZXJuYXRpdmVzLiIKK21zZ3N0ciAiIgorImFsdGVybmF0aXZhICVzIChwYXJ0ZSBkbyBncnVwbyBkZSBsaWdhw6fDo28gJXMpIG7Do28gZXhpc3RlLiBBIHJlbW92ZXIgZGEgbGlzdGEgIgorImRlIGFsdGVybmF0aXZhcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjI5IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjQwCittc2dpZCAicHJpb3JpdHkiCittc2dzdHIgInByaW9yaWRhZGUiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjMyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjQ5Cittc2dpZCAic2xhdmUgZmlsZSIKK21zZ3N0ciAiZmljaGVpcm8gZXNjcmF2byIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyNDQKKyMsIGMtZm9ybWF0Cittc2dpZCAicHJpb3JpdHkgb2YgJXM6ICVzIgorbXNnc3RyICJwcmlvcmlkYWRlIGRlICVzOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyOTcKK21zZ2lkICJzdGF0dXMiCittc2dzdHIgImVzdGFkbyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyOTkKK21zZ2lkICJpbnZhbGlkIHN0YXR1cyIKK21zZ3N0ciAiZXN0YWRvIGludsOhbGlkbyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzMDQKK21zZ2lkICJtYXN0ZXIgbGluayIKK21zZ3N0ciAibGlnYcOnw6NvIG1lc3RyZSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGlzY2FyZGluZyBvYnNvbGV0ZSBzbGF2ZSBsaW5rICVzICglcykuIgorbXNnc3RyICJhIGRlc2NhcnRhciBsaWdhw6fDo28gZGUgZXNjcmF2byBvYnNvbGV0byAlcyAoJXMpLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MDIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NjkKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjM4Cittc2dpZCAiYXV0byBtb2RlIgorbXNnc3RyICJtb2RvIGF1dG9tw6F0aWNvIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU3OAorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MzkKK21zZ2lkICJtYW51YWwgbW9kZSIKK21zZ3N0ciAibW9kbyBtYW51YWwiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTA1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgbGluayBjdXJyZW50bHkgcG9pbnRzIHRvICVzIgorbXNnc3RyICIgIG8gbGluayBhY3R1YWxtZW50ZSBhcG9udGEgcGFyYSAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MDgKK21zZ2lkICIgIGxpbmsgY3VycmVudGx5IGFic2VudCIKK21zZ3N0ciAiICBsaW5rIGFjdHVhbG1lbnRlIGluZXhpc3RlbnRlIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUxMgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyAtIHByaW9yaXR5ICVkIgorbXNnc3RyICIlcyAtIHByaW9yaWRhZGUgJWQiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTE1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgc2xhdmUgJXM6ICVzIgorbXNnc3RyICIgIGVzY3Jhdm8gJXM6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUyMgorIywgYy1mb3JtYXQKK21zZ2lkICJDdXJyZW50ICdiZXN0JyB2ZXJzaW9uIGlzICclcycuIgorbXNnc3RyICJBICdtZWxob3InIHZlcnPDo28gYWN0dWFsIMOpICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MjQKK21zZ2lkICJObyB2ZXJzaW9ucyBhdmFpbGFibGUuIgorbXNnc3RyICJTZW0gdmVyc8O1ZXMgZGlzcG9uw612ZWlzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiVGhlcmUgaXMgJWQgY2hvaWNlIGZvciB0aGUgYWx0ZXJuYXRpdmUgJXMgKHByb3ZpZGluZyAlcykuIgorbXNnaWRfcGx1cmFsICJUaGVyZSBhcmUgJWQgY2hvaWNlcyBmb3IgdGhlIGFsdGVybmF0aXZlICVzIChwcm92aWRpbmcgJXMpLiIKK21zZ3N0clswXSAiSMOhICVkIGVzY29saGEgcGFyYSBhIGFsdGVybmF0aXZhICVzIChkaXNwb25pYmlsaXphICVzKS4iCittc2dzdHJbMV0gIkV4aXN0ZW0gJWQgZXNjb2xoYXMgcGFyYSBhIGFsdGVybmF0aXZhICVzIChkaXNwb25pYmlsaXphICVzKS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYwCittc2dpZCAiU2VsZWN0aW9uIgorbXNnc3RyICJTZWxlY8Onw6NvIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2MQorbXNnaWQgIlBhdGgiCittc2dzdHIgIkNhbWluaG8iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYxCittc2dpZCAiUHJpb3JpdHkiCittc2dzdHIgIlByaW9yaWRhZGUiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYxCittc2dpZCAiU3RhdHVzIgorbXNnc3RyICJFc3RhZG8iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTgyCisjLCBjLWZvcm1hdAorbXNnaWQgIlByZXNzIGVudGVyIHRvIGtlZXAgdGhlIGN1cnJlbnQgY2hvaWNlWypdLCBvciB0eXBlIHNlbGVjdGlvbiBudW1iZXI6ICIKK21zZ3N0ciAiIgorIlByZXNzaW9uZSBlbnRlciBwYXJhIG1hbnRlciBhIGVzY29saGEgYWN0dWFsWypdLCBvdSBkaWdpdGUgbyBuw7ptZXJvIGRhICIKKyJzZWxlY8Onw6NvOiAiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNzIxCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vdCByZXBsYWNpbmcgJXMgd2l0aCBhIGxpbmsuIgorbXNnc3RyICJuw6NvIHN1YnN0aXR1aSAlcyBwb3IgdW1hIGxpZ2HDp8Ojby4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNzYyCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbid0IGluc3RhbGwgdW5rbm93biBjaG9pY2UgJXMiCittc2dzdHIgIm7Do28gZm9pIHBvc3PDrXZlbCBpbnN0YWxhciBhIG9ww6fDo28gJXMgZGVzY29uaGVjaWRhIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTc4MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisic2tpcCBjcmVhdGlvbiBvZiAlcyBiZWNhdXNlIGFzc29jaWF0ZWQgZmlsZSAlcyAob2YgbGluayBncm91cCAlcykgZG9lc24ndCAiCisiZXhpc3QuIgorbXNnc3RyICIiCisic2FsdGFyIGEgY3JpYcOnw6NvIGRlICVzIHBvcnF1ZSBvIGZpY2hlaXJvIGFzc29jaWFkbyAlcyAoZG8gZ3J1cG8gZGUgbGlnYcOnw6NvICIKKyIlcykgbsOjbyBleGlzdGUuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTc5MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAibm90IHJlcGxhY2luZyAlcyB3aXRoIGEgbGluay4iCittc2dpZCAibm90IHJlbW92aW5nICVzIHNpbmNlIGl0J3Mgbm90IGEgc3ltbGluay4iCittc2dzdHIgIm7Do28gc3Vic3RpdHVpICVzIHBvciB1bWEgbGlnYcOnw6NvLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNDEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2FsbCAlcy4iCittc2dzdHIgIkNoYW1hciAlcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDUxCisjLCBjLWZvcm1hdAorbXNnaWQgIkFsdGVybmF0aXZlICVzIHVuY2hhbmdlZCBiZWNhdXNlIGNob2ljZSAlcyBpcyBub3QgYXZhaWxhYmxlLiIKK21zZ3N0ciAiQWx0ZXJuYXRpdmEgJXMgaW5hbHRlcmFkYSBwb3JxdWUgYSBlc2NvbGhhICVzIG7Do28gZXN0w6EgZGlzcG9uw612ZWwuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA1NQorIywgYy1mb3JtYXQKK21zZ2lkICJTa2lwIHVua25vd24gYWx0ZXJuYXRpdmUgJXMuIgorbXNnc3RyICJTYWx0YXIgYWx0ZXJuYXRpdmEgJXMgZGVzY29uaGVjaWRhLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNzcKKyMsIGMtZm9ybWF0Cittc2dpZCAibGluZSB0b28gbG9uZyBvciBub3QgdGVybWluYXRlZCB3aGlsZSB0cnlpbmcgdG8gcmVhZCAlcyIKK21zZ3N0ciAibGluaGEgZGVtYXNpYWRvIGNvbXByaWRhIG91IG7Do28gdGVybWluYWRhIGFvIHRlbnRhciBsZXIgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDkwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTAzCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjExMworIywgYy1mb3JtYXQKK21zZ2lkICJTa2lwIGludmFsaWQgbGluZTogJXMiCittc2dzdHIgIlNhbHRhciBsaW5oYSBpbnbDoWxpZGE6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjEzMgorIywgYy1mb3JtYXQKK21zZ2lkICJyZW5hbWluZyAlcyBsaW5rIGZyb20gJXMgdG8gJXMuIgorbXNnc3RyICJhIHJlbm9tZWFyIGEgbGlnYcOnw6NvICVzIGRlICVzIHBhcmEgJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE3MworIywgYy1mb3JtYXQKK21zZ2lkICJyZW5hbWluZyAlcyBzbGF2ZSBsaW5rIGZyb20gJXMgdG8gJXMuIgorbXNnc3RyICJhIHJlbm9tZWFyIGEgbGlnYcOnw6NvIGRvIGVzY3Jhdm8gJXMgZGUgJXMgcGFyYSAlcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTg5CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIG5hbWUgKCVzKSBtdXN0IG5vdCBjb250YWluICcvJyBhbmQgc3BhY2VzLiIKK21zZ3N0ciAibm9tZSBkYSBhbHRlcm5hdGl2YXMgKCVzKSBuw6NvIHBvZGUgY29udGVyICcvJyBuZW0gZXNwYcOnb3MuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE5MworIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBsaW5rIGlzIG5vdCBhYnNvbHV0ZSBhcyBpdCBzaG91bGQgYmU6ICVzIgorbXNnc3RyICJsaWdhw6fDo28gZGEgYWx0ZXJuYXRpdmEgbsOjbyDDqSBhYnNvbHV0YSBjb21vIGRldmVyaWEgc2VyOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxOTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgcGF0aCBpcyBub3QgYWJzb2x1dGUgYXMgaXQgc2hvdWxkIGJlOiAlcyIKK21zZ3N0ciAibyBjYW1pbmhvIGRhIGFsdGVybmF0aXZhIG7Do28gw6kgYWJzb2x1dG8gY29tbyBkZXZlcmlhIHNlcjogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjI0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBtYXN0ZXI6ICVzIgorbXNnaWQgImFsdGVybmF0aXZlICVzIGNhbid0IGJlIG1hc3RlcjogaXQgaXMgYSBzbGF2ZSBvZiAlcyIKK21zZ3N0ciAiYWx0ZXJuYXRpdmEgJXMgbsOjbyBwb2RlIHNlciBtZXN0cmU6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjIzMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI2NworIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBsaW5rICVzIGlzIGFscmVhZHkgbWFuYWdlZCBieSAlcy4iCittc2dzdHIgImxpZ2HDp8OjbyBkZSBhbHRlcm5hdGl2YSAlcyBqw6Egw6kgZ2VyaWRhIHBvciAlcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjQxCisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIHBhdGggJXMgZG9lc24ndCBleGlzdC4iCittc2dzdHIgIm8gY2FtaW5obyAlcyBkYSBhbHRlcm5hdGl2YSBuw6NvIGV4aXN0ZS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjU0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBzbGF2ZSBvZiAlczogJXMiCittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgc2xhdmUgb2YgJXM6IGl0IGlzIGEgbWFzdGVyIGFsdGVybmF0aXZlLiIKK21zZ3N0ciAiYSBhbHRlcm5hdGl2YSAlcyBuw6NvIHBvZGUgc2VyIGVzY3Jhdm8gZGUgJXM6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI1OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgbWFzdGVyOiAlcyIKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBzbGF2ZSBvZiAlczogaXQgaXMgYSBzbGF2ZSBvZiAlcyIKK21zZ3N0ciAiYWx0ZXJuYXRpdmEgJXMgbsOjbyBwb2RlIHNlciBtZXN0cmU6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI3OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYWx0ZXJuYXRpdmUgbGluayAlcyBpcyBhbHJlYWR5IG1hbmFnZWQgYnkgJXMuIgorbXNnaWQgImFsdGVybmF0aXZlIGxpbmsgJXMgaXMgYWxyZWFkeSBtYW5hZ2VkIGJ5ICVzIChzbGF2ZSBvZiAlcykuIgorbXNnc3RyICJsaWdhw6fDo28gZGUgYWx0ZXJuYXRpdmEgJXMgasOhIMOpIGdlcmlkYSBwb3IgJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjMyNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGFyZ3VtZW50IGAlcyciCittc2dzdHIgImFyZ3VtZW50byBkZXNjb25oZWNpZG8gYCVzJyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNDMKK21zZ2lkICItLWluc3RhbGwgbmVlZHMgPGxpbms+IDxuYW1lPiA8cGF0aD4gPHByaW9yaXR5PiIKK21zZ3N0ciAiLS1pbnN0YWxsIG5lY2Vzc2l0YSBkZSA8bGluaz4gPG5vbWU+IDxjYW1pbmhvPiA8cHJpb3JpZGFkZT4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzQ2IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzk3Cittc2dpZCAiPGxpbms+IGFuZCA8cGF0aD4gY2FuJ3QgYmUgdGhlIHNhbWUiCittc2dzdHIgIjxsaWdhw6fDo28+IGUgPGNhbWluaG8+IG7Do28gcG9kZW0gc2VyIG8gbWVzbW8iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzQ5Cittc2dpZCAicHJpb3JpdHkgbXVzdCBiZSBhbiBpbnRlZ2VyIgorbXNnc3RyICJhIHByaW9yaWRhZGUgdGVtIGRlIHNlciB1bSBpbnRlaXJvIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM2MgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIDxuYW1lPiA8cGF0aD4iCittc2dzdHIgIi0tJXMgbmVjZXNzaXRhIGRlIDxub21lPiA8Y2FtaW5obz4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzc2CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgPG5hbWU+IgorbXNnc3RyICItLSVzIG5lY2Vzc2l0YSBkZSA8bm9tZT4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzg4Cittc2dpZCAiLS1zbGF2ZSBvbmx5IGFsbG93ZWQgd2l0aCAtLWluc3RhbGwiCittc2dzdHIgIi0tc2xhdmUgYXBlbmFzIMOpIHBlcm1pdG8gY29tIC0taW5zdGFsbCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzOTAKK21zZ2lkICItLXNsYXZlIG5lZWRzIDxsaW5rPiA8bmFtZT4gPHBhdGg+IgorbXNnc3RyICItLXNsYXZlIG5lY2Vzc2l0YSBkZSA8bGluaz4gPG5vbWU+IDxjYW1pbmhvPiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzOTkKKyMsIGMtZm9ybWF0Cittc2dpZCAibmFtZSAlcyBpcyBib3RoIHByaW1hcnkgYW5kIHNsYXZlIgorbXNnc3RyICJvIG5vbWUgJXMgw6kgcHJpbcOhcmlvIGUgc2xhdmUiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDAyCisjLCBjLWZvcm1hdAorbXNnaWQgImxpbmsgJXMgaXMgYm90aCBwcmltYXJ5IGFuZCBzbGF2ZSIKK21zZ3N0ciAibyBsaW5rICVzIMOpIHByaW3DoXJpbyBlIHNsYXZlIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQyMgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGEgPGZpbGU+IGFyZ3VtZW50IgorbXNnc3RyICItLSVzIG5lY2Vzc2l0YSBkZSB1bSBhcmd1bWVudG8gPGZpY2hlaXJvPiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gYCVzJyIKK21zZ3N0ciAib3DDp8OjbyBkZXNjb25oZWNpZGEgYCVzJyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0NTMKK21zZ2lkICIiCisibmVlZCAtLWRpc3BsYXksIC0tcXVlcnksIC0tbGlzdCwgLS1nZXQtc2VsZWN0aW9ucywgLS1jb25maWcsIC0tc2V0LCAtLXNldC0iCisic2VsZWN0aW9ucywgLS1pbnN0YWxsLCAtLXJlbW92ZSwgLS1hbGwsIC0tcmVtb3ZlLWFsbCBvciAtLWF1dG8iCittc2dzdHIgIiIKKyJuZWNlc3NpdGEgZGUgLS1xdWVyeSwgLS1saXN0LCAtLWdldC1zZWxlY3Rpb25zLCAtLWNvbmZpZywgLS1zZXQsIC0tc2V0LSIKKyJzZWxlY3Rpb25zLCAtLWluc3RhbGwsIC0tcmVtb3ZlLCAtLWFsbCwgLS1yZW1vdmUtYWxsIG91IC0tYXV0byIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0OTAKK21zZ2lkICI8c3RhbmRhcmQgaW5wdXQ+IgorbXNnc3RyICI8ZW50cmFkYSBzdGFuZGFyZD4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTAwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTAzCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIGFsdGVybmF0aXZlcyBmb3IgJXMuIgorbXNnc3RyICJuZW5odW1hIGFsdGVybmF0aXZhIHBhcmEgJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUzMAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiJXMgaXMgZGFuZ2xpbmcsIGl0IHdpbGwgYmUgdXBkYXRlZCB3aXRoIGJlc3QgY2hvaWNlLiIKK21zZ2lkICIlcy8lcyBpcyBkYW5nbGluZywgaXQgd2lsbCBiZSB1cGRhdGVkIHdpdGggYmVzdCBjaG9pY2UuIgorbXNnc3RyICIlcyBlc3TDoSBzdXNwZW5zbywgc2Vyw6EgYWN0dWFsaXphZG8gY29tIGEgbWVsaG9yIGVzY29saGEuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUzNAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiVzIGhhcyBiZWVuIGNoYW5nZWQgKG1hbnVhbGx5IG9yIGJ5IGEgc2NyaXB0KS4gU3dpdGNoaW5nIHRvIG1hbnVhbCAiCisjfCAidXBkYXRlcyBvbmx5LiIKK21zZ2lkICIiCisiJXMvJXMgaGFzIGJlZW4gY2hhbmdlZCAobWFudWFsbHkgb3IgYnkgYSBzY3JpcHQpLiBTd2l0Y2hpbmcgdG8gbWFudWFsICIKKyJ1cGRhdGVzIG9ubHkuIgorbXNnc3RyICIiCisiJXMgZm9pIGFsdGVyYWRvIChtYW51YWxtZW50ZSBvdSBwb3IgdW0gc2NyaXB0KS4gQSBtdWRhciBwYXJhIGFjdHVhbGl6YcOnw7VlcyAiCisibWFudWFpcyBhcGVuYXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU0MgorIywgYy1mb3JtYXQKK21zZ2lkICJzZXR0aW5nIHVwIGF1dG9tYXRpYyBzZWxlY3Rpb24gb2YgJXMuIgorbXNnc3RyICJhIGNvbmZpZ3VyYXIgYSBzZWxlY8Onw6NvIGF1dG9tw6F0aWNhIGRlICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgZm9yICVzIG5vdCByZWdpc3RlcmVkLCBub3Qgc2V0dGluZy4iCittc2dzdHIgImFsdGVybmF0aXZhICVzIHBhcmEgJXMgbsOjbyByZWdpc3RhZGEsIGEgbsOjbyBkZWZpbmlyLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NTcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiVGhlcmUgaXMgbm8gcHJvZ3JhbSB3aGljaCBwcm92aWRlcyAlcy4iCittc2dzdHIgIk7Do28gZXhpc3RlIHVtIHByb2dyYW1hIHF1ZSBkaXNwb25pYmlsaXphICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NjUgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NzUKK21zZ2lkICJOb3RoaW5nIHRvIGNvbmZpZ3VyZS4iCittc2dzdHIgIk5hZGEgcGFyYSBjb25maWd1cmFyLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiVGhlcmUgaXMgb25seSBvbmUgYWx0ZXJuYXRpdmUgaW4gbGluayBncm91cCAlczogJXMiCittc2dzdHIgIkV4aXN0ZSBhcGVuYXMgdW1hIGFsdGVybmF0aXZhIG5vIGdydXBvIGRlIGxpZ2HDp8OjbyAlczogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTg0CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlICVzIGZvciAlcyBub3QgcmVnaXN0ZXJlZCwgbm90IHJlbW92aW5nLiIKK21zZ3N0ciAiYWx0ZXJuYXRpdmEgJXMgcGFyYSAlcyBuw6NvIHJlZ2lzdGFkYSwgYSBuw6NvIHJlbW92ZXIuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU5MgorIywgYy1mb3JtYXQKK21zZ2lkICJyZW1vdmluZyBtYW51YWxseSBzZWxlY3RlZCBhbHRlcm5hdGl2ZSAtIHN3aXRjaGluZyAlcyB0byBhdXRvIG1vZGUiCittc2dzdHIgIiIKKyJhIHJlbW92ZXIgYWx0ZXJuYXRpdmEgc2VsZWNjaW9uYWRhIG1hbnVhbG1lbnRlIC0gYSBwYXNzYXIgJXMgcGFyYSBtb2RvICIKKyJhdXRvbcOhdGljbyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MTcKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImF1dG9tYXRpYyB1cGRhdGVzIG9mICVzIGFyZSBkaXNhYmxlZCwgbGVhdmluZyBpdCBhbG9uZS4iCittc2dpZCAiYXV0b21hdGljIHVwZGF0ZXMgb2YgJXMvJXMgYXJlIGRpc2FibGVkLCBsZWF2aW5nIGl0IGFsb25lLiIKK21zZ3N0ciAiIgorImFjdHVhbGl6YcOnw7VlcyBhdXRvbcOhdGljYXMgZGUgJXMgZXN0w6NvIGRlc2FjdGl2YWRhcywgYSBkZWl4YXIgY29tbyBlc3TDoS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjE5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ0byByZXR1cm4gdG8gYXV0b21hdGljIHVwZGF0ZXMgdXNlIGB1cGRhdGUtYWx0ZXJuYXRpdmVzIC0tYXV0byAlcycuIgorbXNnaWQgInRvIHJldHVybiB0byBhdXRvbWF0aWMgdXBkYXRlcyB1c2UgJyVzIC0tYXV0byAlcycuIgorbXNnc3RyICIiCisicGFyYSB2b2x0YXIgw6BzIGFjdHVhbGl6YcOnw7VlcyBhdXRvbcOhdGljYXMgdXNlIGB1cGRhdGUtYWx0ZXJuYXRpdmVzIC0tYXV0byAlcycuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYzNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1c2luZyAlcyB0byBwcm92aWRlICVzICglcykgaW4gJXMuIgorbXNnc3RyICJhIHVzYXIgJXMgcGFyYSBkaXNwb25pYmlsaXphciAlcyAoJXMpIGVtICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImZvcmNpbmcgcmVpbnN0YWxsYXRpb24gb2YgYWx0ZXJuYXRpdmUgJXMgYmVjYXVzZSBsaW5rIGdyb3VwICVzIGlzIGJyb2tlbi4iCittc2dzdHIgIiIKKyJhIGZvcsOnYXIgYSByZWluc3RhbGHDp8OjbyBkZSBhbHRlcm5hdGl2YSAlcyBwb3JxdWUgYSBsaWdhw6fDo28gZGUgZ3J1cG8gJXMgZXN0w6EgIgorImVzdHJhZ2FkYS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjUxCisjLCBjLWZvcm1hdAorbXNnaWQgImN1cnJlbnQgYWx0ZXJuYXRpdmUgJXMgaXMgdW5rbm93biwgc3dpdGNoaW5nIHRvICVzIGZvciBsaW5rIGdyb3VwICVzLiIKK21zZ3N0ciAiIgorImEgYWx0ZXJuYXRpdmEgJXMgYWN0dWFsIMOpIGRlc2NvbmhlY2lkYSwgYSBtdWRhciBwYXJhICVzIHBhcmEgYSBsaWdhw6fDo28gZGUgIgorImdydXBvICVzLiIKKworI34gbXNnaWQgIml0IGlzIGEgbWFzdGVyIGFsdGVybmF0aXZlLiIKKyN+IG1zZ3N0ciAiw6kgdW1hIGFsdGVybmF0aXZhIG1lc3RyZS4iCisKKyN+IG1zZ2lkICJpdCBpcyBhIHNsYXZlIG9mICVzIgorI34gbXNnc3RyICLDqSB1bSBlc2NyYXZvIGRlICVzIgorCisjfiBtc2dpZCAiY2Fubm90IHN0YXQgJXM6ICVzIgorI34gbXNnc3RyICJOw6NvIHBvZGUgZmF6ZXIgc3RhdCAlczogJXMiCisKKyN+IG1zZ2lkICJyZWFkbGluayglcykgZmFpbGVkOiAlcyIKKyN+IG1zZ3N0ciAicmVhZGxpbmsoJXMpIGZhbGhvdTogJXMiCisKKyN+IG1zZ2lkICJzY2FuIG9mICVzIGZhaWxlZDogJXMiCisjfiBtc2dzdHIgInNjYW4gZGUgJXMgZmFsaG91OiAlcyIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjdXRlICVzOiAlcyIKKyN+IG1zZ3N0ciAiZmFsaG91IGV4ZWN1dGFyICVzOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byBtYWtlICVzIGEgc3ltbGluayB0byAlczogJXMiCisjfiBtc2dzdHIgIm7Do28gZm9pIHBvc3PDrXZlbCBjcmlhciAlcyBjb21vIGxpbmsgc2ltYsOzbGljbyBwYXJhICVzOsK3JXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCAlcyBhcyAlczogJXMiCisjfiBtc2dzdHIgIm7Do28gZm9pIHBvc3PDrXZlbCBpbnN0YWxhciAlcyBjb21vICVzOiAlcyIKKworI34gbXNnaWQgIndoaWxlIHdyaXRpbmcgJXM6ICVzIgorI34gbXNnc3RyICJhbyBlc2NyZXZlciAlczogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcmVhZCAlczogJXMiCisjfiBtc2dzdHIgIm7Do28gZm9pIHBvc3PDrXZlbCBsZXIgJXM6ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGNsb3NlICVzOiAlcyIKKyN+IG1zZ3N0ciAibsOjbyBmb2kgcG9zc8OtdmVsIGZlY2hhciAlczogJXMiCisKKyN+IG1zZ2lkICJjYW5ub3Qgd3JpdGUgJXM6ICVzIgorI34gbXNnc3RyICJuw6NvIGZvaSBwb3Nzw612ZWwgZXNjcmV2ZXIgJXM6ICVzIgorCisjLCBmdXp6eQorI358IG1zZ2lkICJ1bmFibGUgdG8gcmVuYW1lICVzIHRvICVzOiAlcyIKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcmVuYW1lIGZpbGUgJyVzJyB0byAnJXMnIgorI34gbXNnc3RyICJuw6NvIGZvaSBwb3Nzw612ZWwgcmVub21lYXIgJXMgcGFyYSAlczogJXMiCisKKyN+IG1zZ2lkICJtYWxsb2MgZmFpbGVkICglbGQgYnl0ZXMpIgorI34gbXNnc3RyICJmYWxob3UgbWFsbG9jICglbGQgYnl0ZXMpIgorCisjfiBtc2dpZCAicmVhbGxvYyBmYWlsZWQgKCVsZCBieXRlcykiCisjfiBtc2dzdHIgImZhbGhvdSByZWFsbG9jICglbGQgYnl0ZXMpIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHVuYnVmZmVyIGAlLjI1NXMnIgorI34gbXNnc3RyICJuw6NvIGZvaSBwb3Nzw612ZWwgcmV0aXJhciBgJS4yNTVzJyBkbyBidWZmZXIiCisKKyN+IG1zZ2lkICJwYXJ0IGZpbGUgYCUuMjUwcycgaGFzIHRyYWlsaW5nIGdhcmJhZ2UiCisjfiBtc2dzdHIgImZpY2hlaXJvIGRpdmlkaWRvIGAlLjI1MHMnIHRlbSByZXN0b3MgZGUgbGl4byIKKworI34gbXNnaWQgInNpemUgJTdkIG9jY3VycyAlNWQgdGltZXNcbiIKKyN+IG1zZ3N0ciAidGFtYW5obyAlN2Qgb2NvcnJlICU1ZCB2ZXplc1xuIgorCisjfiBtc2dpZCAib3V0IG9mIG1lbW9yeSBwdXNoaW5nIGVycm9yIGhhbmRsZXI6ICIKKyN+IG1zZ3N0ciAic2VtIG1lbcOzcmlhIGludm9jb3UgbyBnZXN0b3IgZGUgZXJyb3M6ICIKKworI34gbXNnaWQgInVuYWJsZSB0byB1bmxvY2sgZHBrZyBzdGF0dXMgZGF0YWJhc2UiCisjfiBtc2dzdHIgIm7Do28gZm9pIHBvc3PDrXZlbCBleGVjdXRhciB1bmxvY2sgbmEgYmFzZSBkZSBkYWRvcyBkZSBzdGF0dXMgZG8gZHBrZyIKKworI34gbXNnaWQgImNvcHkgaW5mbyBmaWxlIGAlLjI1NXMnIgorI34gbXNnc3RyICJjb3BpYXIgZmljaGVpcm8gZGUgaW5mb3JtYcOnw6NvIGAlLjI1NXMnIgorCisjfiBtc2dpZCAicGFyc2UgZXJyb3IiCisjfiBtc2dzdHIgImVycm8gZGUgcGFyc2UiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gd3JpdGUgcGFyc2luZyB3YXJuaW5nIgorI34gbXNnc3RyICJmYWxob3UgYW8gZXNjcmV2ZXIgYXZpc28gZGUgcGFyc2luZyIKKworI34gbXNnaWQgInVuYWJsZSB0byBsb2NrIHRyaWdnZXJzIGFyZWEiCisjfiBtc2dzdHIgIm7Do28gZm9pIHBvc3PDrXZlbCBvYnRlciBvIGFjZXNzbyBleGNsdXNpdm8gw6Agw6FyZWEgZGUgJ3RyaWdnZXJzJyIKKworI34gbXNnaWQgImZhaWxlZCB0byBydW4gJXMgKCUuMjUwcykiCisjfiBtc2dzdHIgImZhbGhvdSBjb3JyZXIgJXMgKCUuMjUwcykiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBzaGVsbCAoJS4yNTBzKSIKKyN+IG1zZ3N0ciAiZmFsaGEgYW8gZXhlY3V0YXIgYSBzaGVsbCAoJS4yNTBzKSIKKworI34gbXNnaWQgInVuYWJsZSB0byBjaGVjayBmb3IgZXhpc3RlbmNlIG9mIGAlLjI1MHMnIgorI34gbXNnc3RyICJuw6NvIGZvaSBwb3Nzw612ZWwgdmVyaWZpY2FyIGEgZXhpc3TDqm5jaWEgZGUgYCUuMjUwcyciCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBybSBmb3IgY2xlYW51cCIKKyN+IG1zZ3N0ciAiZmFsaG91IGV4ZWN1dGFyIHJtIHBhcmEgbGltcGV6YSIKKworI34gbXNnaWQgIiIKKyN+ICIlcyBkZWJ1Z2dpbmcgb3B0aW9uLCAtLWRlYnVnPTxvY3RhbD4gb3IgLUQ8b2N0YWw+OlxuIgorI34gIlxuIgorI34gIiBudW1iZXIgIHJlZi4gaW4gc291cmNlICAgZGVzY3JpcHRpb25cbiIKKyN+ICIgICAgICAxICAgZ2VuZXJhbCAgICAgICAgICAgR2VuZXJhbGx5IGhlbHBmdWwgcHJvZ3Jlc3MgaW5mb3JtYXRpb25cbiIKKyN+ICIgICAgICAyICAgc2NyaXB0cyAgICAgICAgICAgSW52b2NhdGlvbiBhbmQgc3RhdHVzIG9mIG1haW50YWluZXIgc2NyaXB0c1xuIgorI34gIiAgICAgMTAgICBlYWNoZmlsZSAgICAgICAgICBPdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWRcbiIKKyN+ICIgICAgMTAwICAgZWFjaGZpbGVkZXRhaWwgICAgTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWRcbiIKKyN+ICIgICAgIDIwICAgY29uZmYgICAgICAgICAgICAgT3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZVxuIgorI34gIiAgICAyMDAgICBjb25mZmRldGFpbCAgICAgICBMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGVcbiIKKyN+ICIgICAgIDQwICAgZGVwY29uICAgICAgICAgICAgRGVwZW5kZW5jaWVzIGFuZCBjb25mbGljdHNcbiIKKyN+ICIgICAgNDAwICAgZGVwY29uZGV0YWlsICAgICAgTG90cyBvZiBkZXBlbmRlbmNpZXMvY29uZmxpY3RzIG91dHB1dFxuIgorI34gIiAgMTAwMDAgICB0cmlnZ2VycyAgICAgICAgICBUcmlnZ2VyIGFjdGl2YXRpb24gYW5kIHByb2Nlc3NpbmdcbiIKKyN+ICIgIDIwMDAwICAgdHJpZ2dlcnNkZXRhaWwgICAgTG90cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzXG4iCisjfiAiICA0MDAwMCAgIHRyaWdnZXJzc3R1cGlkICAgIFNpbGx5IGFtb3VudHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2Vyc1xuIgorI34gIiAgIDEwMDAgICB2ZXJ5dmVyYm9zZSAgICAgICBMb3RzIG9mIGRyaXZlbCBhYm91dCBlZyB0aGUgZHBrZy9pbmZvICIKKyN+ICJkaXJlY3RvcnlcbiIKKyN+ICIgICAyMDAwICAgc3R1cGlkbHl2ZXJib3NlICAgSW5zYW5lIGFtb3VudHMgb2YgZHJpdmVsXG4iCisjfiAiXG4iCisjfiAiRGVidWdnaW5nIG9wdGlvbnMgYXJlIGJlIG1peGVkIHVzaW5nIGJpdHdpc2Utb3IuXG4iCisjfiAiTm90ZSB0aGF0IHRoZSBtZWFuaW5ncyBhbmQgdmFsdWVzIGFyZSBzdWJqZWN0IHRvIGNoYW5nZS5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIm9ww6fDo28gZGUgZGVwdXJhw6fDo28gJXMsIC0tZGVidWc9PG9jdGFsPiBvdSAtRDxvY3RhbD46XG4iCisjfiAiXG4iCisjfiAiIG7Dum1lcm8gIHJlZi4gbmEgZm9udGUgICAgZGVzY3Jpw6fDo29cbiIKKyN+ICIgICAgICAxICAgZ2VuZXJhbCAgICAgICAgICAgSW5mb3JtYcOnw6NvIGdlcmFsIMO6dGlsIGFjZXJjYSBkbyBwcm9ncmVzc29cbiIKKyN+ICIgICAgICAyICAgc2NyaXB0cyAgICAgICAgICAgSW52b2Nhw6fDo28gZSBlc3RhZG8gZG9zIHNjcmlwdHMgZG8gbWFpbnRhaW5lclxuIgorI34gIiAgICAgMTAgICBlYWNoZmlsZSAgICAgICAgICBTYcOtZGEgcGFyYSBjYWRhIGZpY2hlaXJvIHByb2Nlc3NhZG9cbiIKKyN+ICIgICAgMTAwICAgZWFjaGZpbGVkZXRhaWwgICAgTXVpdGEgc2HDrWRhIHBhcmEgY2FkYSBmaWNoZWlybyBwcm9jZXNzYWRvXG4iCisjfiAiICAgICAyMCAgIGNvbmZmICAgICAgICAgICAgIFNhw61kYSBwYXJhIGNhZGEgZmljaGVpcm8gZGUgY29uZmlndXJhw6fDo29cbiIKKyN+ICIgICAgMjAwICAgY29uZmZkZXRhaWwgICAgICAgTXVpdGEgc2HDrWRhIHBhcmEgY2FkYSBmaWNoZWlybyBkZSAiCisjfiAiY29uZmlndXJhw6fDo29cbiIKKyN+ICIgICAgIDQwICAgZGVwY29uICAgICAgICAgICAgRGVwZW5kw6puY2lhcyBlIGNvbmZsaXRvc1xuIgorI34gIiAgICA0MDAgICBkZXBjb25kZXRhaWwgICAgICBNdWl0YSBzYcOtZGEgZGUgZGVwZW5kw6puY2lhcyBlIGNvbmZsaXRvc1xuIgorI34gIiAgMTAwMDAgICB0cmlnZ2Vyc1x0ICAgICBBY3RpdmHDp8OjbyBlIHByb2Nlc3NhbWVudG8gZGUgdHJpZ2dlcnNcbiIKKyN+ICIgIDIwMDAwICAgdHJpZ2dlcnNkZXRhaWwgICAgTXVpdGEgc2HDrWRhIGFjZXJjYSBkZSB0cmlnZ2Vyc1xuIgorI34gIiAgNDAwMDAgICB0cmlnZ2Vyc3N0dXBpZCAgICBRdWFudGlkYWRlcyBwYXJ2YXMgZGUgc2HDrWRhIGFjZXJjYSBkZSAiCisjfiAidHJpZ2dlcnNcbiIKKyN+ICIgICAxMDAwICAgdmVyeXZlcmJvc2UgICAgICAgTXVpdGFzIGFzbmVpcmFzIHNvYnJlIGVnIG8gZGlyZWN0w7NyaW8gZHBrZy8iCisjfiAiaW5mb1xuIgorI34gIiAgIDIwMDAgICBzdHVwaWRseXZlcmJvc2UgICBRdWFudGlkYWRlcyBlc3TDunBpZGFzIGRlIGFzbmVpcmFzXG4iCisjfiAiXG4iCisjfiAiT3DDp8O1ZXMgZGUgZGVwdXJhw6fDo28gc8OjbyBtaXN0dXJhZGFzIHV0aWxpemFuZG8gbyAnYml0d2lzZS1vcicuXG4iCisjfiAiTm90ZSBxdWUgb3Mgc2lnbmlmaWNhZG9zIGUgdmFsb3JlcyBlc3TDo28gc3VqZWl0b3MgYSBtdWRhci5cbiIKKworI34gbXNnaWQgIiIKKyN+ICIlcyBmb3JjaW5nIG9wdGlvbnMgLSBjb250cm9sIGJlaGF2aW91ciB3aGVuIHByb2JsZW1zIGZvdW5kOlxuIgorI34gIiAgd2FybiBidXQgY29udGludWU6ICAtLWZvcmNlLTx0aGluZz4sPHRoaW5nPiwuLi5cbiIKKyN+ICIgIHN0b3Agd2l0aCBlcnJvcjogICAgLS1yZWZ1c2UtPHRoaW5nPiw8dGhpbmc+LC4uLiB8IC0tbm8tZm9yY2UtIgorI34gIjx0aGluZz4sLi4uXG4iCisjfiAiIEZvcmNpbmcgdGhpbmdzOlxuIgorI34gIiAgYWxsIFshXSAgICAgICAgICAgICAgICBTZXQgYWxsIGZvcmNlIG9wdGlvbnNcbiIKKyN+ICIgIGRvd25ncmFkZSBbKl0gICAgICAgICAgUmVwbGFjZSBhIHBhY2thZ2Ugd2l0aCBhIGxvd2VyIHZlcnNpb25cbiIKKyN+ICIgIGNvbmZpZ3VyZS1hbnkgICAgICAgICAgQ29uZmlndXJlIGFueSBwYWNrYWdlIHdoaWNoIG1heSBoZWxwIHRoaXMgb25lXG4iCisjfiAiICBob2xkICAgICAgICAgICAgICAgICAgIFByb2Nlc3MgaW5jaWRlbnRhbCBwYWNrYWdlcyBldmVuIHdoZW4gb24gaG9sZFxuIgorI34gIiAgYmFkLXBhdGggICAgICAgICAgICAgICBQQVRIIGlzIG1pc3NpbmcgaW1wb3J0YW50IHByb2dyYW1zLCBwcm9ibGVtcyAiCisjfiAibGlrZWx5XG4iCisjfiAiICBub3Qtcm9vdCAgICAgICAgICAgICAgIFRyeSB0byAoZGUpaW5zdGFsbCB0aGluZ3MgZXZlbiB3aGVuIG5vdCByb290XG4iCisjfiAiICBvdmVyd3JpdGUgICAgICAgICAgICAgIE92ZXJ3cml0ZSBhIGZpbGUgZnJvbSBvbmUgcGFja2FnZSB3aXRoIGFub3RoZXJcbiIKKyN+ICIgIG92ZXJ3cml0ZS1kaXZlcnRlZCAgICAgT3ZlcndyaXRlIGEgZGl2ZXJ0ZWQgZmlsZSB3aXRoIGFuIHVuZGl2ZXJ0ZWQgIgorI34gInZlcnNpb25cbiIKKyN+ICIgIGJhZC12ZXJpZnkgICAgICAgICAgICAgSW5zdGFsbCBhIHBhY2thZ2UgZXZlbiBpZiBpdCBmYWlscyBhdXRoZW50aWNpdHkgIgorI34gImNoZWNrXG4iCisjfiAiICBkZXBlbmRzLXZlcnNpb24gWyFdICAgIFR1cm4gZGVwZW5kZW5jeSB2ZXJzaW9uIHByb2JsZW1zIGludG8gd2FybmluZ3NcbiIKKyN+ICIgIGRlcGVuZHMgWyFdICAgICAgICAgICAgVHVybiBhbGwgZGVwZW5kZW5jeSBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzXG4iCisjfiAiICBjb25mbmV3IFshXSAgICAgICAgICAgIEFsd2F5cyB1c2UgdGhlIG5ldyBjb25maWcgZmlsZXMsIGRvbid0IHByb21wdFxuIgorI34gIiAgY29uZm9sZCBbIV0gICAgICAgICAgICBBbHdheXMgdXNlIHRoZSBvbGQgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHRcbiIKKyN+ICIgIGNvbmZkZWYgWyFdICAgICAgICAgICAgVXNlIHRoZSBkZWZhdWx0IG9wdGlvbiBmb3IgbmV3IGNvbmZpZyBmaWxlcyBpZiAiCisjfiAib25lXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIGlzIGF2YWlsYWJsZSwgZG9uJ3QgcHJvbXB0LiBJZiBubyBkZWZhdWx0IGNhbiBiZSAiCisjfiAiZm91bmQsXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIHlvdSB3aWxsIGJlIHByb21wdGVkIHVubGVzcyBvbmUgb2YgdGhlIGNvbmZvbGQgIgorI34gIm9yXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmZuZXcgb3B0aW9ucyBpcyBhbHNvIGdpdmVuXG4iCisjfiAiICBjb25mbWlzcyBbIV0gICAgICAgICAgIEFsd2F5cyBpbnN0YWxsIG1pc3NpbmcgY29uZmlnIGZpbGVzXG4iCisjfiAiICBjb25mYXNrIFshXSAgICAgICAgICAgIE9mZmVyIHRvIHJlcGxhY2UgY29uZmlnIGZpbGVzIHdpdGggbm8gbmV3ICIKKyN+ICJ2ZXJzaW9uc1xuIgorI34gIiAgYnJlYWtzIFshXSAgICAgICAgICAgICBJbnN0YWxsIGV2ZW4gaWYgaXQgd291bGQgYnJlYWsgYW5vdGhlciBwYWNrYWdlXG4iCisjfiAiICBjb25mbGljdHMgWyFdICAgICAgICAgIEFsbG93IGluc3RhbGxhdGlvbiBvZiBjb25mbGljdGluZyBwYWNrYWdlc1xuIgorI34gIiAgYXJjaGl0ZWN0dXJlIFshXSAgICAgICBQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyBhcmNoaXRlY3R1cmVcbiIKKyN+ICIgIG92ZXJ3cml0ZS1kaXIgWyFdICAgICAgT3ZlcndyaXRlIG9uZSBwYWNrYWdlJ3MgZGlyZWN0b3J5IHdpdGggYW5vdGhlcidzICIKKyN+ICJmaWxlXG4iCisjfiAiICB1bnNhZmUtaW8gWyFdICAgICAgICAgIERvIG5vdCBwZXJmb3JtIHNhZmUgSS9PIG9wZXJhdGlvbnMgd2hlbiAiCisjfiAidW5wYWNraW5nXG4iCisjfiAiICByZW1vdmUtcmVpbnN0cmVxIFshXSAgIFJlbW92ZSBwYWNrYWdlcyB3aGljaCByZXF1aXJlIGluc3RhbGxhdGlvblxuIgorI34gIiAgcmVtb3ZlLWVzc2VudGlhbCBbIV0gICBSZW1vdmUgYW4gZXNzZW50aWFsIHBhY2thZ2VcbiIKKyN+ICJcbiIKKyN+ICJXQVJOSU5HIC0gdXNlIG9mIG9wdGlvbnMgbWFya2VkIFshXSBjYW4gc2VyaW91c2x5IGRhbWFnZSB5b3VyICIKKyN+ICJpbnN0YWxsYXRpb24uXG4iCisjfiAiRm9yY2luZyBvcHRpb25zIG1hcmtlZCBbKl0gYXJlIGVuYWJsZWQgYnkgZGVmYXVsdC5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIm9ww6fDtWVzICVzIHBhcmEgZm9yw6dhciAtIGNvbnRyb2xhciBvIGNvbXBvcnRhbWVudG8gcXVhbmRvIHPDo28gZW5jb250cmFkb3MgIgorI34gInByb2JsZW1hczpcbiIKKyN+ICIgIGF2aXNhciBtYXMgY29udGludWFyOiAtLWZvcmNlLTxjb2lzYT4sPGNvaXNhPiwuLi5cbiIKKyN+ICIgIHBhcmFyIGNvbSBlcnJvOiAgICAgICAtLXJlZnVzZS08Y29pc2E+LDxjb2lzYT4sLi4uIHwgLS1uby1mb3JjZS0iCisjfiAiPGNvaXNhPiwuLi5cbiIKKyN+ICIgRm9yw6dhciBjb2lzYXM6XG4iCisjfiAiICBhbGwgWyFdICAgICAgICAgICAgICAgIERlZmluaXIgdG9kYXMgb3DDp8O1ZXMgZGUgZm9yw6dhclxuIgorI34gIiAgZG93bmdyYWRlIFsqXSAgICAgICAgICBTdWJzdGl0dWlyIHVtIHBhY290ZSBwb3IgdW1hIHZlcnPDo28gbWFpcyBiYWl4YVxuIgorI34gIiAgY29uZmlndXJlLWFueSAgICAgICAgICBDb25maWd1cmFyIHF1YWxxdWVyIHBhY290ZSBxdWUgcG9zc2EgYWp1ZGFyICIKKyN+ICJlc3RlXG4iCisjfiAiICBob2xkICAgICAgICAgICAgICAgICAgIFByb2Nlc3NhciBwYWNvdGVzIGluY2lkZW50YWlzIG1lc21vIHF1YW5kbyBlc3TDo28gIgorI34gImEgc2VyIG1hbnRpZG9zXG4iCisjfiAiICBiYWQtcGF0aCAgICAgICAgICAgICAgIEZhbHRhbSBwcm9ncmFtYXMgaW1wb3J0YW50ZXMgbm8gUEFUSCwgIgorI34gInByb3ZhdmVsbWVudGUgcHJvYmxlbWFzXG4iCisjfiAiICBub3Qtcm9vdCAgICAgICAgICAgICAgIFRlbnRhciAoZGVzKWluc3RhbGFyIGNvaXNhcyBtZXNtbyBuw6NvIHNlbmRvICIKKyN+ICJyb290XG4iCisjfiAiICBvdmVyd3JpdGUgICAgICAgICAgICAgIFN1YnN0aXR1aXIgdW0gZmljaGVpcm8gZGUgdW0gcGFjb3RlIGNvbSBvdXRyb1xuIgorI34gIiAgb3ZlcndyaXRlLWRpdmVydGVkICAgICBTdWJzdGl0dWlyIHVtIGZpY2hlaXJvIGRlc3ZpYWRvIGNvbSB1bWEgdmVyc8OjbyAiCisjfiAic2VtIGRlc3Zpb3NcbiIKKyN+ICIgIGJhZC12ZXJpZnkgICAgICAgICAgICAgSW5zdGFsYXIgdW0gcGFjb3RlIG1lc21vIHF1ZSBmYWxoZSBhIHZlcmlmaWNhw6fDo28gIgorI34gImRlIGF1dGVudGljaWRhZGVcbiIKKyN+ICIgIGRlcGVuZHMtdmVyc2lvbiBbIV0gICAgVG9ybmFyIHByb2JsZW1hcyBkZSBkZXBlbmTDqm5jaWFzIGRlIHZlcnPDo28gZW0gIgorI34gImF2aXNvc1xuIgorI34gIiAgZGVwZW5kcyBbIV0gICAgICAgICAgICBUb3JuYXIgdG9kb3Mgb3MgcHJvYmxlbWFzIGRlIGRlcGVuZMOqbmNpYXMgZW0gIgorI34gImF2aXNvc1xuIgorI34gIiAgY29uZm5ldyBbIV0gICAgICAgICAgICBVdGlsaXphciBzZW1wcmUgb3Mgbm92b3MgZmljaGVpcm9zIGRlICIKKyN+ICJjb25maWd1cmHDp8Ojbywgc2VtIHBlcmd1bnRhclxuIgorI34gIiAgY29uZm9sZCBbIV0gICAgICAgICAgICBVdGlsaXphciBzZW1wcmUgb3MgYW50aWdvcyBmaWNoZWlyb3MgZGUgIgorI34gImNvbmZpZ3VyYcOnw6NvLCBzZW0gcGVyZ3VudGFyXG4iCisjfiAiICBjb25mZGVmIFshXSAgICAgICAgICAgIFV0aWxpemFyIGEgb3DDp8OjbyBwcmVkZWZpbmlkYSBwYXJhIG5vdm9zICIKKyN+ICJmaWNoZWlyb3MgZGVcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgY29uZmlndXJhw6fDo28gc2UgZXN0aXZlciBhbGd1bSBkaXNwb27DrXZlbCwgc2VtIFxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICBwZXJndW50YXIuIFNlIG7Do28gZm9yIGVuY29udHJhZGEgbmVuaHVtYSwgdm9jw6ogIgorI34gInNlcsOhXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIHF1ZXN0aW9uYWRvIGEgbWVub3MgcXVlIHNlamFtIGRhZGFzIGFzIG9ww6fDtWVzXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmZvbGQgb3UgY29uZm5ld1xuIgorI34gIiAgY29uZm1pc3MgWyFdICAgICAgICAgICBJbnN0YWxhciBzZW1wcmUgZmljaGVpcm9zIGRlIGNvbmZpZ3VyYcOnw6NvIGVtICIKKyN+ICJmYWx0YVxuIgorI34gIiAgY29uZmFzayBbIV0gICAgICAgICAgICBPZmVyZWNlciBwYXJhIHN1YnN0aXR1aXIgZmljaGVpcm9zIGRlICIKKyN+ICJjb25maWd1cmHDp8OjbyBzZW0gbm92YXMgdmVyc8O1ZXNcbiIKKyN+ICIgIGJyZWFrcyBbIV0gICAgICAgICAgICAgSW5zdGFsYXIgbWVzbW8gcXVlIGVzdHJhZ3VlIG91dHJvcyBwYWNvdGVzXG4iCisjfiAiICBjb25mbGljdHMgWyFdICAgICAgICAgIFBlcm1pdGlyIGluc3RhbGHDp8OjbyBkZSBwYWNvdGVzIGVtIGNvbmZsaXRvXG4iCisjfiAiICBhcmNoaXRlY3R1cmUgWyFdICAgICAgIFByb2Nlc3NhciBhdMOpIHBhY290ZXMgY29tIGFycXVpdGVjdHVyYSBlcnJhZGFcbiIKKyN+ICIgIG92ZXJ3cml0ZS1kaXIgWyFdICAgICAgU3Vic3RpdHVpciBvIGRpcmVjdMOzcmlvIGRlIHVtIHBhY290ZSBwb3IgIgorI34gImZpY2hlaXJvXG4iCisjfiAiXHRcdFx0ICBkZSBvdXRyb1xuIgorI34gIiAgdW5zYWZlLWlvIFshXVx0ICBOw6NvIGV4ZWN1dGFyIG9wZXJhw6fDtWVzIHNlZ3VyYXMgZGUgSS9PIGFvIGRlc2VtcGFjb3RhclxuIgorI34gIiAgcmVtb3ZlLXJlaW5zdHJlcSBbIV0gICBSZW1vdmVyIHBhY290ZXMgcXVlIG5lY2Vzc2l0ZW0gZGUgaW5zdGFsYcOnw6NvXG4iCisjfiAiICByZW1vdmUtZXNzZW50aWFsIFshXSAgIFJlbW92ZXIgdW0gcGFjb3RlIGVzc2VuY2lhbFxuIgorI34gIlxuIgorI34gIkFWSVNPIC0gbyB1c28gZGFzIG9ww6fDtWVzIG1hcmNhZGFzIGNvbSBbIV0gcG9kZSBkYW5pZmljYXIgc2VyaWFtZW50ZSBhIHN1YSAiCisjfiAiaW5zdGFsYcOnw6NvLlxuIgorI34gIk9ww6fDtWVzIHBhcmEgZm9yw6dhciBtYXJjYWRhcyBjb20gWypdIGVzdMOjbyBoYWJpbGl0YWRhcyBwb3IgcHJlZGVmaW5pw6fDo28uXG4iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBkcGtnLXNwbGl0IHRvIHNlZSBpZiBpdCdzIHBhcnQgb2YgYSBtdWx0aXBhcnRlciIKKyN+IG1zZ3N0ciAiIgorI34gImZhbGhvdSBleGVjdXRhciBkcGtnLXNwbGl0IHBhcmEgdmVyaWZpY2FyIHNlIMOpIHVtIGFycXVpdm8gZGl2aWRpZG8gZW0gIgorI34gInBhcnRlcyIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjbCBkZWJzaWctdmVyaWZ5IgorI34gbXNnc3RyICJmYWxob3UgbyBleGVjbCBkZWJzaWctdmVyaWZ5IgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgZHBrZy1kZWIgdG8gZXh0cmFjdCBjb250cm9sIGluZm9ybWF0aW9uIgorI34gbXNnc3RyICJmYWxob3UgZXhlY3V0YXIgZHBrZy1kZWIgcGFyYSBleHRyYWlyIGEgaW5mb3JtYcOnw6NvIGRlIGNvbnRyb2xlIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGV4ZWMgZHBrZy1kZWIgdG8gZ2V0IGZpbGVzeXN0ZW0gYXJjaGl2ZSIKKyN+IG1zZ3N0ciAiIgorI34gIm7Do28gZm9pIHBvc3PDrXZlbCBleGVjdXRhciBvIGRwa2ctZGViIHBhcmEgb2J0ZXIgdW0gYXJxdWl2byBkbyBzaXN0ZW1hIGRlICIKKyN+ICJmaWNoZWlyb3MiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gZGVsZXRlIGRpc2FwcGVhcmluZyBjb250cm9sIGluZm8gZmlsZSBgJS4yNTBzJyIKKyN+IG1zZ3N0ciAiIgorI34gIm7Do28gw6kgcG9zc8OtdmVsIGFwYWdhciBmaWNoZWlybyBkZSBjb250cm9sZSBpbmZvIGRlc2FwYXJlY2lkbyBgJS4yNTBzJyIKKworI34gbXNnaWQgImRwa2c6ICVzIG5vdCBmb3VuZC5cbiIKKyN+IG1zZ3N0ciAiZHBrZzogJXMgbsOjbyBmb2kgZW5jb250cmFkby5cbiIKKworI34gbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byAuLi4vREVCSUFOIgorI34gbXNnc3RyICJmYWxob3UgbyBjaGRpciBwYXJhIC4uLi9ERUJJQU4iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyB0YXIgLWNmIgorI34gbXNnc3RyICJmYWxob3UgZXhlY3V0YXIgdGFyIC1jZiIKKworI34gbXNnaWQgImZhaWxlZCB0byBtYWtlIHRtcGZpbGUgKGNvbnRyb2wpIgorI34gbXNnc3RyICJmYWxob3UgY3JpYXIgdG1wZmlsZSAoY29udHJvbCkiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gdW5saW5rIHRtcGZpbGUgKGNvbnRyb2wpLCAlcyIKKyN+IG1zZ3N0ciAiZmFsaG91IG8gdW5saW5rIHRtcGZpbGUgKGNvbnRyb2wpLCAlcyIKKworI34gbXNnaWQgImNvbnRyb2wiCisjfiBtc2dzdHIgImNvbnRyb2xlIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHJld2luZCB0bXBmaWxlIChjb250cm9sKSIKKyN+IG1zZ3N0ciAiZmFsaG91IG8gcmV3aW5kIHRtcGZpbGUgKGNvbnRyb2wpIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGZzdGF0IHRtcGZpbGUgKGNvbnRyb2wpIgorI34gbXNnc3RyICJmYWxob3UgbyBmc3RhdCB0bXBmaWxlIChjb250cm9sKSIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIGZpbmQiCisjfiBtc2dzdHIgImZhbGhvdSBleGVjdXRhciBvIGZpbmQiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBzaCAtYyBtdiBmb28vKiAmYyIKKyN+IG1zZ3N0ciAiZmFsaG91IGV4ZWN1dGFyIHNoIC1jIG12IGZvby8qICZjIgorCisjfiBtc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gJS4yNTBzIGxlbmd0aCBjb250YWlucyBudWxscyIKKyN+IG1zZ3N0ciAiIgorI34gIm8gZmljaGVpcm8gYCUuMjUwcycgZXN0w6EgY29ycm9tcGlkbyAtICUuMjUwcyBkZSBjb21wcmltZW50byBjb250w6ltIG51bG9zIgorCisjfiBtc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gbmVnYXRpdmUgbWVtYmVyIGxlbmd0aCAlemkiCisjfiBtc2dzdHIgIiIKKyN+ICJvIGZpY2hlaXJvIGAlLjI1MHMnIGVzdMOhIGNvcnJvbXBpZG8gLSBjb21wcmltZW50byAlemkgZGUgbWVtYnJvIG5lZ2F0aXZvIgorCisjfiBtc2dpZCAiZmFpbGVkIGdldHRpbmcgdGhlIGN1cnJlbnQgZmlsZSBwb3NpdGlvbiIKKyN+IG1zZ3N0ciAiZmFsaG91IG9idGVyIGEgYWN0dWFsIHBvc2nDp8OjbyBubyBmaWNoZWlybyIKKworI34gbXNnaWQgImZhaWxlZCBzZXR0aW5nIHRoZSBjdXJyZW50IGZpbGUgcG9zaXRpb24iCisjfiBtc2dzdHIgImZhbGhvdSBkZWZpbmlyIGEgYWN0dWFsIHBvc2nDp8OjbyBubyBmaWNoZWlybyIKKworI34gbXNnaWQgInZlcnNpb24gbnVtYmVyIgorI34gbXNnc3RyICJuw7ptZXJvIGRhIHZlcnPDo28iCisKKyN+IG1zZ2lkICJtZW1iZXIgbGVuZ3RoIgorI34gbXNnc3RyICJjb21wcmltZW50byBkbyBtZW1icm8iCisKKyN+IG1zZ2lkICJoZWFkZXIgaW5mbyBtZW1iZXIiCisjfiBtc2dzdHIgIm1lbWJybyBkbyBjYWJlw6dhbGhvIGluZm8iCisKKyN+IG1zZ2lkICJza2lwcGVkIGNvbnRyb2wgYXJlYSBmcm9tICVzIgorI34gbXNnc3RyICJzYWx0b3Ugw6FyZWEgZGUgY29udHJvbG8gZGUgJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHRlbXBvcmFyeSBkaXJlY3RvcnkiCisjfiBtc2dzdHIgImZhbGhvdSBhIGNyaWHDp8OjbyBkZSBkaXJlY3TDs3JpbyB0ZW1wb3LDoXJpbyIKKworI34gbXNnaWQgImluZm9fc3BldyIKKyN+IG1zZ3N0ciAiaW5mb19zcGV3IgorCisjfiBtc2dpZCAiaW5mbyBsZW5ndGgiCisjfiBtc2dzdHIgImluZm9ybWHDp8OjbyBkZSBjb21wcmltZW50byIKKworI34gbXNnaWQgInRvdGFsIGxlbmd0aCIKKyN+IG1zZ3N0ciAiY29tcHJpbWVudG8gdG90YWwiCisKKyN+IG1zZ2lkICJkYXRhIGxlbmd0aCIKKyN+IG1zZ3N0ciAiY29tcHJpbWVudG8gZG9zIGRhZG9zIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgZHBrZy1kZWIgdG8gZXh0cmFjdCBmaWVsZCB2YWx1ZSIKKyN+IG1zZ3N0ciAiZmFsaG91IGV4ZWN1dGFyIGRwa2ctZGViIHBhcmEgZXh0cmFpciB2YWxvciBkbyBjYW1wbyIKKworI34gbXNnaWQgInVuYWJsZSB0byBzdGF0ICVzOiAlcyIKKyN+IG1zZ3N0ciAibsOjbyBmb2kgcG9zc8OtdmVsIGZhemVyIHN0YXQgJXM6ICVzIgorCisjfiBtc2dpZCAic2xhdmUgbmFtZSAlcyBkdXBsaWNhdGVkIgorI34gbXNnc3RyICJvIG5vbWUgZG8gc2xhdmUgJXMgZXN0w6EgZHVwbGljYWRvIgorCisjfiBtc2dpZCAic2xhdmUgbGluayAlcyBkdXBsaWNhdGVkIgorI34gbXNnc3RyICJvIGxpbmsgZG8gc2xhdmUgJXMgZXN0w6EgZHVwbGljYWRvIgorCisjfiBtc2dpZCAiJWQgcmVxdWVzdGVkIGNvbnRyb2wgY29tcG9uZW50cyBhcmUgbWlzc2luZyIKKyN+IG1zZ3N0ciAiRmFsdGFtICVkIGNvbXBvbmVudGVzIGRlIGNvbnRyb2xlIHBlZGlkb3MiCisKKyN+IG1zZ2lkICJjYXQgKGRhdGEpIgorI34gbXNnc3RyICJjYXQgKGRhdGEpIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIG9wZW4gcGlwZSBkZXNjcmlwdG9yIGAxJyBpbiBwYXN0ZSIKKyN+IG1zZ3N0ciAiZmFsaG91IGFicmlyIG8gZGVzY3JpcHRvciBkbyBwaXBlIGAxJyBubyBwYXN0ZSIKKworI34gbXNnaWQgImZhaWxlZCB0byB3cml0ZSB0byBnemlwIC1kYyIKKyN+IG1zZ3N0ciAiZmFsaG91IGEgZXNjcml0YSBwYXJhIGd6aXAgLWRjIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGNsb3NlIGd6aXAgLWRjIgorI34gbXNnc3RyICJmYWxob3UgZmVjaGFyIGd6aXAgLWRjIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHN5c2NhbGwgbHNlZWsgdG8gZmlsZXMgYXJjaGl2ZSBwb3J0aW9uIgorI34gbXNnc3RyICJmYWxob3UgYSBjaGFtYWRhIGFvIHNpc3RlbWEgbHNlZWsgw6AgcG9yw6fDo28gZGUgZmljaGVpcm9zIGRvIGFycXVpdm8iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gZXhlYyBta3NwbGl0IgorI34gbXNnc3RyICJuw6NvIGZvaSBwb3Nzw612ZWwgZXhlY3V0YXIgbWtzcGxpdCIKKworI34gbXNnaWQgIiIKKyN+ICJcbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisjfiAiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi4iCisjfiBtc2dzdHIgIiIKKyN+ICJcbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisjfiAiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi4iCisKKyN+IG1zZ2lkICJ0d28gY29tbWFuZHMgc3BlY2lmaWVkOiAlcyBhbmQgLS0lcyIKKyN+IG1zZ3N0ciAiZG9pcyBjb21hbmRvcyBlc3BlY8OtZmljYWRvczogJXMgZSAtLSVzIgorCisjfiBtc2dpZCAiLS0lcyBuZWVkcyBhIGRpdmVydC10byBhcmd1bWVudCIKKyN+IG1zZ3N0ciAiLS0lcyBuZWNlc3NpdGEgZGUgdW0gZGVzdmlvLXBhcmEgY29tbyBhcmd1bWVudG8iCisKKyN+IG1zZ2lkICItLSVzIG5lZWRzIGEgPHBhY2thZ2U+IGFyZ3VtZW50IgorI34gbXNnc3RyICItLSVzIG5lY2Vzc2l0YSBkZSB1bSBhcmd1bWVudG8gPG5vbWUgZGUgcGFjb3RlPiIKKworI34gbXNnaWQgImNhbm5vdCBvcGVuIGRpdmVyc2lvbnM6ICVzIgorI34gbXNnc3RyICJmYWxob3UgYW8gYWJyaXIgZGVzdmlvczogJXMiCisKKyN+IG1zZ2lkICJtaXNzaW5nIGFsdG5hbWUiCisjfiBtc2dzdHIgImZhbHRhIG5vbWUgYWx0ZXJuYXRpdm8gKGFsdG5hbWUpIgorCisjfiBtc2dpZCAibWlzc2luZyBwYWNrYWdlIgorI34gbXNnc3RyICJmYWx0YSBwYWNvdGUiCisKKyN+IG1zZ2lkICJpbnRlcm5hbCBlcnJvciAtIGJhZCBtb2RlIGAlcyciCisjfiBtc2dzdHIgImVycm8gaW50ZXJubyAtIG1vZG8gaW52w6FsaWRvYCVzJyIKKworI34gbXNnaWQgImNhbm5vdCBzdGF0IG9sZCBuYW1lIGAlcyc6ICVzIgorI34gbXNnc3RyICJOw6NvIHBvZGUgZmF6ZXIgc3RhdCBhbyBub21lIGFudGlnbyBgJXMnOiAlcyIKKworI34gbXNnaWQgInJlbmFtZTogcmVuYW1lIGAlcycgdG8gYCVzJzogJXMiCisjfiBtc2dzdHIgInJlbm9tZWFyOiByZW5vbWVhciBgJXMnIHBhcmEgYCVzJzogJXMiCisKKyN+IG1zZ2lkICJjcmVhdGUgZGl2ZXJzaW9ucy1uZXc6ICVzIgorI34gbXNnc3RyICJjcmlhciBkaXZlcnNpb25zLW5ldzogJXMiCisKKyN+IG1zZ2lkICJ3cml0ZSBkaXZlcnNpb25zLW5ldzogJXMiCisjfiBtc2dzdHIgImVzY3JldmVyIGRpdmVyc2lvbnMtbmV3OiAlcyIKKworI34gbXNnaWQgImNsb3NlIGRpdmVyc2lvbnMtbmV3OiAlcyIKKyN+IG1zZ3N0ciAiZmVjaGFyIGRpdmVyc2lvbnMtbmV3OiAlcyIKKworI34gbXNnaWQgImNyZWF0ZSBuZXcgZGl2ZXJzaW9ucy1vbGQ6ICVzIgorI34gbXNnc3RyICJjcmlhciBub3ZvIGRpdmVyc2lvbnMtb2xkOiAlcyIKKworI34gbXNnaWQgImluc3RhbGwgbmV3IGRpdmVyc2lvbnM6ICVzIgorI34gbXNnc3RyICJpbnN0YWxhciBub3ZvcyBkZXN2aW9zOiAlcyIKKworI34gbXNnaWQgImludGVybmFsIGVycm9yOiAlcyBjb3JydXB0OiAlcyIKKyN+IG1zZ3N0ciAiZXJybyBpbnRlcm5vOiAlcyBjb3Jyb21waWRvOiAlcyIKKworI34gbXNnaWQgImRwa2ctZGViIC0gZXJyb3I6ICVzIChgJXMnKSBkb2Vzbid0IGNvbnRhaW4gYW55IGRpZ2l0c1xuIgorI34gbXNnc3RyICJkcGtnLWRlYiAtIGVycm86ICVzIChgJXMnKSBuw6NvIGNvbnTDqW0gcXVhaXNxdWVyIGTDrWdpdG9zXG4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiRGViaWFuIHJldmlzaW9uIgorI34gbXNnc3RyICJEZWJpYW4gJXMgdmVyc8OjbyAlcy5cbiIKKworI34gbXNnaWQgIiVkIGVycm9ycyBpbiBjb250cm9sIGZpbGUiCisjfiBtc2dzdHIgIiVkIGVycm9zIG5vIGZpY2hlaXJvIGRlIGNvbnRyb2xlIgorCisjLCBmdXp6eQorI34gbXNnaWQgImNhbid0IHJlYWRkaXIgJXM6ICVzIgorI34gbXNnc3RyICJuw6NvIHBvZGUgYWJyaXIgbyBsb2cgYCVzJzogJXNcbiIKKworI34gbXNnaWQgImZhaWxlZCBpbiBidWZmZXJfd3JpdGUoZmQpICglaSwgcmV0PSVsaSk6ICVzIgorI34gbXNnc3RyICJmYWxob3UgZW0gYnVmZmVyX3dyaXRlKGZkKSAoJWksIHJldD0lbGkpOiAlcyIKKworI34gbXNnaWQgImVvZiBpbiBidWZmZXJfd3JpdGUoc3RyZWFtKTogJXMiCisjfiBtc2dzdHIgImVvZiBlbSBidWZmZXJfd3JpdGUoc3RyZWFtKTogJXMiCisKKyN+IG1zZ2lkICJlcnJvciBpbiBidWZmZXJfd3JpdGUoc3RyZWFtKTogJXMiCisjfiBtc2dzdHIgImVycm8gZW0gYnVmZmVyX3dyaXRlKHN0cmVhbSk6ICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIGluIGJ1ZmZlcl9yZWFkKGZkKTogJXMiCisjfiBtc2dzdHIgImZhbGhhIGVtIGJ1ZmZlcl9yZWFkKGZkKTogJXMiCisKKyN+IG1zZ2lkICJlcnJvciBpbiBidWZmZXJfcmVhZChzdHJlYW0pOiAlcyIKKyN+IG1zZ3N0ciAiZXJybyBlbSBidWZmZXJfcmVhZChzdHJlYW0pOiAlcyIKKworIywgZnV6enkKKyN+IG1zZ2lkICIlcyByZXR1cm5lZCBlcnJvciBleGl0IHN0YXR1cyAlZCIKKyN+IG1zZ3N0ciAic3VicHJvY2Vzc28gJXMgcmV0b3Jub3UgZXJybyBkbyBzdGF0dXMgZGUgc2HDrWRhICVkIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiVzIGtpbGxlZCBieSBzaWduYWwgKCVzKSVzIgorI34gbXNnc3RyICJzdWJwcm9jZXNzbyAlcyBtb3J0byBwZWxvIHNpbmFsICglcyklcyIKKworIywgZnV6enkKKyN+IG1zZ2lkICIiCisjfiAiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbmNlIHZlcnNpb24gMiBvclxuIgorI34gImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LlxuIgorI34gbXNnc3RyICIiCisjfiAiXG4iCisjfiAiSXN0byDDqSBzb2Z0d2FyZSBsaXZyZTsgdmVqYSBhIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbmNlIHZlcnPDo28gMiBvdVxuIgorI34gInBvc3RlcmlvciBwYXJhIGNvbmRpw6fDtWVzIGRlIGPDs3BpYS4gTsOjbyBleGlzdGUgTkVOSFVNQSBnYXJhbnRpYS5cbiIKKworI34gbXNnaWQgIiIKKyN+ICJcbiIKKyN+ICJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgdmVyc2lvbiAyIG9yXG4iCisjfiAibGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJcbiIKKyN+ICJJc3RvIMOpIHNvZnR3YXJlIGxpdnJlOyB2ZWphIGEgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgdmVyc8OjbyAyIG91XG4iCisjfiAicG9zdGVyaW9yIHBhcmEgY29uZGnDp8O1ZXMgZGUgY8OzcGlhLiBOw6NvIGV4aXN0ZSBORU5IVU1BIGdhcmFudGlhLlxuIgorCisjfiBtc2dpZCAiJXM6IGZhaWxlZCB0byBleGVjICclcyAlcyciCisjfiBtc2dzdHIgIiVzOiBmYWxob3UgZXhlY3V0YXIgJyVzICVzJyIKKworI34gbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIGVycm9yOiByZWFkOiBgJXMnIgorI34gbXNnc3RyICIlczogZXJybyBpbnRlcm5vIGRlIGd6aXA6IHJlYWQ6IGAlcyciCisKKyN+IG1zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCBlcnJvcjogd3JpdGU6IGAlcyciCisjfiBtc2dzdHIgIiVzOiBlcnJvIGludGVybm8gZGUgZ3ppcDogd3JpdGU6IGAlcyciCisKKyN+IG1zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCBlcnJvcjogcmVhZCglaSkgIT0gd3JpdGUoJWkpIgorI34gbXNnc3RyICIlczogZXJybyBpbnRlcm5vIGRlIGd6aXA6IHJlYWQoJWkpICE9IHdyaXRlKCVpKSIKKworI34gbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiBlcnJvcjogcmVhZDogYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IGVycm8gaW50ZXJubyBkZSBiemlwMjogcmVhZDogYCVzJyIKKworI34gbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiBlcnJvcjogd3JpdGU6IGAlcyciCisjfiBtc2dzdHIgIiVzOiBlcnJvIGludGVybm8gZGUgYnppcDI6IHdyaXRlOiBgJXMnIgorCisjfiBtc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIGVycm9yOiByZWFkKCVpKSAhPSB3cml0ZSglaSkiCisjfiBtc2dzdHIgIiVzOiBlcnJvIGludGVybm8gZGUgYnppcDI6IHJlYWQoJWkpICE9IHdyaXRlKCVpKSIKKworI34gbXNnaWQgIkRvbid0IGZvcmdldCB0byBmb3JlZ3JvdW5kIChgZmcnKSB0aGlzIHByb2Nlc3Mgd2hlbiB5b3UncmUgZG9uZSAhXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJOw6NvIHNlIGVzcXVlw6dhIGRlIHRyYXplciBlc3RlIHByb2Nlc3NvIHBhcmEgZm9yZWdyb3VuZCAoYGZnJykgcXVhbmRvICIKKyN+ICJ0aXZlciB0ZXJtaW5hZG8gIVxuIgorCisjfiBtc2dpZCAiIgorI34gIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgb3JcbiIKKyN+ICJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKKyN+ICJTZWUgJXMgLS1saWNlbnNlIGZvciBjb3B5cmlnaHQgYW5kIGxpY2Vuc2UgZGV0YWlscy5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIklzdG8gw6kgc29mdHdhcmUgbGl2cmU7IHZlamEgYSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSB2ZXJzw6NvIDIgb3VcbiIKKyN+ICJwb3N0ZXJpb3IgcGFyYSBjb25kacOnw7VlcyBkZSBjw7NwaWEuIE7Do28gZXhpc3RlIE5FTkhVTUEgZ2FyYW50aWEuXG4iCisjfiAiVmVqYSAlcyAtLWxpY2Vuc2UgcGFyYSBkZXRhbGhlcyBkZSBjb3B5cmlnaHQgZSBsaWNlbsOnYS5cbiIKKworI34gbXNnaWQgInVuYWJsZSB0byBnZXQgdW5pcXVlIGZpbGVuYW1lIGZvciBjb250cm9sIGluZm8iCisjfiBtc2dzdHIgIiIKKyN+ICJuw6NvIGZvaSBwb3Nzw612ZWwgb2J0ZXIgbm9tZSBkZSBmaWNoZWlybyDDum5pY28gcGFyYSBpbmZvcm1hw6fDo28gZGUgY29udHJvbGUiCisKKyN+IG1zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIG1hbmFnZW1lbnQgcHJvZ3JhbSBxdWVyeSB0b29sXG4iCisjfiBtc2dzdHIgIkRlYmlhbiBgJXMnIGZlcnJhbWVudGEgZGUgcXVlcnkgZG8gcHJvZ3JhbWEgZGUgZ2VzdMOjbyBkZSBwYWNvdGVzXG4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiIgorI34gIlVzZSAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgcXVlcnlpbmcgcGFja2FnZXM7XG4iCisjfiAiVXNlIC0tbGljZW5zZSBmb3IgY29weXJpZ2h0IGxpY2Vuc2UgYW5kIGxhY2sgb2Ygd2FycmFudHkgKEdOVSBHUEwpLiIKKyN+IG1zZ3N0ciAiIgorI34gIlV0aWxpemUgLS1oZWxwIHBhcmEgYWp1ZGEgYWNlcmNhIGRhIHBlc3F1aXNhIGRlIHBhY290ZXM7XG4iCisjfiAiVXRpbGl6ZSAtLWxpY2VuY2UgcGFyYSB2ZXIgYSBsaWNlbsOnYSBkZSBjb3B5cmlnaHQgZSBhIGluZXhpc3TDqm5jaWEgZGUgIgorI34gImdhcmFudGlhIChHTlUgR1BMKS5cbiIKKyN+ICJcbiIKKworI34gbXNnaWQgImZhaWxlZCB0byBjaG93biAlczogJXMiCisjfiBtc2dzdHIgImZhbGhhIGFvIHRlbnRhciBmYXplciBvICdjaHdvbicgJXM6wrclcyIKKworI34gbXNnaWQgImZhaWxlZCB0byBjaG1vZCAlczogJXMiCisjfiBtc2dzdHIgImZhbGhvdSBhbyBleGVjdXRhciBjaG1vZCAlczrCtyVzIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGZvcmsgZm9yIGNsZWFudXAiCisjfiBtc2dzdHIgImZhbGhvdSBvIGZvcmsgcGFyYSBsaW1wZXphIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHdhaXQgZm9yIHJtIGNsZWFudXAiCisjfiBtc2dzdHIgImZhbGhvdSBhIGVzcGVyYSBkYSBsaW1wZXphIGNvbSBybSIKKworI34gbXNnaWQgInJtIGNsZWFudXAgZmFpbGVkLCBjb2RlICVkXG4iCisjfiBtc2dzdHIgImZhbGhvdSBhIGxpbXBlemEgY29tIG8gcm0sIGPDs2RpZ28gJWRcbiIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIHJtIC1yZiIKKyN+IG1zZ3N0ciAiZmFsaG91IGV4ZWN1dGFyIHJtIC1yZiIKKworI34gbXNnaWQgImZhaWxlZCB0byByZWFkIGBjb250cm9sJyAoaW4gYCUuMjU1cycpIgorI34gbXNnc3RyICJmYWxob3UgbGVyIG8gYGNvbnRyb2wnIChlbSBgJS4yNTVzJykiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gc2VlayBiYWNrIgorI34gbXNnc3RyICJuw6NvIGZvaSBwb3NzaXZlbCBwcm9jdXJhciBhdHLDoXMiCisKKyN+IG1zZ2lkICJ1bmtub3duIGRhdGEgdHlwZSBgJWknIGluIGJ1ZmZlcl93cml0ZVxuIgorI34gbXNnc3RyICJ0aXBvIGRlIGRhZG9zICclaScgZGVzY29uaGVjaWRvIGVtIGJ1ZmZlcl93cml0ZVxuIgorCisjfiBtc2dpZCAidW5rbm93biBkYXRhIHR5cGUgYCVpJyBpbiBidWZmZXJfcmVhZFxuIgorI34gbXNnc3RyICJ0aXBvIGRlIGRhZG9zIGRlc2NvbmhlY2lkbyBgJWknIGVtIGJ1ZmZlcl9yZWFkXG4iCisKKyN+IG1zZ2lkICJ3YWl0IGZvciBzaGVsbCBmYWlsZWQiCisjfiBtc2dzdHIgImZhbGhhIGFvIGVzcGVyYXIgcG9yIHVtYSBzaGVsbCIKKworI34gbXNnaWQgInJlYWQgZXJyb3IgaW4gZGl2ZXJzaW9ucyBbaV0iCisjfiBtc2dzdHIgImVycm8gZGUgbGVpdHVyYSBlbSBkaXZlcnNpb25zIFtpXSIKKworI34gbXNnaWQgInVubGluayIKKyN+IG1zZ3N0ciAidW5saW5rIgorCisjfiBtc2dpZCAiY2htb2QiCisjfiBtc2dzdHIgImNobW9kIgorCisjfiBtc2dpZCAiZGVsZXRlIgorI34gbXNnc3RyICJkZWxldGUiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiZmFpbGVkIHRvICVzICclLjI1NXMnIgorI34gbXNnc3RyICJvICVzIGZhbGhvdSBgJSUuMjU1cyciCisKKyN+IG1zZ2lkICJ3YWl0IGZvciBkcGtnLXNwbGl0IGZhaWxlZCIKKyN+IG1zZ3N0ciAiYSBlc3BlcmEgcG9yIGRwa2ctc3BsaXQgZmFsaG91IgorCisjfiBtc2dpZCAiY2Fubm90IHJlbW92ZSBmaWxlIGAlLjI1MHMnIgorI34gbXNnc3RyICJuw6NvIHBvZGUgcmVtb3ZlciBvIGZpY2hlaXJvIGAlLjI1MHMnIgorCisjfiBtc2dpZCAiIgorI34gIlxuIgorI34gIkNvcHlyaWdodCAoQykgMjAwMCBXaWNoZXJ0IEFra2VybWFuLiIKKyN+IG1zZ3N0ciAiIgorI34gIlxuIgorI34gIkNvcHlyaWdodCAoQykgMjAwMCBXaWNoZXJ0IEFra2VybWFuLiIKKworI34gbXNnaWQgIm5vIG1vZGUgc3BlY2lmaWVkIgorI34gbXNnc3RyICJuZW5odW0gbW9kbyBlc3BlY2lmaWNhZG8iCisKKyN+IG1zZ2lkICJpbGxlZ2FsIHVzZXIgJXMiCisjfiBtc2dzdHIgInV0aWxpemFkb3IgaWxlZ2FsICVzIgorCisjfiBtc2dpZCAibm9uLWV4aXN0aW5nIHVzZXIgJXMiCisjfiBtc2dzdHIgInV0aWxpemFkb3IgbsOjbyBleGlzdGVudGUgJXMiCisKKyN+IG1zZ2lkICJpbGxlZ2FsIGdyb3VwICVzIgorI34gbXNnc3RyICJncnVwbyBpbGVnYWwgJXMiCisKKyN+IG1zZ2lkICJub24tZXhpc3RpbmcgZ3JvdXAgJXMiCisjfiBtc2dzdHIgImdydXBvIG7Do28gZXhpc3RlbnRlICVzIgorCisjfiBtc2dpZCAiaWxsZWdhbCBtb2RlICVzIgorI34gbXNnc3RyICJtb2RvIGlsZWdhbCAlcyIKKworI34gbXNnaWQgImFib3J0aW5nIgorI34gbXNnc3RyICJhIGFib3J0YXIiCisKKyN+IG1zZ2lkICJjYW5ub3Qgb3BlbiBzdGF0b3ZlcnJpZGU6ICVzIgorI34gbXNnc3RyICJmYWxob3UgYW8gYWJyaXIgZmljaGVpcm8gc3RhdG92ZXJyaWRlOiAlcyIKKworI34gbXNnaWQgIk11bHRpcGxlIG92ZXJyaWRlcyBmb3IgXCIlc1wiLCBhYm9ydGluZyIKKyN+IG1zZ3N0ciAiJ092ZXJyaWRlcycgbcO6bHRpcGxvcyBwYXJhIFwiJXNcIiwgYSBhYm9ydGFyIGEgb3BlcmHDp8OjbyIKKworI34gbXNnaWQgImZhaWxlZCB3cml0ZSBkdXJpbmcgaGFzaHJlcG9ydCIKKyN+IG1zZ3N0ciAiZmFsaG91IGEgZXNjcml0YSBkdXJhbnRlIGhhc2hyZXBvcnQiCisKKyN+IG1zZ2lkICJjb25maWd1cmF0aW9uIGVycm9yOiB1bmtub3duIG9wdGlvbiAlcyIKKyN+IG1zZ3N0ciAiZXJybyBkZSBjb25maWd1cmHDp8Ojbzogb3DDp8OjbyBkZXNjb25oZWNpZGEgJXMiCisKKyN+IG1zZ2lkICJjb25maWd1cmF0aW9uIGVycm9yOiAlcyBkb2VzIG5vdCB0YWtlIGEgdmFsdWUiCisjfiBtc2dzdHIgImVycm8gZGUgY29uZmlndXJhw6fDo286ICVzIG7Do28gdG9tYSB2YWxvcmVzIgorCisjfiBtc2dpZCAiZHBrZzogdmVyc2lvbiAnJXMnIGhhcyBiYWQgc3ludGF4OiAlc1xuIgorI34gbXNnc3RyICJkcGtnOiB2ZXJzw6NvICclcycgdGVtIHNpbnRheGUgZXJyYWRhOiAlc1xuIgorCisjLCBmdXp6eQorI34gbXNnaWQgInVuZXhlY3B0ZWQgZW5kIG9mIGxpbmUgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCisjfiBtc2dzdHIgImZpbSBkZSBsaW5oYSBpbmVzcGVyYWRvIG5vIG5vbWUgZGUgcGFjb3RlIG5hIGxpbmhhICVkIgorCisjLCBmdXp6eQorI34gbXNnaWQgIi0tY2hlY2stc3VwcG9ydGVkIHRha2VzIG5vIGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiZHBrZy10cmlnZ2VyIC0tY2hlY2stc3VwcG9ydGVkIG7Do28gbGV2YSBhcmd1bWVudG9zIgorCisjfiBtc2dpZCAiLS1mb3JnZXQtb2xkLXVuYXZhaWwgdGFrZXMgbm8gYXJndW1lbnRzIgorI34gbXNnc3RyICItLWZvcmdldC1vbGQtdW5hdmFpbCBuw6NvIGxldmEgYXJndW1lbnRvcyIKKworI34gbXNnaWQgIiIKKyN+ICJcbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDE5OTQsMTk5NSBJYW4gSmFja3Nvbi4iCisjfiBtc2dzdHIgIiIKKyN+ICJcbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDE5OTQsMTk5NSBJYW4gSmFja3Nvbi4iCisKKyN+IG1zZ2lkICIiCisjfiAiVXNhZ2U6ICVzIFs8b3B0aW9ucz4gLi4uXSBbLS1dIDxmaWxlbmFtZT5cbiIKKyN+ICJcbiIKKyN+ICJPcHRpb25zOlxuIgorI34gIiAgLS1zZWN0aW9uIDxyZWdleHA+IDx0aXRsZT5cbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICBwdXQgdGhlIG5ldyBlbnRyeSBpbiB0aGUgPHJlZ2V4PiBtYXRjaGVkICIKKyN+ICJzZWN0aW9uXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgb3IgY3JlYXRlIGEgbmV3IG9uZSB3aXRoIDx0aXRsZT4gaWYgbm9uLSIKKyN+ICJleGlzdGVudC5cbiIKKyN+ICIgIC0tbWVudWVudHJ5PTx0ZXh0PiAgICAgICBzZXQgdGhlIG1lbnUgZW50cnkuXG4iCisjfiAiICAtLWRlc2NyaXB0aW9uPTx0ZXh0PiAgICAgc2V0IHRoZSBkZXNjcmlwdGlvbiB0byBiZSB1c2VkIGluIHRoZSBtZW51ICIKKyN+ICJlbnRyeS5cbiIKKyN+ICIgIC0taW5mby1maWxlPTxwYXRoPiAgICAgICBzcGVjaWZ5IGluZm8gZmlsZSB0byBpbnN0YWxsIGluIHRoZSAiCisjfiAiZGlyZWN0b3J5LlxuIgorI34gIiAgLS1kaXItZmlsZT08cGF0aD4gICAgICAgIHNwZWNpZnkgZmlsZSBuYW1lIG9mIGluZm8gZGlyZWN0b3J5IGZpbGUuXG4iCisjfiAiICAtLWluZm9kaXI9PGRpcmVjdG9yeT4gICAgc2FtZSBhcyAnLS1kaXItZmlsZT08ZGlyZWN0b3J5Pi9kaXInLlxuIgorI34gIiAgLS1pbmZvLWRpcj08ZGlyZWN0b3J5PiAgIGxpa2V3aXNlLlxuIgorI34gIiAgLS1rZWVwLW9sZCAgICAgICAgICAgICAgIGRvIG5vdCByZXBsYWNlIGVudHJpZXMgbm9yIHJlbW92ZSBlbXB0eSBvbmVzLlxuIgorI34gIiAgLS1yZW1vdmUgICAgICAgICAgICAgICAgIHJlbW92ZSB0aGUgZW50cnkgc3BlY2lmaWVkIGJ5IDxmaWxlbmFtZT4gIgorI34gImJhc2VuYW1lLlxuIgorI34gIiAgLS1yZW1vdmUtZXhhY3RseSAgICAgICAgIHJlbW92ZSB0aGUgZXhhY3QgPGZpbGVuYW1lPiBlbnRyeS5cbiIKKyN+ICIgIC0tdGVzdCAgICAgICAgICAgICAgICAgICBlbmFibGVzIHRlc3QgbW9kZSAobm8gYWN0aW9ucyB0YWtlbikuXG4iCisjfiAiICAtLWRlYnVnICAgICAgICAgICAgICAgICAgZW5hYmxlcyBkZWJ1ZyBtb2RlIChzaG93IG1vcmUgaW5mb3JtYXRpb24pLlxuIgorI34gIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIGRvIG5vdCBzaG93IG91dHB1dCBtZXNzYWdlcy5cbiIKKyN+ICIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorI34gIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJVdGlsaXphw6fDo286ICVzIFs8b3DDp8O1ZXM+IC4uLl0gWy0tXSA8bm9tZSBkbyBmaWNoZWlybz5cbiIKKyN+ICJcbiIKKyN+ICJPcMOnw7VlczpcbiIKKyN+ICIgIC0tc2VjdGlvbiA8ZXhwcmVzc8OjbyByZWd1bGFyPiA8dGl0dWxvPlxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9xdWUgYSBub3ZhIGVudHJhZGEgbmEgc2Vjw6fDo28gcXVlICIKKyN+ICJjb3JyZXNwb25kZSBhIGVzdGEgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGV4cHJlc3PDo28gcmVndWxhcj4gb3UgY3JpYSAiCisjfiAidW1hIG5vdmEgY29tIG8gPHRpdGxlPiBzZSBuw6NvZXhpc3Rpci5cbiIKKyN+ICIgIC0tbWVudWVudHJ5PTx0ZXh0bz4gICAgICAgY29uZmlndXJhIGEgZW50cmFkYSBkZSBtZW51LlxuIgorI34gIiAgLS1kZXNjcmlwdGlvbj08dGV4dG8+ICAgICBjb25maWd1cmEgYSBkZXNjcmnDp8OjbyBhIHNlciB1dGlsaXphZGEgbmEgIgorI34gImVudHJhZGEgZGUgbWVudS5cbiIKKyN+ICIgIC0taW5mby1maWxlPTxjYW1pbmhvPiAgICAgICBlc3BlY2lmaWNhIG8gZmljaGVpcm8gYSBzZXIgaW5zdGFsYWRvIG5vICIKKyN+ICJkaXJlY3TDs3Jpby5cbiIKKyN+ICIgIC0tZGlyLWZpbGU9PGNhbWluaG8+ICAgICAgICBlc3BlY2lmaWNhIG8gbm9tZSBkZSBmaWNoZWlybyBkbyBmaWNoZWlybyAiCisjfiAiZGUgaW5mb3JtYcOnw6NvIGRvIGRpcmVjdMOzcmlvLlxuIgorI34gIiAgLS1pbmZvZGlyPTxkaXJlY3TDs3Jpbz4gICAgbyBtZXNtbyBxdWUgJy0tZGlyLWZpbGU9PGRpcmVjdMOzcmlvPi9kaXInLlxuIgorI34gIiAgLS1pbmZvLWRpcj08ZGlyZWN0b3J5PiAgIGRvIG1lc21vIG1vZG8uXG4iCisjfiAiICAtLWtlZXAtb2xkICAgICAgICAgICAgICAgbsOjbyBzdWJzdGl0dWlyIGVudHJhZGFzIG5lbSByZW1vdmVyIHZhemlhcy5cbiIKKyN+ICIgIC0tcmVtb3ZlICAgICAgICAgICAgICAgICByZW1vdmVyIGEgZW50cmFkYSBlc3BlY2lmaWNhZGEgcGVsbyBub21lICIKKyN+ICJiYXNlYWRvIGVtIDxmaWxlbmFtZT4uXG4iCisjfiAiICAtLXJlbW92ZS1leGFjdGx5ICAgICAgICAgcmVtb3ZlciBhIGVudHJhZGEgZXhhY3RhIGRlIDxmaWxlbmFtZT4uXG4iCisjfiAiICAtLXRlc3QgICAgICAgICAgICAgICAgICAgYWN0aXZhIG8gbW9kbyBkZSB0ZXN0ZSAobsOjbyBleGVjdXRhIG5lbmh1bWEgIgorI34gImFjw6fDo28pLlxuIgorI34gIiAgLS1kZWJ1ZyAgICAgICAgICAgICAgICAgIGFjdGl2YSBvIG1vZG8gZGUgZGVwdXJhw6fDo28gKG1vc3RyYSBtYWlzICIKKyN+ICJpbmZvcm1hw6fDo28pLlxuIgorI34gIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIG7Do28gbW9zdHJhIG1lbnNhZ2VucyBkZSBzYcOtZGEuXG4iCisjfiAiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgbW9zdHJhIGVzdGEgbWVuc2FnZW0gZGUgYWp1ZGEuXG4iCisjfiAiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgaW5kaWNhIGEgdmVyc8Ojby5cbiIKKworI34gbXNnaWQgImNvdWxkIG5vdCBvcGVuIHN0ZGVyciBmb3Igb3V0cHV0ISAlcyIKKyN+IG1zZ3N0ciAibsOjbyBmb2kgcG9zc8OtdmVsIGFicmlyIHN0ZGVyciBwYXJhICdvdXRwdXQnISAlcyIKKworI34gbXNnaWQgIiVzOiAtLXNlY3Rpb24gbmVlZHMgdHdvIG1vcmUgYXJncyIKKyN+IG1zZ3N0ciAiJXM6IC0tc2VjdGlvbiBuZWNlc3NpdGEgZGUgbWFpcyBkb2lzICdhcmdzJyIKKworI34gbXNnaWQgIiVzOiBvcHRpb24gLS0lcyBpcyBkZXByZWNhdGVkIChpZ25vcmVkKSIKKyN+IG1zZ3N0ciAiJXM6IGEgb3DDp8OjbyAtLSVzIGVzdMOhIHVsdHJhcGFzc2FkYSAoaWdub3JhZGEpIgorCisjfiBtc2dpZCAiJXM6IHVua25vd24gb3B0aW9uIGAlcyciCisjfiBtc2dzdHIgIiVzOiBvcMOnw6NvIGRlc2NvbmhlY2lkYSBgJXMnIgorCisjfiBtc2dpZCAiJXM6IHRvbyBtYW55IGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiJXM6IGRlbWFzaWFkb3MgYXJndW1lbnRvcyIKKworI34gbXNnaWQgIiVzOiAtLXNlY3Rpb24gaWdub3JlZCB3aXRoIC0tcmVtb3ZlIgorI34gbXNnc3RyICIlczogLS1zZWN0aW9uIGlnbm9yYWRhIGNvbSAtLXJlbW92ZSIKKworI34gbXNnaWQgIiVzOiAtLWRlc2NyaXB0aW9uIGlnbm9yZWQgd2l0aCAtLXJlbW92ZSIKKyN+IG1zZ3N0ciAiJXM6IC0tZGVzY3JpcHRpb24gaWdub3JhZGEgY29tIC0tcmVtb3ZlIgorCisjfiBtc2dpZCAiJXM6IHRlc3QgbW9kZSAtIGRpciBmaWxlIHdpbGwgbm90IGJlIHVwZGF0ZWQiCisjfiBtc2dzdHIgIiVzOiBtb2RvIGRlIHRlc3RlIC0gbyBmaWNoZWlybyBkZSBkaXJlY3TDs3JpbyBuw6NvIHNlcsOhIGFjdHVhbGl6YWRvIgorCisjfiBtc2dpZCAiJXM6IHdhcm5pbmcsIGlnbm9yaW5nIGNvbmZ1c2luZyBJTkZPLURJUi1FTlRSWSBpbiBmaWxlLiIKKyN+IG1zZ3N0ciAiJXM6IGF0ZW7Dp8OjbywgYSBpZ25vcmFyIGVudHJhZGEgY29uZnVzYSBJTkZPLURJUi1FTlRSWSBubyBmaWNoZWlyby4iCisKKyN+IG1zZ2lkICJpbnZhbGlkIGluZm8gZW50cnkiCisjfiBtc2dzdHIgImVudHJhZGEgZGUgaW5mb3JtYcOnw6NvIGVycmFkYSIKKworI34gbXNnaWQgIiIKKyN+ICJcbiIKKyN+ICJObyBgU1RBUlQtSU5GTy1ESVItRU5UUlknIGFuZCBubyBgVGhpcyBmaWxlIGRvY3VtZW50cycuXG4iCisjfiAiJXM6IHVuYWJsZSB0byBkZXRlcm1pbmUgZGVzY3JpcHRpb24gZm9yIGBkaXInIGVudHJ5IC0gZ2l2aW5nIHVwXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJcbiIKKyN+ICJOw6NvIGV4aXN0ZSBgU1RBUlQtSU5GTy1ESVItRU5UUlknIG5lbSBgVGhpcyBmaWxlIGRvY3VtZW50cycuXG4iCisjfiAiJXM6IGltcG9zc8OtdmVsIGRldGVybWluYXIgZGVzY3Jpw6fDo28gcGFyYSBhIGVudHJhZGEgYGRpcicgLSBhIGRlc2lzdGlyXG4iCisKKyN+IG1zZ2lkICIlczogbm8gZmlsZSAlcywgcmV0cmlldmluZyBiYWNrdXAgZmlsZSAlcy4iCisjfiBtc2dzdHIgIiIKKyN+ICIlczogbsOjbyBleGlzdGUgbyBmaWNoZWlybyAlcywgYSByZWN1cGVyYXIgZmljaGVpcm8gZGUgY8OzcGlhIGRlIHNlZ3VyYW7Dp2EgIgorI34gIiVzLiIKKworI34gbXNnaWQgIiVzOiBubyBiYWNrdXAgZmlsZSAlcyBhdmFpbGFibGUsIHJldHJpZXZpbmcgZGVmYXVsdCBmaWxlLiIKKyN+IG1zZ3N0ciAiIgorI34gIiVzOiBuZW5odW1hIGPDs3BpYSBkZSBzZWd1cmFuw6dhIGRpc3BvbsOtdmVsIGRvIGZpY2hlaXJvICVzLCBhIHJlY3VwZXJhciBvICIKKyN+ICJmaWNoZWlybyBwb3Igb21pc3PDo28uIgorCisjfiBtc2dpZCAiJXM6IG5vIGJhY2t1cCBmaWxlICVzIGF2YWlsYWJsZS4iCisjfiBtc2dzdHIgIiVzOiBuZW5odW1hIGPDs3BpYSBkZSBzZWd1cmFuw6dhIGRvIGZpY2hlaXJvICVzIGRpc3BvbsOtdmVsLiIKKworI34gbXNnaWQgIiVzOiBubyBkZWZhdWx0IGZpbGUgJXMgYXZhaWxhYmxlLCBnaXZpbmcgdXAuIgorI34gbXNnc3RyICIlczogbmVuaHVtIGZpY2hpZXJvIHBvciBvbWlzc8OjbyAlcyBkaXNwb27DrXZlbCwgYSBkZXNpc3Rpci4iCisKKyN+IG1zZ2lkICIlczogZmFpbGVkIHRvIGxvY2sgZGlyIGZvciBlZGl0aW5nISAlcyIKKyN+IG1zZ3N0ciAiJXM6IGZhbGhvdSBvIGxvY2sgYW8gZGlyZWN0w7NyaW8gcGFyYSBlZGl0YXIhICVzIgorCisjfiBtc2dpZCAidHJ5IGRlbGV0aW5nICVzPyIKKyN+IG1zZ3N0ciAiZXhwZXJpbWVudGUgYXBhZ2FyICVzPyIKKworI34gbXNnaWQgInVuYWJsZSB0byBvcGVuICVzOiAlcyIKKyN+IG1zZ3N0ciAibsOjbyBmb2kgcG9zc8OtdmVsIGFicmlyICVzOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byBjbG9zZSAlcyBhZnRlciByZWFkOiAlcyIKKyN+IG1zZ3N0ciAibsOjbyBmb2kgcG9zc8OtdmVsIGZlY2hhciAlcyBhcMOzcyBsZXI6ICVzIgorCisjfiBtc2dpZCAiJXM6IGV4aXN0aW5nIGVudHJ5IGZvciBgJXMnIG5vdCByZXBsYWNlZCIKKyN+IG1zZ3N0ciAiJXM6IGVudHJhZGEgZXhpc3RlbnRlIHBhcmEgYCVzJyBuw6NvIHN1YnN0aXR1w61kbyIKKworI34gbXNnaWQgIiVzOiByZXBsYWNpbmcgZXhpc3RpbmcgZGlyIGVudHJ5IGZvciBgJXMnIgorI34gbXNnc3RyICIlczogYSBzdWJzdGl0dWlyIGEgZW50cmFkYSBleGlzdGVudGUgZG8gZGlyZWN0w7NyaW8gcGFyYSBgJXMnIgorCisjfiBtc2dpZCAiJXM6IGNyZWF0aW5nIG5ldyBzZWN0aW9uIGAlcyciCisjfiBtc2dzdHIgIiVzOiBhIGNyaWFyIG5vdmEgc2Vjw6fDo28gYCVzJyIKKworI34gbXNnaWQgIiVzOiBubyBzZWN0aW9ucyB5ZXQsIGNyZWF0aW5nIE1pc2NlbGxhbmVvdXMgc2VjdGlvbiB0b28uIgorI34gbXNnc3RyICIiCisjfiAiJXM6IG5lbmh1bWEgc2Vjw6fDo28gbmVzdGUgbW9tZW50bywgYSBjcmlhciBzZWPDp8OjbyBNaXNjZWxsYW5lb3VzIGRvIG1lc21vICIKKyN+ICJtb2RvLiIKKworI34gbXNnaWQgIiVzOiBubyBzZWN0aW9uIHNwZWNpZmllZCBmb3IgbmV3IGVudHJ5LCBwbGFjaW5nIGF0IGVuZCIKKyN+IG1zZ3N0ciAiIgorI34gIiVzOiBuZW5odW1hIHNlY8Onw6NvIGVzcGVjaWZpY2FkYSBwYXJhIGEgbm92YSBlbnRyYWRhLCBhIGNvbG9jYXIgbm8gZmltIgorCisjfiBtc2dpZCAiJXM6IGRlbGV0aW5nIGVudHJ5IGAlcyAuLi4nIgorI34gbXNnc3RyICIlczogYSBhcGFnYXIgYSBlbnRyYWRhIGAlcyAuLi4nIgorCisjfiBtc2dpZCAiJXM6IGVtcHR5IHNlY3Rpb24gYCVzJyBub3QgcmVtb3ZlZCIKKyN+IG1zZ3N0ciAiJXM6IHNlY8Onw6NvIHZhemlhIGAlcycsIG7Do28gcmVtb3ZpZGEiCisKKyN+IG1zZ2lkICIlczogZGVsZXRpbmcgZW1wdHkgc2VjdGlvbiBgJXMnIgorI34gbXNnc3RyICIlczogYSBhcGFnYXIgc2Vjw6fDo28gdmF6aWEgYCVzJyIKKworI34gbXNnaWQgIiVzOiBubyBlbnRyeSBmb3IgZmlsZSBgJXMnIGFuZCBtZW51IGVudHJ5IGAlcyciCisjfiBtc2dzdHIgIiIKKyN+ICIlczogbmVuaHVtYSBlbnRyYWRhIHBhcmEgbyBmaWNoZWlybyBgJXMnIGUgcGFyYSBhIGVudHJhZGEgZGUgbWVudSBgJXMnIgorCisjfiBtc2dpZCAiJXM6IG5vIGVudHJ5IGZvciBmaWxlIGAlcyciCisjfiBtc2dzdHIgIiVzOiBuZW5odW1hIGVudHJhZGEgcGFyYSBvIGZpY2hlaXJvIGAlcyciCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gYmFja3VwIG9sZCAlcywgZ2l2aW5nIHVwOiAlcyIKKyN+IG1zZ3N0ciAibsOjbyBmb2kgcG9zc8OtdmVsIHNhbHZhZ3VhcmRhciBvIGFudGlnbyAlcywgYSBkZXNpc3RpcjogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgJXM6ICVzIgorI34gbXNnc3RyICJuw6NvIGZvaSBwb3Nzw612ZWwgaW5zdGFsYXIgbyBub3ZvICVzOiAlcyIKKworI34gbXNnaWQgIiVzOiBjb3VsZCBub3QgYmFja3VwICVzIGluICVzOiAlcyIKKyN+IG1zZ3N0ciAiJXM6IG7Do28gcG9kZSBzYWx2YWd1YXJkYXIgJXMgZW0gJXM6ICVzIgorCisjfiBtc2dpZCAiJXM6IHdhcm5pbmcgLSB1bmFibGUgdG8gdW5sb2NrICVzOiAlcyIKKyN+IG1zZ3N0ciAiJXM6IGF2aXNvIC0gbsOjbyBmb2kgcG9zc8OtdmVsIGxpYmVydGFyICVzICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHJlYWQgJXM6ICVkIgorI34gbXNnc3RyICJuw6NvIGZvaSBwb3Nzw612ZWwgbGVyICVzOiAlZCIKKworI34gbXNnaWQgImRiZzogJXMiCisjfiBtc2dzdHIgImRiZzogJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gb3BlbiB0bXBmaWxlIChjb250cm9sKSwgJXMiCisjfiBtc2dzdHIgImZhbGhvdSBhYnJpciB0bXBmaWxlIChjb250cm9sKSwgJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gb3BlbiB0bXBmaWxlIChkYXRhKSwgJXMiCisjfiBtc2dzdHIgImZhbGhvdSBhYnJpciB0bXBmaWxlIChkYXRhKSwgJXMiCisKKyN+IG1zZ2lkICJpbnZhbGlkIG51bWJlciBmb3IgLS1jb21tYW5kLWZkIgorI34gbXNnc3RyICJuw7ptZXJvIGludsOhbGlkbyBwYXJhIC0tY29tbWFuZC1mZCIKKworI34gbXNnaWQgInVuYWJsZSB0byByZXdpbmQgYXQgc3RhcnQgb2YgdnNucHJpbnRmIgorI34gbXNnc3RyICJOw6NvIGZvaSBwb3Nzw612ZWwgZmF6ZXIgcmV3aW5kIG5vIGluaWNpbyBkbyB2c25wcmludGYiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gdHJ1bmNhdGUgaW4gdnNucHJpbnRmIgorI34gbXNnc3RyICJuw6NvIGZvaSBwb3Nzw612ZWwgdHJ1bmNhciBlbSB2c25wcmludGYiCisKKyN+IG1zZ2lkICJ3cml0ZSBlcnJvciBpbiB2c25wcmludGYiCisjfiBtc2dzdHIgImVycm8gZGUgZXNjcml0YSBlbSB2c25wcmludGYiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gc3RhdCBpbiB2c25wcmludGYiCisjfiBtc2dzdHIgIm7Do28gZm9pIHBvc3PDrXZlbCBmYXplciBzdGF0IGVtIHZzbnByaW50ZiIKKworI34gbXNnaWQgInVuYWJsZSB0byByZXdpbmQgaW4gdnNucHJpbnRmIgorI34gbXNnc3RyICJuw6NvIGZvaSBwb3Nzw612ZWwgZmF6ZXIgcmV3aW5kIGVtIHZzbnByaW50ZiIKKworI34gbXNnaWQgInJlYWQgZXJyb3IgaW4gdnNucHJpbnRmIHRydW5jYXRlZCIKKyN+IG1zZ3N0ciAiZXJybyBkZSBsZWl0dXJhIGVtIHZzbnByaW50ZiB0cnVuY2FkbyIKKworI34gbXNnaWQgIlN5c3RlbSBlcnJvciBuby4lZCIKKyN+IG1zZ3N0ciAiRXJybyBkZSBzaXN0ZW1hIG51bS4lZCIKKworI34gbXNnaWQgIlNpZ25hbCBuby4lZCIKKyN+IG1zZ3N0ciAiU2luYWwgbnVtLiVkIgorCisjfiBtc2dpZCAiZHBrZzogd2FybmluZyAtICVzIHJldHVybmVkIGVycm9yIGV4aXQgc3RhdHVzICVkXG4iCisjfiBtc2dzdHIgImRwa2c6IGF2aXNvIC0gJXMgcmV0b3Jub3UgZXJybyBkbyBzdGF0dXMgZGUgc2HDrWRhICVkXG4iCisKKyN+IG1zZ2lkICJkcGtnOiB3YXJuaW5nIC0gJXMga2lsbGVkIGJ5IHNpZ25hbCAoJXMpJXNcbiIKKyN+IG1zZ3N0ciAiZHBrZzogYXZpc28gLSAlcyBtb3J0byBwZWxvIHNpbmFsICglcyklc1xuIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHJlYWQgYCVzJyBhdCBsaW5lICVkIgorI34gbXNnc3RyICJmYWxob3UgYSBsZWl0dXJhIGRlIGAlcycgbmEgbGluaGEgJWQiCisKKyN+IG1zZ2lkICJwYXJzZSBlcnJvciwgaW4gZmlsZSBgJS4yNTVzJyBuZWFyIGxpbmUgJWQiCisjfiBtc2dzdHIgImVycm8gZGUgaW50ZXJwcmV0YcOnw6NvLCBubyBmaWNoZWlybyBgJS4yNTVzJyBwZXJ0byBkYSBsaW5oYSAlZCIKKworI34gbXNnaWQgIiBwYWNrYWdlIGAlLjI1NXMnIgorI34gbXNnc3RyICIgcGFjb3RlIGAlLjI1NXMnIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHJlYWxsb2MgZm9yIHZhcmlhYmxlIGJ1ZmZlciIKKyN+IG1zZ3N0ciAicmVhbGxvYyBmYWxob3UgcGFyYSBidWZmZXIgZGUgdmFyacOhdmVsIgorCisjfiBtc2dpZCAicHJvY2Vzc19hcmNoaXZlIC4uLiAgYWxyZWFkeSBkaXNhcHBlYXJlZCAhIgorI34gbXNnc3RyICJwcm9jZXNzX2FyY2hpdmUgLi4uIGrDoSBkZXNhcGFyZWNldSAhIgorCisjfiBtc2dpZCAiZ29iYmxlIHJlcGxhY2VkIGZpbGUgYCUuMjU1cyciCisjfiBtc2dzdHIgIm8gZmljaGVpcm8gYCUuMjU1cycgZm9pIHN1YnN0aXR1w61kbyIKKworI34gbXNnaWQgImRwa2c6ICVzOiB3YXJuaW5nIC0gZmFpbGVkIHRvIHJlbW92ZSBgJS4yNTBzJzogJXNcbiIKKyN+IG1zZ3N0ciAiZHBrZzogJXM6IGF2aXNvIC0gZmFsaG91IHJlbW92ZXIgYCUuMjUwcyc6ICVzXG4iCisKKyN+IG1zZ2lkICItLWF1ZGl0IGRvZXMgbm90IHRha2UgYW55IGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiLS1hdWRpdCBuw6NvIGxldmEgYXJndW1lbnRvcyIKKworI34gbXNnaWQgIi0teWV0LXRvLXVucGFjayBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudHMiCisjfiBtc2dzdHIgIi0teWV0LXRvLXVucGFjayBuw6NvIGxldmEgYXJndW1lbnRvcyIKKworI34gbXNnaWQgIi0tYXNzZXJ0LSogZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnRzIgorI34gbXNnc3RyICItLWFzc2VydC0qIG7Do28gbGV2YSBhcmd1bWVudG9zIgorCisjfiBtc2dpZCAiLS1wcmVkZXAtcGFja2FnZSBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudCIKKyN+IG1zZ3N0ciAiLS1wcmVkZXAtcGFja2FnZSBuw6NvIGxldmEgcXVhbHF1ZXIgYXJndW1lbnRvIgorCisjfiBtc2dpZCAiLS1wcmludC1hcmNoaXRlY3R1cmUgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tcHJpbnQtYXJjaGl0ZWN0dXJlIG7Do28gbGV2YSBxdWFscXVlciBhcmd1bWVudG8iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gc3RhdCBpbnN0YWxsZWQgJXMgc2NyaXB0IGAlLjI1MHMnIgorI34gbXNnc3RyICJuw6NvIGZvaSBwb3Nzw612ZWwgZmF6ZXIgc3RhdCBhbyBzY3JpcHQgJXMgaW5zdGFsYWRvIGAlLjI1MHMnIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHN0YXQgbmV3ICVzIHNjcmlwdCBgJS4yNTBzJyIKKyN+IG1zZ3N0ciAibsOjbyBmb2kgcG9zc8OtdmVsIG8gc3RhdCBhbyBub3ZvIHNjcmlwdCAlcyBgJS4yNTBzJyIKKworI34gbXNnaWQgInVuYWJsZSB0byBleGVjdXRlIG5ldyAlcyIKKyN+IG1zZ3N0ciAibsOjbyBmb2kgcG9zc8OtdmVsIGV4ZWN1dGFyIG5vdm8gJXMiCisKKyN+IG1zZ2lkICJkcGtnOiB3YXJuaW5nIC0gdW5hYmxlIHRvIHN0YXQgJXMgYCUuMjUwcyc6ICVzXG4iCisjfiBtc2dzdHIgImRwa2c6IGF2aXNvIC0gbsOjbyBmb2kgcG9zc8OtdmVsIG8gc3RhdCBhICVzIGAlLjI1MHMnIDogJXNcbiIKKworI34gbXNnaWQgIi0tc2V0LXNlbGVjdGlvbnMgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tc2V0LXNlbGVjdGlvbnMgbsOjbyBsZXZhIG5lbmh1bSBhcmd1bWVudG8iCisKKyN+IG1zZ2lkICItLWNsZWFyLXNlbGVjdGlvbnMgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tY2xlYXItc2VsZWN0aW9ucyBuw6NvIGxldmEgbmVuaHVtIGFyZ3VtZW50byIKKworI34gbXNnaWQgIi0tYnVpbGQgbmVlZHMgYSBkaXJlY3RvcnkgYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tYnVpbGQgbmVjZXNzaXRhIGRlIHVtIGRpcmVjdMOzcmlvIGNvbW8gYXJndW1lbnRvIgorCisjfiBtc2dpZCAiIgorI34gImRwa2ctZGViOiB3YXJuaW5nLCBub3QgY2hlY2tpbmcgY29udGVudHMgb2YgY29udHJvbCBhcmVhLlxuIgorI34gImRwa2ctZGViOiBidWlsZGluZyBhbiB1bmtub3duIHBhY2thZ2UgaW4gYCVzJy5cbiIKKyN+IG1zZ3N0ciAiIgorI34gImRwa2ctZGViOiBhdmlzbywgYSBuw6NvIHZlcmlmaWNhciBvIGNvbnRlw7pkbyBkYSDDoXJlYSBkZSBjb250cm9sZS5cbiIKKyN+ICJkcGtnLWRlYjogYSBjb25zdHJ1w61yIHVtIHBhY290ZSBkZXNjb25oZWNpZG8gZW0gYCVzJy5cbiIKKworI34gbXNnaWQgIkludGVybmFsIGVycm9yLCBjb21wcmVzc190eXBlIGAlaScgdW5rbm93biEiCisjfiBtc2dzdHIgIkVycm8gaW50ZXJubywgY29tcHJlc3NfdHlwZSBgJWknIGRlc2NvbmhlY2lkbyEiCisKKyN+IG1zZ2lkICItLWpvaW4gcmVxdWlyZXMgb25lIG9yIG1vcmUgcGFydCBmaWxlIGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiLS1qb2luIG5lY2Vzc2l0YSBkZSB1bSBvdSBtYWlzIHBhcnRlcyBkZSBmaWNoZWlybyBjb21vIGFyZ3VtZW50byIKKworI34gbXNnaWQgIi0tbGlzdHEgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnRzIgorI34gbXNnc3RyICItLWxpc3RxIG7Do28gdG9tYSBxdWFscXVlciBhcmd1bWVudG8iCisKKyN+IG1zZ2lkICIiCisjfiAiXG4iCisjfiAiQ29weXJpZ2h0IChDKSAxOTk2IEtpbS1NaW5oIEthcGxhbi4iCisjfiBtc2dzdHIgIiIKKyN+ICJcbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDE5OTYgS2ltLU1pbmggS2FwbGFuLiIKKworI34gbXNnaWQgIiIKKyN+ICJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gWy0tXSBbPGRpcm5hbWU+XVxuIgorI34gIlxuIgorI34gIk9wdGlvbnM6XG4iCisjfiAiICAtLXVuc2FmZSAgICAgc2V0IHNvbWUgYWRkaXRpb25hbCBwb3NzaWJseSB1c2VmdWwgb3B0aW9ucy5cbiIKKyN+ICIgICAgICAgICAgICAgICB3YXJuaW5nOiB0aGlzIG9wdGlvbiBtYXkgZ2FyYmxlIGFuIG90aGVyd2lzZSBjb3JyZWN0ICIKKyN+ICJmaWxlLlxuIgorI34gIiAgLS1oZWxwICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisjfiAiICAtLXZlcnNpb24gICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIk1vZG8gZGUgVXRpbGl6YcOnw6NvOiAlcyBbPG9ww6fDtWVzPiAuLi5dIFstLV0gWzxub21lIGRvIGRpcmVjdMOzcmlvPl1cbiIKKyN+ICJcbiIKKyN+ICJPcMOnw7VlczpcbiIKKyN+ICIgIC0tdW5zYWZlICAgICBpbmNsdWkgYWxndW1hcyBvcMOnw7VlcyBleHRyYXMgcGFyYSBwb3Nzw612ZWwgdXNvIGZ1dHVyby5cbiIKKyN+ICIgICAgICAgICAgICAgICBhdGVuw6fDo286IGVzdGEgb3DDp8OjbyBwb2RlIGNvcnJvbXBlciB1bSBwb3Nzw612ZWwgZmljaGVpcm8gIgorI34gInNhdWTDoXZlbC5cbiIKKyN+ICIgIC0taGVscCAgICAgICBtb3N0cmEgZXN0YSBtZW5zYWdlbSBkZSBhanVkYS5cbiIKKyN+ICIgIC0tdmVyc2lvbiAgICBpbmRpY2EgYSB2ZXJzw6NvLlxuIgorCisjfiBtc2dpZCAidHJ5IGRlbGV0aW5nICVzIgorI34gbXNnc3RyICJ0ZW50ZSBhcGFnYXIgJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gaW5zdGFsbCAlczsgaXQgd2lsbCBiZSBsZWZ0IGFzICVzOiAlcyIKKyN+IG1zZ3N0ciAiTsOjbyBmb2kgcG9zc8OtdmVsIGluc3RhbGFyICVzOyBzZXLDoSBkZWl4YWRvIGNvbW8gJXM6ICVzIgorCisjfiBtc2dpZCAiJXM6IHVuYWJsZSB0byB1bmxvY2sgJXM6ICVzIgorI34gbXNnc3RyICIlczogbsOjbyBmb2kgcG9zc8OtdmVsIGxpYmVydGFyICVzOiAlcyIKKworI34gbXNnaWQgIiVzIC0gc3RhdHVzIGlzICVzLiIKKyN+IG1zZ3N0ciAiJXMgLSBvIHN0YXR1cyDDqSAlcy4iCisKKyN+IG1zZ2lkICIgbGluayB1bnJlYWRhYmxlIC0gJXMiCisjfiBtc2dzdHIgIiBsaW5rIG7Do28gZnVuY2lvbmFsIC0gJXMiCisKKyN+IG1zZ2lkICIiCisjfiAid2FybmluZzogJXMgaXMgc3VwcG9zZWQgdG8gYmUgYSBzeW1saW5rIHRvICVzLCBcbiIKKyN+ICJvciBub25leGlzdGVudDsgaG93ZXZlciwgcmVhZGxpbmsgZmFpbGVkOiAlcyIKKyN+IG1zZ3N0ciAiIgorI34gImF2aXNvOiAlcyDDqSBzdXBvc3RvIHNlciB1bSBsaW5rIHNpbWLDs2xpY28gcGFyYSAlcywgXG4iCisjfiAiIG91IG7Do28tZXhpc3RlbnRlOyBubyBlbnRhbnRvLCByZWFkbGluayBmYWxob3U6ICVzIgorCisjfiBtc2dpZCAiTGVhdmluZyAlcyAoJXMpIHBvaW50aW5nIHRvICVzLiIKKyN+IG1zZ3N0ciAiQSBkZWl4YXIgJXMgKCVzKSBhIGFwb250YXIgcGFyYSAlcy4iCisKKyN+IG1zZ2lkICJVcGRhdGluZyAlcyAoJXMpIHRvIHBvaW50IHRvICVzLiIKKyN+IG1zZ3N0ciAiQSBhY3R1YWxpemFyICVzICglcykgZGUgbW9kbyBhIGFwb250YXIgcGFyYSAlcy4iCisKKyN+IG1zZ2lkICJSZW1vdmluZyAlcyAoJXMpLCBub3QgYXBwcm9wcmlhdGUgd2l0aCAlcy4iCisjfiBtc2dzdHIgIkEgcmVtb3ZlciAlcyAoJXMpLCBuw6NvIGFwcm9wcmlhZG8gY29tICVzLiIKKworI34gbXNnaWQgIiIKKyN+ICJDaGVja2luZyBhdmFpbGFibGUgdmVyc2lvbnMgb2YgJXMsIHVwZGF0aW5nIGxpbmtzIGluICVzIC4uLlxuIgorI34gIihZb3UgbWF5IG1vZGlmeSB0aGUgc3ltbGlua3MgdGhlcmUgeW91cnNlbGYgaWYgZGVzaXJlZCAtIHNlZSBgbWFuIGxuJy4pIgorI34gbXNnc3RyICIiCisjfiAiQSB2ZXJpZmljYXIgdmVyc8O1ZXMgZGlzcG9uw612ZWlzIGRlICVzLCBhIGFjdHVhbGl6YXIgb3MgbGlua3MgZW0gJXMgLi4uXG4iCisjfiAiKFBvZGUgbW9kaWZpY2FyIG9zIGxpbmtzIHNpbWLDs2xpY29zIHNlIGRlc2VqYXIgLSB2ZWphIGBtYW4gbG4nLikiCisKKyN+IG1zZ2lkICJzbGF2ZSBsaW5rIG5hbWUgJXMgZHVwbGljYXRlZCIKKyN+IG1zZ3N0ciAibm9tZSBkZSBsaW5rIHNsYXZlICVzIGR1cGxpY2FkbyIKKworI34gbXNnaWQgIlJlY292ZXJpbmcgZnJvbSBwcmV2aW91cyBmYWlsZWQgdXBkYXRlIG9mICVzIC4uLiIKKyN+IG1zZ3N0ciAiQSByZWN1cGVyYXIgZGEgYWN0dWFsaXphw6fDo28gYW50ZXJpb3IgZmFsaGFkYSBkZSAlc8K3Li4uIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIG9wZW4gJXMgZm9yIHdyaXRlOiAlcyIKKyN+IG1zZ3N0ciAibsOjbyBmb2kgcG9zc8OtdmVsIGFicmlyICVzIHBhcmEgZXNjcmV2ZXI6ICVzIgorCisjfiBtc2dpZCAiTGFzdCBwYWNrYWdlIHByb3ZpZGluZyAlcyAoJXMpIHJlbW92ZWQsIGRlbGV0aW5nIGl0LiIKKyN+IG1zZ3N0ciAiw5psdGltbyBwYWNvdGUgYSBmb3JuZWNlciAlcyAoJXMpIHJlbW92aWRvLiBhIGFwYWdhci4iCisKKyN+IG1zZ2lkICIiCisjfiAiVGhlcmUgaXMgb25seSAxIHByb2dyYW0gd2hpY2ggcHJvdmlkZXMgJXNcbiIKKyN+ICIoJXMpLiBOb3RoaW5nIHRvIGNvbmZpZ3VyZS5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIkV4aXN0ZSBhcGVuYXMgdW0gcHJvZ3JhbWEgcXVlIGZvcm5lY2UgJXNcbiIKKyN+ICIoJXMpLiBOYWRhIHBhcmEgY29uZmlndXJhci5cbiIKKworI34gbXNnaWQgIiIKKyN+ICJUaGVyZSBhcmUgJXMgYWx0ZXJuYXRpdmVzIHdoaWNoIHByb3ZpZGUgYCVzJy5cbiIKKyN+ICJcbiIKKyN+ICIgIFNlbGVjdGlvbiAgICBBbHRlcm5hdGl2ZVxuIgorI34gIi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJFeGlzdGVtICVzIGFsdGVybmF0aXZhcyBxdWUgZm9ybmVjZW0gYCVzJy5cbiIKKyN+ICJcbiIKKyN+ICIgIFNlbGVjw6fDo28gICAgQWx0ZXJuYXRpdmFcbiIKKyN+ICItLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIgorCisjfiBtc2dpZCAiZXJyb3Igd3JpdGluZyBzdGRvdXQ6ICVzIgorI34gbXNnc3RyICJlcnJvIGFvIGVzY3JldmVyIHN0ZG91dDogJXMiCisKKyN+IG1zZ2lkICJlcnJvciBvciBlb2YgcmVhZGluZyAlcyBmb3IgJXMgKCVzKSIKKyN+IG1zZ3N0ciAiZXJybyBvdSBsZWl0dXJhIGRlIGZpbSBkZSBmaWNoZWlybyAlcyBwYXJhICVzwrcoJXMpIgorCisjfiBtc2dpZCAibWlzc2luZyBuZXdsaW5lIGFmdGVyICVzIgorI34gbXNnc3RyICJmYWx0YSBub3ZhIGxpbmhhIGFww7NzICVzIgorCisjfiBtc2dpZCAiU2VyaW91cyBwcm9ibGVtOiAlcyIKKyN+IG1zZ3N0ciAiUHJvYmxlbWEgc8OpcmlvOiAlcyIKKworI34gbXNnaWQgImNvdWxkbid0IGFsbG9jYXRlIG1lbW9yeSBmb3Igc3RyZHVwIGluIGZpbmRwYWNrYWdlKCVzKSIKKyN+IG1zZ3N0ciAibsOjbyBjb25zZWd1aXUgYWxvY2FyIG1lbcOzcmlhIHBhcmEgc3RyZHVwIGVtIGZpbmRwYWNrYWdlKCVzKSIKKworI34gbXNnaWQgImZhaWxlZCB0byBhbGxvY2F0ZSBidWZmZXIgaW4gYnVmZmVyX2NvcHkgKCVzKSIKKyN+IG1zZ3N0ciAiZmFsaG91IGFsb2NhciBidWZmZXIgZW0gYnVmZmVyX2NvcHkgKCVzKSIKKworI34gbXNnaWQgIkVycm9yIGFsbG9jYXRpbmcgbWVtb3J5IGZvciBjZmdmaWxlbmFtZSIKKyN+IG1zZ3N0ciAiRXJybyBhbyBhbG9jYXIgbWVtw7NyaWEgcGFyYSBjZmdmaWxlbmFtZSIKKworI34gbXNnaWQgImZhaWxlZCB0byBtYWxsb2MgZm9yIGluZm8gZmlsZSBgJS4yNTVzJyIKKyN+IG1zZ3N0ciAiZmFsaG91IG8gbWFsbG9jIHBhcmEgbyBmaWNoZWlybyBkZSBpbmZvcm1hw6fDtWVzIGAlLjI1NXMnIgorCisjfiBtc2dpZCAiZGl2ZXJzaW9ucyBmaWxlIGhhcyB0b28tbG9uZyBsaW5lIG9yIEVPRiBbaV0iCisjfiBtc2dzdHIgImZpY2hlaXJvIGRpdmVyc2lvbnMgdGVtIHVtYSBsaW5oYSBkZW1hc2lhZG8gZ3JhbmRlIG91IFtFT0ZdIFtpXSIKKworI34gbXNnaWQgInJlYWQgZXJyb3IgaW4gZGl2ZXJzaW9ucyBbaWldIgorI34gbXNnc3RyICJlcnJvIGRlIGxlaXR1cmEgZW0gZGl2ZXJzaW9ucyBbaWldIgorCisjfiBtc2dpZCAidW5leHBlY3RlZCBFT0YgaW4gZGl2ZXJzaW9ucyBbaWldIgorI34gbXNnc3RyICJFT0YgaW5lc3BlcmFkbyBlbSBkaXZlcnNpb25zIFtpaV0iCisKKyN+IG1zZ2lkICJmZ2V0cyBnYXZlIGFuIGVtcHR5IHN0cmluZyBmcm9tIGRpdmVyc2lvbnMgW2lpXSIKKyN+IG1zZ3N0ciAiZmdldHMgZGV1IHVtYSBzdHJpbmcgdmF6aWEgdmluZGEgZGUgZGl2ZXJzaW9ucyBbaWldIgorCisjfiBtc2dpZCAiZGl2ZXJzaW9ucyBmaWxlIGhhcyB0b28tbG9uZyBsaW5lIG9yIEVPRiBbaWldIgorI34gbXNnc3RyICJmaWNoZWlybyBkaXZlcnNpb25zIHRlbSB1bWEgbGluaGEgZGVtYXNpYWRvIGdyYW5kZSBvdSBFT0YgW2lpXSIKKworI34gbXNnaWQgInJlYWQgZXJyb3IgaW4gZGl2ZXJzaW9ucyBbaWlpXSIKKyN+IG1zZ3N0ciAiZXJybyBkZSBsZWl0dXJhIGVtIGRpdmVyc2lvbnMgW2lpaV0iCisKKyN+IG1zZ2lkICJ1bmV4cGVjdGVkIEVPRiBpbiBkaXZlcnNpb25zIFtpaWldIgorI34gbXNnc3RyICJFT0YgaW5lc3BlcmFkbyBlbSBkaXZlcnNpb25zIFtpaWldIgorCisjfiBtc2dpZCAiZmdldHMgZ2F2ZSBhbiBlbXB0eSBzdHJpbmcgZnJvbSBkaXZlcnNpb25zIFtpaWldIgorI34gbXNnc3RyICJmZ2V0cyBkZXUgdW1hIHN0cmluZyB2YXppYSB2aW5kYSBkZSBkaXZlcnNpb25zIFtpaWldIgorCisjfiBtc2dpZCAiY291bGRuJ3QgbWFsbG9jIGluIGV4ZWNiYWNrZW5kIgorI34gbXNnc3RyICJuw6NvIHBvZGUgZmF6ZXIgbWFsbG9jIG5vIGV4ZWNiYWNrZW5kIgorCisjfiBtc2dpZCAiY291bGRuJ3Qgc3RyZHVwIGluIGV4ZWNiYWNrZW5kIgorI34gbXNnc3RyICJuw6NvIHBvZGUgZmF6ZXIgc3RyZHVwIG5vIGV4ZWNiYWNrZW5kIgorCisjfiBtc2dpZCAiZmFpbGVkIGFsbG9jYXRpbmcgbWVtb3J5IGZvciB2YXJpYWJsZSBgY3RybGFyZWEnIgorI34gbXNnc3RyICJmYWxob3UgYWxvY2FyIG1lbcOzcmlhIHBhcmEgYSB2YXJpw6F2ZWwgYGN0cmxhcmVhJyIKKworI34gbXNnaWQgIkNhbm5vdCBnZXQgRU5PRU5UIHZhbHVlIGZyb20gJXM6ICVzIgorI34gbXNnc3RyICJJbXBvc3PDrXZlbCBvYnRlciBvIHZhbG9yIGRlIEVOT0VOVCBhIHBhcnRpciBkZSAlczrCtyVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGVuc3VyZSAlcyBub25leGlzdGVudDogJXMiCisjfiBtc2dzdHIgImltcG9zc8OtdmVsIGF2ZXJpZ3VhciBhIG7Do28gZXhpc3TDqm5jaWEgZGUgJXM6ICVzIgorCisjfiBtc2dpZCAiIgorI34gIndhcm5pbmc6ICVzIGlzIHN1cHBvc2VkIHRvIGJlIGEgc2xhdmUgc3ltbGluayB0b1xuIgorI34gIiAlcywgb3Igbm9uZXhpc3RlbnQ7IGhvd2V2ZXIsIHJlYWRsaW5rIGZhaWxlZDogJXMiCisjfiBtc2dzdHIgIiIKKyN+ICJhdmlzbzrCtyVzwrfDqcK3c3Vwb3N0b8K3c2Vywrd1bcK3bGlua8K3c2ltYsOzbGljb8K3c2xhdmUgcGFyYcK3XG4iCisjfiAiICVzIChvdSBuw6NvLWV4aXN0ZW50ZSk7wrdub8K3ZW50YW50byzCt2HCt3N1YcK3bGVpdHVyYcK3ZmFsaG91OsK3JXMiCisKKyN+IG1zZ2lkICIiCisjfiAiZHBrZzogcmVnYXJkaW5nICVzIGNvbnRhaW5pbmcgJXM6XG4iCisjfiAiIHBhY2thZ2UgdXNlcyBCcmVha3M7IG5vdCBzdXBwb3J0ZWQgaW4gdGhpcyBkcGtnXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJkcGtnOiBhY2VyY2EgZGUgJXMgcXVlIGNvbnTDqW0gJXM6XG4iCisjfiAiIG8gcGFjb3RlIHV0aWxpemEgQnJlYWtzOyBuw6NvIHN1cG9ydGFkbyBuZXN0ZSBkcGtnXG4iCisKKyN+IG1zZ2lkICJ1bnN1cHBvcnRlZCBkZXBlbmRlbmN5IHByb2JsZW0gLSBub3QgaW5zdGFsbGluZyAlLjI1MHMiCisjfiBtc2dzdHIgInByb2JsZW1hIGRlIGRlcGVuZMOqbmNpYSBuw6NvIHN1cG9ydGFkYSAtIGEgbsOjbyBpbnN0YWxhciAlLjI1MHMiCisKKyN+IG1zZ2lkICJkcGtnOiB3YXJuaW5nIC0gaWdub3JpbmcgQnJlYWtzICFcbiIKKyN+IG1zZ3N0ciAiZHBrZzogYXZpc28gLSBhIGlnbm9yYXIgQnJlYWtzICFcbiIKKworI34gbXNnaWQgInRvIgorI34gbXNnc3RyICJwYXJhIgorCisjfiBtc2dpZCAiZnJvbSIKKyN+IG1zZ3N0ciAiZGUiCisKKyN+IG1zZ2lkICJlcnJvciByZWFkaW5nICVzIgorI34gbXNnc3RyICJlcnJvIGxlbmRvICVzIgorCisjfiBtc2dpZCAidHdvIG1vZGVzIHNwZWNpZmllZDogJXMgYW5kIC0tJXMiCisjfiBtc2dzdHIgImRvaXMgbW9kb3MgZXNwZWPDrWZpY2Fkb3M6ICVzwrdlwrctLSVzIgorCisjfiBtc2dpZCAibWFuZmxhZyIKKyN+IG1zZ3N0ciAibWFuZmxhZyIKKworI34gbXNnaWQgIiVzOiBmYWlsZWQgdG8gZXhlYyBnemlwIC1kYyIKKyN+IG1zZ3N0ciAiJXM6IGZhbGhvdSBleGVjdXRhciBnemlwIC1kYyIKKworI34gbXNnaWQgIiVzOiBmYWlsZWQgdG8gZXhlYyBiemlwMiAtZGMiCisjfiBtc2dzdHIgIiVzOiBmYWxob3UgZXhlY3V0YXIgYnppcDIgLWRjIgorCisjfiBtc2dpZCAiJXM6IGZhaWxlZCB0byBleGVjIGJ6aXAyICVzIgorI34gbXNnc3RyICIlczogZmFsaG91IGV4ZWN1dGFyIGJ6aXAyICVzIgorCisjfiBtc2dpZCAiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOiB2ZXJzaW9uIGNvbnRhaW5zIGAgJyIKKyN+IG1zZ3N0ciAiY2FtcG8gYCVzJywgcmVmZXLDqm5jaWEgYSBgJS4yNTVzJzogdmVyc8OjbyBjb250w6ltIGAgJyIKKworIywgZnV6enkKKyN+IG1zZ2lkICIlczogY2xvc2UgJXMgYWZ0ZXIgcmVhZDogJXMiCisjfiBtc2dzdHIgImZhbGhvdSBmZWNoYXIgYXDDs3MgbGVyOiBgJS4yNTVzJyIKKworIywgZnV6enkKKyN+IG1zZ2lkICItLWFkbWluZGlyIG5lZWRzIGEgZGlyZWN0b3J5IGFyZ3VtZW50IgorI34gbXNnc3RyICItLWJ1aWxkIG5lY2Vzc2l0YSBkZSB1bSBkaXJlY3TDs3JpbyBjb21vIGFyZ3VtZW50byIKKworIywgZnV6enkKKyN+IG1zZ2lkICItLXJlbW92ZSBuZWVkcyBhIHNpbmdsZSBhcmd1bWVudCIKKyN+IG1zZ3N0ciAiLS0lcyBuZWNlc3NpdGEgZGUgdW0gZmljaGVpcm8gLmRlYiBjb21vIGFyZ3VtZW50byIKKworIywgZnV6enkKKyN+IG1zZ2lkICItLXRydWVuYW1lIG5lZWRzIGEgc2luZ2xlIGFyZ3VtZW50IgorI34gbXNnc3RyICItLWJ1aWxkIG5lY2Vzc2l0YSBkZSB1bSBkaXJlY3TDs3JpbyBjb21vIGFyZ3VtZW50byIKKworIywgZnV6enkKKyN+IG1zZ2lkICItLXJlbW92ZSBuZWVkcyBvbmUgYXJndW1lbnRzIgorI34gbXNnc3RyICItLSVzIG7Do28gbGV2YSBhcmd1bWVudG9zIgorCisjLCBmdXp6eQorI34gbXNnaWQgImRwa2ctc3RhdG92ZXJyaWRlOiAlcyIKKyN+IG1zZ3N0ciAiZmljaGVpcm8gc3RhdG92ZXJyaWRlIGAlLjI1MHMnIgorCisjLCBmdXp6eQorI34gbXNnaWQgIi0tYWRtaW5kaXIgbmVlZHMgYSA8ZGlyZWN0b3J5PiBhcmd1bWVudCIKKyN+IG1zZ3N0ciAiLS1idWlsZCBuZWNlc3NpdGEgZGUgdW0gZGlyZWN0w7NyaW8gY29tbyBhcmd1bWVudG8iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiZmFpbGVkIHRvIG9wZW4gJXM6ICVzIgorI34gbXNnc3RyICJmYWxob3UgY29ycmVyICVzICglLjI1MHMpIgorCisjLCBmdXp6eQorI34gbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsICVzIGFzICVzIgorI34gbXNnc3RyICJOw6NvIGZvaSBwb3Nzw612ZWwgaW5zdGFsYXIgYCUuMjUwcycgY29tbyBgJS4yNTBzJyIKKworIywgZnV6enkKKyN+IG1zZ2lkICIiCisjfiAiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIDxjb21tYW5kPlxuIgorI34gIlxuIgorI34gIkNvbW1hbmRzOlxuIgorI34gIiAgLWl8LS1pbnN0YWxsICAgICAgIDwuZGViIGZpbGUgbmFtZT4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRpcj4gLi4uXG4iCisjfiAiICAtLXVucGFjayAgICAgICAgICAgPC5kZWIgZmlsZSBuYW1lPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyPiAuLi5cbiIKKyN+ICIgIC1BfC0tcmVjb3JkLWF2YWlsICA8LmRlYiBmaWxlIG5hbWU+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXI+IC4uLlxuIgorI34gIiAgLS1jb25maWd1cmUgICAgICAgIDxwYWNrYWdlLW5hbWU+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorI34gIiAgLXJ8LS1yZW1vdmUgICAgICAgIDxwYWNrYWdlLW5hbWU+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorI34gIiAgLVB8LS1wdXJnZSAgICAgICAgIDxwYWNrYWdlLW5hbWU+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorI34gIiAgLS1nZXQtc2VsZWN0aW9ucyBbPHBhdHRlcm4+IC4uLl0gICAgIEdldCBsaXN0IG9mIHNlbGVjdGlvbnMgdG8gc3Rkb3V0LlxuIgorI34gIiAgLS1zZXQtc2VsZWN0aW9ucyAgICAgICAgICAgICAgICAgICAgIFNldCBwYWNrYWdlIHNlbGVjdGlvbnMgZnJvbSAiCisjfiAic3RkaW4uXG4iCisjfiAiICAtLWNsZWFyLXNlbGVjdGlvbnMgICAgICAgICAgICAgICAgICAgRGVzZWxlY3QgZXZlcnkgbm9uLWVzc2VudGlhbCAiCisjfiAicGFja2FnZS5cbiIKKyN+ICIgIC0tdXBkYXRlLWF2YWlsIDxQYWNrYWdlcy1maWxlPiAgICAgICBSZXBsYWNlIGF2YWlsYWJsZSBwYWNrYWdlcyBpbmZvLlxuIgorI34gIiAgLS1tZXJnZS1hdmFpbCA8UGFja2FnZXMtZmlsZT4gICAgICAgIE1lcmdlIHdpdGggaW5mbyBmcm9tIGZpbGUuXG4iCisjfiAiICAtLWNsZWFyLWF2YWlsICAgICAgICAgICAgICAgICAgICAgICAgRXJhc2UgZXhpc3RpbmcgYXZhaWxhYmxlIGluZm8uXG4iCisjfiAiICAtLWZvcmdldC1vbGQtdW5hdmFpbCAgICAgICAgICAgICAgICAgRm9yZ2V0IHVuaW5zdGFsbGVkIHVuYXZhaWxhYmxlICIKKyN+ICJwa2dzLlxuIgorI34gIiAgLXN8LS1zdGF0dXMgPHBhY2thZ2UtbmFtZT4gLi4uICAgICAgIERpc3BsYXkgcGFja2FnZSBzdGF0dXMgZGV0YWlscy5cbiIKKyN+ICIgIC1wfC0tcHJpbnQtYXZhaWwgPHBhY2thZ2UtbmFtZT4gLi4uICBEaXNwbGF5IGF2YWlsYWJsZSB2ZXJzaW9uICIKKyN+ICJkZXRhaWxzLlxuIgorI34gIiAgLUx8LS1saXN0ZmlsZXMgPHBhY2thZ2UtbmFtZT4gLi4uICAgIExpc3QgZmlsZXMgYG93bmVkJyBieSBwYWNrYWdlKHMpLlxuIgorI34gIiAgLWx8LS1saXN0IFs8cGF0dGVybj4gLi4uXSAgICAgICAgICAgIExpc3QgcGFja2FnZXMgY29uY2lzZWx5LlxuIgorI34gIiAgLVN8LS1zZWFyY2ggPHBhdHRlcm4+IC4uLiAgICAgICAgICAgIEZpbmQgcGFja2FnZShzKSBvd25pbmcgZmlsZShzKS5cbiIKKyN+ICIgIC1DfC0tYXVkaXQgICAgICAgICAgICAgICAgICAgICAgICAgICBDaGVjayBmb3IgYnJva2VuIHBhY2thZ2UocykuXG4iCisjfiAiICAtLXByaW50LWFyY2hpdGVjdHVyZSAgICAgICAgICAgICAgICAgUHJpbnQgZHBrZyBhcmNoaXRlY3R1cmUuXG4iCisjfiAiICAtLWNvbXBhcmUtdmVyc2lvbnMgPGE+IDxyZWw+IDxiPiAgICAgQ29tcGFyZSB2ZXJzaW9uIG51bWJlcnMgLSBzZWUgIgorI34gImJlbG93LlxuIgorI34gIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisjfiAiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgICAgICAgICAgICAgU2hvdyB0aGUgdmVyc2lvbi5cbiIKKyN+ICIgIC0tZm9yY2UtaGVscCB8IC1EaHwtLWRlYnVnPWhlbHAgICAgICBIZWxwIG9uIGZvcmNpbmcgcmVzcC4gZGVidWdnaW5nLlxuIgorI34gIiAgLS1saWNlbnNlIHwgLS1saWNlbmNlICAgICAgICAgICAgICAgIFByaW50IGNvcHlyaWdodCBsaWNlbnNpbmcgdGVybXMuXG4iCisjfiAiXG4iCisjfiAiVXNlIGRwa2cgLWJ8LS1idWlsZHwtY3wtLWNvbnRlbnRzfC1lfC0tY29udHJvbHwtSXwtLWluZm98LWZ8LS1maWVsZHxcbiIKKyN+ICIgLXh8LS1leHRyYWN0fC1YfC0tdmV4dHJhY3R8LS1mc3lzLXRhcmZpbGUgIG9uIGFyY2hpdmVzICh0eXBlICVzIC0tIgorI34gImhlbHApLlxuIgorI34gIlxuIgorI34gIkZvciBpbnRlcm5hbCB1c2U6IGRwa2cgLS1hc3NlcnQtc3VwcG9ydC1wcmVkZXBlbmRzIHwgLS1wcmVkZXAtcGFja2FnZSB8XG4iCisjfiAiICAtLWFzc2VydC13b3JraW5nLWVwb2NoIHwgLS1hc3NlcnQtbG9uZy1maWxlbmFtZXMgfCAtLWFzc2VydC1tdWx0aS0iCisjfiAiY29ucmVwLlxuIgorI34gIlxuIgorI34gIk9wdGlvbnM6XG4iCisjfiAiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyN+ICIgIC0tcm9vdD08ZGlyZWN0b3J5PiAgICAgICAgIEluc3RhbGwgb24gYWx0ZXJuYXRpdmUgc3lzdGVtIHJvb3RlZCAiCisjfiAiZWxzZXdoZXJlLlxuIgorI34gIiAgLS1pbnN0ZGlyPTxkaXJlY3Rvcnk+ICAgICAgQ2hhbmdlIGluc3QnbiByb290IHdpdGhvdXQgY2hhbmdpbmcgYWRtaW4gIgorI34gImRpci5cbiIKKyN+ICIgIC1PfC0tc2VsZWN0ZWQtb25seSAgICAgICAgIFNraXAgcGFja2FnZXMgbm90IHNlbGVjdGVkIGZvciBpbnN0YWxsLyIKKyN+ICJ1cGdyYWRlLlxuIgorI34gIiAgLUV8LS1za2lwLXNhbWUtdmVyc2lvbiAgICAgU2tpcCBwYWNrYWdlcyB3aG9zZSBzYW1lIHZlcnNpb24gaXMgIgorI34gImluc3RhbGxlZC5cbiIKKyN+ICIgIC1HfC0tcmVmdXNlLWRvd25ncmFkZSAgICAgIFNraXAgcGFja2FnZXMgd2l0aCBlYXJsaWVyIHZlcnNpb24gdGhhbiAiCisjfiAiaW5zdGFsbGVkLlxuIgorI34gIiAgLUJ8LS1hdXRvLWRlY29uZmlndXJlICAgICAgSW5zdGFsbCBldmVuIGlmIGl0IHdvdWxkIGJyZWFrIHNvbWUgb3RoZXIgIgorI34gInBhY2thZ2UuXG4iCisjfiAiICAtLW5vLWRlYnNpZyAgICAgICAgICAgICAgICBEbyBub3QgdHJ5IHRvIHZlcmlmeSBwYWNrYWdlIHNpZ25hdHVyZXMuXG4iCisjfiAiICAtLW5vLWFjdHwtLWRyeS1ydW58LS1zaW11bGF0ZVxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSnVzdCBzYXkgd2hhdCB3ZSB3b3VsZCBkbyAtIGRvbid0IGRvIGl0LlxuIgorI34gIiAgLUR8LS1kZWJ1Zz08b2N0YWw+ICAgICAgICAgRW5hYmxlIGRlYnVnZ2luZyAtIHNlZSAtRGhlbHAgb3IgLS0iCisjfiAiZGVidWc9aGVscC5cbiIKKyN+ICIgIC0tc3RhdHVzLWZkIDxuPiAgICAgICAgICAgIFNlbmQgc3RhdHVzIGNoYW5nZSB1cGRhdGVzIHRvIGZpbGUgIgorI34gImRlc2NyaXB0b3IgPG4+LlxuIgorI34gIiAgLS1sb2c9PGZpbGVuYW1lPiAgICAgICAgICAgTG9nIHN0YXR1cyBjaGFuZ2VzIGFuZCBhY3Rpb25zIHRvICIKKyN+ICI8ZmlsZW5hbWU+LlxuIgorI34gIiAgLS1pZ25vcmUtZGVwZW5kcz08cGFja2FnZT4sLi4uIElnbm9yZSBkZXBlbmRlbmNpZXMgaW52b2x2aW5nICIKKyN+ICI8cGFja2FnZT4uXG4iCisjfiAiICAtLWZvcmNlLS4uLiAgICAgICAgICAgICAgICAgICAgT3ZlcnJpZGUgcHJvYmxlbXMgLSBzZWUgLS1mb3JjZS1oZWxwLlxuIgorI34gIiAgLS1uby1mb3JjZS0uLi58LS1yZWZ1c2UtLi4uICAgIFN0b3Agd2hlbiBwcm9ibGVtcyBlbmNvdW50ZXJlZC5cbiIKKyN+ICIgIC0tYWJvcnQtYWZ0ZXIgPG4+ICAgICAgICAgICAgICBBYm9ydCBhZnRlciBlbmNvdW50ZXJpbmcgPG4+IGVycm9ycy5cbiIKKyN+ICJcbiIKKyN+ICJDb21wYXJpc29uIG9wZXJhdG9ycyBmb3IgLS1jb21wYXJlLXZlcnNpb25zIGFyZTpcbiIKKyN+ICIgIGx0IGxlIGVxIG5lIGdlIGd0ICAgICAgICh0cmVhdCBlbXB0eSB2ZXJzaW9uIGFzIGVhcmxpZXIgdGhhbiBhbnkgIgorI34gInZlcnNpb24pO1xuIgorI34gIiAgbHQtbmwgbGUtbmwgZ2UtbmwgZ3QtbmwgKHRyZWF0IGVtcHR5IHZlcnNpb24gYXMgbGF0ZXIgdGhhbiBhbnkgIgorI34gInZlcnNpb24pO1xuIgorI34gIiAgPCA8PCA8PSA9ID49ID4+ID4gICAgICAgKG9ubHkgZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBjb250cm9sIGZpbGUgIgorI34gInN5bnRheCkuXG4iCisjfiAiXG4iCisjfiAiVXNlIGBkc2VsZWN0JyBvciBgYXB0aXR1ZGUnIGZvciB1c2VyLWZyaWVuZGx5IHBhY2thZ2UgbWFuYWdlbWVudC5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIlV0aWxpemHDp8OjbzogJXMgWzxvcHRpb24+IC4uLl0gPGNvbW1hbmQ+XG4iCisjfiAiICAtaXwtLWluc3RhbGwgICAgICA8LmRlYiBub21lIGZpY2hlaXJvPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyPiAuLi5cbiIKKyN+ICIgIC0tdW5wYWNrICAgICAgICAgIDwuZGViIG5vbWUgZmljaGVpcm8+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXI+IC4uLlxuIgorI34gIiAgLUF8LS1yZWNvcmQtYXZhaWwgPC5kZWIgbm9tZSBmaWNoZWlybz4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRpcj4gLi4uXG4iCisjfiAiICAtLWNvbmZpZ3VyZSAgICAgICAgICAgICAgPG5vbWUgcGFjb3RlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyN+ICIgIC1yfC0tcmVtb3ZlIHwgLVB8LS1wdXJnZSA8bm9tZSBwYWNvdGU+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorI34gIiAgLS1nZXQtc2VsZWN0aW9ucyBbPHBhdHRlcm4+IC4uLl0gICBvYnRlciBsaXN0YSBkZSBzZWxlY8Onw7VlcyBwYXJhICIKKyN+ICJzdGRvdXRcbiIKKyN+ICIgIC0tc2V0LXNlbGVjdGlvbnMgICAgICAgICAgICAgICAgICAgZGVmaW5pciBzZWxlY8Onw7VlcyBkZSBwYWNvdGVzIGRlICIKKyN+ICJzdGRpblxuIgorI34gIiAgLS1jbGVhci1zZWxlY3Rpb25zICAgICAgICAgICAgICAgICBkZXNlbGVjY2lvbmFyIHRvZG9zIG9zIHBhY290ZXMgIgorI34gIm7Do29lc3NlbmNpYWlzXG4iCisjfiAiICAtLXVwZGF0ZS1hdmFpbCA8ZmljaGVpcm8tUGFja2FnZXM+IHN1YnN0aXR1aXIgaW5mb3JtYcOnw6NvIGRlIHBhY290ZXMgIgorI34gImRpc3BvbsOtdmVpc1xuIgorI34gIiAgLS1tZXJnZS1hdmFpbCA8ZmljaGVpcm8tUGFja2FnZXM+ICBqdW50YXIgY29tIGluZm9ybWHDp8OjbyBkbyBmaWNoZWlyb1xuIgorI34gIiAgLS1jbGVhci1hdmFpbCAgICAgICAgICAgICAgICAgICAgICBhcGFnYXIgaW5mb3JtYcOnw6NvIGRlIGRpc3BvbsOtdmVpcyAiCisjfiAiZXhpc3RlbnRlc1xuIgorI34gIiAgLS1jb21tYW5kLWZkIDxuPiAgICAgICAgICAgICAgICAgICBwYXNzYXIgY29tYW5kb3MgYSBlc3RlIGZpbGUgIgorI34gImRlc2NyaXB0b3JcbiIKKyN+ICIgIC0tZm9yZ2V0LW9sZC11bmF2YWlsICAgICAgICAgICAgICAgZXNxdWVjZXIgcGFjb3RlcyBuw6NvIGluc3RhbGFkb3MgIgorI34gImluZMOtc3BvbsOtdmVpcyBcbiIKKyN+ICIgIC1zfC0tc3RhdHVzIDxub21lLXBhY290ZT4gLi4uICAgICAgbW9zdHJhciBkZXRhbGhlcyBkZSBzdGF0dXMgZG8gIgorI34gInBhY290ZVxuIgorI34gIiAgLXB8LS1wcmludC1hdmFpbCA8bm9tZS1wYWNvdGU+IC4uLiBtb3N0cmFyIGRldGFsaGVzIGRlIHZlcnPDo28gIgorI34gImRpc3BvbsOtdmVsXG4iCisjfiAiICAtTHwtLWxpc3RmaWxlcyA8bm9tZS1wYWNvdGU+IC4uLiAgIGxpc3RhciBmaWNoZWlyb3MgJ3BlcnRlbmNlbnRlcycgcGVsbyIKKyN+ICIocykgcGFjb3RlKHMpXG4iCisjfiAiICAtbHwtLWxpc3QgWzxwYXR0ZXJuPiAuLi5dICAgICAgICAgIGxpc3RhciBwYWNvdGVzIGRlIGZvcm1hIGNvbmNpc2FcbiIKKyN+ICIgIC1TfC0tc2VhcmNoIDxwYXR0ZXJuPiAuLi4gICAgICAgICAgZW5jb250cmFyIHBhY290ZXMgZG9ub3MgZGUgZmljaGVpcm8iCisjfiAiKHMpXG4iCisjfiAiICAtQ3wtLWF1ZGl0ICAgICAgICAgICAgICAgICAgICAgICAgIHZlcmlmaWNhciBzZSBleGlzdGVtIHBhY290ZXMgIgorI34gImVzdHJhZ2Fkb3NcbiIKKyN+ICIgIC0tcHJpbnQtYXJjaGl0ZWN0dXJlICAgICAgICAgICAgICAgbW9zdHJhciBhIGFycXVpdGVjdHVyYSBkbyBhbHZvICIKKyN+ICIodXRpbGl6YSBvIEdDQylcbiIKKyN+ICIgIC0tcHJpbnQtZ251LWJ1aWxkLWFyY2hpdGVjdHVyZSAgICAgbW9zdHJhciBhIHZlcnPDo28gR05VIGRhIGFycXVpdGVjdHVyYSAiCisjfiAiYWx2b1xuIgorI34gIiAgLS1wcmludC1pbnN0YWxsYXRpb24tYXJjaGl0ZWN0dXJlICBtb3N0cmFyIGFycXVpdGVjdHVyYSBkbyBob3N0IHBhcmEgIgorI34gImluc3QnbilcbiIKKyN+ICIgIC0tY29tcGFyZS12ZXJzaW9ucyA8YT4gPHJlbD4gPGI+ICAgY29tcGFyYXIgbsO6bWVyb3MgZGUgdmVyc8OjbyAtIHZlamEgIgorI34gImFiYWl4b1xuIgorI34gIiAgLS1oZWxwIHwgLS12ZXJzaW9uICAgICAgICAgICAgICAgICBtb3N0cmFyIGVzdGEgYWp1ZGEgLyB2ZXJzw6NvXG4iCisjfiAiICAtLWZvcmNlLWhlbHAgfCAtRGh8LS1kZWJ1Zz1oZWxwICAgIGFqdWRhIGVtIGZvcsOnYXIgZGVidWdnaW5nIHJlc3AuXG4iCisjfiAiICAtLWxpY2VuY2UgICAgICAgICAgICAgICAgICAgICAgICAgIG1vc3RyYXIgdGVybW9zIGRhIGxpY2Vuw6dhIGNvcHlyaWdodFxuIgorI34gIlxuIgorI34gIlV0aWxpemUgZHBrZyAtYnwtLWJ1aWxkfC1jfC0tY29udGVudHN8LWV8LS1jb250cm9sfC1JfC0taW5mb3wtZnwtLWZpZWxkfFxuIgorI34gIiAteHwtLWV4dHJhY3R8LVh8LS12ZXh0cmFjdHwtLWZzeXMtdGFyZmlsZSAgbm9zIGFycXVpdm9zIChlc2NyZXZhICVzIC0tIgorI34gImhlbHAuKVxuIgorI34gIlxuIgorI34gIlBhcmEgdXNvIGludGVybm86IGRwa2cgLS1hc3NlcnQtc3VwcG9ydC1wcmVkZXBlbmRzIHwgLS1wcmVkZXAtcGFja2FnZSB8XG4iCisjfiAiICAtLWFzc2VydC13b3JraW5nLWVwb2NoIHwgLS1hc3NlcnQtbG9uZy1maWxlbmFtZXMgfCAtLWFzc2VydC1tdWx0aS0iCisjfiAiY29ucmVwXG4iCisjfiAiXG4iCisjfiAiT3DDp8O1ZXM6XG4iCisjfiAiICAtLWFkbWluZGlyPTxkaXJlY3TDs3Jpbz4gICAgVXRpbGl6ZSA8ZGlyZWN0w7NyaW8+IGVtIHZleiBkZSAlc1xuIgorI34gIiAgLS1yb290PTxkaXJlY3TDs3Jpbz4gICAgICAgIEluc3RhbGFyIGVtIG91dHJvIHNpc3RlbWEgY29tIHJvb3Qgbm91dHJvICIKKyN+ICJsdWdhclxuIgorI34gIiAgLS1pbnN0ZGlyPTxkaXJlY3TDs3Jpbz4gICAgIEFsdGVyYXIgcmHDrXogZGEgaW5zdGFsYcOnw6NvIHNlbSBtdWRhciBvICIKKyN+ICJkaXJlY3TDs3JpbyBkZSBhZG1pblxuIgorI34gIiAgLU98LS1zZWxlY3RlZC1vbmx5ICAgICAgICAgUGFzc2FyIMOhIGZyZW50ZSBkZSBwYWNvdGVzIG7Do28gc2VsZWNjaW9uYWRvcyAiCisjfiAicGFyYSBpbnN0YWxhci9hY3R1YWxpemFyXG4iCisjfiAiICAtRXwtLXNraXAtc2FtZS12ZXJzaW9uICAgICBQYXNzYXIgw6AgZnJlbnRlIGRlIHBhY290ZXMgY3VqYSBtZXNtYSB2ZXJzw6NvICIKKyN+ICJlc3TDoSBpbnN0YWxhZGFcbiIKKyN+ICIgIC1HfC0tcmVmdXNlLWRvd25ncmFkZSAgICAgIFBhc3NhciDDoCBmcmVudGUgZGUgcGFjb3RlcyBjb20gdmVyc8OjbyAiCisjfiAiYW50ZXJpb3Igw6AgaW5zdGFsYWRhXG4iCisjfiAiICAtQnwtLWF1dG8tZGVjb25maWd1cmUgICAgICBJbnN0YWxhciBtZXNtbyBxdWUgZXN0cmFndWUgYWxndW0gb3V0cm8gIgorI34gInBhY290ZVxuIgorI34gIiAgLS1uby1kZWJzaWcgICAgICAgICAgICAgICAgTsOjbyB0ZW50YXIgdmVyaWZpY2FyIGFzc2luYXR1cmFzIGRvcyAiCisjfiAicGFjb3Rlc1xuIgorI34gIiAgLS1uby1hY3QgICAgICAgICAgICAgICAgICAgQXBlbmFzIGRpcmVpIG8gcXVlIHZvdSBmYXplciAtIG1hcyBuw6NvICIKKyN+ICJmYXJlaVxuIgorI34gIiAgLUR8LS1kZWJ1Zz08b2N0YWw+ICAgICAgICAgSGFiaWxpdGEgZGVidWdnaW5nIC0gdmVqYSAtRGhlbHAgb3UgLS0iCisjfiAiZGVidWc9aGVscFxuIgorI34gIiAgLS1zdGF0dXMtZmQgPG4+ICAgICAgICAgICAgRW52aWFyIGFjdHVhbGl6YcOnw7VlcyBkbyBzdGF0dXMgbmFzIG11ZGFuw6dhcyAiCisjfiAicGFyYSBvIGZpbGUgZGVzY3JpcHRvciA8bj5cbiIKKyN+ICIgIC0taWdub3JlLWRlcGVuZHM9PHBhY290ZWU+LC4uLiBJZ25vcmFyIGRlcGVuZMOqbmNpYXMgaW52b2x2ZW5kbyAiCisjfiAiPHBhY290ZWU+XG4iCisjfiAiICAtLWZvcmNlLS4uLiAgICAgICAgICAgICAgICBVbHRyYXBhc3NhciBwcm9ibGVtYXMgLSB2ZWphIC0tZm9yY2UtaGVscFxuIgorI34gIiAgLS1uby1mb3JjZS0uLi58LS1yZWZ1c2UtLi4uICAgIFBhcmFyIHF1YW5kbyBmb3JlbSBlbmNvbnRyYWRvcyAiCisjfiAicHJvYmxlbWFzXG4iCisjfiAiICAtLWFib3J0LWFmdGVyIDxuPiAgICAgICAgIEFib3J0YXIgYXDDs3MgZW5jb250cmFyIDxuPiBlcnJvc1xuIgorI34gIlxuIgorI34gIk9wZXJhZG9yZXMgZGUgY29tcGFyYcOnw6NvIHBhcmEgLS1jb21wYXJlLXZlcnNpb25zIHPDo286XG4iCisjfiAiIGx0IGxlIGVxIG5lIGdlIGd0ICAgICAgIChuw6NvIHRyYXRhciBuZW5odW1hIHZlcnPDo28gY29tbyBtYWlzIGFudGlnYSBxdWUgIgorI34gIm91dHJhKTtcbiIKKyN+ICIgbHQtbmwgbGUtbmwgZ2UtbmwgZ3QtbmwgKG7Do28gdHJhdGFyIG5lbmh1bWEgdmVyc8OjbyBjb21vIG1haXMgcmVjZW50ZSBxdWUgIgorI34gInF1YWxxdWVyIG91dHJhIHZlcnPDo28pO1xuIgorI34gIiA8IDw8IDw9ID0gPj0gPj4gPiAgICAgICAoYXBlbmFzIHBhcmEgY29tcGF0aWJpbGlkYWRlIGNvbSBzw61udGF4ZSBkbyAiCisjfiAiZmljaGVpcm8gZGUgY29udHJvbGUpLlxuIgorI34gIlxuIgorI34gIlV0aWxpemUgYGRzZWxlY3QnIG91ICdhcHRpdHVkZScgcGFyYSB1bWEgZ2VzdMOjbyBkZSBwYWNvdGVzIHVzZXItIgorI34gImZyaWVuZGx5LlxuIgorCisjfiBtc2dpZCAiICBQYWNrYWdlICIKKyN+IG1zZ3N0ciAiICBQYWNvdGUgIgorCisjfiBtc2dpZCAiIHdoaWNoIHByb3ZpZGVzICIKKyN+IG1zZ3N0ciAiIHF1ZSBkaXNwb25pYmlsaXphICIKKworI34gbXNnaWQgIiBpcyB0byBiZSByZW1vdmVkLlxuIgorI34gbXNnc3RyICIgZXN0w6EgcGFyYSBzZXIgcmVtb3ZpZG8uXG4iCisKKyN+IG1zZ2lkICIgIFZlcnNpb24gb2YgIgorI34gbXNnc3RyICIgIFZlcnPDo28gZGUgIgorCisjfiBtc2dpZCAiIG9uIHN5c3RlbSBpcyAiCisjfiBtc2dzdHIgIiBubyBzaXN0ZW1hIMOpICIKKworI34gbXNnaWQgIiBpcyBub3QgaW5zdGFsbGVkLlxuIgorI34gbXNnc3RyICIgbsOjbyBlc3TDoSBpbnN0YWxhZG8uXG4iCisKKyN+IG1zZ2lkICIgdG86ICVzXG4iCisjfiBtc2dzdHIgIiBwYXJhOiAlc1xuIgorCisjfiBtc2dpZCAiZmdldHBvcyBmYWlsZWQiCisjfiBtc2dzdHIgImZhbGhvdSBvIGZnZXRwb3MiCisKKyN+IG1zZ2lkICJmc2V0cG9zIGZhaWxlZCIKKyN+IG1zZ3N0ciAiZmFsaG91IG8gZnNldHBvcyIKKworI34gbXNnaWQgIiIKKyN+ICJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gPGNvbW1hbmQ+XG4iCisjfiAiXG4iCisjfiAiQ29tbWFuZHM6XG4iCisjfiAiICAtYnwtLWJ1aWxkIDxkaXJlY3Rvcnk+IFs8ZGViPl0gICAgQnVpbGQgYW4gYXJjaGl2ZS5cbiIKKyN+ICIgIC1jfC0tY29udGVudHMgPGRlYj4gICAgICAgICAgICAgICBMaXN0IGNvbnRlbnRzLlxuIgorI34gIiAgLUl8LS1pbmZvIDxkZWI+IFs8Y2ZpbGU+Li4uXSAgICAgIFNob3cgaW5mbyB0byBzdGRvdXQuXG4iCisjfiAiICAtV3wtLXNob3cgPGRlYj4gICAgICAgICAgICAgICAgICAgU2hvdyBpbmZvcm1hdGlvbiBvbiBwYWNrYWdlKHMpXG4iCisjfiAiICAtZnwtLWZpZWxkIDxkZWI+IFs8Y2ZpZWxkPi4uLl0gICAgU2hvdyBmaWVsZChzKSB0byBzdGRvdXQuXG4iCisjfiAiICAtZXwtLWNvbnRyb2wgPGRlYj4gWzxkaXJlY3Rvcnk+XSAgRXh0cmFjdCBjb250cm9sIGluZm8uXG4iCisjfiAiICAteHwtLWV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gICAgRXh0cmFjdCBmaWxlcy5cbiIKKyN+ICIgIC1YfC0tdmV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gICBFeHRyYWN0ICYgbGlzdCBmaWxlcy5cbiIKKyN+ICIgIC0tZnN5cy10YXJmaWxlIDxkZWI+ICAgICAgICAgICAgICBPdXRwdXQgZmlsZXN5c3RlbSB0YXJmaWxlLlxuIgorI34gIiAgLWh8LS1oZWxwICAgICAgICAgICAgICAgICAgICAgICAgIERpc3BsYXkgdGhpcyBtZXNzYWdlLlxuIgorI34gIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICAgICAgICAgIFNob3cgdmVyc2lvbi5cbiIKKyN+ICIgIC0tbGljZW5zZSB8IC0tbGljZW5jZSAgICAgICAgICAgICBTaG93IGxpY2Vuc2UuXG4iCisjfiAiXG4iCisjfiAiPGRlYj4gaXMgdGhlIGZpbGVuYW1lIG9mIGEgRGViaWFuIGZvcm1hdCBhcmNoaXZlLlxuIgorI34gIjxjZmlsZT4gaXMgdGhlIG5hbWUgb2YgYW4gYWRtaW5pc3RyYXRpdmUgZmlsZSBjb21wb25lbnQuXG4iCisjfiAiPGNmaWVsZD4gaXMgdGhlIG5hbWUgb2YgYSBmaWVsZCBpbiB0aGUgbWFpbiBgY29udHJvbCcgZmlsZS5cbiIKKyN+ICJcbiIKKyN+ICJPcHRpb25zOlxuIgorI34gIiAgLS1zaG93Zm9ybWF0PTxmb3JtYXQ+ICAgICAgVXNlIGFsdGVybmF0aXZlIGZvcm1hdCBmb3IgLS1zaG93LlxuIgorI34gIiAgLUQgICAgICAgICAgICAgICAgICAgICAgICAgRW5hYmxlIGRlYnVnZ2luZyBvdXRwdXQuXG4iCisjfiAiICAtLW9sZCwgLS1uZXcgICAgICAgICAgICAgICBTZWxlY3QgYXJjaGl2ZSBmb3JtYXQuXG4iCisjfiAiICAtLW5vY2hlY2sgICAgICAgICAgICAgICAgICBTdXBwcmVzcyBjb250cm9sIGZpbGUgY2hlY2sgKGJ1aWxkIGJhZCAiCisjfiAicGFja2FnZSkuXG4iCisjfiAiICAteiMgICAgICAgICAgICAgICAgICAgICAgICBTZXQgdGhlIGNvbXByZXNzaW9uIGxldmVsIHdoZW4gYnVpbGRpbmcuXG4iCisjfiAiICAtWjx0eXBlPiAgICAgICAgICAgICAgICAgICBTZXQgdGhlIGNvbXByZXNzaW9uIHR5cGUgdG8gdXNlIHdoZW4gIgorI34gImJ1aWxkaW5nLlxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWxsb3dlZCB2YWx1ZXM6IGd6aXAsIGJ6aXAyLCBub25lLlxuIgorI34gIlxuIgorI34gbXNnc3RyICIiCisjfiAiVXRpbGl6YcOnw6NvOiAlcyBbPG9ww6fDo28+IC4uLl0gPGNvbWFuZG8+XG4iCisjfiAiXG4iCisjfiAiQ29tYW5kb3M6XG4iCisjfiAiICAtYnwtLWJ1aWxkIDxkaXJlY3TDs3Jpbz4gWzxkZWI+XSAgIENvbnN0cnVpciB1bSBhcnF1aXZvLlxuIgorI34gIiAgLWN8LS1jb250ZW50cyA8ZGViPiAgICAgICAgICAgICAgIExpc3RhciBjb250ZcO6ZG8uXG4iCisjfiAiICAtSXwtLWluZm8gPGRlYj4gWzxjZmlsZT4uLi5dICAgICAgTW9zdHJhciBpbmZvIHBhcmEgc3Rkb3V0LlxuIgorI34gIiAgLVd8LS1zaG93IDxkZWI+ICAgICAgICAgICAgICAgICAgIE1vc3RyYXIgaW5mb3JtYcOnw6NvIHNvYnJlIHBhY290ZShzKVxuIgorI34gIiAgLWZ8LS1maWVsZCA8ZGViPiBbPGNmaWVsZD4uLi5dICAgIE1vc3RyYXIgY2FtcG8ocykgcGFyYSBzdGRvdXQuXG4iCisjfiAiICAtZXwtLWNvbnRyb2wgPGRlYj4gWzxkaXJlY3TDs3Jpbz5dIEV4dHJhw61yIGluZm9ybWHDp8OjbyBkZSBjb250cm9sby5cbiIKKyN+ICIgIC14fC0tZXh0cmFjdCA8ZGViPiA8ZGlyZWN0w7NyaW8+ICAgRXh0cmHDrXIgZmljaGVpcm9zLlxuIgorI34gIiAgLVh8LS12ZXh0cmFjdCA8ZGViPiA8ZGlyZWN0w7NyaW8+ICBFeHRyYcOtciAmIGxpc3RhciBmaWNoZWlyb3MuXG4iCisjfiAiICAtLWZzeXMtdGFyZmlsZSA8ZGViPiAgICAgICAgICAgICAgRXhpYmlyIHNpc3RlbWEgZGUgZmljaGVpcm9zIGRvICIKKyN+ICJmaWNoZWlybyB0YXIuXG4iCisjfiAiICAtaHwtLWhlbHAgICAgICAgICAgICAgICAgICAgICAgICAgRXhpYmlyIGVzdGEgbWVuc2FnZW0uXG4iCisjfiAiICAtLXZlcnNpb24gfCAtLWxpY2VuY2UgICAgICAgICAgICAgTW9zdHJhciB2ZXJzw6NvLlxuIgorI34gIiAgLS1saWNlbnNlIHwgLS1saWNlbmNlICAgICAgICAgICAgIE1vc3RyYXIgbGljZW7Dp2EuXG4iCisjfiAiXG4iCisjfiAiPGRlYj4gw6kgbyBub21lIGRvIGZpY2hlaXJvIGRlIHVtIGFycXVpdm8gbm8gZm9ybWF0byBEZWJpYW4uXG4iCisjfiAiPGNmaWxlPiDDqSBvIG5vbWUgZGUgdW0gY29tcG9uZW50ZSBkZSBmaWNoZWlybyBhZG1pbmlzdHJhdGl2by5cbiIKKyN+ICI8Y2ZpZWxkPiDDqSBvIG5vbWUgZGUgdW0gY2FtcG8gbm8gZmljaGVpcm8gcHJpbmNpcGFsIGBjb250cm9sJy5cbiIKKyN+ICJcbiIKKyN+ICJPcMOnw7VlczpcbiIKKyN+ICIgIC0tc2hvd2Zvcm1hdD08Zm9ybWF0bz4gICAgIFVzYXIgZm9ybWF0byBhbHRlcm5hdGl2byBwYXJhIC0tc2hvdy5cbiIKKyN+ICIgIC1EICAgICAgICAgICAgICAgICAgICAgICAgIEhhYmlsaXRhciBzYcOtZGEgZGUgZGVidWcuXG4iCisjfiAiICAtLW9sZCwgLS1uZXcgICAgICAgICAgICAgICBTZWxlY2Npb25hciBmb3JtYXRvIGRlIGFycXVpdm9cbiIKKyN+ICIgIC0tbm9jaGVjayAgICAgICAgICAgICAgICAgIFN1cHJpbWlyIHZlcmlmaWNhw6fDo28gZG8gZmljaGVpcm8gZGUgY29udHJvbGUgIgorI34gIihjb25zdHJ1w61yIHBhY290ZSBtYXUpLlxuIgorI34gIiAgLXojICAgICAgICAgICAgICAgICAgICAgICAgRGVmaW5pciBvIG7DrXZlbCBkZSBjb21wcmVzc8OjbyBuYSAiCisjfiAiY29uc3RydcOnw6NvLlxuIgorI34gIiAgLVo8dGlwbz4gICAgICAgICAgICAgICAgICAgRGVmaW5pdCBvIHRpcG8gZGUgY29tcHJlc3PDo28gbmEgY29uc3RydcOnw6NvLlxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVmFsb3JlcyBwZXJtaXRpZG9zOiBnemlwLCBiemlwMiwgbm9uZS5cbiIKKyN+ICJcbiIKKworI34gbXNnaWQgIiIKKyN+ICJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gPGNvbW1hbmQ+XG4iCisjfiAiXG4iCisjfiAiQ29tbWFuZHM6XG4iCisjfiAiICAtc3wtLXNwbGl0IDxmaWxlPiBbPHByZWZpeD5dICAgIFNwbGl0IGFuIGFyY2hpdmUuXG4iCisjfiAiICAtanwtLWpvaW4gPHBhcnQ+IDxwYXJ0PiAuLi4gICAgIEpvaW4gcGFydHMgdG9nZXRoZXIuXG4iCisjfiAiICAtSXwtLWluZm8gPHBhcnQ+IC4uLiAgICAgICAgICAgIERpc3BsYXkgaW5mbyBhYm91dCBhIHBhcnQuXG4iCisjfiAiICAtaHwtLWhlbHAgICAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisjfiAiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhlIHZlcnNpb24uXG4iCisjfiAiICAtLWxpY2Vuc2UgICAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhlIGxpY2Vuc2UuXG4iCisjfiAiXG4iCisjfiAiICAtYXwtLWF1dG8gLW8gPGNvbXBsZXRlPiA8cGFydD4gIEF1dG8tYWNjdW11bGF0ZSBwYXJ0cy5cbiIKKyN+ICIgIC1sfC0tbGlzdHEgICAgICAgICAgICAgICAgICAgICAgTGlzdCB1bm1hdGNoZWQgcGllY2VzLlxuIgorI34gIiAgLWR8LS1kaXNjYXJkIFs8ZmlsZW5hbWU+IC4uLl0gICBEaXNjYXJkIHVubWF0Y2hlZCBwaWVjZXMuXG4iCisjfiAiXG4iCisjfiAiT3B0aW9uczpcbiIKKyN+ICIgIC0tZGVwb3RkaXIgPGRpcmVjdG9yeT4gICAgICAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMvJXMuXG4iCisjfiAiICAtU3wtLXBhcnRzaXplIDxzaXplPiAgICAgICAgICAgIEluIEtpQiwgZm9yIC1zIChkZWZhdWx0IGlzIDQ1MCkuXG4iCisjfiAiICAtb3wtLW91dHB1dCA8ZmlsZT4gICAgICAgICAgICAgIEZvciAtaiAoZGVmYXVsdCBpcyA8cGFja2FnZT4tPHZlcnNpb24+LiIKKyN+ICJkZWIpLlxuIgorI34gIiAgLVF8LS1ucHF1aWV0ICAgICAgICAgICAgICAgICAgICBCZSBxdWlldCB3aGVuIC1hIGlzIG5vdCBhIHBhcnQuXG4iCisjfiAiICAtLW1zZG9zICAgICAgICAgICAgICAgICAgICAgICAgIEdlbmVyYXRlIDguMyBmaWxlbmFtZXMuXG4iCisjfiAiXG4iCisjfiAiRXhpdCBzdGF0dXM6IDAgPSBPSzsgIDEgPSAtYSBpcyBub3QgYSBwYXJ0OyAgMiA9IHRyb3VibGUhXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJVdGlsaXphw6fDo286ICVzIFs8b3DDp8Ojbz4gLi4uXSA8Y29tYW5kbz5cbiIKKyN+ICJcbiIKKyN+ICJDb21hbmRvczpcbiIKKyN+ICIgIC1zfC0tc3BsaXQgPGZpY2hlaXJvPiBbPHByZWZpeG8+XSBEaXZpZGUgdW0gYXJxdWl2by5cbiIKKyN+ICIgIC1qfC0tam9pbiA8cGFydGU+IDxwYXJ0ZT4gLi4uICAgICBKdW50YSBwYXJ0ZXMuXG4iCisjfiAiICAtSXwtLWluZm8gPHBhcnRlPiAuLi4gICAgICAgICAgICAgRXhpYmUgaW5mb3JtYcOnw6NvIHNvYnJlIHVtYSBwYXJ0ZS5cbiIKKyN+ICIgIC1ofC0taGVscCAgICAgICAgICAgICAgICAgICAgICAgICBNb3N0cmFyIGVzdGEgbWVuc2FnZW0gZGUgYWp1ZGEuXG4iCisjfiAiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgICAgICAgICAgTW9zdHJhciBhIHZlcnPDo28uXG4iCisjfiAiICAtLWxpY2VuY2UgICAgICAgICAgICAgICAgICAgICAgICAgTW9zdHJhciBhIGxpY2Vuw6dhLlxuIgorI34gIlxuIgorI34gIiAgLWF8LS1hdXRvIC1vIDxjb21wbGV0YT4gPHBhcnQ+ICAgIEF1dG8tYWN1bXVsYSBwYXJ0ZXMsXG4iCisjfiAiICAtbHwtLWxpc3RxICAgICAgICAgICAgICAgICAgICAgICAgTGlzdGEgYm9jYWRvcyBxdWUgbsOjbyBjYXNhbS5cbiIKKyN+ICIgIC1kfC0tZGlzY2FyZCBbPGZpY2hlaXJvPl0gLi4uXSAgICBEZXNjYXJ0YSBib2NhZG9zIHF1ZSBuw6NvIGNhc2FtLlxuIgorI34gIlxuIgorI34gIk9ww6fDtWVzOlxuIgorI34gIiAgLS1kZXBvdGRpciA8ZGlyZWN0w7NyaW8+ICAgICAgICAgICBVc2FyIDxkaXJlY3TDs3Jpbz4gZW0gdmV6IGRlICVzLyVzLlxuIgorI34gIiAgLVN8LS1wYXJ0c2l6ZSA8dGFtYW5obz4gICAgICAgICAgIEVtIEtpQiwgcGFyYSAtcywgcG9yIG9taXNzw6NvIMOpIDQ1MCkuXG4iCisjfiAiICAtb3wtLW91dHB1dCA8ZmljaGVpcm8+ICAgICAgICAgICAgUGFyYSAtaiwgKHBvciBvbWlzc8OjbyDDqSA8cGFjb3RlPi0iCisjfiAiPHZlcnPDo28+LmRlYikuXG4iCisjfiAiICAtUXwtLW5wcXVpZXQgICAgICAgICAgICAgICAgICAgICAgRmljYXIgcXVpZXRvIHF1YW5kbyAtYSBuw6NvIGZvciB1bSAiCisjfiAiYm9jYWRvLlxuIgorI34gIiAgLS1tc2RvcyAgICAgICAgICAgICAgICAgICAgICAgICAgIEdlcmFyIG5vbWUgZGUgZmljaGVpcm9zIDguMy5cbiIKKyN+ICJcbiIKKyN+ICJFc3RhZG8gZGEgc2HDrWRhOiAwID0gT0s7IDEgPSAtYSBuw6NvIMOpIHVtYSBwYXJ0ZTsgMiA9IHByb2JsZW1hIVxuIgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9wby9wdF9CUi5nbW8gYi9kcGtnLTEuMTYuMS4xL3BvL3B0X0JSLmdtbwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mNmZjZTllCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9wby9wdF9CUi5nbW8KQmluYXJ5IGZpbGVzIGRpZmZlcgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9wby9wdF9CUi5wbyBiL2Rwa2ctMS4xNi4xLjEvcG8vcHRfQlIucG8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNDBmOGZkYgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvcG8vcHRfQlIucG8KQEAgLTAsMCArMSw3ODM0IEBACisjIFRyYWR1w6fDo28gcGFyYSBvIFBvcnR1Z3XDqnMgKEJyYXNpbCkgZG8gZHBrZyAoRGViaWFuKQorIyBDb3B5cmlnaHQgwqkgMTk5OSwgMjAwMCBTb2Z0d2FyZSBpbiB0aGUgUHVibGljIEludGVyZXN0LgorIyBUaGlhZ28gSnVuZyBCYXVlcm1hbm4gPGp1bmdtYW5uQGN3Yi5tYXRyaXguY29tLmJyPiwgMTk5OS4KKyMgQ2FybG9zIEhlbnJpcXVlIFNhbnRvcyBMYXZpb2xhIDxjbGF2aW9sYUBicmZyZWUuY29tLmJyPiwgMjAwMC4KKyMgQW5kcsOpIEx1w61zIExvcGVzIDxhbmRyZWxvcEBpZy5jb20uYnI+LCAyMDAyLgorIyBBbmRyw6kgTHXDrXMgTG9wZXMgPGFuZHJlbG9wQGRlYmlhbi5vcmc+LCAyMDA0LgorIyBBbmRyw6kgTHXDrXMgTG9wZXMgPGFuZHJlbG9wQGRlYmlhbi5vcmc+LCAyMDA1LgorIyBBbmRyw6kgTHXDrXMgTG9wZXMgPGFuZHJlbG9wQGRlYmlhbi5vcmc+LCAyMDA2LgorIyBGZWxpcGUgQXVndXN0byB2YW4gZGUgV2llbCA8ZmF3QGRlYmlhbi5vcmc+LCAyMDA4LgorIworbXNnaWQgIiIKK21zZ3N0ciAiIgorIlByb2plY3QtSWQtVmVyc2lvbjogZHBrZyAxLjEzXG4iCisiUmVwb3J0LU1zZ2lkLUJ1Z3MtVG86IGRlYmlhbi1kcGtnQGxpc3RzLmRlYmlhbi5vcmdcbiIKKyJQT1QtQ3JlYXRpb24tRGF0ZTogMjAxMS0xMC0xNCAwNzoxMSswMjAwXG4iCisiUE8tUmV2aXNpb24tRGF0ZTogMjAwOC0xMS0xNyAwMTo1NS0wMjAwXG4iCisiTGFzdC1UcmFuc2xhdG9yOiBGZWxpcGUgQXVndXN0byB2YW4gZGUgV2llbCAoZmF3KSA8ZmF3QGRlYmlhbi5vcmc+XG4iCisiTGFuZ3VhZ2UtVGVhbTogQnJhemlsaWFuIFBvcnR1Z3Vlc2UgPGRlYmlhbi1sMTBuLXBvcnR1Z3Vlc2VAbGlzdHMuZGViaWFuLiIKKyJvcmc+XG4iCisiTGFuZ3VhZ2U6IHB0X0JSXG4iCisiTUlNRS1WZXJzaW9uOiAxLjBcbiIKKyJDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9VVRGLThcbiIKKyJDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiA4LWJpdFxuIgorCisjOiBsaWIvZHBrZy9hci5jOjY2CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgY2hhcmFjdGVyICclYycgaW4gYXJjaGl2ZSAnJS4yNTBzJyBtZW1iZXIgJyUuMTZzJyBzaXplIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2FyLmM6ODEgbGliL2Rwa2cvYXIuYzo5NyBsaWIvZHBrZy9hci5jOjEwOCBsaWIvZHBrZy9hci5jOjExMgorIzogbGliL2Rwa2cvYXIuYzoxMzQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBmaWxlICclcyciCittc2dzdHIgImltcG9zc8OtdmVsIGFicmlyIGFycXVpdm8gZm9udGUgJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2FyLmM6OTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZ2VuZXJhdGVkIGNvcnJ1cHQgYXIgaGVhZGVyIGZvciAnJXMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2FyLmM6MTIzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgYXIgbWVtYmVyIGZpbGUgKCVzKSIKK21zZ3N0ciAiZmFsaG91IGFvIGNyaWFyIHRtcGZpbGUgKGRhdGEpIgorCisjOiBsaWIvZHBrZy9hci5jOjEzMAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiYXIgbWVtYmVyIGZpbGUgKCVzKSIKK21zZ3N0ciAiZmFsaG91IGFvIGNyaWFyIHRtcGZpbGUgKGRhdGEpIgorCisjOiBsaWIvZHBrZy9idWZmZXIuYzoxOTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZWFkIG9uIGJ1ZmZlciBjb3B5IGZvciAlcyIKK21zZ3N0ciAiZmFsaG91IGVtIGJ1ZmZlcl9jb3B5ICglcykiCisKKyM6IGxpYi9kcGtnL2J1ZmZlci5jOjIxMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIGluIHdyaXRlIG9uIGJ1ZmZlciBjb3B5IGZvciAlcyIKK21zZ3N0ciAiZmFsaG91IGVtIGJ1ZmZlcl9jb3B5ICglcykiCisKKyM6IGxpYi9kcGtnL2J1ZmZlci5jOjIyMAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAic2hvcnQgcmVhZCBvbiBidWZmZXIgY29weSBmb3IgJXMiCittc2dzdHIgImxlaXR1cmEgY3VydGEgZW0gYnVmZmVyX2NvcHkgKCVzKSIKKworIzogbGliL2Rwa2cvYnVmZmVyLmM6Mjg4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyB0YXIiCittc2dpZCAiZmFpbGVkIHRvIHNlZWsgJXMiCittc2dzdHIgImZhbGhvdSBhbyBleGVjdXRhciB0YXIiCisKKyM6IGxpYi9kcGtnL2NvbW1hbmQuYzoxNzggbGliL2Rwa2cvY29tbWFuZC5jOjIwNCBzcmMvaGVscC5jOjYyMQorIzogc3JjL3Byb2Nlc3NhcmMuYzo5OCBzcmMvcHJvY2Vzc2FyYy5jOjEzOCBzcmMvcHJvY2Vzc2FyYy5jOjQzMgorIzogc3JjL3Byb2Nlc3NhcmMuYzo4MzkgZHBrZy1kZWIvYnVpbGQuYzo0NTkgZHBrZy1kZWIvYnVpbGQuYzo1MzgKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTYxIGRwa2ctZGViL2V4dHJhY3QuYzozMTcgZHBrZy1kZWIvaW5mby5jOjY1CisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6NjkgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQ1NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGV4ZWN1dGUgJXMgKCVzKSIKK21zZ3N0ciAiaW1wb3Nzw612ZWwgZXhlY3V0YXIgJXMiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGRlY29tcHJlc3Npb24iCittc2dzdHIgIiVzOiBkZXNjb21wYWN0YcOnw6NvIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjg5CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBjb21wcmVzc2lvbiIKK21zZ3N0ciAiJXM6IGNvbXBhY3Rhw6fDo28iCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTEyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvciBiaW5kaW5nIGlucHV0IHRvIGd6aXAgc3RyZWFtIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTI0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCByZWFkIGVycm9yOiAnJXMnIgorbXNnc3RyICIlczogZXJybyBpbnRlcm5vIGRvIGd6aXA6ICclcyciCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTMyIGxpYi9kcGtnL2NvbXByZXNzLmM6MTM2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCB3cml0ZSBlcnJvciIKK21zZ3N0ciAiJXM6IGVycm8gaW50ZXJubyBkbyBnemlwOiAnJXMnIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE1MAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZXJyb3IgYmluZGluZyBvdXRwdXQgdG8gZ3ppcCBzdHJlYW0iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxNTcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHJlYWQgZXJyb3IiCittc2dzdHIgIiVzOiBlcnJvIGludGVybm8gZG8gZ3ppcDogJyVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxNjcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHdyaXRlIGVycm9yOiAnJXMnIgorbXNnc3RyICIlczogZXJybyBpbnRlcm5vIGRvIGd6aXA6ICclcyciCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTgwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCB3cml0ZSBlcnJvcjogJXMiCittc2dzdHIgIiVzOiBlcnJvIGludGVybm8gZG8gZ3ppcDogJyVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyMjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yIGJpbmRpbmcgaW5wdXQgdG8gYnppcDIgc3RyZWFtIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjMyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgcmVhZCBlcnJvcjogJyVzJyIKK21zZ3N0ciAiJXM6IGVycm8gaW50ZXJubyBkbyBiemlwMjogJyVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyNDAgbGliL2Rwa2cvY29tcHJlc3MuYzoyNDQgbGliL2Rwa2cvY29tcHJlc3MuYzoyOTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiB3cml0ZSBlcnJvciIKK21zZ3N0ciAiJXM6IGVycm8gaW50ZXJubyBkbyBiemlwMjogJyVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yIGJpbmRpbmcgb3V0cHV0IHRvIGJ6aXAyIHN0cmVhbSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI2NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIHJlYWQgZXJyb3IiCittc2dzdHIgIiVzOiBlcnJvIGludGVybm8gZG8gYnppcDI6ICclcyciCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6Mjc1IGxpYi9kcGtnL2NvbXByZXNzLmM6Mjg2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgd3JpdGUgZXJyb3I6ICclcyciCittc2dzdHIgIiVzOiBlcnJvIGludGVybm8gZG8gYnppcDI6ICclcyciCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjgyCittc2dpZCAidW5leHBlY3RlZCBiemlwMiBlcnJvciIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjY4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1cGRhdGVzIGRpcmVjdG9yeSBjb250YWlucyBmaWxlIGAlLjI1MHMnIHdob3NlIG5hbWUgaXMgdG9vIGxvbmcgKGxlbmd0aD0lZCwgIgorIm1heD0lZCkiCittc2dzdHIgIiIKKyJkaXJldMOzcmlvIGRlIGF0dWFsaXphw6fDtWVzIGNvbnTDqW0gYXJxdWl2byAnJS4yNTBzJyBjdWpvIG5vbWUgw6kgbXVpdG8gbG9uZ28gIgorIih0YW1hbmhvPSVkLCBtw6F4PSVkKSIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzo3MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidXBkYXRlcyBkaXJlY3RvcnkgY29udGFpbnMgZmlsZXMgd2l0aCBkaWZmZXJlbnQgbGVuZ3RoIG5hbWVzIChib3RoICVkIGFuZCAlZCkiCittc2dzdHIgIiIKKyJkaXJldMOzcmlvIGRlIGF0dWFsaXphw6fDtWVzIGNvbnTDqW0gYXJxdWl2b3MgY29tIG5vbWVzIGRlIHRhbWFuaG8gZGlmZXJlbnRlcyAiCisiKCVkIGUgJWQpIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjg2CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzY2FuIHVwZGF0ZXMgZGlyZWN0b3J5IGAlLjI1NXMnIgorbXNnc3RyICJuw6NvIGZvaSBwb3Nzw612ZWwgdmFzY3VsaGFyIGRpcmV0w7NyaW8gZGUgYXR1YWxpemHDp8O1ZXMgJyUuMjU1cyciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZW1vdmUgaW5jb3Jwb3JhdGVkIHVwZGF0ZSBmaWxlICUuMjU1cyIKK21zZ3N0ciAiZmFsaG91IGFvIHJlbW92ZXIgYXJxdWl2byBkZSBhdHVhbGl6YcOnw6NvIGluY29ycG9yYWRvICUuMjU1cyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxMjEgZHBrZy1kZWIvYnVpbGQuYzo0NDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBgJS4yNTVzJyIKK21zZ3N0ciAiaW1wb3Nzw612ZWwgY3JpYXIgJyUuMjU1cyciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTI1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmaWxsICUuMjUwcyB3aXRoIHBhZGRpbmciCittc2dzdHIgImltcG9zc8OtdmVsIHByZWVuY2hlciAlLjI1MHMgY29tIGVuY2hpbWVudG8iCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTI3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCAlLjI1MHMgYWZ0ZXIgcGFkZGluZyIKK21zZ3N0ciAiaW1wb3Nzw612ZWwgZXhlY3V0YXIgXCJmbHVzaFwiICUuMjUwcyBhcMOzcyBlbmNoaW1lbnRvIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEyOQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2VlayB0byBzdGFydCBvZiAlLjI1MHMgYWZ0ZXIgcGFkZGluZyIKK21zZ3N0ciAiaW1wb3Nzw612ZWwgZXhlY3V0YXIgXCJzZWVrXCIgbm8gY29tZcOnbyBkZSAlLjI1MHMgYXDDs3MgZW5jaGltZW50byIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxOTUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byBvcGVuIHRtcGZpbGUgZm9yIHZzbnByaW50ZiIKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBsb2NrIGZpbGUgJXMgZm9yIHRlc3RpbmciCittc2dzdHIgImltcG9zc8OtdmVsIGFicmlyIHRtcGZpbGUgcGFyYSB2c25wcmludGYiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjIxCittc2dpZCAidW5hYmxlIHRvIG9wZW4vY3JlYXRlIHN0YXR1cyBkYXRhYmFzZSBsb2NrZmlsZSIKK21zZ3N0ciAiIgorImltcG9zc8OtdmVsIGFicmlyL2NyaWFyIGFycXVpdm8gZGUgYmxvcXVlaW8gZG8gYmFuY28gZGUgZGFkb3MgZGUgZXN0YWRvcyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyMzEKK21zZ2lkICJ5b3UgZG8gbm90IGhhdmUgcGVybWlzc2lvbiB0byBsb2NrIHRoZSBkcGtnIHN0YXR1cyBkYXRhYmFzZSIKK21zZ3N0ciAiIgorInZvY8OqIG7Do28gdGVtIHBlcm1pc3PDo28gcGFyYSBibG9xdWVhciBvIGJhbmNvIGRlIGRhZG9zIGRlIGVzdGFkb3MgZG8gZHBrZyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyMzMKKyMsIGZ1enp5CisjfCBtc2dpZCAidW5hYmxlIHRvIGxvY2sgZHBrZyBzdGF0dXMgZGF0YWJhc2UiCittc2dpZCAiZHBrZyBzdGF0dXMgZGF0YWJhc2UiCittc2dzdHIgImltcG9zc8OtdmVsIGJsb3F1ZWFyIGJhbmNvIGRlIGRhZG9zIGRlIGVzdGFkb3MgZG8gZHBrZyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyNTcKK21zZ2lkICJyZXF1ZXN0ZWQgb3BlcmF0aW9uIHJlcXVpcmVzIHN1cGVydXNlciBwcml2aWxlZ2UiCittc2dzdHIgImEgb3BlcmHDp8OjbyBzb2xpY2l0YWRhIHJlcXVlciBwcml2aWzDqWdpb3MgZGUgc3VwZXJ1c3XDoXJpbyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyNjIKK21zZ2lkICJ1bmFibGUgdG8gYWNjZXNzIGRwa2cgc3RhdHVzIGFyZWEiCittc2dzdHIgImltcG9zc8OtdmVsIGFjZXNzYXIgw6FyZWEgZGUgZXN0YWRvIGRvIGRwa2ciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjY0Cittc2dpZCAib3BlcmF0aW9uIHJlcXVpcmVzIHJlYWQvd3JpdGUgYWNjZXNzIHRvIGRwa2cgc3RhdHVzIGFyZWEiCittc2dzdHIgIm9wZXJhw6fDo28gcmVxdWVyIGFjZXNzbyBkZSBsZWl0dXJhL2VzY3JpdGEgw6Agw6FyZWEgZGUgZXN0YWRvIGRvIGRwa2ciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzA5CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZW1vdmUgbXkgb3duIHVwZGF0ZSBmaWxlICUuMjU1cyIKK21zZ3N0ciAiZmFsaG91IGFvIHJlbW92ZXIgbWV1IHByw7NwcmlvIGFycXVpdm8gZGUgYXR1YWxpemHDp8OjbyAlLjI1NXMiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzQ3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiaW1wb3Nzw612ZWwgZXNjcmV2ZXIgZXN0YWRvIGF0dWFsaXphZG8gZGUgJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzQ5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiaW1wb3Nzw612ZWwgZXhlY3V0YXIgXCJmbHVzaFwiIGRvIGVzdGFkbyBhdHVhbGl6YWRvIGRlICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM1MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gdHJ1bmNhdGUgZm9yIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJpbXBvc3PDrXZlbCB0cnVuY2FyIG8gZXN0YWRvIGF0dWFsaXphZG8gZGUgJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzUzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmc3luYyB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiaW1wb3Nzw612ZWwgZXhlY3V0YXIgXCJmc3luY1wiIGRvIGVzdGFkbyBhdHVhbGl6YWRvIGRlICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM1NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgImltcG9zc8OtdmVsIGZlY2hhciBlc3RhZG8gYXR1YWxpemFkbyBkZSAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgImltcG9zc8OtdmVsIGluc3RhbGFyIGVzdGFkbyBhdHVhbGl6YWRvIGRlICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy9kaXIuYzo1MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHJlYWQgZmlsZWRlc2NyaXB0b3IgZmxhZ3MgZm9yICUuMjUwcyIKK21zZ2lkICJ1bmFibGUgdG8gZ2V0IGZpbGUgZGVzY3JpcHRvciBmb3IgZGlyZWN0b3J5ICclcyciCittc2dzdHIgImltcG9zc8OtdmVsIGxlciBhcyBcImZsYWdzXCIgZG8gZGVzY3JpdG9yIGRlIGFycXVpdm9zIHBhcmEgJS4yNTBzIgorCisjOiBsaWIvZHBrZy9kaXIuYzo1NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgZGlyZWN0b3J5ICclcyciCittc2dzdHIgImltcG9zc8OtdmVsIGFicmlyIGFycXVpdm8gZm9udGUgJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2Rpci5jOjY5IGxpYi9kcGtnL2Rpci5jOjEzMQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gZGlyZWN0b3J5ICclcyciCittc2dzdHIgImltcG9zc8OtdmVsIGFicmlyIGFycXVpdm8gZm9udGUgJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2Rpci5jOjEwOSBzcmMvZGl2ZXJ0Y21kLmM6MjE4IGRwa2ctc3BsaXQvc3BsaXQuYzoyMDIKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjkzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBmaWxlICclcyciCittc2dzdHIgImltcG9zc8OtdmVsIGFicmlyIGFycXVpdm8gZm9udGUgJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2Rpci5jOjExMSBzcmMvZGl2ZXJ0Y21kLmM6MjMyIHNyYy9kaXZlcnRjbWQuYzozNzcKKyM6IHNyYy9zdGF0Y21kLmM6MjE3IGRwa2ctZGViL2J1aWxkLmM6NTk4IGRwa2ctc3BsaXQvam9pbi5jOjY1CisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTg3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNDA2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBmaWxlICclcyciCittc2dzdHIgImltcG9zc8OtdmVsIGFicmlyIGFycXVpdm8gZm9udGUgJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2Rpci5jOjExMyBzcmMvZGl2ZXJ0Y21kLmM6MjM0IHNyYy9kaXZlcnRjbWQuYzozNzkKKyM6IGRwa2ctZGViL2J1aWxkLmM6NjAwIGRwa2ctc3BsaXQvam9pbi5jOjY3IGRwa2ctc3BsaXQvcXVldWUuYzoxODkKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzE0IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNDA4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgZmlsZSAnJXMnIgorbXNnc3RyICJpbXBvc3PDrXZlbCBlZmV0dWFyIFwiZmx1c2hcIiBlbSB2c25wcmludGYgIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6Mzk2CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB3cml0ZSBkZXRhaWxzIG9mIGAlLjUwcycgdG8gYCUuMjUwcyciCittc2dzdHIgImZhbGhvdSBhbyBlc2NyZXZlciBkZXRhbGhlcyBkZSAnJS41MHMnIHBhcmEgJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0MjMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuICclcycgZm9yIHdyaXRpbmcgJXMgZGF0YWJhc2UiCittc2dzdHIgImZhbGhvdSBhbyBhYnJpciAnJXMnIHBhcmEgZXNjcmV2ZXIgYSBpbmZvcm1hw6fDo28gZGUgJXMiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0MjYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgYnVmZmVyaW5nIG9uICVzIGRhdGFiYXNlIGZpbGUiCittc2dzdHIgImltcG9zc8OtdmVsIGRlZmluaXIgXCJidWZmZXJpbmdcIiBubyBhcnF1aXZvIGRlIGVzdGFkbyIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQzOAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlICVzIGRhdGFiYXNlIHJlY29yZCBhYm91dCAnJS41MHMnIHRvICclLjI1MHMnIgorbXNnc3RyICJmYWxob3UgYW8gZXNjcmV2ZXIgbyByZWdpc3RybyAlcyBzb2JyZSAnJS41MHMnIHBhcmEgJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NDYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBmbHVzaCAlcyBkYXRhYmFzZSB0byAnJS4yNTBzJyIKK21zZ3N0ciAiZmFsaG91IGFvIGV4ZWN1dGFyIFwiZmx1c2hcIiBkZSBpbmZvcm1hw6fDo28gJXMgcGFyYSAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ0OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZzeW5jICVzIGRhdGFiYXNlIHRvICclLjI1MHMnIgorbXNnc3RyICJmYWxob3UgYW8gZXhlY3V0YXIgXCJmc3luY1wiIGRlIGluZm9ybWHDp8OjbyAlcyBwYXJhICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDUxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2xvc2UgJyUuMjUwcycgYWZ0ZXIgd3JpdGluZyAlcyBkYXRhYmFzZSIKK21zZ3N0ciAiZmFsaG91IGFvIGZlY2hhciAnJS4yNTBzJyBhcMOzcyBlc2NyZXZlciBpbmZvcm1hw6fDo28gJXMiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NTUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBsaW5rICclLjI1MHMnIHRvICclLjI1MHMnIGZvciBiYWNrdXAgb2YgJXMgZGF0YWJhc2UiCittc2dzdHIgImZhbGhvdSBhbyBsaWdhciAnJS4yNTBzJyBhICclLjI1MHMnIHBhcmEgYmFja3VwIGRlIGluZm9ybWHDp8OjbyBkZSAlcyIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ1OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGluc3RhbGwgJyUuMjUwcycgYXMgJyUuMjUwcycgY29udGFpbmluZyAlcyBkYXRhYmFzZSIKK21zZ3N0ciAiZmFsaG91IGFvIGluc3RhbGFyICclLjI1MHMnIGNvbW8gJyUuMjUwcycgY29udGVuZG8gaW5mb3JtYcOnw6NvIGRlICVzIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6OTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiB1bnJlY292ZXJhYmxlIGZhdGFsIGVycm9yLCBhYm9ydGluZzpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorIiVzOiBlcnJvIGZhdGFsIGlycmVjdXBlcsOhdmVsLCBhYm9ydGFuZG86XG4iCisiICVzXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoxMDAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIlczogdW5yZWNvdmVyYWJsZSBmYXRhbCBlcnJvciwgYWJvcnRpbmc6XG4iCisjfCAiICVzXG4iCittc2dpZCAiIgorIiVzOiBvdXRzaWRlIGVycm9yIGNvbnRleHQsIGFib3J0aW5nOlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisiJXM6IGVycm8gZmF0YWwgaXJyZWN1cGVyw6F2ZWwsIGFib3J0YW5kbzpcbiIKKyIgJXNcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjEyMAorIywgZnV6enkKKyN8IG1zZ2lkICJvdXQgb2YgbWVtb3J5IGZvciBuZXcgY2xlYW51cCBlbnRyeSIKK21zZ2lkICJvdXQgb2YgbWVtb3J5IGZvciBuZXcgZXJyb3IgY29udGV4dCIKK21zZ3N0ciAic2VtIG1lbcOzcmlhIHBhcmEgbm92YSBlbnRyYWRhIGRlIGxpbXBlemEiCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoxODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBlcnJvciB3aGlsZSBjbGVhbmluZyB1cDpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorIiVzOiBlcnJvIGVucXVhbnRvIGVmZXR1YXZhIGEgbGltcGV6YTpcbiIKKyIgJXNcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjIwMQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZHBrZzogdG9vIG1hbnkgbmVzdGVkIGVycm9ycyBkdXJpbmcgZXJyb3IgcmVjb3ZlcnkgISFcbiIKK21zZ2lkICIlczogdG9vIG1hbnkgbmVzdGVkIGVycm9ycyBkdXJpbmcgZXJyb3IgcmVjb3ZlcnkhIVxuIgorbXNnc3RyICJkcGtnOiBtdWl0b3MgZXJyb3MgYW5pbmhhZG9zIGR1cmFudGUgYSByZWN1cGVyYcOnw6NvIGRvcyBlcnJvcyAhIVxuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MjY4IGxpYi9kcGtnL2VoYW5kbGUuYzozMDcKK21zZ2lkICJvdXQgb2YgbWVtb3J5IGZvciBuZXcgY2xlYW51cCBlbnRyeSIKK21zZ3N0ciAic2VtIG1lbcOzcmlhIHBhcmEgbm92YSBlbnRyYWRhIGRlIGxpbXBlemEiCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoyOTEKK21zZ2lkICJvdXQgb2YgbWVtb3J5IGZvciBuZXcgY2xlYW51cCBlbnRyeSB3aXRoIG1hbnkgYXJndW1lbnRzIgorbXNnc3RyICJzZW0gbWVtw7NyaWEgcGFyYSBub3ZhIGVudHJhZGEgZGUgbGltcGV6YSBjb20gdGFudG9zIGFyZ3VtZW50b3MiCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzozNTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvcjogJXNcbiIKK21zZ3N0ciAiIgorIiVzOiBlcnJvIHByb2Nlc3NhbmRvICVzICgtLSVzKTpcbiIKKyIgJXNcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjM5MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IHdhcm5pbmc6ICVzXG4iCittc2dzdHIgImVycm8gYW8gZ3JhdmFyIGAlcyciCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzo0MTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiVzOiVkOiBpbnRlcm5hbCBlcnJvcjogJXNcbiIKK21zZ3N0ciAiJXM6JWQ6IGVycm8gaW50ZXJubyAnJXMnXG4iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGlzIG1pc3NpbmciCittc2dzdHIgIiVzIGVzdMOhIGZhbHRhbmRvIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0OQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYCUuKnMnIGlzIG5vdCBhbGxvd2VkIGZvciAlcyIKK21zZ2lkICInJS41MHMnIGlzIG5vdCBhbGxvd2VkIGZvciAlcyIKK21zZ3N0ciAiJyUuKnMnIG7Do28gdGVtIHBlcm1pc3PDo28gcGFyYSAlcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NzMKKyMsIGMtZm9ybWF0Cittc2dpZCAianVuayBhZnRlciAlcyIKK21zZ3N0ciAibGl4byBkZXBvaXMgZGUgJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjg3CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgcGFja2FnZSBuYW1lICglLjI1MHMpIgorbXNnc3RyICJub21lIGRlIHBhY290ZSBpbnbDoWxpZG8gKCUuMjUwcykiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJlbXB0eSBmaWxlIGRldGFpbHMgZmllbGQgYCVzJyIKK21zZ3N0ciAiY2FtcG8gZGUgZGV0YWxoZXMgZGUgYXJxdWl2byAnJXMnIHZhemlvIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBkZXRhaWxzIGZpZWxkIGAlcycgbm90IGFsbG93ZWQgaW4gc3RhdHVzIGZpbGUiCittc2dzdHIgImNhbXBvIGRlIGRldGFsaGVzIGRlIGFycXVpdm8gJyVzJyBuw6NvIHBlcm1pdGlkbyBlbSBhcnF1aXZvIGRlIGVzdGFkbyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTE4CisjLCBjLWZvcm1hdAorbXNnaWQgInRvbyBtYW55IHZhbHVlcyBpbiBmaWxlIGRldGFpbHMgZmllbGQgYCVzJyAoY29tcGFyZWQgdG8gb3RoZXJzKSIKK21zZ3N0ciAiIgorIm11aXRvcyB2YWxvcmVzIG5vIGNhbXBvIGRlIGRldGFsaGVzIGRlIGFycXVpdm8gJyVzJyAoY29tcGFyYWRvIGEgb3V0cm9zKSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTMyCisjLCBjLWZvcm1hdAorbXNnaWQgInRvbyBmZXcgdmFsdWVzIGluIGZpbGUgZGV0YWlscyBmaWVsZCBgJXMnIChjb21wYXJlZCB0byBvdGhlcnMpIgorbXNnc3RyICIiCisicG91Y29zIHZhbG9yZXMgbm8gY2FtcG8gZGUgZGV0YWxoZXMgZGUgYXJxdWl2byAnJXMnIChjb21wYXJhZG8gYSBvdXRyb3MpIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxNTQKK21zZ2lkICJ5ZXMvbm8gaW4gYm9vbGVhbiBmaWVsZCIKK21zZ3N0ciAic2ltL27Do28gZW0gY2FtcG8gYm9vbGVhbm8iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE3NAorbXNnaWQgIndvcmQgaW4gYHByaW9yaXR5JyBmaWVsZCIKK21zZ3N0ciAicGFsYXZyYSBubyBjYW1wbyAncHJpb3JpZGFkZSciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE4NgorbXNnaWQgInZhbHVlIGZvciBgc3RhdHVzJyBmaWVsZCBub3QgYWxsb3dlZCBpbiB0aGlzIGNvbnRleHQiCittc2dzdHIgInZhbG9yIHBhcmEgY2FtcG8gJ3N0YXR1cycgbsOjbyBwZXJtaXRpZG8gbmVzdGUgY29udGV4dG8iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE5MQorbXNnaWQgImZpcnN0ICh3YW50KSB3b3JkIGluIGBzdGF0dXMnIGZpZWxkIgorbXNnc3RyICJwcmltZWlyYSAoXCJ3YW50XCIpIHBhbGF2cmEgbm8gY2FtcG8gJ3N0YXR1cyciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE5NAorbXNnaWQgInNlY29uZCAoZXJyb3IpIHdvcmQgaW4gYHN0YXR1cycgZmllbGQiCittc2dzdHIgInNlZ3VuZGEgKFwiZXJyb3JcIikgcGFsYXZyYSBubyBjYW1wbyAnc3RhdHVzJyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTk3Cittc2dpZCAidGhpcmQgKHN0YXR1cykgd29yZCBpbiBgc3RhdHVzJyBmaWVsZCIKK21zZ3N0ciAidGVyY2VpcmEgKFwic3RhdHVzXCIpIHBhbGF2cmEgbm8gY2FtcG8gJ3N0YXR1cyciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjIwNworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZXJyb3IgaW4gVmVyc2lvbiBzdHJpbmcgYCUuMjUwcyc6ICUuMjUwcyIKK21zZ2lkICJlcnJvciBpbiBWZXJzaW9uIHN0cmluZyAnJS4yNTBzJyIKK21zZ3N0ciAiZXJybyBuYSBzdHJpbmcgXCJWZXJzaW9uXCIgJyUuMjUwcyc6ICUuMjUwcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjE4Cittc2dpZCAib2Jzb2xldGUgYFJldmlzaW9uJyBvciBgUGFja2FnZS1SZXZpc2lvbicgZmllbGQgdXNlZCIKK21zZ3N0ciAiY2FtcG8gJ1JldmlzaW9uJyBvdSAnUGFja2FnZS1SZXZpc2lvbicgb2Jzb2xldG8gZm9pIHVzYWRvIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyMzUKK21zZ2lkICJ2YWx1ZSBmb3IgYGNvbmZpZy12ZXJzaW9uJyBmaWVsZCBub3QgYWxsb3dlZCBpbiB0aGlzIGNvbnRleHQiCittc2dzdHIgInZhbG9yIHBhcmEgY2FtcG8gJ2NvbmZpZy12ZXJzaW9uJyBuw6NvIHBlcm1pdGlkbyBuZXN0ZSBjb250ZXh0byIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjQwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJlcnJvciBpbiBDb25maWctVmVyc2lvbiBzdHJpbmcgYCUuMjUwcyc6ICUuMjUwcyIKK21zZ2lkICJlcnJvciBpbiBDb25maWctVmVyc2lvbiBzdHJpbmcgJyUuMjUwcyciCittc2dzdHIgImVycm8gbmEgc3RyaW5nIFwiQ29uZmlnLVZlcnNpb25cIiAnJS4yNTBzJzogJS4yNTBzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAidmFsdWUgZm9yIGBjb25mZmlsZXMnIGhhcyBtYWxmb3JtYXR0ZWQgbGluZSBgJS4qcyciCittc2dzdHIgInZhbG9yIHBhcmEgJ2NvbmZmaWxlcycgdGVtIGxpbmhhIG1hbCBmb3JtYXRhZGEgJyUuKnMnIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyODcKKyMsIGMtZm9ybWF0Cittc2dpZCAidmFsdWUgZm9yIGBjb25mZmlsZXMnIGhhcyBsaW5lIHN0YXJ0aW5nIHdpdGggbm9uLXNwYWNlIGAlYyciCittc2dzdHIgInZhbG9yIHBhcmEgJ2NvbmZmaWxlcycgcG9zc3VpIGxpbmhhIGNvbWXDp2FuZG8gY29tICclYycgc2VtIGVzcGHDp2FtZW50byIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MzA0Cittc2dpZCAicm9vdCBvciBudWxsIGRpcmVjdG9yeSBpcyBsaXN0ZWQgYXMgYSBjb25mZmlsZSIKK21zZ3N0ciAiIgorImRpcmV0w7NyaW8gcmFpeiBvdSBudWxvIMOpIGxpc3RhZG8gY29tbyB1bSBhcnF1aXZvIGRlIGNvbmZpZ3VyYcOnw6NvIChcImNvbmZmaWxlIgorIlwiKSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MzY1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJgJXMnIGZpZWxkLCBtaXNzaW5nIHBhY2thZ2UgbmFtZSwgb3IgZ2FyYmFnZSB3aGVyZSBwYWNrYWdlIG5hbWUgZXhwZWN0ZWQiCittc2dzdHIgIiIKKyJjYW1wbyAnJXMnLCBub21lIGRlIHBhY290ZSBmYWx0YW5kbywgb3UgbGl4byBubyBsdWdhciBlbSBxdWUgc2UgZXNwZXJhdmEgbyAiCisibm9tZSBkbyBwYWNvdGUiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjM3MAorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGZpZWxkLCBpbnZhbGlkIHBhY2thZ2UgbmFtZSBgJS4yNTVzJzogJXMiCittc2dzdHIgImNhbXBvICclcycsIG5vbWUgZGUgcGFjb3RlIGludsOhbGlkbyAnJS4yNTVzJzogJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQwNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOlxuIgorIiBiYWQgdmVyc2lvbiByZWxhdGlvbnNoaXAgJWMlYyIKK21zZ3N0ciAiIgorImNhbXBvICclcycsIHJlZmVyw6puY2lhIGEgJyUuMjU1cyc6XG4iCisiIHJlbGFjaW9uYW1lbnRvIGRlIHZlcnPDtWVzIHJ1aW0gJWMlYyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDEyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6XG4iCisiIGAlYycgaXMgb2Jzb2xldGUsIHVzZSBgJWM9JyBvciBgJWMlYycgaW5zdGVhZCIKK21zZ3N0ciAiIgorImNhbXBvICclcycsIHJlZmVyw6puY2lhIGEgJyUuMjU1cyc6XG4iCisiICclYycgZXN0w6Egb2Jzb2xldG8sIGVtIHNldSBsdWdhciB1c2UgJyVjPScgb3UgJyVjJWMnIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgaW1wbGljaXQgZXhhY3QgbWF0Y2ggb24gdmVyc2lvbiBudW1iZXIsIHN1Z2dlc3QgdXNpbmcgYD0nIGluc3RlYWQiCittc2dzdHIgIiIKKyJjYW1wbyAnJXMnLCByZWZlcsOqbmNpYSBhICclLjI1NXMnOlxuIgorIiBjb21iaW5hw6fDo28gZXhhdGEgaW1wbMOtY2l0YSBjb20gbyBuw7ptZXJvIGRhIHZlcnPDo28sIHN1Z2VyZS1zZSB1c2FyICc9JyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDMwCittc2dpZCAiT25seSBleGFjdCB2ZXJzaW9ucyBtYXkgYmUgdXNlZCBmb3IgUHJvdmlkZXMiCittc2dzdHIgIlNvbWVudGUgdmVyc8O1ZXMgZXhhdGFzIHBvZGVtIHNlciB1c2FkYXMgcGFyYSBcIlByb3ZpZGVzXCIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQzNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOlxuIgorIiB2ZXJzaW9uIHZhbHVlIHN0YXJ0cyB3aXRoIG5vbi1hbHBoYW51bWVyaWMsIHN1Z2dlc3QgYWRkaW5nIGEgc3BhY2UiCittc2dzdHIgIiIKKyJjYW1wbyAnJXMnLCByZWZlcsOqbmNpYSBhICclLjI1NXMnOlxuIgorIiB2YWxvciBkYSB2ZXJzw6NvIGNvbWXDp2EgY29tIGNhcmFjdGVyZSBuw6NvLWFsZmFudW3DqXJpY28sIHN1Z2VyZS1zZSBhIGFkacOnw6NvXG4iCisiIGRlIHVtIGVzcGHDp28iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ1MSBsaWIvZHBrZy9maWVsZHMuYzo0NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOiB2ZXJzaW9uIGNvbnRhaW5zIGAlYyciCittc2dzdHIgImNhbXBvICclcycsIHJlZmVyw6puY2lhIGEgJyUuMjU1cyc6IHZlcnPDo28gY29udMOpbSAnJWMnIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOiB2ZXJzaW9uIHVudGVybWluYXRlZCIKK21zZ3N0ciAiY2FtcG8gJyVzJywgcmVmZXLDqm5jaWEgYSAnJS4yNTVzJzogdmVyc8OjbyBuw6NvIHRlcm1pbmFkYSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDY1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6IGVycm9yIGluIHZlcnNpb246ICUuMjU1cyIKK21zZ2lkICInJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gJyUuMjU1cyc6IGVycm9yIGluIHZlcnNpb24iCittc2dzdHIgImNhbXBvICclcycsIHJlZmVyw6puY2lhIGEgJyUuMjU1cyc6IGVycm8gZW0gdmVyc8OjbzogJS4yNTVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBmaWVsZCwgc3ludGF4IGVycm9yIGFmdGVyIHJlZmVyZW5jZSB0byBwYWNrYWdlIGAlLjI1NXMnIgorbXNnc3RyICJjYW1wbyAnJXMnLCBlcnJvIGRlIHNpbnRheGUgYXDDs3MgcmVmZXLDqm5jaWEgYSBwYWNvdGUgJyUuMjU1cyciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ4MgorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZXMgKGB8Jykgbm90IGFsbG93ZWQgaW4gJXMgZmllbGQiCittc2dzdHIgImFsdGVybmF0aXZhcyAoJ3wnKSBuw6NvIHBlcm1pdGlkYXMgbm8gY2FtcG8gJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjUzNgorbXNnaWQgInZhbHVlIGZvciBgdHJpZ2dlcnMtcGVuZGluZycgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICJ2YWxvciBwYXJhIGNhbXBvICd0cmlnZ2Vycy1wZW5kaW5nJyBuw6NvIHBlcm1pdGlkbyBuZXN0ZSBjb250ZXh0byIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTQzCisjLCBjLWZvcm1hdAorbXNnaWQgImlsbGVnYWwgcGVuZGluZyB0cmlnZ2VyIG5hbWUgYCUuMjU1cyc6ICVzIgorbXNnc3RyICJub21lIGRlIGdhdGlsaG8gcGVuZGVudGUgaWxlZ2FsICclLjI1NXMnOiAlcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTQ3CisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBwZW5kaW5nIHRyaWdnZXIgYCUuMjU1cyciCittc2dzdHIgImdhdGlsaG8gcGVuZGVudGUgZHVwbGljYWRvICclLjI1NXMnIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NjEKK21zZ2lkICJ2YWx1ZSBmb3IgYHRyaWdnZXJzLWF3YWl0ZWQnIGZpZWxkIG5vdCBhbGxvd2VkIGluIHRoaXMgY29udGV4dCIKK21zZ3N0ciAidmFsb3IgcGFyYSBjYW1wbyAndHJpZ2dlcnMtYXdhaXRlZCcgbsOjbyBwZXJtaXRpZG8gbmVzdGUgY29udGV4dG8iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU2OAorIywgYy1mb3JtYXQKK21zZ2lkICJpbGxlZ2FsIHBhY2thZ2UgbmFtZSBpbiBhd2FpdGVkIHRyaWdnZXIgYCUuMjU1cyc6ICVzIgorbXNnc3RyICJub21lIGRlIHBhY290ZSBpbGVnYWwgbm8gZ2F0aWxobyBlbSBlc3BlcmEgJyUuMjU1cyc6ICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIGF3YWl0ZWQgdHJpZ2dlciBwYWNrYWdlIGAlLjI1NXMnIgorbXNnc3RyICJnYXRpbGhvIGVtIGVzcGVyYSBkdXBsaWNhZG8gbm8gcGFjb3RlICclLjI1NXMnIgorCisjOiBsaWIvZHBrZy9maWxlLmM6NTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IHNvdXJjZSBmaWxlICclLjI1MHMnIgorbXNnc3RyICJpbXBvc3PDrXZlbCBhYnJpciBhcnF1aXZvIGZvbnRlICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy9maWxlLmM6NTUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGFuZ2Ugb3duZXJzaGlwIG9mIHRhcmdldCBmaWxlICclLjI1MHMnIgorbXNnc3RyICIiCisiaW1wb3Nzw612ZWwgbXVkYXIgcG9zc2UgZG8gbm92byBhcnF1aXZvIGRlIGNvbmZpZ3VyYcOnw6NvIChcImNvbmZmaWxlXCIpIFwiZGlzdCIKKyJcIiAnJS4yNTBzJyAiCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzo1OQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNldCBtb2RlIG9mIHRhcmdldCBmaWxlICclLjI1MHMnIgorbXNnc3RyICIiCisiaW1wb3Nzw612ZWwgZGVmaW5pciBvIG1vZG8gZG8gbm92byBhcnF1aXZvIGRlIGNvbmZpZ3VyYcOnw6NvIChcImNvbmZmaWxlXCIpICIKKyJcImRpc3RcIiAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZmlsZS5jOjg1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gdW5sb2NrICVzOiAlcyIKK21zZ2lkICJ1bmFibGUgdG8gdW5sb2NrICVzIgorbXNnc3RyICJpbXBvc3PDrXZlbCBkZXNibG9xdWVhciAlczogJXMiCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzoxMTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGVjayBmaWxlICclcycgbG9jayBzdGF0dXMiCittc2dzdHIgImltcG9zc8OtdmVsIGFicmlyIGFycXVpdm8gZm9udGUgJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzoxNDYKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInN0YXR1cyBkYXRhYmFzZSBhcmVhIGlzIGxvY2tlZCBieSBhbm90aGVyIHByb2Nlc3MiCittc2dpZCAiJXMgaXMgbG9ja2VkIGJ5IGFub3RoZXIgcHJvY2VzcyIKK21zZ3N0ciAiw6FyZWEgZGUgYmFuY28gZGUgZGFkb3MgZGUgZXN0YWRvcyBlc3TDoSBibG9xdWVhZGEgcG9yIG91dHJvIHByb2Nlc3NvIgorCisjOiBsaWIvZHBrZy9maWxlLmM6MTQ4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gdW5sb2NrICVzOiAlcyIKK21zZ2lkICJ1bmFibGUgdG8gbG9jayAlcyIKK21zZ3N0ciAiaW1wb3Nzw612ZWwgZGVzYmxvcXVlYXIgJXM6ICVzIgorCisjOiBsaWIvZHBrZy9sb2cuYzo1MworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBvcGVuIGxvZyBgJXMnOiAlc1xuIgorbXNnc3RyICJuw6NvIGZvaSBwb3Nzw612ZWwgYWJyaXIgbG9nICclcyc6ICVzXG4iCisKKyM6IGxpYi9kcGtnL2xvZy5jOjg1Cittc2dpZCAiPHBhY2thZ2Ugc3RhdHVzIGFuZCBwcm9ncmVzcyBmaWxlIGRlc2NyaXB0b3I+IgorbXNnc3RyICI8ZXN0YWRvIGRvIHBhY290ZSBlIHByb2dyZXNzbyBkbyBkZXNjcml0b3IgZGUgYXJxdWl2bz4iCisKKyM6IGxpYi9kcGtnL2xvZy5jOjExNAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIHRvIHN0YXR1cyBmZCAlZCIKK21zZ3N0ciAiaW1wb3Nzw612ZWwgZXNjcmV2ZXIgZXN0YWRvIGF0dWFsaXphZG8gZGUgJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL21saWIuYzo0NCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJyZWFsbG9jIGZhaWxlZCAoJXp1IGJ5dGVzKSIKK21zZ2lkICJtYWxsb2MgZmFpbGVkICglenUgYnl0ZXMpIgorbXNnc3RyICJyZWFsbG9jIGZhbGhvdSAoJXp1IGJ5dGVzKSIKKworIzogbGliL2Rwa2cvbWxpYi5jOjU4CisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWxsb2MgZmFpbGVkICglenUgYnl0ZXMpIgorbXNnc3RyICJyZWFsbG9jIGZhbGhvdSAoJXp1IGJ5dGVzKSIKKworIzogbGliL2Rwa2cvbWxpYi5jOjcyIGxpYi9kcGtnL21saWIuYzo5MCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6Mjc3CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MzM0IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTA3Cittc2dpZCAiZmFpbGVkIHRvIGFsbG9jYXRlIG1lbW9yeSIKK21zZ3N0ciAiZmFsaG91IGFvIGFsb2NhciBtZW3Ds3JpYSIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZHVwIGZvciBzdGQlcyIKK21zZ3N0ciAiZHVwIHBhcmEgc3RkJXMgZmFsaG91IgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTAzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBkdXAgZm9yIGZkICVkIgorbXNnc3RyICJkdXAgcGFyYSBmZCAlZCBmYWxob3UiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMDkKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHBpcGUiCittc2dzdHIgImZhbGhvdSBhbyBjcmlhciBcInBpcGVcIiIKKworIzogbGliL2Rwa2cvbWxpYi5jOjExNworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igd3JpdGluZyB0byAnJXMnIgorbXNnc3RyICJlcnJvIGVzY3JldmVuZG8gJyVzJyIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBmaWxlZGVzY3JpcHRvciBmbGFncyBmb3IgJS4yNTBzIgorbXNnc3RyICJpbXBvc3PDrXZlbCBsZXIgYXMgXCJmbGFnc1wiIGRvIGRlc2NyaXRvciBkZSBhcnF1aXZvcyBwYXJhICUuMjUwcyIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEyNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IGNsb3NlLW9uLWV4ZWMgZmxhZyBmb3IgJS4yNTBzIgorbXNnc3RyICJpbXBvc3PDrXZlbCBkZWZpbmlyIGEgXCJmbGFnXCIgJ2Nsb3NlLW9uLWV4ZWMnIHBhcmEgJS4yNTBzIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6NjMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImNvbmZpZ3VyYXRpb24gZXJyb3I6ICVzOiVkOiAlcyIKK21zZ3N0ciAiZXJybyBkZSBjb25maWd1cmHDp8OjbzogJXMgcHJlY2lzYSBkZSB1bSB2YWxvciIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjc1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiBjb25maWd1cmF0aW9uIGZpbGUgJyUuMjU1cycgZm9yIHJlYWRpbmc6ICVzIgorbXNnc3RyICJmYWxob3UgYW8gYWJyaXIgYXJxdWl2byBkZSBjb25maWd1cmHDp8OjbyAnJS4yNTVzJyBwYXJhIGxlaXR1cmEiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5iYWxhbmNlZCBxdW90ZXMgaW4gJyVzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTE3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiAnJXMnIgorbXNnc3RyICJvcMOnw6NvIGRlc2NvbmhlY2lkYSAnJXMnIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTIxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICInJXMnIG5lZWRzIGEgdmFsdWUiCittc2dzdHIgIm9ww6fDo28gLS0lcyBhY2VpdGEgdW0gdmFsb3IiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMjcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiclcycgZG9lcyBub3QgdGFrZSBhIHZhbHVlIgorbXNnc3RyICJvcMOnw6NvIC0tJXMgbsOjbyBhY2VpdGEgdW0gdmFsb3IiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVhZCBlcnJvciBpbiBjb25maWd1cmF0aW9uIGZpbGUgYCUuMjU1cyciCittc2dzdHIgImVycm8gZGUgbGVpdHVyYSBubyBhcnF1aXZvIGRlIGNvbmZpZ3VyYcOnw6NvICclLjI1NXMnIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgY29uZmlndXJhdGlvbiBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICJlcnJvIGFvIGZlY2hhciBhcnF1aXZvIGRlIGNvbmZpZ3VyYcOnw6NvICclLjI1NXMnIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTcwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBvcGVuaW5nIGNvbmZpZ3VyYXRpb24gZGlyZWN0b3J5ICclcyciCittc2dzdHIgImVycm8gYW8gZmVjaGFyIGFycXVpdm8gZGUgY29uZmlndXJhw6fDo28gJyUuMjU1cyciCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gLS0lcyIKK21zZ3N0ciAib3DDp8OjbyBkZXNjb25oZWNpZGEgLS0lcyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjIzMgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG9wdGlvbiB0YWtlcyBhIHZhbHVlIgorbXNnc3RyICJvcMOnw6NvIC0tJXMgYWNlaXRhIHVtIHZhbG9yIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjM3CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgb3B0aW9uIGRvZXMgbm90IHRha2UgYSB2YWx1ZSIKK21zZ3N0ciAib3DDp8OjbyAtLSVzIG7Do28gYWNlaXRhIHVtIHZhbG9yIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gb3B0aW9uIC0lYyIKK21zZ3N0ciAib3DDp8OjbyBkZXNjb25oZWNpZGEgLSVjIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjUwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0lYyBvcHRpb24gdGFrZXMgYSB2YWx1ZSIKK21zZ3N0ciAib3DDp8OjbyAtJWMgYWNlaXRhIHVtIHZhbG9yIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjU4CisjLCBjLWZvcm1hdAorbXNnaWQgIi0lYyBvcHRpb24gZG9lcyBub3QgdGFrZSBhIHZhbHVlIgorbXNnc3RyICJvcMOnw6NvIC0lYyBuw6NvIGFjZWl0YSB1bSB2YWxvciIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI3MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAib2Jzb2xldGUgb3B0aW9uICctLSVzJ1xuIgorbXNnc3RyICJBdmlzbzogb3DDp8OjbyBvYnNvbGV0YSAnLS0lcydcbiIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI4NworIywgYy1mb3JtYXQKK21zZ2lkICJjb25mbGljdGluZyBhY3Rpb25zIC0lYyAoLS0lcykgYW5kIC0lYyAoLS0lcykiCittc2dzdHIgImHDp8O1ZXMgY29uZmxpdGFudGVzIC0lYyAoLS0lcykgZSAtJWMgKC0tJXMpIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgdmFsdWUgZm9yIGAlcycgZmllbGQiCittc2dzdHIgInZhbG9yIGR1cGxpY2FkbyBwYXJhIG8gY2FtcG8gJyVzJyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoxNDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidXNlci1kZWZpbmVkIGZpZWxkIG5hbWUgYCUuKnMnIHRvbyBzaG9ydCIKK21zZ3N0ciAibm9tZSBkbyBjYW1wbyAnJS4qcycgZGVmaW5pZG8gcGVsbyB1c3XDoXJpbyDDqSBtdWl0byBjdXJ0byIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoxNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHZhbHVlIGZvciB1c2VyLWRlZmluZWQgZmllbGQgYCUuKnMnIgorbXNnc3RyICJ2YWxvciBkdXBsbyBwYXJhIGNhbXBvIGRlZmluaWRvIHBlbG8gdXN1w6FyaW8gJyUuKnMnIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjIwNworbXNnaWQgIkNvbmZpZ3VyZWQtVmVyc2lvbiBmb3IgcGFja2FnZSB3aXRoIGluYXBwcm9wcmlhdGUgU3RhdHVzIgorbXNnc3RyICInQ29uZmlndXJlZC1WZXJzaW9uJyBwYXJhIHBhY290ZSBjb20gJ1N0YXR1cycgaW5hcHJvcHJpYWRvIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjIxOAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGhhcyBzdGF0dXMgJXMgYnV0IHRyaWdnZXJzIGFyZSBhd2FpdGVkIgorbXNnc3RyICJwYWNvdGUgcG9zc3VpIGVzdGFkbyAlcyBtYXMgaMOhIGdhdGlsaG9zIGVtIGVzcGVyYSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMjIKK21zZ2lkICJwYWNrYWdlIGhhcyBzdGF0dXMgdHJpZ2dlcnMtYXdhaXRlZCBidXQgbm8gdHJpZ2dlcnMgYXdhaXRlZCIKK21zZ3N0ciAiIgorInBhY290ZSBwb3NzdWkgZXN0YWRvIFwidHJpZ2dlcnMtYXdhaXRlZFwiIG1hcyBuw6NvIGjDoSBnYXRpbGhvcyBlbSBlc3BlcmEiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjI4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgaGFzIHN0YXR1cyAlcyBidXQgdHJpZ2dlcnMgYXJlIHBlbmRpbmciCittc2dzdHIgInBhY290ZSBwb3NzdWkgZXN0YWRvICVzIG1hcyBow6EgZ2F0aWxob3MgcGVuZGVudGVzIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjIzMgorbXNnaWQgInBhY2thZ2UgaGFzIHN0YXR1cyB0cmlnZ2Vycy1wZW5kaW5nIGJ1dCBubyB0cmlnZ2VycyBwZW5kaW5nIgorbXNnc3RyICIiCisicGFjb3RlIHBvc3N1aSBlc3RhZG8gXCJ0cmlnZ2Vycy1wZW5kaW5nXCIgbWFzIG7Do28gaMOhIGdhdGlsaG9zIHBlbmRlbnRlcyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyNDIKK21zZ2lkICJQYWNrYWdlIHdoaWNoIGluIHN0YXRlIG5vdC1pbnN0YWxsZWQgaGFzIGNvbmZmaWxlcywgZm9yZ2V0dGluZyB0aGVtIgorbXNnc3RyICIiCisiUGFjb3RlIHF1ZSBubyBlc3RhZG8gbsOjby1pbnN0YWxhZG8gcG9zc3VpIGFycXVpdm9zIGRlIGNvbmZpZ3VyYcOnw6NvICIKKyIoXCJjb25mZmlsZXNcIiksIGVzcXVlY2VuZG8tb3MiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzM1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuIHBhY2thZ2UgaW5mbyBmaWxlIGAlLjI1NXMnIGZvciByZWFkaW5nIgorbXNnc3RyICJmYWxob3UgYW8gYWJyaXIgYXJxdWl2byBkZSBpbmZvcm1hw6fDtWVzIGRvIHBhY290ZSAnJS4yNTVzJyBwYXJhIGxlaXR1cmEiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzQxCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbid0IHN0YXQgcGFja2FnZSBpbmZvIGZpbGUgYCUuMjU1cyciCittc2dzdHIgIiIKKyJuw6NvIGZvaSBwb3Nzw612ZWwgZXhlY3V0YXIgXCJzdGF0XCIgbm8gYXJxdWl2byBkZSBpbmZvcm1hw6fDtWVzIGRvIHBhY290ZSAiCisiJyUuMjU1cyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzQ3CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbid0IG1tYXAgcGFja2FnZSBpbmZvIGZpbGUgYCUuMjU1cyciCittc2dzdHIgIiIKKyJuw6NvIGZvaSBwb3Nzw612ZWwgZXhlY3V0YXIgXCJtbWFwXCIgbm8gYXJxdWl2byBkZSBpbmZvcm1hw6fDtWVzIGRvIHBhY290ZSAiCisiJyUuMjU1cyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzUyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW4ndCBzdGF0IHBhY2thZ2UgaW5mbyBmaWxlIGAlLjI1NXMnIgorbXNnaWQgInJlYWRpbmcgcGFja2FnZSBpbmZvIGZpbGUgJyUuMjU1cyciCittc2dzdHIgIiIKKyJuw6NvIGZvaSBwb3Nzw612ZWwgZXhlY3V0YXIgXCJzdGF0XCIgbm8gYXJxdWl2byBkZSBpbmZvcm1hw6fDtWVzIGRvIHBhY290ZSAiCisiJyUuMjU1cyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzYzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjbG9zZSBhZnRlciByZWFkOiBgJS4yNTVzJyIKK21zZ3N0ciAiZmFsaG91IGFvIGZlY2hhciBhcMOzcyBsZXI6ICclLjI1NXMnIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQwNAorIywgYy1mb3JtYXQKK21zZ2lkICJFT0YgYWZ0ZXIgZmllbGQgbmFtZSBgJS4qcyciCittc2dzdHIgIkVPRiBhcMOzcyBvIGNhbXBvIG5vbWUgJyUuKnMnIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQwNworIywgYy1mb3JtYXQKK21zZ2lkICJuZXdsaW5lIGluIGZpZWxkIG5hbWUgYCUuKnMnIgorbXNnc3RyICJub3ZhIGxpbmhhIG5vIGNhbXBvIG5vbWUgJyUuKnMnIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQxMAorIywgYy1mb3JtYXQKK21zZ2lkICJNU0RPUyBFT0YgKF5aKSBpbiBmaWVsZCBuYW1lIGAlLipzJyIKK21zZ3N0ciAiRU9GIE1TRE9TICheWikgbm8gY2FtcG8gbm9tZSAnJS4qcyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDE0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpZWxkIG5hbWUgYCUuKnMnIG11c3QgYmUgZm9sbG93ZWQgYnkgY29sb24iCittc2dzdHIgImNhbXBvIGRlIG5vbWUgJyUuKnMnIHByZWNpc2Egc2VyIHNlZ3VpZG8gZGUgdsOtcmd1bGEiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDI1CisjLCBjLWZvcm1hdAorbXNnaWQgIkVPRiBiZWZvcmUgdmFsdWUgb2YgZmllbGQgYCUuKnMnIChtaXNzaW5nIGZpbmFsIG5ld2xpbmUpIgorbXNnc3RyICJFT0YgYW50ZXMgZG8gdmFsb3IgZG8gY2FtcG8gJyUuKnMnIChmYWx0YW5kbyBub3ZhIGxpbmhhIGZpbmFsKSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiTVNET1MgRU9GIGNoYXIgaW4gdmFsdWUgb2YgZmllbGQgYCUuKnMnIChtaXNzaW5nIG5ld2xpbmU/KSIKK21zZ3N0ciAiY2FyYWN0ZXIgRU9GIE1TRE9TIG5vIHZhbG9yIGRvIGNhbXBvICclLipzJyAobm92YSBsaW5oYSBmYWx0YW5kbz8pIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQ0MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAibmV3bGluZSBpbiBmaWVsZCBuYW1lIGAlLipzJyIKK21zZ2lkICJibGFuayBsaW5lIGluIHZhbHVlIG9mIGZpZWxkICclLipzJyIKK21zZ3N0ciAibm92YSBsaW5oYSBubyBjYW1wbyBub21lICclLipzJyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiRU9GIGR1cmluZyB2YWx1ZSBvZiBmaWVsZCBgJS4qcycgKG1pc3NpbmcgZmluYWwgbmV3bGluZSkiCittc2dzdHIgIkVPRiBkdXJhbnRlIG8gdmFsb3IgZG8gY2FtcG8gJyUuKnMnIChmYWx0YW5kbyBub3ZhIGxpbmhhIGZpbmFsKSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo1NDYKK21zZ2lkICJzZXZlcmFsIHBhY2thZ2UgaW5mbyBlbnRyaWVzIGZvdW5kLCBvbmx5IG9uZSBhbGxvd2VkIgorbXNnc3RyICIiCisibXVpdGFzIGVudHJhZGFzIGRlIGluZm9ybWHDp8OjbyBkbyBwYWNvdGUgZm9yYW0gZW5jb250cmFkYXMsIHNvbWVudGUgdW1hIMOpICIKKyJwZXJtaXRpZGEiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NTcyCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHBhY2thZ2UgaW5mb3JtYXRpb24gaW4gYCUuMjU1cyciCittc2dzdHIgInNlbSBpbmZvcm1hw6fDtWVzIGRlIHBhY290ZSBlbSAnJS4yNTVzJyIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6NDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJwYXJzaW5nIGZpbGUgJyUuMjU1cycgbmVhciBsaW5lICVkIHBhY2thZ2UgJyUuMjU1cyc6XG4iCisiICUuMjU1cyIKK21zZ3N0ciAiYXZpc28sIG5vIGFycXVpdm8gJyUuMjU1cycsIHByw7N4aW1vIMOgIGxpbmhhICVkIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzo0OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorInBhcnNpbmcgZmlsZSAnJS4yNTVzJyBuZWFyIGxpbmUgJWQ6XG4iCisiICUuMjU1cyIKK21zZ3N0ciAiYXZpc28sIG5vIGFycXVpdm8gJyUuMjU1cycsIHByw7N4aW1vIMOgIGxpbmhhICVkIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoxMjUKK21zZ2lkICJtYXkgbm90IGJlIGVtcHR5IHN0cmluZyIKK21zZ3N0ciAicG9kZSBuw6NvIHNlciB1bWEgc3RyaW5nIHZhemlhIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoxMjcKKyMsIGZ1enp5CisjfCBtc2dpZCAibXVzdCBzdGFydCB3aXRoIGFuIGFscGhhbnVtZXJpYyIKK21zZ2lkICJtdXN0IHN0YXJ0IHdpdGggYW4gYWxwaGFudW1lcmljIGNoYXJhY3RlciIKK21zZ3N0ciAiZGV2ZSBjb21lw6dhciBjb20gdW0gYWxmYW51bcOpcmljbyIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MTM2CisjLCBjLWZvcm1hdAorbXNnaWQgImNoYXJhY3RlciBgJWMnIG5vdCBhbGxvd2VkIChvbmx5IGxldHRlcnMsIGRpZ2l0cyBhbmQgY2hhcmFjdGVycyBgJXMnKSIKK21zZ3N0ciAiIgorImNhcmFjdGVyZSAnJWMnIG7Do28gcGVybWl0aWRvIChhcGVuYXMgbGV0cmFzLCBkw61naXRvcyBlIGNhcmFjdGVyZXMgJyVzJykiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjE3OAorIywgZnV6enkKKyN8IG1zZ2lkICI8bm9uZT4iCittc2djdHh0ICJ2ZXJzaW9uIgorbXNnaWQgIjxub25lPiIKK21zZ3N0ciAiPG5lbmh1bWE+IgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyMDkKK21zZ2lkICJ2ZXJzaW9uIHN0cmluZyBpcyBlbXB0eSIKK21zZ3N0ciAic3RyaW5nIGRlIHZlcnPDo28gZXN0w6EgdmF6aWEiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjIyNAorbXNnaWQgInZlcnNpb24gc3RyaW5nIGhhcyBlbWJlZGRlZCBzcGFjZXMiCittc2dzdHIgInN0cmluZyBkZSB2ZXJzw6NvIHBvc3N1aSBlc3Bhw6dvcyBlbWJ1dGlkb3MiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjIzMAorbXNnaWQgImVwb2NoIGluIHZlcnNpb24gaXMgbm90IG51bWJlciIKK21zZ3N0ciAiw6lwb2NhIGVtIHZlcnPDo28gbsOjbyDDqSB1bSBuw7ptZXJvIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyMzIKK21zZ2lkICJub3RoaW5nIGFmdGVyIGNvbG9uIGluIHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICJuYWRhIGFww7NzIHbDrXJndWxhIGVtIG7Dum1lcm8gZGUgdmVyc8OjbyIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjQ3Cittc2dpZCAidmVyc2lvbiBudW1iZXIgZG9lcyBub3Qgc3RhcnQgd2l0aCBkaWdpdCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyNTAKKyMsIGZ1enp5CisjfCBtc2dpZCAibm90aGluZyBhZnRlciBjb2xvbiBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ2lkICJpbnZhbGlkIGNoYXJhY3RlciBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAibmFkYSBhcMOzcyB2w61yZ3VsYSBlbSBuw7ptZXJvIGRlIHZlcnPDo28iCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjI1NAorIywgZnV6enkKKyN8IG1zZ2lkICJub3RoaW5nIGFmdGVyIGNvbG9uIGluIHZlcnNpb24gbnVtYmVyIgorbXNnaWQgImludmFsaWQgY2hhcmFjdGVyIGluIHJldmlzaW9uIG51bWJlciIKK21zZ3N0ciAibmFkYSBhcMOzcyB2w61yZ3VsYSBlbSBuw7ptZXJvIGRlIHZlcnPDo28iCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjI5OSBsaWIvZHBrZy9wYXJzZWhlbHAuYzozMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAibWlzc2luZyAlcyIKK21zZ3N0ciAiJXMgZmFsdGFuZG8iCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjMwMSBsaWIvZHBrZy9wYXJzZWhlbHAuYzozMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZW1wdHkgdmFsdWUgZm9yICVzIgorbXNnc3RyICJ2YWxvciB2YXppbyBwYXJhICVzIgorCisjOiBsaWIvZHBrZy9wa2ctZm9ybWF0LmM6ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgYCVjJyBpbiBmaWVsZCB3aWR0aFxuIgorbXNnc3RyICJjYXJhY3RlcmUgJyVjJyBpbnbDoWxpZG8gbm8gY2FtcG8gdGFtYW5ob1xuIgorCisjOiBsaWIvZHBrZy9wa2ctZm9ybWF0LmM6MTcyCisjLCBjLWZvcm1hdAorbXNnaWQgIkNsb3NpbmcgYnJhY2UgbWlzc2luZyBpbiBmb3JtYXRcbiIKK21zZ3N0ciAiRmVjaGFtZW50byBkZSBjaGF2ZSBmYWx0YW5kbyBubyBmb3JtYXRvXG4iCisKKyM6IGxpYi9kcGtnL3BrZy1zaG93LmM6NDAKK21zZ2lkICIobm8gZGVzY3JpcHRpb24gYXZhaWxhYmxlKSIKK21zZ3N0ciAiKG5lbmh1bWEgZGVzY3Jpw6fDo28gZGlzcG9uw612ZWwpIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6NTUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpZ25vcmUgc2lnbmFsICVzIGJlZm9yZSBydW5uaW5nICUuMjUwcyIKK21zZ3N0ciAiaW1wb3Nzw612ZWwgaWdub3JhciBzaW5hbCAlcyBhbnRlcyBkZSBleGVjdXRhciBzY3JpcHQiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzo2OAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciB1bi1jYXRjaGluZyBzaWduYWwgJXM6ICVzXG4iCittc2dzdHIgImVycm8gbsOjbyBwZWdhbmRvIHNpbmFsICVzOiAlc1xuIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgKHN1YnByb2Nlc3MpOiAlc1xuIgorbXNnc3RyICIlcyAoc3ViLXByb2Nlc3NvKTogJXNcbiIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjg5IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo0NTQKK21zZ2lkICJmb3JrIGZhaWxlZCIKK21zZ3N0ciAiZm9yayBmYWxob3UiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMTkKKyMsIGMtZm9ybWF0Cittc2dpZCAic3VicHJvY2VzcyAlcyByZXR1cm5lZCBlcnJvciBleGl0IHN0YXR1cyAlZCIKK21zZ3N0ciAic3ViLXByb2Nlc3NvICVzIHJldG9ybm91IGVzdGFkbyBkZSBzYcOtZGEgZGUgZXJybyAlZCIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEyOAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAic3VicHJvY2VzcyAlcyB3YXMgaW50ZXJydXB0ZWQiCittc2dzdHIgImVzcGVyYSBwb3IgJXMgZmFsaG91IgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTMwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJzdWJwcm9jZXNzICVzIGtpbGxlZCBieSBzaWduYWwgKCVzKSVzIgorbXNnaWQgInN1YnByb2Nlc3MgJXMgd2FzIGtpbGxlZCBieSBzaWduYWwgKCVzKSVzIgorbXNnc3RyICJzdWItcHJvY2Vzc28gJXMgZm9pIG1vcnRvIHBvciBzaW5hbCAoJXMpJXMiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMzIKK21zZ2lkICIsIGNvcmUgZHVtcGVkIgorbXNnc3RyICIsIGdlcm91IHVtIGNvcmUiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAic3VicHJvY2VzcyAlcyBmYWlsZWQgd2l0aCB3YWl0IHN0YXR1cyBjb2RlICVkIgorbXNnc3RyICJzdWItcHJvY2Vzc28gJXMgZmFsaG91IGNvbSBjw7NkaWdvIGRlIGVzdGFkbyBkZSBlc3BlcmEgJWQiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxNTEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQ2MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAid2FpdCBmb3Igc3VicHJvY2VzcyAlcyBmYWlsZWQiCittc2dzdHIgImVzcGVyYSBwb3IgJXMgZmFsaG91IgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDo3MgorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHBhY2thZ2UgbmFtZSBgJS4yNTBzJyBpbiB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisibm9tZSBkZSBwYWNvdGUgaW52w6FsaWRvICclLjI1MHMnIG5vIGFycXVpdm8gZGUgZ2F0aWxob3MgYWRpYWRvcyAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJ1bmNhdGVkIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImFycXVpdm8gZGUgZ2F0aWxob3MgYWRpYWRvcyB0cnVuY2FkbyAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yIGluIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcycgYXQgY2hhcmFjdGVyIGAlcyclcyIKK21zZ3N0ciAiIgorImVycm8gZGUgc2ludGF4ZSBubyBhcnF1aXZvIGRlIGdhdGlsaG9zIGFkaWFkb3MgJyUuMjUwcycgbm8gY2FyYWN0ZXJlICclcyclcyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuL2NyZWF0ZSB0cmlnZ2VycyBsb2NrZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiaW1wb3Nzw612ZWwgYWJyaXIvY3JpYXIgYXJxdWl2byBkZSBibG9xdWVpbyBkZSBnYXRpbGhvcyAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MTQxCisjLCBmdXp6eQorI3wgbXNnaWQgInRyaWdnZXJlZCIKK21zZ2lkICJ0cmlnZ2VycyBhcmVhIgorbXNnc3RyICJkaXNwYXJhZG8gcG9yIGdhdGlsaG8iCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjE1MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJpbXBvc3PDrXZlbCBleGVjdXRhciBcInN0YXRcIiBubyBhcnF1aXZvIGRlIGdhdGlsaG9zIGFkaWFkb3MgJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjE2NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJpbXBvc3PDrXZlbCBhYnJpciBhcnF1aXZvIGRlIGdhdGlsaG9zIGFkaWFkb3MgJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjE3OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3Blbi9jcmVhdGUgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImltcG9zc8OtdmVsIGFicmlyL2NyaWFyIG5vdm8gYXJxdWl2byBkZSBnYXRpbGhvcyBhZGlhZG9zICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoyMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcmVhZGluZyB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJlcnJvIGxlbmRvIGFycXVpdm8gZGUgZ2F0aWxob3MgYWRpYWRvcyAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MjIzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiaW1wb3Nzw612ZWwgZXNjcmV2ZXIgbm92byBhcnF1aXZvIGRlIGdhdGlsaG9zIGFkaWFkb3MgJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjIyOAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImltcG9zc8OtdmVsIGZlY2hhciBub3ZvIGFycXVpdm8gZGUgZ2F0aWxob3MgYWRpYWRvcyAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MjMyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJpbXBvc3PDrXZlbCBpbnN0YWxhciBub3ZvIGFycXVpdm8gZGUgZ2F0aWxob3MgYWRpYWRvcyAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjIyMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiaW52YWxpZCBvciB1bmtub3duIHN5bnRheCBpbiB0cmlnZ2VyIG5hbWUgYCUuMjUwcycgKGluIHRyaWdnZXIgaW50ZXJlc3RzIGZvciAiCisicGFja2FnZSBgJS4yNTBzJykiCittc2dzdHIgIiIKKyJzaW50YXhlIGludsOhbGlkYSBvdSBkZXNjb25oZWNpZGEgbm8gbm9tZSBkbyBnYXRpbGhvICclLjI1MHMnIChubyBpbnRlcmVzc2UgIgorImRvIGdhdGlsaG8gcGFyYSBvIHBhY290ZSAnJS4yNTBzJykiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzoyNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gdHJpZ2dlciBpbnRlcmVzdCBsaXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgImZhbGhvdSBhbyBhYnJpciBhcnF1aXZvIGRlIGxpc3RhIGRlIGdhdGlsaG9zIGludGVyZXNzYWRvcyAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjI5MgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmV3aW5kIHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiZmFsaG91IGFvIHJldHJvY2VkZXIgYXJxdWl2byBkZSBnYXRpbGhvcyBpbnRlcmVzc2Fkb3MgJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyBzeW50YXggZXJyb3I7IGlsbGVnYWwgcGFja2FnZSBuYW1lIGAlLjI1MHMnOiAiCisiJS4yNTBzIgorbXNnc3RyICIiCisiZXJybyBkZSBzaW50YXhlIG5vIGFycXVpdm8gZGUgZ2F0aWxob3MgaW50ZXJlc3NhZG9zICclLjI1MHMnOyBub21lIGRlIHBhY290ZSAiCisiaWxlZ2FsICclLjI1MHMnOiAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgImltcG9zc8OtdmVsIGVzY3JldmVyIG5vdm8gYXJxdWl2byBkZSBnYXRpbGhvcyBpbnRlcmVzc2Fkb3MgJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlICclLjI1MHMnIgorbXNnc3RyICJpbXBvc3PDrXZlbCBjcmlhciBub3ZvIGFycXVpdm8gZGUgZ2F0aWxob3MgaW50ZXJlc3NhZG9zICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzI0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlICclLjI1MHMnIgorbXNnc3RyICJpbXBvc3PDrXZlbCBjcmlhciBub3ZvIGFycXVpdm8gZGUgZ2F0aWxob3MgaW50ZXJlc3NhZG9zICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzMyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgImltcG9zc8OtdmVsIGluc3RhbGFyIG5vdm8gYXJxdWl2byBkZSBnYXRpbGhvcyBpbnRlcmVzc2Fkb3MgJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozNDAgbGliL2Rwa2cvdHJpZ2xpYi5jOjM0MiBsaWIvZHBrZy90cmlnbGliLmM6NDcyCisjOiBzcmMvcmVtb3ZlLmM6Mjg2IHNyYy9yZW1vdmUuYzozNzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlbW92ZSBgJS4yNTBzJyIKK21zZ3N0ciAibsOjbyBmb2kgcG9zc8OtdmVsIHJlbW92ZXIgJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozNjAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJpbXBvc3PDrXZlbCBjcmlhciBub3ZvIGFycXVpdm8gZGUgZ2F0aWxob3MgaW50ZXJlc3NhZG9zICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzgzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiaW1wb3Nzw612ZWwgY3JpYXIgbm92byBhcnF1aXZvIGRlIGdhdGlsaG9zIGludGVyZXNzYWRvcyAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ1NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHVwbGljYXRlIGZpbGUgdHJpZ2dlciBpbnRlcmVzdCBmb3IgZmlsZW5hbWUgYCUuMjUwcycgYW5kIHBhY2thZ2UgYCUuMjUwcyciCittc2dzdHIgIiIKKyJhcnF1aXZvIGRlIGdhdGlsaG8gaW50ZXJlc3NhZG9zIGR1cGxpY2FkbyBwYXJhIG8gYXJxdWl2byBjaGFtYWRvICclLjI1MHMnIGUgIgorInBhY290ZSAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ4MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImltcG9zc8OtdmVsIGNyaWFyIG5vdm8gYXJxdWl2byBkZSBnYXRpbGhvcyBkZSBhcnF1aXZvICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDkzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJpbXBvc3PDrXZlbCBlc2NyZXZlciBub3ZvIGFycXVpdm8gZGUgZ2F0aWxob3MgZGUgYXJxdWl2byAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ5NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgJyUuMjUwcyciCittc2dzdHIgImltcG9zc8OtdmVsIGNyaWFyIG5vdm8gYXJxdWl2byBkZSBnYXRpbGhvcyBkZSBhcnF1aXZvICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDk5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlICclLjI1MHMnIgorbXNnc3RyICJpbXBvc3PDrXZlbCBjcmlhciBub3ZvIGFycXVpdm8gZGUgZ2F0aWxob3MgZGUgYXJxdWl2byAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjUwMworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImltcG9zc8OtdmVsIGNyaWFyIG5vdm8gYXJxdWl2byBkZSBnYXRpbGhvcyBkZSBhcnF1aXZvICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTA3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgYXMgYCUuMjUwcyciCittc2dzdHIgImltcG9zc8OtdmVsIGluc3RhbGFyIG5vdm8gYXJxdWl2byBkZSBnYXRpbGhvcyBkZSBhcnF1aXZvIGNvbW8gJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1NDIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJpbXBvc3PDrXZlbCBsZXIgYXJxdWl2byBkZSBnYXRpbGhvcyBkZSBhcnF1aXZvICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTUyCisjLCBjLWZvcm1hdAorbXNnaWQgInN5bnRheCBlcnJvciBpbiBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImVycm8gZGUgc2ludGF4ZSBubyBhcnF1aXZvIGRlIGdhdGlsaG9zIGRlIGFycXVpdm8gJyUuMjU1cyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImZpbGUgdHJpZ2dlcnMgcmVjb3JkIG1lbnRpb25zIGlsbGVnYWwgcGFja2FnZSBuYW1lIGAlLjI1MHMnIChmb3IgaW50ZXJlc3QgaW4gIgorImZpbGUgYCUuMjUwcycpOiAlLjI1MHMiCittc2dzdHIgIiIKKyJnYXRpbGhvcyBkZSBhcnF1aXZvIHJlZ2lzdHJhbSBtZW7Dp8O1ZXMgYSBub21lcyBkZSBwYWNvdGVzIGlsZWdhaXMgIgorIiclLjI1MHMnIChwYXJhIGludGVyZXNzZSBubyBhcnF1aXZvICclLjI1MHMnKTogJS4yNTBzIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NjY1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ0cmlnZ2VycyBjaSBmaWxlIGAlLjI1MHMnIGNvbnRhaW5zIGlsbGVnYWwgdHJpZ2dlciBzeW50YXggaW4gdHJpZ2dlciBuYW1lIGAiCisiJS4yNTBzJzogJS4yNTBzIgorbXNnc3RyICIiCisiYXJxdWl2byBkZSBnYXRpbGhvcyBjaSAnJS4yNTBzJyBjb250w6ltIHNpbnRheGUgZGUgZ2F0aWxobyBpbGVnYWwgbm8gbm9tZSBkbyAiCisiZ2F0aWxobyAnJS4yNTBzJzogJS4yNTBzIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Njg0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIHRyaWdnZXJzIGNpIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImltcG9zc8OtdmVsIGFicmlyIGFycXVpdm8gZGUgZ2F0aWxob3MgY2kgJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo2OTkKK21zZ2lkICJ0cmlnZ2VycyBjaSBmaWxlIGNvbnRhaW5zIHVua25vd24gZGlyZWN0aXZlIHN5bnRheCIKK21zZ3N0ciAiYXJxdWl2byBkZSBnYXRpbGhvcyBjaSBjb250w6ltIGRpcmV0aXZhIGRlIHNpbnRheGUgZGVzY29uaGVjaWRhIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NzEyCisjLCBjLWZvcm1hdAorbXNnaWQgInRyaWdnZXJzIGNpIGZpbGUgY29udGFpbnMgdW5rbm93biBkaXJlY3RpdmUgYCUuMjUwcyciCittc2dzdHIgImFycXVpdm8gZGUgZ2F0aWxob3MgY2kgY29udMOpbSBkaXJldGl2YSBkZXNjb25oZWNpZGEgJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo3NzYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSB0cmlnZ2VycyBzdGF0ZSBkaXJlY3RvcnkgYCUuMjUwcyciCittc2dzdHIgImltcG9zc8OtdmVsIGNyaWFyIGRpcmV0w7NyaW8gZGUgZXN0YWRvIGRvcyBnYXRpbGhvcyAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjc3OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IG93bmVyc2hpcCBvZiB0cmlnZ2VycyBzdGF0ZSBkaXJlY3RvcnkgYCUuMjUwcyciCittc2dzdHIgIiIKKyJpbXBvc3PDrXZlbCBkZWZpbmlyIG8gcHJvcHJpZXTDoXJpbyBkbyBkaXJldMOzcmlvIGRlIGVzdGFkbyBkb3MgZ2F0aWxob3MgIgorIiclLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbmFtZS5jOjM0Cittc2dpZCAiZW1wdHkgdHJpZ2dlciBuYW1lcyBhcmUgbm90IHBlcm1pdHRlZCIKK21zZ3N0ciAibm9tZXMgZGUgZ2F0aWxobyB2YXppb3MgbsOjbyBzw6NvIHBlcm1pdGlkb3MiCisKKyM6IGxpYi9kcGtnL3RyaWduYW1lLmM6MzgKK21zZ2lkICJ0cmlnZ2VyIG5hbWUgY29udGFpbnMgaW52YWxpZCBjaGFyYWN0ZXIiCittc2dzdHIgIm5vbWUgZGUgZ2F0aWxobyBjb250w6ltIGNhcmFjdGVyZXMgaW52w6FsaWRvcyIKKworIzogbGliL2Rwa2cvdXRpbHMuYzo1NgorIywgYy1mb3JtYXQKK21zZ2lkICJyZWFkIGVycm9yIGluIGAlLjI1MHMnIgorbXNnc3RyICJlcnJvIGRlIGxlaXR1cmEgZW0gJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3V0aWxzLmM6NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmdldHMgZ2F2ZSBhbiBlbXB0eSBzdHJpbmcgZnJvbSBgJS4yNTBzJyIKK21zZ3N0ciAiZmdldHMgZGV1IHVtYSBzdHJpbmcgdmF6aWEgYSBwYXJ0aXIgZGUgJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3V0aWxzLmM6NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAidG9vLWxvbmcgbGluZSBvciBtaXNzaW5nIG5ld2xpbmUgaW4gYCUuMjUwcyciCittc2dzdHIgImxpbmhhIG11aXRvIGxvbmdhIG91IG5vdmEgbGluaGEgZmFsdGFuZG8gZW0gJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3V0aWxzLmM6NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgcmVhZGluZyBgJS4yNTBzJyIKK21zZ3N0ciAiZmltIGRlIGFycXVpdm8gaW5lc3BlcmFkbyBsZW5kbyAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdmFyYnVmLmM6ODIgbGliL2Rwa2cvdmFyYnVmLmM6ODgKK21zZ2lkICJlcnJvciBmb3JtYXR0aW5nIHN0cmluZyBpbnRvIHZhcmJ1ZiB2YXJpYWJsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxNzkgc3JjL2FyY2hpdmVzLmM6MjAwIHNyYy9hcmNoaXZlcy5jOjcyNAorbXNnaWQgImVycm9yIHJlYWRpbmcgZnJvbSBkcGtnLWRlYiBwaXBlIgorbXNnc3RyICJlcnJvIGxlbmRvIGRvIFwicGlwZVwiIGRwa2ctZGViIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxOTUKKyMsIGMtZm9ybWF0Cittc2dpZCAic2tpcHBlZCB1bnBhY2tpbmcgZmlsZSAnJS4yNTVzJyAocmVwbGFjZWQgb3IgZXhjbHVkZWQ/KSIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoyNDYgc3JjL2FyY2hpdmVzLmM6MjUwCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHNldHRpbmcgdGltZXN0YW1wcyBvZiBgJS4yNTVzJyIKK21zZ3N0ciAiZXJybyBlc3RhYmVsZWNlbmRvIHJlZ2lzdHJvcyBkZSBkYXRhIGRlICclLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoyNjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igc2V0dGluZyBvd25lcnNoaXAgb2Ygc3ltbGluayBgJS4yNTVzJyIKK21zZ3N0ciAiZXJybyBlc3RhYmVsZWNlbmRvIHBvc3NlIGRhIGxpZ2HDp8OjbyBzaW1iw7NsaWNhICclLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoyNjUgc3JjL2FyY2hpdmVzLmM6NzM0IHNyYy9zdGF0Y21kLmM6MTYzCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHNldHRpbmcgb3duZXJzaGlwIG9mIGAlLjI1NXMnIgorbXNnc3RyICJlcnJvIGVzdGFiZWxlY2VuZG8gcG9zc2UgZGUgJyUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjI2NyBzcmMvYXJjaGl2ZXMuYzo3MzYgc3JjL3N0YXRjbWQuYzoxNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igc2V0dGluZyBwZXJtaXNzaW9ucyBvZiBgJS4yNTVzJyIKK21zZ3N0ciAiZXJybyBlc3RhYmVsZWNlbmRvIHBlcm1pc3PDtWVzIGRlICclLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzozOTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHN0YXQgKGRlcmVmZXJlbmNlKSBleGlzdGluZyBzeW1saW5rIGAlLjI1MHMnIgorbXNnc3RyICIiCisiZmFsaG91IGFvIGV4ZWN1dGFyIFwic3RhdFwiIChcImRlcmVmZXJlbmNlXCIpIHBhcmEgbGlnYcOnw6NvIHNpbWLDs2xpY2EgIgorImV4aXN0ZW50ZSAnJS4yNTBzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6NDE3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmYWlsZWQgdG8gc3RhdCAoZGVyZWZlcmVuY2UpIHByb3Bvc2VkIG5ldyBzeW1saW5rIHRhcmdldCBgJS4yNTBzJyBmb3IgIgorInN5bWxpbmsgYCUuMjUwcyciCittc2dzdHIgIiIKKyJmYWxob3UgYW8gZXhlY3V0YXIgXCJzdGF0XCIgKFwiZGVyZWZlcmVuY2VcIikgbm8gbm92byBhbHZvIGRlIGxpZ2HDp8OjbyAiCisic2ltYsOzbGljYSBwcm9wb3N0byAnJS4yNTBzJyBwYXJhIGxpZ2HDp8OjbyBzaW1iw7NsaWNhICclLjI1MHMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo0NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInRyeWluZyB0byBvdmVyd3JpdGUgYCUuMjUwcycsIHdoaWNoIGlzIHRoZSBkaXZlcnRlZCB2ZXJzaW9uIG9mIGAiCisiJS4yNTBzJyAocGFja2FnZTogJS4xMDBzKSIKK21zZ3N0ciAiIgorInRlbnRhbmRvIHNvYnJlc2NyZXZlciAnJS4yNTBzJywgcXVlIMOpIGEgdmVyc8OjbyBkZXN2aWFkYSBkZSAnJS4yNTBzJyAocGFjb3RlOiAiCisiJS4xMDBzKSIKKworIzogc3JjL2FyY2hpdmVzLmM6NDgxCisjLCBjLWZvcm1hdAorbXNnaWQgInRyeWluZyB0byBvdmVyd3JpdGUgYCUuMjUwcycsIHdoaWNoIGlzIHRoZSBkaXZlcnRlZCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICJ0ZW50YW5kbyBzb2JyZXNjcmV2ZXIgJyUuMjUwcycsIHF1ZSDDqSBhIHZlcnPDo28gZGVzdmlhZGEgZGUgJyUuMjUwcyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjUxMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBgJS4yNTVzJyAod2hpY2ggSSB3YXMgYWJvdXQgdG8gaW5zdGFsbCkiCittc2dzdHIgIiIKKyJpbXBvc3PDrXZlbCBleGVjdXRhciBcInN0YXRcIiBkZSAnJS4yNTVzJyAocXVlIGV1IGVzdGF2YSBwcmVzdGVzIGEgaW5zdGFsYXIpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo1MTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVuYWJsZSB0byBjbGVhbiB1cCBtZXNzIHN1cnJvdW5kaW5nIGAlLjI1NXMnIGJlZm9yZSBpbnN0YWxsaW5nIGFub3RoZXIgIgorInZlcnNpb24iCittc2dzdHIgIiIKKyJpbXBvc3PDrXZlbCBsaW1wYXIgYSBzdWplaXJhIGVtIHRvcm5vIGRlICclLjI1NXMnIGFudGVzIGRlIGluc3RhbGFyIG91dHJhICIKKyJ2ZXJzw6NvIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo1MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgcmVzdG9yZWQgYCUuMjU1cycgYmVmb3JlIGluc3RhbGxpbmcgYW5vdGhlciB2ZXJzaW9uIgorbXNnc3RyICIiCisiaW1wb3Nzw612ZWwgZXhlY3V0YXIgXCJzdGF0XCInJS4yNTVzJyByZXN0YXVyYWRvIGFudGVzIGRlIGluc3RhbGFyIG91dHJhICIKKyJ2ZXJzw6NvIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo1NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiYXJjaGl2ZSBjb250YWluZWQgb2JqZWN0IGAlLjI1NXMnIG9mIHVua25vd24gdHlwZSAweCV4IgorbXNnc3RyICJhcnF1aXZvIGNvbnRpbmhhIG9iamV0byAnJS4yNTVzJyBkZSB0aXBvIGRlc2NvbmhlY2lkbyAweCV4IgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2MjYgc3JjL2RpdmVydGNtZC5jOjE1MCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NjgyCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIyMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI4NAorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE0NDEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE2ODAKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTY3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjQ0CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUyNworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiY2Fubm90IHN0YXQgb2xkIG5hbWUgYCVzJzogJXMiCittc2dpZCAiY2Fubm90IHN0YXQgZmlsZSAnJXMnIgorbXNnc3RyICJuw6NvIGZvaSBwb3Nzw612ZWwgZXhlY3V0YXIgXCJzdGF0XCIgZW0gbm9tZSBhbnRpZ28gJyVzJzogJXMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjY0MQorIywgYy1mb3JtYXQKK21zZ2lkICJSZXBsYWNpbmcgZmlsZXMgaW4gb2xkIHBhY2thZ2UgJXMgLi4uXG4iCittc2dzdHIgIlN1YnN0aXR1aW5kbyBhcnF1aXZvcyBubyBwYWNvdGUgYW50aWdvICVzIC4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVwbGFjZWQgYnkgZmlsZXMgaW4gaW5zdGFsbGVkIHBhY2thZ2UgJXMgLi4uXG4iCittc2dzdHIgIlN1YnN0aXR1w61kb3MgcG9yIGFycXVpdm9zIG5vIHBhY290ZSBpbnN0YWxhZG8gJXMgLi4uXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjY1NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorInRyeWluZyB0byBvdmVyd3JpdGUgZGlyZWN0b3J5ICclLjI1MHMnIGluIHBhY2thZ2UgJS4yNTBzICUuMjUwcyB3aXRoICIKKyJub25kaXJlY3RvcnkiCittc2dzdHIgIiIKKyJ0ZW50YW5kbyBzb2JyZXNjcmV2ZXIgZGlyZXTDs3JpbyAnJS4yNTBzJyBubyBwYWNvdGUgJS4yNTBzIGNvbSBuw6NvLWRpcmV0w7NyaW8iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjY2MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidHJ5aW5nIHRvIG92ZXJ3cml0ZSAnJS4yNTBzJywgd2hpY2ggaXMgYWxzbyBpbiBwYWNrYWdlICUuMjUwcyAlLjI1MHMiCittc2dzdHIgInRlbnRhbmRvIHNvYnJlc2NyZXZlciAnJS4yNTBzJywgcXVlIHRhbWLDqW0gZXN0w6Egbm8gcGFjb3RlICUuMjUwcyIKKworIzogc3JjL2FyY2hpdmVzLmM6NzExCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGAlLjI1NXMnICh3aGlsZSBwcm9jZXNzaW5nIGAlLjI1NXMnKSIKK21zZ3N0ciAiZmFsaG91IGFvIGxlciAnJS4yNTVzJyAoZW0gJyUuMjU1cycpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3MTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFja2VuZCBkcGtnLWRlYiBkdXJpbmcgYCUuMjU1cyciCittc2dzdHIgIm1lY2FuaXNtbyBkcGtnLWRlYiBkdXJhbnRlICclLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NDQgc3JjL2FyY2hpdmVzLmM6OTA4IHNyYy9hcmNoaXZlcy5jOjk0OQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nL3dyaXRpbmcgYCUuMjU1cyciCittc2dzdHIgImVycm8gZmVjaGFuZG8vZXNjcmV2ZW5kbyAnJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6NzQ4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIHBpcGUgYCUuMjU1cyciCittc2dzdHIgImVycm8gY3JpYW5kbyBwaXBlICclLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NTMgc3JjL2FyY2hpdmVzLmM6NzU4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIGRldmljZSBgJS4yNTVzJyIKK21zZ3N0ciAiZXJybyBjcmlhbmRvIGRpc3Bvc2l0aXZvICclLjI1NXMnIgorCisjIE5PVEE6ICJoYXJkIGxpbmsiID0gImxpbmsgZml4byIgc2VndW5kbyBhIHRyYWR1w6fDo28gZG8gcHLDs3ByaW8gYGxuJyAtIENhcmxvcworIzogc3JjL2FyY2hpdmVzLmM6NzcxCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIGhhcmQgbGluayBgJS4yNTVzJyIKK21zZ3N0ciAiZXJybyBjcmlhbmRvIGxpZ2HDp8OjbyBmaXhhIChcImhhcmQgbGlua1wiKSAnJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6Nzc3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo1MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgc3ltYm9saWMgbGluayBgJS4yNTVzJyIKK21zZ3N0ciAiZXJybyBjcmlhbmRvIGxpZ2HDp8OjbyBzaW1iw7NsaWNhICclLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgZGlyZWN0b3J5IGAlLjI1NXMnIgorbXNnc3RyICJlcnJvIGNyaWFuZG8gZGlyZXTDs3JpbyAnJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6ODIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBtb3ZlIGFzaWRlIGAlLjI1NXMnIHRvIGluc3RhbGwgbmV3IHZlcnNpb24iCittc2dzdHIgImltcG9zc8OtdmVsIG1vdmVyIGRvIGNhbWluaG8gJyUuMjU1cycgcGFyYSBpbnN0YWxhciBub3ZhIHZlcnPDo28iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjgzMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MzIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIGxpbmsgYCUuMjU1cyciCittc2dzdHIgImltcG9zc8OtdmVsIGxlciBsaWdhw6fDo28gJyUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjgzNCBzcmMvY29uZmlndXJlLmM6NDIzCisjLCBjLWZvcm1hdAorbXNnaWQgInN5bWJvbGljIGxpbmsgJyUuMjUwcycgc2l6ZSBoYXMgY2hhbmdlZCBmcm9tICVqZCB0byAlemQiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6ODM5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBtYWtlIGJhY2t1cCBzeW1saW5rIGZvciBgJS4yNTVzJyIKK21zZ3N0ciAiaW1wb3Nzw612ZWwgY3JpYXIgbGlnYcOnw6NvIHNpbWLDs2xpY2EgZGUgYmFja3VwIHBhcmEgJyUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjg0MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hvd24gYmFja3VwIHN5bWxpbmsgZm9yIGAlLjI1NXMnIgorbXNnc3RyICIiCisiaW1wb3Nzw612ZWwgZXhlY3V0YXIgXCJjaG93blwiIGRhIGxpZ2HDp8OjbyBzaW1iw7NsaWNhIGRlIGJhY2t1cCBwYXJhICclLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4NDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG1ha2UgYmFja3VwIGxpbmsgb2YgYCUuMjU1cycgYmVmb3JlIGluc3RhbGxpbmcgbmV3IHZlcnNpb24iCittc2dzdHIgIiIKKyJpbXBvc3PDrXZlbCBjcmlhciBsaWdhw6fDo28gZGUgYmFja3VwIGRlICclLjI1NXMnIGFudGVzIGRlIGluc3RhbGFyIG5vdmEgdmVyc8OjbyIKKworIzogc3JjL2FyY2hpdmVzLmM6ODYzIHNyYy9hcmNoaXZlcy5jOjk1NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgdmVyc2lvbiBvZiBgJS4yNTVzJyIKK21zZ3N0ciAiaW1wb3Nzw612ZWwgaW5zdGFsYXIgbm92YSB2ZXJzw6NvIGRlICclLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo5MDIgc3JjL2FyY2hpdmVzLmM6OTQ1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiAnJS4yNTVzJyIKK21zZ3N0ciAiaW1wb3Nzw612ZWwgY3JpYXIgJyUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjk0NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgZmlsZSAnJS4yNTVzJyIKK21zZ3N0ciAiaW1wb3Nzw612ZWwgcmV0aXJhciAnJS4yNTVzJyBkbyBidWZmZXIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMDAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpZ25vcmluZyBkZXBlbmRlbmN5IHByb2JsZW0gd2l0aCAlczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6IGF2aXNvIC0gaWdub3JhbmRvIHByb2JsZW1hIGRlIGRlcGVuZMOqbmNpYSBjb20gJXM6XG4iCisiJXMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJjb25zaWRlcmluZyBkZWNvbmZpZ3VyYXRpb24gb2YgZXNzZW50aWFsXG4iCisiIHBhY2thZ2UgJXMsIHRvIGVuYWJsZSAlcy4iCittc2dzdHIgIiIKKyJkcGtnOiBhdmlzbyAtIGNvbnNpZGVyYW5kbyBkZXNjb25maWd1cmHDp8OjbyBkbyBwYWNvdGUgZXNzZW5jaWFsXG4iCisiICVzLCBwYXJhIGhhYmlsaXRhciAlcy5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAwOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogbm8sICVzIGlzIGVzc2VudGlhbCwgd2lsbCBub3QgZGVjb25maWd1cmVcbiIKKyIgaXQgaW4gb3JkZXIgdG8gZW5hYmxlICVzLlxuIgorbXNnc3RyICIiCisiZHBrZzogbsOjbywgJXMgw6kgZXNzZW5jaWFsLCBuw6NvIHZvdSBkZXNjb25maWd1csOhLWxvXG4iCisiIHBhcmEgaGFiaWxpdGFyICVzLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDIyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBubywgY2Fubm90IHByb2NlZWQgd2l0aCAlcyAoLS1hdXRvLWRlY29uZmlndXJlIHdpbGwgaGVscCk6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiBuw6NvLCBuw6NvIHBvc3NvIGNvbnRpbnVhciBjb20gJXMgKC0tYXV0by1kZWNvbmZpZ3VyZSBhanVkYXLDoSk6XG4iCisiJXMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVtb3ZhbCBvZiAlLjI1MHMiCittc2dzdHIgInJlbW/Dp8OjbyBkZSAlLjI1MHMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW5zdGFsbGF0aW9uIG9mICUuMjUwcyIKK21zZ3N0ciAiaW5zdGFsYcOnw6NvIGRlICUuMjUwcyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA1OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogY29uc2lkZXJpbmcgZGVjb25maWd1cmF0aW9uIG9mICVzLCB3aGljaCB3b3VsZCBiZSBicm9rZW4gYnkgJXMgLi4uXG4iCittc2dzdHIgIiIKKyJkcGtnOiBjb25zaWRlcmFuZG8gZGVzY29uZmlndXJhw6fDo28gZGUgJXMsIHF1ZSBzZXJpYSBxdWVicmFkbyBwb3IgJXMgLi4uXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogeWVzLCB3aWxsIGRlY29uZmlndXJlICVzIChicm9rZW4gYnkgJXMpLlxuIgorbXNnc3RyICJkcGtnOiBzaW0sIHZvdSBkZXNjb25maWd1cmFyICVzIChxdWVicmFkbyBwb3IgJXMpLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDY5IHNyYy9hcmNoaXZlcy5jOjExODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IHJlZ2FyZGluZyAlcyBjb250YWluaW5nICVzOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogc29icmUgJXMgY29udGVuZG8gJXM6XG4iCisiJXMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNzcKKyMsIGZ1enp5Cittc2dpZCAiaWdub3JpbmcgYnJlYWthZ2UsIG1heSBwcm9jZWVkIGFueXdheSEiCittc2dzdHIgImRwa2c6IGF2aXNvIC0gaWdub3JhbmRvIHF1ZWJyYSwgcG9zc28gY29udGludWFyIGRlIHF1YWxxdWVyIG1vZG8hXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImluc3RhbGxpbmcgJS4yNTBzIHdvdWxkIGJyZWFrICUuMjUwcywgYW5kXG4iCisiIGRlY29uZmlndXJhdGlvbiBpcyBub3QgcGVybWl0dGVkICgtLWF1dG8tZGVjb25maWd1cmUgbWlnaHQgaGVscCkiCittc2dzdHIgIiIKKyJpbnN0YWxhbmRvICUuMjUwcyBxdWVicmFyw6EgJS4yNTBzLCBlXG4iCisiIGEgZGVzY29uZmlndXJhw6fDo28gbsOjbyDDqSBwZXJtaXRpZGEgKC0tYXV0by1kZWNvbmZpZ3VyZSBwb2RlcsOhIGFqdWRhcikiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW5zdGFsbGluZyAlLjI1MHMgd291bGQgYnJlYWsgZXhpc3Rpbmcgc29mdHdhcmUiCittc2dzdHIgImluc3RhbGFyICUuMjUwcyBxdWVicmFyw6Egc29mdHdhcmUgZXhpc3RlbnRlIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTE2CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IGNvbnNpZGVyaW5nIHJlbW92aW5nICVzIGluIGZhdm91ciBvZiAlcyAuLi5cbiIKK21zZ3N0ciAiZHBrZzogY29uc2lkZXJhbmRvIHJlbW/Dp8OjbyBkZSAlcyBlbSBmYXZvciBkZSAlcyAuLi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTEyMgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgcHJvcGVybHkgaW5zdGFsbGVkIC0gaWdub3JpbmcgYW55IGRlcGVuZGVuY2llcyBvbiBpdC5cbiIKK21zZ3N0ciAiJXMgbsOjbyBlc3TDoSBpbnN0YWxhZG8gY29ycmV0YW1lbnRlIC0gaWdub3JhbmRvIGRlcGVuZMOqbmNpYXMgYSBlbGUuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogbWF5IGhhdmUgdHJvdWJsZSByZW1vdmluZyAlcywgYXMgaXQgcHJvdmlkZXMgJXMgLi4uXG4iCittc2dzdHIgImRwa2c6IHBvZGUgaGF2ZXIgcHJvYmxlbWFzIHJlbW92ZW5kbyAlcywgasOhIHF1ZSBlbGUgb2ZlcmVjZSAlcyAuLi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE2NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IHBhY2thZ2UgJXMgcmVxdWlyZXMgcmVpbnN0YWxsYXRpb24sIGJ1dCB3aWxsIHJlbW92ZSBhbnl3YXkgYXMgeW91ICIKKyJyZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiIKKyJkcGtnOiBwYWNvdGUgJXMgcHJlY2lzYSBkZSByZWluc3RhbGHDp8OjbywgbWFzIHZvdSByZW1vdsOqLWxvIGFzc2ltIG1lc21vIGNvbW8gIgorInZvY8OqIHBlZGl1LlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTY5CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IHBhY2thZ2UgJXMgcmVxdWlyZXMgcmVpbnN0YWxsYXRpb24sIHdpbGwgbm90IHJlbW92ZS5cbiIKK21zZ3N0ciAiZHBrZzogcGFjb3RlICVzIHByZWNpc2EgZGUgcmVpbnN0YWxhw6fDo28sIG7Do28gdm91IHJlbW92w6otbG8uXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogeWVzLCB3aWxsIHJlbW92ZSAlcyBpbiBmYXZvdXIgb2YgJXMuXG4iCittc2dzdHIgImRwa2c6IHNpbSwgdm91IHJlbW92ZXIgJXMgZW0gZmF2b3IgZGUgJXMuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmxpY3RpbmcgcGFja2FnZXMgLSBub3QgaW5zdGFsbGluZyAlLjI1MHMiCittc2dzdHIgInBhY290ZXMgY29uZmxpdGFudGVzIC0gbsOjbyBpbnN0YWxhbmRvICUuMjUwcyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE5MQorIywgZnV6enkKK21zZ2lkICJpZ25vcmluZyBjb25mbGljdCwgbWF5IHByb2NlZWQgYW55d2F5ISIKK21zZ3N0ciAiZHBrZzogYXZpc28gLSBpZ25vcmFuZG8gY29uZmxpdG8sIHBvc3NvIGNvbnRpbnVhciBkZSBxdWFscXVlciBtb2RvIVxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjM1CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgLS1yZWN1cnNpdmUgbmVlZHMgYXQgbGVhc3Qgb25lIHBhdGggYXJndW1lbnQiCittc2dzdHIgIi0tJXMgLS1yZWN1cnNpdmUgcHJlY2lzYSBkZSBhbyBtZW5vcyB1bSBjYW1pbmhvIGNvbW8gYXJndW1lbnRvIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjQ1CisjLCBmdXp6eQorbXNnaWQgImZpbmQgZm9yIGRwa2cgLS1yZWN1cnNpdmUiCittc2dzdHIgImZhbGhvdSBhbyBleGVjdXRhciBmaW5kIHBhcmEgLS1yZWN1cnNpdmUiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNjYKK21zZ2lkICJmYWlsZWQgdG8gZmRvcGVuIGZpbmQncyBwaXBlIgorbXNnc3RyICJmYWxob3UgYW8gZXhlY3V0YXIgXCJmZG9wZW5cIiBubyBcInBpcGVcIiBkbyBmaW5kIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjcyCittc2dpZCAiZXJyb3IgcmVhZGluZyBmaW5kJ3MgcGlwZSIKK21zZ3N0ciAiZXJybyBsZW5kbyBvIFwicGlwZVwiIGRvIGZpbmQiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNzMKK21zZ2lkICJlcnJvciBjbG9zaW5nIGZpbmQncyBwaXBlIgorbXNnc3RyICJlcnJvIGZlY2hhbmRvIG8gXCJwaXBlXCIgZG8gZmluZCIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3NgorIywgYy1mb3JtYXQKK21zZ2lkICJmaW5kIGZvciAtLXJlY3Vyc2l2ZSByZXR1cm5lZCB1bmhhbmRsZWQgZXJyb3IgJWkiCittc2dzdHIgInByb2N1cmEgcG9yIC0tcmVjdXJzaXZlIHJldG9ybm91IGVycm8gbsOjbyBtYW5pcHVsYWRvICVpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjc5Cittc2dpZCAic2VhcmNoZWQsIGJ1dCBmb3VuZCBubyBwYWNrYWdlcyAoZmlsZXMgbWF0Y2hpbmcgKi5kZWIpIgorbXNnc3RyICJwcm9jdXJlaSwgbWFzIG7Do28gYWNoZWkgcGFjb3RlcyAoYXJxdWl2b3MgY2FzYW5kbyBjb20gKi5kZWIpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjkwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYXQgbGVhc3Qgb25lIHBhY2thZ2UgYXJjaGl2ZSBmaWxlIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIHByZWNpc2EgZGUgYW8gbWVub3MgdW0gYXJxdWl2byBkZSBwYWNvdGUgY29tbyBhcmd1bWVudG8iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzMjUgc3JjL2RpdmVydGNtZC5jOjc4IHNyYy9kaXZlcnRjbWQuYzoxMTgKKyM6IHNyYy9lbnF1aXJ5LmM6MTY2IHNyYy9lbnF1aXJ5LmM6Mjc5IHNyYy9lbnF1aXJ5LmM6NDQ5IHNyYy9lbnF1aXJ5LmM6NDUxCisjOiBzcmMvZW5xdWlyeS5jOjQ2NCBzcmMvbWFpbi5jOjY2IHNyYy9tYWluLmM6MTYzIHNyYy9tYWluLmM6MzE0CisjOiBzcmMvbWFpbi5jOjQ5MyBzcmMvcGFja2FnZXMuYzoyNTQgc3JjL3F1ZXJ5Y21kLmM6MjUyIHNyYy9xdWVyeWNtZC5jOjM1NQorIzogc3JjL3F1ZXJ5Y21kLmM6Mzk2IHNyYy9xdWVyeWNtZC5jOjQwNCBzcmMvcXVlcnljbWQuYzo0NDggc3JjL3F1ZXJ5Y21kLmM6NTE3CisjOiBzcmMvcXVlcnljbWQuYzo2MDYgc3JjL3F1ZXJ5Y21kLmM6NjUwIHNyYy9zZWxlY3QuYzo3OSBzcmMvc3RhdGNtZC5jOjY4CisjOiBzcmMvc3RhdGNtZC5jOjk4IHNyYy90cmlnY21kLmM6NTggc3JjL3RyaWdjbWQuYzo5MCBkcGtnLWRlYi9idWlsZC5jOjQ0MQorIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIxNyBkcGtnLWRlYi9leHRyYWN0LmM6MjUwIGRwa2ctZGViL2luZm8uYzoyMDMKKyM6IGRwa2ctZGViL2luZm8uYzoyNjUgZHBrZy1kZWIvbWFpbi5jOjYwIGRwa2ctZGViL21haW4uYzoxMjYKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjI1NyBkcGtnLXNwbGl0L21haW4uYzo1NCBkcGtnLXNwbGl0L21haW4uYzo5OAorIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE0NCBkcGtnLXNwbGl0L3F1ZXVlLmM6MjgwCittc2dpZCAiPHN0YW5kYXJkIG91dHB1dD4iCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTMyNiBzcmMvcGFja2FnZXMuYzoyNTUgc3JjL3F1ZXJ5Y21kLmM6MjUzCisjOiBzcmMvcXVlcnljbWQuYzozNTMgc3JjL3F1ZXJ5Y21kLmM6NDU0IHNyYy9xdWVyeWNtZC5jOjUxOCBzcmMvc2VsZWN0LmM6ODAKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjE2OSBkcGtnLXNwbGl0L3F1ZXVlLmM6MjE4Cittc2dpZCAiPHN0YW5kYXJkIGVycm9yPiIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzY3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJTZWxlY3RpbmcgcHJldmlvdXNseSBkZXNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dpZCAiU2VsZWN0aW5nIHByZXZpb3VzbHkgdW5zZWxlY3RlZCBwYWNrYWdlICVzLlxuIgorbXNnc3RyICJTZWxlY2lvbmFuZG8gcGFjb3RlIHByZXZpYW1lbnRlIG7Do28gc2VsZWNpb25hZG8gJXMuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzNzEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIlNraXBwaW5nIGRlc2VsZWN0ZWQgcGFja2FnZSAlcy5cbiIKK21zZ2lkICJTa2lwcGluZyB1bnNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dzdHIgIklnbm9yYW5kbyBwYWNvdGUgbsOjbyBzZWxlY2lvbmFkbyAlcy5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTM4NworIywgYy1mb3JtYXQKK21zZ2lkICJWZXJzaW9uICUuMjUwcyBvZiAlLjI1MHMgYWxyZWFkeSBpbnN0YWxsZWQsIHNraXBwaW5nLlxuIgorbXNnc3RyICJWZXJzw6NvICUuMjUwcyBkZSAlLjI1MHMgasOhIGluc3RhbGFkYSwgaWdub3JhbmRvLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzk3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJkb3duZ3JhZGluZyAlLjI1MHMgZnJvbSAlLjI1MHMgdG8gJS4yNTBzLiIKK21zZ3N0ciAiJXMgLSBhdmlzbzogcmV2ZXJ0ZW5kbyAlLjI1MHMgZGUgJS4yNTBzIHBhcmEgJS4yNTBzLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxNDAyCisjLCBjLWZvcm1hdAorbXNnaWQgIldpbGwgbm90IGRvd25ncmFkZSAlLjI1MHMgZnJvbSB2ZXJzaW9uICUuMjUwcyB0byAlLjI1MHMsIHNraXBwaW5nLlxuIgorbXNnc3RyICJOw6NvIHZvdSByZXZlcnRlciAlLjI1MHMgZGEgdmVyc8OjbyAlLjI1MHMgcGFyYSAlLjI1MHMsIGlnbm9yYW5kby5cbiIKKworIzogc3JjL2NsZWFudXAuYzo4NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidW5hYmxlIHRvIHJlbW92ZSBuZXdseS1pbnN0YWxsZWQgdmVyc2lvbiBvZiBgJS4yNTBzJyB0byBhbGxvdyByZWluc3RhbGxhdGlvbiAiCisib2YgYmFja3VwIGNvcHkiCittc2dzdHIgIiIKKyJuw6NvIGNvbnNpZ28gcmVtb3ZlciB2ZXJzw6NvIHJlY8OpbS1pbnN0YWxhZGEgZGUgJyUuMjUwcycgcGFyYSBwZXJtaXRpciBhICIKKyJyZWluc3RhbGHDp8OjbyBkYSBjw7NwaWEgZGUgYmFja3VwIgorCisjOiBzcmMvY2xlYW51cC5jOjkzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZXN0b3JlIGJhY2t1cCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICJpbXBvc3PDrXZlbCByZXN0YXVyYXIgdmVyc8OjbyBkZSBiYWNrdXAgZGUgJyUuMjUwcyciCisKKyM6IHNyYy9jbGVhbnVwLmM6OTcKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byByZXN0b3JlIGJhY2t1cCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgYmFja3VwIGNvcHkgb2YgJyUuMjUwcyciCittc2dzdHIgImltcG9zc8OtdmVsIHJlc3RhdXJhciB2ZXJzw6NvIGRlIGJhY2t1cCBkZSAnJS4yNTBzJyIKKworIzogc3JjL2NsZWFudXAuYzoxMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBuZXdseS1pbnN0YWxsZWQgdmVyc2lvbiBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiaW1wb3Nzw612ZWwgcmVtb3ZlciB2ZXJzw6NvIHJlY8OpbS1pbnN0YWxhZGEgZGUgJyUuMjUwcyciCisKKyM6IHNyYy9jbGVhbnVwLmM6MTA4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgbmV3bHktZXh0cmFjdGVkIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dzdHIgImltcG9zc8OtdmVsIHJlbW92ZXIgdmVyc8OjbyByZWPDqW0tZXh0cmHDrWRhIGRlICclLjI1MHMnIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTA0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gc3RhdCBuZXcgZGlzdCBjb25mZmlsZSBgJS4yNTBzJyIKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBuZXcgZGlzdHJpYnV0ZWQgY29uZmZpbGUgJyUuMjUwcyciCittc2dzdHIgIiIKKyJpbXBvc3PDrXZlbCBleGVjdXRhciBcInN0YXRcIiBubyBub3ZvIGFycXVpdm8gZGUgY29uZmlndXJhw6fDo28gKFwiY29uZmZpbGVcIikgIgorIlwiZGlzdFwiICclLjI1MHMnIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGN1cnJlbnQgaW5zdGFsbGVkIGNvbmZmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisiaW1wb3Nzw612ZWwgZXhlY3V0YXIgXCJzdGF0XCIgbm8gYXJxdWl2byBkZSBjb25maWd1cmHDp8OjbyAoXCJjb25mZmlsZVwiKSAiCisiYXR1YWxtZW50ZSBpbnN0YWxhZG8gJyUuMjUwcyciCisKKyM6IHNyYy9jb25maWd1cmUuYzoxMjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIkNvbmZpZ3VyYXRpb24gZmlsZSBgJXMnLCBkb2VzIG5vdCBleGlzdCBvbiBzeXN0ZW0uXG4iCisiSW5zdGFsbGluZyBuZXcgY29uZmlnIGZpbGUgYXMgeW91IHJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiIgorIlxuIgorIk8gYXJxdWl2byBkZSBjb25maWd1cmHDp8OjbyAnJXMnIG7Do28gZXhpc3RlIG5vIHNpc3RlbWEuXG4iCisiSW5zdGFsYW5kbyBub3ZvIGFycXVpdm8gZGUgY29uZmlndXJhw6fDo28gY29tbyB2b2PDqiBwZWRpdS5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE2OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW1vdmUgb2xkIGJhY2t1cCAnJS4yNTBzJzogJXMiCittc2dzdHIgImRwa2c6ICVzOiBhdmlzbyAtIGZhbGhvdSBhbyByZW1vdmVyIGJhY2t1cCBhbnRpZ28gJyUuMjUwcyc6ICVzXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzoxNzYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVuYW1lICclLjI1MHMnIHRvICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiZHBrZzogJXM6IGF2aXNvIC0gZmFsaG91IGFvIHJlbm9tZWFyICclLjI1MHMnIHBhcmEgJyUuMjUwcyc6ICVzXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzoxODIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiJXM6IGZhbGhvdSBhbyBleGVjdXRhciAnJXMgJXMnIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTg4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIHJlbW92ZSBvbGQgZGlzdHJpYnV0ZWQgdmVyc2lvbiAnJS4yNTBzJzogJXMiCittc2dzdHIgIiIKKyJkcGtnOiAlczogYXZpc28gLSBmYWxob3UgYW8gcmVtb3ZlciBhbnRpZ2EgdmVyc8OjbyBcImRpc3RyaWJcIiAnJS4yNTBzJzogJXNcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE5MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW1vdmUgJyUuMjUwcycgKGJlZm9yZSBvdmVyd3JpdGUpOiAlcyIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiBhdmlzbyAtIGZhbGhvdSBhbyByZW1vdmVyICclLjI1MHMnIChhbnRlcyBkZSBzb2JyZXNjcmV2ZXIpOiAlc1xuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTk2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIGxpbmsgJyUuMjUwcycgdG8gJyUuMjUwcyc6ICVzIgorbXNnc3RyICJkcGtnOiAlczogYXZpc28gLSBmYWxob3UgYW8gbGlnYXIgJyUuMjUwcycgYSAnJS4yNTBzJzogJXNcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjIwMAorIywgYy1mb3JtYXQKK21zZ2lkICJJbnN0YWxsaW5nIG5ldyB2ZXJzaW9uIG9mIGNvbmZpZyBmaWxlICVzIC4uLlxuIgorbXNnc3RyICJJbnN0YWxhbmRvIG5vdmEgdmVyc8OjbyBkbyBhcnF1aXZvIGRlIGNvbmZpZ3VyYcOnw6NvICVzIC4uLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjA2IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo1NDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgYCUuMjUwcycgYXMgYCUuMjUwcyciCittc2dzdHIgImltcG9zc8OtdmVsIGluc3RhbGFyICclLjI1MHMnIGNvbW8gJyUuMjUwcyciCisKKyM6IHNyYy9jb25maWd1cmUuYzoyNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gcGFja2FnZSBuYW1lZCBgJXMnIGlzIGluc3RhbGxlZCwgY2Fubm90IGNvbmZpZ3VyZSIKK21zZ3N0ciAibmVuaHVtIHBhY290ZSBjaGFtYWRvICclcycgZXN0w6EgaW5zdGFsYWRvLCBuw6NvIHBvc3NvIGNvbmZpZ3VyYXIiCisKKyM6IHNyYy9jb25maWd1cmUuYzoyNjAKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlLjI1MHMgaXMgYWxyZWFkeSBpbnN0YWxsZWQgYW5kIGNvbmZpZ3VyZWQiCittc2dzdHIgInBhY290ZSAlLjI1MHMgasOhIGVzdMOhIGluc3RhbGFkbyBlIGNvbmZpZ3VyYWRvIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjYzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJwYWNrYWdlICUuMjUwcyBpcyBub3QgcmVhZHkgZm9yIGNvbmZpZ3VyYXRpb25cbiIKKyIgY2Fubm90IGNvbmZpZ3VyZSAoY3VycmVudCBzdGF0dXMgYCUuMjUwcycpIgorbXNnc3RyICIiCisicGFjb3RlICUuMjUwcyBuw6NvIGVzdMOhIHByb250byBwYXJhIGNvbmZpZ3VyYcOnw6NvXG4iCisiIG7Do28gcG9zc28gY29uZmlndXJhciAoZXN0YWRvIGF0dWFsICclLjI1MHMnKSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI5NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogZGVwZW5kZW5jeSBwcm9ibGVtcyBwcmV2ZW50IGNvbmZpZ3VyYXRpb24gb2YgJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiBwcm9ibGVtYXMgZGUgZGVwZW5kw6puY2lhIGltcGVkZW0gYSBjb25maWd1cmHDp8OjbyBkZSAlczpcbiIKKyIlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI5NworbXNnaWQgImRlcGVuZGVuY3kgcHJvYmxlbXMgLSBsZWF2aW5nIHVuY29uZmlndXJlZCIKK21zZ3N0ciAicHJvYmxlbWFzIGRlIGRlcGVuZMOqbmNpYSAtIGRlaXhhbmRvIGRlc2NvbmZpZ3VyYWRvIgorCisjOiBzcmMvY29uZmlndXJlLmM6MzAxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiAlczogZGVwZW5kZW5jeSBwcm9ibGVtcywgYnV0IGNvbmZpZ3VyaW5nIGFueXdheSBhcyB5b3UgcmVxdWVzdGVkOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogJXM6IHByb2JsZW1hcyBkZSBkZXBlbmTDqm5jaWEsIG1hcyBjb25maWd1cmFuZG8gYXNzaW0gbWVzbW8gY29tbyAiCisicGVkaWRvOlxuIgorIiVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MzA5Cittc2dpZCAiIgorIlBhY2thZ2UgaXMgaW4gYSB2ZXJ5IGJhZCBpbmNvbnNpc3RlbnQgc3RhdGUgLSB5b3Ugc2hvdWxkXG4iCisiIHJlaW5zdGFsbCBpdCBiZWZvcmUgYXR0ZW1wdGluZyBjb25maWd1cmF0aW9uLiIKK21zZ3N0ciAiIgorIk8gcGFjb3RlIGVzdMOhIGVtIHVtIGVzdGFkbyBkZSBpbmNvbnNpc3TDqm5jaWEgbXVpdG8gcnVpbSAtIHZvY8OqIGRldmVyaWFcbiIKKyIgcmVpbnN0YWzDoS1sbyBhbnRlcyBkZSB0ZW50YXIgdW1hIGNvbmZpZ3VyYcOnw6NvLiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjMxMgorIywgYy1mb3JtYXQKK21zZ2lkICJTZXR0aW5nIHVwICVzICglcykgLi4uXG4iCittc2dzdHIgIkNvbmZpZ3VyYW5kbyAlcyAoJXMpIC4uLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6Mzk2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IHVuYWJsZSB0byBzdGF0IGNvbmZpZyBmaWxlICclcydcbiIKKyIgKD0gJyVzJyk6ICVzIgorbXNnc3RyICIiCisiZHBrZzogJXM6IGF2aXNvIC0gaW1wb3Nzw612ZWwgZXhlY3V0YXIgXCJzdGF0XCIgbm8gYXJxdWl2byBkZSBjb25maWd1cmHDp8OjbyAiCisiJyVzJ1xuIgorIiAoPSAnJXMnKTogJXNcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQwOQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBjb25maWcgZmlsZSAnJXMnIGlzIGEgY2lyY3VsYXIgbGlua1xuIgorIiAoPSAnJXMnKSIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiBhdmlzbyAtIGFycXVpdm8gZGUgY29uZmlndXJhw6fDo28gJyVzJyDDqSB1bSBsaW5rIGNpcmN1bGFyXG4iCisiICg9ICclcycpXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo0MTgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogdW5hYmxlIHRvIHJlYWRsaW5rIGNvbmZmaWxlICclcydcbiIKKyIgKD0gJyVzJyk6ICVzIgorbXNnc3RyICIiCisiZHBrZzogJXM6IGF2aXNvIC0gaW1wb3Nzw612ZWwgZXhlY3V0YXIgXCJyZWFkbGlua1wiIGVtIGFycXVpdm8gZGUgIgorImNvbmZpZ3VyYcOnw6NvIChcImNvbmZmaWxlXCIpICclcydcbiIKKyIgKD0gJyVzJyk6ICVzXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo0NDQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogY29uZmZpbGUgJyUuMjUwcycgcmVzb2x2ZXMgdG8gZGVnZW5lcmF0ZSBmaWxlbmFtZVxuIgorIiAoJyVzJyBpcyBhIHN5bWxpbmsgdG8gJyVzJykiCittc2dzdHIgIiIKKyJkcGtnOiAlczogYXZpc28gLSBhcnF1aXZvIGRlIGNvbmZpZ3VyYcOnw6NvIChcImNvbmZmaWxlXCIpICclLjI1MHMnIGxldmEgYSB1bSAiCisibm9tZSBkZSBhcnF1aXZvIGRlZ2VuZXJhZG9cbiIKKyIgKCclcycgw6kgdW1hIGxpZ2HDp8OjbyBzaW1iw7NsaWNhIHBhcmEgJyVzJylcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQ2MAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGNvbmZmaWxlICclLjI1MHMnIGlzIG5vdCBhIHBsYWluIGZpbGUgb3Igc3ltbGluayAoPSAnJXMnKSIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiBhdmlzbyAtIGFycXVpdm8gZGUgY29uZmlndXJhw6fDo28gKFwiY29uZmZpbGVcIikgJyUuMjUwcycgbsOjbyDDqSB1bSAiCisiYXJxdWl2byBzaW1wbGVzIG91IHVtYSBsaWdhw6fDo28gc2ltYsOzbGljYSAoPSAnJXMnKVxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDg2Cittc2dpZCAibWQ1aGFzaCIKK21zZ3N0ciAibWQ1aGFzaCIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQ5MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IHVuYWJsZSB0byBvcGVuIGNvbmZmaWxlICVzIGZvciBoYXNoOiAlcyIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiBhdmlzbyAtIGltcG9zc8OtdmVsIGFicmlyIGFycXVpdm8gZGUgY29uZmlndXJhw6fDo28gKFwiY29uZmZpbGVcIikgJXMgIgorInBhcmEgaGFzaDogJXNcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjUyMiBzcmMvY29uZmlndXJlLmM6NTI2Cittc2dpZCAiY29uZmZpbGUgZGlmZmVyZW5jZSB2aXN1YWxpemVyIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo1NDMKK21zZ2lkICJUeXBlIGBleGl0JyB3aGVuIHlvdSdyZSBkb25lLlxuIgorbXNnc3RyICJEaWdpdGUgJ2V4aXQnIHF1YW5kbyB0ZXJtaW5hci5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjU1MiBzcmMvY29uZmlndXJlLmM6NTU2Cittc2dpZCAiY29uZmZpbGUgc2hlbGwiCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYwMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiQ29uZmlndXJhdGlvbiBmaWxlIGAlcyciCittc2dzdHIgIiIKKyJcbiIKKyJBcnF1aXZvIGRlIGNvbmZpZ3VyYcOnw6NvICclcyciCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIChhY3R1YWxseSBgJXMnKSIKK21zZ3N0ciAiIChuYSB2ZXJkYWRlICclcycpIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjA4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgPT0+IEZpbGUgb24gc3lzdGVtIGNyZWF0ZWQgYnkgeW91IG9yIGJ5IGEgc2NyaXB0LlxuIgorIiA9PT4gRmlsZSBhbHNvIGluIHBhY2thZ2UgcHJvdmlkZWQgYnkgcGFja2FnZSBtYWludGFpbmVyLlxuIgorbXNnc3RyICIiCisiXG4iCisiID09PiBBcnF1aXZvIG5vIHNpc3RlbWEgY3JpYWRvIHBvciB2b2PDqiBvdSBwb3IgdW0gc2NyaXB0LlxuIgorIiA9PT4gQXJxdWl2byB0YW1iw6ltIG5vIHBhY290ZSwgZm9ybmVjaWRvIHBlbG8gbWFudGVuZWRvciBkZWxlLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjEzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgICAgIE5vdCBtb2RpZmllZCBzaW5jZSBpbnN0YWxsYXRpb24uXG4iCittc2dzdHIgIiIKKyJcbiIKKyIgICAgIE7Do28gbW9kaWZpY2FkbyBkZXNkZSBhIGluc3RhbGHDp8Ojby5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYxNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiID09PiBNb2RpZmllZCAoYnkgeW91IG9yIGJ5IGEgc2NyaXB0KSBzaW5jZSBpbnN0YWxsYXRpb24uXG4iCittc2dzdHIgIiIKKyJcbiIKKyIgPT0+IE1vZGlmaWNhZG8gKHBvciB2b2PDqiBvdSBwb3IgdW0gc2NyaXB0KSBkZXNkZSBhIGluc3RhbGHDp8Ojby5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYxNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiID09PiBEZWxldGVkIChieSB5b3Ugb3IgYnkgYSBzY3JpcHQpIHNpbmNlIGluc3RhbGxhdGlvbi5cbiIKK21zZ3N0ciAiIgorIlxuIgorIiA9PT4gRXhjbHXDrWRvIChwb3Igdm9jw6ogb3UgcG9yIHVtIHNjcmlwdCkgZGVzZGUgYSBpbnN0YWxhw6fDo28uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBQYWNrYWdlIGRpc3RyaWJ1dG9yIGhhcyBzaGlwcGVkIGFuIHVwZGF0ZWQgdmVyc2lvbi5cbiIKK21zZ3N0ciAiID09PiBPIGRpc3RyaWJ1aWRvciBkbyBwYWNvdGUgbGFuw6dvdSB1bWEgdmVyc8OjbyBhdHVhbGl6YWRhLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjIwCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgICAgVmVyc2lvbiBpbiBwYWNrYWdlIGlzIHRoZSBzYW1lIGFzIGF0IGxhc3QgaW5zdGFsbGF0aW9uLlxuIgorbXNnc3RyICIgICAgIEEgdmVyc8OjbyBubyBwYWNvdGUgw6kgYSBtZXNtYSBxdWUgYSBkYSDDumx0aW1hIGluc3RhbGHDp8Ojby5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYyOAorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IFVzaW5nIG5ldyBmaWxlIGFzIHlvdSByZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiA9PT4gVXNhbmRvIG5vdm8gYXJxdWl2byBjb21vIHZvY8OqIHBlZGl1LlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gVXNpbmcgY3VycmVudCBvbGQgZmlsZSBhcyB5b3UgcmVxdWVzdGVkLlxuIgorbXNnc3RyICIgPT0+IFVzYW5kbyBhcnF1aXZvIGF0dWFsIGNvbW8gdm9jw6ogcGVkaXUuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBLZWVwaW5nIG9sZCBjb25maWcgZmlsZSBhcyBkZWZhdWx0LlxuIgorbXNnc3RyICIgPT0+IE1hbnRlbmRvIGFycXVpdm8gZGUgY29uZmlndXJhw6fDo28gYW50aWdvIGNvbW8gcGFkcsOjby5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY0NQorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IFVzaW5nIG5ldyBjb25maWcgZmlsZSBhcyBkZWZhdWx0LlxuIgorbXNnc3RyICIgPT0+IFVzYW5kbyBub3ZvIGFycXVpdm8gZGUgY29uZmlndXJhw6fDo28gY29tbyBwYWRyw6NvLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjUyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiICAgV2hhdCB3b3VsZCB5b3UgbGlrZSB0byBkbyBhYm91dCBpdCA/ICBZb3VyIG9wdGlvbnMgYXJlOlxuIgorIiAgICBZIG9yIEkgIDogaW5zdGFsbCB0aGUgcGFja2FnZSBtYWludGFpbmVyJ3MgdmVyc2lvblxuIgorIiAgICBOIG9yIE8gIDoga2VlcCB5b3VyIGN1cnJlbnRseS1pbnN0YWxsZWQgdmVyc2lvblxuIgorIiAgICAgIEQgICAgIDogc2hvdyB0aGUgZGlmZmVyZW5jZXMgYmV0d2VlbiB0aGUgdmVyc2lvbnNcbiIKKyIgICAgICBaICAgICA6IHN0YXJ0IGEgc2hlbGwgdG8gZXhhbWluZSB0aGUgc2l0dWF0aW9uXG4iCittc2dzdHIgIiIKKyIgICBPIHF1ZSB2b2PDqiBnb3N0YXJpYSBkZSBmYXplciBzb2JyZSBpc3NvPyBTdWFzIG9ww6fDtWVzIHPDo286XG4iCisiICAgIFkgb3UgSSAgOiBpbnN0YWxhciBhIHZlcnPDo28gZG8gbWFudGVuZWRvciBkbyBwYWNvdGVcbiIKKyIgICAgTiBvdSBPICA6IG1hbnRlciBzdWEgdmVyc8OjbyBhdHVhbCBpbnN0YWxhZGFcbiIKKyIgICAgICBEICAgICA6IG1vc3RyYXIgYXMgZGlmZXJlbsOnYXMgZW50cmUgYXMgdmVyc8O1ZXNcbiIKKyIgICAgICBaICAgICA6IGNvbG9jYXIgZXN0ZSBwcm9jZXNzbyBlbSBzZWd1bmRvIHBsYW5vIHBhcmEgZXhhbWluYXIgYSAiCisic2l0dWHDp8Ojb1xuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjU5CisjLCBjLWZvcm1hdAorbXNnaWQgIiBUaGUgZGVmYXVsdCBhY3Rpb24gaXMgdG8ga2VlcCB5b3VyIGN1cnJlbnQgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIEEgYcOnw6NvIHBhZHLDo28gw6kgbWFudGVyIHN1YSB2ZXJzw6NvIGF0dWFsLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjYxCisjLCBjLWZvcm1hdAorbXNnaWQgIiBUaGUgZGVmYXVsdCBhY3Rpb24gaXMgdG8gaW5zdGFsbCB0aGUgbmV3IHZlcnNpb24uXG4iCittc2dzdHIgIiBBIGHDp8OjbyBwYWRyw6NvIMOpIGluc3RhbGFyIGEgbm92YSB2ZXJzw6NvLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjY2Cittc2dpZCAiW2RlZmF1bHQ9Tl0iCittc2dzdHIgIltwYWRyw6NvPU5dIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjY3Cittc2dpZCAiW2RlZmF1bHQ9WV0iCittc2dzdHIgIltwYWRyw6NvPVldIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjY4Cittc2dpZCAiW25vIGRlZmF1bHRdIgorbXNnc3RyICJbc2VtIHBhZHLDo29dIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjcxCittc2dpZCAiZXJyb3Igd3JpdGluZyB0byBzdGRlcnIsIGRpc2NvdmVyZWQgYmVmb3JlIGNvbmZmaWxlIHByb21wdCIKK21zZ3N0ciAiIgorImVycm8gZXNjcmV2ZW5kbyBwYXJhIHN0ZGVyciwgZGVzY29iZXJ0byBhbnRlcyBkbyBwcm9tcHQgZG8gYXJxdWl2byBkZSAiCisiY29uZmlndXJhw6fDo28gKFwiY29uZmZpbGVcIikiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2ODAKK21zZ2lkICJyZWFkIGVycm9yIG9uIHN0ZGluIGF0IGNvbmZmaWxlIHByb21wdCIKK21zZ3N0ciAiIgorImVycm8gZGUgbGVpdHVyYSBlbSBzdGRpbiBubyBwcm9tcHQgZG8gYXJxdWl2byBkZSBjb25maWd1cmHDp8OjbyAoXCJjb25mZmlsZVwiKSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY4MQorbXNnaWQgIkVPRiBvbiBzdGRpbiBhdCBjb25mZmlsZSBwcm9tcHQiCittc2dzdHIgIkVPRiBlbSBzdGRpbiBubyBwcm9tcHQgZG8gYXJxdWl2byBkZSBjb25maWd1cmHDp8OjbyAoXCJjb25mZmlsZVwiKSIKKworIzogc3JjL2RlcGNvbi5jOjE3NQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBkZXBlbmRzIG9uICVzIgorbXNnc3RyICIlcyBkZXBlbmRlIGRlICVzIgorCisjOiBzcmMvZGVwY29uLmM6MTc4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHByZS1kZXBlbmRzIG9uICVzIgorbXNnc3RyICIlcyBwcsOpLWRlcGVuZGUgZGUgJXMiCisKKyM6IHNyYy9kZXBjb24uYzoxODEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcmVjb21tZW5kcyAlcyIKK21zZ3N0ciAiJXMgcmVjb21lbmRhICVzIgorCisjOiBzcmMvZGVwY29uLmM6MTg0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHN1Z2dlc3RzICVzIgorbXNnc3RyICIlcyBzdWdlcmUgJXMiCisKKyM6IHNyYy9kZXBjb24uYzoxODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgYnJlYWtzICVzIgorbXNnc3RyICIlcyBxdWVicmEgJXMiCisKKyM6IHNyYy9kZXBjb24uYzoxOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgY29uZmxpY3RzIHdpdGggJXMiCittc2dzdHIgIiVzIGNvbmZsaXRhIGNvbSAlcyIKKworIzogc3JjL2RlcGNvbi5jOjE5MworIywgYy1mb3JtYXQKK21zZ2lkICIlcyBlbmhhbmNlcyAlcyIKK21zZ3N0ciAiJXMgbWVsaG9yYSAlcyIKKworIzogc3JjL2RlcGNvbi5jOjI5NgorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyBlc3TDoSBwYXJhIHNlciByZW1vdmlkby5cbiIKKworIzogc3JjL2RlcGNvbi5jOjI5OQorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB0byBiZSBkZWNvbmZpZ3VyZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIGVzdMOhIHBhcmEgc2VyIGRlc2NvbmZpZ3VyYWRvLlxuIgorCisjOiBzcmMvZGVwY29uLmM6MzA0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHRvIGJlIGluc3RhbGxlZCwgYnV0IGlzIHZlcnNpb24gJS4yNTBzLlxuIgorbXNnc3RyICIgICUuMjUwcyBlc3TDoSBwYXJhIHNlciBpbnN0YWxhZG8sIG1hcyBzdWEgdmVyc8OjbyDDqSAlLjI1MHMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgaW5zdGFsbGVkLCBidXQgaXMgdmVyc2lvbiAlLjI1MHMuXG4iCittc2dzdHIgIiAgJS4yNTBzIGVzdMOhIGluc3RhbGFkbywgbWFzIHN1YSB2ZXJzw6NvIMOpICUuMjUwcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjMzMworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB1bnBhY2tlZCwgYnV0IGhhcyBuZXZlciBiZWVuIGNvbmZpZ3VyZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIGVzdMOhIGRlc2VtcGFjb3RhZG8sIG1hcyBudW5jYSBmb2kgY29uZmlndXJhZG8uXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdW5wYWNrZWQsIGJ1dCBpcyB2ZXJzaW9uICUuMjUwcy5cbiIKK21zZ3N0ciAiICUuMjUwcyBlc3TDoSBkZXNlbXBhY290YWRvLCBtYXMgc3VhIHZlcnPDo28gw6kgJS4yNTBzLlxuIgorCisjOiBzcmMvZGVwY29uLmM6MzQzCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGxhdGVzdCBjb25maWd1cmVkIHZlcnNpb24gaXMgJS4yNTBzLlxuIgorbXNnc3RyICIgIGEgdmVyc8OjbyBtYWlzIHJlY2VudGUgY29uZmlndXJhZGEgZGUgJS4yNTBzIMOpICUuMjUwcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjM1MworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyAlcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgZXN0w6EgJXMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozODgKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGJ1dCBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyBmb3JuZWNlICUuMjUwcyBtYXMgZXN0w6EgcGFyYSBzZXIgcmVtb3ZpZG8uXG4iCisKKyM6IHNyYy9kZXBjb24uYzozOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGJ1dCBpcyB0byBiZSBkZWNvbmZpZ3VyZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIGZvcm5lY2UgJS4yNTBzIG1hcyBlc3TDoSBwYXJhIHNlciBkZXNjb25maWd1cmFkby5cbiIKKworIzogc3JjL2RlcGNvbi5jOjQwMQorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYnV0IGlzICVzLlxuIgorbXNnc3RyICIgICUuMjUwcyBmb3JuZWNlICUuMjUwcyBtYXMgZXN0w6EgJXMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0MTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgbm90IGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMgbsOjbyBlc3TDoSBpbnN0YWxhZG8uXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgKHZlcnNpb24gJS4yNTBzKSBpcyB0byBiZSBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzICh2ZXJzw6NvICUuMjUwcykgZXN0w6EgcGFyYSBzZXIgaW5zdGFsYWRvLlxuIgorCisjOiBzcmMvZGVwY29uLmM6NDY4CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzICh2ZXJzaW9uICUuMjUwcykgaXMgcHJlc2VudCBhbmQgJXMuXG4iCittc2dzdHIgIiAgJS4yNTBzICh2ZXJzw6NvICUuMjUwcykgZXN0w6EgcHJlc2VudGUgZSAlcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjQ5NQorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYW5kIGlzIHRvIGJlIGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMgZm9ybmVjZSAlLjI1MHMgZSBlc3TDoSBwYXJhIHNlciBpbnN0YWxhZG8uXG4iCisKKyM6IHNyYy9kZXBjb24uYzo1MzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGFuZCBpcyBwcmVzZW50IGFuZCAlcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgZm9ybmVjZSAlLjI1MHMgZSBlc3TDoSBwcmVzZW50ZSBlICVzLlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTAKKyMsIGZ1enp5CisjfCBtc2dpZCAiVHlwZSBkcGtnLXRyaWdnZXIgLS1oZWxwIGZvciBoZWxwIGFib3V0IHRoaXMgdXRpbGl0eS4iCittc2dpZCAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBkaXZlcnRpbmcgZmlsZXMuIgorbXNnc3RyICJEaWdpdGUgZHBrZy10cmlnZ2VyIC0taGVscCBwYXJhIGFqdWRhIHNvYnJlIGVzdGUgdXRpbGl0w6FyaW8uIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjYgc3JjL3N0YXRjbWQuYzo1NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuICVzIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkRlYmlhbiAlcyB2ZXJzw6NvICVzLlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJcbiIKKyN8ICJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisjfCAiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi4iCittc2dpZCAiIgorIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLlxuIgorIkNvcHlyaWdodCAoQykgMjAxMCBHdWlsbGVtIEpvdmVyLlxuIgorbXNnc3RyICIiCisiXG4iCisiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NzUgc3JjL21haW4uYzo2MyBzcmMvcXVlcnljbWQuYzo2MDMgc3JjL3N0YXRjbWQuYzo2NQorIzogc3JjL3RyaWdjbWQuYzo1NSBkcGtnLWRlYi9tYWluLmM6NTcgZHBrZy1zcGxpdC9tYWluLmM6NTEKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo4OQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgb3JcbiIKKyJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKK21zZ3N0ciAiIgorIlxuIgorIkVzdGUgw6kgdW0gc29mdHdhcmUgbGl2cmU7IHZlamEgYSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSAoXCJHTlUgTGljZW7Dp2FcbiIKKyJQw7pibGljYSBHZXJhbFwiKSB2ZXJzw6NvIDIgb3UgcG9zdGVyaW9yIHBhcmEgY29uZGnDp8O1ZXMgZGUgY8OzcGlhLiBOw6NvIGjDoVxuIgorIk5FTkhVTUEgZ2FyYW50aWEuXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo4NyBzcmMvbWFpbi5jOjgxIHNyYy9xdWVyeWNtZC5jOjYxNSBzcmMvc3RhdGNtZC5jOjc3CisjOiBkcGtnLWRlYi9tYWluLmM6NjkgZHBrZy1zcGxpdC9tYWluLmM6NjMgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjk3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gPGNvbW1hbmQ+XG4iCisiXG4iCittc2dzdHIgIiIKKyJVc286ICVzIFs8b3DDp8Ojbz4gLi4uXSA8Y29tYW5kbz5cbiIKKyJcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjkxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIFstLWFkZF0gPGZpbGU+ICAgICAgICAgICBhZGQgYSBkaXZlcnNpb24uXG4iCisiICAtLXJlbW92ZSA8ZmlsZT4gICAgICAgICAgcmVtb3ZlIHRoZSBkaXZlcnNpb24uXG4iCisiICAtLWxpc3QgWzxnbG9iLXBhdHRlcm4+XSAgc2hvdyBmaWxlIGRpdmVyc2lvbnMuXG4iCisiICAtLWxpc3RwYWNrYWdlIDxmaWxlPiAgICAgc2hvdyB3aGF0IHBhY2thZ2UgZGl2ZXJ0cyB0aGUgZmlsZS5cbiIKKyIgIC0tdHJ1ZW5hbWUgPGZpbGU+ICAgICAgICByZXR1cm4gdGhlIGRpdmVydGVkIGZpbGUuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjEwMAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLXBhY2thZ2UgPHBhY2thZ2U+ICAgICAgbmFtZSBvZiB0aGUgcGFja2FnZSB3aG9zZSBjb3B5IG9mIDxmaWxlPiB3aWxsICIKKyJub3RcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJlIGRpdmVydGVkLlxuIgorIiAgLS1sb2NhbCAgICAgICAgICAgICAgICAgIGFsbCBwYWNrYWdlcycgdmVyc2lvbnMgYXJlIGRpdmVydGVkLlxuIgorIiAgLS1kaXZlcnQgPGRpdmVydC10bz4gICAgIHRoZSBuYW1lIHVzZWQgYnkgb3RoZXIgcGFja2FnZXMnIHZlcnNpb25zLlxuIgorIiAgLS1yZW5hbWUgICAgICAgICAgICAgICAgIGFjdHVhbGx5IG1vdmUgdGhlIGZpbGUgYXNpZGUgKG9yIGJhY2spLlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIHNldCB0aGUgZGlyZWN0b3J5IHdpdGggdGhlIGRpdmVyc2lvbnMgZmlsZS5cbiIKKyIgIC0tdGVzdCAgICAgICAgICAgICAgICAgICBkb24ndCBkbyBhbnl0aGluZywganVzdCBkZW1vbnN0cmF0ZS5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBxdWlldCBvcGVyYXRpb24sIG1pbmltYWwgb3V0cHV0LlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIlVzbzogJXMgWzxvcMOnw6NvPiAuLi5dIDxjb21hbmRvPlxuIgorIlxuIgorIkNvbWFuZG9zOlxuIgorIiAgWy0tYWRkXSA8YXJxdWl2bz4gICAgICAgIGFkaWNpb25hIHVtIGRlc3Zpby5cbiIKKyIgIC0tcmVtb3ZlIDxhcnF1aXZvPiAgICAgICByZW1vdmUgdW0gZGVzdmlvLlxuIgorIiAgLS1saXN0IFs8cGFkcsOjby1nbG9iPl0gICBleGliZSBkZXN2aW9zIGRlIGFycXVpdm9zLlxuIgorIiAgLS10cnVlbmFtZSA8YXJxdWl2bz4gICAgIHJldG9ybmEgbyBhcnF1aXZvIGRlc3ZpYWRvLlxuIgorIlxuIgorIk9ww6fDtWVzOlxuIgorIiAgLS1wYWNrYWdlIDxwYWNvdGU+ICAgICAgIG5vbWUgZG8gcGFjb3RlIGN1amEgY8OzcGlhIGRvIDxhcnF1aXZvPiBuw6NvIHNlcsOhXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVzdmlhZGEuXG4iCisiICAtLWxvY2FsICAgICAgICAgICAgICAgICAgdG9kYXMgYXMgdmVyc8O1ZXMgZG9zIHBhY290ZXMgc8OjbyBkZXN2aWFkYXMuXG4iCisiICAtLWRpdmVydCA8ZGVzdmlhci1wYXJhPiAgbyBub21lIHVzYWRvIHBvciBvdXRyYXMgdmVyc8O1ZXMgZG9zIHBhY290ZXMuXG4iCisiICAtLXJlbmFtZSAgICAgICAgICAgICAgICAgbmEgdmVyZGFkZSBtb3ZlIG8gYXJxdWl2byBkZSBsYWRvIChvdSBkZSB2b2x0YSkuXG4iCisiICAtLWFkbWluZGlyIDxkaXJldMOzcmlvPiAgIGRlZmluZSBvIGRpcmV0w7NyaW8gY29tIG8gYXJxdWl2byBkZSBkZXN2aW9zLlxuIgorIiAgLS10ZXN0ICAgICAgICAgICAgICAgICAgIG7Do28gZmF6IG5hZGEsIHPDsyBkZW1vbnN0cmEuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgb3BlcmHDp8OjbyBzaWxlbmNpb3NhLCBzYcOtZGEgbcOtbmltYS5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICBtb3N0cmEgZXN0YSBtZW5zYWdlbSBkZSBhanVkYS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBtb3N0cmEgYSB2ZXJzw6NvLlxuIgorIlxuIgorIk5hIGFkacOnw6NvLCBvIHBhZHLDo28gw6kgLS1sb2NhbCBlIC0tZGl2ZXJ0IDxvcmlnaW5hbD4uZGlzdHJpYi5cbiIKKyJOYSByZW1vw6fDo28sIC0tcGFja2FnZSBvdSAtLWxvY2FsIGUgLS1kaXZlcnQgZGV2ZW0gY29tYmluYXIgc2UgZm9yZW1cbiIKKyJlc3BlY2lmaWNhZG9zLlxuIgorIlNjcmlwdHMgcHJlaW5zdC9wb3N0cm0gZG9zIHBhY290ZXMgZGV2ZXLDo28gc2VtcHJlIGVzcGVjaWZpY2FyIC0tcGFja2FnZSBlXG4iCisiLS1kaXZlcnQuXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIldoZW4gYWRkaW5nLCBkZWZhdWx0IGlzIC0tbG9jYWwgYW5kIC0tZGl2ZXJ0IDxvcmlnaW5hbD4uZGlzdHJpYi5cbiIKKyJXaGVuIHJlbW92aW5nLCAtLXBhY2thZ2Ugb3IgLS1sb2NhbCBhbmQgLS1kaXZlcnQgbXVzdCBtYXRjaCBpZiBzcGVjaWZpZWQuXG4iCisiUGFja2FnZSBwcmVpbnN0L3Bvc3RybSBzY3JpcHRzIHNob3VsZCBhbHdheXMgc3BlY2lmeSAtLXBhY2thZ2UgYW5kIC0tIgorImRpdmVydC5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MTY4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJlcnJvciBjaGVja2luZyBgJXMnOiAlcyIKK21zZ2lkICJlcnJvciBjaGVja2luZyAnJXMnIgorbXNnc3RyICJlcnJvIGFvIGNoZWNhciAnJXMnOiAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjIwMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisicmVuYW1lIGludm9sdmVzIG92ZXJ3cml0aW5nIGAlcycgd2l0aFxuIgorIiAgZGlmZmVyZW50IGZpbGUgYCVzJywgbm90IGFsbG93ZWQiCittc2dzdHIgIiIKKyJyZW5vbWVhciBlbnZvbHZlIHNvYnJlc2NyZXZlciAnJXMnIGNvbVxuIgorIiAgYXJxdWl2byBkaWZlcmVudGUgJyVzJywgbsOjbyBwZXJtaXRpZG8iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyMjMgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzNzMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgZmlsZSAnJXMnIgorbXNnc3RyICJpbXBvc3PDrXZlbCBhYnJpciBhcnF1aXZvIGZvbnRlICclLjI1MHMnIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjI3Cittc2dpZCAiZmlsZSBjb3B5IgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyMzkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImNhbm5vdCBzdGF0IG5ldyBuYW1lIGAlcyc6ICVzIgorbXNnaWQgImNhbm5vdCByZW5hbWUgJyVzJyB0byAnJXMnIgorbXNnc3RyICJuw6NvIGZvaSBwb3Nzw612ZWwgZXhlY3V0YXIgXCJzdGF0XCIgZW0gbm92byBub21lICclcyc6ICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjUyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJyZW5hbWU6IHJlbW92ZSBkdXBsaWNhdGUgb2xkIGxpbmsgYCVzJzogJXMiCittc2dpZCAicmVuYW1lOiByZW1vdmUgZHVwbGljYXRlIG9sZCBsaW5rICclcyciCittc2dzdHIgInJlbm9tZWFyOiByZW1vdmVyIGxpZ2HDp8OjbyBhbnRpZ2EgZHVwbGljYWRhICclcyc6ICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjYyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gb3BlbiBzb3VyY2UgZmlsZSBgJS4yNTBzJyIKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIGNvcGllZCBzb3VyY2UgZmlsZSAnJXMnIgorbXNnc3RyICJpbXBvc3PDrXZlbCBhYnJpciBhcnF1aXZvIGZvbnRlICclLjI1MHMnIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mjg0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJsb2NhbCBkaXZlcnNpb24gdG86ICVzXG4iCittc2dpZCAibG9jYWwgZGl2ZXJzaW9uIG9mICVzIgorbXNnc3RyICJsb2NhbG1lbnRlIGRlc3ZpYWRvIHBhcmE6ICVzXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyODYKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImxvY2FsIGRpdmVyc2lvbiB0bzogJXNcbiIKK21zZ2lkICJsb2NhbCBkaXZlcnNpb24gb2YgJXMgdG8gJXMiCittc2dzdHIgImxvY2FsbWVudGUgZGVzdmlhZG8gcGFyYTogJXNcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjI5MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZGl2ZXJzaW9uIGJ5ICVzIgorbXNnaWQgImRpdmVyc2lvbiBvZiAlcyBieSAlcyIKK21zZ3N0ciAiZGVzdmlvIHBvciAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjI5MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZGl2ZXJzaW9uIGJ5ICVzIHRvOiAlc1xuIgorbXNnaWQgImRpdmVyc2lvbiBvZiAlcyB0byAlcyBieSAlcyIKK21zZ3N0ciAiZGVzdmlhZG8gcG9yICVzIHBhcmE6ICVzXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozMDkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImRpdmVyc2lvbiBieSAlcyIKK21zZ2lkICJhbnkgZGl2ZXJzaW9uIG9mICVzIgorbXNnc3RyICJkZXN2aW8gcG9yICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MzExCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJkaXZlcnNpb24gYnkgJXMgdG86ICVzXG4iCittc2dpZCAiYW55IGRpdmVyc2lvbiBvZiAlcyB0byAlcyIKK21zZ3N0ciAiZGVzdmlhZG8gcG9yICVzIHBhcmE6ICVzXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozNTcKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImNhbm5vdCBvcGVuIEdQTCBmaWxlIgorbXNnaWQgImNhbm5vdCBjcmVhdGUgbmV3ICVzIGZpbGUiCittc2dzdHIgIm7Do28gZm9pIHBvc3PDrXZlbCBhYnJpciBhcnF1aXZvIEdQTCIKKworIzogc3JjL2RpdmVydGNtZC5jOjM3NSBzcmMvc3RhdGNtZC5jOjIxNSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTQwNAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIGZpbGUgJyVzJyIKK21zZ3N0ciAiaW1wb3Nzw612ZWwgZWZldHVhciBcImZsdXNoXCIgZW0gdnNucHJpbnRmICIKKworIzogc3JjL2RpdmVydGNtZC5jOjM4MgorIywgZnV6enkKKyN8IG1zZ2lkICJyZW1vdmUgb2xkIGRpdmVyc2lvbnMtb2xkOiAlcyIKK21zZ2lkICJlcnJvciByZW1vdmluZyBvbGQgZGl2ZXJzaW9ucy1vbGQiCittc2dzdHIgInJlbW92ZXIgYW50aWdvIFwiZGl2ZXJzaW9ucy1vbGRcIjogJXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozODQKKyMsIGZ1enp5Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgbmV3IGRpdmVyc2lvbnMtb2xkIgorbXNnc3RyICJlcnJvIGNyaWFuZG8gbm92byBcInN0YXRvdmVycmlkZS1vbGRcIjogJXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozODYKKyMsIGZ1enp5Cittc2dpZCAiZXJyb3IgaW5zdGFsbGluZyBuZXcgZGl2ZXJzaW9ucyIKK21zZ3N0ciAiZXJybyBpbnN0YWxhbmRvIG5vdm8gXCJzdGF0b3ZlcnJpZGVcIjogJXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MDYgc3JjL2RpdmVydGNtZC5jOjUwMyBzcmMvZGl2ZXJ0Y21kLmM6NjEwCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjMwIHNyYy9zdGF0Y21kLmM6MjkwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSBzaW5nbGUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMgcHJlY2lzYSBkZSB1bSDDum5pY28gYXJndW1lbnRvIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDA5IHNyYy9kaXZlcnRjbWQuYzo0MzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZW5hbWUgXCIlc1wiIGlzIG5vdCBhYnNvbHV0ZSIKK21zZ3N0ciAibm9tZSBkZSBhcnF1aXZvIFwiJXNcIiBuw6NvIMOpIGFic29sdXRvIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDExIHNyYy9zdGF0Y21kLmM6MjQ5Cittc2dpZCAiZmlsZSBtYXkgbm90IGNvbnRhaW4gbmV3bGluZXMiCittc2dzdHIgImFycXVpdm8gbsOjbyBwb2RlIGNvbnRlciBub3ZhcyBsaW5oYXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MTgKK21zZ2lkICJDYW5ub3QgZGl2ZXJ0IGRpcmVjdG9yaWVzIgorbXNnc3RyICJOw6NvIGZvaSBwb3Nzw612ZWwgZGVzdmlhciBkaXJldMOzcmlvcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjQzMworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGRpdmVydCBmaWxlICclcycgdG8gaXRzZWxmIgorbXNnc3RyICJOw6NvIGZvaSBwb3Nzw612ZWwgZGVzdmlhciBkaXJldMOzcmlvcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjQ1MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiTGVhdmluZyBgJXMnIgorbXNnaWQgIkxlYXZpbmcgJyVzJ1xuIgorbXNnc3RyICJEZWl4YW5kbyAnJXMnIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDU4CisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgY2xhc2hlcyB3aXRoIGAlcyciCittc2dzdHIgIiclcycgY29uZmxpdGEgY29tICclcyciCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0ODEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIkFkZGluZyBgJXMnIgorbXNnaWQgIkFkZGluZyAnJXMnXG4iCittc2dzdHIgIkFkaWNpb25hZG8gJyVzJyIKKworIzogc3JjL2RpdmVydGNtZC5jOjUxMAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiTm8gZGl2ZXJzaW9uIGAlcycsIG5vbmUgcmVtb3ZlZCIKK21zZ2lkICJObyBkaXZlcnNpb24gJyVzJywgbm9uZSByZW1vdmVkLlxuIgorbXNnc3RyICJOZW5odW0gZGVzdmlvIChcImRpdmVyc2lvblwiKSAnJXMnLCBuZW5odW0gcmVtb3ZpZG8iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm1pc21hdGNoIG9uIGRpdmVydC10b1xuIgorIiAgd2hlbiByZW1vdmluZyBgJXMnXG4iCisiICBmb3VuZCBgJXMnIgorbXNnc3RyICIiCisiaW5jb21wYXRpYmlsaWRhZGUgZW0gZGVzdmlvLXBhcmFcbiIKKyIgIG5hIHJlbW/Dp8OjbyBkZSAnJXMnXG4iCisiICBlbmNvbnRyYWRvICclcyciCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm1pc21hdGNoIG9uIHBhY2thZ2VcbiIKKyIgIHdoZW4gcmVtb3ZpbmcgYCVzJ1xuIgorIiAgZm91bmQgYCVzJyIKK21zZ3N0ciAiIgorImluY29tcGF0aWJpbGlkYWRlIGVtIHBhY290ZVxuIgorIiAgbmEgcmVtb8Onw6NvIGRlICclcydcbiIKKyIgIGVuY29udHJhZG8gJyVzJyIKKworIzogc3JjL2RpdmVydGNtZC5jOjUzOQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiUmVtb3ZpbmcgYCVzJyIKK21zZ2lkICJSZW1vdmluZyAnJXMnXG4iCittc2dzdHIgIlJlbW92ZW5kbyAnJXMnIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjU3Cittc2dpZCAicGFja2FnZSBtYXkgbm90IGNvbnRhaW4gbmV3bGluZXMiCittc2dzdHIgInBhY290ZSBuw6NvIHBvZGUgY29udGVyIG5vdmFzIGxpbmhhcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjY2NgorbXNnaWQgImRpdmVydC10byBtYXkgbm90IGNvbnRhaW4gbmV3bGluZXMiCittc2dzdHIgImRlc3ZpYXItcGFyYSBuw6NvIHBvZGUgY29udGVyIG5vdmFzIGxpbmhhcyIKKworIzogc3JjL2RpdmVydGRiLmM6NjQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiBkaXZlcnNpb25zIGZpbGUiCittc2dzdHIgImZhbGhvdSBhbyBhYnJpciBhcnF1aXZvIGRlIGRlc3Zpb3MiCisKKyM6IHNyYy9kaXZlcnRkYi5jOjcxCittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IHByZXZpb3VzIGRpdmVyc2lvbnMgZmlsZSIKK21zZ3N0ciAiZmFsaG91IGFvIGV4ZWN1dGFyIFwiZnN0YXRcIiBubyBhcnF1aXZvIGRlIGRlc3Zpb3MgYW50ZXJpb3IiCisKKyM6IHNyYy9kaXZlcnRkYi5jOjczCittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGRpdmVyc2lvbnMgZmlsZSIKK21zZ3N0ciAiZmFsaG91IGFvIGV4ZWN1dGFyIFwiZnN0YXRcIiBubyBhcnF1aXZvIGRlIGRlc3Zpb3MiCisKKyM6IHNyYy9kaXZlcnRkYi5jOjExMworIywgYy1mb3JtYXQKK21zZ2lkICJjb25mbGljdGluZyBkaXZlcnNpb25zIGludm9sdmluZyBgJS4yNTBzJyBvciBgJS4yNTBzJyIKK21zZ3N0ciAiZGVzdmlvcyBjb25mbGl0YW50ZXMgZW52b2x2ZW5kbyAnJS4yNTBzJyBvdSAnJS4yNTBzJyIKKworIzogc3JjL2VucXVpcnkuYzo3MworbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBpbiBhIG1lc3MgZHVlIHRvIHNlcmlvdXMgcHJvYmxlbXMgZHVyaW5nXG4iCisiaW5zdGFsbGF0aW9uLiAgVGhleSBtdXN0IGJlIHJlaW5zdGFsbGVkIGZvciB0aGVtIChhbmQgYW55IHBhY2thZ2VzXG4iCisidGhhdCBkZXBlbmQgb24gdGhlbSkgdG8gZnVuY3Rpb24gcHJvcGVybHk6XG4iCittc2dzdHIgIiIKKyJPcyBwYWNvdGVzIGEgc2VndWlyIGVzdMOjbyBiYWd1bsOnYWRvcyBkZXZpZG8gYSBzw6lyaW9zIHByb2JsZW1hcyBkdXJhbnRlXG4iCisiYSBpbnN0YWxhw6fDo28sIGUgcHJlY2lzYW0gc2VyIHJlaW5zdGFsYWRvcyBwYXJhIHF1ZSBlbGVzIChlIHF1YWlzcXVlclxuIgorInBhY290ZXMgcXVlIGRlcGVuZGFtIGRlbGUpIGZ1bmNpb25lbSBjb3JyZXRhbWVudGU6XG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6ODAKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBoYXZlIGJlZW4gdW5wYWNrZWQgYnV0IG5vdCB5ZXQgY29uZmlndXJlZC5cbiIKKyJUaGV5IG11c3QgYmUgY29uZmlndXJlZCB1c2luZyBkcGtnIC0tY29uZmlndXJlIG9yIHRoZSBjb25maWd1cmVcbiIKKyJtZW51IG9wdGlvbiBpbiBkc2VsZWN0IGZvciB0aGVtIHRvIHdvcms6XG4iCittc2dzdHIgIiIKKyJPcyBwYWNvdGVzIGEgc2VndWlyIGZvcmFtIGRlc2VtcGFjb3RhZG9zIG1hcyBhaW5kYSBuw6NvIGZvcmFtIGNvbmZpZ3VyYWRvcy5cbiIKKyJFbGVzIHByZWNpc2FtIHNlciBjb25maWd1cmFkb3MgdXNhbmRvIGRwa2cgLS1jb25maWd1cmUgb3UgYSBvcMOnw6NvIGRvIG1lbnVcbiIKKyJkbyBkc2VsZWN0IGRlIGNvbmZpZ3VyYcOnw6NvIHBhcmEgcXVlIGZ1bmNpb25lbTpcbiIKKworIzogc3JjL2VucXVpcnkuYzo4NworbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBvbmx5IGhhbGYgY29uZmlndXJlZCwgcHJvYmFibHkgZHVlIHRvIHByb2JsZW1zXG4iCisiY29uZmlndXJpbmcgdGhlbSB0aGUgZmlyc3QgdGltZS4gIFRoZSBjb25maWd1cmF0aW9uIHNob3VsZCBiZSByZXRyaWVkIHVzaW5nXG4iCisiZHBrZyAtLWNvbmZpZ3VyZSA8cGFja2FnZT4gb3IgdGhlIGNvbmZpZ3VyZSBtZW51IG9wdGlvbiBpbiBkc2VsZWN0OlxuIgorbXNnc3RyICIiCisiT3MgcGFjb3RlcyBhIHNlZ3VpciBlc3TDo28gYXBlbmFzIG1laW8gY29uZmlndXJhZG9zLCBwcm92YXZlbG1lbnRlIGRldmlkbyBhXG4iCisicHJvYmxlbWFzIGFvIGNvbmZpZ3Vyw6EtbG9zIHBlbGEgcHJpbWVpcmEgdmV6LiBBIGNvbmZpZ3VyYcOnw6NvIGRldmUgc2VyIGZlaXRhXG4iCisibm92YW1lbnRlIHVzYW5kbyBkcGtnIC0tY29uZmlndXJlIDxwYWNvdGU+IG91IGEgb3DDp8OjbyBubyBtZW51IGRvIGRzZWxlY3Q6XG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6OTQKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgb25seSBoYWxmIGluc3RhbGxlZCwgZHVlIHRvIHByb2JsZW1zIGR1cmluZ1xuIgorImluc3RhbGxhdGlvbi4gIFRoZSBpbnN0YWxsYXRpb24gY2FuIHByb2JhYmx5IGJlIGNvbXBsZXRlZCBieSByZXRyeWluZyBpdDtcbiIKKyJ0aGUgcGFja2FnZXMgY2FuIGJlIHJlbW92ZWQgdXNpbmcgZHNlbGVjdCBvciBkcGtnIC0tcmVtb3ZlOlxuIgorbXNnc3RyICIiCisiT3MgcGFjb3RlcyBhIHNlZ3VpciBlc3TDo28gYXBlbmFzIG1laW8gaW5zdGFsYWRvcywgZGV2aWRvIGEgcHJvYmxlbWFzICIKKyJkdXJhbnRlXG4iCisiYSBpbnN0YWxhw6fDo28sIHF1ZSBwcm92YXZlbG1lbnRlIGVzdGFyw6EgY29tcGxldGEgc2Ugdm9jw6ogdGVudGFyIGV4ZWN1dMOhLWxhXG4iCisibm92YW1lbnRlOyBvcyBwYWNvdGVzIHBvZGVtIHNlciByZW1vdmlkb3MgY29tIG8gZHNlbGVjdCBvdSBkcGtnIC0tcmVtb3ZlOlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjEwMQorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBhd2FpdGluZyBwcm9jZXNzaW5nIG9mIHRyaWdnZXJzIHRoYXQgdGhleVxuIgorImhhdmUgYWN0aXZhdGVkIGluIG90aGVyIHBhY2thZ2VzLiAgVGhpcyBwcm9jZXNzaW5nIGNhbiBiZSByZXF1ZXN0ZWQgdXNpbmdcbiIKKyJkc2VsZWN0IG9yIGRwa2cgLS1jb25maWd1cmUgLS1wZW5kaW5nIChvciBkcGtnIC0tdHJpZ2dlcnMtb25seSk6XG4iCittc2dzdHIgIiIKKyJPcyBwYWNvdGVzIGEgc2VndWlyIGVzdMOjbyBhZ3VhcmRhbmRvIHByb2Nlc3NhbWVudG8gZGUgZ2F0aWxob3MgcXVlIGVsZXNcbiIKKyJhdGl2YXJhbSBlbSBvdXRyb3MgcGFjb3Rlcy4gRXN0ZSBwcm9jZXNzYW1lbnRvIHBvZGUgc2VyIGV4ZWN1dGFkbyB1c2FuZG9cbiIKKyJkc2VsZWN0IG91IGRwa2cgLS1jb25maWd1cmUgLS1wZW5kaW5nIChvdSBkcGtnIC0tdHJpZ2dlcnMtb25seSk6XG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTA4Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgaGF2ZSBiZWVuIHRyaWdnZXJlZCwgYnV0IHRoZSB0cmlnZ2VyIHByb2Nlc3NpbmdcbiIKKyJoYXMgbm90IHlldCBiZWVuIGRvbmUuICBUcmlnZ2VyIHByb2Nlc3NpbmcgY2FuIGJlIHJlcXVlc3RlZCB1c2luZ1xuIgorImRzZWxlY3Qgb3IgZHBrZyAtLWNvbmZpZ3VyZSAtLXBlbmRpbmcgKG9yIGRwa2cgLS10cmlnZ2Vycy1vbmx5KTpcbiIKK21zZ3N0ciAiIgorIk9zIHBhY290ZXMgYSBzZWd1aXIgZm9yYW0gZGlzcGFyYWRvcyBwb3IgZ2F0aWxob3MsIG1hcyBvIHByb2Nlc3NhbWVudG8gZGVcbiIKKyJnYXRpbGhvcyBhaW5kYSBuw6NvIHRlcm1pbm91LiBPIHByb2Nlc3NhbWVudG8gZGUgZ2F0aWxob3MgcG9kZSBzZXIgZXhlY3V0YWRvXG4iCisidXNhbmRvIGRzZWxlY3Qgb3UgZHBrZyAtLWNvbmZpZ3VyZSAtLXBlbmRpbmcgKG91IGRwa2cgLS10cmlnZ2Vycy1vbmx5KTpcbiIKKworIzogc3JjL2VucXVpcnkuYzoxMzcgc3JjL2VucXVpcnkuYzoyMTEgc3JjL2VucXVpcnkuYzoyOTIgc3JjL2VucXVpcnkuYzozNzMKKyM6IHNyYy9lbnF1aXJ5LmM6NDYwIHNyYy9zZWxlY3QuYzo5OCBzcmMvc2VsZWN0LmM6MTY0IHNyYy90cmlnY21kLmM6MTk5CisjOiBzcmMvdXBkYXRlLmM6NDggc3JjL3VwZGF0ZS5jOjExMyBkcGtnLXNwbGl0L3F1ZXVlLmM6MjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgbm8gYXJndW1lbnRzIgorbXNnc3RyICItLSVzIG7Do28gYWNlaXRhIGFyZ3VtZW50b3MiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTUyCittc2dpZCAiIgorIkFub3RoZXIgcHJvY2VzcyBoYXMgbG9ja2VkIHRoZSBkYXRhYmFzZSBmb3Igd3JpdGluZywgYW5kIG1pZ2h0IGN1cnJlbnRseSBiZVxuIgorIm1vZGlmeWluZyBpdCwgc29tZSBvZiB0aGUgZm9sbG93aW5nIHByb2JsZW1zIG1pZ2h0IGp1c3QgYmUgZHVlIHRvIHRoYXQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzoxOTEKKyMsIGZ1enp5CisjfCBtc2dpZCAiPHVua25vd24+IgorbXNnY3R4dCAic2VjdGlvbiIKK21zZ2lkICI8dW5rbm93bj4iCittc2dzdHIgIjxkZXNjb25oZWNpZG8+IgorCisjOiBzcmMvZW5xdWlyeS5jOjI1MQorIywgYy1mb3JtYXQKK21zZ2lkICIgJWQgaW4gJXM6ICIKK21zZ3N0ciAiICVkIGVtICVzOiAiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MjY2CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIgJWQgcGFja2FnZXMsIGZyb20gdGhlIGZvbGxvd2luZyBzZWN0aW9uczoiCittc2dpZCAiICVkIHBhY2thZ2UsIGZyb20gdGhlIGZvbGxvd2luZyBzZWN0aW9uOiIKK21zZ2lkX3BsdXJhbCAiICVkIHBhY2thZ2VzLCBmcm9tIHRoZSBmb2xsb3dpbmcgc2VjdGlvbnM6IgorbXNnc3RyWzBdICIgJWQgcGFjb3RlcywgZGFzIHNlZ3VpbnRlcyBzZcOnw7VlczoiCittc2dzdHJbMV0gIiAlZCBwYWNvdGVzLCBkYXMgc2VndWludGVzIHNlw6fDtWVzOiIKKworIzogc3JjL2VucXVpcnkuYzozMDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJWZXJzaW9uIG9mIGRwa2cgd2l0aCB3b3JraW5nICVzIHN1cHBvcnQgbm90IHlldCBjb25maWd1cmVkLlxuIgorIiBQbGVhc2UgdXNlICdkcGtnIC0tY29uZmlndXJlIGRwa2cnLCBhbmQgdGhlbiB0cnkgYWdhaW4uXG4iCittc2dzdHIgIiIKKyJWZXJzw6NvIGRlIGRwa2cgY29tIHN1cG9ydGUgYSDDqXBvY2FzIGZ1bmNpb25hbmRvIGFpbmRhIG7Do28gY29uZmlndXJhZGEuXG4iCisiIFBvciBmYXZvciB1c2UgJ2Rwa2cgLS1jb25maWd1cmUgZHBrZycgZSB0ZW50ZSBub3ZhbWVudGUuXG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzEwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJkcGtnIG5vdCByZWNvcmRlZCBhcyBpbnN0YWxsZWQsIGNhbm5vdCBjaGVjayBmb3IgJXMgc3VwcG9ydCFcbiIKK21zZ3N0ciAiIgorImRwa2cgbsOjbyByZWdpc3RyYWRvIGNvbW8gaW5zdGFsYWRvLCBpbXBvc3PDrXZlbCBjaGVjYXIgc3Vwb3J0ZSBhIMOpcG9jYXMhXG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzIxCittc2dpZCAiUHJlLURlcGVuZHMgZmllbGQiCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzozMjkKK21zZ2lkICJlcG9jaCIKK21zZ3N0ciAiIgorCisjOiBzcmMvZW5xdWlyeS5jOjMzNworbXNnaWQgImxvbmcgZmlsZW5hbWVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzQ2Cittc2dpZCAibXVsdGlwbGUgQ29uZmxpY3RzIGFuZCBSZXBsYWNlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZW5xdWlyeS5jOjQzNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogY2Fubm90IHNlZSBob3cgdG8gc2F0aXNmeSBwcmUtZGVwZW5kZW5jeTpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorImRwa2c6IG7Do28gZm9pIHBvc3PDrXZlbCB2ZXIgY29tbyBzYXRpc2ZhemVyIGEgcHLDqS1kZXBlbmTDqm5jaWE6XG4iCisiICVzXG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6NDM1CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzYXRpc2Z5IHByZS1kZXBlbmRlbmNpZXMgZm9yICUuMjUwcyAod2FudGVkIGR1ZSB0byAlLjI1MHMpIgorbXNnc3RyICIiCisibsOjbyBmb2kgcG9zc8OtdmVsIHNhdGlzZmF6ZXIgYXMgcHLDqS1kZXBlbmTDqm5jaWFzIHBhcmEgJS4yNTBzIChyZXF1ZXJpZG8gIgorImRldmlkbyBhICUuMjUwcykiCisKKyM6IHNyYy9lbnF1aXJ5LmM6NDcyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJvYnNvbGV0ZSBvcHRpb24gJy0tJXMnLCBwbGVhc2UgdXNlICctLSVzJyBpbnN0ZWFkLiIKK21zZ3N0ciAiQXZpc286IG9ww6fDo28gb2Jzb2xldGEgJy0tJXMnXG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6NTE5Cittc2dpZCAiIgorIi0tY29tcGFyZS12ZXJzaW9ucyB0YWtlcyB0aHJlZSBhcmd1bWVudHM6IDx2ZXJzaW9uPiA8cmVsYXRpb24+IDx2ZXJzaW9uPiIKK21zZ3N0ciAiIgorIi0tY29tcGFyZS12ZXJzaW9ucyBhY2VpdGFtIHRyw6pzIGFyZ3VtZW50b3M6IDx2ZXJzw6NvPiA8cmVsYcOnw6NvPiA8dmVyc8Ojbz4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6NTI0Cittc2dpZCAiLS1jb21wYXJlLXZlcnNpb25zIGJhZCByZWxhdGlvbiIKK21zZ3N0ciAibcOhIHJlbGHDp8OjbyBlbSAtLWNvbXBhcmUtdmVyc2lvbnMiCisKKyM6IHNyYy9lbnF1aXJ5LmM6NTI5IHNyYy9lbnF1aXJ5LmM6NTMxIHNyYy9lbnF1aXJ5LmM6NTQwIHNyYy9lbnF1aXJ5LmM6NTQyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ2ZXJzaW9uICclcycgaGFzIGJhZCBzeW50YXg6ICVzIgorbXNnc3RyICJ2ZXJzw6NvIHRlbSBtw6Egc2ludGF4ZTogJXNcbiIKKworIzogc3JjL2Vycm9ycy5jOjYwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogZXJyb3IgcHJvY2Vzc2luZyAlcyAoLS0lcyk6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKyIlczogZXJybyBwcm9jZXNzYW5kbyAlcyAoLS0lcyk6XG4iCisiICVzXG4iCisKKyM6IHNyYy9lcnJvcnMuYzo2OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgImRwa2c6IGZhaWxlZCB0byBhbGxvY2F0ZSBtZW1vcnkgZm9yIG5ldyBlbnRyeSBpbiBsaXN0IG9mIGZhaWxlZCBwYWNrYWdlcy4iCittc2dpZCAiIgorIiVzOiBmYWlsZWQgdG8gYWxsb2NhdGUgbWVtb3J5IGZvciBuZXcgZW50cnkgaW4gbGlzdCBvZiBmYWlsZWQgcGFja2FnZXM6ICVzIgorbXNnc3RyICIiCisiZHBrZzogZmFsaG91IGFvIGFsb2NhciBtZW3Ds3JpYSBwYXJhIG5vdmEgZW50cmFkYSBlbSBsaXN0YSBkZSBwYWNvdGVzIGZhbGhvcy4iCisKKyM6IHNyYy9lcnJvcnMuYzo3OQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZHBrZzogdG9vIG1hbnkgZXJyb3JzLCBzdG9wcGluZ1xuIgorbXNnaWQgIiVzOiB0b28gbWFueSBlcnJvcnMsIHN0b3BwaW5nXG4iCittc2dzdHIgImRwa2c6IGVycm9zIGRlbWFpcywgcGFyYW5kb1xuIgorCisjOiBzcmMvZXJyb3JzLmM6ODcKK21zZ2lkICJFcnJvcnMgd2VyZSBlbmNvdW50ZXJlZCB3aGlsZSBwcm9jZXNzaW5nOlxuIgorbXNnc3RyICJFcnJvcyBmb3JhbSBlbmNvbnRyYWRvcyBkdXJhbnRlIG8gcHJvY2Vzc2FtZW50byBkZTpcbiIKKworIzogc3JjL2Vycm9ycy5jOjk0Cittc2dpZCAiUHJvY2Vzc2luZyB3YXMgaGFsdGVkIGJlY2F1c2UgdGhlcmUgd2VyZSB0b28gbWFueSBlcnJvcnMuXG4iCittc2dzdHIgIlByb2Nlc3NhbWVudG8gcGFyb3UgcG9ycXVlIGhhdmlhIG11aXRvcyBlcnJvcy5cbiIKKworIzogc3JjL2Vycm9ycy5jOjEwNQorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlICVzIHdhcyBvbiBob2xkLCBwcm9jZXNzaW5nIGl0IGFueXdheSBhcyB5b3UgcmVxdWVzdGVkXG4iCittc2dzdHIgIlBhY290ZSAlcyBlc3RhdmEgc2VuZG8gcmV0aWRvLCBwcm9jZXNzYW5kby1vIGFzc2ltIG1lc21vIGNvbW8gcGVkaWRvXG4iCisKKyM6IHNyYy9lcnJvcnMuYzoxMDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlBhY2thZ2UgJXMgaXMgb24gaG9sZCwgbm90IHRvdWNoaW5nIGl0LiAgVXNlIC0tZm9yY2UtaG9sZCB0byBvdmVycmlkZS5cbiIKK21zZ3N0ciAiIgorIlBhY290ZSAlcyBlc3TDoSBzZW5kbyByZXRpZG8sIG7Do28gdm91IHRvY8OhLWxvLiBVc2UgLS1mb3JjZS1ob2xkIHBhcmEgIgorInNvYnJlcG9yLlxuIgorCisjOiBzcmMvZXJyb3JzLmM6MTE5CisjLCBmdXp6eQorbXNnaWQgIm92ZXJyaWRpbmcgcHJvYmxlbSBiZWNhdXNlIC0tZm9yY2UgZW5hYmxlZDoiCittc2dzdHIgIiIKKyJkcGtnIC0gYXZpc28sIGlnbm9yYW5kbyBwcm9ibGVtYSBwb3JxdWUgLS1mb3JjZSBmb2kgaGFiaWxpdGFkbzpcbiIKKyIgIgorCisjOiBzcmMvZmlsZXNkYi5jOjMwNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcyciCittc2dzdHIgImltcG9zc8OtdmVsIGFicmlyIGFycXVpdm8gY29tIGxpc3RhIGRlIGFycXVpdm9zIGRvIHBhY290ZSAnJS4yNTBzJyIKKworIzogc3JjL2ZpbGVzZGIuYzozMTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcycgbWlzc2luZywgYXNzdW1pbmcgcGFja2FnZSBoYXMgbm8gZmlsZXMgIgorImN1cnJlbnRseSBpbnN0YWxsZWQuIgorbXNnc3RyICIiCisiZHBrZzogYXZpc28gc8OpcmlvOiBhcnF1aXZvIGNvbSBsaXN0YSBkZSBhcnF1aXZvcyBkbyBwYWNvdGUgJyUuMjUwcycgZXN0w6EgIgorImZhbHRhbmRvLCBhc3N1bWluZG8gcXVlIG8gcGFjb3RlIG7Do28gdGVtIGFycXVpdm9zIGluc3RhbGFkb3MgYXR1YWxtZW50ZS5cbiIKKworIzogc3JjL2ZpbGVzZGIuYzozMjIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAnJS4yNTBzJyIKK21zZ3N0ciAiaW1wb3Nzw612ZWwgYWJyaXIgYXJxdWl2byBjb20gbGlzdGEgZGUgYXJxdWl2b3MgZG8gcGFjb3RlICclLjI1MHMnIgorCisjOiBzcmMvZmlsZXNkYi5jOjMzMAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZXMgbGlzdCBmb3IgcGFja2FnZSBgJS4yNTBzJyIKK21zZ2lkICJyZWFkaW5nIGZpbGVzIGxpc3QgZm9yIHBhY2thZ2UgJyUuMjUwcyciCittc2dzdHIgImxpc3RhIGRlIGFycXVpdm9zIGRvIHBhY290ZSAnJS4yNTBzJyIKKworIzogc3JjL2ZpbGVzZGIuYzozMzYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAnJS4yNTBzJyBpcyBtaXNzaW5nIGZpbmFsIG5ld2xpbmUiCittc2dzdHIgIiIKKyJhcnF1aXZvIGNvbSBsaXN0YSBkZSBhcnF1aXZvcyBkbyBwYWNvdGUgJyUuMjUwcycgY29udMOpbSBub21lIGRlIGFycXVpdm8gdmF6aW8iCisKKyM6IHNyYy9maWxlc2RiLmM6MzQ0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSBgJS4yNTBzJyBjb250YWlucyBlbXB0eSBmaWxlbmFtZSIKK21zZ3N0ciAiIgorImFycXVpdm8gY29tIGxpc3RhIGRlIGFycXVpdm9zIGRvIHBhY290ZSAnJS4yNTBzJyBjb250w6ltIG5vbWUgZGUgYXJxdWl2byB2YXppbyIKKworIzogc3JjL2ZpbGVzZGIuYzozNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcyciCittc2dzdHIgImVycm8gZmVjaGFuZG8gYXJxdWl2byBjb20gbGlzdGEgZGUgYXJxdWl2b3MgZG8gcGFjb3RlICclLjI1MHMnIgorCisjOiBzcmMvZmlsZXNkYi5jOjQ2MgorbXNnaWQgIihSZWFkaW5nIGRhdGFiYXNlIC4uLiAiCittc2dzdHIgIihMZW5kbyBiYW5jbyBkZSBkYWRvcyAuLi4gIgorCisjOiBzcmMvZmlsZXNkYi5jOjQ4MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiJWQgZmlsZXMgYW5kIGRpcmVjdG9yaWVzIGN1cnJlbnRseSBpbnN0YWxsZWQuKVxuIgorbXNnaWQgIiVkIGZpbGUgb3IgZGlyZWN0b3J5IGN1cnJlbnRseSBpbnN0YWxsZWQuKVxuIgorbXNnaWRfcGx1cmFsICIlZCBmaWxlcyBhbmQgZGlyZWN0b3JpZXMgY3VycmVudGx5IGluc3RhbGxlZC4pXG4iCittc2dzdHJbMF0gIiVkIGFycXVpdm9zIGUgZGlyZXTDs3Jpb3MgYXR1YWxtZW50ZSBpbnN0YWxhZG9zKS5cbiIKK21zZ3N0clsxXSAiJWQgYXJxdWl2b3MgZSBkaXJldMOzcmlvcyBhdHVhbG1lbnRlIGluc3RhbGFkb3MpLlxuIgorCisjOiBzcmMvZmlsZXNkYi5jOjUxNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICIiCisiaW1wb3Nzw612ZWwgY3JpYXIgYXJxdWl2byBjb20gbGlzdGEgZGUgYXJxdWl2b3MgYXR1YWxpemFkb3MgcGFyYSBvIHBhY290ZSAlcyIKKworIzogc3JjL2ZpbGVzZGIuYzo1MjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIHRvIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICIiCisiZmFsaG91IGFvIGVzY3JldmVyIG5vIGFycXVpdm8gY29tIGxpc3RhIGRlIGFycXVpdm9zIGF0dWFsaXphZGEgcGFyYSBvIHBhY290ZSAiCisiJXMiCisKKyM6IHNyYy9maWxlc2RiLmM6NTI4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBmbHVzaCB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAiIgorImZhbGhvdSBhbyBleGVjdXRhciBcImZsdXNoXCIgZG8gYXJxdWl2byBjb20gbGlzdGEgZGUgYXJxdWl2b3MgYXR1YWxpemFkYSAiCisicGFyYSBvIHBhY290ZSAlcyIKKworIzogc3JjL2ZpbGVzZGIuYzo1MzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHN5bmMgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIiIKKyJmYWxob3UgYW8gc2luY3Jvbml6YXIgYXJxdWl2byBjb20gbGlzdGEgZGUgYXJxdWl2b3MgYXR1YWxpemFkYSBwYXJhIG8gcGFjb3RlICIKKyIlcyIKKworIzogc3JjL2ZpbGVzZGIuYzo1MzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNsb3NlIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICIiCisiZmFsaG91IGFvIGZlY2hhciBhcnF1aXZvIGNvbSBsaXN0YSBkZSBhcnF1aXZvcyBhdHVhbGl6YWRhIHBhcmEgbyBwYWNvdGUgJXMiCisKKyM6IHNyYy9maWxlc2RiLmM6NTM1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBpbnN0YWxsIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICIiCisiZmFsaG91IGFvIGluc3RhbGFyIGFycXVpdm8gY29tIGxpc3RhIGRlIGFycXVpdm9zIGF0dWFsaXphZGEgcGFyYSBvIHBhY290ZSAlcyIKKworIzogc3JjL2hlbHAuYzo0OAorbXNnaWQgIm5vdCBpbnN0YWxsZWQiCittc2dzdHIgIm7Do28gaW5zdGFsYWRvIgorCisjOiBzcmMvaGVscC5jOjQ5Cittc2dpZCAibm90IGluc3RhbGxlZCBidXQgY29uZmlncyByZW1haW4iCittc2dzdHIgIm7Do28gaW5zdGFsYWRvIG1hcyBhIGNvbmZpZ3VyYcOnw6NvIHBlcm1hbmVjZSIKKworIzogc3JjL2hlbHAuYzo1MAorbXNnaWQgImJyb2tlbiBkdWUgdG8gZmFpbGVkIHJlbW92YWwgb3IgaW5zdGFsbGF0aW9uIgorbXNnc3RyICJxdWVicmFkbyBkZXZpZG8gYSBmYWxoYSBuYSByZW1vw6fDo28gb3UgaW5zdGFsYcOnw6NvIgorCisjOiBzcmMvaGVscC5jOjUxCittc2dpZCAidW5wYWNrZWQgYnV0IG5vdCBjb25maWd1cmVkIgorbXNnc3RyICJkZXNlbXBhY290YWRvIG1hcyBuw6NvIGNvbmZpZ3VyYWRvIgorCisjOiBzcmMvaGVscC5jOjUyCittc2dpZCAiYnJva2VuIGR1ZSB0byBwb3N0aW5zdCBmYWlsdXJlIgorbXNnc3RyICJxdWVicmFkbyBkZXZpZG8gYSBmYWxoYSBubyBcInBvc3RpbnN0XCIiCisKKyM6IHNyYy9oZWxwLmM6NTMKK21zZ2lkICJhd2FpdGluZyB0cmlnZ2VyIHByb2Nlc3NpbmcgYnkgYW5vdGhlciBwYWNrYWdlIgorbXNnc3RyICJwcm9jZXNzYW1lbnRvIGRlIGdhdGlsaG9zIGVtIGVzcGVyYSBwb3Igb3V0cm8gcGFjb3RlIgorCisjOiBzcmMvaGVscC5jOjU0Cittc2dpZCAidHJpZ2dlcmVkIgorbXNnc3RyICJkaXNwYXJhZG8gcG9yIGdhdGlsaG8iCisKKyM6IHNyYy9oZWxwLmM6NTUKK21zZ2lkICJpbnN0YWxsZWQiCittc2dzdHIgImluc3RhbGFkbyIKKworIzogc3JjL2hlbHAuYzoxMDcKKyMsIGZ1enp5Cittc2dpZCAiUEFUSCBpcyBub3Qgc2V0LiIKK21zZ3N0ciAiZHBrZyAtIGVycm86IFBBVEggbsOjbyBlc3TDoSBkZWZpbmlkby5cbiIKKworIzogc3JjL2hlbHAuYzoxMjkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiclcycgbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuIgorbXNnc3RyICJkcGtnOiAnJXMnIG7Do28gZW5jb250cmFkbyBubyBQQVRILlxuIgorCisjOiBzcmMvaGVscC5jOjEzOAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIiVkIGV4cGVjdGVkIHByb2dyYW0gbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuXG4iCisiJXMiCittc2dpZF9wbHVyYWwgIiIKKyIlZCBleHBlY3RlZCBwcm9ncmFtcyBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS5cbiIKKyIlcyIKK21zZ3N0clswXSAiZHBrZzogJyVzJyBuw6NvIGVuY29udHJhZG8gbm8gUEFUSC5cbiIKK21zZ3N0clsxXSAiZHBrZzogJyVzJyBuw6NvIGVuY29udHJhZG8gbm8gUEFUSC5cbiIKKworIzogc3JjL2hlbHAuYzoxNDEKKyMsIGZ1enp5Cittc2dpZCAiIgorIk5vdGU6IHJvb3QncyBQQVRIIHNob3VsZCB1c3VhbGx5IGNvbnRhaW4gL3Vzci9sb2NhbC9zYmluLCAvdXNyL3NiaW4gYW5kIC8iCisic2Jpbi4iCittc2dzdHIgIiIKKyIlZCBwcm9ncmFtYShzKSBlc3BlcmFkb3MgbsOjbyBlbmNvbnRyYWRvcyBubyBQQVRILlxuIgorIk5vdGE6IG8gUEFUSCBkbyByb290IHVzdWFsbWVudGUgZGV2ZXJpYSBjb250ZXIgL3Vzci9sb2NhbC9zYmluLCAvdXNyL3NiaW4gZSAvIgorInNiaW4uIgorCisjOiBzcmMvaGVscC5jOjE4OAorbXNnaWQgImFkbWluZGlyIG11c3QgYmUgaW5zaWRlIGluc3RkaXIgZm9yIGRwa2cgdG8gd29yayBwcm9wZXJseSIKK21zZ3N0ciAiIgorCisjOiBzcmMvaGVscC5jOjE5MCBzcmMvbWFpbi5jOjc0NworIywgZnV6enkKK21zZ2lkICJ1bmFibGUgdG8gc2V0ZW52IGZvciBzdWJwcm9jZXNzZXMiCittc2dzdHIgImltcG9zc8OtdmVsIGV4ZWN1dGFyIFwic2V0ZW52XCIgcGFyYSBzY3JpcHQgZGUgbWFudGVuZWRvciIKKworIzogc3JjL2hlbHAuYzoxOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNocm9vdCB0byBgJS4yNTBzJyIKK21zZ3N0ciAiZmFsaG91IGFvIGV4ZWN1dGFyIFwiY2hyb290XCIgcGFyYSAnJS4yNTBzJyIKKworIzogc3JjL2hlbHAuYzoxOTQgZHBrZy1kZWIvYnVpbGQuYzo0NTUgZHBrZy1kZWIvYnVpbGQuYzo0NTcKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTM2IGRwa2ctZGViL2J1aWxkLmM6NTU4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byBgJS4yNTVzJyIKK21zZ3N0ciAiZmFsaG91IGFvIG11ZGFyIHBhcmEgbyBkaXJldMOzcmlvICclLjI1NXMnIgorCisjOiBzcmMvaGVscC5jOjI1NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IGV4ZWN1dGUgcGVybWlzc2lvbnMgb24gYCUuMjUwcyciCittc2dzdHIgImltcG9zc8OtdmVsIGRlZmluaXIgcGVybWlzc8O1ZXMgZGUgZXhlY3XDp8OjbyBlbSAnJS4yNTBzJyIKKworIzogc3JjL2hlbHAuYzoyNzYKKyMsIGZ1enp5Cittc2dpZCAidW5hYmxlIHRvIHNldGVudiBmb3IgbWFpbnRhaW5lciBzY3JpcHQiCittc2dzdHIgImltcG9zc8OtdmVsIGV4ZWN1dGFyIFwic2V0ZW52XCIgcGFyYSBzY3JpcHQgZGUgbWFudGVuZWRvciIKKworIzogc3JjL2hlbHAuYzozMDAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImluc3RhbGxlZCAlcyBzY3JpcHQiCittc2dzdHIgImFudGlnbyBzY3JpcHQgJXMiCisKKyM6IHNyYy9oZWxwLmM6MzEzIHNyYy9oZWxwLmM6MzgyIHNyYy9oZWxwLmM6NDQxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0ICVzIGAlLjI1MHMnIgorbXNnc3RyICJpbXBvc3PDrXZlbCBleGVjdXRhciBcInN0YXRcIiBlbSAlcyAnJS4yNTBzJyIKKworIzogc3JjL2hlbHAuYzozNjggc3JjL2hlbHAuYzo0MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAibmV3ICVzIHNjcmlwdCIKK21zZ3N0ciAibm92byBzY3JpcHQgJXMiCisKKyM6IHNyYy9oZWxwLmM6NDAyCisjLCBjLWZvcm1hdAorbXNnaWQgIm9sZCAlcyBzY3JpcHQiCittc2dzdHIgImFudGlnbyBzY3JpcHQgJXMiCisKKyM6IHNyYy9oZWxwLmM6NDE2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCAlcyAnJS4yNTBzJzogJXMiCittc2dzdHIgImltcG9zc8OtdmVsIGV4ZWN1dGFyIFwic3RhdFwiIGVtICVzICclLjI1MHMnIgorCisjOiBzcmMvaGVscC5jOjQyNQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnIC0gdHJ5aW5nIHNjcmlwdCBmcm9tIHRoZSBuZXcgcGFja2FnZSBpbnN0ZWFkIC4uLlxuIgorbXNnc3RyICJkcGtnIC0gdGVudGFuZG8gc2NyaXB0IGRvIG5vdm8gcGFjb3RlIGVtIHZleiBkaXNzbyAuLi5cbiIKKworIzogc3JjL2hlbHAuYzo0MzkKK21zZ2lkICJ0aGVyZSBpcyBubyBzY3JpcHQgaW4gdGhlIG5ldyB2ZXJzaW9uIG9mIHRoZSBwYWNrYWdlIC0gZ2l2aW5nIHVwIgorbXNnc3RyICJuw6NvIGjDoSBzY3JpcHQgbmEgbm92YSB2ZXJzw6NvIGRvIHBhY290ZSAtIGRlc2lzdGluZG8iCisKKyM6IHNyYy9oZWxwLmM6NDQ1CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IC4uLiBpdCBsb29rcyBsaWtlIHRoYXQgd2VudCBPSy5cbiIKK21zZ3N0ciAiZHBrZzogLi4uIHBhcmVjZSBxdWUgYWNhYm91IHR1ZG8gT0suXG4iCisKKyM6IHNyYy9oZWxwLmM6NjE2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2VjdXJlbHkgcmVtb3ZlICclLjI1NXMnIgorbXNnc3RyICJpbXBvc3PDrXZlbCBjcmlhciAnJS4yNTVzJyIKKworIzogc3JjL2hlbHAuYzo2MjEgZHBrZy1kZWIvaW5mby5jOjY1IGRwa2ctZGViL2luZm8uYzo2NworbXNnaWQgInJtIGNvbW1hbmQgZm9yIGNsZWFudXAiCittc2dzdHIgIiIKKworIzogc3JjL2luZm9kYi5jOjUyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGVjayBleGlzdGVuY2Ugb2YgYCUuMjUwcyciCittc2dzdHIgImltcG9zc8OtdmVsIHZlcmlmaWNhciBhIGV4aXN0w6puY2lhIGRlICclLjI1MHMnIgorCisjOiBzcmMvaW5mb2RiLmM6NzAKK21zZ2lkICJjYW5ub3QgcmVhZCBpbmZvIGRpcmVjdG9yeSIKK21zZ3N0ciAibsOjbyBmb2kgcG9zc8OtdmVsIGxlciBkaXJldMOzcmlvIGluZm8iCisKKyM6IHNyYy9tYWluLmM6NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuIGAlcycgcGFja2FnZSBtYW5hZ2VtZW50IHByb2dyYW0gdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiUHJvZ3JhbWEgZGUgZ2VyZW5jaWFtZW50byBkZSBwYWNvdGVzIERlYmlhbiAnJXMnIHZlcnPDo28gJXMuXG4iCisKKyM6IHNyYy9tYWluLmM6ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLWl8LS1pbnN0YWxsICAgICAgIDwuZGViIGZpbGUgbmFtZT4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRpcmVjdG9yeT4gLi4uXG4iCisiICAtLXVucGFjayAgICAgICAgICAgPC5kZWIgZmlsZSBuYW1lPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyZWN0b3J5PiAuLi5cbiIKKyIgIC1BfC0tcmVjb3JkLWF2YWlsICA8LmRlYiBmaWxlIG5hbWU+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXJlY3Rvcnk+IC4uLlxuIgorIiAgLS1jb25maWd1cmUgICAgICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC0tdHJpZ2dlcnMtb25seSAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtcnwtLXJlbW92ZSAgICAgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLVB8LS1wdXJnZSAgICAgICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC0tZ2V0LXNlbGVjdGlvbnMgWzxwYXR0ZXJuPiAuLi5dIEdldCBsaXN0IG9mIHNlbGVjdGlvbnMgdG8gc3Rkb3V0LlxuIgorIiAgLS1zZXQtc2VsZWN0aW9ucyAgICAgICAgICAgICAgICAgU2V0IHBhY2thZ2Ugc2VsZWN0aW9ucyBmcm9tIHN0ZGluLlxuIgorIiAgLS1jbGVhci1zZWxlY3Rpb25zICAgICAgICAgICAgICAgRGVzZWxlY3QgZXZlcnkgbm9uLWVzc2VudGlhbCBwYWNrYWdlLlxuIgorIiAgLS11cGRhdGUtYXZhaWwgPFBhY2thZ2VzLWZpbGU+ICAgUmVwbGFjZSBhdmFpbGFibGUgcGFja2FnZXMgaW5mby5cbiIKKyIgIC0tbWVyZ2UtYXZhaWwgPFBhY2thZ2VzLWZpbGU+ICAgIE1lcmdlIHdpdGggaW5mbyBmcm9tIGZpbGUuXG4iCisiICAtLWNsZWFyLWF2YWlsICAgICAgICAgICAgICAgICAgICBFcmFzZSBleGlzdGluZyBhdmFpbGFibGUgaW5mby5cbiIKKyIgIC0tZm9yZ2V0LW9sZC11bmF2YWlsICAgICAgICAgICAgIEZvcmdldCB1bmluc3RhbGxlZCB1bmF2YWlsYWJsZSBwa2dzLlxuIgorIiAgLXN8LS1zdGF0dXMgPHBhY2thZ2U+IC4uLiAgICAgICAgRGlzcGxheSBwYWNrYWdlIHN0YXR1cyBkZXRhaWxzLlxuIgorIiAgLXB8LS1wcmludC1hdmFpbCA8cGFja2FnZT4gLi4uICAgRGlzcGxheSBhdmFpbGFibGUgdmVyc2lvbiBkZXRhaWxzLlxuIgorIiAgLUx8LS1saXN0ZmlsZXMgPHBhY2thZ2U+IC4uLiAgICAgTGlzdCBmaWxlcyBgb3duZWQnIGJ5IHBhY2thZ2UocykuXG4iCisiICAtbHwtLWxpc3QgWzxwYXR0ZXJuPiAuLi5dICAgICAgICBMaXN0IHBhY2thZ2VzIGNvbmNpc2VseS5cbiIKKyIgIC1TfC0tc2VhcmNoIDxwYXR0ZXJuPiAuLi4gICAgICAgIEZpbmQgcGFja2FnZShzKSBvd25pbmcgZmlsZShzKS5cbiIKKyIgIC1DfC0tYXVkaXQgICAgICAgICAgICAgICAgICAgICAgIENoZWNrIGZvciBicm9rZW4gcGFja2FnZShzKS5cbiIKKyIgIC0tcHJpbnQtYXJjaGl0ZWN0dXJlICAgICAgICAgICAgIFByaW50IGRwa2cgYXJjaGl0ZWN0dXJlLlxuIgorIiAgLS1jb21wYXJlLXZlcnNpb25zIDxhPiA8b3A+IDxiPiAgQ29tcGFyZSB2ZXJzaW9uIG51bWJlcnMgLSBzZWUgYmVsb3cuXG4iCisiICAtLWZvcmNlLWhlbHAgICAgICAgICAgICAgICAgICAgICBTaG93IGhlbHAgb24gZm9yY2luZy5cbiIKKyIgIC1EaHwtLWRlYnVnPWhlbHAgICAgICAgICAgICAgICAgIFNob3cgaGVscCBvbiBkZWJ1Z2dpbmcuXG4iCisiXG4iCittc2dzdHIgIiIKKyJDb21hbmRvczpcbiIKKyIgIC1pfC0taW5zdGFsbCAgICAgICA8YXJxdWl2byAuZGViPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyZXTDs3Jpbz4gLi4uXG4iCisiICAtLXVucGFjayAgICAgICAgICAgPGFycXVpdm8gLmRlYj4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRpcmV0w7NyaW8+IC4uLlxuIgorIiAgLUF8LS1yZWNvcmQtYXZhaWwgIDxhcnF1aXZvIC5kZWI+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXJldMOzcmlvPiAuLi5cbiIKKyIgIC0tY29uZmlndXJlICAgICAgICA8cGFjb3RlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC0tdHJpZ2dlcnMtb25seSAgICA8cGFjb3RlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC1yfC0tcmVtb3ZlICAgICAgICA8cGFjb3RlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC1QfC0tcHVyZ2UgICAgICAgICA8cGFjb3RlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC0tZ2V0LXNlbGVjdGlvbnMgWzxwYWRyw6NvPiAuLi5dICAgT2J0w6ltIGxpc3RhIGRlIHNlbGXDp8O1ZXMgcGFyYSBzdGRvdXQuXG4iCisiICAtLXNldC1zZWxlY3Rpb25zICAgICAgICAgICAgICAgICAgRGVmaW5lIHNlbGXDp8O1ZXMgZGUgcGFjb3RlcyBhIHBhcnRpclxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlIHN0ZGluLlxuIgorIiAgLS1jbGVhci1zZWxlY3Rpb25zICAgICAgICAgICAgICAgIFJlbW92ZSBzZWxlw6fDo28gZGUgY2FkYSBwYWNvdGUgbsOjb1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVzc2VuY2lhbC5cbiIKKyIgIC0tdXBkYXRlLWF2YWlsIDxhcnF1aXZvLVBhY2thZ2VzPiBTdWJzdGl0dWkgaW5mb3JtYcOnw6NvIGRlIHBhY290ZXNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwb27DrXZlaXMuXG4iCisiICAtLW1lcmdlLWF2YWlsIDxhcnF1aXZvLVBhY2thZ2VzPiAgTWVzY2xhIGNvbSBpbmZvcm1hw6fDo28gZG8gYXJxdWl2by5cbiIKKyIgIC0tY2xlYXItYXZhaWwgICAgICAgICAgICAgICAgICAgICBBcGFnYSBpbmZvcm1hw6fDo28gZGUgZGlzcG9uaWJpbGlkYWRlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhpc3RlbnRlLlxuIgorIiAgLS1mb3JnZXQtb2xkLXVuYXZhaWwgICAgICAgICAgICAgIEVzcXVlY2UgcGFjb3RlcyBpbmRpc3BvbsOtdmVpc1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG7Do28taW5zdGFsYWRvcy5cbiIKKyIgIC1zfC0tc3RhdHVzIDxwYWNvdGU+IC4uLiAgICAgICAgICBFeGliZSBkZXRhbGhlcyBkbyBlc3RhZG8gZG9zIHBhY290ZXMuXG4iCisiICAtcHwtLXByaW50LWF2YWlsIDxwYWNvdGU+IC4uLiAgICAgRXhpYmUgZGV0YWxoZXMgZGFzIHZlcnPDtWVzIGRpc3BvbsOtdmVpcy5cbiIKKyIgIC1MfC0tbGlzdGZpbGVzIDxwYWNvdGU+IC4uLiAgICAgICBMaXN0YSBhcnF1aXZvcyBxdWUgcGVydGVuY2VtIGFvKHMpXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFjb3RlKHMpLlxuIgorIiAgLWx8LS1saXN0IFs8cGFkcsOjbz4gLi4uXSAgICAgICAgICBMaXN0YSBwYWNvdGVzIGNvbmNpc2FtZW50ZS5cbiIKKyIgIC1TfC0tc2VhcmNoIDxwYWRyw6NvPiAuLi4gICAgICAgICAgRW5jb250cmEgcGFjb3RlKHMpIHByb3ByaWV0w6FyaW9zIGRlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJxdWl2byhzKS5cbiIKKyIgIC1DfC0tYXVkaXQgICAgICAgICAgICAgICAgICAgICAgICBDaGVjYSBwb3IgcGFjb3RlKHMpIHF1ZWJyYWRvcy5cbiIKKyIgIC0tcHJpbnQtYXJjaGl0ZWN0dXJlICAgICAgICAgICAgICBJbXByaW1lIGFycXVpdGV0dXJhIGRwa2cuXG4iCisiICAtLWNvbXBhcmUtdmVyc2lvbnMgPGE+IDxvcD4gPGI+ICAgQ29tcGFyYSBuw7ptZXJvcyBkZSB2ZXJzw6NvIC0gdmVqYSAiCisiYWJhaXhvLlxuIgorIiAgLS1mb3JjZS1oZWxwICAgICAgICAgICAgICAgICAgICAgIE1vc3RyYSBhanVkYSBzb2JyZSBmb3LDp2FyLlxuIgorIiAgLURofC0tZGVidWc9aGVscCAgICAgICAgICAgICAgICAgIE1vc3RyYSBhanVkYSBzb2JyZSBkZXB1cmHDp8Ojby5cbiIKKyJcbiIKKworIzogc3JjL21haW4uYzoxMTMgc3JjL3F1ZXJ5Y21kLmM6NjMxIHNyYy90cmlnY21kLmM6NzcgZHBrZy1kZWIvbWFpbi5jOjg4CisjOiBkcGtnLXNwbGl0L21haW4uYzo3NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIiAgLWh8LS1oZWxwICAgICAgICAgICAgICAgICAgICAgICAgU2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCittc2dzdHIgIiIKKyIgIC1ofC0taGVscCAgICAgICAgICAgICAgICAgICBNb3N0cmEgZXN0YSBtZW5zYWdlbSBkZSBhanVkYS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgICBNb3N0cmEgYSB2ZXJzw6NvLlxuIgorIiAgLS1saWNlbnNlfC0tbGljZW5jZSAgICAgICAgIE1vc3RyYSBvcyB0ZXJtb3MgZGUgbGljZW5jaWFtZW50byBlICIKKyJjb3B5cmlnaHQuXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTE4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJVc2UgZHBrZyAtYnwtLWJ1aWxkfC1jfC0tY29udGVudHN8LWV8LS1jb250cm9sfC1JfC0taW5mb3wtZnwtLWZpZWxkfFxuIgorIiAteHwtLWV4dHJhY3R8LVh8LS12ZXh0cmFjdHwtLWZzeXMtdGFyZmlsZSAgb24gYXJjaGl2ZXMgKHR5cGUgJXMgLS1oZWxwKS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIlVzZSBkcGtnIC1ifC0tYnVpbGR8LWN8LS1jb250ZW50c3wtZXwtLWNvbnRyb2x8LUl8LS1pbmZvfC1mfC0tZmllbGR8XG4iCisiIC14fC0tZXh0cmFjdHwtWHwtLXZleHRyYWN0fC0tZnN5cy10YXJmaWxlICBlbSBhcnF1aXZvcyAoZGlnaXRlICVzIC0taGVscCkuXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTIzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJGb3IgaW50ZXJuYWwgdXNlOiBkcGtnIC0tYXNzZXJ0LXN1cHBvcnQtcHJlZGVwZW5kcyB8IC0tcHJlZGVwLXBhY2thZ2UgfFxuIgorIiAgLS1hc3NlcnQtd29ya2luZy1lcG9jaCB8IC0tYXNzZXJ0LWxvbmctZmlsZW5hbWVzIHwgLS1hc3NlcnQtbXVsdGktY29ucmVwLlxuIgorIlxuIgorbXNnc3RyICIiCisiUGFyYSB1c28gaW50ZXJubzogZHBrZyAtLWFzc2VydC1zdXBwb3J0LXByZWRlcGVuZHMgfCAtLXByZWRlcC1wYWNrYWdlIHxcbiIKKyIgIC0tYXNzZXJ0LXdvcmtpbmctZXBvY2ggfCAtLWFzc2VydC1sb25nLWZpbGVuYW1lcyB8IC0tYXNzZXJ0LW11bHRpLWNvbnJlcC5cbiIKKyJcbiIKKworIzogc3JjL21haW4uYzoxMjgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJPcHRpb25zOlxuIgorI3wgIiAgLS1hZG1pbmRpcj08ZGlyZWN0b3J5PiAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMuXG4iCisjfCAiICAtLXJvb3Q9PGRpcmVjdG9yeT4gICAgICAgICBJbnN0YWxsIG9uIGEgZGlmZmVyZW50IHJvb3QgZGlyZWN0b3J5LlxuIgorI3wgIiAgLS1pbnN0ZGlyPTxkaXJlY3Rvcnk+ICAgICAgQ2hhbmdlIGluc3RhbGxhdGlvbiBkaXIgd2l0aG91dCBjaGFuZ2luZyAiCisjfCAiYWRtaW4gZGlyLlxuIgorI3wgIiAgLU98LS1zZWxlY3RlZC1vbmx5ICAgICAgICAgU2tpcCBwYWNrYWdlcyBub3Qgc2VsZWN0ZWQgZm9yIGluc3RhbGwvIgorI3wgInVwZ3JhZGUuXG4iCisjfCAiICAtRXwtLXNraXAtc2FtZS12ZXJzaW9uICAgICBTa2lwIHBhY2thZ2VzIHdob3NlIHNhbWUgdmVyc2lvbiBpcyAiCisjfCAiaW5zdGFsbGVkLlxuIgorI3wgIiAgLUd8LS1yZWZ1c2UtZG93bmdyYWRlICAgICAgU2tpcCBwYWNrYWdlcyB3aXRoIGVhcmxpZXIgdmVyc2lvbiB0aGFuICIKKyN8ICJpbnN0YWxsZWQuXG4iCisjfCAiICAtQnwtLWF1dG8tZGVjb25maWd1cmUgICAgICBJbnN0YWxsIGV2ZW4gaWYgaXQgd291bGQgYnJlYWsgc29tZSBvdGhlciAiCisjfCAicGFja2FnZS5cbiIKKyN8ICIgIC0tW25vLV10cmlnZ2VycyAgICAgICAgICAgIFNraXAgb3IgZm9yY2UgY29uc2VxdWVudGlhbCB0cmlnZ2VyICIKKyN8ICJwcm9jZXNzaW5nLlxuIgorI3wgIiAgLS1uby1kZWJzaWcgICAgICAgICAgICAgICAgRG8gbm90IHRyeSB0byB2ZXJpZnkgcGFja2FnZSBzaWduYXR1cmVzLlxuIgorI3wgIiAgLS1uby1hY3R8LS1kcnktcnVufC0tc2ltdWxhdGVcbiIKKyN8ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEp1c3Qgc2F5IHdoYXQgd2Ugd291bGQgZG8gLSBkb24ndCBkbyBpdC5cbiIKKyN8ICIgIC1EfC0tZGVidWc9PG9jdGFsPiAgICAgICAgIEVuYWJsZSBkZWJ1Z2dpbmcgKHNlZSAtRGhlbHAgb3IgLS0iCisjfCAiZGVidWc9aGVscCkuXG4iCisjfCAiICAtLXN0YXR1cy1mZCA8bj4gICAgICAgICAgICBTZW5kIHN0YXR1cyBjaGFuZ2UgdXBkYXRlcyB0byBmaWxlICIKKyN8ICJkZXNjcmlwdG9yIDxuPi5cbiIKKyN8ICIgIC0tbG9nPTxmaWxlbmFtZT4gICAgICAgICAgIExvZyBzdGF0dXMgY2hhbmdlcyBhbmQgYWN0aW9ucyB0byAiCisjfCAiPGZpbGVuYW1lPi5cbiIKKyN8ICIgIC0taWdub3JlLWRlcGVuZHM9PHBhY2thZ2U+LC4uLlxuIgorI3wgIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSWdub3JlIGRlcGVuZGVuY2llcyBpbnZvbHZpbmcgPHBhY2thZ2U+LlxuIgorI3wgIiAgLS1mb3JjZS0uLi4gICAgICAgICAgICAgICAgT3ZlcnJpZGUgcHJvYmxlbXMgKHNlZSAtLWZvcmNlLWhlbHApLlxuIgorI3wgIiAgLS1uby1mb3JjZS0uLi58LS1yZWZ1c2UtLi4uXG4iCisjfCAiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9wIHdoZW4gcHJvYmxlbXMgZW5jb3VudGVyZWQuXG4iCisjfCAiICAtLWFib3J0LWFmdGVyIDxuPiAgICAgICAgICBBYm9ydCBhZnRlciBlbmNvdW50ZXJpbmcgPG4+IGVycm9ycy5cbiIKKyN8ICJcbiIKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT4gICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorIiAgLS1yb290PTxkaXJlY3Rvcnk+ICAgICAgICAgSW5zdGFsbCBvbiBhIGRpZmZlcmVudCByb290IGRpcmVjdG9yeS5cbiIKKyIgIC0taW5zdGRpcj08ZGlyZWN0b3J5PiAgICAgIENoYW5nZSBpbnN0YWxsYXRpb24gZGlyIHdpdGhvdXQgY2hhbmdpbmcgYWRtaW4gIgorImRpci5cbiIKKyIgIC0tcGF0aC1leGNsdWRlPTxwYXR0ZXJuPiAgIERvIG5vdCBpbnN0YWxsIHBhdGhzIHdoaWNoIG1hdGNoIGEgc2hlbGwgIgorInBhdHRlcm4uXG4iCisiICAtLXBhdGgtaW5jbHVkZT08cGF0dGVybj4gICBSZS1pbmNsdWRlIGEgcGF0dGVybiBhZnRlciBhIHByZXZpb3VzICIKKyJleGNsdXNpb24uXG4iCisiICAtT3wtLXNlbGVjdGVkLW9ubHkgICAgICAgICBTa2lwIHBhY2thZ2VzIG5vdCBzZWxlY3RlZCBmb3IgaW5zdGFsbC8iCisidXBncmFkZS5cbiIKKyIgIC1FfC0tc2tpcC1zYW1lLXZlcnNpb24gICAgIFNraXAgcGFja2FnZXMgd2hvc2Ugc2FtZSB2ZXJzaW9uIGlzIGluc3RhbGxlZC5cbiIKKyIgIC1HfC0tcmVmdXNlLWRvd25ncmFkZSAgICAgIFNraXAgcGFja2FnZXMgd2l0aCBlYXJsaWVyIHZlcnNpb24gdGhhbiAiCisiaW5zdGFsbGVkLlxuIgorIiAgLUJ8LS1hdXRvLWRlY29uZmlndXJlICAgICAgSW5zdGFsbCBldmVuIGlmIGl0IHdvdWxkIGJyZWFrIHNvbWUgb3RoZXIgIgorInBhY2thZ2UuXG4iCisiICAtLVtuby1ddHJpZ2dlcnMgICAgICAgICAgICBTa2lwIG9yIGZvcmNlIGNvbnNlcXVlbnRpYWwgdHJpZ2dlciAiCisicHJvY2Vzc2luZy5cbiIKKyIgIC0tbm8tZGVic2lnICAgICAgICAgICAgICAgIERvIG5vdCB0cnkgdG8gdmVyaWZ5IHBhY2thZ2Ugc2lnbmF0dXJlcy5cbiIKKyIgIC0tbm8tYWN0fC0tZHJ5LXJ1bnwtLXNpbXVsYXRlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBKdXN0IHNheSB3aGF0IHdlIHdvdWxkIGRvIC0gZG9uJ3QgZG8gaXQuXG4iCisiICAtRHwtLWRlYnVnPTxvY3RhbD4gICAgICAgICBFbmFibGUgZGVidWdnaW5nIChzZWUgLURoZWxwIG9yIC0tZGVidWc9aGVscCkuXG4iCisiICAtLXN0YXR1cy1mZCA8bj4gICAgICAgICAgICBTZW5kIHN0YXR1cyBjaGFuZ2UgdXBkYXRlcyB0byBmaWxlIGRlc2NyaXB0b3IgIgorIjxuPi5cbiIKKyIgIC0tbG9nPTxmaWxlbmFtZT4gICAgICAgICAgIExvZyBzdGF0dXMgY2hhbmdlcyBhbmQgYWN0aW9ucyB0byA8ZmlsZW5hbWU+LlxuIgorIiAgLS1pZ25vcmUtZGVwZW5kcz08cGFja2FnZT4sLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZ25vcmUgZGVwZW5kZW5jaWVzIGludm9sdmluZyA8cGFja2FnZT4uXG4iCisiICAtLWZvcmNlLS4uLiAgICAgICAgICAgICAgICBPdmVycmlkZSBwcm9ibGVtcyAoc2VlIC0tZm9yY2UtaGVscCkuXG4iCisiICAtLW5vLWZvcmNlLS4uLnwtLXJlZnVzZS0uLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3Agd2hlbiBwcm9ibGVtcyBlbmNvdW50ZXJlZC5cbiIKKyIgIC0tYWJvcnQtYWZ0ZXIgPG4+ICAgICAgICAgIEFib3J0IGFmdGVyIGVuY291bnRlcmluZyA8bj4gZXJyb3JzLlxuIgorIlxuIgorbXNnc3RyICIiCisiT3DDp8O1ZXM6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgICBVc2EgPGRpcmV0w7NyaW8+IGFvIGludsOpcyBkZSAlcy5cbiIKKyIgIC0tcm9vdD08ZGlyZXTDs3Jpbz4gICAgICAgICBJbnN0YWxhIGVtIHVtIGRpcmV0w7NyaW8gcmFpeiBkaWZlcmVudGUuXG4iCisiICAtLWluc3RkaXI9PGRpcmV0w7NyaW8+ICAgICAgTXVkYSBkaXJldMOzcmlvIGRlIGluc3RhbGHDp8OjbyBzZW0gbXVkYXJcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpcmV0w7NyaW8gYWRtaW5pc3RyYXRpdm8uXG4iCisiICAtT3wtLXNlbGVjdGVkLW9ubHkgICAgICAgICBQdWxhIHBhY290ZXMgbsOjbyBzZWxlY2lvbmFkb3MgcGFyYVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5zdGFsYcOnw6NvL2F0dWFsaXphw6fDo28uXG4iCisiICAtRXwtLXNraXAtc2FtZS12ZXJzaW9uICAgICBQdWxhIHBhY290ZXMgY3VqYSBtZXNtYSB2ZXJzw6NvIGVzdMOhIGluc3RhbGFkYS5cbiIKKyIgIC1HfC0tcmVmdXNlLWRvd25ncmFkZSAgICAgIFB1bGEgcGFjb3RlcyBjb20gdmVyc8OjbyBhbnRlcmlvciDDoCB2ZXJzw6NvXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnN0YWxhZGFcbiIKKyIgIC1CfC0tYXV0by1kZWNvbmZpZ3VyZSAgICAgIEluc3RhbGEgbWVzbW8gcXVlIGlzc28gcXVlYnJlIGFsZ3VucyBvdXRyb3NcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhY290ZXMuXG4iCisiICAtLVtuby1ddHJpZ2dlcnMgICAgICAgICAgICBQdWxhIG91IGZvcsOnYSBvIHByb2Nlc3NhbWVudG8gZGUgZ2F0aWxob3NcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNlccO8ZW50ZXMuXG4iCisiICAtLW5vLWRlYnNpZyAgICAgICAgICAgICAgICBOw6NvIHRlbnRhIHZlcmlmaWNhciBhcyBhc3NpbmF0dXJhcyBkZSBwYWNvdGVzLlxuIgorIiAgLS1uby1hY3R8LS1kcnktcnVufC0tc2ltdWxhdGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNvbWVudGUgZGl6IG8gcXVlIHNlcmlhIGZlaXRvIC0gbsOjbyBvIGZhw6dhLlxuIgorIiAgLUR8LS1kZWJ1Zz08b2N0YWw+ICAgICAgICAgSGFiaWxpdGEgZGVwdXJhw6fDo28gKHZlamEgLURoZWxwIG91IC0tIgorImRlYnVnPWhlbHApLlxuIgorIiAgLS1zdGF0dXMtZmQgPG4+ICAgICAgICAgICAgRW52aWEgYXR1YWxpemHDp8O1ZXMgZGUgbXVkYW7Dp2EgZGUgZXN0YWRvIHBhcmFcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG8gZGVzY3JpdG9yIGRlIGFycXVpdm8gPG4+LlxuIgorIiAgLS1sb2c9PG5vbWUtZG8tYXJxdWl2bz4gICAgTXVkYW7Dp2FzIGRlIGVzdGFkbyBkbyBsb2cgZSBhw6fDtWVzIHBhcmFcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxub21lLWRvLWFycXVpdm8+LlxuIgorIiAgLS1pZ25vcmUtZGVwZW5kcz08cGFjb3RlPiwuLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIElnbm9yYSBkZXBlbmTDqm5jaWFzIGVudm9sdmVuZG8gPHBhY290ZT4uXG4iCisiICAtLWZvcmNlLS4uLiAgICAgICAgICAgICAgICBTb2JyZXBvciBwcm9ibGVtYXMgKHZlamEgLS1mb3JjZS1oZWxwKS5cbiIKKyIgIC0tbm8tZm9yY2UtLi4ufC0tcmVmdXNlLS4uLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUGFyYSBxdWFuZG8gcHJvYmxlbWFzIHPDo28gZW5jb250cmFkb3MuXG4iCisiICAtLWFib3J0LWFmdGVyIDxuPiAgICAgICAgICBBYm9ydGEgYXDDs3MgZW5jb250cmFyIDxuPiBlcnJvcy5cbiIKKyJcbiIKKworIzogc3JjL21haW4uYzoxNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbXBhcmlzb24gb3BlcmF0b3JzIGZvciAtLWNvbXBhcmUtdmVyc2lvbnMgYXJlOlxuIgorIiAgbHQgbGUgZXEgbmUgZ2UgZ3QgICAgICAgKHRyZWF0IGVtcHR5IHZlcnNpb24gYXMgZWFybGllciB0aGFuIGFueSAiCisidmVyc2lvbik7XG4iCisiICBsdC1ubCBsZS1ubCBnZS1ubCBndC1ubCAodHJlYXQgZW1wdHkgdmVyc2lvbiBhcyBsYXRlciB0aGFuIGFueSB2ZXJzaW9uKTtcbiIKKyIgIDwgPDwgPD0gPSA+PSA+PiA+ICAgICAgIChvbmx5IGZvciBjb21wYXRpYmlsaXR5IHdpdGggY29udHJvbCBmaWxlICIKKyJzeW50YXgpLlxuIgorIlxuIgorbXNnc3RyICIiCisiT3BlcmFkb3JlcyBkZSBjb21wYXJhw6fDo28gcGFyYSAtLWNvbXBhcmUtdmVyc2lvbnMgc8OjbzpcbiIKKyIgIGx0IGxlIGVxIG5lIGdlIGd0ICAgICAgICh0cmF0YSB2ZXJzw6NvIHZhemlhIGNvbW8gYW50ZXJpb3IgYSBxdWFscXVlclxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdXRyYSB2ZXJzw6NvKTtcbiIKKyIgIGx0LW5sIGxlLW5sIGdlLW5sIGd0LW5sICh0cmF0YSB2ZXJzw6NvIHZhemlhIGNvbW8gcG9zdGVyaW9yIGEgcXVhbHF1ZXJcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3V0cmEgdmVyc8Ojbyk7XG4iCisiICA8IDw8IDw9ID0gPj0gPj4gPiAgICAgICAoc29tZW50ZSBwYXJhIGNvbXBhdGliaWxpZGFkZSBjb20gYSBzaW50YXhlIGRvXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFycXVpdm8gZGUgY29udHJvbGUpLlxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjE2MQorIywgYy1mb3JtYXQKK21zZ2lkICJVc2UgYGRzZWxlY3QnIG9yIGBhcHRpdHVkZScgZm9yIHVzZXItZnJpZW5kbHkgcGFja2FnZSBtYW5hZ2VtZW50LlxuIgorbXNnc3RyICJVc2UgJ2RzZWxlY3QnIG91ICdhcHRpdHVkZScgcGFyYSBnZXJlbmNpYW1lbnRvIGFtaWfDoXZlbCBkZSBwYWNvdGVzLlxuIgorCisjOiBzcmMvbWFpbi5jOjE3MAorIywgZnV6enkKK21zZ2lkICIiCisiVHlwZSBkcGtnIC0taGVscCBmb3IgaGVscCBhYm91dCBpbnN0YWxsaW5nIGFuZCBkZWluc3RhbGxpbmcgcGFja2FnZXMgWypdO1xuIgorIlVzZSBgZHNlbGVjdCcgb3IgYGFwdGl0dWRlJyBmb3IgdXNlci1mcmllbmRseSBwYWNrYWdlIG1hbmFnZW1lbnQ7XG4iCisiVHlwZSBkcGtnIC1EaGVscCBmb3IgYSBsaXN0IG9mIGRwa2cgZGVidWcgZmxhZyB2YWx1ZXM7XG4iCisiVHlwZSBkcGtnIC0tZm9yY2UtaGVscCBmb3IgYSBsaXN0IG9mIGZvcmNpbmcgb3B0aW9ucztcbiIKKyJUeXBlIGRwa2ctZGViIC0taGVscCBmb3IgaGVscCBhYm91dCBtYW5pcHVsYXRpbmcgKi5kZWIgZmlsZXM7XG4iCisiXG4iCisiT3B0aW9ucyBtYXJrZWQgWypdIHByb2R1Y2UgYSBsb3Qgb2Ygb3V0cHV0IC0gcGlwZSBpdCB0aHJvdWdoIGBsZXNzJyBvciAiCisiYG1vcmUnICEiCittc2dzdHIgIiIKKyJEaWdpdGUgZHBrZyAtLWhlbHAgcGFyYSBhanVkYSBzb2JyZSBpbnN0YWxhw6fDo28gZSByZW1vw6fDo28gZGUgcGFjb3RlcyBbKl07XG4iCisiVXNlICdkc2VsZWN0JyBvdSAnYXB0aXR1ZGUnIHBhcmEgZ2VyZW5jaWFtZW50byBhbWlnw6F2ZWwgZGUgcGFjb3RlcztcbiIKKyJEaWdpdGUgZHBrZyAtRGhlbHAgcGFyYSB1bWEgbGlzdGEgZGUgdmFsb3JlcyBkZSBcImZsYWdzXCIgZGUgZGVwdXJhw6fDo28gZG8gIgorImRwa2c7XG4iCisiRGlnaXRlIGRwa2cgLS1mb3JjZS1oZWxwIHBhcmEgdW1hIGxpc3RhIGRlIG9ww6fDtWVzIHBhcmEgZm9yw6dhciBvcGVyYcOnw7VlcztcbiIKKyJEaWdpdGUgZHBrZy1kZWIgLS1oZWxwIHBhcmEgYWp1ZGEgc29icmUgbWFuaXB1bGHDp8OjbyBkZSBhcnF1aXZvcyAqLmRlYjtcbiIKKyJEaWdpdGUgZHBrZyAtLWxpY2Vuc2UgcGFyYSBsaWNlbmNpYW1lbnRvIGUgZmFsdGEgZGUgZ2FyYW50aWEgKEdOVSBHUEwpIFsqXS5cbiIKKyJcbiIKKyJPcMOnw7VlcyBtYXJjYWRhcyBjb20gWypdIHByb2R1emVtIG11aXRhIHNhw61kYSBkZSB0ZXh0byAtIHBhc3NlLWEgcG9yICdsZXNzJyAiCisib3UgJ21vcmUnICEiCisKKyM6IHNyYy9tYWluLmM6MjE5Cittc2dpZCAiU2V0IGFsbCBmb3JjZSBvcHRpb25zIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjIxCittc2dpZCAiUmVwbGFjZSBhIHBhY2thZ2Ugd2l0aCBhIGxvd2VyIHZlcnNpb24iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjMKK21zZ2lkICJDb25maWd1cmUgYW55IHBhY2thZ2Ugd2hpY2ggbWF5IGhlbHAgdGhpcyBvbmUiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjUKK21zZ2lkICJQcm9jZXNzIGluY2lkZW50YWwgcGFja2FnZXMgZXZlbiB3aGVuIG9uIGhvbGQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjcKK21zZ2lkICJUcnkgdG8gKGRlKWluc3RhbGwgdGhpbmdzIGV2ZW4gd2hlbiBub3Qgcm9vdCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIyOQorbXNnaWQgIlBBVEggaXMgbWlzc2luZyBpbXBvcnRhbnQgcHJvZ3JhbXMsIHByb2JsZW1zIGxpa2VseSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzMQorbXNnaWQgIkluc3RhbGwgYSBwYWNrYWdlIGV2ZW4gaWYgaXQgZmFpbHMgYXV0aGVudGljaXR5IGNoZWNrIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjMzCittc2dpZCAiUHJvY2VzcyBldmVuIHBhY2thZ2VzIHdpdGggd3JvbmcgdmVyc2lvbnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzUKK21zZ2lkICJPdmVyd3JpdGUgYSBmaWxlIGZyb20gb25lIHBhY2thZ2Ugd2l0aCBhbm90aGVyIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjM3Cittc2dpZCAiT3ZlcndyaXRlIGEgZGl2ZXJ0ZWQgZmlsZSB3aXRoIGFuIHVuZGl2ZXJ0ZWQgdmVyc2lvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzOQorbXNnaWQgIk92ZXJ3cml0ZSBvbmUgcGFja2FnZSdzIGRpcmVjdG9yeSB3aXRoIGFub3RoZXIncyBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjQxCittc2dpZCAiRG8gbm90IHBlcmZvcm0gc2FmZSBJL08gb3BlcmF0aW9ucyB3aGVuIHVucGFja2luZyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI0MworbXNnaWQgIkFsd2F5cyB1c2UgdGhlIG5ldyBjb25maWcgZmlsZXMsIGRvbid0IHByb21wdCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI0NQorbXNnaWQgIkFsd2F5cyB1c2UgdGhlIG9sZCBjb25maWcgZmlsZXMsIGRvbid0IHByb21wdCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI0OAorbXNnaWQgIiIKKyJVc2UgdGhlIGRlZmF1bHQgb3B0aW9uIGZvciBuZXcgY29uZmlnIGZpbGVzIGlmIG9uZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICBpcyBhdmFpbGFibGUsIGRvbid0IHByb21wdC4gSWYgbm8gZGVmYXVsdCBjYW4gYmUgIgorImZvdW5kLFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICB5b3Ugd2lsbCBiZSBwcm9tcHRlZCB1bmxlc3Mgb25lIG9mIHRoZSBjb25mb2xkIG9yXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmZuZXcgb3B0aW9ucyBpcyBhbHNvIGdpdmVuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjUzCittc2dpZCAiQWx3YXlzIGluc3RhbGwgbWlzc2luZyBjb25maWcgZmlsZXMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNTUKK21zZ2lkICJPZmZlciB0byByZXBsYWNlIGNvbmZpZyBmaWxlcyB3aXRoIG5vIG5ldyB2ZXJzaW9ucyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI1NworbXNnaWQgIlByb2Nlc3MgZXZlbiBwYWNrYWdlcyB3aXRoIHdyb25nIG9yIG5vIGFyY2hpdGVjdHVyZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI1OQorbXNnaWQgIkluc3RhbGwgZXZlbiBpZiBpdCB3b3VsZCBicmVhayBhbm90aGVyIHBhY2thZ2UiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNjEKK21zZ2lkICJBbGxvdyBpbnN0YWxsYXRpb24gb2YgY29uZmxpY3RpbmcgcGFja2FnZXMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNjMKKyMsIGZ1enp5CisjfCBtc2dpZCAiZGVwZW5kZW5jeSBwcm9ibGVtcyAtIG5vdCByZW1vdmluZyIKK21zZ2lkICJUdXJuIGFsbCBkZXBlbmRlbmN5IHByb2JsZW1zIGludG8gd2FybmluZ3MiCittc2dzdHIgInByb2JsZW1hcyBkZSBkZXBlbmTDqm5jaWEgLSBuw6NvIHJlbW92ZW5kbyIKKworIzogc3JjL21haW4uYzoyNjUKKyMsIGZ1enp5CisjfCBtc2dpZCAiZGVwZW5kZW5jeSBwcm9ibGVtcyAtIG5vdCByZW1vdmluZyIKK21zZ2lkICJUdXJuIGRlcGVuZGVuY3kgdmVyc2lvbiBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzIgorbXNnc3RyICJwcm9ibGVtYXMgZGUgZGVwZW5kw6puY2lhIC0gbsOjbyByZW1vdmVuZG8iCisKKyM6IHNyYy9tYWluLmM6MjY3Cittc2dpZCAiUmVtb3ZlIHBhY2thZ2VzIHdoaWNoIHJlcXVpcmUgaW5zdGFsbGF0aW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjY5Cittc2dpZCAiUmVtb3ZlIGFuIGVzc2VudGlhbCBwYWNrYWdlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjgxCittc2dpZCAiR2VuZXJhbGx5IGhlbHBmdWwgcHJvZ3Jlc3MgaW5mb3JtYXRpb24iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODIKKyMsIGZ1enp5Cittc2dpZCAiSW52b2NhdGlvbiBhbmQgc3RhdHVzIG9mIG1haW50YWluZXIgc2NyaXB0cyIKK21zZ3N0ciAiaW1wb3Nzw612ZWwgZXhlY3V0YXIgXCJzZXRlbnZcIiBwYXJhIHNjcmlwdCBkZSBtYW50ZW5lZG9yIgorCisjOiBzcmMvbWFpbi5jOjI4MworbXNnaWQgIk91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4NAorbXNnaWQgIkxvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg1CisjLCBmdXp6eQorI3wgbXNnaWQgInJlYWQgZXJyb3IgaW4gY29uZmlndXJhdGlvbiBmaWxlIGAlLjI1NXMnIgorbXNnaWQgIk91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGUiCittc2dzdHIgImVycm8gZGUgbGVpdHVyYSBubyBhcnF1aXZvIGRlIGNvbmZpZ3VyYcOnw6NvICclLjI1NXMnIgorCisjOiBzcmMvbWFpbi5jOjI4NgorbXNnaWQgIkxvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4NworbXNnaWQgIkRlcGVuZGVuY2llcyBhbmQgY29uZmxpY3RzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg4Cittc2dpZCAiTG90cyBvZiBkZXBlbmRlbmNpZXMvY29uZmxpY3RzIG91dHB1dCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4OQorbXNnaWQgIlRyaWdnZXIgYWN0aXZhdGlvbiBhbmQgcHJvY2Vzc2luZyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MAorbXNnaWQgIkxvdHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2VycyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MQorbXNnaWQgIlNpbGx5IGFtb3VudHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2VycyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MgorbXNnaWQgIkxvdHMgb2YgZHJpdmVsIGFib3V0IGVnIHRoZSBkcGtnL2luZm8gZGlyZWN0b3J5IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjkzCittc2dpZCAiSW5zYW5lIGFtb3VudHMgb2YgZHJpdmVsIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MzA0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlcyBkZWJ1Z2dpbmcgb3B0aW9uLCAtLWRlYnVnPTxvY3RhbD4gb3IgLUQ8b2N0YWw+OlxuIgorIlxuIgorIiBOdW1iZXIgIFJlZi4gaW4gc291cmNlICAgRGVzY3JpcHRpb25cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjMxMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiRGVidWdnaW5nIG9wdGlvbnMgY2FuIGJlIG1peGVkIHVzaW5nIGJpdHdpc2Utb3IuXG4iCisiTm90ZSB0aGF0IHRoZSBtZWFuaW5ncyBhbmQgdmFsdWVzIGFyZSBzdWJqZWN0IHRvIGNoYW5nZS5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjMxOQorbXNnaWQgIi0tZGVidWcgcmVxdWlyZXMgYW4gb2N0YWwgYXJndW1lbnQiCittc2dzdHIgIi0tZGVidWcgcmVxdWVyIHVtIGFyZ3VtZW50byBvY3RhbCIKKworIzogc3JjL21haW4uYzozNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAibnVsbCBwYWNrYWdlIG5hbWUgaW4gLS1pZ25vcmUtZGVwZW5kcyBjb21tYS1zZXBhcmF0ZWQgbGlzdCBgJS4yNTBzJyIKK21zZ3N0ciAiIgorIm5vbWUgZGUgcGFjb3RlIG51bG8gbmEgbGlzdGEgc2VwYXJhZGEgcG9yIHbDrXJndWxhcyBlbSAtLWlnbm9yZS1kZXBlbmRzICIKKyInJS4yNTBzJyIKKworIzogc3JjL21haW4uYzozNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS1pZ25vcmUtZGVwZW5kcyByZXF1aXJlcyBhIGxlZ2FsIHBhY2thZ2UgbmFtZS4gYCUuMjUwcycgaXMgbm90OyAlcyIKK21zZ3N0ciAiLS1pZ25vcmUtZGVwZW5kcyByZXF1ZXIgdW0gbm9tZSBkZSBwYWNvdGUgdsOhbGlkby4gJyUuMjUwcycgbsOjbyDDqTsgJXMiCisKKyM6IHNyYy9tYWluLmM6MzcxIHNyYy9tYWluLmM6MzgxIHNyYy9tYWluLmM6NjQ5IGRwa2ctc3BsaXQvbWFpbi5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGludGVnZXIgZm9yIC0tJXM6IGAlLjI1MHMnIgorbXNnc3RyICJpbnRlaXJvIGludsOhbGlkbyBwYXJhIC0tJXM6ICclLjI1MHMnIgorCisjOiBzcmMvbWFpbi5jOjQzOAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBleGVjdXRpbmcgaG9vayAnJXMnLCBleGl0IGNvZGUgJWQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzo0NjUKK21zZ2lkICJzdGF0dXMgbG9nZ2VyIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6NDgwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlcyBmb3JjaW5nIG9wdGlvbnMgLSBjb250cm9sIGJlaGF2aW91ciB3aGVuIHByb2JsZW1zIGZvdW5kOlxuIgorIiAgd2FybiBidXQgY29udGludWU6ICAtLWZvcmNlLTx0aGluZz4sPHRoaW5nPiwuLi5cbiIKKyIgIHN0b3Agd2l0aCBlcnJvcjogICAgLS1yZWZ1c2UtPHRoaW5nPiw8dGhpbmc+LC4uLiB8IC0tbm8tZm9yY2UtPHRoaW5nPiwuLi5cbiIKKyIgRm9yY2luZyB0aGluZ3M6XG4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzo0OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIldBUk5JTkcgLSB1c2Ugb2Ygb3B0aW9ucyBtYXJrZWQgWyFdIGNhbiBzZXJpb3VzbHkgZGFtYWdlIHlvdXIgaW5zdGFsbGF0aW9uLlxuIgorIkZvcmNpbmcgb3B0aW9ucyBtYXJrZWQgWypdIGFyZSBlbmFibGVkIGJ5IGRlZmF1bHQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzo1MDQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBmb3JjZS9yZWZ1c2Ugb3B0aW9uIGAlLipzJyIKK21zZ3N0ciAib3DDp8OjbyBkZSBmb3LDp2FyL3JlY3VzYXIgJyUuKnMnIGRlc2NvbmhlY2lkYSIKKworIzogc3JjL21haW4uYzo1MTMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIm9ic29sZXRlIGZvcmNlL3JlZnVzZSBvcHRpb24gJyVzJ1xuIgorbXNnc3RyICJBdmlzbzogb3DDp8OjbyBmb3LDp2FyL3JlY3VzYXIgb2Jzb2xldGEgJyVzJ1xuIgorCisjOiBzcmMvbWFpbi5jOjY0MworbXNnaWQgIi0tY29tbWFuZC1mZCB0YWtlcyBvbmUgYXJndW1lbnQsIG5vdCB6ZXJvIgorbXNnc3RyICItLWNvbW1hbmQtZmQgYWNlaXRhIHVtIGFyZ3VtZW50bywgbsOjbyB6ZXJvIgorCisjOiBzcmMvbWFpbi5jOjY0NQorbXNnaWQgIi0tY29tbWFuZC1mZCBvbmx5IHRha2VzIG9uZSBhcmd1bWVudCIKK21zZ3N0ciAiLS1jb21tYW5kLWZkIGFjZWl0YSBzb21lbnRlIHVtIGFyZ3VtZW50byIKKworIzogc3JjL21haW4uYzo2NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGRuJ3Qgb3BlbiBgJWknIGZvciBzdHJlYW0iCittc2dzdHIgIm7Do28gZm9pIHBvc3PDrXZlbCBhYnJpciAnJWknIHBhcmEgXCJzdHJlYW1cIiIKKworIzogc3JjL21haW4uYzo2NzYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgYmVmb3JlIGVuZCBvZiBsaW5lICVkIgorbXNnc3RyICJmaW0gZGUgYXJxdWl2byBpbmVzcGVyYWRvIGFww7NzIGZpbSBkYSBsaW5oYSAlZCIKKworIzogc3JjL21haW4uYzo3MTkgc3JjL21haW4uYzo3NDEgc3JjL3F1ZXJ5Y21kLmM6NjkyIHNyYy9zdGF0Y21kLmM6Mzc5CisjOiBkcGtnLWRlYi9tYWluLmM6MjAxIGRwa2ctc3BsaXQvbWFpbi5jOjE2MworbXNnaWQgIm5lZWQgYW4gYWN0aW9uIG9wdGlvbiIKK21zZ3N0ciAibmVjZXNzw6FyaW8gdW1hIG9ww6fDo28gZGUgYcOnw6NvIgorCisjOiBzcmMvcGFja2FnZXMuYzoxMTMKK21zZ2lkICIiCisieW91IG11c3Qgc3BlY2lmeSBwYWNrYWdlcyBieSB0aGVpciBvd24gbmFtZXMsIG5vdCBieSBxdW90aW5nIHRoZSBuYW1lcyBvZiAiCisidGhlIGZpbGVzIHRoZXkgY29tZSBpbiIKK21zZ3N0ciAiIgorInZvY8OqIGRldmUgZXNwZWNpZmljYXIgcGFjb3RlcyBjb20gc2V1cyBwcsOzcHJpb3Mgbm9tZXMsIG7Do28gcGVsYSBjaXRhw6fDo28gZG9zICIKKyJub21lcyBkb3MgYXJxdWl2b3Mgbm9zIHF1YWlzIGVsZXMgdsOqbSIKKworIzogc3JjL3BhY2thZ2VzLmM6MTMzCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgLS1wZW5kaW5nIGRvZXMgbm90IHRha2UgYW55IG5vbi1vcHRpb24gYXJndW1lbnRzIgorbXNnc3RyICItLSVzIC0tcGVuZGluZyBuw6NvIGFjZWl0YSBhcmd1bWVudG8gcXVlIG7Do28gc2VqYSBvcMOnw6NvIgorCisjOiBzcmMvcGFja2FnZXMuYzoxMzggc3JjL3F1ZXJ5Y21kLmM6Mzc1IHNyYy9xdWVyeWNtZC5jOjU2NQorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGF0IGxlYXN0IG9uZSBwYWNrYWdlIG5hbWUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMgcHJlY2lzYSBkZSBwZWxvIG1lbm9zIHVtIG5vbWUgZGUgcGFjb3RlIGNvbW8gYXJndW1lbnRvIgorCisjOiBzcmMvcGFja2FnZXMuYzoxNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSAlcyBsaXN0ZWQgbW9yZSB0aGFuIG9uY2UsIG9ubHkgcHJvY2Vzc2luZyBvbmNlLlxuIgorbXNnc3RyICJQYWNvdGUgJXMgbGlzdGFkbyBtYWlzIGRlIHVtYSB2ZXosIHByb2Nlc3NhbmRvIHNvbWVudGUgdW1hIHZlei5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MTgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJNb3JlIHRoYW4gb25lIGNvcHkgb2YgcGFja2FnZSAlcyBoYXMgYmVlbiB1bnBhY2tlZFxuIgorIiBpbiB0aGlzIHJ1biAhICBPbmx5IGNvbmZpZ3VyaW5nIGl0IG9uY2UuXG4iCittc2dzdHIgIiIKKyJNYWlzIGRlIHVtYSBjw7NwaWEgZG8gcGFjb3RlICVzIGZvaSBkZXNlbXBhY290YWRhXG4iCisiIG5lc3RhIGV4ZWN1w6fDo28hIENvbmZpZ3VyYW5kby1vIHNvbWVudGUgdW1hIHZlei5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJwYWNrYWdlICUuMjUwcyBpcyBub3QgcmVhZHkgZm9yIHRyaWdnZXIgcHJvY2Vzc2luZ1xuIgorIiAoY3VycmVudCBzdGF0dXMgYCUuMjUwcycgd2l0aCBubyBwZW5kaW5nIHRyaWdnZXJzKSIKK21zZ3N0ciAiIgorInBhY290ZSAlLjI1MHMgbsOjbyBlc3TDoSBwcm9udG8gcGFyYSBwcm9jZXNzYW1lbnRvIGRlIGdhdGlsaG9cbiIKKyIgKGVzdGFkbyBhdHVhbCAnJS4yNTBzJyBzZW0gZ2F0aWxob3MgcGVuZGVudGVzKSIKKworIzogc3JjL3BhY2thZ2VzLmM6MzM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyB3aGljaCBwcm92aWRlcyAlcyBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIgIFBhY290ZSAlcywgbyBxdWFsIGZvcm5lY2UgJXMgZXN0w6EgcGFyYSBzZXIgcmVtb3ZpZG8uXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjMzNworIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgaXMgdG8gYmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiICBQYWNvdGUgJXMgZXN0w6EgcGFyYSBzZXIgcmVtb3ZpZG8uXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjM1NAorIywgYy1mb3JtYXQKK21zZ2lkICIgIFZlcnNpb24gb2YgJXMgb24gc3lzdGVtIGlzICVzLlxuIgorbXNnc3RyICIgIFZlcnPDo28gZGUgJXMgbm8gc2lzdGVtYSDDqSAlcy5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6Mzc2CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyB3aGljaCBwcm92aWRlcyAlcyBhd2FpdHMgdHJpZ2dlciBwcm9jZXNzaW5nLlxuIgorbXNnc3RyICIgIFBhY290ZSAlcywgbyBxdWFsIGZvcm5lY2UgJXMgYWd1YXJkYSBwcm9jZXNzYW1lbnRvIGRlIGdhdGlsaG8uXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjM4MAorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgYXdhaXRzIHRyaWdnZXIgcHJvY2Vzc2luZy5cbiIKK21zZ3N0ciAiICBQYWNvdGUgJXMgYWd1YXJkYSBwcm9jZXNzYW1lbnRvIGRlIGdhdGlsaG8uXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQxMAorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiBhbHNvIGNvbmZpZ3VyaW5nIGAlcycgKHJlcXVpcmVkIGJ5IGAlcycpXG4iCittc2dzdHIgImRwa2c6IHRhbWLDqW0gY29uZmlndXJhbmRvICclcycgKG5lY2Vzc8OhcmlvIHBhcmEgJyVzJylcbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDE4CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyB3aGljaCBwcm92aWRlcyAlcyBpcyBub3QgY29uZmlndXJlZCB5ZXQuXG4iCittc2dzdHIgIiAgUGFjb3RlICVzLCBvIHF1YWwgZm9ybmVjZSAlcyBhaW5kYSBuw6NvIGVzdMOhIGNvbmZpZ3VyYWRvLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIGlzIG5vdCBjb25maWd1cmVkIHlldC5cbiIKK21zZ3N0ciAiICBQYWNvdGUgJXMgbsOjbyBlc3TDoSBjb25maWd1cmFkbyBhaW5kYS5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyB3aGljaCBwcm92aWRlcyAlcyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIgIFBhY290ZSAlcywgbyBxdWFsIGZvcm5lY2UgJXMgbsOjbyBlc3TDoSBpbnN0YWxhZG8uXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQzNQorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgaXMgbm90IGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiICBQYWNvdGUgJXMgbsOjbyBlc3TDoSBpbnN0YWxhZG8uXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQ3MgorIywgYy1mb3JtYXQKK21zZ2lkICIgJXMgKCVzKSBicmVha3MgJXMgYW5kIGlzICVzLlxuIgorbXNnc3RyICIgJXMgKCVzKSBxdWVicmEgJXMgZSDDqSAlcy5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDc4CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJXMgKCVzKSBwcm92aWRlcyAlcy5cbiIKK21zZ3N0ciAiICAlcyAoJXMpIGZvcm5lY2UgJXMuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQ4MgorIywgYy1mb3JtYXQKK21zZ2lkICIgIFZlcnNpb24gb2YgJXMgdG8gYmUgY29uZmlndXJlZCBpcyAlcy5cbiIKK21zZ3N0ciAiICBWZXJzw6NvIGRlICVzIGEgc2VyIGNvbmZpZ3VyYWRhIMOpICVzLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo1OTYKK21zZ2lkICIgZGVwZW5kcyBvbiAiCittc2dzdHIgIiBkZXBlbmRlIGRlICIKKworIzogc3JjL3BhY2thZ2VzLmM6NjAyCittc2dpZCAiOyBob3dldmVyOlxuIgorbXNnc3RyICI7IHBvcsOpbTpcbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo3MQorIywgYy1mb3JtYXQKK21zZ2lkICIuLi4vJXMiCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5MQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBlbnN1cmluZyBgJS4yNTBzJyBkb2Vzbid0IGV4aXN0IgorbXNnc3RyICJlcnJvIGFvIHNlIGNlcnRpZmljYXIgcXVlICclLjI1MHMnIG7Do28gZXhpc3RlIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjk5Cittc2dpZCAic3BsaXQgcGFja2FnZSByZWFzc2VtYmx5IgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTA4Cittc2dpZCAicmVhc3NlbWJsZWQgcGFja2FnZSBmaWxlIgorbXNnc3RyICJhcnF1aXZvIGRlIHBhY290ZSByZW1vbnRhZG8iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTMzCisjLCBjLWZvcm1hdAorbXNnaWQgIkF1dGhlbnRpY2F0aW5nICVzIC4uLlxuIgorbXNnc3RyICJBdXRlbnRpY2FuZG8gJXMgLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTM5Cittc2dpZCAicGFja2FnZSBzaWduYXR1cmUgdmVyaWZpY2F0aW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTQ2CisjLCBjLWZvcm1hdAorbXNnaWQgIlZlcmlmaWNhdGlvbiBvbiBwYWNrYWdlICVzIGZhaWxlZCEiCittc2dzdHIgIlZlcmlmaWNhw6fDo28gbm8gcGFjb3RlICVzIGZhbGhvdSEiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTQ4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJWZXJpZmljYXRpb24gb24gcGFja2FnZSAlcyBmYWlsZWQsXG4iCisiYnV0IGluc3RhbGxpbmcgYW55d2F5IGFzIHlvdSByZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiIKKyJWZXJpZmljYcOnw6NvIG5vIHBhY290ZSAlcyBmYWxob3UsXG4iCisibWFzIG8gaW5zdGFsYXJlaSBkZSBxdWFscXVlciBmb3JtYSBjb21vIHZvY8OqIHJlcXVpc2l0b3UuXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTUyCisjLCBjLWZvcm1hdAorbXNnaWQgInBhc3NlZFxuIgorbXNnc3RyICJwYXNzb3VcbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxNjUgZHBrZy1kZWIvaW5mby5jOjgxCisjLCBmdXp6eQorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdGVtcG9yYXJ5IGRpcmVjdG9yeSIKK21zZ3N0ciAiZmFsaG91IGFvIGNyaWFyIG5vbWUgZGUgZGlyZXTDs3JpbyB0ZW1wb3LDoXJpbyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlcyBoYXMgdG9vIG1hbnkgQ29uZmxpY3RzL1JlcGxhY2VzIHBhaXJzIgorbXNnc3RyICJwYWNvdGUgJXMgcG9zc3VpIG11aXRvcyBwYXJlcyBDb25mbGl0YS9TdWJzdGl0dWkiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MjQzCisjLCBjLWZvcm1hdAorbXNnaWQgIm9sZCB2ZXJzaW9uIG9mIHBhY2thZ2UgaGFzIG92ZXJseS1sb25nIGluZm8gZmlsZSBuYW1lIHN0YXJ0aW5nIGAlLjI1MHMnIgorbXNnc3RyICIiCisidmVyc8OjbyBhbnRpZ2EgZG8gcGFjb3RlIHBvc3N1aSBub21lIGRlIGFycXVpdm8gaW5mbyBkZW1hc2lhZGFtZW50ZSBsb25nbyAiCisiaW5pY2lhbmRvICclLjI1MHMnIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjI4MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIG9ic29sZXRlIGluZm8gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiaW1wb3Nzw612ZWwgcmVtb3ZlciBhcnF1aXZvIGluZm8gb2Jzb2xldG8gJyUuMjUwcyciCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6Mjg2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIChzdXBwb3NlZCkgbmV3IGluZm8gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiaW1wb3Nzw612ZWwgaW5zdGFsYXIgYXJxdWl2byBpbmZvIChzdXBvc3RhbWVudGUpIG5vdm8gJyUuMjUwcyciCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6Mjk2Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gdGVtcCBjb250cm9sIGRpcmVjdG9yeSIKK21zZ3N0ciAiaW1wb3Nzw612ZWwgYWJyaXIgZGlyZXTDs3JpbyBkZSBjb250cm9sZSB0ZW1wb3LDoXJpbyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMDcKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBjb250YWlucyBvdmVybHktbG9uZyBjb250cm9sIGluZm8gZmlsZSBuYW1lIChzdGFydGluZyBgJS41MHMnKSIKK21zZ3N0ciAiIgorInBhY290ZSBjb250w6ltIG5vbWUgZGUgYXJxdWl2byBkZSBjb250cm9sZSBkZW1hc2lhZGFtZW50ZSBsb25nbyAoaW5pY2lhbmRvICIKKyInJS41MHMnKSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBjb250cm9sIGluZm8gY29udGFpbmVkIGRpcmVjdG9yeSBgJS4yNTBzJyIKK21zZ3N0ciAiaW5mb3JtYcOnw6NvIGRlIGNvbnRyb2xlIGRvIHBhY290ZSBjb250aW5oYSBkaXJldMOzcmlvICclLjI1MHMnIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMxNgorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGNvbnRyb2wgaW5mbyBybWRpciBvZiBgJS4yNTBzJyBkaWRuJ3Qgc2F5IG5vdCBhIGRpciIKK21zZ3N0ciAiIgorInJlbW/Dp8OjbyBkbyBkaXJldMOzcmlvIGRlIGluZm9ybWHDp8OjbyBkZSBjb250cm9sZSBkbyBwYWNvdGUgJyUuMjUwcycgbsOjbyBkaXNzZSAiCisicXVlIG7Do28gc2UgdHJhdGF2YSBkZSB1bSBkaXJldMOzcmlvIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMyNgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlcyBjb250YWluZWQgbGlzdCBhcyBpbmZvIGZpbGUiCittc2dzdHIgImRwa2c6IGF2aXNvIC0gcGFjb3RlICVzIGNvbnRpbmhhIGxpc3RhIGNvbW8gYXJxdWl2byBpbmZvIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMzMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgaW5mbyBmaWxlIGAlLjI1MHMnIGFzIGAlLjI1MHMnIgorbXNnc3RyICJpbXBvc3PDrXZlbCBpbnN0YWxhciBub3ZvIGFycXVpdm8gaW5mbyAnJS4yNTBzJyBjb21vICclLjI1MHMnIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjM0OSBzcmMvcmVtb3ZlLmM6MTk4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkZWxldGUgY29udHJvbCBpbmZvIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImltcG9zc8OtdmVsIGV4Y2x1aXIgYXJxdWl2byBkZSBpbmZvcm1hw6fDtWVzIGRlIGNvbnRyb2xlICclLjI1MHMnIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjQxMQorbXNnaWQgImNhbm5vdCBhY2Nlc3MgYXJjaGl2ZSIKK21zZ3N0ciAiaW1wb3Nzw612ZWwgYWNlc3NhciBhcnF1aXZvIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjQzMworIywgZnV6enkKKyN8IG1zZ2lkICJjb250cm9sIGluZm9ybWF0aW9uIGxlbmd0aCIKK21zZ2lkICJwYWNrYWdlIGNvbnRyb2wgaW5mb3JtYXRpb24gZXh0cmFjdGlvbiIKK21zZ3N0ciAidGFtYW5obyBkYSBpbmZvcm1hw6fDo28gZGUgY29udHJvbGUiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDYwCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlY29yZGVkIGluZm8gYWJvdXQgJXMgZnJvbSAlcy5cbiIKK21zZ3N0ciAiSW5mb3JtYcOnw6NvIHJlZ2lzdHJhZGEgc29icmUgJXMgYSBwYXJ0aXIgZGUgJXMuXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDY4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgYXJjaGl0ZWN0dXJlICglcykgZG9lcyBub3QgbWF0Y2ggc3lzdGVtICglcykiCittc2dzdHIgImFycXVpdGV0dXJhIGRvIHBhY290ZSAoJXMpIG7Do28gY29tYmluYSBjb20gYSBkbyBzaXN0ZW1hICglcykiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTIzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiByZWdhcmRpbmcgJXMgY29udGFpbmluZyAlcywgcHJlLWRlcGVuZGVuY3kgcHJvYmxlbTpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6IHF1YW50byBhICVzLCBjb250ZW5kbyAlcywgcHJvYmxlbWEgZGUgcHLDqS1kZXBlbmTDqm5jaWE6XG4iCisiJXMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTI2CisjLCBjLWZvcm1hdAorbXNnaWQgInByZS1kZXBlbmRlbmN5IHByb2JsZW0gLSBub3QgaW5zdGFsbGluZyAlLjI1MHMiCittc2dzdHIgInByb2JsZW1hIGRlIHByw6ktZGVwZW5kw6puY2lhIC0gJS4yNTBzIG7Do28gc2Vyw6EgaW5zdGFsYWRvIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjUyNworIywgZnV6enkKK21zZ2lkICJpZ25vcmluZyBwcmUtZGVwZW5kZW5jeSBwcm9ibGVtISIKK21zZ3N0ciAiZHBrZzogYXZpc28gLSBpZ25vcmFuZG8gcHJvYmxlbWEgZGUgcHLDqS1kZXBlbmTDqm5jaWEhXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTQzCisjLCBjLWZvcm1hdAorbXNnaWQgIlByZXBhcmluZyB0byByZXBsYWNlICVzICVzICh1c2luZyAlcykgLi4uXG4iCittc2dzdHIgIlByZXBhcmFuZG8gcGFyYSBzdWJzdGl0dWlyICVzICVzICh1c2FuZG8gJXMpIC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjU0OQorIywgYy1mb3JtYXQKK21zZ2lkICJVbnBhY2tpbmcgJXMgKGZyb20gJXMpIC4uLlxuIgorbXNnc3RyICJEZXNlbXBhY290YW5kbyAlcyAoZGUgJXMpIC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjU4MAorIywgYy1mb3JtYXQKK21zZ2lkICJuYW1lIG9mIGNvbmZmaWxlIChzdGFydGluZyBgJS4yNTBzJykgaXMgdG9vIGxvbmcgKD4lZCBjaGFyYWN0ZXJzKSIKK21zZ3N0ciAiIgorIm5vbWUgZG8gYXJxdWl2byBkZSBjb25maWd1cmHDp8OjbyAoY29tZcOnYW5kbyAnJS4yNTBzJykgw6kgbXVpdG8gbG9uZ28gKD4lZCAiCisiY2FyYWN0ZXJlcykiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjMzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDcxCisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWQgZXJyb3IgaW4gJS4yNTBzIgorbXNnc3RyICJlcnJvIGRlIGxlaXR1cmEgZW0gJS4yNTBzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjYzNQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nICUuMjUwcyIKK21zZ3N0ciAiZXJybyBmZWNoYW5kbyAlLjI1MHMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjM3CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHRyeWluZyB0byBvcGVuICUuMjUwcyIKK21zZ3N0ciAiZXJybyB0ZW50YW5kbyBhYnJpciAlLjI1MHMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6Njc4CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlLWNvbmZpZ3VyaW5nICVzLCB0byBhbGxvdyByZW1vdmFsIG9mICVzIC4uLlxuIgorbXNnc3RyICJEZXNjb25maWd1cmFuZG8gJXMsIHBhcmEgcGVybWl0aXIgYSByZW1vw6fDo28gZGUgJXMgLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjgxCisjLCBjLWZvcm1hdAorbXNnaWQgIkRlLWNvbmZpZ3VyaW5nICVzIC4uLlxuIgorbXNnc3RyICJEZXNjb25maWd1cmFuZG8gJXMgLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NzU1CisjLCBjLWZvcm1hdAorbXNnaWQgIlVucGFja2luZyByZXBsYWNlbWVudCAlLjI1MHMgLi4uXG4iCittc2dzdHIgIkRlc2VtcGFjb3RhbmRvIHN1YnN0aXR1dG8gJS4yNTBzIC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjg0MAorbXNnaWQgInBhY2thZ2UgZmlsZXN5c3RlbSBhcmNoaXZlIGV4dHJhY3Rpb24iCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NTQKK21zZ2lkICJlcnJvciByZWFkaW5nIGRwa2ctZGViIHRhciBvdXRwdXQiCittc2dzdHIgImVycm8gbGVuZG8gYSBzYcOtZGEgZG8gdGFyIGRvIGRwa2ctZGViIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjg1NgorbXNnaWQgImNvcnJ1cHRlZCBmaWxlc3lzdGVtIHRhcmZpbGUgLSBjb3JydXB0ZWQgcGFja2FnZSBhcmNoaXZlIgorbXNnc3RyICIiCisiYXJxdWl2byB0YXIgZG8gc2lzdGVtYSBkZSBhcnF1aXZvcyBjb3Jyb21waWRvIC0gYXJxdWl2byBkZSBwYWNvdGUgY29ycm9tcGlkbyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NTkKK21zZ2lkICJkcGtnLWRlYjogemFwIHBvc3NpYmxlIHRyYWlsaW5nIHplcm9zIgorbXNnc3RyICJkcGtnLWRlYjogemFwIHBvc3NpdmVsbWVudGUgY29tIHplcm9zIG5vIGZpbmFsIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjkxOQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHN0YXQgb2xkIGZpbGUgJyUuMjUwcycgc28gbm90IGRlbGV0aW5nIGl0OiAlcyIKK21zZ3N0ciAiIgorImRwa2c6IGF2aXNvIC0gbsOjbyBmb2kgcG9zc8OtdmVsIGV4ZWN1dGFyIFwic3RhdFwiIGVtIGFycXVpdm8gYW50aWdvICclLjI1MHMnICIKKyJwb3J0YW50byBuw6NvIGV4Y2x1aW5kbyBvIG1lc21vOiAlcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5MjUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkZWxldGUgb2xkIGRpcmVjdG9yeSAnJS4yNTBzJzogJXMiCittc2dzdHIgImRwa2c6IGF2aXNvIC0gaW1wb3Nzw612ZWwgZXhjbHVpciBkaXJldMOzcmlvIGFudGlnbyAnJS4yNTBzJzogJXNcbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5MjgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIm9sZCBjb25mZmlsZSAnJS4yNTBzJyB3YXMgYW4gZW1wdHkgZGlyZWN0b3J5IChhbmQgaGFzIG5vdyBiZWVuIGRlbGV0ZWQpIgorbXNnc3RyICIiCisiZHBrZzogYXZpc28gLSBhcnF1aXZvIGRlIGNvbmZpZ3VyYcOnw6NvIGFudGlnbyAnJS4yNTBzJyBlcmEgdW0gZGlyZXTDs3JpbyB2YXppbyAiCisiKGUgZm9pIGV4Y2x1w61kbylcbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgb3RoZXIgbmV3IGZpbGUgYCUuMjUwcyciCittc2dzdHIgImltcG9zc8OtdmVsIGV4ZWN1dGFyIFwiZnN0YXRcIiBlbSBvdXRybyBhcnF1aXZvIG5vdm8gJyUuMjUwcyciCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTg2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisib2xkIGZpbGUgJyUuMjUwcycgaXMgdGhlIHNhbWUgYXMgc2V2ZXJhbCBuZXcgZmlsZXMhIChib3RoICclLjI1MHMnIGFuZCAiCisiJyUuMjUwcycpIgorbXNnc3RyICIiCisiZHBrZzogYXZpc28gLSBhcnF1aXZvIGFudGlnbyAnJS4yNTBzJyDDqSBvIG1lc21vIHF1ZSBkaXZlcnNvcyBhcnF1aXZvcyBub3ZvcyEgIgorIihhbWJvcyAnJS4yNTBzJyBlICclLjI1MHMnKVxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEwMjUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWN1cmVseSByZW1vdmUgb2xkIGZpbGUgJyUuMjUwcyc6ICVzIgorbXNnc3RyICJkcGtnOiBhdmlzbyAtIGltcG9zc8OtdmVsICVzIGFycXVpdm8gYW50aWdvICclJS4yNTBzJzogJSVzXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTIwNgorIywgYy1mb3JtYXQKK21zZ2lkICIoTm90aW5nIGRpc2FwcGVhcmFuY2Ugb2YgJXMsIHdoaWNoIGhhcyBiZWVuIGNvbXBsZXRlbHkgcmVwbGFjZWQuKVxuIgorbXNnc3RyICIiCisiKFBlcmNlYmVuZG8gZGVzYXBhcmVjaW1lbnRvIGRlICVzLCBxdWUgZm9pIGNvbXBsZXRhbWVudGUgc3Vic3RpdHXDrWRvKS5cbiIKKworIy4gVFJBTlNMQVRPUlM6IFRoaXMgaXMgdGhlIGhlYWRlciB0aGF0IGFwcGVhcnMgb24gJ2Rwa2ctcXVlcnkgLWwnLiBUaGUKKyMuICogc3RyaW5nIHNob3VsZCByZW1haW4gdW5kZXIgODAgY2hhcmFjdGVycy4gVGhlIHVwcGVyY2FzZSBsZXR0ZXJzIGluCisjLiAqIHRoZSBzdGF0ZSB2YWx1ZXMgZGVub3RlIHRoZSBhYmJyZXZpYXRlZCBsZXR0ZXIgdGhhdCB3aWxsIGFwcGVhciBvbgorIy4gKiB0aGUgZmlyc3QgdGhyZWUgY29sdW1ucywgd2hpY2ggc2hvdWxkIGlkZWFsbHkgbWF0Y2ggdGhlIEVuZ2xpc2ggb25lCisjLiAqIChlLmcuIFJlbW92ZSDihpIgc3VwUmltZWl4KSwgc2VlIGRwa2ctcXVlcnkoMSkgZm9yIGZ1cnRoZXIgZGV0YWlscy4gVGhlCisjLiAqIHRyYW5zbGF0ZWQgbWVzc2FnZSBjYW4gdXNlIGFkZGl0aW9uYWwgbGluZXMgaWYgbmVlZGVkLgorIzogc3JjL3F1ZXJ5Y21kLmM6MTQ5CisjLCBmdXp6eQorbXNnaWQgIiIKKyJEZXNpcmVkPVVua25vd24vSW5zdGFsbC9SZW1vdmUvUHVyZ2UvSG9sZFxuIgorInwgU3RhdHVzPU5vdC9JbnN0L0NvbmYtZmlsZXMvVW5wYWNrZWQvaGFsRi1jb25mL0hhbGYtaW5zdC90cmlnLWFXYWl0L1RyaWctIgorInBlbmRcbiIKKyJ8LyBFcnI/PShub25lKS9SZWluc3QtcmVxdWlyZWQgKFN0YXR1cyxFcnI6IHVwcGVyY2FzZT1iYWQpXG4iCittc2dzdHIgIiIKKyJEZXNlamFkbz1VPURlc2NvbmhlY2lkby9JbnN0YWxhci9SZW1vdmVyL2V4UHVyZ2FyL0g9UmV0ZXJcbiIKKyJ8IEVzdGFkbz1Ow6NvL0luc3QvYXJxcy1DZmcvVT1EZXNjb21wL0ZhbGhvdS1jZmcvSD1zZW1pLWluc3QvVz10cmlnLWFkaWFkby8iCisiVHJpZy1wZW5kXG4iCisifC8gRXJybz89KG5lbmh1bSkvSD1SZXQvcHJlY2lzYS1SZWluc3QvWD1hbWJvcy1wcm9ibGVtYXMgKEVzdCxFcnI6ICIKKyJtYWnDunNjdWxhcz1ydWltKVxuIgorCisjOiBzcmMvcXVlcnljbWQuYzoxNTMKK21zZ2lkICJOYW1lIgorbXNnc3RyICJOb21lIgorCisjOiBzcmMvcXVlcnljbWQuYzoxNTMKK21zZ2lkICJWZXJzaW9uIgorbXNnc3RyICJWZXJzw6NvIgorCisjOiBzcmMvcXVlcnljbWQuYzoxNTQKK21zZ2lkICJEZXNjcmlwdGlvbiIKK21zZ3N0ciAiRGVzY3Jpw6fDo28iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI0NiBzcmMvcXVlcnljbWQuYzo1MTEgc3JjL3NlbGVjdC5jOjc1CisjLCBjLWZvcm1hdAorbXNnaWQgIk5vIHBhY2thZ2VzIGZvdW5kIG1hdGNoaW5nICVzLlxuIgorbXNnc3RyICJOZW5odW0gcGFjb3RlIGVuY29udHJhZG8gY2FzYW5kbyBjb20gJXMuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI3MworIywgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnNpb24gYnkgJXMgZnJvbTogJXNcbiIKK21zZ3N0ciAiZGVzdmlhZG8gcG9yICVzIGEgcGFydGlyIGRlOiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJzaW9uIGJ5ICVzIHRvOiAlc1xuIgorbXNnc3RyICJkZXN2aWFkbyBwb3IgJXMgcGFyYTogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6Mjc4CisjLCBjLWZvcm1hdAorbXNnaWQgImxvY2FsIGRpdmVyc2lvbiBmcm9tOiAlc1xuIgorbXNnc3RyICJkZXN2aW8gbG9jYWwgYSBwYXJ0aXIgZGU6ICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI3OQorIywgYy1mb3JtYXQKK21zZ2lkICJsb2NhbCBkaXZlcnNpb24gdG86ICVzXG4iCittc2dzdHIgImxvY2FsbWVudGUgZGVzdmlhZG8gcGFyYTogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MzA5Cittc2dpZCAiLS1zZWFyY2ggbmVlZHMgYXQgbGVhc3Qgb25lIGZpbGUgbmFtZSBwYXR0ZXJuIGFyZ3VtZW50IgorbXNnc3RyICIiCisiLS1zZWFyY2ggcHJlY2lzYSBkZSBwZWxvIG1lbm9zIHVtIHBhZHLDo28gZGUgbm9tZSBkZSBhcnF1aXZvIGNvbW8gYXJndW1lbnRvIgorCisjOiBzcmMvcXVlcnljbWQuYzozNTAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIk5vIHBhY2thZ2VzIGZvdW5kIG1hdGNoaW5nICVzLlxuIgorbXNnaWQgIiVzOiBubyBwYXRoIGZvdW5kIG1hdGNoaW5nIHBhdHRlcm4gJXMuXG4iCittc2dzdHIgIk5lbmh1bSBwYWNvdGUgZW5jb250cmFkbyBjYXNhbmRvIGNvbSAlcy5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MzkzCisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgYCVzJyBpcyBub3QgaW5zdGFsbGVkIGFuZCBubyBpbmZvIGlzIGF2YWlsYWJsZS5cbiIKK21zZ3N0ciAiUGFjb3RlICclcycgbsOjbyBlc3TDoSBpbnN0YWxhZG8gZSBuw6NvIGjDoSBpbmZvcm1hw6fDtWVzIGRpc3BvbsOtdmVpcy5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDAxCisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgYCVzJyBpcyBub3QgYXZhaWxhYmxlLlxuIgorbXNnc3RyICJQYWNvdGUgJyVzJyBuw6NvIGVzdMOhIGRpc3BvbsOtdmVsLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MTAgc3JjL3F1ZXJ5Y21kLmM6NTg1CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgYCVzJyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICJQYWNvdGUgJyVzJyBuw6NvIGVzdMOhIGluc3RhbGFkby5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDE4CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgYCVzJyBkb2VzIG5vdCBjb250YWluIGFueSBmaWxlcyAoISlcbiIKK21zZ3N0ciAiUGFjb3RlICclcycgbsOjbyBjb250w6ltIHF1YWlzcXVlciBhcnF1aXZvcyAoISlcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDI1CisjLCBjLWZvcm1hdAorbXNnaWQgImxvY2FsbHkgZGl2ZXJ0ZWQgdG86ICVzXG4iCittc2dzdHIgImxvY2FsbWVudGUgZGVzdmlhZG8gcGFyYTogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDI4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgZGl2ZXJ0cyBvdGhlcnMgdG86ICVzXG4iCittc2dzdHIgInBhY290ZSBkZXN2aWEgb3V0cm9zIHBhcmE6ICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQzMQorIywgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnRlZCBieSAlcyB0bzogJXNcbiIKK21zZ3N0ciAiZGVzdmlhZG8gcG9yICVzIHBhcmE6ICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQ1MgorbXNnaWQgIiIKKyJVc2UgZHBrZyAtLWluZm8gKD0gZHBrZy1kZWIgLS1pbmZvKSB0byBleGFtaW5lIGFyY2hpdmUgZmlsZXMsXG4iCisiYW5kIGRwa2cgLS1jb250ZW50cyAoPSBkcGtnLWRlYiAtLWNvbnRlbnRzKSB0byBsaXN0IHRoZWlyIGNvbnRlbnRzLlxuIgorbXNnc3RyICIiCisiVXNlIGRwa2cgLS1pbmZvICg9IGRwa2ctZGViIC0taW5mbykgcGFyYSBleGFtaW5hciBhcnF1aXZvcyBkZSBwYWNvdGUsXG4iCisiZSBkcGtnIC0tY29udGVudHMgKD0gZHBrZy1kZWIgLS1jb250ZW50cykgcGFyYSBsaXN0YXIgc2V1IGNvbnRlw7pkby5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NTcwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICItLSVzIHRha2VzIGF0IG1vc3QgdHdvIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS1idWlsZCBhY2VpdGEgbm8gbcOheGltbyBkb2lzIGFyZ3VtZW50b3MiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjU3OAorIywgYy1mb3JtYXQKK21zZ2lkICJjb250cm9sIGZpbGUgY29udGFpbnMgJWMiCittc2dzdHIgIiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjAwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gJXMgcGFja2FnZSBtYW5hZ2VtZW50IHByb2dyYW0gcXVlcnkgdG9vbCB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICJQcm9ncmFtYSBkZSBnZXJlbmNpYW1lbnRvIGRlIHBhY290ZXMgRGViaWFuICclcycgdmVyc8OjbyAlcy5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjE5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtc3wtLXN0YXR1cyA8cGFja2FnZT4gLi4uICAgICAgICBEaXNwbGF5IHBhY2thZ2Ugc3RhdHVzIGRldGFpbHMuXG4iCisiICAtcHwtLXByaW50LWF2YWlsIDxwYWNrYWdlPiAuLi4gICBEaXNwbGF5IGF2YWlsYWJsZSB2ZXJzaW9uIGRldGFpbHMuXG4iCisiICAtTHwtLWxpc3RmaWxlcyA8cGFja2FnZT4gLi4uICAgICBMaXN0IGZpbGVzIGBvd25lZCcgYnkgcGFja2FnZShzKS5cbiIKKyIgIC1sfC0tbGlzdCBbPHBhdHRlcm4+IC4uLl0gICAgICAgIExpc3QgcGFja2FnZXMgY29uY2lzZWx5LlxuIgorIiAgLVd8LS1zaG93IFs8cGF0dGVybj4gLi4uXSAgICAgICAgU2hvdyBpbmZvcm1hdGlvbiBvbiBwYWNrYWdlKHMpLlxuIgorIiAgLVN8LS1zZWFyY2ggPHBhdHRlcm4+IC4uLiAgICAgICAgRmluZCBwYWNrYWdlKHMpIG93bmluZyBmaWxlKHMpLlxuIgorIiAgLWN8LS1jb250cm9sLXBhdGggPHBhY2thZ2U+IFs8ZmlsZT5dXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQcmludCBwYXRoIGZvciBwYWNrYWdlIGNvbnRyb2wgZmlsZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIkNvbWFuZG9zOlxuIgorIiAgLXN8IC0tc3RhdHVzIDxwYWNvdGU+IC4uLiAgICAgICAgRXhpYmUgZGV0YWxoZXMgZG8gZXN0YWRvIGRvIHBhY290ZS5cbiIKKyIgIC1wfCAtLXByaW50LWF2YWlsIDxwYWNvdGU+IC4uLiAgIEV4aWJlIGRldGFsaGVzIGRlIHZlcnPDtWVzIGRpc3BvbsOtdmVpcy5cbiIKKyIgIC1MfCAtLWxpc3RmaWxlcyA8cGFjb3RlPiAuLi4gICAgIExpc3RhIGFycXVpdm9zIGRlICdwcm9wcmllZGFkZScgZG8ocylcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhY290ZShzKS5cbiIKKyIgIC1sfCAtLWxpc3QgWzxwYWRyw6NvPl0gLi4uXSAgICAgICBMaXN0YSBwYWNvdGVzIGFicmV2aWFkYW1lbnRlLlxuIgorIiAgLVd8IC0tc2hvdyA8cGFkcsOjbz4gLi4uICAgICAgICAgIEV4aWJlIGluZm9ybWHDp8OjbyBzb2JyZSBvKHMpIHBhY290ZShzKS5cbiIKKyIgIC1TfCAtLXNlYXJjaCA8cGFkcsOjbz4gLi4uICAgICAgICBQcm9jdXJhIHBhY290ZShzKSBwcm9wcmlldMOhcmlvKHMpIGRvKHMpXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcnF1aXZvKHMpLlxuIgorIlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo2MzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgICAgICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyIgIC1mfC0tc2hvd2Zvcm1hdD08Zm9ybWF0PiAgICAgICAgIFVzZSBhbHRlcm5hdGl2ZSBmb3JtYXQgZm9yIC0tc2hvdy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIk9ww6fDtWVzOlxuIgorIiAgLS1hZG1pbmRpcj08ZGlyZXTDs3Jpbz4gICAgICAgICAgIFVzYSA8ZGlyZXTDs3Jpbz4gYW8gaW52w6lzIGRlICVzLlxuIgorIiAgLWZ8LS1zaG93Zm9ybWF0PTxmb3JtYXRvPiAgICAgICAgVXNhIGZvcm1hdG8gYWx0ZXJuYXRpdm8gcGFyYSAtLXNob3cuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjY0MiBkcGtnLWRlYi9tYWluLmM6MTEyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJGb3JtYXQgc3ludGF4OlxuIgorIiAgQSBmb3JtYXQgaXMgYSBzdHJpbmcgdGhhdCB3aWxsIGJlIG91dHB1dCBmb3IgZWFjaCBwYWNrYWdlLiBUaGUgZm9ybWF0XG4iCisiICBjYW4gaW5jbHVkZSB0aGUgc3RhbmRhcmQgZXNjYXBlIHNlcXVlbmNlcyBcXG4gKG5ld2xpbmUpLCBcXHIgKGNhcnJpYWdlXG4iCisiICByZXR1cm4pIG9yIFxcXFwgKHBsYWluIGJhY2tzbGFzaCkuIFBhY2thZ2UgaW5mb3JtYXRpb24gY2FuIGJlIGluY2x1ZGVkXG4iCisiICBieSBpbnNlcnRpbmcgdmFyaWFibGUgcmVmZXJlbmNlcyB0byBwYWNrYWdlIGZpZWxkcyB1c2luZyB0aGUgJHt2YXJbOyIKKyJ3aWR0aF19XG4iCisiICBzeW50YXguIEZpZWxkcyB3aWxsIGJlIHJpZ2h0LWFsaWduZWQgdW5sZXNzIHRoZSB3aWR0aCBpcyBuZWdhdGl2ZSBpbiAiCisid2hpY2hcbiIKKyIgIGNhc2UgbGVmdCBhbGlnbm1lbnQgd2lsbCBiZSB1c2VkLlxuIgorbXNnc3RyICIiCisiU2ludGF4ZSBkZSBmb3JtYXRvOlxuIgorIiAgVW0gZm9ybWF0byDDqSB1bWEgc3RyaW5nIHF1ZSBzZXLDoSBnZXJhZGEgcGFyYSBjYWRhIHBhY290ZS4gTyBmb3JtYXRvIHBvZGVcbiIKKyIgIGluY2x1aXIgYXMgc2VxdcOqbmNpYXMgZGUgZXNjYXBlIHBhZHLDo28gXFxuIChub3ZhIGxpbmhhKSwgXFxyIChyZXRvcm5vIGRlXG4iCisiICBjYXJybykgb3UgXFxcXCAoYmFycmEgaW52ZXJ0aWRhIHNpbXBsZSkuIEluZm9ybWHDp8OjbyBkZSBwYWNvdGVzIHBvZGVtIHNlclxuIgorIiAgaW5jbHXDrWRhcyBpbnNlcmluZG8gcmVmZXLDqm5jaWFzIHZhcmnDoXZlaXMgYW8gY2FtcG9zIGRvIHBhY290ZSB1c2FuZG8gYVxuIgorIiAgc2ludGF4ZSAke3ZhcmnDoXZlbFs7dGFtYW5ob119ICgke3Zhcls7d2lkdGhdfSkuIENhbXBvcyBzZXLDo28gYWxpbmhhZG9zIMOgXG4iCisiICBkaXJlaXRhIGEgbWVub3MgcXVlIG8gdGFtYW5obyBzZWphIG5lZ2F0aXZvLCBuZXN0ZSBjYXNvIG8gYWxpbmhhbWVudG8gw6BcbiIKKyIgIGVzcXVlcmRhIHNlcsOhIHVzYWRvLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo2NTYKK21zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IHF1ZXJ5aW5nIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcmVtb3ZlLmM6ODgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nIHJlcXVlc3QgdG8gcmVtb3ZlICUuMjUwcyB3aGljaCBpc24ndCBpbnN0YWxsZWQuIgorbXNnc3RyICIiCisiZHBrZyAtIGF2aXNvOiBpZ25vcmFuZG8gcGVkaWRvIHBhcmEgcmVtb3ZlciAlLjI1MHMgcXVlIG7Do28gZXN0w6EgaW5zdGFsYWRvLlxuIgorCisjOiBzcmMvcmVtb3ZlLmM6OTUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpZ25vcmluZyByZXF1ZXN0IHRvIHJlbW92ZSAlLjI1MHMsIG9ubHkgdGhlIGNvbmZpZ1xuIgorIiBmaWxlcyBvZiB3aGljaCBhcmUgb24gdGhlIHN5c3RlbS4gVXNlIC0tcHVyZ2UgdG8gcmVtb3ZlIHRoZW0gdG9vLiIKK21zZ3N0ciAiIgorImRwa2cgLSBhdmlzbzogaWdub3JhbmRvIHBlZGlkbyBwYXJhIHJlbW92ZXIgJS4yNTBzLCBwb2lzIGFwZW5hcyBvcyBhcnF1aXZvc1xuIgorIiBkZSBjb25maWd1cmHDp8OjbyBkbyBtZXNtbyBlc3TDo28gbm8gc2lzdGVtYS4gVXNlIC0tcHVyZ2UgcGFyYSByZW1vdsOqLWxvcy5cbiIKKworIzogc3JjL3JlbW92ZS5jOjEwMworbXNnaWQgIlRoaXMgaXMgYW4gZXNzZW50aWFsIHBhY2thZ2UgLSBpdCBzaG91bGQgbm90IGJlIHJlbW92ZWQuIgorbXNnc3RyICJFc3RlIMOpIHVtIHBhY290ZSBlc3NlbmNpYWwgLSBuw6NvIGRldmVyaWEgc2VyIHJlbW92aWRvLiIKKworIzogc3JjL3JlbW92ZS5jOjEyOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogZGVwZW5kZW5jeSBwcm9ibGVtcyBwcmV2ZW50IHJlbW92YWwgb2YgJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiBwcm9ibGVtYXMgZGUgZGVwZW5kw6puY2lhIGltcGVkZW0gYSByZW1vw6fDo28gZGUgJXM6XG4iCisiJXMiCisKKyM6IHNyYy9yZW1vdmUuYzoxMzAKK21zZ2lkICJkZXBlbmRlbmN5IHByb2JsZW1zIC0gbm90IHJlbW92aW5nIgorbXNnc3RyICJwcm9ibGVtYXMgZGUgZGVwZW5kw6puY2lhIC0gbsOjbyByZW1vdmVuZG8iCisKKyM6IHNyYy9yZW1vdmUuYzoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6ICVzOiBkZXBlbmRlbmN5IHByb2JsZW1zLCBidXQgcmVtb3ZpbmcgYW55d2F5IGFzIHlvdSByZXF1ZXN0ZWQ6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiAlczogcHJvYmxlbWFzIGRlIGRlcGVuZMOqbmNpYSwgbWFzIHJlbW92ZW5kbyBhc3NpbSBtZXNtbyBjb25mb3JtZSAiCisicGVkaWRvOlxuIgorIiVzIgorCisjOiBzcmMvcmVtb3ZlLmM6MTQyCittc2dpZCAiIgorIlBhY2thZ2UgaXMgaW4gYSB2ZXJ5IGJhZCBpbmNvbnNpc3RlbnQgc3RhdGUgLSB5b3Ugc2hvdWxkXG4iCisiIHJlaW5zdGFsbCBpdCBiZWZvcmUgYXR0ZW1wdGluZyBhIHJlbW92YWwuIgorbXNnc3RyICIiCisiTyBwYWNvdGUgZXN0w6EgZW0gdW0gZXN0YWRvIGRlIGluY29uc2lzdMOqbmNpYSBtdWl0byBydWltIC0gdm9jw6ogZGV2ZXJpYVxuIgorIiByZWluc3RhbMOhLWxvIGFudGVzIGRlIHRlbnRhciB1bWEgcmVtb8Onw6NvLiIKKworIzogc3JjL3JlbW92ZS5jOjE0OQorIywgYy1mb3JtYXQKK21zZ2lkICJXb3VsZCByZW1vdmUgb3IgcHVyZ2UgJXMgLi4uXG4iCittc2dzdHIgIklyaWEgcmVtb3ZlciBvdSBleHB1cmdhciAlcyAuLi5cbiIKKworIzogc3JjL3JlbW92ZS5jOjE1NworIywgYy1mb3JtYXQKK21zZ2lkICJSZW1vdmluZyAlcyAuLi5cbiIKK21zZ3N0ciAiUmVtb3ZlbmRvICVzIC4uLlxuIgorCisjOiBzcmMvcmVtb3ZlLmM6Mjc1IHNyYy9yZW1vdmUuYzozNjYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ3aGlsZSByZW1vdmluZyAlLjI1MHMsIHVuYWJsZSB0byByZW1vdmUgZGlyZWN0b3J5ICclLjI1MHMnOiAlcyAtIGRpcmVjdG9yeSAiCisibWF5IGJlIGEgbW91bnQgcG9pbnQ/IgorbXNnc3RyICIiCisiZHBrZyAtIGF2aXNvOiBkdXJhbnRlIGEgcmVtb8Onw6NvIGRlICUuMjUwcywgaW1wb3Nzw612ZWwgcmVtb3ZlciBkaXJldMOzcmlvICIKKyInJS4yNTBzJzogJXMgLSBvIGRpcmV0w7NyaW8gc2VyaWEgdW0gcG9udG8gZGUgbW9udGFnZW0/XG4iCisKKyM6IHNyYy9yZW1vdmUuYzoyODkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWN1cmVseSByZW1vdmUgJyUuMjUwcyciCittc2dzdHIgIm7Do28gZm9pIHBvc3PDrXZlbCBjcmlhciAlLjI1MHMiCisKKyM6IHNyYy9yZW1vdmUuYzozNjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIndoaWxlIHJlbW92aW5nICUuMjUwcywgZGlyZWN0b3J5ICclLjI1MHMnIG5vdCBlbXB0eSBzbyBub3QgcmVtb3ZlZC4iCittc2dzdHIgIiIKKyJkcGtnIC0gYXZpc286IGR1cmFudGUgYSByZW1vw6fDo28gZGUgJS4yNTBzLCBkaXJldMOzcmlvICclLjI1MHMnIG7Do28gZXN0YXZhICIKKyJ2YXppbywgbG9nbyBuw6NvIGZvaSByZW1vdmlkby5cbiIKKworIzogc3JjL3JlbW92ZS5jOjM4MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiY2Fubm90IHJlbW92ZSBgJS4yNTBzJyIKK21zZ2lkICJjYW5ub3QgcmVtb3ZlICclLjI1MHMnIgorbXNnc3RyICJuw6NvIGZvaSBwb3Nzw612ZWwgcmVtb3ZlciAnJS4yNTBzJyIKKworIzogc3JjL3JlbW92ZS5jOjQwOQorIywgYy1mb3JtYXQKK21zZ2lkICJQdXJnaW5nIGNvbmZpZ3VyYXRpb24gZmlsZXMgZm9yICVzIC4uLlxuIgorbXNnc3RyICJFeHB1cmdhbmRvIGFycXVpdm9zIGRlIGNvbmZpZ3VyYcOnw6NvIGRlICVzIC4uLlxuIgorCisjOiBzcmMvcmVtb3ZlLmM6NDU5CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZW1vdmUgb2xkIGNvbmZpZyBmaWxlIGAlLjI1MHMnICg9IGAlLjI1MHMnKSIKK21zZ3N0ciAiIgorIm7Do28gZm9pIHBvc3PDrXZlbCByZW1vdmVyIGFycXVpdm8gZGUgY29uZmlndXJhw6fDo28gYW50aWdvICclLjI1MHMnICg9ICclLjI1MHMnKSIKKworIzogc3JjL3JlbW92ZS5jOjQ3NAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVhZCBjb25maWcgZmlsZSBkaXIgYCUuMjUwcycgKGZyb20gYCUuMjUwcycpIgorbXNnc3RyICIiCisibsOjbyBmb2kgcG9zc8OtdmVsIGxlciBkaXJldMOzcmlvIGRlIGFycXVpdm8gZG8gY29uZmlndXJhw6fDo28gJyUuMjUwcycgKGRlICIKKyInJS4yNTBzJykiCisKKyM6IHNyYy9yZW1vdmUuYzo1MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlbW92ZSBvbGQgYmFja3VwIGNvbmZpZyBmaWxlIGAlLjI1MHMnIChvZiBgJS4yNTBzJykiCittc2dzdHIgIiIKKyJuw6NvIGZvaSBwb3Nzw612ZWwgcmVtb3ZlciBhbnRpZ28gYXJxdWl2byBkZSBjb25maWd1cmHDp8OjbyBkZSBiYWNrdXAgIgorIiclLjI1MHMnIChkZSAnJS4yNTBzJykiCisKKyM6IHNyYy9yZW1vdmUuYzo1NjgKK21zZ2lkICJjYW5ub3QgcmVtb3ZlIG9sZCBmaWxlcyBsaXN0IgorbXNnc3RyICJuw6NvIGZvaSBwb3Nzw612ZWwgcmVtb3ZlciBhIGFudGlnYSBsaXN0YSBkZSBhcnF1aXZvcyIKKworIzogc3JjL3JlbW92ZS5jOjU3NAorbXNnaWQgImNhbid0IHJlbW92ZSBvbGQgcG9zdHJtIHNjcmlwdCIKK21zZ3N0ciAibsOjbyBmb2kgcG9zc8OtdmVsIHJlbW92ZXIgc2NyaXB0IFwicG9zdHJtXCIgYW50aWdvIgorCisjOiBzcmMvc2VsZWN0LmM6MTE1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW9mIGluIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICJmaW0gZGUgYXJxdWl2byBpbmVzcGVyYWRvIG5vIG5vbWUgZG8gcGFjb3RlIG5hIGxpbmhhICVkIgorCisjOiBzcmMvc2VsZWN0LmM6MTE2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGxpbmUgaW4gcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQiCittc2dzdHIgImZpbSBkZSBsaW5oYSBpbmVzcGVyYWRvIG5vIG5vbWUgZG8gcGFjb3RlIG5hIGxpbmhhICVkIgorCisjOiBzcmMvc2VsZWN0LmM6MTIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW9mIGFmdGVyIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICJmaW0gZGUgYXJxdWl2byBpbmVzcGVyYWRvIGFww7NzIG5vbWUgZG8gcGFjb3RlIG5hIGxpbmhhICVkIgorCisjOiBzcmMvc2VsZWN0LmM6MTIzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGxpbmUgYWZ0ZXIgcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQiCittc2dzdHIgImZpbSBkZSBsaW5oYSBpbmVzcGVyYWRvIGFww7NzIG5vbWUgZG8gcGFjb3RlIG5hIGxpbmhhICVkIgorCisjOiBzcmMvc2VsZWN0LmM6MTM2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZGF0YSBhZnRlciBwYWNrYWdlIGFuZCBzZWxlY3Rpb24gYXQgbGluZSAlZCIKK21zZ3N0ciAiZGFkbyBpbmVzcGVyYWRvIGFww7NzIHBhY290ZSBlIHNlbGXDp8OjbyBuYSBsaW5oYSAlZCIKKworIzogc3JjL3NlbGVjdC5jOjEzOQorIywgYy1mb3JtYXQKK21zZ2lkICJpbGxlZ2FsIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkOiAlLjI1MHMiCittc2dzdHIgIm5vbWUgZGUgcGFjb3RlIGlsZWdhbCBuYSBsaW5oYSAlZDogJS4yNTBzIgorCisjOiBzcmMvc2VsZWN0LmM6MTQzCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gd2FudGVkIHN0YXR1cyBhdCBsaW5lICVkOiAlLjI1MHMiCittc2dzdHIgImVzdGFkbyBwcm9jdXJhZG8gZGVzY29uaGVjaWRvIG5hIGxpbmhhICVkOiAlLjI1MHMiCisKKyM6IHNyYy9zZWxlY3QuYzoxNDkKK21zZ2lkICJyZWFkIGVycm9yIG9uIHN0YW5kYXJkIGlucHV0IgorbXNnc3RyICJlcnJvIGRlIGxlaXR1cmEgbmEgZW50cmFkYSBwYWRyw6NvIgorCisjOiBzcmMvc3RhdGNtZC5jOjUyCittc2dpZCAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBvdmVycmlkaW5nIGZpbGUgc3RhdCBpbmZvcm1hdGlvbi4iCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRjbWQuYzo2MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvcHlyaWdodCAoQykgMjAwMCwgMjAwMSBXaWNoZXJ0IEFra2VybWFuLlxuIgorIkNvcHlyaWdodCAoQykgMjAwNi0yMDA5IEd1aWxsZW0gSm92ZXIuXG4iCittc2dzdHIgIiIKKyJcbiIKKyJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLTIwMDIgV2ljaGVydCBBa2tlcm1hbi4iCisKKyM6IHNyYy9zdGF0Y21kLmM6ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLS1hZGQgPG93bmVyPiA8Z3JvdXA+IDxtb2RlPiA8ZmlsZT5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBhZGQgYSBuZXcgZW50cnkgaW50byB0aGUgZGF0YWJhc2UuXG4iCisiICAtLXJlbW92ZSA8ZmlsZT4gICAgICAgICAgcmVtb3ZlIGZpbGUgZnJvbSB0aGUgZGF0YWJhc2UuXG4iCisiICAtLWxpc3QgWzxnbG9iLXBhdHRlcm4+XSAgbGlzdCBjdXJyZW50IG92ZXJyaWRlcyBpbiB0aGUgZGF0YWJhc2UuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRjbWQuYzo4OQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgc2V0IHRoZSBkaXJlY3Rvcnkgd2l0aCB0aGUgc3RhdG92ZXJyaWRlIGZpbGUuXG4iCisiICAtLXVwZGF0ZSAgICAgICAgICAgICAgICAgaW1tZWRpYXRlbHkgdXBkYXRlIGZpbGUgcGVybWlzc2lvbnMuXG4iCisiICAtLWZvcmNlICAgICAgICAgICAgICAgICAgZm9yY2UgYW4gYWN0aW9uIGV2ZW4gaWYgYSBzYW5pdHkgY2hlY2sgZmFpbHMuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgcXVpZXQgb3BlcmF0aW9uLCBtaW5pbWFsIG91dHB1dC5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCittc2dzdHIgIiIKKyJVc286ICVzIFs8b3DDp8Ojbz4gLi4uXSA8Y29tYW5kbz5cbiIKKyJcbiIKKyJDb21hbmRvczpcbiIKKyIgIC0tYWRkIDxkb25vPiA8Z3J1cG8+IDxtb2RvPiA8YXJxdWl2bz5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBhZGljaW9uYSB1bWEgbm92YSBlbnRyYWRhIG5vIGJhbmNvIGRlIGRhZG9zLlxuIgorIiAgLS1yZW1vdmUgPGFycXVpdm8+ICAgICAgIHJlbW92ZSBhcnF1aXZvIGRvIGJhbmNvIGRlIGRhZG9zLlxuIgorIiAgLS1saXN0IFs8cGFkcsOjby1nbG9iPl0gICBsaXN0YSBvdmVycmlkZXMgYXR1YWlzIG5vIGJhbmNvIGRlIGRhZG9zLlxuIgorIlxuIgorIk9ww6fDtWVzOlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZXTDs3Jpbz4gICBkZWZpbmUgbyBkaXJldMOzcmlvIGNvbSBvIGFycXVpdm8gXCJzdGF0b3ZlcnJpZGUiCisiXCIuXG4iCisiICAtLXVwZGF0ZSAgICAgICAgICAgICAgICAgYXR1YWxpemEgaW1lZGlhdGFtZW50ZSBhcyBwZXJtaXNzw7VlcyBkbyBhcnF1aXZvLlxuIgorIiAgLS1mb3JjZSAgICAgICAgICAgICAgICAgIGZvcsOnYSB1bWEgYcOnw6NvIG1lc21vIHF1ZSB1bWEgY2hlY2FnZW0gZGUgIgorInNhbmlkYWRlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgZmFsaGUuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgb3BlcmHDp8OjbyBzaWxlbmNpb3NhLCBzYcOtZGEgbcOtbmltYS5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICBtb3N0cmEgZXN0YSBtZW5zYWdlbSBkZSBhanVkYS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBtb3N0cmEgYSB2ZXJzw6NvLlxuIgorCisjOiBzcmMvc3RhdGNtZC5jOjExNgorbXNnaWQgInN0cmlwcGluZyB0cmFpbGluZyAvIgorbXNnc3RyICJyZW1vdmVuZG8gLyBkbyBmaW5hbCIKKworIzogc3JjL3N0YXRjbWQuYzoyMDcKKyMsIGZ1enp5Cittc2dpZCAiY2Fubm90IG9wZW4gbmV3IHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJuw6NvIGZvaSBwb3Nzw612ZWwgYWJyaXIgbm92byBhcnF1aXZvIFwic3RhdG92ZXJyaWRlXCI6ICVzIgorCisjOiBzcmMvc3RhdGNtZC5jOjIyMgorIywgZnV6enkKK21zZ2lkICJlcnJvciByZW1vdmluZyBzdGF0b3ZlcnJpZGUtb2xkIgorbXNnc3RyICJlcnJvIHJlbW92ZW5kbyBcInN0YXRvdmVycmlkZS1vbGRcIjogJXMiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjI0CisjLCBmdXp6eQorbXNnaWQgImVycm9yIGNyZWF0aW5nIG5ldyBzdGF0b3ZlcnJpZGUtb2xkIgorbXNnc3RyICJlcnJvIGNyaWFuZG8gbm92byBcInN0YXRvdmVycmlkZS1vbGRcIjogJXMiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjI2CisjLCBmdXp6eQorbXNnaWQgImVycm9yIGluc3RhbGxpbmcgbmV3IHN0YXRvdmVycmlkZSIKK21zZ3N0ciAiZXJybyBpbnN0YWxhbmRvIG5vdm8gXCJzdGF0b3ZlcnJpZGVcIjogJXMiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjQ2Cittc2dpZCAiLS1hZGQgbmVlZHMgZm91ciBhcmd1bWVudHMiCittc2dzdHIgIi0tYWRkIHByZWNpc2EgZGUgcXVhdHJvIGFyZ3VtZW50b3MiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjU2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiQW4gb3ZlcnJpZGUgZm9yICclcycgYWxyZWFkeSBleGlzdHMsIGJ1dCAtLWZvcmNlIHNwZWNpZmllZCBzbyB3aWxsIGJlICIKKyJpZ25vcmVkLiIKK21zZ3N0ciAibWFzIC0tZm9yY2UgZXNwZWNpZmljYWRvIHBvcnRhbnRvIHNlcsOhIGlnbm9yYWRvLiIKKworIzogc3JjL3N0YXRjbWQuYzoyNjAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIkFuIG92ZXJyaWRlIGZvciAnJXMnIGFscmVhZHkgZXhpc3RzLCBhYm9ydGluZy4iCittc2dzdHIgIlVtIFwib3ZlcnJpZGVcIiBwYXJhIFwiJXNcIiBqw6EgZXhpc3RlLiIKKworIzogc3JjL3N0YXRjbWQuYzoyNzIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIi0tdXBkYXRlIGdpdmVuIGJ1dCAlcyBkb2VzIG5vdCBleGlzdCIKK21zZ3N0ciAiYXZpc286IC0tdXBkYXRlIGluZm9ybWFkbyBtYXMgJXMgbsOjbyBleGlzdGUiCisKKyM6IHNyYy9zdGF0Y21kLmM6Mjk2Cittc2dpZCAiTm8gb3ZlcnJpZGUgcHJlc2VudC4iCittc2dzdHIgIk5lbmh1bSBcIm92ZXJyaWRlXCIgcHJlc2VudGUuIgorCisjOiBzcmMvc3RhdGNtZC5jOjMwNAorIywgZnV6enkKK21zZ2lkICItLXVwZGF0ZSBpcyB1c2VsZXNzIGZvciAtLXJlbW92ZSIKK21zZ3N0ciAiYXZpc286IC0tdXBkYXRlIMOpIGluw7p0aWwgcGFyYSAtLXJlbW92ZSIKKworIzogc3JjL3N0YXRkYi5jOjU5CisjLCBmdXp6eQorbXNnaWQgInN5bnRheCBlcnJvcjogaW52YWxpZCB1aWQgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgImVycm8gaW5zdGFsYW5kbyBub3ZvIFwic3RhdG92ZXJyaWRlXCI6ICVzIgorCisjOiBzcmMvc3RhdGRiLmM6NjQKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yOiB1bmtub3duIHVzZXIgJyVzJyBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGRiLmM6ODMKKyMsIGZ1enp5Cittc2dpZCAic3ludGF4IGVycm9yOiBpbnZhbGlkIGdpZCBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiZXJybyBpbnN0YWxhbmRvIG5vdm8gXCJzdGF0b3ZlcnJpZGVcIjogJXMiCisKKyM6IHNyYy9zdGF0ZGIuYzo4OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yOiB1bmtub3duIGdyb3VwICclcycgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgImZhbGhvdSBhbyBhYnJpciBhcnF1aXZvIFwic3RhdG92ZXJyaWRlXCIiCisKKyM6IHNyYy9zdGF0ZGIuYzoxMDQKKyMsIGZ1enp5Cittc2dpZCAic3ludGF4IGVycm9yOiBpbnZhbGlkIG1vZGUgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgImZhbGhvdSBhbyBhYnJpciBhcnF1aXZvIFwic3RhdG92ZXJyaWRlXCIiCisKKyM6IHNyYy9zdGF0ZGIuYzoxMjcKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiZmFsaG91IGFvIGFicmlyIGFycXVpdm8gXCJzdGF0b3ZlcnJpZGVcIiIKKworIzogc3JjL3N0YXRkYi5jOjEzNAorbXNnaWQgImZhaWxlZCB0byBmc3RhdCBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiZmFsaG91IGFvIGV4ZWN1dGFyIFwiZnN0YXRcIiBubyBhcnF1aXZvIFwic3RhdG92ZXJyaWRlXCIiCisKKyM6IHNyYy9zdGF0ZGIuYzoxMzcKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgcHJldmlvdXMgc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgImZhbGhvdSBhbyBleGVjdXRhciBcImZzdGF0XCIgbm8gYXJxdWl2byBcInN0YXRvdmVycmlkZVwiIGFudGVyaW9yIgorCisjOiBzcmMvc3RhdGRiLmM6MTYyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJzdGF0b3ZlcnJpZGUgZmlsZSBgJS4yNTBzJyIKK21zZ2lkICJyZWFkaW5nIHN0YXRvdmVycmlkZSBmaWxlICclLjI1MHMnIgorbXNnc3RyICJhcnF1aXZvIFwic3RhdG92ZXJyaWRlXCIgJyUuMjUwcyciCisKKyM6IHNyYy9zdGF0ZGIuYzoxNjkKKyMsIGZ1enp5Cittc2dpZCAic3RhdG92ZXJyaWRlIGZpbGUgaXMgbWlzc2luZyBmaW5hbCBuZXdsaW5lIgorbXNnc3RyICJhcnF1aXZvIFwic3RhdG92ZXJyaWRlXCIgY29udMOpbSBsaW5oYSBlbSBicmFuY28iCisKKyM6IHNyYy9zdGF0ZGIuYzoxNzMKK21zZ2lkICJzdGF0b3ZlcnJpZGUgZmlsZSBjb250YWlucyBlbXB0eSBsaW5lIgorbXNnc3RyICJhcnF1aXZvIFwic3RhdG92ZXJyaWRlXCIgY29udMOpbSBsaW5oYSBlbSBicmFuY28iCisKKyM6IHNyYy9zdGF0ZGIuYzoxNzggc3JjL3N0YXRkYi5jOjE5MCBzcmMvc3RhdGRiLmM6MjAyCisjLCBmdXp6eQorbXNnaWQgInN5bnRheCBlcnJvciBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiZmFsaG91IGFvIGFicmlyIGFycXVpdm8gXCJzdGF0b3ZlcnJpZGVcIiIKKworIzogc3JjL3N0YXRkYi5jOjE4NiBzcmMvc3RhdGRiLmM6MTk4IHNyYy9zdGF0ZGIuYzoyMTAKKyMsIGZ1enp5Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgbGluZSBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiZmltIGRlIGxpbmhhIGluZXNwZXJhZG8gbm8gbm9tZSBkbyBwYWNvdGUgbmEgbGluaGEgJWQiCisKKyM6IHNyYy9zdGF0ZGIuYzoyMTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIm11bHRpcGxlIHN0YXR1c292ZXJyaWRlcyBwcmVzZW50IGZvciBmaWxlICclLjI1MHMnIgorbXNnc3RyICJhcnF1aXZvIFwic3RhdG92ZXJyaWRlXCIgJyUuMjUwcyciCisKKyM6IHNyYy90cmlnY21kLmM6NDYKK21zZ2lkICJUeXBlIGRwa2ctdHJpZ2dlciAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgdGhpcyB1dGlsaXR5LiIKK21zZ3N0ciAiRGlnaXRlIGRwa2ctdHJpZ2dlciAtLWhlbHAgcGFyYSBhanVkYSBzb2JyZSBlc3RlIHV0aWxpdMOhcmlvLiIKKworIzogc3JjL3RyaWdjbWQuYzo1MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuICVzIHBhY2thZ2UgdHJpZ2dlciB1dGlsaXR5IHZlcnNpb24gJXMuXG4iCittc2dzdHIgIlV0aWxpdMOhcmlvIGRlIGdhdGlsaG8gZGUgcGFjb3RlIERlYmlhbiAlcy5cbiIKKworIzogc3JjL3RyaWdjbWQuYzo2NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9ucz4gLi4uXSA8dHJpZ2dlci1uYW1lPlxuIgorIiAgICAgICAlcyBbPG9wdGlvbnM+IC4uLl0gPGNvbW1hbmQ+XG4iCisiXG4iCittc2dzdHIgIiIKKyJVc286ICVzIFs8b3DDp8O1ZXM+IC4uLl0gPG5vbWUtZG8tZ2F0aWxobz5cbiIKKyIgICAgICVzIFs8b3DDp8O1ZXM+IC4uLl0gPGNvbWFuZG8+XG4iCisiXG4iCisKKyM6IHNyYy90cmlnY21kLmM6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLS1jaGVjay1zdXBwb3J0ZWQgICAgICAgICAgICAgICAgQ2hlY2sgaWYgdGhlIHJ1bm5pbmcgZHBrZyBzdXBwb3J0cyAiCisidHJpZ2dlcnMuXG4iCisiXG4iCittc2dzdHIgIiIKKyJDb21hbmRvczpcbiIKKyIgIC0tY2hlY2stc3VwcG9ydGVkICAgICAgICAgICAgICAgIENoZWNhIHNlIG8gZHBrZyBlbSBleGVjdcOnw6NvIHRlbSBzdXBvcnRlICIKKyJhXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnYXRpbGhvcy5cbiIKKyJcbiIKKworIzogc3JjL3RyaWdjbWQuYzo4MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorIiAgLS1ieS1wYWNrYWdlPTxwYWNrYWdlPiAgICAgICAgICAgT3ZlcnJpZGUgdHJpZ2dlciBhd2FpdGVyIChub3JtYWxseSBzZXRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnkgZHBrZykuXG4iCisiICAtLW5vLWF3YWl0ICAgICAgICAgICAgICAgICAgICAgICBObyBwYWNrYWdlIG5lZWRzIHRvIGF3YWl0IHRoZSAiCisicHJvY2Vzc2luZy5cbiIKKyIgIC0tbm8tYWN0ICAgICAgICAgICAgICAgICAgICAgICAgIEp1c3QgdGVzdCAtIGRvbid0IGFjdHVhbGx5IGNoYW5nZSAiCisiYW55dGhpbmcuXG4iCisiXG4iCittc2dzdHIgIiIKKyJPcMOnw7VlczpcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmV0w7NyaW8+ICAgICAgICAgICBVc2EgPGRpcmV0w7NyaW8+IGFvIGludsOpcyBkZSAlcy5cbiIKKyIgIC0tYnktcGFja2FnZT08cGFjb3RlPiAgICAgICAgICAgIFNvYnJlcMO1ZSBlc3BlcmEgZGUgZ2F0aWxobyAobm9ybWFsbWVudGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVmaW5pZG8gcGVsbyBkcGtnKS5cbiIKKyIgIC0tbm8tYXdhaXQgICAgICAgICAgICAgICAgICAgICAgIE5lbmh1bSBwYWNvdGUgcHJlY2lzYSBlc3BlcmFyIG9cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvY2Vzc2FtZW50by5cbiIKKyIgIC0tbm8tYWN0ICAgICAgICAgICAgICAgICAgICAgICAgIFNvbWVudGUgdGVzdGUgLSBuw6NvIG11ZGEgbmFkYS5cbiIKKyJcbiIKKworIzogc3JjL3RyaWdjbWQuYzoxNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IHRyaWdnZXJzIGRhdGEgZGlyZWN0b3J5IG5vdCB5ZXQgY3JlYXRlZFxuIgorbXNnc3RyICIlczogZGlyZXTDs3JpbyBkZSBkYWRvcyBkZSBnYXRpbGhvIGFpbmRhIG7Do28gY3JpYWRvXG4iCisKKyM6IHNyYy90cmlnY21kLmM6MTU2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB0cmlnZ2VyIHJlY29yZHMgbm90IHlldCBpbiBleGlzdGVuY2VcbiIKK21zZ3N0ciAiJXM6IHJlZ2lzdHJvcyBkZSBnYXRpbGhvcyBhaW5kYSBpbmV4aXN0ZW50ZXNcbiIKKworIzogc3JjL3RyaWdjbWQuYzoyMDUKKyMsIGZ1enp5Cittc2dpZCAidGFrZXMgb25lIGFyZ3VtZW50LCB0aGUgdHJpZ2dlciBuYW1lIgorbXNnc3RyICJkcGtnLXRyaWdnZXIgYWNlaXRhIHVtIGFyZ3VtZW50bywgbyBub21lIGRvIGdhdGlsaG8iCisKKyM6IHNyYy90cmlnY21kLmM6MjEwCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJkcGtnLXRyaWdnZXIgbXVzdCBiZSBjYWxsZWQgZnJvbSBhIG1haW50YWluZXIgc2NyaXB0IChvciB3aXRoIGEgLS1ieS0iCisjfCAicGFja2FnZSBvcHRpb24pIgorbXNnaWQgIm11c3QgYmUgY2FsbGVkIGZyb20gYSBtYWludGFpbmVyIHNjcmlwdCAob3Igd2l0aCBhIC0tYnktcGFja2FnZSBvcHRpb24pIgorbXNnc3RyICIiCisiZHBrZy10cmlnZ2VyIGRldmUgc2VyIGNoYW1hZG8gYSBwYXJ0aXIgZGUgdW0gc2NyaXB0IGRlIG1hbnRlbmVkb3IgKG91IGNvbSAiCisidW1hIG9ww6fDo28gLS1ieS1wYWNrYWdlKSIKKworIzogc3JjL3RyaWdjbWQuYzoyMTUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImRwa2ctdHJpZ2dlcjogaWxsZWdhbCBhd2FpdGVkIHBhY2thZ2UgbmFtZSBgJS4yNTBzJzogJS4yNTBzIgorbXNnaWQgImlsbGVnYWwgYXdhaXRlZCBwYWNrYWdlIG5hbWUgJyUuMjUwcyc6ICUuMjUwcyIKK21zZ3N0ciAiZHBrZy10cmlnZ2VyOiBub21lIGRlIHBhY290ZSBlbSBlc3BlcmEgaWxlZ2FsICclLjI1MHMnOiAlLjI1MHMiCisKKyM6IHNyYy90cmlnY21kLmM6MjIxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHRyaWdnZXIgbmFtZSBgJS4yNTBzJzogJS4yNTBzIgorbXNnc3RyICJkcGtnLXRyaWdnZXI6IG5vbWUgZGUgZ2F0aWxobyBpbnbDoWxpZG8gJyUuMjUwcyc6ICUuMjUwcyIKKworIzogc3JjL3RyaWdwcm9jLmM6MjUwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogY3ljbGUgZm91bmQgd2hpbGUgcHJvY2Vzc2luZyB0cmlnZ2VyczpcbiIKKyIgY2hhaW4gb2YgcGFja2FnZXMgd2hvc2UgdHJpZ2dlcnMgYXJlIG9yIG1heSBiZSByZXNwb25zaWJsZTpcbiIKK21zZ3N0ciAiIgorIiVzOiBjaWNsbyBlbmNvbnRyYWRvIGR1cmFudGUgbyBwcm9jZXNzYW1lbnRvIGRvcyBnYXRpbGhvczpcbiIKKyIgY2FkZWlhIGRlIHBhY290ZXMgY3Vqb3MgZ2F0aWxob3Mgc8OjbyBvdSBwb2RlbSBzZXIgcmVzcG9uc8OhdmVpczpcbiIKKworIzogc3JjL3RyaWdwcm9jLmM6MjU4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgcGFja2FnZXMnIHBlbmRpbmcgdHJpZ2dlcnMgd2hpY2ggYXJlIG9yIG1heSBiZSB1bnJlc29sdmFibGU6XG4iCittc2dzdHIgIiIKKyJcbiIKKyIgZ2F0aWxob3MgZG9zIHBhY290ZXMgcGVuZGVudGVzIHF1ZSBzw6NvIG91IHBvZGVtIHNlciBpbnNvbMO6dmVpczpcbiIKKworIzogc3JjL3RyaWdwcm9jLmM6MjgxCittc2dpZCAidHJpZ2dlcnMgbG9vcGluZywgYWJhbmRvbmVkIgorbXNnc3RyICJnYXRpbGhvcyBlbSBcImxvb3BcIiwgYWJhbmRvbmFkbyIKKworIzogc3JjL3RyaWdwcm9jLmM6MzEyCisjLCBjLWZvcm1hdAorbXNnaWQgIlByb2Nlc3NpbmcgdHJpZ2dlcnMgZm9yICVzIC4uLlxuIgorbXNnc3RyICJQcm9jZXNzYW5kbyBnYXRpbGhvcyBwYXJhICVzIC4uLlxuIgorCisjOiBzcmMvdXBkYXRlLmM6NTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIi0tJXMgbmVlZHMgZXhhY3RseSBvbmUgUGFja2FnZXMgZmlsZSBhcmd1bWVudCIKK21zZ2lkICItLSVzIG5lZWRzIGV4YWN0bHkgb25lIFBhY2thZ2VzLWZpbGUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMgcHJlY2lzYSBkZSBleGF0YW1lbnRlIHVtIGFycXVpdm8gUGFja2FnZXMgY29tbyBhcmd1bWVudG8iCisKKyM6IHNyYy91cGRhdGUuYzo2MgorbXNnaWQgInVuYWJsZSB0byBhY2Nlc3MgZHBrZyBzdGF0dXMgYXJlYSBmb3IgYnVsayBhdmFpbGFibGUgdXBkYXRlIgorbXNnc3RyICIiCisiaW1wb3Nzw612ZWwgYWNlc3NhciBhIMOhcmVhIGRlIGVzdGFkb3MgZG8gZHBrZyBwYXJhIHVtYSBjb21wbGV0YSBhdHVhbGl6YcOnw6NvICIKKyJkZSBkaXNwb25pYmlsaWRhZGUiCisKKyM6IHNyYy91cGRhdGUuYzo2NAorbXNnaWQgImJ1bGsgYXZhaWxhYmxlIHVwZGF0ZSByZXF1aXJlcyB3cml0ZSBhY2Nlc3MgdG8gZHBrZyBzdGF0dXMgYXJlYSIKK21zZ3N0ciAiIgorImF0dWFsaXphw6fDo28gY29tcGxldGEgZGUgZGlzcG9uaWJpbGlkYWRlIHJlcXVlciBhY2Vzc28gZGUgZXNjcml0YSDDoCDDoXJlYSBkZSAiCisiZXN0YWRvcyBkbyBkcGtnIgorCisjOiBzcmMvdXBkYXRlLmM6NzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVwbGFjaW5nIGF2YWlsYWJsZSBwYWNrYWdlcyBpbmZvLCB1c2luZyAlcy5cbiIKK21zZ3N0ciAiU3Vic3RpdHVpbmRvIGluZm9ybWHDp8O1ZXMgZGUgcGFjb3RlcyBkaXNwb27DrXZlaXMsIHVzYW5kbyAlcy5cbiIKKworIzogc3JjL3VwZGF0ZS5jOjc0CisjLCBjLWZvcm1hdAorbXNnaWQgIlVwZGF0aW5nIGF2YWlsYWJsZSBwYWNrYWdlcyBpbmZvLCB1c2luZyAlcy5cbiIKK21zZ3N0ciAiQXR1YWxpemFuZG8gaW5mb3JtYcOnw7VlcyBkZSBwYWNvdGVzIGRpc3BvbsOtdmVpcywgdXNhbmRvICVzLlxuIgorCisjOiBzcmMvdXBkYXRlLmM6MTAxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJJbmZvcm1hdGlvbiBhYm91dCAlZCBwYWNrYWdlKHMpIHdhcyB1cGRhdGVkLlxuIgorbXNnaWQgIkluZm9ybWF0aW9uIGFib3V0ICVkIHBhY2thZ2Ugd2FzIHVwZGF0ZWQuXG4iCittc2dpZF9wbHVyYWwgIkluZm9ybWF0aW9uIGFib3V0ICVkIHBhY2thZ2VzIHdhcyB1cGRhdGVkLlxuIgorbXNnc3RyWzBdICJJbmZvcm1hw6fDtWVzIHNvYnJlICVkIHBhY290ZShzKSBmb3JhbSBhdHVhbGl6YWRhcy5cbiIKK21zZ3N0clsxXSAiSW5mb3JtYcOnw7VlcyBzb2JyZSAlZCBwYWNvdGUocykgZm9yYW0gYXR1YWxpemFkYXMuXG4iCisKKyM6IHNyYy91cGRhdGUuYzoxMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm9ic29sZXRlICctLSVzJyBvcHRpb24sIHVuYXZhaWxhYmxlIHBhY2thZ2VzIGFyZSBhdXRvbWF0aWNhbGx5IGNsZWFuZWQgdXAuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgbmFtZSAnJS41MHMuLi4nIGlzIHRvbyBsb25nIgorbXNnc3RyICJub21lIGRvIGFycXVpdm8gJyUuNTBzLi4uJyDDqSBtdWl0byBsb25nbyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoxMjkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGZpbGUgbmFtZSAnJS4yNTBzJyIKK21zZ3N0ciAiaW1wb3Nzw612ZWwgYWJyaXIgYXJxdWl2byBmb250ZSAnJS4yNTBzJyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoxODkKKyMsIGZ1enp5Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgY29udHJvbCBkaXJlY3RvcnkiCittc2dzdHIgImltcG9zc8OtdmVsIGFicmlyIGRpcmV0w7NyaW8gZGUgY29udHJvbGUgdGVtcG9yw6FyaW8iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTkxCisjLCBmdXp6eQorbXNnaWQgImNvbnRyb2wgZGlyZWN0b3J5IGlzIG5vdCBhIGRpcmVjdG9yeSIKK21zZ3N0ciAibsOjbyBmb2kgcG9zc8OtdmVsIGxlciBkaXJldMOzcmlvIGluZm8iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTkzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbnRyb2wgZGlyZWN0b3J5IGhhcyBiYWQgcGVybWlzc2lvbnMgJTAzbG8gKG11c3QgYmUgPj0wNzU1IGFuZCA8PTA3NzUpIgorbXNnc3RyICIiCisiZGlyZXTDs3JpbyBkZSBjb250cm9sZSBwb3NzdWkgcGVybWlzc8O1ZXMgcnVpbnMgJTAzbG8gKGRldmVtIHNlciA+PTA3NTUgZSAiCisiPD0wNzU1KSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAibWFpbnRhaW5lciBzY3JpcHQgYCUuNTBzJyBpcyBub3QgYSBwbGFpbiBmaWxlIG9yIHN5bWxpbmsiCittc2dzdHIgIiIKKyJzY3JpcHQgZGUgbWFudGVuZWRvciAnJS41MHMnIG7Do28gw6kgdW0gYXJxdWl2byBzaW1wbGVzIG91IHVtYSBsaWdhw6fDo28gIgorInNpbWLDs2xpY2EiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjA3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJtYWludGFpbmVyIHNjcmlwdCBgJS41MHMnIGhhcyBiYWQgcGVybWlzc2lvbnMgJTAzbG8gKG11c3QgYmUgPj0wNTU1IGFuZCAiCisiPD0wNzc1KSIKK21zZ3N0ciAiIgorInNjcmlwdCBkZSBtYW50ZW5lZG9yICclLjUwcycgcG9zc3VpIHBlcm1pc3PDtWVzIHJ1aW5zICUwM2xvIChkZXZlbSBzZXIgPj0wNTU1ICIKKyJlIDw9MDc3NSkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjExCisjLCBjLWZvcm1hdAorbXNnaWQgIm1haW50YWluZXIgc2NyaXB0IGAlLjUwcycgaXMgbm90IHN0YXR0YWJsZSIKK21zZ3N0ciAic2NyaXB0IGRlIG1hbnRlbmVkb3IgJyUuNTBzJyBuw6NvIHBlcm1pdGUgYSBleGVjdcOnw6NvIGRlIFwic3RhdFwiIgorCisjIHIgZHBrZy1kZWIvYnVpbGQuYzozNTYKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjM3Cittc2dpZCAiZXJyb3Igb3BlbmluZyBjb25mZmlsZXMgZmlsZSIKK21zZ3N0ciAiZXJybyBhYnJpbmRvIGFycXVpdm8gZGUgYXJxdWl2b3MgZGUgY29uZmlndXJhw6fDo28gKFwiY29uZmZpbGVzXCIpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI0NgorbXNnaWQgImVtcHR5IHN0cmluZyBmcm9tIGZnZXRzIHJlYWRpbmcgY29uZmZpbGVzIgorbXNnc3RyICIiCisic3RyaW5nIHZhemlhIHZpbmRhIGRlIFwiZmdldHNcIiBhbyBsZXIgYXJxdWl2b3MgZGUgY29uZmlndXJhw6fDo28gKFwiY29uZmZpbGVzIgorIlwiKSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIG5hbWUgJyUuNTBzLi4uJyBpcyB0b28gbG9uZywgb3IgbWlzc2luZyBmaW5hbCBuZXdsaW5lIgorbXNnc3RyICIiCisiYXZpc28sIG5vbWUgZG8gYXJxdWl2byBkZSBjb25maWd1cmHDp8OjbyAoXCJjb25mZmlsZVwiKSAnJS41MHMuLi4nIMOpIG11aXRvXG4iCisibG9uZ28gb3UgZmFsdGEgdW1hIG5vdmEgbGluaGEgbm8gZmluYWxcbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNjQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIGZpbGVuYW1lICclcycgY29udGFpbnMgdHJhaWxpbmcgd2hpdGUgc3BhY2VzIgorbXNnc3RyICIiCisiYXZpc28sIG5vbWUgZGUgYXJxdWl2byBkZSBjb25maWd1cmHDp8OjbyAoXCJjb25mZmlsZVwiKSAnJXMnIGNvbnTDqW1cbiIKKyJlc3Bhw6dvcyBlbSBicmFuY28gbm8gZmluYWxcbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgYCUuMjUwcycgZG9lcyBub3QgYXBwZWFyIGluIHBhY2thZ2UiCittc2dzdHIgImFycXVpdm8gZGUgY29uZmlndXJhw6fDo28gKFwiY29uZmZpbGVcIikgJyUuMjUwcycgbsOjbyBhcGFyZWNlIG5vIHBhY290ZSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgYCUuMjUwcycgaXMgbm90IHN0YXR0YWJsZSIKK21zZ3N0ciAiIgorImFycXVpdm8gZGUgY29uZmlndXJhw6fDo28gKFwiY29uZmZpbGVcIikgJyUuMjUwcycgbsOjbyBwZXJtaXRlIGEgZXhlY3XDp8OjbyBkZSAiCisiXCJzdGF0XCIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjcwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSAnJXMnIGlzIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgIiIKKyJhdmlzbywgYXJxdWl2byBkZSBjb25maWd1cmHDp8OjbyAoXCJjb25mZmlsZVwiKSAnJXMnIG7Do28gw6kgdW0gYXJxdWl2byBzaW1wbGVzXG4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6Mjc0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBuYW1lICclcycgaXMgZHVwbGljYXRlZCIKK21zZ3N0ciAibm9tZSBlc2NyYXZvICVzIGR1cGxpY2FkbyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyODcKK21zZ2lkICJlcnJvciByZWFkaW5nIGNvbmZmaWxlcyBmaWxlIgorbXNnc3RyICJlcnJvIGxlbmRvIGFycXVpdm8gZGUgYXJxdWl2b3MgZGUgY29uZmlndXJhw6fDo28gKFwiY29uZmZpbGVzXCIpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjMzOQorbXNnaWQgInBhY2thZ2UgbmFtZSBoYXMgY2hhcmFjdGVycyB0aGF0IGFyZW4ndCBsb3dlcmNhc2UgYWxwaGFudW1zIG9yIGAtKy4nIgorbXNnc3RyICIiCisibm9tZSBkbyBwYWNvdGUgcG9zc3VpIGNhcmFjdGVyZXMgcXVlIG7Do28gc8OjbyBhbGZhbnVtw6lyaWNvcyBlbSBjYWl4YS1iYWl4YSBvdSAiCisiJy0rLiciCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MzQxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICInJXMnIGNvbnRhaW5zIHVzZXItZGVmaW5lZCBQcmlvcml0eSB2YWx1ZSAnJXMnIgorbXNnc3RyICJhdmlzbywgJyVzJyBjb250w6ltIHZhbG9yIGRlIFByaW9yaWRhZGUgJyVzJyBkZWZpbmlkbyBwZWxvIHVzdcOhcmlvXG4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MzQ3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICInJXMnIGNvbnRhaW5zIHVzZXItZGVmaW5lZCBmaWVsZCAnJXMnIgorbXNnc3RyICJhdmlzbywgJyVzJyBjb250w6ltIGNhbXBvICclcycgZGVmaW5pZG8gcGVsbyB1c3XDoXJpb1xuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjM1OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgJWQgd2FybmluZyBhYm91dCB0aGUgY29udHJvbCBmaWxlKHMpXG4iCittc2dpZF9wbHVyYWwgImlnbm9yaW5nICVkIHdhcm5pbmdzIGFib3V0IHRoZSBjb250cm9sIGZpbGUocylcbiIKK21zZ3N0clswXSAiZHBrZy1kZWI6IGlnbm9yYW5kbyAlZCBhdmlzb3Mgc29icmUgbyhzKSBhcnF1aXZvKHMpIGRlIGNvbnRyb2xlXG4iCittc2dzdHJbMV0gImRwa2ctZGViOiBpZ25vcmFuZG8gJWQgYXZpc29zIHNvYnJlIG8ocykgYXJxdWl2byhzKSBkZSBjb250cm9sZVxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQwMyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQyOQorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhIDxkaXJlY3Rvcnk+IGFyZ3VtZW50IgorbXNnc3RyICItLSVzIHByZWNpc2EgZGUgdW0gYXJndW1lbnRvIDxkaXJldMOzcmlvPiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MDkKK21zZ2lkICItLWJ1aWxkIHRha2VzIGF0IG1vc3QgdHdvIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS1idWlsZCBhY2VpdGEgbm8gbcOheGltbyBkb2lzIGFyZ3VtZW50b3MiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDEzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGVjayBmb3IgZXhpc3RlbmNlIG9mIGFyY2hpdmUgYCUuMjUwcyciCittc2dzdHIgImltcG9zc8OtdmVsIGNoZWNhciBhIGV4aXN0w6puY2lhIGRvIGFycXVpdm8gJyUuMjUwcyciCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDMwCittc2dpZCAidGFyZ2V0IGlzIGRpcmVjdG9yeSAtIGNhbm5vdCBza2lwIGNvbnRyb2wgZmlsZSBjaGVjayIKK21zZ3N0ciAiIgorImFsdm8gw6kgdW0gZGlyZXTDs3JpbyAtIG7Do28gw6kgcG9zc8OtdmVsIHB1bGFyIGEgY2hlY2FnZW0gZG8gYXJxdWl2byBkZSBjb250cm9sZSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzEKK21zZ2lkICJub3QgY2hlY2tpbmcgY29udGVudHMgb2YgY29udHJvbCBhcmVhLiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQzMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZHBrZy1kZWI6IGJ1aWxkaW5nIGFuIHVua25vd24gcGFja2FnZSBpbiAnJXMnLlxuIgorbXNnc3RyICJkcGtnLWRlYjogY29uc3RydWluZG8gcGFjb3RlICclcycgZW0gJyVzJy5cbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZy1kZWI6IGJ1aWxkaW5nIHBhY2thZ2UgYCVzJyBpbiBgJXMnLlxuIgorbXNnc3RyICJkcGtnLWRlYjogY29uc3RydWluZG8gcGFjb3RlICclcycgZW0gJyVzJy5cbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0NjcgZHBrZy1kZWIvYnVpbGQuYzo1MjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byBtYWtlIHRtcGZpbGUgKGRhdGEpIgorbXNnaWQgImZhaWxlZCB0byBtYWtlIHRlbXBvcmFyeSBmaWxlICglcykiCittc2dzdHIgImZhbGhvdSBhbyBjcmlhciB0bXBmaWxlIChkYXRhKSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0NjcgZHBrZy1kZWIvYnVpbGQuYzo0NzAgZHBrZy1kZWIvYnVpbGQuYzo0NzcKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDg1IGRwa2ctZGViL2J1aWxkLmM6NDk0IGRwa2ctZGViL2J1aWxkLmM6NDk5CisjLCBmdXp6eQorI3wgbXNnaWQgImNvbnRyb2wgYXJlYSIKK21zZ2lkICJjb250cm9sIG1lbWJlciIKK21zZ3N0ciAiw6FyZWEgZGUgY29udHJvbGUiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDcwIGRwa2ctZGViL2J1aWxkLmM6NTI0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gdW5saW5rIHRtcGZpbGUgKGRhdGEpLCAlcyIKK21zZ2lkICJmYWlsZWQgdG8gdW5saW5rIHRlbXBvcmFyeSBmaWxlICglcyksICVzIgorbXNnc3RyICJmYWxob3UgYW8gZXhlY3V0YXIgXCJ1bmxpbmtcIiBubyB0bXBmaWxlIChkYWRvcyksICVzIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ4NSBkcGtnLWRlYi9idWlsZC5jOjU5MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIHJld2luZCB0bXBmaWxlIChkYXRhKSIKK21zZ2lkICJmYWlsZWQgdG8gcmV3aW5kIHRlbXBvcmFyeSBmaWxlICglcykiCittc2dzdHIgImZhbGhvdSBhbyByZXRyb2NlZGVyIHRtcGZpbGUgKGRhZG9zKSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0OTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBzdGF0IHRlbXBvcmFyeSBmaWxlICglcykiCittc2dzdHIgImZhbGhvdSBhbyBjcmlhciB0bXBmaWxlIChkYXRhKSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0OTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igd3JpdGluZyBgJXMnIgorbXNnc3RyICJlcnJvIGVzY3JldmVuZG8gJyVzJyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo1MjEgZHBrZy1kZWIvYnVpbGQuYzo1MjQgZHBrZy1kZWIvYnVpbGQuYzo1NDYKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTcyIGRwa2ctZGViL2J1aWxkLmM6NTgwIGRwa2ctZGViL2J1aWxkLmM6NTkzCisjLCBmdXp6eQorI3wgbXNnaWQgImJldHdlZW4gbWVtYmVycyIKK21zZ2lkICJkYXRhIG1lbWJlciIKK21zZ3N0ciAiZW50cmUgbWVtYnJvcyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo1NzEgZHBrZy1kZWIvYnVpbGQuYzo1ODAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byB3cml0ZSBmaWxlbmFtZSB0byB0YXIgcGlwZSAoZGF0YSkiCittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIGZpbGVuYW1lIHRvIHRhciBwaXBlICglcykiCittc2dzdHIgImZhbGhvdSBhbyBlc2NyZXZlciBvIG5vbWUgZGUgYXJxdWl2byBwYXJhIG8gXCJwaXBlXCIgdGFyIChkYWRvcykiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTg0Cittc2dpZCAiPGNvbXByZXNzPiBmcm9tIHRhciAtY2YiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjYxIGRwa2ctZGViL2V4dHJhY3QuYzo2MworbXNnaWQgInNoZWxsIGNvbW1hbmQgdG8gbW92ZSBmaWxlcyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6NzAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgZmlsZSBpbiAlcyBpbiAlLjI1NXMiCittc2dzdHIgImZpbSBkZSBhcnF1aXZvIGluZXNwZXJhZG8gZW0gJXMgZW0gJS4yNTVzIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcmVhZGluZyAlcyBmcm9tIGZpbGUgJS4yNTVzIgorbXNnc3RyICJlcnJvIGxlbmRvICVzIGRlIGFycXVpdm8gJS4yNTVzIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTI1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZWFkIGFyY2hpdmUgYCUuMjU1cyciCittc2dzdHIgImZhbGhvdSBhbyBsZXIgYXJxdWl2byAnJS4yNTVzJyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjEyNworbXNnaWQgImZhaWxlZCB0byBmc3RhdCBhcmNoaXZlIgorbXNnc3RyICJmYWxob3UgYW8gZXhlY3V0YXIgXCJmc3RhdFwiIG5vIGFycXVpdm8iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxMzEKKyMsIGZ1enp5CisjfCBtc2dpZCAiYXJjaGl2ZSBoYXMgbm8gZG90IGluIHZlcnNpb24gbnVtYmVyIgorbXNnaWQgImFyY2hpdmUgbWFnaWMgdmVyc2lvbiBudW1iZXIiCittc2dzdHIgImFycXVpdm8gbsOjbyBwb3NzdWkgcG9udG8gbm8gbsO6bWVybyBkZSB2ZXJzw6NvIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTQzCisjLCBmdXp6eQorI3wgbXNnaWQgImFyY2hpdmUgaGFzIG5vIG5ld2xpbmVzIGluIGhlYWRlciIKK21zZ2lkICJhcmNoaXZlIG1lbWJlciBoZWFkZXIiCittc2dzdHIgImFycXVpdm8gbsOjbyBwb3NzdWkgbm92YXMgbGluaGFzIG5vIGNhYmXDp2FsaG8iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNDgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBwYXJ0IG51bWJlciIKK21zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgYXJjaGl2ZSBoZWFkZXIgbWFnaWMiCittc2dzdHIgImFycXVpdm8gJyUuMjUwcycgZXN0w6EgY29ycm9tcGlkbyAtIG7Dum1lcm8gcGFyY2lhbCBydWltIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTU1CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgbm90IGEgZGViaWFuIGJpbmFyeSBhcmNoaXZlICh0cnkgZHBrZy1zcGxpdD8pIgorbXNnc3RyICJhcnF1aXZvICclLjI1MHMnIG7Do28gw6kgdW0gYXJxdWl2byBiaW7DoXJpbyBkZWJpYW4gKHRlbnRlIGRwa2ctc3BsaXQ/KSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE1OQorIywgZnV6enkKKyN8IG1zZ2lkICJhcmNoaXZlIGhhcyBubyBkb3QgaW4gdmVyc2lvbiBudW1iZXIiCittc2dpZCAiYXJjaGl2ZSBpbmZvcm1hdGlvbiBoZWFkZXIgbWVtYmVyIgorbXNnc3RyICJhcnF1aXZvIG7Do28gcG9zc3VpIHBvbnRvIG5vIG7Dum1lcm8gZGUgdmVyc8OjbyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE2MgorbXNnaWQgImFyY2hpdmUgaGFzIG5vIG5ld2xpbmVzIGluIGhlYWRlciIKK21zZ3N0ciAiYXJxdWl2byBuw6NvIHBvc3N1aSBub3ZhcyBsaW5oYXMgbm8gY2FiZcOnYWxobyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE2NQorbXNnaWQgImFyY2hpdmUgaGFzIG5vIGRvdCBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAiYXJxdWl2byBuw6NvIHBvc3N1aSBwb250byBubyBuw7ptZXJvIGRlIHZlcnPDo28iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiYXJjaGl2ZSB2ZXJzaW9uICUuMjUwcyBub3QgdW5kZXJzdG9vZCwgZ2V0IG5ld2VyIGRwa2ctZGViIgorbXNnc3RyICIiCisidmVyc8OjbyBkbyBhcnF1aXZvICUuMjUwcyBuw6NvIGVudGVuZGlkYSwgb2J0ZW5oYSB1bSBkcGtnLWRlYiBtYWlzIHJlY2VudGUiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNzkgZHBrZy1kZWIvZXh0cmFjdC5jOjIwNQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic2tpcHBlZCBtZW1iZXIgZGF0YSBmcm9tICVzIgorbXNnaWQgInNraXBwZWQgYXJjaGl2ZSBtZW1iZXIgZGF0YSBmcm9tICVzIgorbXNnc3RyICJwdWxhZG8gZGFkb3MgZGUgbWVtYnJvIGRlICVzIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTk0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGNvbnRhaW5zIHVudW5kZXJzdG9vZCBkYXRhIG1lbWJlciAlLipzLCBnaXZpbmcgdXAiCittc2dpZCAiYXJjaGl2ZSAnJS4yNTBzJyBjb250YWlucyBub3QgdW5kZXJzdG9vZCBkYXRhIG1lbWJlciAlLipzLCBnaXZpbmcgdXAiCittc2dzdHIgIiIKKyJhcnF1aXZvICclLjI1MHMnIGNvbnTDqW0gbWVtYnJvcyBkZSBkYWRvcyBuw6NvIGVudGVuZGlkb3MgJS4qcywgZGVzaXN0aW5kbyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE5OQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZSBgJS4yNTBzJyBjb250YWlucyB0d28gY29udHJvbCBtZW1iZXJzLCBnaXZpbmcgdXAiCittc2dpZCAiYXJjaGl2ZSAnJS4yNTBzJyBjb250YWlucyB0d28gY29udHJvbCBtZW1iZXJzLCBnaXZpbmcgdXAiCittc2dzdHIgImFycXVpdm8gJyUuMjUwcycgY29udMOpbSBkb2lzIG1lbWJyb3MgZGUgY29udHJvbGUsIGRlc2lzdGluZG8iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyMTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIgbmV3IGRlYmlhbiBwYWNrYWdlLCB2ZXJzaW9uICVzLlxuIgorI3wgIiBzaXplICVsZCBieXRlczogY29udHJvbCBhcmNoaXZlPSAlemkgYnl0ZXMuXG4iCittc2dpZCAiIgorIiBuZXcgZGViaWFuIHBhY2thZ2UsIHZlcnNpb24gJXMuXG4iCisiIHNpemUgJWpkIGJ5dGVzOiBjb250cm9sIGFyY2hpdmU9ICVqZCBieXRlcy5cbiIKK21zZ3N0ciAiIgorIiBub3ZvIHBhY290ZSBkZWJpYW4sIHZlcnPDo28gJXMuXG4iCisiIHRhbWFuaG8gJWxkIGJ5dGVzOiBhcnF1aXZvIGRlIGNvbnRyb2xlPSAlemkgYnl0ZXMuXG4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyMzIKK21zZ2lkICJhcmNoaXZlIGNvbnRyb2wgbWVtYmVyIHNpemUiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIzNQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYXJjaGl2ZSBoYXMgbWFsZm9ybWF0dGVkIGNvbnRyb2wgbGVuZ3RoIGAlcyciCittc2dpZCAiYXJjaGl2ZSBoYXMgbWFsZm9ybWF0dGVkIGNvbnRyb2wgbWVtYmVyIHNpemUgJyVzJyIKK21zZ3N0ciAiYXJxdWl2byBwb3NzdWkgdGFtYW5obyBkZSBjb250cm9sZSBtYWwgZm9ybWF0YWRvICclcyciCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNDIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInNraXBwZWQgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ2lkICJza2lwcGVkIGFyY2hpdmUgY29udHJvbCBtZW1iZXIgZGF0YSBmcm9tICVzIgorbXNnc3RyICJwdWxhZG8gZGFkb3MgZGUgbWVtYnJvIGRlICVzIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjQ2CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiIG9sZCBkZWJpYW4gcGFja2FnZSwgdmVyc2lvbiAlcy5cbiIKKyN8ICIgc2l6ZSAlbGQgYnl0ZXM6IGNvbnRyb2wgYXJjaGl2ZT0gJXppLCBtYWluIGFyY2hpdmU9ICVsZC5cbiIKK21zZ2lkICIiCisiIG9sZCBkZWJpYW4gcGFja2FnZSwgdmVyc2lvbiAlcy5cbiIKKyIgc2l6ZSAlamQgYnl0ZXM6IGNvbnRyb2wgYXJjaGl2ZT0gJWpkLCBtYWluIGFyY2hpdmU9ICVqZC5cbiIKK21zZ3N0ciAiIgorIiBhbnRpZ28gcGFjb3RlIGRlYmlhbiwgdmVyc8OjbyAlcy5cbiIKKyIgdGFtYW5obyAlbGQgYnl0ZXM6IGFycXVpdm8gZGUgY29udHJvbGU9ICV6aSwgYXJxdWl2byBtYWluPSAlbGQuXG4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2ctZGViOiBmaWxlIGxvb2tzIGxpa2UgaXQgbWlnaHQgYmUgYW4gYXJjaGl2ZSB3aGljaCBoYXMgYmVlblxuIgorImRwa2ctZGViOiAgICBjb3JydXB0ZWQgYnkgYmVpbmcgZG93bmxvYWRlZCBpbiBBU0NJSSBtb2RlXG4iCittc2dzdHIgIiIKKyJkcGtnLWRlYjogYXJxdWl2byBwYXJlY2Ugc2VyIHVtIGFycXVpdm8gcXVlIGZvaSBjb3Jyb21waWRvIHBvclxuIgorImRwa2ctZGViOiAgICB0ZXIgc2lkbyBiYWl4YWRvIGVtIG1vZG8gQVNDSUlcbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI1OQorIywgYy1mb3JtYXQKK21zZ2lkICJgJS4yNTVzJyBpcyBub3QgYSBkZWJpYW4gZm9ybWF0IGFyY2hpdmUiCittc2dzdHIgIiclLjI1NXMnIG7Do28gw6kgdW0gZm9ybWF0byBkZSBhcnF1aXZvIGRlYmlhbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI2NgorbXNnaWQgImZhaWxlZCB0byB3cml0ZSB0byBwaXBlIGluIGNvcHkiCittc2dzdHIgImZhbGhvdSBhbyBlc2NyZXZlciBwYXJhIG8gXCJwaXBlXCIgbmEgY8OzcGlhIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjY4Cittc2dpZCAiZmFpbGVkIHRvIGNsb3NlIHBpcGUgaW4gY29weSIKK21zZ3N0ciAiZmFsaG91IGFvIGZlY2hhciBvIFwicGlwZVwiIG5hIGPDs3BpYSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI4NAorbXNnaWQgImRhdGEiCittc2dzdHIgImRhZG9zIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzA3Cittc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIGRpcmVjdG9yeSIKK21zZ3N0ciAiZmFsaG91IGFvIG11ZGFyIHBhcmEgbyBkaXJldMOzcmlvIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzEwCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBkaXJlY3RvcnkiCittc2dzdHIgImZhbGhvdSBhbyBjcmlhciBkaXJldMOzcmlvIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzEyCittc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIGRpcmVjdG9yeSBhZnRlciBjcmVhdGluZyBpdCIKK21zZ3N0ciAiZmFsaG91IGFvIG11ZGFyIHBhcmEgbyBkaXJldMOzcmlvIGFww7NzIGNyacOhLWxvIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzIzCisjLCBmdXp6eQorbXNnaWQgIjxkZWNvbXByZXNzPiIKK21zZ3N0ciAiJXM6IGRlc2NvbXBhY3Rhw6fDo28iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozMjUKKyMsIGZ1enp5Cittc2dpZCAicGFzdGUiCittc2dzdHIgInBhc3NvdVxuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzQyIGRwa2ctZGViL2V4dHJhY3QuYzozNjMgZHBrZy1kZWIvZXh0cmFjdC5jOjQwMgorIzogZHBrZy1kZWIvaW5mby5jOjc3CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSAuZGViIGZpbGVuYW1lIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIHByZWNpc2EgZGUgdW0gbm9tZSBkZSBhcnF1aXZvIC5kZWIgY29tbyBhcmd1bWVudG8iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozNDcgZHBrZy1kZWIvZXh0cmFjdC5jOjQwNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiLS0lcyBuZWVkcyBhIHRhcmdldCBkaXJlY3RvcnkuXG4iCisiUGVyaGFwcyB5b3Ugc2hvdWxkIGJlIHVzaW5nIGRwa2cgLS1pbnN0YWxsID8iCittc2dzdHIgIiIKKyItLSVzIHByZWNpc2EgZGUgdW0gZGlyZXTDs3Jpby1hbHZvLlxuIgorIlRhbHZleiB2b2PDqiBkZXZlc3NlIHVzYXIgZHBrZyAtLWluc3RhbGw/IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzUwIGRwa2ctZGViL2V4dHJhY3QuYzo0MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyB0YWtlcyBhdCBtb3N0IHR3byBhcmd1bWVudHMgKC5kZWIgYW5kIGRpcmVjdG9yeSkiCittc2dzdHIgIi0tJXMgYWNlaXRhIG5vIG3DoXhpbW8gZG9pcyBhcmd1bWVudG9zICguZGViIGUgZGlyZXTDs3JpbykiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyB0YWtlcyBvbmx5IG9uZSBhcmd1bWVudCAoLmRlYiBmaWxlbmFtZSkiCittc2dzdHIgIi0tJXMgYWNlaXRhIHNvbWVudGUgdW0gYXJndW1lbnRvIChub21lIGRvIGFycXVpdm8gLmRlYikiCisKKyM6IGRwa2ctZGViL2luZm8uYzo2MworbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byBgLycgZm9yIGNsZWFudXAiCittc2dzdHIgImZhbGhvdSBhbyBtdWRhciBwYXJhIG8gZGlyZXTDs3JpbyAnLycgcGFyYSBsaW1wZXphIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTA2CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW5ub3Qgc3RhdCBvbGQgbmFtZSBgJXMnOiAlcyIKK21zZ2lkICJjb250cm9sIGZpbGUgJyVzJyIKK21zZ3N0ciAibsOjbyBmb2kgcG9zc8OtdmVsIGV4ZWN1dGFyIFwic3RhdFwiIGVtIG5vbWUgYW50aWdvICclcyc6ICVzIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTEwCisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2ctZGViOiBgJS4yNTVzJyBjb250YWlucyBubyBjb250cm9sIGNvbXBvbmVudCBgJS4yNTVzJ1xuIgorbXNnc3RyICJkcGtnLWRlYjogJyUuMjU1cycgbsOjbyBjb250w6ltIGNvbXBvbmVudGUgZGUgY29udHJvbGUgJyUuMjU1cydcbiIKKworIzogZHBrZy1kZWIvaW5mby5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICJvcGVuIGNvbXBvbmVudCBgJS4yNTVzJyAoaW4gJS4yNTVzKSBmYWlsZWQgaW4gYW4gdW5leHBlY3RlZCB3YXkiCittc2dzdHIgIiIKKyJhYmVydHVyYSBkbyBjb21wb25lbnRlICclLjI1NXMnIChlbSAlLjI1NXMpIGZhbGhvdSBkZSBtYW5laXJhIG7Do28gZXNwZXJhZGEiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIk9uZSByZXF1ZXN0ZWQgY29udHJvbCBjb21wb25lbnQgaXMgbWlzc2luZyIKK21zZ2lkICIlZCByZXF1ZXN0ZWQgY29udHJvbCBjb21wb25lbnQgaXMgbWlzc2luZyIKK21zZ2lkX3BsdXJhbCAiJWQgcmVxdWVzdGVkIGNvbnRyb2wgY29tcG9uZW50cyBhcmUgbWlzc2luZyIKK21zZ3N0clswXSAiVW0gY29tcG9uZW50ZSBkZSBjb250cm9sZSByZXF1ZXJpZG8gZXN0w6EgZmFsdGFuZG8iCittc2dzdHJbMV0gIlVtIGNvbXBvbmVudGUgZGUgY29udHJvbGUgcmVxdWVyaWRvIGVzdMOhIGZhbHRhbmRvIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTM5IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo0MjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHNjYW4gZGlyZWN0b3J5IGAlLjI1NXMnIgorbXNnc3RyICJuw6NvIGZvaSBwb3Nzw612ZWwgZmF6ZXIgdmFzY3VsaGFyIG8gZGlyZXTDs3JpbyAnJS4yNTVzJyIKKworIzogZHBrZy1kZWIvaW5mby5jOjE0OAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc3RhdCBgJS4yNTVzJyAoaW4gYCUuMjU1cycpIgorbXNnc3RyICJuw6NvIGZvaSBwb3Nzw612ZWwgZXhlY3V0YXIgXCJzdGF0XCIgJyUuMjU1cycgKGVtICclLjI1NXMnKSIKKworIzogZHBrZy1kZWIvaW5mby5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgb3BlbiBgJS4yNTVzJyAoaW4gYCUuMjU1cycpIgorbXNnc3RyICJuw6NvIGZvaSBwb3Nzw612ZWwgYWJyaXIgJyUuMjU1cycgKGVtICclLjI1NXMnKSIKKworIzogZHBrZy1kZWIvaW5mby5jOjE2NyBkcGtnLWRlYi9pbmZvLmM6MTg1IGRwa2ctZGViL2luZm8uYzoxOTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgYCUuMjU1cycgKGluIGAlLjI1NXMnKSIKK21zZ3N0ciAiZmFsaG91IGFvIGxlciAnJS4yNTVzJyAoZW0gJyUuMjU1cycpIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTcwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIgJTdsZCBieXRlcywgJTVkIGxpbmVzICAgJWMgICUtMjAuMTI3cyAlLjEyN3NcbiIKK21zZ2lkICIgJTdqZCBieXRlcywgJTVkIGxpbmVzICAgJWMgICUtMjAuMTI3cyAlLjEyN3NcbiIKK21zZ3N0ciAiICU3bGQgYnl0ZXMsICU1ZCBsaW5oYXMgICAlYyAgJS0yMC4xMjdzICUuMTI3c1xuIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTc0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgICAgbm90IGEgcGxhaW4gZmlsZSAgICAgICAgICAlLjI1NXNcbiIKK21zZ3N0ciAiICAgICBuw6NvIMOpIHVtIGFycXVpdm8gc2ltcGxlcyAgJS4yNTVzXG4iCisKKyM6IGRwa2ctZGViL2luZm8uYzoxODYKK21zZ2lkICIobm8gYGNvbnRyb2wnIGZpbGUgaW4gY29udHJvbCBhcmNoaXZlISlcbiIKK21zZ3N0ciAiKG5lbmh1bSBhcnF1aXZvICdjb250cm9sJyBubyBhcnF1aXZvIGRlIGNvbnRyb2xlISlcbiIKKworIzogZHBrZy1kZWIvaW5mby5jOjIyMgorbXNnaWQgImNvdWxkIG5vdCBvcGVuIHRoZSBgY29udHJvbCcgY29tcG9uZW50IgorbXNnc3RyICJuw6NvIGZvaSBwb3Nzw612ZWwgYWJyaXIgbyBjb21wb25lbnRlICdjb250cm9sJyIKKworIzogZHBrZy1kZWIvaW5mby5jOjI2MQorbXNnaWQgImZhaWxlZCBkdXJpbmcgcmVhZCBvZiBgY29udHJvbCcgY29tcG9uZW50IgorbXNnc3RyICJmYWxob3UgZHVyYW50ZSBhIGxlaXR1cmEgZG8gY29tcG9uZW50ZSAnY29udHJvbCciCisKKyM6IGRwa2ctZGViL2luZm8uYzoyNjMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgdGhlICclcycgY29tcG9uZW50IgorbXNnc3RyICJlcnJvIGZlY2hhbmRvIG8gXCJwaXBlXCIgZG8gZmluZCIKKworIzogZHBrZy1kZWIvaW5mby5jOjI3OAorbXNnaWQgIkVycm9yIGluIGZvcm1hdCIKK21zZ3N0ciAiRXJybyBubyBmb3JtYXRvIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MzI4Cittc2dpZCAiLS1jb250ZW50cyB0YWtlcyBleGFjdGx5IG9uZSBhcmd1bWVudCIKK21zZ3N0ciAiLS1jb250ZW50cyBhY2VpdGEgZXhhdGFtZW50ZSB1bSBhcmd1bWVudG8iCisKKyM6IGRwa2ctZGViL21haW4uYzo1NAorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIGFyY2hpdmUgYmFja2VuZCB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICIiCisiTWVjYW5pc21vIChcImJhY2tlbmRcIikgZGUgcmVwb3NpdMOzcmlvIGRlIHBhY290ZXMgRGViaWFuICclcycgdmVyc8OjbyAlcy5cbiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjczCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiQ29tbWFuZHM6XG4iCisjfCAiICAtYnwtLWJ1aWxkIDxkaXJlY3Rvcnk+IFs8ZGViPl0gICBCdWlsZCBhbiBhcmNoaXZlLlxuIgorI3wgIiAgLWN8LS1jb250ZW50cyA8ZGViPiAgICAgICAgICAgICAgTGlzdCBjb250ZW50cy5cbiIKKyN8ICIgIC1JfC0taW5mbyA8ZGViPiBbPGNmaWxlPiAuLi5dICAgIFNob3cgaW5mbyB0byBzdGRvdXQuXG4iCisjfCAiICAtV3wtLXNob3cgPGRlYj4gICAgICAgICAgICAgICAgICBTaG93IGluZm9ybWF0aW9uIG9uIHBhY2thZ2UocylcbiIKKyN8ICIgIC1mfC0tZmllbGQgPGRlYj4gWzxjZmllbGQ+IC4uLl0gIFNob3cgZmllbGQocykgdG8gc3Rkb3V0LlxuIgorI3wgIiAgLWV8LS1jb250cm9sIDxkZWI+IFs8ZGlyZWN0b3J5Pl0gRXh0cmFjdCBjb250cm9sIGluZm8uXG4iCisjfCAiICAteHwtLWV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gICBFeHRyYWN0IGZpbGVzLlxuIgorI3wgIiAgLVh8LS12ZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PiAgRXh0cmFjdCAmIGxpc3QgZmlsZXMuXG4iCisjfCAiICAtLWZzeXMtdGFyZmlsZSA8ZGViPiAgICAgICAgICAgICBPdXRwdXQgZmlsZXN5c3RlbSB0YXJmaWxlLlxuIgorI3wgIlxuIgorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1ifC0tYnVpbGQgPGRpcmVjdG9yeT4gWzxkZWI+XSAgIEJ1aWxkIGFuIGFyY2hpdmUuXG4iCisiICAtY3wtLWNvbnRlbnRzIDxkZWI+ICAgICAgICAgICAgICBMaXN0IGNvbnRlbnRzLlxuIgorIiAgLUl8LS1pbmZvIDxkZWI+IFs8Y2ZpbGU+IC4uLl0gICAgU2hvdyBpbmZvIHRvIHN0ZG91dC5cbiIKKyIgIC1XfC0tc2hvdyA8ZGViPiAgICAgICAgICAgICAgICAgIFNob3cgaW5mb3JtYXRpb24gb24gcGFja2FnZShzKVxuIgorIiAgLWZ8LS1maWVsZCA8ZGViPiBbPGNmaWVsZD4gLi4uXSAgU2hvdyBmaWVsZChzKSB0byBzdGRvdXQuXG4iCisiICAtZXwtLWNvbnRyb2wgPGRlYj4gWzxkaXJlY3Rvcnk+XSBFeHRyYWN0IGNvbnRyb2wgaW5mby5cbiIKKyIgIC14fC0tZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PiAgIEV4dHJhY3QgZmlsZXMuXG4iCisiICAtWHwtLXZleHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+ICBFeHRyYWN0ICYgbGlzdCBmaWxlcy5cbiIKKyIgIC1SfC0tcmF3LWV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEV4dHJhY3QgY29udHJvbCBpbmZvIGFuZCBmaWxlcy5cbiIKKyIgIC0tZnN5cy10YXJmaWxlIDxkZWI+ICAgICAgICAgICAgIE91dHB1dCBmaWxlc3lzdGVtIHRhcmZpbGUuXG4iCisiXG4iCittc2dzdHIgIiIKKyJDb21hbmRvczpcbiIKKyIgIC1ifC0tYnVpbGQgPGRpcmV0w7NyaW8+IFs8ZGViPl0gICBDb25zdHLDs2kgdW0gYXJxdWl2by5cbiIKKyIgIC1jfC0tY29udGVudHMgPGRlYj4gICAgICAgICAgICAgIExpc3RhIG8gY29udGXDumRvLlxuIgorIiAgLUl8LS1pbmZvIDxkZWI+IFs8Y2FycT4gLi4uXSAgICAgTW9zdHJhIGluZm9ybWHDp8O1ZXMgZW0gc3Rkb3V0LlxuIgorIiAgLVd8LS1zaG93IDxkZWI+ICAgICAgICAgICAgICAgICAgTW9zdHJhIGluZm9ybWHDp8O1ZXMgc29icmUgcGFjb3RlKHMpXG4iCisiICAtZnwtLWZpZWxkIDxkZWI+IFs8Y2NhbXBvPiAuLi5dICBNb3N0cmEgY2FtcG8ocykgZW0gc3Rkb3V0LlxuIgorIiAgLWV8LS1jb250cm9sIDxkZWI+IFs8ZGlyZXTDs3Jpbz5dIEV4dHJhaSBpbmZvcm1hw6fDtWVzIGRlIGNvbnRyb2xlLlxuIgorIiAgLXh8LS1leHRyYWN0IDxkZWI+IDxkaXJldMOzcmlvPiAgIEV4dHJhaSBhcnF1aXZvcy5cbiIKKyIgIC1YfC0tdmV4dHJhY3QgPGRlYj4gPGRpcmV0w7NyaW8+ICBFeHRyYWkgZSBsaXN0YSBhcnF1aXZvcy5cbiIKKyIgLS1mc3lzLXRhcmZpbGUgPGRlYj4gICAgICAgICAgICAgIEdlcmEgc2lzdGVtYSBkZSBhcnF1aXZvcyBcInRhcmZpbGVcIi5cbiIKKyJcbiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjkzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyI8ZGViPiBpcyB0aGUgZmlsZW5hbWUgb2YgYSBEZWJpYW4gZm9ybWF0IGFyY2hpdmUuXG4iCisiPGNmaWxlPiBpcyB0aGUgbmFtZSBvZiBhbiBhZG1pbmlzdHJhdGl2ZSBmaWxlIGNvbXBvbmVudC5cbiIKKyI8Y2ZpZWxkPiBpcyB0aGUgbmFtZSBvZiBhIGZpZWxkIGluIHRoZSBtYWluIGBjb250cm9sJyBmaWxlLlxuIgorIlxuIgorbXNnc3RyICIiCisiPGRlYj4gw6kgbyBub21lIGRlIGFycXVpdm8gZGUgdW0gYXJxdWl2byBubyBmb3JtYXRvIERlYmlhbi5cbiIKKyI8Y2FycT4gw6kgbyBub21lIGRlIHVtIGNvbXBvbmVudGUgZGUgYXJxdWl2byBhZG1pbmlzdHJhdGl2by5cbiIKKyI8Y2NhbXBvPiDDqSBvIG5vbWUgZGUgdW0gY2FtcG8gbm8gYXJxdWl2byAnY29udHJvbCcgcHJpbmNpcGFsLlxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6OTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1zaG93Zm9ybWF0PTxmb3JtYXQ+ICAgICAgICAgICAgVXNlIGFsdGVybmF0aXZlIGZvcm1hdCBmb3IgLS1zaG93LlxuIgorIiAgLXYsIC0tdmVyYm9zZSAgICAgICAgICAgICAgICAgICAgRW5hYmxlIHZlcmJvc2Ugb3V0cHV0LlxuIgorIiAgLUQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRW5hYmxlIGRlYnVnZ2luZyBvdXRwdXQuXG4iCisiICAtLW9sZCwgLS1uZXcgICAgICAgICAgICAgICAgICAgICBTZWxlY3QgYXJjaGl2ZSBmb3JtYXQuXG4iCisiICAtLW5vY2hlY2sgICAgICAgICAgICAgICAgICAgICAgICBTdXBwcmVzcyBjb250cm9sIGZpbGUgY2hlY2sgKGJ1aWxkIGJhZFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWNrYWdlcykuXG4iCisiICAteiMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTZXQgdGhlIGNvbXByZXNzaW9uIGxldmVsIHdoZW4gYnVpbGRpbmcuXG4iCisiICAtWjx0eXBlPiAgICAgICAgICAgICAgICAgICAgICAgICBTZXQgdGhlIGNvbXByZXNzaW9uIHR5cGUgdXNlZCB3aGVuICIKKyJidWlsZGluZy5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWxsb3dlZCB0eXBlczogZ3ppcCwgeHosIGJ6aXAyLCBsem1hLCAiCisibm9uZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIk9ww6fDtWVzOlxuIgorIiAgLS1zaG93Zm9ybWF0PTxmb3JtYXRvPiAgICAgICAgICAgVXNhIGZvcm1hdG8gYWx0ZXJuYXRpdm8gcGFyYSAtLXNob3cuXG4iCisiICAtRCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBIYWJpbGl0YSBzYcOtZGEgZGUgZGVwdXJhw6fDo28uXG4iCisiICAtLW9sZCwgLS1uZXcgICAgICAgICAgICAgICAgICAgICBTZWxlY2lvbmEgZm9ybWF0byBkbyBhcnF1aXZvLlxuIgorIiAgLS1ub2NoZWNrICAgICAgICAgICAgICAgICAgICAgICAgU3VwcmltZSBjaGVjYWdlbSBkZSBhcnF1aXZvIGRlIGNvbnRyb2xlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjb25zdHLDs2kgcGFjb3RlcyBydWlucylcbiIKKyIgIC16IyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIERlZmluZSBvIG7DrXZlbCBkZSBjb21wcmVzc8Ojb1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdHJ1w6fDo28uXG4iCisiICAtWjx0aXBvPiAgICAgICAgICAgICAgICAgICAgICAgICBEZWZpbmUgbyB0aXBvIGRlIGNvbXByZXNzw6NvIHVzYWRvIG5hXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0cnXDp8Ojby4gVmFsb3JlcyBwZXJtaXRpZG9zOiBnemlwLFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiemlwMiwgbHptYSwgbm9uZVxuIgorIlxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTIxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJVc2UgYGRwa2cnIHRvIGluc3RhbGwgYW5kIHJlbW92ZSBwYWNrYWdlcyBmcm9tIHlvdXIgc3lzdGVtLCBvclxuIgorImBkc2VsZWN0JyBvciBgYXB0aXR1ZGUnIGZvciB1c2VyLWZyaWVuZGx5IHBhY2thZ2UgbWFuYWdlbWVudC4gIFBhY2thZ2VzXG4iCisidW5wYWNrZWQgdXNpbmcgYGRwa2ctZGViIC0tZXh0cmFjdCcgd2lsbCBiZSBpbmNvcnJlY3RseSBpbnN0YWxsZWQgIVxuIgorbXNnc3RyICIiCisiXG4iCisiVXNlICdkcGtnJyBwYXJhIGluc3RhbGFyIGUgcmVtb3ZlciBwYWNvdGVzIGRlIHNldSBzaXN0ZW1hIG91XG4iCisiJ2RzZWxlY3QnIG91ICdhcHRpdHVkZScgcGFyYSBnZXJlbmNpYW1lbnRvIGRlIHBhY290ZXMgYW1pZ8OhdmVsXG4iCisiYW8gdXN1w6FyaW8uIFBhY290ZXMgZGVzZW1wYWNvdGFkb3MgdXNhbmRvICdkcGtnLWRlYiAtLWV4dHJhY3QnXG4iCisic2Vyw6NvIGluc3RhbGFkb3MgaW5jb3JyZXRhbWVudGUhXG4iCisKKyM6IGRwa2ctZGViL21haW4uYzoxMzIKK21zZ2lkICIiCisiVHlwZSBkcGtnLWRlYiAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgbWFuaXB1bGF0aW5nICouZGViIGZpbGVzO1xuIgorIlR5cGUgZHBrZyAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgaW5zdGFsbGluZyBhbmQgZGVpbnN0YWxsaW5nIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorIkRpZ2l0ZSBkcGtnLWRlYiAtLWhlbHAgcGFyYSBhanVkYSBzb2JyZSBtYW5pcHVsYcOnw6NvIGRlIGFycXVpdm9zICouZGViO1xuIgorIkRpZ2l0ZSBkcGtnIC0taGVscCBwYXJhIGFqdWRhIHNvYnJlIGluc3RhbGHDp8OjbyBlIGRlc2luc3RhbGHDp8OjbyBkZSBwYWNvdGVzLiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjE0OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBpbnRlZ2VyIGZvciAtJWM6ICclLjI1MHMnIgorbXNnc3RyICJpbnRlaXJvIGludsOhbGlkbyBwYXJhIC0tJXM6ICclLjI1MHMnIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTUxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGNvbXByZXNzaW9uIGxldmVsIGZvciAtJWM6ICVsZCciCittc2dzdHIgImludGVpcm8gaW52w6FsaWRvIHBhcmEgLS0lczogJyUuMjUwcyciCisKKyM6IGRwa2ctZGViL21haW4uYzoxNjEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBjb21wcmVzc2lvbiB0eXBlIGAlcychIgorbXNnc3RyICJ0aXBvIGRlIGNvbXByZXNzw6NvIGRlc2NvbmhlY2lkbyAnJXMnISIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6NTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIGRpZ2l0IChjb2RlICVkKSBpbiAlcyIKK21zZ3N0ciAiYXJxdWl2byAnJS4yNTBzJyBlc3TDoSBjb3Jyb21waWRvIC0gZGlnaXRvIHJ1aW0gKGPDs2RpZ28gJWQpIGVtICVzIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzo2MAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSAlLjI1MHMgbWlzc2luZyIKK21zZ3N0ciAiYXJxdWl2byAnJS4yNTBzJyBlc3TDoSBjb3Jyb21waWRvIC0gJS4yNTBzIGZhbHRhbmRvIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzo2MworIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBtaXNzaW5nIG5ld2xpbmUgYWZ0ZXIgJS4yNTBzIgorbXNnc3RyICJhcnF1aXZvICclLjI1MHMnIGVzdMOhIGNvcnJvbXBpZG8gLSBub3ZhIGxpbmhhIGZhbHRhbmRvIGFww7NzICUuMjUwcyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6ODkgZHBrZy1zcGxpdC9tYWluLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHJlYWRpbmcgJS4yNTBzIgorbXNnc3RyICJlcnJvIGxlbmRvICUuMjUwcyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTAzCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBtYWdpYyBhdCBlbmQgb2YgZmlyc3QgaGVhZGVyIgorbXNnc3RyICIiCisiYXJxdWl2byAnJS4yNTBzJyBlc3TDoSBjb3Jyb21waWRvIC0gbWFnaWMgcnVpbSBubyBmaW5hbCBkbyBwcmltZWlybyBjYWJlw6dhbGhvIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIHBhZGRpbmcgY2hhcmFjdGVyIChjb2RlICVkKSIKK21zZ3N0ciAiIgorImFycXVpdm8gJyUuMjUwcycgZXN0w6EgY29ycm9tcGlkbyAtIGNhcmFjdGVyIGRlIHByZWVuY2hpbWVudG8gcnVpbSAoY8OzZGlnbyAlZCkiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjExNworIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBudWxscyBpbiBpbmZvIHNlY3Rpb24iCittc2dzdHIgImFycXVpdm8gJyUuMjUwcycgZXN0w6EgY29ycm9tcGlkbyAtIG51bG9zIG5hIHNlw6fDo28gaW5mbyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTIyCisjLCBmdXp6eQorbXNnaWQgImZvcm1hdCB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAibsO6bWVybyBkZSB2ZXJzw6NvIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBmb3JtYXQgdmVyc2lvbiBgJS4yNTBzJyAtIHlvdSBuZWVkIGEgbmV3ZXIgZHBrZy1zcGxpdCIKK21zZ3N0ciAiIgorImFycXVpdm8gJyUuMjUwcycgZXN0w6Egbm8gZm9ybWF0byB2ZXJzw6NvICclLjI1MHMnIC0gdm9jw6ogcHJlY2lzYSBkZSB1bSBkcGtnLSIKKyJzcGxpdCBtYWlzIG5vdm8iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyNworIywgZnV6enkKK21zZ2lkICJwYWNrYWdlIG5hbWUiCittc2dzdHIgIiAocGFjb3RlOiAiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyOAorIywgZnV6enkKK21zZ2lkICJwYWNrYWdlIHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICJuw7ptZXJvIGRlIHZlcnPDo28iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyOQorbXNnaWQgInBhY2thZ2UgZmlsZSBNRDUgY2hlY2tzdW0iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTMyCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBNRDUgY2hlY2tzdW0gYCUuMjUwcyciCittc2dzdHIgImFycXVpdm8gJyUuMjUwcycgZXN0w6EgY29ycm9tcGlkbyAtIGNoZWNrc3VtIG1kNSBydWltICclLjI1MHMnIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMzQgZHBrZy1zcGxpdC9pbmZvLmM6MTM1Cittc2dpZCAiYXJjaGl2ZSB0b3RhbCBzaXplIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEzNiBkcGtnLXNwbGl0L2luZm8uYzoxMzcKK21zZ2lkICJhcmNoaXZlIHBhcnQgb2Zmc2V0IgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEzOQorIywgZnV6enkKK21zZ2lkICJhcmNoaXZlIHBhcnQgbnVtYmVycyIKK21zZ3N0ciAibsO6bWVybyBkZSB2ZXJzw6NvIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIG5vIHNsYXNoIGJldHdlZW4gcGFydCBudW1iZXJzIgorbXNnaWQgImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIG5vIHNsYXNoIGJldHdlZW4gYXJjaGl2ZSBwYXJ0IG51bWJlcnMiCittc2dzdHIgImFycXVpdm8gJyUuMjUwcycgZXN0w6EgY29ycm9tcGlkbyAtIHNlbSBiYXJyYSBlbnRyZSBuw7ptZXJvcyBwYXJjaWFpcyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTQ1Cittc2dpZCAibnVtYmVyIG9mIGFyY2hpdmUgcGFydHMiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTQ3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgbnVtYmVyIG9mIGFyY2hpdmUgcGFydHMiCittc2dzdHIgImFycXVpdm8gJyUuMjUwcycgZXN0w6EgY29ycm9tcGlkbyAtIG7Dum1lcm8gcGFyY2lhbCBydWltIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDkKKyMsIGZ1enp5Cittc2dpZCAiYXJjaGl2ZSBwYXJ0cyBudW1iZXIiCittc2dzdHIgIm7Dum1lcm8gZGUgdmVyc8OjbyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTUxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgcGFydCBudW1iZXIiCittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIGFyY2hpdmUgcGFydCBudW1iZXIiCittc2dzdHIgImFycXVpdm8gJyUuMjUwcycgZXN0w6EgY29ycm9tcGlkbyAtIG7Dum1lcm8gcGFyY2lhbCBydWltIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNTcKKyMsIGZ1enp5Cittc2dpZCAicGFja2FnZSBhcmNoaXRlY3R1cmUiCittc2dzdHIgIiAocGFjb3RlOiAiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE2NgorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgbWFnaWMgYXQgZW5kIG9mIHNlY29uZCBoZWFkZXIiCittc2dzdHIgIiIKKyJhcnF1aXZvICclLjI1MHMnIGVzdMOhIGNvcnJvbXBpZG8gLSBcIm1hZ2ljXCIgcnVpbSBubyBmaW0gZG8gc2VndW5kbyBjYWJlw6dhbGhvIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gc2Vjb25kIG1lbWJlciBpcyBub3QgZGF0YSBtZW1iZXIiCittc2dzdHIgIiIKKyJhcnF1aXZvICclLjI1MHMnIGVzdMOhIGNvcnJvbXBpZG8gLSBzZWd1bmRvIG1lbWJybyBuw6NvIMOpIHVtIG1lbWJybyBkZSBkYWRvcyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTc0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIHdyb25nIG51bWJlciBvZiBwYXJ0cyBmb3IgcXVvdGVkIHNpemVzIgorbXNnc3RyICIiCisiYXJxdWl2byAnJS4yNTBzJyBlc3TDoSBjb3Jyb21waWRvIC0gbsO6bWVybyBlcnJhZG8gZGUgcGFydGVzIHBhcmEgdGFtYW5ob3MgIgorImNpdGFkb3MiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE3OAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBzaXplIGlzIHdyb25nIGZvciBxdW90ZWQgcGFydCBudW1iZXIiCittc2dzdHIgIiIKKyJhcnF1aXZvICclLjI1MHMnIGVzdMOhIGNvcnJvbXBpZG8gLSB0YW1hbmhvIGVycmFkbyBwYXJhIG8gbsO6bWVybyBwYXJjaWFsICIKKyJjaXRhZG8iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE4NAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZnN0YXQgcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJpbXBvc3PDrXZlbCBleGVjdXRhciBcImZzdGF0XCIgbm8gYXJxdWl2byBwYXJjaWFsICclLjI1MHMnIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gdG9vIHNob3J0IgorbXNnc3RyICJhcnF1aXZvICclLjI1MHMnIGVzdMOhIGNvcnJvbXBpZG8gLSBtdWl0byBwZXF1ZW5vIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyMDIgZHBrZy1zcGxpdC9pbmZvLmM6MjQ5CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBvcGVuIGFyY2hpdmUgcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuw6NvIMOpIHBvc3PDrXZlbCBhYnJpciBhcnF1aXZvIHBhcmNpYWwgJyUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjIwNAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIG5vdCBhbiBhcmNoaXZlIHBhcnQiCittc2dzdHIgImFycXVpdm8gJyUuMjUwcycgbsOjbyDDqSB1bSBhcnF1aXZvIHBhcmNpYWwiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjIwOQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiVzOlxuIgorI3wgIiAgICBQYXJ0IGZvcm1hdCB2ZXJzaW9uOiAgICAgICAgICAgICVzXG4iCisjfCAiICAgIFBhcnQgb2YgcGFja2FnZTogICAgICAgICAgICAgICAgJXNcbiIKKyN8ICIgICAgICAgIC4uLiB2ZXJzaW9uOiAgICAgICAgICAgICAgICAlc1xuIgorI3wgIiAgICAgICAgLi4uIE1ENSBjaGVja3N1bTogICAgICAgICAgICVzXG4iCisjfCAiICAgICAgICAuLi4gbGVuZ3RoOiAgICAgICAgICAgICAgICAgJWx1IGJ5dGVzXG4iCisjfCAiICAgICAgICAuLi4gc3BsaXQgZXZlcnk6ICAgICAgICAgICAgJWx1IGJ5dGVzXG4iCisjfCAiICAgIFBhcnQgbnVtYmVyOiAgICAgICAgICAgICAgICAgICAgJWQvJWRcbiIKKyN8ICIgICAgUGFydCBsZW5ndGg6ICAgICAgICAgICAgICAgICAgICAlemkgYnl0ZXNcbiIKKyN8ICIgICAgUGFydCBvZmZzZXQ6ICAgICAgICAgICAgICAgICAgICAlbHUgYnl0ZXNcbiIKKyN8ICIgICAgUGFydCBmaWxlIHNpemUgKHVzZWQgcG9ydGlvbik6ICAlbHUgYnl0ZXNcbiIKKyN8ICJcbiIKK21zZ2lkICIiCisiJXM6XG4iCisiICAgIFBhcnQgZm9ybWF0IHZlcnNpb246ICAgICAgICAgICAgJXNcbiIKKyIgICAgUGFydCBvZiBwYWNrYWdlOiAgICAgICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIHZlcnNpb246ICAgICAgICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gYXJjaGl0ZWN0dXJlOiAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiBNRDUgY2hlY2tzdW06ICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIGxlbmd0aDogICAgICAgICAgICAgICAgICVqZCBieXRlc1xuIgorIiAgICAgICAgLi4uIHNwbGl0IGV2ZXJ5OiAgICAgICAgICAgICVqZCBieXRlc1xuIgorIiAgICBQYXJ0IG51bWJlcjogICAgICAgICAgICAgICAgICAgICVkLyVkXG4iCisiICAgIFBhcnQgbGVuZ3RoOiAgICAgICAgICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgIFBhcnQgb2Zmc2V0OiAgICAgICAgICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgIFBhcnQgZmlsZSBzaXplICh1c2VkIHBvcnRpb24pOiAgJWpkIGJ5dGVzXG4iCisiXG4iCittc2dzdHIgIiIKKyIlczpcbiIKKyIgICAgVmVyc8OjbyBkbyBmb3JtYXRvIHBhcmNpYWw6ICAgICAgICAgICAgICAgICAgJXNcbiIKKyIgICAgUGFydGUgZG8gcGFjb3RlOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIHZlcnPDo286ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIE1ENSBjaGVja3N1bTogICAgICAgICAgICAgICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gdGFtYW5obzogICAgICAgICAgICAgICAgICAgICAgICAgICAgJWx1IGJ5dGVzXG4iCisiICAgICAgICAuLi4gZGl2aWRpZG8gYSBjYWRhOiAgICAgICAgICAgICAgICAgICAgJWx1IGJ5dGVzXG4iCisiICAgIE7Dum1lcm8gZGEgcGFydGU6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICVkLyVkXG4iCisiICAgIFRhbWFuaG8gZGEgcGFydGU6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJXppIGJ5dGVzXG4iCisiICAgIFwiT2Zmc2V0XCIgZGEgcGFydGU6ICAgICAgICAgICAgICAgICAgICAgICAgJWx1IGJ5dGVzXG4iCisiICAgIFRhbWFuaG8gZG8gYXJxdWl2byBwYXJjaWFsIChwb3LDp8OjbyB1c2FkYSk6ICAlbHUgYnl0ZXNcbiIKKyJcbiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjI1CisjLCBmdXp6eQorI3wgbXNnaWQgIjx1bmtub3duPiIKK21zZ2N0eHQgImFyY2hpdGVjdHVyZSIKK21zZ2lkICI8dW5rbm93bj4iCittc2dzdHIgIjxkZXNjb25oZWNpZG8+IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyNDQgZHBrZy1zcGxpdC9qb2luLmM6MTA1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICItLSVzIHJlcXVpcmVzIG9uZSBvciBtb3JlIHBhcnQgZmlsZSBhcmd1bWVudHMiCittc2dzdHIgIi0taW5mbyByZXF1ZXIgdW0gb3UgbWFpcyBhcmd1bWVudG9zIGRlIGFycXVpdm9zIHBhcmNpYWlzIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJXMnIGlzIG5vdCBhbiBhcmNoaXZlIHBhcnRcbiIKK21zZ3N0ciAiYXJxdWl2byAnJXMnIG7Do28gw6kgdW0gYXJxdWl2byBwYXJjaWFsXG4iCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjQ0CisjLCBjLWZvcm1hdAorbXNnaWQgIlB1dHRpbmcgcGFja2FnZSAlcyB0b2dldGhlciBmcm9tICVkIHBhcnQ6ICIKK21zZ2lkX3BsdXJhbCAiUHV0dGluZyBwYWNrYWdlICVzIHRvZ2V0aGVyIGZyb20gJWQgcGFydHM6ICIKK21zZ3N0clswXSAiIgorbXNnc3RyWzFdICIiCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjUxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIG91dHB1dCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJpbXBvc3PDrXZlbCBhYnJpciBhcnF1aXZvIGRlIHNhw61kYSAnJS4yNTBzJyIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIChyZSlvcGVuIGlucHV0IHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiaW1wb3Nzw612ZWwgKHJlKWFicmlyIGFycXVpdm8gcGFyY2lhbCBkZSBlbnRyYWRhICclLjI1MHMnIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1OAorIywgZnV6enkKKyN8IG1zZ2lkICJTa2lwcGluZyBkZXNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dpZCAic2tpcHBpbmcgc3BsaXQgcGFja2FnZSBoZWFkZXIiCittc2dzdHIgIklnbm9yYW5kbyBwYWNvdGUgbsOjbyBzZWxlY2lvbmFkbyAlcy5cbiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NTkKKyMsIGZ1enp5CisjfCBtc2dpZCAibWlzc2luZyBwYWNrYWdlIgorbXNnaWQgInNwbGl0IHBhY2thZ2UgcGFydCIKK21zZ3N0ciAicGFjb3RlIGZhbHRhbmRvIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo2OSBkcGtnLXNwbGl0L3NwbGl0LmM6MjM3CisjLCBjLWZvcm1hdAorbXNnaWQgImRvbmVcbiIKK21zZ3N0ciAiZmVpdG9cbiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZXMgYCUuMjUwcycgYW5kIGAlLjI1MHMnIGFyZSBub3QgcGFydHMgb2YgdGhlIHNhbWUgZmlsZSIKK21zZ3N0ciAiYXJxdWl2b3MgJyUuMjUwcycgZSAnJS4yNTBzJyBuw6NvIHPDo28gcGFydGVzIGRvIG1lc21vIGFycXVpdm8iCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjkwCisjLCBjLWZvcm1hdAorbXNnaWQgInRoZXJlIGFyZSBzZXZlcmFsIHZlcnNpb25zIG9mIHBhcnQgJWQgLSBhdCBsZWFzdCBgJS4yNTBzJyBhbmQgYCUuMjUwcyciCittc2dzdHIgImV4aXN0ZW0gZGl2ZXJzYXMgdmVyc8O1ZXMgZGEgcGFydGUgJWQgLSBwZWxvIG1lbm9zICclLjI1MHMnIGUgJyUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjEyOAorIywgYy1mb3JtYXQKK21zZ2lkICJwYXJ0ICVkIGlzIG1pc3NpbmciCittc2dzdHIgInBhcnRlICVkIGVzdMOhIGZhbHRhbmRvIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo0NworIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIHNwbGl0L2pvaW4gdG9vbDsgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiRmVycmFtZW50YSBkZSBkaXZpc8Ojby9qdW7Dp8OjbyBkZSBwYWNvdGUgRGViaWFuICclcyc7IHZlcnPDo28gJXMuXG4iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIkNvcHlyaWdodCAoQykgMTk5NC0xOTk2IElhbiBKYWNrc29uLlxuIgorbXNnc3RyICJDb3B5cmlnaHQgKEMpIDE5OTQtMTk5NiBJYW4gSmFja3Nvbi5cbiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6NjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLXN8LS1zcGxpdCA8ZmlsZT4gWzxwcmVmaXg+XSAgICAgU3BsaXQgYW4gYXJjaGl2ZS5cbiIKKyIgIC1qfC0tam9pbiA8cGFydD4gPHBhcnQ+IC4uLiAgICAgIEpvaW4gcGFydHMgdG9nZXRoZXIuXG4iCisiICAtSXwtLWluZm8gPHBhcnQ+IC4uLiAgICAgICAgICAgICBEaXNwbGF5IGluZm8gYWJvdXQgYSBwYXJ0LlxuIgorIiAgLWF8LS1hdXRvIC1vIDxjb21wbGV0ZT4gPHBhcnQ+ICAgQXV0by1hY2N1bXVsYXRlIHBhcnRzLlxuIgorIiAgLWx8LS1saXN0cSAgICAgICAgICAgICAgICAgICAgICAgTGlzdCB1bm1hdGNoZWQgcGllY2VzLlxuIgorIiAgLWR8LS1kaXNjYXJkIFs8ZmlsZW5hbWU+IC4uLl0gICAgRGlzY2FyZCB1bm1hdGNoZWQgcGllY2VzLlxuIgorIlxuIgorbXNnc3RyICIiCisiQ29tYW5kb3M6XG4iCisiICAtc3wtLXNwbGl0IDxhcnF1aXZvPiBbPHByZWZpeG8+XSAgICAgIERpdmlkZSB1bSBhcnF1aXZvLlxuIgorIiAgLWp8LS1qb2luIDxwYXJ0ZT4gPHBhcnRlPiAuLi4gICAgICAgICBKdW50YSBwYXJ0ZXMuXG4iCisiICAtSXwtLWluZm8gPHBhcnRlPiAuLi4gICAgICAgICAgICAgICAgIEV4aWJlIGluZm9ybWHDp8OjbyBzb2JyZSB1bWEgcGFydGUuXG4iCisiICAtYXwtLWF1dG8gLW8gPGNvbXBsZXRvPiA8cGFydGU+ICAgICAgIEF1dG8tYWN1bXVsYXIgcGFydGVzLlxuIgorIiAgLWx8LS1saXN0cSAgICAgICAgICAgICAgICAgICAgICAgICAgICBMaXN0YSBwZcOnYXMgcXVlIG7Do28gY29tYmluYW0uXG4iCisiICAtZHwtLWRpc2NhcmQgWzxub21lLWRvLWFycXVpdm8+IC4uLl0gIERlc2NhcnRhIHBlw6dhcyBxdWUgbsOjbyBjb21iaW5hbS5cbiIKKyJcbiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6ODIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJPcHRpb25zOlxuIgorI3wgIiAgLS1kZXBvdGRpciA8ZGlyZWN0b3J5PiAgICAgICAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMvJXMuXG4iCisjfCAiICAtU3wtLXBhcnRzaXplIDxzaXplPiAgICAgICAgICAgICBJbiBLaUIsIGZvciAtcyAoZGVmYXVsdCBpcyA0NTApLlxuIgorI3wgIiAgLW98LS1vdXRwdXQgPGZpbGU+ICAgICAgICAgICAgICAgRm9yIC1qIChkZWZhdWx0IGlzIDxwYWNrYWdlPi08dmVyc2lvbj4uIgorI3wgImRlYikuXG4iCisjfCAiICAtUXwtLW5wcXVpZXQgICAgICAgICAgICAgICAgICAgICBCZSBxdWlldCB3aGVuIC1hIGlzIG5vdCBhIHBhcnQuXG4iCisjfCAiICAtLW1zZG9zICAgICAgICAgICAgICAgICAgICAgICAgICBHZW5lcmF0ZSA4LjMgZmlsZW5hbWVzLlxuIgorI3wgIlxuIgorI3wgIkV4aXQgc3RhdHVzOiAwID0gT0s7ICAxID0gLWEgaXMgbm90IGEgcGFydDsgIDIgPSB0cm91YmxlIVxuIgorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1kZXBvdGRpciA8ZGlyZWN0b3J5PiAgICAgICAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMvJXMuXG4iCisiICAtU3wtLXBhcnRzaXplIDxzaXplPiAgICAgICAgICAgICBJbiBLaUIsIGZvciAtcyAoZGVmYXVsdCBpcyA0NTApLlxuIgorIiAgLW98LS1vdXRwdXQgPGZpbGU+ICAgICAgICAgICAgICAgRmlsZW5hbWUsIGZvciAtaiAoZGVmYXVsdCBpc1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGFja2FnZT5fPHZlcnNpb24+XzxhcmNoPi5kZWIpLlxuIgorIiAgLVF8LS1ucHF1aWV0ICAgICAgICAgICAgICAgICAgICAgQmUgcXVpZXQgd2hlbiAtYSBpcyBub3QgYSBwYXJ0LlxuIgorIiAgLS1tc2RvcyAgICAgICAgICAgICAgICAgICAgICAgICAgR2VuZXJhdGUgOC4zIGZpbGVuYW1lcy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIk9ww6fDtWVzOlxuIgorIiAgLS1kZXBvdGRpciA8ZGlyZXTDs3Jpbz4gICAgICAgICAgIFVzYSA8ZGlyZXTDs3Jpbz4gYW8gaW52w6lzIGRlICVzLyVzLlxuIgorIiAgLVN8LS1wYXJ0c2l6ZSA8dGFtYW5obz4gICAgICAgICAgRW0gS2lCLCBwYXJhIC1zIChwYWRyw6NvIMOpIDQ1MCkuXG4iCisiICAtb3wtLW91dHB1dCA8YXJxdWl2bz4gICAgICAgICAgICBQYXJhIC1qIChwYWRyw6NvIMOpIDxwYWNvdGU+LTx2ZXJzw6NvPi4iCisiZGViKS5cbiIKKyIgIC1RfC0tbnBxdWlldCAgICAgICAgICAgICAgICAgICAgIFNlamEgc2lsZW5jaW9zbyBxdWFuZG8gLWEgbsOjbyBmb3IgdW1hXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXJ0ZS5cbiIKKyIgIC0tbXNkb3MgICAgICAgICAgICAgICAgICAgICAgICAgIEdlcmEgbm9tZXMgZGUgYXJxdWl2b3MgOC4zLlxuIgorIlxuIgorIkVzdGFkbyBkZSBzYcOtZGE6IDAgPSBPSzsgIDEgPSAtYSBuw6NvIMOpIHVtYSBwYXJ0ZTsgIDIgPSBwcm9ibGVtYSFcbiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6OTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkV4aXQgc3RhdHVzOlxuIgorIiAgMCA9IG9rXG4iCisiICAxID0gd2l0aCAtLWF1dG8sIGZpbGUgaXMgbm90IGEgcGFydFxuIgorIiAgMiA9IHRyb3VibGVcbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMDMKK21zZ2lkICJUeXBlIGRwa2ctc3BsaXQgLS1oZWxwIGZvciBoZWxwLiIKK21zZ3N0ciAiRGlnaXRlIGRwa2ctc3BsaXQgLS1oZWxwIHBhcmEgYWp1ZGEuIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgZmlsZSBpbiAlLjI1MHMiCittc2dzdHIgImZpbSBkZSBhcnF1aXZvIG7Do28gZXNwZXJhZG8gZW0gJS4yNTBzIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMjYKK21zZ2lkICJwYXJ0IHNpemUgaXMgZmFyIHRvbyBsYXJnZSBvciBpcyBub3QgcG9zaXRpdmUiCittc2dzdHIgInRhbWFuaG8gZGEgcGFyY2lhbCDDqSBtdWl0byBncmFuZGUgb3UgbsOjbyDDqSBwb3NpdGl2byIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6MTMwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJwYXJ0IHNpemUgbXVzdCBiZSBhdCBsZWFzdCAlZCBLaUIgKHRvIGFsbG93IGZvciBoZWFkZXIpIgorbXNnc3RyICJ0YW1hbmhvIGRhIHBhcmNpYWwgZGV2ZSBzZXIgcGVsbyBtZW5vcyAlZGsgKHBhcmEgcGVybWl0aXIgY2FiZcOnYWxobykiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzo5MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBkZXBvdCBkaXJlY3RvcnkgYCUuMjUwcyciCittc2dzdHIgImltcG9zc8OtdmVsIGxlciBvIGRpcmV0w7NyaW8gXCJkZXBvdFwiICclLjI1MHMnIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTM0Cittc2dpZCAiLS1hdXRvIHJlcXVpcmVzIHRoZSB1c2Ugb2YgdGhlIC0tb3V0cHV0IG9wdGlvbiIKK21zZ3N0ciAiLS1hdXRvIHJlcXVlciBvIHVzbyBkYSBvcMOnw6NvIC0tb3V0cHV0IgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTM2Cittc2dpZCAiLS1hdXRvIHJlcXVpcmVzIGV4YWN0bHkgb25lIHBhcnQgZmlsZSBhcmd1bWVudCIKK21zZ3N0ciAiLS1hdXRvIHJlcXVlciBleGF0YW1lbnRlIHVtIGFycXVpdm8gcGFyY2lhbCBjb21vIGFyZ3VtZW50byIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE0MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgImltcG9zc8OtdmVsIGxlciBhcnF1aXZvIHBhcmNpYWwgJyUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxNDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiRmlsZSBgJS4yNTBzJyBpcyBub3QgcGFydCBvZiBhIG11bHRpcGFydCBhcmNoaXZlLlxuIgorbXNnc3RyICJBcnF1aXZvICclLjI1MHMnIG7Do28gw6kgcGFydGUgZGUgdW0gYXJxdWl2byBlbSBtw7psdGlwbGFzIHBhcnRlcy5cbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE3OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVvcGVuIHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiaW1wb3Nzw612ZWwgcmVhYnJpciBhcnF1aXZvIHBhcmNpYWwgJyUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxODIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gbmV3IGRlcG90IGZpbGUgYCUuMjUwcyciCittc2dzdHIgImltcG9zc8OtdmVsIGFicmlyIG5vdm8gYXJxdWl2byBcImRlcG90XCIgJyUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxODQKK21zZ2lkICJleHRyYWN0aW5nIHNwbGl0IHBhcnQiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE5MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVuYW1lIG5ldyBkZXBvdCBmaWxlIGAlLjI1MHMnIHRvIGAlLjI1MHMnIgorbXNnc3RyICJpbXBvc3PDrXZlbCByZW5vbWVhciBub3ZvIGFycXVpdm8gXCJkZXBvdFwiIGRlICclLjI1MHMnIHBhcmEgJyUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFydCAlZCBvZiBwYWNrYWdlICVzIGZpbGVkIChzdGlsbCB3YW50ICIKK21zZ3N0ciAiUGFydGUgJWQgZG8gcGFjb3RlICVzIHByZWVuY2hpZGEgKGNvbnRpbnVhIHByZWNpc2FuZG8gIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjAwCittc2dpZCAiIGFuZCAiCittc2dzdHIgIiBlICIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjIxNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGVsZXRlIHVzZWQtdXAgZGVwb3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiaW1wb3Nzw612ZWwgZXhjbHVpciBhcnF1aXZvIFwiZGVwb3RcIiBhY2ltYSB1c2FkbyAnJS4yNTBzJyIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjIzNQorbXNnaWQgIkp1bmsgZmlsZXMgbGVmdCBhcm91bmQgaW4gdGhlIGRlcG90IGRpcmVjdG9yeTpcbiIKK21zZ3N0ciAiQXJxdWl2b3MgbGl4byBkZWl4YWRvcyBwYXJhIHRyw6FzIG5vIGRpcmV0w7NyaW8gXCJkZXBvdFwiOlxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjQwIGRwa2ctc3BsaXQvcXVldWUuYzoyNjkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgYCUuMjUwcyciCittc2dzdHIgImltcG9zc8OtdmVsIGV4ZWN1dGFyIFwic3RhdFwiIGVtICclLjI1MHMnIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjQzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIgJXMgKCVsdSBieXRlcylcbiIKK21zZ2lkICIgJXMgKCVqZCBieXRlcylcbiIKK21zZ3N0ciAiICVzICglbHUgYnl0ZXMpXG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICVzIChub3QgYSBwbGFpbiBmaWxlKVxuIgorbXNnc3RyICIgJXMgKG7Do28gw6kgdW0gYXJxdWl2byBzaW1wbGVzKVxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjUwCittc2dpZCAiUGFja2FnZXMgbm90IHlldCByZWFzc2VtYmxlZDpcbiIKK21zZ3N0ciAiUGFjb3RlcyBhaW5kYSBuw6NvIHJlbW9udGFkb3M6XG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIFBhY2thZ2UgJXM6IHBhcnQocykgIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFydCBmaWxlIGAlLjI1MHMnIGlzIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgImFycXVpdm8gcGFyY2lhbCAnJS4yNTBzJyBuw6NvIMOpIHVtIGFycXVpdm8gc2ltcGxlcyIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI3OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiKHRvdGFsICVsdSBieXRlcylcbiIKK21zZ2lkICIodG90YWwgJWpkIGJ5dGVzKVxuIgorbXNnc3RyICIodG90YWwgJWx1IGJ5dGVzKVxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MzA0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkaXNjYXJkIGAlLjI1MHMnIgorbXNnc3RyICJpbXBvc3PDrXZlbCBkZXNjYXJ0YXIgJyUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzozMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGVsZXRlZCAlcy5cbiIKK21zZ3N0ciAiRXhjbHXDrWRvICVzLlxuIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6NzAgZHBrZy1zcGxpdC9zcGxpdC5jOjc2IGRwa2ctc3BsaXQvc3BsaXQuYzo4MQorbXNnaWQgInBhY2thZ2UgZmllbGQgdmFsdWUgZXh0cmFjdGlvbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTMxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIHNvdXJjZSBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJpbXBvc3PDrXZlbCBhYnJpciBhcnF1aXZvIGZvbnRlICclLjI1MHMnIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTMzCittc2dpZCAidW5hYmxlIHRvIGZzdGF0IHNvdXJjZSBmaWxlIgorbXNnc3RyICJpbXBvc3PDrXZlbCBleGVjdXRhciBcImZzdGF0XCIgbm8gYXJxdWl2byBmb250ZSIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjEzNQorIywgYy1mb3JtYXQKK21zZ2lkICJzb3VyY2UgZmlsZSBgJS4yNTBzJyBub3QgYSBwbGFpbiBmaWxlIgorbXNnc3RyICJhcnF1aXZvIGZvbnRlICclLjI1MHMnIG7Do28gw6kgdW0gYXJxdWl2byBzaW1wbGVzIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTUzCisjLCBjLWZvcm1hdAorbXNnaWQgIlNwbGl0dGluZyBwYWNrYWdlICVzIGludG8gJWQgcGFydDogIgorbXNnaWRfcGx1cmFsICJTcGxpdHRpbmcgcGFja2FnZSAlcyBpbnRvICVkIHBhcnRzOiAiCittc2dzdHJbMF0gIiIKK21zZ3N0clsxXSAiIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTkzCittc2dpZCAiIgorIkhlYWRlciBpcyB0b28gbG9uZywgbWFraW5nIHBhcnQgdG9vIGxvbmcuIFlvdXIgcGFja2FnZSBuYW1lIG9yIHZlcnNpb25cbiIKKyJudW1iZXJzIG11c3QgYmUgZXh0cmFvcmRpbmFyaWx5IGxvbmcsIG9yIHNvbWV0aGluZy4gR2l2aW5nIHVwLlxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoyNDkKK21zZ2lkICItLXNwbGl0IG5lZWRzIGEgc291cmNlIGZpbGVuYW1lIGFyZ3VtZW50IgorbXNnc3RyICItLXNwbGl0IG5lY2Vzc2l0YSBkZSB1bSBub21lIGRlIGFycXVpdm8gZm9udGUgY29tbyBhcmd1bWVudG8iCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoyNTIKK21zZ2lkICItLXNwbGl0IHRha2VzIGF0IG1vc3QgYSBzb3VyY2UgZmlsZW5hbWUgYW5kIGRlc3RpbmF0aW9uIHByZWZpeCIKK21zZ3N0ciAiIgorIi0tc3BsaXQgYWNlaXRhIG5vIG3DoXhpbW8gdW0gbm9tZSBkZSBhcnF1aXZvIGZvbnRlIGUgdW0gcHJlZml4byBkZSBkZXN0aW5vIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6ODQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJcbiIKKyN8ICJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisjfCAiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi4iCittc2dpZCAiIgorIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAtMjAwMiBXaWNoZXJ0IEFra2VybWFuLlxuIgorIkNvcHlyaWdodCAoQykgMjAwOS0yMDEwIFJhcGhhZWwgSGVydHpvZy5cbiIKK21zZ3N0ciAiIgorIlxuIgorIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEwMQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSA8Y29tbWFuZD5cbiIKKyN8ICJcbiIKKyN8ICJDb21tYW5kczpcbiIKKyN8ICIgIC0taW5zdGFsbCA8bGluaz4gPG5hbWU+IDxwYXRoPiA8cHJpb3JpdHk+XG4iCisjfCAiICAgIFstLXNsYXZlIDxsaW5rPiA8bmFtZT4gPHBhdGg+XSAuLi5cbiIKKyN8ICIgICAgICAgICAgICAgICAgICAgICAgICAgICBhZGQgYSBncm91cCBvZiBhbHRlcm5hdGl2ZXMgdG8gdGhlIHN5c3RlbS5cbiIKKyN8ICIgIC0tcmVtb3ZlIDxuYW1lPiA8cGF0aD4gICByZW1vdmUgPHBhdGg+IGZyb20gdGhlIDxuYW1lPiBncm91cCAiCisjfCAiYWx0ZXJuYXRpdmUuXG4iCisjfCAiICAtLXJlbW92ZS1hbGwgPG5hbWU+ICAgICAgcmVtb3ZlIDxuYW1lPiBncm91cCBmcm9tIHRoZSBhbHRlcm5hdGl2ZXMgIgorI3wgInN5c3RlbS5cbiIKKyN8ICIgIC0tYXV0byA8bmFtZT4gICAgICAgICAgICBzd2l0Y2ggdGhlIG1hc3RlciBsaW5rIDxuYW1lPiB0byBhdXRvbWF0aWMgIgorI3wgIm1vZGUuXG4iCisjfCAiICAtLWRpc3BsYXkgPG5hbWU+ICAgICAgICAgZGlzcGxheSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgPG5hbWU+IGdyb3VwLlxuIgorI3wgIiAgLS1saXN0IDxuYW1lPiAgICAgICAgICAgIGRpc3BsYXkgYWxsIHRhcmdldHMgb2YgdGhlIDxuYW1lPiBncm91cC5cbiIKKyN8ICIgIC0tY29uZmlnIDxuYW1lPiAgICAgICAgICBzaG93IGFsdGVybmF0aXZlcyBmb3IgdGhlIDxuYW1lPiBncm91cCBhbmQgYXNrICIKKyN8ICJ0aGVcbiIKKyN8ICIgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2VyIHRvIHNlbGVjdCB3aGljaCBvbmUgdG8gdXNlLlxuIgorI3wgIiAgLS1zZXQgPG5hbWU+IDxwYXRoPiAgICAgIHNldCA8cGF0aD4gYXMgYWx0ZXJuYXRpdmUgZm9yIDxuYW1lPi5cbiIKKyN8ICIgIC0tYWxsICAgICAgICAgICAgICAgICAgICBjYWxsIC0tY29uZmlnIG9uIGFsbCBhbHRlcm5hdGl2ZXMuXG4iCisjfCAiXG4iCisjfCAiPGxpbms+IGlzIHRoZSBzeW1saW5rIHBvaW50aW5nIHRvICVzLzxuYW1lPi5cbiIKKyN8ICIgIChlLmcuIC91c3IvYmluL3BhZ2VyKVxuIgorI3wgIjxuYW1lPiBpcyB0aGUgbWFzdGVyIG5hbWUgZm9yIHRoaXMgbGluayBncm91cC5cbiIKKyN8ICIgIChlLmcuIHBhZ2VyKVxuIgorI3wgIjxwYXRoPiBpcyB0aGUgbG9jYXRpb24gb2Ygb25lIG9mIHRoZSBhbHRlcm5hdGl2ZSB0YXJnZXQgZmlsZXMuXG4iCisjfCAiICAoZS5nLiAvdXNyL2Jpbi9sZXNzKVxuIgorI3wgIjxwcmlvcml0eT4gaXMgYW4gaW50ZWdlcjsgb3B0aW9ucyB3aXRoIGhpZ2hlciBudW1iZXJzIGhhdmUgaGlnaGVyICIKKyN8ICJwcmlvcml0eSBpblxuIgorI3wgIiAgYXV0b21hdGljIG1vZGUuXG4iCisjfCAiXG4iCisjfCAiT3B0aW9uczpcbiIKKyN8ICIgIC0tYWx0ZGlyIDxkaXJlY3Rvcnk+ICAgICBjaGFuZ2UgdGhlIGFsdGVybmF0aXZlcyBkaXJlY3RvcnkuXG4iCisjfCAiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgY2hhbmdlIHRoZSBhZG1pbmlzdHJhdGl2ZSBkaXJlY3RvcnkuXG4iCisjfCAiICAtLXZlcmJvc2UgICAgICAgICAgICAgICAgdmVyYm9zZSBvcGVyYXRpb24sIG1vcmUgb3V0cHV0LlxuIgorI3wgIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHF1aWV0IG9wZXJhdGlvbiwgbWluaW1hbCBvdXRwdXQuXG4iCisjfCAiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyN8ICIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC0taW5zdGFsbCA8bGluaz4gPG5hbWU+IDxwYXRoPiA8cHJpb3JpdHk+XG4iCisiICAgIFstLXNsYXZlIDxsaW5rPiA8bmFtZT4gPHBhdGg+XSAuLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBhZGQgYSBncm91cCBvZiBhbHRlcm5hdGl2ZXMgdG8gdGhlIHN5c3RlbS5cbiIKKyIgIC0tcmVtb3ZlIDxuYW1lPiA8cGF0aD4gICByZW1vdmUgPHBhdGg+IGZyb20gdGhlIDxuYW1lPiBncm91cCBhbHRlcm5hdGl2ZS5cbiIKKyIgIC0tcmVtb3ZlLWFsbCA8bmFtZT4gICAgICByZW1vdmUgPG5hbWU+IGdyb3VwIGZyb20gdGhlIGFsdGVybmF0aXZlcyAiCisic3lzdGVtLlxuIgorIiAgLS1hdXRvIDxuYW1lPiAgICAgICAgICAgIHN3aXRjaCB0aGUgbWFzdGVyIGxpbmsgPG5hbWU+IHRvIGF1dG9tYXRpYyBtb2RlLlxuIgorIiAgLS1kaXNwbGF5IDxuYW1lPiAgICAgICAgIGRpc3BsYXkgaW5mb3JtYXRpb24gYWJvdXQgdGhlIDxuYW1lPiBncm91cC5cbiIKKyIgIC0tcXVlcnkgPG5hbWU+ICAgICAgICAgICBtYWNoaW5lIHBhcnNlYWJsZSB2ZXJzaW9uIG9mIC0tZGlzcGxheSA8bmFtZT4uXG4iCisiICAtLWxpc3QgPG5hbWU+ICAgICAgICAgICAgZGlzcGxheSBhbGwgdGFyZ2V0cyBvZiB0aGUgPG5hbWU+IGdyb3VwLlxuIgorIiAgLS1nZXQtc2VsZWN0aW9ucyAgICAgICAgIGxpc3QgbWFzdGVyIGFsdGVybmF0aXZlIG5hbWVzIGFuZCB0aGVpciBzdGF0dXMuXG4iCisiICAtLXNldC1zZWxlY3Rpb25zICAgICAgICAgcmVhZCBhbHRlcm5hdGl2ZSBzdGF0dXMgZnJvbSBzdGFuZGFyZCBpbnB1dC5cbiIKKyIgIC0tY29uZmlnIDxuYW1lPiAgICAgICAgICBzaG93IGFsdGVybmF0aXZlcyBmb3IgdGhlIDxuYW1lPiBncm91cCBhbmQgYXNrICIKKyJ0aGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2VyIHRvIHNlbGVjdCB3aGljaCBvbmUgdG8gdXNlLlxuIgorIiAgLS1zZXQgPG5hbWU+IDxwYXRoPiAgICAgIHNldCA8cGF0aD4gYXMgYWx0ZXJuYXRpdmUgZm9yIDxuYW1lPi5cbiIKKyIgIC0tYWxsICAgICAgICAgICAgICAgICAgICBjYWxsIC0tY29uZmlnIG9uIGFsbCBhbHRlcm5hdGl2ZXMuXG4iCisiXG4iCittc2dzdHIgIiIKKyJVc286ICVzIFs8b3DDp8Ojbz4gLi4uXSA8Y29tYW5kbz5cbiIKKyJcbiIKKyJDb21hbmRvczpcbiIKKyIgIC0taW5zdGFsbCA8bGlnYcOnw6NvPiA8bm9tZT4gPGNhbWluaG8+IDxwcmlvcmlkYWRlPlxuIgorIiAgICBbLS1zbGF2ZSA8bGlnYcOnw6NvPiA8bm9tZT4gPGNhbWluaG8+XSAuLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWRpY2lvbmEgdW0gZ3J1cG8gZGUgYWx0ZXJuYXRpdmFzIGFvIHNpc3RlbWEuXG4iCisiICAtLXJlbW92ZSA8bm9tZT4gPGNhbWluaG8+IHJlbW92ZSA8Y2FtaW5obz4gZG8gZ3J1cG8gZGUgYWx0ZXJuYXRpdmFzXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxub21lPi5cbiIKKyIgIC0tcmVtb3ZlLWFsbCA8bm9tZT4gICAgICAgcmVtb3ZlIGdydXBvIDxub21lPiBkbyBzaXN0ZW1hIGRlIGFsdGVybmF0aXZhcy5cbiIKKyIgIC0tYXV0byA8bm9tZT4gICAgICAgICAgICAgbXVkYSBhIGxpZ2HDp8OjbyBwcmluY2lwYWwgPG5vbWU+IHBhcmEgbW9kb1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdXRvbcOhdGljby5cbiIKKyIgIC0tZGlzcGxheSA8bm9tZT4gICAgICAgICAgZXhpYmUgaW5mb3JtYcOnw7VlcyBzb2JyZSBvIGdydXBvIDxub21lPi5cbiIKKyIgIC0tbGlzdCA8bm9tZT4gICAgICAgICAgICAgZXhpYmUgdG9kb3Mgb3MgYWx2b3MgZG8gZ3J1cG8gPG5vbWU+LlxuIgorIiAgLS1jb25maWcgPG5vbWU+ICAgICAgICAgICBtb3N0cmEgYWx0ZXJuYXRpdmFzIHBhcmEgbyBncnVwbyA8bm9tZT5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgZSBwZXJndW50YSBhbyB1c3XDoXJpbyBxdWFsIHVzYXIuXG4iCisiICAtLXNldCA8bm9tZT4gPGNhbWluaG8+ICAgIGRlZmluZSA8Y2FtaW5obz4gY29tbyBhbHRlcm5hdGl2YSBwYXJhIDxub21lPi5cbiIKKyIgIC0tYWxsICAgICAgICAgICAgICAgICAgICAgY2hhbWEgLS1jb25maWcgZW0gdG9kYXMgYXMgYWx0ZXJuYXRpdmFzLlxuIgorIlxuIgorIjxsaWdhw6fDo28+IMOpIGEgbGlnYcOnw6NvIHNpbWLDs2xpY2EgYXBvbnRhbmRvIHBhcmEgJXMvPG5vbWU+LlxuIgorIiAgKHBvciBleGVtcGxvLCAvdXNyL2Jpbi9wYWdlcilcbiIKKyI8bm9tZT4gw6kgbyBub21lIHByaW5jaXBhbCBwYXJhIGVzdGUgZ3J1cG8gZGUgbGlnYcOnw7Vlcy5cbiIKKyIgIChwb3IgZXhlbXBsbywgcGFnZXIpXG4iCisiPGNhbWluaG8+IMOpIGEgbG9jYWxpemHDp8OjbyBkZSB1bSBkb3MgYXJxdWl2b3MgYWx2byBhbHRlcm5hdGl2b3MuXG4iCisiICAocG9yIGV4ZW1wbG8uIC91c3IvYmluL2xlc3MpXG4iCisiPHByaW9yaWRkZT4gw6kgdW0gaW50ZWlybzsgb3DDp8O1ZXMgY29tIG7Dum1lcm9zIG1haW9yZXMgcG9zc3VlbSBwcmlvcmlkYWRlc1xuIgorIiAgbWFpb3JlcyBubyBtb2RvIGF1dG9tw6F0aWNvLlxuIgorIlxuIgorIk9ww6fDtWVzOlxuIgorIiAgLS1hbHRkaXIgPGRpcmV0w7NyaW8+ICAgICBtdWRhIG8gZGlyZXTDs3JpbyBkZSBhbHRlcm5hdGl2YXMuXG4iCisiICAtLWFkbWluZGlyIDxkaXJldMOzcmlvPiAgIG11ZGEgbyBkaXJldMOzcmlvIGFkbWluaXN0cmF0aXZvLlxuIgorIiAgLS12ZXJib3NlICAgICAgICAgICAgICAgIG9wZXJhw6fDo28gdmVyYm9zYSwgbWFpcyBzYcOtZGEuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgb3BlcmHDp8OjbyBzaWxlbmNpb3NhLCBzYcOtZGEgbcOtbmltYS5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICBtb3N0cmEgZXN0YSBtZW5zYWdlbSBkZSBhanVkYS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBtb3N0cmEgYSB2ZXJzw6NvLlxuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyI8bGluaz4gaXMgdGhlIHN5bWxpbmsgcG9pbnRpbmcgdG8gJXMvPG5hbWU+LlxuIgorIiAgKGUuZy4gL3Vzci9iaW4vcGFnZXIpXG4iCisiPG5hbWU+IGlzIHRoZSBtYXN0ZXIgbmFtZSBmb3IgdGhpcyBsaW5rIGdyb3VwLlxuIgorIiAgKGUuZy4gcGFnZXIpXG4iCisiPHBhdGg+IGlzIHRoZSBsb2NhdGlvbiBvZiBvbmUgb2YgdGhlIGFsdGVybmF0aXZlIHRhcmdldCBmaWxlcy5cbiIKKyIgIChlLmcuIC91c3IvYmluL2xlc3MpXG4iCisiPHByaW9yaXR5PiBpcyBhbiBpbnRlZ2VyOyBvcHRpb25zIHdpdGggaGlnaGVyIG51bWJlcnMgaGF2ZSBoaWdoZXIgcHJpb3JpdHkgIgorImluXG4iCisiICBhdXRvbWF0aWMgbW9kZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTMxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWx0ZGlyIDxkaXJlY3Rvcnk+ICAgICBjaGFuZ2UgdGhlIGFsdGVybmF0aXZlcyBkaXJlY3RvcnkuXG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgY2hhbmdlIHRoZSBhZG1pbmlzdHJhdGl2ZSBkaXJlY3RvcnkuXG4iCisiICAtLWxvZyA8ZmlsZT4gICAgICAgICAgICAgY2hhbmdlIHRoZSBsb2cgZmlsZS5cbiIKKyIgIC0tZm9yY2UgICAgICAgICAgICAgICAgICBhbGxvdyByZXBsYWNpbmcgZmlsZXMgd2l0aCBhbHRlcm5hdGl2ZSBsaW5rcy5cbiIKKyIgIC0tc2tpcC1hdXRvICAgICAgICAgICAgICBza2lwIHByb21wdCBmb3IgYWx0ZXJuYXRpdmVzIGNvcnJlY3RseSAiCisiY29uZmlndXJlZFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGluIGF1dG9tYXRpYyBtb2RlIChyZWxldmFudCBmb3IgLS1jb25maWcgb25seSlcbiIKKyIgIC0tdmVyYm9zZSAgICAgICAgICAgICAgICB2ZXJib3NlIG9wZXJhdGlvbiwgbW9yZSBvdXRwdXQuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgcXVpZXQgb3BlcmF0aW9uLCBtaW5pbWFsIG91dHB1dC5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCittc2dzdHIgIiIKKyJVc286ICVzIFs8b3DDp8Ojbz4gLi4uXSA8Y29tYW5kbz5cbiIKKyJcbiIKKyJDb21hbmRvczpcbiIKKyIgIC0tYWRkIDxkb25vPiA8Z3J1cG8+IDxtb2RvPiA8YXJxdWl2bz5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBhZGljaW9uYSB1bWEgbm92YSBlbnRyYWRhIG5vIGJhbmNvIGRlIGRhZG9zLlxuIgorIiAgLS1yZW1vdmUgPGFycXVpdm8+ICAgICAgIHJlbW92ZSBhcnF1aXZvIGRvIGJhbmNvIGRlIGRhZG9zLlxuIgorIiAgLS1saXN0IFs8cGFkcsOjby1nbG9iPl0gICBsaXN0YSBvdmVycmlkZXMgYXR1YWlzIG5vIGJhbmNvIGRlIGRhZG9zLlxuIgorIlxuIgorIk9ww6fDtWVzOlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZXTDs3Jpbz4gICBkZWZpbmUgbyBkaXJldMOzcmlvIGNvbSBvIGFycXVpdm8gXCJzdGF0b3ZlcnJpZGUiCisiXCIuXG4iCisiICAtLXVwZGF0ZSAgICAgICAgICAgICAgICAgYXR1YWxpemEgaW1lZGlhdGFtZW50ZSBhcyBwZXJtaXNzw7VlcyBkbyBhcnF1aXZvLlxuIgorIiAgLS1mb3JjZSAgICAgICAgICAgICAgICAgIGZvcsOnYSB1bWEgYcOnw6NvIG1lc21vIHF1ZSB1bWEgY2hlY2FnZW0gZGUgIgorInNhbmlkYWRlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgZmFsaGUuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgb3BlcmHDp8OjbyBzaWxlbmNpb3NhLCBzYcOtZGEgbcOtbmltYS5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICBtb3N0cmEgZXN0YSBtZW5zYWdlbSBkZSBhanVkYS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBtb3N0cmEgYSB2ZXJzw6NvLlxuIgorCisjIEZJWE1FOiB0ZW50YXIgZGVzY29icmlyIG8gbWFpcyByw6FwaWRvIHBvc3PDrXZlbCBvIG1lbGhvciBzaWduaWZpY2FkbyBwYXJhIHBhcnNlLiAtIENhcmxvcworIyBTVUdFU1TDgk86IGFuw6FsaXNlID8gLT4gZXJybyBkZSBhbsOhbGlzZSA/CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNjMKKyMsIGZ1enp5CisjfCBtc2dpZCAicGFyc2UgZXJyb3IiCittc2dpZCAiZXJyb3IiCittc2dzdHIgImVycm8gZGUgaW50ZXJwcmV0YcOnw6NvIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTkzCittc2dpZCAid2FybmluZyIKK21zZ3N0ciAiYXZpc28iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzozNTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInR3byBjb21tYW5kcyBzcGVjaWZpZWQ6ICVzIGFuZCAtLSVzIgorbXNnaWQgInR3byBjb21tYW5kcyBzcGVjaWZpZWQ6IC0tJXMgYW5kIC0tJXMiCittc2dzdHIgImRvaXMgY29tYW5kb3MgZXNwZWNpZmljYWRvczogJXMgZSAtLSVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6Mzg3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgYXBwZW5kIHRvICclcyciCittc2dzdHIgIm7Do28gZm9pIHBvc3PDrXZlbCBhYnJpciBsb2cgYCVzJyA6ICVzXG4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo1NTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byByZW1vdmUgJXM6ICVzIgorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgJyVzJyIKK21zZ3N0ciAiaW1wb3Nzw612ZWwgcmVtb3ZlciAlczogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTExCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBmaWxlIHdoaWxlIHRyeWluZyB0byByZWFkICVzIgorbXNnc3RyICJmaW0gZGUgYXJxdWl2byBpbmVzcGVyYWRvIGVtICVzIGVtICUuMjU1cyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMTMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIndoaWxlIHJlYWRpbmcgJXM6ICVzIgorbXNnc3RyICJkZXN2aWFkbyBwb3IgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTE5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJsaW5lIG5vdCB0ZXJtaW5hdGVkIHdoaWxlIHRyeWluZyB0byByZWFkICVzIgorbXNnc3RyICJmaW0gZGUgYXJxdWl2byBpbmVzcGVyYWRvIGVtICVzIGVtICUuMjU1cyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMzcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzIGNvcnJ1cHQ6ICVzIgorbXNnc3RyICJlcnJvIGludGVybm86ICVzIGNvcnJvbXBpZG86ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE1MAorIywgYy1mb3JtYXQKK21zZ2lkICJuZXdsaW5lcyBwcm9oaWJpdGVkIGluIHVwZGF0ZS1hbHRlcm5hdGl2ZXMgZmlsZXMgKCVzKSIKK21zZ3N0ciAibm92YXMgbGluaGFzIHByb2liaWRhcyBlbSBhcnF1aXZvcyB1cGRhdGUtYWx0ZXJuYXRpdmVzICglcykiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTYzCittc2dpZCAic2xhdmUgbmFtZSIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE3MSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQwNQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZHVwbGljYXRlIHNsYXZlICVzIgorbXNnaWQgImR1cGxpY2F0ZSBzbGF2ZSBuYW1lICVzIgorbXNnc3RyICJlc2NyYXZvICVzIGR1cGxpY2FkbyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNzQKKyMsIGZ1enp5Cittc2dpZCAic2xhdmUgbGluayIKK21zZ3N0ciAibGlnYcOnw6NvIGVzY3JhdmEgJXMgZHVwbGljYWRhIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE3OAorIywgYy1mb3JtYXQKK21zZ2lkICJzbGF2ZSBsaW5rIHNhbWUgYXMgbWFpbiBsaW5rICVzIgorbXNnc3RyICJsaWdhw6fDo28gZXNjcmF2YSDDqSBhIG1lc21hIHF1ZSBhIGxpZ2HDp8OjbyBwcmluY2lwYWwgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTg1IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDEyCisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBzbGF2ZSBsaW5rICVzIgorbXNnc3RyICJsaWdhw6fDo28gZXNjcmF2YSAlcyBkdXBsaWNhZGEiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjA0Cittc2dpZCAibWFzdGVyIGZpbGUiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHBhdGggJXMiCittc2dzdHIgImNhbWluaG8gJXMgZHVwbGljYWRvIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIyNgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorImFsdGVybmF0aXZlICVzIChwYXJ0IG9mIGxpbmsgZ3JvdXAgJXMpIGRvZXNuJ3QgZXhpc3QuIFJlbW92aW5nIGZyb20gbGlzdCBvZiAiCisiYWx0ZXJuYXRpdmVzLiIKK21zZ3N0ciAiIgorIkFsdGVybmF0aXZhIHBhcmEgJXMgYXBvbnRhIHBhcmEgJXMgLSBhIHF1YWwgbsOjbyBmb2kgZW5jb250cmFkYS4gUmVtb3ZlbmRvIGRhICIKKyJsaXN0YSBkZSBhbHRlcm5hdGl2YXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIyOSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI0MAorIywgZnV6enkKK21zZ2lkICJwcmlvcml0eSIKK21zZ3N0ciAicHJpb3JpZGFkZSAlcyAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMzIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyNDkKK21zZ2lkICJzbGF2ZSBmaWxlIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjQ0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJwcmlvcml0eSBvZiAlczogJXMiCittc2dzdHIgInByaW9yaWRhZGUgJXMgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjk3Cittc2dpZCAic3RhdHVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjk5CisjLCBmdXp6eQorbXNnaWQgImludmFsaWQgc3RhdHVzIgorbXNnc3RyICJtb2RvIGRlIGF0dWFsaXphw6fDo28gaW52w6FsaWRvIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTMwNAorIywgZnV6enkKK21zZ2lkICJtYXN0ZXIgbGluayIKK21zZ3N0ciAibGlnYcOnw6NvIGVzY3JhdmEgJXMgZHVwbGljYWRhIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTM0OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZGlzY2FyZGluZyBvYnNvbGV0ZSBzbGF2ZSBsaW5rICVzICglcykuIgorbXNnc3RyICJEZXNjYXJ0YW5kbyBsaWdhw6fDo28gZXNjcmF2YSBvYnNvbGV0YSAlcyAoJXMpLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MDIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NjkKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjM4Cittc2dpZCAiYXV0byBtb2RlIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTAyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTc4CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYzOQorbXNnaWQgIm1hbnVhbCBtb2RlIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTA1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIgIGxpbmsgY3VycmVudGx5IHBvaW50cyB0byAlcyIKK21zZ3N0ciAiIGxpZ2HDp8OjbyBhdHVhbG1lbnRlIGFwb250YSBwYXJhICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwOAorIywgZnV6enkKK21zZ2lkICIgIGxpbmsgY3VycmVudGx5IGFic2VudCIKK21zZ3N0ciAiIGxpZ2HDp8OjbyBhdHVhbG1lbnRlIGF1c2VudGUiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTEyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIlcyAtIHByaW9yaXR5ICVzIgorbXNnaWQgIiVzIC0gcHJpb3JpdHkgJWQiCittc2dzdHIgIiVzIC0gcHJpb3JpZGFkZSAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MTUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiAgc2xhdmUgJXM6ICVzIgorbXNnc3RyICIgZXNjcmF2byAlczogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTIyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJDdXJyZW50ICdiZXN0JyB2ZXJzaW9uIGlzICclcycuIgorbXNnc3RyICInTWVsaG9yJyB2ZXJzw6NvIGF0dWFsIMOpICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MjQKK21zZ2lkICJObyB2ZXJzaW9ucyBhdmFpbGFibGUuIgorbXNnc3RyICJOZW5odW1hIHZlcnPDo28gZGlzcG9uw612ZWwuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU1MworIywgYy1mb3JtYXQKK21zZ2lkICJUaGVyZSBpcyAlZCBjaG9pY2UgZm9yIHRoZSBhbHRlcm5hdGl2ZSAlcyAocHJvdmlkaW5nICVzKS4iCittc2dpZF9wbHVyYWwgIlRoZXJlIGFyZSAlZCBjaG9pY2VzIGZvciB0aGUgYWx0ZXJuYXRpdmUgJXMgKHByb3ZpZGluZyAlcykuIgorbXNnc3RyWzBdICIiCittc2dzdHJbMV0gIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NjAKKyMsIGZ1enp5Cittc2dpZCAiU2VsZWN0aW9uIgorbXNnc3RyICJEZXNjcmnDp8OjbyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NjEKK21zZ2lkICJQYXRoIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYxCisjLCBmdXp6eQorbXNnaWQgIlByaW9yaXR5IgorbXNnc3RyICJwcmlvcmlkYWRlICVzICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2MQorbXNnaWQgIlN0YXR1cyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU4MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiUHJlc3MgZW50ZXIgdG8ga2VlcCB0aGUgY3VycmVudCBjaG9pY2VbKl0sIG9yIHR5cGUgc2VsZWN0aW9uIG51bWJlcjogIgorbXNnc3RyICIiCisiUHJlc3Npb25lIGVudGVyIHBhcmEgbWFudGVyIG8gcGFkcsOjb1sqXSBvdSBkaWdpdGUgbyBuw7ptZXJvIGRhIHNlbGXDp8OjbzogIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTcyMQorIywgYy1mb3JtYXQKK21zZ2lkICJub3QgcmVwbGFjaW5nICVzIHdpdGggYSBsaW5rLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTc2MgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW4ndCBpbnN0YWxsIHVua25vd24gY2hvaWNlICVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNzgwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJza2lwIGNyZWF0aW9uIG9mICVzIGJlY2F1c2UgYXNzb2NpYXRlZCBmaWxlICVzIChvZiBsaW5rIGdyb3VwICVzKSBkb2Vzbid0ICIKKyJleGlzdC4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IHJlbW92aW5nICVzIHNpbmNlIGl0J3Mgbm90IGEgc3ltbGluay4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNDEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2FsbCAlcy4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiQWx0ZXJuYXRpdmUgJXMgdW5jaGFuZ2VkIGJlY2F1c2UgY2hvaWNlICVzIGlzIG5vdCBhdmFpbGFibGUuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDU1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJTa2lwIHVua25vd24gYWx0ZXJuYXRpdmUgJXMuIgorbXNnc3RyICJOw6NvIGZvaSBwb3Nzw612ZWwgZW5jb250cmFyIGFsdGVybmF0aXZhICclcycuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA3NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAibGluZSB0b28gbG9uZyBvciBub3QgdGVybWluYXRlZCB3aGlsZSB0cnlpbmcgdG8gcmVhZCAlcyIKK21zZ3N0ciAiZmltIGRlIGFycXVpdm8gaW5lc3BlcmFkbyBlbSAlcyBlbSAlLjI1NXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDkwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTAzCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjExMworIywgYy1mb3JtYXQKK21zZ2lkICJTa2lwIGludmFsaWQgbGluZTogJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxMzIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInJlbmFtaW5nICVzIGxpbmsgZnJvbSAlcyB0byAlcy4iCittc2dzdHIgIlJlbm9tZWFuZG8gbGlnYcOnw6NvICVzIGRlICVzIHBhcmEgJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE3MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAicmVuYW1pbmcgJXMgc2xhdmUgbGluayBmcm9tICVzIHRvICVzLiIKK21zZ3N0ciAiUmVub21lYW5kbyBsaWdhw6fDo28gZXNjcmF2YSAlcyBkZSAlcyBwYXJhICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgbmFtZSAoJXMpIG11c3Qgbm90IGNvbnRhaW4gJy8nIGFuZCBzcGFjZXMuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTkzCisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIGxpbmsgaXMgbm90IGFic29sdXRlIGFzIGl0IHNob3VsZCBiZTogJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxOTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgcGF0aCBpcyBub3QgYWJzb2x1dGUgYXMgaXQgc2hvdWxkIGJlOiAlcyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjIyNAorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBtYXN0ZXI6IGl0IGlzIGEgc2xhdmUgb2YgJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyMzIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgbGluayAlcyBpcyBhbHJlYWR5IG1hbmFnZWQgYnkgJXMuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjQxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBwYXRoICVzIGRvZXNuJ3QgZXhpc3QuIgorbXNnc3RyICJhdmlzbzogLS11cGRhdGUgaW5mb3JtYWRvIG1hcyAlcyBuw6NvIGV4aXN0ZSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlICVzIGNhbid0IGJlIHNsYXZlIG9mICVzOiBpdCBpcyBhIG1hc3RlciBhbHRlcm5hdGl2ZS4iCittc2dzdHIgIiIKKyJBbHRlcm5hdGl2YSBwYXJhICVzIGFwb250YSBwYXJhICVzIC0gYSBxdWFsIG7Do28gZm9pIGVuY29udHJhZGEuIFJlbW92ZW5kbyBkYSAiCisibGlzdGEgZGUgYWx0ZXJuYXRpdmFzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgc2xhdmUgb2YgJXM6IGl0IGlzIGEgc2xhdmUgb2YgJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgbGluayAlcyBpcyBhbHJlYWR5IG1hbmFnZWQgYnkgJXMgKHNsYXZlIG9mICVzKS4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBhcmd1bWVudCBgJXMnIgorbXNnc3RyICJhcmd1bWVudG8gZGVzY29uaGVjaWRvICclcyciCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzQzCittc2dpZCAiLS1pbnN0YWxsIG5lZWRzIDxsaW5rPiA8bmFtZT4gPHBhdGg+IDxwcmlvcml0eT4iCittc2dzdHIgIi0taW5zdGFsbCBwcmVjaXNhIGRlIDxsaWdhw6fDo28+IDxub21lPiA8Y2FtaW5obz4gPHByaW9yaWRhZGU+IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM0NiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM5NworbXNnaWQgIjxsaW5rPiBhbmQgPHBhdGg+IGNhbid0IGJlIHRoZSBzYW1lIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzQ5Cittc2dpZCAicHJpb3JpdHkgbXVzdCBiZSBhbiBpbnRlZ2VyIgorbXNnc3RyICJwcmlvcmlkYWRlIGRldmUgc2VyIHVtIGludGVpcm8iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzYyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgPG5hbWU+IDxwYXRoPiIKK21zZ3N0ciAiLS0lcyBwcmVjaXNhIGRlIDxub21lPiA8Y2FtaW5obz4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzc2CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgPG5hbWU+IgorbXNnc3RyICItLSVzIHByZWNpc2EgZGUgPG5vbWU+IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM4OAorbXNnaWQgIi0tc2xhdmUgb25seSBhbGxvd2VkIHdpdGggLS1pbnN0YWxsIgorbXNnc3RyICItLXNsYXZlIHNvbWVudGUgcGVybWl0aWRvIGNvbSAtLWluc3RhbGwiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzkwCittc2dpZCAiLS1zbGF2ZSBuZWVkcyA8bGluaz4gPG5hbWU+IDxwYXRoPiIKK21zZ3N0ciAiLS1zbGF2ZSBwcmVjaXNhIGRlIDxsaWdhw6fDo28+IDxub21lPiA8Y2FtaW5obz4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzk5CisjLCBjLWZvcm1hdAorbXNnaWQgIm5hbWUgJXMgaXMgYm90aCBwcmltYXJ5IGFuZCBzbGF2ZSIKK21zZ3N0ciAibm9tZSAlcyDDqSB0YW50byBwcmltw6FyaW8gcXVhbnRvIGVzY3Jhdm8iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDAyCisjLCBjLWZvcm1hdAorbXNnaWQgImxpbmsgJXMgaXMgYm90aCBwcmltYXJ5IGFuZCBzbGF2ZSIKK21zZ3N0ciAibGlnYcOnw6NvICVzIMOpIHRhbnRvIHByaW3DoXJpbyBxdWFudG8gZXNjcmF2byIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MjIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSA8ZmlsZT4gYXJndW1lbnQiCittc2dzdHIgIi0tJXMgcHJlY2lzYSBkZSB1bSDDum5pY28gYXJndW1lbnRvIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQ0OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiBgJXMnIgorbXNnc3RyICJvcMOnw6NvIGRlc2NvbmhlY2lkYSAnJXMnIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQ1MworIywgZnV6enkKK21zZ2lkICIiCisibmVlZCAtLWRpc3BsYXksIC0tcXVlcnksIC0tbGlzdCwgLS1nZXQtc2VsZWN0aW9ucywgLS1jb25maWcsIC0tc2V0LCAtLXNldC0iCisic2VsZWN0aW9ucywgLS1pbnN0YWxsLCAtLXJlbW92ZSwgLS1hbGwsIC0tcmVtb3ZlLWFsbCBvciAtLWF1dG8iCittc2dzdHIgIiIKKyJwcmVjaXNhIGRlIC0tZGlzcGxheSwgLS1jb25maWcsIC0tc2V0LCAtLWluc3RhbGwsIC0tcmVtb3ZlLCAtLWFsbCwgLS1yZW1vdmUtIgorImFsbCBvdSAtLWF1dG8iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDkwCisjLCBmdXp6eQorI3wgbXNnaWQgInJlYWQgZXJyb3Igb24gc3RhbmRhcmQgaW5wdXQiCittc2dpZCAiPHN0YW5kYXJkIGlucHV0PiIKK21zZ3N0ciAiZXJybyBkZSBsZWl0dXJhIG5hIGVudHJhZGEgcGFkcsOjbyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MDAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MDMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIm5vIGFsdGVybmF0aXZlcyBmb3IgJXMuIgorbXNnc3RyICJOZW5odW1hIGFsdGVybmF0aXZhIHBhcmEgJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUzMAorIywgYy1mb3JtYXQKK21zZ2lkICIlcy8lcyBpcyBkYW5nbGluZywgaXQgd2lsbCBiZSB1cGRhdGVkIHdpdGggYmVzdCBjaG9pY2UuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTM0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiJXMvJXMgaGFzIGJlZW4gY2hhbmdlZCAobWFudWFsbHkgb3IgYnkgYSBzY3JpcHQpLiBTd2l0Y2hpbmcgdG8gbWFudWFsICIKKyJ1cGRhdGVzIG9ubHkuIgorbXNnc3RyICIiCisiJXMgZm9pIG1vZGlmaWNhZG8gKG1hbnVhbG1lbnRlIG91IHBvciB1bSBzY3JpcHQpLlxuIgorIk11ZGFuZG8gcGFyYSBhdHVhbGl6YcOnw7VlcyBtYW51YWlzIHNvbWVudGUuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU0MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAic2V0dGluZyB1cCBhdXRvbWF0aWMgc2VsZWN0aW9uIG9mICVzLiIKK21zZ3N0ciAiQ29uZmlndXJhbmRvIHNlbGXDp8OjbyBhdXRvbcOhdGljYSBkZSAlcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTUxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBmb3IgJXMgbm90IHJlZ2lzdGVyZWQsIG5vdCBzZXR0aW5nLiIKK21zZ3N0ciAiQWx0ZXJuYXRpdmEgJXMgcGFyYSAlcyBuw6NvIHJlZ2lzdHJhZGEsIG7Do28gcmVtb3ZlbmRvLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NTcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NjMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIlRoZXJlIGlzIG5vIHByb2dyYW0gd2hpY2ggcHJvdmlkZXMgJXMuIgorbXNnc3RyICIiCisiTsOjbyBow6EgcHJvZ3JhbWEgcXVlIGZvcm5lw6dhICVzLlxuIgorIk5hZGEgYSBzZXIgY29uZmlndXJhZG8uXG4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTY1IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTc1Cittc2dpZCAiTm90aGluZyB0byBjb25maWd1cmUuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTczCisjLCBjLWZvcm1hdAorbXNnaWQgIlRoZXJlIGlzIG9ubHkgb25lIGFsdGVybmF0aXZlIGluIGxpbmsgZ3JvdXAgJXM6ICVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTg0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBmb3IgJXMgbm90IHJlZ2lzdGVyZWQsIG5vdCByZW1vdmluZy4iCittc2dzdHIgIkFsdGVybmF0aXZhICVzIHBhcmEgJXMgbsOjbyByZWdpc3RyYWRhLCBuw6NvIHJlbW92ZW5kby4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTkyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJyZW1vdmluZyBtYW51YWxseSBzZWxlY3RlZCBhbHRlcm5hdGl2ZSAtIHN3aXRjaGluZyAlcyB0byBhdXRvIG1vZGUiCittc2dzdHIgIiIKKyJSZW1vdmVuZG8gYWx0ZXJuYXRpdmEgc2VsZWNpb25hZGEgbWFudWFsbWVudGUgLSBtdWRhbmRvIHBhcmEgbW9kbyBhdXRvbcOhdGljbyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MTcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImF1dG9tYXRpYyB1cGRhdGVzIG9mICVzLyVzIGFyZSBkaXNhYmxlZCwgbGVhdmluZyBpdCBhbG9uZS4iCittc2dzdHIgIiIKKyJBdHVhbGl6YcOnw7VlcyBhdXRvbcOhdGljYXMgZGUgJXMgZXN0w6NvIGRlc2FiaWxpdGFkYXMsIGRlaXhhbmRvLWFzIGludG9jYWRhcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjE5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ0byByZXR1cm4gdG8gYXV0b21hdGljIHVwZGF0ZXMgdXNlICclcyAtLWF1dG8gJXMnLiIKK21zZ3N0ciAiIgorIlBhcmEgcmV0b3JuYXIgcGFyYSBhdHVhbGl6YcOnw7VlcyBhdXRvbcOhdGljYXMgdXRpbGl6ZSAndXBkYXRlLWFsdGVybmF0aXZlcyAtLSIKKyJhdXRvICVzJy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjM2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1c2luZyAlcyB0byBwcm92aWRlICVzICglcykgaW4gJXMuIgorbXNnc3RyICJVc2FuZG8gJyVzJyBwYXJhIGZvcm5lY2VyICclcycuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjY0NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZm9yY2luZyByZWluc3RhbGxhdGlvbiBvZiBhbHRlcm5hdGl2ZSAlcyBiZWNhdXNlIGxpbmsgZ3JvdXAgJXMgaXMgYnJva2VuLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjY1MQorIywgYy1mb3JtYXQKK21zZ2lkICJjdXJyZW50IGFsdGVybmF0aXZlICVzIGlzIHVua25vd24sIHN3aXRjaGluZyB0byAlcyBmb3IgbGluayBncm91cCAlcy4iCittc2dzdHIgIiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJpdCBpcyBhIHNsYXZlIG9mICVzIgorI34gbXNnc3RyICIgZXNjcmF2byAlczogJXMiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgImNhbm5vdCBzdGF0IG9sZCBuYW1lIGAlcyc6ICVzIgorI34gbXNnaWQgImNhbm5vdCBzdGF0ICVzOiAlcyIKKyN+IG1zZ3N0ciAibsOjbyBmb2kgcG9zc8OtdmVsIGV4ZWN1dGFyIFwic3RhdFwiIGVtIG5vbWUgYW50aWdvICclcyc6ICVzIgorCisjLCBmdXp6eQorI358IG1zZ2lkICIlczogY29weWluZyAlcyB0byAlcyBmYWlsZWQsIGdpdmluZyB1cDogJXMiCisjfiBtc2dpZCAic2NhbiBvZiAlcyBmYWlsZWQ6ICVzIgorI34gbXNnc3RyICIlczogY8OzcGlhIGRlICVzIHBhcmEgJXMgZmFsaG91LCBkZXNpc3RpbmRvOiAlcyIKKworIywgZnV6enkKKyN+fCBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgJXMiCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWN1dGUgJXM6ICVzIgorI34gbXNnc3RyICJmYWxob3UgYW8gZXhlY3V0YXIgJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gbWFrZSAlcyBhIHN5bWxpbmsgdG8gJXM6ICVzIgorI34gbXNnc3RyICJpbXBvc3PDrXZlbCBmYXplciBjb20gcXVlICVzIGZvc3NlIHVtYSBsaWdhw6fDo28gc2ltYsOzbGljYSBwYXJhICVzOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsICVzIGFzICVzOiAlcyIKKyN+IG1zZ3N0ciAiaW1wb3Nzw612ZWwgaW5zdGFsYXIgJXMgY29tbyAlczogJXMiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAid2hpbGUgd3JpdGluZyAlczogJXMiCisjfiBtc2dzdHIgImVycm8gYW8gZ3JhdmFyIGAlcyciCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcmVhZCAlczogJXMiCisjfiBtc2dzdHIgImltcG9zc8OtdmVsIGxlciAlczogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gY2xvc2UgJXM6ICVzIgorI34gbXNnc3RyICJpbXBvc3PDrXZlbCBmZWNoYXIgJXM6ICVzIgorCisjLCBmdXp6eQorI358IG1zZ2lkICJ1bmFibGUgdG8gd3JpdGUgJXM6ICVzIgorI34gbXNnaWQgImNhbm5vdCB3cml0ZSAlczogJXMiCisjfiBtc2dzdHIgImltcG9zc8OtdmVsIGVzY3JldmVyICVzOiAlcyIKKworIywgZnV6enkKKyN+fCBtc2dpZCAidW5hYmxlIHRvIHJlbmFtZSAlcyB0byAlczogJXMiCisjfiBtc2dpZCAidW5hYmxlIHRvIHJlbmFtZSBmaWxlICclcycgdG8gJyVzJyIKKyN+IG1zZ3N0ciAiaW1wb3Nzw612ZWwgcmVub21lYXIgJXMgcGFyYSAlczogJXMiCisKKyN+IG1zZ2lkICJtYWxsb2MgZmFpbGVkICglbGQgYnl0ZXMpIgorI34gbXNnc3RyICJtYWxsb2MgZmFsaG91ICglbGQgYnl0ZXMpIgorCisjfiBtc2dpZCAicmVhbGxvYyBmYWlsZWQgKCVsZCBieXRlcykiCisjfiBtc2dzdHIgInJlYWxsb2MgZmFsaG91ICglbGQgYnl0ZXMpIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHVuYnVmZmVyIGAlLjI1NXMnIgorI34gbXNnc3RyICJpbXBvc3PDrXZlbCByZXRpcmFyICclLjI1NXMnIGRvIGJ1ZmZlciIKKworI34gbXNnaWQgInBhcnQgZmlsZSBgJS4yNTBzJyBoYXMgdHJhaWxpbmcgZ2FyYmFnZSIKKyN+IG1zZ3N0ciAiYXJxdWl2byBwYXJjaWFsICclLjI1MHMnIHBvc3N1aSByYXN0cm9zIGRlIGxpeG8iCisKKyN+IG1zZ2lkICJzaXplICU3ZCBvY2N1cnMgJTVkIHRpbWVzXG4iCisjfiBtc2dzdHIgInRhbWFuaG8gJTdkIG9jb3JyZSAlNWQgdmV6ZXNcbiIKKworI34gbXNnaWQgIm91dCBvZiBtZW1vcnkgcHVzaGluZyBlcnJvciBoYW5kbGVyOiAiCisjfiBtc2dzdHIgInNlbSBtZW3Ds3JpYSBhbyBlbXB1cnJhciBtYW5pcHVsYWRvciBkZSBlcnJvczogIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHVubG9jayBkcGtnIHN0YXR1cyBkYXRhYmFzZSIKKyN+IG1zZ3N0ciAiaW1wb3Nzw612ZWwgZGVzYmxvcXVlYXIgYmFuY28gZGUgZGFkb3MgZGUgZXN0YWRvcyBkbyBkcGtnIgorCisjfiBtc2dpZCAiY29weSBpbmZvIGZpbGUgYCUuMjU1cyciCisjfiBtc2dzdHIgImNvcGlhciBhcnF1aXZvIGRlIGluZm9ybWHDp8O1ZXMgJyUuMjUwcyciCisKKyMgRklYTUU6IHRlbnRhciBkZXNjb2JyaXIgbyBtYWlzIHLDoXBpZG8gcG9zc8OtdmVsIG8gbWVsaG9yIHNpZ25pZmljYWRvIHBhcmEgcGFyc2UuIC0gQ2FybG9zCisjIFNVR0VTVMOCTzogYW7DoWxpc2UgPyAtPiBlcnJvIGRlIGFuw6FsaXNlID8KKyN+IG1zZ2lkICJwYXJzZSBlcnJvciIKKyN+IG1zZ3N0ciAiZXJybyBkZSBpbnRlcnByZXRhw6fDo28iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gd3JpdGUgcGFyc2luZyB3YXJuaW5nIgorI34gbXNnc3RyICJmYWxob3UgYW8gZXNjcmV2ZXIgYXZpc28gZGUgYW7DoWxpc2UiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gbG9jayB0cmlnZ2VycyBhcmVhIgorI34gbXNnc3RyICJpbXBvc3PDrXZlbCBibG9xdWVhciBhIMOhcmVhIGRlIGdhdGlsaG9zIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHJ1biAlcyAoJS4yNTBzKSIKKyN+IG1zZ3N0ciAiZmFsaG91IGFvIGV4ZWN1dGFyICVzICglLjI1MHMpIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgc2hlbGwgKCUuMjUwcykiCisjfiBtc2dzdHIgImZhbGhvdSBhbyBleGVjdXRhciBzaGVsbCAoJS4yNTBzKSIKKworI34gbXNnaWQgInVuYWJsZSB0byBjaGVjayBmb3IgZXhpc3RlbmNlIG9mIGAlLjI1MHMnIgorI34gbXNnc3RyICJpbXBvc3PDrXZlbCBjaGVjYXIgYSBleGlzdMOqbmNpYSBkZSAnJS4yNTBzJyIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIHJtIGZvciBjbGVhbnVwIgorI34gbXNnc3RyICJmYWxob3UgYW8gZXhlY3V0YXIgcm0gcGFyYSBsaW1wZXphIgorCisjfiBtc2dpZCAiIgorI34gIiVzIGRlYnVnZ2luZyBvcHRpb24sIC0tZGVidWc9PG9jdGFsPiBvciAtRDxvY3RhbD46XG4iCisjfiAiXG4iCisjfiAiIG51bWJlciAgcmVmLiBpbiBzb3VyY2UgICBkZXNjcmlwdGlvblxuIgorI34gIiAgICAgIDEgICBnZW5lcmFsICAgICAgICAgICBHZW5lcmFsbHkgaGVscGZ1bCBwcm9ncmVzcyBpbmZvcm1hdGlvblxuIgorI34gIiAgICAgIDIgICBzY3JpcHRzICAgICAgICAgICBJbnZvY2F0aW9uIGFuZCBzdGF0dXMgb2YgbWFpbnRhaW5lciBzY3JpcHRzXG4iCisjfiAiICAgICAxMCAgIGVhY2hmaWxlICAgICAgICAgIE91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZFxuIgorI34gIiAgICAxMDAgICBlYWNoZmlsZWRldGFpbCAgICBMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZFxuIgorI34gIiAgICAgMjAgICBjb25mZiAgICAgICAgICAgICBPdXRwdXQgZm9yIGVhY2ggY29uZmlndXJhdGlvbiBmaWxlXG4iCisjfiAiICAgIDIwMCAgIGNvbmZmZGV0YWlsICAgICAgIExvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZVxuIgorI34gIiAgICAgNDAgICBkZXBjb24gICAgICAgICAgICBEZXBlbmRlbmNpZXMgYW5kIGNvbmZsaWN0c1xuIgorI34gIiAgICA0MDAgICBkZXBjb25kZXRhaWwgICAgICBMb3RzIG9mIGRlcGVuZGVuY2llcy9jb25mbGljdHMgb3V0cHV0XG4iCisjfiAiICAxMDAwMCAgIHRyaWdnZXJzICAgICAgICAgIFRyaWdnZXIgYWN0aXZhdGlvbiBhbmQgcHJvY2Vzc2luZ1xuIgorI34gIiAgMjAwMDAgICB0cmlnZ2Vyc2RldGFpbCAgICBMb3RzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnNcbiIKKyN+ICIgIDQwMDAwICAgdHJpZ2dlcnNzdHVwaWQgICAgU2lsbHkgYW1vdW50cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzXG4iCisjfiAiICAgMTAwMCAgIHZlcnl2ZXJib3NlICAgICAgIExvdHMgb2YgZHJpdmVsIGFib3V0IGVnIHRoZSBkcGtnL2luZm8gIgorI34gImRpcmVjdG9yeVxuIgorI34gIiAgIDIwMDAgICBzdHVwaWRseXZlcmJvc2UgICBJbnNhbmUgYW1vdW50cyBvZiBkcml2ZWxcbiIKKyN+ICJcbiIKKyN+ICJEZWJ1Z2dpbmcgb3B0aW9ucyBhcmUgYmUgbWl4ZWQgdXNpbmcgYml0d2lzZS1vci5cbiIKKyN+ICJOb3RlIHRoYXQgdGhlIG1lYW5pbmdzIGFuZCB2YWx1ZXMgYXJlIHN1YmplY3QgdG8gY2hhbmdlLlxuIgorI34gbXNnc3RyICIiCisjfiAiJXMgb3DDp8OjbyBkZSBkZXB1cmHDp8OjbywgLS1kZWJ1Zz08b2N0YWw+IG91IC1EPG9jdGFsPjpcbiIKKyN+ICJcbiIKKyN+ICIgbsO6bWVybyAgIHJlZmVyLiBubyBmb250ZSAgIGRlc2NyacOnw6NvXG4iCisjfiAiICAgICAgMSAgIGdlbmVyYWwgICAgICAgICAgIEluZm9ybWHDp8OjbyBkZSBwcm9ncmVzc28gZ2VyYWxtZW50ZSB2YWxpb3NhXG4iCisjfiAiICAgICAgMiAgIHNjcmlwdHMgICAgICAgICAgIEludm9jYcOnw6NvIGUgZXN0YWRvIGRvcyBzY3JpcHRzIGRvIG1hbnRlbmVkb3JcbiIKKyN+ICIgICAgIDEwICAgZWFjaGZpbGUgICAgICAgICAgU2HDrWRhIHBhcmEgY2FkYSBhcnF1aXZvIHByb2Nlc3NhZG9cbiIKKyN+ICIgICAgMTAwICAgZWFjaGZpbGVkZXRhaWwgICAgTXVpdGEgc2HDrWRhIHBhcmEgY2FkYSBhcnF1aXZvIHByb2Nlc3NhZG9cbiIKKyN+ICIgICAgIDIwICAgY29uZmYgICAgICAgICAgICAgU2HDrWRhIHBhcmEgY2FkYSBhcnF1aXZvIGRlIGNvbmZpZ3VyYcOnw6NvXG4iCisjfiAiICAgIDIwMCAgIGNvbmZmZGV0YWlsICAgICAgIE11aXRhIHNhw61kYSBwYXJhIGNhZGEgYXJxdWl2byBkZSAiCisjfiAiY29uZmlndXJhw6fDo29cbiIKKyN+ICIgICAgIDQwICAgZGVwY29uICAgICAgICAgICAgRGVwZW5kw6puY2lhcyBlIGNvbmZsaXRvc1xuIgorI34gIiAgICA0MDAgICBkZXBjb25kZXRhaWwgICAgICBNdWl0YSBzYcOtZGEgZGUgZGVwZW5kw6puY2lhcy9jb25mbGl0b3NcbiIKKyN+ICIgIDEwMDAwICAgdHJpZ2dlcnMgICAgICAgICAgQXRpdmHDp8OjbyBlIHByb2Nlc3NhbWVudG8gZGUgZ2F0aWxob3NcbiIKKyN+ICIgIDIwMDAwICAgdHJpZ2dlcnNkZXRhaWwgICAgTXVpdGEgc2HDrWRhIHJlbGFjaW9uYWRhIGEgZ2F0aWxob3NcbiIKKyN+ICIgIDQwMDAwICAgdHJpZ2dlcnNzdHVwaWQgICAgUXVhbnRpZGFkZXMgaWdub3JhbnRlcyBkZSBzYcOtZGEgc29icmUgIgorI34gImdhdGlsaG9zXG4iCisjfiAiICAgMTAwMCAgIHZlcnl2ZXJib3NlICAgICAgIFVtIG1vbnRlIGRlIGJlc3RlaXJhcyBzb2JyZSwgcG9yIGV4ZW1wbG8sIG9zXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpcmV0w7NyaW9zIGRwa2cvaW5mb1xuIgorI34gIiAgIDIwMDAgICBzdHVwaWRseXZlcmJvc2UgICBRdWFudGlkYWRlcyBpbnNhbmFzIGRlIGJlc3RlaXJhc1xuIgorI34gIlxuIgorI34gIk9ww6fDtWVzIGRlIGRlcHVyYcOnw6NvIHPDo28gbWlzdHVyYWRhcyB1c2FuZG8gbyBcImJpdHdpc2Utb3JcIiAob3UtYml0LWEtIgorI34gImJpdCkuXG4iCisjfiAiTm90ZSBxdWUgb3Mgc2lnbmlmaWNhZG9zIGUgdmFsb3JlcyBlc3TDo28gc3VqZWl0b3MgYSBtdWRhbsOnYXMuXG4iCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgIiIKKyN+fCAiJXMgZm9yY2luZyBvcHRpb25zIC0gY29udHJvbCBiZWhhdmlvdXIgd2hlbiBwcm9ibGVtcyBmb3VuZDpcbiIKKyN+fCAiICB3YXJuIGJ1dCBjb250aW51ZTogIC0tZm9yY2UtPHRoaW5nPiw8dGhpbmc+LC4uLlxuIgorI358ICIgIHN0b3Agd2l0aCBlcnJvcjogICAgLS1yZWZ1c2UtPHRoaW5nPiw8dGhpbmc+LC4uLiB8IC0tbm8tZm9yY2UtIgorI358ICI8dGhpbmc+LC4uLlxuIgorI358ICIgRm9yY2luZyB0aGluZ3M6XG4iCisjfnwgIiAgYWxsIFshXSAgICAgICAgICAgICAgICBTZXQgYWxsIGZvcmNlIG9wdGlvbnNcbiIKKyN+fCAiICBkb3duZ3JhZGUgWypdICAgICAgICAgIFJlcGxhY2UgYSBwYWNrYWdlIHdpdGggYSBsb3dlciB2ZXJzaW9uXG4iCisjfnwgIiAgY29uZmlndXJlLWFueSAgICAgICAgICBDb25maWd1cmUgYW55IHBhY2thZ2Ugd2hpY2ggbWF5IGhlbHAgdGhpcyBvbmVcbiIKKyN+fCAiICBob2xkICAgICAgICAgICAgICAgICAgIFByb2Nlc3MgaW5jaWRlbnRhbCBwYWNrYWdlcyBldmVuIHdoZW4gb24gaG9sZFxuIgorI358ICIgIGJhZC1wYXRoICAgICAgICAgICAgICAgUEFUSCBpcyBtaXNzaW5nIGltcG9ydGFudCBwcm9ncmFtcywgcHJvYmxlbXMgIgorI358ICJsaWtlbHlcbiIKKyN+fCAiICBub3Qtcm9vdCAgICAgICAgICAgICAgIFRyeSB0byAoZGUpaW5zdGFsbCB0aGluZ3MgZXZlbiB3aGVuIG5vdCByb290XG4iCisjfnwgIiAgb3ZlcndyaXRlICAgICAgICAgICAgICBPdmVyd3JpdGUgYSBmaWxlIGZyb20gb25lIHBhY2thZ2Ugd2l0aCBhbm90aGVyXG4iCisjfnwgIiAgb3ZlcndyaXRlLWRpdmVydGVkICAgICBPdmVyd3JpdGUgYSBkaXZlcnRlZCBmaWxlIHdpdGggYW4gdW5kaXZlcnRlZCAiCisjfnwgInZlcnNpb25cbiIKKyN+fCAiICBiYWQtdmVyaWZ5ICAgICAgICAgICAgIEluc3RhbGwgYSBwYWNrYWdlIGV2ZW4gaWYgaXQgZmFpbHMgYXV0aGVudGljaXR5ICIKKyN+fCAiY2hlY2tcbiIKKyN+fCAiICBkZXBlbmRzLXZlcnNpb24gWyFdICAgIFR1cm4gZGVwZW5kZW5jeSB2ZXJzaW9uIHByb2JsZW1zIGludG8gd2FybmluZ3NcbiIKKyN+fCAiICBkZXBlbmRzIFshXSAgICAgICAgICAgIFR1cm4gYWxsIGRlcGVuZGVuY3kgcHJvYmxlbXMgaW50byB3YXJuaW5nc1xuIgorI358ICIgIGNvbmZuZXcgWyFdICAgICAgICAgICAgQWx3YXlzIHVzZSB0aGUgbmV3IGNvbmZpZyBmaWxlcywgZG9uJ3QgcHJvbXB0XG4iCisjfnwgIiAgY29uZm9sZCBbIV0gICAgICAgICAgICBBbHdheXMgdXNlIHRoZSBvbGQgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHRcbiIKKyN+fCAiICBjb25mZGVmIFshXSAgICAgICAgICAgIFVzZSB0aGUgZGVmYXVsdCBvcHRpb24gZm9yIG5ldyBjb25maWcgZmlsZXMgaWYgIgorI358ICJvbmVcbiIKKyN+fCAiICAgICAgICAgICAgICAgICAgICAgICAgIGlzIGF2YWlsYWJsZSwgZG9uJ3QgcHJvbXB0LiBJZiBubyBkZWZhdWx0IGNhbiAiCisjfnwgImJlIGZvdW5kLFxuIgorI358ICIgICAgICAgICAgICAgICAgICAgICAgICAgeW91IHdpbGwgYmUgcHJvbXB0ZWQgdW5sZXNzIG9uZSBvZiB0aGUgY29uZm9sZCAiCisjfnwgIm9yXG4iCisjfnwgIiAgICAgICAgICAgICAgICAgICAgICAgICBjb25mbmV3IG9wdGlvbnMgaXMgYWxzbyBnaXZlblxuIgorI358ICIgIGNvbmZtaXNzIFshXSAgICAgICAgICAgQWx3YXlzIGluc3RhbGwgbWlzc2luZyBjb25maWcgZmlsZXNcbiIKKyN+fCAiICBicmVha3MgWyFdICAgICAgICAgICAgIEluc3RhbGwgZXZlbiBpZiBpdCB3b3VsZCBicmVhayBhbm90aGVyIHBhY2thZ2VcbiIKKyN+fCAiICBjb25mbGljdHMgWyFdICAgICAgICAgIEFsbG93IGluc3RhbGxhdGlvbiBvZiBjb25mbGljdGluZyBwYWNrYWdlc1xuIgorI358ICIgIGFyY2hpdGVjdHVyZSBbIV0gICAgICAgUHJvY2VzcyBldmVuIHBhY2thZ2VzIHdpdGggd3JvbmcgYXJjaGl0ZWN0dXJlXG4iCisjfnwgIiAgb3ZlcndyaXRlLWRpciBbIV0gICAgICBPdmVyd3JpdGUgb25lIHBhY2thZ2UncyBkaXJlY3Rvcnkgd2l0aCAiCisjfnwgImFub3RoZXIncyBmaWxlXG4iCisjfnwgIiAgcmVtb3ZlLXJlaW5zdHJlcSBbIV0gICBSZW1vdmUgcGFja2FnZXMgd2hpY2ggcmVxdWlyZSBpbnN0YWxsYXRpb25cbiIKKyN+fCAiICByZW1vdmUtZXNzZW50aWFsIFshXSAgIFJlbW92ZSBhbiBlc3NlbnRpYWwgcGFja2FnZVxuIgorI358ICJcbiIKKyN+fCAiV0FSTklORyAtIHVzZSBvZiBvcHRpb25zIG1hcmtlZCBbIV0gY2FuIHNlcmlvdXNseSBkYW1hZ2UgeW91ciAiCisjfnwgImluc3RhbGxhdGlvbi5cbiIKKyN+fCAiRm9yY2luZyBvcHRpb25zIG1hcmtlZCBbKl0gYXJlIGVuYWJsZWQgYnkgZGVmYXVsdC5cbiIKKyN+IG1zZ2lkICIiCisjfiAiJXMgZm9yY2luZyBvcHRpb25zIC0gY29udHJvbCBiZWhhdmlvdXIgd2hlbiBwcm9ibGVtcyBmb3VuZDpcbiIKKyN+ICIgIHdhcm4gYnV0IGNvbnRpbnVlOiAgLS1mb3JjZS08dGhpbmc+LDx0aGluZz4sLi4uXG4iCisjfiAiICBzdG9wIHdpdGggZXJyb3I6ICAgIC0tcmVmdXNlLTx0aGluZz4sPHRoaW5nPiwuLi4gfCAtLW5vLWZvcmNlLSIKKyN+ICI8dGhpbmc+LC4uLlxuIgorI34gIiBGb3JjaW5nIHRoaW5nczpcbiIKKyN+ICIgIGFsbCBbIV0gICAgICAgICAgICAgICAgU2V0IGFsbCBmb3JjZSBvcHRpb25zXG4iCisjfiAiICBkb3duZ3JhZGUgWypdICAgICAgICAgIFJlcGxhY2UgYSBwYWNrYWdlIHdpdGggYSBsb3dlciB2ZXJzaW9uXG4iCisjfiAiICBjb25maWd1cmUtYW55ICAgICAgICAgIENvbmZpZ3VyZSBhbnkgcGFja2FnZSB3aGljaCBtYXkgaGVscCB0aGlzIG9uZVxuIgorI34gIiAgaG9sZCAgICAgICAgICAgICAgICAgICBQcm9jZXNzIGluY2lkZW50YWwgcGFja2FnZXMgZXZlbiB3aGVuIG9uIGhvbGRcbiIKKyN+ICIgIGJhZC1wYXRoICAgICAgICAgICAgICAgUEFUSCBpcyBtaXNzaW5nIGltcG9ydGFudCBwcm9ncmFtcywgcHJvYmxlbXMgIgorI34gImxpa2VseVxuIgorI34gIiAgbm90LXJvb3QgICAgICAgICAgICAgICBUcnkgdG8gKGRlKWluc3RhbGwgdGhpbmdzIGV2ZW4gd2hlbiBub3Qgcm9vdFxuIgorI34gIiAgb3ZlcndyaXRlICAgICAgICAgICAgICBPdmVyd3JpdGUgYSBmaWxlIGZyb20gb25lIHBhY2thZ2Ugd2l0aCBhbm90aGVyXG4iCisjfiAiICBvdmVyd3JpdGUtZGl2ZXJ0ZWQgICAgIE92ZXJ3cml0ZSBhIGRpdmVydGVkIGZpbGUgd2l0aCBhbiB1bmRpdmVydGVkICIKKyN+ICJ2ZXJzaW9uXG4iCisjfiAiICBiYWQtdmVyaWZ5ICAgICAgICAgICAgIEluc3RhbGwgYSBwYWNrYWdlIGV2ZW4gaWYgaXQgZmFpbHMgYXV0aGVudGljaXR5ICIKKyN+ICJjaGVja1xuIgorI34gIiAgZGVwZW5kcy12ZXJzaW9uIFshXSAgICBUdXJuIGRlcGVuZGVuY3kgdmVyc2lvbiBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzXG4iCisjfiAiICBkZXBlbmRzIFshXSAgICAgICAgICAgIFR1cm4gYWxsIGRlcGVuZGVuY3kgcHJvYmxlbXMgaW50byB3YXJuaW5nc1xuIgorI34gIiAgY29uZm5ldyBbIV0gICAgICAgICAgICBBbHdheXMgdXNlIHRoZSBuZXcgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHRcbiIKKyN+ICIgIGNvbmZvbGQgWyFdICAgICAgICAgICAgQWx3YXlzIHVzZSB0aGUgb2xkIGNvbmZpZyBmaWxlcywgZG9uJ3QgcHJvbXB0XG4iCisjfiAiICBjb25mZGVmIFshXSAgICAgICAgICAgIFVzZSB0aGUgZGVmYXVsdCBvcHRpb24gZm9yIG5ldyBjb25maWcgZmlsZXMgaWYgIgorI34gIm9uZVxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICBpcyBhdmFpbGFibGUsIGRvbid0IHByb21wdC4gSWYgbm8gZGVmYXVsdCBjYW4gYmUgIgorI34gImZvdW5kLFxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICB5b3Ugd2lsbCBiZSBwcm9tcHRlZCB1bmxlc3Mgb25lIG9mIHRoZSBjb25mb2xkICIKKyN+ICJvclxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICBjb25mbmV3IG9wdGlvbnMgaXMgYWxzbyBnaXZlblxuIgorI34gIiAgY29uZm1pc3MgWyFdICAgICAgICAgICBBbHdheXMgaW5zdGFsbCBtaXNzaW5nIGNvbmZpZyBmaWxlc1xuIgorI34gIiAgY29uZmFzayBbIV0gICAgICAgICAgICBPZmZlciB0byByZXBsYWNlIGNvbmZpZyBmaWxlcyB3aXRoIG5vIG5ldyAiCisjfiAidmVyc2lvbnNcbiIKKyN+ICIgIGJyZWFrcyBbIV0gICAgICAgICAgICAgSW5zdGFsbCBldmVuIGlmIGl0IHdvdWxkIGJyZWFrIGFub3RoZXIgcGFja2FnZVxuIgorI34gIiAgY29uZmxpY3RzIFshXSAgICAgICAgICBBbGxvdyBpbnN0YWxsYXRpb24gb2YgY29uZmxpY3RpbmcgcGFja2FnZXNcbiIKKyN+ICIgIGFyY2hpdGVjdHVyZSBbIV0gICAgICAgUHJvY2VzcyBldmVuIHBhY2thZ2VzIHdpdGggd3JvbmcgYXJjaGl0ZWN0dXJlXG4iCisjfiAiICBvdmVyd3JpdGUtZGlyIFshXSAgICAgIE92ZXJ3cml0ZSBvbmUgcGFja2FnZSdzIGRpcmVjdG9yeSB3aXRoIGFub3RoZXIncyAiCisjfiAiZmlsZVxuIgorI34gIiAgdW5zYWZlLWlvIFshXSAgICAgICAgICBEbyBub3QgcGVyZm9ybSBzYWZlIEkvTyBvcGVyYXRpb25zIHdoZW4gIgorI34gInVucGFja2luZ1xuIgorI34gIiAgcmVtb3ZlLXJlaW5zdHJlcSBbIV0gICBSZW1vdmUgcGFja2FnZXMgd2hpY2ggcmVxdWlyZSBpbnN0YWxsYXRpb25cbiIKKyN+ICIgIHJlbW92ZS1lc3NlbnRpYWwgWyFdICAgUmVtb3ZlIGFuIGVzc2VudGlhbCBwYWNrYWdlXG4iCisjfiAiXG4iCisjfiAiV0FSTklORyAtIHVzZSBvZiBvcHRpb25zIG1hcmtlZCBbIV0gY2FuIHNlcmlvdXNseSBkYW1hZ2UgeW91ciAiCisjfiAiaW5zdGFsbGF0aW9uLlxuIgorI34gIkZvcmNpbmcgb3B0aW9ucyBtYXJrZWQgWypdIGFyZSBlbmFibGVkIGJ5IGRlZmF1bHQuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJvcMOnw7VlcyBwYXJhIGZvcsOnYXIgZG8gJXMgLSBjb250cm9sYSBvIGNvbXBvcnRhbWVudG8gcXVhbmRvIHByb2JsZW1hcyBzw6NvXG4iCisjfiAiZW5jb250cmFkb3M6XG4iCisjfiAiICBhdmlzYXIgbWFzIGNvbnRpbnVhcjogIC0tZm9yY2UtPGNvaXNhPiw8Y29pc2E+LC4uLlxuIgorI34gIiAgcGFyYXIgY29tIGVycm8ocyk6ICAgICAtLXJlZnVzZS08Y29pc2E+LDxjb2lzYT4sLi4uIHwgLS1uby1mb3JjZS0iCisjfiAiPGNvaXNhPiwuLi5cbiIKKyN+ICIgRm9yw6dhbmRvIGNvaXNhczpcbiIKKyN+ICIgIGFsbCBbIV0gICAgICAgICAgICAgICAgRGVmaW5lIHRvZGFzIGFzIG9ww6fDtWVzIGRlIGZvcsOnYXJcbiIKKyN+ICIgIGRvd25ncmFkZSBbKl0gICAgICAgICAgU3Vic3RpdHVpIHVtIHBhY290ZSBwb3IgdW1hIHZlcnPDo28gbWVub3JcbiIKKyN+ICIgIGNvbmZpZ3VyZS1hbnkgICAgICAgICAgQ29uZmlndXJhIHF1YWxxdWVyIHBhY290ZSBxdWUgcG9zc2EgYWp1ZGFyIGVzc2VcbiIKKyN+ICIgIGhvbGQgICAgICAgICAgICAgICAgICAgUHJvY2Vzc2EgcGFjb3RlcyBpbmNpZGVudGFpcyBtZXNtbyBxdWFuZG8gIgorI34gInJldGlkb3NcbiIKKyN+ICIgIGJhZC1wYXRoICAgICAgICAgICAgICAgRmFsdGFtIHByb2dyYW1hcyBpbXBvcnRhbnRlcyBubyBQQVRILCBjaGFuY2VzICIKKyN+ICJkZVxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICBwcm9ibGVtYXNcbiIKKyN+ICIgIG5vdC1yb290ICAgICAgICAgICAgICAgVGVudGEgKGRlcylpbnN0YWxhciBjb2lzYXMgbWVzbW8gbsOjbyBzZW5kbyByb290XG4iCisjfiAiICBvdmVyd3JpdGUgICAgICAgICAgICAgIFNvYnJlcMO1ZSB1bSBhcnF1aXZvIGRlIHVtIHBhY290ZSBjb20gb3V0cm9cbiIKKyN+ICIgIG92ZXJ3cml0ZS1kaXZlcnRlZCAgICAgU29icmVww7VlIHVtIGFycXVpdm8gZGVzdmlhZG8gY29tIHVtYSB2ZXJzw6NvIG7Do29cbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgZGVzdmlhZGFcbiIKKyN+ICIgIGJhZC12ZXJpZnkgICAgICAgICAgICAgSW5zdGFsYSB1bSBwYWNvdGUgbWVzbW8gcXVlIGlzc28gZmFsaGUgbmEgIgorI34gImNoZWNhZ2VtXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIGRlIGF1dGVudGljaWRhZGVcbiIKKyN+ICIgIGRlcGVuZHMtdmVyc2lvbiBbIV0gICAgQ29udmVydGUgcHJvYmxlbWFzIGRlIGRlcGVuZMOqbmNpYXMgZGEgdmVyc8OjbyBlbVxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICBhdmlzb3NcbiIKKyN+ICIgIGRlcGVuZHMgWyFdICAgICAgICAgICAgQ29udmVydGUgdG9kb3Mgb3MgcHJvYmxlbWFzIGRlIGRlcGVuZMOqbmNpYXMgZW0gIgorI34gImF2aXNvc1xuIgorI34gIiAgY29uZm5ldyBbIV0gICAgICAgICAgICBTZW1wcmUgdXNhciBvcyBub3ZvcyBhcnF1aXZvcyBkZSBjb25maWd1cmHDp8OjbyxcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgbsOjbyBwZXJndW50YXJcbiIKKyN+ICIgIGNvbmZvbGQgWyFdICAgICAgICAgICAgU2VtcHJlIHVzYXIgb3MgYW50aWdvcyBhcnF1aXZvcyBkZSAiCisjfiAiY29uZmlndXJhw6fDo28sXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIG7Do28gcGVyZ3VudGFyXG4iCisjfiAiICBjb25mZGVmIFshXSAgICAgICAgICAgIFVzYSBhcyBvcMOnw7VlcyBwYWRyw6NvIHBhcmEgbm92b3MgYXJxdWl2b3MgZGVcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgY29uZmlndXJhw6fDo28gc2UgZXN0aXZlciBkaXNwb27DrXZlbCwgbsOjbyAiCisjfiAicGVyZ3VudGFyLlxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICBTZSBuZW5odW0gcGFkcsOjbyBwb2RlIHNlciBlbmNvbnRyYWRvLCB2b2PDqiBzZXLDoVxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICBxdWVzdGlvbmFkbywgYSBtZW5vcyBxdWUgdW1hIGRhcyBvcMOnw7VlcywgIgorI34gImNvbmZvbGRcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgb3UgY29uZm5ldyB0YW1iw6ltIHRlbmhhbSBzaWRvIGluZm9ybWFkYXNcbiIKKyN+ICIgIGNvbmZtaXNzIFshXSAgICAgICAgICAgU2VtcHJlIGluc3RhbGFyIGFycXVpdm9zIGRlIGNvbmZpZ3VyYcOnw6NvICIKKyN+ICJmYWx0YW5kb1xuIgorI34gIiAgYnJlYWtzIFshXSAgICAgICAgICAgICBJbnN0YWxhIG1lc21vIHF1ZSBpc3NvIHF1ZWJyZSBvdXRybyBwYWNvdGVcbiIKKyN+ICIgIGNvbmZsaWN0cyBbIV0gICAgICAgICAgUGVybWl0ZSBhIGluc3RhbGHDp8OjbyBkZSBwYWNvdGVzIGNvbmZsaXRhbnRlc1xuIgorI34gIiAgYXJjaGl0ZWN0dXJlIFshXSAgICAgICBQcm9jZXNzYSBhdMOpIG1lc21vIHBhY290ZXMgY29tIGFycXVpdGV0dXJhICIKKyN+ICJlcnJhZGFcbiIKKyN+ICIgIG92ZXJ3cml0ZS1kaXIgWyFdICAgICAgU29icmVww7VlIG8gZGlyZXTDs3JpbyBkZSB1bSBwYWNvdGUgY29tIGFycXVpdm8gIgorI34gImRlXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIG91dHJvXG4iCisjfiAiICByZW1vdmUtcmVpbnN0cmVxIFshXSAgIFJlbW92ZSBwYWNvdGVzIHF1ZSByZXF1ZXJlbSBpbnN0YWxhw6fDo29cbiIKKyN+ICIgIHJlbW92ZS1lc3NlbnRpYWwgWyFdICAgUmVtb3ZlIHVtIHBhY290ZSBlc3NlbmNpYWxcbiIKKyN+ICJcbiIKKyN+ICJBVklTTyAtIG8gdXNvIGRhcyBvcMOnw7VlcyBtYXJjYWRhcyBjb20gWyFdIHBvZGUgZGFuaWZpY2FyIHNlcmlhbWVudGUgYSAiCisjfiAic3VhXG4iCisjfiAiaW5zdGFsYcOnw6NvLiBPcMOnw7VlcyBwYXJhIGZvcsOnYXIgbWFyY2FkYXMgY29tIFsqXSBzw6NvIGhhYmlsaXRhZGFzIHBvciAiCisjfiAicGFkcsOjby5cbiIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIGRwa2ctc3BsaXQgdG8gc2VlIGlmIGl0J3MgcGFydCBvZiBhIG11bHRpcGFydGVyIgorI34gbXNnc3RyICIiCisjfiAiZmFsaG91IGFvIGV4ZWN1dGFyIGRwa2ctc3BsaXQgcGFyYSB2ZXIgc2Ugw6kgcGFydGUgZGUgdW0gYXJxdWl2byBlbSAiCisjfiAibcO6bHRpcGxhcyBwYXJ0ZXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlY2wgZGVic2lnLXZlcmlmeSIKKyN+IG1zZ3N0ciAiZmFsaG91IGFvIGV4ZWN1dGFyIGRlYnNpZ24tdmVyaWZ5IgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgZHBrZy1kZWIgdG8gZXh0cmFjdCBjb250cm9sIGluZm9ybWF0aW9uIgorI34gbXNnc3RyICJmYWxob3UgYW8gZXhlY3V0YXIgZHBrZy1kZWIgcGFyYSBleHRyYWlyIGluZm9ybWHDp8OjbyBkZSBjb250cm9sZSIKKworI34gbXNnaWQgInVuYWJsZSB0byBleGVjIGRwa2ctZGViIHRvIGdldCBmaWxlc3lzdGVtIGFyY2hpdmUiCisjfiBtc2dzdHIgIiIKKyN+ICJpbXBvc3PDrXZlbCBleGVjdXRhciBkcGtnLWRlYiBwYXJhIG9idGVyIHVtIGFycXVpdm8gZG8gc2lzdGVtYSBkZSBhcnF1aXZvcyIKKworI34gbXNnaWQgInVuYWJsZSB0byBkZWxldGUgZGlzYXBwZWFyaW5nIGNvbnRyb2wgaW5mbyBmaWxlIGAlLjI1MHMnIgorI34gbXNnc3RyICJpbXBvc3PDrXZlbCBleGNsdWlyIGFycXVpdm8gaW5mbyBkZSBjb250cm9sZSBkZXNhcGFyZWNlbmRvICclLjI1MHMnIgorCisjfiBtc2dpZCAiZHBrZzogJXMgbm90IGZvdW5kLlxuIgorI34gbXNnc3RyICJkcGtnOiAlcyBuw6NvIGVuY29udHJhZG8uXG4iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gLi4uL0RFQklBTiIKKyN+IG1zZ3N0ciAiZmFsaG91IGFvIG11ZGFyIHBhcmEgbyBkaXJldMOzcmlvIC4uLi9ERUJJQU4iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyB0YXIgLWNmIgorI34gbXNnc3RyICJmYWxob3UgYW8gZXhlY3V0YXIgdGFyIC1jZiIKKworI34gbXNnaWQgImZhaWxlZCB0byBtYWtlIHRtcGZpbGUgKGNvbnRyb2wpIgorI34gbXNnc3RyICJmYWxob3UgYW8gY3JpYXIgdG1wZmlsZSAoY29udHJvbCkiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gdW5saW5rIHRtcGZpbGUgKGNvbnRyb2wpLCAlcyIKKyN+IG1zZ3N0ciAiZmFsaG91IGFvIGV4ZWN1dGFyIFwidW5saW5rXCIgbm8gdG1wZmlsZSAoY29udHJvbCksICVzIgorCisjfiBtc2dpZCAiY29udHJvbCIKKyN+IG1zZ3N0ciAiY29udHJvbGUiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gcmV3aW5kIHRtcGZpbGUgKGNvbnRyb2wpIgorI34gbXNnc3RyICJmYWxob3UgYW8gcmV0cm9jZWRlciB0bXBmaWxlIChjb250cm9sKSIKKworI34gbXNnaWQgImZhaWxlZCB0byBmc3RhdCB0bXBmaWxlIChjb250cm9sKSIKKyN+IG1zZ3N0ciAiZmFsaG91IGFvIGV4ZWN1dGFyIFwiZnN0YXRcIiBubyB0bXBmaWxlIChjb250cm9sKSIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIGZpbmQiCisjfiBtc2dzdHIgImZhbGhvdSBhbyBleGVjdXRhciBmaW5kIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgc2ggLWMgbXYgZm9vLyogJmMiCisjfiBtc2dzdHIgImZhbGhvdSBhbyBleGVjdXRhciBzaCAtYyBtdiBmb28vKiAmYyIKKworI34gbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtICUuMjUwcyBsZW5ndGggY29udGFpbnMgbnVsbHMiCisjfiBtc2dzdHIgImFycXVpdm8gJyUuMjUwcycgZXN0w6EgY29ycm9tcGlkbyAtIHRhbWFuaG8gZGUgJS4yNTBzIGNvbnTDqW0gbnVsb3MiCisKKyN+IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBuZWdhdGl2ZSBtZW1iZXIgbGVuZ3RoICV6aSIKKyN+IG1zZ3N0ciAiYXJxdWl2byAnJS4yNTBzJyBlc3TDoSBjb3Jyb21waWRvIC0gdGFtYW5obyAlemkgZG8gbWVtYnJvIG5lZ2F0aXZvIgorCisjfiBtc2dpZCAiZmFpbGVkIGdldHRpbmcgdGhlIGN1cnJlbnQgZmlsZSBwb3NpdGlvbiIKKyN+IG1zZ3N0ciAiZmFsaG91IGVtIG9idGVyIGEgcG9zacOnw6NvIGF0dWFsIGRvIGFycXVpdm8iCisKKyN+IG1zZ2lkICJmYWlsZWQgc2V0dGluZyB0aGUgY3VycmVudCBmaWxlIHBvc2l0aW9uIgorI34gbXNnc3RyICJmYWxob3UgZW0gZGVmaW5pciBhIHBvc2nDp8OjbyBhdHVhbCBkbyBhcnF1aXZvIgorCisjfiBtc2dpZCAidmVyc2lvbiBudW1iZXIiCisjfiBtc2dzdHIgIm7Dum1lcm8gZGUgdmVyc8OjbyIKKworI34gbXNnaWQgImhlYWRlciBpbmZvIG1lbWJlciIKKyN+IG1zZ3N0ciAibWVtYnJvIGRvIGNhYmXDp2FsaG8gaW5mbyIKKworIywgZnV6enkKKyN+fCBtc2dpZCAic2tpcHBlZCBtZW1iZXIgZGF0YSBmcm9tICVzIgorI34gbXNnaWQgInNraXBwZWQgY29udHJvbCBhcmVhIGZyb20gJXMiCisjfiBtc2dzdHIgInB1bGFkbyBkYWRvcyBkZSBtZW1icm8gZGUgJXMiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSB0ZW1wb3JhcnkgZGlyZWN0b3J5IgorI34gbXNnc3RyICJmYWxob3UgYW8gY3JpYXIgbm9tZSBkZSBkaXJldMOzcmlvIHRlbXBvcsOhcmlvIgorCisjfiBtc2dpZCAiaW5mb19zcGV3IgorI34gbXNnc3RyICJpbmZvX3NwZXciCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgImZhaWxlZCB0byBleGVjIGRwa2ctZGViIHRvIGV4dHJhY3QgY29udHJvbCBpbmZvcm1hdGlvbiIKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBkcGtnLWRlYiB0byBleHRyYWN0IGZpZWxkIHZhbHVlIgorI34gbXNnc3RyICJmYWxob3UgYW8gZXhlY3V0YXIgZHBrZy1kZWIgcGFyYSBleHRyYWlyIGluZm9ybWHDp8OjbyBkZSBjb250cm9sZSIKKworIywgZnV6enkKKyN+fCBtc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSAlczogJXMiCisjfiBtc2dpZCAidW5hYmxlIHRvIHN0YXQgJXM6ICVzIgorI34gbXNnc3RyICJpbXBvc3PDrXZlbCBjcmlhciAlczogJXMiCisKKyN+IG1zZ2lkICJzbGF2ZSBuYW1lICVzIGR1cGxpY2F0ZWQiCisjfiBtc2dzdHIgIm5vbWUgZXNjcmF2byAlcyBkdXBsaWNhZG8iCisKKyN+IG1zZ2lkICJzbGF2ZSBsaW5rICVzIGR1cGxpY2F0ZWQiCisjfiBtc2dzdHIgImxpZ2HDp8OjbyBlc2NyYXZhICVzIGR1cGxpY2FkYSIKKworI34gbXNnaWQgIiVkIHJlcXVlc3RlZCBjb250cm9sIGNvbXBvbmVudHMgYXJlIG1pc3NpbmciCisjfiBtc2dzdHIgImNvbXBvbmVudGVzIGRlIGNvbnRyb2xlIHJlcXVlcmlkb3MgJWQgZXN0w6NvIGZhbHRhbmRvIgorCisjfiBtc2dpZCAiY2F0IChkYXRhKSIKKyN+IG1zZ3N0ciAiY2F0IChkYWRvcykiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gb3BlbiBwaXBlIGRlc2NyaXB0b3IgYDEnIGluIHBhc3RlIgorI34gbXNnc3RyICJmYWxob3UgYW8gYWJyaXIgZGVzY3JpdG9yIGRlIGFycXVpdm8gJzEnIG5hIGNvbGFnZW0iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gd3JpdGUgdG8gZ3ppcCAtZGMiCisjfiBtc2dzdHIgImZhbGhvdSBhbyBlc2NyZXZlciBwYXJhIGd6aXAgLWRjIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGNsb3NlIGd6aXAgLWRjIgorI34gbXNnc3RyICJmYWxob3UgYW8gZmVjaGFyIGd6aXAgLWRjIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHN5c2NhbGwgbHNlZWsgdG8gZmlsZXMgYXJjaGl2ZSBwb3J0aW9uIgorI34gbXNnc3RyICIiCisjfiAiZmFsaG91IGFvIGZhemVyIGEgY2hhbWFkYSBkZSBzaXN0ZW1hIFwibHNlZWtcIiBwYXJhIGEgcG9yw6fDo28gXCJmaWxlc1wiIGRvICIKKyN+ICJhcnF1aXZvIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGV4ZWMgbWtzcGxpdCIKKyN+IG1zZ3N0ciAiaW1wb3Nzw612ZWwgZXhlY3V0YXIgbWtzcGxpdCIKKworI34gbXNnaWQgIiIKKyN+ICJcbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisjfiAiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi4iCisjfiBtc2dzdHIgIiIKKyN+ICJcbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisjfiAiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi4iCisKKyN+IG1zZ2lkICJ0d28gY29tbWFuZHMgc3BlY2lmaWVkOiAlcyBhbmQgLS0lcyIKKyN+IG1zZ3N0ciAiZG9pcyBjb21hbmRvcyBlc3BlY2lmaWNhZG9zOiAlcyBlIC0tJXMiCisKKyN+IG1zZ2lkICItLSVzIG5lZWRzIGEgZGl2ZXJ0LXRvIGFyZ3VtZW50IgorI34gbXNnc3RyICItLSVzIHByZWNpc2EgZGUgdW0gYXJndW1lbnRvIGRlc3ZpYXItcGFyYSIKKworI34gbXNnaWQgIi0tJXMgbmVlZHMgYSA8cGFja2FnZT4gYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tJXMgcHJlY2lzYSBkZSB1bSBhcmd1bWVudG8gPHBhY290ZT4iCisKKyN+IG1zZ2lkICJjYW5ub3Qgb3BlbiBkaXZlcnNpb25zOiAlcyIKKyN+IG1zZ3N0ciAibsOjbyBmb2kgcG9zc8OtdmVsIGFicmlyIGRlc3Zpb3MgKFwiZGl2ZXJzaW9uc1wiKTogJXMiCisKKyN+IG1zZ2lkICJtaXNzaW5nIGFsdG5hbWUiCisjfiBtc2dzdHIgIlwiYWx0bmFtZVwiIGZhbHRhbmRvIgorCisjfiBtc2dpZCAiaW50ZXJuYWwgZXJyb3IgLSBiYWQgbW9kZSBgJXMnIgorI34gbXNnc3RyICJlcnJvIGludGVybm8gLSBtb2RvIHJ1aW0gJyVzJyIKKworI34gbXNnaWQgImNhbm5vdCBzdGF0IG9sZCBuYW1lIGAlcyc6ICVzIgorI34gbXNnc3RyICJuw6NvIGZvaSBwb3Nzw612ZWwgZXhlY3V0YXIgXCJzdGF0XCIgZW0gbm9tZSBhbnRpZ28gJyVzJzogJXMiCisKKyN+IG1zZ2lkICJyZW5hbWU6IHJlbmFtZSBgJXMnIHRvIGAlcyc6ICVzIgorI34gbXNnc3RyICJyZW5vbWVhcjogcmVub21lYXIgJyVzJyBwYXJhICclcyc6ICVzIgorCisjfiBtc2dpZCAiY3JlYXRlIGRpdmVyc2lvbnMtbmV3OiAlcyIKKyN+IG1zZ3N0ciAiY3JpYXIgXCJkaXZlcnNpb25zLW5ld1wiOiAlcyIKKworI34gbXNnaWQgIndyaXRlIGRpdmVyc2lvbnMtbmV3OiAlcyIKKyN+IG1zZ3N0ciAiZXNjcmV2ZXIgXCJkaXZlcnNpb25zLW5ld1wiOiAlcyIKKworI34gbXNnaWQgImNsb3NlIGRpdmVyc2lvbnMtbmV3OiAlcyIKKyN+IG1zZ3N0ciAiZmVjaGFyIFwiZGl2ZXJzaW9ucy1uZXdcIjogJXMiCisKKyN+IG1zZ2lkICJjcmVhdGUgbmV3IGRpdmVyc2lvbnMtb2xkOiAlcyIKKyN+IG1zZ3N0ciAiY3JpYXIgbm92byBcImRpdmVyc2lvbnMtb2xkXCI6ICVzIgorCisjfiBtc2dpZCAiaW5zdGFsbCBuZXcgZGl2ZXJzaW9uczogJXMiCisjfiBtc2dzdHIgImluc3RhbGFyIG5vdm9zIGRlc3Zpb3MgKFwiZGl2ZXJzaW9uc1wiKTogJXMiCisKKyN+IG1zZ2lkICJpbnRlcm5hbCBlcnJvcjogJXMgY29ycnVwdDogJXMiCisjfiBtc2dzdHIgImVycm8gaW50ZXJubzogJXMgY29ycm9tcGlkbzogJXMiCisKKyN+IG1zZ2lkICJkcGtnLWRlYiAtIGVycm9yOiAlcyAoYCVzJykgZG9lc24ndCBjb250YWluIGFueSBkaWdpdHNcbiIKKyN+IG1zZ3N0ciAiZHBrZy1kZWIgLSBlcnJvOiAlcyAoJyVzJykgbsOjbyBjb250w6ltIG5lbmh1bSBkw61naXRvXG4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiRGViaWFuIHJldmlzaW9uIgorI34gbXNnc3RyICJEZWJpYW4gJXMgdmVyc8OjbyAlcy5cbiIKKworI34gbXNnaWQgIiVkIGVycm9ycyBpbiBjb250cm9sIGZpbGUiCisjfiBtc2dzdHIgIiVkIGVycm9zIG5vIGFycXVpdm8gZGUgY29udHJvbGUiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiY2FuJ3QgcmVhZGRpciAlczogJXMiCisjfiBtc2dzdHIgIm7Do28gZm9pIHBvc3PDrXZlbCBhYnJpciBsb2cgYCVzJyA6ICVzXG4iCisKKyN+IG1zZ2lkICJmYWlsZWQgaW4gYnVmZmVyX3dyaXRlKGZkKSAoJWksIHJldD0lbGkpOiAlcyIKKyN+IG1zZ3N0ciAiZmFsaG91IGVtIGJ1ZmZlcl93cml0ZShmZCkgKCVpLCByZXQ9JWxpKTogJXMiCisKKyN+IG1zZ2lkICJlb2YgaW4gYnVmZmVyX3dyaXRlKHN0cmVhbSk6ICVzIgorI34gbXNnc3RyICJlb2YgZW0gYnVmZmVyX3dyaXRlKHN0cmVhbSk6ICVzIgorCisjfiBtc2dpZCAiZXJyb3IgaW4gYnVmZmVyX3dyaXRlKHN0cmVhbSk6ICVzIgorI34gbXNnc3RyICJlcnJvIGVtIGJ1ZmZlcl93cml0ZShzdHJlYW0pOiAlcyIKKworI34gbXNnaWQgImZhaWxlZCBpbiBidWZmZXJfcmVhZChmZCk6ICVzIgorI34gbXNnc3RyICJmYWxob3UgZW0gYnVmZmVyX3JlYWQoZmQpOiAlcyIKKworI34gbXNnaWQgImVycm9yIGluIGJ1ZmZlcl9yZWFkKHN0cmVhbSk6ICVzIgorI34gbXNnc3RyICJlcnJvIGVtIGJ1ZmZlcl9yZWFkKHN0cmVhbSk6ICVzIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiVzIHJldHVybmVkIGVycm9yIGV4aXQgc3RhdHVzICVkIgorI34gbXNnc3RyICJzdWItcHJvY2Vzc28gJXMgcmV0b3Jub3UgZXN0YWRvIGRlIHNhw61kYSBkZSBlcnJvICVkIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiVzIGtpbGxlZCBieSBzaWduYWwgKCVzKSVzIgorI34gbXNnc3RyICJzdWItcHJvY2Vzc28gJXMgZm9pIG1vcnRvIHBvciBzaW5hbCAoJXMpJXMiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiIgorI34gIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSB2ZXJzaW9uIDIgb3JcbiIKKyN+ICJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIlxuIgorI34gIkVzdGUgw6kgdW0gc29mdHdhcmUgbGl2cmU7IHZlamEgYSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSAoXCJHTlUgIgorI34gIkxpY2Vuw6dhXG4iCisjfiAiUMO6YmxpY2EgR2VyYWxcIikgdmVyc8OjbyAyIG91IHBvc3RlcmlvciBwYXJhIGNvbmRpw6fDtWVzIGRlIGPDs3BpYS4gTsOjbyBow6FcbiIKKyN+ICJORU5IVU1BIGdhcmFudGlhLlxuIgorCisjfiBtc2dpZCAiIgorI34gIlxuIgorI34gIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSB2ZXJzaW9uIDIgb3JcbiIKKyN+ICJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIlxuIgorI34gIkVzdGUgw6kgdW0gc29mdHdhcmUgbGl2cmU7IHZlamEgYSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSAoXCJHTlUgIgorI34gIkxpY2Vuw6dhXG4iCisjfiAiUMO6YmxpY2EgR2VyYWxcIikgdmVyc8OjbyAyIG91IHBvc3RlcmlvciBwYXJhIGNvbmRpw6fDtWVzIGRlIGPDs3BpYS4gTsOjbyBow6FcbiIKKyN+ICJORU5IVU1BIGdhcmFudGlhLlxuIgorCisjfiBtc2dpZCAiJXM6IGZhaWxlZCB0byBleGVjICclcyAlcyciCisjfiBtc2dzdHIgIiVzOiBmYWxob3UgYW8gZXhlY3V0YXIgJyVzICVzJyIKKworI34gbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIGVycm9yOiByZWFkOiBgJXMnIgorI34gbXNnc3RyICIlczogZXJybyBpbnRlcm5vIGRvIGd6aXA6IHJlYWQ6ICclcyciCisKKyN+IG1zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCBlcnJvcjogd3JpdGU6IGAlcyciCisjfiBtc2dzdHIgIiVzOiBlcnJvIGludGVybm8gZG8gZ3ppcDogd3JpdGU6ICclcyciCisKKyN+IG1zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCBlcnJvcjogcmVhZCglaSkgIT0gd3JpdGUoJWkpIgorI34gbXNnc3RyICIlczogZXJybyBpbnRlcm5vIGRvIGd6aXA6IHJlYWQoJWkpICE9IHdyaXRlKCVpKSIKKworI34gbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiBlcnJvcjogcmVhZDogYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IGVycm8gaW50ZXJubyBkbyBiemlwMjogcmVhZDogJyVzJyIKKworI34gbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiBlcnJvcjogd3JpdGU6IGAlcyciCisjfiBtc2dzdHIgIiVzOiBlcnJvIGludGVybm8gZG8gYnppcDI6IHdyaXRlOiAnJXMnIgorCisjfiBtc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIGVycm9yOiByZWFkKCVpKSAhPSB3cml0ZSglaSkiCisjfiBtc2dzdHIgIiVzOiBlcnJvIGludGVybm8gZG8gYnppcDI6IHJlYWQoJWkpICE9IHdyaXRlKCVpKSIKKworI34gbXNnaWQgIkRvbid0IGZvcmdldCB0byBmb3JlZ3JvdW5kIChgZmcnKSB0aGlzIHByb2Nlc3Mgd2hlbiB5b3UncmUgZG9uZSAhXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJOw6NvIGVzcXVlw6dhIGRlIHBhc3NhciBlc3RlIHByb2Nlc3NvIHBhcmEgcHJpbWVpcm8gcGxhbm8gKHVzYW5kbyAnZmcnKVxuIgorI34gInF1YW5kbyB0ZXJtaW5hciFcbiIKKworI34gbXNnaWQgIiIKKyN+ICJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAyIG9yXG4iCisjfiAibGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuXG4iCisjfiAiU2VlICVzIC0tbGljZW5zZSBmb3IgY29weXJpZ2h0IGFuZCBsaWNlbnNlIGRldGFpbHMuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJFc3RlIMOpIHVtIHNvZnR3YXJlIGxpdnJlOyB2ZWphIGEgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgKFwiR05VICIKKyN+ICJMaWNlbsOnYVxuIgorI34gIlDDumJsaWNhIEdlcmFsXCIpIHZlcnPDo28gMiBvdSBwb3N0ZXJpb3IgcGFyYSBjb25kacOnw7VlcyBkZSBjw7NwaWEuICBOw6NvIGjDoVxuIgorI34gIk5FTkhVTUEgZ2FyYW50aWEuXG4iCisjfiAiVmVqYSAlcyAtLWxpY2Vuc2UgcGFyYSBkZXRhbGhlcyBkZSBjb3B5cmlnaHQgZSBsaWNlbsOnYS5cbiIKKworI34gbXNnaWQgInVuYWJsZSB0byBnZXQgdW5pcXVlIGZpbGVuYW1lIGZvciBjb250cm9sIGluZm8iCisjfiBtc2dzdHIgImltcG9zc8OtdmVsIG9idGVyIG5vbWUgZGUgYXJxdWl2byDDum5pY28gcGFyYSBpbmZvcm1hw6fDo28gZGUgY29udHJvbGUiCisKKyN+IG1zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIG1hbmFnZW1lbnQgcHJvZ3JhbSBxdWVyeSB0b29sXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJGZXJyYW1lbnRhIGRlIHByb2N1cmEgZG8gcHJvZ3JhbWEgZGUgZ2VyZW5jaWFtZW50byBkZSBwYWNvdGVzIERlYmlhbiAiCisjfiAiJyVzJ1xuIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IHF1ZXJ5aW5nIHBhY2thZ2VzO1xuIgorI34gIlVzZSAtLWxpY2Vuc2UgZm9yIGNvcHlyaWdodCBsaWNlbnNlIGFuZCBsYWNrIG9mIHdhcnJhbnR5IChHTlUgR1BMKS4iCisjfiBtc2dzdHIgIiIKKyN+ICJVc2UgLS1oZWxwIHBhcmEgYWp1ZGEgc29icmUgcGVzcXVpc2EgZGUgcGFjb3RlcztcbiIKKyN+ICJVc2UgLS1saWNlbnNlIHBhcmEgbGljZW5jaWFtZW50byBlIGZhbHRhIGRlIGdhcmFudGlhIChHTlUgR1BMKS5cbiIKKyN+ICJcbiIKKworI34gbXNnaWQgImZhaWxlZCB0byBjaG93biAlczogJXMiCisjfiBtc2dzdHIgImZhbGhvdSBhbyBleGVjdXRhciBjaG93biAlczogJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gY2htb2QgJXM6ICVzIgorI34gbXNnc3RyICJmYWxob3UgYW8gZXhlY3V0YXIgY2htb2QgJXM6ICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGZvcmsgZm9yIGNsZWFudXAiCisjfiBtc2dzdHIgImZhbGhvdSBhbyBleGVjdXRhciBcImZvcmtcIiBwYXJhIGxpbXBlemEiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gd2FpdCBmb3Igcm0gY2xlYW51cCIKKyN+IG1zZ3N0ciAiZmFsaG91IGFvIGFndWFyZGFyIHBlbGEgbGltcGV6YSBkbyBybSIKKworI34gbXNnaWQgInJtIGNsZWFudXAgZmFpbGVkLCBjb2RlICVkXG4iCisjfiBtc2dzdHIgImxpbXBlemEgZG8gcm0gZmFsaG91LCBjw7NkaWdvICVkXG4iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBybSAtcmYiCisjfiBtc2dzdHIgImZhbGhvdSBhbyBleGVjdXRhciBybSAtcmYiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gcmVhZCBgY29udHJvbCcgKGluIGAlLjI1NXMnKSIKKyN+IG1zZ3N0ciAibsOjbyBmb2kgcG9zc8OtdmVsIGxlciAnY29udHJvbCcgKGVtICclLjI1NXMnKSIKKworI34gbXNnaWQgInVuYWJsZSB0byBzZWVrIGJhY2siCisjfiBtc2dzdHIgImltcG9zc8OtdmVsIHByb2N1cmFyIHBhcmEgdHLDoXMiCisKKyN+IG1zZ2lkICJ1bmtub3duIGRhdGEgdHlwZSBgJWknIGluIGJ1ZmZlcl93cml0ZVxuIgorI34gbXNnc3RyICJ0aXBvIGRlIGRhZG8gZGVzY29uaGVjaWRvICclaScgZW0gYnVmZmVyX3dyaXRlXG4iCisKKyN+IG1zZ2lkICJ1bmtub3duIGRhdGEgdHlwZSBgJWknIGluIGJ1ZmZlcl9yZWFkXG4iCisjfiBtc2dzdHIgInRpcG8gZGUgZGFkbyBkZXNjb25oZWNpZG8gJyVpJyBlbSBidWZmZXJfcmVhZFxuIgorCisjfiBtc2dpZCAid2FpdCBmb3Igc2hlbGwgZmFpbGVkIgorI34gbXNnc3RyICJlc3BlcmEgcGVsbyBzaGVsbCBmYWxob3UiCisKKyN+IG1zZ2lkICJyZWFkIGVycm9yIGluIGRpdmVyc2lvbnMgW2ldIgorI34gbXNnc3RyICJlcnJvIGRlIGxlaXR1cmEgZW0gZGVzdmlvcyBbaV0iCisKKyN+IG1zZ2lkICJ1bmxpbmsiCisjfiBtc2dzdHIgInVubGluayIKKworI34gbXNnaWQgImNobW9kIgorI34gbXNnc3RyICJjaG1vZCIKKworI34gbXNnaWQgImRlbGV0ZSIKKyN+IG1zZ3N0ciAiZXhjbHVpciIKKworIywgZnV6enkKKyN+IG1zZ2lkICJmYWlsZWQgdG8gJXMgJyUuMjU1cyciCisjfiBtc2dzdHIgImZhbGhvdSBhbyAlcyAnJSUuMjU1cyciCisKKyN+IG1zZ2lkICJ3YWl0IGZvciBkcGtnLXNwbGl0IGZhaWxlZCIKKyN+IG1zZ3N0ciAiZXNwZXJhIHBvciBkcGtnLXNwbGl0IGZhbGhvdSIKKworI34gbXNnaWQgImNhbm5vdCByZW1vdmUgZmlsZSBgJS4yNTBzJyIKKyN+IG1zZ3N0ciAibsOjbyBmb2kgcG9zc8OtdmVsIHJlbW92ZXIgYXJxdWl2byAnJS4yNTBzJyIKKworI34gbXNnaWQgIiIKKyN+ICJcbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDIwMDAgV2ljaGVydCBBa2tlcm1hbi4iCisjfiBtc2dzdHIgIiIKKyN+ICJcbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDIwMDAgV2ljaGVydCBBa2tlcm1hbi4iCisKKyN+IG1zZ2lkICJubyBtb2RlIHNwZWNpZmllZCIKKyN+IG1zZ3N0ciAibmVuaHVtIG1vZG8gZXNwZWNpZmljYWRvIgorCisjfiBtc2dpZCAiaWxsZWdhbCB1c2VyICVzIgorI34gbXNnc3RyICJ1c3XDoXJpbyAlcyBpbGVnYWwiCisKKyN+IG1zZ2lkICJub24tZXhpc3RpbmcgdXNlciAlcyIKKyN+IG1zZ3N0ciAidXN1w6FyaW8gJXMgbsOjby1leGlzdGVudGUiCisKKyN+IG1zZ2lkICJpbGxlZ2FsIGdyb3VwICVzIgorI34gbXNnc3RyICJncnVwbyAlcyBpbGVnYWwiCisKKyN+IG1zZ2lkICJub24tZXhpc3RpbmcgZ3JvdXAgJXMiCisjfiBtc2dzdHIgImdydXBvICVzIG7Do28gZXhpc3RlbnRlIgorCisjfiBtc2dpZCAiaWxsZWdhbCBtb2RlICVzIgorI34gbXNnc3RyICJtb2RvICVzIGlsZWdhbCIKKworI34gbXNnaWQgImFib3J0aW5nIgorI34gbXNnc3RyICJhYm9ydGFuZG8iCisKKyN+IG1zZ2lkICJjYW5ub3Qgb3BlbiBzdGF0b3ZlcnJpZGU6ICVzIgorI34gbXNnc3RyICJuw6NvIGZvaSBwb3Nzw612ZWwgYWJyaXIgXCJzdGF0b3ZlcnJpZGVcIjogJXMiCisKKyN+IG1zZ2lkICJNdWx0aXBsZSBvdmVycmlkZXMgZm9yIFwiJXNcIiwgYWJvcnRpbmciCisjfiBtc2dzdHIgIk3Dumx0aXBsb3Mgb3ZlcnJpZGVzIHBhcmEgXCIlc1wiLCBhYm9ydGFuZG8iCisKKyN+IG1zZ2lkICJmYWlsZWQgd3JpdGUgZHVyaW5nIGhhc2hyZXBvcnQiCisjfiBtc2dzdHIgImVzY3JpdGEgZmFsaG91IGR1cmFudGUgXCJoYXNocmVwb3J0XCIiCisKKyN+IG1zZ2lkICJjb25maWd1cmF0aW9uIGVycm9yOiB1bmtub3duIG9wdGlvbiAlcyIKKyN+IG1zZ3N0ciAiZXJybyBkZSBjb25maWd1cmHDp8Ojbzogb3DDp8OjbyBkZXNjb25oZWNpZGEgJXMiCisKKyN+IG1zZ2lkICJjb25maWd1cmF0aW9uIGVycm9yOiAlcyBkb2VzIG5vdCB0YWtlIGEgdmFsdWUiCisjfiBtc2dzdHIgImVycm8gZGUgY29uZmlndXJhw6fDo286ICVzIG7Do28gYWNlaXRhIHVtIHZhbG9yIgorCisjfiBtc2dpZCAiZHBrZzogdmVyc2lvbiAnJXMnIGhhcyBiYWQgc3ludGF4OiAlc1xuIgorI34gbXNnc3RyICJkcGtnOiB2ZXJzw6NvICclcycgcG9zc3VpIHNpbnRheGUgcnVpbTogJXNcbiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJ1bmV4ZWNwdGVkIGVuZCBvZiBsaW5lIGluIHN0YXRvdmVycmlkZSBmaWxlIgorI34gbXNnc3RyICJmaW0gZGUgbGluaGEgaW5lc3BlcmFkbyBubyBub21lIGRvIHBhY290ZSBuYSBsaW5oYSAlZCIKKworIywgZnV6enkKKyN+IG1zZ2lkICItLWNoZWNrLXN1cHBvcnRlZCB0YWtlcyBubyBhcmd1bWVudHMiCisjfiBtc2dzdHIgImRwa2ctdHJpZ2dlciAtLWNoZWNrLXN1cHBvcnRlZCBuw6NvIGFjZWl0YSBhcmd1bWVudG9zIgorCisjfiBtc2dpZCAiLS1mb3JnZXQtb2xkLXVuYXZhaWwgdGFrZXMgbm8gYXJndW1lbnRzIgorI34gbXNnc3RyICItLWZvcmdldC1vbGQtdW5hdmFpbCBuw6NvIGFjZWl0YSBhcmd1bWVudG9zIgorCisjfiBtc2dpZCAiIgorI34gIlxuIgorI34gIkNvcHlyaWdodCAoQykgMTk5NCwxOTk1IElhbiBKYWNrc29uLiIKKyN+IG1zZ3N0ciAiIgorI34gIlxuIgorI34gIkNvcHlyaWdodCAoQykgMTk5NCwxOTk1IElhbiBKYWNrc29uLiIKKworI34gbXNnaWQgIiIKKyN+ICJVc2FnZTogJXMgWzxvcHRpb25zPiAuLi5dIFstLV0gPGZpbGVuYW1lPlxuIgorI34gIlxuIgorI34gIk9wdGlvbnM6XG4iCisjfiAiICAtLXNlY3Rpb24gPHJlZ2V4cD4gPHRpdGxlPlxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHB1dCB0aGUgbmV3IGVudHJ5IGluIHRoZSA8cmVnZXg+IG1hdGNoZWQgIgorI34gInNlY3Rpb25cbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICBvciBjcmVhdGUgYSBuZXcgb25lIHdpdGggPHRpdGxlPiBpZiBub24tIgorI34gImV4aXN0ZW50LlxuIgorI34gIiAgLS1tZW51ZW50cnk9PHRleHQ+ICAgICAgIHNldCB0aGUgbWVudSBlbnRyeS5cbiIKKyN+ICIgIC0tZGVzY3JpcHRpb249PHRleHQ+ICAgICBzZXQgdGhlIGRlc2NyaXB0aW9uIHRvIGJlIHVzZWQgaW4gdGhlIG1lbnUgIgorI34gImVudHJ5LlxuIgorI34gIiAgLS1pbmZvLWZpbGU9PHBhdGg+ICAgICAgIHNwZWNpZnkgaW5mbyBmaWxlIHRvIGluc3RhbGwgaW4gdGhlICIKKyN+ICJkaXJlY3RvcnkuXG4iCisjfiAiICAtLWRpci1maWxlPTxwYXRoPiAgICAgICAgc3BlY2lmeSBmaWxlIG5hbWUgb2YgaW5mbyBkaXJlY3RvcnkgZmlsZS5cbiIKKyN+ICIgIC0taW5mb2Rpcj08ZGlyZWN0b3J5PiAgICBzYW1lIGFzICctLWRpci1maWxlPTxkaXJlY3Rvcnk+L2RpcicuXG4iCisjfiAiICAtLWluZm8tZGlyPTxkaXJlY3Rvcnk+ICAgbGlrZXdpc2UuXG4iCisjfiAiICAtLWtlZXAtb2xkICAgICAgICAgICAgICAgZG8gbm90IHJlcGxhY2UgZW50cmllcyBub3IgcmVtb3ZlIGVtcHR5IG9uZXMuXG4iCisjfiAiICAtLXJlbW92ZSAgICAgICAgICAgICAgICAgcmVtb3ZlIHRoZSBlbnRyeSBzcGVjaWZpZWQgYnkgPGZpbGVuYW1lPiAiCisjfiAiYmFzZW5hbWUuXG4iCisjfiAiICAtLXJlbW92ZS1leGFjdGx5ICAgICAgICAgcmVtb3ZlIHRoZSBleGFjdCA8ZmlsZW5hbWU+IGVudHJ5LlxuIgorI34gIiAgLS10ZXN0ICAgICAgICAgICAgICAgICAgIGVuYWJsZXMgdGVzdCBtb2RlIChubyBhY3Rpb25zIHRha2VuKS5cbiIKKyN+ICIgIC0tZGVidWcgICAgICAgICAgICAgICAgICBlbmFibGVzIGRlYnVnIG1vZGUgKHNob3cgbW9yZSBpbmZvcm1hdGlvbikuXG4iCisjfiAiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgZG8gbm90IHNob3cgb3V0cHV0IG1lc3NhZ2VzLlxuIgorI34gIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisjfiAiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIlVzbzogJXMgWzxvcMOnw7Vlcz4gLi4uXSBbLS1dIDxub21lLWRvLWFycXVpdm8+XG4iCisjfiAiXG4iCisjfiAiT3DDp8O1ZXM6XG4iCisjfiAiICAtLXNlY3Rpb24gPHJlZ2V4cD4gPHTDrXR1bG8+XG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb2NhIGEgbm92YSBlbnRyYWRhIG5hIHNlw6fDo28gcXVlIGNvbWJpbmEgIgorI34gImNvbVxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWdleD4gb3UgY3JpYSB1bWEgbm92YSBjb20gPHTDrXR1bG8+IGNhc29cbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICBuw6NvIGV4aXN0YS5cbiIKKyN+ICIgIC0tbWVudWVudHJ5PTx0ZXh0bz4gICAgICBkZWZpbmUgYSBlbnRyYWRhIGRvIG1lbnUuXG4iCisjfiAiICAtLWRlc2NyaXB0aW9uPTx0ZXh0bz4gICAgZGVmaW5lIGEgZGVzY3Jpw6fDo28gYSBzZXIgdXNhZGEgbmEgZW50cmFkYVxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGRvIG1lbnUuXG4iCisjfiAiICAtLWluZm8tZmlsZT08Y2FtaW5obz4gICAgZXNwZWNpZmljYSBhcnF1aXZvIGluZm8gYSBzZXIgaW5zdGFsYWRvIG5vXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlyZXTDs3Jpby5cbiIKKyN+ICIgIC0tZGlyLWZpbGU9PGNhbWluaG8+ICAgICBlc3BlY2lmaWNhIG8gbm9tZSBkbyBhcnF1aXZvIGRvIGFycXVpdm8gZGVcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXJldMOzcmlvIGluZm8uXG4iCisjfiAiICAtLWluZm9kaXI9PGRpcmV0w7NyaW8+ICAgIG1lc21vIHF1ZSAnLS1kaXItZmlsZT08ZGlyZXTDs3Jpbz4vZGlyJy5cbiIKKyN+ICIgIC0taW5mby1kaXI9PGRpcmV0w7NyaW8+ICAgbyBtZXNtby5cbiIKKyN+ICIgIC0ta2VlcC1vbGQgICAgICAgICAgICAgICBuw6NvIHN1YnN0aXR1aSBlbnRyYWRhcyBuZW0gcmVtb3ZlciBlbnRyYWRhc1xuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhemlhcy5cbiIKKyN+ICIgIC0tcmVtb3ZlICAgICAgICAgICAgICAgICByZW1vdmUgYSBlbnRyYWRhIGVzcGVjaWZpY2FkYSBwZWxvIG5vbWUgYmFzZSAiCisjfiAiZGVcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICA8bm9tZS1kby1hcnF1aXZvPi5cbiIKKyN+ICIgIC0tcmVtb3ZlLWV4YWN0bHkgICAgICAgICByZW1vdmUgYSBlbnRyYWRhIDxub21lLWRvLWFycXVpdm8+IGV4YXRhLlxuIgorI34gIiAgLS10ZXN0ICAgICAgICAgICAgICAgICAgIGhhYmlsaXRhIG1vZG8gZGUgdGVzdGVzIChuZW5odW1hIGHDp8OjbyDDqSAiCisjfiAidG9tYWRhKS5cbiIKKyN+ICIgIC0tZGVidWcgICAgICAgICAgICAgICAgICBoYWJpbGl0YSBtb2RvIGRlIGRlcHVyYcOnw6NvIChtb3N0cmEgbWFpc1xuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGluZm9ybWHDp8O1ZXMpLlxuIgorI34gIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIG7Do28gbW9zdHJhIG1lbnNhZ2VucyBkZSBzYcOtZGEuXG4iCisjfiAiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgbW9zdHJhIGVzdGEgbWVuc2FnZW0gZGUgYWp1ZGEuXG4iCisjfiAiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgbW9zdHJhIGEgdmVyc8Ojby5cbiIKKworI34gbXNnaWQgImNvdWxkIG5vdCBvcGVuIHN0ZGVyciBmb3Igb3V0cHV0ISAlcyIKKyN+IG1zZ3N0ciAibsOjbyBmb2kgcG9zc8OtdmVsIGFicmlyIHN0ZGVyciBwYXJhIHNhw61kYSEgJXMiCisKKyN+IG1zZ2lkICIlczogLS1zZWN0aW9uIG5lZWRzIHR3byBtb3JlIGFyZ3MiCisjfiBtc2dzdHIgIiVzOiAtLXNlY3Rpb24gcHJlY2lzYSBkZSBkb2lzIGFyZ3VtZW50b3MiCisKKyN+IG1zZ2lkICIlczogb3B0aW9uIC0tJXMgaXMgZGVwcmVjYXRlZCAoaWdub3JlZCkiCisjfiBtc2dzdHIgIiVzOiBvcMOnw6NvIC0tJXMgw6kgb2Jzb2xldGEgKGlnbm9yYWRhKSIKKworI34gbXNnaWQgIiVzOiB1bmtub3duIG9wdGlvbiBgJXMnIgorI34gbXNnc3RyICIlczogb3DDp8OjbyBkZXNjb25oZWNpZGEgJyVzJyIKKworI34gbXNnaWQgIiVzOiB0b28gbWFueSBhcmd1bWVudHMiCisjfiBtc2dzdHIgIiVzOiBtdWl0b3MgYXJndW1lbnRvcyIKKworI34gbXNnaWQgIiVzOiAtLXNlY3Rpb24gaWdub3JlZCB3aXRoIC0tcmVtb3ZlIgorI34gbXNnc3RyICIlczogLS1zZWN0aW9uIGlnbm9yYWRvIGNvbSAtLXJlbW92ZSIKKworI34gbXNnaWQgIiVzOiAtLWRlc2NyaXB0aW9uIGlnbm9yZWQgd2l0aCAtLXJlbW92ZSIKKyN+IG1zZ3N0ciAiJXM6IC0tZGVzY3JpcHRpb24gaWdub3JhZG8gY29tIC0tcmVtb3ZlIgorCisjfiBtc2dpZCAiJXM6IHRlc3QgbW9kZSAtIGRpciBmaWxlIHdpbGwgbm90IGJlIHVwZGF0ZWQiCisjfiBtc2dzdHIgIiVzOiBtb2RvIGRlIHRlc3RlcyAtIGFycXVpdm8gJ2RpcicgbsOjbyBzZXLDoSBhdHVhbGl6YWRvIgorCisjfiBtc2dpZCAiJXM6IHdhcm5pbmcsIGlnbm9yaW5nIGNvbmZ1c2luZyBJTkZPLURJUi1FTlRSWSBpbiBmaWxlLiIKKyN+IG1zZ3N0ciAiJXM6IGF2aXNvLCBpZ25vcmFuZG8gSU5GTy1ESVItRU5UUlkgY29uZnVzYSBlbSBhcnF1aXZvLiIKKworI34gbXNnaWQgImludmFsaWQgaW5mbyBlbnRyeSIKKyN+IG1zZ3N0ciAiZW50cmFkYSBpbmZvIGludsOhbGlkYSIKKworI34gbXNnaWQgIiIKKyN+ICJcbiIKKyN+ICJObyBgU1RBUlQtSU5GTy1ESVItRU5UUlknIGFuZCBubyBgVGhpcyBmaWxlIGRvY3VtZW50cycuXG4iCisjfiAiJXM6IHVuYWJsZSB0byBkZXRlcm1pbmUgZGVzY3JpcHRpb24gZm9yIGBkaXInIGVudHJ5IC0gZ2l2aW5nIHVwXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJcbiIKKyN+ICJOZW5odW1hICdTVEFSVC1JTkZPLURJUi1FTlRSWScgZSBuZW5odW0gJ1RoaXMgZmlsZSBkb2N1bWVudHMnLlxuIgorI34gIiVzOiBpbXBvc3PDrXZlbCBkZXRlcm1pbmFyIGRlc2NyacOnw6NvIHBhcmEgZW50cmFkYSAnZGlyJyAtIGRlc2lzdGluZG9cbiIKKworI34gbXNnaWQgIiVzOiBubyBmaWxlICVzLCByZXRyaWV2aW5nIGJhY2t1cCBmaWxlICVzLiIKKyN+IG1zZ3N0ciAiJXM6IG5lbmh1bSBhcnF1aXZvICVzLCByZWN1cGVyYW5kbyBhcnF1aXZvIGRlIGJhY2t1cCAlcy4iCisKKyN+IG1zZ2lkICIlczogbm8gYmFja3VwIGZpbGUgJXMgYXZhaWxhYmxlLCByZXRyaWV2aW5nIGRlZmF1bHQgZmlsZS4iCisjfiBtc2dzdHIgIiIKKyN+ICIlczogbmVuaHVtIGFycXVpdm8gZGUgYmFja3VwICVzIGRpc3BvbsOtdmVsLCByZWN1cGVyYW5kbyBhcnF1aXZvIHBhZHLDo28uIgorCisjfiBtc2dpZCAiJXM6IG5vIGJhY2t1cCBmaWxlICVzIGF2YWlsYWJsZS4iCisjfiBtc2dzdHIgIiVzOiBuZW5odW0gYXJxdWl2byBkZSBiYWNrdXAgJXMgZGlzcG9uw612ZWwuIgorCisjfiBtc2dpZCAiJXM6IG5vIGRlZmF1bHQgZmlsZSAlcyBhdmFpbGFibGUsIGdpdmluZyB1cC4iCisjfiBtc2dzdHIgIiVzOiBuZW5odW0gYXJxdWl2byBwYWRyw6NvICVzIGRpc3BvbsOtdmVsLCBkZXNpc3RpbmRvLiIKKworI34gbXNnaWQgIiVzOiBmYWlsZWQgdG8gbG9jayBkaXIgZm9yIGVkaXRpbmchICVzIgorI34gbXNnc3RyICIlczogZmFsaG91IGFvIGJsb3F1ZWFyIGRpcmV0w7NyaW8gcGFyYSBlZGnDp8OjbyEgJXMiCisKKyN+IG1zZ2lkICJ0cnkgZGVsZXRpbmcgJXM/IgorI34gbXNnc3RyICJ0ZW50YXIgcmVtb3ZlciAlcz8iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gb3BlbiAlczogJXMiCisjfiBtc2dzdHIgImltcG9zc8OtdmVsIGFicmlyICVzOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byBjbG9zZSAlcyBhZnRlciByZWFkOiAlcyIKKyN+IG1zZ3N0ciAiaW1wb3Nzw612ZWwgZmVjaGFyICVzIGFww7NzIGxlaXR1cmE6ICVzIgorCisjfiBtc2dpZCAiJXM6IGV4aXN0aW5nIGVudHJ5IGZvciBgJXMnIG5vdCByZXBsYWNlZCIKKyN+IG1zZ3N0ciAiJXM6IGVudHJhZGEgZXhpc3RlbnRlIHBhcmEgJyVzJyBuw6NvIHN1YnN0aXR1w61kYSIKKworI34gbXNnaWQgIiVzOiByZXBsYWNpbmcgZXhpc3RpbmcgZGlyIGVudHJ5IGZvciBgJXMnIgorI34gbXNnc3RyICIlczogc3Vic3RpdHVpbmRvIGVudHJhZGEgXCJkaXJcIiBleGlzdGVudGUgcGFyYSAnJXMnIgorCisjfiBtc2dpZCAiJXM6IGNyZWF0aW5nIG5ldyBzZWN0aW9uIGAlcyciCisjfiBtc2dzdHIgIiVzOiBjcmlhbmRvIG5vdmEgc2XDp8OjbyAnJXMnIgorCisjfiBtc2dpZCAiJXM6IG5vIHNlY3Rpb25zIHlldCwgY3JlYXRpbmcgTWlzY2VsbGFuZW91cyBzZWN0aW9uIHRvby4iCisjfiBtc2dzdHIgIiVzOiBhaW5kYSBuZW5odW1hIHNlw6fDo28sIGNyaWFuZG8gc2XDp8OjbyBNaXNjZWzDom5lYSB0YW1iw6ltLiIKKworI34gbXNnaWQgIiVzOiBubyBzZWN0aW9uIHNwZWNpZmllZCBmb3IgbmV3IGVudHJ5LCBwbGFjaW5nIGF0IGVuZCIKKyN+IG1zZ3N0ciAiIgorI34gIiVzOiBuZW5odW1hIHNlw6fDo28gZXNwZWNpZmljYWRhIHBhcmEgbm92YSBlbnRyYWRhLCBjb2xvY2FuZG8gbm8gZmluYWwiCisKKyN+IG1zZ2lkICIlczogZGVsZXRpbmcgZW50cnkgYCVzIC4uLiciCisjfiBtc2dzdHIgIiVzOiBleGNsdWluZG8gZW50cmFkYSAnJXMgLi4uJyIKKworI34gbXNnaWQgIiVzOiBlbXB0eSBzZWN0aW9uIGAlcycgbm90IHJlbW92ZWQiCisjfiBtc2dzdHIgIiVzOiBzZcOnw6NvIHZhemlhICclcycgbsOjbyByZW1vdmlkYSIKKworI34gbXNnaWQgIiVzOiBkZWxldGluZyBlbXB0eSBzZWN0aW9uIGAlcyciCisjfiBtc2dzdHIgIiVzOiBleGNsdWluZG8gc2XDp8OjbyB2YXppYSAnJXMnIgorCisjfiBtc2dpZCAiJXM6IG5vIGVudHJ5IGZvciBmaWxlIGAlcycgYW5kIG1lbnUgZW50cnkgYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IG5lbmh1bWEgZW50cmFkYSBwYXJhIG8gYXJxdWl2byAnJXMnIGUgZW50cmFkYSBkZSBtZW51ICclcyciCisKKyN+IG1zZ2lkICIlczogbm8gZW50cnkgZm9yIGZpbGUgYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IG5lbmh1bWEgZW50cmFkYSBwYXJhIG8gYXJxdWl2byAnJXMnIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGJhY2t1cCBvbGQgJXMsIGdpdmluZyB1cDogJXMiCisjfiBtc2dzdHIgImltcG9zc8OtdmVsIGZhemVyIGJhY2t1cCBkZSBhbnRpZ28gJXMsIGRlc2lzdGluZG86ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3ICVzOiAlcyIKKyN+IG1zZ3N0ciAiaW1wb3Nzw612ZWwgaW5zdGFsYXIgbm92byAlczogJXMiCisKKyN+IG1zZ2lkICIlczogY291bGQgbm90IGJhY2t1cCAlcyBpbiAlczogJXMiCisjfiBtc2dzdHIgIiVzOiBuw6NvIGZvaSBwb3Nzw612ZWwgZmF6ZXIgYmFja3VwIGRlICVzIGVtICVzOiAlcyIKKworI34gbXNnaWQgIiVzOiB3YXJuaW5nIC0gdW5hYmxlIHRvIHVubG9jayAlczogJXMiCisjfiBtc2dzdHIgIiVzOiBhdmlzbyAtIGltcG9zc8OtdmVsIGRlc2Jsb3F1ZWFyICVzOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byByZWFkICVzOiAlZCIKKyN+IG1zZ3N0ciAiaW1wb3Nzw612ZWwgbGVyICVzOiAlZCIKKworI34gbXNnaWQgImRiZzogJXMiCisjfiBtc2dzdHIgImRiZzogJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gb3BlbiB0bXBmaWxlIChjb250cm9sKSwgJXMiCisjfiBtc2dzdHIgImZhbGhvdSBhbyBhYnJpciB0bXBmaWxlIChjb250cm9sKSwgJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gb3BlbiB0bXBmaWxlIChkYXRhKSwgJXMiCisjfiBtc2dzdHIgImZhbGhvdSBhbyBhYnJpciB0bXBmaWxlIChkYWRvcyksICVzIgorCisjfiBtc2dpZCAiaW52YWxpZCBudW1iZXIgZm9yIC0tY29tbWFuZC1mZCIKKyN+IG1zZ3N0ciAibsO6bWVybyBpbnbDoWxpZG8gcGFyYSAtLWNvbW1hbmQtZmQiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcmV3aW5kIGF0IHN0YXJ0IG9mIHZzbnByaW50ZiIKKyN+IG1zZ3N0ciAiaW1wb3Nzw612ZWwgcmV0cm9jZWRlciBhbyBjb21lw6dvIGRlIHZzbnByaW50ZiIKKworI34gbXNnaWQgInVuYWJsZSB0byB0cnVuY2F0ZSBpbiB2c25wcmludGYiCisjfiBtc2dzdHIgImltcG9zc8OtdmVsIHRydW5jYXIgZW0gdnNucHJpbnRmIgorCisjfiBtc2dpZCAid3JpdGUgZXJyb3IgaW4gdnNucHJpbnRmIgorI34gbXNnc3RyICJlcnJvIGRlIGVzY3JpdGEgZW0gdnNucHJpbnRmIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHN0YXQgaW4gdnNucHJpbnRmIgorI34gbXNnc3RyICJpbXBvc3PDrXZlbCBleGVjdXRhciBcInN0YXRcIiBlbSB2c25wcmludGYiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcmV3aW5kIGluIHZzbnByaW50ZiIKKyN+IG1zZ3N0ciAiaW1wb3Nzw612ZWwgcmV0cm9jZWRlciBlbSB2c25wcmludGYiCisKKyN+IG1zZ2lkICJyZWFkIGVycm9yIGluIHZzbnByaW50ZiB0cnVuY2F0ZWQiCisjfiBtc2dzdHIgImVycm8gZGUgbGVpdHVyYSBlbSB2c25wcmludGYgdHJ1bmNhZG8iCisKKyN+IG1zZ2lkICJTeXN0ZW0gZXJyb3Igbm8uJWQiCisjfiBtc2dzdHIgIkVycm8gZGUgc2lzdGVtYSBuby4gJWQiCisKKyN+IG1zZ2lkICJTaWduYWwgbm8uJWQiCisjfiBtc2dzdHIgIlNpbmFsIG5vLiAlZCIKKworI34gbXNnaWQgImRwa2c6IHdhcm5pbmcgLSAlcyByZXR1cm5lZCBlcnJvciBleGl0IHN0YXR1cyAlZFxuIgorI34gbXNnc3RyICJkcGtnOiBhdmlzbyAtICVzIHJldG9ybm91IGVzdGFkbyBkZSBzYcOtZGEgZGUgZXJybyAlZFxuIgorCisjfiBtc2dpZCAiZHBrZzogd2FybmluZyAtICVzIGtpbGxlZCBieSBzaWduYWwgKCVzKSVzXG4iCisjfiBtc2dzdHIgImRwa2c6IGF2aXNvIC0gJXMgZm9pIG1vcnRvIHBvciBzaW5hbCAoJXMpJXNcbiIKKworI34gbXNnaWQgImZhaWxlZCB0byByZWFkIGAlcycgYXQgbGluZSAlZCIKKyN+IG1zZ3N0ciAiZmFsaG91IGFvIGxlciAnJXMnIG5hIGxpbmhhICVkIgorCisjfiBtc2dpZCAicGFyc2UgZXJyb3IsIGluIGZpbGUgYCUuMjU1cycgbmVhciBsaW5lICVkIgorI34gbXNnc3RyICJlcnJvIGRlIGFuw6FsaXNlLCBubyBhcnF1aXZvICclLjI1NXMnLCBwcsOzeGltbyDDoCBsaW5oYSAlZCIKKworI34gbXNnaWQgIiBwYWNrYWdlIGAlLjI1NXMnIgorI34gbXNnc3RyICIgcGFjb3RlICclLjI1NXMnIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHJlYWxsb2MgZm9yIHZhcmlhYmxlIGJ1ZmZlciIKKyN+IG1zZ3N0ciAiZmFsaG91IGFvIHJlYWxvY2FyIHBhcmEgYnVmZmVyIHZhcmnDoXZlbCIKKworI34gbXNnaWQgInByb2Nlc3NfYXJjaGl2ZSAuLi4gIGFscmVhZHkgZGlzYXBwZWFyZWQgISIKKyN+IG1zZ3N0ciAicHJvY2Vzc19hcmNoaXZlIC4uLiBqw6EgZGVzYXBhcmVjZXUhIgorCisjfiBtc2dpZCAiZ29iYmxlIHJlcGxhY2VkIGZpbGUgYCUuMjU1cyciCisjfiBtc2dzdHIgImFycXVpdm8gXCJnb2JibGVcIiBzdWJzdGl0dcOtZG8gJyUuMjU1cyciCisKKyN+IG1zZ2lkICJkcGtnOiAlczogd2FybmluZyAtIGZhaWxlZCB0byByZW1vdmUgYCUuMjUwcyc6ICVzXG4iCisjfiBtc2dzdHIgImRwa2c6ICVzOiBhdmlzbyAtIGZhbGhvdSBhbyByZW1vdmVyICclLjI1MHMnOiAlc1xuIgorCisjfiBtc2dpZCAiLS1hdWRpdCBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudHMiCisjfiBtc2dzdHIgIi0tYXVkaXQgbsOjbyBhY2VpdGEgYXJndW1lbnRvcyIKKworI34gbXNnaWQgIi0teWV0LXRvLXVucGFjayBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudHMiCisjfiBtc2dzdHIgIi0teWV0LXRvLXVucGFjayBuw6NvIGFjZWl0YSBhcmd1bWVudG9zIgorCisjfiBtc2dpZCAiLS1hc3NlcnQtKiBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudHMiCisjfiBtc2dzdHIgIi0tYXNzZXJ0LSogbsOjbyBhY2VpdGEgYXJndW1lbnRvcyIKKworI34gbXNnaWQgIi0tcHJlZGVwLXBhY2thZ2UgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tcHJlZGVwLXBhY2thZ2UgbsOjbyBhY2VpdGEgYXJndW1lbnRvcyIKKworI34gbXNnaWQgIi0tcHJpbnQtYXJjaGl0ZWN0dXJlIGRvZXMgbm90IHRha2UgYW55IGFyZ3VtZW50IgorI34gbXNnc3RyICItLXByaW50LWFyY2hpdGVjdHVyZSBuw6NvIGFjZWl0YSBhcmd1bWVudG9zIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHN0YXQgaW5zdGFsbGVkICVzIHNjcmlwdCBgJS4yNTBzJyIKKyN+IG1zZ3N0ciAiaW1wb3Nzw612ZWwgZXhlY3V0YXIgXCJzdGF0XCIgbm8gc2NyaXB0ICVzIGluc3RhbGFkbyAnJS4yNTBzJyIKKworI34gbXNnaWQgInVuYWJsZSB0byBzdGF0IG5ldyAlcyBzY3JpcHQgYCUuMjUwcyciCisjfiBtc2dzdHIgImltcG9zc8OtdmVsIGV4ZWN1dGFyIFwic3RhdFwiIG5vIG5vdm8gc2NyaXB0ICVzICclLjI1MHMnIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGV4ZWN1dGUgbmV3ICVzIgorI34gbXNnc3RyICJpbXBvc3PDrXZlbCBleGVjdXRhciBub3ZvICVzIgorCisjfiBtc2dpZCAiZHBrZzogd2FybmluZyAtIHVuYWJsZSB0byBzdGF0ICVzIGAlLjI1MHMnOiAlc1xuIgorI34gbXNnc3RyICJkcGtnOiBhdmlzbyAtIGltcG9zc8OtdmVsIGV4ZWN1dGFyIFwic3RhdFwiIGVtICVzICclLjI1MHMnOiAlc1xuIgorCisjfiBtc2dpZCAiLS1zZXQtc2VsZWN0aW9ucyBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudCIKKyN+IG1zZ3N0ciAiLS1zZXQtc2VsZWN0aW9ucyBuw6NvIGFjZWl0YSBhcmd1bWVudG9zIgorCisjfiBtc2dpZCAiLS1jbGVhci1zZWxlY3Rpb25zIGRvZXMgbm90IHRha2UgYW55IGFyZ3VtZW50IgorI34gbXNnc3RyICItLWNsZWFyLXNlbGVjdGlvbnMgbsOjbyBhY2VpdGEgYXJndW1lbnRvcyIKKworI34gbXNnaWQgIi0tYnVpbGQgbmVlZHMgYSBkaXJlY3RvcnkgYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tYnVpbGQgcHJlY2lzYSBkZSB1bSBkaXJldMOzcmlvIGNvbW8gYXJndW1lbnRvIgorCisjfiBtc2dpZCAiIgorI34gImRwa2ctZGViOiB3YXJuaW5nLCBub3QgY2hlY2tpbmcgY29udGVudHMgb2YgY29udHJvbCBhcmVhLlxuIgorI34gImRwa2ctZGViOiBidWlsZGluZyBhbiB1bmtub3duIHBhY2thZ2UgaW4gYCVzJy5cbiIKKyN+IG1zZ3N0ciAiIgorI34gImRwa2ctZGViOiBhdmlzbywgbsOjbyBjaGVjYW5kbyBvIGNvbnRlw7pkbyBkYSDDoXJlYSBkZSBjb250cm9sZS5cbiIKKyN+ICJkcGtnLWRlYjogY29uc3RydWluZG8gdW0gcGFjb3RlIGRlc2NvbmhlY2lkbyBlbSAnJXMnLlxuIgorCisjfiBtc2dpZCAiSW50ZXJuYWwgZXJyb3IsIGNvbXByZXNzX3R5cGUgYCVpJyB1bmtub3duISIKKyN+IG1zZ3N0ciAiRXJybyBpbnRlcm5vLCB0aXBvX2NvbXByZXNzw6NvICclaScgZGVzY29uaGVjaWRvISIKKworI34gbXNnaWQgIi0tam9pbiByZXF1aXJlcyBvbmUgb3IgbW9yZSBwYXJ0IGZpbGUgYXJndW1lbnRzIgorI34gbXNnc3RyICItLWpvaW4gcmVxdWVyIHVtIG91IG1haXMgYXJndW1lbnRvcyBkZSBhcnF1aXZvcyBwYXJjaWFpcyIKKworI34gbXNnaWQgIi0tbGlzdHEgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnRzIgorI34gbXNnc3RyICItLWxpc3RxIG7Do28gYWNlaXRhIGFyZ3VtZW50b3MiCisKKyN+IG1zZ2lkICIiCisjfiAiXG4iCisjfiAiQ29weXJpZ2h0IChDKSAxOTk2IEtpbS1NaW5oIEthcGxhbi4iCisjfiBtc2dzdHIgIiIKKyN+ICJcbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDE5OTYgS2ltLU1pbmggS2FwbGFuLiIKKworI34gbXNnaWQgIiIKKyN+ICJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gWy0tXSBbPGRpcm5hbWU+XVxuIgorI34gIlxuIgorI34gIk9wdGlvbnM6XG4iCisjfiAiICAtLXVuc2FmZSAgICAgc2V0IHNvbWUgYWRkaXRpb25hbCBwb3NzaWJseSB1c2VmdWwgb3B0aW9ucy5cbiIKKyN+ICIgICAgICAgICAgICAgICB3YXJuaW5nOiB0aGlzIG9wdGlvbiBtYXkgZ2FyYmxlIGFuIG90aGVyd2lzZSBjb3JyZWN0ICIKKyN+ICJmaWxlLlxuIgorI34gIiAgLS1oZWxwICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisjfiAiICAtLXZlcnNpb24gICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIlVzbzogJXMgWzxvcMOnw6NvPiAuLi5dIFstLV0gWzxub21lLWRvLWRpcmV0w7NyaW8+XVxuIgorI34gIlxuIgorI34gIk9ww6fDtWVzOlxuIgorI34gIiAgLS11bnNhZmUgICAgIGRlZmluZSBhbGd1bWFzIG9ww6fDtWVzIGFkaWNpb25haXMgcG9zc2l2ZWxtZW50ZSDDunRlaXMuXG4iCisjfiAiICAgICAgICAgICAgICAgYXZpc286IGVzdGEgb3DDp8OjbyBwb2RlIGFkdWx0ZXJhciB1bSBhcnF1aXZvIHF1ZSBlc3TDoSAiCisjfiAiY29ycmV0by5cbiIKKyN+ICIgIC0taGVscCAgICAgICBtb3N0cmEgZXN0YSBtZW5zYWdlbSBkZSBhanVkYS5cbiIKKyN+ICIgIC0tdmVyc2lvbiAgICBtb3N0cmEgYSB2ZXJzw6NvLlxuIgorCisjfiBtc2dpZCAidHJ5IGRlbGV0aW5nICVzIgorI34gbXNnc3RyICJ0ZW50YW5kbyByZW1vdmVyICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGluc3RhbGwgJXM7IGl0IHdpbGwgYmUgbGVmdCBhcyAlczogJXMiCisjfiBtc2dzdHIgImZhbGhvdSBhbyBpbnN0YWxhciAlczsgc2Vyw6EgZGVpeGFkbyBjb21vICVzOiAlcyIKKworI34gbXNnaWQgIiVzOiB1bmFibGUgdG8gdW5sb2NrICVzOiAlcyIKKyN+IG1zZ3N0ciAiJXM6IGltcG9zc8OtdmVsIGRlc2Jsb3F1ZWFyICVzOiAlcyIKKworI34gbXNnaWQgIiVzIC0gc3RhdHVzIGlzICVzLiIKKyN+IG1zZ3N0ciAiJXMgLSBlc3RhZG8gw6kgJXMiCisKKyN+IG1zZ2lkICIgbGluayB1bnJlYWRhYmxlIC0gJXMiCisjfiBtc2dzdHIgIiBsaWdhw6fDo28gaWxlZ8OtdmVsIC0gJXMiCisKKyN+IG1zZ2lkICIiCisjfiAid2FybmluZzogJXMgaXMgc3VwcG9zZWQgdG8gYmUgYSBzeW1saW5rIHRvICVzLCBcbiIKKyN+ICJvciBub25leGlzdGVudDsgaG93ZXZlciwgcmVhZGxpbmsgZmFpbGVkOiAlcyIKKyN+IG1zZ3N0ciAiIgorI34gImF2aXNvOiAlcyBzdXBvc3RhbWVudGUgc2VyaWEgdW1hIGxpZ2HDp8OjbyBzaW1iw7NsaWNhIHBhcmEgJXMsIFxuIgorI34gIm91IGluZXhpc3RlbnRlOyBwb3LDqW0sIFwicmVhZGxpbmtcIiBmYWxob3U6ICVzIgorCisjfiBtc2dpZCAiTGVhdmluZyAlcyAoJXMpIHBvaW50aW5nIHRvICVzLiIKKyN+IG1zZ3N0ciAiRGVpeGFuZG8gJXMgKCVzKSBhcG9udGFuZG8gcGFyYSAlcy4iCisKKyN+IG1zZ2lkICJVcGRhdGluZyAlcyAoJXMpIHRvIHBvaW50IHRvICVzLiIKKyN+IG1zZ3N0ciAiQXR1YWxpemFuZG8gJXMgKCVzKSBwYXJhIGFwb250YXIgcGFyYSAlcy4iCisKKyN+IG1zZ2lkICJSZW1vdmluZyAlcyAoJXMpLCBub3QgYXBwcm9wcmlhdGUgd2l0aCAlcy4iCisjfiBtc2dzdHIgIlJlbW92ZW5kbyAlcyAoJXMpLCBpbmFwcm9wcmlhZG8gY29tICVzLiIKKworI34gbXNnaWQgIiIKKyN+ICJDaGVja2luZyBhdmFpbGFibGUgdmVyc2lvbnMgb2YgJXMsIHVwZGF0aW5nIGxpbmtzIGluICVzIC4uLlxuIgorI34gIihZb3UgbWF5IG1vZGlmeSB0aGUgc3ltbGlua3MgdGhlcmUgeW91cnNlbGYgaWYgZGVzaXJlZCAtIHNlZSBgbWFuIGxuJy4pIgorI34gbXNnc3RyICIiCisjfiAiQ2hlY2FuZG8gdmVyc8O1ZXMgZGlzcG9uw612ZWlzIGRlICVzLCBhdHVhbGl6YW5kbyBsaWdhw6fDtWVzIGVtICVzIC4uLlxuIgorI34gIihWb2PDqiBtZXNtbyBwb2RlIG1vZGlmaWNhciBhcyBsaWdhw6fDtWVzIHNpbWLDs2xpY2FzIGzDoSBzZSBxdWlzZXIgLSB2ZWphICIKKyN+ICInbWFuIGxuJykuIgorCisjfiBtc2dpZCAic2xhdmUgbGluayBuYW1lICVzIGR1cGxpY2F0ZWQiCisjfiBtc2dzdHIgIm5vbWUgZGUgbGlnYcOnw6NvIGVzY3JhdmEgJXMgZHVwbGljYWRhIgorCisjfiBtc2dpZCAiUmVjb3ZlcmluZyBmcm9tIHByZXZpb3VzIGZhaWxlZCB1cGRhdGUgb2YgJXMgLi4uIgorI34gbXNnc3RyICJSZWN1cGVyYW5kby1zZSBkZSBhdHVhbGl6YcOnw6NvIGFudGVyaW9yIGRlICVzIGNvbSBmYWxoYSAuLi4iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gb3BlbiAlcyBmb3Igd3JpdGU6ICVzIgorI34gbXNnc3RyICJpbXBvc3PDrXZlbCBhYnJpciAlcyBwYXJhIGVzY3JpdGE6ICVzIgorCisjfiBtc2dpZCAiTGFzdCBwYWNrYWdlIHByb3ZpZGluZyAlcyAoJXMpIHJlbW92ZWQsIGRlbGV0aW5nIGl0LiIKKyN+IG1zZ3N0ciAiw5psdGltbyBwYWNvdGUgZm9ybmVjZW5kbyAlcyAoJXMpIHJlbW92aWRvLCBleGNsdWluZG8tby4iCisKKyN+IG1zZ2lkICIiCisjfiAiVGhlcmUgaXMgb25seSAxIHByb2dyYW0gd2hpY2ggcHJvdmlkZXMgJXNcbiIKKyN+ICIoJXMpLiBOb3RoaW5nIHRvIGNvbmZpZ3VyZS5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIkV4aXN0ZSBzb21lbnRlIDEgcHJvZ3JhbWEgcXVlIGZvcm5lY2UgJXNcbiIKKyN+ICIoJXMpLiBOYWRhIGEgc2VyIGNvbmZpZ3VyYWRvLlxuIgorCisjfiBtc2dpZCAiIgorI34gIlRoZXJlIGFyZSAlcyBhbHRlcm5hdGl2ZXMgd2hpY2ggcHJvdmlkZSBgJXMnLlxuIgorI34gIlxuIgorI34gIiAgU2VsZWN0aW9uICAgIEFsdGVybmF0aXZlXG4iCisjfiAiLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiIKKyN+IG1zZ3N0ciAiIgorI34gIkV4aXN0ZW0gJXMgYWx0ZXJuYXRpdmFzIHF1ZSBmb3JuZWNlbSAnJXMnLlxuIgorI34gIlxuIgorI34gIiAgU2VsZcOnw6NvICAgICAgQWx0ZXJuYXRpdmFcbiIKKyN+ICItLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIgorCisjfiBtc2dpZCAiZXJyb3Igd3JpdGluZyBzdGRvdXQ6ICVzIgorI34gbXNnc3RyICJlcnJvIGFvIGVzY3JldmVyIGVtIHN0ZG91dDogJXMiCisKKyN+IG1zZ2lkICJlcnJvciBvciBlb2YgcmVhZGluZyAlcyBmb3IgJXMgKCVzKSIKKyN+IG1zZ3N0ciAiZXJybyBvdSBmaW0gZGUgYXJxdWl2byBsZW5kbyAlcyBwYXJhICVzICglcykiCisKKyN+IG1zZ2lkICJtaXNzaW5nIG5ld2xpbmUgYWZ0ZXIgJXMiCisjfiBtc2dzdHIgImZhbHRhbmRvIG5vdmEgbGluaGEgYXDDs3MgJXMiCisKKyN+IG1zZ2lkICJTZXJpb3VzIHByb2JsZW06ICVzIgorI34gbXNnc3RyICJQcm9ibGVtYSBzw6lyaW86ICVzIgorCisjfiBtc2dpZCAiY291bGRuJ3QgYWxsb2NhdGUgbWVtb3J5IGZvciBzdHJkdXAgaW4gZmluZHBhY2thZ2UoJXMpIgorI34gbXNnc3RyICJuw6NvIGZvaSBwb3Nzw612ZWwgYWxvY2FyIG1lbcOzcmlhIHBhcmEgc3RyZHVwIGVtIGZpbmRwYWNrYWdlKCVzKSIKKworI34gbXNnaWQgImZhaWxlZCB0byBhbGxvY2F0ZSBidWZmZXIgaW4gYnVmZmVyX2NvcHkgKCVzKSIKKyN+IG1zZ3N0ciAiZmFsaGEgYW8gYWxvY2FyIGJ1ZmZlciBlbSBidWZmZXJfY29weSAoJXMpIgorCisjfiBtc2dpZCAiRXJyb3IgYWxsb2NhdGluZyBtZW1vcnkgZm9yIGNmZ2ZpbGVuYW1lIgorI34gbXNnc3RyICJFcnJvIGFsb2NhbmRvIG1lbcOzcmlhIHBhcmEgY2ZnZmlsZW5hbWUiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gbWFsbG9jIGZvciBpbmZvIGZpbGUgYCUuMjU1cyciCisjfiBtc2dzdHIgImZhbGhhIGFvIGFsb2NhciBtZW3Ds3JpYSBwYXJhIG8gYXJxdWl2byBkZSBpbmZvcm1hw6fDo28gYCUuMjU1cyciCisKKyN+IG1zZ2lkICJkaXZlcnNpb25zIGZpbGUgaGFzIHRvby1sb25nIGxpbmUgb3IgRU9GIFtpXSIKKyN+IG1zZ3N0ciAiYXJxdWl2byBkZSBkZXN2aW9zIHRlbSBsaW5oYSBtdWl0byBsb25nYSBvdSBFT0YgW2ldIgorCisjfiBtc2dpZCAicmVhZCBlcnJvciBpbiBkaXZlcnNpb25zIFtpaV0iCisjfiBtc2dzdHIgImVycm8gZGUgbGVpdHVyYSBlbSBkZXN2aW9zIFtpaV0iCisKKyN+IG1zZ2lkICJ1bmV4cGVjdGVkIEVPRiBpbiBkaXZlcnNpb25zIFtpaV0iCisjfiBtc2dzdHIgIkVPRiBpbmVzcGVyYWRvIGVtIGRlc3Zpb3MgW2lpXSIKKworI34gbXNnaWQgImZnZXRzIGdhdmUgYW4gZW1wdHkgc3RyaW5nIGZyb20gZGl2ZXJzaW9ucyBbaWldIgorI34gbXNnc3RyICJmZ2V0cyBkZXUgdW1hIHN0cmluZyB2YXppYSBkb3MgZGVzdmlvcyBbaWldIgorCisjfiBtc2dpZCAiZGl2ZXJzaW9ucyBmaWxlIGhhcyB0b28tbG9uZyBsaW5lIG9yIEVPRiBbaWldIgorI34gbXNnc3RyICJhcnF1aXZvIGRlIGRlc3Zpb3MgdGVtIGxpbmhhIG11aXRvIGxvbmdhIG91IEVPRiBbaWldIgorCisjfiBtc2dpZCAicmVhZCBlcnJvciBpbiBkaXZlcnNpb25zIFtpaWldIgorI34gbXNnc3RyICJlcnJvIGRlIGxlaXR1cmEgZW0gZGVzdmlvcyBbaWlpXSIKKworI34gbXNnaWQgInVuZXhwZWN0ZWQgRU9GIGluIGRpdmVyc2lvbnMgW2lpaV0iCisjfiBtc2dzdHIgIkVPRiBpbmVzcGVyYWRvIGVtIGRlc3Zpb3MgW2lpaV0iCisKKyN+IG1zZ2lkICJmZ2V0cyBnYXZlIGFuIGVtcHR5IHN0cmluZyBmcm9tIGRpdmVyc2lvbnMgW2lpaV0iCisjfiBtc2dzdHIgImZnZXRzIGRldSB1bWEgc3RyaW5nIHZhemlhIGRvcyBkZXN2aW9zIFtpaWldIgorCisjfiBtc2dpZCAiY291bGRuJ3QgbWFsbG9jIGluIGV4ZWNiYWNrZW5kIgorI34gbXNnc3RyICJuw6NvIGZvaSBwb3Nzw612ZWwgYWxvY2FyIG1lbcOzcmlhIGVtIGV4ZWNiYWNrZW5kIgorCisjfiBtc2dpZCAiY291bGRuJ3Qgc3RyZHVwIGluIGV4ZWNiYWNrZW5kIgorI34gbXNnc3RyICJuw6NvIGZvaSBwb3Nzw612ZWwgZmF6ZXIgc3RyZHVwIGVtIGV4ZWNiYWNrZW5kIgorCisjfiBtc2dpZCAiZmFpbGVkIGFsbG9jYXRpbmcgbWVtb3J5IGZvciB2YXJpYWJsZSBgY3RybGFyZWEnIgorI34gbXNnc3RyICJmYWxoYSBhbG9jYW5kbyBtZW3Ds3JpYSBwYXJhIHZhcmnDoXZlbCBgY3J0bGFyZWEnIgorCisjfiBtc2dpZCAiQ2Fubm90IGdldCBFTk9FTlQgdmFsdWUgZnJvbSAlczogJXMiCisjfiBtc2dzdHIgIk5hw7MgZm9pIHBvc3PDrXZlbCBvYnRlciB2YWxvciBkZSBFTk9FTlQgZGUgJXM6ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGVuc3VyZSAlcyBub25leGlzdGVudDogJXMiCisjfiBtc2dzdHIgIm7Do28gZm9pIHBvc3PDrXZlbCBhc3NlZ3VyYXIgJXMgaW5leGlzdGVudGU6ICVzIgorCisjfiBtc2dpZCAiIgorI34gIndhcm5pbmc6ICVzIGlzIHN1cHBvc2VkIHRvIGJlIGEgc2xhdmUgc3ltbGluayB0b1xuIgorI34gIiAlcywgb3Igbm9uZXhpc3RlbnQ7IGhvd2V2ZXIsIHJlYWRsaW5rIGZhaWxlZDogJXMiCisjfiBtc2dzdHIgIiIKKyN+ICJhdmlzbzogJXMgc3Vwb3N0YW1lbnRlIHNlcmlhIHVtYSBsaWdhw6fDo28gc2ltYsOzbGljYSBlc2NyYXZhIHBhcmFcbiIKKyN+ICIgJXMsIG91IGluZXhpc3RlbnRlOyBwb3LDqW0sIHJlYWRsaW5rIGZhbGhvdTogJXMiCisKKyN+IG1zZ2lkICIiCisjfiAiZHBrZzogcmVnYXJkaW5nICVzIGNvbnRhaW5pbmcgJXM6XG4iCisjfiAiIHBhY2thZ2UgdXNlcyBCcmVha3M7IG5vdCBzdXBwb3J0ZWQgaW4gdGhpcyBkcGtnXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJkcGtnOiBxdWFudG8gYSAlcyBjb250ZW5kbyAlczpcbiIKKyN+ICIgcGFjb3RlIHVzYSBCcmVha3M7IG7Do28gc3Vwb3J0YWRvIG5lc3RlIGRwa2dcbiIKKworI34gbXNnaWQgInVuc3VwcG9ydGVkIGRlcGVuZGVuY3kgcHJvYmxlbSAtIG5vdCBpbnN0YWxsaW5nICUuMjUwcyIKKyN+IG1zZ3N0ciAicHJvYmxlbWEgZGUgZGVwZW5kw6puY2lhIG7Do28gc3Vwb3J0YWRvIC0gbsOjbyBpbnN0YWxhbmRvICUuMjUwcyIKKworI34gbXNnaWQgImRwa2c6IHdhcm5pbmcgLSBpZ25vcmluZyBCcmVha3MgIVxuIgorI34gbXNnc3RyICJkcGtnOiBhdmlzbyAtIGlnbm9yYW5kbyBCcmVha3MgIVxuIgorCisjfiBtc2dpZCAidG8iCisjfiBtc2dzdHIgInBhcmEiCisKKyN+IG1zZ2lkICJmcm9tIgorI34gbXNnc3RyICJkZSIKKworI34gbXNnaWQgImVycm9yIHJlYWRpbmcgJXMiCisjfiBtc2dzdHIgImVycm8gbGVuZG8gJXMiCisKKyN+IG1zZ2lkICJ0d28gbW9kZXMgc3BlY2lmaWVkOiAlcyBhbmQgLS0lcyIKKyN+IG1zZ3N0ciAiZG9pcyBtb2RvcyBlc3BlY2lmaWNhZG9zOiAlcyBlIC0tJXMiCisKKyN+IG1zZ2lkICJtYW5mbGFnIgorI34gbXNnc3RyICJtYW5mbGFnIgorCisjfiBtc2dpZCAiJXM6IGZhaWxlZCB0byBleGVjIGd6aXAgLWRjIgorI34gbXNnc3RyICIlczogbsOjbyBmb2kgcG9zc8OtdmVsIGV4ZWN1dGFyIGd6aXAgLWRjIgorCisjfiBtc2dpZCAiJXM6IGZhaWxlZCB0byBleGVjIGJ6aXAyIC1kYyIKKyN+IG1zZ3N0ciAiJXM6IG7Do28gZm9pIHBvc3PDrXZlbCBleGVjdXRhciBiemlwMiAtZGMiCisKKyN+IG1zZ2lkICIlczogZmFpbGVkIHRvIGV4ZWMgYnppcDIgJXMiCisjfiBtc2dzdHIgIiVzOiBmYWxoYSBhbyBleGVjdXRhciBiemlwMiAlcyIKKworI34gbXNnaWQgImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzogdmVyc2lvbiBjb250YWlucyBgICciCisjfiBtc2dzdHIgImNhbXBvIGAlcycsIHJlZmVyw6puY2lhIGEgYCUuMjU1cyc6IHZlcnPDo28gY29udMOpbSBgICciCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiJXM6IGNsb3NlICVzIGFmdGVyIHJlYWQ6ICVzIgorI34gbXNnc3RyICJmYWxoYSBhbyBmZWNoYXIgYXDDs3MgbGVyOiBgJS4yNTVzJyIKKworIywgZnV6enkKKyN+IG1zZ2lkICItLWFkbWluZGlyIG5lZWRzIGEgZGlyZWN0b3J5IGFyZ3VtZW50IgorI34gbXNnc3RyICItLWJ1aWxkIHByZWNpc2EgZGUgdW0gZGlyZXTDs3JpbyBjb21vIGFyZ3VtZW50byIKKworIywgZnV6enkKKyN+IG1zZ2lkICItLXJlbW92ZSBuZWVkcyBhIHNpbmdsZSBhcmd1bWVudCIKKyN+IG1zZ3N0ciAiLS0lcyBwcmVjaXNhIGRlIHVtIG5vbWUgZGUgYXJxdWl2byAuZGViIGNvbW8gYXJndW1lbnRvIgorCisjLCBmdXp6eQorI34gbXNnaWQgIi0tdHJ1ZW5hbWUgbmVlZHMgYSBzaW5nbGUgYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tYnVpbGQgcHJlY2lzYSBkZSB1bSBkaXJldMOzcmlvIGNvbW8gYXJndW1lbnRvIgorCisjLCBmdXp6eQorI34gbXNnaWQgIi0tcmVtb3ZlIG5lZWRzIG9uZSBhcmd1bWVudHMiCisjfiBtc2dzdHIgIi0tJXMgbsOjbyBwcmVjaXNhIGRlIGFyZ3VtZW50b3MiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiZHBrZy1zdGF0b3ZlcnJpZGU6ICVzIgorI34gbXNnc3RyICJhcnF1aXZvIHN0YXRvdmVycmlkZSBgJS4yNTBzJyIKKworIywgZnV6enkKKyN+IG1zZ2lkICItLWFkbWluZGlyIG5lZWRzIGEgPGRpcmVjdG9yeT4gYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tYnVpbGQgcHJlY2lzYSBkZSB1bSBkaXJldMOzcmlvIGNvbW8gYXJndW1lbnRvIgorCisjLCBmdXp6eQorI34gbXNnaWQgImZhaWxlZCB0byBvcGVuICVzOiAlcyIKKyN+IG1zZ3N0ciAiZmFsaGEgYW8gZXhlY3V0YXIgJXMgKCUuMjUwcykiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgJXMgYXMgJXMiCisjfiBtc2dzdHIgIm7Do28gZm9pIHBvc3PDrXZlbCBpbnN0YWxhciBgJS4yNTBzJyBjb21vIGAlLjI1MHMnIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gPGNvbW1hbmQ+XG4iCisjfiAiXG4iCisjfiAiQ29tbWFuZHM6XG4iCisjfiAiICAtaXwtLWluc3RhbGwgICAgICAgPC5kZWIgZmlsZSBuYW1lPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyPiAuLi5cbiIKKyN+ICIgIC0tdW5wYWNrICAgICAgICAgICA8LmRlYiBmaWxlIG5hbWU+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXI+IC4uLlxuIgorI34gIiAgLUF8LS1yZWNvcmQtYXZhaWwgIDwuZGViIGZpbGUgbmFtZT4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRpcj4gLi4uXG4iCisjfiAiICAtLWNvbmZpZ3VyZSAgICAgICAgPHBhY2thZ2UtbmFtZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisjfiAiICAtcnwtLXJlbW92ZSAgICAgICAgPHBhY2thZ2UtbmFtZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisjfiAiICAtUHwtLXB1cmdlICAgICAgICAgPHBhY2thZ2UtbmFtZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisjfiAiICAtLWdldC1zZWxlY3Rpb25zIFs8cGF0dGVybj4gLi4uXSAgICAgR2V0IGxpc3Qgb2Ygc2VsZWN0aW9ucyB0byBzdGRvdXQuXG4iCisjfiAiICAtLXNldC1zZWxlY3Rpb25zICAgICAgICAgICAgICAgICAgICAgU2V0IHBhY2thZ2Ugc2VsZWN0aW9ucyBmcm9tICIKKyN+ICJzdGRpbi5cbiIKKyN+ICIgIC0tY2xlYXItc2VsZWN0aW9ucyAgICAgICAgICAgICAgICAgICBEZXNlbGVjdCBldmVyeSBub24tZXNzZW50aWFsICIKKyN+ICJwYWNrYWdlLlxuIgorI34gIiAgLS11cGRhdGUtYXZhaWwgPFBhY2thZ2VzLWZpbGU+ICAgICAgIFJlcGxhY2UgYXZhaWxhYmxlIHBhY2thZ2VzIGluZm8uXG4iCisjfiAiICAtLW1lcmdlLWF2YWlsIDxQYWNrYWdlcy1maWxlPiAgICAgICAgTWVyZ2Ugd2l0aCBpbmZvIGZyb20gZmlsZS5cbiIKKyN+ICIgIC0tY2xlYXItYXZhaWwgICAgICAgICAgICAgICAgICAgICAgICBFcmFzZSBleGlzdGluZyBhdmFpbGFibGUgaW5mby5cbiIKKyN+ICIgIC0tZm9yZ2V0LW9sZC11bmF2YWlsICAgICAgICAgICAgICAgICBGb3JnZXQgdW5pbnN0YWxsZWQgdW5hdmFpbGFibGUgIgorI34gInBrZ3MuXG4iCisjfiAiICAtc3wtLXN0YXR1cyA8cGFja2FnZS1uYW1lPiAuLi4gICAgICAgRGlzcGxheSBwYWNrYWdlIHN0YXR1cyBkZXRhaWxzLlxuIgorI34gIiAgLXB8LS1wcmludC1hdmFpbCA8cGFja2FnZS1uYW1lPiAuLi4gIERpc3BsYXkgYXZhaWxhYmxlIHZlcnNpb24gIgorI34gImRldGFpbHMuXG4iCisjfiAiICAtTHwtLWxpc3RmaWxlcyA8cGFja2FnZS1uYW1lPiAuLi4gICAgTGlzdCBmaWxlcyBgb3duZWQnIGJ5IHBhY2thZ2UocykuXG4iCisjfiAiICAtbHwtLWxpc3QgWzxwYXR0ZXJuPiAuLi5dICAgICAgICAgICAgTGlzdCBwYWNrYWdlcyBjb25jaXNlbHkuXG4iCisjfiAiICAtU3wtLXNlYXJjaCA8cGF0dGVybj4gLi4uICAgICAgICAgICAgRmluZCBwYWNrYWdlKHMpIG93bmluZyBmaWxlKHMpLlxuIgorI34gIiAgLUN8LS1hdWRpdCAgICAgICAgICAgICAgICAgICAgICAgICAgIENoZWNrIGZvciBicm9rZW4gcGFja2FnZShzKS5cbiIKKyN+ICIgIC0tcHJpbnQtYXJjaGl0ZWN0dXJlICAgICAgICAgICAgICAgICBQcmludCBkcGtnIGFyY2hpdGVjdHVyZS5cbiIKKyN+ICIgIC0tY29tcGFyZS12ZXJzaW9ucyA8YT4gPHJlbD4gPGI+ICAgICBDb21wYXJlIHZlcnNpb24gbnVtYmVycyAtIHNlZSAiCisjfiAiYmVsb3cuXG4iCisjfiAiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyN+ICIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTaG93IHRoZSB2ZXJzaW9uLlxuIgorI34gIiAgLS1mb3JjZS1oZWxwIHwgLURofC0tZGVidWc9aGVscCAgICAgIEhlbHAgb24gZm9yY2luZyByZXNwLiBkZWJ1Z2dpbmcuXG4iCisjfiAiICAtLWxpY2Vuc2UgfCAtLWxpY2VuY2UgICAgICAgICAgICAgICAgUHJpbnQgY29weXJpZ2h0IGxpY2Vuc2luZyB0ZXJtcy5cbiIKKyN+ICJcbiIKKyN+ICJVc2UgZHBrZyAtYnwtLWJ1aWxkfC1jfC0tY29udGVudHN8LWV8LS1jb250cm9sfC1JfC0taW5mb3wtZnwtLWZpZWxkfFxuIgorI34gIiAteHwtLWV4dHJhY3R8LVh8LS12ZXh0cmFjdHwtLWZzeXMtdGFyZmlsZSAgb24gYXJjaGl2ZXMgKHR5cGUgJXMgLS0iCisjfiAiaGVscCkuXG4iCisjfiAiXG4iCisjfiAiRm9yIGludGVybmFsIHVzZTogZHBrZyAtLWFzc2VydC1zdXBwb3J0LXByZWRlcGVuZHMgfCAtLXByZWRlcC1wYWNrYWdlIHxcbiIKKyN+ICIgIC0tYXNzZXJ0LXdvcmtpbmctZXBvY2ggfCAtLWFzc2VydC1sb25nLWZpbGVuYW1lcyB8IC0tYXNzZXJ0LW11bHRpLSIKKyN+ICJjb25yZXAuXG4iCisjfiAiXG4iCisjfiAiT3B0aW9uczpcbiIKKyN+ICIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT4gICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorI34gIiAgLS1yb290PTxkaXJlY3Rvcnk+ICAgICAgICAgSW5zdGFsbCBvbiBhbHRlcm5hdGl2ZSBzeXN0ZW0gcm9vdGVkICIKKyN+ICJlbHNld2hlcmUuXG4iCisjfiAiICAtLWluc3RkaXI9PGRpcmVjdG9yeT4gICAgICBDaGFuZ2UgaW5zdCduIHJvb3Qgd2l0aG91dCBjaGFuZ2luZyBhZG1pbiAiCisjfiAiZGlyLlxuIgorI34gIiAgLU98LS1zZWxlY3RlZC1vbmx5ICAgICAgICAgU2tpcCBwYWNrYWdlcyBub3Qgc2VsZWN0ZWQgZm9yIGluc3RhbGwvIgorI34gInVwZ3JhZGUuXG4iCisjfiAiICAtRXwtLXNraXAtc2FtZS12ZXJzaW9uICAgICBTa2lwIHBhY2thZ2VzIHdob3NlIHNhbWUgdmVyc2lvbiBpcyAiCisjfiAiaW5zdGFsbGVkLlxuIgorI34gIiAgLUd8LS1yZWZ1c2UtZG93bmdyYWRlICAgICAgU2tpcCBwYWNrYWdlcyB3aXRoIGVhcmxpZXIgdmVyc2lvbiB0aGFuICIKKyN+ICJpbnN0YWxsZWQuXG4iCisjfiAiICAtQnwtLWF1dG8tZGVjb25maWd1cmUgICAgICBJbnN0YWxsIGV2ZW4gaWYgaXQgd291bGQgYnJlYWsgc29tZSBvdGhlciAiCisjfiAicGFja2FnZS5cbiIKKyN+ICIgIC0tbm8tZGVic2lnICAgICAgICAgICAgICAgIERvIG5vdCB0cnkgdG8gdmVyaWZ5IHBhY2thZ2Ugc2lnbmF0dXJlcy5cbiIKKyN+ICIgIC0tbm8tYWN0fC0tZHJ5LXJ1bnwtLXNpbXVsYXRlXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBKdXN0IHNheSB3aGF0IHdlIHdvdWxkIGRvIC0gZG9uJ3QgZG8gaXQuXG4iCisjfiAiICAtRHwtLWRlYnVnPTxvY3RhbD4gICAgICAgICBFbmFibGUgZGVidWdnaW5nIC0gc2VlIC1EaGVscCBvciAtLSIKKyN+ICJkZWJ1Zz1oZWxwLlxuIgorI34gIiAgLS1zdGF0dXMtZmQgPG4+ICAgICAgICAgICAgU2VuZCBzdGF0dXMgY2hhbmdlIHVwZGF0ZXMgdG8gZmlsZSAiCisjfiAiZGVzY3JpcHRvciA8bj4uXG4iCisjfiAiICAtLWxvZz08ZmlsZW5hbWU+ICAgICAgICAgICBMb2cgc3RhdHVzIGNoYW5nZXMgYW5kIGFjdGlvbnMgdG8gIgorI34gIjxmaWxlbmFtZT4uXG4iCisjfiAiICAtLWlnbm9yZS1kZXBlbmRzPTxwYWNrYWdlPiwuLi4gSWdub3JlIGRlcGVuZGVuY2llcyBpbnZvbHZpbmcgIgorI34gIjxwYWNrYWdlPi5cbiIKKyN+ICIgIC0tZm9yY2UtLi4uICAgICAgICAgICAgICAgICAgICBPdmVycmlkZSBwcm9ibGVtcyAtIHNlZSAtLWZvcmNlLWhlbHAuXG4iCisjfiAiICAtLW5vLWZvcmNlLS4uLnwtLXJlZnVzZS0uLi4gICAgU3RvcCB3aGVuIHByb2JsZW1zIGVuY291bnRlcmVkLlxuIgorI34gIiAgLS1hYm9ydC1hZnRlciA8bj4gICAgICAgICAgICAgIEFib3J0IGFmdGVyIGVuY291bnRlcmluZyA8bj4gZXJyb3JzLlxuIgorI34gIlxuIgorI34gIkNvbXBhcmlzb24gb3BlcmF0b3JzIGZvciAtLWNvbXBhcmUtdmVyc2lvbnMgYXJlOlxuIgorI34gIiAgbHQgbGUgZXEgbmUgZ2UgZ3QgICAgICAgKHRyZWF0IGVtcHR5IHZlcnNpb24gYXMgZWFybGllciB0aGFuIGFueSAiCisjfiAidmVyc2lvbik7XG4iCisjfiAiICBsdC1ubCBsZS1ubCBnZS1ubCBndC1ubCAodHJlYXQgZW1wdHkgdmVyc2lvbiBhcyBsYXRlciB0aGFuIGFueSAiCisjfiAidmVyc2lvbik7XG4iCisjfiAiICA8IDw8IDw9ID0gPj0gPj4gPiAgICAgICAob25seSBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIGNvbnRyb2wgZmlsZSAiCisjfiAic3ludGF4KS5cbiIKKyN+ICJcbiIKKyN+ICJVc2UgYGRzZWxlY3QnIG9yIGBhcHRpdHVkZScgZm9yIHVzZXItZnJpZW5kbHkgcGFja2FnZSBtYW5hZ2VtZW50LlxuIgorI34gbXNnc3RyICIiCisjfiAiVXNvOiAlcyBbb3DDp8O1ZXM+IC4uLl0gPGNvbWFuZG8+XG4iCisjfiAiXG4iCisjfiAiICAtaXwtLWluc3RhbGwgICAgICA8bm9tZSBkZSBhcnF1aXZvIC5kZWI+IC4uLiB8IC1SfC0tcmVjdXJzaXZlICIKKyN+ICI8ZGlyPiAuLi5cbiIKKyN+ICIgIC0tdW5wYWNrICAgICAgICAgIDxub21lIGRlIGFycXVpdm8gLmRlYj4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgIgorI34gIjxkaXI+IC4uLlxuIgorI34gIiAgLUF8LS1yZWNvcmQtYXZhaWwgPG5vbWUgZGUgYXJxdWl2byAuZGViPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSAiCisjfiAiPGRpcj4gLi4uXG4iCisjfiAiICAtLWNvbmZpZ3VyZSAgICAgICAgICAgICAgPG5vbWUgZGUgcGFjb3RlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyN+ICIgIC1yfC0tcmVtb3ZlICAgICAgICAgICAgICA8bm9tZSBkZSBwYWNvdGU+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorI34gIiAgLVB8LS1wdXJnZSAgICAgICAgICAgICAgIDxub21lIGRlIHBhY290ZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisjfiAiICAtLWdldC1zZWxlY3Rpb25zIFs8cGFkcsOjbz4gLi4uXSAgICAgT2J0ZXIgbGlzdGEgZGUgc2VsZcOnw7VlcyBuYSBzYcOtZGEgIgorI34gInBhZHLDo28gKHN0ZG91dCk7XG4iCisjfiAiICAtLXNldC1zZWxlY3Rpb25zICAgICAgICAgICAgICAgICAgICBEZWZpbmlyIHNlbGXDp8O1ZXMgZGUgcGFjb3RlcyBhICIKKyN+ICJwYXJ0aXIgZGEgZW50cmFkYSBwYWRyw6NvIChzdGRpbikuXG4iCisjfiAiICAtLXVwZGF0ZS1hdmFpbCA8YXJxdWl2by1QYWNrYWdlcz4gICBTdWJzdGl0dWlyIGluZi4gZGUgcGFjb3RlcyBkaXNwLlxuIgorI34gIiAgLS1tZXJnZS1hdmFpbCA8YXJxdWl2by1QYWNrYWdlcz4gICAgSnVudGFyIGNvbSBpbmYuIGRvIGFycXVpdm8uXG4iCisjfiAiICAtLWNsZWFyLWF2YWlsICAgICAgICAgICAgICAgICAgICAgICBBcGFnYXIgaW5mLiBleGlzdGVudGVzICIKKyN+ICJkaXNwb27DrXZlaXMuXG4iCisjfiAiICAtLWZvcmdldC1vbGQtdW5hdmFpbCAgICAgICAgICAgICAgICBFc3F1ZWNlciBwYWNvdGVzIG7Do28gaW5zdC4gZSAiCisjfiAiaW5kaXNwLlxuIgorI34gIiAgLXN8LS1zdGF0dXMgPG5vbWUtcGFjb3RlPiAuLi4gICAgICAgRXhpYmlyIGRldGFsaGVzIGRvIGVzdGFkbyBkbyAiCisjfiAicGFjb3RlLlxuIgorI34gIiAgLXB8LS1wcmludC1hdmFpbCA8bm9tZS1wYWNvdGU+IC4uLiAgRXhpYmlyIGRldGFsaGVzIHNvYnJlIHZlcnPDtWVzICIKKyN+ICJkaXNwb27DrXZlaXMuXG4iCisjfiAiICAtTHwtLWxpc3RmaWxlcyA8bm9tZS1wYWNvdGU+IC4uLiAgICBMaXN0YSBhcnF1aXZvcyBgcGVydGVuY2VudGVzJyBhbyhzKSIKKyN+ICJwYWNvdGUocykuXG4iCisjfiAiICAtbHwtLWxpc3QgWzxwYWRyw6NvPiAuLi5dICAgICAgICAgICAgTGlzdGEgcGFjb3RlcyBkZSBtYW5laXJhIGNvbmNpc2EuXG4iCisjfiAiICAtU3wtLXNlYXJjaCA8cGFkcsOjbz4gLi4uICAgICAgICAgICAgRW5jb250cmEgcGFjb3RlKHMpIGBkb25vcycgZGUgIgorI34gImFycXVpdm8ocykuXG4iCisjfiAiICAtQ3wtLWF1ZGl0ICAgICAgICAgICAgICAgICAgICAgICAgICBQcm9jdXJhIHBvciBwYWNvdGUocykgcXVlYnJhZG8ocykuXG4iCisjfiAiICAtLXByaW50LWFyY2hpdGVjdHVyZSAgICAgICAgICAgICAgICBFeGliZSBhcnF1aXRldHVyYSBkbyBkcGtnLlxuIgorI34gIiAgLS1jb21wYXJlLXZlcnNpb25zIDxhPiA8cmVsPiA8Yj4gICAgQ29tcGFyYSBuw7ptZXJvcyBkZSB2ZXJzw6NvIC0gdmVqYSAiCisjfiAiYWJhaXhvLlxuIgorI34gIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRXhpYmlyIGVzdGEgbWVuc2FnZW0gZGUgYWp1ZGEuXG4iCisjfiAiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgICAgICAgICAgICBFeGliZSBhIHZlcnPDo28uXG4iCisjfiAiICAtLWZvcmNlLWhlbHAgfCAtRGh8LS1kZWJ1Zz1oZWxwICAgICBBanVkYSBwYXJhIGZvcsOnYXIgZGVwdXJhw6fDo28gcmVzcC5cbiIKKyN+ICIgIC0tbGljZW5zZSB8IC0tbGljZW5jZSAgICAgICAgICAgICAgIEltcHJpbWUgdGVybW9zIGRlIGxpY2VuY2lhbWVudG8uXG4iCisjfiAiXG4iCisjfiAiVXNlIGRwa2cgLWJ8LS1idWlsZHwtY3wtLWNvbnRlbnRzfC1lfC0tY29udHJvbHwtSXwtLWluZm98LWZ8LS1maWVsZHxcbiIKKyN+ICIgLXh8LS1leHRyYWN0fC1YfC0tdmV4dHJhY3R8LS1mc3lzLXRhcmZpbGUgIGVtIGFycXVpdm9zIChkaWdpdGUgJXMgLS0iCisjfiAiaGVscC4pXG4iCisjfiAiXG4iCisjfiAiUGFyYSB1c28gaW50ZXJubzogZHBrZyAtLWFzc2VydC1zdXBwb3J0LXByZWRlcGVuZHMgfCAtLXByZWRlcC1wYWNrYWdlIHxcbiIKKyN+ICIgIC0tYXNzZXJ0LXdvcmtpbmctZXBvY2ggfCAtLWFzc2VydC1sb25nLWZpbGVuYW1lcyB8IC0tYXNzZXJ0LW11bHRpLSIKKyN+ICJjb25yZXBcbiIKKyN+ICJcbiIKKyN+ICJPcMOnw7VlczogXG4iCisjfiAiICAtLWFkbWluZGlyPTxkaXJldMOzcmlvPiAgICAgVXNhciA8ZGlyZXTDs3Jpbz4gZW0gdmV6IGRlICVzLlxuIgorI34gIiAgLS1yb290PTxkaXJldMOzcmlvPiAgICAgICAgIEluc3RhbGFyIGVtIG91dHJvIHNpc3RlbWEgY29tIHJhaXogZW0gb3V0cm8gIgorI34gImx1Z2FyLlxuIgorI34gIiAgLS1pbnN0ZGlyPTxkaXJldMOzcmlvPiAgICAgIE11ZGFyIHJhaXogZGUgaW5zdGFsYcOnw6NvIHNlbSBtdWRhciBkaXIuIGRlICIKKyN+ICJhZG1pbi5cbiIKKyN+ICIgIC1PfC0tc2VsZWN0ZWQtb25seSAgICAgICAgIFB1bGFyIHBhY290ZXMgbsOjbyBzZWxlYy4gcGFyYSBpbnN0Li8iCisjfiAiYXR1YWxpemHDp8Ojby5cbiIKKyN+ICIgIC1FfC0tc2tpcC1zYW1lLXZlcnNpb24gICAgIFB1bGFyIHBhY290ZXMgY3VqYSBtZXNtYSB2ZXJzw6NvIGrDoSBlc3RlamEgIgorI34gImluc3RhbGFkYS5cbiIKKyN+ICIgIC1HfC0tcmVmdXNlLWRvd25ncmFkZSAgICAgIFB1bGFyIHBhY290ZXMgYy8gdmVyc8OjbyBtYWlzIGFudGlnYSBxdWUgYSAiCisjfiAiaW5zdGFsYWRhLlxuIgorI34gIiAgLUJ8LS1hdXRvLWRlY29uZmlndXJlICAgICAgSW5zdGFsYXIgbWVzbW8gcXVlIGlzc28gcXVlYnJlIG91dHJvICIKKyN+ICJwYWNvdGUuXG4iCisjfiAiICAtLW5vLWRlYnNpZ24gICAgICAgICAgICAgICBOw6NvIHRlbnRhIHZlcmlmaWNhciBhc3NpbmF0dXJhcyBkZSBwYWNvdGVzLlxuIgorI34gIiAgLS1uby1hY3R8LS1kcnktcnVufC0tc2ltdWxhdGVcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFwZW5hcyBkaWdhIG8gcXVlIGZhcsOhIC0gbWFzIG7Do28gZmHDp2EuXG4iCisjfiAiICAtRHwtLWRlYnVnPTxvY3RhbD4gICAgICAgICBIYWJpbGl0YSBkZXB1cmHDp8OjbyAtIHZlciAtRGhlbHAgb3UgLS0iCisjfiAiZGVidWc9aGVscC5cbiIKKyN+ICIgIC0tc3RhdHVzLWZkIDxuPiAgICAgICAgICAgIEVudmlhIGF0dWFsaXphw6fDtWVzIGRvIHN0YXR1cyBkYXMgbXVkYW7Dp2FzICIKKyN+ICJwYXJhIG8gZGVzY3JpdG9yIGRlIGFycXVpdm9zIDxuPi5cbiIKKyN+ICIgIC0tbG9nPTxub21lLWFycXVpdm8+ICAgICAgIExvZ2EgZXN0YWRvIGRlIG11ZGFuw6dhcyBlIGHDp8O1ZXMgcGFyYSA8bm9tZS0iCisjfiAiYXJxdWl2bz4uXG4iCisjfiAiICAtLWlnbm9yZS1kZXBlbmRzPTxwYWNvdGU+LC4uLiBJZ25vcmFyIGRlcGVuZMOqbmNpYXMgZW52b2x2ZW5kbyAiCisjfiAiPHBhY290ZT4uXG4iCisjfiAiICAtLWZvcmNlLS4uLiAgICAgICAgICAgICAgICAgICAgSWdub3JhciBwcm9ibGVtYXMgLSB2ZXIgLS1mb3JjZS1oZWxwLlxuIgorI34gIiAgLS1uby1mb3JjZS0uLi58LS1yZWZ1c2UtLi4uICAgIFBhcmFyIHF1YW5kbyBwcm9ibGVtYXMgZm9yZW0gIgorI34gImVuY29udHJhZG9zLlxuIgorI34gIiAgLS1hYm9ydC1hZnRlciA8bj4gICAgICAgICAgICAgIEFib3J0YSBkZXBvaXMgZGUgPG4+IGVycm9zIGVuY29udHJhZG9zLlxuIgorI34gIlxuIgorI34gIk9wZXJhZG9yZXMgZGUgY29tcGFyYcOnw6NvIHBhcmEgLS1jb21wYXJlLXZlcnNpb25zIHPDo28gOlxuIgorI34gIiBsdCBsZSBlcSBuZSBnZSBndCAgICAgICAobsOjbyB0cmF0YXIgbmVuaHVtYSB2ZXJzw6NvIGNvbW8gbWFpcyBhbnRpZ2EgcXVlICIKKyN+ICJvdXRyYSk7XG4iCisjfiAiIGx0LW5sIGxlLW5sIGdlLW5sIGd0LW5sIChuw6NvIHRyYXRhciBuZW5odW1hIHZlcnPDo28gY29tbyBtYWlzIHJlY2VudGUgcXVlICIKKyN+ICJvdXRyYSk7XG4iCisjfiAiIDwgPDwgPD0gPSA+PSA+PiA+ICAgICAgIChhcGVuYXMgcGFyYSBjb21wYXRpYmlsaWRhZGUgY29tIHNpbnRheGUgZG8gIgorI34gImFycXVpdm8gZGUgY29udHJvbGUpLlxuIgorI34gIlxuIgorI34gIlVzZSBgZHNlbGVjdCcgb3UgJ2FwdGl0dWRlJyBwYXJhIGdlcmVuY2lhbWVudG8gYW1pZ8OhdmVsIGRlIHBhY290ZXMuXG4iCisKKyN+IG1zZ2lkICIgIFBhY2thZ2UgIgorI34gbXNnc3RyICIgIFBhY290ZSAiCisKKyN+IG1zZ2lkICIgd2hpY2ggcHJvdmlkZXMgIgorI34gbXNnc3RyICIgcXVlIGZvcm5lY2UgIgorCisjfiBtc2dpZCAiIGlzIHRvIGJlIHJlbW92ZWQuXG4iCisjfiBtc2dzdHIgIiBlc3TDoSBwYXJhIHNlciByZW1vdmlkby5cbiIKKworI34gbXNnaWQgIiAgVmVyc2lvbiBvZiAiCisjfiBtc2dzdHIgIiAgVmVyc8OjbyBkZSAiCisKKyN+IG1zZ2lkICIgb24gc3lzdGVtIGlzICIKKyN+IG1zZ3N0ciAiIG5vIHNpc3RlbWEgw6kgIgorCisjfiBtc2dpZCAiIGlzIG5vdCBpbnN0YWxsZWQuXG4iCisjfiBtc2dzdHIgIiBuw6NvIGVzdMOhIGluc3RhbGFkby5cbiIKKworI34gbXNnaWQgIiB0bzogJXNcbiIKKyN+IG1zZ3N0ciAiIHBhcmE6ICVzXG4iCisKKyN+IG1zZ2lkICJmZ2V0cG9zIGZhaWxlZCIKKyN+IG1zZ3N0ciAiZmdldHBvcyBmYWxob3UiCisKKyN+IG1zZ2lkICJmc2V0cG9zIGZhaWxlZCIKKyN+IG1zZ3N0ciAiZnNldHBvcyBmYWxob3UiCisKKyN+IG1zZ2lkICIiCisjfiAiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIDxjb21tYW5kPlxuIgorI34gIlxuIgorI34gIkNvbW1hbmRzOlxuIgorI34gIiAgLWJ8LS1idWlsZCA8ZGlyZWN0b3J5PiBbPGRlYj5dICAgIEJ1aWxkIGFuIGFyY2hpdmUuXG4iCisjfiAiICAtY3wtLWNvbnRlbnRzIDxkZWI+ICAgICAgICAgICAgICAgTGlzdCBjb250ZW50cy5cbiIKKyN+ICIgIC1JfC0taW5mbyA8ZGViPiBbPGNmaWxlPi4uLl0gICAgICBTaG93IGluZm8gdG8gc3Rkb3V0LlxuIgorI34gIiAgLVd8LS1zaG93IDxkZWI+ICAgICAgICAgICAgICAgICAgIFNob3cgaW5mb3JtYXRpb24gb24gcGFja2FnZShzKVxuIgorI34gIiAgLWZ8LS1maWVsZCA8ZGViPiBbPGNmaWVsZD4uLi5dICAgIFNob3cgZmllbGQocykgdG8gc3Rkb3V0LlxuIgorI34gIiAgLWV8LS1jb250cm9sIDxkZWI+IFs8ZGlyZWN0b3J5Pl0gIEV4dHJhY3QgY29udHJvbCBpbmZvLlxuIgorI34gIiAgLXh8LS1leHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+ICAgIEV4dHJhY3QgZmlsZXMuXG4iCisjfiAiICAtWHwtLXZleHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+ICAgRXh0cmFjdCAmIGxpc3QgZmlsZXMuXG4iCisjfiAiICAtLWZzeXMtdGFyZmlsZSA8ZGViPiAgICAgICAgICAgICAgT3V0cHV0IGZpbGVzeXN0ZW0gdGFyZmlsZS5cbiIKKyN+ICIgIC1ofC0taGVscCAgICAgICAgICAgICAgICAgICAgICAgICBEaXNwbGF5IHRoaXMgbWVzc2FnZS5cbiIKKyN+ICIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgICAgICAgICBTaG93IHZlcnNpb24uXG4iCisjfiAiICAtLWxpY2Vuc2UgfCAtLWxpY2VuY2UgICAgICAgICAgICAgU2hvdyBsaWNlbnNlLlxuIgorI34gIlxuIgorI34gIjxkZWI+IGlzIHRoZSBmaWxlbmFtZSBvZiBhIERlYmlhbiBmb3JtYXQgYXJjaGl2ZS5cbiIKKyN+ICI8Y2ZpbGU+IGlzIHRoZSBuYW1lIG9mIGFuIGFkbWluaXN0cmF0aXZlIGZpbGUgY29tcG9uZW50LlxuIgorI34gIjxjZmllbGQ+IGlzIHRoZSBuYW1lIG9mIGEgZmllbGQgaW4gdGhlIG1haW4gYGNvbnRyb2wnIGZpbGUuXG4iCisjfiAiXG4iCisjfiAiT3B0aW9uczpcbiIKKyN+ICIgIC0tc2hvd2Zvcm1hdD08Zm9ybWF0PiAgICAgIFVzZSBhbHRlcm5hdGl2ZSBmb3JtYXQgZm9yIC0tc2hvdy5cbiIKKyN+ICIgIC1EICAgICAgICAgICAgICAgICAgICAgICAgIEVuYWJsZSBkZWJ1Z2dpbmcgb3V0cHV0LlxuIgorI34gIiAgLS1vbGQsIC0tbmV3ICAgICAgICAgICAgICAgU2VsZWN0IGFyY2hpdmUgZm9ybWF0LlxuIgorI34gIiAgLS1ub2NoZWNrICAgICAgICAgICAgICAgICAgU3VwcHJlc3MgY29udHJvbCBmaWxlIGNoZWNrIChidWlsZCBiYWQgIgorI34gInBhY2thZ2UpLlxuIgorI34gIiAgLXojICAgICAgICAgICAgICAgICAgICAgICAgU2V0IHRoZSBjb21wcmVzc2lvbiBsZXZlbCB3aGVuIGJ1aWxkaW5nLlxuIgorI34gIiAgLVo8dHlwZT4gICAgICAgICAgICAgICAgICAgU2V0IHRoZSBjb21wcmVzc2lvbiB0eXBlIHRvIHVzZSB3aGVuICIKKyN+ICJidWlsZGluZy5cbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFsbG93ZWQgdmFsdWVzOiBnemlwLCBiemlwMiwgbm9uZS5cbiIKKyN+ICJcbiIKKyN+IG1zZ3N0ciAiIgorI34gIlVzbyA6ICVzIFs8b3DDp8O1ZXM+IC4uLl0gPGNvbWFuZG8+XG4iCisjfiAiXG4iCisjfiAiQ29tYW5kb3MgOlxuIgorI34gIiAgLWJ8LS1idWlsZCA8ZGlyZXTDs3Jpbz4gWzxkZWI+XSAgICBDb25zdHLDs2kgdW0gYXJxdWl2by5cbiIKKyN+ICIgIC1jfC0tY29udGVudHMgPGRlYj4gICAgICAgICAgICAgICBMaXN0YSBvIGNvbnRlw7pkby5cbiIKKyN+ICIgIC1JfC0taW5mbyA8ZGViPiBbPGFycXVpdm9jPi4uLl0gICBFeGliZSBpbmZvcm1hw6fDo28gbmEgc2HDrWRhLlxuIgorI34gIiAgLVd8LS1zaG93IDxkZWI+ICAgICAgICAgICAgICAgICAgIEV4aWJlIGluZm9ybWHDp8OjbyBzb2JyZSBwYWNvdGUocylcbiIKKyN+ICIgIC1mfC0tZmllbGQgPGRlYj4gWzxjY2FtcG8+Li4uXSAgICBFeGliZSBjYW1wbyhzKSBuYSBzYcOtZGEuXG4iCisjfiAiICAtZXwtLWNvbnRyb2wgPGRlYj4gWzxkaXJldMOzcmlvPl0gIEV4dHJhaSBpbmZvcm1hw6fDo28gZGUgY29udHJvbGUuXG4iCisjfiAiICAteHwtLWV4dHJhY3QgPGRlYj4gPGRpcmV0w7NyaW8+ICAgIEV4dHJhaSBhcnF1aXZvcy5cbiIKKyN+ICIgIC1YfC0tdmV4dHJhY3QgPGRlYj4gPGRpcmV0w7NyaW8+ICAgRXh0cmFpICYgbGlzdGEgYXJxdWl2b3MuXG4iCisjfiAiICAtLWZzeXMtdGFyZmlsZSA8ZGViPiAgICAgICAgICAgICAgRXhpYmUgYXJxdWl2byB0YXIgZG8gc2lzdGVtYSBkZSAiCisjfiAiYXJxdWl2by5cbiIKKyN+ICIgIC1ofC0taGVscCAgICAgICAgICAgICAgICAgICAgICAgICBFeGliZSBlc3RhIG1lbnNhZ2VtLlxuIgorI34gIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICAgICAgICAgIEV4aWJlIHZlcnPDo28uXG4iCisjfiAiICAtLWxpY2Vuc2UgfCAtLWxpY2VuY2UgICAgICAgICAgICAgRXhpYmUgbGljZW7Dp2EuXG4iCisjfiAiXG4iCisjfiAiPGRlYj4gw6kgbyBub21lIGRvIGFycXVpdm8gZGUgdW0gYXJxdWl2byBubyBmb3JtYXRvIERlYmlhbixcbiIKKyN+ICI8Y2FycXVpdm8+IMOpIG8gbm9tZSBkZSB1bSBjb21wb25lbnRlIGRlIGFycXVpdm8gYWRtaW5pc3RyYXRpdm8uXG4iCisjfiAiPGNjYW1wbz4gw6kgbyBub21lIGRlIHVtIGNhbXBvIG5vIGFycXVpdm8gcHJpbmNpcGFsIGBjb250cm9sJy5cbiIKKyN+ICJcbiIKKyN+ICJPcMOnw7VlczpcbiIKKyN+ICIgIC0tc2hvd2Zvcm1hdD08Zm9ybWF0bz4gICAgIFVzYXIgZm9ybWF0byBhbHRlcm5hdGl2byBwYXJhIC0tc2hvdy5cbiIKKyN+ICIgIC1EICAgICAgICAgICAgICAgICAgICAgICAgIEhhYmlsaXRhIHNhw61kYSBkZSBkZXB1cmHDp8Ojby5cbiIKKyN+ICIgIC0tb2xkLCAtLW5ldyAgICAgICAgICAgICAgIFNlbGVjaW9uYSBmb3JtYXRvIGRlIGFycXVpdm8uXG4iCisjfiAiICAtLW5vY2hlY2sgICAgICAgICAgICAgICAgICBTdXByaW1lIGNoZWNhZ2VtIGRlIGFycXVpdm8gZGUgY29udHJvbGUgIgorI34gIihjb25zdHJvw60gcGFjb3RlIHJ1aW0pLlxuIgorI34gIiAgLXojICAgICAgICAgICAgICAgICAgICAgICAgRGVmaW5lIG7DrXZlbCBkZSBjb21wcmVzc8OjbyBuYSBjb25zdHJ1w6fDo29cbiIKKyN+ICIgIC1aPHRpcG8+ICAgICAgICAgICAgICAgICAgIERlZmluZSB0aXBvIGRlIGNvbXByZXNzw6NvIGEgc2VyIHVzYWRvIFxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmEgY29uc3RydcOnw6NvLiBWYWxvcmVzIHBlcm1pdGlkb3MgOiBnemlwLCBcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ6aXAyLCBub25lXG4iCisjfiAiXG4iCisKKyN+IG1zZ2lkICIiCisjfiAiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIDxjb21tYW5kPlxuIgorI34gIlxuIgorI34gIkNvbW1hbmRzOlxuIgorI34gIiAgLXN8LS1zcGxpdCA8ZmlsZT4gWzxwcmVmaXg+XSAgICBTcGxpdCBhbiBhcmNoaXZlLlxuIgorI34gIiAgLWp8LS1qb2luIDxwYXJ0PiA8cGFydD4gLi4uICAgICBKb2luIHBhcnRzIHRvZ2V0aGVyLlxuIgorI34gIiAgLUl8LS1pbmZvIDxwYXJ0PiAuLi4gICAgICAgICAgICBEaXNwbGF5IGluZm8gYWJvdXQgYSBwYXJ0LlxuIgorI34gIiAgLWh8LS1oZWxwICAgICAgICAgICAgICAgICAgICAgICBTaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorI34gIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICAgICAgICBTaG93IHRoZSB2ZXJzaW9uLlxuIgorI34gIiAgLS1saWNlbnNlICAgICAgICAgICAgICAgICAgICAgICBTaG93IHRoZSBsaWNlbnNlLlxuIgorI34gIlxuIgorI34gIiAgLWF8LS1hdXRvIC1vIDxjb21wbGV0ZT4gPHBhcnQ+ICBBdXRvLWFjY3VtdWxhdGUgcGFydHMuXG4iCisjfiAiICAtbHwtLWxpc3RxICAgICAgICAgICAgICAgICAgICAgIExpc3QgdW5tYXRjaGVkIHBpZWNlcy5cbiIKKyN+ICIgIC1kfC0tZGlzY2FyZCBbPGZpbGVuYW1lPiAuLi5dICAgRGlzY2FyZCB1bm1hdGNoZWQgcGllY2VzLlxuIgorI34gIlxuIgorI34gIk9wdGlvbnM6XG4iCisjfiAiICAtLWRlcG90ZGlyIDxkaXJlY3Rvcnk+ICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLyVzLlxuIgorI34gIiAgLVN8LS1wYXJ0c2l6ZSA8c2l6ZT4gICAgICAgICAgICBJbiBLaUIsIGZvciAtcyAoZGVmYXVsdCBpcyA0NTApLlxuIgorI34gIiAgLW98LS1vdXRwdXQgPGZpbGU+ICAgICAgICAgICAgICBGb3IgLWogKGRlZmF1bHQgaXMgPHBhY2thZ2U+LTx2ZXJzaW9uPi4iCisjfiAiZGViKS5cbiIKKyN+ICIgIC1RfC0tbnBxdWlldCAgICAgICAgICAgICAgICAgICAgQmUgcXVpZXQgd2hlbiAtYSBpcyBub3QgYSBwYXJ0LlxuIgorI34gIiAgLS1tc2RvcyAgICAgICAgICAgICAgICAgICAgICAgICBHZW5lcmF0ZSA4LjMgZmlsZW5hbWVzLlxuIgorI34gIlxuIgorI34gIkV4aXQgc3RhdHVzOiAwID0gT0s7ICAxID0gLWEgaXMgbm90IGEgcGFydDsgIDIgPSB0cm91YmxlIVxuIgorI34gbXNnc3RyICIiCisjfiAiVXNvOiAlcyBbPG9ww6fDtWVzPiAuLi5dIDxjb21hbmRvPlxuIgorI34gIlxuIgorI34gIkNvbWFuZG9zIDpcbiIKKyN+ICIgIC1zfCAtLXNwbGl0IDxhcnF1aXZvPiBbPHByZWZpeG8+XSBEaXZpZGUgdW0gYXJxdWl2by5cbiIKKyN+ICIgIC1qfC0tam9pbiA8cGFydGU+IDxwYXJ0ZT4gLi4uICAgICBKdW50YSBwYXJ0ZXMuXG4iCisjfiAiICAtSXwtLWluZm8gPHBhcnRlPiAuLi4gICAgICAgICAgICAgRXhpYmUgaW5mb3JtYcOnw6NvIHNvYnJlIHVtYSBwYXJ0ZS5cbiIKKyN+ICIgIC1ofC0taGVscCAgICAgICAgICAgICAgICAgICAgICAgICBFeGliZSBlc3RhIG1lbnNhZ2VtIGRlIGFqdWRhLlxuIgorI34gIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICAgICAgICAgIEV4aWJlIGEgdmVyw6NvLlxuIgorI34gIiAgLS1saWNlbnNlICAgICAgICAgICAgICAgICAgICAgICAgIEV4aWJlIGEgbGljZW7Dp2EuXG4iCisjfiAiXG4iCisjfiAiICAtYXwtLWF1dG8gLW8gPGNvbXBsZXRhPiA8cGFydGU+ICAgQXV0by1hY3VtdWxhIHBhcnRlcy5cbiIKKyN+ICIgIC1sfC0tbGlzdHEgICAgICAgICAgICAgICAgICAgICAgICBMaXN0YSBwZWRhw6dvcyBxdWUgbsOjbyBjYXNhbS5cbiIKKyN+ICIgIC1kfC0tZGlzY2FyZCBbPG5vbWVkZWFycXVpdm8+IC4uLl1EZXNjYXJ0YSBwZWRhw6dvcyBxdWUgbsOjbyBjYXNhbS5cbiIKKyN+ICJcbiIKKyN+ICJPcMOnw7VlcyA6XG4iCisjfiAiICAtLWRlcG90ZGlyIDxkaXJldMOzcmlvPiAgICAgICAgICAgIFVzZSA8ZGlyZXTDs3Jpbz4gYW8gaW52w6lzIGRlICVzLyVzLlxuIgorI34gIiAgLVN8LS1wYXJ0c2l6ZSA8dGFtYW5obz4gICAgICAgICAgIEVtS2lCLCBwYXJhIC1zIChwYWRyw6NvIMOpIDQ1MCkuXG4iCisjfiAiICAtb3wtLW91dHB1dCA8YXJxdWl2bz4gICAgICAgICAgICAgUGFyYSAtaiAocGFkcsOjbyDDqSA8cGFjb3RlPi08dmVyc8Ojbz4uIgorI34gImRlYikuXG4iCisjfiAiICAtUXzCry1ucHF1aWV0ICAgICAgICAgICAgICAgICAgICAgIFF1aWV0byBxdWFuZG8gLWEgbsOjbyDDqSB1bWEgcGFydGUuXG4iCisjfiAiICAtLW1zZG9zICAgICAgICAgICAgICAgICAgICAgICAgICAgR2VyZSBub21lcyBkZSBhcnF1aXZvcyA4LjMuXG4iCisjfiAiXG4iCisjfiAiU3RhdHVzIGRlIHNhw61kYSA6IDAgPSBPSzsgMSA9IC1hIG7Do28gw6kgdW1hIHBhcnRlOyAyID0gcHJvYmxlbWEgIVxuIgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9wby9xdW90LnNlZCBiL2Rwa2ctMS4xNi4xLjEvcG8vcXVvdC5zZWQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDEyMmM0NgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvcG8vcXVvdC5zZWQKQEAgLTAsMCArMSw2IEBACitzLyJcKFteIl0qXCkiL+KAnFwx4oCdL2cKK3MvYFwoW15gJ10qXCknL+KAmFwx4oCZL2cKK3MvICdcKFteYCddKlwpJyAvIOKAmFwx4oCZIC9nCitzLyAnXChbXmAnXSpcKSckLyDigJhcMeKAmS9nCitzL14nXChbXmAnXSpcKScgL+KAmFwx4oCZIC9nCitzL+KAnOKAnS8iIi9nCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3BvL3JlbW92ZS1wb3RjZGF0ZS5zaW4gYi9kcGtnLTEuMTYuMS4xL3BvL3JlbW92ZS1wb3RjZGF0ZS5zaW4KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjQzNmM0OQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvcG8vcmVtb3ZlLXBvdGNkYXRlLnNpbgpAQCAtMCwwICsxLDE5IEBACisjIFNlZCBzY3JpcHQgdGhhdCByZW1vdmUgdGhlIFBPVC1DcmVhdGlvbi1EYXRlIGxpbmUgaW4gdGhlIGhlYWRlciBlbnRyeQorIyBmcm9tIGEgUE9UIGZpbGUuCisjCisjIFRoZSBkaXN0aW5jdGlvbiBiZXR3ZWVuIHRoZSBmaXJzdCBhbmQgdGhlIGZvbGxvd2luZyBvY2N1cnJlbmNlcyBvZiB0aGUKKyMgcGF0dGVybiBpcyBhY2hpZXZlZCBieSBsb29raW5nIGF0IHRoZSBob2xkIHNwYWNlLgorL14iUE9ULUNyZWF0aW9uLURhdGU6IC4qIiQveworeAorIyBUZXN0IGlmIHRoZSBob2xkIHNwYWNlIGlzIGVtcHR5Lgorcy9QL1AvCit0YQorIyBZZXMgaXQgd2FzIGVtcHR5LiBGaXJzdCBvY2N1cnJlbmNlLiBSZW1vdmUgdGhlIGxpbmUuCitnCitkCitiYgorOmEKKyMgVGhlIGhvbGQgc3BhY2Ugd2FzIG5vbmVtcHR5LiBGb2xsb3dpbmcgb2NjdXJyZW5jZXMuIERvIG5vdGhpbmcuCit4Cis6YgorfQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9wby9yby5nbW8gYi9kcGtnLTEuMTYuMS4xL3BvL3JvLmdtbwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iZmZmZjdhCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9wby9yby5nbW8KQmluYXJ5IGZpbGVzIGRpZmZlcgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9wby9yby5wbyBiL2Rwa2ctMS4xNi4xLjEvcG8vcm8ucG8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTljMmNlYwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvcG8vcm8ucG8KQEAgLTAsMCArMSw2NzE5IEBACisjIHRyYW5zbGF0aW9uIG9mIHJvLnBvIHRvIFJvbWFuaWFuCisjIFJvbWFuaWFuIHRyYW5zbGF0aW9ucyBmb3IgdGhlIGRwa2cgcGFja2FnZS4KKyMgVGhpcyBmaWxlIGlzIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBzYW1lIGxpY2Vuc2UgYXMgdGhlIGRwa2cgcGFja2FnZS4KKyMKKyMgRXhwbGljYcibaWkgbGVnYXRlIGRlIG1vZHVsIGRlIHRyYWR1Y2VyZToKKyMgLSBsYSBtZXNhamVsZSBlbWlzZSDDrm4gdXJtYSBhY8ibaXVuaWxvciBwcm9ncmFtdWx1aSBzZSBmb2xvc2XImXRlIGZvcm1hIGltcGVyc29uYWzEgywKKyMgICBmb2xvc2l0xIMgyJlpIMOubiB2ZXJzaXVuZWEgw65uIGVuZ2xlesSDCisjIC0gc2UgcMSDc3RyZWF6xIMgZGVudW1pcmlsZSDDrm4gZW5nbGV6xIMgcGVudHJ1OgorIyAgIC0gbnVtZWxlIGZ1bmPIm2lsb3IgyJlpIGEgYXJndW1lbnRlbG9yIGFjZXN0b3JhCisjICAgLSBudW1lbGUgyJlpIG9wyJtpdW5pbGUgcHJvZ3JhbWVsb3IKKyMgLSBmYWlsZWQgdG8gPSBlyJllYyBsYQorIyAtIHVuYWJsZSB0byBzdGF0L3N5bmMvLi4uID0gc3RhdC9zeW5jLyBpbXBvc2liaWwgcGVudHJ1Li4uCisjIC0gdW5hYmxlIHRvIGRvIGZvb2JhciA9IG51IHNlIHBvYXRlIGZhY2UvZHJlZ2UKKyMKKyMgQ29weXJpZ2h0IChDKSAyMDA1IFRIRSBQQUNLQUdFJ1MgQ09QWVJJR0hUIEhPTERFUgorIworIyBSdciZZcibIFplbm8gPHJ6ZW5vQGN3YXp5LmNvLnVrPiwgMjAwNS4KKyMgRWRkeSBQZXRyaciZb3IgPGVkZHkucGV0cmlzb3JAZ21haWwuY29tPiwgMjAwNSwgMjAwNiwgMjAwNywgMjAwOC4KKyMgU29yaW4gQmF0YXJpdWMgPHNvcmluQGJvbmJvbi5uZXQ+LCAyMDA1LCAyMDA2LgorIyBBbmRyZWkgUE9QRVNDVSA8YW5kcmVpbXBvcGVzY3VAZ21haWwuY29tPiwgMjAxMC4KKyMgaW9hbi1ldWdlbiBTVEFOIDxzdGFuLmlldWdlbkBnbWFpbC5jb20+LCAyMDExLgorIworbXNnaWQgIiIKK21zZ3N0ciAiIgorIlByb2plY3QtSWQtVmVyc2lvbjogcm9cbiIKKyJSZXBvcnQtTXNnaWQtQnVncy1UbzogZGViaWFuLWRwa2dAbGlzdHMuZGViaWFuLm9yZ1xuIgorIlBPVC1DcmVhdGlvbi1EYXRlOiAyMDExLTEwLTE0IDA3OjExKzAyMDBcbiIKKyJQTy1SZXZpc2lvbi1EYXRlOiAyMDExLTAxLTI1IDEzOjU5KzAxMDBcbiIKKyJMYXN0LVRyYW5zbGF0b3I6IGlvYW4tZXVnZW4gU1RBTiA8c3Rhbi5pZXVnZW5AZ21haWwuY29tPlxuIgorIkxhbmd1YWdlLVRlYW06IFJvbWFuaWFuIDxkZWJpYW4tbDEwbi1yb21hbmlhbkBsaXN0cy5kZWJpYW4ub3JnPlxuIgorIkxhbmd1YWdlOiByb1xuIgorIk1JTUUtVmVyc2lvbjogMS4wXG4iCisiQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PVVURi04XG4iCisiQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdFxuIgorIlgtR2VuZXJhdG9yOiBMb2thbGl6ZSAxLjBcbiIKKyJQbHVyYWwtRm9ybXM6ICBucGx1cmFscz0zOyBwbHVyYWw9bj09MSA/IDAgOiAobj09MCB8fCAobiUxMDAgPiAwICYmIG4lMTAwIDwgIgorIjIwKSkgPyAxIDogMjtcbiIKKworIzogbGliL2Rwa2cvYXIuYzo2NgorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGNoYXJhY3RlciAnJWMnIGluIGFyY2hpdmUgJyUuMjUwcycgbWVtYmVyICclLjE2cycgc2l6ZSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9hci5jOjgxIGxpYi9kcGtnL2FyLmM6OTcgbGliL2Rwa2cvYXIuYzoxMDggbGliL2Rwa2cvYXIuYzoxMTIKKyM6IGxpYi9kcGtnL2FyLmM6MTM0IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTU0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBmaWxlICclcyciCittc2dzdHIgIm51IHNlIHBvYXRlIHNjcmllIGZpyJlpZXJ1bCDigJ4lc+KAnSIKKworIzogbGliL2Rwa2cvYXIuYzo5NAorIywgYy1mb3JtYXQKK21zZ2lkICJnZW5lcmF0ZWQgY29ycnVwdCBhciBoZWFkZXIgZm9yICclcyciCittc2dzdHIgInMtYSBnZW5lcmF0IHVuIGFudGV0IGFyIGNvcnVwdCBwZW50cnUg4oCeJXPigJ0iCisKKyM6IGxpYi9kcGtnL2FyLmM6MTIzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBmc3RhdCBhciBtZW1iZXIgZmlsZSAoJXMpIgorbXNnc3RyICJlyJllYyBsYSDigJ5mc3RhdOKAnSBwZW50cnUgZmnImWllcnVsIG1lbWJydSBhciAoJXMpIgorCisjOiBsaWIvZHBrZy9hci5jOjEzMAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGFyIG1lbWJlciBmaWxlICglcykiCittc2dpZCAiYXIgbWVtYmVyIGZpbGUgKCVzKSIKK21zZ3N0ciAiZciZZWMgbGEg4oCeZnN0YXTigJ0gcGVudHJ1IGZpyJlpZXJ1bCBtZW1icnUgYXIgKCVzKSIKKworIzogbGliL2Rwa2cvYnVmZmVyLmM6MTk2CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZWFkIG9uIGJ1ZmZlciBjb3B5IGZvciAlcyIKK21zZ3N0ciAiZciZZWMgbGEgY2l0aXJlYSBjb3BpZWkgZGluIG1lbW9yaWEgdGFtcG9uIHBlbnRydSAlcyIKKworIzogbGliL2Rwa2cvYnVmZmVyLmM6MjEyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCBpbiB3cml0ZSBvbiBidWZmZXIgY29weSBmb3IgJXMiCittc2dzdHIgImXImWVjIGxhIHNjcmllcmVhIGNvcGllaSBkaW4gbWVtb3JpYSB0YW1wb24gcGVudHJ1ICVzIgorCisjOiBsaWIvZHBrZy9idWZmZXIuYzoyMjAKKyMsIGMtZm9ybWF0Cittc2dpZCAic2hvcnQgcmVhZCBvbiBidWZmZXIgY29weSBmb3IgJXMiCittc2dzdHIgImNpdGlyZSBzY3VydMSDIGEgY29waWVpIGRpbiBtZW1vcmlhIHRhbXBvbiBwZW50cnUgJXMiCisKKyM6IGxpYi9kcGtnL2J1ZmZlci5jOjI4OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgdGFyIgorbXNnaWQgImZhaWxlZCB0byBzZWVrICVzIgorbXNnc3RyICJlyJllYyBsYSBleGVjIHRhciIKKworIzogbGliL2Rwa2cvY29tbWFuZC5jOjE3OCBsaWIvZHBrZy9jb21tYW5kLmM6MjA0IHNyYy9oZWxwLmM6NjIxCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjk4IHNyYy9wcm9jZXNzYXJjLmM6MTM4IHNyYy9wcm9jZXNzYXJjLmM6NDMyCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjgzOSBkcGtnLWRlYi9idWlsZC5jOjQ1OSBkcGtnLWRlYi9idWlsZC5jOjUzOAorIzogZHBrZy1kZWIvYnVpbGQuYzo1NjEgZHBrZy1kZWIvZXh0cmFjdC5jOjMxNyBkcGtnLWRlYi9pbmZvLmM6NjUKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzo2OSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NDU3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBleGVjdXRlICVzICglcykiCittc2dzdHIgIm51IHNlIHBvYXRlIGV4ZWN1dGEgJXMgKCVzKSIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzo4MworIywgYy1mb3JtYXQKK21zZ2lkICIlczogZGVjb21wcmVzc2lvbiIKK21zZ3N0ciAiJXM6IGRlY29tcHJlc2llIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjg5CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBjb21wcmVzc2lvbiIKK21zZ3N0ciAiJXM6IGNvbXByZXNpZSIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yIGJpbmRpbmcgaW5wdXQgdG8gZ3ppcCBzdHJlYW0iCittc2dzdHIgIiVzOiBlcm9hcmUgbGEgbGVnYXJlYSBpbnRyxINyaWkgZGUgZmx1eHVsIGd6aXAiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHJlYWQgZXJyb3I6ICclcyciCittc2dzdHIgIiVzOiBlcm9hcmUgaW50ZXJuxIMgZ3ppcCBsYSBjaXRpcmU6IOKAniVz4oCdIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjEzMiBsaWIvZHBrZy9jb21wcmVzcy5jOjEzNgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCB3cml0ZSBlcnJvciIKK21zZ3N0ciAiJXM6IGVyb2FyZSBpbnRlcm7EgyBnemlwIGxhIHNjcmllcmUiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTUwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvciBiaW5kaW5nIG91dHB1dCB0byBnemlwIHN0cmVhbSIKK21zZ3N0ciAiJXM6IGVyb2FyZSBsYSBsZWdhcmVhIGllyJlpcmlpIGRlIGZsdXh1bCBnemlwIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE1NworIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCByZWFkIGVycm9yIgorbXNnc3RyICIlczogZXJvYXJlIGludGVybsSDIGd6aXAgbGEgY2l0aXJlIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE2NworIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCB3cml0ZSBlcnJvcjogJyVzJyIKK21zZ3N0ciAiJXM6IGVyb2FyZSBpbnRlcm7EgyBnemlwIGxhIHNjcmllcmU6IOKAniVz4oCdIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE4MAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCB3cml0ZSBlcnJvcjogJXMiCittc2dzdHIgIiVzOiBlcm9hcmUgaW50ZXJuxIMgZ3ppcCBsYSBzY3JpZXJlOiAlcyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyMjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yIGJpbmRpbmcgaW5wdXQgdG8gYnppcDIgc3RyZWFtIgorbXNnc3RyICIlczogZXJvYXJlIGxhIGxlZ2FyZWEgaW50csSDcmlpIGxhIGZsdXh1bCBiemlwMiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIHJlYWQgZXJyb3I6ICclcyciCittc2dzdHIgIiVzOiBlcm9hcmUgaW50ZXJuxIMgYnppcDIgZGUgY2l0aXJlOiDigJ4lc+KAnSIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyNDAgbGliL2Rwa2cvY29tcHJlc3MuYzoyNDQgbGliL2Rwa2cvY29tcHJlc3MuYzoyOTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIHdyaXRlIGVycm9yIgorbXNnc3RyICIlczogZXJvYXJlIGludGVybsSDIGJ6aXAyIGRlIHNjcmllcmUiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjU4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvciBiaW5kaW5nIG91dHB1dCB0byBiemlwMiBzdHJlYW0iCittc2dzdHIgIiVzOiBlcm9hcmUgbGEgbGVnYXJlYSBpZciZaXJpaSBjdSBmbHV4dWwgYnppcDIiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjY1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiByZWFkIGVycm9yIgorbXNnc3RyICIlczogZXJvYXJlIGludGVybsSDIGJ6aXAyIGRlIGNpdGlyZSIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyNzUgbGliL2Rwa2cvY29tcHJlc3MuYzoyODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIHdyaXRlIGVycm9yOiAnJXMnIgorbXNnc3RyICIlczogZXJvYXJlIGludGVybsSDIGJ6aXAyIGRlIHNjcmllcmU6IOKAniVz4oCdIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI4MgorbXNnaWQgInVuZXhwZWN0ZWQgYnppcDIgZXJyb3IiCittc2dzdHIgImVyb2FyZSBiemlwMiBuZWHImXRlcHRhdMSDIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjY4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1cGRhdGVzIGRpcmVjdG9yeSBjb250YWlucyBmaWxlIGAlLjI1MHMnIHdob3NlIG5hbWUgaXMgdG9vIGxvbmcgKGxlbmd0aD0lZCwgIgorIm1heD0lZCkiCittc2dzdHIgIiIKKyJkaXJlY3RvcnVsIGN1IGFjdHVhbGl6xINyaSBjb27Im2luZSBmaciZaWVydWwg4oCeJS4yNTBz4oCdIGFsIGPEg3J1aSBudW1lIGVzdGUgcHJlYSAiCisibHVuZyAobHVuZ2ltZT0lZCwgbWF4PSVkKSIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzo3MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidXBkYXRlcyBkaXJlY3RvcnkgY29udGFpbnMgZmlsZXMgd2l0aCBkaWZmZXJlbnQgbGVuZ3RoIG5hbWVzIChib3RoICVkIGFuZCAlZCkiCittc2dzdHIgIiIKKyJkaXJlY3RvcnVsIGN1IGFjdHVhbGl6xINyaSBjb27Im2luZSBmaciZaWVyZSBjdSBudW1lIGRlIGRpZmVyaXRlIGx1bmdpbWkgKGF0w6J0ICIKKyIlZCBjw6J0IMiZaSAlZCkiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHNjYW4gdXBkYXRlcyBkaXJlY3RvcnkgYCUuMjU1cyciCittc2dzdHIgIm51IHNlIHBvYXRlIHNjYW5hIGRpcmVjdG9ydWwgY3UgYWN0dWFsaXrEg3JpIOKAniUuMjU1c+KAnSIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlbW92ZSBpbmNvcnBvcmF0ZWQgdXBkYXRlIGZpbGUgJS4yNTVzIgorbXNnc3RyICJlyJllYyBsYSDImXRlcmdlcmVhIGZpyJlpZXJ1bHVpIGN1IGFjdHVhbGl6xINyaSDDrm5jb3Jwb3JhdCAlLjI1NXMiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTIxIGRwa2ctZGViL2J1aWxkLmM6NDQ3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgYCUuMjU1cyciCittc2dzdHIgIm51IHNlIHBvYXRlIGNyZWEg4oCeJS4yNTVz4oCdIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEyNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmlsbCAlLjI1MHMgd2l0aCBwYWRkaW5nIgorbXNnc3RyICJudSBzZSBwb2F0ZSBjb21wbGV0YSAlLjI1MHMgY3Ugc3BhyJtpaSIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxMjcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoICUuMjUwcyBhZnRlciBwYWRkaW5nIgorbXNnc3RyICJmbHVzaCBpbXBvc2liaWwgcGVudHJ1ICUuMjUwcyBkdXDEgyBjb21wbGV0YXJlYSBjdSBzcGHIm2lpIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEyOQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2VlayB0byBzdGFydCBvZiAlLjI1MHMgYWZ0ZXIgcGFkZGluZyIKK21zZ3N0ciAibnUgc2UgcG9hdGUgY8SDdXRhIMOubmNlcHV0dWwgbHVpICUuMjUwcyBkdXDEgyBjb21wbGV0YXJlYSBjdSBzcGHIm2lpIgorCisjIG51bWVsZSBmdW5jyJtpbG9yIMiZaSBhcmd1bWVudGVsb3IgYWNlc3RvcmEgcsSDbcOibiBjZWxlIG9yaWdpbmFsZQorIyBwZW50cnUgYSBudSBpbmR1Y2Ugw65uIGVyb2FyZSB1dGlsaXphdG9ydWwKKyMgYCcgZGV2aW5lIOKAnuKAnSAtIG9yaWN1bSBgIMiZaSAnIG51IHN1bnQgcGVyZWNoZQorIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxOTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gbG9jayBmaWxlICVzIGZvciB0ZXN0aW5nIgorbXNnc3RyICJudSBzZSBwb2F0ZSBkZXNjaGlkZSBmaciZaWVydWwgZGUgYmxvY2FyZSAlcyBwZW50cnUgdGVzdGFyZSIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyMjEKK21zZ2lkICJ1bmFibGUgdG8gb3Blbi9jcmVhdGUgc3RhdHVzIGRhdGFiYXNlIGxvY2tmaWxlIgorbXNnc3RyICJudSBzZSBwb2F0ZSBkZXNjaGlkZS9jcmVhIGZpyJlpZXJ1bCBkZSBibG9jYXJlIGEgYmF6ZWkgZGUgZGF0ZSIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyMzEKK21zZ2lkICJ5b3UgZG8gbm90IGhhdmUgcGVybWlzc2lvbiB0byBsb2NrIHRoZSBkcGtnIHN0YXR1cyBkYXRhYmFzZSIKK21zZ3N0ciAibnUgYXZlyJtpIGRyZXB0dXJpIGRlIGJsb2NhcmUgYSBiYXplaSBkZSBkYXRlIGRwa2cgc3RhdHVzIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjIzMworIywgZnV6enkKKyN8IG1zZ2lkICJ1bmFibGUgdG8gbG9jayBkcGtnIHN0YXR1cyBkYXRhYmFzZSIKK21zZ2lkICJkcGtnIHN0YXR1cyBkYXRhYmFzZSIKK21zZ3N0ciAibnUgc2UgcG9hdGUgYmxvY2EgYmF6YSBkZSBkYXRlIGRwa2cgc3RhdHVzIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjI1NworbXNnaWQgInJlcXVlc3RlZCBvcGVyYXRpb24gcmVxdWlyZXMgc3VwZXJ1c2VyIHByaXZpbGVnZSIKK21zZ3N0ciAib3BlcmHIm2lhIHNvbGljaXRhdMSDIG5lY2VzaXTEgyBkcmVwdHVyaSBkZSBzdXBlcnV0aWxpemF0b3IiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjYyCittc2dpZCAidW5hYmxlIHRvIGFjY2VzcyBkcGtnIHN0YXR1cyBhcmVhIgorbXNnc3RyICJudSBzZSBwb2F0ZSBhY2Nlc2Egem9uYSBkcGtnIHN0YXR1cyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyNjQKK21zZ2lkICJvcGVyYXRpb24gcmVxdWlyZXMgcmVhZC93cml0ZSBhY2Nlc3MgdG8gZHBrZyBzdGF0dXMgYXJlYSIKK21zZ3N0ciAib3BlcmHIm2lhIG5lY2VzaXTEgyBhY2NlcyBkZSB0aXAgc2NyaWVyZS9jaXRpcmUgw65uIHpvbmEgZHBrZyBzdGF0dXMiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzA5CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZW1vdmUgbXkgb3duIHVwZGF0ZSBmaWxlICUuMjU1cyIKK21zZ3N0ciAiZciZZWMgbGEgyJl0ZXJnZXJlYSBwcm9wcml1bHVpIGZpyJlpZXIgY3UgYWN0dWFsaXrEg3JpICUuMjU1cyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJudSBzZSBwb2F0ZSBzY3JpZSBzdGFyZWEgYWN0dWFsaXphdMSDIGEgbHVpIOKAniUuMjUwc+KAnSIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNDkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJmbHVzaCBpbXBvc2liaWwgcGVudHJ1IHN0YXJlYSBhY3R1YWxpemF0xIMgYSBsdWkg4oCeJS4yNTBz4oCdIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM1MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gdHJ1bmNhdGUgZm9yIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJudSBzZSBwb2F0ZSB0cnVuY2hpYSBwZW50cnUgc3RhcmVhIGFjdHVhbGl6YXTEgyBhIGx1aSDigJ4lLjI1MHPigJ0iCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzUzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmc3luYyB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiZnN5bmMgaW1wb3NpYmlsIHBlbnRydSBzdGFyZWEgYWN0dWFsaXphdMSDIGEgbHVpIOKAniUuMjUwc+KAnSIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJudSBzZSBwb2F0ZSDDrm5jaGlkZSBzdGFyZWEgYWN0dWFsaXphdMSDIGEgbHVpIOKAniUuMjUwc+KAnSIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgIm51IHNlIHBvYXRlIGluc3RhbGEgc3RhcmVhIGFjdHVhbGl6YXTEgyBhIGx1aSDigJ4lLjI1MHPigJ0iCisKKyM6IGxpYi9kcGtnL2Rpci5jOjUwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gcmVhZCBmaWxlZGVzY3JpcHRvciBmbGFncyBmb3IgJS4yNTBzIgorbXNnaWQgInVuYWJsZSB0byBnZXQgZmlsZSBkZXNjcmlwdG9yIGZvciBkaXJlY3RvcnkgJyVzJyIKK21zZ3N0ciAibnUgc2UgcG90IGNpdGkgZmFuaW9hbmVsZSBkZXNjcmlwdG9ydWx1aSBkZSBmaciZaWVyIHBlbnRydSAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL2Rpci5jOjU0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gc3luYyBmaWxlICclcyciCittc2dpZCAidW5hYmxlIHRvIHN5bmMgZGlyZWN0b3J5ICclcyciCittc2dzdHIgImXImWVjIGxhIHN5bmMgcGVudHJ1IGZpyJlpZXJ1bCDigJ4lc+KAnSIKKworIzogbGliL2Rwa2cvZGlyLmM6NjkgbGliL2Rwa2cvZGlyLmM6MTMxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gb3BlbiBmaWxlICclcyciCittc2dpZCAidW5hYmxlIHRvIG9wZW4gZGlyZWN0b3J5ICclcyciCittc2dzdHIgIm51IHNlIHBvYXRlIGRlc2NoaWRlIGZpyJlpZXJ1bCBzdXJzxIMg4oCeJXPigJ0iCisKKyM6IGxpYi9kcGtnL2Rpci5jOjEwOSBzcmMvZGl2ZXJ0Y21kLmM6MjE4IGRwa2ctc3BsaXQvc3BsaXQuYzoyMDIKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjkzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIGZpbGUgJyVzJyIKK21zZ3N0ciAibnUgc2UgcG9hdGUgZGVzY2hpZGUgZmnImWllcnVsIHN1cnPEgyDigJ4lc+KAnSIKKworIzogbGliL2Rwa2cvZGlyLmM6MTExIHNyYy9kaXZlcnRjbWQuYzoyMzIgc3JjL2RpdmVydGNtZC5jOjM3NworIzogc3JjL3N0YXRjbWQuYzoyMTcgZHBrZy1kZWIvYnVpbGQuYzo1OTggZHBrZy1zcGxpdC9qb2luLmM6NjUKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxODcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE0MDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgZmlsZSAnJXMnIgorbXNnc3RyICJlyJllYyBsYSBzeW5jIHBlbnRydSBmaciZaWVydWwg4oCeJXPigJ0iCisKKyM6IGxpYi9kcGtnL2Rpci5jOjExMyBzcmMvZGl2ZXJ0Y21kLmM6MjM0IHNyYy9kaXZlcnRjbWQuYzozNzkKKyM6IGRwa2ctZGViL2J1aWxkLmM6NjAwIGRwa2ctc3BsaXQvam9pbi5jOjY3IGRwa2ctc3BsaXQvcXVldWUuYzoxODkKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzE0IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNDA4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBmaWxlICclcyciCittc2dzdHIgImXImWVjIGxhIMOubmNoaWRlcmVhIGZpyJlpZXJ1bHVpIOKAniVz4oCdIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6Mzk2CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB3cml0ZSBkZXRhaWxzIG9mIGAlLjUwcycgdG8gYCUuMjUwcyciCittc2dzdHIgImXImWVjIGxhIHNjcmllcmVhIGRldGFsaWlsb3IgbHVpIOKAniUuNTBz4oCdIMOubiDigJ4lLjI1MHPigJ0iCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0MjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gJyVzJyBmb3Igd3JpdGluZyAlcyBkYXRhYmFzZSIKK21zZ3N0ciAiZciZZWMgbGEgZGVzY2hpZGVyZWEg4oCeJXPigJ0gcGVudHJ1IHNjcmllcmVhIGJhemVpIGRlIGRhdGUgJXMiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0MjYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNldCBidWZmZXJpbmcgb24gJXMgZGF0YWJhc2UgZmlsZSIKK21zZ3N0ciAibnUgc2UgcG9hdGUgc2V0YSBtZW1vcmllIHRhbXBvbiBwZW50cnUgZmnImWllcnVsIGJhemVpIGRlIGRhdGUgJXMiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0MzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlICVzIGRhdGFiYXNlIHJlY29yZCBhYm91dCAnJS41MHMnIHRvICclLjI1MHMnIgorbXNnc3RyICIiCisiZciZZWMgbGEgc2NyaWVyZWEgw65ucmVnaXN0csSDcmlpICVzIGRpbiBiYXphIGRlIGRhdGUsIGFwcm94aW1hdGl2IOKAniUuNTBz4oCdIHDDom7EgyAiCisibGEg4oCeJS4yNTBz4oCdIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDQ2CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBmbHVzaCAlcyBkYXRhYmFzZSB0byAnJS4yNTBzJyIKK21zZ3N0ciAiZciZZWMgbGEgZmx1c2ggcGVudHJ1IGJhemEgZGUgZGF0ZSAlcyDDrm4g4oCeJS4yNTBz4oCdIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDQ4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBmc3luYyAlcyBkYXRhYmFzZSB0byAnJS4yNTBzJyIKK21zZ3N0ciAiZciZZWMgbGEgZnN5bmMgYSBiYXplaSBkZSBkYXRlICVzIMOubiDigJ4lLjI1MHPigJ0iCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNsb3NlICclLjI1MHMnIGFmdGVyIHdyaXRpbmcgJXMgZGF0YWJhc2UiCittc2dzdHIgImXImWVjIGxhIMOubmNoaWRlcmVhIOKAniUuMjUwc+KAnSBkdXDEgyBzY3JpZXJlYSBiYXplaSBkZSBkYXRlICVzIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDU1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBsaW5rICclLjI1MHMnIHRvICclLjI1MHMnIGZvciBiYWNrdXAgb2YgJXMgZGF0YWJhc2UiCittc2dzdHIgIiIKKyJlyJllYyBsYSBsaW5rIHBlbnRydSDigJ4lLjI1MHPigJ0gbGEg4oCeJS4yNTBz4oCdIHBlbnRydSBhIGZhY2UgbyBjb3BpZSBkZSBzaWd1cmFuyJvEgyAiCisiYSBiYXplaSBkZSBkYXRlICVzIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDU4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBpbnN0YWxsICclLjI1MHMnIGFzICclLjI1MHMnIGNvbnRhaW5pbmcgJXMgZGF0YWJhc2UiCittc2dzdHIgImXImWVjIGxhIGluc3RhbGFyZWEgbHVpIOKAniUuMjUwc+KAnSBjYSDigJ4lLjI1MHPigJ0gY29uyJtpbsOibmQgYmF6YSBkZSBkYXRlICVzIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6OTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiB1bnJlY292ZXJhYmxlIGZhdGFsIGVycm9yLCBhYm9ydGluZzpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorIiVzOiBlcm9hcmUgZmF0YWzEgyBpcmVjdXBlcmFiaWzEgywgc2UgYWJhbmRvbmVhesSDOlxuIgorIiAlc1xuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MTAwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiJXM6IHVucmVjb3ZlcmFibGUgZmF0YWwgZXJyb3IsIGFib3J0aW5nOlxuIgorI3wgIiAlc1xuIgorbXNnaWQgIiIKKyIlczogb3V0c2lkZSBlcnJvciBjb250ZXh0LCBhYm9ydGluZzpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorIiVzOiBlcm9hcmUgZmF0YWzEgyBpcmVjdXBlcmFiaWzEgywgc2UgYWJhbmRvbmVhesSDOlxuIgorIiAlc1xuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MTIwCisjLCBmdXp6eQorI3wgbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBjbGVhbnVwIGVudHJ5IgorbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBlcnJvciBjb250ZXh0IgorbXNnc3RyICJtZW1vcmllIGluc3VmaWNpZW50xIMgcGVudHJ1IG5vdWEgaW50cmFyZSBkZSBjdXLEg8ibaXJlIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MTgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogZXJyb3Igd2hpbGUgY2xlYW5pbmcgdXA6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKyIlczogZXJvYXJlIMOubiB0aW1wdWwgY3VyxIPIm8SDcmlpOlxuIgorIiAlc1xuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MjAxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJkcGtnOiB0b28gbWFueSBuZXN0ZWQgZXJyb3JzIGR1cmluZyBlcnJvciByZWNvdmVyeSAhIVxuIgorbXNnaWQgIiVzOiB0b28gbWFueSBuZXN0ZWQgZXJyb3JzIGR1cmluZyBlcnJvciByZWNvdmVyeSEhXG4iCittc2dzdHIgImRwa2c6IHByZWEgbXVsdGUgZXJvcmkgaW1icmljYXRlIMOubiB0aW1wdWwgcmV2ZW5pcmlpIGRpbiBlcm9hcmUgISFcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjI2OCBsaWIvZHBrZy9laGFuZGxlLmM6MzA3Cittc2dpZCAib3V0IG9mIG1lbW9yeSBmb3IgbmV3IGNsZWFudXAgZW50cnkiCittc2dzdHIgIm1lbW9yaWUgaW5zdWZpY2llbnTEgyBwZW50cnUgbm91YSBpbnRyYXJlIGRlIGN1csSDyJtpcmUiCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoyOTEKK21zZ2lkICJvdXQgb2YgbWVtb3J5IGZvciBuZXcgY2xlYW51cCBlbnRyeSB3aXRoIG1hbnkgYXJndW1lbnRzIgorbXNnc3RyICIiCisibWVtb3JpZSBpbnN1ZmljaWVudMSDIHBlbnRydSBub3VhIGludHJhcmUgZGUgY3VyxIPIm2lyZSBjdSBtdWx0ZSBhcmd1bWVudGUiCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzozNTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiVzOiB3YXJuaW5nOiAlc1xuIgorbXNnaWQgIiVzOiBlcnJvcjogJXNcbiIKK21zZ3N0ciAiJXM6IGF2ZXJ0aXNtZW50OiAlc1xuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MzkzCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB3YXJuaW5nOiAlc1xuIgorbXNnc3RyICIlczogYXZlcnRpc21lbnQ6ICVzXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzo0MTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6JXM6JWQ6IGludGVybmFsIGVycm9yOiAlc1xuIgorbXNnc3RyICIlczolczolZDogZXJvYXJlIGludGVybsSDICVzXG4iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGlzIG1pc3NpbmciCittc2dzdHIgIiVzIGxpcHNlyJl0ZSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImAlLipzJyBpcyBub3QgYWxsb3dlZCBmb3IgJXMiCittc2dpZCAiJyUuNTBzJyBpcyBub3QgYWxsb3dlZCBmb3IgJXMiCittc2dzdHIgIuKAniUuKnPigJ0gbmVwZXJtaXMgcGVudHJ1ICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo3MworIywgYy1mb3JtYXQKK21zZ2lkICJqdW5rIGFmdGVyICVzIgorbXNnc3RyICJndW5vaSBkdXDEgyAlcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6ODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBwYWNrYWdlIG5hbWUgKCUuMjUwcykiCittc2dzdHIgIm51bWUgbmV2YWxpZCBkZSBwYWNoZXQgKCUuMjUwcykiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJlbXB0eSBmaWxlIGRldGFpbHMgZmllbGQgYCVzJyIKK21zZ3N0ciAiY8OibXAg4oCeJXPigJ0gY3UgZGV0YWxpaSBmaciZaWVyIGdvbCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTA1CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgZGV0YWlscyBmaWVsZCBgJXMnIG5vdCBhbGxvd2VkIGluIHN0YXR1cyBmaWxlIgorbXNnc3RyICJjw6JtcCBjdSBkZXRhbGlpIGZpyJlpZXIg4oCeJXPigJ0gbmVwZXJtaXMgw65uIGZpyJlpZXJ1bCBkZSBzdGFyZSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTE4CisjLCBjLWZvcm1hdAorbXNnaWQgInRvbyBtYW55IHZhbHVlcyBpbiBmaWxlIGRldGFpbHMgZmllbGQgYCVzJyAoY29tcGFyZWQgdG8gb3RoZXJzKSIKK21zZ3N0ciAiIgorInByZWEgbXVsdGUgdmFsb3JpIMOubiBjw6JtcHVsIGRldGFsaWlsb3IgZmnImWllciDigJ4lc+KAnSAoY29tcGFyYXRpdiBjdSBhbHRlbGUpIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAidG9vIGZldyB2YWx1ZXMgaW4gZmlsZSBkZXRhaWxzIGZpZWxkIGAlcycgKGNvbXBhcmVkIHRvIG90aGVycykiCittc2dzdHIgIiIKKyJwcmVhIHB1yJtpbmUgdmFsb3JpIMOubiBjw6JtcHVsIGRldGFsaWlsb3IgZmnImWllciDigJ4lc+KAnSAoY29tcGFyYXRpdiBjdSBhbHRlbGUpIgorCisjIHllcy9ubyBudSBwb2F0ZSBmaSB0cmFkdXMgZGVvYXJlY2UgZSB2b3JiYSBkZSBpbnRlcnByZXRhcmVhIHZhbG9yaWxvciBleGlzdGVudGUgw65uCisjIGZpyJllcmVsZSBkZSBjb25maWd1cmFyZSh2ZXppIGNvZHVsIHN1cnPEgyBpbmRpY2F0YSkKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE1NAorbXNnaWQgInllcy9ubyBpbiBib29sZWFuIGZpZWxkIgorbXNnc3RyICJ5ZXMvbm8gw65uIGPDom1wIGxvZ2ljIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxNzQKK21zZ2lkICJ3b3JkIGluIGBwcmlvcml0eScgZmllbGQiCittc2dzdHIgImN1dsOibnQgw65uIGPDom1wdWwg4oCecHJpb3JpdHnigJ0iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE4NgorbXNnaWQgInZhbHVlIGZvciBgc3RhdHVzJyBmaWVsZCBub3QgYWxsb3dlZCBpbiB0aGlzIGNvbnRleHQiCittc2dzdHIgInZhbG9hcmUgbmVwZXJtaXPEgyBwZW50cnUgY8OibXB1bCDigJ5zdGF0dXPigJ0gw65uIGFjZXN0IGNvbnRleHQiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE5MQorbXNnaWQgImZpcnN0ICh3YW50KSB3b3JkIGluIGBzdGF0dXMnIGZpZWxkIgorbXNnc3RyICJwcmltdWwgKGRvcml0KSBjdXbDom50IMOubiBjw6JtcHVsIOKAnnN0YXR1c+KAnSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTk0Cittc2dpZCAic2Vjb25kIChlcnJvcikgd29yZCBpbiBgc3RhdHVzJyBmaWVsZCIKK21zZ3N0ciAiYWwgZG9pbGVhIGN1dsOibnQgKGVyb2FyZSkgw65uIGPDom1wdWwg4oCec3RhdHVz4oCdIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxOTcKK21zZ2lkICJ0aGlyZCAoc3RhdHVzKSB3b3JkIGluIGBzdGF0dXMnIGZpZWxkIgorbXNnc3RyICJhbCB0cmVpbGVhIGN1dsOibnQgKHN0YXJlKSDDrm4gY8OibXB1bCDigJ5zdGF0dXPigJ0iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjIwNworIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBpbiBWZXJzaW9uIHN0cmluZyAnJS4yNTBzJyIKK21zZ3N0ciAiZXJvYXJlIMOubiDImWlydWwgVmVyc2lvbiDigJ4lLjI1MHPigJ0iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjIxOAorbXNnaWQgIm9ic29sZXRlIGBSZXZpc2lvbicgb3IgYFBhY2thZ2UtUmV2aXNpb24nIGZpZWxkIHVzZWQiCittc2dzdHIgInMtYSBmb2xvc2l0IGPDom1wIMOubnZlY2hpdCDigJ5SZXZpc2lvbuKAnSBzYXUg4oCeUGFja2FnZS1SZXZpc2lvbuKAnSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjM1Cittc2dpZCAidmFsdWUgZm9yIGBjb25maWctdmVyc2lvbicgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICJ2YWxvYXJlIHBlbnRydSBjw6JtcHVsIOKAnmNvbmZpZy12ZXJzaW9u4oCdIG5lcGVybWlzxIMgw65uIGFjZXN0IGNvbnRleHQiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjI0MAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBpbiBDb25maWctVmVyc2lvbiBzdHJpbmcgJyUuMjUwcyciCittc2dzdHIgImVyb2FyZSDDrm4gyJlpcnVsIENvbmZpZy1WZXJzaW9uIOKAniUuMjUwc+KAnSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjY2CisjLCBjLWZvcm1hdAorbXNnaWQgInZhbHVlIGZvciBgY29uZmZpbGVzJyBoYXMgbWFsZm9ybWF0dGVkIGxpbmUgYCUuKnMnIgorbXNnc3RyICJ2YWxvYXJlYSBwZW50cnUg4oCeY29uZmZpbGVz4oCdIGFyZSBsaW5pZSBtYWxmb3JtYXTEgyDigJ4lLipz4oCdIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyODcKKyMsIGMtZm9ybWF0Cittc2dpZCAidmFsdWUgZm9yIGBjb25mZmlsZXMnIGhhcyBsaW5lIHN0YXJ0aW5nIHdpdGggbm9uLXNwYWNlIGAlYyciCittc2dzdHIgIiIKKyJ2YWxvYXJlYSBwZW50cnUg4oCeY29uZmZpbGVz4oCdIGNvbsibaW5lIG8gbGluaWUgY2FyZSBudSDDrm5jZXBlIGN1IHNwYcibaWkg4oCeJWPigJ0iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjMwNAorbXNnaWQgInJvb3Qgb3IgbnVsbCBkaXJlY3RvcnkgaXMgbGlzdGVkIGFzIGEgY29uZmZpbGUiCittc2dzdHIgImRpcmVjdG9yIG51bCBzYXUgcsSDZMSDY2luxIMgZXN0ZSB0cmVjdXQgY2EgdW4gZmnImWllciBjb25mZmlsZSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MzY1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJgJXMnIGZpZWxkLCBtaXNzaW5nIHBhY2thZ2UgbmFtZSwgb3IgZ2FyYmFnZSB3aGVyZSBwYWNrYWdlIG5hbWUgZXhwZWN0ZWQiCittc2dzdHIgIiIKKyJjw6JtcHVsIOKAniVz4oCdLCBsaXBzZciZdGUgbnVtZWxlIHBhY2hldHVsdWkgc2F1IGd1bm9pIHVuZGUgc2UgYciZdGVwdGEgbnVtZWxlICIKKyJwYWNoZXR1bHVpIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzozNzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBmaWVsZCwgaW52YWxpZCBwYWNrYWdlIG5hbWUgYCUuMjU1cyc6ICVzIgorbXNnc3RyICJjw6JtcHVsIOKAniVz4oCdLCBudW1lIG5ldmFsaWQgZGUgcGFjaGV0IOKAniUuMjU1c+KAnTogJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQwNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOlxuIgorIiBiYWQgdmVyc2lvbiByZWxhdGlvbnNoaXAgJWMlYyIKK21zZ3N0ciAiIgorImPDom1wdWwg4oCeJXPigJ0sIHJlZmVyaW7Im8SDIGxhIOKAniUuMjU1c+KAnTpcbiIKKyIgcmVsYcibaWUgaW5jb3JlY3TEgyBjdSBvIHZlcnNpdW5lICVjJWMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQxMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOlxuIgorIiBgJWMnIGlzIG9ic29sZXRlLCB1c2UgYCVjPScgb3IgYCVjJWMnIGluc3RlYWQiCittc2dzdHIgIiIKKyJjw6JtcHVsIOKAniVz4oCdLCByZWZlcml0b3IgbGEg4oCeJS4yNTVz4oCdOlxuIgorIiDigJ4lY+KAnSBlc3RlIMOubnZlY2hpdCwgZm9sb3NpyJtpIMOubiBzY2hpbWIg4oCeJWM94oCdIHNhdSDigJ4lYyVj4oCdIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgaW1wbGljaXQgZXhhY3QgbWF0Y2ggb24gdmVyc2lvbiBudW1iZXIsIHN1Z2dlc3QgdXNpbmcgYD0nIGluc3RlYWQiCittc2dzdHIgIiIKKyJjw6JtcHVsIOKAniVz4oCdLCByZWZlcml0b3IgbGEg4oCeJS4yNTVz4oCdOlxuIgorIiBwb3RyaXZpcmUgaW1wbGljaXTEgyBleGFjdMSDIGEgbnVtxINydWx1aSB2ZXJzaXVuaWksIHN1Z2VyxINtIGZvbG9zaXJlYSDigJ494oCdIMOubiAiCisibG9jIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MzAKK21zZ2lkICJPbmx5IGV4YWN0IHZlcnNpb25zIG1heSBiZSB1c2VkIGZvciBQcm92aWRlcyIKK21zZ3N0ciAiUGVudHJ1IFByb3ZpZGVzIHBvdCBmaSB1dGlsaXphdGUgZG9hciB2ZXJzaXVuaSBleGFjdGUiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQzNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOlxuIgorIiB2ZXJzaW9uIHZhbHVlIHN0YXJ0cyB3aXRoIG5vbi1hbHBoYW51bWVyaWMsIHN1Z2dlc3QgYWRkaW5nIGEgc3BhY2UiCittc2dzdHIgIiIKKyJjw6JtcHVsIOKAniVz4oCdLCByZWZlcml0b3IgbGEg4oCeJS4yNTVz4oCdOlxuIgorIiB2YWxvYXJlYSB2ZXJzaXVuaWkgbnUgw65uY2VwZSBjdSBjYXJhY3RlciBhbGZhbnVtZXJpYywgc3VnZXLEg20gYWTEg3VnYXJlYSAiCisidW51aSBzcGHIm2l1IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NTEgbGliL2Rwa2cvZmllbGRzLmM6NDU1CisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzogdmVyc2lvbiBjb250YWlucyBgJWMnIgorbXNnc3RyICJjw6JtcHVsIOKAniVz4oCdLCByZWZlcmluyJvEgyBsYSDigJ4lLjI1NXPigJ06IHZlcnNpdW5lYSBjb27Im2luZSDigJ4lY+KAnSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDU5CisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzogdmVyc2lvbiB1bnRlcm1pbmF0ZWQiCittc2dzdHIgImPDom1wdWwg4oCeJXPigJ0sIHJlZmVyaW7Im8SDIGxhIOKAniUuMjU1c+KAnTogdmVyc2l1bmUgbmV0ZXJtaW5hdMSDIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvICclLjI1NXMnOiBlcnJvciBpbiB2ZXJzaW9uIgorbXNnc3RyICJjw6JtcHVsIOKAniVz4oCdLCByZWZlcmluyJvEgyBsYSDigJ4lLjI1NXPigJ06IGVyb2FyZSDDrm4gdmVyc2l1bmUiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ3NQorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGZpZWxkLCBzeW50YXggZXJyb3IgYWZ0ZXIgcmVmZXJlbmNlIHRvIHBhY2thZ2UgYCUuMjU1cyciCittc2dzdHIgImPDom1wdWwg4oCeJXPigJ0sIGVyb2FyZSBzaW50YWN0aWPEgyBkdXDEgyByZWZlcmluyJthIGxhIHBhY2hldHVsIOKAniUuMjU1c+KAnSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDgyCisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlcyAoYHwnKSBub3QgYWxsb3dlZCBpbiAlcyBmaWVsZCIKK21zZ3N0ciAiYWx0ZXJuYXRpdmVsZSAo4oCefOKAnSkgbnUgc3VudCBwZXJtaXNlIMOubiBjw6JtcHVsICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1MzYKK21zZ2lkICJ2YWx1ZSBmb3IgYHRyaWdnZXJzLXBlbmRpbmcnIGZpZWxkIG5vdCBhbGxvd2VkIGluIHRoaXMgY29udGV4dCIKK21zZ3N0ciAidmFsb2FyZSBuZXBlcm1pc8SDIHBlbnRydSBjw6JtcHVsIOKAnnRyaWdnZXJzLXBlbmRpbmfigJ0gw65uIGFjZXN0IGNvbnRleHQiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU0MworIywgYy1mb3JtYXQKK21zZ2lkICJpbGxlZ2FsIHBlbmRpbmcgdHJpZ2dlciBuYW1lIGAlLjI1NXMnOiAlcyIKK21zZ3N0ciAibnVtZSBkZSBkZWNsYW7ImWF0b3Igw65uIGHImXRlcHRhcmUgbmV2YWxpZDog4oCeJS4yNTVz4oCdOiAlcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTQ3CisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBwZW5kaW5nIHRyaWdnZXIgYCUuMjU1cyciCittc2dzdHIgImRlY2xhbsiZYXRvciDDrm4gYciZdGVwdGFyZSBkdXBsaWNhdCDigJ4lLjI1NXPigJ0iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU2MQorbXNnaWQgInZhbHVlIGZvciBgdHJpZ2dlcnMtYXdhaXRlZCcgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICJ2YWxvYXJlIG5lcGVybWlzxIMgcGVudHJ1IGPDom1wdWwg4oCedHJpZ2dlcnMtYXdhaXRlZOKAnSDDrm4gYWNlc3QgY29udGV4dCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTY4CisjLCBjLWZvcm1hdAorbXNnaWQgImlsbGVnYWwgcGFja2FnZSBuYW1lIGluIGF3YWl0ZWQgdHJpZ2dlciBgJS4yNTVzJzogJXMiCittc2dzdHIgIm51bWUgbmVsZWdhbCBkZSBwYWNoZXQgw65uIGRlY2xhbsiZYXRvcnVsIGHImXRlcHRhdCDigJ4lLjI1NXPigJ06ICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIGF3YWl0ZWQgdHJpZ2dlciBwYWNrYWdlIGAlLjI1NXMnIgorbXNnc3RyICJwYWNoZXQgZGVjbGFuyJlhdG9yIGHImXRlcHRhdCBkdXBsaWNhdCDigJ4lLjI1MHPigJ0iCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzo1MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBzb3VyY2UgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAic3RhdCBpbXBvc2liaWwgcGVudHJ1IGZpyJlpZXJ1bCBzdXJzxIMg4oCeJS4yNTBz4oCdIgorCisjOiBsaWIvZHBrZy9maWxlLmM6NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoYW5nZSBvd25lcnNoaXAgb2YgdGFyZ2V0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgIm51IHNlIHBvYXRlIHNjaGltYmEgYXBhcnRlbmVuyJthIGZpyJlpZXJ1bHVpIMibaW50xIMg4oCeJS4yNTBz4oCdIgorCisjOiBsaWIvZHBrZy9maWxlLmM6NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNldCBtb2RlIG9mIHRhcmdldCBmaWxlICclLjI1MHMnIgorbXNnc3RyICJudSBzZSBwb2F0ZSBzZXRhIG1vZHVsIGZpyJlpZXJ1bHVpIMibaW50xIMg4oCeJS4yNTBz4oCdIgorCisjOiBsaWIvZHBrZy9maWxlLmM6ODUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byBjbG9zZSAlczogJXMiCittc2dpZCAidW5hYmxlIHRvIHVubG9jayAlcyIKK21zZ3N0ciAibnUgc2UgcG9hdGUgw65uY2hpZGUgJXM6ICVzIgorCisjOiBsaWIvZHBrZy9maWxlLmM6MTExCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGVjayBmaWxlICclcycgbG9jayBzdGF0dXMiCittc2dzdHIgIm51IHNlIHBvYXRlIHZlcmlmaWNhIHN0YXJlYSBibG9jxINyaWkgZmnImWllcnVsdWkg4oCeJXPigJ0iCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzoxNDYKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInN0YXR1cyBkYXRhYmFzZSBhcmVhIGlzIGxvY2tlZCBieSBhbm90aGVyIHByb2Nlc3MiCittc2dpZCAiJXMgaXMgbG9ja2VkIGJ5IGFub3RoZXIgcHJvY2VzcyIKK21zZ3N0ciAiYmF6YSBkZSBkYXRlIGVzdGUgYmxvY2F0xIMgZGUgYWx0IHByb2NlcyIKKworIzogbGliL2Rwa2cvZmlsZS5jOjE0OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIGNsb3NlICVzOiAlcyIKK21zZ2lkICJ1bmFibGUgdG8gbG9jayAlcyIKK21zZ3N0ciAibnUgc2UgcG9hdGUgw65uY2hpZGUgJXM6ICVzIgorCisjOiBsaWIvZHBrZy9sb2cuYzo1MworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBvcGVuIGxvZyBgJXMnOiAlc1xuIgorbXNnc3RyICJudSBzLWEgcHV0dXQgZGVzY2hpZGUganVybmFsdWwg4oCeJXPigJ06ICVzXG4iCisKKyM6IGxpYi9kcGtnL2xvZy5jOjg1Cittc2dpZCAiPHBhY2thZ2Ugc3RhdHVzIGFuZCBwcm9ncmVzcyBmaWxlIGRlc2NyaXB0b3I+IgorbXNnc3RyICI8ZGVzY3JpcHRvcnVsLWZpyJlpZXIgcGVudHJ1IHN0YXJlYSBwYWNoZXR1bHVpIMiZaSBwcm9ncmVzPiIKKworIzogbGliL2Rwa2cvbG9nLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSB0byBzdGF0dXMgZmQgJWQiCittc2dzdHIgIm51IHNlIHBvYXRlIHNjcmllIHN0YXR1cyBmZCAlZCIKKworIzogbGliL2Rwa2cvbWxpYi5jOjQ0IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIm1hbGxvYyBmYWlsZWQgKCVsZCBieXRlcykiCittc2dpZCAibWFsbG9jIGZhaWxlZCAoJXp1IGJ5dGVzKSIKK21zZ3N0ciAibWFsbG9jIGEgZciZdWF0ICglbGQgb2N0ZcibaSkiCisKKyM6IGxpYi9kcGtnL21saWIuYzo1OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAicmVhbGxvYyBmYWlsZWQgKCVsZCBieXRlcykiCittc2dpZCAicmVhbGxvYyBmYWlsZWQgKCV6dSBieXRlcykiCittc2dzdHIgInJlYWxsb2MgYSBlyJl1YXQgKCVsZCBvY3RlyJtpKSIKKworIzogbGliL2Rwa2cvbWxpYi5jOjcyIGxpYi9kcGtnL21saWIuYzo5MCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6Mjc3CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MzM0IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTA3Cittc2dpZCAiZmFpbGVkIHRvIGFsbG9jYXRlIG1lbW9yeSIKK21zZ3N0ciAiZciZZWMgbGEgYWxvY2FyZWEgbWVtb3JpZWkiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGR1cCBmb3Igc3RkJXMiCittc2dzdHIgImXImWVjIGxhIGR1cCBwZW50cnUgc3RkJXMiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGR1cCBmb3IgZmQgJWQiCittc2dzdHIgImXImWVjIGxhIGR1cCBwZW50cnUgZmQgJWQiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMDkKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHBpcGUiCittc2dzdHIgImXImWVjIGxhIGNyZWFyZWEgcGlwZWkiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igd3JpdGluZyB0byAnJXMnIgorbXNnc3RyICJlcm9hcmUgbGEgc2NyaWVyZWEgw65uIOKAniVz4oCdIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIGZpbGVkZXNjcmlwdG9yIGZsYWdzIGZvciAlLjI1MHMiCittc2dzdHIgIm51IHNlIHBvdCBjaXRpIGZhbmlvYW5lbGUgZGVzY3JpcHRvcnVsdWkgZGUgZmnImWllciBwZW50cnUgJS4yNTBzIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTI2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgY2xvc2Utb24tZXhlYyBmbGFnIGZvciAlLjI1MHMiCittc2dzdHIgIm51IHNlIHBvYXRlIGFjdGl2YSBmYW5pb251bCBjbG9zZS1vbi1leGVjIHBlbnRydSAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzo2MworIywgYy1mb3JtYXQKK21zZ2lkICJjb25maWd1cmF0aW9uIGVycm9yOiAlczolZDogJXMiCittc2dzdHIgImVyb2FyZSBkZSBjb25maWd1cmFyZTogJXM6JWQ6ICVzIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gY29uZmlndXJhdGlvbiBmaWxlICclLjI1NXMnIGZvciByZWFkaW5nOiAlcyIKK21zZ3N0ciAiIgorImXImWVjIGxhIGRlc2NoaWRlcmVhIGZpyJlpZXJ1bHVpIGRlIGNvbmZpZ3VyYXJlIOKAniUuMjU1c+KAnSBwZW50cnUgY2l0aXJlOiAlcyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmJhbGFuY2VkIHF1b3RlcyBpbiAnJXMnIgorbXNnc3RyICJnaGlsaW1lbGVsZSBudSBzdW50IMOubmNoaXNlIMOubiDigJ4lc+KAnSIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjExNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiAnJXMnIgorbXNnc3RyICJvcMibaXVuZSBuZWN1bm9zY3V0xIMg4oCeJXPigJ0iCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBuZWVkcyBhIHZhbHVlIgorbXNnc3RyICLigJ4lc+KAnSBuZWNlc2l0xIMgbyB2YWxvYXJlIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTI3CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgZG9lcyBub3QgdGFrZSBhIHZhbHVlIgorbXNnc3RyICLigJ4lc+KAnSBudSBpYSBuaWNpIG8gdmFsb2FyZSIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjEzMworIywgYy1mb3JtYXQKK21zZ2lkICJyZWFkIGVycm9yIGluIGNvbmZpZ3VyYXRpb24gZmlsZSBgJS4yNTVzJyIKK21zZ3N0ciAiZXJvYXJlIGRlIGNpdGlyZSDDrm4gZmnImWllcnVsIGRlIGNvbmZpZ3VyYXJlIOKAniUuMjU1c+KAnSIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nIGNvbmZpZ3VyYXRpb24gZmlsZSBgJS4yNTVzJyIKK21zZ3N0ciAiZXJvYXJlIGxhIMOubmNoaWRlcmVhIGZpyJlpZXJ1bHVpIGRlIGNvbmZpZ3VyYXJlIOKAniUuMjU1c+KAnSIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjE3MAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBvcGVuaW5nIGNvbmZpZ3VyYXRpb24gZGlyZWN0b3J5ICclcyciCittc2dzdHIgImVyb2FyZSBsYSBkZXNjaGlkZXJlYSBkaXJlY3RvcnVsdWkgZGUgY29uZmlndXJhcmUg4oCeJXPigJ0iCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gLS0lcyIKK21zZ3N0ciAib3DIm2l1bmUgbmVjdW5vc2N1dMSDIC0tJXMiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBvcHRpb24gdGFrZXMgYSB2YWx1ZSIKK21zZ3N0ciAib3DIm2l1bmVhIC0tJXMgaWEgbyB2YWxvYXJlIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjM3CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgb3B0aW9uIGRvZXMgbm90IHRha2UgYSB2YWx1ZSIKK21zZ3N0ciAib3DIm2l1bmVhIC0tJXMgbnUgaWEgbmljaSBvIHZhbG9hcmUiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyNDUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gLSVjIgorbXNnc3RyICJvcMibaXVuZSBuZWN1bm9zY3V0xIMgLSVjIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjUwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0lYyBvcHRpb24gdGFrZXMgYSB2YWx1ZSIKK21zZ3N0ciAib3DIm2l1bmVhIC0lYyBpYSBvIHZhbG9hcmUiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiLSVjIG9wdGlvbiBkb2VzIG5vdCB0YWtlIGEgdmFsdWUiCittc2dzdHIgIm9wyJtpdW5lYSAtJWMgbnUgaWEgbmljaSBvIHZhbG9hcmUiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAib2Jzb2xldGUgb3B0aW9uICctLSVzJ1xuIgorbXNnc3RyICJvcMibaXVuZSDDrm52ZWNoaXTEgyDigJ4tLSVz4oCdXG4iCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmxpY3RpbmcgYWN0aW9ucyAtJWMgKC0tJXMpIGFuZCAtJWMgKC0tJXMpIgorbXNnc3RyICJhY8ibaXVuaSDDrm4gY29uZmxpY3QgLSVjICgtLSVzKSDImWkgLSVjICgtLSVzKSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHZhbHVlIGZvciBgJXMnIGZpZWxkIgorbXNnc3RyICJ2YWxvYXJlIGR1cGxpY2F0xIMgcGVudHJ1IGPDom1wdWwg4oCeJXPigJ0iCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MTQ2CisjLCBjLWZvcm1hdAorbXNnaWQgInVzZXItZGVmaW5lZCBmaWVsZCBuYW1lIGAlLipzJyB0b28gc2hvcnQiCittc2dzdHIgIm51bWVsZSBkZSBjw6JtcCBkZWZpbml0IGRlIHV0aWxpemF0b3Ig4oCeJS4qc+KAnSBwcmVhIHNjdXJ0IgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgdmFsdWUgZm9yIHVzZXItZGVmaW5lZCBmaWVsZCBgJS4qcyciCittc2dzdHIgInZhbG9hcmUgZHVwbGljYXTEgyBwZW50cnUgY8OibXB1bCBkZWZpbml0IGRlIHV0aWxpemF0b3Ig4oCeJS4qc+KAnSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMDcKK21zZ2lkICJDb25maWd1cmVkLVZlcnNpb24gZm9yIHBhY2thZ2Ugd2l0aCBpbmFwcHJvcHJpYXRlIFN0YXR1cyIKK21zZ3N0ciAiQ29uZmlndXJlZC1WZXJzaW9uIHBlbnRydSBwYWNoZXQgY3UgU3RhdHVzIGluYWRlY3ZhdCIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzICVzIGJ1dCB0cmlnZ2VycyBhcmUgYXdhaXRlZCIKK21zZ3N0ciAicGFjaGV0dWwgYXJlIHN0YXJlYSAlcywgZGFyIGRlY2xhbsiZYXRvcmlpIHN1bnQgYciZdGVwdGHIm2kiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjIyCittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzIHRyaWdnZXJzLWF3YWl0ZWQgYnV0IG5vIHRyaWdnZXJzIGF3YWl0ZWQiCittc2dzdHIgIiIKKyJwYWNoZXR1bCBhcmUgc3RhcmVhIHRyaWdnZXJzLWF3YWl0ZWQsIGRhciBudSBzZSBhyJl0ZWFwdMSDIG5pY2kgdW4gZGVjbGFuyJlhdG9yIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjIyOAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGhhcyBzdGF0dXMgJXMgYnV0IHRyaWdnZXJzIGFyZSBwZW5kaW5nIgorbXNnc3RyICJwYWNoZXR1bCBhcmUgc3RhcmVhICVzLCBkYXIgZGVjbGFuyJlhdG9yaWkgc3VudCDDrm4gYciZdGVwdGFyZSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMzIKK21zZ2lkICJwYWNrYWdlIGhhcyBzdGF0dXMgdHJpZ2dlcnMtcGVuZGluZyBidXQgbm8gdHJpZ2dlcnMgcGVuZGluZyIKK21zZ3N0ciAiIgorInBhY2hldHVsIGFyZSBzdGFyZWEgdHJpZ2dlcnMtcGVuZGluZywgZGFyIG51IGV4aXN0xIMgbmljaSB1biBkZWNsYW7ImWF0b3Igw65uICIKKyJhyJl0ZXB0YXJlIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjI0MgorbXNnaWQgIlBhY2thZ2Ugd2hpY2ggaW4gc3RhdGUgbm90LWluc3RhbGxlZCBoYXMgY29uZmZpbGVzLCBmb3JnZXR0aW5nIHRoZW0iCittc2dzdHIgIiIKKyJQYWNoZXQgY2FyZSDDrm4gc3RhcmVhIG5vdC1pbnN0YWxsZWQgYXJlIGZpyJlpZXJlIGNvbmZmaWxlLCBzZSB1aXTEgyBkZSBlbGUiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzM1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuIHBhY2thZ2UgaW5mbyBmaWxlIGAlLjI1NXMnIGZvciByZWFkaW5nIgorbXNnc3RyICJlyJllYyBsYSBkZXNjaGlkZXJlYSBwZW50cnUgY2l0aXJlIGEgZmnImWllcnVsdWkgaW5mbyDigJ4lLjI1NXPigJ0iCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzQxCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbid0IHN0YXQgcGFja2FnZSBpbmZvIGZpbGUgYCUuMjU1cyciCittc2dzdHIgInN0YXQgaW1wb3NpYmlsIHBlbnRydSBmaciZaWVydWwgaW5mbyDigJ4lLjI1NXPigJ0iCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzQ3CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbid0IG1tYXAgcGFja2FnZSBpbmZvIGZpbGUgYCUuMjU1cyciCittc2dzdHIgIm1tYXAgaW1wb3NpYmlsIHBlbnRydSBmaciZaWVydWwgaW5mbyDigJ4lLjI1NXPigJ0iCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzUyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW4ndCBzdGF0IHBhY2thZ2UgaW5mbyBmaWxlIGAlLjI1NXMnIgorbXNnaWQgInJlYWRpbmcgcGFja2FnZSBpbmZvIGZpbGUgJyUuMjU1cyciCittc2dzdHIgInN0YXQgaW1wb3NpYmlsIHBlbnRydSBmaciZaWVydWwgaW5mbyDigJ4lLjI1NXPigJ0iCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzYzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjbG9zZSBhZnRlciByZWFkOiBgJS4yNTVzJyIKK21zZ3N0ciAiZciZZWMgbGEgw65uY2hpZGVyZSBkdXDEgyBjaXRpcmU6IOKAniUuMjU1c+KAnSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiRU9GIGFmdGVyIGZpZWxkIG5hbWUgYCUuKnMnIgorbXNnc3RyICJFT0YgZHVwxIMgbnVtZWxlIGPDom1wdWx1aSDigJ4lLipz4oCdIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQwNworIywgYy1mb3JtYXQKK21zZ2lkICJuZXdsaW5lIGluIGZpZWxkIG5hbWUgYCUuKnMnIgorbXNnc3RyICJjYXJhY3RlciBuZXdsaW5lIMOubiBudW1lbGUgY8OibXB1bHVpIOKAniUuKnPigJ0iCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDEwCisjLCBjLWZvcm1hdAorbXNnaWQgIk1TRE9TIEVPRiAoXlopIGluIGZpZWxkIG5hbWUgYCUuKnMnIgorbXNnc3RyICJNU0RPUyBFT0YgKF5aKSDDrm4gbnVtZWxlIGPDom1wdWx1aSDigJ4lLipz4oCdIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQxNAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWVsZCBuYW1lIGAlLipzJyBtdXN0IGJlIGZvbGxvd2VkIGJ5IGNvbG9uIgorbXNnc3RyICJudW1lbGUgY8OibXB1bHVpIOKAniUuKnPigJ0gdHJlYnVpZSB1cm1hdCBkZSBjYXJhY3RlcnVsIGRvdcSDIHB1bmN0ZSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiRU9GIGJlZm9yZSB2YWx1ZSBvZiBmaWVsZCBgJS4qcycgKG1pc3NpbmcgZmluYWwgbmV3bGluZSkiCittc2dzdHIgIiIKKyJFT0Ygw65uYWludGUgZGUgdmFsb2FyZWEgY8OibXB1bHVpIOKAniUuKnPigJ0gKGxpcHNlyJl0ZSBjYXJhY3RlcnVsIG5ld2xpbmUgZmluYWwpIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQyOQorIywgYy1mb3JtYXQKK21zZ2lkICJNU0RPUyBFT0YgY2hhciBpbiB2YWx1ZSBvZiBmaWVsZCBgJS4qcycgKG1pc3NpbmcgbmV3bGluZT8pIgorbXNnc3RyICIiCisiY2FyYWN0ZXIgTVNET1MgRU9GIMOubiB2YWxvYXJlYSBjw6JtcHVsdWkg4oCeJS4qc+KAnSAobGlwc2XImXRlIGNhcmFjdGVydWwgbmV3bGluZT8pIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQ0MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAibmV3bGluZSBpbiBmaWVsZCBuYW1lIGAlLipzJyIKK21zZ2lkICJibGFuayBsaW5lIGluIHZhbHVlIG9mIGZpZWxkICclLipzJyIKK21zZ3N0ciAiY2FyYWN0ZXIgbmV3bGluZSDDrm4gbnVtZWxlIGPDom1wdWx1aSDigJ4lLipz4oCdIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQ2MQorIywgYy1mb3JtYXQKK21zZ2lkICJFT0YgZHVyaW5nIHZhbHVlIG9mIGZpZWxkIGAlLipzJyAobWlzc2luZyBmaW5hbCBuZXdsaW5lKSIKK21zZ3N0ciAiRU9GIMOubiB2YWxvYXJlYSBjw6JtcHVsdWkg4oCeJS4qc+KAnSAobGlwc2XImXRlIGNhcmFjdGVydWwgbmV3bGluZSBmaW5hbCkiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NTQ2Cittc2dpZCAic2V2ZXJhbCBwYWNrYWdlIGluZm8gZW50cmllcyBmb3VuZCwgb25seSBvbmUgYWxsb3dlZCIKK21zZ3N0ciAiIgorImF1IGZvc3QgZ8SDc2l0ZSBjw6J0ZXZhIGludHLEg3JpIGRlIGluZm9ybWHIm2lpIHBlbnRydSBwYWNoZXQsIGVzdGUgcGVybWlzxIMgIgorIm51bWFpIHVuYSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo1NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gcGFja2FnZSBpbmZvcm1hdGlvbiBpbiBgJS4yNTVzJyIKK21zZ3N0ciAibmljaSBvIGluZm9ybWHIm2llIGRlc3ByZSBwYWNoZXQgw65uIOKAniUuMjU1c+KAnSIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6NDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIlcywgaW4gZmlsZSAnJS4yNTVzJyBuZWFyIGxpbmUgJWQgcGFja2FnZSAnJS4yNTVzJzpcbiIKKyN8ICIgIgorbXNnaWQgIiIKKyJwYXJzaW5nIGZpbGUgJyUuMjU1cycgbmVhciBsaW5lICVkIHBhY2thZ2UgJyUuMjU1cyc6XG4iCisiICUuMjU1cyIKK21zZ3N0ciAiIgorIiVzLCDDrm4gZmnImWllcnVsIOKAniUuMjU1c+KAnSBsw6JuZ8SDIGxpbmlhICVkIHBhY2hldHVsIOKAniUuMjU1c+KAnTpcbiIKKyIgIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzo0OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiVzLCBpbiBmaWxlICclLjI1NXMnIG5lYXIgbGluZSAlZDpcbiIKKyN8ICIgIgorbXNnaWQgIiIKKyJwYXJzaW5nIGZpbGUgJyUuMjU1cycgbmVhciBsaW5lICVkOlxuIgorIiAlLjI1NXMiCittc2dzdHIgIiIKKyIlcywgw65uIGZpyJlpZXJ1bCDigJ4lLjI1NXPigJ0gbMOibmfEgyBsaW5pYSAlZDpcbiIKKyIgIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoxMjUKK21zZ2lkICJtYXkgbm90IGJlIGVtcHR5IHN0cmluZyIKK21zZ3N0ciAibnUgcG9hdGUgZmkgZmkgyJlpciBnb2wiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjEyNworIywgZnV6enkKKyN8IG1zZ2lkICJtdXN0IHN0YXJ0IHdpdGggYW4gYWxwaGFudW1lcmljIgorbXNnaWQgIm11c3Qgc3RhcnQgd2l0aCBhbiBhbHBoYW51bWVyaWMgY2hhcmFjdGVyIgorbXNnc3RyICJ0cmVidWllIHPEgyDDrm5jZWFwxIMgY3UgdW4gYWxmYW51bWVyaWMiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjEzNgorIywgYy1mb3JtYXQKK21zZ2lkICJjaGFyYWN0ZXIgYCVjJyBub3QgYWxsb3dlZCAob25seSBsZXR0ZXJzLCBkaWdpdHMgYW5kIGNoYXJhY3RlcnMgYCVzJykiCittc2dzdHIgIiIKKyJjYXJhY3RlcnVsIOKAniVj4oCdIG51IGVzdGUgcGVybWlzIChkb2FyIGxpdGVyZSwgY2lmcmUgyJlpIGNhcmFjdGVyZWxlIOKAniVz4oCdKSIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MTc4CisjLCBmdXp6eQorI3wgbXNnaWQgIjxub25lPiIKK21zZ2N0eHQgInZlcnNpb24iCittc2dpZCAiPG5vbmU+IgorbXNnc3RyICI8bmljaSB1bnVsPiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjA5Cittc2dpZCAidmVyc2lvbiBzdHJpbmcgaXMgZW1wdHkiCittc2dzdHIgIsiZaXJ1bCB2ZXJzaXVuZSBlc3RlIGdvbCIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjI0Cittc2dpZCAidmVyc2lvbiBzdHJpbmcgaGFzIGVtYmVkZGVkIHNwYWNlcyIKK21zZ3N0ciAiyJlpcnVsIHZlcnNpdW5paSBjb27Im2luZSBzcGHIm2lpIgorCisjIOKAnmVwb2No4oCdIGVzdGUgdW4gbnVtxINyIGNhcmUgc2UgcG9hdGUgcHVuZSDDrm4gZmHIm2EgdmVyc2l1bmlpIHVudWkKKyMgcGFjaGV0IChzZXBhcmF0IGN1IGRvdcSDIHB1bmN0ZSBwZW50cnUgYSBmb3LIm2EgZHBrZyBzxIMgY29uc2lkZXJlCisjIHBhY2hldHVsIGNhIGF2w6JuZCBvIHZlcnNpdW5lIG1haSBtYXJlLiBleDogMjoxLjQuMgorIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjMwCittc2dpZCAiZXBvY2ggaW4gdmVyc2lvbiBpcyBub3QgbnVtYmVyIgorbXNnc3RyICJlcG9jYSBkaW4gdmVyc2l1bmUgbnUgZXN0ZSBudW3Eg3IiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjIzMgorbXNnaWQgIm5vdGhpbmcgYWZ0ZXIgY29sb24gaW4gdmVyc2lvbiBudW1iZXIiCittc2dzdHIgIm5pbWljIGR1cMSDIGRvdcSDIHB1bmN0ZSDDrm4gbnVtxINydWwgdmVyc2l1bmlpIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyNDcKK21zZ2lkICJ2ZXJzaW9uIG51bWJlciBkb2VzIG5vdCBzdGFydCB3aXRoIGRpZ2l0IgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjI1MAorbXNnaWQgImludmFsaWQgY2hhcmFjdGVyIGluIHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICJjYXJhY3RlciBuZXZhbGlkIMOubiBudW3Eg3J1bCBkZSB2ZXJzaXVuZSIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjU0Cittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgaW4gcmV2aXNpb24gbnVtYmVyIgorbXNnc3RyICJjYXJhY3RlciBuZXZhbGlkIMOubiBudW3Eg3J1bCBkZSByZXZpemllIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyOTkgbGliL2Rwa2cvcGFyc2VoZWxwLmM6MzExCisjLCBjLWZvcm1hdAorbXNnaWQgIm1pc3NpbmcgJXMiCittc2dzdHIgImxpcHNlyJl0ZSAlcyIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MzAxIGxpYi9kcGtnL3BhcnNlaGVscC5jOjMxNAorIywgYy1mb3JtYXQKK21zZ2lkICJlbXB0eSB2YWx1ZSBmb3IgJXMiCittc2dzdHIgInZhbG9hcmUgdmlkxIMgcGVudHJ1ICVzIgorCisjOiBsaWIvZHBrZy9wa2ctZm9ybWF0LmM6ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgYCVjJyBpbiBmaWVsZCB3aWR0aFxuIgorbXNnc3RyICJjYXJhY3RlciBuZXZhbGlkIOKAniVj4oCdIMOubiBsxIPIm2ltZWEgY8OibXB1bHVpXG4iCisKKyM6IGxpYi9kcGtnL3BrZy1mb3JtYXQuYzoxNzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2xvc2luZyBicmFjZSBtaXNzaW5nIGluIGZvcm1hdFxuIgorbXNnc3RyICJMaXBzZciZdGUgcGFyYW50ZXphIGRlIMOubmNoaWRlcmUgw65uIGZvcm1hdFxuIgorCisjOiBsaWIvZHBrZy9wa2ctc2hvdy5jOjQwCittc2dpZCAiKG5vIGRlc2NyaXB0aW9uIGF2YWlsYWJsZSkiCittc2dzdHIgIihuaWNpIG8gZGVzY3JpZXJlIGRpc3BvbmliaWzEgykiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzo1NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaWdub3JlIHNpZ25hbCAlcyBiZWZvcmUgcnVubmluZyAlLjI1MHMiCittc2dzdHIgIm51IHNlIHBvYXRlIGlnbm9yYSBzZW1uYWx1bCAlcyDDrm5haW50ZSBkZSBydWxhcmVhICUuMjUwcyIKKworIyDigJ5lbGliZXJhcmXigJ0gZXN0ZSDigJ5yZWxlYXNl4oCdIG51IOKAnnVuLWNhdGNo4oCdLCBvYXJlIGFyIHRyZWJ1aSBsxINzYXQgbmV0cmFkdXM/CisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgdW4tY2F0Y2hpbmcgc2lnbmFsICVzOiAlc1xuIgorbXNnc3RyICJlcm9hcmUgbGEgZWxpYmVyYXJlYSBzZW1uYWx1bHVpICVzOiAlc1xuIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgKHN1YnByb2Nlc3MpOiAlc1xuIgorbXNnc3RyICIlcyAoc3VicHJvY2VzKTogJXNcbiIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjg5IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo0NTQKK21zZ2lkICJmb3JrIGZhaWxlZCIKK21zZ3N0ciAiZm9yayBhIGXImXVhdCIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjExOQorIywgYy1mb3JtYXQKK21zZ2lkICJzdWJwcm9jZXNzICVzIHJldHVybmVkIGVycm9yIGV4aXQgc3RhdHVzICVkIgorbXNnc3RyICJzdWJwcm9jZXN1bCAlcyBhIHJldHVybmF0IHN0YXJlYSBkZSBlcm9hcmUgbGEgaWXImWlyZSAlZCIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEyOAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAid2FpdCBmb3Igc3VicHJvY2VzcyAlcyBmYWlsZWQiCittc2dpZCAic3VicHJvY2VzcyAlcyB3YXMgaW50ZXJydXB0ZWQiCittc2dzdHIgImHImXRlcHRhcmVhIGR1cMSDIHN1Yi1wcm9jZXN1bCAlcyBhIGXImXVhdCIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEzMAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic3VicHJvY2VzcyAlcyBraWxsZWQgYnkgc2lnbmFsICglcyklcyIKK21zZ2lkICJzdWJwcm9jZXNzICVzIHdhcyBraWxsZWQgYnkgc2lnbmFsICglcyklcyIKK21zZ3N0ciAic3VicHJvY2VzICVzIG9tb3LDonQgZGUgc2VtbmFsdWwgKCVzKSVzIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTMyCittc2dpZCAiLCBjb3JlIGR1bXBlZCIKK21zZ3N0ciAiLCBzLWEgYXJ1bmNhdCBudWNsZXVsIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgInN1YnByb2Nlc3MgJXMgZmFpbGVkIHdpdGggd2FpdCBzdGF0dXMgY29kZSAlZCIKK21zZ3N0ciAic3VicHJvY2VzdWwgJXMgYSBlyJl1YXQgY3UgY29kdWwgc3TEg3JpaSBkZSBhyJl0ZXB0YXJlICVkIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTUxIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo0NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAid2FpdCBmb3Igc3VicHJvY2VzcyAlcyBmYWlsZWQiCittc2dzdHIgImHImXRlcHRhcmVhIGR1cMSDIHN1Yi1wcm9jZXN1bCAlcyBhIGXImXVhdCIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBwYWNrYWdlIG5hbWUgYCUuMjUwcycgaW4gdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorIm51bWUgZGUgcGFjaGV0IG5ldmFsaWQg4oCeJS4yNTBz4oCdIMOubiBmaciZaWVydWwgZGUgZGVjbGFuyJlhdG9yaSBhbcOibmHIm2kg4oCeJS4yNTBz4oCdIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDo4MQorIywgYy1mb3JtYXQKK21zZ2lkICJ0cnVuY2F0ZWQgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiZmnImWllciB0cnVuY2hpYXQgZGUgZGVjbGFuyJlhdG9yaSBhbcOibmHIm2kg4oCeJS4yNTBz4oCdIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDo4NQorIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyBhdCBjaGFyYWN0ZXIgYCVzJyVzIgorbXNnc3RyICIiCisiZXJvYXJlIGRlIHNpbnRheMSDIMOubiBmaciZaWVydWwgZGUgZGVjbGFuyJlhdG9yaSBhbcOibmHIm2kg4oCeJS4yNTBz4oCdIGxhIGNhcmFjdGVydWwgIgorIuKAniVz4oCdJXMiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3Blbi9jcmVhdGUgdHJpZ2dlcnMgbG9ja2ZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKyJudSBzZSBwb2F0ZSBkZXNjaGlkZS9jcmVhIGZpyJlpZXJ1bCBkZSBibG9jYXJlIHBlbnRydSBkZWNsYW7ImWF0b3JpIOKAniUuMjUwc+KAnSIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MTQxCisjLCBmdXp6eQorI3wgbXNnaWQgInRyaWdnZXJlZCIKK21zZ2lkICJ0cmlnZ2VycyBhcmVhIgorbXNnc3RyICJkZWNsYW7ImWF0IgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAic3RhdCBpbXBvc2liaWwgcGVudHJ1IGZpyJlpZXJ1bCBjdSBkZWNsYW7ImWF0b3JpIGFtw6JuYcibaSDigJ4lLjI1MHPigJ0iCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjE2NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJudSBzZSBwb2F0ZSBkZXNjaGlkZSBmaciZaWVydWwgY3UgZGVjbGFuyJlhdG9yaSBhbcOibmHIm2kg4oCeJS4yNTBz4oCdIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4vY3JlYXRlIG5ldyB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJudSBzZSBwb2F0ZSBkZXNjaGlkZS9jcmVhIG5vdWwgZmnImWllciBjdSBkZWNsYW7ImWF0b3JpIGFtw6JuYcibaSDigJ4lLjI1MHPigJ0iCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjIxNQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciByZWFkaW5nIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImVyb2FyZSBsYSBjaXRpcmVhIGZpyJlpZXJ1bHVpIGN1IGRlY2xhbsiZYXRvcmkgYW3Dom5hyJtpIOKAniUuMjUwc+KAnSIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MjIzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibnUgc2UgcG9hdGUgc2NyaWUgbm91bCBmaciZaWVyIGN1IGRlY2xhbsiZYXRvcmkgYW3Dom5hyJtpIOKAniUuMjUwc+KAnSIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MjI4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibnUgc2UgcG9hdGUgw65uY2hpZGUgbm91bCBmaciZaWVyIGN1IGRlY2xhbsiZYXRvcmkgYW3Dom5hyJtpIOKAniUuMjUwc+KAnSIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MjMyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJudSBzZSBwb2F0ZSBpbnN0YWxhIG5vdWwgZmnImWllciBjdSBkZWNsYW7ImWF0b3JpIGFtw6JuYcibaSDigJ4lLjI1MHPigJ0iCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzoyMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImludmFsaWQgb3IgdW5rbm93biBzeW50YXggaW4gdHJpZ2dlciBuYW1lIGAlLjI1MHMnIChpbiB0cmlnZ2VyIGludGVyZXN0cyBmb3IgIgorInBhY2thZ2UgYCUuMjUwcycpIgorbXNnc3RyICIiCisic2ludGF4xIMgbmV2YWxpZMSDIHNhdSBuZWN1bm9zY3V0xIMgw65uIG51bWVsZSBkZWNsYW7ImWF0b3J1bHVpIOKAniUuMjUwc+KAnSAow65uICIKKyJpbnRlcmVzZWxlIMOubiBkZWNsYW7ImWF0b3JpIGFsZSBwYWNoZXR1bHVpIOKAniUuMjUwc+KAnSkiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzoyNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gdHJpZ2dlciBpbnRlcmVzdCBsaXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm51IHNlIHBvYXRlIGRlc2NoaWRlIG5vdWwgZmnImWllciBjdSBpbnRlcmVzZSDDrm4gZGVjbGFuyJlhdG9yaSDigJ4lLjI1MHPigJ0iCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzoyOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJld2luZCB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm51IHNlIHBvYXRlIHJlZmFjZSBmaciZaWVydWwgY3UgaW50ZXJlc2Ugw65uIGRlY2xhbsiZYXRvcmkg4oCeJS4yNTBz4oCdIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzA1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcycgc3ludGF4IGVycm9yOyBpbGxlZ2FsIHBhY2thZ2UgbmFtZSBgJS4yNTBzJzogIgorIiUuMjUwcyIKK21zZ3N0ciAiIgorImVyb2FyZSBkZSBzaW50YXjEgyDDrm4gZmnImWllcnVsIGN1IGludGVyZXNlIMOubiBkZWNsYW7ImWF0b3JpIOKAniUuMjUwc+KAnTsgbnVtZSAiCisibmVsZWdhbCBkZSBwYWNoZXQg4oCeJS4yNTBz4oCdOiAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm51IHNlIHBvYXRlIHNjcmllIHVuIG5vdSBmaciZaWVyIGN1IGludGVyZXNlIMOubiBkZWNsYW7ImWF0b3JpIOKAniUuMjUwc+KAnSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMyMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAiIgorImZsdXNoIGltcG9zaWJpbCBwZW50cnUgbm91bCBmaciZaWVyIGN1IGludGVyZXNlIMOubiBkZWNsYW7ImWF0b3JpIOKAniUuMjUwc+KAnSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMyNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlICclLjI1MHMnIgorbXNnc3RyICJzeW5jIGltcG9zaWJpbCBwZW50cnUgbm91bCBmaciZaWVyIGN1IGludGVyZXNlIMOubiBkZWNsYW7ImWF0b3JpIOKAniUuMjUwc+KAnSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMzMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisibnUgc2UgcG9hdGUgaW5zdGFsYSBub3VsIGZpyJlpZXIgYWwgaW50ZXJlc2Vsb3Igw65uIGRlY2xhbsiZYXRvcmkg4oCeJS4yNTVz4oCdIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzQwIGxpYi9kcGtnL3RyaWdsaWIuYzozNDIgbGliL2Rwa2cvdHJpZ2xpYi5jOjQ3MgorIzogc3JjL3JlbW92ZS5jOjI4NiBzcmMvcmVtb3ZlLmM6Mzc3CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZW1vdmUgYCUuMjUwcyciCittc2dzdHIgIm51IHNlIHBvYXRlIMiZdGVyZ2Ug4oCeJS4yNTBz4oCdIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzYwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibnUgc2UgcG9hdGUgY3JlYSB1biBub3UgZmnImWllciBjdSBpbnRlcmVzZSDDrm4gZGVjbGFuyJlhdG9yaSDigJ4lLjI1MHPigJ0iCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozODMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm51IHNlIHBvYXRlIMOubmNoaWRlIG5vdWwgZmnImWllciBjdSBpbnRlcmVzZSDDrm4gZGVjbGFuyJlhdG9yaSDigJ4lLjI1MHPigJ0iCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0NTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImR1cGxpY2F0ZSBmaWxlIHRyaWdnZXIgaW50ZXJlc3QgZm9yIGZpbGVuYW1lIGAlLjI1MHMnIGFuZCBwYWNrYWdlIGAlLjI1MHMnIgorbXNnc3RyICIiCisiaW50ZXJlcyDDrm4gZGVjbGFuyJlhdG9yIGR1cGxpY2F0IHBlbnRydSBudW1lbGUgZGUgZmnImWllciDigJ4lLjI1MHPigJ0gyJlpIHBhY2hldHVsICIKKyLigJ4lLjI1MHPigJ0iCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJudSBzZSBwb2F0ZSBjcmVhIG5vdWwgZmnImWllciBkZSBkZWNsYW7ImWF0b3JpIGZpyJlpZXIg4oCeJS4yNTBz4oCdIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDkzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJudSBzZSBwb2F0ZSBzY3JpZSBub3VsIGZpyJlpZXIgZGUgZGVjbGFuyJlhdG9yaSBmaciZaWVyIOKAniUuMjUwc+KAnSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ5NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAiZmx1c2ggaW1wb3NpYmlsIHBlbnRydSBub3VsIGZpyJlpZXIgY3UgZGVjbGFuyJlhdG9yaSBmaciZaWVyIOKAniUuMjUwc+KAnSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ5OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlICclLjI1MHMnIgorbXNnc3RyICJzeW5jIGltcG9zaWJpbCBwZW50cnUgbm91bCBmaciZaWVyIGN1IGRlY2xhbsiZYXRvcmkgZmnImWllciDigJ4lLjI1MHPigJ0iCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1MDMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm51IHNlIHBvYXRlIMOubmNoaWRlIG5vdWwgZmnImWllciBjdSBkZWNsYW7ImWF0b3JpIGZpyJlpZXIg4oCeJS4yNTBz4oCdIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTA3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgYXMgYCUuMjUwcyciCittc2dzdHIgIm51IHNlIHBvYXRlIGluc3RhbGEgbm91bCBmaciZaWVyIGN1IGRlY2xhbsiZYXRvcmkgZmnImWllciDigJ4lLjI1MHPigJ0iCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1NDIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJudSBzZSBwb2F0ZSBjaXRpIGZpyJlpZXJ1bCBjdSBkZWNsYW7ImWF0b3JpIGZpyJlpZXIg4oCeJS4yNTBz4oCdIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTUyCisjLCBjLWZvcm1hdAorbXNnaWQgInN5bnRheCBlcnJvciBpbiBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImVyb2FyZSBkZSBzaW50YXjEgyDDrm4gZmnImWllcnVsIGN1IGRlY2xhbsiZYXRvcmkgZmnImWllciDigJ4lLjI1NXPigJ0iCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImZpbGUgdHJpZ2dlcnMgcmVjb3JkIG1lbnRpb25zIGlsbGVnYWwgcGFja2FnZSBuYW1lIGAlLjI1MHMnIChmb3IgaW50ZXJlc3QgaW4gIgorImZpbGUgYCUuMjUwcycpOiAlLjI1MHMiCittc2dzdHIgIiIKKyLDrm5yZWdpc3RyYXJlYSBkZWNsYW7ImWF0b3JpbG9yIGZpyJlpZXIgbWVuyJtpb25lYXrEgyB1biBudW1lIG5lbGVnYWwgZGUgcGFjaGV0ICIKKyLigJ4lLjI1MHPigJ0gKHBlbnRydSBpbnRlcmVzIGZhyJthIGRlIGZpyJlpZXJ1bCDigJ4lLjI1MHPigJ0pOiAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo2NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInRyaWdnZXJzIGNpIGZpbGUgYCUuMjUwcycgY29udGFpbnMgaWxsZWdhbCB0cmlnZ2VyIHN5bnRheCBpbiB0cmlnZ2VyIG5hbWUgYCIKKyIlLjI1MHMnOiAlLjI1MHMiCittc2dzdHIgIiIKKyJmaciZaWVydWwgY3UgZGVjbGFuyJlhdG9yaSBjaSDigJ4lLjI1MHPigJ0gY29uyJtpbmUgc2ludGF4xIMgbmVsZWdhbMSDIMOubiBudW1lbGUgIgorImRlY2xhbsiZYXRvcnVsdWkg4oCeJS4yNTBz4oCdOiAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo2ODQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gdHJpZ2dlcnMgY2kgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibnUgc2UgcG9hdGUgZGVzY2hpZGUgZmnImWllcnVsIGN1IGRlY2xhbsiZYXRvcmkgY2kg4oCeJS4yNTBz4oCdIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Njk5Cittc2dpZCAidHJpZ2dlcnMgY2kgZmlsZSBjb250YWlucyB1bmtub3duIGRpcmVjdGl2ZSBzeW50YXgiCittc2dzdHIgIiIKKyJmaciZaWVydWwgY3UgZGVjbGFuyJlhdG9yaSBjaSBjb27Im2luZSBvIHNpbnRheMSDIG5lY3Vub3NjdXTEgyBwZW50cnUgZGlyZWN0aXZlIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NzEyCisjLCBjLWZvcm1hdAorbXNnaWQgInRyaWdnZXJzIGNpIGZpbGUgY29udGFpbnMgdW5rbm93biBkaXJlY3RpdmUgYCUuMjUwcyciCittc2dzdHIgImZpyJlpZXJ1bCBjdSBkZWNsYW7ImWF0b3JpIGNpIGNvbsibaW5lIG8gZGlyZWN0aXbEgyBuZWN1bm9zY3V0xIMg4oCeJS4yNTBz4oCdIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Nzc2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdHJpZ2dlcnMgc3RhdGUgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICJudSBzZSBwb2F0ZSBjcmVhIGRpcmVjdG9ydWwgY3Ugc3TEg3JpIGFsZSBkZWNsYW7ImWF0b3JpbG9yIOKAniUuMjUwc+KAnSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjc3OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IG93bmVyc2hpcCBvZiB0cmlnZ2VycyBzdGF0ZSBkaXJlY3RvcnkgYCUuMjUwcyciCittc2dzdHIgIiIKKyJudSBzZSBwb2F0ZSBhanVzdGEgYXBhcnRlbmVuyJthIGRpcmVjdG9ydWx1aSBjdSBzdMSDcmkgYWxlIGRlY2xhbsiZYXRvcmlsb3IgIgorIuKAniUuMjUwc+KAnSIKKworIzogbGliL2Rwa2cvdHJpZ25hbWUuYzozNAorbXNnaWQgImVtcHR5IHRyaWdnZXIgbmFtZXMgYXJlIG5vdCBwZXJtaXR0ZWQiCittc2dzdHIgIm51IHNlIHBlcm1pdCBudW1lIHZpZGUgZGUgZGVjbGFuyJlhdG9yaSIKKworIzogbGliL2Rwa2cvdHJpZ25hbWUuYzozOAorbXNnaWQgInRyaWdnZXIgbmFtZSBjb250YWlucyBpbnZhbGlkIGNoYXJhY3RlciIKK21zZ3N0ciAibnVtZWxlIGRlIGRlY2xhbsiZYXRvciBjb27Im2luZSB1biBjYXJhY3RlciBuZXZhbGlkIgorCisjOiBsaWIvZHBrZy91dGlscy5jOjU2CisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWQgZXJyb3IgaW4gYCUuMjUwcyciCittc2dzdHIgImVyb2FyZSBkZSBjaXRpcmUgw65uIOKAniUuMjUwc+KAnSIKKworIzogbGliL2Rwa2cvdXRpbHMuYzo2MQorIywgYy1mb3JtYXQKK21zZ2lkICJmZ2V0cyBnYXZlIGFuIGVtcHR5IHN0cmluZyBmcm9tIGAlLjI1MHMnIgorbXNnc3RyICJmZ2V0cyBhIGRhdCB1biDImWlyIGdvbCBkaW4g4oCeJS4yNTBz4oCdIgorCisjOiBsaWIvZHBrZy91dGlscy5jOjYzCisjLCBjLWZvcm1hdAorbXNnaWQgInRvby1sb25nIGxpbmUgb3IgbWlzc2luZyBuZXdsaW5lIGluIGAlLjI1MHMnIgorbXNnc3RyICJsaW5pZSBwcmVhIGx1bmfEgyBzYXUgY2FyYWN0ZXIgbmV3bGluZSBsaXBzxIMgw65uIGZpyJlpZXJ1bCAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL3V0aWxzLmM6NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgcmVhZGluZyBgJS4yNTBzJyIKK21zZ3N0ciAiZW9mIG5lYciZdGVwdGF0IGxhIGNpdGlyZWEgbHVpIOKAniUuMjUwc+KAnSIKKworIzogbGliL2Rwa2cvdmFyYnVmLmM6ODIgbGliL2Rwa2cvdmFyYnVmLmM6ODgKK21zZ2lkICJlcnJvciBmb3JtYXR0aW5nIHN0cmluZyBpbnRvIHZhcmJ1ZiB2YXJpYWJsZSIKK21zZ3N0ciAiZXJvYXJlIGxhIGZvcm1hdGFyZWEgyJlpcnVsdWkgw65udHItbyB2YXJpYWJpbMSDIOKAnnZhcmJ1ZuKAnSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTc5IHNyYy9hcmNoaXZlcy5jOjIwMCBzcmMvYXJjaGl2ZXMuYzo3MjQKK21zZ2lkICJlcnJvciByZWFkaW5nIGZyb20gZHBrZy1kZWIgcGlwZSIKK21zZ3N0ciAiZXJvYXJlIGxhIGNpdGlyZWEgZGluIHBpcGEgZHBrZy1kZWIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjE5NQorIywgYy1mb3JtYXQKK21zZ2lkICJza2lwcGVkIHVucGFja2luZyBmaWxlICclLjI1NXMnIChyZXBsYWNlZCBvciBleGNsdWRlZD8pIgorbXNnc3RyICJzLWEgb21pcyBkZXNwYWNoZXRhcmVhIGZpyJlpZXJ1bHVpIOKAniUuMjU1c+KAnSAow65ubG9jdWl0IHNhdSBleGNsdXM/KSIKKworIzogc3JjL2FyY2hpdmVzLmM6MjQ2IHNyYy9hcmNoaXZlcy5jOjI1MAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIHRpbWVzdGFtcHMgb2YgYCUuMjU1cyciCittc2dzdHIgImVyb2FyZSBsYSBzZXRhcmVhIG1hcmNhanVsdWkgZGUgdGltcCBwZW50cnUg4oCeJS4yNTVz4oCdIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoyNjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igc2V0dGluZyBvd25lcnNoaXAgb2Ygc3ltbGluayBgJS4yNTVzJyIKK21zZ3N0ciAiZXJvYXJlIGxhIHNldGFyZWEgYXBhcnRlbmVuyJtlaSBsZWfEg3R1cmlpIHNpbWJvbGljZSDigJ4lLjI1NXPigJ0iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjI2NSBzcmMvYXJjaGl2ZXMuYzo3MzQgc3JjL3N0YXRjbWQuYzoxNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igc2V0dGluZyBvd25lcnNoaXAgb2YgYCUuMjU1cyciCittc2dzdHIgImVyb2FyZSBsYSBzZXRhcmVhIGFwYXJ0ZW5lbsibZWkgcGVudHJ1IOKAniUuMjU1c+KAnSIKKworIzogc3JjL2FyY2hpdmVzLmM6MjY3IHNyYy9hcmNoaXZlcy5jOjczNiBzcmMvc3RhdGNtZC5jOjE2NQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIHBlcm1pc3Npb25zIG9mIGAlLjI1NXMnIgorbXNnc3RyICJlcm9hcmUgbGEgc2V0YXJlYSBwZXJtaXNpdW5pbG9yIHBlbnRydSDigJ4lLjI1NXPigJ0iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjM5NQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gc3RhdCAoZGVyZWZlcmVuY2UpIGV4aXN0aW5nIHN5bWxpbmsgYCUuMjUwcyciCittc2dzdHIgIiIKKyJlyJllYyBsYSBzdGF0IChkZXJlZmVyZW5jZSkgcGVudHJ1IGxlZ8SDdHVyYSBzaW1ib2xpY8SDIGV4aXN0ZW50xIMg4oCeJS4yNTBz4oCdIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo0MTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImZhaWxlZCB0byBzdGF0IChkZXJlZmVyZW5jZSkgcHJvcG9zZWQgbmV3IHN5bWxpbmsgdGFyZ2V0IGAlLjI1MHMnIGZvciAiCisic3ltbGluayBgJS4yNTBzJyIKK21zZ3N0ciAiIgorImXImWVjIGxhIHN0YXQgKGRlcmVmZXJlbmNlKSBwZW50cnUgyJtpbnRhIGxlZ8SDdHVyaWkgc2ltYm9saWNlIG5vdSBwcm9wdXNlICIKKyLigJ4lLjI1MHPigJ0gcGVudHJ1IGxlZ8SDdHVyYSBzaW1ib2xpY8SDIOKAniUuMjUwc+KAnSIKKworIzogc3JjL2FyY2hpdmVzLmM6NDc1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ0cnlpbmcgdG8gb3ZlcndyaXRlIGAlLjI1MHMnLCB3aGljaCBpcyB0aGUgZGl2ZXJ0ZWQgdmVyc2lvbiBvZiBgIgorIiUuMjUwcycgKHBhY2thZ2U6ICUuMTAwcykiCittc2dzdHIgIiIKKyJzZSDDrm5jZWFyY8SDIHN1cHJhc2NyaWVyZWEgbHVpIOKAniUuMjUwc+KAnSwgY2FyZSBlc3RlIG8gdmVyc2l1bmUgcmVkaXJlY3RhdMSDIGEgIgorImx1aSDigJ4lLjI1MHPigJ0gKHBhY2hldHVsOiAlLjEwMHMpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo0ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJ5aW5nIHRvIG92ZXJ3cml0ZSBgJS4yNTBzJywgd2hpY2ggaXMgdGhlIGRpdmVydGVkIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dzdHIgIiIKKyJzZSDDrm5jZWFyY8SDIHN1cHJhc2NyaWVyZWEgbHVpIOKAniUuMjUwc+KAnSwgY2FyZSBlc3RlIHZlcnNpdW5lYSByZWRpcmVjdGF0xIMgYSAiCisibHVpIOKAniUuMjUwc+KAnSIKKworIzogc3JjL2FyY2hpdmVzLmM6NTExCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGAlLjI1NXMnICh3aGljaCBJIHdhcyBhYm91dCB0byBpbnN0YWxsKSIKK21zZ3N0ciAic3RhdCBpbXBvc2liaWwgcGVudHJ1IOKAniUuMjU1c+KAnSAoY2FyZSB1cm1hIHPEgyBmaWUgaW5zdGFsYXQpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo1MTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVuYWJsZSB0byBjbGVhbiB1cCBtZXNzIHN1cnJvdW5kaW5nIGAlLjI1NXMnIGJlZm9yZSBpbnN0YWxsaW5nIGFub3RoZXIgIgorInZlcnNpb24iCittc2dzdHIgIiIKKyJudSBzZSBwb2F0ZSBjdXLEg8ibYSBtaXplcmlhIGRpbiBqdXJ1bCBsdWkg4oCeJS4yNTVz4oCdIMOubmFpbnRlIGRlIGEgaW5zdGFsYSBhbHTEgyAiCisidmVyc2l1bmUiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjUyNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCByZXN0b3JlZCBgJS4yNTVzJyBiZWZvcmUgaW5zdGFsbGluZyBhbm90aGVyIHZlcnNpb24iCittc2dzdHIgIiIKKyJzdGF0IGltcG9zaWJpbCBwZW50cnUg4oCeJS4yNTVz4oCdIHJlc3RhdXJhdCDDrm5haW50ZWEgaW5zdGFsxINyaWkgYWx0ZWkgdmVyc2l1bmkiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjU2MQorIywgYy1mb3JtYXQKK21zZ2lkICJhcmNoaXZlIGNvbnRhaW5lZCBvYmplY3QgYCUuMjU1cycgb2YgdW5rbm93biB0eXBlIDB4JXgiCittc2dzdHIgImFyaGl2YSBjb27Im2luZSBvYmllY3R1bCDigJ4lLjI1NXPigJ0gZGUgdGlwIG5lY3Vub3NjdXQgMHgleCIKKworIzogc3JjL2FyY2hpdmVzLmM6NjI2IHNyYy9kaXZlcnRjbWQuYzoxNTAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjY4MgorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMjIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyODQKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNDQxIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNjgwCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE2NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI0NAorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHN0YXQgZmlsZSAnJXMnIgorbXNnc3RyICJzdGF0IGltcG9zaWJpbCBwZW50cnUgZmnImWllcnVsIOKAniVz4oCdIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVwbGFjaW5nIGZpbGVzIGluIG9sZCBwYWNrYWdlICVzIC4uLlxuIgorbXNnc3RyICJTZSDDrm5sb2N1aWVzYyBmaciZaWVyZWxlIGRpbiBwYWNoZXR1bCB2ZWNoaSAlcyAuLi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6NjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlcGxhY2VkIGJ5IGZpbGVzIGluIGluc3RhbGxlZCBwYWNrYWdlICVzIC4uLlxuIgorbXNnc3RyICLDjm5sb2N1aXRlIGRlIGZpyJlpZXJlbGUgZGluIHBhY2hldHVsIGluc3RhbGF0ICVzIC4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInRyeWluZyB0byBvdmVyd3JpdGUgZGlyZWN0b3J5ICclLjI1MHMnIGluIHBhY2thZ2UgJS4yNTBzICUuMjUwcyB3aXRoICIKKyJub25kaXJlY3RvcnkiCittc2dzdHIgIiIKKyJzZSDDrm5jZWFyY8SDIHN1cHJhc2NyaWVyZWEgZGlyZWN0b3J1bHVpIOKAniUuMjUwc+KAnSBkaW4gcGFjaGV0dWwgJS4yNTBzICUuMjUwcyAiCisiY3UgdW4gbm9uLWRpcmVjdG9yIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJ5aW5nIHRvIG92ZXJ3cml0ZSAnJS4yNTBzJywgd2hpY2ggaXMgYWxzbyBpbiBwYWNrYWdlICUuMjUwcyAlLjI1MHMiCittc2dzdHIgIiIKKyJzZSDDrm5jZWFyY8SDIHN1cHJhc2NyaWVyZWEg4oCeJS4yNTBz4oCdLCBjYXJlIGVzdGUgyJlpIMOubiBwYWNoZXR1bCAlLjI1MHMgJS4yNTBzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3MTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBgJS4yNTVzJyAod2hpbGUgcHJvY2Vzc2luZyBgJS4yNTVzJykiCittc2dzdHIgImXImWVjIGxhIGNyZWFyZWEg4oCeJS4yNTVz4oCdICjDrm4gdGltcHVsIHByb2Nlc8SDcmlpIOKAniUuMjU1c+KAnSkiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjcxOAorIywgYy1mb3JtYXQKK21zZ2lkICJiYWNrZW5kIGRwa2ctZGViIGR1cmluZyBgJS4yNTVzJyIKK21zZ3N0ciAiYmFja2VuZCBkcGtnLWRlYiDDrm4gdGltcHVsIOKAniUuMjU1c+KAnSIKKworIzogc3JjL2FyY2hpdmVzLmM6NzQ0IHNyYy9hcmNoaXZlcy5jOjkwOCBzcmMvYXJjaGl2ZXMuYzo5NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZy93cml0aW5nIGAlLjI1NXMnIgorbXNnc3RyICJlcm9hcmUgbGEgw65uY2hpZGVyZWEvc2NyaWVyZWEg4oCeJS4yNTVz4oCdIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgcGlwZSBgJS4yNTVzJyIKK21zZ3N0ciAiZXJvYXJlIGxhIGNyZWFyZWEgcGlwZWkg4oCeJS4yNTVz4oCdIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NTMgc3JjL2FyY2hpdmVzLmM6NzU4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIGRldmljZSBgJS4yNTVzJyIKK21zZ3N0ciAiZXJvYXJlIGxhIGNyZWFyZWEgZGlzcG96aXRpdnVsdWkg4oCeJS4yNTVz4oCdIgorCisjIGhhcmQgbGluayBlc3RlIHVuIGFsdCBudW1lIHBlbnRydSB1biB0YXJnZXQgyJlpIHNwcmUKKyMgZGVvc2ViaXJlIGRlIHN5bWJvbGljIGxpbmssIHRhcmdldCBvYmxpZ2F0b3JpdSB0cmVidWllCisjIHPEgyBleGlzdGUKKyM6IHNyYy9hcmNoaXZlcy5jOjc3MQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBoYXJkIGxpbmsgYCUuMjU1cyciCittc2dzdHIgImVyb2FyZSBsYSBjcmVhcmVhIGxlZ8SDdHVyaWkgaGFyZCDigJ4lLjI1NXPigJ0iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc3NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NTM5CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIHN5bWJvbGljIGxpbmsgYCUuMjU1cyciCittc2dzdHIgImVyb2FyZSBsYSBjcmVhcmVhIGxlZ8SDdHVyaWkgc2ltYm9saWNlIOKAniUuMjU1c+KAnSIKKworIzogc3JjL2FyY2hpdmVzLmM6NzgzCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIGRpcmVjdG9yeSBgJS4yNTVzJyIKK21zZ3N0ciAiZXJvYXJlIGxhIGNyZWFyZWEgZGlyZWN0b3J1bHVpIOKAniUuMjU1c+KAnSIKKworIzogc3JjL2FyY2hpdmVzLmM6ODIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBtb3ZlIGFzaWRlIGAlLjI1NXMnIHRvIGluc3RhbGwgbmV3IHZlcnNpb24iCittc2dzdHIgIm51IHNlIHBvYXRlIMOubmRlcMSDcnRhIOKAniUuMjU1c+KAnSBwZW50cnUgaW5zdGFsYXJlYSBub2lpIHZlcnNpdW5pIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4MzIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjMyMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBsaW5rIGAlLjI1NXMnIgorbXNnc3RyICJudSBzZSBwb2F0ZSBjaXRpIGxlZ8SDdHVyYSDigJ4lLjI1NXPigJ0iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjgzNCBzcmMvY29uZmlndXJlLmM6NDIzCisjLCBjLWZvcm1hdAorbXNnaWQgInN5bWJvbGljIGxpbmsgJyUuMjUwcycgc2l6ZSBoYXMgY2hhbmdlZCBmcm9tICVqZCB0byAlemQiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6ODM5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBtYWtlIGJhY2t1cCBzeW1saW5rIGZvciBgJS4yNTVzJyIKK21zZ3N0ciAibnUgc2UgcG9hdGUgY3JlYSBsZWfEg3R1csSDIHNpbWJvbGljxIMgY29waWUgZGUgc2lndXJhbsibxIMgcGVudHJ1IOKAniUuMjU1c+KAnSIKKworIzogc3JjL2FyY2hpdmVzLmM6ODQxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaG93biBiYWNrdXAgc3ltbGluayBmb3IgYCUuMjU1cyciCittc2dzdHIgIiIKKyJjaG93biBpbXBvc2liaWwgcGVudHJ1IGxlZ8SDdHVyYSBzaW1ib2xpY8SDIGNvcGllIGRlIHNpZ3VyYW7Im8SDIHBlbnRydSDigJ4lLjI1NXPigJ0iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjg0NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gbWFrZSBiYWNrdXAgbGluayBvZiBgJS4yNTVzJyBiZWZvcmUgaW5zdGFsbGluZyBuZXcgdmVyc2lvbiIKK21zZ3N0ciAiIgorIm51IHNlIHBvYXRlIGZhY2UgbGVnxIN0dXLEgyBjb3BpZSBkZSBzaWd1cmFuyJvEgyBsdWkg4oCeJS4yNTVz4oCdIMOubmFpbnRlIGRlICIKKyJpbnN0YWxhcmVhIG5vaWkgdmVyc2l1bmkiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjg2MyBzcmMvYXJjaGl2ZXMuYzo5NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IHZlcnNpb24gb2YgYCUuMjU1cyciCittc2dzdHIgIm51IHNlIHBvYXRlIGluc3RhbGEgbm91YSB2ZXJzaXVuZSBhIGx1aSDigJ4lLjI1NXPigJ0iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjkwMiBzcmMvYXJjaGl2ZXMuYzo5NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gJyUuMjU1cyciCittc2dzdHIgIm51IHNlIHBvYXRlIGRlc2NoaWRlICclLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo5NDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgZmlsZSAnJS4yNTVzJyIKK21zZ3N0ciAic3luYyBpbXBvc2liaWwgcGVudHJ1IGZpyJlpZXJ1bCDigJ4lLjI1NXPigJ0iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImlnbm9yaW5nIGRlcGVuZGVuY3kgcHJvYmxlbSB3aXRoICVzOlxuIgorIiVzIgorbXNnc3RyICIiCisic2UgaWdub3LEgyBwcm9ibGVtYSBkZSBkZXBlbmRlbsibxIMgY3UgJXM6XG4iCisiJXMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImNvbnNpZGVyaW5nIGRlY29uZmlndXJhdGlvbiBvZiBlc3NlbnRpYWxcbiIKKyIgcGFja2FnZSAlcywgdG8gZW5hYmxlICVzLiIKK21zZ3N0ciAiIgorInNlIGNvbnNpZGVyxIMgZGVjb25maWd1cmFyZWEgcGFjaGV0dWx1aVxuIgorIiBlc2VuyJtpYWwgJXMsIHBlbnRydSBhIHBlcm1pdGUgJXMuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDA4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBubywgJXMgaXMgZXNzZW50aWFsLCB3aWxsIG5vdCBkZWNvbmZpZ3VyZVxuIgorIiBpdCBpbiBvcmRlciB0byBlbmFibGUgJXMuXG4iCittc2dzdHIgIiIKKyJkcGtnOiBudSwgJXMgZXN0ZSBlc2VuyJtpYWwsIG51IHZhIGZpIGRlY29uZmlndXJhdFxuIgorIiBwZW50cnUgYSBwZXJtaXRlICVzLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDIyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBubywgY2Fubm90IHByb2NlZWQgd2l0aCAlcyAoLS1hdXRvLWRlY29uZmlndXJlIHdpbGwgaGVscCk6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiBudSwgbnUgc2UgcG9hdGUgcHVyY2VkZSBsYSAlcyAoLS1hdXRvLWRlY29uZmlndXJlIHZhIGFqdXRhKTpcbiIKKyIlcyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAzMgorIywgYy1mb3JtYXQKK21zZ2lkICJyZW1vdmFsIG9mICUuMjUwcyIKK21zZ3N0ciAiyJl0ZXJnZXJlYSBsdWkgJS4yNTBzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDU3CisjLCBjLWZvcm1hdAorbXNnaWQgImluc3RhbGxhdGlvbiBvZiAlLjI1MHMiCittc2dzdHIgImluc3RhbGFyZWEgbHVpIOKAniUuMjU1c+KAnSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA1OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogY29uc2lkZXJpbmcgZGVjb25maWd1cmF0aW9uIG9mICVzLCB3aGljaCB3b3VsZCBiZSBicm9rZW4gYnkgJXMgLi4uXG4iCittc2dzdHIgIiIKKyJkcGtnOiBzZSBpYSDDrm4gY29uc2lkZXJhcmUgZGVjb25maWd1cmFyZWEgbHVpICVzIGNhcmUgYXIgZmkgY29ydXB0IGRlICIKKyIlcyAuLi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA2NQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiB5ZXMsIHdpbGwgZGVjb25maWd1cmUgJXMgKGJyb2tlbiBieSAlcykuXG4iCittc2dzdHIgImRwa2c6IGRhLCBzZSB2YSBkZWNvbmZpZ3VyYSAlcyAoY29ydXB0IGRlICVzKS5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA2OSBzcmMvYXJjaGl2ZXMuYzoxMTg3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiByZWdhcmRpbmcgJXMgY29udGFpbmluZyAlczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6IGN1IHByaXZpcmUgbGEgJXMgY29uyJtpbsOibmQgJXM6XG4iCisiJXMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNzcKK21zZ2lkICJpZ25vcmluZyBicmVha2FnZSwgbWF5IHByb2NlZWQgYW55d2F5ISIKK21zZ3N0ciAic2UgaWdub3LEgyBjb3J1cGVyZWEsIHNlIHZhIGNvbnRpbnVhIG9yaWN1bSEiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImluc3RhbGxpbmcgJS4yNTBzIHdvdWxkIGJyZWFrICUuMjUwcywgYW5kXG4iCisiIGRlY29uZmlndXJhdGlvbiBpcyBub3QgcGVybWl0dGVkICgtLWF1dG8tZGVjb25maWd1cmUgbWlnaHQgaGVscCkiCittc2dzdHIgIiIKKyJpbnN0YWxhcmVhIGx1aSAlLjI1MHMgYXIgZHVjZSBsYSBjb3J1cGVyZWEgbHVpICUuMjUwcywgaWFyXG4iCisiIGRlY29uZmlndXJhcmVhIG51IGVzdGUgcGVybWlzxIMgKC0tYXV0by1kZWNvbmZpZ3VyZSBhciBwdXRlYSBmaSBkZSBhanV0b3IpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDg2CisjLCBjLWZvcm1hdAorbXNnaWQgImluc3RhbGxpbmcgJS4yNTBzIHdvdWxkIGJyZWFrIGV4aXN0aW5nIHNvZnR3YXJlIgorbXNnc3RyICJpbnN0YWxhcmVhIGx1aSAlLjI1MHMgYXIgZHVjZSBsYSBjb3J1cGVyZWEgcHJvZ3JhbWVsb3IgZXhpc3RlbnRlIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTE2CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IGNvbnNpZGVyaW5nIHJlbW92aW5nICVzIGluIGZhdm91ciBvZiAlcyAuLi5cbiIKK21zZ3N0ciAiZHBrZzogc2UgaWEgw65uIGNvbnNpZGVyYXJlIMiZdGVyZ2VyZWEgbHVpICVzIMOubiBmYXZvYXJlYSBsdWkgJXMgLi4uXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgaXMgbm90IHByb3Blcmx5IGluc3RhbGxlZCAtIGlnbm9yaW5nIGFueSBkZXBlbmRlbmNpZXMgb24gaXQuXG4iCittc2dzdHIgIiVzIG51IGVzdGUgY29yZWN0IGluc3RhbGF0IC0gaWdub3Igb3JpY2UgZGVwZW5kZW7Im8SDIGZhyJvEgyBkZSBhY2VzdGEuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogbWF5IGhhdmUgdHJvdWJsZSByZW1vdmluZyAlcywgYXMgaXQgcHJvdmlkZXMgJXMgLi4uXG4iCittc2dzdHIgIiIKKyJkcGtnOiBhciBwdXRlYSBhcMSDcmVhIHByb2JsZW1lIGxhIGVsaW1pbmFyZWEgJXMsIGRlb2FyZWNlIGZ1cm5pemVhesSDICVzIC4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTY2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBwYWNrYWdlICVzIHJlcXVpcmVzIHJlaW5zdGFsbGF0aW9uLCBidXQgd2lsbCByZW1vdmUgYW55d2F5IGFzIHlvdSAiCisicmVxdWVzdGVkLlxuIgorbXNnc3RyICIiCisiZHBrZzogcGFjaGV0dWwgJXMgbmVjZXNpdMSDIHJlaW5zdGFsYXJlLCBkYXIgdmEgZmkgyJl0ZXJzLCBhyJlhIGN1bSBhyJtpICIKKyJzb2xpY2l0YXQuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExNjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogcGFja2FnZSAlcyByZXF1aXJlcyByZWluc3RhbGxhdGlvbiwgd2lsbCBub3QgcmVtb3ZlLlxuIgorbXNnc3RyICJkcGtnOiBwYWNoZXR1bCAlcyBuZWNlc2l0xIMgcmVpbnN0YWxhcmUsIG51IHZhIGZpIMOubmzEg3R1cmF0LlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTc4CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IHllcywgd2lsbCByZW1vdmUgJXMgaW4gZmF2b3VyIG9mICVzLlxuIgorbXNnc3RyICJkcGtnOiBkYSwgJXMgdmEgZmkgyJl0ZXJzIMOubiBmYXZvYXJlYSBsdWkgJXMuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmxpY3RpbmcgcGFja2FnZXMgLSBub3QgaW5zdGFsbGluZyAlLjI1MHMiCittc2dzdHIgImNvbmZsaWN0IMOubnRyZSBwYWNoZXRlIC0gbnUgc2UgaW5zdGFsZWF6xIMgJS4yNTBzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTkxCittc2dpZCAiaWdub3JpbmcgY29uZmxpY3QsIG1heSBwcm9jZWVkIGFueXdheSEiCittc2dzdHIgInNlIGlnbm9yxIMgY29uZmxpY3R1bCwgc2UgdmEgY29udGludWEgb3JpY3VtISIKKworIzogc3JjL2FyY2hpdmVzLmM6MTIzNQorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIC0tcmVjdXJzaXZlIG5lZWRzIGF0IGxlYXN0IG9uZSBwYXRoIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIC0tcmVjdXJzaXZlIG5lY2VzaXTEgyBjZWwgcHXIm2luIG8gY2FsZSBjYSBhcmd1bWVudCIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI0NQorbXNnaWQgImZpbmQgZm9yIGRwa2cgLS1yZWN1cnNpdmUiCittc2dzdHIgIuKAnmZpbmTigJ0gcGVudHJ1IOKAnmRwa2cgLS1yZWN1cnNpdmXigJ0iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNjYKK21zZ2lkICJmYWlsZWQgdG8gZmRvcGVuIGZpbmQncyBwaXBlIgorbXNnc3RyICJlyJllYyBsYSBmZG9wZW4gcGVudHJ1IHBpcGEgbHVpIGZpbmQiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNzIKK21zZ2lkICJlcnJvciByZWFkaW5nIGZpbmQncyBwaXBlIgorbXNnc3RyICJlcm9hcmUgbGEgY2l0aXJlYSBwaXBlaSBsdWkgZmluZCIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3MworbXNnaWQgImVycm9yIGNsb3NpbmcgZmluZCdzIHBpcGUiCittc2dzdHIgImVyb2FyZSBsYSDDrm5jaGlkZXJlYSBwaXBlaSBsdWkgZmluZCIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3NgorIywgYy1mb3JtYXQKK21zZ2lkICJmaW5kIGZvciAtLXJlY3Vyc2l2ZSByZXR1cm5lZCB1bmhhbmRsZWQgZXJyb3IgJWkiCittc2dzdHIgImZpbmQgcGVudHJ1IC0tcmVjdXJzaXZlIGEgcmV0dXJuYXQgY29kdWwgZGUgZXJvYXJlIG5ldHJhdGF0xIMgJWkiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNzkKK21zZ2lkICJzZWFyY2hlZCwgYnV0IGZvdW5kIG5vIHBhY2thZ2VzIChmaWxlcyBtYXRjaGluZyAqLmRlYikiCittc2dzdHIgInMtYXUgY8SDdXRhdCwgZGFyIG51IHMtYXUgZ8SDc2l0IHBhY2hldGUgKGZpyJlpZXJlIGRlIHRpcCAqLmRlYikiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhdCBsZWFzdCBvbmUgcGFja2FnZSBhcmNoaXZlIGZpbGUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMgbmVjZXNpdMSDIGNlbCBwdcibaW4gdW4gZmnImWllci1hcmhpdsSDIGRlIHBhY2hldCBjYSBhcmd1bWVudCIKKworIzogc3JjL2FyY2hpdmVzLmM6MTMyNSBzcmMvZGl2ZXJ0Y21kLmM6Nzggc3JjL2RpdmVydGNtZC5jOjExOAorIzogc3JjL2VucXVpcnkuYzoxNjYgc3JjL2VucXVpcnkuYzoyNzkgc3JjL2VucXVpcnkuYzo0NDkgc3JjL2VucXVpcnkuYzo0NTEKKyM6IHNyYy9lbnF1aXJ5LmM6NDY0IHNyYy9tYWluLmM6NjYgc3JjL21haW4uYzoxNjMgc3JjL21haW4uYzozMTQKKyM6IHNyYy9tYWluLmM6NDkzIHNyYy9wYWNrYWdlcy5jOjI1NCBzcmMvcXVlcnljbWQuYzoyNTIgc3JjL3F1ZXJ5Y21kLmM6MzU1CisjOiBzcmMvcXVlcnljbWQuYzozOTYgc3JjL3F1ZXJ5Y21kLmM6NDA0IHNyYy9xdWVyeWNtZC5jOjQ0OCBzcmMvcXVlcnljbWQuYzo1MTcKKyM6IHNyYy9xdWVyeWNtZC5jOjYwNiBzcmMvcXVlcnljbWQuYzo2NTAgc3JjL3NlbGVjdC5jOjc5IHNyYy9zdGF0Y21kLmM6NjgKKyM6IHNyYy9zdGF0Y21kLmM6OTggc3JjL3RyaWdjbWQuYzo1OCBzcmMvdHJpZ2NtZC5jOjkwIGRwa2ctZGViL2J1aWxkLmM6NDQxCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjE3IGRwa2ctZGViL2V4dHJhY3QuYzoyNTAgZHBrZy1kZWIvaW5mby5jOjIwMworIzogZHBrZy1kZWIvaW5mby5jOjI2NSBkcGtnLWRlYi9tYWluLmM6NjAgZHBrZy1kZWIvbWFpbi5jOjEyNgorIzogZHBrZy1zcGxpdC9pbmZvLmM6MjU3IGRwa2ctc3BsaXQvbWFpbi5jOjU0IGRwa2ctc3BsaXQvbWFpbi5jOjk4CisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTQ0IGRwa2ctc3BsaXQvcXVldWUuYzoyODAKK21zZ2lkICI8c3RhbmRhcmQgb3V0cHV0PiIKK21zZ3N0ciAiPHN0YW5kYXJkIG91dHB1dD4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzMjYgc3JjL3BhY2thZ2VzLmM6MjU1IHNyYy9xdWVyeWNtZC5jOjI1MworIzogc3JjL3F1ZXJ5Y21kLmM6MzUzIHNyYy9xdWVyeWNtZC5jOjQ1NCBzcmMvcXVlcnljbWQuYzo1MTggc3JjL3NlbGVjdC5jOjgwCisjOiBkcGtnLXNwbGl0L21haW4uYzoxNjkgZHBrZy1zcGxpdC9xdWV1ZS5jOjIxOAorbXNnaWQgIjxzdGFuZGFyZCBlcnJvcj4iCittc2dzdHIgIjxzdGFuZGFyZCBlcnJvcj4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzNjcKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIlNlbGVjdGluZyBwcmV2aW91c2x5IGRlc2VsZWN0ZWQgcGFja2FnZSAlcy5cbiIKK21zZ2lkICJTZWxlY3RpbmcgcHJldmlvdXNseSB1bnNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dzdHIgIlNlIHNlbGVjdGVhesSDIHBhY2hldHVsICVzLCBkZXNlbGVjdGF0IGFudGVyaW9yLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzcxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJTa2lwcGluZyBkZXNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dpZCAiU2tpcHBpbmcgdW5zZWxlY3RlZCBwYWNrYWdlICVzLlxuIgorbXNnc3RyICJTZSBvbWl0ZSBwYWNoZXR1bCBkZXNlbGVjdGF0ICVzLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzg3CisjLCBjLWZvcm1hdAorbXNnaWQgIlZlcnNpb24gJS4yNTBzIG9mICUuMjUwcyBhbHJlYWR5IGluc3RhbGxlZCwgc2tpcHBpbmcuXG4iCittc2dzdHIgIlZlcnNpdW5lYSAlLjI1MHMgYSBsdWkgJS4yNTBzIGVzdGUgZGVqYSBpbnN0YWxhdMSDLCBzZSBvbWl0ZS5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTM5NworIywgYy1mb3JtYXQKK21zZ2lkICJkb3duZ3JhZGluZyAlLjI1MHMgZnJvbSAlLjI1MHMgdG8gJS4yNTBzLiIKK21zZ3N0ciAic2UgcmV0cm9ncmFkZWF6xIMgJS4yNTBzIGRlIGxhICUuMjUwcyBsYSAlLjI1MHMuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxNDAyCisjLCBjLWZvcm1hdAorbXNnaWQgIldpbGwgbm90IGRvd25ncmFkZSAlLjI1MHMgZnJvbSB2ZXJzaW9uICUuMjUwcyB0byAlLjI1MHMsIHNraXBwaW5nLlxuIgorbXNnc3RyICIiCisiTnUgc2UgdmEgcmV0cm9ncmFkYSAlLjI1MHMgZGUgbGEgdmVyc2l1bmVhICUuMjUwcyBsYSB2ZXJzaXVuZWEgJS4yNTBzLCBzZSAiCisib21pdGUuXG4iCisKKyM6IHNyYy9jbGVhbnVwLmM6ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVuYWJsZSB0byByZW1vdmUgbmV3bHktaW5zdGFsbGVkIHZlcnNpb24gb2YgYCUuMjUwcycgdG8gYWxsb3cgcmVpbnN0YWxsYXRpb24gIgorIm9mIGJhY2t1cCBjb3B5IgorbXNnc3RyICIiCisibnUgc2UgcG9hdGUgyJl0ZXJnZSB2ZXJzaXVuZWEgbm91LWluc3RhbGF0xIMgYSBsdWkg4oCeJS4yNTBz4oCdIHBlbnRydSBhIHBlcm1pdGUgIgorInJlaW5zdGFsYXJlYSBjb3BpZWkgZGUgc2lndXJhbsibxIMiCisKKyM6IHNyYy9jbGVhbnVwLmM6OTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlc3RvcmUgYmFja3VwIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dzdHIgIm51IHNlIHBvYXRlIHJlc3RhdXJhIHZlcnNpdW5lYSBkZSBzaWd1cmFuyJvEgyBhIGx1aSDigJ4lLjI1MHPigJ0iCisKKyM6IHNyYy9jbGVhbnVwLmM6OTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBiYWNrdXAgY29weSBvZiAnJS4yNTBzJyIKK21zZ3N0ciAibnUgc2UgcG9hdGUgyJl0ZXJnZSBjb3BpYSBkZSBzaWd1cmFuyJvEgyBhIGx1aSDigJ4lLjI1MHPigJ0iCisKKyM6IHNyYy9jbGVhbnVwLmM6MTAxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgbmV3bHktaW5zdGFsbGVkIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dzdHIgIm51IHNlIHBvYXRlIMiZdGVyZ2UgdmVyc2l1bmVhIG5vdS1pbnN0YWxhdMSDIGEgbHVpIOKAniUuMjUwc+KAnSIKKworIzogc3JjL2NsZWFudXAuYzoxMDgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBuZXdseS1leHRyYWN0ZWQgdmVyc2lvbiBvZiBgJS4yNTBzJyIKK21zZ3N0ciAibnUgc2UgcG9hdGUgyJl0ZXJnZSB2ZXJzaXVuZWEgbm91LWV4dHJhc8SDIGEgbHVpIOKAniUuMjUwc+KAnSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjEwNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBuZXcgZGlzdHJpYnV0ZWQgY29uZmZpbGUgJyUuMjUwcyciCittc2dzdHIgInN0YXQgaW1wb3NpYmlsIHBlbnRydSBub3VsIGZpyJlpZXIgY29uZmZpbGUg4oCeJS4yNTBz4oCdIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGN1cnJlbnQgaW5zdGFsbGVkIGNvbmZmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJzdGF0IGltcG9zaWJpbCBwZW50cnUgYWN0dWFsdWwgZmnImWllciBjb25mZmlsZSBpbnN0YWxhdCDigJ4lLjI1MHPigJ0iCisKKyM6IHNyYy9jb25maWd1cmUuYzoxMjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIkNvbmZpZ3VyYXRpb24gZmlsZSBgJXMnLCBkb2VzIG5vdCBleGlzdCBvbiBzeXN0ZW0uXG4iCisiSW5zdGFsbGluZyBuZXcgY29uZmlnIGZpbGUgYXMgeW91IHJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiIgorIlxuIgorIkZpyJlpZXJ1bCBkZSBjb25maWd1cmFyZSDigJ4lc+KAnSwgbnUgZXhpc3TEgyDDrm4gc2lzdGVtLlxuIgorIlNlIGluc3RhbGVhesSDIG5vdWwgZmnImWllciBkZSBjb25maWd1cmFyZSwgYciZYSBjdW0gYcibaSBjZXJ1dC5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE2OAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIHJlbW92ZSBvbGQgYmFja3VwICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiJXM6IGXImWVjIGxhIMiZdGVyZ2VyZWEgdmVjaGlpIGNvcGlpIGRlIHNpZ3VyYW7Im8SDIOKAniUuMjUwc+KAnTogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW5hbWUgJyUuMjUwcycgdG8gJyUuMjUwcyc6ICVzIgorbXNnc3RyICIlczogZciZZWMgbGEgcmVkZW51bWlyZWEgbHVpIOKAniUuMjUwc+KAnSDDrm4g4oCeJS4yNTBz4oCdOiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE4MgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIHJlbW92ZSAnJS4yNTBzJzogJXMiCittc2dzdHIgIiVzOiBlyJllYyBsYSDImXRlcmdlcmVhIGx1aSDigJ4lLjI1MHPigJ06ICVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTg4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlIG9sZCBkaXN0cmlidXRlZCB2ZXJzaW9uICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiJXM6IGXImWVjIGxhIMiZdGVyZ2VyZWEgdmVjaGlpIHZlcnNpdW5pIGRpc3RyaWJ1aXRlIOKAniUuMjUwc+KAnTogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW1vdmUgJyUuMjUwcycgKGJlZm9yZSBvdmVyd3JpdGUpOiAlcyIKK21zZ3N0ciAiJXM6IGXImWVjIGxhIMiZdGVyZ2VyZWEg4oCeJS4yNTBz4oCdICjDrm5haW50ZSBkZSBzdXByYXNjcmllcmUpOiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE5NgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIGxpbmsgJyUuMjUwcycgdG8gJyUuMjUwcyc6ICVzIgorbXNnc3RyICIlczogZciZZWMgbGEgbGVnYXJlYSBsdWkg4oCeJS4yNTBz4oCdIGxhIOKAniUuMjUwc+KAnTogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoyMDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW5zdGFsbGluZyBuZXcgdmVyc2lvbiBvZiBjb25maWcgZmlsZSAlcyAuLi5cbiIKK21zZ3N0ciAiU2UgaW5zdGFsZWF6xIMgbm91YSB2ZXJzaXVuZSBhIGZpyJlpZXJ1bHVpIGRlIGNvbmZpZ3VyYXJlICVzIC4uLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjA2IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo1NDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgYCUuMjUwcycgYXMgYCUuMjUwcyciCittc2dzdHIgIm51IHNlIHBvYXRlIGluc3RhbGEg4oCeJS4yNTBz4oCdIGNhIOKAniUuMjUwc+KAnSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI1NworIywgYy1mb3JtYXQKK21zZ2lkICJubyBwYWNrYWdlIG5hbWVkIGAlcycgaXMgaW5zdGFsbGVkLCBjYW5ub3QgY29uZmlndXJlIgorbXNnc3RyICJudSBlc3RlIGluc3RhbGF0IG5pY2kgdW4gcGFjaGV0IGRlbnVtaXQg4oCeJXPigJ0sIG51IHNlIHBvYXRlIGNvbmZpZ3VyYSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI2MAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlICUuMjUwcyBpcyBhbHJlYWR5IGluc3RhbGxlZCBhbmQgY29uZmlndXJlZCIKK21zZ3N0ciAicGFjaGV0dWwgJS4yNTBzIGVzdGUgZGVqYSBpbnN0YWxhdCDImWkgY29uZmlndXJhdCIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI2MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisicGFja2FnZSAlLjI1MHMgaXMgbm90IHJlYWR5IGZvciBjb25maWd1cmF0aW9uXG4iCisiIGNhbm5vdCBjb25maWd1cmUgKGN1cnJlbnQgc3RhdHVzIGAlLjI1MHMnKSIKK21zZ3N0ciAiIgorInBhY2hldHVsICUuMjUwcyBudSBlc3RlIHByZWfEg3RpdCBwZW50cnUgY29uZmlndXJhcmVcbiIKKyIgbnUgc2UgcG9hdGUgY29uZmlndXJhIChzdGFyZWEgY3VyZW50xIMg4oCeJS4yNTBz4oCdKSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI5NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogZGVwZW5kZW5jeSBwcm9ibGVtcyBwcmV2ZW50IGNvbmZpZ3VyYXRpb24gb2YgJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiBwcm9ibGVtZSBkZSBkZXBlbmRlbsibZSBwcmXDrm50w6JtcGluxIMgY29uZmlndXJhcmVhIGx1aSAlczpcbiIKKyIlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI5NworbXNnaWQgImRlcGVuZGVuY3kgcHJvYmxlbXMgLSBsZWF2aW5nIHVuY29uZmlndXJlZCIKK21zZ3N0ciAicHJvYmxlbWUgZGUgZGVwZW5kZW7Im2UgLSBzZSBsYXPEgyBuZWNvbmZpZ3VyYXQiCisKKyM6IHNyYy9jb25maWd1cmUuYzozMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6ICVzOiBkZXBlbmRlbmN5IHByb2JsZW1zLCBidXQgY29uZmlndXJpbmcgYW55d2F5IGFzIHlvdSByZXF1ZXN0ZWQ6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiAlczogcHJvYmxlbWUgZGUgZGVwZW5kZW7Im2UsIGRhciB0b3R1yJlpIHNlIGNvbmZpZ3VyZWF6xIMsIGHImWEgY3VtIGHIm2kgIgorImNlcnV0OlxuIgorIiVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MzA5Cittc2dpZCAiIgorIlBhY2thZ2UgaXMgaW4gYSB2ZXJ5IGJhZCBpbmNvbnNpc3RlbnQgc3RhdGUgLSB5b3Ugc2hvdWxkXG4iCisiIHJlaW5zdGFsbCBpdCBiZWZvcmUgYXR0ZW1wdGluZyBjb25maWd1cmF0aW9uLiIKK21zZ3N0ciAiIgorIlBhY2hldHVsIGVzdGUgw65udHItbyBzdGFyZSBkZSBpbmNvbnNpc3RlbsibxIMgZm9hcnRlIFxuIgorInJlYSAtIGFyIHRyZWJ1aSBzxIMtbCByZWluc3RhbGHIm2kgw65uYWludGUgZGUgYSDDrm5jZXJjYSBjb25maWd1cmFyZWEuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MzEyCisjLCBjLWZvcm1hdAorbXNnaWQgIlNldHRpbmcgdXAgJXMgKCVzKSAuLi5cbiIKK21zZ3N0ciAiU2UgcHJlZ8SDdGXImXRlICVzICglcykgLi4uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzozOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiB1bmFibGUgdG8gc3RhdCBjb25maWcgZmlsZSAnJXMnXG4iCisiICg9ICclcycpOiAlcyIKK21zZ3N0ciAiIgorIiVzOiBzdGF0IGltcG9zaWJpbCBwZW50cnUgZmnImWllcnVsIGRlIGNvbmZpZ3VyYXJlIOKAniVz4oCdXG4iCisiICg9IOKAniVz4oCdKTogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzo0MDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBjb25maWcgZmlsZSAnJXMnIGlzIGEgY2lyY3VsYXIgbGlua1xuIgorIiAoPSAnJXMnKSIKK21zZ3N0ciAiIgorIiVzOiBmaciZaWVydWwgZGUgY29uZmlndXJhcmUg4oCeJXPigJ0gZXN0ZSBvIGxlZ8SDdHVyxIMgY2lyY3VsYXLEg1xuIgorIiAoPSDigJ4lc+KAnSkiCisKKyM6IHNyYy9jb25maWd1cmUuYzo0MTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiB1bmFibGUgdG8gcmVhZGxpbmsgY29uZmZpbGUgJyVzJ1xuIgorIiAoPSAnJXMnKTogJXMiCittc2dzdHIgIiIKKyIlczogcmVhZGxpbmsgaW1wb3NpYmlsIHBlbnRydSBmaciZaWVydWwgY29uZmZpbGUg4oCeJXPigJ1cbiIKKyIgKD0g4oCeJXPigJ0pOiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQ0NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IGNvbmZmaWxlICclLjI1MHMnIHJlc29sdmVzIHRvIGRlZ2VuZXJhdGUgZmlsZW5hbWVcbiIKKyIgKCclcycgaXMgYSBzeW1saW5rIHRvICclcycpIgorbXNnc3RyICIiCisiJXM6IGZpyJlpZXJ1bCBjb25mZmlsZSDigJ4lLjI1MHPigJ0gYXJhdMSDIGPEg3RyZSB1biBudW1lIGRlIGZpyJlpZXIgZGVnZW5lcmF0XG4iCisiICjigJ4lc+KAnSBlc3RlIGxlZ8SDdHVyxIMgc2ltYm9saWPEgyBzcHJlIOKAniVz4oCdKSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQ2MAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogY29uZmZpbGUgJyUuMjUwcycgaXMgbm90IGEgcGxhaW4gZmlsZSBvciBzeW1saW5rICg9ICclcycpIgorbXNnc3RyICIiCisiJXM6IGZpyJlpZXJ1bCBjb25mZmlsZSDigJ4lLjI1MHPigJ0gbnUgZXN0ZSBmaciZaWVyIHNhdSBsZWfEg3R1csSDIHNpbWJvbGljxIMgKD0g4oCeJXPigJ0pIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDg2Cittc2dpZCAibWQ1aGFzaCIKK21zZ3N0ciAibWQ1aGFzaCIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQ5MgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogdW5hYmxlIHRvIG9wZW4gY29uZmZpbGUgJXMgZm9yIGhhc2g6ICVzIgorbXNnc3RyICIlczogbnUgc2UgcG9hdGUgZGVzY2hpZGUgZmnImWllcnVsIGNvbmZmaWxlICVzIHBlbnRydSBoYXNoOiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjUyMiBzcmMvY29uZmlndXJlLmM6NTI2Cittc2dpZCAiY29uZmZpbGUgZGlmZmVyZW5jZSB2aXN1YWxpemVyIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo1NDMKK21zZ2lkICJUeXBlIGBleGl0JyB3aGVuIHlvdSdyZSBkb25lLlxuIgorbXNnc3RyICJUYXN0YcibaSDigJ5leGl04oCdIGPDom5kIGHIm2kgdGVybWluYXQuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo1NTIgc3JjL2NvbmZpZ3VyZS5jOjU1NgorbXNnaWQgImNvbmZmaWxlIHNoZWxsIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIkNvbmZpZ3VyYXRpb24gZmlsZSBgJXMnIgorbXNnc3RyICIiCisiXG4iCisiRmnImWllciBkZSBjb25maWd1cmFyZSDigJ4lc+KAnSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYwNAorIywgYy1mb3JtYXQKK21zZ2lkICIgKGFjdHVhbGx5IGAlcycpIgorbXNnc3RyICIgKGRlIGZhcHQg4oCeJXPigJ0pIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjA4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgPT0+IEZpbGUgb24gc3lzdGVtIGNyZWF0ZWQgYnkgeW91IG9yIGJ5IGEgc2NyaXB0LlxuIgorIiA9PT4gRmlsZSBhbHNvIGluIHBhY2thZ2UgcHJvdmlkZWQgYnkgcGFja2FnZSBtYWludGFpbmVyLlxuIgorbXNnc3RyICIiCisiXG4iCisiID09PiBGaciZaWVydWwgZGluIHNpc3RlbSBjcmVhdCBkZSBkdW1uZWF2b2FzdHLEgyBzYXUgZGUgdW4gc2NyaXB0LlxuIgorIiA9PT4gRmnImWllcnVsIGVzdGUsIGRlIGFzZW1lbmVhLCBwcmV6ZW50IMOubiBwYWNoZXR1bCBmdXJuaXphdCBkZSAiCisicmVzcG9uc2FiaWx1bCBwYWNoZXR1bHVpLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjEzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgICAgIE5vdCBtb2RpZmllZCBzaW5jZSBpbnN0YWxsYXRpb24uXG4iCittc2dzdHIgIiIKKyJcbiIKKyIgICAgIE5lbW9kaWZpY2F0IGRlIGxhIGluc3RhbGFyZS5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYxNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiID09PiBNb2RpZmllZCAoYnkgeW91IG9yIGJ5IGEgc2NyaXB0KSBzaW5jZSBpbnN0YWxsYXRpb24uXG4iCittc2dzdHIgIiIKKyJcbiIKKyIgPT0+IE1vZGlmaWNhdCAoZGUgZHVtbmVhdm9hc3RyxIMgc2F1IGRlIHVuIHNjcmlwdCkgZGUgbGEgaW5zdGFsYXJlLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjE2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgPT0+IERlbGV0ZWQgKGJ5IHlvdSBvciBieSBhIHNjcmlwdCkgc2luY2UgaW5zdGFsbGF0aW9uLlxuIgorbXNnc3RyICIiCisiXG4iCisiID09PiDImHRlcnMgKGRlIGR1bW5lYXZvYXN0csSDIHNhdSBkZSB1biBzY3JpcHQpIGRlIGxhIGluc3RhbGFyZS5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYxOQorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IFBhY2thZ2UgZGlzdHJpYnV0b3IgaGFzIHNoaXBwZWQgYW4gdXBkYXRlZCB2ZXJzaW9uLlxuIgorbXNnc3RyICIgPT0+IERpc3RyaWJ1aXRvcnVsIHBhY2hldHVsdWkgYSBmdXJuaXphdCBvIHZlcnNpdW5lIGFjdHVhbGl6YXTEgy5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYyMAorIywgYy1mb3JtYXQKK21zZ2lkICIgICAgIFZlcnNpb24gaW4gcGFja2FnZSBpcyB0aGUgc2FtZSBhcyBhdCBsYXN0IGluc3RhbGxhdGlvbi5cbiIKK21zZ3N0ciAiICAgICBWZXJzaXVuZWEgZGluIHBhY2hldCBlc3RlIGFjZWlhyJlpIGNhIGxhIHVsdGltYSBpbnN0YWxhcmUuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBVc2luZyBuZXcgZmlsZSBhcyB5b3UgcmVxdWVzdGVkLlxuIgorbXNnc3RyICIgPT0+IFNlIGZvbG9zZciZdGUgbm91bCBmaciZaWVyLCBhyJlhIGN1bSBhyJtpIGNlcnV0LlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gVXNpbmcgY3VycmVudCBvbGQgZmlsZSBhcyB5b3UgcmVxdWVzdGVkLlxuIgorbXNnc3RyICIgPT0+IFNlIGZvbG9zZciZdGUgYWN0dWFsdWwgZmnImWllciB2ZWNoaSwgYciZYSBjdW0gYcibaSBjZXJ1dC5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY0MQorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IEtlZXBpbmcgb2xkIGNvbmZpZyBmaWxlIGFzIGRlZmF1bHQuXG4iCittc2dzdHIgIiA9PT4gSW1wbGljaXQgc2UgcMSDc3RyZWF6xIMgdmVjaGl1bCBmaciZaWVyIGRlIGNvbmZpZ3VyYXJlLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gVXNpbmcgbmV3IGNvbmZpZyBmaWxlIGFzIGRlZmF1bHQuXG4iCittc2dzdHIgIiA9PT4gSW1wbGljaXQgc2UgZm9sb3NlyJl0ZSBub3VsIGZpyJlpZXIgZGUgY29uZmlndXJhcmUuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiAgIFdoYXQgd291bGQgeW91IGxpa2UgdG8gZG8gYWJvdXQgaXQgPyAgWW91ciBvcHRpb25zIGFyZTpcbiIKKyIgICAgWSBvciBJICA6IGluc3RhbGwgdGhlIHBhY2thZ2UgbWFpbnRhaW5lcidzIHZlcnNpb25cbiIKKyIgICAgTiBvciBPICA6IGtlZXAgeW91ciBjdXJyZW50bHktaW5zdGFsbGVkIHZlcnNpb25cbiIKKyIgICAgICBEICAgICA6IHNob3cgdGhlIGRpZmZlcmVuY2VzIGJldHdlZW4gdGhlIHZlcnNpb25zXG4iCisiICAgICAgWiAgICAgOiBzdGFydCBhIHNoZWxsIHRvIGV4YW1pbmUgdGhlIHNpdHVhdGlvblxuIgorbXNnc3RyICIiCisiICAgQ2UgZG9yacibaSBzxIMgZmFjZcibaSDDrm4gYWNlYXN0xIMgcHJpdmluyJvEgz8gT3DIm2l1bmlsZSBzdW50OlxuIgorIiAgICBZIHNhdSBJIDogaW5zdGFsYcibaSB2ZXJzaXVuZWEgcmVzcG9uc2FiaWx1bHVpIGRlIHBhY2hldFxuIgorIiAgICBOIHNhdSBPIDogcMSDc3RyYcibaSB2ZXJzaXVuZWEgY3VyZW50IGluc3RhbGF0xINcbiIKKyIgICAgICBEICAgICA6IGFmaciZYcibaSBkaWZlcmVuyJtlbGUgZGludHJlIHZlcnNpdW5pXG4iCisiICAgICAgWiAgICAgOiBkZXNjaGlkZcibaSB1biBzaGVsbCBwZW50cnUgYSBleGFtaW5hIHNpdHVhyJtpYVxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjU5CisjLCBjLWZvcm1hdAorbXNnaWQgIiBUaGUgZGVmYXVsdCBhY3Rpb24gaXMgdG8ga2VlcCB5b3VyIGN1cnJlbnQgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIEFjyJtpdW5lYSBpbXBsaWNpdMSDIGVzdGUgcMSDc3RyYXJlYSB2ZXJzaXVuaWkgY3VyZW50ZS5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY2MQorIywgYy1mb3JtYXQKK21zZ2lkICIgVGhlIGRlZmF1bHQgYWN0aW9uIGlzIHRvIGluc3RhbGwgdGhlIG5ldyB2ZXJzaW9uLlxuIgorbXNnc3RyICIgQWPIm2l1bmVhIGltcGxpY2l0xIMgZXN0ZSBpbnN0YWxhcmVhIG5vaWkgdmVyc2l1bmkuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NjYKK21zZ2lkICJbZGVmYXVsdD1OXSIKK21zZ3N0ciAiW2ltcGxpY2l0PU5dIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjY3Cittc2dpZCAiW2RlZmF1bHQ9WV0iCittc2dzdHIgIltpbXBsaWNpdD1ZXSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY2OAorbXNnaWQgIltubyBkZWZhdWx0XSIKK21zZ3N0ciAiW25pbWljIGltcGxpY2l0XSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY3MQorbXNnaWQgImVycm9yIHdyaXRpbmcgdG8gc3RkZXJyLCBkaXNjb3ZlcmVkIGJlZm9yZSBjb25mZmlsZSBwcm9tcHQiCittc2dzdHIgIiIKKyJlcm9hcmUgbGEgc2NyaWVyZWEgY8SDdHJlIHN0ZGVyciwgZGVzY29wZXJpdMSDIMOubmFpbnRlIGRlIHByb21wdHVsIGRlc3ByZSAiCisiZmnImWllcnVsIGNvbmZmaWxlIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjgwCittc2dpZCAicmVhZCBlcnJvciBvbiBzdGRpbiBhdCBjb25mZmlsZSBwcm9tcHQiCittc2dzdHIgImVyb2FyZSBkZSBjaXRpcmUgZGUgbGEgc3RkaW4gbGEgcHJvbXB0dWwgZGVzcHJlIGZpyJlpZXJ1bCBjb25mZmlsZSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY4MQorbXNnaWQgIkVPRiBvbiBzdGRpbiBhdCBjb25mZmlsZSBwcm9tcHQiCittc2dzdHIgIkVPRiBkZSBsYSBzdGRpbiBsYSBwcm9tcHR1bCBkZXNwcmUgZmnImWllcnVsIGNvbmZmaWxlIgorCisjOiBzcmMvZGVwY29uLmM6MTc1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGRlcGVuZHMgb24gJXMiCittc2dzdHIgIiVzIGRlcGluZGUgZGUgJXMiCisKKyM6IHNyYy9kZXBjb24uYzoxNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcHJlLWRlcGVuZHMgb24gJXMiCittc2dzdHIgIiVzIGFudGUtZGVwaW5kZSBkZSAlcyIKKworIzogc3JjL2RlcGNvbi5jOjE4MQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyByZWNvbW1lbmRzICVzIgorbXNnc3RyICIlcyByZWNvbWFuZMSDICVzIgorCisjOiBzcmMvZGVwY29uLmM6MTg0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHN1Z2dlc3RzICVzIgorbXNnc3RyICIlcyBzdWdlcmVhesSDICVzIgorCisjOiBzcmMvZGVwY29uLmM6MTg3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGJyZWFrcyAlcyIKK21zZ3N0ciAiJXMgY29ydXBlICVzIgorCisjOiBzcmMvZGVwY29uLmM6MTkwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGNvbmZsaWN0cyB3aXRoICVzIgorbXNnc3RyICIlcyBlc3RlIMOubiBjb25mbGljdCBjdSAlcyIKKworIzogc3JjL2RlcGNvbi5jOjE5MworIywgYy1mb3JtYXQKK21zZ2lkICIlcyBlbmhhbmNlcyAlcyIKK21zZ3N0ciAiJXMgw65tYnVuxIN0xIPIm2XImXRlICVzIgorCisjOiBzcmMvZGVwY29uLmM6Mjk2CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHRvIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIHZhIGZpIMiZdGVycy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjI5OQorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB0byBiZSBkZWNvbmZpZ3VyZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIHZhIGZpIGRlY29uZmlndXJhdC5cbiIKKworIzogc3JjL2RlcGNvbi5jOjMwNAorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB0byBiZSBpbnN0YWxsZWQsIGJ1dCBpcyB2ZXJzaW9uICUuMjUwcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgZXN0ZSBwZSBjYWxlIHPEgyBmaWUgaW5zdGFsYXQsIGRhciBlc3RlIHZlcnNpdW5lYSAlLjI1MHMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgaW5zdGFsbGVkLCBidXQgaXMgdmVyc2lvbiAlLjI1MHMuXG4iCittc2dzdHIgIiAgJS4yNTBzIGVzdGUgaW5zdGFsYXQsIGRhciBlc3RlIHZlcnNpdW5lYSAlLjI1MHMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdW5wYWNrZWQsIGJ1dCBoYXMgbmV2ZXIgYmVlbiBjb25maWd1cmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyBlc3RlIGRlc3BhY2hldGF0LCBkYXIgbnUgYSBmb3N0IGNvbmZpZ3VyYXQgbmljaW9kYXTEgy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjMzNworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB1bnBhY2tlZCwgYnV0IGlzIHZlcnNpb24gJS4yNTBzLlxuIgorbXNnc3RyICIgICUuMjUwcyBlc3RlIGRlc3BhY2hldGF0LCBkYXIgZXN0ZSB2ZXJzaXVuZWEgJS4yNTBzLlxuIgorCisjOiBzcmMvZGVwY29uLmM6MzQzCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGxhdGVzdCBjb25maWd1cmVkIHZlcnNpb24gaXMgJS4yNTBzLlxuIgorbXNnc3RyICIgICUuMjUwcyB1bHRpbWEgdmVyc2l1bmUgY29uZmlndXJhdMSDIGVzdGUgJS4yNTBzLlxuIgorCisjOiBzcmMvZGVwY29uLmM6MzUzCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzICVzLlxuIgorbXNnc3RyICIgICUuMjUwcyBlc3RlICVzLlxuIgorCisjOiBzcmMvZGVwY29uLmM6Mzg4CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBidXQgaXMgdG8gYmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMgZnVybml6ZWF6xIMgJS4yNTBzIGRhciB2YSBmaSDImXRlcnMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGJ1dCBpcyB0byBiZSBkZWNvbmZpZ3VyZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIGZ1cm5pemVhesSDICUuMjUwcyBkYXIgdmEgZmkgZGVjb25maWd1cmF0LlxuIgorCisjOiBzcmMvZGVwY29uLmM6NDAxCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBidXQgaXMgJXMuXG4iCittc2dzdHIgIiAgJS4yNTBzIGZ1cm5pemVhesSDICUuMjUwcyBkYXIgZXN0ZSAlcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjQxNQorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIgICUuMjUwcyBudSBlc3RlIGluc3RhbGF0LlxuIgorCisjOiBzcmMvZGVwY29uLmM6NDQzCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzICh2ZXJzaW9uICUuMjUwcykgaXMgdG8gYmUgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIgICUuMjUwcyAodmVyc2l1bmVhICUuMjUwcykgZXN0ZSBwZSBjYWxlIHPEgyBmaWUgaW5zdGFsYXQuXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgKHZlcnNpb24gJS4yNTBzKSBpcyBwcmVzZW50IGFuZCAlcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgKHZlcnNpdW5lYSAlLjI1MHMpIGVzdGUgcHJlemVudCDImWkgJXMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGFuZCBpcyB0byBiZSBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIGZ1cm5pemVhesSDICUuMjUwcyDImWkgZXN0ZSBwZSBjYWxlIHPEgyBmaWUgaW5zdGFsYXQuXG4iCisKKyM6IHNyYy9kZXBjb24uYzo1MzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGFuZCBpcyBwcmVzZW50IGFuZCAlcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgZnVybml6ZWF6xIMgJS4yNTBzIMiZaSBlc3RlIHByZXplbnQgyJlpICVzLlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTAKKyMsIGZ1enp5CisjfCBtc2dpZCAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBxdWVyeWluZyBwYWNrYWdlcy4iCittc2dpZCAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBkaXZlcnRpbmcgZmlsZXMuIgorbXNnc3RyICJGb2xvc2nIm2kgLS1oZWxwIHBlbnRydSBhanV0b3IgZGVzcHJlIGludGVyb2dhcmVhIHBhY2hldGVsb3IiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo2NiBzcmMvc3RhdGNtZC5jOjU3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo4MAorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gJXMgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiRGViaWFuICVzIHZlcnNpdW5lYSAlcy5cbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjcwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMTAgR3VpbGxlbSBKb3Zlci5cbiIKK21zZ3N0ciAiIgorIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLlxuIgorIkNvcHlyaWdodCAoQykgMjAxMCBHdWlsbGVtIEpvdmVyLlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NzUgc3JjL21haW4uYzo2MyBzcmMvcXVlcnljbWQuYzo2MDMgc3JjL3N0YXRjbWQuYzo2NQorIzogc3JjL3RyaWdjbWQuYzo1NSBkcGtnLWRlYi9tYWluLmM6NTcgZHBrZy1zcGxpdC9tYWluLmM6NTEKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo4OQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvclxuIgorImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LlxuIgorbXNnc3RyICIiCisiQWNlc3QgcHJvZ3JhbSBlc3RlIHNvZnR3YXJlIGxpYmVyOyB2ZWRlyJtpIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbmNlICIKKyJ2ZXJzaXVuZWEgMiBzYXVcbiIKKyJ1bHRlcmlvYXLEgyBwZW50cnUgY29uZGnIm2lpbGUgZGUgY29waWVyZS4gTlUgZXhpc3TEgyBuaWNpIG8gZ2FyYW7Im2llLlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6ODcgc3JjL21haW4uYzo4MSBzcmMvcXVlcnljbWQuYzo2MTUgc3JjL3N0YXRjbWQuYzo3NworIzogZHBrZy1kZWIvbWFpbi5jOjY5IGRwa2ctc3BsaXQvbWFpbi5jOjYzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo5NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIDxjb21tYW5kPlxuIgorIlxuIgorbXNnc3RyICIiCisiVXRpbGl6YXJlOiAlcyBbPG9wyJtpdW5lPiAuLi5dIDxjb21hbmRhPlxuIgorIlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6OTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgWy0tYWRkXSA8ZmlsZT4gICAgICAgICAgIGFkZCBhIGRpdmVyc2lvbi5cbiIKKyIgIC0tcmVtb3ZlIDxmaWxlPiAgICAgICAgICByZW1vdmUgdGhlIGRpdmVyc2lvbi5cbiIKKyIgIC0tbGlzdCBbPGdsb2ItcGF0dGVybj5dICBzaG93IGZpbGUgZGl2ZXJzaW9ucy5cbiIKKyIgIC0tbGlzdHBhY2thZ2UgPGZpbGU+ICAgICBzaG93IHdoYXQgcGFja2FnZSBkaXZlcnRzIHRoZSBmaWxlLlxuIgorIiAgLS10cnVlbmFtZSA8ZmlsZT4gICAgICAgIHJldHVybiB0aGUgZGl2ZXJ0ZWQgZmlsZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIkNvbWVuemk6XG4iCisiICBbLS1hZGRdIDxmaciZaWVyPiAgICAgICAgICAgYWRhdWfEgyBvIHJlZGlyZWN0YXJlLlxuIgorIiAgLS1yZW1vdmUgPGZpyJlpZXI+ICAgICAgICAgIMiZdGVyZ2UgcmVkaXJlY3RhcmVhLlxuIgorIiAgLS1saXN0IFs8Z2xvYi1wYXR0ZXJuPl0gICAgYXJhdMSDIHJlZGlyZWN0xINyaWxlIGRlIGZpyJlpZXJlLlxuIgorIiAgLS1saXN0cGFja2FnZSA8ZmnImWllcj4gICAgIGFyYXTEgyBjZSBwYWNoZXQgYXJlIG8gcmVkaXJlY3RhcmUgcGVudHJ1ICIKKyJmaciZaWVyLlxuIgorIiAgLS10cnVlbmFtZSA8ZmnImWllcj4gICAgICAgIGFyYXTEgyBmaciZaWVydWwgcmVkaXJlY3RhdC5cbiIKKyJcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjEwMAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tcGFja2FnZSA8cGFja2FnZT4gICAgICBuYW1lIG9mIHRoZSBwYWNrYWdlIHdob3NlIGNvcHkgb2YgPGZpbGU+IHdpbGwgIgorIm5vdFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmUgZGl2ZXJ0ZWQuXG4iCisiICAtLWxvY2FsICAgICAgICAgICAgICAgICAgYWxsIHBhY2thZ2VzJyB2ZXJzaW9ucyBhcmUgZGl2ZXJ0ZWQuXG4iCisiICAtLWRpdmVydCA8ZGl2ZXJ0LXRvPiAgICAgdGhlIG5hbWUgdXNlZCBieSBvdGhlciBwYWNrYWdlcycgdmVyc2lvbnMuXG4iCisiICAtLXJlbmFtZSAgICAgICAgICAgICAgICAgYWN0dWFsbHkgbW92ZSB0aGUgZmlsZSBhc2lkZSAob3IgYmFjaykuXG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgc2V0IHRoZSBkaXJlY3Rvcnkgd2l0aCB0aGUgZGl2ZXJzaW9ucyBmaWxlLlxuIgorIiAgLS10ZXN0ICAgICAgICAgICAgICAgICAgIGRvbid0IGRvIGFueXRoaW5nLCBqdXN0IGRlbW9uc3RyYXRlLlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHF1aWV0IG9wZXJhdGlvbiwgbWluaW1hbCBvdXRwdXQuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorbXNnc3RyICIiCisiT3DIm2l1bmk6XG4iCisiICAtLXBhY2thZ2UgPHBhY2hldD4gICAgICAgbnVtZWxlIHBhY2hldHVsdWkgYSBjxINydWkgY29waWUgYSBmaciZaWVydWx1aSAiCisiPGZpyJlpZXI+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgbnUgdmEgZmkgcmVkaXJlY3RhdMSDLlxuIgorIiAgLS1sb2NhbCAgICAgICAgICAgICAgICAgIHRvYXRlIHZlcnNpdW5pbGUgcGFjaGV0dWx1aSBzdW50IHJlZGlyZWN0YXRlLlxuIgorIiAgLS1kaXZlcnQgPHJlZGlyLWxhPiAgICAgIG51bWVsZSBmb2xvc2l0IGRlIHZlcnNpdW5pbGUgY2Vsb3JsYWx0ZSBwYWNoZXRlLlxuIgorIiAgLS1yZW5hbWUgICAgICAgICAgICAgICAgIGNoaWFyIG11dMSDIGZpyJlpZXJ1bCBkZS1vIHBhcnRlIChzYXUgw65uYXBvaSkuXG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcj4gICAgY29uZmlndXJlYXrEgyBkaXJlY3RvcnVsIGN1IGZpyJlpZXJ1bCBkZSAiCisicmVkaXJlY3TEg3JpLlxuIgorIiAgLS10ZXN0ICAgICAgICAgICAgICAgICAgIG51IGbEgyBuaW1pYywgZG9hciBkZW1vbnN0cmVhesSDLlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIG9wZXJhcmUgc2lsZW7Im2lvYXPEgywgbWluaW0gZGUgbWVzYWplLlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIGFmaciZZWF6xIMgYWNlc3QgYWp1dG9yXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgYWZpyJllYXrEgyB2ZXJzaXVuZWFcbiIKKyJcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiV2hlbiBhZGRpbmcsIGRlZmF1bHQgaXMgLS1sb2NhbCBhbmQgLS1kaXZlcnQgPG9yaWdpbmFsPi5kaXN0cmliLlxuIgorIldoZW4gcmVtb3ZpbmcsIC0tcGFja2FnZSBvciAtLWxvY2FsIGFuZCAtLWRpdmVydCBtdXN0IG1hdGNoIGlmIHNwZWNpZmllZC5cbiIKKyJQYWNrYWdlIHByZWluc3QvcG9zdHJtIHNjcmlwdHMgc2hvdWxkIGFsd2F5cyBzcGVjaWZ5IC0tcGFja2FnZSBhbmQgLS0iCisiZGl2ZXJ0LlxuIgorbXNnc3RyICIiCisiTGEgYWTEg3VnYXJlIGltcGxpY2l0ZSBzdW50IC0tbG9jYWwgyJlpIC0tZGl2ZXJ0IDxvcmlnaW5hbD4uZGlzdHJpYi5cbiIKKyJMYSDImXRlcmdlcmUgLS1wYWNrYWdlIHNhdSAtLWxvY2FsIMiZaSAtLWRpdmVydCB0cmVidWllIHPEgyBzZVxuIgorInBvdHJpdmVhc2PEgyBkYWPEgyBzdW50IHNwZWNpZmljYXRlLlxuIgorIlNjcmlwdHVyaWxlIHByZWluc3QvcG9zdHJtIGRpbiBwYWNoZXRlIGFyIHRyZWJ1aSBzxIMgc3BlY2lmaWNlXG4iCisiw65udG90ZGVhdW5hIC0tcGFja2FnZSDImWkgLS1kaXZlcnQuXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoxNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2hlY2tpbmcgJyVzJyIKK21zZ3N0ciAiZXJvYXJlIGxhIHZlcmlmaWNhcmVhIGx1aSDigJ4lc+KAnSIKKworIzogc3JjL2RpdmVydGNtZC5jOjIwMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisicmVuYW1lIGludm9sdmVzIG92ZXJ3cml0aW5nIGAlcycgd2l0aFxuIgorIiAgZGlmZmVyZW50IGZpbGUgYCVzJywgbm90IGFsbG93ZWQiCittc2dzdHIgIiIKKyJyZWRlbnVtaXJlYSBpbXBsaWPEgyBzdXByYXNjcmllcmVhIGx1aSDigJ4lc+KAnSBjdVxuIgorIiAgdW4gYWx0IGZpyJlpZXIg4oCeJXPigJ0sIGx1Y3J1IG5lcGVybWlzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjIzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzczCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gd3JpdGUgZmlsZSAnJXMnIgorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgZmlsZSAnJXMnIgorbXNnc3RyICJudSBzZSBwb2F0ZSBzY3JpZSBmaciZaWVydWwg4oCeJXPigJ0iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyMjcKK21zZ2lkICJmaWxlIGNvcHkiCittc2dzdHIgImNvcGllcmUgZmnImWllciIKKworIzogc3JjL2RpdmVydGNtZC5jOjIzOQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVuYW1lICclcycgdG8gJyVzJyIKK21zZ3N0ciAibnUgc2UgcG9hdGUgcmVkZW51bWkg4oCeJXPigJ0gw65uIOKAniVz4oCdIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjUyCisjLCBjLWZvcm1hdAorbXNnaWQgInJlbmFtZTogcmVtb3ZlIGR1cGxpY2F0ZSBvbGQgbGluayAnJXMnIgorbXNnc3RyICJyZWRlbnVtaXJlOiDImXRlcmdlIHZlY2hlYSBsZWfEg3R1csSDIGR1cGxpY2F0xIMg4oCeJXPigJ0iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyNjIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byBvcGVuIHNvdXJjZSBmaWxlIGAlLjI1MHMnIgorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgY29waWVkIHNvdXJjZSBmaWxlICclcyciCittc2dzdHIgIm51IHNlIHBvYXRlIGRlc2NoaWRlIGZpyJlpZXJ1bCBzdXJzxIMg4oCeJS4yNTBz4oCdIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mjg0CisjLCBjLWZvcm1hdAorbXNnaWQgImxvY2FsIGRpdmVyc2lvbiBvZiAlcyIKK21zZ3N0ciAicmVkaXJlY3RhcmUgbG9jYWzEgyBhIGx1aSAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjI4NgorIywgYy1mb3JtYXQKK21zZ2lkICJsb2NhbCBkaXZlcnNpb24gb2YgJXMgdG8gJXMiCittc2dzdHIgInJlZGlyZWN0YXJlIGxvY2FsxIMgYSBsdWkgJXMgY8SDdHJlICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjkwCisjLCBjLWZvcm1hdAorbXNnaWQgImRpdmVyc2lvbiBvZiAlcyBieSAlcyIKK21zZ3N0ciAicmVkaXJlY3RhcmUgYSBsdWkgJXMgZGUgY8SDdHJlICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjkzCisjLCBjLWZvcm1hdAorbXNnaWQgImRpdmVyc2lvbiBvZiAlcyB0byAlcyBieSAlcyIKK21zZ3N0ciAicmVkaXJlY3RhcmUgYSBsdWkgJXMgY8SDdHJlICVzIGRlIGPEg3RyZSAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjMwOQorIywgYy1mb3JtYXQKK21zZ2lkICJhbnkgZGl2ZXJzaW9uIG9mICVzIgorbXNnc3RyICJvcmljZSByZWRpcmVjdGFyZSBhIGx1aSAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjMxMQorIywgYy1mb3JtYXQKK21zZ2lkICJhbnkgZGl2ZXJzaW9uIG9mICVzIHRvICVzIgorbXNnc3RyICJvcmljZSByZWRpcmVjdGFyZSBhIGx1aSAlcyBjxIN0cmUgJXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGNyZWF0ZSBuZXcgJXMgZmlsZSIKK21zZ3N0ciAibnUgc2UgcG9hdGUgY3JlYSBmaciZaWVydWwgbm91ICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mzc1IHNyYy9zdGF0Y21kLmM6MjE1IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNDA0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCBmaWxlICclcyciCittc2dzdHIgImXImWVjIGxhIGZsdXNoIHBlbnRydSBmaciZaWVydWwg4oCeJXPigJ0iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozODIKK21zZ2lkICJlcnJvciByZW1vdmluZyBvbGQgZGl2ZXJzaW9ucy1vbGQiCittc2dzdHIgImVyb2FyZSBsYSDImXRlcmdlcmVhIHJlZGlyZWN0xINyaWxvciBhbnRlcmlvYXJlIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mzg0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgbmV3IGRpdmVyc2lvbnMtb2xkIgorbXNnc3RyICJlcm9hcmUgbGEgY3JlYXJlYSBub2lpIHJlZGlyZWN0xINyaSIKKworIzogc3JjL2RpdmVydGNtZC5jOjM4NgorbXNnaWQgImVycm9yIGluc3RhbGxpbmcgbmV3IGRpdmVyc2lvbnMiCittc2dzdHIgImVyb2FyZSBsYSBpbnN0YWxhcmVhIG5vaWxvciBkaXZlcnNpdW5pIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDA2IHNyYy9kaXZlcnRjbWQuYzo1MDMgc3JjL2RpdmVydGNtZC5jOjYxMAorIzogc3JjL2RpdmVydGNtZC5jOjYzMCBzcmMvc3RhdGNtZC5jOjI5MAorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGEgc2luZ2xlIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIG5lY2VzaXTEgyB1biBzaW5ndXIgYXJndW1lbnQiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MDkgc3JjL2RpdmVydGNtZC5jOjQzMAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlbmFtZSBcIiVzXCIgaXMgbm90IGFic29sdXRlIgorbXNnc3RyICJudW1lbGUgZGUgZmnImWllciDigJ4lc+KAnSBudSBlc3RlIGFic29sdXQiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MTEgc3JjL3N0YXRjbWQuYzoyNDkKK21zZ2lkICJmaWxlIG1heSBub3QgY29udGFpbiBuZXdsaW5lcyIKK21zZ3N0ciAibnVtZWxlIGRlIGZpyJlpZXIgbnUgcG9hdGUgY29uyJtpbmUgY2FyYWN0ZXJlIG5ld2xpbmUiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MTgKK21zZ2lkICJDYW5ub3QgZGl2ZXJ0IGRpcmVjdG9yaWVzIgorbXNnc3RyICJOdSBzZSBwb3QgcmVkaXJlY3RhIGRpcmVjdG9hcmUiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGRpdmVydCBmaWxlICclcycgdG8gaXRzZWxmIgorbXNnc3RyICJudSBzZSBwb2F0ZSByZWRpcmVjdGEgZmnImWllcnVsIOKAniVz4oCdIGPEg3RyZSBlbCDDrm5zdciZaSIKKworIzogc3JjL2RpdmVydGNtZC5jOjQ1MworIywgYy1mb3JtYXQKK21zZ2lkICJMZWF2aW5nICclcydcbiIKK21zZ3N0ciAiU2UgcMSDcsSDc2XImXRlIOKAniVz4oCdXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBjbGFzaGVzIHdpdGggYCVzJyIKK21zZ3N0ciAi4oCeJXPigJ0gc2UgY2lvY25lyJl0ZSBjdSDigJ4lc+KAnSIKKworIzogc3JjL2RpdmVydGNtZC5jOjQ4MQorIywgYy1mb3JtYXQKK21zZ2lkICJBZGRpbmcgJyVzJ1xuIgorbXNnc3RyICJTZSBhZGF1Z8SDIOKAniVz4oCdXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiTm8gZGl2ZXJzaW9uICclcycsIG5vbmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiTnUgZXhpc3TEgyByZWRpcmVjdGFyZSDigJ4lc+KAnSwgbnUgcy1hIMiZdGVycyBuaW1pYy5cbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjUyNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisibWlzbWF0Y2ggb24gZGl2ZXJ0LXRvXG4iCisiICB3aGVuIHJlbW92aW5nIGAlcydcbiIKKyIgIGZvdW5kIGAlcyciCittc2dzdHIgIiIKKyJuZXBvdHJpdmlyZSBsYSByZWRpcmVjdGFyZS1jxIN0cmVcbiIKKyIgIGxhIMiZdGVyZ2VyZWEgbHVpIOKAniVz4oCdXG4iCisiICBhIGZvc3QgZ8SDc2l0IOKAniVz4oCdIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJtaXNtYXRjaCBvbiBwYWNrYWdlXG4iCisiICB3aGVuIHJlbW92aW5nIGAlcydcbiIKKyIgIGZvdW5kIGAlcyciCittc2dzdHIgIiIKKyJuZXBvdHJpdmlyZSBsYSBwYWNoZXRcbiIKKyIgIGxhIMiZdGVyZ2VyZWEgbHVpIOKAniVz4oCdXG4iCisiICBzLWEgZ8SDc2l0IOKAniVz4oCdIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTM5CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlbW92aW5nICclcydcbiIKK21zZ3N0ciAiU2UgyJl0ZXJnZSDigJ4lc+KAnVxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjU3Cittc2dpZCAicGFja2FnZSBtYXkgbm90IGNvbnRhaW4gbmV3bGluZXMiCittc2dzdHIgInBhY2hldHVsIG51IHBvYXRlIGNvbsibaW5lIGNhcmFjdGVyZSBuZXdsaW5lIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjY2Cittc2dpZCAiZGl2ZXJ0LXRvIG1heSBub3QgY29udGFpbiBuZXdsaW5lcyIKK21zZ3N0ciAicmVkaXJlY3RhcmUtY8SDdHJlIG51IHBvYXRlIGNvbsibaW5lIGNhcmFjdGVyZSBuZXdsaW5lIgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzo2NAorbXNnaWQgImZhaWxlZCB0byBvcGVuIGRpdmVyc2lvbnMgZmlsZSIKK21zZ3N0ciAiZciZZWMgbGEgZGVzY2hpZGVyZWEgZmnImWllcnVsdWkgZGUgcmVkaXJlY3TEg3JpIgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzo3MQorbXNnaWQgImZhaWxlZCB0byBmc3RhdCBwcmV2aW91cyBkaXZlcnNpb25zIGZpbGUiCittc2dzdHIgImXImWVjIGxhIGZzdGF0IGEgZmnImWllcnVsdWkgYW50ZXJpb3IgZGUgcmVkaXJlY3TEg3JpIgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzo3MworbXNnaWQgImZhaWxlZCB0byBmc3RhdCBkaXZlcnNpb25zIGZpbGUiCittc2dzdHIgImXImWVjIGxhIGZzdGF0IGEgZmnImWllcnVsdWkgZGUgcmVkaXJlY3TEg3JpIgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzoxMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmxpY3RpbmcgZGl2ZXJzaW9ucyBpbnZvbHZpbmcgYCUuMjUwcycgb3IgYCUuMjUwcyciCittc2dzdHIgInJlZGlyZWN0xINyaSBjb25mbGljdHVhbGUgY2FyZSBpbXBsaWPEgyDigJ4lLjI1MHPigJ0gc2F1IOKAniUuMjUwc+KAnSIKKworIzogc3JjL2VucXVpcnkuYzo3MworbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBpbiBhIG1lc3MgZHVlIHRvIHNlcmlvdXMgcHJvYmxlbXMgZHVyaW5nXG4iCisiaW5zdGFsbGF0aW9uLiAgVGhleSBtdXN0IGJlIHJlaW5zdGFsbGVkIGZvciB0aGVtIChhbmQgYW55IHBhY2thZ2VzXG4iCisidGhhdCBkZXBlbmQgb24gdGhlbSkgdG8gZnVuY3Rpb24gcHJvcGVybHk6XG4iCittc2dzdHIgIiIKKyJVcm3Eg3RvYXJlbGUgcGFjaGV0ZSBzdW50IG5lZnVuY8ibaW9uYWxlIGRhdG9yaXTEgyB1bm9yIHByb2JsZW1lXG4iCisiZ3JhdmUgYXDEg3J1dGUgbGEgaW5zdGFsYXJlLiBFbGUgdHJlYnVpZSByZWluc3RhbGF0ZSAoyJlpIHRvYXRlXG4iCisicGFjaGV0ZWxlIGNhcmUgZGVwaW5kZSBkZSBlbGUpIHBlbnRydSBhIGZ1bmPIm2lvbmEgY29yZXNwdW56xIN0b3I6XG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6ODAKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBoYXZlIGJlZW4gdW5wYWNrZWQgYnV0IG5vdCB5ZXQgY29uZmlndXJlZC5cbiIKKyJUaGV5IG11c3QgYmUgY29uZmlndXJlZCB1c2luZyBkcGtnIC0tY29uZmlndXJlIG9yIHRoZSBjb25maWd1cmVcbiIKKyJtZW51IG9wdGlvbiBpbiBkc2VsZWN0IGZvciB0aGVtIHRvIHdvcms6XG4iCittc2dzdHIgIiIKKyJVcm3Eg3RvYXJlbGUgcGFjaGV0ZSBhdSBmb3N0IGRlc3BhY2hldGF0ZSBkYXIgw65uY8SDIG51IGF1IGZvc3QgY29uZmlndXJhdGUuXG4iCisiRWxlIHRyZWJ1aWUgY29uZmlndXJhdGUgZm9sb3NpbmQgZHBrZyAtLWNvbmZpZ3VyZSBzYXUgb3DIm2l1bmVhIGNvbmZpZ3VyYXJlICIKKyJkaW5cbiIKKyJtZW5pdWwgcHJvZ3JhbXVsdWkgZHNlbGVjdCwgcGVudHJ1IGEgZmkgZnVuY8ibaW9uYWxlOlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjg3Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgYXJlIG9ubHkgaGFsZiBjb25maWd1cmVkLCBwcm9iYWJseSBkdWUgdG8gcHJvYmxlbXNcbiIKKyJjb25maWd1cmluZyB0aGVtIHRoZSBmaXJzdCB0aW1lLiAgVGhlIGNvbmZpZ3VyYXRpb24gc2hvdWxkIGJlIHJldHJpZWQgdXNpbmdcbiIKKyJkcGtnIC0tY29uZmlndXJlIDxwYWNrYWdlPiBvciB0aGUgY29uZmlndXJlIG1lbnUgb3B0aW9uIGluIGRzZWxlY3Q6XG4iCittc2dzdHIgIiIKKyJVcm3Eg3RvYXJlbGUgcGFjaGV0ZSBzdW50IGNvbmZpZ3VyYXRlIGRvYXIgcGUganVtxIN0YXRlLCBwcm9iYWJpbCBkYXRvcml0xIMgXG4iCisidW5vciBwcm9ibGVtZSBsYSBwcmltYSBsb3IgY29uZmlndXJhcmUuIENvbmZpZ3VyYXJlYSBhciB0cmVidWkgcmXDrm5jZXJjYXTEgyBcbiIKKyJmb2xvc2luZCBkcGtnIC0tY29uZmlndXJlIDxwYWNoZXQ+IHNhdSBvcMibaXVuZWEgY29uZmlndXJhcmUgZGluIG1lbml1bCBsdWkgIgorImRzZWxlY3Q6XG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6OTQKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgb25seSBoYWxmIGluc3RhbGxlZCwgZHVlIHRvIHByb2JsZW1zIGR1cmluZ1xuIgorImluc3RhbGxhdGlvbi4gIFRoZSBpbnN0YWxsYXRpb24gY2FuIHByb2JhYmx5IGJlIGNvbXBsZXRlZCBieSByZXRyeWluZyBpdDtcbiIKKyJ0aGUgcGFja2FnZXMgY2FuIGJlIHJlbW92ZWQgdXNpbmcgZHNlbGVjdCBvciBkcGtnIC0tcmVtb3ZlOlxuIgorbXNnc3RyICIiCisiVXJtxIN0b2FyZWxlIHBhY2hldGUgc3VudCBpbnN0YWxhdGUgZG9hciBwZSBqdW3Eg3RhdGUsIGRhdG9yaXTEgyBwcm9ibGVtZWxvciAiCisiZGluIFxuIgorInRpbXB1bCBpbnN0YWzEg3JpaS4gSW5zdGFsYXJlYSBwcm9iYWJpbCBwb2F0ZSBmaSB0ZXJtaW5hdMSDIGRhY8SDIHNlIHJlcGV0xIMuXG4iCisiUGFjaGV0ZWxlIHBvdCBmaSDImXRlcnNlIGZvbG9zaW5kIGRzZWxlY3Qgc2F1IGRwa2cgLS1yZW1vdmU6XG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTAxCittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgYXJlIGF3YWl0aW5nIHByb2Nlc3Npbmcgb2YgdHJpZ2dlcnMgdGhhdCB0aGV5XG4iCisiaGF2ZSBhY3RpdmF0ZWQgaW4gb3RoZXIgcGFja2FnZXMuICBUaGlzIHByb2Nlc3NpbmcgY2FuIGJlIHJlcXVlc3RlZCB1c2luZ1xuIgorImRzZWxlY3Qgb3IgZHBrZyAtLWNvbmZpZ3VyZSAtLXBlbmRpbmcgKG9yIGRwa2cgLS10cmlnZ2Vycy1vbmx5KTpcbiIKK21zZ3N0ciAiIgorIlVybcSDdG9hcmVsZSBwYWNoZXRlIGHImXRlcHTEgyBwcm9jZXNhcmVhIHVub3IgZGVjbGFuyJlhdG9yaSBwZSBjYXJlIGktYXVcbiIKKyJhY3RpdmF0IMOubiBhbHRlIHBhY2hldGUuIEFjZWFzdMSDIHByb2Nlc2FyZSBwb2F0ZSBmaSBjZXJ1dMSDIGZvbG9zaW5kXG4iCisiZHNlbGVjdCBzYXUgZHBrZyAtLWNvbmZpZ3VyZSAtLXBlbmRpbmcgKHNhdSBkcGtnIC0tdHJpZ2dlcnMtb25seSk6XG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTA4Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgaGF2ZSBiZWVuIHRyaWdnZXJlZCwgYnV0IHRoZSB0cmlnZ2VyIHByb2Nlc3NpbmdcbiIKKyJoYXMgbm90IHlldCBiZWVuIGRvbmUuICBUcmlnZ2VyIHByb2Nlc3NpbmcgY2FuIGJlIHJlcXVlc3RlZCB1c2luZ1xuIgorImRzZWxlY3Qgb3IgZHBrZyAtLWNvbmZpZ3VyZSAtLXBlbmRpbmcgKG9yIGRwa2cgLS10cmlnZ2Vycy1vbmx5KTpcbiIKK21zZ3N0ciAiIgorIlVybcSDdG9hcmVsZSBwYWNoZXRlIGF1IGZvc3QgZGVjbGFuyJlhdGUsIGRhciBwcm9jZXNhcmVhIGRlY2xhbsiZYXRvcmlsb3IgbnVcbiIKKyJzLWEgZWZlY3R1YXQgw65uY8SDLiBQcm9jZXNhcmVhIGRlY2xhbsiZYXRvcmlsb3IgcG9hdGUgZmkgY2VydXTEgyBmb2xvc2luZFxuIgorImRzZWxlY3Qgc2F1IGRwa2cgLS1jb25maWd1cmUgLS1wZW5kaW5nIChzYXUgZHBrZyAtLXRyaWdnZXJzLW9ubHkpOlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjEzNyBzcmMvZW5xdWlyeS5jOjIxMSBzcmMvZW5xdWlyeS5jOjI5MiBzcmMvZW5xdWlyeS5jOjM3MworIzogc3JjL2VucXVpcnkuYzo0NjAgc3JjL3NlbGVjdC5jOjk4IHNyYy9zZWxlY3QuYzoxNjQgc3JjL3RyaWdjbWQuYzoxOTkKKyM6IHNyYy91cGRhdGUuYzo0OCBzcmMvdXBkYXRlLmM6MTEzIGRwa2ctc3BsaXQvcXVldWUuYzoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyB0YWtlcyBubyBhcmd1bWVudHMiCittc2dzdHIgIi0tJXMgbnUgaWEgYXJndW1lbnRlIgorCisjOiBzcmMvZW5xdWlyeS5jOjE1MgorbXNnaWQgIiIKKyJBbm90aGVyIHByb2Nlc3MgaGFzIGxvY2tlZCB0aGUgZGF0YWJhc2UgZm9yIHdyaXRpbmcsIGFuZCBtaWdodCBjdXJyZW50bHkgYmVcbiIKKyJtb2RpZnlpbmcgaXQsIHNvbWUgb2YgdGhlIGZvbGxvd2luZyBwcm9ibGVtcyBtaWdodCBqdXN0IGJlIGR1ZSB0byB0aGF0LlxuIgorbXNnc3RyICIiCisiVW4gYWx0IHByb2NlcyBhIGJsb2NhdCBiYXphIGRlIGRhdGUgcGVudHJ1IHNjcmllcmUgyJlpIGFyIHB1dGVhIHPEgyBvICIKKyJtb2RpZmljZVxuIgorIsOubiBhY2VzdCBtb21lbnQuIFVuZWxlIGRpbiBwcm9ibGVtZWxlIHVybcSDdG9hcmUgYXIgcHV0ZWEgZmkgZGluIGFjZWFzdMSDXG4iCisiY2F1esSDLlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjE5MQorIywgZnV6enkKKyN8IG1zZ2lkICI8dW5rbm93bj4iCittc2djdHh0ICJzZWN0aW9uIgorbXNnaWQgIjx1bmtub3duPiIKK21zZ3N0ciAiPG5lY3Vub3NjdXQ+IgorCisjOiBzcmMvZW5xdWlyeS5jOjI1MQorIywgYy1mb3JtYXQKK21zZ2lkICIgJWQgaW4gJXM6ICIKK21zZ3N0ciAiICVkIMOubiAlczogIgorCisjOiBzcmMvZW5xdWlyeS5jOjI2NgorIywgYy1mb3JtYXQKK21zZ2lkICIgJWQgcGFja2FnZSwgZnJvbSB0aGUgZm9sbG93aW5nIHNlY3Rpb246IgorbXNnaWRfcGx1cmFsICIgJWQgcGFja2FnZXMsIGZyb20gdGhlIGZvbGxvd2luZyBzZWN0aW9uczoiCittc2dzdHJbMF0gIiAlZCBwYWNoZXQsIGRpbiB1cm3Eg3RvYXJlYSBzZWPIm2l1bmU6IgorbXNnc3RyWzFdICIgJWQgcGFjaGV0ZSwgZGluIHVybcSDdG9hcmVsZSBzZWPIm2l1bmk6IgorbXNnc3RyWzJdICIgJWQgZGUgcGFjaGV0ZSwgZGluIHVybcSDdG9hcmVsZSBzZWPIm2l1bmk6IgorCisjOiBzcmMvZW5xdWlyeS5jOjMwNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVmVyc2lvbiBvZiBkcGtnIHdpdGggd29ya2luZyAlcyBzdXBwb3J0IG5vdCB5ZXQgY29uZmlndXJlZC5cbiIKKyIgUGxlYXNlIHVzZSAnZHBrZyAtLWNvbmZpZ3VyZSBkcGtnJywgYW5kIHRoZW4gdHJ5IGFnYWluLlxuIgorbXNnc3RyICIiCisiTyB2ZXJzaXVuZSBkZSBkcGtnIGN1IHN1cG9ydCBmdW5jyJtpb25hbCBwZW50cnUgJXMgbnUgZXN0ZSBjb25maWd1cmF0xIMgw65uY8SDLlxuIgorIiBGb2xvc2nIm2kg4oCeZHBrZyAtLWNvbmZpZ3VyZSBkcGtn4oCdIMiZaSBhcG9pIMOubmNlcmNhyJtpIGRpbiBub3UuXG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzEwCisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2cgbm90IHJlY29yZGVkIGFzIGluc3RhbGxlZCwgY2Fubm90IGNoZWNrIGZvciAlcyBzdXBwb3J0IVxuIgorbXNnc3RyICIiCisiZHBrZyBudSBlc3RlIMOubnJlZ2lzdHJhdCBjYSBmaWluZCBpbnN0YWxhdCwgbnUgc2UgcG9hdGUgdmVyaWZpY2EgZXhpc3RlbsibYVxuIgorIiBzdXBvcnR1bHVpIHBlbnRydSAlc1xuIgorCisjOiBzcmMvZW5xdWlyeS5jOjMyMQorbXNnaWQgIlByZS1EZXBlbmRzIGZpZWxkIgorbXNnc3RyICJjw6JtcHVsIFByZS1EZXBlbmRzIgorCisjOiBzcmMvZW5xdWlyeS5jOjMyOQorbXNnaWQgImVwb2NoIgorbXNnc3RyICJlcG9jxIMiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzM3Cittc2dpZCAibG9uZyBmaWxlbmFtZXMiCittc2dzdHIgImRlbnVtaXJpIGx1bmdpIGRlIGZpyJlpZXJlIgorCisjOiBzcmMvZW5xdWlyeS5jOjM0NgorbXNnaWQgIm11bHRpcGxlIENvbmZsaWN0cyBhbmQgUmVwbGFjZXMiCittc2dzdHIgIm11bHRpcGxlIENvbmZsaWN0cyDImWkgUmVwbGFjZXMiCisKKyM6IHNyYy9lbnF1aXJ5LmM6NDM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBjYW5ub3Qgc2VlIGhvdyB0byBzYXRpc2Z5IHByZS1kZXBlbmRlbmN5OlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisiZHBrZzogbnUgc2UgdmVkZSBjdW0gcy1hciBwdXRlYSBzYXRpc2ZhY2UgYW50ZS1kZXBlbmRlbsibYTpcbiIKKyIgJXNcbiIKKworIzogc3JjL2VucXVpcnkuYzo0MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHNhdGlzZnkgcHJlLWRlcGVuZGVuY2llcyBmb3IgJS4yNTBzICh3YW50ZWQgZHVlIHRvICUuMjUwcykiCittc2dzdHIgIiIKKyJudSBzZSBwb2F0ZSBzYXRpc2ZhY2UgYW50ZS1kZXBlbmRlbsibYSBwZW50cnUgJS4yNTBzIChuZWNlc2FyxIMgZGF0b3JpdMSDIGx1aSAiCisiJS4yNTBzKSIKKworIzogc3JjL2VucXVpcnkuYzo0NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAib2Jzb2xldGUgb3B0aW9uICctLSVzJywgcGxlYXNlIHVzZSAnLS0lcycgaW5zdGVhZC4iCittc2dzdHIgIm9wyJtpdW5lIMOubnZlY2hpdMSDIOKAni0tJXPigJ0sIGZvbG9zacibaSDigJ4tLSVz4oCdIMOubiBzY2hpbWIuIgorCisjOiBzcmMvZW5xdWlyeS5jOjUxOQorbXNnaWQgIiIKKyItLWNvbXBhcmUtdmVyc2lvbnMgdGFrZXMgdGhyZWUgYXJndW1lbnRzOiA8dmVyc2lvbj4gPHJlbGF0aW9uPiA8dmVyc2lvbj4iCittc2dzdHIgIi0tY29tcGFyZS12ZXJzaW9ucyBpYSB0cmVpIGFyZ3VtZW50ZTogPHZlcnNpdW5lPiA8cmVsYcibaWU+IDx2ZXJzaXVuZT4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6NTI0Cittc2dpZCAiLS1jb21wYXJlLXZlcnNpb25zIGJhZCByZWxhdGlvbiIKK21zZ3N0ciAiLS1jb21wYXJlLXZlcnNpb25zIHJlbGHIm2llIG5ldmFsaWTEgyIKKworIzogc3JjL2VucXVpcnkuYzo1Mjkgc3JjL2VucXVpcnkuYzo1MzEgc3JjL2VucXVpcnkuYzo1NDAgc3JjL2VucXVpcnkuYzo1NDIKKyMsIGMtZm9ybWF0Cittc2dpZCAidmVyc2lvbiAnJXMnIGhhcyBiYWQgc3ludGF4OiAlcyIKK21zZ3N0ciAidmVyc2l1bmVhICVzIGFyZSBzaW50YXhhIGdyZciZaXTEgzogJXMiCisKKyM6IHNyYy9lcnJvcnMuYzo2MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IGVycm9yIHByb2Nlc3NpbmcgJXMgKC0tJXMpOlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisiJXM6IGVyb2FyZSBsYSBwcm9jZXNhcmVhICVzICgtLSVzKTpcbiIKKyIgJXNcbiIKKworIzogc3JjL2Vycm9ycy5jOjY4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiZHBrZzogZmFpbGVkIHRvIGFsbG9jYXRlIG1lbW9yeSBmb3IgbmV3IGVudHJ5IGluIGxpc3Qgb2YgZmFpbGVkIHBhY2thZ2VzLiIKK21zZ2lkICIiCisiJXM6IGZhaWxlZCB0byBhbGxvY2F0ZSBtZW1vcnkgZm9yIG5ldyBlbnRyeSBpbiBsaXN0IG9mIGZhaWxlZCBwYWNrYWdlczogJXMiCittc2dzdHIgIiIKKyJkcGtnOiBlyJllYyBsYSBhbG9jYXJlYSBtZW1vcmllaSBwZW50cnUgbm91YSBpbnRyYXJlIMOubiBsaXN0YSBwYWNoZXRlbG9yICIKKyJlyJl1YXRlLiIKKworIzogc3JjL2Vycm9ycy5jOjc5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJkcGtnOiB0b28gbWFueSBlcnJvcnMsIHN0b3BwaW5nXG4iCittc2dpZCAiJXM6IHRvbyBtYW55IGVycm9ycywgc3RvcHBpbmdcbiIKK21zZ3N0ciAiZHBrZzogcHJlYSBtdWx0ZSBlcm9yaSwgc2Ugw65udHJlcnVwZVxuIgorCisjOiBzcmMvZXJyb3JzLmM6ODcKK21zZ2lkICJFcnJvcnMgd2VyZSBlbmNvdW50ZXJlZCB3aGlsZSBwcm9jZXNzaW5nOlxuIgorbXNnc3RyICJFcm9yaSDDrm50w6Jsbml0ZSDDrm4gdGltcHVsIHByZWx1Y3LEg3JpaTpcbiIKKworIzogc3JjL2Vycm9ycy5jOjk0Cittc2dpZCAiUHJvY2Vzc2luZyB3YXMgaGFsdGVkIGJlY2F1c2UgdGhlcmUgd2VyZSB0b28gbWFueSBlcnJvcnMuXG4iCittc2dzdHIgIlByZWx1Y3JhcmVhIGEgZm9zdCBvcHJpdMSDIGRlb2FyZWNlIGF1IGZvc3QgcHJlYSBtdWx0ZSBlcm9yaS5cbiIKKworIzogc3JjL2Vycm9ycy5jOjEwNQorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlICVzIHdhcyBvbiBob2xkLCBwcm9jZXNzaW5nIGl0IGFueXdheSBhcyB5b3UgcmVxdWVzdGVkXG4iCittc2dzdHIgIlBhY2hldHVsICVzIGEgZm9zdCByZcibaW51dCwgdmEgZmkgb3JpY3VtIHByb2Nlc2F0IGN1bSBhyJtpIGNlcnV0XG4iCisKKyM6IHNyYy9lcnJvcnMuYzoxMDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlBhY2thZ2UgJXMgaXMgb24gaG9sZCwgbm90IHRvdWNoaW5nIGl0LiAgVXNlIC0tZm9yY2UtaG9sZCB0byBvdmVycmlkZS5cbiIKK21zZ3N0ciAiIgorIlBhY2hldHVsICVzIGVzdGUgcmXIm2ludXQsIG51IHNlIGF0aW5nZS4gRm9sb3NpyJtpIC0tZm9yY2UtaG9sZCBwZW50cnUgYWwgIgorImZvcsibYS5cbiIKKworIzogc3JjL2Vycm9ycy5jOjExOQorbXNnaWQgIm92ZXJyaWRpbmcgcHJvYmxlbSBiZWNhdXNlIC0tZm9yY2UgZW5hYmxlZDoiCittc2dzdHIgInByb2JsZW3EgyBsYSBmb3LIm2FyZSBkYXRvcml0xIMgYWN0aXbEg3JpaSBsdWkgLS1mb3JjZTogIgorCisjOiBzcmMvZmlsZXNkYi5jOjMwNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcyciCittc2dzdHIgIiIKKyJudSBzZSBwb2F0ZSBkZXNjaGlkZSBmaciZaWVydWwgY3UgbGlzdGEgZmnImWllcmVsb3IgcGVudHJ1IHBhY2hldHVsIOKAniUuMjUwc+KAnSIKKworIzogc3JjL2ZpbGVzZGIuYzozMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSBgJS4yNTBzJyBtaXNzaW5nLCBhc3N1bWluZyBwYWNrYWdlIGhhcyBubyBmaWxlcyAiCisiY3VycmVudGx5IGluc3RhbGxlZC4iCittc2dzdHIgIiIKKyJmaciZaWVydWwgY3UgbGlzdGEgZmnImWllcmVsb3IgcGFjaGV0dWx1aSDigJ4lLjI1MHPigJ0gbGlwc2XImXRlLCBzZSBwcmVzdXB1bmUgY8SDICIKKyJwYWNoZXR1bCBudSBhcmUgbmljaSB1biBmaciZaWVyIGluc3RhbGF0LiIKKworIzogc3JjL2ZpbGVzZGIuYzozMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICclLjI1MHMnIgorbXNnc3RyICIiCisic3RhdCBpbXBvc2liaWwgcGVudHJ1IGZpyJlpZXJ1bCBjdSBsaXN0YSBmaciZaWVyZWxvciBwZW50cnUgcGFjaGV0dWwg4oCeJS4yNTBz4oCdIgorCisjOiBzcmMvZmlsZXNkYi5jOjMzMAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZXMgbGlzdCBmb3IgcGFja2FnZSBgJS4yNTBzJyIKK21zZ2lkICJyZWFkaW5nIGZpbGVzIGxpc3QgZm9yIHBhY2thZ2UgJyUuMjUwcyciCittc2dzdHIgImxpc3RhIGZpyJlpZXJlbG9yIHBlbnRydSBwYWNoZXR1bCDigJ4lLjI1MHPigJ0iCisKKyM6IHNyYy9maWxlc2RiLmM6MzM2CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAnJS4yNTBzJyBpcyBtaXNzaW5nIGZpbmFsIG5ld2xpbmUiCittc2dzdHIgIiIKKyJkaW4gZmnImWllcnVsIGN1IGxpc3RhIGZpyJlpZXJlbG9yIHBhY2hldHVsdWkg4oCeJS4yNTBz4oCdIGxpcHNlyJl0ZSBjYXJhY3RlcnVsICIKKyJuZXdsaW5lIGRlIGxhIGZpbmFsIgorCisjOiBzcmMvZmlsZXNkYi5jOjM0NAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcycgY29udGFpbnMgZW1wdHkgZmlsZW5hbWUiCittc2dzdHIgIiIKKyJmaciZaWVydWwgY3UgbGlzdGEgZmnImWllcmVsb3IgcGFjaGV0dWx1aSDigJ4lLjI1MHPigJ0gY29uyJtpbmUgbnVtZSBkZSBmaciZaWVyIHZpZCIKKworIzogc3JjL2ZpbGVzZGIuYzozNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcyciCittc2dzdHIgIiIKKyJlcm9hcmUgbGEgw65uY2hpZGVyZWEgZmnImWllcnVsdWkgbGlzdGVpIGN1IGZpyJlpZXJlbGUgcGVudHJ1IHBhY2hldHVsIOKAniUuMjUwc+KAnSIKKworIzogc3JjL2ZpbGVzZGIuYzo0NjIKK21zZ2lkICIoUmVhZGluZyBkYXRhYmFzZSAuLi4gIgorbXNnc3RyICIoU2UgY2l0ZciZdGUgYmF6YSBkZSBkYXRlIC4uLiAiCisKKyM6IHNyYy9maWxlc2RiLmM6NDgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiVkIGZpbGUgb3IgZGlyZWN0b3J5IGN1cnJlbnRseSBpbnN0YWxsZWQuKVxuIgorbXNnaWRfcGx1cmFsICIlZCBmaWxlcyBhbmQgZGlyZWN0b3JpZXMgY3VycmVudGx5IGluc3RhbGxlZC4pXG4iCittc2dzdHJbMF0gIiVkIGZpyJlpZXIgc2F1IGRpcmVjdG9yIGFjdHVhbG1lbnRlIGluc3RhbGF0LilcbiIKK21zZ3N0clsxXSAiJWQgZmnImWllcmUgyJlpIGRpcmVjdG9hcmUgYWN0dWFsbWVudGUgaW5zdGFsYXRlLilcbiIKK21zZ3N0clsyXSAiJWQgZGUgZmnImWllcmUgyJlpIGRpcmVjdG9hcmUgYWN0dWFsbWVudGUgaW5zdGFsYXRlLilcbiIKKworIzogc3JjL2ZpbGVzZGIuYzo1MTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAiIgorIm51IHNlIHBvYXRlIGNyZWEgZmnImWllcnVsIGFjdHVhbGl6YXQgY3UgbGlzdGEgZmnImWllcmVsb3IgcGVudHJ1IHBhY2hldHVsICVzIgorCisjOiBzcmMvZmlsZXNkYi5jOjUyNgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgdG8gdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIiIKKyJlyJllYyBsYSBzY3JpZXJlYSBmaciZaWVydWx1aSBhY3R1YWxpemF0IGN1IGxpc3RhIGZpyJlpZXJlbG9yIHBlbnRydSBwYWNoZXR1bCAlcyIKKworIzogc3JjL2ZpbGVzZGIuYzo1MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZsdXNoIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICIiCisiZciZZWMgbGEgZmx1c2ggcGVudHJ1IGZpyJlpZXJ1bCBhY3R1YWxpemF0IGN1IGxpc3RhIGZpyJlpZXJlbG9yIHBhY2hldHVsdWkgJXMiCisKKyM6IHNyYy9maWxlc2RiLmM6NTMwCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBzeW5jIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICIiCisiZciZZWMgbGEgc3luYyBwZW50cnUgZmnImWllcnVsIGFjdHVhbGl6YXQgY3UgbGlzdGEgZmnImWllcmVsb3IgcGVudHJ1IHBhY2hldHVsICIKKyIlcyIKKworIzogc3JjL2ZpbGVzZGIuYzo1MzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNsb3NlIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICIiCisiZciZZWMgbGEgw65uY2hpZGVyZWEgZmnImWllcnVsdWkgYWN0dWFsaXphdCBjdSBsaXN0YSBmaciZaWVyZWxvciBwZW50cnUgcGFjaGV0dWwgIgorIiVzIgorCisjOiBzcmMvZmlsZXNkYi5jOjUzNQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gaW5zdGFsbCB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAiIgorImXImWVjIGxhIGluc3RhbGFyZWEgZmnImWllcnVsdWkgYWN0dWFsaXphdCBjdSBsaXN0YSBmaciZaWVyZWxvciBwZW50cnUgcGFjaGV0dWwgIgorIiVzIgorCisjOiBzcmMvaGVscC5jOjQ4Cittc2dpZCAibm90IGluc3RhbGxlZCIKK21zZ3N0ciAibmVpbnN0YWxhdCIKKworIzogc3JjL2hlbHAuYzo0OQorbXNnaWQgIm5vdCBpbnN0YWxsZWQgYnV0IGNvbmZpZ3MgcmVtYWluIgorbXNnc3RyICJuZWluc3RhbGF0IGRhciBmaciZaWVyZWxlIGRlIGNvbmZpZ3VyYXJlIHLEg23Dom4iCisKKyM6IHNyYy9oZWxwLmM6NTAKK21zZ2lkICJicm9rZW4gZHVlIHRvIGZhaWxlZCByZW1vdmFsIG9yIGluc3RhbGxhdGlvbiIKK21zZ3N0ciAiZGV0ZXJpb3JhdCBkYXRvcml0xIMgZciZZWN1bHVpIGxhIMOubmRlcMSDcnRhcmUgc2F1IGluc3RhbGFyZSIKKworIzogc3JjL2hlbHAuYzo1MQorbXNnaWQgInVucGFja2VkIGJ1dCBub3QgY29uZmlndXJlZCIKK21zZ3N0ciAiZGVzcGFjaGV0YXQgZGFyIG5lY29uZmlndXJhdCIKKworIzogc3JjL2hlbHAuYzo1MgorbXNnaWQgImJyb2tlbiBkdWUgdG8gcG9zdGluc3QgZmFpbHVyZSIKK21zZ3N0ciAiZGV0ZXJpb3JhdCBkYXRvcml0xIMgZciZZWN1bHVpIHNjcmlwdHVsdWkgcG9zdGluc3QiCisKKyM6IHNyYy9oZWxwLmM6NTMKK21zZ2lkICJhd2FpdGluZyB0cmlnZ2VyIHByb2Nlc3NpbmcgYnkgYW5vdGhlciBwYWNrYWdlIgorbXNnc3RyICJhyJl0ZWFwdMSDIHByb2Nlc2FyZWEgZGVjbGFuyJlhdG9yaWxvciBkZSBjxIN0cmUgdW4gYWx0IHBhY2hldCIKKworIzogc3JjL2hlbHAuYzo1NAorbXNnaWQgInRyaWdnZXJlZCIKK21zZ3N0ciAiZGVjbGFuyJlhdCIKKworIzogc3JjL2hlbHAuYzo1NQorbXNnaWQgImluc3RhbGxlZCIKK21zZ3N0ciAiaW5zdGFsYXQiCisKKyM6IHNyYy9oZWxwLmM6MTA3CisjLCBmdXp6eQorI3wgbXNnaWQgImVycm9yOiBQQVRIIGlzIG5vdCBzZXQuIgorbXNnaWQgIlBBVEggaXMgbm90IHNldC4iCittc2dzdHIgImVyb2FyZTogUEFUSCBudSBlc3RlIHNldGF0LiIKKworIzogc3JjL2hlbHAuYzoxMjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS4iCittc2dzdHIgIuKAniVz4oCdIG51IGEgZm9zdCBnxINzaXQgw65uIFBBVEggc2F1IG51IGVzdGUgZXhlY3V0YWJpbC4iCisKKyM6IHNyYy9oZWxwLmM6MTM4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICInJXMnIG5vdCBmb3VuZCBpbiBQQVRIIG9yIG5vdCBleGVjdXRhYmxlLiIKK21zZ2lkICIiCisiJWQgZXhwZWN0ZWQgcHJvZ3JhbSBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS5cbiIKKyIlcyIKK21zZ2lkX3BsdXJhbCAiIgorIiVkIGV4cGVjdGVkIHByb2dyYW1zIG5vdCBmb3VuZCBpbiBQQVRIIG9yIG5vdCBleGVjdXRhYmxlLlxuIgorIiVzIgorbXNnc3RyWzBdICLigJ4lc+KAnSBudSBhIGZvc3QgZ8SDc2l0IMOubiBQQVRIIHNhdSBudSBlc3RlIGV4ZWN1dGFiaWwuIgorbXNnc3RyWzFdICLigJ4lc+KAnSBudSBhIGZvc3QgZ8SDc2l0IMOubiBQQVRIIHNhdSBudSBlc3RlIGV4ZWN1dGFiaWwuIgorbXNnc3RyWzJdICLigJ4lc+KAnSBudSBhIGZvc3QgZ8SDc2l0IMOubiBQQVRIIHNhdSBudSBlc3RlIGV4ZWN1dGFiaWwuIgorCisjOiBzcmMvaGVscC5jOjE0MQorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiJWQgZXhwZWN0ZWQgcHJvZ3JhbSBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS5cbiIKKyN8ICJOQjogcm9vdCdzIFBBVEggc2hvdWxkIHVzdWFsbHkgY29udGFpbiAvdXNyL2xvY2FsL3NiaW4sIC91c3Ivc2JpbiBhbmQgLyIKKyN8ICJzYmluLiIKKyN8IG1zZ2lkX3BsdXJhbCAiIgorI3wgIiVkIGV4cGVjdGVkIHByb2dyYW1zIG5vdCBmb3VuZCBpbiBQQVRIIG9yIG5vdCBleGVjdXRhYmxlLlxuIgorI3wgIk5COiByb290J3MgUEFUSCBzaG91bGQgdXN1YWxseSBjb250YWluIC91c3IvbG9jYWwvc2JpbiwgL3Vzci9zYmluIGFuZCAvIgorI3wgInNiaW4uIgorbXNnaWQgIiIKKyJOb3RlOiByb290J3MgUEFUSCBzaG91bGQgdXN1YWxseSBjb250YWluIC91c3IvbG9jYWwvc2JpbiwgL3Vzci9zYmluIGFuZCAvIgorInNiaW4uIgorbXNnc3RyICIiCisiJWQgcHJvZ3JhbSBudSBhIGZvc3QgZ8SDc2l0IMOubiBQQVRIIHNhdSBudSBlc3RlIGV4ZWN1dGFiaWwuXG4iCisiTkI6IFBBVEggcGVudHJ1IHV0aWxpemF0b3J1bCByb290IGFyIHRyZWJ1aSBzxIMgY29uyJtpbsSDIC91c3IvbG9jYWwvc2JpbiwgL3Vzci8iCisic2JpbiDImWkgL3NiaW4uIgorCisjOiBzcmMvaGVscC5jOjE4OAorbXNnaWQgImFkbWluZGlyIG11c3QgYmUgaW5zaWRlIGluc3RkaXIgZm9yIGRwa2cgdG8gd29yayBwcm9wZXJseSIKK21zZ3N0ciAiIgorCisjOiBzcmMvaGVscC5jOjE5MCBzcmMvbWFpbi5jOjc0NworIywgZnV6enkKKyN8IG1zZ2lkICJ1bmFibGUgdG8gc2V0ZW52IGZvciBtYWludGFpbmVyIHNjcmlwdCIKK21zZ2lkICJ1bmFibGUgdG8gc2V0ZW52IGZvciBzdWJwcm9jZXNzZXMiCittc2dzdHIgInNldGVudiBpbXBvc2liaWwgcGVudHJ1IHNjcmlwdHVsIG1haW50YWluZXIiCisKKyM6IHNyYy9oZWxwLmM6MTkyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjaHJvb3QgdG8gYCUuMjUwcyciCittc2dzdHIgImXImWVjIGxhIGNocm9vdCDDrm4g4oCeJS4yNTBz4oCdIgorCisjOiBzcmMvaGVscC5jOjE5NCBkcGtnLWRlYi9idWlsZC5jOjQ1NSBkcGtnLWRlYi9idWlsZC5jOjQ1NworIzogZHBrZy1kZWIvYnVpbGQuYzo1MzYgZHBrZy1kZWIvYnVpbGQuYzo1NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIGAlLjI1NXMnIgorbXNnc3RyICJlyJllYyBsYSBjaGRpciDDrm4g4oCeJS4yNTVz4oCdIgorCisjOiBzcmMvaGVscC5jOjI1NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IGV4ZWN1dGUgcGVybWlzc2lvbnMgb24gYCUuMjUwcyciCittc2dzdHIgIm51IHNlIHBvdCBzZXRhIGRyZXB0dXJpIGRlIGV4ZWN1yJtpZSBwZW50cnUg4oCeJS4yNTBz4oCdIgorCisjOiBzcmMvaGVscC5jOjI3NgorbXNnaWQgInVuYWJsZSB0byBzZXRlbnYgZm9yIG1haW50YWluZXIgc2NyaXB0IgorbXNnc3RyICJzZXRlbnYgaW1wb3NpYmlsIHBlbnRydSBzY3JpcHR1bCBtYWludGFpbmVyIgorCisjOiBzcmMvaGVscC5jOjMwMAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnN0YWxsZWQgJXMgc2NyaXB0IgorbXNnc3RyICJzY3JpcHQgJXMgaW5zdGFsYXQiCisKKyM6IHNyYy9oZWxwLmM6MzEzIHNyYy9oZWxwLmM6MzgyIHNyYy9oZWxwLmM6NDQxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0ICVzIGAlLjI1MHMnIgorbXNnc3RyICJzdGF0IGltcG9zaWJpbCBwZW50cnUgJXMg4oCeJS4yNTBz4oCdIgorCisjOiBzcmMvaGVscC5jOjM2OCBzcmMvaGVscC5jOjQyOAorIywgYy1mb3JtYXQKK21zZ2lkICJuZXcgJXMgc2NyaXB0IgorbXNnc3RyICJzY3JpcHQgJXMgbm91IgorCisjOiBzcmMvaGVscC5jOjQwMgorIywgYy1mb3JtYXQKK21zZ2lkICJvbGQgJXMgc2NyaXB0IgorbXNnc3RyICJzY3JpcHQgJXMgdmVjaGkiCisKKyM6IHNyYy9oZWxwLmM6NDE2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0ICVzICclLjI1MHMnOiAlcyIKK21zZ3N0ciAic3RhdCBpbXBvc2liaWwgcGVudHJ1ICVzIOKAniUuMjUwc+KAnTogJXMiCisKKyM6IHNyYy9oZWxwLmM6NDI1CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2cgLSB0cnlpbmcgc2NyaXB0IGZyb20gdGhlIG5ldyBwYWNrYWdlIGluc3RlYWQgLi4uXG4iCittc2dzdHIgImRwa2cgLSDDrm5jZXJjIMOubiBzY2hpbWIgc2NyaXB0dWwgZGluIHBhY2hldHVsIG5vdSAuLi5cbiIKKworIzogc3JjL2hlbHAuYzo0MzkKK21zZ2lkICJ0aGVyZSBpcyBubyBzY3JpcHQgaW4gdGhlIG5ldyB2ZXJzaW9uIG9mIHRoZSBwYWNrYWdlIC0gZ2l2aW5nIHVwIgorbXNnc3RyICJudSBleGlzdMSDIG5pY2kgdW4gc2NyaXB0IHZlcnNpdW5lYSBub3XEgyBhIHBhY2hldHVsdWkgLSBzZSByZW51bsibxIMiCisKKyM6IHNyYy9oZWxwLmM6NDQ1CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IC4uLiBpdCBsb29rcyBsaWtlIHRoYXQgd2VudCBPSy5cbiIKK21zZ3N0ciAiZHBrZzogLi4uIHBhcmUgc8SDIGZpIGZvc3QgYmluZS5cbiIKKworIzogc3JjL2hlbHAuYzo2MTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNlY3VyZWx5IHJlbW92ZSAnJS4yNTVzJyIKK21zZ3N0ciAibnUgc2UgcG9hdGUgyJl0ZXJnZSDDrm4gc2lndXJhbsibxIMg4oCeJS4yNTVz4oCdIgorCisjOiBzcmMvaGVscC5jOjYyMSBkcGtnLWRlYi9pbmZvLmM6NjUgZHBrZy1kZWIvaW5mby5jOjY3Cittc2dpZCAicm0gY29tbWFuZCBmb3IgY2xlYW51cCIKK21zZ3N0ciAiIgorCisjOiBzcmMvaW5mb2RiLmM6NTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoZWNrIGV4aXN0ZW5jZSBvZiBgJS4yNTBzJyIKK21zZ3N0ciAibnUgc2UgcG9hdGUgdmVyaWZpY2EgZXhpc3RlbsibYSBsdWkg4oCeJS4yNTBz4oCdIgorCisjOiBzcmMvaW5mb2RiLmM6NzAKK21zZ2lkICJjYW5ub3QgcmVhZCBpbmZvIGRpcmVjdG9yeSIKK21zZ3N0ciAibnUgc2UgcG9hdGUgY2l0aSBkaXJlY3RvcnVsIGluZm8iCisKKyM6IHNyYy9tYWluLmM6NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuIGAlcycgcGFja2FnZSBtYW5hZ2VtZW50IHByb2dyYW0gdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiRGViaWFuIOKAniVz4oCdLCBwcm9ncmFtdWwgZGUgYWRtaW5pc3RyYXJlIGEgcGFjaGV0ZWxvciB2ZXJzaXVuZWEgJXMuXG4iCisKKyM6IHNyYy9tYWluLmM6ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLWl8LS1pbnN0YWxsICAgICAgIDwuZGViIGZpbGUgbmFtZT4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRpcmVjdG9yeT4gLi4uXG4iCisiICAtLXVucGFjayAgICAgICAgICAgPC5kZWIgZmlsZSBuYW1lPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyZWN0b3J5PiAuLi5cbiIKKyIgIC1BfC0tcmVjb3JkLWF2YWlsICA8LmRlYiBmaWxlIG5hbWU+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXJlY3Rvcnk+IC4uLlxuIgorIiAgLS1jb25maWd1cmUgICAgICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC0tdHJpZ2dlcnMtb25seSAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtcnwtLXJlbW92ZSAgICAgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLVB8LS1wdXJnZSAgICAgICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC0tZ2V0LXNlbGVjdGlvbnMgWzxwYXR0ZXJuPiAuLi5dIEdldCBsaXN0IG9mIHNlbGVjdGlvbnMgdG8gc3Rkb3V0LlxuIgorIiAgLS1zZXQtc2VsZWN0aW9ucyAgICAgICAgICAgICAgICAgU2V0IHBhY2thZ2Ugc2VsZWN0aW9ucyBmcm9tIHN0ZGluLlxuIgorIiAgLS1jbGVhci1zZWxlY3Rpb25zICAgICAgICAgICAgICAgRGVzZWxlY3QgZXZlcnkgbm9uLWVzc2VudGlhbCBwYWNrYWdlLlxuIgorIiAgLS11cGRhdGUtYXZhaWwgPFBhY2thZ2VzLWZpbGU+ICAgUmVwbGFjZSBhdmFpbGFibGUgcGFja2FnZXMgaW5mby5cbiIKKyIgIC0tbWVyZ2UtYXZhaWwgPFBhY2thZ2VzLWZpbGU+ICAgIE1lcmdlIHdpdGggaW5mbyBmcm9tIGZpbGUuXG4iCisiICAtLWNsZWFyLWF2YWlsICAgICAgICAgICAgICAgICAgICBFcmFzZSBleGlzdGluZyBhdmFpbGFibGUgaW5mby5cbiIKKyIgIC0tZm9yZ2V0LW9sZC11bmF2YWlsICAgICAgICAgICAgIEZvcmdldCB1bmluc3RhbGxlZCB1bmF2YWlsYWJsZSBwa2dzLlxuIgorIiAgLXN8LS1zdGF0dXMgPHBhY2thZ2U+IC4uLiAgICAgICAgRGlzcGxheSBwYWNrYWdlIHN0YXR1cyBkZXRhaWxzLlxuIgorIiAgLXB8LS1wcmludC1hdmFpbCA8cGFja2FnZT4gLi4uICAgRGlzcGxheSBhdmFpbGFibGUgdmVyc2lvbiBkZXRhaWxzLlxuIgorIiAgLUx8LS1saXN0ZmlsZXMgPHBhY2thZ2U+IC4uLiAgICAgTGlzdCBmaWxlcyBgb3duZWQnIGJ5IHBhY2thZ2UocykuXG4iCisiICAtbHwtLWxpc3QgWzxwYXR0ZXJuPiAuLi5dICAgICAgICBMaXN0IHBhY2thZ2VzIGNvbmNpc2VseS5cbiIKKyIgIC1TfC0tc2VhcmNoIDxwYXR0ZXJuPiAuLi4gICAgICAgIEZpbmQgcGFja2FnZShzKSBvd25pbmcgZmlsZShzKS5cbiIKKyIgIC1DfC0tYXVkaXQgICAgICAgICAgICAgICAgICAgICAgIENoZWNrIGZvciBicm9rZW4gcGFja2FnZShzKS5cbiIKKyIgIC0tcHJpbnQtYXJjaGl0ZWN0dXJlICAgICAgICAgICAgIFByaW50IGRwa2cgYXJjaGl0ZWN0dXJlLlxuIgorIiAgLS1jb21wYXJlLXZlcnNpb25zIDxhPiA8b3A+IDxiPiAgQ29tcGFyZSB2ZXJzaW9uIG51bWJlcnMgLSBzZWUgYmVsb3cuXG4iCisiICAtLWZvcmNlLWhlbHAgICAgICAgICAgICAgICAgICAgICBTaG93IGhlbHAgb24gZm9yY2luZy5cbiIKKyIgIC1EaHwtLWRlYnVnPWhlbHAgICAgICAgICAgICAgICAgIFNob3cgaGVscCBvbiBkZWJ1Z2dpbmcuXG4iCisiXG4iCittc2dzdHIgIiIKKyJDb21lbnppOlxuIgorIiAgLWl8LS1pbnN0YWxsICAgICAgPG51bWUgZmnImWllciAuZGViPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyZWN0b3I+IC4uLlxuIgorIiAgLS11bnBhY2sgICAgICAgICAgPG51bWUgZmnImWllciAuZGViPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyZWN0b3I+IC4uLlxuIgorIiAgLUF8LS1yZWNvcmQtYXZhaWwgPG51bWUgZmnImWllciAuZGViPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyZWN0b3I+IC4uLlxuIgorIiAgLS1jb25maWd1cmUgICAgICAgPHBhY2hldD4gLi4uICAgIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtLXRyaWdnZXJzLW9ubHkgICA8cGFjaGV0PiAuLi4gICAgfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC1yfC0tcmVtb3ZlICAgICAgIDxwYWNoZXQ+IC4uLiAgICB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLVB8LS1wdXJnZSAgICAgICAgPHBhY2hldD4gLi4uICAgIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtLWdldC1zZWxlY3Rpb25zIFs8yJlhYmxvbj4gLi4uXSAgIEFmaciZZWF6xIMgbGlzdGEgc2VsZWPIm2lpbG9yIGxhIGllyJlpcmVhXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhbmRhcmQuXG4iCisiICAtLXNldC1zZWxlY3Rpb25zICAgICAgICAgICAgICAgICAgQWN0aXZlYXrEgyBzZWxlY8ibaWlsZSBwYWNoZXRlbG9yIGRlIGxhXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50cmFyZWEgc3RhbmRhcmQuXG4iCisiICAtLWNsZWFyLXNlbGVjdGlvbnMgICAgICAgICAgICAgICAgRGVzZWxlY3RlYXrEgyBvcmljZSBwYWNoZXQgbmVlc2VuyJtpYWwuXG4iCisiICAtLXVwZGF0ZS1hdmFpbCA8ZmnImWllci1QYWNrYWdlcz4gIMOObmxvY3VpZciZdGUgaW5mb3JtYcibaWlsZSBwYWNoZXRlbG9yXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcG9uaWJpbGUuXG4iCisiICAtLW1lcmdlLWF2YWlsIDxmaciZaWVyLVBhY2thZ2VzPiAgIEZ1emlvbmVhesSDIGN1IGluZm9ybWHIm2lpbGUgZGluIGZpyJlpZXIuXG4iCisiICAtLWNsZWFyLWF2YWlsICAgICAgICAgICAgICAgICAgICAgyJh0ZXJnZSBpbmZvcm1hyJtpaWxlIGRpc3BvbmliaWxlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhpc3RlbnRlLlxuIgorIiAgLS1mb3JnZXQtb2xkLXVuYXZhaWwgICAgICAgICAgICAgIFVpdMSDIGRlIHBhY2hldGVsZSBuZWluc3RhbGF0ZSDImWlcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbmRpc3BvbmliaWxlXG4iCisiICAtc3wtLXN0YXR1cyA8cGFjaGV0PiAuLi4gICAgICAgICAgQWZpyJllYXrEgyBkZXRhbGlpIGRlc3ByZSBzdGFyZWEgIgorInBhY2hldHVsdWlcbiIKKyIgIC1wfC0tcHJpbnQtYXZhaWwgPHBhY2hldD4gLi4uICAgICBBZmnImWVhesSDIGRldGFsaWkgZGVzcHJlIHZlcnNpdW5pbGUgXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcG9uaWJpbGVcbiIKKyIgIC1MfC0tbGlzdGZpbGVzIDxwYWNoZXQ+IC4uLiAgICAgICBBZmnImWVhesSDIGZpyJlpZXJlbGUgYXBhcsibaW7Dom5kXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFjaGV0dWx1aShwYWNoZXRlbG9yKVxuIgorIiAgLWx8LS1saXN0IFs8yJlhYmxvbj4gLi4uXSAgICAgICAgICBBZmnImWVhesSDIGNvbmNpcyBwYWNoZXRlbGVcbiIKKyIgIC1TfC0tc2VhcmNoIDzImWFibG9uPiAuLi4gICAgICAgICAgQ2F1dMSDIHBhY2hldHVsKHBhY2hldGVsZSkgY2FyZSBjb27Im2luXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmnImWllcnVsKGZpyJlpZXJlbGUpXG4iCisiICAtQ3wtLWF1ZGl0ICAgICAgICAgICAgICAgICAgICAgICAgVmVyaWZpY8SDIGRhY8SDIGV4aXN0xIMgcGFjaGV0KHBhY2hldGUpXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGV0ZXJpb3JhdGVcbiIKKyIgIC0tcHJpbnQtYXJjaGl0ZWN0dXJlICAgICAgICAgICAgICBBZmnImWVhesSDIGFyaGl0ZWN0dXJhIGRwa2dcbiIKKyIgIC0tY29tcGFyZS12ZXJzaW9ucyA8YT4gPG9wPiA8Yj4gICBDb21wYXLEgyBudW1lcmVsZSBkZSB2ZXJzaXVuZSAtIHZlemkgam9zXG4iCisiICAtLWZvcmNlLWhlbHAgICAgICAgICAgICAgICAgICAgICAgQWp1dG9yIHBlbnRydSBmb3LIm2FyZS5cbiIKKyIgIC1EaHwtLWRlYnVnPWhlbHAgICAgICAgICAgICAgICAgICBBanV0b3IgcGVudHJ1IGRlcGFuYXJlXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTEzIHNyYy9xdWVyeWNtZC5jOjYzMSBzcmMvdHJpZ2NtZC5jOjc3IGRwa2ctZGViL21haW4uYzo4OAorIzogZHBrZy1zcGxpdC9tYWluLmM6NzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiAgLWh8LS1oZWxwICAgICAgICAgICAgICAgICAgICAgICAgU2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCittc2dzdHIgIiIKKyIgIC1ofC0taGVscCAgICAgICAgICAgICAgICAgICAgICAgICBBZmnImWVhesSDIGFjZXN0IGFqdXRvclxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICAgICAgICAgIEFmaciZZWF6xIMgdmVyc2l1bmVhXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTE4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJVc2UgZHBrZyAtYnwtLWJ1aWxkfC1jfC0tY29udGVudHN8LWV8LS1jb250cm9sfC1JfC0taW5mb3wtZnwtLWZpZWxkfFxuIgorIiAteHwtLWV4dHJhY3R8LVh8LS12ZXh0cmFjdHwtLWZzeXMtdGFyZmlsZSAgb24gYXJjaGl2ZXMgKHR5cGUgJXMgLS1oZWxwKS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIkZvbG9zacibaSBkcGtnIC1ifC0tYnVpbGR8LWN8LS1jb250ZW50c3wtZXwtLWNvbnRyb2x8LUl8LS1pbmZvfC1mfC0tZmllbGR8XG4iCisiIC14fC0tZXh0cmFjdHwtWHwtLXZleHRyYWN0fC0tZnN5cy10YXJmaWxlIGFzdXByYSBhcmhpdmVsb3IgKHRhc3RhyJtpICVzIC0tIgorImhlbHAuKVxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjEyMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiRm9yIGludGVybmFsIHVzZTogZHBrZyAtLWFzc2VydC1zdXBwb3J0LXByZWRlcGVuZHMgfCAtLXByZWRlcC1wYWNrYWdlIHxcbiIKKyIgIC0tYXNzZXJ0LXdvcmtpbmctZXBvY2ggfCAtLWFzc2VydC1sb25nLWZpbGVuYW1lcyB8IC0tYXNzZXJ0LW11bHRpLWNvbnJlcC5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIlBlbnRydSB1eiBpbnRlcm46IGRwa2cgLS1hc3NlcnQtc3VwcG9ydC1wcmVkZXBlbmRzIHwgLS1wcmVkZXAtcGFja2FnZSB8XG4iCisiICAtLWFzc2VydC13b3JraW5nLWVwb2NoIHwgLS1hc3NlcnQtbG9uZy1maWxlbmFtZXMgfCAtLWFzc2VydC1tdWx0aS1jb25yZXBcbiIKKyJcbiIKKworIzogc3JjL21haW4uYzoxMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyIgIC0tcm9vdD08ZGlyZWN0b3J5PiAgICAgICAgIEluc3RhbGwgb24gYSBkaWZmZXJlbnQgcm9vdCBkaXJlY3RvcnkuXG4iCisiICAtLWluc3RkaXI9PGRpcmVjdG9yeT4gICAgICBDaGFuZ2UgaW5zdGFsbGF0aW9uIGRpciB3aXRob3V0IGNoYW5naW5nIGFkbWluICIKKyJkaXIuXG4iCisiICAtLXBhdGgtZXhjbHVkZT08cGF0dGVybj4gICBEbyBub3QgaW5zdGFsbCBwYXRocyB3aGljaCBtYXRjaCBhIHNoZWxsICIKKyJwYXR0ZXJuLlxuIgorIiAgLS1wYXRoLWluY2x1ZGU9PHBhdHRlcm4+ICAgUmUtaW5jbHVkZSBhIHBhdHRlcm4gYWZ0ZXIgYSBwcmV2aW91cyAiCisiZXhjbHVzaW9uLlxuIgorIiAgLU98LS1zZWxlY3RlZC1vbmx5ICAgICAgICAgU2tpcCBwYWNrYWdlcyBub3Qgc2VsZWN0ZWQgZm9yIGluc3RhbGwvIgorInVwZ3JhZGUuXG4iCisiICAtRXwtLXNraXAtc2FtZS12ZXJzaW9uICAgICBTa2lwIHBhY2thZ2VzIHdob3NlIHNhbWUgdmVyc2lvbiBpcyBpbnN0YWxsZWQuXG4iCisiICAtR3wtLXJlZnVzZS1kb3duZ3JhZGUgICAgICBTa2lwIHBhY2thZ2VzIHdpdGggZWFybGllciB2ZXJzaW9uIHRoYW4gIgorImluc3RhbGxlZC5cbiIKKyIgIC1CfC0tYXV0by1kZWNvbmZpZ3VyZSAgICAgIEluc3RhbGwgZXZlbiBpZiBpdCB3b3VsZCBicmVhayBzb21lIG90aGVyICIKKyJwYWNrYWdlLlxuIgorIiAgLS1bbm8tXXRyaWdnZXJzICAgICAgICAgICAgU2tpcCBvciBmb3JjZSBjb25zZXF1ZW50aWFsIHRyaWdnZXIgIgorInByb2Nlc3NpbmcuXG4iCisiICAtLW5vLWRlYnNpZyAgICAgICAgICAgICAgICBEbyBub3QgdHJ5IHRvIHZlcmlmeSBwYWNrYWdlIHNpZ25hdHVyZXMuXG4iCisiICAtLW5vLWFjdHwtLWRyeS1ydW58LS1zaW11bGF0ZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSnVzdCBzYXkgd2hhdCB3ZSB3b3VsZCBkbyAtIGRvbid0IGRvIGl0LlxuIgorIiAgLUR8LS1kZWJ1Zz08b2N0YWw+ICAgICAgICAgRW5hYmxlIGRlYnVnZ2luZyAoc2VlIC1EaGVscCBvciAtLWRlYnVnPWhlbHApLlxuIgorIiAgLS1zdGF0dXMtZmQgPG4+ICAgICAgICAgICAgU2VuZCBzdGF0dXMgY2hhbmdlIHVwZGF0ZXMgdG8gZmlsZSBkZXNjcmlwdG9yICIKKyI8bj4uXG4iCisiICAtLWxvZz08ZmlsZW5hbWU+ICAgICAgICAgICBMb2cgc3RhdHVzIGNoYW5nZXMgYW5kIGFjdGlvbnMgdG8gPGZpbGVuYW1lPi5cbiIKKyIgIC0taWdub3JlLWRlcGVuZHM9PHBhY2thZ2U+LC4uLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSWdub3JlIGRlcGVuZGVuY2llcyBpbnZvbHZpbmcgPHBhY2thZ2U+LlxuIgorIiAgLS1mb3JjZS0uLi4gICAgICAgICAgICAgICAgT3ZlcnJpZGUgcHJvYmxlbXMgKHNlZSAtLWZvcmNlLWhlbHApLlxuIgorIiAgLS1uby1mb3JjZS0uLi58LS1yZWZ1c2UtLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9wIHdoZW4gcHJvYmxlbXMgZW5jb3VudGVyZWQuXG4iCisiICAtLWFib3J0LWFmdGVyIDxuPiAgICAgICAgICBBYm9ydCBhZnRlciBlbmNvdW50ZXJpbmcgPG4+IGVycm9ycy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIk9wyJtpdW5pOlxuIgorIiAgLS1hZG1pbmRpcj08ZGlyZWN0b3I+ICAgICAgRm9sb3NlyJl0ZSA8ZGlyZWN0b3I+IMOubiBsb2MgZGUgJXMuXG4iCisiICAtLXJvb3Q9PGRpcmVjdG9yPiAgICAgICAgICBJbnN0YWxlYXrEgyBwb3JuaW5kIGRlIGxhIG8gYWx0xIMgcsSDZMSDY2luxIMuXG4iCisiICAtLWluc3RkaXI9PGRpcmVjdG9yPiAgICAgICBTY2hpbWLEgyBkaXJlY3RvcnVsIGRlIGluc3RhbGFyZSBmxINyxIMgIgorInNjaGltYmFyZWFcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpcmVjdG9ydWx1aSBhZG1pbi5cbiIKKyIgIC0tcGF0aC1leGNsdWRlPTxtb2RlbD4gICAgIE51IGluc3RhbGEgY8SDaWxlIGNhcmUgY29yZXNwdW5kIGN1IG1vZGVsdWxcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNoZWxsXG4iCisiICAtLXBhdGgtaW5jbHVkZT08bW9kZWw+ICAgICBSZS1pbmNsdWRlIHVuIG1vZGVsIGR1cMSDIG8gZXhjbHVkZXJlICIKKyJhbnRlcmlvYXLEg1xuIgorIiAgLU98LS1zZWxlY3RlZC1vbmx5ICAgICAgICAgU2FyaSBwZXN0ZSBwYWNoZXRlbGUgbmVzZWxlY3RhdGUgcGVudHJ1XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnN0YWxhcmUvYWN0dWFsaXphcmUuXG4iCisiICAtRXwtLXNraXAtc2FtZS12ZXJzaW9uICAgICBTYXJpIHBlc3RlIHBhY2hldGVsZSBjdSBhY2VpYciZaSB2ZXJzaXVuZSAiCisiaW5zdGFsYXTEgy5cbiIKKyIgIC1HfC0tcmVmdXNlLWRvd25ncmFkZSAgICAgIFNhcmkgcGVzdGUgcGFjaGV0ZWxlIGN1IHZlcnNpdW5lIGFudGVyaW9hcsSDXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjZWxvciBpbnN0YWxhdGUuXG4iCisiICAtQnwtLWF1dG8tZGVjb25maWd1cmUgICAgICBJbnN0YWxlYXrEgyBjaGlhciBkYWPEgyBzLWFyIHN0cmljYSBhbHRlICIKKyJwYWNoZXRlLlxuIgorIiAgLS1bbm8tXXRyaWdnZXJzICAgICAgICAgICAgU2FyZSBwZXN0ZSwgc2F1IGZvcsibZWF6xIMsIHByb2Nlc2FyZWFcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNlY3V0aXbEgyBhIGRlY2xhbsiZYXRvcmlsb3IuXG4iCisiICAtLW5vLWRlYnNpZyAgICAgICAgICAgICAgICBOdSDDrm5jZXJjYSB2ZXJpZmljYXJlYSBzZW1uxIN0dXJpaSBwYWNoZXRlbG9yLlxuIgorIiAgLS1uby1hY3R8LS1kcnktcnVufC0tc2ltdWxhdGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIERvYXIgc3B1bmUgY2Ugcy1hciBmYWNlIC0gZsSDcsSDIGEgZmFjZVxuIgorIiAgLUR8LS1kZWJ1Zz08b2N0YWw+ICAgICAgICAgQWN0aXZlYXrEgyBkZXBhbmFyZWEgLSB2ZXppIC1EaGVscCBzYXVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0tZGVidWc9aGVscFxuIgorIiAgLS1zdGF0dXMtZmQgPG4+ICAgICAgICAgICAgVHJpbWl0ZSBhY3R1YWxpesSDcmkgZGVzcHJlIHNjaGltYmFyZWFcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0xINyaWkgbGEgZGVzY3JpcHRvcnVsIGRlIGZpyJlpZXIgPG4+XG4iCisiICAtLWxvZz08bnVtZSBmaciZaWVyPiAgICAgICAgU2NyaWUgc2NoaW1ixINyaWxlIGRlIHN0YXJlIMiZaSBhY8ibaXVuaWxlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICDDrm4ganVybmFsLCBmaciZaWVydWwgPG51bWUgZmnImWllcj5cbiIKKyIgIC0taWdub3JlLWRlcGVuZHM9PHBhY2hldD4sLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZ25vcsSDIGRlcGVuZGVuyJtlbGUgY2FyZSBpbXBsaWPEgyA8cGFjaGV0PlxuIgorIiAgLS1mb3JjZS0uLi4gICAgICAgICAgICAgICAgVHJlY2kgcGVzdGUgcHJvYmxlbWUgKHZlZGXIm2kgLS1mb3JjZS1oZWxwKS5cbiIKKyIgIC0tbm8tZm9yY2UtLi4ufC0tcmVmdXNlLS4uLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgT3ByZciZdGUtdGUgbGEgYXBhcmnIm2lhIHVuZWkgcHJvYmxlbWVcbiIKKyIgIC0tYWJvcnQtYWZ0ZXIgPG4+ICAgICAgICAgIEFiYW5kb25lYXrEgyBkdXDEgyBhcGFyacibaWEgYSA8bj4gZXJvcmlcbiIKKyJcbiIKKworIzogc3JjL21haW4uYzoxNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbXBhcmlzb24gb3BlcmF0b3JzIGZvciAtLWNvbXBhcmUtdmVyc2lvbnMgYXJlOlxuIgorIiAgbHQgbGUgZXEgbmUgZ2UgZ3QgICAgICAgKHRyZWF0IGVtcHR5IHZlcnNpb24gYXMgZWFybGllciB0aGFuIGFueSAiCisidmVyc2lvbik7XG4iCisiICBsdC1ubCBsZS1ubCBnZS1ubCBndC1ubCAodHJlYXQgZW1wdHkgdmVyc2lvbiBhcyBsYXRlciB0aGFuIGFueSB2ZXJzaW9uKTtcbiIKKyIgIDwgPDwgPD0gPSA+PSA+PiA+ICAgICAgIChvbmx5IGZvciBjb21wYXRpYmlsaXR5IHdpdGggY29udHJvbCBmaWxlICIKKyJzeW50YXgpLlxuIgorIlxuIgorbXNnc3RyICIiCisiT3BlcmF0b3JpaSBkZSBjb21wYXJhcmUgcGVudHJ1IC0tY29tcGFyZS12ZXJzaW9ucyBzdW50OlxuIgorIiAgbHQgbGUgZXEgbmUgZ2UgZ3QgICAgICAgKGxpcHNhIHZlcnNpdW5paSDDrm5zZWFtbsSDIHZlcnNpdW5lIGFudGVyaW9hcsSDICIKKyJvcmljxINyZWkgdmVyc2l1bmkpO1xuIgorIiAgbHQtbmwgbGUtbmwgZ2UtbmwgZ3QtbmwgKGxpcHNhIHZlcnNpdW5paSDDrm5zZWFtbsSDIHZlcnNpdW5lIHBvc3RlcmlvYXLEgyAiCisib3JpY8SDcmVpIHZlcnNpdW5pKTtcbiIKKyIgIDwgPDwgPD0gPSA+PSA+PiA+ICAgICAgIChkb2FyIHBlbnRydSBjb21wYXRpYmlsaXRhdGUgY3Ugc2ludGF4YSBmaciZaWVydWx1aSAiCisiZGUgY29udHJvbCkuXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTYxCisjLCBjLWZvcm1hdAorbXNnaWQgIlVzZSBgZHNlbGVjdCcgb3IgYGFwdGl0dWRlJyBmb3IgdXNlci1mcmllbmRseSBwYWNrYWdlIG1hbmFnZW1lbnQuXG4iCittc2dzdHIgIiIKKyJQZW50cnUgbyBpbnRlcmZhyJvEgyBtYWkgcHJpZXRlbm9hc8SDIGZvbG9zacibaSDigJ5kc2VsZWN04oCdIHNhdSDigJ5hcHRpdHVkZeKAnS5cbiIKKworIzogc3JjL21haW4uYzoxNzAKK21zZ2lkICIiCisiVHlwZSBkcGtnIC0taGVscCBmb3IgaGVscCBhYm91dCBpbnN0YWxsaW5nIGFuZCBkZWluc3RhbGxpbmcgcGFja2FnZXMgWypdO1xuIgorIlVzZSBgZHNlbGVjdCcgb3IgYGFwdGl0dWRlJyBmb3IgdXNlci1mcmllbmRseSBwYWNrYWdlIG1hbmFnZW1lbnQ7XG4iCisiVHlwZSBkcGtnIC1EaGVscCBmb3IgYSBsaXN0IG9mIGRwa2cgZGVidWcgZmxhZyB2YWx1ZXM7XG4iCisiVHlwZSBkcGtnIC0tZm9yY2UtaGVscCBmb3IgYSBsaXN0IG9mIGZvcmNpbmcgb3B0aW9ucztcbiIKKyJUeXBlIGRwa2ctZGViIC0taGVscCBmb3IgaGVscCBhYm91dCBtYW5pcHVsYXRpbmcgKi5kZWIgZmlsZXM7XG4iCisiXG4iCisiT3B0aW9ucyBtYXJrZWQgWypdIHByb2R1Y2UgYSBsb3Qgb2Ygb3V0cHV0IC0gcGlwZSBpdCB0aHJvdWdoIGBsZXNzJyBvciAiCisiYG1vcmUnICEiCittc2dzdHIgIiIKKyJUYXN0YcibaSBkcGtnIC0taGVscCBwZW50cnUgYWp1dG9yIHByaXZpbmQgaW5zdGFsYXJlYSDImWkgZGV6aW5zdGFsYXJlYSAiCisicGFjaGV0ZWxvciBbKl07XG4iCisiRm9sb3NpyJtpIOKAnmRzZWxlY3TigJ0gc2F1IOKAnmFwdGl0dWRl4oCdIHBlbnRydSBvIGFkbWluaXN0cmFyZSBwcmlldGVub2FzxIMgYSAiCisicGFjaGV0ZWxvcjtcbiIKKyJUYXN0YcibaSBkcGtnIC1EaGVscCBwZW50cnUgbyBsaXN0xIMgYSB2YWxvcmlsb3IgZmFuaW9hbmVsb3IgZGUgZGVwYW5hcmUgYWxlICIKKyJsdWkgZHBrZztcbiIKKyJUYXN0YcibaSBkcGtnIC0tZm9yY2UtaGVscCBwZW50cnUgbyBsaXN0xIMgYSBvcMibaXVuaWxvciBkZSBmb3LIm2FyZTtcbiIKKyJUYXN0YcibaSBkcGtnLWRlYiAtLWhlbHAgcGVudHJ1IGFqdXRvciBwcml2aW5kIG1hbmlwdWxhcmVhIGZpyJlpZXJlbG9yICouZGViO1xuIgorIlxuIgorIk9wyJtpdW5pbGUgbWFyY2F0ZSBjdSBbKl0gcHJvZHVjIGZvYXJ0ZSBtdWx0IHRleHQgLSByZWRpcmVjdGHIm2kgcHJpbiDigJ5sZXNz4oCdICIKKyJzYXUg4oCebW9yZeKAnSAhIgorCisjOiBzcmMvbWFpbi5jOjIxOQorbXNnaWQgIlNldCBhbGwgZm9yY2Ugb3B0aW9ucyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIyMQorbXNnaWQgIlJlcGxhY2UgYSBwYWNrYWdlIHdpdGggYSBsb3dlciB2ZXJzaW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjIzCittc2dpZCAiQ29uZmlndXJlIGFueSBwYWNrYWdlIHdoaWNoIG1heSBoZWxwIHRoaXMgb25lIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjI1Cittc2dpZCAiUHJvY2VzcyBpbmNpZGVudGFsIHBhY2thZ2VzIGV2ZW4gd2hlbiBvbiBob2xkIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjI3Cittc2dpZCAiVHJ5IHRvIChkZSlpbnN0YWxsIHRoaW5ncyBldmVuIHdoZW4gbm90IHJvb3QiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjkKK21zZ2lkICJQQVRIIGlzIG1pc3NpbmcgaW1wb3J0YW50IHByb2dyYW1zLCBwcm9ibGVtcyBsaWtlbHkiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzEKK21zZ2lkICJJbnN0YWxsIGEgcGFja2FnZSBldmVuIGlmIGl0IGZhaWxzIGF1dGhlbnRpY2l0eSBjaGVjayIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzMworbXNnaWQgIlByb2Nlc3MgZXZlbiBwYWNrYWdlcyB3aXRoIHdyb25nIHZlcnNpb25zIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjM1Cittc2dpZCAiT3ZlcndyaXRlIGEgZmlsZSBmcm9tIG9uZSBwYWNrYWdlIHdpdGggYW5vdGhlciIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzNworbXNnaWQgIk92ZXJ3cml0ZSBhIGRpdmVydGVkIGZpbGUgd2l0aCBhbiB1bmRpdmVydGVkIHZlcnNpb24iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzkKK21zZ2lkICJPdmVyd3JpdGUgb25lIHBhY2thZ2UncyBkaXJlY3Rvcnkgd2l0aCBhbm90aGVyJ3MgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI0MQorbXNnaWQgIkRvIG5vdCBwZXJmb3JtIHNhZmUgSS9PIG9wZXJhdGlvbnMgd2hlbiB1bnBhY2tpbmciCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDMKK21zZ2lkICJBbHdheXMgdXNlIHRoZSBuZXcgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDUKK21zZ2lkICJBbHdheXMgdXNlIHRoZSBvbGQgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDgKK21zZ2lkICIiCisiVXNlIHRoZSBkZWZhdWx0IG9wdGlvbiBmb3IgbmV3IGNvbmZpZyBmaWxlcyBpZiBvbmVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgaXMgYXZhaWxhYmxlLCBkb24ndCBwcm9tcHQuIElmIG5vIGRlZmF1bHQgY2FuIGJlICIKKyJmb3VuZCxcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgeW91IHdpbGwgYmUgcHJvbXB0ZWQgdW5sZXNzIG9uZSBvZiB0aGUgY29uZm9sZCBvclxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICBjb25mbmV3IG9wdGlvbnMgaXMgYWxzbyBnaXZlbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI1MworbXNnaWQgIkFsd2F5cyBpbnN0YWxsIG1pc3NpbmcgY29uZmlnIGZpbGVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjU1Cittc2dpZCAiT2ZmZXIgdG8gcmVwbGFjZSBjb25maWcgZmlsZXMgd2l0aCBubyBuZXcgdmVyc2lvbnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNTcKK21zZ2lkICJQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyBvciBubyBhcmNoaXRlY3R1cmUiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNTkKK21zZ2lkICJJbnN0YWxsIGV2ZW4gaWYgaXQgd291bGQgYnJlYWsgYW5vdGhlciBwYWNrYWdlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjYxCittc2dpZCAiQWxsb3cgaW5zdGFsbGF0aW9uIG9mIGNvbmZsaWN0aW5nIHBhY2thZ2VzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjYzCisjLCBmdXp6eQorI3wgbXNnaWQgImRlcGVuZGVuY3kgcHJvYmxlbXMgLSBub3QgcmVtb3ZpbmciCittc2dpZCAiVHVybiBhbGwgZGVwZW5kZW5jeSBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzIgorbXNnc3RyICJwcm9ibGVtZSBkZSBkZXBlbmRlbsibxIMgLSBudSBzZSBlbGltaW7EgyIKKworIzogc3JjL21haW4uYzoyNjUKKyMsIGZ1enp5CisjfCBtc2dpZCAiZGVwZW5kZW5jeSBwcm9ibGVtcyAtIG5vdCByZW1vdmluZyIKK21zZ2lkICJUdXJuIGRlcGVuZGVuY3kgdmVyc2lvbiBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzIgorbXNnc3RyICJwcm9ibGVtZSBkZSBkZXBlbmRlbsibxIMgLSBudSBzZSBlbGltaW7EgyIKKworIzogc3JjL21haW4uYzoyNjcKK21zZ2lkICJSZW1vdmUgcGFja2FnZXMgd2hpY2ggcmVxdWlyZSBpbnN0YWxsYXRpb24iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNjkKK21zZ2lkICJSZW1vdmUgYW4gZXNzZW50aWFsIHBhY2thZ2UiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODEKK21zZ2lkICJHZW5lcmFsbHkgaGVscGZ1bCBwcm9ncmVzcyBpbmZvcm1hdGlvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4MgorIywgZnV6enkKKyN8IG1zZ2lkICJ1bmFibGUgdG8gc2V0ZW52IGZvciBtYWludGFpbmVyIHNjcmlwdCIKK21zZ2lkICJJbnZvY2F0aW9uIGFuZCBzdGF0dXMgb2YgbWFpbnRhaW5lciBzY3JpcHRzIgorbXNnc3RyICJzZXRlbnYgaW1wb3NpYmlsIHBlbnRydSBzY3JpcHR1bCBtYWludGFpbmVyIgorCisjOiBzcmMvbWFpbi5jOjI4MworbXNnaWQgIk91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4NAorbXNnaWQgIkxvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg1CisjLCBmdXp6eQorI3wgbXNnaWQgInJlYWQgZXJyb3IgaW4gY29uZmlndXJhdGlvbiBmaWxlIGAlLjI1NXMnIgorbXNnaWQgIk91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGUiCittc2dzdHIgImVyb2FyZSBkZSBjaXRpcmUgw65uIGZpyJlpZXJ1bCBkZSBjb25maWd1cmFyZSDigJ4lLjI1NXPigJ0iCisKKyM6IHNyYy9tYWluLmM6Mjg2Cittc2dpZCAiTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggY29uZmlndXJhdGlvbiBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg3Cittc2dpZCAiRGVwZW5kZW5jaWVzIGFuZCBjb25mbGljdHMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODgKK21zZ2lkICJMb3RzIG9mIGRlcGVuZGVuY2llcy9jb25mbGljdHMgb3V0cHV0IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg5Cittc2dpZCAiVHJpZ2dlciBhY3RpdmF0aW9uIGFuZCBwcm9jZXNzaW5nIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjkwCittc2dpZCAiTG90cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjkxCittc2dpZCAiU2lsbHkgYW1vdW50cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjkyCittc2dpZCAiTG90cyBvZiBkcml2ZWwgYWJvdXQgZWcgdGhlIGRwa2cvaW5mbyBkaXJlY3RvcnkiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyOTMKK21zZ2lkICJJbnNhbmUgYW1vdW50cyBvZiBkcml2ZWwiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzozMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzIGRlYnVnZ2luZyBvcHRpb24sIC0tZGVidWc9PG9jdGFsPiBvciAtRDxvY3RhbD46XG4iCisiXG4iCisiIE51bWJlciAgUmVmLiBpbiBzb3VyY2UgICBEZXNjcmlwdGlvblxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MzExCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJEZWJ1Z2dpbmcgb3B0aW9ucyBjYW4gYmUgbWl4ZWQgdXNpbmcgYml0d2lzZS1vci5cbiIKKyJOb3RlIHRoYXQgdGhlIG1lYW5pbmdzIGFuZCB2YWx1ZXMgYXJlIHN1YmplY3QgdG8gY2hhbmdlLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MzE5Cittc2dpZCAiLS1kZWJ1ZyByZXF1aXJlcyBhbiBvY3RhbCBhcmd1bWVudCIKK21zZ3N0ciAiLS1kZWJ1ZyBuZWNlc2l0xIMgdW4gYXJndW1lbnQgb2N0YWwiCisKKyM6IHNyYy9tYWluLmM6MzQ4CisjLCBjLWZvcm1hdAorbXNnaWQgIm51bGwgcGFja2FnZSBuYW1lIGluIC0taWdub3JlLWRlcGVuZHMgY29tbWEtc2VwYXJhdGVkIGxpc3QgYCUuMjUwcyciCittc2dzdHIgIiIKKyJsaXBzZciZdGUgbnVtZWxlIGRlIHBhY2hldCDDrm4gbGlzdGEgc2VwYXJhdMSDIHByaW4gdmlyZ3VsZSDigJ4lLjI1MHPigJ0gZGUgbGEgLS0iCisiaWdub3JlLWRlcGVuZHMiCisKKyM6IHNyYy9tYWluLmM6MzU0CisjLCBjLWZvcm1hdAorbXNnaWQgIi0taWdub3JlLWRlcGVuZHMgcmVxdWlyZXMgYSBsZWdhbCBwYWNrYWdlIG5hbWUuIGAlLjI1MHMnIGlzIG5vdDsgJXMiCittc2dzdHIgIiIKKyItLWlnbm9yZS1kZXBlbmRzIG5lY2VzaXTEgyB1biBudW1lIHZhbGlkIGRlIHBhY2hldC4g4oCeJS4yNTBz4oCdIG51IGVzdGU7ICVzIgorCisjOiBzcmMvbWFpbi5jOjM3MSBzcmMvbWFpbi5jOjM4MSBzcmMvbWFpbi5jOjY0OSBkcGtnLXNwbGl0L21haW4uYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBpbnRlZ2VyIGZvciAtLSVzOiBgJS4yNTBzJyIKK21zZ3N0ciAiw65udHJlZyBuZXZhbGlkIHBlbnRydSAtLSVzOiDigJ4lLjI1MHPigJ0iCisKKyM6IHNyYy9tYWluLmM6NDM4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGV4ZWN1dGluZyBob29rICclcycsIGV4aXQgY29kZSAlZCIKK21zZ3N0ciAiZXJvYXJlIGxhIGV4ZWN1dGFyZWEgY8OicmxpZ3VsdWkg4oCeJXPigJ0sIGNvZCBkZSBpZciZaXJlICVkIgorCisjOiBzcmMvbWFpbi5jOjQ2NQorIywgZnV6enkKKyN8IG1zZ2lkICJzdGF0dXMiCittc2dpZCAic3RhdHVzIGxvZ2dlciIKK21zZ3N0ciAic3RhcmUiCisKKyM6IHNyYy9tYWluLmM6NDgwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlcyBmb3JjaW5nIG9wdGlvbnMgLSBjb250cm9sIGJlaGF2aW91ciB3aGVuIHByb2JsZW1zIGZvdW5kOlxuIgorIiAgd2FybiBidXQgY29udGludWU6ICAtLWZvcmNlLTx0aGluZz4sPHRoaW5nPiwuLi5cbiIKKyIgIHN0b3Agd2l0aCBlcnJvcjogICAgLS1yZWZ1c2UtPHRoaW5nPiw8dGhpbmc+LC4uLiB8IC0tbm8tZm9yY2UtPHRoaW5nPiwuLi5cbiIKKyIgRm9yY2luZyB0aGluZ3M6XG4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzo0OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIldBUk5JTkcgLSB1c2Ugb2Ygb3B0aW9ucyBtYXJrZWQgWyFdIGNhbiBzZXJpb3VzbHkgZGFtYWdlIHlvdXIgaW5zdGFsbGF0aW9uLlxuIgorIkZvcmNpbmcgb3B0aW9ucyBtYXJrZWQgWypdIGFyZSBlbmFibGVkIGJ5IGRlZmF1bHQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzo1MDQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBmb3JjZS9yZWZ1c2Ugb3B0aW9uIGAlLipzJyIKK21zZ3N0ciAib3DIm2l1bmUgZGUgZm9yyJthcmUvcmVmdXphcmUgbmVjdW5vc2N1dMSDIOKAniUuKnPigJ0iCisKKyM6IHNyYy9tYWluLmM6NTEzCisjLCBjLWZvcm1hdAorbXNnaWQgIm9ic29sZXRlIGZvcmNlL3JlZnVzZSBvcHRpb24gJyVzJ1xuIgorbXNnc3RyICJvcMibaXVuZSDDrm52ZWNoaXTEgyBkZSBmb3LIm2FyZS9yZWZ1emFyZSDigJ4lc+KAnVxuIgorCisjOiBzcmMvbWFpbi5jOjY0MworbXNnaWQgIi0tY29tbWFuZC1mZCB0YWtlcyBvbmUgYXJndW1lbnQsIG5vdCB6ZXJvIgorbXNnc3RyICItLWNvbW1hbmQtZmQgaWEgdW4gYXJndW1lbnQsIG51IHplcm8iCisKKyM6IHNyYy9tYWluLmM6NjQ1Cittc2dpZCAiLS1jb21tYW5kLWZkIG9ubHkgdGFrZXMgb25lIGFyZ3VtZW50IgorbXNnc3RyICItLWNvbW1hbmQtZmQgaWEgZG9hciB1biBhcmd1bWVudCIKKworIzogc3JjL21haW4uYzo2NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGRuJ3Qgb3BlbiBgJWknIGZvciBzdHJlYW0iCittc2dzdHIgIm51IHMtYSBwdXR1dCBkZXNjaGlkZSDigJ4laeKAnSBwZW50cnUgZmx1eHVsIGRlIGRhdGUiCisKKyM6IHNyYy9tYWluLmM6Njc2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW9mIGJlZm9yZSBlbmQgb2YgbGluZSAlZCIKK21zZ3N0ciAiZW9mIG5lYciZdGVwdGF0IMOubmFpbnRlIGRlIHRlcm1pbmFyZWEgbGluaWVpICVkIgorCisjOiBzcmMvbWFpbi5jOjcxOSBzcmMvbWFpbi5jOjc0MSBzcmMvcXVlcnljbWQuYzo2OTIgc3JjL3N0YXRjbWQuYzozNzkKKyM6IGRwa2ctZGViL21haW4uYzoyMDEgZHBrZy1zcGxpdC9tYWluLmM6MTYzCittc2dpZCAibmVlZCBhbiBhY3Rpb24gb3B0aW9uIgorbXNnc3RyICJlc3RlIG5lY2VzYXLEgyBvIG9wyJtpdW5lIGRlIGFjyJtpdW5lIgorCisjOiBzcmMvcGFja2FnZXMuYzoxMTMKK21zZ2lkICIiCisieW91IG11c3Qgc3BlY2lmeSBwYWNrYWdlcyBieSB0aGVpciBvd24gbmFtZXMsIG5vdCBieSBxdW90aW5nIHRoZSBuYW1lcyBvZiAiCisidGhlIGZpbGVzIHRoZXkgY29tZSBpbiIKK21zZ3N0ciAiIgorInRyZWJ1aWUgc8SDIHNwZWNpZmljYcibaSBwYWNoZXRlbGUgcHJpbiBudW1lbGUgbG9yLCBudSBwcmluIGNpdGFyZWEgbnVtZWxvciAiCisiZmnImWllcmVsb3Igw65uIGNhcmUgdmluIGFjZXN0ZWEiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjEzMworIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIC0tcGVuZGluZyBkb2VzIG5vdCB0YWtlIGFueSBub24tb3B0aW9uIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS0lcyAtLXBlbmRpbmcgbnUgaWEgYXJndW1lbnRlIGNhcmUgbnUgc3VudCBvcMibaXVuaSIKKworIzogc3JjL3BhY2thZ2VzLmM6MTM4IHNyYy9xdWVyeWNtZC5jOjM3NSBzcmMvcXVlcnljbWQuYzo1NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhdCBsZWFzdCBvbmUgcGFja2FnZSBuYW1lIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIG5lY2VzaXTEgyBjZWwgcHXIm2luIHVuIG51bWUgZGUgcGFjaGV0IGNhIGFyZ3VtZW50IgorCisjOiBzcmMvcGFja2FnZXMuYzoxNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSAlcyBsaXN0ZWQgbW9yZSB0aGFuIG9uY2UsIG9ubHkgcHJvY2Vzc2luZyBvbmNlLlxuIgorbXNnc3RyICIiCisiUGFjaGV0dWwgJXMgZXN0ZSBsaXN0YXQgZGUgbWFpIG11bHRlIG9yaSwgdmEgZmkgcHJvY2VzYXQgZG9hciBvIGRhdMSDLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzoxODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk1vcmUgdGhhbiBvbmUgY29weSBvZiBwYWNrYWdlICVzIGhhcyBiZWVuIHVucGFja2VkXG4iCisiIGluIHRoaXMgcnVuICEgIE9ubHkgY29uZmlndXJpbmcgaXQgb25jZS5cbiIKK21zZ3N0ciAiIgorIkF1IGZvc3QgZGVzcGFjaGV0YXRlIG1haSBtdWx0ZSBjb3BpaSBhbGUgcGFjaGV0dWx1aSAlcyFcbiIKKyIgVmEgZmkgY29uZmlndXJhdCBkb2FyIG8gZGF0xIMuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjIzMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisicGFja2FnZSAlLjI1MHMgaXMgbm90IHJlYWR5IGZvciB0cmlnZ2VyIHByb2Nlc3NpbmdcbiIKKyIgKGN1cnJlbnQgc3RhdHVzIGAlLjI1MHMnIHdpdGggbm8gcGVuZGluZyB0cmlnZ2VycykiCittc2dzdHIgIiIKKyJwYWNoZXR1bCAlLjI1MHMgbnUgZXN0ZSBwcmVnxIN0aXQgcGVudHJ1IHByb2Nlc2FyZWEgZGVjbGFuyJlhdG9yaWxvclxuIgorIiAoc3RhcmVhIGN1cmVudMSDIGVzdGUg4oCeJS4yNTBz4oCdIGbEg3LEgyBkZWNsYW7ImWF0b3JpIMOubiBhyJl0ZXB0YXJlKSIKKworIzogc3JjL3BhY2thZ2VzLmM6MzM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyB3aGljaCBwcm92aWRlcyAlcyBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIgIFBhY2hldHVsICVzIGNhcmUgZnVybml6ZWF6xIMgJXMgdmEgZmkgyJl0ZXJzLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzozMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIGlzIHRvIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiAgUGFjaGV0dWwgJXMgdmEgZmkgyJl0ZXJzLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzozNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBWZXJzaW9uIG9mICVzIG9uIHN5c3RlbSBpcyAlcy5cbiIKK21zZ3N0ciAiICBWZXJzaXVuZWEgbHVpICVzIMOubiBzaXN0ZW0gZXN0ZSAlcy5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6Mzc2CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyB3aGljaCBwcm92aWRlcyAlcyBhd2FpdHMgdHJpZ2dlciBwcm9jZXNzaW5nLlxuIgorbXNnc3RyICIiCisiICBQYWNoZXR1bCAlcyBjYXJlIGZ1cm5pemVhesSDICVzIGHImXRlYXB0xIMgcHJvY2VzYXJlYSBkZWNsYW7ImWF0b3JpbG9yLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzozODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIGF3YWl0cyB0cmlnZ2VyIHByb2Nlc3NpbmcuXG4iCittc2dzdHIgIiAgUGFjaGV0dWwgJXMgYciZdGVhcHTEgyBwcm9jZXNhcmVhIGRlY2xhbsiZYXRvcmlsb3IuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQxMAorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiBhbHNvIGNvbmZpZ3VyaW5nIGAlcycgKHJlcXVpcmVkIGJ5IGAlcycpXG4iCittc2dzdHIgImRwa2c6IHNlIGNvbmZpZ3VyZWF6xIMgyJlpIOKAniVz4oCdIChjZXJ1dCBkZSDigJ4lc+KAnSlcbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDE4CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyB3aGljaCBwcm92aWRlcyAlcyBpcyBub3QgY29uZmlndXJlZCB5ZXQuXG4iCittc2dzdHIgIiAgUGFjaGV0dWwgJXMgY2FyZSBmdXJuaXplYXrEgyAlcyBudSBlc3RlIGNvbmZpZ3VyYXQgw65uY8SDLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIGlzIG5vdCBjb25maWd1cmVkIHlldC5cbiIKK21zZ3N0ciAiICBQYWNoZXR1bCAlcyBudSBlc3RlIGNvbmZpZ3VyYXQgw65uY8SDLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIHdoaWNoIHByb3ZpZGVzICVzIGlzIG5vdCBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgUGFjaGV0dWwgJXMgY2FyZSBmdXJuaXplYXrEgyAlcyBudSBlc3RlIGluc3RhbGF0LlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIGlzIG5vdCBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgUGFjaGV0dWwgJXMgbnUgZXN0ZSBpbnN0YWxhdC5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDcyCisjLCBjLWZvcm1hdAorbXNnaWQgIiAlcyAoJXMpIGJyZWFrcyAlcyBhbmQgaXMgJXMuXG4iCittc2dzdHIgIiAgJXMgKCVzKSDDrmwgY29ydXBlIHBlICVzIMiZaSBlc3RlICVzLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlcyAoJXMpIHByb3ZpZGVzICVzLlxuIgorbXNnc3RyICIgICVzICglcykgZnVybml6ZWF6xIMgJXNcbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDgyCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgVmVyc2lvbiBvZiAlcyB0byBiZSBjb25maWd1cmVkIGlzICVzLlxuIgorbXNnc3RyICIgIFZlcnNpdW5lYSBsdWkgJXMgY2FyZSB2YSBmaSBjb25maWd1cmF0xIMgZXN0ZSAlcy5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NTk2Cittc2dpZCAiIGRlcGVuZHMgb24gIgorbXNnc3RyICIgZGVwaW5kZSBkZSAiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjYwMgorbXNnaWQgIjsgaG93ZXZlcjpcbiIKK21zZ3N0ciAiOyBkYXI6XG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiLi4uLyVzIgorbXNnc3RyICIuLi4vJXMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgZW5zdXJpbmcgYCUuMjUwcycgZG9lc24ndCBleGlzdCIKK21zZ3N0ciAiZXJvYXJlIGxhIGFzaWd1cmFyZWEgY8SDIOKAniUuMjUwc+KAnSBudSBleGlzdMSDIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjk5Cittc2dpZCAic3BsaXQgcGFja2FnZSByZWFzc2VtYmx5IgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTA4Cittc2dpZCAicmVhc3NlbWJsZWQgcGFja2FnZSBmaWxlIgorbXNnc3RyICJmaciZaWVyIHBhY2hldCByZWFzYW1ibGF0IgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEzMworIywgYy1mb3JtYXQKK21zZ2lkICJBdXRoZW50aWNhdGluZyAlcyAuLi5cbiIKK21zZ3N0ciAiU2UgYXV0ZW50aWZpY8SDICVzIC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEzOQorbXNnaWQgInBhY2thZ2Ugc2lnbmF0dXJlIHZlcmlmaWNhdGlvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE0NgorIywgYy1mb3JtYXQKK21zZ2lkICJWZXJpZmljYXRpb24gb24gcGFja2FnZSAlcyBmYWlsZWQhIgorbXNnc3RyICJWZXJpZmljYXJlYSBwYWNoZXR1bHVpICVzIGEgZciZdWF0ISIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlZlcmlmaWNhdGlvbiBvbiBwYWNrYWdlICVzIGZhaWxlZCxcbiIKKyJidXQgaW5zdGFsbGluZyBhbnl3YXkgYXMgeW91IHJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiIgorIlZlcmlmaWNhcmVhIHBhY2hldHVsdWkgJXMgYSBlyJl1YXQsXG4iCisiZGFyIHZhIGZpIGluc3RhbGF0IG9yaWN1bSwgYciZYSBjdW0gYcibaSBjZXJ1dC5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFzc2VkXG4iCittc2dzdHIgInZlcmlmaWNhdFxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE2NSBkcGtnLWRlYi9pbmZvLmM6ODEKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHRlbXBvcmFyeSBkaXJlY3RvcnkiCittc2dzdHIgImXImWVjIGxhIGNyZWFyZWEgZGlyZWN0b3J1bHVpIHRlbXBvcmFyIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjIwNQorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlICVzIGhhcyB0b28gbWFueSBDb25mbGljdHMvUmVwbGFjZXMgcGFpcnMiCittc2dzdHIgInBhY2hldHVsICVzIGFyZSBwcmVhIG11bHRlIHBlcmVjaGkg4oCeQ29uZmxpY3RzL1JlcGxhY2Vz4oCdIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjI0MworIywgYy1mb3JtYXQKK21zZ2lkICJvbGQgdmVyc2lvbiBvZiBwYWNrYWdlIGhhcyBvdmVybHktbG9uZyBpbmZvIGZpbGUgbmFtZSBzdGFydGluZyBgJS4yNTBzJyIKK21zZ3N0ciAiIgorInZlcnNpdW5lYSB2ZWNoZSBhIHBhY2hldHVsdWkgYXJlIG51bWUgZGUgZmnImWllciBpbmZvIHByZWEgbHVuZyBjYXJlIMOubmNlcGUgIgorImN1IOKAniUuMjUwc+KAnSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyODEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBvYnNvbGV0ZSBpbmZvIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm51IHNlIHBvYXRlIMiZdGVyZ2UgZmnImWllcnVsIGluZm8gw65udmVjaGl0IOKAniUuMjUwc+KAnSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyODYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgKHN1cHBvc2VkKSBuZXcgaW5mbyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJudSBzZSBwb2F0ZSBpbnN0YWxhIChwcmVzdXB1c3VsKSBmaciZaWVyIGluZm8gbm91IOKAniUuMjUwc+KAnSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyOTYKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiB0ZW1wIGNvbnRyb2wgZGlyZWN0b3J5IgorbXNnc3RyICJudSBzZSBwb2F0ZSBkZXNjaGlkZSBkaXJlY3RvcnVsIHRlbXAgZGUgY29udHJvbCIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMDcKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBjb250YWlucyBvdmVybHktbG9uZyBjb250cm9sIGluZm8gZmlsZSBuYW1lIChzdGFydGluZyBgJS41MHMnKSIKK21zZ3N0ciAiIgorInBhY2hldHVsIGNvbsibaW5lIHVuIGZpyJlpZXIgaW5mbyBkZSBjb250cm9sIGN1IHVuIG51bWUgcHJlYSBsdW5nICjDrm5jZXBlIGN1ICIKKyLigJ4lLjUwc+KAnSkiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzE0CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgY29udHJvbCBpbmZvIGNvbnRhaW5lZCBkaXJlY3RvcnkgYCUuMjUwcyciCittc2dzdHIgImluZm8gZGUgY29udHJvbCBhIHBhY2hldHVsdWkgY29uyJtpbmVhIGRpcmVjdG9ydWwg4oCeJS4yNTBz4oCdIgorCisjIEFuYWxpemEgY29kdWx1aSBhcmF0xIMgY8SDIHRyYWR1Y2VyZWEgYXN0YSBlc3RlIGNvcmVjdMSDCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMxNgorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGNvbnRyb2wgaW5mbyBybWRpciBvZiBgJS4yNTBzJyBkaWRuJ3Qgc2F5IG5vdCBhIGRpciIKK21zZ3N0ciAicm1kaXIgcGVudHJ1IOKAniUuMjUwc+KAnSBudSBhIHNlbW5hbGF0IGPEgyBudSBlc3RlIGRpcmVjdG9yIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMyNgorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlICVzIGNvbnRhaW5lZCBsaXN0IGFzIGluZm8gZmlsZSIKK21zZ3N0ciAicGFjaGV0dWwgJXMgYSBjb27Im2ludXQgbGlzdMSDIGNhIMiZaSBmaciZaWVyIGluZm8iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzMzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyBpbmZvIGZpbGUgYCUuMjUwcycgYXMgYCUuMjUwcyciCittc2dzdHIgIm51IHNlIHBvYXRlIGluc3RhbGEgbm91bCBmaciZaWVyIGluZm8g4oCeJS4yNTBz4oCdIGNhIOKAniUuMjUwc+KAnSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozNDkgc3JjL3JlbW92ZS5jOjE5OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGVsZXRlIGNvbnRyb2wgaW5mbyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJudSBzZSBwb2F0ZSDImXRlcmdlIGZpyJlpZXJ1bCBjdSBpbmZvcm1hyJtpaSBkZSBjb250cm9sIOKAniUuMjUwc+KAnSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo0MTEKK21zZ2lkICJjYW5ub3QgYWNjZXNzIGFyY2hpdmUiCittc2dzdHIgIm51IHNlIHBvYXRlIGFjY2VzYSBhcmhpdmEiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDMzCisjLCBmdXp6eQorI3wgbXNnaWQgImNvbnRyb2wgaW5mb3JtYXRpb24gbGVuZ3RoIgorbXNnaWQgInBhY2thZ2UgY29udHJvbCBpbmZvcm1hdGlvbiBleHRyYWN0aW9uIgorbXNnc3RyICJsdW5naW1lYSBpbmZvcm1hyJtpZWkgZGUgY29udHJvbCIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo0NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVjb3JkZWQgaW5mbyBhYm91dCAlcyBmcm9tICVzLlxuIgorbXNnc3RyICJJbmZvcm1hyJtpaSDDrm5yZWdpc3RyYXRlIGRlc3ByZSAlcyBkZSBsYSAlcy5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo0NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBhcmNoaXRlY3R1cmUgKCVzKSBkb2VzIG5vdCBtYXRjaCBzeXN0ZW0gKCVzKSIKK21zZ3N0ciAiYXJoaXRlY3R1cmEgcGFjaGV0dWx1aSAoJXMpIG51IHNlIHBvdHJpdmXImXRlIGN1IHNpc3RlbXVsICglcykiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTIzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiByZWdhcmRpbmcgJXMgY29udGFpbmluZyAlcywgcHJlLWRlcGVuZGVuY3kgcHJvYmxlbTpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6IHJlZmVyaXRvciBsYSAlcyBjb27Im2luw6JuZCAlcywgcHJvYmxlbWUgZGUgYW50ZS1kZXBlbmRlbsibxIM6XG4iCisiJXMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTI2CisjLCBjLWZvcm1hdAorbXNnaWQgInByZS1kZXBlbmRlbmN5IHByb2JsZW0gLSBub3QgaW5zdGFsbGluZyAlLjI1MHMiCittc2dzdHIgInByb2JsZW3EgyBkZSBhbnRlLWRlcGVuZGVuyJvEgyAtIG51IHNlIGluc3RhbGVhesSDICUuMjUwcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1MjcKK21zZ2lkICJpZ25vcmluZyBwcmUtZGVwZW5kZW5jeSBwcm9ibGVtISIKK21zZ3N0ciAic2UgaWdub3LEgyBwcm9ibGVtYSBkZSBhbnRlLWRlcGVuZGVuyJvEgyEiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTQzCisjLCBjLWZvcm1hdAorbXNnaWQgIlByZXBhcmluZyB0byByZXBsYWNlICVzICVzICh1c2luZyAlcykgLi4uXG4iCittc2dzdHIgIlNlIHByZWfEg3RlyJl0ZSDDrm5sb2N1aXJlYSBsdWkgJXMgJXMgKGZvbG9zaW5kICVzKSAuLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiVW5wYWNraW5nICVzIChmcm9tICVzKSAuLi5cbiIKK21zZ3N0ciAiU2UgZGVzcGFjaGV0ZWF6xIMgJXMgKGRpbiAlcykgLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTgwCisjLCBjLWZvcm1hdAorbXNnaWQgIm5hbWUgb2YgY29uZmZpbGUgKHN0YXJ0aW5nIGAlLjI1MHMnKSBpcyB0b28gbG9uZyAoPiVkIGNoYXJhY3RlcnMpIgorbXNnc3RyICIiCisibnVtZWxlIGZpyJlpZXJ1bHVpIGNvbmZmaWxlICjDrm5jZXDDom5kIOKAniUuMjUwc+KAnSkgZXN0ZSBwcmVhIGx1bmcgKD4lZCBjYXJhY3RlcmUpIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjYzMyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA3MQorIywgYy1mb3JtYXQKK21zZ2lkICJyZWFkIGVycm9yIGluICUuMjUwcyIKK21zZ3N0ciAiZXJvYXJlIGRlIGNpdGlyZSDDrm4gJS4yNTBzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjYzNQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nICUuMjUwcyIKK21zZ3N0ciAiZXJvYXJlIGxhIMOubmNoaWRlcmVhIGx1aSAlLjI1MHMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjM3CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHRyeWluZyB0byBvcGVuICUuMjUwcyIKK21zZ3N0ciAiZXJvYXJlIGxhIMOubmNlcmNhcmVhIGRlIGEgZGVzY2hpZGUgJS4yNTBzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjY3OAorIywgYy1mb3JtYXQKK21zZ2lkICJEZS1jb25maWd1cmluZyAlcywgdG8gYWxsb3cgcmVtb3ZhbCBvZiAlcyAuLi5cbiIKK21zZ3N0ciAiU2UgZGVjb25maWd1cmVhesSDICVzLCBwZW50cnUgYSBmaSBwZXJtaXRlIMiZdGVyZ2VyZWEgbHVpICVzIC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjY4MQorIywgYy1mb3JtYXQKK21zZ2lkICJEZS1jb25maWd1cmluZyAlcyAuLi5cbiIKK21zZ3N0ciAiU2UgZGVjb25maWd1cmVhesSDICVzIC4uLlxuIgorCisjIGVzdGUgdm9yYmEgZGVzcHJlIHVuIG51bWUgZGUgcGFjaGV0KCB2ZXppIHN1cnNhKQorIzogc3JjL3Byb2Nlc3NhcmMuYzo3NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiVW5wYWNraW5nIHJlcGxhY2VtZW50ICUuMjUwcyAuLi5cbiIKK21zZ3N0ciAiU2UgZGV6YXJoaXZlYXrEgyBwYWNoZXR1bCDDrm5sb2N1aXRvciAoJS4yNTBzKSAuLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NDAKKyMsIGZ1enp5CisjfCBtc2dpZCAiZHBrZy1kZWIgZmllbGQgZXh0cmFjdGlvbiIKK21zZ2lkICJwYWNrYWdlIGZpbGVzeXN0ZW0gYXJjaGl2ZSBleHRyYWN0aW9uIgorbXNnc3RyICJleHRyYWdlcmVhIGPDom1wdWx1aSBkZSBjxIN0cmUgZHBrZy1kZWIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6ODU0Cittc2dpZCAiZXJyb3IgcmVhZGluZyBkcGtnLWRlYiB0YXIgb3V0cHV0IgorbXNnc3RyICJlcm9hcmUgbGEgY2l0aXJlYSByZXp1bHRhdHVsdWkgdGFyIGFsIGx1aSBkcGtnLWRlYiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NTYKK21zZ2lkICJjb3JydXB0ZWQgZmlsZXN5c3RlbSB0YXJmaWxlIC0gY29ycnVwdGVkIHBhY2thZ2UgYXJjaGl2ZSIKK21zZ3N0ciAiIgorInNpc3RlbXVsIGRlIGZpyJlpZXJlIGFsIGZpyJlpZXJ1bHVpIHRhciBlc3RlIGNvcnVwdCAtIGFyaGl2YSBwYWNoZXR1bHVpIGVzdGUgIgorImNvcnVwdMSDIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjg1OQorbXNnaWQgImRwa2ctZGViOiB6YXAgcG9zc2libGUgdHJhaWxpbmcgemVyb3MiCittc2dzdHIgImRwa2ctZGViOiDImXRlcmdlcmUgYSBwb3NpYmlsZWxvciB6ZXJvdXJpIGRlIGxhIHNmw6JyyJlpdCIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5MTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHN0YXQgb2xkIGZpbGUgJyUuMjUwcycgc28gbm90IGRlbGV0aW5nIGl0OiAlcyIKK21zZ3N0ciAibnUgcy1hIHB1dHV0IGFjY2VzYSBmaciZaWVydWwgdmVjaGkg4oCeJS4yNTBz4oCdIGHImWEgY8SDIG51IHNlIMiZdGVyZ2U6ICVzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjkyNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGVsZXRlIG9sZCBkaXJlY3RvcnkgJyUuMjUwcyc6ICVzIgorbXNnc3RyICJudSBzZSBwb2F0ZSDImXRlcmdlIGRpcmVjdG9ydWwgdmVjaGkg4oCeJS4yNTBz4oCdOiAlcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAib2xkIGNvbmZmaWxlICclLjI1MHMnIHdhcyBhbiBlbXB0eSBkaXJlY3RvcnkgKGFuZCBoYXMgbm93IGJlZW4gZGVsZXRlZCkiCittc2dzdHIgIiIKKyJ2ZWNoaXVsIGZpyJlpZXIgY29uZmZpbGUg4oCeJS4yNTBz4oCdIGVyYSB1biBkaXJlY3RvciBnb2wgKMiZaSBhIGZvc3QgyJl0ZXJzIGFjdW0pIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjk3NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBvdGhlciBuZXcgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAic3RhdCBpbXBvc2liaWwgcGVudHJ1IGFsdCBmaciZaWVyIG5vdSDigJ4lLjI1MHPigJ0iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTg2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJvbGQgZmlsZSAnJS4yNTBzJyBpcyB0aGUgc2FtZSBhcyBzZXZlcmFsIG5ldyBmaWxlcyEgKGJvdGggJyUuMjUwcycgYW5kICIKKyInJS4yNTBzJykiCittc2dzdHIgIiIKKyJ2ZWNoaXVsIGZpyJlpZXIg4oCeJS4yNTBz4oCdIGVzdGUgYWNlbGHImWkgY3UgYWx0ZSBjw6J0ZXZhIGZpyJlpZXJlIG5vaSEgKGF0w6J0ICIKKyLigJ4lLjI1MHPigJ0gY8OidCDImWkg4oCeJS4yNTBz4oCdKSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxMDI1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWN1cmVseSByZW1vdmUgb2xkIGZpbGUgJyUuMjUwcyc6ICVzIgorbXNnc3RyICJudSBzZSBwb2F0ZSDImXRlcmdlIMOubiBzaWd1cmFuyJvEgyBmaciZaWVydWwgdmVjaGkg4oCeJS4yNTBz4oCdOiDigJ4lc+KAnSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxMjA2CisjLCBjLWZvcm1hdAorbXNnaWQgIihOb3RpbmcgZGlzYXBwZWFyYW5jZSBvZiAlcywgd2hpY2ggaGFzIGJlZW4gY29tcGxldGVseSByZXBsYWNlZC4pXG4iCittc2dzdHIgIihTZSBub3RlYXrEgyBkaXNwYXJpyJtpYSBsdWkgJXMsIGNhcmUgYSBmb3N0IMOubmxvY3VpdCBjb21wbGV0LilcbiIKKworIy4gVFJBTlNMQVRPUlM6IFRoaXMgaXMgdGhlIGhlYWRlciB0aGF0IGFwcGVhcnMgb24gJ2Rwa2ctcXVlcnkgLWwnLiBUaGUKKyMuICogc3RyaW5nIHNob3VsZCByZW1haW4gdW5kZXIgODAgY2hhcmFjdGVycy4gVGhlIHVwcGVyY2FzZSBsZXR0ZXJzIGluCisjLiAqIHRoZSBzdGF0ZSB2YWx1ZXMgZGVub3RlIHRoZSBhYmJyZXZpYXRlZCBsZXR0ZXIgdGhhdCB3aWxsIGFwcGVhciBvbgorIy4gKiB0aGUgZmlyc3QgdGhyZWUgY29sdW1ucywgd2hpY2ggc2hvdWxkIGlkZWFsbHkgbWF0Y2ggdGhlIEVuZ2xpc2ggb25lCisjLiAqIChlLmcuIFJlbW92ZSDihpIgc3VwUmltZWl4KSwgc2VlIGRwa2ctcXVlcnkoMSkgZm9yIGZ1cnRoZXIgZGV0YWlscy4gVGhlCisjLiAqIHRyYW5zbGF0ZWQgbWVzc2FnZSBjYW4gdXNlIGFkZGl0aW9uYWwgbGluZXMgaWYgbmVlZGVkLgorIzogc3JjL3F1ZXJ5Y21kLmM6MTQ5Cittc2dpZCAiIgorIkRlc2lyZWQ9VW5rbm93bi9JbnN0YWxsL1JlbW92ZS9QdXJnZS9Ib2xkXG4iCisifCBTdGF0dXM9Tm90L0luc3QvQ29uZi1maWxlcy9VbnBhY2tlZC9oYWxGLWNvbmYvSGFsZi1pbnN0L3RyaWctYVdhaXQvVHJpZy0iCisicGVuZFxuIgorInwvIEVycj89KG5vbmUpL1JlaW5zdC1yZXF1aXJlZCAoU3RhdHVzLEVycjogdXBwZXJjYXNlPWJhZClcbiIKK21zZ3N0ciAiIgorIkRvcml0PW5lY1Vub3NjdXQvSW5zdGFsZWF6xIMvyJl0ZVJnZS9jdXLEg8ibxIMoUCkvcMSDc3RyZWF6xIMoSClcbiIKKyJ8IFN0YXJlPU5lL0luc3QvZmnImUNmZy9kZXNmxINjVXQvanVtLWNvbkYvanVtLWluc3QoSCkvYciZdGVhcHTEgy1kZWNsKFcpL2RlY2wtIgorIsOubi1hyJl0ZXBUXG4iCisifC8gRXJvPz0obmltaWMpL1JlaW5zdC1uZWMgKFN0LEVybzogbWFqdXNjdWxlPXLEg3UpXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjE1MworbXNnaWQgIk5hbWUiCittc2dzdHIgIk51bWUiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjE1MworbXNnaWQgIlZlcnNpb24iCittc2dzdHIgIlZlcnNpdW5lIgorCisjOiBzcmMvcXVlcnljbWQuYzoxNTQKK21zZ2lkICJEZXNjcmlwdGlvbiIKK21zZ3N0ciAiRGVzY3JpZXJlIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNDYgc3JjL3F1ZXJ5Y21kLmM6NTExIHNyYy9zZWxlY3QuYzo3NQorIywgYy1mb3JtYXQKK21zZ2lkICJObyBwYWNrYWdlcyBmb3VuZCBtYXRjaGluZyAlcy5cbiIKK21zZ3N0ciAiTnUgYXUgZm9zdCBnxINzaXRlIHBhY2hldGUgY2FyZSBzxIMgc2UgcG90cml2ZWFzY8SDIGN1ICVzLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJzaW9uIGJ5ICVzIGZyb206ICVzXG4iCittc2dzdHIgInJlZGlyZWN0YXJlIGRlIGPEg3RyZSAlcyBkZSBsYTogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6Mjc1CisjLCBjLWZvcm1hdAorbXNnaWQgImRpdmVyc2lvbiBieSAlcyB0bzogJXNcbiIKK21zZ3N0ciAicmVkaXJlY3RhcmUgZGUgY8SDdHJlICVzIGPEg3RyZTogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6Mjc4CisjLCBjLWZvcm1hdAorbXNnaWQgImxvY2FsIGRpdmVyc2lvbiBmcm9tOiAlc1xuIgorbXNnc3RyICJyZWRpcmVjdGFyZSBsb2NhbMSDIGRlIGxhOiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9jYWwgZGl2ZXJzaW9uIHRvOiAlc1xuIgorbXNnc3RyICJyZWRpcmVjdGFyZSBsb2NhbMSDIGPEg3RyZTogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MzA5Cittc2dpZCAiLS1zZWFyY2ggbmVlZHMgYXQgbGVhc3Qgb25lIGZpbGUgbmFtZSBwYXR0ZXJuIGFyZ3VtZW50IgorbXNnc3RyICItLXNlYXJjaCBuZWNlc2l0xIMgY2VsIHB1yJtpbiDImWFibG9udWwgbnVtZWx1aSBkZSBmaciZaWVyIGNhIGFyZ3VtZW50IgorCisjOiBzcmMvcXVlcnljbWQuYzozNTAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIk5vIHBhY2thZ2VzIGZvdW5kIG1hdGNoaW5nICVzLlxuIgorbXNnaWQgIiVzOiBubyBwYXRoIGZvdW5kIG1hdGNoaW5nIHBhdHRlcm4gJXMuXG4iCittc2dzdHIgIk51IGF1IGZvc3QgZ8SDc2l0ZSBwYWNoZXRlIGNhcmUgc8SDIHNlIHBvdHJpdmVhc2PEgyBjdSAlcy5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MzkzCisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgYCVzJyBpcyBub3QgaW5zdGFsbGVkIGFuZCBubyBpbmZvIGlzIGF2YWlsYWJsZS5cbiIKK21zZ3N0ciAiIgorIlBhY2hldHVsIOKAniVz4oCdIG51IGVzdGUgaW5zdGFsYXQgyJlpIG51IGVzdGUgZGlzcG9uaWJpbMSDIG5pY2kgbyBpbmZvcm1hyJtpZS5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDAxCisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgYCVzJyBpcyBub3QgYXZhaWxhYmxlLlxuIgorbXNnc3RyICJQYWNoZXR1bCDigJ4lc+KAnSBudSBlc3RlIGRpc3BvbmliaWwuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQxMCBzcmMvcXVlcnljbWQuYzo1ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSBgJXMnIGlzIG5vdCBpbnN0YWxsZWQuXG4iCittc2dzdHIgIlBhY2hldHVsIOKAniVz4oCdIG51IGVzdGUgaW5zdGFsYXQuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQxOAorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlIGAlcycgZG9lcyBub3QgY29udGFpbiBhbnkgZmlsZXMgKCEpXG4iCittc2dzdHIgIlBhY2hldHVsIOKAniVz4oCdIG51IGNvbsibaW5lIG5pY2kgdW4gZmnImWllciAoISlcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDI1CisjLCBjLWZvcm1hdAorbXNnaWQgImxvY2FsbHkgZGl2ZXJ0ZWQgdG86ICVzXG4iCittc2dzdHIgInJlZGlyZWN0YXQgbG9jYWwgY8SDdHJlOiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBkaXZlcnRzIG90aGVycyB0bzogJXNcbiIKK21zZ3N0ciAicGFjaGV0dWwgcmVkaXJlY3RlYXrEgyBhbHRlbGUgY8SDdHJlOiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJ0ZWQgYnkgJXMgdG86ICVzXG4iCittc2dzdHIgInJlZGlyZWN0YXQgZGUgJXMgY8SDdHJlOiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0NTIKK21zZ2lkICIiCisiVXNlIGRwa2cgLS1pbmZvICg9IGRwa2ctZGViIC0taW5mbykgdG8gZXhhbWluZSBhcmNoaXZlIGZpbGVzLFxuIgorImFuZCBkcGtnIC0tY29udGVudHMgKD0gZHBrZy1kZWIgLS1jb250ZW50cykgdG8gbGlzdCB0aGVpciBjb250ZW50cy5cbiIKK21zZ3N0ciAiIgorIkZvbG9zacibaSBkcGtnIC0taW5mbyAoPSBkcGtnLWRlYiAtLWluZm8pIGNhIHPEgyBleGFtaW5hyJtpIGZpyJlpZXJlbGUgYXJoaXZlaSxcbiIKKyLImWkgZHBrZyAtLWNvbnRlbnRzICg9IGRwa2ctZGViIC0tY29udGVudHMpIGNhIHPEgy1pIGFmaciZYcibaSBjb27Im2ludXR1bC5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NTcwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgYXQgbW9zdCB0d28gYXJndW1lbnRzIgorbXNnc3RyICItLSVzIGlhIGNlbCBtdWx0IGRvdcSDIGFyZ3VtZW50ZSIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NTc4CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbnRyb2wgZmlsZSBjb250YWlucyAlYyIKK21zZ3N0ciAiZmnImWllcnVsIGRlIGNvbnRyb2wgY29uyJtpbmUgJWMiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjYwMAorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gJXMgcGFja2FnZSBtYW5hZ2VtZW50IHByb2dyYW0gcXVlcnkgdG9vbCB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICIiCisiRGViaWFuIOKAniVz4oCdLCBwcm9ncmFtIGRlIGFkbWluaXN0cmFyZWEgYSBwYWNoZXRlbG9yLCB1bmVhbHRhIGRlIGludGVyb2dhcmUgIgorInZlcnNpdW5lYSAlcy5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjE5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiQ29tbWFuZHM6XG4iCisjfCAiICAtc3wtLXN0YXR1cyA8cGFja2FnZT4gLi4uICAgICAgICBEaXNwbGF5IHBhY2thZ2Ugc3RhdHVzIGRldGFpbHMuXG4iCisjfCAiICAtcHwtLXByaW50LWF2YWlsIDxwYWNrYWdlPiAuLi4gICBEaXNwbGF5IGF2YWlsYWJsZSB2ZXJzaW9uIGRldGFpbHMuXG4iCisjfCAiICAtTHwtLWxpc3RmaWxlcyA8cGFja2FnZT4gLi4uICAgICBMaXN0IGZpbGVzIGBvd25lZCcgYnkgcGFja2FnZShzKS5cbiIKKyN8ICIgIC1sfC0tbGlzdCBbPHBhdHRlcm4+IC4uLl0gICAgICAgIExpc3QgcGFja2FnZXMgY29uY2lzZWx5LlxuIgorI3wgIiAgLVd8LS1zaG93IDxwYXR0ZXJuPiAuLi4gICAgICAgICAgU2hvdyBpbmZvcm1hdGlvbiBvbiBwYWNrYWdlKHMpLlxuIgorI3wgIiAgLVN8LS1zZWFyY2ggPHBhdHRlcm4+IC4uLiAgICAgICAgRmluZCBwYWNrYWdlKHMpIG93bmluZyBmaWxlKHMpLlxuIgorI3wgIiAgLWN8LS1jb250cm9sLXBhdGggPHBhY2thZ2U+IFs8ZmlsZT5dXG4iCisjfCAiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQcmludCBwYXRoIGZvciBwYWNrYWdlIGNvbnRyb2wgZmlsZS5cbiIKKyN8ICJcbiIKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtc3wtLXN0YXR1cyA8cGFja2FnZT4gLi4uICAgICAgICBEaXNwbGF5IHBhY2thZ2Ugc3RhdHVzIGRldGFpbHMuXG4iCisiICAtcHwtLXByaW50LWF2YWlsIDxwYWNrYWdlPiAuLi4gICBEaXNwbGF5IGF2YWlsYWJsZSB2ZXJzaW9uIGRldGFpbHMuXG4iCisiICAtTHwtLWxpc3RmaWxlcyA8cGFja2FnZT4gLi4uICAgICBMaXN0IGZpbGVzIGBvd25lZCcgYnkgcGFja2FnZShzKS5cbiIKKyIgIC1sfC0tbGlzdCBbPHBhdHRlcm4+IC4uLl0gICAgICAgIExpc3QgcGFja2FnZXMgY29uY2lzZWx5LlxuIgorIiAgLVd8LS1zaG93IFs8cGF0dGVybj4gLi4uXSAgICAgICAgU2hvdyBpbmZvcm1hdGlvbiBvbiBwYWNrYWdlKHMpLlxuIgorIiAgLVN8LS1zZWFyY2ggPHBhdHRlcm4+IC4uLiAgICAgICAgRmluZCBwYWNrYWdlKHMpIG93bmluZyBmaWxlKHMpLlxuIgorIiAgLWN8LS1jb250cm9sLXBhdGggPHBhY2thZ2U+IFs8ZmlsZT5dXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQcmludCBwYXRoIGZvciBwYWNrYWdlIGNvbnRyb2wgZmlsZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIkNvbWVuemk6XG4iCisiICAtc3wtLXN0YXR1cyA8cGFjaGV0PiAuLi4gICAgICAgIEFmaciZZWF6xIMgZGV0YWxpaSBkZXNwcmUgc3RhcmVhICIKKyJwYWNoZXR1bHVpLlxuIgorIiAgLXB8LS1wcmludC1hdmFpbCA8cGFjaGV0PiAuLi4gICBBZmnImWVhesSDIGRldGFsaWkgZGVzcHJlIHZlcnNpdW5pbGUgIgorImRpc3BvbmliaWxlLlxuIgorIiAgLUx8LS1saXN0ZmlsZXMgPHBhY2hldD4gLi4uICAgICBBZmnImWVhesSDIGZpyJlpZXJlbGUgY2FyZSBhcGFyyJtpbiBwYWNoZXR1bHVpIgorIihlbG9yKS5cbiIKKyIgIC1sfC0tbGlzdCBbPMiZYWJsb24+IC4uLl0gICAgICAgIEFmaciZZWF6xIMgY29uY2lzIHBhY2hldGVsZS5cbiIKKyIgIC1XfC0tc2hvdyA8yJlhYmxvbj4gLi4uICAgICAgICAgIEFyYXTEgyBpbmZvcm1hyJtpaSBkZXNwcmUgcGFjaGV0KGUpLlxuIgorIiAgLVN8LS1zZWFyY2ggPMiZYWJsb24+IC4uLiAgICAgICAgR8SDc2XImXRlIHBhY2hldHVsKGVsZSkgZGUgY2FyZSBhcGFyyJtpbmUgIgorImZpyJlpZXJ1bChlbGUpLlxuIgorIiAgLWN8LS1jb250cm9sLXBhdGggPHBhY2hldD4gWzxmaciZaWVyPl1cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWZpyJllYXrEgyBjYWxlYSBwZW50cnUgZmnImWllcnVsIGRlIGNvbnRyb2wgIgorImFsIHBhY2hldHVsdWkuXG4iCisiXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjYzNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorIiAgLWZ8LS1zaG93Zm9ybWF0PTxmb3JtYXQ+ICAgICAgICAgVXNlIGFsdGVybmF0aXZlIGZvcm1hdCBmb3IgLS1zaG93LlxuIgorIlxuIgorbXNnc3RyICIiCisiT3DIm2l1bmk6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcj4gICAgICAgICAgICBGb2xvc2XImXRlIDxkaXJlY3Rvcj4gw65uIGxvYyBkZSAlc1xuIgorIiAgLWZ8LS1zaG93Zm9ybWF0PTxmb3JtYXQ+ICAgICAgICAgRm9sb3NlyJl0ZSBmb3JtYXR1bCBhbHRlcm5hdGl2IHBlbnRydSAtLSIKKyJzaG93XG4iCisiXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjY0MiBkcGtnLWRlYi9tYWluLmM6MTEyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJGb3JtYXQgc3ludGF4OlxuIgorIiAgQSBmb3JtYXQgaXMgYSBzdHJpbmcgdGhhdCB3aWxsIGJlIG91dHB1dCBmb3IgZWFjaCBwYWNrYWdlLiBUaGUgZm9ybWF0XG4iCisiICBjYW4gaW5jbHVkZSB0aGUgc3RhbmRhcmQgZXNjYXBlIHNlcXVlbmNlcyBcXG4gKG5ld2xpbmUpLCBcXHIgKGNhcnJpYWdlXG4iCisiICByZXR1cm4pIG9yIFxcXFwgKHBsYWluIGJhY2tzbGFzaCkuIFBhY2thZ2UgaW5mb3JtYXRpb24gY2FuIGJlIGluY2x1ZGVkXG4iCisiICBieSBpbnNlcnRpbmcgdmFyaWFibGUgcmVmZXJlbmNlcyB0byBwYWNrYWdlIGZpZWxkcyB1c2luZyB0aGUgJHt2YXJbOyIKKyJ3aWR0aF19XG4iCisiICBzeW50YXguIEZpZWxkcyB3aWxsIGJlIHJpZ2h0LWFsaWduZWQgdW5sZXNzIHRoZSB3aWR0aCBpcyBuZWdhdGl2ZSBpbiAiCisid2hpY2hcbiIKKyIgIGNhc2UgbGVmdCBhbGlnbm1lbnQgd2lsbCBiZSB1c2VkLlxuIgorbXNnc3RyICIiCisiU2ludGF4YSBwZW50cnUgZm9ybWF0OlxuIgorIiAgVW4gyJlpciBkZSBmb3JtYXRhcmUgY2FyZSB2YSBmaSBmb2xvc2l0IHBlbnRydSBmaWVjYXJlIHBhY2hldC4gRm9ybWF0dWxcbiIKKyIgIHBvYXRlIGNvbsibaW5lIHNlY3ZlbsibZWxlIHN0YW5kYXJkIGRlIGNpdGFyZSBcXG4gKG5ld2xpbmUpLCBcXHIgKGNhcnJpYWdlXG4iCisiICByZXR1cm4pIHNhdSBcXFxcIChiYWNrc2xhc2gpLiBJbmZvcm1hyJtpaWxlIGRlc3ByZSBwYWNoZXQgcG90IGZpIGluY2x1c2VcbiIKKyIgIHByaW4gaW5zZXJhcmVhIGRlIHJlZmVyaW7Im2UgdmFyaWFiaWxlIGxhIGPDom1wdXJpbGUgcGFjaGV0dWx1aSwgZm9sb3NpbmQgIgorInNpbnRheGFcbiIKKyIgICR7dmFyWzt3aWR0aF19LiBDw6JtcHVyaWxlIHZvciBmaSBhbGluaWF0ZSBsYSBkcmVhcHRhIMOubiBjYXp1bCDDrm4gY2FyZSAiCisibMSDyJtpbWVhIG51XG4iCisiICBlc3RlIG5lZ2F0aXbEgy4gw45uIGFjZWwgY2F6IHNlIHZhIGZvbG9zaSBhbGluaWVyZSBsYSBzdMOibmdhLiBcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjU2Cittc2dpZCAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBxdWVyeWluZyBwYWNrYWdlcy4iCittc2dzdHIgIkZvbG9zacibaSAtLWhlbHAgcGVudHJ1IGFqdXRvciBkZXNwcmUgaW50ZXJvZ2FyZWEgcGFjaGV0ZWxvciIKKworIzogc3JjL3JlbW92ZS5jOjg4CisjLCBjLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nIHJlcXVlc3QgdG8gcmVtb3ZlICUuMjUwcyB3aGljaCBpc24ndCBpbnN0YWxsZWQuIgorbXNnc3RyICJzZSBpZ25vcsSDIGNlcmVyZWEgZGUgyJl0ZXJnZXJlIGEgbHVpICUuMjUwcyBjYXJlIG51IGVzdGUgaW5zdGFsYXQuIgorCisjOiBzcmMvcmVtb3ZlLmM6OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImlnbm9yaW5nIHJlcXVlc3QgdG8gcmVtb3ZlICUuMjUwcywgb25seSB0aGUgY29uZmlnXG4iCisiIGZpbGVzIG9mIHdoaWNoIGFyZSBvbiB0aGUgc3lzdGVtLiBVc2UgLS1wdXJnZSB0byByZW1vdmUgdGhlbSB0b28uIgorbXNnc3RyICIiCisic2UgaWdub3LEgyBjZXJlcmVhIGRlIMOubmRlcMSDcnRhcmUgYSBsdWkgJS4yNTBzLCBkaW4gY2FyZSBkb2FyXG4iCisiIGZpyJlpZXJlbGUgZGUgY29uZmlndXJhcmUgc3VudCBwZSBzaXN0ZW0uIEZvbG9zacibaSAtLXB1cmdlIHBlbnRydSBhIGxlICIKKyJlbGltaW5hLiIKKworIzogc3JjL3JlbW92ZS5jOjEwMworbXNnaWQgIlRoaXMgaXMgYW4gZXNzZW50aWFsIHBhY2thZ2UgLSBpdCBzaG91bGQgbm90IGJlIHJlbW92ZWQuIgorbXNnc3RyICJBY2VzdCBwYWNoZXQgZXN0ZSBlc2VuyJtpYWwgLSBudSBhciB0cmVidWkgyJl0ZXJzLiIKKworIzogc3JjL3JlbW92ZS5jOjEyOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogZGVwZW5kZW5jeSBwcm9ibGVtcyBwcmV2ZW50IHJlbW92YWwgb2YgJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiBwcm9ibGVtZWxlIGRlIGRlcGVuZGVuyJvEgyBwcmXDrm50w6JtcGluxIMgyJl0ZXJnZXJlYSBsdWkgJXM6XG4iCisiJXMiCisKKyM6IHNyYy9yZW1vdmUuYzoxMzAKK21zZ2lkICJkZXBlbmRlbmN5IHByb2JsZW1zIC0gbm90IHJlbW92aW5nIgorbXNnc3RyICJwcm9ibGVtZSBkZSBkZXBlbmRlbsibxIMgLSBudSBzZSBlbGltaW7EgyIKKworIzogc3JjL3JlbW92ZS5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogJXM6IGRlcGVuZGVuY3kgcHJvYmxlbXMsIGJ1dCByZW1vdmluZyBhbnl3YXkgYXMgeW91IHJlcXVlc3RlZDpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiBwcm9ibGVtZSBkZSBkZXBlbmRlbsibxIMsIGRhciBzZSBlbGltaW7EgyBvcmljdW0sIGHImWEgY3VtIGHIm2kgY2VydXQ6XG4iCisiJXMiCisKKyM6IHNyYy9yZW1vdmUuYzoxNDIKK21zZ2lkICIiCisiUGFja2FnZSBpcyBpbiBhIHZlcnkgYmFkIGluY29uc2lzdGVudCBzdGF0ZSAtIHlvdSBzaG91bGRcbiIKKyIgcmVpbnN0YWxsIGl0IGJlZm9yZSBhdHRlbXB0aW5nIGEgcmVtb3ZhbC4iCittc2dzdHIgIiIKKyJQYWNoZXR1bCBlc3RlIMOubnRyLW8gc3RhcmUgaW5jb25zaXN0ZW50xIMgYXZhbnNhdMSDIC0gYXIgdHJlYnVpIHPEgy1sXG4iCisiIHJlaW5zdGFsYcibaSDDrm5haW50ZSBkZSBhIMOubmNlcmNhIHPEgy1sIMiZdGVyZ2XIm2kuIgorCisjOiBzcmMvcmVtb3ZlLmM6MTQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIldvdWxkIHJlbW92ZSBvciBwdXJnZSAlcyAuLi5cbiIKK21zZ3N0ciAiUy1hciDDrm5kZXDEg3J0YSBzYXUgY3VyxIPIm2EgJXMgLi4uXG4iCisKKyM6IHNyYy9yZW1vdmUuYzoxNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVtb3ZpbmcgJXMgLi4uXG4iCittc2dzdHIgIlNlIMiZdGVyZ2UgJXMgLi4uXG4iCisKKyM6IHNyYy9yZW1vdmUuYzoyNzUgc3JjL3JlbW92ZS5jOjM2NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisid2hpbGUgcmVtb3ZpbmcgJS4yNTBzLCB1bmFibGUgdG8gcmVtb3ZlIGRpcmVjdG9yeSAnJS4yNTBzJzogJXMgLSBkaXJlY3RvcnkgIgorIm1heSBiZSBhIG1vdW50IHBvaW50PyIKK21zZ3N0ciAiIgorIsOubiB0aW1wdWwgyJl0ZXJnZXJpaSAlLjI1MHMsIG51IHMtYSBwdXR1dCDImXRlcmdlIGRpcmVjdG9ydWwg4oCeJS4yNTBz4oCdOiAlcyAtICIKKyJwb2F0ZSBkaXJlY3RvcnVsIGVzdGUgdW4gcHVuY3QgZGUgbW9udGFyZT8iCisKKyM6IHNyYy9yZW1vdmUuYzoyODkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNlY3VyZWx5IHJlbW92ZSAnJS4yNTBzJyIKK21zZ3N0ciAibnUgc2UgcG9hdGUgyJl0ZXJnZSDDrm4gc2lndXJhbsibxIMg4oCeJS4yNTBz4oCdIgorCisjOiBzcmMvcmVtb3ZlLmM6MzYxCisjLCBjLWZvcm1hdAorbXNnaWQgIndoaWxlIHJlbW92aW5nICUuMjUwcywgZGlyZWN0b3J5ICclLjI1MHMnIG5vdCBlbXB0eSBzbyBub3QgcmVtb3ZlZC4iCittc2dzdHIgIiIKKyJsYSDImXRlcmdlcmVhIGx1aSAlLjI1MHMsIGRpcmVjdG9ydWwg4oCeJS4yNTBz4oCdIG51IGVzdGUgZ29sLCBkZWNpIG51IGEgZm9zdCAiCisiyJl0ZXJzLiIKKworIzogc3JjL3JlbW92ZS5jOjM4MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiY2Fubm90IHJlbW92ZSBgJS4yNTBzJyIKK21zZ2lkICJjYW5ub3QgcmVtb3ZlICclLjI1MHMnIgorbXNnc3RyICJudSBzZSBwb2F0ZSDImXRlcmdlIOKAniUuMjUwc+KAnSIKKworIzogc3JjL3JlbW92ZS5jOjQwOQorIywgYy1mb3JtYXQKK21zZ2lkICJQdXJnaW5nIGNvbmZpZ3VyYXRpb24gZmlsZXMgZm9yICVzIC4uLlxuIgorbXNnc3RyICJDdXLEg8ibIGZpyJlpZXJlbGUgZGUgY29uZmlndXJhcmUgcGVudHJ1ICVzIC4uLlxuIgorCisjOiBzcmMvcmVtb3ZlLmM6NDU5CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZW1vdmUgb2xkIGNvbmZpZyBmaWxlIGAlLjI1MHMnICg9IGAlLjI1MHMnKSIKK21zZ3N0ciAibnUgc2UgcG9hdGUgyJl0ZXJnZSB2ZWNoaXVsIGZpyJlpZXIgZGUgY29uZmlndXJhcmUg4oCeJS4yNTBz4oCdICg9IOKAniUuMjUwc+KAnSkiCisKKyM6IHNyYy9yZW1vdmUuYzo0NzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlYWQgY29uZmlnIGZpbGUgZGlyIGAlLjI1MHMnIChmcm9tIGAlLjI1MHMnKSIKK21zZ3N0ciAiIgorIm51IHNlIHBvYXRlIGNpdGkgZGlyZWN0b3J1bCBmaciZaWVydWx1aSBkZSBjb25maWd1cmFyZSDigJ4lLjI1MHPigJ0gKGRpbiDigJ4lLjI1MHPigJ0pIgorCisjOiBzcmMvcmVtb3ZlLmM6NTEwCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZW1vdmUgb2xkIGJhY2t1cCBjb25maWcgZmlsZSBgJS4yNTBzJyAob2YgYCUuMjUwcycpIgorbXNnc3RyICIiCisibnUgc2UgcG9hdGUgw65uZGVwxINydGEgY29waWEgZGUgc2lndXJhbsibxIMgYSB2ZWNoaXVsdWkgZmnImWllciBkZSBjb25maWd1cmFyZSAiCisi4oCeJS4yNTBz4oCdIChhIGx1aSDigJ4lLjI1MHPigJ0pIgorCisjOiBzcmMvcmVtb3ZlLmM6NTY4Cittc2dpZCAiY2Fubm90IHJlbW92ZSBvbGQgZmlsZXMgbGlzdCIKK21zZ3N0ciAibnUgc2UgcG9hdGUgyJl0ZXJnZSBsaXN0YSBmaciZaWVyZWxvciB2ZWNoaSIKKworIzogc3JjL3JlbW92ZS5jOjU3NAorbXNnaWQgImNhbid0IHJlbW92ZSBvbGQgcG9zdHJtIHNjcmlwdCIKK21zZ3N0ciAibnUgc2UgcG9hdGUgw65ubMSDdHVyYSB2ZWNoaXVsIHNjcmlwdCBwb3N0cm0iCisKKyM6IHNyYy9zZWxlY3QuYzoxMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgaW4gcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQiCittc2dzdHIgImVvZiBuZWHImXRlcHRhdCDDrm4gbnVtZWxlIHBhY2hldHVsdWkgbGEgbGluaWEgJWQiCisKKyM6IHNyYy9zZWxlY3QuYzoxMTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgbGluZSBpbiBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZCIKK21zZ3N0ciAic2bDonLImWl0IGRlIGxpbmllIG5lYciZdGVwdGF0IMOubiBudW1lbGUgcGFjaGV0dWx1aSBsYSBsaW5pYSAlZCIKKworIzogc3JjL3NlbGVjdC5jOjEyMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVvZiBhZnRlciBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZCIKK21zZ3N0ciAiZW9mIG5lYciZdGVwdGF0IGR1cMSDIG51bWVsZSBwYWNoZXR1bHVpIGxhIGxpbmlhICVkIgorCisjOiBzcmMvc2VsZWN0LmM6MTIzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGxpbmUgYWZ0ZXIgcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQiCittc2dzdHIgInNmw6JyyJlpdCBkZSBsaW5pZSBuZWHImXRlcHRhdCBkdXDEgyBudW1lbGUgcGFjaGV0dWx1aSBsYSBsaW5pYSAlZCIKKworIzogc3JjL3NlbGVjdC5jOjEzNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGRhdGEgYWZ0ZXIgcGFja2FnZSBhbmQgc2VsZWN0aW9uIGF0IGxpbmUgJWQiCittc2dzdHIgImRhdGUgbmVhyJl0ZXB0YXRlIGR1cMSDIHBhY2hldCDImWkgc2VsZWPIm2llIGxhIGxpbmlhICVkIgorCisjOiBzcmMvc2VsZWN0LmM6MTM5CisjLCBjLWZvcm1hdAorbXNnaWQgImlsbGVnYWwgcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQ6ICUuMjUwcyIKK21zZ3N0ciAibnVtZSBpbGVnYWwgZGUgcGFjaGV0IGxhIGxpbmlhICVkOiAlLjI1MHMiCisKKyM6IHNyYy9zZWxlY3QuYzoxNDMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biB3YW50ZWQgc3RhdHVzIGF0IGxpbmUgJWQ6ICUuMjUwcyIKK21zZ3N0ciAic3RhcmUgY2VydXTEgyBuZWN1bm9zY3V0xIMgbGEgbGluYSAlZDogJS4yNTBzIgorCisjOiBzcmMvc2VsZWN0LmM6MTQ5Cittc2dpZCAicmVhZCBlcnJvciBvbiBzdGFuZGFyZCBpbnB1dCIKK21zZ3N0ciAiZXJvYXJlIGRlIGNpdGlyZSBkZSBsYSBpbnRyYXJlYSBzdGFuZGFyZCIKKworIzogc3JjL3N0YXRjbWQuYzo1MgorIywgZnV6enkKKyN8IG1zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IHF1ZXJ5aW5nIHBhY2thZ2VzLiIKK21zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IG92ZXJyaWRpbmcgZmlsZSBzdGF0IGluZm9ybWF0aW9uLiIKK21zZ3N0ciAiRm9sb3NpyJtpIC0taGVscCBwZW50cnUgYWp1dG9yIGRlc3ByZSBpbnRlcm9nYXJlYSBwYWNoZXRlbG9yIgorCisjOiBzcmMvc3RhdGNtZC5jOjYxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsIDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDYtMjAwOSBHdWlsbGVtIEpvdmVyLlxuIgorbXNnc3RyICIiCisiQ29weXJpZ2h0IChDKSAyMDAwLCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDA2LTIwMDkgR3VpbGxlbSBKb3Zlci5cbiIKKworIzogc3JjL3N0YXRjbWQuYzo4MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtLWFkZCA8b3duZXI+IDxncm91cD4gPG1vZGU+IDxmaWxlPlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGFkZCBhIG5ldyBlbnRyeSBpbnRvIHRoZSBkYXRhYmFzZS5cbiIKKyIgIC0tcmVtb3ZlIDxmaWxlPiAgICAgICAgICByZW1vdmUgZmlsZSBmcm9tIHRoZSBkYXRhYmFzZS5cbiIKKyIgIC0tbGlzdCBbPGdsb2ItcGF0dGVybj5dICBsaXN0IGN1cnJlbnQgb3ZlcnJpZGVzIGluIHRoZSBkYXRhYmFzZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIkNvbWVuemk6XG4iCisiICAtLWFkZCA8cHJvcHJpZXRhcj4gPGdydXA+IDxtb2Q+IDxmaciZaWVyPlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGFkYXVnxIMgbyBwb3ppyJtpZSBub3XEgyDDrm4gYmF6YSBkZSBkYXRlLlxuIgorIiAgLS1yZW1vdmUgPGZpyJlpZXI+ICAgICAgICDImXRlcmdlIGZpyJlpZXJ1bCBkaW4gYmF6YSBkZSBkYXRlLlxuIgorIiAgLS1saXN0IFs8bW9kZWwtZ2xvYj5dICAgIGxpc3RlYXrEgyDDrm5sb2N1aXJpbGUgZGluIGJhemEgZGUgZGF0ZS5cbiIKKyJcbiIKKworIzogc3JjL3N0YXRjbWQuYzo4OQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICBzZXQgdGhlIGRpcmVjdG9yeSB3aXRoIHRoZSBzdGF0b3ZlcnJpZGUgZmlsZS5cbiIKKyIgIC0tdXBkYXRlICAgICAgICAgICAgICAgICBpbW1lZGlhdGVseSB1cGRhdGUgZmlsZSBwZXJtaXNzaW9ucy5cbiIKKyIgIC0tZm9yY2UgICAgICAgICAgICAgICAgICBmb3JjZSBhbiBhY3Rpb24gZXZlbiBpZiBhIHNhbml0eSBjaGVjayBmYWlscy5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBxdWlldCBvcGVyYXRpb24sIG1pbmltYWwgb3V0cHV0LlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIk9wyJtpdW5pOlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3I+ICAgIGNvbmZpZ3VyZWF6xIMgZGlyZWN0b3J1bCBjdSBmaciZaWVydWwgIgorInN0YXRvdmVycmlkZS5cbiIKKyIgIC0tdXBkYXRlICAgICAgICAgICAgICAgICBhY3R1YWxpemVhesSDIGltZWRpYXQgcGVybWlzaXVuaWxlIGZpyJlpZXJlbG9yLlxuIgorIiAgLS1mb3JjZSAgICAgICAgICAgICAgICAgIGZvcsibZWF6xIMgbyBhY8ibaXVuZSBjaGlhciBkYWPEgyB2ZXJpZmljxINyaWxlICIKKyJlyJl1ZWF6xIMuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgb3BlcmFyZSBzaWxlbsibaW9hc8SDLCBtaW5pbSBkZSBtZXNhamUuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgYWZpyJllYXrEgyBhY2VzdCBhanV0b3IuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgYWZpyJllYXrEgyB2ZXJzaXVuZWEuXG4iCisKKyM6IHNyYy9zdGF0Y21kLmM6MTE2Cittc2dpZCAic3RyaXBwaW5nIHRyYWlsaW5nIC8iCittc2dzdHIgInNlIMiZdGVyZ2UgLyBkZSBsYSBmaW5hbCIKKworIzogc3JjL3N0YXRjbWQuYzoyMDcKK21zZ2lkICJjYW5ub3Qgb3BlbiBuZXcgc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIm51IHNlIHBvYXRlIGRlc2NoaWRlIG5vdWwgZmnImWllciBzdGF0b3ZlcnJpZGUiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjIyCittc2dpZCAiZXJyb3IgcmVtb3Zpbmcgc3RhdG92ZXJyaWRlLW9sZCIKK21zZ3N0ciAiZXJvYXJlIGxhIMiZdGVyZ2VyZWEgc3RhdG92ZXJyaWRlLW9sZCIKKworIzogc3JjL3N0YXRjbWQuYzoyMjQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBuZXcgc3RhdG92ZXJyaWRlLW9sZCIKK21zZ3N0ciAiZXJvYXJlIGxhIGNyZWFyZWEgbm91bHVpIHN0YXRvdmVycmlkZS1vbGQiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjI2Cittc2dpZCAiZXJyb3IgaW5zdGFsbGluZyBuZXcgc3RhdG92ZXJyaWRlIgorbXNnc3RyICJlcm9hcmUgbGEgaW5zdGFsYXJlYSBub3VsdWkgc3RhdG92ZXJyaWRlIgorCisjOiBzcmMvc3RhdGNtZC5jOjI0NgorbXNnaWQgIi0tYWRkIG5lZWRzIGZvdXIgYXJndW1lbnRzIgorbXNnc3RyICItLWFkZCBuZWNlc2l0xIMgcGF0cnUgYXJndW1lbnRlIgorCisjOiBzcmMvc3RhdGNtZC5jOjI1NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQW4gb3ZlcnJpZGUgZm9yICclcycgYWxyZWFkeSBleGlzdHMsIGJ1dCAtLWZvcmNlIHNwZWNpZmllZCBzbyB3aWxsIGJlICIKKyJpZ25vcmVkLiIKK21zZ3N0ciAiIgorIk8gw65ubG9jdWlyZSBwZW50cnUg4oCeJXPigJ0gZXhpc3TEgyBkZWphLCBkYXIgcy1hIHNwZWNpZmljYXQgLS1mb3JjZSwgZGVjaSB2YSBmaSAiCisiaWdub3JhdMSDLiIKKworIzogc3JjL3N0YXRjbWQuYzoyNjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiQW4gb3ZlcnJpZGUgZm9yICclcycgYWxyZWFkeSBleGlzdHMsIGFib3J0aW5nLiIKK21zZ3N0ciAiRXhpc3TEgyBkZWphIG8gw65ubG9jdWlyZSBwZW50cnUg4oCeJXPigJ0sIHNlIMOubnRyZXJ1cGUuIgorCisjOiBzcmMvc3RhdGNtZC5jOjI3MgorIywgYy1mb3JtYXQKK21zZ2lkICItLXVwZGF0ZSBnaXZlbiBidXQgJXMgZG9lcyBub3QgZXhpc3QiCittc2dzdHIgInMtYSBkYXQgLS11cGRhdGUgZGFyICVzIG51IGV4aXN0xIMiCisKKyM6IHNyYy9zdGF0Y21kLmM6Mjk2Cittc2dpZCAiTm8gb3ZlcnJpZGUgcHJlc2VudC4iCittc2dzdHIgIk51IGVzdGUgcHJlemVudMSDIG5pY2kgbyDDrm5sb2N1aXJlLiIKKworIzogc3JjL3N0YXRjbWQuYzozMDQKK21zZ2lkICItLXVwZGF0ZSBpcyB1c2VsZXNzIGZvciAtLXJlbW92ZSIKK21zZ3N0ciAiLS11cGRhdGUgZXN0ZSBpbnV0aWwgcGVudHJ1IC0tcmVtb3ZlIgorCisjOiBzcmMvc3RhdGRiLmM6NTkKK21zZ2lkICJzeW50YXggZXJyb3I6IGludmFsaWQgdWlkIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJlcm9hcmUgZGUgc2ludGF4xIM6IHVpZCBuZXZhbGlkIMOubiBmaciZaWVydWwgc3RhdG92ZXJyaWRlIgorCisjOiBzcmMvc3RhdGRiLmM6NjQKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yOiB1bmtub3duIHVzZXIgJyVzJyBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiZXJvYXJlIGRlIHNpbnRheMSDOiB1dGlsaXphdG9yIOKAniVz4oCdIG5lY3Vub3NjdXQgw65uIGZpyJlpZXJ1bCBzdGF0b3ZlcnJpZGUiCisKKyM6IHNyYy9zdGF0ZGIuYzo4MworbXNnaWQgInN5bnRheCBlcnJvcjogaW52YWxpZCBnaWQgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgImVyb2FyZSBkZSBzaW50YXjEgzogZ2lkIG5ldmFsaWQgw65uIGZpyJlpZXJ1bCBzdGF0b3ZlcnJpZGUiCisKKyM6IHNyYy9zdGF0ZGIuYzo4OAorIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3I6IHVua25vd24gZ3JvdXAgJyVzJyBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiZXJvYXJlIGRlIHNpbnRheMSDOiBncnVwIOKAniVz4oCdIG5lY3Vub3NjdXQgw65uIGZpyJlpZXJ1bCBzdGF0b3ZlcnJpZGUiCisKKyM6IHNyYy9zdGF0ZGIuYzoxMDQKK21zZ2lkICJzeW50YXggZXJyb3I6IGludmFsaWQgbW9kZSBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiZXJvYXJlIGRlIHNpbnRheMSDOiBtb2QgbmV2YWxpZCDDrm4gZmnImWllcnVsIHN0YXRvdmVycmlkZSIKKworIzogc3JjL3N0YXRkYi5jOjEyNworbXNnaWQgImZhaWxlZCB0byBvcGVuIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJlyJllYyBsYSBkZXNjaGlkZXJlYSBmaciZaWVydWx1aSBzdGF0b3ZlcnJpZGUiCisKKyM6IHNyYy9zdGF0ZGIuYzoxMzQKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgImXImWVjIGxhIGZzdGF0IHBlbnRydSBmaciZaWVydWwgc3RhdG92ZXJyaWRlIgorCisjOiBzcmMvc3RhdGRiLmM6MTM3Cittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IHByZXZpb3VzIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJlyJllYyBsYSBmc3RhdCBwZW50cnUgZmnImWllcnVsIHN0YXRvdmVycmlkZSBwcmVjZWRlbnQiCisKKyM6IHNyYy9zdGF0ZGIuYzoxNjIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInN0YXRvdmVycmlkZSBmaWxlIGAlLjI1MHMnIgorbXNnaWQgInJlYWRpbmcgc3RhdG92ZXJyaWRlIGZpbGUgJyUuMjUwcyciCittc2dzdHIgImZpyJlpZXIgc3RhdG92ZXJyaWRlIOKAniUuMjUwc+KAnSIKKworIzogc3JjL3N0YXRkYi5jOjE2OQorbXNnaWQgInN0YXRvdmVycmlkZSBmaWxlIGlzIG1pc3NpbmcgZmluYWwgbmV3bGluZSIKK21zZ3N0ciAiZGluIGZpyJlpZXJ1bCBzdGF0b3ZlcnJpZGUgbGlwc2XImXRlIGNhcmFjdGVydWwgbmV3bGluZSBkZSBsYSBmaW5hbCIKKworIzogc3JjL3N0YXRkYi5jOjE3MworbXNnaWQgInN0YXRvdmVycmlkZSBmaWxlIGNvbnRhaW5zIGVtcHR5IGxpbmUiCittc2dzdHIgImZpyJlpZXJ1bCBzdGF0b3ZlcnJpZGUgY29uyJtpbmUgbGluaWUgZ29hbMSDIgorCisjOiBzcmMvc3RhdGRiLmM6MTc4IHNyYy9zdGF0ZGIuYzoxOTAgc3JjL3N0YXRkYi5jOjIwMgorbXNnaWQgInN5bnRheCBlcnJvciBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiZXJvYXJlIGRlIHNpbnRheMSDIMOubiBmaciZaWVydWwgc3RhdG92ZXJyaWRlIgorCisjOiBzcmMvc3RhdGRiLmM6MTg2IHNyYy9zdGF0ZGIuYzoxOTggc3JjL3N0YXRkYi5jOjIxMAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGxpbmUgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgInNmw6JyyJlpdCBkZSBsaW5pZSBuZWHImXRlcHRhdCDDrm4gZmnImWllcnVsIHN0YXRvdmVycmlkZSIKKworIzogc3JjL3N0YXRkYi5jOjIxNAorIywgYy1mb3JtYXQKK21zZ2lkICJtdWx0aXBsZSBzdGF0dXNvdmVycmlkZXMgcHJlc2VudCBmb3IgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAiZXhpc3TEgyBtdWx0aXBsZSDDrm5sb2N1aXJpIGRlIHN0YXJlIHBlbnRydSBmaciZaWVydWwg4oCeJS4yNTBz4oCdIgorCisjOiBzcmMvdHJpZ2NtZC5jOjQ2Cittc2dpZCAiVHlwZSBkcGtnLXRyaWdnZXIgLS1oZWxwIGZvciBoZWxwIGFib3V0IHRoaXMgdXRpbGl0eS4iCittc2dzdHIgIlRhc3RhyJtpIGRwa2ctdHJpZ2dlciAtLWhlbHAgcGVudHJ1IGFqdXRvciBkZXNwcmUgYWNlc3QgdXRpbGl0YXIuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjUxCisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiAlcyBwYWNrYWdlIHRyaWdnZXIgdXRpbGl0eSB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICJEZWJpYW4gJXMsIHVuZWFsdGEgcGVudHJ1IGRlY2xhbsiZYXRvcmkgZGUgcGFjaGV0ZSB2ZXJzaXVuZWEgJXMuXG4iCisKKyM6IHNyYy90cmlnY21kLmM6NjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbnM+IC4uLl0gPHRyaWdnZXItbmFtZT5cbiIKKyIgICAgICAgJXMgWzxvcHRpb25zPiAuLi5dIDxjb21tYW5kPlxuIgorIlxuIgorbXNnc3RyICIiCisiVXRpbGl6YXJlOiAlcyBbPG9wyJtpdW5pPiAuLi5dIDxudW1lLWRlY2xhbsiZYXRvcj5cbiIKKyIgICAgICAgICAgICVzIFs8b3DIm2l1bmk+IC4uLl0gPGNvbWFuZMSDPlxuIgorIlxuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC0tY2hlY2stc3VwcG9ydGVkICAgICAgICAgICAgICAgIENoZWNrIGlmIHRoZSBydW5uaW5nIGRwa2cgc3VwcG9ydHMgIgorInRyaWdnZXJzLlxuIgorIlxuIgorbXNnc3RyICIiCisiQ29tZW56aTpcbiIKKyIgIC0tY2hlY2stc3VwcG9ydGVkICAgICAgICAgICAgICAgIFZlcmlmaWPEgyBkYWPEgyBhY3R1YWx1bCBkcGtnIGFyZSBzdXBvcnRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGVudHJ1IGRlY2xhbsiZYXRvcmkuXG4iCisiXG4iCisKKyM6IHNyYy90cmlnY21kLmM6ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgICAgICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyIgIC0tYnktcGFja2FnZT08cGFja2FnZT4gICAgICAgICAgIE92ZXJyaWRlIHRyaWdnZXIgYXdhaXRlciAobm9ybWFsbHkgc2V0XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ5IGRwa2cpLlxuIgorIiAgLS1uby1hd2FpdCAgICAgICAgICAgICAgICAgICAgICAgTm8gcGFja2FnZSBuZWVkcyB0byBhd2FpdCB0aGUgIgorInByb2Nlc3NpbmcuXG4iCisiICAtLW5vLWFjdCAgICAgICAgICAgICAgICAgICAgICAgICBKdXN0IHRlc3QgLSBkb24ndCBhY3R1YWxseSBjaGFuZ2UgIgorImFueXRoaW5nLlxuIgorIlxuIgorbXNnc3RyICIiCisiT3DIm2l1bmk6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcj4gICAgICAgICAgICBGb2xvc2XImXRlIDxkaXJlY3Rvcj4gw65uIGxvYyBkZSAlcy5cbiIKKyIgIC0tYnktcGFja2FnZT08cGFjaGV0PiAgICAgICAgICAgIFN1cHJhc2NyaWUgcGUgY2VsIGNlIGHImXRlYXB0xIMgIgorImRlY2xhbsiZYXRvcnVsXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICjDrm4gbW9kIG5vcm1hbCBzZXRhdCBkZSBkcGtnKS5cbiIKKyIgIC0tbm8tYXdhaXQgICAgICAgICAgICAgICAgICAgICAgIE5pY2kgdW4gcGFjaGV0IG51IHRyZWJ1aWUgc8SDIGHImXRlcHRlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByb2Nlc2FyZWEuXG4iCisiICAtLW5vLWFjdCAgICAgICAgICAgICAgICAgICAgICAgICBEb2FyIHRlc3RlYXrEgyAtIG51IHNjaGltYmEgbmltaWMuXG4iCisiXG4iCisKKyM6IHNyYy90cmlnY21kLmM6MTUyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB0cmlnZ2VycyBkYXRhIGRpcmVjdG9yeSBub3QgeWV0IGNyZWF0ZWRcbiIKK21zZ3N0ciAiJXM6IGRpcmVjdG9ydWwgY3UgZGF0ZSBkZXNwcmUgZGVjbGFuyJlhdG9yaSBudSBlc3RlIGNyZWF0IMOubmPEg1xuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjE1NgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogdHJpZ2dlciByZWNvcmRzIG5vdCB5ZXQgaW4gZXhpc3RlbmNlXG4iCittc2dzdHIgIiVzOiDDrm5yZWdpc3RyxINyaWxlIGRlY2xhbsiZYXRvcmlsb3IgbnUgZXhpc3TEgyDDrm5jxINcbiIKKworIzogc3JjL3RyaWdjbWQuYzoyMDUKK21zZ2lkICJ0YWtlcyBvbmUgYXJndW1lbnQsIHRoZSB0cmlnZ2VyIG5hbWUiCittc2dzdHIgImFjY2VwdMSDIHVuIGFyZ3VtZW50LCBudW1lbGUgZGVjbGFuyJlhdG9ydWx1aSIKKworIzogc3JjL3RyaWdjbWQuYzoyMTAKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgImRwa2ctdHJpZ2dlciBtdXN0IGJlIGNhbGxlZCBmcm9tIGEgbWFpbnRhaW5lciBzY3JpcHQgKG9yIHdpdGggYSAtLWJ5LSIKKyN8ICJwYWNrYWdlIG9wdGlvbikiCittc2dpZCAibXVzdCBiZSBjYWxsZWQgZnJvbSBhIG1haW50YWluZXIgc2NyaXB0IChvciB3aXRoIGEgLS1ieS1wYWNrYWdlIG9wdGlvbikiCittc2dzdHIgIiIKKyJkcGtnLXRyaWdnZXIgdHJlYnVpZSBzxIMgZmllIGFwZWxhdCBkaW50ci11biBzY3JpcHQgZGUgbWVudGVuYW7Im8SDIChzYXUgY3UgbyAiCisib3DIm2l1bmUgLS1ieS1wYWNrYWdlKSIKKworIzogc3JjL3RyaWdjbWQuYzoyMTUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImRwa2ctdHJpZ2dlcjogaWxsZWdhbCBhd2FpdGVkIHBhY2thZ2UgbmFtZSBgJS4yNTBzJzogJS4yNTBzIgorbXNnaWQgImlsbGVnYWwgYXdhaXRlZCBwYWNrYWdlIG5hbWUgJyUuMjUwcyc6ICUuMjUwcyIKK21zZ3N0ciAiZHBrZy10cmlnZ2VyOiBudW1lIG5ldmFsaWQgZGUgcGFjaGV0IGHImXRlcHRhdCDigJ4lLjI1MHPigJ06ICUuMjUwcyIKKworIzogc3JjL3RyaWdjbWQuYzoyMjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCB0cmlnZ2VyIG5hbWUgYCUuMjUwcyc6ICUuMjUwcyIKK21zZ3N0ciAibnVtZSBkZSBkZWNsYW7ImWF0b3IgbmV2YWxpZCDigJ4lLjI1MHPigJ06ICUuMjUwcyIKKworIzogc3JjL3RyaWdwcm9jLmM6MjUwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogY3ljbGUgZm91bmQgd2hpbGUgcHJvY2Vzc2luZyB0cmlnZ2VyczpcbiIKKyIgY2hhaW4gb2YgcGFja2FnZXMgd2hvc2UgdHJpZ2dlcnMgYXJlIG9yIG1heSBiZSByZXNwb25zaWJsZTpcbiIKK21zZ3N0ciAiIgorIiVzOiBhIGZvc3QgZ8SDc2l0IHVuIGNpY2x1IMOubiB0aW1wdWwgcHJvY2VzxINyaWkgZGVjbGFuyJlhdG9yaWxvcjpcbiIKKyIgbGFuyJt1bCBkZSBwYWNoZXRlIGFsZSBjxINyb3IgZGVjbGFuyJlhdG9yaSBzdW50IHNhdSBhciBwdXRlYSBmaSAiCisicmVzcG9uc2FiaWxpOlxuIgorCisjOiBzcmMvdHJpZ3Byb2MuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiBwYWNrYWdlcycgcGVuZGluZyB0cmlnZ2VycyB3aGljaCBhcmUgb3IgbWF5IGJlIHVucmVzb2x2YWJsZTpcbiIKK21zZ3N0ciAiIgorIlxuIgorIiBkZWNsYW7ImWF0b3JpIMOubiBhyJl0ZXB0YXJlIGFpIHBhY2hldGVsb3IgY2FyZSBhciBwdXRlYSBmaSBuZXJlem9sdmFiaWxpOlxuIgorCisjOiBzcmMvdHJpZ3Byb2MuYzoyODEKK21zZ2lkICJ0cmlnZ2VycyBsb29waW5nLCBhYmFuZG9uZWQiCittc2dzdHIgImRlY2xhbsiZYXRvcmlpIGVyYXUgw65uIGJ1Y2zEgywgc2UgcmVudW7Im8SDIgorCisjOiBzcmMvdHJpZ3Byb2MuYzozMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHJvY2Vzc2luZyB0cmlnZ2VycyBmb3IgJXMgLi4uXG4iCittc2dzdHIgIlNlIHByb2Nlc2VhesSDIGRlY2xhbsiZYXRvcmlpIHBlbnRydSAlcyAuLi5cbiIKKworIzogc3JjL3VwZGF0ZS5jOjUyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICItLSVzIG5lZWRzIGV4YWN0bHkgb25lIFBhY2thZ2VzIGZpbGUgYXJndW1lbnQiCittc2dpZCAiLS0lcyBuZWVkcyBleGFjdGx5IG9uZSBQYWNrYWdlcy1maWxlIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIG5lY2VzaXTEgyBleGFjdCB1biBmaciZaWVyIFBhY2thZ2VzIGNhIGFyZ3VtZW50IgorCisjOiBzcmMvdXBkYXRlLmM6NjIKK21zZ2lkICJ1bmFibGUgdG8gYWNjZXNzIGRwa2cgc3RhdHVzIGFyZWEgZm9yIGJ1bGsgYXZhaWxhYmxlIHVwZGF0ZSIKK21zZ3N0ciAiIgorIm51IHNlIHBvYXRlIGFjY2VzYSB6b25hIGRlIHN0YXJlIGEgbHVpIGRwa2cgcGVudHJ1IGFjdHVhbGl6YXJlYSBidWxrICIKKyJhdmFpbGFibGUiCisKKyM6IHNyYy91cGRhdGUuYzo2NAorbXNnaWQgImJ1bGsgYXZhaWxhYmxlIHVwZGF0ZSByZXF1aXJlcyB3cml0ZSBhY2Nlc3MgdG8gZHBrZyBzdGF0dXMgYXJlYSIKK21zZ3N0ciAiIgorImFjdHVhbGl6YXJlYSBidWxrIGF2YWlsYWJsZSBuZWNlc2l0xIMgYWNjZXMgZGUgc2NyaWVyZSBsYSB6b25hIGRlIHN0YXJlIGEgbHVpICIKKyJkcGtnIgorCisjOiBzcmMvdXBkYXRlLmM6NzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVwbGFjaW5nIGF2YWlsYWJsZSBwYWNrYWdlcyBpbmZvLCB1c2luZyAlcy5cbiIKK21zZ3N0ciAiU2Ugw65ubG9jdWllyJl0ZSBpbmZvIGN1IHBhY2hldGVsZSBkaXNwb25pYmlsZSBmb2xvc2luZCAlcy5cbiIKKworIzogc3JjL3VwZGF0ZS5jOjc0CisjLCBjLWZvcm1hdAorbXNnaWQgIlVwZGF0aW5nIGF2YWlsYWJsZSBwYWNrYWdlcyBpbmZvLCB1c2luZyAlcy5cbiIKK21zZ3N0ciAiU2UgYWN0dWFsaXplYXrEgyBpbmZvIGN1IHBhY2hldGVsZSBkaXNwb25pYmlsZSBmb2xvc2luZCAlcy5cbiIKKworIzogc3JjL3VwZGF0ZS5jOjEwMQorIywgYy1mb3JtYXQKK21zZ2lkICJJbmZvcm1hdGlvbiBhYm91dCAlZCBwYWNrYWdlIHdhcyB1cGRhdGVkLlxuIgorbXNnaWRfcGx1cmFsICJJbmZvcm1hdGlvbiBhYm91dCAlZCBwYWNrYWdlcyB3YXMgdXBkYXRlZC5cbiIKK21zZ3N0clswXSAiSW5mb3JtYcibaWlsZSBkZXNwcmUgJWQgcGFjaGV0IGF1IGZvc3QgYWN0dWFsaXphdGUuXG4iCittc2dzdHJbMV0gIkluZm9ybWHIm2lpbGUgZGVzcHJlICVkIHBhY2hldGUgYXUgZm9zdCBhY3R1YWxpemF0ZS5cbiIKK21zZ3N0clsyXSAiSW5mb3JtYcibaWlsZSBkZXNwcmUgJWQgZGUgcGFjaGV0ZSBhdSBmb3N0IGFjdHVhbGl6YXRlLlxuIgorCisjOiBzcmMvdXBkYXRlLmM6MTE1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJvYnNvbGV0ZSAnLS0lcycgb3B0aW9uLCB1bmF2YWlsYWJsZSBwYWNrYWdlcyBhcmUgYXV0b21hdGljYWxseSBjbGVhbmVkIHVwLiIKK21zZ3N0ciAiIgorIm9wyJtpdW5lIMOubnZlY2hpdMSDIOKAni0tJXPigJ0sIHBhY2hldGVsZSBpbmRpc3BvbmliaWxlIHN1bnQgY3VyxIPIm2F0ZSBhdXRvbWF0LiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBuYW1lICclLjUwcy4uLicgaXMgdG9vIGxvbmciCittc2dzdHIgIm51bWVsZSBkZSBmaciZaWVyIOKAniUuNTBzLi4u4oCdIGVzdGUgcHJlYSBsdW5nIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjEyOQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBmaWxlIG5hbWUgJyUuMjUwcyciCittc2dzdHIgInN0YXQgaW1wb3NpYmlsIHBlbnRydSBmaciZaWVydWwgY3UgbnVtZWxlIOKAniUuMjUwc+KAnSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoxODkKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBjb250cm9sIGRpcmVjdG9yeSIKK21zZ3N0ciAic3RhdCBpbXBvc2liaWwgcGVudHJ1IGRpcmVjdG9ydWwgZGUgY29udHJvbCIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoxOTEKK21zZ2lkICJjb250cm9sIGRpcmVjdG9yeSBpcyBub3QgYSBkaXJlY3RvcnkiCittc2dzdHIgImRpcmVjdG9ydWwgZGUgY29udHJvbCBudSBlc3RlIHVuIGRpcmVjdG9yIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjE5MworIywgYy1mb3JtYXQKK21zZ2lkICJjb250cm9sIGRpcmVjdG9yeSBoYXMgYmFkIHBlcm1pc3Npb25zICUwM2xvIChtdXN0IGJlID49MDc1NSBhbmQgPD0wNzc1KSIKK21zZ3N0ciAiIgorImRpcmVjdG9ydWwgZGUgY29udHJvbCBhcmUgZHJlcHR1cmkgZGUgYWNjZXMgaW5jb3JlY3RlICUwM2xvICh0cmVidWllIHPEgyBmaWUgIgorIj49MDc1NSDImWkgPD0wNzc1KSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAibWFpbnRhaW5lciBzY3JpcHQgYCUuNTBzJyBpcyBub3QgYSBwbGFpbiBmaWxlIG9yIHN5bWxpbmsiCittc2dzdHIgIiIKKyJzY3JpcHR1bCBkZSBtZW50ZW5hbsibxIMg4oCeJS41MHPigJ0gbnUgZXN0ZSBmaciZaWVyIHByb3ByaXUtemlzIHNhdSBsZWfEg3R1csSDICIKKyJzaW1ib2xpY8SDIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjIwNworIywgYy1mb3JtYXQKK21zZ2lkICIiCisibWFpbnRhaW5lciBzY3JpcHQgYCUuNTBzJyBoYXMgYmFkIHBlcm1pc3Npb25zICUwM2xvIChtdXN0IGJlID49MDU1NSBhbmQgIgorIjw9MDc3NSkiCittc2dzdHIgIiIKKyJzY3JpcHR1bCBkZSBtZW50ZW5hbsibxIMg4oCeJS41MHPigJ0gYXJlIGRyZXB0dXJpIGRlIGFjY2VzIG5lcGVybWlzZSAlMDNsbyAiCisiKHRyZWJ1aWUgc8SDIGZpZSA+PTA1NTUgyJlpIDw9MDc3NSkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjExCisjLCBjLWZvcm1hdAorbXNnaWQgIm1haW50YWluZXIgc2NyaXB0IGAlLjUwcycgaXMgbm90IHN0YXR0YWJsZSIKK21zZ3N0ciAic2NyaXB0dWx1aSBkZSBtZW50ZW5hbsibxIMg4oCeJS41MHPigJ0gbnUgZXN0ZSDigJ5zdGF04oCdLWFiaWwiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjM3Cittc2dpZCAiZXJyb3Igb3BlbmluZyBjb25mZmlsZXMgZmlsZSIKK21zZ3N0ciAiZXJvYXJlIGxhIGRlc2NoaWRlcmVhIGZpyJlpZXJ1bHVpIGNvbmZmaWxlcyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNDYKK21zZ2lkICJlbXB0eSBzdHJpbmcgZnJvbSBmZ2V0cyByZWFkaW5nIGNvbmZmaWxlcyIKK21zZ3N0ciAiyJlpciBnb2wgZGUgbGEgZmdldHMgbGEgY2l0aXJlYSBmaciZaWVyZWxvciBjb25mZmlsZSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgbmFtZSAnJS41MHMuLi4nIGlzIHRvbyBsb25nLCBvciBtaXNzaW5nIGZpbmFsIG5ld2xpbmUiCittc2dzdHIgIiIKKyJudW1lbGUgZmnImWllcnVsdWkgY29uZmZpbGUg4oCeJS41MHMuLi7igJ0gZXN0ZSBwcmVhIGx1bmcgc2F1IGxpcHNlyJl0ZSB1biAiCisiY2FyYWN0ZXIgbmV3bGluZSBsYSBzZsOicsiZaXQiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjY0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIGZpbGVuYW1lICclcycgY29udGFpbnMgdHJhaWxpbmcgd2hpdGUgc3BhY2VzIgorbXNnc3RyICJmaciZaWVydWwgY29uZmZpbGUg4oCeJXPigJ0gY29uyJtpbmUgY2FyYWN0ZXJlIGRlIHRpcCBzcGHIm2l1IGxhIGZpbmFsIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI2NgorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBgJS4yNTBzJyBkb2VzIG5vdCBhcHBlYXIgaW4gcGFja2FnZSIKK21zZ3N0ciAiZmnImWllcnVsIGNvbmZmaWxlIOKAniUuMjUwc+KAnSBudSBhcGFyZSDDrm4gcGFjaGV0IgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI2OAorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBgJS4yNTBzJyBpcyBub3Qgc3RhdHRhYmxlIgorbXNnc3RyICJmaciZaWVydWwgY29uZmZpbGUg4oCeJS4yNTBz4oCdIG51IGVzdGUg4oCec3RhdOKAnS1hYmlsIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI3MAorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSAnJXMnIGlzIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgImZpyJlpZXJ1bCBjb25mZmlsZSDigJ4lc+KAnSBudSBlc3RlIGZpyJlpZXIgcHJvcHJpdS16aXMiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6Mjc0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIG5hbWUgJyVzJyBpcyBkdXBsaWNhdGVkIgorbXNnc3RyICJudW1lbGUgZGUgY29uZmZpbGUgJXMgZXN0ZSBkdXBsaWNhdCIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyODcKK21zZ2lkICJlcnJvciByZWFkaW5nIGNvbmZmaWxlcyBmaWxlIgorbXNnc3RyICJlcm9hcmUgbGEgY2l0aXJlYSBmaciZaWVydWx1aSBjb25mZmlsZXMiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MzM5Cittc2dpZCAicGFja2FnZSBuYW1lIGhhcyBjaGFyYWN0ZXJzIHRoYXQgYXJlbid0IGxvd2VyY2FzZSBhbHBoYW51bXMgb3IgYC0rLiciCittc2dzdHIgIiIKKyJudW1lbGUgcGFjaGV0dWx1aSBjb27Im2luZSBjYXJhY3RlcmUgY2FyZSBudSBzdW50IGxpdGVyZSBtaWNpLCBjaWZyZSBzYXUg4oCeLSsu4oCdIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjM0MQorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGNvbnRhaW5zIHVzZXItZGVmaW5lZCBQcmlvcml0eSB2YWx1ZSAnJXMnIgorbXNnc3RyICLigJ4lc+KAnSBjb27Im2luZSBvIHZhbG9hcmUgZGVmaW5pdMSDIGRlIHV0aWxpemF0b3IgcGVudHJ1IFByaW9yaXR5IOKAniVz4oCdIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjM0NworIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGNvbnRhaW5zIHVzZXItZGVmaW5lZCBmaWVsZCAnJXMnIgorbXNnc3RyICLigJ4lc+KAnSBjb27Im2luZSBjw6JtcHVsIGRlZmluaXQgZGUgdXRpbGl6YXRvciDigJ4lc+KAnSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzozNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgJWQgd2FybmluZyBhYm91dCB0aGUgY29udHJvbCBmaWxlKHMpXG4iCittc2dpZF9wbHVyYWwgImlnbm9yaW5nICVkIHdhcm5pbmdzIGFib3V0IHRoZSBjb250cm9sIGZpbGUocylcbiIKK21zZ3N0clswXSAic2UgaWdub3LEgyAlZCBhdmVydGlzbWVudCBsZWdhdCBkZSBmaciZaWVydWwoZWxlKSBkZSBjb250cm9sXG4iCittc2dzdHJbMV0gInNlIGlnbm9yxIMgJWQgYXZlcnRpc21lbnRlIGxlZ2F0ZSBkZSBmaciZaWVydWwoZWxlKSBkZSBjb250cm9sXG4iCittc2dzdHJbMl0gInNlIGlnbm9yxIMgJWQgZGUgYXZlcnRpc21lbnRlIGxlZ2F0ZSBkZSBmaciZaWVydWwoZWxlKSBkZSBjb250cm9sXG4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDAzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDI5CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQzNgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGEgPGRpcmVjdG9yeT4gYXJndW1lbnQiCittc2dzdHIgIi0tJXMgbmVjZXNpdMSDIHVuIDxkaXJlY3Rvcj4gY2EgYXJndW1lbnQiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDA5Cittc2dpZCAiLS1idWlsZCB0YWtlcyBhdCBtb3N0IHR3byBhcmd1bWVudHMiCittc2dzdHIgIi0tYnVpbGQgaWEgY2VsIG11bHQgZG91xIMgYXJndW1lbnRlIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQxMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hlY2sgZm9yIGV4aXN0ZW5jZSBvZiBhcmNoaXZlIGAlLjI1MHMnIgorbXNnc3RyICJudSBzZSBwb2F0ZSB2ZXJpZmljYSBleGlzdGVuyJthIGFyaGl2ZWkg4oCeJS4yNTBz4oCdIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQzMAorbXNnaWQgInRhcmdldCBpcyBkaXJlY3RvcnkgLSBjYW5ub3Qgc2tpcCBjb250cm9sIGZpbGUgY2hlY2siCittc2dzdHIgIiIKKyLIm2ludGEgZXN0ZSBkaXJlY3RvciAtIG51IHNlIHBvYXRlIG9taXRlIHZlcmlmaWNhcmVhIGZpyJlpZXJ1bHVpIGRlIGNvbnRyb2wiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDMxCittc2dpZCAibm90IGNoZWNraW5nIGNvbnRlbnRzIG9mIGNvbnRyb2wgYXJlYS4iCittc2dzdHIgIm51IHNlIHZlcmlmaWPEgyBjb27Im2ludXR1bCB6b25laSBkZSBjb250cm9sIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQzMgorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnLWRlYjogYnVpbGRpbmcgYW4gdW5rbm93biBwYWNrYWdlIGluICclcycuXG4iCittc2dzdHIgImRwa2ctZGViOiBzZSBjb25zdHJ1aWXImXRlIHVuIHBhY2hldCBuZWN1bm9zY3V0IMOubiDigJ4lc+KAnS5cbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZy1kZWI6IGJ1aWxkaW5nIHBhY2thZ2UgYCVzJyBpbiBgJXMnLlxuIgorbXNnc3RyICJkcGtnLWRlYjogc2UgY29uc3RydWllyJl0ZSBwYWNoZXR1bCDigJ4lc+KAnSDDrm4g4oCeJXPigJ0uXG4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDY3IGRwa2ctZGViL2J1aWxkLmM6NTIxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gbWFrZSB0bXBmaWxlIChkYXRhKSIKK21zZ2lkICJmYWlsZWQgdG8gbWFrZSB0ZW1wb3JhcnkgZmlsZSAoJXMpIgorbXNnc3RyICJlyJllYyBsYSBjcmVhcmVhIHRtcGZpbGUgKGRhdGEpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ2NyBkcGtnLWRlYi9idWlsZC5jOjQ3MCBkcGtnLWRlYi9idWlsZC5jOjQ3NworIzogZHBrZy1kZWIvYnVpbGQuYzo0ODUgZHBrZy1kZWIvYnVpbGQuYzo0OTQgZHBrZy1kZWIvYnVpbGQuYzo0OTkKKyMsIGZ1enp5CisjfCBtc2dpZCAiY29udHJvbCIKK21zZ2lkICJjb250cm9sIG1lbWJlciIKK21zZ3N0ciAiY29udHJvbCIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0NzAgZHBrZy1kZWIvYnVpbGQuYzo1MjQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byB1bmxpbmsgdG1wZmlsZSAoZGF0YSksICVzIgorbXNnaWQgImZhaWxlZCB0byB1bmxpbmsgdGVtcG9yYXJ5IGZpbGUgKCVzKSwgJXMiCittc2dzdHIgImXImWVjIGxhIHVubGluayB0bXBmaWxlIChkYXRhKSwgJXMiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDg1IGRwa2ctZGViL2J1aWxkLmM6NTkzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gcmV3aW5kIHRtcGZpbGUgKGRhdGEpIgorbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdGVtcG9yYXJ5IGZpbGUgKCVzKSIKK21zZ3N0ciAiZciZZWMgbGEgcmV3aW5kIHRtcGZpbGUgKGRhdGEpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ5NAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGFyIG1lbWJlciBmaWxlICglcykiCittc2dpZCAiZmFpbGVkIHRvIHN0YXQgdGVtcG9yYXJ5IGZpbGUgKCVzKSIKK21zZ3N0ciAiZciZZWMgbGEg4oCeZnN0YXTigJ0gcGVudHJ1IGZpyJlpZXJ1bCBtZW1icnUgYXIgKCVzKSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0OTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igd3JpdGluZyBgJXMnIgorbXNnc3RyICJlcm9hcmUgbGEgc2NyaWVyZWEg4oCeJXPigJ0iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTIxIGRwa2ctZGViL2J1aWxkLmM6NTI0IGRwa2ctZGViL2J1aWxkLmM6NTQ2CisjOiBkcGtnLWRlYi9idWlsZC5jOjU3MiBkcGtnLWRlYi9idWlsZC5jOjU4MCBkcGtnLWRlYi9idWlsZC5jOjU5MworIywgZnV6enkKKyN8IG1zZ2lkICJiZXR3ZWVuIG1lbWJlcnMiCittc2dpZCAiZGF0YSBtZW1iZXIiCittc2dzdHIgIsOubnRyZSBtZW1icmUiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTcxIGRwa2ctZGViL2J1aWxkLmM6NTgwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gd3JpdGUgZmlsZW5hbWUgdG8gdGFyIHBpcGUgKGRhdGEpIgorbXNnaWQgImZhaWxlZCB0byB3cml0ZSBmaWxlbmFtZSB0byB0YXIgcGlwZSAoJXMpIgorbXNnc3RyICJlyJllYyBsYSBzY3JpZXJlYSBudW1lbHVpIGRlIGZpyJlpZXJlIMOubiBwaXBhIHRhciAoZGF0YSkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTg0Cittc2dpZCAiPGNvbXByZXNzPiBmcm9tIHRhciAtY2YiCittc2dzdHIgIjxjb21wcmltYXJlPiBkaW4gdGFyIC1jZiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjYxIGRwa2ctZGViL2V4dHJhY3QuYzo2MworbXNnaWQgInNoZWxsIGNvbW1hbmQgdG8gbW92ZSBmaWxlcyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6NzAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgZmlsZSBpbiAlcyBpbiAlLjI1NXMiCittc2dzdHIgInNmw6JyyJlpdCBkZSBmaciZaWVyIG5lYciZdGVwdGF0IMOubiAlcyBkaW4gJS4yNTVzIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcmVhZGluZyAlcyBmcm9tIGZpbGUgJS4yNTVzIgorbXNnc3RyICJlcm9hcmUgbGEgY2l0aXJlYSBsdWkgJXMgZGluIGZpyJlpZXJ1bCAlLjI1NXMiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxMjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgYXJjaGl2ZSBgJS4yNTVzJyIKK21zZ3N0ciAiZciZZWMgbGEgY2l0aXJlYSBhcmhpdmVpIOKAniUuMjU1c+KAnSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjEyNworbXNnaWQgImZhaWxlZCB0byBmc3RhdCBhcmNoaXZlIgorbXNnc3RyICJlyJllYyBsYSBmc3RhdCBwZW50cnUgYXJoaXbEgyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjEzMQorIywgZnV6enkKKyN8IG1zZ2lkICJhcmNoaXZlIGhhcyBubyBkb3QgaW4gdmVyc2lvbiBudW1iZXIiCittc2dpZCAiYXJjaGl2ZSBtYWdpYyB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAiYXJoaXZhIG51IGNvbsibaW5lIHB1bmN0IMOubiBudW3Eg3J1bCBkZSB2ZXJzaXVuZSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE0MworIywgZnV6enkKKyN8IG1zZ2lkICJhcmNoaXZlIGhhcyBubyBuZXdsaW5lcyBpbiBoZWFkZXIiCittc2dpZCAiYXJjaGl2ZSBtZW1iZXIgaGVhZGVyIgorbXNnc3RyICJhcmhpdmEgbnUgY29uyJtpbmUgY2FyYWN0ZXJlIG5ld2xpbmUgw65uIGFudGV0IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTQ4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgcGFydCBudW1iZXIiCittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIGFyY2hpdmUgaGVhZGVyIG1hZ2ljIgorbXNnc3RyICJmaciZaWVydWwg4oCeJS4yNTBz4oCdIGVzdGUgY29ydXB0IC0gbnVtxINyIGRlIHZvbHVtIGVyb25hdCIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE1NQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIG5vdCBhIGRlYmlhbiBiaW5hcnkgYXJjaGl2ZSAodHJ5IGRwa2ctc3BsaXQ/KSIKK21zZ3N0ciAiIgorImZpyJlpZXJ1bCDigJ4lLjI1MHPigJ0gbnUgZXN0ZSBvIGFyaGl2xIMgYmluYXLEgyBkZWJpYW4gKMOubmNlcmNhyJtpIGRwa2ctc3BsaXQ/KSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE1OQorIywgZnV6enkKKyN8IG1zZ2lkICJhcmNoaXZlIGhhcyBubyBkb3QgaW4gdmVyc2lvbiBudW1iZXIiCittc2dpZCAiYXJjaGl2ZSBpbmZvcm1hdGlvbiBoZWFkZXIgbWVtYmVyIgorbXNnc3RyICJhcmhpdmEgbnUgY29uyJtpbmUgcHVuY3Qgw65uIG51bcSDcnVsIGRlIHZlcnNpdW5lIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTYyCittc2dpZCAiYXJjaGl2ZSBoYXMgbm8gbmV3bGluZXMgaW4gaGVhZGVyIgorbXNnc3RyICJhcmhpdmEgbnUgY29uyJtpbmUgY2FyYWN0ZXJlIG5ld2xpbmUgw65uIGFudGV0IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTY1Cittc2dpZCAiYXJjaGl2ZSBoYXMgbm8gZG90IGluIHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICJhcmhpdmEgbnUgY29uyJtpbmUgcHVuY3Qgw65uIG51bcSDcnVsIGRlIHZlcnNpdW5lIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTY4CisjLCBjLWZvcm1hdAorbXNnaWQgImFyY2hpdmUgdmVyc2lvbiAlLjI1MHMgbm90IHVuZGVyc3Rvb2QsIGdldCBuZXdlciBkcGtnLWRlYiIKK21zZ3N0ciAidmVyc2l1bmVhIGRlIGFyaGl2xIMgJS4yNTBzIG5lw65uyJtlbGVhc8SDLCBvYsibaW5lyJtpIHVuIGRwa2ctZGViIG1haSBub3UiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNzkgZHBrZy1kZWIvZXh0cmFjdC5jOjIwNQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic2tpcHBlZCBtZW1iZXIgZGF0YSBmcm9tICVzIgorbXNnaWQgInNraXBwZWQgYXJjaGl2ZSBtZW1iZXIgZGF0YSBmcm9tICVzIgorbXNnc3RyICJzLWF1IG9taXMgZGF0ZWxlIG1lbWJydWx1aSBkZSBsYSAlcyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE5NAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZSBgJS4yNTBzJyBjb250YWlucyB1bnVuZGVyc3Rvb2QgZGF0YSBtZW1iZXIgJS4qcywgZ2l2aW5nIHVwIgorbXNnaWQgImFyY2hpdmUgJyUuMjUwcycgY29udGFpbnMgbm90IHVuZGVyc3Rvb2QgZGF0YSBtZW1iZXIgJS4qcywgZ2l2aW5nIHVwIgorbXNnc3RyICIiCisiZmnImWllcnVsIOKAniUuMjUwc+KAnSBjb27Im2luZSBvIGNvbXBvbmVudMSDIGRlIGRhdGUgbmXDrm7Im2VsZWFzxIMgJS4qcywgc2UgcmVudW7Im8SDIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTk5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGNvbnRhaW5zIHR3byBjb250cm9sIG1lbWJlcnMsIGdpdmluZyB1cCIKK21zZ2lkICJhcmNoaXZlICclLjI1MHMnIGNvbnRhaW5zIHR3byBjb250cm9sIG1lbWJlcnMsIGdpdmluZyB1cCIKK21zZ3N0ciAiZmnImWllcnVsIOKAniUuMjUwc+KAnSBjb27Im2luZSBkb3XEgyBtZW1icmUgY29udHJvbCwgc2UgcmVudW7Im8SDIgorCisjIGFpY2kgZSBjZXZhIGNpdWRhdCwgJXo6IHZlemkgImluZm8gbGliYyBwcmludGYiLCAlemkgYnl0ZXMsIGUgY2U/CisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjE0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiIG5ldyBkZWJpYW4gcGFja2FnZSwgdmVyc2lvbiAlcy5cbiIKKyN8ICIgc2l6ZSAlbGQgYnl0ZXM6IGNvbnRyb2wgYXJjaGl2ZT0gJXppIGJ5dGVzLlxuIgorbXNnaWQgIiIKKyIgbmV3IGRlYmlhbiBwYWNrYWdlLCB2ZXJzaW9uICVzLlxuIgorIiBzaXplICVqZCBieXRlczogY29udHJvbCBhcmNoaXZlPSAlamQgYnl0ZXMuXG4iCittc2dzdHIgIiIKKyIgcGFjaGV0IGRlYmlhbiBub3UsIHZlcnNpdW5lYSAlcy5cbiIKKyIgZGltZW5zaXVuZSAlbGQgb2N0ZcibaTogYXJoaXbEgyBkZSBjb250cm9sPSAlemkgb2N0ZcibaS5cbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIzMgorbXNnaWQgImFyY2hpdmUgY29udHJvbCBtZW1iZXIgc2l6ZSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjM1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJhcmNoaXZlIGhhcyBtYWxmb3JtYXR0ZWQgY29udHJvbCBsZW5ndGggYCVzJyIKK21zZ2lkICJhcmNoaXZlIGhhcyBtYWxmb3JtYXR0ZWQgY29udHJvbCBtZW1iZXIgc2l6ZSAnJXMnIgorbXNnc3RyICJhcmhpdmEgYXJlIGx1bmdpbWVhIGNvbnRyb2wgbWFsZm9ybWF0xIMg4oCeJXPigJ0iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNDIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInNraXBwZWQgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ2lkICJza2lwcGVkIGFyY2hpdmUgY29udHJvbCBtZW1iZXIgZGF0YSBmcm9tICVzIgorbXNnc3RyICJzLWF1IG9taXMgZGF0ZWxlIG1lbWJydWx1aSBkZSBsYSAlcyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI0NgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiBvbGQgZGViaWFuIHBhY2thZ2UsIHZlcnNpb24gJXMuXG4iCisjfCAiIHNpemUgJWxkIGJ5dGVzOiBjb250cm9sIGFyY2hpdmU9ICV6aSwgbWFpbiBhcmNoaXZlPSAlbGQuXG4iCittc2dpZCAiIgorIiBvbGQgZGViaWFuIHBhY2thZ2UsIHZlcnNpb24gJXMuXG4iCisiIHNpemUgJWpkIGJ5dGVzOiBjb250cm9sIGFyY2hpdmU9ICVqZCwgbWFpbiBhcmNoaXZlPSAlamQuXG4iCittc2dzdHIgIiIKKyIgcGFjaGV0IGRlYmlhbiB2ZWNoaSwgdmVyc2l1bmUgJXMuXG4iCisiIGRpbWVuc2l1bmUgJWxkIG9jdGXIm2k6IGFyaGl2xIMgZGUgY29udHJvbD0gJXppLCBhcmhpdmEgcHJpbmNpcGFsxIM9ICVsZC5cbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI1NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZy1kZWI6IGZpbGUgbG9va3MgbGlrZSBpdCBtaWdodCBiZSBhbiBhcmNoaXZlIHdoaWNoIGhhcyBiZWVuXG4iCisiZHBrZy1kZWI6ICAgIGNvcnJ1cHRlZCBieSBiZWluZyBkb3dubG9hZGVkIGluIEFTQ0lJIG1vZGVcbiIKK21zZ3N0ciAiIgorImRwa2ctZGViOiBmaciZaWVydWwgcGFyZSBjxIMgYXIgcHV0ZWEgZmkgbyBhcmhpdsSDIGNhcmUgYSBmb3N0XG4iCisiZHBrZy1kZWI6ICAgIGNvcnVwdMSDIHByaW4gZGVzY8SDcmNhcmVhIMOubiBtb2QgQVNDSUlcbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI1OQorIywgYy1mb3JtYXQKK21zZ2lkICJgJS4yNTVzJyBpcyBub3QgYSBkZWJpYW4gZm9ybWF0IGFyY2hpdmUiCittc2dzdHIgIuKAniUuMjU1c+KAnSBudSBlc3RlIG8gYXJoaXbEgyDDrm4gZm9ybWF0IGRlYmlhbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI2NgorbXNnaWQgImZhaWxlZCB0byB3cml0ZSB0byBwaXBlIGluIGNvcHkiCittc2dzdHIgImXImWVjIGxhIHNjcmllcmVhIMOubiBwaXDEgyDDrm4gY29waWUiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNjgKK21zZ2lkICJmYWlsZWQgdG8gY2xvc2UgcGlwZSBpbiBjb3B5IgorbXNnc3RyICJlyJllYyBsYSDDrm5jaGlkZXJlYSBwaXBlaSDDrm4gY29waWUiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyODQKK21zZ2lkICJkYXRhIgorbXNnc3RyICJkYXRhIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzA3Cittc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIGRpcmVjdG9yeSIKK21zZ3N0ciAiZciZZWMgbGEgc2NoaW1iYXJlYSBkaXJlY3RvcnVsdWkiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozMTAKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGRpcmVjdG9yeSIKK21zZ3N0ciAiZciZZWMgbGEgY3JlYXJlYSBkaXJlY3RvcnVsdWkiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozMTIKK21zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gZGlyZWN0b3J5IGFmdGVyIGNyZWF0aW5nIGl0IgorbXNnc3RyICJlyJllYyBsYSBzY2hpbWJhcmVhIGRpcmVjdG9ydWx1aSBkdXDEgyBjcmVhcmVhIGx1aSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMyMworbXNnaWQgIjxkZWNvbXByZXNzPiIKK21zZ3N0ciAiPGRlY29tcHJpbWFyZT4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozMjUKK21zZ2lkICJwYXN0ZSIKK21zZ3N0ciAibGlwZciZdGUiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozNDIgZHBrZy1kZWIvZXh0cmFjdC5jOjM2MyBkcGtnLWRlYi9leHRyYWN0LmM6NDAyCisjOiBkcGtnLWRlYi9pbmZvLmM6NzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhIC5kZWIgZmlsZW5hbWUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMgbmVjZXNpdMSDIHVuIG51bWUgZGUgZmnImWllciAuZGViIGNhIGFyZ3VtZW50IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzQ3IGRwa2ctZGViL2V4dHJhY3QuYzo0MDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIi0tJXMgbmVlZHMgYSB0YXJnZXQgZGlyZWN0b3J5LlxuIgorIlBlcmhhcHMgeW91IHNob3VsZCBiZSB1c2luZyBkcGtnIC0taW5zdGFsbCA/IgorbXNnc3RyICIiCisiLS0lcyBuZWNlc2l0xIMgdW4gZGlyZWN0b3IgyJtpbnTEgy5cbiIKKyJQb2F0ZSBhciB0cmVidWkgc8SDIGZvbG9zacibaSBkcGtnIC0taW5zdGFsbCA/IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzUwIGRwa2ctZGViL2V4dHJhY3QuYzo0MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyB0YWtlcyBhdCBtb3N0IHR3byBhcmd1bWVudHMgKC5kZWIgYW5kIGRpcmVjdG9yeSkiCittc2dzdHIgIi0tJXMgaWEgY2VsIG11bHQgZG91xIMgYXJndW1lbnRlICguZGViIMiZaSBkaXJlY3RvcnVsKSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjM2NQorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIHRha2VzIG9ubHkgb25lIGFyZ3VtZW50ICguZGViIGZpbGVuYW1lKSIKK21zZ3N0ciAiLS0lcyBpYSBkb2FyIHVuIGFyZ3VtZW50IChudW1lbGUgZmnImWllcnVsdWkgLmRlYikiCisKKyM6IGRwa2ctZGViL2luZm8uYzo2MworbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byBgLycgZm9yIGNsZWFudXAiCittc2dzdHIgImXImWVjIGxhIHNjaGltYmFyZWEgZGlyZWN0b3J1bHVpIMOubiDigJ4v4oCdIHBlbnRydSBjdXLEg8ibYXJlIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTA2CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW5ub3Qgc3RhdCBmaWxlICclcyciCittc2dpZCAiY29udHJvbCBmaWxlICclcyciCittc2dzdHIgInN0YXQgaW1wb3NpYmlsIHBlbnRydSBmaciZaWVydWwg4oCeJXPigJ0iCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZy1kZWI6IGAlLjI1NXMnIGNvbnRhaW5zIG5vIGNvbnRyb2wgY29tcG9uZW50IGAlLjI1NXMnXG4iCittc2dzdHIgImRwa2ctZGViOiDigJ4lLjI1NXPigJ0gbnUgY29uyJtpbmUgbmljaSBvIGNvbXBvbmVudMSDIGRlIGNvbnRyb2wg4oCeJS4yNTVz4oCdXG4iCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAib3BlbiBjb21wb25lbnQgYCUuMjU1cycgKGluICUuMjU1cykgZmFpbGVkIGluIGFuIHVuZXhwZWN0ZWQgd2F5IgorbXNnc3RyICIiCisiY29tcG9uZW50YSBkZXNjaGlzxIMg4oCeJS4yNTVz4oCdICjDrm4gJS4yNTVzKSBhIGXImXVhdCDDrm50ci11biBtb2QgbmVhyJl0ZXB0YXQiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJWQgcmVxdWVzdGVkIGNvbnRyb2wgY29tcG9uZW50IGlzIG1pc3NpbmciCittc2dpZF9wbHVyYWwgIiVkIHJlcXVlc3RlZCBjb250cm9sIGNvbXBvbmVudHMgYXJlIG1pc3NpbmciCittc2dzdHJbMF0gImxpcHNlyJl0ZSAlZCBjb21wb25lbnTEgyBkZSBjb250cm9sIGNlcnV0xIMiCittc2dzdHJbMV0gImxpcHNlc2MgJWQgY29tcG9uZW50ZSBkZSBjb250cm9sIGNlcnV0ZSIKK21zZ3N0clsyXSAibGlwc2VzYyAlZCBkZSBjb21wb25lbnRlIGRlIGNvbnRyb2wgY2VydXRlIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTM5IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo0MjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHNjYW4gZGlyZWN0b3J5IGAlLjI1NXMnIgorbXNnc3RyICJudSBzZSBwb2F0ZSBleGFtaW5hIGRpcmVjdG9ydWwg4oCeJS4yNTVz4oCdIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTQ4CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzdGF0IGAlLjI1NXMnIChpbiBgJS4yNTVzJykiCittc2dzdHIgInN0YXQgaW1wb3NpYmlsIOKAniUuMjU1c+KAnSAow65uIOKAniUuMjU1c+KAnSkiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IG9wZW4gYCUuMjU1cycgKGluIGAlLjI1NXMnKSIKK21zZ3N0ciAibnUgc2UgcG9hdGUgZGVzY2hpZGUg4oCeJS4yNTVz4oCdICjDrm4g4oCeJS4yNTVz4oCdKSIKKworIzogZHBrZy1kZWIvaW5mby5jOjE2NyBkcGtnLWRlYi9pbmZvLmM6MTg1IGRwa2ctZGViL2luZm8uYzoxOTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgYCUuMjU1cycgKGluIGAlLjI1NXMnKSIKK21zZ3N0ciAiZciZZWMgbGEgY2l0aXJlYSBsdWkg4oCeJS4yNTVz4oCdICjDrm4g4oCeJS4yNTVz4oCdKSIKKworIzogZHBrZy1kZWIvaW5mby5jOjE3MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiICU3bGQgYnl0ZXMsICU1ZCBsaW5lcyAgICVjICAlLTIwLjEyN3MgJS4xMjdzXG4iCittc2dpZCAiICU3amQgYnl0ZXMsICU1ZCBsaW5lcyAgICVjICAlLTIwLjEyN3MgJS4xMjdzXG4iCittc2dzdHIgIiAlN2xkIG9jdGXIm2ksICU1ZCBsaW5paSAgICVjICAlLTIwLjEyN3MgJS4xMjdzXG4iCisKKyM6IGRwa2ctZGViL2luZm8uYzoxNzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAgICBub3QgYSBwbGFpbiBmaWxlICAgICAgICAgICUuMjU1c1xuIgorbXNnc3RyICIgICAgIG51IGVzdGUgZmnImWllciBzaW1wbHUgICAgICUuMjU1c1xuIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTg2Cittc2dpZCAiKG5vIGBjb250cm9sJyBmaWxlIGluIGNvbnRyb2wgYXJjaGl2ZSEpXG4iCittc2dzdHIgIihmaciZaWVydWwg4oCeY29udHJvbOKAnSBsaXBzZciZdGUgZGluIGFyaGl2YSBjb250cm9sISlcbiIKKworIzogZHBrZy1kZWIvaW5mby5jOjIyMgorbXNnaWQgImNvdWxkIG5vdCBvcGVuIHRoZSBgY29udHJvbCcgY29tcG9uZW50IgorbXNnc3RyICJudSBzLWEgcHV0dXQgZGVzY2hpZGUgY29tcG9uZW50YSDigJ5jb250cm9s4oCdIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MjYxCittc2dpZCAiZmFpbGVkIGR1cmluZyByZWFkIG9mIGBjb250cm9sJyBjb21wb25lbnQiCittc2dzdHIgImXImWVjIMOubiB0aW1wdWwgY2l0aXJpaSBjb21wb25lbnRlaSDigJ5jb250cm9s4oCdIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MjYzCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgdGhlICclcycgY29tcG9uZW50IgorbXNnc3RyICJlcm9hcmUgbGEgw65uY2hpZGVyZWEgY29tcG9uZW50ZWkg4oCeJXPigJ0iCisKKyM6IGRwa2ctZGViL2luZm8uYzoyNzgKK21zZ2lkICJFcnJvciBpbiBmb3JtYXQiCittc2dzdHIgIkVyb2FyZSDDrm4gZm9ybWF0IgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MzI4Cittc2dpZCAiLS1jb250ZW50cyB0YWtlcyBleGFjdGx5IG9uZSBhcmd1bWVudCIKK21zZ3N0ciAiLS1jb250ZW50cyBpYSBleGFjdCB1biBhcmd1bWVudCIKKworIzogZHBrZy1kZWIvbWFpbi5jOjU0CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiBgJXMnIHBhY2thZ2UgYXJjaGl2ZSBiYWNrZW5kIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkRlYmlhbiDigJ4lc+KAnSwgYmFja2VuZCBwZW50cnUgYXJoaXZhIGRlIHBhY2hldGUgdmVyc2l1bmVhICVzLlxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6NzMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJDb21tYW5kczpcbiIKKyN8ICIgIC1ifC0tYnVpbGQgPGRpcmVjdG9yeT4gWzxkZWI+XSAgIEJ1aWxkIGFuIGFyY2hpdmUuXG4iCisjfCAiICAtY3wtLWNvbnRlbnRzIDxkZWI+ICAgICAgICAgICAgICBMaXN0IGNvbnRlbnRzLlxuIgorI3wgIiAgLUl8LS1pbmZvIDxkZWI+IFs8Y2ZpbGU+IC4uLl0gICAgU2hvdyBpbmZvIHRvIHN0ZG91dC5cbiIKKyN8ICIgIC1XfC0tc2hvdyA8ZGViPiAgICAgICAgICAgICAgICAgIFNob3cgaW5mb3JtYXRpb24gb24gcGFja2FnZShzKVxuIgorI3wgIiAgLWZ8LS1maWVsZCA8ZGViPiBbPGNmaWVsZD4gLi4uXSAgU2hvdyBmaWVsZChzKSB0byBzdGRvdXQuXG4iCisjfCAiICAtZXwtLWNvbnRyb2wgPGRlYj4gWzxkaXJlY3Rvcnk+XSBFeHRyYWN0IGNvbnRyb2wgaW5mby5cbiIKKyN8ICIgIC14fC0tZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PiAgIEV4dHJhY3QgZmlsZXMuXG4iCisjfCAiICAtWHwtLXZleHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+ICBFeHRyYWN0ICYgbGlzdCBmaWxlcy5cbiIKKyN8ICIgIC0tZnN5cy10YXJmaWxlIDxkZWI+ICAgICAgICAgICAgIE91dHB1dCBmaWxlc3lzdGVtIHRhcmZpbGUuXG4iCisjfCAiXG4iCittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLWJ8LS1idWlsZCA8ZGlyZWN0b3J5PiBbPGRlYj5dICAgQnVpbGQgYW4gYXJjaGl2ZS5cbiIKKyIgIC1jfC0tY29udGVudHMgPGRlYj4gICAgICAgICAgICAgIExpc3QgY29udGVudHMuXG4iCisiICAtSXwtLWluZm8gPGRlYj4gWzxjZmlsZT4gLi4uXSAgICBTaG93IGluZm8gdG8gc3Rkb3V0LlxuIgorIiAgLVd8LS1zaG93IDxkZWI+ICAgICAgICAgICAgICAgICAgU2hvdyBpbmZvcm1hdGlvbiBvbiBwYWNrYWdlKHMpXG4iCisiICAtZnwtLWZpZWxkIDxkZWI+IFs8Y2ZpZWxkPiAuLi5dICBTaG93IGZpZWxkKHMpIHRvIHN0ZG91dC5cbiIKKyIgIC1lfC0tY29udHJvbCA8ZGViPiBbPGRpcmVjdG9yeT5dIEV4dHJhY3QgY29udHJvbCBpbmZvLlxuIgorIiAgLXh8LS1leHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+ICAgRXh0cmFjdCBmaWxlcy5cbiIKKyIgIC1YfC0tdmV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gIEV4dHJhY3QgJiBsaXN0IGZpbGVzLlxuIgorIiAgLVJ8LS1yYXctZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRXh0cmFjdCBjb250cm9sIGluZm8gYW5kIGZpbGVzLlxuIgorIiAgLS1mc3lzLXRhcmZpbGUgPGRlYj4gICAgICAgICAgICAgT3V0cHV0IGZpbGVzeXN0ZW0gdGFyZmlsZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIkNvbWVuemk6XG4iCisiICAtYnwtLWJ1aWxkIDxkaXJlY3Rvcj4gWzxkZWI+XSAgICBDb25zdHJ1aWXImXRlIG8gYXJoaXbEgy5cbiIKKyIgIC1jfC0tY29udGVudHMgPGRlYj4gICAgICAgICAgICAgIExpc3RlYXrEgyBjb27Im2ludXR1bC5cbiIKKyIgIC1JfC0taW5mbyA8ZGViPiBbPGNmaWxlPi4uLl0gICAgIEFyYXTEgyBpbmZvcm1hyJtpaWxlIGxhIGllyJlpcmVhIHN0YW5kYXJkLlxuIgorIiAgLVd8LS1zaG93IDxkZWI+ICAgICAgICAgICAgICAgICAgQXJhdMSDIGluZm9ybWHIm2lpbGUgZGVzcHJlIHBhY2hldChlKVxuIgorIiAgLWZ8LS1maWVsZCA8ZGViPiBbPGNmaWVsZD4uLi5dICAgQXJhdMSDIGPDom1wdWwodXJpbGUpIGxhIGllyJlpcmVhIHN0YW5kYXJkLlxuIgorIiAgLWV8LS1jb250cm9sIDxkZWI+IFs8ZGlyZWN0b3I+XSAgRXh0cmFnZSBpbmZvcm1hyJtpaWxlIGRlIGNvbnRyb2wuXG4iCisiICAteHwtLWV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yPiAgICBFeHRyYWdlIGZpyJlpZXJlbGUuXG4iCisiICAtWHwtLXZleHRyYWN0IDxkZWI+IDxkaXJlY3Rvcj4gICBFeHRyYWdlIMiZaSBsaXN0ZWF6xIMgZmnImWllcmVsZS5cbiIKKyIgIC0tZnN5cy10YXJmaWxlIDxkZWI+ICAgICAgICAgICAgIENyZWVhesSDIGZpyJlpZXIgdGFyIGN1IHNpc3RlbXVsIGRlICIKKyJmaciZaWVyZS5cbiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjkzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyI8ZGViPiBpcyB0aGUgZmlsZW5hbWUgb2YgYSBEZWJpYW4gZm9ybWF0IGFyY2hpdmUuXG4iCisiPGNmaWxlPiBpcyB0aGUgbmFtZSBvZiBhbiBhZG1pbmlzdHJhdGl2ZSBmaWxlIGNvbXBvbmVudC5cbiIKKyI8Y2ZpZWxkPiBpcyB0aGUgbmFtZSBvZiBhIGZpZWxkIGluIHRoZSBtYWluIGBjb250cm9sJyBmaWxlLlxuIgorIlxuIgorbXNnc3RyICIiCisiPGRlYj4gZXN0ZSBudW1lbGUgZGUgZmnImWllciBhbCB1bmVpIGFyaGl2ZSDDrm4gZm9ybWF0IERlYmlhbi5cbiIKKyI8Y2ZpbGU+IGVzdGUgbnVtZWxlIHVuZWkgY29tcG9uZW50ZSBmaciZaWVyIGFkbWluaXN0cmF0aXYuXG4iCisiPGNmaWVsZD4gZXN0ZSBudW1lbGUgdW51aSBjw6JtcCDDrm4gZmnImWllcnVsIOKAnmNvbnRyb2zigJ0gcHJpbmNpcGFsLlxuIgorIlxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6OTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJPcHRpb25zOlxuIgorI3wgIiAgLS1zaG93Zm9ybWF0PTxmb3JtYXQ+ICAgICAgICAgICAgVXNlIGFsdGVybmF0aXZlIGZvcm1hdCBmb3IgLS1zaG93LlxuIgorI3wgIiAgLUQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRW5hYmxlIGRlYnVnZ2luZyBvdXRwdXQuXG4iCisjfCAiICAtLW9sZCwgLS1uZXcgICAgICAgICAgICAgICAgICAgICBTZWxlY3QgYXJjaGl2ZSBmb3JtYXQuXG4iCisjfCAiICAtLW5vY2hlY2sgICAgICAgICAgICAgICAgICAgICAgICBTdXBwcmVzcyBjb250cm9sIGZpbGUgY2hlY2sgKGJ1aWxkICIKKyN8ICJiYWRcbiIKKyN8ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFja2FnZXMpLlxuIgorI3wgIiAgLXojICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU2V0IHRoZSBjb21wcmVzc2lvbiBsZXZlbCB3aGVuICIKKyN8ICJidWlsZGluZy5cbiIKKyN8ICIgIC1aPHR5cGU+ICAgICAgICAgICAgICAgICAgICAgICAgIFNldCB0aGUgY29tcHJlc3Npb24gdHlwZSB1c2VkIHdoZW4gIgorI3wgImJ1aWxkaW5nLlxuIgorI3wgIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBbGxvd2VkIHR5cGVzOiBnemlwLCB4eiwgYnppcDIsICIKKyN8ICJsem1hLCBub25lLlxuIgorI3wgIlxuIgorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1zaG93Zm9ybWF0PTxmb3JtYXQ+ICAgICAgICAgICAgVXNlIGFsdGVybmF0aXZlIGZvcm1hdCBmb3IgLS1zaG93LlxuIgorIiAgLXYsIC0tdmVyYm9zZSAgICAgICAgICAgICAgICAgICAgRW5hYmxlIHZlcmJvc2Ugb3V0cHV0LlxuIgorIiAgLUQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRW5hYmxlIGRlYnVnZ2luZyBvdXRwdXQuXG4iCisiICAtLW9sZCwgLS1uZXcgICAgICAgICAgICAgICAgICAgICBTZWxlY3QgYXJjaGl2ZSBmb3JtYXQuXG4iCisiICAtLW5vY2hlY2sgICAgICAgICAgICAgICAgICAgICAgICBTdXBwcmVzcyBjb250cm9sIGZpbGUgY2hlY2sgKGJ1aWxkIGJhZFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWNrYWdlcykuXG4iCisiICAteiMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTZXQgdGhlIGNvbXByZXNzaW9uIGxldmVsIHdoZW4gYnVpbGRpbmcuXG4iCisiICAtWjx0eXBlPiAgICAgICAgICAgICAgICAgICAgICAgICBTZXQgdGhlIGNvbXByZXNzaW9uIHR5cGUgdXNlZCB3aGVuICIKKyJidWlsZGluZy5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWxsb3dlZCB0eXBlczogZ3ppcCwgeHosIGJ6aXAyLCBsem1hLCAiCisibm9uZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIk9wyJtpdW5pOlxuIgorIiAgLS1zaG93Zm9ybWF0PTxmb3JtYXQ+ICAgICAgRm9sb3NlyJl0ZSBmb3JtYXR1bCBhbHRlcm5hdGl2IHBlbnRydSAtLXNob3cuXG4iCisiICAtRCAgICAgICAgICAgICAgICAgICAgICAgICBBY3RpdmVhesSDIGluZm9ybWHIm2lpbGUgZGUgZGVwYW5hcmUuXG4iCisiICAtLW9sZCwgLS1uZXcgICAgICAgICAgICAgICBTZWxlY3RlYXrEgyBmb3JtYXR1bCBkZSBhcmhpdsSDXG4iCisiICAtLW5vY2hlY2sgICAgICAgICAgICAgICAgICBFbGltaW7EgyB2ZXJpZmljYXJlYSBmaciZaWVydWx1aSBkZSBjb250cm9sXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChzZSBjb25zdHJ1aWVzYyBwYWNoZXRlIGRldGVyaW9yYXRlKS5cbiIKKyIgIC16IyAgICAgICAgICAgICAgICAgICAgICAgIFN0YWJpbGXImXRlIGNvbXByZXNpYSBsYSBjb25zdHJ1aXJlLlxuIgorIiAgLVo8dGlwPiAgICAgICAgICAgICAgICAgICAgU3RhYmlsZciZdGUgdGlwdWwgZGUgY29tcHJlc2llIGZvbG9zaXQgbGEgIgorImNvbnN0cnVpcmUuXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZhbG9yaSBwZXJtaXNlOiBnemlwLCB4eiwgYnppcDIsIGx6bWEsIG5vbmUuXG4iCisiXG4iCisKKyM6IGRwa2ctZGViL21haW4uYzoxMjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIlVzZSBgZHBrZycgdG8gaW5zdGFsbCBhbmQgcmVtb3ZlIHBhY2thZ2VzIGZyb20geW91ciBzeXN0ZW0sIG9yXG4iCisiYGRzZWxlY3QnIG9yIGBhcHRpdHVkZScgZm9yIHVzZXItZnJpZW5kbHkgcGFja2FnZSBtYW5hZ2VtZW50LiAgUGFja2FnZXNcbiIKKyJ1bnBhY2tlZCB1c2luZyBgZHBrZy1kZWIgLS1leHRyYWN0JyB3aWxsIGJlIGluY29ycmVjdGx5IGluc3RhbGxlZCAhXG4iCittc2dzdHIgIiIKKyJcbiIKKyJGb2xvc2nIm2kg4oCeZHBrZ+KAnSBwZW50cnUgYSBpbnN0YWxhIMiZaSDImXRlcmdlIHBhY2hldGVsZSBkaW4gc2lzdGVtLCBzYXUgXG4iCisi4oCeZHNlbGVjdOKAnSBzYXUg4oCeYXB0aXR1ZGXigJ0gcGVudHJ1IGFkbWluaXN0cmFyZSBtYWkgdciZb2FyxIMgYSBwYWNoZXRlbG9yLiAgIgorIlBhY2hldGVsZVxuIgorImRlc3BhY2hldGF0ZSBjdSDigJ5kcGtnLWRlYiAtLWV4dHJhY3TigJ0gdm9yIGZpIGluc3RhbGF0ZSBpbmNvcmVjdCAhXG4iCisKKyM6IGRwa2ctZGViL21haW4uYzoxMzIKK21zZ2lkICIiCisiVHlwZSBkcGtnLWRlYiAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgbWFuaXB1bGF0aW5nICouZGViIGZpbGVzO1xuIgorIlR5cGUgZHBrZyAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgaW5zdGFsbGluZyBhbmQgZGVpbnN0YWxsaW5nIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorIlRhc3RhyJtpIGRwa2ctZGViIC0taGVscCBwZW50cnUgYWp1dG9yIGRlc3ByZSBtYW5pcHVsYXJlYSBmaciZaWVyZWxvciAqLmRlYjtcbiIKKyJUYXN0YcibaSBkcGtnIC0taGVscCBwZW50cnUgYWp1dG9yIGRlc3ByZSBpbnN0YWxhcmVhIMiZaSBkZXppbnN0YWxhcmVhICIKKyJwYWNoZXRlbG9yLiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjE0OAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGludGVnZXIgZm9yIC0lYzogJyUuMjUwcyciCittc2dzdHIgIsOubnRyZWcgbmV2YWxpZCBwZW50cnUgLSVjOiDigJ4lLjI1MHPigJ0iCisKKyM6IGRwa2ctZGViL21haW4uYzoxNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjb21wcmVzc2lvbiBsZXZlbCBmb3IgLSVjOiAlbGQnIgorbXNnc3RyICJuaXZlbCBkZSBjb21wcmVzaWUgbmV2YWxpZCBwZW50cnUgLSVjOiAlbGTigJ0iCisKKyM6IGRwa2ctZGViL21haW4uYzoxNjEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBjb21wcmVzc2lvbiB0eXBlIGAlcychIgorbXNnc3RyICJ0aXAgZGUgY29tcHJlc2llIG5lY3Vub3NjdXQg4oCeJXPigJ0hIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzo1MgorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgZGlnaXQgKGNvZGUgJWQpIGluICVzIgorbXNnc3RyICJmaciZaWVydWwg4oCeJS4yNTBz4oCdIGVzdGUgY29ydXB0IC0gY2lmcsSDIGVyb25hdMSDIChjb2QgJWQpIMOubiAlcyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gJS4yNTBzIG1pc3NpbmciCittc2dzdHIgImZpyJlpZXJ1bCDigJ4lLjI1MHPigJ0gZXN0ZSBjb3J1cHQgLSAlLjI1MHMgbGlwc2XImXRlIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzo2MworIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBtaXNzaW5nIG5ld2xpbmUgYWZ0ZXIgJS4yNTBzIgorbXNnc3RyICIiCisiZmnImWllcnVsIOKAniUuMjUwc+KAnSBlc3RlIGNvcnVwdCAtIGxpcHNlyJl0ZSBjYXJhY3RlcnVsIG5ld2xpbmUgZHVwxIMgJS4yNTBzIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzo4OSBkcGtnLXNwbGl0L21haW4uYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcmVhZGluZyAlLjI1MHMiCittc2dzdHIgImVyb2FyZSBsYSBjaXRpcmUgJS4yNTBzIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIG1hZ2ljIGF0IGVuZCBvZiBmaXJzdCBoZWFkZXIiCittc2dzdHIgIiIKKyJmaciZaWVydWwg4oCeJS4yNTBz4oCdIGVzdGUgY29ydXB0IC0gaWRlbnRpZmljYXRvciBtYWdpYyBncmXImWl0IGxhIHNmw6JyyJlpdHVsICIKKyJwcmltdWx1aSBhbnRldCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTEzCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBwYWRkaW5nIGNoYXJhY3RlciAoY29kZSAlZCkiCittc2dzdHIgImZpyJlpZXJ1bCDigJ4lLjI1MHPigJ0gZXN0ZSBjb3J1cHQgLSBjYXJhY3RlciBkZSB1bXBsZXJlIG5lcGVybWlzIChjb2QgJWQpIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gbnVsbHMgaW4gaW5mbyBzZWN0aW9uIgorbXNnc3RyICIiCisiZmnImWllcnVsIOKAniUuMjUwc+KAnSBlc3RlIGNvcnVwdCAtIGNvbsibaW5lIG51bHVyaSDDrm4gc2VjyJtpdW5lYSBkZSBpbmZvcm1hyJtpaSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTIyCittc2dpZCAiZm9ybWF0IHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICJudW3Eg3J1bCBkZSB2ZXJzaXVuZSBhbCBmb3JtYXR1bHVpIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBmb3JtYXQgdmVyc2lvbiBgJS4yNTBzJyAtIHlvdSBuZWVkIGEgbmV3ZXIgZHBrZy1zcGxpdCIKK21zZ3N0ciAiIgorImZpyJlpZXJ1bCDigJ4lLjI1MHPigJ0gZXN0ZSBmb3JtYXQgdmVyc2l1bmVhIOKAniUuMjUwc+KAnSAtIGF2ZcibaSBuZXZvaWUgZGUgdW4gZHBrZy0iCisic3BsaXQgbWFpIG5vdSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTI3Cittc2dpZCAicGFja2FnZSBuYW1lIgorbXNnc3RyICJudW1lbGUgcGFjaGV0dWx1aSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTI4Cittc2dpZCAicGFja2FnZSB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAibnVtxINydWwgdmVyc2l1bmUgYSBwYWNoZXR1bHVpIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMjkKK21zZ2lkICJwYWNrYWdlIGZpbGUgTUQ1IGNoZWNrc3VtIgorbXNnc3RyICJzdW1hIE1ENSBhIHBhY2hldHVsdWkiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEzMgorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgTUQ1IGNoZWNrc3VtIGAlLjI1MHMnIgorbXNnc3RyICIiCisiZmnImWllcnVsIOKAniUuMjUwc+KAnSBlc3RlIGNvcnVwdCAtIHN1bWEgZGUgY29udHJvbCBNRDUgbmVjb3Jlc3B1bnrEg3RvYXJlICIKKyLigJ4lLjI1MHPigJ0iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEzNCBkcGtnLXNwbGl0L2luZm8uYzoxMzUKK21zZ2lkICJhcmNoaXZlIHRvdGFsIHNpemUiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTM2IGRwa2ctc3BsaXQvaW5mby5jOjEzNworIywgZnV6enkKKyN8IG1zZ2lkICJwYXJ0IG9mZnNldCIKK21zZ2lkICJhcmNoaXZlIHBhcnQgb2Zmc2V0IgorbXNnc3RyICJkZXBsYXNhcmUgYSBwxINyyJtpaSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTM5CisjLCBmdXp6eQorI3wgbXNnaWQgInBhcnQgbnVtYmVycyIKK21zZ2lkICJhcmNoaXZlIHBhcnQgbnVtYmVycyIKK21zZ3N0ciAibnVtxINydWwgcMSDcsibaWkiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE0MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gbm8gc2xhc2ggYmV0d2VlbiBwYXJ0IG51bWJlcnMiCittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gbm8gc2xhc2ggYmV0d2VlbiBhcmNoaXZlIHBhcnQgbnVtYmVycyIKK21zZ3N0ciAiIgorImZpyJlpZXJ1bCDigJ4lLjI1MHPigJ0gZXN0ZSBjb3J1cHQgLSBudSBjb27Im2luZSDigJ4v4oCdIMOubnRyZSBudW1lcmVsZSB2b2x1bWVsb3IiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE0NQorIywgZnV6enkKKyN8IG1zZ2lkICJudW1iZXIgb2YgcGFydHMiCittc2dpZCAibnVtYmVyIG9mIGFyY2hpdmUgcGFydHMiCittc2dzdHIgIm51bcSDcnVsIGRlIHDEg3LIm2kiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE0NworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIG51bWJlciBvZiBwYXJ0cyIKK21zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgbnVtYmVyIG9mIGFyY2hpdmUgcGFydHMiCittc2dzdHIgImZpyJlpZXJ1bCDigJ4lLjI1MHPigJ0gZXN0ZSBjb3J1cHQgLSBudW3Eg3IgZGUgcMSDcsibaSBlcm9uYXQiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE0OQorIywgZnV6enkKKyN8IG1zZ2lkICJwYXJ0cyBudW1iZXIiCittc2dpZCAiYXJjaGl2ZSBwYXJ0cyBudW1iZXIiCittc2dzdHIgIm51bcSDcnVsIHDEg3LIm2lsb3IiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE1MQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIHBhcnQgbnVtYmVyIgorbXNnaWQgImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBhcmNoaXZlIHBhcnQgbnVtYmVyIgorbXNnc3RyICJmaciZaWVydWwg4oCeJS4yNTBz4oCdIGVzdGUgY29ydXB0IC0gbnVtxINyIGRlIHZvbHVtIGVyb25hdCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTU3CisjLCBmdXp6eQorI3wgbXNnaWQgInBhY2thZ2UgbmFtZSIKK21zZ2lkICJwYWNrYWdlIGFyY2hpdGVjdHVyZSIKK21zZ3N0ciAibnVtZWxlIHBhY2hldHVsdWkiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE2NgorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgbWFnaWMgYXQgZW5kIG9mIHNlY29uZCBoZWFkZXIiCittc2dzdHIgIiIKKyJmaciZaWVydWwg4oCeJS4yNTBz4oCdIGVzdGUgY29ydXB0IC0gaWRlbnRpZmljYXRvciBtYWdpYyBncmXImWl0IGxhIHNmw6JyyJlpdHVsICIKKyJjZWx1aSBkZS1hbCBkb2lsZWEgYW50ZXQiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE2OAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBzZWNvbmQgbWVtYmVyIGlzIG5vdCBkYXRhIG1lbWJlciIKK21zZ3N0ciAiIgorImZpyJlpZXJ1bCDigJ4lLjI1MHPigJ0gZXN0ZSBjb3J1cHQgLSBhbCBkb2lsZWEgbWVtYnJ1IG51IGVzdGUgbWVtYnJ1IGRlIGRhdGUiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE3NAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSB3cm9uZyBudW1iZXIgb2YgcGFydHMgZm9yIHF1b3RlZCBzaXplcyIKK21zZ3N0ciAiIgorImZpyJlpZXJ1bCDigJ4lLjI1MHPigJ0gZXN0ZSBjb3J1cHQgLSBudW3Eg3IgZ3JlyJlpdCBkZSBwxINyyJtpIHBlbnRydSBkaW1lbnNpdW5pbGUgIgorIm1lbsibaW9uYXRlIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gc2l6ZSBpcyB3cm9uZyBmb3IgcXVvdGVkIHBhcnQgbnVtYmVyIgorbXNnc3RyICIiCisiZmnImWllcnVsIOKAniUuMjUwc+KAnSBlc3RlIGNvcnVwdCAtIGRpbWVuc2l1bmVhIGVzdGUgZ3JlyJlpdMSDIHBlbnRydSBudW3Eg3J1bCAiCisicMSDcsibaWkgbWVuyJtpb25hdCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTg0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmc3RhdCBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgImZzdGF0IGltcG9zaWJpbCBwZW50cnUgZmnImWllcnVsIHZvbHVtIOKAniUuMjUwc+KAnSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTg5CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIHRvbyBzaG9ydCIKK21zZ3N0ciAiZmnImWllcnVsIOKAniUuMjUwc+KAnSBlc3RlIGNvcnVwdCAtIHByZWEgc2N1cnQiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjIwMiBkcGtnLXNwbGl0L2luZm8uYzoyNDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IG9wZW4gYXJjaGl2ZSBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm51IHNlIHBvYXRlIGRlc2NoaWRlIGZpyJlpZXJ1bCBwYXJ0ZSBkZSBhcmhpdsSDIOKAniUuMjUwc+KAnSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjA0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgbm90IGFuIGFyY2hpdmUgcGFydCIKK21zZ3N0ciAiZmnImWllcnVsIOKAniUuMjUwc+KAnSBudSBlc3RlIHBhcnRlIGRlIGFyaGl2xIMiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjIwOQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiVzOlxuIgorI3wgIiAgICBQYXJ0IGZvcm1hdCB2ZXJzaW9uOiAgICAgICAgICAgICVzXG4iCisjfCAiICAgIFBhcnQgb2YgcGFja2FnZTogICAgICAgICAgICAgICAgJXNcbiIKKyN8ICIgICAgICAgIC4uLiB2ZXJzaW9uOiAgICAgICAgICAgICAgICAlc1xuIgorI3wgIiAgICAgICAgLi4uIE1ENSBjaGVja3N1bTogICAgICAgICAgICVzXG4iCisjfCAiICAgICAgICAuLi4gbGVuZ3RoOiAgICAgICAgICAgICAgICAgJWx1IGJ5dGVzXG4iCisjfCAiICAgICAgICAuLi4gc3BsaXQgZXZlcnk6ICAgICAgICAgICAgJWx1IGJ5dGVzXG4iCisjfCAiICAgIFBhcnQgbnVtYmVyOiAgICAgICAgICAgICAgICAgICAgJWQvJWRcbiIKKyN8ICIgICAgUGFydCBsZW5ndGg6ICAgICAgICAgICAgICAgICAgICAlemkgYnl0ZXNcbiIKKyN8ICIgICAgUGFydCBvZmZzZXQ6ICAgICAgICAgICAgICAgICAgICAlbHUgYnl0ZXNcbiIKKyN8ICIgICAgUGFydCBmaWxlIHNpemUgKHVzZWQgcG9ydGlvbik6ICAlbHUgYnl0ZXNcbiIKKyN8ICJcbiIKK21zZ2lkICIiCisiJXM6XG4iCisiICAgIFBhcnQgZm9ybWF0IHZlcnNpb246ICAgICAgICAgICAgJXNcbiIKKyIgICAgUGFydCBvZiBwYWNrYWdlOiAgICAgICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIHZlcnNpb246ICAgICAgICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gYXJjaGl0ZWN0dXJlOiAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiBNRDUgY2hlY2tzdW06ICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIGxlbmd0aDogICAgICAgICAgICAgICAgICVqZCBieXRlc1xuIgorIiAgICAgICAgLi4uIHNwbGl0IGV2ZXJ5OiAgICAgICAgICAgICVqZCBieXRlc1xuIgorIiAgICBQYXJ0IG51bWJlcjogICAgICAgICAgICAgICAgICAgICVkLyVkXG4iCisiICAgIFBhcnQgbGVuZ3RoOiAgICAgICAgICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgIFBhcnQgb2Zmc2V0OiAgICAgICAgICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgIFBhcnQgZmlsZSBzaXplICh1c2VkIHBvcnRpb24pOiAgJWpkIGJ5dGVzXG4iCisiXG4iCittc2dzdHIgIiIKKyIlczpcbiIKKyIgICAgVmVyc2l1bmVhIGZvcm1hdHVsdWkgcMSDcsibaWk6ICAgICAgICAgICAgICAgICAgICAgICAlc1xuIgorIiAgICBQYXJ0ZSBhIHBhY2hldHVsdWk6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIHZlcnNpdW5lOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIHN1bWEgZGUgY29udHJvbCBNRDU6ICAgICAgICAgICAgICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIGx1bmdpbWU6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAlbHUgb2N0ZcibaVxuIgorIiAgICAgICAgLi4uIMOubXDEg3LIm2l0xIMgbGEgZmllY2FyZTogICAgICAgICAgICAgICAgICAgICAgJWx1IG9jdGXIm2lcbiIKKyIgICAgTnVtxINydWwgcMSDcsibaWk6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJWQvJWRcbiIKKyIgICAgTHVuZ2ltZWEgcMSDcsibaWk6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAlemkgb2N0ZcibaVxuIgorIiAgICBEZXBsYXNhcmVhIHDEg3LIm2lpOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICVsdSBvY3RlyJtpXG4iCisiICAgIERpbWVuc2l1bmVhIGZpyJlpZXJ1bHVpIHBhcnRlIChwb3LIm2l1bmVhIGZvbG9zaXTEgyk6ICVsdSBvY3RlyJtpXG4iCisiXG4iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjIyNQorIywgZnV6enkKKyN8IG1zZ2lkICI8dW5rbm93bj4iCittc2djdHh0ICJhcmNoaXRlY3R1cmUiCittc2dpZCAiPHVua25vd24+IgorbXNnc3RyICI8bmVjdW5vc2N1dD4iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjI0NCBkcGtnLXNwbGl0L2pvaW4uYzoxMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyByZXF1aXJlcyBvbmUgb3IgbW9yZSBwYXJ0IGZpbGUgYXJndW1lbnRzIgorbXNnc3RyICItLSVzIG5lY2VzaXTEgyB1bnVsIHNhdSBtYWkgbXVsdGUgcMSDcsibaSBjYSBhcmd1bWVudGUiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjI1NQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlcycgaXMgbm90IGFuIGFyY2hpdmUgcGFydFxuIgorbXNnc3RyICJmaciZaWVydWwg4oCeJXPigJ0gbnUgZXN0ZSBvIHBhcnRlIGFyaGl2xINcbiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHV0dGluZyBwYWNrYWdlICVzIHRvZ2V0aGVyIGZyb20gJWQgcGFydDogIgorbXNnaWRfcGx1cmFsICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0czogIgorbXNnc3RyWzBdICJTZSBhc2FtYmxlYXrEgyBwYWNoZXR1bCAlcyBkaW4gJWQgcGFydGU6ICIKK21zZ3N0clsxXSAiU2UgYXNhbWJsZWF6xIMgcGFjaGV0dWwgJXMgZGluICVkIHDEg3LIm2kiCittc2dzdHJbMl0gIlNlIGFzYW1ibGVhesSDIHBhY2hldHVsICVzIGRpbiAlZCBkZSBwxINyyJtpIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBvdXRwdXQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibnUgc2UgcG9hdGUgZGVzY2hpZGUgZmnImWllcnVsIHJlenVsdGF0IOKAniUuMjUwc+KAnSIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIChyZSlvcGVuIGlucHV0IHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibnUgc2UgcG9hdGUgKHJlKWRlc2NoaWRlIGZpyJlpZXJ1bCBkZSBpbnRyYXJlIOKAniUuMjUwc+KAnSIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NTgKKyMsIGZ1enp5CisjfCBtc2dpZCAiU2tpcHBpbmcgZGVzZWxlY3RlZCBwYWNrYWdlICVzLlxuIgorbXNnaWQgInNraXBwaW5nIHNwbGl0IHBhY2thZ2UgaGVhZGVyIgorbXNnc3RyICJTZSBvbWl0ZSBwYWNoZXR1bCBkZXNlbGVjdGF0ICVzLlxuIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1OQorIywgZnV6enkKKyN8IG1zZ2lkICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0OiAiCisjfCBtc2dpZF9wbHVyYWwgIlB1dHRpbmcgcGFja2FnZSAlcyB0b2dldGhlciBmcm9tICVkIHBhcnRzOiAiCittc2dpZCAic3BsaXQgcGFja2FnZSBwYXJ0IgorbXNnc3RyICJTZSBhc2FtYmxlYXrEgyBwYWNoZXR1bCAlcyBkaW4gJWQgcGFydGU6ICIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NjkgZHBrZy1zcGxpdC9zcGxpdC5jOjIzNworIywgYy1mb3JtYXQKK21zZ2lkICJkb25lXG4iCittc2dzdHIgInRlcm1pbmF0XG4iCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjg1CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGVzIGAlLjI1MHMnIGFuZCBgJS4yNTBzJyBhcmUgbm90IHBhcnRzIG9mIHRoZSBzYW1lIGZpbGUiCittc2dzdHIgImZpyJlpZXJlbGUg4oCeJS4yNTBz4oCdIMiZaSDigJ4lLjI1MHPigJ0gbnUgc3VudCBwxINyyJtpIGFsZSBhY2VsdWlhyJlpIGZpyJlpZXIiCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjkwCisjLCBjLWZvcm1hdAorbXNnaWQgInRoZXJlIGFyZSBzZXZlcmFsIHZlcnNpb25zIG9mIHBhcnQgJWQgLSBhdCBsZWFzdCBgJS4yNTBzJyBhbmQgYCUuMjUwcyciCittc2dzdHIgInN1bnQgbWFpIG11bHRlIHZlcnNpdW5pIGFsZSBwxINyyJtpaSAlZCAtIGNlbCBwdcibaW4g4oCeJS4yNTBz4oCdIMiZaSDigJ4lLjI1MHPigJ0iCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjEyOAorIywgYy1mb3JtYXQKK21zZ2lkICJwYXJ0ICVkIGlzIG1pc3NpbmciCittc2dzdHIgInBhcnRlYSAlZCBsaXBzZciZdGUiCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjQ3CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiBgJXMnIHBhY2thZ2Ugc3BsaXQvam9pbiB0b29sOyB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICJEZWJpYW4g4oCeJXPigJ0sIHVuZWFsdGEgZGUgc2VwYXJhcmUvw65tYmluYXJlIGRlIHBhY2hldGUgdmVyc2l1bmVhICVzLlxuIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo0OQorIywgYy1mb3JtYXQKK21zZ2lkICJDb3B5cmlnaHQgKEMpIDE5OTQtMTk5NiBJYW4gSmFja3Nvbi5cbiIKK21zZ3N0ciAiRHJlcHR1cmkgZGUgYXV0b3IgKEMpIDE5OTQtMTk5NiBJYW4gSmFja3Nvbi4gXG4iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjY3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1zfC0tc3BsaXQgPGZpbGU+IFs8cHJlZml4Pl0gICAgIFNwbGl0IGFuIGFyY2hpdmUuXG4iCisiICAtanwtLWpvaW4gPHBhcnQ+IDxwYXJ0PiAuLi4gICAgICBKb2luIHBhcnRzIHRvZ2V0aGVyLlxuIgorIiAgLUl8LS1pbmZvIDxwYXJ0PiAuLi4gICAgICAgICAgICAgRGlzcGxheSBpbmZvIGFib3V0IGEgcGFydC5cbiIKKyIgIC1hfC0tYXV0byAtbyA8Y29tcGxldGU+IDxwYXJ0PiAgIEF1dG8tYWNjdW11bGF0ZSBwYXJ0cy5cbiIKKyIgIC1sfC0tbGlzdHEgICAgICAgICAgICAgICAgICAgICAgIExpc3QgdW5tYXRjaGVkIHBpZWNlcy5cbiIKKyIgIC1kfC0tZGlzY2FyZCBbPGZpbGVuYW1lPiAuLi5dICAgIERpc2NhcmQgdW5tYXRjaGVkIHBpZWNlcy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIkNvbWVuemk6XG4iCisiICAtc3wtLXNwbGl0IDxmaciZaWVyPiBbPHByZWZpeD5dICAgU2VwYXLEgyBvIGFyaGl2xIMuXG4iCisiICAtanwtLWpvaW4gPHBhcnRlPiA8cGFydGU+IC4uLiAgICDDjm1iaW7EgyBwxINyyJtpbGUuXG4iCisiICAtSXwtLWluZm8gPHBhcnRlPiAuLi4gICAgICAgICAgICBBZmnImWVhesSDIGluZm9ybWHIm2lpIGRlc3ByZSBvIHBhcnRlLlxuIgorIiAgLWF8LS1hdXRvIC1vIDxjb21wbGV0PiA8cGFydGU+ICAgQXV0by1hY3VtdWxlYXrEgyBwxINyyJtpbGUuXG4iCisiICAtbHwtLWxpc3RxICAgICAgICAgICAgICAgICAgICAgICBMaXN0ZWF6xIMgYnVjxIPIm2lsZSBuZXBvdHJpdml0ZS5cbiIKKyIgIC1kfC0tZGlzY2FyZCBbPG51bWVmaciZaWVyPiAuLi5dICBSZW51bsibxIMgbGEgYnVjxIPIm2lsZSBuZXBvdHJpdml0ZS5cbiIKKyJcbiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6ODIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJPcHRpb25zOlxuIgorI3wgIiAgLS1kZXBvdGRpciA8ZGlyZWN0b3J5PiAgICAgICAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMvJXMuXG4iCisjfCAiICAtU3wtLXBhcnRzaXplIDxzaXplPiAgICAgICAgICAgICBJbiBLaUIsIGZvciAtcyAoZGVmYXVsdCBpcyA0NTApLlxuIgorI3wgIiAgLW98LS1vdXRwdXQgPGZpbGU+ICAgICAgICAgICAgICAgRm9yIC1qIChkZWZhdWx0IGlzIDxwYWNrYWdlPi08dmVyc2lvbj4uIgorI3wgImRlYikuXG4iCisjfCAiICAtUXwtLW5wcXVpZXQgICAgICAgICAgICAgICAgICAgICBCZSBxdWlldCB3aGVuIC1hIGlzIG5vdCBhIHBhcnQuXG4iCisjfCAiICAtLW1zZG9zICAgICAgICAgICAgICAgICAgICAgICAgICBHZW5lcmF0ZSA4LjMgZmlsZW5hbWVzLlxuIgorI3wgIlxuIgorI3wgIkV4aXQgc3RhdHVzOiAwID0gT0s7ICAxID0gLWEgaXMgbm90IGEgcGFydDsgIDIgPSB0cm91YmxlIVxuIgorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1kZXBvdGRpciA8ZGlyZWN0b3J5PiAgICAgICAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMvJXMuXG4iCisiICAtU3wtLXBhcnRzaXplIDxzaXplPiAgICAgICAgICAgICBJbiBLaUIsIGZvciAtcyAoZGVmYXVsdCBpcyA0NTApLlxuIgorIiAgLW98LS1vdXRwdXQgPGZpbGU+ICAgICAgICAgICAgICAgRmlsZW5hbWUsIGZvciAtaiAoZGVmYXVsdCBpc1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGFja2FnZT5fPHZlcnNpb24+XzxhcmNoPi5kZWIpLlxuIgorIiAgLVF8LS1ucHF1aWV0ICAgICAgICAgICAgICAgICAgICAgQmUgcXVpZXQgd2hlbiAtYSBpcyBub3QgYSBwYXJ0LlxuIgorIiAgLS1tc2RvcyAgICAgICAgICAgICAgICAgICAgICAgICAgR2VuZXJhdGUgOC4zIGZpbGVuYW1lcy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIk9wyJtpdW5pOlxuIgorIiAgLS1kZXBvdGRpciA8ZGlyZWN0b3I+ICAgICAgICAgICAgRm9sb3NlyJl0ZSA8ZGlyZWN0b3I+IMOubiBsb2MgZGUgJXMvJXMuXG4iCisiICAtU3wtLXBhcnRzaXplIDxkaW1lbnNpdW5lPiAgICAgICDDjm4gS2lCLCBwZW50cnUgLXMgKGltcGxpY2l0IGVzdGUgNDUwKS5cbiIKKyIgIC1vfC0tb3V0cHV0IDxmaciZaWVyPiAgICAgICAgICAgICBQZW50cnUgLWogKGltcGxpY2l0IGVzdGUgPHBhY2hldD4tIgorIjx2ZXJzaXVuZT4uZGViKS5cbiIKKyIgIC1RfC0tbnBxdWlldCAgICAgICAgICAgICAgICAgICAgIEZpIHTEg2N1dCBjw6JuZCAtYSBudSBlc3RlIG8gcGFydGUuXG4iCisiICAtLW1zZG9zICAgICAgICAgICAgICAgICAgICAgICAgICBHZW5lcmVhesSDIG51bWUgZGUgZmnImWllciB0aXAgOC4zLlxuIgorIlxuIgorIkNvZHVsIGRlIGllyJlpcmU6IDAgPSBPSzsgIDEgPSAtYSBudSBlc3RlIG8gcGFydGU7ICAyID0gcHJvYmxlbWUhXG4iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjkyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJFeGl0IHN0YXR1czpcbiIKKyIgIDAgPSBva1xuIgorIiAgMSA9IHdpdGggLS1hdXRvLCBmaWxlIGlzIG5vdCBhIHBhcnRcbiIKKyIgIDIgPSB0cm91YmxlXG4iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6MTAzCittc2dpZCAiVHlwZSBkcGtnLXNwbGl0IC0taGVscCBmb3IgaGVscC4iCittc2dzdHIgIlRhc3RhyJtpIGRwa2ctc3BsaXQgLS1oZWxwIHBlbnRydSBhanV0b3IuIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgZmlsZSBpbiAlLjI1MHMiCittc2dzdHIgInNmw6JyyJlpdCBkZSBmaciZaWVyIG5lYciZdGVwdGF0IMOubiAlLjI1MHMiCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjEyNgorbXNnaWQgInBhcnQgc2l6ZSBpcyBmYXIgdG9vIGxhcmdlIG9yIGlzIG5vdCBwb3NpdGl2ZSIKK21zZ3N0ciAiZGltZW5zaXVuZWEgcMSDcsibaWkgZXN0ZSBwcmVhIG1hcmUgc2F1IG51IGVzdGUgcG96aXRpdsSDIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMzAKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFydCBzaXplIG11c3QgYmUgYXQgbGVhc3QgJWQgS2lCICh0byBhbGxvdyBmb3IgaGVhZGVyKSIKK21zZ3N0ciAiIgorImRpbWVuc2l1bmVhIHDEg3LIm2lpIHRyZWJ1aWUgc8SDIGZpZSBjZWwgcHXIm2luICVkIEtpQiAocGVudHJ1IGEgw65uY8SDcGVhIGFudGV0dWwpIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgZGVwb3QgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICJudSBzZSBwb2F0ZSBjaXRpIGRpcmVjdG9ydWwgZGVwb3ppdCDigJ4lLjI1MHPigJ0iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxMzQKK21zZ2lkICItLWF1dG8gcmVxdWlyZXMgdGhlIHVzZSBvZiB0aGUgLS1vdXRwdXQgb3B0aW9uIgorbXNnc3RyICItLWF1dG8gbmVjZXNpdMSDIGZvbG9zaXJlYSBvcMibaXVuaWkgLS1vdXRwdXQiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxMzYKK21zZ2lkICItLWF1dG8gcmVxdWlyZXMgZXhhY3RseSBvbmUgcGFydCBmaWxlIGFyZ3VtZW50IgorbXNnc3RyICItLWF1dG8gbmVjZXNpdMSDIGV4YWN0IHVuIGZpyJlpZXIgcGFydGUgY2EgYXJndW1lbnQiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxNDAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJudSBzZSBwb2F0ZSBjaXRpIGZpyJlpZXJ1bCBwYXJ0ZSDigJ4lLjI1MHPigJ0iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxNDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiRmlsZSBgJS4yNTBzJyBpcyBub3QgcGFydCBvZiBhIG11bHRpcGFydCBhcmNoaXZlLlxuIgorbXNnc3RyICJGaciZaWVydWwg4oCeJS4yNTBz4oCdIG51IGVzdGUgcGFydGUgZGludHItbyBhcmhpdsSDIG11bHRpdm9sdW0uXG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlb3BlbiBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm51IHNlIHBvYXRlIHJlZGVzY2hpZGUgZmnImWllcnVsIHZvbHVtIOKAniUuMjUwc+KAnSIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE4MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBuZXcgZGVwb3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibnUgc2UgcG9hdGUgZGVzY2hpZGUgbm91bCBmaciZaWVyIGRlcG96aXQg4oCeJS4yNTBz4oCdIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTg0Cittc2dpZCAiZXh0cmFjdGluZyBzcGxpdCBwYXJ0IgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbmFtZSBuZXcgZGVwb3QgZmlsZSBgJS4yNTBzJyB0byBgJS4yNTBzJyIKK21zZ3N0ciAibnUgc2UgcG9hdGUgcmVkZW51bWkgYSBub3VsdWkgZmnImWllciBkZXBveml0IOKAniUuMjUwc+KAnSDDrm4g4oCeJS4yNTBz4oCdIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTk2CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhcnQgJWQgb2YgcGFja2FnZSAlcyBmaWxlZCAoc3RpbGwgd2FudCAiCittc2dzdHIgIlBhcnRlYSAlZCBwYWNoZXR1bHVpICVzIHVtcGx1dMSDICjDrm5jxIMgc2UgdnJlYSAiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyMDAKK21zZ2lkICIgYW5kICIKK21zZ3N0ciAiIMiZaSAiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSB1c2VkLXVwIGRlcG90IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm51IHNlIHBvYXRlIMiZdGVyZ2UgZmnImWllcnVsIGRlcG96aXQgZm9sb3NpdCDigJ4lLjI1MHPigJ0iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyMzUKK21zZ2lkICJKdW5rIGZpbGVzIGxlZnQgYXJvdW5kIGluIHRoZSBkZXBvdCBkaXJlY3Rvcnk6XG4iCittc2dzdHIgIkZpyJlpZXJlIGludXRpbGUgbMSDc2F0ZSDDrm4gZGlyZWN0b3J1bCBkZXBveml0OlxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjQwIGRwa2ctc3BsaXQvcXVldWUuYzoyNjkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgYCUuMjUwcyciCittc2dzdHIgIm51IHNlIHBvYXRlIGNpdGkgc3RhcmVhIGx1aSDigJ4lLjI1MHPigJ0iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNDMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiAlcyAoJWx1IGJ5dGVzKVxuIgorbXNnaWQgIiAlcyAoJWpkIGJ5dGVzKVxuIgorbXNnc3RyICIgJXMgKCVsdSBvY3RlyJtpKVxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAlcyAobm90IGEgcGxhaW4gZmlsZSlcbiIKK21zZ3N0ciAiICVzIChudSBlc3RlIHVuIGZpyJlpZXIgcHJvcHJpdS16aXMpXG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNTAKK21zZ2lkICJQYWNrYWdlcyBub3QgeWV0IHJlYXNzZW1ibGVkOlxuIgorbXNnc3RyICJQYWNoZXRlIG5lLXJlYXNhbWJsYXRlIMOubmPEgzpcbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI1OAorIywgYy1mb3JtYXQKK21zZ2lkICIgUGFja2FnZSAlczogcGFydChzKSAiCittc2dzdHIgIiBQYWNoZXR1bCAlczogcGFydGVhKMibaWxlKSAiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFydCBmaWxlIGAlLjI1MHMnIGlzIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgImZpyJlpZXJ1bCBwYXJ0ZSDigJ4lLjI1MHPigJ0gbnUgZXN0ZSB1biBmaciZaWVyIHByb3ByaXUtemlzIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6Mjc4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIodG90YWwgJWx1IGJ5dGVzKVxuIgorbXNnaWQgIih0b3RhbCAlamQgYnl0ZXMpXG4iCittc2dzdHIgIih0b3RhbCAlbHUgb2N0ZcibaSlcbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjMwNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGlzY2FyZCBgJS4yNTBzJyIKK21zZ3N0ciAibnUgc2UgcG9hdGUgcmVudW7Im2EgbGEg4oCeJS4yNTBz4oCdIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MzA1CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlbGV0ZWQgJXMuXG4iCittc2dzdHIgIsiYdGVycyAlcy5cbiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjcwIGRwa2ctc3BsaXQvc3BsaXQuYzo3NiBkcGtnLXNwbGl0L3NwbGl0LmM6ODEKKyMsIGZ1enp5CisjfCBtc2dpZCAiZHBrZy1kZWIgZmllbGQgZXh0cmFjdGlvbiIKK21zZ2lkICJwYWNrYWdlIGZpZWxkIHZhbHVlIGV4dHJhY3Rpb24iCittc2dzdHIgImV4dHJhZ2VyZWEgY8OibXB1bHVpIGRlIGPEg3RyZSBkcGtnLWRlYiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjEzMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBzb3VyY2UgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibnUgc2UgcG9hdGUgZGVzY2hpZGUgZmnImWllcnVsIHN1cnPEgyDigJ4lLjI1MHPigJ0iCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxMzMKK21zZ2lkICJ1bmFibGUgdG8gZnN0YXQgc291cmNlIGZpbGUiCittc2dzdHIgImZzdGF0IGltcG9zaWJpbCBwZW50cnUgZmnImWllcnVsIHN1cnPEgyIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjEzNQorIywgYy1mb3JtYXQKK21zZ2lkICJzb3VyY2UgZmlsZSBgJS4yNTBzJyBub3QgYSBwbGFpbiBmaWxlIgorbXNnc3RyICJmaciZaWVydWwgc3Vyc8SDIOKAniUuMjUwc+KAnSBudSBlc3RlIHVuIGZpyJlpZXIgcHJvcHJpdS16aXMiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxNTMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIlB1dHRpbmcgcGFja2FnZSAlcyB0b2dldGhlciBmcm9tICVkIHBhcnQ6ICIKKyN8IG1zZ2lkX3BsdXJhbCAiUHV0dGluZyBwYWNrYWdlICVzIHRvZ2V0aGVyIGZyb20gJWQgcGFydHM6ICIKK21zZ2lkICJTcGxpdHRpbmcgcGFja2FnZSAlcyBpbnRvICVkIHBhcnQ6ICIKK21zZ2lkX3BsdXJhbCAiU3BsaXR0aW5nIHBhY2thZ2UgJXMgaW50byAlZCBwYXJ0czogIgorbXNnc3RyWzBdICJTZSBhc2FtYmxlYXrEgyBwYWNoZXR1bCAlcyBkaW4gJWQgcGFydGU6ICIKK21zZ3N0clsxXSAiU2UgYXNhbWJsZWF6xIMgcGFjaGV0dWwgJXMgZGluICVkIHDEg3LIm2kiCittc2dzdHJbMl0gIlNlIGFzYW1ibGVhesSDIHBhY2hldHVsICVzIGRpbiAlZCBkZSBwxINyyJtpIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTkzCittc2dpZCAiIgorIkhlYWRlciBpcyB0b28gbG9uZywgbWFraW5nIHBhcnQgdG9vIGxvbmcuIFlvdXIgcGFja2FnZSBuYW1lIG9yIHZlcnNpb25cbiIKKyJudW1iZXJzIG11c3QgYmUgZXh0cmFvcmRpbmFyaWx5IGxvbmcsIG9yIHNvbWV0aGluZy4gR2l2aW5nIHVwLlxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoyNDkKK21zZ2lkICItLXNwbGl0IG5lZWRzIGEgc291cmNlIGZpbGVuYW1lIGFyZ3VtZW50IgorbXNnc3RyICItLXNwbGl0IG5lY2VzaXTEgyB1biBudW1lIGRlIGZpyJlpZXIgc3Vyc8SDIGNhIGFyZ3VtZW50IgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MjUyCittc2dpZCAiLS1zcGxpdCB0YWtlcyBhdCBtb3N0IGEgc291cmNlIGZpbGVuYW1lIGFuZCBkZXN0aW5hdGlvbiBwcmVmaXgiCittc2dzdHIgIiIKKyItLXNwbGl0IGlhIGNhIGFyZ3VtZW50ZSBjZWwgbXVsdCB1biBudW1lIGRlIGZpyJlpZXIgc3Vyc8SDIMiZaSB1biBwcmVmaXggcGVudHJ1ICIKKyJkZXN0aW5hyJtpZSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjg0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLTIwMDIgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDktMjAxMCBSYXBoYWVsIEhlcnR6b2cuXG4iCittc2dzdHIgIiIKKyJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLTIwMDIgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDktMjAxMCBSYXBoYWVsIEhlcnR6b2cuXG4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMDEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gPGNvbW1hbmQ+XG4iCisjfCAiXG4iCisjfCAiQ29tbWFuZHM6XG4iCisjfCAiICAtLWluc3RhbGwgPGxpbms+IDxuYW1lPiA8cGF0aD4gPHByaW9yaXR5PlxuIgorI3wgIiAgICBbLS1zbGF2ZSA8bGluaz4gPG5hbWU+IDxwYXRoPl0gLi4uXG4iCisjfCAiICAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkIGEgZ3JvdXAgb2YgYWx0ZXJuYXRpdmVzIHRvIHRoZSBzeXN0ZW0uXG4iCisjfCAiICAtLXJlbW92ZSA8bmFtZT4gPHBhdGg+ICAgcmVtb3ZlIDxwYXRoPiBmcm9tIHRoZSA8bmFtZT4gZ3JvdXAgIgorI3wgImFsdGVybmF0aXZlLlxuIgorI3wgIiAgLS1yZW1vdmUtYWxsIDxuYW1lPiAgICAgIHJlbW92ZSA8bmFtZT4gZ3JvdXAgZnJvbSB0aGUgYWx0ZXJuYXRpdmVzICIKKyN8ICJzeXN0ZW0uXG4iCisjfCAiICAtLWF1dG8gPG5hbWU+ICAgICAgICAgICAgc3dpdGNoIHRoZSBtYXN0ZXIgbGluayA8bmFtZT4gdG8gYXV0b21hdGljICIKKyN8ICJtb2RlLlxuIgorI3wgIiAgLS1kaXNwbGF5IDxuYW1lPiAgICAgICAgIGRpc3BsYXkgaW5mb3JtYXRpb24gYWJvdXQgdGhlIDxuYW1lPiBncm91cC5cbiIKKyN8ICIgIC0tcXVlcnkgPG5hbWU+ICAgICAgICAgICBtYWNoaW5lIHBhcnNlYWJsZSB2ZXJzaW9uIG9mIC0tZGlzcGxheSAiCisjfCAiPG5hbWU+LlxuIgorI3wgIiAgLS1saXN0IDxuYW1lPiAgICAgICAgICAgIGRpc3BsYXkgYWxsIHRhcmdldHMgb2YgdGhlIDxuYW1lPiBncm91cC5cbiIKKyN8ICIgIC0tY29uZmlnIDxuYW1lPiAgICAgICAgICBzaG93IGFsdGVybmF0aXZlcyBmb3IgdGhlIDxuYW1lPiBncm91cCBhbmQgYXNrICIKKyN8ICJ0aGVcbiIKKyN8ICIgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2VyIHRvIHNlbGVjdCB3aGljaCBvbmUgdG8gdXNlLlxuIgorI3wgIiAgLS1zZXQgPG5hbWU+IDxwYXRoPiAgICAgIHNldCA8cGF0aD4gYXMgYWx0ZXJuYXRpdmUgZm9yIDxuYW1lPi5cbiIKKyN8ICIgIC0tYWxsICAgICAgICAgICAgICAgICAgICBjYWxsIC0tY29uZmlnIG9uIGFsbCBhbHRlcm5hdGl2ZXMuXG4iCisjfCAiXG4iCisjfCAiPGxpbms+IGlzIHRoZSBzeW1saW5rIHBvaW50aW5nIHRvICVzLzxuYW1lPi5cbiIKKyN8ICIgIChlLmcuIC91c3IvYmluL3BhZ2VyKVxuIgorI3wgIjxuYW1lPiBpcyB0aGUgbWFzdGVyIG5hbWUgZm9yIHRoaXMgbGluayBncm91cC5cbiIKKyN8ICIgIChlLmcuIHBhZ2VyKVxuIgorI3wgIjxwYXRoPiBpcyB0aGUgbG9jYXRpb24gb2Ygb25lIG9mIHRoZSBhbHRlcm5hdGl2ZSB0YXJnZXQgZmlsZXMuXG4iCisjfCAiICAoZS5nLiAvdXNyL2Jpbi9sZXNzKVxuIgorI3wgIjxwcmlvcml0eT4gaXMgYW4gaW50ZWdlcjsgb3B0aW9ucyB3aXRoIGhpZ2hlciBudW1iZXJzIGhhdmUgaGlnaGVyICIKKyN8ICJwcmlvcml0eSBpblxuIgorI3wgIiAgYXV0b21hdGljIG1vZGUuXG4iCisjfCAiXG4iCisjfCAiT3B0aW9uczpcbiIKKyN8ICIgIC0tYWx0ZGlyIDxkaXJlY3Rvcnk+ICAgICBjaGFuZ2UgdGhlIGFsdGVybmF0aXZlcyBkaXJlY3RvcnkuXG4iCisjfCAiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgY2hhbmdlIHRoZSBhZG1pbmlzdHJhdGl2ZSBkaXJlY3RvcnkuXG4iCisjfCAiICAtLXNraXAtYXV0byAgICAgICAgICAgICAgc2tpcCBwcm9tcHQgZm9yIGFsdGVybmF0aXZlcyBjb3JyZWN0bHkgIgorI3wgImNvbmZpZ3VyZWRcbiIKKyN8ICIgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBhdXRvbWF0aWMgbW9kZSAocmVsZXZhbnQgZm9yIC0tY29uZmlnICIKKyN8ICJvbmx5KVxuIgorI3wgIiAgLS12ZXJib3NlICAgICAgICAgICAgICAgIHZlcmJvc2Ugb3BlcmF0aW9uLCBtb3JlIG91dHB1dC5cbiIKKyN8ICIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBxdWlldCBvcGVyYXRpb24sIG1pbmltYWwgb3V0cHV0LlxuIgorI3wgIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisjfCAiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtLWluc3RhbGwgPGxpbms+IDxuYW1lPiA8cGF0aD4gPHByaW9yaXR5PlxuIgorIiAgICBbLS1zbGF2ZSA8bGluaz4gPG5hbWU+IDxwYXRoPl0gLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkIGEgZ3JvdXAgb2YgYWx0ZXJuYXRpdmVzIHRvIHRoZSBzeXN0ZW0uXG4iCisiICAtLXJlbW92ZSA8bmFtZT4gPHBhdGg+ICAgcmVtb3ZlIDxwYXRoPiBmcm9tIHRoZSA8bmFtZT4gZ3JvdXAgYWx0ZXJuYXRpdmUuXG4iCisiICAtLXJlbW92ZS1hbGwgPG5hbWU+ICAgICAgcmVtb3ZlIDxuYW1lPiBncm91cCBmcm9tIHRoZSBhbHRlcm5hdGl2ZXMgIgorInN5c3RlbS5cbiIKKyIgIC0tYXV0byA8bmFtZT4gICAgICAgICAgICBzd2l0Y2ggdGhlIG1hc3RlciBsaW5rIDxuYW1lPiB0byBhdXRvbWF0aWMgbW9kZS5cbiIKKyIgIC0tZGlzcGxheSA8bmFtZT4gICAgICAgICBkaXNwbGF5IGluZm9ybWF0aW9uIGFib3V0IHRoZSA8bmFtZT4gZ3JvdXAuXG4iCisiICAtLXF1ZXJ5IDxuYW1lPiAgICAgICAgICAgbWFjaGluZSBwYXJzZWFibGUgdmVyc2lvbiBvZiAtLWRpc3BsYXkgPG5hbWU+LlxuIgorIiAgLS1saXN0IDxuYW1lPiAgICAgICAgICAgIGRpc3BsYXkgYWxsIHRhcmdldHMgb2YgdGhlIDxuYW1lPiBncm91cC5cbiIKKyIgIC0tZ2V0LXNlbGVjdGlvbnMgICAgICAgICBsaXN0IG1hc3RlciBhbHRlcm5hdGl2ZSBuYW1lcyBhbmQgdGhlaXIgc3RhdHVzLlxuIgorIiAgLS1zZXQtc2VsZWN0aW9ucyAgICAgICAgIHJlYWQgYWx0ZXJuYXRpdmUgc3RhdHVzIGZyb20gc3RhbmRhcmQgaW5wdXQuXG4iCisiICAtLWNvbmZpZyA8bmFtZT4gICAgICAgICAgc2hvdyBhbHRlcm5hdGl2ZXMgZm9yIHRoZSA8bmFtZT4gZ3JvdXAgYW5kIGFzayAiCisidGhlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlciB0byBzZWxlY3Qgd2hpY2ggb25lIHRvIHVzZS5cbiIKKyIgIC0tc2V0IDxuYW1lPiA8cGF0aD4gICAgICBzZXQgPHBhdGg+IGFzIGFsdGVybmF0aXZlIGZvciA8bmFtZT4uXG4iCisiICAtLWFsbCAgICAgICAgICAgICAgICAgICAgY2FsbCAtLWNvbmZpZyBvbiBhbGwgYWx0ZXJuYXRpdmVzLlxuIgorIlxuIgorbXNnc3RyICIiCisiVXRpbGl6YXJlOiAlcyBbPG9wyJtpdW5lPiAuLi5dIDxjb21hbmRhPlxuIgorIlxuIgorIkNvbWVuemk6XG4iCisiICAtLWluc3RhbGwgPGxlZ8SDdHVyxIM+IDxudW1lPiA8Y2FsZT4gPHByaW9yaXRhdGU+XG4iCisiICAgIFstLXNsYXZlIDxsZWfEg3R1csSDPiA8bnVtZT4gPGNhbGU+XSAuLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBhZGF1Z8SDIHVuIGdydXAgZGUgYWx0ZXJuYXRpdmUgw65uIHNpc3RlbS5cbiIKKyIgIC0tcmVtb3ZlIDxudW1lPiA8Y2FsZT4gICDImXRlcmdlIDxjYWxlPiBkaW4gZ3J1cHVsIGRlIGFsdGVybmF0aXZlIDxudW1lPi5cbiIKKyIgIC0tcmVtb3ZlLWFsbCA8bnVtZT4gICAgICDImXRlcmdlIGdydXB1bCA8bnVtZT4gZGluIHNpc3RlbXVsIGRlICIKKyJhbHRlcm5hdGl2ZS5cbiIKKyIgIC0tYXV0byA8bnVtZT4gICAgICAgICAgICBzY2hpbWLEgyBsZWfEg3R1cmEgcHJpbWFyxIMgPG51bWU+IHBlIG1vZHVsICIKKyJhdXRvbWF0LlxuIgorIiAgLS1kaXNwbGF5IDxudW1lPiAgICAgICAgIGFmaciZZWF6xIMgaW5mb3JtYcibaWkgZGVzcHJlIGdydXB1bCA8bnVtZT4uXG4iCisiICAtLXF1ZXJ5IDxudW1lPiAgICAgICAgICAgdmFyaWFudMSDIHBhcnNhYmlsxIMgcGVudHJ1IC0tZGlzcGxheSA8bnVtZT4uXG4iCisiICAtLWxpc3QgPG51bWU+ICAgICAgICAgICAgYWZpyJllYXrEgyB0b2F0ZSDIm2ludGVsZSBncnVwdWx1aSA8bnVtZT4uXG4iCisiICAtLWNvbmZpZyA8bnVtZT4gICAgICAgICAgYWZpyJllYXrEgyBhbHRlcm5hdGl2ZWxlIHBlbnRydSBncnVwdWwgPG51bWU+ICIKKyJwZW50cnUgY2FcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICB1dGlsaXphdG9ydWwgc8SDIHBvYXTEgyBzZWxlY3RhIHBlIGNlYSBkZSBmb2xvc2l0LlxuIgorIiAgLS1zZXQgPG51bWU+IDxjYWxlPiAgICAgIGNvbmZpZ3VyZWF6xIMgPGNhbGU+IGNhIGFsdGVybmF0aXbEgyBwZW50cnUgIgorIjxudW1lPi5cbiIKKyIgIC0tYWxsICAgICAgICAgICAgICAgICAgICBleGVjdXTEgyAtLWNvbmZpZyBwZW50cnUgdG9hdGUgYWx0ZXJuYXRpdmVsZS5cbiIKKyJcbiIKKyI8bGVnxIN0dXLEgz4gZXN0ZSBsZWfEg3R1cmEgc2ltYm9saWPEgyBzcHJlICVzLzxudW1lPi5cbiIKKyIgIChleC46IC91c3IvYmluL3BhZ2VyKVxuIgorIjxudW1lPiBlc3RlIG51bWVsZSBwcmltYXIgYWwgYWNlc3R1aSBncnVwIGRlIGxlZ8SDdHVyaS5cbiIKKyIgIChleC46IHBhZ2VyKVxuIgorIjxjYWxlPiBlc3RlIGxvY2HIm2lhIHVudWlhIGRpbiBmaciZaWVyZWxlIMibaW50xIMgYWxlIGdydXB1bHVpIGRlIGFsdGVybmF0aXZlLlxuIgorIiAgKGV4LjogL3Vzci9iaW4vbGVzcylcbiIKKyI8cHJpb3JpdGF0ZT4gZXN0ZSB1biDDrm50cmVnOyBvcMibaXVuaWxlIGN1IG51bWVyZSBtYWkgbWFyaSBhdSBwcmlvcml0YXRlYSAiCisibWFpXG4iCisiICBtYXJlIMOubiBtb2R1bCBhdXRvbWF0LlxuIgorIlxuIgorIk9wyJtpdW5pOlxuIgorIiAgLS1hbHRkaXIgPGRpcmVjdG9yPiAgICAgIHNjaGltYsSDIGRpcmVjdG9ydWwgZGUgYWx0ZXJuYXRpdmUuXG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcj4gICAgc2NoaW1ixIMgZGlyZWN0b3J1bCBkZSBhZG1pbmlzdHJhcmUuXG4iCisiICAtLXNraXAtYXV0byAgICAgICAgICAgICAgbnUgw65udHJlYmEgw65uIGNhenVsIGFsdGVybmF0aXZlbG9yIGNvbmZpZ3VyYXRlICIKKyJjb3JlY3RcbiIKKyIgIC0tdmVyYm9zZSAgICAgICAgICAgICAgICBtYWkgbXVsdGUgbWVzYWplIGxhIGllyJlpcmUuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgb3BlcmFyZSBzaWxlbsibaW9hc8SDLCBtaW5pbSBkZSBtZXNhamUgbGEgaWXImWlyZS5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICBhZmnImWVhesSDIGFjZXN0IGFqdXRvclxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIGFmaciZZWF6xIMgdmVyc2l1bmVhXG4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIjxsaW5rPiBpcyB0aGUgc3ltbGluayBwb2ludGluZyB0byAlcy88bmFtZT4uXG4iCisiICAoZS5nLiAvdXNyL2Jpbi9wYWdlcilcbiIKKyI8bmFtZT4gaXMgdGhlIG1hc3RlciBuYW1lIGZvciB0aGlzIGxpbmsgZ3JvdXAuXG4iCisiICAoZS5nLiBwYWdlcilcbiIKKyI8cGF0aD4gaXMgdGhlIGxvY2F0aW9uIG9mIG9uZSBvZiB0aGUgYWx0ZXJuYXRpdmUgdGFyZ2V0IGZpbGVzLlxuIgorIiAgKGUuZy4gL3Vzci9iaW4vbGVzcylcbiIKKyI8cHJpb3JpdHk+IGlzIGFuIGludGVnZXI7IG9wdGlvbnMgd2l0aCBoaWdoZXIgbnVtYmVycyBoYXZlIGhpZ2hlciBwcmlvcml0eSAiCisiaW5cbiIKKyIgIGF1dG9tYXRpYyBtb2RlLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJPcHRpb25zOlxuIgorI3wgIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIHNldCB0aGUgZGlyZWN0b3J5IHdpdGggdGhlIHN0YXRvdmVycmlkZSBmaWxlLlxuIgorI3wgIiAgLS11cGRhdGUgICAgICAgICAgICAgICAgIGltbWVkaWF0ZWx5IHVwZGF0ZSBmaWxlIHBlcm1pc3Npb25zLlxuIgorI3wgIiAgLS1mb3JjZSAgICAgICAgICAgICAgICAgIGZvcmNlIGFuIGFjdGlvbiBldmVuIGlmIGEgc2FuaXR5IGNoZWNrIGZhaWxzLlxuIgorI3wgIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHF1aWV0IG9wZXJhdGlvbiwgbWluaW1hbCBvdXRwdXQuXG4iCisjfCAiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyN8ICIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorI3wgIlxuIgorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hbHRkaXIgPGRpcmVjdG9yeT4gICAgIGNoYW5nZSB0aGUgYWx0ZXJuYXRpdmVzIGRpcmVjdG9yeS5cbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICBjaGFuZ2UgdGhlIGFkbWluaXN0cmF0aXZlIGRpcmVjdG9yeS5cbiIKKyIgIC0tbG9nIDxmaWxlPiAgICAgICAgICAgICBjaGFuZ2UgdGhlIGxvZyBmaWxlLlxuIgorIiAgLS1mb3JjZSAgICAgICAgICAgICAgICAgIGFsbG93IHJlcGxhY2luZyBmaWxlcyB3aXRoIGFsdGVybmF0aXZlIGxpbmtzLlxuIgorIiAgLS1za2lwLWF1dG8gICAgICAgICAgICAgIHNraXAgcHJvbXB0IGZvciBhbHRlcm5hdGl2ZXMgY29ycmVjdGx5ICIKKyJjb25maWd1cmVkXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gYXV0b21hdGljIG1vZGUgKHJlbGV2YW50IGZvciAtLWNvbmZpZyBvbmx5KVxuIgorIiAgLS12ZXJib3NlICAgICAgICAgICAgICAgIHZlcmJvc2Ugb3BlcmF0aW9uLCBtb3JlIG91dHB1dC5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBxdWlldCBvcGVyYXRpb24sIG1pbmltYWwgb3V0cHV0LlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIgorIk9wyJtpdW5pOlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3I+ICAgIGNvbmZpZ3VyZWF6xIMgZGlyZWN0b3J1bCBjdSBmaciZaWVydWwgIgorInN0YXRvdmVycmlkZS5cbiIKKyIgIC0tdXBkYXRlICAgICAgICAgICAgICAgICBhY3R1YWxpemVhesSDIGltZWRpYXQgcGVybWlzaXVuaWxlIGZpyJlpZXJlbG9yLlxuIgorIiAgLS1mb3JjZSAgICAgICAgICAgICAgICAgIGZvcsibZWF6xIMgbyBhY8ibaXVuZSBjaGlhciBkYWPEgyB2ZXJpZmljxINyaWxlICIKKyJlyJl1ZWF6xIMuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgb3BlcmFyZSBzaWxlbsibaW9hc8SDLCBtaW5pbSBkZSBtZXNhamUuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgYWZpyJllYXrEgyBhY2VzdCBhanV0b3IuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgYWZpyJllYXrEgyB2ZXJzaXVuZWEuXG4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE2MworbXNnaWQgImVycm9yIgorbXNnc3RyICJlcm9hcmUiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxOTMKK21zZ2lkICJ3YXJuaW5nIgorbXNnc3RyICJhdmVydGlzbWVudCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjM1NgorIywgYy1mb3JtYXQKK21zZ2lkICJ0d28gY29tbWFuZHMgc3BlY2lmaWVkOiAtLSVzIGFuZCAtLSVzIgorbXNnc3RyICJhdSBmb3N0IHNwZWNpZmljYXRlIGRvdcSDIGNvbWVuemk6IC0tJXMgyJlpIC0tJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzozODcKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImNhbm5vdCBhcHBlbmQgdG8gJXM6ICVzIgorbXNnaWQgImNhbm5vdCBhcHBlbmQgdG8gJyVzJyIKK21zZ3N0ciAibnUgc2UgcG9hdGUgYWTEg3VnYSBsYSAlczogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo1NTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byByZW1vdmUgJXM6ICVzIgorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgJyVzJyIKK21zZ3N0ciAibnUgc2UgcG9hdGUgyJl0ZXJnZSAlczogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTExCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGZpbGUgd2hpbGUgdHJ5aW5nIHRvIHJlYWQgJXMiCittc2dzdHIgInNmw6JyyJlpdCBkZSBmaciZaWVyIG5lYciZdGVwdGF0IMOubiB0aW1wIGNlIHNlIMOubmNlcmNhIGNpdGlyZWEgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTEzCisjLCBjLWZvcm1hdAorbXNnaWQgIndoaWxlIHJlYWRpbmcgJXM6ICVzIgorbXNnc3RyICLDrm4gdGltcHVsIGNpdGlyaWkgJXM6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTExOQorIywgYy1mb3JtYXQKK21zZ2lkICJsaW5lIG5vdCB0ZXJtaW5hdGVkIHdoaWxlIHRyeWluZyB0byByZWFkICVzIgorbXNnc3RyICJsaW5pZSBuZXRlcm1pbmF0xIMgw65uIHRpbXAgY2Ugc2Ugw65uY2VyY2EgY2l0aXJlYSAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgY29ycnVwdDogJXMiCittc2dzdHIgIiVzIGNvcnVwdDogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTUwCisjLCBjLWZvcm1hdAorbXNnaWQgIm5ld2xpbmVzIHByb2hpYml0ZWQgaW4gdXBkYXRlLWFsdGVybmF0aXZlcyBmaWxlcyAoJXMpIgorbXNnc3RyICIiCisiY2FyYWN0ZXJlbGUgbmV3bGluZSBzdW50IGludGVyemlzZSDDrm4gZmnImWllcmVsZSB1cGRhdGUtYWx0ZXJuYXRpdmVzICglcykiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTYzCittc2dpZCAic2xhdmUgbmFtZSIKK21zZ3N0ciAibnVtZSBzY2xhdiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNzEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImR1cGxpY2F0ZSBzbGF2ZSAlcyIKK21zZ2lkICJkdXBsaWNhdGUgc2xhdmUgbmFtZSAlcyIKK21zZ3N0ciAic2NsYXZ1bCAlcyBlc3RlIGR1cGxpY2F0IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE3NAorbXNnaWQgInNsYXZlIGxpbmsiCittc2dzdHIgImxlZ8SDdHVyxIMgc2NsYXYiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTc4CisjLCBjLWZvcm1hdAorbXNnaWQgInNsYXZlIGxpbmsgc2FtZSBhcyBtYWluIGxpbmsgJXMiCittc2dzdHIgImxlZ8SDdHVyYSBzY2xhdiBlc3RlIGFjZWlhyJlpIGN1IGxlZ8SDdHVyYSBwcmluY2lwYWzEgyAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExODUgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHNsYXZlIGxpbmsgJXMiCittc2dzdHIgImxlZ8SDdHVyYSBzY2xhdiAlcyBlc3RlIGR1cGxpY2F0xIMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjA0Cittc2dpZCAibWFzdGVyIGZpbGUiCittc2dzdHIgImZpyJlpZXIgbWFzdGVyIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIxMworIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgcGF0aCAlcyIKK21zZ3N0ciAiY2FsZWEgJXMgZXN0ZSBkdXBsaWNhdMSDIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIyNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYWx0ZXJuYXRpdmUgJXMgKHBhcnQgb2YgbGluayBncm91cCAlcykgZG9lc24ndCBleGlzdC4gUmVtb3ZpbmcgZnJvbSBsaXN0IG9mICIKKyJhbHRlcm5hdGl2ZXMuIgorbXNnc3RyICIiCisiYWx0ZXJuYXRpdmEgJXMgKHBhcnRlIGEgZ3J1cHVsdWkgZGUgbGVnxIN0dXJpICVzKSBudSBleGlzdMSDLiBTZSDImXRlcmdlIGRpbiAiCisibGlzdGEgZGUgYWx0ZXJuYXRpdmUuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIyOSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI0MAorbXNnaWQgInByaW9yaXR5IgorbXNnc3RyICJwcmlvcml0YXRlIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIzMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI0OQorbXNnaWQgInNsYXZlIGZpbGUiCittc2dzdHIgImZpyJlpZXIgc2NsYXYiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjQ0CisjLCBjLWZvcm1hdAorbXNnaWQgInByaW9yaXR5IG9mICVzOiAlcyIKK21zZ3N0ciAicHJpb3JpdGF0ZWEgbHVpICVzOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyOTcKK21zZ2lkICJzdGF0dXMiCittc2dzdHIgInN0YXJlIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI5OQorbXNnaWQgImludmFsaWQgc3RhdHVzIgorbXNnc3RyICJzdGFyZSBuZXZhbGlkxIMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzA0Cittc2dpZCAibWFzdGVyIGxpbmsiCittc2dzdHIgImxlZ8SDdHVyYSBtYXN0ZXIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzQ4CisjLCBjLWZvcm1hdAorbXNnaWQgImRpc2NhcmRpbmcgb2Jzb2xldGUgc2xhdmUgbGluayAlcyAoJXMpLiIKK21zZ3N0ciAic2UgcmVudW7Im8SDIGxhIGxlZ8SDdHVyYS1zY2xhdiDDrm52ZWNoaXTEgyAlcyAoJXMpLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MDIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NjkKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjM4Cittc2dpZCAiYXV0byBtb2RlIgorbXNnc3RyICJtb2QgYXV0b21hdCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MDIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NzgKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjM5Cittc2dpZCAibWFudWFsIG1vZGUiCittc2dzdHIgIm1vZCBtYW51YWwiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTA1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgbGluayBjdXJyZW50bHkgcG9pbnRzIHRvICVzIgorbXNnc3RyICIgbGVnxIN0dXJhIGluZGljxIMgYWN1bSBzcHJlICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwOAorbXNnaWQgIiAgbGluayBjdXJyZW50bHkgYWJzZW50IgorbXNnc3RyICIgbGVnxIN0dXJhIGVzdGUgYWJzZW50xIMgYWN1bSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgLSBwcmlvcml0eSAlZCIKK21zZ3N0ciAiJXMgLSBwcmlvcml0YXRlYSAlZCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBzbGF2ZSAlczogJXMiCittc2dzdHIgIiAgc2NsYXYgJXM6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUyMgorIywgYy1mb3JtYXQKK21zZ2lkICJDdXJyZW50ICdiZXN0JyB2ZXJzaW9uIGlzICclcycuIgorbXNnc3RyICJDZWEgbWFpIOKAnmJ1bsSD4oCdIHZlcnNpdW5lIMOubiBwcmV6ZW50IGVzdGUg4oCeJXPigJ0uIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUyNAorbXNnaWQgIk5vIHZlcnNpb25zIGF2YWlsYWJsZS4iCittc2dzdHIgIk5pY2kgbyB2ZXJzaXVuZSBkaXNwb25pYmlsxIMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU1MworIywgYy1mb3JtYXQKK21zZ2lkICJUaGVyZSBpcyAlZCBjaG9pY2UgZm9yIHRoZSBhbHRlcm5hdGl2ZSAlcyAocHJvdmlkaW5nICVzKS4iCittc2dpZF9wbHVyYWwgIlRoZXJlIGFyZSAlZCBjaG9pY2VzIGZvciB0aGUgYWx0ZXJuYXRpdmUgJXMgKHByb3ZpZGluZyAlcykuIgorbXNnc3RyWzBdICJFeGlzdMSDICVkIG9wyJtpdW5lIHBlbnRydSBhbHRlcm5hdGl2YSAlcyAoZnVybml6ZWF6xIMgJXMpLiIKK21zZ3N0clsxXSAiRXhpc3TEgyAlZCBvcMibaXVuaSBwZW50cnUgYWx0ZXJuYXRpdmEgJXMgKGZ1cm5pemVhesSDICVzKS4iCittc2dzdHJbMl0gIkV4aXN0xIMgJWQgZGUgb3DIm2l1bmkgcGVudHJ1IGFsdGVybmF0aXZhICVzIChmdXJuaXplYXrEgyAlcykuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2MAorbXNnaWQgIlNlbGVjdGlvbiIKK21zZ3N0ciAiU2VsZWPIm2llIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2MQorbXNnaWQgIlBhdGgiCittc2dzdHIgIkNhbGUiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYxCittc2dpZCAiUHJpb3JpdHkiCittc2dzdHIgIlByaW9yaXRhdGUiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYxCittc2dpZCAiU3RhdHVzIgorbXNnc3RyICJTdGFyZSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHJlc3MgZW50ZXIgdG8ga2VlcCB0aGUgY3VycmVudCBjaG9pY2VbKl0sIG9yIHR5cGUgc2VsZWN0aW9uIG51bWJlcjogIgorbXNnc3RyICIiCisiQXDEg3NhyJtpIEVOVEVSIHBlbnRydSBhIHDEg3N0cmEgdmFyaWFudGEgY3VyZW50xINbKl0sIHNhdSBpbnRyb2R1Y2XIm2kgbnVtxINydWwgIgorInNlbGVjyJtpZWk6ICIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3MjEKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IHJlcGxhY2luZyAlcyB3aXRoIGEgbGluay4iCittc2dzdHIgIm51IHNlIMOubmxvY3VpZciZdGUgJXMgY3UgbyBsZWfEg3R1csSDLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3NjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2FuJ3QgaW5zdGFsbCB1bmtub3duIGNob2ljZSAlcyIKK21zZ3N0ciAibnUgc2UgcG9hdGUgaW5zdGFsYSB2YXJpYW50YSBuZWN1bm9zY3V0xIMgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNzgwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJza2lwIGNyZWF0aW9uIG9mICVzIGJlY2F1c2UgYXNzb2NpYXRlZCBmaWxlICVzIChvZiBsaW5rIGdyb3VwICVzKSBkb2Vzbid0ICIKKyJleGlzdC4iCittc2dzdHIgIiIKKyJzZSBvbWl0ZSBjcmVhcmVhIGx1aSAlcyBkZW9hcmVjZSBmaciZaWVydWwgJXMgYXNvY2lhdCAoZGluIGdydXB1bCBkZSBsZWfEg3R1cmkgIgorIiVzKSBudSBleGlzdMSDLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3OTAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIm5vdCByZXBsYWNpbmcgJXMgd2l0aCBhIGxpbmsuIgorbXNnaWQgIm5vdCByZW1vdmluZyAlcyBzaW5jZSBpdCdzIG5vdCBhIHN5bWxpbmsuIgorbXNnc3RyICJudSBzZSDDrm5sb2N1aWXImXRlICVzIGN1IG8gbGVnxIN0dXLEgy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDQxIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDQ3CisjLCBjLWZvcm1hdAorbXNnaWQgIkNhbGwgJXMuIgorbXNnc3RyICJDaGVhbcSDICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiQWx0ZXJuYXRpdmUgJXMgdW5jaGFuZ2VkIGJlY2F1c2UgY2hvaWNlICVzIGlzIG5vdCBhdmFpbGFibGUuIgorbXNnc3RyICJBbHRlcm5hdGl2YSAlcyBuZXNjaGltYmF0xIMgZGVvYXJlY2Ugb3DIm2l1bmVhICVzIG51IGVzdGUgZGlzcG9uaWJpbMSDLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2tpcCB1bmtub3duIGFsdGVybmF0aXZlICVzLiIKK21zZ3N0ciAiT21pdGUgYWx0ZXJuYXRpdmEgbmVjdW5vc2N1dMSDIOKAniVz4oCdLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNzcKKyMsIGMtZm9ybWF0Cittc2dpZCAibGluZSB0b28gbG9uZyBvciBub3QgdGVybWluYXRlZCB3aGlsZSB0cnlpbmcgdG8gcmVhZCAlcyIKK21zZ3N0ciAibGluaWUgcHJlYSBsdW5nxIMgc2F1IG5ldGVybWluYXTEgyDDrm4gdGltcCBjZSBzZSDDrm5jZXJjYSBjaXRpcmVhICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA5MCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjEwMworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2tpcCBpbnZhbGlkIGxpbmU6ICVzIgorbXNnc3RyICJPbWl0ZSBsaW5pZSBuZXZhbGlkxIM6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjEzMgorIywgYy1mb3JtYXQKK21zZ2lkICJyZW5hbWluZyAlcyBsaW5rIGZyb20gJXMgdG8gJXMuIgorbXNnc3RyICJzZSByZWRlbnVtZciZdGUgbGVnxIN0dXJhICVzIGRpbiAlcyDDrm4gJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE3MworIywgYy1mb3JtYXQKK21zZ2lkICJyZW5hbWluZyAlcyBzbGF2ZSBsaW5rIGZyb20gJXMgdG8gJXMuIgorbXNnc3RyICJzZSByZWRlbnVtZciZdGUgbGVnxIN0dXJhIHNjbGF2ICVzIGRpbiAlcyDDrm4gJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE4OQorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBuYW1lICglcykgbXVzdCBub3QgY29udGFpbiAnLycgYW5kIHNwYWNlcy4iCittc2dzdHIgIm51bWVsZSBkZSBhbHRlcm5hdGl2xIMgKCVzKSBudSBwb2F0ZSBjb27Im2luZSDigJ4v4oCdIMiZaSBzcGHIm2lpLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgbGluayBpcyBub3QgYWJzb2x1dGUgYXMgaXQgc2hvdWxkIGJlOiAlcyIKK21zZ3N0ciAibGVnxIN0dXJhIGFsdGVybmF0aXbEgyBudSBlc3RlIGFic29sdXTEgyBhyJlhIGN1bSBhciB0cmVidWkgc8SDIGZpZTogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTk3CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIHBhdGggaXMgbm90IGFic29sdXRlIGFzIGl0IHNob3VsZCBiZTogJXMiCittc2dzdHIgImNhbGVhIGFsdGVybmF0aXbEgyBudSBlc3RlIGFic29sdXTEgyBhyJlhIGN1bSBhciB0cmVidWkgc8SDIGZpZTogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjI0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBtYXN0ZXI6ICVzIgorbXNnaWQgImFsdGVybmF0aXZlICVzIGNhbid0IGJlIG1hc3RlcjogaXQgaXMgYSBzbGF2ZSBvZiAlcyIKK21zZ3N0ciAiYWx0ZXJuYXRpdmEgJXMgbnUgcG9hdGUgZmkgbWFzdGVyOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyMzIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgbGluayAlcyBpcyBhbHJlYWR5IG1hbmFnZWQgYnkgJXMuIgorbXNnc3RyICJsZWfEg3R1cmEgYWx0ZXJuYXRpdsSDICVzIGVzdGUgZGVqYSBhZG1pbmlzdHJhdMSDIGRlICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgcGF0aCAlcyBkb2Vzbid0IGV4aXN0LiIKK21zZ3N0ciAiY2FsZWEgYWx0ZXJuYXRpdsSDICVzIG51IGV4aXN0xIMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI1NAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgc2xhdmUgb2YgJXM6ICVzIgorbXNnaWQgImFsdGVybmF0aXZlICVzIGNhbid0IGJlIHNsYXZlIG9mICVzOiBpdCBpcyBhIG1hc3RlciBhbHRlcm5hdGl2ZS4iCittc2dzdHIgImFsdGVybmF0aXZhICVzIG51IHBvYXRlIGZpIHNjbGF2IHBlbnRydSAlczogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjU4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBtYXN0ZXI6ICVzIgorbXNnaWQgImFsdGVybmF0aXZlICVzIGNhbid0IGJlIHNsYXZlIG9mICVzOiBpdCBpcyBhIHNsYXZlIG9mICVzIgorbXNnc3RyICJhbHRlcm5hdGl2YSAlcyBudSBwb2F0ZSBmaSBtYXN0ZXI6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI3OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYWx0ZXJuYXRpdmUgbGluayAlcyBpcyBhbHJlYWR5IG1hbmFnZWQgYnkgJXMuIgorbXNnaWQgImFsdGVybmF0aXZlIGxpbmsgJXMgaXMgYWxyZWFkeSBtYW5hZ2VkIGJ5ICVzIChzbGF2ZSBvZiAlcykuIgorbXNnc3RyICJsZWfEg3R1cmEgYWx0ZXJuYXRpdsSDICVzIGVzdGUgZGVqYSBhZG1pbmlzdHJhdMSDIGRlICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBhcmd1bWVudCBgJXMnIgorbXNnc3RyICJhcmd1bWVudCBuZWN1bm9zY3V0IOKAniVz4oCdIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM0MworbXNnaWQgIi0taW5zdGFsbCBuZWVkcyA8bGluaz4gPG5hbWU+IDxwYXRoPiA8cHJpb3JpdHk+IgorbXNnc3RyICItLWluc3RhbGwgbmVjZXNpdMSDIDxsZWfEg3R1csSDPiA8bnVtZT4gPGNhbGU+IDxwcmlvcml0YXRlPiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNDYgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzOTcKK21zZ2lkICI8bGluaz4gYW5kIDxwYXRoPiBjYW4ndCBiZSB0aGUgc2FtZSIKK21zZ3N0ciAiPGxlZ8SDdHVyxIM+IMiZaSA8Y2FsZT4gbnUgcG90IGZpIGxhIGZlbCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNDkKK21zZ2lkICJwcmlvcml0eSBtdXN0IGJlIGFuIGludGVnZXIiCittc2dzdHIgInByaW9yaXRhdGVhIHRyZWJ1aWUgc8SDIGZpZSB1biBudW3Eg3Igw65udHJlZyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyA8bmFtZT4gPHBhdGg+IgorbXNnc3RyICItLSVzIG5lY2VzaXTEgyA8bnVtZT4gPGNhbGU+IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM3NgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIDxuYW1lPiIKK21zZ3N0ciAiLS0lcyBuZWNlc2l0xIMgPG51bWU+IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM4OAorbXNnaWQgIi0tc2xhdmUgb25seSBhbGxvd2VkIHdpdGggLS1pbnN0YWxsIgorbXNnc3RyICItLXNsYXZlIGVzdGUgcGVybWlzIGRvYXIgY3UgLS1pbnN0YWxsIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM5MAorbXNnaWQgIi0tc2xhdmUgbmVlZHMgPGxpbms+IDxuYW1lPiA8cGF0aD4iCittc2dzdHIgIi0tc2xhdmUgbmVjZXNpdMSDIDxsZWfEg3R1csSDPiA8bnVtZT4gPGNhbGU+IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM5OQorIywgYy1mb3JtYXQKK21zZ2lkICJuYW1lICVzIGlzIGJvdGggcHJpbWFyeSBhbmQgc2xhdmUiCittc2dzdHIgIm51bWVsZSAlcyBlc3RlIGF0w6J0IHByaW1hciBjw6J0IMiZaSBzY2xhdiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAibGluayAlcyBpcyBib3RoIHByaW1hcnkgYW5kIHNsYXZlIgorbXNnc3RyICJsZWfEg3R1cmEgJXMgZXN0ZSBhdMOidCBwcmltYXLEgyBjw6J0IMiZaSBzY2xhdsSDIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQyMgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGEgPGZpbGU+IGFyZ3VtZW50IgorbXNnc3RyICItLSVzIG5lY2VzaXTEgyB1biBhcmd1bWVudCA8ZmnImWllcj4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDQ4CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gb3B0aW9uIGAlcyciCittc2dzdHIgIm9wyJtpdW5lIG5lY3Vub3NjdXTEgyDigJ4lc+KAnSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0NTMKK21zZ2lkICIiCisibmVlZCAtLWRpc3BsYXksIC0tcXVlcnksIC0tbGlzdCwgLS1nZXQtc2VsZWN0aW9ucywgLS1jb25maWcsIC0tc2V0LCAtLXNldC0iCisic2VsZWN0aW9ucywgLS1pbnN0YWxsLCAtLXJlbW92ZSwgLS1hbGwsIC0tcmVtb3ZlLWFsbCBvciAtLWF1dG8iCittc2dzdHIgIiIKKyJlc3RlIG5ldm9pZSBkZSAtLWRpc3BsYXksIC0tcXVlcnksIC0tbGlzdCwgLS1nZXQtc2VsZWN0aW9ucywgLS1jb25maWcsIC0tIgorInNldCwgLS1zZXQtc2VsZWN0aW9ucywgLS1pbnN0YWxsLCAtLXJlbW92ZSwgLS1hbGwsIC0tcmVtb3ZlLWFsbCBzYXUgLS1hdXRvIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQ5MAorbXNnaWQgIjxzdGFuZGFyZCBpbnB1dD4iCittc2dzdHIgIjxzdGFuZGFyZCBpbnB1dD4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTAwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTAzCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIGFsdGVybmF0aXZlcyBmb3IgJXMuIgorbXNnc3RyICJudSBleGlzdMSDIGFsdGVybmF0aXZlIHBlbnRydSAlcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTMwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIlcyBpcyBkYW5nbGluZywgaXQgd2lsbCBiZSB1cGRhdGVkIHdpdGggYmVzdCBjaG9pY2UuIgorbXNnaWQgIiVzLyVzIGlzIGRhbmdsaW5nLCBpdCB3aWxsIGJlIHVwZGF0ZWQgd2l0aCBiZXN0IGNob2ljZS4iCittc2dzdHIgIiVzIGVzdGUgZGVzZsSDY3V0xIMsIHZhIGZpIGFjdHVhbGl6YXTEgyBjdSBjZWEgbWFpIGJ1bsSDIG9wyJtpdW5lLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MzQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIlcyBoYXMgYmVlbiBjaGFuZ2VkIChtYW51YWxseSBvciBieSBhIHNjcmlwdCkuIFN3aXRjaGluZyB0byBtYW51YWwgIgorI3wgInVwZGF0ZXMgb25seS4iCittc2dpZCAiIgorIiVzLyVzIGhhcyBiZWVuIGNoYW5nZWQgKG1hbnVhbGx5IG9yIGJ5IGEgc2NyaXB0KS4gU3dpdGNoaW5nIHRvIG1hbnVhbCAiCisidXBkYXRlcyBvbmx5LiIKK21zZ3N0ciAiIgorIiVzIGEgZm9zdCBzY2hpbWJhdMSDIChtYW51YWwgc2F1IGRlIHVuIHNjcmlwdCkuIFNlIGNvbXV0xIMgcGUgYWN0dWFsaXphcmUgIgorInN0cmljdCBtYW51YWzEgy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTQyCisjLCBjLWZvcm1hdAorbXNnaWQgInNldHRpbmcgdXAgYXV0b21hdGljIHNlbGVjdGlvbiBvZiAlcy4iCittc2dzdHIgInNlIGNvbmZpZ3VyZWF6xIMgc2VsZWPIm2lhIGF1dG9tYXTEgyBwZW50cnUgJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU1MQorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBmb3IgJXMgbm90IHJlZ2lzdGVyZWQsIG5vdCBzZXR0aW5nLiIKK21zZ3N0ciAiYWx0ZXJuYXRpdmEgJXMgcGVudHJ1ICVzIG51IGVzdGUgw65ucmVnaXN0cmF0xIMsIG51IHNlIGNvbmZpZ3VyZWF6xIMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU1NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU2MworIywgYy1mb3JtYXQKK21zZ2lkICJUaGVyZSBpcyBubyBwcm9ncmFtIHdoaWNoIHByb3ZpZGVzICVzLiIKK21zZ3N0ciAiTnUgZXhpc3TEgyBuaWNpIHVuIHByb2dyYW0gY2FyZSBzxIMgZnVybml6ZXplICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU2NSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU3NQorbXNnaWQgIk5vdGhpbmcgdG8gY29uZmlndXJlLiIKK21zZ3N0ciAiTmltaWMgZGUgY29uZmlndXJhdC4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTczCisjLCBjLWZvcm1hdAorbXNnaWQgIlRoZXJlIGlzIG9ubHkgb25lIGFsdGVybmF0aXZlIGluIGxpbmsgZ3JvdXAgJXM6ICVzIgorbXNnc3RyICJFeGlzdMSDIG8gc2luZ3VyxIMgYWx0ZXJuYXRpdsSDIMOubiBncnVwdWwgZGUgbGVnxIN0dXJpICVzOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1ODQKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgZm9yICVzIG5vdCByZWdpc3RlcmVkLCBub3QgcmVtb3ZpbmcuIgorbXNnc3RyICJhbHRlcm5hdGl2YSAlcyBwZW50cnUgJXMgbnUgZXN0ZSDDrm5yZWdpc3RyYXTEgywgbnUgc2UgyJl0ZXJnZS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTkyCisjLCBjLWZvcm1hdAorbXNnaWQgInJlbW92aW5nIG1hbnVhbGx5IHNlbGVjdGVkIGFsdGVybmF0aXZlIC0gc3dpdGNoaW5nICVzIHRvIGF1dG8gbW9kZSIKK21zZ3N0ciAic2UgyJl0ZXJnZSBhbHRlcm5hdGl2YSBzZWxlY3RhdMSDIG1hbnVhbCAtIHNlIGNvbXV0xIMgJXMgcGUgbW9kdWwgYXV0b21hdCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MTcKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImF1dG9tYXRpYyB1cGRhdGVzIG9mICVzIGFyZSBkaXNhYmxlZCwgbGVhdmluZyBpdCBhbG9uZS4iCittc2dpZCAiYXV0b21hdGljIHVwZGF0ZXMgb2YgJXMvJXMgYXJlIGRpc2FibGVkLCBsZWF2aW5nIGl0IGFsb25lLiIKK21zZ3N0ciAiIgorImFjdHVhbGl6xINyaWxlIGF1dG9tYXRlIHBlbnRydSAlcyBzdW50IGRlemFjdGl2YXRlLCB2YSBmaSBsxINzYXTEgyDDrm4gcGFjZS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjE5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ0byByZXR1cm4gdG8gYXV0b21hdGljIHVwZGF0ZXMgdXNlIGB1cGRhdGUtYWx0ZXJuYXRpdmVzIC0tYXV0byAlcycuIgorbXNnaWQgInRvIHJldHVybiB0byBhdXRvbWF0aWMgdXBkYXRlcyB1c2UgJyVzIC0tYXV0byAlcycuIgorbXNnc3RyICIiCisicGVudHJ1IGEgcmV2ZW5pIGxhIGFjdHVhbGl6YXJlYSBhdXRvbWF0xIMgZm9sb3NpyJtpIOKAnnVwZGF0ZS1hbHRlcm5hdGl2ZXMgLS0iCisiYXV0byAlc+KAnS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjM2CisjLCBjLWZvcm1hdAorbXNnaWQgInVzaW5nICVzIHRvIHByb3ZpZGUgJXMgKCVzKSBpbiAlcy4iCittc2dzdHIgInNlIGZvbG9zZciZdGUg4oCeJXPigJ0gcGVudHJ1IGEgZnVybml6YSAlcyAoJXMpIMOubiAlcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjQ0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmb3JjaW5nIHJlaW5zdGFsbGF0aW9uIG9mIGFsdGVybmF0aXZlICVzIGJlY2F1c2UgbGluayBncm91cCAlcyBpcyBicm9rZW4uIgorbXNnc3RyICIiCisic2UgZm9yyJtlYXrEgyByZWluc3RhbGFyZWEgYWx0ZXJuYXRpdmVpICVzIHBlbnRydSBjxIMgZ3J1cHVsIGRlIGxlZ8SDdHVyaSAlcyAiCisiZXN0ZSBkZWZlY3QuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjY1MQorIywgYy1mb3JtYXQKK21zZ2lkICJjdXJyZW50IGFsdGVybmF0aXZlICVzIGlzIHVua25vd24sIHN3aXRjaGluZyB0byAlcyBmb3IgbGluayBncm91cCAlcy4iCittc2dzdHIgIiIKKyJhbHRlcm5hdGl2YSBjdXJlbnTEgyAlcyBlc3RlIG5lY3Vub3NjdXTEgywgc2UgY29tdXTEgyBwZSAlcyBwZW50cnUgZ3J1cHVsIGRlICIKKyJsZWfEg3R1cmkgJXMuIgorCisjfiBtc2dpZCAiaXQgaXMgYSBtYXN0ZXIgYWx0ZXJuYXRpdmUuIgorI34gbXNnc3RyICJlc3RlIG8gYWx0ZXJuYXRpdsSDIG1hc3RlciIKKworI34gbXNnaWQgIml0IGlzIGEgc2xhdmUgb2YgJXMiCisjfiBtc2dzdHIgImVzdGUgdW4gc2NsYXYgcGVudHJ1ICVzIgorCisjfiBtc2dpZCAiY2Fubm90IHN0YXQgJXM6ICVzIgorI34gbXNnc3RyICJzdGF0IGltcG9zaWJpbCBwZW50cnUg4oCeJXPigJ06IOKAniVz4oCdIgorCisjfiBtc2dpZCAicmVhZGxpbmsoJXMpIGZhaWxlZDogJXMiCisjfiBtc2dzdHIgInJlYWRsaW5rKCVzKSBhIGXImXVhdDogJXMiCisKKyN+IG1zZ2lkICJzY2FuIG9mICVzIGZhaWxlZDogJXMiCisjfiBtc2dzdHIgInNjYW5hcmVhICVzIGEgZciZdWF0OiAlcyIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjdXRlICVzOiAlcyIKKyN+IG1zZ3N0ciAiZciZZWMgbGEgZXhlY3XIm2lhICVzOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byBtYWtlICVzIGEgc3ltbGluayB0byAlczogJXMiCisjfiBtc2dzdHIgIm51IHNlIHBvYXRlIGZhY2UgJXMgbyBsZWfEg3R1csSDIHNpbWJvbGljxIMgY8SDdHJlICVzOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsICVzIGFzICVzOiAlcyIKKyN+IG1zZ3N0ciAibnUgc2UgcG9hdGUgaW5zdGFsYSAlcyBjYSAlczogJXMiCisKKyN+IG1zZ2lkICJ3aGlsZSB3cml0aW5nICVzOiAlcyIKKyN+IG1zZ3N0ciAiw65uIHRpbXB1bCBzY3JpZXJpaSAlczogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcmVhZCAlczogJXMiCisjfiBtc2dzdHIgIm51IHNlIHBvYXRlIGNpdGkgJXM6ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGNsb3NlICVzOiAlcyIKKyN+IG1zZ3N0ciAibnUgc2UgcG9hdGUgw65uY2hpZGUgJXM6ICVzIgorCisjfiBtc2dpZCAiY2Fubm90IHdyaXRlICVzOiAlcyIKKyN+IG1zZ3N0ciAibnUgc2UgcG9hdGUgc2NyaWUgJXM6ICVzIgorCisjLCBmdXp6eQorI358IG1zZ2lkICJ1bmFibGUgdG8gb3BlbiBmaWxlICclcyciCisjfiBtc2dpZCAidW5hYmxlIHRvIHJlbmFtZSBmaWxlICclcycgdG8gJyVzJyIKKyN+IG1zZ3N0ciAibnUgc2UgcG9hdGUgZGVzY2hpZGUgZmnImWllcnVsIHN1cnPEgyDigJ4lc+KAnSIKKworI34gbXNnaWQgInVuYWJsZSB0byB1bmJ1ZmZlciBgJS4yNTVzJyIKKyN+IG1zZ3N0ciAibnUgc2UgcG9hdGUgcmVudW7Im2EgbGEgbWVtb3JpYSB0YW1wb24g4oCeJS4yNTVz4oCdIgorCisjfiBtc2dpZCAicGFydCBmaWxlIGAlLjI1MHMnIGhhcyB0cmFpbGluZyBnYXJiYWdlIgorI34gbXNnc3RyICJmaciZaWVydWwgcGFydGUg4oCeJS4yNTBz4oCdIHNlIHRlcm1pbsSDIGN1IGd1bm9haWUiCisKKyN+IG1zZ2lkICJzaXplICU3ZCBvY2N1cnMgJTVkIHRpbWVzXG4iCisjfiBtc2dzdHIgImRpbWVuc2l1bmVhICU3ZCBhcGFyZSBkZSAlNWQgb3JpXG4iCisKKyN+IG1zZ2lkICJvdXQgb2YgbWVtb3J5IHB1c2hpbmcgZXJyb3IgaGFuZGxlcjogIgorI34gbXNnc3RyICJpbnN1ZmljaWVudMSDIG1lbW9yaWUgcGVudHJ1IGV4dHJhZ2VyZWEgZGVzY3JpcHRvcnVsdWkgZGUgZXJvYXJlOiAiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gdW5sb2NrIGRwa2cgc3RhdHVzIGRhdGFiYXNlIgorI34gbXNnc3RyICJudSBzZSBwb2F0ZSBkZWJsb2NhIGJhemEgZGUgZGF0ZSBkcGtnIHN0YXR1cyIKKworI34gbXNnaWQgImNvcHkgaW5mbyBmaWxlIGAlLjI1NXMnIgorI34gbXNnc3RyICJjb3BpYXrEgyBmaciZaWVydWwgaW5mbyDigJ4lLjI1NXPigJ0iCisKKyN+IG1zZ2lkICJwYXJzZSBlcnJvciIKKyN+IG1zZ3N0ciAiZXJvYXJlIGRlIHBhcnNhcmUiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gd3JpdGUgcGFyc2luZyB3YXJuaW5nIgorI34gbXNnc3RyICJlyJllYyBsYSBzY3JpZXJlYSBhdmVydGlzbWVudHVsdWkgbGEgcGFyc2FyZSIKKworI34gbXNnaWQgInVuYWJsZSB0byBsb2NrIHRyaWdnZXJzIGFyZWEiCisjfiBtc2dzdHIgIm51IHNlIHBvYXRlIGJsb2NhIHpvbmEgZGVjbGFuyJlhdG9yaWxvciIKKworI34gbXNnaWQgImZhaWxlZCB0byBydW4gJXMgKCUuMjUwcykiCisjfiBtc2dzdHIgImXImWVjIGxhIHJ1bGFyZWEgbHVpICVzICglLjI1MHMpIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgc2hlbGwgKCUuMjUwcykiCisjfiBtc2dzdHIgImXImWVjIGxhIGV4ZWMgcGVudHJ1IHNoZWxsICglLjI1MHMpIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGNoZWNrIGZvciBleGlzdGVuY2Ugb2YgYCUuMjUwcyciCisjfiBtc2dzdHIgIm51IHNlIHBvYXRlIHZlcmlmaWNhIGV4aXN0ZW7Im2EgbHVpIOKAniUuMjUwc+KAnSIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIHJtIGZvciBjbGVhbnVwIgorI34gbXNnc3RyICJlyJllYyBsYSBleGVjIHJtIHBlbnRydSBjdXLEg8ibYXJlIgorCisjfiBtc2dpZCAiIgorI34gIiVzIGRlYnVnZ2luZyBvcHRpb24sIC0tZGVidWc9PG9jdGFsPiBvciAtRDxvY3RhbD46XG4iCisjfiAiXG4iCisjfiAiIG51bWJlciAgcmVmLiBpbiBzb3VyY2UgICBkZXNjcmlwdGlvblxuIgorI34gIiAgICAgIDEgICBnZW5lcmFsICAgICAgICAgICBHZW5lcmFsbHkgaGVscGZ1bCBwcm9ncmVzcyBpbmZvcm1hdGlvblxuIgorI34gIiAgICAgIDIgICBzY3JpcHRzICAgICAgICAgICBJbnZvY2F0aW9uIGFuZCBzdGF0dXMgb2YgbWFpbnRhaW5lciBzY3JpcHRzXG4iCisjfiAiICAgICAxMCAgIGVhY2hmaWxlICAgICAgICAgIE91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZFxuIgorI34gIiAgICAxMDAgICBlYWNoZmlsZWRldGFpbCAgICBMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZFxuIgorI34gIiAgICAgMjAgICBjb25mZiAgICAgICAgICAgICBPdXRwdXQgZm9yIGVhY2ggY29uZmlndXJhdGlvbiBmaWxlXG4iCisjfiAiICAgIDIwMCAgIGNvbmZmZGV0YWlsICAgICAgIExvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZVxuIgorI34gIiAgICAgNDAgICBkZXBjb24gICAgICAgICAgICBEZXBlbmRlbmNpZXMgYW5kIGNvbmZsaWN0c1xuIgorI34gIiAgICA0MDAgICBkZXBjb25kZXRhaWwgICAgICBMb3RzIG9mIGRlcGVuZGVuY2llcy9jb25mbGljdHMgb3V0cHV0XG4iCisjfiAiICAxMDAwMCAgIHRyaWdnZXJzICAgICAgICAgIFRyaWdnZXIgYWN0aXZhdGlvbiBhbmQgcHJvY2Vzc2luZ1xuIgorI34gIiAgMjAwMDAgICB0cmlnZ2Vyc2RldGFpbCAgICBMb3RzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnNcbiIKKyN+ICIgIDQwMDAwICAgdHJpZ2dlcnNzdHVwaWQgICAgU2lsbHkgYW1vdW50cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzXG4iCisjfiAiICAgMTAwMCAgIHZlcnl2ZXJib3NlICAgICAgIExvdHMgb2YgZHJpdmVsIGFib3V0IGVnIHRoZSBkcGtnL2luZm8gIgorI34gImRpcmVjdG9yeVxuIgorI34gIiAgIDIwMDAgICBzdHVwaWRseXZlcmJvc2UgICBJbnNhbmUgYW1vdW50cyBvZiBkcml2ZWxcbiIKKyN+ICJcbiIKKyN+ICJEZWJ1Z2dpbmcgb3B0aW9ucyBhcmUgYmUgbWl4ZWQgdXNpbmcgYml0d2lzZS1vci5cbiIKKyN+ICJOb3RlIHRoYXQgdGhlIG1lYW5pbmdzIGFuZCB2YWx1ZXMgYXJlIHN1YmplY3QgdG8gY2hhbmdlLlxuIgorI34gbXNnc3RyICIiCisjfiAiJXMgb3DIm2l1bmkgZGUgZGVwYW5hcmUsIC0tZGVidWc9PG9jdGFsPiBzYXUgLUQ8b2N0YWw+OlxuIgorI34gIlxuIgorI34gIiAgbnVtxINyICByZWYuIMOubiBzdXJzZSAgICBkZXNjcmllcmVcbiIKKyN+ICIgICAgICAxICAgZ2VuZXJhbCAgICAgICAgICAgSW5mb3JtYcibaWkgYWp1dMSDdG9hcmUgZ2VuZXJhbGUgZGVzcHJlICIKKyN+ICJwcm9ncmVzXG4iCisjfiAiICAgICAgMiAgIHNjcmlwdHMgICAgICAgICAgIEFwZWx1bCDImWkgc3RhcmVhIHNjcmlwdHVyaWxvciByZXNwb25zYWJpbHVsdWkgIgorI34gInBhY2hldHVsdWlcbiIKKyN+ICIgICAgIDEwICAgZWFjaGZpbGUgICAgICAgICAgSWXImWlyZWEgcGVudHJ1IGZpZWNhcmUgZmnImWllciBwcmVsdWNyYXRcbiIKKyN+ICIgICAgMTAwICAgZWFjaGZpbGVkZXRhaWwgICAgTXVsdGUgZGV0YWxpaSBwZW50cnUgZmllY2FyZSBmaciZaWVyICIKKyN+ICJwcmVsdWNyYXRcbiIKKyN+ICIgICAgIDIwICAgY29uZmYgICAgICAgICAgICAgSWXImWlyZWEgcGVudHJ1IGZpZWNhcmUgZmnImWllciBkZSBjb25maWd1cmFyZVxuIgorI34gIiAgICAyMDAgICBjb25mZmRldGFpbCAgICAgICBNdWx0ZSBkZXRhbGlpIHBlbnRydSBmaWVjYXJlIGZpyJlpZXIgZGUgIgorI34gImNvbmZpZ3VyYXJlXG4iCisjfiAiICAgICA0MCAgIGRlcGNvbiAgICAgICAgICAgIERlcGVuZGVuyJtlIMiZaSBjb25mbGljdGVcbiIKKyN+ICIgICAgNDAwICAgZGVwY29uZGV0YWlsICAgICAgTXVsdGUgZGV0YWxpaSBkZXNwcmUgZGVwZW5kZW7Im2UgyJlpIGNvbmZsaWN0ZVxuIgorI34gIiAgMTAwMDAgICB0cmlnZ2VycyAgICAgICAgICBBY3RpdmFyZWEgZGVjbGFuyJlhdG9yaWxvciDImWkgcHJvY2VzYXJlYSBsb3JcbiIKKyN+ICIgIDIwMDAwICAgdHJpZ2dlcnNkZXRhaWwgICAgTXVsdGUgZGV0YWxpaSBkZXNwcmUgZGVjbGFuyJlhdG9yaVxuIgorI34gIiAgNDAwMDAgICB0cmlnZ2Vyc3N0dXBpZCAgICBBYnN1cmQgZGUgbXVsdGUgZGV0YWxpaSBkZXNwcmUgZGVjbGFuyJlhdG9yaVxuIgorI34gIiAgIDEwMDAgICB2ZXJ5dmVyYm9zZSAgICAgICBNdWx0IG1haSBtdWx0ZSBkZXRhbGlpIGV4LiBkaXJlY3RvciBkcGtnLyIKKyN+ICJpbmZvXG4iCisjfiAiICAgMjAwMCAgIHN0dXBpZGx5dmVyYm9zZSAgIENhbnRpdMSDyJtpIGFic3VyZGUgZGUgaW5mb3JtYcibaWlcbiIKKyN+ICJcbiIKKyN+ICJPcMibaXVuaWxlIGRlIGRlcGFuYXJlIHBvdCBmaSBjb21iaW5hdGUgZm9sb3NpbmQg4oCec2F14oCdIHBlIGJpyJtpLlxuIgorI34gIkEgc2Ugbm90YSBjxIMgw65uyJtlbGVzdWwgyJlpIHZhbG9yaWxlIHNlIHBvdCBzY2hpbWJhLlxuIgorCisjfnwgbXNnaWQgIiIKKyN+fCAiJXMgZm9yY2luZyBvcHRpb25zIC0gY29udHJvbCBiZWhhdmlvdXIgd2hlbiBwcm9ibGVtcyBmb3VuZDpcbiIKKyN+fCAiICB3YXJuIGJ1dCBjb250aW51ZTogIC0tZm9yY2UtPHRoaW5nPiw8dGhpbmc+LC4uLlxuIgorI358ICIgIHN0b3Agd2l0aCBlcnJvcjogICAgLS1yZWZ1c2UtPHRoaW5nPiw8dGhpbmc+LC4uLiB8IC0tbm8tZm9yY2UtIgorI358ICI8dGhpbmc+LC4uLlxuIgorI358ICIgRm9yY2luZyB0aGluZ3M6XG4iCisjfnwgIiAgYWxsIFshXSAgICAgICAgICAgICAgICBTZXQgYWxsIGZvcmNlIG9wdGlvbnNcbiIKKyN+fCAiICBkb3duZ3JhZGUgWypdICAgICAgICAgIFJlcGxhY2UgYSBwYWNrYWdlIHdpdGggYSBsb3dlciB2ZXJzaW9uXG4iCisjfnwgIiAgY29uZmlndXJlLWFueSAgICAgICAgICBDb25maWd1cmUgYW55IHBhY2thZ2Ugd2hpY2ggbWF5IGhlbHAgdGhpcyBvbmVcbiIKKyN+fCAiICBob2xkICAgICAgICAgICAgICAgICAgIFByb2Nlc3MgaW5jaWRlbnRhbCBwYWNrYWdlcyBldmVuIHdoZW4gb24gaG9sZFxuIgorI358ICIgIGJhZC1wYXRoICAgICAgICAgICAgICAgUEFUSCBpcyBtaXNzaW5nIGltcG9ydGFudCBwcm9ncmFtcywgcHJvYmxlbXMgIgorI358ICJsaWtlbHlcbiIKKyN+fCAiICBub3Qtcm9vdCAgICAgICAgICAgICAgIFRyeSB0byAoZGUpaW5zdGFsbCB0aGluZ3MgZXZlbiB3aGVuIG5vdCByb290XG4iCisjfnwgIiAgb3ZlcndyaXRlICAgICAgICAgICAgICBPdmVyd3JpdGUgYSBmaWxlIGZyb20gb25lIHBhY2thZ2Ugd2l0aCBhbm90aGVyXG4iCisjfnwgIiAgb3ZlcndyaXRlLWRpdmVydGVkICAgICBPdmVyd3JpdGUgYSBkaXZlcnRlZCBmaWxlIHdpdGggYW4gdW5kaXZlcnRlZCAiCisjfnwgInZlcnNpb25cbiIKKyN+fCAiICBiYWQtdmVyaWZ5ICAgICAgICAgICAgIEluc3RhbGwgYSBwYWNrYWdlIGV2ZW4gaWYgaXQgZmFpbHMgYXV0aGVudGljaXR5ICIKKyN+fCAiY2hlY2tcbiIKKyN+fCAiICBkZXBlbmRzLXZlcnNpb24gWyFdICAgIFR1cm4gZGVwZW5kZW5jeSB2ZXJzaW9uIHByb2JsZW1zIGludG8gd2FybmluZ3NcbiIKKyN+fCAiICBkZXBlbmRzIFshXSAgICAgICAgICAgIFR1cm4gYWxsIGRlcGVuZGVuY3kgcHJvYmxlbXMgaW50byB3YXJuaW5nc1xuIgorI358ICIgIGNvbmZuZXcgWyFdICAgICAgICAgICAgQWx3YXlzIHVzZSB0aGUgbmV3IGNvbmZpZyBmaWxlcywgZG9uJ3QgcHJvbXB0XG4iCisjfnwgIiAgY29uZm9sZCBbIV0gICAgICAgICAgICBBbHdheXMgdXNlIHRoZSBvbGQgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHRcbiIKKyN+fCAiICBjb25mZGVmIFshXSAgICAgICAgICAgIFVzZSB0aGUgZGVmYXVsdCBvcHRpb24gZm9yIG5ldyBjb25maWcgZmlsZXMgaWYgIgorI358ICJvbmVcbiIKKyN+fCAiICAgICAgICAgICAgICAgICAgICAgICAgIGlzIGF2YWlsYWJsZSwgZG9uJ3QgcHJvbXB0LiBJZiBubyBkZWZhdWx0IGNhbiAiCisjfnwgImJlIGZvdW5kLFxuIgorI358ICIgICAgICAgICAgICAgICAgICAgICAgICAgeW91IHdpbGwgYmUgcHJvbXB0ZWQgdW5sZXNzIG9uZSBvZiB0aGUgY29uZm9sZCAiCisjfnwgIm9yXG4iCisjfnwgIiAgICAgICAgICAgICAgICAgICAgICAgICBjb25mbmV3IG9wdGlvbnMgaXMgYWxzbyBnaXZlblxuIgorI358ICIgIGNvbmZtaXNzIFshXSAgICAgICAgICAgQWx3YXlzIGluc3RhbGwgbWlzc2luZyBjb25maWcgZmlsZXNcbiIKKyN+fCAiICBjb25mYXNrIFshXSAgICAgICAgICAgIE9mZmVyIHRvIHJlcGxhY2UgY29uZmlnIGZpbGVzIHdpdGggbm8gbmV3ICIKKyN+fCAidmVyc2lvbnNcbiIKKyN+fCAiICBicmVha3MgWyFdICAgICAgICAgICAgIEluc3RhbGwgZXZlbiBpZiBpdCB3b3VsZCBicmVhayBhbm90aGVyIHBhY2thZ2VcbiIKKyN+fCAiICBjb25mbGljdHMgWyFdICAgICAgICAgIEFsbG93IGluc3RhbGxhdGlvbiBvZiBjb25mbGljdGluZyBwYWNrYWdlc1xuIgorI358ICIgIGFyY2hpdGVjdHVyZSBbIV0gICAgICAgUHJvY2VzcyBldmVuIHBhY2thZ2VzIHdpdGggd3JvbmcgYXJjaGl0ZWN0dXJlXG4iCisjfnwgIiAgb3ZlcndyaXRlLWRpciBbIV0gICAgICBPdmVyd3JpdGUgb25lIHBhY2thZ2UncyBkaXJlY3Rvcnkgd2l0aCAiCisjfnwgImFub3RoZXIncyBmaWxlXG4iCisjfnwgIiAgcmVtb3ZlLXJlaW5zdHJlcSBbIV0gICBSZW1vdmUgcGFja2FnZXMgd2hpY2ggcmVxdWlyZSBpbnN0YWxsYXRpb25cbiIKKyN+fCAiICByZW1vdmUtZXNzZW50aWFsIFshXSAgIFJlbW92ZSBhbiBlc3NlbnRpYWwgcGFja2FnZVxuIgorI358ICJcbiIKKyN+fCAiV0FSTklORyAtIHVzZSBvZiBvcHRpb25zIG1hcmtlZCBbIV0gY2FuIHNlcmlvdXNseSBkYW1hZ2UgeW91ciAiCisjfnwgImluc3RhbGxhdGlvbi5cbiIKKyN+fCAiRm9yY2luZyBvcHRpb25zIG1hcmtlZCBbKl0gYXJlIGVuYWJsZWQgYnkgZGVmYXVsdC5cbiIKKyN+IG1zZ2lkICIiCisjfiAiJXMgZm9yY2luZyBvcHRpb25zIC0gY29udHJvbCBiZWhhdmlvdXIgd2hlbiBwcm9ibGVtcyBmb3VuZDpcbiIKKyN+ICIgIHdhcm4gYnV0IGNvbnRpbnVlOiAgLS1mb3JjZS08dGhpbmc+LDx0aGluZz4sLi4uXG4iCisjfiAiICBzdG9wIHdpdGggZXJyb3I6ICAgIC0tcmVmdXNlLTx0aGluZz4sPHRoaW5nPiwuLi4gfCAtLW5vLWZvcmNlLSIKKyN+ICI8dGhpbmc+LC4uLlxuIgorI34gIiBGb3JjaW5nIHRoaW5nczpcbiIKKyN+ICIgIGFsbCBbIV0gICAgICAgICAgICAgICAgU2V0IGFsbCBmb3JjZSBvcHRpb25zXG4iCisjfiAiICBkb3duZ3JhZGUgWypdICAgICAgICAgIFJlcGxhY2UgYSBwYWNrYWdlIHdpdGggYSBsb3dlciB2ZXJzaW9uXG4iCisjfiAiICBjb25maWd1cmUtYW55ICAgICAgICAgIENvbmZpZ3VyZSBhbnkgcGFja2FnZSB3aGljaCBtYXkgaGVscCB0aGlzIG9uZVxuIgorI34gIiAgaG9sZCAgICAgICAgICAgICAgICAgICBQcm9jZXNzIGluY2lkZW50YWwgcGFja2FnZXMgZXZlbiB3aGVuIG9uIGhvbGRcbiIKKyN+ICIgIGJhZC1wYXRoICAgICAgICAgICAgICAgUEFUSCBpcyBtaXNzaW5nIGltcG9ydGFudCBwcm9ncmFtcywgcHJvYmxlbXMgIgorI34gImxpa2VseVxuIgorI34gIiAgbm90LXJvb3QgICAgICAgICAgICAgICBUcnkgdG8gKGRlKWluc3RhbGwgdGhpbmdzIGV2ZW4gd2hlbiBub3Qgcm9vdFxuIgorI34gIiAgb3ZlcndyaXRlICAgICAgICAgICAgICBPdmVyd3JpdGUgYSBmaWxlIGZyb20gb25lIHBhY2thZ2Ugd2l0aCBhbm90aGVyXG4iCisjfiAiICBvdmVyd3JpdGUtZGl2ZXJ0ZWQgICAgIE92ZXJ3cml0ZSBhIGRpdmVydGVkIGZpbGUgd2l0aCBhbiB1bmRpdmVydGVkICIKKyN+ICJ2ZXJzaW9uXG4iCisjfiAiICBiYWQtdmVyaWZ5ICAgICAgICAgICAgIEluc3RhbGwgYSBwYWNrYWdlIGV2ZW4gaWYgaXQgZmFpbHMgYXV0aGVudGljaXR5ICIKKyN+ICJjaGVja1xuIgorI34gIiAgZGVwZW5kcy12ZXJzaW9uIFshXSAgICBUdXJuIGRlcGVuZGVuY3kgdmVyc2lvbiBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzXG4iCisjfiAiICBkZXBlbmRzIFshXSAgICAgICAgICAgIFR1cm4gYWxsIGRlcGVuZGVuY3kgcHJvYmxlbXMgaW50byB3YXJuaW5nc1xuIgorI34gIiAgY29uZm5ldyBbIV0gICAgICAgICAgICBBbHdheXMgdXNlIHRoZSBuZXcgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHRcbiIKKyN+ICIgIGNvbmZvbGQgWyFdICAgICAgICAgICAgQWx3YXlzIHVzZSB0aGUgb2xkIGNvbmZpZyBmaWxlcywgZG9uJ3QgcHJvbXB0XG4iCisjfiAiICBjb25mZGVmIFshXSAgICAgICAgICAgIFVzZSB0aGUgZGVmYXVsdCBvcHRpb24gZm9yIG5ldyBjb25maWcgZmlsZXMgaWYgIgorI34gIm9uZVxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICBpcyBhdmFpbGFibGUsIGRvbid0IHByb21wdC4gSWYgbm8gZGVmYXVsdCBjYW4gYmUgIgorI34gImZvdW5kLFxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICB5b3Ugd2lsbCBiZSBwcm9tcHRlZCB1bmxlc3Mgb25lIG9mIHRoZSBjb25mb2xkICIKKyN+ICJvclxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICBjb25mbmV3IG9wdGlvbnMgaXMgYWxzbyBnaXZlblxuIgorI34gIiAgY29uZm1pc3MgWyFdICAgICAgICAgICBBbHdheXMgaW5zdGFsbCBtaXNzaW5nIGNvbmZpZyBmaWxlc1xuIgorI34gIiAgY29uZmFzayBbIV0gICAgICAgICAgICBPZmZlciB0byByZXBsYWNlIGNvbmZpZyBmaWxlcyB3aXRoIG5vIG5ldyAiCisjfiAidmVyc2lvbnNcbiIKKyN+ICIgIGJyZWFrcyBbIV0gICAgICAgICAgICAgSW5zdGFsbCBldmVuIGlmIGl0IHdvdWxkIGJyZWFrIGFub3RoZXIgcGFja2FnZVxuIgorI34gIiAgY29uZmxpY3RzIFshXSAgICAgICAgICBBbGxvdyBpbnN0YWxsYXRpb24gb2YgY29uZmxpY3RpbmcgcGFja2FnZXNcbiIKKyN+ICIgIGFyY2hpdGVjdHVyZSBbIV0gICAgICAgUHJvY2VzcyBldmVuIHBhY2thZ2VzIHdpdGggd3JvbmcgYXJjaGl0ZWN0dXJlXG4iCisjfiAiICBvdmVyd3JpdGUtZGlyIFshXSAgICAgIE92ZXJ3cml0ZSBvbmUgcGFja2FnZSdzIGRpcmVjdG9yeSB3aXRoIGFub3RoZXIncyAiCisjfiAiZmlsZVxuIgorI34gIiAgdW5zYWZlLWlvIFshXSAgICAgICAgICBEbyBub3QgcGVyZm9ybSBzYWZlIEkvTyBvcGVyYXRpb25zIHdoZW4gIgorI34gInVucGFja2luZ1xuIgorI34gIiAgcmVtb3ZlLXJlaW5zdHJlcSBbIV0gICBSZW1vdmUgcGFja2FnZXMgd2hpY2ggcmVxdWlyZSBpbnN0YWxsYXRpb25cbiIKKyN+ICIgIHJlbW92ZS1lc3NlbnRpYWwgWyFdICAgUmVtb3ZlIGFuIGVzc2VudGlhbCBwYWNrYWdlXG4iCisjfiAiXG4iCisjfiAiV0FSTklORyAtIHVzZSBvZiBvcHRpb25zIG1hcmtlZCBbIV0gY2FuIHNlcmlvdXNseSBkYW1hZ2UgeW91ciAiCisjfiAiaW5zdGFsbGF0aW9uLlxuIgorI34gIkZvcmNpbmcgb3B0aW9ucyBtYXJrZWQgWypdIGFyZSBlbmFibGVkIGJ5IGRlZmF1bHQuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICIlcyBvcMibaXVuaSBkZSBmb3LIm2FyZSAtIGNvbnRyb2xlYXrEgyBjb21wb3J0YW1lbnR1bCDDrm4gY2F6dWwgdW5vciAiCisjfiAicHJvYmxlbWU6XG4iCisjfiAiICBhdmVydGl6ZWF6xIMgZGFyIGNvbnRpbnXEgzogIC0tZm9yY2UtPGFjyJtpdW5lPiw8YWPIm2l1bmU+LC4uLlxuIgorI34gIiAgb3ByZciZdGUgY3UgbWVzYWogZGUgZXJvYXJlOiAgICAtLXJlZnVzZS08YWPIm2l1bmU+LDxhY8ibaXVuZT4sLi4uIHwgLS1uby0iCisjfiAiZm9yY2UtPGFjyJtpdW5lPiwuLi5cbiIKKyN+ICIgRm9yyJthcmVhIGFjyJtpdW5pbG9yOlxuIgorI34gIiAgYWxsIFshXSAgICAgICAgICAgICAgICBBY3RpdmVhesSDIHRvYXRlIG9wyJtpdW5pbGUgZGUgZm9yyJthcmVcbiIKKyN+ICIgIGRvd25ncmFkZSBbKl0gICAgICAgICAgw45ubG9jdWllyJl0ZSB1biBwYWNoZXQgY3UgbyB2ZXJzaXVuZSBtYWkgdmVjaGVcbiIKKyN+ICIgIGNvbmZpZ3VyZS1hbnkgICAgICAgICAgQ29uZmlndXJlYXrEgyBvcmljZSBwYWNoZXQgY2FyZSBsLWFyIHB1dGVhIGFqdXRhICIKKyN+ICJwZSBhY2VzdGFcbiIKKyN+ICIgIGhvbGQgICAgICAgICAgICAgICAgICAgUHJvY2VzZWF6xIMgcGFjaGV0ZWxlIMOubnTDomxuaXRlIGNoaWFyIMiZaSDDrm4gIgorI34gInNpdHVhyJtpYSBkZSBwxINzdHJhcmVcbiIKKyN+ICIgIGJhZC1wYXRoICAgICAgICAgICAgICAgbGlwc2VzYyBwcm9ncmFtZSBpbXBvcnRhbnRlIGRpbiBQQVRILCBwb3QgYXDEg3JlYSAiCisjfiAicHJvYmxlbWVcbiIKKyN+ICIgIG5vdC1yb290ICAgICAgICAgICAgICAgw45uY2VhcmPEgyBzxIMgKGRleilpbnN0YWxlemkgY2hpYXIgZsSDcsSDIGRyZXB0dXJpICIKKyN+ICJyb290XG4iCisjfiAiICBvdmVyd3JpdGUgICAgICAgICAgICAgIFN1cHJhc2NyaWUgdW4gZmnImWllciBjdSBmaciZaWVyIGRpbiBhbHQgcGFjaGV0XG4iCisjfiAiICBvdmVyd3JpdGUtZGl2ZXJ0ZWQgICAgIFN1cHJhc2NyaWUgdW4gZmnImWllciByZWRpcmVjdGF0IGN1IG8gdmVyc2l1bmUgIgorI34gIm5lcmVkaXJlY3RhdMSDXG4iCisjfiAiICBiYWQtdmVyaWZ5ICAgICAgICAgICAgIEluc3RhbGVhesSDIHVuIHBhY2hldCBjaGlhciBkYWPEgyBlyJl1ZWF6xIMgbGEgIgorI34gInZlcmlmaWNhcmVhIGF1dGVudGljaXTEg8ibaWlcbiIKKyN+ICIgIGRlcGVuZHMtdmVyc2lvbiBbIV0gICAgVHJhbnNmb3JtxIMgcHJvYmxlbWVsZSBkZSB2ZXJzaXVuZSBsYSBkZXBlbmRlbsibZSAiCisjfiAiw65uIGF2ZXJ0aXNtZW50ZVxuIgorI34gIiAgZGVwZW5kcyBbIV0gICAgICAgICAgICBUcmFuc2Zvcm3EgyB0b2F0ZSBwcm9ibGVtZWxlIGRlIGRlcGVuZGVuyJtlIMOubiAiCisjfiAiYXZlcnRpc21lbnRlXG4iCisjfiAiICBjb25mbmV3IFshXSAgICAgICAgICAgIEZvbG9zZciZdGUgbWVyZXUgZmnImWllcmVsZSBub2kgZGUgY29uZmlndXJhcmUsICIKKyN+ICJmxINyxIMgYSBjb25maXJtYVxuIgorI34gIiAgY29uZm9sZCBbIV0gICAgICAgICAgICBGb2xvc2XImXRlIG1lcmV1IGZpyJlpZXJlbGUgdmVjaGkgZGUgY29uZmlndXJhcmUsICIKKyN+ICJmxINyxIMgYSBjb25maXJtYVxuIgorI34gIiAgY29uZmRlZiBbIV0gICAgICAgICAgICBGb2xvc2XImXRlIG9wyJtpdW5lYSBpbXBsaWNpdMSDIHBlbnRydSBmaciZaWVyZWxlICIKKyN+ICJub2kgZGUgY29uZmlndXJhcmVcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgRGFjxIMgZXN0ZSBjYXp1bCwgbnUgZGVyYW5qYS4gRGFjxIMgbnUgZXN0ZSBnxINzaXTEgyAiCisjfiAibmljaSBvIG9wyJtpdW5lIGltcGxpY2l0xIMsXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIHZlyJtpIGZpIMOubnRyZWJhdCwgZXhjZXB0w6JuZCBjYXp1bCDDrm4gY2FyZSAiCisjfiAib3DIm2l1bmVhIGNvbmZvbGRcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgc2F1IGNvbmZuZXcgZXN0ZSBkZSBhc2VtZW5lYSBkYXTEg1xuIgorI34gIiAgY29uZm1pc3MgWyFdICAgICAgICAgICBJbnN0YWxlYXrEgyDDrm50b3RkZWF1bmEgZmnImWllcmVsZSBkZSBjb25maWd1cmFyZVxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICBsaXBzxINcbiIKKyN+ICIgIGJyZWFrcyBbIV0gICAgICAgICAgICAgSW5zdGFsZWF6xIMgY2hpYXIgZGFjxIMgYXIgY29ydXBlIHVuIGFsdCBwYWNoZXRcbiIKKyN+ICIgIGNvbmZsaWN0cyBbIV0gICAgICAgICAgUGVybWl0ZSBpbnN0YWxhcmVhIGRlIHBhY2hldGUgY29uZmxpY3R1YWxlXG4iCisjfiAiICBjb25mYXNrIFshXSAgICAgICAgICAgIMOObnRyZWFixIMgZGFjxIMgc2Ugw65ubG9jdWllc2MgZmnImWllcmVsZSBkZSAiCisjfiAiY29uZmlndXJhcmUgZsSDcsSDIHZlcnNpdW5pIG5vaVxuIgorI34gIiAgYXJjaGl0ZWN0dXJlIFshXSAgICAgICBQcm9jZXNlYXrEgyBjaGlhciBwYWNoZXRlIGN1IGFyaGl0ZWN0dXLEgyBncmXImWl0xINcbiIKKyN+ICIgIG92ZXJ3cml0ZS1kaXIgWyFdICAgICAgUmVzY3JpZSBkaXJlY3RvcnVsIHVudWkgcGFjaGV0IGN1IGZpyJlpZXJ1bCBhbHR1aSAiCisjfiAicGFjaGV0XG4iCisjfiAiICB1bnNhZmUtaW8gWyFdICAgICAgICAgIE51IGV4ZWN1dMSDIG9wZXJhyJtpdW5pIHNpZ3VyZSBkZSBJL08gbGEgIgorI34gImRlc3BhY2hldGFyZVxuIgorI34gIiAgcmVtb3ZlLXJlaW5zdHJlcSBbIV0gICDImHRlcmdlIHBhY2hldGVsZSBjYXJlIGF1IG5ldm9pZSBkZSBpbnN0YWxhcmVcbiIKKyN+ICIgIHJlbW92ZS1lc3NlbnRpYWwgWyFdICAgyJh0ZXJnZSB1biBwYWNoZXQgZXNlbsibaWFsXG4iCisjfiAiXG4iCisjfiAiQVZFUlRJU01FTlQgLSBvcMibaXVuaWxlIG1hcmNhdGUgY3UgWyFdIHBvdCBkZXRlcmlvcmEgZ3JhdiBpbnN0YWxhcmVhLlxuIgorI34gIk9wyJtpdW5pbGUgZGUgZm9yyJthcmUgbWFyY2F0ZSBjdSBbKl0gc3VudCBhY3RpdmF0ZSBpbXBsaWNpdC5cbiIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIGRwa2ctc3BsaXQgdG8gc2VlIGlmIGl0J3MgcGFydCBvZiBhIG11bHRpcGFydGVyIgorI34gbXNnc3RyICIiCisjfiAiZciZZWMgbGEgZXhlY3XIm2lhIGRwa2ctc3BsaXQgcGVudHJ1IGEgdmVkZWEgZGFjxIMgZXN0ZSBwYXJ0ZSBkaW50ci11biAiCisjfiAibXVsdGl2b2x1bSIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjbCBkZWJzaWctdmVyaWZ5IgorI34gbXNnc3RyICJlyJllYyBsYSBleGVjbCDDrm4gZGVic2lnLXZlcmlmeSIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIGRwa2ctZGViIHRvIGV4dHJhY3QgY29udHJvbCBpbmZvcm1hdGlvbiIKKyN+IG1zZ3N0ciAiIgorI34gImXImWVjIGxhIGV4ZWN1yJtpYSBsdWkgZHBrZy1kZWIgcGVudHJ1IGEgZXh0cmFnZSBpbmZvcm1hyJtpYSBkZSBjb250cm9sIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGV4ZWMgZHBrZy1kZWIgdG8gZ2V0IGZpbGVzeXN0ZW0gYXJjaGl2ZSIKKyN+IG1zZ3N0ciAiIgorI34gImV4ZWMgZHBrZy1kZWIgaW1wb3NpYmlsIHBlbnRydSBhIG9iyJtpbmUgYXJoaXZhIHNpc3RlbXVsdWkgZGUgZmnImWllcmUiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gZGVsZXRlIGRpc2FwcGVhcmluZyBjb250cm9sIGluZm8gZmlsZSBgJS4yNTBzJyIKKyN+IG1zZ3N0ciAiIgorI34gIm51IHNlIHBvYXRlIMiZdGVyZ2UgZmnImWllcnVsIGluZm8gZGUgY29udHJvbCBwZSBjYWxlIGRlIGRpc3BhcmnIm2llIOKAniUuMjUwc+KAnSIKKworI34gbXNnaWQgImRwa2c6ICVzIG5vdCBmb3VuZC5cbiIKKyN+IG1zZ3N0ciAiZHBrZzogJXMgbmVnxINzaXQuXG4iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gLi4uL0RFQklBTiIKKyN+IG1zZ3N0ciAiZciZZWMgbGEgc2NoaW1iYXJlYSBkaXJlY3RvcnVsdWkgw65uIC4uLi9ERUJJQU4iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyB0YXIgLWNmIgorI34gbXNnc3RyICJlyJllYyBsYSBleGVjIHRhciAtY2YiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gbWFrZSB0bXBmaWxlIChjb250cm9sKSIKKyN+IG1zZ3N0ciAiZciZZWMgbGEgY3JlYXJlYSB0bXBmaWxlIChjb250cm9sKSIKKworI34gbXNnaWQgImZhaWxlZCB0byB1bmxpbmsgdG1wZmlsZSAoY29udHJvbCksICVzIgorI34gbXNnc3RyICJlyJllYyBsYSB1bmxpbmsgdGVtcGZpbGUgKGNvbnRyb2wpLCAlcyIKKworI34gbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdG1wZmlsZSAoY29udHJvbCkiCisjfiBtc2dzdHIgImXImWVjIGxhIHJld2luZCB0bXBmaWxlIChjb250cm9sKSIKKworI34gbXNnaWQgImZhaWxlZCB0byBmc3RhdCB0bXBmaWxlIChjb250cm9sKSIKKyN+IG1zZ3N0ciAiZciZZWMgbGEgZnN0YXQgdG1wZmlsZSAoY29udHJvbCkiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBmaW5kIgorI34gbXNnc3RyICJlyJllYyBsYSBleGVjIGZpbmQiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBzaCAtYyBtdiBmb28vKiAmYyIKKyN+IG1zZ3N0ciAiZciZZWMgbGEgZXhlYyBzaCAtYyBtdiBmb28vKiAmYyIKKworI34gbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtICUuMjUwcyBsZW5ndGggY29udGFpbnMgbnVsbHMiCisjfiBtc2dzdHIgImZpyJlpZXJ1bCDigJ4lLjI1MHPigJ0gZXN0ZSBjb3J1cHQgLSAlLjI1MHMgbHVuZ2ltZWEgY29uyJtpbmUgbnVsbC11cmkiCisKKyN+IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBuZWdhdGl2ZSBtZW1iZXIgbGVuZ3RoICV6aSIKKyN+IG1zZ3N0ciAiZmnImWllcnVsIOKAniUuMjUwc+KAnSBlc3RlIGNvcnVwdCAtIG1lbWJydSBjdSBsdW5naW1lIG5lZ2F0aXbEgyAlemkiCisKKyN+IG1zZ2lkICJmYWlsZWQgZ2V0dGluZyB0aGUgY3VycmVudCBmaWxlIHBvc2l0aW9uIgorI34gbXNnc3RyICJlyJllYyBsYSBvYsibaW5lcmVhIHBvemnIm2llaSBjdXJlbnRlIMOubiBmaciZaWVyIgorCisjfiBtc2dpZCAiZmFpbGVkIHNldHRpbmcgdGhlIGN1cnJlbnQgZmlsZSBwb3NpdGlvbiIKKyN+IG1zZ3N0ciAiZciZZWMgbGEgbWVtb3JhcmVhIHBvemnIm2llaSBjdXJlbnRlIMOubiBmaciZaWVyIgorCisjfiBtc2dpZCAidmVyc2lvbiBudW1iZXIiCisjfiBtc2dzdHIgIm51bcSDciB2ZXJzaXVuZSIKKworI34gbXNnaWQgIm1lbWJlciBsZW5ndGgiCisjfiBtc2dzdHIgImx1bmdpbWVhIG1lbWJydWx1aSIKKworI34gbXNnaWQgImhlYWRlciBpbmZvIG1lbWJlciIKKyN+IG1zZ3N0ciAibWVtYnJ1IGFudGV0IGRlIGluZm9ybWHIm2lpIgorCisjfiBtc2dpZCAic2tpcHBlZCBjb250cm9sIGFyZWEgZnJvbSAlcyIKKyN+IG1zZ3N0ciAicy1hIHPEg3JpdCB6b25hIGRlIGNvbnRyb2wgZGUgbGEgJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHRlbXBvcmFyeSBkaXJlY3RvcnkiCisjfiBtc2dzdHIgImXImWVjIGxhIGNyZWFyZWEgZGlyZWN0b3J1bHVpIHRlbXBvcmFyIgorCisjfiBtc2dpZCAiaW5mb19zcGV3IgorI34gbXNnc3RyICJpbmZvX3NwZXciCisKKyN+IG1zZ2lkICJpbmZvIGxlbmd0aCIKKyN+IG1zZ3N0ciAibHVuZ2ltZWEgaW5mbyIKKworI34gbXNnaWQgInRvdGFsIGxlbmd0aCIKKyN+IG1zZ3N0ciAibHVuZ2ltZSB0b3RhbMSDIgorCisjfiBtc2dpZCAiZGF0YSBsZW5ndGgiCisjfiBtc2dzdHIgImx1bmdpbWVhIGRhdGVsb3IiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBkcGtnLWRlYiB0byBleHRyYWN0IGZpZWxkIHZhbHVlIgorI34gbXNnc3RyICJlyJllYyBsYSBleGVjIGRwa2ctZGViIHBlbnRydSBhIGV4dHJhZ2UgdmFsb2FyZWEgY8OibXB1bHVpIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHN0YXQgJXM6ICVzIgorI34gbXNnc3RyICJzdGF0IGltcG9zaWJpbCBwZW50cnUgJXM6ICVzIgorCisjfiBtc2dpZCAic2xhdmUgbmFtZSAlcyBkdXBsaWNhdGVkIgorI34gbXNnc3RyICJudW1lbGUgZGUgc2NsYXYgJXMgZXN0ZSBkdXBsaWNhdCIKKworI34gbXNnaWQgInNsYXZlIGxpbmsgJXMgZHVwbGljYXRlZCIKKyN+IG1zZ3N0ciAibGVnxIN0dXJhIHNjbGF2ICVzIGVzdGUgZHVwbGljYXTEgyIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvcG8vcnUuZ21vIGIvZHBrZy0xLjE2LjEuMS9wby9ydS5nbW8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzRjZGQ0MQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvcG8vcnUuZ21vCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvcG8vcnUucG8gYi9kcGtnLTEuMTYuMS4xL3BvL3J1LnBvCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmNmYTRlOWYKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3BvL3J1LnBvCkBAIC0wLDAgKzEsNjc0NSBAQAorIyB0cmFuc2xhdGlvbiBvZiBwb19ydS5wbyB0byBSdXNzaWFuCisjIExvY2FsaXphdGlvbiBmaWxlIGZvciBkcGtnIGFuZCBvdGhlciBwcm9ncmFtcyBmcm9tIGRwa2cgcGFja2FnZS4KKyMgQ29weXJpZ2h0IChDKSAxOTk5IE1pY2hhZWwgU29ib2xldgorIworIyBNaWNoYWVsIFNvYm9sZXYgPG1zc0B0cmFuc2FzLmNvbT4sIDE5OTkuCisjIFl1cmkgS296bG92IDxrb3psb3YueUBnbWFpbC5jb20+LCAyMDA0LCAyMDA1LCAyMDA2LCAyMDA3LCAyMDA4LgorIyBZdXJpIEtvemxvdiA8eXVyYXlAa29teWFraW5vLnJ1PiwgMjAwOSwgMjAxMC4KK21zZ2lkICIiCittc2dzdHIgIiIKKyJQcm9qZWN0LUlkLVZlcnNpb246IGRwa2cgMS4xNS44LjdcbiIKKyJSZXBvcnQtTXNnaWQtQnVncy1UbzogZGViaWFuLWRwa2dAbGlzdHMuZGViaWFuLm9yZ1xuIgorIlBPVC1DcmVhdGlvbi1EYXRlOiAyMDExLTEwLTE0IDA3OjExKzAyMDBcbiIKKyJQTy1SZXZpc2lvbi1EYXRlOiAyMDEwLTEyLTE2IDIwOjU0KzAxMDBcbiIKKyJMYXN0LVRyYW5zbGF0b3I6IFl1cmkgS296bG92IDx5dXJheUBrb215YWtpbm8ucnU+XG4iCisiTGFuZ3VhZ2UtVGVhbTogUnVzc2lhbiA8ZGViaWFuLWwxMG4tcnVzc2lhbkBsaXN0cy5kZWJpYW4ub3JnPlxuIgorIkxhbmd1YWdlOiBydVxuIgorIk1JTUUtVmVyc2lvbjogMS4wXG4iCisiQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PVVURi04XG4iCisiQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdFxuIgorIlgtR2VuZXJhdG9yOiBMb2thbGl6ZSAxLjBcbiIKKyJQbHVyYWwtRm9ybXM6ICBucGx1cmFscz0zOyBwbHVyYWw9KG4lMTA9PTEgJiYgbiUxMDAhPTExID8gMCA6IG4lMTA+PTIgJiYgbiIKKyIlMTA8PTQgJiYgKG4lMTAwPDEwIHx8IG4lMTAwPj0yMCkgPyAxIDogMik7XG4iCisKKyM6IGxpYi9kcGtnL2FyLmM6NjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgJyVjJyBpbiBhcmNoaXZlICclLjI1MHMnIG1lbWJlciAnJS4xNnMnIHNpemUiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvYXIuYzo4MSBsaWIvZHBrZy9hci5jOjk3IGxpYi9kcGtnL2FyLmM6MTA4IGxpYi9kcGtnL2FyLmM6MTEyCisjOiBsaWIvZHBrZy9hci5jOjEzNCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE1NAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgZmlsZSAnJXMnIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC30LDQv9C40YHQsNGC0Ywg0YTQsNC50Lsgwqslc8K7IgorCisjOiBsaWIvZHBrZy9hci5jOjk0CisjLCBjLWZvcm1hdAorbXNnaWQgImdlbmVyYXRlZCBjb3JydXB0IGFyIGhlYWRlciBmb3IgJyVzJyIKK21zZ3N0ciAi0YHQs9C10L3QtdGA0LjRgNC+0LLQsNC9INC/0L7QstGA0LXQttC00ZHQvdC90YvQuSDQt9Cw0LPQvtC70L7QstC+0LogYXIg0LTQu9GPIMKrJXPCuyIKKworIzogbGliL2Rwa2cvYXIuYzoxMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGFyIG1lbWJlciBmaWxlICglcykiCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LLRi9C/0L7Qu9C90LjRgtGMIGZzdGF0INC90LAg0YTQsNC50LvQsCDQuNC3INCw0YDRhdC40LLQsCBhciAoJXMpIgorCisjOiBsaWIvZHBrZy9hci5jOjEzMAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGFyIG1lbWJlciBmaWxlICglcykiCittc2dpZCAiYXIgbWVtYmVyIGZpbGUgKCVzKSIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQstGL0L/QvtC70L3QuNGC0YwgZnN0YXQg0L3QsCDRhNCw0LnQu9CwINC40Lcg0LDRgNGF0LjQstCwIGFyICglcykiCisKKyM6IGxpYi9kcGtnL2J1ZmZlci5jOjE5NgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCBvbiBidWZmZXIgY29weSBmb3IgJXMiCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L/RgNC+0YfQuNGC0LDRgtGMINC/0YDQuCDQutC+0L/QuNGA0L7QstCw0L3QuNC4INCyINCx0YPRhNC10YAg0LTQu9GPICVzIgorCisjOiBsaWIvZHBrZy9idWZmZXIuYzoyMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIGluIHdyaXRlIG9uIGJ1ZmZlciBjb3B5IGZvciAlcyIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQt9Cw0L/QuNGB0LDRgtGMINC/0YDQuCDQutC+0L/QuNGA0L7QstCw0L3QuNC4INCyINCx0YPRhNC10YAg0LTQu9GPICVzIgorCisjOiBsaWIvZHBrZy9idWZmZXIuYzoyMjAKKyMsIGMtZm9ybWF0Cittc2dpZCAic2hvcnQgcmVhZCBvbiBidWZmZXIgY29weSBmb3IgJXMiCittc2dzdHIgItC/0YDQvtGH0LjRgtCw0L0g0YHQu9C40YjQutC+0Lwg0LrQvtGA0L7RgtC60LjQuSDQsdC70L7QuiDQtNCw0L3QvdGL0YUg0L/RgNC4INC60L7Qv9C40YDQvtCy0LDQvdC40Lgg0LIg0LHRg9GE0LXRgCDQtNC70Y8gJXMiCisKKyM6IGxpYi9kcGtnL2J1ZmZlci5jOjI4OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgdGFyIgorbXNnaWQgImZhaWxlZCB0byBzZWVrICVzIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC30LDQv9GD0YHRgtC40YLRjCB0YXIiCisKKyM6IGxpYi9kcGtnL2NvbW1hbmQuYzoxNzggbGliL2Rwa2cvY29tbWFuZC5jOjIwNCBzcmMvaGVscC5jOjYyMQorIzogc3JjL3Byb2Nlc3NhcmMuYzo5OCBzcmMvcHJvY2Vzc2FyYy5jOjEzOCBzcmMvcHJvY2Vzc2FyYy5jOjQzMgorIzogc3JjL3Byb2Nlc3NhcmMuYzo4MzkgZHBrZy1kZWIvYnVpbGQuYzo0NTkgZHBrZy1kZWIvYnVpbGQuYzo1MzgKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTYxIGRwa2ctZGViL2V4dHJhY3QuYzozMTcgZHBrZy1kZWIvaW5mby5jOjY1CisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6NjkgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQ1NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZXhlY3V0ZSAlcyAoJXMpIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC30LDQv9GD0YHRgtC40YLRjCAlcyAoJXMpIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBkZWNvbXByZXNzaW9uIgorbXNnc3RyICIlczog0YDQsNGB0L/QsNC60L7QstC60LAg0YHQttCw0YLRi9GFINC00LDQvdC90YvRhSIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzo4OQorIywgYy1mb3JtYXQKK21zZ2lkICIlczogY29tcHJlc3Npb24iCittc2dzdHIgIiVzOiDRgdC20LDRgtC40LUg0LTQsNC90L3Ri9GFIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjExMgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZXJyb3IgYmluZGluZyBpbnB1dCB0byBnemlwIHN0cmVhbSIKK21zZ3N0ciAiJXM6INC+0YjQuNCx0LrQsCDQv9C+0LTQutC70Y7Rh9C10L3QuNGPINC6INCy0YXQvtC00L3QvtC80YMg0L/QvtGC0L7QutGDIGd6aXAiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHJlYWQgZXJyb3I6ICclcyciCittc2dzdHIgIiVzOiDQstC90YPRgtGA0LXQvdC90Y/RjyDQvtGI0LjQsdC60LAgZ3ppcCDQv9GA0Lgg0YfRgtC10L3QuNC4OiDCqyVzwrsiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTMyIGxpYi9kcGtnL2NvbXByZXNzLmM6MTM2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHdyaXRlIGVycm9yIgorbXNnc3RyICIlczog0LLQvdGD0YLRgNC10L3QvdGP0Y8g0L7RiNC40LHQutCwIGd6aXAg0L/RgNC4INC30LDQv9C40YHQuCIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yIGJpbmRpbmcgb3V0cHV0IHRvIGd6aXAgc3RyZWFtIgorbXNnc3RyICIlczog0L7RiNC40LHQutCwINC/0L7QtNC60LvRjtGH0LXQvdC40Y8g0Log0LLRi9GF0L7QtNC90L7QvNGDINC/0L7RgtC+0LrRgyBnemlwIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE1NworIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCByZWFkIGVycm9yIgorbXNnc3RyICIlczog0LLQvdGD0YLRgNC10L3QvdGP0Y8g0L7RiNC40LHQutCwIGd6aXAg0L/RgNC4INGH0YLQtdC90LjQuCIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxNjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgd3JpdGUgZXJyb3I6ICclcyciCittc2dzdHIgIiVzOiDQstC90YPRgtGA0LXQvdC90Y/RjyDQvtGI0LjQsdC60LAgZ3ppcCDQv9GA0Lgg0LfQsNC/0LjRgdC4OiDCqyVzwrsiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTgwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHdyaXRlIGVycm9yOiAlcyIKK21zZ3N0ciAiJXM6INCy0L3Rg9GC0YDQtdC90L3Rj9GPINC+0YjQuNCx0LrQsCBnemlwINC/0YDQuCDQt9Cw0L/QuNGB0Lg6ICVzIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjIyMAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZXJyb3IgYmluZGluZyBpbnB1dCB0byBiemlwMiBzdHJlYW0iCittc2dzdHIgIiVzOiDQvtGI0LjQsdC60LAg0L/QvtC00LrQu9GO0YfQtdC90LjRjyDQuiDQstGF0L7QtNC90L7QvNGDINC/0L7RgtC+0LrRgyBiemlwMiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIHJlYWQgZXJyb3I6ICclcyciCittc2dzdHIgIiVzOiDQstC90YPRgtGA0LXQvdC90Y/RjyDQvtGI0LjQsdC60LAgYnppcDIg0L/RgNC4INGH0YLQtdC90LjQuDogwqslc8K7IgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI0MCBsaWIvZHBrZy9jb21wcmVzcy5jOjI0NCBsaWIvZHBrZy9jb21wcmVzcy5jOjI5NAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgd3JpdGUgZXJyb3IiCittc2dzdHIgIiVzOiDQstC90YPRgtGA0LXQvdC90Y/RjyDQvtGI0LjQsdC60LAgYnppcDIg0L/RgNC4INC30LDQv9C40YHQuCIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yIGJpbmRpbmcgb3V0cHV0IHRvIGJ6aXAyIHN0cmVhbSIKK21zZ3N0ciAiJXM6INC+0YjQuNCx0LrQsCDQv9C+0LTQutC70Y7Rh9C10L3QuNGPINC6INCy0YvRhdC+0LTQvdC+0LzRgyDQv9C+0YLQvtC60YMgYnppcDIiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjY1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiByZWFkIGVycm9yIgorbXNnc3RyICIlczog0LLQvdGD0YLRgNC10L3QvdGP0Y8g0L7RiNC40LHQutCwIGJ6aXAyINC/0YDQuCDRh9GC0LXQvdC40LgiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6Mjc1IGxpYi9kcGtnL2NvbXByZXNzLmM6Mjg2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiB3cml0ZSBlcnJvcjogJyVzJyIKK21zZ3N0ciAiJXM6INCy0L3Rg9GC0YDQtdC90L3Rj9GPINC+0YjQuNCx0LrQsCBiemlwMiDQv9GA0Lgg0LfQsNC/0LjRgdC4OiDCqyVzwrsiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjgyCittc2dpZCAidW5leHBlY3RlZCBiemlwMiBlcnJvciIKK21zZ3N0ciAi0L3QtdC+0LbQuNC00LDQtdC80LDRjyDQvtGI0LjQsdC60LAgYnppcDIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVwZGF0ZXMgZGlyZWN0b3J5IGNvbnRhaW5zIGZpbGUgYCUuMjUwcycgd2hvc2UgbmFtZSBpcyB0b28gbG9uZyAobGVuZ3RoPSVkLCAiCisibWF4PSVkKSIKK21zZ3N0ciAiIgorItC60LDRgtCw0LvQvtCzINC+0LHQvdC+0LLQu9C10L3QuNC5INGB0L7QtNC10YDQttC40YIg0YTQsNC50LsgwqslLjI1MHPCuywg0YMg0LrQvtGC0L7RgNC+0LPQviDRgdC70LjRiNC60L7QvCDQtNC70LjQvdC90L7QtSDQuNC80Y8gIgorIiglZCDRgdC40LzQstC+0LvQvtCyINC/0YDQuCDQtNC+0L/Rg9GB0YLQuNC80YvRhSAlZCkiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVwZGF0ZXMgZGlyZWN0b3J5IGNvbnRhaW5zIGZpbGVzIHdpdGggZGlmZmVyZW50IGxlbmd0aCBuYW1lcyAoYm90aCAlZCBhbmQgJWQpIgorbXNnc3RyICIiCisi0LrQsNGC0LDQu9C+0LMg0L7QsdC90L7QstC70LXQvdC40Lkg0YHQvtC00LXRgNC20LjRgiDRhNCw0LnQu9GLINGBINGA0LDQt9C90YvQvNC4INC00LvQuNC90LDQvNC4INC40LzRkdC9ICjQutCw0LogJWQsINGC0LDQuiDQuCAlZCkiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHNjYW4gdXBkYXRlcyBkaXJlY3RvcnkgYCUuMjU1cyciCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L/RgNC+0YHQvNC+0YLRgNC10YLRjCDQutCw0YLQsNC70L7QsyDQvtCx0L3QvtCy0LvQtdC90LjQuSDCqyUuMjU1c8K7IgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVtb3ZlIGluY29ycG9yYXRlZCB1cGRhdGUgZmlsZSAlLjI1NXMiCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0YPQtNCw0LvQuNGC0Ywg0LLRgtGP0L3Rg9GC0YvQuSDRhNCw0LnQuyDQvtCx0L3QvtCy0LvQtdC90LjQuSAlLjI1NXMiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTIxIGRwa2ctZGViL2J1aWxkLmM6NDQ3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgYCUuMjU1cyciCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0YHQvtC30LTQsNGC0YwgwqslLjI1NXPCuyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxMjUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZpbGwgJS4yNTBzIHdpdGggcGFkZGluZyIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQt9Cw0L/QvtC70L3QuNGC0YwgJS4yNTBzINGB0LjQvNCy0L7Qu9Cw0LzQuCDQstGL0YDQsNCy0L3QuNCy0LDQvdC40Y8iCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTI3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCAlLjI1MHMgYWZ0ZXIgcGFkZGluZyIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQvtGH0LjRgdGC0LjRgtGMICUuMjUwcyDQv9C+0YHQu9C1INCy0YvRgNCw0LLQvdC40LLQsNC90LjRjyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxMjkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNlZWsgdG8gc3RhcnQgb2YgJS4yNTBzIGFmdGVyIHBhZGRpbmciCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L/QtdGA0LXQudGC0Lgg0Log0L3QsNGH0LDQu9GDICUuMjUwcyDQv9C+0YHQu9C1INCy0YvRgNCw0LLQvdC40LLQsNC90LjRjyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxOTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gbG9jayBmaWxlICVzIGZvciB0ZXN0aW5nIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC+0YLQutGA0YvRgtGMINGE0LDQudC7INCx0LvQvtC60LjRgNC+0LLQutC4ICVzINC00LvRjyDRgtC10YHRgtC40YDQvtCy0LDQvdC40Y8iCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjIxCittc2dpZCAidW5hYmxlIHRvIG9wZW4vY3JlYXRlIHN0YXR1cyBkYXRhYmFzZSBsb2NrZmlsZSIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQvtGC0LrRgNGL0YLRjC/RgdC+0LfQtNCw0YLRjCDRhNCw0LnQuyDQsdC70L7QutC40YDQvtCy0LrQuCDQsdCw0LfRiyDQtNCw0L3QvdGL0YUg0YHQvtGB0YLQvtGP0L3QuNC5IgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjIzMQorbXNnaWQgInlvdSBkbyBub3QgaGF2ZSBwZXJtaXNzaW9uIHRvIGxvY2sgdGhlIGRwa2cgc3RhdHVzIGRhdGFiYXNlIgorbXNnc3RyICLRgyDQstCw0YEg0L3QtdGCINC/0YDQsNCyINC90LAg0LHQu9C+0LrQuNGA0L7QstCw0L3QuNC1INCx0LDQt9GLINC00LDQvdC90YvRhSDRgdC+0YHRgtC+0Y/QvdC40LkgZHBrZyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyMzMKKyMsIGZ1enp5CisjfCBtc2dpZCAidW5hYmxlIHRvIGxvY2sgZHBrZyBzdGF0dXMgZGF0YWJhc2UiCittc2dpZCAiZHBrZyBzdGF0dXMgZGF0YWJhc2UiCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LfQsNCx0LvQvtC60LjRgNC+0LLQsNGC0Ywg0LHQsNC30YMg0LTQsNC90L3Ri9GFINGB0L7RgdGC0L7Rj9C90LjQuSBkcGtnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjI1NworbXNnaWQgInJlcXVlc3RlZCBvcGVyYXRpb24gcmVxdWlyZXMgc3VwZXJ1c2VyIHByaXZpbGVnZSIKK21zZ3N0ciAi0LfQsNC/0YDQvtGI0LXQvdC90LDRjyDQvtC/0LXRgNCw0YbQuNGPINGC0YDQtdCx0YPQtdGCINC/0YDQuNCy0LjQu9C10LPQuNC5INGB0YPQv9C10YDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y8iCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjYyCittc2dpZCAidW5hYmxlIHRvIGFjY2VzcyBkcGtnIHN0YXR1cyBhcmVhIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC/0L7Qu9GD0YfQuNGC0Ywg0LTQvtGB0YLRg9C/INC6INC+0LHQu9Cw0YHRgtC4INGB0L7RgdGC0L7Rj9C90LjRjyBkcGtnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjI2NAorbXNnaWQgIm9wZXJhdGlvbiByZXF1aXJlcyByZWFkL3dyaXRlIGFjY2VzcyB0byBkcGtnIHN0YXR1cyBhcmVhIgorbXNnc3RyICLQvtC/0LXRgNCw0YbQuNGPINGC0YDQtdCx0YPQtdGCINC/0YDQsNCyINC90LAg0YfRgtC10L3QuNC1INC+0LHQu9Cw0YHRgtC4INGB0L7RgdGC0L7Rj9C90LjRjyBkcGtnINC4INC30LDQv9C40YHRjCDQsiDQvdC10ZEiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzA5CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZW1vdmUgbXkgb3duIHVwZGF0ZSBmaWxlICUuMjU1cyIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRg9C00LDQu9C40YLRjCDRgdC+0LHRgdGC0LLQtdC90L3Ri9C5INGE0LDQudC7INC+0LHQvdC+0LLQu9C10L3QuNC5ICUuMjU1cyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC30LDQv9C40YHQsNGC0Ywg0L7QsdC90L7QstC70ZHQvdC90YvQuSDRhNCw0LnQuyDRgdC+0YHRgtC+0Y/QvdC40Y8g0L/QsNC60LXRgtCwIMKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzQ5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRgdCx0YDQvtGB0LjRgtGMINCx0YPRhNC10YAg0L7QsdC90L7QstC70ZHQvdC90L7Qs9C+INGE0LDQudC70LAg0YHQvtGB0YLQvtGP0L3QuNGPINC/0LDQutC10YLQsCDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM1MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gdHJ1bmNhdGUgZm9yIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGD0YHQtdGH0Ywg0L7QsdC90L7QstC70ZHQvdC90YvQuSDRhNCw0LnQuyDRgdC+0YHRgtC+0Y/QvdC40Y8g0L/QsNC60LXRgtCwIMKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzUzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmc3luYyB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRgdC40L3RhdGA0L7QvdC40LfQuNGA0L7QstCw0YLRjCDQvtCx0L3QvtCy0LvRkdC90L3Ri9C5INGE0LDQudC7INGB0L7RgdGC0L7Rj9C90LjRjyDQv9Cw0LrQtdGC0LAgwqslLjI1MHPCuyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC30LDQutGA0YvRgtGMINC+0LHQvdC+0LLQu9GR0L3QvdGL0Lkg0YTQsNC50Lsg0YHQvtGB0YLQvtGP0L3QuNGPINC/0LDQutC10YLQsCDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM1OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRg9GB0YLQsNC90L7QstC40YLRjCDQvtCx0L3QvtCy0LvRkdC90L3Ri9C5INGE0LDQudC7INGB0L7RgdGC0L7Rj9C90LjRjyDQv9Cw0LrQtdGC0LAgwqslLjI1MHPCuyIKKworIzogbGliL2Rwa2cvZGlyLmM6NTAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byByZWFkIGZpbGVkZXNjcmlwdG9yIGZsYWdzIGZvciAlLjI1MHMiCittc2dpZCAidW5hYmxlIHRvIGdldCBmaWxlIGRlc2NyaXB0b3IgZm9yIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC/0YDQvtGH0LjRgtCw0YLRjCDRhNC70LDQs9C4INC00LXRgdC60YDQuNC/0YLQvtGA0LAg0YTQsNC50LvQsCAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL2Rpci5jOjU0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gc3luYyBmaWxlICclcyciCittc2dpZCAidW5hYmxlIHRvIHN5bmMgZGlyZWN0b3J5ICclcyciCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0YHQuNC90YXRgNC+0L3QuNC30LjRgNC+0LLQsNGC0Ywg0YTQsNC50Lsgwqslc8K7IgorCisjOiBsaWIvZHBrZy9kaXIuYzo2OSBsaWIvZHBrZy9kaXIuYzoxMzEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byBvcGVuIGZpbGUgJyVzJyIKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBkaXJlY3RvcnkgJyVzJyIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQvtGC0LrRgNGL0YLRjCDRhNCw0LnQuyDCqyVzwrsiCisKKyM6IGxpYi9kcGtnL2Rpci5jOjEwOSBzcmMvZGl2ZXJ0Y21kLmM6MjE4IGRwa2ctc3BsaXQvc3BsaXQuYzoyMDIKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjkzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIGZpbGUgJyVzJyIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQvtGC0LrRgNGL0YLRjCDRhNCw0LnQuyDCqyVzwrsiCisKKyM6IGxpYi9kcGtnL2Rpci5jOjExMSBzcmMvZGl2ZXJ0Y21kLmM6MjMyIHNyYy9kaXZlcnRjbWQuYzozNzcKKyM6IHNyYy9zdGF0Y21kLmM6MjE3IGRwa2ctZGViL2J1aWxkLmM6NTk4IGRwa2ctc3BsaXQvam9pbi5jOjY1CisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTg3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNDA2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzeW5jIGZpbGUgJyVzJyIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRgdC40L3RhdGA0L7QvdC40LfQuNGA0L7QstCw0YLRjCDRhNCw0LnQuyDCqyVzwrsiCisKKyM6IGxpYi9kcGtnL2Rpci5jOjExMyBzcmMvZGl2ZXJ0Y21kLmM6MjM0IHNyYy9kaXZlcnRjbWQuYzozNzkKKyM6IGRwa2ctZGViL2J1aWxkLmM6NjAwIGRwa2ctc3BsaXQvam9pbi5jOjY3IGRwa2ctc3BsaXQvcXVldWUuYzoxODkKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzE0IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNDA4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBmaWxlICclcyciCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LfQsNC60YDRi9GC0Ywg0YTQsNC50Lsgwqslc8K7IgorCisjOiBsaWIvZHBrZy9kdW1wLmM6Mzk2CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB3cml0ZSBkZXRhaWxzIG9mIGAlLjUwcycgdG8gYCUuMjUwcyciCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LfQsNC/0LjRgdCw0YLRjCDQv9C+0LTRgNC+0LHQvdC+0YHRgtC4INC+IMKrJS41MHPCuyDQsiDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDIzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuICclcycgZm9yIHdyaXRpbmcgJXMgZGF0YWJhc2UiCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L7RgtC60YDRi9GC0Ywgwqslc8K7INC00LvRjyDQt9Cw0L/QuNGB0Lgg0LHQsNC30Ysg0LTQsNC90L3Ri9GFICVzIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDI2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgYnVmZmVyaW5nIG9uICVzIGRhdGFiYXNlIGZpbGUiCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0YPRgdGC0LDQvdC+0LLQuNGC0Ywg0LHRg9GE0LXRgNC40LfQsNGG0LjRjiDRhNCw0LnQu9CwINCx0LDQt9GLINC00LDQvdC90YvRhSAlcyIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQzOAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgJXMgZGF0YWJhc2UgcmVjb3JkIGFib3V0ICclLjUwcycgdG8gJyUuMjUwcyciCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0YHQvtGF0YDQsNC90LjRgtGMINC30LDQv9C40YHRjCDQsiDQsdCw0LfRgyDQtNCw0L3QvdGL0YUgJXMg0L4gwqslLjUwc8K7INCyIMKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZsdXNoICVzIGRhdGFiYXNlIHRvICclLjI1MHMnIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGB0LHRgNC+0YHQuNGC0Ywg0L3QsCDQtNC40YHQuiDQsdCw0LfRgyDQtNCw0L3QvdGL0YUgJXMg0LIgwqslLjI1MHPCuyIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ0OAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZnN5bmMgJXMgZGF0YWJhc2UgdG8gJyUuMjUwcyciCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0YHQuNC90YXRgNC+0L3QuNC30LjRgNC+0LLQsNGC0Ywg0LHQsNC30YMg0LTQsNC90L3Ri9GFICVzINCyIMKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNsb3NlICclLjI1MHMnIGFmdGVyIHdyaXRpbmcgJXMgZGF0YWJhc2UiCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LfQsNC60YDRi9GC0YwgwqslLjI1MHPCuyDQv9C+0YHQu9C1INC30LDQv9C40YHQuCDQsiDQsdCw0LfRgyDQtNCw0L3QvdGL0YUgJXMiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGxpbmsgJyUuMjUwcycgdG8gJyUuMjUwcycgZm9yIGJhY2t1cCBvZiAlcyBkYXRhYmFzZSIKK21zZ3N0ciAiIgorItC90LUg0YPQtNCw0LvQvtGB0Ywg0YHQvtC30LTQsNGC0Ywg0YHRgdGL0LvQutGDIMKrJS4yNTBzwrsg0L3QsCDCqyUuMjUwc8K7INCyINC60LDRh9C10YHRgtCy0LUg0YDQtdC30LXRgNCy0L3QvtC5INC60L7Qv9C40LggIgorItCx0LDQt9GLINC00LDQvdC90YvRhSAlcyIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ1OAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gaW5zdGFsbCAnJS4yNTBzJyBhcyAnJS4yNTBzJyBjb250YWluaW5nICVzIGRhdGFiYXNlIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGD0YHRgtCw0L3QvtCy0LjRgtGMIMKrJS4yNTBzwrsg0LrQsNC6IMKrJS4yNTBzwrsg0YEg0LHQsNC30L7QuSDQtNCw0L3QvdGL0YUgJXMiCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzo5NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IHVucmVjb3ZlcmFibGUgZmF0YWwgZXJyb3IsIGFib3J0aW5nOlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisiJXM6INC90LXQstC+0YHRgdGC0LDQvdC+0LLQuNC80LDRjyDQvtGI0LjQsdC60LAsINC/0YDQtdC60YDQsNGJ0LXQvdC40LUg0YDQsNCx0L7RgtGLOlxuIgorIiAlc1xuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MTAwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiJXM6IHVucmVjb3ZlcmFibGUgZmF0YWwgZXJyb3IsIGFib3J0aW5nOlxuIgorI3wgIiAlc1xuIgorbXNnaWQgIiIKKyIlczogb3V0c2lkZSBlcnJvciBjb250ZXh0LCBhYm9ydGluZzpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorIiVzOiDQvdC10LLQvtGB0YHRgtCw0L3QvtCy0LjQvNCw0Y8g0L7RiNC40LHQutCwLCDQv9GA0LXQutGA0LDRidC10L3QuNC1INGA0LDQsdC+0YLRizpcbiIKKyIgJXNcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjEyMAorIywgZnV6enkKKyN8IG1zZ2lkICJvdXQgb2YgbWVtb3J5IGZvciBuZXcgY2xlYW51cCBlbnRyeSIKK21zZ2lkICJvdXQgb2YgbWVtb3J5IGZvciBuZXcgZXJyb3IgY29udGV4dCIKK21zZ3N0ciAi0L3QtdC00L7RgdGC0LDRgtC+0YfQvdC+INC/0LDQvNGP0YLQuCDQtNC70Y8g0L3QvtCy0L7QuSDQt9Cw0L/QuNGB0Lgg0L7Rh9C40YHRgtC60LgiCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoxODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBlcnJvciB3aGlsZSBjbGVhbmluZyB1cDpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorIiVzOiDQvtGI0LjQsdC60LAg0L/RgNC4INC+0YfQuNGB0YLQutC1IC1cbiIKKyIgJXNcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjIwMQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZHBrZzogdG9vIG1hbnkgbmVzdGVkIGVycm9ycyBkdXJpbmcgZXJyb3IgcmVjb3ZlcnkgISFcbiIKK21zZ2lkICIlczogdG9vIG1hbnkgbmVzdGVkIGVycm9ycyBkdXJpbmcgZXJyb3IgcmVjb3ZlcnkhIVxuIgorbXNnc3RyICIiCisiZHBrZzog0L/RgNC4INCy0L7RgdGB0YLQsNC90L7QstC70LXQvdC40Lgg0L/QvtGB0LvQtSDQvtGI0LjQsdC60Lgg0L7QsdC90LDRgNGD0LbQtdC90L4g0YHQu9C40YjQutC+0Lwg0LzQvdC+0LPQviDQvdCw0LLQtdC00ZHQvdC90YvRhSAiCisi0L7RiNC40LHQvtC6ISEhXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoyNjggbGliL2Rwa2cvZWhhbmRsZS5jOjMwNworbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBjbGVhbnVwIGVudHJ5IgorbXNnc3RyICLQvdC10LTQvtGB0YLQsNGC0L7Rh9C90L4g0L/QsNC80Y/RgtC4INC00LvRjyDQvdC+0LLQvtC5INC30LDQv9C40YHQuCDQvtGH0LjRgdGC0LrQuCIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjI5MQorbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBjbGVhbnVwIGVudHJ5IHdpdGggbWFueSBhcmd1bWVudHMiCittc2dzdHIgIiIKKyLQvdC10LTQvtGB0YLQsNGC0L7Rh9C90L4g0L/QsNC80Y/RgtC4INC00LvRjyDQvdC+0LLQvtC5INC30LDQv9C40YHQuCDQvtGH0LjRgdGC0LrQuCDRgSDQsdC+0LvRjNGI0LjQvCDQutC+0LvQuNGH0LXRgdGC0LLQvtC8INCw0YDQs9GD0LzQtdC90YLQvtCyIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MzUyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIlczogd2FybmluZzogJXNcbiIKK21zZ2lkICIlczogZXJyb3I6ICVzXG4iCittc2dzdHIgIiVzOiDQv9GA0LXQtNGD0L/RgNC10LbQtNC10L3QuNC1OiAlc1xuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MzkzCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB3YXJuaW5nOiAlc1xuIgorbXNnc3RyICIlczog0L/RgNC10LTRg9C/0YDQtdC20LTQtdC90LjQtTogJXNcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjQxNgorIywgYy1mb3JtYXQKK21zZ2lkICIlczolczolZDogaW50ZXJuYWwgZXJyb3I6ICVzXG4iCittc2dzdHIgIiVzOiVzOiVkOiDQstC90YPRgtGA0LXQvdC90Y/RjyDQvtGI0LjQsdC60LA6ICVzXG4iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGlzIG1pc3NpbmciCittc2dzdHIgItC+0YLRgdGD0YLRgdGC0LLRg9C10YIgJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJgJS4qcycgaXMgbm90IGFsbG93ZWQgZm9yICVzIgorbXNnaWQgIiclLjUwcycgaXMgbm90IGFsbG93ZWQgZm9yICVzIgorbXNnc3RyICLCqyUuKnPCuyDQvdC1INGA0LDQt9GA0LXRiNC10L3QviDQsiAlcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NzMKKyMsIGMtZm9ybWF0Cittc2dpZCAianVuayBhZnRlciAlcyIKK21zZ3N0ciAi0YLRgNC10LHRg9C10YLRgdGPINGC0L7Qu9GM0LrQviAlcywg0LLRgdGRINC+0YHRgtCw0LvRjNC90L7QtSDRgdC70LXQtNGD0LXRgiDRg9C00LDQu9C40YLRjCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6ODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBwYWNrYWdlIG5hbWUgKCUuMjUwcykiCittc2dzdHIgItC90LXQtNC+0L/Rg9GB0YLQuNC80L7QtSDQuNC80Y8g0L/QsNC60LXRgtCwICglLjI1MHMpIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZW1wdHkgZmlsZSBkZXRhaWxzIGZpZWxkIGAlcyciCittc2dzdHIgItC/0YPRgdGC0L7QtSDQt9C90LDRh9C10L3QuNC1INCyINC/0L7Qu9C1INC40L3RhNC+0YDQvNCw0YbQuNC4INC+INGE0LDQudC70LUgwqslc8K7IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBkZXRhaWxzIGZpZWxkIGAlcycgbm90IGFsbG93ZWQgaW4gc3RhdHVzIGZpbGUiCittc2dzdHIgIiIKKyLQsiDRhNCw0LnQu9C1INGB0L7RgdGC0L7Rj9C90LjQuSDQv9Cw0LrQtdGC0L7QsiDQvdC1INC80L7QttC10YIg0LLRgdGC0YDQtdGH0LDRgtGM0YHRjyDQuNC90YTQvtGA0LzQsNGG0LjQvtC90L3QvtC1INC/0L7Qu9C1IMKrJXPCuyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTE4CisjLCBjLWZvcm1hdAorbXNnaWQgInRvbyBtYW55IHZhbHVlcyBpbiBmaWxlIGRldGFpbHMgZmllbGQgYCVzJyAoY29tcGFyZWQgdG8gb3RoZXJzKSIKK21zZ3N0ciAiIgorItCyINC40L3RhNC+0YDQvNCw0YbQuNC+0L3QvdC+0Lwg0L/QvtC70LUgwqslc8K7INGB0LvQuNGI0LrQvtC8INC80L3QvtCz0L4g0LfQvdCw0YfQtdC90LjQuSAo0L/QviDRgdGA0LDQstC90LXQvdC40Y4g0YEg0L7RgdGC0LDQu9GM0L3Ri9C80LgpIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAidG9vIGZldyB2YWx1ZXMgaW4gZmlsZSBkZXRhaWxzIGZpZWxkIGAlcycgKGNvbXBhcmVkIHRvIG90aGVycykiCittc2dzdHIgIiIKKyLQsiDQuNC90YTQvtGA0LzQsNGG0LjQvtC90L3QvtC8INC/0L7Qu9C1IMKrJXPCuyDRgdC70LjRiNC60L7QvCDQvNCw0LvQviDQt9C90LDRh9C10L3QuNC5ICjQv9C+INGB0YDQsNCy0L3QtdC90LjRjiDRgSDQvtGB0YLQsNC70YzQvdGL0LzQuCkiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE1NAorbXNnaWQgInllcy9ubyBpbiBib29sZWFuIGZpZWxkIgorbXNnc3RyICLQt9C90LDRh9C10L3QuNC1IMKr0LTQsMK7INC40LvQuCDCq9C90LXRgsK7INCyINC70L7Qs9C40YfQtdGB0LrQvtC8INC/0L7Qu9C1IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxNzQKK21zZ2lkICJ3b3JkIGluIGBwcmlvcml0eScgZmllbGQiCittc2dzdHIgItGB0LvQvtCy0L4g0LIg0L/QvtC70LUgwqtwcmlvcml0ecK7IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxODYKK21zZ2lkICJ2YWx1ZSBmb3IgYHN0YXR1cycgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICLQt9C90LDRh9C10L3QuNC1INCyINC/0L7Qu9C1IMKrc3RhdHVzwrsg0LIg0Y3RgtC+0Lwg0LrQvtC90YLQtdC60YHRgtC1INC90LXQtNC+0L/Rg9GB0YLQuNC80L4iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE5MQorbXNnaWQgImZpcnN0ICh3YW50KSB3b3JkIGluIGBzdGF0dXMnIGZpZWxkIgorbXNnc3RyICLQv9C10YDQstC+0LUgKNC20LXQu9Cw0LXQvNC+0LUpINGB0LvQvtCy0L4g0LIg0L/QvtC70LUgwqtzdGF0dXPCuyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTk0Cittc2dpZCAic2Vjb25kIChlcnJvcikgd29yZCBpbiBgc3RhdHVzJyBmaWVsZCIKK21zZ3N0ciAi0LLRgtC+0YDQvtC1ICjQvtGI0LjQsdC+0YfQvdC+0LUpINGB0LvQvtCy0L4g0LIg0L/QvtC70LUgwqtzdGF0dXPCuyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTk3Cittc2dpZCAidGhpcmQgKHN0YXR1cykgd29yZCBpbiBgc3RhdHVzJyBmaWVsZCIKK21zZ3N0ciAi0YLRgNC10YLRjNC1ICjRgdC+0YHRgtC+0Y/QvdC40LUpINGB0LvQvtCy0L4g0LIg0L/QvtC70LUgwqtzdGF0dXPCuyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjA3CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGluIFZlcnNpb24gc3RyaW5nICclLjI1MHMnIgorbXNnc3RyICLQvtGI0LjQsdC60LAg0LIg0YHRgtGA0L7QutC1IFZlcnNpb24gwqslLjI1MHPCuyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjE4Cittc2dpZCAib2Jzb2xldGUgYFJldmlzaW9uJyBvciBgUGFja2FnZS1SZXZpc2lvbicgZmllbGQgdXNlZCIKK21zZ3N0ciAi0LjRgdC/0L7Qu9GM0LfRg9C10YLRgdGPINGD0YHRgtCw0YDQtdCy0YjQtdC1INC/0L7Qu9C1IMKrUmV2aXNpb27CuyDQuNC70LggwqtQYWNrYWdlLVJldmlzaW9uwrsiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjIzNQorbXNnaWQgInZhbHVlIGZvciBgY29uZmlnLXZlcnNpb24nIGZpZWxkIG5vdCBhbGxvd2VkIGluIHRoaXMgY29udGV4dCIKK21zZ3N0ciAi0LfQvdCw0YfQtdC90LjQtSDQtNC70Y8g0L/QvtC70Y8gwqtjb25maWctdmVyc2lvbsK7INCyINGN0YLQvtC8INC60L7QvdGC0LXQutGB0YLQtSDQvdC10LTQvtC/0YPRgdGC0LjQvNC+IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyNDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgaW4gQ29uZmlnLVZlcnNpb24gc3RyaW5nICclLjI1MHMnIgorbXNnc3RyICLQvtGI0LjQsdC60LAg0LIg0YHRgtGA0L7QutC1IENvbmZpZy1WZXJzaW9uIMKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjI2NgorIywgYy1mb3JtYXQKK21zZ2lkICJ2YWx1ZSBmb3IgYGNvbmZmaWxlcycgaGFzIG1hbGZvcm1hdHRlZCBsaW5lIGAlLipzJyIKK21zZ3N0ciAi0LfQvdCw0YfQtdC90LjQtSDQv9C+0LvRjyDCq2NvbmZmaWxlc8K7INGB0L7QtNC10YDQttC40YIg0L3QtdC00L7Qv9GD0YHRgtC40LzRg9GOINGB0YLRgNC+0LrRgyDCqyUuKnPCuyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6Mjg3CisjLCBjLWZvcm1hdAorbXNnaWQgInZhbHVlIGZvciBgY29uZmZpbGVzJyBoYXMgbGluZSBzdGFydGluZyB3aXRoIG5vbi1zcGFjZSBgJWMnIgorbXNnc3RyICLQt9C90LDRh9C10L3QuNC1INC/0L7Qu9GPIMKrY29uZmZpbGVzwrsg0L3QsNGH0LjQvdCw0LXRgtGB0Y8g0L3QtSDRgSDQv9GA0L7QsdC10LvQsCwg0LAg0YEg0YHQuNC80LLQvtC70LAgwqslY8K7IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzozMDQKK21zZ2lkICJyb290IG9yIG51bGwgZGlyZWN0b3J5IGlzIGxpc3RlZCBhcyBhIGNvbmZmaWxlIgorbXNnc3RyICLQsiDQutCw0YfQtdGB0YLQstC1IGNvbmZmaWxlINGD0LrQsNC30LDQvSDQutC+0YDQvdC10LLQvtC5INC40LvQuCDQv9GD0YHRgtC+0Lkg0LrQsNGC0LDQu9C+0LMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjM2NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgbWlzc2luZyBwYWNrYWdlIG5hbWUsIG9yIGdhcmJhZ2Ugd2hlcmUgcGFja2FnZSBuYW1lIGV4cGVjdGVkIgorbXNnc3RyICIiCisi0JIg0L/QvtC70LUgwqslc8K7INC+0YLRgdGD0YLRgdGC0LLRg9C10YIg0LjQvNGPINC/0LDQutC10YLQsCDQuNC70Lgg0YPQutCw0LfQsNC90L4g0YfRgtC+LdGC0L4sINGH0YLQviDQvdC1INC80L7QttC10YIg0Y/QstC70Y/RgtGM0YHRjyAiCisi0LjQvNC10L3QtdC8INC/0LDQutC10YLQsCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MzcwCisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgZmllbGQsIGludmFsaWQgcGFja2FnZSBuYW1lIGAlLjI1NXMnOiAlcyIKK21zZ3N0ciAi0JIg0L/QvtC70LUgwqslc8K7INGD0LrQsNC30LDQvdC+INC90LXQtNC+0L/Rg9GB0YLQuNC80L7QtSDQuNC80Y8g0L/QsNC60LXRgtCwIMKrJS4yNTVzwrs6ICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgYmFkIHZlcnNpb24gcmVsYXRpb25zaGlwICVjJWMiCittc2dzdHIgIiIKKyLQn9C+0LvQtSDCqyVzwrssINGB0YHRi9C70LrQsCDQvdCwIMKrJS4yNTVzwrs6XG4iCisiINC90LXRgdGD0YnQtdGB0YLQstGD0Y7RidC10LUg0L7RgtC90L7RiNC10L3QuNC1INCy0LXRgNGB0LjQuSAlYyVjIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgYCVjJyBpcyBvYnNvbGV0ZSwgdXNlIGAlYz0nIG9yIGAlYyVjJyBpbnN0ZWFkIgorbXNnc3RyICIiCisi0J/QvtC70LUgwqslc8K7LCDRgdGB0YvQu9C60LAg0L3QsCDCqyUuMjU1c8K7OlxuIgorIiDRhNC+0YDQvNCwINC30LDQv9C40YHQuCAlYyDRg9GB0YLQsNGA0LXQu9CwLCDQuNGB0L/QvtC70YzQt9GD0LnRgtC1IMKrJWM9wrsg0LjQu9C4IMKrJWMlY8K7IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgaW1wbGljaXQgZXhhY3QgbWF0Y2ggb24gdmVyc2lvbiBudW1iZXIsIHN1Z2dlc3QgdXNpbmcgYD0nIGluc3RlYWQiCittc2dzdHIgIiIKKyLQn9C+0LvQtSDCqyVzwrssINGB0YHRi9C70LrQsCDQvdCwIMKrJS4yNTVzwrs6XG4iCisiINC90LXRj9Cy0L3QsNGPINGB0YHRi9C70LrQsCDQvdCwINC90L7QvNC10YAg0LLQtdGA0YHQuNC4LCDQsiDRgtCw0LrQuNGFINGB0LvRg9GH0LDRj9GFINC40YHQv9C+0LvRjNC30YPQudGC0LUgwqs9wrsiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQzMAorbXNnaWQgIk9ubHkgZXhhY3QgdmVyc2lvbnMgbWF5IGJlIHVzZWQgZm9yIFByb3ZpZGVzIgorbXNnc3RyICLQkiDQv9C+0LvQtSBQcm92aWRlcyDQvdC1INC80L7QttC10YIg0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGM0YHRjyDQtNC40LDQv9Cw0LfQvtC9INCy0LXRgNGB0LjQuSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6XG4iCisiIHZlcnNpb24gdmFsdWUgc3RhcnRzIHdpdGggbm9uLWFscGhhbnVtZXJpYywgc3VnZ2VzdCBhZGRpbmcgYSBzcGFjZSIKK21zZ3N0ciAiIgorItCf0L7Qu9C1IMKrJXPCuywg0YHRgdGL0LvQutCwINC90LAgwqslLjI1NXPCu1xuIgorIiDQt9C90LDRh9C10L3QuNC1INCy0LXRgNGB0LjQuCDQvdCw0YfQuNC90LDQtdGC0YHRjyDQvdC1INGBINC70LDRgtC40L3RgdC60L7QuSDQsdGD0LrQstGLINC40LvQuCDRhtC40YTRgNGLLCDRgNC10LrQvtC80LXQvdC00YPQtdGC0YHRjyAiCisi0LTQvtCx0LDQstC40YLRjCDQv9GA0L7QsdC10LsiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ1MSBsaWIvZHBrZy9maWVsZHMuYzo0NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOiB2ZXJzaW9uIGNvbnRhaW5zIGAlYyciCittc2dzdHIgItCf0L7Qu9C1IMKrJXPCuywg0YHRgdGL0LvQutCwINC90LAgwqslLjI1NXPCuzog0LLQtdGA0YHQuNGPINGB0L7QtNC10YDQttC40YIgwqslY8K7IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOiB2ZXJzaW9uIHVudGVybWluYXRlZCIKK21zZ3N0ciAi0J/QvtC70LUgwqslc8K7LCDRgdGB0YvQu9C60LAg0L3QsCDCqyUuMjU1c8K7OiDQvdCw0LfQstCw0L3QuNC1INCy0LXRgNGB0LjQuCDQvdC1INC30LDQstC10YDRiNC10L3QviIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDY1CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgZmllbGQsIHJlZmVyZW5jZSB0byAnJS4yNTVzJzogZXJyb3IgaW4gdmVyc2lvbiIKK21zZ3N0ciAi0J/QvtC70LUgwqslc8K7LCDRgdGB0YvQu9C60LAg0L3QsCDCqyUuMjU1c8K7OiDQvtGI0LjQsdC60LAg0LIg0L/QvtC70LUg0LLQtdGA0YHQuNC4IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBmaWVsZCwgc3ludGF4IGVycm9yIGFmdGVyIHJlZmVyZW5jZSB0byBwYWNrYWdlIGAlLjI1NXMnIgorbXNnc3RyICLQn9C+0LvQtSDCqyVzwrs6INGB0LjQvdGC0LDQutGB0LjRh9C10YHQutCw0Y8g0L7RiNC40LHQutCwINC/0L7RgdC70LUg0YHRgdGL0LvQutC4INC90LAg0L/QsNC60LXRgiDCqyUuMjU1c8K7IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmVzIChgfCcpIG5vdCBhbGxvd2VkIGluICVzIGZpZWxkIgorbXNnc3RyICLQkiDQv9C+0LvQtSAlcyDQsNC70YzRgtC10YDQvdCw0YLQuNCy0YsgKMKrfMK7KSDQvdC10LTQvtC/0YPRgdGC0LjQvNGLIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1MzYKK21zZ2lkICJ2YWx1ZSBmb3IgYHRyaWdnZXJzLXBlbmRpbmcnIGZpZWxkIG5vdCBhbGxvd2VkIGluIHRoaXMgY29udGV4dCIKK21zZ3N0ciAi0LfQvdCw0YfQtdC90LjQtSDQsiDQv9C+0LvQtSDCq3RyaWdnZXJzLXBlbmRpbmfCuyDQsiDRjdGC0L7QvCDQutC+0L3RgtC10LrRgdGC0LUg0L3QtdC00L7Qv9GD0YHRgtC40LzQviIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTQzCisjLCBjLWZvcm1hdAorbXNnaWQgImlsbGVnYWwgcGVuZGluZyB0cmlnZ2VyIG5hbWUgYCUuMjU1cyc6ICVzIgorbXNnc3RyICLQvdC10LTQvtC/0YPRgdGC0LjQvNC+0LUg0LjQvNGPINGC0YDQuNCz0LPQtdGA0LAg0YDQsNGB0YHQvNC+0YLRgNC10L3QuNGPIMKrJS4yNTVzwrs6ICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHBlbmRpbmcgdHJpZ2dlciBgJS4yNTVzJyIKK21zZ3N0ciAi0L/QvtCy0YLQvtGAINGC0YDQuNCz0LPQtdGA0LAg0YDQsNGB0YHQvNC+0YLRgNC10L3QuNGPIMKrJS4yNTVzwrsiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU2MQorbXNnaWQgInZhbHVlIGZvciBgdHJpZ2dlcnMtYXdhaXRlZCcgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICLQt9C90LDRh9C10L3QuNC1INCyINC/0L7Qu9C1IMKrdHJpZ2dlcnMtYXdhaXRlZMK7INCyINGN0YLQvtC8INC60L7QvdGC0LXQutGB0YLQtSDQvdC10LTQvtC/0YPRgdGC0LjQvNC+IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWxsZWdhbCBwYWNrYWdlIG5hbWUgaW4gYXdhaXRlZCB0cmlnZ2VyIGAlLjI1NXMnOiAlcyIKK21zZ3N0ciAi0L3QtdC00L7Qv9GD0YHRgtC40LzQvtC1INC40LzRjyDQv9Cw0LrQtdGC0LAg0LIg0L7QttC40LTQsNGO0YnQtdC8INGC0YDQuNCz0LPQtdGA0LUgwqslLjI1MHPCuzogJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU3NAorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgYXdhaXRlZCB0cmlnZ2VyIHBhY2thZ2UgYCUuMjU1cyciCittc2dzdHIgItC/0L7QstGC0L7RgCDQvtC20LjQtNCw0Y7RidC10LPQviDRgtGA0LjQs9Cz0LXRgNCwINC/0LDQutC10YLQsCDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy9maWxlLmM6NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgc291cmNlIGZpbGUgJyUuMjUwcyciCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LLRi9C/0L7Qu9C90LjRgtGMIHN0YXQg0LTQu9GPINGE0LDQudC70LAg0LjRgdGC0L7Rh9C90LjQutCwIMKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzo1NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hhbmdlIG93bmVyc2hpcCBvZiB0YXJnZXQgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQuNC30LzQtdC90LjRgtGMINCy0LvQsNC00LXQu9GM0YbQsCDRhNCw0LnQu9CwINC90LDQt9C90LDRh9C10L3QuNGPIMKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzo1OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IG1vZGUgb2YgdGFyZ2V0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0YPRgdGC0LDQvdC+0LLQuNGC0Ywg0L/RgNCw0LLQsCDQtNC+0YHRgtGD0L/QsCDRhNCw0LnQu9CwINC90LDQt9C90LDRh9C10L3QuNGPIMKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzo4NQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIGNsb3NlICVzOiAlcyIKK21zZ2lkICJ1bmFibGUgdG8gdW5sb2NrICVzIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC30LDQutGA0YvRgtGMICVzOiAlcyIKKworIzogbGliL2Rwa2cvZmlsZS5jOjExMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hlY2sgZmlsZSAnJXMnIGxvY2sgc3RhdHVzIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC/0YDQvtCy0LXRgNC40YLRjCDRgdC+0YHRgtC+0Y/QvdC40LUg0YTQsNC50LvQsCDQsdC70L7QutC40YDQvtCy0LrQuCDCqyVzwrsiCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzoxNDYKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInN0YXR1cyBkYXRhYmFzZSBhcmVhIGlzIGxvY2tlZCBieSBhbm90aGVyIHByb2Nlc3MiCittc2dpZCAiJXMgaXMgbG9ja2VkIGJ5IGFub3RoZXIgcHJvY2VzcyIKK21zZ3N0ciAi0LHQsNC30LAg0LTQsNC90L3Ri9GFINGB0L7RgdGC0L7Rj9C90LjQuSDQt9Cw0LHQu9C+0LrQuNGA0L7QstCw0L3QsCDQtNGA0YPQs9C40Lwg0L/RgNC+0YbQtdGB0YHQvtC8IgorCisjOiBsaWIvZHBrZy9maWxlLmM6MTQ4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gY2xvc2UgJXM6ICVzIgorbXNnaWQgInVuYWJsZSB0byBsb2NrICVzIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC30LDQutGA0YvRgtGMICVzOiAlcyIKKworIzogbGliL2Rwa2cvbG9nLmM6NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGRuJ3Qgb3BlbiBsb2cgYCVzJzogJXNcbiIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQvtGC0LrRgNGL0YLRjCDRhNCw0LnQuyDQttGD0YDQvdCw0LvQsCDCqyVzwrs6ICVzXG4iCisKKyM6IGxpYi9kcGtnL2xvZy5jOjg1Cittc2dpZCAiPHBhY2thZ2Ugc3RhdHVzIGFuZCBwcm9ncmVzcyBmaWxlIGRlc2NyaXB0b3I+IgorbXNnc3RyICI80YHQvtGB0YLQvtGP0L3QuNC1INC/0LDQutC10YLQsCDQuCDQtNC10YHQutGA0LjQv9GC0L7RgCDRhNCw0LnQu9CwLdC40L3QtNC40LrQsNGC0L7RgNCwINCy0YvQv9C+0LvQvdC10L3QuNGPPiIKKworIzogbGliL2Rwa2cvbG9nLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSB0byBzdGF0dXMgZmQgJWQiCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L/RgNC+0LjQt9Cy0LXRgdGC0Lgg0LfQsNC/0LjRgdGMINCyINGE0LDQudC70L7QstGL0Lkg0LTQtdGB0LrRgNC40L/RgtC+0YAg0YHQvtGB0YLQvtGP0L3QuNGPICVkIgorCisjOiBsaWIvZHBrZy9tbGliLmM6NDQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAibWFsbG9jIGZhaWxlZCAoJWxkIGJ5dGVzKSIKK21zZ2lkICJtYWxsb2MgZmFpbGVkICglenUgYnl0ZXMpIgorbXNnc3RyICLRhNGD0L3QutGG0LjQuCBtYWxsb2Mg0L3QtSDRg9C00LDQu9C+0YHRjCDQstGL0LTQtdC70LjRgtGMICVsZCDQsdCw0LnRgijQsCkg0L/QsNC80Y/RgtC4IgorCisjOiBsaWIvZHBrZy9tbGliLmM6NTgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInJlYWxsb2MgZmFpbGVkICglbGQgYnl0ZXMpIgorbXNnaWQgInJlYWxsb2MgZmFpbGVkICglenUgYnl0ZXMpIgorbXNnc3RyICLRhNGD0L3QutGG0LjQuCByZWFsbG9jINC90LUg0YPQtNCw0LvQvtGB0Ywg0LLRi9C00LXQu9C40YLRjCAlbGQg0LHQsNC50YIo0LApINC/0LDQvNGP0YLQuCIKKworIzogbGliL2Rwa2cvbWxpYi5jOjcyIGxpYi9kcGtnL21saWIuYzo5MCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6Mjc3CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MzM0IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTA3Cittc2dpZCAiZmFpbGVkIHRvIGFsbG9jYXRlIG1lbW9yeSIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQstGL0LTQtdC70LjRgtGMINC/0LDQvNGP0YLRjCIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZHVwIGZvciBzdGQlcyIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRgdC+0LfQtNCw0YLRjCDQutC+0L/QuNGOINC00LXRgdC60YDQuNC/0YLQvtGA0LAg0L/QvtGC0L7QutCwIHN0ZCVzIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTAzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBkdXAgZm9yIGZkICVkIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGB0L7Qt9C00LDRgtGMINC60L7Qv9C40Y4g0LTQtdGB0LrRgNC40L/RgtC+0YDQsCDRhNCw0LnQu9CwICVkIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTA5Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBwaXBlIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGB0L7Qt9C00LDRgtGMINC60LDQvdCw0LsiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igd3JpdGluZyB0byAnJXMnIgorbXNnc3RyICLQvtGI0LjQsdC60LAg0LfQsNC/0LjRgdC4INCyIMKrJXPCuyIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBmaWxlZGVzY3JpcHRvciBmbGFncyBmb3IgJS4yNTBzIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC/0YDQvtGH0LjRgtCw0YLRjCDRhNC70LDQs9C4INC00LXRgdC60YDQuNC/0YLQvtGA0LAg0YTQsNC50LvQsCAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMjYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNldCBjbG9zZS1vbi1leGVjIGZsYWcgZm9yICUuMjUwcyIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRg9GB0YLQsNC90L7QstC40YLRjCDRhNC70LDQsyBjbG9zZS1vbi1leGVjINGE0LDQudC70LAgJS4yNTBzIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmlndXJhdGlvbiBlcnJvcjogJXM6JWQ6ICVzIgorbXNnc3RyICLQvtGI0LjQsdC60LAg0LIg0L3QsNGB0YLRgNC+0LnQutCw0YU6ICVzOiVkOiAlcyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjc1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuIGNvbmZpZ3VyYXRpb24gZmlsZSAnJS4yNTVzJyBmb3IgcmVhZGluZzogJXMiCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L7RgtC60YDRi9GC0Ywg0YTQsNC50Lsg0L3QsNGB0YLRgNC+0LnQutC4IMKrJS4yNTVzwrsg0L3QsCDRh9GC0LXQvdC40LU6ICVzIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYmFsYW5jZWQgcXVvdGVzIGluICclcyciCittc2dzdHIgItC90LXQv9Cw0YDQvdGL0LUg0LrQsNCy0YvRh9C60Lgg0LIgwqslc8K7IgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTE3CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gb3B0aW9uICclcyciCittc2dzdHIgItC90LXQuNC30LLQtdGB0YLQvdGL0Lkg0L/QsNGA0LDQvNC10YLRgCDCqyVzwrsiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBuZWVkcyBhIHZhbHVlIgorbXNnc3RyICLQv9Cw0YDQsNC80LXRgtGAIMKrJXPCuyDQtNC+0LvQttC10L0g0LjQvNC10YLRjCDQt9C90LDRh9C10L3QuNC1IgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTI3CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgZG9lcyBub3QgdGFrZSBhIHZhbHVlIgorbXNnc3RyICLQv9Cw0YDQsNC80LXRgtGAIMKrJXPCuyDQvdC1INC/0YDQuNC90LjQvNCw0LXRgiDQt9C90LDRh9C10L3QuNC1IgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTMzCisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWQgZXJyb3IgaW4gY29uZmlndXJhdGlvbiBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICLQvtGI0LjQsdC60LAg0YfRgtC10L3QuNGPINGE0LDQudC70LAg0L3QsNGB0YLRgNC+0LnQutC4IMKrJS4yNTVzwrsiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyBjb25maWd1cmF0aW9uIGZpbGUgYCUuMjU1cyciCittc2dzdHIgItC+0YjQuNCx0LrQsCDQv9GA0Lgg0LfQsNC60YDRi9GC0LjQuCDRhNCw0LnQu9CwINC90LDRgdGC0YDQvtC50LrQuCDCqyUuMjU1c8K7IgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTcwCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIG9wZW5pbmcgY29uZmlndXJhdGlvbiBkaXJlY3RvcnkgJyVzJyIKK21zZ3N0ciAi0L7RiNC40LHQutCwINC/0YDQuCDQvtGC0LrRgNGL0YLQuNC4INC60LDRgtCw0LvQvtCz0LAg0L3QsNGB0YLRgNC+0LXQuiDCqyVzwrsiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gLS0lcyIKK21zZ3N0ciAi0L3QtdC40LfQstC10YHRgtC90YvQuSDQv9Cw0YDQsNC80LXRgtGAIC0tJXMiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBvcHRpb24gdGFrZXMgYSB2YWx1ZSIKK21zZ3N0ciAi0L/QsNGA0LDQvNC10YLRgCAtLSVzINC00L7Qu9C20LXQvSDQuNC80LXRgtGMINC30L3QsNGH0LXQvdC40LUiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBvcHRpb24gZG9lcyBub3QgdGFrZSBhIHZhbHVlIgorbXNnc3RyICLQv9Cw0YDQsNC80LXRgtGAIC0tJXMg0L3QtSDQv9GA0LjQvdC40LzQsNC10YIg0LfQvdCw0YfQtdC90LjQtSIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI0NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiAtJWMiCittc2dzdHIgItC90LXQuNC30LLQtdGB0YLQvdGL0Lkg0L/QsNGA0LDQvNC10YLRgCAtJWMiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLSVjIG9wdGlvbiB0YWtlcyBhIHZhbHVlIgorbXNnc3RyICLQv9Cw0YDQsNC80LXRgtGAIC0lYyDQtNC+0LvQttC10L0g0LjQvNC10YLRjCDQt9C90LDRh9C10L3QuNC1IgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjU4CisjLCBjLWZvcm1hdAorbXNnaWQgIi0lYyBvcHRpb24gZG9lcyBub3QgdGFrZSBhIHZhbHVlIgorbXNnc3RyICLQv9Cw0YDQsNC80LXRgtGAIC0lYyDQvdC1INC/0YDQuNC90LjQvNCw0LXRgiDQt9C90LDRh9C10L3QuNC1IgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjcxCisjLCBjLWZvcm1hdAorbXNnaWQgIm9ic29sZXRlIG9wdGlvbiAnLS0lcydcbiIKK21zZ3N0ciAi0YPRgdGC0LDRgNC10LLRiNC40Lkg0L/QsNGA0LDQvNC10YLRgCDCqy0tJXPCu1xuIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6Mjg3CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZsaWN0aW5nIGFjdGlvbnMgLSVjICgtLSVzKSBhbmQgLSVjICgtLSVzKSIKK21zZ3N0ciAi0L3QtdGB0L7QstC80LXRgdGC0LjQvNGL0LUg0LTQtdC50YHRgtCy0LjRjyAtJWMgKC0tJXMpINC4IC0lYyAoLS0lcykiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSB2YWx1ZSBmb3IgYCVzJyBmaWVsZCIKK21zZ3N0ciAi0LfQvdCw0YfQtdC90LjQtSDQv9C+0LvRjyDCqyVzwrsg0LTQvtC70LbQvdC+INCy0YHRgtGA0LXRh9Cw0YLRjNGB0Y8g0YLQvtC70YzQutC+INC+0LTQuNC9INGA0LDQtyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoxNDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidXNlci1kZWZpbmVkIGZpZWxkIG5hbWUgYCUuKnMnIHRvbyBzaG9ydCIKK21zZ3N0ciAi0L3QsNC30LLQsNC90LjQtSDQv9C+0LvRjNC30L7QstCw0YLQtdC70YzRgdC60L7Qs9C+INC/0L7Qu9GPIMKrJS4qc8K7INGB0LvQuNGI0LrQvtC8INC60L7RgNC+0YLQutC+IgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgdmFsdWUgZm9yIHVzZXItZGVmaW5lZCBmaWVsZCBgJS4qcyciCittc2dzdHIgIiIKKyLQt9C90LDRh9C10L3QuNC1INC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjNGB0LrQvtCz0L4g0L/QvtC70Y8gwqslLipzwrsg0LTQvtC70LbQvdC+INCy0YHRgtGA0LXRh9Cw0YLRjNGB0Y8g0YLQvtC70YzQutC+INC+0LTQuNC9INGA0LDQtyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMDcKK21zZ2lkICJDb25maWd1cmVkLVZlcnNpb24gZm9yIHBhY2thZ2Ugd2l0aCBpbmFwcHJvcHJpYXRlIFN0YXR1cyIKK21zZ3N0ciAiQ29uZmlndXJlZC1WZXJzaW9uINC/0LDQutC10YLQsCDRgSDQvdC10LTQvtC/0YPRgdGC0LjQvNGL0Lwg0LfQvdCw0YfQtdC90LjQtdC8IFN0YXR1cyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzICVzIGJ1dCB0cmlnZ2VycyBhcmUgYXdhaXRlZCIKK21zZ3N0ciAi0L/QsNC60LXRgiDQsiDRgdC+0YHRgtC+0Y/QvdC40LggJXMsINC90L4g0LXRgdGC0Ywg0YLRgNC40LPQs9C10YDRiyDQvtC20LjQtNCw0L3QuNGPIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjIyMgorbXNnaWQgInBhY2thZ2UgaGFzIHN0YXR1cyB0cmlnZ2Vycy1hd2FpdGVkIGJ1dCBubyB0cmlnZ2VycyBhd2FpdGVkIgorbXNnc3RyICLQv9Cw0LrQtdGCINCyINGB0L7RgdGC0L7Rj9C90LjQuCB0cmlnZ2Vycy1hd2FpdGVkLCDQvdC+INC90LXRgiDRgtGA0LjQs9Cz0LXRgNC+0LIg0L7QttC40LTQsNC90LjRjyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzICVzIGJ1dCB0cmlnZ2VycyBhcmUgcGVuZGluZyIKK21zZ3N0ciAi0L/QsNC60LXRgiDQsiDRgdC+0YHRgtC+0Y/QvdC40LggJXMsINC90L4g0LXRgdGC0Ywg0YLRgNC40LPQs9C10YDRiyDRgNCw0YHRgdC80L7RgtGA0LXQvdC40Y8iCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjMyCittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzIHRyaWdnZXJzLXBlbmRpbmcgYnV0IG5vIHRyaWdnZXJzIHBlbmRpbmciCittc2dzdHIgItC/0LDQutC10YIg0LIg0YHQvtGB0YLQvtGP0L3QuNC4IHRyaWdnZXJzLWF3YWl0ZWQsINC90L4g0L3QtdGCINGC0YDQuNCz0LPQtdGA0L7QsiDRgNCw0YHRgdC80L7RgtGA0LXQvdC40Y8iCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjQyCittc2dpZCAiUGFja2FnZSB3aGljaCBpbiBzdGF0ZSBub3QtaW5zdGFsbGVkIGhhcyBjb25mZmlsZXMsIGZvcmdldHRpbmcgdGhlbSIKK21zZ3N0ciAiIgorItCf0LDQutC10YIg0LIg0YHQvtGB0YLQvtGP0L3QuNC4IG5vdC1pbnN0YWxsZWQg0LjQvNC10Lsg0YTQsNC50LvRiyDQvdCw0YHRgtGA0L7QudC60LgsINC80L7QttC90L4g0L3QtSDQv9GA0LjQvdC40LzQsNGC0Ywg0LLQviAiCisi0LLQvdC40LzQsNC90LjQtSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozMzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gcGFja2FnZSBpbmZvIGZpbGUgYCUuMjU1cycgZm9yIHJlYWRpbmciCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L7RgtC60YDRi9GC0Ywg0LTQu9GPINGH0YLQtdC90LjRjyDRhNCw0LnQuyDQuNC90YTQvtGA0LzQsNGG0LjQuCDQviDQv9Cw0LrQtdGC0LUgwqslLjI1NXPCuyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozNDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2FuJ3Qgc3RhdCBwYWNrYWdlIGluZm8gZmlsZSBgJS4yNTVzJyIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQv9C+0LvRg9GH0LjRgtGMINC40L3RhNC+0YDQvNCw0YbQuNGOINC+INGE0LDQudC70LUg0LjQvdGE0L7RgNC80LDRhtC40Lgg0L4g0L/QsNC60LXRgtC1IMKrJS4yNTVzwrsiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzQ3CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbid0IG1tYXAgcGFja2FnZSBpbmZvIGZpbGUgYCUuMjU1cyciCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L7RgtC+0LHRgNCw0LfQuNGC0Ywg0YTQsNC50Lsg0LjQvdGE0L7RgNC80LDRhtC40Lgg0L4g0L/QsNC60LXRgtC1IMKrJS4yNTVzwrsg0LIg0L/QsNC80Y/RgtGMIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjM1MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiY2FuJ3Qgc3RhdCBwYWNrYWdlIGluZm8gZmlsZSBgJS4yNTVzJyIKK21zZ2lkICJyZWFkaW5nIHBhY2thZ2UgaW5mbyBmaWxlICclLjI1NXMnIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC/0L7Qu9GD0YfQuNGC0Ywg0LjQvdGE0L7RgNC80LDRhtC40Y4g0L4g0YTQsNC50LvQtSDQuNC90YTQvtGA0LzQsNGG0LjQuCDQviDQv9Cw0LrQtdGC0LUgwqslLjI1NXPCuyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNsb3NlIGFmdGVyIHJlYWQ6IGAlLjI1NXMnIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC30LDQutGA0YvRgtGMINGE0LDQudC7IMKrJS4yNTVzwrsg0L/QvtGB0LvQtSDRh9GC0LXQvdC40Y8iCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDA0CisjLCBjLWZvcm1hdAorbXNnaWQgIkVPRiBhZnRlciBmaWVsZCBuYW1lIGAlLipzJyIKK21zZ3N0ciAi0L/QvtGB0LvQtSDQuNC80LXQvdC4INC/0L7Qu9GPIMKrJS4qc8K7INC+0LHQvdCw0YDRg9C20LXQvSDRgdC40LzQstC+0Lsg0LrQvtC90YbQsCDRhNCw0LnQu9CwIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQwNworIywgYy1mb3JtYXQKK21zZ2lkICJuZXdsaW5lIGluIGZpZWxkIG5hbWUgYCUuKnMnIgorbXNnc3RyICLQsiDQuNC80LXQvdC4INC/0L7Qu9GPIMKrJS4qc8K7INC+0LHQvdCw0YDRg9C20LXQvSDRgdC40LzQstC+0Lsg0LrQvtC90YbQsCDRgdGC0YDQvtC60LgiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDEwCisjLCBjLWZvcm1hdAorbXNnaWQgIk1TRE9TIEVPRiAoXlopIGluIGZpZWxkIG5hbWUgYCUuKnMnIgorbXNnc3RyICLQsiDQuNC80LXQvdC4INC/0L7Qu9GPIMKrJS4qc8K7INC+0LHQvdCw0YDRg9C20LXQvSDRgdC40LzQstC+0Lsg0LrQvtC90YbQsCDRhNCw0LnQu9CwIE1TIERPUyAoXlopIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQxNAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWVsZCBuYW1lIGAlLipzJyBtdXN0IGJlIGZvbGxvd2VkIGJ5IGNvbG9uIgorbXNnc3RyICLQv9C+0YHQu9C1INC40LzQtdC90Lgg0L/QvtC70Y8gwqslLipzwrsg0LTQvtC70LbQvdC+INC40LTRgtC4INC00LLQvtC10YLQvtGH0LjQtSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiRU9GIGJlZm9yZSB2YWx1ZSBvZiBmaWVsZCBgJS4qcycgKG1pc3NpbmcgZmluYWwgbmV3bGluZSkiCittc2dzdHIgIiIKKyLQv9C10YDQtdC0INC30L3QsNGH0LXQvdC40LXQvCDQv9C+0LvRjyDCqyUuKnPCuyDQvtCx0L3QsNGA0YPQttC10L0g0YHQuNC80LLQvtC7INC60L7QvdGG0LAg0YTQsNC50LvQsCAo0L7RgtGB0YPRgtGB0YLQstGD0LXRgiDRgdC40LzQstC+0LsgIgorItC60L7QvdGG0LAg0YHRgtGA0L7QutC4KSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiTVNET1MgRU9GIGNoYXIgaW4gdmFsdWUgb2YgZmllbGQgYCUuKnMnIChtaXNzaW5nIG5ld2xpbmU/KSIKK21zZ3N0ciAiIgorItCyINC30L3QsNGH0LXQvdC40Lgg0L/QvtC70Y8gwqslLipzwrsg0L7QsdC90LDRgNGD0LbQtdC9INGB0LjQvNCy0L7QuyDQutC+0L3RhtCwINGE0LDQudC70LAgTVMgRE9TICjQstC+0LfQvNC+0LbQvdC+LCAiCisi0L7RgtGB0YPRgtGB0YLQstGD0LXRgiDRgdC40LzQstC+0Lsg0LrQvtC90YbQsCDRgdGC0YDQvtC60LgpIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQ0MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAibmV3bGluZSBpbiBmaWVsZCBuYW1lIGAlLipzJyIKK21zZ2lkICJibGFuayBsaW5lIGluIHZhbHVlIG9mIGZpZWxkICclLipzJyIKK21zZ3N0ciAi0LIg0LjQvNC10L3QuCDQv9C+0LvRjyDCqyUuKnPCuyDQvtCx0L3QsNGA0YPQttC10L0g0YHQuNC80LLQvtC7INC60L7QvdGG0LAg0YHRgtGA0L7QutC4IgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQ2MQorIywgYy1mb3JtYXQKK21zZ2lkICJFT0YgZHVyaW5nIHZhbHVlIG9mIGZpZWxkIGAlLipzJyAobWlzc2luZyBmaW5hbCBuZXdsaW5lKSIKK21zZ3N0ciAiIgorItCyINC30L3QsNGH0LXQvdC40Lgg0L/QvtC70Y8gwqslLipzwrsg0L7QsdC90LDRgNGD0LbQtdC9INGB0LjQvNCy0L7QuyDQutC+0L3RhtCwINGE0LDQudC70LAgKNC+0YLRgdGD0YLRgdGC0LLRg9C10YIg0YHQuNC80LLQvtC7ICIKKyLQutC+0L3RhtCwINGB0YLRgNC+0LrQuCkiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NTQ2Cittc2dpZCAic2V2ZXJhbCBwYWNrYWdlIGluZm8gZW50cmllcyBmb3VuZCwgb25seSBvbmUgYWxsb3dlZCIKK21zZ3N0ciAiIgorItC+0LHQvdCw0YDRg9C20LXQvdC+INC90LXRgdC60L7Qu9GM0LrQviDRjdC60LfQtdC80L/Qu9GP0YDQvtCyINC40L3RhNC+0YDQvNCw0YbQuNC4INC+INC/0LDQutC10YLQtSwg0YXQvtGC0Y8g0LTQvtC/0YPRgdC60LDQtdGC0YHRjyAiCisi0YLQvtC70YzQutC+INC+0LTQuNC9IgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjU3MgorIywgYy1mb3JtYXQKK21zZ2lkICJubyBwYWNrYWdlIGluZm9ybWF0aW9uIGluIGAlLjI1NXMnIgorbXNnc3RyICLQsiDRhNCw0LnQu9C1IMKrJS4yNTVzwrsg0L3QtdGCINC40L3RhNC+0YDQvNCw0YbQuNC4INC+INC/0LDQutC10YLQtSIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6NDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIlcywgaW4gZmlsZSAnJS4yNTVzJyBuZWFyIGxpbmUgJWQgcGFja2FnZSAnJS4yNTVzJzpcbiIKKyN8ICIgIgorbXNnaWQgIiIKKyJwYXJzaW5nIGZpbGUgJyUuMjU1cycgbmVhciBsaW5lICVkIHBhY2thZ2UgJyUuMjU1cyc6XG4iCisiICUuMjU1cyIKK21zZ3N0ciAiIgorIiVzLCDRhNCw0LnQuyDCqyUuMjU1c8K7INC+0LrQvtC70L4g0YHRgtGA0L7QutC4ICVkINC/0LDQutC10YLQsCDCqyUuMjU1c8K7OlxuIgorIiAiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjQ4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiJXMsIGluIGZpbGUgJyUuMjU1cycgbmVhciBsaW5lICVkOlxuIgorI3wgIiAiCittc2dpZCAiIgorInBhcnNpbmcgZmlsZSAnJS4yNTVzJyBuZWFyIGxpbmUgJWQ6XG4iCisiICUuMjU1cyIKK21zZ3N0ciAiIgorIiVzLCDRhNCw0LnQuyDCqyUuMjU1c8K7INC+0LrQvtC70L4g0YHRgtGA0L7QutC4ICVkOlxuIgorIiAiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjEyNQorbXNnaWQgIm1heSBub3QgYmUgZW1wdHkgc3RyaW5nIgorbXNnc3RyICLQvdC1INC80L7QttC10YIg0LHRi9GC0Ywg0L/Rg9GB0YLQvtC5INGB0YLRgNC+0LrQvtC5IgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoxMjcKKyMsIGZ1enp5CisjfCBtc2dpZCAibXVzdCBzdGFydCB3aXRoIGFuIGFscGhhbnVtZXJpYyIKK21zZ2lkICJtdXN0IHN0YXJ0IHdpdGggYW4gYWxwaGFudW1lcmljIGNoYXJhY3RlciIKK21zZ3N0ciAi0LTQvtC70LbQvdC+INC90LDRh9C40L3QsNGC0YzRgdGPINGBINC70LDRgtC40L3RgdC60L7QuSDQsdGD0LrQstGLINC40LvQuCDRhtC40YTRgNGLIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoxMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2hhcmFjdGVyIGAlYycgbm90IGFsbG93ZWQgKG9ubHkgbGV0dGVycywgZGlnaXRzIGFuZCBjaGFyYWN0ZXJzIGAlcycpIgorbXNnc3RyICIiCisi0YHQuNC80LLQvtC7IMKrJWPCuyDQvdC10LTQvtC/0YPRgdGC0LjQvCAo0LTQvtC/0YPRgdGC0LjQvNGLINC70LDRgtC40L3RgdC60LjQtSDQsdGD0LrQstGLLCDRhtC40YTRgNGLINC4INGB0LjQvNCy0L7Qu9GLIMKrJXPCuykiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjE3OAorIywgZnV6enkKKyN8IG1zZ2lkICI8bm9uZT4iCittc2djdHh0ICJ2ZXJzaW9uIgorbXNnaWQgIjxub25lPiIKK21zZ3N0ciAiPNC90LXRgj4iCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjIwOQorbXNnaWQgInZlcnNpb24gc3RyaW5nIGlzIGVtcHR5IgorbXNnc3RyICLRgdGC0YDQvtC60LAg0LLQtdGA0YHQuNC4INC/0YPRgdGC0LAiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjIyNAorbXNnaWQgInZlcnNpb24gc3RyaW5nIGhhcyBlbWJlZGRlZCBzcGFjZXMiCittc2dzdHIgItCyINGB0YLRgNC+0LrQtSDQstC10YDRgdC40Lgg0LXRgdGC0Ywg0L/RgNC+0LHQtdC70YsiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjIzMAorbXNnaWQgImVwb2NoIGluIHZlcnNpb24gaXMgbm90IG51bWJlciIKK21zZ3N0ciAi0Y3Qv9C+0YXQsCDQstC10YDRgdC40Lgg0L3QtSDRj9Cy0LvRj9C10YLRgdGPINGH0LjRgdC70L7QvCIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjMyCittc2dpZCAibm90aGluZyBhZnRlciBjb2xvbiBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAi0L/QvtGB0LvQtSDQtNCy0L7QtdGC0L7Rh9C40Y8g0LIg0L3QvtC80LXRgNC1INCy0LXRgNGB0LjQuCDQvdC40YfQtdCz0L4g0L3QtSDRgdC70LXQtNGD0LXRgiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjQ3Cittc2dpZCAidmVyc2lvbiBudW1iZXIgZG9lcyBub3Qgc3RhcnQgd2l0aCBkaWdpdCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyNTAKK21zZ2lkICJpbnZhbGlkIGNoYXJhY3RlciBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAi0L3QtdC00L7Qv9GD0YHRgtC40LzRi9C5INGB0LjQvNCy0L7QuyDQsiDQvdC+0LzQtdGA0LUg0LLQtdGA0YHQuNC4IgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyNTQKK21zZ2lkICJpbnZhbGlkIGNoYXJhY3RlciBpbiByZXZpc2lvbiBudW1iZXIiCittc2dzdHIgItC90LXQtNC+0L/Rg9GB0YLQuNC80YvQuSDRgdC40LzQstC+0Lsg0LIg0L3QvtC80LXRgNC1INGA0LXQtNCw0LrRhtC40LgiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjI5OSBsaWIvZHBrZy9wYXJzZWhlbHAuYzozMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAibWlzc2luZyAlcyIKK21zZ3N0ciAi0L7RgtGB0YPRgtGB0YLQstGD0LXRgiAlcyIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MzAxIGxpYi9kcGtnL3BhcnNlaGVscC5jOjMxNAorIywgYy1mb3JtYXQKK21zZ2lkICJlbXB0eSB2YWx1ZSBmb3IgJXMiCittc2dzdHIgItC/0YPRgdGC0L7QtSDQt9C90LDRh9C10L3QuNC1INGC0LDQvCwg0LPQtNC1INC+0LbQuNC00LDQtdGC0YHRjyAlcyIKKworIzogbGliL2Rwa2cvcGtnLWZvcm1hdC5jOjgwCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgY2hhcmFjdGVyIGAlYycgaW4gZmllbGQgd2lkdGhcbiIKK21zZ3N0ciAi0LIg0LfQsNC/0LjRgdC4INC+INGI0LjRgNC40L3QtSDQv9C+0LvRjyDQstGB0YLRgNC10YfQsNC10YLRgdGPINC90LXQtNC+0L/Rg9GB0YLQuNC80YvQuSDRgdC40LzQstC+0LsgwqslY8K7XG4iCisKKyM6IGxpYi9kcGtnL3BrZy1mb3JtYXQuYzoxNzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2xvc2luZyBicmFjZSBtaXNzaW5nIGluIGZvcm1hdFxuIgorbXNnc3RyICLQkiDRgdGC0YDQvtC60LUg0YTQvtGA0LzQsNGC0LAg0L7RgtGB0YPRgtGB0YLQstGD0LXRgiDQt9Cw0LrRgNGL0LLQsNGO0YnQsNGPINGE0LjQs9GD0YDQvdCw0Y8g0YHQutC+0LHQutCwXG4iCisKKyM6IGxpYi9kcGtnL3BrZy1zaG93LmM6NDAKK21zZ2lkICIobm8gZGVzY3JpcHRpb24gYXZhaWxhYmxlKSIKK21zZ3N0ciAiKNC+0L/QuNGB0LDQvdC40LUg0L3QtdC00L7RgdGC0YPQv9C90L4pIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGlnbm9yZSBzaWduYWwgJXMgYmVmb3JlIHJ1bm5pbmcgJS4yNTBzIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC/0YDQvtC40LPQvdC+0YDQuNGA0L7QstCw0YLRjCDRgdC40LPQvdCw0LsgJXMg0L/QtdGA0LXQtCDQt9Cw0L/Rg9GB0LrQvtC8ICUuMjUwcyIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjY4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHVuLWNhdGNoaW5nIHNpZ25hbCAlczogJXNcbiIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQstC+0YHRgdGC0LDQvdC+0LLQuNGC0Ywg0YHRgtCw0YDRi9C5INC+0LHRgNCw0LHQvtGC0YfQuNC6INGB0LjQs9C90LDQu9CwICVzOiAlc1xuIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgKHN1YnByb2Nlc3MpOiAlc1xuIgorbXNnc3RyICIlcyAo0L/QvtC00L/RgNC+0YbQtdGB0YEpOiAlc1xuIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6ODkgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQ1NAorbXNnaWQgImZvcmsgZmFpbGVkIgorbXNnc3RyICLQvtGI0LjQsdC60LAg0L/RgNC4INCy0YvQv9C+0LvQvdC10L3QuNC4INGB0LjRgdGC0LXQvNC90L7Qs9C+INCy0YvQt9C+0LLQsCBmb3JrIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTE5CisjLCBjLWZvcm1hdAorbXNnaWQgInN1YnByb2Nlc3MgJXMgcmV0dXJuZWQgZXJyb3IgZXhpdCBzdGF0dXMgJWQiCittc2dzdHIgItC/0L7QtNC/0YDQvtGG0LXRgdGBICVzINCy0L7Qt9Cy0YDQsNGC0LjQuyDQutC+0LQg0L7RiNC40LHQutC4ICVkIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTI4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ3YWl0IGZvciBzdWJwcm9jZXNzICVzIGZhaWxlZCIKK21zZ2lkICJzdWJwcm9jZXNzICVzIHdhcyBpbnRlcnJ1cHRlZCIKK21zZ3N0ciAi0L7QttC40LTQsNC90LjQtSDQt9Cw0LLQtdGA0YjQtdC90LjRjyDQv9C+0LTQv9GA0L7RhtC10YHRgdCwICVzINC30LDQstC10YDRiNC40LvQvtGB0Ywg0L3QtdGD0LTQsNGH0L3QviIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEzMAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic3VicHJvY2VzcyAlcyBraWxsZWQgYnkgc2lnbmFsICglcyklcyIKK21zZ2lkICJzdWJwcm9jZXNzICVzIHdhcyBraWxsZWQgYnkgc2lnbmFsICglcyklcyIKK21zZ3N0ciAi0L/QvtC00L/RgNC+0YbQtdGB0YEgJXMg0LfQsNCy0LXRgNGI0ZHQvSDQv9C+INGB0LjQs9C90LDQu9GDICglcyklcyIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEzMgorbXNnaWQgIiwgY29yZSBkdW1wZWQiCittc2dzdHIgIiwg0YHQvtC30LTQsNC9INGE0LDQudC7IGNvcmUiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAic3VicHJvY2VzcyAlcyBmYWlsZWQgd2l0aCB3YWl0IHN0YXR1cyBjb2RlICVkIgorbXNnc3RyICLRgNCw0LHQvtGC0LAg0L/QvtC00L/RgNC+0YbQtdGB0YHQsCAlcyDQt9Cw0LLQtdGA0YjQuNC70LDRgdGMINC90LXRg9C00LDRh9C90L4g0YEg0LrQvtC00L7QvCDRgdC+0YHRgtC+0Y/QvdC40Y8gJWQiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxNTEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQ2MQorIywgYy1mb3JtYXQKK21zZ2lkICJ3YWl0IGZvciBzdWJwcm9jZXNzICVzIGZhaWxlZCIKK21zZ3N0ciAi0L7QttC40LTQsNC90LjQtSDQt9Cw0LLQtdGA0YjQtdC90LjRjyDQv9C+0LTQv9GA0L7RhtC10YHRgdCwICVzINC30LDQstC10YDRiNC40LvQvtGB0Ywg0L3QtdGD0LTQsNGH0L3QviIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBwYWNrYWdlIG5hbWUgYCUuMjUwcycgaW4gdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi0L3QtdCy0LXRgNC90L7QtSDQuNC80Y8g0L/QsNC60LXRgtCwIMKrJS4yNTBzwrsg0LIg0YTQsNC50LvQtSDRgtGA0LjQs9Cz0LXRgNC+0LIgZGVmZXJyZWQgwqslLjI1MHPCuyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJ1bmNhdGVkIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgItGD0YDQtdC30LDQvdC90YvQuSDRhNCw0LnQuyDRgtGA0LjQs9Cz0LXRgNC+0LIgZGVmZXJyZWQgwqslLjI1MHPCuyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yIGluIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcycgYXQgY2hhcmFjdGVyIGAlcyclcyIKK21zZ3N0ciAiIgorItGB0LjQvdGC0LDQutGB0LjRh9C10YHQutCw0Y8g0L7RiNC40LHQutCwINCyINGE0LDQudC70LUg0YLRgNC40LPQs9C10YDQvtCyIGRlZmVycmVkIMKrJS4yNTBzwrssINC90LDRh9C40L3QsNGPINGBINGB0LjQvNCy0L7Qu9CwICIKKyLCqyVzwrslcyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuL2NyZWF0ZSB0cmlnZ2VycyBsb2NrZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQvtGC0LrRgNGL0YLRjC/RgdC+0LfQtNCw0YLRjCDRhNCw0LnQuyDQsdC70L7QutC40YDQvtCy0LrQuCDRgtGA0LjQs9Cz0LXRgNC+0LIgwqslLjI1MHPCuyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MTQxCisjLCBmdXp6eQorI3wgbXNnaWQgInRyaWdnZXJlZCIKK21zZ2lkICJ0cmlnZ2VycyBhcmVhIgorbXNnc3RyICLRgSDRgtGA0LjQs9Cz0LXRgNC+0LwiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjE1MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC/0L7Qu9GD0YfQuNGC0Ywg0LjQvdGE0L7RgNC80LDRhtC40Y4g0L4g0YTQsNC50LvQtSDRgtGA0LjQs9Cz0LXRgNC+0LIgZGVmZXJyZWQgwqslLjI1MHPCuyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MTY1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L7RgtC60YDRi9GC0Ywg0YTQsNC50Lsg0YLRgNC40LPQs9C10YDQvtCyIGRlZmVycmVkIMKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjE3OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3Blbi9jcmVhdGUgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L7RgtC60YDRi9GC0Ywv0YHQvtC30LTQsNGC0Ywg0L3QvtCy0YvQuSDRhNCw0LnQuyDRgtGA0LjQs9Cz0LXRgNC+0LIgZGVmZXJyZWQgwqslLjI1MHPCuyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MjE1CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHJlYWRpbmcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi0L7RiNC40LHQutCwINGH0YLQtdC90LjRjyDRhNCw0LnQu9CwINGC0YDQuNCz0LPQtdGA0L7QsiBkZWZlcnJlZCDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoyMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ldyB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLQvtGI0LjQsdC60LAg0LfQsNC/0LjRgdC4INCyINC90L7QstGL0Lkg0YTQsNC50Lsg0YLRgNC40LPQs9C10YDQvtCyIGRlZmVycmVkIMKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjIyOAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LfQsNC60YDRi9GC0Ywg0L3QvtCy0YvQuSDRhNCw0LnQuyDRgtGA0LjQs9Cz0LXRgNC+0LIgZGVmZXJyZWQgwqslLjI1MHPCuyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MjMyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGD0YHRgtCw0L3QvtCy0LjRgtGMINC90L7QstGL0Lkg0YTQsNC50Lsg0YLRgNC40LPQs9C10YDQvtCyIGRlZmVycmVkIMKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzoyMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImludmFsaWQgb3IgdW5rbm93biBzeW50YXggaW4gdHJpZ2dlciBuYW1lIGAlLjI1MHMnIChpbiB0cmlnZ2VyIGludGVyZXN0cyBmb3IgIgorInBhY2thZ2UgYCUuMjUwcycpIgorbXNnc3RyICIiCisi0L3QtdC/0YDQsNCy0LjQu9GM0L3Ri9C5INC40LvQuCDQvdC10LjQt9Cy0LXRgdGC0L3Ri9C5INGB0LjQvdGC0LDQutGB0LjRgSDQsiDQuNC80LXQvdC4INGC0YDQuNCz0LPQtdGA0LAgwqslLjI1MHPCuyAo0LIg0YLRgNC40LPQs9C10YDQtSAiCisiaW50ZXJlc3RzINC00LvRjyDQv9Cw0LrQtdGC0LAgwqslLjI1MHPCuykiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzoyNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gdHJpZ2dlciBpbnRlcmVzdCBsaXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L7RgtC60YDRi9GC0Ywg0YTQsNC50Lsg0YHQv9C40YHQutCwINGC0YDQuNCz0LPQtdGA0L7QsiBpbnRlcmVzdCDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MjkyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINCy0LXRgNC90YPRgtGM0YHRjyDQsiDQvdCw0YfQsNC70L4g0YTQsNC50LvQsCDRgtGA0LjQs9Cz0LXRgNCwIGludGVyZXN0IMKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyBzeW50YXggZXJyb3I7IGlsbGVnYWwgcGFja2FnZSBuYW1lIGAlLjI1MHMnOiAiCisiJS4yNTBzIgorbXNnc3RyICIiCisi0L7RiNC40LHQutCwINCyINGE0LDQudC70LUg0YLRgNC40LPQs9C10YDQsCBpbnRlcmVzdCDCqyUuMjUwc8K7OyDQvdC10L/RgNCw0LLQuNC70YzQvdC+0LUg0LjQvNGPINC/0LDQutC10YLQsCDCqyUuMjUwc8K7OiAiCisiJS4yNTBzIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzE4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC30LDQv9C40YHQsNGC0Ywg0LIg0L3QvtCy0YvQuSDRhNCw0LnQuyDRgtGA0LjQs9Cz0LXRgNCwIGludGVyZXN0IMKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMjEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0YHQsdGA0L7RgdC40YLRjCDQvdCwINC00LjRgdC6INC90L7QstGL0Lkg0YTQsNC50Lsg0YLRgNC40LPQs9C10YDQsCBpbnRlcmVzdCDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzI0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzeW5jIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0YHQuNC90YXRgNC+0L3QuNC30LjRgNC+0LLQsNGC0Ywg0L3QvtCy0YvQuSDRhNCw0LnQuyDRgtGA0LjQs9Cz0LXRgNCwIGludGVyZXN0IMKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRg9GB0YLQsNC90L7QstC40YLRjCDQvdC+0LLRi9C5INGE0LDQudC7INGC0YDQuNCz0LPQtdGA0LAgaW50ZXJlc3QgwqslLjI1MHPCuyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjM0MCBsaWIvZHBrZy90cmlnbGliLmM6MzQyIGxpYi9kcGtnL3RyaWdsaWIuYzo0NzIKKyM6IHNyYy9yZW1vdmUuYzoyODYgc3JjL3JlbW92ZS5jOjM3NworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVtb3ZlIGAlLjI1MHMnIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGD0LTQsNC70LjRgtGMIMKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozNjAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGB0L7Qt9C00LDRgtGMINC90L7QstGL0Lkg0YTQsNC50Lsg0YLRgNC40LPQs9C10YDQsCBpbnRlcmVzdCDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzgzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC30LDQutGA0YvRgtGMINC90L7QstGL0Lkg0YTQsNC50Lsg0YLRgNC40LPQs9C10YDQsCBpbnRlcmVzdCDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDU2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkdXBsaWNhdGUgZmlsZSB0cmlnZ2VyIGludGVyZXN0IGZvciBmaWxlbmFtZSBgJS4yNTBzJyBhbmQgcGFja2FnZSBgJS4yNTBzJyIKK21zZ3N0ciAi0L/QvtCy0YLQvtGAINGE0LDQudC70LAg0YLRgNC40LPQs9C10YDQsCBpbnRlcmVzdCDQtNC70Y8g0YTQsNC50LvQsCDCqyUuMjUwc8K7INC4INC/0LDQutC10YLQsCDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDgzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRgdC+0LfQtNCw0YLRjCDQvdC+0LLRi9C5INGE0LDQudC7INGC0YDQuNCz0LPQtdGA0L7QsiDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDkzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC30LDQv9C40YHQsNGC0Ywg0LIg0L3QvtCy0YvQuSDRhNCw0LnQuyDRgtGA0LjQs9Cz0LXRgNC+0LIgwqslLjI1MHPCuyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ5NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRgdCx0YDQvtGB0LjRgtGMINC90LAg0LTQuNGB0Log0L3QvtCy0YvQuSDRhNCw0LnQuyDRgtGA0LjQs9Cz0LXRgNC+0LIgwqslLjI1MHPCuyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ5OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlICclLjI1MHMnIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGB0LjQvdGF0YDQvtC90LjQt9C40YDQvtCy0LDRgtGMINC90L7QstGL0Lkg0YTQsNC50Lsg0YLRgNC40LPQs9C10YDQvtCyIMKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1MDMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LfQsNC60YDRi9GC0Ywg0L3QvtCy0YvQuSDRhNCw0LnQuyDRgtGA0LjQs9Cz0LXRgNC+0LIgwqslLjI1MHPCuyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjUwNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGFzIGAlLjI1MHMnIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGD0YHRgtCw0L3QvtCy0LjRgtGMINC90L7QstGL0Lkg0YTQsNC50Lsg0YLRgNC40LPQs9C10YDQvtCyIMKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1NDIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC/0YDQvtGH0LjRgtCw0YLRjCDRhNCw0LnQuyDRgtGA0LjQs9Cz0LXRgNC+0LIgwqslLjI1MHPCuyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjU1MgorIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLRgdC40L3RgtCw0LrRgdC40YfQtdGB0LrQsNGPINC+0YjQuNCx0LrQsCDQsiDRhNCw0LnQu9C1INGC0YDQuNCz0LPQtdGA0L7QsiDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTYzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmaWxlIHRyaWdnZXJzIHJlY29yZCBtZW50aW9ucyBpbGxlZ2FsIHBhY2thZ2UgbmFtZSBgJS4yNTBzJyAoZm9yIGludGVyZXN0IGluICIKKyJmaWxlIGAlLjI1MHMnKTogJS4yNTBzIgorbXNnc3RyICIiCisi0LfQsNC/0LjRgdGMINGE0LDQudC70LAg0YLRgNC40LPQs9C10YDQvtCyINGB0L7QtNC10YDQttC40YIg0L3QtdCy0LXRgNC90L7QtSDQuNC80Y8g0L/QsNC60LXRgtCwIMKrJS4yNTBzwrsgKNC00LvRjyBpbnRlcmVzdCDQsiAiCisi0YTQsNC50LvQtSDCqyUuMjUwc8K7KTogJS4yNTBzIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NjY1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ0cmlnZ2VycyBjaSBmaWxlIGAlLjI1MHMnIGNvbnRhaW5zIGlsbGVnYWwgdHJpZ2dlciBzeW50YXggaW4gdHJpZ2dlciBuYW1lIGAiCisiJS4yNTBzJzogJS4yNTBzIgorbXNnc3RyICIiCisi0YTQsNC50Lsg0YLRgNC40LPQs9C10YDQvtCyIGNpIMKrJS4yNTBzwrsg0YHQvtC00LXRgNC20LjRgiDQvdC10LLQtdGA0L3Ri9C5INGB0LjQvdGC0LDQutGB0LjRgSDQsiDQuNC80LXQvdC4INGC0YDQuNCz0LPQtdGA0LAgIgorIsKrJS4yNTBzwrs6ICUuMjUwcyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjY4NAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiB0cmlnZ2VycyBjaSBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC+0YLQutGA0YvRgtGMINGE0LDQudC7INGC0YDQuNCz0LPQtdGA0L7QsiBjaSDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Njk5Cittc2dpZCAidHJpZ2dlcnMgY2kgZmlsZSBjb250YWlucyB1bmtub3duIGRpcmVjdGl2ZSBzeW50YXgiCittc2dzdHIgItGE0LDQudC7INGC0YDQuNCz0LPQtdGA0L7QsiBjaSDRgdC+0LTQtdGA0LbQuNGCINC00LjRgNC10LrRgtC40LLRgyDRgSDQvdC10LjQt9Cy0LXRgdGC0L3Ri9C8INGB0LjQvdGC0LDQutGB0LjRgdC+0LwiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo3MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJpZ2dlcnMgY2kgZmlsZSBjb250YWlucyB1bmtub3duIGRpcmVjdGl2ZSBgJS4yNTBzJyIKK21zZ3N0ciAi0YTQsNC50Lsg0YLRgNC40LPQs9C10YDQvtCyIGNpINGB0L7QtNC10YDQttC40YIg0L3QtdC40LfQstC10YHRgtC90YPRjiDQtNC40YDQtdC60YLQuNCy0YMgwqslLjI1MHPCuyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjc3NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHRyaWdnZXJzIHN0YXRlIGRpcmVjdG9yeSBgJS4yNTBzJyIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRgdC+0LfQtNCw0YLRjCDQutCw0YLQsNC70L7QsyDRgdC+0YHRgtC+0Y/QvdC40Y8g0YLRgNC40LPQs9C10YDQvtCyIMKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo3NzkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNldCBvd25lcnNoaXAgb2YgdHJpZ2dlcnMgc3RhdGUgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICIiCisi0L3QtSDRg9C00LDQu9C+0YHRjCDQvdCw0LfQvdCw0YfQuNGC0Ywg0LLQu9Cw0LTQtdC70YzRhtCwINC00LvRjyDQutCw0YLQsNC70L7Qs9CwINGB0L7RgdGC0L7Rj9C90LjRjyDRgtGA0LjQs9Cz0LXRgNC+0LIgwqslLjI1MHPCuyIKKworIzogbGliL2Rwa2cvdHJpZ25hbWUuYzozNAorbXNnaWQgImVtcHR5IHRyaWdnZXIgbmFtZXMgYXJlIG5vdCBwZXJtaXR0ZWQiCittc2dzdHIgItC/0YPRgdGC0YvQtSDQuNC80LXQvdCwINGC0YDQuNCz0LPQtdGA0L7QsiDQvdC1INGA0LDQt9GA0LXRiNC10L3RiyIKKworIzogbGliL2Rwa2cvdHJpZ25hbWUuYzozOAorbXNnaWQgInRyaWdnZXIgbmFtZSBjb250YWlucyBpbnZhbGlkIGNoYXJhY3RlciIKK21zZ3N0ciAi0LjQvNGPINGC0YDQuNCz0LPQtdGA0LAg0YHQvtC00LXRgNC20LjRgiDQvdC10LTQvtC/0YPRgdGC0LjQvNGL0Lkg0YHQuNC80LLQvtC7IgorCisjOiBsaWIvZHBrZy91dGlscy5jOjU2CisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWQgZXJyb3IgaW4gYCUuMjUwcyciCittc2dzdHIgItC+0YjQuNCx0LrQsCDRh9GC0LXQvdC40Y8g0LIgwqslLjI1MHPCuyIKKworIzogbGliL2Rwa2cvdXRpbHMuYzo2MQorIywgYy1mb3JtYXQKK21zZ2lkICJmZ2V0cyBnYXZlIGFuIGVtcHR5IHN0cmluZyBmcm9tIGAlLjI1MHMnIgorbXNnc3RyICJmZ2V0cyDQv9GA0L7Rh9C40YLQsNC7INC/0YPRgdGC0YPRjiDRgdGC0YDQvtC60YMg0LjQtyDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy91dGlscy5jOjYzCisjLCBjLWZvcm1hdAorbXNnaWQgInRvby1sb25nIGxpbmUgb3IgbWlzc2luZyBuZXdsaW5lIGluIGAlLjI1MHMnIgorbXNnc3RyICLRgdC70LjRiNC60L7QvCDQtNC70LjQvdC90LDRjyDRgdGC0YDQvtC60LAg0LjQu9C4INC+0YLRgdGD0YLRgdGC0LLRg9GO0YnQsNGPINC90L7QstCw0Y8g0YHRgtGA0L7QutCwINCyIMKrJS4yNTBzwrsiCisKKyM6IGxpYi9kcGtnL3V0aWxzLmM6NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgcmVhZGluZyBgJS4yNTBzJyIKK21zZ3N0ciAi0L3QtdC+0LbQuNC00LDQvdC90YvQuSDQutC+0L3QtdGGINGE0LDQudC70LAg0L/RgNC4INGH0YLQtdC90LjQuCDCqyUuMjUwc8K7IgorCisjOiBsaWIvZHBrZy92YXJidWYuYzo4MiBsaWIvZHBrZy92YXJidWYuYzo4OAorbXNnaWQgImVycm9yIGZvcm1hdHRpbmcgc3RyaW5nIGludG8gdmFyYnVmIHZhcmlhYmxlIgorbXNnc3RyICLQvtGI0LjQsdC60LAg0L/RgNC4INGE0L7RgNC80LDRgtC40YDQvtCy0LDQvdC40Lgg0YHRgtGA0L7QutC4INCyINC/0LXRgNC10LzQtdC90L3Rg9GOIHZhcmJ1ZiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTc5IHNyYy9hcmNoaXZlcy5jOjIwMCBzcmMvYXJjaGl2ZXMuYzo3MjQKK21zZ2lkICJlcnJvciByZWFkaW5nIGZyb20gZHBrZy1kZWIgcGlwZSIKK21zZ3N0ciAi0L7RiNC40LHQutCwINGH0YLQtdC90LjRjyDQtNCw0L3QvdGL0YUg0LjQtyDQutCw0L3QsNC70LAgZHBrZy1kZWIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjE5NQorIywgYy1mb3JtYXQKK21zZ2lkICJza2lwcGVkIHVucGFja2luZyBmaWxlICclLjI1NXMnIChyZXBsYWNlZCBvciBleGNsdWRlZD8pIgorbXNnc3RyICLQv9GA0L7Qv9GD0YHQutCw0LXRgtGB0Y8g0YDQsNGB0L/QsNC60L7QstCw0L3QvdGL0Lkg0YTQsNC50LsgwqslLjI1NXPCuyAo0LfQsNC80LXQvdGR0L0g0LjQu9C4INC40YHQutC70Y7Rh9GR0L0/KSIKKworIzogc3JjL2FyY2hpdmVzLmM6MjQ2IHNyYy9hcmNoaXZlcy5jOjI1MAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIHRpbWVzdGFtcHMgb2YgYCUuMjU1cyciCittc2dzdHIgItC+0YjQuNCx0LrQsCDQv9GA0Lgg0YPRgdGC0LDQvdC+0LLQutC1INCy0YDQtdC80LXQvdC4INC80L7QtNC40YTQuNC60LDRhtC40LggwqslLjI1NXPCuyIKKworIzogc3JjL2FyY2hpdmVzLmM6MjYyCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHNldHRpbmcgb3duZXJzaGlwIG9mIHN5bWxpbmsgYCUuMjU1cyciCittc2dzdHIgItC+0YjQuNCx0LrQsCDQv9GA0Lgg0YPRgdGC0LDQvdC+0LLQutC1INCy0LvQsNC00LXQu9GM0YbQsCDRgdC40LzQstC+0LvRjNC90L7QuSDRgdGB0YvQu9C60LggwqslLjI1NXPCuyIKKworIzogc3JjL2FyY2hpdmVzLmM6MjY1IHNyYy9hcmNoaXZlcy5jOjczNCBzcmMvc3RhdGNtZC5jOjE2MworIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIG93bmVyc2hpcCBvZiBgJS4yNTVzJyIKK21zZ3N0ciAi0L7RiNC40LHQutCwINC/0YDQuCDRg9GB0YLQsNC90L7QstC60LUg0LLQu9Cw0LTQtdC70YzRhtCwIMKrJS4yNTVzwrsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjI2NyBzcmMvYXJjaGl2ZXMuYzo3MzYgc3JjL3N0YXRjbWQuYzoxNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igc2V0dGluZyBwZXJtaXNzaW9ucyBvZiBgJS4yNTVzJyIKK21zZ3N0ciAi0L7RiNC40LHQutCwINC/0YDQuCDRg9GB0YLQsNC90L7QstC60LUg0L/RgNCw0LIg0LTQvtGB0YLRg9C/0LAg0LogwqslLjI1NXPCuyIKKworIzogc3JjL2FyY2hpdmVzLmM6Mzk1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBzdGF0IChkZXJlZmVyZW5jZSkgZXhpc3Rpbmcgc3ltbGluayBgJS4yNTBzJyIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQstGL0L/QvtC70L3QuNGC0Ywgc3RhdCDQtNC70Y8g0YHRg9GJ0LXRgdGC0LLRg9GO0YnQtdC5INGB0LjQvNCy0L7Qu9GM0L3QvtC5INGB0YHRi9C70LrQuCDCqyUuMjUwc8K7IgorCisjOiBzcmMvYXJjaGl2ZXMuYzo0MTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImZhaWxlZCB0byBzdGF0IChkZXJlZmVyZW5jZSkgcHJvcG9zZWQgbmV3IHN5bWxpbmsgdGFyZ2V0IGAlLjI1MHMnIGZvciAiCisic3ltbGluayBgJS4yNTBzJyIKK21zZ3N0ciAiIgorItC90LUg0YPQtNCw0LvQvtGB0Ywg0LLRi9C/0L7Qu9C90LjRgtGMIHN0YXQg0LTQu9GPINC/0YDQtdC00L/QvtC70LDQs9Cw0LXQvNC+0Lkg0L3QvtCy0L7QuSDRgdC40LzQstC+0LvRjNC90L7QuSDRgdGB0YvQu9C60Lgg0YbQtdC70LggIgorIsKrJS4yNTBzwrsg0LTQu9GPINGB0LjQvNCy0L7Qu9GM0L3QvtC5INGB0YHRi9C70LrQuCDCqyUuMjUwc8K7IgorCisjOiBzcmMvYXJjaGl2ZXMuYzo0NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInRyeWluZyB0byBvdmVyd3JpdGUgYCUuMjUwcycsIHdoaWNoIGlzIHRoZSBkaXZlcnRlZCB2ZXJzaW9uIG9mIGAiCisiJS4yNTBzJyAocGFja2FnZTogJS4xMDBzKSIKK21zZ3N0ciAiIgorItC/0L7Qv9GL0YLQutCwINC/0LXRgNC10L/QuNGB0LDRgtGMIMKrJS4yNTBzwrssINGP0LLQu9GP0Y7RidC40LnRgdGPINC+0YLQutC70L7QvdGR0L3QvdC+0Lkg0LLQtdGA0YHQuNC10LkgwqslLjI1MHPCuyAo0L/QsNC60LXRgjogIgorIiUuMTAwcykiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjQ4MQorIywgYy1mb3JtYXQKK21zZ2lkICJ0cnlpbmcgdG8gb3ZlcndyaXRlIGAlLjI1MHMnLCB3aGljaCBpcyB0aGUgZGl2ZXJ0ZWQgdmVyc2lvbiBvZiBgJS4yNTBzJyIKK21zZ3N0ciAi0L/QvtC/0YvRgtC60LAg0L/QtdGA0LXQv9C40YHQsNGC0YwgwqslLjI1MHPCuywg0Y/QstC70Y/RjtGJ0LjQudGB0Y8g0L7RgtC60LvQvtC90ZHQvdC90L7QuSDQstC10YDRgdC40LXQuSDCqyUuMjUwc8K7IgorCisjOiBzcmMvYXJjaGl2ZXMuYzo1MTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgYCUuMjU1cycgKHdoaWNoIEkgd2FzIGFib3V0IHRvIGluc3RhbGwpIgorbXNnc3RyICIiCisi0L3QtSDRg9C00LDQu9C+0YHRjCDQv9C+0LvRg9GH0LjRgtGMINC40L3RhNC+0YDQvNCw0YbQuNGOINC+IMKrJS4yNTVzwrsgKNC60L7RgtC+0YDRi9C5INC00L7Qu9C20LXQvSDQsdGL0YLRjCDRg9GB0YLQsNC90L7QstC70LXQvSkiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjUxOQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidW5hYmxlIHRvIGNsZWFuIHVwIG1lc3Mgc3Vycm91bmRpbmcgYCUuMjU1cycgYmVmb3JlIGluc3RhbGxpbmcgYW5vdGhlciAiCisidmVyc2lvbiIKK21zZ3N0ciAi0L/RgNC4INGD0YHRgtCw0L3QvtCy0LrQtSDQtNGA0YPQs9C+0Lkg0LLQtdGA0YHQuNC4INC90LUg0YPQtNCw0LvQvtGB0Ywg0L7Rh9C40YHRgtC40YLRjCDQvtC60YDRg9C20LXQvdC40LUgwqslLjI1NXPCuyIKKworIzogc3JjL2FyY2hpdmVzLmM6NTI1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IHJlc3RvcmVkIGAlLjI1NXMnIGJlZm9yZSBpbnN0YWxsaW5nIGFub3RoZXIgdmVyc2lvbiIKK21zZ3N0ciAiIgorItC/0LXRgNC10LQg0YPRgdGC0LDQvdC+0LLQutC+0Lkg0L3QvtCy0L7QuSDQstC10YDRgdC40Lgg0L3QtSDRg9C00LDQu9C+0YHRjCDQv9C+0LvRg9GH0LjRgtGMINC40L3RhNC+0YDQvNCw0YbQuNGOINC+ICIKKyLQstC+0YHRgdGC0LDQvdC+0LLQu9C10L3QvdC+0Lwg0YTQsNC50LvQtSDCqyUuMjU1c8K7IgorCisjOiBzcmMvYXJjaGl2ZXMuYzo1NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiYXJjaGl2ZSBjb250YWluZWQgb2JqZWN0IGAlLjI1NXMnIG9mIHVua25vd24gdHlwZSAweCV4IgorbXNnc3RyICLQsNGA0YXQuNCyINGB0L7QtNC10YDQttC40YIg0L7QsdGK0LXQutGCIMKrJS4yNTVzwrsg0L3QtdC40LfQstC10YHRgtC90L7Qs9C+INGC0LjQv9CwIDB4JXgiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjYyNiBzcmMvZGl2ZXJ0Y21kLmM6MTUwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo2ODIKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjIyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjg0CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTQ0MSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTY4MAorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxNjcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNDQKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTI3CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzdGF0IGZpbGUgJyVzJyIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQstGL0L/QvtC70L3QuNGC0Ywgc3RhdCDQtNC70Y8g0YTQsNC50LvQsCDCqyVzwrsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjY0MQorIywgYy1mb3JtYXQKK21zZ2lkICJSZXBsYWNpbmcgZmlsZXMgaW4gb2xkIHBhY2thZ2UgJXMgLi4uXG4iCittc2dzdHIgItCX0LDQvNC10L3QsCDRhNCw0LnQu9C+0LIg0LIg0YHRgtCw0YDQvtC8INC/0LDQutC10YLQtSAlcyAuLi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6NjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlcGxhY2VkIGJ5IGZpbGVzIGluIGluc3RhbGxlZCBwYWNrYWdlICVzIC4uLlxuIgorbXNnc3RyICLQl9Cw0LzQtdC90LXQvdC+INGE0LDQudC70LDQvNC4INC40Lcg0YPRgdGC0LDQvdC+0LLQu9C10L3QvdC+0LPQviDQv9Cw0LrQtdGC0LAgJXMgLi4uXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjY1NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidHJ5aW5nIHRvIG92ZXJ3cml0ZSBkaXJlY3RvcnkgJyUuMjUwcycgaW4gcGFja2FnZSAlLjI1MHMgJS4yNTBzIHdpdGggIgorIm5vbmRpcmVjdG9yeSIKK21zZ3N0ciAiIgorItC/0L7Qv9GL0YLQutCwINC/0LXRgNC10L/QuNGB0LDRgtGMINC60LDRgtCw0LvQvtCzIMKrJS4yNTBzwrsg0LIg0L/QsNC60LXRgtC1ICUuMjUwcyAlLjI1MHMg0YTQsNC50LvQvtC8LCDQvdC1ICIKKyLRj9Cy0LvRj9GO0YnQuNC80YHRjyDQutCw0YLQsNC70L7Qs9C+0LwiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjY2MQorIywgYy1mb3JtYXQKK21zZ2lkICJ0cnlpbmcgdG8gb3ZlcndyaXRlICclLjI1MHMnLCB3aGljaCBpcyBhbHNvIGluIHBhY2thZ2UgJS4yNTBzICUuMjUwcyIKK21zZ3N0ciAiIgorItC/0L7Qv9GL0YLQutCwINC/0LXRgNC10LfQsNC/0LjRgdCw0YLRjCDCqyUuMjUwc8K7LCDQutC+0YLQvtGA0YvQuSDRg9C20LUg0LjQvNC10LXRgtGB0Y8g0LIg0L/QsNC60LXRgtC1ICUuMjUwcyAlLjI1MHMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjcxMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGAlLjI1NXMnICh3aGlsZSBwcm9jZXNzaW5nIGAlLjI1NXMnKSIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRgdC+0LfQtNCw0YLRjCDCqyUuMjU1c8K7ICjQv9GA0Lgg0L7QsdGA0LDQsdC+0YLQutC1IMKrJS4yNTVzwrspIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3MTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiYmFja2VuZCBkcGtnLWRlYiBkdXJpbmcgYCUuMjU1cyciCittc2dzdHIgItC+0LHRgNCw0LHQvtGC0LrQsCDRhNCw0LnQu9CwIMKrJS4yNTVzwrsg0L/RgNC+0YbQtdGB0YHQvtC8IGRwa2ctZGViIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NDQgc3JjL2FyY2hpdmVzLmM6OTA4IHNyYy9hcmNoaXZlcy5jOjk0OQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nL3dyaXRpbmcgYCUuMjU1cyciCittc2dzdHIgItC+0YjQuNCx0LrQsCDQv9GA0Lgg0LfQsNC60YDRi9GC0LjQuC/Qt9Cw0L/QuNGB0LggwqslLjI1NXPCuyIKKworIzogc3JjL2FyY2hpdmVzLmM6NzQ4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIHBpcGUgYCUuMjU1cyciCittc2dzdHIgItC+0YjQuNCx0LrQsCDRgdC+0LfQtNCw0L3QuNGPINC60LDQvdCw0LvQsCDCqyUuMjU1c8K7IgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NTMgc3JjL2FyY2hpdmVzLmM6NzU4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIGRldmljZSBgJS4yNTVzJyIKK21zZ3N0ciAi0L7RiNC40LHQutCwINGB0L7Qt9C00LDQvdC40Y8g0YPRgdGC0YDQvtC50YHRgtCy0LAgwqslLjI1NXPCuyIKKworIzogc3JjL2FyY2hpdmVzLmM6NzcxCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIGhhcmQgbGluayBgJS4yNTVzJyIKK21zZ3N0ciAi0L7RiNC40LHQutCwINGB0L7Qt9C00LDQvdC40Y8g0LbRkdGB0YLQutC+0Lkg0YHRgdGL0LvQutC4IMKrJS4yNTVzwrsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc3NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NTM5CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIHN5bWJvbGljIGxpbmsgYCUuMjU1cyciCittc2dzdHIgItC+0YjQuNCx0LrQsCDRgdC+0LfQtNCw0L3QuNGPINGB0LjQvNCy0L7Qu9GM0L3QvtC5INGB0YHRi9C70LrQuCDCqyUuMjU1c8K7IgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgZGlyZWN0b3J5IGAlLjI1NXMnIgorbXNnc3RyICLQvtGI0LjQsdC60LAg0YHQvtC30LTQsNC90LjRjyDQutCw0YLQsNC70L7Qs9CwIMKrJS4yNTVzwrsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjgyMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gbW92ZSBhc2lkZSBgJS4yNTVzJyB0byBpbnN0YWxsIG5ldyB2ZXJzaW9uIgorbXNnc3RyICIiCisi0L3QtSDRg9C00LDQu9C+0YHRjCDQv9C10YDQtdC80LXRgdGC0LjRgtGMINCyINC00YDRg9Cz0L7QtSDQvNC10YHRgtC+IMKrJS4yNTVzwrssINGH0YLQviDQvdC10L7QsdGF0L7QtNC40LzQviDQtNC70Y8g0YPRgdGC0LDQvdC+0LLQutC4ICIKKyLQvdC+0LLQvtC5INCy0LXRgNGB0LjQuCIKKworIzogc3JjL2FyY2hpdmVzLmM6ODMyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzozMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgbGluayBgJS4yNTVzJyIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQv9GA0L7Rh9C40YLQsNGC0Ywg0YHQuNC80LLQvtC70YzQvdGD0Y4g0YHRgdGL0LvQutGDIMKrJS4yNTVzwrsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjgzNCBzcmMvY29uZmlndXJlLmM6NDIzCisjLCBjLWZvcm1hdAorbXNnaWQgInN5bWJvbGljIGxpbmsgJyUuMjUwcycgc2l6ZSBoYXMgY2hhbmdlZCBmcm9tICVqZCB0byAlemQiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6ODM5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBtYWtlIGJhY2t1cCBzeW1saW5rIGZvciBgJS4yNTVzJyIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRgdC+0LfQtNCw0YLRjCDRgNC10LfQtdGA0LLQvdGD0Y4g0YHRgdGL0LvQutGDINC90LAgwqslLjI1NXPCuyIKKworIzogc3JjL2FyY2hpdmVzLmM6ODQxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaG93biBiYWNrdXAgc3ltbGluayBmb3IgYCUuMjU1cyciCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0YHQvNC10L3QuNGC0Ywg0LLQu9Cw0LTQtdC70YzRhtCwINGA0LXQt9C10YDQstC90L7QuSDRgdGB0YvQu9C60Lgg0L3QsCDCqyUuMjU1c8K7IgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4NDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG1ha2UgYmFja3VwIGxpbmsgb2YgYCUuMjU1cycgYmVmb3JlIGluc3RhbGxpbmcgbmV3IHZlcnNpb24iCittc2dzdHIgIiIKKyLQvdC1INGD0LTQsNC70L7RgdGMINGB0L7Qt9C00LDRgtGMINGA0LXQt9C10YDQstC90YPRjiDRgdGB0YvQu9C60YMg0L3QsCDCqyUuMjU1c8K7INC/0LXRgNC10LQg0YPRgdGC0LDQvdC+0LLQutC+0Lkg0L3QvtCy0L7QuSDQstC10YDRgdC40LgiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjg2MyBzcmMvYXJjaGl2ZXMuYzo5NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IHZlcnNpb24gb2YgYCUuMjU1cyciCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0YPRgdGC0LDQvdC+0LLQuNGC0Ywg0L3QvtCy0YPRjiDQstC10YDRgdC40Y4gwqslLjI1NXPCuyIKKworIzogc3JjL2FyY2hpdmVzLmM6OTAyIHNyYy9hcmNoaXZlcy5jOjk0NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiAnJS4yNTVzJyIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQvtGC0LrRgNGL0YLRjCDCqyUuMjU1c8K7IgorCisjOiBzcmMvYXJjaGl2ZXMuYzo5NDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgZmlsZSAnJS4yNTVzJyIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRgdC40L3RhdGA0L7QvdC40LfQuNGA0L7QstCw0YLRjCDRhNCw0LnQuyDCqyUuMjU1c8K7IgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDAwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpZ25vcmluZyBkZXBlbmRlbmN5IHByb2JsZW0gd2l0aCAlczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorItC40LPQvdC+0YDQuNGA0YPRjtGC0YHRjyDQv9GA0L7QsdC70LXQvNGLINC30LDQstC40YHQuNC80L7RgdGC0LXQuSDRgSAlczpcbiIKKyIlcyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAwNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiY29uc2lkZXJpbmcgZGVjb25maWd1cmF0aW9uIG9mIGVzc2VudGlhbFxuIgorIiBwYWNrYWdlICVzLCB0byBlbmFibGUgJXMuIgorbXNnc3RyICIiCisi0YDQsNGB0YHQvNCw0YLRgNC40LLQsNC10YLRgdGPINC/0LXRgNC10LLQvtC0INC/0LDQutC10YLQsCDQv9C10YDQstC+0LlcbiIKKyIg0L3QtdC+0LHRhdC+0LTQuNC80L7RgdGC0LggJXMg0LIg0L3QtdC90LDRgdGC0YDQvtC10L3QvdC+0LUg0YHQvtGB0YLQvtGP0L3QuNC1INC00LvRjyDQsNC60YLQuNCy0LDRhtC40LggJXMuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDA4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBubywgJXMgaXMgZXNzZW50aWFsLCB3aWxsIG5vdCBkZWNvbmZpZ3VyZVxuIgorIiBpdCBpbiBvcmRlciB0byBlbmFibGUgJXMuXG4iCittc2dzdHIgIiIKKyJkcGtnOiDQvdC10YIsINC/0LDQutC10YIgJXMg0Y/QstC70Y/QtdGC0YHRjyDQv9Cw0LrQtdGC0L7QvCDQv9C10YDQstC+0Lkg0L3QtdC+0LHRhdC+0LTQuNC80L7RgdGC0Lgg0Lgg0L3QtSDQsdGD0LTQtdGCXG4iCisiINC/0LXRgNC10LLQtdC00ZHQvSDQsiDQvdC10L3QsNGB0YLRgNC+0LXQvdC90L7QtSDRgdC+0YHRgtC+0Y/QvdC40LUg0LTQu9GPINCw0LrRgtC40LLQsNGG0LjQuCAlcy5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAyMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogbm8sIGNhbm5vdCBwcm9jZWVkIHdpdGggJXMgKC0tYXV0by1kZWNvbmZpZ3VyZSB3aWxsIGhlbHApOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzog0L3QtdGCLCDQvdC10LLQvtC30LzQvtC20L3QviDQv9GA0L7QtNC+0LvQttC40YLRjCDRgSAlcyAo0LLQsNC8INC/0L7QvNC+0LbQtdGCIC0tYXV0by1kZWNvbmZpZ3VyZSk6XG4iCisiJXMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVtb3ZhbCBvZiAlLjI1MHMiCittc2dzdHIgItGD0LTQsNC70LXQvdC40LUgJS4yNTBzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDU3CisjLCBjLWZvcm1hdAorbXNnaWQgImluc3RhbGxhdGlvbiBvZiAlLjI1MHMiCittc2dzdHIgItGD0YHRgtCw0L3QvtCy0LrQsCAlLjI1NXMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IGNvbnNpZGVyaW5nIGRlY29uZmlndXJhdGlvbiBvZiAlcywgd2hpY2ggd291bGQgYmUgYnJva2VuIGJ5ICVzIC4uLlxuIgorbXNnc3RyICIiCisiZHBrZzog0YDQsNGB0YHQvNCw0YLRgNC40LLQsNC10YLRgdGPINC/0LXRgNC10LLQvtC0ICVzINCyINC90LXQvdCw0YHRgtGA0L7QtdC90L3QvtC1INGB0L7RgdGC0L7Rj9C90LjQtSxcbiIKKyIg0LrQvtGC0L7RgNGL0Lkg0LHRi9C7INCx0Ysg0YHQu9C+0LzQsNC9ICVzIC4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDY1CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IHllcywgd2lsbCBkZWNvbmZpZ3VyZSAlcyAoYnJva2VuIGJ5ICVzKS5cbiIKK21zZ3N0ciAiIgorImRwa2c6INC00LAsICVzINCx0YPQtNC10YIg0L/QtdGA0LXQstC10LTRkdC9INCyINC90LXQvdCw0YHRgtGA0L7QtdC90L3QvtC1INGB0L7RgdGC0L7Rj9C90LjQtSAo0YHQu9C+0LzQsNC9INC40Lct0LfQsCAlcykuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNjkgc3JjL2FyY2hpdmVzLmM6MTE4NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogcmVnYXJkaW5nICVzIGNvbnRhaW5pbmcgJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiDQvtGC0L3QvtGB0LjRgtC10LvRjNC90L4gJXMsINGB0L7QtNC10YDQttCw0YnQtdCz0L4gJXM6XG4iCisiJXMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNzcKK21zZ2lkICJpZ25vcmluZyBicmVha2FnZSwgbWF5IHByb2NlZWQgYW55d2F5ISIKK21zZ3N0ciAi0L/QvtC70L7QvNC60LAg0LjQs9C90L7RgNC40YDRg9C10YLRgdGPLCDQvNC+0LbQvdC+INC/0YDQvtC00L7Qu9C20LDRgtGMISIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA4MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiaW5zdGFsbGluZyAlLjI1MHMgd291bGQgYnJlYWsgJS4yNTBzLCBhbmRcbiIKKyIgZGVjb25maWd1cmF0aW9uIGlzIG5vdCBwZXJtaXR0ZWQgKC0tYXV0by1kZWNvbmZpZ3VyZSBtaWdodCBoZWxwKSIKK21zZ3N0ciAiIgorItGD0YHRgtCw0L3QvtCy0LrQsCAlLjI1MHMg0YHQu9C+0LzQsNC10YIgJS4yNTBzLCDQuFxuIgorIiDQtNC10LrQvtC90YTQuNCz0YPRgNCw0YbQuNGPINC90LUg0YDQsNC30YDQtdGI0LXQvdCwICgtLWF1dG8tZGVjb25maWd1cmUg0LzQvtC20LXRgiDQv9C+0LzQvtGH0YwpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDg2CisjLCBjLWZvcm1hdAorbXNnaWQgImluc3RhbGxpbmcgJS4yNTBzIHdvdWxkIGJyZWFrIGV4aXN0aW5nIHNvZnR3YXJlIgorbXNnc3RyICLRg9GB0YLQsNC90L7QstC60LAgJS4yNTBzINGB0LvQvtC80LDQtdGCINC40LzQtdGO0YnQtdC10YHRjyDQn9CeIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTE2CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IGNvbnNpZGVyaW5nIHJlbW92aW5nICVzIGluIGZhdm91ciBvZiAlcyAuLi5cbiIKK21zZ3N0ciAiIgorImRwa2c6INGH0YLQvtCx0Ysg0LzQvtC20L3QviDQsdGL0LvQviDRg9GB0YLQsNC90L7QstC40YLRjCDQv9Cw0LrQtdGCICUyJHMsINC90LXQvtCx0YXQvtC00LjQvNC+INGD0LTQsNC70LjRgtGMICUxJHMuLi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTEyMgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgcHJvcGVybHkgaW5zdGFsbGVkIC0gaWdub3JpbmcgYW55IGRlcGVuZGVuY2llcyBvbiBpdC5cbiIKK21zZ3N0ciAiJXMg0L3QtSDRg9GB0YLQsNC90L7QstC70LXQvSDQutC+0YDRgNC10LrRgtC90L4sINCy0YHQtSDQt9Cw0LLQuNGB0LjQvNC+0YHRgtC4INC+0YIg0L3QtdCz0L4g0LjQs9C90L7RgNC40YDRg9GO0YLRgdGPLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTUxCisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IG1heSBoYXZlIHRyb3VibGUgcmVtb3ZpbmcgJXMsIGFzIGl0IHByb3ZpZGVzICVzIC4uLlxuIgorbXNnc3RyICIiCisiZHBrZzog0LLQvtC30LzQvtC20L3RiyDQv9GA0L7QsdC70LXQvNGLINGBINGD0LTQsNC70LXQvdC40LXQvCAlcywg0L/QvtGB0LrQvtC70YzQutGDINC+0L0g0L/RgNC10LTQvtGB0YLQsNCy0LvRj9C10YIgJXMuLi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE2NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogcGFja2FnZSAlcyByZXF1aXJlcyByZWluc3RhbGxhdGlvbiwgYnV0IHdpbGwgcmVtb3ZlIGFueXdheSBhcyB5b3UgIgorInJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiIgorImRwa2c6INC/0LDQutC10YIgJXMg0YLRgNC10LHRg9C10YIg0L/QtdGA0LXRg9GB0YLQsNC90L7QstC60LgsINC90L4g0L/QviDQstCw0YjQtdC80YMg0YPQutCw0LfQsNC90LjRjiDQstGB0ZEg0YDQsNCy0L3QviDQsdGD0LTQtdGCICIKKyLRg9C00LDQu9GR0L0uXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExNjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogcGFja2FnZSAlcyByZXF1aXJlcyByZWluc3RhbGxhdGlvbiwgd2lsbCBub3QgcmVtb3ZlLlxuIgorbXNnc3RyICJkcGtnOiDQv9Cw0LrQtdGCICVzINGC0YDQtdCx0YPQtdGCINC/0LXRgNC10YPRgdGC0LDQvdC+0LLQutC4INC4INC90LUg0LHRg9C00LXRgiDRg9C00LDQu9GR0L0uXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogeWVzLCB3aWxsIHJlbW92ZSAlcyBpbiBmYXZvdXIgb2YgJXMuXG4iCittc2dzdHIgImRwa2c6ICVzINCx0YPQtNC10YIg0YPQtNCw0LvRkdC9LCDRh9GC0L7QsdGLINC80L7QttC90L4g0LHRi9C70L4g0YPRgdGC0LDQvdC+0LLQuNGC0YwgJXMuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmxpY3RpbmcgcGFja2FnZXMgLSBub3QgaW5zdGFsbGluZyAlLjI1MHMiCittc2dzdHIgItC60L7QvdGE0LvQuNC60YIg0L/QsNC60LXRgtC+0LIgLS0gJS4yNTBzINC90LUg0LHRg9C00LXRgiDRg9GB0YLQsNC90L7QstC70LXQvSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE5MQorbXNnaWQgImlnbm9yaW5nIGNvbmZsaWN0LCBtYXkgcHJvY2VlZCBhbnl3YXkhIgorbXNnc3RyICLQutC+0L3RhNC70LjQutGCINC40LPQvdC+0YDQuNGA0YPQtdGC0YHRjywg0LzQvtC20L3QviDQv9GA0L7QtNC+0LvQttCw0YLRjCEiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyMzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyAtLXJlY3Vyc2l2ZSBuZWVkcyBhdCBsZWFzdCBvbmUgcGF0aCBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyAtLXJlY3Vyc2l2ZSDRgtGA0LXQsdGD0LXRgiDQt9Cw0LTQsNC90LjRjyDRhdC+0YLRjyDQsdGLINC+0LTQvdC+0LPQviDQuNC80LXQvdC4INC60LDRgtCw0LvQvtCz0LAiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNDUKK21zZ2lkICJmaW5kIGZvciBkcGtnIC0tcmVjdXJzaXZlIgorbXNnc3RyICLQv9C+0LjRgdC6INC00LvRjyBkcGtnIC0tcmVjdXJzaXZlIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjY2Cittc2dpZCAiZmFpbGVkIHRvIGZkb3BlbiBmaW5kJ3MgcGlwZSIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQvtGC0LrRgNGL0YLRjCDQtNC10YHQutGA0LjQv9GC0L7RgCDQutCw0L3QsNC70LAgZmluZCIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3MgorbXNnaWQgImVycm9yIHJlYWRpbmcgZmluZCdzIHBpcGUiCittc2dzdHIgItC+0YjQuNCx0LrQsCDRh9GC0LXQvdC40Y8g0LjQtyDQutCw0L3QsNC70LAgZmluZCIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3MworbXNnaWQgImVycm9yIGNsb3NpbmcgZmluZCdzIHBpcGUiCittc2dzdHIgItC+0YjQuNCx0LrQsCDQv9GA0Lgg0LfQsNC60YDRi9GC0LjQuCDQutCw0L3QsNC70LAgZmluZCIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3NgorIywgYy1mb3JtYXQKK21zZ2lkICJmaW5kIGZvciAtLXJlY3Vyc2l2ZSByZXR1cm5lZCB1bmhhbmRsZWQgZXJyb3IgJWkiCittc2dzdHIgIiIKKyLQv9GA0Lgg0L/QvtC40YHQutC1INGE0LDQudC70L7QsiDQsiDQutCw0YLQsNC70L7Qs9Cw0YUg0L/RgNC+0LPRgNCw0LzQvNCwIGZpbmQg0LLQtdGA0L3Rg9C70LAg0L3QtdC40LfQstC10YHRgtC90YvQuSDQutC+0LQg0L7RiNC40LHQutC4ICIKKyIlaSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3OQorbXNnaWQgInNlYXJjaGVkLCBidXQgZm91bmQgbm8gcGFja2FnZXMgKGZpbGVzIG1hdGNoaW5nICouZGViKSIKK21zZ3N0ciAiIgorItC/0L7QuNGB0Log0LfQsNCy0LXRgNGI0ZHQvSwg0L/QsNC60LXRgtGLICjRhNCw0LnQu9GLINGBINC40LzQtdC90LDQvNC4LCDRg9C00L7QstC70LXRgtCy0L7RgNGP0Y7RidC40LzQuCDRiNCw0LHQu9C+0L3RgyAqLmRlYikgIgorItC90LDQudGC0Lgg0L3QtSDRg9C00LDQu9C+0YHRjCIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI5MAorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGF0IGxlYXN0IG9uZSBwYWNrYWdlIGFyY2hpdmUgZmlsZSBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyDRgtGA0LXQsdGD0LXRgiDQt9Cw0LTQsNC90LjRjyDRhdC+0YLRjyDQsdGLINC+0LTQvdC+0LPQviDQuNC80LXQvdC4INGE0LDQudC70LAiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzMjUgc3JjL2RpdmVydGNtZC5jOjc4IHNyYy9kaXZlcnRjbWQuYzoxMTgKKyM6IHNyYy9lbnF1aXJ5LmM6MTY2IHNyYy9lbnF1aXJ5LmM6Mjc5IHNyYy9lbnF1aXJ5LmM6NDQ5IHNyYy9lbnF1aXJ5LmM6NDUxCisjOiBzcmMvZW5xdWlyeS5jOjQ2NCBzcmMvbWFpbi5jOjY2IHNyYy9tYWluLmM6MTYzIHNyYy9tYWluLmM6MzE0CisjOiBzcmMvbWFpbi5jOjQ5MyBzcmMvcGFja2FnZXMuYzoyNTQgc3JjL3F1ZXJ5Y21kLmM6MjUyIHNyYy9xdWVyeWNtZC5jOjM1NQorIzogc3JjL3F1ZXJ5Y21kLmM6Mzk2IHNyYy9xdWVyeWNtZC5jOjQwNCBzcmMvcXVlcnljbWQuYzo0NDggc3JjL3F1ZXJ5Y21kLmM6NTE3CisjOiBzcmMvcXVlcnljbWQuYzo2MDYgc3JjL3F1ZXJ5Y21kLmM6NjUwIHNyYy9zZWxlY3QuYzo3OSBzcmMvc3RhdGNtZC5jOjY4CisjOiBzcmMvc3RhdGNtZC5jOjk4IHNyYy90cmlnY21kLmM6NTggc3JjL3RyaWdjbWQuYzo5MCBkcGtnLWRlYi9idWlsZC5jOjQ0MQorIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIxNyBkcGtnLWRlYi9leHRyYWN0LmM6MjUwIGRwa2ctZGViL2luZm8uYzoyMDMKKyM6IGRwa2ctZGViL2luZm8uYzoyNjUgZHBrZy1kZWIvbWFpbi5jOjYwIGRwa2ctZGViL21haW4uYzoxMjYKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjI1NyBkcGtnLXNwbGl0L21haW4uYzo1NCBkcGtnLXNwbGl0L21haW4uYzo5OAorIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE0NCBkcGtnLXNwbGl0L3F1ZXVlLmM6MjgwCittc2dpZCAiPHN0YW5kYXJkIG91dHB1dD4iCittc2dzdHIgIjzRgdGC0LDQvdC00LDRgNGC0L3Ri9C5INCy0YvQstC+0LQ+IgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzI2IHNyYy9wYWNrYWdlcy5jOjI1NSBzcmMvcXVlcnljbWQuYzoyNTMKKyM6IHNyYy9xdWVyeWNtZC5jOjM1MyBzcmMvcXVlcnljbWQuYzo0NTQgc3JjL3F1ZXJ5Y21kLmM6NTE4IHNyYy9zZWxlY3QuYzo4MAorIzogZHBrZy1zcGxpdC9tYWluLmM6MTY5IGRwa2ctc3BsaXQvcXVldWUuYzoyMTgKK21zZ2lkICI8c3RhbmRhcmQgZXJyb3I+IgorbXNnc3RyICI80YHRgtCw0L3QtNCw0YDRgtC90YvQuSDQv9C+0YLQvtC6INC+0YjQuNCx0L7Quj4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzNjcKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIlNlbGVjdGluZyBwcmV2aW91c2x5IGRlc2VsZWN0ZWQgcGFja2FnZSAlcy5cbiIKK21zZ2lkICJTZWxlY3RpbmcgcHJldmlvdXNseSB1bnNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dzdHIgItCS0YvQsdC+0YAg0YDQsNC90LXQtSDQvdC1INCy0YvQsdGA0LDQvdC90L7Qs9C+INC/0LDQutC10YLQsCAlcy5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTM3MQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiU2tpcHBpbmcgZGVzZWxlY3RlZCBwYWNrYWdlICVzLlxuIgorbXNnaWQgIlNraXBwaW5nIHVuc2VsZWN0ZWQgcGFja2FnZSAlcy5cbiIKK21zZ3N0ciAi0J/RgNC+0L/Rg9GB0Log0L3QtSDQstGL0LHRgNCw0L3QvdC+0LPQviDQv9Cw0LrQtdGC0LAgJXMuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiVmVyc2lvbiAlLjI1MHMgb2YgJS4yNTBzIGFscmVhZHkgaW5zdGFsbGVkLCBza2lwcGluZy5cbiIKK21zZ3N0ciAi0JLQtdGA0YHQuNGPICUuMjUwcyDQv9Cw0LrQtdGC0LAgJS4yNTBzINGD0LbQtSDRg9GB0YLQsNC90L7QstC70LXQvdCwLCDQv9GA0L7Qv9GD0YHQutCw0LXQvCDQv9Cw0LrQtdGCLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzk3CisjLCBjLWZvcm1hdAorbXNnaWQgImRvd25ncmFkaW5nICUuMjUwcyBmcm9tICUuMjUwcyB0byAlLjI1MHMuIgorbXNnc3RyICLRgdC90LjQttC10L3QuNC1INCy0LXRgNGB0LjQuCAlLjI1MHMg0YEgJS4yNTBzINC00L4gJS4yNTBzLiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTQwMgorIywgYy1mb3JtYXQKK21zZ2lkICJXaWxsIG5vdCBkb3duZ3JhZGUgJS4yNTBzIGZyb20gdmVyc2lvbiAlLjI1MHMgdG8gJS4yNTBzLCBza2lwcGluZy5cbiIKK21zZ3N0ciAi0JLQtdGA0YHQuNGPICUuMjUwcyDQvdC1INCx0YPQtNC10YIg0YHQvdC40LbQtdC90LAg0YEgJS4yNTBzINC00L4gJS4yNTBzLCDQv9GA0L7Qv9GD0YHQutCw0LXQvCDQv9Cw0LrQtdGCLlxuIgorCisjOiBzcmMvY2xlYW51cC5jOjg2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1bmFibGUgdG8gcmVtb3ZlIG5ld2x5LWluc3RhbGxlZCB2ZXJzaW9uIG9mIGAlLjI1MHMnIHRvIGFsbG93IHJlaW5zdGFsbGF0aW9uICIKKyJvZiBiYWNrdXAgY29weSIKK21zZ3N0ciAiIgorItC90LUg0YPQtNCw0LvQvtGB0Ywg0YPQtNCw0LvQuNGC0Ywg0L3QvtCy0YPRjiDQstC10YDRgdC40Y4gwqslLjI1MHPCuywg0YfRgtC+INC90LXQvtCx0YXQvtC00LjQvNC+INC00LvRjyDQvtGC0LrQsNGC0LAg0Log0YHRgtCw0YDQvtC5ICIKKyLQstC10YDRgdC40LgiCisKKyM6IHNyYy9jbGVhbnVwLmM6OTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlc3RvcmUgYmFja3VwIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dzdHIgItC90LXQstC+0LfQvNC+0LbQvdC+INCy0L7RgdGB0YLQsNC90L7QstC40YLRjCDRgdC+0YXRgNCw0L3RkdC90L3Rg9GOINC60L7Qv9C40Y4g0YHRgtCw0YDQvtC5INCy0LXRgNGB0LjQuCDCqyUuMjUwc8K7IgorCisjOiBzcmMvY2xlYW51cC5jOjk3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgYmFja3VwIGNvcHkgb2YgJyUuMjUwcyciCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0YPQtNCw0LvQuNGC0Ywg0YHQvtGF0YDQsNC90ZHQvdC90YPRjiDQutC+0L/QuNGOIMKrJS4yNTBzwrsiCisKKyM6IHNyYy9jbGVhbnVwLmM6MTAxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgbmV3bHktaW5zdGFsbGVkIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dzdHIgItC90LXQstC+0LfQvNC+0LbQvdC+INGD0LTQsNC70LjRgtGMINGC0L7Qu9GM0LrQviDRh9GC0L4g0YPRgdGC0LDQvdC+0LLQu9C10L3QvdGD0Y4g0LLQtdGA0YHQuNGOIMKrJS4yNTBzwrsiCisKKyM6IHNyYy9jbGVhbnVwLmM6MTA4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgbmV3bHktZXh0cmFjdGVkIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0YPRgdGC0LDQvdC+0LLQuNGC0Ywg0YLQvtC70YzQutC+INGH0YLQviDRgNCw0YHQv9Cw0LrQvtCy0LDQvdC90YPRjiDQvdC+0LLRg9GOINCy0LXRgNGB0LjRjiDCqyUuMjUwc8K7IgorCisjOiBzcmMvY29uZmlndXJlLmM6MTA0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IG5ldyBkaXN0cmlidXRlZCBjb25mZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAiIgorItC90LUg0YPQtNCw0LvQvtGB0Ywg0L/QvtC70YPRh9C40YLRjCDQuNC90YTQvtGA0LzQsNGG0LjRjiDQviDQvdC+0LLQvtC8INGA0LDRgdC/0YDQvtGB0YLRgNCw0L3Rj9C10LzQvtC8IGNvbmZmaWxlLdGE0LDQudC70LUgIgorIsKrJS4yNTBzwrsiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgY3VycmVudCBpbnN0YWxsZWQgY29uZmZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKyLQvdC1INGD0LTQsNC70L7RgdGMINC/0L7Qu9GD0YfQuNGC0Ywg0LjQvdGE0L7RgNC80LDRhtC40Y4g0L7QsSDRg9C20LUg0YPRgdGC0LDQvdC+0LLQu9C10L3QvdC+0LwgY29uZmZpbGUt0YTQsNC50LvQtSDCqyUuMjUwc8K7IgorCisjOiBzcmMvY29uZmlndXJlLmM6MTI2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJDb25maWd1cmF0aW9uIGZpbGUgYCVzJywgZG9lcyBub3QgZXhpc3Qgb24gc3lzdGVtLlxuIgorIkluc3RhbGxpbmcgbmV3IGNvbmZpZyBmaWxlIGFzIHlvdSByZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiIKKyJcbiIKKyLQpNCw0LnQuyDQvdCw0YHRgtGA0L7QudC60Lggwqslc8K7INC+0YLRgdGD0YLRgdGC0LLRg9C10YIuXG4iCisi0J/QviDQstCw0YjQtdC80YMg0YPQutCw0LfQsNC90LjRjiDRg9GB0YLQsNC90LDQstC70LjQstCw0LXRgtGB0Y8g0L3QvtCy0YvQuSDRhNCw0LnQuyDQvdCw0YHRgtGA0L7QudC60LguXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzoxNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW1vdmUgb2xkIGJhY2t1cCAnJS4yNTBzJzogJXMiCittc2dzdHIgIiVzOiDQvdC1INGD0LTQsNC70L7RgdGMINGD0LTQsNC70LjRgtGMINGA0LXQt9C10YDQstC90YPRjiDQutC+0L/QuNGOIMKrJS4yNTBzwrs6ICVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTc2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVuYW1lICclLjI1MHMnIHRvICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiJXM6INC90LUg0YPQtNCw0LvQvtGB0Ywg0L/QtdGA0LXQuNC80LXQvdC+0LLQsNGC0YwgwqslLjI1MHPCuyDQsiDCqyUuMjUwc8K7OiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE4MgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIHJlbW92ZSAnJS4yNTBzJzogJXMiCittc2dzdHIgIiVzOiDQvdC1INGD0LTQsNC70L7RgdGMINGD0LTQsNC70LjRgtGMIMKrJS4yNTBzwrs6ICVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTg4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlIG9sZCBkaXN0cmlidXRlZCB2ZXJzaW9uICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiJXM6INC90LUg0YPQtNCw0LvQvtGB0Ywg0YPQtNCw0LvQuNGC0Ywg0YHRgtCw0YDRg9GOINGA0LDRgdC/0YDQvtGB0YLRgNCw0L3Rj9C10LzRg9GOINCy0LXRgNGB0LjRjiDCqyUuMjUwc8K7OiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE5MgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIHJlbW92ZSAnJS4yNTBzJyAoYmVmb3JlIG92ZXJ3cml0ZSk6ICVzIgorbXNnc3RyICIlczog0L3QtSDRg9C00LDQu9C+0YHRjCDRg9C00LDQu9C40YLRjCDCqyUuMjUwc8K7ICjQv9C10YDQtdC0INC/0LXRgNC10LfQsNC/0LjRgdGM0Y4pOiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE5NgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIGxpbmsgJyUuMjUwcycgdG8gJyUuMjUwcyc6ICVzIgorbXNnc3RyICIlczog0L3QtSDRg9C00LDQu9C+0YHRjCDRgdC+0LfQtNCw0YLRjCDRgdGB0YvQu9C60YMgwqslLjI1MHPCuyDQvdCwIMKrJS4yNTBzwrs6ICVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjAwCisjLCBjLWZvcm1hdAorbXNnaWQgIkluc3RhbGxpbmcgbmV3IHZlcnNpb24gb2YgY29uZmlnIGZpbGUgJXMgLi4uXG4iCittc2dzdHIgItCj0YHRgtCw0L3QsNCy0LvQuNCy0LDQtdGC0YHRjyDQvdC+0LLQsNGPINCy0LXRgNGB0LjRjyDRhNCw0LnQu9CwINC90LDRgdGC0YDQvtC50LrQuCAlcyAuLi5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjIwNiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NTQ2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIGAlLjI1MHMnIGFzIGAlLjI1MHMnIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGD0YHRgtCw0L3QvtCy0LjRgtGMIMKrJS4yNTBzwrsg0LIg0LrQsNGH0LXRgdGC0LLQtSDCqyUuMjUwc8K7IgorCisjOiBzcmMvY29uZmlndXJlLmM6MjU3CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHBhY2thZ2UgbmFtZWQgYCVzJyBpcyBpbnN0YWxsZWQsIGNhbm5vdCBjb25maWd1cmUiCittc2dzdHIgItC/0LDQutC10YIg0YEg0LjQvNC10L3QtdC8IMKrJXPCuyDQvdC1INGD0YHRgtCw0L3QvtCy0LvQtdC9LCDQvdCw0YHRgtGA0L7QudC60LAg0L3QtdCy0L7Qt9C80L7QttC90LAiCisKKyM6IHNyYy9jb25maWd1cmUuYzoyNjAKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlLjI1MHMgaXMgYWxyZWFkeSBpbnN0YWxsZWQgYW5kIGNvbmZpZ3VyZWQiCittc2dzdHIgItC/0LDQutC10YIgJS4yNTBzINGD0LbQtSDRg9GB0YLQsNC90L7QstC70LXQvSDQuCDQvdCw0YHRgtGA0L7QtdC9IgorCisjOiBzcmMvY29uZmlndXJlLmM6MjYzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJwYWNrYWdlICUuMjUwcyBpcyBub3QgcmVhZHkgZm9yIGNvbmZpZ3VyYXRpb25cbiIKKyIgY2Fubm90IGNvbmZpZ3VyZSAoY3VycmVudCBzdGF0dXMgYCUuMjUwcycpIgorbXNnc3RyICIiCisi0L/QsNC60LXRgiAlLjI1MHMg0L3QtSDQs9C+0YLQvtCyINC6INC90LDRgdGC0YDQvtC50LrQtVxuIgorIiDQvdCw0YHRgtGA0L7QudC60LAg0L3QtdCy0L7Qt9C80L7QttC90LAgKNGC0LXQutGD0YnQtdC1INGB0L7RgdGC0L7Rj9C90LjQtTogwqslLjI1MHPCuykiCisKKyM6IHNyYy9jb25maWd1cmUuYzoyOTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IGRlcGVuZGVuY3kgcHJvYmxlbXMgcHJldmVudCBjb25maWd1cmF0aW9uIG9mICVzOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzog0LfQsNCy0LjRgdC40LzQvtGB0YLQuCDQv9Cw0LrQtdGC0L7QsiDQvdC1INC/0L7Qt9Cy0L7Qu9GP0Y7RgiDQvdCw0YHRgtGA0L7QuNGC0Ywg0L/QsNC60LXRgiAlczpcbiIKKyIlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI5NworbXNnaWQgImRlcGVuZGVuY3kgcHJvYmxlbXMgLSBsZWF2aW5nIHVuY29uZmlndXJlZCIKK21zZ3N0ciAi0L/RgNC+0LHQu9C10LzRiyDQt9Cw0LLQuNGB0LjQvNC+0YHRgtC10LkgLS0g0L7RgdGC0LDQstC70Y/QtdC8INC90LUg0L3QsNGB0YLRgNC+0LXQvdC90YvQvCIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjMwMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogJXM6IGRlcGVuZGVuY3kgcHJvYmxlbXMsIGJ1dCBjb25maWd1cmluZyBhbnl3YXkgYXMgeW91IHJlcXVlc3RlZDpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiDQv9GA0L7QsdC70LXQvNGLINC30LDQstC40YHQuNC80L7RgdGC0LXQuSwg0L3QviDQv9C+INCy0LDRiNC10LzRgyDRg9C60LDQt9Cw0L3QuNGOINCy0YHRkSDRgNCw0LLQvdC+INC/0YDQvtC40LfQstC+0LTQuNC8ICIKKyLQvdCw0YHRgtGA0L7QudC60YM6XG4iCisiJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzozMDkKK21zZ2lkICIiCisiUGFja2FnZSBpcyBpbiBhIHZlcnkgYmFkIGluY29uc2lzdGVudCBzdGF0ZSAtIHlvdSBzaG91bGRcbiIKKyIgcmVpbnN0YWxsIGl0IGJlZm9yZSBhdHRlbXB0aW5nIGNvbmZpZ3VyYXRpb24uIgorbXNnc3RyICIiCisi0J/QsNC60LXRgiDQsNCx0YHQvtC70Y7RgtC90L4g0L3QtdGA0LDQsdC+0YLQvtGB0L/QvtGB0L7QsdC10L0gLS0g0L/QtdGA0LXQtCDQvdCw0YHRgtGA0L7QudC60L7QuSDQtdCz0L5cbiIKKyIg0YHQu9C10LTRg9C10YIg0L/QtdGA0LXRg9GB0YLQsNC90L7QstC40YLRjC4iCisKKyM6IHNyYy9jb25maWd1cmUuYzozMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2V0dGluZyB1cCAlcyAoJXMpIC4uLlxuIgorbXNnc3RyICLQndCw0YHRgtGA0LDQuNCy0LDQtdGC0YHRjyDQv9Cw0LrQtdGCICVzICglcykgLi4uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzozOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiB1bmFibGUgdG8gc3RhdCBjb25maWcgZmlsZSAnJXMnXG4iCisiICg9ICclcycpOiAlcyIKK21zZ3N0ciAiIgorIiVzOiDQvdC1INGD0LTQsNC70L7RgdGMINC/0L7Qu9GD0YfQuNGC0Ywg0LjQvdGE0L7RgNC80LDRhtC40Y4g0L4g0YTQsNC50LvQtSDQvdCw0YHRgtGA0L7QudC60Lggwqslc8K7XG4iCisiICg9IMKrJXPCuyk6ICVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDA5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogY29uZmlnIGZpbGUgJyVzJyBpcyBhIGNpcmN1bGFyIGxpbmtcbiIKKyIgKD0gJyVzJykiCittc2dzdHIgIiIKKyIlczog0YTQsNC50Lsg0L3QsNGB0YLRgNC+0LnQutC4IMKrJXPCuyDRj9Cy0LvRj9C10YLRgdGPINGG0LjQutC70LjRh9C10YHQutC+0Lkg0YHRgdGL0LvQutC+0LlcbiIKKyIgKD0gwqslc8K7KSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQxOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IHVuYWJsZSB0byByZWFkbGluayBjb25mZmlsZSAnJXMnXG4iCisiICg9ICclcycpOiAlcyIKK21zZ3N0ciAiIgorIiVzOiDQvdC1INGD0LTQsNC70L7RgdGMINCy0YvQv9C+0LvQvdC40YLRjCByZWFkbGluayDQtNC70Y8gY29uZmZpbGUt0YTQsNC50LvQsCDCqyVzwrtcbiIKKyIgKD0gwqslc8K7KTogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzo0NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBjb25mZmlsZSAnJS4yNTBzJyByZXNvbHZlcyB0byBkZWdlbmVyYXRlIGZpbGVuYW1lXG4iCisiICgnJXMnIGlzIGEgc3ltbGluayB0byAnJXMnKSIKK21zZ3N0ciAiIgorIiVzOiDQt9Cw0L/QuNGB0Ywg0L4gY29uZmZpbGUt0YTQsNC50LvQtSDCqyUuMjUwc8K7INGA0LDQt9GA0LXRiNCw0LXRgtGB0Y8g0LIg0LLRi9GA0L7QttC00LXQvdC90L7QtSDQuNC80Y8g0YTQsNC50LvQsFxuIgorIiAowqslc8K7INGP0LLQu9GP0LXRgtGB0Y8g0YHQuNC80LLQvtC70YzQvdC+0Lkg0YHRgdGL0LvQutC+0Lkg0L3QsCDCqyVzwrspIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDYwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBjb25mZmlsZSAnJS4yNTBzJyBpcyBub3QgYSBwbGFpbiBmaWxlIG9yIHN5bWxpbmsgKD0gJyVzJykiCittc2dzdHIgIiIKKyIlczogY29uZmZpbGUt0YTQsNC50LsgwqslLjI1MHPCuyDQvdC1INGP0LLQu9GP0LXRgtGB0Y8g0L7QsdGL0YfQvdGL0Lwg0YTQsNC50LvQvtC8INC40LvQuCDRgdC40LzQstC+0LvRjNC90L7QuSDRgdGB0YvQu9C60L7QuSAiCisiKD0gwqslc8K7KSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQ4NgorbXNnaWQgIm1kNWhhc2giCittc2dzdHIgIm1kNWhhc2giCisKKyM6IHNyYy9jb25maWd1cmUuYzo0OTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IHVuYWJsZSB0byBvcGVuIGNvbmZmaWxlICVzIGZvciBoYXNoOiAlcyIKK21zZ3N0ciAiJXM6INC90LUg0YPQtNCw0LvQvtGB0Ywg0L7RgtC60YDRi9GC0YwgY29uZmZpbGUt0YTQsNC50LsgJXMg0LTQu9GPINGF0Y3RiNCwOiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjUyMiBzcmMvY29uZmlndXJlLmM6NTI2Cittc2dpZCAiY29uZmZpbGUgZGlmZmVyZW5jZSB2aXN1YWxpemVyIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo1NDMKK21zZ2lkICJUeXBlIGBleGl0JyB3aGVuIHlvdSdyZSBkb25lLlxuIgorbXNnc3RyICLQmtC+0LPQtNCwINC30LDQutC+0L3Rh9C40YLQtSwg0L3QsNCx0LXRgNC40YLQtSDCq2V4aXTCuy5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjU1MiBzcmMvY29uZmlndXJlLmM6NTU2Cittc2dpZCAiY29uZmZpbGUgc2hlbGwiCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYwMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiQ29uZmlndXJhdGlvbiBmaWxlIGAlcyciCittc2dzdHIgIiIKKyJcbiIKKyLQpNCw0LnQuyDQvdCw0YHRgtGA0L7QudC60Lggwqslc8K7IgorCisjOiBzcmMvY29uZmlndXJlLmM6NjA0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAoYWN0dWFsbHkgYCVzJykiCittc2dzdHIgIiAo0L3QsCDRgdCw0LzQvtC8INC00LXQu9C1IMKrJXPCuykiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiA9PT4gRmlsZSBvbiBzeXN0ZW0gY3JlYXRlZCBieSB5b3Ugb3IgYnkgYSBzY3JpcHQuXG4iCisiID09PiBGaWxlIGFsc28gaW4gcGFja2FnZSBwcm92aWRlZCBieSBwYWNrYWdlIG1haW50YWluZXIuXG4iCittc2dzdHIgIiIKKyJcbiIKKyIgPT0+INCk0LDQudC7LCDRgdC+0LfQtNCw0L3QvdGL0Lkg0LLQsNC80Lgg0LjQu9C4INGB0YbQtdC90LDRgNC40LXQvC5cbiIKKyIgPT0+INCi0LDQutC20LUsINGE0LDQudC7INCyINC/0LDQutC10YLQtSwg0L/RgNC10LTQvtGB0YLQsNCy0LvQtdC90L3Ri9C5INGB0L7Qv9GA0L7QstC+0LbQtNCw0Y7RidC40Lwg0L/QsNC60LXRgtCwLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjEzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgICAgIE5vdCBtb2RpZmllZCBzaW5jZSBpbnN0YWxsYXRpb24uXG4iCittc2dzdHIgIiIKKyJcbiIKKyIgICAgINCf0L7RgdC70LUg0YPRgdGC0LDQvdC+0LLQutC4INC90LUg0LjQt9C80LXQvdGP0LvRgdGPLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjE1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgPT0+IE1vZGlmaWVkIChieSB5b3Ugb3IgYnkgYSBzY3JpcHQpIHNpbmNlIGluc3RhbGxhdGlvbi5cbiIKK21zZ3N0ciAiIgorIlxuIgorIiA9PT4g0JjQt9C80LXQvdGR0L0g0L/QvtGB0LvQtSDRg9GB0YLQsNC90L7QstC60LggKNCy0LDQvNC4INC40LvQuCDRgdGG0LXQvdCw0YDQuNC10LwpLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjE2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgPT0+IERlbGV0ZWQgKGJ5IHlvdSBvciBieSBhIHNjcmlwdCkgc2luY2UgaW5zdGFsbGF0aW9uLlxuIgorbXNnc3RyICIiCisiXG4iCisiID09PiDQo9C00LDQu9GR0L0g0LLQviDQstGA0LXQvNGPINGD0YHRgtCw0L3QvtCy0LrQuCAo0LLQsNC80Lgg0LjQu9C4INGB0YbQtdC90LDRgNC40LXQvCkuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBQYWNrYWdlIGRpc3RyaWJ1dG9yIGhhcyBzaGlwcGVkIGFuIHVwZGF0ZWQgdmVyc2lvbi5cbiIKK21zZ3N0ciAiID09PiDQkNCy0YLQvtGAINC/0LDQutC10YLQsCDQv9GA0LXQtNC+0YHRgtCw0LLQuNC7INC+0LHQvdC+0LLQu9GR0L3QvdGD0Y4g0LLQtdGA0YHQuNGOLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjIwCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgICAgVmVyc2lvbiBpbiBwYWNrYWdlIGlzIHRoZSBzYW1lIGFzIGF0IGxhc3QgaW5zdGFsbGF0aW9uLlxuIgorbXNnc3RyICIgICAgINCS0LXRgNGB0LjRjyDQsiDQv9Cw0LrQtdGC0LUg0YLQsCDQttC1LCDRh9GC0L4g0Lgg0L/RgNC4INC/0L7RgdC70LXQtNC90LXQuSDRg9GB0YLQsNC90L7QstC60LUuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBVc2luZyBuZXcgZmlsZSBhcyB5b3UgcmVxdWVzdGVkLlxuIgorbXNnc3RyICIgPT0+INCf0L4g0LLQsNGI0LXQvNGDINGD0LrQsNC30LDQvdC40Y4g0LjRgdC/0L7Qu9GM0LfRg9C10YLRgdGPINC90L7QstGL0Lkg0YTQsNC50LsuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBVc2luZyBjdXJyZW50IG9sZCBmaWxlIGFzIHlvdSByZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiA9PT4g0J/QviDQstCw0YjQtdC80YMg0YPQutCw0LfQsNC90LjRjiDQuNGB0L/QvtC70YzQt9GD0LXRgtGB0Y8g0YHRgtCw0YDRi9C5INGE0LDQudC7LlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjQxCisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gS2VlcGluZyBvbGQgY29uZmlnIGZpbGUgYXMgZGVmYXVsdC5cbiIKK21zZ3N0ciAiID09PiDQn9C+INGD0LzQvtC70YfQsNC90LjRjiDRgdC+0YXRgNCw0L3Rj9C10YLRgdGPINGB0YLQsNGA0YvQuSDRhNCw0LnQuyDQvdCw0YHRgtGA0L7QudC60LguXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBVc2luZyBuZXcgY29uZmlnIGZpbGUgYXMgZGVmYXVsdC5cbiIKK21zZ3N0ciAiID09PiDQn9C+INGD0LzQvtC70YfQsNC90LjRjiDQuNGB0L/QvtC70YzQt9GD0LXRgtGB0Y8g0L3QvtCy0YvQuSDRhNCw0LnQuyDQvdCw0YHRgtGA0L7QudC60LguXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiAgIFdoYXQgd291bGQgeW91IGxpa2UgdG8gZG8gYWJvdXQgaXQgPyAgWW91ciBvcHRpb25zIGFyZTpcbiIKKyIgICAgWSBvciBJICA6IGluc3RhbGwgdGhlIHBhY2thZ2UgbWFpbnRhaW5lcidzIHZlcnNpb25cbiIKKyIgICAgTiBvciBPICA6IGtlZXAgeW91ciBjdXJyZW50bHktaW5zdGFsbGVkIHZlcnNpb25cbiIKKyIgICAgICBEICAgICA6IHNob3cgdGhlIGRpZmZlcmVuY2VzIGJldHdlZW4gdGhlIHZlcnNpb25zXG4iCisiICAgICAgWiAgICAgOiBzdGFydCBhIHNoZWxsIHRvIGV4YW1pbmUgdGhlIHNpdHVhdGlvblxuIgorbXNnc3RyICIiCisiICDQp9GC0L4g0L3Rg9C20L3QviDRgdC00LXQu9Cw0YLRjD8g0JXRgdGC0Ywg0YHQu9C10LTRg9GO0YnQuNC1INCy0LDRgNC40LDQvdGC0Ys6XG4iCisiICAgWSDQuNC70LggSSA6INGD0YHRgtCw0L3QvtCy0LjRgtGMINCy0LXRgNGB0LjRjiwg0L/RgNC10LTQu9Cw0LPQsNC10LzRg9GOINGB0L7Qv9GA0L7QstC+0LbQtNCw0Y7RidC40Lwg0L/QsNC60LXRgtCwXG4iCisiICAgTiDQuNC70LggTyA6INC+0YHRgtCw0LLQuNGC0Ywg0YPRgdGC0LDQvdC+0LLQu9C10L3QvdGD0Y4g0L3QsCDQtNCw0L3QvdGL0Lkg0LzQvtC80LXQvdGCINCy0LXRgNGB0LjRjlxuIgorIiAgICAgIEQgICAgOiDQv9C+0LrQsNC30LDRgtGMINGA0LDQt9C70LjRh9C40Y8g0LzQtdC20LTRgyDQstC10YDRgdC40Y/QvNC4XG4iCisiICAgICAgWiAgICA6INC30LDQv9GD0YHRgtC40YLRjCDQvtCx0L7Qu9C+0YfQutGDINC60L7QvNCw0L3QtNC90L7QuSDRgdGC0YDQvtC60Lgg0LTQu9GPINC/0YDQvtCy0LXRgNC60Lgg0YHQuNGC0YPQsNGG0LjQuFxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjU5CisjLCBjLWZvcm1hdAorbXNnaWQgIiBUaGUgZGVmYXVsdCBhY3Rpb24gaXMgdG8ga2VlcCB5b3VyIGN1cnJlbnQgdmVyc2lvbi5cbiIKK21zZ3N0ciAiINCf0L4g0YPQvNC+0LvRh9Cw0L3QuNGOINGB0L7RhdGA0LDQvdGP0LXRgtGB0Y8g0YLQtdC60YPRidCw0Y8g0LLQtdGA0YHQuNGPINGE0LDQudC70LAg0L3QsNGB0YLRgNC+0LnQutC4LlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjYxCisjLCBjLWZvcm1hdAorbXNnaWQgIiBUaGUgZGVmYXVsdCBhY3Rpb24gaXMgdG8gaW5zdGFsbCB0aGUgbmV3IHZlcnNpb24uXG4iCittc2dzdHIgIiDQn9C+INGD0LzQvtC70YfQsNC90LjRjiDRg9GB0YLQsNC90LDQstC70LjQstCw0LXRgtGB0Y8g0L3QvtCy0LDRjyDQstC10YDRgdC40Y8g0YTQsNC50LvQsC5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY2NgorbXNnaWQgIltkZWZhdWx0PU5dIgorbXNnc3RyICJb0L/QviDRg9C80L7Qu9GH0LDQvdC40Y4gTl0iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NjcKK21zZ2lkICJbZGVmYXVsdD1ZXSIKK21zZ3N0ciAiW9C/0L4g0YPQvNC+0LvRh9Cw0L3QuNGOIFldIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjY4Cittc2dpZCAiW25vIGRlZmF1bHRdIgorbXNnc3RyICJb0LfQvdCw0YfQtdC90LjRjyDQv9C+INGD0LzQvtC70YfQsNC90LjRjiDQvdC10YJdIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjcxCittc2dpZCAiZXJyb3Igd3JpdGluZyB0byBzdGRlcnIsIGRpc2NvdmVyZWQgYmVmb3JlIGNvbmZmaWxlIHByb21wdCIKK21zZ3N0ciAi0L/RgNC4INCy0YvQstC+0LTQtSDQt9Cw0L/RgNC+0YHQsCDQvtCx0L3QsNGA0YPQttC10L3QsCDQvtGI0LjQsdC60LAg0LfQsNC/0LjRgdC4INCyINC/0L7RgtC+0Logc3RkZXJyIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjgwCittc2dpZCAicmVhZCBlcnJvciBvbiBzdGRpbiBhdCBjb25mZmlsZSBwcm9tcHQiCittc2dzdHIgItC+0YjQuNCx0LrQsCDRh9GC0LXQvdC40Y8g0L7RgtCy0LXRgtCwINC90LAg0LfQsNC/0YDQvtGBINC40Lcg0L/QvtGC0L7QutCwIHN0ZGluIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjgxCittc2dpZCAiRU9GIG9uIHN0ZGluIGF0IGNvbmZmaWxlIHByb21wdCIKK21zZ3N0ciAi0JIg0L7RgtCy0LXRgtC1INC90LAg0LfQsNC/0YDQvtGBINC40Lcg0L/QvtGC0L7QutCwIHN0ZGluINC/0YDQvtGH0LjRgtCw0L0g0YHQuNC80LLQvtC7INC60L7QvdGG0LAg0YTQsNC50LvQsCIKKworIzogc3JjL2RlcGNvbi5jOjE3NQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBkZXBlbmRzIG9uICVzIgorbXNnc3RyICIlcyDQt9Cw0LLQuNGB0LjRgiDQvtGCICVzIgorCisjOiBzcmMvZGVwY29uLmM6MTc4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHByZS1kZXBlbmRzIG9uICVzIgorbXNnc3RyICIlcyDRgtGA0LXQsdGD0LXRgiDQv9GA0LXQtNCy0LDRgNC40YLQtdC70YzQvdC+0Lkg0YPRgdGC0LDQvdC+0LLQutC4ICVzIgorCisjOiBzcmMvZGVwY29uLmM6MTgxCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHJlY29tbWVuZHMgJXMiCittc2dzdHIgIiVzINGA0LXQutC+0LzQtdC90LTRg9C10YIgJXMiCisKKyM6IHNyYy9kZXBjb24uYzoxODQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgc3VnZ2VzdHMgJXMiCittc2dzdHIgIiVzINC/0YDQtdC00LvQsNCz0LDQtdGCICVzIgorCisjOiBzcmMvZGVwY29uLmM6MTg3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGJyZWFrcyAlcyIKK21zZ3N0ciAiJXMg0LvQvtC80LDQtdGCICVzIgorCisjOiBzcmMvZGVwY29uLmM6MTkwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGNvbmZsaWN0cyB3aXRoICVzIgorbXNnc3RyICIlcyDQutC+0L3RhNC70LjQutGC0YPQtdGCINGBICVzIgorCisjOiBzcmMvZGVwY29uLmM6MTkzCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGVuaGFuY2VzICVzIgorbXNnc3RyICIlcyDRgNCw0YHRiNC40YDRj9C10YIg0LLQvtC30LzQvtC20L3QvtGB0YLQuCAlcyIKKworIzogc3JjL2RlcGNvbi5jOjI5NgorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIgINC/0LDQutC10YIgJS4yNTBzINCx0YPQtNC10YIg0YPQtNCw0LvRkdC9LlxuIgorCisjOiBzcmMvZGVwY29uLmM6Mjk5CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHRvIGJlIGRlY29uZmlndXJlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMg0LHRg9C00LXRgiDQtNC10LrQvtC90YTQuNCz0YPRgNC40YDQvtCy0LDQvS5cbiIKKworIzogc3JjL2RlcGNvbi5jOjMwNAorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB0byBiZSBpbnN0YWxsZWQsIGJ1dCBpcyB2ZXJzaW9uICUuMjUwcy5cbiIKK21zZ3N0ciAiINC/0LDQutC10YIgJS4yNTBzINCx0YPQtNC10YIg0YPRgdGC0LDQvdC+0LLQu9C10L0sINC90L4g0LXQs9C+INCy0LXRgNGB0LjRjyAlLjI1MHMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgaW5zdGFsbGVkLCBidXQgaXMgdmVyc2lvbiAlLjI1MHMuXG4iCittc2dzdHIgIiAg0L/QsNC60LXRgiAlLjI1MHMg0YPRgdGC0LDQvdC+0LLQu9C10L0sINC90L4g0LXQs9C+INCy0LXRgNGB0LjRjyAlLjI1MHMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdW5wYWNrZWQsIGJ1dCBoYXMgbmV2ZXIgYmVlbiBjb25maWd1cmVkLlxuIgorbXNnc3RyICIgINC/0LDQutC10YIgJS4yNTBzINGA0LDRgdC/0LDQutC+0LLQsNC9LCDQvdC+INC90LUg0LHRi9C7INC90LDRgdGC0YDQvtC10L0uXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdW5wYWNrZWQsIGJ1dCBpcyB2ZXJzaW9uICUuMjUwcy5cbiIKK21zZ3N0ciAiICDQv9Cw0LrQtdGCICUuMjUwcyDRgNCw0YHQv9Cw0LrQvtCy0LDQvSwg0L3QviDQtdCz0L4g0LLQtdGA0YHQuNGPICUuMjUwcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjM0MworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBsYXRlc3QgY29uZmlndXJlZCB2ZXJzaW9uIGlzICUuMjUwcy5cbiIKK21zZ3N0ciAiICDQv9C+0YHQu9C10LTQvdGP0Y8g0L3QsNGB0YLRgNC+0LXQvdC90LDRjyDQstC10YDRgdC40Y8g0L/QsNC60LXRgtCwICUuMjUwcyAtLSAlLjI1MHMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozNTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgJXMuXG4iCittc2dzdHIgIiAg0L/QsNC60LXRgiAlLjI1MHMgJXMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozODgKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGJ1dCBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIg0L/QsNC60LXRgiAlLjI1MHMg0L/RgNC10LTQvtGB0YLQsNCy0LvRj9C10YIgJS4yNTBzLCDQvdC+INC00L7Qu9C20LXQvSDQsdGL0YLRjCDRg9C00LDQu9GR0L0uXG4iCisKKyM6IHNyYy9kZXBjb24uYzozOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGJ1dCBpcyB0byBiZSBkZWNvbmZpZ3VyZWQuXG4iCittc2dzdHIgIiIKKyIgINC/0LDQutC10YIgJS4yNTBzINC/0YDQtdC00L7RgdGC0LDQstC70Y/QtdGCICUuMjUwcywg0L3QviDQtNC+0LvQttC10L0g0LHRi9GC0Ywg0LTQtdC60L7QvdGE0LjQs9GD0YDQuNGA0L7QstCw0L0uXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0MDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGJ1dCBpcyAlcy5cbiIKK21zZ3N0ciAiICDQv9Cw0LrQtdGCICUuMjUwcyDQv9GA0LXQtNC+0YHRgtCw0LLQu9GP0LXRgiAlLjI1MHMsINC90L4g0L7QvSAlcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjQxNQorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIgINC/0LDQutC10YIgJS4yNTBzINC90LUg0YPRgdGC0LDQvdC+0LLQu9C10L0uXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgKHZlcnNpb24gJS4yNTBzKSBpcyB0byBiZSBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAg0L/QsNC60LXRgiAlLjI1MHMg0LLQtdGA0YHQuNC4ICUuMjUwcyDQsdGD0LTQtdGCINGD0YHRgtCw0L3QvtCy0LvQtdC9LlxuIgorCisjOiBzcmMvZGVwY29uLmM6NDY4CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzICh2ZXJzaW9uICUuMjUwcykgaXMgcHJlc2VudCBhbmQgJXMuXG4iCittc2dzdHIgIiAgJS4yNTBzICjQstC10YDRgdC40Y8gJS4yNTBzKSDRgdGD0YnQtdGB0YLQstGD0LXRgiDQuCAlcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjQ5NQorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYW5kIGlzIHRvIGJlIGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMg0L/RgNC10LTQvtGB0YLQsNCy0LvRj9C10YIgJS4yNTBzINC4INCx0YPQtNC10YIg0YPRgdGC0LDQvdC+0LLQu9C10L0uXG4iCisKKyM6IHNyYy9kZXBjb24uYzo1MzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGFuZCBpcyBwcmVzZW50IGFuZCAlcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMg0L/RgNC10LTQvtGB0YLQsNCy0LvRj9C10YIgJS4yNTBzINC4INC4INGB0YPRidC10YHRgtCy0YPQtdGCINC4ICVzLlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTAKKyMsIGZ1enp5CisjfCBtc2dpZCAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBxdWVyeWluZyBwYWNrYWdlcy4iCittc2dpZCAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBkaXZlcnRpbmcgZmlsZXMuIgorbXNnc3RyICLQmNGB0L/QvtC70YzQt9GD0LnRgtC1INC/0LDRgNCw0LzQtdGC0YAgLS1oZWxwINC00LvRjyDQstGL0LLQvtC00LAg0YHQv9GA0LDQstC60Lgg0L/QviDQt9Cw0L/RgNC+0YHQsNC8INC/0LDQutC10YLQvtCyLiIKKworIzogc3JjL2RpdmVydGNtZC5jOjY2IHNyYy9zdGF0Y21kLmM6NTcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjgwCisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiAlcyB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICJEZWJpYW4gJXMsINCy0LXRgNGB0LjRjyAlcy5cbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjcwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMTAgR3VpbGxlbSBKb3Zlci5cbiIKK21zZ3N0ciAiIgorIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLlxuIgorIkNvcHlyaWdodCAoQykgMjAxMCBHdWlsbGVtIEpvdmVyLlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NzUgc3JjL21haW4uYzo2MyBzcmMvcXVlcnljbWQuYzo2MDMgc3JjL3N0YXRjbWQuYzo2NQorIzogc3JjL3RyaWdjbWQuYzo1NSBkcGtnLWRlYi9tYWluLmM6NTcgZHBrZy1zcGxpdC9tYWluLmM6NTEKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo4OQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvclxuIgorImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LlxuIgorbXNnc3RyICIiCisi0K3RgtC+INGB0LLQvtCx0L7QtNC90L7QtSDQv9GA0L7Qs9GA0LDQvNC80L3QvtC1INC+0LHQtdGB0L/QtdGH0LXQvdC40LUuINCh0LwuINGD0YHQu9C+0LLQuNGPINGA0LDRgdC/0YDQvtGB0YLRgNCw0L3QtdC90LjRjyDQslxuIgorItCj0L3QuNCy0LXRgNGB0LDQu9GM0L3QvtC5INC+0LHRidC10YHRgtCy0LXQvdC90L7QuSDQu9C40YbQtdC90LfQuNC4IEdOVSDQstC10YDRgdC40LggMiDQuNC70Lgg0LHQvtC70LXQtSDQv9C+0LfQtNC90LXQuS5cbiIKKyLQndCY0JrQkNCa0JjQlSDQs9Cw0YDQsNC90YLQuNC4INC90LUg0L/RgNC10LTQvtGB0YLQsNCy0LvRj9GO0YLRgdGPLlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6ODcgc3JjL21haW4uYzo4MSBzcmMvcXVlcnljbWQuYzo2MTUgc3JjL3N0YXRjbWQuYzo3NworIzogZHBrZy1kZWIvbWFpbi5jOjY5IGRwa2ctc3BsaXQvbWFpbi5jOjYzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo5NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIDxjb21tYW5kPlxuIgorIlxuIgorbXNnc3RyICIiCisi0JjRgdC/0L7Qu9GM0LfQvtCy0LDQvdC40LU6ICVzIFs80L/QsNGA0LDQvNC10YLRgD4gLi4uXSA80LrQvtC80LDQvdC00LA+XG4iCisiXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo5MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICBbLS1hZGRdIDxmaWxlPiAgICAgICAgICAgYWRkIGEgZGl2ZXJzaW9uLlxuIgorIiAgLS1yZW1vdmUgPGZpbGU+ICAgICAgICAgIHJlbW92ZSB0aGUgZGl2ZXJzaW9uLlxuIgorIiAgLS1saXN0IFs8Z2xvYi1wYXR0ZXJuPl0gIHNob3cgZmlsZSBkaXZlcnNpb25zLlxuIgorIiAgLS1saXN0cGFja2FnZSA8ZmlsZT4gICAgIHNob3cgd2hhdCBwYWNrYWdlIGRpdmVydHMgdGhlIGZpbGUuXG4iCisiICAtLXRydWVuYW1lIDxmaWxlPiAgICAgICAgcmV0dXJuIHRoZSBkaXZlcnRlZCBmaWxlLlxuIgorIlxuIgorbXNnc3RyICIiCisi0JrQvtC80LDQvdC00Ys6XG4iCisiICBbLS1hZGRdIDzRhNCw0LnQuz4gICAgICAgICAgINC00L7QsdCw0LLQuNGC0Ywg0L7RgtC60LvQvtC90LXQvdC40LUuXG4iCisiICAtLXJlbW92ZSA80YTQsNC50Ls+ICAgICAgICAgINGD0LTQsNC70LjRgtGMINC+0YLQutC70L7QvdC10L3QuNC1LlxuIgorIiAgLS1saXN0IFs8Z2xvYi3RiNCw0LHQu9C+0L0+XSAgINC/0L7QutCw0LfQsNGC0Ywg0L7RgtC60LvQvtC90ZHQvdC90YvQtSDRhNCw0LnQu9GLLlxuIgorIiAgLS1saXN0cGFja2FnZSA80YTQsNC50Ls+ICAgICDQv9C+0LrQsNC30LDRgtGMINC60LDQutC40LUg0L/QsNC60LXRgtGLINC+0YLQutC70L7QvdGP0Y7RgiDRhNCw0LnQuy5cbiIKKyIgIC0tdHJ1ZW5hbWUgPNGE0LDQudC7PiAgICAgICAg0LLQtdGA0L3Rg9GC0Ywg0L7RgtC60LvQvtC90ZHQvdC90YvQuSDRhNCw0LnQuy5cbiIKKyJcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjEwMAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tcGFja2FnZSA8cGFja2FnZT4gICAgICBuYW1lIG9mIHRoZSBwYWNrYWdlIHdob3NlIGNvcHkgb2YgPGZpbGU+IHdpbGwgIgorIm5vdFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmUgZGl2ZXJ0ZWQuXG4iCisiICAtLWxvY2FsICAgICAgICAgICAgICAgICAgYWxsIHBhY2thZ2VzJyB2ZXJzaW9ucyBhcmUgZGl2ZXJ0ZWQuXG4iCisiICAtLWRpdmVydCA8ZGl2ZXJ0LXRvPiAgICAgdGhlIG5hbWUgdXNlZCBieSBvdGhlciBwYWNrYWdlcycgdmVyc2lvbnMuXG4iCisiICAtLXJlbmFtZSAgICAgICAgICAgICAgICAgYWN0dWFsbHkgbW92ZSB0aGUgZmlsZSBhc2lkZSAob3IgYmFjaykuXG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgc2V0IHRoZSBkaXJlY3Rvcnkgd2l0aCB0aGUgZGl2ZXJzaW9ucyBmaWxlLlxuIgorIiAgLS10ZXN0ICAgICAgICAgICAgICAgICAgIGRvbid0IGRvIGFueXRoaW5nLCBqdXN0IGRlbW9uc3RyYXRlLlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHF1aWV0IG9wZXJhdGlvbiwgbWluaW1hbCBvdXRwdXQuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorbXNnc3RyICIiCisi0J/QsNGA0LDQvNC10YLRgNGLOlxuIgorIiAgLS1wYWNrYWdlIDzQv9Cw0LrQtdGCPiAgICAgICAg0LjQvNGPINC/0LDQutC10YLQsCwg0YfRjNGPINC60L7Qv9C40Y8gPNGE0LDQudC70LA+INC90LUg0LHRg9C00LXRgiAiCisi0L7RgtC60LvQvtC90LXQvdCwLlxuIgorIiAgLS1sb2NhbCAgICAgICAgICAgICAgICAgINCy0YHQtSDQstC10YDRgdC40Lgg0L/QsNC60LXRgtC+0LIg0L/QvtC00LLQtdGA0LPQsNGO0YLRgdGPINC+0YLQutC70L7QvdC10L3QuNGOLlxuIgorIiAgLS1kaXZlcnQgPGRpdmVydC10bz4gICAgINC40LzRjywg0LjRgdC/0L7Qu9GM0LfRg9C10LzQvtC1INC00YDRg9Cz0LjQvNC4INCy0LXRgNGB0LjRj9C80Lgg0L/QsNC60LXRgtC+0LIuXG4iCisiICAtLXJlbmFtZSAgICAgICAgICAgICAgICAg0YTQsNC60YLQuNGH0LXRgdC60LgsINC/0LXRgNC10LzQtdGB0YLQuNGC0Ywg0YTQsNC50Lsg0LIg0YDQtdC30LXRgNCyICjQuNC70LggIgorItC+0LHRgNCw0YLQvdC+KS5cbiIKKyIgIC0tYWRtaW5kaXIgPNC60LDRgtCw0LvQvtCzPiAgICAg0YPQutCw0LfQsNGC0Ywg0LrQsNGC0LDQu9C+0LMg0YEg0YTQsNC50LvQvtC8IGRpdmVyc2lvbnMuXG4iCisiICAtLXRlc3QgICAgICAgICAgICAgICAgICAg0L/QvtC60LDQt9Cw0YLRjCwg0YfRgtC+INCx0YPQtNC10YIg0YHQtNC10LvQsNC90L4g0L3QuNGH0LXQs9C+INC90LUg0LzQtdC90Y/Rjy5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICDQvNC40L3QuNC80LDQu9GM0L3Ri9C5INCy0YvQstC+0LQg0L3QsCDRjdC60YDQsNC9INC/0YDQuCDRgNCw0LHQvtGC0LUuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAg0LLRi9Cy0LXRgdGC0Lgg0Y3RgtC+INGB0L7QvtCx0YnQtdC90LjQtS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICDQstGL0LLQtdGB0YLQuCDQvdC+0LzQtdGAINCy0LXRgNGB0LjQuC5cbiIKKyJcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiV2hlbiBhZGRpbmcsIGRlZmF1bHQgaXMgLS1sb2NhbCBhbmQgLS1kaXZlcnQgPG9yaWdpbmFsPi5kaXN0cmliLlxuIgorIldoZW4gcmVtb3ZpbmcsIC0tcGFja2FnZSBvciAtLWxvY2FsIGFuZCAtLWRpdmVydCBtdXN0IG1hdGNoIGlmIHNwZWNpZmllZC5cbiIKKyJQYWNrYWdlIHByZWluc3QvcG9zdHJtIHNjcmlwdHMgc2hvdWxkIGFsd2F5cyBzcGVjaWZ5IC0tcGFja2FnZSBhbmQgLS0iCisiZGl2ZXJ0LlxuIgorbXNnc3RyICIiCisi0J/RgNC4INC00L7QsdCw0LLQu9C10L3QuNC4LCDQt9C90LDRh9C10L3QuNGPINC/0L4g0YPQvNC+0LvRh9Cw0L3QuNGOIC0tbG9jYWwg0LggLS1kaXZlcnQgPG9yaWdpbmFsPi4iCisiZGlzdHJpYi5cbiIKKyLQn9GA0Lgg0YPQtNCw0LvQtdC90LjQuCwg0LXRgdC70Lgg0LfQsNC00LDQvdGLIC0tcGFja2FnZSDQuNC70LggLS1sb2NhbCwg0YLQviDQvtC90Lgg0LTQvtC70LbQvdGLXG4iCisiINGB0L7QstC/0LDQtNCw0YLRjCDRgSAtLWRpdmVydC4g0JIg0YHRhtC10L3QsNGA0LjRj9GFINC/0LDQutC10YLQvtCyIHByZWluc3QvcG9zdHJtINCy0YHQtdCz0LTQsCDQvdGD0LbQvdC+XG4iCisi0YPQutCw0LfRi9Cy0LDRgtGMIC0tcGFja2FnZSDQuCAtLWRpdmVydC5cbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjE2OAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjaGVja2luZyAnJXMnIgorbXNnc3RyICLQvtGI0LjQsdC60LAg0L/RgNC4INC/0YDQvtCy0LXRgNC60LUgwqslc8K7IgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjAzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJyZW5hbWUgaW52b2x2ZXMgb3ZlcndyaXRpbmcgYCVzJyB3aXRoXG4iCisiICBkaWZmZXJlbnQgZmlsZSBgJXMnLCBub3QgYWxsb3dlZCIKK21zZ3N0ciAiIgorItC/0LXRgNC10LjQvNC10L3QvtCy0LDQvdC40LUg0LLRi9C30L7QstC10YIg0L/QtdGA0LXQt9Cw0L/QuNGB0Ywgwqslc8K7XG4iCisiICDQtNGA0YPQs9C40Lwg0YTQsNC50LvQvtC8IMKrJXPCuywg0YfRgtC+INC90LUg0YDQsNC30YDQtdGI0LXQvdC+IgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjIzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzczCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gd3JpdGUgZmlsZSAnJXMnIgorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgZmlsZSAnJXMnIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC30LDQv9C40YHQsNGC0Ywg0YTQsNC50Lsgwqslc8K7IgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjI3Cittc2dpZCAiZmlsZSBjb3B5IgorbXNnc3RyICLQutC+0L/QuNGPINGE0LDQudC70LAiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyMzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlbmFtZSAnJXMnIHRvICclcyciCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L/QtdGA0LXQuNC80LXQvdC+0LLQsNGC0Ywgwqslc8K7INCyIMKrJXPCuyIKKworIzogc3JjL2RpdmVydGNtZC5jOjI1MgorIywgYy1mb3JtYXQKK21zZ2lkICJyZW5hbWU6IHJlbW92ZSBkdXBsaWNhdGUgb2xkIGxpbmsgJyVzJyIKK21zZ3N0ciAicmVuYW1lOiDRg9C00LDQu9C10L3QuNC1INC00YPQsdC70LjRgNGD0Y7RidC10Lkg0YHRgtCw0YDQvtC5INGB0YHRi9C70LrQuCDCqyVzwrsiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyNjIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byBvcGVuIHNvdXJjZSBmaWxlIGAlLjI1MHMnIgorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgY29waWVkIHNvdXJjZSBmaWxlICclcyciCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L7RgtC60YDRi9GC0Ywg0LjRgdGF0L7QtNC90YvQuSDRhNCw0LnQuyDCqyUuMjUwc8K7IgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mjg0CisjLCBjLWZvcm1hdAorbXNnaWQgImxvY2FsIGRpdmVyc2lvbiBvZiAlcyIKK21zZ3N0ciAi0LvQvtC60LDQu9GM0L3QvtC1INC+0YLQutC70L7QvdC10L3QuNC1ICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mjg2CisjLCBjLWZvcm1hdAorbXNnaWQgImxvY2FsIGRpdmVyc2lvbiBvZiAlcyB0byAlcyIKK21zZ3N0ciAi0LvQvtC60LDQu9GM0L3QvtC1INC+0YLQutC70L7QvdC10L3QuNC1ICVzINCyICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjkwCisjLCBjLWZvcm1hdAorbXNnaWQgImRpdmVyc2lvbiBvZiAlcyBieSAlcyIKK21zZ3N0ciAi0L7RgtC60LvQvtC90LXQvdC40LUgJXMg0LjQty3Qt9CwICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjkzCisjLCBjLWZvcm1hdAorbXNnaWQgImRpdmVyc2lvbiBvZiAlcyB0byAlcyBieSAlcyIKK21zZ3N0ciAi0L7RgtC60LvQvtC90LXQvdC40LUgJXMg0LIgJXMg0LjQty3Qt9CwICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MzA5CisjLCBjLWZvcm1hdAorbXNnaWQgImFueSBkaXZlcnNpb24gb2YgJXMiCittc2dzdHIgItC70Y7QsdC+0LUg0L7RgtC60LvQvtC90LXQvdC40LUgJXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiYW55IGRpdmVyc2lvbiBvZiAlcyB0byAlcyIKK21zZ3N0ciAi0LvRjtCx0L7QtSDQvtGC0LrQu9C+0L3QtdC90LjQtSAlcyDQsiAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjM1NworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgY3JlYXRlIG5ldyAlcyBmaWxlIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGB0L7Qt9C00LDRgtGMINC90L7QstGL0Lkg0YTQsNC50LsgJXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozNzUgc3JjL3N0YXRjbWQuYzoyMTUgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE0MDQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIGZpbGUgJyVzJyIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRgdCx0YDQvtGB0LjRgtGMINC90LAg0LTQuNGB0Log0YTQsNC50Lsgwqslc8K7IgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MzgyCittc2dpZCAiZXJyb3IgcmVtb3Zpbmcgb2xkIGRpdmVyc2lvbnMtb2xkIgorbXNnc3RyICLRg9C00LDQu9C10L3QuNC1INGB0YLQsNGA0L7Qs9C+IGRpdmVyc2lvbnMtb2xkIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mzg0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgbmV3IGRpdmVyc2lvbnMtb2xkIgorbXNnc3RyICLQvtGI0LjQsdC60LAg0L/RgNC4INGB0L7Qt9C00LDQvdC40Lgg0L3QvtCy0L7Qs9C+IGRpdmVyc2lvbnMtb2xkIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mzg2Cittc2dpZCAiZXJyb3IgaW5zdGFsbGluZyBuZXcgZGl2ZXJzaW9ucyIKK21zZ3N0ciAi0L7RiNC40LHQutCwINC/0YDQuCDRg9GB0YLQsNC90L7QstC60LUg0L3QvtCy0L7Qs9C+IGRpdmVyc2lvbnMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MDYgc3JjL2RpdmVydGNtZC5jOjUwMyBzcmMvZGl2ZXJ0Y21kLmM6NjEwCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjMwIHNyYy9zdGF0Y21kLmM6MjkwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSBzaW5nbGUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMg0L3Rg9C20LXQvSDQvtC00LjQvSDQsNGA0LPRg9C80LXQvdGCIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDA5IHNyYy9kaXZlcnRjbWQuYzo0MzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZW5hbWUgXCIlc1wiIGlzIG5vdCBhYnNvbHV0ZSIKK21zZ3N0ciAi0LjQvNGPINGE0LDQudC70LAgwqslc8K7INGD0LrQsNC30LDQvdC+INC90LUg0YEg0L/QvtC70L3Ri9C8INC/0YPRgtGR0LwiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MTEgc3JjL3N0YXRjbWQuYzoyNDkKK21zZ2lkICJmaWxlIG1heSBub3QgY29udGFpbiBuZXdsaW5lcyIKK21zZ3N0ciAi0YTQsNC50Lsg0L3QtSDQvNC+0LbQtdGCINGB0L7QtNC10YDQttCw0YLRjCDRgdC40LzQstC+0LvQvtCyINC90L7QstC+0Lkg0YHRgtGA0L7QutC4IgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDE4Cittc2dpZCAiQ2Fubm90IGRpdmVydCBkaXJlY3RvcmllcyIKK21zZ3N0ciAi0J3QtdC70YzQt9GPINC+0YLQutC70L7QvdGP0YLRjCDQutCw0YLQsNC70L7Qs9C4IgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDMzCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBkaXZlcnQgZmlsZSAnJXMnIHRvIGl0c2VsZiIKK21zZ3N0ciAi0L3QtdCy0L7Qt9C80L7QttC90L4g0L7RgtC60LvQvtC90LjRgtGMINGE0LDQudC7IMKrJXPCuyDQsiDRgdCw0LzQvtCz0L4g0YHQtdCx0Y8iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiTGVhdmluZyAnJXMnXG4iCittc2dzdHIgItCe0YHRgtCw0LLQu9GP0LXRgtGB0Y8gwqslc8K7XG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBjbGFzaGVzIHdpdGggYCVzJyIKK21zZ3N0ciAiwqslc8K7INGA0LDRgdGF0L7QtNC40YLRgdGPINGBIMKrJXPCuyIKKworIzogc3JjL2RpdmVydGNtZC5jOjQ4MQorIywgYy1mb3JtYXQKK21zZ2lkICJBZGRpbmcgJyVzJ1xuIgorbXNnc3RyICLQlNC+0LHQsNCy0LvRj9C10YLRgdGPIMKrJXPCu1xuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTEwCisjLCBjLWZvcm1hdAorbXNnaWQgIk5vIGRpdmVyc2lvbiAnJXMnLCBub25lIHJlbW92ZWQuXG4iCittc2dzdHIgItCd0LXRgiDQvtGC0LrQu9C+0L3QtdC90LjRjyDCqyVzwrssINC90LjRh9C10LPQviDQvdC1INGD0LTQsNC70LXQvdC+LlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTI1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJtaXNtYXRjaCBvbiBkaXZlcnQtdG9cbiIKKyIgIHdoZW4gcmVtb3ZpbmcgYCVzJ1xuIgorIiAgZm91bmQgYCVzJyIKK21zZ3N0ciAiIgorItC90LXRgdC+0LLQv9Cw0LTQtdC90LjQtSDRgSBkaXZlcnQtdG9cbiIKKyIgINC/0YDQuCDRg9C00LDQu9C10L3QuNC4IMKrJXPCu1xuIgorIiAg0L3QsNC50LTQtdC90L4gwqslc8K7IgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJtaXNtYXRjaCBvbiBwYWNrYWdlXG4iCisiICB3aGVuIHJlbW92aW5nIGAlcydcbiIKKyIgIGZvdW5kIGAlcyciCittc2dzdHIgIiIKKyLQvdC10YHQvtCy0L/QsNC00LXQvdC40LUg0YEg0L/QsNC60LXRgtC+0LxcbiIKKyIgINC/0YDQuCDRg9C00LDQu9C10L3QuNC4IMKrJXPCu1xuIgorIiAg0L3QsNC50LTQtdC90L4gwqslc8K7IgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTM5CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlbW92aW5nICclcydcbiIKK21zZ3N0ciAi0KPQtNCw0LvRj9C10YLRgdGPIMKrJXPCu1xuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjU3Cittc2dpZCAicGFja2FnZSBtYXkgbm90IGNvbnRhaW4gbmV3bGluZXMiCittc2dzdHIgItC/0LDQutC10YIg0L3QtSDQvNC+0LbQtdGCINGB0L7QtNC10YDQttCw0YLRjCDRgdC40LzQstC+0LvQvtCyINC90L7QstC+0Lkg0YHRgtGA0L7QutC4IgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjY2Cittc2dpZCAiZGl2ZXJ0LXRvIG1heSBub3QgY29udGFpbiBuZXdsaW5lcyIKK21zZ3N0ciAiZGl2ZXJ0LXRvINC90LUg0LzQvtC20LXRgiDRgdC+0LTQtdGA0LbQsNGC0Ywg0YHQuNC80LLQvtC70L7QsiDQvdC+0LLQvtC5INGB0YLRgNC+0LrQuCIKKworIzogc3JjL2RpdmVydGRiLmM6NjQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiBkaXZlcnNpb25zIGZpbGUiCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L7RgtC60YDRi9GC0Ywg0YTQsNC50LsgZGl2ZXJzaW9ucyIKKworIzogc3JjL2RpdmVydGRiLmM6NzEKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgcHJldmlvdXMgZGl2ZXJzaW9ucyBmaWxlIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINCy0YvQv9C+0LvQvdC40YLRjCBmc3RhdCDQvdCwINGB0YLQsNGA0YvQuSDRhNCw0LnQuyBkaXZlcnNpb25zIgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzo3MworbXNnaWQgImZhaWxlZCB0byBmc3RhdCBkaXZlcnNpb25zIGZpbGUiCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LLRi9C/0L7Qu9C90LjRgtGMIGZzdGF0INC90LAg0YTQsNC50LsgZGl2ZXJzaW9ucyIKKworIzogc3JjL2RpdmVydGRiLmM6MTEzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZsaWN0aW5nIGRpdmVyc2lvbnMgaW52b2x2aW5nIGAlLjI1MHMnIG9yIGAlLjI1MHMnIgorbXNnc3RyICLQutC+0L3RhNC70LjQutGCINGE0LDQudC70L7QsiBkaXZlcnNpb25zINC40Lcg0L/QsNC60LXRgtC+0LIgwqslLjI1MHPCuyDQuCDCqyUuMjUwc8K7IgorCisjOiBzcmMvZW5xdWlyeS5jOjczCittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgYXJlIGluIGEgbWVzcyBkdWUgdG8gc2VyaW91cyBwcm9ibGVtcyBkdXJpbmdcbiIKKyJpbnN0YWxsYXRpb24uICBUaGV5IG11c3QgYmUgcmVpbnN0YWxsZWQgZm9yIHRoZW0gKGFuZCBhbnkgcGFja2FnZXNcbiIKKyJ0aGF0IGRlcGVuZCBvbiB0aGVtKSB0byBmdW5jdGlvbiBwcm9wZXJseTpcbiIKK21zZ3N0ciAiIgorItCf0YDQuCDRg9GB0YLQsNC90L7QstC60LUg0YHQu9C10LTRg9GO0YnQuNGFINC/0LDQutC10YLQvtCyINCy0L7Qt9C90LjQutC70Lgg0YHQtdGA0YzRkdC30L3Ri9C1INC/0YDQvtCx0LvQtdC80YssINC4INC+0L3QuFxuIgorItGB0L7QstC10YDRiNC10L3QvdC+INC90LXRgNCw0LHQvtGC0L7RgdC/0L7RgdC+0LHQvdGLLiDQp9GC0L7QsdGLINGN0YLQuCAo0Lgg0LTRgNGD0LPQuNC1LCDQt9Cw0LLQuNGB0Y/RidC40LUg0L7RgiDQvdC40YUpXG4iCisi0L/QsNC60LXRgtGLINC60L7RgNGA0LXQutGC0L3QviDRhNGD0L3QutGG0LjQvtC90LjRgNC+0LLQsNC70LgsINC40YUg0L3QtdC+0LHRhdC+0LTQuNC80L4g0L/QtdGA0LXRg9GB0YLQsNC90L7QstC40YLRjDpcbiIKKworIzogc3JjL2VucXVpcnkuYzo4MAorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGhhdmUgYmVlbiB1bnBhY2tlZCBidXQgbm90IHlldCBjb25maWd1cmVkLlxuIgorIlRoZXkgbXVzdCBiZSBjb25maWd1cmVkIHVzaW5nIGRwa2cgLS1jb25maWd1cmUgb3IgdGhlIGNvbmZpZ3VyZVxuIgorIm1lbnUgb3B0aW9uIGluIGRzZWxlY3QgZm9yIHRoZW0gdG8gd29yazpcbiIKK21zZ3N0ciAiIgorItCh0LvQtdC00YPRjtGJ0LjQtSDQv9Cw0LrQtdGC0Ysg0YDQsNGB0L/QsNC60L7QstCw0L3Riywg0L3QviDQv9C+0LrQsCDQtdGJ0ZEg0L3QtSDQvdCw0YHRgtGA0L7QtdC90YsuXG4iCisi0KfRgtC+0LHRiyDQvtC90Lgg0LfQsNGA0LDQsdC+0YLQsNC70LgsINC40YUg0L3QtdC+0LHRhdC+0LTQuNC80L4g0L3QsNGB0YLRgNC+0LjRgtGMINGBINC/0L7QvNC+0YnRjNGOINC60L7QvNCw0L3QtNGLXG4iCisiZHBrZyAtLWNvbmZpZ3VyZSDQuNC70Lgg0LLRi9Cx0YDQsNCyINC/0YPQvdC60YIgXCLQndCw0YHRgtGA0L7QuNGC0YxcIiDQsiDQvNC10L3RjiDQv9GA0L7Qs9GA0LDQvNC80YsgZHNlbGVjdDpcbiIKKworIzogc3JjL2VucXVpcnkuYzo4NworbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBvbmx5IGhhbGYgY29uZmlndXJlZCwgcHJvYmFibHkgZHVlIHRvIHByb2JsZW1zXG4iCisiY29uZmlndXJpbmcgdGhlbSB0aGUgZmlyc3QgdGltZS4gIFRoZSBjb25maWd1cmF0aW9uIHNob3VsZCBiZSByZXRyaWVkIHVzaW5nXG4iCisiZHBrZyAtLWNvbmZpZ3VyZSA8cGFja2FnZT4gb3IgdGhlIGNvbmZpZ3VyZSBtZW51IG9wdGlvbiBpbiBkc2VsZWN0OlxuIgorbXNnc3RyICIiCisi0KHQu9C10LTRg9GO0YnQuNC1INC/0LDQutC10YLRiyDQvdCw0YHRgtGA0L7QtdC90Ysg0LvQuNGI0Ywg0YfQsNGB0YLQuNGH0L3Qvi4g0JLQtdGA0L7Rj9GC0L3Qviwg0Y3RgtC+INGB0LLRj9C30LDQvdC+INGBXG4iCisi0YEg0L/RgNC+0LHQu9C10LzQsNC80LgsINCy0L7Qt9C90LjQutGI0LjQvNC4INC/0YDQuCDQv9C10YDQstC+0Lkg0L/QvtC/0YvRgtC60LUg0L3QsNGB0YLRgNC+0LnQutC4LiDQodC70LXQtNGD0LXRglxuIgorItC/0YDQvtCy0LXRgdGC0Lgg0L3QsNGB0YLRgNC+0LnQutGDINC10YnRkSDRgNCw0Lcg0YEg0L/QvtC80L7RidGM0Y4g0LrQvtC80LDQvdC00YsgZHBrZyAtLWNvbmZpZ3VyZSA8cGFja2FnZT5cbiIKKyLQuNC70Lgg0L/Rg9C90LrRgtCwIFwi0J3QsNGB0YLRgNC+0LjRgtGMXCIg0LzQtdC90Y4g0L/RgNC+0LPRgNCw0LzQvNGLIGRzZWxlY3Q6XG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6OTQKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgb25seSBoYWxmIGluc3RhbGxlZCwgZHVlIHRvIHByb2JsZW1zIGR1cmluZ1xuIgorImluc3RhbGxhdGlvbi4gIFRoZSBpbnN0YWxsYXRpb24gY2FuIHByb2JhYmx5IGJlIGNvbXBsZXRlZCBieSByZXRyeWluZyBpdDtcbiIKKyJ0aGUgcGFja2FnZXMgY2FuIGJlIHJlbW92ZWQgdXNpbmcgZHNlbGVjdCBvciBkcGtnIC0tcmVtb3ZlOlxuIgorbXNnc3RyICIiCisi0KHQu9C10LTRg9GO0YnQuNC1INC/0LDQutC10YLRiyDRg9GB0YLQsNC90L7QstC70LXQvdGLINC70LjRiNGMINGH0LDRgdGC0LjRh9C90L4uINCt0YLQviDRgdCy0Y/Qt9Cw0L3QviDRgSDQv9GA0L7QsdC70LXQvNCw0LzQuCxcbiIKKyLQstC+0LfQvdC40LrRiNC40LzQuCDQv9GA0Lgg0YPRgdGC0LDQvdC+0LLQutC1LiDQktC10YDQvtGP0YLQvdC+LCDRg9GB0YLQsNC90L7QstC60YMg0LzQvtC20L3QviDQt9Cw0LLQtdGA0YjQuNGC0YwsINC/0L7QstGC0L7RgNC40LJcbiIKKyLQtdGRLiDQo9C00LDQu9C40YLRjCDQv9Cw0LrQtdGC0Ysg0LzQvtC20L3QviDRgSDQv9C+0LzQvtGJ0YzRjiDQv9GA0L7Qs9GA0LDQvNC80YsgZHNlbGVjdCDQuNC70Lgg0LrQvtC80LDQvdC00YtcbiIKKyJkcGtnIC0tcmVtb3ZlOlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjEwMQorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBhd2FpdGluZyBwcm9jZXNzaW5nIG9mIHRyaWdnZXJzIHRoYXQgdGhleVxuIgorImhhdmUgYWN0aXZhdGVkIGluIG90aGVyIHBhY2thZ2VzLiAgVGhpcyBwcm9jZXNzaW5nIGNhbiBiZSByZXF1ZXN0ZWQgdXNpbmdcbiIKKyJkc2VsZWN0IG9yIGRwa2cgLS1jb25maWd1cmUgLS1wZW5kaW5nIChvciBkcGtnIC0tdHJpZ2dlcnMtb25seSk6XG4iCittc2dzdHIgIiIKKyLQlNC70Y8g0YHQu9C10LTRg9GO0YnQuNGFINC/0LDQutC10YLQvtCyINC+0LbQuNC00LDQtdGC0YHRjyDQvtCx0YDQsNCx0L7RgtC60LAg0YLRgNC40LPQs9C10YDQvtCyLCDQutC+0YLQvtGA0YvQtSDQsdGL0LvQuCAiCisi0LDQutGC0LjQstC40YDQvtCy0LDQvdGLXG4iCisi0LTRgNGD0LPQuNC80Lgg0L/QsNC60LXRgtCw0LzQuC4g0K3RgtCwINC+0LHRgNCw0LHQvtGC0LrQsCDQvNC+0LbQtdGCINCx0YvRgtGMINC30LDQv9GA0L7RiNC10L3QsCDQuNC3XG4iCisiZHNlbGVjdCDQuNC70Lgg0YEg0L/QvtC80L7RidGM0Y4gZHBrZyAtLWNvbmZpZ3VyZSAtLXBlbmRpbmcgKNC40LvQuCBkcGtnIC0tdHJpZ2dlcnMtIgorIm9ubHkpOlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjEwOAorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGhhdmUgYmVlbiB0cmlnZ2VyZWQsIGJ1dCB0aGUgdHJpZ2dlciBwcm9jZXNzaW5nXG4iCisiaGFzIG5vdCB5ZXQgYmVlbiBkb25lLiAgVHJpZ2dlciBwcm9jZXNzaW5nIGNhbiBiZSByZXF1ZXN0ZWQgdXNpbmdcbiIKKyJkc2VsZWN0IG9yIGRwa2cgLS1jb25maWd1cmUgLS1wZW5kaW5nIChvciBkcGtnIC0tdHJpZ2dlcnMtb25seSk6XG4iCittc2dzdHIgIiIKKyLQlNC70Y8g0YHQu9C10LTRg9GO0YnQuNGFINC/0LDQutC10YLQvtCyINCx0YvQu9C4INGD0YHRgtCw0L3QvtCy0LvQtdC90Ysg0YLRgNC40LPQs9C10YDRiywg0L3QviDQvtCx0YDQsNCx0L7RgtC60LAg0YLRgNC40LPQs9C10YDQvtCyXG4iCisi0LXRidGRINC90LUg0LLRi9C/0L7Qu9C90LXQvdCwLiDQrdGC0LAg0L7QsdGA0LDQsdC+0YLQutCwINC80L7QttC10YIg0LHRi9GC0Ywg0LfQsNC/0YDQvtGI0LXQvdCwINC40LdcbiIKKyJkc2VsZWN0INC40LvQuCDRgSDQv9C+0LzQvtGJ0YzRjiBkcGtnIC0tY29uZmlndXJlIC0tcGVuZGluZyAo0LjQu9C4IGRwa2cgLS10cmlnZ2Vycy0iCisib25seSk6XG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTM3IHNyYy9lbnF1aXJ5LmM6MjExIHNyYy9lbnF1aXJ5LmM6MjkyIHNyYy9lbnF1aXJ5LmM6MzczCisjOiBzcmMvZW5xdWlyeS5jOjQ2MCBzcmMvc2VsZWN0LmM6OTggc3JjL3NlbGVjdC5jOjE2NCBzcmMvdHJpZ2NtZC5jOjE5OQorIzogc3JjL3VwZGF0ZS5jOjQ4IHNyYy91cGRhdGUuYzoxMTMgZHBrZy1zcGxpdC9xdWV1ZS5jOjIzMgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIHRha2VzIG5vIGFyZ3VtZW50cyIKK21zZ3N0ciAi0YMgLS0lcyDQvdC10YIg0LDRgNCz0YPQvNC10L3RgtC+0LIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTUyCittc2dpZCAiIgorIkFub3RoZXIgcHJvY2VzcyBoYXMgbG9ja2VkIHRoZSBkYXRhYmFzZSBmb3Igd3JpdGluZywgYW5kIG1pZ2h0IGN1cnJlbnRseSBiZVxuIgorIm1vZGlmeWluZyBpdCwgc29tZSBvZiB0aGUgZm9sbG93aW5nIHByb2JsZW1zIG1pZ2h0IGp1c3QgYmUgZHVlIHRvIHRoYXQuXG4iCittc2dzdHIgIiIKKyLQlNGA0YPQs9C+0Lkg0L/RgNC+0YbQtdGB0YEg0LfQsNCx0LvQvtC60LjRgNC+0LLQsNC7INCx0LDQt9GDINC90LAg0LfQsNC/0LjRgdGMLCDQuCwg0LLQvtC30LzQvtC20L3Qviwg0LjQt9C80LXQvdGP0LXRglxuIgorItC10ZEsINC40Lct0LfQsCDRjdGC0L7Qs9C+INC80L7Qs9GD0YIg0LLQvtC30L3QuNC60L3Rg9GC0Ywg0L/RgNC+0LHQu9C10LzRiy5cbiIKKworIzogc3JjL2VucXVpcnkuYzoxOTEKKyMsIGZ1enp5CisjfCBtc2dpZCAiPHVua25vd24+IgorbXNnY3R4dCAic2VjdGlvbiIKK21zZ2lkICI8dW5rbm93bj4iCittc2dzdHIgIjzQvdC10LjQt9Cy0LXRgdGC0LXQvT4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MjUxCisjLCBjLWZvcm1hdAorbXNnaWQgIiAlZCBpbiAlczogIgorbXNnc3RyICIgJWQg0L/QsNC60LXRgtC+0LIg0LjQtyDRgNCw0LfQtNC10LvQsCAlczogIgorCisjOiBzcmMvZW5xdWlyeS5jOjI2NgorIywgYy1mb3JtYXQKK21zZ2lkICIgJWQgcGFja2FnZSwgZnJvbSB0aGUgZm9sbG93aW5nIHNlY3Rpb246IgorbXNnaWRfcGx1cmFsICIgJWQgcGFja2FnZXMsIGZyb20gdGhlIGZvbGxvd2luZyBzZWN0aW9uczoiCittc2dzdHJbMF0gIiAlZCDQv9Cw0LrQtdGCINC40Lcg0YHQu9C10LTRg9GO0YnQtdCz0L4g0YDQsNC30LTQtdC70LA6IgorbXNnc3RyWzFdICIgJWQg0L/QsNC60LXRgtCwINC40Lcg0YHQu9C10LTRg9GO0YnQuNGFINGA0LDQt9C00LXQu9C+0LI6IgorbXNnc3RyWzJdICIgJWQg0L/QsNC60LXRgtC+0LIg0LjQtyDRgdC70LXQtNGD0Y7RidC40YUg0YDQsNC30LTQtdC70L7QsjoiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzA1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJWZXJzaW9uIG9mIGRwa2cgd2l0aCB3b3JraW5nICVzIHN1cHBvcnQgbm90IHlldCBjb25maWd1cmVkLlxuIgorIiBQbGVhc2UgdXNlICdkcGtnIC0tY29uZmlndXJlIGRwa2cnLCBhbmQgdGhlbiB0cnkgYWdhaW4uXG4iCittc2dzdHIgIiIKKyLQktC10YDRgdC40Y8gZHBrZyDRgSDRgNCw0LHQvtGC0LDRjtGJ0LXQuSDQv9C+0LTQtNC10YDQttC60L7QuSAlcyDQtdGJ0ZEg0L3QtSDQvdCw0YHRgtGA0L7QtdC90LAuXG4iCisiINCf0L7QttCw0LvRg9C50YHRgtCwLCDQstGL0L/QvtC70L3QuNGC0LUg0LrQvtC80LDQvdC00YMgwqtkcGtnIC0tY29uZmlndXJlIGRwa2fCuywg0LAg0LfQsNGC0LXQvCDQv9C+0LLRgtC+0YDQuNGC0LVcbiIKKyLQv9C+0L/Ri9GC0LrRgy5cbiIKKworIzogc3JjL2VucXVpcnkuYzozMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZyBub3QgcmVjb3JkZWQgYXMgaW5zdGFsbGVkLCBjYW5ub3QgY2hlY2sgZm9yICVzIHN1cHBvcnQhXG4iCittc2dzdHIgIiIKKyJkcGtnINC90LUg0L7QsdC+0LfQvdCw0YfQtdC9INC60LDQuiDRg9GB0YLQsNC90L7QstC70LXQvdC90YvQuSwg0L3QtdCy0L7Qt9C80L7QttC90L4g0L/RgNC+0LLQtdGA0LjRgtGMINC/0L7QtNC00LXRgNC20LrRgyAlcyFcbiIKKworIzogc3JjL2VucXVpcnkuYzozMjEKK21zZ2lkICJQcmUtRGVwZW5kcyBmaWVsZCIKK21zZ3N0ciAi0J/QvtC70LUgUHJlLURlcGVuZHMiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzI5Cittc2dpZCAiZXBvY2giCittc2dzdHIgItGN0L/QvtGF0LAiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzM3Cittc2dpZCAibG9uZyBmaWxlbmFtZXMiCittc2dzdHIgItC00LvQuNC90L3Ri9C1INC40LzQtdC90LAg0YTQsNC50LvQvtCyIgorCisjOiBzcmMvZW5xdWlyeS5jOjM0NgorbXNnaWQgIm11bHRpcGxlIENvbmZsaWN0cyBhbmQgUmVwbGFjZXMiCittc2dzdHIgItC90LXRgdC60L7Qu9GM0LrQviBDb25mbGljdHMg0LggUmVwbGFjZXMiCisKKyM6IHNyYy9lbnF1aXJ5LmM6NDM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBjYW5ub3Qgc2VlIGhvdyB0byBzYXRpc2Z5IHByZS1kZXBlbmRlbmN5OlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisiZHBrZzog0L3QtdC/0L7QvdGP0YLQvdC+INC60LDQuiDRg9C00L7QstC70LXRgtCy0L7RgNC40YLRjCDQt9Cw0LLQuNGB0LjQvNC+0YHRgtC4INC+0YIg0L/RgNC10LTQstCw0YDQuNGC0LXQu9GM0L3QvtC5INGD0YHRgtCw0L3QvtCy0LrQuCAiCisi0LTRgNGD0LPQuNGFOlxuIgorIiAlc1xuIgorCisjOiBzcmMvZW5xdWlyeS5jOjQzNQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc2F0aXNmeSBwcmUtZGVwZW5kZW5jaWVzIGZvciAlLjI1MHMgKHdhbnRlZCBkdWUgdG8gJS4yNTBzKSIKK21zZ3N0ciAiIgorItGD0YHRgtCw0L3QvtCy0LjRgtGMINC/0LDQutC10YIgJS4yNTBzINC90LXQstC+0LfQvNC+0LbQvdC+LCDQvtC00L3QsNC60L4g0Y3RgtC+INC90LXQvtCx0YXQvtC00LjQvNC+INGB0LTQtdC70LDRgtGMINC00L4gIgorItGD0YHRgtCw0L3QvtCy0LrQuCAlLjI1MHMiCisKKyM6IHNyYy9lbnF1aXJ5LmM6NDcyCisjLCBjLWZvcm1hdAorbXNnaWQgIm9ic29sZXRlIG9wdGlvbiAnLS0lcycsIHBsZWFzZSB1c2UgJy0tJXMnIGluc3RlYWQuIgorbXNnc3RyICLRg9GB0YLQsNGA0LXQstGI0LjQuSDQv9Cw0YDQsNC80LXRgtGAIMKrLS0lc8K7LCDQstC80LXRgdGC0L4g0L3QtdCz0L4g0LjRgdC/0L7Qu9GM0LfRg9C50YLQtSDCqy0tJXPCuy4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6NTE5Cittc2dpZCAiIgorIi0tY29tcGFyZS12ZXJzaW9ucyB0YWtlcyB0aHJlZSBhcmd1bWVudHM6IDx2ZXJzaW9uPiA8cmVsYXRpb24+IDx2ZXJzaW9uPiIKK21zZ3N0ciAiIgorItC/0LDRgNCw0LzQtdGC0YAgLS1jb21wYXJlLXZlcnNpb25zINGC0YDQtdCx0YPQtdGCINC90LDQu9C40YfQuNGPINGC0YDRkdGFINCw0YDQs9GD0LzQtdC90YLQvtCyOiA80LLQtdGA0YHQuNGPPiAiCisiPNC+0YLQvdC+0YjQtdC90LjQtT4gPNCy0LXRgNGB0LjRjz4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6NTI0Cittc2dpZCAiLS1jb21wYXJlLXZlcnNpb25zIGJhZCByZWxhdGlvbiIKK21zZ3N0ciAi0LIg0LrQsNGH0LXRgdGC0LLQtSDQsNGA0LPRg9C80LXQvdGC0LAgLS1jb21wYXJlLXZlcnNpb25zINGD0LrQsNC30LDQvdC+INC90LXQtNC+0L/Rg9GB0YLQuNC80L7QtSDQvtGC0L3QvtGI0LXQvdC40LUiCisKKyM6IHNyYy9lbnF1aXJ5LmM6NTI5IHNyYy9lbnF1aXJ5LmM6NTMxIHNyYy9lbnF1aXJ5LmM6NTQwIHNyYy9lbnF1aXJ5LmM6NTQyCisjLCBjLWZvcm1hdAorbXNnaWQgInZlcnNpb24gJyVzJyBoYXMgYmFkIHN5bnRheDogJXMiCittc2dzdHIgItCy0LXRgNGB0LjRjyDCqyVzwrsg0LjQvNC10LXRgiDQvdC10L/RgNCw0LLQuNC70YzQvdGL0Lkg0YHQuNC90YLQsNC60YHQuNGBOiAlcyIKKworIzogc3JjL2Vycm9ycy5jOjYwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogZXJyb3IgcHJvY2Vzc2luZyAlcyAoLS0lcyk6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKyIlczog0L3QtSDRg9C00LDQu9C+0YHRjCDQvtCx0YDQsNCx0L7RgtCw0YLRjCDQv9Cw0YDQsNC80LXRgtGAICVzICgtLSVzKTpcbiIKKyIgJXNcbiIKKworIzogc3JjL2Vycm9ycy5jOjY4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiZHBrZzogZmFpbGVkIHRvIGFsbG9jYXRlIG1lbW9yeSBmb3IgbmV3IGVudHJ5IGluIGxpc3Qgb2YgZmFpbGVkIHBhY2thZ2VzLiIKK21zZ2lkICIiCisiJXM6IGZhaWxlZCB0byBhbGxvY2F0ZSBtZW1vcnkgZm9yIG5ldyBlbnRyeSBpbiBsaXN0IG9mIGZhaWxlZCBwYWNrYWdlczogJXMiCittc2dzdHIgIiIKKyJkcGtnOiDQvdC1INGD0LTQsNC70L7RgdGMINCy0YvQtNC10LvQuNGC0Ywg0L/QsNC80Y/RgtGMINC00LvRjyDQvdC+0LLQvtCz0L4g0Y3Qu9C10LzQtdC90YLQsCDRgdC/0LjRgdC60LAg0L3QtdGD0LTQsNGH0L3QviAiCisi0YPRgdGC0LDQvdC+0LLQu9C10L3QvdGL0YUg0L/QsNC60LXRgtC+0LIuIgorCisjOiBzcmMvZXJyb3JzLmM6NzkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImRwa2c6IHRvbyBtYW55IGVycm9ycywgc3RvcHBpbmdcbiIKK21zZ2lkICIlczogdG9vIG1hbnkgZXJyb3JzLCBzdG9wcGluZ1xuIgorbXNnc3RyICJkcGtnOiDRgdC70LjRiNC60L7QvCDQvNC90L7Qs9C+INC+0YjQuNCx0L7QuiAtLSDQt9Cw0LLQtdGA0YjQtdC90LjQtSDRgNCw0LHQvtGC0YtcbiIKKworIzogc3JjL2Vycm9ycy5jOjg3Cittc2dpZCAiRXJyb3JzIHdlcmUgZW5jb3VudGVyZWQgd2hpbGUgcHJvY2Vzc2luZzpcbiIKK21zZ3N0ciAi0J/RgNC4INC+0LHRgNCw0LHQvtGC0LrQtSDRgdC70LXQtNGD0Y7RidC40YUg0L/QsNC60LXRgtC+0LIg0L/RgNC+0LjQt9C+0YjQu9C4INC+0YjQuNCx0LrQuDpcbiIKKworIzogc3JjL2Vycm9ycy5jOjk0Cittc2dpZCAiUHJvY2Vzc2luZyB3YXMgaGFsdGVkIGJlY2F1c2UgdGhlcmUgd2VyZSB0b28gbWFueSBlcnJvcnMuXG4iCittc2dzdHIgItCe0LHRgNCw0LHQvtGC0LrQsCDQvtGB0YLQsNC90L7QstC70LXQvdCwINC40Lct0LfQsCDRgdC70LjRiNC60L7QvCDQsdC+0LvRjNGI0L7Qs9C+INC60L7Qu9C40YfQtdGB0YLQstCwINC+0YjQuNCx0L7Qui5cbiIKKworIzogc3JjL2Vycm9ycy5jOjEwNQorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlICVzIHdhcyBvbiBob2xkLCBwcm9jZXNzaW5nIGl0IGFueXdheSBhcyB5b3UgcmVxdWVzdGVkXG4iCittc2dzdHIgIiIKKyLQn9Cw0LrQtdGCICVzINC30LDRhNC40LrRgdC40YDQvtCy0LDQvSwg0L3QviDQv9C+INCy0LDRiNC10LzRgyDRg9C60LDQt9Cw0L3QuNGOINCy0YHRkSDRgNCw0LLQvdC+INC+0LHRgNCw0LHQsNGC0YvQstCw0LXRgtGB0Y9cbiIKKworIzogc3JjL2Vycm9ycy5jOjEwOQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiUGFja2FnZSAlcyBpcyBvbiBob2xkLCBub3QgdG91Y2hpbmcgaXQuICBVc2UgLS1mb3JjZS1ob2xkIHRvIG92ZXJyaWRlLlxuIgorbXNnc3RyICIiCisi0J/QsNC60LXRgiAlcyDQt9Cw0YTQuNC60YHQuNGA0L7QstCw0L0g0Lgg0L3QtSDQsdGD0LTQtdGCINC+0LHRgNCw0LHQvtGC0LDQvS4g0JXRgdC70Lgg0LLQsNGBINGN0YLQviDQvdC1INGD0YHRgtGA0LDQuNCy0LDQtdGCLCAiCisi0LjRgdC/0L7Qu9GM0LfRg9C50YLQtSAtLWZvcmNlLWhvbGQuXG4iCisKKyM6IHNyYy9lcnJvcnMuYzoxMTkKK21zZ2lkICJvdmVycmlkaW5nIHByb2JsZW0gYmVjYXVzZSAtLWZvcmNlIGVuYWJsZWQ6IgorbXNnc3RyICLQv9GA0L7QsdC70LXQvNCwINC40LPQvdC+0YDQuNGA0YPQtdGC0YHRjywg0L/QvtGB0LrQvtC70YzQutGDINC30LDQtNCw0L0g0L/QsNGA0LDQvNC10YLRgCAtLWZvcmNlOiIKKworIzogc3JjL2ZpbGVzZGIuYzozMDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlIGAlLjI1MHMnIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC+0YLQutGA0YvRgtGMINGB0L/QuNGB0L7QuiDRhNCw0LnQu9C+0LIg0L/QsNC60LXRgtCwIMKrJS4yNTBzwrsiCisKKyM6IHNyYy9maWxlc2RiLmM6MzExCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcycgbWlzc2luZywgYXNzdW1pbmcgcGFja2FnZSBoYXMgbm8gZmlsZXMgIgorImN1cnJlbnRseSBpbnN0YWxsZWQuIgorbXNnc3RyICIiCisi0YHQv9C40YHQvtC6INGE0LDQudC70L7QsiDQv9Cw0LrQtdGC0LAgwqslLjI1MHPCuyDQvtGC0YHRg9GC0YHRgtCy0YPQtdGCLCDQv9GA0LXQtNC/0L7Qu9Cw0LPQsNC10LwsINGH0YLQviDQvdCwINC00LDQvdC90YvQuSAiCisi0LzQvtC80LXQvdGCINGDINC/0LDQutC10YLQsCDQvdC10YIg0YPRgdGC0LDQvdC+0LLQu9C10L3QvdGL0YUg0YTQsNC50LvQvtCyLiIKKworIzogc3JjL2ZpbGVzZGIuYzozMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICclLjI1MHMnIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC+0YLQutGA0YvRgtGMINGB0L/QuNGB0L7QuiDRhNCw0LnQu9C+0LIg0L/QsNC60LXRgtCwIMKrJS4yNTBzwrsiCisKKyM6IHNyYy9maWxlc2RiLmM6MzMwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlcyBsaXN0IGZvciBwYWNrYWdlIGAlLjI1MHMnIgorbXNnaWQgInJlYWRpbmcgZmlsZXMgbGlzdCBmb3IgcGFja2FnZSAnJS4yNTBzJyIKK21zZ3N0ciAi0YHQv9C40YHQvtC6INGE0LDQudC70L7QsiDQv9Cw0LrQtdGC0LAgwqslLjI1MHPCuyIKKworIzogc3JjL2ZpbGVzZGIuYzozMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICclLjI1MHMnIGlzIG1pc3NpbmcgZmluYWwgbmV3bGluZSIKK21zZ3N0ciAiIgorItCyINGB0L/QuNGB0LrQtSDRhNCw0LnQu9C+0LIg0L/QsNC60LXRgtCwIMKrJS4yNTBzwrsg0L7RgtGB0YPRgtGB0YLQstGD0LXRgiDQt9Cw0LLQtdGA0YjQsNGO0YnQuNC5INGB0LjQvNCy0L7QuyDQvdC+0LLQvtC5INGB0YLRgNC+0LrQuCIKKworIzogc3JjL2ZpbGVzZGIuYzozNDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlIGAlLjI1MHMnIGNvbnRhaW5zIGVtcHR5IGZpbGVuYW1lIgorbXNnc3RyICLRgdC/0LjRgdC+0Log0YTQsNC50LvQvtCyINC/0LDQutC10YLQsCDCqyUuMjUwc8K7INGB0L7QtNC10YDQttC40YIg0L/Rg9GB0YLQvtC1INC40LzRjyDRhNCw0LnQu9CwIgorCisjOiBzcmMvZmlsZXNkYi5jOjM1MgorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSBgJS4yNTBzJyIKK21zZ3N0ciAi0L7RiNC40LHQutCwINC/0YDQuCDQt9Cw0LrRgNGL0YLQuNC4INGB0L/QuNGB0LrQsCDRhNCw0LnQu9C+0LIg0L/QsNC60LXRgtCwIMKrJS4yNTBzwrsiCisKKyM6IHNyYy9maWxlc2RiLmM6NDYyCittc2dpZCAiKFJlYWRpbmcgZGF0YWJhc2UgLi4uICIKK21zZ3N0ciAiKNCn0YLQtdC90LjQtSDQsdCw0LfRiyDQtNCw0L3QvdGL0YUgLi4uICIKKworIzogc3JjL2ZpbGVzZGIuYzo0ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJWQgZmlsZSBvciBkaXJlY3RvcnkgY3VycmVudGx5IGluc3RhbGxlZC4pXG4iCittc2dpZF9wbHVyYWwgIiVkIGZpbGVzIGFuZCBkaXJlY3RvcmllcyBjdXJyZW50bHkgaW5zdGFsbGVkLilcbiIKK21zZ3N0clswXSAi0L3QsCDQtNCw0L3QvdGL0Lkg0LzQvtC80LXQvdGCINGD0YHRgtCw0L3QvtCy0LvQtdC9ICVkINGE0LDQudC7INC4INC60LDRgtCw0LvQvtCzLilcbiIKK21zZ3N0clsxXSAi0L3QsCDQtNCw0L3QvdGL0Lkg0LzQvtC80LXQvdGCINGD0YHRgtCw0L3QvtCy0LvQtdC90L4gJWQg0YTQsNC50LvQsCDQuCDQutCw0YLQsNC70L7Qs9CwLilcbiIKK21zZ3N0clsyXSAi0L3QsCDQtNCw0L3QvdGL0Lkg0LzQvtC80LXQvdGCINGD0YHRgtCw0L3QvtCy0LvQtdC90L4gJWQg0YTQsNC50LvQvtCyINC4INC60LDRgtCw0LvQvtCz0L7Qsi4pXG4iCisKKyM6IHNyYy9maWxlc2RiLmM6NTE2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0YHQvtC30LTQsNGC0Ywg0L7QsdC90L7QstC70ZHQvdC90YvQuSDRgdC/0LjRgdC+0Log0YTQsNC50LvQvtCyINC/0LDQutC10YLQsCAlcyIKKworIzogc3JjL2ZpbGVzZGIuYzo1MjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIHRvIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC30LDQv9C40YHQsNGC0Ywg0L7QsdC90L7QstC70ZHQvdC90YvQuSDRgdC/0LjRgdC+0Log0YTQsNC50LvQvtCyINC/0LDQutC10YLQsCAlcyIKKworIzogc3JjL2ZpbGVzZGIuYzo1MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZsdXNoIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGB0LHRgNC+0YHQuNGC0Ywg0L3QsCDQtNC40YHQuiDQvtCx0L3QvtCy0LvRkdC90L3Ri9C5INGB0L/QuNGB0L7QuiDRhNCw0LnQu9C+0LIg0L/QsNC60LXRgtCwICVzIgorCisjOiBzcmMvZmlsZXNkYi5jOjUzMAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gc3luYyB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRgdC40L3RhdGA0L7QvdC40LfQuNGA0L7QstCw0YLRjCDQvtCx0L3QvtCy0LvRkdC90L3Ri9C5INGB0L/QuNGB0L7QuiDRhNCw0LnQu9C+0LIg0L/QsNC60LXRgtCwICVzIgorCisjOiBzcmMvZmlsZXNkYi5jOjUzMworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2xvc2UgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LfQsNC60YDRi9GC0Ywg0L7QsdC90L7QstC70ZHQvdC90YvQuSDRgdC/0LjRgdC+0Log0YTQsNC50LvQvtCyINC/0LDQutC10YLQsCAlcyIKKworIzogc3JjL2ZpbGVzZGIuYzo1MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGluc3RhbGwgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0YPRgdGC0LDQvdC+0LLQuNGC0Ywg0L7QsdC90L7QstC70ZHQvdC90YvQuSDRgdC/0LjRgdC+0Log0YTQsNC50LvQvtCyINC/0LDQutC10YLQsCAlcyIKKworIzogc3JjL2hlbHAuYzo0OAorbXNnaWQgIm5vdCBpbnN0YWxsZWQiCittc2dzdHIgItC90LUg0YPRgdGC0LDQvdC+0LLQu9C10L0iCisKKyM6IHNyYy9oZWxwLmM6NDkKK21zZ2lkICJub3QgaW5zdGFsbGVkIGJ1dCBjb25maWdzIHJlbWFpbiIKK21zZ3N0ciAi0L3QtSDRg9GB0YLQsNC90L7QstC70LXQvSwg0L3QviDQvtGB0YLQsNC70LjRgdGMINGE0LDQudC70Ysg0L3QsNGB0YLRgNC+0LnQutC4IgorCisjOiBzcmMvaGVscC5jOjUwCittc2dpZCAiYnJva2VuIGR1ZSB0byBmYWlsZWQgcmVtb3ZhbCBvciBpbnN0YWxsYXRpb24iCittc2dzdHIgItC90LXRgNCw0LHQvtGC0L7RgdC/0L7RgdC+0LHQtdC9INCyINGA0LXQt9GD0LvRjNGC0LDRgtC1INC90LXRg9C00LDRh9C90L7Qs9C+INGD0LTQsNC70LXQvdC40Y8g0LjQu9C4INGD0YHRgtCw0L3QvtCy0LrQuCIKKworIzogc3JjL2hlbHAuYzo1MQorbXNnaWQgInVucGFja2VkIGJ1dCBub3QgY29uZmlndXJlZCIKK21zZ3N0ciAi0YDQsNGB0L/QsNC60L7QstCw0L0sINC90L4g0L3QtSDQvdCw0YHRgtGA0L7QtdC9IgorCisjOiBzcmMvaGVscC5jOjUyCittc2dpZCAiYnJva2VuIGR1ZSB0byBwb3N0aW5zdCBmYWlsdXJlIgorbXNnc3RyICLQvdC10YDQsNCx0L7RgtC+0YHQv9C+0YHQvtCx0LXQvSDQsiDRgNC10LfRg9C70YzRgtCw0YLQtSDQvtGI0LjQsdC60Lgg0LIgcG9zdGluc3QiCisKKyM6IHNyYy9oZWxwLmM6NTMKK21zZ2lkICJhd2FpdGluZyB0cmlnZ2VyIHByb2Nlc3NpbmcgYnkgYW5vdGhlciBwYWNrYWdlIgorbXNnc3RyICLQvtC20LjQtNCw0LXRgiDQvtCx0YDQsNCx0L7RgtC60Lgg0YLRgNC40LPQs9C10YDQsCDQtNGA0YPQs9C40Lwg0L/QsNC60LXRgtC+0LwiCisKKyM6IHNyYy9oZWxwLmM6NTQKK21zZ2lkICJ0cmlnZ2VyZWQiCittc2dzdHIgItGBINGC0YDQuNCz0LPQtdGA0L7QvCIKKworIzogc3JjL2hlbHAuYzo1NQorbXNnaWQgImluc3RhbGxlZCIKK21zZ3N0ciAi0YPRgdGC0LDQvdC+0LLQu9C10L0iCisKKyM6IHNyYy9oZWxwLmM6MTA3CisjLCBmdXp6eQorI3wgbXNnaWQgImVycm9yOiBQQVRIIGlzIG5vdCBzZXQuIgorbXNnaWQgIlBBVEggaXMgbm90IHNldC4iCittc2dzdHIgItC+0YjQuNCx0LrQsDog0L3QtSDQt9Cw0LTQsNC90LAg0L/QtdGA0LXQvNC10L3QvdCw0Y8g0L7QutGA0YPQttC10L3QuNGPIFBBVEguIgorCisjOiBzcmMvaGVscC5jOjEyOQorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIG5vdCBmb3VuZCBpbiBQQVRIIG9yIG5vdCBleGVjdXRhYmxlLiIKK21zZ3N0ciAiIgorIsKrJXPCuyDQvtGC0YHRg9GC0YHRgtCy0YPQtdGCINCyINC60LDRgtCw0LvQvtCz0LDRhSwg0L/QtdGA0LXRh9C40YHQu9C10L3QvdGL0YUg0LIgUEFUSCwg0LjQu9C4INC90LUg0Y/QstC70Y/QtdGC0YHRjyAiCisi0LjRgdC/0L7Qu9C90Y/QtdC80YvQvC4iCisKKyM6IHNyYy9oZWxwLmM6MTM4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICInJXMnIG5vdCBmb3VuZCBpbiBQQVRIIG9yIG5vdCBleGVjdXRhYmxlLiIKK21zZ2lkICIiCisiJWQgZXhwZWN0ZWQgcHJvZ3JhbSBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS5cbiIKKyIlcyIKK21zZ2lkX3BsdXJhbCAiIgorIiVkIGV4cGVjdGVkIHByb2dyYW1zIG5vdCBmb3VuZCBpbiBQQVRIIG9yIG5vdCBleGVjdXRhYmxlLlxuIgorIiVzIgorbXNnc3RyWzBdICIiCisiwqslc8K7INC+0YLRgdGD0YLRgdGC0LLRg9C10YIg0LIg0LrQsNGC0LDQu9C+0LPQsNGFLCDQv9C10YDQtdGH0LjRgdC70LXQvdC90YvRhSDQsiBQQVRILCDQuNC70Lgg0L3QtSDRj9Cy0LvRj9C10YLRgdGPICIKKyLQuNGB0L/QvtC70L3Rj9C10LzRi9C8LiIKK21zZ3N0clsxXSAiIgorIsKrJXPCuyDQvtGC0YHRg9GC0YHRgtCy0YPQtdGCINCyINC60LDRgtCw0LvQvtCz0LDRhSwg0L/QtdGA0LXRh9C40YHQu9C10L3QvdGL0YUg0LIgUEFUSCwg0LjQu9C4INC90LUg0Y/QstC70Y/QtdGC0YHRjyAiCisi0LjRgdC/0L7Qu9C90Y/QtdC80YvQvC4iCittc2dzdHJbMl0gIiIKKyLCqyVzwrsg0L7RgtGB0YPRgtGB0YLQstGD0LXRgiDQsiDQutCw0YLQsNC70L7Qs9Cw0YUsINC/0LXRgNC10YfQuNGB0LvQtdC90L3Ri9GFINCyIFBBVEgsINC40LvQuCDQvdC1INGP0LLQu9GP0LXRgtGB0Y8gIgorItC40YHQv9C+0LvQvdGP0LXQvNGL0LwuIgorCisjOiBzcmMvaGVscC5jOjE0MQorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiJWQgZXhwZWN0ZWQgcHJvZ3JhbSBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS5cbiIKKyN8ICJOQjogcm9vdCdzIFBBVEggc2hvdWxkIHVzdWFsbHkgY29udGFpbiAvdXNyL2xvY2FsL3NiaW4sIC91c3Ivc2JpbiBhbmQgLyIKKyN8ICJzYmluLiIKKyN8IG1zZ2lkX3BsdXJhbCAiIgorI3wgIiVkIGV4cGVjdGVkIHByb2dyYW1zIG5vdCBmb3VuZCBpbiBQQVRIIG9yIG5vdCBleGVjdXRhYmxlLlxuIgorI3wgIk5COiByb290J3MgUEFUSCBzaG91bGQgdXN1YWxseSBjb250YWluIC91c3IvbG9jYWwvc2JpbiwgL3Vzci9zYmluIGFuZCAvIgorI3wgInNiaW4uIgorbXNnaWQgIiIKKyJOb3RlOiByb290J3MgUEFUSCBzaG91bGQgdXN1YWxseSBjb250YWluIC91c3IvbG9jYWwvc2JpbiwgL3Vzci9zYmluIGFuZCAvIgorInNiaW4uIgorbXNnc3RyICIiCisi0JIg0LrQsNGC0LDQu9C+0LPQsNGFLCDQv9C10YDQtdGH0LjRgdC70LXQvdC90YvRhSDQsiBQQVRILCDQvtGC0YHRg9GC0YHRgtCy0YPQtdGCINC40LvQuCDQvdC1INGP0LLQu9GP0LXRgtGB0Y9cbiIKKyLQuNGB0L/QvtC70L3Rj9C10LzQvtC5ICVkINC90LXQvtCx0YXQvtC00LjQvNCw0Y8g0L/RgNC+0LPRgNCw0LzQvNCwLlxuIgorIk5COiDQkiBQQVRIINGB0YPQv9C10YDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y8g0L7QsdGL0YfQvdC+INC00L7Qu9C20L3RiyDQv9GA0LjRgdGD0YLRgdGC0LLQvtCy0LDRgtGMIC91c3IvbG9jYWwvc2JpbixcbiIKKyIvdXNyL3NiaW4g0LggL3NiaW4uIgorCisjOiBzcmMvaGVscC5jOjE4OAorbXNnaWQgImFkbWluZGlyIG11c3QgYmUgaW5zaWRlIGluc3RkaXIgZm9yIGRwa2cgdG8gd29yayBwcm9wZXJseSIKK21zZ3N0ciAiIgorCisjOiBzcmMvaGVscC5jOjE5MCBzcmMvbWFpbi5jOjc0NworIywgZnV6enkKKyN8IG1zZ2lkICJ1bmFibGUgdG8gc2V0ZW52IGZvciBtYWludGFpbmVyIHNjcmlwdCIKK21zZ2lkICJ1bmFibGUgdG8gc2V0ZW52IGZvciBzdWJwcm9jZXNzZXMiCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LLRi9C/0L7Qu9C90LjRgtGMIHNldGVudiDQtNC70Y8g0YHRhtC10L3QsNGA0LjRjyDRgdC+0L/RgNC+0LLQvtC20LTQsNGO0YnQtdCz0L4iCisKKyM6IHNyYy9oZWxwLmM6MTkyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjaHJvb3QgdG8gYCUuMjUwcyciCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LLRi9C/0L7Qu9C90LjRgtGMIGNocm9vdCDQsiDCqyUuMjUwc8K7IgorCisjOiBzcmMvaGVscC5jOjE5NCBkcGtnLWRlYi9idWlsZC5jOjQ1NSBkcGtnLWRlYi9idWlsZC5jOjQ1NworIzogZHBrZy1kZWIvYnVpbGQuYzo1MzYgZHBrZy1kZWIvYnVpbGQuYzo1NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIGAlLjI1NXMnIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC/0LXRgNC10LnRgtC4INCyINC60LDRgtCw0LvQvtCzIMKrJS4yNTVzwrsiCisKKyM6IHNyYy9oZWxwLmM6MjU2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgZXhlY3V0ZSBwZXJtaXNzaW9ucyBvbiBgJS4yNTBzJyIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRgdC00LXQu9Cw0YLRjCDRhNCw0LnQuyDCqyUuMjUwc8K7INC40YHQv9C+0LvQvdGP0LXQvNGL0LwiCisKKyM6IHNyYy9oZWxwLmM6Mjc2Cittc2dpZCAidW5hYmxlIHRvIHNldGVudiBmb3IgbWFpbnRhaW5lciBzY3JpcHQiCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LLRi9C/0L7Qu9C90LjRgtGMIHNldGVudiDQtNC70Y8g0YHRhtC10L3QsNGA0LjRjyDRgdC+0L/RgNC+0LLQvtC20LTQsNGO0YnQtdCz0L4iCisKKyM6IHNyYy9oZWxwLmM6MzAwCisjLCBjLWZvcm1hdAorbXNnaWQgImluc3RhbGxlZCAlcyBzY3JpcHQiCittc2dzdHIgItGD0YHRgtCw0L3QvtCy0LvQtdC9INGB0YbQtdC90LDRgNC40LkgJXMiCisKKyM6IHNyYy9oZWxwLmM6MzEzIHNyYy9oZWxwLmM6MzgyIHNyYy9oZWxwLmM6NDQxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0ICVzIGAlLjI1MHMnIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC/0L7Qu9GD0YfQuNGC0Ywg0LjQvdGE0L7RgNC80LDRhtC40Y4g0L4gJXMg0LIgwqslLjI1MHPCuyIKKworIzogc3JjL2hlbHAuYzozNjggc3JjL2hlbHAuYzo0MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAibmV3ICVzIHNjcmlwdCIKK21zZ3N0ciAi0L3QvtCy0YvQuSDRgdGG0LXQvdCw0YDQuNC5ICVzIgorCisjOiBzcmMvaGVscC5jOjQwMgorIywgYy1mb3JtYXQKK21zZ2lkICJvbGQgJXMgc2NyaXB0IgorbXNnc3RyICLRgdGC0LDRgNGL0Lkg0YHRhtC10L3QsNGA0LjQuSAlcyIKKworIzogc3JjL2hlbHAuYzo0MTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgJXMgJyUuMjUwcyc6ICVzIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC/0L7Qu9GD0YfQuNGC0Ywg0LjQvdGE0L7RgNC80LDRhtC40Y4g0L4gJXMg0LIgwqslLjI1MHPCuzogJXMiCisKKyM6IHNyYy9oZWxwLmM6NDI1CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2cgLSB0cnlpbmcgc2NyaXB0IGZyb20gdGhlIG5ldyBwYWNrYWdlIGluc3RlYWQgLi4uXG4iCittc2dzdHIgImRwa2c6INC/0L7Qv9GL0YLQutCwINC40YHQv9C+0LvRjNC30L7QstCw0YLRjCDRgdGG0LXQvdCw0YDQuNC5INC40Lcg0L3QvtCy0L7Qs9C+INC/0LDQutC10YLQsCAuLi5cbiIKKworIzogc3JjL2hlbHAuYzo0MzkKK21zZ2lkICJ0aGVyZSBpcyBubyBzY3JpcHQgaW4gdGhlIG5ldyB2ZXJzaW9uIG9mIHRoZSBwYWNrYWdlIC0gZ2l2aW5nIHVwIgorbXNnc3RyICLQsiDQvdC+0LLQvtC5INCy0LXRgNGB0LjQuCDQv9Cw0LrQtdGC0LAg0L3QtdGCINGN0YLQvtCz0L4g0YHRhtC10L3QsNGA0LjRjywg0L7RgtC60LDQtyIKKworIzogc3JjL2hlbHAuYzo0NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogLi4uIGl0IGxvb2tzIGxpa2UgdGhhdCB3ZW50IE9LLlxuIgorbXNnc3RyICJkcGtnOiAuLi4g0L/QvtGF0L7QttC1INCy0YHRkSDQvtCx0L7RiNC70L7RgdGMLlxuIgorCisjOiBzcmMvaGVscC5jOjYxNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2VjdXJlbHkgcmVtb3ZlICclLjI1NXMnIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINCx0LXQt9C+0L/QsNGB0L3QviDRg9C00LDQu9C40YLRjCDCqyUuMjU1c8K7IgorCisjOiBzcmMvaGVscC5jOjYyMSBkcGtnLWRlYi9pbmZvLmM6NjUgZHBrZy1kZWIvaW5mby5jOjY3Cittc2dpZCAicm0gY29tbWFuZCBmb3IgY2xlYW51cCIKK21zZ3N0ciAiIgorCisjOiBzcmMvaW5mb2RiLmM6NTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoZWNrIGV4aXN0ZW5jZSBvZiBgJS4yNTBzJyIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQv9GA0L7QstC10YDQuNGC0Ywg0YHRg9GJ0LXRgdGC0LLQvtCy0LDQvdC40LUg0YTQsNC50LvQsCDCqyUuMjUwc8K7IgorCisjOiBzcmMvaW5mb2RiLmM6NzAKK21zZ2lkICJjYW5ub3QgcmVhZCBpbmZvIGRpcmVjdG9yeSIKK21zZ3N0ciAi0L7RiNC40LHQutCwINGH0YLQtdC90LjRjyDQuNC90YTQvtGA0LzQsNGG0LjQvtC90L3QvtCz0L4g0LrQsNGC0LDQu9C+0LPQsCIKKworIzogc3JjL21haW4uYzo2MAorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIG1hbmFnZW1lbnQgcHJvZ3JhbSB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICLQodC40YHRgtC10LzQsCDRg9C/0YDQsNCy0LvQtdC90LjRjyDQv9Cw0LrQtdGC0LDQvNC4IERlYmlhbiDCqyVzwrssINCy0LXRgNGB0LjRjyAlcy5cbiIKKworIzogc3JjL21haW4uYzo4NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtaXwtLWluc3RhbGwgICAgICAgPC5kZWIgZmlsZSBuYW1lPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyZWN0b3J5PiAuLi5cbiIKKyIgIC0tdW5wYWNrICAgICAgICAgICA8LmRlYiBmaWxlIG5hbWU+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXJlY3Rvcnk+IC4uLlxuIgorIiAgLUF8LS1yZWNvcmQtYXZhaWwgIDwuZGViIGZpbGUgbmFtZT4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRpcmVjdG9yeT4gLi4uXG4iCisiICAtLWNvbmZpZ3VyZSAgICAgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLS10cmlnZ2Vycy1vbmx5ICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC1yfC0tcmVtb3ZlICAgICAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtUHwtLXB1cmdlICAgICAgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLS1nZXQtc2VsZWN0aW9ucyBbPHBhdHRlcm4+IC4uLl0gR2V0IGxpc3Qgb2Ygc2VsZWN0aW9ucyB0byBzdGRvdXQuXG4iCisiICAtLXNldC1zZWxlY3Rpb25zICAgICAgICAgICAgICAgICBTZXQgcGFja2FnZSBzZWxlY3Rpb25zIGZyb20gc3RkaW4uXG4iCisiICAtLWNsZWFyLXNlbGVjdGlvbnMgICAgICAgICAgICAgICBEZXNlbGVjdCBldmVyeSBub24tZXNzZW50aWFsIHBhY2thZ2UuXG4iCisiICAtLXVwZGF0ZS1hdmFpbCA8UGFja2FnZXMtZmlsZT4gICBSZXBsYWNlIGF2YWlsYWJsZSBwYWNrYWdlcyBpbmZvLlxuIgorIiAgLS1tZXJnZS1hdmFpbCA8UGFja2FnZXMtZmlsZT4gICAgTWVyZ2Ugd2l0aCBpbmZvIGZyb20gZmlsZS5cbiIKKyIgIC0tY2xlYXItYXZhaWwgICAgICAgICAgICAgICAgICAgIEVyYXNlIGV4aXN0aW5nIGF2YWlsYWJsZSBpbmZvLlxuIgorIiAgLS1mb3JnZXQtb2xkLXVuYXZhaWwgICAgICAgICAgICAgRm9yZ2V0IHVuaW5zdGFsbGVkIHVuYXZhaWxhYmxlIHBrZ3MuXG4iCisiICAtc3wtLXN0YXR1cyA8cGFja2FnZT4gLi4uICAgICAgICBEaXNwbGF5IHBhY2thZ2Ugc3RhdHVzIGRldGFpbHMuXG4iCisiICAtcHwtLXByaW50LWF2YWlsIDxwYWNrYWdlPiAuLi4gICBEaXNwbGF5IGF2YWlsYWJsZSB2ZXJzaW9uIGRldGFpbHMuXG4iCisiICAtTHwtLWxpc3RmaWxlcyA8cGFja2FnZT4gLi4uICAgICBMaXN0IGZpbGVzIGBvd25lZCcgYnkgcGFja2FnZShzKS5cbiIKKyIgIC1sfC0tbGlzdCBbPHBhdHRlcm4+IC4uLl0gICAgICAgIExpc3QgcGFja2FnZXMgY29uY2lzZWx5LlxuIgorIiAgLVN8LS1zZWFyY2ggPHBhdHRlcm4+IC4uLiAgICAgICAgRmluZCBwYWNrYWdlKHMpIG93bmluZyBmaWxlKHMpLlxuIgorIiAgLUN8LS1hdWRpdCAgICAgICAgICAgICAgICAgICAgICAgQ2hlY2sgZm9yIGJyb2tlbiBwYWNrYWdlKHMpLlxuIgorIiAgLS1wcmludC1hcmNoaXRlY3R1cmUgICAgICAgICAgICAgUHJpbnQgZHBrZyBhcmNoaXRlY3R1cmUuXG4iCisiICAtLWNvbXBhcmUtdmVyc2lvbnMgPGE+IDxvcD4gPGI+ICBDb21wYXJlIHZlcnNpb24gbnVtYmVycyAtIHNlZSBiZWxvdy5cbiIKKyIgIC0tZm9yY2UtaGVscCAgICAgICAgICAgICAgICAgICAgIFNob3cgaGVscCBvbiBmb3JjaW5nLlxuIgorIiAgLURofC0tZGVidWc9aGVscCAgICAgICAgICAgICAgICAgU2hvdyBoZWxwIG9uIGRlYnVnZ2luZy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorItCa0L7QvNCw0L3QtNGLOlxuIgorIiAgLWl8LS1pbnN0YWxsICAgICAgPNC40LzRjyDRhNCw0LnQu9CwIC5kZWI+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDzQutCw0YLQsNC70L7Qsz4gLi4uXG4iCisiICAtLXVucGFjayAgICAgICAgICA80LjQvNGPINGE0LDQudC70LAgLmRlYj4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPNC60LDRgtCw0LvQvtCzPiAuLi5cbiIKKyIgIC1BfC0tcmVjb3JkLWF2YWlsIDzQuNC80Y8g0YTQsNC50LvQsCAuZGViPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA80LrQsNGC0LDQu9C+0LM+IC4uLlxuIgorIiAgLS1jb25maWd1cmUgICAgICAgPNC40LzRjyDQv9Cw0LrQtdGC0LA+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLS10cmlnZ2Vycy1vbmx5ICAgPNC40LzRjyDQv9Cw0LrQtdGC0LA+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLXJ8LS1yZW1vdmUgfCAgICAgPNC40LzRjyDQv9Cw0LrQtdGC0LA+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLVB8LS1wdXJnZSAgICAgICAgPNC40LzRjyDQv9Cw0LrQtdGC0LA+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLS1nZXQtc2VsZWN0aW9ucyBbPNGI0LDQsdC70L7QvT4gLi4uXSAgICAg0JLRi9Cy0LXRgdGC0Lgg0YHQv9C40YHQvtC6INCyINGB0YLQsNC90LTQsNGA0YLQvdGL0Lkg0L/QvtGC0L7QulxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg0LLRi9Cy0L7QtNCwINGB0L/QuNGB0L7QuiDQstGL0LHRgNCw0L3QvdGL0YUg0L/QsNC60LXRgtC+0LJcbiIKKyIgIC0tc2V0LXNlbGVjdGlvbnMgICAgICAgICAgICAgICAgICAgINCS0YvQsdGA0LDRgtGMINC/0LDQutC10YLRiyDQsiDRgdC+0L7RgtCy0LXRgtGB0YLQstC40Lgg0YHQvlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg0YHQv9C40YHQutC+0Lwg0LjQtyDRgdGC0LDQvdC00LDRgNGC0L3QvtCz0L4g0L/QvtGC0L7QutCwINCy0LLQvtC00LBcbiIKKyIgIC0tY2xlYXItc2VsZWN0aW9ucyAgICAgICAgICAgICAgICAgINCe0YLQvNC10L3QuNGC0Ywg0LLRi9Cx0L7RgCDQstGB0LXRhSDQv9Cw0LrQtdGC0L7QslxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg0L/QtdGA0LLQvtC5INC90LXQvtCx0YXQvtC00LjQvNC+0YHRgtC4XG4iCisiICAtLXVwZGF0ZS1hdmFpbCA80YTQsNC50LsgUGFja2FnZXM+ICAgICAg0JfQsNC80LXQvdC40YLRjCDQuNC90YTQvtGA0LzQsNGG0LjRjiDQviDQtNC+0YHRgtGD0L/QvdGL0YVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgINC/0LDQutC10YLQsNGFINGB0L7QtNC10YDQttC40LzRi9C8INGE0LDQudC70LBcbiIKKyIgIC0tbWVyZ2UtYXZhaWwgPNGE0LDQudC7IFBhY2thZ2VzPiAgICAgICDQntCx0YrQtdC00LjQvdC40YLRjCDQuNC90YTQvtGA0LzQsNGG0LjRjiDQviDQtNC+0YHRgtGD0L/QvdGL0YVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgINC/0LDQutC10YLQsNGFINGBINGB0L7QtNC10YDQttC40LzRi9C8INGE0LDQudC70LBcbiIKKyIgIC0tY2xlYXItYXZhaWwgICAgICAgICAgICAgICAgICAgICAgINCj0LTQsNC70LjRgtGMINC40L3RhNC+0YDQvNCw0YbQuNGOINC+INC00L7RgdGC0YPQv9C90YvRhSAiCisi0L/QsNC60LXRgtCw0YVcbiIKKyIgIC0tZm9yZ2V0LW9sZC11bmF2YWlsICAgICAgICAgICAgICAgINCj0LTQsNC70LjRgtGMINC40L3RhNC+0YDQvNCw0YbQuNGOINC+INC90LXRg9GB0YLQsNC90L7QstC70LXQvdC90YvRhVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg0L3QtdC00L7RgdGC0YPQv9C90YvRhSDQv9Cw0LrQtdGC0LDRhVxuIgorIiAgLXN8LS1zdGF0dXMgPNC40LzRjyDQv9Cw0LrQtdGC0LA+IC4uLiAgICAgICAg0JLRi9Cy0LXRgdGC0Lgg0LjQvdGE0L7RgNC80LDRhtC40Y4g0L4g0YHQvtGB0YLQvtGP0L3QuNC4INC/0LDQutC10YLQsFxuIgorIiAgLXB8LS1wcmludC1hdmFpbCA80LjQvNGPINC/0LDQutC10YLQsD4gLi4uICAg0JLRi9Cy0LXRgdGC0Lgg0LjQvdGE0L7RgNC80LDRhtC40Y4g0L4g0LTQvtGB0YLRg9C/0L3QvtC5XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDQstC10YDRgdC40Lgg0L/QsNC60LXRgtCwXG4iCisiICAtTHwtLWxpc3RmaWxlcyA80LjQvNGPINC/0LDQutC10YLQsD4gLi4uICAgICDQn9C10YDQtdGH0LjRgdC70LjRgtGMINGE0LDQudC70YssINC/0YDQuNC90LDQtNC70LXQttCw0YnQuNC1XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDQv9Cw0LrQtdGC0YMo0LDQvClcbiIKKyIgIC1sfC0tbGlzdCBbPNGI0LDQsdC70L7QvT4gLi4uXSAgICAgICAgICAgINCa0YDQsNGC0LrQviDQv9C10YDQtdGH0LjRgdC70LjRgtGMINC/0LDQutC10YLRi1xuIgorIiAgLVN8LS1zZWFyY2ggPNGI0LDQsdC70L7QvT4gLi4uICAgICAgICAgICAg0J3QsNC50YLQuCDQv9Cw0LrQtdGCKNGLKSwg0LrQvtGC0L7RgNC+0LzRgyjRi9C8KVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg0L/RgNC40L3QsNC00LvQtdC20LjRgijQsNGCKSDRhNCw0LnQuyjRiylcbiIKKyIgIC1DfC0tYXVkaXQgICAgICAgICAgICAgICAgICAgICAgICAgINCf0YDQvtCy0LXRgNC40YLRjCDQvdCw0LvQuNGH0LjQtSDRgdC70L7QvNCw0L3QvdGL0YUg0L/QsNC60LXRgtC+0LJcbiIKKyIgIC0tcHJpbnQtYXJjaGl0ZWN0dXJlICAgICAgICAgICAgICAgINCS0YvQstC10YHRgtC4INGG0LXQu9C10LLRg9GOINCw0YDRhdC40YLQtdC60YLRg9GA0YNcbiIKKyIgIC0tY29tcGFyZS12ZXJzaW9ucyA8YT4gPG9wPiA8Yj4gICAgINCh0YDQsNCy0L3QuNGC0Ywg0L3QvtC80LXRgNCwINCy0LXRgNGB0LjQuSwg0YHQvC4g0L3QuNC20LVcbiIKKyIgIC0tZm9yY2UtaGVscCAgICAgICAgICAgICAgICAgICAgICAgINCS0YvQstC10YHRgtC4INGB0L/RgNCw0LLQutGDINC/0L4g0LrQvtC80LDQvdC00LDQvCAiCisi0LjQs9C90L7RgNC40YDQvtCy0LDQvdC40Y9cbiIKKyIgIC1EaHwtLWRlYnVnPWhlbHAgICAgICAgICAgICAgICAgICAgINCS0YvQstC10YHRgtC4INGB0L/RgNCw0LLQutGDINC/0L4g0LrQvtC80LDQvdC00LDQvCDQvtGC0LvQsNC00LrQuFxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjExMyBzcmMvcXVlcnljbWQuYzo2MzEgc3JjL3RyaWdjbWQuYzo3NyBkcGtnLWRlYi9tYWluLmM6ODgKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjc3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIgIC1ofC0taGVscCAgICAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgICAgICAgICBTaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorbXNnc3RyICIiCisiICAtaHwtLWhlbHAgICAgICAgICAgICAgICAgICAgICAgICAgICDQktGL0LLQtdGB0YLQuCDRjdGC0L4g0YHQvtC+0LHRidC10L3QuNC1XG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgICAgICAgICAgICDQktGL0LLQtdGB0YLQuCDQvdC+0LzQtdGAINCy0LXRgNGB0LjQuFxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjExOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVXNlIGRwa2cgLWJ8LS1idWlsZHwtY3wtLWNvbnRlbnRzfC1lfC0tY29udHJvbHwtSXwtLWluZm98LWZ8LS1maWVsZHxcbiIKKyIgLXh8LS1leHRyYWN0fC1YfC0tdmV4dHJhY3R8LS1mc3lzLXRhcmZpbGUgIG9uIGFyY2hpdmVzICh0eXBlICVzIC0taGVscCkuXG4iCisiXG4iCittc2dzdHIgIiIKKyLQmiDQsNGA0YXQuNCy0LDQvCDQv9GA0LjQvNC10L3Rj9GO0YLRgdGPINC60L7QvNCw0L3QtNGLOiBkcGtnIC1ifC0tYnVpbGR8LWN8LS1jb250ZW50c3wtZXwtLWNvbnRyb2x8XG4iCisiIC1mfC0tZmllbGR8LXh8LS1leHRyYWN0fC1YfC0tdmV4dHJhY3R8LS1mc3lzLXRhcmZpbGUgKNGB0LwuICVzIC0taGVscCkuXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTIzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJGb3IgaW50ZXJuYWwgdXNlOiBkcGtnIC0tYXNzZXJ0LXN1cHBvcnQtcHJlZGVwZW5kcyB8IC0tcHJlZGVwLXBhY2thZ2UgfFxuIgorIiAgLS1hc3NlcnQtd29ya2luZy1lcG9jaCB8IC0tYXNzZXJ0LWxvbmctZmlsZW5hbWVzIHwgLS1hc3NlcnQtbXVsdGktY29ucmVwLlxuIgorIlxuIgorbXNnc3RyICIiCisi0JTQu9GPINCy0L3Rg9GC0YDQtdC90L3QtdCz0L4g0LjRgdC/0L7Qu9GM0LfQvtCy0LDQvdC40Y86IGRwa2cgLS1hc3NlcnQtc3VwcG9ydC1wcmVkZXBlbmRzIHxcbiIKKyIgIC0tcHJlZGVwLXBhY2thZ2UgfCAtLWFzc2VydC13b3JraW5nLWVwb2NoIHwgLS1hc3NlcnQtbG9uZy1maWxlbmFtZXMgfFxuIgorIiAgLS1hc3NlcnQtbXVsdGktY29ucmVwLlxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjEyOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT4gICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorIiAgLS1yb290PTxkaXJlY3Rvcnk+ICAgICAgICAgSW5zdGFsbCBvbiBhIGRpZmZlcmVudCByb290IGRpcmVjdG9yeS5cbiIKKyIgIC0taW5zdGRpcj08ZGlyZWN0b3J5PiAgICAgIENoYW5nZSBpbnN0YWxsYXRpb24gZGlyIHdpdGhvdXQgY2hhbmdpbmcgYWRtaW4gIgorImRpci5cbiIKKyIgIC0tcGF0aC1leGNsdWRlPTxwYXR0ZXJuPiAgIERvIG5vdCBpbnN0YWxsIHBhdGhzIHdoaWNoIG1hdGNoIGEgc2hlbGwgIgorInBhdHRlcm4uXG4iCisiICAtLXBhdGgtaW5jbHVkZT08cGF0dGVybj4gICBSZS1pbmNsdWRlIGEgcGF0dGVybiBhZnRlciBhIHByZXZpb3VzICIKKyJleGNsdXNpb24uXG4iCisiICAtT3wtLXNlbGVjdGVkLW9ubHkgICAgICAgICBTa2lwIHBhY2thZ2VzIG5vdCBzZWxlY3RlZCBmb3IgaW5zdGFsbC8iCisidXBncmFkZS5cbiIKKyIgIC1FfC0tc2tpcC1zYW1lLXZlcnNpb24gICAgIFNraXAgcGFja2FnZXMgd2hvc2Ugc2FtZSB2ZXJzaW9uIGlzIGluc3RhbGxlZC5cbiIKKyIgIC1HfC0tcmVmdXNlLWRvd25ncmFkZSAgICAgIFNraXAgcGFja2FnZXMgd2l0aCBlYXJsaWVyIHZlcnNpb24gdGhhbiAiCisiaW5zdGFsbGVkLlxuIgorIiAgLUJ8LS1hdXRvLWRlY29uZmlndXJlICAgICAgSW5zdGFsbCBldmVuIGlmIGl0IHdvdWxkIGJyZWFrIHNvbWUgb3RoZXIgIgorInBhY2thZ2UuXG4iCisiICAtLVtuby1ddHJpZ2dlcnMgICAgICAgICAgICBTa2lwIG9yIGZvcmNlIGNvbnNlcXVlbnRpYWwgdHJpZ2dlciAiCisicHJvY2Vzc2luZy5cbiIKKyIgIC0tbm8tZGVic2lnICAgICAgICAgICAgICAgIERvIG5vdCB0cnkgdG8gdmVyaWZ5IHBhY2thZ2Ugc2lnbmF0dXJlcy5cbiIKKyIgIC0tbm8tYWN0fC0tZHJ5LXJ1bnwtLXNpbXVsYXRlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBKdXN0IHNheSB3aGF0IHdlIHdvdWxkIGRvIC0gZG9uJ3QgZG8gaXQuXG4iCisiICAtRHwtLWRlYnVnPTxvY3RhbD4gICAgICAgICBFbmFibGUgZGVidWdnaW5nIChzZWUgLURoZWxwIG9yIC0tZGVidWc9aGVscCkuXG4iCisiICAtLXN0YXR1cy1mZCA8bj4gICAgICAgICAgICBTZW5kIHN0YXR1cyBjaGFuZ2UgdXBkYXRlcyB0byBmaWxlIGRlc2NyaXB0b3IgIgorIjxuPi5cbiIKKyIgIC0tbG9nPTxmaWxlbmFtZT4gICAgICAgICAgIExvZyBzdGF0dXMgY2hhbmdlcyBhbmQgYWN0aW9ucyB0byA8ZmlsZW5hbWU+LlxuIgorIiAgLS1pZ25vcmUtZGVwZW5kcz08cGFja2FnZT4sLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZ25vcmUgZGVwZW5kZW5jaWVzIGludm9sdmluZyA8cGFja2FnZT4uXG4iCisiICAtLWZvcmNlLS4uLiAgICAgICAgICAgICAgICBPdmVycmlkZSBwcm9ibGVtcyAoc2VlIC0tZm9yY2UtaGVscCkuXG4iCisiICAtLW5vLWZvcmNlLS4uLnwtLXJlZnVzZS0uLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3Agd2hlbiBwcm9ibGVtcyBlbmNvdW50ZXJlZC5cbiIKKyIgIC0tYWJvcnQtYWZ0ZXIgPG4+ICAgICAgICAgIEFib3J0IGFmdGVyIGVuY291bnRlcmluZyA8bj4gZXJyb3JzLlxuIgorIlxuIgorbXNnc3RyICIiCisi0J/QsNGA0LDQvNC10YLRgNGLOlxuIgorIiAgLS1hZG1pbmRpcj080LrQsNGC0LDQu9C+0LM+ICAgICAgICAgICAgINCY0YHQv9C+0LvRjNC30L7QstCw0YLRjCA80LrQsNGC0LDQu9C+0LM+INCy0LzQtdGB0YLQviAlc1xuIgorIiAgLS1yb290PTzQutCw0YLQsNC70L7Qsz4gICAgICAgICAgICAgICAgINCj0YHRgtCw0L3QvtCy0LjRgtGMINCyINC00YDRg9Cz0L7QuVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg0LrQvtGA0L3QtdCy0L7QuSDQutCw0YLQsNC70L7Qs1xuIgorIiAgLS1pbnN0ZGlyPTzQutCw0YLQsNC70L7Qsz4gICAgICAgICAgICAgINCY0LfQvNC10L3QuNGC0Ywg0LrQvtGA0L3QtdCy0L7QuSDQutCw0YLQsNC70L7QsyDQtNC70Y9cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgINGD0YHRgtCw0L3QvtCy0LrQuCwg0L3QtSDQvNC10L3Rj9GPINCw0LTQvNC40L3QuNGB0YLRgNCw0YLQuNCy0L3Ri9C5XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDQutCw0YLQsNC70L7Qs1xuIgorIiAgLS1wYXRoLWV4Y2x1ZGU9PNGI0LDQsdC7PiAgICAgICAgICAgINCd0LUg0YPRgdGC0LDQvdCw0LLQu9C40LLQsNGC0Ywg0L/Rg9GC0LgsINC60L7RgtC+0YDRi9C1INGB0L7QstC/0LDQtNCw0Y7RgiAiCisi0YFcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgINC00LDQvdC90YvQvCDRiNCw0LHQu9C+0L3QvtC8INC+0LHQvtC70L7Rh9C60LguXG4iCisiICAtLXBhdGgtaW5jbHVkZT080YjQsNCx0Ls+ICAgICAgICAgICAg0J/QvtCy0YLQvtGA0L3QviDQstC60LvRjtGH0LjRgtGMINGI0LDQsdC70L7QvSDQv9C+0YHQu9C1ICIKKyLQv9GA0LXQtNGL0LTRg9GJ0LXQs9C+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDQuNGB0LrQu9GO0YfQtdC90LjRjy5cbiIKKyIgIC1PfC0tc2VsZWN0ZWQtb25seSAgICAgICAgICAgICAgINCf0YDQvtC/0YPRgdGC0LjRgtGMINC90LUg0LLRi9Cx0YDQsNC90L3Ri9C1INC00LvRj1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg0YPRgdGC0LDQvdC+0LLQutC4L9C+0LHQvdC+0LLQu9C10L3QuNGPINC/0LDQutC10YLRi1xuIgorIiAgLUV8LS1za2lwLXNhbWUtdmVyc2lvbiAgICAgICAgICAg0J/RgNC+0L/Rg9GB0YLQuNGC0Ywg0L/QsNC60LXRgtGLLCDQstC10YDRgdC40Y9cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgINC60L7RgtC+0YDRi9GFINGB0L7QstC/0LDQtNCw0LXRgiDRgSDRg9GB0YLQsNC90L7QstC70LXQvdC90L7QuVxuIgorIiAgLUd8LS1yZWZ1c2UtZG93bmdyYWRlICAgICAgICAgICAg0J/RgNC+0L/Rg9GB0YLQuNGC0Ywg0L/QsNC60LXRgtGLLCDQstC10YDRgdC40Y9cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgINC60L7RgtC+0YDRi9GFINC80LvQsNC00YjQtSDRg9GB0YLQsNC90L7QstC70LXQvdC90L7QuVxuIgorIiAgLUJ8LS1hdXRvLWRlY29uZmlndXJlICAgICAgICAgICAg0KPRgdGC0LDQvdC+0LLQuNGC0YwsINC00LDQttC1INC10YHQu9C4INGN0YLQviDQvNC+0LbQtdGCINGB0LTQtdC70LDRgtGMXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDQtNGA0YPQs9C40LUg0L/QsNC60LXRgtGLINC90LXRgNCw0LHQvtGC0L7RgdC/0L7RgdC+0LHQvdGL0LzQuFxuIgorIiAgLS1bbm8tXXRyaWdnZXJzICAgICAgICAgICAgICAgICAg0J/RgNC+0L/Rg9GB0YLQuNGC0Ywg0LjQu9C4INC/0YDQuNC90YPQtNC40YLQtdC70YzQvdC+INCy0YvQv9C+0LvQvdC40YLRjFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg0L/QvtGB0LvQtdC00L7QstCw0YLQtdC70YzQvdGD0Y4g0L7QsdGA0LDQsdC+0YLQutGDINGC0YDQuNCz0LPQtdGA0L7QslxuIgorIiAgLS1uby1kZWJzaWcgICAgICAgICAgICAgICAgICAgICAg0J3QtSDQv9GA0L7QstC10YDRj9GC0Ywg0L/QvtC00L/QuNGB0Lgg0L/QsNC60LXRgtC+0LJcbiIKKyIgIC0tbm8tYWN0fC0tZHJ5LXJ1bnwtLXNpbXVsYXRlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDQn9C+0LrQsNC30LDRgtGMLCDRh9GC0L4g0LTQvtC70LbQvdC+INCx0YvRgtGMINGB0LTQtdC70LDQvdC+LCDQvdC+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDQvdC1INCy0YvQv9C+0LvQvdGP0YLRjCDQtNC10LnRgdGC0LLQuNGPXG4iCisiICAtRHwtLWRlYnVnPTzQstC+0YHRjNC8LiDQt9C90LDRhy4+ICAgICAgICDQktC60LvRjtGH0LjRgtGMINC+0YLQu9Cw0LTQutGDLFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg0YHQvC4gLURoZWxwINC40LvQuCAtLWRlYnVnPWhlbHBcbiIKKyIgIC0tc3RhdHVzLWZkIDxuPiAgICAgICAgICAgICAgICAgINCS0YvQstC10YHRgtC4INC40L3RhNC+0YDQvNCw0YbQuNGOINC+0LEg0LjQt9C80LXQvdC10L3QuNGP0YVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgINGB0L7RgdGC0L7Rj9C90LjQuSDQv9Cw0LrQtdGC0L7QsiDQsiDRhNCw0LnQu1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg0YEg0LTQtdGB0LrRgNC40L/RgtC+0YDQvtC8IDxuPlxuIgorIiAgLS1sb2c9PNC40LzRjyDRhNCw0LnQu9CwPiAgICAgICAgICAgICAgICDQl9Cw0L/QuNGB0YvQstCw0YLRjCDQuNC30LzQtdC90LXQvdC40Y8g0YHQvtGB0YLQvtGP0L3QuNC5XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDQuCDQtNC10LnRgdGC0LLQuNGPINCyIDzQuNC80Y8g0YTQsNC50LvQsD5cbiIKKyIgIC0taWdub3JlLWRlcGVuZHM9PNC/0LDQutC10YI+LC4uLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg0JjQs9C90L7RgNC40YDQvtCy0LDRgtGMINC30LDQstC40YHQuNC80L7RgdGC0Lgg0L7RgiA80L/QsNC60LXRgtCwPlxuIgorIiAgLS1mb3JjZS0uLi4gICAgICAgICAgICAgICAgICAgICAg0JjQs9C90L7RgNC40YDQvtCy0LDRgtGMINC/0YDQvtCx0LvQtdC80YssINGB0LwuIC0tZm9yY2UtaGVscFxuIgorIiAgLS1uby1mb3JjZS0uLi58LS1yZWZ1c2UtLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDQn9GA0LXQutGA0LDRgtC40YLRjCDRgNCw0LHQvtGC0YMg0L/RgNC4XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDQvtCx0L3QsNGA0YPQttC10L3QuNC4INC/0YDQvtCx0LvQtdC8XG4iCisiICAtLWFib3J0LWFmdGVyIDxuPiAgICAgICAgICAgICAgICDQn9GA0LXQutGA0LDRgtC40YLRjCDRgNCw0LHQvtGC0YMg0L/QvtGB0LvQtVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg0L7QsdC90LDRgNGD0LbQtdC90LjRjyA8bj4g0LrQvtC70LjRh9C10YHRgtCy0LAg0L7RiNC40LHQvtC6XG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTU0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21wYXJpc29uIG9wZXJhdG9ycyBmb3IgLS1jb21wYXJlLXZlcnNpb25zIGFyZTpcbiIKKyIgIGx0IGxlIGVxIG5lIGdlIGd0ICAgICAgICh0cmVhdCBlbXB0eSB2ZXJzaW9uIGFzIGVhcmxpZXIgdGhhbiBhbnkgIgorInZlcnNpb24pO1xuIgorIiAgbHQtbmwgbGUtbmwgZ2UtbmwgZ3QtbmwgKHRyZWF0IGVtcHR5IHZlcnNpb24gYXMgbGF0ZXIgdGhhbiBhbnkgdmVyc2lvbik7XG4iCisiICA8IDw8IDw9ID0gPj0gPj4gPiAgICAgICAob25seSBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIGNvbnRyb2wgZmlsZSAiCisic3ludGF4KS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorItCe0L/QtdGA0LDRgtC+0YDRiyDRgdGA0LDQstC90LXQvdC40Y8sINCy0L7Qt9C80L7QttC90YvQtSDQsiAtLWNvbXBhcmUtdmVyc2lvbnM6XG4iCisiICBsdCBsZSBlcSBuZSBnZSBndCAgICAgICAo0L/Rg9GB0YLQvtC1INC30L3QsNGH0LXQvdC40LUg0LLQtdGA0YHQuNC4INGB0YfQuNGC0LDRgtGMINGB0LDQvNC+0Lkg0YDQsNC90L3QtdC5KTtcbiIKKyIgIGx0LW5sIGxlLW5sIGdlLW5sIGd0LW5sICjQv9GD0YHRgtC+0LUg0LfQvdCw0YfQtdC90LjQtSDQstC10YDRgdC40Lgg0YHRh9C40YLQsNGC0Ywg0YHQsNC80L7QuSDQv9C+0LfQtNC90LXQuSk7XG4iCisiICA8IDw8IDw9ID0gPj0gPj4gPiAgICAgICAo0LTQu9GPINGB0L7QstC80LXRgdGC0LjQvNC+0YHRgtC4INGBINGB0LjQvdGC0LDQutGB0LjRgdC+0Lwg0YTQsNC50LvQsCBjb250cm9sKS5cbiIKKyJcbiIKKworIzogc3JjL21haW4uYzoxNjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiVXNlIGBkc2VsZWN0JyBvciBgYXB0aXR1ZGUnIGZvciB1c2VyLWZyaWVuZGx5IHBhY2thZ2UgbWFuYWdlbWVudC5cbiIKK21zZ3N0ciAiIgorItCf0YDQvtCz0YDQsNC80LzRiyDCq2RzZWxlY3TCuyDQuNC70LggwqthcHRpdHVkZcK7INC/0YDQtdC00L7RgdGC0LDQstC70Y/RjtGCINC00YDRg9C20LXRgdGC0LLQtdC90L3Ri9C5INC40L3RgtC10YDRhNC10LnRgVxuIgorItGD0L/RgNCw0LLQu9C10L3QuNGPINC/0LDQutC10YLQsNC80LguXG4iCisKKyM6IHNyYy9tYWluLmM6MTcwCittc2dpZCAiIgorIlR5cGUgZHBrZyAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgaW5zdGFsbGluZyBhbmQgZGVpbnN0YWxsaW5nIHBhY2thZ2VzIFsqXTtcbiIKKyJVc2UgYGRzZWxlY3QnIG9yIGBhcHRpdHVkZScgZm9yIHVzZXItZnJpZW5kbHkgcGFja2FnZSBtYW5hZ2VtZW50O1xuIgorIlR5cGUgZHBrZyAtRGhlbHAgZm9yIGEgbGlzdCBvZiBkcGtnIGRlYnVnIGZsYWcgdmFsdWVzO1xuIgorIlR5cGUgZHBrZyAtLWZvcmNlLWhlbHAgZm9yIGEgbGlzdCBvZiBmb3JjaW5nIG9wdGlvbnM7XG4iCisiVHlwZSBkcGtnLWRlYiAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgbWFuaXB1bGF0aW5nICouZGViIGZpbGVzO1xuIgorIlxuIgorIk9wdGlvbnMgbWFya2VkIFsqXSBwcm9kdWNlIGEgbG90IG9mIG91dHB1dCAtIHBpcGUgaXQgdGhyb3VnaCBgbGVzcycgb3IgIgorImBtb3JlJyAhIgorbXNnc3RyICIiCisi0KHQv9GA0LDQstC60LAg0L/QviDRg9GB0YLQsNC90L7QstC60LUg0Lgg0YPQtNCw0LvQtdC90LjRjiDQv9Cw0LrQtdGC0L7QsiDQtNC+0YHRgtGD0L/QvdCwINC/0L4g0LrQvtC80LDQvdC00LUgZHBrZyAtLWhlbHAgIgorIlsqXTtcbiIKKyLQn9GA0L7Qs9GA0LDQvNC80LAgwqtkc2VsZWN0wrsg0LjQu9C4IMKrYXB0aXR1ZGXCuyDQv9GA0LXQtNC+0YHRgtCw0LLQu9GP0LXRgiDQtNGA0YPQttC10YHRgtCy0LXQvdC90YvQuSDQuNC90YLQtdGA0YTQtdC50YFcbiIKKyLRg9C/0YDQsNCy0LvQtdC90LjRjyDQv9Cw0LrQtdGC0LDQvNC4O1xuIgorItCn0YLQvtCx0Ysg0L/QvtC70YPRh9C40YLRjCDRgdC/0LjRgdC+0Log0LfQvdCw0YfQtdC90LjQuSDRhNC70LDQs9C+0LIg0L7RgtC70LDQtNC60LggZHBrZywg0LLQstC10LTQuNGC0LUgZHBrZyAtRGhlbHA7XG4iCisi0KfRgtC+0LHRiyDQv9C+0LvRg9GH0LjRgtGMINC40L3RhNC+0YDQvNCw0YbQuNGOINC+0LEg0LjQs9C90L7RgNC40YDQvtCy0LDQvdC40Lgg0L/RgNC+0LHQu9C10LwsINCy0LLQtdC00LjRgtC1IGRwa2cgLS1mb3JjZS0iCisiaGVscDtcbiIKKyLQp9GC0L7QsdGLINC/0L7Qu9GD0YfQuNGC0Ywg0YHQv9GA0LDQstC60YMg0L/QviDRgNCw0LHQvtGC0LUg0YEg0YTQsNC50LvQsNC80LggKi5kZWIsINCy0LLQtdC00LjRgtC1IGRwa2ctZGViIC0taGVscDtcbiIKKyJcbiIKKyLQmtC+0LzQsNC90LTRiywg0L7RgtC80LXRh9C10L3QvdGL0LUgWypdLCDQstGL0LLQvtC00Y/RgiDQsdC+0LvRjNGI0L7QtSDQutC+0LvQuNGH0LXRgdGC0LLQviDQuNC90YTQvtGA0LzQsNGG0LjQuC5cbiIKKyLQntCx0YrQtdC00LjQvdC40YLQtSDQuNGFINCyINC60L7QvdCy0LXQudC10YAg0YEg0L/RgNC+0LPRgNCw0LzQvNCw0LzQuCDCq2xlc3PCuyDQuNC70Lggwqttb3JlwrshIgorCisjOiBzcmMvbWFpbi5jOjIxOQorbXNnaWQgIlNldCBhbGwgZm9yY2Ugb3B0aW9ucyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIyMQorbXNnaWQgIlJlcGxhY2UgYSBwYWNrYWdlIHdpdGggYSBsb3dlciB2ZXJzaW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjIzCittc2dpZCAiQ29uZmlndXJlIGFueSBwYWNrYWdlIHdoaWNoIG1heSBoZWxwIHRoaXMgb25lIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjI1Cittc2dpZCAiUHJvY2VzcyBpbmNpZGVudGFsIHBhY2thZ2VzIGV2ZW4gd2hlbiBvbiBob2xkIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjI3Cittc2dpZCAiVHJ5IHRvIChkZSlpbnN0YWxsIHRoaW5ncyBldmVuIHdoZW4gbm90IHJvb3QiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjkKK21zZ2lkICJQQVRIIGlzIG1pc3NpbmcgaW1wb3J0YW50IHByb2dyYW1zLCBwcm9ibGVtcyBsaWtlbHkiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzEKK21zZ2lkICJJbnN0YWxsIGEgcGFja2FnZSBldmVuIGlmIGl0IGZhaWxzIGF1dGhlbnRpY2l0eSBjaGVjayIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzMworbXNnaWQgIlByb2Nlc3MgZXZlbiBwYWNrYWdlcyB3aXRoIHdyb25nIHZlcnNpb25zIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjM1Cittc2dpZCAiT3ZlcndyaXRlIGEgZmlsZSBmcm9tIG9uZSBwYWNrYWdlIHdpdGggYW5vdGhlciIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzNworbXNnaWQgIk92ZXJ3cml0ZSBhIGRpdmVydGVkIGZpbGUgd2l0aCBhbiB1bmRpdmVydGVkIHZlcnNpb24iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzkKK21zZ2lkICJPdmVyd3JpdGUgb25lIHBhY2thZ2UncyBkaXJlY3Rvcnkgd2l0aCBhbm90aGVyJ3MgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI0MQorbXNnaWQgIkRvIG5vdCBwZXJmb3JtIHNhZmUgSS9PIG9wZXJhdGlvbnMgd2hlbiB1bnBhY2tpbmciCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDMKK21zZ2lkICJBbHdheXMgdXNlIHRoZSBuZXcgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDUKK21zZ2lkICJBbHdheXMgdXNlIHRoZSBvbGQgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDgKK21zZ2lkICIiCisiVXNlIHRoZSBkZWZhdWx0IG9wdGlvbiBmb3IgbmV3IGNvbmZpZyBmaWxlcyBpZiBvbmVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgaXMgYXZhaWxhYmxlLCBkb24ndCBwcm9tcHQuIElmIG5vIGRlZmF1bHQgY2FuIGJlICIKKyJmb3VuZCxcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgeW91IHdpbGwgYmUgcHJvbXB0ZWQgdW5sZXNzIG9uZSBvZiB0aGUgY29uZm9sZCBvclxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICBjb25mbmV3IG9wdGlvbnMgaXMgYWxzbyBnaXZlbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI1MworbXNnaWQgIkFsd2F5cyBpbnN0YWxsIG1pc3NpbmcgY29uZmlnIGZpbGVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjU1Cittc2dpZCAiT2ZmZXIgdG8gcmVwbGFjZSBjb25maWcgZmlsZXMgd2l0aCBubyBuZXcgdmVyc2lvbnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNTcKK21zZ2lkICJQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyBvciBubyBhcmNoaXRlY3R1cmUiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNTkKK21zZ2lkICJJbnN0YWxsIGV2ZW4gaWYgaXQgd291bGQgYnJlYWsgYW5vdGhlciBwYWNrYWdlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjYxCittc2dpZCAiQWxsb3cgaW5zdGFsbGF0aW9uIG9mIGNvbmZsaWN0aW5nIHBhY2thZ2VzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjYzCisjLCBmdXp6eQorI3wgbXNnaWQgImRlcGVuZGVuY3kgcHJvYmxlbXMgLSBub3QgcmVtb3ZpbmciCittc2dpZCAiVHVybiBhbGwgZGVwZW5kZW5jeSBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzIgorbXNnc3RyICLQv9GA0L7QsdC70LXQvNGLINC30LDQstC40YHQuNC80L7RgdGC0LXQuSAtLSDQvdC1INGD0LTQsNC70Y/QtdGC0YHRjyIKKworIzogc3JjL21haW4uYzoyNjUKKyMsIGZ1enp5CisjfCBtc2dpZCAiZGVwZW5kZW5jeSBwcm9ibGVtcyAtIG5vdCByZW1vdmluZyIKK21zZ2lkICJUdXJuIGRlcGVuZGVuY3kgdmVyc2lvbiBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzIgorbXNnc3RyICLQv9GA0L7QsdC70LXQvNGLINC30LDQstC40YHQuNC80L7RgdGC0LXQuSAtLSDQvdC1INGD0LTQsNC70Y/QtdGC0YHRjyIKKworIzogc3JjL21haW4uYzoyNjcKK21zZ2lkICJSZW1vdmUgcGFja2FnZXMgd2hpY2ggcmVxdWlyZSBpbnN0YWxsYXRpb24iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNjkKK21zZ2lkICJSZW1vdmUgYW4gZXNzZW50aWFsIHBhY2thZ2UiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODEKK21zZ2lkICJHZW5lcmFsbHkgaGVscGZ1bCBwcm9ncmVzcyBpbmZvcm1hdGlvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4MgorIywgZnV6enkKKyN8IG1zZ2lkICJ1bmFibGUgdG8gc2V0ZW52IGZvciBtYWludGFpbmVyIHNjcmlwdCIKK21zZ2lkICJJbnZvY2F0aW9uIGFuZCBzdGF0dXMgb2YgbWFpbnRhaW5lciBzY3JpcHRzIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINCy0YvQv9C+0LvQvdC40YLRjCBzZXRlbnYg0LTQu9GPINGB0YbQtdC90LDRgNC40Y8g0YHQvtC/0YDQvtCy0L7QttC00LDRjtGJ0LXQs9C+IgorCisjOiBzcmMvbWFpbi5jOjI4MworbXNnaWQgIk91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4NAorbXNnaWQgIkxvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg1CisjLCBmdXp6eQorI3wgbXNnaWQgInJlYWQgZXJyb3IgaW4gY29uZmlndXJhdGlvbiBmaWxlIGAlLjI1NXMnIgorbXNnaWQgIk91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGUiCittc2dzdHIgItC+0YjQuNCx0LrQsCDRh9GC0LXQvdC40Y8g0YTQsNC50LvQsCDQvdCw0YHRgtGA0L7QudC60LggwqslLjI1NXPCuyIKKworIzogc3JjL21haW4uYzoyODYKK21zZ2lkICJMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGUiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODcKK21zZ2lkICJEZXBlbmRlbmNpZXMgYW5kIGNvbmZsaWN0cyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4OAorbXNnaWQgIkxvdHMgb2YgZGVwZW5kZW5jaWVzL2NvbmZsaWN0cyBvdXRwdXQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODkKK21zZ2lkICJUcmlnZ2VyIGFjdGl2YXRpb24gYW5kIHByb2Nlc3NpbmciCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyOTAKK21zZ2lkICJMb3RzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyOTEKK21zZ2lkICJTaWxseSBhbW91bnRzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyOTIKK21zZ2lkICJMb3RzIG9mIGRyaXZlbCBhYm91dCBlZyB0aGUgZHBrZy9pbmZvIGRpcmVjdG9yeSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MworbXNnaWQgIkluc2FuZSBhbW91bnRzIG9mIGRyaXZlbCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjMwNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXMgZGVidWdnaW5nIG9wdGlvbiwgLS1kZWJ1Zz08b2N0YWw+IG9yIC1EPG9jdGFsPjpcbiIKKyJcbiIKKyIgTnVtYmVyICBSZWYuIGluIHNvdXJjZSAgIERlc2NyaXB0aW9uXG4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzozMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIkRlYnVnZ2luZyBvcHRpb25zIGNhbiBiZSBtaXhlZCB1c2luZyBiaXR3aXNlLW9yLlxuIgorIk5vdGUgdGhhdCB0aGUgbWVhbmluZ3MgYW5kIHZhbHVlcyBhcmUgc3ViamVjdCB0byBjaGFuZ2UuXG4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzozMTkKK21zZ2lkICItLWRlYnVnIHJlcXVpcmVzIGFuIG9jdGFsIGFyZ3VtZW50IgorbXNnc3RyICLQv9Cw0YDQsNC80LXRgtGAIC0tZGVidWcg0L/RgNC40L3QuNC80LDQtdGCINCyINC60LDRh9C10YHRgtCy0LUg0LDRgNCz0YPQvNC10L3RgtCwINCy0L7RgdGM0LzQtdGA0LjRh9C90L7QtSDRh9C40YHQu9C+IgorCisjOiBzcmMvbWFpbi5jOjM0OAorIywgYy1mb3JtYXQKK21zZ2lkICJudWxsIHBhY2thZ2UgbmFtZSBpbiAtLWlnbm9yZS1kZXBlbmRzIGNvbW1hLXNlcGFyYXRlZCBsaXN0IGAlLjI1MHMnIgorbXNnc3RyICIiCisi0L/Rg9GB0YLQvtC1INC40LzRjyDQv9Cw0LrQtdGC0LAg0LIg0YDQsNC30LTQtdC70ZHQvdC90L7QvCDQt9Cw0L/Rj9GC0YvQvNC4INGB0L/QuNGB0LrQtSDQuNCz0L3QvtGA0LjRgNGD0LXQvNGL0YUg0LfQsNCy0LjRgdC40LzQvtGB0YLQtdC5ICIKKyLCqyUuMjUwc8K7IgorCisjOiBzcmMvbWFpbi5jOjM1NAorIywgYy1mb3JtYXQKK21zZ2lkICItLWlnbm9yZS1kZXBlbmRzIHJlcXVpcmVzIGEgbGVnYWwgcGFja2FnZSBuYW1lLiBgJS4yNTBzJyBpcyBub3Q7ICVzIgorbXNnc3RyICIiCisiLS1pZ25vcmUtZGVwZW5kcyDRgtGA0LXQsdGD0LXRgiDQutC+0YDRgNC10LrRgtC90L7Qs9C+INC40LzQtdC90Lgg0L/QsNC60LXRgtCwLiDCqyUuMjUwc8K7INGC0LDQutC+0LLRi9C8INC90LUgIgorItGP0LLQu9GP0LXRgtGB0Y86ICVzIgorCisjOiBzcmMvbWFpbi5jOjM3MSBzcmMvbWFpbi5jOjM4MSBzcmMvbWFpbi5jOjY0OSBkcGtnLXNwbGl0L21haW4uYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBpbnRlZ2VyIGZvciAtLSVzOiBgJS4yNTBzJyIKK21zZ3N0ciAi0L3QtdC60L7RgNGA0LXQutGC0L3QvtC1INGG0LXQu9C+0LUg0LfQvdCw0YfQtdC90LjQtSDQsNGA0LPRg9C80LXQvdGC0LAgLS0lczogwqslLjI1MHPCuyIKKworIzogc3JjL21haW4uYzo0MzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgZXhlY3V0aW5nIGhvb2sgJyVzJywgZXhpdCBjb2RlICVkIgorbXNnc3RyICLQvtGI0LjQsdC60LAg0LLRi9C/0L7Qu9C90LXQvdC40Y8g0LvQvtCy0YPRiNC60Lggwqslc8K7LCDQutC+0LQg0LLQvtC30LLRgNCw0YLQsCAlZCIKKworIzogc3JjL21haW4uYzo0NjUKKyMsIGZ1enp5CisjfCBtc2dpZCAic3RhdHVzIgorbXNnaWQgInN0YXR1cyBsb2dnZXIiCittc2dzdHIgItGB0L7RgdGC0L7Rj9C90LjQtSIKKworIzogc3JjL21haW4uYzo0ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzIGZvcmNpbmcgb3B0aW9ucyAtIGNvbnRyb2wgYmVoYXZpb3VyIHdoZW4gcHJvYmxlbXMgZm91bmQ6XG4iCisiICB3YXJuIGJ1dCBjb250aW51ZTogIC0tZm9yY2UtPHRoaW5nPiw8dGhpbmc+LC4uLlxuIgorIiAgc3RvcCB3aXRoIGVycm9yOiAgICAtLXJlZnVzZS08dGhpbmc+LDx0aGluZz4sLi4uIHwgLS1uby1mb3JjZS08dGhpbmc+LC4uLlxuIgorIiBGb3JjaW5nIHRoaW5nczpcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjQ5MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiV0FSTklORyAtIHVzZSBvZiBvcHRpb25zIG1hcmtlZCBbIV0gY2FuIHNlcmlvdXNseSBkYW1hZ2UgeW91ciBpbnN0YWxsYXRpb24uXG4iCisiRm9yY2luZyBvcHRpb25zIG1hcmtlZCBbKl0gYXJlIGVuYWJsZWQgYnkgZGVmYXVsdC5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjUwNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGZvcmNlL3JlZnVzZSBvcHRpb24gYCUuKnMnIgorbXNnc3RyICLQvdC10LTQvtC/0YPRgdGC0LjQvNGL0Lkg0L/QsNGA0LDQvNC10YLRgCDQuNCz0L3QvtGA0LjRgNC+0LLQsNC90LjRjy/QvtCx0YDQsNCx0L7RgtC60Lgg0L/RgNC+0LHQu9C10LwgwqslLipzwrsiCisKKyM6IHNyYy9tYWluLmM6NTEzCisjLCBjLWZvcm1hdAorbXNnaWQgIm9ic29sZXRlIGZvcmNlL3JlZnVzZSBvcHRpb24gJyVzJ1xuIgorbXNnc3RyICLRg9GB0YLQsNGA0LXQstGI0LjQuSDQv9Cw0YDQsNC80LXRgtGAINC40LPQvdC+0YDQuNGA0L7QstCw0L3QuNGPL9C+0LHRgNCw0LHQvtGC0LrQuCDCqyVzwrtcbiIKKworIzogc3JjL21haW4uYzo2NDMKK21zZ2lkICItLWNvbW1hbmQtZmQgdGFrZXMgb25lIGFyZ3VtZW50LCBub3QgemVybyIKK21zZ3N0ciAi0L/QsNGA0LDQvNC10YLRgCAtLWNvbW1hbmQtZmQg0L/RgNC40L3QuNC80LDQtdGCINC+0LTQuNC9INCw0YDQs9GD0LzQtdC90YIsINCwINC90LUg0L3QvtC70YwiCisKKyM6IHNyYy9tYWluLmM6NjQ1Cittc2dpZCAiLS1jb21tYW5kLWZkIG9ubHkgdGFrZXMgb25lIGFyZ3VtZW50IgorbXNnc3RyICLQv9Cw0YDQsNC80LXRgtGAIC0tY29tbWFuZC1mZCDQv9GA0LjQvdC40LzQsNC10YIg0YLQvtC70YzQutC+INC+0LTQuNC9INCw0YDQs9GD0LzQtdC90YIiCisKKyM6IHNyYy9tYWluLmM6NjUxCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkbid0IG9wZW4gYCVpJyBmb3Igc3RyZWFtIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC+0YLQutGA0YvRgtGMINC/0L7RgtC+0Log0LTQtdGB0LrRgNC40L/RgtC+0YDQsCDCqyVpwrsiCisKKyM6IHNyYy9tYWluLmM6Njc2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW9mIGJlZm9yZSBlbmQgb2YgbGluZSAlZCIKK21zZ3N0ciAi0L3QtdC+0LbQuNC00LDQvdC90YvQuSDQutC+0L3QtdGGINGE0LDQudC70LAsINC10YnRkSDQvdC1INC60L7QvdGH0LjQu9Cw0YHRjCDRgdGC0YDQvtC60LAgJWQiCisKKyM6IHNyYy9tYWluLmM6NzE5IHNyYy9tYWluLmM6NzQxIHNyYy9xdWVyeWNtZC5jOjY5MiBzcmMvc3RhdGNtZC5jOjM3OQorIzogZHBrZy1kZWIvbWFpbi5jOjIwMSBkcGtnLXNwbGl0L21haW4uYzoxNjMKK21zZ2lkICJuZWVkIGFuIGFjdGlvbiBvcHRpb24iCittc2dzdHIgItGD0LrQsNC20LjRgtC1INGC0YDQtdCx0YPQtdC80L7QtSDQtNC10LnRgdGC0LLQuNC1IgorCisjOiBzcmMvcGFja2FnZXMuYzoxMTMKK21zZ2lkICIiCisieW91IG11c3Qgc3BlY2lmeSBwYWNrYWdlcyBieSB0aGVpciBvd24gbmFtZXMsIG5vdCBieSBxdW90aW5nIHRoZSBuYW1lcyBvZiAiCisidGhlIGZpbGVzIHRoZXkgY29tZSBpbiIKK21zZ3N0ciAiIgorItC/0LDQutC10YLRiyDQt9Cw0LTQsNGO0YLRgdGPINC40YUg0YHQvtCx0YHRgtCy0LXQvdC90YvQvNC4INC40LzQtdC90LDQvNC4LCDQsCDQvdC1INC40LzQtdC90LDQvNC4INGE0LDQudC70L7Qsiwg0LjQtyDQutC+0YLQvtGA0YvRhSDQvtC90LggIgorItGD0YHRgtCw0L3QvtCy0LvQtdC90YsiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjEzMworIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIC0tcGVuZGluZyBkb2VzIG5vdCB0YWtlIGFueSBub24tb3B0aW9uIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS0lcyAtLXBlbmRpbmcg0L3QtSDQv9GA0LjQvdC40LzQsNC10YIg0LDRgNCz0YPQvNC10L3RgtC+0LIsINC/0L7QvNC40LzQviDQv9Cw0YDQsNC80LXRgtGA0L7QsiIKKworIzogc3JjL3BhY2thZ2VzLmM6MTM4IHNyYy9xdWVyeWNtZC5jOjM3NSBzcmMvcXVlcnljbWQuYzo1NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhdCBsZWFzdCBvbmUgcGFja2FnZSBuYW1lIGFyZ3VtZW50IgorbXNnc3RyICItLSVzINGC0YDQtdCx0YPQtdGCINGD0LrQsNC30LDQvdC40Y8g0YXQvtGC0Y8g0LHRiyDQvtC00L3QvtCz0L4g0LjQvNC10L3QuCDQv9Cw0LrQtdGC0LAiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjE3OQorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlICVzIGxpc3RlZCBtb3JlIHRoYW4gb25jZSwgb25seSBwcm9jZXNzaW5nIG9uY2UuXG4iCittc2dzdHIgItCf0LDQutC10YIgJXMg0L/QtdGA0LXRh9C40YHQu9C10L0g0L3QtdGB0LrQvtC70YzQutC+INGA0LDQtywg0L7QsdGA0LDQsdCw0YLRi9Cy0LDQtdGC0YHRjyDRgtC+0LvRjNC60L4g0LXQtNC40L3QvtC20LTRiy5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MTgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJNb3JlIHRoYW4gb25lIGNvcHkgb2YgcGFja2FnZSAlcyBoYXMgYmVlbiB1bnBhY2tlZFxuIgorIiBpbiB0aGlzIHJ1biAhICBPbmx5IGNvbmZpZ3VyaW5nIGl0IG9uY2UuXG4iCittc2dzdHIgIiIKKyLQndCwINGC0LXQutGD0YnQtdC8INC/0YDQvtGF0L7QtNC1INGA0LDRgdC/0LDQutC+0LLQsNC90L4g0L3QtdGB0LrQvtC70YzQutC+INC60L7Qv9C40Lkg0L/QsNC60LXRgtCwICVzIVxuIgorIiDQndCw0YHRgtGA0LDQuNCy0LDQtdGC0YHRjyDRgtC+0LvRjNC60L4g0L7QtNC90LAg0LjQtyDQvdC40YUuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjIzMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisicGFja2FnZSAlLjI1MHMgaXMgbm90IHJlYWR5IGZvciB0cmlnZ2VyIHByb2Nlc3NpbmdcbiIKKyIgKGN1cnJlbnQgc3RhdHVzIGAlLjI1MHMnIHdpdGggbm8gcGVuZGluZyB0cmlnZ2VycykiCittc2dzdHIgIiIKKyLQv9Cw0LrQtdGCICUuMjUwcyDQvdC1INCz0L7RgtC+0LIg0LTQu9GPINC+0LHRgNCw0LHQvtGC0LrQuCDRgtGA0LjQs9Cz0LXRgNC+0LJcbiIKKyIgKNGC0LXQutGD0YnQtdC1INGB0L7RgdGC0L7Rj9C90LjQtSDCqyUuMjUwc8K7INCx0LXQtyDRgtGA0LjQs9Cz0LXRgNC+0LIg0YDQsNGB0YHQvNC+0YLRgNC10L3QuNGPKSIKKworIzogc3JjL3BhY2thZ2VzLmM6MzM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyB3aGljaCBwcm92aWRlcyAlcyBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIgINCf0LDQutC10YIgJXMg0L/RgNC10LTQvtGB0YLQsNCy0LvRj9C10YIgJXMsINC90L4g0LTQvtC70LbQtdC9INCx0YvRgtGMINGD0LTQsNC70ZHQvS5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MzM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIgINCf0LDQutC10YIgJXMg0LHRg9C00LXRgiDRg9C00LDQu9GR0L0uXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjM1NAorIywgYy1mb3JtYXQKK21zZ2lkICIgIFZlcnNpb24gb2YgJXMgb24gc3lzdGVtIGlzICVzLlxuIgorbXNnc3RyICIgINCS0LXRgNGB0LjRjyAlcyDQsiDRgdC40YHRgtC10LzQtSAlcy5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6Mzc2CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyB3aGljaCBwcm92aWRlcyAlcyBhd2FpdHMgdHJpZ2dlciBwcm9jZXNzaW5nLlxuIgorbXNnc3RyICIiCisiICDQn9Cw0LrQtdGCICVzLCDQv9GA0LXQtNC+0YHRgtCw0LLQu9GP0Y7RidC40LkgJXMsINC+0LbQuNC00LDQtdGCINC+0LHRgNCw0LHQvtGC0LrQuCDRgtGA0LjQs9Cz0LXRgNC+0LIg0L7QttC40LTQsNC90LjRjy5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MzgwCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyBhd2FpdHMgdHJpZ2dlciBwcm9jZXNzaW5nLlxuIgorbXNnc3RyICIgINCf0LDQutC10YIgJXMg0L7QttC40LTQsNC10YIg0L7QsdGA0LDQsdC+0YLQutC4INGC0YDQuNCz0LPQtdGA0L7QsiDQvtC20LjQtNCw0L3QuNGPLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogYWxzbyBjb25maWd1cmluZyBgJXMnIChyZXF1aXJlZCBieSBgJXMnKVxuIgorbXNnc3RyICJkcGtnOiDQvdCw0YHRgtGA0LDQuNCy0LDQtdGC0YHRjyDRgtCw0LrQttC1INC/0LDQutC10YIgwqslc8K7ICjQvdC10L7QsdGF0L7QtNC40LzQviDQtNC70Y8gwqslc8K7KVxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIHdoaWNoIHByb3ZpZGVzICVzIGlzIG5vdCBjb25maWd1cmVkIHlldC5cbiIKK21zZ3N0ciAiICDQn9Cw0LrQtdGCICVzLCDQv9GA0LXQtNC+0YHRgtCw0LLQu9GP0Y7RidC40LkgJXMsINC/0L7QutCwINC90LUg0L3QsNGB0YLRgNC+0LXQvS5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDIxCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyBpcyBub3QgY29uZmlndXJlZCB5ZXQuXG4iCittc2dzdHIgIiAg0J/QsNC60LXRgiAlcyDQv9C+0LrQsCDQvdC1INC90LDRgdGC0YDQvtC10L0uXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQzMgorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgd2hpY2ggcHJvdmlkZXMgJXMgaXMgbm90IGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiICDQn9Cw0LrQtdGCICVzLCDQv9GA0LXQtNC+0YHRgtCw0LLQu9GP0Y7RidC40LkgJXMsINC90LUg0YPRgdGC0LDQvdC+0LLQu9C10L0uXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQzNQorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgaXMgbm90IGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiICDQn9Cw0LrQtdGCICVzINC90LUg0YPRgdGC0LDQvdC+0LLQu9C10L0uXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQ3MgorIywgYy1mb3JtYXQKK21zZ2lkICIgJXMgKCVzKSBicmVha3MgJXMgYW5kIGlzICVzLlxuIgorbXNnc3RyICIgJXMgKCVzKSDQu9C+0LzQsNC10YIgJXMg0LggJXMuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQ3OAorIywgYy1mb3JtYXQKK21zZ2lkICIgICVzICglcykgcHJvdmlkZXMgJXMuXG4iCittc2dzdHIgIiAgJXMgKCVzKSDQv9GA0LXQtNC+0YHRgtCw0LLQu9GP0LXRgiAlcy5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDgyCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgVmVyc2lvbiBvZiAlcyB0byBiZSBjb25maWd1cmVkIGlzICVzLlxuIgorbXNnc3RyICIgINCS0LXRgNGB0LjRjyAlcywg0LrQvtGC0L7RgNCw0Y8g0LHRg9C00LXRgiDQvdCw0YHRgtGA0L7QtdC90LA6ICVzLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo1OTYKK21zZ2lkICIgZGVwZW5kcyBvbiAiCittc2dzdHIgIiDQt9Cw0LLQuNGB0LjRgiDQvtGCICIKKworIzogc3JjL3BhY2thZ2VzLmM6NjAyCittc2dpZCAiOyBob3dldmVyOlxuIgorbXNnc3RyICIsINC+0LTQvdCw0LrQvjpcbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo3MQorIywgYy1mb3JtYXQKK21zZ2lkICIuLi4vJXMiCittc2dzdHIgIi4uLi8lcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5MQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBlbnN1cmluZyBgJS4yNTBzJyBkb2Vzbid0IGV4aXN0IgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGD0LHQtdC00LjRgtGM0YHRjyDQsiDRgtC+0LwsINGH0YLQviDCqyUuMjUwc8K7INC90LUg0YHRg9GJ0LXRgdGC0LLRg9C10YIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTkKK21zZ2lkICJzcGxpdCBwYWNrYWdlIHJlYXNzZW1ibHkiCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxMDgKK21zZ2lkICJyZWFzc2VtYmxlZCBwYWNrYWdlIGZpbGUiCittc2dzdHIgItGB0L7QsdGA0LDQvdC90YvQuSDRhNCw0LnQuyDQv9Cw0LrQtdGC0LAiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTMzCisjLCBjLWZvcm1hdAorbXNnaWQgIkF1dGhlbnRpY2F0aW5nICVzIC4uLlxuIgorbXNnc3RyICLQn9GA0L7QstC10YDQutCwINC/0L7QtNC70LjQvdC90L7RgdGC0Lgg0YTQsNC50LvQsCAlcy4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEzOQorbXNnaWQgInBhY2thZ2Ugc2lnbmF0dXJlIHZlcmlmaWNhdGlvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE0NgorIywgYy1mb3JtYXQKK21zZ2lkICJWZXJpZmljYXRpb24gb24gcGFja2FnZSAlcyBmYWlsZWQhIgorbXNnc3RyICLQn9Cw0LrQtdGCICVzINC90LUg0L/RgNC+0YXQvtC00LjRgiDQv9GA0L7QstC10YDQutGDINC/0L7QtNC70LjQvdC90L7RgdGC0LghIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE0OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVmVyaWZpY2F0aW9uIG9uIHBhY2thZ2UgJXMgZmFpbGVkLFxuIgorImJ1dCBpbnN0YWxsaW5nIGFueXdheSBhcyB5b3UgcmVxdWVzdGVkLlxuIgorbXNnc3RyICIiCisi0J/QsNC60LXRgiAlcyDQvdC1INC/0YDQvtGF0L7QtNC40YIg0L/RgNC+0LLQtdGA0LrRgyDQv9C+0LTQu9C40L3QvdC+0YHRgtC4LFxuIgorItC90L4g0L/QviDQstCw0YjQtdC80YMg0YPQutCw0LfQsNC90LjRjiDQstGB0ZEg0YDQsNCy0L3QviDQsdGD0LTQtdGCINGD0YHRgtCw0L3QvtCy0LvQtdC9LlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICJwYXNzZWRcbiIKK21zZ3N0ciAi0L/RgNC+0LnQtNC10L3QsFxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE2NSBkcGtnLWRlYi9pbmZvLmM6ODEKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHRlbXBvcmFyeSBkaXJlY3RvcnkiCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0YHQvtC30LTQsNGC0Ywg0LLRgNC10LzQtdC90L3Ri9C5INC60LDRgtCw0LvQvtCzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjIwNQorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlICVzIGhhcyB0b28gbWFueSBDb25mbGljdHMvUmVwbGFjZXMgcGFpcnMiCittc2dzdHIgItC/0LDQutC10YIgJXMg0YHQvtC00LXRgNC20LjRgiDRgdC70LjRiNC60L7QvCDQvNC90L7Qs9C+IENvbmZsaWN0cy9SZXBsYWNlcyDQv9Cw0YAiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MjQzCisjLCBjLWZvcm1hdAorbXNnaWQgIm9sZCB2ZXJzaW9uIG9mIHBhY2thZ2UgaGFzIG92ZXJseS1sb25nIGluZm8gZmlsZSBuYW1lIHN0YXJ0aW5nIGAlLjI1MHMnIgorbXNnc3RyICIiCisi0YHRgtCw0YDQsNGPINCy0LXRgNGB0LjRjyDQv9Cw0LrQtdGC0LAg0YHQvtC00LXRgNC20LjRgiDQuNC90YTQvtGA0LzQsNGG0LjQvtC90L3Ri9C5INGE0LDQudC7INGBINC+0YfQtdC90Ywg0LTQu9C40L3QvdGL0Lwg0LjQvNC10L3QtdC8LCAiCisi0L3QsNGH0LjQvdCw0Y7RidC40LzRgdGPINGBIMKrJS4yNTBzwrsiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MjgxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgb2Jzb2xldGUgaW5mbyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGD0LTQsNC70LjRgtGMINGD0YHRgtCw0YDQtdCy0YjQuNC5INC40L3RhNC+0YDQvNCw0YbQuNC+0L3QvdGL0Lkg0YTQsNC50LsgwqslLjI1MHPCuyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyODYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgKHN1cHBvc2VkKSBuZXcgaW5mbyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisi0L3QtSDRg9C00LDQu9C+0YHRjCDRg9GB0YLQsNC90L7QstC40YLRjCjQv9GA0LXQtNC/0L7Qu9C+0LbQuNGC0LXQu9GM0L3Qvikg0L3QvtCy0YvQuSDQuNC90YTQvtGA0LzQsNGG0LjQvtC90L3Ri9C5INGE0LDQudC7IMKrJS4yNTBzwrsiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6Mjk2Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gdGVtcCBjb250cm9sIGRpcmVjdG9yeSIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQvtGC0LrRgNGL0YLRjCDQstGA0LXQvNC10L3QvdGL0Lkg0LrQsNGC0LDQu9C+0LMg0YPQv9GA0LDQstC70Y/RjtGJ0LXQuSDQuNC90YTQvtGA0LzQsNGG0LjQuCIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMDcKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBjb250YWlucyBvdmVybHktbG9uZyBjb250cm9sIGluZm8gZmlsZSBuYW1lIChzdGFydGluZyBgJS41MHMnKSIKK21zZ3N0ciAiIgorItC/0LDQutC10YIg0YHQvtC00LXRgNC20LjRgiDQvtGH0LXQvdGMINC00LvQuNC90L3QvtC1INC40LzRjyDRhNCw0LnQu9CwINGD0L/RgNCw0LLQu9GP0Y7RidC10Lkg0LjQvdGE0L7RgNC80LDRhtC40LggKNC90LDRh9C40L3QsNC10YLRgdGPINGBICIKKyLCqyUuNTBzwrspIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMxNAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGNvbnRyb2wgaW5mbyBjb250YWluZWQgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICLRg9C/0YDQsNCy0LvRj9GO0YnQsNGPINC40L3RhNC+0YDQvNCw0YbQuNGPINC/0LDQutC10YLQsCDRgdC+0LTQtdGA0LbQuNGCINC60LDRgtCw0LvQvtCzIMKrJS4yNTBzwrsiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzE2CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgY29udHJvbCBpbmZvIHJtZGlyIG9mIGAlLjI1MHMnIGRpZG4ndCBzYXkgbm90IGEgZGlyIgorbXNnc3RyICIiCisicm1kaXIg0L/RgNC4INC/0L7Qv9GL0YLQutC1INGD0LTQsNC70LjRgtGMINGD0L/RgNCw0LLQu9GP0Y7RidGD0Y4g0LjQvdGE0L7RgNC80LDRhtC40Y4g0L/QsNC60LXRgtCwIMKrJS4yNTBzwrsg0L3QtSAiCisi0YPRgtCy0LXRgNC20LTQsNC10YIsINGH0YLQviDRjdGC0L4g0L3QtSDQsdGL0LvQviDQutCw0YLQsNC70L7Qs9C+0LwiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzI2CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgJXMgY29udGFpbmVkIGxpc3QgYXMgaW5mbyBmaWxlIgorbXNnc3RyICLQv9Cw0LrQtdGCICVzINGB0L7QtNC10YDQttC40YIg0LIg0LrQsNGH0LXRgdGC0LLQtSDQuNC90YTQvtGA0LzQsNGG0LjQvtC90L3QvtCz0L4g0YTQsNC50LvQsCDRgdC/0LjRgdC+0LoiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzMzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyBpbmZvIGZpbGUgYCUuMjUwcycgYXMgYCUuMjUwcyciCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L/QtdGA0LXQuNC80LXQvdC+0LLQsNGC0Ywg0L3QvtCy0YvQuSDQuNC90YTQvtGA0LzQsNGG0LjQvtC90L3Ri9C5INGE0LDQudC7IMKrJS4yNTBzwrsg0LIgwqslLjI1MHPCuyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozNDkgc3JjL3JlbW92ZS5jOjE5OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGVsZXRlIGNvbnRyb2wgaW5mbyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGD0LTQsNC70LjRgtGMINGE0LDQudC7INGD0L/RgNCw0LLQu9GP0Y7RidC10Lkg0LjQvdGE0L7RgNC80LDRhtC40LggwqslLjI1MHPCuyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo0MTEKK21zZ2lkICJjYW5ub3QgYWNjZXNzIGFyY2hpdmUiCittc2dzdHIgItC90LXRgiDQtNC+0YHRgtGD0L/QsCDQuiDQsNGA0YXQuNCy0YMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDMzCisjLCBmdXp6eQorI3wgbXNnaWQgImNvbnRyb2wgaW5mb3JtYXRpb24gbGVuZ3RoIgorbXNnaWQgInBhY2thZ2UgY29udHJvbCBpbmZvcm1hdGlvbiBleHRyYWN0aW9uIgorbXNnc3RyICLQtNC70LjQvdCwINGD0L/RgNCw0LLQu9GP0Y7RidC10Lkg0LjQvdGE0L7RgNC80LDRhtC40LgiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDYwCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlY29yZGVkIGluZm8gYWJvdXQgJXMgZnJvbSAlcy5cbiIKK21zZ3N0ciAi0JfQsNC/0LjRgdCw0L3QsCDQuNC90YTQvtGA0LzQsNGG0LjRjyDQviDQv9Cw0LrQtdGC0LUgJXMg0LjQtyDRhNCw0LnQu9CwICVzLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjQ2OAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGFyY2hpdGVjdHVyZSAoJXMpIGRvZXMgbm90IG1hdGNoIHN5c3RlbSAoJXMpIgorbXNnc3RyICLQsNGA0YXQuNGC0LXQutGC0YPRgNCwINC/0LDQutC10YLQsCAoJXMpINC90LUg0YHQvtC+0YLQstC10YLRgdGC0LLRg9C10YIg0LDRgNGF0LjRgtC10LrRgtGD0YDQtSDRgdC40YHRgtC10LzRiyAoJXMpIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjUyMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogcmVnYXJkaW5nICVzIGNvbnRhaW5pbmcgJXMsIHByZS1kZXBlbmRlbmN5IHByb2JsZW06XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiDQvdC1INCy0YvQv9C+0LvQvdC10L3RiyDQvtCx0Y/Qt9Cw0YLQtdC70YzQvdGL0LUg0YPRgdC70L7QstC40Y8g0YPRgdGC0LDQvdC+0LLQutC4INC/0LDQutC10YLQsCAlcyDQuNC3INGE0LDQudC70LAgJXM6XG4iCisiJXMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTI2CisjLCBjLWZvcm1hdAorbXNnaWQgInByZS1kZXBlbmRlbmN5IHByb2JsZW0gLSBub3QgaW5zdGFsbGluZyAlLjI1MHMiCittc2dzdHIgItC90LUg0LLRi9C/0L7Qu9C90LXQvdGLINC/0YDQtdC00LLQsNGA0LjRgtC10LvRjNC90YvQtSDRg9GB0LvQvtCy0LjRjywg0L/QsNC60LXRgiAlLjI1MHMg0L3QtSDQsdGD0LTQtdGCINGD0YHRgtCw0L3QvtCy0LvQtdC9IgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjUyNworbXNnaWQgImlnbm9yaW5nIHByZS1kZXBlbmRlbmN5IHByb2JsZW0hIgorbXNnc3RyICLQuNCz0L3QvtGA0LjRgNGD0Y7RgtGB0Y8g0L/RgNC10LTQstCw0YDQuNGC0LXQu9GM0L3Ri9C1INGD0YHQu9C+0LLQuNGPINGD0YHRgtCw0L3QvtCy0LrQuCEiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTQzCisjLCBjLWZvcm1hdAorbXNnaWQgIlByZXBhcmluZyB0byByZXBsYWNlICVzICVzICh1c2luZyAlcykgLi4uXG4iCittc2dzdHIgItCf0L7QtNCz0L7RgtC+0LLQutCwINC6INC30LDQvNC10L3QtSDQv9Cw0LrQtdGC0LAgJXMgJXMgKNC40YHQv9C+0LvRjNC30YPQtdGC0YHRjyDRhNCw0LnQuyAlcykgLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIlVucGFja2luZyAlcyAoZnJvbSAlcykgLi4uXG4iCittc2dzdHIgItCg0LDRgdC/0LDQutC+0LLRi9Cy0LDQtdGC0YHRjyDQv9Cw0LrQtdGCICVzICjQuNC3INGE0LDQudC70LAgJXMpLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTgwCisjLCBjLWZvcm1hdAorbXNnaWQgIm5hbWUgb2YgY29uZmZpbGUgKHN0YXJ0aW5nIGAlLjI1MHMnKSBpcyB0b28gbG9uZyAoPiVkIGNoYXJhY3RlcnMpIgorbXNnc3RyICLQuNC80Y8gY29uZmZpbGUgKNC90LDRh9C40L3QsNC10YLRgdGPINGBIMKrJS4yNTBzwrspINGB0LvQuNGI0LrQvtC8INC00LvQuNC90L3QvtC1ICg+JWQg0YHQuNC80LLQvtC70L7QsikiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjMzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDcxCisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWQgZXJyb3IgaW4gJS4yNTBzIgorbXNnc3RyICLQvtGI0LjQsdC60LAg0YfRgtC10L3QuNGPINGE0LDQudC70LAgJS4yNTBzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjYzNQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nICUuMjUwcyIKK21zZ3N0ciAi0L7RiNC40LHQutCwINC/0YDQuCDQt9Cw0LrRgNGL0YLQuNC4INGE0LDQudC70LAgJS4yNTBzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjYzNworIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciB0cnlpbmcgdG8gb3BlbiAlLjI1MHMiCittc2dzdHIgItC+0YjQuNCx0LrQsCDQv9GA0Lgg0L/QvtC/0YvRgtC60LUg0L7RgtC60YDRi9GC0Ywg0YTQsNC50LsgJS4yNTBzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjY3OAorIywgYy1mb3JtYXQKK21zZ2lkICJEZS1jb25maWd1cmluZyAlcywgdG8gYWxsb3cgcmVtb3ZhbCBvZiAlcyAuLi5cbiIKK21zZ3N0ciAi0JTQtdC60L7QvdGE0LjQs9GD0YDQsNGG0LjRjyAlcywg0YfRgtC+0LHRiyDQvNC+0LbQvdC+INCx0YvQu9C+INGD0LTQsNC70LjRgtGMICVzIC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjY4MQorIywgYy1mb3JtYXQKK21zZ2lkICJEZS1jb25maWd1cmluZyAlcyAuLi5cbiIKK21zZ3N0ciAi0JTQtdC60L7QvdGE0LjQs9GD0YDQsNGG0LjRjyAlcyAuLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo3NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiVW5wYWNraW5nIHJlcGxhY2VtZW50ICUuMjUwcyAuLi5cbiIKK21zZ3N0ciAi0KDQsNGB0L/QsNC60L7QstGL0LLQsNC10YLRgdGPINC30LDQvNC10L3QsCDQtNC70Y8g0L/QsNC60LXRgtCwICUuMjUwcyAuLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NDAKKyMsIGZ1enp5CisjfCBtc2dpZCAiZHBrZy1kZWIgZmllbGQgZXh0cmFjdGlvbiIKK21zZ2lkICJwYWNrYWdlIGZpbGVzeXN0ZW0gYXJjaGl2ZSBleHRyYWN0aW9uIgorbXNnc3RyICLQuNC30LLQu9C10YfQtdC90LjQtSDQv9C+0LvRjyDRgSDQv9C+0LzQvtGJ0YzRjiBkcGtnLWRlYiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NTQKK21zZ2lkICJlcnJvciByZWFkaW5nIGRwa2ctZGViIHRhciBvdXRwdXQiCittc2dzdHIgItC+0YjQuNCx0LrQsCDRh9GC0LXQvdC40Y8g0LDRgNGF0LjQstCwIHRhciwg0LLQvtC30LLRgNCw0YnRkdC90L3QvtCz0L4gZHBrZy1kZWIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6ODU2Cittc2dpZCAiY29ycnVwdGVkIGZpbGVzeXN0ZW0gdGFyZmlsZSAtIGNvcnJ1cHRlZCBwYWNrYWdlIGFyY2hpdmUiCittc2dzdHIgItC/0L7QstGA0LXQttC00ZHQvdC90YvQuSDQsNGA0YXQuNCyINGE0LDQudC70L7QstC+0Lkg0YHQuNGB0YLQtdC80Ys6INC/0L7QstGA0LXQttC00ZHQvSDRhNCw0LnQuyDQv9Cw0LrQtdGC0LAiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6ODU5Cittc2dpZCAiZHBrZy1kZWI6IHphcCBwb3NzaWJsZSB0cmFpbGluZyB6ZXJvcyIKK21zZ3N0ciAiZHBrZy1kZWI6INGD0LTQsNC70LXQvdC40LUg0LLQvtC30LzQvtC20L3Ri9GFINC30LDQstC10YDRiNCw0Y7RidC40YUg0L3Rg9C70LXQuSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5MTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHN0YXQgb2xkIGZpbGUgJyUuMjUwcycgc28gbm90IGRlbGV0aW5nIGl0OiAlcyIKK21zZ3N0ciAiIgorItC90LUg0YPQtNCw0LvQvtGB0Ywg0L/QvtC70YPRh9C40YLRjCDQuNC90YTQvtGA0LzQsNGG0LjRjiDQviDRgdGC0LDRgNC+0Lwg0YTQsNC50LsgwqslLjI1MHPCuywg0L/QvtGN0YLQvtC80YMg0L3QtSDRg9C00LDQu9GP0LXQvCAiCisi0LXQs9C+OiAlcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSBvbGQgZGlyZWN0b3J5ICclLjI1MHMnOiAlcyIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRg9C00LDQu9C40YLRjCDRgdGC0LDRgNGL0Lkg0LrQsNGC0LDQu9C+0LMgwqslLjI1MHPCuzogJXMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTI4CisjLCBjLWZvcm1hdAorbXNnaWQgIm9sZCBjb25mZmlsZSAnJS4yNTBzJyB3YXMgYW4gZW1wdHkgZGlyZWN0b3J5IChhbmQgaGFzIG5vdyBiZWVuIGRlbGV0ZWQpIgorbXNnc3RyICLRgdGC0LDRgNGL0LkgY29uZmZpbGUgwqslLjI1MHPCuyDRj9Cy0LvRj9C10YLRgdGPINC/0YPRgdGC0YvQvCDQutCw0YLQsNC70L7Qs9C+0LwgKNC4INCx0YvQuyDRg9C00LDQu9GR0L0pIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjk3NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBvdGhlciBuZXcgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQv9C+0LvRg9GH0LjRgtGMINC40L3RhNC+0YDQvNCw0YbQuNGOINC+INC00YDRg9Cz0L7QvCDQvdC+0LLQvtC8INGE0LDQudC70LUgwqslLjI1MHPCuyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm9sZCBmaWxlICclLjI1MHMnIGlzIHRoZSBzYW1lIGFzIHNldmVyYWwgbmV3IGZpbGVzISAoYm90aCAnJS4yNTBzJyBhbmQgIgorIiclLjI1MHMnKSIKK21zZ3N0ciAiIgorItGB0YLQsNGA0YvQuSDRhNCw0LnQuyDCqyUuMjUwc8K7INGC0LDQutC+0Lkg0LbQtSDQutCw0Log0L3QtdGB0LrQvtC70YzQutC+INC90L7QstGL0YUg0YTQsNC50LvQvtCyISAowqslLjI1MHPCuyDQuCAiCisiwqslLjI1MHPCuykiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTAyNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2VjdXJlbHkgcmVtb3ZlIG9sZCBmaWxlICclLjI1MHMnOiAlcyIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQsdC10LfQvtC/0LDRgdC90L4g0YPQtNCw0LvQuNGC0Ywg0YHRgtCw0YDRi9C5INGE0LDQudC7IMKrJS4yNTBzwrs6ICVzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEyMDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiKE5vdGluZyBkaXNhcHBlYXJhbmNlIG9mICVzLCB3aGljaCBoYXMgYmVlbiBjb21wbGV0ZWx5IHJlcGxhY2VkLilcbiIKK21zZ3N0ciAiKNCf0LDQutC10YIgJXMg0L/QvtC70L3QvtGB0YLRjNGOINC30LDQvNC10L3RkdC9INC4INGE0LDQutGC0LjRh9C10YHQutC4INC40YHRh9C10LcuKVxuIgorCisjLiBUUkFOU0xBVE9SUzogVGhpcyBpcyB0aGUgaGVhZGVyIHRoYXQgYXBwZWFycyBvbiAnZHBrZy1xdWVyeSAtbCcuIFRoZQorIy4gKiBzdHJpbmcgc2hvdWxkIHJlbWFpbiB1bmRlciA4MCBjaGFyYWN0ZXJzLiBUaGUgdXBwZXJjYXNlIGxldHRlcnMgaW4KKyMuICogdGhlIHN0YXRlIHZhbHVlcyBkZW5vdGUgdGhlIGFiYnJldmlhdGVkIGxldHRlciB0aGF0IHdpbGwgYXBwZWFyIG9uCisjLiAqIHRoZSBmaXJzdCB0aHJlZSBjb2x1bW5zLCB3aGljaCBzaG91bGQgaWRlYWxseSBtYXRjaCB0aGUgRW5nbGlzaCBvbmUKKyMuICogKGUuZy4gUmVtb3ZlIOKGkiBzdXBSaW1laXgpLCBzZWUgZHBrZy1xdWVyeSgxKSBmb3IgZnVydGhlciBkZXRhaWxzLiBUaGUKKyMuICogdHJhbnNsYXRlZCBtZXNzYWdlIGNhbiB1c2UgYWRkaXRpb25hbCBsaW5lcyBpZiBuZWVkZWQuCisjOiBzcmMvcXVlcnljbWQuYzoxNDkKK21zZ2lkICIiCisiRGVzaXJlZD1Vbmtub3duL0luc3RhbGwvUmVtb3ZlL1B1cmdlL0hvbGRcbiIKKyJ8IFN0YXR1cz1Ob3QvSW5zdC9Db25mLWZpbGVzL1VucGFja2VkL2hhbEYtY29uZi9IYWxmLWluc3QvdHJpZy1hV2FpdC9UcmlnLSIKKyJwZW5kXG4iCisifC8gRXJyPz0obm9uZSkvUmVpbnN0LXJlcXVpcmVkIChTdGF0dXMsRXJyOiB1cHBlcmNhc2U9YmFkKVxuIgorbXNnc3RyICIiCisi0JbQtdC70LDQtdC80YvQuT3QvdC10LjQt9Cy0LXRgdGC0L3Qvlt1XS/Rg9GB0YLQsNC90L7QstC40YLRjFtpXS/Rg9C00LDQu9C40YLRjFtyXS/QstGL0YfQuNGB0YLQuNGC0YxbcF0v0LfQsNGE0LjQutGB0LjRgNC+0LLQsNGC0YwiCisiW2hdXG4iCisifCDQodC+0YHRgtC+0Y/QvdC40LU90L3QtVtuXS/Rg9GB0YLQsNC90L7QstC70LXQvVtpXS/QvdCw0YHRgtGA0L7QtdC9W2NdL9GA0LDRgdC/0LDQutC+0LLQsNC9W1VdL9GH0LDRgdGC0LjRh9C90L4g0L3QsNGB0YLRgNC+0LXQvSIKKyJbRl0vXG4iCisiICAgICAgICAgICAg0YfQsNGB0YLQuNGH0L3QviDRg9GB0YLQsNC90L7QstC70LXQvVtIXS90cmlnLWFXYWl0L1RyaWctcGVuZFxuIgorInwvINCe0YjQuNCx0LrQsD89KNC90LXRgikv0YLRgNC10LHRg9C10YLRgdGPINC/0LXRgNC10YPRgdGC0LDQvdC+0LLQutCwW1JdICjQstC10YDRhdC90LjQuSDRgNC10LPQuNGB0YLRgFxuIgorItCyINC/0L7Qu9GP0YUg0YHQvtGB0YLQvtGP0L3QuNGPINC4INC+0YjQuNCx0LrQuCDRg9C60LDQt9GL0LLQsNC10YIg0L3QsCDQvdC10L3QvtGA0LzQsNC70YzQvdGD0Y4g0YHQuNGC0YPQsNGG0LjRjilcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MTUzCittc2dpZCAiTmFtZSIKK21zZ3N0ciAi0JjQvNGPIgorCisjOiBzcmMvcXVlcnljbWQuYzoxNTMKK21zZ2lkICJWZXJzaW9uIgorbXNnc3RyICLQktC10YDRgdC40Y8iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjE1NAorbXNnaWQgIkRlc2NyaXB0aW9uIgorbXNnc3RyICLQntC/0LjRgdCw0L3QuNC1IgorCisjOiBzcmMvcXVlcnljbWQuYzoyNDYgc3JjL3F1ZXJ5Y21kLmM6NTExIHNyYy9zZWxlY3QuYzo3NQorIywgYy1mb3JtYXQKK21zZ2lkICJObyBwYWNrYWdlcyBmb3VuZCBtYXRjaGluZyAlcy5cbiIKK21zZ3N0ciAi0KjQsNCx0LvQvtC90YMgJXMg0L3QtSDRgdC+0L7RgtCy0LXRgtGB0YLQstGD0LXRgiDQvdC4INC+0LTQuNC9INC/0LDQutC10YIuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI3MworIywgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnNpb24gYnkgJXMgZnJvbTogJXNcbiIKK21zZ3N0ciAi0L7RgtC60LvQvtC90LXQvdC+ICVzINC40LcgJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6Mjc1CisjLCBjLWZvcm1hdAorbXNnaWQgImRpdmVyc2lvbiBieSAlcyB0bzogJXNcbiIKK21zZ3N0ciAi0L7RgtC60LvQvtC90LXQvdC+ICVzINCyICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI3OAorIywgYy1mb3JtYXQKK21zZ2lkICJsb2NhbCBkaXZlcnNpb24gZnJvbTogJXNcbiIKK21zZ3N0ciAi0LvQvtC60LDQu9GM0L3QvtC1INC+0YLQutC70L7QvdC10L3QuNC1INC40LcgJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6Mjc5CisjLCBjLWZvcm1hdAorbXNnaWQgImxvY2FsIGRpdmVyc2lvbiB0bzogJXNcbiIKK21zZ3N0ciAi0LvQvtC60LDQu9GM0L3QvtC1INC+0YLQutC70L7QvdC10L3QuNC1INCyICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjMwOQorbXNnaWQgIi0tc2VhcmNoIG5lZWRzIGF0IGxlYXN0IG9uZSBmaWxlIG5hbWUgcGF0dGVybiBhcmd1bWVudCIKK21zZ3N0ciAiIgorIi0tc2VhcmNoINGC0YDQtdCx0YPQtdGCINC30LDQtNCw0L3QuNGPINCyINC60LDRh9C10YHRgtCy0LUg0LDRgNCz0YPQvNC10L3RgtCwINGF0L7RgtGPINCx0Ysg0L7QtNC90L7Qs9C+INGI0LDQsdC70L7QvdCwINC40LzRkdC9ICIKKyLRhNCw0LnQu9C+0LIiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjM1MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiTm8gcGFja2FnZXMgZm91bmQgbWF0Y2hpbmcgJXMuXG4iCittc2dpZCAiJXM6IG5vIHBhdGggZm91bmQgbWF0Y2hpbmcgcGF0dGVybiAlcy5cbiIKK21zZ3N0ciAi0KjQsNCx0LvQvtC90YMgJXMg0L3QtSDRgdC+0L7RgtCy0LXRgtGB0YLQstGD0LXRgiDQvdC4INC+0LTQuNC9INC/0LDQutC10YIuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjM5MworIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlIGAlcycgaXMgbm90IGluc3RhbGxlZCBhbmQgbm8gaW5mbyBpcyBhdmFpbGFibGUuXG4iCittc2dzdHIgItCf0LDQutC10YIgwqslc8K7INC90LUg0YPRgdGC0LDQvdC+0LLQu9C10L0sINC40L3RhNC+0YDQvNCw0YbQuNGPINC+INC90ZHQvCDQvdC10LTQvtGB0YLRg9C/0L3QsC5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDAxCisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgYCVzJyBpcyBub3QgYXZhaWxhYmxlLlxuIgorbXNnc3RyICLQn9Cw0LrQtdGCIMKrJXPCuyDQvdC10LTQvtGB0YLRg9C/0LXQvS5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDEwIHNyYy9xdWVyeWNtZC5jOjU4NQorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlIGAlcycgaXMgbm90IGluc3RhbGxlZC5cbiIKK21zZ3N0ciAi0J/QsNC60LXRgiDCqyVzwrsg0L3QtSDRg9GB0YLQsNC90L7QstC70LXQvS5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDE4CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgYCVzJyBkb2VzIG5vdCBjb250YWluIGFueSBmaWxlcyAoISlcbiIKK21zZ3N0ciAi0J/QsNC60LXRgiDCqyVzwrsg0L3QtSDRgdC+0LTQtdGA0LbQuNGCINGE0LDQudC70L7QsiAoISlcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDI1CisjLCBjLWZvcm1hdAorbXNnaWQgImxvY2FsbHkgZGl2ZXJ0ZWQgdG86ICVzXG4iCittc2dzdHIgItC70L7QutCw0LvRjNC90L4g0L7RgtC60LvQvtC90ZHQvSDQsjogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDI4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgZGl2ZXJ0cyBvdGhlcnMgdG86ICVzXG4iCittc2dzdHIgItC/0LDQutC10YIg0L7RgtC60LvQvtC90Y/QtdGCINGE0LDQudC7INC00YDRg9Cz0L7Qs9C+INC/0LDQutC10YLQsCDQsiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJ0ZWQgYnkgJXMgdG86ICVzXG4iCittc2dzdHIgItC+0YLQutC70L7QvdC10L3QviDQv9Cw0LrQtdGC0L7QvCAlcyDQsiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0NTIKK21zZ2lkICIiCisiVXNlIGRwa2cgLS1pbmZvICg9IGRwa2ctZGViIC0taW5mbykgdG8gZXhhbWluZSBhcmNoaXZlIGZpbGVzLFxuIgorImFuZCBkcGtnIC0tY29udGVudHMgKD0gZHBrZy1kZWIgLS1jb250ZW50cykgdG8gbGlzdCB0aGVpciBjb250ZW50cy5cbiIKK21zZ3N0ciAiIgorItCU0LvRjyDQv9GA0L7QstC10YDQutC4INGE0LDQudC70L7QsiDQsNGA0YXQuNCy0L7QsiDQuNGB0L/QvtC70YzQt9GD0LnRgtC1INC60L7QvNCw0L3QtNGDIGRwa2cgLS1pbmZvIChkcGtnLWRlYiAtLSIKKyJpbmZvKSxcbiIKKyLQtNC70Y8g0LLRi9Cy0L7QtNCwINGB0L/QuNGB0LrQsCDRhNCw0LnQu9C+0LIg0LIg0L3QuNGFIC0tINC60L7QvNCw0L3QtNGDIGRwa2ctLWNvbnRlbnRzIChkcGtnLWRlYiAtLSIKKyJjb250ZW50cykuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjU3MAorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIHRha2VzIGF0IG1vc3QgdHdvIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS0lcyDQvNC+0LbQtdGCINC40LzQtdGC0Ywg0L3QtSDQsdC+0LvQtdC1INC00LLRg9GFINCw0YDQs9GD0LzQtdC90YLQvtCyIgorCisjOiBzcmMvcXVlcnljbWQuYzo1NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29udHJvbCBmaWxlIGNvbnRhaW5zICVjIgorbXNnc3RyICLRg9C/0YDQsNCy0LvRj9GO0YnQuNC5INGE0LDQudC7INGB0L7QtNC10YDQttC40YIgJWMiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjYwMAorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gJXMgcGFja2FnZSBtYW5hZ2VtZW50IHByb2dyYW0gcXVlcnkgdG9vbCB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICLQodC40YHRgtC10LzQsCDRg9C/0YDQsNCy0LvQtdC90LjRjyDQv9Cw0LrQtdGC0LDQvNC4IERlYmlhbiAlcywg0LLQtdGA0YHQuNGPINC40L3RgdGC0YDRg9C80LXQvdGC0LAg0L7Qv9GA0L7RgdCwICVzLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo2MTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJDb21tYW5kczpcbiIKKyN8ICIgIC1zfC0tc3RhdHVzIDxwYWNrYWdlPiAuLi4gICAgICAgIERpc3BsYXkgcGFja2FnZSBzdGF0dXMgZGV0YWlscy5cbiIKKyN8ICIgIC1wfC0tcHJpbnQtYXZhaWwgPHBhY2thZ2U+IC4uLiAgIERpc3BsYXkgYXZhaWxhYmxlIHZlcnNpb24gZGV0YWlscy5cbiIKKyN8ICIgIC1MfC0tbGlzdGZpbGVzIDxwYWNrYWdlPiAuLi4gICAgIExpc3QgZmlsZXMgYG93bmVkJyBieSBwYWNrYWdlKHMpLlxuIgorI3wgIiAgLWx8LS1saXN0IFs8cGF0dGVybj4gLi4uXSAgICAgICAgTGlzdCBwYWNrYWdlcyBjb25jaXNlbHkuXG4iCisjfCAiICAtV3wtLXNob3cgPHBhdHRlcm4+IC4uLiAgICAgICAgICBTaG93IGluZm9ybWF0aW9uIG9uIHBhY2thZ2UocykuXG4iCisjfCAiICAtU3wtLXNlYXJjaCA8cGF0dGVybj4gLi4uICAgICAgICBGaW5kIHBhY2thZ2Uocykgb3duaW5nIGZpbGUocykuXG4iCisjfCAiICAtY3wtLWNvbnRyb2wtcGF0aCA8cGFja2FnZT4gWzxmaWxlPl1cbiIKKyN8ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFByaW50IHBhdGggZm9yIHBhY2thZ2UgY29udHJvbCBmaWxlLlxuIgorI3wgIlxuIgorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1zfC0tc3RhdHVzIDxwYWNrYWdlPiAuLi4gICAgICAgIERpc3BsYXkgcGFja2FnZSBzdGF0dXMgZGV0YWlscy5cbiIKKyIgIC1wfC0tcHJpbnQtYXZhaWwgPHBhY2thZ2U+IC4uLiAgIERpc3BsYXkgYXZhaWxhYmxlIHZlcnNpb24gZGV0YWlscy5cbiIKKyIgIC1MfC0tbGlzdGZpbGVzIDxwYWNrYWdlPiAuLi4gICAgIExpc3QgZmlsZXMgYG93bmVkJyBieSBwYWNrYWdlKHMpLlxuIgorIiAgLWx8LS1saXN0IFs8cGF0dGVybj4gLi4uXSAgICAgICAgTGlzdCBwYWNrYWdlcyBjb25jaXNlbHkuXG4iCisiICAtV3wtLXNob3cgWzxwYXR0ZXJuPiAuLi5dICAgICAgICBTaG93IGluZm9ybWF0aW9uIG9uIHBhY2thZ2UocykuXG4iCisiICAtU3wtLXNlYXJjaCA8cGF0dGVybj4gLi4uICAgICAgICBGaW5kIHBhY2thZ2Uocykgb3duaW5nIGZpbGUocykuXG4iCisiICAtY3wtLWNvbnRyb2wtcGF0aCA8cGFja2FnZT4gWzxmaWxlPl1cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFByaW50IHBhdGggZm9yIHBhY2thZ2UgY29udHJvbCBmaWxlLlxuIgorIlxuIgorbXNnc3RyICIiCisi0JrQvtC80LDQvdC00Ys6XG4iCisiICAtc3wtLXN0YXR1cyA80LjQvNGPINC/0LDQutC10YLQsD4gLi4uICAgICAgICDQstGL0LLQtdGB0YLQuCDQuNC90YTQvtGA0LzQsNGG0LjRjiDQviDRgdC+0YHRgtC+0Y/QvdC40LggIgorItC/0LDQutC10YLQsC5cbiIKKyIgIC1wfC0tcHJpbnQtYXZhaWwgPNC40LzRjyDQv9Cw0LrQtdGC0LA+IC4uLiAgINCy0YvQstC10YHRgtC4INC40L3RhNC+0YDQvNCw0YbQuNGOINC+INC00L7RgdGC0YPQv9C90L7QuSDQstC10YDRgdC40LhcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgINC/0LDQutC10YLQsC5cbiIKKyIgIC1MfC0tbGlzdGZpbGVzIDzQuNC80Y8g0L/QsNC60LXRgtCwPiAuLi4gICAgINC/0LXRgNC10YfQuNGB0LvQuNGC0Ywg0YTQsNC50LvRiyxcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgINC/0YDQuNC90LDQtNC70LXQttCw0YnQuNC1INC/0LDQutC10YLRgyjQsNC8KS5cbiIKKyIgIC1sfC0tbGlzdCBbPNGI0LDQsdC70L7QvT4gLi4uXSAgICAgICAgICAgINC60YDQsNGC0LrQviDQv9C10YDQtdGH0LjRgdC70LjRgtGMINC/0LDQutC10YLRiy5cbiIKKyIgIC1XfC0tc2hvdyA80YjQsNCx0LvQvtC9PiAuLi4gICAgICAgICAgICAgINC/0L7QutCw0LfQsNGC0Ywg0LjQvdGE0L7RgNC80LDRhtC40Y4g0L4g0L/QsNC60LXRgtC1KNCw0YUpLlxuIgorIiAgLVN8LS1zZWFyY2ggPNGI0LDQsdC70L7QvT4gLi4uICAgICAgICAgICAg0L3QsNC50YLQuCDQv9Cw0LrQtdGCKNGLKSwg0YHQvtC00LXRgNC20LDRidC40LUg0YTQsNC50Lso0YspLlxuIgorIiAgLWN8LS1jb250cm9sLXBhdGggPNC40LzRjyDQv9Cw0LrQtdGC0LA+IFs80YTQsNC50Ls+XVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg0LLRi9Cy0LXRgdGC0Lgg0L/Rg9GC0Ywg0YPQv9GA0LDQstC70Y/RjtGJ0LXQs9C+INGE0LDQudC70LAgIgorItC/0LDQutC10YLQsC5cbiIKKyJcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjM2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hZG1pbmRpcj08ZGlyZWN0b3J5PiAgICAgICAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMuXG4iCisiICAtZnwtLXNob3dmb3JtYXQ9PGZvcm1hdD4gICAgICAgICBVc2UgYWx0ZXJuYXRpdmUgZm9ybWF0IGZvciAtLXNob3cuXG4iCisiXG4iCittc2dzdHIgIiIKKyLQn9Cw0YDQsNC80LXRgtGA0Ys6XG4iCisiICAtLWFkbWluZGlyPTzQutCw0YLQsNC70L7Qsz4gICAgICAgICAgICAgICAg0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMIDzQutCw0YLQsNC70L7Qsz4g0LLQvNC10YHRgtC+ICVzLlxuIgorIiAgLWZ8LS1zaG93Zm9ybWF0PTzRhNC+0YDQvNCw0YI+ICAgICAgICAgICAg0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMINC00YDRg9Cz0L7QuSDRhNC+0YDQvNCw0YIg0LTQu9GPIC0tIgorInNob3cuXG4iCisiXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjY0MiBkcGtnLWRlYi9tYWluLmM6MTEyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJGb3JtYXQgc3ludGF4OlxuIgorIiAgQSBmb3JtYXQgaXMgYSBzdHJpbmcgdGhhdCB3aWxsIGJlIG91dHB1dCBmb3IgZWFjaCBwYWNrYWdlLiBUaGUgZm9ybWF0XG4iCisiICBjYW4gaW5jbHVkZSB0aGUgc3RhbmRhcmQgZXNjYXBlIHNlcXVlbmNlcyBcXG4gKG5ld2xpbmUpLCBcXHIgKGNhcnJpYWdlXG4iCisiICByZXR1cm4pIG9yIFxcXFwgKHBsYWluIGJhY2tzbGFzaCkuIFBhY2thZ2UgaW5mb3JtYXRpb24gY2FuIGJlIGluY2x1ZGVkXG4iCisiICBieSBpbnNlcnRpbmcgdmFyaWFibGUgcmVmZXJlbmNlcyB0byBwYWNrYWdlIGZpZWxkcyB1c2luZyB0aGUgJHt2YXJbOyIKKyJ3aWR0aF19XG4iCisiICBzeW50YXguIEZpZWxkcyB3aWxsIGJlIHJpZ2h0LWFsaWduZWQgdW5sZXNzIHRoZSB3aWR0aCBpcyBuZWdhdGl2ZSBpbiAiCisid2hpY2hcbiIKKyIgIGNhc2UgbGVmdCBhbGlnbm1lbnQgd2lsbCBiZSB1c2VkLlxuIgorbXNnc3RyICIiCisi0KHQuNC90YLQsNC60YHQuNGBINC+0L/QuNGB0LDQvdC40Y8g0YTQvtGA0LzQsNGC0LA6XG4iCisiICDQpNC+0YDQvNCw0YIg0L7Qv9C40YHRi9Cy0LDQtdGC0YHRjyDRgdGC0YDQvtC60L7QuSwg0LrQvtGC0L7RgNCw0Y8g0LHRg9C00LXRgiDQstGL0LLQtdC00LXQvdCwINC+0LTQuNC9INGA0LDQtyDQtNC70Y8g0LrQsNC20LTQvtCz0L5cbiIKKyIgINC/0LDQutC10YLQsC4g0KTQvtGA0LzQsNGCINC80L7QttC10YIg0LLQutC70Y7Rh9Cw0YLRjCDRgdGC0LDQvdC00LDRgNGC0L3Ri9C1INC/0L7RgdC70LXQtNC+0LLQsNGC0LXQu9GM0L3QvtGB0YLQuCBcXG4gKNC60L7QvdC10YZcbiIKKyIgINGB0YLRgNC+0LrQuCksIFxcciAo0LLQvtC30LLRgNCw0YIg0LrQsNGA0LXRgtC60LgpINC40LvQuCBcXFxcICjQvtCx0YDQsNGC0L3QsNGPINC60L7RgdCw0Y8g0YfQtdGA0YLQsCkuICIKKyLQmNC90YTQvtGA0LzQsNGG0LjRj1xuIgorIiAg0L4g0L/QsNC60LXRgtC1INCy0LrQu9GO0YfQsNC10YLRgdGPINC/0YPRgtGR0Lwg0LLRgdGC0LDQstC60Lgg0LIg0YHRgtGA0L7QutGDINGB0YHRi9C70L7QuiDQvdCwINC/0L7Qu9GPINC/0LDQutC10YLQsCDQstC40LTQsFxuIgorIiAgJHvQv9C+0LvQtVs70YjQuNGA0LjQvdCwXX0uINCf0L7Qu9GPINCy0YvRgNCw0LLQvdC40LLQsNGO0YLRgdGPINC/0L4g0L/RgNCw0LLQvtC80YMg0LrRgNCw0Y4sINC10YHQu9C4INGI0LjRgNC40L3QsFxuIgorIiAg0L3QtdC+0YLRgNC40YbQsNGC0LXQu9GM0L3QsCDQuCDQv9C+INC70LXQstC+0LzRgyDQsiDQv9GA0L7RgtC40LLQvdC+0Lwg0YHQu9GD0YfQsNC1LlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo2NTYKK21zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IHF1ZXJ5aW5nIHBhY2thZ2VzLiIKK21zZ3N0ciAi0JjRgdC/0L7Qu9GM0LfRg9C50YLQtSDQv9Cw0YDQsNC80LXRgtGAIC0taGVscCDQtNC70Y8g0LLRi9Cy0L7QtNCwINGB0L/RgNCw0LLQutC4INC/0L4g0LfQsNC/0YDQvtGB0LDQvCDQv9Cw0LrQtdGC0L7Qsi4iCisKKyM6IHNyYy9yZW1vdmUuYzo4OAorIywgYy1mb3JtYXQKK21zZ2lkICJpZ25vcmluZyByZXF1ZXN0IHRvIHJlbW92ZSAlLjI1MHMgd2hpY2ggaXNuJ3QgaW5zdGFsbGVkLiIKK21zZ3N0ciAi0LjQs9C90L7RgNC40YDRg9C10YLRgdGPINC30LDQv9GA0L7RgSDQvdCwINGD0LTQsNC70LXQvdC40LUg0L3QtdGD0YHRgtCw0L3QvtCy0LvQtdC90L3QvtCz0L4g0L/QsNC60LXRgtCwICUuMjUwcy4iCisKKyM6IHNyYy9yZW1vdmUuYzo5NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiaWdub3JpbmcgcmVxdWVzdCB0byByZW1vdmUgJS4yNTBzLCBvbmx5IHRoZSBjb25maWdcbiIKKyIgZmlsZXMgb2Ygd2hpY2ggYXJlIG9uIHRoZSBzeXN0ZW0uIFVzZSAtLXB1cmdlIHRvIHJlbW92ZSB0aGVtIHRvby4iCittc2dzdHIgIiIKKyLQuNCz0L3QvtGA0LjRgNGD0LXRgtGB0Y8g0LfQsNC/0YDQvtGBINC90LAg0YPQtNCw0LvQtdC90LjQtSDQv9Cw0LrQtdGC0LAgJS4yNTBzLCDQvtGCINC60L7RgtC+0YDQvtCz0L5cbiIKKyIg0YHQvtGF0YDQsNC90LjQu9C40YHRjCDRgtC+0LvRjNC60L4g0YTQsNC50LvRiyDQvdCw0YHRgtGA0L7QudC60LguINCn0YLQvtCx0Ysg0YPQtNCw0LvQuNGC0Ywg0Lgg0YTQsNC50LvRi1xuIgorIiDQvdCw0YHRgtGA0L7QudC60LgsINC40YHQv9C+0LvRjNC30YPQudGC0LUgLS1wdXJnZS4iCisKKyM6IHNyYy9yZW1vdmUuYzoxMDMKK21zZ2lkICJUaGlzIGlzIGFuIGVzc2VudGlhbCBwYWNrYWdlIC0gaXQgc2hvdWxkIG5vdCBiZSByZW1vdmVkLiIKK21zZ3N0ciAiIgorItCt0YLQvtGCINC/0LDQutC10YIg0Y/QstC70Y/QtdGC0YHRjyDQv9Cw0LrQtdGC0L7QvCDQv9C10YDQstC+0Lkg0L3QtdC+0LHRhdC+0LTQuNC80L7RgdGC0Lgg0Lgg0L3QtSDQtNC+0LvQttC10L0g0LHRi9GC0Ywg0YPQtNCw0LvRkdC9LiIKKworIzogc3JjL3JlbW92ZS5jOjEyOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogZGVwZW5kZW5jeSBwcm9ibGVtcyBwcmV2ZW50IHJlbW92YWwgb2YgJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiDQt9Cw0LLQuNGB0LjQvNC+0YHRgtC4INC90LUg0L/QvtC30LLQvtC70Y/RjtGCINGD0LTQsNC70LjRgtGMINC/0LDQutC10YIgJXM6XG4iCisiJXMiCisKKyM6IHNyYy9yZW1vdmUuYzoxMzAKK21zZ2lkICJkZXBlbmRlbmN5IHByb2JsZW1zIC0gbm90IHJlbW92aW5nIgorbXNnc3RyICLQv9GA0L7QsdC70LXQvNGLINC30LDQstC40YHQuNC80L7RgdGC0LXQuSAtLSDQvdC1INGD0LTQsNC70Y/QtdGC0YHRjyIKKworIzogc3JjL3JlbW92ZS5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogJXM6IGRlcGVuZGVuY3kgcHJvYmxlbXMsIGJ1dCByZW1vdmluZyBhbnl3YXkgYXMgeW91IHJlcXVlc3RlZDpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiDQuNC80LXRjtGC0YHRjyDQv9GA0L7QsdC70LXQvNGLINGBINC30LDQstC40YHQuNC80L7RgdGC0Y/QvNC4LCDQvdC+INC/0L4g0LLQsNGI0LXQvNGDINGD0LrQsNC30LDQvdC40Y5cbiIKKyLQvtC9INCy0YHRkSDRgNCw0LLQvdC+INCx0YPQtNC10YIg0YPQtNCw0LvRkdC9OlxuIgorIiVzIgorCisjOiBzcmMvcmVtb3ZlLmM6MTQyCittc2dpZCAiIgorIlBhY2thZ2UgaXMgaW4gYSB2ZXJ5IGJhZCBpbmNvbnNpc3RlbnQgc3RhdGUgLSB5b3Ugc2hvdWxkXG4iCisiIHJlaW5zdGFsbCBpdCBiZWZvcmUgYXR0ZW1wdGluZyBhIHJlbW92YWwuIgorbXNnc3RyICIiCisi0J/QsNC60LXRgiDQsNCx0YHQvtC70Y7RgtC90L4g0L3QtdGA0LDQsdC+0YLQvtGB0L/QvtGB0L7QsdC10L0gLS0g0L/QtdGA0LXQtCDRg9C00LDQu9C10L3QuNC10Lwg0LXQs9C+XG4iCisiINGB0LvQtdC00YPQtdGCINC/0LXRgNC10YPRgdGC0LDQvdC+0LLQuNGC0YwuIgorCisjOiBzcmMvcmVtb3ZlLmM6MTQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIldvdWxkIHJlbW92ZSBvciBwdXJnZSAlcyAuLi5cbiIKK21zZ3N0ciAi0J/QsNC60LXRgiAlcyDQsdGD0LTQtdGCINGD0LTQsNC70ZHQvSDQuNC70Lgg0LLRi9GH0LjRidC10L0gLi4uXG4iCisKKyM6IHNyYy9yZW1vdmUuYzoxNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVtb3ZpbmcgJXMgLi4uXG4iCittc2dzdHIgItCj0LTQsNC70Y/QtdGC0YHRjyDQv9Cw0LrQtdGCICVzIC4uLlxuIgorCisjOiBzcmMvcmVtb3ZlLmM6Mjc1IHNyYy9yZW1vdmUuYzozNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIndoaWxlIHJlbW92aW5nICUuMjUwcywgdW5hYmxlIHRvIHJlbW92ZSBkaXJlY3RvcnkgJyUuMjUwcyc6ICVzIC0gZGlyZWN0b3J5ICIKKyJtYXkgYmUgYSBtb3VudCBwb2ludD8iCittc2dzdHIgIiIKKyLQv9GA0Lgg0YPQtNCw0LvQtdC90LjQuCDQv9Cw0LrQtdGC0LAgJS4yNTBzINC90LUg0YPQtNCw0LvQvtGB0Ywg0YPQtNCw0LvQuNGC0Ywg0LrQsNGC0LDQu9C+0LMgwqslLjI1MHPCuzogJXMgLS0gIgorItCy0L7Qt9C80L7QttC90L4sINC+0L0g0Y/QstC70Y/QtdGC0YHRjyDRgtC+0YfQutC+0Lkg0LzQvtC90YLQuNGA0L7QstCw0L3QuNGPINGE0LDQudC70L7QstC+0Lkg0YHQuNGB0YLQtdC80Ys/IgorCisjOiBzcmMvcmVtb3ZlLmM6Mjg5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWN1cmVseSByZW1vdmUgJyUuMjUwcyciCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LHQtdC30L7Qv9Cw0YHQvdC+INGD0LTQsNC70LjRgtGMIMKrJS4yNTBzwrsiCisKKyM6IHNyYy9yZW1vdmUuYzozNjEKKyMsIGMtZm9ybWF0Cittc2dpZCAid2hpbGUgcmVtb3ZpbmcgJS4yNTBzLCBkaXJlY3RvcnkgJyUuMjUwcycgbm90IGVtcHR5IHNvIG5vdCByZW1vdmVkLiIKK21zZ3N0ciAi0L/RgNC4INGD0LTQsNC70LXQvdC40LggJS4yNTBzINC90LUg0L/Rg9GB0YLQvtC5INC60LDRgtCw0LvQvtCzIMKrJS4yNTBzwrsg0L3QtSDRg9C00LDQu9GR0L0uIgorCisjOiBzcmMvcmVtb3ZlLmM6MzgzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW5ub3QgcmVtb3ZlIGAlLjI1MHMnIgorbXNnaWQgImNhbm5vdCByZW1vdmUgJyUuMjUwcyciCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0YPQtNCw0LvQuNGC0YwgwqslLjI1MHPCuyIKKworIzogc3JjL3JlbW92ZS5jOjQwOQorIywgYy1mb3JtYXQKK21zZ2lkICJQdXJnaW5nIGNvbmZpZ3VyYXRpb24gZmlsZXMgZm9yICVzIC4uLlxuIgorbXNnc3RyICLQktGL0YfQuNGJ0LDRjtGC0YHRjyDRhNCw0LnQu9GLINC90LDRgdGC0YDQvtC50LrQuCDQv9Cw0LrQtdGC0LAgJXMgLi4uXG4iCisKKyM6IHNyYy9yZW1vdmUuYzo0NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlbW92ZSBvbGQgY29uZmlnIGZpbGUgYCUuMjUwcycgKD0gYCUuMjUwcycpIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGD0LTQsNC70LjRgtGMINGB0YLQsNGA0YvQuSDRhNCw0LnQuyDQvdCw0YHRgtGA0L7QudC60LggwqslLjI1MHPCuyAoPSDCqyUuMjUwc8K7KSIKKworIzogc3JjL3JlbW92ZS5jOjQ3NAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVhZCBjb25maWcgZmlsZSBkaXIgYCUuMjUwcycgKGZyb20gYCUuMjUwcycpIgorbXNnc3RyICIiCisi0L3QtSDRg9C00LDQu9C+0YHRjCDQvtGC0LrRgNGL0YLRjCDQtNC70Y8g0YfRgtC10L3QuNGPINC60LDRgtCw0LvQvtCzINGE0LDQudC70L7QsiDQvdCw0YHRgtGA0L7QudC60LggwqslLjI1MHPCuyAo0YPQutCw0LfQsNC9INCyICIKKyLCqyUuMjUwc8K7KSIKKworIzogc3JjL3JlbW92ZS5jOjUxMAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVtb3ZlIG9sZCBiYWNrdXAgY29uZmlnIGZpbGUgYCUuMjUwcycgKG9mIGAlLjI1MHMnKSIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRg9C00LDQu9C40YLRjCDCqyUuMjUwc8K7LCDRgNC10LfQtdGA0LLQvdGD0Y4g0LrQvtC/0LjRjiDRhNCw0LnQu9CwINC90LDRgdGC0YDQvtC50LrQuCDCqyUuMjUwc8K7IgorCisjOiBzcmMvcmVtb3ZlLmM6NTY4Cittc2dpZCAiY2Fubm90IHJlbW92ZSBvbGQgZmlsZXMgbGlzdCIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRg9C00LDQu9C40YLRjCDRgdGC0LDRgNGL0Lkg0YHQv9C40YHQvtC6INGE0LDQudC70L7QsiIKKworIzogc3JjL3JlbW92ZS5jOjU3NAorbXNnaWQgImNhbid0IHJlbW92ZSBvbGQgcG9zdHJtIHNjcmlwdCIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRg9C00LDQu9C40YLRjCDRgdGC0LDRgNGL0Lkg0YHQutGA0LjQv9GCLCDQstGL0L/QvtC70L3Rj9C10LzRi9C5INC/0L7RgdC70LUg0YPQtNCw0LvQtdC90LjRjyIKKworIzogc3JjL3NlbGVjdC5jOjExNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVvZiBpbiBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZCIKK21zZ3N0ciAi0L3QtdC+0LbQuNC00LDQvdC90YvQuSDQutC+0L3QtdGGINGE0LDQudC70LAg0LIg0LjQvNC10L3QuCDQv9Cw0LrQtdGC0LAg0LIg0YHRgtGA0L7QutC1ICVkIgorCisjOiBzcmMvc2VsZWN0LmM6MTE2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGxpbmUgaW4gcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQiCittc2dzdHIgItC90LXQvtC20LjQtNCw0L3QvdGL0Lkg0LrQvtC90LXRhiDRgdGC0YDQvtC60Lgg0LIg0LjQvNC10L3QuCDQv9Cw0LrQtdGC0LAg0LIg0YHRgtGA0L7QutC1ICVkIgorCisjOiBzcmMvc2VsZWN0LmM6MTIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW9mIGFmdGVyIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICLQvdC10L7QttC40LTQsNC90L3Ri9C5INC60L7QvdC10YYg0YTQsNC50LvQsCDQv9C+0YHQu9C1INC40LzQtdC90Lgg0L/QsNC60LXRgtCwINCyINGB0YLRgNC+0LrQtSAlZCIKKworIzogc3JjL3NlbGVjdC5jOjEyMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBsaW5lIGFmdGVyIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICLQvdC10L7QttC40LTQsNC90L3Ri9C5INC60L7QvdC10YYg0YHRgtGA0L7QutC4INC/0L7RgdC70LUg0LjQvNC10L3QuCDQv9Cw0LrQtdGC0LAg0LIg0YHRgtGA0L7QutC1ICVkIgorCisjOiBzcmMvc2VsZWN0LmM6MTM2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZGF0YSBhZnRlciBwYWNrYWdlIGFuZCBzZWxlY3Rpb24gYXQgbGluZSAlZCIKK21zZ3N0ciAi0LvQuNGI0L3QuNC1INGB0LjQvNCy0L7Qu9GLINC/0L7RgdC70LUg0LjQvNC10L3QuCDQv9Cw0LrQtdGC0LAg0Lgg0LbQtdC70LDQtdC80L7Qs9C+INGB0L7RgdGC0L7Rj9C90LjRjyDQsiDRgdGC0YDQvtC60LUgJWQiCisKKyM6IHNyYy9zZWxlY3QuYzoxMzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWxsZWdhbCBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZDogJS4yNTBzIgorbXNnc3RyICLQvdC10LTQvtC/0YPRgdGC0LjQvNC+0LUg0LjQvNGPINC/0LDQutC10YLQsCDQsiDRgdGC0YDQvtC60LUgJWQ6ICUuMjUwcyIKKworIzogc3JjL3NlbGVjdC5jOjE0MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIHdhbnRlZCBzdGF0dXMgYXQgbGluZSAlZDogJS4yNTBzIgorbXNnc3RyICLQvdC10LrQvtGA0YDQtdC60YLQvdC+0LUg0LbQtdC70LDQtdC80L7QtSDRgdC+0YHRgtC+0Y/QvdC40LUg0LIg0YHRgtGA0L7QutC1ICVkOiAlLjI1MHMiCisKKyM6IHNyYy9zZWxlY3QuYzoxNDkKK21zZ2lkICJyZWFkIGVycm9yIG9uIHN0YW5kYXJkIGlucHV0IgorbXNnc3RyICLQvtGI0LjQsdC60LAg0YfRgtC10L3QuNGPINGB0YLQsNC90LTQsNGA0YLQvdC+0LPQviDQv9C+0YLQvtC60LAg0LLQstC+0LTQsCIKKworIzogc3JjL3N0YXRjbWQuYzo1MgorIywgZnV6enkKKyN8IG1zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IHF1ZXJ5aW5nIHBhY2thZ2VzLiIKK21zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IG92ZXJyaWRpbmcgZmlsZSBzdGF0IGluZm9ybWF0aW9uLiIKK21zZ3N0ciAi0JjRgdC/0L7Qu9GM0LfRg9C50YLQtSDQv9Cw0YDQsNC80LXRgtGAIC0taGVscCDQtNC70Y8g0LLRi9Cy0L7QtNCwINGB0L/RgNCw0LLQutC4INC/0L4g0LfQsNC/0YDQvtGB0LDQvCDQv9Cw0LrQtdGC0L7Qsi4iCisKKyM6IHNyYy9zdGF0Y21kLmM6NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvcHlyaWdodCAoQykgMjAwMCwgMjAwMSBXaWNoZXJ0IEFra2VybWFuLlxuIgorIkNvcHlyaWdodCAoQykgMjAwNi0yMDA5IEd1aWxsZW0gSm92ZXIuXG4iCittc2dzdHIgIiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsIDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDYtMjAwOSBHdWlsbGVtIEpvdmVyLlxuIgorCisjOiBzcmMvc3RhdGNtZC5jOjgxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC0tYWRkIDxvd25lcj4gPGdyb3VwPiA8bW9kZT4gPGZpbGU+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkIGEgbmV3IGVudHJ5IGludG8gdGhlIGRhdGFiYXNlLlxuIgorIiAgLS1yZW1vdmUgPGZpbGU+ICAgICAgICAgIHJlbW92ZSBmaWxlIGZyb20gdGhlIGRhdGFiYXNlLlxuIgorIiAgLS1saXN0IFs8Z2xvYi1wYXR0ZXJuPl0gIGxpc3QgY3VycmVudCBvdmVycmlkZXMgaW4gdGhlIGRhdGFiYXNlLlxuIgorIlxuIgorbXNnc3RyICIiCisi0JrQvtC80LDQvdC00Ys6XG4iCisiICAtLWFkZCA80LLQu9Cw0LTQtdC70LXRhj4gPNCz0YDRg9C/0L/QsD4gPNGA0LXQttC40Lw+IDzRhNCw0LnQuz5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICDQtNC+0LHQsNCy0LjRgtGMINC90L7QstGD0Y4g0LfQsNC/0LjRgdGMINCyINCx0LDQt9GDINC00LDQvdC90YvRhS5cbiIKKyIgIC0tcmVtb3ZlIDzRhNCw0LnQuz4gICAgICAgICAg0YPQtNCw0LvQuNGC0Ywg0YTQsNC50Lsg0LjQtyDQsdCw0LfRiyDQtNCw0L3QvdGL0YUuXG4iCisiICAtLWxpc3QgWzxnbG9iLdGI0LDQsdC70L7QvT5dICAg0YHQv9C40YHQvtC6INC40LzQtdGO0YnQuNGF0YHRjyDQt9Cw0LzQtdGJ0LXQvdC40Lkg0LIg0LHQsNC30LUg0LTQsNC90L3Ri9GFLlxuIgorIlxuIgorCisjOiBzcmMvc3RhdGNtZC5jOjg5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIHNldCB0aGUgZGlyZWN0b3J5IHdpdGggdGhlIHN0YXRvdmVycmlkZSBmaWxlLlxuIgorIiAgLS11cGRhdGUgICAgICAgICAgICAgICAgIGltbWVkaWF0ZWx5IHVwZGF0ZSBmaWxlIHBlcm1pc3Npb25zLlxuIgorIiAgLS1mb3JjZSAgICAgICAgICAgICAgICAgIGZvcmNlIGFuIGFjdGlvbiBldmVuIGlmIGEgc2FuaXR5IGNoZWNrIGZhaWxzLlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHF1aWV0IG9wZXJhdGlvbiwgbWluaW1hbCBvdXRwdXQuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorbXNnc3RyICIiCisi0J/QsNGA0LDQvNC10YLRgNGLOlxuIgorIiAgLS1hZG1pbmRpciA80LrQsNGC0LDQu9C+0LM+ICAgICDRg9C60LDQt9Cw0YLRjCDQutCw0YLQsNC70L7QsyDRgSDRhNCw0LnQu9C+0Lwgc3RhdG92ZXJyaWRlLlxuIgorIiAgLS11cGRhdGUgICAgICAgICAgICAgICAgINC90LXQvNC10LTQu9C10L3QvdC+INC+0LHQvdC+0LLQuNGC0Ywg0L/RgNCw0LLQsCDQvdCwINGE0LDQudC7LlxuIgorIiAgLS1mb3JjZSAgICAgICAgICAgICAgICAgINCy0YvQv9C+0LvQvdC40YLRjCDQtNC10LnRgdGC0LLQuNC1INC00LDQttC1INC10YHQu9C4INC+0LHRidC40Lkg0LrQvtC90YLRgNC+0LvRjFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgINC90LUg0L/RgNC+0YjRkdC7LlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgINC80LjQvdC40LzQsNC70YzQvdGL0Lkg0LLRi9Cy0L7QtCDQvdCwINGN0LrRgNCw0L0g0L/RgNC4INGA0LDQsdC+0YLQtS5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICDQstGL0LLQtdGB0YLQuCDRjdGC0L4g0YHQvtC+0LHRidC10L3QuNC1LlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgINCy0YvQstC10YHRgtC4INC90L7QvNC10YAg0LLQtdGA0YHQuNC4LlxuIgorIlxuIgorCisjOiBzcmMvc3RhdGNtZC5jOjExNgorbXNnaWQgInN0cmlwcGluZyB0cmFpbGluZyAvIgorbXNnc3RyICLRg9C00LDQu9GP0Y7RgtGB0Y8g0LrQvtC90LXRh9C90YvQtSAvIgorCisjOiBzcmMvc3RhdGNtZC5jOjIwNworbXNnaWQgImNhbm5vdCBvcGVuIG5ldyBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQvtGC0LrRgNGL0YLRjCDQvdC+0LLRi9C5INGE0LDQudC7IHN0YXRvdmVycmlkZSIKKworIzogc3JjL3N0YXRjbWQuYzoyMjIKK21zZ2lkICJlcnJvciByZW1vdmluZyBzdGF0b3ZlcnJpZGUtb2xkIgorbXNnc3RyICLQvtGI0LjQsdC60LAg0L/RgNC4INGD0LTQsNC70LXQvdC40Lggc3RhdG92ZXJyaWRlLW9sZCIKKworIzogc3JjL3N0YXRjbWQuYzoyMjQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBuZXcgc3RhdG92ZXJyaWRlLW9sZCIKK21zZ3N0ciAi0L7RiNC40LHQutCwINC/0YDQuCDRgdC+0LfQtNCw0L3QuNC4INC90L7QstC+0LPQviBzdGF0b3ZlcnJpZGUtb2xkIgorCisjOiBzcmMvc3RhdGNtZC5jOjIyNgorbXNnaWQgImVycm9yIGluc3RhbGxpbmcgbmV3IHN0YXRvdmVycmlkZSIKK21zZ3N0ciAi0L7RiNC40LHQutCwINC/0YDQuCDRg9GB0YLQsNC90L7QstC60LUg0L3QvtCy0L7Qs9C+IHN0YXRvdmVycmlkZSIKKworIzogc3JjL3N0YXRjbWQuYzoyNDYKK21zZ2lkICItLWFkZCBuZWVkcyBmb3VyIGFyZ3VtZW50cyIKK21zZ3N0ciAi0LTQu9GPIC0tYWRkINGC0YDQtdCx0YPQtdGC0YHRjyDRh9C10YLRi9GA0LUg0L/QsNGA0LDQvNC10YLRgNCwIgorCisjOiBzcmMvc3RhdGNtZC5jOjI1NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQW4gb3ZlcnJpZGUgZm9yICclcycgYWxyZWFkeSBleGlzdHMsIGJ1dCAtLWZvcmNlIHNwZWNpZmllZCBzbyB3aWxsIGJlICIKKyJpZ25vcmVkLiIKK21zZ3N0ciAiIgorItCX0LDQvNC10YnQtdC90LjQtSDQtNC70Y8gwqslc8K7INGD0LbQtSDRgdGD0YnQtdGB0YLQstGD0LXRgiwg0L3QviDRg9C60LDQt9Cw0L0g0L/QsNGA0LDQvNC10YLRgCAtLWZvcmNlLCDQv9C+0Y3RgtC+0LzRgyAiCisi0L7RiNC40LHQutCwINC40LPQvdC+0YDQuNGA0YPQtdGC0YHRjy4iCisKKyM6IHNyYy9zdGF0Y21kLmM6MjYwCisjLCBjLWZvcm1hdAorbXNnaWQgIkFuIG92ZXJyaWRlIGZvciAnJXMnIGFscmVhZHkgZXhpc3RzLCBhYm9ydGluZy4iCittc2dzdHIgItCX0LDQvNC10YnQtdC90LjQtSDQtNC70Y8gwqslc8K7INGD0LbQtSDRgdGD0YnQtdGB0YLQstGD0LXRgiwg0L7RgdGC0LDQvdC+0LIuIgorCisjOiBzcmMvc3RhdGNtZC5jOjI3MgorIywgYy1mb3JtYXQKK21zZ2lkICItLXVwZGF0ZSBnaXZlbiBidXQgJXMgZG9lcyBub3QgZXhpc3QiCittc2dzdHIgItGD0LrQsNC30LDQvSAtLXVwZGF0ZSwg0L3QviAlcyDQvdC1INGB0YPRidC10YHRgtCy0YPQtdGCIgorCisjOiBzcmMvc3RhdGNtZC5jOjI5NgorbXNnaWQgIk5vIG92ZXJyaWRlIHByZXNlbnQuIgorbXNnc3RyICLQndC10YIg0LfQsNC80LXRidC10L3QuNC5LiIKKworIzogc3JjL3N0YXRjbWQuYzozMDQKK21zZ2lkICItLXVwZGF0ZSBpcyB1c2VsZXNzIGZvciAtLXJlbW92ZSIKK21zZ3N0ciAiLS11cGRhdGUg0LHQtdGB0L/QvtC70LXQt9C10L0g0LLQvNC10YHRgtC1INGBIC0tcmVtb3ZlIgorCisjOiBzcmMvc3RhdGRiLmM6NTkKK21zZ2lkICJzeW50YXggZXJyb3I6IGludmFsaWQgdWlkIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICLRgdC40L3RgtCw0LrRgdC40YfQtdGB0LrQsNGPINC+0YjQuNCx0LrQsDog0L3QtdC/0YDQsNCy0LjQu9GM0L3Ri9C5IHVpZCDQsiDRhNCw0LnQu9C1IHN0YXRvdmVycmlkZSIKKworIzogc3JjL3N0YXRkYi5jOjY0CisjLCBjLWZvcm1hdAorbXNnaWQgInN5bnRheCBlcnJvcjogdW5rbm93biB1c2VyICclcycgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIiIKKyLRgdC40L3RgtCw0LrRgdC40YfQtdGB0LrQsNGPINC+0YjQuNCx0LrQsDog0L3QtdC40LfQstC10YHRgtC90YvQuSDQv9C+0LvRjNC30L7QstCw0YLQtdC70Ywgwqslc8K7INCyINGE0LDQudC70LUgc3RhdG92ZXJyaWRlIgorCisjOiBzcmMvc3RhdGRiLmM6ODMKK21zZ2lkICJzeW50YXggZXJyb3I6IGludmFsaWQgZ2lkIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICLRgdC40L3RgtCw0LrRgdC40YfQtdGB0LrQsNGPINC+0YjQuNCx0LrQsDog0L3QtdC/0YDQsNCy0LjQu9GM0L3Ri9C5IGdpZCDQsiDRhNCw0LnQu9C1IHN0YXRvdmVycmlkZSIKKworIzogc3JjL3N0YXRkYi5jOjg4CisjLCBjLWZvcm1hdAorbXNnaWQgInN5bnRheCBlcnJvcjogdW5rbm93biBncm91cCAnJXMnIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICLRgdC40L3RgtCw0LrRgdC40YfQtdGB0LrQsNGPINC+0YjQuNCx0LrQsDog0L3QtdC40LfQstC10YHRgtC90LDRjyDQs9GA0YPQv9C/0LAgwqslc8K7INCyINGE0LDQudC70LUgc3RhdG92ZXJyaWRlIgorCisjOiBzcmMvc3RhdGRiLmM6MTA0Cittc2dpZCAic3ludGF4IGVycm9yOiBpbnZhbGlkIG1vZGUgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgItGB0LjQvdGC0LDQutGB0LjRh9C10YHQutCw0Y8g0L7RiNC40LHQutCwOiDQvdC10L/RgNCw0LLQuNC70YzQvdGL0Lkg0YDQtdC20LjQvCDQsiDRhNCw0LnQu9C1IHN0YXRvdmVycmlkZSIKKworIzogc3JjL3N0YXRkYi5jOjEyNworbXNnaWQgImZhaWxlZCB0byBvcGVuIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC+0YLQutGA0YvRgtGMINGE0LDQudC7IHN0YXRvdmVycmlkZSIKKworIzogc3JjL3N0YXRkYi5jOjEzNAorbXNnaWQgImZhaWxlZCB0byBmc3RhdCBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQstGL0L/QvtC70L3QuNGC0YwgZnN0YXQg0L3QsCDRhNCw0LnQuyBzdGF0b3ZlcnJpZGUiCisKKyM6IHNyYy9zdGF0ZGIuYzoxMzcKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgcHJldmlvdXMgc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LLRi9C/0L7Qu9C90LjRgtGMIGZzdGF0INC90LAg0YHRgtCw0YDRi9C5INGE0LDQudC7IHN0YXRvdmVycmlkZSIKKworIzogc3JjL3N0YXRkYi5jOjE2MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic3RhdG92ZXJyaWRlIGZpbGUgYCUuMjUwcyciCittc2dpZCAicmVhZGluZyBzdGF0b3ZlcnJpZGUgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAi0YTQsNC50Lsgc3RhdG92ZXJyaWRlIMKrJS4yNTBzwrsiCisKKyM6IHNyYy9zdGF0ZGIuYzoxNjkKK21zZ2lkICJzdGF0b3ZlcnJpZGUgZmlsZSBpcyBtaXNzaW5nIGZpbmFsIG5ld2xpbmUiCittc2dzdHIgItCyINGE0LDQudC70LUgc3RhdG92ZXJyaWRlINC+0YLRgdGD0YLRgdGC0LLRg9C10YIg0LfQsNCy0LXRgNGI0LDRjtGJ0LjQuSDRgdC40LzQstC+0Lsg0L3QvtCy0L7QuSDRgdGC0YDQvtC60LgiCisKKyM6IHNyYy9zdGF0ZGIuYzoxNzMKK21zZ2lkICJzdGF0b3ZlcnJpZGUgZmlsZSBjb250YWlucyBlbXB0eSBsaW5lIgorbXNnc3RyICLRhNCw0LnQuyBzdGF0b3ZlcnJpZGUg0YHQvtC00LXRgNC20LjRgiDQv9GD0YHRgtGD0Y4g0YHRgtGA0L7QutGDIgorCisjOiBzcmMvc3RhdGRiLmM6MTc4IHNyYy9zdGF0ZGIuYzoxOTAgc3JjL3N0YXRkYi5jOjIwMgorbXNnaWQgInN5bnRheCBlcnJvciBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAi0YHQuNC90YLQsNC60YHQuNGH0LXRgdC60LDRjyDQvtGI0LjQsdC60LAg0LIg0YTQsNC50LvQtSBzdGF0b3ZlcnJpZGUiCisKKyM6IHNyYy9zdGF0ZGIuYzoxODYgc3JjL3N0YXRkYi5jOjE5OCBzcmMvc3RhdGRiLmM6MjEwCittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgbGluZSBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAi0L3QtdC+0LbQuNC00LDQvdC90YvQuSDQutC+0L3QtdGGINGB0YLRgNC+0LrQuCDQsiDRhNCw0LnQu9C1IHN0YXRvdmVycmlkZSIKKworIzogc3JjL3N0YXRkYi5jOjIxNAorIywgYy1mb3JtYXQKK21zZ2lkICJtdWx0aXBsZSBzdGF0dXNvdmVycmlkZXMgcHJlc2VudCBmb3IgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAi0LTQu9GPINGE0LDQudC70LAgwqslLjI1MHPCuyDQtdGB0YLRjCDQvdC10YHQutC+0LvRjNC60L4gc3RhdHVzb3ZlcmlkZXMiCisKKyM6IHNyYy90cmlnY21kLmM6NDYKK21zZ2lkICJUeXBlIGRwa2ctdHJpZ2dlciAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgdGhpcyB1dGlsaXR5LiIKK21zZ3N0ciAi0KfRgtC+0LHRiyDQv9C+0LvRg9GH0LjRgtGMINGB0L/RgNCw0LLQutGDLCDQstCy0LXQtNC40YLQtSBkcGtnLXRyaWdnZXIgLS1oZWxwLiIKKworIzogc3JjL3RyaWdjbWQuYzo1MQorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gJXMgcGFja2FnZSB0cmlnZ2VyIHV0aWxpdHkgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAi0KPRgtC40LvQuNGC0LAg0YDQsNCx0L7RgtGLINGBINGC0YDQuNCz0LPQtdGA0LDQvNC4INC/0LDQutC10YLQvtCyIERlYmlhbiAlcywg0LLQtdGA0YHQuNGPICVzLlxuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjY3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJVc2FnZTogJXMgWzxvcHRpb25zPiAuLi5dIDx0cmlnZ2VyLW5hbWU+XG4iCisiICAgICAgICVzIFs8b3B0aW9ucz4gLi4uXSA8Y29tbWFuZD5cbiIKKyJcbiIKK21zZ3N0ciAiIgorItCY0YHQv9C+0LvRjNC30L7QstCw0L3QuNC1OiAlcyBbPNC/0LDRgNCw0LzQtdGC0YA+IC4uLl0gPNC40LzRjy3RgtGA0LjQs9Cz0LXRgNCwPlxuIgorIiAgICAgICAlcyBbPNC/0LDRgNCw0LzQtdGC0YDRiz4gLi4uXSA80LrQvtC80LDQvdC00LA+XG4iCisiXG4iCisKKyM6IHNyYy90cmlnY21kLmM6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLS1jaGVjay1zdXBwb3J0ZWQgICAgICAgICAgICAgICAgQ2hlY2sgaWYgdGhlIHJ1bm5pbmcgZHBrZyBzdXBwb3J0cyAiCisidHJpZ2dlcnMuXG4iCisiXG4iCittc2dzdHIgIiIKKyLQmtC+0LzQsNC90LTRizpcbiIKKyIgIC0tY2hlY2stc3VwcG9ydGVkICAgICAgICAgICAgICAgINCf0YDQvtCy0LXRgNC40YLRjCwg0L/QvtC00LTQtdGA0LbQuNCy0LDQtdGCINC70Lgg0YLRgNC40LPQs9C10YDRi1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg0LjQvNC10Y7RidC40LnRgdGPIGRwa2cuXG4iCisiXG4iCisKKyM6IHNyYy90cmlnY21kLmM6ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgICAgICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyIgIC0tYnktcGFja2FnZT08cGFja2FnZT4gICAgICAgICAgIE92ZXJyaWRlIHRyaWdnZXIgYXdhaXRlciAobm9ybWFsbHkgc2V0XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ5IGRwa2cpLlxuIgorIiAgLS1uby1hd2FpdCAgICAgICAgICAgICAgICAgICAgICAgTm8gcGFja2FnZSBuZWVkcyB0byBhd2FpdCB0aGUgIgorInByb2Nlc3NpbmcuXG4iCisiICAtLW5vLWFjdCAgICAgICAgICAgICAgICAgICAgICAgICBKdXN0IHRlc3QgLSBkb24ndCBhY3R1YWxseSBjaGFuZ2UgIgorImFueXRoaW5nLlxuIgorIlxuIgorbXNnc3RyICIiCisi0J/QsNGA0LDQvNC10YLRgNGLOlxuIgorIiAgLS1hZG1pbmRpcj080LrQsNGC0LDQu9C+0LM+ICAgICAgICAgICAgINC40YHQv9C+0LvRjNC30L7QstCw0YLRjCA80LrQsNGC0LDQu9C+0LM+INCy0LzQtdGB0YLQviAlcy5cbiIKKyIgIC0tYnktcGFja2FnZT080L/QsNC60LXRgj4gICAgICAgICAgICAg0LfQsNC80LXQvdC40YLRjCDRgtGA0LjQs9Cz0LXRgCBhd2FpdGVyICjQvtCx0YvRh9C90L5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgINGD0YHRgtCw0L3QsNCy0LvQuNCy0LDQtdGC0YHRjyBkcGtnKS5cbiIKKyIgIC0tbm8tYXdhaXQgICAgICAgICAgICAgICAgICAgICAgINC90LUg0LbQtNCw0YLRjCDQvtCx0YDQsNCx0L7RgtC60Lgg0L/QsNC60LXRgtCw0LzQuC5cbiIKKyIgIC0tbm8tYWN0ICAgICAgICAgICAgICAgICAgICAgICAgINGC0L7Qu9GM0LrQviDQv9GA0L7RgtC10YHRgtC40YDQvtCy0LDRgtGMLCDQvdC40YfQtdCz0L4g0L3QtSAiCisi0LjQt9C80LXQvdGP0YLRjC5cbiIKKyJcbiIKKworIzogc3JjL3RyaWdjbWQuYzoxNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IHRyaWdnZXJzIGRhdGEgZGlyZWN0b3J5IG5vdCB5ZXQgY3JlYXRlZFxuIgorbXNnc3RyICIlczog0LrQsNGC0LDQu9C+0LMg0YEg0LTQsNC90L3Ri9C80Lgg0YLRgNC40LPQs9C10YDQvtCyINC10YnRkSDQvdC1INGB0L7Qt9C00LDQvVxuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjE1NgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogdHJpZ2dlciByZWNvcmRzIG5vdCB5ZXQgaW4gZXhpc3RlbmNlXG4iCittc2dzdHIgIiVzOiDQt9Cw0L/QuNGB0Lgg0YLRgNC40LPQs9C10YDQsCDQv9C+0LrQsCDQvdC1INGB0YPRidC10YHRgtCy0YPRjtGCXG4iCisKKyM6IHNyYy90cmlnY21kLmM6MjA1Cittc2dpZCAidGFrZXMgb25lIGFyZ3VtZW50LCB0aGUgdHJpZ2dlciBuYW1lIgorbXNnc3RyICLQv9GA0LjQvdC40LzQsNC10YIg0YLQvtC70YzQutC+INC+0LTQuNC9INCw0YDQs9GD0LzQtdC90YIsINC40LzRjyDRgtGA0LjQs9Cz0LXRgNCwIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIxMAorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiZHBrZy10cmlnZ2VyIG11c3QgYmUgY2FsbGVkIGZyb20gYSBtYWludGFpbmVyIHNjcmlwdCAob3Igd2l0aCBhIC0tYnktIgorI3wgInBhY2thZ2Ugb3B0aW9uKSIKK21zZ2lkICJtdXN0IGJlIGNhbGxlZCBmcm9tIGEgbWFpbnRhaW5lciBzY3JpcHQgKG9yIHdpdGggYSAtLWJ5LXBhY2thZ2Ugb3B0aW9uKSIKK21zZ3N0ciAiIgorImRwa2ctdHJpZ2dlciDQtNC+0LvQttC10L0g0LLRi9C30YvQstCw0YLRjNGB0Y8g0LjQtyDRgdGG0LXQvdCw0YDQuNGPINGB0L7Qv9GA0L7QstC+0LbQtNCw0Y7RidC10LPQviAo0LjQu9C4INGBINC/0LDRgNCw0LzQtdGC0YDQvtC8ICIKKyItLWJ5LXBhY2thZ2UpIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIxNQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZHBrZy10cmlnZ2VyOiBpbGxlZ2FsIGF3YWl0ZWQgcGFja2FnZSBuYW1lIGAlLjI1MHMnOiAlLjI1MHMiCittc2dpZCAiaWxsZWdhbCBhd2FpdGVkIHBhY2thZ2UgbmFtZSAnJS4yNTBzJzogJS4yNTBzIgorbXNnc3RyICJkcGtnLXRyaWdnZXI6INC90LXQstC10YDQvdC+0LUg0LjQvNGPINC+0LbQuNC00LDQtdC80L7Qs9C+INC/0LDQutC10YLQsCDCqyUuMjUwc8K7OiAlLjI1MHMiCisKKyM6IHNyYy90cmlnY21kLmM6MjIxCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgdHJpZ2dlciBuYW1lIGAlLjI1MHMnOiAlLjI1MHMiCittc2dzdHIgItC90LXQstC10YDQvdC+0LUg0LjQvNGPINGC0YDQuNCz0LPQtdGA0LAgwqslLjI1MHPCuzogJS4yNTBzIgorCisjOiBzcmMvdHJpZ3Byb2MuYzoyNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBjeWNsZSBmb3VuZCB3aGlsZSBwcm9jZXNzaW5nIHRyaWdnZXJzOlxuIgorIiBjaGFpbiBvZiBwYWNrYWdlcyB3aG9zZSB0cmlnZ2VycyBhcmUgb3IgbWF5IGJlIHJlc3BvbnNpYmxlOlxuIgorbXNnc3RyICIiCisiJXM6INC/0YDQuCDQvtCx0YDQsNCx0L7RgtC60LUg0YLRgNC40LPQs9C10YDQvtCyINC+0LHQvdCw0YDRg9C20LXQvdC+INC30LDRhtC40LrQu9C40LLQsNC90LjQtTpcbiIKKyIg0YbQtdC/0L7Rh9C60LAg0L/QsNC60LXRgtC+0LIg0YEg0YLQsNC60LjQvNC4INGC0YDQuNCz0LPQtdGA0LDQvNC4INC80L7QttC10YIg0L3QtSDQvtGC0LLQtdGH0LDRgtGMOlxuIgorCisjOiBzcmMvdHJpZ3Byb2MuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiBwYWNrYWdlcycgcGVuZGluZyB0cmlnZ2VycyB3aGljaCBhcmUgb3IgbWF5IGJlIHVucmVzb2x2YWJsZTpcbiIKK21zZ3N0ciAiIgorIlxuIgorIiDQv9Cw0LrQtdGC0Ysg0YEg0YLRgNC40LPQs9C10YDQsNC80Lgg0YDQsNGB0YHQvNC+0YLRgNC10L3QuNGPINC80L7Qs9GD0YIg0LzQvtCz0YPRgiDQsdGL0YLRjCDQvdC1INC+0L/RgNC10LTQtdC70LXQvdGLOlxuIgorCisjOiBzcmMvdHJpZ3Byb2MuYzoyODEKK21zZ2lkICJ0cmlnZ2VycyBsb29waW5nLCBhYmFuZG9uZWQiCittc2dzdHIgItC30LDRhtC40LrQu9C40LLQsNC90LjQtSDRgtGA0LjQs9Cz0LXRgNC+0LIsINC+0YLQvNC10L3QsCDRgNCw0LHQvtGC0YsiCisKKyM6IHNyYy90cmlncHJvYy5jOjMxMgorIywgYy1mb3JtYXQKK21zZ2lkICJQcm9jZXNzaW5nIHRyaWdnZXJzIGZvciAlcyAuLi5cbiIKK21zZ3N0ciAi0J7QsdGA0LDQsdCw0YLRi9Cy0LDRjtGC0YHRjyDRgtGA0LjQs9Cz0LXRgNGLINC00LvRjyAlcyAuLi5cbiIKKworIzogc3JjL3VwZGF0ZS5jOjUyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICItLSVzIG5lZWRzIGV4YWN0bHkgb25lIFBhY2thZ2VzIGZpbGUgYXJndW1lbnQiCittc2dpZCAiLS0lcyBuZWVkcyBleGFjdGx5IG9uZSBQYWNrYWdlcy1maWxlIGFyZ3VtZW50IgorbXNnc3RyICItLSVzINC80L7QttC10YIg0LHRi9GC0Ywg0YLQvtC70YzQutC+INC+0LTQuNC9INCw0YDQs9GD0LzQtdC90YIgKNGE0LDQudC7IFBhY2thZ2VzKSIKKworIzogc3JjL3VwZGF0ZS5jOjYyCittc2dpZCAidW5hYmxlIHRvIGFjY2VzcyBkcGtnIHN0YXR1cyBhcmVhIGZvciBidWxrIGF2YWlsYWJsZSB1cGRhdGUiCittc2dzdHIgIiIKKyLQvdC1INGD0LTQsNC70L7RgdGMINCy0YLRj9C90YPRgtGMINC40L3RhNC+0YDQvNCw0YbQuNGOINC+INC00L7RgdGC0YPQv9C90YvRhSDQvtCx0L3QvtCy0LvQtdC90LjRj9GFLCDQvdC10YIg0LTQvtGB0YLRg9C/0LAg0Log0L7QsdC70LDRgdGC0LggIgorItGB0L7RgdGC0L7Rj9C90LjQuSBkcGtnIgorCisjOiBzcmMvdXBkYXRlLmM6NjQKK21zZ2lkICJidWxrIGF2YWlsYWJsZSB1cGRhdGUgcmVxdWlyZXMgd3JpdGUgYWNjZXNzIHRvIGRwa2cgc3RhdHVzIGFyZWEiCittc2dzdHIgIiIKKyLQstGC0Y/Qs9C40LLQsNC90LjQtSDQuNC90YTQvtGA0LzQsNGG0LjQuCDQviDQtNC+0YHRgtGD0L/QvdGL0YUg0L7QsdC90L7QstC70LXQvdC40Y/RhSDRgtGA0LXQsdGD0LXRgiDQtNC+0YHRgtGD0L/QsCDQuiDQvtCx0LvQsNGB0YLQuCAiCisi0YHQvtGB0YLQvtGP0L3QuNC5IGRwa2cg0L3QsCDQt9Cw0L/QuNGB0YwiCisKKyM6IHNyYy91cGRhdGUuYzo3MQorIywgYy1mb3JtYXQKK21zZ2lkICJSZXBsYWNpbmcgYXZhaWxhYmxlIHBhY2thZ2VzIGluZm8sIHVzaW5nICVzLlxuIgorbXNnc3RyICLQmNC90YTQvtGA0LzQsNGG0LjRjyDQviDQtNC+0YHRgtGD0L/QvdGL0YUg0L/QsNC60LXRgtCw0YUg0LfQsNC80LXQvdGP0LXRgtGB0Y8g0YHQvtC00LXRgNC20LjQvNGL0Lwg0YTQsNC50LvQsCAlcy5cbiIKKworIzogc3JjL3VwZGF0ZS5jOjc0CisjLCBjLWZvcm1hdAorbXNnaWQgIlVwZGF0aW5nIGF2YWlsYWJsZSBwYWNrYWdlcyBpbmZvLCB1c2luZyAlcy5cbiIKK21zZ3N0ciAi0JjQvdGE0L7RgNC80LDRhtC40Y8g0L4g0LTQvtGB0YLRg9C/0L3Ri9GFINC/0LDQutC10YLQsNGFINGB0LvQuNCy0LDQtdGC0YHRjyDRgSDRgdC+0LTQtdGA0LbQuNC80YvQvCDRhNCw0LnQu9CwICVzLlxuIgorCisjOiBzcmMvdXBkYXRlLmM6MTAxCisjLCBjLWZvcm1hdAorbXNnaWQgIkluZm9ybWF0aW9uIGFib3V0ICVkIHBhY2thZ2Ugd2FzIHVwZGF0ZWQuXG4iCittc2dpZF9wbHVyYWwgIkluZm9ybWF0aW9uIGFib3V0ICVkIHBhY2thZ2VzIHdhcyB1cGRhdGVkLlxuIgorbXNnc3RyWzBdICLQntCx0L3QvtCy0LvQtdC90LAg0LjQvdGE0L7RgNC80LDRhtC40Y8g0L4gJWQg0L/QsNC60LXRgtC1LlxuIgorbXNnc3RyWzFdICLQntCx0L3QvtCy0LvQtdC90LAg0LjQvdGE0L7RgNC80LDRhtC40Y8g0L4gJWQg0L/QsNC60LXRgtCw0YUuXG4iCittc2dzdHJbMl0gItCe0LHQvdC+0LLQu9C10L3QsCDQuNC90YTQvtGA0LzQsNGG0LjRjyDQviAlZCDQv9Cw0LrQtdGC0LDRhS5cbiIKKworIzogc3JjL3VwZGF0ZS5jOjExNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisib2Jzb2xldGUgJy0tJXMnIG9wdGlvbiwgdW5hdmFpbGFibGUgcGFja2FnZXMgYXJlIGF1dG9tYXRpY2FsbHkgY2xlYW5lZCB1cC4iCittc2dzdHIgIiIKKyLRg9GB0YLQsNGA0LXQstGI0LjQuSDQv9Cw0YDQsNC80LXRgtGAIMKrLS0lc8K7LCDQvdC10LTQvtGB0YLRg9C/0L3Ri9C1INC/0LDQutC10YLRiyDQsNCy0YLQvtC80LDRgtC40YfQtdGB0LrQuCDQstGL0YfQuNGJ0LDRjtGC0YHRjy4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgbmFtZSAnJS41MHMuLi4nIGlzIHRvbyBsb25nIgorbXNnc3RyICLQuNC80Y8g0YTQsNC50LvQsCDCqyUuNTBzLi4uwrsg0YHQu9C40YjQutC+0Lwg0LTQu9C40L3QvdC+0LUiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTI5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGZpbGUgbmFtZSAnJS4yNTBzJyIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQstGL0L/QvtC70L3QuNGC0Ywgc3RhdCDQtNC70Y8g0YTQsNC50LvQsCDRgSDQuNC80LXQvdC10LwgwqslLjI1MHPCuyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoxODkKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBjb250cm9sIGRpcmVjdG9yeSIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQstGL0L/QvtC70L3QuNGC0Ywgc3RhdCDQtNC70Y8g0LrQsNGC0LDQu9C+0LPQsCBjb250cm9sIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjE5MQorbXNnaWQgImNvbnRyb2wgZGlyZWN0b3J5IGlzIG5vdCBhIGRpcmVjdG9yeSIKK21zZ3N0ciAi0LrQsNGC0LDQu9C+0LMgY29udHJvbCDQvdC1INGP0LLQu9GP0LXRgtGB0Y8g0LrQsNGC0LDQu9C+0LPQvtC8IgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjE5MworIywgYy1mb3JtYXQKK21zZ2lkICJjb250cm9sIGRpcmVjdG9yeSBoYXMgYmFkIHBlcm1pc3Npb25zICUwM2xvIChtdXN0IGJlID49MDc1NSBhbmQgPD0wNzc1KSIKK21zZ3N0ciAiIgorItC60LDRgtCw0LvQvtCzIGNvbnRyb2wg0LjQvNC10LXRgiDQvdC10LTQvtC/0YPRgdGC0LjQvNGL0LUg0L/RgNCw0LLQsCDQtNC+0YHRgtGD0L/QsCAlMDNsbyAo0LTQvtC70LbQvdC+INCx0YvRgtGMID49MDc1NSDQuCAiCisiPD0wNzc1KSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAibWFpbnRhaW5lciBzY3JpcHQgYCUuNTBzJyBpcyBub3QgYSBwbGFpbiBmaWxlIG9yIHN5bWxpbmsiCittc2dzdHIgIiIKKyLRgdGG0LXQvdCw0YDQuNC5INGB0L7Qv9GA0L7QstC+0LbQtNCw0Y7RidC10LPQviDCqyUuNTBzwrsg0L3QtSDRj9Cy0LvRj9C10YLRgdGPINC+0LHRi9GH0L3Ri9C8INGE0LDQudC70L7QvCDQuNC70Lgg0YHQuNC80LLQvtC70YzQvdC+0LkgIgorItGB0YHRi9C70LrQvtC5IgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjIwNworIywgYy1mb3JtYXQKK21zZ2lkICIiCisibWFpbnRhaW5lciBzY3JpcHQgYCUuNTBzJyBoYXMgYmFkIHBlcm1pc3Npb25zICUwM2xvIChtdXN0IGJlID49MDU1NSBhbmQgIgorIjw9MDc3NSkiCittc2dzdHIgIiIKKyLRgyDRgdGG0LXQvdCw0YDQuNGPINGB0L7Qv9GA0L7QstC+0LbQtNCw0Y7RidC10LPQviDCqyUuNTBzwrsg0YPRgdGC0LDQvdC+0LLQu9C10L0g0L3QtdC00L7Qv9GD0YHRgtC40LzRi9C1INC/0YDQsNCy0LAg0LTQvtGB0YLRg9C/0LAgIgorIiUwM2xvICjQtNC+0LvQttC90L4g0LHRi9GC0YwgPj0wNzU1INC4IDw9MDc3NSkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjExCisjLCBjLWZvcm1hdAorbXNnaWQgIm1haW50YWluZXIgc2NyaXB0IGAlLjUwcycgaXMgbm90IHN0YXR0YWJsZSIKK21zZ3N0ciAi0L/QvtC70YPRh9C40YLRjCDQuNC90YTQvtGA0LzQsNGG0LjRjiDQviDRgdGG0LXQvdCw0YDQuNC4INGB0L7Qv9GA0L7QstC+0LbQtNCw0Y7RidC10LPQviDCqyUuNTBzwrsg0L3QtdCy0L7Qt9C80L7QttC90L4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjM3Cittc2dpZCAiZXJyb3Igb3BlbmluZyBjb25mZmlsZXMgZmlsZSIKK21zZ3N0ciAi0L7RiNC40LHQutCwINC/0YDQuCDQvtGC0LrRgNGL0YLQuNC4INGB0L/QuNGB0LrQsCBjb25mZmlsZXMt0YTQsNC50LvQvtCyIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI0NgorbXNnaWQgImVtcHR5IHN0cmluZyBmcm9tIGZnZXRzIHJlYWRpbmcgY29uZmZpbGVzIgorbXNnc3RyICLQv9GA0Lgg0YfRgtC10L3QuNC4INGB0L/QuNGB0LrQsCDRhNCw0LnQu9C+0LIg0L3QsNGB0YLRgNC+0LnQutC4INGE0YPQvdC60YbQuNGPIGZnZXRzINCy0LXRgNC90YPQu9CwINC/0YPRgdGC0YPRjiDRgdGC0YDQvtC60YMiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjUxCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIG5hbWUgJyUuNTBzLi4uJyBpcyB0b28gbG9uZywgb3IgbWlzc2luZyBmaW5hbCBuZXdsaW5lIgorbXNnc3RyICIiCisi0LjQvNGPIGNvbmZmaWxlLdGE0LDQudC70LAgwqslLjUwcy4uLsK7INGB0LvQuNGI0LrQvtC8INC00LvQuNC90L3QvtC1INC40LvQuCDQsiDQutC+0L3RhtC1INC90LXRgiDRgdC40LzQstC+0LvQsCDQvdC+0LLQvtC5ICIKKyLRgdGC0YDQvtC60LgiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjY0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIGZpbGVuYW1lICclcycgY29udGFpbnMgdHJhaWxpbmcgd2hpdGUgc3BhY2VzIgorbXNnc3RyICLQuNC80Y8gY29uZmZpbGUt0YTQsNC50LvQsCDCqyVzwrsg0YHQvtC00LXRgNC20LjRgiDQsiDQutC+0L3RhtC1INC/0YDQvtCx0LXQu9GM0L3Ri9C1INGB0LjQvNCy0L7Qu9GLIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI2NgorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBgJS4yNTBzJyBkb2VzIG5vdCBhcHBlYXIgaW4gcGFja2FnZSIKK21zZ3N0ciAi0LIg0L/QsNC60LXRgtC1INC+0YLRgdGD0YLRgdGC0LLRg9C10YIgY29uZmZpbGUgwqslLjI1MHPCuyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgYCUuMjUwcycgaXMgbm90IHN0YXR0YWJsZSIKK21zZ3N0ciAi0L3QtdCy0L7Qt9C80L7QttC90L4g0L/QvtC70YPRh9C40YLRjCDQuNC90YTQvtGA0LzQsNGG0LjRjiDQviBjb25mZmlsZS3RhNCw0LnQu9C1IMKrJS4yNTBzwrsiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjcwCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlICclcycgaXMgbm90IGEgcGxhaW4gZmlsZSIKK21zZ3N0ciAiY29uZmZpbGUt0YTQsNC50Lsgwqslc8K7INC90LUg0Y/QstC70Y/QtdGC0YHRjyDQvtCx0YvRh9C90YvQvCDRhNCw0LnQu9C+0LwiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6Mjc0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIG5hbWUgJyVzJyBpcyBkdXBsaWNhdGVkIgorbXNnc3RyICLQv9C+0LLRgtC+0YDRj9GO0YnQtdC10YHRjyDQuNC80Y8gY29uZmZpbGUgwqslc8K7IgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI4NworbXNnaWQgImVycm9yIHJlYWRpbmcgY29uZmZpbGVzIGZpbGUiCittc2dzdHIgItC+0YjQuNCx0LrQsCDRh9GC0LXQvdC40Y8g0YHQv9C40YHQutCwIGNvbmZmaWxlcy3RhNCw0LnQu9C+0LIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MzM5Cittc2dpZCAicGFja2FnZSBuYW1lIGhhcyBjaGFyYWN0ZXJzIHRoYXQgYXJlbid0IGxvd2VyY2FzZSBhbHBoYW51bXMgb3IgYC0rLiciCittc2dzdHIgIiIKKyLQuNC80Y8g0L/QsNC60LXRgtCwINGB0L7QtNC10YDQttC40YIg0YHQuNC80LLQvtC70YssINC+0YLQu9C40YfQvdGL0LUg0L7RgiDRgdGC0YDQvtGH0L3Ri9GFINC70LDRgtC40L3RgdC60LjRhSDQsdGD0LrQsiwg0YbQuNGE0YAg0LjQu9C4IMKrLSIKKyIrwrsuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjM0MQorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGNvbnRhaW5zIHVzZXItZGVmaW5lZCBQcmlvcml0eSB2YWx1ZSAnJXMnIgorbXNnc3RyICLCqyVzwrsg0YHQvtC00LXRgNC20LjRgiDQvtC/0YDQtdC00LXQu9GR0L3QvdC+0LUg0L/QvtC70YzQt9C+0LLQsNGC0LXQu9C10Lwg0LfQvdCw0YfQtdC90LjQtSDQv9GA0LjQvtGA0LjRgtC10YLQsCDCqyVzwrsiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MzQ3CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgY29udGFpbnMgdXNlci1kZWZpbmVkIGZpZWxkICclcyciCittc2dzdHIgIsKrJXPCuyDRgdC+0LTQtdGA0LbQuNGCINC+0L/RgNC10LTQtdC70ZHQvdC90L7QtSDQv9C+0LvRjNC30L7QstCw0YLQtdC70LXQvCDQv9C+0LvQtSDCqyVzwrsiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MzU4CisjLCBjLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nICVkIHdhcm5pbmcgYWJvdXQgdGhlIGNvbnRyb2wgZmlsZShzKVxuIgorbXNnaWRfcGx1cmFsICJpZ25vcmluZyAlZCB3YXJuaW5ncyBhYm91dCB0aGUgY29udHJvbCBmaWxlKHMpXG4iCittc2dzdHJbMF0gItC/0YDQvtC40LPQvdC+0YDQuNGA0L7QstCw0L3QviAlZCDQv9GA0LXQtNGD0L/RgNC10LbQtNC10L3QuNC1INC+0LEg0YPQv9GA0LDQstC70Y/RjtGJ0LXQvCjQuNGFKSDRhNCw0LnQu9C1KNCw0YUpXG4iCittc2dzdHJbMV0gItC/0YDQvtC40LPQvdC+0YDQuNGA0L7QstCw0L3QviAlZCDQv9GA0LXQtNGD0L/RgNC10LbQtNC10L3QuNGPINC+0LEg0YPQv9GA0LDQstC70Y/RjtGJ0LjRhSDRhNCw0LnQu9Cw0YVcbiIKK21zZ3N0clsyXSAi0L/RgNC+0LjQs9C90L7RgNC40YDQvtCy0LDQvdC+ICVkINC/0YDQtdC00YPQv9GA0LXQttC00LXQvdC40Lkg0L7QsSDRg9C/0YDQsNCy0LvRj9GO0YnQuNGFINGE0LDQudC70LDRhVxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQwMyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQyOQorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhIDxkaXJlY3Rvcnk+IGFyZ3VtZW50IgorbXNnc3RyICItLSVzINGC0YDQtdCx0YPQtdGC0YHRjyDQsNGA0LPRg9C80LXQvdGCIDzQutCw0YLQsNC70L7Qsz4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDA5Cittc2dpZCAiLS1idWlsZCB0YWtlcyBhdCBtb3N0IHR3byBhcmd1bWVudHMiCittc2dzdHIgItC/0LDRgNCw0LzQtdGC0YAgLS1idWlsZCDQvNC+0LbQtdGCINC40LzQtdGC0Ywg0L3QtSDQsdC+0LvQtdC1INC00LLRg9GFINCw0YDQs9GD0LzQtdC90YLQvtCyIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQxMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hlY2sgZm9yIGV4aXN0ZW5jZSBvZiBhcmNoaXZlIGAlLjI1MHMnIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC/0YDQvtCy0LXRgNC40YLRjCDRgdGD0YnQtdGB0YLQstC+0LLQsNC90LjQtSDQsNGA0YXQuNCy0LAgwqslLjI1MHPCuyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzAKK21zZ2lkICJ0YXJnZXQgaXMgZGlyZWN0b3J5IC0gY2Fubm90IHNraXAgY29udHJvbCBmaWxlIGNoZWNrIgorbXNnc3RyICIiCisi0LIg0LrQsNGH0LXRgdGC0LLQtSDQvNC10YHRgtCwINC90LDQt9C90LDRh9C10L3QuNGPINC30LDQtNCw0L0g0LrQsNGC0LDQu9C+0LMsINC/0YDQvtC/0YPRgdGC0LjRgtGMINC/0YDQvtCy0LXRgNC60YMg0YPQv9GA0LDQstC70Y/RjtGJ0LXQs9C+ICIKKyLRhNCw0LnQu9CwINC90LXQstC+0LfQvNC+0LbQvdC+IgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQzMQorbXNnaWQgIm5vdCBjaGVja2luZyBjb250ZW50cyBvZiBjb250cm9sIGFyZWEuIgorbXNnc3RyICLQvdC1INC/0YDQvtCy0LXRgNGP0LXRgtGB0Y8g0YHQvtC00LXRgNC20LjQvNC+0LUg0YPQv9GA0LDQstC70Y/RjtGJ0LXQuSDQvtCx0LvQsNGB0YLQuC4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDMyCisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2ctZGViOiBidWlsZGluZyBhbiB1bmtub3duIHBhY2thZ2UgaW4gJyVzJy5cbiIKK21zZ3N0ciAiZHBrZy1kZWI6INGB0LHQvtGA0LrQsCDQvdC10LjQt9Cy0LXRgdGC0L3QvtCz0L4g0L/QsNC60LXRgtCwINCyIMKrJXPCuy5cbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZy1kZWI6IGJ1aWxkaW5nIHBhY2thZ2UgYCVzJyBpbiBgJXMnLlxuIgorbXNnc3RyICJkcGtnLWRlYjog0YHQsdC+0YDQutCwINC/0LDQutC10YLQsCDCqyVzwrsg0LIg0YTQsNC50Lsgwqslc8K7LlxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ2NyBkcGtnLWRlYi9idWlsZC5jOjUyMQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIG1ha2UgdG1wZmlsZSAoZGF0YSkiCittc2dpZCAiZmFpbGVkIHRvIG1ha2UgdGVtcG9yYXJ5IGZpbGUgKCVzKSIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRgdC+0LfQtNCw0YLRjCDQstGA0LXQvNC10L3QvdGL0Lkg0YTQsNC50LsgKNC00LDQvdC90YvQtSkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDY3IGRwa2ctZGViL2J1aWxkLmM6NDcwIGRwa2ctZGViL2J1aWxkLmM6NDc3CisjOiBkcGtnLWRlYi9idWlsZC5jOjQ4NSBkcGtnLWRlYi9idWlsZC5jOjQ5NCBkcGtnLWRlYi9idWlsZC5jOjQ5OQorIywgZnV6enkKKyN8IG1zZ2lkICJjb250cm9sIGFyZWEiCittc2dpZCAiY29udHJvbCBtZW1iZXIiCittc2dzdHIgItC+0LHQu9Cw0YHRgtGMINGD0L/RgNCw0LLQu9GP0Y7RidC10Lkg0LjQvdGE0L7RgNC80LDRhtC40LgiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDcwIGRwa2ctZGViL2J1aWxkLmM6NTI0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gdW5saW5rIHRtcGZpbGUgKGRhdGEpLCAlcyIKK21zZ2lkICJmYWlsZWQgdG8gdW5saW5rIHRlbXBvcmFyeSBmaWxlICglcyksICVzIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGD0LTQsNC70LjRgtGMINCy0YDQtdC80LXQvdC90YvQuSDRhNCw0LnQuyAo0LTQsNC90L3Ri9C1KSAlcyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0ODUgZHBrZy1kZWIvYnVpbGQuYzo1OTMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdG1wZmlsZSAoZGF0YSkiCittc2dpZCAiZmFpbGVkIHRvIHJld2luZCB0ZW1wb3JhcnkgZmlsZSAoJXMpIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC/0LXRgNC10LnRgtC4INC6INC90LDRh9Cw0LvRgyB0bXBmaWxlICjQtNCw0L3QvdGL0LUpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ5NAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGFyIG1lbWJlciBmaWxlICglcykiCittc2dpZCAiZmFpbGVkIHRvIHN0YXQgdGVtcG9yYXJ5IGZpbGUgKCVzKSIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQstGL0L/QvtC70L3QuNGC0YwgZnN0YXQg0L3QsCDRhNCw0LnQu9CwINC40Lcg0LDRgNGF0LjQstCwIGFyICglcykiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDk4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHdyaXRpbmcgYCVzJyIKK21zZ3N0ciAi0L7RiNC40LHQutCwINC30LDQv9C40YHQuCDCqyVzwrsiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTIxIGRwa2ctZGViL2J1aWxkLmM6NTI0IGRwa2ctZGViL2J1aWxkLmM6NTQ2CisjOiBkcGtnLWRlYi9idWlsZC5jOjU3MiBkcGtnLWRlYi9idWlsZC5jOjU4MCBkcGtnLWRlYi9idWlsZC5jOjU5MworIywgZnV6enkKKyN8IG1zZ2lkICJiZXR3ZWVuIG1lbWJlcnMiCittc2dpZCAiZGF0YSBtZW1iZXIiCittc2dzdHIgItC00LDQvdC90YvQtSDQvNC10LbQtNGDINC60L7QvNC/0L7QvdC10L3RgtCw0LzQuCIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo1NzEgZHBrZy1kZWIvYnVpbGQuYzo1ODAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byB3cml0ZSBmaWxlbmFtZSB0byB0YXIgcGlwZSAoZGF0YSkiCittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIGZpbGVuYW1lIHRvIHRhciBwaXBlICglcykiCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LfQsNC/0LjRgdCw0YLRjCDQuNC80Y8g0YTQsNC50LvQsCDQsiDQutCw0L3QsNC7INC/0YDQvtCz0YDQsNC80LzRiyB0YXIgKNC00LDQvdC90YvQtSkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTg0Cittc2dpZCAiPGNvbXByZXNzPiBmcm9tIHRhciAtY2YiCittc2dzdHIgIjxjb21wcmVzcz4g0LjQtyB0YXIgLWNmIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6NjEgZHBrZy1kZWIvZXh0cmFjdC5jOjYzCittc2dpZCAic2hlbGwgY29tbWFuZCB0byBtb3ZlIGZpbGVzIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzo3MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBmaWxlIGluICVzIGluICUuMjU1cyIKK21zZ3N0ciAi0L3QtdC+0LbQuNC00LDQvdC90YvQuSDQutC+0L3QtdGGINGE0LDQudC70LAsINC90LUg0YPQtNCw0LvQvtGB0Ywg0L/RgNC+0YfQuNGC0LDRgtGMICVzINC40Lcg0YTQsNC50LvQsCAlLjI1NXMiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzo3MgorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciByZWFkaW5nICVzIGZyb20gZmlsZSAlLjI1NXMiCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L/RgNC+0YfQuNGC0LDRgtGMICVzINC40Lcg0YTQsNC50LvQsCAlLjI1NXMiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxMjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgYXJjaGl2ZSBgJS4yNTVzJyIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQv9GA0L7Rh9C40YLQsNGC0Ywg0LDRgNGF0LjQsiDCqyUuMjU1c8K7IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTI3Cittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGFyY2hpdmUiCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L/QvtC70YPRh9C40YLRjCDQuNC90YTQvtGA0LzQsNGG0LjRjiDQvtCxINCw0YDRhdC40LLQtSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjEzMQorIywgZnV6enkKKyN8IG1zZ2lkICJhcmNoaXZlIGhhcyBubyBkb3QgaW4gdmVyc2lvbiBudW1iZXIiCittc2dpZCAiYXJjaGl2ZSBtYWdpYyB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAi0LIg0L3QvtC80LXRgNC1INCy0LXRgNGB0LjQuCDQsNGA0YXQuNCy0LAg0L3QtdGCINGC0L7Rh9C60LgiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNDMKKyMsIGZ1enp5CisjfCBtc2dpZCAiYXJjaGl2ZSBoYXMgbm8gbmV3bGluZXMgaW4gaGVhZGVyIgorbXNnaWQgImFyY2hpdmUgbWVtYmVyIGhlYWRlciIKK21zZ3N0ciAi0LIg0LfQsNCz0L7Qu9C+0LLQutC1INCw0YDRhdC40LLQsCDQvdC10YIg0YHQuNC80LLQvtC70L7QsiDQutC+0L3RhtCwINGB0YLRgNC+0LrQuCIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE0OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIHBhcnQgbnVtYmVyIgorbXNnaWQgImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBhcmNoaXZlIGhlYWRlciBtYWdpYyIKK21zZ3N0ciAi0YTQsNC50LsgwqslLjI1MHPCuyDQv9C+0LLRgNC10LbQtNGR0L0gLS0g0L3QtdCy0LXRgNC90YvQuSDQvdC+0LzQtdGAINGH0LDRgdGC0LgiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBub3QgYSBkZWJpYW4gYmluYXJ5IGFyY2hpdmUgKHRyeSBkcGtnLXNwbGl0PykiCittc2dzdHIgIiIKKyLRhNCw0LnQuyDCqyUuMjUwc8K7INC90LUg0Y/QstC70Y/QtdGC0YHRjyDQtNCy0L7QuNGH0L3Ri9C8INCw0YDRhdC40LLQvtC8IGRlYmlhbiAo0LLQvtC30LzQvtC20L3Qviwg0L/QvtC80L7QttC10YIgZHBrZy0iCisic3BsaXQpIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTU5CisjLCBmdXp6eQorI3wgbXNnaWQgImFyY2hpdmUgaGFzIG5vIGRvdCBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ2lkICJhcmNoaXZlIGluZm9ybWF0aW9uIGhlYWRlciBtZW1iZXIiCittc2dzdHIgItCyINC90L7QvNC10YDQtSDQstC10YDRgdC40Lgg0LDRgNGF0LjQstCwINC90LXRgiDRgtC+0YfQutC4IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTYyCittc2dpZCAiYXJjaGl2ZSBoYXMgbm8gbmV3bGluZXMgaW4gaGVhZGVyIgorbXNnc3RyICLQsiDQt9Cw0LPQvtC70L7QstC60LUg0LDRgNGF0LjQstCwINC90LXRgiDRgdC40LzQstC+0LvQvtCyINC60L7QvdGG0LAg0YHRgtGA0L7QutC4IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTY1Cittc2dpZCAiYXJjaGl2ZSBoYXMgbm8gZG90IGluIHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICLQsiDQvdC+0LzQtdGA0LUg0LLQtdGA0YHQuNC4INCw0YDRhdC40LLQsCDQvdC10YIg0YLQvtGH0LrQuCIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE2OAorIywgYy1mb3JtYXQKK21zZ2lkICJhcmNoaXZlIHZlcnNpb24gJS4yNTBzIG5vdCB1bmRlcnN0b29kLCBnZXQgbmV3ZXIgZHBrZy1kZWIiCittc2dzdHIgIiIKKyLQsNGA0YXQuNCy0Ysg0LLQtdGA0YHQuNC4ICUuMjUwcyDQvdC1INC/0L7QtNC00LXRgNC20LjQstCw0Y7RgtGB0Y8sINC40YHQv9C+0LvRjNC30YPQudGC0LUg0LHQvtC70LXQtSDQvdC+0LLRi9C5IGRwa2ctZGViIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTc5IGRwa2ctZGViL2V4dHJhY3QuYzoyMDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInNraXBwZWQgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ2lkICJza2lwcGVkIGFyY2hpdmUgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ3N0ciAi0L/RgNC+0L/Rg9GJ0LXQvdGLINC00LDQvdC90YvQtSDQutC+0LzQv9C+0L3QtdC90YLQsCDRhNCw0LnQu9CwICVzIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTk0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGNvbnRhaW5zIHVudW5kZXJzdG9vZCBkYXRhIG1lbWJlciAlLipzLCBnaXZpbmcgdXAiCittc2dpZCAiYXJjaGl2ZSAnJS4yNTBzJyBjb250YWlucyBub3QgdW5kZXJzdG9vZCBkYXRhIG1lbWJlciAlLipzLCBnaXZpbmcgdXAiCittc2dzdHIgIiIKKyLRhNCw0LnQuyDCqyUuMjUwc8K7INGB0L7QtNC10YDQttC40YIg0L3QtSDRgNCw0YHQv9C+0LfQvdCw0LLQsNC10LzRi9C5INC60L7QvNC/0L7QvdC10L3RgiDQtNCw0L3QvdGL0YUgJS4qcywg0YHQtNCw0ZHQvNGB0Y8iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxOTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgY29udGFpbnMgdHdvIGNvbnRyb2wgbWVtYmVycywgZ2l2aW5nIHVwIgorbXNnaWQgImFyY2hpdmUgJyUuMjUwcycgY29udGFpbnMgdHdvIGNvbnRyb2wgbWVtYmVycywgZ2l2aW5nIHVwIgorbXNnc3RyICLRhNCw0LnQuyDCqyUuMjUwc8K7INGB0L7QtNC10YDQttC40YIg0LTQstCwINGD0L/RgNCw0LLQu9GP0Y7RidC40YUg0LrQvtC80L/QvtC90LXQvdGC0LAsINGB0LTQsNGR0LzRgdGPIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjE0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiIG5ldyBkZWJpYW4gcGFja2FnZSwgdmVyc2lvbiAlcy5cbiIKKyN8ICIgc2l6ZSAlbGQgYnl0ZXM6IGNvbnRyb2wgYXJjaGl2ZT0gJXppIGJ5dGVzLlxuIgorbXNnaWQgIiIKKyIgbmV3IGRlYmlhbiBwYWNrYWdlLCB2ZXJzaW9uICVzLlxuIgorIiBzaXplICVqZCBieXRlczogY29udHJvbCBhcmNoaXZlPSAlamQgYnl0ZXMuXG4iCittc2dzdHIgIiIKKyIg0L3QvtCy0YvQuSDQv9Cw0LrQtdGCIERlYmlhbiwg0LLQtdGA0YHQuNGPICVzLlxuIgorIiDRgNCw0LfQvNC10YAgJWxkINCx0LDQudGCKNCwKTog0YPQv9GA0LDQstC70Y/RjtGJ0LjQuSDQsNGA0YXQuNCyINC00LvQuNC90L7QuSAlemkg0LHQsNC50YIo0LApLlxuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjMyCittc2dpZCAiYXJjaGl2ZSBjb250cm9sIG1lbWJlciBzaXplIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyMzUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImFyY2hpdmUgaGFzIG1hbGZvcm1hdHRlZCBjb250cm9sIGxlbmd0aCBgJXMnIgorbXNnaWQgImFyY2hpdmUgaGFzIG1hbGZvcm1hdHRlZCBjb250cm9sIG1lbWJlciBzaXplICclcyciCittc2dzdHIgIiIKKyLQt9Cw0L/QuNGB0Ywg0L4g0LTQu9C40L3QtSDRg9C/0YDQsNCy0LvRj9GO0YnQtdC5INC40L3RhNC+0YDQvNCw0YbQuNC4INCw0YDRhdC40LLQsCDCqyVzwrsg0LjQvNC10LXRgiDQvdC10LTQvtC/0YPRgdGC0LjQvNGL0Lkg0YTQvtGA0LzQsNGCIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjQyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJza2lwcGVkIG1lbWJlciBkYXRhIGZyb20gJXMiCittc2dpZCAic2tpcHBlZCBhcmNoaXZlIGNvbnRyb2wgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ3N0ciAi0L/RgNC+0L/Rg9GJ0LXQvdGLINC00LDQvdC90YvQtSDQutC+0LzQv9C+0L3QtdC90YLQsCDRhNCw0LnQu9CwICVzIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjQ2CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiIG9sZCBkZWJpYW4gcGFja2FnZSwgdmVyc2lvbiAlcy5cbiIKKyN8ICIgc2l6ZSAlbGQgYnl0ZXM6IGNvbnRyb2wgYXJjaGl2ZT0gJXppLCBtYWluIGFyY2hpdmU9ICVsZC5cbiIKK21zZ2lkICIiCisiIG9sZCBkZWJpYW4gcGFja2FnZSwgdmVyc2lvbiAlcy5cbiIKKyIgc2l6ZSAlamQgYnl0ZXM6IGNvbnRyb2wgYXJjaGl2ZT0gJWpkLCBtYWluIGFyY2hpdmU9ICVqZC5cbiIKK21zZ3N0ciAiIgorIiDRgdGC0LDRgNGL0Lkg0L/QsNC60LXRgiBkZWJpYW4sINCy0LXRgNGB0LjRjyAlcy5cbiIKKyIg0YDQsNC30LzQtdGAICVsZCDQsdCw0LnRgijQsCk6INGD0L/RgNCw0LLQu9GP0Y7RidC40Lkg0LDRgNGF0LjQsiDQtNC70LjQvdC+0LkgJXppINCx0LDQudGCKNCwKSxcbiIKKyLQvtGB0L3QvtCy0L3QvtC5INCw0YDRhdC40LIg0LTQu9C40L3QvtC5ICVsZCDQsdCw0LnRgijQsCkuXG4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2ctZGViOiBmaWxlIGxvb2tzIGxpa2UgaXQgbWlnaHQgYmUgYW4gYXJjaGl2ZSB3aGljaCBoYXMgYmVlblxuIgorImRwa2ctZGViOiAgICBjb3JydXB0ZWQgYnkgYmVpbmcgZG93bmxvYWRlZCBpbiBBU0NJSSBtb2RlXG4iCittc2dzdHIgIiIKKyJkcGtnLWRlYjog0YTQsNC50Lsg0LLRi9Cz0LvRj9C00LjRgiDRgtCw0LosINC60LDQuiDQsdGD0LTRgtC+INC10LPQviDQt9Cw0LPRgNGD0LfQuNC70Lgg0LIgQVNDSUlcbiIKKyJkcGtnLWRlYjogICAg0YDQtdC20LjQvNC1INC4INGB0LTQtdC70LDQu9C4LCDRgtCw0LrQuNC8INC+0LHRgNCw0LfQvtC8LCDQvdC10YfQuNGC0LDQtdC80YvQvC5cbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI1OQorIywgYy1mb3JtYXQKK21zZ2lkICJgJS4yNTVzJyBpcyBub3QgYSBkZWJpYW4gZm9ybWF0IGFyY2hpdmUiCittc2dzdHIgIsKrJS4yNTVzwrsg0L3QtSDRj9Cy0LvRj9C10YLRgdGPINCw0YDRhdC40LLQvtC8INCyINGE0L7RgNC80LDRgtC1IGRlYmlhbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI2NgorbXNnaWQgImZhaWxlZCB0byB3cml0ZSB0byBwaXBlIGluIGNvcHkiCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L7RgdGD0YnQtdGB0YLQstC40YLRjCDQt9Cw0L/QuNGB0Ywg0LIg0LrQsNC90LDQuyDQstCy0L7QtNCwL9Cy0YvQstC+0LTQsCDQv9GA0Lgg0LrQvtC/0LjRgNC+0LLQsNC90LjQuCIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI2OAorbXNnaWQgImZhaWxlZCB0byBjbG9zZSBwaXBlIGluIGNvcHkiCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LfQsNC60YDRi9GC0Ywg0LrQsNC90LDQuyDQstCy0L7QtNCwL9Cy0YvQstC+0LTQsCDQv9GA0Lgg0LrQvtC/0LjRgNC+0LLQsNC90LjQuCIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI4NAorbXNnaWQgImRhdGEiCittc2dzdHIgItC00LDQvdC90YvQtSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMwNworbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byBkaXJlY3RvcnkiCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L/QtdGA0LXQudGC0Lgg0LIg0LrQsNGC0LDQu9C+0LMiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozMTAKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGRpcmVjdG9yeSIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRgdC+0LfQtNCw0YLRjCDQutCw0YLQsNC70L7QsyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMxMgorbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byBkaXJlY3RvcnkgYWZ0ZXIgY3JlYXRpbmcgaXQiCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L/QvtGB0LvQtSDRgdC+0LfQtNCw0L3QuNGPINC60LDRgtCw0LvQvtCz0LAg0L/QtdGA0LXQudGC0Lgg0LIg0L3QtdCz0L4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozMjMKK21zZ2lkICI8ZGVjb21wcmVzcz4iCittc2dzdHIgIjxkZWNvbXByZXNzPiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMyNQorbXNnaWQgInBhc3RlIgorbXNnc3RyICLQstGB0YLQsNCy0LrQsCIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjM0MiBkcGtnLWRlYi9leHRyYWN0LmM6MzYzIGRwa2ctZGViL2V4dHJhY3QuYzo0MDIKKyM6IGRwa2ctZGViL2luZm8uYzo3NworIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGEgLmRlYiBmaWxlbmFtZSBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyDRgtGA0LXQsdGD0LXRgiDRg9C60LDQt9Cw0L3QuNGPINCyINC60LDRh9C10YHRgtCy0LUg0LDRgNCz0YPQvNC10L3RgtCwINC40LzQtdC90Lgg0YTQsNC50LvQsCAuZGViIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzQ3IGRwa2ctZGViL2V4dHJhY3QuYzo0MDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIi0tJXMgbmVlZHMgYSB0YXJnZXQgZGlyZWN0b3J5LlxuIgorIlBlcmhhcHMgeW91IHNob3VsZCBiZSB1c2luZyBkcGtnIC0taW5zdGFsbCA/IgorbXNnc3RyICIiCisiLS0lcyDRgtGA0LXQsdGD0LXRgiDRg9C60LDQt9Cw0L3QuNGPINC60LDRgtCw0LvQvtCz0LAg0L3QsNC30L3QsNGH0LXQvdC40Y8uXG4iCisi0JLQtdGA0L7Rj9GC0L3Qviwg0LLQsNC8INGB0LvQtdC00YPQtdGCINC40YHQv9C+0LvRjNC30L7QstCw0YLRjCBkcGtnIC0taW5zdGFsbCIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjM1MCBkcGtnLWRlYi9leHRyYWN0LmM6NDEwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgYXQgbW9zdCB0d28gYXJndW1lbnRzICguZGViIGFuZCBkaXJlY3RvcnkpIgorbXNnc3RyICItLSVzINC/0YDQuNC90LjQvNCw0LXRgiDQvdC1INCx0L7Qu9C10LUg0LTQstGD0YUg0LDRgNCz0YPQvNC10L3RgtC+0LIgKNC40LzRjyDRhNCw0LnQu9CwIC5kZWIg0Lgg0LrQsNGC0LDQu9C+0LMpIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzY1CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgb25seSBvbmUgYXJndW1lbnQgKC5kZWIgZmlsZW5hbWUpIgorbXNnc3RyICItLSVzINC/0YDQuNC90LjQvNCw0LXRgiDRgtC+0LvRjNC60L4g0L7QtNC40L0g0LDRgNCz0YPQvNC10L3RgiAo0LjQvNGPINGE0LDQudC70LAgLmRlYikiCisKKyM6IGRwa2ctZGViL2luZm8uYzo2MworbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byBgLycgZm9yIGNsZWFudXAiCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L/QtdGA0LXQudGC0Lgg0LIg0LrQsNGC0LDQu9C+0LMgwqsvwrsg0LTQu9GPINC+0YfQuNGB0YLQutC4IgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTA2CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW5ub3Qgc3RhdCBmaWxlICclcyciCittc2dpZCAiY29udHJvbCBmaWxlICclcyciCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LLRi9C/0L7Qu9C90LjRgtGMIHN0YXQg0LTQu9GPINGE0LDQudC70LAgwqslc8K7IgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTEwCisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2ctZGViOiBgJS4yNTVzJyBjb250YWlucyBubyBjb250cm9sIGNvbXBvbmVudCBgJS4yNTVzJ1xuIgorbXNnc3RyICJkcGtnLWRlYjogwqslLjI1NXPCuyDQvdC1INGB0L7QtNC10YDQttC40YIg0YPQv9GA0LDQstC70Y/RjtGJ0LXQs9C+INC60L7QvNC/0L7QvdC10L3RgtCwIMKrJS4yNTVzwrtcbiIKKworIzogZHBrZy1kZWIvaW5mby5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICJvcGVuIGNvbXBvbmVudCBgJS4yNTVzJyAoaW4gJS4yNTVzKSBmYWlsZWQgaW4gYW4gdW5leHBlY3RlZCB3YXkiCittc2dzdHIgIiIKKyLQv9C+INC90LXQv9C+0L3Rj9GC0L3QvtC5INC/0YDQuNGH0LjQvdC1INC90LUg0YPQtNCw0LvQvtGB0Ywg0L7RgtC60YDRi9GC0Ywg0LrQvtC80L/QvtC90LXQvdGCIMKrJS4yNTVzwrsgKNC60LDRgtCw0LvQvtCzICUuMjU1cykiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJWQgcmVxdWVzdGVkIGNvbnRyb2wgY29tcG9uZW50IGlzIG1pc3NpbmciCittc2dpZF9wbHVyYWwgIiVkIHJlcXVlc3RlZCBjb250cm9sIGNvbXBvbmVudHMgYXJlIG1pc3NpbmciCittc2dzdHJbMF0gItC+0YLRgdGD0YLRgdGC0LLRg9C10YIgJWQg0LfQsNC/0YDQsNGI0LjQstCw0LXQvNGL0Lkg0YPQv9GA0LDQstC70Y/RjtGJ0LjQuSDQutC+0LzQv9C+0L3QtdC90YIiCittc2dzdHJbMV0gItC+0YLRgdGD0YLRgdGC0LLRg9C10YIgJWQg0LfQsNC/0YDQsNGI0LjQstCw0LXQvNGL0YUg0YPQv9GA0LDQstC70Y/RjtGJ0LjRhSDQutC+0LzQv9C+0L3QtdC90YLQsCIKK21zZ3N0clsyXSAi0L7RgtGB0YPRgtGB0YLQstGD0LXRgiAlZCDQt9Cw0L/RgNCw0YjQuNCy0LDQtdC80YvRhSDRg9C/0YDQsNCy0LvRj9GO0YnQuNGFINC60L7QvNC/0L7QvdC10L3RgtC+0LIiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMzkgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQyNAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc2NhbiBkaXJlY3RvcnkgYCUuMjU1cyciCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L/RgNC+0YHQvNC+0YLRgNC10YLRjCDQutCw0YLQsNC70L7QsyDCqyUuMjU1c8K7IgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTQ4CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzdGF0IGAlLjI1NXMnIChpbiBgJS4yNTVzJykiCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L/QvtC70YPRh9C40YLRjCDQuNC90YTQvtGA0LzQsNGG0LjRjiDQviDRhNCw0LnQu9C1IMKrJS4yNTVzwrsgKNCyIMKrJS4yNTVzwrspIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTUyCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBvcGVuIGAlLjI1NXMnIChpbiBgJS4yNTVzJykiCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L7RgtC60YDRi9GC0Ywg0YTQsNC50LsgwqslLjI1NXPCuyAo0LIgwqslLjI1NXPCuykiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxNjcgZHBrZy1kZWIvaW5mby5jOjE4NSBkcGtnLWRlYi9pbmZvLmM6MTk5CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZWFkIGAlLjI1NXMnIChpbiBgJS4yNTVzJykiCittc2dzdHIgItC+0YjQuNCx0LrQsCDRh9GC0LXQvdC40Y8g0YTQsNC50LvQsCDCqyUuMjU1c8K7ICjQsiDCqyUuMjU1c8K7KSIKKworIzogZHBrZy1kZWIvaW5mby5jOjE3MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiICU3bGQgYnl0ZXMsICU1ZCBsaW5lcyAgICVjICAlLTIwLjEyN3MgJS4xMjdzXG4iCittc2dpZCAiICU3amQgYnl0ZXMsICU1ZCBsaW5lcyAgICVjICAlLTIwLjEyN3MgJS4xMjdzXG4iCittc2dzdHIgIiAlN2xkINCx0LDQudGCKNCwKSwgJTVkINGB0YLRgNC+0LogICAlYyAgJS0yMC4xMjdzICUuMTI3c1xuIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTc0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgICAgbm90IGEgcGxhaW4gZmlsZSAgICAgICAgICAlLjI1NXNcbiIKK21zZ3N0ciAiICAgICDQvdC1INGP0LLQu9GP0LXRgtGB0Y8g0L7QsdGL0YfQvdGL0Lwg0YTQsNC50LvQvtC8ICUuMjU1c1xuIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTg2Cittc2dpZCAiKG5vIGBjb250cm9sJyBmaWxlIGluIGNvbnRyb2wgYXJjaGl2ZSEpXG4iCittc2dzdHIgIijQsiDRg9C/0YDQsNCy0LvRj9GO0YnQtdC8INCw0YDRhdC40LLQtSDQvdC10YIg0YTQsNC50LvQsCDCq2NvbnRyb2zCuyEpXG4iCisKKyM6IGRwa2ctZGViL2luZm8uYzoyMjIKK21zZ2lkICJjb3VsZCBub3Qgb3BlbiB0aGUgYGNvbnRyb2wnIGNvbXBvbmVudCIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQvtGC0LrRgNGL0YLRjCDQutC+0LzQv9C+0L3QtdC90YIgwqtjb250cm9swrsiCisKKyM6IGRwa2ctZGViL2luZm8uYzoyNjEKK21zZ2lkICJmYWlsZWQgZHVyaW5nIHJlYWQgb2YgYGNvbnRyb2wnIGNvbXBvbmVudCIKK21zZ3N0ciAi0L7RiNC40LHQutCwINGH0YLQtdC90LjRjyDQutC+0LzQv9C+0L3QtdC90YLQsCDCq2NvbnRyb2zCuyIKKworIzogZHBrZy1kZWIvaW5mby5jOjI2MworIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nIHRoZSAnJXMnIGNvbXBvbmVudCIKK21zZ3N0ciAi0L7RiNC40LHQutCwINC/0YDQuCDQt9Cw0LrRgNGL0YLQuNC4INC60L7QvNC/0L7QvdC10L3RgtCwIMKrJXPCuyIKKworIzogZHBrZy1kZWIvaW5mby5jOjI3OAorbXNnaWQgIkVycm9yIGluIGZvcm1hdCIKK21zZ3N0ciAi0J3QtdCy0LXRgNC90YvQuSDRhNC+0YDQvNCw0YIiCisKKyM6IGRwa2ctZGViL2luZm8uYzozMjgKK21zZ2lkICItLWNvbnRlbnRzIHRha2VzIGV4YWN0bHkgb25lIGFyZ3VtZW50IgorbXNnc3RyICLQv9Cw0YDQsNC80LXRgtGAIC0tY29udGVudHMg0L/RgNC40L3QuNC80LDQtdGCINGA0L7QstC90L4g0L7QtNC40L0g0LDRgNCz0YPQvNC10L3RgiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjU0CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiBgJXMnIHBhY2thZ2UgYXJjaGl2ZSBiYWNrZW5kIHZlcnNpb24gJXMuXG4iCittc2dzdHIgItCf0YDQvtCz0YDQsNC80LzQsCDRgNCw0LHQvtGC0Ysg0YEg0LDRgNGF0LjQstCw0LzQuCDQv9Cw0LrQtdGC0L7QsiBEZWJpYW4gwqslc8K7LCDQstC10YDRgdC40Y8gJXMuXG4iCisKKyM6IGRwa2ctZGViL21haW4uYzo3MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIkNvbW1hbmRzOlxuIgorI3wgIiAgLWJ8LS1idWlsZCA8ZGlyZWN0b3J5PiBbPGRlYj5dICAgQnVpbGQgYW4gYXJjaGl2ZS5cbiIKKyN8ICIgIC1jfC0tY29udGVudHMgPGRlYj4gICAgICAgICAgICAgIExpc3QgY29udGVudHMuXG4iCisjfCAiICAtSXwtLWluZm8gPGRlYj4gWzxjZmlsZT4gLi4uXSAgICBTaG93IGluZm8gdG8gc3Rkb3V0LlxuIgorI3wgIiAgLVd8LS1zaG93IDxkZWI+ICAgICAgICAgICAgICAgICAgU2hvdyBpbmZvcm1hdGlvbiBvbiBwYWNrYWdlKHMpXG4iCisjfCAiICAtZnwtLWZpZWxkIDxkZWI+IFs8Y2ZpZWxkPiAuLi5dICBTaG93IGZpZWxkKHMpIHRvIHN0ZG91dC5cbiIKKyN8ICIgIC1lfC0tY29udHJvbCA8ZGViPiBbPGRpcmVjdG9yeT5dIEV4dHJhY3QgY29udHJvbCBpbmZvLlxuIgorI3wgIiAgLXh8LS1leHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+ICAgRXh0cmFjdCBmaWxlcy5cbiIKKyN8ICIgIC1YfC0tdmV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gIEV4dHJhY3QgJiBsaXN0IGZpbGVzLlxuIgorI3wgIiAgLS1mc3lzLXRhcmZpbGUgPGRlYj4gICAgICAgICAgICAgT3V0cHV0IGZpbGVzeXN0ZW0gdGFyZmlsZS5cbiIKKyN8ICJcbiIKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtYnwtLWJ1aWxkIDxkaXJlY3Rvcnk+IFs8ZGViPl0gICBCdWlsZCBhbiBhcmNoaXZlLlxuIgorIiAgLWN8LS1jb250ZW50cyA8ZGViPiAgICAgICAgICAgICAgTGlzdCBjb250ZW50cy5cbiIKKyIgIC1JfC0taW5mbyA8ZGViPiBbPGNmaWxlPiAuLi5dICAgIFNob3cgaW5mbyB0byBzdGRvdXQuXG4iCisiICAtV3wtLXNob3cgPGRlYj4gICAgICAgICAgICAgICAgICBTaG93IGluZm9ybWF0aW9uIG9uIHBhY2thZ2UocylcbiIKKyIgIC1mfC0tZmllbGQgPGRlYj4gWzxjZmllbGQ+IC4uLl0gIFNob3cgZmllbGQocykgdG8gc3Rkb3V0LlxuIgorIiAgLWV8LS1jb250cm9sIDxkZWI+IFs8ZGlyZWN0b3J5Pl0gRXh0cmFjdCBjb250cm9sIGluZm8uXG4iCisiICAteHwtLWV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gICBFeHRyYWN0IGZpbGVzLlxuIgorIiAgLVh8LS12ZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PiAgRXh0cmFjdCAmIGxpc3QgZmlsZXMuXG4iCisiICAtUnwtLXJhdy1leHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFeHRyYWN0IGNvbnRyb2wgaW5mbyBhbmQgZmlsZXMuXG4iCisiICAtLWZzeXMtdGFyZmlsZSA8ZGViPiAgICAgICAgICAgICBPdXRwdXQgZmlsZXN5c3RlbSB0YXJmaWxlLlxuIgorIlxuIgorbXNnc3RyICIiCisi0JrQvtC80LDQvdC00Ys6XG4iCisiICAtYnwtLWJ1aWxkIDzQutCw0YLQsNC70L7Qsz4gWzxkZWI+XSAgICAgICAg0YHQvtCx0YDQsNGC0Ywg0LDRgNGF0LjQsi5cbiIKKyIgIC1jfC0tY29udGVudHMgPGRlYj4gICAgICAgICAgICAgICAgINCy0YvQstC10YHRgtC4INGB0L/QuNGB0L7QuiDRhNCw0LnQu9C+0LIg0LDRgNGF0LjQstCwLlxuIgorIiAgLUl8LS1pbmZvIDxkZWI+IFs80YTQsNC50Ls+Li4uXSAgICAgICAgINCy0YvQstC10YHRgtC4INC40L3RhNC+0YDQvNCw0YbQuNGOINCyINGB0YLQsNC90LTQsNGA0YLQvdGL0LkgIgorItC/0L7RgtC+0LpcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgINCy0YvQstC+0LTQsC5cbiIKKyIgIC1XfC0tc2hvdyA8ZGViPiAgICAgICAgICAgICAgICAgICAgINCy0YvQstC10YHRgtC4INC40L3RhNC+0YDQvNCw0YbQuNGOINC+INC/0LDQutC10YLQtSjQsNGFKS5cbiIKKyIgIC1mfC0tZmllbGQgPGRlYj4gWzzQv9C+0LvQtT4uLi5dICAgICAgICDQstGL0LLQtdGB0YLQuCDQv9C+0LvQtSjRjykg0LIg0YHRgtCw0L3QtNCw0YDRgtC90YvQuSDQv9C+0YLQvtC6XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDQstGL0LLQvtC00LAuXG4iCisiICAtZXwtLWNvbnRyb2wgPGRlYj4gWzzQutCw0YLQsNC70L7Qsz5dICAgICAg0LjQt9Cy0LvQtdGH0Ywg0YPQv9GA0LDQstC70Y/RjtGJ0YPRjiDQuNC90YTQvtGA0LzQsNGG0LjRji5cbiIKKyIgIC14fC0tZXh0cmFjdCA8ZGViPiA80LrQsNGC0LDQu9C+0LM+ICAgICAgICDQuNC30LLQu9C10YfRjCDRhNCw0LnQu9GLLlxuIgorIiAgLVh8LS12ZXh0cmFjdCA8ZGViPiA80LrQsNGC0LDQu9C+0LM+ICAgICAgINC40LfQstC70LXRh9GMINGE0LDQudC70Ysg0Lgg0LLRi9Cy0LXRgdGC0Lgg0LjRhSDRgdC/0LjRgdC+0LouXG4iCisiICAtLWZzeXMtdGFyZmlsZSA8ZGViPiAgICAgICAgICAgICAgICDQuNC30LLQu9C10YfRjCDQsNGA0YXQuNCyINGE0LDQudC70L7QstC+0Lkg0YHQuNGB0YLQtdC80YtcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICjRhNCw0LnQuyB0YXIpLlxuIgorIlxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6OTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIjxkZWI+IGlzIHRoZSBmaWxlbmFtZSBvZiBhIERlYmlhbiBmb3JtYXQgYXJjaGl2ZS5cbiIKKyI8Y2ZpbGU+IGlzIHRoZSBuYW1lIG9mIGFuIGFkbWluaXN0cmF0aXZlIGZpbGUgY29tcG9uZW50LlxuIgorIjxjZmllbGQ+IGlzIHRoZSBuYW1lIG9mIGEgZmllbGQgaW4gdGhlIG1haW4gYGNvbnRyb2wnIGZpbGUuXG4iCisiXG4iCittc2dzdHIgIiIKKyI8ZGViPiAtLSDQuNC80Y8g0YTQsNC50LvQsCDQsNGA0YXQuNCy0LAg0LIg0YTQvtGA0LzQsNGC0LUgRGViaWFuLlxuIgorIjzRhNCw0LnQuz4gLS0g0LjQvNGPINGE0LDQudC70LAsINGB0L7QtNC10YDQttCw0YnQtdCz0L4g0LDQtNC80LjQvdC40YHRgtGA0LDRgtC40LLQvdGL0Lkg0LrQvtC80L/QvtC90LXQvdGCLlxuIgorIjzQv9C+0LvQtT4gLS0g0L3QsNC30LLQsNC90LjQtSDQv9C+0LvRjyDQsiDQvtGB0L3QvtCy0L3QvtC8INGD0L/RgNCw0LLQu9GP0Y7RidC10Lwg0YTQsNC50LvQtS5cbiIKKyJcbiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjk5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiT3B0aW9uczpcbiIKKyN8ICIgIC0tc2hvd2Zvcm1hdD08Zm9ybWF0PiAgICAgICAgICAgIFVzZSBhbHRlcm5hdGl2ZSBmb3JtYXQgZm9yIC0tc2hvdy5cbiIKKyN8ICIgIC1EICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVuYWJsZSBkZWJ1Z2dpbmcgb3V0cHV0LlxuIgorI3wgIiAgLS1vbGQsIC0tbmV3ICAgICAgICAgICAgICAgICAgICAgU2VsZWN0IGFyY2hpdmUgZm9ybWF0LlxuIgorI3wgIiAgLS1ub2NoZWNrICAgICAgICAgICAgICAgICAgICAgICAgU3VwcHJlc3MgY29udHJvbCBmaWxlIGNoZWNrIChidWlsZCAiCisjfCAiYmFkXG4iCisjfCAiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhY2thZ2VzKS5cbiIKKyN8ICIgIC16IyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNldCB0aGUgY29tcHJlc3Npb24gbGV2ZWwgd2hlbiAiCisjfCAiYnVpbGRpbmcuXG4iCisjfCAiICAtWjx0eXBlPiAgICAgICAgICAgICAgICAgICAgICAgICBTZXQgdGhlIGNvbXByZXNzaW9uIHR5cGUgdXNlZCB3aGVuICIKKyN8ICJidWlsZGluZy5cbiIKKyN8ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWxsb3dlZCB0eXBlczogZ3ppcCwgeHosIGJ6aXAyLCAiCisjfCAibHptYSwgbm9uZS5cbiIKKyN8ICJcbiIKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tc2hvd2Zvcm1hdD08Zm9ybWF0PiAgICAgICAgICAgIFVzZSBhbHRlcm5hdGl2ZSBmb3JtYXQgZm9yIC0tc2hvdy5cbiIKKyIgIC12LCAtLXZlcmJvc2UgICAgICAgICAgICAgICAgICAgIEVuYWJsZSB2ZXJib3NlIG91dHB1dC5cbiIKKyIgIC1EICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVuYWJsZSBkZWJ1Z2dpbmcgb3V0cHV0LlxuIgorIiAgLS1vbGQsIC0tbmV3ICAgICAgICAgICAgICAgICAgICAgU2VsZWN0IGFyY2hpdmUgZm9ybWF0LlxuIgorIiAgLS1ub2NoZWNrICAgICAgICAgICAgICAgICAgICAgICAgU3VwcHJlc3MgY29udHJvbCBmaWxlIGNoZWNrIChidWlsZCBiYWRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFja2FnZXMpLlxuIgorIiAgLXojICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU2V0IHRoZSBjb21wcmVzc2lvbiBsZXZlbCB3aGVuIGJ1aWxkaW5nLlxuIgorIiAgLVo8dHlwZT4gICAgICAgICAgICAgICAgICAgICAgICAgU2V0IHRoZSBjb21wcmVzc2lvbiB0eXBlIHVzZWQgd2hlbiAiCisiYnVpbGRpbmcuXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFsbG93ZWQgdHlwZXM6IGd6aXAsIHh6LCBiemlwMiwgbHptYSwgIgorIm5vbmUuXG4iCisiXG4iCittc2dzdHIgIiIKKyLQn9Cw0YDQsNC80LXRgtGA0Ys6XG4iCisiICAtLXNob3dmb3JtYXQ9PNGE0L7RgNC80LDRgj4gICAgICAgICAgICAgICDQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0LDQu9GM0YLQtdGA0L3QsNGC0LjQstC90YvQuVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg0YTQvtGA0LzQsNGCINCy0YvQstC+0LTQsCDQsiDQutC+0LzQsNC90LTQtSAtLXNob3cuXG4iCisiICAtRCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDQstC60LvRjtGH0LjRgtGMINCy0YvQstC+0LQg0L7RgtC70LDQtNC+0YfQvdC+0Lkg0LjQvdGE0L7RgNC80LDRhtC40LguXG4iCisiICAtLW9sZCwgLS1uZXcgICAgICAgICAgICAgICAgICAgICAgICDQt9Cw0LTQsNGC0Ywg0YTQvtGA0LzQsNGCINCw0YDRhdC40LLQsC5cbiIKKyIgIC0tbm9jaGVjayAgICAgICAgICAgICAgICAgICAgICAgICAgINC90LUg0L/RgNC+0LLQtdGA0Y/RgtGMINGD0L/RgNCw0LLQu9GP0Y7RidC40Lkg0YTQsNC50LtcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICjRgdC+0LHQuNGA0LDQtdGC0YHRjyDQvdC10L/RgNCw0LLQuNC70YzQvdGL0Lkg0L/QsNC60LXRgikuXG4iCisiICAteiMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDRgNC10LbQuNC8INGB0LbQsNGC0LjRjyDQv9GA0Lgg0YHQsdC+0YDQutC1LlxuIgorIiAgLVo80YLQuNC/PiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg0YLQuNC/INGB0LbQsNGC0LjRjyDQtNC70Y8g0LjRgdC/0L7Qu9GM0LfQvtCy0LDQvdC40Y9cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgINC/0YDQuCDRgdCx0L7RgNC60LUuXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDQlNC+0L/Rg9GB0YLQuNC80YvQtSDQt9C90LDRh9C10L3QuNGPOiBnemlwLCB4eiwgYnppcDIsXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsem1hLCBub25lLlxuIgorIlxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTIxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJVc2UgYGRwa2cnIHRvIGluc3RhbGwgYW5kIHJlbW92ZSBwYWNrYWdlcyBmcm9tIHlvdXIgc3lzdGVtLCBvclxuIgorImBkc2VsZWN0JyBvciBgYXB0aXR1ZGUnIGZvciB1c2VyLWZyaWVuZGx5IHBhY2thZ2UgbWFuYWdlbWVudC4gIFBhY2thZ2VzXG4iCisidW5wYWNrZWQgdXNpbmcgYGRwa2ctZGViIC0tZXh0cmFjdCcgd2lsbCBiZSBpbmNvcnJlY3RseSBpbnN0YWxsZWQgIVxuIgorbXNnc3RyICIiCisiXG4iCisi0JTQu9GPINGD0YHRgtCw0L3QvtCy0LrQuCDQuNC70Lgg0YPQtNCw0LvQtdC90LjRjyDQv9Cw0LrQtdGC0L7QsiDQuNGB0L/QvtC70YzQt9GD0LnRgtC1INC/0YDQvtCz0YDQsNC80LzRgyDCq2Rwa2fCu1xuIgorItC40LvQuCDQtNGA0YPQttC10YHRgtCy0LXQvdC90YvQuSDQuNC90YLQtdGA0YTQtdC50YEg0YPQv9GA0LDQstC70LXQvdC40Y8g0L/QsNC60LXRgtCw0LzQuCDCq2RzZWxlY3TCuyDQuNC70LhcbiIKKyLCq2FwdGl0dWRlwrsuINCf0LDQutC10YLRiywg0YDQsNGB0L/QsNC60L7QstCw0L3QvdGL0LUg0YEg0L/QvtC80L7RidGM0Y4gwqtkcGtnLWRlYiAtLWV4dHJhY3TCuyxcbiIKKyLQsdGD0LTRg9GCINGD0YHRgtCw0L3QvtCy0LvQtdC90Ysg0L3QtdC/0YDQsNCy0LjQu9GM0L3QviFcbiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjEzMgorbXNnaWQgIiIKKyJUeXBlIGRwa2ctZGViIC0taGVscCBmb3IgaGVscCBhYm91dCBtYW5pcHVsYXRpbmcgKi5kZWIgZmlsZXM7XG4iCisiVHlwZSBkcGtnIC0taGVscCBmb3IgaGVscCBhYm91dCBpbnN0YWxsaW5nIGFuZCBkZWluc3RhbGxpbmcgcGFja2FnZXMuIgorbXNnc3RyICIiCisi0KfRgtC+0LHRiyDQv9C+0LvRg9GH0LjRgtGMINC40L3RhNC+0YDQvNCw0YbQuNGOINC+INGA0LDQsdC+0YLQtSDRgSDRhNCw0LnQu9Cw0LzQuCAuZGViLCDQstCy0LXQtNC40YLQtSBkcGtnLWRlYiAtLWhlbHAuXG4iCisi0KfRgtC+0LHRiyDQv9C+0LvRg9GH0LjRgtGMINC40L3RhNC+0YDQvNCw0YbQuNGOINC+0LEg0YPRgdGC0LDQvdC+0LLQutC1INC4INGD0LTQsNC70LXQvdC40Lgg0L/QsNC60LXRgtC+0LIsINCy0LLQtdC00LjRgtC1IGRwa2cgLS0iCisiaGVscC4iCisKKyM6IGRwa2ctZGViL21haW4uYzoxNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBpbnRlZ2VyIGZvciAtJWM6ICclLjI1MHMnIgorbXNnc3RyICLQvdC10LTQvtC/0YPRgdGC0LjQvNC+0LUg0YbQtdC70L7QtSDQtNC70Y8gLSVjOiDCqyUuMjUwc8K7IgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTUxCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgY29tcHJlc3Npb24gbGV2ZWwgZm9yIC0lYzogJWxkJyIKK21zZ3N0ciAi0L3QtdC/0YDQsNCy0LjQu9GM0L3QsNGPINGB0YLQtdC/0LXQvdGMINGB0LbQsNGC0LjRjyDQtNC70Y8gLSVjOiAlbGQiCisKKyM6IGRwa2ctZGViL21haW4uYzoxNjEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBjb21wcmVzc2lvbiB0eXBlIGAlcychIgorbXNnc3RyICLQvdC10LjQt9Cy0LXRgdGC0L3Ri9C5INGC0LjQvyDRgdC20LDRgtC40Y8gLS3CqyVzwrshIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzo1MgorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgZGlnaXQgKGNvZGUgJWQpIGluICVzIgorbXNnc3RyICLRhNCw0LnQuyDCqyUuMjUwc8K7INC/0L7QstGA0LXQttC00ZHQvSAtLSDQvdC1INGG0LjRhNGA0LAgKNC60L7QtCDRgdC40LzQstC+0LvQsCAlZCkg0LIgJXMiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjYwCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtICUuMjUwcyBtaXNzaW5nIgorbXNnc3RyICLRhNCw0LnQuyDCqyUuMjUwc8K7INC/0L7QstGA0LXQttC00ZHQvSAtLSDQvtGC0YHRg9GC0YHRgtCy0YPQtdGCICUuMjUwcyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gbWlzc2luZyBuZXdsaW5lIGFmdGVyICUuMjUwcyIKK21zZ3N0ciAiIgorItGE0LDQudC7IMKrJS4yNTBzwrsg0L/QvtCy0YDQtdC20LTRkdC9IC0tINC+0YLRgdGD0YLRgdGC0LLRg9C10YIg0YHQuNC80LLQvtC7INC60L7QvdGG0LAg0YHRgtGA0L7QutC4INC/0L7RgdC70LUgJS4yNTBzIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzo4OSBkcGtnLXNwbGl0L21haW4uYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcmVhZGluZyAlLjI1MHMiCittc2dzdHIgItC+0YjQuNCx0LrQsCDRh9GC0LXQvdC40Y8gJS4yNTBzIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIG1hZ2ljIGF0IGVuZCBvZiBmaXJzdCBoZWFkZXIiCittc2dzdHIgIiIKKyLRhNCw0LnQuyDCqyUuMjUwc8K7INC/0L7QstGA0LXQttC00ZHQvSAtLSDQvdC10LTQvtC/0YPRgdGC0LjQvNGL0Lkg0LjQtNC10L3RgtC40YTQuNC60LDRgtC+0YAg0YLQuNC/0LAg0LIg0LrQvtC90YbQtSDQv9C10YDQstC+0LPQviAiCisi0LfQsNCz0L7Qu9C+0LLQutCwIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIHBhZGRpbmcgY2hhcmFjdGVyIChjb2RlICVkKSIKK21zZ3N0ciAi0YTQsNC50LsgwqslLjI1MHPCuyDQv9C+0LLRgNC10LbQtNGR0L0gLS0g0L3QtdC00L7Qv9GD0YHRgtC40LzRi9C1INGB0LjQvNCy0L7Qu9GLINC30LDQv9C+0LvQvdC10L3QuNGPICjQutC+0LQgJWQpIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gbnVsbHMgaW4gaW5mbyBzZWN0aW9uIgorbXNnc3RyICLRhNCw0LnQuyDCqyUuMjUwc8K7INC/0L7QstGA0LXQttC00ZHQvSAtLSDQvdGD0LvQtdCy0YvQtSDRgdC40LzQstC+0LvRiyDQsiDQuNC90YTQvtGA0LzQsNGG0LjQvtC90L3QvtC8INGA0LDQt9C00LXQu9C1IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMjIKK21zZ2lkICJmb3JtYXQgdmVyc2lvbiBudW1iZXIiCittc2dzdHIgItGE0L7RgNC80LDRgiDQvdC+0LzQtdGA0LAg0LLQtdGA0YHQuNC4IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBmb3JtYXQgdmVyc2lvbiBgJS4yNTBzJyAtIHlvdSBuZWVkIGEgbmV3ZXIgZHBrZy1zcGxpdCIKK21zZ3N0ciAiIgorItGE0L7RgNC80LDRgiDRhNCw0LnQu9CwIMKrJS4yNTBzwrsg0LjQvNC10LXRgiDQstC10YDRgdC40Y4gwqslLjI1MHPCuyAtLSDQstCw0Lwg0L3Rg9C20LXQvSDQvdC+0LLRi9C5IGRwa2ctc3BsaXQiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyNworbXNnaWQgInBhY2thZ2UgbmFtZSIKK21zZ3N0ciAi0LjQvNGPINC/0LDQutC10YLQsCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTI4Cittc2dpZCAicGFja2FnZSB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAi0L3QvtC80LXRgCDQstC10YDRgdC40Lgg0L/QsNC60LXRgtCwIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMjkKK21zZ2lkICJwYWNrYWdlIGZpbGUgTUQ1IGNoZWNrc3VtIgorbXNnc3RyICLQutC+0L3RgtGA0L7Qu9GM0L3QsNGPINGB0YPQvNC80LAgTUQ1INGE0LDQudC70LAg0L/QsNC60LXRgtCwIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIE1ENSBjaGVja3N1bSBgJS4yNTBzJyIKK21zZ3N0ciAi0YTQsNC50LsgwqslLjI1MHPCuyDQv9C+0LLRgNC10LbQtNGR0L0gLS0g0L3QtdCy0LXRgNC90LDRjyDRgdGD0LzQvNCwIE1ENSDCqyUuMjUwc8K7IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMzQgZHBrZy1zcGxpdC9pbmZvLmM6MTM1Cittc2dpZCAiYXJjaGl2ZSB0b3RhbCBzaXplIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEzNiBkcGtnLXNwbGl0L2luZm8uYzoxMzcKKyMsIGZ1enp5CisjfCBtc2dpZCAicGFydCBvZmZzZXQiCittc2dpZCAiYXJjaGl2ZSBwYXJ0IG9mZnNldCIKK21zZ3N0ciAi0YHQvNC10YnQtdC90LjQtSDRh9Cw0YHRgtC4IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMzkKKyMsIGZ1enp5CisjfCBtc2dpZCAicGFydCBudW1iZXJzIgorbXNnaWQgImFyY2hpdmUgcGFydCBudW1iZXJzIgorbXNnc3RyICLQvdC+0LzQtdGA0LAg0YfQsNGB0YLQuCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTQyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBubyBzbGFzaCBiZXR3ZWVuIHBhcnQgbnVtYmVycyIKK21zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBubyBzbGFzaCBiZXR3ZWVuIGFyY2hpdmUgcGFydCBudW1iZXJzIgorbXNnc3RyICIiCisi0YTQsNC50LsgwqslLjI1MHPCuyDQv9C+0LLRgNC10LbQtNGR0L0gLS0g0L7RgtGB0YPRgtGB0YLQstGD0LXRgiDQutC+0YHQsNGPINGH0LXRgNGC0LAg0LzQtdC20LTRgyDQvdC+0LzQtdGA0LDQvNC4INGH0LDRgdGC0LXQuSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTQ1CisjLCBmdXp6eQorI3wgbXNnaWQgIm51bWJlciBvZiBwYXJ0cyIKK21zZ2lkICJudW1iZXIgb2YgYXJjaGl2ZSBwYXJ0cyIKK21zZ3N0ciAi0LrQvtC70LjRh9C10YHRgtCy0L4g0YfQsNGB0YLQtdC5IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDcKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBudW1iZXIgb2YgcGFydHMiCittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIG51bWJlciBvZiBhcmNoaXZlIHBhcnRzIgorbXNnc3RyICLRhNCw0LnQuyDCqyUuMjUwc8K7INC/0L7QstGA0LXQttC00ZHQvSAtLSDQvdC10LLQtdGA0L3QvtC1INC60L7Qu9C40YfQtdGB0YLQstC+INGH0LDRgdGC0LXQuSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTQ5CisjLCBmdXp6eQorI3wgbXNnaWQgInBhcnRzIG51bWJlciIKK21zZ2lkICJhcmNoaXZlIHBhcnRzIG51bWJlciIKK21zZ3N0ciAi0L3QvtC80LXRgNCwINGH0LDRgdGC0LXQuSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTUxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgcGFydCBudW1iZXIiCittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIGFyY2hpdmUgcGFydCBudW1iZXIiCittc2dzdHIgItGE0LDQudC7IMKrJS4yNTBzwrsg0L/QvtCy0YDQtdC20LTRkdC9IC0tINC90LXQstC10YDQvdGL0Lkg0L3QvtC80LXRgCDRh9Cw0YHRgtC4IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNTcKKyMsIGZ1enp5CisjfCBtc2dpZCAicGFja2FnZSBuYW1lIgorbXNnaWQgInBhY2thZ2UgYXJjaGl0ZWN0dXJlIgorbXNnc3RyICLQuNC80Y8g0L/QsNC60LXRgtCwIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIG1hZ2ljIGF0IGVuZCBvZiBzZWNvbmQgaGVhZGVyIgorbXNnc3RyICIiCisi0YTQsNC50LsgwqslLjI1MHPCuyDQv9C+0LLRgNC10LbQtNGR0L0gLS0g0L3QtdC00L7Qv9GD0YHRgtC40LzRi9C5INC40LTQtdC90YLQuNGE0LjQutCw0YLQvtGAINGC0LjQv9CwINCyINC60L7QvdGG0LUg0LLRgtC+0YDQvtCz0L4gIgorItC30LDQs9C+0LvQvtCy0LrQsCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTY4CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIHNlY29uZCBtZW1iZXIgaXMgbm90IGRhdGEgbWVtYmVyIgorbXNnc3RyICIiCisi0YTQsNC50LsgwqslLjI1MHPCuyDQv9C+0LLRgNC10LbQtNGR0L0gLS0g0LLRgtC+0YDQvtC5INC60L7QvNC/0L7QvdC10L3RgiDQvdC1INGP0LLQu9GP0LXRgtGB0Y8g0LrQvtC80L/QvtC90LXQvdGC0L7QvCDQtNCw0L3QvdGL0YUiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE3NAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSB3cm9uZyBudW1iZXIgb2YgcGFydHMgZm9yIHF1b3RlZCBzaXplcyIKK21zZ3N0ciAiIgorItGE0LDQudC7IMKrJS4yNTBzwrsg0L/QvtCy0YDQtdC20LTRkdC9IC0tINC90LXQstC10YDQvdC+0LUg0YfQuNGB0LvQviDRh9Cw0YHRgtC10Lkg0L/RgNC4INC30LDQtNCw0L3QvdC+0Lwg0YDQsNC30LzQtdGA0LUg0YfQsNGB0YLQuCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTc4CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIHNpemUgaXMgd3JvbmcgZm9yIHF1b3RlZCBwYXJ0IG51bWJlciIKK21zZ3N0ciAi0YTQsNC50LsgwqslLjI1MHPCuyDQv9C+0LLRgNC10LbQtNGR0L0gLS0g0L3QtdC/0YDQsNCy0LjQu9GM0L3Ri9C5INGA0LDQt9C80LXRgCDRg9C60LDQt9Cw0L3QvdC+0Lkg0YfQsNGB0YLQuCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTg0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmc3RhdCBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L/QvtC70YPRh9C40YLRjCDQuNC90YTQvtGA0LzQsNGG0LjRjiDQviDRh9Cw0YHRgtC4INCw0YDRhdC40LLQsCDCqyUuMjUwc8K7IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gdG9vIHNob3J0IgorbXNnc3RyICLRhNCw0LnQuyDCqyUuMjUwc8K7INC/0L7QstGA0LXQttC00ZHQvSAtLSDRgdC70LjRiNC60L7QvCDQutC+0YDQvtGC0LrQuNC5IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyMDIgZHBrZy1zcGxpdC9pbmZvLmM6MjQ5CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBvcGVuIGFyY2hpdmUgcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC+0YLQutGA0YvRgtGMINGH0LDRgdGC0Ywg0LDRgNGF0LjQstCwIMKrJS4yNTBzwrsiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjIwNAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIG5vdCBhbiBhcmNoaXZlIHBhcnQiCittc2dzdHIgItGE0LDQudC7IMKrJS4yNTBzwrsg0L3QtSDRj9Cy0LvRj9C10YLRgdGPINGH0LDRgdGC0YzRjiDQsNGA0YXQuNCy0LAiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjIwOQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiVzOlxuIgorI3wgIiAgICBQYXJ0IGZvcm1hdCB2ZXJzaW9uOiAgICAgICAgICAgICVzXG4iCisjfCAiICAgIFBhcnQgb2YgcGFja2FnZTogICAgICAgICAgICAgICAgJXNcbiIKKyN8ICIgICAgICAgIC4uLiB2ZXJzaW9uOiAgICAgICAgICAgICAgICAlc1xuIgorI3wgIiAgICAgICAgLi4uIE1ENSBjaGVja3N1bTogICAgICAgICAgICVzXG4iCisjfCAiICAgICAgICAuLi4gbGVuZ3RoOiAgICAgICAgICAgICAgICAgJWx1IGJ5dGVzXG4iCisjfCAiICAgICAgICAuLi4gc3BsaXQgZXZlcnk6ICAgICAgICAgICAgJWx1IGJ5dGVzXG4iCisjfCAiICAgIFBhcnQgbnVtYmVyOiAgICAgICAgICAgICAgICAgICAgJWQvJWRcbiIKKyN8ICIgICAgUGFydCBsZW5ndGg6ICAgICAgICAgICAgICAgICAgICAlemkgYnl0ZXNcbiIKKyN8ICIgICAgUGFydCBvZmZzZXQ6ICAgICAgICAgICAgICAgICAgICAlbHUgYnl0ZXNcbiIKKyN8ICIgICAgUGFydCBmaWxlIHNpemUgKHVzZWQgcG9ydGlvbik6ICAlbHUgYnl0ZXNcbiIKKyN8ICJcbiIKK21zZ2lkICIiCisiJXM6XG4iCisiICAgIFBhcnQgZm9ybWF0IHZlcnNpb246ICAgICAgICAgICAgJXNcbiIKKyIgICAgUGFydCBvZiBwYWNrYWdlOiAgICAgICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIHZlcnNpb246ICAgICAgICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gYXJjaGl0ZWN0dXJlOiAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiBNRDUgY2hlY2tzdW06ICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIGxlbmd0aDogICAgICAgICAgICAgICAgICVqZCBieXRlc1xuIgorIiAgICAgICAgLi4uIHNwbGl0IGV2ZXJ5OiAgICAgICAgICAgICVqZCBieXRlc1xuIgorIiAgICBQYXJ0IG51bWJlcjogICAgICAgICAgICAgICAgICAgICVkLyVkXG4iCisiICAgIFBhcnQgbGVuZ3RoOiAgICAgICAgICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgIFBhcnQgb2Zmc2V0OiAgICAgICAgICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgIFBhcnQgZmlsZSBzaXplICh1c2VkIHBvcnRpb24pOiAgJWpkIGJ5dGVzXG4iCisiXG4iCittc2dzdHIgIiIKKyIlczpcbiIKKyIgICAg0JLQtdGA0YHQuNGPINGE0L7RgNC80LDRgtCwINGH0LDRgdGC0Lg6ICAgICAgICAgICAlc1xuIgorIiAgICDQp9Cw0YHRgtGMINC/0LDQutC10YLQsDogICAgICAgICAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiDQstC10YDRgdC40Y86ICAgICAgICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uINGB0YPQvNC80LAgTUQ1OiAgICAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiDQtNC70LjQvdCwOiAgICAgICAgICAgICAgICAgICVsdSDQsdCw0LnRglxuIgorIiAgICAgICAgLi4uINGA0LDQt9Cx0LjQstCw0YLRjCDQutCw0LbQtNGL0LU6ICAgICAgICVsdSDQsdCw0LnRglxuIgorIiAgICDQndC+0LzQtdGAINGH0LDRgdGC0Lg6ICAgICAgICAgICAgICAgICAgICAlZC8lZFxuIgorIiAgICDQoNCw0LfQvNC10YAg0YfQsNGB0YLQuDogICAgICAgICAgICAgICAgICAgJXppINCx0LDQudGCXG4iCisiICAgINCh0LzQtdGJ0LXQvdC40LUg0YfQsNGB0YLQuDogICAgICAgICAgICAgICAgICVsdSDQsdCw0LnRglxuIgorIiAgICDQoNCw0LfQvNC10YAg0YTQsNC50LvQsCDRh9Cw0YHRgtC4XG4iCisiICAgICAgKNC40YHQv9C+0LvRjNC30L7QstCw0L3QvikgICAgICAgICAgICAgICAgJWx1INCx0LDQudGCXG4iCisiXG4iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjIyNQorIywgZnV6enkKKyN8IG1zZ2lkICI8dW5rbm93bj4iCittc2djdHh0ICJhcmNoaXRlY3R1cmUiCittc2dpZCAiPHVua25vd24+IgorbXNnc3RyICI80L3QtdC40LfQstC10YHRgtC10L0+IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyNDQgZHBrZy1zcGxpdC9qb2luLmM6MTA1CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgcmVxdWlyZXMgb25lIG9yIG1vcmUgcGFydCBmaWxlIGFyZ3VtZW50cyIKK21zZ3N0ciAiIgorItC00LvRjyAtLSVzINGC0YDQtdCx0YPQtdGC0YHRjyDRg9C60LDQt9Cw0YLRjCDQvtC00LjQvSDQuNC70Lgg0LHQvtC70LXQtSDRhNCw0LnQu9C+0LIg0YfQsNGB0YLQtdC5INCyINC60LDRh9C10YHRgtCy0LUg0LDRgNCz0YPQvNC10L3RgtC+0LIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjI1NQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlcycgaXMgbm90IGFuIGFyY2hpdmUgcGFydFxuIgorbXNnc3RyICLRhNCw0LnQuyDCqyVzwrsg0L3QtSDRj9Cy0LvRj9C10YLRgdGPINGH0LDRgdGC0YzRjiDQsNGA0YXQuNCy0LBcbiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHV0dGluZyBwYWNrYWdlICVzIHRvZ2V0aGVyIGZyb20gJWQgcGFydDogIgorbXNnaWRfcGx1cmFsICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0czogIgorbXNnc3RyWzBdICLQodC60LvQtdC50LrQsCDQv9Cw0LrQtdGC0LAgJXMg0LjQtyAlZCDRh9Cw0YHRgtC4OiAiCittc2dzdHJbMV0gItCh0LrQu9C10LnQutCwINC/0LDQutC10YLQsCAlcyDQuNC3ICVkINGH0LDRgdGC0LXQuTogIgorbXNnc3RyWzJdICLQodC60LvQtdC50LrQsCDQv9Cw0LrQtdGC0LAgJXMg0LjQtyAlZCDRh9Cw0YHRgtC10Lk6ICIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gb3V0cHV0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L7RgtC60YDRi9GC0Ywg0YDQtdC30YPQu9GM0YLQuNGA0YPRjtGJ0LjQuSDRhNCw0LnQuyDCqyUuMjUwc8K7IgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gKHJlKW9wZW4gaW5wdXQgcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMICjQv9C10YDQtSnQvtGC0LrRgNGL0YLRjCDQuNGB0YXQvtC00L3Rg9GOINGH0LDRgdGC0Ywg0LDRgNGF0LjQstCwIMKrJS4yNTBzwrsiCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjU4CisjLCBmdXp6eQorI3wgbXNnaWQgIlNraXBwaW5nIGRlc2VsZWN0ZWQgcGFja2FnZSAlcy5cbiIKK21zZ2lkICJza2lwcGluZyBzcGxpdCBwYWNrYWdlIGhlYWRlciIKK21zZ3N0ciAi0J/RgNC+0L/Rg9GB0Log0L3QtSDQstGL0LHRgNCw0L3QvdC+0LPQviDQv9Cw0LrQtdGC0LAgJXMuXG4iCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjU5CisjLCBmdXp6eQorI3wgbXNnaWQgIlB1dHRpbmcgcGFja2FnZSAlcyB0b2dldGhlciBmcm9tICVkIHBhcnQ6ICIKKyN8IG1zZ2lkX3BsdXJhbCAiUHV0dGluZyBwYWNrYWdlICVzIHRvZ2V0aGVyIGZyb20gJWQgcGFydHM6ICIKK21zZ2lkICJzcGxpdCBwYWNrYWdlIHBhcnQiCittc2dzdHIgItCh0LrQu9C10LnQutCwINC/0LDQutC10YLQsCAlcyDQuNC3ICVkINGH0LDRgdGC0Lg6ICIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NjkgZHBrZy1zcGxpdC9zcGxpdC5jOjIzNworIywgYy1mb3JtYXQKK21zZ2lkICJkb25lXG4iCittc2dzdHIgItCz0L7RgtC+0LLQvlxuIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo4NQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlcyBgJS4yNTBzJyBhbmQgYCUuMjUwcycgYXJlIG5vdCBwYXJ0cyBvZiB0aGUgc2FtZSBmaWxlIgorbXNnc3RyICLRhNCw0LnQu9GLIMKrJS4yNTBzwrsg0LggwqslLjI1MHPCuyDQvdC1INGP0LLQu9GP0Y7RgtGB0Y8g0YfQsNGB0YLRj9C80Lgg0L7QtNC90L7Qs9C+INC4INGC0L7Qs9C+INC20LUg0YTQsNC50LvQsCIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAidGhlcmUgYXJlIHNldmVyYWwgdmVyc2lvbnMgb2YgcGFydCAlZCAtIGF0IGxlYXN0IGAlLjI1MHMnIGFuZCBgJS4yNTBzJyIKK21zZ3N0ciAiIgorItC/0YDQuNGB0YPRgtGB0YLQstGD0LXRgiDQvdC10YHQutC+0LvRjNC60L4g0LLQtdGA0YHQuNC5INGH0LDRgdGC0LggJWQgLS0g0L/QviDQutGA0LDQudC90LXQuSDQvNC10YDQtSwgwqslLjI1MHPCuyDQuCAiCisiwqslLjI1MHPCuyIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6MTI4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhcnQgJWQgaXMgbWlzc2luZyIKK21zZ3N0ciAi0L7RgtGB0YPRgtGB0YLQstGD0LXRgiDRh9Cw0YHRgtGMICVkIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo0NworIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIHNwbGl0L2pvaW4gdG9vbDsgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAi0J/RgNC+0LPRgNCw0LzQvNCwINGA0LDQt9Cx0LjQtdC90LjRjy/QvtCx0YrQtdC00LjQvdC10L3QuNGPINC/0LDQutC10YLQvtCyIERlYmlhbiDCqyVzwrssINCy0LXRgNGB0LjRjyAlcy5cbiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ29weXJpZ2h0IChDKSAxOTk0LTE5OTYgSWFuIEphY2tzb24uXG4iCittc2dzdHIgIkNvcHlyaWdodCAoQykgMTk5NC0xOTk2IElhbiBKYWNrc29uLlxuIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo2NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtc3wtLXNwbGl0IDxmaWxlPiBbPHByZWZpeD5dICAgICBTcGxpdCBhbiBhcmNoaXZlLlxuIgorIiAgLWp8LS1qb2luIDxwYXJ0PiA8cGFydD4gLi4uICAgICAgSm9pbiBwYXJ0cyB0b2dldGhlci5cbiIKKyIgIC1JfC0taW5mbyA8cGFydD4gLi4uICAgICAgICAgICAgIERpc3BsYXkgaW5mbyBhYm91dCBhIHBhcnQuXG4iCisiICAtYXwtLWF1dG8gLW8gPGNvbXBsZXRlPiA8cGFydD4gICBBdXRvLWFjY3VtdWxhdGUgcGFydHMuXG4iCisiICAtbHwtLWxpc3RxICAgICAgICAgICAgICAgICAgICAgICBMaXN0IHVubWF0Y2hlZCBwaWVjZXMuXG4iCisiICAtZHwtLWRpc2NhcmQgWzxmaWxlbmFtZT4gLi4uXSAgICBEaXNjYXJkIHVubWF0Y2hlZCBwaWVjZXMuXG4iCisiXG4iCittc2dzdHIgIiIKKyLQmtC+0LzQsNC90LTRizpcbiIKKyIgIC1zfC0tc3BsaXQgPNGE0LDQudC7PiBbPNC/0YDQtdGE0LjQutGBPl0gICAgICAg0YDQsNC30LHQuNGC0Ywg0LDRgNGF0LjQsiDQvdCwINGH0LDRgdGC0LguXG4iCisiICAtanwtLWpvaW4gPNGH0LDRgdGC0Yw+IDzRh9Cw0YHRgtGMPiAuLi4gICAgICAg0L7QsdGK0LXQtNC40L3QuNGC0Ywg0YfQsNGB0YLQuC5cbiIKKyIgIC1JfC0taW5mbyA80YfQsNGB0YLRjD4gLi4uICAgICAgICAgICAgICAg0LLRi9Cy0LXRgdGC0Lgg0LjQvdGE0L7RgNC80LDRhtC40Y4g0L4g0YfQsNGB0YLQuC5cbiIKKyIgIC1hfC0tYXV0byAtbyA80YbQtdC70L7QtT4gPNGH0LDRgdGC0Yw+ICAgICAgICDQsNCy0YLQvtC80LDRgtC40YfQtdGB0LrQuCDRgdC+0LHRgNCw0YLRjCDRh9Cw0YHRgtC4LlxuIgorIiAgLWx8LS1saXN0cSAgICAgICAgICAgICAgICAgICAgICAgICAg0L/QvtC60LDQt9Cw0YLRjCDQvdC10YHQvtCy0L/QsNCy0YjQuNC1INGH0LDRgdGC0LguXG4iCisiICAtZHwtLWRpc2NhcmQgWzzRhNCw0LnQuz4gLi4uXSAgICAgICAgICAg0L7RgtCx0YDQvtGB0LjRgtGMINC90LXRgdC+0LLQv9Cw0LLRiNC40LUg0YfQsNGB0YLQuC5cbiIKKyJcbiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6ODIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJPcHRpb25zOlxuIgorI3wgIiAgLS1kZXBvdGRpciA8ZGlyZWN0b3J5PiAgICAgICAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMvJXMuXG4iCisjfCAiICAtU3wtLXBhcnRzaXplIDxzaXplPiAgICAgICAgICAgICBJbiBLaUIsIGZvciAtcyAoZGVmYXVsdCBpcyA0NTApLlxuIgorI3wgIiAgLW98LS1vdXRwdXQgPGZpbGU+ICAgICAgICAgICAgICAgRm9yIC1qIChkZWZhdWx0IGlzIDxwYWNrYWdlPi08dmVyc2lvbj4uIgorI3wgImRlYikuXG4iCisjfCAiICAtUXwtLW5wcXVpZXQgICAgICAgICAgICAgICAgICAgICBCZSBxdWlldCB3aGVuIC1hIGlzIG5vdCBhIHBhcnQuXG4iCisjfCAiICAtLW1zZG9zICAgICAgICAgICAgICAgICAgICAgICAgICBHZW5lcmF0ZSA4LjMgZmlsZW5hbWVzLlxuIgorI3wgIlxuIgorI3wgIkV4aXQgc3RhdHVzOiAwID0gT0s7ICAxID0gLWEgaXMgbm90IGEgcGFydDsgIDIgPSB0cm91YmxlIVxuIgorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1kZXBvdGRpciA8ZGlyZWN0b3J5PiAgICAgICAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMvJXMuXG4iCisiICAtU3wtLXBhcnRzaXplIDxzaXplPiAgICAgICAgICAgICBJbiBLaUIsIGZvciAtcyAoZGVmYXVsdCBpcyA0NTApLlxuIgorIiAgLW98LS1vdXRwdXQgPGZpbGU+ICAgICAgICAgICAgICAgRmlsZW5hbWUsIGZvciAtaiAoZGVmYXVsdCBpc1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGFja2FnZT5fPHZlcnNpb24+XzxhcmNoPi5kZWIpLlxuIgorIiAgLVF8LS1ucHF1aWV0ICAgICAgICAgICAgICAgICAgICAgQmUgcXVpZXQgd2hlbiAtYSBpcyBub3QgYSBwYXJ0LlxuIgorIiAgLS1tc2RvcyAgICAgICAgICAgICAgICAgICAgICAgICAgR2VuZXJhdGUgOC4zIGZpbGVuYW1lcy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorItCf0LDRgNCw0LzQtdGC0YDRizpcbiIKKyIgIC0tZGVwb3RkaXIgPNC60LDRgtCw0LvQvtCzPiAgICAgICAgICAgICAgICDQuNGB0L/QvtC70YzQt9C+0LLQsNGC0YwgPNC60LDRgtCw0LvQvtCzPiDQstC80LXRgdGC0L4gJXMvJXMuXG4iCisiICAtU3wtLXBhcnRzaXplIDzRgNCw0LfQvNC10YA+ICAgICAgICAgICAgICDQsiDQmtC40JEsINC40YHQv9C+0LvRjNC30YPQtdGC0YHRjyDQutC+0LzQsNC90LTQvtC5IC1zXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAo0L/QviDRg9C80L7Qu9GH0LDQvdC40Y4gNDUwKS5cbiIKKyIgIC1vfC0tb3V0cHV0IDzRhNCw0LnQuz4gICAgICAgICAgICAgICAgICDQuNGB0L/QvtC70YzQt9GD0LXRgtGB0Y8g0LrQvtC80LDQvdC00L7QuSAtaixcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICjQv9C+INGD0LzQvtC70YfQsNC90LjRjiA80L/QsNC60LXRgj4tPNCy0LXRgNGB0LjRjz4uZGViKS5cbiIKKyIgIC1RfC0tbnBxdWlldCAgICAgICAgICAgICAgICAgICAgICAgINC90LUg0L/RgNC10LTRg9C/0YDQtdC20LTQsNGC0YwsINC10YHQu9C4INCyIC1hINGD0LrQsNC30LDQvVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg0YTQsNC50LssINC90LUg0Y/QstC70Y/RjtGJ0LjQudGB0Y8g0YfQsNGB0YLRjNGOLlxuIgorIiAgLS1tc2RvcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg0LPQtdC90LXRgNC40YDQvtCy0LDRgtGMINC40LzQtdC90LAg0LLQuNC00LAgOC4zLlxuIgorIlxuIgorItCa0L7QtNGLINC30LDQstC10YDRiNC10L3QuNGPOiAwID0gT0s7ICAxID0gLWEg0L3QtSDRj9Cy0LvRj9C10YLRgdGPINGH0LDRgdGC0YzRjjsgIDIgPSDQv9GA0L7QsdC70LXQvNCwIVxuIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo5MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiRXhpdCBzdGF0dXM6XG4iCisiICAwID0gb2tcbiIKKyIgIDEgPSB3aXRoIC0tYXV0bywgZmlsZSBpcyBub3QgYSBwYXJ0XG4iCisiICAyID0gdHJvdWJsZVxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjEwMworbXNnaWQgIlR5cGUgZHBrZy1zcGxpdCAtLWhlbHAgZm9yIGhlbHAuIgorbXNnc3RyICLQp9GC0L7QsdGLINC/0L7Qu9GD0YfQuNGC0Ywg0YHQv9GA0LDQstC60YMsINCy0LLQtdC00LjRgtC1IGRwa2ctc3BsaXQgLS1oZWxwLiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6MTE1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGZpbGUgaW4gJS4yNTBzIgorbXNnc3RyICLQvdC10L7QttC40LTQsNC90L3Ri9C5INC60L7QvdC10YYg0YTQsNC50LvQsCAlLjI1MHMiCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjEyNgorbXNnaWQgInBhcnQgc2l6ZSBpcyBmYXIgdG9vIGxhcmdlIG9yIGlzIG5vdCBwb3NpdGl2ZSIKK21zZ3N0ciAi0YDQsNC30LzQtdGAINGH0LDRgdGC0Lgg0YHQu9C40YjQutC+0Lwg0LLQtdC70LjQuiDQuNC70Lgg0L3QtSDQv9C+0LvQvtC20LjRgtC10LvQtdC9IgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMzAKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFydCBzaXplIG11c3QgYmUgYXQgbGVhc3QgJWQgS2lCICh0byBhbGxvdyBmb3IgaGVhZGVyKSIKK21zZ3N0ciAi0YDQsNC30LzQtdGAINGH0LDRgdGC0Lgg0LTQvtC70LbQtdC9INCx0YvRgtGMLCDQv9C+INC60YDQsNC50L3QtdC5INC80LXRgNC1LCAlZCDQmtC40JEgKNGA0LDQt9C80LXRgCDQt9Cw0LPQvtC70L7QstC60LApIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgZGVwb3QgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICLQvtGI0LjQsdC60LAg0YfRgtC10L3QuNGPINGA0LDQsdC+0YfQtdCz0L4g0LrQsNGC0LDQu9C+0LPQsCDCqyUuMjUwc8K7IgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTM0Cittc2dpZCAiLS1hdXRvIHJlcXVpcmVzIHRoZSB1c2Ugb2YgdGhlIC0tb3V0cHV0IG9wdGlvbiIKK21zZ3N0ciAi0L/QsNGA0LDQvNC10YLRgCAtLWF1dG8g0YLRgNC10LHRg9C10YIg0L3QsNC70LjRh9C40Y8g0L/QsNGA0LDQvNC10YLRgNCwIC0tb3V0cHV0IgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTM2Cittc2dpZCAiLS1hdXRvIHJlcXVpcmVzIGV4YWN0bHkgb25lIHBhcnQgZmlsZSBhcmd1bWVudCIKK21zZ3N0ciAi0L/QsNGA0LDQvNC10YLRgCAtLWF1dG8g0L/RgNC40L3QuNC80LDQtdGCINCyINGC0L7Rh9C90L7RgdGC0Lgg0L7QtNC40L0g0LDRgNCz0YPQvNC10L3RgtCwICjQuNC80Y8g0YfQsNGB0YLQuCDRhNCw0LnQu9CwKSIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE0MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L/RgNC+0YfQuNGC0LDRgtGMINGH0LDRgdGC0Ywg0LDRgNGF0LjQstCwIMKrJS4yNTBzwrsiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxNDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiRmlsZSBgJS4yNTBzJyBpcyBub3QgcGFydCBvZiBhIG11bHRpcGFydCBhcmNoaXZlLlxuIgorbXNnc3RyICLQpNCw0LnQuyDCqyUuMjUwc8K7INC90LUg0Y/QstC70Y/QtdGC0YHRjyDRh9Cw0YHRgtGM0Y4g0LDRgNGF0LjQstCwLlxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTc5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW9wZW4gcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC30LDQvdC+0LLQviDQvtGC0LrRgNGL0YLRjCDRh9Cw0YHRgtGMINCw0YDRhdC40LLQsCDCqyUuMjUwc8K7IgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTgyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIG5ldyBkZXBvdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC+0YLQutGA0YvRgtGMINC90L7QstGL0Lkg0YDQsNCx0L7Rh9C40Lkg0YTQsNC50LsgwqslLjI1MHPCuyIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE4NAorbXNnaWQgImV4dHJhY3Rpbmcgc3BsaXQgcGFydCIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTkyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW5hbWUgbmV3IGRlcG90IGZpbGUgYCUuMjUwcycgdG8gYCUuMjUwcyciCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L/QtdGA0LXQuNC80LXQvdC+0LLQsNGC0Ywg0L3QvtCy0YvQuSDRgNCw0LHQvtGH0LjQuSDRhNCw0LnQuyDCqyUuMjUwc8K7INCyIMKrJS4yNTBzwrsiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFydCAlZCBvZiBwYWNrYWdlICVzIGZpbGVkIChzdGlsbCB3YW50ICIKK21zZ3N0ciAi0KfQsNGB0YLRjCAlZCDQv9Cw0LrQtdGC0LAgJXMg0YHQvtGF0YDQsNC90LXQvdCwINCyINGE0LDQudC7ICjQvtGB0YLQsNC70L7RgdGMINGB0L7Qt9C00LDRgtGMICIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjIwMAorbXNnaWQgIiBhbmQgIgorbXNnc3RyICIg0LggIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjE0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkZWxldGUgdXNlZC11cCBkZXBvdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGD0LTQsNC70LjRgtGMINGD0LbQtSDQvdC1INC90YPQttC90YvQuSDRgNCw0LHQvtGH0LjQuSDRhNCw0LnQuyDCqyUuMjUwc8K7IgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjM1Cittc2dpZCAiSnVuayBmaWxlcyBsZWZ0IGFyb3VuZCBpbiB0aGUgZGVwb3QgZGlyZWN0b3J5OlxuIgorbXNnc3RyICLQkiDRgNCw0LHQvtGH0LXQvCDQutCw0YLQsNC70L7Qs9C1INC+0YHRgtCw0LvQuNGB0Ywg0L/QvtGB0YLQvtGA0L7QvdC90LjQtSDRhNCw0LnQu9GLOlxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjQwIGRwa2ctc3BsaXQvcXVldWUuYzoyNjkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgYCUuMjUwcyciCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L/QvtC70YPRh9C40YLRjCDQuNC90YTQvtGA0LzQsNGG0LjRjiDQviDRhNCw0LnQu9C1IMKrJS4yNTBzwrsiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNDMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiAlcyAoJWx1IGJ5dGVzKVxuIgorbXNnaWQgIiAlcyAoJWpkIGJ5dGVzKVxuIgorbXNnc3RyICIgJXMgKCVsdSDQsdCw0LnRgijQsCkpXG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICVzIChub3QgYSBwbGFpbiBmaWxlKVxuIgorbXNnc3RyICIgJXMgKNC90LUg0Y/QstC70Y/QtdGC0YHRjyDQvtCx0YvRh9C90YvQvCDRhNCw0LnQu9C+0LwpXG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNTAKK21zZ2lkICJQYWNrYWdlcyBub3QgeWV0IHJlYXNzZW1ibGVkOlxuIgorbXNnc3RyICLQldGJ0ZEg0L3QtSDQv9C10YDQtdGB0L7QsdGA0LDQvdC90YvQtSDQv9Cw0LrQtdGC0Ys6XG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIFBhY2thZ2UgJXM6IHBhcnQocykgIgorbXNnc3RyICIg0J/QsNC60LXRgiAlczog0YfQsNGB0YLRjCjQtdC5KSAiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFydCBmaWxlIGAlLjI1MHMnIGlzIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgItGH0LDRgdGC0Ywg0LDRgNGF0LjQstCwIMKrJS4yNTBzwrsg0L3QtSDRj9Cy0LvRj9C10YLRgdGPINC+0LHRi9GH0L3Ri9C8INGE0LDQudC70L7QvCIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI3OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiKHRvdGFsICVsdSBieXRlcylcbiIKK21zZ2lkICIodG90YWwgJWpkIGJ5dGVzKVxuIgorbXNnc3RyICIo0LLRgdC10LPQviAlbHUg0LHQsNC50YIo0LApKVxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MzA0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkaXNjYXJkIGAlLjI1MHMnIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGD0LTQsNC70LjRgtGMINGE0LDQudC7IMKrJS4yNTBzwrsiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzozMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGVsZXRlZCAlcy5cbiIKK21zZ3N0ciAiJXMg0YPQtNCw0LvRkdC9LlxuIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6NzAgZHBrZy1zcGxpdC9zcGxpdC5jOjc2IGRwa2ctc3BsaXQvc3BsaXQuYzo4MQorIywgZnV6enkKKyN8IG1zZ2lkICJkcGtnLWRlYiBmaWVsZCBleHRyYWN0aW9uIgorbXNnaWQgInBhY2thZ2UgZmllbGQgdmFsdWUgZXh0cmFjdGlvbiIKK21zZ3N0ciAi0LjQt9Cy0LvQtdGH0LXQvdC40LUg0L/QvtC70Y8g0YEg0L/QvtC80L7RidGM0Y4gZHBrZy1kZWIiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxMzEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gc291cmNlIGZpbGUgYCUuMjUwcyciCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L7RgtC60YDRi9GC0Ywg0LjRgdGF0L7QtNC90YvQuSDRhNCw0LnQuyDCqyUuMjUwc8K7IgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTMzCittc2dpZCAidW5hYmxlIHRvIGZzdGF0IHNvdXJjZSBmaWxlIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC/0L7Qu9GD0YfQuNGC0Ywg0LjQvdGE0L7RgNC80LDRhtC40Y4g0L7QsSDQuNGB0YXQvtC00L3QvtC8INGE0LDQudC70LUiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxMzUKKyMsIGMtZm9ybWF0Cittc2dpZCAic291cmNlIGZpbGUgYCUuMjUwcycgbm90IGEgcGxhaW4gZmlsZSIKK21zZ3N0ciAi0LjRgdGF0L7QtNC90YvQuSDRhNCw0LnQuyDCqyUuMjUwc8K7INC90LUg0Y/QstC70Y/QtdGC0YHRjyDQvtCx0YvRh9C90YvQvCDRhNCw0LnQu9C+0LwiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxNTMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIlB1dHRpbmcgcGFja2FnZSAlcyB0b2dldGhlciBmcm9tICVkIHBhcnQ6ICIKKyN8IG1zZ2lkX3BsdXJhbCAiUHV0dGluZyBwYWNrYWdlICVzIHRvZ2V0aGVyIGZyb20gJWQgcGFydHM6ICIKK21zZ2lkICJTcGxpdHRpbmcgcGFja2FnZSAlcyBpbnRvICVkIHBhcnQ6ICIKK21zZ2lkX3BsdXJhbCAiU3BsaXR0aW5nIHBhY2thZ2UgJXMgaW50byAlZCBwYXJ0czogIgorbXNnc3RyWzBdICLQodC60LvQtdC50LrQsCDQv9Cw0LrQtdGC0LAgJXMg0LjQtyAlZCDRh9Cw0YHRgtC4OiAiCittc2dzdHJbMV0gItCh0LrQu9C10LnQutCwINC/0LDQutC10YLQsCAlcyDQuNC3ICVkINGH0LDRgdGC0LXQuTogIgorbXNnc3RyWzJdICLQodC60LvQtdC50LrQsCDQv9Cw0LrQtdGC0LAgJXMg0LjQtyAlZCDRh9Cw0YHRgtC10Lk6ICIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjE5MworbXNnaWQgIiIKKyJIZWFkZXIgaXMgdG9vIGxvbmcsIG1ha2luZyBwYXJ0IHRvbyBsb25nLiBZb3VyIHBhY2thZ2UgbmFtZSBvciB2ZXJzaW9uXG4iCisibnVtYmVycyBtdXN0IGJlIGV4dHJhb3JkaW5hcmlseSBsb25nLCBvciBzb21ldGhpbmcuIEdpdmluZyB1cC5cbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MjQ5Cittc2dpZCAiLS1zcGxpdCBuZWVkcyBhIHNvdXJjZSBmaWxlbmFtZSBhcmd1bWVudCIKK21zZ3N0ciAi0LTQtdC50YHRgtCy0LjQtSAtLXNwbGl0INGC0YDQtdCx0YPQtdGCINGD0LrQsNC30LDQvdC40Y8g0LjQvNC10L3QuCDQuNGB0YXQvtC00L3QvtCz0L4g0YTQsNC50LvQsCIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjI1MgorbXNnaWQgIi0tc3BsaXQgdGFrZXMgYXQgbW9zdCBhIHNvdXJjZSBmaWxlbmFtZSBhbmQgZGVzdGluYXRpb24gcHJlZml4IgorbXNnc3RyICIiCisi0LTQtdC50YHRgtCy0LjQtSAtLXNwbGl0INC90LUg0L/RgNC40L3QuNC80LDQtdGCINCw0YDQs9GD0LzQtdC90YLQvtCyLCDQv9C+0LzQuNC80L4g0LjQvNC10L3QuCDQuNGB0YXQvtC00L3QvtCz0L4g0YTQsNC50LvQsCDQuCAiCisi0L/RgNC10YTQuNC60YHQsCDQvNC10YHRgtCwINC90LDQt9C90LDRh9C10L3QuNGPIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6ODQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAtMjAwMiBXaWNoZXJ0IEFra2VybWFuLlxuIgorIkNvcHlyaWdodCAoQykgMjAwOS0yMDEwIFJhcGhhZWwgSGVydHpvZy5cbiIKK21zZ3N0ciAiIgorIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAtMjAwMiBXaWNoZXJ0IEFra2VybWFuLlxuIgorIkNvcHlyaWdodCAoQykgMjAwOS0yMDEwIFJhcGhhZWwgSGVydHpvZy5cbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEwMQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSA8Y29tbWFuZD5cbiIKKyN8ICJcbiIKKyN8ICJDb21tYW5kczpcbiIKKyN8ICIgIC0taW5zdGFsbCA8bGluaz4gPG5hbWU+IDxwYXRoPiA8cHJpb3JpdHk+XG4iCisjfCAiICAgIFstLXNsYXZlIDxsaW5rPiA8bmFtZT4gPHBhdGg+XSAuLi5cbiIKKyN8ICIgICAgICAgICAgICAgICAgICAgICAgICAgICBhZGQgYSBncm91cCBvZiBhbHRlcm5hdGl2ZXMgdG8gdGhlIHN5c3RlbS5cbiIKKyN8ICIgIC0tcmVtb3ZlIDxuYW1lPiA8cGF0aD4gICByZW1vdmUgPHBhdGg+IGZyb20gdGhlIDxuYW1lPiBncm91cCAiCisjfCAiYWx0ZXJuYXRpdmUuXG4iCisjfCAiICAtLXJlbW92ZS1hbGwgPG5hbWU+ICAgICAgcmVtb3ZlIDxuYW1lPiBncm91cCBmcm9tIHRoZSBhbHRlcm5hdGl2ZXMgIgorI3wgInN5c3RlbS5cbiIKKyN8ICIgIC0tYXV0byA8bmFtZT4gICAgICAgICAgICBzd2l0Y2ggdGhlIG1hc3RlciBsaW5rIDxuYW1lPiB0byBhdXRvbWF0aWMgIgorI3wgIm1vZGUuXG4iCisjfCAiICAtLWRpc3BsYXkgPG5hbWU+ICAgICAgICAgZGlzcGxheSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgPG5hbWU+IGdyb3VwLlxuIgorI3wgIiAgLS1xdWVyeSA8bmFtZT4gICAgICAgICAgIG1hY2hpbmUgcGFyc2VhYmxlIHZlcnNpb24gb2YgLS1kaXNwbGF5ICIKKyN8ICI8bmFtZT4uXG4iCisjfCAiICAtLWxpc3QgPG5hbWU+ICAgICAgICAgICAgZGlzcGxheSBhbGwgdGFyZ2V0cyBvZiB0aGUgPG5hbWU+IGdyb3VwLlxuIgorI3wgIiAgLS1jb25maWcgPG5hbWU+ICAgICAgICAgIHNob3cgYWx0ZXJuYXRpdmVzIGZvciB0aGUgPG5hbWU+IGdyb3VwIGFuZCBhc2sgIgorI3wgInRoZVxuIgorI3wgIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzZXIgdG8gc2VsZWN0IHdoaWNoIG9uZSB0byB1c2UuXG4iCisjfCAiICAtLXNldCA8bmFtZT4gPHBhdGg+ICAgICAgc2V0IDxwYXRoPiBhcyBhbHRlcm5hdGl2ZSBmb3IgPG5hbWU+LlxuIgorI3wgIiAgLS1hbGwgICAgICAgICAgICAgICAgICAgIGNhbGwgLS1jb25maWcgb24gYWxsIGFsdGVybmF0aXZlcy5cbiIKKyN8ICJcbiIKKyN8ICI8bGluaz4gaXMgdGhlIHN5bWxpbmsgcG9pbnRpbmcgdG8gJXMvPG5hbWU+LlxuIgorI3wgIiAgKGUuZy4gL3Vzci9iaW4vcGFnZXIpXG4iCisjfCAiPG5hbWU+IGlzIHRoZSBtYXN0ZXIgbmFtZSBmb3IgdGhpcyBsaW5rIGdyb3VwLlxuIgorI3wgIiAgKGUuZy4gcGFnZXIpXG4iCisjfCAiPHBhdGg+IGlzIHRoZSBsb2NhdGlvbiBvZiBvbmUgb2YgdGhlIGFsdGVybmF0aXZlIHRhcmdldCBmaWxlcy5cbiIKKyN8ICIgIChlLmcuIC91c3IvYmluL2xlc3MpXG4iCisjfCAiPHByaW9yaXR5PiBpcyBhbiBpbnRlZ2VyOyBvcHRpb25zIHdpdGggaGlnaGVyIG51bWJlcnMgaGF2ZSBoaWdoZXIgIgorI3wgInByaW9yaXR5IGluXG4iCisjfCAiICBhdXRvbWF0aWMgbW9kZS5cbiIKKyN8ICJcbiIKKyN8ICJPcHRpb25zOlxuIgorI3wgIiAgLS1hbHRkaXIgPGRpcmVjdG9yeT4gICAgIGNoYW5nZSB0aGUgYWx0ZXJuYXRpdmVzIGRpcmVjdG9yeS5cbiIKKyN8ICIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICBjaGFuZ2UgdGhlIGFkbWluaXN0cmF0aXZlIGRpcmVjdG9yeS5cbiIKKyN8ICIgIC0tc2tpcC1hdXRvICAgICAgICAgICAgICBza2lwIHByb21wdCBmb3IgYWx0ZXJuYXRpdmVzIGNvcnJlY3RseSAiCisjfCAiY29uZmlndXJlZFxuIgorI3wgIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGluIGF1dG9tYXRpYyBtb2RlIChyZWxldmFudCBmb3IgLS1jb25maWcgIgorI3wgIm9ubHkpXG4iCisjfCAiICAtLXZlcmJvc2UgICAgICAgICAgICAgICAgdmVyYm9zZSBvcGVyYXRpb24sIG1vcmUgb3V0cHV0LlxuIgorI3wgIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHF1aWV0IG9wZXJhdGlvbiwgbWluaW1hbCBvdXRwdXQuXG4iCisjfCAiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyN8ICIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC0taW5zdGFsbCA8bGluaz4gPG5hbWU+IDxwYXRoPiA8cHJpb3JpdHk+XG4iCisiICAgIFstLXNsYXZlIDxsaW5rPiA8bmFtZT4gPHBhdGg+XSAuLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBhZGQgYSBncm91cCBvZiBhbHRlcm5hdGl2ZXMgdG8gdGhlIHN5c3RlbS5cbiIKKyIgIC0tcmVtb3ZlIDxuYW1lPiA8cGF0aD4gICByZW1vdmUgPHBhdGg+IGZyb20gdGhlIDxuYW1lPiBncm91cCBhbHRlcm5hdGl2ZS5cbiIKKyIgIC0tcmVtb3ZlLWFsbCA8bmFtZT4gICAgICByZW1vdmUgPG5hbWU+IGdyb3VwIGZyb20gdGhlIGFsdGVybmF0aXZlcyAiCisic3lzdGVtLlxuIgorIiAgLS1hdXRvIDxuYW1lPiAgICAgICAgICAgIHN3aXRjaCB0aGUgbWFzdGVyIGxpbmsgPG5hbWU+IHRvIGF1dG9tYXRpYyBtb2RlLlxuIgorIiAgLS1kaXNwbGF5IDxuYW1lPiAgICAgICAgIGRpc3BsYXkgaW5mb3JtYXRpb24gYWJvdXQgdGhlIDxuYW1lPiBncm91cC5cbiIKKyIgIC0tcXVlcnkgPG5hbWU+ICAgICAgICAgICBtYWNoaW5lIHBhcnNlYWJsZSB2ZXJzaW9uIG9mIC0tZGlzcGxheSA8bmFtZT4uXG4iCisiICAtLWxpc3QgPG5hbWU+ICAgICAgICAgICAgZGlzcGxheSBhbGwgdGFyZ2V0cyBvZiB0aGUgPG5hbWU+IGdyb3VwLlxuIgorIiAgLS1nZXQtc2VsZWN0aW9ucyAgICAgICAgIGxpc3QgbWFzdGVyIGFsdGVybmF0aXZlIG5hbWVzIGFuZCB0aGVpciBzdGF0dXMuXG4iCisiICAtLXNldC1zZWxlY3Rpb25zICAgICAgICAgcmVhZCBhbHRlcm5hdGl2ZSBzdGF0dXMgZnJvbSBzdGFuZGFyZCBpbnB1dC5cbiIKKyIgIC0tY29uZmlnIDxuYW1lPiAgICAgICAgICBzaG93IGFsdGVybmF0aXZlcyBmb3IgdGhlIDxuYW1lPiBncm91cCBhbmQgYXNrICIKKyJ0aGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2VyIHRvIHNlbGVjdCB3aGljaCBvbmUgdG8gdXNlLlxuIgorIiAgLS1zZXQgPG5hbWU+IDxwYXRoPiAgICAgIHNldCA8cGF0aD4gYXMgYWx0ZXJuYXRpdmUgZm9yIDxuYW1lPi5cbiIKKyIgIC0tYWxsICAgICAgICAgICAgICAgICAgICBjYWxsIC0tY29uZmlnIG9uIGFsbCBhbHRlcm5hdGl2ZXMuXG4iCisiXG4iCittc2dzdHIgIiIKKyLQmNGB0L/QvtC70YzQt9C+0LLQsNC90LjQtTogJXMgWzzQv9Cw0YDQsNC80LXRgtGAPiAuLi5dIDzQutC+0LzQsNC90LTQsD5cbiIKKyJcbiIKKyLQmtC+0LzQsNC90LTRizpcbiIKKyIgIC0taW5zdGFsbCA80YHRgdGL0LvQutCwPiA80LjQvNGPPiA80L/Rg9GC0Yw+IDzQv9GA0LjQvtGA0LjRgtC10YI+XG4iCisiICAgIFstLXNsYXZlIDzRgdGB0YvQu9C60LA+IDzQuNC80Y8+IDzQv9GD0YLRjD5dIC4uLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgINC00L7QsdCw0LLQuNGC0Ywg0LPRgNGD0L/QvyDQsNC70YzRgtC10YDQvdCw0YLQuNCyINCyINGB0LjRgdGC0LXQvNGDLlxuIgorIiAgLS1yZW1vdmUgPNC40LzRjz4gPNC/0YPRgtGMPiAgINGD0LTQsNC70LjRgtGMIDzQv9GD0YLRjD4g0LjQtyDQs9GA0YPQv9C/0Ysg0LDQu9GM0YLQtdGA0L3QsNGC0LjQsiDRgSA80LjQvNC10L3QtdC8Pi5cbiIKKyIgIC0tcmVtb3ZlLWFsbCA80LjQvNGPPiAgICAgINGD0LTQsNC70LjRgtGMINCz0YDRg9C/0L/RgyDQsNC70YzRgtC10YDQvdCw0YLQuNCyINGBINC40LzQtdC90LXQvCA80LjQvNGPPiDQuNC3ICIKKyLRgdC40YHRgtC10LzRiy5cbiIKKyIgIC0tYXV0byA80LjQvNGPPiAgICAgICAgICAgIHN3aXRjaCB0aGUgbWFzdGVyIGxpbmsgPNC40LzRjz4gdG8gYXV0b21hdGljIG1vZGUuXG4iCisiICAtLWRpc3BsYXkgPNC40LzRjz4gICAgICAgICBkaXNwbGF5IGluZm9ybWF0aW9uIGFib3V0IHRoZSA80LjQvNGPPiBncm91cC5cbiIKKyIgIC0tcXVlcnkgPNC40LzRjz4gICAgICAgICAgIG1hY2hpbmUgcGFyc2VhYmxlIHZlcnNpb24gb2YgLS1kaXNwbGF5IDzQuNC80Y8+LlxuIgorIiAgLS1saXN0IDzQuNC80Y8+ICAgICAgICAgICAgZGlzcGxheSBhbGwgdGFyZ2V0cyBvZiB0aGUgPNC40LzRjz4gZ3JvdXAuXG4iCisiICAtLWNvbmZpZyA80LjQvNGPPiAgICAgICAgICBzaG93IGFsdGVybmF0aXZlcyBmb3IgdGhlIDzQuNC80Y8+IGdyb3VwIGFuZCBhc2sgdGhlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlciB0byBzZWxlY3Qgd2hpY2ggb25lIHRvIHVzZS5cbiIKKyIgIC0tc2V0IDzQuNC80Y8+IDzQv9GD0YLRjD4gICAgICBzZXQgPNC/0YPRgtGMPiBhcyBhbHRlcm5hdGl2ZSBmb3IgPNC40LzRjz4uXG4iCisiICAtLWFsbCAgICAgICAgICAgICAgICAgICAgY2FsbCAtLWNvbmZpZyBvbiBhbGwgYWx0ZXJuYXRpdmVzLlxuIgorIlxuIgorIjzRgdGB0YvQu9C60LA+IGlzIHRoZSBzeW1saW5rIHBvaW50aW5nIHRvICVzLzxuYW1lPi5cbiIKKyIgIChlLmcuIC91c3IvYmluL3BhZ2VyKVxuIgorIjzQuNC80Y8+IGlzIHRoZSBtYXN0ZXIgbmFtZSBmb3IgdGhpcyBsaW5rIGdyb3VwLlxuIgorIiAgKGUuZy4gcGFnZXIpXG4iCisiPNC/0YPRgtGMPiBpcyB0aGUgbG9jYXRpb24gb2Ygb25lIG9mIHRoZSBhbHRlcm5hdGl2ZSB0YXJnZXQgZmlsZXMuXG4iCisiICAoZS5nLiAvdXNyL2Jpbi9sZXNzKVxuIgorIjzQv9GA0LjQvtGA0LjRgtC10YI+IGlzIGFuIGludGVnZXI7IG9wdGlvbnMgd2l0aCBoaWdoZXIgbnVtYmVycyBoYXZlIGhpZ2hlciBwcmlvcml0eSAiCisiaW5cbiIKKyIgIGF1dG9tYXRpYyBtb2RlLlxuIgorIlxuIgorItCf0LDRgNCw0LzQtdGC0YDRizpcbiIKKyIgIC0tYWx0ZGlyIDxkaXJlY3Rvcnk+ICAgICBjaGFuZ2UgdGhlIGFsdGVybmF0aXZlcyBkaXJlY3RvcnkuXG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgY2hhbmdlIHRoZSBhZG1pbmlzdHJhdGl2ZSBkaXJlY3RvcnkuXG4iCisiICAtLXNraXAtYXV0byAgICAgICAgICAgICAgc2tpcCBwcm9tcHQgZm9yIGFsdGVybmF0aXZlcyBjb3JyZWN0bHkgIgorImNvbmZpZ3VyZWRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBhdXRvbWF0aWMgbW9kZSAocmVsZXZhbnQgZm9yIC0tY29uZmlnIG9ubHkpXG4iCisiICAtLXZlcmJvc2UgICAgICAgICAgICAgICAgdmVyYm9zZSBvcGVyYXRpb24sIG1vcmUgb3V0cHV0LlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHF1aWV0IG9wZXJhdGlvbiwgbWluaW1hbCBvdXRwdXQuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyI8bGluaz4gaXMgdGhlIHN5bWxpbmsgcG9pbnRpbmcgdG8gJXMvPG5hbWU+LlxuIgorIiAgKGUuZy4gL3Vzci9iaW4vcGFnZXIpXG4iCisiPG5hbWU+IGlzIHRoZSBtYXN0ZXIgbmFtZSBmb3IgdGhpcyBsaW5rIGdyb3VwLlxuIgorIiAgKGUuZy4gcGFnZXIpXG4iCisiPHBhdGg+IGlzIHRoZSBsb2NhdGlvbiBvZiBvbmUgb2YgdGhlIGFsdGVybmF0aXZlIHRhcmdldCBmaWxlcy5cbiIKKyIgIChlLmcuIC91c3IvYmluL2xlc3MpXG4iCisiPHByaW9yaXR5PiBpcyBhbiBpbnRlZ2VyOyBvcHRpb25zIHdpdGggaGlnaGVyIG51bWJlcnMgaGF2ZSBoaWdoZXIgcHJpb3JpdHkgIgorImluXG4iCisiICBhdXRvbWF0aWMgbW9kZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTMxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiT3B0aW9uczpcbiIKKyN8ICIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICBzZXQgdGhlIGRpcmVjdG9yeSB3aXRoIHRoZSBzdGF0b3ZlcnJpZGUgZmlsZS5cbiIKKyN8ICIgIC0tdXBkYXRlICAgICAgICAgICAgICAgICBpbW1lZGlhdGVseSB1cGRhdGUgZmlsZSBwZXJtaXNzaW9ucy5cbiIKKyN8ICIgIC0tZm9yY2UgICAgICAgICAgICAgICAgICBmb3JjZSBhbiBhY3Rpb24gZXZlbiBpZiBhIHNhbml0eSBjaGVjayBmYWlscy5cbiIKKyN8ICIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBxdWlldCBvcGVyYXRpb24sIG1pbmltYWwgb3V0cHV0LlxuIgorI3wgIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisjfCAiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyN8ICJcbiIKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWx0ZGlyIDxkaXJlY3Rvcnk+ICAgICBjaGFuZ2UgdGhlIGFsdGVybmF0aXZlcyBkaXJlY3RvcnkuXG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgY2hhbmdlIHRoZSBhZG1pbmlzdHJhdGl2ZSBkaXJlY3RvcnkuXG4iCisiICAtLWxvZyA8ZmlsZT4gICAgICAgICAgICAgY2hhbmdlIHRoZSBsb2cgZmlsZS5cbiIKKyIgIC0tZm9yY2UgICAgICAgICAgICAgICAgICBhbGxvdyByZXBsYWNpbmcgZmlsZXMgd2l0aCBhbHRlcm5hdGl2ZSBsaW5rcy5cbiIKKyIgIC0tc2tpcC1hdXRvICAgICAgICAgICAgICBza2lwIHByb21wdCBmb3IgYWx0ZXJuYXRpdmVzIGNvcnJlY3RseSAiCisiY29uZmlndXJlZFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGluIGF1dG9tYXRpYyBtb2RlIChyZWxldmFudCBmb3IgLS1jb25maWcgb25seSlcbiIKKyIgIC0tdmVyYm9zZSAgICAgICAgICAgICAgICB2ZXJib3NlIG9wZXJhdGlvbiwgbW9yZSBvdXRwdXQuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgcXVpZXQgb3BlcmF0aW9uLCBtaW5pbWFsIG91dHB1dC5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCittc2dzdHIgIiIKKyLQn9Cw0YDQsNC80LXRgtGA0Ys6XG4iCisiICAtLWFkbWluZGlyIDzQutCw0YLQsNC70L7Qsz4gICAgINGD0LrQsNC30LDRgtGMINC60LDRgtCw0LvQvtCzINGBINGE0LDQudC70L7QvCBzdGF0b3ZlcnJpZGUuXG4iCisiICAtLXVwZGF0ZSAgICAgICAgICAgICAgICAg0L3QtdC80LXQtNC70LXQvdC90L4g0L7QsdC90L7QstC40YLRjCDQv9GA0LDQstCwINC90LAg0YTQsNC50LsuXG4iCisiICAtLWZvcmNlICAgICAgICAgICAgICAgICAg0LLRi9C/0L7Qu9C90LjRgtGMINC00LXQudGB0YLQstC40LUg0LTQsNC20LUg0LXRgdC70Lgg0L7QsdGJ0LjQuSDQutC+0L3RgtGA0L7Qu9GMXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAg0L3QtSDQv9GA0L7RiNGR0LsuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAg0LzQuNC90LjQvNCw0LvRjNC90YvQuSDQstGL0LLQvtC0INC90LAg0Y3QutGA0LDQvSDQv9GA0Lgg0YDQsNCx0L7RgtC1LlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgINCy0YvQstC10YHRgtC4INGN0YLQviDRgdC+0L7QsdGJ0LXQvdC40LUuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAg0LLRi9Cy0LXRgdGC0Lgg0L3QvtC80LXRgCDQstC10YDRgdC40LguXG4iCisiXG4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE2MworbXNnaWQgImVycm9yIgorbXNnc3RyICLQvtGI0LjQsdC60LAiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxOTMKK21zZ2lkICJ3YXJuaW5nIgorbXNnc3RyICLQv9GA0LXQtNGD0L/RgNC10LbQtNC10L3QuNC1IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MzU2CisjLCBjLWZvcm1hdAorbXNnaWQgInR3byBjb21tYW5kcyBzcGVjaWZpZWQ6IC0tJXMgYW5kIC0tJXMiCittc2dzdHIgItGD0LrQsNC30LDQvdGLINC00LLQtSDQutC+0LzQsNC90LTRizogLS0lcyDQuCAtLSVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6Mzg3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW5ub3QgYXBwZW5kIHRvICVzOiAlcyIKK21zZ2lkICJjYW5ub3QgYXBwZW5kIHRvICclcyciCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LTQvtCx0LDQstC40YLRjCDQsiAlczogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo1NTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byByZW1vdmUgJXM6ICVzIgorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgJyVzJyIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRg9C00LDQu9C40YLRjCAlczogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTExCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGZpbGUgd2hpbGUgdHJ5aW5nIHRvIHJlYWQgJXMiCittc2dzdHIgItC90LXQvtC20LjQtNCw0L3QvdGL0Lkg0LrQvtC90LXRhiDRhNCw0LnQu9CwINC/0YDQuCDQv9C+0L/Ri9GC0LrQtSDRh9GC0LXQvdC40Y8gJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTEzCisjLCBjLWZvcm1hdAorbXNnaWQgIndoaWxlIHJlYWRpbmcgJXM6ICVzIgorbXNnc3RyICLQv9GA0Lgg0YfRgtC10L3QuNC4ICVzOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMTkKKyMsIGMtZm9ybWF0Cittc2dpZCAibGluZSBub3QgdGVybWluYXRlZCB3aGlsZSB0cnlpbmcgdG8gcmVhZCAlcyIKK21zZ3N0ciAi0L/RgNC4INC/0L7Qv9GL0YLQutC1INGH0YLQtdC90LjRjyAlcyDQvtCx0L3QsNGA0YPQttC10L3QsCDQvdC10LfQsNC60YDRi9GC0LDRjyDRgdGC0YDQvtC60LAiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGNvcnJ1cHQ6ICVzIgorbXNnc3RyICIlcyDQv9C+0LLRgNC10LbQtNGR0L06ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE1MAorIywgYy1mb3JtYXQKK21zZ2lkICJuZXdsaW5lcyBwcm9oaWJpdGVkIGluIHVwZGF0ZS1hbHRlcm5hdGl2ZXMgZmlsZXMgKCVzKSIKK21zZ3N0ciAi0YHQuNC80LLQvtC70Ysg0L3QvtCy0L7QuSDRgdGC0YDQvtC60Lgg0LfQsNC/0YDQtdGJ0LXQvdGLINCyINGE0LDQudC70LDRhSB1cGRhdGUtYWx0ZXJuYXRpdmVzICglcykiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTYzCittc2dpZCAic2xhdmUgbmFtZSIKK21zZ3N0ciAi0L/QvtC00YfQuNC90ZHQvdC90L7QtSDQuNC80Y8iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTcxIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDA1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJkdXBsaWNhdGUgc2xhdmUgJXMiCittc2dpZCAiZHVwbGljYXRlIHNsYXZlIG5hbWUgJXMiCittc2dzdHIgItC/0L7QstGC0L7RgNC10L3QuNC1INC/0L7QtNGH0LjQvdGR0L3QvdC+0LPQviAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNzQKK21zZ2lkICJzbGF2ZSBsaW5rIgorbXNnc3RyICLQv9C+0LTRh9C40L3RkdC90L3QsNGPINGB0YHRi9C70LrQsCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAic2xhdmUgbGluayBzYW1lIGFzIG1haW4gbGluayAlcyIKK21zZ3N0ciAi0YHQvtCy0L/QsNC00LXQvdC40LUg0L/QvtC00YfQuNC90ZHQvdC90L7QuSDRgdGB0YvQu9C60Lgg0YEg0LPQu9Cw0LLQvdC+0Lkg0YHRgdGL0LvQutC+0LkgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTg1IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDEyCisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBzbGF2ZSBsaW5rICVzIgorbXNnc3RyICLQv9C+0LLRgtC+0YDQtdC90LjQtSDQv9C+0LTRh9C40L3RkdC90L3QvtC5INGB0YHRi9C70LrQuCAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMDQKK21zZ2lkICJtYXN0ZXIgZmlsZSIKK21zZ3N0ciAi0LzQsNGB0YLQtdGAINGE0LDQudC7IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIxMworIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgcGF0aCAlcyIKK21zZ3N0ciAi0L/QvtCy0YLQvtGA0LXQvdC40LUg0L/Rg9GC0LggJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjI2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJhbHRlcm5hdGl2ZSAlcyAocGFydCBvZiBsaW5rIGdyb3VwICVzKSBkb2Vzbid0IGV4aXN0LiBSZW1vdmluZyBmcm9tIGxpc3Qgb2YgIgorImFsdGVybmF0aXZlcy4iCittc2dzdHIgIiIKKyLQsNC70YzRgtC10YDQvdCw0YLQuNCy0LAgJXMgKNGH0LDRgdGC0Ywg0LPRgNGD0L/Qv9GLINGB0YHRi9C70L7QuiAlcykg0L3QtSDRgdGD0YnQtdGB0YLQstGD0LXRgi4g0KPQtNCw0LvRj9C10YLRgdGPINC40Lcg0YHQv9C40YHQutCwICIKKyLQsNC70YzRgtC10YDQvdCw0YLQuNCyLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMjkgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyNDAKK21zZ2lkICJwcmlvcml0eSIKK21zZ3N0ciAi0L/RgNC40L7RgNC40YLQtdGCIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIzMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI0OQorbXNnaWQgInNsYXZlIGZpbGUiCittc2dzdHIgItC/0L7QtNGH0LjQvdGR0L3QvdGL0Lkg0YTQsNC50LsiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjQ0CisjLCBjLWZvcm1hdAorbXNnaWQgInByaW9yaXR5IG9mICVzOiAlcyIKK21zZ3N0ciAi0L/RgNC40L7RgNC40YLQtdGCICVzOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyOTcKK21zZ2lkICJzdGF0dXMiCittc2dzdHIgItGB0L7RgdGC0L7Rj9C90LjQtSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyOTkKK21zZ2lkICJpbnZhbGlkIHN0YXR1cyIKK21zZ3N0ciAi0L3QtdC/0YDQsNCy0LjQu9GM0L3QvtC1INGB0L7RgdGC0L7Rj9C90LjQtSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzMDQKK21zZ2lkICJtYXN0ZXIgbGluayIKK21zZ3N0ciAi0LzQsNGB0YLQtdGAINGB0YHRi9C70LrQsCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGlzY2FyZGluZyBvYnNvbGV0ZSBzbGF2ZSBsaW5rICVzICglcykuIgorbXNnc3RyICLQvtGC0LHRgNCw0YHRi9Cy0LDQtdGC0YHRjyDRg9GB0YLQsNGA0LXQstGI0LDRjyDQv9C+0LTRh9C40L3RkdC90L3QsNGPINGB0YHRi9C70LrQsCAlcyAoJXMpLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MDIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NjkKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjM4Cittc2dpZCAiYXV0byBtb2RlIgorbXNnc3RyICLQsNCy0YLQvtC80LDRgtC40YfQtdGB0LrQuNC5INGA0LXQttC40LwiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTAyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTc4CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYzOQorbXNnaWQgIm1hbnVhbCBtb2RlIgorbXNnc3RyICLRgNGD0YfQvdC+0Lkg0YDQtdC20LjQvCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBsaW5rIGN1cnJlbnRseSBwb2ludHMgdG8gJXMiCittc2dzdHIgIiAg0YHRgdGL0LvQutCwINGB0LXQudGH0LDRgSDRg9C60LDQt9GL0LLQsNC10YIg0L3QsCAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MDgKK21zZ2lkICIgIGxpbmsgY3VycmVudGx5IGFic2VudCIKK21zZ3N0ciAiICDRgdGB0YvQu9C60LAg0YHQtdC50YfQsNGBINC+0YLRgdGD0YLRgdGC0LLRg9C10YIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTEyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIC0gcHJpb3JpdHkgJWQiCittc2dzdHIgIiVzIC0tINC/0YDQuNC+0YDQuNGC0LXRgiAlZCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBzbGF2ZSAlczogJXMiCittc2dzdHIgIiAg0L/QvtC00YfQuNC90ZHQvdC90YvQuSAlczogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTIyCisjLCBjLWZvcm1hdAorbXNnaWQgIkN1cnJlbnQgJ2Jlc3QnIHZlcnNpb24gaXMgJyVzJy4iCittc2dzdHIgItCi0LXQutGD0YnQsNGPIMKr0LvRg9GH0YjQsNGPwrsg0LLQtdGA0YHQuNGPOiDCqyVzwrsuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUyNAorbXNnaWQgIk5vIHZlcnNpb25zIGF2YWlsYWJsZS4iCittc2dzdHIgItCd0LXRgiDQtNC+0YHRgtGD0L/QvdGL0YUg0LLQtdGA0YHQuNC5LiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiVGhlcmUgaXMgJWQgY2hvaWNlIGZvciB0aGUgYWx0ZXJuYXRpdmUgJXMgKHByb3ZpZGluZyAlcykuIgorbXNnaWRfcGx1cmFsICJUaGVyZSBhcmUgJWQgY2hvaWNlcyBmb3IgdGhlIGFsdGVybmF0aXZlICVzIChwcm92aWRpbmcgJXMpLiIKK21zZ3N0clswXSAi0JXRgdGC0YwgJWQg0LLQsNGA0LjQsNC90YIg0LTQu9GPINCw0LvRjNGC0LXRgNC90LDRgtC40LLRiyAlcyAo0L/RgNC10LTQvtGB0YLQsNCy0LvRj9C10YIgJXMpLiIKK21zZ3N0clsxXSAi0JXRgdGC0YwgJWQg0LLQsNGA0LjQsNC90YLQsCDQtNC70Y8g0LDQu9GM0YLQtdGA0L3QsNGC0LjQstGLICVzICjQv9GA0LXQtNC+0YHRgtCw0LLQu9GP0LXRgiAlcykuIgorbXNnc3RyWzJdICLQldGB0YLRjCAlZCDQstCw0YDQuNCw0L3RgtC+0LIg0LTQu9GPINCw0LvRjNGC0LXRgNC90LDRgtC40LLRiyAlcyAo0L/RgNC10LTQvtGB0YLQsNCy0LvRj9C10YIgJXMpLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NjAKK21zZ2lkICJTZWxlY3Rpb24iCittc2dzdHIgItCS0YvQsdC+0YAiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYxCittc2dpZCAiUGF0aCIKK21zZ3N0ciAi0J/Rg9GC0YwiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYxCittc2dpZCAiUHJpb3JpdHkiCittc2dzdHIgItCf0YDQuNC+0YDQuNGC0LXRgiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NjEKK21zZ2lkICJTdGF0dXMiCittc2dzdHIgItCh0L7RgdGC0L7Rj9C90LjQtSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHJlc3MgZW50ZXIgdG8ga2VlcCB0aGUgY3VycmVudCBjaG9pY2VbKl0sIG9yIHR5cGUgc2VsZWN0aW9uIG51bWJlcjogIgorbXNnc3RyICIiCisi0J3QsNC20LzQuNGC0LUgZW50ZXIsINGH0YLQvtCx0Ysg0YHQvtGF0YDQsNC90LjRgtGMINGC0LXQutGD0YnQuNC5INCy0YvQsdC+0YBbKl0sINC40LvQuCDQstCy0LXQtNC40YLQtSDQstGL0LHRgNCw0L3QvdC+0LUgIgorItGH0LjRgdC70L46ICIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3MjEKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IHJlcGxhY2luZyAlcyB3aXRoIGEgbGluay4iCittc2dzdHIgIiVzINC90LAg0YHRgdGL0LvQutGDINC90LUg0LfQsNC80LXQvdGR0L0uIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTc2MgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW4ndCBpbnN0YWxsIHVua25vd24gY2hvaWNlICVzIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGD0YHRgtCw0L3QvtCy0LjRgtGMINC90LXQuNC30LLQtdGB0YLQvdGL0Lkg0LLRi9Cx0L7RgCAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInNraXAgY3JlYXRpb24gb2YgJXMgYmVjYXVzZSBhc3NvY2lhdGVkIGZpbGUgJXMgKG9mIGxpbmsgZ3JvdXAgJXMpIGRvZXNuJ3QgIgorImV4aXN0LiIKK21zZ3N0ciAiIgorItC/0YDQvtC/0YPRgdC6INGB0L7Qt9C00LDQvdC40Y8gJXMsINGC0LDQuiDQutCw0Log0YHQstGP0LfQsNC90L3Ri9C5INGBINC90LXQuSDRhNCw0LnQuyAlcyAo0LjQtyDQs9GA0YPQv9C/0Ysg0YHRgdGL0LvQvtC6ICVzKSAiCisi0L3QtSDRgdGD0YnQtdGB0YLQstGD0LXRgi4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNzkwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJub3QgcmVwbGFjaW5nICVzIHdpdGggYSBsaW5rLiIKK21zZ2lkICJub3QgcmVtb3ZpbmcgJXMgc2luY2UgaXQncyBub3QgYSBzeW1saW5rLiIKK21zZ3N0ciAiJXMg0L3QsCDRgdGB0YvQu9C60YMg0L3QtSDQt9Cw0LzQtdC90ZHQvS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDQxIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDQ3CisjLCBjLWZvcm1hdAorbXNnaWQgIkNhbGwgJXMuIgorbXNnc3RyICLQktGL0LfQvtCyICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiQWx0ZXJuYXRpdmUgJXMgdW5jaGFuZ2VkIGJlY2F1c2UgY2hvaWNlICVzIGlzIG5vdCBhdmFpbGFibGUuIgorbXNnc3RyICLQkNC70YzRgtC10YDQvdCw0YLQuNCy0LAgJXMg0L3QtSDQuNC30LzQtdC90LXQvdCwLCDRgtCw0Log0LrQsNC6INCy0LDRgNC40LDQvdGCICVzINC90LXQtNC+0YHRgtGD0L/QtdC9LiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2tpcCB1bmtub3duIGFsdGVybmF0aXZlICVzLiIKK21zZ3N0ciAi0J/RgNC+0L/Rg9GB0Log0L3QtdC40LfQstC10YHRgtC90L7QuSDQsNC70YzRgtC10YDQvdCw0YLQuNCy0YsgJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA3NworIywgYy1mb3JtYXQKK21zZ2lkICJsaW5lIHRvbyBsb25nIG9yIG5vdCB0ZXJtaW5hdGVkIHdoaWxlIHRyeWluZyB0byByZWFkICVzIgorbXNnc3RyICLQv9GA0Lgg0L/QvtC/0YvRgtC60LUg0YfRgtC10L3QuNGPICVzINC90LDQudC00LXQvdCwINGB0LvQuNGI0LrQvtC8INC00LvQuNC90L3QsNGPINC40LvQuCDQvdC10LfQsNC60YDRi9GC0LDRjyDRgdGC0YDQvtC60LAiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDkwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTAzCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjExMworIywgYy1mb3JtYXQKK21zZ2lkICJTa2lwIGludmFsaWQgbGluZTogJXMiCittc2dzdHIgItCf0YDQvtC/0YPRgdC60LDQtdGC0YHRjyDQvdC10LrQvtGA0YDQtdC60YLQvdCw0Y8g0YHRgtGA0L7QutCwOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVuYW1pbmcgJXMgbGluayBmcm9tICVzIHRvICVzLiIKK21zZ3N0ciAi0L/QtdGA0LXQuNC80LXQvdC+0LLRi9Cy0LDQtdGC0YHRjyDRgdGB0YvQu9C60LAgJXMg0LjQtyAlcyDQsiAlcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTczCisjLCBjLWZvcm1hdAorbXNnaWQgInJlbmFtaW5nICVzIHNsYXZlIGxpbmsgZnJvbSAlcyB0byAlcy4iCittc2dzdHIgItC/0LXRgNC10LjQvNC10L3QvtCy0YvQstCw0LXRgtGB0Y8g0L/QvtC00YfQuNC90ZHQvdC90LDRjyDRgdGB0YvQu9C60LAgJXMg0LjQtyAlcyDQsiAlcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTg5CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIG5hbWUgKCVzKSBtdXN0IG5vdCBjb250YWluICcvJyBhbmQgc3BhY2VzLiIKK21zZ3N0ciAi0LDQu9GM0YLQtdGA0L3QsNGC0LjQstC90L7QtSDQuNC80Y8gKCVzKSDQvdC1INC00L7Qu9C20L3QviDRgdC+0LTQtdGA0LbQsNGC0Ywg0L/RgNC+0LHQtdC70Ysg0LggwqsvwrsuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE5MworIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBsaW5rIGlzIG5vdCBhYnNvbHV0ZSBhcyBpdCBzaG91bGQgYmU6ICVzIgorbXNnc3RyICLQsNC70YzRgtC10YDQvdCw0YLQuNCy0L3QsNGPINGB0YHRi9C70LrQsCDQvdC1INGP0LLQu9GP0LXRgtGB0Y8g0LDQsdGB0L7Qu9GO0YLQvdC+0Lkg0LrQsNC6INC00L7Qu9C20L3QviDQsdGL0YLRjDogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTk3CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIHBhdGggaXMgbm90IGFic29sdXRlIGFzIGl0IHNob3VsZCBiZTogJXMiCittc2dzdHIgItCw0LvRjNGC0LXRgNC90LDRgtC40LLQvdGL0Lkg0L/Rg9GC0Ywg0L3QtSDRj9Cy0LvRj9C10YLRgdGPINCw0LHRgdC+0LvRjtGC0L3Ri9C8INC60LDQuiDQtNC+0LvQttC90L4g0LHRi9GC0Yw6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjIyNAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgbWFzdGVyOiAlcyIKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBtYXN0ZXI6IGl0IGlzIGEgc2xhdmUgb2YgJXMiCittc2dzdHIgItCw0LvRjNGC0LXRgNC90LDRgtC40LLQsCAlcyDQvdC1INC80L7QttC10YIg0LHRi9GC0Ywg0LzQsNGB0YLQtdGA0L7QvDogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjMyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjY3CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIGxpbmsgJXMgaXMgYWxyZWFkeSBtYW5hZ2VkIGJ5ICVzLiIKK21zZ3N0ciAi0LDQu9GM0YLQtdGA0L3QsNGC0LjQstC90LDRjyDRgdGB0YvQu9C60LAgJXMg0YPQttC1INGD0L/RgNCw0LLQu9GP0LXRgtGB0Y8gJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI0MQorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBwYXRoICVzIGRvZXNuJ3QgZXhpc3QuIgorbXNnc3RyICLQsNC70YzRgtC10YDQvdCw0YLQuNCy0L3Ri9C5INC/0YPRgtGMICVzINC90LUg0YHRg9GJ0LXRgdGC0LLRg9C10YIuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI1NAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgc2xhdmUgb2YgJXM6ICVzIgorbXNnaWQgImFsdGVybmF0aXZlICVzIGNhbid0IGJlIHNsYXZlIG9mICVzOiBpdCBpcyBhIG1hc3RlciBhbHRlcm5hdGl2ZS4iCittc2dzdHIgItCw0LvRjNGC0LXRgNC90LDRgtC40LLQsCAlcyDQvdC1INC80L7QttC10YIg0LHRi9GC0Ywg0L/QvtC00YfQuNC90LXQvdCwICVzOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNTgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImFsdGVybmF0aXZlICVzIGNhbid0IGJlIG1hc3RlcjogJXMiCittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgc2xhdmUgb2YgJXM6IGl0IGlzIGEgc2xhdmUgb2YgJXMiCittc2dzdHIgItCw0LvRjNGC0LXRgNC90LDRgtC40LLQsCAlcyDQvdC1INC80L7QttC10YIg0LHRi9GC0Ywg0LzQsNGB0YLQtdGA0L7QvDogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjc4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJhbHRlcm5hdGl2ZSBsaW5rICVzIGlzIGFscmVhZHkgbWFuYWdlZCBieSAlcy4iCittc2dpZCAiYWx0ZXJuYXRpdmUgbGluayAlcyBpcyBhbHJlYWR5IG1hbmFnZWQgYnkgJXMgKHNsYXZlIG9mICVzKS4iCittc2dzdHIgItCw0LvRjNGC0LXRgNC90LDRgtC40LLQvdCw0Y8g0YHRgdGL0LvQutCwICVzINGD0LbQtSDRg9C/0YDQsNCy0LvRj9C10YLRgdGPICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBhcmd1bWVudCBgJXMnIgorbXNnc3RyICLQvdC10LjQt9Cy0LXRgdGC0L3Ri9C5INCw0YDQs9GD0LzQtdC90YIgwqslc8K7IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM0MworbXNnaWQgIi0taW5zdGFsbCBuZWVkcyA8bGluaz4gPG5hbWU+IDxwYXRoPiA8cHJpb3JpdHk+IgorbXNnc3RyICLQtNC70Y8gLS1pbnN0YWxsINGC0YDQtdCx0YPQtdGC0YHRjyDRg9C60LDQt9Cw0YLRjCA80YHRgdGL0LvQutGDPiA80LjQvNGPPiA80L/Rg9GC0Yw+IDzQv9GA0LjQvtGA0LjRgtC10YI+IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM0NiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM5NworbXNnaWQgIjxsaW5rPiBhbmQgPHBhdGg+IGNhbid0IGJlIHRoZSBzYW1lIgorbXNnc3RyICI80YHRgdGL0LvQutCwPiDQuCA80L/Rg9GC0Yw+INC90LUg0LzQvtCz0YPRgiDQsdGL0YLRjCDQvtC00LjQvdCw0LrQvtCy0YvQvNC4IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM0OQorbXNnaWQgInByaW9yaXR5IG11c3QgYmUgYW4gaW50ZWdlciIKK21zZ3N0ciAi0L/RgNC40L7RgNC40YLQtdGCINC00L7Qu9C20LXQvSDQsdGL0YLRjCDRhtC10LvRi9C8INGH0LjRgdC70L7QvCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyA8bmFtZT4gPHBhdGg+IgorbXNnc3RyICLQtNC70Y8gLS0lcyDRgtGA0LXQsdGD0LXRgtGB0Y8gPNC40LzRjz4gPNC/0YPRgtGMPiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyA8bmFtZT4iCittc2dzdHIgItC00LvRjyAtLSVzINGC0YDQtdCx0YPQtdGC0YHRjyA80LjQvNGPPiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzODgKK21zZ2lkICItLXNsYXZlIG9ubHkgYWxsb3dlZCB3aXRoIC0taW5zdGFsbCIKK21zZ3N0ciAi0LrQvtC80LDQvdC00LAgLS1zbGF2ZSDQstC+0LfQvNC+0LbQvdCwINGC0L7Qu9GM0LrQviDQstC80LXRgdGC0LUg0YEgLS1pbnN0YWxsIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM5MAorbXNnaWQgIi0tc2xhdmUgbmVlZHMgPGxpbms+IDxuYW1lPiA8cGF0aD4iCittc2dzdHIgItC00LvRjyAtLXNsYXZlINGC0YDQtdCx0YPRjtGC0YHRjyDQsNGA0LPRg9C80LXQvdGC0YsgPNGB0YHRi9C70LrQsD4gPNC40LzRjz4gPNC/0YPRgtGMPiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzOTkKKyMsIGMtZm9ybWF0Cittc2dpZCAibmFtZSAlcyBpcyBib3RoIHByaW1hcnkgYW5kIHNsYXZlIgorbXNnc3RyICLQuNC80Y8gJXMg0L/RgNC40L3QsNC00LvQtdC20LjRgiDQuCDQvNCw0YHRgtC10YDRgyDQuCDQv9C+0LTRh9C40L3RkdC90L3QvtC80YMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDAyCisjLCBjLWZvcm1hdAorbXNnaWQgImxpbmsgJXMgaXMgYm90aCBwcmltYXJ5IGFuZCBzbGF2ZSIKK21zZ3N0ciAi0YHRgdGL0LvQutCwICVzINC/0YDQuNC90LDQtNC70LXQttC40YIg0Lgg0LzQsNGB0YLQtdGA0YMg0Lgg0L/QvtC00YfQuNC90ZHQvdC90L7QvNGDIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQyMgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGEgPGZpbGU+IGFyZ3VtZW50IgorbXNnc3RyICItLSVzINC90YPQttC10L0g0LDRgNCz0YPQvNC10L3RgiA80YTQsNC50Ls+IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQ0OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiBgJXMnIgorbXNnc3RyICLQvdC10LjQt9Cy0LXRgdGC0L3Ri9C5INC/0LDRgNCw0LzQtdGC0YAgwqslc8K7IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQ1MworbXNnaWQgIiIKKyJuZWVkIC0tZGlzcGxheSwgLS1xdWVyeSwgLS1saXN0LCAtLWdldC1zZWxlY3Rpb25zLCAtLWNvbmZpZywgLS1zZXQsIC0tc2V0LSIKKyJzZWxlY3Rpb25zLCAtLWluc3RhbGwsIC0tcmVtb3ZlLCAtLWFsbCwgLS1yZW1vdmUtYWxsIG9yIC0tYXV0byIKK21zZ3N0ciAiIgorItGC0YDQtdCx0YPQtdGC0YHRjyAtLWRpc3BsYXksIC0tcXVlcnksIC0tbGlzdCwgLS1nZXQtc2VsZWN0aW9ucywgLS1jb25maWcsIC0tc2V0LCAtLSIKKyJzZXQtc2VsZWN0aW9ucywgLS1pbnN0YWxsLCAtLXJlbW92ZSwgLS1hbGwsIC0tcmVtb3ZlLWFsbCDQuNC70LggLS1hdXRvIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQ5MAorbXNnaWQgIjxzdGFuZGFyZCBpbnB1dD4iCittc2dzdHIgIjzRgdGC0LDQvdC00LDRgNGC0L3Ri9C5INCy0LLQvtC0PiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MDAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MDMKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gYWx0ZXJuYXRpdmVzIGZvciAlcy4iCittc2dzdHIgItC90LXRgiDQsNC70YzRgtC10YDQvdCw0YLQuNCyINC00LvRjyAlcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTMwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIlcyBpcyBkYW5nbGluZywgaXQgd2lsbCBiZSB1cGRhdGVkIHdpdGggYmVzdCBjaG9pY2UuIgorbXNnaWQgIiVzLyVzIGlzIGRhbmdsaW5nLCBpdCB3aWxsIGJlIHVwZGF0ZWQgd2l0aCBiZXN0IGNob2ljZS4iCittc2dzdHIgIiVzINGP0LLQu9GP0LXRgtGB0Y8g0L/QvtCy0LjRgdGI0LXQuSwg0LfQvdCw0YfQtdC90LjQtSDQsdGD0LTQtdGCINC30LDQvNC10L3QtdC90L4g0LvRg9GH0YjQuNC8INCy0YvQsdC+0YDQvtC8LiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MzQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIlcyBoYXMgYmVlbiBjaGFuZ2VkIChtYW51YWxseSBvciBieSBhIHNjcmlwdCkuIFN3aXRjaGluZyB0byBtYW51YWwgIgorI3wgInVwZGF0ZXMgb25seS4iCittc2dpZCAiIgorIiVzLyVzIGhhcyBiZWVuIGNoYW5nZWQgKG1hbnVhbGx5IG9yIGJ5IGEgc2NyaXB0KS4gU3dpdGNoaW5nIHRvIG1hbnVhbCAiCisidXBkYXRlcyBvbmx5LiIKK21zZ3N0ciAiIgorIiVzINCx0YvQu9CwINC40LfQvNC10L3QtdC90LAgKNCy0YDRg9GH0L3Rg9GOINC40LvQuCDRgdGG0LXQvdCw0YDQuNC10LwpLiDQn9C10YDQtdC60LvRjtGH0LXQvdC40LUg0L3QsCDRgNC10LbQuNC8INGC0L7Qu9GM0LrQviAiCisi0YDRg9GH0L3QvtCz0L4g0L7QsdC90L7QstC70LXQvdC40Y8uIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU0MgorIywgYy1mb3JtYXQKK21zZ2lkICJzZXR0aW5nIHVwIGF1dG9tYXRpYyBzZWxlY3Rpb24gb2YgJXMuIgorbXNnc3RyICLQvdCw0YHRgtGA0L7QudC60LAg0LDQstGC0L7QvNCw0YLQuNGH0LXRgdC60L7Qs9C+INCy0YvQsdC+0YDQsCAlcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTUxCisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlICVzIGZvciAlcyBub3QgcmVnaXN0ZXJlZCwgbm90IHNldHRpbmcuIgorbXNnc3RyICLQsNC70YzRgtC10YDQvdCw0YLQuNCy0LAgJXMg0LTQu9GPICVzINC90LUg0LfQsNGA0LXQs9C40YHRgtGA0LjRgNC+0LLQsNC90LAsINC90LUg0LLRi9Cx0LjRgNCw0LXRgtGB0Y8uIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU1NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU2MworIywgYy1mb3JtYXQKK21zZ2lkICJUaGVyZSBpcyBubyBwcm9ncmFtIHdoaWNoIHByb3ZpZGVzICVzLiIKK21zZ3N0ciAi0J3QtdGCINC/0YDQvtCz0YDQsNC80LzRiywg0LrQvtGC0L7RgNCw0Y8g0L/RgNC10LTQvtGB0YLQsNCy0LvRj9C10YIgJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU2NSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU3NQorbXNnaWQgIk5vdGhpbmcgdG8gY29uZmlndXJlLiIKK21zZ3N0ciAi0J3QsNGB0YLRgNCw0LjQstCw0YLRjCDQvdC10YfQtdCz0L4uIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU3MworIywgYy1mb3JtYXQKK21zZ2lkICJUaGVyZSBpcyBvbmx5IG9uZSBhbHRlcm5hdGl2ZSBpbiBsaW5rIGdyb3VwICVzOiAlcyIKK21zZ3N0ciAi0JXRgdGC0Ywg0YLQvtC70YzQutC+INC+0LTQvdCwINCw0LvRjNGC0LXRgNC90LDRgtC40LLQsCDQsiDQs9GA0YPQv9C/0LUg0YHRgdGL0LvQvtC6ICVzOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1ODQKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgZm9yICVzIG5vdCByZWdpc3RlcmVkLCBub3QgcmVtb3ZpbmcuIgorbXNnc3RyICLQsNC70YzRgtC10YDQvdCw0YLQuNCy0LAgJXMg0LTQu9GPICVzINC90LUg0LfQsNGA0LXQs9C40YHRgtGA0LjRgNC+0LLQsNC90LAsINC90LUg0YPQtNCw0LvRj9C10YLRgdGPLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1OTIKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVtb3ZpbmcgbWFudWFsbHkgc2VsZWN0ZWQgYWx0ZXJuYXRpdmUgLSBzd2l0Y2hpbmcgJXMgdG8gYXV0byBtb2RlIgorbXNnc3RyICIiCisi0YPQtNCw0LvRj9C10YLRgdGPINCw0LvRjNGC0LXRgNC90LDRgtC40LLQsCwg0LLRi9Cx0YDQsNC90L3QsNGPINCy0YDRg9GH0L3Rg9GOIC0tINC/0LXRgNC10LrQu9GO0YfQtdC90LjQtSAlcyDQsiAiCisi0LDQstGC0L7QvNCw0YLQuNGH0LXRgdC60LjQuSDRgNC10LbQuNC8IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYxNworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYXV0b21hdGljIHVwZGF0ZXMgb2YgJXMgYXJlIGRpc2FibGVkLCBsZWF2aW5nIGl0IGFsb25lLiIKK21zZ2lkICJhdXRvbWF0aWMgdXBkYXRlcyBvZiAlcy8lcyBhcmUgZGlzYWJsZWQsIGxlYXZpbmcgaXQgYWxvbmUuIgorbXNnc3RyICLQsNCy0YLQvtC80LDRgtC40YfQtdGB0LrQvtC1INC+0LHQvdC+0LLQu9C10L3QuNC1ICVzINCy0YvQutC70Y7Rh9C10L3Qviwg0L7RgdGC0LDQstC70LXQvdC+INC60LDQuiDQtdGB0YLRjC4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjE5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ0byByZXR1cm4gdG8gYXV0b21hdGljIHVwZGF0ZXMgdXNlIGB1cGRhdGUtYWx0ZXJuYXRpdmVzIC0tYXV0byAlcycuIgorbXNnaWQgInRvIHJldHVybiB0byBhdXRvbWF0aWMgdXBkYXRlcyB1c2UgJyVzIC0tYXV0byAlcycuIgorbXNnc3RyICIiCisi0YfRgtC+0LHRiyDQstC10YDQvdGD0YLRjNGB0Y8g0LIg0LDQstGC0L7QvNCw0YLQuNGH0LXRgdC60LjQuSDRgNC10LbQuNC8INCy0YvQv9C+0LvQvdC40YLQtSDQutC+0LzQsNC90LTRgyDCq3VwZGF0ZS0iCisiYWx0ZXJuYXRpdmVzIC0tYXV0byAlc8K7LiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MzYKKyMsIGMtZm9ybWF0Cittc2dpZCAidXNpbmcgJXMgdG8gcHJvdmlkZSAlcyAoJXMpIGluICVzLiIKK21zZ3N0ciAi0LjRgdC/0L7Qu9GM0LfRg9C10YLRgdGPIGAlcycg0LTQu9GPINC/0YDQtdC00L7RgdGC0LDQstC70LXQvdC40Y8gYCVzJyAoJXMpINCyICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImZvcmNpbmcgcmVpbnN0YWxsYXRpb24gb2YgYWx0ZXJuYXRpdmUgJXMgYmVjYXVzZSBsaW5rIGdyb3VwICVzIGlzIGJyb2tlbi4iCittc2dzdHIgIiIKKyLQv9GA0LjQvdGD0LTQuNGC0LXQu9GM0L3QsNGPINC/0LXRgNC10YPRgdGC0LDQvdC+0LLQutCwINCw0LvRjNGC0LXRgNC90LDRgtC40LLRiyVzLCDRgtCw0Log0LrQsNC6INCz0YDRg9C/0L/QsCDRgdGB0YvQu9C+0LogJXMgIgorItGB0LvQvtC80LDQvdCwLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY3VycmVudCBhbHRlcm5hdGl2ZSAlcyBpcyB1bmtub3duLCBzd2l0Y2hpbmcgdG8gJXMgZm9yIGxpbmsgZ3JvdXAgJXMuIgorbXNnc3RyICIiCisi0YLQtdC60YPRidCw0Y8g0LDQu9GM0YLQtdGA0L3QsNGC0LjQsiVzINC90LXQuNC30LLQtdGB0YLQvdCwLCDQtNC70Y8g0LPRgNGD0L/Qv9GLINGB0YHRi9C70L7QuiAlcyDQstGL0L/QvtC70L3Rj9C10YLRgdGPICIKKyLQv9C10YDQtdC60LvRjtGH0LXQvdC40LUg0L3QsCAlcy4iCisKKyN+IG1zZ2lkICJpdCBpcyBhIG1hc3RlciBhbHRlcm5hdGl2ZS4iCisjfiBtc2dzdHIgItGN0YLQviDQsNC70YzRgtC10YDQvdCw0YLQuNCy0LAg0LzQsNGB0YLQtdGALiIKKworI34gbXNnaWQgIml0IGlzIGEgc2xhdmUgb2YgJXMiCisjfiBtc2dzdHIgItGP0LLQu9GP0LXRgtGB0Y8g0L/QvtC00YfQuNC90ZHQvdC90L7QuSDQtNC70Y8gJXMiCisKKyN+IG1zZ2lkICJjYW5ub3Qgc3RhdCAlczogJXMiCisjfiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LLRi9C/0L7Qu9C90LjRgtGMIHN0YXQg0LTQu9GPIMKrJXPCuzogJXMiCisKKyN+IG1zZ2lkICJyZWFkbGluayglcykgZmFpbGVkOiAlcyIKKyN+IG1zZ3N0ciAicmVhZGxpbmsoJXMpINC30LDQstC10YDRiNC40LvQsNGB0Ywg0L3QtdGD0LTQsNGH0L3QvjogJXMiCisKKyN+IG1zZ2lkICJzY2FuIG9mICVzIGZhaWxlZDogJXMiCisjfiBtc2dzdHIgItGB0LrQsNC90LjRgNC+0LLQsNC90LjQtSAlcyDQt9Cw0LLQtdGA0YjQuNC70L7RgdGMINC90LXRg9C00LDRh9C90L46ICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWN1dGUgJXM6ICVzIgorI34gbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC30LDQv9GD0YHRgtC40YLRjCAlczogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gbWFrZSAlcyBhIHN5bWxpbmsgdG8gJXM6ICVzIgorI34gbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGB0L7Qt9C00LDRgtGMINGB0LjQvNCy0L7Qu9GM0L3Rg9GOINGB0YHRi9C70LrRgyAlcyDQvdCwICVzOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsICVzIGFzICVzOiAlcyIKKyN+IG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRg9GB0YLQsNC90L7QstC40YLRjCAlcyDQutCw0LogJXM6ICVzIgorCisjfiBtc2dpZCAid2hpbGUgd3JpdGluZyAlczogJXMiCisjfiBtc2dzdHIgItCy0L4g0LLRgNC10LzRjyDQt9Cw0L/QuNGB0LggJXM6ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHJlYWQgJXM6ICVzIgorI34gbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC/0YDQvtGH0LjRgtCw0YLRjCAlczogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gY2xvc2UgJXM6ICVzIgorI34gbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC30LDQutGA0YvRgtGMICVzOiAlcyIKKworI34gbXNnaWQgImNhbm5vdCB3cml0ZSAlczogJXMiCisjfiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LfQsNC/0LjRgdCw0YLRjCDQsiAlczogJXMiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgInVuYWJsZSB0byBvcGVuIGZpbGUgJyVzJyIKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcmVuYW1lIGZpbGUgJyVzJyB0byAnJXMnIgorI34gbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC+0YLQutGA0YvRgtGMINGE0LDQudC7IMKrJXPCuyIKKworI34gbXNnaWQgInVuYWJsZSB0byB1bmJ1ZmZlciBgJS4yNTVzJyIKKyN+IG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQvtGC0LzQtdC90LjRgtGMINCx0YPRhNC10YDQuNC30LDRhtC40Y4gwqslLjI1NXPCuyIKKworI34gbXNnaWQgInBhcnQgZmlsZSBgJS4yNTBzJyBoYXMgdHJhaWxpbmcgZ2FyYmFnZSIKKyN+IG1zZ3N0ciAi0LvQuNGI0L3QuNC1INGB0LjQvNCy0L7Qu9GLINCyINC60L7QvdGG0LUg0YfQsNGB0YLQuCDQsNGA0YXQuNCy0LAgwqslLjI1MHPCuyIKKworI34gbXNnaWQgInNpemUgJTdkIG9jY3VycyAlNWQgdGltZXNcbiIKKyN+IG1zZ3N0ciAi0YDQsNC30LzQtdGAICU3ZCDQstGB0YLRgNC10YLQuNC70YHRjyAlNWQg0YDQsNC3XG4iCisKKyN+IG1zZ2lkICJvdXQgb2YgbWVtb3J5IHB1c2hpbmcgZXJyb3IgaGFuZGxlcjogIgorI34gbXNnc3RyICLQv9GA0Lgg0YDQtdCz0LjRgdGC0YDQsNGG0LjQuCDQvtCx0YDQsNCx0L7RgtGH0LjQutCwINC+0YjQuNCx0L7QuiDQuNGB0YfQtdGA0L/QsNC90LAg0L/QsNC80Y/RgtGMOiAiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gdW5sb2NrIGRwa2cgc3RhdHVzIGRhdGFiYXNlIgorI34gbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGA0LDQt9Cx0LvQvtC60LjRgNC+0LLQsNGC0Ywg0LHQsNC30YMg0LTQsNC90L3Ri9GFINGB0L7RgdGC0L7Rj9C90LjQuSBkcGtnIgorCisjfiBtc2dpZCAiY29weSBpbmZvIGZpbGUgYCUuMjU1cyciCisjfiBtc2dzdHIgItC60L7Qv9C40YDQvtCy0LDQvdC40LUg0YTQsNC50LvQsCDQuNC90YTQvtGA0LzQsNGG0LjQuCDCqyUuMjU1c8K7IgorCisjfiBtc2dpZCAicGFyc2UgZXJyb3IiCisjfiBtc2dzdHIgItC+0YjQuNCx0LrQsCDRgNCw0LfQsdC+0YDQsCIKKworI34gbXNnaWQgImZhaWxlZCB0byB3cml0ZSBwYXJzaW5nIHdhcm5pbmciCisjfiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LLRi9Cy0LXRgdGC0Lgg0L/RgNC10LTRg9C/0YDQtdC20LTQtdC90LjQtSDQviDQvdC10YjRgtCw0YLQvdC+0Lkg0YHQuNGC0YPQsNGG0LjQuCDQv9GA0Lgg0YDQsNC30LHQvtGA0LUiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gbG9jayB0cmlnZ2VycyBhcmVhIgorI34gbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC30LDQsdC70L7QutC40YDQvtCy0LDRgtGMINC+0LHQu9Cw0YHRgtGMINGC0YDQuNCz0LPQtdGA0L7QsiIKKworI34gbXNnaWQgImZhaWxlZCB0byBydW4gJXMgKCUuMjUwcykiCisjfiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LfQsNC/0YPRgdGC0LjRgtGMINC/0YDQvtCz0YDQsNC80LzRgyAlcyAoJS4yNTBzKSIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIHNoZWxsICglLjI1MHMpIgorI34gbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC30LDQv9GD0YHRgtC40YLRjCDQvtCx0L7Qu9C+0YfQutGDICglLjI1MHMpIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGNoZWNrIGZvciBleGlzdGVuY2Ugb2YgYCUuMjUwcyciCisjfiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L/RgNC+0LLQtdGA0LjRgtGMINGB0YPRidC10YHRgtCy0L7QstCw0L3QuNC1IMKrJS4yNTBzwrsiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBybSBmb3IgY2xlYW51cCIKKyN+IG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQstGL0L/QvtC70L3QuNGC0Ywg0LrQvtC80LDQvdC00YMgcm0g0LTQu9GPINC+0YfQuNGB0YLQutC4INC60LDRgtCw0LvQvtCz0LAiCisKKyN+IG1zZ2lkICIiCisjfiAiJXMgZGVidWdnaW5nIG9wdGlvbiwgLS1kZWJ1Zz08b2N0YWw+IG9yIC1EPG9jdGFsPjpcbiIKKyN+ICJcbiIKKyN+ICIgbnVtYmVyICByZWYuIGluIHNvdXJjZSAgIGRlc2NyaXB0aW9uXG4iCisjfiAiICAgICAgMSAgIGdlbmVyYWwgICAgICAgICAgIEdlbmVyYWxseSBoZWxwZnVsIHByb2dyZXNzIGluZm9ybWF0aW9uXG4iCisjfiAiICAgICAgMiAgIHNjcmlwdHMgICAgICAgICAgIEludm9jYXRpb24gYW5kIHN0YXR1cyBvZiBtYWludGFpbmVyIHNjcmlwdHNcbiIKKyN+ICIgICAgIDEwICAgZWFjaGZpbGUgICAgICAgICAgT3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkXG4iCisjfiAiICAgIDEwMCAgIGVhY2hmaWxlZGV0YWlsICAgIExvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkXG4iCisjfiAiICAgICAyMCAgIGNvbmZmICAgICAgICAgICAgIE91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGVcbiIKKyN+ICIgICAgMjAwICAgY29uZmZkZXRhaWwgICAgICAgTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggY29uZmlndXJhdGlvbiBmaWxlXG4iCisjfiAiICAgICA0MCAgIGRlcGNvbiAgICAgICAgICAgIERlcGVuZGVuY2llcyBhbmQgY29uZmxpY3RzXG4iCisjfiAiICAgIDQwMCAgIGRlcGNvbmRldGFpbCAgICAgIExvdHMgb2YgZGVwZW5kZW5jaWVzL2NvbmZsaWN0cyBvdXRwdXRcbiIKKyN+ICIgIDEwMDAwICAgdHJpZ2dlcnMgICAgICAgICAgVHJpZ2dlciBhY3RpdmF0aW9uIGFuZCBwcm9jZXNzaW5nXG4iCisjfiAiICAyMDAwMCAgIHRyaWdnZXJzZGV0YWlsICAgIExvdHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2Vyc1xuIgorI34gIiAgNDAwMDAgICB0cmlnZ2Vyc3N0dXBpZCAgICBTaWxseSBhbW91bnRzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnNcbiIKKyN+ICIgICAxMDAwICAgdmVyeXZlcmJvc2UgICAgICAgTG90cyBvZiBkcml2ZWwgYWJvdXQgZWcgdGhlIGRwa2cvaW5mbyAiCisjfiAiZGlyZWN0b3J5XG4iCisjfiAiICAgMjAwMCAgIHN0dXBpZGx5dmVyYm9zZSAgIEluc2FuZSBhbW91bnRzIG9mIGRyaXZlbFxuIgorI34gIlxuIgorI34gIkRlYnVnZ2luZyBvcHRpb25zIGFyZSBiZSBtaXhlZCB1c2luZyBiaXR3aXNlLW9yLlxuIgorI34gIk5vdGUgdGhhdCB0aGUgbWVhbmluZ3MgYW5kIHZhbHVlcyBhcmUgc3ViamVjdCB0byBjaGFuZ2UuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICLQn9Cw0YDQsNC80LXRgtGA0Ysg0L7RgtC70LDQtNC60LggJXM6IC0tZGVidWc9PNCy0L7RgdGM0LwuINC30L3QsNGHLj4g0LjQu9C4IC1EPNCy0L7RgdGM0LwuINC30L3QsNGHLj46XG4iCisjfiAiXG4iCisjfiAiICDRh9C40YHQu9C+ICAg0LIg0LjRgdGF0L7QtNC90L7QvCDQutC+0LTQtSAgINC+0L/QuNGB0LDQvdC40LVcbiIKKyN+ICIgICAgICAxICAgZ2VuZXJhbCAgICAgICAgICAg0J7QsdGJ0LDRjyDQv9C+0LvQtdC30L3QsNGPINC40L3RhNC+0YDQvNCw0YbQuNGPINC+INC/0YDQvtC40YHRhdC+0LTRj9GJ0LjRhSAiCisjfiAi0YHQvtCx0YvRgtC40Y/RhVxuIgorI34gIiAgICAgIDIgICBzY3JpcHRzICAgICAgICAgICDQktGL0LfQvtCyINC4INGB0L7RgdGC0L7Rj9C90LjQtSDRgdGG0LXQvdCw0YDQuNC10LIg0YHQvtC/0YDQvtCy0L7QttC00LDRjtGJ0LXQs9C+XG4iCisjfiAiICAgICAxMCAgIGVhY2hmaWxlICAgICAgICAgINCY0L3RhNC+0YDQvNCw0YbQuNGPINC+INC60LDQttC00L7QvCDQvtCx0YDQsNCx0L7RgtCw0L3QvdC+0Lwg0YTQsNC50LvQtVxuIgorI34gIiAgICAxMDAgICBlYWNoZmlsZWRldGFpbCAgICDQn9C+0LTRgNC+0LHQvdCw0Y8g0LjQvdGE0L7RgNC80LDRhtC40Y8g0L4g0LrQsNC20LTQvtC8INC+0LHRgNCw0LHQvtGC0LDQvdC90L7QvCAiCisjfiAi0YTQsNC50LvQtVxuIgorI34gIiAgICAgMjAgICBjb25mZiAgICAgICAgICAgICDQmNC90YTQvtGA0LzQsNGG0LjRjyDQviDQutCw0LbQtNC+0Lwg0YTQsNC50LvQtSDQvdCw0YHRgtGA0L7QudC60LhcbiIKKyN+ICIgICAgMjAwICAgY29uZmZkZXRhaWwgICAgICAg0J/QvtC00YDQvtCx0L3QsNGPINC40L3RhNC+0YDQvNCw0YbQuNGPINC+INC60LDQttC00L7QvCDRhNCw0LnQu9C1ICIKKyN+ICLQvdCw0YHRgtGA0L7QudC60LhcbiIKKyN+ICIgICAgIDQwICAgZGVwY29uICAgICAgICAgICAg0JfQsNCy0LjRgdC40LzQvtGB0YLQuCDQuCDQutC+0L3RhNC70LjQutGC0YtcbiIKKyN+ICIgICAgNDAwICAgZGVwY29uZGV0YWlsICAgICAg0J/QvtC00YDQvtCx0L3QsNGPINC40L3RhNC+0YDQvNCw0YbQuNGPINC+INC30LDQstC40YHQuNC80L7RgdGC0Y/RhSDQuCAiCisjfiAi0LrQvtC90YTQu9C40LrRgtCw0YVcbiIKKyN+ICIgICAxMDAwICAgdmVyeXZlcmJvc2UgICAgICAg0JLRgdGP0LrQsNGPINGH0YPRiNGMINC+LCDQvdCw0L/RgNC40LzQtdGALCDQutCw0YLQsNC70L7Qs9C1IGRwa2cvaW5mb1xuIgorI34gIiAgIDIwMDAgICBzdHVwaWRseXZlcmJvc2UgICDQn9Cw0YLQvtC70L7Qs9C40YfQtdGB0LrQuNC1INC60L7Qu9C40YfQtdGB0YLQstCwINCx0LXRgdGB0LzRi9GB0LvQtdC90L3QvtCz0L4gIgorI34gItGC0LXQutGB0YLQsFxuIgorI34gIlxuIgorI34gItCf0LDRgNCw0LzQtdGC0YDRiyDQvtGC0LvQsNC00LrQuCDQvtCx0YrQtdC00LjQvdGP0Y7RgtGB0Y8g0L/QvtCx0LjRgtC+0LLQvtC5INC+0L/QtdGA0LDRhtC40LXQuSBcItC40LvQuFwiLlxuIgorI34gItCY0LzQtdC50YLQtSDQsiDQstC40LTRgywg0YfRgtC+INC30L3QsNGH0LXQvdC40Y8g0Lgg0LjRhSDRgdC80YvRgdC70L7QstCw0Y8g0L3QsNCz0YDRg9C30LrQsCDQvNC+0LPRg9GCINCx0YvRgtGMINC40LfQvNC10L3QtdC90YsuXG4iCisKKyN+IG1zZ2lkICIiCisjfiAiJXMgZm9yY2luZyBvcHRpb25zIC0gY29udHJvbCBiZWhhdmlvdXIgd2hlbiBwcm9ibGVtcyBmb3VuZDpcbiIKKyN+ICIgIHdhcm4gYnV0IGNvbnRpbnVlOiAgLS1mb3JjZS08dGhpbmc+LDx0aGluZz4sLi4uXG4iCisjfiAiICBzdG9wIHdpdGggZXJyb3I6ICAgIC0tcmVmdXNlLTx0aGluZz4sPHRoaW5nPiwuLi4gfCAtLW5vLWZvcmNlLSIKKyN+ICI8dGhpbmc+LC4uLlxuIgorI34gIiBGb3JjaW5nIHRoaW5nczpcbiIKKyN+ICIgIGFsbCBbIV0gICAgICAgICAgICAgICAgU2V0IGFsbCBmb3JjZSBvcHRpb25zXG4iCisjfiAiICBkb3duZ3JhZGUgWypdICAgICAgICAgIFJlcGxhY2UgYSBwYWNrYWdlIHdpdGggYSBsb3dlciB2ZXJzaW9uXG4iCisjfiAiICBjb25maWd1cmUtYW55ICAgICAgICAgIENvbmZpZ3VyZSBhbnkgcGFja2FnZSB3aGljaCBtYXkgaGVscCB0aGlzIG9uZVxuIgorI34gIiAgaG9sZCAgICAgICAgICAgICAgICAgICBQcm9jZXNzIGluY2lkZW50YWwgcGFja2FnZXMgZXZlbiB3aGVuIG9uIGhvbGRcbiIKKyN+ICIgIGJhZC1wYXRoICAgICAgICAgICAgICAgUEFUSCBpcyBtaXNzaW5nIGltcG9ydGFudCBwcm9ncmFtcywgcHJvYmxlbXMgIgorI34gImxpa2VseVxuIgorI34gIiAgbm90LXJvb3QgICAgICAgICAgICAgICBUcnkgdG8gKGRlKWluc3RhbGwgdGhpbmdzIGV2ZW4gd2hlbiBub3Qgcm9vdFxuIgorI34gIiAgb3ZlcndyaXRlICAgICAgICAgICAgICBPdmVyd3JpdGUgYSBmaWxlIGZyb20gb25lIHBhY2thZ2Ugd2l0aCBhbm90aGVyXG4iCisjfiAiICBvdmVyd3JpdGUtZGl2ZXJ0ZWQgICAgIE92ZXJ3cml0ZSBhIGRpdmVydGVkIGZpbGUgd2l0aCBhbiB1bmRpdmVydGVkICIKKyN+ICJ2ZXJzaW9uXG4iCisjfiAiICBiYWQtdmVyaWZ5ICAgICAgICAgICAgIEluc3RhbGwgYSBwYWNrYWdlIGV2ZW4gaWYgaXQgZmFpbHMgYXV0aGVudGljaXR5ICIKKyN+ICJjaGVja1xuIgorI34gIiAgZGVwZW5kcy12ZXJzaW9uIFshXSAgICBUdXJuIGRlcGVuZGVuY3kgdmVyc2lvbiBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzXG4iCisjfiAiICBkZXBlbmRzIFshXSAgICAgICAgICAgIFR1cm4gYWxsIGRlcGVuZGVuY3kgcHJvYmxlbXMgaW50byB3YXJuaW5nc1xuIgorI34gIiAgY29uZm5ldyBbIV0gICAgICAgICAgICBBbHdheXMgdXNlIHRoZSBuZXcgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHRcbiIKKyN+ICIgIGNvbmZvbGQgWyFdICAgICAgICAgICAgQWx3YXlzIHVzZSB0aGUgb2xkIGNvbmZpZyBmaWxlcywgZG9uJ3QgcHJvbXB0XG4iCisjfiAiICBjb25mZGVmIFshXSAgICAgICAgICAgIFVzZSB0aGUgZGVmYXVsdCBvcHRpb24gZm9yIG5ldyBjb25maWcgZmlsZXMgaWYgIgorI34gIm9uZVxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICBpcyBhdmFpbGFibGUsIGRvbid0IHByb21wdC4gSWYgbm8gZGVmYXVsdCBjYW4gYmUgIgorI34gImZvdW5kLFxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICB5b3Ugd2lsbCBiZSBwcm9tcHRlZCB1bmxlc3Mgb25lIG9mIHRoZSBjb25mb2xkICIKKyN+ICJvclxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICBjb25mbmV3IG9wdGlvbnMgaXMgYWxzbyBnaXZlblxuIgorI34gIiAgY29uZm1pc3MgWyFdICAgICAgICAgICBBbHdheXMgaW5zdGFsbCBtaXNzaW5nIGNvbmZpZyBmaWxlc1xuIgorI34gIiAgY29uZmFzayBbIV0gICAgICAgICAgICBPZmZlciB0byByZXBsYWNlIGNvbmZpZyBmaWxlcyB3aXRoIG5vIG5ldyAiCisjfiAidmVyc2lvbnNcbiIKKyN+ICIgIGJyZWFrcyBbIV0gICAgICAgICAgICAgSW5zdGFsbCBldmVuIGlmIGl0IHdvdWxkIGJyZWFrIGFub3RoZXIgcGFja2FnZVxuIgorI34gIiAgY29uZmxpY3RzIFshXSAgICAgICAgICBBbGxvdyBpbnN0YWxsYXRpb24gb2YgY29uZmxpY3RpbmcgcGFja2FnZXNcbiIKKyN+ICIgIGFyY2hpdGVjdHVyZSBbIV0gICAgICAgUHJvY2VzcyBldmVuIHBhY2thZ2VzIHdpdGggd3JvbmcgYXJjaGl0ZWN0dXJlXG4iCisjfiAiICBvdmVyd3JpdGUtZGlyIFshXSAgICAgIE92ZXJ3cml0ZSBvbmUgcGFja2FnZSdzIGRpcmVjdG9yeSB3aXRoIGFub3RoZXIncyAiCisjfiAiZmlsZVxuIgorI34gIiAgdW5zYWZlLWlvIFshXSAgICAgICAgICBEbyBub3QgcGVyZm9ybSBzYWZlIEkvTyBvcGVyYXRpb25zIHdoZW4gIgorI34gInVucGFja2luZ1xuIgorI34gIiAgcmVtb3ZlLXJlaW5zdHJlcSBbIV0gICBSZW1vdmUgcGFja2FnZXMgd2hpY2ggcmVxdWlyZSBpbnN0YWxsYXRpb25cbiIKKyN+ICIgIHJlbW92ZS1lc3NlbnRpYWwgWyFdICAgUmVtb3ZlIGFuIGVzc2VudGlhbCBwYWNrYWdlXG4iCisjfiAiXG4iCisjfiAiV0FSTklORyAtIHVzZSBvZiBvcHRpb25zIG1hcmtlZCBbIV0gY2FuIHNlcmlvdXNseSBkYW1hZ2UgeW91ciAiCisjfiAiaW5zdGFsbGF0aW9uLlxuIgorI34gIkZvcmNpbmcgb3B0aW9ucyBtYXJrZWQgWypdIGFyZSBlbmFibGVkIGJ5IGRlZmF1bHQuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICLQn9Cw0YDQsNC80LXRgtGA0Ysg0LjQs9C90L7RgNC40YDQvtCy0LDQvdC40Y8g0L/QvtC30LLQvtC70Y/RjtGCINGD0L/RgNCw0LLQu9GP0YLRjCDQv9C+0LLQtdC00LXQvdC40LXQvCAlcyDQv9GA0LhcbiIKKyN+ICLQvtCx0L3QsNGA0YPQttC10L3QuNC4INC+0YjQuNCx0L7QujpcbiIKKyN+ICIgINC/0YDQtdC00YPQv9GA0LXQtNC40YLRjCDQuCDQv9GA0L7QtNC+0LvQttC40YLRjCDRgNCw0LHQvtGC0YM6ICAgICAgLS1mb3JjZS080L7RiNC40LHQutCwPiw80L7RiNC40LHQutCwPiwuLi5cbiIKKyN+ICIgINC/0YDQtdC60YDQsNGC0LjRgtGMINGA0LDQsdC+0YLRgyDQuCDQstGL0LLQtdGB0YLQuCDRgdC+0L7QsdGJ0LXQvdC40LU6IC0tcmVmdXNlLTzQvtGI0LjQsdC60LA+LDzQvtGI0LjQsdC60LA+LC4uLiAiCisjfiAifCBcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0tbm8tZm9yY2UtPNC+0YjQuNCx0LrQsD4sLi4uXG4iCisjfiAi0JLQvtC30LzQvtC20L3Ri9C1INC+0YjQuNCx0LrQuDpcbiIKKyN+ICIgIGFsbCBbIV0gICAgICAgICAgICAgICAgICAg0JLRgdC1INCy0L7Qt9C80L7QttC90YvQtSDQvtGI0LjQsdC60LhcbiIKKyN+ICIgIGRvd25ncmFkZSBbKl0gICAgICAgICDQl9Cw0LzQtdC90LAg0L/QsNC60LXRgtCwINC10LPQviDQsdC+0LvQtdC1INGA0LDQvdC90LXQuSDQstC10YDRgdC40LXQuVxuIgorI34gIiAgY29uZmlndXJlLWFueSAgICAgICAgINCd0LDRgdGC0YDQvtC50LrQsCDQv9Cw0LrQtdGC0L7Qsiwg0LrQvtGC0L7RgNGL0LUg0LzQvtCz0YPRgiDQv9C+0LzQvtGH0YxcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICDRg9GB0YLQsNC90LDQstC70LjQstCw0LXQvNC+0LzRg1xuIgorI34gIiAgaG9sZCAgICAgICAgICAgICAgICAgINCe0LHRgNCw0LHQvtGC0LrQsCDQv9Cw0LrQtdGC0L7Qsiwg0LTQsNC20LUg0LXRgdC70Lgg0L7QvdC4INC30LDRhNC40LrRgdC40YDQvtCy0LDQvdGLXG4iCisjfiAiICBiYWQtcGF0aCAgICAgICAgICAgICAg0JIgUEFUSCDQvtGC0YHRg9GC0YHRgtCy0YPRjtGCINC90LXQvtCx0YXQvtC00LjQvNGL0LUg0L/RgNC+0LPRgNCw0LzQvNGLLFxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgINCy0L7Qt9C80L7QttC90Ysg0L/RgNC+0LHQu9C10LzRi1xuIgorI34gIiAgbm90LXJvb3QgICAgICAgICAgICAgINCf0YvRgtCw0YLRjNGB0Y8g0YPRgdGC0LDQvdCw0LLQu9C40LLQsNGC0Ywg0LjQu9C4INGD0LTQsNC70Y/RgtGMINGE0LDQudC70YssINC00LDQttC1XG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAg0LXRgdC70Lgg0L/RgNC+0LPRgNCw0LzQvNCwINC30LDQv9GD0YnQtdC90LAg0L3QtSDRgdGD0L/QtdGA0L/QvtC70YzQt9C+0LLQsNGC0LXQu9C10LxcbiIKKyN+ICIgIG92ZXJ3cml0ZSAgICAgICAgICAgICDQnNC+0LbQvdC+INC/0LXRgNC10LfQsNC/0LjRgdGL0LLQsNGC0Ywg0YTQsNC50LvRiyDQtNGA0YPQs9C40YUg0L/QsNC60LXRgtC+0LJcbiIKKyN+ICIgIG92ZXJ3cml0ZS1kaXZlcnRlZCAgICDQnNC+0LbQvdC+INC/0LXRgNC10LfQsNC/0LjRgdGL0LLQsNGC0Ywg0L7RgtC60LvQvtC90ZHQvdC90YvQuSDRhNCw0LnQuyDQvtCx0YvRh9C90YvQvFxuIgorI34gIiAgYmFkLXZlcmlmeSAgICAgICAgICAgINCj0YHRgtCw0L3QvtCy0LjRgtGMINC/0LDQutC10YIsINC00LDQttC1INC10YHQu9C4INC+0L0g0L3QtSDQv9GA0L7RhdC+0LTQuNGCXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAg0L/RgNC+0LLQtdGA0LrRgyDQv9C+0LTQu9C40L3QvdC+0YHRgtC4XG4iCisjfiAiICBkZXBlbmRzLXZlcnNpb24gWyFdICAg0KHQtNC10LvQsNGC0Ywg0L/RgNC+0LHQu9C10LzRiyDRgSDQt9Cw0LLQuNGB0LjQvNC+0YHRgtGP0LzQuCDQv9C+INCy0LXRgNGB0LjRj9C8XG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAg0L/RgNC10LTRg9C/0YDQtdC20LTQtdC90LjRj9C80LhcbiIKKyN+ICIgIGRlcGVuZHMgWyFdICAgICAgICAgICDQodC00LXQu9Cw0YLRjCDQstGB0LUg0L/RgNC+0LHQu9C10LzRiyDRgSDQt9Cw0LLQuNGB0LjQvNC+0YHRgtGP0LzQuCAiCisjfiAi0L/RgNC10LTRg9C/0YDQtdC20LTQtdC90LjRj9C80LhcbiIKKyN+ICIgIGNvbmZuZXcgWyFdICAgICAgICAgICDQktGB0LXQs9C00LAg0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMINC90L7QstGL0LUg0YTQsNC50LvRiyDQvdCw0YHRgtGA0L7QudC60Lgg0L3QtSAiCisjfiAi0YHQv9GA0LDRiNC40LLQsNGPXG4iCisjfiAiICBjb25mb2xkIFshXSAgICAgICAgICAg0JLRgdC10LPQtNCwINC40YHQv9C+0LvRjNC30L7QstCw0YLRjCDRgdGC0LDRgNGL0LUg0YTQsNC50LvRiyDQvdCw0YHRgtGA0L7QudC60Lgg0L3QtSAiCisjfiAi0YHQv9GA0LDRiNC40LLQsNGPXG4iCisjfiAiICBjb25mZGVmIFshXSAgICAgICAgICAg0JjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMINC00LvRjyDQvdC+0LLRi9GFINGE0LDQudC70L7QsiDQvdCw0YHRgtGA0L7QudC60Lgg0LLQsNGA0LjQsNC90YJcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICDQv9C+INGD0LzQvtC70YfQsNC90LjRjiwg0LXRgdC70Lgg0L7QvSDQtdGB0YLRjCwg0L3QuNGH0LXQs9C+INC90LUg0YHQv9GA0LDRiNC40LLQsNGPLlxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgINCV0YHQu9C4INC+0L0g0L3QtSDQvdCw0LnQtNC10L0sINGC0L4g0LLRi9C00LDRkdGC0YHRjyDQt9Cw0L/RgNC+0YEsXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAg0LXRgdC70Lgg0YLQvtC70YzQutC+INC90LUg0LfQsNC00LDQvdGLINC/0LDRgNCw0LzQtdGC0YDRiyBjb25mb2xkINC4ICIKKyN+ICJjb25mbmV3XG4iCisjfiAiICBjb25mbWlzcyBbIV0gICAgICAgICAg0JLRgdC10LPQtNCwINGD0YHRgtCw0L3QsNCy0LvQuNCy0LDRgtGMINC+0YLRgdGD0YLRgdGC0LLRg9GO0YnQuNC1INGE0LDQudC70YsgIgorI34gItC90LDRgdGC0YDQvtC50LrQuFxuIgorI34gIiAgY29uZmFzayBbIV0gICAgICAgICAgINCf0YDQtdC00LvQsNCz0LDRgtGMINC30LDQvNC10L3RgyDRhNCw0LnQu9C+0LIg0L3QsNGB0YLRgNC+0LnQutC4INC90LAg0YHRgtCw0YDRi9C1ICIKKyN+ICLQstC10YDRgdC40LhcbiIKKyN+ICIgIGJyZWFrcyBbIV0gICAgICAgICAgICDQo9GB0YLQsNC90LDQstC70LjQstCw0YLRjCwg0LTQsNC20LUg0LXRgdC70Lgg0Y3RgtC+INGB0LvQvtC80LDQtdGCINC00YDRg9Cz0L7QuSAiCisjfiAi0L/QsNC60LXRglxuIgorI34gIiAgY29uZmxpY3RzIFshXSAgICAgICAgINCg0LDQt9GA0LXRiNC40YLRjCDRg9GB0YLQsNC90L7QstC60YMg0LrQvtC90YTQu9C40LrRgtGD0Y7RidC40YUg0L/QsNC60LXRgtC+0LJcbiIKKyN+ICIgIGFyY2hpdGVjdHVyZSBbIV0gICAgICDQntCx0YDQsNCx0LDRgtGL0LLQsNGC0Ywg0L/QsNC60LXRgtGLINC00LDQttC1INC00LvRjyDQtNGA0YPQs9C40YUg0LDRgNGF0LjRgtC10LrRgtGD0YBcbiIKKyN+ICIgIG92ZXJ3cml0ZS1kaXIgWyFdICAgICDQoNCw0LfRgNC10YjQuNGC0Ywg0L/QtdGA0LXQt9Cw0L/QuNGB0Ywg0LrQsNGC0LDQu9C+0LPQsCDQvtC00L3QvtCz0L4g0L/QsNC60LXRgtCwXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAg0YTQsNC50LvQvtC8INC00YDRg9Cz0L7Qs9C+XG4iCisjfiAiICB1bnNhZmUtaW8gWyFdICAgICAgICAgINCe0YLQutC70Y7Rh9C40YLRjCDQsdC10LfQvtC/0LDRgdC90L7QtSDQstGL0L/QvtC70L3QtdC90LjQtSDQvtC/0LXRgNCw0YbQuNC5INCy0LLQvtC00LAtIgorI34gItCy0YvQstC+0LTQsFxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgINC/0YDQuCDRgNCw0YHQv9Cw0LrQvtCy0LrQtVxuIgorI34gIiAgcmVtb3ZlLXJlaW5zdHJlcSBbIV0gINCj0LTQsNC70Y/RgtGMINC/0LDQutC10YLRiywg0YLRgNC10LHRg9GO0YnQuNC1INGD0YHRgtCw0L3QvtCy0LrRg1xuIgorI34gIiAgcmVtb3ZlLWVzc2VudGlhbCBbIV0gINCj0LTQsNC70Y/RgtGMINC/0LDQutC10YLRiyDQv9C10YDQstC+0Lkg0L3QtdC+0LHRhdC+0LTQuNC80L7RgdGC0LhcbiIKKyN+ICJcbiIKKyN+ICLQn9Cg0JXQlNCj0J/QoNCV0JbQlNCV0J3QmNCVOiDQmNGB0L/QvtC70YzQt9C+0LLQsNC90LjQtSDQv9Cw0YDQsNC80LXRgtGA0L7Qsiwg0L7RgtC80LXRh9C10L3QvdGL0YUgWyFdLCDQvNC+0LbQtdGCINGB0LXRgNGM0ZHQt9C90L5cbiIKKyN+ICLQv9C+0LLRgNC10LTQuNGC0Ywg0YHQuNGB0YLQtdC80YMuINCf0LDRgNCw0LzQtdGC0YDRiywg0L7RgtC80LXRh9C10L3QvdGL0LUgWypdLCDQt9Cw0LTQtdC50YHRgtCy0L7QstCw0L3RiyDQv9C+ICIKKyN+ICLRg9C80L7Qu9GH0LDQvdC40Y4uXG4iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBkcGtnLXNwbGl0IHRvIHNlZSBpZiBpdCdzIHBhcnQgb2YgYSBtdWx0aXBhcnRlciIKKyN+IG1zZ3N0ciAiIgorI34gItC90LUg0YPQtNCw0LvQvtGB0Ywg0LfQsNC/0YPRgdGC0LjRgtGMIGRwa2ctc3BsaXQg0Lgg0L/RgNC+0LLQtdGA0LjRgtGMLCDRj9Cy0LvRj9C10YLRgdGPINC70Lgg0YTQsNC50Lsg0YfQsNGB0YLRjNGOICIKKyN+ICLQvNC90L7Qs9C+0YLQvtC80L3QvtCz0L4g0LDRgNGF0LjQstCwIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWNsIGRlYnNpZy12ZXJpZnkiCisjfiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LfQsNC/0YPRgdGC0LjRgtGMIGRlYnNpZy12ZXJpZnkiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBkcGtnLWRlYiB0byBleHRyYWN0IGNvbnRyb2wgaW5mb3JtYXRpb24iCisjfiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LfQsNC/0YPRgdGC0LjRgtGMIGRwa2ctZGViLCDRh9GC0L7QsdGLINC40LfQstC70LXRh9GMINGD0L/RgNCw0LLQu9GP0Y7RidGD0Y4g0LjQvdGE0L7RgNC80LDRhtC40Y4iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gZXhlYyBkcGtnLWRlYiB0byBnZXQgZmlsZXN5c3RlbSBhcmNoaXZlIgorI34gbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC40LfQstC70LXRh9GMINCw0YDRhdC40LIg0YTQsNC50LvQvtCy0L7QuSDRgdC40YHRgtC10LzRiyDRgSDQv9C+0LzQvtGJ0YzRjiBkcGtnLWRlYiIKKworI34gbXNnaWQgInVuYWJsZSB0byBkZWxldGUgZGlzYXBwZWFyaW5nIGNvbnRyb2wgaW5mbyBmaWxlIGAlLjI1MHMnIgorI34gbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGD0LTQsNC70LjRgtGMINGE0LDQudC7INGD0L/RgNCw0LLQu9GP0Y7RidC10Lkg0LjQvdGE0L7RgNC80LDRhtC40LggwqslLjI1MHPCuyIKKworI34gbXNnaWQgImRwa2c6ICVzIG5vdCBmb3VuZC5cbiIKKyN+IG1zZ3N0ciAiZHBrZzog0YTQsNC50LsgJXMg0L3QtSDQvdCw0LnQtNC10L0uXG4iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gLi4uL0RFQklBTiIKKyN+IG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQv9C10YDQtdC50YLQuCDQsiDQutCw0YLQsNC70L7QsyAuLi4vREVCSUFOIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgdGFyIC1jZiIKKyN+IG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQt9Cw0L/Rg9GB0YLQuNGC0YwgdGFyIC1jZiIKKworI34gbXNnaWQgImZhaWxlZCB0byBtYWtlIHRtcGZpbGUgKGNvbnRyb2wpIgorI34gbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGB0L7Qt9C00LDRgtGMINCy0YDQtdC80LXQvdC90YvQuSDRhNCw0LnQuyAo0YPQv9GA0LDQstC70Y/RjtGJ0LDRjyDQuNC90YTQvtGA0LzQsNGG0LjRjykiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gdW5saW5rIHRtcGZpbGUgKGNvbnRyb2wpLCAlcyIKKyN+IG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRg9C00LDQu9C40YLRjCDQstGA0LXQvNC10L3QvdGL0Lkg0YTQsNC50LsgKNGD0L/RgNCw0LLQu9GP0Y7RidCw0Y8g0LjQvdGE0L7RgNC80LDRhtC40Y8pICVzIgorCisjfiBtc2dpZCAiY29udHJvbCIKKyN+IG1zZ3N0ciAi0YPQv9GA0LDQstC70Y/RjtGJ0LDRjyDQuNC90YTQvtGA0LzQsNGG0LjRjyIKKworI34gbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdG1wZmlsZSAoY29udHJvbCkiCisjfiBtc2dzdHIgIiIKKyN+ICLQvdC1INGD0LTQsNC70L7RgdGMINC/0LXRgNC10LnRgtC4INC6INC90LDRh9Cw0LvRgyDQstGA0LXQvNC10L3QvdC+0LPQviDRhNCw0LnQu9CwICjRg9C/0YDQsNCy0LvRj9GO0YnQsNGPINC40L3RhNC+0YDQvNCw0YbQuNGPKSIKKworI34gbXNnaWQgImZhaWxlZCB0byBmc3RhdCB0bXBmaWxlIChjb250cm9sKSIKKyN+IG1zZ3N0ciAiIgorI34gItC90LUg0YPQtNCw0LvQvtGB0Ywg0L/QvtC70YPRh9C40YLRjCDQuNC90YTQvtGA0LzQsNGG0LjRjiDQviDQstGA0LXQvNC10L3QvdC+0Lwg0YTQsNC50LvQtSAo0YPQv9GA0LDQstC70Y/RjtGJ0LDRjyDQuNC90YTQvtGA0LzQsNGG0LjRjykiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBmaW5kIgorI34gbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC30LDQv9GD0YHRgtC40YLRjCBmaW5kIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgc2ggLWMgbXYgZm9vLyogJmMiCisjfiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LLRi9C/0L7Qu9C90LjRgtGMINC60L7QvNCw0L3QtNGDIHNoIC1jIG12IGZvby8qICZjIgorCisjfiBtc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gJS4yNTBzIGxlbmd0aCBjb250YWlucyBudWxscyIKKyN+IG1zZ3N0ciAi0YTQsNC50LsgwqslLjI1MHPCuyDQv9C+0LLRgNC10LbQtNGR0L0gLS0gJS4yNTBzINGB0L7QtNC10YDQttC40YIg0L3Rg9C70LXQstGL0LUg0YHQuNC80LLQvtC70YsiCisKKyN+IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBuZWdhdGl2ZSBtZW1iZXIgbGVuZ3RoICV6aSIKKyN+IG1zZ3N0ciAi0YTQsNC50LsgwqslLjI1MHPCuyDQv9C+0LLRgNC10LbQtNGR0L0gLS0g0LTQu9C40L3QsCDQutC+0LzQv9C+0L3QtdC90YLQsCDQvtGC0YDQuNGG0LDRgtC10LvRjNC90LAgKCV6aSkiCisKKyN+IG1zZ2lkICJmYWlsZWQgZ2V0dGluZyB0aGUgY3VycmVudCBmaWxlIHBvc2l0aW9uIgorI34gbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC/0L7Qu9GD0YfQuNGC0Ywg0YLQtdC60YPRidGD0Y4g0L/QvtC30LjRhtC40Y4g0LIg0YTQsNC50LvQtSIKKworI34gbXNnaWQgImZhaWxlZCBzZXR0aW5nIHRoZSBjdXJyZW50IGZpbGUgcG9zaXRpb24iCisjfiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0YPRgdGC0LDQvdC+0LLQuNGC0Ywg0YLQtdC60YPRidGD0Y4g0L/QvtC30LjRhtC40Y4g0LIg0YTQsNC50LvQtSIKKworI34gbXNnaWQgInZlcnNpb24gbnVtYmVyIgorI34gbXNnc3RyICLQvdC+0LzQtdGAINCy0LXRgNGB0LjQuCIKKworI34gbXNnaWQgIm1lbWJlciBsZW5ndGgiCisjfiBtc2dzdHIgItC00LvQuNC90LAg0Y3Qu9C10LzQtdC90YLQsCIKKworI34gbXNnaWQgImhlYWRlciBpbmZvIG1lbWJlciIKKyN+IG1zZ3N0ciAi0LjQvdGE0L7RgNC80LDRhtC40L7QvdC90YvQuSDQutC+0LzQv9C+0L3QtdC90YIg0LfQsNCz0L7Qu9C+0LLQutCwIgorCisjfiBtc2dpZCAic2tpcHBlZCBjb250cm9sIGFyZWEgZnJvbSAlcyIKKyN+IG1zZ3N0ciAi0L/RgNC+0L/Rg9GJ0LXQvdCwINGD0L/RgNCw0LLQu9GP0Y7RidCw0Y8g0L7QsdC70LDRgdGC0Ywg0LjQtyAlcyIKKworI34gbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgdGVtcG9yYXJ5IGRpcmVjdG9yeSIKKyN+IG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRgdC+0LfQtNCw0YLRjCDQstGA0LXQvNC10L3QvdGL0Lkg0LrQsNGC0LDQu9C+0LMiCisKKyN+IG1zZ2lkICJpbmZvX3NwZXciCisjfiBtc2dzdHIgItGE0YPQvdC60YbQuNGPIGluZm9fc3BldyIKKworI34gbXNnaWQgImluZm8gbGVuZ3RoIgorI34gbXNnc3RyICLQtNC70LjQvdCwIGluZm8iCisKKyN+IG1zZ2lkICJ0b3RhbCBsZW5ndGgiCisjfiBtc2dzdHIgItC+0LHRidCw0Y8g0LTQu9C40L3QsCIKKworI34gbXNnaWQgImRhdGEgbGVuZ3RoIgorI34gbXNnc3RyICLQtNC70LjQvdCwINC00LDQvdC90YvRhSIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIGRwa2ctZGViIHRvIGV4dHJhY3QgZmllbGQgdmFsdWUiCisjfiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LfQsNC/0YPRgdGC0LjRgtGMIGRwa2ctZGViLCDRh9GC0L7QsdGLINC40LfQstC70LXRh9GMINC30L3QsNGH0LXQvdC40LUg0L/QvtC70Y8iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gc3RhdCAlczogJXMiCisjfiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LLRi9C/0L7Qu9C90LjRgtGMIHN0YXQg0LTQu9GPICVzOiAlcyIKKworI34gbXNnaWQgInNsYXZlIG5hbWUgJXMgZHVwbGljYXRlZCIKKyN+IG1zZ3N0ciAi0L/QvtCy0YLQvtGA0Y/RjtGJ0LXQtdGB0Y8g0L/QvtC00YfQuNC90ZHQvdC90L7QtSDQuNC80Y8gJXMiCisKKyN+IG1zZ2lkICJzbGF2ZSBsaW5rICVzIGR1cGxpY2F0ZWQiCisjfiBtc2dzdHIgItC/0L7QstGC0L7RgNGP0Y7RidCw0Y/RgdGPINC/0L7QtNGH0LjQvdGR0L3QvdCw0Y8g0YHRgdGL0LvQutCwICVzIgorCisjfiBtc2dpZCAiJWQgcmVxdWVzdGVkIGNvbnRyb2wgY29tcG9uZW50cyBhcmUgbWlzc2luZyIKKyN+IG1zZ3N0ciAi0J7RgtGB0YPRgtGB0YLQstGD0LXRgiAlZCDQvdC10L7QsdGF0L7QtNC40LzRi9GFINGD0L/RgNCw0LLQu9GP0Y7RidC40YUg0LrQvtC80L/QvtC90LXQvdGC0L7QsiIKKworI34gbXNnaWQgImNhdCAoZGF0YSkiCisjfiBtc2dzdHIgImNhdCAo0LTQsNC90L3Ri9C1KSIKKworI34gbXNnaWQgImZhaWxlZCB0byBvcGVuIHBpcGUgZGVzY3JpcHRvciBgMScgaW4gcGFzdGUiCisjfiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L7RgtC60YDRi9GC0Ywg0LTQtdGB0LrRgNC40L/RgtC+0YAg0L/QvtGC0L7QutCwIGAxJyDQtNC70Y8g0LLRgdGC0LDQstC60LgiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gd3JpdGUgdG8gZ3ppcCAtZGMiCisjfiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L7RgdGD0YnQtdGB0YLQstC40YLRjCDQt9Cw0L/QuNGB0Ywg0LIg0LrQsNC90LDQuyBnemlwIC1kYyIKKworI34gbXNnaWQgImZhaWxlZCB0byBjbG9zZSBnemlwIC1kYyIKKyN+IG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQt9Cw0LrRgNGL0YLRjCDQutCw0L3QsNC7IGd6aXAgLWRjIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHN5c2NhbGwgbHNlZWsgdG8gZmlsZXMgYXJjaGl2ZSBwb3J0aW9uIgorI34gbXNnc3RyICIiCisjfiAi0L3QtSDRg9C00LDQu9C+0YHRjCDRg9GB0YLQsNC90L7QstC40YLRjCDQv9C+0LfQuNGG0LjRjiDRh9GC0LXQvdC40Y8g0L3QsCDRh9Cw0YHRgtGMINCw0YDRhdC40LLQsCwg0YHQvtC00LXRgNC20LDRidGD0Y4g0LTQsNC90L3Ri9C1IgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGV4ZWMgbWtzcGxpdCIKKyN+IG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQt9Cw0L/Rg9GB0YLQuNGC0YwgbWtzcGxpdCIKKworI34gbXNnaWQgIiIKKyN+ICJcbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisjfiAiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi4iCisjfiBtc2dzdHIgIiIKKyN+ICJcbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisjfiAiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi4iCisKKyN+IG1zZ2lkICJ0d28gY29tbWFuZHMgc3BlY2lmaWVkOiAlcyBhbmQgLS0lcyIKKyN+IG1zZ3N0ciAi0YPQutCw0LfQsNC90Ysg0LTQstC1INC60L7QvNCw0L3QtNGLOiAlcyDQuCAtLSVzIgorCisjfiBtc2dpZCAiLS0lcyBuZWVkcyBhIGRpdmVydC10byBhcmd1bWVudCIKKyN+IG1zZ3N0ciAi0LTQu9GPIC0tJXMg0YLRgNC10LHRg9C10YLRgdGPINCw0YDQs9GD0LzQtdC90YIgZGl2ZXJ0LXRvIgorCisjfiBtc2dpZCAiLS0lcyBuZWVkcyBhIDxwYWNrYWdlPiBhcmd1bWVudCIKKyN+IG1zZ3N0ciAi0LTQu9GPIC0tJXMg0YLRgNC10LHRg9C10YLRgdGPINCw0YDQs9GD0LzQtdC90YIgPNC/0LDQutC10YI+IgorCisjfiBtc2dpZCAiY2Fubm90IG9wZW4gZGl2ZXJzaW9uczogJXMiCisjfiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L7RgtC60YDRi9GC0Ywg0YTQsNC50LsgZGl2ZXJzaW9uczogJXMiCisKKyN+IG1zZ2lkICJtaXNzaW5nIGFsdG5hbWUiCisjfiBtc2dzdHIgItC+0YLRgdGD0YLRgdGC0LLRg9C10YIgYWx0bmFtZSIKKworI34gbXNnaWQgIm1pc3NpbmcgcGFja2FnZSIKKyN+IG1zZ3N0ciAi0L7RgtGB0YPRgtGB0YLQstGD0LXRgiDQv9Cw0LrQtdGCIgorCisjfiBtc2dpZCAiaW50ZXJuYWwgZXJyb3IgLSBiYWQgbW9kZSBgJXMnIgorI34gbXNnc3RyICLQstC90YPRgtGA0LXQvdC90Y/RjyDQvtGI0LjQsdC60LAgLS0g0L3QtdC/0YDQsNCy0LjQu9GM0L3Ri9C5INGA0LXQttC40LwgYCVzJyIKKworI34gbXNnaWQgImNhbm5vdCBzdGF0IG9sZCBuYW1lIGAlcyc6ICVzIgorI34gbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINCy0YvQv9C+0LvQvdC40YLRjCBzdGF0INGB0YLQsNGA0L7Qs9C+INC40LzQtdC90LggYCVzJzogJXMiCisKKyN+IG1zZ2lkICJyZW5hbWU6IHJlbmFtZSBgJXMnIHRvIGAlcyc6ICVzIgorI34gbXNnc3RyICJyZW5hbWU6INC/0LXRgNC10LjQvNC10L3QvtCy0LDQvdC40LUgYCVzJyDQsiBgJXMnOiAlcyIKKworI34gbXNnaWQgImNyZWF0ZSBkaXZlcnNpb25zLW5ldzogJXMiCisjfiBtc2dzdHIgItGB0L7Qt9C00LDQvdC40LUgZGl2ZXJzaW9ucy1uZXc6ICVzIgorCisjfiBtc2dpZCAid3JpdGUgZGl2ZXJzaW9ucy1uZXc6ICVzIgorI34gbXNnc3RyICLQt9Cw0L/QuNGB0YwgZGl2ZXJzaW9ucy1uZXc6ICVzIgorCisjfiBtc2dpZCAiY2xvc2UgZGl2ZXJzaW9ucy1uZXc6ICVzIgorI34gbXNnc3RyICLQt9Cw0LrRgNGL0YLQuNC1IGRpdmVyc2lvbnMtbmV3OiAlcyIKKworI34gbXNnaWQgImNyZWF0ZSBuZXcgZGl2ZXJzaW9ucy1vbGQ6ICVzIgorI34gbXNnc3RyICLRgdC+0LfQtNCw0L3QuNC1INC90L7QstC+0LPQviBkaXZlcnNpb25zLW9sZDogJXMiCisKKyN+IG1zZ2lkICJpbnN0YWxsIG5ldyBkaXZlcnNpb25zOiAlcyIKKyN+IG1zZ3N0ciAi0YPRgdGC0LDQvdC+0LLQutCwINC90L7QstC+0LPQviDRhNCw0LnQu9CwIGRpdmVyc2lvbnM6ICVzIgorCisjfiBtc2dpZCAiaW50ZXJuYWwgZXJyb3I6ICVzIGNvcnJ1cHQ6ICVzIgorI34gbXNnc3RyICLQstC90YPRgtGA0LXQvdC90Y/RjyDQvtGI0LjQsdC60LA6ICVzINC/0L7QstGA0LXQttC00ZHQvTogJXMiCisKKyN+IG1zZ2lkICJkcGtnLWRlYiAtIGVycm9yOiAlcyAoYCVzJykgZG9lc24ndCBjb250YWluIGFueSBkaWdpdHNcbiIKKyN+IG1zZ3N0ciAiZHBrZy1kZWI6INC+0YjQuNCx0LrQsCAtLSAlcyAoJXMpINC90LUg0YHQvtC00LXRgNC20LjRgiDQvdC4INC+0LTQvdC+0Lkg0YbQuNGE0YDRi1xuIgorCisjfiBtc2dpZCAiKHVwc3RyZWFtKSB2ZXJzaW9uIgorI34gbXNnc3RyICLQstC10YDRgdC40Y8gKNC+0YDQuNCz0LjQvdCw0LvRjNC90LDRjykiCisKKyN+IG1zZ2lkICJEZWJpYW4gcmV2aXNpb24iCisjfiBtc2dzdHIgIkRlYmlhbi3RgNC10LTQsNC60YbQuNGPIgorCisjfiBtc2dpZCAiJWQgZXJyb3JzIGluIGNvbnRyb2wgZmlsZSIKKyN+IG1zZ3N0ciAi0LIg0YPQv9GA0LDQstC70Y/RjtGJ0LXQvCDRhNCw0LnQu9C1INC+0LHQvdCw0YDRg9C20LXQvdC+ICVkINC+0YjQuNCx0L7QuiIKKworIywgZnV6enkKKyN+fCBtc2dpZCAidW5hYmxlIHRvIHJlYWQgJXM6ICVzIgorI34gbXNnaWQgImNhbid0IHJlYWRkaXIgJXM6ICVzIgorI34gbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC/0YDQvtGH0LjRgtCw0YLRjCAlczogJXMiCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3BvL3NrLmdtbyBiL2Rwa2ctMS4xNi4xLjEvcG8vc2suZ21vCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjc0NzUzMTIKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3BvL3NrLmdtbwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3BvL3NrLnBvIGIvZHBrZy0xLjE2LjEuMS9wby9zay5wbwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xNDhkMjQ2Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9wby9zay5wbwpAQCAtMCwwICsxLDY2MjcgQEAKKyMgZHBrZyAtIFNsb3ZhayB0cmFuc2xhdGlvbgorIworIyBSb21hbiBCZW5rbyA8YmVuY29AYWNpZC5zaz4sIDIwMDUgLSBtYXN0ZXIgdHJhbnNsYXRvcgorIyBQZXRlciBNYW5uIDxQZXRlci5NYW5uQHR1a2Uuc2s+LCAyMDA2IC0gb25seSBuZXcgY2hhbmdlcworIyBJdmFuIE1hc8OhciA8aGVsaXg4NEBjZW50cnVtLnNrPiwgMjAwOCwgMjAwOSwgMjAxMC4KKyMKK21zZ2lkICIiCittc2dzdHIgIiIKKyJQcm9qZWN0LUlkLVZlcnNpb246IGRwa2dcbiIKKyJSZXBvcnQtTXNnaWQtQnVncy1UbzogZGViaWFuLWRwa2dAbGlzdHMuZGViaWFuLm9yZ1xuIgorIlBPVC1DcmVhdGlvbi1EYXRlOiAyMDExLTEwLTE0IDA3OjExKzAyMDBcbiIKKyJQTy1SZXZpc2lvbi1EYXRlOiAyMDEwLTEyLTE2IDIwOjM3KzAxMDBcbiIKKyJMYXN0LVRyYW5zbGF0b3I6IEl2YW4gTWFzw6FyIDxoZWxpeDg0QGNlbnRydW0uc2s+XG4iCisiTGFuZ3VhZ2UtVGVhbTogU2xvdmFrIDxzay1pMThuQGxpc3RzLmxpbnV4LnNrPlxuIgorIkxhbmd1YWdlOiBza1xuIgorIk1JTUUtVmVyc2lvbjogMS4wXG4iCisiQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PVVURi04XG4iCisiQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdFxuIgorIlBsdXJhbC1Gb3JtczogbnBsdXJhbHM9MzsgcGx1cmFsPSgobj09MSkgPyAwIDogKG4+PTIgJiYgbjw9NCkgPyAxIDogMik7XG4iCisKKyM6IGxpYi9kcGtnL2FyLmM6NjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgJyVjJyBpbiBhcmNoaXZlICclLjI1MHMnIG1lbWJlciAnJS4xNnMnIHNpemUiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvYXIuYzo4MSBsaWIvZHBrZy9hci5jOjk3IGxpYi9kcGtnL2FyLmM6MTA4IGxpYi9kcGtnL2FyLmM6MTEyCisjOiBsaWIvZHBrZy9hci5jOjEzNCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE1NAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgZmlsZSAnJXMnIgorbXNnc3RyICJuaWUgamUgbW/Fvm7DqSB6YXDDrXNhxaUgc8O6Ym9yIOKAniVz4oCcIgorCisjOiBsaWIvZHBrZy9hci5jOjk0CisjLCBjLWZvcm1hdAorbXNnaWQgImdlbmVyYXRlZCBjb3JydXB0IGFyIGhlYWRlciBmb3IgJyVzJyIKK21zZ3N0ciAidnl0dm9yZW7DoSBwb8Wha29kZW7DoSBobGF2acSNa2EgYXIg4oCeJXPigJwiCisKKyM6IGxpYi9kcGtnL2FyLmM6MTIzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBmc3RhdCBhciBtZW1iZXIgZmlsZSAoJXMpIgorbXNnc3RyICJuaWUgamUgbW/Fvm7DqSB2eWtvbmHFpSBmc3RhdCDEjWxlbnNrw6lobyBzw7pib3J1IGFyICglcykiCisKKyM6IGxpYi9kcGtnL2FyLmM6MTMwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gZnN0YXQgYXIgbWVtYmVyIGZpbGUgKCVzKSIKK21zZ2lkICJhciBtZW1iZXIgZmlsZSAoJXMpIgorbXNnc3RyICJuaWUgamUgbW/Fvm7DqSB2eWtvbmHFpSBmc3RhdCDEjWxlbnNrw6lobyBzw7pib3J1IGFyICglcykiCisKKyM6IGxpYi9kcGtnL2J1ZmZlci5jOjE5NgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCBvbiBidWZmZXIgY29weSBmb3IgJXMiCittc2dzdHIgInpseWhhbmllIMSNw610YW5pYSBwcmkga29ww61yb3ZhbsOtIGJ1ZmZlcmEgJXMiCisKKyM6IGxpYi9kcGtnL2J1ZmZlci5jOjIxMgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgaW4gd3JpdGUgb24gYnVmZmVyIGNvcHkgZm9yICVzIgorbXNnc3RyICJ6bHloYW5pZSB6w6FwaXN1IHByaSBrb3DDrXJvdmFuw60gYnVmZmVyYSAlcyIKKworIzogbGliL2Rwa2cvYnVmZmVyLmM6MjIwCisjLCBjLWZvcm1hdAorbXNnaWQgInNob3J0IHJlYWQgb24gYnVmZmVyIGNvcHkgZm9yICVzIgorbXNnc3RyICJrcsOhdGtlIMSNw610YW5pZSBwcmkga29ww61yb3ZhbsOtIGJ1ZmZlcmEgJXMiCisKKyM6IGxpYi9kcGtnL2J1ZmZlci5jOjI4OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgdGFyIgorbXNnaWQgImZhaWxlZCB0byBzZWVrICVzIgorbXNnc3RyICJ6bHloYWxvIHNwdXN0ZW5pZSBwcm9ncmFtdSB0YXIiCisKKyM6IGxpYi9kcGtnL2NvbW1hbmQuYzoxNzggbGliL2Rwa2cvY29tbWFuZC5jOjIwNCBzcmMvaGVscC5jOjYyMQorIzogc3JjL3Byb2Nlc3NhcmMuYzo5OCBzcmMvcHJvY2Vzc2FyYy5jOjEzOCBzcmMvcHJvY2Vzc2FyYy5jOjQzMgorIzogc3JjL3Byb2Nlc3NhcmMuYzo4MzkgZHBrZy1kZWIvYnVpbGQuYzo0NTkgZHBrZy1kZWIvYnVpbGQuYzo1MzgKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTYxIGRwa2ctZGViL2V4dHJhY3QuYzozMTcgZHBrZy1kZWIvaW5mby5jOjY1CisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6NjkgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQ1NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZXhlY3V0ZSAlcyAoJXMpIgorbXNnc3RyICJuaWUgamUgbW/Fvm7DqSBzcHVzdGnFpSAlcyAoJXMpIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBkZWNvbXByZXNzaW9uIgorbXNnc3RyICIlczogZGVrb21wcmVzaWEiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6ODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGNvbXByZXNzaW9uIgorbXNnc3RyICIlczoga29tcHJlc2lhIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjExMgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZXJyb3IgYmluZGluZyBpbnB1dCB0byBnemlwIHN0cmVhbSIKK21zZ3N0ciAiJXM6IGNoeWJhIHByaXBvamVuaWEgdnN0dXB1IG5hIHRvayBnemlwIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCByZWFkIGVycm9yOiAnJXMnIgorbXNnc3RyICIlczogdm7DunRvcm7DoSBjaHliYSDEjcOtdGFuaWEgZ3ppcDog4oCeJXPigJwiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTMyIGxpYi9kcGtnL2NvbXByZXNzLmM6MTM2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHdyaXRlIGVycm9yIgorbXNnc3RyICIlczogdm7DunRvcm7DoSBjaHliYSB6w6FwaXN1IGd6aXAiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTUwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvciBiaW5kaW5nIG91dHB1dCB0byBnemlwIHN0cmVhbSIKK21zZ3N0ciAiJXM6IGNoeWJhIHByaXBvamVuaWEgdsO9c3R1cHUgbmEgdG9rIGd6aXAiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTU3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHJlYWQgZXJyb3IiCittc2dzdHIgIiVzOiB2bsO6dG9ybsOhIGNoeWJhIMSNw610YW5pYSBnemlwIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE2NworIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCB3cml0ZSBlcnJvcjogJyVzJyIKK21zZ3N0ciAiJXM6IHZuw7p0b3Juw6EgY2h5YmEgesOhcGlzdSBnemlwOiDigJ4lc+KAnCIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgd3JpdGUgZXJyb3I6ICVzIgorbXNnc3RyICIlczogdm7DunRvcm7DoSBjaHliYSDEjcOtdGFuaWEgZ3ppcDogJXMiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjIwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvciBiaW5kaW5nIGlucHV0IHRvIGJ6aXAyIHN0cmVhbSIKK21zZ3N0ciAiJXM6IGNoeWJhIHByaXBvamVuaWEgdnN0dXB1IG5hIHRvayBiemlwMiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIHJlYWQgZXJyb3I6ICclcyciCittc2dzdHIgIiVzOiB2bsO6dG9ybsOhIGNoeWJhIMSNw610YW5pYSBiemlwMjog4oCeJXPigJwiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjQwIGxpYi9kcGtnL2NvbXByZXNzLmM6MjQ0IGxpYi9kcGtnL2NvbXByZXNzLmM6Mjk0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiB3cml0ZSBlcnJvciIKK21zZ3N0ciAiJXM6IHZuw7p0b3Juw6EgY2h5YmEgesOhcGlzdSBiemlwMiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yIGJpbmRpbmcgb3V0cHV0IHRvIGJ6aXAyIHN0cmVhbSIKK21zZ3N0ciAiJXM6IGNoeWJhIHByaXBvamVuaWEgdsO9c3R1cHUgbmEgdG9rIGJ6aXAyIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI2NQorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgcmVhZCBlcnJvciIKK21zZ3N0ciAiJXM6IHZuw7p0b3Juw6EgY2h5YmEgxI3DrXRhbmlhIGJ6aXAyIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI3NSBsaWIvZHBrZy9jb21wcmVzcy5jOjI4NgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgd3JpdGUgZXJyb3I6ICclcyciCittc2dzdHIgIiVzOiB2bsO6dG9ybsOhIGNoeWJhIHrDoXBpc3UgYnppcDI6IOKAniVz4oCcIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI4MgorbXNnaWQgInVuZXhwZWN0ZWQgYnppcDIgZXJyb3IiCittc2dzdHIgIm5lb8SNYWvDoXZhbsOhIGNoeWJhIGJ6aXAyIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjY4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1cGRhdGVzIGRpcmVjdG9yeSBjb250YWlucyBmaWxlIGAlLjI1MHMnIHdob3NlIG5hbWUgaXMgdG9vIGxvbmcgKGxlbmd0aD0lZCwgIgorIm1heD0lZCkiCittc2dzdHIgIiIKKyJhZHJlc8OhciBzIGFrdHVhbGl6w6FjaWFtaSBvYnNhaHVqZSBzw7pib3Ig4oCeJS4yNTBz4oCcLCBrdG9yw6lobyBuw6F6b3YgamUgcHLDrWxpxaEgIgorImRsaMO9IChkxLrFvmthPSVkLCBtYXg9JWQpIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1cGRhdGVzIGRpcmVjdG9yeSBjb250YWlucyBmaWxlcyB3aXRoIGRpZmZlcmVudCBsZW5ndGggbmFtZXMgKGJvdGggJWQgYW5kICVkKSIKK21zZ3N0ciAiIgorImFkcmVzw6FyIHMgYWt0dWFsaXrDoWNpYW1pIG9ic2FodWplIHPDumJvcnkgcyBuw6F6dmFtaSByb3psacSNbmVqIGTEusW+a3kgKG9iYSAlZCBhICIKKyIlZCkiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHNjYW4gdXBkYXRlcyBkaXJlY3RvcnkgYCUuMjU1cyciCittc2dzdHIgIm5pZSBqZSBtb8W+bsOpIHppc3RpxaUgb2JzYWggYWRyZXPDoXJhIHMgYWt0dWFsaXrDoWNpYW1pIOKAniUuMjUwc+KAnCIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlbW92ZSBpbmNvcnBvcmF0ZWQgdXBkYXRlIGZpbGUgJS4yNTVzIgorbXNnc3RyICJ6bHloYWxvIG9kc3Ryw6FuZW5pZSBwcmlkcnXFvmVuw6lobyBha3R1YWxpemHEjW7DqWhvIHPDumJvcnUgJS4yNTVzIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEyMSBkcGtnLWRlYi9idWlsZC5jOjQ0NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGAlLjI1NXMnIgorbXNnc3RyICJuZWTDoSBzYSB2eXR2b3JpxaUg4oCeJS4yNTVz4oCcIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEyNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmlsbCAlLjI1MHMgd2l0aCBwYWRkaW5nIgorbXNnc3RyICJuaWUgamUgbW/Fvm7DqSBuYXBsbmnFpSAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTI3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCAlLjI1MHMgYWZ0ZXIgcGFkZGluZyIKK21zZ3N0ciAibmllIGplIG1vxb5uw6kgdnlwcsOhemRuacWlICUuMjUwcyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxMjkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNlZWsgdG8gc3RhcnQgb2YgJS4yNTBzIGFmdGVyIHBhZGRpbmciCittc2dzdHIgInBvIG5hcGxuZW7DrSBuaWUgamUgbW/Fvm7DqSBwcmVzdW7DusWlIHNhIG5hIHphxI1pYXRvayAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTk1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIGxvY2sgZmlsZSAlcyBmb3IgdGVzdGluZyIKK21zZ3N0ciAibmllIGplIG1vxb5uw6kgb3R2b3JpxaUgc8O6Ym9yIHrDoW1rdSAlcyBuYSB0ZXN0b3ZhbmllIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjIyMQorbXNnaWQgInVuYWJsZSB0byBvcGVuL2NyZWF0ZSBzdGF0dXMgZGF0YWJhc2UgbG9ja2ZpbGUiCittc2dzdHIgIm5pZSBqZSBtb8W+bsOpIG90dm9yacWlL3Z5dHZvcmnFpSB6YW15a2Fjw60gc8O6Ym9yIHN0YXZvdmVqIGRhdGFiw6F6eSIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyMzEKK21zZ2lkICJ5b3UgZG8gbm90IGhhdmUgcGVybWlzc2lvbiB0byBsb2NrIHRoZSBkcGtnIHN0YXR1cyBkYXRhYmFzZSIKK21zZ3N0ciAibmVtw6F0ZSBvcHLDoXZuZW5pZSBuYSB1emFta251dGllIHN0YXZvdmVqIGRhdGFiw6F6eSBkcGtnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjIzMworIywgZnV6enkKKyN8IG1zZ2lkICJ1bmFibGUgdG8gbG9jayBkcGtnIHN0YXR1cyBkYXRhYmFzZSIKK21zZ2lkICJkcGtnIHN0YXR1cyBkYXRhYmFzZSIKK21zZ3N0ciAibmllIGplIG1vxb5uw6kgdXphbWtuw7rFpSBzdGF2b3bDuiBkYXRhYsOhenUgZHBrZyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyNTcKK21zZ2lkICJyZXF1ZXN0ZWQgb3BlcmF0aW9uIHJlcXVpcmVzIHN1cGVydXNlciBwcml2aWxlZ2UiCittc2dzdHIgInBvxb5hZG92YW7DoSBvcGVyw6FjaWEgdnnFvmFkdWplIG9wcsOhdm5lbmllIHN1cGVycG91xb7DrXZhdGXEvmEiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjYyCittc2dpZCAidW5hYmxlIHRvIGFjY2VzcyBkcGtnIHN0YXR1cyBhcmVhIgorbXNnc3RyICJuaWUgamUgbW/Fvm7DqSBwcmlzdMO6cGnFpSBrdSBzdGF2b3ZlaiBvYmxhc3RpIGRwa2ciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjY0Cittc2dpZCAib3BlcmF0aW9uIHJlcXVpcmVzIHJlYWQvd3JpdGUgYWNjZXNzIHRvIGRwa2cgc3RhdHVzIGFyZWEiCittc2dzdHIgIm9wZXLDoWNpYSB2ecW+YWR1amUgcHLDoXZhIG5hIMSNw610YW5pZS96w6FwaXMgZG8gc3Rhdm92ZWogb2JsYXN0aSBkcGtnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjMwOQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVtb3ZlIG15IG93biB1cGRhdGUgZmlsZSAlLjI1NXMiCittc2dzdHIgImNoeWJhIHByaSBvZHN0cmHFiG92YW7DrSBtw7RqaG8gdmxhc3Ruw6lobyBha3R1YWxpemHEjW7DqWhvIHPDumJvcnUgJS4yNTVzIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM0NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgIm5pZSBqZSBtb8W+bsOpIHphcMOtc2HFpSBha3R1YWxpem92YW7DvSBzdGF2IOKAniUuMjUwc+KAnCIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNDkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJuaWUgamUgbW/Fvm7DqSB2eXByw6F6ZG5pxaUgYWt0dWFsaXpvdmFuw70gc3RhdiDigJ4lLjI1MHPigJwiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzUxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB0cnVuY2F0ZSBmb3IgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgIm5pZSBqZSBtb8W+bsOpIHNrcsOhdGnFpSBha3R1YWxpem92YW7DvSBzdGF2IOKAniUuMjUwc+KAnCIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZzeW5jIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJuaWUgamUgbW/Fvm7DqSB2eWtvbmHFpSBmdW5rY2l1IGZzeW5jIG5hIGFrdHVhbGl6b3ZhbsO9IHN0YXYg4oCeJS4yNTBz4oCcIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM1NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgIm5pZSBqZSBtb8W+bsOpIHV6YXZyaWXFpSBha3R1YWxpem92YW7DvSBzdGF2IOKAniUuMjUwc+KAnCIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgIm5pZSBqZSBtb8W+bsOpIGluxaF0YWxvdmHFpSBha3R1YWxpem92YW7DvSBzdGF2IOKAniUuMjUwc+KAnCIKKworIzogbGliL2Rwa2cvZGlyLmM6NTAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byByZWFkIGZpbGVkZXNjcmlwdG9yIGZsYWdzIGZvciAlLjI1MHMiCittc2dpZCAidW5hYmxlIHRvIGdldCBmaWxlIGRlc2NyaXB0b3IgZm9yIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICJuaWUgamUgbW/Fvm7DqSDEjcOtdGHFpSBwcsOtem5ha3kgcG9waXNvdmHEjWEgc8O6Ym9ydSDigJ4lLjI1MHPigJwiCisKKyM6IGxpYi9kcGtnL2Rpci5jOjU0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gc3luYyBmaWxlICclcyciCittc2dpZCAidW5hYmxlIHRvIHN5bmMgZGlyZWN0b3J5ICclcyciCittc2dzdHIgIm5pZSBqZSBtb8W+bsOpIHZ5cHLDoXpkbmnFpSAoc3luYykgc8O6Ym9yIOKAniVz4oCcIgorCisjOiBsaWIvZHBrZy9kaXIuYzo2OSBsaWIvZHBrZy9kaXIuYzoxMzEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byBvcGVuIGZpbGUgJyVzJyIKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBkaXJlY3RvcnkgJyVzJyIKK21zZ3N0ciAibmllIGplIG1vxb5uw6kgb3R2b3JpxaUgc8O6Ym9yIOKAniVz4oCcIgorCisjOiBsaWIvZHBrZy9kaXIuYzoxMDkgc3JjL2RpdmVydGNtZC5jOjIxOCBkcGtnLXNwbGl0L3NwbGl0LmM6MjAyCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI5MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBmaWxlICclcyciCittc2dzdHIgIm5pZSBqZSBtb8W+bsOpIG90dm9yacWlIHPDumJvciDigJ4lc+KAnCIKKworIzogbGliL2Rwa2cvZGlyLmM6MTExIHNyYy9kaXZlcnRjbWQuYzoyMzIgc3JjL2RpdmVydGNtZC5jOjM3NworIzogc3JjL3N0YXRjbWQuYzoyMTcgZHBrZy1kZWIvYnVpbGQuYzo1OTggZHBrZy1zcGxpdC9qb2luLmM6NjUKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxODcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE0MDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgZmlsZSAnJXMnIgorbXNnc3RyICJuaWUgamUgbW/Fvm7DqSB2eXByw6F6ZG5pxaUgKHN5bmMpIHPDumJvciDigJ4lc+KAnCIKKworIzogbGliL2Rwa2cvZGlyLmM6MTEzIHNyYy9kaXZlcnRjbWQuYzoyMzQgc3JjL2RpdmVydGNtZC5jOjM3OQorIzogZHBrZy1kZWIvYnVpbGQuYzo2MDAgZHBrZy1zcGxpdC9qb2luLmM6NjcgZHBrZy1zcGxpdC9xdWV1ZS5jOjE4OQorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzMTQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE0MDgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIGZpbGUgJyVzJyIKK21zZ3N0ciAibmllIGplIG1vxb5uw6kgemF0dm9yacWlIHPDumJvciDigJ4lc+KAnCIKKworIzogbGliL2Rwa2cvZHVtcC5jOjM5NgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgZGV0YWlscyBvZiBgJS41MHMnIHRvIGAlLjI1MHMnIgorbXNnc3RyICJjaHliYSBwcmkgesOhcGlzZSBwb2Ryb2Jub3N0w60g4oCeJS41MHPigJwgZG8g4oCeJS4yNTBz4oCcIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDIzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuICclcycgZm9yIHdyaXRpbmcgJXMgZGF0YWJhc2UiCittc2dzdHIgInpseWhhbG8gb3R2b3JlbmllIOKAniVz4oCcIG5hIHrDoXBpcyBkYXRhYsOhenkgJXMiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0MjYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNldCBidWZmZXJpbmcgb24gJXMgZGF0YWJhc2UgZmlsZSIKK21zZ3N0ciAibmllIGplIG1vxb5uw6kgbmFzdGF2acWlIGJ1ZmZlcmluZyBkYXRhYsOhem92w6lobyBzw7pib3J1ICVzIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDM4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB3cml0ZSAlcyBkYXRhYmFzZSByZWNvcmQgYWJvdXQgJyUuNTBzJyB0byAnJS4yNTBzJyIKK21zZ3N0ciAiemx5aGFsIHrDoXBpcyB6w6F6bmFtdSBkYXRhbsOhenkgJXMgbyDigJ4lLjUwc+KAnCBkbyDigJ4lLjI1MHPigJwiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZsdXNoICVzIGRhdGFiYXNlIHRvICclLjI1MHMnIgorbXNnc3RyICJ6bHloYWxvIHZ5cHLDoXpkbmVuaWUgKGZsdXNoKSBkYXRhYsOhenkgJXMgZG8g4oCeJS4yNTBz4oCcIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDQ4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBmc3luYyAlcyBkYXRhYmFzZSB0byAnJS4yNTBzJyIKK21zZ3N0ciAiemx5aGFsbyB2eXByw6F6ZG5lbmllIChmc3luYykgZGF0YWLDoXp5ICVzIGRvIOKAniUuMjUwc+KAnCIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ1MQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2xvc2UgJyUuMjUwcycgYWZ0ZXIgd3JpdGluZyAlcyBkYXRhYmFzZSIKK21zZ3N0ciAiY2h5YmEgcHJpIHV6YXR2w6FyYW7DrSDigJ4lLjI1MHPigJwgcG8gesOhcGlzZSBkYXRhYsOhenkgJXMiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGxpbmsgJyUuMjUwcycgdG8gJyUuMjUwcycgZm9yIGJhY2t1cCBvZiAlcyBkYXRhYmFzZSIKK21zZ3N0ciAiIgorImNoeWJhIHByaSB2eXR2w6FyYW7DrSBvZGthenUg4oCeJS4yNTBz4oCcIG5hIOKAniUuMjUwc+KAnCBrdsO0bGkgdnl0dm9yZW5pdSB6w6Fsb2h5ICIKKyJkYXRhYsOhenkgJXMiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGluc3RhbGwgJyUuMjUwcycgYXMgJyUuMjUwcycgY29udGFpbmluZyAlcyBkYXRhYmFzZSIKK21zZ3N0ciAiY2h5YmEgcHJpIGluxaF0YWzDoWNpaSDigJ4lLjI1MHPigJwgYWtvIOKAniUuMjUwc+KAnCBvYnNhaHVqw7pjZWhvIGRhdGFiw6F6dSAlcyIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjk0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogdW5yZWNvdmVyYWJsZSBmYXRhbCBlcnJvciwgYWJvcnRpbmc6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKyIlczoga3JpdGlja8OhIGNoeWJhLCB6b3RhdmVuaWUgbmllIGplIG1vxb5uw6ksIHByZXJ1xaF1amUgc2E6XG4iCisiICVzXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoxMDAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIlczogdW5yZWNvdmVyYWJsZSBmYXRhbCBlcnJvciwgYWJvcnRpbmc6XG4iCisjfCAiICVzXG4iCittc2dpZCAiIgorIiVzOiBvdXRzaWRlIGVycm9yIGNvbnRleHQsIGFib3J0aW5nOlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisiJXM6IGtyaXRpY2vDoSBjaHliYSwgem90YXZlbmllIG5pZSBqZSBtb8W+bsOpLCBwcmVydcWhdWplIHNhOlxuIgorIiAlc1xuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MTIwCisjLCBmdXp6eQorI3wgbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBjbGVhbnVwIGVudHJ5IgorbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBlcnJvciBjb250ZXh0IgorbXNnc3RyICJuZWRvc3RhdG9rIHBhbcOkdGUgcHJlIG5vdnUgxI1pc3RpYWN1IHBvbG/Fvmt1IgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MTgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogZXJyb3Igd2hpbGUgY2xlYW5pbmcgdXA6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKyIlczogY2h5YmEgcG/EjWFzIMSNaXN0ZW5pYTpcbiIKKyIgJXNcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjIwMQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZHBrZzogdG9vIG1hbnkgbmVzdGVkIGVycm9ycyBkdXJpbmcgZXJyb3IgcmVjb3ZlcnkgISFcbiIKK21zZ2lkICIlczogdG9vIG1hbnkgbmVzdGVkIGVycm9ycyBkdXJpbmcgZXJyb3IgcmVjb3ZlcnkhIVxuIgorbXNnc3RyICJkcGtnOiBwcsOtbGnFoSB2ZcS+YSB2bm9yZW7DvWNoIGNow71iIHBvxI1hcyBvcHJhdnkgY2h5YnkgISFcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjI2OCBsaWIvZHBrZy9laGFuZGxlLmM6MzA3Cittc2dpZCAib3V0IG9mIG1lbW9yeSBmb3IgbmV3IGNsZWFudXAgZW50cnkiCittc2dzdHIgIm5lZG9zdGF0b2sgcGFtw6R0ZSBwcmUgbm92dSDEjWlzdGlhY3UgcG9sb8W+a3UiCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoyOTEKK21zZ2lkICJvdXQgb2YgbWVtb3J5IGZvciBuZXcgY2xlYW51cCBlbnRyeSB3aXRoIG1hbnkgYXJndW1lbnRzIgorbXNnc3RyICJuZWRvc3RhdG9rIHBhbcOkdGUgcHJlIG5vdsO6IMSNaXN0aWFjdSBwb2xvxb5rdSBzIG1ub8W+c3R2b20gYXJndW1lbnRvdiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjM1MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiJXM6IHdhcm5pbmc6ICVzXG4iCittc2dpZCAiJXM6IGVycm9yOiAlc1xuIgorbXNnc3RyICIlczogdXBvem9ybmVuaWU6ICVzXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzozOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IHdhcm5pbmc6ICVzXG4iCittc2dzdHIgIiVzOiB1cG96b3JuZW5pZTogJXNcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjQxNgorIywgYy1mb3JtYXQKK21zZ2lkICIlczolczolZDogaW50ZXJuYWwgZXJyb3I6ICVzXG4iCittc2dzdHIgIiVzOiVzOiVkOiB2bsO6dG9ybsOhIGNoeWJhOiAlc1xuIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBpcyBtaXNzaW5nIgorbXNnc3RyICIlcyBjaMO9YmEiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJgJS4qcycgaXMgbm90IGFsbG93ZWQgZm9yICVzIgorbXNnaWQgIiclLjUwcycgaXMgbm90IGFsbG93ZWQgZm9yICVzIgorbXNnc3RyICLigJ4lLipz4oCcIG5pZSBqZSBwcsOtcHVzdG7DqSBwcmUgJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjczCisjLCBjLWZvcm1hdAorbXNnaWQgImp1bmsgYWZ0ZXIgJXMiCittc2dzdHIgIm5lem15c2VsbsOpIGTDoXRhIHBvICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo4NworIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHBhY2thZ2UgbmFtZSAoJS4yNTBzKSIKK21zZ3N0ciAiY2h5Ym7DqSBtZW5vIGJhbMOta2EgKCUuMjUwcykiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJlbXB0eSBmaWxlIGRldGFpbHMgZmllbGQgYCVzJyIKK21zZ3N0ciAicHLDoXpkbmUgcG9sZSBzIHBvZHJvYm5vc8WlYW1pIHPDumJvcnUg4oCeJXPigJwiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjEwNQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGRldGFpbHMgZmllbGQgYCVzJyBub3QgYWxsb3dlZCBpbiBzdGF0dXMgZmlsZSIKK21zZ3N0ciAicG9sZSBzIHBvZHJvYm5vc8WlYW1pIHPDumJvcnUg4oCeJXPigJwgbmllIGplIHByw61wdXN0bsOpIHYgc3Rhdm92b20gc8O6Ym9yZSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTE4CisjLCBjLWZvcm1hdAorbXNnaWQgInRvbyBtYW55IHZhbHVlcyBpbiBmaWxlIGRldGFpbHMgZmllbGQgYCVzJyAoY29tcGFyZWQgdG8gb3RoZXJzKSIKK21zZ3N0ciAiIgorInByw61sacWhIHZlxL5hIGhvZG7DtHQgdiBwb2xpIHMgcG9kcm9ibm9zxaVhbWkgc8O6Ym9ydSDigJ4lc+KAnCAodiBwb3Jvdm5hbsOtIHMgIgorIm9zdGF0bsO9bWkpIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAidG9vIGZldyB2YWx1ZXMgaW4gZmlsZSBkZXRhaWxzIGZpZWxkIGAlcycgKGNvbXBhcmVkIHRvIG90aGVycykiCittc2dzdHIgIiIKKyJwcsOtbGnFoSBtw6FsbyBob2Ruw7R0IHYgcG9saSBzIHBvZHJvYm5vc8WlYW1pIHPDumJvcnUg4oCeJXPigJwgKHYgcG9yb3ZuYW7DrSBvc3RhdG7DvW1pKSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTU0Cittc2dpZCAieWVzL25vIGluIGJvb2xlYW4gZmllbGQiCittc2dzdHIgIsOhbm8vbmllIHYgcG9saSB0eXB1IGJvb2xlYW4iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE3NAorbXNnaWQgIndvcmQgaW4gYHByaW9yaXR5JyBmaWVsZCIKK21zZ3N0ciAic2xvdm8gdiBwb2xpIHByaW9yaXR5IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxODYKK21zZ2lkICJ2YWx1ZSBmb3IgYHN0YXR1cycgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICJob2Rub3RhIHByZSBzdGF2b3bDqSBwb2xlIG5pZSBqZSBwcsOtcHVzdG7DoSB2IHRvbXRvIGtvbnRleHRlIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxOTEKK21zZ2lkICJmaXJzdCAod2FudCkgd29yZCBpbiBgc3RhdHVzJyBmaWVsZCIKK21zZ3N0ciAicHJ2w6kgKMW+aWFkYW7DqSkgc2xvdm8gdiBzdGF2b3ZvbSBwb2xpIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxOTQKK21zZ2lkICJzZWNvbmQgKGVycm9yKSB3b3JkIGluIGBzdGF0dXMnIGZpZWxkIgorbXNnc3RyICJkcnVow6kgKGNoeWJvdsOpKSBzbG92byB2IHN0YXZvdm9tIHBvbGkiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE5NworbXNnaWQgInRoaXJkIChzdGF0dXMpIHdvcmQgaW4gYHN0YXR1cycgZmllbGQiCittc2dzdHIgInRyZXRpZSAoc3Rhdm92w6kpIHNsb3ZvIHYgc3Rhdm92b20gcG9saSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjA3CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGluIFZlcnNpb24gc3RyaW5nICclLjI1MHMnIgorbXNnc3RyICJjaHliYSB2IHJlxaVhemNpIFZlcnNpb24g4oCeJS4yNTBz4oCcIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyMTgKK21zZ2lkICJvYnNvbGV0ZSBgUmV2aXNpb24nIG9yIGBQYWNrYWdlLVJldmlzaW9uJyBmaWVsZCB1c2VkIgorbXNnc3RyICJwb3XFvml0aWUgemFzdGFyYWzDqWhvIHBvxL5hIOKAnlJldmlzaW9u4oCcIGFsZWJvIOKAnlBhY2thZ2UtUmV2aXNpb27igJwiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjIzNQorbXNnaWQgInZhbHVlIGZvciBgY29uZmlnLXZlcnNpb24nIGZpZWxkIG5vdCBhbGxvd2VkIGluIHRoaXMgY29udGV4dCIKK21zZ3N0ciAiaG9kbm90YSBwb8S+YSDigJ5jb25maWctdmVyc2lvbuKAnCBuaWUgamUgcHLDrXB1c3Ruw6EgdiB0b210byBrb250ZXh0ZSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjQwCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGluIENvbmZpZy1WZXJzaW9uIHN0cmluZyAnJS4yNTBzJyIKK21zZ3N0ciAiY2h5YmEgdiByZcWlYXpjaSBDb25maWctVmVyc2lvbiDigJ4lLjI1MHPigJwiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjI2NgorIywgYy1mb3JtYXQKK21zZ2lkICJ2YWx1ZSBmb3IgYGNvbmZmaWxlcycgaGFzIG1hbGZvcm1hdHRlZCBsaW5lIGAlLipzJyIKK21zZ3N0ciAiaG9kbm90YSBwcmUg4oCeY29uZmZpbGVz4oCcIG3DoSByaWFkb2sg4oCeJS4qc+KAnCB2IGNoeWJub20gdHZhcmUiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjI4NworIywgYy1mb3JtYXQKK21zZ2lkICJ2YWx1ZSBmb3IgYGNvbmZmaWxlcycgaGFzIGxpbmUgc3RhcnRpbmcgd2l0aCBub24tc3BhY2UgYCVjJyIKK21zZ3N0ciAiaG9kbm90YSBwcmUg4oCeY29uZmZpbGVz4oCcIG5lbcOhIHJpYWRvayB6YcSNw61uYWrDumNpIG1lZHplcm91IOKAniVj4oCcIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzozMDQKK21zZ2lkICJyb290IG9yIG51bGwgZGlyZWN0b3J5IGlzIGxpc3RlZCBhcyBhIGNvbmZmaWxlIgorbXNnc3RyICJrb3JlxYhvdsO9IGFsZWJvIG5ldXZlZGVuw70gYWRyZXPDoXIgdXZlZGVuw70gYWtvIGNvbmZmaWxlIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzozNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIG1pc3NpbmcgcGFja2FnZSBuYW1lLCBvciBnYXJiYWdlIHdoZXJlIHBhY2thZ2UgbmFtZSBleHBlY3RlZCIKK21zZ3N0ciAidiBwb2xpIOKAniVz4oCcIGNow71iYSBtZW5vIGJhbMOta2EgYWxlYm8gb2JzYWh1amUgbmV6bXlzbHkgbmFtaWVzdG8gbsOhenZ1IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzozNzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBmaWVsZCwgaW52YWxpZCBwYWNrYWdlIG5hbWUgYCUuMjU1cyc6ICVzIgorbXNnc3RyICJwb2xlIOKAniVz4oCcIG9ic2FodWplIG5lcGxhdG7DqSBtZW5vIGJhbMOta2Eg4oCeJS4yNTVz4oCcOiAlcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDA2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6XG4iCisiIGJhZCB2ZXJzaW9uIHJlbGF0aW9uc2hpcCAlYyVjIgorbXNnc3RyICIiCisi4oCecG9sZSAlc+KAnCBvZGthenVqw7pjZSBuYSDigJ4lLjI1NXPigJw6XG4iCisiIHpsw70gdnrFpWFoIHZlcnppZSAlYyVjIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgYCVjJyBpcyBvYnNvbGV0ZSwgdXNlIGAlYz0nIG9yIGAlYyVjJyBpbnN0ZWFkIgorbXNnc3RyICIiCisicG9sZSDigJ4lc+KAnCBvZGthenVqw7pjZSBuYSDigJ4lLjI1NXPigJw6XG4iCisiIOKAniVj4oCcIGplIHphc3RhcmFsw6ksIHBvdcW+aXTDqSDigJ4lYz3igJwgYWxlYm8g4oCeJWMlY+KAnCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDIyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6XG4iCisiIGltcGxpY2l0IGV4YWN0IG1hdGNoIG9uIHZlcnNpb24gbnVtYmVyLCBzdWdnZXN0IHVzaW5nIGA9JyBpbnN0ZWFkIgorbXNnc3RyICIiCisicG9sZSDigJ4lc+KAnCBvZGthenVqw7pjZSBuYSDigJ4lLjI1NXPigJw6XG4iCisiIGltcGxpY2l0bsOhIHByaWFtYSB6aG9kYSDEjcOtc2xhIHZlcnppZSwgbsOhdnJoOiBwb3XFvml0ZSBuYW1pZXN0byB0b2hvIOKAnj3igJwiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQzMAorbXNnaWQgIk9ubHkgZXhhY3QgdmVyc2lvbnMgbWF5IGJlIHVzZWQgZm9yIFByb3ZpZGVzIgorbXNnc3RyICJWIHBvbGkgUHJvdmlkZXMgamUgbW/Fvm7DqSBwb3XFvmnFpSBsZW4gcHJlc27DqSB1csSNZW5pZSB2ZXJ6aWUiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQzNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOlxuIgorIiB2ZXJzaW9uIHZhbHVlIHN0YXJ0cyB3aXRoIG5vbi1hbHBoYW51bWVyaWMsIHN1Z2dlc3QgYWRkaW5nIGEgc3BhY2UiCittc2dzdHIgIiIKKyLigJ5wb2xlICVz4oCcIG9ka2F6dWrDumNlIG5hIOKAniUuMjU1c+KAnDpcbiIKKyIgxI3DrXNsbyB2ZXJ6aWUgbmV6YcSNw61uYSBhbGZhbnVtZXJpY2vDvW0gem5ha29tLiBOw6F2cmg6IHByaWRhanRlIG1lZHplcnUiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ1MSBsaWIvZHBrZy9maWVsZHMuYzo0NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOiB2ZXJzaW9uIGNvbnRhaW5zIGAlYyciCittc2dzdHIgInBvbGUg4oCeJXPigJwgb2RrYXp1asO6Y2UgbmEg4oCeJS4yNTVz4oCcOiB2ZXJ6aWEgb2JzYWh1amUg4oCeJWPigJwiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ1OQorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6IHZlcnNpb24gdW50ZXJtaW5hdGVkIgorbXNnc3RyICJwb2xlIOKAniVz4oCcIG9ka2F6dWrDumNlIG5hIOKAniUuMjU1c+KAnDogdmVyemlhIG5ldWtvbsSNZW7DoSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDY1CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgZmllbGQsIHJlZmVyZW5jZSB0byAnJS4yNTVzJzogZXJyb3IgaW4gdmVyc2lvbiIKK21zZ3N0ciAicG9sZSDigJ4lc+KAnCBvZGthenVqw7pjZSBuYSDigJ4lLjI1NXPigJw6IGNoeWJhIHZvIHZlcnppaSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDc1CisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgZmllbGQsIHN5bnRheCBlcnJvciBhZnRlciByZWZlcmVuY2UgdG8gcGFja2FnZSBgJS4yNTVzJyIKK21zZ3N0ciAic3ludGFrdGlja8OhIGNoeWJhIHYgcG9saSDigJ4lc+KAnCBwbyBvZGthemUgbmEgYmFsw61rIOKAniUuMjU1c+KAnCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDgyCisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlcyAoYHwnKSBub3QgYWxsb3dlZCBpbiAlcyBmaWVsZCIKK21zZ3N0ciAiYWx0ZXJuYXTDrXZhICjigJ584oCcKSBuaWUgamUgcHLDrXB1c3Ruw6EgdiBwb2xpICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1MzYKK21zZ2lkICJ2YWx1ZSBmb3IgYHRyaWdnZXJzLXBlbmRpbmcnIGZpZWxkIG5vdCBhbGxvd2VkIGluIHRoaXMgY29udGV4dCIKK21zZ3N0ciAiaG9kbm90YSBwcmUgcG9sZSDigJ50cmlnZ2Vycy1wZW5kaW5n4oCcIG5pZSBqZSBwcsOtcHVzdG7DoSB2IHRvbXRvIGtvbnRleHRlIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWxsZWdhbCBwZW5kaW5nIHRyaWdnZXIgbmFtZSBgJS4yNTVzJzogJXMiCittc2dzdHIgIm5lcGxhdG7DvSBuw6F6b3YgxI1ha2Fqw7pjZWhvIHNww7rFocWlYcSNYSAodHJpZ2dlcnMtcGVuZGluZykg4oCeJS4yNTVz4oCcOiAlcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTQ3CisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBwZW5kaW5nIHRyaWdnZXIgYCUuMjU1cyciCittc2dzdHIgImR1cGxpY2l0bsO9IMSNYWthasO6Y2kgc3DDusWhxaVhxI0gKHRyaWdnZXJzLXBlbmRpbmcpIOKAniUuMjU1c+KAnCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTYxCittc2dpZCAidmFsdWUgZm9yIGB0cmlnZ2Vycy1hd2FpdGVkJyBmaWVsZCBub3QgYWxsb3dlZCBpbiB0aGlzIGNvbnRleHQiCittc2dzdHIgImhvZG5vdGEgcHJlIHBvbGUg4oCedHJpZ2dlcnMtYXdhaXRlZOKAnCBuaWUgamUgcHLDrXB1c3Ruw6EgdiB0b210byBrb250ZXh0ZSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTY4CisjLCBjLWZvcm1hdAorbXNnaWQgImlsbGVnYWwgcGFja2FnZSBuYW1lIGluIGF3YWl0ZWQgdHJpZ2dlciBgJS4yNTVzJzogJXMiCittc2dzdHIgIm5lcG92b2xlbsO9IG7DoXpvdiBiYWzDrWthIHYgb8SNYWvDoXZhbm9tIHNww7rFocWlYcSNaSDigJ4lLjI1NXPigJw6ICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIGF3YWl0ZWQgdHJpZ2dlciBwYWNrYWdlIGAlLjI1NXMnIgorbXNnc3RyICIiCisiZHVwbGljaXRuw70gbsOhem92IGJhbMOta2EgdiBvxI1ha8OhdmFub20gc3DDusWhxaVhxI1pICh0cmlnZ2Vycy1hd2FpdGVkKSDigJ4lLjI1NXPigJwiCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzo1MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBzb3VyY2UgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAibmllIGplIG1vxb5uw6kgdnlrb25hxaUgc3RhdCgpIHpkcm9qb3bDqWhvIHPDumJvcnUg4oCeJS4yNTBz4oCcIgorCisjOiBsaWIvZHBrZy9maWxlLmM6NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoYW5nZSBvd25lcnNoaXAgb2YgdGFyZ2V0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgIm5pZSBqZSBtb8W+bsOpIHptZW5pxaUgdmxhc3Ruw61jdHZvIGNpZcS+b3bDqWhvIHPDumJvcnUg4oCeJS4yNTBz4oCcIgorCisjOiBsaWIvZHBrZy9maWxlLmM6NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNldCBtb2RlIG9mIHRhcmdldCBmaWxlICclLjI1MHMnIgorbXNnc3RyICJuaWUgamUgbW/Fvm7DqSBuYXN0YXZpxaUgcmXFvmltIG5vdsOpaG8gY2llxL5vdsOpaG8gc8O6Ym9ydSDigJ4lLjI1MHPigJwiCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzo4NQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIGNsb3NlICVzOiAlcyIKK21zZ2lkICJ1bmFibGUgdG8gdW5sb2NrICVzIgorbXNnc3RyICJuZWTDoSBzYSB6YXR2b3JpxaUgJXM6ICVzIgorCisjOiBsaWIvZHBrZy9maWxlLmM6MTExCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGVjayBmaWxlICclcycgbG9jayBzdGF0dXMiCittc2dzdHIgIm5pZSBqZSBtb8W+bsOpIHNrb250cm9sb3ZhxaUgc3RhdiB6YW1rbnV0aWEgc8O6Ym9ydSDigJ4lc+KAnCIKKworIzogbGliL2Rwa2cvZmlsZS5jOjE0NgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic3RhdHVzIGRhdGFiYXNlIGFyZWEgaXMgbG9ja2VkIGJ5IGFub3RoZXIgcHJvY2VzcyIKK21zZ2lkICIlcyBpcyBsb2NrZWQgYnkgYW5vdGhlciBwcm9jZXNzIgorbXNnc3RyICJwcmllc3RvciBzdGF2b3ZlaiBkYXRhYsOhenkgamUgdXphbWtudXTDvSAtIGJlxb7DrSBpbsO9IHByb2NlcyBkcGtnL2RzZWxlY3QiCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzoxNDgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byBjbG9zZSAlczogJXMiCittc2dpZCAidW5hYmxlIHRvIGxvY2sgJXMiCittc2dzdHIgIm5lZMOhIHNhIHphdHZvcmnFpSAlczogJXMiCisKKyM6IGxpYi9kcGtnL2xvZy5jOjUzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkbid0IG9wZW4gbG9nIGAlcyc6ICVzXG4iCittc2dzdHIgIm5lYm9sbyBtb8W+bsOpIG90dm9yacWlIGxhZGlhY2kgc8O6Ym9yIOKAniVz4oCcOiAlc1xuIgorCisjOiBsaWIvZHBrZy9sb2cuYzo4NQorbXNnaWQgIjxwYWNrYWdlIHN0YXR1cyBhbmQgcHJvZ3Jlc3MgZmlsZSBkZXNjcmlwdG9yPiIKK21zZ3N0ciAiPHN0YXYgYmFsw61rYSBhIHBvcGlzb3ZhxI0gc8O6Ym9ydSBwcmllYmVodT4iCisKKyM6IGxpYi9kcGtnL2xvZy5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgdG8gc3RhdHVzIGZkICVkIgorbXNnc3RyICJuaWUgamUgbW/Fvm7DqSB6YXDDrXNhxaUgZG8gcG9waXNvdmHEjWEgc3RhdnUgZmQgJWQiCisKKyM6IGxpYi9kcGtnL21saWIuYzo0NCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJtYWxsb2MgZmFpbGVkICglbGQgYnl0ZXMpIgorbXNnaWQgIm1hbGxvYyBmYWlsZWQgKCV6dSBieXRlcykiCittc2dzdHIgImZ1bmtjaWEgbWFsbG9jIHpseWhhbGEgKCVsZCBieXRvdikiCisKKyM6IGxpYi9kcGtnL21saWIuYzo1OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAicmVhbGxvYyBmYWlsZWQgKCVsZCBieXRlcykiCittc2dpZCAicmVhbGxvYyBmYWlsZWQgKCV6dSBieXRlcykiCittc2dzdHIgImZ1bmtjaWEgcmVhbGxvYyB6bHloYWxhICglbGQgYnl0b3YpIgorCisjOiBsaWIvZHBrZy9tbGliLmM6NzIgbGliL2Rwa2cvbWxpYi5jOjkwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNzcKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzozMzQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMDcKK21zZ2lkICJmYWlsZWQgdG8gYWxsb2NhdGUgbWVtb3J5IgorbXNnc3RyICJuZXBvZGFyaWxvIHNhIGFsb2tvdmHFpSBwYW3DpMWlIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBkdXAgZm9yIHN0ZCVzIgorbXNnc3RyICJ6bHloYWxvIHZ5a29uYW5pZSBmdW5rY2llIGR1cCBwcmUgc3RkJXMiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGR1cCBmb3IgZmQgJWQiCittc2dzdHIgInpseWhhbG8gdnlrb25hbmllIGZ1bmtjaWUgZHVwIHByZSBmZCAlZCIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEwOQorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgcGlwZSIKK21zZ3N0ciAiY2h5YmEgcHJpIHZ5dHbDoXJhbsOtIHLDunJ5IgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTE3CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHdyaXRpbmcgdG8gJyVzJyIKK21zZ3N0ciAiY2h5YmEgcHJpIHrDoXBpc2Ug4oCeJXPigJwiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgZmlsZWRlc2NyaXB0b3IgZmxhZ3MgZm9yICUuMjUwcyIKK21zZ3N0ciAibmllIGplIG1vxb5uw6kgxI3DrXRhxaUgcHLDrXpuYWt5IHBvcGlzb3ZhxI1hIHPDumJvcnUg4oCeJS4yNTBz4oCcIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTI2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgY2xvc2Utb24tZXhlYyBmbGFnIGZvciAlLjI1MHMiCittc2dzdHIgIm5pZSBqZSBtb8W+bsOpIG5hc3RhdmnFpSBwcsOtem5hayBjbG9zZS1vbi1leGVjIG5hIOKAniUuMjUwc+KAnCIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjYzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZpZ3VyYXRpb24gZXJyb3I6ICVzOiVkOiAlcyIKK21zZ3N0ciAia29uZmlndXJhxI1uw6EgY2h5YmE6ICVzOiVkOiAlcyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjc1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuIGNvbmZpZ3VyYXRpb24gZmlsZSAnJS4yNTVzJyBmb3IgcmVhZGluZzogJXMiCittc2dzdHIgInpseWhhbG8gb3R2b3JlbmllIGtvbmZpZ3VyYcSNbsOpaG8gc8O6Ym9ydSDigJ4lLjI1NXPigJwgbmEgxI3DrXRhbmllOiAlcyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmJhbGFuY2VkIHF1b3RlcyBpbiAnJXMnIgorbXNnc3RyICJuZXNww6Fyb3ZhbsOpIMO6dm9kem92a3kg4oCeJXPigJwiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gJyVzJyIKK21zZ3N0ciAibmV6bsOhbWEgdm/EvmJhIOKAniVz4oCcIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTIxCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgbmVlZHMgYSB2YWx1ZSIKK21zZ3N0ciAi4oCeJXPigJwgdnnFvmFkdWplIHV2ZWRlbmllIGhvZG5vdHkiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBkb2VzIG5vdCB0YWtlIGEgdmFsdWUiCittc2dzdHIgIuKAniVz4oCcIG5lYmVyaWUgaG9kbm90dSIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjEzMworIywgYy1mb3JtYXQKK21zZ2lkICJyZWFkIGVycm9yIGluIGNvbmZpZ3VyYXRpb24gZmlsZSBgJS4yNTVzJyIKK21zZ3N0ciAiY2h5YmEgcHJpIMSNw610YW7DrSB2IGtvbmZpZ3VyYcSNbm9tIHPDumJvcmUg4oCeJS4yNTVz4oCcIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgY29uZmlndXJhdGlvbiBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICJjaHliYSBwcmkgdXphdHbDoXJhbsOtIGtvbmZpZ3VyYcSNbsOpaG8gc8O6Ym9ydSDigJ4lLjI1NXPigJwiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxNzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igb3BlbmluZyBjb25maWd1cmF0aW9uIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICJjaHliYSBwcmkgb3R2w6FyYW7DrSBrb25maWd1cmHEjW7DqWhvIHPDumJvcnUg4oCeJXPigJwiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gLS0lcyIKK21zZ3N0ciAibmV6bsOhbWEgdm/EvmJhIC0tJXMiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBvcHRpb24gdGFrZXMgYSB2YWx1ZSIKK21zZ3N0ciAidm/EvmJhIC0tJXMgbcOhIHByaXJhZGVuw7ogaG9kbm90dSIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjIzNworIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG9wdGlvbiBkb2VzIG5vdCB0YWtlIGEgdmFsdWUiCittc2dzdHIgInZvxL5iYSAtLSVzIG5lbcOhIHByaXJhZGVuw7ogaG9kbm90dSIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI0NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiAtJWMiCittc2dzdHIgIm5lem7DoW1hIHZvxL5iYSAtJWMiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLSVjIG9wdGlvbiB0YWtlcyBhIHZhbHVlIgorbXNnc3RyICJ2b8S+YmEgLSVjIG3DoSBwcmlyYWRlbsO6IGhvZG5vdHUiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiLSVjIG9wdGlvbiBkb2VzIG5vdCB0YWtlIGEgdmFsdWUiCittc2dzdHIgInZvxL5iYSAtJWMgbmVtw6EgcHJpcmFkZW7DuiBob2Rub3R1IgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjcxCisjLCBjLWZvcm1hdAorbXNnaWQgIm9ic29sZXRlIG9wdGlvbiAnLS0lcydcbiIKK21zZ3N0ciAiemFzdGFyYWzDoSB2b8S+YmEg4oCeLS0lc+KAnFxuIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6Mjg3CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZsaWN0aW5nIGFjdGlvbnMgLSVjICgtLSVzKSBhbmQgLSVjICgtLSVzKSIKK21zZ3N0ciAib2Rwb3J1asO6Y2Ugc2kgb3BlcsOhY2llIC0lYyAoLS0lcykgYSAtJWMgKC0tJXMpIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgdmFsdWUgZm9yIGAlcycgZmllbGQiCittc2dzdHIgImR1cGxpY2l0bsOhIGhvZG5vdGEgcG/EvmEg4oCeJXPigJwiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MTQ2CisjLCBjLWZvcm1hdAorbXNnaWQgInVzZXItZGVmaW5lZCBmaWVsZCBuYW1lIGAlLipzJyB0b28gc2hvcnQiCittc2dzdHIgInBvdcW+w612YXRlxL5vbSBkZWZpbm92YW7DqSBtZW5vIHBvxL5hIOKAniUuKnPigJwgamUgcHLDrWxpxaEga3LDoXRrZSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoxNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHZhbHVlIGZvciB1c2VyLWRlZmluZWQgZmllbGQgYCUuKnMnIgorbXNnc3RyICJkdXBsaWNpdG7DoSBob2Rub3RhIHBvdcW+w612YXRlxL5vbSBkZWZpbm92YW7DqWhvIHBvxL5hIOKAniUuKnPigJwiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjA3Cittc2dpZCAiQ29uZmlndXJlZC1WZXJzaW9uIGZvciBwYWNrYWdlIHdpdGggaW5hcHByb3ByaWF0ZSBTdGF0dXMiCittc2dzdHIgIkNvbmZpZ3VyZWQtVmVyc2lvbiBwcmUgYmFsw61rIHMgbmV6b2Rwb3ZlZGFqw7pjaW0gU3Rhdm9tIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjIxOAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGhhcyBzdGF0dXMgJXMgYnV0IHRyaWdnZXJzIGFyZSBhd2FpdGVkIgorbXNnc3RyICJiYWzDrWsgamUgdiBzdGF2ZSAlcywgYWxlIG/EjWFrw6F2YWrDuiBzYSBzcMO6xaHFpWHEjWUgKHRyaWdnZXJzLWF3YWl0ZWQpIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjIyMgorbXNnaWQgInBhY2thZ2UgaGFzIHN0YXR1cyB0cmlnZ2Vycy1hd2FpdGVkIGJ1dCBubyB0cmlnZ2VycyBhd2FpdGVkIgorbXNnc3RyICIiCisiYmFsw61rIGplIHYgc3RhdmUgb8SNYWvDoXZhasO6IHNhIHNww7rFocWlYcSNZSAodHJpZ2dlcnMtYXdhaXRlZCksIGFsZSBuZW/EjWFrw6F2YWrDuiAiCisic2Egxb5pYWRuZSBzcMO6xaHFpWHEjWUiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjI4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgaGFzIHN0YXR1cyAlcyBidXQgdHJpZ2dlcnMgYXJlIHBlbmRpbmciCittc2dzdHIgImJhbMOtayBqZSB2IHN0YXZlICVzLCBhbGUgb8SNYWvDoXZhasO6IHNhIHNww7rFocWlYcSNZSAodHJpZ2dlcnMtcGVuZGluZykiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjMyCittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzIHRyaWdnZXJzLXBlbmRpbmcgYnV0IG5vIHRyaWdnZXJzIHBlbmRpbmciCittc2dzdHIgIiIKKyJiYWzDrWsgamUgdiBzdGF2ZSBvxI1ha8OhdmFqw7otc2Etc3DDusWhxaVhxI1lICh0cmlnZ2Vycy1wZW5kaW5nKSwgYWxlIG5lb8SNYWvDoXZhasO6ICIKKyJzYSDFvmlhZG5lIHNww7rFocWlYcSNZSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyNDIKK21zZ2lkICJQYWNrYWdlIHdoaWNoIGluIHN0YXRlIG5vdC1pbnN0YWxsZWQgaGFzIGNvbmZmaWxlcywgZm9yZ2V0dGluZyB0aGVtIgorbXNnc3RyICIiCisiQmFsw63EjWVrLCBrdG9yw70gamUgdiBzdGF2ZSBuZW5haW7FoXRhbG92YW7DvSBtw6Ega29uZmlndXJhxI1uw6kgc8O6Ym9yeSwgemFoYWR6dWrDuiAiCisic2EiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzM1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuIHBhY2thZ2UgaW5mbyBmaWxlIGAlLjI1NXMnIGZvciByZWFkaW5nIgorbXNnc3RyICJ6bHloYWxvIG90dsOhcmFuaWUgaW5mbyBzw7pib3J1IGJhbMOta2Eg4oCeJS4yNTVz4oCcIG5hIMSNw610YW5pZSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozNDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2FuJ3Qgc3RhdCBwYWNrYWdlIGluZm8gZmlsZSBgJS4yNTVzJyIKK21zZ3N0ciAibmllIGplIG1vxb5uw6kgemlzdGnFpSBzdGF2IHPDumJvcnUgcyBpbmZvcm3DoWNpYW1pIG8gYmFsw61rdSDigJ4lLjI1NXPigJwiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzQ3CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbid0IG1tYXAgcGFja2FnZSBpbmZvIGZpbGUgYCUuMjU1cyciCittc2dzdHIgIm5pZSBqZSBtb8W+bsOpIHZ5a29uYcWlIGZ1bmtjaXUgbW1hcCBuYSBpbmZvIHPDumJvciBiYWzDrWthIOKAniUuMjU1c+KAnCIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozNTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImNhbid0IHN0YXQgcGFja2FnZSBpbmZvIGZpbGUgYCUuMjU1cyciCittc2dpZCAicmVhZGluZyBwYWNrYWdlIGluZm8gZmlsZSAnJS4yNTVzJyIKK21zZ3N0ciAibmllIGplIG1vxb5uw6kgemlzdGnFpSBzdGF2IHPDumJvcnUgcyBpbmZvcm3DoWNpYW1pIG8gYmFsw61rdSDigJ4lLjI1NXPigJwiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzYzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjbG9zZSBhZnRlciByZWFkOiBgJS4yNTVzJyIKK21zZ3N0ciAiemx5aGFsbyB1emF2cmV0aWUgcG8gbmHEjcOtdGFuw606IOKAniUuMjU1c+KAnCIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiRU9GIGFmdGVyIGZpZWxkIG5hbWUgYCUuKnMnIgorbXNnc3RyICJrb25pZWMgc8O6Ym9ydSB6YSBwb8S+b20g4oCeJS4qc+KAnCIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MDcKKyMsIGMtZm9ybWF0Cittc2dpZCAibmV3bGluZSBpbiBmaWVsZCBuYW1lIGAlLipzJyIKK21zZ3N0ciAibm92w70gcmlhZG9rIHYgcG9saSDigJ4lLipz4oCcIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQxMAorIywgYy1mb3JtYXQKK21zZ2lkICJNU0RPUyBFT0YgKF5aKSBpbiBmaWVsZCBuYW1lIGAlLipzJyIKK21zZ3N0ciAiTVNET1MgRU9GICheWikgdiBuw6F6dmUgcG/EvmEg4oCeJS4qc+KAnCIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmllbGQgbmFtZSBgJS4qcycgbXVzdCBiZSBmb2xsb3dlZCBieSBjb2xvbiIKK21zZ3N0ciAiemEgcG/Evm9tIOKAniUuKnPigJwgbXVzw60gbmFzbGVkb3ZhxaUgZHZvamJvZGthIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQyNQorIywgYy1mb3JtYXQKK21zZ2lkICJFT0YgYmVmb3JlIHZhbHVlIG9mIGZpZWxkIGAlLipzJyAobWlzc2luZyBmaW5hbCBuZXdsaW5lKSIKK21zZ3N0ciAiRU9GIHByZWQgaG9kbm90b3UgcG/EvmEg4oCeJS4qc+KAnCAoY2jDvWJhasO6Y2kgesOhdmVyZcSNbsO9IG5vdsO9IHJpYWRvaykiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDI5CisjLCBjLWZvcm1hdAorbXNnaWQgIk1TRE9TIEVPRiBjaGFyIGluIHZhbHVlIG9mIGZpZWxkIGAlLipzJyAobWlzc2luZyBuZXdsaW5lPykiCittc2dzdHIgInpuYWsgTVNET1MgRU9GIHYgaG9kbm90ZSBwb8S+YSDigJ4lLipz4oCcIChjaMO9YmFqw7pjaSBub3bDvSByaWFkb2s/KSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0NDAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIm5ld2xpbmUgaW4gZmllbGQgbmFtZSBgJS4qcyciCittc2dpZCAiYmxhbmsgbGluZSBpbiB2YWx1ZSBvZiBmaWVsZCAnJS4qcyciCittc2dzdHIgIm5vdsO9IHJpYWRvayB2IHBvbGkg4oCeJS4qc+KAnCIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiRU9GIGR1cmluZyB2YWx1ZSBvZiBmaWVsZCBgJS4qcycgKG1pc3NpbmcgZmluYWwgbmV3bGluZSkiCittc2dzdHIgIiIKKyJFT0YgcG/EjWFzIG5hxI3DrXRhbmlhIGhvZG5vdHkgcG/EvmEg4oCeJS4qc+KAnCAoY2jDvWJhasO6Y2kgesOhdmVyZcSNbsO9IG5vdsO9IHJpYWRvaykiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NTQ2Cittc2dpZCAic2V2ZXJhbCBwYWNrYWdlIGluZm8gZW50cmllcyBmb3VuZCwgb25seSBvbmUgYWxsb3dlZCIKK21zZ3N0ciAiYm9sbyB6aXN0ZW7DvWNoIG5pZWtvxL5rbyBpbmZvIHBvbG/FvmllayBiYWzDrWthLCBwcsOtcHVzdG7DoSBqZSBpYmEgamVkbmEiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NTcyCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHBhY2thZ2UgaW5mb3JtYXRpb24gaW4gYCUuMjU1cyciCittc2dzdHIgIsW+aWFkbmUgaW5mb3Jtw6FjaWUgbyBiYWzDrWt1IHYg4oCeJS4yNTVz4oCcIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzo0NQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiVzLCBpbiBmaWxlICclLjI1NXMnIG5lYXIgbGluZSAlZCBwYWNrYWdlICclLjI1NXMnOlxuIgorI3wgIiAiCittc2dpZCAiIgorInBhcnNpbmcgZmlsZSAnJS4yNTVzJyBuZWFyIGxpbmUgJWQgcGFja2FnZSAnJS4yNTVzJzpcbiIKKyIgJS4yNTVzIgorbXNnc3RyICIiCisiJXMsIHYgc8O6Ym9yZSDigJ4lLjI1NXPigJwgbmXEj2FsZWtvIHJpYWRrYSAlZCBiYWzDrWsg4oCeJS4yNTVz4oCcOlxuIgorIiAiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjQ4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiJXMsIGluIGZpbGUgJyUuMjU1cycgbmVhciBsaW5lICVkOlxuIgorI3wgIiAiCittc2dpZCAiIgorInBhcnNpbmcgZmlsZSAnJS4yNTVzJyBuZWFyIGxpbmUgJWQ6XG4iCisiICUuMjU1cyIKK21zZ3N0ciAiIgorIiVzLCB2IHPDumJvcmUg4oCeJS4yNTVz4oCcIG5lxI9hbGVrbyByaWFka2EgJWQ6XG4iCisiICIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MTI1Cittc2dpZCAibWF5IG5vdCBiZSBlbXB0eSBzdHJpbmciCittc2dzdHIgIm5lc21pZSBiecWlIHByw6F6ZG55IHJlxaVhemVjIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoxMjcKKyMsIGZ1enp5CisjfCBtc2dpZCAibXVzdCBzdGFydCB3aXRoIGFuIGFscGhhbnVtZXJpYyIKK21zZ2lkICJtdXN0IHN0YXJ0IHdpdGggYW4gYWxwaGFudW1lcmljIGNoYXJhY3RlciIKK21zZ3N0ciAibXVzw60gemHEjWHFpSBhbGZhbnVtZXJpY2vDvW0gem5ha29tIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoxMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2hhcmFjdGVyIGAlYycgbm90IGFsbG93ZWQgKG9ubHkgbGV0dGVycywgZGlnaXRzIGFuZCBjaGFyYWN0ZXJzIGAlcycpIgorbXNnc3RyICIiCisiem5hayDigJ4lY+KAnCBuaWUgamUgcHLDrXB1c3Ruw70gKHByw61wdXN0bsOpIHPDuiBsZW4gcMOtc21lbsOhLCDEjcOtc2xhIGEgem5ha3kg4oCeJXPigJwpIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoxNzgKKyMsIGZ1enp5CisjfCBtc2dpZCAiPG5vbmU+IgorbXNnY3R4dCAidmVyc2lvbiIKK21zZ2lkICI8bm9uZT4iCittc2dzdHIgIjzFvmlhZG5hPiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjA5Cittc2dpZCAidmVyc2lvbiBzdHJpbmcgaXMgZW1wdHkiCittc2dzdHIgInByw6F6ZG55IHJlxaVhemVjIHZlcnppZSIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjI0Cittc2dpZCAidmVyc2lvbiBzdHJpbmcgaGFzIGVtYmVkZGVkIHNwYWNlcyIKK21zZ3N0ciAicmXFpWF6ZWMgdmVyemllIG9ic2FodWplIHZsb8W+ZW7DqSBtZWR6ZXJ5IgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyMzAKK21zZ2lkICJlcG9jaCBpbiB2ZXJzaW9uIGlzIG5vdCBudW1iZXIiCittc2dzdHIgImVwb2NoYSB2byB2ZXJ6aWkgbmllIGplIMSNw61zbG8iCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjIzMgorbXNnaWQgIm5vdGhpbmcgYWZ0ZXIgY29sb24gaW4gdmVyc2lvbiBudW1iZXIiCittc2dzdHIgInphIGR2b2pib2Rrb3UgdiDEjcOtc2xlIHZlcnppZSBuacSNIG5lbmFzbGVkdWplIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyNDcKK21zZ2lkICJ2ZXJzaW9uIG51bWJlciBkb2VzIG5vdCBzdGFydCB3aXRoIGRpZ2l0IgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjI1MAorbXNnaWQgImludmFsaWQgY2hhcmFjdGVyIGluIHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICJuZXBsYXRuw70gem5hayB2IMSNw61zbGUgdmVyemllIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyNTQKK21zZ2lkICJpbnZhbGlkIGNoYXJhY3RlciBpbiByZXZpc2lvbiBudW1iZXIiCittc2dzdHIgIm5lcGxhdG7DvSB6bmFrIHYgxI3DrXNsZSByZXbDrXppZSIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6Mjk5IGxpYi9kcGtnL3BhcnNlaGVscC5jOjMxMQorIywgYy1mb3JtYXQKK21zZ2lkICJtaXNzaW5nICVzIgorbXNnc3RyICJjaMO9YmEgJXMiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjMwMSBsaWIvZHBrZy9wYXJzZWhlbHAuYzozMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZW1wdHkgdmFsdWUgZm9yICVzIgorbXNnc3RyICJwcsOhemRuYSBob2Rub3RhICVzIgorCisjOiBsaWIvZHBrZy9wa2ctZm9ybWF0LmM6ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgYCVjJyBpbiBmaWVsZCB3aWR0aFxuIgorbXNnc3RyICJuZXNwcsOhdm55IHpuYWsg4oCeJWPigJwgdiDFocOtcmtlIHBvxL5hXG4iCisKKyM6IGxpYi9kcGtnL3BrZy1mb3JtYXQuYzoxNzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2xvc2luZyBicmFjZSBtaXNzaW5nIGluIGZvcm1hdFxuIgorbXNnc3RyICJVemF0dsOhcmFjaWEgesOhdHZvcmthIGNow71iYSB2byBmb3Jtw6F0ZVxuIgorCisjOiBsaWIvZHBrZy9wa2ctc2hvdy5jOjQwCittc2dpZCAiKG5vIGRlc2NyaXB0aW9uIGF2YWlsYWJsZSkiCittc2dzdHIgIihwb3BpcyBuaWUgamUgayBkaXNwb3rDrWNpaSkiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzo1NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaWdub3JlIHNpZ25hbCAlcyBiZWZvcmUgcnVubmluZyAlLjI1MHMiCittc2dzdHIgIm5pZSBqZSBtb8W+bsOpIGlnbm9yb3ZhxaUgc2lnbsOhbCAlcyBwcmVkIHNwdXN0ZW7DrW0gJS4yNTBzIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgdW4tY2F0Y2hpbmcgc2lnbmFsICVzOiAlc1xuIgorbXNnc3RyICJjaHliYSBwcmkgb2RibG9rb3ZhbsOtIHNpZ27DoWx1ICVzOiAlc1xuIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgKHN1YnByb2Nlc3MpOiAlc1xuIgorbXNnc3RyICIlcyAocG9kcHJvY2VzKTogJXNcbiIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjg5IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo0NTQKK21zZ2lkICJmb3JrIGZhaWxlZCIKK21zZ3N0ciAiZnVua2NpYSBmb3JrIHpseWhhbGEiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMTkKKyMsIGMtZm9ybWF0Cittc2dpZCAic3VicHJvY2VzcyAlcyByZXR1cm5lZCBlcnJvciBleGl0IHN0YXR1cyAlZCIKK21zZ3N0ciAicG9kcHJvY2VzICVzIHZyw6F0aWwgY2h5Ym92w70ga8OzZCAlZCIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEyOAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAid2FpdCBmb3Igc3VicHJvY2VzcyAlcyBmYWlsZWQiCittc2dpZCAic3VicHJvY2VzcyAlcyB3YXMgaW50ZXJydXB0ZWQiCittc2dzdHIgIsSNYWthbmllIG5hIHBvZHByb2NlcyAlcyB6bHloYWxvIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTMwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJzdWJwcm9jZXNzICVzIGtpbGxlZCBieSBzaWduYWwgKCVzKSVzIgorbXNnaWQgInN1YnByb2Nlc3MgJXMgd2FzIGtpbGxlZCBieSBzaWduYWwgKCVzKSVzIgorbXNnc3RyICJwb2Rwcm9jZXMgJXMgdWtvbsSNZW7DvSBzaWduw6Fsb20gKCVzKSVzIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTMyCittc2dpZCAiLCBjb3JlIGR1bXBlZCIKK21zZ3N0ciAiLCBib2wgdWxvxb5lbsO9IHbDvXBpcyBwYW3DpHRlIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgInN1YnByb2Nlc3MgJXMgZmFpbGVkIHdpdGggd2FpdCBzdGF0dXMgY29kZSAlZCIKK21zZ3N0ciAicG9kcHJvY2VzICVzIHpseWhhbCBzIMSNYWthY8OtbSBzdGF2b3bDvW0ga8OzZG9tICVkIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTUxIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo0NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAid2FpdCBmb3Igc3VicHJvY2VzcyAlcyBmYWlsZWQiCittc2dzdHIgIsSNYWthbmllIG5hIHBvZHByb2NlcyAlcyB6bHloYWxvIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDo3MgorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHBhY2thZ2UgbmFtZSBgJS4yNTBzJyBpbiB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuZXBsYXRuw70gbsOhem92IGJhbMOta2Eg4oCeJS4yNTBz4oCcIHYgc8O6Ym9yZSBvZGxvxb5lbsO9Y2ggc3DDusWhxaVhxI1vdiDigJ4lLjI1MHPigJwiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjgxCisjLCBjLWZvcm1hdAorbXNnaWQgInRydW5jYXRlZCB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJza3LDoXRlbsO9IG9kbG/FvmVuw70gc8O6Ym9yIHNww7rFocWlYcSNYSDigJ4lLjI1MHPigJwiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjg1CisjLCBjLWZvcm1hdAorbXNnaWQgInN5bnRheCBlcnJvciBpbiB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIGF0IGNoYXJhY3RlciBgJXMnJXMiCittc2dzdHIgIiIKKyJzeW50YWt0aWNrw6EgY2h5YmEgdiBzw7pib3JlIG9kbG/FvmVuw71jaCBzcMO6xaHFpWHEjW92IOKAniUuMjU1c+KAnCBuYSB6bmFrdSDigJ4lc+KAnCVzIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4vY3JlYXRlIHRyaWdnZXJzIGxvY2tmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuaWUgamUgbW/Fvm7DqSBvdHZvcmnFpS92eXR2b3JpxaUgc8O6Ym9yIHrDoW1rdSBzcMO6xaHFpWHEjWEg4oCeJS4yNTBz4oCcIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNDEKKyMsIGZ1enp5CisjfCBtc2dpZCAidHJpZ2dlcmVkIgorbXNnaWQgInRyaWdnZXJzIGFyZWEiCittc2dzdHIgInNwdXN0ZW7DqSIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MTUxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5pZSBqZSBtb8W+bsOpIHppc3RpxaUgc3RhdiBvZGxvxb5lbsOpaG8gc8O6Ym9ydSBzcMO6xaHFpWHEjWEg4oCeJS4yNTBz4oCcIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmllIGplIG1vxb5uw6kgb3R2b3JpxaUgb2Rsb8W+ZW7DvSBzw7pib3Igc3DDusWhxaVhxI1hIOKAniUuMjUwc+KAnCIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MTc5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuL2NyZWF0ZSBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmllIGplIG1vxb5uw6kgb3R2b3JpxaUvdnl0dm9yacWlIG5vdsO9IG9kbG/FvmVuw70gc8O6Ym9yIHNww7rFocWlYcSNYSDigJ4lLjI1MHPigJwiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjIxNQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciByZWFkaW5nIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImNoeWJhIHByaSDEjcOtdGFuw60gb2Rsb8W+ZW7DqWhvIHPDumJvcnUgc3DDusWhxaVhxI1hIOKAniUuMjUwc+KAnCIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MjIzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmllIGplIG1vxb5uw6kgemFww61zYcWlIG5vdsO9IG9kbG/FvmVuw70gc8O6Ym9yIHNww7rFocWlYcSNYSDigJ4lLjI1MHPigJwiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjIyOAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5pZSBqZSBtb8W+bsOpIHphdHZvcmnFpSBub3bDvSBvZGxvxb5lbsO9IHPDumJvciBzcMO6xaHFpWHEjWEg4oCeJS4yNTBz4oCcIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5pZSBqZSBtb8W+bsOpIG5haW7FoXRhbG92YcWlIG5vdsO9IG9kbG/FvmVuw70gc8O6Ym9yIHNww7rFocWlYcSNYSDigJ4lLjI1MHPigJwiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzoyMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImludmFsaWQgb3IgdW5rbm93biBzeW50YXggaW4gdHJpZ2dlciBuYW1lIGAlLjI1MHMnIChpbiB0cmlnZ2VyIGludGVyZXN0cyBmb3IgIgorInBhY2thZ2UgYCUuMjUwcycpIgorbXNnc3RyICIiCisibmVwbGF0bsOhIGFsZWJvIG5lem7DoW1hIHN5bnRheCB2IG7DoXp2ZSBzcMO6xaHFpWHEjWEg4oCeJS4yNTBz4oCcICh2IHrDoXVqbW9jaCBzcMO6xaHFpWHEjWEgIgorImJhbMOta2Eg4oCeJS4yNTBz4oCcKSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjI2MworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiB0cmlnZ2VyIGludGVyZXN0IGxpc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmVwb2RhcmlsbyBzYSBvdHZvcmnFpSBzw7pib3IgesOhdWptdSBzcMO6xaHFpWHEjWEg4oCeJS4yNTBz4oCcIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MjkyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuZXBvZGFyaWxvIHNhIHZyw6F0acWlIG5hIHphxI1pYXRvayBzw7pib3J1IHrDoXVqbXUgc3DDusWhxaVhxI1hIOKAniUuMjUwc+KAnCIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMwNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIHN5bnRheCBlcnJvcjsgaWxsZWdhbCBwYWNrYWdlIG5hbWUgYCUuMjUwcyc6ICIKKyIlLjI1MHMiCittc2dzdHIgIiIKKyJzeW50YWt0aWNrw6EgY2h5YmEgdiBzw7pib3JlIHrDoXVqbXUgc3DDusWhxaVhxI1hIOKAniUuMjUwc+KAnDsgbmVwbGF0bsO9IG7DoXpvdiBiYWzDrWthICIKKyLigJ4lLjI1MHPigJw6ICUuMjUwcyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMxOAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmVwb2RhcmlsbyBzYSB6YXDDrXNhxaUgbm92w70gc8O6Ym9yIHrDoXVqbXUgc3DDusWhxaVhxI1hIOKAniUuMjUwc+KAnCIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMyMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAibmVwb2RhcmlsbyBzYSB2eXByw6F6ZG5pxaUgKGZsdXNoKSBub3bDvSBzw7pib3IgesOhdWptdSBzcMO6xaHFpWHEjWEg4oCeJS4yNTBz4oCcIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzI0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzeW5jIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgIm5lcG9kYXJpbG8gc2EgdnlwcsOhemRuacWlIChzeW5jKSBub3bDvSBzw7pib3IgesOhdWptdSBzcMO6xaHFpWHEjWEg4oCeJS4yNTBz4oCcIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzMyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5lcG9kYXJpbG8gc2EgbmFpbsWhdGFsb3ZhxaUgbm92w70gc8O6Ym9yIHrDoXVqbXUgc3DDusWhxaVhxI1hIOKAniUuMjUwc+KAnCIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjM0MCBsaWIvZHBrZy90cmlnbGliLmM6MzQyIGxpYi9kcGtnL3RyaWdsaWIuYzo0NzIKKyM6IHNyYy9yZW1vdmUuYzoyODYgc3JjL3JlbW92ZS5jOjM3NworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVtb3ZlIGAlLjI1MHMnIgorbXNnc3RyICJuaWUgamUgbW/Fvm7DqSBvZHN0csOhbmnFpSDigJ4lLjI1MHPigJwiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozNjAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuZXBvZGFyaWxvIHNhIHZ5dHZvcmnFpSBub3bDvSBzw7pib3IgesOhdWptdSBzcMO6xaHFpWHEjWEg4oCeJS4yNTBz4oCcIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzgzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuZXBvZGFyaWxvIHNhIHphdHZvcmnFpSBub3bDvSBzw7pib3IgesOhdWptdSBzcMO6xaHFpWHEjWEg4oCeJS4yNTBz4oCcIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDU2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkdXBsaWNhdGUgZmlsZSB0cmlnZ2VyIGludGVyZXN0IGZvciBmaWxlbmFtZSBgJS4yNTBzJyBhbmQgcGFja2FnZSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorImR1cGxpY2l0bsO9IHPDumJvciB6w6F1am11IHNww7rFocWlYcSNYSBwcmkgbsOhenZlIHPDumJvcnUg4oCeJS4yNTBz4oCcIGEgYmFsw61rYSDigJ4lLjI1MHPigJwiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuZXBvZGFyaWxvIHNhIHZ5dHZvcmnFpSBub3bDvSBzw7pib3Igc3DDusWhxaVhxI1hIHPDumJvcnUg4oCeJS4yNTBz4oCcIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDkzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuZXBvZGFyaWxvIHNhIHphcMOtc2HFpSBub3bDvSBzw7pib3Igc3DDusWhxaVhxI1hIHPDumJvcnUg4oCeJS4yNTBz4oCcIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDk2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlICclLjI1MHMnIgorbXNnc3RyICJuZXBvZGFyaWxvIHNhIHZ5cHLDoXpkbmnFpSAoZmx1c2gpIG5vdsO9IHPDumJvciBzcMO6xaHFpWHEjWEgc8O6Ym9ydSDigJ4lLjI1MHPigJwiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0OTkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAibmVwb2RhcmlsbyBzYSB2eXByw6F6ZG5pxaUgKHN5bmMpIG5vdsO9IHPDumJvciBzcMO6xaHFpWHEjWEgc8O6Ym9ydSDigJ4lLjI1MHPigJwiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1MDMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5lcG9kYXJpbG8gc2EgemF0dm9yacWlIG5vdsO9IHPDumJvciBzcMO6xaHFpWHEjWEgc8O6Ym9ydSDigJ4lLjI1MHPigJwiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1MDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSBhcyBgJS4yNTBzJyIKK21zZ3N0ciAibmVwb2RhcmlsbyBzYSBuYWluxaF0YWxvdmHFpSBub3bDvSBzw7pib3Igc3DDusWhxaVhxI1hIHPDumJvcnUg4oCeJS4yNTBz4oCcIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTQyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmVwb2RhcmlsbyBzYSBwcmXEjcOtdGHFpSBub3bDvSBzw7pib3Igc3DDusWhxaVhxI1hIHPDumJvcnUg4oCeJS4yNTBz4oCcIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTUyCisjLCBjLWZvcm1hdAorbXNnaWQgInN5bnRheCBlcnJvciBpbiBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgInN5bnRha3RpY2vDoSBjaHliYSB2IHPDumJvcmUgc3DDusWhxaVhxI1hIHPDumJvcnUg4oCeJS4yNTBz4oCcIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTYzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmaWxlIHRyaWdnZXJzIHJlY29yZCBtZW50aW9ucyBpbGxlZ2FsIHBhY2thZ2UgbmFtZSBgJS4yNTBzJyAoZm9yIGludGVyZXN0IGluICIKKyJmaWxlIGAlLjI1MHMnKTogJS4yNTBzIgorbXNnc3RyICIiCisiesOhem5hbSBzcMO6xaHFpWHEjWEgem1pZcWIdWplIG5lcGxhdG7DvSBuw6F6b3YgYmFsw61rYSDigJ4lLjI1MHPigJwgKHPDumJvciB6w6F1am11ICIKKyJzcMO6xaHFpWHEjWEg4oCeJS4yNTBz4oCcKTogJS4yNTBzIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NjY1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ0cmlnZ2VycyBjaSBmaWxlIGAlLjI1MHMnIGNvbnRhaW5zIGlsbGVnYWwgdHJpZ2dlciBzeW50YXggaW4gdHJpZ2dlciBuYW1lIGAiCisiJS4yNTBzJzogJS4yNTBzIgorbXNnc3RyICIiCisic8O6Ym9yIGNpIHNww7rFocWlYcSNYSDigJ4lLjI1MHPigJwgb2JzYWh1amUgbmVwbGF0bsO6IHN5bnRheCBzcMO6xaHFpWHEjWEgdiBuw6F6dmUgIgorInNww7rFocWlYcSNYSDigJ4lLjI1MHPigJw6ICUuMjUwcyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjY4NAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiB0cmlnZ2VycyBjaSBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuZXBvZGFyaWxvIHNhIG90dm9yacWlIHPDumJvciBjaSBzcMO6xaHFpWHEjWEg4oCeJS4yNTBz4oCcIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Njk5Cittc2dpZCAidHJpZ2dlcnMgY2kgZmlsZSBjb250YWlucyB1bmtub3duIGRpcmVjdGl2ZSBzeW50YXgiCittc2dzdHIgInPDumJvciBjaSBzcMO6xaHFpWHEjWEg4oCeJS4yNTBz4oCcIG9ic2FodWplIG5lcGxhdG7DuiBzeW50YXggZGlyZWt0w612eSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjcxMgorIywgYy1mb3JtYXQKK21zZ2lkICJ0cmlnZ2VycyBjaSBmaWxlIGNvbnRhaW5zIHVua25vd24gZGlyZWN0aXZlIGAlLjI1MHMnIgorbXNnc3RyICJzw7pib3IgY2kgc3DDusWhxaVhxI1hIG9ic2FodWplIG5lem7DoW11IGRpcmVrdMOtdnUg4oCeJS4yNTBz4oCcIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Nzc2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdHJpZ2dlcnMgc3RhdGUgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICJuZXBvZGFyaWxvIHNhIHZ5dHZvcmnFpSBhZHJlc8OhciBzdGF2dSBzcMO6xaHFpWHEjW92IOKAniUuMjUwc+KAnCIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjc3OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IG93bmVyc2hpcCBvZiB0cmlnZ2VycyBzdGF0ZSBkaXJlY3RvcnkgYCUuMjUwcyciCittc2dzdHIgIm5lcG9kYXJpbG8gc2EgbmFzdGF2acWlIHZsYXN0bsOtY3R2byBhZHJlc8OhcmEgc3RhdnUgc3DDusWhxaVhxI1vdiDigJ4lLjI1MHPigJwiCisKKyM6IGxpYi9kcGtnL3RyaWduYW1lLmM6MzQKK21zZ2lkICJlbXB0eSB0cmlnZ2VyIG5hbWVzIGFyZSBub3QgcGVybWl0dGVkIgorbXNnc3RyICJwcsOhemRuZSBuw6F6dnkgc3DDusWhxaVhxI1vdiBuaWUgc8O6IGRvdm9sZW7DqSIKKworIzogbGliL2Rwa2cvdHJpZ25hbWUuYzozOAorbXNnaWQgInRyaWdnZXIgbmFtZSBjb250YWlucyBpbnZhbGlkIGNoYXJhY3RlciIKK21zZ3N0ciAibsOhem92IHNww7rFocWlYcSNYSBvYnNhaHVqZSBuZXBsYXRuw70gem5hayIKKworIzogbGliL2Rwa2cvdXRpbHMuYzo1NgorIywgYy1mb3JtYXQKK21zZ2lkICJyZWFkIGVycm9yIGluIGAlLjI1MHMnIgorbXNnc3RyICJjaHliYSBwcmkgxI3DrXRhbsOtIHYg4oCeJS4yNTBz4oCcIgorCisjOiBsaWIvZHBrZy91dGlscy5jOjYxCisjLCBjLWZvcm1hdAorbXNnaWQgImZnZXRzIGdhdmUgYW4gZW1wdHkgc3RyaW5nIGZyb20gYCUuMjUwcyciCittc2dzdHIgImZ1bmtjaWEgZmdldHMgdnLDoXRpbGEgcHLDoXpkbnkgcmXFpWF6ZWMgeiDigJ4lLjI1MHPigJwiCisKKyM6IGxpYi9kcGtnL3V0aWxzLmM6NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAidG9vLWxvbmcgbGluZSBvciBtaXNzaW5nIG5ld2xpbmUgaW4gYCUuMjUwcyciCittc2dzdHIgInByw61sacWhIGRsaMO9IHJpYWRvayBhbGVibyBjaMO9YmEgem5hayBub3bDqWhvIHJpYWRrYSB2IOKAniUuMjUwc+KAnCIKKworIzogbGliL2Rwa2cvdXRpbHMuYzo3NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVvZiByZWFkaW5nIGAlLjI1MHMnIgorbXNnc3RyICJuZW/EjWFrw6F2YW7DvSBrb25pZWMgc8O6Ym9ydSBwcmkgxI3DrXRhbsOtIOKAniUuMjUwc+KAnCIKKworIzogbGliL2Rwa2cvdmFyYnVmLmM6ODIgbGliL2Rwa2cvdmFyYnVmLmM6ODgKK21zZ2lkICJlcnJvciBmb3JtYXR0aW5nIHN0cmluZyBpbnRvIHZhcmJ1ZiB2YXJpYWJsZSIKK21zZ3N0ciAiY2h5YmEgcHJpIGZvcm3DoXRvdmFuw60gcmXFpWF6Y2EgZG8gcHJlbWVubmVqIHZhcmJ1ZiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTc5IHNyYy9hcmNoaXZlcy5jOjIwMCBzcmMvYXJjaGl2ZXMuYzo3MjQKK21zZ2lkICJlcnJvciByZWFkaW5nIGZyb20gZHBrZy1kZWIgcGlwZSIKK21zZ3N0ciAiY2h5YmEgcHJpIMSNw610YW7DrSB6IHLDunJ5IGRwa2ctZGViIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxOTUKKyMsIGMtZm9ybWF0Cittc2dpZCAic2tpcHBlZCB1bnBhY2tpbmcgZmlsZSAnJS4yNTVzJyAocmVwbGFjZWQgb3IgZXhjbHVkZWQ/KSIKK21zZ3N0ciAicHJlc2tvxI1lbsOpIHJvemJhxL5vdmFuaWUgc8O6Ym9ydSDigJ4lLjI1NXPigJwgKG5haHJhZGVuw70gYWxlYm8gdnluZWNoYW7DvT8pIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoyNDYgc3JjL2FyY2hpdmVzLmM6MjUwCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHNldHRpbmcgdGltZXN0YW1wcyBvZiBgJS4yNTVzJyIKK21zZ3N0ciAiY2h5YmEgcHJpIG5hc3Rhdm92YW7DrSDEjWFzb3ZlaiB6bmHEjWt5IHUg4oCeJS4yNTVz4oCcIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoyNjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igc2V0dGluZyBvd25lcnNoaXAgb2Ygc3ltbGluayBgJS4yNTVzJyIKK21zZ3N0ciAiY2h5YmEgcHJpIG5hc3Rhdm92YW7DrSB2bGFzdG7DrWNreWNoIHByw6F2IHN5bWJvbGlja8OpaG8gb2RrYXp1IOKAniUuMjU1c+KAnCIKKworIzogc3JjL2FyY2hpdmVzLmM6MjY1IHNyYy9hcmNoaXZlcy5jOjczNCBzcmMvc3RhdGNtZC5jOjE2MworIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIG93bmVyc2hpcCBvZiBgJS4yNTVzJyIKK21zZ3N0ciAiY2h5YmEgcHJpIG5hc3Rhdm92YW7DrSB2bGFzdG7DrWNreWNoIHByw6F2IHUg4oCeJS4yNTVz4oCcIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoyNjcgc3JjL2FyY2hpdmVzLmM6NzM2IHNyYy9zdGF0Y21kLmM6MTY1CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHNldHRpbmcgcGVybWlzc2lvbnMgb2YgYCUuMjU1cyciCittc2dzdHIgImNoeWJhIHByaSBuYXN0YXZvdmFuw60gcHLDrXN0dXBvdsO9Y2ggcHLDoXYgdSDigJ4lLjI1NXPigJwiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjM5NQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gc3RhdCAoZGVyZWZlcmVuY2UpIGV4aXN0aW5nIHN5bWxpbmsgYCUuMjUwcyciCittc2dzdHIgIiIKKyJuaWUgamUgbW/Fvm7DqSB2eWtvbmHFpSBzdGF0KCkgKGRlcmVmZXJlbmNvdmFuaWUpIGV4aXN0dWrDumNlaG8gc3ltYm9saWNrw6lobyAiCisib2RrYXp1IOKAniUuMjUwc+KAnCIKKworIzogc3JjL2FyY2hpdmVzLmM6NDE3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmYWlsZWQgdG8gc3RhdCAoZGVyZWZlcmVuY2UpIHByb3Bvc2VkIG5ldyBzeW1saW5rIHRhcmdldCBgJS4yNTBzJyBmb3IgIgorInN5bWxpbmsgYCUuMjUwcyciCittc2dzdHIgIiIKKyJuZXBvZGFyaWxvIHNhIHZ5a29uYcWlIHN0YXQoKSAoZGVyZWZlcmVuY292YW5pZSkgbmEgbmF2cmhvdmFub20gbm92b20gY2llbGkgIgorInN5bWJvbGlja8OpaG8gb2RrYXp1IOKAniUuMjUwc+KAnCBzeW1ib2xpY2vDqWhvIG9ka2F6dSDigJ4lLjI1MHPigJwiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjQ3NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidHJ5aW5nIHRvIG92ZXJ3cml0ZSBgJS4yNTBzJywgd2hpY2ggaXMgdGhlIGRpdmVydGVkIHZlcnNpb24gb2YgYCIKKyIlLjI1MHMnIChwYWNrYWdlOiAlLjEwMHMpIgorbXNnc3RyICIiCisicG9rdXMgbyBwcmVww61zYW5pZSDigJ4lLjI1MHPigJwsIGt0b3LDvSBqZSBvZGtsb25lbm91IHZlcnppb3Ug4oCeJS4yNTBz4oCcIChiYWzDrWs6ICIKKyLigJ4lLjEwMHPigJwpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo0ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJ5aW5nIHRvIG92ZXJ3cml0ZSBgJS4yNTBzJywgd2hpY2ggaXMgdGhlIGRpdmVydGVkIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dzdHIgInBva3VzIG8gcHJlcMOtc2FuaWUg4oCeJS4yNTBz4oCcLCBrdG9yw70gamUgb2RrbG9uZW5vdSB2ZXJ6aW91IOKAniUuMjUwc+KAnCIKKworIzogc3JjL2FyY2hpdmVzLmM6NTExCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGAlLjI1NXMnICh3aGljaCBJIHdhcyBhYm91dCB0byBpbnN0YWxsKSIKK21zZ3N0ciAibmllIGplIG1vxb5uw6kgemlzdGnFpSBzdGF2IOKAniUuMjU1c+KAnCAoa3RvcsO9IGJ1ZGUgcHLDoXZlIG5haW7FoXRhbG92YW7DvSkiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjUxOQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidW5hYmxlIHRvIGNsZWFuIHVwIG1lc3Mgc3Vycm91bmRpbmcgYCUuMjU1cycgYmVmb3JlIGluc3RhbGxpbmcgYW5vdGhlciAiCisidmVyc2lvbiIKK21zZ3N0ciAiIgorIm5pZSBqZSBtb8W+bsOpIHVwcmF0YcWlIG9kcGFkIG9ia2xvcHVqw7pjaSDigJ4lLjI1NXPigJwgcHJlZCBuYWluxaF0YWxvdmFuw61tIGluZWogIgorInZlcnppZSIKKworIzogc3JjL2FyY2hpdmVzLmM6NTI1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IHJlc3RvcmVkIGAlLjI1NXMnIGJlZm9yZSBpbnN0YWxsaW5nIGFub3RoZXIgdmVyc2lvbiIKK21zZ3N0ciAiIgorIm5pZSBqZSBtb8W+bsOpIHppc3RpxaUgc3RhdiBvYm5vdmVuw6lobyDigJ4lLjI1NXPigJwgcHJlZCBuYWluxaF0YWxvdmFuw61tIGluZWogdmVyemllIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo1NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiYXJjaGl2ZSBjb250YWluZWQgb2JqZWN0IGAlLjI1NXMnIG9mIHVua25vd24gdHlwZSAweCV4IgorbXNnc3RyICJhcmNow612IG9ic2Fob3ZhbCBvYmpla3Qg4oCeJS4yNTVz4oCcIG5lem7DoW1laG8gdHlwdSAweCV4IgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2MjYgc3JjL2RpdmVydGNtZC5jOjE1MCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NjgyCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIyMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI4NAorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE0NDEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE2ODAKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTY3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjQ0CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUyNworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc3RhdCBmaWxlICclcyciCittc2dzdHIgIm5lcG9kYXJpbG8gc2Egdnlrb25hxaUgc3RhdCgpIHPDumJvcnUg4oCeJXPigJwiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjY0MQorIywgYy1mb3JtYXQKK21zZ2lkICJSZXBsYWNpbmcgZmlsZXMgaW4gb2xkIHBhY2thZ2UgJXMgLi4uXG4iCittc2dzdHIgIk5haHJhZHp1asO6IHNhIHPDumJvcnkgdiBzdGFyb20gYmFsw61rdSAlcyAuLi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6NjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlcGxhY2VkIGJ5IGZpbGVzIGluIGluc3RhbGxlZCBwYWNrYWdlICVzIC4uLlxuIgorbXNnc3RyICJOYWhyYWR6dWrDuiBzYSBzw7pib3J5IHYgbmFpbsWhdGFsb3Zhbm9tIGJhbMOta3UgJXMgLi4uXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjY1NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidHJ5aW5nIHRvIG92ZXJ3cml0ZSBkaXJlY3RvcnkgJyUuMjUwcycgaW4gcGFja2FnZSAlLjI1MHMgJS4yNTBzIHdpdGggIgorIm5vbmRpcmVjdG9yeSIKK21zZ3N0ciAiIgorInBva3VzIG8gcHJlcMOtc2FuaWUgYWRyZXPDoXJhIOKAniUuMjUwc+KAnCB2IGJhbMOta3UgJS4yNTBzICUuMjUwcyBuZWFkcmVzw6Fyb20iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjY2MQorIywgYy1mb3JtYXQKK21zZ2lkICJ0cnlpbmcgdG8gb3ZlcndyaXRlICclLjI1MHMnLCB3aGljaCBpcyBhbHNvIGluIHBhY2thZ2UgJS4yNTBzICUuMjUwcyIKK21zZ3N0ciAicG9rdXMgbyBwcmVww61zYW5pZSDigJ4lLjI1MHPigJwsIGt0b3LDvSBqZSB0aWXFviB2IGJhbMOta3UgJS4yNTBzICUuMjUwcyIKKworIzogc3JjL2FyY2hpdmVzLmM6NzExCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgYCUuMjU1cycgKHdoaWxlIHByb2Nlc3NpbmcgYCUuMjU1cycpIgorbXNnc3RyICJuaWUgamUgbW/Fvm7DqSB2eXR2b3JpxaUg4oCeJS4yNTVz4oCcIChwb8SNYXMgc3ByYWNvdmFuaWEg4oCeJS4yNTVz4oCcKSIKKworIzogc3JjL2FyY2hpdmVzLmM6NzE4CisjLCBjLWZvcm1hdAorbXNnaWQgImJhY2tlbmQgZHBrZy1kZWIgZHVyaW5nIGAlLjI1NXMnIgorbXNnc3RyICJiYWNrZW5kIGRwa2ctZGViIHBvxI1hcyDigJ4lLjI1NXPigJwiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc0NCBzcmMvYXJjaGl2ZXMuYzo5MDggc3JjL2FyY2hpdmVzLmM6OTQ5CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3Npbmcvd3JpdGluZyBgJS4yNTVzJyIKK21zZ3N0ciAiY2h5YmEgcHJpIHV6YXR2w6FyYW7DrS96w6FwaXNlIOKAniUuMjU1c+KAnCIKKworIzogc3JjL2FyY2hpdmVzLmM6NzQ4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIHBpcGUgYCUuMjU1cyciCittc2dzdHIgImNoeWJhIHByaSB2eXR2w6FyYW7DrSByw7pyeSDigJ4lLjI1NXPigJwiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc1MyBzcmMvYXJjaGl2ZXMuYzo3NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgZGV2aWNlIGAlLjI1NXMnIgorbXNnc3RyICJjaHliYSBwcmkgdnl0dsOhcmFuw60gemFyaWFkZW5pYSDigJ4lLjI1NXPigJwiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc3MQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBoYXJkIGxpbmsgYCUuMjU1cyciCittc2dzdHIgImNoeWJhIHByaSB2eXR2w6FyYW7DrSBwZXZuw6lobyBvZGthenUg4oCeJS4yNTVz4oCcIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NzcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjUzOQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBzeW1ib2xpYyBsaW5rIGAlLjI1NXMnIgorbXNnc3RyICJjaHliYSBwcmkgdnl0dsOhcmFuw60gc3ltYm9saWNrw6lobyBvZGthenUg4oCeJS4yNTVz4oCcIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgZGlyZWN0b3J5IGAlLjI1NXMnIgorbXNnc3RyICJjaHliYSBwcmkgdnl0dsOhcmFuw60gYWRyZXPDoXJhIOKAniUuMjU1c+KAnCIKKworIzogc3JjL2FyY2hpdmVzLmM6ODIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBtb3ZlIGFzaWRlIGAlLjI1NXMnIHRvIGluc3RhbGwgbmV3IHZlcnNpb24iCittc2dzdHIgIm5pZSBqZSBtb8W+bsOpIG9kc3Vuw7rFpSDigJ4lLjI1NXPigJwgYWJ5IHNhIGRhbGEgbmFpbsWhdGFsb3ZhxaUgbm92w6EgdmVyemlhIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4MzIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjMyMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBsaW5rIGAlLjI1NXMnIgorbXNnc3RyICJuaWUgamUgbW/Fvm7DqSBwcmXEjcOtdGHFpSBvZGtheiDigJ4lLjI1NXPigJwiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjgzNCBzcmMvY29uZmlndXJlLmM6NDIzCisjLCBjLWZvcm1hdAorbXNnaWQgInN5bWJvbGljIGxpbmsgJyUuMjUwcycgc2l6ZSBoYXMgY2hhbmdlZCBmcm9tICVqZCB0byAlemQiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6ODM5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBtYWtlIGJhY2t1cCBzeW1saW5rIGZvciBgJS4yNTVzJyIKK21zZ3N0ciAibmllIGplIG1vxb5uw6kgdnl0dm9yacWlIHrDoWxvxb5uw70gc3ltYm9saWNrw70gb2RrYXogbmEg4oCeJS4yNTVz4oCcIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNob3duIGJhY2t1cCBzeW1saW5rIGZvciBgJS4yNTVzJyIKK21zZ3N0ciAiIgorIm5pZSBqZSBtb8W+bsOpIHptZW5pxaUgdmxhc3Ruw61ja2UgcHLDoXZhIG5hIHrDoWxvxb5ub20gc3ltYm9saWNrb20gb2RrYXplIG5hICIKKyLigJ4lLjI1NXPigJwiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjg0NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gbWFrZSBiYWNrdXAgbGluayBvZiBgJS4yNTVzJyBiZWZvcmUgaW5zdGFsbGluZyBuZXcgdmVyc2lvbiIKK21zZ3N0ciAiIgorIm5pZSBqZSBtb8W+bsOpIHZ5dHZvcmnFpSB6w6Fsb8W+bsO9IG9ka2F6IOKAniUuMjU1c+KAnCBwcmVkIG5haW7FoXRhbG92YW7DrW0gbm92ZWogdmVyemllIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4NjMgc3JjL2FyY2hpdmVzLmM6OTU3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyB2ZXJzaW9uIG9mIGAlLjI1NXMnIgorbXNnc3RyICJuaWUgamUgbW/Fvm7DqSBuYWluxaF0YWxvdmHFpSBub3bDuiB2ZXJ6aXUg4oCeJS4yNTVz4oCcIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo5MDIgc3JjL2FyY2hpdmVzLmM6OTQ1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuICclLjI1NXMnIgorbXNnc3RyICJuZXBvZGFyaWxvIHNhIG90dm9yacWlIOKAniUuMjU1c+KAnCIKKworIzogc3JjL2FyY2hpdmVzLmM6OTQ3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzeW5jIGZpbGUgJyUuMjU1cyciCittc2dzdHIgIm5lcG9kYXJpbG8gc2EgdnlwcsOhemRuacWlIChzeW5jKSBzw7pib3Ig4oCeJS4yNTVz4oCcIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDAwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpZ25vcmluZyBkZXBlbmRlbmN5IHByb2JsZW0gd2l0aCAlczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImlnbm9ydWplIHNhIHByb2Jsw6ltIHNvIHrDoXZpc2xvc8WlYW1pIGJhbMOta2EgJXM6XG4iCisiJXMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImNvbnNpZGVyaW5nIGRlY29uZmlndXJhdGlvbiBvZiBlc3NlbnRpYWxcbiIKKyIgcGFja2FnZSAlcywgdG8gZW5hYmxlICVzLiIKK21zZ3N0ciAiIgorInV2YcW+dWplIHNhIG8gb2Rrb25maWd1cm92YW7DrSBuZXZ5aG51dG7DqWhvXG4iCisiIGJhbMOta2EgJXMsIGt0b3LDqSB1bW/Fvm7DrSAlcy4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IG5vLCAlcyBpcyBlc3NlbnRpYWwsIHdpbGwgbm90IGRlY29uZmlndXJlXG4iCisiIGl0IGluIG9yZGVyIHRvIGVuYWJsZSAlcy5cbiIKK21zZ3N0ciAiIgorImRwa2c6IG5pZSwgJXMgamUgbmV2eWhudXRuw70sIG5lYnVkZSBvZGtvbmZpZ3Vyb3ZhbsO9LFxuIgorIiBhYnkgc2EgdW1vxb5uaWwgJXMuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IG5vLCBjYW5ub3QgcHJvY2VlZCB3aXRoICVzICgtLWF1dG8tZGVjb25maWd1cmUgd2lsbCBoZWxwKTpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6IG5pZSwgbmllIGplIG1vxb5uw6kgcG9rcmHEjW92YcWlIHYgJXMgKC0tYXV0by1kZWNvbmZpZ3VyZSBwb23DtMW+ZSk6XG4iCisiJXMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVtb3ZhbCBvZiAlLjI1MHMiCittc2dzdHIgIm9kc3Ryw6FuZW7DrSAlLjI1MHMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW5zdGFsbGF0aW9uIG9mICUuMjUwcyIKK21zZ3N0ciAiaW7FoXRhbMOhY2lpICUuMjUwcyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA1OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogY29uc2lkZXJpbmcgZGVjb25maWd1cmF0aW9uIG9mICVzLCB3aGljaCB3b3VsZCBiZSBicm9rZW4gYnkgJXMgLi4uXG4iCittc2dzdHIgImRwa2c6IHV2YcW+dWplIHNhIG8gb2RzdHLDoW5lbsOtICVzLCBrdG9yw70gYnkgJXMgcG9rYXppbCAuLi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA2NQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiB5ZXMsIHdpbGwgZGVjb25maWd1cmUgJXMgKGJyb2tlbiBieSAlcykuXG4iCittc2dzdHIgImRwa2c6IMOhbm8sIG9ka29uZmlndXJ1amUgc2EgJXMgKHBva2F6ZW7DvSBiYWzDrWtvbSAlcykuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNjkgc3JjL2FyY2hpdmVzLmM6MTE4NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogcmVnYXJkaW5nICVzIGNvbnRhaW5pbmcgJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiBvaMS+YWRvbSAlcyBvYnNhaHVqw7pjaSAlczpcbiIKKyIlcyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA3NworbXNnaWQgImlnbm9yaW5nIGJyZWFrYWdlLCBtYXkgcHJvY2VlZCBhbnl3YXkhIgorbXNnc3RyICJpZ25vcnVqZSBzYSBwb2themVuaWUsIGplIG1vxb5uw6kgcG9rcmHEjW92YcWlISIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA4MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiaW5zdGFsbGluZyAlLjI1MHMgd291bGQgYnJlYWsgJS4yNTBzLCBhbmRcbiIKKyIgZGVjb25maWd1cmF0aW9uIGlzIG5vdCBwZXJtaXR0ZWQgKC0tYXV0by1kZWNvbmZpZ3VyZSBtaWdodCBoZWxwKSIKK21zZ3N0ciAiIgorIm5haW7FoXRhbG92YW5pZSAlLjI1MHMgYnkgcG9rYXppbG8gJS4yNTBzIGFcbiIKKyIgb2Rrb25maWd1cm92YW5pZSBuaWUgamUgcG92b2xlbsOpICgtLWF1dG8tZGVjb25maWd1cmUgYnkgbW9obG8gcG9tw7RjxaUpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDg2CisjLCBjLWZvcm1hdAorbXNnaWQgImluc3RhbGxpbmcgJS4yNTBzIHdvdWxkIGJyZWFrIGV4aXN0aW5nIHNvZnR3YXJlIgorbXNnc3RyICJuYWluxaF0YWxvdmFuaWUgJS4yNTBzIGJ5IHBva2F6aWxvIGV4aXN0dWrDumNpIHNvZnR2w6lyIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTE2CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IGNvbnNpZGVyaW5nIHJlbW92aW5nICVzIGluIGZhdm91ciBvZiAlcyAuLi5cbiIKK21zZ3N0ciAiZHBrZzogdXZhxb51amUgc2EgbyBvZHN0csOhbmVuw60gJXMgdiBwcm9zcGVjaCAlcyAuLi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTEyMgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgcHJvcGVybHkgaW5zdGFsbGVkIC0gaWdub3JpbmcgYW55IGRlcGVuZGVuY2llcyBvbiBpdC5cbiIKK21zZ3N0ciAiIgorIiVzIG5pZSBqZSBzcHLDoXZuZSBuYWluxaF0YWxvdmFuw70gLSBpZ25vcnVqw7ogc2EgdsWhZXRreSB6w6F2aXNsb3N0aSBuYSDFiG9tLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTUxCisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IG1heSBoYXZlIHRyb3VibGUgcmVtb3ZpbmcgJXMsIGFzIGl0IHByb3ZpZGVzICVzIC4uLlxuIgorbXNnc3RyICJkcGtnOiBtb8W+bsOpIHByb2Jsw6lteSBzIG9kc3Ryw6FuZW7DrW0gJXMsIHByZXRvxb5lIHBvc2t5dHVqZSAlcyAuLi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE2NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogcGFja2FnZSAlcyByZXF1aXJlcyByZWluc3RhbGxhdGlvbiwgYnV0IHdpbGwgcmVtb3ZlIGFueXdheSBhcyB5b3UgIgorInJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiIgorImRwa2c6IGJhbMOtayAlcyB2ecW+YWR1amUgcmVpbsWhdGFsw6FjaXUsIGFsZSBidWRlIG9kc3Ryw6FuZW7DvSBha28gc3RlICIKKyJwb8W+YWRvdmFsaS5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE2OQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiBwYWNrYWdlICVzIHJlcXVpcmVzIHJlaW5zdGFsbGF0aW9uLCB3aWxsIG5vdCByZW1vdmUuXG4iCittc2dzdHIgIiIKKyJkcGtnOiBiYWzDrWsgJXMgdnnFvmFkdWplIHJlaW7FoXRhbMOhY2l1LCBuZXBva3JhxI11amUgc2EgdiBvZGluxaF0YWxvdmFuw60uXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogeWVzLCB3aWxsIHJlbW92ZSAlcyBpbiBmYXZvdXIgb2YgJXMuXG4iCittc2dzdHIgImRwa2c6IMOhbm8sIG9kc3Ryw6FuaW0gJXMgdiBwcm9zcGVjaCAlcy5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE5MAorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mbGljdGluZyBwYWNrYWdlcyAtIG5vdCBpbnN0YWxsaW5nICUuMjUwcyIKK21zZ3N0ciAia29uZmxpa3QgYmFsw61rb3YgLSBuZWJ1ZGUgc2EgaW7FoXRhbG92YcWlICUuMjUwcyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE5MQorbXNnaWQgImlnbm9yaW5nIGNvbmZsaWN0LCBtYXkgcHJvY2VlZCBhbnl3YXkhIgorbXNnc3RyICJpZ25vcnVqZSBzYSBrb25mbGlrdCwgamUgbW/Fvm7DqSBwb2tyYcSNb3ZhxaUhIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjM1CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgLS1yZWN1cnNpdmUgbmVlZHMgYXQgbGVhc3Qgb25lIHBhdGggYXJndW1lbnQiCittc2dzdHIgIi0tJXMgLS1yZWN1cnNpdmUgdnnFvmFkdWplIGFzcG/FiCBqZWRudSBjZXN0dSBha28gYXJndW1lbnQiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNDUKK21zZ2lkICJmaW5kIGZvciBkcGtnIC0tcmVjdXJzaXZlIgorbXNnc3RyICJwcsOta2F6IGZpbmQgcHJlIGRwa2cgLS1yZWN1cnNpdmUiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNjYKK21zZ2lkICJmYWlsZWQgdG8gZmRvcGVuIGZpbmQncyBwaXBlIgorbXNnc3RyICJ6bHloYWxvIHZ5a29uYW5pZSBmdW5rY2llIGZkb3BlbiBuYSByw7pyZSBwcsOta2F6dSBmaW5kIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjcyCittc2dpZCAiZXJyb3IgcmVhZGluZyBmaW5kJ3MgcGlwZSIKK21zZ3N0ciAiY2h5YmEgcHJpIMSNw610YW7DrSB6IHLDunJ5IHByw61rYXp1IGZpbmQiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNzMKK21zZ2lkICJlcnJvciBjbG9zaW5nIGZpbmQncyBwaXBlIgorbXNnc3RyICJjaHliYSBwcmkgdXphdHbDoXJhbsOtIHLDunJ5IHByw61rYXp1IGZpbmQiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmluZCBmb3IgLS1yZWN1cnNpdmUgcmV0dXJuZWQgdW5oYW5kbGVkIGVycm9yICVpIgorbXNnc3RyICJwcsOta2F6IGZpbmQgcHJlIC0tcmVjdXJzaXZlIHZyw6F0aWwgbmVzcHJhY292YW7DuiBjaHlidSAlaSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3OQorbXNnaWQgInNlYXJjaGVkLCBidXQgZm91bmQgbm8gcGFja2FnZXMgKGZpbGVzIG1hdGNoaW5nICouZGViKSIKK21zZ3N0ciAicHJlaMS+YWRhbsOpLCBuZWJvbCBhbGUgbsOhamRlbsO9IMW+aWFkbnkgYmFsw61rIChzw7pib3J5IHZ5aG92dWrDumNlICouZGViKSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI5MAorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGF0IGxlYXN0IG9uZSBwYWNrYWdlIGFyY2hpdmUgZmlsZSBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyB2ecW+YWR1amUgYWtvIGFyZ3VtZW50IGFzcG/FiCBqZWRlbiBzw7pib3IgcyBiYWzDrWtvbSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTMyNSBzcmMvZGl2ZXJ0Y21kLmM6Nzggc3JjL2RpdmVydGNtZC5jOjExOAorIzogc3JjL2VucXVpcnkuYzoxNjYgc3JjL2VucXVpcnkuYzoyNzkgc3JjL2VucXVpcnkuYzo0NDkgc3JjL2VucXVpcnkuYzo0NTEKKyM6IHNyYy9lbnF1aXJ5LmM6NDY0IHNyYy9tYWluLmM6NjYgc3JjL21haW4uYzoxNjMgc3JjL21haW4uYzozMTQKKyM6IHNyYy9tYWluLmM6NDkzIHNyYy9wYWNrYWdlcy5jOjI1NCBzcmMvcXVlcnljbWQuYzoyNTIgc3JjL3F1ZXJ5Y21kLmM6MzU1CisjOiBzcmMvcXVlcnljbWQuYzozOTYgc3JjL3F1ZXJ5Y21kLmM6NDA0IHNyYy9xdWVyeWNtZC5jOjQ0OCBzcmMvcXVlcnljbWQuYzo1MTcKKyM6IHNyYy9xdWVyeWNtZC5jOjYwNiBzcmMvcXVlcnljbWQuYzo2NTAgc3JjL3NlbGVjdC5jOjc5IHNyYy9zdGF0Y21kLmM6NjgKKyM6IHNyYy9zdGF0Y21kLmM6OTggc3JjL3RyaWdjbWQuYzo1OCBzcmMvdHJpZ2NtZC5jOjkwIGRwa2ctZGViL2J1aWxkLmM6NDQxCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjE3IGRwa2ctZGViL2V4dHJhY3QuYzoyNTAgZHBrZy1kZWIvaW5mby5jOjIwMworIzogZHBrZy1kZWIvaW5mby5jOjI2NSBkcGtnLWRlYi9tYWluLmM6NjAgZHBrZy1kZWIvbWFpbi5jOjEyNgorIzogZHBrZy1zcGxpdC9pbmZvLmM6MjU3IGRwa2ctc3BsaXQvbWFpbi5jOjU0IGRwa2ctc3BsaXQvbWFpbi5jOjk4CisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTQ0IGRwa2ctc3BsaXQvcXVldWUuYzoyODAKK21zZ2lkICI8c3RhbmRhcmQgb3V0cHV0PiIKK21zZ3N0ciAiPMWhdGFuZC4gdsO9c3R1cD4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzMjYgc3JjL3BhY2thZ2VzLmM6MjU1IHNyYy9xdWVyeWNtZC5jOjI1MworIzogc3JjL3F1ZXJ5Y21kLmM6MzUzIHNyYy9xdWVyeWNtZC5jOjQ1NCBzcmMvcXVlcnljbWQuYzo1MTggc3JjL3NlbGVjdC5jOjgwCisjOiBkcGtnLXNwbGl0L21haW4uYzoxNjkgZHBrZy1zcGxpdC9xdWV1ZS5jOjIxOAorbXNnaWQgIjxzdGFuZGFyZCBlcnJvcj4iCittc2dzdHIgIjzFoXRhbmQuIGNoeWJvdsO9PiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTM2NworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiU2VsZWN0aW5nIHByZXZpb3VzbHkgZGVzZWxlY3RlZCBwYWNrYWdlICVzLlxuIgorbXNnaWQgIlNlbGVjdGluZyBwcmV2aW91c2x5IHVuc2VsZWN0ZWQgcGFja2FnZSAlcy5cbiIKK21zZ3N0ciAiVnliZXLDoSBzYSBwcmVkdMO9bSB6cnXFoWVuw70gYmFsw61rICVzLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzcxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJTa2lwcGluZyBkZXNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dpZCAiU2tpcHBpbmcgdW5zZWxlY3RlZCBwYWNrYWdlICVzLlxuIgorbXNnc3RyICJQcmVza2FrdWplIHNhIHpydcWhZW7DvSBiYWzDrWsgJXMuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiVmVyc2lvbiAlLjI1MHMgb2YgJS4yNTBzIGFscmVhZHkgaW5zdGFsbGVkLCBza2lwcGluZy5cbiIKK21zZ3N0ciAiVmVyemlhICUuMjUwcyAlLjI1MHMgamUgdXogbmFpbsWhdGFsb3ZhbsOhLCBwcmVza2FrdWplIHNhLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzk3CisjLCBjLWZvcm1hdAorbXNnaWQgImRvd25ncmFkaW5nICUuMjUwcyBmcm9tICUuMjUwcyB0byAlLjI1MHMuIgorbXNnc3RyICJpbsWhdGFsdWplIHNhIHN0YXLFoWlhIHZlcnppYSAlLjI1MHM7IHogJS4yNTBzIG5hICUuMjUwcy4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjE0MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiV2lsbCBub3QgZG93bmdyYWRlICUuMjUwcyBmcm9tIHZlcnNpb24gJS4yNTBzIHRvICUuMjUwcywgc2tpcHBpbmcuXG4iCittc2dzdHIgIiIKKyJOZWJ1ZGUgc2EgaW7FoXRhbG92YcWlIHN0YXLFoWlhIHZlcnppdSBiYWzDrWthICUuMjUwcyB6IHZlcnppZSAlLjI1MHMgbmEgJS4yNTBzLCAiCisicHJlc2tha3VqZSBzYS5cbiIKKworIzogc3JjL2NsZWFudXAuYzo4NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidW5hYmxlIHRvIHJlbW92ZSBuZXdseS1pbnN0YWxsZWQgdmVyc2lvbiBvZiBgJS4yNTBzJyB0byBhbGxvdyByZWluc3RhbGxhdGlvbiAiCisib2YgYmFja3VwIGNvcHkiCittc2dzdHIgIiIKKyJuaWUgamUgbW/Fvm7DqSBvZHN0csOhbmnFpSBub3ZvbmFpbsWhdGFsb3ZhbsO6IHZlcnppdSBiYWzDrWthIOKAniUuMjUwc+KAnCwgYWJ5IHNhICIKKyJ1bW/Fvm5pbGFcbiIKKyJyZWluxaF0YWzDoWNpZSB6w6Fsb8W+bmVqIGvDs3BpZSIKKworIzogc3JjL2NsZWFudXAuYzo5MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVzdG9yZSBiYWNrdXAgdmVyc2lvbiBvZiBgJS4yNTBzJyIKK21zZ3N0ciAibmllIGplIG1vxb5uw6kgb2Jub3ZpxaUgesOhbG/Fvm7DuiBrw7NwaXUg4oCeJS4yNTBz4oCcIgorCisjOiBzcmMvY2xlYW51cC5jOjk3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgYmFja3VwIGNvcHkgb2YgJyUuMjUwcyciCittc2dzdHIgIm5pZSBqZSBtb8W+bsOpIG9kc3Ryw6FuacWlIHrDoWxvxb5uw7oga8OzcGl1IOKAniUuMjUwc+KAnCIKKworIzogc3JjL2NsZWFudXAuYzoxMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBuZXdseS1pbnN0YWxsZWQgdmVyc2lvbiBvZiBgJS4yNTBzJyIKK21zZ3N0ciAibmllIGplIG1vxb5uw6kgb2RzdHLDoW5pxaUgbm92b25haW7FoXRhbG92YW7DuiB2ZXJ6aXUg4oCeJS4yNTBz4oCcIgorCisjOiBzcmMvY2xlYW51cC5jOjEwOAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIG5ld2x5LWV4dHJhY3RlZCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICJuaWUgamUgbW/Fvm7DqSBvZHN0csOhbmnFpSBub3Zvcm96YmFsZW7DuiB2ZXJ6aXUg4oCeJS4yNTBz4oCcIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTA0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IG5ldyBkaXN0cmlidXRlZCBjb25mZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAiIgorIm5lcG9kYXJpbG8gc2Egdnlrb25hxaUgc3RhdCgpIG5vdsOpaG8gZGlzdHJpYnXEjW7DqWhvIGtvbmZpZ3VyYcSNbsOpaG8gc8O6Ym9ydSAiCisi4oCeJS4yNTBz4oCcIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGN1cnJlbnQgaW5zdGFsbGVkIGNvbmZmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuaWUgamUgbW/Fvm7DqSB6aXN0acWlIHN0YXYgYWt0dcOhbG5laG8ga29uZmlndXJhxI1uw6lobyBzw7pib3J1IOKAniUuMjUwc+KAnCIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjEyNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiQ29uZmlndXJhdGlvbiBmaWxlIGAlcycsIGRvZXMgbm90IGV4aXN0IG9uIHN5c3RlbS5cbiIKKyJJbnN0YWxsaW5nIG5ldyBjb25maWcgZmlsZSBhcyB5b3UgcmVxdWVzdGVkLlxuIgorbXNnc3RyICIiCisiXG4iCisiS29uZmlndXJhxI1uw70gc8O6Ym9yIOKAniVz4oCcIHYgc3lzdMOpbWUgbmVleGlzdHVqZS5cbiIKKyJJbsWhdGFsdWplIHNhIG5vdsO9IGtvbmZpZ3VyYcSNbsO9IHPDumJvciBwb2TEvmEgdmHFoWVqIHBvxb5pYWRhdmt5LlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTY4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlIG9sZCBiYWNrdXAgJyUuMjUwcyc6ICVzIgorbXNnc3RyICIlczogbmVwb2RhcmlsbyBzYSBvZHN0csOhbmnFpSBzdGFyw7ogesOhbG9odSDigJ4lLjI1MHPigJw6ICVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTc2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVuYW1lICclLjI1MHMnIHRvICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiJXM6IG5lcG9kYXJpbG8gc2EgcHJlbWVub3ZhxaUg4oCeJS4yNTBz4oCcIG5hIOKAniUuMjUwc+KAnDogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW1vdmUgJyUuMjUwcyc6ICVzIgorbXNnc3RyICIlczogbmVwb2RhcmlsbyBzYSB2eWtvbmHFpSDigJ4lLjI1MHPigJw6ICVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTg4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlIG9sZCBkaXN0cmlidXRlZCB2ZXJzaW9uICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiJXM6IG5lcG9kYXJpbG8gc2Egb2RzdHLDoW5pxaUgc3RhcsO6IGRpc3RyaWJ1b3ZhbsO6IHZlcnppdSDigJ4lLjI1MHPigJw6ICVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTkyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlICclLjI1MHMnIChiZWZvcmUgb3ZlcndyaXRlKTogJXMiCittc2dzdHIgIiVzOiBuZXBvZGFyaWxvIHNhIG9kc3Ryw6FuacWlIG9kc3Ryw6FuacWlIOKAniUuMjUwc+KAnCAocHJlZCBwcmVww61zYW7DrW0pOiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE5NgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIGxpbmsgJyUuMjUwcycgdG8gJyUuMjUwcyc6ICVzIgorbXNnc3RyICIlczogbmVwb2RhcmlsbyBzYSBvZHN0csOhbmnFpSB2eXR2b3JpxaUgb2RrYXog4oCeJS4yNTBz4oCcIG5hIOKAniUuMjUwc+KAnDogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoyMDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW5zdGFsbGluZyBuZXcgdmVyc2lvbiBvZiBjb25maWcgZmlsZSAlcyAuLi5cbiIKK21zZ3N0ciAiSW7FoXRhbHVqZSBzYSBub3bDoSB2ZXJ6aWEga29uZmlndXJhxI1uw6lobyBzw7pib3J1ICVzIC4uLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjA2IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo1NDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgYCUuMjUwcycgYXMgYCUuMjUwcyciCittc2dzdHIgIm5pZSBqZSBtb8W+bsOpIGluxaF0YWxvdmHFpSDigJ4lLjI1MHPigJwgYWtvIOKAniUuMjUwc+KAnCIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI1NworIywgYy1mb3JtYXQKK21zZ2lkICJubyBwYWNrYWdlIG5hbWVkIGAlcycgaXMgaW5zdGFsbGVkLCBjYW5ub3QgY29uZmlndXJlIgorbXNnc3RyICJiYWzDrWsgbmF6dmFuw70g4oCeJXPigJwgbmllIGplIG5haW7FoXRhbG92YW7DvSwgbmllIGplIG1vxb5uw6kgaG8ga29uZmlndXJvdmHFpSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI2MAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlICUuMjUwcyBpcyBhbHJlYWR5IGluc3RhbGxlZCBhbmQgY29uZmlndXJlZCIKK21zZ3N0ciAiYmFsw61rICUuMjUwcyBqZSB1xb4gbmFpbsWhdGFsb3ZhbsO9IGEgbmFrb25maWd1cm92YW7DvSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI2MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisicGFja2FnZSAlLjI1MHMgaXMgbm90IHJlYWR5IGZvciBjb25maWd1cmF0aW9uXG4iCisiIGNhbm5vdCBjb25maWd1cmUgKGN1cnJlbnQgc3RhdHVzIGAlLjI1MHMnKSIKK21zZ3N0ciAiIgorImJhbMOtayAlLjI1MHMgbmllIGplIHByaXByYXZlbsO9IG5hIGtvbmZpZ3Vyw6FjaXVcbiIKKyIgbmllIGplIG1vxb5uw6kga29uZmlndXJvdmHFpSAoc8O6xI1hc27DvSBzdGF2IOKAniUuMjUwc+KAnCkiCisKKyM6IHNyYy9jb25maWd1cmUuYzoyOTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IGRlcGVuZGVuY3kgcHJvYmxlbXMgcHJldmVudCBjb25maWd1cmF0aW9uIG9mICVzOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogcHJvYmzDqW15IHNvIHrDoXZpc2xvc8WlYW1pIHphYnLDoW5pbGkga29uZmlndXLDoWNpaSBiYWzDrWthICVzOlxuIgorIiVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6Mjk3Cittc2dpZCAiZGVwZW5kZW5jeSBwcm9ibGVtcyAtIGxlYXZpbmcgdW5jb25maWd1cmVkIgorbXNnc3RyICJwcm9ibMOpbXkgc28gesOhdmlzbG9zxaVhbWkgLSBwbyBuZWNow6F2YSBzYSBuZW5ha29uZmlndXJvdmFuw6kiCisKKyM6IHNyYy9jb25maWd1cmUuYzozMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6ICVzOiBkZXBlbmRlbmN5IHByb2JsZW1zLCBidXQgY29uZmlndXJpbmcgYW55d2F5IGFzIHlvdSByZXF1ZXN0ZWQ6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiAlczogcHJvYmzDqW15IHNvIHrDoXZpc2xvc8WlYW1pLCBuYXByaWVrIHRvbXUgc2Ega29uZmlndXJ1amUgcG9kxL5hIHZhxaFlaiAiCisicG/FvmlhZGF2a3k6XG4iCisiJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzozMDkKK21zZ2lkICIiCisiUGFja2FnZSBpcyBpbiBhIHZlcnkgYmFkIGluY29uc2lzdGVudCBzdGF0ZSAtIHlvdSBzaG91bGRcbiIKKyIgcmVpbnN0YWxsIGl0IGJlZm9yZSBhdHRlbXB0aW5nIGNvbmZpZ3VyYXRpb24uIgorbXNnc3RyICIiCisiQmFsw61rIGplIHZvIHZlxL5taSBuZWtvbnppc3RlbnRub20gc3RhdmUgLSBtYWxpIGJ5IHN0ZSBobyB6bm92YVxuIgorIiBuYWluxaF0YWxvdmHFpSBwcmVkIHBva3Vzb20gbyBqZWhvIGtvbmZpZ3Vyw6FjaXUuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MzEyCisjLCBjLWZvcm1hdAorbXNnaWQgIlNldHRpbmcgdXAgJXMgKCVzKSAuLi5cbiIKK21zZ3N0ciAiTmFzdGF2dWplIHNhIGJhbMOtayAlcyAoJXMpIC4uLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6Mzk2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogdW5hYmxlIHRvIHN0YXQgY29uZmlnIGZpbGUgJyVzJ1xuIgorIiAoPSAnJXMnKTogJXMiCittc2dzdHIgIiIKKyIlczogbmllIGplIG1vxb5uw6kgemlzdGnFpSBzdGF2IGtvbmZpZ3VyYcSNbsOpaG8gc8O6Ym9ydSDigJ4lc+KAnFxuIgorIiAoPSDigJ4lc+KAnCk6ICVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDA5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogY29uZmlnIGZpbGUgJyVzJyBpcyBhIGNpcmN1bGFyIGxpbmtcbiIKKyIgKD0gJyVzJykiCittc2dzdHIgIiIKKyIlczoga29uZmlndXJhxI1uw70gc8O6Ym9yIOKAniVz4oCcIGplIGN5a2xpY2vDvW0gb2RrYXpvbVxuIgorIiAoPSDigJ4lc+KAnCkiCisKKyM6IHNyYy9jb25maWd1cmUuYzo0MTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiB1bmFibGUgdG8gcmVhZGxpbmsgY29uZmZpbGUgJyVzJ1xuIgorIiAoPSAnJXMnKTogJXMiCittc2dzdHIgIiIKKyIlczogbmllIGplIG1vxb5uw6kgdnlrb25hxaUgZnVua2NpdSByZWFkbGluayBuYSBrb25maWd1cmHEjW5vbSBzw7pib3JlIOKAniVz4oCcXG4iCisiICg9IOKAniVz4oCcKTogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzo0NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBjb25mZmlsZSAnJS4yNTBzJyByZXNvbHZlcyB0byBkZWdlbmVyYXRlIGZpbGVuYW1lXG4iCisiICgnJXMnIGlzIGEgc3ltbGluayB0byAnJXMnKSIKK21zZ3N0ciAiIgorIiVzOiBuw6F6b3Yga29uZmlndXJhxI1uw6lobyBzw7pib3J1IOKAniUuMjUwc+KAnCBuaWUgamUgcGxhdG7DvW0gbsOhenZvbVxuIgorIiAo4oCeJXPigJwgamUgc3ltYm9saWNrw70gb2RrYXogbmEg4oCeJXPigJwpIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDYwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBjb25mZmlsZSAnJS4yNTBzJyBpcyBub3QgYSBwbGFpbiBmaWxlIG9yIHN5bWxpbmsgKD0gJyVzJykiCittc2dzdHIgIiIKKyIlczoga29uZmlndXJhxI1uw70gc8O6Ym9yIOKAniUuMjUwc+KAnCBuaWUgamUgc8O6Ym9yIGFuaSBzeW1ib2xpY2vDvSBvZGtheiAoPSDigJ4lc+KAnCkiCisKKyM6IHNyYy9jb25maWd1cmUuYzo0ODYKK21zZ2lkICJtZDVoYXNoIgorbXNnc3RyICJtZDVoYXNoIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDkyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB1bmFibGUgdG8gb3BlbiBjb25mZmlsZSAlcyBmb3IgaGFzaDogJXMiCittc2dzdHIgIiVzOiBuaWUgamUgbW/Fvm7DqSBvdHZvcmnFpSBrb25maWd1cmHEjW7DvSBzw7pib3IgJXMgcHJlIGhhxaE6ICVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6NTIyIHNyYy9jb25maWd1cmUuYzo1MjYKK21zZ2lkICJjb25mZmlsZSBkaWZmZXJlbmNlIHZpc3VhbGl6ZXIiCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjU0MworbXNnaWQgIlR5cGUgYGV4aXQnIHdoZW4geW91J3JlIGRvbmUuXG4iCittc2dzdHIgIlBvIHNrb27EjWVuw60gbmFww63FoXRlIOKAnmV4aXTigJwuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo1NTIgc3JjL2NvbmZpZ3VyZS5jOjU1NgorbXNnaWQgImNvbmZmaWxlIHNoZWxsIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIkNvbmZpZ3VyYXRpb24gZmlsZSBgJXMnIgorbXNnc3RyICIiCisiXG4iCisiS29uZmlndXJhxI1uw70gc8O6Ym9yIOKAniVz4oCcIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjA0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAoYWN0dWFsbHkgYCVzJykiCittc2dzdHIgIiAodiBza3V0b8SNbm9zdGkg4oCeJXPigJwpIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjA4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgPT0+IEZpbGUgb24gc3lzdGVtIGNyZWF0ZWQgYnkgeW91IG9yIGJ5IGEgc2NyaXB0LlxuIgorIiA9PT4gRmlsZSBhbHNvIGluIHBhY2thZ2UgcHJvdmlkZWQgYnkgcGFja2FnZSBtYWludGFpbmVyLlxuIgorbXNnc3RyICIiCisiXG4iCisiID09PiBTw7pib3IgdiBzeXN0w6ltZSBib2wgdnl0dm9yZW7DvSB2YW1pIGFsZWJvIHNrcmlwdG9tLlxuIgorIiA9PT4gU8O6Ym9yIGplIHRpZcW+IHByw610b21uw70gdiBiYWzDrWt1LCBrdG9yw70gcG9za3l0dWplIHNwcsOhdmNhIGJhbMOta2EuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiAgICAgTm90IG1vZGlmaWVkIHNpbmNlIGluc3RhbGxhdGlvbi5cbiIKK21zZ3N0ciAiIgorIlxuIgorIiAgICAgTmV6bWVuZW7DqSBvZCBkb2J5IGluxaF0YWzDoWNpZS5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYxNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiID09PiBNb2RpZmllZCAoYnkgeW91IG9yIGJ5IGEgc2NyaXB0KSBzaW5jZSBpbnN0YWxsYXRpb24uXG4iCittc2dzdHIgIiIKKyJcbiIKKyIgPT0+IFptZW5lbsOpICh2YW1pIGFsZWJvIHNrcmlwdG9tKSBvZCBkb2J5IGluxaF0YWzDoWNpZS5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYxNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiID09PiBEZWxldGVkIChieSB5b3Ugb3IgYnkgYSBzY3JpcHQpIHNpbmNlIGluc3RhbGxhdGlvbi5cbiIKK21zZ3N0ciAiIgorIlxuIgorIiA9PT4gWm1hemFuw6kgKHZhbWkgYWxlYm8gc2tyaXB0b20pIG9kIGRvYnkgaW7FoXRhbMOhY2llLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjE5CisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gUGFja2FnZSBkaXN0cmlidXRvciBoYXMgc2hpcHBlZCBhbiB1cGRhdGVkIHZlcnNpb24uXG4iCittc2dzdHIgIiA9PT4gRGlzdHJpYsO6dG9yIGJhbMOta2EgZG9kYWwgdXByYXZlbsO6IHZlcnppdS5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYyMAorIywgYy1mb3JtYXQKK21zZ2lkICIgICAgIFZlcnNpb24gaW4gcGFja2FnZSBpcyB0aGUgc2FtZSBhcyBhdCBsYXN0IGluc3RhbGxhdGlvbi5cbiIKK21zZ3N0ciAiICAgICBWZXJ6aWEgdiBiYWzDrWt1IGplIHJvdm5ha8OhIGFrbyBwb3NsZWRuw6EgbmFpbsWhdGFsb3ZhbsOhLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjI4CisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gVXNpbmcgbmV3IGZpbGUgYXMgeW91IHJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiID09PiBQb3XFvmlqZSBzYSBub3bDvSBzw7pib3IgcG9kxL5hIHZhxaFlaiBwb8W+aWFkYXZreS5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYzMgorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IFVzaW5nIGN1cnJlbnQgb2xkIGZpbGUgYXMgeW91IHJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiID09PiBQb3XFvmlqZSBzYSBzdGFyw70gc8O6Ym9yIHBvZMS+YSB2YcWhZWogcG/FvmlhZGF2a3kuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBLZWVwaW5nIG9sZCBjb25maWcgZmlsZSBhcyBkZWZhdWx0LlxuIgorbXNnc3RyICIgPT0+IFBvbmVjaMOhIHNhIHN0YXLDvSBrb25maWd1cmHEjW7DvSBzw7pib3IgYWtvIHByZWR2b2xlbsO9LlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gVXNpbmcgbmV3IGNvbmZpZyBmaWxlIGFzIGRlZmF1bHQuXG4iCittc2dzdHIgIiA9PT4gUG91xb5pamUgc2Egbm92w70ga29uZmlndXJhxI1uw70gc8O6Ym9yIGFrbyBwcmVkdm9sZW7DvS5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY1MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiICAgV2hhdCB3b3VsZCB5b3UgbGlrZSB0byBkbyBhYm91dCBpdCA/ICBZb3VyIG9wdGlvbnMgYXJlOlxuIgorIiAgICBZIG9yIEkgIDogaW5zdGFsbCB0aGUgcGFja2FnZSBtYWludGFpbmVyJ3MgdmVyc2lvblxuIgorIiAgICBOIG9yIE8gIDoga2VlcCB5b3VyIGN1cnJlbnRseS1pbnN0YWxsZWQgdmVyc2lvblxuIgorIiAgICAgIEQgICAgIDogc2hvdyB0aGUgZGlmZmVyZW5jZXMgYmV0d2VlbiB0aGUgdmVyc2lvbnNcbiIKKyIgICAgICBaICAgICA6IHN0YXJ0IGEgc2hlbGwgdG8gZXhhbWluZSB0aGUgc2l0dWF0aW9uXG4iCittc2dzdHIgIiIKKyIgICDEjG8gcyB0w71tIGNoY2V0ZSB1cm9iacWlPyAgTW/Fvm7DqSB2b8S+Ynkgc8O6OlxuIgorIiAgICBZIG9yIEkgIDogbmFpbsWhdGFsb3ZhxaUgdmVyeml1IG9kIHNwcsOhdmN1IGJhbMOta2FcbiIKKyIgICAgTiBvciBPICA6IHBvbmVjaGHFpSBtb21lbnTDoWxuZSBuYWluxaF0YWxvdmFuw7ogdmVyeml1XG4iCisiICAgICAgRCAgICAgOiB6b2JyYXppxaUgcm96ZGllbHkgbWVkemkgdmVyemlhbWlcbiIKKyIgICAgICBaICAgICA6IHNwdXN0acWlIHNoZWxsIGEgcHJlc2vDum1hxaUgc2l0dcOhY2l1XG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIFRoZSBkZWZhdWx0IGFjdGlvbiBpcyB0byBrZWVwIHlvdXIgY3VycmVudCB2ZXJzaW9uLlxuIgorbXNnc3RyICIgUHJlZHZvbGVub3Ugb3BlcsOhY2lvdSBqZSBwb25lY2hhbmllIHZhxaFlaiBha3R1w6FsbmVqIHZlcnppZS5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY2MQorIywgYy1mb3JtYXQKK21zZ2lkICIgVGhlIGRlZmF1bHQgYWN0aW9uIGlzIHRvIGluc3RhbGwgdGhlIG5ldyB2ZXJzaW9uLlxuIgorbXNnc3RyICIgUHJlZHZvbGVub3Ugb3BlcsOhY2lvdSBqZSBpbsWhdGFsw6FjaWEgbm92ZWogdmVyemllLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjY2Cittc2dpZCAiW2RlZmF1bHQ9Tl0iCittc2dzdHIgIltwcmVkdm9sZW7DqT1OXSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY2NworbXNnaWQgIltkZWZhdWx0PVldIgorbXNnc3RyICJbcHJlZHZvbGVuw6k9WV0iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NjgKK21zZ2lkICJbbm8gZGVmYXVsdF0iCittc2dzdHIgIltiZXogcHJlZHZvxL5ieV0iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NzEKK21zZ2lkICJlcnJvciB3cml0aW5nIHRvIHN0ZGVyciwgZGlzY292ZXJlZCBiZWZvcmUgY29uZmZpbGUgcHJvbXB0IgorbXNnc3RyICIiCisiY2h5YmEgcHJpIHrDoXBpc2UgbmEgxaF0YW5kYXJkbm9tIGNoeWJvdm9tIHbDvXN0dXBlLCBvYmphdmVuZSBwcmVkIG90w6F6a291IG5hICIKKyJrb25maWd1cmHEjW7DqSBzw7pib3J5IgorCisjOiBzcmMvY29uZmlndXJlLmM6NjgwCittc2dpZCAicmVhZCBlcnJvciBvbiBzdGRpbiBhdCBjb25mZmlsZSBwcm9tcHQiCittc2dzdHIgIiIKKyJjaHliYSBwcmkgxI3DrXRhbsOtIG5hIMWhdGFuZGFyZG5vbSB2c3R1cGUgcHJpIG90w6F6a2UgbmEga29uZmlndXJhxI1uw6kgc8O6Ym9yeSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY4MQorbXNnaWQgIkVPRiBvbiBzdGRpbiBhdCBjb25mZmlsZSBwcm9tcHQiCittc2dzdHIgIkVPRiBuYSDFoXRhbmRhcmRub20gdnN0dXBlIHByaSBvdMOhemtlIG5hIGtvbmZpZ3VyYcSNbsOpIHPDumJvcnkiCisKKyM6IHNyYy9kZXBjb24uYzoxNzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgZGVwZW5kcyBvbiAlcyIKK21zZ3N0ciAiJXMgesOhdmlzw60gbmEgJXMiCisKKyM6IHNyYy9kZXBjb24uYzoxNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcHJlLWRlcGVuZHMgb24gJXMiCittc2dzdHIgIiVzIHByZWQtesOhdmlzw60gbmEgJXMiCisKKyM6IHNyYy9kZXBjb24uYzoxODEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgcmVjb21tZW5kcyAlcyIKK21zZ3N0ciAiJXMgb2Rwb3LDusSNYSAlcyIKKworIzogc3JjL2RlcGNvbi5jOjE4NAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBzdWdnZXN0cyAlcyIKK21zZ3N0ciAiJXMgbmF2cmh1amUgJXMiCisKKyM6IHNyYy9kZXBjb24uYzoxODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgYnJlYWtzICVzIgorbXNnc3RyICIlcyBrYXrDrSAlcyIKKworIzogc3JjL2RlcGNvbi5jOjE5MAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBjb25mbGljdHMgd2l0aCAlcyIKK21zZ3N0ciAiJXMgamUgdiBrb25mbGlrdGUgcyAlcyIKKworIzogc3JjL2RlcGNvbi5jOjE5MworIywgYy1mb3JtYXQKK21zZ2lkICIlcyBlbmhhbmNlcyAlcyIKK21zZ3N0ciAiJXMgcm96xaFpcnVqZSAlcyIKKworIzogc3JjL2RlcGNvbi5jOjI5NgorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyBzYSBvZHN0csOhbmkuXG4iCisKKyM6IHNyYy9kZXBjb24uYzoyOTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdG8gYmUgZGVjb25maWd1cmVkLlxuIgorbXNnc3RyICIgIHpydcWhw60gc2EgbmFzdGF2ZW5pZSAlLjI1MHMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdG8gYmUgaW5zdGFsbGVkLCBidXQgaXMgdmVyc2lvbiAlLjI1MHMuXG4iCittc2dzdHIgIiAgJS4yNTBzIHNhIG5haW7FoXRhbHVqZSwgYWxlIHZvIHZlcnppaSAlLjI1MHMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgaW5zdGFsbGVkLCBidXQgaXMgdmVyc2lvbiAlLjI1MHMuXG4iCittc2dzdHIgIiAgJS4yNTBzIGplIG5haW7FoXRhbG92YW7DvSwgYWxlIHZvIHZlcnppaSAlLjI1MHMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdW5wYWNrZWQsIGJ1dCBoYXMgbmV2ZXIgYmVlbiBjb25maWd1cmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyBqZSByb3piYWxlbsO9LCBhbGUgc2EgZcWhdGUgbmVuYXN0YXZpbC5cbiIKKworIzogc3JjL2RlcGNvbi5jOjMzNworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB1bnBhY2tlZCwgYnV0IGlzIHZlcnNpb24gJS4yNTBzLlxuIgorbXNnc3RyICIgICUuMjUwcyBqZSByb3piYWxlbsO9LCBhbGUgdm8gdmVyemlpICUuMjUwcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjM0MworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBsYXRlc3QgY29uZmlndXJlZCB2ZXJzaW9uIGlzICUuMjUwcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgbmFwb3NsZWR5IG5hc3RhdmVuw6EgdmVyemlhIGplICUuMjUwcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjM1MworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyAlcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgamUgJXMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozODgKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGJ1dCBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyBwb3NreXR1amUgJS4yNTBzLCBhbGUgc2Egb2RzdHLDoW5pLlxuIgorCisjOiBzcmMvZGVwY29uLmM6MzkyCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBidXQgaXMgdG8gYmUgZGVjb25maWd1cmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyBwb3NreXR1amUgJS4yNTBzLCBhbGUgamVobyBuYXN0YXZlbmllIHNhIHpydcWhw60uXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0MDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGJ1dCBpcyAlcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgcG9za3l0dWplICUuMjUwcywgYWxlIGplICVzLlxuIgorCisjOiBzcmMvZGVwY29uLmM6NDE1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIG5vdCBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIG5pZSBqZSBuYWluxaF0YWxvdmFuw70uXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgKHZlcnNpb24gJS4yNTBzKSBpcyB0byBiZSBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzICh2ZXJ6aWEgJS4yNTBzKSBzYSBuYWluxaF0YWx1amUuXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgKHZlcnNpb24gJS4yNTBzKSBpcyBwcmVzZW50IGFuZCAlcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgKHZlcnppYSAlLjI1MHMpIGplIHByw610b21uw6EgYSAlcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjQ5NQorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYW5kIGlzIHRvIGJlIGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMgcG9za3l0dWplICUuMjUwcyBhIGJ1ZGUgc2EgaW7FoXRhbG92YcWlLlxuIgorCisjOiBzcmMvZGVwY29uLmM6NTM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBhbmQgaXMgcHJlc2VudCBhbmQgJXMuXG4iCittc2dzdHIgIiAgJS4yNTBzIHBvc2t5dHVqZSAlLjI1MHMgYSBqZSBwcsOtdG9tbsO9IGEgJXMuXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MAorIywgZnV6enkKKyN8IG1zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IHF1ZXJ5aW5nIHBhY2thZ2VzLiIKK21zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IGRpdmVydGluZyBmaWxlcy4iCittc2dzdHIgIlBvbW9jbsOta2EgbyBkb3B5dG92YW7DrSBzYSBuYSBiYWzDrWt5IHZ5dm9sw6F0ZSBwb21vY291IC0taGVscC4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo2NiBzcmMvc3RhdGNtZC5jOjU3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo4MAorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gJXMgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiRGViaWFuICVzIHZlcnppYSAlcy5cbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjcwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMTAgR3VpbGxlbSBKb3Zlci5cbiIKK21zZ3N0ciAiIgorIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLlxuIgorIkNvcHlyaWdodCAoQykgMjAxMCBHdWlsbGVtIEpvdmVyLlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NzUgc3JjL21haW4uYzo2MyBzcmMvcXVlcnljbWQuYzo2MDMgc3JjL3N0YXRjbWQuYzo2NQorIzogc3JjL3RyaWdjbWQuYzo1NSBkcGtnLWRlYi9tYWluLmM6NTcgZHBrZy1zcGxpdC9tYWluLmM6NTEKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo4OQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvclxuIgorImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LlxuIgorbXNnc3RyICIiCisiVG90byBqZSBzbG9ib2Ruw70gc29mdHbDqXI7IHBvZHJvYm5vc3RpIG8gcG9kbWllbmthY2gga29ww61yb3ZhbmlhXG4iCisibsOhamRldGUgdiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSB2ZXJ6aWUgMiBhbGVibyBuZXNrb3LFoWVqLlxuIgorIk5lcG9za3l0dWplIHNhIMW9SUFETkEgesOhcnVrYS5cbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjg3IHNyYy9tYWluLmM6ODEgc3JjL3F1ZXJ5Y21kLmM6NjE1IHNyYy9zdGF0Y21kLmM6NzcKKyM6IGRwa2ctZGViL21haW4uYzo2OSBkcGtnLXNwbGl0L21haW4uYzo2MyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6OTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSA8Y29tbWFuZD5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIlBvdcW+aXRpZTogJXMgWzx2b8S+YmE+IC4uLl0gPHByw61rYXo+XG4iCisiXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo5MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICBbLS1hZGRdIDxmaWxlPiAgICAgICAgICAgYWRkIGEgZGl2ZXJzaW9uLlxuIgorIiAgLS1yZW1vdmUgPGZpbGU+ICAgICAgICAgIHJlbW92ZSB0aGUgZGl2ZXJzaW9uLlxuIgorIiAgLS1saXN0IFs8Z2xvYi1wYXR0ZXJuPl0gIHNob3cgZmlsZSBkaXZlcnNpb25zLlxuIgorIiAgLS1saXN0cGFja2FnZSA8ZmlsZT4gICAgIHNob3cgd2hhdCBwYWNrYWdlIGRpdmVydHMgdGhlIGZpbGUuXG4iCisiICAtLXRydWVuYW1lIDxmaWxlPiAgICAgICAgcmV0dXJuIHRoZSBkaXZlcnRlZCBmaWxlLlxuIgorIlxuIgorbXNnc3RyICIiCisiUHLDrWthenk6XG4iCisiICBbLS1hZGRdIDxzw7pib3I+ICAgICAgICAgICBwcmlkw6Egb2RrbG9uZW5pZVxuIgorIiAgLS1yZW1vdmUgPHPDumJvcj4gICAgICAgICAgb2RzdHLDoW5pIG9ka2xvbmVuaWVcbiIKKyIgIC0tbGlzdCBbPHZ6b3ItZ2xvYj5dICAgICAgem9icmF6w60gb2RrbG9uZW5pZSBzw7pib3J1XG4iCisiICAtLWxpc3RwYWNrYWdlIDxzw7pib3I+ICAgICB6b2JyYXrDrSBrdG9yw70gYmFsw61rIG9ka2zDocWIYSBzw7pib3JcbiIKKyIgIC0tdHJ1ZW5hbWUgPHPDumJvcj4gICAgICAgIHZyw6F0aSBvZGtsb25lbsO9IHPDumJvclxuIgorIlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MTAwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1wYWNrYWdlIDxwYWNrYWdlPiAgICAgIG5hbWUgb2YgdGhlIHBhY2thZ2Ugd2hvc2UgY29weSBvZiA8ZmlsZT4gd2lsbCAiCisibm90XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiZSBkaXZlcnRlZC5cbiIKKyIgIC0tbG9jYWwgICAgICAgICAgICAgICAgICBhbGwgcGFja2FnZXMnIHZlcnNpb25zIGFyZSBkaXZlcnRlZC5cbiIKKyIgIC0tZGl2ZXJ0IDxkaXZlcnQtdG8+ICAgICB0aGUgbmFtZSB1c2VkIGJ5IG90aGVyIHBhY2thZ2VzJyB2ZXJzaW9ucy5cbiIKKyIgIC0tcmVuYW1lICAgICAgICAgICAgICAgICBhY3R1YWxseSBtb3ZlIHRoZSBmaWxlIGFzaWRlIChvciBiYWNrKS5cbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICBzZXQgdGhlIGRpcmVjdG9yeSB3aXRoIHRoZSBkaXZlcnNpb25zIGZpbGUuXG4iCisiICAtLXRlc3QgICAgICAgICAgICAgICAgICAgZG9uJ3QgZG8gYW55dGhpbmcsIGp1c3QgZGVtb25zdHJhdGUuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgcXVpZXQgb3BlcmF0aW9uLCBtaW5pbWFsIG91dHB1dC5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCittc2dzdHIgIiIKKyJWb8S+Ynk6XG4iCisiICAtLXBhY2thZ2UgPGJhbMOtaz4gICAgICAgICBuw6F6b3YgYmFsw61rYSwga3RvcsOpbXUgc2EgbmVvZGtsb27DrSBrw7NwaWEgIgorIjxzw7pib3J1PlxuIgorIiAgLS1sb2NhbCAgICAgICAgICAgICAgICAgICBvZGtsb25lbsOpIGJ1ZMO6IHbFoWV0a3kgdmVyemllIGJhbMOta2FcbiIKKyIgIC0tZGl2ZXJ0IDxrYW0tb2RrbG9uacWlPiAgIG7DoXpvdiBwb3XFvsOtdmFuw70genZ5xaFuw71taSB2ZXJ6aWFtaSBiYWzDrWthXG4iCisiICAtLXJlbmFtZSAgICAgICAgICAgICAgICAgIHNrdXRvxI1uZSBwcmVzdW5pZSBzw7pib3IgZG8gw7pzdHJhbmlhIChhbGVibyAiCisic3DDpMWlKVxuIgorIiAgLS1hZG1pbmRpciA8YWRyZXPDoXI+ICAgICAgdXLEjcOtIGFkcmVzw6FyIHNvIHPDumJvcm9tIGRpdmVyc2lvbnNcbiIKKyIgIC0tdGVzdCAgICAgICAgICAgICAgICAgICAgbmnEjSBuZXZ5a29uw6F2YSwgbGVuIHNpbXVsdWplXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgIHN0cnXEjW7DvSByZcW+aW0sIG1pbmltw6FsbnkgdsO9c3R1cFxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgICB6b2JyYXrDrSB0b2h0byBwb21vY27DrWthXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgIHpvYnJhesOtIHZlcnppdVxuIgorIlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJXaGVuIGFkZGluZywgZGVmYXVsdCBpcyAtLWxvY2FsIGFuZCAtLWRpdmVydCA8b3JpZ2luYWw+LmRpc3RyaWIuXG4iCisiV2hlbiByZW1vdmluZywgLS1wYWNrYWdlIG9yIC0tbG9jYWwgYW5kIC0tZGl2ZXJ0IG11c3QgbWF0Y2ggaWYgc3BlY2lmaWVkLlxuIgorIlBhY2thZ2UgcHJlaW5zdC9wb3N0cm0gc2NyaXB0cyBzaG91bGQgYWx3YXlzIHNwZWNpZnkgLS1wYWNrYWdlIGFuZCAtLSIKKyJkaXZlcnQuXG4iCittc2dzdHIgIiIKKyJQcmkgcHJpZMOhdmFuw60gamUgcHJlZHZvbGVuw6kgLS1sb2NhbCBhIC0tZGl2ZXJ0IDxvcmlnaW5hbD4uZGlzdHJpYi5cbiIKKyJQcmkgb2RzdHJhxYhvdmFuw60gbXVzw60gYnnFpSB6YWRhbsOpIC0tcGFja2FnZSBhbGVibyAtLWxvY2FsIGEgLS1kaXZlcnQuXG4iCisiUHJlZGluxaF0YWxhxI1uw6kgYSBwb2luxaF0YWxhxI1uw6kgc2tyaXB0eSBieSBtYWxpIHbFvmR5IHBvdcW+w612YcWlIC0tcGFja2FnZVxuIgorImEgLS1kaXZlcnQuXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoxNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2hlY2tpbmcgJyVzJyIKK21zZ3N0ciAiY2h5YmEgcHJpIGtvbnRyb2xlIOKAniVz4oCcIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjAzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJyZW5hbWUgaW52b2x2ZXMgb3ZlcndyaXRpbmcgYCVzJyB3aXRoXG4iCisiICBkaWZmZXJlbnQgZmlsZSBgJXMnLCBub3QgYWxsb3dlZCIKK21zZ3N0ciAiIgorInByZW1lbm92YW5pZSB6bmFtZW7DoSBwcmVww61zYW5pZSDigJ4lc+KAnFxuIgorIiAgc8O6Ym9yb20g4oCeJXPigJwsIMSNbyBuaWUgamUgcG92b2xlbsOpIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjIzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzczCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gd3JpdGUgZmlsZSAnJXMnIgorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgZmlsZSAnJXMnIgorbXNnc3RyICJuaWUgamUgbW/Fvm7DqSB6YXDDrXNhxaUgc8O6Ym9yIOKAniVz4oCcIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjI3Cittc2dpZCAiZmlsZSBjb3B5IgorbXNnc3RyICJrb3DDrXJvdmFuaWUgc8O6Ym9ydSIKKworIzogc3JjL2RpdmVydGNtZC5jOjIzOQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVuYW1lICclcycgdG8gJyVzJyIKK21zZ3N0ciAibmVwb2RhcmlsbyBzYSBwcmVtZW5vdmHFpSDigJ4lc+KAnCBuYSDigJ4lc+KAnCIKKworIzogc3JjL2RpdmVydGNtZC5jOjI1MgorIywgYy1mb3JtYXQKK21zZ2lkICJyZW5hbWU6IHJlbW92ZSBkdXBsaWNhdGUgb2xkIGxpbmsgJyVzJyIKK21zZ3N0ciAicHJlbWVub3ZhbmllOiBvZHN0csOhbmVuaWUgZHVwbGljaXRuw6lobyBzdGFyw6lobyBvZGthenUg4oCeJXPigJwiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyNjIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byBvcGVuIHNvdXJjZSBmaWxlIGAlLjI1MHMnIgorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgY29waWVkIHNvdXJjZSBmaWxlICclcyciCittc2dzdHIgIm5pZSBqZSBtb8W+bsOpIG90dm9yacWlIHpkcm9qb3bDvSBzw7pib3Ig4oCeJS4yNTBz4oCcIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mjg0CisjLCBjLWZvcm1hdAorbXNnaWQgImxvY2FsIGRpdmVyc2lvbiBvZiAlcyIKK21zZ3N0ciAibG9rw6FsbmUgb2RzdW51dGllICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mjg2CisjLCBjLWZvcm1hdAorbXNnaWQgImxvY2FsIGRpdmVyc2lvbiBvZiAlcyB0byAlcyIKK21zZ3N0ciAibG9rw6FsbmUgb2RrbG9uZW5pZSAlcyBuYSAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjI5MAorIywgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnNpb24gb2YgJXMgYnkgJXMiCittc2dzdHIgIm9ka2xvbmVuaWUgJXMgYmFsw61rb20gJXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJzaW9uIG9mICVzIHRvICVzIGJ5ICVzIgorbXNnc3RyICJvZGtsb25lbmllICVzIG5hICVzIGJhbMOta29tICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MzA5CisjLCBjLWZvcm1hdAorbXNnaWQgImFueSBkaXZlcnNpb24gb2YgJXMiCittc2dzdHIgIsS+dWJvdm/Evm7DqSBvZGtsb25lbmllICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MzExCisjLCBjLWZvcm1hdAorbXNnaWQgImFueSBkaXZlcnNpb24gb2YgJXMgdG8gJXMiCittc2dzdHIgIsS+dWJvdm/Evm7DqSBvZGtsb25lbmllICVzIG5hICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MzU3CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBjcmVhdGUgbmV3ICVzIGZpbGUiCittc2dzdHIgIm5lZMOhIHNhIHZ5dHZvcmnFpSBub3bDvSBzw7pib3IgJXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozNzUgc3JjL3N0YXRjbWQuYzoyMTUgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE0MDQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIGZpbGUgJyVzJyIKK21zZ3N0ciAibmllIGplIG1vxb5uw6kgdnlwcsOhemRuacWlIChmbHVzaCkgc8O6Ym9yIOKAniVz4oCcIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MzgyCittc2dpZCAiZXJyb3IgcmVtb3Zpbmcgb2xkIGRpdmVyc2lvbnMtb2xkIgorbXNnc3RyICJjaHliYSBwcmkgb2RzdHJhxYhvdmFuw60gc3RhcsOpaG8gc8O6Ym9ydSBkaXZlcnNpb25zLW9sZCIKKworIzogc3JjL2RpdmVydGNtZC5jOjM4NAorbXNnaWQgImVycm9yIGNyZWF0aW5nIG5ldyBkaXZlcnNpb25zLW9sZCIKK21zZ3N0ciAiY2h5YmEgcHJpIHZ5dHbDoXJhbsOtIG5vdsOpaG8gc8O6Ym9ydSBkaXZlcnNpb25zLW9sZCIKKworIzogc3JjL2RpdmVydGNtZC5jOjM4NgorbXNnaWQgImVycm9yIGluc3RhbGxpbmcgbmV3IGRpdmVyc2lvbnMiCittc2dzdHIgImNoeWJhIHByaSBpbsWhdGFsb3ZhbsOtIG5vdsOpaG8gc8O6Ym9ydSBkaXZlcnNpb25zIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDA2IHNyYy9kaXZlcnRjbWQuYzo1MDMgc3JjL2RpdmVydGNtZC5jOjYxMAorIzogc3JjL2RpdmVydGNtZC5jOjYzMCBzcmMvc3RhdGNtZC5jOjI5MAorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGEgc2luZ2xlIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIHZ5xb5hZHVqZSBqZWRpbsO9IHBhcmFtZXRlciIKKworIzogc3JjL2RpdmVydGNtZC5jOjQwOSBzcmMvZGl2ZXJ0Y21kLmM6NDMwCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGVuYW1lIFwiJXNcIiBpcyBub3QgYWJzb2x1dGUiCittc2dzdHIgIm7DoXpvdiBzw7pib3J1IOKAniVz4oCcIG5pZSBqZSBhYnNvbMO6dG55IgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDExIHNyYy9zdGF0Y21kLmM6MjQ5Cittc2dpZCAiZmlsZSBtYXkgbm90IGNvbnRhaW4gbmV3bGluZXMiCittc2dzdHIgIm7DoXpvdiBzw7pib3J1IG5lbcO0xb5lIG9ic2Fob3ZhxaUgem5ha3kgbm92w6lobyByaWFka2EiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MTgKK21zZ2lkICJDYW5ub3QgZGl2ZXJ0IGRpcmVjdG9yaWVzIgorbXNnc3RyICJBZHJlc8OhcmUgc2EgbmVkYWrDuiBvZGtsb25pxaUiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGRpdmVydCBmaWxlICclcycgdG8gaXRzZWxmIgorbXNnc3RyICJuaWUgamUgbW/Fvm7DqSBvZGtsb25pxaUgc8O6Ym9yIOKAniVz4oCcIG5hIHNlYmEgc2Ftw6lobyIKKworIzogc3JjL2RpdmVydGNtZC5jOjQ1MworIywgYy1mb3JtYXQKK21zZ2lkICJMZWF2aW5nICclcydcbiIKK21zZ3N0ciAiT3DDusWhxaVhIHNhIOKAniVz4oCcXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBjbGFzaGVzIHdpdGggYCVzJyIKK21zZ3N0ciAi4oCeJXPigJwgamUgdiBrb2zDrXppaSBzIOKAniVz4oCcIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDgxCisjLCBjLWZvcm1hdAorbXNnaWQgIkFkZGluZyAnJXMnXG4iCittc2dzdHIgIlByaWTDoXZhIHNhIOKAniVz4oCcXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiTm8gZGl2ZXJzaW9uICclcycsIG5vbmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiT2RrbG9uZW5pZSDigJ4lc+KAnCBuZWV4aXN0dWplLCB0YWvFvmUgc2EgbmVvZHN0csOhbmlsb1xuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTI1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJtaXNtYXRjaCBvbiBkaXZlcnQtdG9cbiIKKyIgIHdoZW4gcmVtb3ZpbmcgYCVzJ1xuIgorIiAgZm91bmQgYCVzJyIKK21zZ3N0ciAiIgorIm5lemhvZGEgdiBrYW0tb2RrbG9uacWlXG4iCisiICBwcmkgb2RzdHJhxYhvdmFuw60g4oCeJXPigJxcbiIKKyIgIG7DoWpkZW7DqSDigJ4lc+KAnCIKKworIzogc3JjL2RpdmVydGNtZC5jOjUzMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisibWlzbWF0Y2ggb24gcGFja2FnZVxuIgorIiAgd2hlbiByZW1vdmluZyBgJXMnXG4iCisiICBmb3VuZCBgJXMnIgorbXNnc3RyICIiCisibmV6aG9kYSB2IGJhbMOta3VcbiIKKyIgIHByaSBvZHN0cmHFiG92YW7DrSDigJ4lc+KAnFxuIgorIiAgbsOhamRlbsOpIOKAniVz4oCcIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTM5CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlbW92aW5nICclcydcbiIKK21zZ3N0ciAiT2RzdHJhxYh1amUgc2Eg4oCeJXPigJxcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjY1NworbXNnaWQgInBhY2thZ2UgbWF5IG5vdCBjb250YWluIG5ld2xpbmVzIgorbXNnc3RyICJuw6F6b3YgYmFsw61rYSBuZW3DtMW+ZSBvYnNhaG92YcWlIHpuYWt5IG5vdsOpaG8gcmlhZGthIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjY2Cittc2dpZCAiZGl2ZXJ0LXRvIG1heSBub3QgY29udGFpbiBuZXdsaW5lcyIKK21zZ3N0ciAia2FtLW9ka2xvbmnFpSBuZW3DtMW+ZSBvYnNhaG92YcWlIHpuYWt5IG5vdsOpaG8gcmlhZGthIgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzo2NAorbXNnaWQgImZhaWxlZCB0byBvcGVuIGRpdmVyc2lvbnMgZmlsZSIKK21zZ3N0ciAiemx5aGFsbyBvdHZvcmVuaWUgc8O6Ym9ydSBzIG9kY2jDvWxrYW1pIgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzo3MQorbXNnaWQgImZhaWxlZCB0byBmc3RhdCBwcmV2aW91cyBkaXZlcnNpb25zIGZpbGUiCittc2dzdHIgInpseWhhbG8gdnlrb25hbmllIGZ1bmtjaWUgZnN0YXQgdSBwcmVkY2jDoWR6YWrDumNlaG8gc8O6Ym9ydSBzIG9kY2jDvWxrYW1pIgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzo3MworbXNnaWQgImZhaWxlZCB0byBmc3RhdCBkaXZlcnNpb25zIGZpbGUiCittc2dzdHIgInpseWhhbG8gdnlrb25hbmllIGZ1bmtjaWUgZnN0YXQgdiBzw7pib3JlIHMgb2RjaMO9bGthbWkiCisKKyM6IHNyYy9kaXZlcnRkYi5jOjExMworIywgYy1mb3JtYXQKK21zZ2lkICJjb25mbGljdGluZyBkaXZlcnNpb25zIGludm9sdmluZyBgJS4yNTBzJyBvciBgJS4yNTBzJyIKK21zZ3N0ciAib2RjaMO9bGt5IOKAniUuMjUwc+KAnCBhbGVibyDigJ4lLjI1MHPigJwgc8O6IHYga29uZmxpa3RlIgorCisjOiBzcmMvZW5xdWlyeS5jOjczCittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgYXJlIGluIGEgbWVzcyBkdWUgdG8gc2VyaW91cyBwcm9ibGVtcyBkdXJpbmdcbiIKKyJpbnN0YWxsYXRpb24uICBUaGV5IG11c3QgYmUgcmVpbnN0YWxsZWQgZm9yIHRoZW0gKGFuZCBhbnkgcGFja2FnZXNcbiIKKyJ0aGF0IGRlcGVuZCBvbiB0aGVtKSB0byBmdW5jdGlvbiBwcm9wZXJseTpcbiIKK21zZ3N0ciAiIgorIk5hc2xlZG92bsOpIGJhbMOta3kgc2EgcG/EjWFzIGluxaF0YWzDoWNpZSBkb3N0YWxpIGRvIHByb2Jsw6ltb3YuIEFieVxuIgorIiB0aWV0byBiYWzDrWt5IChhIHbFoWV0a3kgbmEgbmljaCB6w6F2aXNsw6kpIHByYWNvdmFsaSBzcHLDoXZuZSwgbXVzaWEgYnnFpVxuIgorIiBwcmVpbsWhdGFsb3ZhbsOpOlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjgwCittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgaGF2ZSBiZWVuIHVucGFja2VkIGJ1dCBub3QgeWV0IGNvbmZpZ3VyZWQuXG4iCisiVGhleSBtdXN0IGJlIGNvbmZpZ3VyZWQgdXNpbmcgZHBrZyAtLWNvbmZpZ3VyZSBvciB0aGUgY29uZmlndXJlXG4iCisibWVudSBvcHRpb24gaW4gZHNlbGVjdCBmb3IgdGhlbSB0byB3b3JrOlxuIgorbXNnc3RyICIiCisiTmFzbGVkb3Zuw6kgYmFsw61reSBib2xpIHJvemJhbGVuw6ksIG5lYm9saSBhbGUgZcWhdGUgbmFrb25maWd1cm92YW7DqS5cbiIKKyJBYnkgcHJhY292YWxpLCBtdXNpYSBiecWlIG5ha29uZmlndXJvdmFuw6kgcG9tb2NvdSBwcsOta2F6dSBkcGtnIC0tY29uZmlndXJlXG4iCisiYWxlYm8gdsO9YmVyb20gcG9sb8W+a3kga29uZmlndXLDoWNpYSB2IG1lbnUgZHNlbGVjdHU6XG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6ODcKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgb25seSBoYWxmIGNvbmZpZ3VyZWQsIHByb2JhYmx5IGR1ZSB0byBwcm9ibGVtc1xuIgorImNvbmZpZ3VyaW5nIHRoZW0gdGhlIGZpcnN0IHRpbWUuICBUaGUgY29uZmlndXJhdGlvbiBzaG91bGQgYmUgcmV0cmllZCB1c2luZ1xuIgorImRwa2cgLS1jb25maWd1cmUgPHBhY2thZ2U+IG9yIHRoZSBjb25maWd1cmUgbWVudSBvcHRpb24gaW4gZHNlbGVjdDpcbiIKK21zZ3N0ciAiIgorIk5hc2xlZG92bsOpIGJhbMOta3kgc8O6IGxlbiDEjWlhc3RvxI1uZSBuYWtvbmZpZ3Vyb3ZhbsOpLCBwcmF2ZGVwb2RvYm5lIHogZMO0dm9kdVxuIgorIiBwcm9ibMOpbW92IHBvxI1hcyBpY2ggcHJ2b3RuZWoga29uZmlndXLDoWNpZS4gS29uZmlndXLDoWNpYSBieSBtYWxhIGJ5xaUgIgorInpvcGFrb3ZhbsOhXG4iCisiIHBvdcW+aXTDrW0gZHBrZyAtLWNvbmZpZ3VyZSA8YmFsw61rPiwgYWxlYm8gdsO9YmVyb20gcG9sb8W+a3kga29uZmlndXLDoWNpYSB2ICIKKyJtZW51XG4iCisiIGRzZWxlY3QtdTpcbiIKKworIzogc3JjL2VucXVpcnkuYzo5NAorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBvbmx5IGhhbGYgaW5zdGFsbGVkLCBkdWUgdG8gcHJvYmxlbXMgZHVyaW5nXG4iCisiaW5zdGFsbGF0aW9uLiAgVGhlIGluc3RhbGxhdGlvbiBjYW4gcHJvYmFibHkgYmUgY29tcGxldGVkIGJ5IHJldHJ5aW5nIGl0O1xuIgorInRoZSBwYWNrYWdlcyBjYW4gYmUgcmVtb3ZlZCB1c2luZyBkc2VsZWN0IG9yIGRwa2cgLS1yZW1vdmU6XG4iCittc2dzdHIgIiIKKyJOYXNsZWRvdm7DqSBiYWzDrWt5IHPDuiBsZW4gxI1pYXN0b8SNbmUgbmFpbsWhdGFsb3ZhbsOpLCBwcmF2ZGVwb2RvYm5lIHogZMO0dm9kdVxuIgorIiBwcm9ibMOpbW92IHBvxI1hcyBpbsWhdGFsw6FjaWUuIEluxaF0YWzDoWNpYSBtw7TFvmUgYnnFpSBwcmF2ZGVwb2RvYm5lIGRva29uxI1lbsOhXG4iCisiamVqIG9wYWtvdmFuw61tOyBiYWzDrWt5IG3DtMW+dSBiecWlIG9kc3Ryw6FuZW7DqSBwb3XFvml0w61tIGRzZWxlY3QtdSBhbGVibyBwb21vY291ICIKKyJkcGtnIC0tcmVtb3ZlOlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjEwMQorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBhd2FpdGluZyBwcm9jZXNzaW5nIG9mIHRyaWdnZXJzIHRoYXQgdGhleVxuIgorImhhdmUgYWN0aXZhdGVkIGluIG90aGVyIHBhY2thZ2VzLiAgVGhpcyBwcm9jZXNzaW5nIGNhbiBiZSByZXF1ZXN0ZWQgdXNpbmdcbiIKKyJkc2VsZWN0IG9yIGRwa2cgLS1jb25maWd1cmUgLS1wZW5kaW5nIChvciBkcGtnIC0tdHJpZ2dlcnMtb25seSk6XG4iCittc2dzdHIgIiIKKyJOYXNsZWRvdm7DqSBiYWzDrWt5IG/EjWFrw6F2YWrDuiBzcHJhY292YW5pZSBzcMO6xaHFpWHEjW92ICh0cmlnZ2Vycy1hd2FpdGVkKSwga3RvcsOpXG4iCisiYWt0aXZvdmFsaSB2IGluw71jaCBiYWzDrWtvY2guIFRvdG8gc3ByYWNvdmFuaWUgamUgbW/Fvm5vIHZ5xb5pYWRhxaUgIHBvbW9jb3VcbiIKKyJkc2VsZWN0IGFsZWJvIGRwa2cgLS1jb25maWd1cmUgLS1wZW5kaW5nIChhbGVibyBkcGtnIC0tdHJpZ2dlcnMtb25seSk6XG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTA4Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgaGF2ZSBiZWVuIHRyaWdnZXJlZCwgYnV0IHRoZSB0cmlnZ2VyIHByb2Nlc3NpbmdcbiIKKyJoYXMgbm90IHlldCBiZWVuIGRvbmUuICBUcmlnZ2VyIHByb2Nlc3NpbmcgY2FuIGJlIHJlcXVlc3RlZCB1c2luZ1xuIgorImRzZWxlY3Qgb3IgZHBrZyAtLWNvbmZpZ3VyZSAtLXBlbmRpbmcgKG9yIGRwa2cgLS10cmlnZ2Vycy1vbmx5KTpcbiIKK21zZ3N0ciAiIgorIk5hc2xlZG92bsOpIGJhbMOta3kgYm9saSBzcHVzdGVuw6ksIGFsZSBzcHJhY292YW5pZSBzcMO6xaHFpWHEjW92IGXFoXRlIG5lYm9sb1xuIgorImRva29uxI1lbsOpLiBTcHJhY292YW5pZSBzcMO6xaHFpWHEjW92IGplIG1vxb5ubyB2ecW+aWFkYcWlICBwb21vY291XG4iCisiZHNlbGVjdCBhbGVibyBkcGtnIC0tY29uZmlndXJlIC0tcGVuZGluZyAoYWxlYm8gZHBrZyAtLXRyaWdnZXJzLW9ubHkpOlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjEzNyBzcmMvZW5xdWlyeS5jOjIxMSBzcmMvZW5xdWlyeS5jOjI5MiBzcmMvZW5xdWlyeS5jOjM3MworIzogc3JjL2VucXVpcnkuYzo0NjAgc3JjL3NlbGVjdC5jOjk4IHNyYy9zZWxlY3QuYzoxNjQgc3JjL3RyaWdjbWQuYzoxOTkKKyM6IHNyYy91cGRhdGUuYzo0OCBzcmMvdXBkYXRlLmM6MTEzIGRwa2ctc3BsaXQvcXVldWUuYzoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyB0YWtlcyBubyBhcmd1bWVudHMiCittc2dzdHIgIi0tJXMgbmV2ecW+YWR1amUgYXJndW1lbnR5IgorCisjOiBzcmMvZW5xdWlyeS5jOjE1MgorbXNnaWQgIiIKKyJBbm90aGVyIHByb2Nlc3MgaGFzIGxvY2tlZCB0aGUgZGF0YWJhc2UgZm9yIHdyaXRpbmcsIGFuZCBtaWdodCBjdXJyZW50bHkgYmVcbiIKKyJtb2RpZnlpbmcgaXQsIHNvbWUgb2YgdGhlIGZvbGxvd2luZyBwcm9ibGVtcyBtaWdodCBqdXN0IGJlIGR1ZSB0byB0aGF0LlxuIgorbXNnc3RyICIiCisiSW7DvSBwcm9jZXMgemFta29sIHrDoXBpcyBkbyBkYXRhYsOhenkgYSBqZSBtb8W+bsOpLCDFvmUganUgbW9tZW50w6FsbmUgbWVuw60uXG4iCisiTmlla3RvcsOpIHogbmFzbGVkb3bDvWNoIHByb2Jsw6ltb3YgbcO0xb51IGJ5xaUgc3DDtHNvYmVuw6kgdMO9bS5cbiIKKworIzogc3JjL2VucXVpcnkuYzoxOTEKKyMsIGZ1enp5CisjfCBtc2dpZCAiPHVua25vd24+IgorbXNnY3R4dCAic2VjdGlvbiIKK21zZ2lkICI8dW5rbm93bj4iCittc2dzdHIgIjxuZXpuw6FteT4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MjUxCisjLCBjLWZvcm1hdAorbXNnaWQgIiAlZCBpbiAlczogIgorbXNnc3RyICIlZCB2ICVzOiAiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MjY2CisjLCBjLWZvcm1hdAorbXNnaWQgIiAlZCBwYWNrYWdlLCBmcm9tIHRoZSBmb2xsb3dpbmcgc2VjdGlvbjoiCittc2dpZF9wbHVyYWwgIiAlZCBwYWNrYWdlcywgZnJvbSB0aGUgZm9sbG93aW5nIHNlY3Rpb25zOiIKK21zZ3N0clswXSAiICVkIGJhbMOtaywgeiBuYXNsZWRvdm7DvWNoIHNla2Npw606IgorbXNnc3RyWzFdICIgJWQgYmFsw61reSwgeiBuYXNsZWRvdm7DvWNoIHNla2Npw606IgorbXNnc3RyWzJdICIgJWQgYmFsw61rb3YsIHogbmFzbGVkb3Zuw71jaCBzZWtjacOtOiIKKworIzogc3JjL2VucXVpcnkuYzozMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlZlcnNpb24gb2YgZHBrZyB3aXRoIHdvcmtpbmcgJXMgc3VwcG9ydCBub3QgeWV0IGNvbmZpZ3VyZWQuXG4iCisiIFBsZWFzZSB1c2UgJ2Rwa2cgLS1jb25maWd1cmUgZHBrZycsIGFuZCB0aGVuIHRyeSBhZ2Fpbi5cbiIKK21zZ3N0ciAiIgorIlZlcnppYSBkcGtnIHMgZnVuZ3Vqw7pjb3UgcG9kcG9yb3UgJXMgZcWhdGUgbmllIGplIG5ha29uZmlndXJvdmFuw6EuXG4iCisiIFBvdcW+aXRlIHByb3PDrW0g4oCeZHBrZyAtLWNvbmZpZ3VyZSBkcGtn4oCcIGEgc2vDunN0ZSB0byB6bm92YS5cbiIKKworIzogc3JjL2VucXVpcnkuYzozMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZyBub3QgcmVjb3JkZWQgYXMgaW5zdGFsbGVkLCBjYW5ub3QgY2hlY2sgZm9yICVzIHN1cHBvcnQhXG4iCittc2dzdHIgIiIKKyJkcGtnIG5pZSBqZSB1dmVkZW7DqSBha28gbmFpbsWhdGFsb3ZhbsOpLCBuaWUgamUgbW/Fvm7DqSBza29udHJvbG92YcWlIHBvZHBvcnUgIgorIiVzIVxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjMyMQorbXNnaWQgIlByZS1EZXBlbmRzIGZpZWxkIgorbXNnc3RyICJwb2xlIFByZS1EZXBlbmRzIgorCisjOiBzcmMvZW5xdWlyeS5jOjMyOQorbXNnaWQgImVwb2NoIgorbXNnc3RyICJlcG9jaCIKKworIzogc3JjL2VucXVpcnkuYzozMzcKK21zZ2lkICJsb25nIGZpbGVuYW1lcyIKK21zZ3N0ciAiZGxow6kgbsOhenZ5IHPDumJvcm92IgorCisjOiBzcmMvZW5xdWlyeS5jOjM0NgorbXNnaWQgIm11bHRpcGxlIENvbmZsaWN0cyBhbmQgUmVwbGFjZXMiCittc2dzdHIgInZpYWNlcsOpIENvbmZsaWN0cyBhIFJlcGxhY2VzIgorCisjOiBzcmMvZW5xdWlyeS5jOjQzNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogY2Fubm90IHNlZSBob3cgdG8gc2F0aXNmeSBwcmUtZGVwZW5kZW5jeTpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorImRwa2c6IG5pZSBqZSBtb8W+bsOpIHVyxI1pxaUgYWtvIHVzcG9rb2ppxaUgcHJlZC16w6F2aXNsb3N0aTpcbiIKKyIgJXNcbiIKKworIzogc3JjL2VucXVpcnkuYzo0MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHNhdGlzZnkgcHJlLWRlcGVuZGVuY2llcyBmb3IgJS4yNTBzICh3YW50ZWQgZHVlIHRvICUuMjUwcykiCittc2dzdHIgIiIKKyJuaWUgamUgbW/Fvm7DqSB2eXJpZcWhacWlIHByZWQtesOhdmlzbG9zdGkgcHJlICUuMjUwcyAodnnFvmFkb3ZhbsOpIHByZSAlLjI1MHMpIgorCisjOiBzcmMvZW5xdWlyeS5jOjQ3MgorIywgYy1mb3JtYXQKK21zZ2lkICJvYnNvbGV0ZSBvcHRpb24gJy0tJXMnLCBwbGVhc2UgdXNlICctLSVzJyBpbnN0ZWFkLiIKK21zZ3N0ciAiemFzdGFyYWzDoSB2b8S+YmEg4oCeLS0lc+KAnCwgcHJvc8OtbSBwb3XFvml0ZSBuYW1pZXN0byBuZWog4oCeLS0lc+KAnC4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6NTE5Cittc2dpZCAiIgorIi0tY29tcGFyZS12ZXJzaW9ucyB0YWtlcyB0aHJlZSBhcmd1bWVudHM6IDx2ZXJzaW9uPiA8cmVsYXRpb24+IDx2ZXJzaW9uPiIKK21zZ3N0ciAiLS1jb21wYXJlLXZlcnNpb25zIHZ5xb5hZHVqZSB0cmkgYXJndW1lbnR5OiA8dmVyemlhPiA8dnrFpWFoPiA8dmVyemlhPiIKKworIzogc3JjL2VucXVpcnkuYzo1MjQKK21zZ2lkICItLWNvbXBhcmUtdmVyc2lvbnMgYmFkIHJlbGF0aW9uIgorbXNnc3RyICItLWNvbXBhcmUtdmVyc2lvbnMgemzDoSByZWzDoWNpYSIKKworIzogc3JjL2VucXVpcnkuYzo1Mjkgc3JjL2VucXVpcnkuYzo1MzEgc3JjL2VucXVpcnkuYzo1NDAgc3JjL2VucXVpcnkuYzo1NDIKKyMsIGMtZm9ybWF0Cittc2dpZCAidmVyc2lvbiAnJXMnIGhhcyBiYWQgc3ludGF4OiAlcyIKK21zZ3N0ciAidmVyemlhIOKAniVz4oCcIG3DoSBjaHlibsO6IHN5bnRheDogJXMiCisKKyM6IHNyYy9lcnJvcnMuYzo2MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IGVycm9yIHByb2Nlc3NpbmcgJXMgKC0tJXMpOlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisiJXM6IGNoeWJhIHByaSBzcHJhY292w6F2YW7DrSAlcyAoLS0lcyk6XG4iCisiICVzXG4iCisKKyM6IHNyYy9lcnJvcnMuYzo2OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgImRwa2c6IGZhaWxlZCB0byBhbGxvY2F0ZSBtZW1vcnkgZm9yIG5ldyBlbnRyeSBpbiBsaXN0IG9mIGZhaWxlZCBwYWNrYWdlcy4iCittc2dpZCAiIgorIiVzOiBmYWlsZWQgdG8gYWxsb2NhdGUgbWVtb3J5IGZvciBuZXcgZW50cnkgaW4gbGlzdCBvZiBmYWlsZWQgcGFja2FnZXM6ICVzIgorbXNnc3RyICIiCisiZHBrZzogemx5aGFsbyBhbG9rb3ZhbmllIHBhbcOkdGUgcHJlIG5vdsO6IHBvbG/Fvmt1IHYgem96bmFtZSBiYWzDrWtvdixcbiIKKyIga3RvcsO9Y2ggaW7FoXRhbMOhY2lhIHNhIG5lcG9kYXJpbGEuIgorCisjOiBzcmMvZXJyb3JzLmM6NzkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImRwa2c6IHRvbyBtYW55IGVycm9ycywgc3RvcHBpbmdcbiIKK21zZ2lkICIlczogdG9vIG1hbnkgZXJyb3JzLCBzdG9wcGluZ1xuIgorbXNnc3RyICJkcGtnOiBwcsOtbGnFoSB2ZcS+YSBjaMO9YiwgdWtvbsSNdWplIHNhXG4iCisKKyM6IHNyYy9lcnJvcnMuYzo4NworbXNnaWQgIkVycm9ycyB3ZXJlIGVuY291bnRlcmVkIHdoaWxlIHByb2Nlc3Npbmc6XG4iCittc2dzdHIgIlZ5c2t5dGxpIHNhIGNoeWJ5IHBvxI1hcyBzcHJhY292YW5pYTpcbiIKKworIzogc3JjL2Vycm9ycy5jOjk0Cittc2dpZCAiUHJvY2Vzc2luZyB3YXMgaGFsdGVkIGJlY2F1c2UgdGhlcmUgd2VyZSB0b28gbWFueSBlcnJvcnMuXG4iCittc2dzdHIgIlNwcmFjb3ZhbmllIGJvbG8gemFzdGF2ZW7DqSwgcHJldG/FvmUgc2Egdnlza3l0bG8gcHLDrWxpxaEgdmXEvmEgY2jDvWIuXG4iCisKKyM6IHNyYy9lcnJvcnMuYzoxMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSAlcyB3YXMgb24gaG9sZCwgcHJvY2Vzc2luZyBpdCBhbnl3YXkgYXMgeW91IHJlcXVlc3RlZFxuIgorbXNnc3RyICIiCisiQmFsw61rICVzIGJvbCB2IHN0YXZlIHBvZHLFvmFuw70sIG5hcHJpZWsgdG9tdSBzYSB2eWtvbmFuw6Egb3BlcsOhY2lhLCBrdG9yw7ogc3RlICIKKyJwb8W+YWRvdmFsaVxuIgorCisjOiBzcmMvZXJyb3JzLmM6MTA5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJQYWNrYWdlICVzIGlzIG9uIGhvbGQsIG5vdCB0b3VjaGluZyBpdC4gIFVzZSAtLWZvcmNlLWhvbGQgdG8gb3ZlcnJpZGUuXG4iCittc2dzdHIgIiIKKyJCYWzDrWsgJXMgamUgdiBzdGF2ZSBwb2Ryxb5hbsO9LCBwb25lY2jDoXZhIHNhLiBQb3XFvml0ZSAtLWZvcmNlLWhvbGQgbmEgIgorInByZWtvbmFuaWUuXG4iCisKKyM6IHNyYy9lcnJvcnMuYzoxMTkKK21zZ2lkICJvdmVycmlkaW5nIHByb2JsZW0gYmVjYXVzZSAtLWZvcmNlIGVuYWJsZWQ6IgorbXNnc3RyICJwcmVrb27DoXZhIHNhIHByb2Jsw6ltLCBwcmV0b8W+ZSBqZSBuYXN0YXZlbsOpIC0tZm9yY2U6ICIKKworIzogc3JjL2ZpbGVzZGIuYzozMDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlIGAlLjI1MHMnIgorbXNnc3RyICJuaWUgamUgbW/Fvm7DqSBvdHZvcmnFpSB6b3puYW0gc8O6Ym9yb3YgYmFsw61rYSDigJ4lLjI1MHPigJwiCisKKyM6IHNyYy9maWxlc2RiLmM6MzExCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcycgbWlzc2luZywgYXNzdW1pbmcgcGFja2FnZSBoYXMgbm8gZmlsZXMgIgorImN1cnJlbnRseSBpbnN0YWxsZWQuIgorbXNnc3RyICIiCisiem96bmFtIHPDumJvcm92IGJhbMOta2Eg4oCeJS4yNTBz4oCcIGNow71iYSwgcHJlZHBva2xhZMOhIHNhLCDFvmUgYmFsw61rIG5lbcOhICIKKyJuYWluxaF0YWxvdmFuw6kgxb5pYWRuZSBzw7pib3J5LiIKKworIzogc3JjL2ZpbGVzZGIuYzozMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICclLjI1MHMnIgorbXNnc3RyICJuaWUgamUgbW/Fvm7DqSB6aXN0acWlIHN0YXYgc8O6Ym9ydSBzbyB6b3puYW0gc8O6Ym9yb3YgYmFsw61rYSDigJ4lLjI1MHPigJwiCisKKyM6IHNyYy9maWxlc2RiLmM6MzMwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlcyBsaXN0IGZvciBwYWNrYWdlIGAlLjI1MHMnIgorbXNnaWQgInJlYWRpbmcgZmlsZXMgbGlzdCBmb3IgcGFja2FnZSAnJS4yNTBzJyIKK21zZ3N0ciAiem96bmFtIHPDumJvcm92IGJhbMOta2Eg4oCeJS4yNTBz4oCcIgorCisjOiBzcmMvZmlsZXNkYi5jOjMzNgorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJyUuMjUwcycgaXMgbWlzc2luZyBmaW5hbCBuZXdsaW5lIgorbXNnc3RyICJ2IHpvem5hbWUgc8O6Ym9yb3YgYmFsw61rYSDigJ4lLjI1MHPigJwgY2jDvWJhIG5hIGtvbmNpIHpuYWsgbm92w6lobyByaWFka2EiCisKKyM6IHNyYy9maWxlc2RiLmM6MzQ0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSBgJS4yNTBzJyBjb250YWlucyBlbXB0eSBmaWxlbmFtZSIKK21zZ3N0ciAiem96bmFtIHPDumJvcm92IGJhbMOta2Eg4oCeJS4yNTBz4oCcIG9ic2FodWplIHByw6F6ZG55IG7DoXpvdiBzw7pib3J1IgorCisjOiBzcmMvZmlsZXNkYi5jOjM1MgorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSBgJS4yNTBzJyIKK21zZ3N0ciAiY2h5YmEgcHJpIHphdHbDoXJhbsOtIHpvem5hbXUgc8O6Ym9yb3YgYmFsw61rYSDigJ4lLjI1MHPigJwiCisKKyM6IHNyYy9maWxlc2RiLmM6NDYyCittc2dpZCAiKFJlYWRpbmcgZGF0YWJhc2UgLi4uICIKK21zZ3N0ciAiKMSMw610YSBzYSBkYXRhYsOhemEgLi4uICIKKworIzogc3JjL2ZpbGVzZGIuYzo0ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJWQgZmlsZSBvciBkaXJlY3RvcnkgY3VycmVudGx5IGluc3RhbGxlZC4pXG4iCittc2dpZF9wbHVyYWwgIiVkIGZpbGVzIGFuZCBkaXJlY3RvcmllcyBjdXJyZW50bHkgaW5zdGFsbGVkLilcbiIKK21zZ3N0clswXSAibW9tZW50w6FsbmUgamUgbmFpbsWhdGFsb3ZhbsO9ICVkIHPDumJvciBhbGVibyBhZHJlc8Ohci5cbiIKK21zZ3N0clsxXSAibW9tZW50w6FsbmUgc8O6IG5haW7FoXRhbG92YW7DqSAlZCBzw7pib3J5IGFsZWJvIGFkcmVzw6FyZS5cbiIKK21zZ3N0clsyXSAibW9tZW50w6FsbmUgamUgbmFpbsWhdGFsb3ZhbsO9Y2ggJWQgc8O6Ym9yb3YgYWxlYm8gYWRyZXPDoXJvdi5cbiIKKworIzogc3JjL2ZpbGVzZGIuYzo1MTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAibmllIGplIG1vxb5uw6kgdnl0dm9yacWlIGFrdHVhbGl6b3ZhbsO9IHpvem5hbSBzw7pib3JvdiBiYWzDrWthICVzIgorCisjOiBzcmMvZmlsZXNkYi5jOjUyNgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgdG8gdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgInpseWhhbCB6w6FwaXMgYWt0dWFsaXpvdmFuw6lobyB6b3puYW11IHPDumJvcm92IGJhbMOta2EgJXMiCisKKyM6IHNyYy9maWxlc2RiLmM6NTI4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBmbHVzaCB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAiemx5aGFsbyB2eXByw6F6ZG5lbmllIGFrdHVhbGl6b3ZhbsOpaG8gem96bmFtdSBzw7pib3JvdiBiYWzDrWthICVzIgorCisjOiBzcmMvZmlsZXNkYi5jOjUzMAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gc3luYyB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAiemx5aGFsYSBzeW5jaHJvbml6w6FjaWEgYWt0dWFsaXpvdmFuw6lobyB6b3puYW11IHPDumJvcm92IGJhbMOta2EgJXMiCisKKyM6IHNyYy9maWxlc2RiLmM6NTMzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjbG9zZSB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAiemx5aGFsbyB1emF2cmV0aWUgYWt0dWFsaXpvdmFuw6lobyB6b3puYW11IHPDumJvcm92IGJhbMOta2EgJXMiCisKKyM6IHNyYy9maWxlc2RiLmM6NTM1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBpbnN0YWxsIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICJ6bHloYWxhIGluxaF0YWzDoWNpYSBha3R1YWxpem92YW7DqWhvIHpvem5hbXUgc8O6Ym9yb3YgYmFsw61rYSAlcyIKKworIzogc3JjL2hlbHAuYzo0OAorbXNnaWQgIm5vdCBpbnN0YWxsZWQiCittc2dzdHIgIm5lbmFpbsWhdGFsb3ZhbsO9IgorCisjOiBzcmMvaGVscC5jOjQ5Cittc2dpZCAibm90IGluc3RhbGxlZCBidXQgY29uZmlncyByZW1haW4iCittc2dzdHIgIm5lbmFpbsWhdGFsb3ZhbsOpLCBhbGUga29uZmlndXJhxI1uw6kgc8O6Ym9yeSB6YWNob3ZhbsOpIgorCisjOiBzcmMvaGVscC5jOjUwCittc2dpZCAiYnJva2VuIGR1ZSB0byBmYWlsZWQgcmVtb3ZhbCBvciBpbnN0YWxsYXRpb24iCittc2dzdHIgInBva2F6ZW7DvSB6IGTDtHZvZHUgY2h5YnkgcHJpIG9kc3RyYcWIb3ZhbsOtIGFsZWJvIGluxaF0YWzDoWNpaSIKKworIzogc3JjL2hlbHAuYzo1MQorbXNnaWQgInVucGFja2VkIGJ1dCBub3QgY29uZmlndXJlZCIKK21zZ3N0ciAicm96YmFsZW7DvSBhbGUgbmVuYWtvbmZpZ3Vyb3ZhbsO9IgorCisjOiBzcmMvaGVscC5jOjUyCittc2dpZCAiYnJva2VuIGR1ZSB0byBwb3N0aW5zdCBmYWlsdXJlIgorbXNnc3RyICJwb2themVuw70geiBkw7R2b2R1IGNoeWJ5IHYgcG9zdGluc3QiCisKKyM6IHNyYy9oZWxwLmM6NTMKK21zZ2lkICJhd2FpdGluZyB0cmlnZ2VyIHByb2Nlc3NpbmcgYnkgYW5vdGhlciBwYWNrYWdlIgorbXNnc3RyICLEjWFrw6Egc2EgbmEgc3ByYWNvdmFuaWUgc3DDusWhxaVhxI1vdiBpbsO9bSBiYWzDrWtvbSAodHJpZ2dlcnMtYXdhaXRlZCkiCisKKyM6IHNyYy9oZWxwLmM6NTQKK21zZ2lkICJ0cmlnZ2VyZWQiCittc2dzdHIgInNwdXN0ZW7DqSIKKworIzogc3JjL2hlbHAuYzo1NQorbXNnaWQgImluc3RhbGxlZCIKK21zZ3N0ciAiaW7FoXRhbG92YW7DvSIKKworIzogc3JjL2hlbHAuYzoxMDcKKyMsIGZ1enp5CisjfCBtc2dpZCAiZXJyb3I6IFBBVEggaXMgbm90IHNldC4iCittc2dpZCAiUEFUSCBpcyBub3Qgc2V0LiIKK21zZ3N0ciAiY2h5YmE6IHByZW1lbm7DoSBQQVRIIG5pZSBqZSBuYXN0YXZlbsOhLiIKKworIzogc3JjL2hlbHAuYzoxMjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS4iCittc2dzdHIgIuKAniVz4oCcIG5lYm9sIG7DoWpkZW7DvSB2IHByZW1lbm5laiBQQVRIIGFsZWJvIG5pZSBqZSBzcHVzdGl0ZcS+bsO9LiIKKworIzogc3JjL2hlbHAuYzoxMzgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiclcycgbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuIgorbXNnaWQgIiIKKyIlZCBleHBlY3RlZCBwcm9ncmFtIG5vdCBmb3VuZCBpbiBQQVRIIG9yIG5vdCBleGVjdXRhYmxlLlxuIgorIiVzIgorbXNnaWRfcGx1cmFsICIiCisiJWQgZXhwZWN0ZWQgcHJvZ3JhbXMgbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuXG4iCisiJXMiCittc2dzdHJbMF0gIuKAniVz4oCcIG5lYm9sIG7DoWpkZW7DvSB2IHByZW1lbm5laiBQQVRIIGFsZWJvIG5pZSBqZSBzcHVzdGl0ZcS+bsO9LiIKK21zZ3N0clsxXSAi4oCeJXPigJwgbmVib2wgbsOhamRlbsO9IHYgcHJlbWVubmVqIFBBVEggYWxlYm8gbmllIGplIHNwdXN0aXRlxL5uw70uIgorbXNnc3RyWzJdICLigJ4lc+KAnCBuZWJvbCBuw6FqZGVuw70gdiBwcmVtZW5uZWogUEFUSCBhbGVibyBuaWUgamUgc3B1c3RpdGXEvm7DvS4iCisKKyM6IHNyYy9oZWxwLmM6MTQxCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICIlZCBleHBlY3RlZCBwcm9ncmFtIG5vdCBmb3VuZCBpbiBQQVRIIG9yIG5vdCBleGVjdXRhYmxlLlxuIgorI3wgIk5COiByb290J3MgUEFUSCBzaG91bGQgdXN1YWxseSBjb250YWluIC91c3IvbG9jYWwvc2JpbiwgL3Vzci9zYmluIGFuZCAvIgorI3wgInNiaW4uIgorI3wgbXNnaWRfcGx1cmFsICIiCisjfCAiJWQgZXhwZWN0ZWQgcHJvZ3JhbXMgbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuXG4iCisjfCAiTkI6IHJvb3QncyBQQVRIIHNob3VsZCB1c3VhbGx5IGNvbnRhaW4gL3Vzci9sb2NhbC9zYmluLCAvdXNyL3NiaW4gYW5kIC8iCisjfCAic2Jpbi4iCittc2dpZCAiIgorIk5vdGU6IHJvb3QncyBQQVRIIHNob3VsZCB1c3VhbGx5IGNvbnRhaW4gL3Vzci9sb2NhbC9zYmluLCAvdXNyL3NiaW4gYW5kIC8iCisic2Jpbi4iCittc2dzdHIgIiIKKyIlZCBvxI1ha8OhdmFuw70gcHJvZ3JhbSBuZW7DoWpkZW7DvSB2IHByZW1lbm5laiBQQVRILlxuIgorIk5COiBwcmVtZW5uw6EgUEFUSCBwb3XFvsOtdmF0ZcS+YSByb290IGJ5IG1hbGEgb2JzYWhvdmHFpSAvdXNyL2xvY2FsL3NiaW4sIC91c3IvIgorInNiaW4gYSAvc2Jpbi4iCisKKyM6IHNyYy9oZWxwLmM6MTg4Cittc2dpZCAiYWRtaW5kaXIgbXVzdCBiZSBpbnNpZGUgaW5zdGRpciBmb3IgZHBrZyB0byB3b3JrIHByb3Blcmx5IgorbXNnc3RyICIiCisKKyM6IHNyYy9oZWxwLmM6MTkwIHNyYy9tYWluLmM6NzQ3CisjLCBmdXp6eQorI3wgbXNnaWQgInVuYWJsZSB0byBzZXRlbnYgZm9yIG1haW50YWluZXIgc2NyaXB0IgorbXNnaWQgInVuYWJsZSB0byBzZXRlbnYgZm9yIHN1YnByb2Nlc3NlcyIKK21zZ3N0ciAibmllIGplIG1vxb5uw6kgbmFzdGF2acWlIHByZW1lbm7DuiBwcm9zdHJlZGlhIHByZSBza3JpcHQgw7pkcsW+YnkiCisKKyM6IHNyYy9oZWxwLmM6MTkyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjaHJvb3QgdG8gYCUuMjUwcyciCittc2dzdHIgInpseWhhbG8gdnlrb25hbmllIGZ1bmtjaWUgY2hyb290IG5hIOKAniUuMjU1c+KAnCIKKworIzogc3JjL2hlbHAuYzoxOTQgZHBrZy1kZWIvYnVpbGQuYzo0NTUgZHBrZy1kZWIvYnVpbGQuYzo0NTcKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTM2IGRwa2ctZGViL2J1aWxkLmM6NTU4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byBgJS4yNTVzJyIKK21zZ3N0ciAibmllIGplIG1vxb5uw6kgem1lbmnFpSBhZHJlc8OhciBuYSDigJ4lLjI1NXPigJwiCisKKyM6IHNyYy9oZWxwLmM6MjU2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgZXhlY3V0ZSBwZXJtaXNzaW9ucyBvbiBgJS4yNTBzJyIKK21zZ3N0ciAibmllIGplIG1vxb5uw6kgbmFzdGF2acWlIHByw6F2YSBuYSBzcHVzdGVuaWUgbmEg4oCeJS4yNTBz4oCcIgorCisjOiBzcmMvaGVscC5jOjI3NgorbXNnaWQgInVuYWJsZSB0byBzZXRlbnYgZm9yIG1haW50YWluZXIgc2NyaXB0IgorbXNnc3RyICJuaWUgamUgbW/Fvm7DqSBuYXN0YXZpxaUgcHJlbWVubsO6IHByb3N0cmVkaWEgcHJlIHNrcmlwdCDDumRyxb5ieSIKKworIzogc3JjL2hlbHAuYzozMDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW5zdGFsbGVkICVzIHNjcmlwdCIKK21zZ3N0ciAibmFpbsWhdGFsb3ZhbsO9IHNrcmlwdCAlcyIKKworIzogc3JjL2hlbHAuYzozMTMgc3JjL2hlbHAuYzozODIgc3JjL2hlbHAuYzo0NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgJXMgYCUuMjUwcyciCittc2dzdHIgIm5pZSBqZSBtb8W+bsOpIHppc3RpxaUgc3RhdiAlcyDigJ4lLjI1MHPigJwiCisKKyM6IHNyYy9oZWxwLmM6MzY4IHNyYy9oZWxwLmM6NDI4CisjLCBjLWZvcm1hdAorbXNnaWQgIm5ldyAlcyBzY3JpcHQiCittc2dzdHIgIm5vdsO9IHNrcmlwdCAlcyIKKworIzogc3JjL2hlbHAuYzo0MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAib2xkICVzIHNjcmlwdCIKK21zZ3N0ciAic3RhcsO9ICVzIHNrcmlwdCIKKworIzogc3JjL2hlbHAuYzo0MTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgJXMgJyUuMjUwcyc6ICVzIgorbXNnc3RyICJuaWUgamUgbW/Fvm7DqSB6aXN0acWlIHN0YXYgJXMg4oCeJS4yNTBz4oCcOiAlcyIKKworIzogc3JjL2hlbHAuYzo0MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZyAtIHRyeWluZyBzY3JpcHQgZnJvbSB0aGUgbmV3IHBhY2thZ2UgaW5zdGVhZCAuLi5cbiIKK21zZ3N0ciAiZHBrZyAtIHNrw7rFoWEgc2EgcmFkxaFlaiBza3JpcHQgeiBub3bDqWhvIGJhbMOta2EgLi4uXG4iCisKKyM6IHNyYy9oZWxwLmM6NDM5Cittc2dpZCAidGhlcmUgaXMgbm8gc2NyaXB0IGluIHRoZSBuZXcgdmVyc2lvbiBvZiB0aGUgcGFja2FnZSAtIGdpdmluZyB1cCIKK21zZ3N0ciAidiBub3ZlaiB2ZXJ6aWkgYmFsw61rYSBuaWUgamUgxb5pYWRlbiBza3JpcHQgLSB1a29uxI11amUgc2EiCisKKyM6IHNyYy9oZWxwLmM6NDQ1CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IC4uLiBpdCBsb29rcyBsaWtlIHRoYXQgd2VudCBPSy5cbiIKK21zZ3N0ciAiZHBrZzogLi4uIHZ5emVyw6EgdG8gdGFrLCDFvmUgc2EgdG8gcG9kYXJpbG8uXG4iCisKKyM6IHNyYy9oZWxwLmM6NjE2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWN1cmVseSByZW1vdmUgJyUuMjU1cyciCittc2dzdHIgIm5lZMOhIHNhIGJlenBlxI1uZSBvZHN0csOhbmnFpSDigJ4lLjI1NXPigJwiCisKKyM6IHNyYy9oZWxwLmM6NjIxIGRwa2ctZGViL2luZm8uYzo2NSBkcGtnLWRlYi9pbmZvLmM6NjcKK21zZ2lkICJybSBjb21tYW5kIGZvciBjbGVhbnVwIgorbXNnc3RyICIiCisKKyM6IHNyYy9pbmZvZGIuYzo1MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hlY2sgZXhpc3RlbmNlIG9mIGAlLjI1MHMnIgorbXNnc3RyICJuaWUgamUgbW/Fvm7DqSBza29udHJvbG92YcWlIGV4aXN0ZW5jaXUg4oCeJS4yNTBz4oCcIgorCisjOiBzcmMvaW5mb2RiLmM6NzAKK21zZ2lkICJjYW5ub3QgcmVhZCBpbmZvIGRpcmVjdG9yeSIKK21zZ3N0ciAibmVkw6Egc2EgcHJlxI3DrXRhxaUgaW5mb3Jtw6FjaWEgbyBhZHJlc8OhcmkiCisKKyM6IHNyYy9tYWluLmM6NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuIGAlcycgcGFja2FnZSBtYW5hZ2VtZW50IHByb2dyYW0gdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiRGViaWFuIOKAniVz4oCcIHByb2dyYW0gbmEgw7pkcsW+YnUgYmFsw61rb3YsIHZlcnppYSAlcy5cbiIKKworIzogc3JjL21haW4uYzo4NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtaXwtLWluc3RhbGwgICAgICAgPC5kZWIgZmlsZSBuYW1lPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyZWN0b3J5PiAuLi5cbiIKKyIgIC0tdW5wYWNrICAgICAgICAgICA8LmRlYiBmaWxlIG5hbWU+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXJlY3Rvcnk+IC4uLlxuIgorIiAgLUF8LS1yZWNvcmQtYXZhaWwgIDwuZGViIGZpbGUgbmFtZT4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRpcmVjdG9yeT4gLi4uXG4iCisiICAtLWNvbmZpZ3VyZSAgICAgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLS10cmlnZ2Vycy1vbmx5ICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC1yfC0tcmVtb3ZlICAgICAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtUHwtLXB1cmdlICAgICAgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLS1nZXQtc2VsZWN0aW9ucyBbPHBhdHRlcm4+IC4uLl0gR2V0IGxpc3Qgb2Ygc2VsZWN0aW9ucyB0byBzdGRvdXQuXG4iCisiICAtLXNldC1zZWxlY3Rpb25zICAgICAgICAgICAgICAgICBTZXQgcGFja2FnZSBzZWxlY3Rpb25zIGZyb20gc3RkaW4uXG4iCisiICAtLWNsZWFyLXNlbGVjdGlvbnMgICAgICAgICAgICAgICBEZXNlbGVjdCBldmVyeSBub24tZXNzZW50aWFsIHBhY2thZ2UuXG4iCisiICAtLXVwZGF0ZS1hdmFpbCA8UGFja2FnZXMtZmlsZT4gICBSZXBsYWNlIGF2YWlsYWJsZSBwYWNrYWdlcyBpbmZvLlxuIgorIiAgLS1tZXJnZS1hdmFpbCA8UGFja2FnZXMtZmlsZT4gICAgTWVyZ2Ugd2l0aCBpbmZvIGZyb20gZmlsZS5cbiIKKyIgIC0tY2xlYXItYXZhaWwgICAgICAgICAgICAgICAgICAgIEVyYXNlIGV4aXN0aW5nIGF2YWlsYWJsZSBpbmZvLlxuIgorIiAgLS1mb3JnZXQtb2xkLXVuYXZhaWwgICAgICAgICAgICAgRm9yZ2V0IHVuaW5zdGFsbGVkIHVuYXZhaWxhYmxlIHBrZ3MuXG4iCisiICAtc3wtLXN0YXR1cyA8cGFja2FnZT4gLi4uICAgICAgICBEaXNwbGF5IHBhY2thZ2Ugc3RhdHVzIGRldGFpbHMuXG4iCisiICAtcHwtLXByaW50LWF2YWlsIDxwYWNrYWdlPiAuLi4gICBEaXNwbGF5IGF2YWlsYWJsZSB2ZXJzaW9uIGRldGFpbHMuXG4iCisiICAtTHwtLWxpc3RmaWxlcyA8cGFja2FnZT4gLi4uICAgICBMaXN0IGZpbGVzIGBvd25lZCcgYnkgcGFja2FnZShzKS5cbiIKKyIgIC1sfC0tbGlzdCBbPHBhdHRlcm4+IC4uLl0gICAgICAgIExpc3QgcGFja2FnZXMgY29uY2lzZWx5LlxuIgorIiAgLVN8LS1zZWFyY2ggPHBhdHRlcm4+IC4uLiAgICAgICAgRmluZCBwYWNrYWdlKHMpIG93bmluZyBmaWxlKHMpLlxuIgorIiAgLUN8LS1hdWRpdCAgICAgICAgICAgICAgICAgICAgICAgQ2hlY2sgZm9yIGJyb2tlbiBwYWNrYWdlKHMpLlxuIgorIiAgLS1wcmludC1hcmNoaXRlY3R1cmUgICAgICAgICAgICAgUHJpbnQgZHBrZyBhcmNoaXRlY3R1cmUuXG4iCisiICAtLWNvbXBhcmUtdmVyc2lvbnMgPGE+IDxvcD4gPGI+ICBDb21wYXJlIHZlcnNpb24gbnVtYmVycyAtIHNlZSBiZWxvdy5cbiIKKyIgIC0tZm9yY2UtaGVscCAgICAgICAgICAgICAgICAgICAgIFNob3cgaGVscCBvbiBmb3JjaW5nLlxuIgorIiAgLURofC0tZGVidWc9aGVscCAgICAgICAgICAgICAgICAgU2hvdyBoZWxwIG9uIGRlYnVnZ2luZy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIlByw61rYXp5OlxuIgorIiAgLWl8LS1pbnN0YWxsICAgICAgIDwuZGViIHPDumJvcj4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGFkcmVzw6FyPiAuLi5cbiIKKyIgIC0tdW5wYWNrICAgICAgICAgICA8LmRlYiBzw7pib3I+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxhZHJlc8Ohcj4gLi4uXG4iCisiICAtQXwtLXJlY29yZC1hdmFpbCAgPC5kZWIgc8O6Ym9yPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8YWRyZXPDoXI+IC4uLlxuIgorIiAgLS1jb25maWd1cmUgICAgICAgIDxiYWzDrWs+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLS10cmlnZ2Vycy1vbmx5ICAgIDxiYWzDrWs+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLXJ8LS1yZW1vdmUgICAgICAgIDxiYWzDrWs+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLVB8LS1wdXJnZSAgICAgICAgIDxiYWzDrWs+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLS1nZXQtc2VsZWN0aW9ucyBbPHZ6b3I+IC4uLl0gICAgdnlww63FoWUgenZvbGVuw6kgYmFsw61reSBuYSDFoXRhbmRhcmRuw70gIgorInbDvXN0dXAuXG4iCisiICAtLXNldC1zZWxlY3Rpb25zICAgICAgICAgICAgICAgICBuYXN0YXbDrSB6dm9sZW7DqSBiYWzDrWt5IHpvIMWhdGFuZGFyZG7DqWhvICIKKyJ2c3R1cHUuXG4iCisiICAtLWNsZWFyLXNlbGVjdGlvbnMgICAgICAgICAgICAgICB6cnXFocOtIG96bmHEjWVuaWUgdsWhZXRrw71jaCBiYWzDrWtvdiBva3JlbSAiCisibmV2eWhudXRuw71jaC5cbiIKKyIgIC0tdXBkYXRlLWF2YWlsIDxzw7pib3IgUGFja2FnZXM+ICBuYWhyYWTDrSDDumRhamUgbyBkb3N0dXBuw71jaCBiYWzDrWtvY2guXG4iCisiICAtLW1lcmdlLWF2YWlsIDxzw7pib3IgUGFja2FnZXM+ICAgemzDusSNaSDDumRhamUgbyBkb3N0dXBuw71jaCBiYWzDrWtvY2guXG4iCisiICAtLWNsZWFyLWF2YWlsICAgICAgICAgICAgICAgICAgICBvZHN0csOhbmkgw7pkYWplIG8gZG9zdHVwbsO9Y2ggYmFsw61rb2NoLlxuIgorIiAgLS1mb3JnZXQtb2xkLXVuYXZhaWwgICAgICAgICAgICAgemFidWRuZSBuZW5haW7FoXRhbG92YW7DqSBuZWRvc3R1cG7DqSAiCisiYmFsw61reS5cbiIKKyIgIC1zfC0tc3RhdHVzIDxiYWzDrWs+IC4uLiAgICAgICAgICB6b2JyYXrDrSBwb2Ryb2Juw70gc3RhdiBiYWzDrWthLlxuIgorIiAgLXB8LS1wcmludC1hdmFpbCA8YmFsw61rPiAuLi4gICAgIHpvYnJhesOtIMO6ZGFqZSBvIGRvc3R1cG7DvWNoIHZlcnppw6FjaCAiCisiYmFsw61rYS5cbiIKKyIgIC1MfC0tbGlzdGZpbGVzIDxiYWzDrWs+IC4uLiAgICAgICB6b2JyYXrDrSBzw7pib3J5IOKAnnBhdHJpYWNl4oCcIGJhbMOta3UuXG4iCisiICAtbHwtLWxpc3QgWzx2em9yPiAuLi5dICAgICAgICAgICB6b2JyYXrDrSBzdHJ1xI1uw70gem96bmFtIGJhbMOta292LlxuIgorIiAgLVN8LS1zZWFyY2ggPHZ6b3I+IC4uLiAgICAgICAgICAgbsOhamRlIGJhbMOtayB2bGFzdG5pYWNpIHPDumJvcih5KS5cbiIKKyIgIC1DfC0tYXVkaXQgICAgICAgICAgICAgICAgICAgICAgIG7DoWpkZSBwb3J1xaFlbsOpIGJhbMOta3kuXG4iCisiICAtLXByaW50LWFyY2hpdGVjdHVyZSAgICAgICAgICAgICB6b2JyYXrDrSBkcGtnIGFyY2hpdGVrdMO6cnUuXG4iCisiICAtLWNvbXBhcmUtdmVyc2lvbnMgPGE+IDxvcD4gPGI+ICBwb3Jvdm7DoSDEjcOtc2xhIHZlcnppw60gLSBwb3pyaSBuacW+xaFpZS5cbiIKKyIgIC0tZm9yY2UtaGVscCAgICAgICAgICAgICAgICAgICAgIHpvYnJhesOtIHBvbW9jbsOta2EgbmEgZG9udWNvdmFuaWUuXG4iCisiICAtRGh8LS1kZWJ1Zz1oZWxwICAgICAgICAgICAgICAgICB6b2JyYXrDrSBwb21vY27DrWthIG5hIGxhZGVuaWUuXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTEzIHNyYy9xdWVyeWNtZC5jOjYzMSBzcmMvdHJpZ2NtZC5jOjc3IGRwa2ctZGViL21haW4uYzo4OAorIzogZHBrZy1zcGxpdC9tYWluLmM6NzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiAgLWh8LS1oZWxwICAgICAgICAgICAgICAgICAgICAgICAgU2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCittc2dzdHIgIiIKKyIgIC1ofC0taGVscCAgICAgICAgICAgICAgICAgICAgICAgIFpvYnJhesOtIHRvaHRvIHBvbW9jbsOta2EuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgICAgICAgICBab2JyYXrDrSB2ZXJ6aXUuXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTE4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJVc2UgZHBrZyAtYnwtLWJ1aWxkfC1jfC0tY29udGVudHN8LWV8LS1jb250cm9sfC1JfC0taW5mb3wtZnwtLWZpZWxkfFxuIgorIiAteHwtLWV4dHJhY3R8LVh8LS12ZXh0cmFjdHwtLWZzeXMtdGFyZmlsZSAgb24gYXJjaGl2ZXMgKHR5cGUgJXMgLS1oZWxwKS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIk5hIGFyY2jDrXZ5IHBvdcW+aXRlIGRwa2cgLWJ8LS1idWlsZHwtY3wtLWNvbnRlbnRzfC1lfC0tY29udHJvbHwtSXwtLWluZm98LWZ8LS0iCisiZmllbGR8XG4iCisiIC14fC0tZXh0cmFjdHwtWHwtLXZleHRyYWN0fC0tZnN5cy10YXJmaWxlICAobmFww63FoXRlICVzIC0taGVscCkuXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTIzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJGb3IgaW50ZXJuYWwgdXNlOiBkcGtnIC0tYXNzZXJ0LXN1cHBvcnQtcHJlZGVwZW5kcyB8IC0tcHJlZGVwLXBhY2thZ2UgfFxuIgorIiAgLS1hc3NlcnQtd29ya2luZy1lcG9jaCB8IC0tYXNzZXJ0LWxvbmctZmlsZW5hbWVzIHwgLS1hc3NlcnQtbXVsdGktY29ucmVwLlxuIgorIlxuIgorbXNnc3RyICIiCisiTmEgdm7DunRvcm7DqSDDusSNZWx5OiBkcGtnIC0tYXNzZXJ0LXN1cHBvcnQtcHJlZGVwZW5kcyB8IC0tcHJlZGVwLXBhY2thZ2UgfFxuIgorIiAgLS1hc3NlcnQtd29ya2luZy1lcG9jaCB8IC0tYXNzZXJ0LWxvbmctZmlsZW5hbWVzIHwgLS1hc3NlcnQtbXVsdGktY29ucmVwLlxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjEyOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT4gICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorIiAgLS1yb290PTxkaXJlY3Rvcnk+ICAgICAgICAgSW5zdGFsbCBvbiBhIGRpZmZlcmVudCByb290IGRpcmVjdG9yeS5cbiIKKyIgIC0taW5zdGRpcj08ZGlyZWN0b3J5PiAgICAgIENoYW5nZSBpbnN0YWxsYXRpb24gZGlyIHdpdGhvdXQgY2hhbmdpbmcgYWRtaW4gIgorImRpci5cbiIKKyIgIC0tcGF0aC1leGNsdWRlPTxwYXR0ZXJuPiAgIERvIG5vdCBpbnN0YWxsIHBhdGhzIHdoaWNoIG1hdGNoIGEgc2hlbGwgIgorInBhdHRlcm4uXG4iCisiICAtLXBhdGgtaW5jbHVkZT08cGF0dGVybj4gICBSZS1pbmNsdWRlIGEgcGF0dGVybiBhZnRlciBhIHByZXZpb3VzICIKKyJleGNsdXNpb24uXG4iCisiICAtT3wtLXNlbGVjdGVkLW9ubHkgICAgICAgICBTa2lwIHBhY2thZ2VzIG5vdCBzZWxlY3RlZCBmb3IgaW5zdGFsbC8iCisidXBncmFkZS5cbiIKKyIgIC1FfC0tc2tpcC1zYW1lLXZlcnNpb24gICAgIFNraXAgcGFja2FnZXMgd2hvc2Ugc2FtZSB2ZXJzaW9uIGlzIGluc3RhbGxlZC5cbiIKKyIgIC1HfC0tcmVmdXNlLWRvd25ncmFkZSAgICAgIFNraXAgcGFja2FnZXMgd2l0aCBlYXJsaWVyIHZlcnNpb24gdGhhbiAiCisiaW5zdGFsbGVkLlxuIgorIiAgLUJ8LS1hdXRvLWRlY29uZmlndXJlICAgICAgSW5zdGFsbCBldmVuIGlmIGl0IHdvdWxkIGJyZWFrIHNvbWUgb3RoZXIgIgorInBhY2thZ2UuXG4iCisiICAtLVtuby1ddHJpZ2dlcnMgICAgICAgICAgICBTa2lwIG9yIGZvcmNlIGNvbnNlcXVlbnRpYWwgdHJpZ2dlciAiCisicHJvY2Vzc2luZy5cbiIKKyIgIC0tbm8tZGVic2lnICAgICAgICAgICAgICAgIERvIG5vdCB0cnkgdG8gdmVyaWZ5IHBhY2thZ2Ugc2lnbmF0dXJlcy5cbiIKKyIgIC0tbm8tYWN0fC0tZHJ5LXJ1bnwtLXNpbXVsYXRlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBKdXN0IHNheSB3aGF0IHdlIHdvdWxkIGRvIC0gZG9uJ3QgZG8gaXQuXG4iCisiICAtRHwtLWRlYnVnPTxvY3RhbD4gICAgICAgICBFbmFibGUgZGVidWdnaW5nIChzZWUgLURoZWxwIG9yIC0tZGVidWc9aGVscCkuXG4iCisiICAtLXN0YXR1cy1mZCA8bj4gICAgICAgICAgICBTZW5kIHN0YXR1cyBjaGFuZ2UgdXBkYXRlcyB0byBmaWxlIGRlc2NyaXB0b3IgIgorIjxuPi5cbiIKKyIgIC0tbG9nPTxmaWxlbmFtZT4gICAgICAgICAgIExvZyBzdGF0dXMgY2hhbmdlcyBhbmQgYWN0aW9ucyB0byA8ZmlsZW5hbWU+LlxuIgorIiAgLS1pZ25vcmUtZGVwZW5kcz08cGFja2FnZT4sLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZ25vcmUgZGVwZW5kZW5jaWVzIGludm9sdmluZyA8cGFja2FnZT4uXG4iCisiICAtLWZvcmNlLS4uLiAgICAgICAgICAgICAgICBPdmVycmlkZSBwcm9ibGVtcyAoc2VlIC0tZm9yY2UtaGVscCkuXG4iCisiICAtLW5vLWZvcmNlLS4uLnwtLXJlZnVzZS0uLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3Agd2hlbiBwcm9ibGVtcyBlbmNvdW50ZXJlZC5cbiIKKyIgIC0tYWJvcnQtYWZ0ZXIgPG4+ICAgICAgICAgIEFib3J0IGFmdGVyIGVuY291bnRlcmluZyA8bj4gZXJyb3JzLlxuIgorIlxuIgorbXNnc3RyICIiCisiVm/EvmJ5OlxuIgorIiAgLS1hZG1pbmRpcj08YWRyZXPDoXI+ICAgICAgIHBvdcW+aWplIDxhZHJlc8Ohcj4gbmFtaWVzdG8gJXMuXG4iCisiICAtLXJvb3Q9PGFkcmVzw6FyPiAgICAgICAgICAgaW7FoXRhbHVqZSBkbyBzeXN0w6ltdSBzIGluw71tIGtvcmXFiG92w71tICIKKyJhZHJlc8Ohcm9tLlxuIgorIiAgLS1pbnN0ZGlyPTxhZHJlc8Ohcj4gICAgICAgIHptZW7DrSBpbsWhdGFsYcSNbsO9IGtvcmXFiCBiZXogem1lbnkgYWRtaW5kaXIuXG4iCisiICAtLXBhdGgtZXhjbHVkZT08dnpvcj4gICAgICBuZWluxaF0YWxvdmHFpSBjZXN0eSwga3RvcsOpIHpvZHBvdmVkYWrDuiBzaGVsbCAiCisidnpvcnUuXG4iCisiICAtLXBhdGgtaW5jbHVkZT08dnpvcj4gICAgICB6bm92YSB6YWhybsO6xaUgdnpvcnkgcG8gcHJlZG/FoWxvbSB2eWzDusSNZW7DrS5cbiIKKyIgIC1PfC0tc2VsZWN0ZWQtb25seSAgICAgICAgIHByZXNrb8SNw60gYmFsw61reSwga3RvcsOpIG5pZSBzw7ogenZvbGVuw6kgbmEgIgorImluxaF0YWzDoWNpdS9ha3R1YWxpesOhY2l1LlxuIgorIiAgLUV8LS1za2lwLXNhbWUtdmVyc2lvbiAgICAgcHJlc2tvxI3DrSBiYWzDrWt5IHMgdG90b8W+bm91IHZlcnppb3UuXG4iCisiICAtR3wtLXJlZnVzZS1kb3duZ3JhZGUgICAgICBuZW5haW7FoXRhbHVqZSBzdGFyxaFpdSB2ZXJ6aXUgYmFsw61rYS5cbiIKKyIgIC1CfC0tYXV0by1kZWNvbmZpZ3VyZSAgICAgIG5haW7FoXRhbHVqZSBhaiBuYXByaWVrIG1vxb5uw6ltdSBwb8Wha29kZW5pdSBpbsOpaG8gIgorImJhbMOta2EuXG4iCisiICAtLVtuby1ddHJpZ2dlcnMgICAgICAgICAgICBwcmVza2/EjWnFpSBhbGVibyB2eW7DunRpxaUgbsOhc2xlZG7DqSBzcHJhY292YW5pZSAiCisic3DDusWhxaVhxI1vdi5cbiIKKyIgIC0tbm8tZGVic2lnICAgICAgICAgICAgICAgIG5lYnVkZSBzYSBwb2vDusWhYcWlIG8gb3ZlcmVuaWUgcG9kcGlzdSBiYWzDrWthLlxuIgorIiAgLS1uby1hY3R8LS1kcnktcnVufC0tc2ltdWxhdGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGliYSB2eXDDrcWhZSwgxI1vIHNhIGJ1ZGUgdnlrb27DoXZhxaUsIGFsZSBuacSNICIKKyJuZXZ5a29uw6F2YS5cbiIKKyIgIC1EfC0tZGVidWc9PG9jdGFsPiAgICAgICAgIHBvdm9sw60gbGFkZW5pZSAocG96cmkgLURoZWxwIGFsZWJvIC0tIgorImRlYnVnPWhlbHApLlxuIgorIiAgLS1zdGF0dXMtZmQgPG4+ICAgICAgICAgICAgcG/FoWxlIHptZW55IHN0YXZ1IGJhbMOta2EgbmEgcG9waXNvdmHEjSBzw7pib3J1ICIKKyI8bj4uXG4iCisiICAtLWxvZz08c8O6Ym9yPiAgICAgICAgICAgICAgemF6bmFtZW7DoSB6bWVueSBzdGF2dSBhIG9wZXLDoWNpZSBkbyA8c8O6Ym9ydT4uXG4iCisiICAtLWlnbm9yZS1kZXBlbmRzPTxiYWzDrWs+LC4uLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWdub3J1amUgesOhdmlzbG9zdGkgcyA8YmFsw61rb20+LlxuIgorIiAgLS1mb3JjZS0uLi4gICAgICAgICAgICAgICAgaWdub3J1amUgcHJvYmzDqW15ICh2acSPIC0tZm9yY2UtaGVscCkuXG4iCisiICAtLW5vLWZvcmNlLS4uLnwtLXJlZnVzZS0uLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHphc3RhdsOtIHNhIHByaSBwcm9ibMOpbW9jaC5cbiIKKyIgIC0tYWJvcnQtYWZ0ZXIgPG4+ICAgICAgICAgIHByZXJ1xaHDrSBzYSBwbyBuw6FqZGVuw60gPG4+IGNow71iLlxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjE1NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tcGFyaXNvbiBvcGVyYXRvcnMgZm9yIC0tY29tcGFyZS12ZXJzaW9ucyBhcmU6XG4iCisiICBsdCBsZSBlcSBuZSBnZSBndCAgICAgICAodHJlYXQgZW1wdHkgdmVyc2lvbiBhcyBlYXJsaWVyIHRoYW4gYW55ICIKKyJ2ZXJzaW9uKTtcbiIKKyIgIGx0LW5sIGxlLW5sIGdlLW5sIGd0LW5sICh0cmVhdCBlbXB0eSB2ZXJzaW9uIGFzIGxhdGVyIHRoYW4gYW55IHZlcnNpb24pO1xuIgorIiAgPCA8PCA8PSA9ID49ID4+ID4gICAgICAgKG9ubHkgZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBjb250cm9sIGZpbGUgIgorInN5bnRheCkuXG4iCisiXG4iCittc2dzdHIgIiIKKyJPcGVyw6F0b3J5IHBvcm92bmFuaWEgcHJlIC0tY29tcGFyZS12ZXJzaW9ucyBzw7o6XG4iCisiICBsdCBsZSBlcSBuZSBnZSBndCAgICAgICAobmVleGlzdGVuY2l1IHZlcnppZSBwb3Zhxb51amUgemEgc3RhcsWhaXUgYWtvICIKKyLEjW9rb8S+dmVrKTtcbiIKKyIgIGx0LW5sIGxlLW5sIGdlLW5sIGd0LW5sIChuZWV4aXN0ZW5jaXUgdmVyemllIHBvdmHFvnVqZSB6YSBub3bFoWl1IGFrbyAiCisixI1va2/EvnZlayk7XG4iCisiICA8IDw8IDw9ID0gPj0gPj4gPiAgICAgICAoaWJhIGt2w7RsaSBrb21wYXRpYmlsaXRlIHNvIHN5bnRheG91IHPDumJvcnUgIgorImNvbnRyb2wpLlxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjE2MQorIywgYy1mb3JtYXQKK21zZ2lkICJVc2UgYGRzZWxlY3QnIG9yIGBhcHRpdHVkZScgZm9yIHVzZXItZnJpZW5kbHkgcGFja2FnZSBtYW5hZ2VtZW50LlxuIgorbXNnc3RyICIiCisiU2vDunN0ZSBwb3XFvsOtdmF0ZcS+c2t5IHByw612ZXRpdsO6IHNwcsOhdnUgYmFsw61rb3YgcG9tb2NvdSDigJ5kc2VsZWN04oCcIGFsZWJvICIKKyLigJ5hcHRpdHVkZeKAnC5cbiIKKworIzogc3JjL21haW4uYzoxNzAKK21zZ2lkICIiCisiVHlwZSBkcGtnIC0taGVscCBmb3IgaGVscCBhYm91dCBpbnN0YWxsaW5nIGFuZCBkZWluc3RhbGxpbmcgcGFja2FnZXMgWypdO1xuIgorIlVzZSBgZHNlbGVjdCcgb3IgYGFwdGl0dWRlJyBmb3IgdXNlci1mcmllbmRseSBwYWNrYWdlIG1hbmFnZW1lbnQ7XG4iCisiVHlwZSBkcGtnIC1EaGVscCBmb3IgYSBsaXN0IG9mIGRwa2cgZGVidWcgZmxhZyB2YWx1ZXM7XG4iCisiVHlwZSBkcGtnIC0tZm9yY2UtaGVscCBmb3IgYSBsaXN0IG9mIGZvcmNpbmcgb3B0aW9ucztcbiIKKyJUeXBlIGRwa2ctZGViIC0taGVscCBmb3IgaGVscCBhYm91dCBtYW5pcHVsYXRpbmcgKi5kZWIgZmlsZXM7XG4iCisiXG4iCisiT3B0aW9ucyBtYXJrZWQgWypdIHByb2R1Y2UgYSBsb3Qgb2Ygb3V0cHV0IC0gcGlwZSBpdCB0aHJvdWdoIGBsZXNzJyBvciAiCisiYG1vcmUnICEiCittc2dzdHIgIiIKKyJOYXDDrcWhdGUgZHBrZyAtLWhlbHAgcHJlIHBvbW9jbsOta2EgbyBpbsWhdGFsw6FjaWkgYSBvZHN0cmHFiG92YW7DrSBiYWzDrWtvdiBbKl07XG4iCisiUG91xb5pdGUg4oCeZHNlbGVjdOKAnCBhbGVibyDigJ5hcHRpdHVkZeKAnCBuYSBwb3XFvsOtdmF0ZcS+c2t5IHByw612ZXRpdsO6IHNwcsOhdnUgIgorImJhbMOta292O1xuIgorIk5hcMOtxaF0ZSBkcGtnIC1EaGVscCBwcmUgem96bmFtIGxhZGlhY2ljaCBob2Ruw7R0IGRwa2c7XG4iCisiTmFww63FoXRlIGRwa2cgLS1mb3JjZS1oZWxwIHByZSB6b3puYW0gZG9udWNvdmFjw61jaCB2b2xpZWI7XG4iCisiTmFww63FoXRlIGRwa2ctZGViIC0taGVscCBwcmUgcG9tb2Nuw61rYSBvIHphb2JjaMOhZHphbsOtIHMgKi5kZWIgc8O6Ym9ybWk7XG4iCisiXG4iCisiVm/EvmJ5IG96bmHEjWVuw6kgWypdIHByb2R1a3Vqw7ogcm96c2lhaGx5IHbDvXN0dXAgLSBwb3XFvml0ZSDigJ5sZXNz4oCcIGFsZWJvIOKAnm1vcmXigJwhIgorCisjOiBzcmMvbWFpbi5jOjIxOQorbXNnaWQgIlNldCBhbGwgZm9yY2Ugb3B0aW9ucyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIyMQorbXNnaWQgIlJlcGxhY2UgYSBwYWNrYWdlIHdpdGggYSBsb3dlciB2ZXJzaW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjIzCittc2dpZCAiQ29uZmlndXJlIGFueSBwYWNrYWdlIHdoaWNoIG1heSBoZWxwIHRoaXMgb25lIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjI1Cittc2dpZCAiUHJvY2VzcyBpbmNpZGVudGFsIHBhY2thZ2VzIGV2ZW4gd2hlbiBvbiBob2xkIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjI3Cittc2dpZCAiVHJ5IHRvIChkZSlpbnN0YWxsIHRoaW5ncyBldmVuIHdoZW4gbm90IHJvb3QiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjkKK21zZ2lkICJQQVRIIGlzIG1pc3NpbmcgaW1wb3J0YW50IHByb2dyYW1zLCBwcm9ibGVtcyBsaWtlbHkiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzEKK21zZ2lkICJJbnN0YWxsIGEgcGFja2FnZSBldmVuIGlmIGl0IGZhaWxzIGF1dGhlbnRpY2l0eSBjaGVjayIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzMworbXNnaWQgIlByb2Nlc3MgZXZlbiBwYWNrYWdlcyB3aXRoIHdyb25nIHZlcnNpb25zIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjM1Cittc2dpZCAiT3ZlcndyaXRlIGEgZmlsZSBmcm9tIG9uZSBwYWNrYWdlIHdpdGggYW5vdGhlciIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzNworbXNnaWQgIk92ZXJ3cml0ZSBhIGRpdmVydGVkIGZpbGUgd2l0aCBhbiB1bmRpdmVydGVkIHZlcnNpb24iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzkKK21zZ2lkICJPdmVyd3JpdGUgb25lIHBhY2thZ2UncyBkaXJlY3Rvcnkgd2l0aCBhbm90aGVyJ3MgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI0MQorbXNnaWQgIkRvIG5vdCBwZXJmb3JtIHNhZmUgSS9PIG9wZXJhdGlvbnMgd2hlbiB1bnBhY2tpbmciCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDMKK21zZ2lkICJBbHdheXMgdXNlIHRoZSBuZXcgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDUKK21zZ2lkICJBbHdheXMgdXNlIHRoZSBvbGQgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDgKK21zZ2lkICIiCisiVXNlIHRoZSBkZWZhdWx0IG9wdGlvbiBmb3IgbmV3IGNvbmZpZyBmaWxlcyBpZiBvbmVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgaXMgYXZhaWxhYmxlLCBkb24ndCBwcm9tcHQuIElmIG5vIGRlZmF1bHQgY2FuIGJlICIKKyJmb3VuZCxcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgeW91IHdpbGwgYmUgcHJvbXB0ZWQgdW5sZXNzIG9uZSBvZiB0aGUgY29uZm9sZCBvclxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICBjb25mbmV3IG9wdGlvbnMgaXMgYWxzbyBnaXZlbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI1MworbXNnaWQgIkFsd2F5cyBpbnN0YWxsIG1pc3NpbmcgY29uZmlnIGZpbGVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjU1Cittc2dpZCAiT2ZmZXIgdG8gcmVwbGFjZSBjb25maWcgZmlsZXMgd2l0aCBubyBuZXcgdmVyc2lvbnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNTcKK21zZ2lkICJQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyBvciBubyBhcmNoaXRlY3R1cmUiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNTkKK21zZ2lkICJJbnN0YWxsIGV2ZW4gaWYgaXQgd291bGQgYnJlYWsgYW5vdGhlciBwYWNrYWdlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjYxCittc2dpZCAiQWxsb3cgaW5zdGFsbGF0aW9uIG9mIGNvbmZsaWN0aW5nIHBhY2thZ2VzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjYzCisjLCBmdXp6eQorI3wgbXNnaWQgImRlcGVuZGVuY3kgcHJvYmxlbXMgLSBub3QgcmVtb3ZpbmciCittc2dpZCAiVHVybiBhbGwgZGVwZW5kZW5jeSBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzIgorbXNnc3RyICJwcm9ibMOpbXkgc28gesOhdmlzbG9zxaVhbWkgLSBuZW9kc3RyYcWIdWplIHNhIgorCisjOiBzcmMvbWFpbi5jOjI2NQorIywgZnV6enkKKyN8IG1zZ2lkICJkZXBlbmRlbmN5IHByb2JsZW1zIC0gbm90IHJlbW92aW5nIgorbXNnaWQgIlR1cm4gZGVwZW5kZW5jeSB2ZXJzaW9uIHByb2JsZW1zIGludG8gd2FybmluZ3MiCittc2dzdHIgInByb2Jsw6lteSBzbyB6w6F2aXNsb3PFpWFtaSAtIG5lb2RzdHJhxYh1amUgc2EiCisKKyM6IHNyYy9tYWluLmM6MjY3Cittc2dpZCAiUmVtb3ZlIHBhY2thZ2VzIHdoaWNoIHJlcXVpcmUgaW5zdGFsbGF0aW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjY5Cittc2dpZCAiUmVtb3ZlIGFuIGVzc2VudGlhbCBwYWNrYWdlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjgxCittc2dpZCAiR2VuZXJhbGx5IGhlbHBmdWwgcHJvZ3Jlc3MgaW5mb3JtYXRpb24iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODIKKyMsIGZ1enp5CisjfCBtc2dpZCAidW5hYmxlIHRvIHNldGVudiBmb3IgbWFpbnRhaW5lciBzY3JpcHQiCittc2dpZCAiSW52b2NhdGlvbiBhbmQgc3RhdHVzIG9mIG1haW50YWluZXIgc2NyaXB0cyIKK21zZ3N0ciAibmllIGplIG1vxb5uw6kgbmFzdGF2acWlIHByZW1lbm7DuiBwcm9zdHJlZGlhIHByZSBza3JpcHQgw7pkcsW+YnkiCisKKyM6IHNyYy9tYWluLmM6MjgzCittc2dpZCAiT3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg0Cittc2dpZCAiTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODUKKyMsIGZ1enp5CisjfCBtc2dpZCAicmVhZCBlcnJvciBpbiBjb25maWd1cmF0aW9uIGZpbGUgYCUuMjU1cyciCittc2dpZCAiT3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZSIKK21zZ3N0ciAiY2h5YmEgcHJpIMSNw610YW7DrSB2IGtvbmZpZ3VyYcSNbm9tIHPDumJvcmUg4oCeJS4yNTVz4oCcIgorCisjOiBzcmMvbWFpbi5jOjI4NgorbXNnaWQgIkxvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4NworbXNnaWQgIkRlcGVuZGVuY2llcyBhbmQgY29uZmxpY3RzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg4Cittc2dpZCAiTG90cyBvZiBkZXBlbmRlbmNpZXMvY29uZmxpY3RzIG91dHB1dCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4OQorbXNnaWQgIlRyaWdnZXIgYWN0aXZhdGlvbiBhbmQgcHJvY2Vzc2luZyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MAorbXNnaWQgIkxvdHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2VycyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MQorbXNnaWQgIlNpbGx5IGFtb3VudHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2VycyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MgorbXNnaWQgIkxvdHMgb2YgZHJpdmVsIGFib3V0IGVnIHRoZSBkcGtnL2luZm8gZGlyZWN0b3J5IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjkzCittc2dpZCAiSW5zYW5lIGFtb3VudHMgb2YgZHJpdmVsIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MzA0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlcyBkZWJ1Z2dpbmcgb3B0aW9uLCAtLWRlYnVnPTxvY3RhbD4gb3IgLUQ8b2N0YWw+OlxuIgorIlxuIgorIiBOdW1iZXIgIFJlZi4gaW4gc291cmNlICAgRGVzY3JpcHRpb25cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjMxMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiRGVidWdnaW5nIG9wdGlvbnMgY2FuIGJlIG1peGVkIHVzaW5nIGJpdHdpc2Utb3IuXG4iCisiTm90ZSB0aGF0IHRoZSBtZWFuaW5ncyBhbmQgdmFsdWVzIGFyZSBzdWJqZWN0IHRvIGNoYW5nZS5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjMxOQorbXNnaWQgIi0tZGVidWcgcmVxdWlyZXMgYW4gb2N0YWwgYXJndW1lbnQiCittc2dzdHIgIi0tZGVidWcgdnnFvmFkdWplIG9zbWnEjWtvdsO9IGFyZ3VtZW50IgorCisjOiBzcmMvbWFpbi5jOjM0OAorIywgYy1mb3JtYXQKK21zZ2lkICJudWxsIHBhY2thZ2UgbmFtZSBpbiAtLWlnbm9yZS1kZXBlbmRzIGNvbW1hLXNlcGFyYXRlZCBsaXN0IGAlLjI1MHMnIgorbXNnc3RyICIiCisicHLDoXpkbnkgbsOhem92IGJhbMOta2EgdiBkdm9qYm9ka291IG9kZGVsZW5vbSB6b3puYW1lIC0taWdub3JlLWRlcGVuZHMg4oCeJS4yNTBz4oCcIgorCisjOiBzcmMvbWFpbi5jOjM1NAorIywgYy1mb3JtYXQKK21zZ2lkICItLWlnbm9yZS1kZXBlbmRzIHJlcXVpcmVzIGEgbGVnYWwgcGFja2FnZSBuYW1lLiBgJS4yNTBzJyBpcyBub3Q7ICVzIgorbXNnc3RyICItLWlnbm9yZS1kZXBlbmRzIHZ5xb5hZHVqZSBwbGF0bsO9IG7DoXpvdiBiYWzDrWthLiDigJ4lLjI1MHPigJwgbmllIGplOyAlcyIKKworIzogc3JjL21haW4uYzozNzEgc3JjL21haW4uYzozODEgc3JjL21haW4uYzo2NDkgZHBrZy1zcGxpdC9tYWluLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgaW50ZWdlciBmb3IgLS0lczogYCUuMjUwcyciCittc2dzdHIgIm5lcGxhdG7DqSDEjcOtc2xvIHByZSAtLSVzOiDigJ4lLjI1MHPigJwiCisKKyM6IHNyYy9tYWluLmM6NDM4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGV4ZWN1dGluZyBob29rICclcycsIGV4aXQgY29kZSAlZCIKK21zZ3N0ciAiY2h5YmEgcHJpIHZ5a29uw6F2YW7DrSBmdW5rY2llIOKAniVz4oCcLCBjaHlib3bDvSBrw7NkICVkIgorCisjOiBzcmMvbWFpbi5jOjQ2NQorIywgZnV6enkKKyN8IG1zZ2lkICJzdGF0dXMiCittc2dpZCAic3RhdHVzIGxvZ2dlciIKK21zZ3N0ciAic3RhdiIKKworIzogc3JjL21haW4uYzo0ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzIGZvcmNpbmcgb3B0aW9ucyAtIGNvbnRyb2wgYmVoYXZpb3VyIHdoZW4gcHJvYmxlbXMgZm91bmQ6XG4iCisiICB3YXJuIGJ1dCBjb250aW51ZTogIC0tZm9yY2UtPHRoaW5nPiw8dGhpbmc+LC4uLlxuIgorIiAgc3RvcCB3aXRoIGVycm9yOiAgICAtLXJlZnVzZS08dGhpbmc+LDx0aGluZz4sLi4uIHwgLS1uby1mb3JjZS08dGhpbmc+LC4uLlxuIgorIiBGb3JjaW5nIHRoaW5nczpcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjQ5MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiV0FSTklORyAtIHVzZSBvZiBvcHRpb25zIG1hcmtlZCBbIV0gY2FuIHNlcmlvdXNseSBkYW1hZ2UgeW91ciBpbnN0YWxsYXRpb24uXG4iCisiRm9yY2luZyBvcHRpb25zIG1hcmtlZCBbKl0gYXJlIGVuYWJsZWQgYnkgZGVmYXVsdC5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjUwNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGZvcmNlL3JlZnVzZSBvcHRpb24gYCUuKnMnIgorbXNnc3RyICJuZXpuw6FtYSB2eW51Y292YWNpYS9vZG1pZXRhY2lhIHZvxL5iYSDigJ4lLipz4oCcIgorCisjOiBzcmMvbWFpbi5jOjUxMworIywgYy1mb3JtYXQKK21zZ2lkICJvYnNvbGV0ZSBmb3JjZS9yZWZ1c2Ugb3B0aW9uICclcydcbiIKK21zZ3N0ciAiemFzdGFyYWzDoSB2eW51Y292YWNpYS96YWthem92YWNpYSB2b8S+YmEg4oCeJXPigJxcbiIKKworIzogc3JjL21haW4uYzo2NDMKK21zZ2lkICItLWNvbW1hbmQtZmQgdGFrZXMgb25lIGFyZ3VtZW50LCBub3QgemVybyIKK21zZ3N0ciAiLS1jb21tYW5kLWZkIHZ5xb5hZHVqZSBqZWRlbiBwYXJhbWV0ZXIsIG5pZSBudWxhIgorCisjOiBzcmMvbWFpbi5jOjY0NQorbXNnaWQgIi0tY29tbWFuZC1mZCBvbmx5IHRha2VzIG9uZSBhcmd1bWVudCIKK21zZ3N0ciAiLS1jb21tYW5kLWZkIHZ5xb5hZHVqZSBsZW4gamVkZW4gcGFyYW1ldGVyIgorCisjOiBzcmMvbWFpbi5jOjY1MQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBvcGVuIGAlaScgZm9yIHN0cmVhbSIKK21zZ3N0ciAibmllIGplIG1vxb5uw6kgb3R2b3JpxaUg4oCeJWnigJwgcHJlIHRvayIKKworIzogc3JjL21haW4uYzo2NzYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgYmVmb3JlIGVuZCBvZiBsaW5lICVkIgorbXNnc3RyICJuZcSNYWthbsO9IGtvbmllYyBzw7pib3J1IHByZWQga29uY29tIHJpYWRrYSAlZCIKKworIzogc3JjL21haW4uYzo3MTkgc3JjL21haW4uYzo3NDEgc3JjL3F1ZXJ5Y21kLmM6NjkyIHNyYy9zdGF0Y21kLmM6Mzc5CisjOiBkcGtnLWRlYi9tYWluLmM6MjAxIGRwa2ctc3BsaXQvbWFpbi5jOjE2MworbXNnaWQgIm5lZWQgYW4gYWN0aW9uIG9wdGlvbiIKK21zZ3N0ciAidnnFvmFkdWplIHNhIHphZGFuaWUgdm/EvmJ5IHVyxI11asO6Y2VqIG9wZXLDoWNpdSIKKworIzogc3JjL3BhY2thZ2VzLmM6MTEzCittc2dpZCAiIgorInlvdSBtdXN0IHNwZWNpZnkgcGFja2FnZXMgYnkgdGhlaXIgb3duIG5hbWVzLCBub3QgYnkgcXVvdGluZyB0aGUgbmFtZXMgb2YgIgorInRoZSBmaWxlcyB0aGV5IGNvbWUgaW4iCittc2dzdHIgIiIKKyJtdXPDrXRlIG96bmHEjWnFpSBiYWzDrWt5IGljaCB2bGFzdG7DvW1pIG7DoXp2YW1pLCBuaWUgY2l0b3ZhbsOtbSBuw6F6dm92IHPDumJvcm92IHogIgorImt0b3LDvWNoIHBvY2jDoWR6YWrDuiIKKworIzogc3JjL3BhY2thZ2VzLmM6MTMzCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgLS1wZW5kaW5nIGRvZXMgbm90IHRha2UgYW55IG5vbi1vcHRpb24gYXJndW1lbnRzIgorbXNnc3RyICItLSVzIC0tcGVuZGluZyBuZXByaWrDrW1hIMW+aWFkbmUgYXJndW1lbnR5IgorCisjOiBzcmMvcGFja2FnZXMuYzoxMzggc3JjL3F1ZXJ5Y21kLmM6Mzc1IHNyYy9xdWVyeWNtZC5jOjU2NQorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGF0IGxlYXN0IG9uZSBwYWNrYWdlIG5hbWUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMgdnnFvmFkdWplIGFrbyBwYXJhbWV0ZXIgYXNwb8WIIGplZGVuIG7DoXpvdiBiYWzDrWthIgorCisjOiBzcmMvcGFja2FnZXMuYzoxNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSAlcyBsaXN0ZWQgbW9yZSB0aGFuIG9uY2UsIG9ubHkgcHJvY2Vzc2luZyBvbmNlLlxuIgorbXNnc3RyICJCYWzDrWsgJXMgdXZlZGVuw70gdmlhYyBha28gamVkZW5rcsOhdCwgc3ByYWN1amUgc2EgbGVuIHJhei5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MTgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJNb3JlIHRoYW4gb25lIGNvcHkgb2YgcGFja2FnZSAlcyBoYXMgYmVlbiB1bnBhY2tlZFxuIgorIiBpbiB0aGlzIHJ1biAhICBPbmx5IGNvbmZpZ3VyaW5nIGl0IG9uY2UuXG4iCittc2dzdHIgIiIKKyJWaWFjIGFrbyBqZWRuYSBrw7NwaWEgYmFsw61rYSAlcyBib2xhIHJvemJhbGVuw6FcbiIKKyIgdiB0b210byBiZWh1ISBLb25maWd1cnVqZSBzYSBsZW4gamVkZW5rcsOhdC5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJwYWNrYWdlICUuMjUwcyBpcyBub3QgcmVhZHkgZm9yIHRyaWdnZXIgcHJvY2Vzc2luZ1xuIgorIiAoY3VycmVudCBzdGF0dXMgYCUuMjUwcycgd2l0aCBubyBwZW5kaW5nIHRyaWdnZXJzKSIKK21zZ3N0ciAiIgorImJhbMOtayAlLjI1MHMgbmllIGplIHByaXByYXZlbsO9IG5hIHNwcmFjb3ZhbmllIHNww7rFocWlYcSNb3ZcbiIKKyIgKHPDusSNYXNuw70gc3RhdiDigJ4lLjI1MHPigJwsIG5lxI1ha8OhIHNhIG5hIMW+aWFkbmUgc3DDusWhxaVhxI1lXG4iCisiICh0cmlnZ2Vycy1wZW5kaW5nKSkiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjMzNAorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgd2hpY2ggcHJvdmlkZXMgJXMgaXMgdG8gYmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiICBCYWzDrWsgJXMsIGt0b3LDvSBwb3NreXR1amUgJXMsIHNhIG9kc3Ryw6FuaS5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MzM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIgIEJhbMOtayAlcyBzYSBvZHN0csOhbmkuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjM1NAorIywgYy1mb3JtYXQKK21zZ2lkICIgIFZlcnNpb24gb2YgJXMgb24gc3lzdGVtIGlzICVzLlxuIgorbXNnc3RyICIgIFZlcnppYSAlcyBuYSBzeXN0w6ltZSBqZSAlcy5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6Mzc2CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyB3aGljaCBwcm92aWRlcyAlcyBhd2FpdHMgdHJpZ2dlciBwcm9jZXNzaW5nLlxuIgorbXNnc3RyICIgIEJhbMOtayAlcywga3RvcsO9IHBvc2t5dHVqZSAlcywgb8SNYWvDoXZhIHNwcmFjb3ZhbmllIHNww7rFocWlYcSNb3YuLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzozODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIGF3YWl0cyB0cmlnZ2VyIHByb2Nlc3NpbmcuXG4iCittc2dzdHIgIiAgQmFsw61rICVzIG/EjWFrw6F2YSBzcHJhY292YW5pZSBzcMO6xaHFpWHEjW92LlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogYWxzbyBjb25maWd1cmluZyBgJXMnIChyZXF1aXJlZCBieSBgJXMnKVxuIgorbXNnc3RyICJkcGtnOiB0YWt0aWXFviBzYSBrb25maWd1cnVqZSDigJ4lc+KAnCAodnnFvmFkdWplIGhvIOKAniVz4oCcKVxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIHdoaWNoIHByb3ZpZGVzICVzIGlzIG5vdCBjb25maWd1cmVkIHlldC5cbiIKK21zZ3N0ciAiICBCYWzDrWsgJXMsIGt0b3LDvSBwb3NreXR1amUgJXMsIGXFoXRlIG5pZSBqZSBuYWtvbmZpZ3Vyb3ZhbsO9LlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIGlzIG5vdCBjb25maWd1cmVkIHlldC5cbiIKK21zZ3N0ciAiICBCYWzDrWsgJXMgZcWhdGUgbmllIGplIG5ha29uZmlndXJvdmFuw70uXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQzMgorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgd2hpY2ggcHJvdmlkZXMgJXMgaXMgbm90IGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiICBCYWzDrWsg4oCeJXPigJwsIGt0b3LDvSBwb3NreXR1amUgJXMsIG5pZSBqZSBuYWluxaF0YWxvdmFuw70uXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQzNQorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgaXMgbm90IGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiICBCYWzDrWsgJXMgbmllIGplIG5haW7FoXRhbG92YW7DvS5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDcyCisjLCBjLWZvcm1hdAorbXNnaWQgIiAlcyAoJXMpIGJyZWFrcyAlcyBhbmQgaXMgJXMuXG4iCittc2dzdHIgIiAlcyAoJXMpIGthesOtICVzIGEgamUgJXMuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQ3OAorIywgYy1mb3JtYXQKK21zZ2lkICIgICVzICglcykgcHJvdmlkZXMgJXMuXG4iCittc2dzdHIgIiAgJXMgKCVzKSBwb3NreXR1amUgJXMuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQ4MgorIywgYy1mb3JtYXQKK21zZ2lkICIgIFZlcnNpb24gb2YgJXMgdG8gYmUgY29uZmlndXJlZCBpcyAlcy5cbiIKK21zZ3N0ciAiICBWZXJ6aWEgJXMsIGt0b3LDoSBzYSBtw6Ega29uZmlndXJvdmHFpSwgamUgJXMuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjU5NgorbXNnaWQgIiBkZXBlbmRzIG9uICIKK21zZ3N0ciAiIHrDoXZpc8OtIG5hICIKKworIzogc3JjL3BhY2thZ2VzLmM6NjAyCittc2dpZCAiOyBob3dldmVyOlxuIgorbXNnc3RyICI7IGFqIGtlxI86XG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiLi4uLyVzIgorbXNnc3RyICIuLi4vJXMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgZW5zdXJpbmcgYCUuMjUwcycgZG9lc24ndCBleGlzdCIKK21zZ3N0ciAiY2h5YmEgcG90dnJkenVqw7pjYSwgxb5lIOKAniUuMjUwc+KAnCBuZWV4aXN0dWplIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjk5Cittc2dpZCAic3BsaXQgcGFja2FnZSByZWFzc2VtYmx5IgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTA4Cittc2dpZCAicmVhc3NlbWJsZWQgcGFja2FnZSBmaWxlIgorbXNnc3RyICJ6bm92dXpvc3RhdmVuw70gc8O6Ym9yIGJhbMOta2EiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTMzCisjLCBjLWZvcm1hdAorbXNnaWQgIkF1dGhlbnRpY2F0aW5nICVzIC4uLlxuIgorbXNnc3RyICJPdmVydWplIHNhICVzIC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEzOQorbXNnaWQgInBhY2thZ2Ugc2lnbmF0dXJlIHZlcmlmaWNhdGlvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE0NgorIywgYy1mb3JtYXQKK21zZ2lkICJWZXJpZmljYXRpb24gb24gcGFja2FnZSAlcyBmYWlsZWQhIgorbXNnc3RyICJWZXJpZmlrw6FjaWEgYmFsw61rYSAlcyB6bHloYWxhISIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlZlcmlmaWNhdGlvbiBvbiBwYWNrYWdlICVzIGZhaWxlZCxcbiIKKyJidXQgaW5zdGFsbGluZyBhbnl3YXkgYXMgeW91IHJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiIgorIlZlcmlmaWvDoWNpYSBiYWzDrWthICVzIHpseWhhbGEsXG4iCisibmFwcmllayB0b211IHNhIGluxaF0YWx1amUgcG9kxL5hIHZhxaFlaiBwb8W+aWFkYXZreS5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFzc2VkXG4iCittc2dzdHIgInByZcWhaWVsXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTY1IGRwa2ctZGViL2luZm8uYzo4MQorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdGVtcG9yYXJ5IGRpcmVjdG9yeSIKK21zZ3N0ciAiemx5aGFsbyB2eXR2b3JlbmllIGRvxI1hc27DqWhvIGFkcmVzw6FyYSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlcyBoYXMgdG9vIG1hbnkgQ29uZmxpY3RzL1JlcGxhY2VzIHBhaXJzIgorbXNnc3RyICJiYWzDrWsgJXMgbcOhIHByw61sacWhIHZlxL5hIGR2b2rDrWMgViBrb25mbGlrdGUgcy9OYWhyw6FkemEiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MjQzCisjLCBjLWZvcm1hdAorbXNnaWQgIm9sZCB2ZXJzaW9uIG9mIHBhY2thZ2UgaGFzIG92ZXJseS1sb25nIGluZm8gZmlsZSBuYW1lIHN0YXJ0aW5nIGAlLjI1MHMnIgorbXNnc3RyICIiCisic3RhcsOhIHZlcnppYSBiYWzDrWthIG3DoSBwcsOtbGnFoSBkbGjDvSBuw6F6b3YgaW5mbyBzw7pib3J1LCBrdG9yw70gemHEjcOtbmEg4oCeJS4yNTBz4oCcIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjI4MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIG9ic29sZXRlIGluZm8gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmllIGplIG1vxb5uw6kgb2RzdHLDoW5pxaUgemFzdGFyYWzDvSBpbmZvIHPDumJvciDigJ4lLjI1MHPigJwiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6Mjg2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIChzdXBwb3NlZCkgbmV3IGluZm8gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmllIGplIG1vxb5uw6kgbmFpbsWhdGFsb3ZhxaUgKG5hdnJob3ZhbsO9KSBub3bDvSBpbmZvIHPDumJvciDigJ4lLjI1MHPigJwiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6Mjk2Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gdGVtcCBjb250cm9sIGRpcmVjdG9yeSIKK21zZ3N0ciAibmllIGplIG1vxb5uw6kgb3R2b3JpxaUgZG/EjWFzbsO9IHJpYWRpYWNpIGFkcmVzw6FyIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMwNworIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGNvbnRhaW5zIG92ZXJseS1sb25nIGNvbnRyb2wgaW5mbyBmaWxlIG5hbWUgKHN0YXJ0aW5nIGAlLjUwcycpIgorbXNnc3RyICIiCisiYmFsw61rIG9ic2FodWplIHByw61sacWhIGRsaMO9IG7DoXpvdiByaWFkaWFjZWhvIGluZm8gc8O6Ym9ydSAoemHEjcOtbmFqw7pjaSDigJ4lLjUwc+KAnCkiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzE0CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgY29udHJvbCBpbmZvIGNvbnRhaW5lZCBkaXJlY3RvcnkgYCUuMjUwcyciCittc2dzdHIgInJpYWRpYWNpIGluZm8gYmFsw61rIG9ic2Fob3ZhbCBhZHJlc8OhciDigJ4lLjI1MHPigJwiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzE2CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgY29udHJvbCBpbmZvIHJtZGlyIG9mIGAlLjI1MHMnIGRpZG4ndCBzYXkgbm90IGEgZGlyIgorbXNnc3RyICIiCisiZnVua2NpYSBybWRpciB1IGluZm9ybcOhY2nDrSBvIHJpYWRlbsOtIGJhbMOta2Eg4oCeJS4yNTBz4oCcIG5lcG92ZWRhbGEsIMW+ZSB0byBuaWUgIgorImplIGFkcmVzw6FyIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMyNgorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlICVzIGNvbnRhaW5lZCBsaXN0IGFzIGluZm8gZmlsZSIKK21zZ3N0ciAiYmFsw61rICVzIG9ic2Fob3ZhbCB6b3puYW0gYWtvIGluZm8gc8O6Ym9yIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMzMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgaW5mbyBmaWxlIGAlLjI1MHMnIGFzIGAlLjI1MHMnIgorbXNnc3RyICJuaWUgamUgbW/Fvm7DqSBuYWluxaF0YWxvdmHFpSBub3bDvSBpbmZvIHPDumJvciDigJ4lLjI1MHPigJwgYWtvIOKAniUuMjUwc+KAnCIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozNDkgc3JjL3JlbW92ZS5jOjE5OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGVsZXRlIGNvbnRyb2wgaW5mbyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuaWUgamUgbW/Fvm7DqSB2eW1hemHFpSByaWFkaWFjaSBpbmZvIHPDumJvciDigJ4lLjI1MHPigJwiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDExCittc2dpZCAiY2Fubm90IGFjY2VzcyBhcmNoaXZlIgorbXNnc3RyICJuaWUgamUgbW/Fvm7DqSB2c3TDunBpxaUgZG8gYXJjaMOtdnUiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDMzCisjLCBmdXp6eQorI3wgbXNnaWQgImNvbnRyb2wgaW5mb3JtYXRpb24gbGVuZ3RoIgorbXNnaWQgInBhY2thZ2UgY29udHJvbCBpbmZvcm1hdGlvbiBleHRyYWN0aW9uIgorbXNnc3RyICJkxLrFvmthIHJpYWRpYWNlaiBpbmZvcm3DoWNpZSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo0NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVjb3JkZWQgaW5mbyBhYm91dCAlcyBmcm9tICVzLlxuIgorbXNnc3RyICJaYXpuYW1lbmFuw6kgaW5mb3Jtw6FjaWUgbyAlcyB6ICVzLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjQ2OAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGFyY2hpdGVjdHVyZSAoJXMpIGRvZXMgbm90IG1hdGNoIHN5c3RlbSAoJXMpIgorbXNnc3RyICJhcmNoaXRla3TDunJhIGJhbMOta2EgKCVzKSBuZXpvZHBvdmVkw6Egc3lzdMOpbXUgKCVzKSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1MjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IHJlZ2FyZGluZyAlcyBjb250YWluaW5nICVzLCBwcmUtZGVwZW5kZW5jeSBwcm9ibGVtOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogcHJvYmzDqW0gcyBwcmVkLXrDoXZpc2xvc8WlYW1pIHYgc8O6dmlzbG9zdGkgcyAlcywgb2JzYWh1asO6Y2ltICVzOlxuIgorIiVzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjUyNgorIywgYy1mb3JtYXQKK21zZ2lkICJwcmUtZGVwZW5kZW5jeSBwcm9ibGVtIC0gbm90IGluc3RhbGxpbmcgJS4yNTBzIgorbXNnc3RyICJwcm9ibMOpbSBzIHByZWQtesOhdmlzbG9zxaVhbWkgLSBuZWluxaF0YWx1amUgc2EgJS4yNTBzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjUyNworbXNnaWQgImlnbm9yaW5nIHByZS1kZXBlbmRlbmN5IHByb2JsZW0hIgorbXNnc3RyICJpZ25vcnVqZSBzYSBwcm9ibMOpbSBzIHByZWQtesOhdmlzbG9zxaVhbWkhIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjU0MworIywgYy1mb3JtYXQKK21zZ2lkICJQcmVwYXJpbmcgdG8gcmVwbGFjZSAlcyAlcyAodXNpbmcgJXMpIC4uLlxuIgorbXNnc3RyICJQcmlwcmF2dWplIHNhIG5haHJhZGVuaWUgJXMgJXMgKHBvbW9jb3UgJXMpIC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjU0OQorIywgYy1mb3JtYXQKK21zZ2lkICJVbnBhY2tpbmcgJXMgKGZyb20gJXMpIC4uLlxuIgorbXNnc3RyICJSb3piYcS+dWplIHNhICVzICh6ICVzKSAuLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAibmFtZSBvZiBjb25mZmlsZSAoc3RhcnRpbmcgYCUuMjUwcycpIGlzIHRvbyBsb25nICg+JWQgY2hhcmFjdGVycykiCittc2dzdHIgIiIKKyJuw6F6b3Yga29uZmlndXJhxI1uw6lobyBzw7pib3J1ICh6YcSNw61uYWrDumNpIOKAniUuMjUwc+KAnCkgamUgcHLDrWxpxaEgZGxow70gKD4lZCB6bmFrb3YpIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjYzMyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA3MQorIywgYy1mb3JtYXQKK21zZ2lkICJyZWFkIGVycm9yIGluICUuMjUwcyIKK21zZ3N0ciAiY2h5YmEgcHJpIMSNw610YW7DrSB2ICUuMjUwcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyAlLjI1MHMiCittc2dzdHIgImNoeWJhIHByaSB6YXR2w6FyYW7DrSAlLjI1MHMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjM3CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHRyeWluZyB0byBvcGVuICUuMjUwcyIKK21zZ3N0ciAiY2h5YmEgcHJpIHBva3VzZSBvdHZvcmnFpSAlLjI1MHMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6Njc4CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlLWNvbmZpZ3VyaW5nICVzLCB0byBhbGxvdyByZW1vdmFsIG9mICVzIC4uLlxuIgorbXNnc3RyICJEZWtvbmZpZ3VydWplIHNhICVzLCBhYnkgc2EgdW1vxb5uaWxvIG9kc3Ryw6FuZW5pZSAlcyAuLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGUtY29uZmlndXJpbmcgJXMgLi4uXG4iCittc2dzdHIgIkRla29uZmlndXJ1amUgc2EgJXMgLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NzU1CisjLCBjLWZvcm1hdAorbXNnaWQgIlVucGFja2luZyByZXBsYWNlbWVudCAlLjI1MHMgLi4uXG4iCittc2dzdHIgIlJvemJhxL51amUgc2EgbsOhaHJhZGEgJS4yNTBzIC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjg0MAorIywgZnV6enkKKyN8IG1zZ2lkICJkcGtnLWRlYiBmaWVsZCBleHRyYWN0aW9uIgorbXNnaWQgInBhY2thZ2UgZmlsZXN5c3RlbSBhcmNoaXZlIGV4dHJhY3Rpb24iCittc2dzdHIgImV4dHJha2NpYSBwb8S+YSBkcGtnLWRlYiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NTQKK21zZ2lkICJlcnJvciByZWFkaW5nIGRwa2ctZGViIHRhciBvdXRwdXQiCittc2dzdHIgImNoeWJhIHByaSDEjcOtdGFuw60gZHBrZy1kZWIgdGFyIHbDvXN0dXB1IgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjg1NgorbXNnaWQgImNvcnJ1cHRlZCBmaWxlc3lzdGVtIHRhcmZpbGUgLSBjb3JydXB0ZWQgcGFja2FnZSBhcmNoaXZlIgorbXNnc3RyICJwb8Wha29kZW7DvSBzeXN0w6ltb3bDvSB0YXIgc8O6Ym9yIC0gcG/FoWtvZGVuw70gYXJjaMOtdiBiYWzDrWtvdiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NTkKK21zZ2lkICJkcGtnLWRlYjogemFwIHBvc3NpYmxlIHRyYWlsaW5nIHplcm9zIgorbXNnc3RyICJkcGtnLWRlYjogenJ1xaFpxaUgbW/Fvm7DqSBrb25jb3bDqSBudWx5IgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjkxOQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgc3RhdCBvbGQgZmlsZSAnJS4yNTBzJyBzbyBub3QgZGVsZXRpbmcgaXQ6ICVzIgorbXNnc3RyICJuZWTDoSBzYSB6aXN0acWlIHN0YXYgc3RhcsOpaG8gc8O6Ym9ydSDigJ4lLjI1MHPigJwsIHRha8W+ZSBzYSBuZWJ1ZGUgbWF6YcWlOiAlcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSBvbGQgZGlyZWN0b3J5ICclLjI1MHMnOiAlcyIKK21zZ3N0ciAibmVkw6Egc2Egem1hemHFpSBzdGFyw70gYWRyZXPDoXIg4oCeJS4yNTBz4oCcOiAlcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAib2xkIGNvbmZmaWxlICclLjI1MHMnIHdhcyBhbiBlbXB0eSBkaXJlY3RvcnkgKGFuZCBoYXMgbm93IGJlZW4gZGVsZXRlZCkiCittc2dzdHIgIiIKKyJzdGFyw70ga29uZmlndXJhxI1uw70gc8O6Ym9yIOKAniUuMjUwc+KAnCBqZSBwcsOhemRueSBhZHJlc8OhciAoYSB0ZXJheiBib2wgem1hemFuw70pIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjk3NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBvdGhlciBuZXcgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmVkw6Egc2EgemlzdGnFpSBzdGF2IMSPYWzFoWllaG8gbm92w6lobyBzw7pib3J1IOKAniUuMjUwc+KAnCIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm9sZCBmaWxlICclLjI1MHMnIGlzIHRoZSBzYW1lIGFzIHNldmVyYWwgbmV3IGZpbGVzISAoYm90aCAnJS4yNTBzJyBhbmQgIgorIiclLjI1MHMnKSIKK21zZ3N0ciAiIgorInN0YXLDvSBzw7pib3Ig4oCeJS4yNTBz4oCcIGplIHJvdm5ha8O9IGFrbyBuaWVrb8S+a28gbm92w71jaCBzw7pib3JvdiEgKOKAniUuMjUwc+KAnCBhaiAiCisi4oCeJS4yNTBz4oCcKSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxMDI1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWN1cmVseSByZW1vdmUgb2xkIGZpbGUgJyUuMjUwcyc6ICVzIgorbXNnc3RyICJuZWTDoSBzYSBiZXpwZcSNbmUgb2RzdHLDoW5pxaUgc3RhcsO9IHPDumJvciDigJ4lLjI1MHPigJw6ICVzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEyMDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiKE5vdGluZyBkaXNhcHBlYXJhbmNlIG9mICVzLCB3aGljaCBoYXMgYmVlbiBjb21wbGV0ZWx5IHJlcGxhY2VkLilcbiIKK21zZ3N0ciAiKFZ5c2t5dGxvIHNhIHptaXpudXRpZSBiYWzDrWthICVzLCBrdG9yw70gYm9sIMO6cGxuZSBuYWhyYWRlbsO9LilcbiIKKworIy4gVFJBTlNMQVRPUlM6IFRoaXMgaXMgdGhlIGhlYWRlciB0aGF0IGFwcGVhcnMgb24gJ2Rwa2ctcXVlcnkgLWwnLiBUaGUKKyMuICogc3RyaW5nIHNob3VsZCByZW1haW4gdW5kZXIgODAgY2hhcmFjdGVycy4gVGhlIHVwcGVyY2FzZSBsZXR0ZXJzIGluCisjLiAqIHRoZSBzdGF0ZSB2YWx1ZXMgZGVub3RlIHRoZSBhYmJyZXZpYXRlZCBsZXR0ZXIgdGhhdCB3aWxsIGFwcGVhciBvbgorIy4gKiB0aGUgZmlyc3QgdGhyZWUgY29sdW1ucywgd2hpY2ggc2hvdWxkIGlkZWFsbHkgbWF0Y2ggdGhlIEVuZ2xpc2ggb25lCisjLiAqIChlLmcuIFJlbW92ZSDihpIgc3VwUmltZWl4KSwgc2VlIGRwa2ctcXVlcnkoMSkgZm9yIGZ1cnRoZXIgZGV0YWlscy4gVGhlCisjLiAqIHRyYW5zbGF0ZWQgbWVzc2FnZSBjYW4gdXNlIGFkZGl0aW9uYWwgbGluZXMgaWYgbmVlZGVkLgorIzogc3JjL3F1ZXJ5Y21kLmM6MTQ5Cittc2dpZCAiIgorIkRlc2lyZWQ9VW5rbm93bi9JbnN0YWxsL1JlbW92ZS9QdXJnZS9Ib2xkXG4iCisifCBTdGF0dXM9Tm90L0luc3QvQ29uZi1maWxlcy9VbnBhY2tlZC9oYWxGLWNvbmYvSGFsZi1pbnN0L3RyaWctYVdhaXQvVHJpZy0iCisicGVuZFxuIgorInwvIEVycj89KG5vbmUpL1JlaW5zdC1yZXF1aXJlZCAoU3RhdHVzLEVycjogdXBwZXJjYXNlPWJhZClcbiIKK21zZ3N0ciAiIgorIlBvxb5hZG92YW7DvT1OZXpuw6FteS9JbsWhdGFsb3ZhxaUvT2RzdHLDoW5pxaUvVnnEjWlzdGnFpS9Qb2Ryxb5hxaVcbiIKKyJ8IFN0YXY9TmllL0luxaF0YWxvdmFuw70vS29uZmlnLXPDumJvcnkvUm96YmFsZW7DvS9abMO9LWtvbmZpZy9Qb2xvLWluxaF0YWxvdmFuw70vIgorIm/EjWFrLXNww7rFocWlL8SNYWvDoS1uYS1zcMO6xaHFpVxuIgorInwvIENoeWJhPz0oxb5pYWRuYSkvUmVpbsWhdC12ecW+YWRvdmFuw6EgKFN0YXYsQ2h5YmE6IHZlxL5rw6kgcMOtc21lbm89emxlKVxuIgorCisjOiBzcmMvcXVlcnljbWQuYzoxNTMKK21zZ2lkICJOYW1lIgorbXNnc3RyICJOw6F6b3YiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjE1MworbXNnaWQgIlZlcnNpb24iCittc2dzdHIgIlZlcnppYSIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MTU0Cittc2dpZCAiRGVzY3JpcHRpb24iCittc2dzdHIgIlBvcGlzIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNDYgc3JjL3F1ZXJ5Y21kLmM6NTExIHNyYy9zZWxlY3QuYzo3NQorIywgYy1mb3JtYXQKK21zZ2lkICJObyBwYWNrYWdlcyBmb3VuZCBtYXRjaGluZyAlcy5cbiIKK21zZ3N0ciAiTmVuYcWhbGkgc2Egxb5pYWRuZSBiYWzDrWt5IHZ5aG92dWrDumNlICVzLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJzaW9uIGJ5ICVzIGZyb206ICVzXG4iCittc2dzdHIgIm9kc3VudXTDqSBiYWzDrWtvbSAlcyB6OiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJzaW9uIGJ5ICVzIHRvOiAlc1xuIgorbXNnc3RyICJvZHN1bnV0w6kgYmFsw61rb20gJXMgZG86ICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI3OAorIywgYy1mb3JtYXQKK21zZ2lkICJsb2NhbCBkaXZlcnNpb24gZnJvbTogJXNcbiIKK21zZ3N0ciAibG9rw6FsbmUgb2RzdW51dGllIHo6ICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI3OQorIywgYy1mb3JtYXQKK21zZ2lkICJsb2NhbCBkaXZlcnNpb24gdG86ICVzXG4iCittc2dzdHIgImxva8OhbG5lIG9kc3VudXRpZSBkbzogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MzA5Cittc2dpZCAiLS1zZWFyY2ggbmVlZHMgYXQgbGVhc3Qgb25lIGZpbGUgbmFtZSBwYXR0ZXJuIGFyZ3VtZW50IgorbXNnc3RyICItLXNlYXJjaCBwb3RyZWJ1amUgbmFqbWVuZWogamVkZW4gYXJndW1lbnQgdnpvcmt5IG7DoXp2dSBzw7pib3J1IgorCisjOiBzcmMvcXVlcnljbWQuYzozNTAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIk5vIHBhY2thZ2VzIGZvdW5kIG1hdGNoaW5nICVzLlxuIgorbXNnaWQgIiVzOiBubyBwYXRoIGZvdW5kIG1hdGNoaW5nIHBhdHRlcm4gJXMuXG4iCittc2dzdHIgIk5lbmHFoWxpIHNhIMW+aWFkbmUgYmFsw61reSB2eWhvdnVqw7pjZSAlcy5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MzkzCisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgYCVzJyBpcyBub3QgaW5zdGFsbGVkIGFuZCBubyBpbmZvIGlzIGF2YWlsYWJsZS5cbiIKK21zZ3N0ciAiIgorIkJhbMOtayDigJ4lc+KAnCBuaWUgamUgbmFpbsWhdGFsb3ZhbsO9IGEgbmllIHPDuiBvIMWIb20gZG9zdHVwbsOpIMW+aWFkbmUgaW5mb3Jtw6FjaWUuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQwMQorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlIGAlcycgaXMgbm90IGF2YWlsYWJsZS5cbiIKK21zZ3N0ciAiQmFsw61rIOKAniVz4oCcIG5pZSBqZSBkb3N0dXBuw70uXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQxMCBzcmMvcXVlcnljbWQuYzo1ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSBgJXMnIGlzIG5vdCBpbnN0YWxsZWQuXG4iCittc2dzdHIgIkJhbMOtayDigJ4lc+KAnCBuaWUgamUgbmFpbsWhdGFsb3ZhbsO9LlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSBgJXMnIGRvZXMgbm90IGNvbnRhaW4gYW55IGZpbGVzICghKVxuIgorbXNnc3RyICJCYWzDrWsg4oCeJXPigJwgbmVvYnNhaHVqZSDFvmlhZG5lIHPDumJvcnkgKCEpXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQyNQorIywgYy1mb3JtYXQKK21zZ2lkICJsb2NhbGx5IGRpdmVydGVkIHRvOiAlc1xuIgorbXNnc3RyICJsb2vDoWxuZSBvZHN1bnV0w70gZG86ICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQyOAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGRpdmVydHMgb3RoZXJzIHRvOiAlc1xuIgorbXNnc3RyICJiYWzDrWsgb2Rzw7p2YSBvc3RhdG7DqSBkbzogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDMxCisjLCBjLWZvcm1hdAorbXNnaWQgImRpdmVydGVkIGJ5ICVzIHRvOiAlc1xuIgorbXNnc3RyICJvZHN1bnV0w6kgYmFsw61rb20gJXMgZG86ICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQ1MgorbXNnaWQgIiIKKyJVc2UgZHBrZyAtLWluZm8gKD0gZHBrZy1kZWIgLS1pbmZvKSB0byBleGFtaW5lIGFyY2hpdmUgZmlsZXMsXG4iCisiYW5kIGRwa2cgLS1jb250ZW50cyAoPSBkcGtnLWRlYiAtLWNvbnRlbnRzKSB0byBsaXN0IHRoZWlyIGNvbnRlbnRzLlxuIgorbXNnc3RyICIiCisiUG91xb5pdGUgZHBrZyAtLWluZm8gKD0gZHBrZy1kZWIgLS1pbmZvKSBuYSBwcmVza8O6bWFuaWUgc8O6Ym9yb3YgYXJjaMOtdm92LFxuIgorImEgZHBrZyAtLWNvbnRlbnRzICg9IGRwa2ctZGViIC0tY29udGVudHMpIG5hIHZ5cMOtc2FuaWUgaWNoIG9ic2FodS5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NTcwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgYXQgbW9zdCB0d28gYXJndW1lbnRzIgorbXNnc3RyICItLSVzIHZ5xb5hZHVqZSBuYWp2aWFjIGR2YSBhcmd1bWVudHkiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjU3OAorIywgYy1mb3JtYXQKK21zZ2lkICJjb250cm9sIGZpbGUgY29udGFpbnMgJWMiCittc2dzdHIgInJpYWRpYWNpIHPDumJvciBvYnNhaHVqZSAlYyIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjAwCisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiAlcyBwYWNrYWdlIG1hbmFnZW1lbnQgcHJvZ3JhbSBxdWVyeSB0b29sIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIlByb2dyYW0g4oCeJXPigJwgbmEgw7pkcsW+YnUgYmFsw61rb3YgRGViaWFudSwgdmVyemlhICVzLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo2MTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJDb21tYW5kczpcbiIKKyN8ICIgIC1zfC0tc3RhdHVzIDxwYWNrYWdlPiAuLi4gICAgICAgIERpc3BsYXkgcGFja2FnZSBzdGF0dXMgZGV0YWlscy5cbiIKKyN8ICIgIC1wfC0tcHJpbnQtYXZhaWwgPHBhY2thZ2U+IC4uLiAgIERpc3BsYXkgYXZhaWxhYmxlIHZlcnNpb24gZGV0YWlscy5cbiIKKyN8ICIgIC1MfC0tbGlzdGZpbGVzIDxwYWNrYWdlPiAuLi4gICAgIExpc3QgZmlsZXMgYG93bmVkJyBieSBwYWNrYWdlKHMpLlxuIgorI3wgIiAgLWx8LS1saXN0IFs8cGF0dGVybj4gLi4uXSAgICAgICAgTGlzdCBwYWNrYWdlcyBjb25jaXNlbHkuXG4iCisjfCAiICAtV3wtLXNob3cgPHBhdHRlcm4+IC4uLiAgICAgICAgICBTaG93IGluZm9ybWF0aW9uIG9uIHBhY2thZ2UocykuXG4iCisjfCAiICAtU3wtLXNlYXJjaCA8cGF0dGVybj4gLi4uICAgICAgICBGaW5kIHBhY2thZ2Uocykgb3duaW5nIGZpbGUocykuXG4iCisjfCAiICAtY3wtLWNvbnRyb2wtcGF0aCA8cGFja2FnZT4gWzxmaWxlPl1cbiIKKyN8ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFByaW50IHBhdGggZm9yIHBhY2thZ2UgY29udHJvbCBmaWxlLlxuIgorI3wgIlxuIgorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1zfC0tc3RhdHVzIDxwYWNrYWdlPiAuLi4gICAgICAgIERpc3BsYXkgcGFja2FnZSBzdGF0dXMgZGV0YWlscy5cbiIKKyIgIC1wfC0tcHJpbnQtYXZhaWwgPHBhY2thZ2U+IC4uLiAgIERpc3BsYXkgYXZhaWxhYmxlIHZlcnNpb24gZGV0YWlscy5cbiIKKyIgIC1MfC0tbGlzdGZpbGVzIDxwYWNrYWdlPiAuLi4gICAgIExpc3QgZmlsZXMgYG93bmVkJyBieSBwYWNrYWdlKHMpLlxuIgorIiAgLWx8LS1saXN0IFs8cGF0dGVybj4gLi4uXSAgICAgICAgTGlzdCBwYWNrYWdlcyBjb25jaXNlbHkuXG4iCisiICAtV3wtLXNob3cgWzxwYXR0ZXJuPiAuLi5dICAgICAgICBTaG93IGluZm9ybWF0aW9uIG9uIHBhY2thZ2UocykuXG4iCisiICAtU3wtLXNlYXJjaCA8cGF0dGVybj4gLi4uICAgICAgICBGaW5kIHBhY2thZ2Uocykgb3duaW5nIGZpbGUocykuXG4iCisiICAtY3wtLWNvbnRyb2wtcGF0aCA8cGFja2FnZT4gWzxmaWxlPl1cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFByaW50IHBhdGggZm9yIHBhY2thZ2UgY29udHJvbCBmaWxlLlxuIgorIlxuIgorbXNnc3RyICIiCisiUHLDrWthenk6XG4iCisiICAtc3wtLXN0YXR1cyA8YmFsw61rPiAuLi4gICAgICAgICAgWm9icmF6w60gcG9kcm9ibm9zdGkgbyBzdGF2ZSBiYWzDrWthLlxuIgorIiAgLXB8LS1wcmludC1hdmFpbCA8YmFsw61rPiAuLi4gICAgIFpvYnJhesOtIHBvZHJvYm5vc3RpIG8gZG9zdHVwbmVqIHZlcnppaS5cbiIKKyIgIC1MfC0tbGlzdGZpbGVzIDxiYWzDrWs+IC4uLiAgICAgICBab2JyYXrDrSBzw7pib3J5IOKAnnZsYXN0bmVuw6nigJwgYmFsw61rb20obWkpLlxuIgorIiAgLWx8LS1saXN0IFs8dnpvcmthPiAuLi5dICAgICAgICAgWm9icmF6w60gem96bmFtIGJhbMOta292LlxuIgorIiAgLVd8LS1zaG93IDx2em9ya2E+IC4uLiAgICAgICAgICAgWm9icmF6w60gaW5mb3Jtw6FjaWUgbyBiYWzDrWt1KG9jaCkuXG4iCisiICAtU3wtLXNlYXJjaCA8dnpvcmthPiAuLi4gICAgICAgICBOw6FqZGUgYmFsw61rKHkpIHZsYXN0bmlhY2koZSkgc8O6Ym9yKHkpLlxuIgorIiAgLWN8LS1jb250cm9sLXBhdGggPGJhbMOtaz4gWzxzw7pib3I+XVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVnlww61zYcWlIGNlc3R1IGsgcmlhZGlhY2VtdSBzw7pib3J1ICIKKyJiYWzDrWthLlxuIgorIlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo2MzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgICAgICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyIgIC1mfC0tc2hvd2Zvcm1hdD08Zm9ybWF0PiAgICAgICAgIFVzZSBhbHRlcm5hdGl2ZSBmb3JtYXQgZm9yIC0tc2hvdy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIlZvxL5ieTpcbiIKKyIgIC0tYWRtaW5kaXI9PGFkcmVzw6FyPiAgICAgICAgICAgICAgIFBvdcW+aWplIDxhZHJlc8Ohcj4gbmFtaWVzdG8gJXNcbiIKKyIgIC1mfC0tc2hvd2Zvcm1hdD08Zm9ybWF0PiAgICAgICAgICAgUG91xb5pamUgYWx0ZXJuYXTDrXZueSBmb3Jtw6F0IHByZSAtLXNob3dcbiIKKyJcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjQyIGRwa2ctZGViL21haW4uYzoxMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkZvcm1hdCBzeW50YXg6XG4iCisiICBBIGZvcm1hdCBpcyBhIHN0cmluZyB0aGF0IHdpbGwgYmUgb3V0cHV0IGZvciBlYWNoIHBhY2thZ2UuIFRoZSBmb3JtYXRcbiIKKyIgIGNhbiBpbmNsdWRlIHRoZSBzdGFuZGFyZCBlc2NhcGUgc2VxdWVuY2VzIFxcbiAobmV3bGluZSksIFxcciAoY2FycmlhZ2VcbiIKKyIgIHJldHVybikgb3IgXFxcXCAocGxhaW4gYmFja3NsYXNoKS4gUGFja2FnZSBpbmZvcm1hdGlvbiBjYW4gYmUgaW5jbHVkZWRcbiIKKyIgIGJ5IGluc2VydGluZyB2YXJpYWJsZSByZWZlcmVuY2VzIHRvIHBhY2thZ2UgZmllbGRzIHVzaW5nIHRoZSAke3Zhcls7IgorIndpZHRoXX1cbiIKKyIgIHN5bnRheC4gRmllbGRzIHdpbGwgYmUgcmlnaHQtYWxpZ25lZCB1bmxlc3MgdGhlIHdpZHRoIGlzIG5lZ2F0aXZlIGluICIKKyJ3aGljaFxuIgorIiAgY2FzZSBsZWZ0IGFsaWdubWVudCB3aWxsIGJlIHVzZWQuXG4iCittc2dzdHIgIiIKKyJTeW50YXggZm9ybcOhdHU6XG4iCisiICBGb3Jtw6F0IGplIHJlxaVhemVjLCBrdG9yw70gYnVkZSB2w71zdHVwb20gcHJlIGthxb5kw70gYmFsw61rLiBGb3Jtw6F0IG3DtMW+ZVxuIgorIiAgb2JzYWhvdmHFpSDFoXRhbmRhcmRuw6kgw7puaWtvdsOpIGtsYXV6dWx5IFxcbiAobm92w70gcmlhZG9rKSwgXFxyIChuw6F2cmF0XG4iCisiICB2b3rDrWthKSBhbGVibyBcXFxcIChvYnnEjWFqbsOhIHNww6R0bsOhIGxvbWthKS4gSW5mb3Jtw6FjaWUgbyBiYWzDrWt1IG1vxb5ub1xuIgorIiAgemFocm7DusWlIHZsb8W+ZW7DrW0gb2RrYXpvdiBuYSBwcmVtZW5uw6kgZG8gcG9sw60gYmFsw61rYSBwb3XFvml0w61tIHN5bnRheGVcbiIKKyIgICR7dmFyWzt3aWR0aF19LiBQb2xpYSBidWTDuiB6YXJvdm5hbsOpIGRvcHJhdmEsIGFrIGJ1ZGUgxaHDrXJrYSB6w6Fwb3Juw6EsXG4iCisiICBpbmFrIGJ1ZGUgcG91xb5pdMOpIHphcm92bmFuaWUgZG/EvmF2YS5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjU2Cittc2dpZCAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBxdWVyeWluZyBwYWNrYWdlcy4iCittc2dzdHIgIlBvbW9jbsOta2EgbyBkb3B5dG92YW7DrSBzYSBuYSBiYWzDrWt5IHZ5dm9sw6F0ZSBwb21vY291IC0taGVscC4iCisKKyM6IHNyYy9yZW1vdmUuYzo4OAorIywgYy1mb3JtYXQKK21zZ2lkICJpZ25vcmluZyByZXF1ZXN0IHRvIHJlbW92ZSAlLjI1MHMgd2hpY2ggaXNuJ3QgaW5zdGFsbGVkLiIKK21zZ3N0ciAiIgorImlnbm9ydWplIHNhIHBvxb5pYWRhdmthIG5hIG9kc3Ryw6FuZW5pZSAlLjI1MHMsIGt0b3LDvSBuaWUgamUgbmFpbsWhdGFsb3ZhbsO9LiIKKworIzogc3JjL3JlbW92ZS5jOjk1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpZ25vcmluZyByZXF1ZXN0IHRvIHJlbW92ZSAlLjI1MHMsIG9ubHkgdGhlIGNvbmZpZ1xuIgorIiBmaWxlcyBvZiB3aGljaCBhcmUgb24gdGhlIHN5c3RlbS4gVXNlIC0tcHVyZ2UgdG8gcmVtb3ZlIHRoZW0gdG9vLiIKK21zZ3N0ciAiIgorImlnbm9ydWplIHNhIHBvxb5pYWRhdmthIG5hIG9kc3Ryw6FuYW5pZSAlLjI1MHMsIHYgc3lzdMOpbWVcbiIKKyIgb3N0YWxpIGtvbmZpZ3VyYcSNbsOpIHPDumJvcnkuICBQb3XFvml0ZSAtLXB1cmdlIG5hICBpY2ggZG9kYXRvxI1uw6kgb2RzdHLDoW5lbmllLiIKKworIzogc3JjL3JlbW92ZS5jOjEwMworbXNnaWQgIlRoaXMgaXMgYW4gZXNzZW50aWFsIHBhY2thZ2UgLSBpdCBzaG91bGQgbm90IGJlIHJlbW92ZWQuIgorbXNnc3RyICJUb3RvIGplIG5ldnlobnV0bsO9IGJhbMOtayAtIG5lbWFsIGJ5IGJ5xaUgb2RzdHLDoW5lbsO9LiIKKworIzogc3JjL3JlbW92ZS5jOjEyOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogZGVwZW5kZW5jeSBwcm9ibGVtcyBwcmV2ZW50IHJlbW92YWwgb2YgJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiBwcm9ibMOpbXkgesOhdmlzbG9zdGkgemFicsOhbmlsaSB2eW1hemFuaXUgJXM6XG4iCisiJXMiCisKKyM6IHNyYy9yZW1vdmUuYzoxMzAKK21zZ2lkICJkZXBlbmRlbmN5IHByb2JsZW1zIC0gbm90IHJlbW92aW5nIgorbXNnc3RyICJwcm9ibMOpbXkgc28gesOhdmlzbG9zxaVhbWkgLSBuZW9kc3RyYcWIdWplIHNhIgorCisjOiBzcmMvcmVtb3ZlLmM6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiAlczogZGVwZW5kZW5jeSBwcm9ibGVtcywgYnV0IHJlbW92aW5nIGFueXdheSBhcyB5b3UgcmVxdWVzdGVkOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogJXM6IHByb2Jsw6lteSBzbyB6w6F2aXNsb3PFpWFtaSwgYWxlIG9kc3RyYcWIdWplIHNhIHBvZMS+YSBwb8W+aWFkYXZreTpcbiIKKyIlcyIKKworIzogc3JjL3JlbW92ZS5jOjE0MgorbXNnaWQgIiIKKyJQYWNrYWdlIGlzIGluIGEgdmVyeSBiYWQgaW5jb25zaXN0ZW50IHN0YXRlIC0geW91IHNob3VsZFxuIgorIiByZWluc3RhbGwgaXQgYmVmb3JlIGF0dGVtcHRpbmcgYSByZW1vdmFsLiIKK21zZ3N0ciAiIgorIkJhbMOtayBqZSB2byB2ZcS+bWkgemxvbSBuZWtvbnppc3RlbnRub20gc3RhdmUgLSBtYWxpIGJ5IHN0ZVxuIgorIiBobyBwcmVkIHBva3Vzb20gbyBvZHN0csOhbmFuaWUgcHJlaW7FoXRhbG92YcWlLiIKKworIzogc3JjL3JlbW92ZS5jOjE0OQorIywgYy1mb3JtYXQKK21zZ2lkICJXb3VsZCByZW1vdmUgb3IgcHVyZ2UgJXMgLi4uXG4iCittc2dzdHIgIkNoY2V0ZSBvZGluxaF0YWxvdmHFpSBhbGVibyBvZHN0csOhbmnFpSBiYWzDrWsgJXMgLi4uXG4iCisKKyM6IHNyYy9yZW1vdmUuYzoxNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVtb3ZpbmcgJXMgLi4uXG4iCittc2dzdHIgIk9kc3RyYcWIdWplIHNhICVzIC4uLlxuIgorCisjOiBzcmMvcmVtb3ZlLmM6Mjc1IHNyYy9yZW1vdmUuYzozNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIndoaWxlIHJlbW92aW5nICUuMjUwcywgdW5hYmxlIHRvIHJlbW92ZSBkaXJlY3RvcnkgJyUuMjUwcyc6ICVzIC0gZGlyZWN0b3J5ICIKKyJtYXkgYmUgYSBtb3VudCBwb2ludD8iCittc2dzdHIgIiIKKyJwb8SNYXMgb2RzdHJhxYhvdmFuaWEgJS4yNTBzLCBuZWJvbG8gbW/Fvm7DqSBvZHN0csOhbmnFpSBhZHJlc8OhciDigJ4lLjI1MHPigJw6ICVzIC0gIgorIm5pZSBqZSBhZHJlc8OhciBrb3JlxYhvbSBwcmlwb2plbsOpaG8gc3lzdMOpbXUgc8O6Ym9yb3Y/IgorCisjOiBzcmMvcmVtb3ZlLmM6Mjg5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWN1cmVseSByZW1vdmUgJyUuMjUwcyciCittc2dzdHIgIm5lZMOhIHNhIGJlenBlxI1uZSBvZHN0csOhbmnFpSDigJ4lLjI1NXPigJwiCisKKyM6IHNyYy9yZW1vdmUuYzozNjEKKyMsIGMtZm9ybWF0Cittc2dpZCAid2hpbGUgcmVtb3ZpbmcgJS4yNTBzLCBkaXJlY3RvcnkgJyUuMjUwcycgbm90IGVtcHR5IHNvIG5vdCByZW1vdmVkLiIKK21zZ3N0ciAiIgorInByaSBvZHN0cmHFiG92YW7DrSAlLjI1MHMsIGFkcmVzw6FyIOKAniUuMjUwc+KAnCBuZWJvbCBwcsOhemRueSBhIHRlZGEgbmVib2wgIgorIm9kc3Ryw6FuZW7DvS4iCisKKyM6IHNyYy9yZW1vdmUuYzozODMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImNhbm5vdCByZW1vdmUgYCUuMjUwcyciCittc2dpZCAiY2Fubm90IHJlbW92ZSAnJS4yNTBzJyIKK21zZ3N0ciAibmllIGplIG1vxb5uw6kgb2RzdHLDoW5pxaUg4oCeJS4yNTBz4oCcIgorCisjOiBzcmMvcmVtb3ZlLmM6NDA5CisjLCBjLWZvcm1hdAorbXNnaWQgIlB1cmdpbmcgY29uZmlndXJhdGlvbiBmaWxlcyBmb3IgJXMgLi4uXG4iCittc2dzdHIgIk9kc3RyYcWIdWrDuiBzYSBrb25maWd1cmHEjW7DqSBzw7pib3J5IHByZSAlcyAuLi5cbiIKKworIzogc3JjL3JlbW92ZS5jOjQ1OQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVtb3ZlIG9sZCBjb25maWcgZmlsZSBgJS4yNTBzJyAoPSBgJS4yNTBzJykiCittc2dzdHIgIm5pZSBqZSBtb8W+bsOpIG9kc3Ryw6FuacWlIHN0YXLDvSBrb25maWd1cmHEjW7DvSBzw7pib3Ig4oCeJS4yNTBz4oCcICg9IOKAniUuMjUwc+KAnCkiCisKKyM6IHNyYy9yZW1vdmUuYzo0NzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlYWQgY29uZmlnIGZpbGUgZGlyIGAlLjI1MHMnIChmcm9tIGAlLjI1MHMnKSIKK21zZ3N0ciAiIgorIm5pZSBqZSBtb8W+bsOpIHByZcSNw610YcWlIGFkcmVzw6FyIGtvbmZpZ3VyYcSNbsOpaG8gc8O6Ym9ydSDigJ4lLjI1MHPigJwgKHog4oCeJS4yNTBz4oCcKSIKKworIzogc3JjL3JlbW92ZS5jOjUxMAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVtb3ZlIG9sZCBiYWNrdXAgY29uZmlnIGZpbGUgYCUuMjUwcycgKG9mIGAlLjI1MHMnKSIKK21zZ3N0ciAiIgorIm5pZSBqZSBtb8W+bsOpIG9kc3Ryw6FuacWlIHN0YXLDvSB6w6Fsb8W+bsO9IGtvbmZpZ3VyYcSNbsO9IHPDumJvciDigJ4lLjI1MHPigJwgKHog4oCeJS4yNTBz4oCcKSIKKworIzogc3JjL3JlbW92ZS5jOjU2OAorbXNnaWQgImNhbm5vdCByZW1vdmUgb2xkIGZpbGVzIGxpc3QiCittc2dzdHIgIm5pZSBqZSBtb8W+bsOpIG9kc3Ryw6FuacWlIHpvem5hbSBzdGFyw71jaCBzw7pib3JvdiIKKworIzogc3JjL3JlbW92ZS5jOjU3NAorbXNnaWQgImNhbid0IHJlbW92ZSBvbGQgcG9zdHJtIHNjcmlwdCIKK21zZ3N0ciAibmllIGplIG1vxb5uw6kgb2RzdHLDoW5pxaUgc3RhcsO9IHBvc3RybSBza3JpcHQiCisKKyM6IHNyYy9zZWxlY3QuYzoxMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgaW4gcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQiCittc2dzdHIgIm5lb8SNYWvDoXZhbsO9IGtvbmllYyBzw7pib3J1IHYgbsOhenZlIGJhbMOta2EgbmEgcmlhZGt1ICVkIgorCisjOiBzcmMvc2VsZWN0LmM6MTE2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGxpbmUgaW4gcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQiCittc2dzdHIgIm5lb8SNYWvDoXZhbsO9IGtvbmllYyByaWFka2EgdiBuw6F6dmUgYmFsw61rYSBuYSByaWFka3UgJWQiCisKKyM6IHNyYy9zZWxlY3QuYzoxMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgYWZ0ZXIgcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQiCittc2dzdHIgIm5lb8SNYWvDoXZhbsO9IGtvbmllYyBzw7pib3J1IHphIG7DoXp2b20gYmFsw61rYSBuYSByaWFka3UgJWQiCisKKyM6IHNyYy9zZWxlY3QuYzoxMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgbGluZSBhZnRlciBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZCIKK21zZ3N0ciAibmVvxI1ha8OhdmFuw70ga29uaWVjIHJpYWRrYSB6YSBuw6F6dm9tIGJhbMOta2EgbmEgcmlhZGt1ICVkIgorCisjOiBzcmMvc2VsZWN0LmM6MTM2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZGF0YSBhZnRlciBwYWNrYWdlIGFuZCBzZWxlY3Rpb24gYXQgbGluZSAlZCIKK21zZ3N0ciAibmVvxI1ha8OhdmFuw6kgZMOhdGEgemEgYmFsw61rb20gYSB2w71iZXJvbSBuYSByaWFka3UgJWQiCisKKyM6IHNyYy9zZWxlY3QuYzoxMzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWxsZWdhbCBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZDogJS4yNTBzIgorbXNnc3RyICJuZXBvdm9sZW7DvSBuw6F6b3YgYmFsw61rYSBuYSByaWFka3UgJWQ6ICUuMjUwcyIKKworIzogc3JjL3NlbGVjdC5jOjE0MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIHdhbnRlZCBzdGF0dXMgYXQgbGluZSAlZDogJS4yNTBzIgorbXNnc3RyICJuZXpuw6FteSBjaWXEvm92w70gc3RhdiBuYSByaWFka3UgJWQ6ICUuMjUwcyIKKworIzogc3JjL3NlbGVjdC5jOjE0OQorbXNnaWQgInJlYWQgZXJyb3Igb24gc3RhbmRhcmQgaW5wdXQiCittc2dzdHIgImNoeWJhIHByaSDEjcOtdGFuw60gem8gxaF0YW5kYXJkbsOpaG8gdnN0dXB1IgorCisjOiBzcmMvc3RhdGNtZC5jOjUyCisjLCBmdXp6eQorI3wgbXNnaWQgIlVzZSAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgcXVlcnlpbmcgcGFja2FnZXMuIgorbXNnaWQgIlVzZSAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgb3ZlcnJpZGluZyBmaWxlIHN0YXQgaW5mb3JtYXRpb24uIgorbXNnc3RyICJQb21vY27DrWthIG8gZG9weXRvdmFuw60gc2EgbmEgYmFsw61reSB2eXZvbMOhdGUgcG9tb2NvdSAtLWhlbHAuIgorCisjOiBzcmMvc3RhdGNtZC5jOjYxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsIDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDYtMjAwOSBHdWlsbGVtIEpvdmVyLlxuIgorbXNnc3RyICIiCisiQ29weXJpZ2h0IChDKSAyMDAwLCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDA2LTIwMDkgR3VpbGxlbSBKb3Zlci5cbiIKKworIzogc3JjL3N0YXRjbWQuYzo4MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtLWFkZCA8b3duZXI+IDxncm91cD4gPG1vZGU+IDxmaWxlPlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGFkZCBhIG5ldyBlbnRyeSBpbnRvIHRoZSBkYXRhYmFzZS5cbiIKKyIgIC0tcmVtb3ZlIDxmaWxlPiAgICAgICAgICByZW1vdmUgZmlsZSBmcm9tIHRoZSBkYXRhYmFzZS5cbiIKKyIgIC0tbGlzdCBbPGdsb2ItcGF0dGVybj5dICBsaXN0IGN1cnJlbnQgb3ZlcnJpZGVzIGluIHRoZSBkYXRhYmFzZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIlByw61rYXp5OlxuIgorIiAgLS1hZGQgPHZsYXN0bsOtaz4gPHNrdXBpbmE+IDxyZcW+aW0+IDxzw7pib3I+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJpZGHFpSBub3bDvSB6w6F6bmFtIGRvIGRhdGFiw6F6eS5cbiIKKyIgIC0tcmVtb3ZlIDxzw7pib3I+ICAgICAgICAgb2RzdHLDoW5pxaUgc8O6Ym9yIHogZGF0YWLDoXp5LlxuIgorIiAgLS1saXN0IFs8Z2xvYi12em9yPl0gICAgIHZ5cMOtc2HFpSBha3R1w6FsbmUgcHJla29uYW5pYSB2IGRhdGFiw6F6ZS5cbiIKKyJcbiIKKworIzogc3JjL3N0YXRjbWQuYzo4OQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICBzZXQgdGhlIGRpcmVjdG9yeSB3aXRoIHRoZSBzdGF0b3ZlcnJpZGUgZmlsZS5cbiIKKyIgIC0tdXBkYXRlICAgICAgICAgICAgICAgICBpbW1lZGlhdGVseSB1cGRhdGUgZmlsZSBwZXJtaXNzaW9ucy5cbiIKKyIgIC0tZm9yY2UgICAgICAgICAgICAgICAgICBmb3JjZSBhbiBhY3Rpb24gZXZlbiBpZiBhIHNhbml0eSBjaGVjayBmYWlscy5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBxdWlldCBvcGVyYXRpb24sIG1pbmltYWwgb3V0cHV0LlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIlZvxL5ieTpcbiIKKyIgIC0tYWRtaW5kaXIgPGFkcmVzw6FyPiAgICAgbmFzdGF2w60gYWRyZXPDoXIgc28gc8O6Ym9yb20gc3RhdG92ZXJyaWRlXG4iCisiICAtLXVwZGF0ZSAgICAgICAgICAgICAgICAgb2thbcW+aXRlIGFrdHVhbGl6dWplIHByw61zdHVwb3bDqSBwcsOhdmEgayBzw7pib3JvbVxuIgorIiAgLS1mb3JjZSAgICAgICAgICAgICAgICAgIHZ5bsO6dGkgb3BlcsOhY2l1IGFqIG5hcHJpZWsgemx5aGFuaXUga29udHJvbHlcbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBzdHJ1xI1uw70gcmXFvmltLCBtaW5pbcOhbG55IHbDvXN0dXBcbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICB6b2JyYXrDrSB0b2h0byBwb21vY27DrWthXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgem9icmF6w60gdmVyeml1XG4iCisiXG4iCisKKyM6IHNyYy9zdGF0Y21kLmM6MTE2Cittc2dpZCAic3RyaXBwaW5nIHRyYWlsaW5nIC8iCittc2dzdHIgIm9kc3RyYcWIdWrDuiBzYSBrb25jb3bDqSAvIgorCisjOiBzcmMvc3RhdGNtZC5jOjIwNworbXNnaWQgImNhbm5vdCBvcGVuIG5ldyBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAibmVkw6Egc2Egb3R2b3JpxaUgbm92w70gc8O6Ym9yIHN0YXRvdmVycmlkZSIKKworIzogc3JjL3N0YXRjbWQuYzoyMjIKK21zZ2lkICJlcnJvciByZW1vdmluZyBzdGF0b3ZlcnJpZGUtb2xkIgorbXNnc3RyICJjaHliYSBwcmkgb2RzdHJhxYhvdmFuw60gc8O6Ym9ydSBzdGF0b3ZlcnJpZGUtb2xkIgorCisjOiBzcmMvc3RhdGNtZC5jOjIyNAorbXNnaWQgImVycm9yIGNyZWF0aW5nIG5ldyBzdGF0b3ZlcnJpZGUtb2xkIgorbXNnc3RyICJjaHliYSBwcmkgdnl0dsOhcmFuw60gbm92w6lobyBzw7pib3J1IHN0YXRvdmVycmlkZS1vbGQiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjI2Cittc2dpZCAiZXJyb3IgaW5zdGFsbGluZyBuZXcgc3RhdG92ZXJyaWRlIgorbXNnc3RyICJjaHliYSBwcmkgaW7FoXRhbG92YW7DrSBub3bDqWhvIHPDumJvcnUgc3RhdG92ZXJyaWRlIgorCisjOiBzcmMvc3RhdGNtZC5jOjI0NgorbXNnaWQgIi0tYWRkIG5lZWRzIGZvdXIgYXJndW1lbnRzIgorbXNnc3RyICItLWFkZCB2ecW+YWR1amUgxaF0eXJpIHBhcmFtZXRyZSIKKworIzogc3JjL3N0YXRjbWQuYzoyNTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkFuIG92ZXJyaWRlIGZvciAnJXMnIGFscmVhZHkgZXhpc3RzLCBidXQgLS1mb3JjZSBzcGVjaWZpZWQgc28gd2lsbCBiZSAiCisiaWdub3JlZC4iCittc2dzdHIgIiIKKyJQcmVrb25hbmllIOKAniVz4oCcIHXFviBleGlzdHVqZSwgYWxlIGt2w7RsaSB1dmVkZW7DqW11IC0tZm9yY2UgYnVkZSBpZ25vcm92YW7DvS4iCisKKyM6IHNyYy9zdGF0Y21kLmM6MjYwCisjLCBjLWZvcm1hdAorbXNnaWQgIkFuIG92ZXJyaWRlIGZvciAnJXMnIGFscmVhZHkgZXhpc3RzLCBhYm9ydGluZy4iCittc2dzdHIgIlByZWtvbmFuaWUg4oCeJXPigJwgdcW+IGV4aXN0dWplLCBwcmVydcWhdWplIHNhLiIKKworIzogc3JjL3N0YXRjbWQuYzoyNzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS11cGRhdGUgZ2l2ZW4gYnV0ICVzIGRvZXMgbm90IGV4aXN0IgorbXNnc3RyICJib2xvIHphZGFuw6kgLS11cGRhdGUsIGFsZSAlcyBuZWV4aXN0dWplIgorCisjOiBzcmMvc3RhdGNtZC5jOjI5NgorbXNnaWQgIk5vIG92ZXJyaWRlIHByZXNlbnQuIgorbXNnc3RyICJOZWV4aXN0dWplIMW+aWFkbmUgcHJla29uYW5pZS4iCisKKyM6IHNyYy9zdGF0Y21kLmM6MzA0Cittc2dpZCAiLS11cGRhdGUgaXMgdXNlbGVzcyBmb3IgLS1yZW1vdmUiCittc2dzdHIgIi0tdXBkYXRlIGplIG5lcG91xb5pdGXEvm7DvSBwcmkgLS1yZW1vdmUiCisKKyM6IHNyYy9zdGF0ZGIuYzo1OQorbXNnaWQgInN5bnRheCBlcnJvcjogaW52YWxpZCB1aWQgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgInN5bnRha3RpY2vDoSBjaHliYTogbmVwbGF0bsO9IHVpZCB2IHPDumJvcmUgc3RhdG92ZXJyaWRlIgorCisjOiBzcmMvc3RhdGRiLmM6NjQKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yOiB1bmtub3duIHVzZXIgJyVzJyBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAic3ludGFrdGlja8OhIGNoeWJhOiBuZXpuw6FteSBwb3XFvsOtdmF0ZcS+IOKAniVz4oCcIHYgc8O6Ym9yZSBzdGF0b3ZlcnJpZGUiCisKKyM6IHNyYy9zdGF0ZGIuYzo4MworbXNnaWQgInN5bnRheCBlcnJvcjogaW52YWxpZCBnaWQgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgInN5bnRha3RpY2vDoSBjaHliYTogbmVwbGF0bsO9IGdpZCB2IHPDumJvcmUgc3RhdG92ZXJyaWRlIgorCisjOiBzcmMvc3RhdGRiLmM6ODgKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yOiB1bmtub3duIGdyb3VwICclcycgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgInN5bnRha3RpY2vDoSBjaHliYTogbmV6bsOhbWEgc2t1cGluYSDigJ4lc+KAnCB2IHPDumJvcmUgc3RhdG92ZXJyaWRlIgorCisjOiBzcmMvc3RhdGRiLmM6MTA0Cittc2dpZCAic3ludGF4IGVycm9yOiBpbnZhbGlkIG1vZGUgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgInN5bnRha3RpY2vDoSBjaHliYTogbmVwbGF0bsO9IHJlxb5pbSB2IHPDumJvcmUgc3RhdG92ZXJyaWRlIgorCisjOiBzcmMvc3RhdGRiLmM6MTI3Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgInpseWhhbG8gb3R2b3JlbmllIHPDumJvcnUgc3RhdG92ZXJyaWRlIgorCisjOiBzcmMvc3RhdGRiLmM6MTM0Cittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJ6bHloYWxvIHZ5a29uYW5pZSBmdW5rY2llIGZzdGF0IHYgc8O6Ym9yZSBzdGF0b3ZlcnJpZGUiCisKKyM6IHNyYy9zdGF0ZGIuYzoxMzcKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgcHJldmlvdXMgc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgInpseWhhbG8gdnlrb25hbmllIGZ1bmtjaWUgZnN0YXQgdiBwcmVkY2jDoWR6YWrDumNvbSBzw7pib3JlIHN0YXRvdmVycmlkZSIKKworIzogc3JjL3N0YXRkYi5jOjE2MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic3RhdG92ZXJyaWRlIGZpbGUgYCUuMjUwcyciCittc2dpZCAicmVhZGluZyBzdGF0b3ZlcnJpZGUgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAic8O6Ym9yIHN0YXRvdmVycmlkZSDigJ4lLjI1MHPigJwiCisKKyM6IHNyYy9zdGF0ZGIuYzoxNjkKK21zZ2lkICJzdGF0b3ZlcnJpZGUgZmlsZSBpcyBtaXNzaW5nIGZpbmFsIG5ld2xpbmUiCittc2dzdHIgInYgc8O6Ym9yZSBzdGF0b3ZlcnJpZGUgY2jDvWJhIG5hIGtvbmNpIHpuYWsgbm92w6lobyByaWFka2EiCisKKyM6IHNyYy9zdGF0ZGIuYzoxNzMKK21zZ2lkICJzdGF0b3ZlcnJpZGUgZmlsZSBjb250YWlucyBlbXB0eSBsaW5lIgorbXNnc3RyICJzw7pib3Igc3RhdG92ZXJyaWRlIG9ic2FodWplIHByw6F6ZG55IHJpYWRvayIKKworIzogc3JjL3N0YXRkYi5jOjE3OCBzcmMvc3RhdGRiLmM6MTkwIHNyYy9zdGF0ZGIuYzoyMDIKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgInN5bnRha3RpY2vDoSBjaHliYSB2IHPDumJvcmUgc3RhdG92ZXJyaWRlIgorCisjOiBzcmMvc3RhdGRiLmM6MTg2IHNyYy9zdGF0ZGIuYzoxOTggc3JjL3N0YXRkYi5jOjIxMAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGxpbmUgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIm5lb8SNYWvDoXZhbsO9IGtvbmllYyByaWFka2EgdiBzw7pib3JlIHN0YXRvdmVycmlkZSIKKworIzogc3JjL3N0YXRkYi5jOjIxNAorIywgYy1mb3JtYXQKK21zZ2lkICJtdWx0aXBsZSBzdGF0dXNvdmVycmlkZXMgcHJlc2VudCBmb3IgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAicHJlIHPDumJvciDigJ4lLjI1MHPigJwgZXhpc3R1asO6IHZpYWNlcsOpIHPDumJvcnkgc3RhdG92ZXJyaWRlIgorCisjOiBzcmMvdHJpZ2NtZC5jOjQ2Cittc2dpZCAiVHlwZSBkcGtnLXRyaWdnZXIgLS1oZWxwIGZvciBoZWxwIGFib3V0IHRoaXMgdXRpbGl0eS4iCittc2dzdHIgIlBvbW9jbsOta2EgayB0b211dG8gbsOhc3Ryb2p1IHpvYnJhesOtdGUgbmFww61zYW7DrW0gZHBrZy10cmlnZ2VyIC0taGVscCIKKworIzogc3JjL3RyaWdjbWQuYzo1MQorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gJXMgcGFja2FnZSB0cmlnZ2VyIHV0aWxpdHkgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiTsOhc3Ryb2og4oCeJXPigJwgc3DDusWhxaVhxI1vdiBiYWzDrWtvdiBEZWJpYW51LCB2ZXJ6aWEgJXMuXG4iCisKKyM6IHNyYy90cmlnY21kLmM6NjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbnM+IC4uLl0gPHRyaWdnZXItbmFtZT5cbiIKKyIgICAgICAgJXMgWzxvcHRpb25zPiAuLi5dIDxjb21tYW5kPlxuIgorIlxuIgorbXNnc3RyICIiCisiUG91xb5pdGllOiAlcyBbPHZvxL5ieT4gLi4uXSA8bsOhem92IHNww7rFocWlYcSNYT5cbiIKKyIgICAgICAgJXMgWzx2b8S+Ynk+IC4uLl0gPHByw61rYXo+XG4iCisiXG4iCisKKyM6IHNyYy90cmlnY21kLmM6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLS1jaGVjay1zdXBwb3J0ZWQgICAgICAgICAgICAgICAgQ2hlY2sgaWYgdGhlIHJ1bm5pbmcgZHBrZyBzdXBwb3J0cyAiCisidHJpZ2dlcnMuXG4iCisiXG4iCittc2dzdHIgIiIKKyJQcsOta2F6eTpcbiIKKyIgIC0tY2hlY2stc3VwcG9ydGVkICAgICAgICAgICAgICAgIFNrb250cm9sb3ZhxaUsIMSNaSBiZcW+aWFjaSBkcGtnIHBvZHBvcnVqZSAiCisic3DDusWhxaVhxI1lLlxuIgorIlxuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjgyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hZG1pbmRpcj08ZGlyZWN0b3J5PiAgICAgICAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMuXG4iCisiICAtLWJ5LXBhY2thZ2U9PHBhY2thZ2U+ICAgICAgICAgICBPdmVycmlkZSB0cmlnZ2VyIGF3YWl0ZXIgKG5vcm1hbGx5IHNldFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBieSBkcGtnKS5cbiIKKyIgIC0tbm8tYXdhaXQgICAgICAgICAgICAgICAgICAgICAgIE5vIHBhY2thZ2UgbmVlZHMgdG8gYXdhaXQgdGhlICIKKyJwcm9jZXNzaW5nLlxuIgorIiAgLS1uby1hY3QgICAgICAgICAgICAgICAgICAgICAgICAgSnVzdCB0ZXN0IC0gZG9uJ3QgYWN0dWFsbHkgY2hhbmdlICIKKyJhbnl0aGluZy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIlZvxL5ieTpcbiIKKyIgIC0tYWRtaW5kaXI9PGFkcmVzw6FyPiAgICAgICAgICAgUG91xb5pxaUgPGFkcmVzw6FyPiBuYW1pZXN0byAlcy5cbiIKKyIgIC0tYnktcGFja2FnZT08YmFsw61rPiAgICAgICAgICAgUHJla29uYcWlIG/EjWFrw6F2YW5pZSBiYWzDrWthIChiZcW+bmUgaG8gIgorIm5hc3RhdnVqZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBieSBkcGtnKS5cbiIKKyIgIC0tbm8tYXdhaXQgICAgICAgICAgICAgICAgICAgICAgIMW9aWFkbnkgYmFsw61rIG5lxI1ha8OhIG5hIHNwcmFjb3ZhbmllLlxuIgorIiAgLS1uby1hY3QgICAgICAgICAgICAgICAgICAgICAgICAgSWJhIHRlc3QgLSB2IHNrdXRvxI1ub3N0aSBuacSNIG5lbWVuacWlLlxuIgorIlxuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogdHJpZ2dlcnMgZGF0YSBkaXJlY3Rvcnkgbm90IHlldCBjcmVhdGVkXG4iCittc2dzdHIgIiVzOiBww7rFocWlYSBkw6F0b3bDvSBhZHJlc8Ohciwga3RvcsO9IHphdGlhxL4gbmVib2wgdnl0dm9yZW7DvVxuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjE1NgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogdHJpZ2dlciByZWNvcmRzIG5vdCB5ZXQgaW4gZXhpc3RlbmNlXG4iCittc2dzdHIgIiVzOiB6w6F6bmFteSBzcMO6xaHFpWHEjWEgemF0aWHEviBuZWV4aXN0dWrDulxuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIwNQorbXNnaWQgInRha2VzIG9uZSBhcmd1bWVudCwgdGhlIHRyaWdnZXIgbmFtZSIKK21zZ3N0ciAicG90cmVidWplIGplZGVuIHBhcmFtZXRlciwgbsOhem92IHNww7rFocWlYcSNYSIKKworIzogc3JjL3RyaWdjbWQuYzoyMTAKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgImRwa2ctdHJpZ2dlciBtdXN0IGJlIGNhbGxlZCBmcm9tIGEgbWFpbnRhaW5lciBzY3JpcHQgKG9yIHdpdGggYSAtLWJ5LSIKKyN8ICJwYWNrYWdlIG9wdGlvbikiCittc2dpZCAibXVzdCBiZSBjYWxsZWQgZnJvbSBhIG1haW50YWluZXIgc2NyaXB0IChvciB3aXRoIGEgLS1ieS1wYWNrYWdlIG9wdGlvbikiCittc2dzdHIgIiIKKyJkcGtnLXRyaWdnZXIgamUgcG90cmVibsOpIHZvbGHFpSB6IMO6ZHLFvmJvdsOpaG8gc2tyaXB0dSAoYWxlYm8gdm/EvmJvdSAtLWJ5LSIKKyJwYWNrYWdlKSIKKworIzogc3JjL3RyaWdjbWQuYzoyMTUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImRwa2ctdHJpZ2dlcjogaWxsZWdhbCBhd2FpdGVkIHBhY2thZ2UgbmFtZSBgJS4yNTBzJzogJS4yNTBzIgorbXNnaWQgImlsbGVnYWwgYXdhaXRlZCBwYWNrYWdlIG5hbWUgJyUuMjUwcyc6ICUuMjUwcyIKK21zZ3N0ciAiZHBrZy10cmlnZ2VyOiBuZXBsYXRuw6kgbWVubyBvxI1ha8OhdmFuw6lobyBiYWzDrWthIOKAniUuMjUwc+KAnDogJS4yNTBzIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIyMQorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHRyaWdnZXIgbmFtZSBgJS4yNTBzJzogJS4yNTBzIgorbXNnc3RyICJuZXBsYXRuw70gbsOhem92IHNww7rFocWlYcSNYSDigJ4lLjI1MHPigJw6ICUuMjUwcyIKKworIzogc3JjL3RyaWdwcm9jLmM6MjUwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogY3ljbGUgZm91bmQgd2hpbGUgcHJvY2Vzc2luZyB0cmlnZ2VyczpcbiIKKyIgY2hhaW4gb2YgcGFja2FnZXMgd2hvc2UgdHJpZ2dlcnMgYXJlIG9yIG1heSBiZSByZXNwb25zaWJsZTpcbiIKK21zZ3N0ciAiIgorIiVzOiBwcmkgc3ByYWNvdmFuw60gc3DDusWhxaVhxI1vdiBib2wgbsOhamRlbsO9IGN5a2x1czpcbiIKKyIgcmXFpWF6ZWMgYmFsw61rb3YsIGt0b3LDvWNoIHNww7rFocWlYcSNZSBzw7ogYWxlYm8gbcO0xb51IGJ5xaUgemEgdG8gem9kcG92ZWRuw6k6XG4iCisKKyM6IHNyYy90cmlncHJvYy5jOjI1OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiIHBhY2thZ2VzJyBwZW5kaW5nIHRyaWdnZXJzIHdoaWNoIGFyZSBvciBtYXkgYmUgdW5yZXNvbHZhYmxlOlxuIgorbXNnc3RyICIiCisiXG4iCisiIG/EjWFrw6F2YW7DqSBzcMO6xaHFpWHEjWUgKHRyaWdnZXJzLXBlbmRpbmcpIGJhbMOta292LCBrdG9yw6kgbmVtb8W+bm8gdnlyaWXFoWnFpTpcbiIKKworIzogc3JjL3RyaWdwcm9jLmM6MjgxCittc2dpZCAidHJpZ2dlcnMgbG9vcGluZywgYWJhbmRvbmVkIgorbXNnc3RyICJzcMO6xaHFpWHEjWUgdiBzbHXEjWtlLCBpZ25vcnVqw7ogc2EiCisKKyM6IHNyYy90cmlncHJvYy5jOjMxMgorIywgYy1mb3JtYXQKK21zZ2lkICJQcm9jZXNzaW5nIHRyaWdnZXJzIGZvciAlcyAuLi5cbiIKK21zZ3N0ciAiU3ByYWPDunZhasO6IHNhIHNww7rFocWlYcSNZSAlcyAuLi5cbiIKKworIzogc3JjL3VwZGF0ZS5jOjUyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICItLSVzIG5lZWRzIGV4YWN0bHkgb25lIFBhY2thZ2VzIGZpbGUgYXJndW1lbnQiCittc2dpZCAiLS0lcyBuZWVkcyBleGFjdGx5IG9uZSBQYWNrYWdlcy1maWxlIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIHBvdHJlYnVqZSBwcmVzbmUgamVkZW4gYXJndW1lbnQgYWtvIHPDumJvciBQYWNrYWdlcyIKKworIzogc3JjL3VwZGF0ZS5jOjYyCittc2dpZCAidW5hYmxlIHRvIGFjY2VzcyBkcGtnIHN0YXR1cyBhcmVhIGZvciBidWxrIGF2YWlsYWJsZSB1cGRhdGUiCittc2dzdHIgIiIKKyJuaWUgamUgbW/Fvm7DqSB2c3TDunBpxaUgZG8gb2JsYXN0aSBzdGF2dSBkcGtnIHByZSBjZWxrb3bDuiBkb3N0dXBuw7ogYWt0dWFsaXrDoWNpdSIKKworIzogc3JjL3VwZGF0ZS5jOjY0Cittc2dpZCAiYnVsayBhdmFpbGFibGUgdXBkYXRlIHJlcXVpcmVzIHdyaXRlIGFjY2VzcyB0byBkcGtnIHN0YXR1cyBhcmVhIgorbXNnc3RyICIiCisiY2Vsa292w6EgZG9zdHVwbsOhIGFrdHVhbGl6w6FjaWEgdnnFvmFkdWplIG1vxb5ub3PFpSB6w6FwaXN1IGRvIHN0YXZvdmVqIG9ibGFzdGkgIgorImRwa2ciCisKKyM6IHNyYy91cGRhdGUuYzo3MQorIywgYy1mb3JtYXQKK21zZ2lkICJSZXBsYWNpbmcgYXZhaWxhYmxlIHBhY2thZ2VzIGluZm8sIHVzaW5nICVzLlxuIgorbXNnc3RyICJOYWhyYWR6dWrDuiBzYSBpbmZvcm3DoWNpZSBvIGRvc3R1cG7DvWNoIGJhbMOta29jaCwgcG9tb2NvdSAlcy5cbiIKKworIzogc3JjL3VwZGF0ZS5jOjc0CisjLCBjLWZvcm1hdAorbXNnaWQgIlVwZGF0aW5nIGF2YWlsYWJsZSBwYWNrYWdlcyBpbmZvLCB1c2luZyAlcy5cbiIKK21zZ3N0ciAiQWt0dWFsaXp1asO6IHNhIGluZm9ybcOhY2llIG8gZG9zdHVwbsO9Y2ggYmFsw61rb2NoLCBwb21vY291ICVzLlxuIgorCisjOiBzcmMvdXBkYXRlLmM6MTAxCisjLCBjLWZvcm1hdAorbXNnaWQgIkluZm9ybWF0aW9uIGFib3V0ICVkIHBhY2thZ2Ugd2FzIHVwZGF0ZWQuXG4iCittc2dpZF9wbHVyYWwgIkluZm9ybWF0aW9uIGFib3V0ICVkIHBhY2thZ2VzIHdhcyB1cGRhdGVkLlxuIgorbXNnc3RyWzBdICJJbmZvcm3DoWNpZSBvICVkIGJhbMOta3UgYm9saSBha3R1YWxpem92YW7DqS5cbiIKK21zZ3N0clsxXSAiSW5mb3Jtw6FjaWUgbyAlZCBiYWzDrWtvY2ggYm9saSBha3R1YWxpem92YW7DqS5cbiIKK21zZ3N0clsyXSAiSW5mb3Jtw6FjaWUgbyAlZCBiYWzDrWtvY2ggYm9saSBha3R1YWxpem92YW7DqS5cbiIKKworIzogc3JjL3VwZGF0ZS5jOjExNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisib2Jzb2xldGUgJy0tJXMnIG9wdGlvbiwgdW5hdmFpbGFibGUgcGFja2FnZXMgYXJlIGF1dG9tYXRpY2FsbHkgY2xlYW5lZCB1cC4iCittc2dzdHIgInphc3RhcmFsw6Egdm/EvmJhIOKAni0tJXPigJwsIG5lZG9zdHVwbsOpIGJhbMOta3kgYnVkw7ogYXV0b21hdGlja3kgdnnEjWlzdGVuw6kuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIG5hbWUgJyUuNTBzLi4uJyBpcyB0b28gbG9uZyIKK21zZ3N0ciAibsOhem92IHPDumJvcnUg4oCeJS41MHMuLi7igJwgamUgcHLDrWxpxaEgZGxow70iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTI5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGZpbGUgbmFtZSAnJS4yNTBzJyIKK21zZ3N0ciAibmllIGplIG1vxb5uw6kgdnlrb25hxaUgc3RhdCgpIHPDumJvcnUg4oCeJS4yNTBz4oCcIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjE4OQorbXNnaWQgInVuYWJsZSB0byBzdGF0IGNvbnRyb2wgZGlyZWN0b3J5IgorbXNnc3RyICJuaWUgamUgbW/Fvm7DqSB6aXN0acWlIHN0YXYgcmlhZGlhY2VobyBhZHJlc8OhcmEiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTkxCittc2dpZCAiY29udHJvbCBkaXJlY3RvcnkgaXMgbm90IGEgZGlyZWN0b3J5IgorbXNnc3RyICJyaWFkaWFjaSBhZHJlc8OhciBuaWUgamUgYWRyZXPDoXIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTkzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbnRyb2wgZGlyZWN0b3J5IGhhcyBiYWQgcGVybWlzc2lvbnMgJTAzbG8gKG11c3QgYmUgPj0wNzU1IGFuZCA8PTA3NzUpIgorbXNnc3RyICJyaWFkaWFjaSBhZHJlc8OhciBtw6EgemzDqSBwcsOhdmEgJTAzbG8gKG11c2lhIGJ5xaUgPj0wNzU1IGEgPD0wNzc1KSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAibWFpbnRhaW5lciBzY3JpcHQgYCUuNTBzJyBpcyBub3QgYSBwbGFpbiBmaWxlIG9yIHN5bWxpbmsiCittc2dzdHIgInNrcmlwdCBzcHLDoXZjdSDigJ4lLjUwc+KAnCBuaWUgamUgb2J5xI1ham7DvSBzw7pib3IgYW5pIHN5bWJvbGlja8O9IG9ka2F6IgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjIwNworIywgYy1mb3JtYXQKK21zZ2lkICIiCisibWFpbnRhaW5lciBzY3JpcHQgYCUuNTBzJyBoYXMgYmFkIHBlcm1pc3Npb25zICUwM2xvIChtdXN0IGJlID49MDU1NSBhbmQgIgorIjw9MDc3NSkiCittc2dzdHIgIiIKKyJza3JpcHQgc3Byw6F2Y3Ug4oCeJS41MHPigJwgbcOhIG5lc3Byw6F2bmUgcHLDoXZhICUwM2xvIChtdXPDrSBiecWlID49MDU1NSBhIDw9MDc3NSkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjExCisjLCBjLWZvcm1hdAorbXNnaWQgIm1haW50YWluZXIgc2NyaXB0IGAlLjUwcycgaXMgbm90IHN0YXR0YWJsZSIKK21zZ3N0ciAidSBza3JpcHR1IHNwcsOhdmN1IOKAniUuNTBz4oCcIG5pZSBqZSBtb8W+bsOpIHppc3RpxaUgc3RhdiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyMzcKK21zZ2lkICJlcnJvciBvcGVuaW5nIGNvbmZmaWxlcyBmaWxlIgorbXNnc3RyICJjaHliYSBwcmkgb3R2w6FyYW7DrSBrb25maWd1cmHEjW7DvWNoIHPDumJvcm92IgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI0NgorbXNnaWQgImVtcHR5IHN0cmluZyBmcm9tIGZnZXRzIHJlYWRpbmcgY29uZmZpbGVzIgorbXNnc3RyICJwcsOhemRueSByZcWlYXplYyB6IGZ1bmtjaWUgZmdldHMgcG/EjWFzIMSNw610YW5pYSBzw7pib3J1IgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI1MQorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBuYW1lICclLjUwcy4uLicgaXMgdG9vIGxvbmcsIG9yIG1pc3NpbmcgZmluYWwgbmV3bGluZSIKK21zZ3N0ciAiIgorIm7DoXpvdiBrb25maWd1cmHEjW7DqWhvIHPDumJvcnUg4oCeJS41MHMuLi7igJwgamUgcHLDrWxpxaEgZGxow70gYWxlYm8gY2jDvWJhIHpuYWsgIgorIm5vdsOpaG8gcmlhZGthIG5hIGtvbmNpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI2NAorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBmaWxlbmFtZSAnJXMnIGNvbnRhaW5zIHRyYWlsaW5nIHdoaXRlIHNwYWNlcyIKK21zZ3N0ciAibsOhem92IGtvbmZpZ3VyYcSNbsOpaG8gc8O6Ym9ydSDigJ4lc+KAnCBvYnNhaHVqZSBuYSBrb25jaSBuZXRsYcSNaXRlxL5uw6kgem5ha3kiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjY2CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIGAlLjI1MHMnIGRvZXMgbm90IGFwcGVhciBpbiBwYWNrYWdlIgorbXNnc3RyICJrb25maWd1cmHEjW7DvSBzw7pib3Ig4oCeJS4yNTBz4oCcIG5lYm9sIHYgYmFsw61rdSBuw6FqZGVuw70iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjY4CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIGAlLjI1MHMnIGlzIG5vdCBzdGF0dGFibGUiCittc2dzdHIgInUga29uZmlndXJhxI1uw6lobyBzw7pib3J1IOKAniUuMjUwc+KAnCBuaWUgamUgbW/Fvm7DqSB6aXN0acWlIHN0YXYiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjcwCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlICclcycgaXMgbm90IGEgcGxhaW4gZmlsZSIKK21zZ3N0ciAia29uZmlndXJhxI1uw70gc8O6Ym9yIOKAniVz4oCcIG5pZSBqZSDEjWlzdMO9IHPDumJvciIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgbmFtZSAnJXMnIGlzIGR1cGxpY2F0ZWQiCittc2dzdHIgIm7DoXpvdiBjb25mc8O6Ym9ydSDigJ4lc+KAnCBqZSBkdXBsaWNpdG7DvSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyODcKK21zZ2lkICJlcnJvciByZWFkaW5nIGNvbmZmaWxlcyBmaWxlIgorbXNnc3RyICJjaHliYSBwcmkgxI3DrXRhbsOtIGtvbmZpZ3VyYcSNbsO9Y2ggc8O6Ym9yb3YiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MzM5Cittc2dpZCAicGFja2FnZSBuYW1lIGhhcyBjaGFyYWN0ZXJzIHRoYXQgYXJlbid0IGxvd2VyY2FzZSBhbHBoYW51bXMgb3IgYC0rLiciCittc2dzdHIgIm7DoXpvdiBiYWzDrWthIG9ic2FodWplIHpuYWt5LCBrdG9yw6kgbmllIHPDuiBtYWzDvW1pIHDDrXNtZW5hbWkgYWxlYm8g4oCeLSsu4oCcIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjM0MQorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGNvbnRhaW5zIHVzZXItZGVmaW5lZCBQcmlvcml0eSB2YWx1ZSAnJXMnIgorbXNnc3RyICLigJ4lc+KAnCBvYnNhaHVqZSBwb3XFvsOtdmF0ZcS+b20gZGVmaW5vdmFuw7ogaG9kbm90dSBQcmlvcml0eSDigJ4lc+KAnCIKKworIzogZHBrZy1kZWIvYnVpbGQuYzozNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBjb250YWlucyB1c2VyLWRlZmluZWQgZmllbGQgJyVzJyIKK21zZ3N0ciAi4oCeJXPigJwgb2JzYWh1amUgcG91xb7DrXZhdGXEvm9tIGRlZmlub3ZhbsOpIHBvbGUg4oCeJXPigJwiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MzU4CisjLCBjLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nICVkIHdhcm5pbmcgYWJvdXQgdGhlIGNvbnRyb2wgZmlsZShzKVxuIgorbXNnaWRfcGx1cmFsICJpZ25vcmluZyAlZCB3YXJuaW5ncyBhYm91dCB0aGUgY29udHJvbCBmaWxlKHMpXG4iCittc2dzdHJbMF0gImlnbm9ydWplIHNhICVkIHVwb3pvcm5lbmllIG8gcmlhZGlhY29tIHPDumJvcmUob2NoKVxuIgorbXNnc3RyWzFdICJpZ25vcnVqw7ogc2EgJWQgdXBvem9ybmVuaWEgbyByaWFkaWFjb20gc8O6Ym9yZShvY2gpXG4iCittc2dzdHJbMl0gImlnbm9ydWplIHNhICVkIHVwb3pvcm5lbsOtIG8gcmlhZGlhY29tIHPDumJvcmUob2NoKVxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQwMyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQyOQorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhIDxkaXJlY3Rvcnk+IGFyZ3VtZW50IgorbXNnc3RyICItLSVzIHZ5xb5hZHVqZSBwYXJhbWV0ZXIgPGFkcmVzw6FyPiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MDkKK21zZ2lkICItLWJ1aWxkIHRha2VzIGF0IG1vc3QgdHdvIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS1idWlsZCB2ecW+YWR1amUgbmFqdmlhYyBkdmEgYXJndW1lbnR5IgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQxMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hlY2sgZm9yIGV4aXN0ZW5jZSBvZiBhcmNoaXZlIGAlLjI1MHMnIgorbXNnc3RyICJuaWUgamUgbW/Fvm7DqSBvdmVyacWlIGV4aXN0ZW5jaXUgYXJjaMOtdnUg4oCeJS4yNTBz4oCcIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQzMAorbXNnaWQgInRhcmdldCBpcyBkaXJlY3RvcnkgLSBjYW5ub3Qgc2tpcCBjb250cm9sIGZpbGUgY2hlY2siCittc2dzdHIgImNpZcS+IGplIGFkcmVzw6Fyb20gLSBuaWUgamUgbW/Fvm7DqSBwcmVza2/EjWnFpSBrb250cm9sdSByaWFkaWFjZWhvIHPDumJvcnUiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDMxCittc2dpZCAibm90IGNoZWNraW5nIGNvbnRlbnRzIG9mIGNvbnRyb2wgYXJlYS4iCittc2dzdHIgIm5la29udHJvbHVqZSBzYSBvYnNhaCByaWFkaWFjZWogb2JsYXN0aS4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDMyCisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2ctZGViOiBidWlsZGluZyBhbiB1bmtub3duIHBhY2thZ2UgaW4gJyVzJy5cbiIKK21zZ3N0ciAiZHBrZy1kZWI6IHpvc3RhdnVqZSBzYSBuZXpuw6FteSBiYWzDrWsgdiDigJ4lc+KAnC5cbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZy1kZWI6IGJ1aWxkaW5nIHBhY2thZ2UgYCVzJyBpbiBgJXMnLlxuIgorbXNnc3RyICJkcGtnLWRlYjogem9zdGF2dWplIHNhIGJhbMOtayDigJ4lc+KAnCB2IOKAniVz4oCcLlxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ2NyBkcGtnLWRlYi9idWlsZC5jOjUyMQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIG1ha2UgdG1wZmlsZSAoZGF0YSkiCittc2dpZCAiZmFpbGVkIHRvIG1ha2UgdGVtcG9yYXJ5IGZpbGUgKCVzKSIKK21zZ3N0ciAibmllIGplIG1vxb5uw6kgdnl0dm9yacWlIGRvxI1hc27DvSBzw7pib3IgKGTDoXRhKSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0NjcgZHBrZy1kZWIvYnVpbGQuYzo0NzAgZHBrZy1kZWIvYnVpbGQuYzo0NzcKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDg1IGRwa2ctZGViL2J1aWxkLmM6NDk0IGRwa2ctZGViL2J1aWxkLmM6NDk5CisjLCBmdXp6eQorI3wgbXNnaWQgImNvbnRyb2wgYXJlYSIKK21zZ2lkICJjb250cm9sIG1lbWJlciIKK21zZ3N0ciAicmlhZGlhY2Egb2JsYXPFpSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0NzAgZHBrZy1kZWIvYnVpbGQuYzo1MjQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byB1bmxpbmsgdG1wZmlsZSAoZGF0YSksICVzIgorbXNnaWQgImZhaWxlZCB0byB1bmxpbmsgdGVtcG9yYXJ5IGZpbGUgKCVzKSwgJXMiCittc2dzdHIgInpseWhhbG8gb2Rwb2plbmllIGRvxI1hc27DqWhvIHPDumJvcnUgKGTDoXRhKSwgJXMiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDg1IGRwa2ctZGViL2J1aWxkLmM6NTkzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gcmV3aW5kIHRtcGZpbGUgKGRhdGEpIgorbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdGVtcG9yYXJ5IGZpbGUgKCVzKSIKK21zZ3N0ciAibmllIGplIG1vxb5uw6kgcHJlanPFpSBuYSB6YcSNaWF0b2sgZG/EjWFzbsOpaG8gc8O6Ym9ydSAoZMOhdGEpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ5NAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGFyIG1lbWJlciBmaWxlICglcykiCittc2dpZCAiZmFpbGVkIHRvIHN0YXQgdGVtcG9yYXJ5IGZpbGUgKCVzKSIKK21zZ3N0ciAibmllIGplIG1vxb5uw6kgdnlrb25hxaUgZnN0YXQgxI1sZW5za8OpaG8gc8O6Ym9ydSBhciAoJXMpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ5OAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciB3cml0aW5nIGAlcyciCittc2dzdHIgImNoeWJhIHByaSB6w6FwaXNlIOKAniUuMjUwc+KAnCIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo1MjEgZHBrZy1kZWIvYnVpbGQuYzo1MjQgZHBrZy1kZWIvYnVpbGQuYzo1NDYKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTcyIGRwa2ctZGViL2J1aWxkLmM6NTgwIGRwa2ctZGViL2J1aWxkLmM6NTkzCisjLCBmdXp6eQorI3wgbXNnaWQgImJldHdlZW4gbWVtYmVycyIKK21zZ2lkICJkYXRhIG1lbWJlciIKK21zZ3N0ciAibWVkemkgxI1sZW5taSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo1NzEgZHBrZy1kZWIvYnVpbGQuYzo1ODAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byB3cml0ZSBmaWxlbmFtZSB0byB0YXIgcGlwZSAoZGF0YSkiCittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIGZpbGVuYW1lIHRvIHRhciBwaXBlICglcykiCittc2dzdHIgIm5pZSBqZSBtb8W+bsOpIHphcMOtc2HFpSBuw6F6b3Ygc8O6Ym9ydSBkbyByw7pyeSBwcm9ncmFtdSB0YXIgKGTDoXRhKSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo1ODQKK21zZ2lkICI8Y29tcHJlc3M+IGZyb20gdGFyIC1jZiIKK21zZ3N0ciAiPGNvbXByZXNzPiB6IHRhciAtY2YiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzo2MSBkcGtnLWRlYi9leHRyYWN0LmM6NjMKK21zZ2lkICJzaGVsbCBjb21tYW5kIHRvIG1vdmUgZmlsZXMiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjcwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGZpbGUgaW4gJXMgaW4gJS4yNTVzIgorbXNnc3RyICJuZW/EjWFrw6F2YW7DvSBrb25pZWMgc8O6Ym9ydSB2ICVzIHYgJS4yNTVzIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcmVhZGluZyAlcyBmcm9tIGZpbGUgJS4yNTVzIgorbXNnc3RyICJjaHliYSBwcmkgxI3DrXRhbsOtICVzIHpvIHPDumJvcnUgJS4yNTVzIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTI1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZWFkIGFyY2hpdmUgYCUuMjU1cyciCittc2dzdHIgIm5pZSBqZSBtb8W+bsOpIMSNw610YcWlIGFyY2jDrXYg4oCeJS4yNTVz4oCcIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTI3Cittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGFyY2hpdmUiCittc2dzdHIgIm5pZSBqZSBtb8W+bsOpIHZ5a29uYcWlIGZ1bmtjaXUgZnN0YXQgbmEgYXJjaMOtdiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjEzMQorIywgZnV6enkKKyN8IG1zZ2lkICJhcmNoaXZlIGhhcyBubyBkb3QgaW4gdmVyc2lvbiBudW1iZXIiCittc2dpZCAiYXJjaGl2ZSBtYWdpYyB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAiYXJjaMOtdiBuZW3DoSBib2RrdSB2IMSNw61zbGUgdmVyemllIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTQzCisjLCBmdXp6eQorI3wgbXNnaWQgImFyY2hpdmUgaGFzIG5vIG5ld2xpbmVzIGluIGhlYWRlciIKK21zZ2lkICJhcmNoaXZlIG1lbWJlciBoZWFkZXIiCittc2dzdHIgImFyY2jDrXYgbmVvYnNhaHVqZSBub3bDqSByaWFka3kgdiBobGF2acSNa2UiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNDgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBwYXJ0IG51bWJlciIKK21zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgYXJjaGl2ZSBoZWFkZXIgbWFnaWMiCittc2dzdHIgInPDumJvciDigJ4lLjI1MHPigJwgamUgcG/FoWtvZGVuw70gLSB6bMOpIMSNw61zbG8gxI1hc3RpIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTU1CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgbm90IGEgZGViaWFuIGJpbmFyeSBhcmNoaXZlICh0cnkgZHBrZy1zcGxpdD8pIgorbXNnc3RyICJzw7pib3Ig4oCeJS4yNTBz4oCcIG5pZSBqZSBiaW7DoXJueW0gYXJjaMOtdm9tIERlYmlhbnUgKHNrw7pzdGUgZHBrZy1zcGxpdD8pIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTU5CisjLCBmdXp6eQorI3wgbXNnaWQgImFyY2hpdmUgaGFzIG5vIGRvdCBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ2lkICJhcmNoaXZlIGluZm9ybWF0aW9uIGhlYWRlciBtZW1iZXIiCittc2dzdHIgImFyY2jDrXYgbmVtw6EgYm9ka3UgdiDEjcOtc2xlIHZlcnppZSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE2MgorbXNnaWQgImFyY2hpdmUgaGFzIG5vIG5ld2xpbmVzIGluIGhlYWRlciIKK21zZ3N0ciAiYXJjaMOtdiBuZW9ic2FodWplIG5vdsOpIHJpYWRreSB2IGhsYXZpxI1rZSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE2NQorbXNnaWQgImFyY2hpdmUgaGFzIG5vIGRvdCBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAiYXJjaMOtdiBuZW3DoSBib2RrdSB2IMSNw61zbGUgdmVyemllIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTY4CisjLCBjLWZvcm1hdAorbXNnaWQgImFyY2hpdmUgdmVyc2lvbiAlLjI1MHMgbm90IHVuZGVyc3Rvb2QsIGdldCBuZXdlciBkcGtnLWRlYiIKK21zZ3N0ciAibmV6bsOhbWEgYXJjaMOtdm5hIHZlcnppYSAlLjI1MHMgLCBuYWluxaF0YWx1anRlIG5vdsWhaXUgZHBrZy1kZWIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNzkgZHBrZy1kZWIvZXh0cmFjdC5jOjIwNQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic2tpcHBlZCBtZW1iZXIgZGF0YSBmcm9tICVzIgorbXNnaWQgInNraXBwZWQgYXJjaGl2ZSBtZW1iZXIgZGF0YSBmcm9tICVzIgorbXNnc3RyICJwcmVza2/EjWVuw6kgZMOhdGEgxI1hc3RpIHogJXMiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxOTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgY29udGFpbnMgdW51bmRlcnN0b29kIGRhdGEgbWVtYmVyICUuKnMsIGdpdmluZyB1cCIKK21zZ2lkICJhcmNoaXZlICclLjI1MHMnIGNvbnRhaW5zIG5vdCB1bmRlcnN0b29kIGRhdGEgbWVtYmVyICUuKnMsIGdpdmluZyB1cCIKK21zZ3N0ciAic8O6Ym9yIOKAniUuMjUwc+KAnCBvYnNhaHVqZSBuZXpuw6FtZSDEjWFzdGkgZMOhdCAlLipzLCB1a29uxI11amUgc2EiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxOTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgY29udGFpbnMgdHdvIGNvbnRyb2wgbWVtYmVycywgZ2l2aW5nIHVwIgorbXNnaWQgImFyY2hpdmUgJyUuMjUwcycgY29udGFpbnMgdHdvIGNvbnRyb2wgbWVtYmVycywgZ2l2aW5nIHVwIgorbXNnc3RyICJzw7pib3Ig4oCeJS4yNTBz4oCcIG9ic2FodWplIGR2YSByaWFkaWFjZSDEjWxlbnksIHVrb27EjXVqZSBzYSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIxNAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiBuZXcgZGViaWFuIHBhY2thZ2UsIHZlcnNpb24gJXMuXG4iCisjfCAiIHNpemUgJWxkIGJ5dGVzOiBjb250cm9sIGFyY2hpdmU9ICV6aSBieXRlcy5cbiIKK21zZ2lkICIiCisiIG5ldyBkZWJpYW4gcGFja2FnZSwgdmVyc2lvbiAlcy5cbiIKKyIgc2l6ZSAlamQgYnl0ZXM6IGNvbnRyb2wgYXJjaGl2ZT0gJWpkIGJ5dGVzLlxuIgorbXNnc3RyICIiCisiIG5vdsO9IGRlYmlhbiBiYWzDrWssIHZlcnppYSAlcy5cbiIKKyIgdmXEvmtvc8WlICVsZCBiYWp0b3Y6IHJpYWRpYWNpIGFyY2jDrXY9ICV6aSBiYWp0b3YuXG4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyMzIKK21zZ2lkICJhcmNoaXZlIGNvbnRyb2wgbWVtYmVyIHNpemUiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIzNQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYXJjaGl2ZSBoYXMgbWFsZm9ybWF0dGVkIGNvbnRyb2wgbGVuZ3RoIGAlcyciCittc2dpZCAiYXJjaGl2ZSBoYXMgbWFsZm9ybWF0dGVkIGNvbnRyb2wgbWVtYmVyIHNpemUgJyVzJyIKK21zZ3N0ciAiYXJjaMOtdiBtw6EgemRlZm9ybW92YW7DuiByaWFkaWFjdSBkxLrFvmt1IOKAniVz4oCcIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjQyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJza2lwcGVkIG1lbWJlciBkYXRhIGZyb20gJXMiCittc2dpZCAic2tpcHBlZCBhcmNoaXZlIGNvbnRyb2wgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ3N0ciAicHJlc2tvxI1lbsOpIGTDoXRhIMSNYXN0aSB6ICVzIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjQ2CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiIG9sZCBkZWJpYW4gcGFja2FnZSwgdmVyc2lvbiAlcy5cbiIKKyN8ICIgc2l6ZSAlbGQgYnl0ZXM6IGNvbnRyb2wgYXJjaGl2ZT0gJXppLCBtYWluIGFyY2hpdmU9ICVsZC5cbiIKK21zZ2lkICIiCisiIG9sZCBkZWJpYW4gcGFja2FnZSwgdmVyc2lvbiAlcy5cbiIKKyIgc2l6ZSAlamQgYnl0ZXM6IGNvbnRyb2wgYXJjaGl2ZT0gJWpkLCBtYWluIGFyY2hpdmU9ICVqZC5cbiIKK21zZ3N0ciAiIgorIiBzdGFyw70gZGViaWFuIGJhbMOtaywgdmVyemlhICVzLlxuIgorIiB2ZcS+a29zxaUgJWxkIGJhanRvdjogcmlhZGlhY2kgYXJjaMOtdj0gJXppLCBobGF2bsO9IGFyY2jDrXY9ICVsZC5cbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI1NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZy1kZWI6IGZpbGUgbG9va3MgbGlrZSBpdCBtaWdodCBiZSBhbiBhcmNoaXZlIHdoaWNoIGhhcyBiZWVuXG4iCisiZHBrZy1kZWI6ICAgIGNvcnJ1cHRlZCBieSBiZWluZyBkb3dubG9hZGVkIGluIEFTQ0lJIG1vZGVcbiIKK21zZ3N0ciAiIgorImRwa2ctZGViOiBzw7pib3Igdnl6ZXLDoSBha28gYXJjaMOtdiwga3RvcsO9IGJvbCBwb8Wha29kZW7DvVxuIgorImRwa2ctZGViOiAgICBwcmkgamVobyBzxaVhaG92YW7DrSB2IHJlxb5pbWUgQVNDSUlcbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI1OQorIywgYy1mb3JtYXQKK21zZ2lkICJgJS4yNTVzJyBpcyBub3QgYSBkZWJpYW4gZm9ybWF0IGFyY2hpdmUiCittc2dzdHIgIuKAniUuMjU1c+KAnCBuZW3DoSBmb3Jtw6F0IGFyY2jDrXZ1IERlYmlhbnUiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNjYKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgdG8gcGlwZSBpbiBjb3B5IgorbXNnc3RyICJ6bHloYWwgesOhcGlzIGRvIHLDunJ5IHByaSBrb3DDrXJvdmFuw60iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNjgKK21zZ2lkICJmYWlsZWQgdG8gY2xvc2UgcGlwZSBpbiBjb3B5IgorbXNnc3RyICJ6bHloYWxvIHV6YXR2b3JlbmllIHLDunJ5IHByaSBrb3DDrXJvdmFuw60iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyODQKK21zZ2lkICJkYXRhIgorbXNnc3RyICJkw6F0YSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMwNworbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byBkaXJlY3RvcnkiCittc2dzdHIgInpseWhhbG8gdnlrb25hbmllIGNoZGlyIGRvIGFkcmVzw6FyYSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMxMAorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgZGlyZWN0b3J5IgorbXNnc3RyICJ6bHloYWxvIHZ5dHZvcmVuaWUgYWRyZXPDoXJhIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzEyCittc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIGRpcmVjdG9yeSBhZnRlciBjcmVhdGluZyBpdCIKK21zZ3N0ciAiemx5aGFsbyB2eWtvbmFuaWUgY2hkaXIgZG8gYWRyZXPDoXJhIHBvIGplaG8gdnl0dm9yZW7DrSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMyMworbXNnaWQgIjxkZWNvbXByZXNzPiIKK21zZ3N0ciAiPGRla29tcHJlc2lhPiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMyNQorbXNnaWQgInBhc3RlIgorbXNnc3RyICJ2bG/FvmnFpSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjM0MiBkcGtnLWRlYi9leHRyYWN0LmM6MzYzIGRwa2ctZGViL2V4dHJhY3QuYzo0MDIKKyM6IGRwa2ctZGViL2luZm8uYzo3NworIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGEgLmRlYiBmaWxlbmFtZSBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyBwb3RyZWJ1amUgbsOhem92IC5kZWIgc8O6Ym9ydSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjM0NyBkcGtnLWRlYi9leHRyYWN0LmM6NDA2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyItLSVzIG5lZWRzIGEgdGFyZ2V0IGRpcmVjdG9yeS5cbiIKKyJQZXJoYXBzIHlvdSBzaG91bGQgYmUgdXNpbmcgZHBrZyAtLWluc3RhbGwgPyIKK21zZ3N0ciAiIgorIi0tJXMgcG90cmVidWplIGNpZcS+b3bDvSBhZHJlc8Ohci5cbiIKKyJNb8W+bm8gYnkgc3RlIG1hbGkgcG91xb5pxaUgZHBrZyAtLWluc3RhbGwgPyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjM1MCBkcGtnLWRlYi9leHRyYWN0LmM6NDEwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgYXQgbW9zdCB0d28gYXJndW1lbnRzICguZGViIGFuZCBkaXJlY3RvcnkpIgorbXNnc3RyICItLSVzIHBvdHJlYnVqZSBuYWp2aWFjIGR2YSBwYXJhbWV0cmUgKC5kZWIgYSBhZHJlc8OhcikiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyB0YWtlcyBvbmx5IG9uZSBhcmd1bWVudCAoLmRlYiBmaWxlbmFtZSkiCittc2dzdHIgIi0tJXMgcG90cmVidWplIGxlbiBqZWRlbiBwYXJhbWV0ZXIgKG7DoXpvdiAuZGViIHPDumJvcnUpIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6NjMKK21zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gYC8nIGZvciBjbGVhbnVwIgorbXNnc3RyICJ6bHloYWxvIGNoZGlyIGRvIOKAni/igJwgcHJlIHZ5xI1pc3RlbmllIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTA2CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW5ub3Qgc3RhdCBmaWxlICclcyciCittc2dpZCAiY29udHJvbCBmaWxlICclcyciCittc2dzdHIgIm5lcG9kYXJpbG8gc2Egdnlrb25hxaUgc3RhdCgpIHPDumJvcnUg4oCeJXPigJwiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZy1kZWI6IGAlLjI1NXMnIGNvbnRhaW5zIG5vIGNvbnRyb2wgY29tcG9uZW50IGAlLjI1NXMnXG4iCittc2dzdHIgImRwa2ctZGViOiDigJ4lLjI1NXPigJwgbmVvYnNhaHVqZSByaWFkaWFjdSB6bG/Fvmt1IOKAniUuMjU1c+KAnFxuIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgIm9wZW4gY29tcG9uZW50IGAlLjI1NXMnIChpbiAlLjI1NXMpIGZhaWxlZCBpbiBhbiB1bmV4cGVjdGVkIHdheSIKK21zZ3N0ciAib3R2b3JlbmllIHpsb8W+a3kg4oCeJS4yNTVz4oCcICh2ICUuMjU1cykgemx5aGFsbyBuZW/EjWFrw6F2YW7DvW0gc3DDtHNvYm9tIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTIxCisjLCBjLWZvcm1hdAorbXNnaWQgIiVkIHJlcXVlc3RlZCBjb250cm9sIGNvbXBvbmVudCBpcyBtaXNzaW5nIgorbXNnaWRfcGx1cmFsICIlZCByZXF1ZXN0ZWQgY29udHJvbCBjb21wb25lbnRzIGFyZSBtaXNzaW5nIgorbXNnc3RyWzBdICJDaMO9YmEgJWQgcG/FvmFkb3ZhbsO9IHJpYWRpYWNpIGtvbXBvbmVudCIKK21zZ3N0clsxXSAiQ2jDvWJhasO6ICVkIHBvxb5hZG92YW7DqSByaWFkaWFjZSBrb21wb25lbnR5IgorbXNnc3RyWzJdICJDaMO9YmEgJWQgcG/FvmFkb3ZhbsO9Y2ggcmlhZGlhY2ljaCBrb21wb25lbnRvdiIKKworIzogZHBrZy1kZWIvaW5mby5jOjEzOSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NDI0CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzY2FuIGRpcmVjdG9yeSBgJS4yNTVzJyIKK21zZ3N0ciAibmllIGplIG1vxb5uw6kgc2tlbm92YcWlIGFkcmVzw6FyIOKAniUuMjU1c+KAnCIKKworIzogZHBrZy1kZWIvaW5mby5jOjE0OAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc3RhdCBgJS4yNTVzJyAoaW4gYCUuMjU1cycpIgorbXNnc3RyICJuaWUgamUgbW/Fvm7DqSB6aXN0acWlIHN0YXYg4oCeJS4yNTVz4oCcICh2IOKAniUuMjU1c+KAnCkiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IG9wZW4gYCUuMjU1cycgKGluIGAlLjI1NXMnKSIKK21zZ3N0ciAibmllIGplIG1vxb5uw6kgb3R2b3JpxaUg4oCeJS4yNTVz4oCcICh2IOKAniUuMjU1c+KAnCkiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxNjcgZHBrZy1kZWIvaW5mby5jOjE4NSBkcGtnLWRlYi9pbmZvLmM6MTk5CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZWFkIGAlLjI1NXMnIChpbiBgJS4yNTVzJykiCittc2dzdHIgIm5pZSBqZSBtb8W+bsOpIHByZcSNw610YcWlIOKAniUuMjU1c+KAnCAodiDigJ4lLjI1NXPigJwpIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTcwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIgJTdsZCBieXRlcywgJTVkIGxpbmVzICAgJWMgICUtMjAuMTI3cyAlLjEyN3NcbiIKK21zZ2lkICIgJTdqZCBieXRlcywgJTVkIGxpbmVzICAgJWMgICUtMjAuMTI3cyAlLjEyN3NcbiIKK21zZ3N0ciAiICU3bGQgYmFqdG92LCAlNWQgcmlhZGt5ICAgJWMgICUtMjAuMTI3cyAlLjEyN3NcbiIKKworIzogZHBrZy1kZWIvaW5mby5jOjE3NAorIywgYy1mb3JtYXQKK21zZ2lkICIgICAgIG5vdCBhIHBsYWluIGZpbGUgICAgICAgICAgJS4yNTVzXG4iCittc2dzdHIgIiAgICAgbmllIGplIG9iecSNYWpuw70gc8O6Ym9yICAgICAgICAgICUuMjU1c1xuIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTg2Cittc2dpZCAiKG5vIGBjb250cm9sJyBmaWxlIGluIGNvbnRyb2wgYXJjaGl2ZSEpXG4iCittc2dzdHIgIihzw7pib3Ig4oCeY29udHJvbOKAnCBjaMO9YmEgdiByaWFkaWFjb20gYXJjaMOtdmUhKVxuIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MjIyCittc2dpZCAiY291bGQgbm90IG9wZW4gdGhlIGBjb250cm9sJyBjb21wb25lbnQiCittc2dzdHIgIm5lYm9sbyBtb8W+bsOpIG90dm9yacWlIGtvbXBvbmVudCDigJ5jb250cm9s4oCcIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MjYxCittc2dpZCAiZmFpbGVkIGR1cmluZyByZWFkIG9mIGBjb250cm9sJyBjb21wb25lbnQiCittc2dzdHIgInpseWhhbmllIHBvxI1hcyDEjcOtdGFuaWEg4oCeY29udHJvbOKAnCBrb21wb25lbnR1IgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MjYzCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgdGhlICclcycgY29tcG9uZW50IgorbXNnc3RyICJjaHliYSBwcmkgdXphdHbDoXJhbsOtIHpsb8W+a3kg4oCeJXPigJwiCisKKyM6IGRwa2ctZGViL2luZm8uYzoyNzgKK21zZ2lkICJFcnJvciBpbiBmb3JtYXQiCittc2dzdHIgIkNoeWJhIHZvIGZvcm3DoXRlIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MzI4Cittc2dpZCAiLS1jb250ZW50cyB0YWtlcyBleGFjdGx5IG9uZSBhcmd1bWVudCIKK21zZ3N0ciAiLS1jb250ZW50cyB2ecW+YWR1amUgcHLDoXZlIGplZGVuIHBhcmFtYXRlciIKKworIzogZHBrZy1kZWIvbWFpbi5jOjU0CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiBgJXMnIHBhY2thZ2UgYXJjaGl2ZSBiYWNrZW5kIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkRlYmlhbiDigJ4lc+KAnCBiYWNrZW5kIHByZSBhcmNow612IGJhbMOta292LCB2ZXJ6aWEgJXMuXG4iCisKKyM6IGRwa2ctZGViL21haW4uYzo3MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIkNvbW1hbmRzOlxuIgorI3wgIiAgLWJ8LS1idWlsZCA8ZGlyZWN0b3J5PiBbPGRlYj5dICAgQnVpbGQgYW4gYXJjaGl2ZS5cbiIKKyN8ICIgIC1jfC0tY29udGVudHMgPGRlYj4gICAgICAgICAgICAgIExpc3QgY29udGVudHMuXG4iCisjfCAiICAtSXwtLWluZm8gPGRlYj4gWzxjZmlsZT4gLi4uXSAgICBTaG93IGluZm8gdG8gc3Rkb3V0LlxuIgorI3wgIiAgLVd8LS1zaG93IDxkZWI+ICAgICAgICAgICAgICAgICAgU2hvdyBpbmZvcm1hdGlvbiBvbiBwYWNrYWdlKHMpXG4iCisjfCAiICAtZnwtLWZpZWxkIDxkZWI+IFs8Y2ZpZWxkPiAuLi5dICBTaG93IGZpZWxkKHMpIHRvIHN0ZG91dC5cbiIKKyN8ICIgIC1lfC0tY29udHJvbCA8ZGViPiBbPGRpcmVjdG9yeT5dIEV4dHJhY3QgY29udHJvbCBpbmZvLlxuIgorI3wgIiAgLXh8LS1leHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+ICAgRXh0cmFjdCBmaWxlcy5cbiIKKyN8ICIgIC1YfC0tdmV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gIEV4dHJhY3QgJiBsaXN0IGZpbGVzLlxuIgorI3wgIiAgLS1mc3lzLXRhcmZpbGUgPGRlYj4gICAgICAgICAgICAgT3V0cHV0IGZpbGVzeXN0ZW0gdGFyZmlsZS5cbiIKKyN8ICJcbiIKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtYnwtLWJ1aWxkIDxkaXJlY3Rvcnk+IFs8ZGViPl0gICBCdWlsZCBhbiBhcmNoaXZlLlxuIgorIiAgLWN8LS1jb250ZW50cyA8ZGViPiAgICAgICAgICAgICAgTGlzdCBjb250ZW50cy5cbiIKKyIgIC1JfC0taW5mbyA8ZGViPiBbPGNmaWxlPiAuLi5dICAgIFNob3cgaW5mbyB0byBzdGRvdXQuXG4iCisiICAtV3wtLXNob3cgPGRlYj4gICAgICAgICAgICAgICAgICBTaG93IGluZm9ybWF0aW9uIG9uIHBhY2thZ2UocylcbiIKKyIgIC1mfC0tZmllbGQgPGRlYj4gWzxjZmllbGQ+IC4uLl0gIFNob3cgZmllbGQocykgdG8gc3Rkb3V0LlxuIgorIiAgLWV8LS1jb250cm9sIDxkZWI+IFs8ZGlyZWN0b3J5Pl0gRXh0cmFjdCBjb250cm9sIGluZm8uXG4iCisiICAteHwtLWV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gICBFeHRyYWN0IGZpbGVzLlxuIgorIiAgLVh8LS12ZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PiAgRXh0cmFjdCAmIGxpc3QgZmlsZXMuXG4iCisiICAtUnwtLXJhdy1leHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFeHRyYWN0IGNvbnRyb2wgaW5mbyBhbmQgZmlsZXMuXG4iCisiICAtLWZzeXMtdGFyZmlsZSA8ZGViPiAgICAgICAgICAgICBPdXRwdXQgZmlsZXN5c3RlbSB0YXJmaWxlLlxuIgorIlxuIgorbXNnc3RyICIiCisiUHLDrWthenk6XG4iCisiICAtYnwtLWJ1aWxkIDxhZHJlc8Ohcj4gWzxkZWI+XSAgICAgIHZ5dHZvcsOtIGFyY2jDrXZcbiIKKyIgIC1jfC0tY29udGVudHMgPGRlYj4gICAgICAgICAgICAgICB2eXDDrcWhZSBvYnNhaFxuIgorIiAgLUl8LS1pbmZvIDxkZWI+IFs8Y3PDumJvcj4gLi4uXSAgICB2eXDDrcWhZSBpbmZvcm3DoWNpZSBuYSDFoXRhbmRhcmRuw70gdsO9c3R1cFxuIgorIiAgLVd8LS1zaG93IDxkZWI+ICAgICAgICAgICAgICAgICAgIHZ5cMOtxaFlIGluZm9ybcOhY2llIG8gYmFsw61rdVxuIgorIiAgLWZ8LS1maWVsZCA8ZGViPiBbPGNwb2xvxb5rYT4gLi4uXSB2eXDDrcWhZSBwb2xvxb5rdSBuYSDFoXRhbmRhcmRuw70gdsO9c3R1cFxuIgorIiAgLWV8LS1jb250cm9sIDxkZWI+IFs8YWRyZXPDoXI+XSAgICByb3piYWzDrSByaWFkaWFjZSBpbmZvcm3DoWNpZVxuIgorIiAgLXh8LS1leHRyYWN0IDxkZWI+IDxhZHJlc8Ohcj4gICAgICByb3piYWzDrSBzw7pib3J5XG4iCisiICAtWHwtLXZleHRyYWN0IDxkZWI+IDxhZHJlc8Ohcj4gICAgIHJvemJhbMOtIGEgdnlww63FoWUgc8O6Ym9yeVxuIgorIiAgLS1mc3lzLXRhcmZpbGUgPGRlYj4gICAgICAgICAgICAgIHZ5cMOtxaFlIHRhciBzbyBzw7pib3JtaVxuIgorIlxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6OTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIjxkZWI+IGlzIHRoZSBmaWxlbmFtZSBvZiBhIERlYmlhbiBmb3JtYXQgYXJjaGl2ZS5cbiIKKyI8Y2ZpbGU+IGlzIHRoZSBuYW1lIG9mIGFuIGFkbWluaXN0cmF0aXZlIGZpbGUgY29tcG9uZW50LlxuIgorIjxjZmllbGQ+IGlzIHRoZSBuYW1lIG9mIGEgZmllbGQgaW4gdGhlIG1haW4gYGNvbnRyb2wnIGZpbGUuXG4iCisiXG4iCittc2dzdHIgIiIKKyI8ZGViPiBqZSBuw6F6b3YgZm9ybcOhdHUgYXJjaMOtdnUgRGViaWFudS5cbiIKKyI8Y3PDumJvcj4gamUgbsOhem92IHJpYWRpYWNlaG8gc8O6Ym9ydS5cbiIKKyI8Y3BvbG/FvmthPiBqZSBuw6F6b3YgcG9sb8W+a3kgdiBobGF2bm9tIHPDumJvcmUg4oCeY29udHJvbOKAnC5cbiIKKyJcbiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjk5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiT3B0aW9uczpcbiIKKyN8ICIgIC0tc2hvd2Zvcm1hdD08Zm9ybWF0PiAgICAgICAgICAgIFVzZSBhbHRlcm5hdGl2ZSBmb3JtYXQgZm9yIC0tc2hvdy5cbiIKKyN8ICIgIC1EICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVuYWJsZSBkZWJ1Z2dpbmcgb3V0cHV0LlxuIgorI3wgIiAgLS1vbGQsIC0tbmV3ICAgICAgICAgICAgICAgICAgICAgU2VsZWN0IGFyY2hpdmUgZm9ybWF0LlxuIgorI3wgIiAgLS1ub2NoZWNrICAgICAgICAgICAgICAgICAgICAgICAgU3VwcHJlc3MgY29udHJvbCBmaWxlIGNoZWNrIChidWlsZCAiCisjfCAiYmFkXG4iCisjfCAiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhY2thZ2VzKS5cbiIKKyN8ICIgIC16IyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNldCB0aGUgY29tcHJlc3Npb24gbGV2ZWwgd2hlbiAiCisjfCAiYnVpbGRpbmcuXG4iCisjfCAiICAtWjx0eXBlPiAgICAgICAgICAgICAgICAgICAgICAgICBTZXQgdGhlIGNvbXByZXNzaW9uIHR5cGUgdXNlZCB3aGVuICIKKyN8ICJidWlsZGluZy5cbiIKKyN8ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWxsb3dlZCB0eXBlczogZ3ppcCwgeHosIGJ6aXAyLCAiCisjfCAibHptYSwgbm9uZS5cbiIKKyN8ICJcbiIKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tc2hvd2Zvcm1hdD08Zm9ybWF0PiAgICAgICAgICAgIFVzZSBhbHRlcm5hdGl2ZSBmb3JtYXQgZm9yIC0tc2hvdy5cbiIKKyIgIC12LCAtLXZlcmJvc2UgICAgICAgICAgICAgICAgICAgIEVuYWJsZSB2ZXJib3NlIG91dHB1dC5cbiIKKyIgIC1EICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVuYWJsZSBkZWJ1Z2dpbmcgb3V0cHV0LlxuIgorIiAgLS1vbGQsIC0tbmV3ICAgICAgICAgICAgICAgICAgICAgU2VsZWN0IGFyY2hpdmUgZm9ybWF0LlxuIgorIiAgLS1ub2NoZWNrICAgICAgICAgICAgICAgICAgICAgICAgU3VwcHJlc3MgY29udHJvbCBmaWxlIGNoZWNrIChidWlsZCBiYWRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFja2FnZXMpLlxuIgorIiAgLXojICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU2V0IHRoZSBjb21wcmVzc2lvbiBsZXZlbCB3aGVuIGJ1aWxkaW5nLlxuIgorIiAgLVo8dHlwZT4gICAgICAgICAgICAgICAgICAgICAgICAgU2V0IHRoZSBjb21wcmVzc2lvbiB0eXBlIHVzZWQgd2hlbiAiCisiYnVpbGRpbmcuXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFsbG93ZWQgdHlwZXM6IGd6aXAsIHh6LCBiemlwMiwgbHptYSwgIgorIm5vbmUuXG4iCisiXG4iCittc2dzdHIgIiIKKyJWb8S+Ynk6XG4iCisiICAtLXNob3dmb3JtYXQ9PGZvcm3DoXQ+ICAgICAgICAgICAgcG91xb5pamUgYWx0ZXJuYXTDrXZueSBmb3Jtw6F0IHByZSAtLXNob3dcbiIKKyIgIC1EICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvdm9sw60gbGFkaWFjZSB2w71waXN5XG4iCisiICAtLW9sZCwgLS1uZXcgICAgICAgICAgICAgICAgICAgICB6dm9sw60gZm9ybcOhdCBhcmNow612dVxuIgorIiAgLS1ub2NoZWNrICAgICAgICAgICAgICAgICAgICAgICAgcG90bGHEjcOtIGtvbnRyb2x1IHPDumJvcnUgY29udHJvbFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHZ5dHbDoXJhbmllIGNoeWJuw71jaCBiYWzDrWtvdilcbiIKKyIgIC16IyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByaSB2eXR2w6FyYW7DrSBuYXN0YXbDrSBrb21wcmVzaXVcbiIKKyIgIC1aPHR5cGU+ICAgICAgICAgICAgICAgICAgICAgICAgIHByaSB2eXR2w6FyYW7DrSBuYXN0YXbDrSB0eXAga29tcHJlc2llXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAocG92b2xlbsOpIGhvZG5vdHk6IGd6aXAsIHh6LCBiemlwMiwgbHptYSwgIgorIm5vbmUpXG4iCisiXG4iCisKKyM6IGRwa2ctZGViL21haW4uYzoxMjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIlVzZSBgZHBrZycgdG8gaW5zdGFsbCBhbmQgcmVtb3ZlIHBhY2thZ2VzIGZyb20geW91ciBzeXN0ZW0sIG9yXG4iCisiYGRzZWxlY3QnIG9yIGBhcHRpdHVkZScgZm9yIHVzZXItZnJpZW5kbHkgcGFja2FnZSBtYW5hZ2VtZW50LiAgUGFja2FnZXNcbiIKKyJ1bnBhY2tlZCB1c2luZyBgZHBrZy1kZWIgLS1leHRyYWN0JyB3aWxsIGJlIGluY29ycmVjdGx5IGluc3RhbGxlZCAhXG4iCittc2dzdHIgIiIKKyJcbiIKKyJQb3XFvml0ZSDigJ5kcGtn4oCcIG5hIGluxaF0YWxvdmFuaWUgYWxlYm8gb2RzdHLDoW5lbmllIGJhbMOta292IHZvIHZhxaFvbSBzeXN0w6ltZSxcbiIKKyJhbGVibyBza8O6c3RlIOKAnmRzZWxlY3TigJwgYWxlYm8g4oCeYXB0aXR1ZGXigJwgbmEgcG91xb7DrXZhdGXEvnNreSBwcsOtdmV0aXbDuiBzcHLDoXZ1XG4iCisiYmFsw61rb3YuIEJhbMOta3kgcm96YmFsZW7DqSBwb3XFvml0w61tIOKAnmRwa2ctZGViIC0tZXh0cmFjdOKAnCBzYSBuZW5haW7FoXRhbHVqw7pcbiIKKyJzcHLDoXZuZSFcbiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjEzMgorbXNnaWQgIiIKKyJUeXBlIGRwa2ctZGViIC0taGVscCBmb3IgaGVscCBhYm91dCBtYW5pcHVsYXRpbmcgKi5kZWIgZmlsZXM7XG4iCisiVHlwZSBkcGtnIC0taGVscCBmb3IgaGVscCBhYm91dCBpbnN0YWxsaW5nIGFuZCBkZWluc3RhbGxpbmcgcGFja2FnZXMuIgorbXNnc3RyICIiCisiTmFww63FoXRlIGRwa2ctZGViIC0taGVscCBwcmUgcG9tb2Nuw61rYSBvIG1hbmlwdWzDoWNpaSBzICouZGViIHPDumJvcm1pO1xuIgorIk5hcMOtxaF0ZSBkcGtnIC0taGVscCBwcmUgcG9tb2Nuw61rYSBvIGluxaF0YWzDoWNpaSBhIGRlaW7FoXRhbMOhY2lpIGJhbMOta292LiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjE0OAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGludGVnZXIgZm9yIC0lYzogJyUuMjUwcyciCittc2dzdHIgIm5lcGxhdG7DqSBjZWzDqSDEjcOtc2xvIHByZSAtJWM6IOKAniUuMjUwc+KAnCIKKworIzogZHBrZy1kZWIvbWFpbi5jOjE1MQorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGNvbXByZXNzaW9uIGxldmVsIGZvciAtJWM6ICVsZCciCittc2dzdHIgIm5lcGxhdG7DoSDDunJvdmXFiCBrb21wcmVzaWUgcHJlIC0lYzog4oCeJWxk4oCcIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTYxCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gY29tcHJlc3Npb24gdHlwZSBgJXMnISIKK21zZ3N0ciAibmV6bsOhbXkgdHlwIGtvbXByZXNpZSDigJ4lc+KAnCEiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjUyCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBkaWdpdCAoY29kZSAlZCkgaW4gJXMiCittc2dzdHIgInPDumJvciDigJ4lLjI1MHPigJwgamUgcG/FoWtvZGVuw70gLSBuZXNwcsOhdm5lIMSNw61zbGljZSAoa8OzZCAlZCkgdiAlcyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gJS4yNTBzIG1pc3NpbmciCittc2dzdHIgInPDumJvciDigJ4lLjI1MHPigJwgamUgcG/FoWtvZGVuw70gLSAlLjI1MHMgY2jDvWJhIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzo2MworIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBtaXNzaW5nIG5ld2xpbmUgYWZ0ZXIgJS4yNTBzIgorbXNnc3RyICJzw7pib3Ig4oCeJS4yNTBz4oCcIGplIHBvxaFrb2RlbsO9IC0gY2jDvWJhasO6Y2kgbm92w70gcmlhZG9rIHphICUuMjUwcyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6ODkgZHBrZy1zcGxpdC9tYWluLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHJlYWRpbmcgJS4yNTBzIgorbXNnc3RyICJjaHliYSBwcmkgxI3DrXRhbsOtICUuMjUwcyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTAzCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBtYWdpYyBhdCBlbmQgb2YgZmlyc3QgaGVhZGVyIgorbXNnc3RyICIiCisic8O6Ym9yIOKAniUuMjUwc+KAnCBqZSBwb8Wha29kZW7DvSAtIGNoeWJuw6kgbWFnaWNrw6kgem5ha3kgbmEga29uY2kgcHJ2w6lobyB6w6FobGF2aWEiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjExMworIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgcGFkZGluZyBjaGFyYWN0ZXIgKGNvZGUgJWQpIgorbXNnc3RyICJzw7pib3Ig4oCeJS4yNTBz4oCcIGplIHBvxaFrb2RlbsO9IC0gemzDqSBkb3BsbmVuaWUgem5ha3UgKGvDs2QgJWQpIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gbnVsbHMgaW4gaW5mbyBzZWN0aW9uIgorbXNnc3RyICJzw7pib3Ig4oCeJS4yNTBz4oCcIGplIHBvxaFrb2RlbsO9IC0gbnVseSB2IGluZm8gc2VrY2lpIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMjIKK21zZ2lkICJmb3JtYXQgdmVyc2lvbiBudW1iZXIiCittc2dzdHIgImZvcm3DoXRvdmHFpSDEjcOtc2xvIHZlcnppZSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgZm9ybWF0IHZlcnNpb24gYCUuMjUwcycgLSB5b3UgbmVlZCBhIG5ld2VyIGRwa2ctc3BsaXQiCittc2dzdHIgIiIKKyJzw7pib3Ig4oCeJS4yNTBz4oCcIGplIHZlcnppYSBmb3Jtw6F0dSDigJ4lLjI1MHPigJwgLSBwb3RyZWJ1amV0ZSBub3bFocOtIGRwa2ctc3BsaXQiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyNworbXNnaWQgInBhY2thZ2UgbmFtZSIKK21zZ3N0ciAibsOhem92IGJhbMOta2EiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyOAorbXNnaWQgInBhY2thZ2UgdmVyc2lvbiBudW1iZXIiCittc2dzdHIgIsSNw61zbG8gdmVyemllIGJhbMOta2EiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyOQorbXNnaWQgInBhY2thZ2UgZmlsZSBNRDUgY2hlY2tzdW0iCittc2dzdHIgImtvbnRyb2xuw70gc8O6xI1ldCBNRDUgc8O6Ym9ydSBiYWzDrWthIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIE1ENSBjaGVja3N1bSBgJS4yNTBzJyIKK21zZ3N0ciAic8O6Ym9yIOKAniUuMjUwc+KAnCBqZSBwb8Wha29kZW7DvSAtIHpsw70gTUQ1IGtvbnRyb2xuw70gc8O6xI1ldCDigJ4lLjI1MHPigJwiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEzNCBkcGtnLXNwbGl0L2luZm8uYzoxMzUKK21zZ2lkICJhcmNoaXZlIHRvdGFsIHNpemUiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTM2IGRwa2ctc3BsaXQvaW5mby5jOjEzNworIywgZnV6enkKKyN8IG1zZ2lkICJwYXJ0IG9mZnNldCIKK21zZ2lkICJhcmNoaXZlIHBhcnQgb2Zmc2V0IgorbXNnc3RyICJvZnNldCDEjWFzdGkiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEzOQorIywgZnV6enkKKyN8IG1zZ2lkICJwYXJ0IG51bWJlcnMiCittc2dpZCAiYXJjaGl2ZSBwYXJ0IG51bWJlcnMiCittc2dzdHIgIsSNw61zbGEgxI1hc3TDrSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTQyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBubyBzbGFzaCBiZXR3ZWVuIHBhcnQgbnVtYmVycyIKK21zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBubyBzbGFzaCBiZXR3ZWVuIGFyY2hpdmUgcGFydCBudW1iZXJzIgorbXNnc3RyICJzw7pib3Ig4oCeJS4yNTBz4oCcIGplIHBvxaFrb2RlbsO9IC0gY2jDvWJhIGxvbWthIG1lZHppIMSNw61zbGFtaSDEjWFzdMOtIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDUKKyMsIGZ1enp5CisjfCBtc2dpZCAibnVtYmVyIG9mIHBhcnRzIgorbXNnaWQgIm51bWJlciBvZiBhcmNoaXZlIHBhcnRzIgorbXNnc3RyICJwb8SNZXQgxI1hc3TDrSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTQ3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgbnVtYmVyIG9mIHBhcnRzIgorbXNnaWQgImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBudW1iZXIgb2YgYXJjaGl2ZSBwYXJ0cyIKK21zZ3N0ciAic8O6Ym9yIOKAniUuMjUwc+KAnCBqZSBwb8Wha29kZW7DvSAtIHpsw70gcG/EjWV0IMSNYXN0w60iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE0OQorIywgZnV6enkKKyN8IG1zZ2lkICJwYXJ0cyBudW1iZXIiCittc2dpZCAiYXJjaGl2ZSBwYXJ0cyBudW1iZXIiCittc2dzdHIgInBvxI1ldCDEjWFzdMOtIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBwYXJ0IG51bWJlciIKK21zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgYXJjaGl2ZSBwYXJ0IG51bWJlciIKK21zZ3N0ciAic8O6Ym9yIOKAniUuMjUwc+KAnCBqZSBwb8Wha29kZW7DvSAtIHpsw6kgxI3DrXNsbyDEjWFzdGkiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE1NworIywgZnV6enkKKyN8IG1zZ2lkICJwYWNrYWdlIG5hbWUiCittc2dpZCAicGFja2FnZSBhcmNoaXRlY3R1cmUiCittc2dzdHIgIm7DoXpvdiBiYWzDrWthIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIG1hZ2ljIGF0IGVuZCBvZiBzZWNvbmQgaGVhZGVyIgorbXNnc3RyICIiCisic8O6Ym9yIOKAniUuMjUwc+KAnCBqZSBwb8Wha29kZW7DvSAtIGNoeWJuw70gbWFnaWNrw70gem5hayBuYSBrb25jaSBkcnVoZWogaGxhdmnEjWt5IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gc2Vjb25kIG1lbWJlciBpcyBub3QgZGF0YSBtZW1iZXIiCittc2dzdHIgInPDumJvciDigJ4lLjI1MHPigJwgamUgcG/FoWtvZGVuw70gLSBkcnVow70gxI1sZW4gbmllIGplIHPDusSNYXPFpW91IGTDoXQiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE3NAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSB3cm9uZyBudW1iZXIgb2YgcGFydHMgZm9yIHF1b3RlZCBzaXplcyIKK21zZ3N0ciAic8O6Ym9yIOKAniUuMjUwc+KAnCBqZSBwb8Wha29kZW7DvSAtIGNoeWJuw70gcG/EjWV0IMSNYXN0w60gcHJlIHV2ZWRlbsOpIHZlxL5rb3N0aSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTc4CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIHNpemUgaXMgd3JvbmcgZm9yIHF1b3RlZCBwYXJ0IG51bWJlciIKK21zZ3N0ciAic8O6Ym9yIOKAniUuMjUwc+KAnCBqZSBwb8Wha29kZW7DvSAtIHZlxL5rb3PFpSBqZSB6bMOhIHByZSB1dmVkZW7DqSDEjcOtc2xvIHPDusSNYXN0aSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTg0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmc3RhdCBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5pZSBqZSBtb8W+bsOpIHZ5a29uYcWlIGZzdGF0KCkgxI1hc3RpIHPDumJvcnUg4oCeJS4yNTBz4oCcIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gdG9vIHNob3J0IgorbXNnc3RyICJzw7pib3Ig4oCeJS4yNTBz4oCcIGplIHBvxaFrb2RlbsO9IC0gcHLDrWxpxaEga3LDoXRreSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjAyIGRwa2ctc3BsaXQvaW5mby5jOjI0OQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgb3BlbiBhcmNoaXZlIHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmllIGplIG1vxb5uw6kgb3R2b3JpxaUgxI1hc8WlIGFyY2jDrXZuZWhvIHPDumJvcnUg4oCeJS4yNTBz4oCcIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBub3QgYW4gYXJjaGl2ZSBwYXJ0IgorbXNnc3RyICJzw7pib3Ig4oCeJS4yNTBz4oCcIG5pZSBqZSBzw7rEjWFzxaVvdSBhcmNow612dSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjA5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiJXM6XG4iCisjfCAiICAgIFBhcnQgZm9ybWF0IHZlcnNpb246ICAgICAgICAgICAgJXNcbiIKKyN8ICIgICAgUGFydCBvZiBwYWNrYWdlOiAgICAgICAgICAgICAgICAlc1xuIgorI3wgIiAgICAgICAgLi4uIHZlcnNpb246ICAgICAgICAgICAgICAgICVzXG4iCisjfCAiICAgICAgICAuLi4gTUQ1IGNoZWNrc3VtOiAgICAgICAgICAgJXNcbiIKKyN8ICIgICAgICAgIC4uLiBsZW5ndGg6ICAgICAgICAgICAgICAgICAlbHUgYnl0ZXNcbiIKKyN8ICIgICAgICAgIC4uLiBzcGxpdCBldmVyeTogICAgICAgICAgICAlbHUgYnl0ZXNcbiIKKyN8ICIgICAgUGFydCBudW1iZXI6ICAgICAgICAgICAgICAgICAgICAlZC8lZFxuIgorI3wgIiAgICBQYXJ0IGxlbmd0aDogICAgICAgICAgICAgICAgICAgICV6aSBieXRlc1xuIgorI3wgIiAgICBQYXJ0IG9mZnNldDogICAgICAgICAgICAgICAgICAgICVsdSBieXRlc1xuIgorI3wgIiAgICBQYXJ0IGZpbGUgc2l6ZSAodXNlZCBwb3J0aW9uKTogICVsdSBieXRlc1xuIgorI3wgIlxuIgorbXNnaWQgIiIKKyIlczpcbiIKKyIgICAgUGFydCBmb3JtYXQgdmVyc2lvbjogICAgICAgICAgICAlc1xuIgorIiAgICBQYXJ0IG9mIHBhY2thZ2U6ICAgICAgICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gdmVyc2lvbjogICAgICAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiBhcmNoaXRlY3R1cmU6ICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIE1ENSBjaGVja3N1bTogICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gbGVuZ3RoOiAgICAgICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgICAgICAuLi4gc3BsaXQgZXZlcnk6ICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgIFBhcnQgbnVtYmVyOiAgICAgICAgICAgICAgICAgICAgJWQvJWRcbiIKKyIgICAgUGFydCBsZW5ndGg6ICAgICAgICAgICAgICAgICAgICAlamQgYnl0ZXNcbiIKKyIgICAgUGFydCBvZmZzZXQ6ICAgICAgICAgICAgICAgICAgICAlamQgYnl0ZXNcbiIKKyIgICAgUGFydCBmaWxlIHNpemUgKHVzZWQgcG9ydGlvbik6ICAlamQgYnl0ZXNcbiIKKyJcbiIKK21zZ3N0ciAiIgorIiVzOlxuIgorIiAgICBWZXJ6aWEgxI1hc3RpIGZvcm3DoXR1OiAgICAgICAgICAgJXNcbiIKKyIgICAgxIxhc8WlIGJhbMOta2E6ICAgICAgICAgICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIHZlcnppYTogICAgICAgICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gTUQ1IHPDusSNZXQ6ICAgICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIGTEusW+a2E6ICAgICAgICAgICAgICAgICAgJWx1IGJhanRvdlxuIgorIiAgICAgICAgLi4uIHJvemRlbC4ga2HFvmTDvWNoOiAgICAgICAgJWx1IGJhanRvdlxuIgorIiAgICDEjMOtc2xvIMSNYXN0aTogICAgICAgICAgICAgICAgICAgICVkLyVkXG4iCisiICAgIETEusW+a2EgxI1hc3RpOiAgICAgICAgICAgICAgICAgICAgJXppIGJhanRvdlxuIgorIiAgICBPZmZzZXQgxI1hc3RpOiAgICAgICAgICAgICAgICAgICAlbHUgYmFqdG92XG4iCisiICAgIMSMaWFzdC52ZcS+LnPDumJvcnUgKHBvdcW+LiDEjWFzxaUpOiAgJWx1IGJhanRvdlxuIgorIlxuIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyMjUKKyMsIGZ1enp5CisjfCBtc2dpZCAiPHVua25vd24+IgorbXNnY3R4dCAiYXJjaGl0ZWN0dXJlIgorbXNnaWQgIjx1bmtub3duPiIKK21zZ3N0ciAiPG5lem7DoW15PiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjQ0IGRwa2ctc3BsaXQvam9pbi5jOjEwNQorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIHJlcXVpcmVzIG9uZSBvciBtb3JlIHBhcnQgZmlsZSBhcmd1bWVudHMiCittc2dzdHIgIi0tJXMgdnnFvmFkdWplIGplZGVuIGFsZWJvIHZpYWMgcGFyYW1ldHJvdiDEjWFzdMOtIHPDumJvcnUiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjI1NQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlcycgaXMgbm90IGFuIGFyY2hpdmUgcGFydFxuIgorbXNnc3RyICJzw7pib3Ig4oCeJXPigJwgbmllIGplIHPDusSNYXPFpW91IGFyY2jDrXZ1XG4iCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjQ0CisjLCBjLWZvcm1hdAorbXNnaWQgIlB1dHRpbmcgcGFja2FnZSAlcyB0b2dldGhlciBmcm9tICVkIHBhcnQ6ICIKK21zZ2lkX3BsdXJhbCAiUHV0dGluZyBwYWNrYWdlICVzIHRvZ2V0aGVyIGZyb20gJWQgcGFydHM6ICIKK21zZ3N0clswXSAiQmFsw61rICVzIHNhIHNrbGFkw6EgeiAlZCDEjWFzdGk6ICIKK21zZ3N0clsxXSAiQmFsw61rICVzIHNhIHNrbGFkw6EgeiAlZCDEjWFzdMOtOiAiCittc2dzdHJbMl0gIkJhbMOtayAlcyBzYSBza2xhZMOhIHogJWQgxI1hc3TDrTogIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBvdXRwdXQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmllIGplIG1vxb5uw6kgb3R2b3JpxaUgdsO9c3R1cG7DvSBzw7pib3Ig4oCeJS4yNTBz4oCcIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gKHJlKW9wZW4gaW5wdXQgcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuaWUgamUgbW/Fvm7DqSAoem5vdnUpb3R2b3JpxaUgdnN0dXBuw7ogxI1hc8WlIHPDumJvcnUg4oCeJS4yNTBz4oCcIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1OAorIywgZnV6enkKKyN8IG1zZ2lkICJTa2lwcGluZyBkZXNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dpZCAic2tpcHBpbmcgc3BsaXQgcGFja2FnZSBoZWFkZXIiCittc2dzdHIgIlByZXNrYWt1amUgc2EgenJ1xaFlbsO9IGJhbMOtayAlcy5cbiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NTkKKyMsIGZ1enp5CisjfCBtc2dpZCAiUHV0dGluZyBwYWNrYWdlICVzIHRvZ2V0aGVyIGZyb20gJWQgcGFydDogIgorI3wgbXNnaWRfcGx1cmFsICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0czogIgorbXNnaWQgInNwbGl0IHBhY2thZ2UgcGFydCIKK21zZ3N0ciAiQmFsw61rICVzIHNhIHNrbGFkw6EgeiAlZCDEjWFzdGk6ICIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NjkgZHBrZy1zcGxpdC9zcGxpdC5jOjIzNworIywgYy1mb3JtYXQKK21zZ2lkICJkb25lXG4iCittc2dzdHIgImRva29uxI1lbsOpXG4iCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjg1CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGVzIGAlLjI1MHMnIGFuZCBgJS4yNTBzJyBhcmUgbm90IHBhcnRzIG9mIHRoZSBzYW1lIGZpbGUiCittc2dzdHIgInPDumJvcnkg4oCeJS4yNTBz4oCcIGEg4oCeJS4yNTBz4oCcIG5pZSBzw7ogc8O6xI1hc8Wlb3UgdG9obyBpc3TDqWhvIHPDumJvcnUiCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjkwCisjLCBjLWZvcm1hdAorbXNnaWQgInRoZXJlIGFyZSBzZXZlcmFsIHZlcnNpb25zIG9mIHBhcnQgJWQgLSBhdCBsZWFzdCBgJS4yNTBzJyBhbmQgYCUuMjUwcyciCittc2dzdHIgIm7DoWpkZW7DvWNoIG5pZWtvxL5rbyB2ZXJ6acOtIMSNYXN0aSAlZCAtIG5ham1lbmVqIOKAniUuMjUwc+KAnCBhIOKAniUuMjUwc+KAnCIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6MTI4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhcnQgJWQgaXMgbWlzc2luZyIKK21zZ3N0ciAixI1hc8WlICVkIGNow71iYSIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6NDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuIGAlcycgcGFja2FnZSBzcGxpdC9qb2luIHRvb2w7IHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkRlYmlhbiDigJ4lc+KAnCBuw6FzdHJvaiBuYSByb3pkZcS+b3ZhbmllL3Nww6FqYW5pZSBiYWzDrWtvdjsgdmVyemlhICVzLlxuIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo0OQorIywgYy1mb3JtYXQKK21zZ2lkICJDb3B5cmlnaHQgKEMpIDE5OTQtMTk5NiBJYW4gSmFja3Nvbi5cbiIKK21zZ3N0ciAiQ29weXJpZ2h0IChDKSAxOTk0LTE5OTYgSWFuIEphY2tzb24uXG4iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjY3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1zfC0tc3BsaXQgPGZpbGU+IFs8cHJlZml4Pl0gICAgIFNwbGl0IGFuIGFyY2hpdmUuXG4iCisiICAtanwtLWpvaW4gPHBhcnQ+IDxwYXJ0PiAuLi4gICAgICBKb2luIHBhcnRzIHRvZ2V0aGVyLlxuIgorIiAgLUl8LS1pbmZvIDxwYXJ0PiAuLi4gICAgICAgICAgICAgRGlzcGxheSBpbmZvIGFib3V0IGEgcGFydC5cbiIKKyIgIC1hfC0tYXV0byAtbyA8Y29tcGxldGU+IDxwYXJ0PiAgIEF1dG8tYWNjdW11bGF0ZSBwYXJ0cy5cbiIKKyIgIC1sfC0tbGlzdHEgICAgICAgICAgICAgICAgICAgICAgIExpc3QgdW5tYXRjaGVkIHBpZWNlcy5cbiIKKyIgIC1kfC0tZGlzY2FyZCBbPGZpbGVuYW1lPiAuLi5dICAgIERpc2NhcmQgdW5tYXRjaGVkIHBpZWNlcy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIlByw61rYXp5OlxuIgorIiAgLXN8LS1zcGxpdCA8c8O6Ym9yPiBbPHByZWZpeD5dICByb3pkZWzDrSBhcmNow612XG4iCisiICAtanwtLWpvaW4gPMSNYXPFpT4gPMSNYXPFpT4gLi4uICAgIHNwb2rDrSBkb2hyb21hZHkgxI1hc3RpXG4iCisiICAtSXwtLWluZm8gPMSNYXPFpT4gLi4uICAgICAgICAgICB6b2JyYXrDrSDDumRhamUgbyDEjWFzdGlcbiIKKyIgIC1hfC0tYXV0byAtbyA8Y2Vsb2s+IDzEjWFzxaU+ICAgIGF1dG9tYXRpY2t5IHNwb2rDrSDEjWFzdGlcbiIKKyIgIC1sfC0tbGlzdHEgICAgICAgICAgICAgICAgICAgICB2eXDDrcWhZSBuZWhvZGlhY2Ugc2EgxI1hc3RpXG4iCisiICAtZHwtLWRpc2NhcmQgWzxzw7pib3I+IC4uLl0gICAgIGlnbm9ydWplIG5laG9kaWFjZSBzYSDEjWFzdGlcbiIKKyJcbiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6ODIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJPcHRpb25zOlxuIgorI3wgIiAgLS1kZXBvdGRpciA8ZGlyZWN0b3J5PiAgICAgICAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMvJXMuXG4iCisjfCAiICAtU3wtLXBhcnRzaXplIDxzaXplPiAgICAgICAgICAgICBJbiBLaUIsIGZvciAtcyAoZGVmYXVsdCBpcyA0NTApLlxuIgorI3wgIiAgLW98LS1vdXRwdXQgPGZpbGU+ICAgICAgICAgICAgICAgRm9yIC1qIChkZWZhdWx0IGlzIDxwYWNrYWdlPi08dmVyc2lvbj4uIgorI3wgImRlYikuXG4iCisjfCAiICAtUXwtLW5wcXVpZXQgICAgICAgICAgICAgICAgICAgICBCZSBxdWlldCB3aGVuIC1hIGlzIG5vdCBhIHBhcnQuXG4iCisjfCAiICAtLW1zZG9zICAgICAgICAgICAgICAgICAgICAgICAgICBHZW5lcmF0ZSA4LjMgZmlsZW5hbWVzLlxuIgorI3wgIlxuIgorI3wgIkV4aXQgc3RhdHVzOiAwID0gT0s7ICAxID0gLWEgaXMgbm90IGEgcGFydDsgIDIgPSB0cm91YmxlIVxuIgorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1kZXBvdGRpciA8ZGlyZWN0b3J5PiAgICAgICAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMvJXMuXG4iCisiICAtU3wtLXBhcnRzaXplIDxzaXplPiAgICAgICAgICAgICBJbiBLaUIsIGZvciAtcyAoZGVmYXVsdCBpcyA0NTApLlxuIgorIiAgLW98LS1vdXRwdXQgPGZpbGU+ICAgICAgICAgICAgICAgRmlsZW5hbWUsIGZvciAtaiAoZGVmYXVsdCBpc1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGFja2FnZT5fPHZlcnNpb24+XzxhcmNoPi5kZWIpLlxuIgorIiAgLVF8LS1ucHF1aWV0ICAgICAgICAgICAgICAgICAgICAgQmUgcXVpZXQgd2hlbiAtYSBpcyBub3QgYSBwYXJ0LlxuIgorIiAgLS1tc2RvcyAgICAgICAgICAgICAgICAgICAgICAgICAgR2VuZXJhdGUgOC4zIGZpbGVuYW1lcy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIlZvxL5ieTpcbiIKKyIgIC0tZGVwb3RkaXIgPGFkcmVzw6FyPiAgICAgICAgICAgICBwb3XFvmlqZSA8YWRyZXPDoXI+IG5hbWllc3RvICVzLyVzXG4iCisiICAtU3wtLXBhcnRzaXplIDx2ZcS+a29zxaU+ICAgICAgICAgIHYgS2lCLCBwcmUgLXMgKHByZWR2b2xlbsOhIGplIDQ1MClcbiIKKyIgIC1vfC0tb3V0cHV0IDxzw7pib3I+ICAgICAgICAgICAgICBwcmUgLWogKHByZWR2b2xlbsO9IGplIDxiYWzDrWs+LTx2ZXJ6aWE+LiIKKyJkZWIpXG4iCisiICAtUXwtLW5wcXVpZXQgICAgICAgICAgICAgICAgICAgICBuacSNIG5ldnlwaXN1amUsIHBva2lhxL4gLWEgbmllIGplIMSNYXPFpW91XG4iCisiICAtLW1zZG9zICAgICAgICAgICAgICAgICAgICAgICAgICBnZW5lcnVqZSBuw6F6dnkgOC4zXG4iCisiXG4iCisiVsO9c3R1cG7DvSBzdGF2OiAwID0gT0s7ICAxID0gLWEgbmllIGplIMSNYXPFpW91OyAgMiA9IHByb2Jsw6ltIVxuIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo5MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiRXhpdCBzdGF0dXM6XG4iCisiICAwID0gb2tcbiIKKyIgIDEgPSB3aXRoIC0tYXV0bywgZmlsZSBpcyBub3QgYSBwYXJ0XG4iCisiICAyID0gdHJvdWJsZVxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjEwMworbXNnaWQgIlR5cGUgZHBrZy1zcGxpdCAtLWhlbHAgZm9yIGhlbHAuIgorbXNnc3RyICJOYXDDrcWhdGUgZHBrZy1zcGxpdCAtLWhlbHAgcHJlIHBvbW9jbsOta2EuIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgZmlsZSBpbiAlLjI1MHMiCittc2dzdHIgIm5lb8SNYWvDoXZhbsO9IGtvbmllYyBzw7pib3J1IHYgJS4yNTBzIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMjYKK21zZ2lkICJwYXJ0IHNpemUgaXMgZmFyIHRvbyBsYXJnZSBvciBpcyBub3QgcG9zaXRpdmUiCittc2dzdHIgInZlxL5rb3PFpSDEjWFzdGkgamUgYnXEjyBwcsOtbGnFoSB2ZcS+a8OhIGFsZWJvIG5lZ2F0w612bmEiCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjEzMAorIywgYy1mb3JtYXQKK21zZ2lkICJwYXJ0IHNpemUgbXVzdCBiZSBhdCBsZWFzdCAlZCBLaUIgKHRvIGFsbG93IGZvciBoZWFkZXIpIgorbXNnc3RyICJ2ZcS+a29zxaUgxI1hc3RpIG11c8OtIGJ5xaUgYXNwb8WIICVkIEtpQiAoa3bDtGxpIGhsYXZpxI1rZSkiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzo5MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBkZXBvdCBkaXJlY3RvcnkgYCUuMjUwcyciCittc2dzdHIgIm5pZSBqZSBtb8W+bsOpIHByZcSNw610YcWlIHVza2xhZMWIb3ZhY8OtIGFkcmVzw6FyIOKAniUuMjUwc+KAnCIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjEzNAorbXNnaWQgIi0tYXV0byByZXF1aXJlcyB0aGUgdXNlIG9mIHRoZSAtLW91dHB1dCBvcHRpb24iCittc2dzdHIgIi0tYXV0byB2ecW+YWR1amUgcG91xb5pdGllIHZvxL5ieSAtLW91dHB1dCIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjEzNgorbXNnaWQgIi0tYXV0byByZXF1aXJlcyBleGFjdGx5IG9uZSBwYXJ0IGZpbGUgYXJndW1lbnQiCittc2dzdHIgIi0tYXV0byB2ecW+YWR1amUgcHJlc25lIGplZG51IMSNYXPFpSBwYXJhbWV0cnUgc8O6Ym9ydSIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE0MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5pZSBqZSBtb8W+bsOpIHByZcSNw610YcWlIMSNYXPFpSBzw7pib3J1IOKAniUuMjUwc+KAnCIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE0MworIywgYy1mb3JtYXQKK21zZ2lkICJGaWxlIGAlLjI1MHMnIGlzIG5vdCBwYXJ0IG9mIGEgbXVsdGlwYXJ0IGFyY2hpdmUuXG4iCittc2dzdHIgIiIKKyJTw7pib3Ig4oCeJS4yNTBz4oCcIG5pZSBqZSDEjWFzxaVvdSBhcmNow612dSBza2xhZGFqw7pjZWhvIHNhIHogdmlhY2Vyw71jaCDEjWFzdMOtLlxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTc5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW9wZW4gcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJuaWUgamUgbW/Fvm7DqSB6bm92dSBvdHZvcmnFpSDEjWFzxaUgc8O6Ym9ydSDigJ4lLjI1MHPigJwiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxODIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gbmV3IGRlcG90IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5pZSBqZSBtb8W+bsOpIG90dm9yacWlIG5vdsO9IGRlcG90IHPDumJvciDigJ4lLjI1MHPigJwiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxODQKK21zZ2lkICJleHRyYWN0aW5nIHNwbGl0IHBhcnQiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE5MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVuYW1lIG5ldyBkZXBvdCBmaWxlIGAlLjI1MHMnIHRvIGAlLjI1MHMnIgorbXNnc3RyICJuaWUgamUgbW/Fvm7DqSBwcmVtZW5vdmHFpSBub3bDvSB1c2tsYWTFiG92YWPDrSBzw7pib3Ig4oCeJS4yNTBz4oCcIG5hIOKAniUuMjUwc+KAnCIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE5NgorIywgYy1mb3JtYXQKK21zZ2lkICJQYXJ0ICVkIG9mIHBhY2thZ2UgJXMgZmlsZWQgKHN0aWxsIHdhbnQgIgorbXNnc3RyICLEjGFzxaUgJWQgYmFsw61rYSAlcyBqZSBuYXBsbmVuw6EgKHN0w6FsZSBwb3RyZWJ1amUgIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjAwCittc2dpZCAiIGFuZCAiCittc2dzdHIgIiBhICIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjIxNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGVsZXRlIHVzZWQtdXAgZGVwb3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibmllIGplIG1vxb5uw6kgdnltYXphxaUgcG91xb5pdMO9IHVza2xhZMWIb3ZhY8OtIHPDumJvciDigJ4lLjI1MHPigJwiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyMzUKK21zZ2lkICJKdW5rIGZpbGVzIGxlZnQgYXJvdW5kIGluIHRoZSBkZXBvdCBkaXJlY3Rvcnk6XG4iCittc2dzdHIgIlByZWJ5dG/EjW7DqSBzw7pib3J5IHphbmVjaGFuw6kgdiB1c2tsYWTFiG92YWNvbSBhZHJlc8Ohcmk6XG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNDAgZHBrZy1zcGxpdC9xdWV1ZS5jOjI2OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBgJS4yNTBzJyIKK21zZ3N0ciAibmllIGplIG1vxb5uw6kgemlzdGnFpSBzdGF2IOKAniUuMjUwc+KAnCIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI0MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiICVzICglbHUgYnl0ZXMpXG4iCittc2dpZCAiICVzICglamQgYnl0ZXMpXG4iCittc2dzdHIgIiAlcyAoJWx1IGJhanRvdilcbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI0NQorIywgYy1mb3JtYXQKK21zZ2lkICIgJXMgKG5vdCBhIHBsYWluIGZpbGUpXG4iCittc2dzdHIgIiAlcyAobmllIGplIG9iecSNYWpuw70gc8O6Ym9yKVxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjUwCittc2dpZCAiUGFja2FnZXMgbm90IHlldCByZWFzc2VtYmxlZDpcbiIKK21zZ3N0ciAiWmF0aWHEviBuZXpvc3RhdmVuw6kgYmFsw61reTpcbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI1OAorIywgYy1mb3JtYXQKK21zZ2lkICIgUGFja2FnZSAlczogcGFydChzKSAiCittc2dzdHIgIiBCYWzDrWsgJXM6IMSNYXN0aSIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI3MQorIywgYy1mb3JtYXQKK21zZ2lkICJwYXJ0IGZpbGUgYCUuMjUwcycgaXMgbm90IGEgcGxhaW4gZmlsZSIKK21zZ3N0ciAixI1hc8WlIHPDumJvcnUg4oCeJS4yNTBz4oCcIG5pZSBqZSBvYnnEjWFqbsO9IHPDumJvciIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI3OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiKHRvdGFsICVsdSBieXRlcylcbiIKK21zZ2lkICIodG90YWwgJWpkIGJ5dGVzKVxuIgorbXNnc3RyICIoY2Vsa29tICVsdSBiYWp0b3YpXG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzozMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRpc2NhcmQgYCUuMjUwcyciCittc2dzdHIgIm5pZSBqZSBtb8W+bsOpIHphaG9kacWlIOKAniUuMjUwc+KAnCIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjMwNQorIywgYy1mb3JtYXQKK21zZ2lkICJEZWxldGVkICVzLlxuIgorbXNnc3RyICJWeW1hemFuw70gJXMuXG4iCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzo3MCBkcGtnLXNwbGl0L3NwbGl0LmM6NzYgZHBrZy1zcGxpdC9zcGxpdC5jOjgxCisjLCBmdXp6eQorI3wgbXNnaWQgImRwa2ctZGViIGZpZWxkIGV4dHJhY3Rpb24iCittc2dpZCAicGFja2FnZSBmaWVsZCB2YWx1ZSBleHRyYWN0aW9uIgorbXNnc3RyICJleHRyYWtjaWEgcG/EvmEgZHBrZy1kZWIiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxMzEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gc291cmNlIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIm5pZSBqZSBtb8W+bsOpIG90dm9yacWlIHpkcm9qb3bDvSBzw7pib3Ig4oCeJS4yNTBz4oCcIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTMzCittc2dpZCAidW5hYmxlIHRvIGZzdGF0IHNvdXJjZSBmaWxlIgorbXNnc3RyICJuaWUgamUgbW/Fvm7DqSB2eWtvbmHFpSBmdW5rY2l1IGZzdGF0IG5hIHpkcm9qb3bDvSBzw7pib3IiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxMzUKKyMsIGMtZm9ybWF0Cittc2dpZCAic291cmNlIGZpbGUgYCUuMjUwcycgbm90IGEgcGxhaW4gZmlsZSIKK21zZ3N0ciAiemRyb2pvdsO9IHPDumJvciDigJ4lLjI1MHPigJwgbmllIGplIG9iecSNYWpuw70gc8O6Ym9yIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTUzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0OiAiCisjfCBtc2dpZF9wbHVyYWwgIlB1dHRpbmcgcGFja2FnZSAlcyB0b2dldGhlciBmcm9tICVkIHBhcnRzOiAiCittc2dpZCAiU3BsaXR0aW5nIHBhY2thZ2UgJXMgaW50byAlZCBwYXJ0OiAiCittc2dpZF9wbHVyYWwgIlNwbGl0dGluZyBwYWNrYWdlICVzIGludG8gJWQgcGFydHM6ICIKK21zZ3N0clswXSAiQmFsw61rICVzIHNhIHNrbGFkw6EgeiAlZCDEjWFzdGk6ICIKK21zZ3N0clsxXSAiQmFsw61rICVzIHNhIHNrbGFkw6EgeiAlZCDEjWFzdMOtOiAiCittc2dzdHJbMl0gIkJhbMOtayAlcyBzYSBza2xhZMOhIHogJWQgxI1hc3TDrTogIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTkzCittc2dpZCAiIgorIkhlYWRlciBpcyB0b28gbG9uZywgbWFraW5nIHBhcnQgdG9vIGxvbmcuIFlvdXIgcGFja2FnZSBuYW1lIG9yIHZlcnNpb25cbiIKKyJudW1iZXJzIG11c3QgYmUgZXh0cmFvcmRpbmFyaWx5IGxvbmcsIG9yIHNvbWV0aGluZy4gR2l2aW5nIHVwLlxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoyNDkKK21zZ2lkICItLXNwbGl0IG5lZWRzIGEgc291cmNlIGZpbGVuYW1lIGFyZ3VtZW50IgorbXNnc3RyICItLXNwbGl0IHBvdHJlYnVqZSBha28gYXJndW1lbnQgemRyb2pvdsO9IG7DoXpvdiBzw7pib3J1IgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MjUyCittc2dpZCAiLS1zcGxpdCB0YWtlcyBhdCBtb3N0IGEgc291cmNlIGZpbGVuYW1lIGFuZCBkZXN0aW5hdGlvbiBwcmVmaXgiCittc2dzdHIgIiIKKyItLXNwbGl0IHZ5xb5hZHVqZSBuYWp2aWFjIHpkcm9qb3bDvSBuw6F6b3Ygc8O6Ym9ydSBhIHphxI1pYXRvayBjaWXEvm92ZWogY2VzdHkiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo4NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMC0yMDAyIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDA5LTIwMTAgUmFwaGFlbCBIZXJ0em9nLlxuIgorbXNnc3RyICIiCisiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMC0yMDAyIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDA5LTIwMTAgUmFwaGFlbCBIZXJ0em9nLlxuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTAxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIDxjb21tYW5kPlxuIgorI3wgIlxuIgorI3wgIkNvbW1hbmRzOlxuIgorI3wgIiAgLS1pbnN0YWxsIDxsaW5rPiA8bmFtZT4gPHBhdGg+IDxwcmlvcml0eT5cbiIKKyN8ICIgICAgWy0tc2xhdmUgPGxpbms+IDxuYW1lPiA8cGF0aD5dIC4uLlxuIgorI3wgIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGFkZCBhIGdyb3VwIG9mIGFsdGVybmF0aXZlcyB0byB0aGUgc3lzdGVtLlxuIgorI3wgIiAgLS1yZW1vdmUgPG5hbWU+IDxwYXRoPiAgIHJlbW92ZSA8cGF0aD4gZnJvbSB0aGUgPG5hbWU+IGdyb3VwICIKKyN8ICJhbHRlcm5hdGl2ZS5cbiIKKyN8ICIgIC0tcmVtb3ZlLWFsbCA8bmFtZT4gICAgICByZW1vdmUgPG5hbWU+IGdyb3VwIGZyb20gdGhlIGFsdGVybmF0aXZlcyAiCisjfCAic3lzdGVtLlxuIgorI3wgIiAgLS1hdXRvIDxuYW1lPiAgICAgICAgICAgIHN3aXRjaCB0aGUgbWFzdGVyIGxpbmsgPG5hbWU+IHRvIGF1dG9tYXRpYyAiCisjfCAibW9kZS5cbiIKKyN8ICIgIC0tZGlzcGxheSA8bmFtZT4gICAgICAgICBkaXNwbGF5IGluZm9ybWF0aW9uIGFib3V0IHRoZSA8bmFtZT4gZ3JvdXAuXG4iCisjfCAiICAtLXF1ZXJ5IDxuYW1lPiAgICAgICAgICAgbWFjaGluZSBwYXJzZWFibGUgdmVyc2lvbiBvZiAtLWRpc3BsYXkgIgorI3wgIjxuYW1lPi5cbiIKKyN8ICIgIC0tbGlzdCA8bmFtZT4gICAgICAgICAgICBkaXNwbGF5IGFsbCB0YXJnZXRzIG9mIHRoZSA8bmFtZT4gZ3JvdXAuXG4iCisjfCAiICAtLWNvbmZpZyA8bmFtZT4gICAgICAgICAgc2hvdyBhbHRlcm5hdGl2ZXMgZm9yIHRoZSA8bmFtZT4gZ3JvdXAgYW5kIGFzayAiCisjfCAidGhlXG4iCisjfCAiICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlciB0byBzZWxlY3Qgd2hpY2ggb25lIHRvIHVzZS5cbiIKKyN8ICIgIC0tc2V0IDxuYW1lPiA8cGF0aD4gICAgICBzZXQgPHBhdGg+IGFzIGFsdGVybmF0aXZlIGZvciA8bmFtZT4uXG4iCisjfCAiICAtLWFsbCAgICAgICAgICAgICAgICAgICAgY2FsbCAtLWNvbmZpZyBvbiBhbGwgYWx0ZXJuYXRpdmVzLlxuIgorI3wgIlxuIgorI3wgIjxsaW5rPiBpcyB0aGUgc3ltbGluayBwb2ludGluZyB0byAlcy88bmFtZT4uXG4iCisjfCAiICAoZS5nLiAvdXNyL2Jpbi9wYWdlcilcbiIKKyN8ICI8bmFtZT4gaXMgdGhlIG1hc3RlciBuYW1lIGZvciB0aGlzIGxpbmsgZ3JvdXAuXG4iCisjfCAiICAoZS5nLiBwYWdlcilcbiIKKyN8ICI8cGF0aD4gaXMgdGhlIGxvY2F0aW9uIG9mIG9uZSBvZiB0aGUgYWx0ZXJuYXRpdmUgdGFyZ2V0IGZpbGVzLlxuIgorI3wgIiAgKGUuZy4gL3Vzci9iaW4vbGVzcylcbiIKKyN8ICI8cHJpb3JpdHk+IGlzIGFuIGludGVnZXI7IG9wdGlvbnMgd2l0aCBoaWdoZXIgbnVtYmVycyBoYXZlIGhpZ2hlciAiCisjfCAicHJpb3JpdHkgaW5cbiIKKyN8ICIgIGF1dG9tYXRpYyBtb2RlLlxuIgorI3wgIlxuIgorI3wgIk9wdGlvbnM6XG4iCisjfCAiICAtLWFsdGRpciA8ZGlyZWN0b3J5PiAgICAgY2hhbmdlIHRoZSBhbHRlcm5hdGl2ZXMgZGlyZWN0b3J5LlxuIgorI3wgIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIGNoYW5nZSB0aGUgYWRtaW5pc3RyYXRpdmUgZGlyZWN0b3J5LlxuIgorI3wgIiAgLS1za2lwLWF1dG8gICAgICAgICAgICAgIHNraXAgcHJvbXB0IGZvciBhbHRlcm5hdGl2ZXMgY29ycmVjdGx5ICIKKyN8ICJjb25maWd1cmVkXG4iCisjfCAiICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gYXV0b21hdGljIG1vZGUgKHJlbGV2YW50IGZvciAtLWNvbmZpZyAiCisjfCAib25seSlcbiIKKyN8ICIgIC0tdmVyYm9zZSAgICAgICAgICAgICAgICB2ZXJib3NlIG9wZXJhdGlvbiwgbW9yZSBvdXRwdXQuXG4iCisjfCAiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgcXVpZXQgb3BlcmF0aW9uLCBtaW5pbWFsIG91dHB1dC5cbiIKKyN8ICIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorI3wgIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLS1pbnN0YWxsIDxsaW5rPiA8bmFtZT4gPHBhdGg+IDxwcmlvcml0eT5cbiIKKyIgICAgWy0tc2xhdmUgPGxpbms+IDxuYW1lPiA8cGF0aD5dIC4uLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGFkZCBhIGdyb3VwIG9mIGFsdGVybmF0aXZlcyB0byB0aGUgc3lzdGVtLlxuIgorIiAgLS1yZW1vdmUgPG5hbWU+IDxwYXRoPiAgIHJlbW92ZSA8cGF0aD4gZnJvbSB0aGUgPG5hbWU+IGdyb3VwIGFsdGVybmF0aXZlLlxuIgorIiAgLS1yZW1vdmUtYWxsIDxuYW1lPiAgICAgIHJlbW92ZSA8bmFtZT4gZ3JvdXAgZnJvbSB0aGUgYWx0ZXJuYXRpdmVzICIKKyJzeXN0ZW0uXG4iCisiICAtLWF1dG8gPG5hbWU+ICAgICAgICAgICAgc3dpdGNoIHRoZSBtYXN0ZXIgbGluayA8bmFtZT4gdG8gYXV0b21hdGljIG1vZGUuXG4iCisiICAtLWRpc3BsYXkgPG5hbWU+ICAgICAgICAgZGlzcGxheSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgPG5hbWU+IGdyb3VwLlxuIgorIiAgLS1xdWVyeSA8bmFtZT4gICAgICAgICAgIG1hY2hpbmUgcGFyc2VhYmxlIHZlcnNpb24gb2YgLS1kaXNwbGF5IDxuYW1lPi5cbiIKKyIgIC0tbGlzdCA8bmFtZT4gICAgICAgICAgICBkaXNwbGF5IGFsbCB0YXJnZXRzIG9mIHRoZSA8bmFtZT4gZ3JvdXAuXG4iCisiICAtLWdldC1zZWxlY3Rpb25zICAgICAgICAgbGlzdCBtYXN0ZXIgYWx0ZXJuYXRpdmUgbmFtZXMgYW5kIHRoZWlyIHN0YXR1cy5cbiIKKyIgIC0tc2V0LXNlbGVjdGlvbnMgICAgICAgICByZWFkIGFsdGVybmF0aXZlIHN0YXR1cyBmcm9tIHN0YW5kYXJkIGlucHV0LlxuIgorIiAgLS1jb25maWcgPG5hbWU+ICAgICAgICAgIHNob3cgYWx0ZXJuYXRpdmVzIGZvciB0aGUgPG5hbWU+IGdyb3VwIGFuZCBhc2sgIgorInRoZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzZXIgdG8gc2VsZWN0IHdoaWNoIG9uZSB0byB1c2UuXG4iCisiICAtLXNldCA8bmFtZT4gPHBhdGg+ICAgICAgc2V0IDxwYXRoPiBhcyBhbHRlcm5hdGl2ZSBmb3IgPG5hbWU+LlxuIgorIiAgLS1hbGwgICAgICAgICAgICAgICAgICAgIGNhbGwgLS1jb25maWcgb24gYWxsIGFsdGVybmF0aXZlcy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIlBvdcW+aXRpZTogJXMgWzx2b8S+Ynk+IC4uLl0gPHByw61rYXo+XG4iCisiXG4iCisiUHLDrWthenk6XG4iCisiICAtLWluc3RhbGwgPG9ka2F6PiA8bsOhem92PiA8Y2VzdGE+IDxwcmlvcml0YT5cbiIKKyIgICAgWy0tc2xhdmUgPG9ka2F6PiA8bsOhem92PiA8Y2VzdGE+XSAuLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJpZMOhIHNrdXBpbnUgZG8gc3lzdMOpbXUgYWx0ZXJuYXTDrXZcbiIKKyIgIC0tcmVtb3ZlIDxuw6F6b3Y+IDxjZXN0YT4gIG9kc3Ryw6FuaSA8Y2VzdHU+IHpvIHNrdXBpbnkgYWx0ZXJuYXTDrXYgPG7DoXpvdj5cbiIKKyIgIC0tcmVtb3ZlLWFsbCA8bsOhem92PiAgICAgIG9kc3Ryw6FuaSBza3VwaW51IDxuw6F6b3Y+IHpvIHN5c3TDqW11IGFsdGVybmF0w612XG4iCisiICAtLWF1dG8gPG7DoXpvdj4gICAgICAgICAgICBwcmVwbmUgb2RrYXogPG7DoXpvdj4gZG8gYXV0b21hdGlja8OpaG8gcmXFvmltdVxuIgorIiAgLS1kaXNwbGF5IDxuw6F6b3Y+ICAgICAgICAgem9icmF6w60gaW5mb3Jtw6FjaWUgbyBza3VwaW5lIDxuw6F6b3Y+XG4iCisiICAtLXF1ZXJ5IDxuYW1lPiAgICAgICAgICAgIHN0cm9qb3ZvIMSNaXRhdGXEvm7DoSB2ZXJ6aWEgLS1kaXNwbGF5IDxuw6F6b3Y+LlxuIgorIiAgLS1saXN0IDxuw6F6b3Y+ICAgICAgICAgICAgem9icmF6w60gdsWhZXRreSBjaWVsZSBza3VwaW55IDxuw6F6b3Y+XG4iCisiICAtLWNvbmZpZyA8bsOhem92PiAgICAgICAgICB6b2JyYXrDrSBhbHRlcm5hdMOtdnkgc2t1cGlueSA8bsOhem92PiBhIHBvxb5pYWRhXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvdcW+w612YXRlxL5hIG8gdm/EvmJ1IHRlaiwga3RvcsOhIHNhIHBvdcW+aWplXG4iCisiICAtLXNldCA8bsOhem92PiA8Y2VzdGE+ICAgICBuYXN0YXbDrSA8Y2VzdHU+IGFrbyBhbHRlcm5hdMOtdnUgcHJlIDxuw6F6b3Y+XG4iCisiICAtLWFsbCAgICAgICAgICAgICAgICAgICAgIHphdm9sw6EgLS1jb25maWcgbmEgdsWhZXRreSBhbHRlcm5hdMOtdnlcbiIKKyJcbiIKKyI8b2RrYXo+IGplIHN5bWJvbGlja8O9IG9ka2F6IHVrYXp1asO6Y2kgbmEgJXMvPG7DoXpvdj5cbiIKKyIgIChuYXByLiAvdXNyL2Jpbi9wYWdlcilcbiIKKyI8bsOhem92PiBqZSBobGF2bsO9IG7DoXpvdiBwcmUgdMO6dG8gc2t1cGludSBvZGthem92XG4iCisiICAobmFwci4gcGFnZXIpXG4iCisiPGNlc3RhPiBqZSB1bWllc3RuZW5pZSBqZWRuw6lobyB6IGNpZcS+b3bDvWNoIHPDumJvcm92XG4iCisiICAobmFwci4gL3Vzci9iaW4vbGVzcylcbiIKKyI8cHJpb3JpdGE+IGplIGNlbMOpIMSNw61zbG87IHByaSBhdXRvbWF0aWNrb20gcmXFvmltZSBzYSB2eWJlcsO6IHZvxL5ieSBzIHZ5xaHFocOtbWkgIgorIsSNw61zbGFtaVxuIgorIlxuIgorIlZvxL5ieTpcbiIKKyIgIC0tYWx0ZGlyIDxhZHJlc8Ohcj4gICAgICAgem1lbsOtIGFkcmVzw6FyIHByZSBhbHRlcm5hdMOtdnlcbiIKKyIgIC0tYWRtaW5kaXIgPGFkcmVzw6FyPiAgICAgem1lbsOtIGFkbWluaXN0cmF0w612bnkgYWRyZXPDoXJcbiIKKyIgIC0tc2tpcC1hdXRvICAgICAgICAgICAgICBwcmVza2/EjWnFpSB2w716dnkgcHJpIGFsdGVybmF0w6F2YWNoIHNwcsOhdm5lICIKKyJuYXN0YXZlbsO9Y2hcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICB2IGF1dG9tYXRpY2tvbSByZcW+aW1lICh0w71rYSBzYSBpYmEgdm/EvmJ5IC0tIgorImNvbmZpZylcbiIKKyIgIC0tdmVyYm9zZSAgICAgICAgICAgICAgICBwb2Ryb2Juw70gcmXFvmltLCB2aWFjIGluZm9ybcOhY2nDrVxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHN0cnXEjW7DvSByZcW+aW0sIG1pbmltw6FsbnkgdsO9c3R1cFxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHpvYnJhesOtIHRvaHRvIHBvbW9jbsOta2FcbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICB6b2JyYXrDrSB2ZXJ6aXVcbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiPGxpbms+IGlzIHRoZSBzeW1saW5rIHBvaW50aW5nIHRvICVzLzxuYW1lPi5cbiIKKyIgIChlLmcuIC91c3IvYmluL3BhZ2VyKVxuIgorIjxuYW1lPiBpcyB0aGUgbWFzdGVyIG5hbWUgZm9yIHRoaXMgbGluayBncm91cC5cbiIKKyIgIChlLmcuIHBhZ2VyKVxuIgorIjxwYXRoPiBpcyB0aGUgbG9jYXRpb24gb2Ygb25lIG9mIHRoZSBhbHRlcm5hdGl2ZSB0YXJnZXQgZmlsZXMuXG4iCisiICAoZS5nLiAvdXNyL2Jpbi9sZXNzKVxuIgorIjxwcmlvcml0eT4gaXMgYW4gaW50ZWdlcjsgb3B0aW9ucyB3aXRoIGhpZ2hlciBudW1iZXJzIGhhdmUgaGlnaGVyIHByaW9yaXR5ICIKKyJpblxuIgorIiAgYXV0b21hdGljIG1vZGUuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzMQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIk9wdGlvbnM6XG4iCisjfCAiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgc2V0IHRoZSBkaXJlY3Rvcnkgd2l0aCB0aGUgc3RhdG92ZXJyaWRlIGZpbGUuXG4iCisjfCAiICAtLXVwZGF0ZSAgICAgICAgICAgICAgICAgaW1tZWRpYXRlbHkgdXBkYXRlIGZpbGUgcGVybWlzc2lvbnMuXG4iCisjfCAiICAtLWZvcmNlICAgICAgICAgICAgICAgICAgZm9yY2UgYW4gYWN0aW9uIGV2ZW4gaWYgYSBzYW5pdHkgY2hlY2sgZmFpbHMuXG4iCisjfCAiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgcXVpZXQgb3BlcmF0aW9uLCBtaW5pbWFsIG91dHB1dC5cbiIKKyN8ICIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorI3wgIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisjfCAiXG4iCittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFsdGRpciA8ZGlyZWN0b3J5PiAgICAgY2hhbmdlIHRoZSBhbHRlcm5hdGl2ZXMgZGlyZWN0b3J5LlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIGNoYW5nZSB0aGUgYWRtaW5pc3RyYXRpdmUgZGlyZWN0b3J5LlxuIgorIiAgLS1sb2cgPGZpbGU+ICAgICAgICAgICAgIGNoYW5nZSB0aGUgbG9nIGZpbGUuXG4iCisiICAtLWZvcmNlICAgICAgICAgICAgICAgICAgYWxsb3cgcmVwbGFjaW5nIGZpbGVzIHdpdGggYWx0ZXJuYXRpdmUgbGlua3MuXG4iCisiICAtLXNraXAtYXV0byAgICAgICAgICAgICAgc2tpcCBwcm9tcHQgZm9yIGFsdGVybmF0aXZlcyBjb3JyZWN0bHkgIgorImNvbmZpZ3VyZWRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBhdXRvbWF0aWMgbW9kZSAocmVsZXZhbnQgZm9yIC0tY29uZmlnIG9ubHkpXG4iCisiICAtLXZlcmJvc2UgICAgICAgICAgICAgICAgdmVyYm9zZSBvcGVyYXRpb24sIG1vcmUgb3V0cHV0LlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHF1aWV0IG9wZXJhdGlvbiwgbWluaW1hbCBvdXRwdXQuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorbXNnc3RyICIiCisiVm/EvmJ5OlxuIgorIiAgLS1hZG1pbmRpciA8YWRyZXPDoXI+ICAgICBuYXN0YXbDrSBhZHJlc8OhciBzbyBzw7pib3JvbSBzdGF0b3ZlcnJpZGVcbiIKKyIgIC0tdXBkYXRlICAgICAgICAgICAgICAgICBva2Ftxb5pdGUgYWt0dWFsaXp1amUgcHLDrXN0dXBvdsOpIHByw6F2YSBrIHPDumJvcm9tXG4iCisiICAtLWZvcmNlICAgICAgICAgICAgICAgICAgdnluw7p0aSBvcGVyw6FjaXUgYWogbmFwcmllayB6bHloYW5pdSBrb250cm9seVxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHN0cnXEjW7DvSByZcW+aW0sIG1pbmltw6FsbnkgdsO9c3R1cFxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHpvYnJhesOtIHRvaHRvIHBvbW9jbsOta2FcbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICB6b2JyYXrDrSB2ZXJ6aXVcbiIKKyJcbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTYzCittc2dpZCAiZXJyb3IiCittc2dzdHIgImNoeWJhIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTkzCittc2dpZCAid2FybmluZyIKK21zZ3N0ciAidXBvem9ybmVuaWUiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzozNTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidHdvIGNvbW1hbmRzIHNwZWNpZmllZDogLS0lcyBhbmQgLS0lcyIKK21zZ3N0ciAiemFkYW7DqSBkdmEgcHLDrWthenk6IC0tJXMgYSAtLSVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6Mzg3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW5ub3QgYXBwZW5kIHRvICVzOiAlcyIKK21zZ2lkICJjYW5ub3QgYXBwZW5kIHRvICclcyciCittc2dzdHIgIm5lZMOhIHNhIGRvcGlzb3ZhxaUgZG8gc8O6Ym9ydSAlczogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo1NTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byByZW1vdmUgJXM6ICVzIgorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgJyVzJyIKK21zZ3N0ciAibmVkw6Egc2Egb2RzdHLDoW5pxaUgJXM6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTExMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBmaWxlIHdoaWxlIHRyeWluZyB0byByZWFkICVzIgorbXNnc3RyICJuZW/EjWFrw6F2YW7DvSBrb25pZWMgc8O6Ym9ydSBwcmkgcG9rdXNlIG8gxI3DrXRhbmllICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTExMworIywgYy1mb3JtYXQKK21zZ2lkICJ3aGlsZSByZWFkaW5nICVzOiAlcyIKK21zZ3N0ciAicG/EjWFzIMSNw610YW5pYSAlczogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTE5CisjLCBjLWZvcm1hdAorbXNnaWQgImxpbmUgbm90IHRlcm1pbmF0ZWQgd2hpbGUgdHJ5aW5nIHRvIHJlYWQgJXMiCittc2dzdHIgIm5ldWtvbsSNZW7DvSByaWFkb2sgcHJpIHBva3VzZSBvIMSNw610YW5pZSAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgY29ycnVwdDogJXMiCittc2dzdHIgIiVzIHBvxaFrb2RlbsO9OiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAibmV3bGluZXMgcHJvaGliaXRlZCBpbiB1cGRhdGUtYWx0ZXJuYXRpdmVzIGZpbGVzICglcykiCittc2dzdHIgIm5vdsOpIHJpYWRreSBzw7ogemFrw6F6YW7DqSB2IHPDumJvcm9jaCB1cGRhdGUtYWx0ZXJuYXRpdmVzICglcykiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTYzCittc2dpZCAic2xhdmUgbmFtZSIKK21zZ3N0ciAibsOhem92IHrDoXZpc2zDqWhvIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE3MSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQwNQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZHVwbGljYXRlIHNsYXZlICVzIgorbXNnaWQgImR1cGxpY2F0ZSBzbGF2ZSBuYW1lICVzIgorbXNnc3RyICJkdXBsaWNpdG7DoSB6w6F2aXNsb3PFpSAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNzQKK21zZ2lkICJzbGF2ZSBsaW5rIgorbXNnc3RyICJ6w6F2aXNsw70gb2RrYXoiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTc4CisjLCBjLWZvcm1hdAorbXNnaWQgInNsYXZlIGxpbmsgc2FtZSBhcyBtYWluIGxpbmsgJXMiCittc2dzdHIgInrDoXZpc2zDvSBvZGtheiBqZSB0b3Rvxb5uw70gcyBobGF2bsO9bSBvZGthem9tICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE4NSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQxMgorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgc2xhdmUgbGluayAlcyIKK21zZ3N0ciAiZHVwbGljaXRuw70gesOhdmlzbMO9IG9ka2F6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIwNAorbXNnaWQgIm1hc3RlciBmaWxlIgorbXNnc3RyICJzw7pib3IgcHJpbcOhcm5laG8iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjEzCisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBwYXRoICVzIgorbXNnc3RyICJkdXBsaWNpdG7DoSBjZXN0YSAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImFsdGVybmF0aXZlICVzIChwYXJ0IG9mIGxpbmsgZ3JvdXAgJXMpIGRvZXNuJ3QgZXhpc3QuIFJlbW92aW5nIGZyb20gbGlzdCBvZiAiCisiYWx0ZXJuYXRpdmVzLiIKK21zZ3N0ciAiIgorImFsdGVybmF0w612YSAlcyAoc8O6xI1hc8WlIHNrdXBpbnkgb2RrYXpvdiAlcykgbmVleGlzdHVqZS4gT2RzdHJhxYh1amUgc2Egem8gIgorInpvem5hbXUgYWx0ZXJuYXTDrXYuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIyOSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI0MAorbXNnaWQgInByaW9yaXR5IgorbXNnc3RyICJwcmlvcml0YSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMzIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyNDkKK21zZ2lkICJzbGF2ZSBmaWxlIgorbXNnc3RyICJzw7pib3IgesOhdmlzbMOpaG8iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjQ0CisjLCBjLWZvcm1hdAorbXNnaWQgInByaW9yaXR5IG9mICVzOiAlcyIKK21zZ3N0ciAicHJpb3JpdGEgJXM6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI5NworbXNnaWQgInN0YXR1cyIKK21zZ3N0ciAic3RhdiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyOTkKK21zZ2lkICJpbnZhbGlkIHN0YXR1cyIKK21zZ3N0ciAibmVwbGF0bsO9IHN0YXYiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzA0Cittc2dpZCAibWFzdGVyIGxpbmsiCittc2dzdHIgImhsYXZuw70gb2RrYXoiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzQ4CisjLCBjLWZvcm1hdAorbXNnaWQgImRpc2NhcmRpbmcgb2Jzb2xldGUgc2xhdmUgbGluayAlcyAoJXMpLiIKK21zZ3N0ciAiemFoYWR6dWplIHNhIHphc3RhcmFsw70gesOhdmlzbMO9IG9ka2F6ICVzICglcykuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2OQorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MzgKK21zZ2lkICJhdXRvIG1vZGUiCittc2dzdHIgImF1dG9tYXRpY2vDvSByZcW+aW0iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTAyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTc4CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYzOQorbXNnaWQgIm1hbnVhbCBtb2RlIgorbXNnc3RyICJtYW51w6FsbnkgcmXFvmltIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwNQorIywgYy1mb3JtYXQKK21zZ2lkICIgIGxpbmsgY3VycmVudGx5IHBvaW50cyB0byAlcyIKK21zZ3N0ciAiICBvZGtheiBwcsOhdmUgdWthenVqZSBuYSAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MDgKK21zZ2lkICIgIGxpbmsgY3VycmVudGx5IGFic2VudCIKK21zZ3N0ciAiICBvZGtheiBtb21lbnTDoWxuZSBjaMO9YmEiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTEyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIC0gcHJpb3JpdHkgJWQiCittc2dzdHIgIiVzIC0gcHJpb3JpdGEgJWQiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTE1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgc2xhdmUgJXM6ICVzIgorbXNnc3RyICIgIHZlZMS+YWrFocOtICVzOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ3VycmVudCAnYmVzdCcgdmVyc2lvbiBpcyAnJXMnLiIKK21zZ3N0ciAiTW9tZW50w6FsbmUgamUg4oCebmFqbGVwxaFpYeKAnCB2ZXJ6aWEg4oCeJXPigJwuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUyNAorbXNnaWQgIk5vIHZlcnNpb25zIGF2YWlsYWJsZS4iCittc2dzdHIgIk5pZSBzw7ogZG9zdHVwbsOpIMW+aWFkbmUgdmVyemllLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiVGhlcmUgaXMgJWQgY2hvaWNlIGZvciB0aGUgYWx0ZXJuYXRpdmUgJXMgKHByb3ZpZGluZyAlcykuIgorbXNnaWRfcGx1cmFsICJUaGVyZSBhcmUgJWQgY2hvaWNlcyBmb3IgdGhlIGFsdGVybmF0aXZlICVzIChwcm92aWRpbmcgJXMpLiIKK21zZ3N0clswXSAiRXhpc3R1amUgJWQgbW/Fvm5vc8WlIGFsdGVybmF0w612eSAlcyAocG9za3l0dWrDumNlaiAlcykuIgorbXNnc3RyWzFdICJFeGlzdHVqw7ogJWQgbW/Fvm5vc3RpIGFsdGVybmF0w612eSAlcyAocG9za3l0dWrDumNlaiAlcykuIgorbXNnc3RyWzJdICJFeGlzdHVqZSAlZCBtb8W+bm9zdMOtIGFsdGVybmF0w612eSAlcyAocG9za3l0dWrDumNlaiAlcykuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2MAorbXNnaWQgIlNlbGVjdGlvbiIKK21zZ3N0ciAiVsO9YmVyIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2MQorbXNnaWQgIlBhdGgiCittc2dzdHIgIkNlc3RhIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2MQorbXNnaWQgIlByaW9yaXR5IgorbXNnc3RyICJQcmlvcml0YSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NjEKK21zZ2lkICJTdGF0dXMiCittc2dzdHIgIlN0YXYiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTgyCisjLCBjLWZvcm1hdAorbXNnaWQgIlByZXNzIGVudGVyIHRvIGtlZXAgdGhlIGN1cnJlbnQgY2hvaWNlWypdLCBvciB0eXBlIHNlbGVjdGlvbiBudW1iZXI6ICIKK21zZ3N0ciAiIgorIlN0bGHEjWVuw61tIGtsw6F2ZXN1IEVudGVyIHBvbmVjaMOhdGUgcHJlZHZvbGVuw7ogbW/Fvm5vc8WlWypdLCBpbmFrIHphZGFqdGUgxI3DrXNsbyAiCisidsO9YmVydTogIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTcyMQorIywgYy1mb3JtYXQKK21zZ2lkICJub3QgcmVwbGFjaW5nICVzIHdpdGggYSBsaW5rLiIKK21zZ3N0ciAibmVuYWhyw6FkemEgc2EgJXMgb2RrYXpvbS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNzYyCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbid0IGluc3RhbGwgdW5rbm93biBjaG9pY2UgJXMiCittc2dzdHIgIm5lbW/Fvm5vIG5haW7FoXRhbG92YcWlIG5lem7DoW11IHZvxL5idSAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInNraXAgY3JlYXRpb24gb2YgJXMgYmVjYXVzZSBhc3NvY2lhdGVkIGZpbGUgJXMgKG9mIGxpbmsgZ3JvdXAgJXMpIGRvZXNuJ3QgIgorImV4aXN0LiIKK21zZ3N0ciAiIgorInByZXNrb8SNZW7DqSB2eXR2b3JlbmllICVzLCBwcmV0b8W+ZSBwcsOtc2x1xaFuw70gc8O6Ym9yICVzICh6byBza3VwaW55IG9ka2F6b3YgJXMpICIKKyJuZWV4aXN0dWplLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3OTAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIm5vdCByZXBsYWNpbmcgJXMgd2l0aCBhIGxpbmsuIgorbXNnaWQgIm5vdCByZW1vdmluZyAlcyBzaW5jZSBpdCdzIG5vdCBhIHN5bWxpbmsuIgorbXNnc3RyICJuZW5haHLDoWR6YSBzYSAlcyBvZGthem9tLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNDEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2FsbCAlcy4iCittc2dzdHIgIlZvbGFuaWUgJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA1MQorIywgYy1mb3JtYXQKK21zZ2lkICJBbHRlcm5hdGl2ZSAlcyB1bmNoYW5nZWQgYmVjYXVzZSBjaG9pY2UgJXMgaXMgbm90IGF2YWlsYWJsZS4iCittc2dzdHIgIkFsdGVybmF0w612YSAlcyBuZXptZW5lbsOhLCBwcmV0b8W+ZSBtb8W+bm9zxaUgJXMgbmllIGplIGRvc3R1cG7DoS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDU1CisjLCBjLWZvcm1hdAorbXNnaWQgIlNraXAgdW5rbm93biBhbHRlcm5hdGl2ZSAlcy4iCittc2dzdHIgIlByZXNrb8SNacWlIG5lem7DoW11IGFsdGVybmF0w612dSAlcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDc3CisjLCBjLWZvcm1hdAorbXNnaWQgImxpbmUgdG9vIGxvbmcgb3Igbm90IHRlcm1pbmF0ZWQgd2hpbGUgdHJ5aW5nIHRvIHJlYWQgJXMiCittc2dzdHIgInJpYWRvayBqZSBwcsOtbGnFoSBkbGjDvSBhbGVibyBuaWUgamUgdWtvbsSNZW7DvSBwcmkgcG9rdXNlIG8gxI3DrXRhbmllICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA5MCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjEwMworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2tpcCBpbnZhbGlkIGxpbmU6ICVzIgorbXNnc3RyICJQcmVza2/EjWnFpSBuZXBsYXRuw70gcmlhZG9rOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVuYW1pbmcgJXMgbGluayBmcm9tICVzIHRvICVzLiIKK21zZ3N0ciAib2RrYXogJXMgc2EgcHJlbWVudWplIHogJXMgbmEgJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE3MworIywgYy1mb3JtYXQKK21zZ2lkICJyZW5hbWluZyAlcyBzbGF2ZSBsaW5rIGZyb20gJXMgdG8gJXMuIgorbXNnc3RyICJ6w6F2aXNsw70gb2RrYXogJXMgc2EgcHJlbWVudWplIHogJXMgbmEgJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE4OQorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBuYW1lICglcykgbXVzdCBub3QgY29udGFpbiAnLycgYW5kIHNwYWNlcy4iCittc2dzdHIgIm7DoXpvdiBhbHRlcm5hdMOtdnkgKCVzKSBuZXNtaWUgb2JzYWhvdmHFpSDigJ4v4oCcIGEgbWVkemVyeS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTkzCisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIGxpbmsgaXMgbm90IGFic29sdXRlIGFzIGl0IHNob3VsZCBiZTogJXMiCittc2dzdHIgIm9ka2F6IGFsdGVybmF0w612eSBuaWUgamUgYWJzb2zDunRueSwgxI1vIGJ5IG1hbCBiecWlOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxOTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgcGF0aCBpcyBub3QgYWJzb2x1dGUgYXMgaXQgc2hvdWxkIGJlOiAlcyIKK21zZ3N0ciAiY2VzdGEgYWx0ZXJuYXTDrXZ5IG5pZSBqZSBhYnNvbMO6dG5hLCDEjW8gYnkgbWFsYSBiecWlOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyMjQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImFsdGVybmF0aXZlICVzIGNhbid0IGJlIG1hc3RlcjogJXMiCittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgbWFzdGVyOiBpdCBpcyBhIHNsYXZlIG9mICVzIgorbXNnc3RyICJhbHRlcm5hdMOtdmEgJXMgbmVtw7TFvmUgYnnFpSBwcmltw6FybmE6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjIzMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI2NworIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBsaW5rICVzIGlzIGFscmVhZHkgbWFuYWdlZCBieSAlcy4iCittc2dzdHIgIm9ka2F6IGFsdGVybmF0w612eSAlcyB1xb4gc3ByYXZ1amUgJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI0MQorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBwYXRoICVzIGRvZXNuJ3QgZXhpc3QuIgorbXNnc3RyICJhbHRlcm5hdMOtdm5hIGNlc3RhICVzIG5lZXhpc3R1amUiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjU0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBzbGF2ZSBvZiAlczogJXMiCittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgc2xhdmUgb2YgJXM6IGl0IGlzIGEgbWFzdGVyIGFsdGVybmF0aXZlLiIKK21zZ3N0ciAiYWx0ZXJuYXTDrXZhICVzIG5lbcO0xb5lIGJ5xaUgesOhdmlzbG9zxaVvdSAlczogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjU4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBtYXN0ZXI6ICVzIgorbXNnaWQgImFsdGVybmF0aXZlICVzIGNhbid0IGJlIHNsYXZlIG9mICVzOiBpdCBpcyBhIHNsYXZlIG9mICVzIgorbXNnc3RyICJhbHRlcm5hdMOtdmEgJXMgbmVtw7TFvmUgYnnFpSBwcmltw6FybmE6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI3OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYWx0ZXJuYXRpdmUgbGluayAlcyBpcyBhbHJlYWR5IG1hbmFnZWQgYnkgJXMuIgorbXNnaWQgImFsdGVybmF0aXZlIGxpbmsgJXMgaXMgYWxyZWFkeSBtYW5hZ2VkIGJ5ICVzIChzbGF2ZSBvZiAlcykuIgorbXNnc3RyICJvZGtheiBhbHRlcm5hdMOtdnkgJXMgdcW+IHNwcmF2dWplICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBhcmd1bWVudCBgJXMnIgorbXNnc3RyICJuZXpuw6FteSBwYXJhbWV0ZXIg4oCeJXPigJwiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzQzCittc2dpZCAiLS1pbnN0YWxsIG5lZWRzIDxsaW5rPiA8bmFtZT4gPHBhdGg+IDxwcmlvcml0eT4iCittc2dzdHIgIi0taW5zdGFsbCB2ecW+YWR1amUgPGxpbmt1PiA8bsOhem92PiA8Y2VzdHU+IDxwcmlvcml0dT4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzQ2IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzk3Cittc2dpZCAiPGxpbms+IGFuZCA8cGF0aD4gY2FuJ3QgYmUgdGhlIHNhbWUiCittc2dzdHIgIjxvZGthej4gYSA8Y2VzdGE+IHNhIG5lbcO0xb51IHpob2RvdmHFpSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNDkKK21zZ2lkICJwcmlvcml0eSBtdXN0IGJlIGFuIGludGVnZXIiCittc2dzdHIgInByaW9yaXRhIG11c8OtIGJ5xaUgY2Vsw6kgxI3DrXNsbyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyA8bmFtZT4gPHBhdGg+IgorbXNnc3RyICItLSVzIHZ5xb5hZHVqZSA8bsOhem92PiA8Y2VzdHU+IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM3NgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIDxuYW1lPiIKK21zZ3N0ciAiLS0lcyB2ecW+YWR1amUgPG7DoXpvdj4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzg4Cittc2dpZCAiLS1zbGF2ZSBvbmx5IGFsbG93ZWQgd2l0aCAtLWluc3RhbGwiCittc2dzdHIgIi0tc2xhdmUgamUgcG92b2xlbsOpIGliYSBzIC0taW5zdGFsbCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzOTAKK21zZ2lkICItLXNsYXZlIG5lZWRzIDxsaW5rPiA8bmFtZT4gPHBhdGg+IgorbXNnc3RyICItLXNsYXZlIHZ5xb5hZHVqZSA8b2RrYXo+IDxuw6F6b3Y+IDxjZXN0dT4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzk5CisjLCBjLWZvcm1hdAorbXNnaWQgIm5hbWUgJXMgaXMgYm90aCBwcmltYXJ5IGFuZCBzbGF2ZSIKK21zZ3N0ciAibsOhem92ICVzIGplIHByaW3DoXJueSBhaiB6w6F2aXNsw70iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDAyCisjLCBjLWZvcm1hdAorbXNnaWQgImxpbmsgJXMgaXMgYm90aCBwcmltYXJ5IGFuZCBzbGF2ZSIKK21zZ3N0ciAib2RrYXogJXMgamUgcHJpbcOhcm55IGFqIHrDoXZpc2zDvSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhIDxmaWxlPiBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyB2ecW+YWR1amUgcGFyYW1ldGVyIDxzw7pib3I+IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQ0OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiBgJXMnIgorbXNnc3RyICJuZXpuw6FtYSB2b8S+YmEg4oCeJXPigJwiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDUzCittc2dpZCAiIgorIm5lZWQgLS1kaXNwbGF5LCAtLXF1ZXJ5LCAtLWxpc3QsIC0tZ2V0LXNlbGVjdGlvbnMsIC0tY29uZmlnLCAtLXNldCwgLS1zZXQtIgorInNlbGVjdGlvbnMsIC0taW5zdGFsbCwgLS1yZW1vdmUsIC0tYWxsLCAtLXJlbW92ZS1hbGwgb3IgLS1hdXRvIgorbXNnc3RyICIiCisibXVzw610ZSB6YWRhxaUgLS1kaXNwbGF5LCAtLXF1ZXJ5LCAtLWxpc3QsIC0tZ2V0LXNlbGVjdGlvbnMsIC0tY29uZmlnLCAtLXNldCwgIgorIi0tc2V0LXNlbGVjdGlvbnMsIC0taW5zdGFsbCwgLS1yZW1vdmUsIC0tYWxsLCAtLXJlbW92ZS1hbGwgYWxlYm8gLS1hdXRvIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQ5MAorbXNnaWQgIjxzdGFuZGFyZCBpbnB1dD4iCittc2dzdHIgIjzFoXRhbmQuIHZzdHVwPiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MDAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MDMKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gYWx0ZXJuYXRpdmVzIGZvciAlcy4iCittc2dzdHIgIsW+aWFkbmUgYWx0ZXJuYXTDrXZ5IHByZSAlcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTMwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIlcyBpcyBkYW5nbGluZywgaXQgd2lsbCBiZSB1cGRhdGVkIHdpdGggYmVzdCBjaG9pY2UuIgorbXNnaWQgIiVzLyVzIGlzIGRhbmdsaW5nLCBpdCB3aWxsIGJlIHVwZGF0ZWQgd2l0aCBiZXN0IGNob2ljZS4iCittc2dzdHIgIiVzIHZpc8OtLCBidWRlIHNhIGFrdHVhbGl6b3ZhbsO9IG5hamxlcMWhb3Ugdm/EvmJvdS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTM0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiJXMgaGFzIGJlZW4gY2hhbmdlZCAobWFudWFsbHkgb3IgYnkgYSBzY3JpcHQpLiBTd2l0Y2hpbmcgdG8gbWFudWFsICIKKyN8ICJ1cGRhdGVzIG9ubHkuIgorbXNnaWQgIiIKKyIlcy8lcyBoYXMgYmVlbiBjaGFuZ2VkIChtYW51YWxseSBvciBieSBhIHNjcmlwdCkuIFN3aXRjaGluZyB0byBtYW51YWwgIgorInVwZGF0ZXMgb25seS4iCittc2dzdHIgIiIKKyIlcyBzYSB6bWVuaWwgKG1hbnXDoWxuZSBhbGVibyBza3JpcHRvbSkuIFByZXDDrW5hIHNhIGxlbiBuYSBtYW51w6FsbmUgIgorImFrdHVhbGl6w6FjaWUuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU0MgorIywgYy1mb3JtYXQKK21zZ2lkICJzZXR0aW5nIHVwIGF1dG9tYXRpYyBzZWxlY3Rpb24gb2YgJXMuIgorbXNnc3RyICJuYXN0YXZ1amUgc2EgYXV0b21hdGlja8O9IHbDvWJlciAlcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTUxCisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlICVzIGZvciAlcyBub3QgcmVnaXN0ZXJlZCwgbm90IHNldHRpbmcuIgorbXNnc3RyICJhbHRlcm5hdMOtdmEgJXMgcHJlICVzIG5pZSBqZSByZWdpc3Ryb3ZhbsOhLCB0YWvFvmUgc2EgbmVuYXN0YXZ1amUuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU1NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU2MworIywgYy1mb3JtYXQKK21zZ2lkICJUaGVyZSBpcyBubyBwcm9ncmFtIHdoaWNoIHByb3ZpZGVzICVzLiIKK21zZ3N0ciAiTmVleGlzdHVqZSBwcm9ncmFtIHBvc2t5dHVqw7pjaSAlcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTY1IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTc1Cittc2dpZCAiTm90aGluZyB0byBjb25maWd1cmUuIgorbXNnc3RyICJOaWV0IMSNbyBrb25maWd1cm92YcWlLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiVGhlcmUgaXMgb25seSBvbmUgYWx0ZXJuYXRpdmUgaW4gbGluayBncm91cCAlczogJXMiCittc2dzdHIgIlYgc2t1cGluZSBvZGthem92IGV4aXN0dWplIGliYSBqZWRuYSBhbHRlcm5hdMOtdmEgJXM6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU4NAorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBmb3IgJXMgbm90IHJlZ2lzdGVyZWQsIG5vdCByZW1vdmluZy4iCittc2dzdHIgImFsdGVybmF0w612YSAlcyBwcmUgJXMgbmllIGplIHJlZ2lzdHJvdmFuw6EsIHRha8W+ZSBzYSBuZW9kc3RyYcWIdWplLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1OTIKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVtb3ZpbmcgbWFudWFsbHkgc2VsZWN0ZWQgYWx0ZXJuYXRpdmUgLSBzd2l0Y2hpbmcgJXMgdG8gYXV0byBtb2RlIgorbXNnc3RyICIiCisib2RzdHJhxYh1amUgc2EgbWFudcOhbG5lIHp2b2xlbsOhIGFsdGVybmF0w612YSAtIHByZXDDrW5hIHNhICVzIG5hIGF1dG9tYXRpY2vDvSAiCisicmXFvmltIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYxNworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYXV0b21hdGljIHVwZGF0ZXMgb2YgJXMgYXJlIGRpc2FibGVkLCBsZWF2aW5nIGl0IGFsb25lLiIKK21zZ2lkICJhdXRvbWF0aWMgdXBkYXRlcyBvZiAlcy8lcyBhcmUgZGlzYWJsZWQsIGxlYXZpbmcgaXQgYWxvbmUuIgorbXNnc3RyICJhdXRvbWF0aWNrw6kgYWt0dWFsaXrDoWNpZSAlcyBzw7ogemFrw6F6YW7DqSwgem1lbnkgc2EgbmV2eWtvbmFqw7ouIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYxOQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidG8gcmV0dXJuIHRvIGF1dG9tYXRpYyB1cGRhdGVzIHVzZSBgdXBkYXRlLWFsdGVybmF0aXZlcyAtLWF1dG8gJXMnLiIKK21zZ2lkICJ0byByZXR1cm4gdG8gYXV0b21hdGljIHVwZGF0ZXMgdXNlICclcyAtLWF1dG8gJXMnLiIKK21zZ3N0ciAiIgorInBvdcW+aXTDrW0g4oCedXBkYXRlLWFsdGVybmF0aXZlcyAtLWF1dG8gJXPigJwgc2EgdnLDoXRpdGUgc3DDpMWlIG5hIGF1dG9tYXRpY2vDqSAiCisiYWt0dWFsaXrDoWNpZS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjM2CisjLCBjLWZvcm1hdAorbXNnaWQgInVzaW5nICVzIHRvIHByb3ZpZGUgJXMgKCVzKSBpbiAlcy4iCittc2dzdHIgInBvdcW+aWplIHNhICVzLCBrdG9yw70gcG9za3l0dWplICVzICglcykgdiAlcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjQ0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmb3JjaW5nIHJlaW5zdGFsbGF0aW9uIG9mIGFsdGVybmF0aXZlICVzIGJlY2F1c2UgbGluayBncm91cCAlcyBpcyBicm9rZW4uIgorbXNnc3RyICIiCisidnludWN1amUgc2EgcmVpbsWhdGFsw6FjaWEgYWx0ZXJuYXTDrXZ5ICVzLCBwcmV0b8W+ZSBza3VwaW5hIG9ka2F6b3YgJXMgamUgIgorInBvxaFrb2RlbsOhLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY3VycmVudCBhbHRlcm5hdGl2ZSAlcyBpcyB1bmtub3duLCBzd2l0Y2hpbmcgdG8gJXMgZm9yIGxpbmsgZ3JvdXAgJXMuIgorbXNnc3RyICIiCisiYWt0dcOhbG5hIGFsdGVybmF0w612YSAlcyBqZSBuZXpuw6FtYSwgcHJlcMOtbmEgc2EgbmEgJXMgcHJlIHNrdXBpbnUgb2RrYXpvdiAlcy4iCisKKyN+IG1zZ2lkICJpdCBpcyBhIG1hc3RlciBhbHRlcm5hdGl2ZS4iCisjfiBtc2dzdHIgImplIHByaW3DoXJuYSBhbHRlcm5hdMOtdmEuIgorCisjfiBtc2dpZCAiaXQgaXMgYSBzbGF2ZSBvZiAlcyIKKyN+IG1zZ3N0ciAiamUgesOhdmlzbG9zxaVvdSAlcyIKKworI34gbXNnaWQgImNhbm5vdCBzdGF0ICVzOiAlcyIKKyN+IG1zZ3N0ciAibmVkw6Egc2Egdnlrb25hxaUgc3RhdCgpICVzOiAlcyIKKworI34gbXNnaWQgInJlYWRsaW5rKCVzKSBmYWlsZWQ6ICVzIgorI34gbXNnc3RyICJyZWFkbGluayglcykgemx5aGFsOiAlcyIKKworI34gbXNnaWQgInNjYW4gb2YgJXMgZmFpbGVkOiAlcyIKKyN+IG1zZ3N0ciAic2NhbigpICVzIHpseWhhbDogJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlY3V0ZSAlczogJXMiCisjfiBtc2dzdHIgIm5pZSBqZSBtb8W+bsOpIHNwdXN0acWlICVzOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byBtYWtlICVzIGEgc3ltbGluayB0byAlczogJXMiCisjfiBtc2dzdHIgIm5lZMOhIHNhIHVyb2JpxaUgJXMgYWtvIHN5bWJvbGlja8OhIGxpbmthIG5hICVzOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsICVzIGFzICVzOiAlcyIKKyN+IG1zZ3N0ciAibmVkw6Egc2EgbmFpbsWhdGFsb3ZhxaUgJXMgYWtvICVzOiAlcyIKKworI34gbXNnaWQgIndoaWxlIHdyaXRpbmcgJXM6ICVzIgorI34gbXNnc3RyICJwb8SNYXMgesOhcGlzdSAlczogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcmVhZCAlczogJXMiCisjfiBtc2dzdHIgIm5lZMOhIHNhIG5hxI3DrXRhxaUgJXM6ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGNsb3NlICVzOiAlcyIKKyN+IG1zZ3N0ciAibmVkw6Egc2EgemF0dm9yacWlICVzOiAlcyIKKworI34gbXNnaWQgImNhbm5vdCB3cml0ZSAlczogJXMiCisjfiBtc2dzdHIgIm5lZMOhIHNhIHphcMOtc2HFpSAlczogJXMiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgInVuYWJsZSB0byBvcGVuIGZpbGUgJyVzJyIKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcmVuYW1lIGZpbGUgJyVzJyB0byAnJXMnIgorI34gbXNnc3RyICJuaWUgamUgbW/Fvm7DqSBvdHZvcmnFpSBzw7pib3Ig4oCeJXPigJwiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gdW5idWZmZXIgYCUuMjU1cyciCisjfiBtc2dzdHIgIm5pZSBqZSBtb8W+bsOpIG9kYnVmZmVyb3ZhxaUg4oCeJS4yNTVz4oCcIgorCisjfiBtc2dpZCAicGFydCBmaWxlIGAlLjI1MHMnIGhhcyB0cmFpbGluZyBnYXJiYWdlIgorI34gbXNnc3RyICLEjWFzxaUgc8O6Ym9ydSDigJ4lLjI1MHPigJwgb2JzYWh1amUgbmEga29uY2kgb2RwYWQiCisKKyN+IG1zZ2lkICJzaXplICU3ZCBvY2N1cnMgJTVkIHRpbWVzXG4iCisjfiBtc2dzdHIgInZlxL5rb3PFpSAlN2Qgc2Egb2JqYXZ1amUgJTVkLWtyw6F0XG4iCisKKyN+IG1zZ2lkICJvdXQgb2YgbWVtb3J5IHB1c2hpbmcgZXJyb3IgaGFuZGxlcjogIgorI34gbXNnc3RyICJuZWRvc3RhdG9rIHBhbcOkdGUgcHJpIHBvdcW+aXTDrSBjaHlibsOpaG8gb3Zsw6FkYcSNYTogIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHVubG9jayBkcGtnIHN0YXR1cyBkYXRhYmFzZSIKKyN+IG1zZ3N0ciAibmllIGplIG1vxb5uw6kgb2RvbWtuw7rFpSBzdGF2b3bDuiBkYXRhYsOhenUgZHBrZyIKKworI34gbXNnaWQgImNvcHkgaW5mbyBmaWxlIGAlLjI1NXMnIgorI34gbXNnc3RyICJrb3DDrXJvdmFuaWUgaW5mbyBzw7pib3J1IOKAniUuMjU1c+KAnCIKKworI34gbXNnaWQgInBhcnNlIGVycm9yIgorI34gbXNnc3RyICJjaHliYSBwcmkgcm96Ym9yZSIKKworI34gbXNnaWQgImZhaWxlZCB0byB3cml0ZSBwYXJzaW5nIHdhcm5pbmciCisjfiBtc2dzdHIgInpseWhhbCB6w6FwaXMgdXBvem9ybmVuaWEgbyByb3pib3JlIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGxvY2sgdHJpZ2dlcnMgYXJlYSIKKyN+IG1zZ3N0ciAibmllIGplIG1vxb5uw6kgemFta27DusWlIG9ibGFzxaUgc3DDusWhxaVhxI1vdiIKKworI34gbXNnaWQgImZhaWxlZCB0byBydW4gJXMgKCUuMjUwcykiCisjfiBtc2dzdHIgInpseWhhbG8gc3B1c3RlbmllICVzICglLjI1MHMpIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgc2hlbGwgKCUuMjUwcykiCisjfiBtc2dzdHIgInpseWhhbG8gc3B1c3RlbmllIHNoZWxsdSAoJS4yNTBzKSIKKworI34gbXNnaWQgInVuYWJsZSB0byBjaGVjayBmb3IgZXhpc3RlbmNlIG9mIGAlLjI1MHMnIgorI34gbXNnc3RyICJuaWUgamUgbW/Fvm7DqSBvdmVyacWlIGV4aXN0ZW5jaXUg4oCeJS4yNTBz4oCcIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgcm0gZm9yIGNsZWFudXAiCisjfiBtc2dzdHIgInJtIHNhIG5lZMOhIHNwdXN0acWlIG5hIMSNaXN0ZW5pZSIKKworI34gbXNnaWQgIiIKKyN+ICIlcyBkZWJ1Z2dpbmcgb3B0aW9uLCAtLWRlYnVnPTxvY3RhbD4gb3IgLUQ8b2N0YWw+OlxuIgorI34gIlxuIgorI34gIiBudW1iZXIgIHJlZi4gaW4gc291cmNlICAgZGVzY3JpcHRpb25cbiIKKyN+ICIgICAgICAxICAgZ2VuZXJhbCAgICAgICAgICAgR2VuZXJhbGx5IGhlbHBmdWwgcHJvZ3Jlc3MgaW5mb3JtYXRpb25cbiIKKyN+ICIgICAgICAyICAgc2NyaXB0cyAgICAgICAgICAgSW52b2NhdGlvbiBhbmQgc3RhdHVzIG9mIG1haW50YWluZXIgc2NyaXB0c1xuIgorI34gIiAgICAgMTAgICBlYWNoZmlsZSAgICAgICAgICBPdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWRcbiIKKyN+ICIgICAgMTAwICAgZWFjaGZpbGVkZXRhaWwgICAgTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWRcbiIKKyN+ICIgICAgIDIwICAgY29uZmYgICAgICAgICAgICAgT3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZVxuIgorI34gIiAgICAyMDAgICBjb25mZmRldGFpbCAgICAgICBMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGVcbiIKKyN+ICIgICAgIDQwICAgZGVwY29uICAgICAgICAgICAgRGVwZW5kZW5jaWVzIGFuZCBjb25mbGljdHNcbiIKKyN+ICIgICAgNDAwICAgZGVwY29uZGV0YWlsICAgICAgTG90cyBvZiBkZXBlbmRlbmNpZXMvY29uZmxpY3RzIG91dHB1dFxuIgorI34gIiAgMTAwMDAgICB0cmlnZ2VycyAgICAgICAgICBUcmlnZ2VyIGFjdGl2YXRpb24gYW5kIHByb2Nlc3NpbmdcbiIKKyN+ICIgIDIwMDAwICAgdHJpZ2dlcnNkZXRhaWwgICAgTG90cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzXG4iCisjfiAiICA0MDAwMCAgIHRyaWdnZXJzc3R1cGlkICAgIFNpbGx5IGFtb3VudHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2Vyc1xuIgorI34gIiAgIDEwMDAgICB2ZXJ5dmVyYm9zZSAgICAgICBMb3RzIG9mIGRyaXZlbCBhYm91dCBlZyB0aGUgZHBrZy9pbmZvICIKKyN+ICJkaXJlY3RvcnlcbiIKKyN+ICIgICAyMDAwICAgc3R1cGlkbHl2ZXJib3NlICAgSW5zYW5lIGFtb3VudHMgb2YgZHJpdmVsXG4iCisjfiAiXG4iCisjfiAiRGVidWdnaW5nIG9wdGlvbnMgYXJlIGJlIG1peGVkIHVzaW5nIGJpdHdpc2Utb3IuXG4iCisjfiAiTm90ZSB0aGF0IHRoZSBtZWFuaW5ncyBhbmQgdmFsdWVzIGFyZSBzdWJqZWN0IHRvIGNoYW5nZS5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIiVzIGxhZGlhY2Egdm/EvmJhLCAtLWRlYnVnPTxvc21pxI1rb3bDqT4gYWxlYm8gLUQ8b3NtacSNa292w6k+OlxuIgorI34gIlxuIgorI34gIiAgxI3DrXNsbyAgIG9ka2F6IGRvIHpkcm9qYSAgIHBvcGlzXG4iCisjfiAiICAgICAgMSAgIGdlbmVyYWwgICAgICAgICAgIFbFoWVvYmVjbmUgdcW+aXRvxI1uw6kgaW5mb3Jtw6FjaWUgbyBzcHJhY292YW7DrVxuIgorI34gIiAgICAgIDIgICBzY3JpcHRzICAgICAgICAgICBTcHVzdGVuaWUgYSBzdGF2IHNwcsOhdmN1IHNrcmlwdG92XG4iCisjfiAiICAgICAxMCAgIGVhY2hmaWxlICAgICAgICAgIFbDvXN0dXAgcHJlIGthxb5kw70gc3ByYWNvdsOhdmFuw70gc8O6Ym9yXG4iCisjfiAiICAgIDEwMCAgIGVhY2hmaWxlZGV0YWlsICAgIE1ub8W+c3R2byB2w71zdHVwb3YgcHJlIGthxb5kw70gc3ByYWNvdsOhdmFuw70gIgorI34gInPDumJvclxuIgorI34gIiAgICAgMjAgICBjb25mZiAgICAgICAgICAgICBWw71zdHVwIHByZSBrYcW+ZMO9IGtvbmZpZ3VyYcSNbsO9IHPDumJvclxuIgorI34gIiAgICAyMDAgICBjb25mZmRldGFpbCAgICAgICBWaWFjIHbDvXN0dXBvdiBwcmUga2HFvmTDvSBrb25maWd1cmHEjW7DvSBzw7pib3JcbiIKKyN+ICIgICAgIDQwICAgZGVwY29uICAgICAgICAgICAgWsOhdmlzbG9zdGkgYSBrb25mbGlrdHlcbiIKKyN+ICIgICAgNDAwICAgZGVwY29uZGV0YWlsICAgICAgVmlhYyBvIHrDoXZpc2xvc3RpYWNoIGEga29uZmxpa3RvY2hcbiIKKyN+ICIgIDEwMDAwICAgdHJpZ2dlcnMgICAgICAgICAgQWt0aXbDoWNpYSBhIHNwcmFjb3ZhbmllIHNww7rFocWlYcSNb3ZcbiIKKyN+ICIgIDIwMDAwICAgdHJpZ2dlcnNkZXRhaWwgICAgTW5vxb5zdHZvIHbDvXN0dXB1IHTDvWthasO6Y2VobyBzYSBzcMO6xaHFpWHEjW92XG4iCisjfiAiICA0MDAwMCAgIHRyaWdnZXJzc3R1cGlkICAgIE5hZGJ5dG/EjW7DqSBtbm/FvnN0dm8gdsO9c3R1cHUgdMO9a2Fqw7pjZWhvIHNhICIKKyN+ICJzcMO6xaHFpWHEjW92XG4iCisjfiAiICAgMTAwMCAgIHZlcnl2ZXJib3NlICAgICAgIFZpYWMgaW5mb3Jtw6FjacOtIG8gc3ByYWNvdmFuw60gZHBrZy9pbmZvICIKKyN+ICJhZHJlc8OhcmFcbiIKKyN+ICIgICAyMDAwICAgc3R1cGlkbHl2ZXJib3NlICAgxaBpYWxlbsOpIG1ub8W+c3R2byBpbmZvcm3DoWNpw60gbyBzcHJhY292YW7DrVxuIgorI34gIlxuIgorI34gIkxhZGlhY2Ugdm/EvmJ5IG1vxb5ubyBrb21iaW5vdmHFpSBwb3XFvml0w61tIGJpdHdpc2Utb3IuXG4iCisjfiAiUG96bsOhbWthOiB2w716bmFteSBhIGhvZG5vdHkgc2EgbcO0xb51IMSNYXN0byBtZW5pxaUuXG4iCisKKyN+IG1zZ2lkICIiCisjfiAiJXMgZm9yY2luZyBvcHRpb25zIC0gY29udHJvbCBiZWhhdmlvdXIgd2hlbiBwcm9ibGVtcyBmb3VuZDpcbiIKKyN+ICIgIHdhcm4gYnV0IGNvbnRpbnVlOiAgLS1mb3JjZS08dGhpbmc+LDx0aGluZz4sLi4uXG4iCisjfiAiICBzdG9wIHdpdGggZXJyb3I6ICAgIC0tcmVmdXNlLTx0aGluZz4sPHRoaW5nPiwuLi4gfCAtLW5vLWZvcmNlLSIKKyN+ICI8dGhpbmc+LC4uLlxuIgorI34gIiBGb3JjaW5nIHRoaW5nczpcbiIKKyN+ICIgIGFsbCBbIV0gICAgICAgICAgICAgICAgU2V0IGFsbCBmb3JjZSBvcHRpb25zXG4iCisjfiAiICBkb3duZ3JhZGUgWypdICAgICAgICAgIFJlcGxhY2UgYSBwYWNrYWdlIHdpdGggYSBsb3dlciB2ZXJzaW9uXG4iCisjfiAiICBjb25maWd1cmUtYW55ICAgICAgICAgIENvbmZpZ3VyZSBhbnkgcGFja2FnZSB3aGljaCBtYXkgaGVscCB0aGlzIG9uZVxuIgorI34gIiAgaG9sZCAgICAgICAgICAgICAgICAgICBQcm9jZXNzIGluY2lkZW50YWwgcGFja2FnZXMgZXZlbiB3aGVuIG9uIGhvbGRcbiIKKyN+ICIgIGJhZC1wYXRoICAgICAgICAgICAgICAgUEFUSCBpcyBtaXNzaW5nIGltcG9ydGFudCBwcm9ncmFtcywgcHJvYmxlbXMgIgorI34gImxpa2VseVxuIgorI34gIiAgbm90LXJvb3QgICAgICAgICAgICAgICBUcnkgdG8gKGRlKWluc3RhbGwgdGhpbmdzIGV2ZW4gd2hlbiBub3Qgcm9vdFxuIgorI34gIiAgb3ZlcndyaXRlICAgICAgICAgICAgICBPdmVyd3JpdGUgYSBmaWxlIGZyb20gb25lIHBhY2thZ2Ugd2l0aCBhbm90aGVyXG4iCisjfiAiICBvdmVyd3JpdGUtZGl2ZXJ0ZWQgICAgIE92ZXJ3cml0ZSBhIGRpdmVydGVkIGZpbGUgd2l0aCBhbiB1bmRpdmVydGVkICIKKyN+ICJ2ZXJzaW9uXG4iCisjfiAiICBiYWQtdmVyaWZ5ICAgICAgICAgICAgIEluc3RhbGwgYSBwYWNrYWdlIGV2ZW4gaWYgaXQgZmFpbHMgYXV0aGVudGljaXR5ICIKKyN+ICJjaGVja1xuIgorI34gIiAgZGVwZW5kcy12ZXJzaW9uIFshXSAgICBUdXJuIGRlcGVuZGVuY3kgdmVyc2lvbiBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzXG4iCisjfiAiICBkZXBlbmRzIFshXSAgICAgICAgICAgIFR1cm4gYWxsIGRlcGVuZGVuY3kgcHJvYmxlbXMgaW50byB3YXJuaW5nc1xuIgorI34gIiAgY29uZm5ldyBbIV0gICAgICAgICAgICBBbHdheXMgdXNlIHRoZSBuZXcgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHRcbiIKKyN+ICIgIGNvbmZvbGQgWyFdICAgICAgICAgICAgQWx3YXlzIHVzZSB0aGUgb2xkIGNvbmZpZyBmaWxlcywgZG9uJ3QgcHJvbXB0XG4iCisjfiAiICBjb25mZGVmIFshXSAgICAgICAgICAgIFVzZSB0aGUgZGVmYXVsdCBvcHRpb24gZm9yIG5ldyBjb25maWcgZmlsZXMgaWYgIgorI34gIm9uZVxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICBpcyBhdmFpbGFibGUsIGRvbid0IHByb21wdC4gSWYgbm8gZGVmYXVsdCBjYW4gYmUgIgorI34gImZvdW5kLFxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICB5b3Ugd2lsbCBiZSBwcm9tcHRlZCB1bmxlc3Mgb25lIG9mIHRoZSBjb25mb2xkICIKKyN+ICJvclxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICBjb25mbmV3IG9wdGlvbnMgaXMgYWxzbyBnaXZlblxuIgorI34gIiAgY29uZm1pc3MgWyFdICAgICAgICAgICBBbHdheXMgaW5zdGFsbCBtaXNzaW5nIGNvbmZpZyBmaWxlc1xuIgorI34gIiAgY29uZmFzayBbIV0gICAgICAgICAgICBPZmZlciB0byByZXBsYWNlIGNvbmZpZyBmaWxlcyB3aXRoIG5vIG5ldyAiCisjfiAidmVyc2lvbnNcbiIKKyN+ICIgIGJyZWFrcyBbIV0gICAgICAgICAgICAgSW5zdGFsbCBldmVuIGlmIGl0IHdvdWxkIGJyZWFrIGFub3RoZXIgcGFja2FnZVxuIgorI34gIiAgY29uZmxpY3RzIFshXSAgICAgICAgICBBbGxvdyBpbnN0YWxsYXRpb24gb2YgY29uZmxpY3RpbmcgcGFja2FnZXNcbiIKKyN+ICIgIGFyY2hpdGVjdHVyZSBbIV0gICAgICAgUHJvY2VzcyBldmVuIHBhY2thZ2VzIHdpdGggd3JvbmcgYXJjaGl0ZWN0dXJlXG4iCisjfiAiICBvdmVyd3JpdGUtZGlyIFshXSAgICAgIE92ZXJ3cml0ZSBvbmUgcGFja2FnZSdzIGRpcmVjdG9yeSB3aXRoIGFub3RoZXIncyAiCisjfiAiZmlsZVxuIgorI34gIiAgdW5zYWZlLWlvIFshXSAgICAgICAgICBEbyBub3QgcGVyZm9ybSBzYWZlIEkvTyBvcGVyYXRpb25zIHdoZW4gIgorI34gInVucGFja2luZ1xuIgorI34gIiAgcmVtb3ZlLXJlaW5zdHJlcSBbIV0gICBSZW1vdmUgcGFja2FnZXMgd2hpY2ggcmVxdWlyZSBpbnN0YWxsYXRpb25cbiIKKyN+ICIgIHJlbW92ZS1lc3NlbnRpYWwgWyFdICAgUmVtb3ZlIGFuIGVzc2VudGlhbCBwYWNrYWdlXG4iCisjfiAiXG4iCisjfiAiV0FSTklORyAtIHVzZSBvZiBvcHRpb25zIG1hcmtlZCBbIV0gY2FuIHNlcmlvdXNseSBkYW1hZ2UgeW91ciAiCisjfiAiaW5zdGFsbGF0aW9uLlxuIgorI34gIkZvcmNpbmcgb3B0aW9ucyBtYXJrZWQgWypdIGFyZSBlbmFibGVkIGJ5IGRlZmF1bHQuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICIlcyB2eW51Y292YWNpZSB2b8S+YnkgLSByaWFkaWEgc3Byw6F2YW5pZSB2IHByw61wYWRlLCDFvmUgc2Egb2JqYXbDrSBwcm9ibMOpbTpcbiIKKyN+ICIgIHVwb3pvcm5pxaUgYWxlIHBva3JhxI1vdmHFpTogLS1mb3JjZS08cHJlZG1ldD4sPHByZWRtZXQ+LC4uLlxuIgorI34gIiAgc2tvbsSNacWlIHMgY2h5Ym91OiAgICAgICAgIC0tcmVmdXNlLTxwcmVkbWV0Piw8cHJlZG1ldD4sLi4uIHwgLS1uby1mb3JjZS0iCisjfiAiPHByZWRtZXQ+LC4uLlxuIgorI34gIiBWeW51Y292YW5pZTpcbiIKKyN+ICIgIGFsbCBbIV0gICAgICAgICAgICAgICAgTmFzdGF2w60gdsWhZXRreSB2eW51Y292YWNpZSB2b8S+YnlcbiIKKyN+ICIgIGRvd25ncmFkZSBbKl0gICAgICAgICAgTmFocmFkw60gYmFsw61rIG5pxb7FoW91IHZlcnppb3VcbiIKKyN+ICIgIGNvbmZpZ3VyZS1hbnkgICAgICAgICAgTmFzdGF2w60gxL51Ym92b8S+bsO9IGJhbMOtaywga3RvcsO9IHRvbXV0byAiCisjfiAia29ua3LDqXRuZW11IG3DtMW+ZSBwb23DtGPFpVxuIgorI34gIiAgaG9sZCAgICAgICAgICAgICAgICAgICBTcHJhY3VqZSBzw7p2aXNpYWNlIGJhbMOta3ksIGFqIGtlxI8gc8O6IHBvemRyxb5hbsOpXG4iCisjfiAiICBiYWQtcGF0aCAgICAgICAgICAgICAgIFByZW1lbm7DoSBQQVRIIG5lb2JzYWh1amUgZMO0bGXFvml0w6kgcHJvZ3JhbXksIGRhasO6ICIKKyN+ICJzYSBvxI1ha8OhdmHFpSBwcm9ibMOpbXlcbiIKKyN+ICIgIG5vdC1yb290ICAgICAgICAgICAgICAgU2vDunNpIChvZClpbsWhdGFsb3ZhxaUgcHJlZG1ldHkgYWogYmV6IG9wcsOhdm5lbmlhICIKKyN+ICJyb290XG4iCisjfiAiICBvdmVyd3JpdGUgICAgICAgICAgICAgIFByZXDDrcWhZSBzw7pib3IgeiBqZWRuw6lobyBiYWzDrWthIGluw71tXG4iCisjfiAiICBvdmVyd3JpdGUtZGl2ZXJ0ZWQgICAgIFByZXDDrcWhZSBvZGtsb25lbsO9IGJhbMOtayBuZW9ka2xvbmVub3UgdmVyemlvdVxuIgorI34gIiAgYmFkLXZlcmlmeSAgICAgICAgICAgICBOYWluxaF0YWx1amUgYmFsw61rIGFqIG5hcHJpZWsgemx5aGFuaXUga29udHJvbHkgIgorI34gImF1dGVudGljaXR5XG4iCisjfiAiICBkZXBlbmRzLXZlcnNpb24gWyFdICAgIFptZW7DrSBwcm9ibMOpbXkgc28gesOhdmlzbG9zxaVhbWkgdmVyemnDrSBuYSAiCisjfiAidXBvem9ybmVuaWFcbiIKKyN+ICIgIGRlcGVuZHMgWyFdICAgICAgICAgICAgWm1lbsOtIHbFoWV0a3kgcHJvYmzDqW15IHNvIHrDoXZpc2xvc8WlYW1pIG5hICIKKyN+ICJ1cG96b3JuZW5pYVxuIgorI34gIiAgY29uZm5ldyBbIV0gICAgICAgICAgICBWxb5keSBwb3XFvmlqZSBub3bDvSBrb25maWd1cmHEjW7DvSBzw7pib3IsIGJleiAiCisjfiAib3DDvXRhbmlhXG4iCisjfiAiICBjb25mb2xkIFshXSAgICAgICAgICAgIFbFvmR5IHBvdcW+aWplIHN0YXLDvSBrb25maWd1cmHEjW7DvSBzw7pib3IsIGJleiAiCisjfiAib3DDvXRhbmlhXG4iCisjfiAiICBjb25mZGVmIFshXSAgICAgICAgICAgIE5hIG5vdsOpIGtvbmZpZ3VyYcSNbsOpIHPDumJvcnkgcG91xb5pamUgcHJlZHZvbGVuw6kgIgorI34gIm5hc3RhdmVuaWUsXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIGFrIGV4aXN0dWplLCBiZXogb3DDvXRhbmlhLiBBayBuZWV4aXN0dWplIMW+aWFkbmUgIgorI34gInByZWR2b2xlbsOpXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIG5hc3RhdmVuaWUsIGJ1ZGV0ZSB2eXp2YW7DrSBuYSBqZWhvIHBvdHZyZGVuaWUgIgorI34gInZvxL5ib3UgY29uZm9sZFxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICBhbGVibyB2b8S+Ym91IGNvbmZuZXdcbiIKKyN+ICIgIGNvbmZtaXNzIFshXSAgICAgICAgICAgVsW+ZHkgbmFpbsWhdGFsdWplIGNow71iYWrDumNlIGtvbmZpZ3VyYcSNbsOpIHPDumJvcnlcbiIKKyN+ICIgIGNvbmZhc2sgWyFdICAgICAgICAgICAgUG9uw7prbmUgbmFocmFkZW5pZSBrb25maWd1cmHEjW7DvWNoIHPDumJvcm92IGJleiAiCisjfiAibm92xaFlaiB2ZXJ6aWVcbiIKKyN+ICIgIGJyZWFrcyBbIV0gICAgICAgICAgICAgTmFpbsWhdGFsb3ZhxaUgYWoga2VieSB0byBtYWxvIHBva2F6acWlIGluw70gYmFsw61rXG4iCisjfiAiICBjb25mbGljdHMgWyFdICAgICAgICAgIFVtb8W+bsOtIGluxaF0YWzDoWNpdSBiYWzDrWtvdiwga3RvcsOpIHPDuiB2IGtvbmZsaWt0ZVxuIgorI34gIiAgYXJjaGl0ZWN0dXJlIFshXSAgICAgICBTcHJhY3VqZSBiYWzDrWsgYWogdiBwcsOtcGFkZSwgxb5lIG3DoSB6bMO6ICIKKyN+ICJhcmNoaXRla3TDunJ1XG4iCisjfiAiICBvdmVyd3JpdGUtZGlyIFshXSAgICAgIFByZXDDrcWhZSBhZHJlc8OhciBiYWzDrWthIHPDumJvcm9tIHogaW7DqWhvIGJhbMOta2FcbiIKKyN+ICIgIHVuc2FmZS1pbyBbIV0gICAgICAgICAgTmV2eWtvbsOhdmHFpSBiZXpwZcSNbsOpIFYvViBvcGVyw6FjaWUgcHJpICIKKyN+ICJyb3piYcS+b3ZhbsOtXG4iCisjfiAiICByZW1vdmUtcmVpbnN0cmVxIFshXSAgIE9kc3Ryw6FuaSBiYWzDrWt5LCBrdG9yw6kgdnnFvmFkdWrDuiBpbsWhdGFsw6FjaXVcbiIKKyN+ICIgIHJlbW92ZS1lc3NlbnRpYWwgWyFdICAgT2RzdHLDoW5pIG5ldnlobnV0bsOpIGJhbMOta3lcbiIKKyN+ICJcbiIKKyN+ICJVUE9aT1JORU5JRSAtIHBvdcW+aXRpZSB2b8S+Ynkgb3puYcSNZW5laiBbIV0gbcO0xb5lIHbDocW+bmUgcG/FoWtvZGnFpSB2w6HFoSAiCisjfiAic3lzdMOpbS5cbiIKKyN+ICJWeW7DunRlbmllIHZvbGllYiBvem5hxI1lbsO9Y2ggWypdIGplIMWhdGFuZGFyZG5lIHBvdm9sZW7DqS5cbiIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIGRwa2ctc3BsaXQgdG8gc2VlIGlmIGl0J3MgcGFydCBvZiBhIG11bHRpcGFydGVyIgorI34gbXNnc3RyICIiCisjfiAibmVwb2RhcmlsbyBzYSBzcHVzdGnFpSBkcGtnLXNwbGl0IG5hIGtvbnRyb2x1IMSNaSBqZSDEjWFzxaVvdSBhcmNow612dSAiCisjfiAic2tsYWRhasO6Y2VobyBzYSB6IHZpYWNlcsO9Y2ggxI1hc3TDrSIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjbCBkZWJzaWctdmVyaWZ5IgorI34gbXNnc3RyICJ6bHloYWxvIHNwdXN0ZW5pZSBmdW5rY2llIGV4ZWNsIG5hIGRlYnNpZy12ZXJpZnkiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBkcGtnLWRlYiB0byBleHRyYWN0IGNvbnRyb2wgaW5mb3JtYXRpb24iCisjfiBtc2dzdHIgInpseWhhbG8gc3B1c3RlbmllIGRwa2ctZGViIG5hIGV4dHJha2NpdSByaWFkaWFjaWNoIGluZm9ybcOhY2nDrSIKKworI34gbXNnaWQgInVuYWJsZSB0byBleGVjIGRwa2ctZGViIHRvIGdldCBmaWxlc3lzdGVtIGFyY2hpdmUiCisjfiBtc2dzdHIgIm5pZSBqZSBtb8W+bsOpIHNwdXN0acWlIGRwa2ctZGViIHByZSB6w61za2FuaWUgb2JzYWh1IGFyY2jDrXZ1IHPDumJvcm92IgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSBkaXNhcHBlYXJpbmcgY29udHJvbCBpbmZvIGZpbGUgYCUuMjUwcyciCisjfiBtc2dzdHIgIm5pZSBqZSBtb8W+bsOpIHpydcWhacWlIHptaXpudXRpZSByaWFkaWFjZWhvIGluZm8gc8O6Ym9ydSDigJ4lLjI1MHPigJwiCisKKyN+IG1zZ2lkICJkcGtnOiAlcyBub3QgZm91bmQuXG4iCisjfiBtc2dzdHIgImRwa2c6ICVzIG5lYm9sIG7DoWpkZW7DvS5cbiIKKworI34gbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byAuLi4vREVCSUFOIgorI34gbXNnc3RyICJuaWUgamUgbW/Fvm7DqSB6bWVuacWlIGFkcmVzw6FyIG5hIC4uLi9ERUJJQU4iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyB0YXIgLWNmIgorI34gbXNnc3RyICJuaWUgamUgbW/Fvm7DqSBzcHVzdGnFpSBwcsOta2F6IHRhciAtY2YiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gbWFrZSB0bXBmaWxlIChjb250cm9sKSIKKyN+IG1zZ3N0ciAiemx5aGFsbyB2eXR2b3JlbmllIGRvxI1hc27DqWhvIHPDumJvcnUgKHJpYWRlbmllKSIKKworI34gbXNnaWQgImZhaWxlZCB0byB1bmxpbmsgdG1wZmlsZSAoY29udHJvbCksICVzIgorI34gbXNnc3RyICJ6bHloYWxvIG9kcG9qZW5pZSBkb8SNYXNuw6lobyBzw7pib3J1IChyaWFkZW5pZSksICVzIgorCisjfiBtc2dpZCAiY29udHJvbCIKKyN+IG1zZ3N0ciAicmlhZGVuaWUiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gcmV3aW5kIHRtcGZpbGUgKGNvbnRyb2wpIgorI34gbXNnc3RyICJuaWUgamUgbW/Fvm7DqSBwcmVqc8WlIG5hIHphxI1pYXRvayBkb8SNYXNuw6lobyBzw7pib3J1IChyaWFkZW5pZSkiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZnN0YXQgdG1wZmlsZSAoY29udHJvbCkiCisjfiBtc2dzdHIgIm5pZSBqZSBtb8W+bsOpIHZ5a29uYcWlIGZzdGF0IG5hIGRvxI1hc27DvSBzw7pib3IgKHJpYWRlbmllKSIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIGZpbmQiCisjfiBtc2dzdHIgInpseWhhbG8gc3B1c3RlbmllIHByw61rYXp1IGZpbmQiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBzaCAtYyBtdiBmb28vKiAmYyIKKyN+IG1zZ3N0ciAibmllIGplIG1vxb5uw6kgc3B1c3RpxaUgc2ggLWMgbXYgZm9vLyogJmMiCisKKyN+IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSAlLjI1MHMgbGVuZ3RoIGNvbnRhaW5zIG51bGxzIgorI34gbXNnc3RyICJzw7pib3Ig4oCeJS4yNTBz4oCcIGplIHBvxaFrb2RlbsO9IC0gJS4yNTBzIGTEusW+a2Egb2JzYWh1amUgbnVseSIKKworI34gbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIG5lZ2F0aXZlIG1lbWJlciBsZW5ndGggJXppIgorI34gbXNnc3RyICJzw7pib3Ig4oCeJS4yNTBz4oCcIGplIHBvxaFrb2RlbsO9IC0gesOhcG9ybsOhIGTEusW+a2EgxI1hc3RpICV6aSIKKworI34gbXNnaWQgImZhaWxlZCBnZXR0aW5nIHRoZSBjdXJyZW50IGZpbGUgcG9zaXRpb24iCisjfiBtc2dzdHIgIm5lZMOhIHNhIHrDrXNrYcWlIGFrdHXDoWxuYSBwb3rDrWNpYSB2IHPDumJvcmUiCisKKyN+IG1zZ2lkICJmYWlsZWQgc2V0dGluZyB0aGUgY3VycmVudCBmaWxlIHBvc2l0aW9uIgorI34gbXNnc3RyICJuZWTDoSBzYSBuYXN0YXZpxaUgYWt0dcOhbG5hIHBvesOtY2lhIHYgc8O6Ym9yZSIKKworI34gbXNnaWQgInZlcnNpb24gbnVtYmVyIgorI34gbXNnc3RyICLEjcOtc2xvIHZlcnppZSIKKworI34gbXNnaWQgIm1lbWJlciBsZW5ndGgiCisjfiBtc2dzdHIgImTEusW+a2EgxI1sZW5hIgorCisjfiBtc2dpZCAiaGVhZGVyIGluZm8gbWVtYmVyIgorI34gbXNnc3RyICLEjWxlbiBpbmZvcm3DoWNpw60gdiBobGF2acSNa2UiCisKKyN+IG1zZ2lkICJza2lwcGVkIGNvbnRyb2wgYXJlYSBmcm9tICVzIgorI34gbXNnc3RyICJwcmVza2/EjWVuw6EgcmlhZGlhY2Egb2JsYXPFpSB6ICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSB0ZW1wb3JhcnkgZGlyZWN0b3J5IgorI34gbXNnc3RyICJ6bHloYWxvIHZ5dHZvcmVuaWUgZG/EjWFzbsOpaG8gYWRyZXPDoXJhIgorCisjfiBtc2dpZCAiaW5mb19zcGV3IgorI34gbXNnc3RyICJpbmZvX3NwZXciCisKKyN+IG1zZ2lkICJpbmZvIGxlbmd0aCIKKyN+IG1zZ3N0ciAiZMS6xb5rYSBpbmZvIgorCisjfiBtc2dpZCAidG90YWwgbGVuZ3RoIgorI34gbXNnc3RyICJjZWxrb3bDoSBkxLrFvmthIgorCisjfiBtc2dpZCAiZGF0YSBsZW5ndGgiCisjfiBtc2dzdHIgImTEusW+a2Egw7pkYWpvdiIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIGRwa2ctZGViIHRvIGV4dHJhY3QgZmllbGQgdmFsdWUiCisjfiBtc2dzdHIgInpseWhhbG8gc3B1c3RlbmllIGRwa2ctZGViIG5hIGV4dHJha2NpdSBob2Rub3R5IHBvbMOtIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHN0YXQgJXM6ICVzIgorI34gbXNnc3RyICJuZWTDoSBzYSB2eWtvbmHFpSBzdGF0KCkgJXM6ICVzIgorCisjfiBtc2dpZCAic2xhdmUgbmFtZSAlcyBkdXBsaWNhdGVkIgorI34gbXNnc3RyICJ6w6F2aXNsw70gbsOhem92ICVzIGplIGR1cGxpY2l0bsO9IgorCisjfiBtc2dpZCAic2xhdmUgbGluayAlcyBkdXBsaWNhdGVkIgorI34gbXNnc3RyICJ6w6F2aXNsw70gb2RrYXogJXMgamUgZHVwbGljaXRuw70iCisKKyN+IG1zZ2lkICIlZCByZXF1ZXN0ZWQgY29udHJvbCBjb21wb25lbnRzIGFyZSBtaXNzaW5nIgorI34gbXNnc3RyICIlZCBwb8W+YWRvdmFuw6kga29tcG9uZW50eSByaWFkZW5pYSBjaMO9YmFqw7oiCisKKyN+IG1zZ2lkICJjYXQgKGRhdGEpIgorI34gbXNnc3RyICJjYXQgKGTDoXRhKSIKKworI34gbXNnaWQgImZhaWxlZCB0byBvcGVuIHBpcGUgZGVzY3JpcHRvciBgMScgaW4gcGFzdGUiCisjfiBtc2dzdHIgIm5lZMOhIHNhIG90dm9yacWlIGRlc2tyaXB0b3IgcsO6cnkg4oCeMeKAnCB2IHBhc3RlIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHdyaXRlIHRvIGd6aXAgLWRjIgorI34gbXNnc3RyICJuZWTDoSBzYSB6YXDDrXNhxaUgZG8gZ3ppcCAtZGMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gY2xvc2UgZ3ppcCAtZGMiCisjfiBtc2dzdHIgIm5lZMOhIHNhIHphdHZvcmnFpSBnemlwIC1kYyIKKworI34gbXNnaWQgImZhaWxlZCB0byBzeXNjYWxsIGxzZWVrIHRvIGZpbGVzIGFyY2hpdmUgcG9ydGlvbiIKKyN+IG1zZ3N0ciAibmVkw6Egc2Egdnlrb25hxaUgc3lzY2FsbCBsc2VlayBuYSDEjWFzxaUgYXJjaMOtdnUgc8O6Ym9yb3YiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gZXhlYyBta3NwbGl0IgorI34gbXNnc3RyICJuaWUgamUgbW/Fvm7DqSBzcHVzdGnFpSBmdW5rY2l1IG1rc3BsaXQiCisKKyN+IG1zZ2lkICIiCisjfiAiXG4iCisjfiAiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorI34gIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uIgorI34gbXNnc3RyICIiCisjfiAiXG4iCisjfiAiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorI34gIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uIgorCisjfiBtc2dpZCAidHdvIGNvbW1hbmRzIHNwZWNpZmllZDogJXMgYW5kIC0tJXMiCisjfiBtc2dzdHIgInphZGFuw6kgZHZhIHByw61rYXp5OiAlcyBhIC0tJXMiCisKKyN+IG1zZ2lkICItLSVzIG5lZWRzIGEgZGl2ZXJ0LXRvIGFyZ3VtZW50IgorI34gbXNnc3RyICItLSVzIHZ5xb5hZHVqZSBwYXJhbWV0ZXIga2FtLW9ka2xvbmnFpSIKKworI34gbXNnaWQgIi0tJXMgbmVlZHMgYSA8cGFja2FnZT4gYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tJXMgdnnFvmFkdWplIG7DoXpvdiBiYWzDrWthIGFrbyBhcmd1bWVudCIKKworI34gbXNnaWQgImNhbm5vdCBvcGVuIGRpdmVyc2lvbnM6ICVzIgorI34gbXNnc3RyICJuZWTDoSBzYSBvdHZvcmnFpSBzw7pib3IgcyBvZGNow71sa2FtaTogJXMiCisKKyN+IG1zZ2lkICJtaXNzaW5nIGFsdG5hbWUiCisjfiBtc2dzdHIgImNow71iYSBhbHRlcm5hdMOtdm55IG7DoXpvdiAlcyIKKworI34gbXNnaWQgIm1pc3NpbmcgcGFja2FnZSIKKyN+IG1zZ3N0ciAiY2jDvWJhIG7DoXpvdiBiYWzDrWthIgorCisjfiBtc2dpZCAiaW50ZXJuYWwgZXJyb3IgLSBiYWQgbW9kZSBgJXMnIgorI34gbXNnc3RyICJ2bsO6dG9ybsOhIGNoeWJhIC0gbmVzcHLDoXZueSBzcMO0c29iIOKAniVz4oCcIgorCisjfiBtc2dpZCAiY2Fubm90IHN0YXQgb2xkIG5hbWUgYCVzJzogJXMiCisjfiBtc2dzdHIgIm5lZMOhIHNhIHppc3RpxaUgc3RhdiBzdGFyw6lobyBuw6F6dnUg4oCeJXPigJw6IOKAniVz4oCcIgorCisjfiBtc2dpZCAicmVuYW1lOiByZW5hbWUgYCVzJyB0byBgJXMnOiAlcyIKKyN+IG1zZ3N0ciAicHJlbWVub3ZhbmllOiBwcmVtZW5vdmFuaWUg4oCeJXPigJwgbmEg4oCeJXPigJw6ICVzIgorCisjfiBtc2dpZCAiY3JlYXRlIGRpdmVyc2lvbnMtbmV3OiAlcyIKKyN+IG1zZ3N0ciAidnl0dsOhcmFuaWUgc8O6Ym9ydSBkaXZlcnNpb25zLW5ldzogJXMiCisKKyN+IG1zZ2lkICJ3cml0ZSBkaXZlcnNpb25zLW5ldzogJXMiCisjfiBtc2dzdHIgInrDoXBpcyBzw7pib3J1IGRpdmVyc2lvbnMtbmV3OiAlcyIKKworI34gbXNnaWQgImNsb3NlIGRpdmVyc2lvbnMtbmV3OiAlcyIKKyN+IG1zZ3N0ciAiemF0dm9yZW5pZSBzw7pib3J1IGRpdmVyc2lvbnMtbmV3OiAlcyIKKworI34gbXNnaWQgImNyZWF0ZSBuZXcgZGl2ZXJzaW9ucy1vbGQ6ICVzIgorI34gbXNnc3RyICJ2eXR2w6FyYW5pZSBub3bDqWhvIHPDumJvcnUgZGl2ZXJzaW9ucy1vbGQ6ICVzIgorCisjfiBtc2dpZCAiaW5zdGFsbCBuZXcgZGl2ZXJzaW9uczogJXMiCisjfiBtc2dzdHIgImluxaF0YWzDoWNpYSBub3bDqWhvIHPDumJvcnUgZGl2ZXJzaW9uczogJXMiCisKKyN+IG1zZ2lkICJpbnRlcm5hbCBlcnJvcjogJXMgY29ycnVwdDogJXMiCisjfiBtc2dzdHIgInZuw7p0b3Juw6EgY2h5YmE6ICVzIHBvxaFrb2RlbmllOiAlcyIKKworI34gbXNnaWQgImRwa2ctZGViIC0gZXJyb3I6ICVzIChgJXMnKSBkb2Vzbid0IGNvbnRhaW4gYW55IGRpZ2l0c1xuIgorI34gbXNnc3RyICJkcGtnLWRlYiAtIGNoeWJhOiAlcyAo4oCeJXPigJwpIG5lb2JzYWh1amUgxb5pYWRuZSDEjcOtc2xhXG4iCisKKyN+IG1zZ2lkICIodXBzdHJlYW0pIHZlcnNpb24iCisjfiBtc2dzdHIgIih1cHN0cmVhbSkgdmVyemlhIgorCisjfiBtc2dpZCAiRGViaWFuIHJldmlzaW9uIgorI34gbXNnc3RyICJyZXbDrXppYSBEZWJpYW51IgorCisjfiBtc2dpZCAiJWQgZXJyb3JzIGluIGNvbnRyb2wgZmlsZSIKKyN+IG1zZ3N0ciAiJWQgY2h5YnkgdiByaWFkaWFjb20gc8O6Ym9yZSIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvcG8vc3RhbXAtcG8gYi9kcGtnLTEuMTYuMS4xL3BvL3N0YW1wLXBvCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjk3ODhmNzAKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3BvL3N0YW1wLXBvCkBAIC0wLDAgKzEgQEAKK3RpbWVzdGFtcApkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9wby9zdi5nbW8gYi9kcGtnLTEuMTYuMS4xL3BvL3N2LmdtbwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43ZDQwYWE1Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9wby9zdi5nbW8KQmluYXJ5IGZpbGVzIGRpZmZlcgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9wby9zdi5wbyBiL2Rwa2ctMS4xNi4xLjEvcG8vc3YucG8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZGRiMzM0YQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvcG8vc3YucG8KQEAgLTAsMCArMSw2OTU2IEBACisjIFN3ZWRpc2ggdHJhbnNsYXRpb24gb2YgZHBrZworIyBDb3B5cmlnaHQgwqkgMTk5OS0yMDExIFNvZnR3YXJlIGluIHRoZSBQdWJsaWMgSW50ZXJlc3QKKyMgRGFuaWVsIE55bGFuZGVyIDxwb0BkYW5pZWxueWxhbmRlci5zZT4sIDIwMDYsIDIwMDguCisjIFBldGVyIEtyZWZ0aW5nIDxwZXRlcmtAZGViaWFuLm9yZz4sIDE5OTktMjAxMSwgMjAxMS4KKyMKK21zZ2lkICIiCittc2dzdHIgIiIKKyJQcm9qZWN0LUlkLVZlcnNpb246IGRwa2cgMS4xNi4xXG4iCisiUmVwb3J0LU1zZ2lkLUJ1Z3MtVG86IGRlYmlhbi1kcGtnQGxpc3RzLmRlYmlhbi5vcmdcbiIKKyJQT1QtQ3JlYXRpb24tRGF0ZTogMjAxMS0xMC0xNCAwNzoxMSswMjAwXG4iCisiUE8tUmV2aXNpb24tRGF0ZTogMjAxMS0wOS0xMSAwOTo1MyswMTAwXG4iCisiTGFzdC1UcmFuc2xhdG9yOiBQZXRlciBLcmVmdGluZyA8cGV0ZXJrQGRlYmlhbi5vcmc+XG4iCisiTGFuZ3VhZ2UtVGVhbTogU3dlZGlzaCA8ZGViaWFuLWwxMG4tc3dlZGlzaEBsaXN0cy5kZWJpYW4ub3JnPlxuIgorIkxhbmd1YWdlOiBzdlxuIgorIk1JTUUtVmVyc2lvbjogMS4wXG4iCisiQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PVVURi04XG4iCisiQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdFxuIgorIlBsdXJhbC1Gb3JtczogbnBsdXJhbHM9MjsgcGx1cmFsPShuICE9IDEpO1xuIgorCisjOiBsaWIvZHBrZy9hci5jOjY2CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgY2hhcmFjdGVyICclYycgaW4gYXJjaGl2ZSAnJS4yNTBzJyBtZW1iZXIgJyUuMTZzJyBzaXplIgorbXNnc3RyICIiCisib2dpbHRpZ3QgdGVja2VuIFwiJWNcIiBpIGFya2l2ZXQgXCIlLjI1MHNcIiBtZWRsZW1tZW4gXCIlLjE2c1wiIHN0b3JsZWsiCisKKyM6IGxpYi9kcGtnL2FyLmM6ODEgbGliL2Rwa2cvYXIuYzo5NyBsaWIvZHBrZy9hci5jOjEwOCBsaWIvZHBrZy9hci5jOjExMgorIzogbGliL2Rwa2cvYXIuYzoxMzQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIGZpbGUgJyVzJyIKK21zZ3N0ciAia3VuZGUgaW50ZSBza3JpdmEgZmlsZW4gXCIlc1wiIgorCisjOiBsaWIvZHBrZy9hci5jOjk0CisjLCBjLWZvcm1hdAorbXNnaWQgImdlbmVyYXRlZCBjb3JydXB0IGFyIGhlYWRlciBmb3IgJyVzJyIKK21zZ3N0ciAiZ2VuZXJlcmFkZSB0cmFzaWd0IGFyLWh1dnVkIGbDtnIgXCIlc1wiIgorCisjOiBsaWIvZHBrZy9hci5jOjEyMworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgYXIgbWVtYmVyIGZpbGUgKCVzKSIKK21zZ3N0ciAia3VuZGUgaW50ZSB0YSBzdGF0dXMgKGZzdGF0KSBww6UgZGVsIGF2IGFyLWZpbCAoJXMpIgorCisjOiBsaWIvZHBrZy9hci5jOjEzMAorIywgYy1mb3JtYXQKK21zZ2lkICJhciBtZW1iZXIgZmlsZSAoJXMpIgorbXNnc3RyICJhci1tZWRsZW1zZmlsICglcykiCisKKyM6IGxpYi9kcGtnL2J1ZmZlci5jOjE5NgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCBvbiBidWZmZXIgY29weSBmb3IgJXMiCittc2dzdHIgIm1pc3NseWNrYWRlcyBhdHQgbMOkc2EgaSBidWZmcmFkIGtvcGllcmluZyBmw7ZyICVzIgorCisjOiBsaWIvZHBrZy9idWZmZXIuYzoyMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIGluIHdyaXRlIG9uIGJ1ZmZlciBjb3B5IGZvciAlcyIKK21zZ3N0ciAibWlzc2x5Y2thZGVzIGF0dCBza3JpdmEgaSBidWZmcmFkIGtvcGllcmluZyBmw7ZyICVzIgorCisjOiBsaWIvZHBrZy9idWZmZXIuYzoyMjAKKyMsIGMtZm9ybWF0Cittc2dpZCAic2hvcnQgcmVhZCBvbiBidWZmZXIgY29weSBmb3IgJXMiCittc2dzdHIgImbDtnIgbGl0ZSBkYXRhIGzDpHN0IGkgYnVmZnJhZCBrb3BpZXJpbmcgZsO2ciAlcyIKKworIzogbGliL2Rwa2cvYnVmZmVyLmM6Mjg4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBzZWVrICVzIgorbXNnc3RyICJrdW5kZSBpbnRlIHPDtmthICVzIgorCisjOiBsaWIvZHBrZy9jb21tYW5kLmM6MTc4IGxpYi9kcGtnL2NvbW1hbmQuYzoyMDQgc3JjL2hlbHAuYzo2MjEKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTggc3JjL3Byb2Nlc3NhcmMuYzoxMzggc3JjL3Byb2Nlc3NhcmMuYzo0MzIKKyM6IHNyYy9wcm9jZXNzYXJjLmM6ODM5IGRwa2ctZGViL2J1aWxkLmM6NDU5IGRwa2ctZGViL2J1aWxkLmM6NTM4CisjOiBkcGtnLWRlYi9idWlsZC5jOjU2MSBkcGtnLWRlYi9leHRyYWN0LmM6MzE3IGRwa2ctZGViL2luZm8uYzo2NQorIzogZHBrZy1zcGxpdC9zcGxpdC5jOjY5IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo0NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGV4ZWN1dGUgJXMgKCVzKSIKK21zZ3N0ciAia3VuZGUgaW50ZSBrw7ZyYSAlcyAoJXMpIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBkZWNvbXByZXNzaW9uIgorbXNnc3RyICIlczogZGVrb21wcmltZXJpbmciCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6ODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGNvbXByZXNzaW9uIgorbXNnc3RyICIlczoga29tcHJpbWVyaW5nIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjExMgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZXJyb3IgYmluZGluZyBpbnB1dCB0byBnemlwIHN0cmVhbSIKK21zZ3N0ciAiJXM6IGV0dCBmZWwgdXBwc3RvZCBkw6UgaW5kYXRhIHNrdWxsZSBrb3BwbGFzIHRpbGwgZ3ppcC1zdHLDtm0iCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHJlYWQgZXJyb3I6ICclcyciCittc2dzdHIgIiVzOiBpbnRlcm50IGd6aXAtbMOkc2ZlbDogXCIlc1wiIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjEzMiBsaWIvZHBrZy9jb21wcmVzcy5jOjEzNgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCB3cml0ZSBlcnJvciIKK21zZ3N0ciAiJXM6IGludGVybnQgZ3ppcC1za3JpdmZlbCIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yIGJpbmRpbmcgb3V0cHV0IHRvIGd6aXAgc3RyZWFtIgorbXNnc3RyICIlczogZXR0IGZlbCB1cHBzdG9kIGTDpSB1dGRhdGEgc2t1bGxlIGtvcHBsYXMgdGlsbCBnemlwLXN0csO2bSIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgcmVhZCBlcnJvciIKK21zZ3N0ciAiJXM6IGludGVybnQgZ3ppcC1sw6RzZmVsIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE2NworIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCB3cml0ZSBlcnJvcjogJyVzJyIKK21zZ3N0ciAiJXM6IGludGVybnQgZ3ppcC1za3JpdmZlbDogXCIlc1wiIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE4MAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCB3cml0ZSBlcnJvcjogJXMiCittc2dzdHIgIiVzOiBpbnRlcm50IGd6aXAtc2tyaXZmZWw6ICVzIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjIyMAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZXJyb3IgYmluZGluZyBpbnB1dCB0byBiemlwMiBzdHJlYW0iCittc2dzdHIgIiVzOiBldHQgZmVsIHVwcHN0b2QgZMOlIGluZGF0YSBza3VsbGUga29wcGxhcyB0aWxsIGJ6aXAyLXN0csO2bSIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIHJlYWQgZXJyb3I6ICclcyciCittc2dzdHIgIiVzOiBpbnRlcm50IGJ6aXAyLWzDpHNmZWw6IFwiJXNcIiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyNDAgbGliL2Rwa2cvY29tcHJlc3MuYzoyNDQgbGliL2Rwa2cvY29tcHJlc3MuYzoyOTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIHdyaXRlIGVycm9yIgorbXNnc3RyICIlczogaW50ZXJudCBiemlwMi1za3JpdmZlbCIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yIGJpbmRpbmcgb3V0cHV0IHRvIGJ6aXAyIHN0cmVhbSIKK21zZ3N0ciAiJXM6IGV0dCBmZWwgdXBwc3RvZCBkw6UgdXRkYXRhIHNrdWxsZSBrb3BwbGFzIHRpbGwgYnppcDItc3Ryw7ZtIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI2NQorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgcmVhZCBlcnJvciIKK21zZ3N0ciAiJXM6IGludGVybnQgYnppcDItbMOkc2ZlbCIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyNzUgbGliL2Rwa2cvY29tcHJlc3MuYzoyODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIHdyaXRlIGVycm9yOiAnJXMnIgorbXNnc3RyICIlczogaW50ZXJudCBiemlwMi1za3JpdmZlbDogXCIlc1wiIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI4MgorbXNnaWQgInVuZXhwZWN0ZWQgYnppcDIgZXJyb3IiCittc2dzdHIgIm92w6RudGF0IGJ6aXAyLWZlbCIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzo2OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidXBkYXRlcyBkaXJlY3RvcnkgY29udGFpbnMgZmlsZSBgJS4yNTBzJyB3aG9zZSBuYW1lIGlzIHRvbyBsb25nIChsZW5ndGg9JWQsICIKKyJtYXg9JWQpIgorbXNnc3RyICIiCisidXBwZGF0ZXJpbmdza2F0YWxvZ2VuIGlubmVow6VsbGVyIGZpbGVuIFwiJS4yNTBzXCIgdmFycyBuYW1uIMOkciBmw7ZyIGzDpW5ndCAiCisiKGzDpG5nZD0lZCwgbWF4PSVkKSIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzo3MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidXBkYXRlcyBkaXJlY3RvcnkgY29udGFpbnMgZmlsZXMgd2l0aCBkaWZmZXJlbnQgbGVuZ3RoIG5hbWVzIChib3RoICVkIGFuZCAlZCkiCittc2dzdHIgIiIKKyJ1cHBkYXRlcmluZ3NrYXRhbG9nZW4gaW5uZWjDpWxsZXIgZmlsZXIgbWVkIG9saWthIGzDpW5nYSBuYW1uIChiw6VkZSAlZCBvY2ggJWQpIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjg2CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzY2FuIHVwZGF0ZXMgZGlyZWN0b3J5IGAlLjI1NXMnIgorbXNnc3RyICJrYW4gaW50ZSBnZW5vbXPDtmthIHVwcGRhdGVyaW5nc2thdGFsb2dlbiBcIiUuMjU1c1wiIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVtb3ZlIGluY29ycG9yYXRlZCB1cGRhdGUgZmlsZSAlLjI1NXMiCittc2dzdHIgImt1bmRlIGludGUgdGEgYm9ydCBkZW4gaGFudGVyYWRlIHVwcGRhdGVyaW5nc2ZpbGVuIFwiJS4yNTVzXCIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTIxIGRwa2ctZGViL2J1aWxkLmM6NDQ3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgYCUuMjU1cyciCittc2dzdHIgImt1bmRlIGludGUgc2thcGEgXCIlLjI1NXNcIiIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxMjUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZpbGwgJS4yNTBzIHdpdGggcGFkZGluZyIKK21zZ3N0ciAia3VuZGUgaW50ZSBmeWxsYSB1dCAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTI3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCAlLjI1MHMgYWZ0ZXIgcGFkZGluZyIKK21zZ3N0ciAia3VuZGUgaW50ZSB0w7ZtbWEgJS4yNTBzIGVmdGVyIHV0ZnlsbG5hZCIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxMjkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNlZWsgdG8gc3RhcnQgb2YgJS4yNTBzIGFmdGVyIHBhZGRpbmciCittc2dzdHIgImt1bmRlIGludGUgc8O2a2EgdGlsbCBiw7ZyamFuIGF2ICUuMjUwcyBlZnRlciB1dGZ5bGxuYWQiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTk1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIGxvY2sgZmlsZSAlcyBmb3IgdGVzdGluZyIKK21zZ3N0ciAia3VuZGUgaW50ZSBsw6VzYSBmaWxlbiAlcyBmw7ZyIHRlc3QiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjIxCittc2dpZCAidW5hYmxlIHRvIG9wZW4vY3JlYXRlIHN0YXR1cyBkYXRhYmFzZSBsb2NrZmlsZSIKK21zZ3N0ciAia3VuZGUgaW50ZSDDtnBwbmEvc2thcGEgbMOlc2ZpbCBmw7ZyIHN0YXR1c2RhdGFiYXMiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjMxCittc2dpZCAieW91IGRvIG5vdCBoYXZlIHBlcm1pc3Npb24gdG8gbG9jayB0aGUgZHBrZyBzdGF0dXMgZGF0YWJhc2UiCittc2dzdHIgImR1IGhhciBpbnRlIHLDpHR0aWdoZXRlciBhdHQgbMOlc2EgZHBrZ3Mgc3RhdHVzZGF0YWJhcyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyMzMKK21zZ2lkICJkcGtnIHN0YXR1cyBkYXRhYmFzZSIKK21zZ3N0ciAiZHBrZy1zdGF0dXNkYXRhYmFzIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjI1NworbXNnaWQgInJlcXVlc3RlZCBvcGVyYXRpb24gcmVxdWlyZXMgc3VwZXJ1c2VyIHByaXZpbGVnZSIKK21zZ3N0ciAiZWZ0ZXJmcsOlZ2FkIG9wZXJhdGlvbiBrcsOkdmVyIHN1cGVyYW52w6RuZGFyYmVow7ZyaWdoZXQiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjYyCittc2dpZCAidW5hYmxlIHRvIGFjY2VzcyBkcGtnIHN0YXR1cyBhcmVhIgorbXNnc3RyICJrdW5kZSBpbnRlIGtvbW1hIMOldCBkcGtncyBzdGF0dXNhcmVhIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjI2NAorbXNnaWQgIm9wZXJhdGlvbiByZXF1aXJlcyByZWFkL3dyaXRlIGFjY2VzcyB0byBkcGtnIHN0YXR1cyBhcmVhIgorbXNnc3RyICJvcGVyYXRpb25lbiBrcsOkdmVyIGzDpHMtL3Nrcml2w6V0a29tc3QgdGlsbCBkcGtncyBzdGF0dXNhcmVhIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjMwOQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVtb3ZlIG15IG93biB1cGRhdGUgZmlsZSAlLjI1NXMiCittc2dzdHIgImt1bmRlIGludGUgdGEgYm9ydCBtaW4gZWdlbiB1cHBkYXRlcmluZ3NmaWwgJS4yNTVzIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM0NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgImt1bmRlIGludGUgc2tyaXZhIHVwcGRhdGVyYWQgc3RhdHVzIGbDtnIgXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNDkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJrdW5kZSBpbnRlIHTDtm1tYSB1cHBkYXRlcmFkIHN0YXR1cyBmw7ZyIFwiJS4yNTBzXCIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzUxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB0cnVuY2F0ZSBmb3IgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgImt1bmRlIGludGUga2xpcHBhIGbDtnIgdXBwZGF0ZXJhZCBzdGF0dXMgZsO2ciBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM1MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZnN5bmMgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgImt1bmRlIGludGUgc3lua3JvbmlzZXJhIHVwcGRhdGVyYWQgc3RhdHVzIGbDtnIgXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJrdW5kZSBpbnRlIHN0w6RuZ2EgdXBwZGF0ZXJhZCBzdGF0dXMgZsO2ciBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM1OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAia3VuZGUgaW50ZSBpbnN0YWxsZXJhIHVwcGRhdGVyYWQgc3RhdHVzIGbDtnIgXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvZGlyLmM6NTAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGdldCBmaWxlIGRlc2NyaXB0b3IgZm9yIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICJrdW5kZSBpbnRlIGbDpSB0YWcgaSBmaWxoYW5kdGFnIGbDtnIga2F0YWxvZ2VuICclcyciCisKKyM6IGxpYi9kcGtnL2Rpci5jOjU0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzeW5jIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICJrdW5kZSBpbnRlIHN5bmtyb25pc2VyYSBrYXRhbG9nZW4gXCIlc1wiIgorCisjOiBsaWIvZHBrZy9kaXIuYzo2OSBsaWIvZHBrZy9kaXIuYzoxMzEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gZGlyZWN0b3J5ICclcyciCittc2dzdHIgImt1bmRlIGludGUgw7ZwcG5hIGthdGFsb2dlbiBcIiVzXCIiCisKKyM6IGxpYi9kcGtnL2Rpci5jOjEwOSBzcmMvZGl2ZXJ0Y21kLmM6MjE4IGRwa2ctc3BsaXQvc3BsaXQuYzoyMDIKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjkzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIGZpbGUgJyVzJyIKK21zZ3N0ciAia3VuZGUgaW50ZSDDtnBwbmEgZmlsZW4gXCIlc1wiIgorCisjOiBsaWIvZHBrZy9kaXIuYzoxMTEgc3JjL2RpdmVydGNtZC5jOjIzMiBzcmMvZGl2ZXJ0Y21kLmM6Mzc3CisjOiBzcmMvc3RhdGNtZC5jOjIxNyBkcGtnLWRlYi9idWlsZC5jOjU5OCBkcGtnLXNwbGl0L2pvaW4uYzo2NQorIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE4NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTQwNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBmaWxlICclcyciCittc2dzdHIgImt1bmRlIGludGUgc3lua3JvbmlzZXJhIGZpbGVuIFwiJXNcIiIKKworIzogbGliL2Rwa2cvZGlyLmM6MTEzIHNyYy9kaXZlcnRjbWQuYzoyMzQgc3JjL2RpdmVydGNtZC5jOjM3OQorIzogZHBrZy1kZWIvYnVpbGQuYzo2MDAgZHBrZy1zcGxpdC9qb2luLmM6NjcgZHBrZy1zcGxpdC9xdWV1ZS5jOjE4OQorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzMTQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE0MDgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIGZpbGUgJyVzJyIKK21zZ3N0ciAia3VuZGUgaW50ZSBzdMOkbmdhIGZpbGVuIFwiJXNcIiIKKworIzogbGliL2Rwa2cvZHVtcC5jOjM5NgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgZGV0YWlscyBvZiBgJS41MHMnIHRvIGAlLjI1MHMnIgorbXNnc3RyICJtaXNzbHlja2FkZXMgbWVkIGF0dCBza3JpdmEgZGV0YWxqZXIgb20gXCIlLjUwc1wiIHRpbGwgXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQyMworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiAnJXMnIGZvciB3cml0aW5nICVzIGRhdGFiYXNlIgorbXNnc3RyICJrdW5kZSBpbnRlIMO2cHBuYSBcIiVzXCIgZsO2ciBhdHQgc2tyaXZhICVzLWRhdGFiYXMiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0MjYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNldCBidWZmZXJpbmcgb24gJXMgZGF0YWJhc2UgZmlsZSIKK21zZ3N0ciAia3VuZGUgaW50ZSBzdMOkbGxhIGluIGJ1ZmZyaW5nIGF2ICVzLWRhdGFiYXNmaWwiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0MzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlICVzIGRhdGFiYXNlIHJlY29yZCBhYm91dCAnJS41MHMnIHRvICclLjI1MHMnIgorbXNnc3RyICJrdW5kZSBpbnRlIHNrcml2YSAlcy1kYXRhYmFzcG9zdCBvbSBcIiUuNTBzXCIgdGlsbCBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDQ2CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBmbHVzaCAlcyBkYXRhYmFzZSB0byAnJS4yNTBzJyIKK21zZ3N0ciAia3VuZGUgaW50ZSBza3JpdmEgKGZsdXNoKSAlcy1kYXRhYmFzIHRpbGwgXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ0OAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZnN5bmMgJXMgZGF0YWJhc2UgdG8gJyUuMjUwcyciCittc2dzdHIgImt1bmRlIGludGUgc3lua3JvbmlzZXJhICVzLWRhdGFiYXMgdGlsbCBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDUxCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjbG9zZSAnJS4yNTBzJyBhZnRlciB3cml0aW5nICVzIGRhdGFiYXNlIgorbXNnc3RyICJrdW5kZSBpbnRlIHN0w6RuZ2EgXCIlLjI1MHNcIiBlZnRlciBhdHQgaGEgc2tyaXZpdCAlcy1kYXRhYmFzIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDU1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBsaW5rICclLjI1MHMnIHRvICclLjI1MHMnIGZvciBiYWNrdXAgb2YgJXMgZGF0YWJhc2UiCittc2dzdHIgIiIKKyJrdW5kZSBpbnRlIGzDpG5rYSBcIiUuMjUwc1wiIHRpbGwgXCIlLjI1MHNcIiBmw7ZyIGF0dCBzw6RrZXJoZXRza29waWVyYSAlcy0iCisiZGF0YWJhcyIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ1OAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gaW5zdGFsbCAnJS4yNTBzJyBhcyAnJS4yNTBzJyBjb250YWluaW5nICVzIGRhdGFiYXNlIgorbXNnc3RyICJrdW5kZSBpbnRlIGluc3RhbGxlcmEgXCIlLjI1MHNcIiBzb20gXCIlLjI1MHNcIiBtZWQgJXMtZGF0YWJhcyIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjk0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogdW5yZWNvdmVyYWJsZSBmYXRhbCBlcnJvciwgYWJvcnRpbmc6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKyIlczogb8OldGVya2FsbGVsaWd0IMO2ZGVzZGlnZXJ0IGZlbCwgYXZicnl0ZXI6XG4iCisiICVzXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoxMDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBvdXRzaWRlIGVycm9yIGNvbnRleHQsIGFib3J0aW5nOlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisiJXM6IHV0YW5mw7ZyIGZlbHNhbW1hbmhhbmcsIGF2YnJ5dGVyOlxuIgorIiAlc1xuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MTIwCittc2dpZCAib3V0IG9mIG1lbW9yeSBmb3IgbmV3IGVycm9yIGNvbnRleHQiCittc2dzdHIgIm1pbm5ldCBzbHV0IGbDtnIgbnkgZmVsc2FtbWFuaGFuZyIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjE4MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IGVycm9yIHdoaWxlIGNsZWFuaW5nIHVwOlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisiJXM6IGZlbCB2aWQgdXBwcmVuc25pbmc6XG4iCisiICVzXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoyMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IHRvbyBtYW55IG5lc3RlZCBlcnJvcnMgZHVyaW5nIGVycm9yIHJlY292ZXJ5ISFcbiIKK21zZ3N0ciAiJXM6IGbDtnIgbcOlbmdhIG7DpHN0bGFkZSBmZWwgdmlkIGZlbHVwcHN0w6RkbmluZyEhXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoyNjggbGliL2Rwa2cvZWhhbmRsZS5jOjMwNworbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBjbGVhbnVwIGVudHJ5IgorbXNnc3RyICJtaW5uZXQgc2x1dCBmw7ZyIG55IHVwcHN0w6RkbmluZ3Nwb3N0IgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MjkxCittc2dpZCAib3V0IG9mIG1lbW9yeSBmb3IgbmV3IGNsZWFudXAgZW50cnkgd2l0aCBtYW55IGFyZ3VtZW50cyIKK21zZ3N0ciAibWlubmV0IHNsdXQgZsO2ciBueSB1cHBzdMOkZG5pbmdzcG9zdCBtZWQgbcOlbmdhIHBhcmFtZXRyYXIiCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzozNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yOiAlc1xuIgorbXNnc3RyICIlczogZmVsOiAlc1xuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MzkzCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB3YXJuaW5nOiAlc1xuIgorbXNnc3RyICIlczogdmFybmluZzogJXNcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjQxNgorIywgYy1mb3JtYXQKK21zZ2lkICIlczolczolZDogaW50ZXJuYWwgZXJyb3I6ICVzXG4iCittc2dzdHIgIiVzOiVzOiVkOiBpbnRlcm50IGZlbDogJXNcbiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgaXMgbWlzc2luZyIKK21zZ3N0ciAiJXMgc2FrbmFzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0OQorIywgYy1mb3JtYXQKK21zZ2lkICInJS41MHMnIGlzIG5vdCBhbGxvd2VkIGZvciAlcyIKK21zZ3N0ciAiXCIlLjUwc1wiIMOkciBlaiB0aWxsw6V0ZXQgZsO2ciAlcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NzMKKyMsIGMtZm9ybWF0Cittc2dpZCAianVuayBhZnRlciAlcyIKK21zZ3N0ciAic2tyw6RwIGVmdGVyICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo4NworIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHBhY2thZ2UgbmFtZSAoJS4yNTBzKSIKK21zZ3N0ciAib2dpbHRpZ3QgcGFrZXRuYW1uICglLjI1MHMpIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZW1wdHkgZmlsZSBkZXRhaWxzIGZpZWxkIGAlcyciCittc2dzdHIgInRvbXQgZmlsaW5mb3JtYXRpb25mw6RsdCBcIiVzXCIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjEwNQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGRldGFpbHMgZmllbGQgYCVzJyBub3QgYWxsb3dlZCBpbiBzdGF0dXMgZmlsZSIKK21zZ3N0ciAiZmlsaW5mb3JtYXRpb25zZsOkbHQgXCIlc1wiIGVqIHRpbGzDpXRldCBpIHN0YXR1c2ZpbGVuIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidG9vIG1hbnkgdmFsdWVzIGluIGZpbGUgZGV0YWlscyBmaWVsZCBgJXMnIChjb21wYXJlZCB0byBvdGhlcnMpIgorbXNnc3RyICJmw7ZyIG3DpW5nYSB2w6RyZGVuIGkgZmlsZGV0YWxqc2bDpGx0ZXQgXCIlc1wiIChqw6RtZsO2cnQgbWVkIGFuZHJhKSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTMyCisjLCBjLWZvcm1hdAorbXNnaWQgInRvbyBmZXcgdmFsdWVzIGluIGZpbGUgZGV0YWlscyBmaWVsZCBgJXMnIChjb21wYXJlZCB0byBvdGhlcnMpIgorbXNnc3RyICJmw7ZyIGbDpSB2w6RyZGVuIGkgZmlsZGV0YWxqc2bDpGx0ZXQgXCIlc1wiIChqw6RtZsO2cnQgbWVkIGFuZHJhKSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTU0Cittc2dpZCAieWVzL25vIGluIGJvb2xlYW4gZmllbGQiCittc2dzdHIgInllcy9ubyBpIGJvb2xza3QgZsOkbHQiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE3NAorbXNnaWQgIndvcmQgaW4gYHByaW9yaXR5JyBmaWVsZCIKK21zZ3N0ciAib3JkIGkgXCJwcmlvcml0eVwiLWbDpGx0IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxODYKK21zZ2lkICJ2YWx1ZSBmb3IgYHN0YXR1cycgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICJ2w6RyZGUgZsO2ciBcInN0YXR1c1wiLWbDpGx0ZXQgZWogdGlsbMOldGV0IGkgZGV0dGEgc2FtbWFuaGFuZyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTkxCittc2dpZCAiZmlyc3QgKHdhbnQpIHdvcmQgaW4gYHN0YXR1cycgZmllbGQiCittc2dzdHIgImbDtnJzdGEgb3JkZXQgKHZpbGwpIGkgXCJzdGF0dXNcIi1mw6RsdGV0IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxOTQKK21zZ2lkICJzZWNvbmQgKGVycm9yKSB3b3JkIGluIGBzdGF0dXMnIGZpZWxkIgorbXNnc3RyICJhbmRyYSBvcmRldCAoZmVsKSBpIFwic3RhdHVzXCItZsOkbHRldCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTk3Cittc2dpZCAidGhpcmQgKHN0YXR1cykgd29yZCBpbiBgc3RhdHVzJyBmaWVsZCIKK21zZ3N0ciAidHJlZGplIG9yZGV0IChzdGF0dXMpIGkgXCJzdGF0dXNcIi1mw6RsdGV0IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyMDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgaW4gVmVyc2lvbiBzdHJpbmcgJyUuMjUwcyciCittc2dzdHIgImZlbCBpIFwiVmVyc2lvblwiLXN0csOkbmdlbiBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyMTgKK21zZ2lkICJvYnNvbGV0ZSBgUmV2aXNpb24nIG9yIGBQYWNrYWdlLVJldmlzaW9uJyBmaWVsZCB1c2VkIgorbXNnc3RyICJmw7Zyw6VsZHJhdCBcIlJldmlzaW9uXCItIGVsbGVyIFwiUGFja2FnZS1SZXZpc2lvblwiLWbDpGx0IGFudsOkbnQiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjIzNQorbXNnaWQgInZhbHVlIGZvciBgY29uZmlnLXZlcnNpb24nIGZpZWxkIG5vdCBhbGxvd2VkIGluIHRoaXMgY29udGV4dCIKK21zZ3N0ciAidsOkcmRlIGbDtnIgXCJjb25maWctdmVyc2lvblwiLWbDpGx0ZXQgZWogdGlsbMOldGV0IGkgZGV0dGEgc2FtbWFuaGFuZyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjQwCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGluIENvbmZpZy1WZXJzaW9uIHN0cmluZyAnJS4yNTBzJyIKK21zZ3N0ciAiZmVsIGkgQ29uZmlnLVZlcnNpb24tc3Ryw6RuZyBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAidmFsdWUgZm9yIGBjb25mZmlsZXMnIGhhcyBtYWxmb3JtYXR0ZWQgbGluZSBgJS4qcyciCittc2dzdHIgInbDpHJkZSBmw7ZyIFwiY29uZmZpbGVzXCIgaGFyIGZlbCBmb3JtYXQgcMOlIHJhZGVuIFwiJS4qc1wiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyODcKKyMsIGMtZm9ybWF0Cittc2dpZCAidmFsdWUgZm9yIGBjb25mZmlsZXMnIGhhcyBsaW5lIHN0YXJ0aW5nIHdpdGggbm9uLXNwYWNlIGAlYyciCittc2dzdHIgIiIKKyJ2w6RyZGUgZsO2ciBcImNvbmZmaWxlc1wiIGlubmVow6VsbGVyIHJhZCBzb20gYsO2cmphciBtZWQgaWNrZS1ibGFua3N0ZWcgXCIlY1wiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzozMDQKK21zZ2lkICJyb290IG9yIG51bGwgZGlyZWN0b3J5IGlzIGxpc3RlZCBhcyBhIGNvbmZmaWxlIgorbXNnc3RyICJyb3QtIGVsbGVyIHRvbSBrYXRhbG9nIGxpc3RhcyBzb20ga29uZmlndXJhdGlvbnNmaWwiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjM2NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgbWlzc2luZyBwYWNrYWdlIG5hbWUsIG9yIGdhcmJhZ2Ugd2hlcmUgcGFja2FnZSBuYW1lIGV4cGVjdGVkIgorbXNnc3RyICIiCisiXCIlc1wiLWbDpGx0ZXQ6IHNha25hdCBwYWtldG5hbW4sIGVsbGVyIHNrcsOkcHRlY2tlbiBkw6RyIHBha2V0bmFtbmV0ICIKKyJmw7ZydsOkbnRhZGVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzozNzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBmaWVsZCwgaW52YWxpZCBwYWNrYWdlIG5hbWUgYCUuMjU1cyc6ICVzIgorbXNnc3RyICJcIiVzXCItZsOkbHRldDogb2dpbHRpZ3QgcGFrZXRuYW1uIFwiJS4yNTVzXCI6ICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgYmFkIHZlcnNpb24gcmVsYXRpb25zaGlwICVjJWMiCittc2dzdHIgIiIKKyJcIiVzXCItZsOkbHRldDogcmVmZXJlbnMgdGlsbCBcIiUuMjU1c1wiOlxuIgorIiBmZWxha3RpZ3QgdmVyc2lvbnNiZXJvZW5kZSAlYyVjIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgYCVjJyBpcyBvYnNvbGV0ZSwgdXNlIGAlYz0nIG9yIGAlYyVjJyBpbnN0ZWFkIgorbXNnc3RyICIiCisiXCIlc1wiLWbDpGx0ZXQ6IHJlZmVyZW5zIHRpbGwgXCIlLjI1NXNcIjpcbiIKKyIgXCIlY1wiIMOkciBmw7Zyw6VsZHJhdCwgYW52w6RuZCBcIiVjPVwiIGVsbGVyIFwiJWMlY1wiIGlzdMOkbGxldCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDIyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6XG4iCisiIGltcGxpY2l0IGV4YWN0IG1hdGNoIG9uIHZlcnNpb24gbnVtYmVyLCBzdWdnZXN0IHVzaW5nIGA9JyBpbnN0ZWFkIgorbXNnc3RyICIiCisiXCIlc1wiLWbDpGx0ZXQ6IHJlZmVyZW5zIHRpbGwgXCIlLjI1NXNcIjpcbiIKKyIgaW1wbGljaXQgZXhha3QgdHLDpGZmIHDDpSB2ZXJzaW9uc251bW1lciwgYW52w6RuZCBoZWxscmUgXCI9XCIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQzMAorbXNnaWQgIk9ubHkgZXhhY3QgdmVyc2lvbnMgbWF5IGJlIHVzZWQgZm9yIFByb3ZpZGVzIgorbXNnc3RyICJFbmJhcnQgZXhha3RhIHZlcnNpb25zbnVtbWVyIGthbiBhbnbDpG5kYXMgaSBQcm92aWRlcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6XG4iCisiIHZlcnNpb24gdmFsdWUgc3RhcnRzIHdpdGggbm9uLWFscGhhbnVtZXJpYywgc3VnZ2VzdCBhZGRpbmcgYSBzcGFjZSIKK21zZ3N0ciAiIgorIlwiJXNcIi1mw6RsdGV0OiByZWZlcmVucyB0aWxsIFwiJS4yNTVzXCI6XG4iCisiIHZlcnNpb25zdsOkcmRldCBiw7ZyamFyIG1lZCBpY2tlLWFsZmFudW1lcmlza3QgdGVja2VuLCBsw6RnZyB0aWxsIGV0dCBibGFua3N0ZWciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ1MSBsaWIvZHBrZy9maWVsZHMuYzo0NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOiB2ZXJzaW9uIGNvbnRhaW5zIGAlYyciCittc2dzdHIgIlwiJXNcIi1mw6RsdGV0OiByZWZlcmVucyB0aWxsIFwiJS4yNTVzXCI6IHZlcnNpb25lbiBpbm5laMOlbGxlciBcIiVjXCIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ1OQorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6IHZlcnNpb24gdW50ZXJtaW5hdGVkIgorbXNnc3RyICJcIiVzXCItZsOkbHRldDogcmVmZXJlbnMgdGlsbCBcIiUuMjU1c1wiOiB2ZXJzaW9uc251bXJldCBlaiBhdnNsdXRhdCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDY1CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgZmllbGQsIHJlZmVyZW5jZSB0byAnJS4yNTVzJzogZXJyb3IgaW4gdmVyc2lvbiIKK21zZ3N0ciAiXCIlc1wiLWbDpGx0ZXQ6IHJlZmVyZW5zIHRpbGwgXCIlLjI1NXNcIjogZmVsIGkgdmVyc2lvbiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDc1CisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgZmllbGQsIHN5bnRheCBlcnJvciBhZnRlciByZWZlcmVuY2UgdG8gcGFja2FnZSBgJS4yNTVzJyIKK21zZ3N0ciAiXCIlc1wiLWbDpGx0ZXQ6IHN5bnRha3Rpc2t0IGZlbCBlZnRlciByZWZlcmVucyB0aWxsIHBha2V0IFwiJS4yNTVzXCIiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ4MgorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZXMgKGB8Jykgbm90IGFsbG93ZWQgaW4gJXMgZmllbGQiCittc2dzdHIgImFsdGVybmF0aXYgKFwifFwiKSB0aWxsw6V0cyBpbnRlIGkgJXMtZsOkbHRldCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTM2Cittc2dpZCAidmFsdWUgZm9yIGB0cmlnZ2Vycy1wZW5kaW5nJyBmaWVsZCBub3QgYWxsb3dlZCBpbiB0aGlzIGNvbnRleHQiCittc2dzdHIgInbDpHJkZSBmw7ZyIFwidHJpZ2dlcnMtcGVuZGluZ1wiLWbDpGx0ZXQgZWogdGlsbMOldGV0IGkgZGV0dGEgc2FtbWFuaGFuZyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTQzCisjLCBjLWZvcm1hdAorbXNnaWQgImlsbGVnYWwgcGVuZGluZyB0cmlnZ2VyIG5hbWUgYCUuMjU1cyc6ICVzIgorbXNnc3RyICJvZ2lsdGlndCBmw7ZyZXN0w6VlbmRlIHV0bMO2c2FybmFtbiBcIiUuMjU1c1wiOiAlcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTQ3CisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBwZW5kaW5nIHRyaWdnZXIgYCUuMjU1cyciCittc2dzdHIgImR1YmJsZXJhZCBmw7ZyZXN0w6VlbmRlIHV0bMO2c2FyZSBcIiUuMjU1c1wiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NjEKK21zZ2lkICJ2YWx1ZSBmb3IgYHRyaWdnZXJzLWF3YWl0ZWQnIGZpZWxkIG5vdCBhbGxvd2VkIGluIHRoaXMgY29udGV4dCIKK21zZ3N0ciAidsOkcmRlIGbDtnIgXCJ0cmlnZ2Vycy1hd2FpdGVkXCItZsOkbHRldCBlaiB0aWxsw6V0ZXQgaSBkZXR0YSBzYW1tYW5oYW5nIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWxsZWdhbCBwYWNrYWdlIG5hbWUgaW4gYXdhaXRlZCB0cmlnZ2VyIGAlLjI1NXMnOiAlcyIKK21zZ3N0ciAib2dpbHRpZ3QgcGFrZXRuYW1uIGkgdsOkbnRhZCB1dGzDtnNhcmUgXCIlLjI1NXNcIjogJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU3NAorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgYXdhaXRlZCB0cmlnZ2VyIHBhY2thZ2UgYCUuMjU1cyciCittc2dzdHIgImR1YmJsZXJhZCB2w6RudGFkIHV0bMO2c2FyZSBmw7ZyIHBha2V0ZXQgXCIlLjI1NXNcIiIKKworIzogbGliL2Rwa2cvZmlsZS5jOjUxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IHNvdXJjZSBmaWxlICclLjI1MHMnIgorbXNnc3RyICJrdW5kZSBpbnRlIHRhIHN0YXR1cyBww6Uga8OkbGxmaWxlbiBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy9maWxlLmM6NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoYW5nZSBvd25lcnNoaXAgb2YgdGFyZ2V0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgImt1bmRlIGludGUgw6RuZHJhIMOkZ2FuZGVza2FwIHDDpSBtw6VsZmlsZW4gXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvZmlsZS5jOjU5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgbW9kZSBvZiB0YXJnZXQgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAia3VuZGUgaW50ZSBzdMOkbGxhIGluIGzDpGdlIHDDpSBtw6VsZmlsZW4gXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvZmlsZS5jOjg1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB1bmxvY2sgJXMiCittc2dzdHIgImt1bmRlIGludGUgbMOlc2EgdXBwICVzIgorCisjOiBsaWIvZHBrZy9maWxlLmM6MTExCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGVjayBmaWxlICclcycgbG9jayBzdGF0dXMiCittc2dzdHIgImt1bmRlIGludGUgdGVzdGEgbMOlc3N0YXR1cyBmw7ZyIGZpbGVuIFwiJXNcIiIKKworIzogbGliL2Rwa2cvZmlsZS5jOjE0NgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBpcyBsb2NrZWQgYnkgYW5vdGhlciBwcm9jZXNzIgorbXNnc3RyICIlcyDDpHIgbMOlc3QgYXYgZW4gYW5uYW4gcHJvY2VzcyIKKworIzogbGliL2Rwa2cvZmlsZS5jOjE0OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gbG9jayAlcyIKK21zZ3N0ciAia3VuZGUgaW50ZSBsw6VzYSAlcyIKKworIzogbGliL2Rwa2cvbG9nLmM6NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGRuJ3Qgb3BlbiBsb2cgYCVzJzogJXNcbiIKK21zZ3N0ciAia3VuZGUgaW50ZSDDtnBwbmEgbG9nZyBcIiVzXCI6ICVzXG4iCisKKyM6IGxpYi9kcGtnL2xvZy5jOjg1Cittc2dpZCAiPHBhY2thZ2Ugc3RhdHVzIGFuZCBwcm9ncmVzcyBmaWxlIGRlc2NyaXB0b3I+IgorbXNnc3RyICI8ZmlsaGFuZHRhZyBmw7ZyIHBha2V0c3RhdHVzIG9jaCBmw7ZybG9wcD4iCisKKyM6IGxpYi9kcGtnL2xvZy5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgdG8gc3RhdHVzIGZkICVkIgorbXNnc3RyICJrdW5kZSBpbnRlIHNrcml2YSB0aWxsIHN0YXR1c2ZpbGlkZW50aWZpZXJhcmUgJWQiCisKKyM6IGxpYi9kcGtnL21saWIuYzo0NCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYyCisjLCBjLWZvcm1hdAorbXNnaWQgIm1hbGxvYyBmYWlsZWQgKCV6dSBieXRlcykiCittc2dzdHIgIm1hbGxvYyBtaXNzbHlja2FkZXMgKCV6dSBieXRlKSIKKworIzogbGliL2Rwa2cvbWxpYi5jOjU4CisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWxsb2MgZmFpbGVkICglenUgYnl0ZXMpIgorbXNnc3RyICJyZWFsbG9jIG1pc3NseWNrYWRlcyAoJXp1IGJ5dGUpIgorCisjOiBsaWIvZHBrZy9tbGliLmM6NzIgbGliL2Rwa2cvbWxpYi5jOjkwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNzcKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzozMzQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMDcKK21zZ2lkICJmYWlsZWQgdG8gYWxsb2NhdGUgbWVtb3J5IgorbXNnc3RyICJtaXNzbHlja2FkZXMgYXR0IGFsbG9rZXJhIG1pbm5lIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBkdXAgZm9yIHN0ZCVzIgorbXNnc3RyICJrdW5kZSBpbnRlIGR1cGxpY2VyYSBzdGQlcyIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEwMworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZHVwIGZvciBmZCAlZCIKK21zZ3N0ciAia3VuZGUgaW50ZSBkdXBsaWNlcmEgZmlsaGFuZHRhZyAlZCIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEwOQorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgcGlwZSIKK21zZ3N0ciAia3VuZGUgaW50ZSBza2FwYSByw7ZyIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTE3CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHdyaXRpbmcgdG8gJyVzJyIKK21zZ3N0ciAiZmVsIHZpZCBza3Jpdm5pbmcgdGlsbCBcIiVzXCIiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgZmlsZWRlc2NyaXB0b3IgZmxhZ3MgZm9yICUuMjUwcyIKK21zZ3N0ciAia3VuZGUgaW50ZSBsw6RzYSBmaWxpZGVudGlmaWVyYXJmbGFnZ29yIGbDtnIgXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEyNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IGNsb3NlLW9uLWV4ZWMgZmxhZyBmb3IgJS4yNTBzIgorbXNnc3RyICJrdW5kZSBpbnRlIHN0w6RsbGEgaW4gXCJjbG9zZS1vbi1leGVjXCItZmxhZ2dhbiBww6UgXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjYzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZpZ3VyYXRpb24gZXJyb3I6ICVzOiVkOiAlcyIKK21zZ3N0ciAia29uZmlndXJlcmluZ3NmZWw6ICVzOiVkOiAlcyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjc1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuIGNvbmZpZ3VyYXRpb24gZmlsZSAnJS4yNTVzJyBmb3IgcmVhZGluZzogJXMiCittc2dzdHIgImt1bmRlIGludGUgw7ZwcG5hIGtvbmZpZ3VyYXRpb25zZmlsZW4gXCIlLjI1NXNcIiBmw7ZyIGzDpHNuaW5nOiAlcyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmJhbGFuY2VkIHF1b3RlcyBpbiAnJXMnIgorbXNnc3RyICJvYmFsYW5zZXJhZGUgY2l0YXR0ZWNrZW4gaSBcIiVzXCIiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gJyVzJyIKK21zZ3N0ciAib2vDpG5kIGZsYWdnYSBcIiVzXCIiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBuZWVkcyBhIHZhbHVlIgorbXNnc3RyICJcIiVzXCIgdGFyIGV0dCB2w6RyZGUiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBkb2VzIG5vdCB0YWtlIGEgdmFsdWUiCittc2dzdHIgIlwiJXNcIiB0YXIgaW5nZXQgdsOkcmRlIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTMzCisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWQgZXJyb3IgaW4gY29uZmlndXJhdGlvbiBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICJmZWwgdmlkIGzDpHNuaW5nIGF2IGtvbmZpZ3VyYXRpb25zZmlsIFwiJS4yNTBzXCIiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyBjb25maWd1cmF0aW9uIGZpbGUgYCUuMjU1cyciCittc2dzdHIgImZlbCB2aWQgbMOkc25pbmcgYXYga29uZmlndXJhdGlvbnNmaWwgXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjE3MAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBvcGVuaW5nIGNvbmZpZ3VyYXRpb24gZGlyZWN0b3J5ICclcyciCittc2dzdHIgImZlbCB2aWQgw7ZwcG5pbmcgYXYga29uZmlndXJhdGlvbnNrYXRhbG9nZW4gXCIlc1wiIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjI4CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gb3B0aW9uIC0tJXMiCittc2dzdHIgIm9rw6RuZCBmbGFnZ2EgLS0lcyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjIzMgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG9wdGlvbiB0YWtlcyBhIHZhbHVlIgorbXNnc3RyICJmbGFnZ2FuIC0tJXMgdGFyIGV0dCB2w6RyZGUiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBvcHRpb24gZG9lcyBub3QgdGFrZSBhIHZhbHVlIgorbXNnc3RyICJmbGFnZ2FuIC0tJXMgdGFyIGluZ2V0IHbDpHJkZSIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI0NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiAtJWMiCittc2dzdHIgIm9rw6RuZCBmbGFnZ2EgLSVjIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjUwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0lYyBvcHRpb24gdGFrZXMgYSB2YWx1ZSIKK21zZ3N0ciAiZmxhZ2dhbiAtJWMgdGFyIGV0dCB2w6RyZGUiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiLSVjIG9wdGlvbiBkb2VzIG5vdCB0YWtlIGEgdmFsdWUiCittc2dzdHIgImZsYWdnYW4gLSVjIHRhciBpbmdldCB2w6RyZGUiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAib2Jzb2xldGUgb3B0aW9uICctLSVzJ1xuIgorbXNnc3RyICJmw7Zyw6VsZHJhZCBmbGFnZ2EgXCItLSVzXCJcbiIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI4NworIywgYy1mb3JtYXQKK21zZ2lkICJjb25mbGljdGluZyBhY3Rpb25zIC0lYyAoLS0lcykgYW5kIC0lYyAoLS0lcykiCittc2dzdHIgIm1vdHN0cmlkaWdhIMOldGfDpHJkZXIgJWMgKC0tJXMpIG9jaCAtJWMgKC0tJXMpIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgdmFsdWUgZm9yIGAlcycgZmllbGQiCittc2dzdHIgImR1YmJsZXJhdCB2w6RyZGUgZsO2ciBcIiVzXCItZsOkbHRldCIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoxNDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidXNlci1kZWZpbmVkIGZpZWxkIG5hbWUgYCUuKnMnIHRvbyBzaG9ydCIKK21zZ3N0ciAiYW52w6RuZGFyZGVmaW5pZXJhdCBmw6RsdG5hbW4gXCIlLipzXCIgZsO2ciBrb3J0IgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgdmFsdWUgZm9yIHVzZXItZGVmaW5lZCBmaWVsZCBgJS4qcyciCittc2dzdHIgImR1YmJsZXJhdCB2w6RyZGUgZsO2ciBhbnbDpG5kYXJkZWZpbmllcmF0IGbDpGx0IFwiJS4qc1wiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjIwNworbXNnaWQgIkNvbmZpZ3VyZWQtVmVyc2lvbiBmb3IgcGFja2FnZSB3aXRoIGluYXBwcm9wcmlhdGUgU3RhdHVzIgorbXNnc3RyICJDb25maWd1cmVkLVZlcnNpb24gZsO2ciBwYWtldCBtZWQgb3Bhc3NhbmRlIFN0YXR1cyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzICVzIGJ1dCB0cmlnZ2VycyBhcmUgYXdhaXRlZCIKK21zZ3N0ciAicGFrZXRldCBoYXIgc3RhdHVzICVzLCBtZW4gdXRsw7ZzYXJlIHbDpG50YXIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjIyCittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzIHRyaWdnZXJzLWF3YWl0ZWQgYnV0IG5vIHRyaWdnZXJzIGF3YWl0ZWQiCittc2dzdHIgInBha2V0ZXQgaGFyIHN0YXR1cyB0cmlnZ2Vycy1hd2FpdGVkIG1hbiBpbmdhIHV0bMO2c2FyZSB2w6RudGFyIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjIyOAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGhhcyBzdGF0dXMgJXMgYnV0IHRyaWdnZXJzIGFyZSBwZW5kaW5nIgorbXNnc3RyICJwYWtldGV0IGhhciBzdGF0dXMgJXMgbWVkIHV0bMO2c2FyZSDDpHIgZsO2cmVzdMOlZW5kZSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMzIKK21zZ2lkICJwYWNrYWdlIGhhcyBzdGF0dXMgdHJpZ2dlcnMtcGVuZGluZyBidXQgbm8gdHJpZ2dlcnMgcGVuZGluZyIKK21zZ3N0ciAicGFrZXRldCBoYXIgc3RhdHVzIHRyaWdnZXJzLXBlbmRpbmcgbWVuIGluZ2EgdXRsw7ZzYXJlIMOkciBmw7Zyc3TDpWVuZGUiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjQyCittc2dpZCAiUGFja2FnZSB3aGljaCBpbiBzdGF0ZSBub3QtaW5zdGFsbGVkIGhhcyBjb25mZmlsZXMsIGZvcmdldHRpbmcgdGhlbSIKK21zZ3N0ciAiUGFrZXQgbWVkIHN0YXR1cyBub24taW5zdGFsbGVkIGhhciBrb25maWd1cmF0aW9uc2ZpbGVyLCBnbMO2bW1lciBkZW0iCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzM1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuIHBhY2thZ2UgaW5mbyBmaWxlIGAlLjI1NXMnIGZvciByZWFkaW5nIgorbXNnc3RyICJrdW5kZSBpbnRlIMO2cHBuYSBwYWtldGluZm9ybWF0aW9uc2ZpbCBcIiUuMjU1c1wiIGbDtnIgbMOkc25pbmciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzQxCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbid0IHN0YXQgcGFja2FnZSBpbmZvIGZpbGUgYCUuMjU1cyciCittc2dzdHIgImthbiBpbnRlIHRhIHN0YXR1cyBww6UgcGFrZXRpbmZvcm1hdGlvbnNmaWwgXCIlLjI1NXNcIiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2FuJ3QgbW1hcCBwYWNrYWdlIGluZm8gZmlsZSBgJS4yNTVzJyIKK21zZ3N0ciAia2FuIGludGUgbWlubmVzbWFwcGEgcGFrZXRpbmZvcm1hdGlvbnNmaWwgXCIlLjI1NXNcIiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVhZGluZyBwYWNrYWdlIGluZm8gZmlsZSAnJS4yNTVzJyIKK21zZ3N0ciAibMOkc2VyIHBha2V0aW5mb2ZpbGVuIFwiJS4yNTVzXCIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzYzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjbG9zZSBhZnRlciByZWFkOiBgJS4yNTVzJyIKK21zZ3N0ciAia3VuZGUgaW50ZSBzdMOkbmdhIGVmdGVyIGzDpHNuaW5nOiBcIiUuMjU1c1wiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQwNAorIywgYy1mb3JtYXQKK21zZ2lkICJFT0YgYWZ0ZXIgZmllbGQgbmFtZSBgJS4qcyciCittc2dzdHIgIkZpbHNsdXQgZWZ0ZXIgZsOkbHRuYW1uIFwiJS4qc1wiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQwNworIywgYy1mb3JtYXQKK21zZ2lkICJuZXdsaW5lIGluIGZpZWxkIG5hbWUgYCUuKnMnIgorbXNnc3RyICJueXJhZHN0ZWNrZW4gaSBmw6RsdG5hbW4gXCIlLipzXCIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDEwCisjLCBjLWZvcm1hdAorbXNnaWQgIk1TRE9TIEVPRiAoXlopIGluIGZpZWxkIG5hbWUgYCUuKnMnIgorbXNnc3RyICJNU0RPUy1maWxzbHV0ICheWikgaSBmw6RsdG5hbW4gXCIlLipzXCIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDE0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpZWxkIG5hbWUgYCUuKnMnIG11c3QgYmUgZm9sbG93ZWQgYnkgY29sb24iCittc2dzdHIgImbDpGx0bmFtbmV0IFwiJS4qc1wiIG3DpXN0ZSBmw7ZsamFzIGF2IGtvbG9uIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQyNQorIywgYy1mb3JtYXQKK21zZ2lkICJFT0YgYmVmb3JlIHZhbHVlIG9mIGZpZWxkIGAlLipzJyAobWlzc2luZyBmaW5hbCBuZXdsaW5lKSIKK21zZ3N0ciAiRmlsc2x1dCBmw7ZyZSB2w6RyZGUgcMOlIGbDpGx0IFwiJS4qc1wiIChzYWtuYXIgc2lzdGEgbnlyYWRzdGVja25ldCkiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDI5CisjLCBjLWZvcm1hdAorbXNnaWQgIk1TRE9TIEVPRiBjaGFyIGluIHZhbHVlIG9mIGZpZWxkIGAlLipzJyAobWlzc2luZyBuZXdsaW5lPykiCittc2dzdHIgIk1TRE9TLWZpbHNsdXQgZsO2cmUgdsOkcmRlIHDDpSBmw6RsdCBcIiUuKnNcIiAoc2FrbmFyIG55cmFkc3RlY2tlbj8pIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQ0MAorIywgYy1mb3JtYXQKK21zZ2lkICJibGFuayBsaW5lIGluIHZhbHVlIG9mIGZpZWxkICclLipzJyIKK21zZ3N0ciAidG9tcmFkIGkgdsOkcmRldCBmw7ZyIGbDpGx0ZXQgXCIlLipzXCIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDYxCisjLCBjLWZvcm1hdAorbXNnaWQgIkVPRiBkdXJpbmcgdmFsdWUgb2YgZmllbGQgYCUuKnMnIChtaXNzaW5nIGZpbmFsIG5ld2xpbmUpIgorbXNnc3RyICJGaWxzbHV0IGludXRpIHbDpHJkZSBww6UgZsOkbHQgXCIlLipzXCIgKHNha25hciBzaXN0YSBueXJhZHN0ZWNrbmV0KSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo1NDYKK21zZ2lkICJzZXZlcmFsIHBhY2thZ2UgaW5mbyBlbnRyaWVzIGZvdW5kLCBvbmx5IG9uZSBhbGxvd2VkIgorbXNnc3RyICJmbGVyYSBwYWtldGluZm9ybWF0aW9uc3Bvc3RlciBmdW5uYSwgYmFyYSBlbiB0aWxsw6V0cyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo1NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gcGFja2FnZSBpbmZvcm1hdGlvbiBpbiBgJS4yNTVzJyIKK21zZ3N0ciAiaW5nZW4gcGFrZXRpbmZvcm1hdGlvbiBpIFwiJS4yNTVzXCIiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJwYXJzaW5nIGZpbGUgJyUuMjU1cycgbmVhciBsaW5lICVkIHBhY2thZ2UgJyUuMjU1cyc6XG4iCisiICUuMjU1cyIKK21zZ3N0ciAiIgorInRvbGthciBmaWxlbiBcIiUuMjU1c1wiIG7DpHJhIHJhZCAlZCBwYWtldCBcIiUuMjU1c1wiOlxuIgorIiAlLjI1NXMiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjQ4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJwYXJzaW5nIGZpbGUgJyUuMjU1cycgbmVhciBsaW5lICVkOlxuIgorIiAlLjI1NXMiCittc2dzdHIgIiIKKyJ0b2xrYXIgZmlsZW4gXCIlLjI1NXNcIiBuw6RyYSByYWQgJWQ6XG4iCisiICUuMjU1cyIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MTI1Cittc2dpZCAibWF5IG5vdCBiZSBlbXB0eSBzdHJpbmciCittc2dzdHIgImbDpXIgZWogdmFyYSB0b21tYSBzdHLDpG5nZW4iCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjEyNworbXNnaWQgIm11c3Qgc3RhcnQgd2l0aCBhbiBhbHBoYW51bWVyaWMgY2hhcmFjdGVyIgorbXNnc3RyICJtw6VzdGUgYsO2cmphIG1lZCBldHQgYWxmYW51bWVyaXNrdCB0ZWNrZW4iCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjEzNgorIywgYy1mb3JtYXQKK21zZ2lkICJjaGFyYWN0ZXIgYCVjJyBub3QgYWxsb3dlZCAob25seSBsZXR0ZXJzLCBkaWdpdHMgYW5kIGNoYXJhY3RlcnMgYCVzJykiCittc2dzdHIgIiIKKyJ0ZWNrbmV0IFwiJWNcIiBlaiB0aWxsw6V0ZXQgKGVuZGFzdCB0ZWNrZW4sIHNpZmZyb3Igb2NoIHRlY2tuZW4gXCIlc1wiICIKKyJ0aWxsw6V0cykiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjE3OAorbXNnY3R4dCAidmVyc2lvbiIKK21zZ2lkICI8bm9uZT4iCittc2dzdHIgIjxpbmdlbj4iCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjIwOQorbXNnaWQgInZlcnNpb24gc3RyaW5nIGlzIGVtcHR5IgorbXNnc3RyICJ2ZXJzaW9uc3N0csOkbmcgZWogdG9tIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyMjQKK21zZ2lkICJ2ZXJzaW9uIHN0cmluZyBoYXMgZW1iZWRkZWQgc3BhY2VzIgorbXNnc3RyICJ2ZXJzaW9uc3N0csOkbmcgaGFyIGluYsOkZGRhZGUgYmxhbmtzdGVnIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyMzAKK21zZ2lkICJlcG9jaCBpbiB2ZXJzaW9uIGlzIG5vdCBudW1iZXIiCittc2dzdHIgImVwb2NoIGkgdmVyc2lvbmVuIMOkciBpbnRlIGV0dCB0YWwiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjIzMgorbXNnaWQgIm5vdGhpbmcgYWZ0ZXIgY29sb24gaW4gdmVyc2lvbiBudW1iZXIiCittc2dzdHIgImluZ2VudGluZyBlZnRlciBrb2xvbiBpIHZlcnNpb25zbnVtcmV0IgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyNDcKK21zZ2lkICJ2ZXJzaW9uIG51bWJlciBkb2VzIG5vdCBzdGFydCB3aXRoIGRpZ2l0IgorbXNnc3RyICJ2ZXJzaW9uc251bXJldCBiw7ZyamFyIGludGUgbWVkIGVuIHNpZmZyYSIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjUwCittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgaW4gdmVyc2lvbiBudW1iZXIiCittc2dzdHIgImZlbGFrdGlndCB0ZWNrZW4gaSB2ZXJzaW9uc251bXJldCIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjU0Cittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgaW4gcmV2aXNpb24gbnVtYmVyIgorbXNnc3RyICJmZWxha3RpZ3QgdGVja2VuIGkgcmV2aXNpb25zbnVtcmV0IgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyOTkgbGliL2Rwa2cvcGFyc2VoZWxwLmM6MzExCisjLCBjLWZvcm1hdAorbXNnaWQgIm1pc3NpbmcgJXMiCittc2dzdHIgInNha25hdCAlcyIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MzAxIGxpYi9kcGtnL3BhcnNlaGVscC5jOjMxNAorIywgYy1mb3JtYXQKK21zZ2lkICJlbXB0eSB2YWx1ZSBmb3IgJXMiCittc2dzdHIgInRvbXQgdsOkcmRlIGbDtnIgJXMiCisKKyM6IGxpYi9kcGtnL3BrZy1mb3JtYXQuYzo4MAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGNoYXJhY3RlciBgJWMnIGluIGZpZWxkIHdpZHRoXG4iCittc2dzdHIgIm9naWx0aWd0IHRlY2tlbiBcIiVjXCIgaSBmw6RsdGJyZWRkXG4iCisKKyM6IGxpYi9kcGtnL3BrZy1mb3JtYXQuYzoxNzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2xvc2luZyBicmFjZSBtaXNzaW5nIGluIGZvcm1hdFxuIgorbXNnc3RyICJBdnNsdXRhbmRlIGtsYW1tZXJwYXJlbnRlcyBpIGZvcm1hdFxuIgorCisjOiBsaWIvZHBrZy9wa2ctc2hvdy5jOjQwCittc2dpZCAiKG5vIGRlc2NyaXB0aW9uIGF2YWlsYWJsZSkiCittc2dzdHIgIihiZXNrcml2bmluZyBzYWtuYXMpIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGlnbm9yZSBzaWduYWwgJXMgYmVmb3JlIHJ1bm5pbmcgJS4yNTBzIgorbXNnc3RyICJrdW5kZSBpbnRlIGlnbm9yZXJhIHNpZ25hbCAlcyBpbm5hbiAlLjI1MHMgc3RhcnRhcyIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjY4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHVuLWNhdGNoaW5nIHNpZ25hbCAlczogJXNcbiIKK21zZ3N0ciAia3VuZGUgaW50ZSBzdMOkbmdhIGF2IGhhbnRlcmluZyBhdiBzaWduYWxlbiAlczogJXNcbiIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjc4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIChzdWJwcm9jZXNzKTogJXNcbiIKK21zZ3N0ciAiJXMgKHVuZGVycHJvY2Vzcyk6ICVzXG4iCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzo4OSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NDU0Cittc2dpZCAiZm9yayBmYWlsZWQiCittc2dzdHIgImbDtnJncmVuaW5nIChmb3JrKSBtaXNzbHlja2FkZXMiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMTkKKyMsIGMtZm9ybWF0Cittc2dpZCAic3VicHJvY2VzcyAlcyByZXR1cm5lZCBlcnJvciBleGl0IHN0YXR1cyAlZCIKK21zZ3N0ciAidW5kZXJwcm9jZXNzZW4gJXMgZ2F2IGZlbGtvZCAlZCIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEyOAorIywgYy1mb3JtYXQKK21zZ2lkICJzdWJwcm9jZXNzICVzIHdhcyBpbnRlcnJ1cHRlZCIKK21zZ3N0ciAidW5kZXJwb3JjZXNzZW4gJXMgYXZicsO2dHMiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMzAKKyMsIGMtZm9ybWF0Cittc2dpZCAic3VicHJvY2VzcyAlcyB3YXMga2lsbGVkIGJ5IHNpZ25hbCAoJXMpJXMiCittc2dzdHIgInVuZGVycHJvY2Vzc2VuICVzIGTDtmRhZGVzIGF2IHNpZ25hbCAoJXMpJXMiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMzIKK21zZ2lkICIsIGNvcmUgZHVtcGVkIgorbXNnc3RyICIsIG1pbm5lc3V0c2tyaWZ0IHNrYXBhZCIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJzdWJwcm9jZXNzICVzIGZhaWxlZCB3aXRoIHdhaXQgc3RhdHVzIGNvZGUgJWQiCittc2dzdHIgInVuZGVycHJvY2Vzc2VuICVzIG1pc3NseWNrYWRlcyBtZWQgc3RhdHVza29kICVkIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTUxIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo0NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAid2FpdCBmb3Igc3VicHJvY2VzcyAlcyBmYWlsZWQiCittc2dzdHIgInbDpG50YW4gcMOlIHVuZGVycG9yY2Vzc2VuICVzIG1pc3NseWNrYWRlcyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBwYWNrYWdlIG5hbWUgYCUuMjUwcycgaW4gdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAib2dpbHRpZ3QgcGFrZXRuYW1uIFwiJS4yNTBzXCIgaSB1dGzDtnNhcmbDtnJkcsO2am5pbmdzZmlsZW4gXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJ1bmNhdGVkIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgInV0bMO2c2FyZsO2cmRyw7ZqbmluZ3NmaWxlbiBcIiUuMjUwc1wiIMOkciBrbGlwcHQiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjg1CisjLCBjLWZvcm1hdAorbXNnaWQgInN5bnRheCBlcnJvciBpbiB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIGF0IGNoYXJhY3RlciBgJXMnJXMiCittc2dzdHIgInN5bnRheGZlbCBpIHV0bMO2c2FyZsO2cmRyw7ZqbmluZ3NmaWxlbiBcIiUuMjUwc1wiIHZpZCB0ZWNrbmV0IFwiJXNcIiVzIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4vY3JlYXRlIHRyaWdnZXJzIGxvY2tmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrdW5kZSBpbnRlIMO2cHBuYS9za2FwYSB1dGzDtnNhcmzDpXNmaWxlbiBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNDEKK21zZ2lkICJ0cmlnZ2VycyBhcmVhIgorbXNnc3RyICJvbXLDpWRlIGbDtnIgdXRsw7ZzYXJlIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia3VuZGUgaW50ZSB0YSBzdGF0dXMgcMOlIGZpbCBmw7ZyIHVwcHNranV0bmEgdXRsw7ZzYXJlLCBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia3VuZGUgaW50ZSB0YSDDtnBwbmEgZmlsIGbDtnIgdXBwc2tqdXRuYSB1dGzDtnNhcmUsIFwiJS4yNTBzXCIiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjE3OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3Blbi9jcmVhdGUgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImt1bmRlIGludGUgw7ZwcG5hL3NrYXBhIG55IGZpbCBmw7ZyIHVwcHNranV0bmEgdXRsw7ZzYXJlLCBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoyMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcmVhZGluZyB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJmZWwgdmlkIGzDpHNuaW5nIGF2IGZpbCBmw7ZyIHVwcHNranV0bmEgdXRsw7ZzYXJlLCBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoyMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ldyB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrdW5kZSBpbnRlIHNrcml2YSBueSBmaWwgZsO2ciB1cHBza2p1dG5hIHV0bMO2c2FyZSwgXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MjI4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia3VuZGUgaW50ZSB0YSBzdMOkbmdhIG55IGZpbCBmw7ZyIHVwcHNranV0bmEgdXRsw7ZzYXJlLCBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImt1bmRlIGludGUgaW5zdGFsbGVyYSBueSBmaWwgZsO2ciB1cHBza2p1dG5hIHV0bMO2c2FyZSwgXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjIyMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiaW52YWxpZCBvciB1bmtub3duIHN5bnRheCBpbiB0cmlnZ2VyIG5hbWUgYCUuMjUwcycgKGluIHRyaWdnZXIgaW50ZXJlc3RzIGZvciAiCisicGFja2FnZSBgJS4yNTBzJykiCittc2dzdHIgIiIKKyJvZ2lsdGlnIGVsbGVyIG9rw6RuZCBzeW50YXggaSB1dGzDtnNhcm5hbW5ldCBcIiUuMjUwc1wiIChpIHV0bMO2c2FyZSBzb20gdmlzYXIgIgorImludHJlc3NlIGbDtnIgcGFrZXRldCBcIiUuMjUwc1wiKSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjI2MworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiB0cmlnZ2VyIGludGVyZXN0IGxpc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia3VuZGUgaW50ZSDDtnBwbmEgdXRsw7ZzYXJpbnRyZXNzZWxpc3RmaWxlbiBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MjkyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrdW5kZSBpbnRlIHNwb2xhIHRpbGxiYWthIHV0bMO2c2FyaW50cmVzc2VmaWxlbiBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzA1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcycgc3ludGF4IGVycm9yOyBpbGxlZ2FsIHBhY2thZ2UgbmFtZSBgJS4yNTBzJzogIgorIiUuMjUwcyIKK21zZ3N0ciAiIgorInN5bnRheGZlbCBpIHV0bMO2c2FyaW50cmVzc2VmaWxlbiBcIiUuMjUwc1wiOyBvZ2lsdGlndCBwYWtldG5hbW4gXCIlLjI1MHNcIjogIgorIiUuMjUwcyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMxOAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia3VuZGUgaW50ZSBza3JpdmEgbnkgdXRsw7ZzYXJpbnRyZXNzZWZpbCBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzIxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlICclLjI1MHMnIgorbXNnc3RyICJrdW5kZSBpbnRlIHTDtm1tYSAoZmx1c2gpIG55IHV0bMO2c2FyaW50cmVzc2VmaWwgXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMyNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlICclLjI1MHMnIgorbXNnc3RyICJrdW5kZSBpbnRlIHN5bmtyb25pc2VyYSBueSB1dGzDtnNhcmludHJlc3NlZmlsIFwiJS4yNTBzXCIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia3VuZGUgaW50ZSBpbnN0YWxsZXJhIG55IHV0bMO2c2FyaW50cmVzc2VmaWwgXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjM0MCBsaWIvZHBrZy90cmlnbGliLmM6MzQyIGxpYi9kcGtnL3RyaWdsaWIuYzo0NzIKKyM6IHNyYy9yZW1vdmUuYzoyODYgc3JjL3JlbW92ZS5jOjM3NworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVtb3ZlIGAlLjI1MHMnIgorbXNnc3RyICJrYW4gaW50ZSB0YSBib3J0IFwiJS4yNTBzXCIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozNjAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrdW5kZSBpbnRlIHNrYXBhIG55IHV0bMO2c2FyaW50cmVzc2VmaWwgXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjM4MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia3VuZGUgaW50ZSBzdMOkbmdhIG55IHV0bMO2c2FyaW50cmVzc2VmaWwgXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ1NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHVwbGljYXRlIGZpbGUgdHJpZ2dlciBpbnRlcmVzdCBmb3IgZmlsZW5hbWUgYCUuMjUwcycgYW5kIHBhY2thZ2UgYCUuMjUwcyciCittc2dzdHIgIiIKKyJkdWJibGVyYWQgZmlsdXRsw7ZzYXJpbnRyZXNzZSBmw7ZyIGZpbG5hbW5ldCBcIiUuMjUwc1wiIG9jaCBwYWtldGV0IFwiJS4yNTBzXCIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrdW5kZSBpbnRlIMO2cHBuYSBueSBmaWx1dGzDtnNhcmZpbCBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDkzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrdW5kZSBpbnRlIHNrcml2YSBueSBmaWx1dGzDtnNhcmZpbCBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDk2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlICclLjI1MHMnIgorbXNnc3RyICJrdW5kZSBpbnRlIHTDtm1tYSAoZmx1c2gpIG55IGZpbHV0bMO2c2FyZmlsIFwiJS4yNTBzXCIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0OTkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAia3VuZGUgaW50ZSBzeW5rcm9uaXNlcmEgbnkgZmlsdXRsw7ZzYXJmaWwgXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjUwMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia3VuZGUgaW50ZSBzdMOkbmdhIG55IGZpbHV0bMO2c2FyZmlsIFwiJS4yNTBzXCIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1MDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSBhcyBgJS4yNTBzJyIKK21zZ3N0ciAia3VuZGUgaW50ZSBpbnN0YWxsZXJhIG55IGZpbHV0bMO2c2FyZmlsIHNvbSBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTQyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia3VuZGUgaW50ZSBsw6RzYSBmaWx1dGzDtnNhcmZpbCBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTUyCisjLCBjLWZvcm1hdAorbXNnaWQgInN5bnRheCBlcnJvciBpbiBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgInN5bnRheGZlbCBpIGZpbHV0bMO2c2FyZmlsIFwiJS4yNTBzXCIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImZpbGUgdHJpZ2dlcnMgcmVjb3JkIG1lbnRpb25zIGlsbGVnYWwgcGFja2FnZSBuYW1lIGAlLjI1MHMnIChmb3IgaW50ZXJlc3QgaW4gIgorImZpbGUgYCUuMjUwcycpOiAlLjI1MHMiCittc2dzdHIgIiIKKyJmaWx1dGzDtnNhcnBvc3QgYW5nZXIgZGV0IG9naWx0aWdhIHBha2V0bmFtbmV0IFwiJS4yNTBzXCIgKGbDtnIgaW50cmVzc2UgZsO2ciAiCisiZmlsZW4gXCIlLjI1MHNcIik6ICUuMjUwcyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjY2NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidHJpZ2dlcnMgY2kgZmlsZSBgJS4yNTBzJyBjb250YWlucyBpbGxlZ2FsIHRyaWdnZXIgc3ludGF4IGluIHRyaWdnZXIgbmFtZSBgIgorIiUuMjUwcyc6ICUuMjUwcyIKK21zZ3N0ciAiIgorInV0bMO2c2FyLWNpLWZpbGVuIFwiJS4yNTBzXCIgaW5uZWjDpWxsZXIgb2dpbHRpZyB1dGzDtnNhcnN5bnRheCBpIHV0bMO2c2FybmFtbmV0ICIKKyIlLjI1MHM6ICUuMjUwcyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjY4NAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiB0cmlnZ2VycyBjaSBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrdW5kZSBpbnRlIMO2cHBuYSB1dGzDtnNhci1jaS1maWwgXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjY5OQorbXNnaWQgInRyaWdnZXJzIGNpIGZpbGUgY29udGFpbnMgdW5rbm93biBkaXJlY3RpdmUgc3ludGF4IgorbXNnc3RyICJ1dGzDtnNhci1jaS1maWxlbiBpbm5laMOlbGxlciBvZ2lsdGlnIHN5bnRheCBmw7ZyIGRpcmVrdGl2IgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NzEyCisjLCBjLWZvcm1hdAorbXNnaWQgInRyaWdnZXJzIGNpIGZpbGUgY29udGFpbnMgdW5rbm93biBkaXJlY3RpdmUgYCUuMjUwcyciCittc2dzdHIgInV0bMO2c2FyLWNpLWZpbGVuIGlubmVow6VsbGVyIG9rw6RudCBkaXJla3RpdiBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Nzc2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdHJpZ2dlcnMgc3RhdGUgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICJrdW5kZSBpbnRlIHNrYXBhIHV0bMO2c2Fyc3RhdHVza2F0YWxvZ2VuIFwiJS4yNTBzXCIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo3NzkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNldCBvd25lcnNoaXAgb2YgdHJpZ2dlcnMgc3RhdGUgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICJrdW5kZSBpbnRlIHPDpHR0YSDDpGdhcmUgZsO2ciB1dGzDtnNhcnN0YXR1c2thdGFsb2dlbiBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy90cmlnbmFtZS5jOjM0Cittc2dpZCAiZW1wdHkgdHJpZ2dlciBuYW1lcyBhcmUgbm90IHBlcm1pdHRlZCIKK21zZ3N0ciAidG9tbWEgdXRsw7ZzYXJuYW1uIMOkciBpbnRlIHRpbGzDpXRuYSIKKworIzogbGliL2Rwa2cvdHJpZ25hbWUuYzozOAorbXNnaWQgInRyaWdnZXIgbmFtZSBjb250YWlucyBpbnZhbGlkIGNoYXJhY3RlciIKK21zZ3N0ciAidXRsw7ZzYXJuYW1uZXQgaW5uZWjDpWxsZXIgb2dpbHRpZ3QgdGVja2VuIgorCisjOiBsaWIvZHBrZy91dGlscy5jOjU2CisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWQgZXJyb3IgaW4gYCUuMjUwcyciCittc2dzdHIgImzDpHNmZWwgaSBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy91dGlscy5jOjYxCisjLCBjLWZvcm1hdAorbXNnaWQgImZnZXRzIGdhdmUgYW4gZW1wdHkgc3RyaW5nIGZyb20gYCUuMjUwcyciCittc2dzdHIgImZnZXRzIGdhdiBlbiB0b20gc3Ryw6RuZyBmcsOlbiBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy91dGlscy5jOjYzCisjLCBjLWZvcm1hdAorbXNnaWQgInRvby1sb25nIGxpbmUgb3IgbWlzc2luZyBuZXdsaW5lIGluIGAlLjI1MHMnIgorbXNnc3RyICJmw7ZyIGzDpW5nIHJhZCBlbGxlciBzYWtuYXQgbnlyYWRzdGVja2VuIGkgXCIlLjI1MHNcIiIKKworIzogbGliL2Rwa2cvdXRpbHMuYzo3NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVvZiByZWFkaW5nIGAlLjI1MHMnIgorbXNnc3RyICJvdsOkbnRhdCBmaWxzbHV0IHZpZCBsw6RzbmluZyBhdiBcIiUuMjUwc1wiIgorCisjOiBsaWIvZHBrZy92YXJidWYuYzo4MiBsaWIvZHBrZy92YXJidWYuYzo4OAorbXNnaWQgImVycm9yIGZvcm1hdHRpbmcgc3RyaW5nIGludG8gdmFyYnVmIHZhcmlhYmxlIgorbXNnc3RyICJmZWxha3RpZyBmb3JtYXRlcmluZ3NzdHLDpG5nIGkgdmFyYnVmLXZhcmlhYmxlbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTc5IHNyYy9hcmNoaXZlcy5jOjIwMCBzcmMvYXJjaGl2ZXMuYzo3MjQKK21zZ2lkICJlcnJvciByZWFkaW5nIGZyb20gZHBrZy1kZWIgcGlwZSIKK21zZ3N0ciAiZmVsIHZpZCBsw6RzbmluZyBmcsOlbiBkcGtnLWRlYi1yw7ZyIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxOTUKKyMsIGMtZm9ybWF0Cittc2dpZCAic2tpcHBlZCB1bnBhY2tpbmcgZmlsZSAnJS4yNTVzJyAocmVwbGFjZWQgb3IgZXhjbHVkZWQ/KSIKK21zZ3N0ciAiaG9wcGFkZSDDtnZlciB1cHBhY2tuaW5nIGF2IGZpbGVuIFwiJS4yNTVzXCIgKGVyc2F0dCBlbGxlciB1dGVzbHV0ZW4/KSIKKworIzogc3JjL2FyY2hpdmVzLmM6MjQ2IHNyYy9hcmNoaXZlcy5jOjI1MAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIHRpbWVzdGFtcHMgb2YgYCUuMjU1cyciCittc2dzdHIgImZlbCBuw6RyIHRpZHNzdMOkbXBsaW5nYXJuYSBww6UgXCIlLjI1NXNcIiBza3VsbGUgc3TDpGxsYXMgaW4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjI2MgorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIG93bmVyc2hpcCBvZiBzeW1saW5rIGAlLjI1NXMnIgorbXNnc3RyICJmZWwgdmlkIGluc3TDpGxsbmluZyBhdiDDpGdhbmRlc2thcCBhdiBzeW1ib2xpc2thIGzDpG5rZW4gXCIlLjI1NXNcIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MjY1IHNyYy9hcmNoaXZlcy5jOjczNCBzcmMvc3RhdGNtZC5jOjE2MworIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIG93bmVyc2hpcCBvZiBgJS4yNTVzJyIKK21zZ3N0ciAiZmVsIG7DpHIgw6RnYW5kZXNrYXAgZsO2ciBcIiUuMjU1c1wiIHNrdWxsZSBzdMOkbGxhcyBpbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MjY3IHNyYy9hcmNoaXZlcy5jOjczNiBzcmMvc3RhdGNtZC5jOjE2NQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIHBlcm1pc3Npb25zIG9mIGAlLjI1NXMnIgorbXNnc3RyICJmZWwgbsOkciBiZWjDtnJpZ2hldCBmw7ZyIFwiJS4yNTVzXCIgc2t1bGxlIHN0w6RsbGFzIGluIgorCisjOiBzcmMvYXJjaGl2ZXMuYzozOTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHN0YXQgKGRlcmVmZXJlbmNlKSBleGlzdGluZyBzeW1saW5rIGAlLjI1MHMnIgorbXNnc3RyICIiCisia3VuZGUgaW50ZSB0YSBzdGF0dXMgcMOlIChhdnJlZmVyZXJhKSBiZWZpbnRsaWcgc3ltYm9saXNrIGzDpG5rIFwiJS4yNTBzXCIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjQxNworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZmFpbGVkIHRvIHN0YXQgKGRlcmVmZXJlbmNlKSBwcm9wb3NlZCBuZXcgc3ltbGluayB0YXJnZXQgYCUuMjUwcycgZm9yICIKKyJzeW1saW5rIGAlLjI1MHMnIgorbXNnc3RyICIiCisia3VuZGUgaW50ZSB0YSBzdGF0dXMgcMOlIChhdnJlZmVyZXJhKSBmw7ZyZXNsYWdldCBueXR0IG3DpWwgXCIlLjI1MHNcIiBmw7ZyICIKKyJzeW1ib2xpc2sgbMOkbmsgXCIlLjI1MHNcIiIKKworIzogc3JjL2FyY2hpdmVzLmM6NDc1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ0cnlpbmcgdG8gb3ZlcndyaXRlIGAlLjI1MHMnLCB3aGljaCBpcyB0aGUgZGl2ZXJ0ZWQgdmVyc2lvbiBvZiBgIgorIiUuMjUwcycgKHBhY2thZ2U6ICUuMTAwcykiCittc2dzdHIgIiIKKyJmw7Zyc8O2a3RlIHNrcml2YSDDtnZlciBcIiUuMjUwc1wiLCB2aWxrZXQgw6RyIGRlbiBvbWRpcmlnZXJhZGUgdmFyaWFudGVuIGF2ICIKKyJcIiUuMjUwc1wiIChwYWtldDogJS4xMDBzKSIKKworIzogc3JjL2FyY2hpdmVzLmM6NDgxCisjLCBjLWZvcm1hdAorbXNnaWQgInRyeWluZyB0byBvdmVyd3JpdGUgYCUuMjUwcycsIHdoaWNoIGlzIHRoZSBkaXZlcnRlZCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICIiCisiZsO2cnPDtmt0ZSBza3JpdmEgw7Z2ZXIgXCIlLjI1MHNcIiwgdmlsa2V0IMOkciBkZW4gb21kaXJpZ2VyYWRlIHZhcmlhbnRlbiBhdiAiCisiXCIlLjI1MHNcIiIKKworIzogc3JjL2FyY2hpdmVzLmM6NTExCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGAlLjI1NXMnICh3aGljaCBJIHdhcyBhYm91dCB0byBpbnN0YWxsKSIKK21zZ3N0ciAiIgorImt1bmRlIGludGUgbMOkc2Egc3RhdHVzIGbDtnIgXCIlLjI1NXNcIiAodmlsa2V0IHZhciB2YWQgamFnIGp1c3Qgc2t1bGxlICIKKyJpbnN0YWxsZXJhKSIKKworIzogc3JjL2FyY2hpdmVzLmM6NTE5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1bmFibGUgdG8gY2xlYW4gdXAgbWVzcyBzdXJyb3VuZGluZyBgJS4yNTVzJyBiZWZvcmUgaW5zdGFsbGluZyBhbm90aGVyICIKKyJ2ZXJzaW9uIgorbXNnc3RyICIiCisia3VuZGUgaW50ZSByZW5zYSB1cHAgaSByw7ZyYW4gcnVudCBcIiUuMjU1c1wiIGlubmFuIGVuIG55IHZlcnNpb24gaW5zdGFsbGVyYXMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjUyNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCByZXN0b3JlZCBgJS4yNTVzJyBiZWZvcmUgaW5zdGFsbGluZyBhbm90aGVyIHZlcnNpb24iCittc2dzdHIgIiIKKyJrdW5kZSBpbnRlIHRhIHN0YXR1cyBww6Ugw6V0ZXJzdMOkbGxkIFwiJS4yNTVzXCIgaW5uYW4gZW4gbnkgdmVyc2lvbiBpbnN0YWxsZXJhcyIKKworIzogc3JjL2FyY2hpdmVzLmM6NTYxCisjLCBjLWZvcm1hdAorbXNnaWQgImFyY2hpdmUgY29udGFpbmVkIG9iamVjdCBgJS4yNTVzJyBvZiB1bmtub3duIHR5cGUgMHgleCIKK21zZ3N0ciAiYXJraXZldCBpbm5laMOlbGxlciBvYmpla3RldCBcIiUuMjU1c1wiIGF2IG9rw6RuZCB0eXAgMHgleCIKKworIzogc3JjL2FyY2hpdmVzLmM6NjI2IHNyYy9kaXZlcnRjbWQuYzoxNTAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjY4MgorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMjIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyODQKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNDQxIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNjgwCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE2NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI0NAorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHN0YXQgZmlsZSAnJXMnIgorbXNnc3RyICJrYW4gaW50ZSB0YSBzdGF0dXMgcMOlIGZpbGVuIFwiJXNcIiIKKworIzogc3JjL2FyY2hpdmVzLmM6NjQxCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlcGxhY2luZyBmaWxlcyBpbiBvbGQgcGFja2FnZSAlcyAuLi5cbiIKK21zZ3N0ciAiRXJzw6R0dGVyIGZpbGVyIGkgZGV0IGdhbWxhIHBha2V0ZXQgJXMgLi4uXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjY0NQorIywgYy1mb3JtYXQKK21zZ2lkICJSZXBsYWNlZCBieSBmaWxlcyBpbiBpbnN0YWxsZWQgcGFja2FnZSAlcyAuLi5cbiIKK21zZ3N0ciAiRXJzw6R0dGEgYXYgZmlsZXIgaSBkZXQgaW5zdGFsbGVyYWRlIHBha2V0ZXQgJXMgLi4uXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjY1NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidHJ5aW5nIHRvIG92ZXJ3cml0ZSBkaXJlY3RvcnkgJyUuMjUwcycgaW4gcGFja2FnZSAlLjI1MHMgJS4yNTBzIHdpdGggIgorIm5vbmRpcmVjdG9yeSIKK21zZ3N0ciAiIgorImbDtnJzw7ZrZXIgc2tyaXZhIMO2dmVyIGthdGFsb2dlbiBcIiUuMjUwc1wiIGZyw6VuIHBha2V0ZXQgJS4yNTBzICUuMjUwcyBtZWQgIgorImlja2Uta2F0YWxvZyIKKworIzogc3JjL2FyY2hpdmVzLmM6NjYxCisjLCBjLWZvcm1hdAorbXNnaWQgInRyeWluZyB0byBvdmVyd3JpdGUgJyUuMjUwcycsIHdoaWNoIGlzIGFsc28gaW4gcGFja2FnZSAlLjI1MHMgJS4yNTBzIgorbXNnc3RyICIiCisiZsO2cnPDtmtlciBza3JpdmEgw7Z2ZXIgXCIlLjI1MHNcIiBzb20gb2Nrc8OlIGZpbm5zIGkgcGFrZXRldCAlLjI1MHMgJS4yNTBzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3MTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBgJS4yNTVzJyAod2hpbGUgcHJvY2Vzc2luZyBgJS4yNTVzJykiCittc2dzdHIgImt1bmRlIGludGUgc2thcGEgXCIlLjI1NXNcIiAodmlkIGhhbnRlcmluZyBhdiBcIiUuMjU1c1wiKSIKKworIzogc3JjL2FyY2hpdmVzLmM6NzE4CisjLCBjLWZvcm1hdAorbXNnaWQgImJhY2tlbmQgZHBrZy1kZWIgZHVyaW5nIGAlLjI1NXMnIgorbXNnc3RyICJiYWvDpG5kYW4gZHBrZy1kZWIgdW5kZXIgXCIlLjI1NXNcIiIKKworIzogc3JjL2FyY2hpdmVzLmM6NzQ0IHNyYy9hcmNoaXZlcy5jOjkwOCBzcmMvYXJjaGl2ZXMuYzo5NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZy93cml0aW5nIGAlLjI1NXMnIgorbXNnc3RyICJmZWwgdmlkIHN0w6RuZ25pbmcvc2tyaXZuaW5nIFwiJS4yNTVzXCIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc0OAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBwaXBlIGAlLjI1NXMnIgorbXNnc3RyICJmZWwgdmlkIHNrYXBhbmRlIGF2IHLDtnJldCBcIiUuMjU1c1wiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NTMgc3JjL2FyY2hpdmVzLmM6NzU4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIGRldmljZSBgJS4yNTVzJyIKK21zZ3N0ciAiZmVsIHZpZCBza2FwYW5kZSBhdiBlbmhldGVuIFwiJS4yNTVzXCIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc3MQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBoYXJkIGxpbmsgYCUuMjU1cyciCittc2dzdHIgImZlbCB2aWQgc2thcGFuZGUgYXYgaMOlcmRhIGzDpG5rZW4gXCIlLjI1NXNcIiIKKworIzogc3JjL2FyY2hpdmVzLmM6Nzc3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo1MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgc3ltYm9saWMgbGluayBgJS4yNTVzJyIKK21zZ3N0ciAiZmVsIHZpZCBza2FwYW5kZSBhdiBzeW1ib2xpc2thIGzDpG5rZW4gXCIlLjI1NXNcIiIKKworIzogc3JjL2FyY2hpdmVzLmM6NzgzCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIGRpcmVjdG9yeSBgJS4yNTVzJyIKK21zZ3N0ciAiZmVsIHZpZCBza2FwYW5kZSBhdiBrYXRhbG9nZW4gXCIlLjI1NXNcIiIKKworIzogc3JjL2FyY2hpdmVzLmM6ODIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBtb3ZlIGFzaWRlIGAlLjI1NXMnIHRvIGluc3RhbGwgbmV3IHZlcnNpb24iCittc2dzdHIgImt1bmRlIGludGUgZmx5dHRhIHVuZGFuIFwiJS4yNTVzXCIgZsO2ciBhdHQgaW5zdGFsbGVyYSBueSB2ZXJzaW9uIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4MzIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjMyMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBsaW5rIGAlLjI1NXMnIgorbXNnc3RyICJrdW5kZSBpbnRlIGzDpHNhIGzDpG5rZW4gXCIlLjI1NXNcIiIKKworIzogc3JjL2FyY2hpdmVzLmM6ODM0IHNyYy9jb25maWd1cmUuYzo0MjMKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ltYm9saWMgbGluayAnJS4yNTBzJyBzaXplIGhhcyBjaGFuZ2VkIGZyb20gJWpkIHRvICV6ZCIKK21zZ3N0ciAiIgorInN0b3JsZWtlbiBww6UgZGVuIHN5bWJvbGlza2EgbMOkbmtlbiBcIiUuMjUwc1wiIGhhciDDpG5kcmF0cyBmcsOlbiAlamQgdGlsbCAlemQiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjgzOQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gbWFrZSBiYWNrdXAgc3ltbGluayBmb3IgYCUuMjU1cyciCittc2dzdHIgImt1bmRlIGludGUgc8Oka2VyaGV0c2tvcGllcmEgc3ltYm9saXNrIGzDpG5rIGbDtnIgXCIlLjI1NXNcIiIKKworIzogc3JjL2FyY2hpdmVzLmM6ODQxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaG93biBiYWNrdXAgc3ltbGluayBmb3IgYCUuMjU1cyciCittc2dzdHIgIiIKKyJrdW5kZSBpbnRlIGJ5dGEgw6RnYXJlIHDDpSBzw6RrZXJoZXRza29waWVyYWQgc3ltYm9saXNrIGzDpG5rIGbDtnIgXCIlLjI1NXNcIiIKKworIzogc3JjL2FyY2hpdmVzLmM6ODQ2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBtYWtlIGJhY2t1cCBsaW5rIG9mIGAlLjI1NXMnIGJlZm9yZSBpbnN0YWxsaW5nIG5ldyB2ZXJzaW9uIgorbXNnc3RyICIiCisia3VuZGUgaW50ZSBza2FwYSBzw6RrZXJoZXRza29waWVyYWQgbMOkbmsgYXYgXCIlLjI1NXNcIiBpbm5hbiBkZW4gbnlhICIKKyJ2ZXJzaW9uZW4gaW5zdGFsbGVyYXMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjg2MyBzcmMvYXJjaGl2ZXMuYzo5NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IHZlcnNpb24gb2YgYCUuMjU1cyciCittc2dzdHIgImt1bmRlIGludGUgaW5zdGFsbGVyYSBueSB2ZXJzaW9uIGF2IFwiJS4yNTVzXCIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjkwMiBzcmMvYXJjaGl2ZXMuYzo5NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gJyUuMjU1cyciCittc2dzdHIgImt1bmRlIGludGUgw7ZwcG5hIFwiJS4yNTVzXCIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjk0NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBmaWxlICclLjI1NXMnIgorbXNnc3RyICJrdW5kZSBpbnRlIHN5bmtyb25pc2VyYSBmaWxlbiBcIiUuMjUwc1wiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDAwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpZ25vcmluZyBkZXBlbmRlbmN5IHByb2JsZW0gd2l0aCAlczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImlnbm9yZXJhciBiZXJvZW5kZXByb2JsZW0gbWVkICVzOlxuIgorIiVzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDA1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJjb25zaWRlcmluZyBkZWNvbmZpZ3VyYXRpb24gb2YgZXNzZW50aWFsXG4iCisiIHBhY2thZ2UgJXMsIHRvIGVuYWJsZSAlcy4iCittc2dzdHIgIiIKKyJmdW5kZXJhciBww6UgYXR0IGF2a29uZmlndXJlcmEgZGV0IHN5c3RlbWtyaXRpc2thXG4iCisiIHBha2V0ZXQgJXMgZsO2ciBhdHQgYWt0aXZlcmEgJXMuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDA4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBubywgJXMgaXMgZXNzZW50aWFsLCB3aWxsIG5vdCBkZWNvbmZpZ3VyZVxuIgorIiBpdCBpbiBvcmRlciB0byBlbmFibGUgJXMuXG4iCittc2dzdHIgIiIKKyJkcGtnOiBuZWosICVzIMOkciBzeXN0ZW1rcml0aXNrdCwga29tbWVyIGludGUgYXR0IGF2a29uZmlndXJlcmFcbiIKKyIgZGV0IGbDtnIgYXR0IGFrdGl2ZXJhICVzLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDIyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBubywgY2Fubm90IHByb2NlZWQgd2l0aCAlcyAoLS1hdXRvLWRlY29uZmlndXJlIHdpbGwgaGVscCk6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiBuZWosIGthbiBmb3J0c8OkdHRhIG1lZCAlcyAoLS1hdXRvLWRlY29uZmlndXJlIGhqw6RscGVyKTpcbiIKKyIlcyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAzMgorIywgYy1mb3JtYXQKK21zZ2lkICJyZW1vdmFsIG9mICUuMjUwcyIKK21zZ3N0ciAiYm9ydHRhZ25pbmcgYXYgJS4yNTBzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDU3CisjLCBjLWZvcm1hdAorbXNnaWQgImluc3RhbGxhdGlvbiBvZiAlLjI1MHMiCittc2dzdHIgImluc3RhbGxhdGlvbiBhdiBcIiUuMjU1c1wiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDU4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBjb25zaWRlcmluZyBkZWNvbmZpZ3VyYXRpb24gb2YgJXMsIHdoaWNoIHdvdWxkIGJlIGJyb2tlbiBieSAlcyAuLi5cbiIKK21zZ3N0ciAiIgorImRwa2c6IGZ1bmRlcmFyIHDDpSBhdHQgYXZrb25maWd1cmVyYSAlcywgdmlsa2V0IHNrdWxsZSBmw7Zyc3TDtnJhcyBhdiAlcyAuLi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA2NQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiB5ZXMsIHdpbGwgZGVjb25maWd1cmUgJXMgKGJyb2tlbiBieSAlcykuXG4iCittc2dzdHIgImRwa2c6IGphLCBrb21tZXIgYXR0IGF2a29uZmlndXJlcmEgJXMgKGbDtnJzdMO2cnMgYXYgJXMpLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDY5IHNyYy9hcmNoaXZlcy5jOjExODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IHJlZ2FyZGluZyAlcyBjb250YWluaW5nICVzOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogYW5nw6VlbmRlICVzIHNvbSBpbm5laMOlbGxlciAlczpcbiIKKyIlcyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA3NworbXNnaWQgImlnbm9yaW5nIGJyZWFrYWdlLCBtYXkgcHJvY2VlZCBhbnl3YXkhIgorbXNnc3RyICJpZ25vcmVyYXIgZsO2cnN0w7ZyZWxzZSwga2FuIMOkbmTDpSBmb3J0c8OkdHRhISIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA4MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiaW5zdGFsbGluZyAlLjI1MHMgd291bGQgYnJlYWsgJS4yNTBzLCBhbmRcbiIKKyIgZGVjb25maWd1cmF0aW9uIGlzIG5vdCBwZXJtaXR0ZWQgKC0tYXV0by1kZWNvbmZpZ3VyZSBtaWdodCBoZWxwKSIKK21zZ3N0ciAiIgorImluc3RhbGxhdGlvbiBhdiAlLjI1MHMgc2t1bGxlIGbDtnJzdMO2cmEgJS4yNTBzLCBvY2hcbiIKKyIgYXZrb25maWd1cmVyaW5nIHRpbGzDpXRzIGludGUgKC0tYXV0by1kZWNvbmZpZ3VyZSBrYW5za2UgaGrDpGxwZXIpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDg2CisjLCBjLWZvcm1hdAorbXNnaWQgImluc3RhbGxpbmcgJS4yNTBzIHdvdWxkIGJyZWFrIGV4aXN0aW5nIHNvZnR3YXJlIgorbXNnc3RyICJpbnN0YWxsYXRpb24gYXYgJS4yNTBzIHNrdWxsZSBmw7Zyc3TDtnJhIGJlZmludGxpZ2EgcHJvZ3JhbSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTExNgorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiBjb25zaWRlcmluZyByZW1vdmluZyAlcyBpbiBmYXZvdXIgb2YgJXMgLi4uXG4iCittc2dzdHIgImRwa2c6IGZ1bmRlcmFyIHDDpSBhdHQgdGEgYm9ydCAlcyB0aWxsIGbDtnJtw6VuIGbDtnIgJXMgLi4uXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgaXMgbm90IHByb3Blcmx5IGluc3RhbGxlZCAtIGlnbm9yaW5nIGFueSBkZXBlbmRlbmNpZXMgb24gaXQuXG4iCittc2dzdHIgIiVzIMOkciBlaiBrb3JyZWt0IGluc3RhbGxlcmF0IC0gaWdub3JlcmFyIGRlc3MgYmVyb2VuZGVuLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTUxCisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IG1heSBoYXZlIHRyb3VibGUgcmVtb3ZpbmcgJXMsIGFzIGl0IHByb3ZpZGVzICVzIC4uLlxuIgorbXNnc3RyICIiCisiZHBrZzoga2FuIGhhIHByb2JsZW0gYXR0IHRhIGJvcnQgJXMsIGVmdGVyc29tIGRldCB0aWxsaGFuZGFow6VsbGVyICVzIC4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTY2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBwYWNrYWdlICVzIHJlcXVpcmVzIHJlaW5zdGFsbGF0aW9uLCBidXQgd2lsbCByZW1vdmUgYW55d2F5IGFzIHlvdSAiCisicmVxdWVzdGVkLlxuIgorbXNnc3RyICIiCisiZHBrZzogcGFrZXRldCAlcyBtw6VzdGUgb21pbnN0YWxsZXJhcywgbWVuIHRhciBib3J0IGRldCDDpG5kw6UgZW5saWd0IGRpdHQgIgorIsO2bnNrZW3DpWwuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExNjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogcGFja2FnZSAlcyByZXF1aXJlcyByZWluc3RhbGxhdGlvbiwgd2lsbCBub3QgcmVtb3ZlLlxuIgorbXNnc3RyICJkcGtnOiBwYWtldGV0ICVzIGtyw6R2ZXIgw6V0ZXJpbnN0YWxsYXRpb24sIHRhciBpbnRlIGJvcnQuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogeWVzLCB3aWxsIHJlbW92ZSAlcyBpbiBmYXZvdXIgb2YgJXMuXG4iCittc2dzdHIgImRwa2c6IGphLCBrb21tZXIgYXR0IHRhIGJvcnQgJXMgdGlsbCBmw7ZybcOlbiBmw7ZyICVzLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTkwCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZsaWN0aW5nIHBhY2thZ2VzIC0gbm90IGluc3RhbGxpbmcgJS4yNTBzIgorbXNnc3RyICJwYWtldGtvbmZsaWt0IC0gaW5zdGFsbGVyYXIgaW50ZSAlLjI1MHMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExOTEKK21zZ2lkICJpZ25vcmluZyBjb25mbGljdCwgbWF5IHByb2NlZWQgYW55d2F5ISIKK21zZ3N0ciAiaWdub3JlcmFyIGtvbmZsaWt0LCBrYW4gw6RuZMOlIGZvcnRzw6R0dGEhIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjM1CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgLS1yZWN1cnNpdmUgbmVlZHMgYXQgbGVhc3Qgb25lIHBhdGggYXJndW1lbnQiCittc2dzdHIgIi0tJXMgLS1yZWN1cnNpdmUga3LDpHZlciDDpXRtaW5zdG9uZSBldHQgc8O2a3bDpGdzYXJndW1lbnQiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNDUKK21zZ2lkICJmaW5kIGZvciBkcGtnIC0tcmVjdXJzaXZlIgorbXNnc3RyICJmaW5kIGbDtnIgZHBrZyAtLXJlY3Vyc2l2ZSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI2NgorbXNnaWQgImZhaWxlZCB0byBmZG9wZW4gZmluZCdzIHBpcGUiCittc2dzdHIgImt1bmRlIGludGUgYW5zbHV0YSBmaWwgdGlsbCBmaW5kcyByw7ZyIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjcyCittc2dpZCAiZXJyb3IgcmVhZGluZyBmaW5kJ3MgcGlwZSIKK21zZ3N0ciAia3VuZGUgaW50ZSBsw6RzYSBmcsOlbiBmaW5kcyByw7ZyIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjczCittc2dpZCAiZXJyb3IgY2xvc2luZyBmaW5kJ3MgcGlwZSIKK21zZ3N0ciAiZmVsIHZpZCBzdMOkbmduaW5nIGF2IGZpbmRzIHLDtnIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmluZCBmb3IgLS1yZWN1cnNpdmUgcmV0dXJuZWQgdW5oYW5kbGVkIGVycm9yICVpIgorbXNnc3RyICJmaW5kIGbDtnIgLS1yZWN1cnNpdmUgcmV0dXJuZXJhZGUgb2hhbnRlcmF0IGZlbCAlaSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3OQorbXNnaWQgInNlYXJjaGVkLCBidXQgZm91bmQgbm8gcGFja2FnZXMgKGZpbGVzIG1hdGNoaW5nICouZGViKSIKK21zZ3N0ciAic8O2a3RlLCBtZW4gaGl0dGFkZSBpbmdhIHBha2V0IChmaWxlciBzb20gbWF0Y2hhciAqLmRlYikiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhdCBsZWFzdCBvbmUgcGFja2FnZSBhcmNoaXZlIGZpbGUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMga3LDpHZlciDDpXRtaW5zdG9uZSBldHQgYXJndW1lbnQgc29tIMOkciBlbiBwYWtldGZpbCIKKworIzogc3JjL2FyY2hpdmVzLmM6MTMyNSBzcmMvZGl2ZXJ0Y21kLmM6Nzggc3JjL2RpdmVydGNtZC5jOjExOAorIzogc3JjL2VucXVpcnkuYzoxNjYgc3JjL2VucXVpcnkuYzoyNzkgc3JjL2VucXVpcnkuYzo0NDkgc3JjL2VucXVpcnkuYzo0NTEKKyM6IHNyYy9lbnF1aXJ5LmM6NDY0IHNyYy9tYWluLmM6NjYgc3JjL21haW4uYzoxNjMgc3JjL21haW4uYzozMTQKKyM6IHNyYy9tYWluLmM6NDkzIHNyYy9wYWNrYWdlcy5jOjI1NCBzcmMvcXVlcnljbWQuYzoyNTIgc3JjL3F1ZXJ5Y21kLmM6MzU1CisjOiBzcmMvcXVlcnljbWQuYzozOTYgc3JjL3F1ZXJ5Y21kLmM6NDA0IHNyYy9xdWVyeWNtZC5jOjQ0OCBzcmMvcXVlcnljbWQuYzo1MTcKKyM6IHNyYy9xdWVyeWNtZC5jOjYwNiBzcmMvcXVlcnljbWQuYzo2NTAgc3JjL3NlbGVjdC5jOjc5IHNyYy9zdGF0Y21kLmM6NjgKKyM6IHNyYy9zdGF0Y21kLmM6OTggc3JjL3RyaWdjbWQuYzo1OCBzcmMvdHJpZ2NtZC5jOjkwIGRwa2ctZGViL2J1aWxkLmM6NDQxCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjE3IGRwa2ctZGViL2V4dHJhY3QuYzoyNTAgZHBrZy1kZWIvaW5mby5jOjIwMworIzogZHBrZy1kZWIvaW5mby5jOjI2NSBkcGtnLWRlYi9tYWluLmM6NjAgZHBrZy1kZWIvbWFpbi5jOjEyNgorIzogZHBrZy1zcGxpdC9pbmZvLmM6MjU3IGRwa2ctc3BsaXQvbWFpbi5jOjU0IGRwa2ctc3BsaXQvbWFpbi5jOjk4CisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTQ0IGRwa2ctc3BsaXQvcXVldWUuYzoyODAKK21zZ2lkICI8c3RhbmRhcmQgb3V0cHV0PiIKK21zZ3N0ciAiPHN0YW5kYXJkIHV0PiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTMyNiBzcmMvcGFja2FnZXMuYzoyNTUgc3JjL3F1ZXJ5Y21kLmM6MjUzCisjOiBzcmMvcXVlcnljbWQuYzozNTMgc3JjL3F1ZXJ5Y21kLmM6NDU0IHNyYy9xdWVyeWNtZC5jOjUxOCBzcmMvc2VsZWN0LmM6ODAKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjE2OSBkcGtnLXNwbGl0L3F1ZXVlLmM6MjE4Cittc2dpZCAiPHN0YW5kYXJkIGVycm9yPiIKK21zZ3N0ciAiPHN0YW5kYXJkIGZlbD4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzNjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2VsZWN0aW5nIHByZXZpb3VzbHkgdW5zZWxlY3RlZCBwYWNrYWdlICVzLlxuIgorbXNnc3RyICJWw6RsamVyIHRpZGlnYXJlIGVqIHZhbHQgcGFrZXQgJXMuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2tpcHBpbmcgdW5zZWxlY3RlZCBwYWNrYWdlICVzLlxuIgorbXNnc3RyICJIb3BwYXIgw7Z2ZXIgZWogdmFsdCBwYWtldCAlcy5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTM4NworIywgYy1mb3JtYXQKK21zZ2lkICJWZXJzaW9uICUuMjUwcyBvZiAlLjI1MHMgYWxyZWFkeSBpbnN0YWxsZWQsIHNraXBwaW5nLlxuIgorbXNnc3RyICJWZXJzaW9uICUuMjUwcyBhdiAlLjI1MHMgcmVkYW4gaW5zdGFsbGVyYXQsIGhvcHBhciDDtnZlci5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTM5NworIywgYy1mb3JtYXQKK21zZ2lkICJkb3duZ3JhZGluZyAlLjI1MHMgZnJvbSAlLjI1MHMgdG8gJS4yNTBzLiIKK21zZ3N0ciAibmVkZ3JhZGVyYXIgJS4yNTBzIGZyw6VuICUuMjUwcyB0aWxsICUuMjUwcy4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjE0MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiV2lsbCBub3QgZG93bmdyYWRlICUuMjUwcyBmcm9tIHZlcnNpb24gJS4yNTBzIHRvICUuMjUwcywgc2tpcHBpbmcuXG4iCittc2dzdHIgIiIKKyJOZWRncmFkZXJhciBpbnRlICUuMjUwcyBmcsOlbiB2ZXJzaW9uICUuMjUwcyB0aWxsICUuMjUwcywgaG9wcGFyIMO2dmVyLlxuIgorCisjOiBzcmMvY2xlYW51cC5jOjg2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1bmFibGUgdG8gcmVtb3ZlIG5ld2x5LWluc3RhbGxlZCB2ZXJzaW9uIG9mIGAlLjI1MHMnIHRvIGFsbG93IHJlaW5zdGFsbGF0aW9uICIKKyJvZiBiYWNrdXAgY29weSIKK21zZ3N0ciAiIgorImt1bmRlIGludGUgdGEgYm9ydCBueXNzIGluc3RhbGxlcmFkIHZlcnNpb24gYXYgXCIlLjI1MHNcIiBmw7ZyIGF0dCBtw7ZqbGlnZ8O2cmEgIgorIsOldGVyaW5zdGFsbGF0aW9uIGF2IHPDpGtlcmhldHNrb3BpYSIKKworIzogc3JjL2NsZWFudXAuYzo5MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVzdG9yZSBiYWNrdXAgdmVyc2lvbiBvZiBgJS4yNTBzJyIKK21zZ3N0ciAia3VuZGUgaW50ZSDDpXRlcnN0w6RsbGEgc8Oka2VyaGV0c2tvcGllcmFkIHZlcnNpb24gYXYgXCIlLjI1MHNcIiIKKworIzogc3JjL2NsZWFudXAuYzo5NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIGJhY2t1cCBjb3B5IG9mICclLjI1MHMnIgorbXNnc3RyICJrdW5kZSBpbnRlIHRhIGJvcnQgc8Oka2VyaGV0c2tvcGllcmFkIHZlcnNpb24gYXYgXCIlLjI1MHNcIiIKKworIzogc3JjL2NsZWFudXAuYzoxMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBuZXdseS1pbnN0YWxsZWQgdmVyc2lvbiBvZiBgJS4yNTBzJyIKK21zZ3N0ciAia3VuZGUgaW50ZSB0YSBib3J0IG55aW5zdGFsbGVyYWQgdmVyc2lvbiBhdiBcIiUuMjUwc1wiIgorCisjOiBzcmMvY2xlYW51cC5jOjEwOAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIG5ld2x5LWV4dHJhY3RlZCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICJrdW5kZSBpbnRlIHRhIGJvcnQgbnlzcyB1cHBhY2thZCB2ZXJzaW9uIGF2IFwiJS4yNTBzXCIiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgbmV3IGRpc3RyaWJ1dGVkIGNvbmZmaWxlICclLjI1MHMnIgorbXNnc3RyICJrdW5kZSBpbnRlIHRhIHN0YXR1cyBww6UgbnkgZGlzdHJpYnVlcmFkIGtvbmZpZ3VyYXRpb25zZmlsIFwiJS4yNTBzXCIiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgY3VycmVudCBpbnN0YWxsZWQgY29uZmZpbGUgYCUuMjUwcyciCittc2dzdHIgImt1bmRlIGludGUgdGEgc3RhdHVzIHDDpSBudSBpbnN0YWxsZXJhZCBrb25maWd1cmF0aW9uc2ZpbCBcIiUuMjUwc1wiIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTI2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJDb25maWd1cmF0aW9uIGZpbGUgYCVzJywgZG9lcyBub3QgZXhpc3Qgb24gc3lzdGVtLlxuIgorIkluc3RhbGxpbmcgbmV3IGNvbmZpZyBmaWxlIGFzIHlvdSByZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiIKKyJcbiIKKyJLb25maWd1cmF0aW9uc2ZpbGVuIFwiJXNcIiBleGlzdGVyYXIgaW50ZSBww6UgZGl0dCBzeXN0ZW0uXG4iCisiSW5zdGFsbGVyYXIgbnkga29uZmlndXJhdGlvbnNmaWwgZW5saWd0IMO2bnNrZW3DpWwuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzoxNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW1vdmUgb2xkIGJhY2t1cCAnJS4yNTBzJzogJXMiCittc2dzdHIgIiVzOiBtaXNzbHlja2FkZXMgbWVkIGF0dCB0YSBib3J0IGdhbW1hbCBzw6RrZXJoZXRza29waWEgXCIlLjI1MHNcIjogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW5hbWUgJyUuMjUwcycgdG8gJyUuMjUwcyc6ICVzIgorbXNnc3RyICIlczogbWlzc2x5Y2thZGVzIG1lZCBhdHQgbmFtbsOkbmRyYSBcIiUuMjUwc1wiIHRpbGwgXCIlLjI1MHNcIjogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW1vdmUgJyUuMjUwcyc6ICVzIgorbXNnc3RyICIlczogbWlzc2x5Y2thZGVzIG1lZCBhdHQgdGEgYm9ydCBcIiUuMjUwc1wiOiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE4OAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIHJlbW92ZSBvbGQgZGlzdHJpYnV0ZWQgdmVyc2lvbiAnJS4yNTBzJzogJXMiCittc2dzdHIgIiIKKyIlczogbWlzc2x5Y2thZGVzIG1lZCBhdHQgdGEgYm9ydCB0aWRpZ2FyZSBkaXN0cmlidWVyYWQgdmVyc2lvbiBcIiUuMjUwc1wiOiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE5MgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIHJlbW92ZSAnJS4yNTBzJyAoYmVmb3JlIG92ZXJ3cml0ZSk6ICVzIgorbXNnc3RyICIlczogbWlzc2x5Y2thZGVzIG1lZCBhdHQgdGEgYm9ydCBcIiUuMjUwc1wiIChmw7ZyZSDDtnZlcnNrcml2bmluZyk6ICVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTk2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gbGluayAnJS4yNTBzJyB0byAnJS4yNTBzJzogJXMiCittc2dzdHIgIiVzOiBtaXNzbHlja2FkZXMgbWVkIGF0dCBsw6Rua2EgXCIlLjI1MHNcIiB0aWxsIFwiJS4yNTBzXCI6ICVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjAwCisjLCBjLWZvcm1hdAorbXNnaWQgIkluc3RhbGxpbmcgbmV3IHZlcnNpb24gb2YgY29uZmlnIGZpbGUgJXMgLi4uXG4iCittc2dzdHIgIkluc3RhbGxlcmFyIG55IHZlcnNpb24gYXYga29uZmlndXJhdGlvbnNmaWxlbiAlcyAuLi5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjIwNiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NTQ2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIGAlLjI1MHMnIGFzIGAlLjI1MHMnIgorbXNnc3RyICJrdW5kZSBpbnRlIGluc3RhbGxlcmEgXCIlLjI1MHNcIiBzb20gXCIlLjI1MHNcIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI1NworIywgYy1mb3JtYXQKK21zZ2lkICJubyBwYWNrYWdlIG5hbWVkIGAlcycgaXMgaW5zdGFsbGVkLCBjYW5ub3QgY29uZmlndXJlIgorbXNnc3RyICJpbmdldCBwYWtldCBtZWQgbmFtbmV0IFwiJXNcIiDDpHIgaW5zdGFsbGVyYXQsIGthbiBpbnRlIGtvbmZpZ3VyZXJhIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjYwCisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgJS4yNTBzIGlzIGFscmVhZHkgaW5zdGFsbGVkIGFuZCBjb25maWd1cmVkIgorbXNnc3RyICJwYWtldGV0ICUuMjUwcyDDpHIgcmVkYW4gaW5zdGFsbGVyYXQgb2NoIGtvbmZpZ3VyZXJhdCIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI2MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisicGFja2FnZSAlLjI1MHMgaXMgbm90IHJlYWR5IGZvciBjb25maWd1cmF0aW9uXG4iCisiIGNhbm5vdCBjb25maWd1cmUgKGN1cnJlbnQgc3RhdHVzIGAlLjI1MHMnKSIKK21zZ3N0ciAiIgorInBha2V0ZXQgJS4yNTBzIMOkciBpbnRlIHJlZG8gZsO2ciBhdHQga29uZmlndXJlcmFzXG4iCisiIGthbiBpbnRlIGtvbmZpZ3VyZXJhIChha3R1ZWxsIHN0YXR1cyDDpHIgXCIlLjI1MHNcIikiCisKKyM6IHNyYy9jb25maWd1cmUuYzoyOTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IGRlcGVuZGVuY3kgcHJvYmxlbXMgcHJldmVudCBjb25maWd1cmF0aW9uIG9mICVzOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogYmVyb2VuZGVwcm9ibGVtIGbDtnJoaW5kcmFyIGtvbmZpZ3VyZXJpbmcgYXYgJXM6XG4iCisiJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoyOTcKK21zZ2lkICJkZXBlbmRlbmN5IHByb2JsZW1zIC0gbGVhdmluZyB1bmNvbmZpZ3VyZWQiCittc2dzdHIgImJlcm9lbmRlcHJvYmxlbSAtIGzDpG1uYXIgb2tvbmZpZ3VyZXJhZCIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjMwMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogJXM6IGRlcGVuZGVuY3kgcHJvYmxlbXMsIGJ1dCBjb25maWd1cmluZyBhbnl3YXkgYXMgeW91IHJlcXVlc3RlZDpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiBiZXJvZW5kZXByb2JsZW0sIG1lbiBrb25maWd1cmVyYXIgw6RuZMOlIGVubGlndCDDtm5za2Vtw6VsOlxuIgorIiVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MzA5Cittc2dpZCAiIgorIlBhY2thZ2UgaXMgaW4gYSB2ZXJ5IGJhZCBpbmNvbnNpc3RlbnQgc3RhdGUgLSB5b3Ugc2hvdWxkXG4iCisiIHJlaW5zdGFsbCBpdCBiZWZvcmUgYXR0ZW1wdGluZyBjb25maWd1cmF0aW9uLiIKK21zZ3N0ciAiIgorIlBha2V0ZXQgw6RyIGkgZXR0IHbDpGxkaWd0IGTDpWxpZ3QgaW5rb25zaXN0ZW50IGzDpGdlIC0gZHUgYsO2clxuIgorIiBvbWluc3RhbGxlcmEgZGV0IGlubmFuIGR1IGbDtnJzw7ZrZXIga29uZmlndXJlcmEuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MzEyCisjLCBjLWZvcm1hdAorbXNnaWQgIlNldHRpbmcgdXAgJXMgKCVzKSAuLi5cbiIKK21zZ3N0ciAiU3TDpGxsZXIgaW4gJXMgKCVzKSAuLi5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjM5NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IHVuYWJsZSB0byBzdGF0IGNvbmZpZyBmaWxlICclcydcbiIKKyIgKD0gJyVzJyk6ICVzIgorbXNnc3RyICIiCisiJXM6IGt1bmRlIGludGUgdGEgc3RhdHVzIHDDpSBrb25maWd1cmF0aW9uc2ZpbGVuIFwiJXNcIlxuIgorIiAoPSBcIiVzXCIpOiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQwOQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IGNvbmZpZyBmaWxlICclcycgaXMgYSBjaXJjdWxhciBsaW5rXG4iCisiICg9ICclcycpIgorbXNnc3RyICIiCisiJXM6IGtvbmZpZ3VyYXRpb25zZmlsZW4gXCIlc1wiIMOkciBlbiBjaXJrdWzDpHIgbMOkbmtcbiIKKyIgKD0gXCIlc1wiKSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQxOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IHVuYWJsZSB0byByZWFkbGluayBjb25mZmlsZSAnJXMnXG4iCisiICg9ICclcycpOiAlcyIKK21zZ3N0ciAiIgorIiVzOiBrdW5kZSBpbnRlIGzDpHNhIGzDpG5rZW4gdGlsbCBrb25maWd1cmF0aW9uc2ZpbGVuIFwiJXNcIlxuIgorIiAoPSBcIiVzXCIpOiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQ0NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IGNvbmZmaWxlICclLjI1MHMnIHJlc29sdmVzIHRvIGRlZ2VuZXJhdGUgZmlsZW5hbWVcbiIKKyIgKCclcycgaXMgYSBzeW1saW5rIHRvICclcycpIgorbXNnc3RyICIiCisiJXM6IGtvbmZpZ3VyYXRpb25zZmlsZW4gXCIlLjI1MHNcIiBibGlyIGV0dCBkZWdlbmVyZXJhdCBmaWxuYW1uXG4iCisiIChcIiVzXCIgw6RyIGVuIHN5bWJvbGlzayBsw6RuayB0aWxsIFwiJXNcIikiCisKKyM6IHNyYy9jb25maWd1cmUuYzo0NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGNvbmZmaWxlICclLjI1MHMnIGlzIG5vdCBhIHBsYWluIGZpbGUgb3Igc3ltbGluayAoPSAnJXMnKSIKK21zZ3N0ciAiIgorIiVzOiBrb25maWd1cmF0aW9uZmlsZW4gXCIlLjI1MHNcIiDDpHIgaW50ZSBlbiB2YW5saWcgZmlsIGVsbGVyIHN5bWJvbGlzayBsw6RuayAiCisiKD0gXCIlc1wiKSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQ4NgorbXNnaWQgIm1kNWhhc2giCittc2dzdHIgIm1kNWhhc2giCisKKyM6IHNyYy9jb25maWd1cmUuYzo0OTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IHVuYWJsZSB0byBvcGVuIGNvbmZmaWxlICVzIGZvciBoYXNoOiAlcyIKK21zZ3N0ciAiJXM6IGt1bmRlIGludGUgw7ZwcG5hIGtvbmZpZ3VyYXRpb25zZmlsZW4gJXMgZsO2ciBoYXNobmluZzogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzo1MjIgc3JjL2NvbmZpZ3VyZS5jOjUyNgorbXNnaWQgImNvbmZmaWxlIGRpZmZlcmVuY2UgdmlzdWFsaXplciIKK21zZ3N0ciAidmlzdWFsaXNlcmFyZSBmw7ZyIGtvbmZpZ3VyYXRpb25zZmlsc3NraWxsbmFkZXIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo1NDMKK21zZ2lkICJUeXBlIGBleGl0JyB3aGVuIHlvdSdyZSBkb25lLlxuIgorbXNnc3RyICJTa3JpdiBcImV4aXRcIiBuw6RyIGR1IMOkciBrbGFyLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NTUyIHNyYy9jb25maWd1cmUuYzo1NTYKK21zZ2lkICJjb25mZmlsZSBzaGVsbCIKK21zZ3N0ciAic2thbCBmw7ZyIGhhbnRlcmluZyBhdiBrb25maWd1cmF0aW9uc2ZpbGVyIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjAyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJDb25maWd1cmF0aW9uIGZpbGUgYCVzJyIKK21zZ3N0ciAiIgorIlxuIgorIktvbmZpZ3VyYXRpb25zZmlsIFwiJXNcIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYwNAorIywgYy1mb3JtYXQKK21zZ2lkICIgKGFjdHVhbGx5IGAlcycpIgorbXNnc3RyICIgKGkgdmVya2xpZ2hldGVuIFwiJXNcIikiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiA9PT4gRmlsZSBvbiBzeXN0ZW0gY3JlYXRlZCBieSB5b3Ugb3IgYnkgYSBzY3JpcHQuXG4iCisiID09PiBGaWxlIGFsc28gaW4gcGFja2FnZSBwcm92aWRlZCBieSBwYWNrYWdlIG1haW50YWluZXIuXG4iCittc2dzdHIgIiIKKyJcbiIKKyIgPT0+IERlbiBmaWwgc29tIG51IGZpbm5zIHNrYXBhZGVzIGF2IGRpZyBlbGxlciBldHQgc2tyaXB0LlxuIgorIiA9PT4gUGFrZXRhbnN2YXJpZ2VzIHZlcnNpb24gZmlubnMgw6R2ZW4gaSBwYWtldGV0IGR1IGluc3RhbGxlcmFyLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjEzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgICAgIE5vdCBtb2RpZmllZCBzaW5jZSBpbnN0YWxsYXRpb24uXG4iCittc2dzdHIgIiIKKyJcbiIKKyIgICAgIEVqIG1vZGlmaWVyYWQgc2VkYW4gaW5zdGFsbGF0aW9uZW4uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiA9PT4gTW9kaWZpZWQgKGJ5IHlvdSBvciBieSBhIHNjcmlwdCkgc2luY2UgaW5zdGFsbGF0aW9uLlxuIgorbXNnc3RyICIiCisiXG4iCisiID09PiBNb2RpZmllcmFkIChhdiBkaWcgZWxsZXIgZW4gc2tyaXB0ZmlsKSBzZWRhbiBpbnN0YWxsYXRpb25lbi5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYxNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiID09PiBEZWxldGVkIChieSB5b3Ugb3IgYnkgYSBzY3JpcHQpIHNpbmNlIGluc3RhbGxhdGlvbi5cbiIKK21zZ3N0ciAiIgorIlxuIgorIiA9PT4gQm9ydHRhZ2VuIChhdiBkaWcgZWxsZXIgZW4gc2tyaXB0ZmlsKSBzZWRhbiBpbnN0YWxsYXRpb25lbi5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYxOQorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IFBhY2thZ2UgZGlzdHJpYnV0b3IgaGFzIHNoaXBwZWQgYW4gdXBkYXRlZCB2ZXJzaW9uLlxuIgorbXNnc3RyICIgPT0+IFBha2V0ZGlzdHJpYnV0w7ZyZW4gaGFyIHVwcGRhdGVyYXQga29uZmlndXJhdGlvbnNmaWxlbi5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYyMAorIywgYy1mb3JtYXQKK21zZ2lkICIgICAgIFZlcnNpb24gaW4gcGFja2FnZSBpcyB0aGUgc2FtZSBhcyBhdCBsYXN0IGluc3RhbGxhdGlvbi5cbiIKK21zZ3N0ciAiICAgICBWZXJzaW9uZW4gaSBwYWtldGV0IMOkciBzYW1tYSBzb20gdmlkIHNlbmFzdGUgaW5zdGFsbGF0aW9uZW4uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBVc2luZyBuZXcgZmlsZSBhcyB5b3UgcmVxdWVzdGVkLlxuIgorbXNnc3RyICIgPT0+IEFudsOkbmRlciBueSBmaWwgZW5saWd0IMO2bnNrZW3DpWwuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBVc2luZyBjdXJyZW50IG9sZCBmaWxlIGFzIHlvdSByZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiA9PT4gQW52w6RuZGVyIG51dmFyYW5kZSBnYW1tYWwgZmlsIGVubGlndCDDtm5za2Vtw6VsLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjQxCisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gS2VlcGluZyBvbGQgY29uZmlnIGZpbGUgYXMgZGVmYXVsdC5cbiIKK21zZ3N0ciAiID09PiBCZWjDpWxsZXIgZ2FtbWFsIGtvbmZpZ3VyYXRpb25zZmlsIGVubGlndCBmw7ZydmFsLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gVXNpbmcgbmV3IGNvbmZpZyBmaWxlIGFzIGRlZmF1bHQuXG4iCittc2dzdHIgIiA9PT4gQW52w6RuZGVyIG55IGtvbmZpZ3VyYXRpb25zZmlsIGVubGlndCBmw7ZydmFsLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjUyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIgICBXaGF0IHdvdWxkIHlvdSBsaWtlIHRvIGRvIGFib3V0IGl0ID8gIFlvdXIgb3B0aW9ucyBhcmU6XG4iCisiICAgIFkgb3IgSSAgOiBpbnN0YWxsIHRoZSBwYWNrYWdlIG1haW50YWluZXIncyB2ZXJzaW9uXG4iCisiICAgIE4gb3IgTyAgOiBrZWVwIHlvdXIgY3VycmVudGx5LWluc3RhbGxlZCB2ZXJzaW9uXG4iCisiICAgICAgRCAgICAgOiBzaG93IHRoZSBkaWZmZXJlbmNlcyBiZXR3ZWVuIHRoZSB2ZXJzaW9uc1xuIgorIiAgICAgIFogICAgIDogc3RhcnQgYSBzaGVsbCB0byBleGFtaW5lIHRoZSBzaXR1YXRpb25cbiIKK21zZ3N0ciAiIgorIiAgIFZhZCB2aWxsIGR1IGfDtnJhIMOldCBkZXQ/ICBEaW5hIG3DtmpsaWdoZXRlciDDpHI6XG4iCisiICAgWSBlbGxlciBJOiBpbnN0YWxsZXJhIHBha2V0YW5zdmFyaWdlcyB2ZXJzaW9uXG4iCisiICAgTiBlbGxlciBPOiBiZWjDpWxsIGRpbiBudSBpbnN0YWxsZXJhZGUgdmVyc2lvblxuIgorIiAgICAgIEQgICAgIDogdmlzYSBza2lsbG5hZGVybmEgbWVsbGFuIHZlcnNpb25lcm5hXG4iCisiICAgICAgWiAgICAgOiBzdGFydGEgZXR0IHNrYWwgZsO2ciBhdHQgdW5kZXJzw7ZrYSBzaXR1YXRpb25lblxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjU5CisjLCBjLWZvcm1hdAorbXNnaWQgIiBUaGUgZGVmYXVsdCBhY3Rpb24gaXMgdG8ga2VlcCB5b3VyIGN1cnJlbnQgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIEbDtnJ2YWxkIMOldGfDpHJkIMOkciBhdHQgYmVow6VsbGEgZGluIG51dmFyYW5kZSB2ZXJzaW9uLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjYxCisjLCBjLWZvcm1hdAorbXNnaWQgIiBUaGUgZGVmYXVsdCBhY3Rpb24gaXMgdG8gaW5zdGFsbCB0aGUgbmV3IHZlcnNpb24uXG4iCittc2dzdHIgIiBGw7ZydmFsZCDDpXRnw6RyZCDDpHIgYXR0IGluc3RhbGxlcmEgZGVuIG55YSB2ZXJzaW9uZW4uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NjYKK21zZ2lkICJbZGVmYXVsdD1OXSIKK21zZ3N0ciAiW2bDtnJ2YWw9Tl0iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NjcKK21zZ2lkICJbZGVmYXVsdD1ZXSIKK21zZ3N0ciAiW2bDtnJ2YWw9WV0iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NjgKK21zZ2lkICJbbm8gZGVmYXVsdF0iCittc2dzdHIgIltpbmdldCBmw7ZydmFsXSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY3MQorbXNnaWQgImVycm9yIHdyaXRpbmcgdG8gc3RkZXJyLCBkaXNjb3ZlcmVkIGJlZm9yZSBjb25mZmlsZSBwcm9tcHQiCittc2dzdHIgIiIKKyJmZWwgdmlkIHNrcml2bmluZyB0aWxsIHN0ZGVyciwgdXBwdMOkY2t0ZXMgaW5uYW4ga29uZmlndXJhdGlvbnNmaWxmcsOlZ2FuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjgwCittc2dpZCAicmVhZCBlcnJvciBvbiBzdGRpbiBhdCBjb25mZmlsZSBwcm9tcHQiCittc2dzdHIgImzDpHNmZWwgcMOlIHN0ZGluIHZpZCBrb25maWd1cmF0aW9uc2ZpbHNmcsOlZ2FuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjgxCittc2dpZCAiRU9GIG9uIHN0ZGluIGF0IGNvbmZmaWxlIHByb21wdCIKK21zZ3N0ciAiRmlsc2x1dCBww6Ugc3RkaW4gdmlkIGtvbmZpZ3VyYXRpb25zZmlsc2Zyw6VnYW4iCisKKyM6IHNyYy9kZXBjb24uYzoxNzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgZGVwZW5kcyBvbiAlcyIKK21zZ3N0ciAiJXMgw6RyIGJlcm9lbmRlIGF2ICVzIgorCisjOiBzcmMvZGVwY29uLmM6MTc4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHByZS1kZXBlbmRzIG9uICVzIgorbXNnc3RyICIlcyDDpHIgaSBmw7ZydsOkZyBiZXJvZW5kZSBhdiAlcyIKKworIzogc3JjL2RlcGNvbi5jOjE4MQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyByZWNvbW1lbmRzICVzIgorbXNnc3RyICIlcyByZWtvbW1lbmRlcmFyICVzIgorCisjOiBzcmMvZGVwY29uLmM6MTg0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHN1Z2dlc3RzICVzIgorbXNnc3RyICIlcyBmw7ZyZXNsw6VyICVzIgorCisjOiBzcmMvZGVwY29uLmM6MTg3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGJyZWFrcyAlcyIKK21zZ3N0ciAiJXMgZsO2cnN0w7ZyICVzIgorCisjOiBzcmMvZGVwY29uLmM6MTkwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGNvbmZsaWN0cyB3aXRoICVzIgorbXNnc3RyICIlcyDDpHIgaSBrb25mbGlrdCBtZWQgJXMiCisKKyM6IHNyYy9kZXBjb24uYzoxOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgZW5oYW5jZXMgJXMiCittc2dzdHIgIiVzIGbDtnJiw6R0dHJhciAlcyIKKworIzogc3JjL2RlcGNvbi5jOjI5NgorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyBrb21tZXIgYXR0IHRhcyBib3J0LlxuIgorCisjOiBzcmMvZGVwY29uLmM6Mjk5CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHRvIGJlIGRlY29uZmlndXJlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMga29tbWVyIGF0dCBhdmtvbmZpZ3VyZXJhcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjMwNAorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB0byBiZSBpbnN0YWxsZWQsIGJ1dCBpcyB2ZXJzaW9uICUuMjUwcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMga29tbWVyIGF0dCBpbnN0YWxsZXJhcywgbWVuIMOkciB2ZXJzaW9uICUuMjUwcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjMxNAorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyBpbnN0YWxsZWQsIGJ1dCBpcyB2ZXJzaW9uICUuMjUwcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgw6RyIGluc3RhbGxlcmFkLCBtZW4gw6RyIHZlcnNpb24gJS4yNTBzLlxuIgorCisjOiBzcmMvZGVwY29uLmM6MzMzCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHVucGFja2VkLCBidXQgaGFzIG5ldmVyIGJlZW4gY29uZmlndXJlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMgw6RyIHVwcGFja2FkLCBtZW4gaGFyIGFsZHJpZyBrb25maWd1cmVyYXRzLlxuIgorCisjOiBzcmMvZGVwY29uLmM6MzM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHVucGFja2VkLCBidXQgaXMgdmVyc2lvbiAlLjI1MHMuXG4iCittc2dzdHIgIiAgJS4yNTBzIMOkciB1cHBhY2thZCwgbWVuIMOkciB2ZXJzaW9uICUuMjUwcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjM0MworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBsYXRlc3QgY29uZmlndXJlZCB2ZXJzaW9uIGlzICUuMjUwcy5cbiIKK21zZ3N0ciAiICBzZW5hc3Qga29uZmlndXJlcmFkIHZlcnNpb24gYXYgJS4yNTBzIMOkciAlLjI1MHMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozNTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgJXMuXG4iCittc2dzdHIgIiAgJS4yNTBzIMOkciAlcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjM4OAorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYnV0IGlzIHRvIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIHRpbGxoYW5kYWjDpWxsZXIgJS4yNTBzIG1lbiBrb21tZXIgYXR0IHRhcyBib3J0LlxuIgorCisjOiBzcmMvZGVwY29uLmM6MzkyCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBidXQgaXMgdG8gYmUgZGVjb25maWd1cmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyB0aWxsaGFuZGFow6VsbGVyICUuMjUwcyBtZW4ga29tbWVyIGF0dCBhdmtvbmZpZ3VyZXJhcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjQwMQorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYnV0IGlzICVzLlxuIgorbXNnc3RyICIlLjI1MHMgdGlsbGhhbmRhaMOlbGxlciAlLjI1MHMgbWVuIG1lbiDDpHIgJXMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0MTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgbm90IGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMgw6RyIGludGUgaW5zdGFsbGVyYWQuXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgKHZlcnNpb24gJS4yNTBzKSBpcyB0byBiZSBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzICh2ZXJzaW9uICUuMjUwcykga29tbWVyIGF0dCBpbnN0YWxsZXJhcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjQ2OAorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyAodmVyc2lvbiAlLjI1MHMpIGlzIHByZXNlbnQgYW5kICVzLlxuIgorbXNnc3RyICIgICUuMjUwcyAodmVyc2lvbiAlLjI1MHMpIMOkciBuw6RydmFyYW5kZSBvY2ggJXMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGFuZCBpcyB0byBiZSBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIHRpbGxoYW5kYWjDpWxsZXIgJS4yNTBzIG9jaCBrb21tZXIgYXR0IGluc3RhbGxlcmFzLlxuIgorCisjOiBzcmMvZGVwY29uLmM6NTM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBhbmQgaXMgcHJlc2VudCBhbmQgJXMuXG4iCittc2dzdHIgIiAgJS4yNTBzIHRpbGxoYW5kYWjDpWxsZXIgJS4yNTBzIG9jaCDDpHIgbsOkcnZhcmFuZGUgb2NoICVzLlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTAKK21zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IGRpdmVydGluZyBmaWxlcy4iCittc2dzdHIgIkFudsOkbmQgLS1oZWxwIGbDtnIgaGrDpGxwIG9tIGF0dCBvbWRpcmlnZXJhIGZpbGVyLiIKKworIzogc3JjL2RpdmVydGNtZC5jOjY2IHNyYy9zdGF0Y21kLmM6NTcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjgwCisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiAlcyB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICJEZWJpYW4gJXMgdmVyc2lvbiAlcy5cbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjcwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMTAgR3VpbGxlbSBKb3Zlci5cbiIKK21zZ3N0ciAiIgorIkNvcHlyaWdodCDCqSAxOTk1IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCDCqSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgwqkgMjAxMCBHdWlsbGVtIEpvdmVyLlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NzUgc3JjL21haW4uYzo2MyBzcmMvcXVlcnljbWQuYzo2MDMgc3JjL3N0YXRjbWQuYzo2NQorIzogc3JjL3RyaWdjbWQuYzo1NSBkcGtnLWRlYi9tYWluLmM6NTcgZHBrZy1zcGxpdC9tYWluLmM6NTEKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo4OQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvclxuIgorImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LlxuIgorbXNnc3RyICIiCisiRGV0dGEgw6RyIGZyaSBwcm9ncmFtdmFyYTsgc2UgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAyXG4iCisiZWxsZXIgc2VuYXJlIGbDtnIga29waWVyaW5nc3ZpbGxrb3IuIERldCBmaW5ucyBJTkdFTiBnYXJhbnRpLlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6ODcgc3JjL21haW4uYzo4MSBzcmMvcXVlcnljbWQuYzo2MTUgc3JjL3N0YXRjbWQuYzo3NworIzogZHBrZy1kZWIvbWFpbi5jOjY5IGRwa2ctc3BsaXQvbWFpbi5jOjYzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo5NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIDxjb21tYW5kPlxuIgorIlxuIgorbXNnc3RyICIiCisiQW52w6RuZG5pbmc6ICVzIFs8ZmxhZ2dhPiAuLi5dIDxrb21tYW5kbz5cbiIKKyJcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjkxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIFstLWFkZF0gPGZpbGU+ICAgICAgICAgICBhZGQgYSBkaXZlcnNpb24uXG4iCisiICAtLXJlbW92ZSA8ZmlsZT4gICAgICAgICAgcmVtb3ZlIHRoZSBkaXZlcnNpb24uXG4iCisiICAtLWxpc3QgWzxnbG9iLXBhdHRlcm4+XSAgc2hvdyBmaWxlIGRpdmVyc2lvbnMuXG4iCisiICAtLWxpc3RwYWNrYWdlIDxmaWxlPiAgICAgc2hvdyB3aGF0IHBhY2thZ2UgZGl2ZXJ0cyB0aGUgZmlsZS5cbiIKKyIgIC0tdHJ1ZW5hbWUgPGZpbGU+ICAgICAgICByZXR1cm4gdGhlIGRpdmVydGVkIGZpbGUuXG4iCisiXG4iCittc2dzdHIgIiIKKyJLb21tYW5kb246XG4iCisiICBbLS1hZGRdIDxmaWw+ICAgICAgICAgICAgbMOkZ2cgdGlsbCBlbiBvbWRpcmlnZXJpbmcuXG4iCisiICAtLXJlbW92ZSA8ZmlsPiAgICAgICAgICAgdGEgYm9ydCBvbWRpcmlnZXJpbmdlbi5cbiIKKyIgIC0tbGlzdCBbPGpva2VydGVja2VuPl0gICB2aXNhIG9tZGlyaWdlcmFkZSBmaWxlci5cbiIKKyIgIC0tbGlzdHBhY2thZ2UgPGZpbD4gICAgICB2aXNhIHZpbGtldCBwYWtldCBzb20gb21kaXJpZ2VyYXIgZmlsZW4uXG4iCisiICAtLXRydWVuYW1lIDxmaWw+ICAgICAgICAgdmlzYSBkZW4gb21kaXJpZ2VyYWRlIGZpbGVuLlxuIgorIlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MTAwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1wYWNrYWdlIDxwYWNrYWdlPiAgICAgIG5hbWUgb2YgdGhlIHBhY2thZ2Ugd2hvc2UgY29weSBvZiA8ZmlsZT4gd2lsbCAiCisibm90XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiZSBkaXZlcnRlZC5cbiIKKyIgIC0tbG9jYWwgICAgICAgICAgICAgICAgICBhbGwgcGFja2FnZXMnIHZlcnNpb25zIGFyZSBkaXZlcnRlZC5cbiIKKyIgIC0tZGl2ZXJ0IDxkaXZlcnQtdG8+ICAgICB0aGUgbmFtZSB1c2VkIGJ5IG90aGVyIHBhY2thZ2VzJyB2ZXJzaW9ucy5cbiIKKyIgIC0tcmVuYW1lICAgICAgICAgICAgICAgICBhY3R1YWxseSBtb3ZlIHRoZSBmaWxlIGFzaWRlIChvciBiYWNrKS5cbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICBzZXQgdGhlIGRpcmVjdG9yeSB3aXRoIHRoZSBkaXZlcnNpb25zIGZpbGUuXG4iCisiICAtLXRlc3QgICAgICAgICAgICAgICAgICAgZG9uJ3QgZG8gYW55dGhpbmcsIGp1c3QgZGVtb25zdHJhdGUuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgcXVpZXQgb3BlcmF0aW9uLCBtaW5pbWFsIG91dHB1dC5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCittc2dzdHIgIiIKKyJGbGFnZ29yOlxuIgorIiAgLS1wYWNrYWdlIDxwYWtldD4gICAgICAgIG5hbW4gcMOlIHBha2V0ZXQgdmFycyBleGVtcGxhciBhdiA8ZmlsPiBpbnRlICIKKyJza2FsbFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIG9tZGlyaWdlcmFzLlxuIgorIiAgLS1sb2NhbCAgICAgICAgICAgICAgICAgIHZlcnNpb25lciBmcsOlbiBhbGxhIHBha2V0IG9tZGlyaWdlcmFzLlxuIgorIiAgLS1kaXZlcnQgPG3DpWw+ICAgICAgICAgICBuYW1uZXQgc29tIGFudsOkbmRzIGF2IGFuZHJhIHBha2V0cyB2ZXJzaW9uZXIuXG4iCisiICAtLXJlbmFtZSAgICAgICAgICAgICAgICAgZmx5dHRhIGZha3Rpc2t0IGJvcnQgZmlsZW4gKGVsbGVyIHRpbGxiYWthKS5cbiIKKyIgIC0tYWRtaW5kaXIgPGthdGFsb2c+ICAgICB2w6RsaiBrYXRhbG9nIGbDtnIgb21kaXJpZ2VyaW5nc2ZpbGVuLlxuIgorIiAgLS10ZXN0ICAgICAgICAgICAgICAgICAgIGfDtnIgaW5nZW50aW5nLCBiYXJhIGRlbW9uc3RyZXJhLlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIGFyYmV0YSB0eXN0LCBtZWQgbWluaW1hbCB1dGRhdGEuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgdmlzYSBkZXR0YSBoasOkbHBtZWRkZWxhbmRlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHZpc2EgdmVyc2lvbnNudW1tZXIuXG4iCisiXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIldoZW4gYWRkaW5nLCBkZWZhdWx0IGlzIC0tbG9jYWwgYW5kIC0tZGl2ZXJ0IDxvcmlnaW5hbD4uZGlzdHJpYi5cbiIKKyJXaGVuIHJlbW92aW5nLCAtLXBhY2thZ2Ugb3IgLS1sb2NhbCBhbmQgLS1kaXZlcnQgbXVzdCBtYXRjaCBpZiBzcGVjaWZpZWQuXG4iCisiUGFja2FnZSBwcmVpbnN0L3Bvc3RybSBzY3JpcHRzIHNob3VsZCBhbHdheXMgc3BlY2lmeSAtLXBhY2thZ2UgYW5kIC0tIgorImRpdmVydC5cbiIKK21zZ3N0ciAiIgorIk7DpHIgZHUgbMOkZ2dlciB0aWxsIMOkciBmw7ZydmFsIC0tbG9jYWwgb2NoIC0tZGl2ZXJ0IDxvcmlnaW5hbD4uZGlzdHJpYi5cbiIKKyJOw6RyIGR1IHRhciBib3J0IG3DpXN0ZSAtLXBhY2thZ2UgZWxsZXIgLS1sb2NhbCBzYW10IC0tZGl2ZXJ0IHN0w6RtbWEgb20gZGVcbiIKKyJhbmdlcy4gU2tyaXB0ZW4gcHJlaW5zdC9wb3N0cm0gaSBwYWtldCBza2FsbCBhbGx0aWQgYW5nZSAtLXBhY2thZ2Ugb2NoIC0tIgorImRpdmVydC5cbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjE2OAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjaGVja2luZyAnJXMnIgorbXNnc3RyICJmZWwgdmlkIGtvbnRyb2xsIGF2IFwiJXNcIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjIwMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisicmVuYW1lIGludm9sdmVzIG92ZXJ3cml0aW5nIGAlcycgd2l0aFxuIgorIiAgZGlmZmVyZW50IGZpbGUgYCVzJywgbm90IGFsbG93ZWQiCittc2dzdHIgIiIKKyJuYW1uYnl0ZSBpbm5lYsOkciDDtnZlcnNrcml2bmluZyBhdiBcIiVzXCIgbWVkXG4iCisiICBhbm5hbiBmaWwgXCIlc1wiLCBlaiB0aWxsw6V0ZXQiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyMjMgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzNzMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBmaWxlICclcyciCittc2dzdHIgImt1bmRlIGludGUgc2thcGEgZmlsZW4gXCIlc1wiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjI3Cittc2dpZCAiZmlsZSBjb3B5IgorbXNnc3RyICJmaWxrb3BpZXJpbmciCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyMzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlbmFtZSAnJXMnIHRvICclcyciCittc2dzdHIgImthbiBpbnRlIGJ5dGEgbmFtbiBww6UgXCIlc1wiIHRpbGwgXCIlc1wiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjUyCisjLCBjLWZvcm1hdAorbXNnaWQgInJlbmFtZTogcmVtb3ZlIGR1cGxpY2F0ZSBvbGQgbGluayAnJXMnIgorbXNnc3RyICJuYW1uYnl0ZTogdGEgYm9ydCBkdXBsaWNlcmFkIGdhbW1hbCBsw6RuayBcIiVzXCIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyNjIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBjb3BpZWQgc291cmNlIGZpbGUgJyVzJyIKK21zZ3N0ciAia3VuZGUgaW50ZSB0YSBib3J0IGtvcGllcmFkIGvDpGxsZmlsIFwiJS4yNTBzXCIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyODQKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9jYWwgZGl2ZXJzaW9uIG9mICVzIgorbXNnc3RyICJsb2thbCBvbWRpcmlnZXJpbmcgYXYgJXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyODYKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9jYWwgZGl2ZXJzaW9uIG9mICVzIHRvICVzIgorbXNnc3RyICJsb2thbCBvbWRpcmlnZXJpbmcgYXYgJXMgdGlsbCAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjI5MAorIywgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnNpb24gb2YgJXMgYnkgJXMiCittc2dzdHIgIm9tZGlyaWdlcmluZyBhdiAlcyBhdiAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjI5MworIywgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnNpb24gb2YgJXMgdG8gJXMgYnkgJXMiCittc2dzdHIgIm9tZGlyaWdlcmluZyBhdiAlcyB0aWxsICVzIGF2ICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MzA5CisjLCBjLWZvcm1hdAorbXNnaWQgImFueSBkaXZlcnNpb24gb2YgJXMiCittc2dzdHIgImFsbGEgb21kaXJpZ2VyaW5nYXIgYXYgJXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiYW55IGRpdmVyc2lvbiBvZiAlcyB0byAlcyIKK21zZ3N0ciAiYWxsYSBvbWRpcmlnZXJpbmdhciBhdiAlcyB0aWxsICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MzU3CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBjcmVhdGUgbmV3ICVzIGZpbGUiCittc2dzdHIgImthbiBpbnRlIHNrYXBhIG55IHZlcnNpb24gYXYgZmlsZW4gJXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozNzUgc3JjL3N0YXRjbWQuYzoyMTUgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE0MDQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIGZpbGUgJyVzJyIKK21zZ3N0ciAia3VuZGUgaW50ZSB0w7ZtbWEgKGZsdXNoKSBmaWxlbiBcIiVzXCIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozODIKK21zZ2lkICJlcnJvciByZW1vdmluZyBvbGQgZGl2ZXJzaW9ucy1vbGQiCittc2dzdHIgImZlbCB2aWQgYm9ydHRhZ25pbmcgYXYgZ2FtbWFsIFwiZGl2ZXJzaW9ucy1vbGRcIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjM4NAorbXNnaWQgImVycm9yIGNyZWF0aW5nIG5ldyBkaXZlcnNpb25zLW9sZCIKK21zZ3N0ciAiZmVsIHZpZCBza2FwYW5kZSBhdiBueSBcImRpdmVyc2lvbnMtb2xkXCIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozODYKK21zZ2lkICJlcnJvciBpbnN0YWxsaW5nIG5ldyBkaXZlcnNpb25zIgorbXNnc3RyICJmZWwgdmlkIGluc3RhbGxhdGlvbiBhdiBueSBcImRpdmVyc2lvbnNcIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjQwNiBzcmMvZGl2ZXJ0Y21kLmM6NTAzIHNyYy9kaXZlcnRjbWQuYzo2MTAKKyM6IHNyYy9kaXZlcnRjbWQuYzo2MzAgc3JjL3N0YXRjbWQuYzoyOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhIHNpbmdsZSBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyBiZWjDtnZlciBldHQgZW5zYW10IGFyZ3VtZW50IgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDA5IHNyYy9kaXZlcnRjbWQuYzo0MzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZW5hbWUgXCIlc1wiIGlzIG5vdCBhYnNvbHV0ZSIKK21zZ3N0ciAiZmlsbmFtbmV0IFwiJXNcIiDDpHIgaW50ZSBhYnNvbHV0IgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDExIHNyYy9zdGF0Y21kLmM6MjQ5Cittc2dpZCAiZmlsZSBtYXkgbm90IGNvbnRhaW4gbmV3bGluZXMiCittc2dzdHIgImZpbG5hbW5ldCBrYW4gaW50ZSBpbm5laMOlbGxhIG55cmFkc3RlY2tlbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjQxOAorbXNnaWQgIkNhbm5vdCBkaXZlcnQgZGlyZWN0b3JpZXMiCittc2dzdHIgIkthbiBpbnRlIG9tZGlyaWdlcmEga2F0YWxvZ2VyIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDMzCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBkaXZlcnQgZmlsZSAnJXMnIHRvIGl0c2VsZiIKK21zZ3N0ciAiS2FuIGludGUgb21kaXJpZ2VyYSBmaWxlbiBcIiVzXCIgdGlsbCBzaWcgc2rDpGx2IgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDUzCisjLCBjLWZvcm1hdAorbXNnaWQgIkxlYXZpbmcgJyVzJ1xuIgorbXNnc3RyICJMw6V0ZXIgXCIlc1wiIHZhcmFcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjQ1OAorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGNsYXNoZXMgd2l0aCBgJXMnIgorbXNnc3RyICJcIiVzXCIga3JvY2thciBtZWQgXCIlc1wiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDgxCisjLCBjLWZvcm1hdAorbXNnaWQgIkFkZGluZyAnJXMnXG4iCittc2dzdHIgIkzDpGdnZXIgdGlsbCBcIiVzXCJcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjUxMAorIywgYy1mb3JtYXQKK21zZ2lkICJObyBkaXZlcnNpb24gJyVzJywgbm9uZSByZW1vdmVkLlxuIgorbXNnc3RyICJJbmdlbiBvbWRpcmlnZXJpbmcgXCIlc1wiLCBpbmdlbiBib3J0dGFnZW4uXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm1pc21hdGNoIG9uIGRpdmVydC10b1xuIgorIiAgd2hlbiByZW1vdmluZyBgJXMnXG4iCisiICBmb3VuZCBgJXMnIgorbXNnc3RyICIiCisic2FtbWFuYmxhbmRuaW5nIGkgZGl2ZXJ0LXRvXG4iCisiICB2aWQgYm9ydHRhZ25pbmcgYXYgXCIlc1wiXG4iCisiICBoaXR0YWRlIFwiJXNcIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjUzMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisibWlzbWF0Y2ggb24gcGFja2FnZVxuIgorIiAgd2hlbiByZW1vdmluZyBgJXMnXG4iCisiICBmb3VuZCBgJXMnIgorbXNnc3RyICIiCisic2FtbWFuYmxhbmRuaW5nIGF2IHBha2V0XG4iCisiICB2aWQgYm9ydHRhZ25pbmcgYXYgXCIlc1wiXG4iCisiICBoaXR0YWRlIFwiJXNcIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjUzOQorIywgYy1mb3JtYXQKK21zZ2lkICJSZW1vdmluZyAnJXMnXG4iCittc2dzdHIgIlRhciBib3J0IFwiJXNcIlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjU3Cittc2dpZCAicGFja2FnZSBtYXkgbm90IGNvbnRhaW4gbmV3bGluZXMiCittc2dzdHIgInBha2V0IGthbiBpbnRlIGlubmVow6VsbGEgbnlyYWRzdGVja2VuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjY2Cittc2dpZCAiZGl2ZXJ0LXRvIG1heSBub3QgY29udGFpbiBuZXdsaW5lcyIKK21zZ3N0ciAibcOlbGV0IGthbiBpbnRlIGlubmVow6VsbGEgbnlyYWRzdGVja2VuIgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzo2NAorbXNnaWQgImZhaWxlZCB0byBvcGVuIGRpdmVyc2lvbnMgZmlsZSIKK21zZ3N0ciAia3VuZGUgaW50ZSDDtnBwbmEgb21kaXJpZ2VyaW5nc2ZpbCIKKworIzogc3JjL2RpdmVydGRiLmM6NzEKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgcHJldmlvdXMgZGl2ZXJzaW9ucyBmaWxlIgorbXNnc3RyICJrdW5kZSBpbnRlIHRhIHN0YXR1cyBww6UgdGlkaWdhcmUgb21kaXJpZ2VyaW5nc2ZpbCIKKworIzogc3JjL2RpdmVydGRiLmM6NzMKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgZGl2ZXJzaW9ucyBmaWxlIgorbXNnc3RyICJrdW5kZSBpbnRlIHRhIHN0YXR1cyBww6Ugb21kaXJpZ2VyaW5nc2ZpbCIKKworIzogc3JjL2RpdmVydGRiLmM6MTEzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZsaWN0aW5nIGRpdmVyc2lvbnMgaW52b2x2aW5nIGAlLjI1MHMnIG9yIGAlLjI1MHMnIgorbXNnc3RyICJtb3Rzw6RnYW5kZSBvbWRpcmlnZXJpbmdhciBhdiBcIiUuMjUwc1wiIGVsbGVyIFwiJS4yNTBzXCIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6NzMKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgaW4gYSBtZXNzIGR1ZSB0byBzZXJpb3VzIHByb2JsZW1zIGR1cmluZ1xuIgorImluc3RhbGxhdGlvbi4gIFRoZXkgbXVzdCBiZSByZWluc3RhbGxlZCBmb3IgdGhlbSAoYW5kIGFueSBwYWNrYWdlc1xuIgorInRoYXQgZGVwZW5kIG9uIHRoZW0pIHRvIGZ1bmN0aW9uIHByb3Blcmx5OlxuIgorbXNnc3RyICIiCisiRsO2bGphbmRlIHBha2V0IMOkciBpIG9vcmRuaW5nIHDDpSBncnVuZCBhdiBhbGx2YXJsaWdhIHByb2JsZW0gbsOkciBkZVxuIgorImluc3RhbGxlcmFkZXMuIERlIG3DpXN0ZSBvbWluc3RhbGxlcmFzIG9tIGRlIChvY2ggcGFrZXQgc29tIMOkclxuIgorImJlcm9lbmRlIGF2IGRlbSkgc2thIGZ1bmdlcmEga29ycmVrdDpcbiIKKworIzogc3JjL2VucXVpcnkuYzo4MAorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGhhdmUgYmVlbiB1bnBhY2tlZCBidXQgbm90IHlldCBjb25maWd1cmVkLlxuIgorIlRoZXkgbXVzdCBiZSBjb25maWd1cmVkIHVzaW5nIGRwa2cgLS1jb25maWd1cmUgb3IgdGhlIGNvbmZpZ3VyZVxuIgorIm1lbnUgb3B0aW9uIGluIGRzZWxlY3QgZm9yIHRoZW0gdG8gd29yazpcbiIKK21zZ3N0ciAiIgorIkbDtmxqYW5kZSBwYWtldCBoYXIgcGFja2F0cyB1cHAgbWVuIGludGUga29uZmlndXJlcmF0cyDDpG5udS4gRGUgbcOlc3RlXG4iCisia29uZmlndXJlcmFzIG1lZCBkcGtnIC0tY29uZmlndXJlIGVsbGVyIG1lbnl2YWxldCBcImNvbmZpZ3VyZVwiIGlcbiIKKyJkc2VsZWN0IGbDtnIgYXR0IGRlIHNrYSBmdW5nZXJhOlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjg3Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgYXJlIG9ubHkgaGFsZiBjb25maWd1cmVkLCBwcm9iYWJseSBkdWUgdG8gcHJvYmxlbXNcbiIKKyJjb25maWd1cmluZyB0aGVtIHRoZSBmaXJzdCB0aW1lLiAgVGhlIGNvbmZpZ3VyYXRpb24gc2hvdWxkIGJlIHJldHJpZWQgdXNpbmdcbiIKKyJkcGtnIC0tY29uZmlndXJlIDxwYWNrYWdlPiBvciB0aGUgY29uZmlndXJlIG1lbnUgb3B0aW9uIGluIGRzZWxlY3Q6XG4iCittc2dzdHIgIiIKKyJGw7ZsamFuZGUgcGFrZXQgw6RyIGJhcmEgZGVsdmlzIGtvbmZpZ3VyZXJhZGUsIHRyb2xpZ3R2aXMgcMOlIGdydW5kIGF2IHByb2JsZW1cbiIKKyJ2aWQgZGVyYXMgZsO2cnN0YSBrb25maWd1cmF0aW9uLiBOeXR0IGtvbmZpZ3VyYXRpb25zZsO2cnPDtmsgYsO2ciBnw7ZyYXMgbWVkXG4iCisiZHBrZyAtLWNvbmZpZ3VyZSA8cGFrZXQ+IGVsbGVyIG1lbnl2YWxldCBcImNvbmZpZ3VyZVwiIGkgZHNlbGVjdDpcbiIKKworIzogc3JjL2VucXVpcnkuYzo5NAorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBvbmx5IGhhbGYgaW5zdGFsbGVkLCBkdWUgdG8gcHJvYmxlbXMgZHVyaW5nXG4iCisiaW5zdGFsbGF0aW9uLiAgVGhlIGluc3RhbGxhdGlvbiBjYW4gcHJvYmFibHkgYmUgY29tcGxldGVkIGJ5IHJldHJ5aW5nIGl0O1xuIgorInRoZSBwYWNrYWdlcyBjYW4gYmUgcmVtb3ZlZCB1c2luZyBkc2VsZWN0IG9yIGRwa2cgLS1yZW1vdmU6XG4iCittc2dzdHIgIiIKKyJGw7ZsamFuZGUgcGFrZXQgw6RyIGJhcmEgZGVsdmlzIGtvbmZpZ3VyZXJhZGUsIHDDpSBncnVuZCBhdiBwcm9ibGVtIHVuZGVyXG4iCisiaW5zdGFsbGF0aW9uZW4uIEluc3RhbGxhdGlvbmVuIGthbiB0cm9saWd0dmlzIGdlbm9tZsO2cmFzIGdlbm9tIGF0dCBmw7Zyc8O2a2FcbiIKKyJpZ2VuLiBQYWtldGVuIGthbiB0YXMgYm9ydCB2aWEgZHNlbGVjdCBlbGxlciBkcGtnIC0tcmVtb3ZlOlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjEwMQorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBhd2FpdGluZyBwcm9jZXNzaW5nIG9mIHRyaWdnZXJzIHRoYXQgdGhleVxuIgorImhhdmUgYWN0aXZhdGVkIGluIG90aGVyIHBhY2thZ2VzLiAgVGhpcyBwcm9jZXNzaW5nIGNhbiBiZSByZXF1ZXN0ZWQgdXNpbmdcbiIKKyJkc2VsZWN0IG9yIGRwa2cgLS1jb25maWd1cmUgLS1wZW5kaW5nIChvciBkcGtnIC0tdHJpZ2dlcnMtb25seSk6XG4iCittc2dzdHIgIiIKKyJQYWtldGVuIG5lZGFuIGF2dmFrdGFyIGhhbnRlcmluZyBhdiB1dGzDtnNhcmUgZGUgYWt0aXZlcmF0IGkgYW5kcmFcbiIKKyJwYWtldC4gSGFudGVyaW5nIGthbiBlZnRlcmZyw6VnYXMgZ2Vub20gYXR0IGFudsOkbmRhIGRzZWxlY3QgZWxsZXJcbiIKKyJkcGtnIC0tY29uZmlndXJlIC0tcGVuZGluZyAoZWxsZXIgZHBrZyAtLXRyaWdnZXJzLW9ubHkpOlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjEwOAorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGhhdmUgYmVlbiB0cmlnZ2VyZWQsIGJ1dCB0aGUgdHJpZ2dlciBwcm9jZXNzaW5nXG4iCisiaGFzIG5vdCB5ZXQgYmVlbiBkb25lLiAgVHJpZ2dlciBwcm9jZXNzaW5nIGNhbiBiZSByZXF1ZXN0ZWQgdXNpbmdcbiIKKyJkc2VsZWN0IG9yIGRwa2cgLS1jb25maWd1cmUgLS1wZW5kaW5nIChvciBkcGtnIC0tdHJpZ2dlcnMtb25seSk6XG4iCittc2dzdHIgIiIKKyJQYWtldGVuIG5lZGFuIGhhciB1dGzDtnN0cywgbWVuIGhhbnRlcmluZ2VuIGF2IHV0bMO2c2FyZSDDpHIgw6RubnUgaW50ZVxuIgorInV0ZsO2cmQuIEhhbnRlcmluZyBrYW4gZWZ0ZXJmcsOlZ2FzIGdlbm9tIGF0dCBhbnbDpG5kYSBkc2VsZWN0IGVsbGVyXG4iCisiZHBrZyAtLWNvbmZpZ3VyZSAtLXBlbmRpbmcgKGVsbGVyIGRwa2cgLS10cmlnZ2Vycy1vbmx5KTpcbiIKKworIzogc3JjL2VucXVpcnkuYzoxMzcgc3JjL2VucXVpcnkuYzoyMTEgc3JjL2VucXVpcnkuYzoyOTIgc3JjL2VucXVpcnkuYzozNzMKKyM6IHNyYy9lbnF1aXJ5LmM6NDYwIHNyYy9zZWxlY3QuYzo5OCBzcmMvc2VsZWN0LmM6MTY0IHNyYy90cmlnY21kLmM6MTk5CisjOiBzcmMvdXBkYXRlLmM6NDggc3JjL3VwZGF0ZS5jOjExMyBkcGtnLXNwbGl0L3F1ZXVlLmM6MjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgbm8gYXJndW1lbnRzIgorbXNnc3RyICItLSVzIHRhciBpbmdldCBhcmd1bWVudCIKKworIzogc3JjL2VucXVpcnkuYzoxNTIKK21zZ2lkICIiCisiQW5vdGhlciBwcm9jZXNzIGhhcyBsb2NrZWQgdGhlIGRhdGFiYXNlIGZvciB3cml0aW5nLCBhbmQgbWlnaHQgY3VycmVudGx5IGJlXG4iCisibW9kaWZ5aW5nIGl0LCBzb21lIG9mIHRoZSBmb2xsb3dpbmcgcHJvYmxlbXMgbWlnaHQganVzdCBiZSBkdWUgdG8gdGhhdC5cbiIKK21zZ3N0ciAiIgorIkVuIGFubmFuIHByb2Nlc3MgaGFyIGzDpXN0IGRhdGFiYXNlbiBmw7ZyIHNrcml2bmluZywgb2NoIGthbnNrZSDDpG5kcmFyIGRlblxuIgorImp1c3QgbnUsIGVuIGRlbCBhdiBkZSBwcm9ibGVtIHNvbSBmw7ZsamVyIGthbiBrb21tYSBww6UgZ3J1bmQgYXYgZGV0dGEuXG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTkxCittc2djdHh0ICJzZWN0aW9uIgorbXNnaWQgIjx1bmtub3duPiIKK21zZ3N0ciAiPG9rw6RuZD4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MjUxCisjLCBjLWZvcm1hdAorbXNnaWQgIiAlZCBpbiAlczogIgorbXNnc3RyICIgJWQgaSAlczogIgorCisjOiBzcmMvZW5xdWlyeS5jOjI2NgorIywgYy1mb3JtYXQKK21zZ2lkICIgJWQgcGFja2FnZSwgZnJvbSB0aGUgZm9sbG93aW5nIHNlY3Rpb246IgorbXNnaWRfcGx1cmFsICIgJWQgcGFja2FnZXMsIGZyb20gdGhlIGZvbGxvd2luZyBzZWN0aW9uczoiCittc2dzdHJbMF0gIiAlZCBwYWtldCwgZnLDpW4gZsO2bGphbmRlIGF2ZGVsbmluZzoiCittc2dzdHJbMV0gIiAlZCBwYWtldCwgZnLDpW4gZsO2bGphbmRlIGF2ZGVsbmluZ2FyOiIKKworIzogc3JjL2VucXVpcnkuYzozMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlZlcnNpb24gb2YgZHBrZyB3aXRoIHdvcmtpbmcgJXMgc3VwcG9ydCBub3QgeWV0IGNvbmZpZ3VyZWQuXG4iCisiIFBsZWFzZSB1c2UgJ2Rwa2cgLS1jb25maWd1cmUgZHBrZycsIGFuZCB0aGVuIHRyeSBhZ2Fpbi5cbiIKK21zZ3N0ciAiIgorIlZlcnNpb25lbiBhdiBkcGtnIG1lZCBmdW5nZXJhbmRlIHN0w7ZkIGbDtnIgJXMgw6RyIMOkbm51IGVqIGtvbmZpZ3VyZXJhZC5cbiIKKyIgQW52w6RuZCBcImRwa2cgLS1jb25maWd1cmUgZHBrZ1wiIG9jaCBmw7Zyc8O2ayBzZWRhbiBpZ2VuLlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjMxMAorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnIG5vdCByZWNvcmRlZCBhcyBpbnN0YWxsZWQsIGNhbm5vdCBjaGVjayBmb3IgJXMgc3VwcG9ydCFcbiIKK21zZ3N0ciAiIgorImRwa2cgZmlubnMgaW50ZSBsaXN0YWQgc29tIGluc3RhbGxlcmFkLCBrYW4gaW50ZSBrb250cm9sbGVyYSBzdMO2ZCBmw7ZyICVzIVxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjMyMQorbXNnaWQgIlByZS1EZXBlbmRzIGZpZWxkIgorbXNnc3RyICJcIlByZS1EZXBlbmRzXCItZsOkbHQiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzI5Cittc2dpZCAiZXBvY2giCittc2dzdHIgImVwb2NoIgorCisjOiBzcmMvZW5xdWlyeS5jOjMzNworbXNnaWQgImxvbmcgZmlsZW5hbWVzIgorbXNnc3RyICJsw6VuZ2EgZmlsbmFtbiIKKworIzogc3JjL2VucXVpcnkuYzozNDYKK21zZ2lkICJtdWx0aXBsZSBDb25mbGljdHMgYW5kIFJlcGxhY2VzIgorbXNnc3RyICJtw6VuZ2Ega29uZmxpa3RlciBvY2ggZXJzw6R0dGVyIgorCisjOiBzcmMvZW5xdWlyeS5jOjQzNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogY2Fubm90IHNlZSBob3cgdG8gc2F0aXNmeSBwcmUtZGVwZW5kZW5jeTpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorImRwa2c6IGthbiBpbnRlIGtvbW1hIHDDpSBodXIgaSBmw7ZydsOkZy1iZXJvZW5kZXQga2FuIHRpbGxmcmVkc3N0w6RsbGFzOlxuIgorIiAlc1xuIgorCisjOiBzcmMvZW5xdWlyeS5jOjQzNQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc2F0aXNmeSBwcmUtZGVwZW5kZW5jaWVzIGZvciAlLjI1MHMgKHdhbnRlZCBkdWUgdG8gJS4yNTBzKSIKK21zZ3N0ciAiIgorImthbiBpbnRlIHRpbGxmcmVkc3N0w6RsbGEgaSBmw7ZydsOkZ2Jlcm9lbmRlIGbDtnIgJS4yNTBzIChrcsOkdnMgcMOlIGdydW5kIGF2ICIKKyIlLjI1MHMpIgorCisjOiBzcmMvZW5xdWlyeS5jOjQ3MgorIywgYy1mb3JtYXQKK21zZ2lkICJvYnNvbGV0ZSBvcHRpb24gJy0tJXMnLCBwbGVhc2UgdXNlICctLSVzJyBpbnN0ZWFkLiIKK21zZ3N0ciAiZsO2csOlbGRyYWQgZmxhZ2dhIFwiLS0lc1wiLCBhbnbDpG5kIFwiLS0lc1wiIGlzdMOkbGxldC4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6NTE5Cittc2dpZCAiIgorIi0tY29tcGFyZS12ZXJzaW9ucyB0YWtlcyB0aHJlZSBhcmd1bWVudHM6IDx2ZXJzaW9uPiA8cmVsYXRpb24+IDx2ZXJzaW9uPiIKK21zZ3N0ciAiLS1jb21wYXJlLXZlcnNpb25zIHRhciB0cmUgYXJndW1lbnQ6IDx2ZXJzaW9uPiA8cmVsYXRpb24+IDx2ZXJzaW9uPiIKKworIzogc3JjL2VucXVpcnkuYzo1MjQKK21zZ2lkICItLWNvbXBhcmUtdmVyc2lvbnMgYmFkIHJlbGF0aW9uIgorbXNnc3RyICItLWNvbXBhcmUtdmVyc2lvbnM6IG9naWx0aWcgcmVsYXRpb24iCisKKyM6IHNyYy9lbnF1aXJ5LmM6NTI5IHNyYy9lbnF1aXJ5LmM6NTMxIHNyYy9lbnF1aXJ5LmM6NTQwIHNyYy9lbnF1aXJ5LmM6NTQyCisjLCBjLWZvcm1hdAorbXNnaWQgInZlcnNpb24gJyVzJyBoYXMgYmFkIHN5bnRheDogJXMiCittc2dzdHIgInZlcnNpb25lbiBcIiVzXCIgaGFyIGZlbGFrdGlnIHN5bnRheDogJXMiCisKKyM6IHNyYy9lcnJvcnMuYzo2MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IGVycm9yIHByb2Nlc3NpbmcgJXMgKC0tJXMpOlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisiJXM6IGZlbCB2aWQgaGFudGVyaW5nIGF2ICVzICgtLSVzKTpcbiIKKyIgJXNcbiIKKworIzogc3JjL2Vycm9ycy5jOjY4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogZmFpbGVkIHRvIGFsbG9jYXRlIG1lbW9yeSBmb3IgbmV3IGVudHJ5IGluIGxpc3Qgb2YgZmFpbGVkIHBhY2thZ2VzOiAlcyIKK21zZ3N0ciAiIgorIiVzOiBtaXNzbHlja2FkZXMgbWVkIGF0dCBhbGxva2VyYSBtaW5uZSBmw7ZyIG55IHBvc3QgaSBsaXN0YW4gw7Z2ZXIgIgorIm1pc3NseWNrYWRlIHBha2V0OiAlcyIKKworIzogc3JjL2Vycm9ycy5jOjc5CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB0b28gbWFueSBlcnJvcnMsIHN0b3BwaW5nXG4iCittc2dzdHIgIiVzOiBmw7ZyIG3DpW5nYSBmZWwsIHN0YW5uYXJcbiIKKworIzogc3JjL2Vycm9ycy5jOjg3Cittc2dpZCAiRXJyb3JzIHdlcmUgZW5jb3VudGVyZWQgd2hpbGUgcHJvY2Vzc2luZzpcbiIKK21zZ3N0ciAiRmVsIHVwcHN0b2QgdmlkIGhhbnRlcmluZzpcbiIKKworIzogc3JjL2Vycm9ycy5jOjk0Cittc2dpZCAiUHJvY2Vzc2luZyB3YXMgaGFsdGVkIGJlY2F1c2UgdGhlcmUgd2VyZSB0b28gbWFueSBlcnJvcnMuXG4iCittc2dzdHIgIkhhbnRlcmluZ2VuIGF2YnLDtnRzIGTDpSBmw7ZyIG3DpW5nYSBmZWwgdXBwc3RvZC5cbiIKKworIzogc3JjL2Vycm9ycy5jOjEwNQorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlICVzIHdhcyBvbiBob2xkLCBwcm9jZXNzaW5nIGl0IGFueXdheSBhcyB5b3UgcmVxdWVzdGVkXG4iCittc2dzdHIgIlBha2V0ZXQgJXMgc2t1bGxlIGt2YXJow6VsbGFzLCBtZW4gaGFudGVyYXMgw6RuZMOlIGVubGlndCDDtm5za2Vtw6VsXG4iCisKKyM6IHNyYy9lcnJvcnMuYzoxMDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlBhY2thZ2UgJXMgaXMgb24gaG9sZCwgbm90IHRvdWNoaW5nIGl0LiAgVXNlIC0tZm9yY2UtaG9sZCB0byBvdmVycmlkZS5cbiIKK21zZ3N0ciAiUGFrZXRldCAlcyBrdmFyaMOlbGxlcywgcsO2ciBkZXQgaW50ZS4gLS1mb3JjZS1ob2xkIGlnbm9yZXJhci5cbiIKKworIzogc3JjL2Vycm9ycy5jOjExOQorbXNnaWQgIm92ZXJyaWRpbmcgcHJvYmxlbSBiZWNhdXNlIC0tZm9yY2UgZW5hYmxlZDoiCittc2dzdHIgImlnbm9yZXJhciBwcm9ibGVtIGTDpSAtLWZvcmNlIGFudsOkbnRzOiIKKworIzogc3JjL2ZpbGVzZGIuYzozMDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlIGAlLjI1MHMnIgorbXNnc3RyICJrdW5kZSBpbnRlIMO2cHBuYSBmaWxsaXN0YW4gZsO2ciBwYWtldGV0IFwiJS4yNTBzXCIiCisKKyM6IHNyYy9maWxlc2RiLmM6MzExCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcycgbWlzc2luZywgYXNzdW1pbmcgcGFja2FnZSBoYXMgbm8gZmlsZXMgIgorImN1cnJlbnRseSBpbnN0YWxsZWQuIgorbXNnc3RyICIiCisiZmlsbGlzdGZpbGVuIGbDtnIgcGFrZXRldCBcIiUuMjUwc1wiIHNha25hcywgYW50YXIgYXR0IHBha2V0ZXQgaW50ZSBoYXIgbsOlZ3JhICIKKyJmaWxlciBpbnN0YWxsZXJhZGUuIgorCisjOiBzcmMvZmlsZXNkYi5jOjMyMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJyUuMjUwcyciCittc2dzdHIgImt1bmRlIGludGUgdGEgc3RhdHVzIHDDpSBmaWxsaXN0YW4gZsO2ciBwYWtldGV0IFwiJS4yNTBzXCIiCisKKyM6IHNyYy9maWxlc2RiLmM6MzMwCisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWRpbmcgZmlsZXMgbGlzdCBmb3IgcGFja2FnZSAnJS4yNTBzJyIKK21zZ3N0ciAibMOkc2VyIGZpbGxpc3RhIGbDtnIgcGFrZXRldCBcIiUuMjUwc1wiIgorCisjOiBzcmMvZmlsZXNkYi5jOjMzNgorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJyUuMjUwcycgaXMgbWlzc2luZyBmaW5hbCBuZXdsaW5lIgorbXNnc3RyICJmaWxsaXN0ZmlsZW4gZsO2ciBwYWtldGV0IFwiJS4yNTBzXCIgc2FrbmFyIGF2c2x1dGFuZGUgcmFkYnJ5dG5pbmciCisKKyM6IHNyYy9maWxlc2RiLmM6MzQ0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSBgJS4yNTBzJyBjb250YWlucyBlbXB0eSBmaWxlbmFtZSIKK21zZ3N0ciAiZmlsbGlzdGZpbGVuIGbDtnIgcGFrZXRldCBcIiUuMjUwc1wiIGlubmVow6VsbGVyIHRvbXQgZmlsbmFtbiIKKworIzogc3JjL2ZpbGVzZGIuYzozNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcyciCittc2dzdHIgImZlbCB2aWQgc3TDpG5nbmluZyBhdiBmaWxsaXN0ZmlsZW4gZsO2ciBwYWtldGV0IFwiJS4yNTBzXCIiCisKKyM6IHNyYy9maWxlc2RiLmM6NDYyCittc2dpZCAiKFJlYWRpbmcgZGF0YWJhc2UgLi4uICIKK21zZ3N0ciAiKEzDpHNlciBkYXRhYmFzZW4gLi4uICIKKworIzogc3JjL2ZpbGVzZGIuYzo0ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJWQgZmlsZSBvciBkaXJlY3RvcnkgY3VycmVudGx5IGluc3RhbGxlZC4pXG4iCittc2dpZF9wbHVyYWwgIiVkIGZpbGVzIGFuZCBkaXJlY3RvcmllcyBjdXJyZW50bHkgaW5zdGFsbGVkLilcbiIKK21zZ3N0clswXSAiJWQgZmlsIG9jaCBrYXRhbG9nIGluc3RhbGxlcmFkLilcbiIKK21zZ3N0clsxXSAiJWQgZmlsZXIgb2NoIGthdGFsb2dlciBpbnN0YWxsZXJhZGUuKVxuIgorCisjOiBzcmMvZmlsZXNkYi5jOjUxNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICJrdW5kZSBpbnRlIHNrYXBhIHVwcGRhdGVyYWQgZmlsbGlzdGZpbCBmw7ZyIHBha2V0ZXQgJXMiCisKKyM6IHNyYy9maWxlc2RiLmM6NTI2CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB3cml0ZSB0byB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAia3VuZGUgaW50ZSBza3JpdmEgdGlsbCB1cHBkYXRlcmFkIGZpbGxpc3RmaWwgZsO2ciBwYWtldGV0ICVzIgorCisjOiBzcmMvZmlsZXNkYi5jOjUyOAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZmx1c2ggdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgImt1bmRlIGludGUgdMO2bW1hIHVwcGRhdGVyYWQgZmlsbGlzdGZpbCBmw7ZyIHBha2V0ZXQgJXMiCisKKyM6IHNyYy9maWxlc2RiLmM6NTMwCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBzeW5jIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICJrdW5kZSBpbnRlIHN5bmtyb25pc2VyYSB1cHBkYXRlcmFkIGZpbGxpc3RmaWwgZsO2ciBwYWtldGV0ICVzIgorCisjOiBzcmMvZmlsZXNkYi5jOjUzMworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2xvc2UgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgImt1bmRlIGludGUgc3TDpG5nYSB1cHBkYXRlcmFkIGZpbGxpc3RmaWwgZsO2ciBwYWtldGV0ICVzIgorCisjOiBzcmMvZmlsZXNkYi5jOjUzNQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gaW5zdGFsbCB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAia3VuZGUgaW50ZSBpbnN0YWxsZXJhIHVwcGRhdGVyYWQgZmlsbGlzdGZpbCBmw7ZyIHBha2V0ZXQgJXMiCisKKyM6IHNyYy9oZWxwLmM6NDgKK21zZ2lkICJub3QgaW5zdGFsbGVkIgorbXNnc3RyICJlaiBpbnN0YWxsZXJhdCIKKworIzogc3JjL2hlbHAuYzo0OQorbXNnaWQgIm5vdCBpbnN0YWxsZWQgYnV0IGNvbmZpZ3MgcmVtYWluIgorbXNnc3RyICJlaiBpbnN0YWxsZXJhdCwgbWVuIGtvbmZpZ3VyYXRpb25zZmlsZXIga3ZhcnN0w6VyIgorCisjOiBzcmMvaGVscC5jOjUwCittc2dpZCAiYnJva2VuIGR1ZSB0byBmYWlsZWQgcmVtb3ZhbCBvciBpbnN0YWxsYXRpb24iCittc2dzdHIgInRyYXNpZ3QgcC5nLmEgbWlzc2x5Y2thZCBib3J0dGFnbmluZyBlbGxlciBpbnN0YWxsYXRpb24iCisKKyM6IHNyYy9oZWxwLmM6NTEKK21zZ2lkICJ1bnBhY2tlZCBidXQgbm90IGNvbmZpZ3VyZWQiCittc2dzdHIgInVwcGFja2F0LCBtZW4gb2tvbmZpZ3VyZXJhdCIKKworIzogc3JjL2hlbHAuYzo1MgorbXNnaWQgImJyb2tlbiBkdWUgdG8gcG9zdGluc3QgZmFpbHVyZSIKK21zZ3N0ciAidHJhc2lndCBwLmcuYSBmZWwgaSBwb3N0aW5zdCIKKworIzogc3JjL2hlbHAuYzo1MworbXNnaWQgImF3YWl0aW5nIHRyaWdnZXIgcHJvY2Vzc2luZyBieSBhbm90aGVyIHBhY2thZ2UiCittc2dzdHIgImF2dmFrdGFyIGhhbnRlcmluZyBhdiB1dGzDtnNhcmUgZsO2ciBldHQgYW5uYXQgcGFrZXQiCisKKyM6IHNyYy9oZWxwLmM6NTQKK21zZ2lkICJ0cmlnZ2VyZWQiCittc2dzdHIgInV0bMO2c3QiCisKKyM6IHNyYy9oZWxwLmM6NTUKK21zZ2lkICJpbnN0YWxsZWQiCittc2dzdHIgImluc3RhbGxlcmF0IgorCisjOiBzcmMvaGVscC5jOjEwNworbXNnaWQgIlBBVEggaXMgbm90IHNldC4iCittc2dzdHIgIlBBVEggw6RyIGludGUgc2F0dC4iCisKKyM6IHNyYy9oZWxwLmM6MTI5CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuIgorbXNnc3RyICJcIiVzXCIgZmlubnMgZWogaSBQQVRIIGVsbGVyIMOkciBpbnRlIGV4ZWt2ZXJiYXIuIgorCisjOiBzcmMvaGVscC5jOjEzOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJWQgZXhwZWN0ZWQgcHJvZ3JhbSBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS5cbiIKKyIlcyIKK21zZ2lkX3BsdXJhbCAiIgorIiVkIGV4cGVjdGVkIHByb2dyYW1zIG5vdCBmb3VuZCBpbiBQQVRIIG9yIG5vdCBleGVjdXRhYmxlLlxuIgorIiVzIgorbXNnc3RyWzBdICIiCisiJWQgZsO2cnbDpG50YXQgcHJvZ3JhbSBoaXR0YWRlcyBpbnRlIGkgUEFUSCBlbGxlciDDpHIgaW50ZSBleGVrdmVyYmFydC5cbiIKKyIlcyIKK21zZ3N0clsxXSAiIgorIiVkIGbDtnJ2w6RudGFkZSBwcm9ncmFtIGhpdHRhZGVzIGludGUgaSBQQVRIIGVsbGVyIMOkciBpbnRlIGV4ZWt2ZXJiYXJhLlxuIgorIiVzIgorCisjOiBzcmMvaGVscC5jOjE0MQorbXNnaWQgIiIKKyJOb3RlOiByb290J3MgUEFUSCBzaG91bGQgdXN1YWxseSBjb250YWluIC91c3IvbG9jYWwvc2JpbiwgL3Vzci9zYmluIGFuZCAvIgorInNiaW4uIgorbXNnc3RyICIiCisiT2JzISByb290cyBQQVRIIGLDtnIgdmFubGlndHZpcyBpbm5laMOlbGxhIC91c3IvbG9jYWwvc2JpbiwgL3Vzci9zYmluIG9jaCAvIgorInNiaW4uIgorCisjOiBzcmMvaGVscC5jOjE4OAorbXNnaWQgImFkbWluZGlyIG11c3QgYmUgaW5zaWRlIGluc3RkaXIgZm9yIGRwa2cgdG8gd29yayBwcm9wZXJseSIKK21zZ3N0ciAiIgorImFkbWluaXN0cmF0aW9uc2thdGFsb2dlbiBtw6VzdGUgdmFyYSBpbnV0aSBkcGtncyBpbnN0YWxsYXRpb25za3RhbG9nIGbDtnIgYXR0ICIKKyJmdW5nZXJhIGtvcnJla3QiCisKKyM6IHNyYy9oZWxwLmM6MTkwIHNyYy9tYWluLmM6NzQ3Cittc2dpZCAidW5hYmxlIHRvIHNldGVudiBmb3Igc3VicHJvY2Vzc2VzIgorbXNnc3RyICJrdW5kZSBpbnRlIHV0ZsO2cmEgc2V0ZW52IGbDtnIgdW5kZXJwcm9jZXNzZXIiCisKKyM6IHNyYy9oZWxwLmM6MTkyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjaHJvb3QgdG8gYCUuMjUwcyciCittc2dzdHIgImt1bmRlIGludGUgYnl0YSBmaWxzeXN0ZW1zcm90IHRpbGwgXCIlLjI1MHNcIiIKKworIzogc3JjL2hlbHAuYzoxOTQgZHBrZy1kZWIvYnVpbGQuYzo0NTUgZHBrZy1kZWIvYnVpbGQuYzo0NTcKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTM2IGRwa2ctZGViL2J1aWxkLmM6NTU4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byBgJS4yNTVzJyIKK21zZ3N0ciAia3VuZGUgaW50ZSBieXRhIGthdGFsb2cgdGlsbCBcIiUuMjU1c1wiIgorCisjOiBzcmMvaGVscC5jOjI1NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IGV4ZWN1dGUgcGVybWlzc2lvbnMgb24gYCUuMjUwcyciCittc2dzdHIgImt1bmRlIGludGUgc3TDpGxsYSBpbiBrw7ZycsOkdHRpZ2hldGVyIHDDpSBcIiUuMjUwc1wiIgorCisjOiBzcmMvaGVscC5jOjI3NgorbXNnaWQgInVuYWJsZSB0byBzZXRlbnYgZm9yIG1haW50YWluZXIgc2NyaXB0IgorbXNnc3RyICJrdW5kZSBpbnRlIHV0ZsO2cmEgc2V0ZW52IGbDtnIgdXR2ZWNrbGFyc2tyaXB0IgorCisjOiBzcmMvaGVscC5jOjMwMAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnN0YWxsZWQgJXMgc2NyaXB0IgorbXNnc3RyICJpbnN0YWxsZXJhZGUgJXMtc2tyaXB0IgorCisjOiBzcmMvaGVscC5jOjMxMyBzcmMvaGVscC5jOjM4MiBzcmMvaGVscC5jOjQ0MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCAlcyBgJS4yNTBzJyIKK21zZ3N0ciAia3VuZGUgaW50ZSB0YSBzdGF0dXMgcMOlICVzIFwiJS4yNTBzXCIiCisKKyM6IHNyYy9oZWxwLmM6MzY4IHNyYy9oZWxwLmM6NDI4CisjLCBjLWZvcm1hdAorbXNnaWQgIm5ldyAlcyBzY3JpcHQiCittc2dzdHIgIm55dHQgJXMtc2tyaXB0IgorCisjOiBzcmMvaGVscC5jOjQwMgorIywgYy1mb3JtYXQKK21zZ2lkICJvbGQgJXMgc2NyaXB0IgorbXNnc3RyICJnYW1tYWx0ICVzLXNrcmlwdCIKKworIzogc3JjL2hlbHAuYzo0MTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgJXMgJyUuMjUwcyc6ICVzIgorbXNnc3RyICJrdW5kZSBpbnRlIHRhIHN0YXR1cyBww6UgJXMgXCIlLjI1MHNcIjogJXMiCisKKyM6IHNyYy9oZWxwLmM6NDI1CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2cgLSB0cnlpbmcgc2NyaXB0IGZyb20gdGhlIG5ldyBwYWNrYWdlIGluc3RlYWQgLi4uXG4iCittc2dzdHIgImRwa2cgLSBmw7Zyc8O2a2VyIHNrcmlwdCBmcsOlbiBkZXQgbnlhIHBha2V0ZXQgaXN0w6RsbGV0IC4uLlxuIgorCisjOiBzcmMvaGVscC5jOjQzOQorbXNnaWQgInRoZXJlIGlzIG5vIHNjcmlwdCBpbiB0aGUgbmV3IHZlcnNpb24gb2YgdGhlIHBhY2thZ2UgLSBnaXZpbmcgdXAiCittc2dzdHIgImRldCBmaW5ucyBpbmdldCBza3JpcHQgaSBkZW4gbnlhIHZlcnNpb25lbiBhdiBwYWtldGV0IC0gZ2VyIHVwcCIKKworIzogc3JjL2hlbHAuYzo0NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogLi4uIGl0IGxvb2tzIGxpa2UgdGhhdCB3ZW50IE9LLlxuIgorbXNnc3RyICJkcGtnOiAuLi4gZGV0IHZlcmthciBoYSBmdW5nZXJhdC5cbiIKKworIzogc3JjL2hlbHAuYzo2MTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNlY3VyZWx5IHJlbW92ZSAnJS4yNTVzJyIKK21zZ3N0ciAia3VuZGUgaW50ZSBzw6RrZXJ0IHRhIGJvcnQgXCIlLjI1NXNcIiIKKworIzogc3JjL2hlbHAuYzo2MjEgZHBrZy1kZWIvaW5mby5jOjY1IGRwa2ctZGViL2luZm8uYzo2NworbXNnaWQgInJtIGNvbW1hbmQgZm9yIGNsZWFudXAiCittc2dzdHIgInJtLWtvbW1hbmRvIGbDtnIgc3TDpGRuaW5nIgorCisjOiBzcmMvaW5mb2RiLmM6NTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoZWNrIGV4aXN0ZW5jZSBvZiBgJS4yNTBzJyIKK21zZ3N0ciAia3VuZGUgaW50ZSBrb250cm9sbGVyYSBvbSBcIiUuMjUwc1wiIGV4aXN0ZXJhciIKKworIzogc3JjL2luZm9kYi5jOjcwCittc2dpZCAiY2Fubm90IHJlYWQgaW5mbyBkaXJlY3RvcnkiCittc2dzdHIgImthbiBpbnRlIGzDpHNhIGluZm9rYXRhbG9nIgorCisjOiBzcmMvbWFpbi5jOjYwCisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiBgJXMnIHBhY2thZ2UgbWFuYWdlbWVudCBwcm9ncmFtIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkRlYmlhbiBcIiVzXCIgcGFrZXRoYW50ZXJpbmdzcHJvZ3JhbSB2ZXJzaW9uICVzLlxuIgorCisjOiBzcmMvbWFpbi5jOjg1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1pfC0taW5zdGFsbCAgICAgICA8LmRlYiBmaWxlIG5hbWU+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXJlY3Rvcnk+IC4uLlxuIgorIiAgLS11bnBhY2sgICAgICAgICAgIDwuZGViIGZpbGUgbmFtZT4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRpcmVjdG9yeT4gLi4uXG4iCisiICAtQXwtLXJlY29yZC1hdmFpbCAgPC5kZWIgZmlsZSBuYW1lPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyZWN0b3J5PiAuLi5cbiIKKyIgIC0tY29uZmlndXJlICAgICAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtLXRyaWdnZXJzLW9ubHkgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLXJ8LS1yZW1vdmUgICAgICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC1QfC0tcHVyZ2UgICAgICAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtLWdldC1zZWxlY3Rpb25zIFs8cGF0dGVybj4gLi4uXSBHZXQgbGlzdCBvZiBzZWxlY3Rpb25zIHRvIHN0ZG91dC5cbiIKKyIgIC0tc2V0LXNlbGVjdGlvbnMgICAgICAgICAgICAgICAgIFNldCBwYWNrYWdlIHNlbGVjdGlvbnMgZnJvbSBzdGRpbi5cbiIKKyIgIC0tY2xlYXItc2VsZWN0aW9ucyAgICAgICAgICAgICAgIERlc2VsZWN0IGV2ZXJ5IG5vbi1lc3NlbnRpYWwgcGFja2FnZS5cbiIKKyIgIC0tdXBkYXRlLWF2YWlsIDxQYWNrYWdlcy1maWxlPiAgIFJlcGxhY2UgYXZhaWxhYmxlIHBhY2thZ2VzIGluZm8uXG4iCisiICAtLW1lcmdlLWF2YWlsIDxQYWNrYWdlcy1maWxlPiAgICBNZXJnZSB3aXRoIGluZm8gZnJvbSBmaWxlLlxuIgorIiAgLS1jbGVhci1hdmFpbCAgICAgICAgICAgICAgICAgICAgRXJhc2UgZXhpc3RpbmcgYXZhaWxhYmxlIGluZm8uXG4iCisiICAtLWZvcmdldC1vbGQtdW5hdmFpbCAgICAgICAgICAgICBGb3JnZXQgdW5pbnN0YWxsZWQgdW5hdmFpbGFibGUgcGtncy5cbiIKKyIgIC1zfC0tc3RhdHVzIDxwYWNrYWdlPiAuLi4gICAgICAgIERpc3BsYXkgcGFja2FnZSBzdGF0dXMgZGV0YWlscy5cbiIKKyIgIC1wfC0tcHJpbnQtYXZhaWwgPHBhY2thZ2U+IC4uLiAgIERpc3BsYXkgYXZhaWxhYmxlIHZlcnNpb24gZGV0YWlscy5cbiIKKyIgIC1MfC0tbGlzdGZpbGVzIDxwYWNrYWdlPiAuLi4gICAgIExpc3QgZmlsZXMgYG93bmVkJyBieSBwYWNrYWdlKHMpLlxuIgorIiAgLWx8LS1saXN0IFs8cGF0dGVybj4gLi4uXSAgICAgICAgTGlzdCBwYWNrYWdlcyBjb25jaXNlbHkuXG4iCisiICAtU3wtLXNlYXJjaCA8cGF0dGVybj4gLi4uICAgICAgICBGaW5kIHBhY2thZ2Uocykgb3duaW5nIGZpbGUocykuXG4iCisiICAtQ3wtLWF1ZGl0ICAgICAgICAgICAgICAgICAgICAgICBDaGVjayBmb3IgYnJva2VuIHBhY2thZ2UocykuXG4iCisiICAtLXByaW50LWFyY2hpdGVjdHVyZSAgICAgICAgICAgICBQcmludCBkcGtnIGFyY2hpdGVjdHVyZS5cbiIKKyIgIC0tY29tcGFyZS12ZXJzaW9ucyA8YT4gPG9wPiA8Yj4gIENvbXBhcmUgdmVyc2lvbiBudW1iZXJzIC0gc2VlIGJlbG93LlxuIgorIiAgLS1mb3JjZS1oZWxwICAgICAgICAgICAgICAgICAgICAgU2hvdyBoZWxwIG9uIGZvcmNpbmcuXG4iCisiICAtRGh8LS1kZWJ1Zz1oZWxwICAgICAgICAgICAgICAgICBTaG93IGhlbHAgb24gZGVidWdnaW5nLlxuIgorIlxuIgorbXNnc3RyICIiCisiICAtaXwtLWluc3RhbGwgICAgICA8LmRlYi1maWxuYW1uPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8a2F0PiAuLi5cbiIKKyIgIC0tdW5wYWNrICAgICAgICAgIDwuZGViLWZpbG5hbW4+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxrYXQ+IC4uLlxuIgorIiAgLUF8LS1yZWNvcmQtYXZhaWwgPC5kZWItZmlsbmFtbj4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGthdD4gLi4uXG4iCisiICAtLWNvbmZpZ3VyZSAgICAgICAgPHBha2V0bmFtbj4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtLXRyaWdnZXJzLW9ubHkgICAgPHBha2V0bmFtbj4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtcnwtLXJlbW92ZSAgICAgICAgPHBha2V0bmFtbj4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtUHwtLXB1cmdlICAgICAgICAgPHBha2V0bmFtbj4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtLWdldC1zZWxlY3Rpb25zIFs8bcO2bnN0ZXI+IC4uLl0gU8OkbmQgbGlzdGEgw7Z2ZXIgdmFsIHRpbGwgc3RhbmRhcmQgdXRcbiIKKyIgIC0tc2V0LXNlbGVjdGlvbnMgICAgICAgICAgICAgICAgIFPDpHR0IHBha2V0dmFsIGZyw6VuIHN0YW5kYXJkIGluXG4iCisiICAtLXVwZGF0ZS1hdmFpbCA8UGFja2FnZXMtZmlsPiAgICBFcnPDpHR0IGV4aXN0ZXJhbmRlIHBha2V0aW5mb1xuIgorIiAgLS1tZXJnZS1hdmFpbCA8UGFja2FnZXMtZmlsPiAgICAgU2zDpSBpaG9wIG1lZCBpbmZvIGZyw6VuIGZpbFxuIgorIiAgLS1jbGVhci1hdmFpbCAgICAgICAgICAgICAgICAgICAgVGEgYm9ydCB0aWxsZ8OkbmdsaWcgaW5mb1xuIgorIiAgLS1mb3JnZXQtb2xkLXVuYXZhaWwgICAgICAgICAgICAgR2zDtm0gb2luc3RhbGxlcmFkZSBvdGlsbGfDpG5nbGlnYSBwYWtldFxuIgorIiAgLXN8LS1zdGF0dXMgPHBha2V0bmFtbj4gLi4uICAgICAgVmlzYSBkZXRhbGplciBvbSBwYWtldHN0YXR1c1xuIgorIiAgLXB8LS1wcmludC1hdmFpbCA8cGFrZXRuYW1uPiAuLi4gVmlzYSBkZXRhbGplciBvbSB0aWxsZ8OkbmdsaWcgdmVyc2lvblxuIgorIiAgLUx8LS1saXN0ZmlsZXMgPHBha2V0bmFtbj4gLi4uICAgVmlzYSBmaWxlciBcIsOkZ2RhXCIgYXYgcGFrZXRcbiIKKyIgIC1sfC0tbGlzdCBbPG3Dtm5zdGVyPiAuLi5dICAgICAgICBWaXNhIHNhbW1hbmZhdHRhbmRlIHBha2V0bGlzdGFcbiIKKyIgIC1TfC0tc2VhcmNoIDxtw7Zuc3Rlcj4gLi4uICAgICAgICBTw7ZrIHBha2V0IHNvbSDDpGdlciBmaWwoZXIpXG4iCisiICAtQ3wtLWF1ZGl0ICAgICAgICAgICAgICAgICAgICAgICBTw7ZrIHRyYXNpZ2EgcGFrZXRcbiIKKyIgIC0tcHJpbnQtYXJjaGl0ZWN0dXJlICAgICAgICAgICAgIFZpc2EgZHBrZy1hcmtpdGVrdHVyXG4iCisiICAtLWNvbXBhcmUtdmVyc2lvbnMgPGE+IDxyZWw+IDxiPiBKw6RtZsO2ciB2ZXJzaW9uc251bW1lciAtIHNlIG5lZGFuXG4iCisiICAtLWZvcmNlLWhlbHAgICAgICAgICAgICAgICAgICAgICBWaXNhIGhqw6RscCBmw7ZyIHR2aW5nYW5kZS5cbiIKKyIgIC1EaHwtLWRlYnVnPWhlbHAgICAgICAgICAgICAgICAgIFZpc2EgaGrDpGxwIGbDtnIgZmVsc8O2a25pbmcuXG4iCisKKyM6IHNyYy9tYWluLmM6MTEzIHNyYy9xdWVyeWNtZC5jOjYzMSBzcmMvdHJpZ2NtZC5jOjc3IGRwa2ctZGViL21haW4uYzo4OAorIzogZHBrZy1zcGxpdC9tYWluLmM6NzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiAgLWh8LS1oZWxwICAgICAgICAgICAgICAgICAgICAgICAgU2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCittc2dzdHIgIiIKKyIgIC1ofC0taGVscCAgICAgICAgICAgICAgICAgICAgICAgIFZpc2EgZGV0dGEgaGrDpGxwbWVkZGVsYW5kZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgICAgICAgIFZpc2EgdmVyc2lvbnNudW1tZXIuXG4iCisKKyM6IHNyYy9tYWluLmM6MTE4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJVc2UgZHBrZyAtYnwtLWJ1aWxkfC1jfC0tY29udGVudHN8LWV8LS1jb250cm9sfC1JfC0taW5mb3wtZnwtLWZpZWxkfFxuIgorIiAteHwtLWV4dHJhY3R8LVh8LS12ZXh0cmFjdHwtLWZzeXMtdGFyZmlsZSAgb24gYXJjaGl2ZXMgKHR5cGUgJXMgLS1oZWxwKS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIkFudsOkbmQgZHBrZyAtYnwtLWJ1aWxkfC1jfC0tY29udGVudHN8LWV8LS1jb250cm9sfC1JfC0taW5mb3wtZnwtLWZpZWxkfFxuIgorIiAteHwtLWV4dHJhY3R8LVh8LS12ZXh0cmFjdHwtLWZzeXMtdGFyZmlsZSAgcMOlIGFya2l2IChza3JpdiAlcyAtLWhlbHAuKVxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjEyMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiRm9yIGludGVybmFsIHVzZTogZHBrZyAtLWFzc2VydC1zdXBwb3J0LXByZWRlcGVuZHMgfCAtLXByZWRlcC1wYWNrYWdlIHxcbiIKKyIgIC0tYXNzZXJ0LXdvcmtpbmctZXBvY2ggfCAtLWFzc2VydC1sb25nLWZpbGVuYW1lcyB8IC0tYXNzZXJ0LW11bHRpLWNvbnJlcC5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIkbDtnIgaW50ZXJudCBicnVrOiBkcGtnIC0tYXNzZXJ0LXN1cHBvcnQtcHJlZGVwZW5kcyB8IC0tcHJlZGVwLXBhY2thZ2UgfFxuIgorIiAgLS1hc3NlcnQtd29ya2luZy1lcG9jaCB8IC0tYXNzZXJ0LWxvbmctZmlsZW5hbWVzIHwgLS1hc3NlcnQtbXVsdGktY29ucmVwXG4iCisKKyM6IHNyYy9tYWluLmM6MTI4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hZG1pbmRpcj08ZGlyZWN0b3J5PiAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMuXG4iCisiICAtLXJvb3Q9PGRpcmVjdG9yeT4gICAgICAgICBJbnN0YWxsIG9uIGEgZGlmZmVyZW50IHJvb3QgZGlyZWN0b3J5LlxuIgorIiAgLS1pbnN0ZGlyPTxkaXJlY3Rvcnk+ICAgICAgQ2hhbmdlIGluc3RhbGxhdGlvbiBkaXIgd2l0aG91dCBjaGFuZ2luZyBhZG1pbiAiCisiZGlyLlxuIgorIiAgLS1wYXRoLWV4Y2x1ZGU9PHBhdHRlcm4+ICAgRG8gbm90IGluc3RhbGwgcGF0aHMgd2hpY2ggbWF0Y2ggYSBzaGVsbCAiCisicGF0dGVybi5cbiIKKyIgIC0tcGF0aC1pbmNsdWRlPTxwYXR0ZXJuPiAgIFJlLWluY2x1ZGUgYSBwYXR0ZXJuIGFmdGVyIGEgcHJldmlvdXMgIgorImV4Y2x1c2lvbi5cbiIKKyIgIC1PfC0tc2VsZWN0ZWQtb25seSAgICAgICAgIFNraXAgcGFja2FnZXMgbm90IHNlbGVjdGVkIGZvciBpbnN0YWxsLyIKKyJ1cGdyYWRlLlxuIgorIiAgLUV8LS1za2lwLXNhbWUtdmVyc2lvbiAgICAgU2tpcCBwYWNrYWdlcyB3aG9zZSBzYW1lIHZlcnNpb24gaXMgaW5zdGFsbGVkLlxuIgorIiAgLUd8LS1yZWZ1c2UtZG93bmdyYWRlICAgICAgU2tpcCBwYWNrYWdlcyB3aXRoIGVhcmxpZXIgdmVyc2lvbiB0aGFuICIKKyJpbnN0YWxsZWQuXG4iCisiICAtQnwtLWF1dG8tZGVjb25maWd1cmUgICAgICBJbnN0YWxsIGV2ZW4gaWYgaXQgd291bGQgYnJlYWsgc29tZSBvdGhlciAiCisicGFja2FnZS5cbiIKKyIgIC0tW25vLV10cmlnZ2VycyAgICAgICAgICAgIFNraXAgb3IgZm9yY2UgY29uc2VxdWVudGlhbCB0cmlnZ2VyICIKKyJwcm9jZXNzaW5nLlxuIgorIiAgLS1uby1kZWJzaWcgICAgICAgICAgICAgICAgRG8gbm90IHRyeSB0byB2ZXJpZnkgcGFja2FnZSBzaWduYXR1cmVzLlxuIgorIiAgLS1uby1hY3R8LS1kcnktcnVufC0tc2ltdWxhdGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEp1c3Qgc2F5IHdoYXQgd2Ugd291bGQgZG8gLSBkb24ndCBkbyBpdC5cbiIKKyIgIC1EfC0tZGVidWc9PG9jdGFsPiAgICAgICAgIEVuYWJsZSBkZWJ1Z2dpbmcgKHNlZSAtRGhlbHAgb3IgLS1kZWJ1Zz1oZWxwKS5cbiIKKyIgIC0tc3RhdHVzLWZkIDxuPiAgICAgICAgICAgIFNlbmQgc3RhdHVzIGNoYW5nZSB1cGRhdGVzIHRvIGZpbGUgZGVzY3JpcHRvciAiCisiPG4+LlxuIgorIiAgLS1sb2c9PGZpbGVuYW1lPiAgICAgICAgICAgTG9nIHN0YXR1cyBjaGFuZ2VzIGFuZCBhY3Rpb25zIHRvIDxmaWxlbmFtZT4uXG4iCisiICAtLWlnbm9yZS1kZXBlbmRzPTxwYWNrYWdlPiwuLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIElnbm9yZSBkZXBlbmRlbmNpZXMgaW52b2x2aW5nIDxwYWNrYWdlPi5cbiIKKyIgIC0tZm9yY2UtLi4uICAgICAgICAgICAgICAgIE92ZXJyaWRlIHByb2JsZW1zIChzZWUgLS1mb3JjZS1oZWxwKS5cbiIKKyIgIC0tbm8tZm9yY2UtLi4ufC0tcmVmdXNlLS4uLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcCB3aGVuIHByb2JsZW1zIGVuY291bnRlcmVkLlxuIgorIiAgLS1hYm9ydC1hZnRlciA8bj4gICAgICAgICAgQWJvcnQgYWZ0ZXIgZW5jb3VudGVyaW5nIDxuPiBlcnJvcnMuXG4iCisiXG4iCittc2dzdHIgIiIKKyJGbGFnZ29yOlxuIgorIiAgLS1hZG1pbmRpcj08a2F0YWxvZz4gICAgICAgQW52w6RuZCA8a2F0YWxvZz4gaS5zdC5mICVzXG4iCisiICAtLXJvb3Q9PGthdGFsb2c+ICAgICAgICAgICBJbnN0YWxsZXJhIHDDpSBhbHRlcm5hdGl2dCBzeXN0ZW0gbWVkIGFubmFuIHJvdFxuIgorIiAgLS1pbnN0ZGlyPTxrYXRhbG9nPiAgICAgICAgQnl0IGluc3RhbGxhdGlvbnNyb3QsIG1lbiBpbnRlIGFkbWluLi1rYXRhbG9nXG4iCisiICAtLXBhdGgtZXhjbHVkZT08bcO2bnN0ZXI+ICAgSW5zdGFsbGVyYSBpbnRlIHPDtmt2w6RnYXIgc29tIG1vdHN2YXJhciBldHQgIgorInNrYWxtw7Zuc3Rlci5cbiIKKyIgIC0tcGF0aC1pbmNsdWRlPTxtw7Zuc3Rlcj4gICBJbmtsdWRlcmEgw6V0ZXIgZXR0IG3Dtm5zdGVyIGVmdGVyIHRpZGlnYXJlICIKKyJleGtsdWRlcmluZy5cbiIKKyIgIC1PfC0tc2VsZWN0ZWQtb25seSAgICAgICAgIEhvcHBhIMO2dmVyIHBha2V0IGVqIHZhbGRhIGbDtnIgaW5zdGFsbC4vIgorInVwcGdyYWQuXG4iCisiICAtRXwtLXNraXAtc2FtZS12ZXJzaW9uICAgICBIb3BwYSDDtnZlciBwYWtldCBtZWQgc2FtbWEgdmVyc2lvbiBzb20gIgorImluc3RhbGwuXG4iCisiICAtR3wtLXJlZnVzZS1kb3duZ3JhZGUgICAgICBIb3BwYSDDtnZlciBwYWtldCBtZWQgdGlkaWdhcmUgdmVyc2lvbiDDpG4gIgorImluc3RhbGwuXG4iCisiICAtQnwtLWF1dG8tZGVjb25maWd1cmUgICAgICBJbnN0YWxsZXJhIMOkdmVuIG9tIGRldCBmw7Zyc3TDtnIgYW5kcmEgcGFrZXQuXG4iCisiICAtLVtuby1ddHJpZ2dlcnMgICAgICAgICAgICBIb3BwYSDDtnZlciBlbGxlciB0dmluZ2EgaGFudGVyaW5nIGF2IHV0bMO2c2FyZS5cbiIKKyIgIC0tbm8tZGVic2lnICAgICAgICAgICAgICAgIEbDtnJzw7ZrIGludGUgdmVyaWZpZXJhIHBha2V0c2lnbmF0dXJlclxuIgorIiAgLS1uby1hY3R8LS1kcnktcnVufC0tc2ltdWxhdGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFPDpGcgYmFyYSB2YWQgc29tIHNrdWxsZSBow6RuZGEgLSB1dGbDtnIgIgorImluZ2VudGluZy5cbiIKKyIgIC1EfC0tZGVidWc9PG9rdGFsdD4gICAgICAgIFNsw6UgcMOlIGZlbHPDtmtuaW5nIChzZSAtRGhlbHAgZWxsZXIgLS0iCisiZGVidWc9aGVscCkuXG4iCisiICAtLXN0YXR1cy1mZCA8bj4gICAgICAgICAgICBTw6RuZCBzdGF0dXPDpG5kcmluZ2FyIHRpbGwgZmlsaWRlbnRpZmllcmFyZSA8bj5cbiIKKyIgIC0tbG9nPTxmaWxuYW1uPiAgICAgICAgICAgIExvZ2dhIHN0YXR1c8OkbmRyaW5nYXIgb2NoIMOldGfDpHJkZXIgdGlsbCAiCisiPGZpbG5hbW4+XG4iCisiICAtLWlnbm9yZS1kZXBlbmRzPTxwYWtldD4sLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZ25vcmVyYSBiZXJvZW5kZW4gYW5nw6VlbmRlIDxwYWtldD5cbiIKKyIgIC0tZm9yY2UtLi4uICAgICAgICAgICAgICAgIFR2aW5nYSB1dGbDtnJhbmRlIC0gc2UgLS1mb3JjZS1oZWxwXG4iCisiICAtLW5vLWZvcmNlLS4uLnwtLXJlZnVzZS0uLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0YW5uYSBuw6RyIHByb2JsZW0gdXBwc3TDpXJcbiIKKyIgIC0tYWJvcnQtYWZ0ZXIgPG4+ICAgICAgICAgIEF2YnJ5dCBlZnRlciA8bj4gZmVsXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTU0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21wYXJpc29uIG9wZXJhdG9ycyBmb3IgLS1jb21wYXJlLXZlcnNpb25zIGFyZTpcbiIKKyIgIGx0IGxlIGVxIG5lIGdlIGd0ICAgICAgICh0cmVhdCBlbXB0eSB2ZXJzaW9uIGFzIGVhcmxpZXIgdGhhbiBhbnkgIgorInZlcnNpb24pO1xuIgorIiAgbHQtbmwgbGUtbmwgZ2UtbmwgZ3QtbmwgKHRyZWF0IGVtcHR5IHZlcnNpb24gYXMgbGF0ZXIgdGhhbiBhbnkgdmVyc2lvbik7XG4iCisiICA8IDw8IDw9ID0gPj0gPj4gPiAgICAgICAob25seSBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIGNvbnRyb2wgZmlsZSAiCisic3ludGF4KS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIkrDpG1mw7ZyZWxzZW9wZXJhdG9yZXIgZsO2ciAtLWNvbXBhcmUtdmVyc2lvbnMgw6RyOlxuIgorIiBsdCBsZSBlcSBuZSBnZSBndCAgICAgICAodG9tIHZlcnNpb24gYW5zZXMgbMOkZ3JlIMOkbiBhbGxhIGFuZHJhIHZlcnNpb25lcilcbiIKKyIgbHQtbmwgbGUtbmwgZ2UtbmwgZ3QtbmwgKHRvbSB2ZXJzaW9uIGFuc2VzIGjDtmdyZSDDpG4gYWxsYSBhbmRyYSB2ZXJzaW9uZXIpXG4iCisiIDwgPDwgPD0gPSA+PSA+PiA+ICAgICAgIChlbmRhc3QgZsO2ciBrb21wYXRpYmlsaXRldCBtZWQga29udHJvbGxmaWxzc3ludGF4KVxuIgorCisjOiBzcmMvbWFpbi5jOjE2MQorIywgYy1mb3JtYXQKK21zZ2lkICJVc2UgYGRzZWxlY3QnIG9yIGBhcHRpdHVkZScgZm9yIHVzZXItZnJpZW5kbHkgcGFja2FnZSBtYW5hZ2VtZW50LlxuIgorbXNnc3RyICIiCisiQW52w6RuZCBcImRzZWxlY3RcIiBlbGxlciBcImFwdGl0dWRlXCIgZsO2ciBhbnbDpG5kYXJ2w6RubGlnIHBha2V0aGFudGVyaW5nLlxuIgorCisjOiBzcmMvbWFpbi5jOjE3MAorbXNnaWQgIiIKKyJUeXBlIGRwa2cgLS1oZWxwIGZvciBoZWxwIGFib3V0IGluc3RhbGxpbmcgYW5kIGRlaW5zdGFsbGluZyBwYWNrYWdlcyBbKl07XG4iCisiVXNlIGBkc2VsZWN0JyBvciBgYXB0aXR1ZGUnIGZvciB1c2VyLWZyaWVuZGx5IHBhY2thZ2UgbWFuYWdlbWVudDtcbiIKKyJUeXBlIGRwa2cgLURoZWxwIGZvciBhIGxpc3Qgb2YgZHBrZyBkZWJ1ZyBmbGFnIHZhbHVlcztcbiIKKyJUeXBlIGRwa2cgLS1mb3JjZS1oZWxwIGZvciBhIGxpc3Qgb2YgZm9yY2luZyBvcHRpb25zO1xuIgorIlR5cGUgZHBrZy1kZWIgLS1oZWxwIGZvciBoZWxwIGFib3V0IG1hbmlwdWxhdGluZyAqLmRlYiBmaWxlcztcbiIKKyJcbiIKKyJPcHRpb25zIG1hcmtlZCBbKl0gcHJvZHVjZSBhIGxvdCBvZiBvdXRwdXQgLSBwaXBlIGl0IHRocm91Z2ggYGxlc3MnIG9yICIKKyJgbW9yZScgISIKK21zZ3N0ciAiIgorIlNrcml2IGRwa2cgLS1oZWxwIGbDtnIgaGrDpGxwIG9tIGF0dCBpbnN0YWxsZXJhIG9jaCBhdmluc3RhbGxlcmEgcGFrZXQgWypdO1xuIgorIkFudsOkbmQgXCJkc2VsZWN0XCIgZWxsZXIgXCJhcHRpdHVkZVwiIGbDtnIgYW52w6RuZGFydsOkbmxpZyBwYWtldGhhbnRlcmluZztcbiIKKyJTa3JpdiBkcGtnIC1EaGVscCBmw7ZyIGVuIGxpc3RhIMO2dmVyIHbDpHJkZW4gZsO2ciBkcGtncyBmZWxzw7ZrbmluZ3NmbGFnZ2E7XG4iCisiU2tyaXYgZHBrZyAtLWZvcmNlLWhlbHAgZsO2ciBlbiBsaXN0YSDDtnZlciB0dmluZ2FuZGUgZmxhZ2dvcjtcbiIKKyJTa3JpdiBkcGtnLWRlYiAtLWhlbHAgZsO2ciBoasOkbHAgb20gbWFuaXB1bGVyaW5nIGF2ICouZGViLWZpbGVyO1xuIgorIlxuIgorIkZsYWdnb3IgbWFya2VyYWRlIG1lZCBbKl0gZ2VyIG15Y2tldCB1dGRhdGEgLSBrw7ZyIGdlbm9tIFwibGVzc1wiIGVsbGVyIFwibW9yZSIKKyJcIiEiCisKKyM6IHNyYy9tYWluLmM6MjE5Cittc2dpZCAiU2V0IGFsbCBmb3JjZSBvcHRpb25zIgorbXNnc3RyICJBa3RpdmVyYSBhbGxhIHR2aW5nYW5kZSBmbGFnZ29yIgorCisjOiBzcmMvbWFpbi5jOjIyMQorbXNnaWQgIlJlcGxhY2UgYSBwYWNrYWdlIHdpdGggYSBsb3dlciB2ZXJzaW9uIgorbXNnc3RyICJFcnPDpHR0IHBha2V0IG1lZCBlbiBsw6RncmUgdmVyc2lvbiIKKworIzogc3JjL21haW4uYzoyMjMKK21zZ2lkICJDb25maWd1cmUgYW55IHBhY2thZ2Ugd2hpY2ggbWF5IGhlbHAgdGhpcyBvbmUiCittc2dzdHIgIktvbmZpZ3VyZXJhIGdvZHR5Y2tsaWd0IHBha2V0IHNvbSBrYW4gaGrDpGxwYSBkZXR0YSIKKworIzogc3JjL21haW4uYzoyMjUKK21zZ2lkICJQcm9jZXNzIGluY2lkZW50YWwgcGFja2FnZXMgZXZlbiB3aGVuIG9uIGhvbGQiCittc2dzdHIgIkhhbnRlcmEgb3bDpHNlbnRsaWdhIHBha2V0IMOkdmVuIG7DpHIgZGUgaMOlbGxzIgorCisjOiBzcmMvbWFpbi5jOjIyNworbXNnaWQgIlRyeSB0byAoZGUpaW5zdGFsbCB0aGluZ3MgZXZlbiB3aGVuIG5vdCByb290IgorbXNnc3RyICJGw7Zyc8O2ayAoYXYpaW5zdGFsbGVyYSBzYWtlciDDpHZlbiBzb20gaWNrZS1yb290IgorCisjOiBzcmMvbWFpbi5jOjIyOQorbXNnaWQgIlBBVEggaXMgbWlzc2luZyBpbXBvcnRhbnQgcHJvZ3JhbXMsIHByb2JsZW1zIGxpa2VseSIKK21zZ3N0ciAiUEFUSCBzYWtuYXIgdmlrdGlnYSBwcm9ncmFtLCBwcm9ibGVtIHRyb2xsaWdhIgorCisjOiBzcmMvbWFpbi5jOjIzMQorbXNnaWQgIkluc3RhbGwgYSBwYWNrYWdlIGV2ZW4gaWYgaXQgZmFpbHMgYXV0aGVudGljaXR5IGNoZWNrIgorbXNnc3RyICJJbnN0YWxsZXJhIHBha2V0IMOkdmVuIG9tIGF1dGVudGlzZXJpbmcgbWlzc2x5Y2thcyIKKworIzogc3JjL21haW4uYzoyMzMKK21zZ2lkICJQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyB2ZXJzaW9ucyIKK21zZ3N0ciAiSGFudGVyYSDDpHZlbiBwYWtldCBtZWQgZmVsIHZlcnNpb25lciIKKworIzogc3JjL21haW4uYzoyMzUKK21zZ2lkICJPdmVyd3JpdGUgYSBmaWxlIGZyb20gb25lIHBhY2thZ2Ugd2l0aCBhbm90aGVyIgorbXNnc3RyICJTa3JpdiDDtnZlciBwYWtldHMgZmlsIG1lZCBldHQgYW5uYXRzIgorCisjOiBzcmMvbWFpbi5jOjIzNworbXNnaWQgIk92ZXJ3cml0ZSBhIGRpdmVydGVkIGZpbGUgd2l0aCBhbiB1bmRpdmVydGVkIHZlcnNpb24iCittc2dzdHIgIlNrcml2IMO2dmVyIG9tZGlyaWdlcmFkIGZpbCBtZWQgZWogb21kaXJpZ2VyYWQiCisKKyM6IHNyYy9tYWluLmM6MjM5Cittc2dpZCAiT3ZlcndyaXRlIG9uZSBwYWNrYWdlJ3MgZGlyZWN0b3J5IHdpdGggYW5vdGhlcidzIGZpbGUiCittc2dzdHIgIlNrcml2IMO2dmVyIGV0dCBwYWtldHMga2F0YWxvZyBtZWQgZXR0IGFubmF0cyBmaWwiCisKKyM6IHNyYy9tYWluLmM6MjQxCittc2dpZCAiRG8gbm90IHBlcmZvcm0gc2FmZSBJL08gb3BlcmF0aW9ucyB3aGVuIHVucGFja2luZyIKK21zZ3N0ciAiVXRmw7ZyIGVqIHPDpGtyYSBJL08tb3BlcmF0aW9uZXIgdmlkIHVwcGFja25pbmciCisKKyM6IHNyYy9tYWluLmM6MjQzCittc2dpZCAiQWx3YXlzIHVzZSB0aGUgbmV3IGNvbmZpZyBmaWxlcywgZG9uJ3QgcHJvbXB0IgorbXNnc3RyICJBbnbDpG5kIGFsbHRpZCBueWEga29uZmlndXJhdGlvbnNmaWxlciwgZnLDpWdhIGVqIgorCisjOiBzcmMvbWFpbi5jOjI0NQorbXNnaWQgIkFsd2F5cyB1c2UgdGhlIG9sZCBjb25maWcgZmlsZXMsIGRvbid0IHByb21wdCIKK21zZ3N0ciAiQW52YcyIbmQgYWxsdGlkIGdhbWxhIGtvbmZpZ3VyYXRpb25zZmlsZXIsIGZyYcyKZ2EgZWoiCisKKyM6IHNyYy9tYWluLmM6MjQ4Cittc2dpZCAiIgorIlVzZSB0aGUgZGVmYXVsdCBvcHRpb24gZm9yIG5ldyBjb25maWcgZmlsZXMgaWYgb25lXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgIGlzIGF2YWlsYWJsZSwgZG9uJ3QgcHJvbXB0LiBJZiBubyBkZWZhdWx0IGNhbiBiZSAiCisiZm91bmQsXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgIHlvdSB3aWxsIGJlIHByb21wdGVkIHVubGVzcyBvbmUgb2YgdGhlIGNvbmZvbGQgb3JcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgY29uZm5ldyBvcHRpb25zIGlzIGFsc28gZ2l2ZW4iCittc2dzdHIgIiIKKyJBbnbDpG5kIGbDtnJ2YWwgZsO2ciBueWEga29uZmlndXJhdGlvbnNmaWxlciBvbSBzw6VkYW50XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgIGZpbm5zLCBmcsOlZ2EgZWouIE9tIGluZ2V0IGbDtnJ2YWwgZmlubnMgdGlsbGZyw6VnYXMgIgorImR1XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgIHPDpXZpZGEgaW50ZSBmbGFnZ29ybmEgY29uZm9sZCBlbGxlciBjb25mbmV3XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgIG9ja3PDpSBhbmdpdml0IgorCisjOiBzcmMvbWFpbi5jOjI1MworbXNnaWQgIkFsd2F5cyBpbnN0YWxsIG1pc3NpbmcgY29uZmlnIGZpbGVzIgorbXNnc3RyICJJbnN0YWxsZXJhIGFsbHRpZCBzYWtuYWRlIGtvbmZpZ3VyYXRpb25zZmlsZXIiCisKKyM6IHNyYy9tYWluLmM6MjU1Cittc2dpZCAiT2ZmZXIgdG8gcmVwbGFjZSBjb25maWcgZmlsZXMgd2l0aCBubyBuZXcgdmVyc2lvbnMiCittc2dzdHIgIkVyYmp1ZCBlcnPDpHR0YSBrb25maWd1cmF0aW9uc2ZpbGVyIHNvbSBzYWtuYXIgbnlhIHZlcnNpb25lciIKKworIzogc3JjL21haW4uYzoyNTcKK21zZ2lkICJQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyBvciBubyBhcmNoaXRlY3R1cmUiCittc2dzdHIgIkhhbnRlcmEgw6R2ZW4gcGFrZXQgbWVkIGZlbCBlbGxlciBzYWtuYWQgYXJraXRla3R1ciIKKworIzogc3JjL21haW4uYzoyNTkKK21zZ2lkICJJbnN0YWxsIGV2ZW4gaWYgaXQgd291bGQgYnJlYWsgYW5vdGhlciBwYWNrYWdlIgorbXNnc3RyICJJbnN0YWxsZXJhIMOkdmVuIG9tIGV0dCBhbm5hdCBwYWtldCBza3VsbGUgZ8OlIHPDtm5kZXIiCisKKyM6IHNyYy9tYWluLmM6MjYxCittc2dpZCAiQWxsb3cgaW5zdGFsbGF0aW9uIG9mIGNvbmZsaWN0aW5nIHBhY2thZ2VzIgorbXNnc3RyICJUaWxsw6V0IGluc3RhbGxlcmEgcGFrZXQgc29tIMOkciBpIGtvbmZsaWt0IgorCisjOiBzcmMvbWFpbi5jOjI2MworbXNnaWQgIlR1cm4gYWxsIGRlcGVuZGVuY3kgcHJvYmxlbXMgaW50byB3YXJuaW5ncyIKK21zZ3N0ciAiR8O2ciBhbGxhIGJlcm9lbmRlcHJvYmxlbSB0aWxsIHZhcm5pbmdhciIKKworIzogc3JjL21haW4uYzoyNjUKK21zZ2lkICJUdXJuIGRlcGVuZGVuY3kgdmVyc2lvbiBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzIgorbXNnc3RyICJHw7ZyIHZlcnNpb25zYmVyb2VuZGVwcm9ibGVtIHRpbGwgdmFybmluZ2FyIgorCisjOiBzcmMvbWFpbi5jOjI2NworbXNnaWQgIlJlbW92ZSBwYWNrYWdlcyB3aGljaCByZXF1aXJlIGluc3RhbGxhdGlvbiIKK21zZ3N0ciAiVGEgYm9ydCBwYWtldCBzb20ga3LDpHZlciBpbnN0YWxsYXRpb24iCisKKyM6IHNyYy9tYWluLmM6MjY5Cittc2dpZCAiUmVtb3ZlIGFuIGVzc2VudGlhbCBwYWNrYWdlIgorbXNnc3RyICJUYSBib3J0IGV0dCBzeXN0ZW1rcml0aXNrdCBwYWtldCIKKworIzogc3JjL21haW4uYzoyODEKK21zZ2lkICJHZW5lcmFsbHkgaGVscGZ1bCBwcm9ncmVzcyBpbmZvcm1hdGlvbiIKK21zZ3N0ciAiQWxsbcOkbnQgaGrDpGxwc2FtIGbDtnJsb3Bwc2luZm9ybWF0aW9uIgorCisjOiBzcmMvbWFpbi5jOjI4MgorbXNnaWQgIkludm9jYXRpb24gYW5kIHN0YXR1cyBvZiBtYWludGFpbmVyIHNjcmlwdHMiCittc2dzdHIgIkFucm9wIG9jaCBzdGF0dXMgZsO2ciB1dHZlY2tsYXJza3JpcHQiCisKKyM6IHNyYy9tYWluLmM6MjgzCittc2dpZCAiT3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkIgorbXNnc3RyICJVdGRhdGEgZsO2ciB2YXJqZSBmaWwgc29tIGhhbnRlcmFzIgorCisjOiBzcmMvbWFpbi5jOjI4NAorbXNnaWQgIkxvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkIgorbXNnc3RyICJNYXNzdmlzIG1lZCB1dGRhdGEgZsO2ciB2YXJqZSBmaWwgc29tIGhhbnRlcmFzIgorCisjOiBzcmMvbWFpbi5jOjI4NQorbXNnaWQgIk91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGUiCittc2dzdHIgIlV0ZGF0YSBmw7ZyIHZhcmplIGtvbmZpZ3VyYXRpb25zZmlsIgorCisjOiBzcmMvbWFpbi5jOjI4NgorbXNnaWQgIkxvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZSIKK21zZ3N0ciAiTWFzc3ZpcyBtZWQgdXRkYXRhIGbDtnIgdmFyamUga29uZmlndXJhdGlvbnNmaWwiCisKKyM6IHNyYy9tYWluLmM6Mjg3Cittc2dpZCAiRGVwZW5kZW5jaWVzIGFuZCBjb25mbGljdHMiCittc2dzdHIgIkJlcm9lbmRlbiBvY2gga29uZmxpa3RlciIKKworIzogc3JjL21haW4uYzoyODgKK21zZ2lkICJMb3RzIG9mIGRlcGVuZGVuY2llcy9jb25mbGljdHMgb3V0cHV0IgorbXNnc3RyICJNYXNzdmlzIGF2IGJlcm9lbmRlLS9rb25mbGlrdHV0ZGF0YSIKKworIzogc3JjL21haW4uYzoyODkKK21zZ2lkICJUcmlnZ2VyIGFjdGl2YXRpb24gYW5kIHByb2Nlc3NpbmciCittc2dzdHIgIlV0bMO2c2FyYWt0aXZlcmluZyBvY2ggLWhhbnRlcmluZyIKKworIzogc3JjL21haW4uYzoyOTAKK21zZ2lkICJMb3RzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnMiCittc2dzdHIgIk1hc3N2aXMgbWVkIHV0ZGF0YSBvbSB1dGzDtnNhcmUiCisKKyM6IHNyYy9tYWluLmM6MjkxCittc2dpZCAiU2lsbHkgYW1vdW50cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzIgorbXNnc3RyICJLbsOkcHBhIG3DpG5nZGVyIHV0ZGF0YSBvbSB1dGzDtnNhcmUiCisKKyM6IHNyYy9tYWluLmM6MjkyCittc2dpZCAiTG90cyBvZiBkcml2ZWwgYWJvdXQgZWcgdGhlIGRwa2cvaW5mbyBkaXJlY3RvcnkiCittc2dzdHIgIk1hc3N2aXMgYXYgcGxhZGRlciBvbSBibC5hIGRwa2cvaW5mby1rYXRhbG9nZW4iCisKKyM6IHNyYy9tYWluLmM6MjkzCittc2dpZCAiSW5zYW5lIGFtb3VudHMgb2YgZHJpdmVsIgorbXNnc3RyICJLbsOkcHBhIG3DpG5nZGVyIHBsYWRkZXIiCisKKyM6IHNyYy9tYWluLmM6MzA0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlcyBkZWJ1Z2dpbmcgb3B0aW9uLCAtLWRlYnVnPTxvY3RhbD4gb3IgLUQ8b2N0YWw+OlxuIgorIlxuIgorIiBOdW1iZXIgIFJlZi4gaW4gc291cmNlICAgRGVzY3JpcHRpb25cbiIKK21zZ3N0ciAiIgorIiVzIGZlbHPDtmtuaW5nc3ZhbCwgLS1kZWJ1Zz08b2t0YWx0PiBlbGxlciAtRDxva3RhbHQ+OlxuIgorIlxuIgorIiAgICBUYWwgICBSZWYuIGkga8OkbGxrb2QgICAgQmVza3Jpdm5pbmdcbiIKKworIzogc3JjL21haW4uYzozMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIkRlYnVnZ2luZyBvcHRpb25zIGNhbiBiZSBtaXhlZCB1c2luZyBiaXR3aXNlLW9yLlxuIgorIk5vdGUgdGhhdCB0aGUgbWVhbmluZ3MgYW5kIHZhbHVlcyBhcmUgc3ViamVjdCB0byBjaGFuZ2UuXG4iCittc2dzdHIgIiIKKyJcbiIKKyJGZWxzw7ZrbmluZ3NmbGFnZ29yIGtvbWJpbmVyYXMgbWVkIGJpdHZpcyBlbGxlci5cbiIKKyJOb3RlcmEgYXR0IGJldHlkZWxzZXIgb2NoIHbDpHJkZW4ga2FuIGtvbW1hIGF0dCDDpG5kcmFzLlxuIgorCisjOiBzcmMvbWFpbi5jOjMxOQorbXNnaWQgIi0tZGVidWcgcmVxdWlyZXMgYW4gb2N0YWwgYXJndW1lbnQiCittc2dzdHIgIi0tZGVidWcgYmVow7Z2ZXIgZXR0IG9rdGFsdCBhcmd1bWVudCIKKworIzogc3JjL21haW4uYzozNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAibnVsbCBwYWNrYWdlIG5hbWUgaW4gLS1pZ25vcmUtZGVwZW5kcyBjb21tYS1zZXBhcmF0ZWQgbGlzdCBgJS4yNTBzJyIKK21zZ3N0ciAidG9tdCBwYWtldG5hbW4gaSAtLWlnbm9yZS1kZXBlbmRzIGtvbW1hc2VwYXJlcmFkZSBsaXN0YSBcIiUuMjUwc1wiIgorCisjOiBzcmMvbWFpbi5jOjM1NAorIywgYy1mb3JtYXQKK21zZ2lkICItLWlnbm9yZS1kZXBlbmRzIHJlcXVpcmVzIGEgbGVnYWwgcGFja2FnZSBuYW1lLiBgJS4yNTBzJyBpcyBub3Q7ICVzIgorbXNnc3RyICIiCisiLS1pZ25vcmUtZGVwZW5kcyBiZWjDtnZlciBldHQgZ2lsdGlndCBwYWtldG5hbW4uIFwiJS4yNTBzXCIgw6RyIGludGUgZGV0OyAlcyIKKworIzogc3JjL21haW4uYzozNzEgc3JjL21haW4uYzozODEgc3JjL21haW4uYzo2NDkgZHBrZy1zcGxpdC9tYWluLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgaW50ZWdlciBmb3IgLS0lczogYCUuMjUwcyciCittc2dzdHIgIm9naWx0aWd0IGhlbHRhbCBmw7ZyIC0tJXM6IFwiJS4yNTBzXCIiCisKKyM6IHNyYy9tYWluLmM6NDM4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGV4ZWN1dGluZyBob29rICclcycsIGV4aXQgY29kZSAlZCIKK21zZ3N0ciAiZmVsIHZpZCBleGVrdmVyaW5nIGF2IGtyb2tlbiBcIiVzXCIsIGZlbGtvZCAlZCIKKworIzogc3JjL21haW4uYzo0NjUKK21zZ2lkICJzdGF0dXMgbG9nZ2VyIgorbXNnc3RyICJzdGF0dXNsb2dnYXJlIgorCisjOiBzcmMvbWFpbi5jOjQ4MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXMgZm9yY2luZyBvcHRpb25zIC0gY29udHJvbCBiZWhhdmlvdXIgd2hlbiBwcm9ibGVtcyBmb3VuZDpcbiIKKyIgIHdhcm4gYnV0IGNvbnRpbnVlOiAgLS1mb3JjZS08dGhpbmc+LDx0aGluZz4sLi4uXG4iCisiICBzdG9wIHdpdGggZXJyb3I6ICAgIC0tcmVmdXNlLTx0aGluZz4sPHRoaW5nPiwuLi4gfCAtLW5vLWZvcmNlLTx0aGluZz4sLi4uXG4iCisiIEZvcmNpbmcgdGhpbmdzOlxuIgorbXNnc3RyICIiCisiJXMgdHZpbmdhbmRlIGZsYWdnb3IgLSBiZXN0w6RtbWVyIHZhZCBzb20gaMOkbmRlciB2aWQgZmVsOlxuIgorIiAgdmFybmEgbWVuIGZvcnRzw6R0dDogLS1mb3JjZS08c2FrPiw8c2FrPiwuLi5cbiIKKyIgIHN0YW5uYSBtZWQgZmVsOiAgICAgLS1yZWZ1c2UtPHNhaz4sPHNhaz4sLi4uIHwgLS1uby1mb3JjZS08c2FrPiw8c2FrPiwuLi5cbiIKKyIgVHZpbmdhIHNha2VyOlxuIgorCisjOiBzcmMvbWFpbi5jOjQ5MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiV0FSTklORyAtIHVzZSBvZiBvcHRpb25zIG1hcmtlZCBbIV0gY2FuIHNlcmlvdXNseSBkYW1hZ2UgeW91ciBpbnN0YWxsYXRpb24uXG4iCisiRm9yY2luZyBvcHRpb25zIG1hcmtlZCBbKl0gYXJlIGVuYWJsZWQgYnkgZGVmYXVsdC5cbiIKK21zZ3N0ciAiIgorIlxuIgorIlZBUk5JTkcgLSBmbGFnZ29yIG1hcmtlcmFkZSBbIV0ga2FuIHRpbGxmb2dhIHN0b3Igc2thZGEgdGlsbCBkaW4gIgorImluc3RhbGxhdGlvbi5cbiIKKyJUdmluZ2FuZGUgZmxhZ2dvciBtYXJrZXJhZGUgWypdIMOkciBmw7ZydmFsZGEuXG4iCisKKyM6IHNyYy9tYWluLmM6NTA0CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gZm9yY2UvcmVmdXNlIG9wdGlvbiBgJS4qcyciCittc2dzdHIgIm9rw6RuZCBmbGFnZ2EgZsO2ciBmb3JjZS9yZWZ1c2U6IFwiJS4qc1wiIgorCisjOiBzcmMvbWFpbi5jOjUxMworIywgYy1mb3JtYXQKK21zZ2lkICJvYnNvbGV0ZSBmb3JjZS9yZWZ1c2Ugb3B0aW9uICclcydcbiIKK21zZ3N0ciAiZsO2csOlbGRyYWQgdHZpbmdhbmRlL3bDpGdyYW5kZSBmbGFnZ2EgXCIlc1wiXG4iCisKKyM6IHNyYy9tYWluLmM6NjQzCittc2dpZCAiLS1jb21tYW5kLWZkIHRha2VzIG9uZSBhcmd1bWVudCwgbm90IHplcm8iCittc2dzdHIgIi0tY29tbWFuZC1mZCB0YXIgZXR0IGFyZ3VtZW50LCBpbnRlIG5vbGwiCisKKyM6IHNyYy9tYWluLmM6NjQ1Cittc2dpZCAiLS1jb21tYW5kLWZkIG9ubHkgdGFrZXMgb25lIGFyZ3VtZW50IgorbXNnc3RyICItLWNvbW1hbmQtZmQgdGFyIGJhcmEgZXR0IGFyZ3VtZW50IgorCisjOiBzcmMvbWFpbi5jOjY1MQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBvcGVuIGAlaScgZm9yIHN0cmVhbSIKK21zZ3N0ciAia3VuZGUgaW50ZSDDtnBwbmEgXCIlaVwiIGbDtnIgc3Ryw7ZtIgorCisjOiBzcmMvbWFpbi5jOjY3NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVvZiBiZWZvcmUgZW5kIG9mIGxpbmUgJWQiCittc2dzdHIgIm92w6RudGF0IGZpbHNsdXQgZsO2cmUgc2x1dCBww6UgcmFkICVkIgorCisjOiBzcmMvbWFpbi5jOjcxOSBzcmMvbWFpbi5jOjc0MSBzcmMvcXVlcnljbWQuYzo2OTIgc3JjL3N0YXRjbWQuYzozNzkKKyM6IGRwa2ctZGViL21haW4uYzoyMDEgZHBrZy1zcGxpdC9tYWluLmM6MTYzCittc2dpZCAibmVlZCBhbiBhY3Rpb24gb3B0aW9uIgorbXNnc3RyICJiZWjDtnZlciBlbiDDpXRnw6RyZCBhdHQgdXRmw7ZyYSIKKworIzogc3JjL3BhY2thZ2VzLmM6MTEzCittc2dpZCAiIgorInlvdSBtdXN0IHNwZWNpZnkgcGFja2FnZXMgYnkgdGhlaXIgb3duIG5hbWVzLCBub3QgYnkgcXVvdGluZyB0aGUgbmFtZXMgb2YgIgorInRoZSBmaWxlcyB0aGV5IGNvbWUgaW4iCittc2dzdHIgIiIKKyJkdSBtw6VzdGUgYW5nZSBwYWtldCBtZWQgc2luYSBlZ25hIG5hbW4sIGludGUgZ2Vub20gYXR0IGFuZ2UgbmFtbmVuIHDDpSBkZSAiCisiZmlsZXIgZGUga29tbWVyIGkiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjEzMworIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIC0tcGVuZGluZyBkb2VzIG5vdCB0YWtlIGFueSBub24tb3B0aW9uIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS0lcyAtLXBlbmRpbmcgdGFyIGluZ2EgYXJndW1lbnQgc29tIGludGUgw6RyIGZsYWdnb3IiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjEzOCBzcmMvcXVlcnljbWQuYzozNzUgc3JjL3F1ZXJ5Y21kLmM6NTY1CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYXQgbGVhc3Qgb25lIHBhY2thZ2UgbmFtZSBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyBiZWjDtnZlciDDpXRtaW5zdG9uZSBldHQgcGFrZXQgc29tIGFyZ3VtZW50IgorCisjOiBzcmMvcGFja2FnZXMuYzoxNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSAlcyBsaXN0ZWQgbW9yZSB0aGFuIG9uY2UsIG9ubHkgcHJvY2Vzc2luZyBvbmNlLlxuIgorbXNnc3RyICJQYWtldGV0ICVzIMOkciBsaXN0YXQgbWVyIMOkbiBlbiBnw6VuZywgaGFudGVyYXIgZGV0IGJhcmEgZW4gZ8OlbmcuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjE4MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiTW9yZSB0aGFuIG9uZSBjb3B5IG9mIHBhY2thZ2UgJXMgaGFzIGJlZW4gdW5wYWNrZWRcbiIKKyIgaW4gdGhpcyBydW4gISAgT25seSBjb25maWd1cmluZyBpdCBvbmNlLlxuIgorbXNnc3RyICIiCisiTWVyIMOkbiBlbiBrb3BpYSBhdiBwYWtldGV0ICVzIGhhciBwYWNrYXRzIHVwcFxuIgorIiB1bmRlciBrw7ZybmluZ2VuISBLb25maWd1cmVyYXIgZGV0IGJhcmEgZW4gZ8OlbmcuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjIzMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisicGFja2FnZSAlLjI1MHMgaXMgbm90IHJlYWR5IGZvciB0cmlnZ2VyIHByb2Nlc3NpbmdcbiIKKyIgKGN1cnJlbnQgc3RhdHVzIGAlLjI1MHMnIHdpdGggbm8gcGVuZGluZyB0cmlnZ2VycykiCittc2dzdHIgIiIKKyJwYWtldGV0ICUuMjUwcyDDpHIgaW50ZSByZWRvIGbDtnIgaGFudGVyaW5nIGF2IHV0bMO2c2FyZVxuIgorIiAoYWt0dWVsbCBzdGF0dXMgw6RyIFwiJS4yNTBzXCIgbWVkIGluZ2EgZsO2cmVzdMOlZW5kZSB1dGzDtnNhcmUpIgorCisjOiBzcmMvcGFja2FnZXMuYzozMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIHdoaWNoIHByb3ZpZGVzICVzIGlzIHRvIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiAgUGFrZXRldCAlcywgc29tIHRpbGxoYW5kYWjDpWxsZXIgJXMsIGtvbW1lciBhdHQgdGFzIGJvcnQuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjMzNworIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgaXMgdG8gYmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiICBQYWtldGV0ICVzIGtvbW1lciBhdHQgdGFzIGJvcnQuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjM1NAorIywgYy1mb3JtYXQKK21zZ2lkICIgIFZlcnNpb24gb2YgJXMgb24gc3lzdGVtIGlzICVzLlxuIgorbXNnc3RyICIgIFZlcnNpb25lbiBhdiAlcyBww6Ugc3lzdGVtZXQgw6RyICVzLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzozNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIHdoaWNoIHByb3ZpZGVzICVzIGF3YWl0cyB0cmlnZ2VyIHByb2Nlc3NpbmcuXG4iCittc2dzdHIgIiIKKyIgIFBha2V0ZXQgJXMsIHNvbSB0aWxsaGFuZGFow6VsbGVyICVzLCB2w6RudGFyIHDDpSBoYW50ZXJpbmcgYXYgdXRsw7ZzYXJlLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzozODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIGF3YWl0cyB0cmlnZ2VyIHByb2Nlc3NpbmcuXG4iCittc2dzdHIgIiAgUGFrZXRldCAlcyB2w6RudGFyIHDDpSBoYW50ZXJpbmcgYXYgdXRsw7ZzYXJlLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogYWxzbyBjb25maWd1cmluZyBgJXMnIChyZXF1aXJlZCBieSBgJXMnKVxuIgorbXNnc3RyICJkcGtnOiBrb25maWd1cmVyYXIgw6R2ZW4gXCIlc1wiIChrcsOkdnMgYXYgXCIlc1wiKVxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIHdoaWNoIHByb3ZpZGVzICVzIGlzIG5vdCBjb25maWd1cmVkIHlldC5cbiIKK21zZ3N0ciAiICBQYWtldGV0ICVzLCBzb20gdGlsbGhhbmRhaMOlbGxlciAlcywgaGFyIGludGUga29uZmlndXJlcmF0cyDDpG5udS5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDIxCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyBpcyBub3QgY29uZmlndXJlZCB5ZXQuXG4iCittc2dzdHIgIiAgUGFrZXRldCAlcyBoYXIgaW50ZSBrb25maWd1cmVyYXRzIMOkbm51LlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIHdoaWNoIHByb3ZpZGVzICVzIGlzIG5vdCBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgUGFrZXRldCAlcywgc29tIHRpbGxoYW5kYWjDpWxsZXIgJXMsIMOkciBlaiBpbnN0YWxsZXJhdC5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDM1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIgIFBha2V0ZXQgJXMgw6RyIGVqIGluc3RhbGxlcmF0LlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICVzICglcykgYnJlYWtzICVzIGFuZCBpcyAlcy5cbiIKK21zZ3N0ciAiICVzICglcykgZsO2cnN0w7ZyICVzIG9jaCDDpHIgJXMuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQ3OAorIywgYy1mb3JtYXQKK21zZ2lkICIgICVzICglcykgcHJvdmlkZXMgJXMuXG4iCittc2dzdHIgIiAgJXMgKCVzKSB0aWxsaGFuZGFow6VsbGVyICVzLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBWZXJzaW9uIG9mICVzIHRvIGJlIGNvbmZpZ3VyZWQgaXMgJXMuXG4iCittc2dzdHIgIiAgVmVyc2lvbmVuIGF2ICVzIHNvbSBza2FsbCBrb25maWd1cmVyYXMgw6RyICVzLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo1OTYKK21zZ2lkICIgZGVwZW5kcyBvbiAiCittc2dzdHIgIiDDpHIgYmVyb2VuZGUgYXYgIgorCisjOiBzcmMvcGFja2FnZXMuYzo2MDIKK21zZ2lkICI7IGhvd2V2ZXI6XG4iCittc2dzdHIgIiwgbWVuOlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjcxCisjLCBjLWZvcm1hdAorbXNnaWQgIi4uLi8lcyIKK21zZ3N0ciAiLi4uLyVzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjkxCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGVuc3VyaW5nIGAlLjI1MHMnIGRvZXNuJ3QgZXhpc3QiCittc2dzdHIgImZlbCBkw6UgZGV0IHNrdWxsZSBzw6RrZXJzdMOkbGxhcyBhdHQgXCIlLjI1MHNcIiBlaiBleGlzdGVyYXIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTkKK21zZ2lkICJzcGxpdCBwYWNrYWdlIHJlYXNzZW1ibHkiCittc2dzdHIgIsOldGVyc2thcGFuZGUgYXYgZGVsYWQgcGFrZXRmaWwiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTA4Cittc2dpZCAicmVhc3NlbWJsZWQgcGFja2FnZSBmaWxlIgorbXNnc3RyICLDpXRlcnNrYXBhZGUgcGFrZXRmaWwiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTMzCisjLCBjLWZvcm1hdAorbXNnaWQgIkF1dGhlbnRpY2F0aW5nICVzIC4uLlxuIgorbXNnc3RyICJBdXRlbnRpc2VyYXIgJXMgLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTM5Cittc2dpZCAicGFja2FnZSBzaWduYXR1cmUgdmVyaWZpY2F0aW9uIgorbXNnc3RyICJ2ZXJpZmllcmluZyBhdiBwYWtldHNpZ25hdHVyIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE0NgorIywgYy1mb3JtYXQKK21zZ2lkICJWZXJpZmljYXRpb24gb24gcGFja2FnZSAlcyBmYWlsZWQhIgorbXNnc3RyICJWZXJpZmllcmluZyBhdiBwYWtldCAlcyBtaXNzbHlja2FkZXMhIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE0OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVmVyaWZpY2F0aW9uIG9uIHBhY2thZ2UgJXMgZmFpbGVkLFxuIgorImJ1dCBpbnN0YWxsaW5nIGFueXdheSBhcyB5b3UgcmVxdWVzdGVkLlxuIgorbXNnc3RyICIiCisiVmVyaWZpZXJpbmcgYXYgcGFrZXQgJXMgbWlzc2x5Y2thZGVzLFxuIgorIm1lbiBpbnN0YWxsZXJhciDDpG5kw6UgZW5saWd0IMO2bnNrZW3DpWwuXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTUyCisjLCBjLWZvcm1hdAorbXNnaWQgInBhc3NlZFxuIgorbXNnc3RyICJseWNrYWRlc1xuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE2NSBkcGtnLWRlYi9pbmZvLmM6ODEKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHRlbXBvcmFyeSBkaXJlY3RvcnkiCittc2dzdHIgImt1bmRlIGludGUgc2thcGEgdGVtcG9yw6RyIGthdGFsb2ciCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MjA1CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgJXMgaGFzIHRvbyBtYW55IENvbmZsaWN0cy9SZXBsYWNlcyBwYWlycyIKK21zZ3N0ciAicGFrZXRldCAlcyBoYXIgZsO2ciBtw6VuZ2Ega29uZmxpa3QvZXJzw6R0dGVyLXBhciIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyNDMKKyMsIGMtZm9ybWF0Cittc2dpZCAib2xkIHZlcnNpb24gb2YgcGFja2FnZSBoYXMgb3Zlcmx5LWxvbmcgaW5mbyBmaWxlIG5hbWUgc3RhcnRpbmcgYCUuMjUwcyciCittc2dzdHIgIiIKKyJnYW1tYWwgdmVyc2lvbiBhdiBwYWtldGV0IGhhciBmw7ZyIGzDpW5nIGluZm9ybWF0aW9uc2ZpbG5hbW4gc29tIGLDtnJqYXIgcMOlICIKKyJcIiUuMjUwc1wiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjI4MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIG9ic29sZXRlIGluZm8gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia3VuZGUgaW50ZSB0YSBib3J0IGdhbW1hbCBpbmZvcm1hdGlvbnNmaWwgXCIlLjI1MHNcIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyODYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgKHN1cHBvc2VkKSBuZXcgaW5mbyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisia3VuZGUgaW50ZSBpbnN0YWxsZXJhICh2YWQgc29tIGFudGFzIHZhcmEpIG55IGluZm9ybWF0aW9uc2ZpbCBcIiUuMjUwc1wiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjI5NgorbXNnaWQgInVuYWJsZSB0byBvcGVuIHRlbXAgY29udHJvbCBkaXJlY3RvcnkiCittc2dzdHIgImt1bmRlIGludGUgw7ZwcG5hIHRlbXBvcsOkciBrb250cm9sbGthdGFsb2ciCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzA3CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgY29udGFpbnMgb3Zlcmx5LWxvbmcgY29udHJvbCBpbmZvIGZpbGUgbmFtZSAoc3RhcnRpbmcgYCUuNTBzJykiCittc2dzdHIgIiIKKyJwYWtldGV0IGlubmVow6VsbGVyIGbDtnIgbMOlbmd0IGtvbnRyb2xsaW5mb3JtYXRpb25zZmlsbmFtbiAoYsO2cmphciBww6UgXCIlLjUwcyIKKyJcIikiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzE0CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgY29udHJvbCBpbmZvIGNvbnRhaW5lZCBkaXJlY3RvcnkgYCUuMjUwcyciCittc2dzdHIgInBha2V0ZXRzIGtvbnRyb2xsaW5mb3JtYXRpb24gaW5uZWjDpWxsZXIga2F0YWxvZ2VuIFwiJS4yNTBzXCIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzE2CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgY29udHJvbCBpbmZvIHJtZGlyIG9mIGAlLjI1MHMnIGRpZG4ndCBzYXkgbm90IGEgZGlyIgorbXNnc3RyICIiCisiXCJybWRpclwiIHDDpSBwYWtldGV0cyBrb250cm9sbGluZm9ybWF0aW9uIFwiJS4yNTBzXCIgc3ZhcmFkZSBpbnRlIFwiZWogIgorImthdGFsb2dcIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMjYKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlcyBjb250YWluZWQgbGlzdCBhcyBpbmZvIGZpbGUiCittc2dzdHIgInBha2V0ZXQgJXMgaW5uZWjDpWxsZXIgbGlzdCBzb20gaW5mb3JtYXRpb25zZmlsIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMzMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgaW5mbyBmaWxlIGAlLjI1MHMnIGFzIGAlLjI1MHMnIgorbXNnc3RyICJrdW5kZSBpbnRlIGluc3RhbGxlcmEgbnkgaW5mb3JtYXRpb25zZmlsIFwiJS4yNTBzXCIgc29tIFwiJS4yNTBzXCIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzQ5IHNyYy9yZW1vdmUuYzoxOTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSBjb250cm9sIGluZm8gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia3VuZGUgaW50ZSB0YSBib3J0IGtvbnRyb2xsaW5mb3JtYXRpb25zZmlsIFwiJS4yNTBzXCIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDExCittc2dpZCAiY2Fubm90IGFjY2VzcyBhcmNoaXZlIgorbXNnc3RyICJrYW4gaW50ZSBrb21tYSDDpXQgYXJraXZldCIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo0MzMKK21zZ2lkICJwYWNrYWdlIGNvbnRyb2wgaW5mb3JtYXRpb24gZXh0cmFjdGlvbiIKK21zZ3N0ciAiaMOkbXRuaW5nIGF2IHBha2V0a29udHJvbGxpbmZvcm1hdGlvbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo0NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVjb3JkZWQgaW5mbyBhYm91dCAlcyBmcm9tICVzLlxuIgorbXNnc3RyICJMYWdyYWRlIGluZm9ybWF0aW9uIG9tICVzIGZyw6VuICVzLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjQ2OAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGFyY2hpdGVjdHVyZSAoJXMpIGRvZXMgbm90IG1hdGNoIHN5c3RlbSAoJXMpIgorbXNnc3RyICJwYWtldGFya2l0ZWt0dXJlbiAoJXMpIG1hdGNoYXIgaW50ZSBzeXN0ZW1ldHMgKCVzKSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1MjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IHJlZ2FyZGluZyAlcyBjb250YWluaW5nICVzLCBwcmUtZGVwZW5kZW5jeSBwcm9ibGVtOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogYW5nw6VlbmRlICVzIGlubmVow6VsbGFuZGVzICVzLCBwcm9ibGVtIG1lZCBmw7ZyLWJlcm9lbmRlbjpcbiIKKyIlcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1MjYKKyMsIGMtZm9ybWF0Cittc2dpZCAicHJlLWRlcGVuZGVuY3kgcHJvYmxlbSAtIG5vdCBpbnN0YWxsaW5nICUuMjUwcyIKK21zZ3N0ciAiZsO2ci1iZXJvZW5kZXByb2JsZW0gLSBpbnN0YWxsZXJhciBpbnRlICUuMjUwcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1MjcKK21zZ2lkICJpZ25vcmluZyBwcmUtZGVwZW5kZW5jeSBwcm9ibGVtISIKK21zZ3N0ciAiaWdub3JlcmFyIGbDtnItYmVyb2VuZGVwcm9ibGVtISIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHJlcGFyaW5nIHRvIHJlcGxhY2UgJXMgJXMgKHVzaW5nICVzKSAuLi5cbiIKK21zZ3N0ciAiRsO2cmJlcmVkZXIgYXR0IGVyc8OkdHRhICVzICVzIChtZWQgJXMpIC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjU0OQorIywgYy1mb3JtYXQKK21zZ2lkICJVbnBhY2tpbmcgJXMgKGZyb20gJXMpIC4uLlxuIgorbXNnc3RyICJQYWNrYXIgdXBwICVzIChmcsOlbiAlcykgLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTgwCisjLCBjLWZvcm1hdAorbXNnaWQgIm5hbWUgb2YgY29uZmZpbGUgKHN0YXJ0aW5nIGAlLjI1MHMnKSBpcyB0b28gbG9uZyAoPiVkIGNoYXJhY3RlcnMpIgorbXNnc3RyICIiCisibmFtbiBww6Uga29uZmlndXJhdGlvbnNmaWwgKHNvbSBiw7ZyamFyIHDDpSBcIiUuMjUwc1wiKSDDpHIgZsO2ciBsw6VuZyAoPiVkIHRlY2tlbikiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjMzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDcxCisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWQgZXJyb3IgaW4gJS4yNTBzIgorbXNnc3RyICJsw6RzZmVsIGkgJS4yNTBzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjYzNQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nICUuMjUwcyIKK21zZ3N0ciAiZmVsIHZpZCBzdMOkbmduaW5nIGF2ICUuMjUwcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2MzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgdHJ5aW5nIHRvIG9wZW4gJS4yNTBzIgorbXNnc3RyICJmZWwgdmlkIMO2cHBuaW5nIGF2ICUuMjUwcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGUtY29uZmlndXJpbmcgJXMsIHRvIGFsbG93IHJlbW92YWwgb2YgJXMgLi4uXG4iCittc2dzdHIgIkF2a29uZmlndXJlcmFyICVzLCBzw6UgYXR0IHZpIGthbiB0YSBib3J0ICVzIC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjY4MQorIywgYy1mb3JtYXQKK21zZ2lkICJEZS1jb25maWd1cmluZyAlcyAuLi5cbiIKK21zZ3N0ciAiQXZrb25maWd1cmVyYXIgJXMgLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NzU1CisjLCBjLWZvcm1hdAorbXNnaWQgIlVucGFja2luZyByZXBsYWNlbWVudCAlLjI1MHMgLi4uXG4iCittc2dzdHIgIlBhY2thciB1cHAgZXJzw6R0dGFuZGUgJS4yNTBzIC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjg0MAorbXNnaWQgInBhY2thZ2UgZmlsZXN5c3RlbSBhcmNoaXZlIGV4dHJhY3Rpb24iCittc2dzdHIgImV4dHJhaGVyaW5nIGF2IHBha2V0Zmlsc3lzdGVtIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjg1NAorbXNnaWQgImVycm9yIHJlYWRpbmcgZHBrZy1kZWIgdGFyIG91dHB1dCIKK21zZ3N0ciAia3VuZGUgaW50ZSBsw6RzYSBkcGtnLWRlYnMgdGFyLXV0ZGF0YSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NTYKK21zZ2lkICJjb3JydXB0ZWQgZmlsZXN5c3RlbSB0YXJmaWxlIC0gY29ycnVwdGVkIHBhY2thZ2UgYXJjaGl2ZSIKK21zZ3N0ciAidHJhc2lnIGZpbHN5c3RlbXN0YXJmaWwgLSB0cmFzaWd0IHBha2V0YXJraXYiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6ODU5Cittc2dpZCAiZHBrZy1kZWI6IHphcCBwb3NzaWJsZSB0cmFpbGluZyB6ZXJvcyIKK21zZ3N0ciAiZHBrZy1kZWI6IGTDtmRhciBtw7ZqbGlnYSBhdnNsdXRhbmRlIG5vbGxvciIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5MTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHN0YXQgb2xkIGZpbGUgJyUuMjUwcycgc28gbm90IGRlbGV0aW5nIGl0OiAlcyIKK21zZ3N0ciAia3VuZGUgaW50ZSB0YSBzdGF0dXMgcMOlIGdhbW1hbCBmaWwgXCIlLjI1MHNcIiBzw6UgZGVuIHRhcyBpbnRlIGJvcnQ6ICVzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjkyNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGVsZXRlIG9sZCBkaXJlY3RvcnkgJyUuMjUwcyc6ICVzIgorbXNnc3RyICJrdW5kZSBpbnRlIHRhIGJvcnQgZ2FtbWFsIGthdGFsb2cgXCIlLjI1MHNcIjogJXMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTI4CisjLCBjLWZvcm1hdAorbXNnaWQgIm9sZCBjb25mZmlsZSAnJS4yNTBzJyB3YXMgYW4gZW1wdHkgZGlyZWN0b3J5IChhbmQgaGFzIG5vdyBiZWVuIGRlbGV0ZWQpIgorbXNnc3RyICIiCisiZ2FtbWFsIGtvbmZpZ3VyYXRpb25maWwgXCIlLjI1MHNcIiB2YXIgZW4gdG9tIGthdGFsb2cgKG9jaCBoYXIgbnUgdGFnaXRzICIKKyJib3J0KSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgb3RoZXIgbmV3IGZpbGUgYCUuMjUwcyciCittc2dzdHIgImt1bmRlIGludGUgdGEgc3RhdHVzIHDDpSBhbmRyYSBueSBmaWwgXCIlLjI1MHNcIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm9sZCBmaWxlICclLjI1MHMnIGlzIHRoZSBzYW1lIGFzIHNldmVyYWwgbmV3IGZpbGVzISAoYm90aCAnJS4yNTBzJyBhbmQgIgorIiclLjI1MHMnKSIKK21zZ3N0ciAiIgorImdhbW1hbCBmaWwgXCIlLjI1MHNcIiDDpHIgc2FtbWEgc29tIGV0dCBmbGVydGFsIG55YSBmaWxlciEgKGLDpWRlIFwiJS4yNTBzXCIgIgorIm9jaCBcIiUuMjUwc1wiKSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxMDI1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWN1cmVseSByZW1vdmUgb2xkIGZpbGUgJyUuMjUwcyc6ICVzIgorbXNnc3RyICJrdW5kZSBpbnRlIHPDpGtlcnQgdGEgYm9ydCBnYW1tYWwgZmlsIFwiJS4yNTBzXCI6ICVzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEyMDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiKE5vdGluZyBkaXNhcHBlYXJhbmNlIG9mICVzLCB3aGljaCBoYXMgYmVlbiBjb21wbGV0ZWx5IHJlcGxhY2VkLilcbiIKK21zZ3N0ciAiKE5vdGVyYXIgYXR0ICVzIGbDtnJzdnVubml0LCB2aWxrZW4gaGVsdCBoYXIgZXJzYXR0cy4pXG4iCisKKyMuIFRSQU5TTEFUT1JTOiBUaGlzIGlzIHRoZSBoZWFkZXIgdGhhdCBhcHBlYXJzIG9uICdkcGtnLXF1ZXJ5IC1sJy4gVGhlCisjLiAqIHN0cmluZyBzaG91bGQgcmVtYWluIHVuZGVyIDgwIGNoYXJhY3RlcnMuIFRoZSB1cHBlcmNhc2UgbGV0dGVycyBpbgorIy4gKiB0aGUgc3RhdGUgdmFsdWVzIGRlbm90ZSB0aGUgYWJicmV2aWF0ZWQgbGV0dGVyIHRoYXQgd2lsbCBhcHBlYXIgb24KKyMuICogdGhlIGZpcnN0IHRocmVlIGNvbHVtbnMsIHdoaWNoIHNob3VsZCBpZGVhbGx5IG1hdGNoIHRoZSBFbmdsaXNoIG9uZQorIy4gKiAoZS5nLiBSZW1vdmUg4oaSIHN1cFJpbWVpeCksIHNlZSBkcGtnLXF1ZXJ5KDEpIGZvciBmdXJ0aGVyIGRldGFpbHMuIFRoZQorIy4gKiB0cmFuc2xhdGVkIG1lc3NhZ2UgY2FuIHVzZSBhZGRpdGlvbmFsIGxpbmVzIGlmIG5lZWRlZC4KKyM6IHNyYy9xdWVyeWNtZC5jOjE0OQorbXNnaWQgIiIKKyJEZXNpcmVkPVVua25vd24vSW5zdGFsbC9SZW1vdmUvUHVyZ2UvSG9sZFxuIgorInwgU3RhdHVzPU5vdC9JbnN0L0NvbmYtZmlsZXMvVW5wYWNrZWQvaGFsRi1jb25mL0hhbGYtaW5zdC90cmlnLWFXYWl0L1RyaWctIgorInBlbmRcbiIKKyJ8LyBFcnI/PShub25lKS9SZWluc3QtcmVxdWlyZWQgKFN0YXR1cyxFcnI6IHVwcGVyY2FzZT1iYWQpXG4iCittc2dzdHIgIiIKKyLDlm5za2F0PU9rw6RuZChVKS9JbnN0YWxsZXJhKEkpL1JhZGVyYShSKS9SZW5zYShQKS9Iw6VsbChIKVxuIgorInwgU3RhdHVzLj1FaiBpbnN0LihOKS8oSSluc3QuL0tvbmZmaWwuKEMpLyhVKXBwYWNrLi9IYWx2a29uZi4oRikvKEgpIgorImFsdmluc3QuXG4iCisifCAvICAgICAgIFbDpG50LnV0bChXKS9Gw7ZyZXNsLnV0bChUKVxuIgorInwvIEZlbD9JbmdldCg9KS9PbWluc3RhbGxlcmEoUikvQsOlZGEoWCkgKFN0YXR1cyxGZWw6IHZlcnNhbGVyPWlsbGEpXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjE1MworbXNnaWQgIk5hbWUiCittc2dzdHIgIk5hbW4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjE1MworbXNnaWQgIlZlcnNpb24iCittc2dzdHIgIlZlcnNpb24iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjE1NAorbXNnaWQgIkRlc2NyaXB0aW9uIgorbXNnc3RyICJCZXNrcml2bmluZyIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MjQ2IHNyYy9xdWVyeWNtZC5jOjUxMSBzcmMvc2VsZWN0LmM6NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiTm8gcGFja2FnZXMgZm91bmQgbWF0Y2hpbmcgJXMuXG4iCittc2dzdHIgIkluZ2EgcGFrZXQgbWF0Y2hhciAlcy5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MjczCisjLCBjLWZvcm1hdAorbXNnaWQgImRpdmVyc2lvbiBieSAlcyBmcm9tOiAlc1xuIgorbXNnc3RyICJvbWRpcmlnZXJpbmcgYXYgJXMgZnLDpW46ICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI3NQorIywgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnNpb24gYnkgJXMgdG86ICVzXG4iCittc2dzdHIgIm9tZGlyaWdlcmluZyBhdiAlcyB0aWxsOiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9jYWwgZGl2ZXJzaW9uIGZyb206ICVzXG4iCittc2dzdHIgImxva2FsIG9tZGlyaWdlcmluZyBmcsOlbjogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6Mjc5CisjLCBjLWZvcm1hdAorbXNnaWQgImxvY2FsIGRpdmVyc2lvbiB0bzogJXNcbiIKK21zZ3N0ciAibG9rYWwgb21kaXJpZ2VyaW5nIHRpbGw6ICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjMwOQorbXNnaWQgIi0tc2VhcmNoIG5lZWRzIGF0IGxlYXN0IG9uZSBmaWxlIG5hbWUgcGF0dGVybiBhcmd1bWVudCIKK21zZ3N0ciAiLS1zZWFyY2ggYmVow7Z2ZXIgw6V0bWluc3RvbmUgZXR0IGZpbG5hbW5zbcO2bnN0ZXJhcmd1bWVudCIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MzUwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBubyBwYXRoIGZvdW5kIG1hdGNoaW5nIHBhdHRlcm4gJXMuXG4iCittc2dzdHIgIiVzOiBoaXR0YWRlIGluZ2VuIHPDtmt2w6RnIHNvbSBtb3RzdmFyYXIgbcO2bnN0cmV0ICVzLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzozOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSBgJXMnIGlzIG5vdCBpbnN0YWxsZWQgYW5kIG5vIGluZm8gaXMgYXZhaWxhYmxlLlxuIgorbXNnc3RyICJQYWtldGV0IFwiJXNcIiDDpHIgaW50ZSBpbnN0YWxsZXJhdCBvY2ggaW5nZW4gaW5mb3JtYXRpb24gZmlubnMuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQwMQorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlIGAlcycgaXMgbm90IGF2YWlsYWJsZS5cbiIKK21zZ3N0ciAiUGFrZXRldCBcIiVzXCIgw6RyIGVqIHRpbGxnw6RuZ2xpZ3QuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQxMCBzcmMvcXVlcnljbWQuYzo1ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSBgJXMnIGlzIG5vdCBpbnN0YWxsZWQuXG4iCittc2dzdHIgIlBha2V0ZXQgXCIlc1wiIMOkciBlaiBpbnN0YWxsZXJhdC5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDE4CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgYCVzJyBkb2VzIG5vdCBjb250YWluIGFueSBmaWxlcyAoISlcbiIKK21zZ3N0ciAiUGFrZXRldCBcIiVzXCIgaW5uZWjDpWxsZXIgaW5nYSBmaWxlciAoISlcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDI1CisjLCBjLWZvcm1hdAorbXNnaWQgImxvY2FsbHkgZGl2ZXJ0ZWQgdG86ICVzXG4iCittc2dzdHIgImxva2FsdCBvbWRpcmlnZXJhZCB0aWxsOiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBkaXZlcnRzIG90aGVycyB0bzogJXNcbiIKK21zZ3N0ciAicGFrZXRldCBvbWRpcmlnZXJhciBhbmRyYSB0aWxsOiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJ0ZWQgYnkgJXMgdG86ICVzXG4iCittc2dzdHIgIm9tZGlyaWdlcmF0IGF2ICVzIHRpbGw6ICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQ1MgorbXNnaWQgIiIKKyJVc2UgZHBrZyAtLWluZm8gKD0gZHBrZy1kZWIgLS1pbmZvKSB0byBleGFtaW5lIGFyY2hpdmUgZmlsZXMsXG4iCisiYW5kIGRwa2cgLS1jb250ZW50cyAoPSBkcGtnLWRlYiAtLWNvbnRlbnRzKSB0byBsaXN0IHRoZWlyIGNvbnRlbnRzLlxuIgorbXNnc3RyICIiCisiQW52w6RuZCBkcGtnIC0taW5mbyAoPSBkcGtnLWRlYiAtLWluZm8pIGbDtnIgYXR0IHVuZGVyc8O2a2EgYXJraXZmaWxlcixcbiIKKyJvY2ggZHBrZyAtLWNvbnRlbnRzICg9IGRwa2ctZGViIC0tY29udGVudHMpIGbDtnIgYXR0IHZpc2EgaW5uZWjDpWxsZXQuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjU3MAorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIHRha2VzIGF0IG1vc3QgdHdvIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS0lcyB0YXIgaMO2Z3N0IHR2w6UgYXJndW1lbnQiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjU3OAorIywgYy1mb3JtYXQKK21zZ2lkICJjb250cm9sIGZpbGUgY29udGFpbnMgJWMiCittc2dzdHIgInN0eXJmaWxlbiBpbm5laMOlbGxlciAlYyIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjAwCisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiAlcyBwYWNrYWdlIG1hbmFnZW1lbnQgcHJvZ3JhbSBxdWVyeSB0b29sIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkRlYmlhbiBcIiVzXCIgcGFrZXRoYW50ZXJpbmdzcHJvZ3JhbSwgZnLDpWdldmVya3R5ZyB2ZXJzaW9uICVzLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo2MTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLXN8LS1zdGF0dXMgPHBhY2thZ2U+IC4uLiAgICAgICAgRGlzcGxheSBwYWNrYWdlIHN0YXR1cyBkZXRhaWxzLlxuIgorIiAgLXB8LS1wcmludC1hdmFpbCA8cGFja2FnZT4gLi4uICAgRGlzcGxheSBhdmFpbGFibGUgdmVyc2lvbiBkZXRhaWxzLlxuIgorIiAgLUx8LS1saXN0ZmlsZXMgPHBhY2thZ2U+IC4uLiAgICAgTGlzdCBmaWxlcyBgb3duZWQnIGJ5IHBhY2thZ2UocykuXG4iCisiICAtbHwtLWxpc3QgWzxwYXR0ZXJuPiAuLi5dICAgICAgICBMaXN0IHBhY2thZ2VzIGNvbmNpc2VseS5cbiIKKyIgIC1XfC0tc2hvdyBbPHBhdHRlcm4+IC4uLl0gICAgICAgIFNob3cgaW5mb3JtYXRpb24gb24gcGFja2FnZShzKS5cbiIKKyIgIC1TfC0tc2VhcmNoIDxwYXR0ZXJuPiAuLi4gICAgICAgIEZpbmQgcGFja2FnZShzKSBvd25pbmcgZmlsZShzKS5cbiIKKyIgIC1jfC0tY29udHJvbC1wYXRoIDxwYWNrYWdlPiBbPGZpbGU+XVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHJpbnQgcGF0aCBmb3IgcGFja2FnZSBjb250cm9sIGZpbGUuXG4iCisiXG4iCittc2dzdHIgIiIKKyJLb21tYW5kb246XG4iCisiICAtc3wtLXN0YXR1cyA8cGFrZXRuYW1uPiAuLi4gICAgICBWaXNhIGRldGFsamVyIG9tIHBha2V0c3RhdHVzLlxuIgorIiAgLXB8LS1wcmludC1hdmFpbCA8cGFrZXRuYW1uPiAuLi4gVmlzYSBkZXRhbGplciBvbSB0aWxsZ8OkbmdsaWcgdmVyc2lvbi5cbiIKKyIgIC1MfC0tbGlzdGZpbGVzIDxwYWtldG5hbW4+IC4uLiAgIFZpc2EgZmlsZXIgc29tIFwiw6Rnc1wiIGF2IHBha2V0LlxuIgorIiAgLWx8LS1saXN0IFs8bcO2bnN0ZXI+IC4uLl0gICAgICAgIFZpc2Ega29ydGZhdHRhZCBwYWtldGxpc3RhLlxuIgorIiAgLVd8LS1zaG93IFs8bcO2bnN0ZXI+IC4uLl0gICAgICAgIFZpc2EgaW5mb3JtYXRpb24gb20gcGFrZXQuXG4iCisiICAtU3wtLXNlYXJjaCA8bcO2bnN0ZXI+IC4uLiAgICAgICAgU8O2ayBwYWtldCBzb20gw6RnZXIgZmlsKGVyKS5cbiIKKyIgIC1jfC0tY29udHJvbC1wYXRoIDxwYWtldD4gWzxmaWw+XVZpc2Egc8O2a3bDpGcgZsO2ciBwYWtldGV0cyBzdHlyZmlsLlxuIgorIlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo2MzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgICAgICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyIgIC1mfC0tc2hvd2Zvcm1hdD08Zm9ybWF0PiAgICAgICAgIFVzZSBhbHRlcm5hdGl2ZSBmb3JtYXQgZm9yIC0tc2hvdy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIkZsYWdnb3I6XG4iCisiICAtLWFkbWluZGlyPTxrYXRhbG9nPiAgICAgICAgICAgICBBbnbDpG5kIDxrYXRhbG9nPiBpLnN0LmYgJXNcbiIKKyIgIC1mfC0tc2hvd2Zvcm1hdD08Zm9ybWF0PiAgICAgICAgIEFudsOkbmQgYWx0ZXJuYXRpdnQgZm9ybWF0IGbDtnIgLS1zaG93XG4iCisiXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjY0MiBkcGtnLWRlYi9tYWluLmM6MTEyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJGb3JtYXQgc3ludGF4OlxuIgorIiAgQSBmb3JtYXQgaXMgYSBzdHJpbmcgdGhhdCB3aWxsIGJlIG91dHB1dCBmb3IgZWFjaCBwYWNrYWdlLiBUaGUgZm9ybWF0XG4iCisiICBjYW4gaW5jbHVkZSB0aGUgc3RhbmRhcmQgZXNjYXBlIHNlcXVlbmNlcyBcXG4gKG5ld2xpbmUpLCBcXHIgKGNhcnJpYWdlXG4iCisiICByZXR1cm4pIG9yIFxcXFwgKHBsYWluIGJhY2tzbGFzaCkuIFBhY2thZ2UgaW5mb3JtYXRpb24gY2FuIGJlIGluY2x1ZGVkXG4iCisiICBieSBpbnNlcnRpbmcgdmFyaWFibGUgcmVmZXJlbmNlcyB0byBwYWNrYWdlIGZpZWxkcyB1c2luZyB0aGUgJHt2YXJbOyIKKyJ3aWR0aF19XG4iCisiICBzeW50YXguIEZpZWxkcyB3aWxsIGJlIHJpZ2h0LWFsaWduZWQgdW5sZXNzIHRoZSB3aWR0aCBpcyBuZWdhdGl2ZSBpbiAiCisid2hpY2hcbiIKKyIgIGNhc2UgbGVmdCBhbGlnbm1lbnQgd2lsbCBiZSB1c2VkLlxuIgorbXNnc3RyICIiCisiRm9ybWF0c3ludGF4OlxuIgorIiAgRXR0IGZvcm1hdCDDpHIgZW4gc3Ryw6RuZyBzb20ga29tbWVyIHNrcml2YXMgdXQgZsO2ciB2YXJqZSBwYWtldC4gRm9ybWF0ZXRcbiIKKyIgIGthbiBpbm5laMOlbGxhIGRlIHZhbmxpZ2EgdGVja2Vuc2VrdmVuc2VybmEgXFxuIChueSByYWQpLCBcXHIgKHZhZ25yZXR1cilcbiIKKyIgIGVsbGVyIFxcXFwgKHZhbmxpZ3Qgb212w6RudCBzbmVkc3RyZWNrKS4gUGFrZXRpbmZvcm1hdGlvbiBrYW4gbMOkZ2dhcyBpbiAiCisiZ2Vub21cbiIKKyIgIGF0dCBsw6RnZ2EgaW4gdmFyaWFiZWxyZWZlcmVuc2VyIHRpbGwgcGFrZXRmw6RsdCBnZW5vbSBhdHQgYW52w6RuZGEgc3ludGF4ZW5cbiIKKyIgICR7dmFyWzticmVkZF19LiBGw6RsdGVuIGtvbW1lciBhdHQgaMO2Z2VyanVzdGVyYXMgc8OldmlkYSBpbnRlIGJyZWRkZW4gYW5nZXNcbiIKKyIgIG5lZ2F0aXZ0LCBpIHZpbGtldCBmYWxsIHbDpG5zdGVyanVzdGVyaW5nIGtvbW1lciBhbnbDpG5kYXMuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjY1NgorbXNnaWQgIlVzZSAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgcXVlcnlpbmcgcGFja2FnZXMuIgorbXNnc3RyICJBbnbDpG5kIC0taGVscCBmw7ZyIGhqw6RscCBvbSBhdHQgZnLDpWdhIHBha2V0LiIKKworIzogc3JjL3JlbW92ZS5jOjg4CisjLCBjLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nIHJlcXVlc3QgdG8gcmVtb3ZlICUuMjUwcyB3aGljaCBpc24ndCBpbnN0YWxsZWQuIgorbXNnc3RyICJpZ25vcmVyYXIgYmVnw6RyYW4gYXR0IHRhIGJvcnQgJS4yNTBzIHNvbSBpbnRlIGhhciBpbnN0YWxsZXJhdHMuIgorCisjOiBzcmMvcmVtb3ZlLmM6OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImlnbm9yaW5nIHJlcXVlc3QgdG8gcmVtb3ZlICUuMjUwcywgb25seSB0aGUgY29uZmlnXG4iCisiIGZpbGVzIG9mIHdoaWNoIGFyZSBvbiB0aGUgc3lzdGVtLiBVc2UgLS1wdXJnZSB0byByZW1vdmUgdGhlbSB0b28uIgorbXNnc3RyICIiCisiaWdub3JlcmFyIGJlZ8OkcmFuIGF0dCB0YSBib3J0ICUuMjUwcywgZW5iYXJ0XG4iCisiIGtvbmZpZ3VyYXRpb25zZmlsZXIgZmlubnMgcMOlIHN5c3RlbWV0LiBBbnbDpG5kIC0tcHVyZ2UgZsO2ciBhdHQgdGEgYm9ydCBkZW0uIgorCisjOiBzcmMvcmVtb3ZlLmM6MTAzCittc2dpZCAiVGhpcyBpcyBhbiBlc3NlbnRpYWwgcGFja2FnZSAtIGl0IHNob3VsZCBub3QgYmUgcmVtb3ZlZC4iCittc2dzdHIgIkRldHRhIMOkciBldHQgc3lzdGVta3JpdGlza3QgcGFrZXQgLSBkZXQgYsO2ciBpbnRlIHRhcyBib3J0LiIKKworIzogc3JjL3JlbW92ZS5jOjEyOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogZGVwZW5kZW5jeSBwcm9ibGVtcyBwcmV2ZW50IHJlbW92YWwgb2YgJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiBiZXJvZW5kZXByb2JsZW0gZsO2cmhpbmRyYXIgYm9ydHRhZ25pbmcgYXYgJXM6XG4iCisiJXMiCisKKyM6IHNyYy9yZW1vdmUuYzoxMzAKK21zZ2lkICJkZXBlbmRlbmN5IHByb2JsZW1zIC0gbm90IHJlbW92aW5nIgorbXNnc3RyICJiZXJvZW5kZXByb2JsZW0gLSB0YXIgaW50ZSBib3J0IgorCisjOiBzcmMvcmVtb3ZlLmM6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiAlczogZGVwZW5kZW5jeSBwcm9ibGVtcywgYnV0IHJlbW92aW5nIGFueXdheSBhcyB5b3UgcmVxdWVzdGVkOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogJXM6IGJlcm9lbmRlcHJvYmxlbSwgbWVuIHRhciBib3J0IMOkbmTDpSBlbmxpZ3Qgw7Zuc2tlbcOlbDpcbiIKKyIlcyIKKworIzogc3JjL3JlbW92ZS5jOjE0MgorbXNnaWQgIiIKKyJQYWNrYWdlIGlzIGluIGEgdmVyeSBiYWQgaW5jb25zaXN0ZW50IHN0YXRlIC0geW91IHNob3VsZFxuIgorIiByZWluc3RhbGwgaXQgYmVmb3JlIGF0dGVtcHRpbmcgYSByZW1vdmFsLiIKK21zZ3N0ciAiIgorIlBha2V0ZXQgw6RyIGkgZXR0IHbDpGxkaWd0IGTDpWxpZ3QgaW5rb25zaXN0ZW50IGzDpGdlIC0gZHUgYsO2clxuIgorIiBvbWluc3RhbGxlcmEgZGV0IGlubmFuIGR1IGbDtnJzw7ZrZXIgdGEgYm9ydCBkZXQuIgorCisjOiBzcmMvcmVtb3ZlLmM6MTQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIldvdWxkIHJlbW92ZSBvciBwdXJnZSAlcyAuLi5cbiIKK21zZ3N0ciAiU2t1bGxlIHRhIGJvcnQgZWxsZXIgaGVsdCByYWRlcmEgJXMgLi4uXG4iCisKKyM6IHNyYy9yZW1vdmUuYzoxNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVtb3ZpbmcgJXMgLi4uXG4iCittc2dzdHIgIlRhciBib3J0ICVzIC4uLlxuIgorCisjOiBzcmMvcmVtb3ZlLmM6Mjc1IHNyYy9yZW1vdmUuYzozNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIndoaWxlIHJlbW92aW5nICUuMjUwcywgdW5hYmxlIHRvIHJlbW92ZSBkaXJlY3RvcnkgJyUuMjUwcyc6ICVzIC0gZGlyZWN0b3J5ICIKKyJtYXkgYmUgYSBtb3VudCBwb2ludD8iCittc2dzdHIgIiIKKyJuw6RyICUuMjUwcyB0b2dzIGJvcnQga3VuZGUgaW50ZSBrYXRhbG9nZW4gXCIlLjI1MHNcIiB0YXMgYm9ydDogJXMgLSAiCisia2F0YWxvZ2VuIGthbiB2YXJhIGVuIG1vbnRlcmluZ3NwdW5rdD8iCisKKyM6IHNyYy9yZW1vdmUuYzoyODkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNlY3VyZWx5IHJlbW92ZSAnJS4yNTBzJyIKK21zZ3N0ciAia3VuZGUgaW50ZSBzw6RrZXJ0IHRhIGJvcnQgXCIlLjI1NXNcIiIKKworIzogc3JjL3JlbW92ZS5jOjM2MQorIywgYy1mb3JtYXQKK21zZ2lkICJ3aGlsZSByZW1vdmluZyAlLjI1MHMsIGRpcmVjdG9yeSAnJS4yNTBzJyBub3QgZW1wdHkgc28gbm90IHJlbW92ZWQuIgorbXNnc3RyICIiCisibsOkciAlLjI1MHMgdG9ncyBib3J0IHZhciBpbnRlIGthdGFsb2dlbiBcIiUuMjUwc1wiIHRvbSwgc8OlIGRlbiB0b2dzIGludGUgIgorImJvcnQuIgorCisjOiBzcmMvcmVtb3ZlLmM6MzgzCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZW1vdmUgJyUuMjUwcyciCittc2dzdHIgImthbiBpbnRlIHRhIGJvcnQgXCIlLjI1MHNcIiIKKworIzogc3JjL3JlbW92ZS5jOjQwOQorIywgYy1mb3JtYXQKK21zZ2lkICJQdXJnaW5nIGNvbmZpZ3VyYXRpb24gZmlsZXMgZm9yICVzIC4uLlxuIgorbXNnc3RyICJSYWRlcmFyIGtvbmZpZ3VyYXRpb25zZmlsZXIgZsO2ciAlcyAuLi5cbiIKKworIzogc3JjL3JlbW92ZS5jOjQ1OQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVtb3ZlIG9sZCBjb25maWcgZmlsZSBgJS4yNTBzJyAoPSBgJS4yNTBzJykiCittc2dzdHIgImthbiBpbnRlIHRhIGJvcnQgZ2FtbWFsIGtvbmZpZ3VyYXRpb25zZmlsIFwiJS4yNTBzXCIgKD0gXCIlLjI1MHNcIikiCisKKyM6IHNyYy9yZW1vdmUuYzo0NzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlYWQgY29uZmlnIGZpbGUgZGlyIGAlLjI1MHMnIChmcm9tIGAlLjI1MHMnKSIKK21zZ3N0ciAia2FuIGludGUgbMOkc2Ega29uZmlndXJhdGlvbnNmaWxza2F0YWxvZyBcIiUuMjUwc1wiIChmcsOlbiBcIiUuMjUwc1wiKSIKKworIzogc3JjL3JlbW92ZS5jOjUxMAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVtb3ZlIG9sZCBiYWNrdXAgY29uZmlnIGZpbGUgYCUuMjUwcycgKG9mIGAlLjI1MHMnKSIKK21zZ3N0ciAiIgorImthbiBpbnRlIHRhIGJvcnQgZ2FtbWFsIGtvcGlhIGF2IGtvbmZpZ3VyYXRpb25zZmlsIFwiJS4yNTBzXCIgKGF2IFwiJS4yNTBzXCIpIgorCisjOiBzcmMvcmVtb3ZlLmM6NTY4Cittc2dpZCAiY2Fubm90IHJlbW92ZSBvbGQgZmlsZXMgbGlzdCIKK21zZ3N0ciAia2FuIGludGUgdGEgYm9ydCBnYW1tYWwgZmlsbGlzdGEiCisKKyM6IHNyYy9yZW1vdmUuYzo1NzQKK21zZ2lkICJjYW4ndCByZW1vdmUgb2xkIHBvc3RybSBzY3JpcHQiCittc2dzdHIgImt1bmRlIGludGUgdGEgYm9ydCBnYW1tYWx0IHBvc3RybS1za3JpcHQiCisKKyM6IHNyYy9zZWxlY3QuYzoxMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgaW4gcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQiCittc2dzdHIgIm92w6RudGF0IGZpbHNsdXQgaSBwYWtldG5hbW4gcMOlIHJhZCAlZCIKKworIzogc3JjL3NlbGVjdC5jOjExNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBsaW5lIGluIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICJvdsOkbnRhdCByYWRzbHV0IGkgcGFrZXRuYW1uIHDDpSByYWQgJWQiCisKKyM6IHNyYy9zZWxlY3QuYzoxMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgYWZ0ZXIgcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQiCittc2dzdHIgIm92w6RudGF0IGZpbHNsdXQgZWZ0ZXIgcGFrZXRuYW1uIHDDpSByYWQgJWQiCisKKyM6IHNyYy9zZWxlY3QuYzoxMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgbGluZSBhZnRlciBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZCIKK21zZ3N0ciAib3bDpG50YXQgcmFkc2x1dCBlZnRlciBwYWtldG5hbW4gcMOlIHJhZCAlZCIKKworIzogc3JjL3NlbGVjdC5jOjEzNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGRhdGEgYWZ0ZXIgcGFja2FnZSBhbmQgc2VsZWN0aW9uIGF0IGxpbmUgJWQiCittc2dzdHIgIm92w6RudGFkIGRhdGEgZWZ0ZXIgcGFrZXQgb2NoIHZhbCBww6UgcmFkICVkIgorCisjOiBzcmMvc2VsZWN0LmM6MTM5CisjLCBjLWZvcm1hdAorbXNnaWQgImlsbGVnYWwgcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQ6ICUuMjUwcyIKK21zZ3N0ciAib2dpbHRpZ3QgcGFrZXRuYW1uIHDDpSByYWQgJWQ6ICUuMjUwcyIKKworIzogc3JjL3NlbGVjdC5jOjE0MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIHdhbnRlZCBzdGF0dXMgYXQgbGluZSAlZDogJS4yNTBzIgorbXNnc3RyICJva8OkbmQgw7Zuc2thZCBzdGF0dXMgcMOlIHJhZCAlZDogJS4yNTBzIgorCisjOiBzcmMvc2VsZWN0LmM6MTQ5Cittc2dpZCAicmVhZCBlcnJvciBvbiBzdGFuZGFyZCBpbnB1dCIKK21zZ3N0ciAibMOkc2ZlbCBww6Ugc3RhbmRhcmQgaW4iCisKKyM6IHNyYy9zdGF0Y21kLmM6NTIKK21zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IG92ZXJyaWRpbmcgZmlsZSBzdGF0IGluZm9ybWF0aW9uLiIKK21zZ3N0ciAiIgorIkFudsOkbmQgLS1oZWxwIGbDtnIgaGrDpGxwIG9tIGF0dCDDtnZlcnN0eXJhIFwic3RhdFwiLWluZm9ybWF0aW9uIGbDtnIgZmlsZXIuIgorCisjOiBzcmMvc3RhdGNtZC5jOjYxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsIDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDYtMjAwOSBHdWlsbGVtIEpvdmVyLlxuIgorbXNnc3RyICIiCisiQ29weXJpZ2h0IMKpIDIwMDAsIDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgwqkgMjAwNi0yMDA5IEd1aWxsZW0gSm92ZXIuXG4iCisKKyM6IHNyYy9zdGF0Y21kLmM6ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLS1hZGQgPG93bmVyPiA8Z3JvdXA+IDxtb2RlPiA8ZmlsZT5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBhZGQgYSBuZXcgZW50cnkgaW50byB0aGUgZGF0YWJhc2UuXG4iCisiICAtLXJlbW92ZSA8ZmlsZT4gICAgICAgICAgcmVtb3ZlIGZpbGUgZnJvbSB0aGUgZGF0YWJhc2UuXG4iCisiICAtLWxpc3QgWzxnbG9iLXBhdHRlcm4+XSAgbGlzdCBjdXJyZW50IG92ZXJyaWRlcyBpbiB0aGUgZGF0YWJhc2UuXG4iCisiXG4iCittc2dzdHIgIiIKKyJLb21tYW5kb246XG4iCisiICAtLWFkZCA8w6RnYXJlPiA8Z3J1cHA+IDxsw6RnZT4gPGZpbD5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBsw6RnZyB0aWxsIGVuIG55IHBvc3QgaSBkYXRhYmFzZW4uXG4iCisiICAtLXJlbW92ZSA8ZmlsPiAgICAgICAgICAgdGEgYm9ydCBmaWwgZnLDpW4gZGF0YWJhc2VuLlxuIgorIiAgLS1saXN0IFs8am9rZXJ0ZWNrZW4+XSAgIHZpc2EgYmVmaW50bGlnYSDDtnZlcnNrcml2bmluZ2FyIGkgZGF0YWJhc2VuLlxuIgorIlxuIgorCisjOiBzcmMvc3RhdGNtZC5jOjg5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIHNldCB0aGUgZGlyZWN0b3J5IHdpdGggdGhlIHN0YXRvdmVycmlkZSBmaWxlLlxuIgorIiAgLS11cGRhdGUgICAgICAgICAgICAgICAgIGltbWVkaWF0ZWx5IHVwZGF0ZSBmaWxlIHBlcm1pc3Npb25zLlxuIgorIiAgLS1mb3JjZSAgICAgICAgICAgICAgICAgIGZvcmNlIGFuIGFjdGlvbiBldmVuIGlmIGEgc2FuaXR5IGNoZWNrIGZhaWxzLlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHF1aWV0IG9wZXJhdGlvbiwgbWluaW1hbCBvdXRwdXQuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorbXNnc3RyICIiCisiRmxhZ2dvcjpcbiIKKyIgIC0tYWRtaW5kaXIgPGthdGFsb2c+ICAgICB2w6RsaiBrYXRhbG9nIGbDtnIgc3RhdG92ZXJyaWRlLWZpbGVuLlxuIgorIiAgLS11cGRhdGUgICAgICAgICAgICAgICAgIHVwcGRhdGVyYSBmaWxiZWjDtnJpZ2hldGVyIG9tZWRlbGJhcnQuXG4iCisiICAtLWZvcmNlICAgICAgICAgICAgICAgICAgdHZpbmdhIMOldGfDpHJkIMOkdmVuIG9tIHPDpGtlcmhldHN0ZXN0ZXIgIgorIm1pc3NseWNrYXMuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgdHlzdCBrw7ZybmluZywgbWluaW1hbCB1dGRhdGEuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgdmlzYSBkZXR0YSBoasOkbHBtZWRkZWxhbmRlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHZpc2EgdmVyc2lvbmVuLlxuIgorIlxuIgorCisjOiBzcmMvc3RhdGNtZC5jOjExNgorbXNnaWQgInN0cmlwcGluZyB0cmFpbGluZyAvIgorbXNnc3RyICJ0YXIgYm9ydCBhdnNsdXRhbmRlIC8iCisKKyM6IHNyYy9zdGF0Y21kLmM6MjA3Cittc2dpZCAiY2Fubm90IG9wZW4gbmV3IHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJrYW4gaW50ZSDDtnBwbmEgbnkgc3RhdG92ZXJyaWRlLWZpbCIKKworIzogc3JjL3N0YXRjbWQuYzoyMjIKK21zZ2lkICJlcnJvciByZW1vdmluZyBzdGF0b3ZlcnJpZGUtb2xkIgorbXNnc3RyICJmZWwgdmlkIGJvcnR0YWduaW5nIGF2IHN0YXRvdmVycmlkZS1vbGQiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjI0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgbmV3IHN0YXRvdmVycmlkZS1vbGQiCittc2dzdHIgImZlbCB2aWQgc2thcGFuZGUgYXYgbnkgc3RhdG92ZXJyaWRlLW9sZCIKKworIzogc3JjL3N0YXRjbWQuYzoyMjYKK21zZ2lkICJlcnJvciBpbnN0YWxsaW5nIG5ldyBzdGF0b3ZlcnJpZGUiCittc2dzdHIgImZlbCB2aWQgaW5zdGFsbGF0aW9uIGF2IG55IHN0YXRvdmVycmlkZSIKKworIzogc3JjL3N0YXRjbWQuYzoyNDYKK21zZ2lkICItLWFkZCBuZWVkcyBmb3VyIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS1hZGQgYmVow7Z2ZXIgZnlyYSBhcmd1bWVudCIKKworIzogc3JjL3N0YXRjbWQuYzoyNTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkFuIG92ZXJyaWRlIGZvciAnJXMnIGFscmVhZHkgZXhpc3RzLCBidXQgLS1mb3JjZSBzcGVjaWZpZWQgc28gd2lsbCBiZSAiCisiaWdub3JlZC4iCittc2dzdHIgIiIKKyJEZXQgZmlubnMgcmVkYW4gZW4gw7Z2ZXJza3Jpdm5pbmcgZsO2ciBcIiVzXCIsIG1lbiAtLWZvcmNlIGFuZ2F2cywgc8OlIGRlbiAiCisia29tbWVyIGF0dCBpZ25vcmVyYXMuIgorCisjOiBzcmMvc3RhdGNtZC5jOjI2MAorIywgYy1mb3JtYXQKK21zZ2lkICJBbiBvdmVycmlkZSBmb3IgJyVzJyBhbHJlYWR5IGV4aXN0cywgYWJvcnRpbmcuIgorbXNnc3RyICJEZXQgZmlubnMgcmVkYW4gZW4gw7Z2ZXJza3Jpdm5pbmcgZsO2ciBcIiVzXCIsIGF2YnJ5dGVyLiIKKworIzogc3JjL3N0YXRjbWQuYzoyNzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS11cGRhdGUgZ2l2ZW4gYnV0ICVzIGRvZXMgbm90IGV4aXN0IgorbXNnc3RyICItLXVwZGF0ZSBhbmdhdnMgbWVuICVzIGZpbm5zIGludGUiCisKKyM6IHNyYy9zdGF0Y21kLmM6Mjk2Cittc2dpZCAiTm8gb3ZlcnJpZGUgcHJlc2VudC4iCittc2dzdHIgIkRldCBmaW5ucyBpbmdhIMO2dmVyc2tyaXZuaW5nYXIuIgorCisjOiBzcmMvc3RhdGNtZC5jOjMwNAorbXNnaWQgIi0tdXBkYXRlIGlzIHVzZWxlc3MgZm9yIC0tcmVtb3ZlIgorbXNnc3RyICItLXVwZGF0ZSDDpHIgb2FudsOkbmRiYXIgdGlsbHNhbW1hbnMgbWVkIC0tcmVtb3ZlIgorCisjOiBzcmMvc3RhdGRiLmM6NTkKK21zZ2lkICJzeW50YXggZXJyb3I6IGludmFsaWQgdWlkIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJzeW50YXhmZWw6IG9naWx0aWcgYW52w6RuZGFyLWlkIGkgc3RhdG92ZXJyaWRlLWZpbCIKKworIzogc3JjL3N0YXRkYi5jOjY0CisjLCBjLWZvcm1hdAorbXNnaWQgInN5bnRheCBlcnJvcjogdW5rbm93biB1c2VyICclcycgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgInN5bnRheGZlbDogYW52w6RuZGFyZW4gXCIlc1wiIGkgc3RhdG92ZXJyaWRlLWZpbGVuIMOkciBva8OkbmQiCisKKyM6IHNyYy9zdGF0ZGIuYzo4MworbXNnaWQgInN5bnRheCBlcnJvcjogaW52YWxpZCBnaWQgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgInN5bnRheGZlbDogb2dpbHRpZyBncnVwcC1pZCBpIHN0YXRvdmVycmlkZS1maWwiCisKKyM6IHNyYy9zdGF0ZGIuYzo4OAorIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3I6IHVua25vd24gZ3JvdXAgJyVzJyBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAic3ludGF4ZmVsOiBncnVwcGVuIFwiJXNcIiBpIHN0YXRvdmVycmlkZS1maWxlbiDDpHIgb2vDpG5kIgorCisjOiBzcmMvc3RhdGRiLmM6MTA0Cittc2dpZCAic3ludGF4IGVycm9yOiBpbnZhbGlkIG1vZGUgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgInN5bnRheGZlbDogb2dpbHRpZ3QgbMOkZ2UgaSBzdGF0b3ZlcnJpZGUtZmlsIgorCisjOiBzcmMvc3RhdGRiLmM6MTI3Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgImt1bmRlIGludGUgw7ZwcG5hIHN0YXRvdmVycmlkZS1maWwiCisKKyM6IHNyYy9zdGF0ZGIuYzoxMzQKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgImt1bmRlIGludGUgdGEgc3RhdHVzIHDDpSBzdGF0b3ZlcnJpZGUtZmlsIgorCisjOiBzcmMvc3RhdGRiLmM6MTM3Cittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IHByZXZpb3VzIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJrdW5kZSBpbnRlIHRhIHN0YXR1cyBww6UgdGlkaWdhcmUgc3RhdG92ZXJyaWRlLWZpbCIKKworIzogc3JjL3N0YXRkYi5jOjE2MgorIywgYy1mb3JtYXQKK21zZ2lkICJyZWFkaW5nIHN0YXRvdmVycmlkZSBmaWxlICclLjI1MHMnIgorbXNnc3RyICJsw6RzZXIgc3RhdG92ZXJyaWRlLWZpbCBcIiUuMjUwc1wiIgorCisjOiBzcmMvc3RhdGRiLmM6MTY5Cittc2dpZCAic3RhdG92ZXJyaWRlIGZpbGUgaXMgbWlzc2luZyBmaW5hbCBuZXdsaW5lIgorbXNnc3RyICJzdGF0b3ZlcnJpZGUtZmlsIHNha25hciBhdnNsdXRhbmRlIHJhZGJyeXRuaW5nIgorCisjOiBzcmMvc3RhdGRiLmM6MTczCittc2dpZCAic3RhdG92ZXJyaWRlIGZpbGUgY29udGFpbnMgZW1wdHkgbGluZSIKK21zZ3N0ciAic3RhdG92ZXJyaWRlLWZpbCBpbm5laMOlbGxlciB0b21yYWQiCisKKyM6IHNyYy9zdGF0ZGIuYzoxNzggc3JjL3N0YXRkYi5jOjE5MCBzcmMvc3RhdGRiLmM6MjAyCittc2dpZCAic3ludGF4IGVycm9yIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJzeW50YXhmZWwgaSBzdGF0b3ZlcnJpZGUtZmlsIgorCisjOiBzcmMvc3RhdGRiLmM6MTg2IHNyYy9zdGF0ZGIuYzoxOTggc3JjL3N0YXRkYi5jOjIxMAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGxpbmUgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIm92w6RudGF0IHJhZHNsdXQgaSBzdGF0b3ZlcnJpZGUtZmlsIgorCisjOiBzcmMvc3RhdGRiLmM6MjE0CisjLCBjLWZvcm1hdAorbXNnaWQgIm11bHRpcGxlIHN0YXR1c292ZXJyaWRlcyBwcmVzZW50IGZvciBmaWxlICclLjI1MHMnIgorbXNnc3RyICJmbGVyYSBzdGF0b3ZlcnJpZGUgw6RyIHNhdHRhIGbDtnIgZmlsZW4gXCIlLjI1MHNcIiIKKworIzogc3JjL3RyaWdjbWQuYzo0NgorbXNnaWQgIlR5cGUgZHBrZy10cmlnZ2VyIC0taGVscCBmb3IgaGVscCBhYm91dCB0aGlzIHV0aWxpdHkuIgorbXNnc3RyICJTa3JpdiBkcGtnLXRyaWdnZXIgLS1oZWxwIGbDtnIgaGrDpGxwIG9tIGRldHRhIHZlcmt0eWcuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjUxCisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiAlcyBwYWNrYWdlIHRyaWdnZXIgdXRpbGl0eSB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICJEZWJpYW4gXCIlc1wiIHBha2V0dXRsw7ZzYXJ2ZXJrdHlnIHZlcnNpb24gJXMuXG4iCisKKyM6IHNyYy90cmlnY21kLmM6NjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbnM+IC4uLl0gPHRyaWdnZXItbmFtZT5cbiIKKyIgICAgICAgJXMgWzxvcHRpb25zPiAuLi5dIDxjb21tYW5kPlxuIgorIlxuIgorbXNnc3RyICIiCisiQW52w6RuZG5pbmc6ICVzIFs8ZmxhZ2dhPiAuLi5dIDx1dGzDtnNhcm5hbW4+XG4iCisiICAgICAgICAgICAgJXMgWzxmbGFnZ2E+IC4uLl0gPGtvbW1hbmRvPlxuIgorIlxuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC0tY2hlY2stc3VwcG9ydGVkICAgICAgICAgICAgICAgIENoZWNrIGlmIHRoZSBydW5uaW5nIGRwa2cgc3VwcG9ydHMgIgorInRyaWdnZXJzLlxuIgorIlxuIgorbXNnc3RyICIiCisiS29tbWFuZG9uOlxuIgorIiAgLS1jaGVjay1zdXBwb3J0ZWQgICAgICAgICAgICAgICAgU2Ugb20gZGVuIGFrdGl2YSBkcGtnIHN0w7ZkZXIgdXRsw7ZzYXJlLlxuIgorIlxuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjgyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hZG1pbmRpcj08ZGlyZWN0b3J5PiAgICAgICAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMuXG4iCisiICAtLWJ5LXBhY2thZ2U9PHBhY2thZ2U+ICAgICAgICAgICBPdmVycmlkZSB0cmlnZ2VyIGF3YWl0ZXIgKG5vcm1hbGx5IHNldFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBieSBkcGtnKS5cbiIKKyIgIC0tbm8tYXdhaXQgICAgICAgICAgICAgICAgICAgICAgIE5vIHBhY2thZ2UgbmVlZHMgdG8gYXdhaXQgdGhlICIKKyJwcm9jZXNzaW5nLlxuIgorIiAgLS1uby1hY3QgICAgICAgICAgICAgICAgICAgICAgICAgSnVzdCB0ZXN0IC0gZG9uJ3QgYWN0dWFsbHkgY2hhbmdlICIKKyJhbnl0aGluZy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIkZsYWdnb3I6XG4iCisiICAtLWFkbWluZGlyPTxrYXRhbG9nPiAgICAgICAgICAgICBBbnbDpG5kIDxrYXRhbG9nPiBpc3TDpGxsZXQgZsO2ciAlcy5cbiIKKyIgIC0tYnktcGFja2FnZT08cGFrZXQ+ICAgICAgICAgICAgIMOWdmVyc3R5ciBkZW4gYXZ2YWt0YW5kZSB1dGzDtnNhcmVuIChzw6R0dHNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5vcm1hbHQgYXYgZHBrZykuXG4iCisiICAtLW5vLWF3YWl0ICAgICAgICAgICAgICAgICAgICAgICBJbmdhIHBha2V0IGJlaMO2dmVyIHbDpG50YSBww6UgaGFudGVyaW5nZW4uXG4iCisiICAtLW5vLWFjdCAgICAgICAgICAgICAgICAgICAgICAgICBCYXJhIHRlc3RhIC0gw6RuZHJhIGluZ2VudGluZyBww6UgcmlrdGlndC5cbiIKKyJcbiIKKworIzogc3JjL3RyaWdjbWQuYzoxNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IHRyaWdnZXJzIGRhdGEgZGlyZWN0b3J5IG5vdCB5ZXQgY3JlYXRlZFxuIgorbXNnc3RyICIlczogdXRsw7ZzYXJkYXRha2F0YWxvZ2VuIGhhciBpbnRlIHNrYXBhdHMgw6RubnVcbiIKKworIzogc3JjL3RyaWdjbWQuYzoxNTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IHRyaWdnZXIgcmVjb3JkcyBub3QgeWV0IGluIGV4aXN0ZW5jZVxuIgorbXNnc3RyICIlczogdXRsw7ZzYXJwb3N0ZXIgZmlubnMgaW50ZSDDpG5udVxuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIwNQorbXNnaWQgInRha2VzIG9uZSBhcmd1bWVudCwgdGhlIHRyaWdnZXIgbmFtZSIKK21zZ3N0ciAidGFyIGJhcmEgZXR0IGFyZ3VtZW50LCBuYW1uZXQgcMOlIHV0bMO2c2FyZW4iCisKKyM6IHNyYy90cmlnY21kLmM6MjEwCittc2dpZCAibXVzdCBiZSBjYWxsZWQgZnJvbSBhIG1haW50YWluZXIgc2NyaXB0IChvciB3aXRoIGEgLS1ieS1wYWNrYWdlIG9wdGlvbikiCittc2dzdHIgIiIKKyJtw6VzdGUgYW5yb3BhcyBmcsOlbiBldHQgdXR2ZWNrbGFyc2tyaXB0IChlbGxlciBtZWQgZmxhZ2dhbiAtLWJ5LXBhY2thZ2UpIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIxNQorIywgYy1mb3JtYXQKK21zZ2lkICJpbGxlZ2FsIGF3YWl0ZWQgcGFja2FnZSBuYW1lICclLjI1MHMnOiAlLjI1MHMiCittc2dzdHIgIm9naWx0aWd0IG5hbW4gXCIlLjI1MHNcIiBww6UgcGFrZXQgc29tIHbDpG50YXMgcMOlOiAlLjI1MHMiCisKKyM6IHNyYy90cmlnY21kLmM6MjIxCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgdHJpZ2dlciBuYW1lIGAlLjI1MHMnOiAlLjI1MHMiCittc2dzdHIgIm9naWx0aWd0IHV0bMO2c2FybmFtbiBcIiUuMjUwc1wiOiAlLjI1MHMiCisKKyM6IHNyYy90cmlncHJvYy5jOjI1MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IGN5Y2xlIGZvdW5kIHdoaWxlIHByb2Nlc3NpbmcgdHJpZ2dlcnM6XG4iCisiIGNoYWluIG9mIHBhY2thZ2VzIHdob3NlIHRyaWdnZXJzIGFyZSBvciBtYXkgYmUgcmVzcG9uc2libGU6XG4iCittc2dzdHIgIiIKKyIlczogY3lrZWwgdXBwdMOkY2t0IHZpZCBoYW50ZXJpbmcgYXYgdXRsw7ZzYXJlOlxuIgorIiBwYWtldGtlZGphIHZhcnMgdXRsw7ZzYXJlIMOkciBlbGxlciBrYW4gdmFyYSBvcnNhazpcbiIKKworIzogc3JjL3RyaWdwcm9jLmM6MjU4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgcGFja2FnZXMnIHBlbmRpbmcgdHJpZ2dlcnMgd2hpY2ggYXJlIG9yIG1heSBiZSB1bnJlc29sdmFibGU6XG4iCittc2dzdHIgIiIKKyJcbiIKKyIgcGFrZXRlbnMgZsO2cmVzdMOlZW5kZSB1dGzDtnNhcmUgc29tIMOkciBlbGxlciBrYW5za2UgaW50ZSBrYW4gYW5hbHlzZXJhczpcbiIKKworIzogc3JjL3RyaWdwcm9jLmM6MjgxCittc2dpZCAidHJpZ2dlcnMgbG9vcGluZywgYWJhbmRvbmVkIgorbXNnc3RyICJ1dGzDtnNhcmUgaSBzbGluZ2EsIGF2YnJ5dHMiCisKKyM6IHNyYy90cmlncHJvYy5jOjMxMgorIywgYy1mb3JtYXQKK21zZ2lkICJQcm9jZXNzaW5nIHRyaWdnZXJzIGZvciAlcyAuLi5cbiIKK21zZ3N0ciAiSGFudGVyYXIgdXRsw7ZzYXJlIGbDtnIgJXMgLi4uXG4iCisKKyM6IHNyYy91cGRhdGUuYzo1MgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGV4YWN0bHkgb25lIFBhY2thZ2VzLWZpbGUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMgYmVow7Z2ZXIgZXhha3QgZW4gUGFja2FnZXMtZmlsIHNvbSBhcmd1bWVudCIKKworIzogc3JjL3VwZGF0ZS5jOjYyCittc2dpZCAidW5hYmxlIHRvIGFjY2VzcyBkcGtnIHN0YXR1cyBhcmVhIGZvciBidWxrIGF2YWlsYWJsZSB1cGRhdGUiCittc2dzdHIgIiIKKyJrdW5kZSBpbnRlIGtvbW1hIMOldCBkcGtncyBzdGF0dXNvbXLDpWRlIGbDtnIgc2FtbWFuc2xhZ2VuIHVwcGRhdGVyaW5nIGF2ICIKKyJ0aWxsZ8OkbmdsaWdhIHBha2V0IgorCisjOiBzcmMvdXBkYXRlLmM6NjQKK21zZ2lkICJidWxrIGF2YWlsYWJsZSB1cGRhdGUgcmVxdWlyZXMgd3JpdGUgYWNjZXNzIHRvIGRwa2cgc3RhdHVzIGFyZWEiCittc2dzdHIgIiIKKyJzYW1tYW5zbGFnZW4gdXBwZGF0ZXJpbmcgYXYgdGlsbGfDpG5nbGlnYSBwYWtldCBrcsOkdmVyIHRpbGxnw6VuZyB0aWxsIGRwa2dzICIKKyJzdGF0dXNvbXLDpWRlIgorCisjOiBzcmMvdXBkYXRlLmM6NzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVwbGFjaW5nIGF2YWlsYWJsZSBwYWNrYWdlcyBpbmZvLCB1c2luZyAlcy5cbiIKK21zZ3N0ciAiRXJzw6R0dGVyIGluZm9ybWF0aW9uIG9tIHRpbGxnw6RuZ2xpZ2EgcGFrZXQgbWVkICVzLlxuIgorCisjOiBzcmMvdXBkYXRlLmM6NzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiVXBkYXRpbmcgYXZhaWxhYmxlIHBhY2thZ2VzIGluZm8sIHVzaW5nICVzLlxuIgorbXNnc3RyICJVcHBkYXRlcmFyIGluZm9ybWF0aW9uIG9tIHRpbGxnw6RuZ2xpZ2EgcGFrZXQgbWVkICVzLlxuIgorCisjOiBzcmMvdXBkYXRlLmM6MTAxCisjLCBjLWZvcm1hdAorbXNnaWQgIkluZm9ybWF0aW9uIGFib3V0ICVkIHBhY2thZ2Ugd2FzIHVwZGF0ZWQuXG4iCittc2dpZF9wbHVyYWwgIkluZm9ybWF0aW9uIGFib3V0ICVkIHBhY2thZ2VzIHdhcyB1cGRhdGVkLlxuIgorbXNnc3RyWzBdICJJbmZvcm1hdGlvbiBvbSAlZCBwYWtldCB1cHBkYXRlcmFkZXMuXG4iCittc2dzdHJbMV0gIkluZm9ybWF0aW9uIG9tICVkIHBha2V0IHVwcGRhdGVyYWRlcy5cbiIKKworIzogc3JjL3VwZGF0ZS5jOjExNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisib2Jzb2xldGUgJy0tJXMnIG9wdGlvbiwgdW5hdmFpbGFibGUgcGFja2FnZXMgYXJlIGF1dG9tYXRpY2FsbHkgY2xlYW5lZCB1cC4iCittc2dzdHIgImbDtnLDpWxkcmFkIGZsYWdnYSAnLS0lcycsIG90aWxsZ8OkbmdsaWdhIHBha2V0IHJlbnNhcyB1cHAgYXV0b21hdGlza3QuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIG5hbWUgJyUuNTBzLi4uJyBpcyB0b28gbG9uZyIKK21zZ3N0ciAiZmlsbmFtbmV0IFwiJS41MHMuLi5cIiDDpHIgZsO2ciBsw6VuZ3QiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTI5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGZpbGUgbmFtZSAnJS4yNTBzJyIKK21zZ3N0ciAia3VuZGUgaW50ZSB0YSBzdGF0dXMgcMOlIGZpbG5hbW5ldCBcIiUuMjUwc1wiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjE4OQorbXNnaWQgInVuYWJsZSB0byBzdGF0IGNvbnRyb2wgZGlyZWN0b3J5IgorbXNnc3RyICJrdW5kZSBpbnRlIHRhIHN0YXR1cyBww6Uga29udHJvbGxrYXRhbG9nIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjE5MQorbXNnaWQgImNvbnRyb2wgZGlyZWN0b3J5IGlzIG5vdCBhIGRpcmVjdG9yeSIKK21zZ3N0ciAia29udHJvbGxrYXRhbG9nZW4gw6RyIGludGUgZW4ga2F0YWxvZyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoxOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29udHJvbCBkaXJlY3RvcnkgaGFzIGJhZCBwZXJtaXNzaW9ucyAlMDNsbyAobXVzdCBiZSA+PTA3NTUgYW5kIDw9MDc3NSkiCittc2dzdHIgIiIKKyJrb250cm9sbGthdGFsb2dlbiBoYXIgZmVsYWt0aWcgYmVow7ZyaWdoZXQgJTAzbG8gKG3DpXN0ZSB2YXJhID49MDc1NSBvY2ggIgorIjw9MDc3NSkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjA0CisjLCBjLWZvcm1hdAorbXNnaWQgIm1haW50YWluZXIgc2NyaXB0IGAlLjUwcycgaXMgbm90IGEgcGxhaW4gZmlsZSBvciBzeW1saW5rIgorbXNnc3RyICJ1dHZlY2tsYXJza3JpcHQgXCIlLjUwc1wiIMOkciBpbnRlIGVuIHZhbmxpZyBmaWwgZWxsZXIgc3ltYm9saXNrIGzDpG5rIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjIwNworIywgYy1mb3JtYXQKK21zZ2lkICIiCisibWFpbnRhaW5lciBzY3JpcHQgYCUuNTBzJyBoYXMgYmFkIHBlcm1pc3Npb25zICUwM2xvIChtdXN0IGJlID49MDU1NSBhbmQgIgorIjw9MDc3NSkiCittc2dzdHIgIiIKKyJ1dHZlY2tsYXJza3JpcHQgXCIlLjUwc1wiIGhhciBmZWxha3RpZyBiZWjDtnJpZ2hldCAlMDNsbyAobcOlc3RlIHZhcmEgPj0wNTU1ICIKKyJvY2ggPD0wNzc1KSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAibWFpbnRhaW5lciBzY3JpcHQgYCUuNTBzJyBpcyBub3Qgc3RhdHRhYmxlIgorbXNnc3RyICJrdW5kZSBpbnRlIHRhIHN0YXR1cyBww6UgdXR2ZWNrbGFyc2tyaXB0IFwiJS41MHNcIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyMzcKK21zZ2lkICJlcnJvciBvcGVuaW5nIGNvbmZmaWxlcyBmaWxlIgorbXNnc3RyICJmZWwgdmlkIMO2cHBuaW5nIGF2IGZpbGVuIGNvbmZmaWxlcyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNDYKK21zZ2lkICJlbXB0eSBzdHJpbmcgZnJvbSBmZ2V0cyByZWFkaW5nIGNvbmZmaWxlcyIKK21zZ3N0ciAidG9tIHN0csOkbmcgZnLDpW4gZmdldHMgbsOkciBjb25mZmlsZXMgbMOkc3RlcyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgbmFtZSAnJS41MHMuLi4nIGlzIHRvbyBsb25nLCBvciBtaXNzaW5nIGZpbmFsIG5ld2xpbmUiCittc2dzdHIgIiIKKyJrb25maWd1cmF0aW9uc2ZpbG5hbW5ldCBcIiUuNTBzLi4uXCIgw6RyIGbDtnIgbMOlbmd0IGVsbGVyIHNha25hciBueXJhZHN0ZWNrZW4gIgorInDDpSBzbHV0ZXQiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjY0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIGZpbGVuYW1lICclcycgY29udGFpbnMgdHJhaWxpbmcgd2hpdGUgc3BhY2VzIgorbXNnc3RyICJrb25maWd1cmF0aW9uc2ZpbG5hbW5ldCBcIiVzXCIgaW5uZWjDpWxsZXIgYXZzbHV0YW5kZSBibGFua3N0ZWciCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjY2CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIGAlLjI1MHMnIGRvZXMgbm90IGFwcGVhciBpbiBwYWNrYWdlIgorbXNnc3RyICJrb25maWd1cmF0aW9uc2ZpbGVuIFwiJS4yNTBzXCIgZmlubnMgaW50ZSBpIHBha2V0ZXQiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjY4CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIGAlLjI1MHMnIGlzIG5vdCBzdGF0dGFibGUiCittc2dzdHIgImt1bmRlIGludGUgdGEgc3RhdHVzIHDDpSBrb25maWd1cmF0aW9uc2ZpbGVuIFwiJS41MHNcIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgJyVzJyBpcyBub3QgYSBwbGFpbiBmaWxlIgorbXNnc3RyICJrb25maWd1cmF0aW9uc2ZpbGVuIFwiJXNcIiDDpHIgaW50ZSBlbiB2YW5saWcgZmlsIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI3NAorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBuYW1lICclcycgaXMgZHVwbGljYXRlZCIKK21zZ3N0ciAia29uZmlndXJhdGlvbnNmaWxuYW1uZXQgXCIlc1wiIGR1cGxpY2VyYXQiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6Mjg3Cittc2dpZCAiZXJyb3IgcmVhZGluZyBjb25mZmlsZXMgZmlsZSIKK21zZ3N0ciAiZmVsIHZpZCBsw6RzbmluZyBhdiBmaWxlbiBjb25mZmlsZXMiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MzM5Cittc2dpZCAicGFja2FnZSBuYW1lIGhhcyBjaGFyYWN0ZXJzIHRoYXQgYXJlbid0IGxvd2VyY2FzZSBhbHBoYW51bXMgb3IgYC0rLiciCittc2dzdHIgInBha2V0bmFtbmV0IGhhciB0ZWNrZW4gc29tIGludGUgw6RyIGdlbWVuYSBhbGZhbnVtZXJpc2thIGVsbGVyIFwiLSsuXCIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MzQxCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgY29udGFpbnMgdXNlci1kZWZpbmVkIFByaW9yaXR5IHZhbHVlICclcyciCittc2dzdHIgIlwiJXNcIiBpbm5laMOlbGxlciBhbnbDpG5kYXJkZWZpbmllcmF0IHbDpHJkZSBmw7ZyIFByaW9yaXR5IFwiJXNcIiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzozNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBjb250YWlucyB1c2VyLWRlZmluZWQgZmllbGQgJyVzJyIKK21zZ3N0ciAiXCIlc1wiIGlubmVow6VsbGVyIGFudsOkbmRhcmRlZmluaWVyYXQgZsOkbHQgXCIlc1wiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjM1OAorIywgYy1mb3JtYXQKK21zZ2lkICJpZ25vcmluZyAlZCB3YXJuaW5nIGFib3V0IHRoZSBjb250cm9sIGZpbGUocylcbiIKK21zZ2lkX3BsdXJhbCAiaWdub3JpbmcgJWQgd2FybmluZ3MgYWJvdXQgdGhlIGNvbnRyb2wgZmlsZShzKVxuIgorbXNnc3RyWzBdICJpZ25vcmVyYXIgJWQgdmFybmluZyBvbSBrb250cm9sbGZpbGVybmFcbiIKK21zZ3N0clsxXSAiaWdub3JlcmFyICVkIHZhcm5pbmdhciBvbSBrb250cm9sbGZpbGVybmFcbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MDMgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MjkKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDM2CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSA8ZGlyZWN0b3J5PiBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyBiZWjDtnZlciBldHQgPGthdGFsb2c+LWFyZ3VtZW50IgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQwOQorbXNnaWQgIi0tYnVpbGQgdGFrZXMgYXQgbW9zdCB0d28gYXJndW1lbnRzIgorbXNnc3RyICItLWJ1aWxkIHRhciBow7Znc3QgdHbDpSBhcmd1bWVudCIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoZWNrIGZvciBleGlzdGVuY2Ugb2YgYXJjaGl2ZSBgJS4yNTBzJyIKK21zZ3N0ciAia3VuZGUgaW50ZSBrb250cm9sbGVyYSBvbSBhcmtpdmV0IFwiJS4yNTBzXCIgZXhpc3RlcmFyIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQzMAorbXNnaWQgInRhcmdldCBpcyBkaXJlY3RvcnkgLSBjYW5ub3Qgc2tpcCBjb250cm9sIGZpbGUgY2hlY2siCittc2dzdHIgIiIKKyJtw6VsZXQgw6RyIGVuIGthdGFsb2cgLSBrYW4gaW50ZSBob3BwYSDDtnZlciBrb250cm9sbCBhdiBrb25maWd1cmF0aW9uc2ZpbGVyIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQzMQorbXNnaWQgIm5vdCBjaGVja2luZyBjb250ZW50cyBvZiBjb250cm9sIGFyZWEuIgorbXNnc3RyICJrb250cm9sbGVyYXIgaW50ZSBpbm5laMOlbGxlciBpIGtvbnRyb2xsZmlsIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQzMgorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnLWRlYjogYnVpbGRpbmcgYW4gdW5rbm93biBwYWNrYWdlIGluICclcycuXG4iCittc2dzdHIgImRwa2ctZGViOiBieWdnZXIgZXR0IG9rw6RudCBwYWtldCBpIFwiJXNcIi5cbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZy1kZWI6IGJ1aWxkaW5nIHBhY2thZ2UgYCVzJyBpbiBgJXMnLlxuIgorbXNnc3RyICJkcGtnLWRlYjogYnlnZ2VyIHBha2V0ZXQgXCIlc1wiIGkgXCIlc1wiLlxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ2NyBkcGtnLWRlYi9idWlsZC5jOjUyMQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gbWFrZSB0ZW1wb3JhcnkgZmlsZSAoJXMpIgorbXNnc3RyICJrdW5kZSBpbnRlIHNrYXBhIHRlbXBvcsOkcmZpbCAoJXMpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ2NyBkcGtnLWRlYi9idWlsZC5jOjQ3MCBkcGtnLWRlYi9idWlsZC5jOjQ3NworIzogZHBrZy1kZWIvYnVpbGQuYzo0ODUgZHBrZy1kZWIvYnVpbGQuYzo0OTQgZHBrZy1kZWIvYnVpbGQuYzo0OTkKK21zZ2lkICJjb250cm9sIG1lbWJlciIKK21zZ3N0ciAia29udHJvbGxkZWwiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDcwIGRwa2ctZGViL2J1aWxkLmM6NTI0CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB1bmxpbmsgdGVtcG9yYXJ5IGZpbGUgKCVzKSwgJXMiCittc2dzdHIgImt1bmRlIGludGUgdGEgYm9ydCB0ZW1wb3LDpHJmaWwgKCVzKSwgJXMiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDg1IGRwa2ctZGViL2J1aWxkLmM6NTkzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdGVtcG9yYXJ5IGZpbGUgKCVzKSIKK21zZ3N0ciAia3VuZGUgaW50ZSBnw6UgdGlsbCBiw7ZyamFuIGF2IHRlbXBvcsOkciBmaWwgKCVzKSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0OTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHN0YXQgdGVtcG9yYXJ5IGZpbGUgKCVzKSIKK21zZ3N0ciAia3VuZGUgaW50ZSB0YSBzdGF0dXMgKHN0YXQpIHDDpSB0ZW1wb3LDpHIgZmlsICglcykiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDk4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHdyaXRpbmcgYCVzJyIKK21zZ3N0ciAiZmVsIHZpZCBza3Jpdm5pbmcgYXYgXCIlc1wiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjUyMSBkcGtnLWRlYi9idWlsZC5jOjUyNCBkcGtnLWRlYi9idWlsZC5jOjU0NgorIzogZHBrZy1kZWIvYnVpbGQuYzo1NzIgZHBrZy1kZWIvYnVpbGQuYzo1ODAgZHBrZy1kZWIvYnVpbGQuYzo1OTMKK21zZ2lkICJkYXRhIG1lbWJlciIKK21zZ3N0ciAiZGF0YWRlbCIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo1NzEgZHBrZy1kZWIvYnVpbGQuYzo1ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIGZpbGVuYW1lIHRvIHRhciBwaXBlICglcykiCittc2dzdHIgImt1bmRlIGludGUgc2tyaXZhIGZpbG5hbW4gdGlsbCB0YXItcsO2ciAoJXMpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjU4NAorbXNnaWQgIjxjb21wcmVzcz4gZnJvbSB0YXIgLWNmIgorbXNnc3RyICI8a29tcHJpbWVyYXJlPiBmcsOlbiB0YXIgLWNmIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6NjEgZHBrZy1kZWIvZXh0cmFjdC5jOjYzCittc2dpZCAic2hlbGwgY29tbWFuZCB0byBtb3ZlIGZpbGVzIgorbXNnc3RyICJza2Fsa29tbWFuZG8gZsO2ciBhdHQgZmx5dHRhIGZpbGVyIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6NzAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgZmlsZSBpbiAlcyBpbiAlLjI1NXMiCittc2dzdHIgIm92w6RudGF0IGZpbHNsdXQgaSAlcyBpICUuMjU1cyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHJlYWRpbmcgJXMgZnJvbSBmaWxlICUuMjU1cyIKK21zZ3N0ciAiZmVsIHZpZCBsw6RzbmluZyBhdiAlcyBmcsOlbiBmaWxlbiAlLjI1NXMiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxMjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgYXJjaGl2ZSBgJS4yNTVzJyIKK21zZ3N0ciAia3VuZGUgaW50ZSBsw6RzYSBhcmtpdmV0IFwiJS4yNTVzXCIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxMjcKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgYXJjaGl2ZSIKK21zZ3N0ciAia3VuZGUgaW50ZSB0YSBzdGF0dXMgcMOlIGFya2l2ZXQiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxMzEKK21zZ2lkICJhcmNoaXZlIG1hZ2ljIHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICJtYWdpc2t0IHZlcnNpb25zbnVtbWVyIGbDtnIgYXJraXYiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNDMKK21zZ2lkICJhcmNoaXZlIG1lbWJlciBoZWFkZXIiCittc2dzdHIgImh1dnVkIGbDtnIgYXJraXZkZWwiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIGFyY2hpdmUgaGVhZGVyIG1hZ2ljIgorbXNnc3RyICJmaWxlbiBcIiUuMjUwc1wiIMOkciB0cmFzaWcgLSBmZWxha3RpZ3QgbWFnaXNrdCBudW1tZXIgaSBhcmtpdmh1dnVkIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTU1CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgbm90IGEgZGViaWFuIGJpbmFyeSBhcmNoaXZlICh0cnkgZHBrZy1zcGxpdD8pIgorbXNnc3RyICJmaWxlbiBcIiUuMjUwc1wiIMOkciBpbnRlIGV0dCBkZWJpYW5iaW7DpHJhcmtpdiAoZsO2cnPDtmsgbWVkIGRwa2ctc3BsaXQ/KSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE1OQorbXNnaWQgImFyY2hpdmUgaW5mb3JtYXRpb24gaGVhZGVyIG1lbWJlciIKK21zZ3N0ciAiaHV2dWQgZsO2ciBhcmtpdmluZm9ybWF0aW9uIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTYyCittc2dpZCAiYXJjaGl2ZSBoYXMgbm8gbmV3bGluZXMgaW4gaGVhZGVyIgorbXNnc3RyICJhcmtpdmV0IGhhciBpbmdhIG55cmFkc3RlY2tlbiBpIGh1dnVkZXQiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNjUKK21zZ2lkICJhcmNoaXZlIGhhcyBubyBkb3QgaW4gdmVyc2lvbiBudW1iZXIiCittc2dzdHIgImFya2l2ZXQgaGFyIGluZ2VuIHB1bmt0IGkgdmVyc2lvbnNudW1yZXQiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiYXJjaGl2ZSB2ZXJzaW9uICUuMjUwcyBub3QgdW5kZXJzdG9vZCwgZ2V0IG5ld2VyIGRwa2ctZGViIgorbXNnc3RyICJhcmtpdmV0cyB2ZXJzaW9uZW4gJS4yNTBzIGbDtnJzdG9kcyBpbnRlLCBow6RtdGEgZW4gbnlhcmUgZHBrZy1kZWIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNzkgZHBrZy1kZWIvZXh0cmFjdC5jOjIwNQorIywgYy1mb3JtYXQKK21zZ2lkICJza2lwcGVkIGFyY2hpdmUgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ3N0ciAiaG9wcGFkZSDDtnZlciBhcmtpdm1lZGxlbXNkYXRhIGZyw6VuICVzIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTk0CisjLCBjLWZvcm1hdAorbXNnaWQgImFyY2hpdmUgJyUuMjUwcycgY29udGFpbnMgbm90IHVuZGVyc3Rvb2QgZGF0YSBtZW1iZXIgJS4qcywgZ2l2aW5nIHVwIgorbXNnc3RyICJhcmtpdmV0IFwiJS4yNTBzXCIgaW5uZWjDpWxsZXIgb2vDpG5kIGRhdGFkZWwgJS4qcywgZ2VyIHVwcCIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE5OQorIywgYy1mb3JtYXQKK21zZ2lkICJhcmNoaXZlICclLjI1MHMnIGNvbnRhaW5zIHR3byBjb250cm9sIG1lbWJlcnMsIGdpdmluZyB1cCIKK21zZ3N0ciAiYXJraXZldCBcIiUuMjUwc1wiIGlubmVow6VsbGVyIHR2w6Uga29udHJvbGxkZWxhciwgZ2VyIHVwcCIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIxNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiIG5ldyBkZWJpYW4gcGFja2FnZSwgdmVyc2lvbiAlcy5cbiIKKyIgc2l6ZSAlamQgYnl0ZXM6IGNvbnRyb2wgYXJjaGl2ZT0gJWpkIGJ5dGVzLlxuIgorbXNnc3RyICIiCisiIG55dHQgZGViaWFucGFrZXQsIHZlcnNpb24gJXMuXG4iCisiIHN0b3JsZWsgJWpkIGJ5dGU6IGtvbnRyb2xsYXJraXY9ICVqZCBieXRlLlxuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjMyCittc2dpZCAiYXJjaGl2ZSBjb250cm9sIG1lbWJlciBzaXplIgorbXNnc3RyICJzdG9ybGVrIHDDpSBhcmtpdmtvbnRyb2xsZGVsIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjM1CisjLCBjLWZvcm1hdAorbXNnaWQgImFyY2hpdmUgaGFzIG1hbGZvcm1hdHRlZCBjb250cm9sIG1lbWJlciBzaXplICclcyciCittc2dzdHIgImFya2l2ZXQgaGFyIGZlbGZvcm1hdGVyYWQga29udHJvbGRlbGzDpG5nZCBcIiVzXCIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNDIKKyMsIGMtZm9ybWF0Cittc2dpZCAic2tpcHBlZCBhcmNoaXZlIGNvbnRyb2wgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ3N0ciAiaG9wcGFkZSDDtnZlciBhcmtpdmtvbnRyb2xsZGVsZGF0YSBmcsOlbiAlcyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI0NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiIG9sZCBkZWJpYW4gcGFja2FnZSwgdmVyc2lvbiAlcy5cbiIKKyIgc2l6ZSAlamQgYnl0ZXM6IGNvbnRyb2wgYXJjaGl2ZT0gJWpkLCBtYWluIGFyY2hpdmU9ICVqZC5cbiIKK21zZ3N0ciAiIgorIiBnYW1tYWx0IGRlYmlhbnBha2V0LCB2ZXJzaW9uICVzLlxuIgorIiBzdG9ybGVrICVqZCBieXRlOiBrb250cm9sbGFya2l2PSAlamQsIGh1dnVkYXJraXY9ICVqZC5cbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI1NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZy1kZWI6IGZpbGUgbG9va3MgbGlrZSBpdCBtaWdodCBiZSBhbiBhcmNoaXZlIHdoaWNoIGhhcyBiZWVuXG4iCisiZHBrZy1kZWI6ICAgIGNvcnJ1cHRlZCBieSBiZWluZyBkb3dubG9hZGVkIGluIEFTQ0lJIG1vZGVcbiIKK21zZ3N0ciAiIgorImRwa2ctZGViOiBmaWxlbiB2ZXJrYXIgdmFyYSBldHQgYXJraXYgc29tIGhhciBnw6V0dCBzw7ZuZGVyIGdlbm9tXG4iCisiZHBrZy1kZWI6ICAgIGF0dCBoYSBow6RtdGF0cyBpIEFTQ0lJLWzDpGdlXG4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCUuMjU1cycgaXMgbm90IGEgZGViaWFuIGZvcm1hdCBhcmNoaXZlIgorbXNnc3RyICJcIiUuMjU1c1wiIMOkciBpbnRlIGV0dCBkZWJpYW5hcmtpdiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI2NgorbXNnaWQgImZhaWxlZCB0byB3cml0ZSB0byBwaXBlIGluIGNvcHkiCittc2dzdHIgImt1bmRlIGludGUgc2tyaXZhIHRpbGwgcsO2ciBpIFwia29waWVyYVwiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjY4Cittc2dpZCAiZmFpbGVkIHRvIGNsb3NlIHBpcGUgaW4gY29weSIKK21zZ3N0ciAia3VuZGUgaW50ZSBzdMOkbmdhIHLDtnIgaSBcImtvcGllcmFcIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI4NAorbXNnaWQgImRhdGEiCittc2dzdHIgImRhdGFkZWwiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozMDcKK21zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gZGlyZWN0b3J5IgorbXNnc3RyICJrdW5kZSBpbnRlIGJ5dGEgdGlsbCBrYXRhbG9nZW4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozMTAKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGRpcmVjdG9yeSIKK21zZ3N0ciAia3VuZGUgaW50ZSBza2FwYSBrYXRhbG9nIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzEyCittc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIGRpcmVjdG9yeSBhZnRlciBjcmVhdGluZyBpdCIKK21zZ3N0ciAia3VuZGUgaW50ZSBieXRhIHRpbGwga2F0YWxvZyBlZnRlciBhdHQgaGEgc2thcGF0IGRlbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMyMworbXNnaWQgIjxkZWNvbXByZXNzPiIKK21zZ3N0ciAiPGRla29tcHJpbWVyaW5nPiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMyNQorbXNnaWQgInBhc3RlIgorbXNnc3RyICJrbGlzdHJhIGluIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzQyIGRwa2ctZGViL2V4dHJhY3QuYzozNjMgZHBrZy1kZWIvZXh0cmFjdC5jOjQwMgorIzogZHBrZy1kZWIvaW5mby5jOjc3CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSAuZGViIGZpbGVuYW1lIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIGJlaMO2dmVyIGV0dCAuZGViLWZpbG5hbW4gc29tIGFyZ3VtZW50IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzQ3IGRwa2ctZGViL2V4dHJhY3QuYzo0MDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIi0tJXMgbmVlZHMgYSB0YXJnZXQgZGlyZWN0b3J5LlxuIgorIlBlcmhhcHMgeW91IHNob3VsZCBiZSB1c2luZyBkcGtnIC0taW5zdGFsbCA/IgorbXNnc3RyICIiCisiLS0lcyBiZWjDtnZlciBlbiBtw6Vsa2F0YWxvZy5cbiIKKyJLYW5za2Ugw6RyIGRldCBkcGtnIC0taW5zdGFsbCBkdSB2aWxsIGFudsOkbmRhPyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjM1MCBkcGtnLWRlYi9leHRyYWN0LmM6NDEwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgYXQgbW9zdCB0d28gYXJndW1lbnRzICguZGViIGFuZCBkaXJlY3RvcnkpIgorbXNnc3RyICItLSVzIHRhciBzb20gbWVzdCB0dsOlIGFyZ3VtZW50ICguZGViIG9jaCBrYXRhbG9nKSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjM2NQorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIHRha2VzIG9ubHkgb25lIGFyZ3VtZW50ICguZGViIGZpbGVuYW1lKSIKK21zZ3N0ciAiLS0lcyB0YXIgYmFyYSBldHQgYXJndW1lbnQgKC5kZWItZmlsbmFtbikiCisKKyM6IGRwa2ctZGViL2luZm8uYzo2MworbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byBgLycgZm9yIGNsZWFudXAiCittc2dzdHIgImt1bmRlIGludGUgYnl0YSBrYXRhbG9nIHRpbGwgXCIvXCIgZsO2ciB1cHByZW5zbmluZyIKKworIzogZHBrZy1kZWIvaW5mby5jOjEwNgorIywgYy1mb3JtYXQKK21zZ2lkICJjb250cm9sIGZpbGUgJyVzJyIKK21zZ3N0ciAia29udHJvbGxmaWwgXCIlc1wiIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTEwCisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2ctZGViOiBgJS4yNTVzJyBjb250YWlucyBubyBjb250cm9sIGNvbXBvbmVudCBgJS4yNTVzJ1xuIgorbXNnc3RyICJkcGtnLWRlYjogXCIlLjI1NXNcIiBpbm5laMOlbGxlciBpbmdlbiBrb250cm9sbGtvbXBvbmVudCBcIiUuMjU1c1wiXG4iCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAib3BlbiBjb21wb25lbnQgYCUuMjU1cycgKGluICUuMjU1cykgZmFpbGVkIGluIGFuIHVuZXhwZWN0ZWQgd2F5IgorbXNnc3RyICIiCisiw7ZwcG5hbmRlIGF2IGtvbXBvbmVudGVuIFwiJS4yNTVzXCIgKGkgJS4yNTVzKSBtaXNzbHlja2FkZXMgcMOlIGV0dCBvdsOkbnRhdCAiCisic8OkdHQiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJWQgcmVxdWVzdGVkIGNvbnRyb2wgY29tcG9uZW50IGlzIG1pc3NpbmciCittc2dpZF9wbHVyYWwgIiVkIHJlcXVlc3RlZCBjb250cm9sIGNvbXBvbmVudHMgYXJlIG1pc3NpbmciCittc2dzdHJbMF0gIiVkIGVmdGVyZnLDpWdhZCBrb250cm9sbGtvbXBvbmVudCBzYWtuYXMiCittc2dzdHJbMV0gIiVkIGVmdGVyZnLDpWdhZGUga29udHJvbGxrb21wb25lbnRlciBzYWtuYXMiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMzkgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQyNAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc2NhbiBkaXJlY3RvcnkgYCUuMjU1cyciCittc2dzdHIgImthbiBpbnRlIGzDpHNhIGthdGFsb2dlbiBcIiUuMjU1c1wiIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTQ4CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzdGF0IGAlLjI1NXMnIChpbiBgJS4yNTVzJykiCittc2dzdHIgImthbiBpbnRlIHRhIHN0YXR1cyBww6UgXCIlLjI1NXNcIiAoaSBcIiUuMjU1c1wiKSIKKworIzogZHBrZy1kZWIvaW5mby5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgb3BlbiBgJS4yNTVzJyAoaW4gYCUuMjU1cycpIgorbXNnc3RyICJrYW4gaW50ZSDDtnBwbmEgXCIlLjI1NXNcIiAoaSBcIiUuMjU1c1wiKSIKKworIzogZHBrZy1kZWIvaW5mby5jOjE2NyBkcGtnLWRlYi9pbmZvLmM6MTg1IGRwa2ctZGViL2luZm8uYzoxOTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgYCUuMjU1cycgKGluIGAlLjI1NXMnKSIKK21zZ3N0ciAia3VuZGUgaW50ZSBsw6RzYSBcIiUuMjU1c1wiIChpIFwiJS4yNTVzXCIpIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTcwCisjLCBjLWZvcm1hdAorbXNnaWQgIiAlN2pkIGJ5dGVzLCAlNWQgbGluZXMgICAlYyAgJS0yMC4xMjdzICUuMTI3c1xuIgorbXNnc3RyICIgJTdqZCBieXRlLCAlNWQgcmFkZXIgICAlYyAgJS0yMC4xMjdzICUuMTI3c1xuIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTc0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgICAgbm90IGEgcGxhaW4gZmlsZSAgICAgICAgICAlLjI1NXNcbiIKK21zZ3N0ciAiICAgICBpbnRlIGVuIHZhbmxpZyBmaWwgICAgICAgICUuMjU1c1xuIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTg2Cittc2dpZCAiKG5vIGBjb250cm9sJyBmaWxlIGluIGNvbnRyb2wgYXJjaGl2ZSEpXG4iCittc2dzdHIgIihpbmdlbiBcImNvbnRyb2xcIi1maWwgaSBrb250cm9sbGFya2l2ZXQhKVxuIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MjIyCittc2dpZCAiY291bGQgbm90IG9wZW4gdGhlIGBjb250cm9sJyBjb21wb25lbnQiCittc2dzdHIgImt1bmRlIGludGUgw7ZwcG5hIGtvbnRyb2xsa29tcG9uZW50ZW4iCisKKyM6IGRwa2ctZGViL2luZm8uYzoyNjEKK21zZ2lkICJmYWlsZWQgZHVyaW5nIHJlYWQgb2YgYGNvbnRyb2wnIGNvbXBvbmVudCIKK21zZ3N0ciAiZmVsIHZpZCBsw6RzbmluZyBhdiBrb250cm9sbGtvbXBvbmVudGVuIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MjYzCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgdGhlICclcycgY29tcG9uZW50IgorbXNnc3RyICJmZWwgdmlkIHN0w6RuZ25pbmcgYXYga29tcG9uZW50ZW4gXCIlc1wiIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6Mjc4Cittc2dpZCAiRXJyb3IgaW4gZm9ybWF0IgorbXNnc3RyICJGZWwgaSBmb3JtYXQiCisKKyM6IGRwa2ctZGViL2luZm8uYzozMjgKK21zZ2lkICItLWNvbnRlbnRzIHRha2VzIGV4YWN0bHkgb25lIGFyZ3VtZW50IgorbXNnc3RyICItLWNvbnRlbnRzIHRhciBlbmRhc3QgZXR0IGFyZ3VtZW50IgorCisjOiBkcGtnLWRlYi9tYWluLmM6NTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuIGAlcycgcGFja2FnZSBhcmNoaXZlIGJhY2tlbmQgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiRGViaWFuIFwiJXNcIiBwYWtldGFya2l2ZXJpbmdzcHJvZ3JhbSB2ZXJzaW9uICVzLlxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6NzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLWJ8LS1idWlsZCA8ZGlyZWN0b3J5PiBbPGRlYj5dICAgQnVpbGQgYW4gYXJjaGl2ZS5cbiIKKyIgIC1jfC0tY29udGVudHMgPGRlYj4gICAgICAgICAgICAgIExpc3QgY29udGVudHMuXG4iCisiICAtSXwtLWluZm8gPGRlYj4gWzxjZmlsZT4gLi4uXSAgICBTaG93IGluZm8gdG8gc3Rkb3V0LlxuIgorIiAgLVd8LS1zaG93IDxkZWI+ICAgICAgICAgICAgICAgICAgU2hvdyBpbmZvcm1hdGlvbiBvbiBwYWNrYWdlKHMpXG4iCisiICAtZnwtLWZpZWxkIDxkZWI+IFs8Y2ZpZWxkPiAuLi5dICBTaG93IGZpZWxkKHMpIHRvIHN0ZG91dC5cbiIKKyIgIC1lfC0tY29udHJvbCA8ZGViPiBbPGRpcmVjdG9yeT5dIEV4dHJhY3QgY29udHJvbCBpbmZvLlxuIgorIiAgLXh8LS1leHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+ICAgRXh0cmFjdCBmaWxlcy5cbiIKKyIgIC1YfC0tdmV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gIEV4dHJhY3QgJiBsaXN0IGZpbGVzLlxuIgorIiAgLVJ8LS1yYXctZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRXh0cmFjdCBjb250cm9sIGluZm8gYW5kIGZpbGVzLlxuIgorIiAgLS1mc3lzLXRhcmZpbGUgPGRlYj4gICAgICAgICAgICAgT3V0cHV0IGZpbGVzeXN0ZW0gdGFyZmlsZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIktvbW1hbmRvbjpcbiIKKyIgIC1ifC0tYnVpbGQgPGthdGFsb2c+IFs8ZGViPl0gICAgIEJ5Z2cgZXR0IGFya2l2LlxuIgorIiAgLWN8LS1jb250ZW50cyA8ZGViPiAgICAgICAgICAgICAgVmlzYSBpbm5laMOlbGwuXG4iCisiICAtSXwtLWluZm8gPGRlYj4gWzxrZmlsPi4uLl0gICAgICBWaXNhIGluZm9ybWF0aW9uIHDDpSBzdGFuZGFyZCB1dC5cbiIKKyIgIC1XfC0tc2hvdyA8ZGViPiAgICAgICAgICAgICAgICAgIFZpc2EgaW5mb3JtYXRpb24gb20gcGFrZXQuXG4iCisiICAtZnwtLWZpZWxkIDxkZWI+IFs8a2bDpGx0Pi4uLl0gICAgVmlzYSBmw6RsdCBww6Ugc3RhbmRhcmQgdXQuXG4iCisiICAtZXwtLWNvbnRyb2wgPGRlYj4gWzxrYXRhbG9nPl0gICBFeHRyYWhlcmEga29udHJvbGxpbmZvcm1hdGlvbi5cbiIKKyIgIC14fC0tZXh0cmFjdCA8ZGViPiA8a2F0YWxvZz4gICAgIEV4dHJhaGVyYSBmaWxlci5cbiIKKyIgIC1YfC0tdmV4dHJhY3QgPGRlYj4gPGthdGFsb2c+ICAgIEV4dHJhaGVyYSBvY2ggbGlzdGEgZmlsZXIuXG4iCisiICAtUnwtLXJhdy1leHRyYWNjdCA8ZGViPiA8a3RhbG9nPiBFeHRyYWhlcmEga29udHJvbGxpbmZvIG9jaCBmaWxlci5cbiIKKyIgIC0tZnN5cy10YXJmaWxlIDxkZWI+ICAgICAgICAgICAgIFNrYXBhIGZpbHN5c3RlbXN0YXJmaWwuXG4iCisiXG4iCisKKyM6IGRwa2ctZGViL21haW4uYzo5MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiPGRlYj4gaXMgdGhlIGZpbGVuYW1lIG9mIGEgRGViaWFuIGZvcm1hdCBhcmNoaXZlLlxuIgorIjxjZmlsZT4gaXMgdGhlIG5hbWUgb2YgYW4gYWRtaW5pc3RyYXRpdmUgZmlsZSBjb21wb25lbnQuXG4iCisiPGNmaWVsZD4gaXMgdGhlIG5hbWUgb2YgYSBmaWVsZCBpbiB0aGUgbWFpbiBgY29udHJvbCcgZmlsZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIjxkZWI+IMOkciBmaWxuYW1uZXQgcMOlIGV0dCBhcmtpdiBpIERlYmlhbmZvcm1hdC5cbiIKKyI8a2ZpbD4gw6RyIG5hbW5ldCBww6UgZW4gYWRtaW5pc3RyYXRpdiBmaWxrb21wb25lbnQuXG4iCisiPGtmw6RsdD4gw6RyIG5hbW5ldCBww6UgZXR0IGbDpGx0IGkgZGVuIGh1dnVkLVwiY29udHJvbFwiLWZpbGVuLlxuIgorIlxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6OTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLXNob3dmb3JtYXQ9PGZvcm1hdD4gICAgICAgICAgICBVc2UgYWx0ZXJuYXRpdmUgZm9ybWF0IGZvciAtLXNob3cuXG4iCisiICAtdiwgLS12ZXJib3NlICAgICAgICAgICAgICAgICAgICBFbmFibGUgdmVyYm9zZSBvdXRwdXQuXG4iCisiICAtRCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbmFibGUgZGVidWdnaW5nIG91dHB1dC5cbiIKKyIgIC0tb2xkLCAtLW5ldyAgICAgICAgICAgICAgICAgICAgIFNlbGVjdCBhcmNoaXZlIGZvcm1hdC5cbiIKKyIgIC0tbm9jaGVjayAgICAgICAgICAgICAgICAgICAgICAgIFN1cHByZXNzIGNvbnRyb2wgZmlsZSBjaGVjayAoYnVpbGQgYmFkXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhY2thZ2VzKS5cbiIKKyIgIC16IyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNldCB0aGUgY29tcHJlc3Npb24gbGV2ZWwgd2hlbiBidWlsZGluZy5cbiIKKyIgIC1aPHR5cGU+ICAgICAgICAgICAgICAgICAgICAgICAgIFNldCB0aGUgY29tcHJlc3Npb24gdHlwZSB1c2VkIHdoZW4gIgorImJ1aWxkaW5nLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBbGxvd2VkIHR5cGVzOiBnemlwLCB4eiwgYnppcDIsIGx6bWEsICIKKyJub25lLlxuIgorIlxuIgorbXNnc3RyICIiCisiRmxhZ2dvcjpcbiIKKyIgIC0tc2hvd2Zvcm1hdD08Zm9ybWF0PiAgICAgICAgICAgIEFudsOkbmQgYWx0ZXJuYXRpdnQgZm9ybWF0IGbDtnIgLS1zaG93LlxuIgorIiAgLXYsIC0tdmVyYm9zZSAgICAgICAgICAgICAgICAgICAgQWt0aXZlcmEgaW5mb3JtYXRpdiB1dGRhdGEuXG4iCisiICAtRCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBa3RpdmVyYSBmZWxzw7ZrbmluZ3N1dGRhdGEuXG4iCisiICAtLW9sZCwgLS1uZXcgICAgICAgICAgICAgICAgICAgICBWw6RsaiBhcmtpdmZvcm1hdC5cbiIKKyIgIC0tbm9jaGVjayAgICAgICAgICAgICAgICAgICAgICAgIFN0w6RuZyBhdiBrb250cm9sbGZpbHN0ZXN0IChza2FwYXJcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYXNpZ2EgcGFrZXQpLlxuIgorIiAgLXojICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3TDpGxsZXIgaW4ga29tcHJpbWVyaW5nIHZpZCBieWdnbmluZy5cbiIKKyIgIC1aPHR5cD4gICAgICAgICAgICAgICAgICAgICAgICAgIFbDpGxqZXIga29tcHJpbWVyaW5nc3R5cCBmw7ZyIGJ5Z2duaW5nLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVGlsbMOldG5hIHR5cGVyOiBnemlwLCB4eiwgYnppcDIsIGx6bWEsICIKKyJub25lXG4iCisiXG4iCisKKyM6IGRwa2ctZGViL21haW4uYzoxMjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIlVzZSBgZHBrZycgdG8gaW5zdGFsbCBhbmQgcmVtb3ZlIHBhY2thZ2VzIGZyb20geW91ciBzeXN0ZW0sIG9yXG4iCisiYGRzZWxlY3QnIG9yIGBhcHRpdHVkZScgZm9yIHVzZXItZnJpZW5kbHkgcGFja2FnZSBtYW5hZ2VtZW50LiAgUGFja2FnZXNcbiIKKyJ1bnBhY2tlZCB1c2luZyBgZHBrZy1kZWIgLS1leHRyYWN0JyB3aWxsIGJlIGluY29ycmVjdGx5IGluc3RhbGxlZCAhXG4iCittc2dzdHIgIiIKKyJcbiIKKyJBbnbDpG5kIFwiZHBrZ1wiIGbDtnIgYXR0IGluc3RhbGxlcmEgb2NoIHRhIGJvcnQgcGFrZXQgZnLDpW4gZGl0dCBzeXN0ZW0sICIKKyJlbGxlclxuIgorIlwiZHNlbGVjdFwiIGVsbGVyIFwiYXB0aXR1ZGVcIiBmw7ZyIGFudsOkbmRhcnbDpG5saWcgcGFrZXRoYW50ZXJpbmcuICBQYWtldFxuIgorInNvbSBwYWNrYXMgdXBwIG1lZCBcImRwa2ctZGViIC0tZXh0cmFjdFwiIGJsaXIgaW50ZSBrb3JyZWt0IGluc3RhbGxlcmFkZSFcbiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjEzMgorbXNnaWQgIiIKKyJUeXBlIGRwa2ctZGViIC0taGVscCBmb3IgaGVscCBhYm91dCBtYW5pcHVsYXRpbmcgKi5kZWIgZmlsZXM7XG4iCisiVHlwZSBkcGtnIC0taGVscCBmb3IgaGVscCBhYm91dCBpbnN0YWxsaW5nIGFuZCBkZWluc3RhbGxpbmcgcGFja2FnZXMuIgorbXNnc3RyICIiCisiU2tyaXYgZHBrZy1kZWIgLS1oZWxwIGbDtnIgaGrDpGxwIG9tIGF0dCBoYW50ZXJhICouZGViLWZpbGVyXG4iCisiU2tyaXYgZHBrZyAtLWhlbHAgZsO2ciBoasOkbHAgb20gYXR0IGluc3RhbGxlcmEgb2NoIGF2aW5zdGFsbGVyYSBwYWtldC4iCisKKyM6IGRwa2ctZGViL21haW4uYzoxNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBpbnRlZ2VyIGZvciAtJWM6ICclLjI1MHMnIgorbXNnc3RyICJvZ2lsdGlndCBoZWx0YWwgZsO2ciAtLSVjOiBcIiUuMjUwc1wiIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTUxCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgY29tcHJlc3Npb24gbGV2ZWwgZm9yIC0lYzogJWxkJyIKK21zZ3N0ciAib2dpbHRpZyBrb21wcmltZXJpbmdzbml2w6UgZsO2ciAtLSVjOiBcIiVsZFwiIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTYxCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gY29tcHJlc3Npb24gdHlwZSBgJXMnISIKK21zZ3N0ciAib2vDpG5kIGtvbXByaW1lcmluZ3N0eXAgXCIlc1wiLiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6NTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIGRpZ2l0IChjb2RlICVkKSBpbiAlcyIKK21zZ3N0ciAiZmlsZW4gXCIlLjI1MHNcIiDDpHIgdHJhc2lnIC0gZmVsYWt0aWcgc2lmZnJhIChrb2QgJWQpIGkgJXMiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjYwCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtICUuMjUwcyBtaXNzaW5nIgorbXNnc3RyICJmaWxlbiBcIiUuMjUwc1wiIMOkciB0cmFzaWcgLSAlLjI1MHMgc2FrbmFzIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzo2MworIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBtaXNzaW5nIG5ld2xpbmUgYWZ0ZXIgJS4yNTBzIgorbXNnc3RyICJmaWxlbiBcIiUuMjUwc1wiIMOkciB0cmFzaWcgLSBueXJhZHN0ZWNrZW4gc2FrbmFzIGVmdGVyICUuMjUwcyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6ODkgZHBrZy1zcGxpdC9tYWluLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHJlYWRpbmcgJS4yNTBzIgorbXNnc3RyICJmZWwgdmlkIGzDpHNuaW5nIGF2ICUuMjUwcyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTAzCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBtYWdpYyBhdCBlbmQgb2YgZmlyc3QgaGVhZGVyIgorbXNnc3RyICIiCisiZmlsZW4gXCIlLjI1MHNcIiDDpHIgdHJhc2lnIC0gZmVsIG1hZ2lzayBzaWZmcmEgaSBzbHV0ZXQgYXYgZsO2cnN0YSBodXZ1ZGV0IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIHBhZGRpbmcgY2hhcmFjdGVyIChjb2RlICVkKSIKK21zZ3N0ciAiZmlsZW4gXCIlLjI1MHNcIiDDpHIgdHJhc2lnIC0gZmVsYWt0aWd0IHV0ZnlsbG5hZHN0ZWNrZW4gKGtvZCAlZCkiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjExNworIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBudWxscyBpbiBpbmZvIHNlY3Rpb24iCittc2dzdHIgImZpbGVuIFwiJS4yNTBzXCIgw6RyIHRyYXNpZyAtIG51bGx0ZWNrZW4gaSBpbmZvZGVsZW4iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyMgorbXNnaWQgImZvcm1hdCB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAiZm9ybWF0dmVyc2lvbnNudW1tZXIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGZvcm1hdCB2ZXJzaW9uIGAlLjI1MHMnIC0geW91IG5lZWQgYSBuZXdlciBkcGtnLXNwbGl0IgorbXNnc3RyICIiCisiZmlsZW4gXCIlLjI1MHNcIiDDpHIgYXYgdmVyc2lvbiBcIiUuMjUwc1wiIC0gZHUgYmVow7Z2ZXIgZW4gbnlhcmUgZHBrZy1zcGxpdCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTI3Cittc2dpZCAicGFja2FnZSBuYW1lIgorbXNnc3RyICJwYWtldG5hbW4iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyOAorbXNnaWQgInBhY2thZ2UgdmVyc2lvbiBudW1iZXIiCittc2dzdHIgInBha2V0dmVyc2lvbnNudW1tZXIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyOQorbXNnaWQgInBhY2thZ2UgZmlsZSBNRDUgY2hlY2tzdW0iCittc2dzdHIgIk1ENS1rb250cm9sbHN1bW1hIGbDtnIgcGFrZXRmaWwiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEzMgorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgTUQ1IGNoZWNrc3VtIGAlLjI1MHMnIgorbXNnc3RyICJmaWxlbiBcIiUuMjUwc1wiIMOkciB0cmFzaWcgLSBmZWxha3RpZyBNRDUta29udHJvbGxzdW1tYSBcIiUuMjUwc1wiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMzQgZHBrZy1zcGxpdC9pbmZvLmM6MTM1Cittc2dpZCAiYXJjaGl2ZSB0b3RhbCBzaXplIgorbXNnc3RyICJ0b3RhbHN0b3JsZWsgZsO2ciBhcmtpdiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTM2IGRwa2ctc3BsaXQvaW5mby5jOjEzNworbXNnaWQgImFyY2hpdmUgcGFydCBvZmZzZXQiCittc2dzdHIgIm9mZnNldCBmw7ZyIGFya2l2ZGVsIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMzkKK21zZ2lkICJhcmNoaXZlIHBhcnQgbnVtYmVycyIKK21zZ3N0ciAiZGVsbnVtbWVyIGbDtnIgYXJraXYiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE0MgorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBubyBzbGFzaCBiZXR3ZWVuIGFyY2hpdmUgcGFydCBudW1iZXJzIgorbXNnc3RyICJmaWxlbiBcIiUuMjUwc1wiIMOkciB0cmFzaWcgLSBpbmdldCBzbmVkc3RyZWNrIG1lbGxhbiBhcmtpdmRlbG51bW1lciIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTQ1Cittc2dpZCAibnVtYmVyIG9mIGFyY2hpdmUgcGFydHMiCittc2dzdHIgImFudGFsIGFya2l2ZGVsYXIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE0NworIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgbnVtYmVyIG9mIGFyY2hpdmUgcGFydHMiCittc2dzdHIgImZpbGVuIFwiJS4yNTBzXCIgw6RyIHRyYXNpZyAtIGZlbGFrdGlndCBhbnRhbCBhcmtpdmRlbGFyIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDkKK21zZ2lkICJhcmNoaXZlIHBhcnRzIG51bWJlciIKK21zZ3N0ciAiZGVsbnVtbWVyIGbDtnIgYXJraXYiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE1MQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgYXJjaGl2ZSBwYXJ0IG51bWJlciIKK21zZ3N0ciAiZmlsZW4gXCIlLjI1MHNcIiDDpHIgdHJhc2lnIC0gZmVsYWt0aWd0IGFya2l2ZGVsbnVtbWVyIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNTcKK21zZ2lkICJwYWNrYWdlIGFyY2hpdGVjdHVyZSIKK21zZ3N0ciAicGFrZXRhcmtpdGVrdHVyIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIG1hZ2ljIGF0IGVuZCBvZiBzZWNvbmQgaGVhZGVyIgorbXNnc3RyICIiCisiZmlsZW4gXCIlLjI1MHNcIiDDpHIgdHJhc2lnIC0gZmVsYWt0aWcgbWFnaXNrIHNpZmZyYSBpIHNsdXRldCBww6UgYW5kcmEgaHV2dWRldCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTY4CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIHNlY29uZCBtZW1iZXIgaXMgbm90IGRhdGEgbWVtYmVyIgorbXNnc3RyICJmaWxlbiBcIiUuMjUwc1wiIMOkciB0cmFzaWcgLSBhbmRyYSBtZWRsZW1tZW4gw6RyIGludGUgZGF0YWRlbGVuIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gd3JvbmcgbnVtYmVyIG9mIHBhcnRzIGZvciBxdW90ZWQgc2l6ZXMiCittc2dzdHIgImZpbGVuIFwiJS4yNTBzXCIgw6RyIHRyYXNpZyAtIGZlbCBhbnRhbCBkZWxhciBmw7ZyIGFuZ2l2bmEgc3Rvcmxla2FyIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gc2l6ZSBpcyB3cm9uZyBmb3IgcXVvdGVkIHBhcnQgbnVtYmVyIgorbXNnc3RyICJmaWxlbiBcIiUuMjUwc1wiIMOkciB0cmFzaWcgLSBzdG9ybGVrZW4gw6RyIGZlbCBmw7ZyIGFuZ2l2ZXQgZGVsbnVtbWVyIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxODQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZzdGF0IHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia3VuZGUgaW50ZSB0YSBzdGF0dXMgcMOlIGRlbGZpbGVuIFwiJS4yNTBzXCIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE4OQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSB0b28gc2hvcnQiCittc2dzdHIgImZpbGVuIFwiJS4yNTBzXCIgw6RyIHRyYXNpZyAtIGbDtnIga29ydCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjAyIGRwa2ctc3BsaXQvaW5mby5jOjI0OQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgb3BlbiBhcmNoaXZlIHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia2FuIGludGUgw7ZwcG5hIGFya2l2ZGVsZW4gaSBmaWwgXCIlLjI1MHNcIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjA0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgbm90IGFuIGFyY2hpdmUgcGFydCIKK21zZ3N0ciAiZmlsZW4gXCIlLjI1MHNcIiDDpHIgaW50ZSBlbiBhcmtpdmRlbCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjA5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczpcbiIKKyIgICAgUGFydCBmb3JtYXQgdmVyc2lvbjogICAgICAgICAgICAlc1xuIgorIiAgICBQYXJ0IG9mIHBhY2thZ2U6ICAgICAgICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gdmVyc2lvbjogICAgICAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiBhcmNoaXRlY3R1cmU6ICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIE1ENSBjaGVja3N1bTogICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gbGVuZ3RoOiAgICAgICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgICAgICAuLi4gc3BsaXQgZXZlcnk6ICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgIFBhcnQgbnVtYmVyOiAgICAgICAgICAgICAgICAgICAgJWQvJWRcbiIKKyIgICAgUGFydCBsZW5ndGg6ICAgICAgICAgICAgICAgICAgICAlamQgYnl0ZXNcbiIKKyIgICAgUGFydCBvZmZzZXQ6ICAgICAgICAgICAgICAgICAgICAlamQgYnl0ZXNcbiIKKyIgICAgUGFydCBmaWxlIHNpemUgKHVzZWQgcG9ydGlvbik6ICAlamQgYnl0ZXNcbiIKKyJcbiIKK21zZ3N0ciAiIgorIiVzOlxuIgorIiAgICBGb3JtYXR2ZXJzaW9uIGbDtnIgZGVsOiAgICAgICAgICAlc1xuIgorIiAgICBEZWwgYXYgcGFrZXQ6ICAgICAgICAgICAgICAgICAgICVzXG4iCisiICAgICAgIC4uLiB2ZXJzaW9uOiAgICAgICAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLmFybG90ZWx0aXI6ICAgICAgICAgICAgICAlc1xuIgorIiAgICAgICAuLi4gTUQ1LWtvbnRyb2xsc3VtbWE6ICAgICAgICVzXG4iCisiICAgICAgIC4uLiBsw6RuZ2Q6ICAgICAgICAgICAgICAgICAgICVqZCBieXRlXG4iCisiICAgICAgIC4uLiBkZWxhIHZpZDogICAgICAgICAgICAgICAgJWpkIGJ5dGVcbiIKKyIgICAgRGVsbnVtbWVyOiAgICAgICAgICAgICAgICAgICAgICAlZC8lZFxuIgorIiAgICBEZWxsw6RuZ2Q6ICAgICAgICAgICAgICAgICAgICAgICAlamQgYnl0ZVxuIgorIiAgICBEZWxvZmZzZXQ6ICAgICAgICAgICAgICAgICAgICAgICVqZCBieXRlXG4iCisiICAgIERlbGZpbHN0b3JsZWsgKGFudsOkbmQgZGVsKTogICAgICVqZCBieXRlXG4iCisiXG4iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjIyNQorbXNnY3R4dCAiYXJjaGl0ZWN0dXJlIgorbXNnaWQgIjx1bmtub3duPiIKK21zZ3N0ciAiPG9rw6RuZD4iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjI0NCBkcGtnLXNwbGl0L2pvaW4uYzoxMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyByZXF1aXJlcyBvbmUgb3IgbW9yZSBwYXJ0IGZpbGUgYXJndW1lbnRzIgorbXNnc3RyICItLSVzIGtyw6R2ZXIgZW4gZWxsZXIgZmxlcmEgZGVsZmlsc2FyZ3VtZW50IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJXMnIGlzIG5vdCBhbiBhcmNoaXZlIHBhcnRcbiIKK21zZ3N0ciAiZmlsZW4gXCIlc1wiIMOkciBpbnRlIGVuIGRlbCBhdiBldHQgYXJraXZcbiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHV0dGluZyBwYWNrYWdlICVzIHRvZ2V0aGVyIGZyb20gJWQgcGFydDogIgorbXNnaWRfcGx1cmFsICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0czogIgorbXNnc3RyWzBdICJTbMOlciBpaG9wIHBha2V0ZXQgJXMgZnLDpW4gJWQgZGVsOiIKK21zZ3N0clsxXSAiU2zDpXIgaWhvcCBwYWtldGV0ICVzIGZyw6VuICVkIGRlbGFyOiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gb3V0cHV0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgImt1bmRlIGludGUgw7ZwcG5hIHV0ZGF0YWZpbCBcIiUuMjUwc1wiIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gKHJlKW9wZW4gaW5wdXQgcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrdW5kZSBpbnRlICjDpXRlcinDtnBwbmEgaW5kYXRhZGVsZmlsIFwiJS4yNTBzXCIiCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjU4Cittc2dpZCAic2tpcHBpbmcgc3BsaXQgcGFja2FnZSBoZWFkZXIiCittc2dzdHIgImhvcHBhciBodXZ1ZCBmw7ZyIGRlbGF0IHBha2V0IgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1OQorbXNnaWQgInNwbGl0IHBhY2thZ2UgcGFydCIKK21zZ3N0ciAiZGVsIGF2IGRlbGF0IHBha2V0IgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo2OSBkcGtnLXNwbGl0L3NwbGl0LmM6MjM3CisjLCBjLWZvcm1hdAorbXNnaWQgImRvbmVcbiIKK21zZ3N0ciAia2xhclxuIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo4NQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlcyBgJS4yNTBzJyBhbmQgYCUuMjUwcycgYXJlIG5vdCBwYXJ0cyBvZiB0aGUgc2FtZSBmaWxlIgorbXNnc3RyICJmaWxlcm5hIFwiJS4yNTBzXCIgb2NoIFwiJS4yNTBzXCIgw6RyIGludGUgZGVsYXIgYXYgc2FtbWEgZmlsIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo5MAorIywgYy1mb3JtYXQKK21zZ2lkICJ0aGVyZSBhcmUgc2V2ZXJhbCB2ZXJzaW9ucyBvZiBwYXJ0ICVkIC0gYXQgbGVhc3QgYCUuMjUwcycgYW5kIGAlLjI1MHMnIgorbXNnc3RyICIiCisiZGV0IGZpbm5zIGZsZXJhIHZlcnNpb25lciBhdiBkZWwgJWQgLSDDpXRtaW5zdG9uZSBcIiUuMjUwc1wiIG9jaCBcIiUuMjUwc1wiIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzoxMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFydCAlZCBpcyBtaXNzaW5nIgorbXNnc3RyICJmZWwgJWQgc2FrbmFzIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo0NworIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIHNwbGl0L2pvaW4gdG9vbDsgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiRGViaWFuIFwiJXNcIiB2ZXJrdHlnIGbDtnIgZGVsbmluZy9zYW1tYW5zbGFnbmluZywgdmVyc2lvbiAlcy5cbiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ29weXJpZ2h0IChDKSAxOTk0LTE5OTYgSWFuIEphY2tzb24uXG4iCittc2dzdHIgIkNvcHlyaWdodCDCqSAxOTk0LTE5OTYgSWFuIEphY2tzb24uXG4iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjY3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1zfC0tc3BsaXQgPGZpbGU+IFs8cHJlZml4Pl0gICAgIFNwbGl0IGFuIGFyY2hpdmUuXG4iCisiICAtanwtLWpvaW4gPHBhcnQ+IDxwYXJ0PiAuLi4gICAgICBKb2luIHBhcnRzIHRvZ2V0aGVyLlxuIgorIiAgLUl8LS1pbmZvIDxwYXJ0PiAuLi4gICAgICAgICAgICAgRGlzcGxheSBpbmZvIGFib3V0IGEgcGFydC5cbiIKKyIgIC1hfC0tYXV0byAtbyA8Y29tcGxldGU+IDxwYXJ0PiAgIEF1dG8tYWNjdW11bGF0ZSBwYXJ0cy5cbiIKKyIgIC1sfC0tbGlzdHEgICAgICAgICAgICAgICAgICAgICAgIExpc3QgdW5tYXRjaGVkIHBpZWNlcy5cbiIKKyIgIC1kfC0tZGlzY2FyZCBbPGZpbGVuYW1lPiAuLi5dICAgIERpc2NhcmQgdW5tYXRjaGVkIHBpZWNlcy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIktvbW1hbmRvbjpcbiIKKyIgIC1zfC0tc3BsaXQgPGZpbD4gWzxwcmVmaXg+XSAgICAgIERlbGEgZXR0IGFya2l2LlxuIgorIiAgLWp8LS1qb2luIDxkZWw+IDxkZWw+IC4uLiAgICAgICAgU2zDpSBpaG9wIGRlbGFyLlxuIgorIiAgLUl8LS1pbmZvIDxkZWw+IC4uLiAgICAgICAgICAgICAgVmlzYSBpbmZvcm1hdGlvbiBvbSBlbiBkZWwuXG4iCisiICAtYXwtLWF1dG8gLW8gPGtvbXBsZXR0PiA8ZGVsPiAgICBTYW1sYSBkZWxhciBhdXRvbWF0aXNrdC5cbiIKKyIgIC1sfC0tbGlzdHEgICAgICAgICAgICAgICAgICAgICAgIExpc3RhIG9tYXRjaGFkZSBkZWxhci5cbiIKKyIgIC1kfC0tZGlzY2FyZCBbPGZpbG5hbW4+IC4uLl0gICAgIEthc3RhIG9tYXRjaGFkZSBkZWxhci5cbiIKKyJcbiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWRlcG90ZGlyIDxkaXJlY3Rvcnk+ICAgICAgICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy8lcy5cbiIKKyIgIC1TfC0tcGFydHNpemUgPHNpemU+ICAgICAgICAgICAgIEluIEtpQiwgZm9yIC1zIChkZWZhdWx0IGlzIDQ1MCkuXG4iCisiICAtb3wtLW91dHB1dCA8ZmlsZT4gICAgICAgICAgICAgICBGaWxlbmFtZSwgZm9yIC1qIChkZWZhdWx0IGlzXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYWNrYWdlPl88dmVyc2lvbj5fPGFyY2g+LmRlYikuXG4iCisiICAtUXwtLW5wcXVpZXQgICAgICAgICAgICAgICAgICAgICBCZSBxdWlldCB3aGVuIC1hIGlzIG5vdCBhIHBhcnQuXG4iCisiICAtLW1zZG9zICAgICAgICAgICAgICAgICAgICAgICAgICBHZW5lcmF0ZSA4LjMgZmlsZW5hbWVzLlxuIgorIlxuIgorbXNnc3RyICIiCisiRmxhZ2dvcjpcbiIKKyIgIC0tZGVwb3RkaXIgPGthdGFsb2c+ICAgICAgICAgICAgIEFudsOkbmQgPGthdGFsb2c+IGlzdMOkbGxldCBmw7ZyICVzLyVzLlxuIgorIiAgLVN8LS1wYXJ0c2l6ZSA8c3Rvcmxlaz4gICAgICAgICAgSSBraWJ5dGUsIGbDtnIgLXMgKGbDtnJ2YWwgw6RyIDQ1MCkuXG4iCisiICAtb3wtLW91dHB1dCA8ZmlsPiAgICAgICAgICAgICAgICBGaWxuYW1uLCBmw7ZyIC1qIChmw7ZydmFsIMOkclxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGFrZXQ+Xzx2ZXJzaW9uPl88YXJrPi5kZWIpXG4iCisiICAtUXwtLW5wcXVpZXQgICAgICAgICAgICAgICAgICAgICBWYXIgdHlzdCBuw6RyIC1hIGludGUgw6RyIGVuIGRlbC5cbiIKKyIgIC0tbXNkb3MgICAgICAgICAgICAgICAgICAgICAgICAgIFNrYXBhIDguMy1maWxuYW1uLlxuIgorIlxuIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo5MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiRXhpdCBzdGF0dXM6XG4iCisiICAwID0gb2tcbiIKKyIgIDEgPSB3aXRoIC0tYXV0bywgZmlsZSBpcyBub3QgYSBwYXJ0XG4iCisiICAyID0gdHJvdWJsZVxuIgorbXNnc3RyICIiCisiRmVsc3RhdHVzOlxuIgorIiAgMCA9IE9LXG4iCisiICAxID0gbWVkIC0tYXV0bywgZmlsIMOkciBpbnRlIGVuIGRlbFxuIgorIiAgMiA9IHByb2JsZW1cbiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6MTAzCittc2dpZCAiVHlwZSBkcGtnLXNwbGl0IC0taGVscCBmb3IgaGVscC4iCittc2dzdHIgIlNrcml2IGRwa2ctc3BsaXQgLS1oZWxwIGbDtnIgaGrDpGxwLiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6MTE1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGZpbGUgaW4gJS4yNTBzIgorbXNnc3RyICJvdsOkbnRhdCBmaWxzbHV0IGkgJS4yNTBzIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMjYKK21zZ2lkICJwYXJ0IHNpemUgaXMgZmFyIHRvbyBsYXJnZSBvciBpcyBub3QgcG9zaXRpdmUiCittc2dzdHIgImRlbHN0b3JsZWsgw6RyIGbDtnIgc3RvciBlbGxlciBlaiBwb3NpdGl2IgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMzAKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFydCBzaXplIG11c3QgYmUgYXQgbGVhc3QgJWQgS2lCICh0byBhbGxvdyBmb3IgaGVhZGVyKSIKK21zZ3N0ciAiZGVsc3Rvcmxla2VuIG3DpXN0ZSB2YXJhIG1pbnN0ICVkIEtpQiAoZsO2ciBhdHQgdGlsbMOldGEgaHV2dWQpIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgZGVwb3QgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICJrdW5kZSBpbnRlIGzDpHNhIGRlcMOla2F0YWxvZyBcIiUuMjUwc1wiIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTM0Cittc2dpZCAiLS1hdXRvIHJlcXVpcmVzIHRoZSB1c2Ugb2YgdGhlIC0tb3V0cHV0IG9wdGlvbiIKK21zZ3N0ciAiLS1hdXRvIGtyw6R2ZXIgYXR0IC0tb3V0cHV0IGFudsOkbmRzIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTM2Cittc2dpZCAiLS1hdXRvIHJlcXVpcmVzIGV4YWN0bHkgb25lIHBhcnQgZmlsZSBhcmd1bWVudCIKK21zZ3N0ciAiLS1hdXRvIHRhciBleGFrdCBldHQgZmlsYXJndW1lbnQiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxNDAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJrdW5kZSBpbnRlIGzDpHNhIGRlbGZpbCBcIiUuMjUwc1wiIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTQzCisjLCBjLWZvcm1hdAorbXNnaWQgIkZpbGUgYCUuMjUwcycgaXMgbm90IHBhcnQgb2YgYSBtdWx0aXBhcnQgYXJjaGl2ZS5cbiIKK21zZ3N0ciAiRmlsZW4gXCIlLjI1MHNcIiDDpHIgaW50ZSBkZWwgYXYgZXR0IGZsZXJkZWxhdCBhcmtpdi5cbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE3OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVvcGVuIHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia3VuZGUgaW50ZSDDtnBwbmEgb20gZGVsZmlsZW4gXCIlLjI1MHNcIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE4MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBuZXcgZGVwb3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia3VuZGUgaW50ZSDDtnBwbmEgbnkgZGVww6VmaWwgXCIlLjI1MHNcIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE4NAorbXNnaWQgImV4dHJhY3Rpbmcgc3BsaXQgcGFydCIKK21zZ3N0ciAiZXh0cmFoZXJhciBkZWxhZCBkZWwiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbmFtZSBuZXcgZGVwb3QgZmlsZSBgJS4yNTBzJyB0byBgJS4yNTBzJyIKK21zZ3N0ciAia3VuZGUgaW50ZSBuYW1uw6RuZHJhIG55IGRlcMOlZmlsIFwiJS4yNTBzXCIgdGlsbCBcIiUuMjUwc1wiIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTk2CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhcnQgJWQgb2YgcGFja2FnZSAlcyBmaWxlZCAoc3RpbGwgd2FudCAiCittc2dzdHIgIkRlbCAlZCBhdiBwYWtldCAlcyBzcGFyYWQgKGJlaMO2dmVyIGZvcnRmYXJhbmRlICIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjIwMAorbXNnaWQgIiBhbmQgIgorbXNnc3RyICIgb2NoICIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjIxNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGVsZXRlIHVzZWQtdXAgZGVwb3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia3VuZGUgaW50ZSB0YSBib3J0IGFudsOkbmQgZGVww6VmaWwgXCIlLjI1MHNcIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjIzNQorbXNnaWQgIkp1bmsgZmlsZXMgbGVmdCBhcm91bmQgaW4gdGhlIGRlcG90IGRpcmVjdG9yeTpcbiIKK21zZ3N0ciAiU2tyw6RwZmlsZXIga3ZhciBpIGRlcMOla2F0YWxvZ2VuOlxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjQwIGRwa2ctc3BsaXQvcXVldWUuYzoyNjkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgYCUuMjUwcyciCittc2dzdHIgImt1bmRlIGludGUgdGEgc3RhdHVzIHDDpSBcIiUuMjUwc1wiIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjQzCisjLCBjLWZvcm1hdAorbXNnaWQgIiAlcyAoJWpkIGJ5dGVzKVxuIgorbXNnc3RyICIgJXMgKCVqZCBieXRlKVxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAlcyAobm90IGEgcGxhaW4gZmlsZSlcbiIKK21zZ3N0ciAiICVzIChpbnRlIGVuIHZhbmxpZyBmaWwpXG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNTAKK21zZ2lkICJQYWNrYWdlcyBub3QgeWV0IHJlYXNzZW1ibGVkOlxuIgorbXNnc3RyICJQYWtldCDDpG5udSBlaiDDpXRlcnNrYXBhZGU6XG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIFBhY2thZ2UgJXM6IHBhcnQocykgIgorbXNnc3RyICIgUGFrZXRldCAlczogZGVsKGFyKSIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI3MQorIywgYy1mb3JtYXQKK21zZ2lkICJwYXJ0IGZpbGUgYCUuMjUwcycgaXMgbm90IGEgcGxhaW4gZmlsZSIKK21zZ3N0ciAiZGVsZmlsIFwiJS4yNTBzXCIgw6RyIGludGUgZW4gdmFubGlnIGZpbCIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI3OAorIywgYy1mb3JtYXQKK21zZ2lkICIodG90YWwgJWpkIGJ5dGVzKVxuIgorbXNnc3RyICIodG90YWx0ICVqZCBieXRlKVxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MzA0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkaXNjYXJkIGAlLjI1MHMnIgorbXNnc3RyICJrdW5kZSBpbnRlIGthc3RhIGJvcnQgXCIlLjI1MHNcIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjMwNQorIywgYy1mb3JtYXQKK21zZ2lkICJEZWxldGVkICVzLlxuIgorbXNnc3RyICJUb2cgYm9ydCAlcy5cbiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjcwIGRwa2ctc3BsaXQvc3BsaXQuYzo3NiBkcGtnLXNwbGl0L3NwbGl0LmM6ODEKK21zZ2lkICJwYWNrYWdlIGZpZWxkIHZhbHVlIGV4dHJhY3Rpb24iCittc2dzdHIgImV4dHJhaGVyaW5nIGF2IHBha2V0ZsOkbHR2w6RyZGUiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxMzEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gc291cmNlIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImt1bmRlIGludGUgw7ZwcG5hIGvDpGxsZmlsIFwiJS4yNTBzXCIiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxMzMKK21zZ2lkICJ1bmFibGUgdG8gZnN0YXQgc291cmNlIGZpbGUiCittc2dzdHIgImt1bmRlIGludGUgdGEgc3RhdHVzIHDDpSBrw6RsbGZpbCIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjEzNQorIywgYy1mb3JtYXQKK21zZ2lkICJzb3VyY2UgZmlsZSBgJS4yNTBzJyBub3QgYSBwbGFpbiBmaWxlIgorbXNnc3RyICJrw6RsbGZpbCBcIiUuMjUwc1wiIGludGUgZW4gdmFubGlnIGZpbCIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjE1MworIywgYy1mb3JtYXQKK21zZ2lkICJTcGxpdHRpbmcgcGFja2FnZSAlcyBpbnRvICVkIHBhcnQ6ICIKK21zZ2lkX3BsdXJhbCAiU3BsaXR0aW5nIHBhY2thZ2UgJXMgaW50byAlZCBwYXJ0czogIgorbXNnc3RyWzBdICJEZWxhciBwYWtldGV0ICVzIGkgJWQgZGVsOiAiCittc2dzdHJbMV0gIkRlbGFyIHBha2V0ZXQgJXMgaSAlZCBkZWxhcjogIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTkzCittc2dpZCAiIgorIkhlYWRlciBpcyB0b28gbG9uZywgbWFraW5nIHBhcnQgdG9vIGxvbmcuIFlvdXIgcGFja2FnZSBuYW1lIG9yIHZlcnNpb25cbiIKKyJudW1iZXJzIG11c3QgYmUgZXh0cmFvcmRpbmFyaWx5IGxvbmcsIG9yIHNvbWV0aGluZy4gR2l2aW5nIHVwLlxuIgorbXNnc3RyICIiCisiSHV2dWRldCDDpHIgZsO2ciBsw6VuZ3QsIHZpbGtldCBnw7ZyIGRlbGVuIGbDtnIgbMOlbmcuIFBha2V0bmFtbmV0IGVsbGVyXG4iCisidmVyc2lvbnNudW1yZXQgbcOlc3RlIHZhcmEgdsOkbGRpZ3QgbMOlbmd0LCBlbGxlciBuw6Vnb3Qgc8OlZGFudC4gR2VyIHVwcC5cbiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjI0OQorbXNnaWQgIi0tc3BsaXQgbmVlZHMgYSBzb3VyY2UgZmlsZW5hbWUgYXJndW1lbnQiCittc2dzdHIgIi0tc3BsaXQga3LDpHZlciBldHQga8OkbGxmaWxuYW1uc2FyZ3VtZW50IgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MjUyCittc2dpZCAiLS1zcGxpdCB0YWtlcyBhdCBtb3N0IGEgc291cmNlIGZpbGVuYW1lIGFuZCBkZXN0aW5hdGlvbiBwcmVmaXgiCittc2dzdHIgIi0tc3BsaXQgdGFyIHNvbSBtZXN0IGV0dCBrw6RsbGZpbG5hbW4gb2NoIGV0dCBkZXN0aW5hdGlvbnNwcmVmaXgiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo4NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMC0yMDAyIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDA5LTIwMTAgUmFwaGFlbCBIZXJ0em9nLlxuIgorbXNnc3RyICIiCisiQ29weXJpZ2h0IMKpIDE5OTUgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IMKpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLlxuIgorIkNvcHlyaWdodCDCqSAyMDA5LTIwMTAgUmFwaGFlbCBIZXJ0em9nLlxuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTAxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC0taW5zdGFsbCA8bGluaz4gPG5hbWU+IDxwYXRoPiA8cHJpb3JpdHk+XG4iCisiICAgIFstLXNsYXZlIDxsaW5rPiA8bmFtZT4gPHBhdGg+XSAuLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBhZGQgYSBncm91cCBvZiBhbHRlcm5hdGl2ZXMgdG8gdGhlIHN5c3RlbS5cbiIKKyIgIC0tcmVtb3ZlIDxuYW1lPiA8cGF0aD4gICByZW1vdmUgPHBhdGg+IGZyb20gdGhlIDxuYW1lPiBncm91cCBhbHRlcm5hdGl2ZS5cbiIKKyIgIC0tcmVtb3ZlLWFsbCA8bmFtZT4gICAgICByZW1vdmUgPG5hbWU+IGdyb3VwIGZyb20gdGhlIGFsdGVybmF0aXZlcyAiCisic3lzdGVtLlxuIgorIiAgLS1hdXRvIDxuYW1lPiAgICAgICAgICAgIHN3aXRjaCB0aGUgbWFzdGVyIGxpbmsgPG5hbWU+IHRvIGF1dG9tYXRpYyBtb2RlLlxuIgorIiAgLS1kaXNwbGF5IDxuYW1lPiAgICAgICAgIGRpc3BsYXkgaW5mb3JtYXRpb24gYWJvdXQgdGhlIDxuYW1lPiBncm91cC5cbiIKKyIgIC0tcXVlcnkgPG5hbWU+ICAgICAgICAgICBtYWNoaW5lIHBhcnNlYWJsZSB2ZXJzaW9uIG9mIC0tZGlzcGxheSA8bmFtZT4uXG4iCisiICAtLWxpc3QgPG5hbWU+ICAgICAgICAgICAgZGlzcGxheSBhbGwgdGFyZ2V0cyBvZiB0aGUgPG5hbWU+IGdyb3VwLlxuIgorIiAgLS1nZXQtc2VsZWN0aW9ucyAgICAgICAgIGxpc3QgbWFzdGVyIGFsdGVybmF0aXZlIG5hbWVzIGFuZCB0aGVpciBzdGF0dXMuXG4iCisiICAtLXNldC1zZWxlY3Rpb25zICAgICAgICAgcmVhZCBhbHRlcm5hdGl2ZSBzdGF0dXMgZnJvbSBzdGFuZGFyZCBpbnB1dC5cbiIKKyIgIC0tY29uZmlnIDxuYW1lPiAgICAgICAgICBzaG93IGFsdGVybmF0aXZlcyBmb3IgdGhlIDxuYW1lPiBncm91cCBhbmQgYXNrICIKKyJ0aGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2VyIHRvIHNlbGVjdCB3aGljaCBvbmUgdG8gdXNlLlxuIgorIiAgLS1zZXQgPG5hbWU+IDxwYXRoPiAgICAgIHNldCA8cGF0aD4gYXMgYWx0ZXJuYXRpdmUgZm9yIDxuYW1lPi5cbiIKKyIgIC0tYWxsICAgICAgICAgICAgICAgICAgICBjYWxsIC0tY29uZmlnIG9uIGFsbCBhbHRlcm5hdGl2ZXMuXG4iCisiXG4iCittc2dzdHIgIiIKKyJLb21tYW5kb246XG4iCisiICAtLWluc3RhbGwgPGzDpG5rPiA8bmFtbj4gPHPDtmt2w6RnPiA8cHJpb3JpdGV0PlxuIgorIiAgICBbLS1zbGF2ZSA8bMOkbms+IDxuYW1uPiA8c8O2a3bDpGc+XSAuLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBsw6RnZyB0aWxsIGVuIGFsdGVybmF0aXZncnVwcCB0aWxsIHN5c3RlbWV0LlxuIgorIiAgLS1yZW1vdmUgPG5hbW4+IDxzw7ZrdsOkZz4gdGEgYm9ydCA8c8O2a3bDpGc+IGZyw6VuIGFsdGVybmF0aXZncnVwcGVuIDxuYW1uPi5cbiIKKyIgIC0tcmVtb3ZlLWFsbCA8bmFtbj4gICAgICB0YSBib3J0IGdydXBwZW4gPG5hbW4+IGZyw6VuIGFsdGVybmF0aXZzeXN0ZW1ldC5cbiIKKyIgIC0tYXV0byA8bmFtbj4gICAgICAgICAgICB2w6R4bGEgaHV2dWRsw6Rua2VuIDxuYW1uPiB0aWxsIGF1dG9tYXRpc2t0IGzDpGdlLlxuIgorIiAgLS1kaXNwbGF5IDxuYW1uPiAgICAgICAgIHZpc2EgaW5mb3JtYXRpb24gb20gZ3J1cHBlbiA8bmFtbj4uXG4iCisiICAtLWxpc3QgPG5hbW4+ICAgICAgICAgICAgdmlzYSBhbGxhIG3DpWwgZsO2ciBncnVwcGVuIDxuYW1uPi5cbiIKKyIgIC0tZ2V0LXNlbGVjdGlvbnMgICAgICAgICB2aXNhciBodXZ1ZGFsdGVybmF0aXZuYW1uIG9jaCBkZXJhcyBzdGF0dXMuXG4iCisiICAtLXNldC1zZWxlY3Rpb25zICAgICAgICAgbMOkc2VyIGFsdGVybmF0aXZzdGF0dXMgZnLDpW4gc3RhbmRhcmQgaW4uXG4iCisiICAtLWNvbmZpZyA8bmFtbj4gICAgICAgICAgdmlzYSBhbHRlcm5hdGl2IGbDtnIgZ3J1cHBlbiA8bmFtbj4gb2NoIGJlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgYW52w6RuZGFyZW4gdsOkbGphIHZpbGtlbiBzb20gc2thbGwgYW52w6RuZGFzLlxuIgorIiAgLS1zZXQgPG5hbW4+IDxzw7ZrdsOkZz4gICAgbMOkZ2cgdGlsbCA8c8O2a3bDpGc+IHNvbSBhbHRlcm5hdGl2IGbDtnIgPG5hbW4+LlxuIgorIiAgLS1hbGwgICAgICAgICAgICAgICAgICAgIGFucm9wYSAtLWNvbmZpZyBww6Ugc2FtdGxpZ2EgYWx0ZXJuYXRpdi5cbiIKKyJcbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiPGxpbms+IGlzIHRoZSBzeW1saW5rIHBvaW50aW5nIHRvICVzLzxuYW1lPi5cbiIKKyIgIChlLmcuIC91c3IvYmluL3BhZ2VyKVxuIgorIjxuYW1lPiBpcyB0aGUgbWFzdGVyIG5hbWUgZm9yIHRoaXMgbGluayBncm91cC5cbiIKKyIgIChlLmcuIHBhZ2VyKVxuIgorIjxwYXRoPiBpcyB0aGUgbG9jYXRpb24gb2Ygb25lIG9mIHRoZSBhbHRlcm5hdGl2ZSB0YXJnZXQgZmlsZXMuXG4iCisiICAoZS5nLiAvdXNyL2Jpbi9sZXNzKVxuIgorIjxwcmlvcml0eT4gaXMgYW4gaW50ZWdlcjsgb3B0aW9ucyB3aXRoIGhpZ2hlciBudW1iZXJzIGhhdmUgaGlnaGVyIHByaW9yaXR5ICIKKyJpblxuIgorIiAgYXV0b21hdGljIG1vZGUuXG4iCisiXG4iCittc2dzdHIgIiIKKyI8bMOkbms+IMOkciBsw6Rua2VuIHNvbSBwZWthciB0aWxsICVzLzxuYW1uPi5cbiIKKyIgICh0LmV4LiAvdXNyL2Jpbi9wYWdlcilcbiIKKyI8bmFtbj4gw6RyIGh1dnVkbmFtbmV0IGbDtnIgbMOkbmtncnVwcGVuLlxuIgorIiAgKHQuZXguIHBhZ2VyKVxuIgorIjxzw7ZrdsOkZz4gw6RyIHBsYXRzZW4gZsO2ciBlbiBhdiBkZSBhbHRlcm5hdGl2YSBtw6VsZmlsZXJuYS5cbiIKKyIgICh0LmV4LiAvdXNyL2Jpbi9sZXNzKVxuIgorIjxwcmlvcml0ZXQ+IMOkciBldHQgaGVsdGFsOyBhbHRlcm5hdGl2IG1lZCBow7ZncmUgdsOkcmRlIGhhciBow7ZncmVcbiIKKyIgIHByaW9yaXRldCBpIGF1dG9tYXRpc2t0IGzDpGdlLlxuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTMxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hbHRkaXIgPGRpcmVjdG9yeT4gICAgIGNoYW5nZSB0aGUgYWx0ZXJuYXRpdmVzIGRpcmVjdG9yeS5cbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICBjaGFuZ2UgdGhlIGFkbWluaXN0cmF0aXZlIGRpcmVjdG9yeS5cbiIKKyIgIC0tbG9nIDxmaWxlPiAgICAgICAgICAgICBjaGFuZ2UgdGhlIGxvZyBmaWxlLlxuIgorIiAgLS1mb3JjZSAgICAgICAgICAgICAgICAgIGFsbG93IHJlcGxhY2luZyBmaWxlcyB3aXRoIGFsdGVybmF0aXZlIGxpbmtzLlxuIgorIiAgLS1za2lwLWF1dG8gICAgICAgICAgICAgIHNraXAgcHJvbXB0IGZvciBhbHRlcm5hdGl2ZXMgY29ycmVjdGx5ICIKKyJjb25maWd1cmVkXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gYXV0b21hdGljIG1vZGUgKHJlbGV2YW50IGZvciAtLWNvbmZpZyBvbmx5KVxuIgorIiAgLS12ZXJib3NlICAgICAgICAgICAgICAgIHZlcmJvc2Ugb3BlcmF0aW9uLCBtb3JlIG91dHB1dC5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBxdWlldCBvcGVyYXRpb24sIG1pbmltYWwgb3V0cHV0LlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIgorIkZsYWdnb3I6XG4iCisiICAtLWFsdGRpciA8a2F0YWxvZz4gICAgICAgw6RuZHJhIGFsdGVybmF0aXZlcy1rYXRhbG9nZW4uXG4iCisiICAtLWFkbWluZGlyIDxrYXRhbG9nPiAgICAgw6RuZHJhIGFkbWluaXN0cmF0aXYga2F0YWxvZy5cbiIKKyIgIC0tbG9nIDxmaWw+ICAgICAgICAgICAgICDDpG5kcmEgbG9nZ2ZpbC5cbiIKKyIgIC0tZm9yY2UgICAgICAgICAgICAgICAgICB0aWxsw6V0IGVyc8OkdHRhIGZpbGVyIG1lZCBhbHRlcm5hdGl2IGzDpG5rLlxuIgorIiAgLS1za2lwLWF1dG8gICAgICAgICAgICAgIGhvcHBhIMO2dmVyIGZyw6VnYSBmw7ZyIGtvcnJla3Qga29uZmlndXJlcmFkZSAiCisiYWx0ZXJuYXRpdlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGkgYXV0b21hdGlza3QgbMOkZ2UgKHJlbGV2YW50IGVuZGFzdCBmw7ZyIC0tIgorImNvbmZpZylcbiIKKyIgIC0tdmVyYm9zZSAgICAgICAgICAgICAgICBpbmZvcm1hdGl2IGZ1bmt0aW9uLCBtZXIgdXRkYXRhLlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHR5c3QgZnVua3Rpb24sIG1pbmltYWwgdXRkYXRhLlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHZpc2FyIGRldHRhIGhqw6RscG1lZGRlbGFuZGUuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgdmlzYXIgdmVyc2lvbnNudW1tZXIuXG4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE2MworbXNnaWQgImVycm9yIgorbXNnc3RyICJmZWwiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxOTMKK21zZ2lkICJ3YXJuaW5nIgorbXNnc3RyICJ2YXJuaW5nIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MzU2CisjLCBjLWZvcm1hdAorbXNnaWQgInR3byBjb21tYW5kcyBzcGVjaWZpZWQ6IC0tJXMgYW5kIC0tJXMiCittc2dzdHIgInR2w6Uga29tbWFuZG9uIGFuZ2l2bmE6IC0tJXMgb2NoIC0tJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzozODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGFwcGVuZCB0byAnJXMnIgorbXNnc3RyICJrdW5kZSBpbnRlIGzDpGdnYSB0aWxsIGkgXCIlc1wiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NTU2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgJyVzJyIKK21zZ3N0ciAia3VuZGUgaW50ZSB0YSBib3J0IFwiJXNcIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgZmlsZSB3aGlsZSB0cnlpbmcgdG8gcmVhZCAlcyIKK21zZ3N0ciAib3bDpG50YXQgZmlsc2x1dCBuw6RyICVzIGbDtnJzw7ZrdGUgbMOkc2FzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTExMworIywgYy1mb3JtYXQKK21zZ2lkICJ3aGlsZSByZWFkaW5nICVzOiAlcyIKK21zZ3N0ciAidmlkIGzDpHNuaW5nIGF2ICVzOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMTkKKyMsIGMtZm9ybWF0Cittc2dpZCAibGluZSBub3QgdGVybWluYXRlZCB3aGlsZSB0cnlpbmcgdG8gcmVhZCAlcyIKK21zZ3N0ciAicmFkIGludGUgYXZic2x1dGFkIG7DpHIgJXMgZsO2cnPDtmt0ZSBsw6RzYXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGNvcnJ1cHQ6ICVzIgorbXNnc3RyICIlcyB0cmFzaWc6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE1MAorIywgYy1mb3JtYXQKK21zZ2lkICJuZXdsaW5lcyBwcm9oaWJpdGVkIGluIHVwZGF0ZS1hbHRlcm5hdGl2ZXMgZmlsZXMgKCVzKSIKK21zZ3N0ciAibnlyYWRzdGVja2VuIHRpbGzDpXRzIGludGUgaSB1cGRhdGUtYWx0ZXJuYXRpdmVzLWZpbGUgKCVzKSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNjMKK21zZ2lkICJzbGF2ZSBuYW1lIgorbXNnc3RyICJzbGF2bmFtbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNzEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHNsYXZlIG5hbWUgJXMiCittc2dzdHIgImR1cGxpY2VyYXQgc2xhdm5hbW4gJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTc0Cittc2dpZCAic2xhdmUgbGluayIKK21zZ3N0ciAic2xhdmzDpG5rIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE3OAorIywgYy1mb3JtYXQKK21zZ2lkICJzbGF2ZSBsaW5rIHNhbWUgYXMgbWFpbiBsaW5rICVzIgorbXNnc3RyICJzbGF2bMOkbmtlbiDDpHIgc2FtbWEgc29tIGh1dnVkbMOkbmtlbiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExODUgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHNsYXZlIGxpbmsgJXMiCittc2dzdHIgImR1cGxpY2VyYWQgc2xhdmzDpG5rICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIwNAorbXNnaWQgIm1hc3RlciBmaWxlIgorbXNnc3RyICJodXZ1ZGZpbCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHBhdGggJXMiCittc2dzdHIgImR1cGxpY2VyYWQgc8O2a3bDpGcgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjI2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJhbHRlcm5hdGl2ZSAlcyAocGFydCBvZiBsaW5rIGdyb3VwICVzKSBkb2Vzbid0IGV4aXN0LiBSZW1vdmluZyBmcm9tIGxpc3Qgb2YgIgorImFsdGVybmF0aXZlcy4iCittc2dzdHIgIiIKKyJhbHRlcm5hdGl2ZXQgZsO2ciAlcyAoaW5nw6VyIGkgbMOkbmtncnVwcGVuICVzKSBmaW5ucyBpbnRlLiBUYXIgYm9ydCBmcsOlbiAiCisibGlzdGFuIMO2dmVyIGFsdGVybmF0aXYuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIyOSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI0MAorbXNnaWQgInByaW9yaXR5IgorbXNnc3RyICJwcmlvcml0ZXQiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjMyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjQ5Cittc2dpZCAic2xhdmUgZmlsZSIKK21zZ3N0ciAic2xhdmZpbCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyNDQKKyMsIGMtZm9ybWF0Cittc2dpZCAicHJpb3JpdHkgb2YgJXM6ICVzIgorbXNnc3RyICJwcmlvcml0ZXQgcMOlICVzOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyOTcKK21zZ2lkICJzdGF0dXMiCittc2dzdHIgInN0YXR1cyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyOTkKK21zZ2lkICJpbnZhbGlkIHN0YXR1cyIKK21zZ3N0ciAiZmVsYWt0aWcgc3RhdHVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTMwNAorbXNnaWQgIm1hc3RlciBsaW5rIgorbXNnc3RyICJodXZ1ZGzDpG5rIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTM0OAorIywgYy1mb3JtYXQKK21zZ2lkICJkaXNjYXJkaW5nIG9ic29sZXRlIHNsYXZlIGxpbmsgJXMgKCVzKS4iCittc2dzdHIgImthc3RhciBib3J0IGbDtnLDpWxkcmFkIHNsYXZsw6RuayAlcyAoJXMpLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MDIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NjkKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjM4Cittc2dpZCAiYXV0byBtb2RlIgorbXNnc3RyICJhdXRvbWF0aXNrdCBsw6RnZSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MDIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NzgKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjM5Cittc2dpZCAibWFudWFsIG1vZGUiCittc2dzdHIgIm1hbnVlbGx0IGzDpGdlIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwNQorIywgYy1mb3JtYXQKK21zZ2lkICIgIGxpbmsgY3VycmVudGx5IHBvaW50cyB0byAlcyIKK21zZ3N0ciAiICBsw6Rua2VuIHBla2FyIGbDtnIgbsOkcnZhcmFuZGUgcMOlICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwOAorbXNnaWQgIiAgbGluayBjdXJyZW50bHkgYWJzZW50IgorbXNnc3RyICIgIGzDpG5rZW4gc2FrbmFzIGbDtnIgbsOkcnZhcmFuZGUiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTEyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIC0gcHJpb3JpdHkgJWQiCittc2dzdHIgIiVzIC0gcHJpb3JpdGV0ICVkIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUxNQorIywgYy1mb3JtYXQKK21zZ2lkICIgIHNsYXZlICVzOiAlcyIKK21zZ3N0ciAiICBzbGF2ICVzOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ3VycmVudCAnYmVzdCcgdmVyc2lvbiBpcyAnJXMnLiIKK21zZ3N0ciAiXCJCw6RzdGFcIiB2ZXJzaW9uIMOkciBmw7ZyIG7DpHJ2YXJhbmRlIFwiJXNcIi4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTI0Cittc2dpZCAiTm8gdmVyc2lvbnMgYXZhaWxhYmxlLiIKK21zZ3N0ciAiSW5nYSB2ZXJzaW9uZXIgdGlsbGfDpG5nbGlnYS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTUzCisjLCBjLWZvcm1hdAorbXNnaWQgIlRoZXJlIGlzICVkIGNob2ljZSBmb3IgdGhlIGFsdGVybmF0aXZlICVzIChwcm92aWRpbmcgJXMpLiIKK21zZ2lkX3BsdXJhbCAiVGhlcmUgYXJlICVkIGNob2ljZXMgZm9yIHRoZSBhbHRlcm5hdGl2ZSAlcyAocHJvdmlkaW5nICVzKS4iCittc2dzdHJbMF0gIkRldCBmaW5ucyAlZCB2YWwgZsO2ciBhbHRlcm5hdGl2ZXQgJXMgKHNvbSB0aWxsaGFuZGFow6VsbGVyICVzKS4iCittc2dzdHJbMV0gIkRldCBmaW5ucyAlZCB2YWwgZsO2ciBhbHRlcm5hdGl2ZXQgJXMgKHNvbSB0aWxsaGFuZGFow6VsbGVyICVzKS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYwCittc2dpZCAiU2VsZWN0aW9uIgorbXNnc3RyICJWYWwiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYxCittc2dpZCAiUGF0aCIKK21zZ3N0ciAiU8O2a3bDpGciCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYxCittc2dpZCAiUHJpb3JpdHkiCittc2dzdHIgIlByaW9yaXRldCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NjEKK21zZ2lkICJTdGF0dXMiCittc2dzdHIgIlN0YXR1cyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHJlc3MgZW50ZXIgdG8ga2VlcCB0aGUgY3VycmVudCBjaG9pY2VbKl0sIG9yIHR5cGUgc2VsZWN0aW9uIG51bWJlcjogIgorbXNnc3RyICIiCisiVHJ5Y2sgRW50ZXIgZsO2ciBhdHQgYmVow6VsbGEgc3RhbmRhcmR2w6RyZGV0WypdLCBlbGxlciBhbmdlIG51bW1lciBww6Ugw7Zuc2thdCAiCisidmFsOiAiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNzIxCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vdCByZXBsYWNpbmcgJXMgd2l0aCBhIGxpbmsuIgorbXNnc3RyICJlcnPDpHR0ZXIgaW50ZSAlcyBtZWQgZW4gbMOkbmsuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTc2MgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW4ndCBpbnN0YWxsIHVua25vd24gY2hvaWNlICVzIgorbXNnc3RyICJrYW4gaW50ZSBpbnN0YWxsZXJhIGRldCBva8OkbmRhIHZhbGV0ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTc4MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisic2tpcCBjcmVhdGlvbiBvZiAlcyBiZWNhdXNlIGFzc29jaWF0ZWQgZmlsZSAlcyAob2YgbGluayBncm91cCAlcykgZG9lc24ndCAiCisiZXhpc3QuIgorbXNnc3RyICIiCisiaG9wcGFyIMO2dmVyIGF0dCBza2FwYSAlcyBkw6UgZGVuIGFzc29jaWVyYWRlIGZpbGVuICVzIChmcsOlbiBsw6Rua2dydXBwZW4gJXMpICIKKyJpbnRlIGZpbm5zLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IHJlbW92aW5nICVzIHNpbmNlIGl0J3Mgbm90IGEgc3ltbGluay4iCittc2dzdHIgInRhciBpbnRlIGJvcnQgJXMgZWZ0ZXJzb20gZGV0IGludGUgw6RyIGVuIHN5bWJvbGlzayBsw6RuayIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNDEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2FsbCAlcy4iCittc2dzdHIgIkFucm9wYSAlcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDUxCisjLCBjLWZvcm1hdAorbXNnaWQgIkFsdGVybmF0aXZlICVzIHVuY2hhbmdlZCBiZWNhdXNlIGNob2ljZSAlcyBpcyBub3QgYXZhaWxhYmxlLiIKK21zZ3N0ciAiQWx0ZXJuYXRpdmV0ICVzIG/DpG5kcmF0IGVmdGVyc29tIHZhbGV0ICVzIGludGUgw6RyIHRpbGxnw6RuZ2xpZ3QuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA1NQorIywgYy1mb3JtYXQKK21zZ2lkICJTa2lwIHVua25vd24gYWx0ZXJuYXRpdmUgJXMuIgorbXNnc3RyICJIb3BwYXIgw7Z2ZXIgb2vDpG50IGFsdGVybmF0aXYgXCIlc1wiLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNzcKKyMsIGMtZm9ybWF0Cittc2dpZCAibGluZSB0b28gbG9uZyBvciBub3QgdGVybWluYXRlZCB3aGlsZSB0cnlpbmcgdG8gcmVhZCAlcyIKK21zZ3N0ciAicmFkIGbDtnIgbMOlbmcgZWxsZXIgaW50ZSBhdnNsdXRhZCBuw6RyICVzIGbDtnJzw7ZrdGUgbMOkc2FzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA5MCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjEwMworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2tpcCBpbnZhbGlkIGxpbmU6ICVzIgorbXNnc3RyICJIb3BwYXIgw7Z2ZXIgdHJhc2lnIHJhZDogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTMyCisjLCBjLWZvcm1hdAorbXNnaWQgInJlbmFtaW5nICVzIGxpbmsgZnJvbSAlcyB0byAlcy4iCittc2dzdHIgImJ5dGVyIG5hbW4gcMOlIGzDpG5rZW4gJXMgZnLDpW4gJXMgdGlsbCAlcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTczCisjLCBjLWZvcm1hdAorbXNnaWQgInJlbmFtaW5nICVzIHNsYXZlIGxpbmsgZnJvbSAlcyB0byAlcy4iCittc2dzdHIgImJ5dGVyIG5hbW4gcMOlIHNsYXZsw6Rua2VuICVzIGZyw6VuICVzIHRpbGwgJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE4OQorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBuYW1lICglcykgbXVzdCBub3QgY29udGFpbiAnLycgYW5kIHNwYWNlcy4iCittc2dzdHIgImFsdGVybmF0aXZuYW1uZXQgKCVzKSBmw6VyIGludGUgaW5uZWjDpWxsYSBcIi9cIiBlbGxlciBibGFua3N0ZWcuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE5MworIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBsaW5rIGlzIG5vdCBhYnNvbHV0ZSBhcyBpdCBzaG91bGQgYmU6ICVzIgorbXNnc3RyICJhbHRlcm5hdGl2bMOkbmtlbiDDpHIgaW50ZSBhYnNvbHV0IHNvbSBkZW4gYm9yZGUgdmFyYTogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTk3CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIHBhdGggaXMgbm90IGFic29sdXRlIGFzIGl0IHNob3VsZCBiZTogJXMiCittc2dzdHIgImFsdGVybmF0aXZzw7ZrdsOkZ2VuIMOkciBpbnRlIGFic29sdXQgc29tIGRlbiBib3JkZSB2YXJhOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgbWFzdGVyOiBpdCBpcyBhIHNsYXZlIG9mICVzIgorbXNnc3RyICJhbHRlcm5hdGl2ZXQgJXMga2FuIGludGUgdmFyYSBodXZ1ZGFsdGVybmF0aXY6IGRldCDDpHIgZW4gc2xhdiB0aWxsICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjIzMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI2NworIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBsaW5rICVzIGlzIGFscmVhZHkgbWFuYWdlZCBieSAlcy4iCittc2dzdHIgImFsdGVybmF0aXZsw6Rua2VuICVzIGhhbnRlcmFzIHJlZGFuIGF2ICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgcGF0aCAlcyBkb2Vzbid0IGV4aXN0LiIKK21zZ3N0ciAiYWx0ZXJuYXRpdnPDtmt2w6RnZW4gJXMgZmlubnMgaW50ZS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjU0CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlICVzIGNhbid0IGJlIHNsYXZlIG9mICVzOiBpdCBpcyBhIG1hc3RlciBhbHRlcm5hdGl2ZS4iCittc2dzdHIgIiIKKyJhbHRlcm5hdGl2ZXQgJXMga2FuIGludGUgdmFyYSBlbiBzbGF2IHRpbGwgJXM6IGRldCDDpHIgaHV2dWRhbHRlcm5hdGl2ZXQuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI1OAorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBzbGF2ZSBvZiAlczogaXQgaXMgYSBzbGF2ZSBvZiAlcyIKK21zZ3N0ciAiYWx0ZXJuYXRpdmV0ICVzIGthbiBpbnRlIHZhcmEgZW4gc2xhdiB0aWxsICVzOiBkZXQgw6RyIGVuIHNsYXYgdGlsbCAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgbGluayAlcyBpcyBhbHJlYWR5IG1hbmFnZWQgYnkgJXMgKHNsYXZlIG9mICVzKS4iCittc2dzdHIgImFsdGVybmF0aXZsw6Rua2VuICVzIGhhbnRlcmFzIHJlZGFuIGF2ICVzLiAoc2xhdiB0aWxsICVzKS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzI0CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gYXJndW1lbnQgYCVzJyIKK21zZ3N0ciAib2vDpG50IGFyZ3VtZW50IFwiJXNcIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNDMKK21zZ2lkICItLWluc3RhbGwgbmVlZHMgPGxpbms+IDxuYW1lPiA8cGF0aD4gPHByaW9yaXR5PiIKK21zZ3N0ciAiLS1pbnN0YWxsIGJlaMO2dmVyIDxsw6Ruaz4gPG5hbW4+IDxzw7ZrdsOkZz4gPHByaW9yaXRldD4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzQ2IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzk3Cittc2dpZCAiPGxpbms+IGFuZCA8cGF0aD4gY2FuJ3QgYmUgdGhlIHNhbWUiCittc2dzdHIgIjxsw6Ruaz4gb2NoIDxzw7ZrdsOkZz4ga2FuIGludGUgdmFyYSBpZGVudGlza2EiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzQ5Cittc2dpZCAicHJpb3JpdHkgbXVzdCBiZSBhbiBpbnRlZ2VyIgorbXNnc3RyICJwcmlvcml0ZXQgbcOlc3RlIHZhcmEgZXR0IGhlbHRhbCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyA8bmFtZT4gPHBhdGg+IgorbXNnc3RyICItLSVzIGJlaMO2dmVyIDxuYW1uPiA8c8O2a3bDpGc+IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM3NgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIDxuYW1lPiIKK21zZ3N0ciAiLS0lcyBiZWjDtnZlciA8bmFtbj4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzg4Cittc2dpZCAiLS1zbGF2ZSBvbmx5IGFsbG93ZWQgd2l0aCAtLWluc3RhbGwiCittc2dzdHIgIi0tc2xhdmUgdGlsbMOldHMgZW5kYXN0IHRpbGxzYW1tYW5zIG1lZCAtLWluc3RhbGwiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzkwCittc2dpZCAiLS1zbGF2ZSBuZWVkcyA8bGluaz4gPG5hbWU+IDxwYXRoPiIKK21zZ3N0ciAiLS1zbGF2ZSBiZWjDtnZlciA8bMOkbms+IDxuYW1uPiA8c8O2a3bDpGc+IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM5OQorIywgYy1mb3JtYXQKK21zZ2lkICJuYW1lICVzIGlzIGJvdGggcHJpbWFyeSBhbmQgc2xhdmUiCittc2dzdHIgIm5hbW5ldCAlcyDDpHIgYsOlZGUgcHJpbcOkciBvY2ggc2xhdiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAibGluayAlcyBpcyBib3RoIHByaW1hcnkgYW5kIHNsYXZlIgorbXNnc3RyICJsw6Rua2VuICVzIMOkciBiw6VkZSBwcmltw6RyIG9jaCBzbGF2IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQyMgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGEgPGZpbGU+IGFyZ3VtZW50IgorbXNnc3RyICItLSVzIGJlaMO2dmVyIGV0dCA8ZmlsPi1hcmd1bWVudCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gYCVzJyIKK21zZ3N0ciAib2vDpG5kIGZsYWdnYSBcIiVzXCIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDUzCittc2dpZCAiIgorIm5lZWQgLS1kaXNwbGF5LCAtLXF1ZXJ5LCAtLWxpc3QsIC0tZ2V0LXNlbGVjdGlvbnMsIC0tY29uZmlnLCAtLXNldCwgLS1zZXQtIgorInNlbGVjdGlvbnMsIC0taW5zdGFsbCwgLS1yZW1vdmUsIC0tYWxsLCAtLXJlbW92ZS1hbGwgb3IgLS1hdXRvIgorbXNnc3RyICIiCisiYmVow7Z2ZXIgLS1kaXNwbGF5LCAtLXF1ZXJ5LCAtLWxpc3QsIC0tZ2V0LXNlbGVjdGlvbnMsIC0tY29uZmlnLCAtLXNldCwgLS1zZXQtIgorInNlbGVjdGlvbnMsIC0taW5zdGFsbCwgLS1yZW1vdmUsIC0tYWxsLCAtLXJlbW92ZS1hbGwgZWxsZXIgLS1hdXRvIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQ5MAorbXNnaWQgIjxzdGFuZGFyZCBpbnB1dD4iCittc2dzdHIgIjxzdGFuZGFyZCBpbj4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTAwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTAzCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIGFsdGVybmF0aXZlcyBmb3IgJXMuIgorbXNnc3RyICJpbmdhIGFsdGVybmF0aXYgZsO2ciAlcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTMwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzLyVzIGlzIGRhbmdsaW5nLCBpdCB3aWxsIGJlIHVwZGF0ZWQgd2l0aCBiZXN0IGNob2ljZS4iCittc2dzdHIgIiVzLyVzIMOkciBsw7ZzLCBkZW4ga29tbWVyIHVwcGRhdGVyYXMgbWVkIGRldCBiw6RzdGEgYWx0ZXJuYXRpdmV0LiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzLyVzIGhhcyBiZWVuIGNoYW5nZWQgKG1hbnVhbGx5IG9yIGJ5IGEgc2NyaXB0KS4gU3dpdGNoaW5nIHRvIG1hbnVhbCAiCisidXBkYXRlcyBvbmx5LiIKK21zZ3N0ciAiIgorIiVzLyVzIGhhciDDpG5kcmF0cyAobWFudWVsbHQgZWxsZXIgYXYgZXR0IHNrcmlwdCkuIFbDpHhsYXIgdGlsbCBlbmJhcnQgIgorIm1hbnVlbGxhIHVwcGRhdGVyaW5nYXIuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU0MgorIywgYy1mb3JtYXQKK21zZ2lkICJzZXR0aW5nIHVwIGF1dG9tYXRpYyBzZWxlY3Rpb24gb2YgJXMuIgorbXNnc3RyICJha3RpdmVyYXIgYXV0b21hdGlza3QgdmFsIGF2ICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgZm9yICVzIG5vdCByZWdpc3RlcmVkLCBub3Qgc2V0dGluZy4iCittc2dzdHIgImFsdGVybmF0aXZldCAlcyBmw7ZyICVzIGhhciBpbnRlIHJlZ2lzdHJlcmF0cywgc3TDpGxsZXIgaW50ZSBpbi4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTU3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTYzCisjLCBjLWZvcm1hdAorbXNnaWQgIlRoZXJlIGlzIG5vIHByb2dyYW0gd2hpY2ggcHJvdmlkZXMgJXMuIgorbXNnc3RyICJEZXQgZmlubnMgaW5nYSBwcm9ncmFtIHNvbSB0aWxsaGFuZGFow6VsbGVyICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NjUgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NzUKK21zZ2lkICJOb3RoaW5nIHRvIGNvbmZpZ3VyZS4iCittc2dzdHIgIkluZ2V0IGF0dCBrb25maWd1cmVyYS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTczCisjLCBjLWZvcm1hdAorbXNnaWQgIlRoZXJlIGlzIG9ubHkgb25lIGFsdGVybmF0aXZlIGluIGxpbmsgZ3JvdXAgJXM6ICVzIgorbXNnc3RyICJEZXQgZmlubnMgYmFyYSBldHQgYWx0ZXJuYXRpdiBpIGzDpG5rZ3J1cHBlbiAlczogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTg0CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlICVzIGZvciAlcyBub3QgcmVnaXN0ZXJlZCwgbm90IHJlbW92aW5nLiIKK21zZ3N0ciAiYWx0ZXJuYXRpdmV0ICVzIGbDtnIgJXMgaGFyIGludGUgcmVnaXN0cmVyYXRzLCB0YXIgaW50ZSBib3J0LiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1OTIKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVtb3ZpbmcgbWFudWFsbHkgc2VsZWN0ZWQgYWx0ZXJuYXRpdmUgLSBzd2l0Y2hpbmcgJXMgdG8gYXV0byBtb2RlIgorbXNnc3RyICJ0YXIgYm9ydCBtYW51ZWxsdCB2YWxkYSBhbHRlcm5hdGl2IC0gdsOkeGxhciAlcyB0aWxsIGF1dG9sw6RnZSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiYXV0b21hdGljIHVwZGF0ZXMgb2YgJXMvJXMgYXJlIGRpc2FibGVkLCBsZWF2aW5nIGl0IGFsb25lLiIKK21zZ3N0ciAiYXV0b21hdGlza2EgdXBwZGF0ZXJpbmdhciBhdiAlcy8lcyDDpHIgaW5ha3RpdmVyYWQsIGzDpXRlciBkZW4gdmFyYS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjE5CisjLCBjLWZvcm1hdAorbXNnaWQgInRvIHJldHVybiB0byBhdXRvbWF0aWMgdXBkYXRlcyB1c2UgJyVzIC0tYXV0byAlcycuIgorbXNnc3RyICIiCisiZsO2ciBhdHQgw6V0ZXJnw6UgdGlsbCBhdXRvbWF0aXNrYSB1cHBkYXRlcmluZ2FyLCBhbnbDpG5kIFwiJXMgLS1hdXRvICVzXCIuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYzNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1c2luZyAlcyB0byBwcm92aWRlICVzICglcykgaW4gJXMuIgorbXNnc3RyICJhbnbDpG5kZXIgJXMgZsO2ciBhdHQgdGlsbGhhbmRhaMOlbGxhICVzICglcykgaSAlcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjQ0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmb3JjaW5nIHJlaW5zdGFsbGF0aW9uIG9mIGFsdGVybmF0aXZlICVzIGJlY2F1c2UgbGluayBncm91cCAlcyBpcyBicm9rZW4uIgorbXNnc3RyICJ0dmluZ2FyIG9taW5zdGFsbGF0aW9uIGF2IGFsdGVybmF0aXZldCAlcyBkw6UgbMOkbmtncnVwcGVuICVzIMOkciB0cmFzaWcuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjY1MQorIywgYy1mb3JtYXQKK21zZ2lkICJjdXJyZW50IGFsdGVybmF0aXZlICVzIGlzIHVua25vd24sIHN3aXRjaGluZyB0byAlcyBmb3IgbGluayBncm91cCAlcy4iCittc2dzdHIgIiIKKyJkZXQgbnV2YXJhbmRlIGFsdGVybmF0aXZldCAlcyDDpHIgb2vDpG50LCB2w6R4bGFyIHRpbGwgJXMgZsO2ciBsw6Rua2dydXBwZW4gJXMuIgorCisjfiBtc2dpZCAiaXQgaXMgYSBtYXN0ZXIgYWx0ZXJuYXRpdmUuIgorI34gbXNnc3RyICJkZXQgw6RyIGV0dCBodXZ1ZGFsdGVybmF0aXYuIgorCisjfiBtc2dpZCAiaXQgaXMgYSBzbGF2ZSBvZiAlcyIKKyN+IG1zZ3N0ciAiZGV0IMOkciBzbGF2IHRpbGwgJXMiCisKKyN+IG1zZ2lkICJjYW5ub3Qgc3RhdCAlczogJXMiCisjfiBtc2dzdHIgImthbiBpbnRlIHRhIHN0YXR1cyBww6UgJXM6ICVzIgorCisjfiBtc2dpZCAicmVhZGxpbmsoJXMpIGZhaWxlZDogJXMiCisjfiBtc2dzdHIgIm1pc3NseWNrYWRlcyBsw6RzYSBsw6Rua2VuIChyZWFkbGluaykgJXM6ICVzIgorCisjfiBtc2dpZCAic2NhbiBvZiAlcyBmYWlsZWQ6ICVzIgorI34gbXNnc3RyICJtaXNzbHlja2FkZXMgc8O2a2EgaSAlczogJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlY3V0ZSAlczogJXMiCisjfiBtc2dzdHIgImt1bmRlIGludGUga8O2cmEgJXM6ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIG1ha2UgJXMgYSBzeW1saW5rIHRvICVzOiAlcyIKKyN+IG1zZ3N0ciAia3VuZGUgaW50ZSBnw7ZyYSAlcyB0aWxsIGVuIHN5bWJvbGlzayBsw6RuayB0aWxsICVzOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsICVzIGFzICVzOiAlcyIKKyN+IG1zZ3N0ciAia3VuZGUgaW50ZSBpbnN0YWxsZXJhICVzIHNvbSAlczogJXMiCisKKyN+IG1zZ2lkICJ3aGlsZSB3cml0aW5nICVzOiAlcyIKKyN+IG1zZ3N0ciAidmlkIHNrcml2bmluZyBhdiAlczogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcmVhZCAlczogJXMiCisjfiBtc2dzdHIgImt1bmRlIGludGUgbMOkc2EgJXM6ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGNsb3NlICVzOiAlcyIKKyN+IG1zZ3N0ciAia3VuZGUgaW50ZSBzdMOkbmdhICVzOiAlcyIKKworI34gbXNnaWQgImNhbm5vdCB3cml0ZSAlczogJXMiCisjfiBtc2dzdHIgImthbiBpbnRlIHNrcml2YSAlczogJXMiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgInVuYWJsZSB0byByZW5hbWUgJXMgdG8gJXM6ICVzIgorI34gbXNnaWQgInVuYWJsZSB0byByZW5hbWUgZmlsZSAnJXMnIHRvICclcyciCisjfiBtc2dzdHIgImt1bmRlIGludGUgYnl0YSBuYW1uIHDDpSAlcyB0aWxsICVzOiAlcyIKKworI34gbXNnaWQgIm1hbGxvYyBmYWlsZWQgKCVsZCBieXRlcykiCisjfiBtc2dzdHIgIm1hbGxvYyBtaXNzbHlja2FkZXMgKCVsZCBieXRlKSIKKworI34gbXNnaWQgInJlYWxsb2MgZmFpbGVkICglbGQgYnl0ZXMpIgorI34gbXNnc3RyICJyZWFsbG9jIG1pc3NseWNrYWRlcyAoJWxkIGJ5dGUpIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHVuYnVmZmVyIGAlLjI1NXMnIgorI34gbXNnc3RyICJrdW5kZSBpbnRlIHN0w6RuZ2EgYXYgYnVmZmVydCBmw7ZyIFwiJS4yNTVzXCIiCisKKyN+IG1zZ2lkICJwYXJ0IGZpbGUgYCUuMjUwcycgaGFzIHRyYWlsaW5nIGdhcmJhZ2UiCisjfiBtc2dzdHIgImRlbGZpbGVuIFwiJS4yNTBzXCIgZsO2bGpzIGF2IHNrcsOkcCIKKworI34gbXNnaWQgInNpemUgJTdkIG9jY3VycyAlNWQgdGltZXNcbiIKKyN+IG1zZ3N0ciAic3RvcmxlayAlN2QgZsO2cmVrb21tZXIgJTVkIGfDpW5nZXJcbiIKKworI34gbXNnaWQgIm91dCBvZiBtZW1vcnkgcHVzaGluZyBlcnJvciBoYW5kbGVyOiAiCisjfiBtc2dzdHIgIm1pbm5ldCBzbHV0IGkgZmVsaGFudGVyYXJlbjogIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHVubG9jayBkcGtnIHN0YXR1cyBkYXRhYmFzZSIKKyN+IG1zZ3N0ciAia3VuZGUgaW50ZSBsw6VzYSB1cHAgZHBrZzpzIHN0YXR1c2RhdGFiYXMiCisKKyN+IG1zZ2lkICJjb3B5IGluZm8gZmlsZSBgJS4yNTVzJyIKKyN+IG1zZ3N0ciAia29waWVyYSBpbmZvcm1hdGlvbnNmaWwgXCIlLjI1NXNcIiIKKworI34gbXNnaWQgInBhcnNlIGVycm9yIgorI34gbXNnc3RyICJ0b2xrbmluZ3NmZWwiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gd3JpdGUgcGFyc2luZyB3YXJuaW5nIgorI34gbXNnc3RyICJrdW5kZSBpbnRlIHNrcml2YSB0b2xrbmluZ3N2YXJuaW5nIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGxvY2sgdHJpZ2dlcnMgYXJlYSIKKyN+IG1zZ3N0ciAia3VuZGUgaW50ZSBsw6VzYSB1dGzDtnNhcm9tcsOlZGV0IgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHJ1biAlcyAoJS4yNTBzKSIKKyN+IG1zZ3N0ciAia3VuZGUgaW50ZSBzdGFydGEgJXMgKCUuMjUwcykiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBzaGVsbCAoJS4yNTBzKSIKKyN+IG1zZ3N0ciAia3VuZGUgaW50ZSBzdGFydGEgc2thbGV0ICglLjI1MHMpIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGNoZWNrIGZvciBleGlzdGVuY2Ugb2YgYCUuMjUwcyciCisjfiBtc2dzdHIgImt1bmRlIGludGUga29udHJvbGxlcmEgb20gXCIlLjI1MHNcIiBleGlzdGVyYXIiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBybSBmb3IgY2xlYW51cCIKKyN+IG1zZ3N0ciAia3VuZGUgaW50ZSB1dGbDtnJhIHJtIGbDtnIgdXBwcmVuc25pbmciCisKKyN+IG1zZ2lkICIiCisjfiAiJXMgZGVidWdnaW5nIG9wdGlvbiwgLS1kZWJ1Zz08b2N0YWw+IG9yIC1EPG9jdGFsPjpcbiIKKyN+ICJcbiIKKyN+ICIgbnVtYmVyICByZWYuIGluIHNvdXJjZSAgIGRlc2NyaXB0aW9uXG4iCisjfiAiICAgICAgMSAgIGdlbmVyYWwgICAgICAgICAgIEdlbmVyYWxseSBoZWxwZnVsIHByb2dyZXNzIGluZm9ybWF0aW9uXG4iCisjfiAiICAgICAgMiAgIHNjcmlwdHMgICAgICAgICAgIEludm9jYXRpb24gYW5kIHN0YXR1cyBvZiBtYWludGFpbmVyIHNjcmlwdHNcbiIKKyN+ICIgICAgIDEwICAgZWFjaGZpbGUgICAgICAgICAgT3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkXG4iCisjfiAiICAgIDEwMCAgIGVhY2hmaWxlZGV0YWlsICAgIExvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkXG4iCisjfiAiICAgICAyMCAgIGNvbmZmICAgICAgICAgICAgIE91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGVcbiIKKyN+ICIgICAgMjAwICAgY29uZmZkZXRhaWwgICAgICAgTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggY29uZmlndXJhdGlvbiBmaWxlXG4iCisjfiAiICAgICA0MCAgIGRlcGNvbiAgICAgICAgICAgIERlcGVuZGVuY2llcyBhbmQgY29uZmxpY3RzXG4iCisjfiAiICAgIDQwMCAgIGRlcGNvbmRldGFpbCAgICAgIExvdHMgb2YgZGVwZW5kZW5jaWVzL2NvbmZsaWN0cyBvdXRwdXRcbiIKKyN+ICIgIDEwMDAwICAgdHJpZ2dlcnMgICAgICAgICAgVHJpZ2dlciBhY3RpdmF0aW9uIGFuZCBwcm9jZXNzaW5nXG4iCisjfiAiICAyMDAwMCAgIHRyaWdnZXJzZGV0YWlsICAgIExvdHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2Vyc1xuIgorI34gIiAgNDAwMDAgICB0cmlnZ2Vyc3N0dXBpZCAgICBTaWxseSBhbW91bnRzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnNcbiIKKyN+ICIgICAxMDAwICAgdmVyeXZlcmJvc2UgICAgICAgTG90cyBvZiBkcml2ZWwgYWJvdXQgZWcgdGhlIGRwa2cvaW5mbyAiCisjfiAiZGlyZWN0b3J5XG4iCisjfiAiICAgMjAwMCAgIHN0dXBpZGx5dmVyYm9zZSAgIEluc2FuZSBhbW91bnRzIG9mIGRyaXZlbFxuIgorI34gIlxuIgorI34gIkRlYnVnZ2luZyBvcHRpb25zIGFyZSBiZSBtaXhlZCB1c2luZyBiaXR3aXNlLW9yLlxuIgorI34gIk5vdGUgdGhhdCB0aGUgbWVhbmluZ3MgYW5kIHZhbHVlcyBhcmUgc3ViamVjdCB0byBjaGFuZ2UuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICIlcyBmZWxzw7ZrbmluZ3N2YWwsIC0tZGVidWc9PG9rdGFsdD4gZWxsZXIgLUQ8b2t0YWx0PjpcbiIKKyN+ICJcbiIKKyN+ICIgICAgdGFsICAgcmVmLiBpIGvDpGxsa29kICAgIGJlc2tyaXZuaW5nXG4iCisjfiAiICAgICAgMSAgIGdlbmVyYWwgICAgICAgICAgIEFsbG3DpG50IGhqw6RscHNhbSBmw7ZybG9wcHNpbmZvcm1hdGlvblxuIgorI34gIiAgICAgIDIgICBzY3JpcHRzICAgICAgICAgICBBbnJvcCBvY2ggc3RhdHVzIGbDtnIgdXR2ZWNrbGFyc2tyaXB0XG4iCisjfiAiICAgICAxMCAgIGVhY2hmaWxlICAgICAgICAgIFV0ZGF0YSBmw7ZyIHZhcmplIGZpbCBzb20gaGFudGVyYXNcbiIKKyN+ICIgICAgMTAwICAgZWFjaGZpbGVkZXRhaWwgICAgTWFzc3ZpcyBtZWQgdXRkYXRhIGbDtnIgdmFyamUgZmlsIHNvbSAiCisjfiAiaGFudGVyYXNcbiIKKyN+ICIgICAgIDIwICAgY29uZmYgICAgICAgICAgICAgVXRkYXRhIGbDtnIgdmFyamUga29uZmlndXJhdGlvbnNmaWxcbiIKKyN+ICIgICAgMjAwICAgY29uZmZkZXRhaWwgICAgICAgTWFzc3ZpcyBtZWQgdXRkYXRhIGbDtnIgdmFyamUgIgorI34gImtvbmZpZ3VyYXRpb25zZmlsXG4iCisjfiAiICAgICA0MCAgIGRlcGNvbiAgICAgICAgICAgIEJlcm9lbmRlbiBvY2gga29uZmxpa3RlclxuIgorI34gIiAgICA0MDAgICBkZXBjb25kZXRhaWwgICAgICBNYXNzdmlzIGF2IGJlcm9lbmRlLS9rb25mbGlrdHV0ZGF0YVxuIgorI34gIiAgMTAwMDAgICB0cmlnZ2VycyAgICAgICAgICB1dGzDtnNhcmFrdGl2ZXJpbmcgb2NoIC1oYW50ZXJpbmdcbiIKKyN+ICIgIDIwMDAwICAgdHJpZ2dlcnNkZXRhaWwgICAgTWFzc3ZpcyBtZWQgdXRkYXRhIG9tIHV0bMO2c2FyZVxuIgorI34gIiAgNDAwMDAgICB0cmlnZ2Vyc3N0dXBpZCAgICBLbsOkcHBhIG3DpG5nZGVyIHV0ZGF0YSBvbSB1dGzDtnNhcmVcbiIKKyN+ICIgICAxMDAwICAgdmVyeXZlcmJvc2UgICAgICAgTWFzc3ZpcyBhdiBwbGFkZGVyIG9tIGJsLmEgZHBrZy9pbmZvLSIKKyN+ICJrYXRhbG9nZW5cbiIKKyN+ICIgICAyMDAwICAgc3R1cGlkbHl2ZXJib3NlICAgS27DpHBwYSBtw6RuZ2RlciBwbGFkZGVyXG4iCisjfiAiXG4iCisjfiAiRmVsc8O2a25pbmdzZmxhZ2dvciBrb21iaW5lcmFzIG1lZCBiaXR2aXMgZWxsZXIuXG4iCisjfiAiTm90ZXJhIGF0dCBiZXR5ZGVsc2VyIG9jaCB2w6RyZGVuIGthbiBrb21tYSBhdHQgw6RuZHJhcy5cbiIKKworI34gbXNnaWQgIiIKKyN+ICIlcyBmb3JjaW5nIG9wdGlvbnMgLSBjb250cm9sIGJlaGF2aW91ciB3aGVuIHByb2JsZW1zIGZvdW5kOlxuIgorI34gIiAgd2FybiBidXQgY29udGludWU6ICAtLWZvcmNlLTx0aGluZz4sPHRoaW5nPiwuLi5cbiIKKyN+ICIgIHN0b3Agd2l0aCBlcnJvcjogICAgLS1yZWZ1c2UtPHRoaW5nPiw8dGhpbmc+LC4uLiB8IC0tbm8tZm9yY2UtIgorI34gIjx0aGluZz4sLi4uXG4iCisjfiAiIEZvcmNpbmcgdGhpbmdzOlxuIgorI34gIiAgYWxsIFshXSAgICAgICAgICAgICAgICBTZXQgYWxsIGZvcmNlIG9wdGlvbnNcbiIKKyN+ICIgIGRvd25ncmFkZSBbKl0gICAgICAgICAgUmVwbGFjZSBhIHBhY2thZ2Ugd2l0aCBhIGxvd2VyIHZlcnNpb25cbiIKKyN+ICIgIGNvbmZpZ3VyZS1hbnkgICAgICAgICAgQ29uZmlndXJlIGFueSBwYWNrYWdlIHdoaWNoIG1heSBoZWxwIHRoaXMgb25lXG4iCisjfiAiICBob2xkICAgICAgICAgICAgICAgICAgIFByb2Nlc3MgaW5jaWRlbnRhbCBwYWNrYWdlcyBldmVuIHdoZW4gb24gaG9sZFxuIgorI34gIiAgYmFkLXBhdGggICAgICAgICAgICAgICBQQVRIIGlzIG1pc3NpbmcgaW1wb3J0YW50IHByb2dyYW1zLCBwcm9ibGVtcyAiCisjfiAibGlrZWx5XG4iCisjfiAiICBub3Qtcm9vdCAgICAgICAgICAgICAgIFRyeSB0byAoZGUpaW5zdGFsbCB0aGluZ3MgZXZlbiB3aGVuIG5vdCByb290XG4iCisjfiAiICBvdmVyd3JpdGUgICAgICAgICAgICAgIE92ZXJ3cml0ZSBhIGZpbGUgZnJvbSBvbmUgcGFja2FnZSB3aXRoIGFub3RoZXJcbiIKKyN+ICIgIG92ZXJ3cml0ZS1kaXZlcnRlZCAgICAgT3ZlcndyaXRlIGEgZGl2ZXJ0ZWQgZmlsZSB3aXRoIGFuIHVuZGl2ZXJ0ZWQgIgorI34gInZlcnNpb25cbiIKKyN+ICIgIGJhZC12ZXJpZnkgICAgICAgICAgICAgSW5zdGFsbCBhIHBhY2thZ2UgZXZlbiBpZiBpdCBmYWlscyBhdXRoZW50aWNpdHkgIgorI34gImNoZWNrXG4iCisjfiAiICBkZXBlbmRzLXZlcnNpb24gWyFdICAgIFR1cm4gZGVwZW5kZW5jeSB2ZXJzaW9uIHByb2JsZW1zIGludG8gd2FybmluZ3NcbiIKKyN+ICIgIGRlcGVuZHMgWyFdICAgICAgICAgICAgVHVybiBhbGwgZGVwZW5kZW5jeSBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzXG4iCisjfiAiICBjb25mbmV3IFshXSAgICAgICAgICAgIEFsd2F5cyB1c2UgdGhlIG5ldyBjb25maWcgZmlsZXMsIGRvbid0IHByb21wdFxuIgorI34gIiAgY29uZm9sZCBbIV0gICAgICAgICAgICBBbHdheXMgdXNlIHRoZSBvbGQgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHRcbiIKKyN+ICIgIGNvbmZkZWYgWyFdICAgICAgICAgICAgVXNlIHRoZSBkZWZhdWx0IG9wdGlvbiBmb3IgbmV3IGNvbmZpZyBmaWxlcyBpZiAiCisjfiAib25lXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIGlzIGF2YWlsYWJsZSwgZG9uJ3QgcHJvbXB0LiBJZiBubyBkZWZhdWx0IGNhbiBiZSAiCisjfiAiZm91bmQsXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIHlvdSB3aWxsIGJlIHByb21wdGVkIHVubGVzcyBvbmUgb2YgdGhlIGNvbmZvbGQgIgorI34gIm9yXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmZuZXcgb3B0aW9ucyBpcyBhbHNvIGdpdmVuXG4iCisjfiAiICBjb25mbWlzcyBbIV0gICAgICAgICAgIEFsd2F5cyBpbnN0YWxsIG1pc3NpbmcgY29uZmlnIGZpbGVzXG4iCisjfiAiICBjb25mYXNrIFshXSAgICAgICAgICAgIE9mZmVyIHRvIHJlcGxhY2UgY29uZmlnIGZpbGVzIHdpdGggbm8gbmV3ICIKKyN+ICJ2ZXJzaW9uc1xuIgorI34gIiAgYnJlYWtzIFshXSAgICAgICAgICAgICBJbnN0YWxsIGV2ZW4gaWYgaXQgd291bGQgYnJlYWsgYW5vdGhlciBwYWNrYWdlXG4iCisjfiAiICBjb25mbGljdHMgWyFdICAgICAgICAgIEFsbG93IGluc3RhbGxhdGlvbiBvZiBjb25mbGljdGluZyBwYWNrYWdlc1xuIgorI34gIiAgYXJjaGl0ZWN0dXJlIFshXSAgICAgICBQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyBhcmNoaXRlY3R1cmVcbiIKKyN+ICIgIG92ZXJ3cml0ZS1kaXIgWyFdICAgICAgT3ZlcndyaXRlIG9uZSBwYWNrYWdlJ3MgZGlyZWN0b3J5IHdpdGggYW5vdGhlcidzICIKKyN+ICJmaWxlXG4iCisjfiAiICB1bnNhZmUtaW8gWyFdICAgICAgICAgIERvIG5vdCBwZXJmb3JtIHNhZmUgSS9PIG9wZXJhdGlvbnMgd2hlbiAiCisjfiAidW5wYWNraW5nXG4iCisjfiAiICByZW1vdmUtcmVpbnN0cmVxIFshXSAgIFJlbW92ZSBwYWNrYWdlcyB3aGljaCByZXF1aXJlIGluc3RhbGxhdGlvblxuIgorI34gIiAgcmVtb3ZlLWVzc2VudGlhbCBbIV0gICBSZW1vdmUgYW4gZXNzZW50aWFsIHBhY2thZ2VcbiIKKyN+ICJcbiIKKyN+ICJXQVJOSU5HIC0gdXNlIG9mIG9wdGlvbnMgbWFya2VkIFshXSBjYW4gc2VyaW91c2x5IGRhbWFnZSB5b3VyICIKKyN+ICJpbnN0YWxsYXRpb24uXG4iCisjfiAiRm9yY2luZyBvcHRpb25zIG1hcmtlZCBbKl0gYXJlIGVuYWJsZWQgYnkgZGVmYXVsdC5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIiVzIHR2aW5nYW5kZSBmbGFnZ29yIC0gYmVzdMOkbW1lciB2YWQgc29tIGjDpG5kZXIgdmlkIGZlbDpcbiIKKyN+ICIgIHZhcm5hIG1lbiBmb3J0c8OkdHQ6IC0tZm9yY2UtPHNhaz4sPHNhaz4sLi4uXG4iCisjfiAiICBzdGFubmEgbWVkIGZlbDogICAgIC0tcmVmdXNlLTxzYWs+LDxzYWs+IHwgLS1uby1mb3JjZS08c2FrPiw8c2FrPiwuLi5cbiIKKyN+ICIgVHZpbmdhIHNha2VyOlxuIgorI34gIiAgYWxsIFshXSAgICAgICAgICAgICAgICBBa3RpdmVyYSBhbGxhIHR2aW5nYW5kZSBmbGFnZ29yXG4iCisjfiAiICBkb3duZ3JhZGUgWypdICAgICAgICAgIEVyc8OkdHQgcGFrZXQgbWVkIGVuIGzDpGdyZSB2ZXJzaW9uXG4iCisjfiAiICBjb25maWd1cmUtYW55ICAgICAgICAgIEtvbmZpZ3VyZXJhIGdvZHR5Y2tsaWd0IHBha2V0IHNvbSBrYW4gaGrDpGxwYSAiCisjfiAiZGV0dGFcbiIKKyN+ICIgIGhvbGQgICAgICAgICAgICAgICAgICAgSGFudGVyYSBmw7ZyYnVuZG5hIHBha2V0IMOkdmVuIG7DpHIgZGUgc2t1bGxlICIKKyN+ICJow6VsbHRzXG4iCisjfiAiICBiYWQtcGF0aCAgICAgICAgICAgICAgIFBBVEggc2FrbmFyIHZpa3RpZ2EgcHJvZ3JhbSwgcHJvYmxlbSB0cm9saWdhXG4iCisjfiAiICBub3Qtcm9vdCAgICAgICAgICAgICAgIEbDtnJzw7ZrIChhdilpbnN0YWxsZXJhIHNha2VyIMOkdmVuIHNvbSBpY2tlLXJvb3RcbiIKKyN+ICIgIG92ZXJ3cml0ZSAgICAgICAgICAgICAgU2tyaXYgw7Z2ZXIgZmlsZXIgZnLDpW4gZXR0IHBha2V0IG1lZCBldHQgYW5uYXRcbiIKKyN+ICIgIG92ZXJ3cml0ZS1kaXZlcnRlZCAgICAgU2tyaXYgw7Z2ZXIgb21kaXJpZ2VyYWQgZmlsIG1lZCBlbiBlaiAiCisjfiAib21kaXJpZ2VyYWRcbiIKKyN+ICIgIGJhZC12ZXJpZnkgICAgICAgICAgICAgSW5zdGFsbGVyYSBwYWtldCDDpHZlbiBvbSBhdXRlbnRpc2VyaW5nICIKKyN+ICJtaXNzbHlja2FzXG4iCisjfiAiICBkZXBlbmRzLXZlcnNpb24gWyFdICAgIEfDtnIgYmVyb2VuZGVwcm9ibGVtIHRpbGwgdmFybmluZ2FyXG4iCisjfiAiICBkZXBlbmRzIFshXSAgICAgICAgICAgIEfDtnIgYWxsYSBiZXJvZW5kZXByb2JsZW0gdGlsbCB2YXJuaW5nYXJcbiIKKyN+ICIgIGNvbmZuZXcgWyFdICAgICAgICAgICAgQW52w6RuZCBhbGx0aWQgbnlhIGtvbmZpZ3VyYXRpb25zZmlsZXIsIGZyw6VnYSBlalxuIgorI34gIiAgY29uZm9sZCBbIV0gICAgICAgICAgICBBbnbDpG5kIGFsbHRpZCBnYW1sYSBrb25maWd1cmF0aW9uc2ZpbGVyLCBmcsOlZ2EgIgorI34gImVqXG4iCisjfiAiICBjb25mZGVmIFshXSAgICAgICAgICAgIEFudsOkbmQgZsO2cnZhbCBmw7ZyIG55YSBrb25maWd1cmF0aW9uc2ZpbGVyIG9tICIKKyN+ICJzw6VkYW50XG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIGZpbm5zLCBmcsOlZ2EgZWouIE9tIGluZ2V0IGbDtnJ2YWwgZmlubnMgIgorI34gInRpbGxmcsOlZ2FzIGR1XG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIG9tIGluZ2VuIGF2IGZsYWdnb3JuYSBjb25mb2xkIGVsbGVyIGNvbmZuZXcgIgorI34gIm9ja3PDpSBoYXJcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgYW5naXZpdHNcbiIKKyN+ICIgIGNvbmZtaXNzIFshXSAgICAgICAgICAgSW5zdGFsbGVyYSBhbGx0aWQgc2FrbmFkZSBrb25maWd1cmF0aW9uc2ZpbGVyXG4iCisjfiAiICBjb25mYXNrIFshXSAgICAgICAgICAgIEVyYmp1ZCBhdHQgaW50ZSBlcnPDpHR0YSBrb25maWd1cmF0aW9uc2ZpbGVyIG1lZCAiCisjfiAibnlhIHZlcnNpb25lclxuIgorI34gIiAgYnJlYWtzIFshXSAgICAgICAgICAgICBJbnN0YWxsZXJhIMOkdmVuIG9tIGRldCBza3VsbGUgZsO2cnN0w7ZyYSBldHQgYW5uYXQgIgorI34gInBha2V0XG4iCisjfiAiICBjb25mbGljdHMgWyFdICAgICAgICAgIFRpbGzDpXQgaW5zdGFsbGF0aW9uIGF2IHBha2V0IHNvbSDDpHIgaSBrb25mbGlrdFxuIgorI34gIiAgYXJjaGl0ZWN0dXJlIFshXSAgICAgICBIYW50ZXJhIMOkdmVuIHBha2V0IG1lZCBmZWwgYXJraXRla3R1clxuIgorI34gIiAgb3ZlcndyaXRlLWRpciBbIV0gICAgICBTa3JpdiDDtnZlciBldHQgcGFrZXRzIGthdGFsb2cgbWVkIGV0dCBhbm5hdHMgIgorI34gImZpbFxuIgorI34gIiAgdW5zYWZlLWlvIFshXSAgICAgICAgICBVdGbDtnIgZWogc8Oka3JhIEkvTy1vcGVyYXRpb25lciB2aWQgdXBwYWNrbmluZ1xuIgorI34gIiAgcmVtb3ZlLXJlaW5zdHJlcSBbIV0gICBUYSBib3J0IHBha2V0IHNvbSBrcsOkdmVyIGluc3RhbGxhdGlvblxuIgorI34gIiAgcmVtb3ZlLWVzc2VudGlhbCBbIV0gICBUYSBib3J0IGV0dCBzeXN0ZW1rcml0aXNrdCBwYWtldFxuIgorI34gIlxuIgorI34gIlZBUk5JTkcgLSBmbGFnZ29yIG1hcmtlcmFkZSBbIV0ga2FuIHRpbGxmb2dhIHN0b3Igc2thZGEgdGlsbCBkaW4gIgorI34gImluc3RhbGxhdGlvblxuIgorI34gIm9tIGRlIGFudsOkbmRzLiBGbGFnZ29yIG1hcmtlcmFkZSBbKl0gw6RyIGbDtnJ2YWxkYS5cbiIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIGRwa2ctc3BsaXQgdG8gc2VlIGlmIGl0J3MgcGFydCBvZiBhIG11bHRpcGFydGVyIgorI34gbXNnc3RyICIiCisjfiAia3VuZGUgaW50ZSBrw7ZyYSBkcGtnLXNwbGl0IGbDtnIgYXR0IHNlIG9tIGRldCDDpHIgZW4gZGVsIGF2IGV0dCBmbGVyZGVsYXQgIgorI34gInBha2V0IgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWNsIGRlYnNpZy12ZXJpZnkiCisjfiBtc2dzdHIgImt1bmRlIGludGUga8O2cmEgZGVic2lnLXZlcmlmeSIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIGRwa2ctZGViIHRvIGV4dHJhY3QgY29udHJvbCBpbmZvcm1hdGlvbiIKKyN+IG1zZ3N0ciAia3VuZGUgaW50ZSBrw7ZyYSBkcGtnLWRlYiBmw7ZyIGF0dCBleHRyYWhlcmEga29udHJvbGxpbmZvcm1hdGlvbmVuIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGV4ZWMgZHBrZy1kZWIgdG8gZ2V0IGZpbGVzeXN0ZW0gYXJjaGl2ZSIKKyN+IG1zZ3N0ciAia3VuZGUgaW50ZSBrw7ZyYSBkcGtnLWRlYiBmw7ZyIGF0dCBmw6UgZmlsc3lzdGVtc2Fya2l2IgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSBkaXNhcHBlYXJpbmcgY29udHJvbCBpbmZvIGZpbGUgYCUuMjUwcyciCisjfiBtc2dzdHIgImt1bmRlIGludGUgdGEgYm9ydCBmw7Zyc3Zpbm5hbmRlIGtvbnRyb2xsZmlsIFwiJS4yNTBzXCIiCisKKyN+IG1zZ2lkICJkcGtnOiAlcyBub3QgZm91bmQuXG4iCisjfiBtc2dzdHIgImRwa2c6ICVzIGt1bmRlIGVqIGhpdHRhcy5cbiIKKworI34gbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byAuLi4vREVCSUFOIgorI34gbXNnc3RyICJrdW5kZSBpbnRlIGJ5dGEga2F0YWxvZyB0aWxsIC4uLi9ERUJJQU4iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyB0YXIgLWNmIgorI34gbXNnc3RyICJrdW5kZSBpbnRlIGvDtnJhIHRhciAtY2YiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gbWFrZSB0bXBmaWxlIChjb250cm9sKSIKKyN+IG1zZ3N0ciAia3VuZGUgaW50ZSBza2FwYSB0ZW1wb3LDpHJmaWwgKGtvbnRyb2xsZGVsKSIKKworI34gbXNnaWQgImZhaWxlZCB0byB1bmxpbmsgdG1wZmlsZSAoY29udHJvbCksICVzIgorI34gbXNnc3RyICJrdW5kZSBpbnRlIHRhIGJvcnQgdGVtcG9yw6RyZmlsIChrb250cm9sbGRlbCksICVzIgorCisjfiBtc2dpZCAiY29udHJvbCIKKyN+IG1zZ3N0ciAia29udHJvbGxkZWwiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gcmV3aW5kIHRtcGZpbGUgKGNvbnRyb2wpIgorI34gbXNnc3RyICJrdW5kZSBpbnRlIGfDpSB0aWxsIGLDtnJqYW4gYXYgdGVtcG9yw6RyIGZpbCAoa29udHJvbGxkZWwpIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGZzdGF0IHRtcGZpbGUgKGNvbnRyb2wpIgorI34gbXNnc3RyICJrdW5kZSBpbnRlIHRhIHN0YXR1cyBww6UgdGVtcG9yw6RyIGZpbCAoa29udHJvbGxkZWwpIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgZmluZCIKKyN+IG1zZ3N0ciAia3VuZGUgaW50ZSBrw7ZyYSBmaW5kIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgc2ggLWMgbXYgZm9vLyogJmMiCisjfiBtc2dzdHIgImt1bmRlIGludGUga8O2cmEgc2ggLWMgbXYgZm9vLyogJmMiCisKKyN+IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSAlLjI1MHMgbGVuZ3RoIGNvbnRhaW5zIG51bGxzIgorI34gbXNnc3RyICJmaWxlbiBcIiUuMjUwc1wiIMOkciB0cmFzaWcgLSAlLjI1MHMgbMOkbmdkIGlubmVow6VsbGVyIG51bGx0ZWNrZW4iCisKKyN+IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBuZWdhdGl2ZSBtZW1iZXIgbGVuZ3RoICV6aSIKKyN+IG1zZ3N0ciAiZmlsZW4gXCIlLjI1MHNcIiDDpHIgdHJhc2lnIC0gbmVnYXRpdiBtZWRsZW1zbMOkbmdkICV6aSIKKworI34gbXNnaWQgImZhaWxlZCBnZXR0aW5nIHRoZSBjdXJyZW50IGZpbGUgcG9zaXRpb24iCisjfiBtc2dzdHIgIm1pc3NseWNrYWRlcyBow6RtdGEgYWt0dWVsbCBmaWxwb3NpdGlvbiIKKworI34gbXNnaWQgImZhaWxlZCBzZXR0aW5nIHRoZSBjdXJyZW50IGZpbGUgcG9zaXRpb24iCisjfiBtc2dzdHIgIm1pc3NseWNrYWRlcyBzdMOkbGxhIGluIGFrdHVlbGwgZmlscG9zaXRpb24iCisKKyN+IG1zZ2lkICJ2ZXJzaW9uIG51bWJlciIKKyN+IG1zZ3N0ciAidmVyc2lvbnNudW1tZXIiCisKKyN+IG1zZ2lkICJtZW1iZXIgbGVuZ3RoIgorI34gbXNnc3RyICJsw6RuZ2QgcMOlIG1lZGxlbSIKKworI34gbXNnaWQgImhlYWRlciBpbmZvIG1lbWJlciIKKyN+IG1zZ3N0ciAiaHV2dWRpbmZvcm1hdGlvbnNtZWRsZW0iCisKKyN+IG1zZ2lkICJza2lwcGVkIGNvbnRyb2wgYXJlYSBmcm9tICVzIgorI34gbXNnc3RyICLDtnZlcmhvcHBhdCBzdHlyb21yw6VkZSBmcsOlbiAlcyIKKworI34gbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgdGVtcG9yYXJ5IGRpcmVjdG9yeSIKKyN+IG1zZ3N0ciAia3VuZGUgaW50ZSBza2FwYSB0ZW1wb3LDpHIga2F0YWxvZyIKKworI34gbXNnaWQgImluZm9fc3BldyIKKyN+IG1zZ3N0ciAiaW5mb19zcGV3IgorCisjfiBtc2dpZCAiaW5mbyBsZW5ndGgiCisjfiBtc2dzdHIgImzDpG5nZCBww6UgaW5mbyIKKworI34gbXNnaWQgInRvdGFsIGxlbmd0aCIKKyN+IG1zZ3N0ciAidG90YWwgbMOkbmdkIgorCisjfiBtc2dpZCAiZGF0YSBsZW5ndGgiCisjfiBtc2dzdHIgImzDpG5nZCBww6UgZGF0YSIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIGRwa2ctZGViIHRvIGV4dHJhY3QgZmllbGQgdmFsdWUiCisjfiBtc2dzdHIgImt1bmRlIGludGUga8O2cmEgZHBrZy1kZWIgZsO2ciBhdHQgZXh0cmFoZXJhIGbDpGx0dsOkcmRlIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHN0YXQgJXM6ICVzIgorI34gbXNnc3RyICJrdW5kZSBpbnRlIHRhIHN0YXR1cyBww6UgJXM6ICVzIgorCisjfiBtc2dpZCAic2xhdmUgbmFtZSAlcyBkdXBsaWNhdGVkIgorI34gbXNnc3RyICJzbGF2bmFtbmV0ICVzIGR1cGxpY2VyYXQiCisKKyN+IG1zZ2lkICJzbGF2ZSBsaW5rICVzIGR1cGxpY2F0ZWQiCisjfiBtc2dzdHIgInNsYXZsw6Rua2VuICVzIGR1cGxpY2VyYWQiCisKKyN+IG1zZ2lkICIlZCByZXF1ZXN0ZWQgY29udHJvbCBjb21wb25lbnRzIGFyZSBtaXNzaW5nIgorI34gbXNnc3RyICIlZCBlZnRlcmZyw6VnYWRlIGtvbnRyb2xsa29tcG9uZW50ZXIgc2FrbmFzIgorCisjfiBtc2dpZCAiY2F0IChkYXRhKSIKKyN+IG1zZ3N0ciAiY2F0IChkYXRhKSIKKworI34gbXNnaWQgImZhaWxlZCB0byBvcGVuIHBpcGUgZGVzY3JpcHRvciBgMScgaW4gcGFzdGUiCisjfiBtc2dzdHIgImt1bmRlIGludGUgYW5zbHV0YSByw7ZyaWRlbnRpZmllcmFyZSBcIjFcIiBpIFwia2xpc3RyYSBpblwiIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHdyaXRlIHRvIGd6aXAgLWRjIgorI34gbXNnc3RyICJrdW5kZSBpbnRlIHNrcml2YSB0aWxsIGd6aXAgLWRjIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGNsb3NlIGd6aXAgLWRjIgorI34gbXNnc3RyICJrdW5kZSBpbnRlIHN0w6RuZ2EgZ3ppcCAtZGMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gc3lzY2FsbCBsc2VlayB0byBmaWxlcyBhcmNoaXZlIHBvcnRpb24iCisjfiBtc2dzdHIgImt1bmRlIGludGUgdXRmw7ZyYSBzeXN0ZW1hbnJvcGV0IFwibHNlZWtcIiBmw7ZyIGZpbGFya2l2ZGVsZW4iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gZXhlYyBta3NwbGl0IgorI34gbXNnc3RyICJrdW5kZSBpbnRlIGvDtnJhIG1rc3BsaXQiCisKKyN+IG1zZ2lkICIiCisjfiAiXG4iCisjfiAiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorI34gIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uIgorI34gbXNnc3RyICIiCisjfiAiXG4iCisjfiAiQ29weXJpZ2h0IMKpIDE5OTUgSWFuIEphY2tzb24uXG4iCisjfiAiQ29weXJpZ2h0IMKpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLiIKKworI34gbXNnaWQgInR3byBjb21tYW5kcyBzcGVjaWZpZWQ6ICVzIGFuZCAtLSVzIgorI34gbXNnc3RyICJ0dsOlIGtvbW1hbmRvbiBhbmdpdm5hOiAlcyBvY2ggLS0lcyIKKworI34gbXNnaWQgIi0tJXMgbmVlZHMgYSBkaXZlcnQtdG8gYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tJXMgYmVow7Z2ZXIgZXR0IG3DpWwgc29tIGFyZ3VtZW50IgorCisjfiBtc2dpZCAiLS0lcyBuZWVkcyBhIDxwYWNrYWdlPiBhcmd1bWVudCIKKyN+IG1zZ3N0ciAiLS0lcyBiZWjDtnZlciBldHQgPHBha2V0PiBzb20gYXJndW1lbnQiCisKKyN+IG1zZ2lkICJjYW5ub3Qgb3BlbiBkaXZlcnNpb25zOiAlcyIKKyN+IG1zZ3N0ciAia3VuZGUgaW50ZSDDtnBwbmEgb21kaXJpZ2VyaW5nc2ZpbDogJXMiCisKKyN+IG1zZ2lkICJtaXNzaW5nIGFsdG5hbWUiCisjfiBtc2dzdHIgInNha25hdCBhbHRlcm5hdGl2dCBuYW1uIgorCisjfiBtc2dpZCAibWlzc2luZyBwYWNrYWdlIgorI34gbXNnc3RyICJzYWtuYXQgcGFrZXQiCisKKyN+IG1zZ2lkICJpbnRlcm5hbCBlcnJvciAtIGJhZCBtb2RlIGAlcyciCisjfiBtc2dzdHIgImludGVybnQgZmVsIC0gZmVsIGzDpGdlIFwiJXNcIiIKKworI34gbXNnaWQgImNhbm5vdCBzdGF0IG9sZCBuYW1lIGAlcyc6ICVzIgorI34gbXNnc3RyICJrYW4gaW50ZSB0YSBzdGF0dXMgcMOlIGdhbW1hbHQgbmFtbiBcIiVzXCI6ICVzIgorCisjfiBtc2dpZCAicmVuYW1lOiByZW5hbWUgYCVzJyB0byBgJXMnOiAlcyIKKyN+IG1zZ3N0ciAibmFtbmJ5dGU6IG5hbW5ieXRlIHDDpSBcIiVzXCIgdGlsbCBcIiVzXCI6ICVzIgorCisjfiBtc2dpZCAiY3JlYXRlIGRpdmVyc2lvbnMtbmV3OiAlcyIKKyN+IG1zZ3N0ciAic2thcGEgZGl2ZXJzaW9ucy1uZXc6ICVzIgorCisjfiBtc2dpZCAid3JpdGUgZGl2ZXJzaW9ucy1uZXc6ICVzIgorI34gbXNnc3RyICJza3JpdmEgbnkgZGl2ZXJzaW9ucy1uZXc6ICVzIgorCisjfiBtc2dpZCAiY2xvc2UgZGl2ZXJzaW9ucy1uZXc6ICVzIgorI34gbXNnc3RyICJzdMOkbmdhIGRpdmVyc2lvbnMtbmV3OiAlcyIKKworI34gbXNnaWQgImNyZWF0ZSBuZXcgZGl2ZXJzaW9ucy1vbGQ6ICVzIgorI34gbXNnc3RyICJza2FwYSBueSBkaXZlcnNpb25zLW9sZDogJXMiCisKKyN+IG1zZ2lkICJpbnN0YWxsIG5ldyBkaXZlcnNpb25zOiAlcyIKKyN+IG1zZ3N0ciAiaW5zdGFsbGVyYSBueSBkaXZlcnNpb25zOiAlcyIKKworI34gbXNnaWQgImludGVybmFsIGVycm9yOiAlcyBjb3JydXB0OiAlcyIKKyN+IG1zZ3N0ciAiaW50ZXJudCBmZWw6ICVzIHRyYXNpZzogJXMiCisKKyN+IG1zZ2lkICJkcGtnLWRlYiAtIGVycm9yOiAlcyAoYCVzJykgZG9lc24ndCBjb250YWluIGFueSBkaWdpdHNcbiIKKyN+IG1zZ3N0ciAiZHBrZy1kZWIgLSBmZWw6ICVzIChcIiVzXCIpIGlubmVow6VsbGVyIGluZ2Egc2lmZnJvclxuIgorCisjfiBtc2dpZCAiKHVwc3RyZWFtKSB2ZXJzaW9uIgorI34gbXNnc3RyICIodXBwc3Ryw7Ztcy0pdmVyc2lvbiIKKworI34gbXNnaWQgIkRlYmlhbiByZXZpc2lvbiIKKyN+IG1zZ3N0ciAiRGViaWFudmVyc2lvbiIKKworI34gbXNnaWQgIiVkIGVycm9ycyBpbiBjb250cm9sIGZpbGUiCisjfiBtc2dzdHIgIiVkIGZlbCBpIGtvbnRyb2xsZmlsZW4iCisKKyN+IG1zZ2lkICJmYWlsZWQgaW4gYnVmZmVyX3dyaXRlKGZkKSAoJWksIHJldD0lbGkpOiAlcyIKKyN+IG1zZ3N0ciAibWlzc2x5Y2thZGVzIGkgYnVmZmVyX3dyaXRlKGhhbmR0YWcpICglaSwgcmV0PSVsaSk6ICVzIHMiCisKKyN+IG1zZ2lkICJlb2YgaW4gYnVmZmVyX3dyaXRlKHN0cmVhbSk6ICVzIgorI34gbXNnc3RyICJmaWxzbHV0IGkgYnVmZmVyX3dyaXRlKHN0csO2bSk6ICVzIgorCisjfiBtc2dpZCAiZXJyb3IgaW4gYnVmZmVyX3dyaXRlKHN0cmVhbSk6ICVzIgorI34gbXNnc3RyICJmZWwgaSBidWZmZXJfd3JpdGUoc3Ryw7ZtKTogJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgaW4gYnVmZmVyX3JlYWQoZmQpOiAlcyIKKyN+IG1zZ3N0ciAia3VuZGUgaW50ZSBsw6RzYSBpIGJ1ZmZlcl9yZWFkKGhhbmR0YWcpOiAlcyIKKworI34gbXNnaWQgImVycm9yIGluIGJ1ZmZlcl9yZWFkKHN0cmVhbSk6ICVzIgorI34gbXNnc3RyICJmZWwgaSBidWZmZXJfcmVhZChzdHLDtm0pOiAlcyIKKworI34gbXNnaWQgIiVzIHJldHVybmVkIGVycm9yIGV4aXQgc3RhdHVzICVkIgorI34gbXNnc3RyICIlcyBnYXYgZmVsa29kICVkIgorCisjfiBtc2dpZCAiJXMga2lsbGVkIGJ5IHNpZ25hbCAoJXMpJXMiCisjfiBtc2dzdHIgIiVzIGTDtmRhZCBhdiBzaWduYWwgKCVzKSVzIgorCisjfiBtc2dpZCAiIgorI34gIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSB2ZXJzaW9uIDIgb3JcbiIKKyN+ICJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIkRldHRhIMOkciBmcmkgcHJvZ3JhbXZhcmE7IFNlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMlxuIgorI34gImVsbGVyIHNlbmFyZSBmw7ZyIGtvcGllcmluZ3N2aWxsa29yLiBEZXQgZmlubnMgSU5HRU4gZ2FyYW50aS5cbiIKKworI34gbXNnaWQgIiIKKyN+ICJcbiIKKyN+ICJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgdmVyc2lvbiAyIG9yXG4iCisjfiAibGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJcbiIKKyN+ICJEZXR0YSDDpHIgZnJpIHByb2dyYW12YXJhOyBTZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDJcbiIKKyN+ICJlbGxlciBzZW5hcmUgZsO2ciBrb3BpZXJpbmdzdmlsbGtvci4gRGV0IGZpbm5zIElOR0VOIGdhcmFudGkuXG4iCisKKyN+IG1zZ2lkICIlczogZmFpbGVkIHRvIGV4ZWMgJyVzICVzJyIKKyN+IG1zZ3N0ciAiJXM6IGt1bmRlIGludGUga8O2cmEgXCIlcyAlc1wiIgorCisjfiBtc2dpZCAiJXM6IGludGVybmFsIGd6aXAgZXJyb3I6IHJlYWQ6IGAlcyciCisjfiBtc2dzdHIgIiVzOiBpbnRlcm50IGd6aXAtZmVsOiBsw6RzbmluZzogXCIlc1wiIgorCisjfiBtc2dpZCAiJXM6IGludGVybmFsIGd6aXAgZXJyb3I6IHdyaXRlOiBgJXMnIgorI34gbXNnc3RyICIlczogaW50ZXJudCBnemlwLWZlbDogc2tyaXZuaW5nOiBcIiVzXCIiCisKKyN+IG1zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCBlcnJvcjogcmVhZCglaSkgIT0gd3JpdGUoJWkpIgorI34gbXNnc3RyICIlczogaW50ZXJudCBnemlwLWZlbDogbMOkcyglaSkgIT0gc2tyaXYoJWkpIgorCisjfiBtc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIGVycm9yOiByZWFkOiBgJXMnIgorI34gbXNnc3RyICIlczogaW50ZXJudCBiemlwMi1mZWw6IGzDpHNuaW5nOiBcIiVzXCIiCisKKyN+IG1zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgZXJyb3I6IHdyaXRlOiBgJXMnIgorI34gbXNnc3RyICIlczogaW50ZXJudCBiemlwMi1mZWw6IHNrcml2bmluZzogXCIlc1wiIgorCisjfiBtc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIGVycm9yOiByZWFkKCVpKSAhPSB3cml0ZSglaSkiCisjfiBtc2dzdHIgIiVzOiBpbnRlcm50IGJ6aXAyLWZlbDogbMOkcyglaSkgIT0gc2tyaXYoJWkpIgorCisjfiBtc2dpZCAiRG9uJ3QgZm9yZ2V0IHRvIGZvcmVncm91bmQgKGBmZycpIHRoaXMgcHJvY2VzcyB3aGVuIHlvdSdyZSBkb25lICFcbiIKKyN+IG1zZ3N0ciAiIgorI34gIkdsw7ZtIGludGUgYXR0IGZseXR0YSBwcm9jZXNzZW4gdGlsbCBmw7ZyZ3J1bmRlbiAoXCJmZ1wiKSBuw6RyIGR1IMOkciBrbGFyIVxuIgorCisjfiBtc2dpZCAiIgorI34gIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgb3JcbiIKKyN+ICJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKKyN+ICJTZWUgJXMgLS1saWNlbnNlIGZvciBjb3B5cmlnaHQgYW5kIGxpY2Vuc2UgZGV0YWlscy5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIkRldHRhIHByb2dyYW0gw6RyIGZyaSBwcm9ncmFtdmFyYS4gU2UgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAiCisjfiAiMlxuIgorI34gImVsbGVyIHNlbmFyZSBmw7ZyIGtvcGllcmluZ3N2aWxsa29yLiBEZXQgZmlubnMgSU5HRU4gZ2FyYW50aS5cbiIKKyN+ICJTZSAlcyAtLWxpY2VuY2UgZsO2ciB1cHBob3ZzcsOkdHRzbGlnYSBvY2ggbGljZW5zdGVrbmlza2EgZGV0YWxqZXIuXG4iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gZ2V0IHVuaXF1ZSBmaWxlbmFtZSBmb3IgY29udHJvbCBpbmZvIgorI34gbXNnc3RyICJrdW5kZSBpbnRlIGbDpSBldHQgdW5pa3QgZmlsbmFtbiBmw7ZyIGtvbnRyb2xsaW5mb3JtYXRpb25lbiIKKworI34gbXNnaWQgIkRlYmlhbiBgJXMnIHBhY2thZ2UgbWFuYWdlbWVudCBwcm9ncmFtIHF1ZXJ5IHRvb2xcbiIKKyN+IG1zZ3N0ciAiRGViaWFuIFwiJXNcIiBmcsOlZ2V2ZXJrdHlnIGbDtnIgcGFrZXRoYW50ZXJpbmdzcHJvZ3JhbW1ldFxuIgorCisjfiBtc2dpZCAiIgorI34gIlVzZSAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgcXVlcnlpbmcgcGFja2FnZXM7XG4iCisjfiAiVXNlIC0tbGljZW5zZSBmb3IgY29weXJpZ2h0IGxpY2Vuc2UgYW5kIGxhY2sgb2Ygd2FycmFudHkgKEdOVSBHUEwpLiIKKyN+IG1zZ3N0ciAiIgorI34gIkFudsOkbmQgLS1oZWxwIGbDtnIgaGrDpGxwIG9tIGF0dCBmcsOlZ2EgZWZ0ZXIgcGFrZXQ7XG4iCisjfiAiQW52w6RuZCAtLWxpY2Vuc2UgZsO2ciB1cHBob3ZzcsOkdHRzbGlnIGxpY2VucyBvY2ggYXZzYWtuYWQgYXYgZ2FyYW50aSAoR05VICIKKyN+ICJHUEwpLiIKKworI34gbXNnaWQgImZhaWxlZCB0byBjaG93biAlczogJXMiCisjfiBtc2dzdHIgImt1bmRlIGludGUgYnl0YSDDpGdhcmUgJXM6ICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGNobW9kICVzOiAlcyIKKyN+IG1zZ3N0ciAia3VuZGUgaW50ZSBieXRhIGzDpGdlICVzOiAlcyIKKworI34gbXNnaWQgImZhaWxlZCB0byBmb3JrIGZvciBjbGVhbnVwIgorI34gbXNnc3RyICJrdW5kZSBpbnRlIGbDtnJncmVuYSBmw7ZyIHVwcHJlbnNuaW5nIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHdhaXQgZm9yIHJtIGNsZWFudXAiCisjfiBtc2dzdHIgImt1bmRlIGludGUgdsOkbnRhIHDDpSBybSBmw7ZyIHVwcHJlbnNuaW5nIgorCisjfiBtc2dpZCAicm0gY2xlYW51cCBmYWlsZWQsIGNvZGUgJWRcbiIKKyN+IG1zZ3N0ciAidXBwcmVuc25pbmcgbWVkIHJtIG1pc3NseWNrYWRlcywga29kICVkXG4iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBybSAtcmYiCisjfiBtc2dzdHIgImt1bmRlIGludGUga8O2cmEgcm0gLXJmIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHJlYWQgYGNvbnRyb2wnIChpbiBgJS4yNTVzJykiCisjfiBtc2dzdHIgImt1bmRlIGludGUgbMOkc2EgXCJjb250cm9sXCIgKGkgXCIlLjI1NXNcIikiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gc2VlayBiYWNrIgorI34gbXNnc3RyICJrdW5kZSBpbnRlIHPDtmthIHRpbGxiYWthIgorCisjfiBtc2dpZCAid2FpdCBmb3Igc2hlbGwgZmFpbGVkIgorI34gbXNnc3RyICJrdW5kZSBpbnRlIHbDpG50YSBww6Ugc2thbGV0IgorCisjfiBtc2dpZCAicmVhZCBlcnJvciBpbiBkaXZlcnNpb25zIFtpXSIKKyN+IG1zZ3N0ciAibMOkc2ZlbCBpIG9tZGlyaWdlcmluZ3NmaWwgW2ldIgorCisjfiBtc2dpZCAid2FpdCBmb3IgZHBrZy1zcGxpdCBmYWlsZWQiCisjfiBtc2dzdHIgImt1bmRlIGludGUgdsOkbnRhIHDDpSBkcGtnLXNwbGl0IgorCisjfiBtc2dpZCAidW5rbm93biBkYXRhIHR5cGUgYCVpJyBpbiBidWZmZXJfd3JpdGVcbiIKKyN+IG1zZ3N0ciAib2vDpG5kIGRhdGF0eXAgXCIlaVwiIGkgYnVmZmVyX3dyaXRlXG4iCisKKyN+IG1zZ2lkICJ1bmtub3duIGRhdGEgdHlwZSBgJWknIGluIGJ1ZmZlcl9yZWFkXG4iCisjfiBtc2dzdHIgIm9rw6RuZCBkYXRhdHlwIFwiJWlcIiBpIGJ1ZmZlcl9yZWFkXG4iCisKKyN+IG1zZ2lkICJ1bmxpbmsiCisjfiBtc2dzdHIgImF2bMOkbmthIgorCisjIEF2w6RuZHMgaSAiZmFpbGVkIHRvICVzIGAlJS4yNTVzJyIgbmVkYW4KKyN+IG1zZ2lkICJjaG1vZCIKKyN+IG1zZ3N0ciAiYW5yb3BhIGNobW9kIgorCisjfiBtc2dpZCAiZGVsZXRlIgorI34gbXNnc3RyICJ0YSBib3J0IgorCisjfiBtc2dpZCAiZmFpbGVkIHRvICVzICclLjI1NXMnIgorI34gbXNnc3RyICJtaXNzbHlja2FkZXMgbWVkIGF0dCAlcyBcIiUuMjU1c1wiIgorCisjfiBtc2dpZCAiY2Fubm90IHJlbW92ZSBmaWxlIGAlLjI1MHMnIgorI34gbXNnc3RyICJrYW4gaW50ZSB0YSBib3J0IGZpbGVuIFwiJS4yNTBzXCIiCisKKyN+IG1zZ2lkICIiCisjfiAiXG4iCisjfiAiQ29weXJpZ2h0IChDKSAyMDAwIFdpY2hlcnQgQWtrZXJtYW4uIgorI34gbXNnc3RyICIiCisjfiAiXG4iCisjfiAiQ29weXJpZ2h0IMKpIDIwMDAgV2ljaGVydCBBa2tlcm1hbi4iCisKKyN+IG1zZ2lkICJubyBtb2RlIHNwZWNpZmllZCIKKyN+IG1zZ3N0ciAiaW5nZXQgbMOkZ2UgYW5nYXZzIgorCisjfiBtc2dpZCAiaWxsZWdhbCB1c2VyICVzIgorI34gbXNnc3RyICJvZ2lsdGlnIGFudsOkbmRhcmUgJXMiCisKKyN+IG1zZ2lkICJub24tZXhpc3RpbmcgdXNlciAlcyIKKyN+IG1zZ3N0ciAiaWNrZS1leGlzdGVyYW5kZSBhbnbDpG5kYXJlICVzIgorCisjfiBtc2dpZCAiaWxsZWdhbCBncm91cCAlcyIKKyN+IG1zZ3N0ciAib2dpbHRpZyBncnVwcCAlcyIKKworI34gbXNnaWQgIm5vbi1leGlzdGluZyBncm91cCAlcyIKKyN+IG1zZ3N0ciAiaWNrZS1leGlzdGVyYW5kZSBncnVwcCAlcyIKKworI34gbXNnaWQgImlsbGVnYWwgbW9kZSAlcyIKKyN+IG1zZ3N0ciAib2dpbHRpZ3QgbMOkZ2UgJXMiCisKKyN+IG1zZ2lkICJhYm9ydGluZyIKKyN+IG1zZ3N0ciAiYXZicnl0ZXIiCisKKyN+IG1zZ2lkICJjYW5ub3Qgb3BlbiBzdGF0b3ZlcnJpZGU6ICVzIgorI34gbXNnc3RyICJrdW5kZSBpbnRlIMO2cHBuYSBzdGF0b3ZlcnJpZGU6ICVzIgorCisjfiBtc2dpZCAiTXVsdGlwbGUgb3ZlcnJpZGVzIGZvciBcIiVzXCIsIGFib3J0aW5nIgorI34gbXNnc3RyICJGbGVyYSDDtnZlcnNrcml2bmluZ2FyIGbDtnIgXCIlc1wiLCBhdmJyeXRlciIKKworI34gbXNnaWQgImZhaWxlZCB3cml0ZSBkdXJpbmcgaGFzaHJlcG9ydCIKKyN+IG1zZ3N0ciAibWlzc2x5Y2thZGVzIG1lZCBhdHQgc2tyaXZhIHVuZGVyIFwiaGFzaHJlcG9ydFwiIgorCisjfiBtc2dpZCAiY29uZmlndXJhdGlvbiBlcnJvcjogdW5rbm93biBvcHRpb24gJXMiCisjfiBtc2dzdHIgImtvbmZpZ3VyZXJpbmdzZmVsOiBva8OkbmQgZmxhZ2dhICVzIgorCisjfiBtc2dpZCAiY29uZmlndXJhdGlvbiBlcnJvcjogJXMgZG9lcyBub3QgdGFrZSBhIHZhbHVlIgorI34gbXNnc3RyICJrb25maWd1cmF0aW9uc2ZlbDogJXMgdGFyIGluZ2V0IHbDpHJkZSIKKworI34gbXNnaWQgInVuZXhlY3B0ZWQgZW5kIG9mIGxpbmUgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCisjfiBtc2dzdHIgIm92w6RudGF0IHJhZHNsdXQgaSBzdGF0b3ZlcnJpZGUtZmlsIgorCisjfiBtc2dpZCAiLS1jaGVjay1zdXBwb3J0ZWQgdGFrZXMgbm8gYXJndW1lbnRzIgorI34gbXNnc3RyICItLWNoZWNrLXN1cHBvcnRlZCB0YXIgaW5nZXQgYXJndW1lbnQiCisKKyN+IG1zZ2lkICItLWZvcmdldC1vbGQtdW5hdmFpbCB0YWtlcyBubyBhcmd1bWVudHMiCisjfiBtc2dzdHIgIi0tZm9yZ2V0LW9sZC11bmF2YWlsIHRhciBpbmdldCBhcmd1bWVudCIKKworI34gbXNnaWQgIiIKKyN+ICJcbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDE5OTQsMTk5NSBJYW4gSmFja3Nvbi4iCisjfiBtc2dzdHIgIiIKKyN+ICJcbiIKKyN+ICJDb3B5cmlnaHQgwqkgMTk5NCwxOTk1IElhbiBKYWNrc29uLiIKKworI34gbXNnaWQgIiIKKyN+ICJVc2FnZTogJXMgWzxvcHRpb25zPiAuLi5dIFstLV0gPGZpbGVuYW1lPlxuIgorI34gIlxuIgorI34gIk9wdGlvbnM6XG4iCisjfiAiICAtLXNlY3Rpb24gPHJlZ2V4cD4gPHRpdGxlPlxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHB1dCB0aGUgbmV3IGVudHJ5IGluIHRoZSA8cmVnZXg+IG1hdGNoZWQgIgorI34gInNlY3Rpb25cbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICBvciBjcmVhdGUgYSBuZXcgb25lIHdpdGggPHRpdGxlPiBpZiBub24tIgorI34gImV4aXN0ZW50LlxuIgorI34gIiAgLS1tZW51ZW50cnk9PHRleHQ+ICAgICAgIHNldCB0aGUgbWVudSBlbnRyeS5cbiIKKyN+ICIgIC0tZGVzY3JpcHRpb249PHRleHQ+ICAgICBzZXQgdGhlIGRlc2NyaXB0aW9uIHRvIGJlIHVzZWQgaW4gdGhlIG1lbnUgIgorI34gImVudHJ5LlxuIgorI34gIiAgLS1pbmZvLWZpbGU9PHBhdGg+ICAgICAgIHNwZWNpZnkgaW5mbyBmaWxlIHRvIGluc3RhbGwgaW4gdGhlICIKKyN+ICJkaXJlY3RvcnkuXG4iCisjfiAiICAtLWRpci1maWxlPTxwYXRoPiAgICAgICAgc3BlY2lmeSBmaWxlIG5hbWUgb2YgaW5mbyBkaXJlY3RvcnkgZmlsZS5cbiIKKyN+ICIgIC0taW5mb2Rpcj08ZGlyZWN0b3J5PiAgICBzYW1lIGFzICctLWRpci1maWxlPTxkaXJlY3Rvcnk+L2RpcicuXG4iCisjfiAiICAtLWluZm8tZGlyPTxkaXJlY3Rvcnk+ICAgbGlrZXdpc2UuXG4iCisjfiAiICAtLWtlZXAtb2xkICAgICAgICAgICAgICAgZG8gbm90IHJlcGxhY2UgZW50cmllcyBub3IgcmVtb3ZlIGVtcHR5IG9uZXMuXG4iCisjfiAiICAtLXJlbW92ZSAgICAgICAgICAgICAgICAgcmVtb3ZlIHRoZSBlbnRyeSBzcGVjaWZpZWQgYnkgPGZpbGVuYW1lPiAiCisjfiAiYmFzZW5hbWUuXG4iCisjfiAiICAtLXJlbW92ZS1leGFjdGx5ICAgICAgICAgcmVtb3ZlIHRoZSBleGFjdCA8ZmlsZW5hbWU+IGVudHJ5LlxuIgorI34gIiAgLS10ZXN0ICAgICAgICAgICAgICAgICAgIGVuYWJsZXMgdGVzdCBtb2RlIChubyBhY3Rpb25zIHRha2VuKS5cbiIKKyN+ICIgIC0tZGVidWcgICAgICAgICAgICAgICAgICBlbmFibGVzIGRlYnVnIG1vZGUgKHNob3cgbW9yZSBpbmZvcm1hdGlvbikuXG4iCisjfiAiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgZG8gbm90IHNob3cgb3V0cHV0IG1lc3NhZ2VzLlxuIgorI34gIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisjfiAiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIkFudsOkbmRuaW5nOiAlcyBbPGZsYWdnb3I+IC4uLl0gWy0tXSA8ZmlsbmFtbj5cbiIKKyN+ICJcbiIKKyN+ICJGbGFnZ29yOlxuIgorI34gIiAgLS1zZWN0aW9uIDxyZWd1dHRyPiA8dGl0ZWw+XG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgbMOkZ2dlciBkZW4gbnlhIHBvc3RlbiBpIGF2ZGVsbmluZ2VuIHNvbSAiCisjfiAidHLDpGZmYXMgYXZcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVndXR0cj4gZWxsZXIgc2thcGFyIGVuIG55IG1lZCA8dGl0ZWw+IG9tICIKKyN+ICJkZW4gaW50ZVxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbm5zLlxuIgorI34gIiAgLS1tZW51ZW50cnk9PHRleHQ+ICAgICAgIHPDpHR0IG1lbnl2YWxldC5cbiIKKyN+ICIgIC0tZGVzY3JpcHRpb249PHRleHQ+ICAgICBzw6R0dCBiZXNrcml2bmluZ2VuIHNvbSBza2FsbCBhbnbDpG5kYXMgaSAiCisjfiAibWVueXZhbGV0LlxuIgorI34gIiAgLS1pbmZvLWZpbGU9PHPDtmt2w6RnPiAgICAgYW5nZSBpbmZvZmlsIGF0dCBpbnN0YWxsZXJhIGkga2F0YWxvZ2VuLlxuIgorI34gIiAgLS1kaXItZmlsZT08c8O2a3bDpGc+ICAgICAgYW5nZSBmaWxuYW1uIHRpbGwgZW4gZGlyZWN0b3J5LWZpbC5cbiIKKyN+ICIgIC0taW5mb2Rpcj08a2F0YWxvZz4gICAgICBzYW1tYSBzb20gXCItLWRpci1maWxlPTxrYXRhbG9nPi9kaXJcIi5cbiIKKyN+ICIgIC0taW5mby1kaXI9PGthdGFsb2c+ICAgICBkaXRvLlxuIgorI34gIiAgLS1rZWVwLW9sZCAgICAgICAgICAgICAgIGVyc8OkdHQgaW50ZSBwb3N0ZXIgZWxsZXIgdGEgYm9ydCB0b21tYS5cbiIKKyN+ICIgIC0tcmVtb3ZlICAgICAgICAgICAgICAgICB0YSBib3J0IHBvc3RlbiBzb20gYW5nZXMgbWVkIGJhc25hbW5ldCAiCisjfiAiPGZpbG5hbW4+LlxuIgorI34gIiAgLS1yZW1vdmUtZXhhY3RseSAgICAgICAgIHRhIGJvcnQgZGVuIGV4YWt0YSBwb3N0ZW4gPGZpbG5hbW4+LlxuIgorI34gIiAgLS10ZXN0ICAgICAgICAgICAgICAgICAgIGFrdGl2ZXJhciB0ZXN0bMOkZ2UgKGluZ2EgZnVua3Rpb25lciB1dGbDtnJzKS5cbiIKKyN+ICIgIC0tZGVidWcgICAgICAgICAgICAgICAgICBha3RpdmVyYXIgZmVsc8O2a25pbmdzbMOkZ2UgKHZpc2FyIG1lciAiCisjfiAiaW5mb3JtYXRpb24pLlxuIgorI34gIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHZpc2EgaW50ZSB1dGRhdGFtZWRkZWxhbmRlbi5cbiIKKyN+ICIgIC0taGVscCAgICAgICAgICAgICAgICAgICB2aXNhIGRldHRhIGhqw6RscG1lZGRlbGFuZGUuXG4iCisjfiAiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgdmlzYSB2ZXJzaW9uc251bW1lci5cbiIKKworI34gbXNnaWQgImNvdWxkIG5vdCBvcGVuIHN0ZGVyciBmb3Igb3V0cHV0ISAlcyIKKyN+IG1zZ3N0ciAia3VuZGUgaW50ZSDDtnBwbmEgc3RkZXJyIGbDtnIgdXRkYXRhISAlcyIKKworI34gbXNnaWQgIiVzOiAtLXNlY3Rpb24gbmVlZHMgdHdvIG1vcmUgYXJncyIKKyN+IG1zZ3N0ciAiJXM6IC0tc2VjdGlvbiBiZWjDtnZlciB5dHRlcmxpZ2FyZSB0dsOlIGFyZ3VtZW50IgorCisjfiBtc2dpZCAiJXM6IG9wdGlvbiAtLSVzIGlzIGRlcHJlY2F0ZWQgKGlnbm9yZWQpIgorI34gbXNnc3RyICIlczogZmxhZ2dhbiAtLSVzIGF2csOlZHMgKGlnbm9yZXJhZCkiCisKKyN+IG1zZ2lkICIlczogdW5rbm93biBvcHRpb24gYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IG9rw6RuZCBmbGFnZ2EgXCIlc1wiIgorCisjfiBtc2dpZCAiJXM6IHRvbyBtYW55IGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiJXM6IGbDtnIgbcOlbmdhIGFyZ3VtZW50IgorCisjfiBtc2dpZCAiJXM6IC0tc2VjdGlvbiBpZ25vcmVkIHdpdGggLS1yZW1vdmUiCisjfiBtc2dzdHIgIiVzOiAtLXNlY3RpbyBpZ25vcmVyYXMgdmlkIC0tcmVtb3ZlIgorCisjfiBtc2dpZCAiJXM6IC0tZGVzY3JpcHRpb24gaWdub3JlZCB3aXRoIC0tcmVtb3ZlIgorI34gbXNnc3RyICIlczogLS1kZXNjcmlwdGlvbiBpZ25vcmVyYXMgdmlkIC0tcmVtb3ZlIgorCisjfiBtc2dpZCAiJXM6IHRlc3QgbW9kZSAtIGRpciBmaWxlIHdpbGwgbm90IGJlIHVwZGF0ZWQiCisjfiBtc2dzdHIgIiVzOiB0ZXN0bMOkZ2UgLSBkaXItZmlsZW4gdXBwZGF0ZXJhcyBpbnRlIgorCisjfiBtc2dpZCAiJXM6IHdhcm5pbmcsIGlnbm9yaW5nIGNvbmZ1c2luZyBJTkZPLURJUi1FTlRSWSBpbiBmaWxlLiIKKyN+IG1zZ3N0ciAiJXM6IHZhcm5pbmcsIGlnbm9yZXJhciBmw7ZydmlycmFuZGUgSU5GTy1ESVItRU5UUlkgaSBmaWxlbi4iCisKKyN+IG1zZ2lkICJpbnZhbGlkIGluZm8gZW50cnkiCisjfiBtc2dzdHIgIm9naWx0aWcgaW5mby1wb3N0IgorCisjfiBtc2dpZCAiIgorI34gIlxuIgorI34gIk5vIGBTVEFSVC1JTkZPLURJUi1FTlRSWScgYW5kIG5vIGBUaGlzIGZpbGUgZG9jdW1lbnRzJy5cbiIKKyN+ICIlczogdW5hYmxlIHRvIGRldGVybWluZSBkZXNjcmlwdGlvbiBmb3IgYGRpcicgZW50cnkgLSBnaXZpbmcgdXBcbiIKKyN+IG1zZ3N0ciAiIgorI34gIlxuIgorI34gIlwiU1RBUlQtSU5GTy1ESVItRU5UUllcIiBvY2ggXCJUaGlzIGZpbGUgZG9jdW1lbnRzXCIgc2FrbmFzLlxuIgorI34gIiVzOiBrYW4gaW50ZSBoaXR0YSBiZXNrcml2bmluZyBmw7ZyIFwiZGlyXCItcG9zdCAtIGdlciB1cHBcbiIKKworI34gbXNnaWQgIiVzOiBubyBmaWxlICVzLCByZXRyaWV2aW5nIGJhY2t1cCBmaWxlICVzLiIKKyN+IG1zZ3N0ciAiJXM6IGZpbGVuICVzIGZpbm5zIGludGUsIGjDpG10YXIgc8Oka2VyaGV0c2tvcGlhICVzLiIKKworI34gbXNnaWQgIiVzOiBjb3B5aW5nICVzIHRvICVzIGZhaWxlZCwgZ2l2aW5nIHVwOiAlcyIKKyN+IG1zZ3N0ciAiJXM6IG1pc3NseWNrYWRlcyBrb3BpZXJhICVzIHRpbGwgJXMsIGdlciB1cHA6ICVzIgorCisjfiBtc2dpZCAiJXM6IG5vIGJhY2t1cCBmaWxlICVzIGF2YWlsYWJsZSwgcmV0cmlldmluZyBkZWZhdWx0IGZpbGUuIgorI34gbXNnc3RyICIlczogc8Oka2VyaGV0c2tvcGlhICVzIHNha25hcywgaMOkbXRhciBzdGFuZGFyZGZpbGVuLiIKKworI34gbXNnaWQgIiVzOiBubyBiYWNrdXAgZmlsZSAlcyBhdmFpbGFibGUuIgorI34gbXNnc3RyICIlczogc8Oka2VyaGV0c2tvcGlhICVzIHNha25hcy4iCisKKyN+IG1zZ2lkICIlczogbm8gZGVmYXVsdCBmaWxlICVzIGF2YWlsYWJsZSwgZ2l2aW5nIHVwLiIKKyN+IG1zZ3N0ciAiJXM6IHN0YW5kYXJkZmlsZW4gJXMgc2FrbmFzLCBnZXIgdXBwLiIKKworI34gbXNnaWQgIiVzOiBmYWlsZWQgdG8gbG9jayBkaXIgZm9yIGVkaXRpbmchICVzIgorI34gbXNnc3RyICIlczoga3VuZGUgaW50ZSBsw6VzYSBrYXRhbG9nIGbDtnIgcmVkaWdlcmluZyEgJXMiCisKKyN+IG1zZ2lkICJ0cnkgZGVsZXRpbmcgJXM/IgorI34gbXNnc3RyICJmw7Zyc8O2a2EgdGEgYm9ydCAlcz8iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gb3BlbiAlczogJXMiCisjfiBtc2dzdHIgImt1bmRlIGludGUgw7ZwcG5hICVzOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byBjbG9zZSAlcyBhZnRlciByZWFkOiAlcyIKKyN+IG1zZ3N0ciAia3VuZGUgaW50ZSBzdMOkbmdhICVzIGVmdGVyIGzDpHNuaW5nOiAlcyIKKworI34gbXNnaWQgIiVzOiBleGlzdGluZyBlbnRyeSBmb3IgYCVzJyBub3QgcmVwbGFjZWQiCisjfiBtc2dzdHIgIiVzOiBudXZhcmFuZGUgcG9zdCBmw7ZyIFwiJXNcIiBpbnRlIGVyc2F0dCIKKworI34gbXNnaWQgIiVzOiByZXBsYWNpbmcgZXhpc3RpbmcgZGlyIGVudHJ5IGZvciBgJXMnIgorI34gbXNnc3RyICIlczogZXJzw6R0dGVyIGV4aXN0ZXJhbmRlIGRpci1wb3N0IGbDtnIgXCIlc1wiIgorCisjfiBtc2dpZCAiJXM6IGNyZWF0aW5nIG5ldyBzZWN0aW9uIGAlcyciCisjfiBtc2dzdHIgIiVzOiBza2FwYXIgbnkgc2VrdGlvbiBcIiVzXCIiCisKKyN+IG1zZ2lkICIlczogbm8gc2VjdGlvbnMgeWV0LCBjcmVhdGluZyBNaXNjZWxsYW5lb3VzIHNlY3Rpb24gdG9vLiIKKyN+IG1zZ3N0ciAiJXM6IGluZ2Egc2VrdGlvbmVyIMOkbm51LCBza2FwYXIgw6R2ZW4gTWlzY2VsbGFuZW91cy1zZWt0aW9uLiIKKworI34gbXNnaWQgIiVzOiBubyBzZWN0aW9uIHNwZWNpZmllZCBmb3IgbmV3IGVudHJ5LCBwbGFjaW5nIGF0IGVuZCIKKyN+IG1zZ3N0ciAiJXM6IGluZ2VuIHNla3Rpb24gYW5naXZlbiBmw7ZyIG55IHBvc3QsIGzDpGdnZXIgdGlsbCBpIHNsdXRldCIKKworI34gbXNnaWQgIiVzOiBkZWxldGluZyBlbnRyeSBgJXMgLi4uJyIKKyN+IG1zZ3N0ciAiJXM6IHRhciBib3J0IHBvc3QgXCIlcyAuLi5cIiIKKworI34gbXNnaWQgIiVzOiBlbXB0eSBzZWN0aW9uIGAlcycgbm90IHJlbW92ZWQiCisjfiBtc2dzdHIgIiVzOiB0b20gc2VrdGlvbiBcIiVzXCIgaW50ZSBib3J0dGFnZW4iCisKKyN+IG1zZ2lkICIlczogZGVsZXRpbmcgZW1wdHkgc2VjdGlvbiBgJXMnIgorI34gbXNnc3RyICIlczogdGFyIGJvcnQgdG9tIHNla3Rpb24gXCIlc1wiIgorCisjfiBtc2dpZCAiJXM6IG5vIGVudHJ5IGZvciBmaWxlIGAlcycgYW5kIG1lbnUgZW50cnkgYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IGluZ2VuIHBvc3QgZsO2ciBmaWxlbiBcIiVzXCIgb2NoIG1lbnlwb3N0ZW4gXCIlc1wiIgorCisjfiBtc2dpZCAiJXM6IG5vIGVudHJ5IGZvciBmaWxlIGAlcyciCisjfiBtc2dzdHIgIiVzOiBpbmdlbiBwb3N0IGbDtnIgZmlsZW4gXCIlc1wiIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGJhY2t1cCBvbGQgJXMsIGdpdmluZyB1cDogJXMiCisjfiBtc2dzdHIgImt1bmRlIGludGUgc8Oka2VyaGV0c2tvcGllcmEgZ2FtbWFsICVzLCBnZXIgdXBwOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyAlczogJXMiCisjfiBtc2dzdHIgImt1bmRlIGludGUgaW5zdGFsbGVyYSBueSAlczogJXMiCisKKyN+IG1zZ2lkICIlczogY291bGQgbm90IGJhY2t1cCAlcyBpbiAlczogJXMiCisjfiBtc2dzdHIgIiVzOiBrdW5kZSBpbnRlIHPDpGtlcmhldHNrb3BpZXJhICVzIGkgJXM6ICVzIgorCisjfiBtc2dpZCAiJXM6IHdhcm5pbmcgLSB1bmFibGUgdG8gdW5sb2NrICVzOiAlcyIKKyN+IG1zZ3N0ciAiJXM6IHZhcm5pbmcgLSBrdW5kZSBpbnRlIGzDpXNhIHVwcCAlczogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcmVhZCAlczogJWQiCisjfiBtc2dzdHIgImt1bmRlIGludGUgbMOkc2EgJXM6ICVkIgorCisjfiBtc2dpZCAiZGJnOiAlcyIKKyN+IG1zZ3N0ciAiZGJnOiAlcyIKKworI34gbXNnaWQgImZhaWxlZCB0byBvcGVuIHRtcGZpbGUgKGNvbnRyb2wpLCAlcyIKKyN+IG1zZ3N0ciAia3VuZGUgaW50ZSDDtnBwbmEgdGVtcG9yw6RyZmlsIChrb250cm9sbGRlbCksICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIG9wZW4gdG1wZmlsZSAoZGF0YSksICVzIgorI34gbXNnc3RyICJrdW5kZSBpbnRlIMO2cHBuYSB0ZW1wb3LDpHJmaWwgKGRhdGFkZWwpLCAlcyIKKworI34gbXNnaWQgImludmFsaWQgbnVtYmVyIGZvciAtLWNvbW1hbmQtZmQiCisjfiBtc2dzdHIgIm9naWx0aWd0IHRhbCBmw7ZyIC0tY29tbWFuZC1mZCIKKworI34gbXNnaWQgInVuYWJsZSB0byByZXdpbmQgYXQgc3RhcnQgb2YgdnNucHJpbnRmIgorI34gbXNnc3RyICJrdW5kZSBpbnRlIGfDpSB0aWxsYmFrYSB0aWxsIGLDtnJqYW4gaSB2c25wcmludGYiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gdHJ1bmNhdGUgaW4gdnNucHJpbnRmIgorI34gbXNnc3RyICJrdW5kZSBpbnRlIGtsaXBwYSBpIHZzbnByaW50ZiIKKworI34gbXNnaWQgIndyaXRlIGVycm9yIGluIHZzbnByaW50ZiIKKyN+IG1zZ3N0ciAic2tyaXZmZWwgaSB2c25wcmludGYiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gc3RhdCBpbiB2c25wcmludGYiCisjfiBtc2dzdHIgImt1bmRlIGludGUgdGEgc3RhdHVzIGkgdnNucHJpbnRmIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHJld2luZCBpbiB2c25wcmludGYiCisjfiBtc2dzdHIgImt1bmRlIGludGUgZ8OlIHRpbGxiYWthIGkgdnNucHJpbnRmIgorCisjfiBtc2dpZCAicmVhZCBlcnJvciBpbiB2c25wcmludGYgdHJ1bmNhdGVkIgorI34gbXNnc3RyICJsw6RzZmVsIGkgdnNucHJpbnRmIGtsaXBwdGVzIgorCisjfiBtc2dpZCAiU3lzdGVtIGVycm9yIG5vLiVkIgorI34gbXNnc3RyICJTeXN0ZW1mZWwgbnIgJWQiCisKKyN+IG1zZ2lkICJTaWduYWwgbm8uJWQiCisjfiBtc2dzdHIgIlNpZ25hbCBuciAlZCIKKworI34gbXNnaWQgImRwa2c6IHdhcm5pbmcgLSAlcyByZXR1cm5lZCBlcnJvciBleGl0IHN0YXR1cyAlZFxuIgorI34gbXNnc3RyICJkcGtnOiB2YXJuaW5nIC0gJXMgcmV0dXJuZXJhZGUgZmVsc3RhdHVzICVkXG4iCisKKyN+IG1zZ2lkICJkcGtnOiB3YXJuaW5nIC0gJXMga2lsbGVkIGJ5IHNpZ25hbCAoJXMpJXNcbiIKKyN+IG1zZ3N0ciAiZHBrZzogdmFybmluZyAtICVzIGTDtmRhZGVzIGF2IHNpZ25hbCAoJXMpJXNcbiIKKworI34gbXNnaWQgImZhaWxlZCB0byByZWFkIGAlcycgYXQgbGluZSAlZCIKKyN+IG1zZ3N0ciAia3VuZGUgaW50ZSDDtnBwbmEgXCIlc1wiIHDDpSByYWQgJWQiCisKKyN+IG1zZ2lkICJwYXJzZSBlcnJvciwgaW4gZmlsZSBgJS4yNTVzJyBuZWFyIGxpbmUgJWQiCisjfiBtc2dzdHIgInRvbGtuaW5nc2ZlbCwgaSBmaWwgXCIlLjI1NXNcIiBuw6RyYSByYWQgJWQiCisKKyN+IG1zZ2lkICIgcGFja2FnZSBgJS4yNTVzJyIKKyN+IG1zZ3N0ciAiIHBha2V0IFwiJS4yNTVzXCIiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gcmVhbGxvYyBmb3IgdmFyaWFibGUgYnVmZmVyIgorI34gbXNnc3RyICJrdW5kZSBpbnRlIG9tYWxsb2tlcmEgKHJlYWxsb2MpIGbDtnIgdmFyaWFiZWxidWZmZXJ0IgorCisjfiBtc2dpZCAicHJvY2Vzc19hcmNoaXZlIC4uLiAgYWxyZWFkeSBkaXNhcHBlYXJlZCAhIgorI34gbXNnc3RyICJwcm9jZXNzX2FyY2hpdmUgLi4uICBoYXIgcmVkYW4gZsO2cnN2dW5uaXQhIgorCisjIEtvbGxhcyEKKyMgLyogV2UgbmVlZCB0byBhZHZhbmNlIHRoZSB0YXIgZmlsZSB0byB0aGUgbmV4dCBvYmplY3QsIHNvIHJlYWQgdGhlCisjICAqIGZpbGUgZGF0YSBhbmQgc2V0IGl0IHRvIG9ibGl2aW9uLgorIyAgKi8KKyN+IG1zZ2lkICJnb2JibGUgcmVwbGFjZWQgZmlsZSBgJS4yNTVzJyIKKyN+IG1zZ3N0ciAiaG9wcGFkZSDDtnZlciBlcnNhdHQgZmlsIFwiJS4yNTVzXCIiCisKKyN+IG1zZ2lkICJkcGtnOiAlczogd2FybmluZyAtIGZhaWxlZCB0byByZW1vdmUgYCUuMjUwcyc6ICVzXG4iCisjfiBtc2dzdHIgImRwa2c6ICVzOiB2YXJuaW5nIC0gbWlzc2x5Y2thZGVzIG1lZCBhdHQgdGEgYm9ydCBcIiUuMjUwc1wiOiAlc1xuIgorCisjfiBtc2dpZCAiLS1hdWRpdCBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudHMiCisjfiBtc2dzdHIgIi0tYXVkaXQgdGFyIGluZ2V0IGFyZ3VtZW50IgorCisjfiBtc2dpZCAiLS15ZXQtdG8tdW5wYWNrIGRvZXMgbm90IHRha2UgYW55IGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiLS15ZXQtdG8tdW5wYWNrIHRhciBpbmdldCBhcmd1bWVudCIKKworI34gbXNnaWQgIi0tYXNzZXJ0LSogZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnRzIgorI34gbXNnc3RyICItLWFzc2VydC0qIHRhciBpbmdldCBhcmd1bWVudCIKKworI34gbXNnaWQgIi0tcHJlZGVwLXBhY2thZ2UgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tcHJlZGVwLXBhY2thZ2UgdGFyIGluZ2V0IGFyZ3VtZW50IgorCisjfiBtc2dpZCAiLS1wcmludC1hcmNoaXRlY3R1cmUgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tcHJpbnQtYXJjaGl0ZWN0dXJlIHRhciBpbmdldCBhcmd1bWVudCIKKworI34gbXNnaWQgInVuYWJsZSB0byBzdGF0IGluc3RhbGxlZCAlcyBzY3JpcHQgYCUuMjUwcyciCisjfiBtc2dzdHIgImt1bmRlIGludGUgdGEgc3RhdHVzIHDDpSBpbnN0YWxsZXJhdCAlcy1za3JpcHQgXCIlLjI1MHNcIiIKKworI34gbXNnaWQgInVuYWJsZSB0byBzdGF0IG5ldyAlcyBzY3JpcHQgYCUuMjUwcyciCisjfiBtc2dzdHIgImt1bmRlIGludGUgdGEgc3RhdHVzIHDDpSBueXR0ICVzLXNrcmlwdCBcIiUuMjUwc1wiIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGV4ZWN1dGUgbmV3ICVzIgorI34gbXNnc3RyICJrdW5kZSBpbnRlIGvDtnJhIG55ICVzIgorCisjfiBtc2dpZCAiZHBrZzogd2FybmluZyAtIHVuYWJsZSB0byBzdGF0ICVzIGAlLjI1MHMnOiAlc1xuIgorI34gbXNnc3RyICJkcGtnOiB2YXJuaW5nIC0ga3VuZGUgaW50ZSB0YSBzdGF0dXMgcMOlICVzIFwiJS4yNTBzXCI6ICVzXG4iCisKKyN+IG1zZ2lkICItLXNldC1zZWxlY3Rpb25zIGRvZXMgbm90IHRha2UgYW55IGFyZ3VtZW50IgorI34gbXNnc3RyICItLXNldC1zZWxlY3Rpb24gdGFyIGluZ2V0IGFyZ3VtZW50IgorCisjfiBtc2dpZCAiLS1jbGVhci1zZWxlY3Rpb25zIGRvZXMgbm90IHRha2UgYW55IGFyZ3VtZW50IgorI34gbXNnc3RyICItLWNsZWFyLXNlbGVjdGlvbnMgdGFyIGluZ2V0IGFyZ3VtZW50IgorCisjfiBtc2dpZCAiLS1idWlsZCBuZWVkcyBhIGRpcmVjdG9yeSBhcmd1bWVudCIKKyN+IG1zZ3N0ciAiLS1idWlsZCBiZWjDtnZlciBldHQga2F0YWxvZ2FyZ3VtZW50IgorCisjfiBtc2dpZCAiIgorI34gImRwa2ctZGViOiB3YXJuaW5nLCBub3QgY2hlY2tpbmcgY29udGVudHMgb2YgY29udHJvbCBhcmVhLlxuIgorI34gImRwa2ctZGViOiBidWlsZGluZyBhbiB1bmtub3duIHBhY2thZ2UgaW4gYCVzJy5cbiIKKyN+IG1zZ3N0ciAiIgorI34gImRwa2ctZGViOiB2YXJuaW5nLCBrb250cm9sbGVyYXIgaW50ZSBpbm5laMOlbGxldCBpIGtvbnRyb2xsb21yw6VkZXQuXG4iCisjfiAiZHBrZy1kZWI6IGJ5Z2dlciBldHQgb2vDpG50IHBha2V0IGkgXCIlc1wiLlxuIgorCisjfiBtc2dpZCAiSW50ZXJuYWwgZXJyb3IsIGNvbXByZXNzX3R5cGUgYCVpJyB1bmtub3duISIKKyN+IG1zZ3N0ciAiSW50ZXJudCBmZWwsIGNvbXByZXNzX3R5cGUgXCIlaVwiIG9rw6RuZCEiCisKKyN+IG1zZ2lkICItLWpvaW4gcmVxdWlyZXMgb25lIG9yIG1vcmUgcGFydCBmaWxlIGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiLS1qb2luIGtyw6R2ZXIgZW4gZWxsZXIgZmxlcmEgZGVsZmlsZXIgc29tIGFyZ3VtZW50IgorCisjfiBtc2dpZCAiLS1saXN0cSBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudHMiCisjfiBtc2dzdHIgIi0tbGlzdHEgdGFyIGluZ2V0IGFyZ3VtZW50IgorCisjfiBtc2dpZCAiIgorI34gIlxuIgorI34gIkNvcHlyaWdodCAoQykgMTk5NiBLaW0tTWluaCBLYXBsYW4uIgorI34gbXNnc3RyICIiCisjfiAiXG4iCisjfiAiQ29weXJpZ2h0IMKpIDE5OTYgS2ltLU1pbmggS2FwbGFuLiIKKworI34gbXNnaWQgIiIKKyN+ICJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gWy0tXSBbPGRpcm5hbWU+XVxuIgorI34gIlxuIgorI34gIk9wdGlvbnM6XG4iCisjfiAiICAtLXVuc2FmZSAgICAgc2V0IHNvbWUgYWRkaXRpb25hbCBwb3NzaWJseSB1c2VmdWwgb3B0aW9ucy5cbiIKKyN+ICIgICAgICAgICAgICAgICB3YXJuaW5nOiB0aGlzIG9wdGlvbiBtYXkgZ2FyYmxlIGFuIG90aGVyd2lzZSBjb3JyZWN0ICIKKyN+ICJmaWxlLlxuIgorI34gIiAgLS1oZWxwICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisjfiAiICAtLXZlcnNpb24gICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIkFudsOkbmRuaW5nOiAlcyBbPGZsYWdnYT4gLi4uXSBbLS1dIFs8a2F0YWxvZ25hbW4+XVxuIgorI34gIlxuIgorI34gIkZsYWdnb3I6XG4iCisjfiAiICAtLXVuc2FmZSAgICAgdsOkbGogbsOlZ3JhIHl0dGVybGlnYXJlIG3DtmpsaWdlbiBhbnbDpG5kYmFyYSBhbHRlcm5hdGl2LlxuIgorI34gIiAgICAgICAgICAgICAgIHZhcm5pbmc6IGFsdGVybmF0aXZldCBrYW4gZsO2cnN0w7ZyYSBlbiBpIMO2dnJpZ3Qga29ycmVrdCAiCisjfiAiZmlsLlxuIgorI34gIiAgLS1oZWxwICAgICAgIHZpc2EgZGV0dGEgaGrDpGxwbWVkZGVsYW5kZS5cbiIKKyN+ICIgIC0tdmVyc2lvbiAgICB2aXNhIHZlcnNpb25zbnVtbWVyLlxuIgorCisjfiBtc2dpZCAidHJ5IGRlbGV0aW5nICVzIgorI34gbXNnc3RyICJ0ZXN0YSBhdHQgdGEgYm9ydCAlcyIKKworI34gbXNnaWQgImZhaWxlZCB0byBpbnN0YWxsICVzOyBpdCB3aWxsIGJlIGxlZnQgYXMgJXM6ICVzIgorI34gbXNnc3RyICIiCisjfiAibWlzc2x5Y2thZGVzIG1lZCBhdHQgaW5zdGFsbGVyYSAlczsgZGVuIGtvbW1lciBsw6RtbmFzIGt2YXIgc29tICVzOiAlcyIKKworI34gbXNnaWQgIiVzOiB1bmFibGUgdG8gdW5sb2NrICVzOiAlcyIKKyN+IG1zZ3N0ciAiJXM6IGt1bmRlIGludGUgbMOlc2EgdXBwICVzOiAlcyIKKworI34gbXNnaWQgIiVzIC0gc3RhdHVzIGlzICVzLiIKKyN+IG1zZ3N0ciAiJXMgLSBzdGF0dXMgw6RyICVzLiIKKworI34gbXNnaWQgIiBsaW5rIHVucmVhZGFibGUgLSAlcyIKKyN+IG1zZ3N0ciAiIGzDpG5rIG9sw6RzbGlnIC0gJXMiCisKKyN+IG1zZ2lkICIiCisjfiAid2FybmluZzogJXMgaXMgc3VwcG9zZWQgdG8gYmUgYSBzeW1saW5rIHRvICVzLCBcbiIKKyN+ICJvciBub25leGlzdGVudDsgaG93ZXZlciwgcmVhZGxpbmsgZmFpbGVkOiAlcyIKKyN+IG1zZ3N0ciAiIgorI34gInZhcm5pbmc6ICVzIHNrdWxsZSB2YXJhIGVuIHN5bWJvbGlzayBsw6RuayB0aWxsICVzLFxuIgorI34gImVsbGVyIGludGUgZmlubmFzOyByZWFkbGluayBtaXNzbHlja2FkZXMgZG9jazogJXMiCisKKyN+IG1zZ2lkICJMZWF2aW5nICVzICglcykgcG9pbnRpbmcgdG8gJXMuIgorI34gbXNnc3RyICJMw6RtbmFyICVzICglcykgYXR0IHBla2EgcMOlICVzLiIKKworI34gbXNnaWQgIlVwZGF0aW5nICVzICglcykgdG8gcG9pbnQgdG8gJXMuIgorI34gbXNnc3RyICJVcHBkYXRlcmFyICVzICglcykgYXR0IHBla2EgcMOlICVzLiIKKworI34gbXNnaWQgIlJlbW92aW5nICVzICglcyksIG5vdCBhcHByb3ByaWF0ZSB3aXRoICVzLiIKKyN+IG1zZ3N0ciAiVGFyIGJvcnQgJXMgKCVzKSwgaW50ZSBsw6RtcGxpZyBtZWQgJXMuIgorCisjfiBtc2dpZCAiIgorI34gIkNoZWNraW5nIGF2YWlsYWJsZSB2ZXJzaW9ucyBvZiAlcywgdXBkYXRpbmcgbGlua3MgaW4gJXMgLi4uXG4iCisjfiAiKFlvdSBtYXkgbW9kaWZ5IHRoZSBzeW1saW5rcyB0aGVyZSB5b3Vyc2VsZiBpZiBkZXNpcmVkIC0gc2VlIGBtYW4gbG4nLikiCisjfiBtc2dzdHIgIiIKKyN+ICJLb250cm9sbGVyYXIgdGlsbGfDpG5nbGlnYSB2ZXJzaW9uZXIgYXYgJXMsIHVwcGRhdGVyYXIgbMOkbmthciBpICVzIC4uLlxuIgorI34gIihEdSBrYW4gw6RuZHJhIGRlIHN5bWJvbGlza2EgbMOkbmthcm5hIHNqw6RsdiBvbSBkdSB2aWxsIC0gc2UgXCJtYW4gbG5cIi4pIgorCisjfiBtc2dpZCAic2xhdmUgbGluayBuYW1lICVzIGR1cGxpY2F0ZWQiCisjfiBtc2dzdHIgInNsYXZsw6Rua25hbW5ldCAlcyBkdXBsaWNlcmF0IgorCisjfiBtc2dpZCAiUmVjb3ZlcmluZyBmcm9tIHByZXZpb3VzIGZhaWxlZCB1cGRhdGUgb2YgJXMgLi4uIgorI34gbXNnc3RyICLDhXRlcmjDpG10YXIgZnLDpW4gdGlkaWdhcmUgbWlzc2x5Y2thZCB1cHBkYXRlcmluZyBhdiAlcyAuLi4iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gb3BlbiAlcyBmb3Igd3JpdGU6ICVzIgorI34gbXNnc3RyICJrdW5kZSBpbnRlIMO2cHBuYSAlcyBmw7ZyIHNrcml2bmluZzogJXMiCisKKyN+IG1zZ2lkICJMYXN0IHBhY2thZ2UgcHJvdmlkaW5nICVzICglcykgcmVtb3ZlZCwgZGVsZXRpbmcgaXQuIgorI34gbXNnc3RyICIiCisjfiAiRGV0IHNpc3RhIHBha2V0ZXQgc29tIHRpbGxoYW5kYWjDtmxsICVzICglcykgYXZpbnN0YWxsZXJhZGVzLCB0YXIgYm9ydC4iCisKKyN+IG1zZ2lkICIiCisjfiAiVGhlcmUgaXMgb25seSAxIHByb2dyYW0gd2hpY2ggcHJvdmlkZXMgJXNcbiIKKyN+ICIoJXMpLiBOb3RoaW5nIHRvIGNvbmZpZ3VyZS5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIkVuZGFzdCBldHQgcHJvZ3JhbSB0aWxsaGFuZGFow6VsbGVyICVzXG4iCisjfiAiKCVzKS4gSW5nZXQgYXR0IGtvbmZpZ3VyZXJhLlxuIgorCisjfiBtc2dpZCAiIgorI34gIlRoZXJlIGFyZSAlcyBhbHRlcm5hdGl2ZXMgd2hpY2ggcHJvdmlkZSBgJXMnLlxuIgorI34gIlxuIgorI34gIiAgU2VsZWN0aW9uICAgIEFsdGVybmF0aXZlXG4iCisjfiAiLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiIKKyN+IG1zZ3N0ciAiIgorI34gIiVzIGFsdGVybmF0aXYgdGlsbGhhbmRhaMOlbGxlciBcIiVzXCIuXG4iCisjfiAiXG4iCisjfiAiICAgIFVydmFsICAgICAgQWx0ZXJuYXRpdlxuIgorI34gIi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4iCisKKyN+IG1zZ2lkICJlcnJvciBvciBlb2YgcmVhZGluZyAlcyBmb3IgJXMgKCVzKSIKKyN+IG1zZ3N0ciAiZmVsIGVsbGVyIGZpbHNsdXQgdmlkIGzDpHNuaW5nIGF2ICVzIGbDtnIgJXMgKCVzKSIKKworI34gbXNnaWQgIm1pc3NpbmcgbmV3bGluZSBhZnRlciAlcyIKKyN+IG1zZ3N0ciAic2FrbmF0IG55cmFkc3RlY2tlbiBlZnRlciAlcyIKKworI34gbXNnaWQgIlNlcmlvdXMgcHJvYmxlbTogJXMiCisjfiBtc2dzdHIgIkFsbHZhcmxpZ3QgcHJvYmxlbTogJXMiCisKKyN+IG1zZ2lkICJkaXZlcnNpb25zIGZpbGUgaGFzIHRvby1sb25nIGxpbmUgb3IgRU9GIFtpXSIKKyN+IG1zZ3N0ciAib21kaXJpZ2VyaW5nc2ZpbGVuIGhhciBlbiBmw7ZyIGzDpW5nIHJhZCBlbGxlciBmaWxzbHV0IFtpXSIKKworI34gbXNnaWQgInJlYWQgZXJyb3IgaW4gZGl2ZXJzaW9ucyBbaWldIgorI34gbXNnc3RyICJsw6RzZmVsIGkgb21kaXJpZ2VyaW5nc2ZpbCBbaWldIgorCisjfiBtc2dpZCAidW5leHBlY3RlZCBFT0YgaW4gZGl2ZXJzaW9ucyBbaWldIgorI34gbXNnc3RyICJvdsOkbnRhdCBmaWxzbHV0IGkgb21kaXJpZ2VyaW5nc2ZpbCBbaWldIgorCisjfiBtc2dpZCAiZmdldHMgZ2F2ZSBhbiBlbXB0eSBzdHJpbmcgZnJvbSBkaXZlcnNpb25zIFtpaV0iCisjfiBtc2dzdHIgImZnZXRzIGdhdiBlbiB0b20gc3Ryw6RuZyBmcsOlbiBvbWRpcmlnZXJpbmdzZmlsIFtpaV0iCisKKyN+IG1zZ2lkICJkaXZlcnNpb25zIGZpbGUgaGFzIHRvby1sb25nIGxpbmUgb3IgRU9GIFtpaV0iCisjfiBtc2dzdHIgIm9tZGlyaWdlcmluZ3NmaWxlbiBoYXIgZW4gZsO2ciBsw6VuZyByYWQgZWxsZXIgZmlsc2x1dCBbaWldIgorCisjfiBtc2dpZCAicmVhZCBlcnJvciBpbiBkaXZlcnNpb25zIFtpaWldIgorI34gbXNnc3RyICJsw6RzZmVsIGkgb21kaXJpZ2VyaW5nc2ZpbCBbaWlpXSIKKworI34gbXNnaWQgInVuZXhwZWN0ZWQgRU9GIGluIGRpdmVyc2lvbnMgW2lpaV0iCisjfiBtc2dzdHIgIm92w6RudGF0IGZpbHNsdXQgaSBvbWRpcmlnZXJpbmdzZmlsIFtpaWldIgorCisjfiBtc2dpZCAiZmdldHMgZ2F2ZSBhbiBlbXB0eSBzdHJpbmcgZnJvbSBkaXZlcnNpb25zIFtpaWldIgorI34gbXNnc3RyICJmZ2V0cyBnYXYgZW4gdG9tIHN0csOkbmcgZnLDpW4gb21kaXJpZ2VyaW5nc2ZpbCBbaWlpXSIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvcG8vdGguZ21vIGIvZHBrZy0xLjE2LjEuMS9wby90aC5nbW8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjJhYWE0MQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvcG8vdGguZ21vCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvcG8vdGgucG8gYi9kcGtnLTEuMTYuMS4xL3BvL3RoLnBvCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjgyMWZjMDgKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3BvL3RoLnBvCkBAIC0wLDAgKzEsNzA4NyBAQAorIyBUaGFpIHRyYW5zbGF0aW9uIG9mIGRwa2cuCisjIENvcHlyaWdodCAoQykgMjAwNy0yMDEwIFNvZnR3YXJlIGluIHRoZSBQdWJsaWMgSW50ZXJlc3QsIEluYy4KKyMgVGhpcyBmaWxlIGlzIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBzYW1lIGxpY2Vuc2UgYXMgdGhlIGRwa2cgcGFja2FnZS4KKyMgVGhlcHBpYWsgS2Fyb29uYm9vbnlhbmFuIDx0aGVwQGxpbnV4LnRoYWkubmV0PiwgMjAwNy0yMDEwLgorIworbXNnaWQgIiIKK21zZ3N0ciAiIgorIlByb2plY3QtSWQtVmVyc2lvbjogZHBrZ1xuIgorIlJlcG9ydC1Nc2dpZC1CdWdzLVRvOiBkZWJpYW4tZHBrZ0BsaXN0cy5kZWJpYW4ub3JnXG4iCisiUE9ULUNyZWF0aW9uLURhdGU6IDIwMTEtMTAtMTQgMDc6MTErMDIwMFxuIgorIlBPLVJldmlzaW9uLURhdGU6IDIwMTAtMTItMTkgMTQ6MjgrMDcwMFxuIgorIkxhc3QtVHJhbnNsYXRvcjogVGhlcHBpdGFrIEthcm9vbmJvb255YW5hbiA8dGhlcEBsaW51eC50aGFpLm5ldD5cbiIKKyJMYW5ndWFnZS1UZWFtOiBUaGFpIDx0aGFpLWwxMG5AZ29vZ2xlZ3JvdXBzLmNvbT5cbiIKKyJMYW5ndWFnZTogdGhcbiIKKyJNSU1FLVZlcnNpb246IDEuMFxuIgorIkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD1VVEYtOFxuIgorIkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXRcbiIKKyJQbHVyYWwtRm9ybXM6IG5wbHVyYWxzPTE7IHBsdXJhbD0wO1xuIgorCisjOiBsaWIvZHBrZy9hci5jOjY2CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgY2hhcmFjdGVyICclYycgaW4gYXJjaGl2ZSAnJS4yNTBzJyBtZW1iZXIgJyUuMTZzJyBzaXplIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2FyLmM6ODEgbGliL2Rwa2cvYXIuYzo5NyBsaWIvZHBrZy9hci5jOjEwOCBsaWIvZHBrZy9hci5jOjExMgorIzogbGliL2Rwa2cvYXIuYzoxMzQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIGZpbGUgJyVzJyIKK21zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4LmA4LiC4Li14Lii4LiZ4LmB4Lif4LmJ4LihICclcyciCisKKyM6IGxpYi9kcGtnL2FyLmM6OTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZ2VuZXJhdGVkIGNvcnJ1cHQgYXIgaGVhZGVyIGZvciAnJXMnIgorbXNnc3RyICLguILguYnguK3guKHguLnguKXguKrguYjguKfguJnguKvguLHguKcgYXIg4Liq4Liz4Lir4Lij4Lix4LiaICclcycg4LiX4Li14LmI4Liq4Lij4LmJ4Liy4LiH4LmE4Lib4LiZ4Lix4LmJ4LiZ4LmE4Lih4LmI4LiW4Li54LiB4LiV4LmJ4Lit4LiHIgorCisjOiBsaWIvZHBrZy9hci5jOjEyMworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgYXIgbWVtYmVyIGZpbGUgKCVzKSIKK21zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiWIGZzdGF0IOC5geC4n+C5ieC4oeC4quC4oeC4suC4iuC4tOC4gSBhciAoJXMpIgorCisjOiBsaWIvZHBrZy9hci5jOjEzMAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGFyIG1lbWJlciBmaWxlICglcykiCittc2dpZCAiYXIgbWVtYmVyIGZpbGUgKCVzKSIKK21zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiWIGZzdGF0IOC5geC4n+C5ieC4oeC4quC4oeC4suC4iuC4tOC4gSBhciAoJXMpIgorCisjOiBsaWIvZHBrZy9idWZmZXIuYzoxOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgb24gYnVmZmVyIGNvcHkgZm9yICVzIgorbXNnc3RyICLguK3guYjguLLguJnguYTguKHguYjguKrguLPguYDguKPguYfguIjguILguJPguLDguKrguLPguYDguJnguLLguJrguLHguJ/guYDguJ/guK3guKPguYzguKrguLPguKvguKPguLHguJogJXMiCisKKyM6IGxpYi9kcGtnL2J1ZmZlci5jOjIxMgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgaW4gd3JpdGUgb24gYnVmZmVyIGNvcHkgZm9yICVzIgorbXNnc3RyICLguYDguILguLXguKLguJnguYTguKHguYjguKrguLPguYDguKPguYfguIjguILguJPguLDguKrguLPguYDguJnguLLguJrguLHguJ/guYDguJ/guK3guKPguYzguKrguLPguKvguKPguLHguJogJXMiCisKKyM6IGxpYi9kcGtnL2J1ZmZlci5jOjIyMAorIywgYy1mb3JtYXQKK21zZ2lkICJzaG9ydCByZWFkIG9uIGJ1ZmZlciBjb3B5IGZvciAlcyIKK21zZ3N0ciAi4Lit4LmI4Liy4LiZ4LiC4LmJ4Lit4Lih4Li54Lil4LmE4Lih4LmI4Lir4Lih4LiU4LiC4LiT4Liw4Liq4Liz4LmA4LiZ4Liy4Lia4Lix4Lif4LmA4Lif4Lit4Lij4LmM4Liq4Liz4Lir4Lij4Lix4LiaICVzIgorCisjOiBsaWIvZHBrZy9idWZmZXIuYzoyODgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byBleGVjIHRhciIKK21zZ2lkICJmYWlsZWQgdG8gc2VlayAlcyIKK21zZ3N0ciAi4LmA4Lij4Li14Lii4LiB4LmD4LiK4LmJIHRhciDguYTguKHguYjguKrguLPguYDguKPguYfguIgiCisKKyM6IGxpYi9kcGtnL2NvbW1hbmQuYzoxNzggbGliL2Rwa2cvY29tbWFuZC5jOjIwNCBzcmMvaGVscC5jOjYyMQorIzogc3JjL3Byb2Nlc3NhcmMuYzo5OCBzcmMvcHJvY2Vzc2FyYy5jOjEzOCBzcmMvcHJvY2Vzc2FyYy5jOjQzMgorIzogc3JjL3Byb2Nlc3NhcmMuYzo4MzkgZHBrZy1kZWIvYnVpbGQuYzo0NTkgZHBrZy1kZWIvYnVpbGQuYzo1MzgKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTYxIGRwa2ctZGViL2V4dHJhY3QuYzozMTcgZHBrZy1kZWIvaW5mby5jOjY1CisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6NjkgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQ1NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZXhlY3V0ZSAlcyAoJXMpIgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguYDguKPguLXguKLguIHguJfguLPguIfguLLguJkgJXMgKCVzKSIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzo4MworIywgYy1mb3JtYXQKK21zZ2lkICIlczogZGVjb21wcmVzc2lvbiIKK21zZ3N0ciAiJXM6IOC4geC4suC4o+C5geC4leC4geC5geC4n+C5ieC4oSIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzo4OQorIywgYy1mb3JtYXQKK21zZ2lkICIlczogY29tcHJlc3Npb24iCittc2dzdHIgIiVzOiDguIHguLLguKPguJrguLXguJrguK3guLHguJQiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTEyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvciBiaW5kaW5nIGlucHV0IHRvIGd6aXAgc3RyZWFtIgorbXNnc3RyICIlczog4LmA4LiB4Li04LiU4LiC4LmJ4Lit4Lic4Li04LiU4Lie4Lil4Liy4LiU4LiC4LiT4Liw4LmA4LiK4Li34LmI4Lit4Lih4LmB4Lif4LmJ4Lih4LiC4Liy4LmA4LiC4LmJ4Liy4LmA4LiC4LmJ4Liy4LiB4Lix4Lia4LiB4Lij4Liw4LmB4Liq4LiC4LmJ4Lit4Lih4Li54LilIGd6aXAiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHJlYWQgZXJyb3I6ICclcyciCittc2dzdHIgIiVzOiDguYDguIHguLTguJTguILguYnguK3guJzguLTguJTguJ7guKXguLLguJTguKDguLLguKLguYPguJnguILguK3guIcgZ3ppcCDguYDguIHguLXguYjguKLguKfguIHguLHguJrguIHguLLguKPguK3guYjguLLguJk6ICclcyciCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTMyIGxpYi9kcGtnL2NvbXByZXNzLmM6MTM2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHdyaXRlIGVycm9yIgorbXNnc3RyICIlczog4LmA4LiB4Li04LiU4LiC4LmJ4Lit4Lic4Li04LiU4Lie4Lil4Liy4LiU4Lig4Liy4Lii4LmD4LiZ4LiC4Lit4LiHIGd6aXAg4LmA4LiB4Li14LmI4Lii4Lin4LiB4Lix4Lia4LiB4Liy4Lij4LmA4LiC4Li14Lii4LiZIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE1MAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZXJyb3IgYmluZGluZyBvdXRwdXQgdG8gZ3ppcCBzdHJlYW0iCittc2dzdHIgIiVzOiDguYDguIHguLTguJTguILguYnguK3guJzguLTguJTguJ7guKXguLLguJTguILguJPguLDguYDguIrguLfguYjguK3guKHguYHguJ/guYnguKHguILguLLguK3guK3guIHguYDguILguYnguLLguIHguLHguJrguIHguKPguLDguYHguKrguILguYnguK3guKHguLnguKUgZ3ppcCIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgcmVhZCBlcnJvciIKK21zZ3N0ciAiJXM6IOC5gOC4geC4tOC4lOC4guC5ieC4reC4nOC4tOC4lOC4nuC4peC4suC4lOC4oOC4suC4ouC5g+C4meC4guC4reC4hyBnemlwIOC5gOC4geC4teC5iOC4ouC4p+C4geC4seC4muC4geC4suC4o+C4reC5iOC4suC4mSIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxNjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgd3JpdGUgZXJyb3I6ICclcyciCittc2dzdHIgIiVzOiDguYDguIHguLTguJTguILguYnguK3guJzguLTguJTguJ7guKXguLLguJTguKDguLLguKLguYPguJnguILguK3guIcgZ3ppcCDguYDguIHguLXguYjguKLguKfguIHguLHguJrguIHguLLguKPguYDguILguLXguKLguJk6ICclcyciCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTgwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHdyaXRlIGVycm9yOiAlcyIKK21zZ3N0ciAiJXM6IOC5gOC4geC4tOC4lOC4guC5ieC4reC4nOC4tOC4lOC4nuC4peC4suC4lOC4oOC4suC4ouC5g+C4meC4guC4reC4hyBnemlwIOC5gOC4geC4teC5iOC4ouC4p+C4geC4seC4muC4geC4suC4o+C5gOC4guC4teC4ouC4mTogJXMiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjIwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvciBiaW5kaW5nIGlucHV0IHRvIGJ6aXAyIHN0cmVhbSIKK21zZ3N0ciAiJXM6IOC5gOC4geC4tOC4lOC4guC5ieC4reC4nOC4tOC4lOC4nuC4peC4suC4lOC4guC4k+C4sOC5gOC4iuC4t+C5iOC4reC4oeC5geC4n+C5ieC4oeC4guC4suC5gOC4guC5ieC4suC5gOC4guC5ieC4suC4geC4seC4muC4geC4o+C4sOC5geC4quC4guC5ieC4reC4oeC4ueC4pSBiemlwMiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIHJlYWQgZXJyb3I6ICclcyciCittc2dzdHIgIiVzOiDguYDguIHguLTguJTguILguYnguK3guJzguLTguJTguJ7guKXguLLguJTguKDguLLguKLguYPguJnguILguK3guIcgYnppcDIg4LmA4LiB4Li14LmI4Lii4Lin4LiB4Lix4Lia4LiB4Liy4Lij4Lit4LmI4Liy4LiZOiAnJXMnIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI0MCBsaWIvZHBrZy9jb21wcmVzcy5jOjI0NCBsaWIvZHBrZy9jb21wcmVzcy5jOjI5NAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgd3JpdGUgZXJyb3IiCittc2dzdHIgIiVzOiDguYDguIHguLTguJTguILguYnguK3guJzguLTguJTguJ7guKXguLLguJTguKDguLLguKLguYPguJnguILguK3guIcgYnppcDIg4LmA4LiB4Li14LmI4Lii4Lin4LiB4Lix4Lia4LiB4Liy4Lij4LmA4LiC4Li14Lii4LiZIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI1OAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZXJyb3IgYmluZGluZyBvdXRwdXQgdG8gYnppcDIgc3RyZWFtIgorbXNnc3RyICIlczog4LmA4LiB4Li04LiU4LiC4LmJ4Lit4Lic4Li04LiU4Lie4Lil4Liy4LiU4LiC4LiT4Liw4LmA4LiK4Li34LmI4Lit4Lih4LmB4Lif4LmJ4Lih4LiC4Liy4Lit4Lit4LiB4LmA4LiC4LmJ4Liy4LiB4Lix4Lia4LiB4Lij4Liw4LmB4Liq4LiC4LmJ4Lit4Lih4Li54LilIGJ6aXAyIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI2NQorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgcmVhZCBlcnJvciIKK21zZ3N0ciAiJXM6IOC5gOC4geC4tOC4lOC4guC5ieC4reC4nOC4tOC4lOC4nuC4peC4suC4lOC4oOC4suC4ouC5g+C4meC4guC4reC4hyBiemlwMiDguYDguIHguLXguYjguKLguKfguIHguLHguJrguIHguLLguKPguK3guYjguLLguJkiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6Mjc1IGxpYi9kcGtnL2NvbXByZXNzLmM6Mjg2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiB3cml0ZSBlcnJvcjogJyVzJyIKK21zZ3N0ciAiJXM6IOC5gOC4geC4tOC4lOC4guC5ieC4reC4nOC4tOC4lOC4nuC4peC4suC4lOC4oOC4suC4ouC5g+C4meC4guC4reC4hyBiemlwMiDguYDguIHguLXguYjguKLguKfguIHguLHguJrguIHguLLguKPguYDguILguLXguKLguJk6ICclcyciCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjgyCittc2dpZCAidW5leHBlY3RlZCBiemlwMiBlcnJvciIKK21zZ3N0ciAi4LmA4LiB4Li04LiU4LiC4LmJ4Lit4Lic4Li04LiU4Lie4Lil4Liy4LiU4LiX4Li14LmI4LmE4Lih4LmI4LiE4Liy4LiU4Lir4Lih4Liy4Lii4LiC4Lit4LiHIGJ6aXAyIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjY4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1cGRhdGVzIGRpcmVjdG9yeSBjb250YWlucyBmaWxlIGAlLjI1MHMnIHdob3NlIG5hbWUgaXMgdG9vIGxvbmcgKGxlbmd0aD0lZCwgIgorIm1heD0lZCkiCittc2dzdHIgIuC5hOC4lOC5gOC4o+C4geC4l+C4reC4o+C4teC4m+C4o+C4seC4muC4guC5ieC4reC4oeC4ueC4peC4oeC4teC5geC4n+C5ieC4oSBgJS4yNTBzJyDguIvguLbguYjguIfguIrguLfguYjguK3guKLguLLguKfguYDguIHguLTguJnguYTguJsgKOC4hOC4p+C4suC4oeC4ouC4suC4pz0lZCwg4LiE4LmI4Liy4Liq4Li54LiH4Liq4Li44LiUPSVkKSIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzo3MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidXBkYXRlcyBkaXJlY3RvcnkgY29udGFpbnMgZmlsZXMgd2l0aCBkaWZmZXJlbnQgbGVuZ3RoIG5hbWVzIChib3RoICVkIGFuZCAlZCkiCittc2dzdHIgIuC5hOC4lOC5gOC4o+C4geC4l+C4reC4o+C4teC4m+C4o+C4seC4muC4guC5ieC4reC4oeC4ueC4peC4oeC4teC5geC4n+C5ieC4oeC4i+C4tuC5iOC4h+C4oeC4teC4iuC4t+C5iOC4reC4ouC4suC4p+C5hOC4oeC5iOC5gOC4l+C5iOC4suC4geC4seC4mSAo4LiX4Lix4LmJ4LiHICVkIOC5geC4peC4sCAlZCkiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHNjYW4gdXBkYXRlcyBkaXJlY3RvcnkgYCUuMjU1cyciCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC4leC4o+C4p+C4iOC4guC5ieC4reC4oeC4ueC4peC5hOC4lOC5gOC4o+C4geC4l+C4reC4o+C4teC4m+C4o+C4seC4muC4guC5ieC4reC4oeC4ueC4pWAlLjI1NXMnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVtb3ZlIGluY29ycG9yYXRlZCB1cGRhdGUgZmlsZSAlLjI1NXMiCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC4peC4muC5geC4n+C5ieC4oeC4m+C4o+C4seC4muC4guC5ieC4reC4oeC4ueC4pSAlLjI1NXMg4LiX4Li14LmI4Lij4Lin4Lih4Lit4Lii4Li54LmIIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEyMSBkcGtnLWRlYi9idWlsZC5jOjQ0NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGAlLjI1NXMnIgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguKrguKPguYnguLLguIcgYCUuMjU1cyciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTI1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmaWxsICUuMjUwcyB3aXRoIHBhZGRpbmciCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC5gOC4leC4tOC4oSAlLjI1MHMg4LiU4LmJ4Lin4LiiIHBhZGRpbmciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTI3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCAlLjI1MHMgYWZ0ZXIgcGFkZGluZyIKK21zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiWIGZsdXNoICUuMjUwcyDguKvguKXguLHguIfguIjguLLguIHguYDguJXguLTguKEgcGFkZGluZyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxMjkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNlZWsgdG8gc3RhcnQgb2YgJS4yNTBzIGFmdGVyIHBhZGRpbmciCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC4geC4o+C4reC5hOC4m+C4ouC4seC4h+C4leC5ieC4meC5geC4n+C5ieC4oSAlLjI1MHMg4Lir4Lil4Lix4LiH4LiI4Liy4LiB4LmA4LiV4Li04LihIHBhZGRpbmciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTk1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIGxvY2sgZmlsZSAlcyBmb3IgdGVzdGluZyIKK21zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4LmA4Lib4Li04LiU4LmB4Lif4LmJ4Lih4Lil4LmH4Lit4LiEICVzIOC5gOC4nuC4t+C5iOC4reC4l+C4lOC4quC4reC4miIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyMjEKK21zZ2lkICJ1bmFibGUgdG8gb3Blbi9jcmVhdGUgc3RhdHVzIGRhdGFiYXNlIGxvY2tmaWxlIgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguYDguJvguLTguJQv4Liq4Lij4LmJ4Liy4LiH4LmB4Lif4LmJ4Lih4Lil4LmH4Lit4LiE4Liq4Liz4Lir4Lij4Lix4Lia4LiQ4Liy4LiZ4LiC4LmJ4Lit4Lih4Li54Lil4Liq4LiW4Liy4LiZ4LiwIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjIzMQorbXNnaWQgInlvdSBkbyBub3QgaGF2ZSBwZXJtaXNzaW9uIHRvIGxvY2sgdGhlIGRwa2cgc3RhdHVzIGRhdGFiYXNlIgorbXNnc3RyICLguITguLjguJPguYTguKHguYjguKHguLXguKrguLTguJfguJjguLTguYzguKXguYfguK3guITguJDguLLguJnguILguYnguK3guKHguLnguKXguKrguJbguLLguJnguLDguILguK3guIcgZHBrZyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyMzMKKyMsIGZ1enp5CisjfCBtc2dpZCAidW5hYmxlIHRvIGxvY2sgZHBrZyBzdGF0dXMgZGF0YWJhc2UiCittc2dpZCAiZHBrZyBzdGF0dXMgZGF0YWJhc2UiCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC4peC5h+C4reC4hOC4kOC4suC4meC4guC5ieC4reC4oeC4ueC4peC4quC4luC4suC4meC4sOC4guC4reC4hyBkcGtnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjI1NworbXNnaWQgInJlcXVlc3RlZCBvcGVyYXRpb24gcmVxdWlyZXMgc3VwZXJ1c2VyIHByaXZpbGVnZSIKK21zZ3N0ciAi4LiB4Liy4Lij4LiU4Liz4LmA4LiZ4Li04LiZ4LiB4Liy4Lij4LiX4Li14LmI4Liq4Lix4LmI4LiH4LiV4LmJ4Lit4LiH4Lit4Liy4Lio4Lix4Lii4Liq4Li04LiX4LiY4Li04LmM4Lic4Li54LmJ4LiU4Li54LmB4Lil4Lij4Liw4Lia4LiaIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjI2MgorbXNnaWQgInVuYWJsZSB0byBhY2Nlc3MgZHBrZyBzdGF0dXMgYXJlYSIKK21zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4LmA4LiC4LmJ4Liy4LmD4LiK4LmJ4Lie4Li34LmJ4LiZ4LiX4Li14LmI4Liq4LiW4Liy4LiZ4Liw4LiC4Lit4LiHIGRwa2ciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjY0Cittc2dpZCAib3BlcmF0aW9uIHJlcXVpcmVzIHJlYWQvd3JpdGUgYWNjZXNzIHRvIGRwa2cgc3RhdHVzIGFyZWEiCittc2dzdHIgIuC4geC4suC4o+C4lOC4s+C5gOC4meC4tOC4meC4geC4suC4o+C4l+C4teC5iOC4quC4seC5iOC4h+C4leC5ieC4reC4h+C4reC4suC4qOC4seC4ouC4quC4tOC4l+C4mOC4tOC5jOC4reC5iOC4suC4mS/guYDguILguLXguKLguJnguYPguJnguJ7guLfguYnguJnguJfguLXguYjguKrguJbguLLguJnguLDguILguK3guIcgZHBrZyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozMDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlbW92ZSBteSBvd24gdXBkYXRlIGZpbGUgJS4yNTVzIgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguKXguJrguYHguJ/guYnguKHguJvguKPguLHguJrguILguYnguK3guKHguLnguKUgJS4yNTVzIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM0NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC5gOC4guC4teC4ouC4meC4quC4luC4suC4meC4sOC5g+C4q+C4oeC5iOC4guC4reC4hyBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNDkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJYgZmx1c2gg4Liq4LiW4Liy4LiZ4Liw4LmD4Lir4Lih4LmI4LiC4Lit4LiHIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM1MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gdHJ1bmNhdGUgZm9yIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguJXguLHguJTguJfguYnguLLguKLguYDguJnguLfguYnguK3guKvguLLguKrguJbguLLguJnguLDguYPguKvguKHguYjguILguK3guIcgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzUzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmc3luYyB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiWIGZzeW5jIOC4quC4luC4suC4meC4sOC5g+C4q+C4oeC5iOC4guC4reC4hyBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguJvguLTguJTguKrguJbguLLguJnguLDguYPguKvguKHguYjguILguK3guIcgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzU4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguJXguLTguJTguJXguLHguYnguIfguKrguJbguLLguJnguLDguYPguKvguKHguYjguILguK3guIcgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2Rpci5jOjUwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gcmVhZCBmaWxlZGVzY3JpcHRvciBmbGFncyBmb3IgJS4yNTBzIgorbXNnaWQgInVuYWJsZSB0byBnZXQgZmlsZSBkZXNjcmlwdG9yIGZvciBkaXJlY3RvcnkgJyVzJyIKK21zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4Lit4LmI4Liy4LiZ4LmB4Lif4Lil4LmH4LiB4LiC4Lit4LiHIGZpbGUgZGVzY3JpcHRvciDguKrguLPguKvguKPguLHguJogJS4yNTBzIgorCisjOiBsaWIvZHBrZy9kaXIuYzo1NAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHN5bmMgZmlsZSAnJXMnIgorbXNnaWQgInVuYWJsZSB0byBzeW5jIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJYgc3luYyDguYHguJ/guYnguKEgJyVzJyIKKworIzogbGliL2Rwa2cvZGlyLmM6NjkgbGliL2Rwa2cvZGlyLmM6MTMxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gb3BlbiBmaWxlICclcyciCittc2dpZCAidW5hYmxlIHRvIG9wZW4gZGlyZWN0b3J5ICclcyciCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC5gOC4m+C4tOC4lOC5geC4n+C5ieC4oSAnJXMnIgorCisjOiBsaWIvZHBrZy9kaXIuYzoxMDkgc3JjL2RpdmVydGNtZC5jOjIxOCBkcGtnLXNwbGl0L3NwbGl0LmM6MjAyCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI5MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBmaWxlICclcyciCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC5gOC4m+C4tOC4lOC5geC4n+C5ieC4oSAnJXMnIgorCisjOiBsaWIvZHBrZy9kaXIuYzoxMTEgc3JjL2RpdmVydGNtZC5jOjIzMiBzcmMvZGl2ZXJ0Y21kLmM6Mzc3CisjOiBzcmMvc3RhdGNtZC5jOjIxNyBkcGtnLWRlYi9idWlsZC5jOjU5OCBkcGtnLXNwbGl0L2pvaW4uYzo2NQorIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE4NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTQwNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBmaWxlICclcyciCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4liBzeW5jIOC5geC4n+C5ieC4oSAnJXMnIgorCisjOiBsaWIvZHBrZy9kaXIuYzoxMTMgc3JjL2RpdmVydGNtZC5jOjIzNCBzcmMvZGl2ZXJ0Y21kLmM6Mzc5CisjOiBkcGtnLWRlYi9idWlsZC5jOjYwMCBkcGtnLXNwbGl0L2pvaW4uYzo2NyBkcGtnLXNwbGl0L3F1ZXVlLmM6MTg5CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTMxNCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTQwOAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgZmlsZSAnJXMnIgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguJvguLTguJTguYHguJ/guYnguKEgJyVzJyIKKworIzogbGliL2Rwa2cvZHVtcC5jOjM5NgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgZGV0YWlscyBvZiBgJS41MHMnIHRvIGAlLjI1MHMnIgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguYDguILguLXguKLguJnguKPguLLguKLguKXguLDguYDguK3guLXguKLguJTguILguK3guIcgYCUuNTBzJyDguKXguIfguYPguJkgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0MjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gJyVzJyBmb3Igd3JpdGluZyAlcyBkYXRhYmFzZSIKK21zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4LmA4Lib4Li04LiUICclcycg4LmA4Lie4Li34LmI4Lit4LmA4LiC4Li14Lii4LiZ4LiQ4Liy4LiZ4LiC4LmJ4Lit4Lih4Li54LilICVzIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDI2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgYnVmZmVyaW5nIG9uICVzIGRhdGFiYXNlIGZpbGUiCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC4geC4s+C4q+C4meC4lOC4muC4seC4n+C5gOC4n+C4reC4o+C5jOC4quC4s+C4q+C4o+C4seC4muC5geC4n+C5ieC4oeC4kOC4suC4meC4guC5ieC4reC4oeC4ueC4pSAlcyIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQzOAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgJXMgZGF0YWJhc2UgcmVjb3JkIGFib3V0ICclLjUwcycgdG8gJyUuMjUwcyciCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC5gOC4guC4teC4ouC4meC4o+C4sOC5gOC4muC4teC4ouC4meC4kOC4suC4meC4guC5ieC4reC4oeC4ueC4pSAlcyDguYDguIHguLXguYjguKLguKfguIHguLHguJogJyUuNTBzJyDguKXguIfguYPguJkgJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZsdXNoICVzIGRhdGFiYXNlIHRvICclLjI1MHMnIgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJYgZmx1c2gg4LiQ4Liy4LiZ4LiC4LmJ4Lit4Lih4Li54LilICVzIOC4peC4h+C5g+C4mSAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ0OAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZnN5bmMgJXMgZGF0YWJhc2UgdG8gJyUuMjUwcyciCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4liBmc3luYyDguJDguLLguJnguILguYnguK3guKHguLnguKUgJXMg4Lil4LiH4LmD4LiZICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDUxCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjbG9zZSAnJS4yNTBzJyBhZnRlciB3cml0aW5nICVzIGRhdGFiYXNlIgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguJvguLTguJQgJyUuMjUwcycg4Lir4Lil4Lix4LiH4LiI4Liy4LiB4LmA4LiC4Li14Lii4LiZ4LiQ4Liy4LiZ4LiC4LmJ4Lit4Lih4Li54LilICVzIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDU1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBsaW5rICclLjI1MHMnIHRvICclLjI1MHMnIGZvciBiYWNrdXAgb2YgJXMgZGF0YWJhc2UiCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC5guC4ouC4hyAnJS4yNTBzJyDguYTguJvguKLguLHguIcgJyUuMjUwcycg4Liq4Liz4Lir4Lij4Lix4Lia4LiB4Liy4Lij4Liq4Liz4Lij4Lit4LiH4LiQ4Liy4LiZ4LiC4LmJ4Lit4Lih4Li54LilICVzIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDU4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBpbnN0YWxsICclLjI1MHMnIGFzICclLjI1MHMnIGNvbnRhaW5pbmcgJXMgZGF0YWJhc2UiCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC4leC4tOC4lOC4leC4seC5ieC4hyAnJS4yNTBzJyDguYPguJnguIrguLfguYjguK0gJyUuMjUwcycg4LmA4Lie4Li34LmI4Lit4LmA4LiB4LmH4Lia4LiQ4Liy4LiZ4LiC4LmJ4Lit4Lih4Li54LilICVzIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6OTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiB1bnJlY292ZXJhYmxlIGZhdGFsIGVycm9yLCBhYm9ydGluZzpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorIiVzOiDguYDguIHguLTguJTguILguYnguK3guJzguLTguJTguJ7guKXguLLguJTguJfguLXguYjguYTguKHguYjguKrguLLguKHguLLguKPguJbguIHguLnguYnguIHguKXguLHguJrguYTguJTguYkg4LmB4Lil4Liw4LiI4Liw4LiI4Lia4LiB4Liy4Lij4LiX4Liz4LiH4Liy4LiZOlxuIgorIiAlc1xuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MTAwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiJXM6IHVucmVjb3ZlcmFibGUgZmF0YWwgZXJyb3IsIGFib3J0aW5nOlxuIgorI3wgIiAlc1xuIgorbXNnaWQgIiIKKyIlczogb3V0c2lkZSBlcnJvciBjb250ZXh0LCBhYm9ydGluZzpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorIiVzOiDguYDguIHguLTguJTguILguYnguK3guJzguLTguJTguJ7guKXguLLguJTguJfguLXguYjguYTguKHguYjguKrguLLguKHguLLguKPguJbguIHguLnguYnguIHguKXguLHguJrguYTguJTguYkg4LmB4Lil4Liw4LiI4Liw4LiI4Lia4LiB4Liy4Lij4LiX4Liz4LiH4Liy4LiZOlxuIgorIiAlc1xuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MTIwCisjLCBmdXp6eQorI3wgbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBjbGVhbnVwIGVudHJ5IgorbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBlcnJvciBjb250ZXh0IgorbXNnc3RyICLguKvguJnguYjguKfguKLguITguKfguLLguKHguIjguLPguYTguKHguYjguJ7guK3guKrguLPguKvguKPguLHguJrguKrguKPguYnguLLguIfguKPguLLguKLguIHguLLguKPguYDguIHguYfguJrguIHguKfguLLguJQiCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoxODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBlcnJvciB3aGlsZSBjbGVhbmluZyB1cDpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorIiVzOiDguYDguIHguLTguJTguILguYnguK3guJzguLTguJTguJ7guKXguLLguJTguILguJPguLDguYDguIHguYfguJrguIHguKfguLLguJQ6XG4iCisiICVzXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoyMDEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImRwa2c6IHRvbyBtYW55IG5lc3RlZCBlcnJvcnMgZHVyaW5nIGVycm9yIHJlY292ZXJ5ICEhXG4iCittc2dpZCAiJXM6IHRvbyBtYW55IG5lc3RlZCBlcnJvcnMgZHVyaW5nIGVycm9yIHJlY292ZXJ5ISFcbiIKK21zZ3N0ciAiZHBrZzog4Lih4Li14LiC4LmJ4Lit4Lic4Li04LiU4Lie4Lil4Liy4LiU4LiL4LmJ4Lit4LiZ4LiB4Lix4LiZ4Lih4Liy4LiB4LmA4LiB4Li04LiZ4LmE4Lib4LiC4LiT4Liw4Lie4Lii4Liy4Lii4Liy4Lih4Lif4Li34LmJ4LiZ4LiE4Li34LiZ4LiI4Liy4LiB4LiC4LmJ4Lit4Lic4Li04LiU4Lie4Lil4Liy4LiUICEhXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoyNjggbGliL2Rwa2cvZWhhbmRsZS5jOjMwNworbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBjbGVhbnVwIGVudHJ5IgorbXNnc3RyICLguKvguJnguYjguKfguKLguITguKfguLLguKHguIjguLPguYTguKHguYjguJ7guK3guKrguLPguKvguKPguLHguJrguKrguKPguYnguLLguIfguKPguLLguKLguIHguLLguKPguYDguIHguYfguJrguIHguKfguLLguJQiCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoyOTEKK21zZ2lkICJvdXQgb2YgbWVtb3J5IGZvciBuZXcgY2xlYW51cCBlbnRyeSB3aXRoIG1hbnkgYXJndW1lbnRzIgorbXNnc3RyICLguKvguJnguYjguKfguKLguITguKfguLLguKHguIjguLPguYTguKHguYjguJ7guK3guKrguLPguKvguKPguLHguJrguKrguKPguYnguLLguIfguKPguLLguKLguIHguLLguKPguYDguIHguYfguJrguIHguKfguLLguJTguJfguLXguYjguKHguLXguK3guLLguKPguYzguIHguLTguKfguYDguKHguJnguJXguYzguKvguKXguLLguKLguJXguLHguKciCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzozNTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiVzOiB3YXJuaW5nOiAlc1xuIgorbXNnaWQgIiVzOiBlcnJvcjogJXNcbiIKK21zZ3N0ciAiJXM6IOC4hOC4s+C5gOC4leC4t+C4reC4mTogJXNcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjM5MworIywgYy1mb3JtYXQKK21zZ2lkICIlczogd2FybmluZzogJXNcbiIKK21zZ3N0ciAiJXM6IOC4hOC4s+C5gOC4leC4t+C4reC4mTogJXNcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjQxNgorIywgYy1mb3JtYXQKK21zZ2lkICIlczolczolZDogaW50ZXJuYWwgZXJyb3I6ICVzXG4iCittc2dzdHIgIiVzOiVzOiVkOiDguYDguIHguLTguJTguILguYnguK3guJzguLTguJTguJ7guKXguLLguJTguKDguLLguKLguYPguJk6ICVzXG4iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGlzIG1pc3NpbmciCittc2dzdHIgIiVzIOC4guC4suC4lOC4q+C4suC4ouC5hOC4myIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImAlLipzJyBpcyBub3QgYWxsb3dlZCBmb3IgJXMiCittc2dpZCAiJyUuNTBzJyBpcyBub3QgYWxsb3dlZCBmb3IgJXMiCittc2dzdHIgImAlLipzJyDguKHguLXguYPguJkgJXMg4LmE4Lih4LmI4LmE4LiU4LmJIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo3MworIywgYy1mb3JtYXQKK21zZ2lkICJqdW5rIGFmdGVyICVzIgorbXNnc3RyICLguKHguLXguILguKLguLDguKvguKXguLHguIcgJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjg3CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgcGFja2FnZSBuYW1lICglLjI1MHMpIgorbXNnc3RyICLguIrguLfguYjguK3guYHguJ7guIHguYDguIHguIjguYPguIrguYnguYTguKHguYjguYTguJTguYkgKCUuMjUwcykiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJlbXB0eSBmaWxlIGRldGFpbHMgZmllbGQgYCVzJyIKK21zZ3N0ciAi4LmA4LiC4LiV4LiC4LmJ4Lit4Lih4Li54Lil4Lij4Liy4Lii4Lil4Liw4LmA4Lit4Li14Lii4LiU4LmB4Lif4LmJ4LihIGAlcycg4Lin4LmI4Liy4LiH4LmA4Lib4Lil4LmI4LiyIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBkZXRhaWxzIGZpZWxkIGAlcycgbm90IGFsbG93ZWQgaW4gc3RhdHVzIGZpbGUiCittc2dzdHIgIuC4oeC4teC5gOC4guC4leC4guC5ieC4reC4oeC4ueC4peC4o+C4suC4ouC4peC4sOC5gOC4reC4teC4ouC4lOC5geC4n+C5ieC4oSBgJXMnIOC5g+C4meC5geC4n+C5ieC4oeC4quC4luC4suC4meC4sOC5hOC4oeC5iOC5hOC4lOC5iSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTE4CisjLCBjLWZvcm1hdAorbXNnaWQgInRvbyBtYW55IHZhbHVlcyBpbiBmaWxlIGRldGFpbHMgZmllbGQgYCVzJyAoY29tcGFyZWQgdG8gb3RoZXJzKSIKK21zZ3N0ciAi4Lih4Li14LiC4LmJ4Lit4Lih4Li54Lil4LiI4Liz4LiZ4Lin4LiZ4Lih4Liy4LiB4LmA4LiB4Li04LiZ4LmE4Lib4LmD4LiZ4LmA4LiC4LiV4LiC4LmJ4Lit4Lih4Li54Lil4Lij4Liy4Lii4Lil4Liw4LmA4Lit4Li14Lii4LiU4LmB4Lif4LmJ4LihIGAlcycgKOC5gOC4oeC4t+C5iOC4reC5gOC4l+C4teC4ouC4muC4geC4seC4muC4guC5ieC4reC4oeC4ueC4peC4reC4t+C5iOC4mSkiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjEzMgorIywgYy1mb3JtYXQKK21zZ2lkICJ0b28gZmV3IHZhbHVlcyBpbiBmaWxlIGRldGFpbHMgZmllbGQgYCVzJyAoY29tcGFyZWQgdG8gb3RoZXJzKSIKK21zZ3N0ciAi4Lih4Li14LiC4LmJ4Lit4Lih4Li54Lil4LiI4Liz4LiZ4Lin4LiZ4LiZ4LmJ4Lit4Lii4LmA4LiB4Li04LiZ4LmE4Lib4LmD4LiZ4LmA4LiC4LiV4LiC4LmJ4Lit4Lih4Li54Lil4Lij4Liy4Lii4Lil4Liw4LmA4Lit4Li14Lii4LiU4LmB4Lif4LmJ4LihIGAlcycgKOC5gOC4oeC4t+C5iOC4reC5gOC4l+C4teC4ouC4muC4geC4seC4muC4guC5ieC4reC4oeC4ueC4peC4reC4t+C5iOC4mSkiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE1NAorbXNnaWQgInllcy9ubyBpbiBib29sZWFuIGZpZWxkIgorbXNnc3RyICJ5ZXMvbm8g4LmD4LiZ4LmA4LiC4LiV4LiC4LmJ4Lit4Lih4Li54Lil4Lia4Li54Lil4Li14LiZIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxNzQKK21zZ2lkICJ3b3JkIGluIGBwcmlvcml0eScgZmllbGQiCittc2dzdHIgIuC4hOC4s+C5g+C4meC5gOC4guC4leC4guC5ieC4reC4oeC4ueC4pSBgcHJpb3JpdHknIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxODYKK21zZ2lkICJ2YWx1ZSBmb3IgYHN0YXR1cycgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICLguYPguIrguYnguITguYjguLLguKrguLPguKvguKPguLHguJrguYDguILguJXguILguYnguK3guKHguLnguKUgYHN0YXR1cycg4LmE4Lih4LmI4LmE4LiU4LmJ4LmD4LiZ4Lia4Lij4Li04Lia4LiX4LiZ4Li14LmJIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxOTEKK21zZ2lkICJmaXJzdCAod2FudCkgd29yZCBpbiBgc3RhdHVzJyBmaWVsZCIKK21zZ3N0ciAi4LiE4Liz4LmB4Lij4LiBICh3YW50KSDguYPguJnguYDguILguJXguILguYnguK3guKHguLnguKUgYHN0YXR1cyciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE5NAorbXNnaWQgInNlY29uZCAoZXJyb3IpIHdvcmQgaW4gYHN0YXR1cycgZmllbGQiCittc2dzdHIgIuC4hOC4s+C4l+C4teC5iOC4quC4reC4hyAoZXJyb3IpIOC5g+C4meC5gOC4guC4leC4guC5ieC4reC4oeC4ueC4pSBgc3RhdHVzJyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTk3Cittc2dpZCAidGhpcmQgKHN0YXR1cykgd29yZCBpbiBgc3RhdHVzJyBmaWVsZCIKK21zZ3N0ciAi4LiE4Liz4LiX4Li14LmI4Liq4Liy4LihIChzdGF0dXMpIOC5g+C4meC5gOC4guC4leC4guC5ieC4reC4oeC4ueC4pSBgc3RhdHVzJyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjA3CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGluIFZlcnNpb24gc3RyaW5nICclLjI1MHMnIgorbXNnc3RyICLguKHguLXguILguYnguK3guJzguLTguJTguJ7guKXguLLguJTguYPguJnguKrguJXguKPguLTguIcgVmVyc2lvbiAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjE4Cittc2dpZCAib2Jzb2xldGUgYFJldmlzaW9uJyBvciBgUGFja2FnZS1SZXZpc2lvbicgZmllbGQgdXNlZCIKK21zZ3N0ciAi4Lih4Li14LiB4Liy4Lij4LmD4LiK4LmJ4LmA4LiC4LiV4LiC4LmJ4Lit4Lih4Li54LilIGBSZXZpc2lvbicg4Lir4Lij4Li34LitIGBQYWNrYWdlLVJldmlzaW9uJyDguIvguLbguYjguIfguYDguKXguLTguIHguYPguIrguYnguYHguKXguYnguKciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjIzNQorbXNnaWQgInZhbHVlIGZvciBgY29uZmlnLXZlcnNpb24nIGZpZWxkIG5vdCBhbGxvd2VkIGluIHRoaXMgY29udGV4dCIKK21zZ3N0ciAi4LmD4LiK4LmJ4LiE4LmI4Liy4Liq4Liz4Lir4Lij4Lix4Lia4LmA4LiC4LiV4LiC4LmJ4Lit4Lih4Li54LilIGBjb25maWctdmVyc2lvbicg4LmE4Lih4LmI4LmE4LiU4LmJ4LmD4LiZ4Lia4Lij4Li04Lia4LiX4LiZ4Li14LmJIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyNDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgaW4gQ29uZmlnLVZlcnNpb24gc3RyaW5nICclLjI1MHMnIgorbXNnc3RyICLguKHguLXguILguYnguK3guJzguLTguJTguJ7guKXguLLguJTguYPguJnguKrguJXguKPguLTguIcgQ29uZmlnLVZlcnNpb24gJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjI2NgorIywgYy1mb3JtYXQKK21zZ2lkICJ2YWx1ZSBmb3IgYGNvbmZmaWxlcycgaGFzIG1hbGZvcm1hdHRlZCBsaW5lIGAlLipzJyIKK21zZ3N0ciAi4LiE4LmI4Liy4LiC4Lit4LiHIGBjb25mZmlsZXMnIOC4oeC4teC4muC4o+C4o+C4l+C4seC4lOC4l+C4teC5iOC4nOC4tOC4lOC4o+C4ueC4m+C5geC4muC4miBgJS4qcyciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjI4NworIywgYy1mb3JtYXQKK21zZ2lkICJ2YWx1ZSBmb3IgYGNvbmZmaWxlcycgaGFzIGxpbmUgc3RhcnRpbmcgd2l0aCBub24tc3BhY2UgYCVjJyIKK21zZ3N0ciAi4LiE4LmI4Liy4LiC4Lit4LiHIGBjb25mZmlsZXMnIOC4oeC4teC4muC4o+C4o+C4l+C4seC4lOC4l+C4teC5iOC4guC4tuC5ieC4meC4leC5ieC4meC4lOC5ieC4p+C4ouC4reC4seC4geC4guC4o+C4sCBgJWMnIOC4l+C4teC5iOC5hOC4oeC5iOC5g+C4iuC5iOC4iuC5iOC4reC4h+C4p+C5iOC4suC4hyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MzA0Cittc2dpZCAicm9vdCBvciBudWxsIGRpcmVjdG9yeSBpcyBsaXN0ZWQgYXMgYSBjb25mZmlsZSIKK21zZ3N0ciAi4Lih4Li14LiB4Liy4Lij4LmD4LiK4LmJ4LmE4LiU4LmA4Lij4LiB4LiX4Lit4Lij4Li14Lij4Liy4LiB4Lir4Lij4Li34Lit4LmE4LiU4LmA4Lij4LiB4LiX4Lit4Lij4Li14LmE4Lih4LmI4Lih4Li14LiK4Li34LmI4Lit4LmA4Lib4LmH4LiZIGNvbmZmaWxlIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzozNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIG1pc3NpbmcgcGFja2FnZSBuYW1lLCBvciBnYXJiYWdlIHdoZXJlIHBhY2thZ2UgbmFtZSBleHBlY3RlZCIKK21zZ3N0ciAi4LmA4LiC4LiV4LiC4LmJ4Lit4Lih4Li54LilIGAlcycg4LiC4Liy4LiU4LiK4Li34LmI4Lit4LmB4Lie4LiB4LmA4LiB4LiIIOC4q+C4o+C4t+C4reC4oeC4teC4guC5ieC4reC4oeC4ueC4peC4guC4ouC4sOC5g+C4meC4l+C4teC5iOC4l+C4teC5iOC4hOC4p+C4o+C5gOC4m+C5h+C4meC4iuC4t+C5iOC4reC5geC4nuC4geC5gOC4geC4iCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MzcwCisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgZmllbGQsIGludmFsaWQgcGFja2FnZSBuYW1lIGAlLjI1NXMnOiAlcyIKK21zZ3N0ciAi4LmA4LiC4LiV4LiC4LmJ4Lit4Lih4Li54LilIGAlcycg4Lih4Li14LiK4Li34LmI4Lit4LmB4Lie4LiB4LmA4LiB4LiI4LiX4Li14LmI4LmD4LiK4LmJ4LmE4Lih4LmI4LmE4LiU4LmJIGAlLjI1NXMnOiAlcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDA2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6XG4iCisiIGJhZCB2ZXJzaW9uIHJlbGF0aW9uc2hpcCAlYyVjIgorbXNnc3RyICIiCisi4LmA4LiC4LiV4LiC4LmJ4Lit4Lih4Li54LilIGAlcycg4Lit4LmJ4Liy4LiH4Lit4Li04LiH4LmE4Lib4Lii4Lix4LiHIGAlLjI1NXMnOlxuIgorIiDguITguKfguLLguKHguKrguLHguKHguJ7guLHguJnguJjguYzguKrguLPguKvguKPguLHguJrguYDguKXguILguKPguLjguYjguJkgJWMlYyDguYPguIrguYnguYTguKHguYjguYTguJTguYkiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQxMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOlxuIgorIiBgJWMnIGlzIG9ic29sZXRlLCB1c2UgYCVjPScgb3IgYCVjJWMnIGluc3RlYWQiCittc2dzdHIgIiIKKyLguYDguILguJXguILguYnguK3guKHguLnguKUgYCVzJyDguK3guYnguLLguIfguK3guLTguIfguYTguJvguKLguLHguIcgYCUuMjU1cyc6XG4iCisiIGAlYycg4LmA4Lil4Li04LiB4LmD4LiK4LmJ4LmB4Lil4LmJ4LinIOC5g+C4iuC5iSBgJWM9JyDguKvguKPguLfguK0gYCVjJWMnIOC5geC4l+C4mSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDIyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6XG4iCisiIGltcGxpY2l0IGV4YWN0IG1hdGNoIG9uIHZlcnNpb24gbnVtYmVyLCBzdWdnZXN0IHVzaW5nIGA9JyBpbnN0ZWFkIgorbXNnc3RyICIiCisi4LmA4LiC4LiV4LiC4LmJ4Lit4Lih4Li54LilIGAlcycg4Lit4LmJ4Liy4LiH4Lit4Li04LiH4LmE4Lib4Lii4Lix4LiHIGAlLjI1NXMnOlxuIgorIiDguIHguLLguKPguYDguJfguLXguKLguJrguYDguKXguILguKPguLjguYjguJnguYDguJfguYjguLLguIHguLHguJnguJfguLjguIHguJvguKPguLDguIHguLLguKPguYHguJrguJrguYTguKHguYjguIrguLHguJTguYHguIjguYnguIcg4LiC4Lit4LmB4LiZ4Liw4LiZ4Liz4LmD4Lir4LmJ4LmD4LiK4LmJIGA9JyDguYHguJfguJkiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQzMAorbXNnaWQgIk9ubHkgZXhhY3QgdmVyc2lvbnMgbWF5IGJlIHVzZWQgZm9yIFByb3ZpZGVzIgorbXNnc3RyICLguYPguIrguYnguYDguKXguILguKPguLjguYjguJnguJXguLLguKLguJXguLHguKfguYTguJTguYnguYDguJfguYjguLLguJnguLHguYnguJnguYPguJkgUHJvdmlkZXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQzNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOlxuIgorIiB2ZXJzaW9uIHZhbHVlIHN0YXJ0cyB3aXRoIG5vbi1hbHBoYW51bWVyaWMsIHN1Z2dlc3QgYWRkaW5nIGEgc3BhY2UiCittc2dzdHIgIiIKKyLguYDguILguJXguILguYnguK3guKHguLnguKUgYCVzJyDguK3guYnguLLguIfguK3guLTguIfguYTguJvguKLguLHguIcgYCUuMjU1cyc6XG4iCisiIOC4hOC5iOC4suC5gOC4peC4guC4o+C4uOC5iOC4meC4guC4tuC5ieC4meC4leC5ieC4meC4lOC5ieC4p+C4ouC4reC4seC4geC4guC4o+C4sOC4l+C4teC5iOC5hOC4oeC5iOC5g+C4iuC5iOC4leC4seC4p+C4reC4seC4geC4qeC4o+C4q+C4o+C4t+C4reC4leC4seC4p+C5gOC4peC4giDguILguK3guYHguJnguLDguJnguLPguYPguKvguYnguYDguJ7guLTguYjguKHguIrguYjguK3guIfguKfguYjguLLguIciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ1MSBsaWIvZHBrZy9maWVsZHMuYzo0NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOiB2ZXJzaW9uIGNvbnRhaW5zIGAlYyciCittc2dzdHIgIuC5gOC4guC4leC4guC5ieC4reC4oeC4ueC4pSBgJXMnIOC4reC5ieC4suC4h+C4reC4tOC4h+C5hOC4m+C4ouC4seC4hyBgJS4yNTVzJzog4LmA4Lil4LiC4Lij4Li44LmI4LiZ4Lih4Li14Lit4Lix4LiB4LiC4Lij4LiwIGAlYyciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ1OQorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6IHZlcnNpb24gdW50ZXJtaW5hdGVkIgorbXNnc3RyICLguYDguILguJXguILguYnguK3guKHguLnguKUgYCVzJyDguK3guYnguLLguIfguK3guLTguIfguYTguJvguKLguLHguIcgYCUuMjU1cyc6IOC5gOC4peC4guC4o+C4uOC5iOC4meC4ouC4seC4h+C5hOC4oeC5iOC4iOC4miIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDY1CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgZmllbGQsIHJlZmVyZW5jZSB0byAnJS4yNTVzJzogZXJyb3IgaW4gdmVyc2lvbiIKK21zZ3N0ciAi4LmA4LiC4LiV4LiC4LmJ4Lit4Lih4Li54LilICclcycg4Lit4LmJ4Liy4LiH4Lit4Li04LiH4LmE4Lib4Lii4Lix4LiHICclLjI1NXMnOiDguKHguLXguILguYnguK3guJzguLTguJTguJ7guKXguLLguJTguYPguJnguYDguKXguILguKPguLjguYjguJkiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ3NQorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGZpZWxkLCBzeW50YXggZXJyb3IgYWZ0ZXIgcmVmZXJlbmNlIHRvIHBhY2thZ2UgYCUuMjU1cyciCittc2dzdHIgIuC5gOC4guC4leC4guC5ieC4reC4oeC4ueC4pSBgJXMnIOC4oeC4teC4o+C4ueC4m+C5geC4muC4muC4nOC4tOC4lOC5hOC4p+C4ouC4suC4geC4o+C4k+C5jOC4q+C4peC4seC4h+C4iOC4suC4geC4geC4suC4o+C4reC5ieC4suC4h+C4luC4tuC4h+C5geC4nuC4geC5gOC4geC4iCBgJS4yNTVzJyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDgyCisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlcyAoYHwnKSBub3QgYWxsb3dlZCBpbiAlcyBmaWVsZCIKK21zZ3N0ciAi4LmD4LiK4LmJ4LiX4Liy4LiH4LmA4Lil4Li34Lit4LiBIChgfCcpIOC5hOC4oeC5iOC5hOC4lOC5ieC5g+C4meC5gOC4guC4leC4guC5ieC4reC4oeC4ueC4pSAlcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTM2Cittc2dpZCAidmFsdWUgZm9yIGB0cmlnZ2Vycy1wZW5kaW5nJyBmaWVsZCBub3QgYWxsb3dlZCBpbiB0aGlzIGNvbnRleHQiCittc2dzdHIgIuC5g+C4iuC5ieC4hOC5iOC4suC4quC4s+C4q+C4o+C4seC4muC5gOC4guC4leC4guC5ieC4reC4oeC4ueC4pSBgdHJpZ2dlcnMtcGVuZGluZycg4LmE4Lih4LmI4LmE4LiU4LmJ4LmD4LiZ4Lia4Lij4Li04Lia4LiX4LiZ4Li14LmJIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWxsZWdhbCBwZW5kaW5nIHRyaWdnZXIgbmFtZSBgJS4yNTVzJzogJXMiCittc2dzdHIgIuC4iuC4t+C5iOC4reC4geC4suC4o+C4quC4sOC4geC4tOC4lOC4l+C4teC5iOC4hOC4seC5iOC4h+C4hOC5ieC4suC4hyBgJS4yNTVzJyDguYPguIrguYnguYTguKHguYjguYTguJTguYk6ICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHBlbmRpbmcgdHJpZ2dlciBgJS4yNTVzJyIKK21zZ3N0ciAi4LiB4Liy4Lij4Liq4Liw4LiB4Li04LiU4LiX4Li14LmI4LiE4Lix4LmI4LiH4LiE4LmJ4Liy4LiHIGAlLjI1NXMnIOC4i+C5ieC4s+C4geC4seC4mSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTYxCittc2dpZCAidmFsdWUgZm9yIGB0cmlnZ2Vycy1hd2FpdGVkJyBmaWVsZCBub3QgYWxsb3dlZCBpbiB0aGlzIGNvbnRleHQiCittc2dzdHIgIuC5g+C4iuC5ieC4hOC5iOC4suC4quC4s+C4q+C4o+C4seC4muC5gOC4guC4leC4guC5ieC4reC4oeC4ueC4pSBgdHJpZ2dlcnMtYXdhaXRlZCcg4LmE4Lih4LmI4LmE4LiU4LmJ4LmD4LiZ4Lia4Lij4Li04Lia4LiX4LiZ4Li14LmJIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWxsZWdhbCBwYWNrYWdlIG5hbWUgaW4gYXdhaXRlZCB0cmlnZ2VyIGAlLjI1NXMnOiAlcyIKK21zZ3N0ciAi4LiK4Li34LmI4Lit4LmB4Lie4LiB4LmA4LiB4LiI4Lic4Li04LiU4Lij4Li54Lib4LmB4Lia4Lia4LmD4LiZ4LiB4Liy4Lij4Liq4Liw4LiB4Li04LiU4LiX4Li14LmI4Lij4Lit4LiE4Lit4LiiIGAlLjI1NXMnOiAlcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTc0CisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBhd2FpdGVkIHRyaWdnZXIgcGFja2FnZSBgJS4yNTVzJyIKK21zZ3N0ciAi4LiB4Liy4Lij4Liq4Liw4LiB4Li04LiU4LiX4Li14LmI4Lij4Lit4LiE4Lit4LiiIGAlLjI1NXMnIOC4i+C5ieC4s+C4geC4seC4mSIKKworIzogbGliL2Rwa2cvZmlsZS5jOjUxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IHNvdXJjZSBmaWxlICclLjI1MHMnIgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJYgc3RhdCDguYHguJ/guYnguKHguJXguYnguJnguJfguLLguIcgJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzo1NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hhbmdlIG93bmVyc2hpcCBvZiB0YXJnZXQgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4LmA4Lib4Lil4Li14LmI4Lii4LiZ4LmA4LiI4LmJ4Liy4LiC4Lit4LiH4LmB4Lif4LmJ4Lih4Lib4Lil4Liy4Lii4LiX4Liy4LiHICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy9maWxlLmM6NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNldCBtb2RlIG9mIHRhcmdldCBmaWxlICclLjI1MHMnIgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguIHguLPguKvguJnguJTguKrguLTguJfguJjguLTguYzguYHguJ/guYnguKHguJvguKXguLLguKLguJfguLLguIcgJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzo4NQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHVubG9jayAlczogJXMiCittc2dpZCAidW5hYmxlIHRvIHVubG9jayAlcyIKK21zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4Lib4Lil4LiU4Lil4LmH4Lit4LiEICVzOiAlcyIKKworIzogbGliL2Rwa2cvZmlsZS5jOjExMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hlY2sgZmlsZSAnJXMnIGxvY2sgc3RhdHVzIgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguJXguKPguKfguIjguKrguK3guJrguKrguJbguLLguJnguLDguIHguLLguKPguKXguYfguK3guITguILguK3guIfguYHguJ/guYnguKEgJyVzJyIKKworIzogbGliL2Rwa2cvZmlsZS5jOjE0NgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic3RhdHVzIGRhdGFiYXNlIGFyZWEgaXMgbG9ja2VkIGJ5IGFub3RoZXIgcHJvY2VzcyIKK21zZ2lkICIlcyBpcyBsb2NrZWQgYnkgYW5vdGhlciBwcm9jZXNzIgorbXNnc3RyICLguJ7guLfguYnguJnguJfguLXguYjguJDguLLguJnguILguYnguK3guKHguLnguKXguKrguJbguLLguJnguLDguJbguLnguIHguKXguYfguK3guITguYLguJTguKLguYLguJ7guKPguYDguIvguKrguK3guLfguYjguJkiCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzoxNDgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byB1bmxvY2sgJXM6ICVzIgorbXNnaWQgInVuYWJsZSB0byBsb2NrICVzIgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguJvguKXguJTguKXguYfguK3guIQgJXM6ICVzIgorCisjOiBsaWIvZHBrZy9sb2cuYzo1MworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBvcGVuIGxvZyBgJXMnOiAlc1xuIgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguYDguJvguLTguJTguYHguJ/guYnguKHguJvguLnguKEgYCVzJzogJXNcbiIKKworIzogbGliL2Rwa2cvbG9nLmM6ODUKK21zZ2lkICI8cGFja2FnZSBzdGF0dXMgYW5kIHByb2dyZXNzIGZpbGUgZGVzY3JpcHRvcj4iCittc2dzdHIgIjxmaWxlIGRlc2NyaXB0b3Ig4LiC4Lit4LiH4LmB4Lif4LmJ4Lih4Liq4LiW4Liy4LiZ4Liw4LmB4Lil4Liw4LiE4Lin4Liy4Lih4LiE4Li34Lia4Lir4LiZ4LmJ4Liy4LiC4Lit4LiH4LmB4Lie4LiB4LmA4LiB4LiIPiIKKworIzogbGliL2Rwa2cvbG9nLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSB0byBzdGF0dXMgZmQgJWQiCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC5gOC4guC4teC4ouC4meC4peC4h+C5g+C4mSBmZCAlZCDguKrguLPguKvguKPguLHguJrguKrguJbguLLguJnguLAiCisKKyM6IGxpYi9kcGtnL21saWIuYzo0NCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJyZWFsbG9jIGZhaWxlZCAoJXp1IGJ5dGVzKSIKK21zZ2lkICJtYWxsb2MgZmFpbGVkICglenUgYnl0ZXMpIgorbXNnc3RyICJyZWFsbG9jIOC5hOC4oeC5iOC4quC4s+C5gOC4o+C5h+C4iCAoJXp1IOC5hOC4muC4leC5jCkiCisKKyM6IGxpYi9kcGtnL21saWIuYzo1OAorIywgYy1mb3JtYXQKK21zZ2lkICJyZWFsbG9jIGZhaWxlZCAoJXp1IGJ5dGVzKSIKK21zZ3N0ciAicmVhbGxvYyDguYTguKHguYjguKrguLPguYDguKPguYfguIggKCV6dSDguYTguJrguJXguYwpIgorCisjOiBsaWIvZHBrZy9tbGliLmM6NzIgbGliL2Rwa2cvbWxpYi5jOjkwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNzcKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzozMzQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMDcKK21zZ2lkICJmYWlsZWQgdG8gYWxsb2NhdGUgbWVtb3J5IgorbXNnc3RyICLguIjguK3guIfguKvguJnguYjguKfguKLguITguKfguLLguKHguIjguLPguYTguKHguYjguKrguLPguYDguKPguYfguIgiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGR1cCBmb3Igc3RkJXMiCittc2dzdHIgImR1cCDguYTguKHguYjguKrguLPguYDguKPguYfguIjguKrguLPguKvguKPguLHguJogc3RkJXMiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGR1cCBmb3IgZmQgJWQiCittc2dzdHIgImR1cCDguYTguKHguYjguKrguLPguYDguKPguYfguIjguKrguLPguKvguKPguLHguJogZmQgJWQiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMDkKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHBpcGUiCittc2dzdHIgIuC4quC4o+C5ieC4suC4h+C5hOC4m+C4m+C5jOC5hOC4oeC5iOC4quC4s+C5gOC4o+C5h+C4iCIKKworIzogbGliL2Rwa2cvbWxpYi5jOjExNworIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciB3cml0aW5nIHRvICclcyciCittc2dzdHIgIuC5gOC4geC4tOC4lOC4guC5ieC4reC4nOC4tOC4lOC4nuC4peC4suC4lOC4guC4k+C4sOC5gOC4guC4teC4ouC4meC4peC4h+C5g+C4mSAnJXMnIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIGZpbGVkZXNjcmlwdG9yIGZsYWdzIGZvciAlLjI1MHMiCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC4reC5iOC4suC4meC5geC4n+C4peC5h+C4geC4guC4reC4hyBmaWxlIGRlc2NyaXB0b3Ig4Liq4Liz4Lir4Lij4Lix4LiaICUuMjUwcyIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEyNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IGNsb3NlLW9uLWV4ZWMgZmxhZyBmb3IgJS4yNTBzIgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguIHguLPguKvguJnguJTguYHguJ/guKXguYfguIEgY2xvc2Utb24tZXhlYyDguKrguLPguKvguKPguLHguJogJS4yNTBzIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmlndXJhdGlvbiBlcnJvcjogJXM6JWQ6ICVzIgorbXNnc3RyICLguILguYnguK3guJzguLTguJTguJ7guKXguLLguJTguYPguJnguITguYjguLLguJXguLHguYnguIc6ICVzOiVkOiAlcyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjc1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuIGNvbmZpZ3VyYXRpb24gZmlsZSAnJS4yNTVzJyBmb3IgcmVhZGluZzogJXMiCittc2dzdHIgIuC5gOC4m+C4tOC4lOC5geC4n+C5ieC4oeC4hOC5iOC4suC4leC4seC5ieC4hyAnJS4yNTVzJyDguYDguJ7guLfguYjguK3guK3guYjguLLguJnguYTguKHguYjguKrguLPguYDguKPguYfguIg6ICVzIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYmFsYW5jZWQgcXVvdGVzIGluICclcyciCittc2dzdHIgIuC5gOC4hOC4o+C4t+C5iOC4reC4h+C4q+C4oeC4suC4ouC4hOC4s+C4nuC4ueC4lOC5gOC4m+C4tOC4lC3guJvguLTguJTguYTguKHguYjguKrguKHguJTguLjguKXguIHguLHguJnguYPguJkgJyVzJyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjExNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiAnJXMnIgorbXNnc3RyICLguYTguKHguYjguKPguLnguYnguIjguLHguIHguJXguLHguKfguYDguKXguLfguK3guIEgJyVzJyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjEyMQorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIG5lZWRzIGEgdmFsdWUiCittc2dzdHIgIiclcycg4LiV4LmJ4Lit4LiH4Lij4Liw4Lia4Li44LiE4LmI4Liy4LiU4LmJ4Lin4LiiIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTI3CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgZG9lcyBub3QgdGFrZSBhIHZhbHVlIgorbXNnc3RyICInJXMnIOC5hOC4oeC5iOC4o+C4seC4muC4hOC5iOC4siIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjEzMworIywgYy1mb3JtYXQKK21zZ2lkICJyZWFkIGVycm9yIGluIGNvbmZpZ3VyYXRpb24gZmlsZSBgJS4yNTVzJyIKK21zZ3N0ciAi4LmA4LiB4Li04LiU4LiC4LmJ4Lit4Lic4Li04LiU4Lie4Lil4Liy4LiU4LiC4LiT4Liw4Lit4LmI4Liy4LiZ4LmB4Lif4LmJ4Lih4LiE4LmI4Liy4LiV4Lix4LmJ4LiHIGAlLjI1NXMnIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgY29uZmlndXJhdGlvbiBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICLguYDguIHguLTguJTguILguYnguK3guJzguLTguJTguJ7guKXguLLguJTguILguJPguLDguJvguLTguJTguYHguJ/guYnguKHguITguYjguLLguJXguLHguYnguIcgYCUuMjU1cyciCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxNzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igb3BlbmluZyBjb25maWd1cmF0aW9uIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICLguYDguIHguLTguJTguILguYnguK3guJzguLTguJTguJ7guKXguLLguJTguILguJPguLDguYDguJvguLTguJTguYTguJTguYDguKPguIHguJfguK3guKPguLXguITguYjguLLguJXguLHguYnguIcgJyVzJyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjIyOAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiAtLSVzIgorbXNnc3RyICLguYTguKHguYjguKPguLnguYnguIjguLHguIHguJXguLHguKfguYDguKXguLfguK3guIEgLS0lcyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjIzMgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG9wdGlvbiB0YWtlcyBhIHZhbHVlIgorbXNnc3RyICLguJXguLHguKfguYDguKXguLfguK3guIEgLS0lcyDguJXguYnguK3guIfguKPguLDguJrguLjguITguYjguLLguJTguYnguKfguKIiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBvcHRpb24gZG9lcyBub3QgdGFrZSBhIHZhbHVlIgorbXNnc3RyICLguJXguLHguKfguYDguKXguLfguK3guIEgLS0lcyDguYTguKHguYjguKPguLHguJrguITguYjguLIiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyNDUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gLSVjIgorbXNnc3RyICLguYTguKHguYjguKPguLnguYnguIjguLHguIHguJXguLHguKfguYDguKXguLfguK3guIEgLSVjIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjUwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0lYyBvcHRpb24gdGFrZXMgYSB2YWx1ZSIKK21zZ3N0ciAi4LiV4Lix4Lin4LmA4Lil4Li34Lit4LiBIC0lYyDguJXguYnguK3guIfguKPguLDguJrguLjguITguYjguLLguJTguYnguKfguKIiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiLSVjIG9wdGlvbiBkb2VzIG5vdCB0YWtlIGEgdmFsdWUiCittc2dzdHIgIuC4leC4seC4p+C5gOC4peC4t+C4reC4gSAtJWMg4LmE4Lih4LmI4Lij4Lix4Lia4LiE4LmI4LiyIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjcxCisjLCBjLWZvcm1hdAorbXNnaWQgIm9ic29sZXRlIG9wdGlvbiAnLS0lcydcbiIKK21zZ3N0ciAi4LiV4Lix4Lin4LmA4Lil4Li34Lit4LiBICctLSVzJyDguYDguKXguLTguIHguYPguIrguYnguYHguKXguYnguKdcbiIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI4NworIywgYy1mb3JtYXQKK21zZ2lkICJjb25mbGljdGluZyBhY3Rpb25zIC0lYyAoLS0lcykgYW5kIC0lYyAoLS0lcykiCittc2dzdHIgIuC4geC4suC4o+C4geC4o+C4sOC4l+C4s+C4guC4seC4lOC5geC4ouC5ieC4h+C4geC4seC4meC4o+C4sOC4q+C4p+C5iOC4suC4hyAtJWMgKC0tJXMpIOC5geC4peC4sCAtJWMgKC0tJXMpIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgdmFsdWUgZm9yIGAlcycgZmllbGQiCittc2dzdHIgIuC4hOC5iOC4suC4guC4reC4h+C5gOC4guC4leC4guC5ieC4reC4oeC4ueC4pSBgJXMnIOC4i+C5ieC4s+C4geC4seC4mSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoxNDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidXNlci1kZWZpbmVkIGZpZWxkIG5hbWUgYCUuKnMnIHRvbyBzaG9ydCIKK21zZ3N0ciAi4LiK4Li34LmI4Lit4LmA4LiC4LiV4LiC4LmJ4Lit4Lih4Li54Lil4LiB4Liz4Lir4LiZ4LiU4LmA4Lit4LiHIGAlLipzJyDguKrguLHguYnguJnguYDguIHguLTguJnguYTguJsiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MTUyCisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSB2YWx1ZSBmb3IgdXNlci1kZWZpbmVkIGZpZWxkIGAlLipzJyIKK21zZ3N0ciAi4LiE4LmI4Liy4LiC4Lit4LiH4LmA4LiC4LiV4LiC4LmJ4Lit4Lih4Li54Lil4LiB4Liz4Lir4LiZ4LiU4LmA4Lit4LiHIGAlLipzJyDguIvguYnguLPguIHguLHguJkiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjA3Cittc2dpZCAiQ29uZmlndXJlZC1WZXJzaW9uIGZvciBwYWNrYWdlIHdpdGggaW5hcHByb3ByaWF0ZSBTdGF0dXMiCittc2dzdHIgIuC4oeC4tSBDb25maWd1cmVkLVZlcnNpb24g4Liq4Liz4Lir4Lij4Lix4Lia4LmB4Lie4LiB4LmA4LiB4LiI4LiX4Li14LmI4Lih4Li14LiE4LmI4LiyIFN0YXR1cyDguYTguKHguYjguYDguKvguKHguLLguLDguKrguKEiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjE4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgaGFzIHN0YXR1cyAlcyBidXQgdHJpZ2dlcnMgYXJlIGF3YWl0ZWQiCittc2dzdHIgIuC5geC4nuC4geC5gOC4geC4iOC4reC4ouC4ueC5iOC5g+C4meC4quC4luC4suC4meC4sCAlcyDguYHguJXguYjguKHguLXguIHguLLguKPguKrguLDguIHguLTguJTguJfguLXguYjguKPguK3guITguK3guKLguK3guKLguLnguYgiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjIyCittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzIHRyaWdnZXJzLWF3YWl0ZWQgYnV0IG5vIHRyaWdnZXJzIGF3YWl0ZWQiCittc2dzdHIgIuC5geC4nuC4geC5gOC4geC4iOC4reC4ouC4ueC5iOC5g+C4meC4quC4luC4suC4meC4sCB0cmlnZ2Vycy1hd2FpdGVkIOC5geC4leC5iOC5hOC4oeC5iOC4oeC4teC4geC4suC4o+C4quC4sOC4geC4tOC4lOC4l+C4teC5iOC4o+C4reC4hOC4reC4ouC4reC4ouC4ueC5iCIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzICVzIGJ1dCB0cmlnZ2VycyBhcmUgcGVuZGluZyIKK21zZ3N0ciAi4LmB4Lie4LiB4LmA4LiB4LiI4Lit4Lii4Li54LmI4LmD4LiZ4Liq4LiW4Liy4LiZ4LiwICVzIOC5geC4leC5iOC4oeC4teC4geC4suC4o+C4quC4sOC4geC4tOC4lOC4l+C4teC5iOC4hOC4seC5iOC4h+C4hOC5ieC4suC4h+C4reC4ouC4ueC5iCIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMzIKK21zZ2lkICJwYWNrYWdlIGhhcyBzdGF0dXMgdHJpZ2dlcnMtcGVuZGluZyBidXQgbm8gdHJpZ2dlcnMgcGVuZGluZyIKK21zZ3N0ciAi4LmB4Lie4LiB4LmA4LiB4LiI4Lit4Lii4Li54LmI4LmD4LiZ4Liq4LiW4Liy4LiZ4LiwIHRyaWdnZXJzLXBlbmRpbmcg4LmB4LiV4LmI4LmE4Lih4LmI4Lih4Li14LiB4Liy4Lij4Liq4Liw4LiB4Li04LiU4LiX4Li14LmI4LiE4Lix4LmI4LiH4LiE4LmJ4Liy4LiH4Lit4Lii4Li54LmIIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjI0MgorbXNnaWQgIlBhY2thZ2Ugd2hpY2ggaW4gc3RhdGUgbm90LWluc3RhbGxlZCBoYXMgY29uZmZpbGVzLCBmb3JnZXR0aW5nIHRoZW0iCittc2dzdHIgIuC5geC4nuC4geC5gOC4geC4iOC4quC4luC4suC4meC4sCBub3QtaW5zdGFsbGVkIOC4oeC4tSBjb25mZmlsZSDguJTguLHguIfguJnguLHguYnguJnguIjguLDguKXguJrguILguYnguK3guKHguLnguKXguJfguLTguYnguIciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzM1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuIHBhY2thZ2UgaW5mbyBmaWxlIGAlLjI1NXMnIGZvciByZWFkaW5nIgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguYDguJvguLTguJTguYHguJ/guYnguKHguILguYnguK3guKHguLnguKXguYHguJ7guIHguYDguIHguIggYCUuMjU1cycg4LmA4Lie4Li34LmI4Lit4Lit4LmI4Liy4LiZIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjM0MQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW4ndCBzdGF0IHBhY2thZ2UgaW5mbyBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJYgc3RhdCDguYHguJ/guYnguKHguILguYnguK3guKHguLnguKXguYHguJ7guIHguYDguIHguIggYCUuMjU1cyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzQ3CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbid0IG1tYXAgcGFja2FnZSBpbmZvIGZpbGUgYCUuMjU1cyciCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4liBtbWFwIOC5geC4n+C5ieC4oeC4guC5ieC4reC4oeC4ueC4peC5geC4nuC4geC5gOC4geC4iCBgJS4yNTVzJyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozNTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImNhbid0IHN0YXQgcGFja2FnZSBpbmZvIGZpbGUgYCUuMjU1cyciCittc2dpZCAicmVhZGluZyBwYWNrYWdlIGluZm8gZmlsZSAnJS4yNTVzJyIKK21zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiWIHN0YXQg4LmB4Lif4LmJ4Lih4LiC4LmJ4Lit4Lih4Li54Lil4LmB4Lie4LiB4LmA4LiB4LiIIGAlLjI1NXMnIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjM2MworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2xvc2UgYWZ0ZXIgcmVhZDogYCUuMjU1cyciCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC4m+C4tOC4lOC4q+C4peC4seC4h+C4iOC4suC4geC4reC5iOC4suC4mTogYCUuMjU1cyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDA0CisjLCBjLWZvcm1hdAorbXNnaWQgIkVPRiBhZnRlciBmaWVsZCBuYW1lIGAlLipzJyIKK21zZ3N0ciAi4Lie4LiaIEVPRiDguKvguKXguLHguIfguIrguLfguYjguK3guYDguILguJXguILguYnguK3guKHguLnguKUgYCUuKnMnIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQwNworIywgYy1mb3JtYXQKK21zZ2lkICJuZXdsaW5lIGluIGZpZWxkIG5hbWUgYCUuKnMnIgorbXNnc3RyICLguJ7guJrguK3guLHguIHguILguKPguLDguILguLbguYnguJnguJrguKPguKPguJfguLHguJTguYPguKvguKHguYjguYPguJnguIrguLfguYjguK3guYDguILguJXguILguYnguK3guKHguLnguKUgYCUuKnMnIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQxMAorIywgYy1mb3JtYXQKK21zZ2lkICJNU0RPUyBFT0YgKF5aKSBpbiBmaWVsZCBuYW1lIGAlLipzJyIKK21zZ3N0ciAi4Lie4LiaIEVPRiDguILguK3guIcgTVNET1MgKF5aKSDguYPguJnguIrguLfguYjguK3guYDguILguJXguILguYnguK3guKHguLnguKUgYCUuKnMnIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQxNAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWVsZCBuYW1lIGAlLipzJyBtdXN0IGJlIGZvbGxvd2VkIGJ5IGNvbG9uIgorbXNnc3RyICLguIrguLfguYjguK3guYDguILguJXguILguYnguK3guKHguLnguKUgYCUuKnMnIOC4leC5ieC4reC4h+C4leC4suC4oeC4lOC5ieC4p+C4ouC4l+C4p+C4tOC4oOC4suC4hCAoOikiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDI1CisjLCBjLWZvcm1hdAorbXNnaWQgIkVPRiBiZWZvcmUgdmFsdWUgb2YgZmllbGQgYCUuKnMnIChtaXNzaW5nIGZpbmFsIG5ld2xpbmUpIgorbXNnc3RyICLguJ7guJogRU9GIOC4geC5iOC4reC4meC4hOC5iOC4suC4guC4reC4h+C5gOC4guC4leC4guC5ieC4reC4oeC4ueC4pSBgJS4qcycgKOC4guC4suC4lOC4reC4seC4geC4guC4o+C4sOC4guC4tuC5ieC4meC4muC4o+C4o+C4l+C4seC4lOC5g+C4q+C4oeC5iOC4m+C4tOC4lOC4l+C5ieC4suC4oikiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDI5CisjLCBjLWZvcm1hdAorbXNnaWQgIk1TRE9TIEVPRiBjaGFyIGluIHZhbHVlIG9mIGZpZWxkIGAlLipzJyAobWlzc2luZyBuZXdsaW5lPykiCittc2dzdHIgIuC4nuC4miBFT0Yg4LiC4Lit4LiHIE1TRE9TIOC5g+C4meC4hOC5iOC4suC4guC4reC4h+C5gOC4guC4leC4guC5ieC4reC4oeC4ueC4pSBgJS4qcycgKOC4guC4suC4lOC4reC4seC4geC4guC4o+C4sOC4guC4tuC5ieC4meC4muC4o+C4o+C4l+C4seC4lOC5g+C4q+C4oeC5iOC4q+C4o+C4t+C4reC5gOC4m+C4peC5iOC4sj8pIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQ0MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAibmV3bGluZSBpbiBmaWVsZCBuYW1lIGAlLipzJyIKK21zZ2lkICJibGFuayBsaW5lIGluIHZhbHVlIG9mIGZpZWxkICclLipzJyIKK21zZ3N0ciAi4Lie4Lia4Lit4Lix4LiB4LiC4Lij4Liw4LiC4Li24LmJ4LiZ4Lia4Lij4Lij4LiX4Lix4LiU4LmD4Lir4Lih4LmI4LmD4LiZ4LiK4Li34LmI4Lit4LmA4LiC4LiV4LiC4LmJ4Lit4Lih4Li54LilIGAlLipzJyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiRU9GIGR1cmluZyB2YWx1ZSBvZiBmaWVsZCBgJS4qcycgKG1pc3NpbmcgZmluYWwgbmV3bGluZSkiCittc2dzdHIgIuC4nuC4miBFT0Yg4Lij4Liw4Lir4Lin4LmI4Liy4LiH4LiB4Lil4Liy4LiH4LiE4LmI4Liy4LiC4Lit4LiH4LmA4LiC4LiV4LiC4LmJ4Lit4Lih4Li54LilIGAlLipzJyAo4LiC4Liy4LiU4Lit4Lix4LiB4LiC4Lij4Liw4LiC4Li24LmJ4LiZ4Lia4Lij4Lij4LiX4Lix4LiU4LmD4Lir4Lih4LmI4Lib4Li04LiU4LiX4LmJ4Liy4LiiKSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo1NDYKK21zZ2lkICJzZXZlcmFsIHBhY2thZ2UgaW5mbyBlbnRyaWVzIGZvdW5kLCBvbmx5IG9uZSBhbGxvd2VkIgorbXNnc3RyICLguJ7guJrguILguYnguK3guKHguLnguKXguYHguJ7guIHguYDguIHguIjguKvguKXguLLguKLguIrguLjguJQg4LiL4Li24LmI4LiH4LiV4LmJ4Lit4LiH4Lih4Li14LmA4Lie4Li14Lii4LiH4LiK4Li44LiU4LmA4LiU4Li14Lii4Lin4LmA4LiX4LmI4Liy4LiZ4Lix4LmJ4LiZIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjU3MgorIywgYy1mb3JtYXQKK21zZ2lkICJubyBwYWNrYWdlIGluZm9ybWF0aW9uIGluIGAlLjI1NXMnIgorbXNnc3RyICLguYTguKHguYjguKHguLXguILguYnguK3guKHguLnguKXguYHguJ7guIHguYDguIHguIjguYPguJkgYCUuMjU1cyciCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjQ1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiJXMsIGluIGZpbGUgJyUuMjU1cycgbmVhciBsaW5lICVkIHBhY2thZ2UgJyUuMjU1cyc6XG4iCisjfCAiICIKK21zZ2lkICIiCisicGFyc2luZyBmaWxlICclLjI1NXMnIG5lYXIgbGluZSAlZCBwYWNrYWdlICclLjI1NXMnOlxuIgorIiAlLjI1NXMiCittc2dzdHIgIiIKKyIlcywg4LmD4LiZ4LmB4Lif4LmJ4LihICclLjI1NXMnIOC4muC4o+C4tOC5gOC4p+C4k+C4muC4o+C4o+C4l+C4seC4lCAlZCDguYHguJ7guIHguYDguIHguIggJyUuMjU1cyc6XG4iCisiICIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6NDgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIlcywgaW4gZmlsZSAnJS4yNTVzJyBuZWFyIGxpbmUgJWQ6XG4iCisjfCAiICIKK21zZ2lkICIiCisicGFyc2luZyBmaWxlICclLjI1NXMnIG5lYXIgbGluZSAlZDpcbiIKKyIgJS4yNTVzIgorbXNnc3RyICIiCisiJXMsIOC5g+C4meC5geC4n+C5ieC4oSAnJS4yNTVzJyDguJrguKPguLTguYDguKfguJPguJrguKPguKPguJfguLHguJQgJWQ6XG4iCisiICIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MTI1Cittc2dpZCAibWF5IG5vdCBiZSBlbXB0eSBzdHJpbmciCittc2dzdHIgIuC5gOC4m+C5h+C4meC4guC5ieC4reC4hOC4p+C4suC4oeC4p+C5iOC4suC4h+C5gOC4m+C4peC5iOC4suC5hOC4oeC5iOC5hOC4lOC5iSIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MTI3CisjLCBmdXp6eQorI3wgbXNnaWQgIm11c3Qgc3RhcnQgd2l0aCBhbiBhbHBoYW51bWVyaWMiCittc2dpZCAibXVzdCBzdGFydCB3aXRoIGFuIGFscGhhbnVtZXJpYyBjaGFyYWN0ZXIiCittc2dzdHIgIuC4leC5ieC4reC4h+C4guC4tuC5ieC4meC4leC5ieC4meC4lOC5ieC4p+C4ouC4reC4seC4geC4qeC4o+C4q+C4o+C4t+C4reC4leC4seC4p+C5gOC4peC4giIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MTM2CisjLCBjLWZvcm1hdAorbXNnaWQgImNoYXJhY3RlciBgJWMnIG5vdCBhbGxvd2VkIChvbmx5IGxldHRlcnMsIGRpZ2l0cyBhbmQgY2hhcmFjdGVycyBgJXMnKSIKK21zZ3N0ciAi4Lir4LmJ4Liy4Lih4LmD4LiK4LmJ4Lit4Lix4LiB4LiC4Lij4LiwIGAlYycgKOC5g+C4iuC5ieC4leC4seC4p+C4reC4seC4geC4qeC4oyDguJXguLHguKfguYDguKXguIIg4LmB4Lil4Liw4Lit4Lix4LiB4LiC4Lij4LiwIGAlcycg4LmE4LiU4LmJ4LmA4LiX4LmI4Liy4LiZ4Lix4LmJ4LiZKSIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MTc4CisjLCBmdXp6eQorI3wgbXNnaWQgIjxub25lPiIKK21zZ2N0eHQgInZlcnNpb24iCittc2dpZCAiPG5vbmU+IgorbXNnc3RyICI84LmE4Lih4LmI4Lih4Li1PiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjA5Cittc2dpZCAidmVyc2lvbiBzdHJpbmcgaXMgZW1wdHkiCittc2dzdHIgIuC4guC5ieC4reC4hOC4p+C4suC4oeC5gOC4peC4guC4o+C4uOC5iOC4meC4p+C5iOC4suC4h+C5gOC4m+C4peC5iOC4siIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjI0Cittc2dpZCAidmVyc2lvbiBzdHJpbmcgaGFzIGVtYmVkZGVkIHNwYWNlcyIKK21zZ3N0ciAi4LiC4LmJ4Lit4LiE4Lin4Liy4Lih4LmA4Lil4LiC4Lij4Li44LmI4LiZ4Lih4Li14LiK4LmI4Lit4LiH4Lin4LmI4Liy4LiH4Lig4Liy4Lii4LmD4LiZIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyMzAKK21zZ2lkICJlcG9jaCBpbiB2ZXJzaW9uIGlzIG5vdCBudW1iZXIiCittc2dzdHIgImVwb2NoIOC5g+C4meC5gOC4peC4guC4o+C4uOC5iOC4meC5hOC4oeC5iOC5g+C4iuC5iOC4leC4seC4p+C5gOC4peC4giIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjMyCittc2dpZCAibm90aGluZyBhZnRlciBjb2xvbiBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAi4LmE4Lih4LmI4Lih4Li14Lit4Liw4LmE4Lij4LiV4LmI4Lit4LiX4LmJ4Liy4Lii4LiX4Lin4Li04Lig4Liy4LiE4LmD4LiZ4LmA4Lil4LiC4Lij4Li44LmI4LiZIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyNDcKK21zZ2lkICJ2ZXJzaW9uIG51bWJlciBkb2VzIG5vdCBzdGFydCB3aXRoIGRpZ2l0IgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjI1MAorbXNnaWQgImludmFsaWQgY2hhcmFjdGVyIGluIHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICLguJ7guJrguK3guLHguIHguILguKPguLDguKvguYnguLLguKHguYPguIrguYnguYPguJnguYDguKXguILguKPguLjguYjguJkiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjI1NAorbXNnaWQgImludmFsaWQgY2hhcmFjdGVyIGluIHJldmlzaW9uIG51bWJlciIKK21zZ3N0ciAi4Lie4Lia4Lit4Lix4LiB4LiC4Lij4Liw4Lir4LmJ4Liy4Lih4LmD4LiK4LmJ4LmD4LiZ4LmA4Lil4LiC4LiJ4Lia4Lix4Lia4LmB4LiB4LmJ4LmE4LiCIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyOTkgbGliL2Rwa2cvcGFyc2VoZWxwLmM6MzExCisjLCBjLWZvcm1hdAorbXNnaWQgIm1pc3NpbmcgJXMiCittc2dzdHIgIuC4guC4suC4lCAlcyIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MzAxIGxpYi9kcGtnL3BhcnNlaGVscC5jOjMxNAorIywgYy1mb3JtYXQKK21zZ2lkICJlbXB0eSB2YWx1ZSBmb3IgJXMiCittc2dzdHIgIiVzIOC5gOC4m+C5h+C4meC4hOC5iOC4suC4p+C5iOC4suC4h+C5gOC4m+C4peC5iOC4siIKKworIzogbGliL2Rwa2cvcGtnLWZvcm1hdC5jOjgwCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgY2hhcmFjdGVyIGAlYycgaW4gZmllbGQgd2lkdGhcbiIKK21zZ3N0ciAi4LmD4LiK4LmJ4Lit4Lix4LiB4LiC4Lij4LiwIGAlYycg4LmE4Lih4LmI4LmE4LiU4LmJ4LmD4LiZ4LiE4Lin4Liy4Lih4LiB4Lin4LmJ4Liy4LiH4LmA4LiC4LiV4LiC4LmJ4Lit4Lih4Li54LilXG4iCisKKyM6IGxpYi9kcGtnL3BrZy1mb3JtYXQuYzoxNzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2xvc2luZyBicmFjZSBtaXNzaW5nIGluIGZvcm1hdFxuIgorbXNnc3RyICLguILguLLguJTguKfguIfguYDguKXguYfguJrguJvguLXguIHguIHguLLguJvguLTguJTguYPguJnguJ/guK3guKPguYzguYHguKHguJVcbiIKKworIzogbGliL2Rwa2cvcGtnLXNob3cuYzo0MAorbXNnaWQgIihubyBkZXNjcmlwdGlvbiBhdmFpbGFibGUpIgorbXNnc3RyICIo4LmE4Lih4LmI4Lih4Li14LiE4Liz4Lia4Lij4Lij4Lii4Liy4LiiKSIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjU1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpZ25vcmUgc2lnbmFsICVzIGJlZm9yZSBydW5uaW5nICUuMjUwcyIKK21zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4LiB4Liz4Lir4LiZ4LiU4LmD4Lir4LmJ4LmA4Lie4Li04LiB4LmA4LiJ4Lii4LiV4LmI4Lit4Liq4Lix4LiN4LiN4Liy4LiTICVzIOC4geC5iOC4reC4meC5gOC4o+C4teC4ouC4geC4l+C4s+C4h+C4suC4mSAlLjI1MHMg4LmE4LiU4LmJIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgdW4tY2F0Y2hpbmcgc2lnbmFsICVzOiAlc1xuIgorbXNnc3RyICLguYDguIHguLTguJTguILguYnguK3guJzguLTguJTguJ7guKXguLLguJTguILguJPguLDguYDguKXguLTguIHguJTguLHguIHguKrguLHguI3guI3guLLguJMgJXM6ICVzXG4iCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzo3OAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyAoc3VicHJvY2Vzcyk6ICVzXG4iCittc2dzdHIgIiVzICjguYLguJ7guKPguYDguIvguKrguKLguYjguK3guKIpOiAlc1xuIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6ODkgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQ1NAorbXNnaWQgImZvcmsgZmFpbGVkIgorbXNnc3RyICJmb3JrIOC5hOC4oeC5iOC4quC4s+C5gOC4o+C5h+C4iCIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjExOQorIywgYy1mb3JtYXQKK21zZ2lkICJzdWJwcm9jZXNzICVzIHJldHVybmVkIGVycm9yIGV4aXQgc3RhdHVzICVkIgorbXNnc3RyICLguYLguJ7guKPguYDguIvguKrguKLguYjguK3guKIgJXMg4LiI4Lia4LiB4Liy4Lij4LiX4Liz4LiH4Liy4LiZ4LmC4LiU4Lii4LiE4Li34LiZ4LiE4LmI4Liy4Liq4LiW4Liy4LiZ4Liw4LiC4LmJ4Lit4Lic4Li04LiU4Lie4Lil4Liy4LiUICVkIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTI4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ3YWl0IGZvciBzdWJwcm9jZXNzICVzIGZhaWxlZCIKK21zZ2lkICJzdWJwcm9jZXNzICVzIHdhcyBpbnRlcnJ1cHRlZCIKK21zZ3N0ciAi4LiE4Lit4Lii4LmC4Lie4Lij4LmA4LiL4Liq4Lii4LmI4Lit4LiiICVzIOC5hOC4oeC5iOC4quC4s+C5gOC4o+C5h+C4iCIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEzMAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic3VicHJvY2VzcyAlcyBraWxsZWQgYnkgc2lnbmFsICglcyklcyIKK21zZ2lkICJzdWJwcm9jZXNzICVzIHdhcyBraWxsZWQgYnkgc2lnbmFsICglcyklcyIKK21zZ3N0ciAi4LmC4Lie4Lij4LmA4LiL4Liq4Lii4LmI4Lit4LiiICVzIOC4luC4ueC4geC4huC5iOC4suC4lOC5ieC4p+C4ouC4quC4seC4jeC4jeC4suC4kyAoJXMpJXMiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMzIKK21zZ2lkICIsIGNvcmUgZHVtcGVkIgorbXNnc3RyICIsIOC4oeC4teC4geC4suC4o+C4lOC4seC4oeC4m+C5jOC4q+C4meC5iOC4p+C4ouC4hOC4p+C4suC4oeC4iOC4syIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJzdWJwcm9jZXNzICVzIGZhaWxlZCB3aXRoIHdhaXQgc3RhdHVzIGNvZGUgJWQiCittc2dzdHIgIuC5guC4nuC4o+C5gOC4i+C4quC4ouC5iOC4reC4oiAlcyDguKXguYnguKHguYDguKvguKXguKfguJTguYnguKfguKLguKPguKvguLHguKrguKrguJbguLLguJnguLDguIHguLLguKPguITguK3guKIgJWQiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxNTEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQ2MQorIywgYy1mb3JtYXQKK21zZ2lkICJ3YWl0IGZvciBzdWJwcm9jZXNzICVzIGZhaWxlZCIKK21zZ3N0ciAi4LiE4Lit4Lii4LmC4Lie4Lij4LmA4LiL4Liq4Lii4LmI4Lit4LiiICVzIOC5hOC4oeC5iOC4quC4s+C5gOC4o+C5h+C4iCIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBwYWNrYWdlIG5hbWUgYCUuMjUwcycgaW4gdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4LiK4Li34LmI4Lit4LmB4Lie4LiB4LmA4LiB4LiI4Lic4Li04LiU4Lij4Li54Lib4LmB4Lia4LiaIGAlLjI1MHMnIOC5g+C4meC5geC4n+C5ieC4oeC4iuC4sOC4peC4reC4geC4suC4o+C4quC4sOC4geC4tOC4lCBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJ1bmNhdGVkIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuC5geC4n+C5ieC4oeC4iuC4sOC4peC4reC4geC4suC4o+C4quC4sOC4geC4tOC4lCBgJS4yNTBzJyDguJbguLnguIHguJXguLHguJTguJfguYnguLLguKIiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjg1CisjLCBjLWZvcm1hdAorbXNnaWQgInN5bnRheCBlcnJvciBpbiB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIGF0IGNoYXJhY3RlciBgJXMnJXMiCittc2dzdHIgIuC5hOC4p+C4ouC4suC4geC4o+C4k+C5jOC4nOC4tOC4lOC4nuC4peC4suC4lOC5g+C4meC5geC4n+C5ieC4oeC4iuC4sOC4peC4reC4geC4suC4o+C4quC4sOC4geC4tOC4lCBgJS4yNTBzJyDguJfguLXguYjguK3guLHguIHguILguKPguLAgYCVzJyVzIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4vY3JlYXRlIHRyaWdnZXJzIGxvY2tmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguYDguJvguLTguJTguKvguKPguLfguK3guKrguKPguYnguLLguIfguYHguJ/guYnguKHguKXguYfguK3guITguIHguLLguKPguKrguLDguIHguLTguJQgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjE0MQorIywgZnV6enkKKyN8IG1zZ2lkICJ0cmlnZ2VyZWQiCittc2dpZCAidHJpZ2dlcnMgYXJlYSIKK21zZ3N0ciAi4LiW4Li54LiB4Liq4Liw4LiB4Li04LiU4Lit4Lii4Li54LmIIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiWIHN0YXQg4LmB4Lif4LmJ4Lih4LiK4Liw4Lil4Lit4LiB4Liy4Lij4Liq4Liw4LiB4Li04LiUIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4LmA4Lib4Li04LiU4LmB4Lif4LmJ4Lih4LiK4Liw4Lil4Lit4LiB4Liy4Lij4Liq4Liw4LiB4Li04LiUIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4vY3JlYXRlIG5ldyB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguYDguJvguLTguJTguKvguKPguLfguK3guKrguKPguYnguLLguIfguYHguJ/guYnguKHguIrguLDguKXguK3guIHguLLguKPguKrguLDguIHguLTguJTguYHguJ/guYnguKHguYPguKvguKHguYggYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjIxNQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciByZWFkaW5nIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuC5gOC4geC4tOC4lOC4guC5ieC4reC4nOC4tOC4lOC4nuC4peC4suC4lOC4guC4k+C4sOC4reC5iOC4suC4meC5geC4n+C5ieC4oeC4iuC4sOC4peC4reC4geC4suC4o+C4quC4sOC4geC4tOC4lCBgJS4yNTVzJyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MjIzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4LmA4LiC4Li14Lii4LiZ4LmB4Lif4LmJ4Lih4LiK4Liw4Lil4Lit4LiB4Liy4Lij4Liq4Liw4LiB4Li04LiU4LmB4Lif4LmJ4Lih4LmD4Lir4Lih4LmIIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoyMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIG5ldyB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguJvguLTguJTguYHguJ/guYnguKHguIrguLDguKXguK3guIHguLLguKPguKrguLDguIHguLTguJTguYHguJ/guYnguKHguYPguKvguKHguYggYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjIzMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4LiV4Li04LiU4LiV4Lix4LmJ4LiH4LmB4Lif4LmJ4Lih4LiK4Liw4Lil4Lit4LiB4Liy4Lij4Liq4Liw4LiB4Li04LiU4LmB4Lif4LmJ4Lih4LmD4Lir4Lih4LmIIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MjIyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpbnZhbGlkIG9yIHVua25vd24gc3ludGF4IGluIHRyaWdnZXIgbmFtZSBgJS4yNTBzJyAoaW4gdHJpZ2dlciBpbnRlcmVzdHMgZm9yICIKKyJwYWNrYWdlIGAlLjI1MHMnKSIKK21zZ3N0ciAi4LiK4Li34LmI4Lit4LiB4Liy4Lij4Liq4Liw4LiB4Li04LiUIGAlLjI1MHMnIOC4nOC4tOC4lOC4o+C4ueC4m+C5geC4muC4miAo4LmD4LiZ4LiB4Liy4Lij4Liq4Liw4LiB4Li04LiU4LiX4Li14LmI4Liq4LiZ4LmD4LiI4Liq4Liz4Lir4Lij4Lix4Lia4LmB4Lie4LiB4LmA4LiB4LiIIGAlLjI1MHMnKSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjI2MworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiB0cmlnZ2VyIGludGVyZXN0IGxpc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4LmA4Lib4Li04LiU4LmB4Lif4LmJ4Lih4Lij4Liy4Lii4LiK4Li34LmI4Lit4LiB4Liy4Lij4Liq4Liw4LiB4Li04LiU4LiX4Li14LmI4Liq4LiZ4LmD4LiIIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MjkyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguIHguKPguK3guYHguJ/guYnguKHguKPguLLguKLguIrguLfguYjguK3guIHguLLguKPguKrguLDguIHguLTguJTguJfguLXguYjguKrguJnguYPguIggYCUuMjUwcycg4LiB4Lil4Lix4LiaIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzA1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcycgc3ludGF4IGVycm9yOyBpbGxlZ2FsIHBhY2thZ2UgbmFtZSBgJS4yNTBzJzogIgorIiUuMjUwcyIKK21zZ3N0ciAiIgorIuC5hOC4p+C4ouC4suC4geC4o+C4k+C5jOC4nOC4tOC4lOC4nuC4peC4suC4lOC5g+C4meC5geC4n+C5ieC4oeC4o+C4suC4ouC4iuC4t+C5iOC4reC4geC4suC4o+C4quC4sOC4geC4tOC4lOC4l+C4teC5iOC4quC4meC5g+C4iCBgJS4yNTBzJzsg4LiK4Li34LmI4Lit4LmB4Lie4LiB4LmA4LiB4LiI4Lic4Li04LiU4Lij4Li54Lib4LmB4Lia4LiaIGAlLjI1MHMnOiAiCisiJS4yNTBzIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzE4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguYDguILguLXguKLguJnguYHguJ/guYnguKHguKPguLLguKLguIrguLfguYjguK3guIHguLLguKPguKrguLDguIHguLTguJTguJfguLXguYjguKrguJnguYPguIjguYHguJ/guYnguKHguYPguKvguKHguYggYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMjEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4liBmbHVzaCDguYHguJ/guYnguKHguKPguLLguKLguIrguLfguYjguK3guIHguLLguKPguKrguLDguIHguLTguJTguJfguLXguYjguKrguJnguYPguIjguYHguJ/guYnguKHguYPguKvguKHguYggJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiWIHN5bmMg4LmB4Lif4LmJ4Lih4Lij4Liy4Lii4LiK4Li34LmI4Lit4LiB4Liy4Lij4Liq4Liw4LiB4Li04LiU4LiX4Li14LmI4Liq4LiZ4LmD4LiI4LmB4Lif4LmJ4Lih4LmD4Lir4Lih4LmIICclLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzMyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC4leC4tOC4lOC4leC4seC5ieC4h+C5geC4n+C5ieC4oeC4o+C4suC4ouC4iuC4t+C5iOC4reC4geC4suC4o+C4quC4sOC4geC4tOC4lOC4l+C4teC5iOC4quC4meC5g+C4iOC5geC4n+C5ieC4oeC5g+C4q+C4oeC5iCBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjM0MCBsaWIvZHBrZy90cmlnbGliLmM6MzQyIGxpYi9kcGtnL3RyaWdsaWIuYzo0NzIKKyM6IHNyYy9yZW1vdmUuYzoyODYgc3JjL3JlbW92ZS5jOjM3NworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVtb3ZlIGAlLjI1MHMnIgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguKXguJogYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozNjAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguKrguKPguYnguLLguIfguYHguJ/guYnguKHguKPguLLguKLguIrguLfguYjguK3guIHguLLguKPguKrguLDguIHguLTguJTguJfguLXguYjguKrguJnguYPguIjguYHguJ/guYnguKHguYPguKvguKHguYggYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozODMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC4m+C4tOC4lOC5geC4n+C5ieC4oeC4o+C4suC4ouC4iuC4t+C5iOC4reC4geC4suC4o+C4quC4sOC4geC4tOC4lOC4l+C4teC5iOC4quC4meC5g+C4iOC5geC4n+C5ieC4oeC5g+C4q+C4oeC5iCBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ1NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHVwbGljYXRlIGZpbGUgdHJpZ2dlciBpbnRlcmVzdCBmb3IgZmlsZW5hbWUgYCUuMjUwcycgYW5kIHBhY2thZ2UgYCUuMjUwcyciCittc2dzdHIgIuC4oeC4teC4geC4suC4o+C4quC4sOC4geC4tOC4lOC4lOC5ieC4p+C4ouC5geC4n+C5ieC4oeC4i+C5ieC4s+C4geC4seC4meC4quC4s+C4q+C4o+C4seC4muC4iuC4t+C5iOC4reC5geC4n+C5ieC4oSBgJS4yNTBzJyDguYHguKXguLDguYHguJ7guIHguYDguIHguIggYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguKrguKPguYnguLLguIfguYHguJ/guYnguKHguKPguLLguKLguIrguLfguYjguK3guIHguLLguKPguKrguLDguIHguLTguJTguJTguYnguKfguKLguYHguJ/guYnguKHguYHguJ/guYnguKHguYPguKvguKHguYggYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0OTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC5gOC4guC4teC4ouC4meC5geC4n+C5ieC4oeC4o+C4suC4ouC4iuC4t+C5iOC4reC4geC4suC4o+C4quC4sOC4geC4tOC4lOC4lOC5ieC4p+C4ouC5geC4n+C5ieC4oeC5geC4n+C5ieC4oeC5g+C4q+C4oeC5iCBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ5NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiWIGZsdXNoIOC5geC4n+C5ieC4oeC4o+C4suC4ouC4iuC4t+C5iOC4reC4geC4suC4o+C4quC4sOC4geC4tOC4lOC4lOC5ieC4p+C4ouC5geC4n+C5ieC4oeC5geC4n+C5ieC4oeC5g+C4q+C4oeC5iCAnJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ5OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlICclLjI1MHMnIgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJYgc3luYyDguYHguJ/guYnguKHguKPguLLguKLguIrguLfguYjguK3guIHguLLguKPguKrguLDguIHguLTguJTguJTguYnguKfguKLguYHguJ/guYnguKHguYHguJ/guYnguKHguYPguKvguKHguYggJyUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1MDMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC4m+C4tOC4lOC5geC4n+C5ieC4oeC4o+C4suC4ouC4iuC4t+C5iOC4reC4geC4suC4o+C4quC4sOC4geC4tOC4lOC4lOC5ieC4p+C4ouC5geC4n+C5ieC4oeC5geC4n+C5ieC4oeC5g+C4q+C4oeC5iCBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjUwNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGFzIGAlLjI1MHMnIgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguJXguLTguJTguJXguLHguYnguIfguYHguJ/guYnguKHguKPguLLguKLguIrguLfguYjguK3guIHguLLguKPguKrguLDguIHguLTguJTguJTguYnguKfguKLguYHguJ/guYnguKHguYHguJ/guYnguKHguYPguKvguKHguYggYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1NDIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguK3guYjguLLguJnguYHguJ/guYnguKHguKPguLLguKLguIrguLfguYjguK3guIHguLLguKPguKrguLDguIHguLTguJTguJTguYnguKfguKLguYHguJ/guYnguKEgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1NTIKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yIGluIGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4LmE4Lin4Lii4Liy4LiB4Lij4LiT4LmM4Lic4Li04LiU4Lie4Lil4Liy4LiU4LmD4LiZ4LmB4Lif4LmJ4Lih4Lij4Liy4Lii4LiK4Li34LmI4Lit4LiB4Liy4Lij4Liq4Liw4LiB4Li04LiU4LiU4LmJ4Lin4Lii4LmB4Lif4LmJ4LihIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTYzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmaWxlIHRyaWdnZXJzIHJlY29yZCBtZW50aW9ucyBpbGxlZ2FsIHBhY2thZ2UgbmFtZSBgJS4yNTBzJyAoZm9yIGludGVyZXN0IGluICIKKyJmaWxlIGAlLjI1MHMnKTogJS4yNTBzIgorbXNnc3RyICIiCisi4Lij4Liw4LmA4Lia4Li14Lii4LiZ4LiB4Liy4Lij4Liq4Liw4LiB4Li04LiU4LiU4LmJ4Lin4Lii4LmB4Lif4LmJ4Lih4Lih4Li14LiB4Liy4Lij4LiB4Lil4LmI4Liy4Lin4Lit4LmJ4Liy4LiH4LiW4Li24LiH4LiK4Li34LmI4Lit4LmB4Lie4LiB4LmA4LiB4LiI4LiX4Li14LmI4LmD4LiK4LmJ4LmE4Lih4LmI4LmE4LiU4LmJIGAlLjI1MHMnICjguYPguJnguKPguLLguKLguIHguLLguKPguKrguJnguYPguIjguYHguJ/guYnguKEgYCIKKyIlLjI1MHMnKTogJS4yNTBzIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NjY1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ0cmlnZ2VycyBjaSBmaWxlIGAlLjI1MHMnIGNvbnRhaW5zIGlsbGVnYWwgdHJpZ2dlciBzeW50YXggaW4gdHJpZ2dlciBuYW1lIGAiCisiJS4yNTBzJzogJS4yNTBzIgorbXNnc3RyICIiCisi4LmB4Lif4LmJ4Lih4LiC4LmJ4Lit4Lih4Li54Lil4LiB4Liy4Lij4Liq4Liw4LiB4Li04LiUIGAlLjI1MHMnIOC4oeC4teC5hOC4p+C4ouC4suC4geC4o+C4k+C5jOC4guC4reC4h+C4geC4suC4o+C4quC4sOC4geC4tOC4lOC4nOC4tOC4lOC4nuC4peC4suC4lOC5g+C4meC4iuC4t+C5iOC4reC4geC4suC4o+C4quC4sOC4geC4tOC4lCBgJS4yNTBzJzogJS4yNTBzIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Njg0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIHRyaWdnZXJzIGNpIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC5gOC4m+C4tOC4lOC5geC4n+C5ieC4oeC4guC5ieC4reC4oeC4ueC4peC4geC4suC4o+C4quC4sOC4geC4tOC4lCBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjY5OQorbXNnaWQgInRyaWdnZXJzIGNpIGZpbGUgY29udGFpbnMgdW5rbm93biBkaXJlY3RpdmUgc3ludGF4IgorbXNnc3RyICLguYHguJ/guYnguKHguILguYnguK3guKHguLnguKXguIHguLLguKPguKrguLDguIHguLTguJTguKHguLXguITguLPguKrguLHguYjguIfguJzguLTguJTguYTguKfguKLguLLguIHguKPguJPguYwiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo3MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJpZ2dlcnMgY2kgZmlsZSBjb250YWlucyB1bmtub3duIGRpcmVjdGl2ZSBgJS4yNTBzJyIKK21zZ3N0ciAi4LmB4Lif4LmJ4Lih4LiC4LmJ4Lit4Lih4Li54Lil4LiB4Liy4Lij4Liq4Liw4LiB4Li04LiU4Lih4Li14LiE4Liz4Liq4Lix4LmI4LiHIGAlLjI1MHMnIOC4l+C4teC5iOC5hOC4oeC5iOC4o+C4ueC5ieC4iOC4seC4gSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjc3NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHRyaWdnZXJzIHN0YXRlIGRpcmVjdG9yeSBgJS4yNTBzJyIKK21zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4Liq4Lij4LmJ4Liy4LiH4LmE4LiU4LmA4Lij4LiB4LiX4Lit4Lij4Li14Liq4LiW4Liy4LiZ4Liw4LiC4Lit4LiH4LiB4Liy4Lij4Liq4Liw4LiB4Li04LiUIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Nzc5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgb3duZXJzaGlwIG9mIHRyaWdnZXJzIHN0YXRlIGRpcmVjdG9yeSBgJS4yNTBzJyIKK21zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4LiB4Liz4Lir4LiZ4LiU4LmA4LiI4LmJ4Liy4LiC4Lit4LiH4LmD4Lir4LmJ4LiB4Lix4Lia4LmE4LiU4LmA4Lij4LiB4LiX4Lit4Lij4Li14Liq4LiW4Liy4LiZ4Liw4LiC4Lit4LiH4LiB4Liy4Lij4Liq4Liw4LiB4Li04LiUIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbmFtZS5jOjM0Cittc2dpZCAiZW1wdHkgdHJpZ2dlciBuYW1lcyBhcmUgbm90IHBlcm1pdHRlZCIKK21zZ3N0ciAi4LmE4Lih4LmI4Lit4LiZ4Li44LiN4Liy4LiV4LmD4Lir4LmJ4LmD4LiK4LmJ4LiK4Li34LmI4Lit4LiB4Liy4Lij4Liq4Liw4LiB4Li04LiU4LiX4Li14LmI4Lin4LmI4Liy4LiH4LmA4Lib4Lil4LmI4LiyIgorCisjOiBsaWIvZHBrZy90cmlnbmFtZS5jOjM4Cittc2dpZCAidHJpZ2dlciBuYW1lIGNvbnRhaW5zIGludmFsaWQgY2hhcmFjdGVyIgorbXNnc3RyICLguIrguLfguYjguK3guIHguLLguKPguKrguLDguIHguLTguJTguKHguLXguK3guLHguIHguILguKPguLDguJfguLXguYjguKvguYnguLLguKHguYPguIrguYkiCisKKyM6IGxpYi9kcGtnL3V0aWxzLmM6NTYKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVhZCBlcnJvciBpbiBgJS4yNTBzJyIKK21zZ3N0ciAi4LmA4LiB4Li04LiU4LiC4LmJ4Lit4Lic4Li04LiU4Lie4Lil4Liy4LiU4LiC4LiT4Liw4Lit4LmI4Liy4LiZIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy91dGlscy5jOjYxCisjLCBjLWZvcm1hdAorbXNnaWQgImZnZXRzIGdhdmUgYW4gZW1wdHkgc3RyaW5nIGZyb20gYCUuMjUwcyciCittc2dzdHIgImZnZXRzIOC4hOC4t+C4meC4guC5ieC4reC4hOC4p+C4suC4oeC5gOC4m+C4peC5iOC4suC4iOC4suC4gSBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdXRpbHMuYzo2MworIywgYy1mb3JtYXQKK21zZ2lkICJ0b28tbG9uZyBsaW5lIG9yIG1pc3NpbmcgbmV3bGluZSBpbiBgJS4yNTBzJyIKK21zZ3N0ciAi4Lie4Lia4Lia4Lij4Lij4LiX4Lix4LiU4Lii4Liy4Lin4LmA4LiB4Li04LiZ4LmE4LibIOC4q+C4o+C4t+C4reC4guC4suC4lOC4reC4seC4geC4guC4o+C4sOC4guC4tuC5ieC4meC4muC4o+C4o+C4l+C4seC4lOC5g+C4q+C4oeC5iOC5g+C4mSBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdXRpbHMuYzo3NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVvZiByZWFkaW5nIGAlLjI1MHMnIgorbXNnc3RyICLguJ7guJrguIjguLjguJTguIjguJrguYHguJ/guYnguKHguIHguYjguK3guJnguIHguLPguKvguJnguJTguILguJPguLDguK3guYjguLLguJkgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3ZhcmJ1Zi5jOjgyIGxpYi9kcGtnL3ZhcmJ1Zi5jOjg4Cittc2dpZCAiZXJyb3IgZm9ybWF0dGluZyBzdHJpbmcgaW50byB2YXJidWYgdmFyaWFibGUiCittc2dzdHIgIuC5gOC4geC4tOC4lOC4guC5ieC4reC4nOC4tOC4lOC4nuC4peC4suC4lOC4guC4k+C4sOC4iOC4seC4lOC4o+C4ueC4m+C5geC4muC4muC4guC5ieC4reC4hOC4p+C4suC4oeC4peC4h+C5g+C4meC4leC4seC4p+C5geC4m+C4oyB2YXJidWYiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjE3OSBzcmMvYXJjaGl2ZXMuYzoyMDAgc3JjL2FyY2hpdmVzLmM6NzI0Cittc2dpZCAiZXJyb3IgcmVhZGluZyBmcm9tIGRwa2ctZGViIHBpcGUiCittc2dzdHIgIuC5gOC4geC4tOC4lOC4guC5ieC4reC4nOC4tOC4lOC4nuC4peC4suC4lOC4guC4k+C4sOC4reC5iOC4suC4meC4iOC4suC4geC5hOC4m+C4m+C5jOC4guC4reC4hyBkcGtnLWRlYiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTk1CisjLCBjLWZvcm1hdAorbXNnaWQgInNraXBwZWQgdW5wYWNraW5nIGZpbGUgJyUuMjU1cycgKHJlcGxhY2VkIG9yIGV4Y2x1ZGVkPykiCittc2dzdHIgIuC5hOC4lOC5ieC4guC5ieC4suC4oeC4geC4suC4o+C5geC4leC4geC5geC4n+C5ieC4oSAnJS4yNTVzJyAo4LiW4Li54LiB4LmB4LiX4LiZ4LiX4Li14LmI4Lir4Lij4Li34Lit4LmE4Lih4LmI4LiZ4Lix4Lia4Lij4Lin4Lih4Lir4Lij4Li34Lit4LmE4Lih4LmIPykiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjI0NiBzcmMvYXJjaGl2ZXMuYzoyNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igc2V0dGluZyB0aW1lc3RhbXBzIG9mIGAlLjI1NXMnIgorbXNnc3RyICLguYDguIHguLTguJTguILguYnguK3guJzguLTguJTguJ7guKXguLLguJTguILguJPguLDguKXguIfguYDguKfguKXguLLguILguK3guIcgYCUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjI2MgorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIG93bmVyc2hpcCBvZiBzeW1saW5rIGAlLjI1NXMnIgorbXNnc3RyICLguYDguIHguLTguJTguILguYnguK3guJzguLTguJTguJ7guKXguLLguJTguILguJPguLDguIHguLPguKvguJnguJTguYDguIjguYnguLLguILguK3guIfguILguK3guIcgc3ltbGluayBgJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6MjY1IHNyYy9hcmNoaXZlcy5jOjczNCBzcmMvc3RhdGNtZC5jOjE2MworIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIG93bmVyc2hpcCBvZiBgJS4yNTVzJyIKK21zZ3N0ciAi4LmA4LiB4Li04LiU4LiC4LmJ4Lit4Lic4Li04LiU4Lie4Lil4Liy4LiU4LiC4LiT4Liw4LiB4Liz4Lir4LiZ4LiU4LmA4LiI4LmJ4Liy4LiC4Lit4LiH4LiC4Lit4LiHIGAlLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoyNjcgc3JjL2FyY2hpdmVzLmM6NzM2IHNyYy9zdGF0Y21kLmM6MTY1CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHNldHRpbmcgcGVybWlzc2lvbnMgb2YgYCUuMjU1cyciCittc2dzdHIgIuC5gOC4geC4tOC4lOC4guC5ieC4reC4nOC4tOC4lOC4nuC4peC4suC4lOC4guC4k+C4sOC4geC4s+C4q+C4meC4lOC4geC4suC4o+C4reC4meC4uOC4jeC4suC4leC4quC4tOC4l+C4mOC4tOC5jOC4guC4reC4hyBgJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6Mzk1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBzdGF0IChkZXJlZmVyZW5jZSkgZXhpc3Rpbmcgc3ltbGluayBgJS4yNTBzJyIKK21zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiWIHN0YXQgKOC4iuC4teC5ieC4leC4suC4oeC4peC4tOC4h+C4geC5jCkgc3ltbGluayBgJS4yNTBzJyDguJfguLXguYjguKHguLXguK3guKLguLnguYgiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjQxNworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZmFpbGVkIHRvIHN0YXQgKGRlcmVmZXJlbmNlKSBwcm9wb3NlZCBuZXcgc3ltbGluayB0YXJnZXQgYCUuMjUwcycgZm9yICIKKyJzeW1saW5rIGAlLjI1MHMnIgorbXNnc3RyICIiCisi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiWIHN0YXQgKOC4iuC4teC5ieC4leC4suC4oeC4peC4tOC4h+C4geC5jCkg4Lib4Lil4Liy4Lii4LiX4Liy4LiHIHN5bWxpbmsg4LmD4Lir4Lih4LmIIGAlLjI1MHMnIOC4quC4s+C4q+C4o+C4seC4miBzeW1saW5rIGAlLjI1MHMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo0NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInRyeWluZyB0byBvdmVyd3JpdGUgYCUuMjUwcycsIHdoaWNoIGlzIHRoZSBkaXZlcnRlZCB2ZXJzaW9uIG9mIGAiCisiJS4yNTBzJyAocGFja2FnZTogJS4xMDBzKSIKK21zZ3N0ciAi4LiB4Liz4Lil4Lix4LiH4Lie4Lii4Liy4Lii4Liy4Lih4LmA4LiC4Li14Lii4LiZ4LiX4Lix4LiaIGAlLjI1MHMnIOC4i+C4tuC5iOC4h+C5gOC4m+C5h+C4meC4ieC4muC4seC4muC5gOC4muC4meC4guC4reC4hyBgJS4yNTBzJyAo4LmB4Lie4LiB4LmA4LiB4LiIOiAlLjEwMHMpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo0ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJ5aW5nIHRvIG92ZXJ3cml0ZSBgJS4yNTBzJywgd2hpY2ggaXMgdGhlIGRpdmVydGVkIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dzdHIgIuC4geC4s+C4peC4seC4h+C4nuC4ouC4suC4ouC4suC4oeC5gOC4guC4teC4ouC4meC4l+C4seC4miBgJS4yNTBzJyDguIvguLbguYjguIfguYDguJvguYfguJnguInguJrguLHguJrguYDguJrguJnguILguK3guIcgYCUuMjUwcyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjUxMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBgJS4yNTVzJyAod2hpY2ggSSB3YXMgYWJvdXQgdG8gaW5zdGFsbCkiCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4liBzdGF0IGAlLjI1NXMnICjguIvguLbguYjguIfguIHguLPguKXguLHguIfguIjguLDguJXguLTguJTguJXguLHguYnguIcpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo1MTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVuYWJsZSB0byBjbGVhbiB1cCBtZXNzIHN1cnJvdW5kaW5nIGAlLjI1NXMnIGJlZm9yZSBpbnN0YWxsaW5nIGFub3RoZXIgIgorInZlcnNpb24iCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC5gOC4geC5h+C4muC4geC4p+C4suC4lOC4quC4tOC5iOC4h+C4leC4geC4hOC5ieC4suC4h+C5gOC4geC4teC5iOC4ouC4p+C4geC4seC4miBgJS4yNTVzJyDguIHguYjguK3guJnguJfguLXguYjguIjguLDguJXguLTguJTguJXguLHguYnguIfguK3guLXguIHguKPguLjguYjguJnguYTguJTguYkiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjUyNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCByZXN0b3JlZCBgJS4yNTVzJyBiZWZvcmUgaW5zdGFsbGluZyBhbm90aGVyIHZlcnNpb24iCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4liBzdGF0IOC5geC4n+C5ieC4oSBgJS4yNTVzJyDguJfguLXguYjguYDguJ7guLTguYjguIfguJ/guLfguYnguJnguITguLfguJkg4LiB4LmI4Lit4LiZ4LiX4Li14LmI4LiI4Liw4LiV4Li04LiU4LiV4Lix4LmJ4LiH4Lit4Li14LiB4Lij4Li44LmI4LiZ4LmE4LiU4LmJIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo1NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiYXJjaGl2ZSBjb250YWluZWQgb2JqZWN0IGAlLjI1NXMnIG9mIHVua25vd24gdHlwZSAweCV4IgorbXNnc3RyICLguYHguJ7guIHguYDguIHguIjguKHguLXguK3guK3guJrguYDguIjguIHguJXguYwgYCUuMjU1cycg4LmA4Lib4LmH4LiZ4LiK4LiZ4Li04LiUIDB4JXgg4LiL4Li24LmI4LiH4LmE4Lih4LmI4Lij4Li54LmJ4LiI4Lix4LiBIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2MjYgc3JjL2RpdmVydGNtZC5jOjE1MCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NjgyCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIyMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI4NAorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE0NDEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE2ODAKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTY3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjQ0CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUyNworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc3RhdCBmaWxlICclcyciCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4liBzdGF0IOC5geC4n+C5ieC4oSAnJXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVwbGFjaW5nIGZpbGVzIGluIG9sZCBwYWNrYWdlICVzIC4uLlxuIgorbXNnc3RyICLguIHguLPguKXguLHguIfguYHguJfguJnguJfguLXguYjguYHguJ/guYnguKHguYPguJnguYHguJ7guIHguYDguIHguIjguYDguIHguYjguLLguILguK3guIcgJXMgLi4uXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjY0NQorIywgYy1mb3JtYXQKK21zZ2lkICJSZXBsYWNlZCBieSBmaWxlcyBpbiBpbnN0YWxsZWQgcGFja2FnZSAlcyAuLi5cbiIKK21zZ3N0ciAi4LiW4Li54LiB4LmB4LiX4LiZ4LiX4Li14LmI4LmC4LiU4Lii4LmB4Lif4LmJ4Lih4LmD4LiZ4LmB4Lie4LiB4LmA4LiB4LiI4LiV4Li04LiU4LiV4Lix4LmJ4LiH4LmD4Lir4Lih4LmI4LiC4Lit4LiHICVzIC4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInRyeWluZyB0byBvdmVyd3JpdGUgZGlyZWN0b3J5ICclLjI1MHMnIGluIHBhY2thZ2UgJS4yNTBzICUuMjUwcyB3aXRoICIKKyJub25kaXJlY3RvcnkiCittc2dzdHIgIiIKKyLguIHguLPguKXguLHguIfguJ7guKLguLLguKLguLLguKHguYDguILguLXguKLguJnguJfguLHguJrguYTguJTguYDguKPguIHguJfguK3guKPguLUgJyUuMjUwcycg4LmD4LiZ4LmB4Lie4LiB4LmA4LiB4LiIICUuMjUwcyAlLjI1MHMg4LiU4LmJ4Lin4Lii4Liq4Li04LmI4LiH4LiX4Li14LmI4LmE4Lih4LmI4LmD4LiK4LmI4LmE4LiU4LmA4Lij4LiB4LiX4Lit4Lij4Li1IgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJ5aW5nIHRvIG92ZXJ3cml0ZSAnJS4yNTBzJywgd2hpY2ggaXMgYWxzbyBpbiBwYWNrYWdlICUuMjUwcyAlLjI1MHMiCittc2dzdHIgIuC4geC4s+C4peC4seC4h+C4nuC4ouC4suC4ouC4suC4oeC5gOC4guC4teC4ouC4meC4l+C4seC4miAnJS4yNTBzJyDguIvguLbguYjguIfguK3guKLguLnguYjguYPguJnguYHguJ7guIHguYDguIHguIggJS4yNTBzICUuMjUwcyDguYDguIrguYjguJnguIHguLHguJkiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjcxMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGAlLjI1NXMnICh3aGlsZSBwcm9jZXNzaW5nIGAlLjI1NXMnKSIKK21zZ3N0ciAi4Liq4Lij4LmJ4Liy4LiHIGAlLjI1NXMnIOC5hOC4oeC5iOC4quC4s+C5gOC4o+C5h+C4iCAo4Lij4Liw4Lir4Lin4LmI4Liy4LiH4LiU4Liz4LmA4LiZ4Li04LiZ4LiB4Liy4LijIGAlLjI1NXMnKSIKKworIzogc3JjL2FyY2hpdmVzLmM6NzE4CisjLCBjLWZvcm1hdAorbXNnaWQgImJhY2tlbmQgZHBrZy1kZWIgZHVyaW5nIGAlLjI1NXMnIgorbXNnc3RyICLguYHguJrguYfguIHguYDguK3guJnguJTguYwgZHBrZy1kZWIg4Lij4Liw4Lir4Lin4LmI4Liy4LiHIGAlLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NDQgc3JjL2FyY2hpdmVzLmM6OTA4IHNyYy9hcmNoaXZlcy5jOjk0OQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nL3dyaXRpbmcgYCUuMjU1cyciCittc2dzdHIgIuC5gOC4geC4tOC4lOC4guC5ieC4reC4nOC4tOC4lOC4nuC4peC4suC4lOC4guC4k+C4sOC4m+C4tOC4lC/guYDguILguLXguKLguJkgYCUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc0OAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBwaXBlIGAlLjI1NXMnIgorbXNnc3RyICLguYDguIHguLTguJTguILguYnguK3guJzguLTguJTguJ7guKXguLLguJTguILguJPguLDguKrguKPguYnguLLguIfguYTguJvguJvguYwgYCUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc1MyBzcmMvYXJjaGl2ZXMuYzo3NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgZGV2aWNlIGAlLjI1NXMnIgorbXNnc3RyICLguYDguIHguLTguJTguILguYnguK3guJzguLTguJTguJ7guKXguLLguJTguILguJPguLDguKrguKPguYnguLLguIfguK3guLjguJvguIHguKPguJPguYwgYCUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc3MQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBoYXJkIGxpbmsgYCUuMjU1cyciCittc2dzdHIgIuC5gOC4geC4tOC4lOC4guC5ieC4reC4nOC4tOC4lOC4nuC4peC4suC4lOC4guC4k+C4sOC4quC4o+C5ieC4suC4hyBoYXJkIGxpbmsgYCUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc3NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NTM5CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIHN5bWJvbGljIGxpbmsgYCUuMjU1cyciCittc2dzdHIgIuC5gOC4geC4tOC4lOC4guC5ieC4reC4nOC4tOC4lOC4nuC4peC4suC4lOC4guC4k+C4sOC4quC4o+C5ieC4suC4hyBzeW1ib2xpYyBsaW5rIGAlLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgZGlyZWN0b3J5IGAlLjI1NXMnIgorbXNnc3RyICLguYDguIHguLTguJTguILguYnguK3guJzguLTguJTguJ7guKXguLLguJTguILguJPguLDguKrguKPguYnguLLguIfguYTguJTguYDguKPguIHguJfguK3guKPguLUgYCUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjgyMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gbW92ZSBhc2lkZSBgJS4yNTVzJyB0byBpbnN0YWxsIG5ldyB2ZXJzaW9uIgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguYDguJvguKXguLXguYjguKLguJnguIrguLfguYjguK3guYHguJ/guYnguKEgYCUuMjU1cycg4LiK4Lix4LmI4Lin4LiE4Lij4Liy4Lin4LmA4Lie4Li34LmI4Lit4LiV4Li04LiU4LiV4Lix4LmJ4LiH4Lij4Li44LmI4LiZ4LmD4Lir4Lih4LmI4LmE4LiU4LmJIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4MzIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjMyMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBsaW5rIGAlLjI1NXMnIgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguK3guYjguLLguJnguKXguLTguIfguIHguYwgYCUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjgzNCBzcmMvY29uZmlndXJlLmM6NDIzCisjLCBjLWZvcm1hdAorbXNnaWQgInN5bWJvbGljIGxpbmsgJyUuMjUwcycgc2l6ZSBoYXMgY2hhbmdlZCBmcm9tICVqZCB0byAlemQiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6ODM5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBtYWtlIGJhY2t1cCBzeW1saW5rIGZvciBgJS4yNTVzJyIKK21zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4Liq4Lij4LmJ4Liy4LiHIHN5bWxpbmsg4Liq4Liz4Lij4Lit4LiH4Liq4Liz4Lir4Lij4Lix4LiaIGAlLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNob3duIGJhY2t1cCBzeW1saW5rIGZvciBgJS4yNTVzJyIKK21zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4LiB4Liz4Lir4LiZ4LiU4LmA4LiI4LmJ4Liy4LiC4Lit4LiH4LiC4Lit4LiHIHN5bWxpbmsg4Liq4Liz4Lij4Lit4LiH4Liq4Liz4Lir4Lij4Lix4LiaIGAlLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4NDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG1ha2UgYmFja3VwIGxpbmsgb2YgYCUuMjU1cycgYmVmb3JlIGluc3RhbGxpbmcgbmV3IHZlcnNpb24iCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC4quC4o+C5ieC4suC4h+C4peC4tOC4h+C4geC5jOC4quC4s+C4o+C4reC4h+C4guC4reC4hyBgJS4yNTVzJyDguIHguYjguK3guJnguJXguLTguJTguJXguLHguYnguIfguKPguLjguYjguJnguYPguKvguKHguYjguYTguJTguYkiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjg2MyBzcmMvYXJjaGl2ZXMuYzo5NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IHZlcnNpb24gb2YgYCUuMjU1cyciCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC4leC4tOC4lOC4leC4seC5ieC4h+C4o+C4uOC5iOC4meC5g+C4q+C4oeC5iOC4guC4reC4hyBgJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6OTAyIHNyYy9hcmNoaXZlcy5jOjk0NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiAnJS4yNTVzJyIKK21zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4LmA4Lib4Li04LiUICclLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo5NDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgZmlsZSAnJS4yNTVzJyIKK21zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiWIHN5bmMg4LmB4Lif4LmJ4LihICclLjI1MHMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDAwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpZ25vcmluZyBkZXBlbmRlbmN5IHByb2JsZW0gd2l0aCAlczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorIuC4iOC4sOC4peC4sOC5gOC4peC4ouC4m+C4seC4jeC4q+C4suC4hOC4p+C4suC4oeC4guC4tuC5ieC4meC4leC5iOC4reC4geC4seC4meC4guC4reC4h+C5geC4nuC4geC5gOC4geC4iOC5g+C4meC4geC4suC4oyVzOlxuIgorIiVzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDA1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJjb25zaWRlcmluZyBkZWNvbmZpZ3VyYXRpb24gb2YgZXNzZW50aWFsXG4iCisiIHBhY2thZ2UgJXMsIHRvIGVuYWJsZSAlcy4iCittc2dzdHIgIiIKKyLguIjguLDguJ7guLTguIjguLLguKPguJPguLLguJbguK3guJnguITguLfguJnguITguYjguLLguJXguLHguYnguIfguILguK3guIfguYHguJ7guIHguYDguIHguIjguIjguLPguYDguJvguYfguJlcbiIKKyIgJXMg4LmA4Lie4Li34LmI4Lit4LmD4Lir4LmJ4Liq4Liy4Lih4Liy4Lij4LiWJXMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IG5vLCAlcyBpcyBlc3NlbnRpYWwsIHdpbGwgbm90IGRlY29uZmlndXJlXG4iCisiIGl0IGluIG9yZGVyIHRvIGVuYWJsZSAlcy5cbiIKK21zZ3N0ciAiIgorImRwa2c6IOC5hOC4oeC5iOC5hOC4lOC5iSAlcyDguYDguJvguYfguJnguYHguJ7guIHguYDguIHguIjguIjguLPguYDguJvguYfguJkg4LiI4Liw4LmE4Lih4LmI4LiW4Lit4LiZ4LiE4Li34LiZ4LiE4LmI4Liy4LiV4Lix4LmJ4LiHXG4iCisiIOC5gOC4nuC4t+C5iOC4reC5g+C4q+C5ieC4quC4suC4oeC4suC4o+C4liVzXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IG5vLCBjYW5ub3QgcHJvY2VlZCB3aXRoICVzICgtLWF1dG8tZGVjb25maWd1cmUgd2lsbCBoZWxwKTpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6IOC5hOC4oeC5iOC5hOC4lOC5iSDguYTguKHguYjguKrguLLguKHguLLguKPguJbguJTguLPguYDguJnguLTguJnguIHguLLguKMlcyDguJXguYjguK0gKC0tYXV0by1kZWNvbmZpZ3VyZSDguIrguYjguKfguKLguYTguJTguYkpOlxuIgorIiVzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDMyCisjLCBjLWZvcm1hdAorbXNnaWQgInJlbW92YWwgb2YgJS4yNTBzIgorbXNnc3RyICLguJbguK3guJTguJbguK3guJkgJS4yNTBzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDU3CisjLCBjLWZvcm1hdAorbXNnaWQgImluc3RhbGxhdGlvbiBvZiAlLjI1MHMiCittc2dzdHIgIuC4leC4tOC4lOC4leC4seC5ieC4hyAlLjI1MHMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IGNvbnNpZGVyaW5nIGRlY29uZmlndXJhdGlvbiBvZiAlcywgd2hpY2ggd291bGQgYmUgYnJva2VuIGJ5ICVzIC4uLlxuIgorbXNnc3RyICJkcGtnOiDguIjguLDguJ7guLTguIjguLLguKPguJPguLLguJbguK3guJnguITguLfguJnguITguYjguLLguJXguLHguYnguIfguILguK3guIcgJXMg4LiL4Li24LmI4LiH4LiI4Liw4Lih4Li14Lib4Lix4LiN4Lir4Liy4LmA4Lie4Lij4Liy4Liw4LiB4Liy4LijJXMgLi4uXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogeWVzLCB3aWxsIGRlY29uZmlndXJlICVzIChicm9rZW4gYnkgJXMpLlxuIgorbXNnc3RyICJkcGtnOiDguYTguJTguYkg4LiI4Liw4LiW4Lit4LiZ4LiE4Li34LiZ4LiE4LmI4Liy4LiV4Lix4LmJ4LiH4LiC4Lit4LiHICVzICjguKHguLXguJvguLHguI3guKvguLLguYDguJ7guKPguLLguLDguIHguLLguKMlcylcbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA2OSBzcmMvYXJjaGl2ZXMuYzoxMTg3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiByZWdhcmRpbmcgJXMgY29udGFpbmluZyAlczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6IOC5gOC4geC4teC5iOC4ouC4p+C4geC4seC4miAlcyDguIvguLbguYjguIfguJrguKPguKPguIjguLggJXM6XG4iCisiJXMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNzcKK21zZ2lkICJpZ25vcmluZyBicmVha2FnZSwgbWF5IHByb2NlZWQgYW55d2F5ISIKK21zZ3N0ciAi4LiI4Liw4Lil4Liw4LmA4Lil4Lii4LiB4Liy4Lij4Lie4Lix4LiH4LiC4Lit4LiH4LmB4Lie4LiB4LmA4LiB4LiIIOC4reC4suC4iOC4lOC4s+C5gOC4meC4tOC4meC4geC4suC4o+C4leC5iOC4reC5hOC4lOC5iSEiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImluc3RhbGxpbmcgJS4yNTBzIHdvdWxkIGJyZWFrICUuMjUwcywgYW5kXG4iCisiIGRlY29uZmlndXJhdGlvbiBpcyBub3QgcGVybWl0dGVkICgtLWF1dG8tZGVjb25maWd1cmUgbWlnaHQgaGVscCkiCittc2dzdHIgIiIKKyLguIHguLLguKPguJXguLTguJTguJXguLHguYnguIcgJS4yNTBzIOC4iOC4sOC4l+C4s+C5g+C4q+C5iSAlLjI1MHMg4Lie4Lix4LiHIOC5geC4peC4sFxuIgorIiDguYTguKHguYjguYTguJTguYnguK3guJnguLjguI3guLLguJXguYPguKvguYnguKHguLXguIHguLLguKPguJbguK3guJnguITguLfguJnguITguYjguLLguJXguLHguYnguIcgKC0tYXV0by1kZWNvbmZpZ3VyZSDguIrguYjguKfguKLguYTguJTguYkpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDg2CisjLCBjLWZvcm1hdAorbXNnaWQgImluc3RhbGxpbmcgJS4yNTBzIHdvdWxkIGJyZWFrIGV4aXN0aW5nIHNvZnR3YXJlIgorbXNnc3RyICLguIHguLLguKPguJXguLTguJTguJXguLHguYnguIcgJS4yNTBzIOC4iOC4sOC4l+C4s+C5g+C4q+C5ieC4i+C4reC4n+C4leC5jOC5geC4p+C4o+C5jOC4l+C4teC5iOC4oeC4teC4reC4ouC4ueC5iOC4nuC4seC4h+C5hOC4lOC5iSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTExNgorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiBjb25zaWRlcmluZyByZW1vdmluZyAlcyBpbiBmYXZvdXIgb2YgJXMgLi4uXG4iCittc2dzdHIgImRwa2c6IOC4iOC4sOC4nuC4tOC4iOC4suC4o+C4k+C4suC4peC4miAlcyDguYDguJ7guLfguYjguK3guYPguIrguYkgJXMg4LmB4LiX4LiZIC4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTIyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGlzIG5vdCBwcm9wZXJseSBpbnN0YWxsZWQgLSBpZ25vcmluZyBhbnkgZGVwZW5kZW5jaWVzIG9uIGl0LlxuIgorbXNnc3RyICIlcyDguYTguKHguYjguYTguJTguYnguJXguLTguJTguJXguLHguYnguIfguK3guKLguYjguLLguIfguJbguLnguIHguJXguYnguK3guIcgLSDguIjguLDguKXguLDguYDguKXguKLguYHguJ7guIHguYDguIHguIjguJfguLXguYjguJXguYnguK3guIfguYPguIrguYnguYHguJ7guIHguYDguIHguIjguJTguLHguIfguIHguKXguYjguLLguKdcbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE1MQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiBtYXkgaGF2ZSB0cm91YmxlIHJlbW92aW5nICVzLCBhcyBpdCBwcm92aWRlcyAlcyAuLi5cbiIKK21zZ3N0ciAiZHBrZzog4Lit4Liy4LiI4Lih4Li14Lib4Lix4LiN4Lir4Liy4LmD4LiZ4LiB4Liy4Lij4LiW4Lit4LiU4LiW4Lit4LiZICVzIOC5gOC4nuC4o+C4suC4sOC5geC4nuC4geC5gOC4geC4iOC4lOC4seC4h+C4geC4peC5iOC4suC4p+C4iOC4seC4lOC5gOC4leC4o+C4teC4ouC4oSAlcyAuLi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE2NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogcGFja2FnZSAlcyByZXF1aXJlcyByZWluc3RhbGxhdGlvbiwgYnV0IHdpbGwgcmVtb3ZlIGFueXdheSBhcyB5b3UgIgorInJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiZHBrZzog4LmB4Lie4LiB4LmA4LiB4LiIICVzIOC4leC5ieC4reC4h+C4leC4tOC4lOC4leC4seC5ieC4h+C4i+C5ieC4syDguYHguJXguYjguIjguLDguJbguK3guJTguJbguK3guJnguJXguLLguKHguJfguLXguYjguITguLjguJPguKrguLHguYjguIdcbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE2OQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiBwYWNrYWdlICVzIHJlcXVpcmVzIHJlaW5zdGFsbGF0aW9uLCB3aWxsIG5vdCByZW1vdmUuXG4iCittc2dzdHIgImRwa2c6IOC5geC4nuC4geC5gOC4geC4iCAlcyDguJXguYnguK3guIfguJXguLTguJTguJXguLHguYnguIfguIvguYnguLMg4LiI4Liw4LmE4Lih4LmI4LiW4Lit4LiU4LiW4Lit4LiZXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogeWVzLCB3aWxsIHJlbW92ZSAlcyBpbiBmYXZvdXIgb2YgJXMuXG4iCittc2dzdHIgImRwa2c6IOC5hOC4lOC5iSDguIjguLDguJbguK3guJTguJbguK3guJkgJXMg4LmA4Lie4Li34LmI4Lit4LmD4LiK4LmJICVzXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmxpY3RpbmcgcGFja2FnZXMgLSBub3QgaW5zdGFsbGluZyAlLjI1MHMiCittc2dzdHIgIuC5geC4nuC4geC5gOC4geC4iOC4guC4seC4lOC5geC4ouC5ieC4h+C4geC4seC4mSAtIOC4iOC4sOC5hOC4oeC5iOC4leC4tOC4lOC4leC4seC5ieC4hyAlLjI1MHMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExOTEKK21zZ2lkICJpZ25vcmluZyBjb25mbGljdCwgbWF5IHByb2NlZWQgYW55d2F5ISIKK21zZ3N0ciAi4LiI4Liw4Lil4Liw4LmA4Lil4Lii4LiE4Lin4Liy4Lih4LiC4Lix4LiU4LmB4Lii4LmJ4LiH4Lij4Liw4Lir4Lin4LmI4Liy4LiH4LmB4Lie4LiB4LmA4LiB4LiIIOC4reC4suC4iOC4lOC4s+C5gOC4meC4tOC4meC4geC4suC4o+C4leC5iOC4reC5hOC4lOC5iSEiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyMzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyAtLXJlY3Vyc2l2ZSBuZWVkcyBhdCBsZWFzdCBvbmUgcGF0aCBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyAtLXJlY3Vyc2l2ZSDguJXguYnguK3guIfguKHguLXguK3guLLguKPguYzguIHguLTguKfguYDguKHguJnguJXguYzguYDguJvguYfguJnguJ7guLLguJjguK3guKLguYjguLLguIfguJnguYnguK3guKLguKvguJnguLbguYjguIfguJ7guLLguJgiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNDUKK21zZ2lkICJmaW5kIGZvciBkcGtnIC0tcmVjdXJzaXZlIgorbXNnc3RyICJmaW5kIOC4quC4s+C4q+C4o+C4seC4miBkcGtnIC0tcmVjdXJzaXZlIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjY2Cittc2dpZCAiZmFpbGVkIHRvIGZkb3BlbiBmaW5kJ3MgcGlwZSIKK21zZ3N0ciAiZmRvcGVuIOC5hOC4m+C4m+C5jOC4guC4reC4hyBmaW5kIOC5hOC4oeC5iOC4quC4s+C5gOC4o+C5h+C4iCIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3MgorbXNnaWQgImVycm9yIHJlYWRpbmcgZmluZCdzIHBpcGUiCittc2dzdHIgIuC5gOC4geC4tOC4lOC4guC5ieC4reC4nOC4tOC4lOC4nuC4peC4suC4lOC4guC4k+C4sOC4reC5iOC4suC4meC5hOC4m+C4m+C5jOC4guC4reC4hyBmaW5kIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjczCittc2dpZCAiZXJyb3IgY2xvc2luZyBmaW5kJ3MgcGlwZSIKK21zZ3N0ciAi4LmA4LiB4Li04LiU4LiC4LmJ4Lit4Lic4Li04LiU4Lie4Lil4Liy4LiU4LiC4LiT4Liw4Lib4Li04LiU4LmE4Lib4Lib4LmM4LiC4Lit4LiHIGZpbmQiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmluZCBmb3IgLS1yZWN1cnNpdmUgcmV0dXJuZWQgdW5oYW5kbGVkIGVycm9yICVpIgorbXNnc3RyICJmaW5kIOC4quC4s+C4q+C4o+C4seC4miAtLXJlY3Vyc2l2ZSDguITguLfguJnguITguYjguLLguILguYnguK3guJzguLTguJTguJ7guKXguLLguJQgJWkg4LiL4Li24LmI4LiH4Lii4Lix4LiH4LmE4Lih4LmI4LiI4Lix4LiU4LiB4Liy4LijIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjc5Cittc2dpZCAic2VhcmNoZWQsIGJ1dCBmb3VuZCBubyBwYWNrYWdlcyAoZmlsZXMgbWF0Y2hpbmcgKi5kZWIpIgorbXNnc3RyICLguITguYnguJnguKvguLLguYHguKXguYnguKcg4LmB4LiV4LmI4LmE4Lih4LmI4Lie4Lia4LmB4Lie4LiB4LmA4LiB4LiIICjguYHguJ/guYnguKHguIvguLbguYjguIfguJXguKPguIfguIHguLHguJrguKPguLnguJvguYHguJrguJogKi5kZWIpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjkwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYXQgbGVhc3Qgb25lIHBhY2thZ2UgYXJjaGl2ZSBmaWxlIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIOC4leC5ieC4reC4h+C4geC4suC4o+C4reC4suC4o+C5jOC4geC4tOC4p+C5gOC4oeC4meC4leC5jOC5gOC4m+C5h+C4meC5geC4n+C5ieC4oeC5geC4nuC4geC5gOC4geC4iOC4reC4ouC5iOC4suC4h+C4meC5ieC4reC4ouC4q+C4meC4tuC5iOC4h+C5geC4n+C5ieC4oSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTMyNSBzcmMvZGl2ZXJ0Y21kLmM6Nzggc3JjL2RpdmVydGNtZC5jOjExOAorIzogc3JjL2VucXVpcnkuYzoxNjYgc3JjL2VucXVpcnkuYzoyNzkgc3JjL2VucXVpcnkuYzo0NDkgc3JjL2VucXVpcnkuYzo0NTEKKyM6IHNyYy9lbnF1aXJ5LmM6NDY0IHNyYy9tYWluLmM6NjYgc3JjL21haW4uYzoxNjMgc3JjL21haW4uYzozMTQKKyM6IHNyYy9tYWluLmM6NDkzIHNyYy9wYWNrYWdlcy5jOjI1NCBzcmMvcXVlcnljbWQuYzoyNTIgc3JjL3F1ZXJ5Y21kLmM6MzU1CisjOiBzcmMvcXVlcnljbWQuYzozOTYgc3JjL3F1ZXJ5Y21kLmM6NDA0IHNyYy9xdWVyeWNtZC5jOjQ0OCBzcmMvcXVlcnljbWQuYzo1MTcKKyM6IHNyYy9xdWVyeWNtZC5jOjYwNiBzcmMvcXVlcnljbWQuYzo2NTAgc3JjL3NlbGVjdC5jOjc5IHNyYy9zdGF0Y21kLmM6NjgKKyM6IHNyYy9zdGF0Y21kLmM6OTggc3JjL3RyaWdjbWQuYzo1OCBzcmMvdHJpZ2NtZC5jOjkwIGRwa2ctZGViL2J1aWxkLmM6NDQxCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjE3IGRwa2ctZGViL2V4dHJhY3QuYzoyNTAgZHBrZy1kZWIvaW5mby5jOjIwMworIzogZHBrZy1kZWIvaW5mby5jOjI2NSBkcGtnLWRlYi9tYWluLmM6NjAgZHBrZy1kZWIvbWFpbi5jOjEyNgorIzogZHBrZy1zcGxpdC9pbmZvLmM6MjU3IGRwa2ctc3BsaXQvbWFpbi5jOjU0IGRwa2ctc3BsaXQvbWFpbi5jOjk4CisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTQ0IGRwa2ctc3BsaXQvcXVldWUuYzoyODAKK21zZ2lkICI8c3RhbmRhcmQgb3V0cHV0PiIKK21zZ3N0ciAiPOC5gOC4reC4suC4leC5jOC4nuC4uOC4leC4oeC4suC4leC4o+C4kOC4suC4mT4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzMjYgc3JjL3BhY2thZ2VzLmM6MjU1IHNyYy9xdWVyeWNtZC5jOjI1MworIzogc3JjL3F1ZXJ5Y21kLmM6MzUzIHNyYy9xdWVyeWNtZC5jOjQ1NCBzcmMvcXVlcnljbWQuYzo1MTggc3JjL3NlbGVjdC5jOjgwCisjOiBkcGtnLXNwbGl0L21haW4uYzoxNjkgZHBrZy1zcGxpdC9xdWV1ZS5jOjIxOAorbXNnaWQgIjxzdGFuZGFyZCBlcnJvcj4iCittc2dzdHIgIjzguIrguYjguK3guIfguYHguKrguJTguIfguILguYnguK3guJzguLTguJTguJ7guKXguLLguJTguKHguLLguJXguKPguJDguLLguJk+IgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzY3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJTZWxlY3RpbmcgcHJldmlvdXNseSBkZXNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dpZCAiU2VsZWN0aW5nIHByZXZpb3VzbHkgdW5zZWxlY3RlZCBwYWNrYWdlICVzLlxuIgorbXNnc3RyICLguIHguLPguKXguLHguIfguYDguKXguLfguK3guIHguYHguJ7guIHguYDguIHguIggJXMg4LiX4Li14LmI4LmA4LiU4Li04Lih4LmE4Lih4LmI4LmE4LiU4LmJ4LmA4Lil4Li34Lit4LiBXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzNzEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIlNraXBwaW5nIGRlc2VsZWN0ZWQgcGFja2FnZSAlcy5cbiIKK21zZ2lkICJTa2lwcGluZyB1bnNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dzdHIgIuC4geC4s+C4peC4seC4h+C4guC5ieC4suC4oeC5geC4nuC4geC5gOC4geC4iCAlcyDguJfguLXguYjguYTguKHguYjguYTguJTguYnguYDguKXguLfguK3guIFcbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTM4NworIywgYy1mb3JtYXQKK21zZ2lkICJWZXJzaW9uICUuMjUwcyBvZiAlLjI1MHMgYWxyZWFkeSBpbnN0YWxsZWQsIHNraXBwaW5nLlxuIgorbXNnc3RyICLguKPguLjguYjguJkgJS4yNTBzIOC4guC4reC4hyAlLjI1MHMg4LiW4Li54LiB4LiV4Li04LiU4LiV4Lix4LmJ4LiH4LmE4Lin4LmJ4LmB4Lil4LmJ4LinIOC4guC4reC4guC5ieC4suC4oVxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzk3CisjLCBjLWZvcm1hdAorbXNnaWQgImRvd25ncmFkaW5nICUuMjUwcyBmcm9tICUuMjUwcyB0byAlLjI1MHMuIgorbXNnc3RyICLguIjguLDguJvguKPguLHguJrguKPguLjguYjguJkgJS4yNTBzIOC4peC4hyDguIjguLLguIEgJS4yNTBzIOC5gOC4m+C5h+C4mSAlLjI1MHMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjE0MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiV2lsbCBub3QgZG93bmdyYWRlICUuMjUwcyBmcm9tIHZlcnNpb24gJS4yNTBzIHRvICUuMjUwcywgc2tpcHBpbmcuXG4iCittc2dzdHIgIuC4iOC4sOC5hOC4oeC5iOC4m+C4o+C4seC4muC4o+C4uOC5iOC4mSAlLjI1MHMg4Lil4LiHIOC4iOC4suC4geC4o+C4uOC5iOC4mSAlLjI1MHMg4LmA4Lib4LmH4LiZICUuMjUwcyDguILguK3guILguYnguLLguKFcbiIKKworIzogc3JjL2NsZWFudXAuYzo4NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidW5hYmxlIHRvIHJlbW92ZSBuZXdseS1pbnN0YWxsZWQgdmVyc2lvbiBvZiBgJS4yNTBzJyB0byBhbGxvdyByZWluc3RhbGxhdGlvbiAiCisib2YgYmFja3VwIGNvcHkiCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC4peC4muC4o+C4uOC5iOC4meC4l+C4teC5iOC4leC4tOC4lOC4leC4seC5ieC4h+C5g+C4q+C4oeC5iOC4guC4reC4hyBgJS4yNTBzJyDguYDguJ7guLfguYjguK3guJXguLTguJTguJXguLHguYnguIfguYDguJnguLfguYnguK3guKvguLLguJfguLXguYjguKrguLPguKPguK3guIfguYTguKfguYnguYTguJTguYkiCisKKyM6IHNyYy9jbGVhbnVwLmM6OTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlc3RvcmUgYmFja3VwIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC4n+C4t+C5ieC4meC4hOC4t+C4meC4ieC4muC4seC4muC4quC4s+C4o+C4reC4h+C4guC4reC4hyBgJS4yNTBzJyIKKworIzogc3JjL2NsZWFudXAuYzo5NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIGJhY2t1cCBjb3B5IG9mICclLjI1MHMnIgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguKXguJrguInguJrguLHguJrguKrguLPguKPguK3guIfguILguK3guIcgJyUuMjUwcyciCisKKyM6IHNyYy9jbGVhbnVwLmM6MTAxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgbmV3bHktaW5zdGFsbGVkIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC4peC4muC4o+C4uOC5iOC4meC4l+C4teC5iOC4leC4tOC4lOC4leC4seC5ieC4h+C5g+C4q+C4oeC5iOC4guC4reC4hyBgJS4yNTBzJyIKKworIzogc3JjL2NsZWFudXAuYzoxMDgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBuZXdseS1leHRyYWN0ZWQgdmVyc2lvbiBvZiBgJS4yNTBzJyIKK21zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4Lil4Lia4Lij4Li44LmI4LiZ4LiX4Li14LmI4LmB4LiV4LiB4LmD4Lir4Lih4LmI4LiC4Lit4LiHIGAlLjI1MHMnIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTA0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IG5ldyBkaXN0cmlidXRlZCBjb25mZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiWIHN0YXQg4LmB4Lif4LmJ4Lih4LiE4LmI4Liy4LiV4Lix4LmJ4LiHICclLjI1MHMnIOC4ieC4muC4seC4muC4iOC4seC4lOC5geC4iOC4geC4o+C4uOC5iOC4meC5g+C4q+C4oeC5iCIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBjdXJyZW50IGluc3RhbGxlZCBjb25mZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiWIHN0YXQg4LmB4Lif4LmJ4Lih4LiE4LmI4Liy4LiV4Lix4LmJ4LiHIGAlLjI1MHMnIOC4l+C4teC5iOC4leC4tOC4lOC4leC4seC5ieC4h+C5g+C4meC4m+C4seC4iOC4iOC4uOC4muC4seC4mSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjEyNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiQ29uZmlndXJhdGlvbiBmaWxlIGAlcycsIGRvZXMgbm90IGV4aXN0IG9uIHN5c3RlbS5cbiIKKyJJbnN0YWxsaW5nIG5ldyBjb25maWcgZmlsZSBhcyB5b3UgcmVxdWVzdGVkLlxuIgorbXNnc3RyICIiCisiXG4iCisi4LmE4Lih4LmI4Lih4Li14LmB4Lif4LmJ4Lih4LiE4LmI4Liy4LiV4Lix4LmJ4LiHIGAlcycg4Lit4Lii4Li54LmI4LmD4LiZ4Lij4Liw4Lia4LiaXG4iCisi4LiI4Liw4LiV4Li04LiU4LiV4Lix4LmJ4LiH4LmB4Lif4LmJ4Lih4LiE4LmI4Liy4LiV4Lix4LmJ4LiH4LmB4Lif4LmJ4Lih4LmD4Lir4Lih4LmI4LiV4Liy4Lih4LiX4Li14LmI4LiE4Li44LiT4Liq4Lix4LmI4LiHXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzoxNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW1vdmUgb2xkIGJhY2t1cCAnJS4yNTBzJzogJXMiCittc2dzdHIgIiVzOiDguYTguKHguYjguKrguLLguKHguLLguKPguJbguKXguJrguYHguJ/guYnguKHguKrguLPguKPguK3guIfguYDguIHguYjguLIgJyUuMjUwcyc6ICVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTc2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVuYW1lICclLjI1MHMnIHRvICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiJXM6IOC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC5gOC4m+C4peC4teC5iOC4ouC4meC4iuC4t+C5iOC4rSAnJS4yNTBzJyDguYDguJvguYfguJkgJyUuMjUwcyc6ICVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTgyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiJXM6IOC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC4peC4miAnJS4yNTBzJzogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxODgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW1vdmUgb2xkIGRpc3RyaWJ1dGVkIHZlcnNpb24gJyUuMjUwcyc6ICVzIgorbXNnc3RyICIlczog4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4Lil4Lia4Lij4Li44LmI4LiZ4LiI4Lix4LiU4LmB4LiI4LiB4Lij4Li44LmI4LiZ4LmA4LiB4LmI4LiyICclLjI1MHMnOiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE5MgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIHJlbW92ZSAnJS4yNTBzJyAoYmVmb3JlIG92ZXJ3cml0ZSk6ICVzIgorbXNnc3RyICIlczog4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4Lil4LiaICclLjI1MHMnICjguIHguYjguK3guJnguYDguILguLXguKLguJnguJfguLHguJopOiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE5NgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIGxpbmsgJyUuMjUwcycgdG8gJyUuMjUwcyc6ICVzIgorbXNnc3RyICIlczog4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4LmA4LiK4Li34LmI4Lit4Lih4LmC4Lii4LiHICclLjI1MHMnIOC5hOC4m+C4l+C4teC5iCAnJS4yNTBzJzogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoyMDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW5zdGFsbGluZyBuZXcgdmVyc2lvbiBvZiBjb25maWcgZmlsZSAlcyAuLi5cbiIKK21zZ3N0ciAi4LiB4Liz4Lil4Lix4LiH4LiV4Li04LiU4LiV4Lix4LmJ4LiH4Lij4Li44LmI4LiZ4LmD4Lir4Lih4LmI4LiC4Lit4LiH4LmB4Lif4LmJ4Lih4LiE4LmI4Liy4LiV4Lix4LmJ4LiHICVzIC4uLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjA2IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo1NDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgYCUuMjUwcycgYXMgYCUuMjUwcyciCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC4leC4tOC4lOC4leC4seC5ieC4hyBgJS4yNTBzJyDguYPguJnguIrguLfguYjguK0gYCUuMjUwcyciCisKKyM6IHNyYy9jb25maWd1cmUuYzoyNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gcGFja2FnZSBuYW1lZCBgJXMnIGlzIGluc3RhbGxlZCwgY2Fubm90IGNvbmZpZ3VyZSIKK21zZ3N0ciAi4LmE4Lih4LmI4Lih4Li14LmB4Lie4LiB4LmA4LiB4LiI4LiK4Li34LmI4LitIGAlcycg4LiV4Li04LiU4LiV4Lix4LmJ4LiH4LmE4Lin4LmJIOC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC4leC4seC5ieC4h+C4hOC5iOC4suC5hOC4lOC5iSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI2MAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlICUuMjUwcyBpcyBhbHJlYWR5IGluc3RhbGxlZCBhbmQgY29uZmlndXJlZCIKK21zZ3N0ciAi4LmB4Lie4LiB4LmA4LiB4LiIICUuMjUwcyDguJbguLnguIHguJXguLTguJTguJXguLHguYnguIfguYHguKXguLDguJXguLHguYnguIfguITguYjguLLguYDguKPguLXguKLguJrguKPguYnguK3guKLguYHguKXguYnguKciCisKKyM6IHNyYy9jb25maWd1cmUuYzoyNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInBhY2thZ2UgJS4yNTBzIGlzIG5vdCByZWFkeSBmb3IgY29uZmlndXJhdGlvblxuIgorIiBjYW5ub3QgY29uZmlndXJlIChjdXJyZW50IHN0YXR1cyBgJS4yNTBzJykiCittc2dzdHIgIiIKKyLguYHguJ7guIHguYDguIHguIggJS4yNTBzIOC5hOC4oeC5iOC4nuC4o+C5ieC4reC4oeC4quC4s+C4q+C4o+C4seC4muC4geC4suC4o+C4leC4seC5ieC4h+C4hOC5iOC4slxuIgorIiDguYTguKHguYjguKrguLLguKHguLLguKPguJbguJXguLHguYnguIfguITguYjguLLguYTguJTguYkgKOC4quC4luC4suC4meC4sOC4m+C4seC4iOC4iOC4uOC4muC4seC4mSBgJS4yNTBzJykiCisKKyM6IHNyYy9jb25maWd1cmUuYzoyOTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IGRlcGVuZGVuY3kgcHJvYmxlbXMgcHJldmVudCBjb25maWd1cmF0aW9uIG9mICVzOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzog4Lib4Lix4LiN4Lir4Liy4LiE4Lin4Liy4Lih4LiC4Li24LmJ4LiZ4LiV4LmI4Lit4LiB4Lix4LiZ4Lij4Liw4Lir4Lin4LmI4Liy4LiH4LmB4Lie4LiB4LmA4LiB4LiI4LiX4Liz4LmD4Lir4LmJ4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4LiV4Lix4LmJ4LiH4LiE4LmI4LiyICVzOlxuIgorIiVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6Mjk3Cittc2dpZCAiZGVwZW5kZW5jeSBwcm9ibGVtcyAtIGxlYXZpbmcgdW5jb25maWd1cmVkIgorbXNnc3RyICLguKHguLXguJvguLHguI3guKvguLLguITguKfguLLguKHguILguLbguYnguJnguJXguYjguK3guIHguLHguJnguKPguLDguKvguKfguYjguLLguIfguYHguJ7guIHguYDguIHguIggLSDguIjguLDguJfguLTguYnguIfguYTguKfguYnguYLguJTguKLguYTguKHguYjguJXguLHguYnguIfguITguYjguLIiCisKKyM6IHNyYy9jb25maWd1cmUuYzozMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6ICVzOiBkZXBlbmRlbmN5IHByb2JsZW1zLCBidXQgY29uZmlndXJpbmcgYW55d2F5IGFzIHlvdSByZXF1ZXN0ZWQ6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiAlczog4Lih4Li14Lib4Lix4LiN4Lir4Liy4LiE4Lin4Liy4Lih4LiC4Li24LmJ4LiZ4LiV4LmI4Lit4LiB4Lix4LiZ4Lij4Liw4Lir4Lin4LmI4Liy4LiH4LmB4Lie4LiB4LmA4LiB4LiIIOC5geC4leC5iOC4iOC4sOC4leC4seC5ieC4h+C4hOC5iOC4suC4leC4suC4oeC4l+C4teC5iOC4hOC4uOC4k+C4quC4seC5iOC4hzpcbiIKKyIlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjMwOQorbXNnaWQgIiIKKyJQYWNrYWdlIGlzIGluIGEgdmVyeSBiYWQgaW5jb25zaXN0ZW50IHN0YXRlIC0geW91IHNob3VsZFxuIgorIiByZWluc3RhbGwgaXQgYmVmb3JlIGF0dGVtcHRpbmcgY29uZmlndXJhdGlvbi4iCittc2dzdHIgIiIKKyLguYHguJ7guIHguYDguIHguIjguK3guKLguLnguYjguYPguJnguKrguJbguLLguJnguLDguYTguKHguYjguITguKPguJrguYDguJXguYfguKHguK3guKLguYjguLLguIfguKLguYjguLPguYHguKLguYggLSDguITguLjguJPguITguKfguKPguJXguLTguJTguJXguLHguYnguIfguYHguJ7guIHguYDguIHguIjguJnguLXguYnguIvguYnguLNcbiIKKyIg4LiB4LmI4Lit4LiZ4LiX4Li14LmI4LiI4Liw4Lie4Lii4Liy4Lii4Liy4Lih4LiV4Lix4LmJ4LiH4LiE4LmI4Liy4LiV4LmI4Lit4LmE4LibIgorCisjOiBzcmMvY29uZmlndXJlLmM6MzEyCisjLCBjLWZvcm1hdAorbXNnaWQgIlNldHRpbmcgdXAgJXMgKCVzKSAuLi5cbiIKK21zZ3N0ciAi4LiB4Liz4Lil4Lix4LiH4LiV4Lix4LmJ4LiH4LiE4LmI4LiyICVzICglcykgLi4uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzozOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiB1bmFibGUgdG8gc3RhdCBjb25maWcgZmlsZSAnJXMnXG4iCisiICg9ICclcycpOiAlcyIKK21zZ3N0ciAiIgorIiVzOiDguYTguKHguYjguKrguLLguKHguLLguKPguJYgc3RhdCDguYHguJ/guYnguKHguITguYjguLLguJXguLHguYnguIcgJyVzJ1xuIgorIiAoPSAnJXMnKTogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzo0MDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBjb25maWcgZmlsZSAnJXMnIGlzIGEgY2lyY3VsYXIgbGlua1xuIgorIiAoPSAnJXMnKSIKK21zZ3N0ciAiIgorIiVzOiDguYHguJ/guYnguKHguITguYjguLLguJXguLHguYnguIcgJyVzJyDguYDguJvguYfguJnguKXguLTguIfguIHguYzguKfguJnguIHguKXguLHguJpcbiIKKyIgKD0gJyVzJykiCisKKyM6IHNyYy9jb25maWd1cmUuYzo0MTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiB1bmFibGUgdG8gcmVhZGxpbmsgY29uZmZpbGUgJyVzJ1xuIgorIiAoPSAnJXMnKTogJXMiCittc2dzdHIgIiIKKyIlczog4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4Lit4LmI4Liy4LiZ4Lil4Li04LiH4LiB4LmM4LiC4Lit4LiH4LmB4Lif4LmJ4Lih4LiE4LmI4Liy4LiV4Lix4LmJ4LiHICclcydcbiIKKyIgKD0gJyVzJyk6ICVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDQ0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogY29uZmZpbGUgJyUuMjUwcycgcmVzb2x2ZXMgdG8gZGVnZW5lcmF0ZSBmaWxlbmFtZVxuIgorIiAoJyVzJyBpcyBhIHN5bWxpbmsgdG8gJyVzJykiCittc2dzdHIgIiIKKyIlczog4LmB4Lif4LmJ4Lih4LiE4LmI4Liy4LiV4Lix4LmJ4LiHICclLjI1MHMnIOC4iuC4teC5ieC4leC5iOC4reC5hiDguYTguJsg4LiB4Lil4Liy4Lii4LmA4Lib4LmH4LiZ4LiK4Li34LmI4Lit4LmB4Lif4LmJ4Lih4LiX4Li14LmI4LmA4Liq4Li14Lii4Lir4Liy4LiiXG4iCisiICgnJXMnIOC5gOC4m+C5h+C4mSBzeW1saW5rIOC5hOC4m+C4ouC4seC4hyAnJXMnKSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQ2MAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogY29uZmZpbGUgJyUuMjUwcycgaXMgbm90IGEgcGxhaW4gZmlsZSBvciBzeW1saW5rICg9ICclcycpIgorbXNnc3RyICIlczog4LmB4Lif4LmJ4Lih4LiE4LmI4Liy4LiV4Lix4LmJ4LiHICclLjI1MHMnIOC5hOC4oeC5iOC5g+C4iuC5iOC5geC4n+C5ieC4oeC4mOC4o+C4o+C4oeC4lOC4suC4q+C4o+C4t+C4rSBzeW1saW5rICg9ICclcycpIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDg2Cittc2dpZCAibWQ1aGFzaCIKK21zZ3N0ciAibWQ1aGFzaCIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQ5MgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogdW5hYmxlIHRvIG9wZW4gY29uZmZpbGUgJXMgZm9yIGhhc2g6ICVzIgorbXNnc3RyICIlczog4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4LmA4Lib4Li04LiU4LmB4Lif4LmJ4Lih4LiE4LmI4Liy4LiV4Lix4LmJ4LiHICVzIOC4quC4s+C4q+C4o+C4seC4muC4l+C4syBoYXNoOiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjUyMiBzcmMvY29uZmlndXJlLmM6NTI2Cittc2dpZCAiY29uZmZpbGUgZGlmZmVyZW5jZSB2aXN1YWxpemVyIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo1NDMKK21zZ2lkICJUeXBlIGBleGl0JyB3aGVuIHlvdSdyZSBkb25lLlxuIgorbXNnc3RyICLguJ7guLTguKHguJ7guYwgYGV4aXQnIOC5gOC4oeC4t+C5iOC4reC5gOC4quC4o+C5h+C4iOC5geC4peC5ieC4p1xuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NTUyIHNyYy9jb25maWd1cmUuYzo1NTYKK21zZ2lkICJjb25mZmlsZSBzaGVsbCIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjAyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJDb25maWd1cmF0aW9uIGZpbGUgYCVzJyIKK21zZ3N0ciAiIgorIlxuIgorIuC5geC4n+C5ieC4oeC4hOC5iOC4suC4leC4seC5ieC4hyBgJXMnIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjA0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAoYWN0dWFsbHkgYCVzJykiCittc2dzdHIgIiAo4LiE4Lin4Liy4Lih4LiI4Lij4Li04LiH4LiE4Li34LitIGAlcycpIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjA4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgPT0+IEZpbGUgb24gc3lzdGVtIGNyZWF0ZWQgYnkgeW91IG9yIGJ5IGEgc2NyaXB0LlxuIgorIiA9PT4gRmlsZSBhbHNvIGluIHBhY2thZ2UgcHJvdmlkZWQgYnkgcGFja2FnZSBtYWludGFpbmVyLlxuIgorbXNnc3RyICIiCisiXG4iCisiID09PiDguYHguJ/guYnguKHguYPguJnguKPguLDguJrguJrguIvguLbguYjguIfguITguLjguJPguKrguKPguYnguLLguIfguYDguK3guIfguKvguKPguLfguK3guKrguKPguYnguLLguIfguYLguJTguKLguKrguITguKPguLTguJvguJXguYxcbiIKKyIgPT0+IOC5geC4n+C5ieC4oeC4i+C4tuC5iOC4h+C4oeC4suC4geC4seC4muC5geC4nuC4geC5gOC4geC4iOC5geC4peC4sOC4iOC4seC4lOC5gOC4leC4o+C4teC4ouC4oeC5guC4lOC4ouC4nOC4ueC5ieC4lOC4ueC5geC4peC5geC4nuC4geC5gOC4geC4iFxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjEzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgICAgIE5vdCBtb2RpZmllZCBzaW5jZSBpbnN0YWxsYXRpb24uXG4iCittc2dzdHIgIiIKKyJcbiIKKyIgICAgIOC4ouC4seC4h+C5hOC4oeC5iOC4oeC4teC4geC4suC4o+C5geC4geC5ieC5hOC4guC4meC4seC4muC5geC4leC5iOC4leC4tOC4lOC4leC4seC5ieC4h+C4oeC4slxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjE1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgPT0+IE1vZGlmaWVkIChieSB5b3Ugb3IgYnkgYSBzY3JpcHQpIHNpbmNlIGluc3RhbGxhdGlvbi5cbiIKK21zZ3N0ciAiIgorIlxuIgorIiA9PT4g4Lih4Li14LiB4Liy4Lij4LmB4LiB4LmJ4LmE4LiCICjguYLguJTguKLguITguLjguJPguKvguKPguLfguK3guYLguJTguKLguKrguITguKPguLTguJvguJXguYwpIOC4q+C4peC4seC4h+C4geC4suC4o+C4leC4tOC4lOC4leC4seC5ieC4h1xuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjE2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgPT0+IERlbGV0ZWQgKGJ5IHlvdSBvciBieSBhIHNjcmlwdCkgc2luY2UgaW5zdGFsbGF0aW9uLlxuIgorbXNnc3RyICIiCisiXG4iCisiID09PiDguJbguLnguIHguKXguJogKOC5guC4lOC4ouC4hOC4uOC4k+C4q+C4o+C4t+C4reC5guC4lOC4ouC4quC4hOC4o+C4tOC4m+C4leC5jCkg4Lir4Lil4Lix4LiH4LiB4Liy4Lij4LiV4Li04LiU4LiV4Lix4LmJ4LiHXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBQYWNrYWdlIGRpc3RyaWJ1dG9yIGhhcyBzaGlwcGVkIGFuIHVwZGF0ZWQgdmVyc2lvbi5cbiIKK21zZ3N0ciAiID09PiDguJzguLnguYnguIjguLHguJTguYHguIjguIHguYHguJ7guIHguYDguIHguIjguYTguJTguYnguIjguLHguJTguYDguJXguKPguLXguKLguKHguKPguLjguYjguJnguYPguKvguKHguYjguYPguKvguYlcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYyMAorIywgYy1mb3JtYXQKK21zZ2lkICIgICAgIFZlcnNpb24gaW4gcGFja2FnZSBpcyB0aGUgc2FtZSBhcyBhdCBsYXN0IGluc3RhbGxhdGlvbi5cbiIKK21zZ3N0ciAiICAgICDguInguJrguLHguJrguYPguJnguYHguJ7guIHguYDguIHguIjguKHguLXguYDguJnguLfguYnguK3guKvguLLguYDguKvguKHguLfguK3guJnguIHguLHguJrguJfguLXguYjguJXguLTguJTguJXguLHguYnguIfguITguKPguLHguYnguIfguKXguYjguLLguKrguLjguJRcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYyOAorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IFVzaW5nIG5ldyBmaWxlIGFzIHlvdSByZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiA9PT4g4LiI4Liw4LmD4LiK4LmJ4LmB4Lif4LmJ4Lih4LmD4Lir4Lih4LmI4LiV4Liy4Lih4LiX4Li14LmI4LiE4Li44LiT4Liq4Lix4LmI4LiHXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBVc2luZyBjdXJyZW50IG9sZCBmaWxlIGFzIHlvdSByZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiA9PT4g4LiI4Liw4LmD4LiK4LmJ4LmB4Lif4LmJ4Lih4LmA4LiU4Li04Lih4LiV4Liy4Lih4LiX4Li14LmI4LiE4Li44LiT4Liq4Lix4LmI4LiHXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBLZWVwaW5nIG9sZCBjb25maWcgZmlsZSBhcyBkZWZhdWx0LlxuIgorbXNnc3RyICIgPT0+IOC4iOC4sOC5g+C4iuC5ieC5geC4n+C5ieC4oeC4hOC5iOC4suC4leC4seC5ieC4h+C5gOC4geC5iOC4suC5guC4lOC4ouC4m+C4o+C4tOC4ouC4suC4olxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gVXNpbmcgbmV3IGNvbmZpZyBmaWxlIGFzIGRlZmF1bHQuXG4iCittc2dzdHIgIiA9PT4g4LiI4Liw4LmD4LiK4LmJ4LmB4Lif4LmJ4Lih4LiE4LmI4Liy4LiV4Lix4LmJ4LiH4LmD4Lir4Lih4LmI4LmC4LiU4Lii4Lib4Lij4Li04Lii4Liy4LiiXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiAgIFdoYXQgd291bGQgeW91IGxpa2UgdG8gZG8gYWJvdXQgaXQgPyAgWW91ciBvcHRpb25zIGFyZTpcbiIKKyIgICAgWSBvciBJICA6IGluc3RhbGwgdGhlIHBhY2thZ2UgbWFpbnRhaW5lcidzIHZlcnNpb25cbiIKKyIgICAgTiBvciBPICA6IGtlZXAgeW91ciBjdXJyZW50bHktaW5zdGFsbGVkIHZlcnNpb25cbiIKKyIgICAgICBEICAgICA6IHNob3cgdGhlIGRpZmZlcmVuY2VzIGJldHdlZW4gdGhlIHZlcnNpb25zXG4iCisiICAgICAgWiAgICAgOiBzdGFydCBhIHNoZWxsIHRvIGV4YW1pbmUgdGhlIHNpdHVhdGlvblxuIgorbXNnc3RyICIiCisiICAg4LiE4Li44LiT4LiV4LmJ4Lit4LiH4LiB4Liy4Lij4LiX4Liz4Liq4Li04LmI4LiH4LmD4LiU4LiB4Lix4Lia4LmB4Lif4LmJ4Lih4LiZ4Li14LmJPyAg4LiV4Lix4Lin4LmA4Lil4Li34Lit4LiB4LiC4Lit4LiH4LiE4Li44LiT4LiE4Li34LitOlxuIgorIiAgICBZIOC4q+C4o+C4t+C4rSBJIDog4LiV4Li04LiU4LiV4Lix4LmJ4LiH4LiJ4Lia4Lix4Lia4LiC4Lit4LiH4Lic4Li54LmJ4LiU4Li54LmB4Lil4LmB4Lie4LiB4LmA4LiB4LiIXG4iCisiICAgIE4g4Lir4Lij4Li34LitIE8gOiDguYPguIrguYnguInguJrguLHguJrguYDguJTguLTguKHguILguK3guIfguITguLjguJPguJfguLXguYjguJXguLTguJTguJXguLHguYnguIfguK3guKLguLnguYhcbiIKKyIgICAgICBEICAgICA6IOC5geC4quC4lOC4h+C4hOC4p+C4suC4oeC5geC4leC4geC4leC5iOC4suC4h+C4o+C4sOC4q+C4p+C5iOC4suC4h+C4l+C4seC5ieC4h+C4quC4reC4h+C4ieC4muC4seC4mlxuIgorIiAgICAgIFogICAgIDog4Lie4Lix4LiB4LmC4Lie4Lij4LmA4LiL4Liq4LiZ4Li14LmJ4Lil4LiH4LmE4Lib4LmA4Lia4Li34LmJ4Lit4LiH4Lir4Lil4Lix4LiH4LmA4Lie4Li34LmI4Lit4LiV4Lij4Lin4LiI4Liq4Lit4Lia4Lij4Liw4Lia4LiaXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIFRoZSBkZWZhdWx0IGFjdGlvbiBpcyB0byBrZWVwIHlvdXIgY3VycmVudCB2ZXJzaW9uLlxuIgorbXNnc3RyICIg4LiB4Liy4Lij4LiB4Lij4Liw4LiX4Liz4Lib4Lij4Li04Lii4Liy4Lii4LiE4Li34Lit4LmD4LiK4LmJ4LiJ4Lia4Lix4Lia4LmA4LiU4Li04Lih4LiC4Lit4LiH4LiE4Li44LiTXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIFRoZSBkZWZhdWx0IGFjdGlvbiBpcyB0byBpbnN0YWxsIHRoZSBuZXcgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIOC4geC4suC4o+C4geC4o+C4sOC4l+C4s+C4m+C4o+C4tOC4ouC4suC4ouC4hOC4t+C4reC4leC4tOC4lOC4leC4seC5ieC4h+C4ieC4muC4seC4muC5g+C4q+C4oeC5iFxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjY2Cittc2dpZCAiW2RlZmF1bHQ9Tl0iCittc2dzdHIgIlvguJvguKPguLTguKLguLLguKI9Tl0iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NjcKK21zZ2lkICJbZGVmYXVsdD1ZXSIKK21zZ3N0ciAiW+C4m+C4o+C4tOC4ouC4suC4oj1ZXSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY2OAorbXNnaWQgIltubyBkZWZhdWx0XSIKK21zZ3N0ciAiW+C5hOC4oeC5iOC4oeC4teC4hOC5iOC4suC4m+C4o+C4tOC4ouC4suC4ol0iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NzEKK21zZ2lkICJlcnJvciB3cml0aW5nIHRvIHN0ZGVyciwgZGlzY292ZXJlZCBiZWZvcmUgY29uZmZpbGUgcHJvbXB0IgorbXNnc3RyICLguYDguIHguLTguJTguILguYnguK3guJzguLTguJTguJ7guKXguLLguJTguILguJPguLDguYDguILguLXguKLguJkgc3RkZXJyIOC4nuC4muC4guC5ieC4reC4nOC4tOC4lOC4nuC4peC4suC4lOC4meC4teC5ieC4geC5iOC4reC4meC4luC4suC4oeC5gOC4geC4teC5iOC4ouC4p+C4geC4seC4muC5geC4n+C5ieC4oeC4hOC5iOC4suC4leC4seC5ieC4hyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY4MAorbXNnaWQgInJlYWQgZXJyb3Igb24gc3RkaW4gYXQgY29uZmZpbGUgcHJvbXB0IgorbXNnc3RyICLguYDguIHguLTguJTguILguYnguK3guJzguLTguJTguJ7guKXguLLguJTguYPguJnguIHguLLguKPguK3guYjguLLguJkgc3RkaW4g4LiX4Li14LmI4LiE4Liz4LiW4Liy4Lih4LmA4LiB4Li14LmI4Lii4Lin4LiB4Lix4Lia4LmB4Lif4LmJ4Lih4LiE4LmI4Liy4LiV4Lix4LmJ4LiHIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjgxCittc2dpZCAiRU9GIG9uIHN0ZGluIGF0IGNvbmZmaWxlIHByb21wdCIKK21zZ3N0ciAi4Lie4LiaIEVPRiDguIjguLLguIEgc3RkaW4g4LiX4Li14LmI4LiE4Liz4LiW4Liy4Lih4LmA4LiB4Li14LmI4Lii4Lin4LiB4Lix4Lia4LmB4Lif4LmJ4Lih4LiE4LmI4Liy4LiV4Lix4LmJ4LiHIgorCisjOiBzcmMvZGVwY29uLmM6MTc1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGRlcGVuZHMgb24gJXMiCittc2dzdHIgIiVzIOC4leC5ieC4reC4h+C5g+C4iuC5iSAlcyIKKworIzogc3JjL2RlcGNvbi5jOjE3OAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBwcmUtZGVwZW5kcyBvbiAlcyIKK21zZ3N0ciAiJXMg4LiV4LmJ4Lit4LiH4LmD4LiK4LmJICVzIOC4guC4k+C4sOC4leC4tOC4lOC4leC4seC5ieC4hyIKKworIzogc3JjL2RlcGNvbi5jOjE4MQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyByZWNvbW1lbmRzICVzIgorbXNnc3RyICIlcyDguITguKfguKPguYPguIrguYnguKPguYjguKfguKHguIHguLHguJogJXMiCisKKyM6IHNyYy9kZXBjb24uYzoxODQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgc3VnZ2VzdHMgJXMiCittc2dzdHIgIiVzIOC5geC4meC4sOC4meC4syAlcyIKKworIzogc3JjL2RlcGNvbi5jOjE4NworIywgYy1mb3JtYXQKK21zZ2lkICIlcyBicmVha3MgJXMiCittc2dzdHIgIiVzIOC4l+C4s+C5g+C4q+C5iSAlcyDguJ7guLHguIciCisKKyM6IHNyYy9kZXBjb24uYzoxOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgY29uZmxpY3RzIHdpdGggJXMiCittc2dzdHIgIiVzIOC4guC4seC4lOC5geC4ouC5ieC4h+C4geC4seC4miAlcyIKKworIzogc3JjL2RlcGNvbi5jOjE5MworIywgYy1mb3JtYXQKK21zZ2lkICIlcyBlbmhhbmNlcyAlcyIKK21zZ3N0ciAiJXMg4LmA4Lie4Li04LmI4Lih4LiE4Lin4Liy4Lih4Liq4Liy4Lih4Liy4Lij4LiW4LmD4Lir4LmJ4LiB4Lix4LiaICVzIgorCisjOiBzcmMvZGVwY29uLmM6Mjk2CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHRvIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIOC4iOC4sOC4luC4ueC4geC4luC4reC4lOC4luC4reC4mVxuIgorCisjOiBzcmMvZGVwY29uLmM6Mjk5CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHRvIGJlIGRlY29uZmlndXJlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMg4LiI4Liw4LiW4Li54LiB4LiW4Lit4LiZ4LiE4Li34LiZ4LiE4LmI4Liy4LiV4Lix4LmJ4LiHXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdG8gYmUgaW5zdGFsbGVkLCBidXQgaXMgdmVyc2lvbiAlLjI1MHMuXG4iCittc2dzdHIgIiAgJS4yNTBzIOC4iOC4sOC4luC4ueC4geC4leC4tOC4lOC4leC4seC5ieC4hyDguYHguJXguYjguYPguIrguYnguKPguLjguYjguJkgJS4yNTBzXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgaW5zdGFsbGVkLCBidXQgaXMgdmVyc2lvbiAlLjI1MHMuXG4iCittc2dzdHIgIiAgJS4yNTBzIOC4luC4ueC4geC4leC4tOC4lOC4leC4seC5ieC4h+C5geC4peC5ieC4pyDguYHguJXguYjguYDguJvguYfguJnguKPguLjguYjguJkgJS4yNTBzXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdW5wYWNrZWQsIGJ1dCBoYXMgbmV2ZXIgYmVlbiBjb25maWd1cmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyDguJbguLnguIHguYHguJXguIHguYHguKXguYnguKcg4LmB4LiV4LmI4Lii4Lix4LiH4LmE4Lih4LmI4LmA4LiE4Lii4LiW4Li54LiB4LiV4Lix4LmJ4LiH4LiE4LmI4LiyXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdW5wYWNrZWQsIGJ1dCBpcyB2ZXJzaW9uICUuMjUwcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMg4LiW4Li54LiB4LmB4LiV4LiB4LmB4Lil4LmJ4LinIOC5geC4leC5iOC5gOC4m+C5h+C4meC4o+C4uOC5iOC4mSAlLjI1MHNcbiIKKworIzogc3JjL2RlcGNvbi5jOjM0MworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBsYXRlc3QgY29uZmlndXJlZCB2ZXJzaW9uIGlzICUuMjUwcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMg4Lij4Li44LmI4LiZ4Liq4Li44LiU4LiX4LmJ4Liy4Lii4LiX4Li14LmI4LiV4Lix4LmJ4LiH4LiE4LmI4Liy4LmE4Lin4LmJ4LiE4Li34LitICUuMjUwcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjM1MworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyAlcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgJXNcbiIKKworIzogc3JjL2RlcGNvbi5jOjM4OAorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYnV0IGlzIHRvIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIOC4iOC4seC4lOC5gOC4leC4o+C4teC4ouC4oSAlLjI1MHMg4LmB4LiV4LmI4LiB4Liz4Lil4Lix4LiH4LiI4Liw4LiW4Li54LiB4LiW4Lit4LiU4LiW4Lit4LiZXG4iCisKKyM6IHNyYy9kZXBjb24uYzozOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGJ1dCBpcyB0byBiZSBkZWNvbmZpZ3VyZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIOC4iOC4seC4lOC5gOC4leC4o+C4teC4ouC4oSAlLjI1MHMg4LmB4LiV4LmI4LiB4Liz4Lil4Lix4LiH4LiI4Liw4LiW4Li54LiB4LiW4Lit4LiZ4LiE4Li34LiZ4LiE4LmI4Liy4LiV4Lix4LmJ4LiHXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0MDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGJ1dCBpcyAlcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMg4LiI4Lix4LiU4LmA4LiV4Lij4Li14Lii4LihICUuMjUwcyDguYHguJXguYglc1xuIgorCisjOiBzcmMvZGVwY29uLmM6NDE1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIG5vdCBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIOC5hOC4oeC5iOC5hOC4lOC5ieC4leC4tOC4lOC4leC4seC5ieC4h+C5hOC4p+C5iVxuIgorCisjOiBzcmMvZGVwY29uLmM6NDQzCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzICh2ZXJzaW9uICUuMjUwcykgaXMgdG8gYmUgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIgICUuMjUwcyAo4Lij4Li44LmI4LiZICUuMjUwcykg4LiB4Liz4Lil4Lix4LiH4LiI4Liw4LiW4Li54LiB4LiV4Li04LiU4LiV4Lix4LmJ4LiHXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgKHZlcnNpb24gJS4yNTBzKSBpcyBwcmVzZW50IGFuZCAlcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgKOC4o+C4uOC5iOC4mSAlLjI1MHMpIOC4oeC4teC4reC4ouC4ueC5iCDguYHguKXguLAlc1xuIgorCisjOiBzcmMvZGVwY29uLmM6NDk1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBhbmQgaXMgdG8gYmUgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIgICUuMjUwcyDguIjguLHguJTguYDguJXguKPguLXguKLguKEgJS4yNTBzIOC5geC4peC4sOC4geC4s+C4peC4seC4h+C4iOC4sOC4luC4ueC4geC4leC4tOC4lOC4leC4seC5ieC4h1xuIgorCisjOiBzcmMvZGVwY29uLmM6NTM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBhbmQgaXMgcHJlc2VudCBhbmQgJXMuXG4iCittc2dzdHIgIiAgJS4yNTBzIOC4iOC4seC4lOC5gOC4leC4o+C4teC4ouC4oSAlLjI1MHMg4LmB4Lil4Liw4Lih4Li14Lit4Lii4Li54LmIIOC5geC4peC4sCVzXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MAorIywgZnV6enkKKyN8IG1zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IHF1ZXJ5aW5nIHBhY2thZ2VzLiIKK21zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IGRpdmVydGluZyBmaWxlcy4iCittc2dzdHIgIuC5g+C4iuC5iSAtLWhlbHAg4LmA4Lie4Li34LmI4Lit4LiU4Li54Lin4Li04LiY4Li14Liq4Lit4Lia4LiW4Liy4Lih4LiC4LmJ4Lit4Lih4Li54Lil4LmB4Lie4LiB4LmA4LiB4LiIIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjYgc3JjL3N0YXRjbWQuYzo1NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuICVzIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIiVzIOC4guC4reC4h+C5gOC4lOC5gOC4muC4teC4ouC4mSDguKPguLjguYjguJkgJXNcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjcwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMTAgR3VpbGxlbSBKb3Zlci5cbiIKK21zZ3N0ciAiIgorIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLlxuIgorIkNvcHlyaWdodCAoQykgMjAxMCBHdWlsbGVtIEpvdmVyLlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NzUgc3JjL21haW4uYzo2MyBzcmMvcXVlcnljbWQuYzo2MDMgc3JjL3N0YXRjbWQuYzo2NQorIzogc3JjL3RyaWdjbWQuYzo1NSBkcGtnLWRlYi9tYWluLmM6NTcgZHBrZy1zcGxpdC9tYWluLmM6NTEKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo4OQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvclxuIgorImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LlxuIgorbXNnc3RyICIiCisi4LiZ4Li14LmI4LmA4Lib4LmH4LiZ4LiL4Lit4Lif4LiV4LmM4LmB4Lin4Lij4LmM4LmA4Liq4Lij4Li1IOC4geC4o+C4uOC4k+C4suC4reC5iOC4suC4meC5gOC4h+C4t+C5iOC4reC4meC5hOC4guC4geC4suC4o+C5geC4iOC4geC4iOC5iOC4suC4ouC5hOC4lOC5ieC4iOC4suC4gSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZVxuIgorIuC4o+C4uOC5iOC4mSAyIOC4q+C4o+C4t+C4reC5g+C4q+C4oeC5iOC4geC4p+C5iOC4siDguIvguK3guJ/guJXguYzguYHguKfguKPguYzguJnguLXguYkgKuC5hOC4oeC5iOC4oeC4tSog4LiB4Liy4Lij4Lij4Lix4Lia4Lib4Lij4Liw4LiB4Lix4LiZ4LmD4LiU4LmGXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo4NyBzcmMvbWFpbi5jOjgxIHNyYy9xdWVyeWNtZC5jOjYxNSBzcmMvc3RhdGNtZC5jOjc3CisjOiBkcGtnLWRlYi9tYWluLmM6NjkgZHBrZy1zcGxpdC9tYWluLmM6NjMgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjk3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gPGNvbW1hbmQ+XG4iCisiXG4iCittc2dzdHIgIiIKKyLguKfguLTguJjguLXguYPguIrguYk6ICVzIFs84LiV4Lix4Lin4LmA4Lil4Li34Lit4LiBPiAuLi5dIDzguITguLPguKrguLHguYjguIc+XG4iCisiXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo5MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICBbLS1hZGRdIDxmaWxlPiAgICAgICAgICAgYWRkIGEgZGl2ZXJzaW9uLlxuIgorIiAgLS1yZW1vdmUgPGZpbGU+ICAgICAgICAgIHJlbW92ZSB0aGUgZGl2ZXJzaW9uLlxuIgorIiAgLS1saXN0IFs8Z2xvYi1wYXR0ZXJuPl0gIHNob3cgZmlsZSBkaXZlcnNpb25zLlxuIgorIiAgLS1saXN0cGFja2FnZSA8ZmlsZT4gICAgIHNob3cgd2hhdCBwYWNrYWdlIGRpdmVydHMgdGhlIGZpbGUuXG4iCisiICAtLXRydWVuYW1lIDxmaWxlPiAgICAgICAgcmV0dXJuIHRoZSBkaXZlcnRlZCBmaWxlLlxuIgorIlxuIgorbXNnc3RyICIiCisi4LiE4Liz4Liq4Lix4LmI4LiHOlxuIgorIiAgWy0tYWRkXSA8ZmlsZT4gICAgICAgICAgIOC5gOC4nuC4tOC5iOC4oeC4geC4suC4o+C5gOC4muC4meC5geC4n+C5ieC4oVxuIgorIiAgLS1yZW1vdmUgPGZpbGU+ICAgICAgICAgIOC4peC4muC4geC4suC4o+C5gOC4muC4meC5geC4n+C5ieC4oVxuIgorIiAgLS1saXN0IFs8Z2xvYi1wYXR0ZXJuPl0gIOC5geC4quC4lOC4h+C4geC4suC4o+C5gOC4muC4meC5geC4n+C5ieC4oVxuIgorIiAgLS1saXN0cGFja2FnZSA8ZmlsZT4gICAgIOC5geC4quC4lOC4h+C5geC4nuC4geC5gOC4geC4iOC4l+C4teC5iOC5gOC4muC4meC5geC4n+C5ieC4oeC4meC4teC5iVxuIgorIiAgLS10cnVlbmFtZSA8ZmlsZT4gICAgICAgIOC5geC4quC4lOC4h+C5geC4n+C5ieC4oeC4l+C4teC5iOC5gOC4muC4meC5hOC4m1xuIgorIlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MTAwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1wYWNrYWdlIDxwYWNrYWdlPiAgICAgIG5hbWUgb2YgdGhlIHBhY2thZ2Ugd2hvc2UgY29weSBvZiA8ZmlsZT4gd2lsbCAiCisibm90XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiZSBkaXZlcnRlZC5cbiIKKyIgIC0tbG9jYWwgICAgICAgICAgICAgICAgICBhbGwgcGFja2FnZXMnIHZlcnNpb25zIGFyZSBkaXZlcnRlZC5cbiIKKyIgIC0tZGl2ZXJ0IDxkaXZlcnQtdG8+ICAgICB0aGUgbmFtZSB1c2VkIGJ5IG90aGVyIHBhY2thZ2VzJyB2ZXJzaW9ucy5cbiIKKyIgIC0tcmVuYW1lICAgICAgICAgICAgICAgICBhY3R1YWxseSBtb3ZlIHRoZSBmaWxlIGFzaWRlIChvciBiYWNrKS5cbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICBzZXQgdGhlIGRpcmVjdG9yeSB3aXRoIHRoZSBkaXZlcnNpb25zIGZpbGUuXG4iCisiICAtLXRlc3QgICAgICAgICAgICAgICAgICAgZG9uJ3QgZG8gYW55dGhpbmcsIGp1c3QgZGVtb25zdHJhdGUuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgcXVpZXQgb3BlcmF0aW9uLCBtaW5pbWFsIG91dHB1dC5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCittc2dzdHIgIiIKKyLguJXguLHguKfguYDguKXguLfguK3guIE6XG4iCisiICAtLXBhY2thZ2UgPHBhY2thZ2U+ICAgICAg4LiK4Li34LmI4Lit4LmB4Lie4LiB4LmA4LiB4LiI4LiX4Li14LmIIDxmaWxlPiDguInguJrguLHguJrguILguK3guIfguYHguJ7guIHguYDguIHguIjguIjguLDguYTguKHguYjguJbguLnguIHguYDguJrguJlcbiIKKyIgIC0tbG9jYWwgICAgICAgICAgICAgICAgICDguYDguJrguJnguYHguJ/guYnguKHguILguK3guIfguJfguLjguIHguYHguJ7guIHguYDguIHguIjguYTguKHguYjguKHguLXguKLguIHguYDguKfguYnguJlcbiIKKyIgIC0tZGl2ZXJ0IDxkaXZlcnQtdG8+ICAgICDguIrguLfguYjguK3guYHguJ/guYnguKHguInguJrguLHguJrguJfguLXguYjguYHguJ7guIHguYDguIHguIjguK3guLfguYjguJnguIjguLDguYPguIrguYlcbiIKKyIgIC0tcmVuYW1lICAgICAgICAgICAgICAgICDguYDguJvguKXguLXguYjguKLguJnguIrguLfguYjguK3guYHguJ/guYnguKHguKvguKXguJrguIrguLfguYjguK3guYDguJTguLTguKEgKOC4q+C4o+C4t+C4reC5gOC4m+C4peC4teC5iOC4ouC4meC4iuC4t+C5iOC4reC4geC4peC4seC4milcbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICDguIHguLPguKvguJnguJTguYTguJTguYDguKPguIHguJfguK3guKPguLXguJfguLXguYjguYDguIHguYfguJrguYHguJ/guYnguKEgZGl2ZXJzaW9uc1xuIgorIiAgLS10ZXN0ICAgICAgICAgICAgICAgICAgIOC5hOC4oeC5iOC4leC5ieC4reC4h+C4l+C4s+C4iOC4o+C4tOC4hyDguYHguITguYjguKrguLLguJjguLTguJXguYDguJfguYjguLLguJnguLHguYnguJlcbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICDguJfguLPguYHguJrguJrguYDguIfguLXguKLguJog4LmB4Liq4LiU4LiH4LiC4LmJ4Lit4LiE4Lin4Liy4Lih4LmD4Lir4LmJ4LiZ4LmJ4Lit4Lii4LiX4Li14LmI4Liq4Li44LiUXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAg4LmB4Liq4LiU4LiH4LiC4LmJ4Lit4LiE4Lin4Liy4Lih4LiK4LmI4Lin4Lii4LmA4Lir4Lil4Li34Lit4LiZ4Li14LmJXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAg4LmB4Liq4LiU4LiH4LmA4Lil4LiC4Lij4Li44LmI4LiZXG4iCisiXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIldoZW4gYWRkaW5nLCBkZWZhdWx0IGlzIC0tbG9jYWwgYW5kIC0tZGl2ZXJ0IDxvcmlnaW5hbD4uZGlzdHJpYi5cbiIKKyJXaGVuIHJlbW92aW5nLCAtLXBhY2thZ2Ugb3IgLS1sb2NhbCBhbmQgLS1kaXZlcnQgbXVzdCBtYXRjaCBpZiBzcGVjaWZpZWQuXG4iCisiUGFja2FnZSBwcmVpbnN0L3Bvc3RybSBzY3JpcHRzIHNob3VsZCBhbHdheXMgc3BlY2lmeSAtLXBhY2thZ2UgYW5kIC0tIgorImRpdmVydC5cbiIKK21zZ3N0ciAiIgorIuC5gOC4oeC4t+C5iOC4reC4iOC4sOC5gOC4nuC4tOC5iOC4oeC4geC4suC4o+C5gOC4muC4meC5geC4n+C5ieC4oSDguJXguLHguKfguYDguKXguLfguK3guIHguJvguKPguLTguKLguLLguKLguITguLfguK0gLS1sb2NhbCDguYHguKXguLAgLS1kaXZlcnQgPOC4iuC4t+C5iOC4reC5gOC4lOC4tOC4oT4uZGlzdHJpYlxuIgorIuC5gOC4oeC4t+C5iOC4reC4iOC4sOC4peC4muC4geC4suC4o+C5gOC4muC4meC5geC4n+C5ieC4oSDguJbguYnguLLguKPguLDguJrguLggLS1wYWNrYWdlIOC4q+C4o+C4t+C4rSAtLWxvY2FsIOC5geC4peC4sCAtLWRpdmVydCDguIHguYfguJXguYnguK3guIfguKPguLDguJrguLjguYPguKvguYnguJXguKPguIfguIHguLHguJnguJTguYnguKfguKJcbiIKKyLguKrguITguKPguLTguJvguJXguYwgcHJlaW5zdC9wb3N0cm0g4LiC4Lit4LiH4LmB4Lie4LiB4LmA4LiB4LiI4LiE4Lin4Lij4Lij4Liw4Lia4Li4IC0tcGFja2FnZSDguYHguKXguLAgLS1kaXZlcnQg4LmA4Liq4Lih4LitXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoxNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2hlY2tpbmcgJyVzJyIKK21zZ3N0ciAi4LmA4LiB4Li04LiU4LiC4LmJ4Lit4Lic4Li04LiU4Lie4Lil4Liy4LiU4LiC4LiT4Liw4LiV4Lij4Lin4LiI4Liq4Lit4LiaICclcyciCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInJlbmFtZSBpbnZvbHZlcyBvdmVyd3JpdGluZyBgJXMnIHdpdGhcbiIKKyIgIGRpZmZlcmVudCBmaWxlIGAlcycsIG5vdCBhbGxvd2VkIgorbXNnc3RyICIiCisi4LiB4Liy4Lij4LmA4Lib4Lil4Li14LmI4Lii4LiZ4LiK4Li34LmI4Lit4LiX4Liz4LmD4Lir4LmJ4LiV4LmJ4Lit4LiH4LmA4LiC4Li14Lii4LiZ4LiX4Lix4LiaIGAlcycg4LiU4LmJ4Lin4LiiXG4iCisiICDguYHguJ/guYnguKEgYCVzJyDguJfguLXguYjguYDguJvguYfguJnguITguJnguKXguLDguYHguJ/guYnguKEg4LiL4Li24LmI4LiH4LmE4Lih4LmI4Lit4LiZ4Li44LiN4Liy4LiVIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjIzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzczCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gd3JpdGUgZmlsZSAnJXMnIgorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgZmlsZSAnJXMnIgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguYDguILguLXguKLguJnguYHguJ/guYnguKEgJyVzJyIKKworIzogc3JjL2RpdmVydGNtZC5jOjIyNworbXNnaWQgImZpbGUgY29weSIKK21zZ3N0ciAi4LiB4Liy4Lij4Liq4Liz4LmA4LiZ4Liy4LmB4Lif4LmJ4LihIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjM5CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZW5hbWUgJyVzJyB0byAnJXMnIgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguYDguJvguKXguLXguYjguKLguJnguIrguLfguYjguK0gJyVzJyDguYDguJvguYfguJkgJyVzJyIKKworIzogc3JjL2RpdmVydGNtZC5jOjI1MgorIywgYy1mb3JtYXQKK21zZ2lkICJyZW5hbWU6IHJlbW92ZSBkdXBsaWNhdGUgb2xkIGxpbmsgJyVzJyIKK21zZ3N0ciAicmVuYW1lOiDguKXguJrguKXguLTguIfguIHguYzguYDguJTguLTguKEgJyVzJyDguIvguLbguYjguIfguIvguYnguLPguIHguLHguJkiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyNjIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byBvcGVuIHNvdXJjZSBmaWxlIGAlLjI1MHMnIgorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgY29waWVkIHNvdXJjZSBmaWxlICclcyciCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC5gOC4m+C4tOC4lOC5geC4n+C5ieC4oeC4leC5ieC4meC4ieC4muC4seC4miBgJS4yNTBzJyIKKworIzogc3JjL2RpdmVydGNtZC5jOjI4NAorIywgYy1mb3JtYXQKK21zZ2lkICJsb2NhbCBkaXZlcnNpb24gb2YgJXMiCittc2dzdHIgIuC4geC4suC4o+C5gOC4muC4meC5geC4n+C5ieC4oeC5gOC4m+C5h+C4meC4geC4suC4o+C4oOC4suC4ouC5g+C4meC4guC4reC4hyAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjI4NgorIywgYy1mb3JtYXQKK21zZ2lkICJsb2NhbCBkaXZlcnNpb24gb2YgJXMgdG8gJXMiCittc2dzdHIgIuC4geC4suC4o+C5gOC4muC4meC5geC4n+C5ieC4oeC5gOC4m+C5h+C4meC4geC4suC4o+C4oOC4suC4ouC5g+C4meC4guC4reC4hyAlcyDguYTguJvguKLguLHguIcgJXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJzaW9uIG9mICVzIGJ5ICVzIgorbXNnc3RyICLguIHguLLguKPguYDguJrguJnguYHguJ/guYnguKEgJXMg4LmC4LiU4LiiICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjkzCisjLCBjLWZvcm1hdAorbXNnaWQgImRpdmVyc2lvbiBvZiAlcyB0byAlcyBieSAlcyIKK21zZ3N0ciAi4LiB4Liy4Lij4LmA4Lia4LiZ4LmB4Lif4LmJ4LihICVzIOC5hOC4m+C4ouC4seC4hyAlcyDguYLguJTguKIgJXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozMDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiYW55IGRpdmVyc2lvbiBvZiAlcyIKK21zZ3N0ciAi4LiB4Liy4Lij4LmA4Lia4LiZ4LmB4Lif4LmJ4Lih4LmD4LiU4LmGIOC4guC4reC4hyAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjMxMQorIywgYy1mb3JtYXQKK21zZ2lkICJhbnkgZGl2ZXJzaW9uIG9mICVzIHRvICVzIgorbXNnc3RyICLguIHguLLguKPguYDguJrguJnguYHguJ/guYnguKHguYPguJTguYYg4LiC4Lit4LiHICVzIOC5hOC4m+C4ouC4seC4hyAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjM1NworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgY3JlYXRlIG5ldyAlcyBmaWxlIgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguKrguKPguYnguLLguIfguYHguJ/guYnguKHguYPguKvguKHguYggJXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozNzUgc3JjL3N0YXRjbWQuYzoyMTUgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE0MDQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIGZpbGUgJyVzJyIKK21zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiWIGZsdXNoIOC5geC4n+C5ieC4oSAnJXMnIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MzgyCittc2dpZCAiZXJyb3IgcmVtb3Zpbmcgb2xkIGRpdmVyc2lvbnMtb2xkIgorbXNnc3RyICLguYDguIHguLTguJTguILguYnguK3guJzguLTguJTguJ7guKXguLLguJTguILguJPguLDguKXguJogZGl2ZXJzaW9ucy1vbGQg4LiJ4Lia4Lix4Lia4LmA4LiU4Li04LihIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mzg0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgbmV3IGRpdmVyc2lvbnMtb2xkIgorbXNnc3RyICLguYDguIHguLTguJTguILguYnguK3guJzguLTguJTguJ7guKXguLLguJTguILguJPguLDguKrguKPguYnguLLguIcgZGl2ZXJzaW9ucy1vbGQg4LiJ4Lia4Lix4Lia4LmD4Lir4Lih4LmIIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mzg2Cittc2dpZCAiZXJyb3IgaW5zdGFsbGluZyBuZXcgZGl2ZXJzaW9ucyIKK21zZ3N0ciAi4LmA4LiB4Li04LiU4LiC4LmJ4Lit4Lic4Li04LiU4Lie4Lil4Liy4LiU4LiC4LiT4Liw4LiV4Li04LiU4LiV4Lix4LmJ4LiHIGRpdmVyc2lvbnMg4LiJ4Lia4Lix4Lia4LmD4Lir4Lih4LmIIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDA2IHNyYy9kaXZlcnRjbWQuYzo1MDMgc3JjL2RpdmVydGNtZC5jOjYxMAorIzogc3JjL2RpdmVydGNtZC5jOjYzMCBzcmMvc3RhdGNtZC5jOjI5MAorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGEgc2luZ2xlIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIOC4leC5ieC4reC4h+C4geC4suC4o+C4reC4suC4o+C5jOC4geC4tOC4p+C5gOC4oeC4meC4leC5jOC5geC4hOC5iOC4o+C4suC4ouC4geC4suC4o+C5gOC4lOC4teC4ouC4pyIKKworIzogc3JjL2RpdmVydGNtZC5jOjQwOSBzcmMvZGl2ZXJ0Y21kLmM6NDMwCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGVuYW1lIFwiJXNcIiBpcyBub3QgYWJzb2x1dGUiCittc2dzdHIgIuC4iuC4t+C5iOC4reC5geC4n+C5ieC4oSBcIiVzXCIg4LmE4Lih4LmI4LmD4LiK4LmI4Lie4Liy4LiY4LmA4LiV4LmH4LihIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDExIHNyYy9zdGF0Y21kLmM6MjQ5Cittc2dpZCAiZmlsZSBtYXkgbm90IGNvbnRhaW4gbmV3bGluZXMiCittc2dzdHIgIuC4iuC4t+C5iOC4reC5geC4n+C5ieC4oeC4q+C5ieC4suC4oeC4oeC4teC4reC4seC4geC4guC4o+C4sOC4guC4tuC5ieC4meC4muC4o+C4o+C4l+C4seC4lOC5g+C4q+C4oeC5iCIKKworIzogc3JjL2RpdmVydGNtZC5jOjQxOAorbXNnaWQgIkNhbm5vdCBkaXZlcnQgZGlyZWN0b3JpZXMiCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC5gOC4muC4meC5hOC4lOC5gOC4o+C4geC4l+C4reC4o+C4tSIKKworIzogc3JjL2RpdmVydGNtZC5jOjQzMworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgZGl2ZXJ0IGZpbGUgJyVzJyB0byBpdHNlbGYiCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC5gOC4muC4meC5geC4n+C5ieC4oSAnJXMnIOC5gOC4guC5ieC4suC4q+C4suC4leC4seC4p+C5gOC4reC4h+C5hOC4lOC5iSIKKworIzogc3JjL2RpdmVydGNtZC5jOjQ1MworIywgYy1mb3JtYXQKK21zZ2lkICJMZWF2aW5nICclcydcbiIKK21zZ3N0ciAi4LiI4Liw4LiE4LiHICclcycg4LmE4Lin4LmJXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBjbGFzaGVzIHdpdGggYCVzJyIKK21zZ3N0ciAiYCVzJyDguIrguJnguIHguLHguJogYCVzJyIKKworIzogc3JjL2RpdmVydGNtZC5jOjQ4MQorIywgYy1mb3JtYXQKK21zZ2lkICJBZGRpbmcgJyVzJ1xuIgorbXNnc3RyICLguIHguLPguKXguLHguIfguYDguJ7guLTguYjguKEgJyVzJ1xuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTEwCisjLCBjLWZvcm1hdAorbXNnaWQgIk5vIGRpdmVyc2lvbiAnJXMnLCBub25lIHJlbW92ZWQuXG4iCittc2dzdHIgIuC5hOC4oeC5iOC4oeC4teC4geC4suC4o+C5gOC4muC4mSAnJXMnIOC4iOC4tuC4h+C5hOC4oeC5iOC4oeC4teC4geC4suC4o+C4peC4muC4o+C4suC4ouC4geC4suC4o+C5g+C4lFxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTI1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJtaXNtYXRjaCBvbiBkaXZlcnQtdG9cbiIKKyIgIHdoZW4gcmVtb3ZpbmcgYCVzJ1xuIgorIiAgZm91bmQgYCVzJyIKK21zZ3N0ciAiIgorImRpdmVydC10byDguYTguKHguYjguJXguKPguIdcbiIKKyIgIOC4guC4k+C4sOC4peC4miBgJXMnXG4iCisiICDguJ7guJogYCVzJyIKKworIzogc3JjL2RpdmVydGNtZC5jOjUzMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisibWlzbWF0Y2ggb24gcGFja2FnZVxuIgorIiAgd2hlbiByZW1vdmluZyBgJXMnXG4iCisiICBmb3VuZCBgJXMnIgorbXNnc3RyICIiCisicGFja2FnZSDguYTguKHguYjguJXguKPguIdcbiIKKyIgIOC4guC4k+C4sOC4peC4miBgJXMnXG4iCisiICDguJ7guJogYCVzJyIKKworIzogc3JjL2RpdmVydGNtZC5jOjUzOQorIywgYy1mb3JtYXQKK21zZ2lkICJSZW1vdmluZyAnJXMnXG4iCittc2dzdHIgIuC4geC4s+C4peC4seC4h+C4peC4miAnJXMnXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo2NTcKK21zZ2lkICJwYWNrYWdlIG1heSBub3QgY29udGFpbiBuZXdsaW5lcyIKK21zZ3N0ciAi4LiK4Li34LmI4Lit4LmB4Lie4LiB4LmA4LiB4LiI4Lir4LmJ4Liy4Lih4Lih4Li14Lit4Lix4LiB4LiC4Lij4Liw4LiC4Li24LmJ4LiZ4Lia4Lij4Lij4LiX4Lix4LiU4LmD4Lir4Lih4LmIIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjY2Cittc2dpZCAiZGl2ZXJ0LXRvIG1heSBub3QgY29udGFpbiBuZXdsaW5lcyIKK21zZ3N0ciAiZGl2ZXJ0LXRvIOC4q+C5ieC4suC4oeC4oeC4teC4reC4seC4geC4guC4o+C4sOC4guC4tuC5ieC4meC4muC4o+C4o+C4l+C4seC4lOC5g+C4q+C4oeC5iCIKKworIzogc3JjL2RpdmVydGRiLmM6NjQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiBkaXZlcnNpb25zIGZpbGUiCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC5gOC4m+C4tOC4lOC5geC4n+C5ieC4oSBkaXZlcnNpb25zIgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzo3MQorbXNnaWQgImZhaWxlZCB0byBmc3RhdCBwcmV2aW91cyBkaXZlcnNpb25zIGZpbGUiCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4liBmc3RhdCDguYHguJ/guYnguKEgZGl2ZXJzaW9ucyDguYDguJTguLTguKEiCisKKyM6IHNyYy9kaXZlcnRkYi5jOjczCittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGRpdmVyc2lvbnMgZmlsZSIKK21zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiWIGZzdGF0IOC5geC4n+C5ieC4oSBkaXZlcnNpb25zIgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzoxMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmxpY3RpbmcgZGl2ZXJzaW9ucyBpbnZvbHZpbmcgYCUuMjUwcycgb3IgYCUuMjUwcyciCittc2dzdHIgIuC4oeC4teC4geC4suC4o+C5gOC4muC4meC5geC4n+C5ieC4oeC4guC4seC4lOC5geC4ouC5ieC4h+C4geC4seC4meC5guC4lOC4ouC5gOC4geC4teC5iOC4ouC4p+C4guC5ieC4reC4h+C4geC4seC4miBgJS4yNTBzJyDguKvguKPguLfguK0gYCUuMjUwcyciCisKKyM6IHNyYy9lbnF1aXJ5LmM6NzMKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgaW4gYSBtZXNzIGR1ZSB0byBzZXJpb3VzIHByb2JsZW1zIGR1cmluZ1xuIgorImluc3RhbGxhdGlvbi4gIFRoZXkgbXVzdCBiZSByZWluc3RhbGxlZCBmb3IgdGhlbSAoYW5kIGFueSBwYWNrYWdlc1xuIgorInRoYXQgZGVwZW5kIG9uIHRoZW0pIHRvIGZ1bmN0aW9uIHByb3Blcmx5OlxuIgorbXNnc3RyICIiCisi4LmB4Lie4LiB4LmA4LiB4LiI4LiV4LmI4Lit4LmE4Lib4LiZ4Li14LmJ4Lii4Lix4LiH4Lit4Lii4Li54LmI4LmD4LiZ4Liq4Lig4Liy4Lie4Lii4Li44LmI4LiH4LmA4Lir4Lii4Li04LiHIOC4reC4seC4meC5gOC4meC4t+C5iOC4reC4h+C4oeC4suC4iOC4suC4geC4m+C4seC4jeC4q+C4suC4o+C5ieC4suC4ouC5geC4o+C4h+C4guC4k+C4sOC4leC4tOC4lOC4leC4seC5ieC4h1xuIgorIuC4iOC4tuC4h+C4leC5ieC4reC4h+C4leC4tOC4lOC4leC4seC5ieC4h+C4i+C5ieC4syDguYDguJ7guLfguYjguK3guYPguKvguYnguYHguJ7guIHguYDguIHguIjguYDguKvguKXguYjguLLguJnguLXguYkgKOC5geC4peC4sOC5geC4nuC4geC5gOC4geC4iOC4reC4t+C5iOC4meC4l+C4teC5iOC4leC5ieC4reC4h+C5g+C4iuC5ieC5geC4nuC4geC5gOC4geC4iOC4lOC4seC4h+C4geC4peC5iOC4suC4pylcbiIKKyLguKrguLLguKHguLLguKPguJbguYPguIrguYnguIHguLLguKPguYTguJTguYk6XG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6ODAKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBoYXZlIGJlZW4gdW5wYWNrZWQgYnV0IG5vdCB5ZXQgY29uZmlndXJlZC5cbiIKKyJUaGV5IG11c3QgYmUgY29uZmlndXJlZCB1c2luZyBkcGtnIC0tY29uZmlndXJlIG9yIHRoZSBjb25maWd1cmVcbiIKKyJtZW51IG9wdGlvbiBpbiBkc2VsZWN0IGZvciB0aGVtIHRvIHdvcms6XG4iCittc2dzdHIgIiIKKyLguYHguJ7guIHguYDguIHguIjguJXguYjguK3guYTguJvguJnguLXguYnguJbguLnguIHguYHguJXguIHguYTguKfguYnguYHguKXguYnguKcg4LmB4LiV4LmI4Lii4Lix4LiH4LmE4Lih4LmI4LmE4LiU4LmJ4LiV4Lix4LmJ4LiH4LiE4LmI4LiyXG4iCisi4LiI4Li24LiH4LiV4LmJ4Lit4LiH4LiV4Lix4LmJ4LiH4LiE4LmI4Liy4LmB4Lie4LiB4LmA4LiB4LiI4LmA4Lir4Lil4LmI4Liy4LiZ4Li14LmJ4LiU4LmJ4Lin4Lii4LiE4Liz4Liq4Lix4LmI4LiHIGRwa2cgLS1jb25maWd1cmVcbiIKKyLguKvguKPguLfguK3guYPguIrguYnguYDguKHguJnguLnguJXguLHguYnguIfguITguYjguLLguYPguJkgZHNlbGVjdCDguYDguJ7guLfguYjguK3guYPguKvguYnguYHguJ7guIHguYDguIHguIjguJTguLHguIfguIHguKXguYjguLLguKfguYPguIrguYnguIHguLLguKPguYTguJTguYk6XG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6ODcKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgb25seSBoYWxmIGNvbmZpZ3VyZWQsIHByb2JhYmx5IGR1ZSB0byBwcm9ibGVtc1xuIgorImNvbmZpZ3VyaW5nIHRoZW0gdGhlIGZpcnN0IHRpbWUuICBUaGUgY29uZmlndXJhdGlvbiBzaG91bGQgYmUgcmV0cmllZCB1c2luZ1xuIgorImRwa2cgLS1jb25maWd1cmUgPHBhY2thZ2U+IG9yIHRoZSBjb25maWd1cmUgbWVudSBvcHRpb24gaW4gZHNlbGVjdDpcbiIKK21zZ3N0ciAiIgorIuC5geC4nuC4geC5gOC4geC4iOC4leC5iOC4reC5hOC4m+C4meC4teC5ieC4luC4ueC4geC4leC4seC5ieC4h+C4hOC5iOC4suC5hOC4p+C5ieC4hOC4o+C4tuC5iOC4h+C5hiDguIHguKXguLLguIfguYYg4LiL4Li24LmI4LiH4Lit4Liy4LiI4LmA4Lib4LmH4LiZ4LmA4Lie4Lij4Liy4Liw4Lib4Lix4LiN4Lir4Liy4Lia4Liy4LiH4Lit4Lii4LmI4Liy4LiH4LiC4LiT4Liw4LiV4Lix4LmJ4LiH4LiE4LmI4Liy4LmD4LiZ4LiE4Lij4Lix4LmJ4LiH4LmB4Lij4LiBXG4iCisi4LiI4Li24LiH4LiE4Lin4Lij4Lie4Lii4Liy4Lii4Liy4Lih4LiV4Lix4LmJ4LiH4LiE4LmI4Liy4LmD4Lir4Lih4LmI4Lit4Li14LiB4LiE4Lij4Lix4LmJ4LiH4LiU4LmJ4Lin4Lii4LiE4Liz4Liq4Lix4LmI4LiHIGRwa2cgLS1jb25maWd1cmUgPHBhY2thZ2U+XG4iCisi4Lir4Lij4Li34Lit4LmD4LiK4LmJ4LmA4Lih4LiZ4Li54LiV4Lix4LmJ4LiH4LiE4LmI4Liy4LmD4LiZIGRzZWxlY3Q6XG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6OTQKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgb25seSBoYWxmIGluc3RhbGxlZCwgZHVlIHRvIHByb2JsZW1zIGR1cmluZ1xuIgorImluc3RhbGxhdGlvbi4gIFRoZSBpbnN0YWxsYXRpb24gY2FuIHByb2JhYmx5IGJlIGNvbXBsZXRlZCBieSByZXRyeWluZyBpdDtcbiIKKyJ0aGUgcGFja2FnZXMgY2FuIGJlIHJlbW92ZWQgdXNpbmcgZHNlbGVjdCBvciBkcGtnIC0tcmVtb3ZlOlxuIgorbXNnc3RyICIiCisi4LmB4Lie4LiB4LmA4LiB4LiI4LiV4LmI4Lit4LmE4Lib4LiZ4Li14LmJ4LiW4Li54LiB4LiV4Li04LiU4LiV4Lix4LmJ4LiH4LmE4Lin4LmJ4LiE4Lij4Li24LmI4LiH4LmGIOC4geC4peC4suC4h+C5hiDguK3guLHguJnguYDguJnguLfguYjguK3guIfguKHguLLguIjguLLguIHguJvguLHguI3guKvguLLguJrguLLguIfguK3guKLguYjguLLguIfguILguJPguLDguJXguLTguJTguJXguLHguYnguIdcbiIKKyLguIjguLbguIfguK3guLLguIjguJXguYnguK3guIfguJXguLTguJTguJXguLHguYnguIfguYPguKvguKHguYjguK3guLXguIHguITguKPguLHguYnguIfguYDguJ7guLfguYjguK3guYPguKvguYnguYDguKrguKPguYfguIjguKrguKHguJrguLnguKPguJPguYwg4Lir4Lij4Li34Lit4Lit4Liy4LiI4LiW4Lit4LiU4LiW4Lit4LiZ4LmC4LiU4Lii4LmD4LiK4LmJIGRzZWxlY3RcbiIKKyLguKvguKPguLfguK0gZHBrZyAtLXJlbW92ZSDguIHguYfguYTguJTguYk6XG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTAxCittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgYXJlIGF3YWl0aW5nIHByb2Nlc3Npbmcgb2YgdHJpZ2dlcnMgdGhhdCB0aGV5XG4iCisiaGF2ZSBhY3RpdmF0ZWQgaW4gb3RoZXIgcGFja2FnZXMuICBUaGlzIHByb2Nlc3NpbmcgY2FuIGJlIHJlcXVlc3RlZCB1c2luZ1xuIgorImRzZWxlY3Qgb3IgZHBrZyAtLWNvbmZpZ3VyZSAtLXBlbmRpbmcgKG9yIGRwa2cgLS10cmlnZ2Vycy1vbmx5KTpcbiIKK21zZ3N0ciAiIgorIuC5geC4nuC4geC5gOC4geC4iOC4leC5iOC4reC5hOC4m+C4meC4teC5ieC4geC4s+C4peC4seC4h+C4o+C4reC4hOC4reC4ouC4geC4suC4o+C4m+C4o+C4sOC4oeC4p+C4peC4nOC4peC4geC4suC4o+C4quC4sOC4geC4tOC4lOC4l+C4teC5iOC5hOC4lOC5ieC5gOC4o+C4teC4ouC4geC5hOC4m+C4ouC4seC4h+C5geC4nuC4geC5gOC4geC4iOC4reC4t+C5iOC4meC5hOC4p+C5iSAiCisi4LiE4Li44LiT4Liq4Liy4Lih4Liy4Lij4LiW4Liq4Lix4LmI4LiH4LmD4Lir4LmJ4Lib4Lij4Liw4Lih4Lin4Lil4Lic4Lil4LiB4Liy4Lij4Liq4Liw4LiB4Li04LiU4LiU4Lix4LiH4LiB4Lil4LmI4Liy4Lin4LmE4LiU4LmJIOC5guC4lOC4ouC5g+C4iuC5iSBkc2VsZWN0IOC4q+C4o+C4t+C4rSBkcGtnIC0tY29uZmlndXJlIC0tIgorInBlbmRpbmcgKOC4q+C4o+C4t+C4rSBkcGtnIC0tdHJpZ2dlcnMtb25seSk6XG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTA4Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgaGF2ZSBiZWVuIHRyaWdnZXJlZCwgYnV0IHRoZSB0cmlnZ2VyIHByb2Nlc3NpbmdcbiIKKyJoYXMgbm90IHlldCBiZWVuIGRvbmUuICBUcmlnZ2VyIHByb2Nlc3NpbmcgY2FuIGJlIHJlcXVlc3RlZCB1c2luZ1xuIgorImRzZWxlY3Qgb3IgZHBrZyAtLWNvbmZpZ3VyZSAtLXBlbmRpbmcgKG9yIGRwa2cgLS10cmlnZ2Vycy1vbmx5KTpcbiIKK21zZ3N0ciAiIgorIuC5geC4nuC4geC5gOC4geC4iOC4leC5iOC4reC5hOC4m+C4meC4teC5ieC4luC4ueC4geC4quC4sOC4geC4tOC4lOC4reC4ouC4ueC5iCDguYHguJXguYjguKLguLHguIfguYTguKHguYjguYTguJTguYnguJvguKPguLDguKHguKfguKXguJzguKUg4LiE4Li44LiT4Liq4Liy4Lih4Liy4Lij4LiW4Liq4Lix4LmI4LiH4LmD4Lir4LmJ4Lib4Lij4Liw4Lih4Lin4Lil4Lic4Lil4LiB4Liy4Lij4Liq4Liw4LiB4Li04LiU4LiU4Lix4LiH4LiB4Lil4LmI4Liy4Lin4LmE4LiU4LmJICIKKyLguYLguJTguKLguYPguIrguYkgZHNlbGVjdCDguKvguKPguLfguK0gZHBrZyAtLWNvbmZpZ3VyZSAtLXBlbmRpbmcgKOC4q+C4o+C4t+C4rSBkcGtnIC0tdHJpZ2dlcnMtb25seSk6XG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTM3IHNyYy9lbnF1aXJ5LmM6MjExIHNyYy9lbnF1aXJ5LmM6MjkyIHNyYy9lbnF1aXJ5LmM6MzczCisjOiBzcmMvZW5xdWlyeS5jOjQ2MCBzcmMvc2VsZWN0LmM6OTggc3JjL3NlbGVjdC5jOjE2NCBzcmMvdHJpZ2NtZC5jOjE5OQorIzogc3JjL3VwZGF0ZS5jOjQ4IHNyYy91cGRhdGUuYzoxMTMgZHBrZy1zcGxpdC9xdWV1ZS5jOjIzMgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIHRha2VzIG5vIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS0lcyDguYTguKHguYjguKPguLHguJrguK3guLLguKPguYzguIHguLTguKfguYDguKHguJnguJXguYwiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTUyCittc2dpZCAiIgorIkFub3RoZXIgcHJvY2VzcyBoYXMgbG9ja2VkIHRoZSBkYXRhYmFzZSBmb3Igd3JpdGluZywgYW5kIG1pZ2h0IGN1cnJlbnRseSBiZVxuIgorIm1vZGlmeWluZyBpdCwgc29tZSBvZiB0aGUgZm9sbG93aW5nIHByb2JsZW1zIG1pZ2h0IGp1c3QgYmUgZHVlIHRvIHRoYXQuXG4iCittc2dzdHIgIiIKKyLguKHguLXguK3guLXguIHguYLguJ7guKPguYDguIvguKrguKvguJnguLbguYjguIfguKXguYfguK3guITguJDguLLguJnguILguYnguK3guKHguLnguKXguYTguKfguYnguYDguILguLXguKLguJkg4LmB4Lil4Liw4Lit4Liy4LiI4LiB4Liz4Lil4Lix4LiH4LmA4Lib4Lil4Li14LmI4Lii4LiZ4LmB4Lib4Lil4LiH4LiC4LmJ4Lit4Lih4Li54Lil4Lit4Lii4Li54LmIXG4iCisi4Lib4Lix4LiN4Lir4Liy4Lia4Liy4LiH4Lit4Lii4LmI4Liy4LiH4LiV4LmI4Lit4LmE4Lib4LiZ4Li14LmJ4Lit4Liy4LiI4LmA4LiB4Li04LiU4LiI4Liy4LiB4Liq4Liy4LmA4Lir4LiV4Li44LiU4Lix4LiH4LiB4Lil4LmI4Liy4LinXG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTkxCisjLCBmdXp6eQorI3wgbXNnaWQgIjx1bmtub3duPiIKK21zZ2N0eHQgInNlY3Rpb24iCittc2dpZCAiPHVua25vd24+IgorbXNnc3RyICI84LmE4Lih4LmI4LiX4Lij4Liy4LiaPiIKKworIzogc3JjL2VucXVpcnkuYzoyNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiICVkIGluICVzOiAiCittc2dzdHIgIiAlZCDguYPguJkgJXM6ICIKKworIzogc3JjL2VucXVpcnkuYzoyNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiICVkIHBhY2thZ2UsIGZyb20gdGhlIGZvbGxvd2luZyBzZWN0aW9uOiIKK21zZ2lkX3BsdXJhbCAiICVkIHBhY2thZ2VzLCBmcm9tIHRoZSBmb2xsb3dpbmcgc2VjdGlvbnM6IgorbXNnc3RyWzBdICIgJWQg4LmB4Lie4LiB4LmA4LiB4LiIIOC4iOC4suC4geC4q+C4oeC4p+C4lOC4leC5iOC4reC5hOC4m+C4meC4teC5iToiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzA1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJWZXJzaW9uIG9mIGRwa2cgd2l0aCB3b3JraW5nICVzIHN1cHBvcnQgbm90IHlldCBjb25maWd1cmVkLlxuIgorIiBQbGVhc2UgdXNlICdkcGtnIC0tY29uZmlndXJlIGRwa2cnLCBhbmQgdGhlbiB0cnkgYWdhaW4uXG4iCittc2dzdHIgIiIKKyJkcGtnIOC4o+C4uOC5iOC4meC4l+C4teC5iOC4o+C4reC4h+C4o+C4seC4miVzIOC4ouC4seC4h+C5hOC4oeC5iOC5hOC4lOC5ieC4leC4seC5ieC4h+C4hOC5iOC4slxuIgorIiDguIHguKPguLjguJPguLLguKrguLHguYjguIcgJ2Rwa2cgLS1jb25maWd1cmUgZHBrZycg4LmB4Lil4LmJ4Lin4LiI4Li24LiH4Lil4Lit4LiH4LmD4Lir4Lih4LmIXG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzEwCisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2cgbm90IHJlY29yZGVkIGFzIGluc3RhbGxlZCwgY2Fubm90IGNoZWNrIGZvciAlcyBzdXBwb3J0IVxuIgorbXNnc3RyICLguYTguKHguYjguKHguLXguJrguLHguJnguJfguLbguIHguKfguYjguLIgZHBrZyDguJbguLnguIHguJXguLTguJTguJXguLHguYnguIfguYTguKfguYkg4LiI4Li24LiH4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4LiV4Lij4Lin4LiI4Liq4Lit4Lia4LiB4Liy4Lij4Lij4Lit4LiH4Lij4Lix4LiaJXMg4LmE4LiU4LmJIVxuIgorCisjIFVzZSBsZWFkaW5nIHNwYWNlIGZvciBFbmdsaXNoIHRyYW5zbGF0aW9uCisjOiBzcmMvZW5xdWlyeS5jOjMyMQorbXNnaWQgIlByZS1EZXBlbmRzIGZpZWxkIgorbXNnc3RyICLguYDguILguJXguILguYnguK3guKHguLnguKUgUHJlLURlcGVuZHMiCisKKyMgVXNlIGxlYWRpbmcgc3BhY2UgZm9yIEVuZ2xpc2ggdHJhbnNsYXRpb24KKyM6IHNyYy9lbnF1aXJ5LmM6MzI5Cittc2dpZCAiZXBvY2giCittc2dzdHIgIiBlcG9jaCIKKworIyBVc2UgbGVhZGluZyBzcGFjZSBmb3IgRW5nbGlzaCB0cmFuc2xhdGlvbgorIzogc3JjL2VucXVpcnkuYzozMzcKK21zZ2lkICJsb25nIGZpbGVuYW1lcyIKK21zZ3N0ciAi4LiK4Li34LmI4Lit4LmB4Lif4LmJ4Lih4Lii4Liy4LinIgorCisjIFVzZSBsZWFkaW5nIHNwYWNlIGZvciBFbmdsaXNoIHRyYW5zbGF0aW9uCisjOiBzcmMvZW5xdWlyeS5jOjM0NgorbXNnaWQgIm11bHRpcGxlIENvbmZsaWN0cyBhbmQgUmVwbGFjZXMiCittc2dzdHIgIuC4o+C4suC4ouC4geC4suC4oyBDb25mbGljdHMg4LmB4Lil4LiwIFJlcGxhY2VzIOC4q+C4peC4suC4ouC4o+C4suC4ouC4geC4suC4oyIKKworIzogc3JjL2VucXVpcnkuYzo0MzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IGNhbm5vdCBzZWUgaG93IHRvIHNhdGlzZnkgcHJlLWRlcGVuZGVuY3k6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKyJkcGtnOiDguYTguKHguYjguJ7guJrguKfguLTguJjguLXguJfguLXguYjguIjguLDguJXguLTguJTguJXguLHguYnguIfguKrguLTguYjguIfguJfguLXguYjguJXguYnguK3guIfguYPguIrguYnguILguJPguLDguJXguLTguJTguJXguLHguYnguIc6XG4iCisiICVzXG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6NDM1CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzYXRpc2Z5IHByZS1kZXBlbmRlbmNpZXMgZm9yICUuMjUwcyAod2FudGVkIGR1ZSB0byAlLjI1MHMpIgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguJXguLTguJTguJXguLHguYnguIfguKrguLTguYjguIfguJfguLXguYjguJXguYnguK3guIfguYPguIrguYnguILguJPguLDguJXguLTguJTguJXguLHguYnguIcgJS4yNTBzICjguJXguYnguK3guIfguIHguLLguKPguYDguJ7guKPguLLguLAgJS4yNTBzKSIKKworIzogc3JjL2VucXVpcnkuYzo0NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAib2Jzb2xldGUgb3B0aW9uICctLSVzJywgcGxlYXNlIHVzZSAnLS0lcycgaW5zdGVhZC4iCittc2dzdHIgIuC4leC4seC4p+C5gOC4peC4t+C4reC4gSAnLS0lcycg4LmA4Lil4Li04LiB4LmD4LiK4LmJ4LmB4Lil4LmJ4LinIOC4geC4o+C4uOC4k+C4suC5g+C4iuC5iSAnLS0lcycg4LmB4LiX4LiZIgorCisjOiBzcmMvZW5xdWlyeS5jOjUxOQorbXNnaWQgIiIKKyItLWNvbXBhcmUtdmVyc2lvbnMgdGFrZXMgdGhyZWUgYXJndW1lbnRzOiA8dmVyc2lvbj4gPHJlbGF0aW9uPiA8dmVyc2lvbj4iCittc2dzdHIgIi0tY29tcGFyZS12ZXJzaW9ucyDguKPguLHguJrguK3guLLguKPguYzguIHguLTguKfguYDguKHguJnguJXguYzguKrguLLguKHguJXguLHguKc6IDzguKPguLjguYjguJk+IDzguIHguLLguKPguYDguJvguKPguLXguKLguJrguYDguJfguLXguKLguJo+IDzguKPguLjguYjguJk+IgorCisjOiBzcmMvZW5xdWlyeS5jOjUyNAorbXNnaWQgIi0tY29tcGFyZS12ZXJzaW9ucyBiYWQgcmVsYXRpb24iCittc2dzdHIgIi0tY29tcGFyZS12ZXJzaW9ucyDguJ7guJrguYDguITguKPguLfguYjguK3guIfguKvguKHguLLguKLguYDguJvguKPguLXguKLguJrguYDguJfguLXguKLguJrguJfguLXguYjguJzguLTguJQiCisKKyM6IHNyYy9lbnF1aXJ5LmM6NTI5IHNyYy9lbnF1aXJ5LmM6NTMxIHNyYy9lbnF1aXJ5LmM6NTQwIHNyYy9lbnF1aXJ5LmM6NTQyCisjLCBjLWZvcm1hdAorbXNnaWQgInZlcnNpb24gJyVzJyBoYXMgYmFkIHN5bnRheDogJXMiCittc2dzdHIgIuC4o+C4uOC5iOC4mSAnJXMnIOC4nOC4tOC4lOC4o+C4ueC4m+C5geC4muC4mjogJXMiCisKKyM6IHNyYy9lcnJvcnMuYzo2MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IGVycm9yIHByb2Nlc3NpbmcgJXMgKC0tJXMpOlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisiJXM6IOC5gOC4geC4tOC4lOC4guC5ieC4reC4nOC4tOC4lOC4nuC4peC4suC4lOC4guC4k+C4sOC4m+C4o+C4sOC4oeC4p+C4peC4nOC4pSAlcyAoLS0lcyk6XG4iCisiICVzXG4iCisKKyM6IHNyYy9lcnJvcnMuYzo2OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgImRwa2c6IGZhaWxlZCB0byBhbGxvY2F0ZSBtZW1vcnkgZm9yIG5ldyBlbnRyeSBpbiBsaXN0IG9mIGZhaWxlZCBwYWNrYWdlcy4iCittc2dpZCAiIgorIiVzOiBmYWlsZWQgdG8gYWxsb2NhdGUgbWVtb3J5IGZvciBuZXcgZW50cnkgaW4gbGlzdCBvZiBmYWlsZWQgcGFja2FnZXM6ICVzIgorbXNnc3RyICJkcGtnOiDguYTguKHguYjguKrguLLguKHguLLguKPguJbguIjguK3guIfguKvguJnguYjguKfguKLguITguKfguLLguKHguIjguLPguKrguLPguKvguKPguLHguJrguKPguLLguKLguIHguLLguKPguYPguKvguKHguYjguYPguJnguKPguLLguKLguIrguLfguYjguK3guYHguJ7guIHguYDguIHguIjguJfguLXguYjguKXguYnguKHguYDguKvguKXguKciCisKKyM6IHNyYy9lcnJvcnMuYzo3OQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZHBrZzogdG9vIG1hbnkgZXJyb3JzLCBzdG9wcGluZ1xuIgorbXNnaWQgIiVzOiB0b28gbWFueSBlcnJvcnMsIHN0b3BwaW5nXG4iCittc2dzdHIgImRwa2c6IOC4oeC4teC4guC5ieC4reC4nOC4tOC4lOC4nuC4peC4suC4lOC4oeC4suC4geC5gOC4geC4tOC4meC5hOC4myDguILguK3guKvguKLguLjguJRcbiIKKworIzogc3JjL2Vycm9ycy5jOjg3Cittc2dpZCAiRXJyb3JzIHdlcmUgZW5jb3VudGVyZWQgd2hpbGUgcHJvY2Vzc2luZzpcbiIKK21zZ3N0ciAi4LmA4LiB4Li04LiU4LiC4LmJ4Lit4Lic4Li04LiU4Lie4Lil4Liy4LiU4LiC4LiT4Liw4Lib4Lij4Liw4Lih4Lin4Lil4Lic4LilOlxuIgorCisjOiBzcmMvZXJyb3JzLmM6OTQKK21zZ2lkICJQcm9jZXNzaW5nIHdhcyBoYWx0ZWQgYmVjYXVzZSB0aGVyZSB3ZXJlIHRvbyBtYW55IGVycm9ycy5cbiIKK21zZ3N0ciAi4Lir4Lii4Li44LiU4LiX4Liz4LiH4Liy4LiZ4LmA4Lie4Lij4Liy4Liw4LmA4LiB4Li04LiU4LiC4LmJ4Lit4Lic4Li04LiU4Lie4Lil4Liy4LiU4Lih4Liy4LiB4LmA4LiB4Li04LiZ4LmE4LibXG4iCisKKyM6IHNyYy9lcnJvcnMuYzoxMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSAlcyB3YXMgb24gaG9sZCwgcHJvY2Vzc2luZyBpdCBhbnl3YXkgYXMgeW91IHJlcXVlc3RlZFxuIgorbXNnc3RyICLguYHguJ7guIHguYDguIHguIggJXMg4LiW4Li54LiB4LiB4Liz4Lir4LiZ4LiU4LmD4Lir4LmJ4LiE4LiH4Lij4Li44LmI4LiZ4LmE4Lin4LmJIOC5geC4leC5iOC4iOC4sOC4lOC4s+C5gOC4meC4tOC4meC4geC4suC4o+C4leC5iOC4reC4leC4suC4oeC4l+C4teC5iOC4hOC4uOC4k+C4quC4seC5iOC4h1xuIgorCisjOiBzcmMvZXJyb3JzLmM6MTA5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJQYWNrYWdlICVzIGlzIG9uIGhvbGQsIG5vdCB0b3VjaGluZyBpdC4gIFVzZSAtLWZvcmNlLWhvbGQgdG8gb3ZlcnJpZGUuXG4iCittc2dzdHIgIiIKKyLguYHguJ7guIHguYDguIHguIggJXMg4LiW4Li54LiB4LiB4Liz4Lir4LiZ4LiU4LmD4Lir4LmJ4LiE4LiH4Lij4Li44LmI4LiZ4LmE4Lin4LmJIOC4iOC4sOC5hOC4oeC5iOC4l+C4s+C4reC4sOC5hOC4o+C4geC4seC4muC5geC4nuC4geC5gOC4geC4iOC4lOC4seC4h+C4geC4peC5iOC4suC4pyDguYPguIrguYnguJXguLHguKfguYDguKXguLfguK3guIEgLS1mb3JjZS1ob2xkICIKKyLguJbguYnguLLguIjguLDguJrguLHguIfguITguLHguJrguYPguKvguYnguJfguLNcbiIKKworIzogc3JjL2Vycm9ycy5jOjExOQorbXNnaWQgIm92ZXJyaWRpbmcgcHJvYmxlbSBiZWNhdXNlIC0tZm9yY2UgZW5hYmxlZDoiCittc2dzdHIgIuC4iOC4sOC4guC5ieC4suC4oeC4m+C4seC4jeC4q+C4suC5hOC4m+C5gOC4nuC4o+C4suC4sOC4oeC4teC4geC4suC4o+C5gOC4m+C4tOC4lOC4leC4seC4p+C5gOC4peC4t+C4reC4gSAtLWZvcmNlOiIKKworIzogc3JjL2ZpbGVzZGIuYzozMDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlIGAlLjI1MHMnIgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguYDguJvguLTguJTguYHguJ/guYnguKHguKPguLLguKLguIrguLfguYjguK3guYHguJ/guYnguKHguILguK3guIfguYHguJ7guIHguYDguIHguIggYCUuMjUwcyciCisKKyM6IHNyYy9maWxlc2RiLmM6MzExCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcycgbWlzc2luZywgYXNzdW1pbmcgcGFja2FnZSBoYXMgbm8gZmlsZXMgIgorImN1cnJlbnRseSBpbnN0YWxsZWQuIgorbXNnc3RyICLguYHguJ/guYnguKHguKPguLLguKLguIrguLfguYjguK3guYHguJ/guYnguKHguILguK3guIfguYHguJ7guIHguYDguIHguIggYCUuMjUwcycg4LiC4Liy4LiU4Lir4Liy4Lii4LmE4LibIOC4iOC4sOC4luC4t+C4reC4p+C5iOC4suC5geC4nuC4geC5gOC4geC4iOC5hOC4oeC5iOC5hOC4lOC5ieC4leC4tOC4lOC4leC4seC5ieC4h+C5geC4n+C5ieC4oeC5g+C4lOC5g+C4meC4o+C4sOC4muC4miIKKworIzogc3JjL2ZpbGVzZGIuYzozMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICclLjI1MHMnIgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJYgc3RhdCDguYHguJ/guYnguKHguKPguLLguKLguIrguLfguYjguK3guYHguJ/guYnguKHguILguK3guIfguYHguJ7guIHguYDguIHguIggJyUuMjUwcyciCisKKyM6IHNyYy9maWxlc2RiLmM6MzMwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlcyBsaXN0IGZvciBwYWNrYWdlIGAlLjI1MHMnIgorbXNnaWQgInJlYWRpbmcgZmlsZXMgbGlzdCBmb3IgcGFja2FnZSAnJS4yNTBzJyIKK21zZ3N0ciAi4Lij4Liy4Lii4LiK4Li34LmI4Lit4LmB4Lif4LmJ4Lih4LiC4Lit4LiH4LmB4Lie4LiB4LmA4LiB4LiIIGAlLjI1MHMnIgorCisjOiBzcmMvZmlsZXNkYi5jOjMzNgorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJyUuMjUwcycgaXMgbWlzc2luZyBmaW5hbCBuZXdsaW5lIgorbXNnc3RyICLguYHguJ/guYnguKHguKPguLLguKLguIrguLfguYjguK3guYHguJ/guYnguKHguILguK3guIfguYHguJ7guIHguYDguIHguIggJyUuMjUwcycg4LiC4Liy4LiU4Lit4Lix4LiB4LiC4Lij4Liw4LiC4Li24LmJ4LiZ4Lia4Lij4Lij4LiX4Lix4LiU4LmD4Lir4Lih4LmI4LiX4Li14LmI4LiX4LmJ4Liy4Lii4Lia4Lij4Lij4LiX4Lix4LiUIgorCisjOiBzcmMvZmlsZXNkYi5jOjM0NAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcycgY29udGFpbnMgZW1wdHkgZmlsZW5hbWUiCittc2dzdHIgIuC5geC4n+C5ieC4oeC4o+C4suC4ouC4iuC4t+C5iOC4reC5geC4n+C5ieC4oeC4guC4reC4h+C5geC4nuC4geC5gOC4geC4iCBgJS4yNTBzJyDguKHguLXguIrguLfguYjguK3guYHguJ/guYnguKHguKfguYjguLLguIfguYDguJvguKXguYjguLIiCisKKyM6IHNyYy9maWxlc2RiLmM6MzUyCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlIGAlLjI1MHMnIgorbXNnc3RyICLguYDguIHguLTguJTguILguYnguK3guJzguLTguJTguJ7guKXguLLguJTguILguJPguLDguJvguLTguJTguYHguJ/guYnguKHguKPguLLguKLguIrguLfguYjguK3guYHguJ/guYnguKHguILguK3guIfguYHguJ7guIHguYDguIHguIggYCUuMjUwcyciCisKKyM6IHNyYy9maWxlc2RiLmM6NDYyCittc2dpZCAiKFJlYWRpbmcgZGF0YWJhc2UgLi4uICIKK21zZ3N0ciAiKOC4geC4s+C4peC4seC4h+C4reC5iOC4suC4meC4kOC4suC4meC4guC5ieC4reC4oeC4ueC4pSAuLi4gIgorCisjOiBzcmMvZmlsZXNkYi5jOjQ4MworIywgYy1mb3JtYXQKK21zZ2lkICIlZCBmaWxlIG9yIGRpcmVjdG9yeSBjdXJyZW50bHkgaW5zdGFsbGVkLilcbiIKK21zZ2lkX3BsdXJhbCAiJWQgZmlsZXMgYW5kIGRpcmVjdG9yaWVzIGN1cnJlbnRseSBpbnN0YWxsZWQuKVxuIgorbXNnc3RyWzBdICIlZCDguYHguJ/guYnguKHguYHguKXguLDguYTguJTguYDguKPguIHguJfguK3guKPguLXguJXguLTguJTguJXguLHguYnguIfguK3guKLguLnguYgpXG4iCisKKyM6IHNyYy9maWxlc2RiLmM6NTE2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC4quC4o+C5ieC4suC4h+C5geC4n+C5ieC4oeC4o+C4suC4ouC4iuC4t+C5iOC4reC5geC4n+C5ieC4oeC4ieC4muC4seC4muC5g+C4q+C4oeC5iOC4quC4s+C4q+C4o+C4seC4muC5geC4nuC4geC5gOC4geC4iCAlcyIKKworIzogc3JjL2ZpbGVzZGIuYzo1MjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIHRvIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguYDguILguLXguKLguJnguYHguJ/guYnguKHguKPguLLguKLguIrguLfguYjguK3guYHguJ/guYnguKHguInguJrguLHguJrguYPguKvguKHguYjguKrguLPguKvguKPguLHguJrguYHguJ7guIHguYDguIHguIggJXMiCisKKyM6IHNyYy9maWxlc2RiLmM6NTI4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBmbHVzaCB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiWIGZsdXNoIOC5geC4n+C5ieC4oeC4o+C4suC4ouC4iuC4t+C5iOC4reC5geC4n+C5ieC4oeC4ieC4muC4seC4muC5g+C4q+C4oeC5iOC4quC4s+C4q+C4o+C4seC4muC5geC4nuC4geC5gOC4geC4iCAlcyIKKworIzogc3JjL2ZpbGVzZGIuYzo1MzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHN5bmMgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4liBzeW5jIOC5geC4n+C5ieC4oeC4o+C4suC4ouC4iuC4t+C5iOC4reC5geC4n+C5ieC4oeC4ieC4muC4seC4muC5g+C4q+C4oeC5iOC4quC4s+C4q+C4o+C4seC4muC5geC4nuC4geC5gOC4geC4iCAlcyIKKworIzogc3JjL2ZpbGVzZGIuYzo1MzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNsb3NlIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguJvguLTguJTguYHguJ/guYnguKHguKPguLLguKLguIrguLfguYjguK3guYHguJ/guYnguKHguInguJrguLHguJrguYPguKvguKHguYjguKrguLPguKvguKPguLHguJrguYHguJ7guIHguYDguIHguIggJXMiCisKKyM6IHNyYy9maWxlc2RiLmM6NTM1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBpbnN0YWxsIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguJXguLTguJTguJXguLHguYnguIfguYHguJ/guYnguKHguKPguLLguKLguIrguLfguYjguK3guYHguJ/guYnguKHguInguJrguLHguJrguYPguKvguKHguYjguKrguLPguKvguKPguLHguJrguYHguJ7guIHguYDguIHguIggJXMiCisKKyM6IHNyYy9oZWxwLmM6NDgKK21zZ2lkICJub3QgaW5zdGFsbGVkIgorbXNnc3RyICLguYTguKHguYjguYTguJTguYnguJXguLTguJTguJXguLHguYnguIciCisKKyM6IHNyYy9oZWxwLmM6NDkKK21zZ2lkICJub3QgaW5zdGFsbGVkIGJ1dCBjb25maWdzIHJlbWFpbiIKK21zZ3N0ciAi4LmE4Lih4LmI4LmE4LiU4LmJ4LiV4Li04LiU4LiV4Lix4LmJ4LiH4LmB4LiV4LmI4LmB4Lif4LmJ4Lih4LiE4LmI4Liy4LiV4Lix4LmJ4LiH4Lii4Lix4LiH4Lit4Lii4Li54LmIIgorCisjOiBzcmMvaGVscC5jOjUwCittc2dpZCAiYnJva2VuIGR1ZSB0byBmYWlsZWQgcmVtb3ZhbCBvciBpbnN0YWxsYXRpb24iCittc2dzdHIgIuC4oeC4teC4m+C4seC4jeC4q+C4suC5gOC4meC4t+C5iOC4reC4h+C4iOC4suC4geC4luC4reC4lOC4luC4reC4meC4q+C4o+C4t+C4reC4leC4tOC4lOC4leC4seC5ieC4h+C5hOC4oeC5iOC4quC4s+C5gOC4o+C5h+C4iCIKKworIzogc3JjL2hlbHAuYzo1MQorbXNnaWQgInVucGFja2VkIGJ1dCBub3QgY29uZmlndXJlZCIKK21zZ3N0ciAi4LmB4LiV4LiB4LmB4Lil4LmJ4Lin4LmB4LiV4LmI4Lii4Lix4LiH4LmE4Lih4LmI4LiV4Lix4LmJ4LiH4LiE4LmI4LiyIgorCisjOiBzcmMvaGVscC5jOjUyCittc2dpZCAiYnJva2VuIGR1ZSB0byBwb3N0aW5zdCBmYWlsdXJlIgorbXNnc3RyICLguKHguLXguJvguLHguI3guKvguLLguYDguJnguLfguYjguK3guIfguIjguLLguIEgcG9zdGluc3Qg4Lic4Li04LiU4Lie4Lil4Liy4LiUIgorCisjOiBzcmMvaGVscC5jOjUzCittc2dpZCAiYXdhaXRpbmcgdHJpZ2dlciBwcm9jZXNzaW5nIGJ5IGFub3RoZXIgcGFja2FnZSIKK21zZ3N0ciAi4LiB4Liz4Lil4Lix4LiH4Lij4Lit4LiE4Lit4Lii4LiB4Liy4Lij4Lib4Lij4Liw4Lih4Lin4Lil4Lic4Lil4LiB4Liy4Lij4Liq4Liw4LiB4Li04LiU4LmD4LiZ4LmB4Lie4LiB4LmA4LiB4LiI4Lit4Li34LmI4LiZIgorCisjOiBzcmMvaGVscC5jOjU0Cittc2dpZCAidHJpZ2dlcmVkIgorbXNnc3RyICLguJbguLnguIHguKrguLDguIHguLTguJTguK3guKLguLnguYgiCisKKyM6IHNyYy9oZWxwLmM6NTUKK21zZ2lkICJpbnN0YWxsZWQiCittc2dzdHIgIuC4leC4tOC4lOC4leC4seC5ieC4h+C4reC4ouC4ueC5iCIKKworIzogc3JjL2hlbHAuYzoxMDcKKyMsIGZ1enp5CisjfCBtc2dpZCAiZXJyb3I6IFBBVEggaXMgbm90IHNldC4iCittc2dpZCAiUEFUSCBpcyBub3Qgc2V0LiIKK21zZ3N0ciAi4Lic4Li04LiU4Lie4Lil4Liy4LiUOiDguYTguKHguYjguYTguJTguYnguJXguLHguYnguIfguITguYjguLIgUEFUSCIKKworIzogc3JjL2hlbHAuYzoxMjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS4iCittc2dzdHIgIuC5hOC4oeC5iOC4nuC4miAnJXMnIOC5g+C4mSBQQVRIIOC4q+C4o+C4t+C4reC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC5gOC4o+C4teC4ouC4geC4l+C4s+C4h+C4suC4meC5hOC4lOC5iSIKKworIzogc3JjL2hlbHAuYzoxMzgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiclcycgbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuIgorbXNnaWQgIiIKKyIlZCBleHBlY3RlZCBwcm9ncmFtIG5vdCBmb3VuZCBpbiBQQVRIIG9yIG5vdCBleGVjdXRhYmxlLlxuIgorIiVzIgorbXNnaWRfcGx1cmFsICIiCisiJWQgZXhwZWN0ZWQgcHJvZ3JhbXMgbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuXG4iCisiJXMiCittc2dzdHJbMF0gIuC5hOC4oeC5iOC4nuC4miAnJXMnIOC5g+C4mSBQQVRIIOC4q+C4o+C4t+C4reC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC5gOC4o+C4teC4ouC4geC4l+C4s+C4h+C4suC4meC5hOC4lOC5iSIKKworIzogc3JjL2hlbHAuYzoxNDEKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIiVkIGV4cGVjdGVkIHByb2dyYW0gbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuXG4iCisjfCAiTkI6IHJvb3QncyBQQVRIIHNob3VsZCB1c3VhbGx5IGNvbnRhaW4gL3Vzci9sb2NhbC9zYmluLCAvdXNyL3NiaW4gYW5kIC8iCisjfCAic2Jpbi4iCisjfCBtc2dpZF9wbHVyYWwgIiIKKyN8ICIlZCBleHBlY3RlZCBwcm9ncmFtcyBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS5cbiIKKyN8ICJOQjogcm9vdCdzIFBBVEggc2hvdWxkIHVzdWFsbHkgY29udGFpbiAvdXNyL2xvY2FsL3NiaW4sIC91c3Ivc2JpbiBhbmQgLyIKKyN8ICJzYmluLiIKK21zZ2lkICIiCisiTm90ZTogcm9vdCdzIFBBVEggc2hvdWxkIHVzdWFsbHkgY29udGFpbiAvdXNyL2xvY2FsL3NiaW4sIC91c3Ivc2JpbiBhbmQgLyIKKyJzYmluLiIKK21zZ3N0ciAiIgorIuC5hOC4oeC5iOC4nuC4muC5guC4m+C4o+C5geC4geC4o+C4oSAlZCDguYLguJvguKPguYHguIHguKPguKHguYPguJkgUEFUSCDguKvguKPguLfguK3guYTguKHguYjguKrguLLguKHguLLguKPguJbguYDguKPguLXguKLguIHguJfguLPguIfguLLguJnguYTguJTguYlcbiIKKyLguKrguLHguIfguYDguIHguJU6IFBBVEgg4LiC4Lit4LiHIHJvb3Qg4LiE4Lin4Lij4Lih4Li1IC91c3IvbG9jYWwvc2JpbiwgL3Vzci9zYmluIOC5geC4peC4sCAvc2JpbiDguJTguYnguKfguKIiCisKKyM6IHNyYy9oZWxwLmM6MTg4Cittc2dpZCAiYWRtaW5kaXIgbXVzdCBiZSBpbnNpZGUgaW5zdGRpciBmb3IgZHBrZyB0byB3b3JrIHByb3Blcmx5IgorbXNnc3RyICIiCisKKyM6IHNyYy9oZWxwLmM6MTkwIHNyYy9tYWluLmM6NzQ3CisjLCBmdXp6eQorI3wgbXNnaWQgInVuYWJsZSB0byBzZXRlbnYgZm9yIG1haW50YWluZXIgc2NyaXB0IgorbXNnaWQgInVuYWJsZSB0byBzZXRlbnYgZm9yIHN1YnByb2Nlc3NlcyIKK21zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiWIHNldGVudiDguKrguLPguKvguKPguLHguJrguKrguITguKPguLTguJvguJXguYzguJzguLnguYnguJTguLnguYHguKXguYHguJ7guIHguYDguIHguIgiCisKKyM6IHNyYy9oZWxwLmM6MTkyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjaHJvb3QgdG8gYCUuMjUwcyciCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4liBjaHJvb3Qg4LmE4Lib4Lii4Lix4LiHIGAlLjI1MHMnIgorCisjOiBzcmMvaGVscC5jOjE5NCBkcGtnLWRlYi9idWlsZC5jOjQ1NSBkcGtnLWRlYi9idWlsZC5jOjQ1NworIzogZHBrZy1kZWIvYnVpbGQuYzo1MzYgZHBrZy1kZWIvYnVpbGQuYzo1NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIGAlLjI1NXMnIgorbXNnc3RyICLguYDguJvguKXguLXguYjguKLguJnguYTguJTguYDguKPguIHguJfguK3guKPguLXguYTguJvguKLguLHguIcgYCUuMjU1cycg4LmE4Lih4LmI4Liq4Liz4LmA4Lij4LmH4LiIIgorCisjOiBzcmMvaGVscC5jOjI1NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IGV4ZWN1dGUgcGVybWlzc2lvbnMgb24gYCUuMjUwcyciCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC4geC4s+C4q+C4meC4lOC4quC4tOC4l+C4mOC4tOC5jOC4geC4suC4o+C5gOC4o+C4teC4ouC4geC4l+C4s+C4h+C4suC4meC5g+C4q+C5ieC4geC4seC4miBgJS4yNTBzJyIKKworIzogc3JjL2hlbHAuYzoyNzYKK21zZ2lkICJ1bmFibGUgdG8gc2V0ZW52IGZvciBtYWludGFpbmVyIHNjcmlwdCIKK21zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiWIHNldGVudiDguKrguLPguKvguKPguLHguJrguKrguITguKPguLTguJvguJXguYzguJzguLnguYnguJTguLnguYHguKXguYHguJ7guIHguYDguIHguIgiCisKKyM6IHNyYy9oZWxwLmM6MzAwCisjLCBjLWZvcm1hdAorbXNnaWQgImluc3RhbGxlZCAlcyBzY3JpcHQiCittc2dzdHIgIuC4quC4hOC4o+C4tOC4m+C4leC5jCAlcyDguJfguLXguYjguJXguLTguJTguJXguLHguYnguIfguYTguKfguYkiCisKKyM6IHNyYy9oZWxwLmM6MzEzIHNyYy9oZWxwLmM6MzgyIHNyYy9oZWxwLmM6NDQxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0ICVzIGAlLjI1MHMnIgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJYgc3RhdCAlcyBgJS4yNTBzJyIKKworIzogc3JjL2hlbHAuYzozNjggc3JjL2hlbHAuYzo0MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAibmV3ICVzIHNjcmlwdCIKK21zZ3N0ciAi4Liq4LiE4Lij4Li04Lib4LiV4LmMICVzIOC4reC4seC4meC5g+C4q+C4oeC5iCIKKworIzogc3JjL2hlbHAuYzo0MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAib2xkICVzIHNjcmlwdCIKK21zZ3N0ciAi4Liq4LiE4Lij4Li04Lib4LiV4LmMICVzIOC4reC4seC4meC5gOC4geC5iOC4siIKKworIzogc3JjL2hlbHAuYzo0MTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgJXMgJyUuMjUwcyc6ICVzIgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJYgc3RhdCAlcyAnJS4yNTBzJzogJXMiCisKKyM6IHNyYy9oZWxwLmM6NDI1CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2cgLSB0cnlpbmcgc2NyaXB0IGZyb20gdGhlIG5ldyBwYWNrYWdlIGluc3RlYWQgLi4uXG4iCittc2dzdHIgImRwa2cgLSDguIjguLDguKXguK3guIfguYPguIrguYnguKrguITguKPguLTguJvguJXguYzguIjguLLguIHguYHguJ7guIHguYDguIHguIjguYPguKvguKHguYjguYHguJfguJkgLi4uXG4iCisKKyM6IHNyYy9oZWxwLmM6NDM5Cittc2dpZCAidGhlcmUgaXMgbm8gc2NyaXB0IGluIHRoZSBuZXcgdmVyc2lvbiBvZiB0aGUgcGFja2FnZSAtIGdpdmluZyB1cCIKK21zZ3N0ciAi4LmE4Lih4LmI4Lih4Li14Liq4LiE4Lij4Li04Lib4LiV4LmM4LmD4LiZ4LmB4Lie4LiB4LmA4LiB4LiI4Lij4Li44LmI4LiZ4LmD4Lir4Lih4LmIIC0g4LiC4Lit4Lii4LiB4LmA4Lil4Li04LiBIgorCisjOiBzcmMvaGVscC5jOjQ0NQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiAuLi4gaXQgbG9va3MgbGlrZSB0aGF0IHdlbnQgT0suXG4iCittc2dzdHIgImRwa2c6IC4uLiDguJfguLjguIHguK3guKLguYjguLLguIfguJTguLnguIjguLDguYDguKPguLXguKLguJrguKPguYnguK3guKLguJTguLVcbiIKKworIzogc3JjL2hlbHAuYzo2MTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNlY3VyZWx5IHJlbW92ZSAnJS4yNTVzJyIKK21zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4Lil4LiaICclLjI1NXMnIOC4reC4ouC5iOC4suC4h+C4m+C4peC4reC4lOC4oOC4seC4ouC5hOC4lOC5iSIKKworIzogc3JjL2hlbHAuYzo2MjEgZHBrZy1kZWIvaW5mby5jOjY1IGRwa2ctZGViL2luZm8uYzo2NworbXNnaWQgInJtIGNvbW1hbmQgZm9yIGNsZWFudXAiCittc2dzdHIgIiIKKworIzogc3JjL2luZm9kYi5jOjUyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGVjayBleGlzdGVuY2Ugb2YgYCUuMjUwcyciCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC4leC4o+C4p+C4iOC4quC4reC4muC4geC4suC4o+C4oeC4teC4reC4ouC4ueC5iOC4guC4reC4hyBgJS4yNTBzJyIKKworIzogc3JjL2luZm9kYi5jOjcwCittc2dpZCAiY2Fubm90IHJlYWQgaW5mbyBkaXJlY3RvcnkiCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC4reC5iOC4suC4meC5hOC4lOC5gOC4o+C4geC4l+C4reC4o+C4tSBpbmZvIgorCisjOiBzcmMvbWFpbi5jOjYwCisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiBgJXMnIHBhY2thZ2UgbWFuYWdlbWVudCBwcm9ncmFtIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIuC5guC4m+C4o+C5geC4geC4o+C4oeC4iOC4seC4lOC4geC4suC4o+C5geC4nuC4geC5gOC4geC4iCBgJXMnIOC4guC4reC4h+C5gOC4lOC5gOC4muC4teC4ouC4mSDguKPguLjguYjguJkgJXNcbiIKKworIzogc3JjL21haW4uYzo4NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtaXwtLWluc3RhbGwgICAgICAgPC5kZWIgZmlsZSBuYW1lPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyZWN0b3J5PiAuLi5cbiIKKyIgIC0tdW5wYWNrICAgICAgICAgICA8LmRlYiBmaWxlIG5hbWU+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXJlY3Rvcnk+IC4uLlxuIgorIiAgLUF8LS1yZWNvcmQtYXZhaWwgIDwuZGViIGZpbGUgbmFtZT4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRpcmVjdG9yeT4gLi4uXG4iCisiICAtLWNvbmZpZ3VyZSAgICAgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLS10cmlnZ2Vycy1vbmx5ICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC1yfC0tcmVtb3ZlICAgICAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtUHwtLXB1cmdlICAgICAgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLS1nZXQtc2VsZWN0aW9ucyBbPHBhdHRlcm4+IC4uLl0gR2V0IGxpc3Qgb2Ygc2VsZWN0aW9ucyB0byBzdGRvdXQuXG4iCisiICAtLXNldC1zZWxlY3Rpb25zICAgICAgICAgICAgICAgICBTZXQgcGFja2FnZSBzZWxlY3Rpb25zIGZyb20gc3RkaW4uXG4iCisiICAtLWNsZWFyLXNlbGVjdGlvbnMgICAgICAgICAgICAgICBEZXNlbGVjdCBldmVyeSBub24tZXNzZW50aWFsIHBhY2thZ2UuXG4iCisiICAtLXVwZGF0ZS1hdmFpbCA8UGFja2FnZXMtZmlsZT4gICBSZXBsYWNlIGF2YWlsYWJsZSBwYWNrYWdlcyBpbmZvLlxuIgorIiAgLS1tZXJnZS1hdmFpbCA8UGFja2FnZXMtZmlsZT4gICAgTWVyZ2Ugd2l0aCBpbmZvIGZyb20gZmlsZS5cbiIKKyIgIC0tY2xlYXItYXZhaWwgICAgICAgICAgICAgICAgICAgIEVyYXNlIGV4aXN0aW5nIGF2YWlsYWJsZSBpbmZvLlxuIgorIiAgLS1mb3JnZXQtb2xkLXVuYXZhaWwgICAgICAgICAgICAgRm9yZ2V0IHVuaW5zdGFsbGVkIHVuYXZhaWxhYmxlIHBrZ3MuXG4iCisiICAtc3wtLXN0YXR1cyA8cGFja2FnZT4gLi4uICAgICAgICBEaXNwbGF5IHBhY2thZ2Ugc3RhdHVzIGRldGFpbHMuXG4iCisiICAtcHwtLXByaW50LWF2YWlsIDxwYWNrYWdlPiAuLi4gICBEaXNwbGF5IGF2YWlsYWJsZSB2ZXJzaW9uIGRldGFpbHMuXG4iCisiICAtTHwtLWxpc3RmaWxlcyA8cGFja2FnZT4gLi4uICAgICBMaXN0IGZpbGVzIGBvd25lZCcgYnkgcGFja2FnZShzKS5cbiIKKyIgIC1sfC0tbGlzdCBbPHBhdHRlcm4+IC4uLl0gICAgICAgIExpc3QgcGFja2FnZXMgY29uY2lzZWx5LlxuIgorIiAgLVN8LS1zZWFyY2ggPHBhdHRlcm4+IC4uLiAgICAgICAgRmluZCBwYWNrYWdlKHMpIG93bmluZyBmaWxlKHMpLlxuIgorIiAgLUN8LS1hdWRpdCAgICAgICAgICAgICAgICAgICAgICAgQ2hlY2sgZm9yIGJyb2tlbiBwYWNrYWdlKHMpLlxuIgorIiAgLS1wcmludC1hcmNoaXRlY3R1cmUgICAgICAgICAgICAgUHJpbnQgZHBrZyBhcmNoaXRlY3R1cmUuXG4iCisiICAtLWNvbXBhcmUtdmVyc2lvbnMgPGE+IDxvcD4gPGI+ICBDb21wYXJlIHZlcnNpb24gbnVtYmVycyAtIHNlZSBiZWxvdy5cbiIKKyIgIC0tZm9yY2UtaGVscCAgICAgICAgICAgICAgICAgICAgIFNob3cgaGVscCBvbiBmb3JjaW5nLlxuIgorIiAgLURofC0tZGVidWc9aGVscCAgICAgICAgICAgICAgICAgU2hvdyBoZWxwIG9uIGRlYnVnZ2luZy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIuC4hOC4s+C4quC4seC5iOC4hzpcbiIKKyIgIC1pfC0taW5zdGFsbCAgICAgICA84LiK4Li34LmI4Lit4LmB4Lif4LmJ4LihIC5kZWI+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDzguYTguJTguYDguKPguIHguJfguK3guKPguLU+IC4uLlxuIgorIiAgLS11bnBhY2sgICAgICAgICAgIDzguIrguLfguYjguK3guYHguJ/guYnguKEgLmRlYj4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPOC5hOC4lOC5gOC4o+C4geC4l+C4reC4o+C4tT4gLi4uXG4iCisiICAtQXwtLXJlY29yZC1hdmFpbCAgPOC4iuC4t+C5iOC4reC5geC4n+C5ieC4oSAuZGViPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA84LmE4LiU4LmA4Lij4LiB4LiX4Lit4Lij4Li1PiAuLi5cbiIKKyIgIC0tY29uZmlndXJlICAgICAgICA84LmB4Lie4LiB4LmA4LiB4LiIPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC0tdHJpZ2dlcnMtb25seSAgICA84LmB4Lie4LiB4LmA4LiB4LiIPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC1yfC0tcmVtb3ZlICAgICAgICA84LmB4Lie4LiB4LmA4LiB4LiIPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC1QfC0tcHVyZ2UgICAgICAgICA84LmB4Lie4LiB4LmA4LiB4LiIPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC0tZ2V0LXNlbGVjdGlvbnMgWzzguYHguJ7guJXguYDguJfguLTguKPguYzguJk+IC4uLl0g4LmB4Liq4LiU4LiH4Lij4Liy4Lii4LiB4Liy4Lij4LiB4Liy4Lij4LmA4Lil4Li34Lit4LiB4LiV4Li04LiU4LiV4Lix4LmJ4LiH4LmB4Lie4LiB4LmA4LiB4LiI4Lit4Lit4LiB4LiX4Liy4LiHIHN0ZG91dFxuIgorIiAgLS1zZXQtc2VsZWN0aW9ucyAgICAgICAgICAgICAgICAg4LiB4Liz4Lir4LiZ4LiU4Lij4Liy4Lii4LiB4Liy4Lij4LiB4Liy4Lij4LmA4Lil4Li34Lit4LiB4LiV4Li04LiU4LiV4Lix4LmJ4LiH4LmB4Lie4LiB4LmA4LiB4LiI4LiI4Liy4LiBIHN0ZGluXG4iCisiICAtLWNsZWFyLXNlbGVjdGlvbnMgICAgICAgICAgICAgICDguKLguIHguYDguKXguLTguIHguIHguLLguKPguYDguKXguLfguK3guIHguYHguJ7guIHguYDguIHguIjguJfguLXguYjguYTguKHguYjguYPguIrguYjguYHguJ7guIHguYDguIHguIjguIjguLPguYDguJvguYfguJnguJfguLHguYnguIfguKvguKHguJRcbiIKKyIgIC0tdXBkYXRlLWF2YWlsIDzguYHguJ/guYnguKEgUGFja2FnZXM+ICAgIOC5geC4l+C4meC4l+C4teC5iOC4guC5ieC4reC4oeC4ueC4peC4o+C4suC4ouC4iuC4t+C5iOC4reC5geC4nuC4geC5gOC4geC4iOC4guC4reC4h+C5geC4q+C4peC5iOC4h1xuIgorIiAgLS1tZXJnZS1hdmFpbCA84LmB4Lif4LmJ4LihIFBhY2thZ2VzPiAgICAg4Lic4Liq4Liy4LiZ4LiC4LmJ4Lit4Lih4Li54Lil4Lij4Liy4Lii4LiK4Li34LmI4Lit4LmB4Lie4LiB4LmA4LiB4LiI4LiC4Lit4LiH4LmB4Lir4Lil4LmI4LiH4LiI4Liy4LiB4LmB4Lif4LmJ4Lih4LiX4Li14LmI4LiB4Liz4Lir4LiZ4LiUXG4iCisiICAtLWNsZWFyLWF2YWlsICAgICAgICAgICAgICAgICAgICDguKXguJrguILguYnguK3guKHguLnguKXguKPguLLguKLguIrguLfguYjguK3guYHguJ7guIHguYDguIHguIjguILguK3guIfguYHguKvguKXguYjguIfguJfguLXguYjguKHguLXguK3guKLguLnguYhcbiIKKyIgIC0tZm9yZ2V0LW9sZC11bmF2YWlsICAgICAgICAgICAgIOC4peC4sOC4l+C4tOC5ieC4h+C4o+C4suC4ouC4iuC4t+C5iOC4reC5geC4nuC4geC5gOC4geC4iOC4l+C4teC5iOC5hOC4oeC5iOC5hOC4lOC5ieC4leC4tOC4lOC4leC4seC5ieC4h+C5geC4peC4sOC5hOC4oeC5iOC4oeC4teC4reC4ouC4ueC5iFxuIgorIiAgLXN8LS1zdGF0dXMgPOC5geC4nuC4geC5gOC4geC4iD4gLi4uICAgICAgICAg4LmB4Liq4LiU4LiH4Lij4Liy4Lii4Lil4Liw4LmA4Lit4Li14Lii4LiU4Liq4LiW4Liy4LiZ4Liw4LiC4Lit4LiH4LmB4Lie4LiB4LmA4LiB4LiIXG4iCisiICAtcHwtLXByaW50LWF2YWlsIDzguYHguJ7guIHguYDguIHguIg+IC4uLiAgICDguYHguKrguJTguIfguKPguLLguKLguKXguLDguYDguK3guLXguKLguJTguILguK3guIfguKPguLjguYjguJnguJfguLXguYjguKHguLXguK3guKLguLnguYhcbiIKKyIgIC1MfC0tbGlzdGZpbGVzIDzguYHguJ7guIHguYDguIHguIg+IC4uLiAgICAgIOC5geC4quC4lOC4h+C4o+C4suC4ouC4iuC4t+C5iOC4reC5geC4n+C5ieC4oeC4l+C4teC5iCBg4LmA4Lib4LmH4LiZ4LiC4Lit4LiHJyDguYHguJ7guIHguYDguIHguIhcbiIKKyIgIC1sfC0tbGlzdCBbPOC5geC4nuC4leC5gOC4l+C4tOC4o+C5jOC4mT4gLi4uXSAgICAgICAg4LmB4Liq4LiU4LiH4Lij4Liy4Lii4LiK4Li34LmI4Lit4LmB4Lie4LiB4LmA4LiB4LiI4LmC4LiU4Lii4Lii4LmI4LitXG4iCisiICAtU3wtLXNlYXJjaCA84LmB4Lie4LiV4LmA4LiX4Li04Lij4LmM4LiZPiAuLi4gICAgICAgIOC5geC4quC4lOC4h+C5geC4nuC4geC5gOC4geC4iOC4l+C4teC5iOC5gOC4m+C5h+C4meC5gOC4iOC5ieC4suC4guC4reC4h+C5geC4n+C5ieC4oVxuIgorIiAgLUN8LS1hdWRpdCAgICAgICAgICAgICAgICAgICAgICAg4LiV4Lij4Lin4LiI4Liq4Lit4Lia4Lir4Liy4LmB4Lie4LiB4LmA4LiB4LiI4LiX4Li14LmI4Lih4Li14Lib4Lix4LiN4Lir4LiyXG4iCisiICAtLXByaW50LWFyY2hpdGVjdHVyZSAgICAgICAgICAgICDguYHguKrguJTguIfguIrguJnguLTguJTguYDguITguKPguLfguYjguK3guIfguJfguLXguYggZHBrZyDguYPguIrguYlcbiIKKyIgIC0tY29tcGFyZS12ZXJzaW9ucyA8YT4gPG9wPiA8Yj4gIOC5gOC4m+C4o+C4teC4ouC4muC5gOC4l+C4teC4ouC4muC5gOC4peC4guC4o+C4uOC5iOC4mSAtIOC4lOC4ueC4o+C4suC4ouC4peC4sOC5gOC4reC4teC4ouC4lOC4lOC5ieC4suC4meC4peC5iOC4suC4h1xuIgorIiAgLS1mb3JjZS1oZWxwICAgICAgICAgICAgICAgICAgICAg4LmB4Liq4LiU4LiH4Lin4Li04LiY4Li14LmD4LiK4LmJ4LiV4Lix4Lin4LmA4Lil4Li34Lit4LiBIGZvcmNlIOC4l+C4seC5ieC4h+C4q+C4peC4suC4olxuIgorIiAgLURofC0tZGVidWc9aGVscCAgICAgICAgICAgICAgICAg4LmB4Liq4LiU4LiH4Lin4Li04LiY4Li14LmD4LiK4LmJ4LiV4Lix4Lin4LmA4Lil4Li34Lit4LiB4Liq4Liz4Lir4Lij4Lix4Lia4LiB4Liy4Lij4LiU4Li14Lia4Lix4LmK4LiB4LiX4Lix4LmJ4LiH4Lir4Lil4Liy4LiiXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTEzIHNyYy9xdWVyeWNtZC5jOjYzMSBzcmMvdHJpZ2NtZC5jOjc3IGRwa2ctZGViL21haW4uYzo4OAorIzogZHBrZy1zcGxpdC9tYWluLmM6NzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiAgLWh8LS1oZWxwICAgICAgICAgICAgICAgICAgICAgICAgU2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCittc2dzdHIgIiIKKyIgIC1ofC0taGVscCAgICAgICAgICAgICAgICAgICAgICAgIOC5geC4quC4lOC4h+C4guC5ieC4reC4hOC4p+C4suC4oeC4iuC5iOC4p+C4ouC5gOC4q+C4peC4t+C4reC4meC4teC5iVxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICAgICAgICAg4LmB4Liq4LiU4LiH4LmA4Lil4LiC4Lij4Li44LmI4LiZXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTE4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJVc2UgZHBrZyAtYnwtLWJ1aWxkfC1jfC0tY29udGVudHN8LWV8LS1jb250cm9sfC1JfC0taW5mb3wtZnwtLWZpZWxkfFxuIgorIiAteHwtLWV4dHJhY3R8LVh8LS12ZXh0cmFjdHwtLWZzeXMtdGFyZmlsZSAgb24gYXJjaGl2ZXMgKHR5cGUgJXMgLS1oZWxwKS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIuC5g+C4iuC5iSBkcGtnIC1ifC0tYnVpbGR8LWN8LS1jb250ZW50c3wtZXwtLWNvbnRyb2x8LUl8LS1pbmZvfC1mfC0tZmllbGR8XG4iCisiIC14fC0tZXh0cmFjdHwtWHwtLXZleHRyYWN0fC0tZnN5cy10YXJmaWxlICDguIHguLHguJrguYHguJ/guYnguKHguYHguJ7guIHguYDguIHguIggKOC4nuC4tOC4oeC4nuC5jCAlcyAtLWhlbHApLlxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjEyMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiRm9yIGludGVybmFsIHVzZTogZHBrZyAtLWFzc2VydC1zdXBwb3J0LXByZWRlcGVuZHMgfCAtLXByZWRlcC1wYWNrYWdlIHxcbiIKKyIgIC0tYXNzZXJ0LXdvcmtpbmctZXBvY2ggfCAtLWFzc2VydC1sb25nLWZpbGVuYW1lcyB8IC0tYXNzZXJ0LW11bHRpLWNvbnJlcC5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIuC4quC4s+C4q+C4o+C4seC4muC4geC4suC4o+C5g+C4iuC5ieC4h+C4suC4meC4oOC4suC4ouC5g+C4mTogZHBrZyAtLWFzc2VydC1zdXBwb3J0LXByZWRlcGVuZHMgfCAtLXByZWRlcC1wYWNrYWdlIHxcbiIKKyIgIC0tYXNzZXJ0LXdvcmtpbmctZXBvY2ggfCAtLWFzc2VydC1sb25nLWZpbGVuYW1lcyB8IC0tYXNzZXJ0LW11bHRpLWNvbnJlcC5cbiIKKyJcbiIKKworIzogc3JjL21haW4uYzoxMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyIgIC0tcm9vdD08ZGlyZWN0b3J5PiAgICAgICAgIEluc3RhbGwgb24gYSBkaWZmZXJlbnQgcm9vdCBkaXJlY3RvcnkuXG4iCisiICAtLWluc3RkaXI9PGRpcmVjdG9yeT4gICAgICBDaGFuZ2UgaW5zdGFsbGF0aW9uIGRpciB3aXRob3V0IGNoYW5naW5nIGFkbWluICIKKyJkaXIuXG4iCisiICAtLXBhdGgtZXhjbHVkZT08cGF0dGVybj4gICBEbyBub3QgaW5zdGFsbCBwYXRocyB3aGljaCBtYXRjaCBhIHNoZWxsICIKKyJwYXR0ZXJuLlxuIgorIiAgLS1wYXRoLWluY2x1ZGU9PHBhdHRlcm4+ICAgUmUtaW5jbHVkZSBhIHBhdHRlcm4gYWZ0ZXIgYSBwcmV2aW91cyAiCisiZXhjbHVzaW9uLlxuIgorIiAgLU98LS1zZWxlY3RlZC1vbmx5ICAgICAgICAgU2tpcCBwYWNrYWdlcyBub3Qgc2VsZWN0ZWQgZm9yIGluc3RhbGwvIgorInVwZ3JhZGUuXG4iCisiICAtRXwtLXNraXAtc2FtZS12ZXJzaW9uICAgICBTa2lwIHBhY2thZ2VzIHdob3NlIHNhbWUgdmVyc2lvbiBpcyBpbnN0YWxsZWQuXG4iCisiICAtR3wtLXJlZnVzZS1kb3duZ3JhZGUgICAgICBTa2lwIHBhY2thZ2VzIHdpdGggZWFybGllciB2ZXJzaW9uIHRoYW4gIgorImluc3RhbGxlZC5cbiIKKyIgIC1CfC0tYXV0by1kZWNvbmZpZ3VyZSAgICAgIEluc3RhbGwgZXZlbiBpZiBpdCB3b3VsZCBicmVhayBzb21lIG90aGVyICIKKyJwYWNrYWdlLlxuIgorIiAgLS1bbm8tXXRyaWdnZXJzICAgICAgICAgICAgU2tpcCBvciBmb3JjZSBjb25zZXF1ZW50aWFsIHRyaWdnZXIgIgorInByb2Nlc3NpbmcuXG4iCisiICAtLW5vLWRlYnNpZyAgICAgICAgICAgICAgICBEbyBub3QgdHJ5IHRvIHZlcmlmeSBwYWNrYWdlIHNpZ25hdHVyZXMuXG4iCisiICAtLW5vLWFjdHwtLWRyeS1ydW58LS1zaW11bGF0ZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSnVzdCBzYXkgd2hhdCB3ZSB3b3VsZCBkbyAtIGRvbid0IGRvIGl0LlxuIgorIiAgLUR8LS1kZWJ1Zz08b2N0YWw+ICAgICAgICAgRW5hYmxlIGRlYnVnZ2luZyAoc2VlIC1EaGVscCBvciAtLWRlYnVnPWhlbHApLlxuIgorIiAgLS1zdGF0dXMtZmQgPG4+ICAgICAgICAgICAgU2VuZCBzdGF0dXMgY2hhbmdlIHVwZGF0ZXMgdG8gZmlsZSBkZXNjcmlwdG9yICIKKyI8bj4uXG4iCisiICAtLWxvZz08ZmlsZW5hbWU+ICAgICAgICAgICBMb2cgc3RhdHVzIGNoYW5nZXMgYW5kIGFjdGlvbnMgdG8gPGZpbGVuYW1lPi5cbiIKKyIgIC0taWdub3JlLWRlcGVuZHM9PHBhY2thZ2U+LC4uLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSWdub3JlIGRlcGVuZGVuY2llcyBpbnZvbHZpbmcgPHBhY2thZ2U+LlxuIgorIiAgLS1mb3JjZS0uLi4gICAgICAgICAgICAgICAgT3ZlcnJpZGUgcHJvYmxlbXMgKHNlZSAtLWZvcmNlLWhlbHApLlxuIgorIiAgLS1uby1mb3JjZS0uLi58LS1yZWZ1c2UtLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9wIHdoZW4gcHJvYmxlbXMgZW5jb3VudGVyZWQuXG4iCisiICAtLWFib3J0LWFmdGVyIDxuPiAgICAgICAgICBBYm9ydCBhZnRlciBlbmNvdW50ZXJpbmcgPG4+IGVycm9ycy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIuC4leC4seC4p+C5gOC4peC4t+C4reC4gTpcbiIKKyIgIC0tYWRtaW5kaXI9POC5hOC4lOC5gOC4o+C4geC4l+C4reC4o+C4tT4gICAgICDguYPguIrguYkgPOC5hOC4lOC5gOC4o+C4geC4l+C4reC4o+C4tT4g4LmB4LiX4LiZICVzXG4iCisiICAtLXJvb3Q9POC5hOC4lOC5gOC4o+C4geC4l+C4reC4o+C4tT4gICAgICAgICAg4LiV4Li04LiU4LiV4Lix4LmJ4LiH4LmD4LiZ4LmE4LiU4LmA4Lij4LiB4LiX4Lit4Lij4Li14Lij4Liy4LiB4Lit4Li34LmI4LiZXG4iCisiICAtLWluc3RkaXI9POC5hOC4lOC5gOC4o+C4geC4l+C4reC4o+C4tT4gICAgICAgIgorIuC5gOC4m+C4peC4teC5iOC4ouC4meC5hOC4lOC5gOC4o+C4geC4l+C4reC4o+C4teC4leC4tOC4lOC4leC4seC5ieC4h+C5guC4lOC4ouC5hOC4oeC5iOC5gOC4m+C4peC4teC5iOC4ouC4meC5hOC4lOC5gOC4o+C4geC4l+C4reC4o+C4teC4quC4s+C4q+C4o+C4seC4muC4lOC4ueC5geC4peC4o+C4sOC4muC4mlxuIgorIiAgLS1wYXRoLWV4Y2x1ZGU9POC5geC4nuC4leC5gOC4l+C4tOC4o+C5jOC4mT4gICDguYTguKHguYjguJXguYnguK3guIfguJXguLTguJTguJXguLHguYnguIfguJ7guLLguJjguJfguLXguYjguJXguKPguIfguIHguLHguJrguYHguJ7guJXguYDguJfguLTguKPguYzguJnguILguK3guIfguYDguIrguKXguKXguYzguJfguLXguYjguIHguLPguKvguJnguJRcbiIKKyIgIC0tcGF0aC1pbmNsdWRlPTzguYHguJ7guJXguYDguJfguLTguKPguYzguJk+ICAg4LiZ4Lix4Lia4Lij4Lin4Lih4LmB4Lif4LmJ4Lih4LmD4LiZ4LmB4Lie4LiV4LmA4LiX4Li04Lij4LmM4LiZ4LiX4Li14LmI4LmA4LiE4Lii4LmE4Lih4LmI4LiZ4Lix4Lia4Lij4Lin4Lih4LmD4LiZ4LiE4Lij4Lix4LmJ4LiH4LiB4LmI4Lit4LiZ4LmA4LiC4LmJ4Liy4Lih4Liy4LmD4Lir4Lih4LmIXG4iCisiICAtT3wtLXNlbGVjdGVkLW9ubHkgICAgICAgICDguILguYnguLLguKHguYHguJ7guIHguYDguIHguIjguJfguLXguYjguYTguKHguYjguYTguJTguYnguYDguKXguLfguK3guIHguKrguLPguKvguKPguLHguJrguJXguLTguJTguJXguLHguYnguIcv4Lib4Lij4Lix4Lia4Lij4Li44LmI4LiZXG4iCisiICAtRXwtLXNraXAtc2FtZS12ZXJzaW9uICAgICDguILguYnguLLguKHguYHguJ7guIHguYDguIHguIjguJfguLXguYjguYTguJTguYnguJXguLTguJTguJXguLHguYnguIfguKPguLjguYjguJnguYDguJTguLXguKLguKfguIHguLHguJnguYTguKfguYnguYHguKXguYnguKdcbiIKKyIgIC1HfC0tcmVmdXNlLWRvd25ncmFkZSAgICAgIOC4guC5ieC4suC4oeC5geC4nuC4geC5gOC4geC4iOC4l+C4teC5iOC4o+C4uOC5iOC4meC5gOC4geC5iOC4suC4geC4p+C5iOC4suC4l+C4teC5iOC4leC4tOC4lOC4leC4seC5ieC4h+C5hOC4p+C5iVxuIgorIiAgLUJ8LS1hdXRvLWRlY29uZmlndXJlICAgICAg4Lia4Lix4LiH4LiE4Lix4Lia4LiV4Li04LiU4LiV4Lix4LmJ4LiH4LmB4Lih4LmJ4LiI4Liw4LiX4Liz4LmD4Lir4LmJ4LmB4Lie4LiB4LmA4LiB4LiI4Lit4Li34LmI4LiZ4Lie4Lix4LiHXG4iCisiICAtLVtuby1ddHJpZ2dlcnMgICAgICAgICAgICDguILguYnguLLguKHguKvguKPguLfguK3guJrguLHguIfguITguLHguJrguIHguLLguKPguJvguKPguLDguKHguKfguKXguJzguKXguIHguLLguKPguKrguLDguIHguLTguJRcbiIKKyIgIC0tbm8tZGVic2lnICAgICAgICAgICAgICAgIOC5hOC4oeC5iOC4leC5ieC4reC4h+C4nuC4ouC4suC4ouC4suC4oeC4leC4o+C4p+C4iOC4quC4reC4muC4peC4suC4ouC5gOC4i+C5h+C4meC5g+C4meC5geC4nuC4geC5gOC4geC4iFxuIgorIiAgLS1uby1hY3R8LS1kcnktcnVufC0tc2ltdWxhdGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIOC5geC4hOC5iOC5geC4quC4lOC4h+C4guC4seC5ieC4meC4leC4reC4meC4geC4suC4o+C4l+C4s+C4h+C4suC4meC5gOC4l+C5iOC4suC4meC4seC5ieC4mSAtIOC5hOC4oeC5iOC4leC5ieC4reC4h+C4l+C4s+C4iOC4o+C4tOC4h1xuIgorIiAgLUR8LS1kZWJ1Zz084LiQ4Liy4LiZ4LmB4Lib4LiUPiAgICAgICAg4LmA4Lib4Li04LiU4LmD4LiK4LmJ4LiB4Liy4Lij4LiU4Li14Lia4Lix4LmK4LiBICjguJTguLkgLURoZWxwIOC4q+C4o+C4t+C4rSAtLWRlYnVnPWhlbHApXG4iCisiICAtLXN0YXR1cy1mZCA8bj4gICAgICAgICAgICDguKrguYjguIfguILguYnguK3guKHguLnguKXguIHguLLguKPguYDguJvguKXguLXguYjguKLguJnguKrguJbguLLguJnguLDguYHguJ7guIHguYDguIHguIjguK3guK3guIHguJfguLLguIcgZmlsZSBkZXNjcmlwdG9yICIKKyI8bj5cbiIKKyIgIC0tbG9nPTzguIrguLfguYjguK3guYHguJ/guYnguKE+ICAgICAgICAgICAgICDguJrguLHguJnguJfguLbguIHguIHguLLguKPguYDguJvguKXguLXguYjguKLguJnguKrguJbguLLguJnguLDguYHguKXguLDguIHguLLguKPguIHguKPguLDguJfguLPguJXguYjguLLguIfguYYg4Lil4LiH4LmD4LiZIDzguIrguLfguYjguK3guYHguJ/guYnguKE+XG4iCisiICAtLWlnbm9yZS1kZXBlbmRzPTxwYWNrYWdlPiwuLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIOC5hOC4oeC5iOC4leC5ieC4reC4h+C4quC4meC5g+C4iOC4hOC4p+C4suC4oeC4guC4tuC5ieC4meC4leC5iOC4reC4quC4tOC5iOC4h+C4reC4t+C5iOC4meC4guC4reC4hyA8cGFja2FnZT5cbiIKKyIgIC0tZm9yY2UtLi4uICAgICAgICAgICAgICAgIOC4guC5ieC4suC4oeC4m+C4seC4jeC4q+C4siAo4LiU4Li5IC0tZm9yY2UtaGVscCkuXG4iCisiICAtLW5vLWZvcmNlLS4uLnwtLXJlZnVzZS0uLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIOC4q+C4ouC4uOC4lOC5gOC4oeC4t+C5iOC4reC4nuC4muC4m+C4seC4jeC4q+C4slxuIgorIiAgLS1hYm9ydC1hZnRlciA8bj4gICAgICAgICAg4LmA4Lil4Li04LiB4LiX4Liz4Lir4Lil4Lix4LiH4LiI4Liy4LiB4Lie4Lia4Lib4Lix4LiN4Lir4LiyIDxuPiDguKPguLLguKLguIHguLLguKNcbiIKKyJcbiIKKworIzogc3JjL21haW4uYzoxNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbXBhcmlzb24gb3BlcmF0b3JzIGZvciAtLWNvbXBhcmUtdmVyc2lvbnMgYXJlOlxuIgorIiAgbHQgbGUgZXEgbmUgZ2UgZ3QgICAgICAgKHRyZWF0IGVtcHR5IHZlcnNpb24gYXMgZWFybGllciB0aGFuIGFueSAiCisidmVyc2lvbik7XG4iCisiICBsdC1ubCBsZS1ubCBnZS1ubCBndC1ubCAodHJlYXQgZW1wdHkgdmVyc2lvbiBhcyBsYXRlciB0aGFuIGFueSB2ZXJzaW9uKTtcbiIKKyIgIDwgPDwgPD0gPSA+PSA+PiA+ICAgICAgIChvbmx5IGZvciBjb21wYXRpYmlsaXR5IHdpdGggY29udHJvbCBmaWxlICIKKyJzeW50YXgpLlxuIgorIlxuIgorbXNnc3RyICIiCisi4LiV4Lix4Lin4LiB4Lij4Liw4LiX4Liz4LmA4Lib4Lij4Li14Lii4Lia4LmA4LiX4Li14Lii4Lia4Liq4Liz4Lir4Lij4Lix4LiaIC0tY29tcGFyZS12ZXJzaW9ucyDguYTguJTguYnguYHguIHguYhcbiIKKyIgIGx0IGxlIGVxIG5lIGdlIGd0ICAgICAgICjguJbguLfguK3guKfguYjguLLguKPguLjguYjguJnguJfguLXguYjguYTguKHguYjguKHguLXguYDguJvguYfguJnguKPguLjguYjguJnguJfguLXguYjguYDguIHguYjguLLguIHguKfguYjguLLguJfguLjguIHguKPguLjguYjguJkpO1xuIgorIiAgbHQtbmwgbGUtbmwgZ2UtbmwgZ3QtbmwgKOC4luC4t+C4reC4p+C5iOC4suC4o+C4uOC5iOC4meC4l+C4teC5iOC5hOC4oeC5iOC4oeC4teC5gOC4m+C5h+C4meC4o+C4uOC5iOC4meC4l+C4teC5iOC5g+C4q+C4oeC5iOC4geC4p+C5iOC4suC4l+C4uOC4geC4o+C4uOC5iOC4mSk7XG4iCisiICA8IDw8IDw9ID0gPj0gPj4gPiAgICAgICAo4LmA4Lie4Li34LmI4Lit4LmD4Lir4LmJ4LmA4Lir4Lih4Li34Lit4LiZ4LiB4Lix4Lia4Lij4Li54Lib4LmB4Lia4Lia4LiB4Liy4Lij4LmD4LiK4LmJ4LmD4LiZ4LmB4Lif4LmJ4LihIGNvbnRyb2wg4LmA4LiX4LmI4Liy4LiZ4Lix4LmJ4LiZKVxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjE2MQorIywgYy1mb3JtYXQKK21zZ2lkICJVc2UgYGRzZWxlY3QnIG9yIGBhcHRpdHVkZScgZm9yIHVzZXItZnJpZW5kbHkgcGFja2FnZSBtYW5hZ2VtZW50LlxuIgorbXNnc3RyICLguYPguIrguYkgYGRzZWxlY3QnIOC4q+C4o+C4t+C4rSBgYXB0aXR1ZGUnIOC4q+C4suC4geC4leC5ieC4reC4h+C4geC4suC4o+C4geC4suC4o+C4iOC4seC4lOC4geC4suC4o+C5geC4nuC4geC5gOC4geC4iOC5geC4muC4muC4quC4sOC4lOC4p+C4geC4nOC4ueC5ieC5g+C4iuC5iVxuIgorCisjOiBzcmMvbWFpbi5jOjE3MAorbXNnaWQgIiIKKyJUeXBlIGRwa2cgLS1oZWxwIGZvciBoZWxwIGFib3V0IGluc3RhbGxpbmcgYW5kIGRlaW5zdGFsbGluZyBwYWNrYWdlcyBbKl07XG4iCisiVXNlIGBkc2VsZWN0JyBvciBgYXB0aXR1ZGUnIGZvciB1c2VyLWZyaWVuZGx5IHBhY2thZ2UgbWFuYWdlbWVudDtcbiIKKyJUeXBlIGRwa2cgLURoZWxwIGZvciBhIGxpc3Qgb2YgZHBrZyBkZWJ1ZyBmbGFnIHZhbHVlcztcbiIKKyJUeXBlIGRwa2cgLS1mb3JjZS1oZWxwIGZvciBhIGxpc3Qgb2YgZm9yY2luZyBvcHRpb25zO1xuIgorIlR5cGUgZHBrZy1kZWIgLS1oZWxwIGZvciBoZWxwIGFib3V0IG1hbmlwdWxhdGluZyAqLmRlYiBmaWxlcztcbiIKKyJcbiIKKyJPcHRpb25zIG1hcmtlZCBbKl0gcHJvZHVjZSBhIGxvdCBvZiBvdXRwdXQgLSBwaXBlIGl0IHRocm91Z2ggYGxlc3MnIG9yICIKKyJgbW9yZScgISIKK21zZ3N0ciAiIgorIuC4nuC4tOC4oeC4nuC5jCBkcGtnIC0taGVscCDguYDguJ7guLfguYjguK3guJTguLnguKfguLTguJjguLXguIHguLLguKPguJXguLTguJTguJXguLHguYnguIfguYHguKXguLDguJbguK3guJTguJbguK3guJnguYHguJ7guIHguYDguIHguIggWypdXG4iCisi4LmD4LiK4LmJIGBkc2VsZWN0JyDguKvguKPguLfguK0gYGFwdGl0dWRlJyDguKvguLLguIHguJXguYnguK3guIfguIHguLLguKPguIHguLLguKPguIjguLHguJTguIHguLLguKPguYHguJ7guIHguYDguIHguIjguYHguJrguJrguKrguLDguJTguKfguIHguJzguLnguYnguYPguIrguYlcbiIKKyLguJ7guLTguKHguJ7guYwgZHBrZyAtRGhlbHAg4LmA4Lie4Li34LmI4Lit4LiU4Li54Lij4Liy4Lii4LiK4Li34LmI4Lit4LmB4Lif4Lil4LmH4LiB4LiV4LmI4Liy4LiH4LmGIOC4quC4s+C4q+C4o+C4seC4muC4geC4suC4o+C4lOC4teC4muC4seC5iuC4geC4guC4reC4hyBkcGtnXG4iCisi4Lie4Li04Lih4Lie4LmMIGRwa2cgLS1mb3JjZS1oZWxwIOC5gOC4nuC4t+C5iOC4reC4lOC4ueC4leC4seC4p+C5gOC4peC4t+C4reC4geC4geC4suC4oyBmb3JjZSDguJXguYjguLLguIfguYZcbiIKKyLguJ7guLTguKHguJ7guYwgZHBrZy1kZWIgLS1oZWxwIOC5gOC4nuC4t+C5iOC4reC4lOC4ueC4p+C4tOC4mOC4teC4iOC4seC4lOC4geC4suC4o+C5geC4n+C5ieC4oSAqLmRlYlxuIgorIlxuIgorIuC4leC4seC4p+C5gOC4peC4t+C4reC4geC4l+C4teC5iOC4oeC4teC5gOC4hOC4o+C4t+C5iOC4reC4h+C4q+C4oeC4suC4oiBbKl0g4LiI4Liw4LmB4Liq4LiU4LiH4LiC4LmJ4Lit4Lih4Li54Lil4Lih4Liy4LiB4Lih4Liy4LiiIC0g4LiE4Lin4Lij4LmE4Lib4Lib4LmM4LmE4Lib4Lii4Lix4LiH4LiE4Liz4Liq4Lix4LmI4LiHIGBsZXNzJyDguKvguKPguLfguK0gYG1vcmUnIgorCisjOiBzcmMvbWFpbi5jOjIxOQorbXNnaWQgIlNldCBhbGwgZm9yY2Ugb3B0aW9ucyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIyMQorbXNnaWQgIlJlcGxhY2UgYSBwYWNrYWdlIHdpdGggYSBsb3dlciB2ZXJzaW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjIzCittc2dpZCAiQ29uZmlndXJlIGFueSBwYWNrYWdlIHdoaWNoIG1heSBoZWxwIHRoaXMgb25lIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjI1Cittc2dpZCAiUHJvY2VzcyBpbmNpZGVudGFsIHBhY2thZ2VzIGV2ZW4gd2hlbiBvbiBob2xkIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjI3Cittc2dpZCAiVHJ5IHRvIChkZSlpbnN0YWxsIHRoaW5ncyBldmVuIHdoZW4gbm90IHJvb3QiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjkKK21zZ2lkICJQQVRIIGlzIG1pc3NpbmcgaW1wb3J0YW50IHByb2dyYW1zLCBwcm9ibGVtcyBsaWtlbHkiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzEKK21zZ2lkICJJbnN0YWxsIGEgcGFja2FnZSBldmVuIGlmIGl0IGZhaWxzIGF1dGhlbnRpY2l0eSBjaGVjayIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzMworbXNnaWQgIlByb2Nlc3MgZXZlbiBwYWNrYWdlcyB3aXRoIHdyb25nIHZlcnNpb25zIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjM1Cittc2dpZCAiT3ZlcndyaXRlIGEgZmlsZSBmcm9tIG9uZSBwYWNrYWdlIHdpdGggYW5vdGhlciIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzNworbXNnaWQgIk92ZXJ3cml0ZSBhIGRpdmVydGVkIGZpbGUgd2l0aCBhbiB1bmRpdmVydGVkIHZlcnNpb24iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzkKK21zZ2lkICJPdmVyd3JpdGUgb25lIHBhY2thZ2UncyBkaXJlY3Rvcnkgd2l0aCBhbm90aGVyJ3MgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI0MQorbXNnaWQgIkRvIG5vdCBwZXJmb3JtIHNhZmUgSS9PIG9wZXJhdGlvbnMgd2hlbiB1bnBhY2tpbmciCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDMKK21zZ2lkICJBbHdheXMgdXNlIHRoZSBuZXcgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDUKK21zZ2lkICJBbHdheXMgdXNlIHRoZSBvbGQgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDgKK21zZ2lkICIiCisiVXNlIHRoZSBkZWZhdWx0IG9wdGlvbiBmb3IgbmV3IGNvbmZpZyBmaWxlcyBpZiBvbmVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgaXMgYXZhaWxhYmxlLCBkb24ndCBwcm9tcHQuIElmIG5vIGRlZmF1bHQgY2FuIGJlICIKKyJmb3VuZCxcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgeW91IHdpbGwgYmUgcHJvbXB0ZWQgdW5sZXNzIG9uZSBvZiB0aGUgY29uZm9sZCBvclxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICBjb25mbmV3IG9wdGlvbnMgaXMgYWxzbyBnaXZlbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI1MworbXNnaWQgIkFsd2F5cyBpbnN0YWxsIG1pc3NpbmcgY29uZmlnIGZpbGVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjU1Cittc2dpZCAiT2ZmZXIgdG8gcmVwbGFjZSBjb25maWcgZmlsZXMgd2l0aCBubyBuZXcgdmVyc2lvbnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNTcKK21zZ2lkICJQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyBvciBubyBhcmNoaXRlY3R1cmUiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNTkKK21zZ2lkICJJbnN0YWxsIGV2ZW4gaWYgaXQgd291bGQgYnJlYWsgYW5vdGhlciBwYWNrYWdlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjYxCittc2dpZCAiQWxsb3cgaW5zdGFsbGF0aW9uIG9mIGNvbmZsaWN0aW5nIHBhY2thZ2VzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjYzCisjLCBmdXp6eQorI3wgbXNnaWQgImRlcGVuZGVuY3kgcHJvYmxlbXMgLSBub3QgcmVtb3ZpbmciCittc2dpZCAiVHVybiBhbGwgZGVwZW5kZW5jeSBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzIgorbXNnc3RyICLguKHguLXguJvguLHguI3guKvguLLguITguKfguLLguKHguILguLbguYnguJnguJXguYjguK3guIHguLHguJnguILguK3guIfguYHguJ7guIHguYDguIHguIggLSDguIjguLDguYTguKHguYjguJbguK3guJTguJbguK3guJkiCisKKyM6IHNyYy9tYWluLmM6MjY1CisjLCBmdXp6eQorI3wgbXNnaWQgImRlcGVuZGVuY3kgcHJvYmxlbXMgLSBub3QgcmVtb3ZpbmciCittc2dpZCAiVHVybiBkZXBlbmRlbmN5IHZlcnNpb24gcHJvYmxlbXMgaW50byB3YXJuaW5ncyIKK21zZ3N0ciAi4Lih4Li14Lib4Lix4LiN4Lir4Liy4LiE4Lin4Liy4Lih4LiC4Li24LmJ4LiZ4LiV4LmI4Lit4LiB4Lix4LiZ4LiC4Lit4LiH4LmB4Lie4LiB4LmA4LiB4LiIIC0g4LiI4Liw4LmE4Lih4LmI4LiW4Lit4LiU4LiW4Lit4LiZIgorCisjOiBzcmMvbWFpbi5jOjI2NworbXNnaWQgIlJlbW92ZSBwYWNrYWdlcyB3aGljaCByZXF1aXJlIGluc3RhbGxhdGlvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI2OQorbXNnaWQgIlJlbW92ZSBhbiBlc3NlbnRpYWwgcGFja2FnZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4MQorbXNnaWQgIkdlbmVyYWxseSBoZWxwZnVsIHByb2dyZXNzIGluZm9ybWF0aW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjgyCisjLCBmdXp6eQorI3wgbXNnaWQgInVuYWJsZSB0byBzZXRlbnYgZm9yIG1haW50YWluZXIgc2NyaXB0IgorbXNnaWQgIkludm9jYXRpb24gYW5kIHN0YXR1cyBvZiBtYWludGFpbmVyIHNjcmlwdHMiCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4liBzZXRlbnYg4Liq4Liz4Lir4Lij4Lix4Lia4Liq4LiE4Lij4Li04Lib4LiV4LmM4Lic4Li54LmJ4LiU4Li54LmB4Lil4LmB4Lie4LiB4LmA4LiB4LiIIgorCisjOiBzcmMvbWFpbi5jOjI4MworbXNnaWQgIk91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4NAorbXNnaWQgIkxvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg1CisjLCBmdXp6eQorI3wgbXNnaWQgInJlYWQgZXJyb3IgaW4gY29uZmlndXJhdGlvbiBmaWxlIGAlLjI1NXMnIgorbXNnaWQgIk91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGUiCittc2dzdHIgIuC5gOC4geC4tOC4lOC4guC5ieC4reC4nOC4tOC4lOC4nuC4peC4suC4lOC4guC4k+C4sOC4reC5iOC4suC4meC5geC4n+C5ieC4oeC4hOC5iOC4suC4leC4seC5ieC4hyBgJS4yNTVzJyIKKworIzogc3JjL21haW4uYzoyODYKK21zZ2lkICJMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGUiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODcKK21zZ2lkICJEZXBlbmRlbmNpZXMgYW5kIGNvbmZsaWN0cyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4OAorbXNnaWQgIkxvdHMgb2YgZGVwZW5kZW5jaWVzL2NvbmZsaWN0cyBvdXRwdXQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODkKK21zZ2lkICJUcmlnZ2VyIGFjdGl2YXRpb24gYW5kIHByb2Nlc3NpbmciCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyOTAKK21zZ2lkICJMb3RzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyOTEKK21zZ2lkICJTaWxseSBhbW91bnRzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyOTIKK21zZ2lkICJMb3RzIG9mIGRyaXZlbCBhYm91dCBlZyB0aGUgZHBrZy9pbmZvIGRpcmVjdG9yeSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MworbXNnaWQgIkluc2FuZSBhbW91bnRzIG9mIGRyaXZlbCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjMwNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXMgZGVidWdnaW5nIG9wdGlvbiwgLS1kZWJ1Zz08b2N0YWw+IG9yIC1EPG9jdGFsPjpcbiIKKyJcbiIKKyIgTnVtYmVyICBSZWYuIGluIHNvdXJjZSAgIERlc2NyaXB0aW9uXG4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzozMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIkRlYnVnZ2luZyBvcHRpb25zIGNhbiBiZSBtaXhlZCB1c2luZyBiaXR3aXNlLW9yLlxuIgorIk5vdGUgdGhhdCB0aGUgbWVhbmluZ3MgYW5kIHZhbHVlcyBhcmUgc3ViamVjdCB0byBjaGFuZ2UuXG4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzozMTkKK21zZ2lkICItLWRlYnVnIHJlcXVpcmVzIGFuIG9jdGFsIGFyZ3VtZW50IgorbXNnc3RyICItLWRlYnVnIOC4leC5ieC4reC4h+C4oeC4teC4reC4suC4o+C5jOC4geC4tOC4p+C5gOC4oeC4meC4leC5jOC5gOC4m+C5h+C4meC5gOC4peC4guC4kOC4suC4meC5geC4m+C4lCIKKworIzogc3JjL21haW4uYzozNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAibnVsbCBwYWNrYWdlIG5hbWUgaW4gLS1pZ25vcmUtZGVwZW5kcyBjb21tYS1zZXBhcmF0ZWQgbGlzdCBgJS4yNTBzJyIKK21zZ3N0ciAi4LiK4Li34LmI4Lit4LmB4Lie4LiB4LmA4LiB4LiI4Lin4LmI4Liy4LiH4LmA4Lib4Lil4LmI4Liy4LmD4LiZ4Lij4Liy4Lii4LiB4Liy4Lij4LiE4Lix4LmI4LiZ4LiU4LmJ4Lin4Lii4LiI4Li44Lil4Lig4Liy4LiE4LiC4Lit4LiH4LiV4Lix4Lin4LmA4Lil4Li34Lit4LiBIC0taWdub3JlLWRlcGVuZHMgYCUuMjUwcyciCisKKyM6IHNyYy9tYWluLmM6MzU0CisjLCBjLWZvcm1hdAorbXNnaWQgIi0taWdub3JlLWRlcGVuZHMgcmVxdWlyZXMgYSBsZWdhbCBwYWNrYWdlIG5hbWUuIGAlLjI1MHMnIGlzIG5vdDsgJXMiCittc2dzdHIgIi0taWdub3JlLWRlcGVuZHMg4LiV4LmJ4Lit4LiH4LiB4Liy4Lij4LiK4Li34LmI4Lit4LmB4Lie4LiB4LmA4LiB4LiI4LiX4Li14LmI4LiW4Li54LiB4LiV4LmJ4Lit4LiHIOC5geC4leC5iCBgJS4yNTBzJyDguYTguKHguYjguJbguLnguIHguJXguYnguK3guIc7ICVzIgorCisjOiBzcmMvbWFpbi5jOjM3MSBzcmMvbWFpbi5jOjM4MSBzcmMvbWFpbi5jOjY0OSBkcGtnLXNwbGl0L21haW4uYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBpbnRlZ2VyIGZvciAtLSVzOiBgJS4yNTBzJyIKK21zZ3N0ciAi4LiE4LmI4Liy4LiI4Liz4LiZ4Lin4LiZ4LmA4LiV4LmH4Lih4Lic4Li04LiU4Lie4Lil4Liy4LiU4Liq4Liz4Lir4Lij4Lix4LiaIC0tJXM6IGAlLjI1MHMnIgorCisjOiBzcmMvbWFpbi5jOjQzOAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBleGVjdXRpbmcgaG9vayAnJXMnLCBleGl0IGNvZGUgJWQiCittc2dzdHIgIuC5gOC4geC4tOC4lOC4guC5ieC4reC4nOC4tOC4lOC4nuC4peC4suC4lOC4guC4k+C4sOC5gOC4o+C4teC4ouC4geC4l+C4s+C4h+C4suC4mSBob29rICclcycg4LmC4LiU4Lii4LiI4Lia4LiB4Liy4Lij4LiX4Liz4LiH4Liy4LiZ4LiU4LmJ4Lin4Lii4Lij4Lir4Lix4LiqICVkIgorCisjOiBzcmMvbWFpbi5jOjQ2NQorIywgZnV6enkKKyN8IG1zZ2lkICJzdGF0dXMiCittc2dpZCAic3RhdHVzIGxvZ2dlciIKK21zZ3N0ciAi4Liq4LiW4Liy4LiZ4LiwIgorCisjOiBzcmMvbWFpbi5jOjQ4MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXMgZm9yY2luZyBvcHRpb25zIC0gY29udHJvbCBiZWhhdmlvdXIgd2hlbiBwcm9ibGVtcyBmb3VuZDpcbiIKKyIgIHdhcm4gYnV0IGNvbnRpbnVlOiAgLS1mb3JjZS08dGhpbmc+LDx0aGluZz4sLi4uXG4iCisiICBzdG9wIHdpdGggZXJyb3I6ICAgIC0tcmVmdXNlLTx0aGluZz4sPHRoaW5nPiwuLi4gfCAtLW5vLWZvcmNlLTx0aGluZz4sLi4uXG4iCisiIEZvcmNpbmcgdGhpbmdzOlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6NDkwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJXQVJOSU5HIC0gdXNlIG9mIG9wdGlvbnMgbWFya2VkIFshXSBjYW4gc2VyaW91c2x5IGRhbWFnZSB5b3VyIGluc3RhbGxhdGlvbi5cbiIKKyJGb3JjaW5nIG9wdGlvbnMgbWFya2VkIFsqXSBhcmUgZW5hYmxlZCBieSBkZWZhdWx0LlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6NTA0CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gZm9yY2UvcmVmdXNlIG9wdGlvbiBgJS4qcyciCittc2dzdHIgIuC5hOC4oeC5iOC4o+C4ueC5ieC4iOC4seC4geC4leC4seC4p+C5gOC4peC4t+C4reC4gSBmb3JjZS9yZWZ1c2UgYCUuKnMnIgorCisjOiBzcmMvbWFpbi5jOjUxMworIywgYy1mb3JtYXQKK21zZ2lkICJvYnNvbGV0ZSBmb3JjZS9yZWZ1c2Ugb3B0aW9uICclcydcbiIKK21zZ3N0ciAi4LiV4Lix4Lin4LmA4Lil4Li34Lit4LiBIGZvcmNlL3JlZnVzZSAnJXMnIOC5gOC4peC4tOC4geC5g+C4iuC5ieC5geC4peC5ieC4p1xuIgorCisjOiBzcmMvbWFpbi5jOjY0MworbXNnaWQgIi0tY29tbWFuZC1mZCB0YWtlcyBvbmUgYXJndW1lbnQsIG5vdCB6ZXJvIgorbXNnc3RyICItLWNvbW1hbmQtZmQg4Lij4Lix4Lia4Lit4Liy4Lij4LmM4LiB4Li04Lin4LmA4Lih4LiZ4LiV4LmM4Lir4LiZ4Li24LmI4LiH4LiV4Lix4LinIOC5hOC4oeC5iOC5g+C4iuC5iOC5hOC4oeC5iOC4oeC4tSIKKworIzogc3JjL21haW4uYzo2NDUKK21zZ2lkICItLWNvbW1hbmQtZmQgb25seSB0YWtlcyBvbmUgYXJndW1lbnQiCittc2dzdHIgIi0tY29tbWFuZC1mZCDguKPguLHguJrguK3guLLguKPguYzguIHguLTguKfguYDguKHguJnguJXguYzguYDguJ7guLXguKLguIfguKvguJnguLbguYjguIfguJXguLHguKciCisKKyM6IHNyYy9tYWluLmM6NjUxCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkbid0IG9wZW4gYCVpJyBmb3Igc3RyZWFtIgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguYDguJvguLTguJQgYCVpJyDguKrguLPguKvguKPguLHguJrguKrguJXguKPguLXguKEiCisKKyM6IHNyYy9tYWluLmM6Njc2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW9mIGJlZm9yZSBlbmQgb2YgbGluZSAlZCIKK21zZ3N0ciAi4LmB4Lif4LmJ4Lih4LiI4Lia4LiB4LmI4Lit4LiZ4LiX4Li14LmI4LiI4Liw4LiI4Lia4Lia4Lij4Lij4LiX4Lix4LiU4LiX4Li14LmI4Lia4Lij4Lij4LiX4Lix4LiUICVkIgorCisjOiBzcmMvbWFpbi5jOjcxOSBzcmMvbWFpbi5jOjc0MSBzcmMvcXVlcnljbWQuYzo2OTIgc3JjL3N0YXRjbWQuYzozNzkKKyM6IGRwa2ctZGViL21haW4uYzoyMDEgZHBrZy1zcGxpdC9tYWluLmM6MTYzCittc2dpZCAibmVlZCBhbiBhY3Rpb24gb3B0aW9uIgorbXNnc3RyICLguJXguYnguK3guIfguKHguLXguJXguLHguKfguYDguKXguLfguK3guIHguKPguLDguJrguLjguIHguLLguKPguIHguKPguLDguJfguLPguJTguYnguKfguKIiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjExMworbXNnaWQgIiIKKyJ5b3UgbXVzdCBzcGVjaWZ5IHBhY2thZ2VzIGJ5IHRoZWlyIG93biBuYW1lcywgbm90IGJ5IHF1b3RpbmcgdGhlIG5hbWVzIG9mICIKKyJ0aGUgZmlsZXMgdGhleSBjb21lIGluIgorbXNnc3RyICLguITguLjguJPguJXguYnguK3guIfguKPguLDguJrguLjguYHguJ7guIHguYDguIHguIjguJTguYnguKfguKLguIrguLfguYjguK3guYHguJ7guIHguYDguIHguIgg4LmE4Lih4LmI4LmD4LiK4LmI4LmC4LiU4Lii4LiE4Lix4LiU4Lil4Lit4LiB4LiK4Li34LmI4Lit4LiC4Lit4LiH4LmB4Lif4LmJ4Lih4LmB4Lie4LiB4LmA4LiB4LiI4Lih4LiyIgorCisjOiBzcmMvcGFja2FnZXMuYzoxMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyAtLXBlbmRpbmcgZG9lcyBub3QgdGFrZSBhbnkgbm9uLW9wdGlvbiBhcmd1bWVudHMiCittc2dzdHIgIi0tJXMgLS1wZW5kaW5nIOC5hOC4oeC5iOC4o+C4seC4muC4reC4suC4o+C5jOC4geC4tOC4p+C5gOC4oeC4meC4leC5jOC4l+C4teC5iOC5hOC4oeC5iOC5g+C4iuC5iOC4leC4seC4p+C5gOC4peC4t+C4reC4gSIKKworIzogc3JjL3BhY2thZ2VzLmM6MTM4IHNyYy9xdWVyeWNtZC5jOjM3NSBzcmMvcXVlcnljbWQuYzo1NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhdCBsZWFzdCBvbmUgcGFja2FnZSBuYW1lIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIOC4leC5ieC4reC4h+C4geC4suC4o+C4reC4suC4o+C5jOC4geC4tOC4p+C5gOC4oeC4meC4leC5jOC4l+C4teC5iOC5gOC4m+C5h+C4meC4iuC4t+C5iOC4reC5geC4nuC4geC5gOC4geC4iOC4reC4ouC5iOC4suC4h+C4meC5ieC4reC4ouC4q+C4meC4tuC5iOC4h+C4leC4seC4pyIKKworIzogc3JjL3BhY2thZ2VzLmM6MTc5CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgJXMgbGlzdGVkIG1vcmUgdGhhbiBvbmNlLCBvbmx5IHByb2Nlc3Npbmcgb25jZS5cbiIKK21zZ3N0ciAi4LmB4Lie4LiB4LmA4LiB4LiIICVzIOC4luC4ueC4geC4o+C4sOC4muC4uOC4oeC4suC4geC4geC4p+C5iOC4suC4q+C4meC4tuC5iOC4h+C4hOC4o+C4seC5ieC4hyDguIjguLDguJTguLPguYDguJnguLTguJnguIHguLLguKPguYDguJ7guLXguKLguIfguITguKPguLHguYnguIfguYDguJTguLXguKLguKfguYDguJfguYjguLLguJnguLHguYnguJlcbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MTgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJNb3JlIHRoYW4gb25lIGNvcHkgb2YgcGFja2FnZSAlcyBoYXMgYmVlbiB1bnBhY2tlZFxuIgorIiBpbiB0aGlzIHJ1biAhICBPbmx5IGNvbmZpZ3VyaW5nIGl0IG9uY2UuXG4iCittc2dzdHIgIiIKKyLguKHguLXguYHguJ7guIHguYDguIHguIggJXMg4LiW4Li54LiB4LmB4LiV4LiB4Lih4Liy4LiB4LiB4Lin4LmI4Liy4Lir4LiZ4Li24LmI4LiH4LiK4Li44LiU4LmD4LiZ4LiB4Liy4Lij4LiX4Liz4LiH4Liy4LiZ4LiE4Lij4Lix4LmJ4LiH4LiZ4Li14LmJICFcbiIKKyIg4LiI4Liw4LiV4Lix4LmJ4LiH4LiE4LmI4Liy4LmB4Lie4LiB4LmA4LiB4LiI4LiZ4Li14LmJ4LmA4Lie4Li14Lii4LiH4LiE4Lij4Lix4LmJ4LiH4LmA4LiU4Li14Lii4Lin4LmA4LiX4LmI4Liy4LiZ4Lix4LmJ4LiZXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjIzMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisicGFja2FnZSAlLjI1MHMgaXMgbm90IHJlYWR5IGZvciB0cmlnZ2VyIHByb2Nlc3NpbmdcbiIKKyIgKGN1cnJlbnQgc3RhdHVzIGAlLjI1MHMnIHdpdGggbm8gcGVuZGluZyB0cmlnZ2VycykiCittc2dzdHIgIiIKKyLguYHguJ7guIHguYDguIHguIggJS4yNTBzIOC5hOC4oeC5iOC4nuC4o+C5ieC4reC4oeC4quC4s+C4q+C4o+C4seC4muC4geC4suC4o+C4m+C4o+C4sOC4oeC4p+C4peC4nOC4peC4geC4suC4o+C4quC4sOC4geC4tOC4lFxuIgorIiAo4Liq4LiW4Liy4LiZ4Liw4Lib4Lix4LiI4LiI4Li44Lia4Lix4LiZIGAlLjI1MHMnIOC5geC4peC4sOC5hOC4oeC5iOC4oeC4teC4geC4suC4o+C4quC4sOC4geC4tOC4lOC4l+C4teC5iOC4hOC4seC5iOC4h+C4hOC5ieC4suC4h+C4reC4ouC4ueC5iCkiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjMzNAorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgd2hpY2ggcHJvdmlkZXMgJXMgaXMgdG8gYmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiICDguYHguJ7guIHguYDguIHguIggJXMg4LiL4Li24LmI4LiH4LiI4Lix4LiU4LmA4LiV4Lij4Li14Lii4LihICVzIOC4iOC4sOC4luC4ueC4geC4luC4reC4lOC4luC4reC4mVxuIgorCisjOiBzcmMvcGFja2FnZXMuYzozMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIGlzIHRvIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiAg4LmB4Lie4LiB4LmA4LiB4LiIICVzIOC4iOC4sOC4luC4ueC4geC4luC4reC4lOC4luC4reC4mVxuIgorCisjOiBzcmMvcGFja2FnZXMuYzozNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBWZXJzaW9uIG9mICVzIG9uIHN5c3RlbSBpcyAlcy5cbiIKK21zZ3N0ciAiICDguKPguLjguYjguJnguILguK3guIcgJXMg4LmD4LiZ4Lij4Liw4Lia4Lia4LiE4Li34LitICVzXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjM3NgorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgd2hpY2ggcHJvdmlkZXMgJXMgYXdhaXRzIHRyaWdnZXIgcHJvY2Vzc2luZy5cbiIKK21zZ3N0ciAiICDguYHguJ7guIHguYDguIHguIggJXMg4LiL4Li24LmI4LiH4LiI4Lix4LiU4LmA4LiV4Lij4Li14Lii4LihICVzIOC4ouC4seC4h+C4o+C4reC4hOC4reC4ouC4geC4suC4o+C4m+C4o+C4sOC4oeC4p+C4peC4nOC4peC4geC4suC4o+C4quC4sOC4geC4tOC4lFxuIgorCisjOiBzcmMvcGFja2FnZXMuYzozODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIGF3YWl0cyB0cmlnZ2VyIHByb2Nlc3NpbmcuXG4iCittc2dzdHIgIiAg4LmB4Lie4LiB4LmA4LiB4LiIICVzIOC4ouC4seC4h+C4o+C4reC4hOC4reC4ouC4geC4suC4o+C4m+C4o+C4sOC4oeC4p+C4peC4nOC4peC4geC4suC4o+C4quC4sOC4geC4tOC4lFxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogYWxzbyBjb25maWd1cmluZyBgJXMnIChyZXF1aXJlZCBieSBgJXMnKVxuIgorbXNnc3RyICJkcGtnOiDguIjguLDguJXguLHguYnguIfguITguYjguLIgYCVzJyDguJTguYnguKfguKIgKOC4leC5ieC4reC4h+C4geC4suC4o+C5guC4lOC4oiBgJXMnKVxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIHdoaWNoIHByb3ZpZGVzICVzIGlzIG5vdCBjb25maWd1cmVkIHlldC5cbiIKK21zZ3N0ciAiICDguYHguJ7guIHguYDguIHguIggJXMg4LiL4Li24LmI4LiH4LiI4Lix4LiU4LmA4LiV4Lij4Li14Lii4LihICVzIOC4ouC4seC4h+C5hOC4oeC5iOC4luC4ueC4geC4leC4seC5ieC4h+C4hOC5iOC4slxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIGlzIG5vdCBjb25maWd1cmVkIHlldC5cbiIKK21zZ3N0ciAiICDguYHguJ7guIHguYDguIHguIggJXMg4Lii4Lix4LiH4LmE4Lih4LmI4LiW4Li54LiB4LiV4Lix4LmJ4LiH4LiE4LmI4LiyXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQzMgorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgd2hpY2ggcHJvdmlkZXMgJXMgaXMgbm90IGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiICDguYHguJ7guIHguYDguIHguIggJXMg4LiL4Li24LmI4LiH4LiI4Lix4LiU4LmA4LiV4Lij4Li14Lii4LihICVzIOC5hOC4oeC5iOC5hOC4lOC5ieC4luC4ueC4geC4leC4tOC4lOC4leC4seC5ieC4h1xuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIGlzIG5vdCBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAg4LmB4Lie4LiB4LmA4LiB4LiIICVzIOC5hOC4oeC5iOC5hOC4lOC5ieC4luC4ueC4geC4leC4tOC4lOC4leC4seC5ieC4h1xuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICVzICglcykgYnJlYWtzICVzIGFuZCBpcyAlcy5cbiIKK21zZ3N0ciAiICVzICglcykg4LiX4Liz4LmD4Lir4LmJICVzIOC4nuC4seC4hyDguYHguKXguLAlc1xuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlcyAoJXMpIHByb3ZpZGVzICVzLlxuIgorbXNnc3RyICIgICVzICglcykg4LiI4Lix4LiU4LmA4LiV4Lij4Li14Lii4LihICVzXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQ4MgorIywgYy1mb3JtYXQKK21zZ2lkICIgIFZlcnNpb24gb2YgJXMgdG8gYmUgY29uZmlndXJlZCBpcyAlcy5cbiIKK21zZ3N0ciAiICDguKPguLjguYjguJnguILguK3guIcgJXMg4LiX4Li14LmI4LiI4Liw4LiW4Li54LiB4LiV4Lix4LmJ4LiH4LiE4LmI4Liy4LiE4Li34LitICVzXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjU5NgorbXNnaWQgIiBkZXBlbmRzIG9uICIKK21zZ3N0ciAiIOC4leC5ieC4reC4h+C5g+C4iuC5iSAiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjYwMgorbXNnaWQgIjsgaG93ZXZlcjpcbiIKK21zZ3N0ciAiOyDguYHguJXguYjguKfguYjguLI6XG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiLi4uLyVzIgorbXNnc3RyICIuLi4vJXMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgZW5zdXJpbmcgYCUuMjUwcycgZG9lc24ndCBleGlzdCIKK21zZ3N0ciAi4LmA4LiB4Li04LiU4LiC4LmJ4Lit4Lic4Li04LiU4Lie4Lil4Liy4LiU4LiC4LiT4Liw4Lie4Lii4Liy4Lii4Liy4Lih4LiX4Liz4LmD4Lir4LmJ4LmB4LiZ4LmI4LmD4LiI4Lin4LmI4LiyIGAlLjI1MHMnIOC5hOC4oeC5iOC4oeC4teC4reC4ouC4ueC5iCIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5OQorbXNnaWQgInNwbGl0IHBhY2thZ2UgcmVhc3NlbWJseSIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEwOAorbXNnaWQgInJlYXNzZW1ibGVkIHBhY2thZ2UgZmlsZSIKK21zZ3N0ciAi4LmB4Lif4LmJ4Lih4LmB4Lie4LiB4LmA4LiB4LiI4LiX4Li14LmI4Lib4Lij4Liw4LiB4Lit4Lia4Lij4Lin4Lih4LmB4Lil4LmJ4LinIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEzMworIywgYy1mb3JtYXQKK21zZ2lkICJBdXRoZW50aWNhdGluZyAlcyAuLi5cbiIKK21zZ3N0ciAi4LiB4Liz4Lil4Lix4LiH4Lii4Li34LiZ4Lii4Lix4LiZ4LmB4Lir4Lil4LmI4LiH4LiV4LmJ4LiZ4LiV4Lit4LiC4Lit4LiHICVzIC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEzOQorbXNnaWQgInBhY2thZ2Ugc2lnbmF0dXJlIHZlcmlmaWNhdGlvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE0NgorIywgYy1mb3JtYXQKK21zZ2lkICJWZXJpZmljYXRpb24gb24gcGFja2FnZSAlcyBmYWlsZWQhIgorbXNnc3RyICLguIHguLLguKPguJXguKPguKfguIjguKrguK3guJrguYHguJ7guIHguYDguIHguIggJXMg4Lil4LmJ4Lih4LmA4Lir4Lil4LinISIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlZlcmlmaWNhdGlvbiBvbiBwYWNrYWdlICVzIGZhaWxlZCxcbiIKKyJidXQgaW5zdGFsbGluZyBhbnl3YXkgYXMgeW91IHJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiIgorIuC4geC4suC4o+C4leC4o+C4p+C4iOC4quC4reC4muC5geC4nuC4geC5gOC4geC4iCAlcyDguKXguYnguKHguYDguKvguKXguKdcbiIKKyLguYHguJXguYjguIjguLDguJXguLTguJTguJXguLHguYnguIfguJXguLLguKHguJfguLXguYjguITguLjguJPguKrguLHguYjguIdcbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFzc2VkXG4iCittc2dzdHIgIuC4nOC5iOC4suC4mVxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE2NSBkcGtnLWRlYi9pbmZvLmM6ODEKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHRlbXBvcmFyeSBkaXJlY3RvcnkiCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC4quC4o+C5ieC4suC4h+C5hOC4lOC5gOC4o+C4geC4l+C4reC4o+C4teC4iuC4seC5iOC4p+C4hOC4o+C4suC4pyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlcyBoYXMgdG9vIG1hbnkgQ29uZmxpY3RzL1JlcGxhY2VzIHBhaXJzIgorbXNnc3RyICLguYHguJ7guIHguYDguIHguIggJXMg4Lih4Li14LiE4Li54LmI4LmB4Lie4LiB4LmA4LiB4LiI4LiC4Lix4LiU4LmB4Lii4LmJ4LiHL+C5geC4l+C4meC4l+C4teC5iOC4oeC4suC4geC5gOC4geC4tOC4meC5hOC4myIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyNDMKKyMsIGMtZm9ybWF0Cittc2dpZCAib2xkIHZlcnNpb24gb2YgcGFja2FnZSBoYXMgb3Zlcmx5LWxvbmcgaW5mbyBmaWxlIG5hbWUgc3RhcnRpbmcgYCUuMjUwcyciCittc2dzdHIgIuC5geC4nuC4geC5gOC4geC4iOC4o+C4uOC5iOC4meC5gOC4geC5iOC4suC4oeC4teC5geC4n+C5ieC4oSBpbmZvIOC4iuC4t+C5iOC4reC4ouC4suC4p+C5gOC4geC4tOC4meC5hOC4myDguIvguLbguYjguIfguILguLbguYnguJnguJXguYnguJnguJTguYnguKfguKIgYCUuMjUwcyciCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MjgxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgb2Jzb2xldGUgaW5mbyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguKXguJrguYHguJ/guYnguKEgaW5mbyBgJS4yNTBzJyDguJfguLXguYjguYDguKXguLTguIHguYPguIrguYnguYHguKXguYnguKciCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6Mjg2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIChzdXBwb3NlZCkgbmV3IGluZm8gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4LiV4Li04LiU4LiV4Lix4LmJ4LiH4LmB4Lif4LmJ4LihIGluZm8gYCUuMjUwcycgKOC4l+C4teC5iOC4meC5iOC4suC4iOC4sOC5gOC4m+C5h+C4mSkg4LiJ4Lia4Lix4Lia4LmD4Lir4Lih4LmIIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjI5NgorbXNnaWQgInVuYWJsZSB0byBvcGVuIHRlbXAgY29udHJvbCBkaXJlY3RvcnkiCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC5gOC4m+C4tOC4lOC5hOC4lOC5gOC4o+C4geC4l+C4reC4o+C4teC4hOC4p+C4muC4hOC4uOC4oeC4iuC4seC5iOC4p+C4hOC4o+C4suC4pyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMDcKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBjb250YWlucyBvdmVybHktbG9uZyBjb250cm9sIGluZm8gZmlsZSBuYW1lIChzdGFydGluZyBgJS41MHMnKSIKK21zZ3N0ciAi4LmB4Lie4LiB4LmA4LiB4LiI4Lih4Li14LmB4Lif4LmJ4Lih4LiC4LmJ4Lit4Lih4Li54Lil4LiE4Lin4Lia4LiE4Li44Lih4LiK4Li34LmI4Lit4Lii4Liy4Lin4LmA4LiB4Li04LiZ4LmE4LibICjguILguLbguYnguJnguJXguYnguJnguJTguYnguKfguKIgYCUuMjUwcycpIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMxNAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGNvbnRyb2wgaW5mbyBjb250YWluZWQgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICLguILguYnguK3guKHguLnguKXguITguKfguJrguITguLjguKHguILguK3guIfguYHguJ7guIHguYDguIHguIjguKHguLXguYTguJTguYDguKPguIHguJfguK3guKPguLUgYCUuMjUwcyciCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzE2CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgY29udHJvbCBpbmZvIHJtZGlyIG9mIGAlLjI1MHMnIGRpZG4ndCBzYXkgbm90IGEgZGlyIgorbXNnc3RyICLguIHguLLguKPguKrguLHguYjguIcgcm1kaXIg4LiB4Lix4LiaIGAlLjI1MHMnIOC5g+C4meC4guC5ieC4reC4oeC4ueC4peC4hOC4p+C4muC4hOC4uOC4oeC4guC4reC4h+C5geC4nuC4geC5gOC4geC4iCDguYTguKHguYjguYTguJTguYnguJXguK3guJrguKfguYjguLLguYTguKHguYjguYPguIrguYjguYTguJTguYDguKPguIHguJfguK3guKPguLUiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzI2CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgJXMgY29udGFpbmVkIGxpc3QgYXMgaW5mbyBmaWxlIgorbXNnc3RyICLguYHguJ7guIHguYDguIHguIggJXMg4Lih4Li14LmB4Lif4LmJ4LihIGxpc3Qg4LmA4Lib4LmH4LiZ4LiC4LmJ4Lit4Lih4Li54Lil4LiE4Lin4Lia4LiE4Li44LihIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMzMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgaW5mbyBmaWxlIGAlLjI1MHMnIGFzIGAlLjI1MHMnIgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguJXguLTguJTguJXguLHguYnguIfguYHguJ/guYnguKHguITguKfguJrguITguLjguKHguYPguKvguKHguYggYCUuMjUwcycg4LmA4Lib4LmH4LiZIGAlLjI1MHMnIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjM0OSBzcmMvcmVtb3ZlLmM6MTk4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkZWxldGUgY29udHJvbCBpbmZvIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC4peC4muC5geC4n+C5ieC4oeC4hOC4p+C4muC4hOC4uOC4oSBgJS4yNTBzJyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo0MTEKK21zZ2lkICJjYW5ub3QgYWNjZXNzIGFyY2hpdmUiCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC5gOC4guC5ieC4suC5g+C4iuC5ieC5geC4n+C5ieC4oeC5geC4nuC4geC5gOC4geC4iCIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo0MzMKKyMsIGZ1enp5CisjfCBtc2dpZCAiY29udHJvbCBpbmZvcm1hdGlvbiBsZW5ndGgiCittc2dpZCAicGFja2FnZSBjb250cm9sIGluZm9ybWF0aW9uIGV4dHJhY3Rpb24iCittc2dzdHIgIuC4hOC4p+C4suC4oeC4ouC4suC4p+C4guC5ieC4reC4oeC4ueC4peC4hOC4p+C4muC4hOC4uOC4oSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo0NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVjb3JkZWQgaW5mbyBhYm91dCAlcyBmcm9tICVzLlxuIgorbXNnc3RyICLguJrguLHguJnguJfguLbguIHguILguYnguK3guKHguLnguKXguYDguIHguLXguYjguKLguKfguIHguLHguJogJXMg4LiI4Liy4LiBICVzXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDY4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgYXJjaGl0ZWN0dXJlICglcykgZG9lcyBub3QgbWF0Y2ggc3lzdGVtICglcykiCittc2dzdHIgIuC4quC4luC4suC4m+C4seC4leC4ouC4geC4o+C4o+C4oeC4guC4reC4h+C5geC4nuC4geC5gOC4geC4iCAoJXMpIOC5hOC4oeC5iOC4leC4o+C4h+C4geC4seC4muC4guC4reC4h+C4o+C4sOC4muC4miAoJXMpIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjUyMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogcmVnYXJkaW5nICVzIGNvbnRhaW5pbmcgJXMsIHByZS1kZXBlbmRlbmN5IHByb2JsZW06XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiDguYDguIHguLXguYjguKLguKfguIHguLHguJogJXMg4LiX4Li14LmI4Lia4Lij4Lij4LiI4Li4ICVzOiDguKHguLXguJvguLHguI3guKvguLLguILguK3guIfguKrguLTguYjguIfguJfguLXguYjguJXguYnguK3guIfguYPguIrguYnguILguJPguLDguJXguLTguJTguJXguLHguYnguIc6XG4iCisiJXMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTI2CisjLCBjLWZvcm1hdAorbXNnaWQgInByZS1kZXBlbmRlbmN5IHByb2JsZW0gLSBub3QgaW5zdGFsbGluZyAlLjI1MHMiCittc2dzdHIgIuC4oeC4teC4m+C4seC4jeC4q+C4suC4guC4reC4h+C4quC4tOC5iOC4h+C4l+C4teC5iOC4leC5ieC4reC4h+C5g+C4iuC5ieC4guC4k+C4sOC4leC4tOC4lOC4leC4seC5ieC4hyAtIOC4iOC4sOC5hOC4oeC5iOC4leC4tOC4lOC4leC4seC5ieC4hyAlLjI1MHMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTI3Cittc2dpZCAiaWdub3JpbmcgcHJlLWRlcGVuZGVuY3kgcHJvYmxlbSEiCittc2dzdHIgIuC4iOC4sOC4peC4sOC5gOC4peC4ouC4m+C4seC4jeC4q+C4suC4guC4reC4h+C4quC4tOC5iOC4h+C4l+C4teC5iOC4leC5ieC4reC4h+C5g+C4iuC5ieC4guC4k+C4sOC4leC4tOC4lOC4leC4seC5ieC4hyEiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTQzCisjLCBjLWZvcm1hdAorbXNnaWQgIlByZXBhcmluZyB0byByZXBsYWNlICVzICVzICh1c2luZyAlcykgLi4uXG4iCittc2dzdHIgIuC4geC4s+C4peC4seC4h+C5gOC4leC4o+C4teC4ouC4oeC5geC4l+C4meC4l+C4teC5iCAlcyAlcyAo4LiU4LmJ4Lin4LiiICVzKSAuLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiVW5wYWNraW5nICVzIChmcm9tICVzKSAuLi5cbiIKK21zZ3N0ciAi4LiB4Liz4Lil4Lix4LiH4LmB4LiV4LiBICVzICjguIjguLLguIEgJXMpIC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjU4MAorIywgYy1mb3JtYXQKK21zZ2lkICJuYW1lIG9mIGNvbmZmaWxlIChzdGFydGluZyBgJS4yNTBzJykgaXMgdG9vIGxvbmcgKD4lZCBjaGFyYWN0ZXJzKSIKK21zZ3N0ciAi4LiK4Li34LmI4Lit4LiC4Lit4LiH4LmB4Lif4LmJ4Lih4LiE4LmI4Liy4LiV4Lix4LmJ4LiHICjguILguLbguYnguJnguJXguYnguJnguJTguYnguKfguKIgYCUuMjUwcycpIOC4ouC4suC4p+C5gOC4geC4tOC4meC5hOC4myAoPiVkIOC4leC4seC4p+C4reC4seC4geC4qeC4oykiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjMzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDcxCisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWQgZXJyb3IgaW4gJS4yNTBzIgorbXNnc3RyICLguYDguIHguLTguJTguILguYnguK3guJzguLTguJTguJ7guKXguLLguJTguILguJPguLDguK3guYjguLLguJkgJS4yNTBzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjYzNQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nICUuMjUwcyIKK21zZ3N0ciAi4LmA4LiB4Li04LiU4LiC4LmJ4Lit4Lic4Li04LiU4Lie4Lil4Liy4LiU4LiC4LiT4Liw4Lib4Li04LiUICUuMjUwcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2MzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgdHJ5aW5nIHRvIG9wZW4gJS4yNTBzIgorbXNnc3RyICLguYDguIHguLTguJTguILguYnguK3guJzguLTguJTguJ7guKXguLLguJTguILguJPguLDguJ7guKLguLLguKLguLLguKHguYDguJvguLTguJQgJS4yNTBzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjY3OAorIywgYy1mb3JtYXQKK21zZ2lkICJEZS1jb25maWd1cmluZyAlcywgdG8gYWxsb3cgcmVtb3ZhbCBvZiAlcyAuLi5cbiIKK21zZ3N0ciAi4LiB4Liz4Lil4Lix4LiH4LiW4Lit4LiZ4LiE4Li34LiZ4LiE4LmI4Liy4LiV4Lix4LmJ4LiH4LiC4Lit4LiHICVzIOC5gOC4nuC4t+C5iOC4reC5g+C4q+C5ieC4quC4suC4oeC4suC4o+C4luC4luC4reC4lOC4luC4reC4mSAlcyDguYTguJTguYkgLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjgxCisjLCBjLWZvcm1hdAorbXNnaWQgIkRlLWNvbmZpZ3VyaW5nICVzIC4uLlxuIgorbXNnc3RyICLguIHguLPguKXguLHguIfguJbguK3guJnguITguLfguJnguITguYjguLLguJXguLHguYnguIfguILguK3guIcgJXMgLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NzU1CisjLCBjLWZvcm1hdAorbXNnaWQgIlVucGFja2luZyByZXBsYWNlbWVudCAlLjI1MHMgLi4uXG4iCittc2dzdHIgIuC4geC4s+C4peC4seC4h+C5geC4leC4geC5geC4nuC4geC5gOC4geC4iOC5geC4l+C4meC4l+C4teC5iCAlLjI1MHMgLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6ODQwCisjLCBmdXp6eQorI3wgbXNnaWQgImRwa2ctZGViIGZpZWxkIGV4dHJhY3Rpb24iCittc2dpZCAicGFja2FnZSBmaWxlc3lzdGVtIGFyY2hpdmUgZXh0cmFjdGlvbiIKK21zZ3N0ciAi4LiB4Liy4Lij4LmB4Lii4LiB4LmA4Lit4Liy4LiE4LmI4Liy4LmA4LiC4LiV4LiC4LmJ4Lit4Lih4Li54Lil4LiU4LmJ4Lin4LiiIGRwa2ctZGViIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjg1NAorbXNnaWQgImVycm9yIHJlYWRpbmcgZHBrZy1kZWIgdGFyIG91dHB1dCIKK21zZ3N0ciAi4LmA4LiB4Li04LiU4LiC4LmJ4Lit4Lic4Li04LiU4Lie4Lil4Liy4LiU4LiC4LiT4Liw4Lit4LmI4Liy4LiZ4Lic4Lil4Lil4Lix4Lie4LiY4LmM4LiC4Lit4LiHIHRhciDguIjguLLguIEgZHBrZy1kZWIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6ODU2Cittc2dpZCAiY29ycnVwdGVkIGZpbGVzeXN0ZW0gdGFyZmlsZSAtIGNvcnJ1cHRlZCBwYWNrYWdlIGFyY2hpdmUiCittc2dzdHIgIuC5geC4n+C5ieC4oSB0YXIg4Liq4Liz4Lir4Lij4Lix4Lia4LmB4Lif4LmJ4Lih4LiX4Li14LmI4LiI4Liw4LiV4Li04LiU4LiV4Lix4LmJ4LiH4LmD4LiZ4Lij4Liw4Lia4Lia4LmB4Lif4LmJ4Lih4LmA4Liq4Li14Lii4Lir4Liy4LiiIC0g4LmB4Lif4LmJ4Lih4LmB4Lie4LiB4LmA4LiB4LiI4LmA4Liq4Li14Lii4Lir4Liy4LiiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjg1OQorbXNnaWQgImRwa2ctZGViOiB6YXAgcG9zc2libGUgdHJhaWxpbmcgemVyb3MiCittc2dzdHIgImRwa2ctZGViOiDguJXguLHguJTguYTguJrguJXguYzguKjguLnguJnguKLguYzguJfguLHguYnguIfguKvguKXguLLguKLguILguYnguLLguIfguJfguYnguLLguKLguJfguLXguYjguK3guLLguIjguIjguLDguKHguLUiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTE5CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBzdGF0IG9sZCBmaWxlICclLjI1MHMnIHNvIG5vdCBkZWxldGluZyBpdDogJXMiCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4liBzdGF0IOC5geC4n+C5ieC4oeC5gOC4geC5iOC4siAnJS4yNTBzJyDguIjguLbguIfguIjguLDguYTguKHguYjguKHguLXguIHguLLguKPguKXguJrguYHguJ/guYnguKHguJTguLHguIfguIHguKXguYjguLLguKc6ICVzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjkyNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGVsZXRlIG9sZCBkaXJlY3RvcnkgJyUuMjUwcyc6ICVzIgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguKXguJrguYTguJTguYDguKPguIHguJfguK3guKPguLXguYDguIHguYjguLIgJyUuMjUwcyc6ICVzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjkyOAorIywgYy1mb3JtYXQKK21zZ2lkICJvbGQgY29uZmZpbGUgJyUuMjUwcycgd2FzIGFuIGVtcHR5IGRpcmVjdG9yeSAoYW5kIGhhcyBub3cgYmVlbiBkZWxldGVkKSIKK21zZ3N0ciAi4LmB4Lif4LmJ4Lih4LiE4LmI4Liy4LiV4Lix4LmJ4LiH4LmA4LiU4Li04LihICclLjI1MHMnIOC5gOC4m+C5h+C4meC5hOC4lOC5gOC4o+C4geC4l+C4reC4o+C4teC4p+C5iOC4suC4h+C5gOC4m+C4peC5iOC4siAo4LmB4Lil4Liw4LiV4Lit4LiZ4LiZ4Li14LmJ4LiW4Li54LiB4Lil4Lia4LmE4Lib4LmB4Lil4LmJ4LinKSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgb3RoZXIgbmV3IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4liBzdGF0IOC5geC4n+C5ieC4oeC5g+C4q+C4oeC5iCBgJS4yNTBzJyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm9sZCBmaWxlICclLjI1MHMnIGlzIHRoZSBzYW1lIGFzIHNldmVyYWwgbmV3IGZpbGVzISAoYm90aCAnJS4yNTBzJyBhbmQgIgorIiclLjI1MHMnKSIKK21zZ3N0ciAi4LmB4Lif4LmJ4Lih4LmA4LiB4LmI4LiyICclLjI1MHMnIOC5gOC4m+C5h+C4meC5geC4n+C5ieC4oeC5gOC4lOC4teC4ouC4p+C4geC4seC4muC5geC4n+C5ieC4oeC5g+C4q+C4oeC5iOC4q+C4peC4suC4ouC5geC4n+C5ieC4oSEgKOC4l+C4seC5ieC4hyAnJS4yNTBzJyDguYHguKXguLAgJyUuMjUwcycpIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEwMjUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNlY3VyZWx5IHJlbW92ZSBvbGQgZmlsZSAnJS4yNTBzJzogJXMiCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC4peC4muC5geC4n+C5ieC4oeC5gOC4geC5iOC4siAnJS4yNTBzJyDguK3guKLguYjguLLguIfguJvguKXguK3guJTguKDguLHguKLguYTguJTguYk6ICVzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEyMDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiKE5vdGluZyBkaXNhcHBlYXJhbmNlIG9mICVzLCB3aGljaCBoYXMgYmVlbiBjb21wbGV0ZWx5IHJlcGxhY2VkLilcbiIKK21zZ3N0ciAiKOC4quC4seC4h+C5gOC4geC4leC4geC4suC4o+C4q+C4suC4ouC5hOC4m+C4guC4reC4hyAlcyDguIvguLbguYjguIfguJbguLnguIHguYHguJfguJnguJfguLXguYjguK3guKLguYjguLLguIfguKrguKHguJrguLnguKPguJPguYwpXG4iCisKKyMuIFRSQU5TTEFUT1JTOiBUaGlzIGlzIHRoZSBoZWFkZXIgdGhhdCBhcHBlYXJzIG9uICdkcGtnLXF1ZXJ5IC1sJy4gVGhlCisjLiAqIHN0cmluZyBzaG91bGQgcmVtYWluIHVuZGVyIDgwIGNoYXJhY3RlcnMuIFRoZSB1cHBlcmNhc2UgbGV0dGVycyBpbgorIy4gKiB0aGUgc3RhdGUgdmFsdWVzIGRlbm90ZSB0aGUgYWJicmV2aWF0ZWQgbGV0dGVyIHRoYXQgd2lsbCBhcHBlYXIgb24KKyMuICogdGhlIGZpcnN0IHRocmVlIGNvbHVtbnMsIHdoaWNoIHNob3VsZCBpZGVhbGx5IG1hdGNoIHRoZSBFbmdsaXNoIG9uZQorIy4gKiAoZS5nLiBSZW1vdmUg4oaSIHN1cFJpbWVpeCksIHNlZSBkcGtnLXF1ZXJ5KDEpIGZvciBmdXJ0aGVyIGRldGFpbHMuIFRoZQorIy4gKiB0cmFuc2xhdGVkIG1lc3NhZ2UgY2FuIHVzZSBhZGRpdGlvbmFsIGxpbmVzIGlmIG5lZWRlZC4KKyM6IHNyYy9xdWVyeWNtZC5jOjE0OQorbXNnaWQgIiIKKyJEZXNpcmVkPVVua25vd24vSW5zdGFsbC9SZW1vdmUvUHVyZ2UvSG9sZFxuIgorInwgU3RhdHVzPU5vdC9JbnN0L0NvbmYtZmlsZXMvVW5wYWNrZWQvaGFsRi1jb25mL0hhbGYtaW5zdC90cmlnLWFXYWl0L1RyaWctIgorInBlbmRcbiIKKyJ8LyBFcnI/PShub25lKS9SZWluc3QtcmVxdWlyZWQgKFN0YXR1cyxFcnI6IHVwcGVyY2FzZT1iYWQpXG4iCittc2dzdHIgIiIKKyLguJXguYnguK3guIfguIHguLLguKM9VW5rbm93bi9JbnN0YWxsL1JlbW92ZS9QdXJnZS9Ib2xkXG4iCisifCDguKrguJbguLLguJnguLA9Tm90L0luc3QvQ29uZi1maWxlcy9VbnBhY2tlZC9oYWxGLWNvbmYvSGFsZi1pbnN0L3RyaWctYVdhaXQvVHJpZy0iCisicGVuZFxuIgorInwvIOC4m+C4seC4jeC4q+C4sj89KOC5hOC4oeC5iOC4oeC4tSkvUmVpbnN0LXJlcXVpcmVkICjguKrguJbguLLguJnguLAs4Lib4Lix4LiN4Lir4LiyOiDguJ7guLTguKHguJ7guYzguYPguKvguI3guYg94LmB4Lii4LmIKVxuIgorCisjOiBzcmMvcXVlcnljbWQuYzoxNTMKK21zZ2lkICJOYW1lIgorbXNnc3RyICLguIrguLfguYjguK0iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjE1MworbXNnaWQgIlZlcnNpb24iCittc2dzdHIgIuC4o+C4uOC5iOC4mSIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MTU0Cittc2dpZCAiRGVzY3JpcHRpb24iCittc2dzdHIgIuC4hOC4s+C4muC4o+C4o+C4ouC4suC4oiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MjQ2IHNyYy9xdWVyeWNtZC5jOjUxMSBzcmMvc2VsZWN0LmM6NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiTm8gcGFja2FnZXMgZm91bmQgbWF0Y2hpbmcgJXMuXG4iCittc2dzdHIgIuC5hOC4oeC5iOC4nuC4muC5geC4nuC4geC5gOC4geC4iOC4l+C4teC5iOC4leC4o+C4h+C4geC4seC4miAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJzaW9uIGJ5ICVzIGZyb206ICVzXG4iCittc2dzdHIgIuC4geC4suC4o+C5gOC4muC4meC5geC4n+C5ieC4oeC5guC4lOC4oiAlcyDguIjguLLguIE6ICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI3NQorIywgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnNpb24gYnkgJXMgdG86ICVzXG4iCittc2dzdHIgIuC4geC4suC4o+C5gOC4muC4meC5geC4n+C5ieC4oeC5guC4lOC4oiAlcyDguYTguJvguKLguLHguIc6ICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI3OAorIywgYy1mb3JtYXQKK21zZ2lkICJsb2NhbCBkaXZlcnNpb24gZnJvbTogJXNcbiIKK21zZ3N0ciAi4LiB4Liy4Lij4LmA4Lia4LiZ4LmB4Lif4LmJ4Lih4LmA4Lib4LmH4LiZ4LiB4Liy4Lij4Lig4Liy4Lii4LmD4LiZ4LiI4Liy4LiBOiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9jYWwgZGl2ZXJzaW9uIHRvOiAlc1xuIgorbXNnc3RyICLguIHguLLguKPguYDguJrguJnguYHguJ/guYnguKHguYDguJvguYfguJnguIHguLLguKPguKDguLLguKLguYPguJnguYTguJvguKLguLHguIc6ICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjMwOQorbXNnaWQgIi0tc2VhcmNoIG5lZWRzIGF0IGxlYXN0IG9uZSBmaWxlIG5hbWUgcGF0dGVybiBhcmd1bWVudCIKK21zZ3N0ciAiLS1zZWFyY2gg4LiV4LmJ4Lit4LiH4Lij4Liw4Lia4Li44Lit4Liy4Lij4LmM4LiB4Li04Lin4LmA4Lih4LiZ4LiV4LmM4LmA4Lib4LmH4LiZ4LmB4Lie4LiV4LmA4LiX4Li04Lij4LmM4LiZ4LiC4Lit4LiH4LiK4Li34LmI4Lit4LmB4Lif4LmJ4Lih4Lit4Lii4LmI4Liy4LiH4LiZ4LmJ4Lit4Lii4Lir4LiZ4Li24LmI4LiH4Lij4Liy4Lii4LiB4Liy4Lij4LiU4LmJ4Lin4LiiIgorCisjOiBzcmMvcXVlcnljbWQuYzozNTAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIk5vIHBhY2thZ2VzIGZvdW5kIG1hdGNoaW5nICVzLlxuIgorbXNnaWQgIiVzOiBubyBwYXRoIGZvdW5kIG1hdGNoaW5nIHBhdHRlcm4gJXMuXG4iCittc2dzdHIgIuC5hOC4oeC5iOC4nuC4muC5geC4nuC4geC5gOC4geC4iOC4l+C4teC5iOC4leC4o+C4h+C4geC4seC4miAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzozOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSBgJXMnIGlzIG5vdCBpbnN0YWxsZWQgYW5kIG5vIGluZm8gaXMgYXZhaWxhYmxlLlxuIgorbXNnc3RyICLguYHguJ7guIHguYDguIHguIggYCVzJyDguYTguKHguYjguYTguJTguYnguJXguLTguJTguJXguLHguYnguIfguYTguKfguYkg4LmB4Lil4Liw4LmE4Lih4LmI4Lih4Li14LiC4LmJ4Lit4Lih4Li54Lil4Liq4Liz4Lir4Lij4Lix4Lia4LmB4Lie4LiB4LmA4LiB4LiIXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQwMQorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlIGAlcycgaXMgbm90IGF2YWlsYWJsZS5cbiIKK21zZ3N0ciAi4LmE4Lih4LmI4Lih4Li14LmB4Lie4LiB4LmA4LiB4LiIIGAlcydcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDEwIHNyYy9xdWVyeWNtZC5jOjU4NQorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlIGAlcycgaXMgbm90IGluc3RhbGxlZC5cbiIKK21zZ3N0ciAi4LmB4Lie4LiB4LmA4LiB4LiIIGAlcycg4LmE4Lih4LmI4LmE4LiU4LmJ4LiV4Li04LiU4LiV4Lix4LmJ4LiH4LmE4Lin4LmJXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQxOAorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlIGAlcycgZG9lcyBub3QgY29udGFpbiBhbnkgZmlsZXMgKCEpXG4iCittc2dzdHIgIuC5geC4nuC4geC5gOC4geC4iCBgJXMnIOC5hOC4oeC5iOC4oeC4teC5geC4n+C5ieC4oeC5g+C4lOC5gOC4peC4oiAoISlcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDI1CisjLCBjLWZvcm1hdAorbXNnaWQgImxvY2FsbHkgZGl2ZXJ0ZWQgdG86ICVzXG4iCittc2dzdHIgIuC4luC4ueC4geC5gOC4muC4meC5geC4n+C5ieC4oeC5gOC4m+C5h+C4meC4geC4suC4o+C4oOC4suC4ouC5g+C4meC5hOC4m+C4ouC4seC4hzogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDI4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgZGl2ZXJ0cyBvdGhlcnMgdG86ICVzXG4iCittc2dzdHIgIuC5geC4nuC4geC5gOC4geC4iOC5gOC4muC4meC5geC4n+C5ieC4oeC4guC4reC4h+C5geC4nuC4geC5gOC4geC4iOC4reC4t+C5iOC4meC5hOC4m+C4ouC4seC4hzogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDMxCisjLCBjLWZvcm1hdAorbXNnaWQgImRpdmVydGVkIGJ5ICVzIHRvOiAlc1xuIgorbXNnc3RyICLguJbguLnguIHguYDguJrguJnguYHguJ/guYnguKHguYLguJTguKIgJXMg4LmE4Lib4Lii4Lix4LiHOiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0NTIKK21zZ2lkICIiCisiVXNlIGRwa2cgLS1pbmZvICg9IGRwa2ctZGViIC0taW5mbykgdG8gZXhhbWluZSBhcmNoaXZlIGZpbGVzLFxuIgorImFuZCBkcGtnIC0tY29udGVudHMgKD0gZHBrZy1kZWIgLS1jb250ZW50cykgdG8gbGlzdCB0aGVpciBjb250ZW50cy5cbiIKK21zZ3N0ciAiIgorIuC5g+C4iuC5iSBkcGtnIC0taW5mbyAoPSBkcGtnLWRlYiAtLWluZm8pIOC4luC5ieC4suC4iOC4sOC4lOC4ueC4guC5ieC4reC4oeC4ueC4peC4guC4reC4h+C5geC4n+C5ieC4oeC5geC4nuC4geC5gOC4geC4iFxuIgorIuC5geC4peC4sCBkcGtnIC0tY29udGVudHMgKD0gZHBrZy1kZWIgLS1jb250ZW50cykg4LiW4LmJ4Liy4LiI4Liw4LiU4Li54LmA4LiZ4Li34LmJ4Lit4Lir4Liy4Lig4Liy4Lii4LmD4LiZXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjU3MAorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIHRha2VzIGF0IG1vc3QgdHdvIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS0lcyDguJXguYnguK3guIfguIHguLLguKPguK3guLLguKPguYzguIHguLTguKfguYDguKHguJnguJXguYzguYTguKHguYjguYDguIHguLTguJnguKrguK3guIfguJXguLHguKciCisKKyM6IHNyYy9xdWVyeWNtZC5jOjU3OAorIywgYy1mb3JtYXQKK21zZ2lkICJjb250cm9sIGZpbGUgY29udGFpbnMgJWMiCittc2dzdHIgIuC5geC4n+C5ieC4oeC4hOC4p+C4muC4hOC4uOC4oeC4oeC4teC4reC4seC4geC4guC4o+C4sCAlYyIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjAwCisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiAlcyBwYWNrYWdlIG1hbmFnZW1lbnQgcHJvZ3JhbSBxdWVyeSB0b29sIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIuC5gOC4hOC4o+C4t+C5iOC4reC4h+C4oeC4t+C4reC4quC4reC4muC4luC4suC4oeC4guC5ieC4reC4oeC4ueC4pSAlcyDguYPguJnguIrguLjguJTguYLguJvguKPguYHguIHguKPguKHguIjguLHguJTguIHguLLguKPguYHguJ7guIHguYDguIHguIjguILguK3guIfguYDguJTguYDguJrguLXguKLguJkg4Lij4Li44LmI4LiZICVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjYxOQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIkNvbW1hbmRzOlxuIgorI3wgIiAgLXN8LS1zdGF0dXMgPHBhY2thZ2U+IC4uLiAgICAgICAgRGlzcGxheSBwYWNrYWdlIHN0YXR1cyBkZXRhaWxzLlxuIgorI3wgIiAgLXB8LS1wcmludC1hdmFpbCA8cGFja2FnZT4gLi4uICAgRGlzcGxheSBhdmFpbGFibGUgdmVyc2lvbiBkZXRhaWxzLlxuIgorI3wgIiAgLUx8LS1saXN0ZmlsZXMgPHBhY2thZ2U+IC4uLiAgICAgTGlzdCBmaWxlcyBgb3duZWQnIGJ5IHBhY2thZ2UocykuXG4iCisjfCAiICAtbHwtLWxpc3QgWzxwYXR0ZXJuPiAuLi5dICAgICAgICBMaXN0IHBhY2thZ2VzIGNvbmNpc2VseS5cbiIKKyN8ICIgIC1XfC0tc2hvdyA8cGF0dGVybj4gLi4uICAgICAgICAgIFNob3cgaW5mb3JtYXRpb24gb24gcGFja2FnZShzKS5cbiIKKyN8ICIgIC1TfC0tc2VhcmNoIDxwYXR0ZXJuPiAuLi4gICAgICAgIEZpbmQgcGFja2FnZShzKSBvd25pbmcgZmlsZShzKS5cbiIKKyN8ICIgIC1jfC0tY29udHJvbC1wYXRoIDxwYWNrYWdlPiBbPGZpbGU+XVxuIgorI3wgIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHJpbnQgcGF0aCBmb3IgcGFja2FnZSBjb250cm9sIGZpbGUuXG4iCisjfCAiXG4iCittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLXN8LS1zdGF0dXMgPHBhY2thZ2U+IC4uLiAgICAgICAgRGlzcGxheSBwYWNrYWdlIHN0YXR1cyBkZXRhaWxzLlxuIgorIiAgLXB8LS1wcmludC1hdmFpbCA8cGFja2FnZT4gLi4uICAgRGlzcGxheSBhdmFpbGFibGUgdmVyc2lvbiBkZXRhaWxzLlxuIgorIiAgLUx8LS1saXN0ZmlsZXMgPHBhY2thZ2U+IC4uLiAgICAgTGlzdCBmaWxlcyBgb3duZWQnIGJ5IHBhY2thZ2UocykuXG4iCisiICAtbHwtLWxpc3QgWzxwYXR0ZXJuPiAuLi5dICAgICAgICBMaXN0IHBhY2thZ2VzIGNvbmNpc2VseS5cbiIKKyIgIC1XfC0tc2hvdyBbPHBhdHRlcm4+IC4uLl0gICAgICAgIFNob3cgaW5mb3JtYXRpb24gb24gcGFja2FnZShzKS5cbiIKKyIgIC1TfC0tc2VhcmNoIDxwYXR0ZXJuPiAuLi4gICAgICAgIEZpbmQgcGFja2FnZShzKSBvd25pbmcgZmlsZShzKS5cbiIKKyIgIC1jfC0tY29udHJvbC1wYXRoIDxwYWNrYWdlPiBbPGZpbGU+XVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHJpbnQgcGF0aCBmb3IgcGFja2FnZSBjb250cm9sIGZpbGUuXG4iCisiXG4iCittc2dzdHIgIiIKKyLguITguLPguKrguLHguYjguIc6XG4iCisiICAtc3wtLXN0YXR1cyA84LmB4Lie4LiB4LmA4LiB4LiIPiAuLi4gICAgICAgICDguYHguKrguJTguIfguKPguLLguKLguKXguLDguYDguK3guLXguKLguJTguKrguJbguLLguJnguLDguILguK3guIfguYHguJ7guIHguYDguIHguIhcbiIKKyIgIC1wfC0tcHJpbnQtYXZhaWwgPOC5geC4nuC4geC5gOC4geC4iD4gLi4uICAgIOC5geC4quC4lOC4h+C4o+C4suC4ouC4peC4sOC5gOC4reC4teC4ouC4lOC4guC4reC4h+C4o+C4uOC5iOC4meC4l+C4teC5iOC4oeC4teC4reC4ouC4ueC5iFxuIgorIiAgLUx8LS1saXN0ZmlsZXMgPOC5geC4nuC4geC5gOC4geC4iD4gLi4uICAgICAg4LmB4Liq4LiU4LiH4Lij4Liy4Lii4LiK4Li34LmI4Lit4LmB4Lif4LmJ4Lih4LiX4Li14LmIIGDguYDguJvguYfguJnguILguK3guIcnIOC5geC4nuC4geC5gOC4geC4iFxuIgorIiAgLWx8LS1saXN0IFs84LmB4Lie4LiV4LmA4LiX4Li04Lij4LmM4LiZPiAuLi5dICAgICAgICDguYHguKrguJTguIfguKPguLLguKLguIrguLfguYjguK3guYHguJ7guIHguYDguIHguIjguYLguJTguKLguKLguYjguK1cbiIKKyIgIC1XfC0tc2hvdyA84LmB4Lie4LiV4LmA4LiX4Li04Lij4LmM4LiZPiAuLi4gICAgICAgICAg4LmB4Liq4LiU4LiH4LiC4LmJ4Lit4Lih4Li54Lil4LmA4LiB4Li14LmI4Lii4Lin4LiB4Lix4Lia4LmB4Lie4LiB4LmA4LiB4LiIXG4iCisiICAtU3wtLXNlYXJjaCA84LmB4Lie4LiV4LmA4LiX4Li04Lij4LmM4LiZPiAuLi4gICAgICAgIOC5geC4quC4lOC4h+C5geC4nuC4geC5gOC4geC4iOC4l+C4teC5iOC5gOC4m+C5h+C4meC5gOC4iOC5ieC4suC4guC4reC4h+C5geC4n+C5ieC4oVxuIgorIiAgLWN8LS1jb250cm9sLXBhdGggPOC5geC4nuC4geC5gOC4geC4iD4gWzzguYHguJ/guYnguKE+XVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg4LmB4Liq4LiU4LiH4Lie4Liy4LiY4LiC4Lit4LiH4LmB4Lif4LmJ4Lih4LiE4Lin4Lia4LiE4Li44Lih4LiC4Lit4LiH4LmB4Lie4LiB4LmA4LiB4LiIXG4iCisiXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjYzNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorIiAgLWZ8LS1zaG93Zm9ybWF0PTxmb3JtYXQ+ICAgICAgICAgVXNlIGFsdGVybmF0aXZlIGZvcm1hdCBmb3IgLS1zaG93LlxuIgorIlxuIgorbXNnc3RyICIiCisi4LiV4Lix4Lin4LmA4Lil4Li34Lit4LiBOlxuIgorIiAgLS1hZG1pbmRpcj084LmE4LiU4LmA4Lij4LiB4LiX4Lit4Lij4Li1PiAgICAgICAgICAgIOC5g+C4iuC5iSA84LmE4LiU4LmA4Lij4LiB4LiX4Lit4Lij4Li1PiDguYHguJfguJkgJXNcbiIKKyIgIC1mfC0tc2hvd2Zvcm1hdD084Lij4Li54Lib4LmB4Lia4LiaPiAgICAgICAgICDguYPguIrguYnguKPguLnguJvguYHguJrguJrguK3guLfguYjguJnguKrguLPguKvguKPguLHguJogLS1zaG93XG4iCisiXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjY0MiBkcGtnLWRlYi9tYWluLmM6MTEyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJGb3JtYXQgc3ludGF4OlxuIgorIiAgQSBmb3JtYXQgaXMgYSBzdHJpbmcgdGhhdCB3aWxsIGJlIG91dHB1dCBmb3IgZWFjaCBwYWNrYWdlLiBUaGUgZm9ybWF0XG4iCisiICBjYW4gaW5jbHVkZSB0aGUgc3RhbmRhcmQgZXNjYXBlIHNlcXVlbmNlcyBcXG4gKG5ld2xpbmUpLCBcXHIgKGNhcnJpYWdlXG4iCisiICByZXR1cm4pIG9yIFxcXFwgKHBsYWluIGJhY2tzbGFzaCkuIFBhY2thZ2UgaW5mb3JtYXRpb24gY2FuIGJlIGluY2x1ZGVkXG4iCisiICBieSBpbnNlcnRpbmcgdmFyaWFibGUgcmVmZXJlbmNlcyB0byBwYWNrYWdlIGZpZWxkcyB1c2luZyB0aGUgJHt2YXJbOyIKKyJ3aWR0aF19XG4iCisiICBzeW50YXguIEZpZWxkcyB3aWxsIGJlIHJpZ2h0LWFsaWduZWQgdW5sZXNzIHRoZSB3aWR0aCBpcyBuZWdhdGl2ZSBpbiAiCisid2hpY2hcbiIKKyIgIGNhc2UgbGVmdCBhbGlnbm1lbnQgd2lsbCBiZSB1c2VkLlxuIgorbXNnc3RyICIiCisi4LiB4Liy4Lij4LiB4Liz4Lir4LiZ4LiU4Lij4Li54Lib4LmB4Lia4LiaOlxuIgorIiAg4Lij4Li54Lib4LmB4Lia4LiaIOC4hOC4t+C4reC4guC5ieC4reC4hOC4p+C4suC4oeC4l+C4teC5iOC4iOC4sOC5geC4quC4lOC4h+C4quC4s+C4q+C4o+C4seC4muC5geC4leC5iOC4peC4sOC5geC4nuC4geC5gOC4geC4iCDguKPguLnguJvguYHguJrguJrguKrguLLguKHguLLguKPguJbguYPguIrguYnguK3guLHguIHguILguKPguLDguKvguKXguLXguIHguKHguLLguJXguKPguJDguLLguJlcbiIKKyIgIOC4hOC4t+C4rSBcXG4gKOC4guC4tuC5ieC4meC4muC4o+C4o+C4l+C4seC4lOC5g+C4q+C4oeC5iCksIFxcciAo4Lib4Lix4LiU4LmB4LiE4Lij4LmIKSDguKvguKPguLfguK0gXFxcXCAoYmFja3NsYXNoKSDguYTguJTguYkg4Liq4Liy4Lih4Liy4Lij4LiWXG4iCisiICDguK3guYnguLLguIfguJbguLbguIfguILguYnguK3guKHguLnguKXguILguK3guIfguYHguJ7guIHguYDguIHguIjguYTguJTguYnguJTguYnguKfguKLguJXguLHguKfguYHguJvguKPguYHguJfguJnguYDguILguJXguILguYnguK3guKHguLnguKXguYPguJnguKPguLnguJsgJHvguJXguLHguKfguYHguJvguKNbO+C4hOC4p+C4suC4oeC4geC4p+C5ieC4suC4h119XG4iCisiICDguIHguLLguKPguYHguKrguJTguIfguYDguILguJXguILguYnguK3guKHguLnguKXguIjguLDguYDguKPguLXguKLguIfguIrguLTguJTguILguKfguLLguYDguKrguKHguK0g4LiZ4Lit4LiB4LiI4Liy4LiB4LiI4Liw4LmD4LiK4LmJ4LiE4Lin4Liy4Lih4LiB4Lin4LmJ4Liy4LiH4LmA4Lib4LmH4LiZ4Lil4LiaIOC4iOC4tuC4h+C4iOC4sOC5gOC4o+C4teC4ouC4h1xuIgorIiAg4LiK4Li04LiU4LiL4LmJ4Liy4LiiXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjY1NgorbXNnaWQgIlVzZSAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgcXVlcnlpbmcgcGFja2FnZXMuIgorbXNnc3RyICLguYPguIrguYkgLS1oZWxwIOC5gOC4nuC4t+C5iOC4reC4lOC4ueC4p+C4tOC4mOC4teC4quC4reC4muC4luC4suC4oeC4guC5ieC4reC4oeC4ueC4peC5geC4nuC4geC5gOC4geC4iCIKKworIzogc3JjL3JlbW92ZS5jOjg4CisjLCBjLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nIHJlcXVlc3QgdG8gcmVtb3ZlICUuMjUwcyB3aGljaCBpc24ndCBpbnN0YWxsZWQuIgorbXNnc3RyICLguIjguLDguILguYnguLLguKHguITguLPguKrguLHguYjguIfguJbguK3guJTguJbguK3guJkgJS4yNTBzIOC4i+C4tuC5iOC4h+C5hOC4oeC5iOC5hOC4lOC5ieC4leC4tOC4lOC4leC4seC5ieC4h+C5hOC4p+C5iSIKKworIzogc3JjL3JlbW92ZS5jOjk1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpZ25vcmluZyByZXF1ZXN0IHRvIHJlbW92ZSAlLjI1MHMsIG9ubHkgdGhlIGNvbmZpZ1xuIgorIiBmaWxlcyBvZiB3aGljaCBhcmUgb24gdGhlIHN5c3RlbS4gVXNlIC0tcHVyZ2UgdG8gcmVtb3ZlIHRoZW0gdG9vLiIKK21zZ3N0ciAiIgorIuC4iOC4sOC4guC5ieC4suC4oeC4hOC4s+C4quC4seC5iOC4h+C4luC4reC4lOC4luC4reC4mSAlLjI1MHMg4LiL4Li24LmI4LiH4LmA4Lir4Lil4Li34Lit4LmB4LiV4LmI4LmB4Lif4LmJ4Lih4LiE4LmI4Liy4LiV4Lix4LmJ4LiH4Lit4Lii4Li54LmI4LmD4LiZ4Lij4Liw4Lia4LiaXG4iCisiIOC5g+C4iuC5iSAtLXB1cmdlIOC4luC5ieC4suC4leC5ieC4reC4h+C4geC4suC4o+C4peC4muC5geC4n+C5ieC4oeC4hOC5iOC4suC4leC4seC5ieC4h+C4lOC5ieC4p+C4oiIKKworIzogc3JjL3JlbW92ZS5jOjEwMworbXNnaWQgIlRoaXMgaXMgYW4gZXNzZW50aWFsIHBhY2thZ2UgLSBpdCBzaG91bGQgbm90IGJlIHJlbW92ZWQuIgorbXNnc3RyICLguJnguLXguYjguYDguJvguYfguJnguYHguJ7guIHguYDguIHguIjguIjguLPguYDguJvguYfguJkgLSDguYTguKHguYjguITguKfguKPguJbguK3guJTguJbguK3guJkiCisKKyM6IHNyYy9yZW1vdmUuYzoxMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IGRlcGVuZGVuY3kgcHJvYmxlbXMgcHJldmVudCByZW1vdmFsIG9mICVzOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzog4Lih4Li14Lib4Lix4LiN4Lir4Liy4LiE4Lin4Liy4Lih4LiC4Li24LmJ4LiZ4LiV4LmI4Lit4LiB4Lix4LiZ4LiC4Lit4LiH4LmB4Lie4LiB4LmA4LiB4LiI4LiX4Liz4LmD4Lir4LmJ4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4LiW4Lit4LiU4LiW4Lit4LiZICVzIOC5hOC4lOC5iTpcbiIKKyIlcyIKKworIzogc3JjL3JlbW92ZS5jOjEzMAorbXNnaWQgImRlcGVuZGVuY3kgcHJvYmxlbXMgLSBub3QgcmVtb3ZpbmciCittc2dzdHIgIuC4oeC4teC4m+C4seC4jeC4q+C4suC4hOC4p+C4suC4oeC4guC4tuC5ieC4meC4leC5iOC4reC4geC4seC4meC4guC4reC4h+C5geC4nuC4geC5gOC4geC4iCAtIOC4iOC4sOC5hOC4oeC5iOC4luC4reC4lOC4luC4reC4mSIKKworIzogc3JjL3JlbW92ZS5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogJXM6IGRlcGVuZGVuY3kgcHJvYmxlbXMsIGJ1dCByZW1vdmluZyBhbnl3YXkgYXMgeW91IHJlcXVlc3RlZDpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiDguKHguLXguJvguLHguI3guKvguLLguITguKfguLLguKHguILguLbguYnguJnguJXguYjguK3guIHguLHguJnguILguK3guIfguYHguJ7guIHguYDguIHguIgg4LmB4LiV4LmI4LiI4Liw4LiW4Lit4LiU4LiW4Lit4LiZ4LiV4Liy4Lih4LiX4Li14LmI4LiE4Li44LiT4Liq4Lix4LmI4LiHOlxuIgorIiVzIgorCisjOiBzcmMvcmVtb3ZlLmM6MTQyCittc2dpZCAiIgorIlBhY2thZ2UgaXMgaW4gYSB2ZXJ5IGJhZCBpbmNvbnNpc3RlbnQgc3RhdGUgLSB5b3Ugc2hvdWxkXG4iCisiIHJlaW5zdGFsbCBpdCBiZWZvcmUgYXR0ZW1wdGluZyBhIHJlbW92YWwuIgorbXNnc3RyICIiCisi4LmB4Lie4LiB4LmA4LiB4LiI4Lit4Lii4Li54LmI4LmD4LiZ4Liq4LiW4Liy4LiZ4Liw4LmE4Lih4LmI4Liq4Lih4Lia4Li54Lij4LiT4LmM4Lit4Lii4LmI4Liy4LiH4Lih4Liy4LiBIC0g4LiE4Li44LiT4LiE4Lin4Lij4LiV4Li04LiU4LiV4Lix4LmJ4LiH4LmB4Lie4LiB4LmA4LiB4LiI4LiL4LmJ4LizXG4iCisiIOC4geC5iOC4reC4meC4l+C4teC5iOC4iOC4sOC4nuC4ouC4suC4ouC4suC4oeC4luC4reC4lOC4luC4reC4mSIKKworIzogc3JjL3JlbW92ZS5jOjE0OQorIywgYy1mb3JtYXQKK21zZ2lkICJXb3VsZCByZW1vdmUgb3IgcHVyZ2UgJXMgLi4uXG4iCittc2dzdHIgIuC4iOC4sOC4luC4reC4lOC4luC4reC4mSAlcyDguKvguKPguLfguK3guJbguK3guJTguJbguK3guJnguK3guKLguYjguLLguIfguKrguKHguJrguLnguKPguJPguYwgLi4uXG4iCisKKyM6IHNyYy9yZW1vdmUuYzoxNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVtb3ZpbmcgJXMgLi4uXG4iCittc2dzdHIgIuC4geC4s+C4peC4seC4h+C4luC4reC4lOC4luC4reC4mSAlcyAuLi5cbiIKKworIzogc3JjL3JlbW92ZS5jOjI3NSBzcmMvcmVtb3ZlLmM6MzY2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ3aGlsZSByZW1vdmluZyAlLjI1MHMsIHVuYWJsZSB0byByZW1vdmUgZGlyZWN0b3J5ICclLjI1MHMnOiAlcyAtIGRpcmVjdG9yeSAiCisibWF5IGJlIGEgbW91bnQgcG9pbnQ/IgorbXNnc3RyICIiCisi4LiC4LiT4Liw4LiW4Lit4LiU4LiW4Lit4LiZICUuMjUwcyDguJvguKPguLLguIHguI/guKfguYjguLLguYTguKHguYjguKrguLLguKHguLLguKPguJbguKXguJrguYTguJTguYDguKPguIHguJfguK3guKPguLUgJyUuMjUwcyc6ICVzIC0gIgorIuC5hOC4lOC5gOC4o+C4geC4l+C4reC4o+C4teC4reC4suC4iOC5gOC4m+C5h+C4meC4iOC4uOC4lOC5gOC4oeC4suC4meC4l+C5jOC4q+C4o+C4t+C4reC5hOC4oeC5iD8iCisKKyM6IHNyYy9yZW1vdmUuYzoyODkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNlY3VyZWx5IHJlbW92ZSAnJS4yNTBzJyIKK21zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4Lil4LiaICclLjI1MHMnIOC4reC4ouC5iOC4suC4h+C4m+C4peC4reC4lOC4oOC4seC4ouC5hOC4lOC5iSIKKworIzogc3JjL3JlbW92ZS5jOjM2MQorIywgYy1mb3JtYXQKK21zZ2lkICJ3aGlsZSByZW1vdmluZyAlLjI1MHMsIGRpcmVjdG9yeSAnJS4yNTBzJyBub3QgZW1wdHkgc28gbm90IHJlbW92ZWQuIgorbXNnc3RyICLguILguJPguLDguJbguK3guJTguJbguK3guJkgJS4yNTBzIOC4m+C4o+C4suC4geC4j+C4p+C5iOC4suC5hOC4lOC5gOC4o+C4geC4l+C4reC4o+C4tSBgJS4yNTBzJyDguKHguLXguILguYnguK3guKHguLnguKXguYDguKvguKXguLfguK3guK3guKLguLnguYgg4LiI4Li24LiH4LmE4Lih4LmI4Lil4Lia4LmE4LiU4LmA4Lij4LiB4LiX4Lit4Lij4Li14LiZ4Li14LmJIgorCisjOiBzcmMvcmVtb3ZlLmM6MzgzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW5ub3QgcmVtb3ZlIGAlLjI1MHMnIgorbXNnaWQgImNhbm5vdCByZW1vdmUgJyUuMjUwcyciCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC4peC4miBgJS4yNTBzJyIKKworIzogc3JjL3JlbW92ZS5jOjQwOQorIywgYy1mb3JtYXQKK21zZ2lkICJQdXJnaW5nIGNvbmZpZ3VyYXRpb24gZmlsZXMgZm9yICVzIC4uLlxuIgorbXNnc3RyICLguIHguLPguKXguLHguIfguKXguJrguYHguJ/guYnguKHguITguYjguLLguJXguLHguYnguIfguILguK3guIcgJXMgLi4uXG4iCisKKyM6IHNyYy9yZW1vdmUuYzo0NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlbW92ZSBvbGQgY29uZmlnIGZpbGUgYCUuMjUwcycgKD0gYCUuMjUwcycpIgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguKXguJrguYHguJ/guYnguKHguITguYjguLLguJXguLHguYnguIfguYDguIHguYjguLIgYCUuMjUwcycgKD0gYCUuMjUwcycpIgorCisjOiBzcmMvcmVtb3ZlLmM6NDc0CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZWFkIGNvbmZpZyBmaWxlIGRpciBgJS4yNTBzJyAoZnJvbSBgJS4yNTBzJykiCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC4reC5iOC4suC4meC5hOC4lOC5gOC4o+C4geC4l+C4reC4o+C4teC5geC4n+C5ieC4oeC4hOC5iOC4suC4leC4seC5ieC4hyBgJS4yNTBzJyAo4LiI4Liy4LiBIGAlLjI1MHMnKSIKKworIzogc3JjL3JlbW92ZS5jOjUxMAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVtb3ZlIG9sZCBiYWNrdXAgY29uZmlnIGZpbGUgYCUuMjUwcycgKG9mIGAlLjI1MHMnKSIKK21zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4Lil4Lia4LmB4Lif4LmJ4Lih4LiE4LmI4Liy4LiV4Lix4LmJ4LiH4Liq4Liz4Lij4Lit4LiH4LmA4LiB4LmI4LiyIGAlLjI1MHMnICjguILguK3guIcgYCUuMjUwcycpIgorCisjOiBzcmMvcmVtb3ZlLmM6NTY4Cittc2dpZCAiY2Fubm90IHJlbW92ZSBvbGQgZmlsZXMgbGlzdCIKK21zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4Lil4Lia4Lij4Liy4Lii4LiK4Li34LmI4Lit4LmB4Lif4LmJ4Lih4LmA4LiB4LmI4LiyIgorCisjOiBzcmMvcmVtb3ZlLmM6NTc0Cittc2dpZCAiY2FuJ3QgcmVtb3ZlIG9sZCBwb3N0cm0gc2NyaXB0IgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguKXguJrguKrguITguKPguLTguJvguJXguYwgcG9zdHJtIOC5gOC4geC5iOC4siIKKworIzogc3JjL3NlbGVjdC5jOjExNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVvZiBpbiBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZCIKK21zZ3N0ciAi4Lie4Lia4LiI4Li44LiU4LiI4Lia4LmB4Lif4LmJ4Lih4LiB4LmI4Lit4LiZ4LiB4Liz4Lir4LiZ4LiU4LmD4LiZ4LiK4Li34LmI4Lit4LmB4Lie4LiB4LmA4LiB4LiI4LiX4Li14LmI4Lia4Lij4Lij4LiX4Lix4LiUICVkIgorCisjOiBzcmMvc2VsZWN0LmM6MTE2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGxpbmUgaW4gcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQiCittc2dzdHIgIuC4nuC4muC4iOC4uOC4lOC4iOC4muC4muC4o+C4o+C4l+C4seC4lOC4geC5iOC4reC4meC4geC4s+C4q+C4meC4lOC5g+C4meC4iuC4t+C5iOC4reC5geC4nuC4geC5gOC4geC4iOC4l+C4teC5iOC4muC4o+C4o+C4l+C4seC4lCAlZCIKKworIzogc3JjL3NlbGVjdC5jOjEyMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVvZiBhZnRlciBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZCIKK21zZ3N0ciAi4Lie4Lia4LiI4Li44LiU4LiI4Lia4LmB4Lif4LmJ4Lih4LiB4LmI4Lit4LiZ4LiB4Liz4Lir4LiZ4LiU4Lir4Lil4Lix4LiH4LiK4Li34LmI4Lit4LmB4Lie4LiB4LmA4LiB4LiI4LiX4Li14LmI4Lia4Lij4Lij4LiX4Lix4LiUICVkIgorCisjOiBzcmMvc2VsZWN0LmM6MTIzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGxpbmUgYWZ0ZXIgcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQiCittc2dzdHIgIuC4nuC4muC4iOC4uOC4lOC4iOC4muC4muC4o+C4o+C4l+C4seC4lOC4geC5iOC4reC4meC4geC4s+C4q+C4meC4lOC4q+C4peC4seC4h+C4iuC4t+C5iOC4reC5geC4nuC4geC5gOC4geC4iOC4l+C4teC5iOC4muC4o+C4o+C4l+C4seC4lCAlZCIKKworIzogc3JjL3NlbGVjdC5jOjEzNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGRhdGEgYWZ0ZXIgcGFja2FnZSBhbmQgc2VsZWN0aW9uIGF0IGxpbmUgJWQiCittc2dzdHIgIuC4oeC4teC4guC5ieC4reC4oeC4ueC4peC4l+C4teC5iOC5hOC4oeC5iOC4leC5ieC4reC4h+C4geC4suC4o+C4q+C4peC4seC4h+C4iuC4t+C5iOC4reC5geC4nuC4geC5gOC4geC4iOC5geC4peC4sOC4geC4suC4o+C5gOC4peC4t+C4reC4geC4o+C4uOC5iOC4meC4l+C4teC5iOC4muC4o+C4o+C4l+C4seC4lCAlZCIKKworIzogc3JjL3NlbGVjdC5jOjEzOQorIywgYy1mb3JtYXQKK21zZ2lkICJpbGxlZ2FsIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkOiAlLjI1MHMiCittc2dzdHIgIuC4iuC4t+C5iOC4reC5geC4nuC4geC5gOC4geC4iOC4nOC4tOC4lOC4o+C4ueC4m+C5geC4muC4muC4l+C4teC5iOC4muC4o+C4o+C4l+C4seC4lCAlZDogJS4yNTBzIgorCisjOiBzcmMvc2VsZWN0LmM6MTQzCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gd2FudGVkIHN0YXR1cyBhdCBsaW5lICVkOiAlLjI1MHMiCittc2dzdHIgIuC5hOC4oeC5iOC4o+C4ueC5ieC4iOC4seC4geC4quC4luC4suC4meC4sOC4l+C4teC5iOC4leC5ieC4reC4h+C4geC4suC4o+C4l+C4teC5iOC4muC4o+C4o+C4l+C4seC4lCAlZDogJS4yNTBzIgorCisjOiBzcmMvc2VsZWN0LmM6MTQ5Cittc2dpZCAicmVhZCBlcnJvciBvbiBzdGFuZGFyZCBpbnB1dCIKK21zZ3N0ciAi4LiB4Liy4Lij4Lit4LmI4Liy4LiZ4LiC4LmJ4Lit4Lih4Li54Lil4Lic4Li04LiU4Lie4Lil4Liy4LiU4LiX4Li14LmI4Lit4Li04LiZ4Lie4Li44LiV4Lih4Liy4LiV4Lij4LiQ4Liy4LiZIgorCisjOiBzcmMvc3RhdGNtZC5jOjUyCisjLCBmdXp6eQorI3wgbXNnaWQgIlVzZSAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgcXVlcnlpbmcgcGFja2FnZXMuIgorbXNnaWQgIlVzZSAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgb3ZlcnJpZGluZyBmaWxlIHN0YXQgaW5mb3JtYXRpb24uIgorbXNnc3RyICLguYPguIrguYkgLS1oZWxwIOC5gOC4nuC4t+C5iOC4reC4lOC4ueC4p+C4tOC4mOC4teC4quC4reC4muC4luC4suC4oeC4guC5ieC4reC4oeC4ueC4peC5geC4nuC4geC5gOC4geC4iCIKKworIzogc3JjL3N0YXRjbWQuYzo2MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29weXJpZ2h0IChDKSAyMDAwLCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDA2LTIwMDkgR3VpbGxlbSBKb3Zlci5cbiIKK21zZ3N0ciAiIgorIkNvcHlyaWdodCAoQykgMjAwMCwgMjAwMSBXaWNoZXJ0IEFra2VybWFuLlxuIgorIkNvcHlyaWdodCAoQykgMjAwNi0yMDA5IEd1aWxsZW0gSm92ZXIuXG4iCisKKyM6IHNyYy9zdGF0Y21kLmM6ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLS1hZGQgPG93bmVyPiA8Z3JvdXA+IDxtb2RlPiA8ZmlsZT5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBhZGQgYSBuZXcgZW50cnkgaW50byB0aGUgZGF0YWJhc2UuXG4iCisiICAtLXJlbW92ZSA8ZmlsZT4gICAgICAgICAgcmVtb3ZlIGZpbGUgZnJvbSB0aGUgZGF0YWJhc2UuXG4iCisiICAtLWxpc3QgWzxnbG9iLXBhdHRlcm4+XSAgbGlzdCBjdXJyZW50IG92ZXJyaWRlcyBpbiB0aGUgZGF0YWJhc2UuXG4iCisiXG4iCittc2dzdHIgIiIKKyLguITguLPguKrguLHguYjguIc6XG4iCisiICAtLWFkZCA84LmA4LiI4LmJ4Liy4LiC4Lit4LiHPiA84LiB4Lil4Li44LmI4LihPiA84LmC4Lir4Lih4LiUPiA84LmB4Lif4LmJ4LihPlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIOC5gOC4nuC4tOC5iOC4oeC4o+C4suC4ouC4geC4suC4o+C5g+C4q+C4oeC5iOC5gOC4guC5ieC4suC5g+C4meC4kOC4suC4meC4guC5ieC4reC4oeC4ueC4pVxuIgorIiAgLS1yZW1vdmUgPOC5geC4n+C5ieC4oT4gICAgICAgICAgIOC4peC4muC5geC4n+C5ieC4oeC4reC4reC4geC4iOC4suC4geC4kOC4suC4meC4guC5ieC4reC4oeC4ueC4pVxuIgorIiAgLS1saXN0IFs8Z2xvYi1wYXR0ZXJuPl0gIOC5geC4quC4lOC4h+C4o+C4suC4ouC4iuC4t+C5iOC4rSBvdmVycmlkZSDguJvguLHguIjguIjguLjguJrguLHguJnguYPguJnguJDguLLguJnguILguYnguK3guKHguLnguKVcbiIKKyJcbiIKKworIzogc3JjL3N0YXRjbWQuYzo4OQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICBzZXQgdGhlIGRpcmVjdG9yeSB3aXRoIHRoZSBzdGF0b3ZlcnJpZGUgZmlsZS5cbiIKKyIgIC0tdXBkYXRlICAgICAgICAgICAgICAgICBpbW1lZGlhdGVseSB1cGRhdGUgZmlsZSBwZXJtaXNzaW9ucy5cbiIKKyIgIC0tZm9yY2UgICAgICAgICAgICAgICAgICBmb3JjZSBhbiBhY3Rpb24gZXZlbiBpZiBhIHNhbml0eSBjaGVjayBmYWlscy5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBxdWlldCBvcGVyYXRpb24sIG1pbmltYWwgb3V0cHV0LlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIuC4leC4seC4p+C5gOC4peC4t+C4reC4gTpcbiIKKyIgIC0tYWRtaW5kaXIgPOC5hOC4lOC5gOC4o+C4geC4l+C4reC4o+C4tT4gICAg4LiB4Liz4Lir4LiZ4LiU4LmE4LiU4LmA4Lij4LiB4LiX4Lit4Lij4Li14LiX4Li14LmI4LmA4LiB4LmH4Lia4LmB4Lif4LmJ4LihIHN0YXRvdmVycmlkZVxuIgorIiAgLS11cGRhdGUgICAgICAgICAgICAgICAgIOC4m+C4o+C4seC4muC4geC4suC4o+C4reC4meC4uOC4jeC4suC4leC4quC4tOC4l+C4mOC4tOC5jOC4guC4reC4h+C5geC4n+C5ieC4oeC4l+C4seC4meC4l+C4tVxuIgorIiAgLS1mb3JjZSAgICAgICAgICAgICAgICAgIOC4muC4seC4h+C4hOC4seC4muC4geC4suC4o+C4geC4o+C4sOC4l+C4s+C5geC4oeC5ieC4geC4suC4o+C4leC4o+C4p+C4iOC4quC4reC4muC4hOC4p+C4suC4oeC5gOC4o+C4teC4ouC4muC4o+C5ieC4reC4ouC4iOC4sOC4peC5ieC4oeC5gOC4q+C4peC4p1xuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIOC4l+C4s+C5geC4muC4muC5gOC4h+C4teC4ouC4miDguYHguKrguJTguIfguILguYnguK3guITguKfguLLguKHguYPguKvguYnguJnguYnguK3guKLguJfguLXguYjguKrguLjguJRcbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICDguYHguKrguJTguIfguILguYnguK3guITguKfguLLguKHguIrguYjguKfguKLguYDguKvguKXguLfguK3guJnguLXguYlcbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICDguYHguKrguJTguIfguYDguKXguILguKPguLjguYjguJlcbiIKKyJcbiIKKworIzogc3JjL3N0YXRjbWQuYzoxMTYKK21zZ2lkICJzdHJpcHBpbmcgdHJhaWxpbmcgLyIKK21zZ3N0ciAi4LiI4Liw4LiV4Lix4LiUIC8g4LiX4Li14LmI4LiX4LmJ4Liy4Lii4LiK4Li34LmI4LitIgorCisjOiBzcmMvc3RhdGNtZC5jOjIwNworbXNnaWQgImNhbm5vdCBvcGVuIG5ldyBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4LmA4Lib4Li04LiU4LmB4Lif4LmJ4LihIHN0YXRvdmVycmlkZSDguInguJrguLHguJrguYPguKvguKHguYgiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjIyCittc2dpZCAiZXJyb3IgcmVtb3Zpbmcgc3RhdG92ZXJyaWRlLW9sZCIKK21zZ3N0ciAi4LmA4LiB4Li04LiU4LiC4LmJ4Lit4Lic4Li04LiU4Lie4Lil4Liy4LiU4LiC4LiT4Liw4Lil4LiaIHN0YXRvdmVycmlkZS1vbGQiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjI0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgbmV3IHN0YXRvdmVycmlkZS1vbGQiCittc2dzdHIgIuC5gOC4geC4tOC4lOC4guC5ieC4reC4nOC4tOC4lOC4nuC4peC4suC4lOC4guC4k+C4sOC4quC4o+C5ieC4suC4hyBzdGF0b3ZlcnJpZGUtb2xkIOC4ieC4muC4seC4muC5g+C4q+C4oeC5iCIKKworIzogc3JjL3N0YXRjbWQuYzoyMjYKK21zZ2lkICJlcnJvciBpbnN0YWxsaW5nIG5ldyBzdGF0b3ZlcnJpZGUiCittc2dzdHIgIuC5gOC4geC4tOC4lOC4guC5ieC4reC4nOC4tOC4lOC4nuC4peC4suC4lOC4guC4k+C4sOC4leC4tOC4lOC4leC4seC5ieC4hyBzdGF0b3ZlcnJpZGUg4LiJ4Lia4Lix4Lia4LmD4Lir4Lih4LmIIgorCisjOiBzcmMvc3RhdGNtZC5jOjI0NgorbXNnaWQgIi0tYWRkIG5lZWRzIGZvdXIgYXJndW1lbnRzIgorbXNnc3RyICItLWFkZCDguJXguYnguK3guIfguIHguLLguKPguK3guLLguKPguYzguIHguLTguKfguYDguKHguJnguJXguYzguKrguLXguYjguKPguLLguKLguIHguLLguKMiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjU2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJBbiBvdmVycmlkZSBmb3IgJyVzJyBhbHJlYWR5IGV4aXN0cywgYnV0IC0tZm9yY2Ugc3BlY2lmaWVkIHNvIHdpbGwgYmUgIgorImlnbm9yZWQuIgorbXNnc3RyICIiCisi4Lih4Li14Lij4Liy4Lii4LiB4Liy4LijIG92ZXJyaWRlIOC4quC4s+C4q+C4o+C4seC4miAnJXMnIOC4reC4ouC4ueC5iOC4geC5iOC4reC4meC5geC4peC5ieC4pyDguYHguJXguYjguKHguLXguIHguLLguKPguKPguLDguJrguLggLS1mb3JjZSDguJTguLHguIfguJnguLHguYnguJnguYDguKPguLLguIjguLDguKXguLDguYDguKXguKLguILguYnguK3guKrguLHguIfguYDguIHguJXguJnguLXguYkiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjYwCisjLCBjLWZvcm1hdAorbXNnaWQgIkFuIG92ZXJyaWRlIGZvciAnJXMnIGFscmVhZHkgZXhpc3RzLCBhYm9ydGluZy4iCittc2dzdHIgIuC4oeC4teC4o+C4suC4ouC4geC4suC4oyBvdmVycmlkZSDguKrguLPguKvguKPguLHguJogJyVzJyDguK3guKLguLnguYjguIHguYjguK3guJnguYHguKXguYnguKcg4LiC4Lit4Lii4LiB4LmA4Lil4Li04LiBIgorCisjOiBzcmMvc3RhdGNtZC5jOjI3MgorIywgYy1mb3JtYXQKK21zZ2lkICItLXVwZGF0ZSBnaXZlbiBidXQgJXMgZG9lcyBub3QgZXhpc3QiCittc2dzdHIgIuC4quC4seC5iOC4hyAtLXVwZGF0ZSDguYHguJXguYjguYTguKHguYjguKHguLXguYHguJ/guYnguKEgJXMg4Lit4Lii4Li54LmIIgorCisjOiBzcmMvc3RhdGNtZC5jOjI5NgorbXNnaWQgIk5vIG92ZXJyaWRlIHByZXNlbnQuIgorbXNnc3RyICLguYTguKHguYjguKHguLXguKPguLLguKLguIHguLLguKMgb3ZlcnJpZGUg4Lit4Lii4Li54LmIIgorCisjOiBzcmMvc3RhdGNtZC5jOjMwNAorbXNnaWQgIi0tdXBkYXRlIGlzIHVzZWxlc3MgZm9yIC0tcmVtb3ZlIgorbXNnc3RyICItLXVwZGF0ZSDguYTguKHguYjguKHguLXguJvguKPguLDguYLguKLguIrguJnguYzguK3guLDguYTguKPguKrguLPguKvguKPguLHguJogLS1yZW1vdmUiCisKKyM6IHNyYy9zdGF0ZGIuYzo1OQorbXNnaWQgInN5bnRheCBlcnJvcjogaW52YWxpZCB1aWQgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIuC4o+C4ueC4m+C5geC4muC4muC4nOC4tOC4lOC4nuC4peC4suC4lDogdWlkIOC5hOC4oeC5iOC4luC4ueC4geC4leC5ieC4reC4h+C5g+C4meC5geC4n+C5ieC4oSBzdGF0b3ZlcnJpZGUiCisKKyM6IHNyYy9zdGF0ZGIuYzo2NAorIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3I6IHVua25vd24gdXNlciAnJXMnIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICLguKPguLnguJvguYHguJrguJrguJzguLTguJTguJ7guKXguLLguJQ6IOC4nuC4muC4nOC4ueC5ieC5g+C4iuC5iSAnJXMnIOC4l+C4teC5iOC5hOC4oeC5iOC4o+C4ueC5ieC4iOC4seC4geC4reC4ouC4ueC5iOC5g+C4meC5geC4n+C5ieC4oSBzdGF0b3ZlcnJpZGUiCisKKyM6IHNyYy9zdGF0ZGIuYzo4MworbXNnaWQgInN5bnRheCBlcnJvcjogaW52YWxpZCBnaWQgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIuC4o+C4ueC4m+C5geC4muC4muC4nOC4tOC4lOC4nuC4peC4suC4lDogZ2lkIOC5hOC4oeC5iOC4luC4ueC4geC4leC5ieC4reC4h+C5g+C4meC5geC4n+C5ieC4oSBzdGF0b3ZlcnJpZGUiCisKKyM6IHNyYy9zdGF0ZGIuYzo4OAorIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3I6IHVua25vd24gZ3JvdXAgJyVzJyBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAi4Lij4Li54Lib4LmB4Lia4Lia4Lic4Li04LiU4Lie4Lil4Liy4LiUOiDguJ7guJrguJzguLnguYnguIHguKXguLjguYjguKEgJyVzJyDguJfguLXguYjguYTguKHguYjguKPguLnguYnguIjguLHguIHguK3guKLguLnguYjguYPguJnguYHguJ/guYnguKEgc3RhdG92ZXJyaWRlIgorCisjOiBzcmMvc3RhdGRiLmM6MTA0Cittc2dpZCAic3ludGF4IGVycm9yOiBpbnZhbGlkIG1vZGUgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIuC4o+C4ueC4m+C5geC4muC4muC4nOC4tOC4lOC4nuC4peC4suC4lDog4LiE4LmI4Liy4LmC4Lir4Lih4LiU4LmE4Lih4LmI4LiW4Li54LiB4LiV4LmJ4Lit4LiH4LmD4LiZ4LmB4Lif4LmJ4LihIHN0YXRvdmVycmlkZSIKKworIzogc3JjL3N0YXRkYi5jOjEyNworbXNnaWQgImZhaWxlZCB0byBvcGVuIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguYDguJvguLTguJTguYHguJ/guYnguKEgc3RhdG92ZXJyaWRlIgorCisjOiBzcmMvc3RhdGRiLmM6MTM0Cittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJYgZnN0YXQg4LmB4Lif4LmJ4LihIHN0YXRvdmVycmlkZSIKKworIzogc3JjL3N0YXRkYi5jOjEzNworbXNnaWQgImZhaWxlZCB0byBmc3RhdCBwcmV2aW91cyBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiWIGZzdGF0IOC5geC4n+C5ieC4oSBzdGF0b3ZlcnJpZGUg4LmA4LiU4Li04LihIgorCisjOiBzcmMvc3RhdGRiLmM6MTYyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJzdGF0b3ZlcnJpZGUgZmlsZSBgJS4yNTBzJyIKK21zZ2lkICJyZWFkaW5nIHN0YXRvdmVycmlkZSBmaWxlICclLjI1MHMnIgorbXNnc3RyICLguYHguJ/guYnguKEgc3RhdG92ZXJyaWRlIGAlLjI1MHMnIgorCisjOiBzcmMvc3RhdGRiLmM6MTY5Cittc2dpZCAic3RhdG92ZXJyaWRlIGZpbGUgaXMgbWlzc2luZyBmaW5hbCBuZXdsaW5lIgorbXNnc3RyICLguYHguJ/guYnguKEgc3RhdG92ZXJyaWRlIOC4guC4suC4lOC4reC4seC4geC4guC4o+C4sOC4guC4tuC5ieC4meC4muC4o+C4o+C4l+C4seC4lOC5g+C4q+C4oeC5iOC4l+C4teC5iOC4l+C5ieC4suC4ouC4muC4o+C4o+C4l+C4seC4lCIKKworIzogc3JjL3N0YXRkYi5jOjE3MworbXNnaWQgInN0YXRvdmVycmlkZSBmaWxlIGNvbnRhaW5zIGVtcHR5IGxpbmUiCittc2dzdHIgIuC5geC4n+C5ieC4oSBzdGF0b3ZlcnJpZGUg4Lih4Li14Lia4Lij4Lij4LiX4Lix4LiU4Lin4LmI4Liy4LiH4LmA4Lib4Lil4LmI4LiyIgorCisjOiBzcmMvc3RhdGRiLmM6MTc4IHNyYy9zdGF0ZGIuYzoxOTAgc3JjL3N0YXRkYi5jOjIwMgorbXNnaWQgInN5bnRheCBlcnJvciBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAi4Lie4Lia4Lij4Li54Lib4LmB4Lia4Lia4Lic4Li04LiU4Lie4Lil4Liy4LiU4LmD4LiZ4LmB4Lif4LmJ4LihIHN0YXRvdmVycmlkZSIKKworIzogc3JjL3N0YXRkYi5jOjE4NiBzcmMvc3RhdGRiLmM6MTk4IHNyYy9zdGF0ZGIuYzoyMTAKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBsaW5lIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICLguJ7guJrguIjguLjguJTguIjguJrguJrguKPguKPguJfguLHguJTguIHguYjguK3guJnguIHguLPguKvguJnguJTguYPguJnguYHguJ/guYnguKEgc3RhdG92ZXJyaWRlIgorCisjOiBzcmMvc3RhdGRiLmM6MjE0CisjLCBjLWZvcm1hdAorbXNnaWQgIm11bHRpcGxlIHN0YXR1c292ZXJyaWRlcyBwcmVzZW50IGZvciBmaWxlICclLjI1MHMnIgorbXNnc3RyICLguKHguLXguKPguLLguKLguIHguLLguKMgc3RhdG92ZXJyaWRlIOC4q+C4peC4suC4ouC4o+C4suC4ouC4geC4suC4o+C4quC4s+C4q+C4o+C4seC4miAnJS4yNTBzJyIKKworIzogc3JjL3RyaWdjbWQuYzo0NgorbXNnaWQgIlR5cGUgZHBrZy10cmlnZ2VyIC0taGVscCBmb3IgaGVscCBhYm91dCB0aGlzIHV0aWxpdHkuIgorbXNnc3RyICLguJ7guLTguKHguJ7guYwgZHBrZy10cmlnZ2VyIC0taGVscCDguYDguJ7guLfguYjguK3guJTguLnguKfguLTguJjguLXguYPguIrguYnguYLguJvguKPguYHguIHguKPguKHguJnguLXguYkiCisKKyM6IHNyYy90cmlnY21kLmM6NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuICVzIHBhY2thZ2UgdHJpZ2dlciB1dGlsaXR5IHZlcnNpb24gJXMuXG4iCittc2dzdHIgIuC5gOC4hOC4o+C4t+C5iOC4reC4h+C4oeC4t+C4reC4quC4sOC4geC4tOC4lOC5geC4nuC4geC5gOC4geC4iCAlcyDguILguK3guIfguYDguJTguYDguJrguLXguKLguJkg4Lij4Li44LmI4LiZICVzXG4iCisKKyM6IHNyYy90cmlnY21kLmM6NjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbnM+IC4uLl0gPHRyaWdnZXItbmFtZT5cbiIKKyIgICAgICAgJXMgWzxvcHRpb25zPiAuLi5dIDxjb21tYW5kPlxuIgorIlxuIgorbXNnc3RyICIiCisi4Lin4Li04LiY4Li14LmD4LiK4LmJOiAlcyBbPOC4leC4seC4p+C5gOC4peC4t+C4reC4gT4gLi4uXSA84LiK4Li34LmI4Lit4LiB4Liy4Lij4Liq4Liw4LiB4Li04LiUPlxuIgorIiAgICAgICVzIFs84LiV4Lix4Lin4LmA4Lil4Li34Lit4LiBPiAuLi5dIDzguITguLPguKrguLHguYjguIc+XG4iCisiXG4iCisKKyM6IHNyYy90cmlnY21kLmM6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLS1jaGVjay1zdXBwb3J0ZWQgICAgICAgICAgICAgICAgQ2hlY2sgaWYgdGhlIHJ1bm5pbmcgZHBrZyBzdXBwb3J0cyAiCisidHJpZ2dlcnMuXG4iCisiXG4iCittc2dzdHIgIiIKKyLguITguLPguKrguLHguYjguIc6XG4iCisiICAtLWNoZWNrLXN1cHBvcnRlZCAgICAgICAgICAgICAgICDguJXguKPguKfguIjguKrguK3guJrguKfguYjguLIgZHBrZyDguJfguLXguYjguKHguLXguK3guKLguLnguYjguKPguK3guIfguKPguLHguJrguIHguLLguKPguKrguLDguIHguLTguJTguKvguKPguLfguK3guYTguKHguYhcbiIKKyJcbiIKKworIzogc3JjL3RyaWdjbWQuYzo4MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorIiAgLS1ieS1wYWNrYWdlPTxwYWNrYWdlPiAgICAgICAgICAgT3ZlcnJpZGUgdHJpZ2dlciBhd2FpdGVyIChub3JtYWxseSBzZXRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnkgZHBrZykuXG4iCisiICAtLW5vLWF3YWl0ICAgICAgICAgICAgICAgICAgICAgICBObyBwYWNrYWdlIG5lZWRzIHRvIGF3YWl0IHRoZSAiCisicHJvY2Vzc2luZy5cbiIKKyIgIC0tbm8tYWN0ICAgICAgICAgICAgICAgICAgICAgICAgIEp1c3QgdGVzdCAtIGRvbid0IGFjdHVhbGx5IGNoYW5nZSAiCisiYW55dGhpbmcuXG4iCisiXG4iCittc2dzdHIgIiIKKyLguJXguLHguKfguYDguKXguLfguK3guIE6XG4iCisiICAtLWFkbWluZGlyPTzguYTguJTguYDguKPguIHguJfguK3guKPguLU+ICAgICAgICAgICAg4LmD4LiK4LmJIDzguYTguJTguYDguKPguIHguJfguK3guKPguLU+IOC5geC4l+C4mSAlc1xuIgorIiAgLS1ieS1wYWNrYWdlPTzguYHguJ7guIHguYDguIHguIg+ICAgICAgICAgICAg4LiB4Liz4Lir4LiZ4LiU4LmB4Lie4LiB4LmA4LiB4LiI4Lic4Li54LmJ4Liq4Liw4LiB4Li04LiUICjguKHguLHguIHguIHguLPguKvguJnguJTguYLguJTguKIgZHBrZylcbiIKKyIgIC0tbm8tYXdhaXQgICAgICAgICAgICAgICAgICAgICAgIOC5hOC4oeC5iOC4oeC4teC5geC4nuC4geC5gOC4geC4iOC5hOC4q+C4meC4leC5ieC4reC4h+C4o+C4reC4hOC4reC4ouC4geC4suC4o+C4m+C4o+C4sOC4oeC4p+C4peC4nOC4pVxuIgorIiAgLS1uby1hY3QgICAgICAgICAgICAgICAgICAgICAgICAg4LmB4LiE4LmI4LiX4LiU4Liq4Lit4Lia4LmA4LiX4LmI4Liy4LiZ4Lix4LmJ4LiZIC0g4LmE4Lih4LmI4LiV4LmJ4Lit4LiH4LmA4Lib4Lil4Li14LmI4Lii4LiZ4LmB4Lib4Lil4LiH4LiI4Lij4Li04LiHXG4iCisiXG4iCisKKyM6IHNyYy90cmlnY21kLmM6MTUyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB0cmlnZ2VycyBkYXRhIGRpcmVjdG9yeSBub3QgeWV0IGNyZWF0ZWRcbiIKK21zZ3N0ciAiJXM6IOC4ouC4seC4h+C5hOC4oeC5iOC5hOC4lOC5ieC4quC4o+C5ieC4suC4h+C5hOC4lOC5gOC4o+C4geC4l+C4reC4o+C4teC4guC5ieC4reC4oeC4ueC4peC4geC4suC4o+C4quC4sOC4geC4tOC4lFxuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjE1NgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogdHJpZ2dlciByZWNvcmRzIG5vdCB5ZXQgaW4gZXhpc3RlbmNlXG4iCittc2dzdHIgIiVzOiDguKLguLHguIfguYTguKHguYjguKHguLXguKPguLDguYDguJrguLXguKLguJnguIHguLLguKPguKrguLDguIHguLTguJRcbiIKKworIzogc3JjL3RyaWdjbWQuYzoyMDUKK21zZ2lkICJ0YWtlcyBvbmUgYXJndW1lbnQsIHRoZSB0cmlnZ2VyIG5hbWUiCittc2dzdHIgIuC4o+C4seC4muC4reC4suC4o+C5jOC4geC4tOC4p+C5gOC4oeC4meC4leC5jOC5geC4hOC5iOC4leC4seC4p+C5gOC4lOC4teC4ouC4pyDguITguLfguK3guIrguLfguYjguK3guILguK3guIfguIHguLLguKPguKrguLDguIHguLTguJQiCisKKyM6IHNyYy90cmlnY21kLmM6MjEwCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJkcGtnLXRyaWdnZXIgbXVzdCBiZSBjYWxsZWQgZnJvbSBhIG1haW50YWluZXIgc2NyaXB0IChvciB3aXRoIGEgLS1ieS0iCisjfCAicGFja2FnZSBvcHRpb24pIgorbXNnaWQgIm11c3QgYmUgY2FsbGVkIGZyb20gYSBtYWludGFpbmVyIHNjcmlwdCAob3Igd2l0aCBhIC0tYnktcGFja2FnZSBvcHRpb24pIgorbXNnc3RyICIiCisiZHBrZy10cmlnZ2VyIOC5g+C4iuC5ieC5gOC4o+C4teC4ouC4geC4iOC4suC4geC4quC4hOC4o+C4tOC4m+C4leC5jOC4nOC4ueC5ieC4lOC4ueC5geC4peC5geC4nuC4geC5gOC4geC4iOC5gOC4l+C5iOC4suC4meC4seC5ieC4mSAo4Lir4Lij4Li34Lit4LmC4LiU4Lii4LmD4LiK4LmJ4LiV4Lix4Lin4LmA4Lil4Li34Lit4LiBIC0tYnktcGFja2FnZSkiCisKKyM6IHNyYy90cmlnY21kLmM6MjE1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJkcGtnLXRyaWdnZXI6IGlsbGVnYWwgYXdhaXRlZCBwYWNrYWdlIG5hbWUgYCUuMjUwcyc6ICUuMjUwcyIKK21zZ2lkICJpbGxlZ2FsIGF3YWl0ZWQgcGFja2FnZSBuYW1lICclLjI1MHMnOiAlLjI1MHMiCittc2dzdHIgImRwa2ctdHJpZ2dlcjog4LiK4Li34LmI4Lit4LmB4Lie4LiB4LmA4LiB4LiI4LiX4Li14LmI4Lij4Lit4LiE4Lit4LiiIGAlLjI1NXMnIOC5g+C4iuC5ieC5hOC4oeC5iOC5hOC4lOC5iTogJS4yNTBzIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIyMQorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHRyaWdnZXIgbmFtZSBgJS4yNTBzJzogJS4yNTBzIgorbXNnc3RyICLguIrguLfguYjguK3guIHguLLguKPguKrguLDguIHguLTguJQgYCUuMjU1cycg4LmE4Lih4LmI4LiW4Li54LiB4LiV4LmJ4Lit4LiHOiAlLjI1MHMiCisKKyM6IHNyYy90cmlncHJvYy5jOjI1MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IGN5Y2xlIGZvdW5kIHdoaWxlIHByb2Nlc3NpbmcgdHJpZ2dlcnM6XG4iCisiIGNoYWluIG9mIHBhY2thZ2VzIHdob3NlIHRyaWdnZXJzIGFyZSBvciBtYXkgYmUgcmVzcG9uc2libGU6XG4iCittc2dzdHIgIiIKKyIlczog4Lie4Lia4Lin4LiH4Lin4LiZ4LiC4LiT4Liw4Lib4Lij4Liw4Lih4Lin4Lil4Lic4Lil4LiB4Liy4Lij4Liq4Liw4LiB4Li04LiUOlxuIgorIiDguKrguLLguKLguILguK3guIfguYHguJ7guIHguYDguIHguIjguJfguLXguYjguIHguLLguKPguKrguLDguIHguLTguJTguYDguJvguYfguJnguKvguKPguLfguK3guK3guLLguIjguYDguJvguYfguJnguJXguLHguKfguIHguLLguKM6XG4iCisKKyM6IHNyYy90cmlncHJvYy5jOjI1OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiIHBhY2thZ2VzJyBwZW5kaW5nIHRyaWdnZXJzIHdoaWNoIGFyZSBvciBtYXkgYmUgdW5yZXNvbHZhYmxlOlxuIgorbXNnc3RyICIiCisiXG4iCisiIOC4geC4suC4o+C4quC4sOC4geC4tOC4lOC4l+C4teC5iOC4hOC4seC5iOC4h+C4hOC5ieC4suC4h+C4guC4reC4h+C5geC4nuC4geC5gOC4geC4iOC4l+C4teC5iOC4reC4suC4iOC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC4iOC4seC4lOC4peC4s+C4lOC4seC4muC4geC4suC4o+C4l+C4s+C4h+C4suC4meC5hOC4lOC5iTpcbiIKKworIzogc3JjL3RyaWdwcm9jLmM6MjgxCittc2dpZCAidHJpZ2dlcnMgbG9vcGluZywgYWJhbmRvbmVkIgorbXNnc3RyICLguKHguLXguIHguLLguKPguKrguLDguIHguLTguJTguYDguJvguYfguJnguKfguIfguKfguJkg4LiC4Lit4Lii4LiB4LmA4Lil4Li04LiBIgorCisjOiBzcmMvdHJpZ3Byb2MuYzozMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHJvY2Vzc2luZyB0cmlnZ2VycyBmb3IgJXMgLi4uXG4iCittc2dzdHIgIuC4geC4s+C4peC4seC4h+C4m+C4o+C4sOC4oeC4p+C4peC4nOC4peC4geC4suC4o+C4quC4sOC4geC4tOC4lOC4quC4s+C4q+C4o+C4seC4miAlcyAuLi5cbiIKKworIzogc3JjL3VwZGF0ZS5jOjUyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICItLSVzIG5lZWRzIGV4YWN0bHkgb25lIFBhY2thZ2VzIGZpbGUgYXJndW1lbnQiCittc2dpZCAiLS0lcyBuZWVkcyBleGFjdGx5IG9uZSBQYWNrYWdlcy1maWxlIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIOC4leC5ieC4reC4h+C4geC4suC4o+C4reC4suC4o+C5jOC4geC4tOC4p+C5gOC4oeC4meC4leC5jOC5gOC4m+C5h+C4meC4iuC4t+C5iOC4reC5geC4n+C5ieC4oSBQYWNrYWdlcyDguKPguLLguKLguIHguLLguKPguYDguJTguLXguKLguKciCisKKyM6IHNyYy91cGRhdGUuYzo2MgorbXNnaWQgInVuYWJsZSB0byBhY2Nlc3MgZHBrZyBzdGF0dXMgYXJlYSBmb3IgYnVsayBhdmFpbGFibGUgdXBkYXRlIgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguYDguILguYnguLLguYPguIrguYnguJrguKPguLTguYDguKfguJPguYDguIHguYfguJrguILguYnguK3guKHguLnguKXguKrguJbguLLguJnguLDguILguK3guIcgZHBrZyDguYDguJ7guLfguYjguK3guJvguKPguLHguJrguILguYnguK3guKHguLnguKXguYHguJ7guIHguYDguIHguIjguJfguLXguYjguKHguLXguYHguJrguJrguJfguLHguYnguIfguIrguLjguJQiCisKKyM6IHNyYy91cGRhdGUuYzo2NAorbXNnaWQgImJ1bGsgYXZhaWxhYmxlIHVwZGF0ZSByZXF1aXJlcyB3cml0ZSBhY2Nlc3MgdG8gZHBrZyBzdGF0dXMgYXJlYSIKK21zZ3N0ciAi4LiB4Liy4Lij4Lib4Lij4Lix4Lia4LiC4LmJ4Lit4Lih4Li54Lil4LmB4Lie4LiB4LmA4LiB4LiI4LiX4Li14LmI4Lih4Li14LmB4Lia4Lia4LiX4Lix4LmJ4LiH4LiK4Li44LiU4LiV4LmJ4Lit4LiH4Lit4Liy4Lio4Lix4Lii4Liq4Li04LiX4LiY4Li04LmM4LiB4Liy4Lij4LmA4LiC4Li14Lii4LiZ4LmD4LiZ4Lia4Lij4Li04LmA4Lin4LiT4LmA4LiB4LmH4Lia4LiC4LmJ4Lit4Lih4Li54Lil4Liq4LiW4Liy4LiZ4Liw4LiC4Lit4LiHIGRwa2ciCisKKyM6IHNyYy91cGRhdGUuYzo3MQorIywgYy1mb3JtYXQKK21zZ2lkICJSZXBsYWNpbmcgYXZhaWxhYmxlIHBhY2thZ2VzIGluZm8sIHVzaW5nICVzLlxuIgorbXNnc3RyICLguIHguLPguKXguLHguIfguYHguJfguJnguJfguLXguYjguILguYnguK3guKHguLnguKXguYHguJ7guIHguYDguIHguIjguJfguLXguYjguKHguLUg4LmC4LiU4Lii4LmD4LiK4LmJICVzXG4iCisKKyM6IHNyYy91cGRhdGUuYzo3NAorIywgYy1mb3JtYXQKK21zZ2lkICJVcGRhdGluZyBhdmFpbGFibGUgcGFja2FnZXMgaW5mbywgdXNpbmcgJXMuXG4iCittc2dzdHIgIuC4geC4s+C4peC4seC4h+C4m+C4o+C4seC4muC4guC5ieC4reC4oeC4ueC4peC5geC4nuC4geC5gOC4geC4iOC4l+C4teC5iOC4oeC4tSDguYLguJTguKLguYPguIrguYkgJXNcbiIKKworIzogc3JjL3VwZGF0ZS5jOjEwMQorIywgYy1mb3JtYXQKK21zZ2lkICJJbmZvcm1hdGlvbiBhYm91dCAlZCBwYWNrYWdlIHdhcyB1cGRhdGVkLlxuIgorbXNnaWRfcGx1cmFsICJJbmZvcm1hdGlvbiBhYm91dCAlZCBwYWNrYWdlcyB3YXMgdXBkYXRlZC5cbiIKK21zZ3N0clswXSAi4Lib4Lij4Lix4Lia4LiC4LmJ4Lit4Lih4Li54Lil4LmB4Lie4LiB4LmA4LiB4LiI4LiI4Liz4LiZ4Lin4LiZICVkIOC5geC4nuC4geC5gOC4geC4iOC5gOC4o+C4teC4ouC4muC4o+C5ieC4reC4ouC5geC4peC5ieC4p1xuIgorCisjOiBzcmMvdXBkYXRlLmM6MTE1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJvYnNvbGV0ZSAnLS0lcycgb3B0aW9uLCB1bmF2YWlsYWJsZSBwYWNrYWdlcyBhcmUgYXV0b21hdGljYWxseSBjbGVhbmVkIHVwLiIKK21zZ3N0ciAi4LiV4Lix4Lin4LmA4Lil4Li34Lit4LiBICctLSVzJyDguYDguKXguLTguIHguYPguIrguYnguYHguKXguYnguKcg4LmB4Lie4LiB4LmA4LiB4LiI4LiX4Li14LmI4LmE4Lih4LmI4Lih4Li14LmD4LiZ4Lij4Liw4Lia4Lia4LmB4Lil4LmJ4Lin4LiI4Liw4LiW4Li54LiB4LmA4LiB4LmH4Lia4LiB4Lin4Liy4LiU4LiX4Li04LmJ4LiH4LmC4LiU4Lii4Lit4Lix4LiV4LmC4LiZ4Lih4Lix4LiV4Li0IgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIG5hbWUgJyUuNTBzLi4uJyBpcyB0b28gbG9uZyIKK21zZ3N0ciAi4LiK4Li34LmI4Lit4LmB4Lif4LmJ4LihICclLjUwcy4uLicg4Lii4Liy4Lin4LmA4LiB4Li04LiZ4LmE4LibIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjEyOQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBmaWxlIG5hbWUgJyUuMjUwcyciCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4liBzdGF0IOC4iuC4t+C5iOC4reC5geC4n+C5ieC4oSAnJS4yNTBzJyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoxODkKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBjb250cm9sIGRpcmVjdG9yeSIKK21zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiWIHN0YXQg4LmE4LiU4LmA4Lij4LiB4LiX4Lit4Lij4Li14LiE4Lin4Lia4LiE4Li44LihIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjE5MQorbXNnaWQgImNvbnRyb2wgZGlyZWN0b3J5IGlzIG5vdCBhIGRpcmVjdG9yeSIKK21zZ3N0ciAi4LmE4LiU4LmA4Lij4LiB4LiX4Lit4Lij4Li14LiE4Lin4Lia4LiE4Li44Lih4LmE4Lih4LmI4LmE4LiU4LmJ4LmA4Lib4LmH4LiZ4LmE4LiU4LmA4Lij4LiB4LiX4Lit4Lij4Li1IgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjE5MworIywgYy1mb3JtYXQKK21zZ2lkICJjb250cm9sIGRpcmVjdG9yeSBoYXMgYmFkIHBlcm1pc3Npb25zICUwM2xvIChtdXN0IGJlID49MDc1NSBhbmQgPD0wNzc1KSIKK21zZ3N0ciAi4LmE4LiU4LmA4Lij4LiB4LiX4Lit4Lij4Li14LiE4Lin4Lia4LiE4Li44Lih4Lih4Li14LiB4Liy4Lij4LiB4Liz4Lir4LiZ4LiU4Liq4Li04LiX4LiY4Li04LmMICUwM2xvIOC4i+C4tuC5iOC4h+C5hOC4oeC5iOC4luC4ueC4geC4leC5ieC4reC4hyAo4LiV4LmJ4Lit4LiH4Lih4Li14LiE4LmI4LiyID49MDc1NSDguYHguKXguLAgPD0wNzc1KSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAibWFpbnRhaW5lciBzY3JpcHQgYCUuNTBzJyBpcyBub3QgYSBwbGFpbiBmaWxlIG9yIHN5bWxpbmsiCittc2dzdHIgIuC4quC4hOC4o+C4tOC4m+C4leC5jOC4nOC4ueC5ieC4lOC4ueC5geC4peC5geC4nuC4geC5gOC4geC4iCBgJS41MHMnIOC5hOC4oeC5iOC5g+C4iuC5iOC5geC4n+C5ieC4oeC4mOC4o+C4o+C4oeC4lOC4suC4q+C4o+C4t+C4rSBzeW1saW5rIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjIwNworIywgYy1mb3JtYXQKK21zZ2lkICIiCisibWFpbnRhaW5lciBzY3JpcHQgYCUuNTBzJyBoYXMgYmFkIHBlcm1pc3Npb25zICUwM2xvIChtdXN0IGJlID49MDU1NSBhbmQgIgorIjw9MDc3NSkiCittc2dzdHIgIiIKKyLguKrguITguKPguLTguJvguJXguYzguJzguLnguYnguJTguLnguYHguKXguYHguJ7guIHguYDguIHguIggYCUuNTBzJyDguKHguLXguIHguLLguKPguIHguLPguKvguJnguJTguKrguLTguJfguJjguLTguYwgJTAzbG8g4LiL4Li24LmI4LiH4LmE4Lih4LmI4LiW4Li54LiB4LiV4LmJ4Lit4LiHICjguJXguYnguK3guIfguKHguLXguITguYjguLIgPj0wNTU1IOC5geC4peC4sCAiCisiPD0wNzc1KSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAibWFpbnRhaW5lciBzY3JpcHQgYCUuNTBzJyBpcyBub3Qgc3RhdHRhYmxlIgorbXNnc3RyICLguKrguITguKPguLTguJvguJXguYzguJzguLnguYnguJTguLnguYHguKXguYHguJ7guIHguYDguIHguIggYCUuNTBzJyDguYTguKHguYjguKrguLLguKHguLLguKPguJYgc3RhdCDguYTguJTguYkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjM3Cittc2dpZCAiZXJyb3Igb3BlbmluZyBjb25mZmlsZXMgZmlsZSIKK21zZ3N0ciAi4LmA4LiB4Li04LiU4LiC4LmJ4Lit4Lic4Li04LiU4Lie4Lil4Liy4LiU4LiC4LiT4Liw4LmA4Lib4Li04LiU4LmB4Lif4LmJ4LihIGNvbmZmaWxlcyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNDYKK21zZ2lkICJlbXB0eSBzdHJpbmcgZnJvbSBmZ2V0cyByZWFkaW5nIGNvbmZmaWxlcyIKK21zZ3N0ciAi4LmE4LiU4LmJ4Lij4Lix4Lia4LiC4LmJ4Lit4LiE4Lin4Liy4Lih4LmA4Lib4Lil4LmI4Liy4LiI4Liy4LiBIGZnZXRzIOC4guC4k+C4sOC4reC5iOC4suC4mSBjb25mZmlsZXMiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjUxCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIG5hbWUgJyUuNTBzLi4uJyBpcyB0b28gbG9uZywgb3IgbWlzc2luZyBmaW5hbCBuZXdsaW5lIgorbXNnc3RyICLguIrguLfguYjguK3guYHguJ/guYnguKHguITguYjguLLguJXguLHguYnguIcgJyUuNTBzLi4uJyDguKLguLLguKfguYDguIHguLTguJnguYTguJsg4Lir4Lij4Li34Lit4LmE4Lih4LmI4Lih4Li14Lit4Lix4LiB4LiC4Lij4Liw4LiC4Li24LmJ4LiZ4Lia4Lij4Lij4LiX4Lix4LiU4LmD4Lir4Lih4LmI4Lib4Li04LiU4LiX4LmJ4Liy4LiiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI2NAorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBmaWxlbmFtZSAnJXMnIGNvbnRhaW5zIHRyYWlsaW5nIHdoaXRlIHNwYWNlcyIKK21zZ3N0ciAi4LiK4Li34LmI4Lit4LmB4Lif4LmJ4Lih4LiE4LmI4Liy4LiV4Lix4LmJ4LiHICclcycg4Lih4Li14LiK4LmI4Lit4LiH4Lin4LmI4Liy4LiH4LiX4LmJ4Liy4Lii4Lia4Lij4Lij4LiX4Lix4LiUIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI2NgorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBgJS4yNTBzJyBkb2VzIG5vdCBhcHBlYXIgaW4gcGFja2FnZSIKK21zZ3N0ciAi4LmE4Lih4LmI4Lie4Lia4LmB4Lif4LmJ4Lih4LiE4LmI4Liy4LiV4Lix4LmJ4LiHIGAlLjI1MHMnIOC5g+C4meC5geC4nuC4geC5gOC4geC4iCIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgYCUuMjUwcycgaXMgbm90IHN0YXR0YWJsZSIKK21zZ3N0ciAi4LmB4Lif4LmJ4Lih4LiE4LmI4Liy4LiV4Lix4LmJ4LiHIGAlLjI1MHMnIOC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4liBzdGF0IOC5hOC4lOC5iSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgJyVzJyBpcyBub3QgYSBwbGFpbiBmaWxlIgorbXNnc3RyICLguYHguJ/guYnguKHguITguYjguLLguJXguLHguYnguIcgJyVzJyDguYTguKHguYjguYPguIrguYjguYHguJ/guYnguKHguJvguIHguJXguLQiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6Mjc0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIG5hbWUgJyVzJyBpcyBkdXBsaWNhdGVkIgorbXNnc3RyICLguIrguLfguYjguK3guYHguJ/guYnguKHguITguYjguLLguJXguLHguYnguIcgJyVzJyDguIvguYnguLPguIHguLHguJkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6Mjg3Cittc2dpZCAiZXJyb3IgcmVhZGluZyBjb25mZmlsZXMgZmlsZSIKK21zZ3N0ciAi4LmA4LiB4Li04LiU4LiC4LmJ4Lit4Lic4Li04LiU4Lie4Lil4Liy4LiU4LiC4LiT4Liw4Lit4LmI4Liy4LiZ4LmB4Lif4LmJ4LihIGNvbmZmaWxlcyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzozMzkKK21zZ2lkICJwYWNrYWdlIG5hbWUgaGFzIGNoYXJhY3RlcnMgdGhhdCBhcmVuJ3QgbG93ZXJjYXNlIGFscGhhbnVtcyBvciBgLSsuJyIKK21zZ3N0ciAi4LiK4Li34LmI4Lit4LmB4Lie4LiB4LmA4LiB4LiI4Lih4Li14Lit4Lix4LiB4LiC4Lij4Liw4LiX4Li14LmI4LmE4Lih4LmI4LmD4LiK4LmI4LiV4Lix4Lin4Lit4Lix4LiB4Lip4Lij4Lie4Li04Lih4Lie4LmM4LmA4Lil4LmH4LiBIOC4leC4seC4p+C5gOC4peC4giDguKvguKPguLfguK0gYC0rLiciCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MzQxCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgY29udGFpbnMgdXNlci1kZWZpbmVkIFByaW9yaXR5IHZhbHVlICclcyciCittc2dzdHIgIiclcycg4Lih4Li14LiE4LmI4LiyIFByaW9yaXR5ICclcycg4LiX4Li14LmI4Lic4Li54LmJ4LmD4LiK4LmJ4LiB4Liz4Lir4LiZ4LiU4LmA4Lit4LiHIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjM0NworIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIGNvbnRhaW5zIHVzZXItZGVmaW5lZCBmaWVsZCAnJXMnIgorbXNnc3RyICInJXMnIOC4oeC4teC5gOC4guC4leC4guC5ieC4reC4oeC4ueC4pSAnJXMnIOC4l+C4teC5iOC4nOC4ueC5ieC5g+C4iuC5ieC4geC4s+C4q+C4meC4lOC5gOC4reC4hyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzozNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgJWQgd2FybmluZyBhYm91dCB0aGUgY29udHJvbCBmaWxlKHMpXG4iCittc2dpZF9wbHVyYWwgImlnbm9yaW5nICVkIHdhcm5pbmdzIGFib3V0IHRoZSBjb250cm9sIGZpbGUocylcbiIKK21zZ3N0clswXSAi4LiI4Liw4Lil4Liw4LmA4Lil4Lii4LiE4Liz4LmA4LiV4Li34Lit4LiZICVkIOC4o+C4suC4ouC4geC4suC4o+C5gOC4geC4teC5iOC4ouC4p+C4geC4seC4muC5geC4n+C5ieC4oeC4hOC4p+C4muC4hOC4uOC4oVxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQwMyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQyOQorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhIDxkaXJlY3Rvcnk+IGFyZ3VtZW50IgorbXNnc3RyICItLSVzIOC4leC5ieC4reC4h+C4geC4suC4o+C4reC4suC4o+C5jOC4geC4tOC4p+C5gOC4oeC4meC4leC5jCA8ZGlyZWN0b3J5PiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MDkKK21zZ2lkICItLWJ1aWxkIHRha2VzIGF0IG1vc3QgdHdvIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS1idWlsZCDguJXguYnguK3guIfguIHguLLguKPguK3guLLguKPguYzguIHguLTguKfguYDguKHguJnguJXguYzguYTguKHguYjguYDguIHguLTguJnguKrguK3guIfguJXguLHguKciCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDEzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGVjayBmb3IgZXhpc3RlbmNlIG9mIGFyY2hpdmUgYCUuMjUwcyciCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC4leC4o+C4p+C4iOC4quC4reC4muC4geC4suC4o+C4oeC4teC4reC4ouC4ueC5iOC4guC4reC4h+C5geC4nuC4geC5gOC4geC4iCBgJS4yNTBzJyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzAKK21zZ2lkICJ0YXJnZXQgaXMgZGlyZWN0b3J5IC0gY2Fubm90IHNraXAgY29udHJvbCBmaWxlIGNoZWNrIgorbXNnc3RyICLguYDguJvguYnguLLguKvguKHguLLguKLguYDguJvguYfguJnguYTguJTguYDguKPguIHguJfguK3guKPguLUgLSDguYTguKHguYjguKrguLLguKHguLLguKPguJbguILguYnguLLguKHguIHguLLguKPguJXguKPguKfguIjguKrguK3guJrguYHguJ/guYnguKHguITguKfguJrguITguLjguKEiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDMxCittc2dpZCAibm90IGNoZWNraW5nIGNvbnRlbnRzIG9mIGNvbnRyb2wgYXJlYS4iCittc2dzdHIgIuC4iOC4sOC5hOC4oeC5iOC4leC4o+C4p+C4iOC4quC4reC4muC5gOC4meC4t+C5ieC4reC4q+C4suC4guC4reC4h+C4nuC4t+C5ieC4meC4l+C4teC5iOC4hOC4p+C4muC4hOC4uOC4oSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZy1kZWI6IGJ1aWxkaW5nIGFuIHVua25vd24gcGFja2FnZSBpbiAnJXMnLlxuIgorbXNnc3RyICJkcGtnLWRlYjog4LiB4Liz4Lil4Lix4LiH4Liq4Lij4LmJ4Liy4LiH4LmB4Lie4LiB4LmA4LiB4LiI4LmE4Lih4LmI4LiX4Lij4Liy4Lia4LiK4Li34LmI4Lit4LmD4LiZICclcydcbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZy1kZWI6IGJ1aWxkaW5nIHBhY2thZ2UgYCVzJyBpbiBgJXMnLlxuIgorbXNnc3RyICJkcGtnLWRlYjog4LiB4Liz4Lil4Lix4LiH4Liq4Lij4LmJ4Liy4LiH4LmB4Lie4LiB4LmA4LiB4LiIIGAlcycg4LmD4LiZIGAlcydcbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0NjcgZHBrZy1kZWIvYnVpbGQuYzo1MjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byBtYWtlIHRtcGZpbGUgKGRhdGEpIgorbXNnaWQgImZhaWxlZCB0byBtYWtlIHRlbXBvcmFyeSBmaWxlICglcykiCittc2dzdHIgIuC4quC4o+C5ieC4suC4h+C5geC4n+C5ieC4oeC4iuC4seC5iOC4p+C4hOC4o+C4suC4pyAoZGF0YSkg4LmE4Lih4LmI4Liq4Liz4LmA4Lij4LmH4LiIIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ2NyBkcGtnLWRlYi9idWlsZC5jOjQ3MCBkcGtnLWRlYi9idWlsZC5jOjQ3NworIzogZHBrZy1kZWIvYnVpbGQuYzo0ODUgZHBrZy1kZWIvYnVpbGQuYzo0OTQgZHBrZy1kZWIvYnVpbGQuYzo0OTkKKyMsIGZ1enp5CisjfCBtc2dpZCAiY29udHJvbCBhcmVhIgorbXNnaWQgImNvbnRyb2wgbWVtYmVyIgorbXNnc3RyICLguILguYnguK3guKHguLnguKXguKrguYjguKfguJnguITguKfguJrguITguLjguKEiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDcwIGRwa2ctZGViL2J1aWxkLmM6NTI0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gdW5saW5rIHRtcGZpbGUgKGRhdGEpLCAlcyIKK21zZ2lkICJmYWlsZWQgdG8gdW5saW5rIHRlbXBvcmFyeSBmaWxlICglcyksICVzIgorbXNnc3RyICLguKXguJrguYHguJ/guYnguKHguIrguLHguYjguKfguITguKPguLLguKcgKGRhdGEpIOC5hOC4oeC5iOC4quC4s+C5gOC4o+C5h+C4iDogJXMiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDg1IGRwa2ctZGViL2J1aWxkLmM6NTkzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gcmV3aW5kIHRtcGZpbGUgKGRhdGEpIgorbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdGVtcG9yYXJ5IGZpbGUgKCVzKSIKK21zZ3N0ciAi4LiB4Lij4Lit4LmB4Lif4LmJ4Lih4LiK4Lix4LmI4Lin4LiE4Lij4Liy4LinIChkYXRhKSDguIHguKXguLHguJrguYTguKHguYjguKrguLPguYDguKPguYfguIgiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDk0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gZnN0YXQgYXIgbWVtYmVyIGZpbGUgKCVzKSIKK21zZ2lkICJmYWlsZWQgdG8gc3RhdCB0ZW1wb3JhcnkgZmlsZSAoJXMpIgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJYgZnN0YXQg4LmB4Lif4LmJ4Lih4Liq4Lih4Liy4LiK4Li04LiBIGFyICglcykiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDk4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHdyaXRpbmcgYCVzJyIKK21zZ3N0ciAi4LmA4LiB4Li04LiU4LiC4LmJ4Lit4Lic4Li04LiU4Lie4Lil4Liy4LiU4LiC4LiT4Liw4LmA4LiC4Li14Lii4LiZIGAlcyciCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTIxIGRwa2ctZGViL2J1aWxkLmM6NTI0IGRwa2ctZGViL2J1aWxkLmM6NTQ2CisjOiBkcGtnLWRlYi9idWlsZC5jOjU3MiBkcGtnLWRlYi9idWlsZC5jOjU4MCBkcGtnLWRlYi9idWlsZC5jOjU5MworIywgZnV6enkKKyN8IG1zZ2lkICJiZXR3ZWVuIG1lbWJlcnMiCittc2dpZCAiZGF0YSBtZW1iZXIiCittc2dzdHIgIuC4o+C4reC4ouC4leC5iOC4reC4quC4oeC4suC4iuC4tOC4gSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo1NzEgZHBrZy1kZWIvYnVpbGQuYzo1ODAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byB3cml0ZSBmaWxlbmFtZSB0byB0YXIgcGlwZSAoZGF0YSkiCittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIGZpbGVuYW1lIHRvIHRhciBwaXBlICglcykiCittc2dzdHIgIuC5gOC4guC4teC4ouC4meC4iuC4t+C5iOC4reC5geC4n+C5ieC4oeC4peC4h+C5hOC4m+C4m+C5jOC5hOC4m+C4ouC4seC4hyB0YXIg4LmE4Lih4LmI4Liq4Liz4LmA4Lij4LmH4LiIIChkYXRhKSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo1ODQKK21zZ2lkICI8Y29tcHJlc3M+IGZyb20gdGFyIC1jZiIKK21zZ3N0ciAiPOC4muC4teC4muC4reC4seC4lD4g4LiI4Liy4LiBIHRhciAtY2YiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzo2MSBkcGtnLWRlYi9leHRyYWN0LmM6NjMKK21zZ2lkICJzaGVsbCBjb21tYW5kIHRvIG1vdmUgZmlsZXMiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjcwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGZpbGUgaW4gJXMgaW4gJS4yNTVzIgorbXNnc3RyICLguJ7guJrguIjguLjguJTguIjguJrguYHguJ/guYnguKHguIHguYjguK3guJnguIHguLPguKvguJnguJTguJfguLXguYglc+C5g+C4mSAlLjI1NXMiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzo3MgorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciByZWFkaW5nICVzIGZyb20gZmlsZSAlLjI1NXMiCittc2dzdHIgIuC5gOC4geC4tOC4lOC4guC5ieC4reC4nOC4tOC4lOC4nuC4peC4suC4lOC4guC4k+C4sOC4reC5iOC4suC4mSVz4LiI4Liy4LiB4LmB4Lif4LmJ4LihICUuMjU1cyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjEyNQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCBhcmNoaXZlIGAlLjI1NXMnIgorbXNnc3RyICLguK3guYjguLLguJnguYHguJ7guIHguYDguIHguIggYCUuMjU1cycg4LmE4Lih4LmI4Liq4Liz4LmA4Lij4LmH4LiIIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTI3Cittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGFyY2hpdmUiCittc2dzdHIgImZzdGF0IOC5geC4nuC4geC5gOC4geC4iOC5hOC4oeC5iOC4quC4s+C5gOC4o+C5h+C4iCIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjEzMQorIywgZnV6enkKKyN8IG1zZ2lkICJhcmNoaXZlIGhhcyBubyBkb3QgaW4gdmVyc2lvbiBudW1iZXIiCittc2dpZCAiYXJjaGl2ZSBtYWdpYyB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAi4LmB4Lie4LiB4LmA4LiB4LiI4LmE4Lih4LmI4Lih4Li14LiI4Li44LiU4LmD4LiZ4LmA4Lil4LiC4Lij4Li44LmI4LiZIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTQzCisjLCBmdXp6eQorI3wgbXNnaWQgImFyY2hpdmUgaGFzIG5vIG5ld2xpbmVzIGluIGhlYWRlciIKK21zZ2lkICJhcmNoaXZlIG1lbWJlciBoZWFkZXIiCittc2dzdHIgIuC5geC4nuC4geC5gOC4geC4iOC5hOC4oeC5iOC4oeC4teC4reC4seC4geC4guC4o+C4sOC4guC4tuC5ieC4meC4muC4o+C4o+C4l+C4seC4lOC5g+C4q+C4oeC5iOC5g+C4meC4guC5ieC4reC4oeC4ueC4peC4quC5iOC4p+C4meC4q+C4seC4pyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE0OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIHBhcnQgbnVtYmVyIgorbXNnaWQgImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBhcmNoaXZlIGhlYWRlciBtYWdpYyIKK21zZ3N0ciAi4LmB4Lif4LmJ4LihIGAlLjI1MHMnIOC5gOC4quC4teC4ouC4q+C4suC4oiAtIOC4q+C4oeC4suC4ouC5gOC4peC4guC4quC5iOC4p+C4meC4ouC5iOC4reC4ouC5gOC4m+C5h+C4meC4hOC5iOC4suC4l+C4teC5iOC5g+C4iuC5ieC5hOC4oeC5iOC5hOC4lOC5iSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE1NQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIG5vdCBhIGRlYmlhbiBiaW5hcnkgYXJjaGl2ZSAodHJ5IGRwa2ctc3BsaXQ/KSIKK21zZ3N0ciAi4LmB4Lif4LmJ4LihIGAlLjI1MHMnIOC5hOC4oeC5iOC5g+C4iuC5iOC5geC4nuC4geC5gOC4geC4iOC5hOC4muC4meC4suC4o+C4teC4guC4reC4h+C5gOC4lOC5gOC4muC4teC4ouC4mSAo4Lil4Lit4LiHIGRwa2ctc3BsaXQg4LmE4Lir4LihPykiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNTkKKyMsIGZ1enp5CisjfCBtc2dpZCAiYXJjaGl2ZSBoYXMgbm8gZG90IGluIHZlcnNpb24gbnVtYmVyIgorbXNnaWQgImFyY2hpdmUgaW5mb3JtYXRpb24gaGVhZGVyIG1lbWJlciIKK21zZ3N0ciAi4LmB4Lie4LiB4LmA4LiB4LiI4LmE4Lih4LmI4Lih4Li14LiI4Li44LiU4LmD4LiZ4LmA4Lil4LiC4Lij4Li44LmI4LiZIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTYyCittc2dpZCAiYXJjaGl2ZSBoYXMgbm8gbmV3bGluZXMgaW4gaGVhZGVyIgorbXNnc3RyICLguYHguJ7guIHguYDguIHguIjguYTguKHguYjguKHguLXguK3guLHguIHguILguKPguLDguILguLbguYnguJnguJrguKPguKPguJfguLHguJTguYPguKvguKHguYjguYPguJnguILguYnguK3guKHguLnguKXguKrguYjguKfguJnguKvguLHguKciCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNjUKK21zZ2lkICJhcmNoaXZlIGhhcyBubyBkb3QgaW4gdmVyc2lvbiBudW1iZXIiCittc2dzdHIgIuC5geC4nuC4geC5gOC4geC4iOC5hOC4oeC5iOC4oeC4teC4iOC4uOC4lOC5g+C4meC5gOC4peC4guC4o+C4uOC5iOC4mSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE2OAorIywgYy1mb3JtYXQKK21zZ2lkICJhcmNoaXZlIHZlcnNpb24gJS4yNTBzIG5vdCB1bmRlcnN0b29kLCBnZXQgbmV3ZXIgZHBrZy1kZWIiCittc2dzdHIgIuC5hOC4oeC5iOC5gOC4guC5ieC4suC5g+C4iOC4o+C4uOC5iOC4meC5geC4nuC4geC5gOC4geC4iCAlLjI1MHMg4LiB4Lij4Li44LiT4Liy4LmD4LiK4LmJIGRwa2ctZGViIOC4o+C4uOC5iOC4meC5g+C4q+C4oeC5iCIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE3OSBkcGtnLWRlYi9leHRyYWN0LmM6MjA1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJza2lwcGVkIG1lbWJlciBkYXRhIGZyb20gJXMiCittc2dpZCAic2tpcHBlZCBhcmNoaXZlIG1lbWJlciBkYXRhIGZyb20gJXMiCittc2dzdHIgIuC4iOC4sOC4guC5ieC4suC4oeC4guC5ieC4reC4oeC4ueC4peC4quC4oeC4suC4iuC4tOC4geC5g+C4mSAlcyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE5NAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZSBgJS4yNTBzJyBjb250YWlucyB1bnVuZGVyc3Rvb2QgZGF0YSBtZW1iZXIgJS4qcywgZ2l2aW5nIHVwIgorbXNnaWQgImFyY2hpdmUgJyUuMjUwcycgY29udGFpbnMgbm90IHVuZGVyc3Rvb2QgZGF0YSBtZW1iZXIgJS4qcywgZ2l2aW5nIHVwIgorbXNnc3RyICLguYHguJ/guYnguKEgYCUuMjUwcycg4Lih4Li14LiC4LmJ4Lit4Lih4Li54Lil4Liq4Lih4Liy4LiK4Li04LiBICUuKnMg4LiX4Li14LmI4LmE4Lih4LmI4LmA4LiC4LmJ4Liy4LmD4LiIIOC4guC4reC4ouC4geC5gOC4peC4tOC4gSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE5OQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZSBgJS4yNTBzJyBjb250YWlucyB0d28gY29udHJvbCBtZW1iZXJzLCBnaXZpbmcgdXAiCittc2dpZCAiYXJjaGl2ZSAnJS4yNTBzJyBjb250YWlucyB0d28gY29udHJvbCBtZW1iZXJzLCBnaXZpbmcgdXAiCittc2dzdHIgIuC5geC4n+C5ieC4oSBgJS4yNTBzJyDguKHguLXguKrguKHguLLguIrguLTguIHguILguYnguK3guKHguLnguKXguITguKfguJrguITguLjguKHguKrguK3guIfguIrguLjguJQg4LiC4Lit4Lii4LiB4LmA4Lil4Li04LiBIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjE0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiIG5ldyBkZWJpYW4gcGFja2FnZSwgdmVyc2lvbiAlcy5cbiIKKyN8ICIgc2l6ZSAlbGQgYnl0ZXM6IGNvbnRyb2wgYXJjaGl2ZT0gJXppIGJ5dGVzLlxuIgorbXNnaWQgIiIKKyIgbmV3IGRlYmlhbiBwYWNrYWdlLCB2ZXJzaW9uICVzLlxuIgorIiBzaXplICVqZCBieXRlczogY29udHJvbCBhcmNoaXZlPSAlamQgYnl0ZXMuXG4iCittc2dzdHIgIiIKKyIg4LmB4Lie4LiB4LmA4LiB4LiI4LmA4LiU4LmA4Lia4Li14Lii4LiZ4LmB4Lia4Lia4LmD4Lir4Lih4LmILCDguKPguLjguYjguJkgJXNcbiIKKyIg4LiC4LiZ4Liy4LiUICVsZCDguYTguJrguJXguYw6IOC4iuC4uOC4lOC4guC5ieC4reC4oeC4ueC4peC4hOC4p+C4muC4hOC4uOC4oT0gJXppIOC5hOC4muC4leC5jFxuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjMyCittc2dpZCAiYXJjaGl2ZSBjb250cm9sIG1lbWJlciBzaXplIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyMzUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImFyY2hpdmUgaGFzIG1hbGZvcm1hdHRlZCBjb250cm9sIGxlbmd0aCBgJXMnIgorbXNnaWQgImFyY2hpdmUgaGFzIG1hbGZvcm1hdHRlZCBjb250cm9sIG1lbWJlciBzaXplICclcyciCittc2dzdHIgIuC5geC4nuC4geC5gOC4geC4iOC4oeC4teC4hOC4p+C4suC4oeC4ouC4suC4p+C4guC5ieC4reC4oeC4ueC4peC4hOC4p+C4muC4hOC4uOC4oeC4nOC4tOC4lOC4o+C4ueC4m+C5geC4muC4miBgJXMnIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjQyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJza2lwcGVkIG1lbWJlciBkYXRhIGZyb20gJXMiCittc2dpZCAic2tpcHBlZCBhcmNoaXZlIGNvbnRyb2wgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ3N0ciAi4LiI4Liw4LiC4LmJ4Liy4Lih4LiC4LmJ4Lit4Lih4Li54Lil4Liq4Lih4Liy4LiK4Li04LiB4LmD4LiZICVzIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjQ2CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiIG9sZCBkZWJpYW4gcGFja2FnZSwgdmVyc2lvbiAlcy5cbiIKKyN8ICIgc2l6ZSAlbGQgYnl0ZXM6IGNvbnRyb2wgYXJjaGl2ZT0gJXppLCBtYWluIGFyY2hpdmU9ICVsZC5cbiIKK21zZ2lkICIiCisiIG9sZCBkZWJpYW4gcGFja2FnZSwgdmVyc2lvbiAlcy5cbiIKKyIgc2l6ZSAlamQgYnl0ZXM6IGNvbnRyb2wgYXJjaGl2ZT0gJWpkLCBtYWluIGFyY2hpdmU9ICVqZC5cbiIKK21zZ3N0ciAiIgorIiDguYHguJ7guIHguYDguIHguIjguYDguJTguYDguJrguLXguKLguJnguYHguJrguJrguYDguIHguYjguLIsIOC4o+C4uOC5iOC4mSAlc1xuIgorIiDguILguJnguLLguJQgJWxkIOC5hOC4muC4leC5jDog4LiK4Li44LiU4LiC4LmJ4Lit4Lih4Li54Lil4LiE4Lin4Lia4LiE4Li44LihPSAlemksIOC4iuC4uOC4lOC4guC5ieC4reC4oeC4ueC4peC4q+C4peC4seC4gT0gJWxkXG4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2ctZGViOiBmaWxlIGxvb2tzIGxpa2UgaXQgbWlnaHQgYmUgYW4gYXJjaGl2ZSB3aGljaCBoYXMgYmVlblxuIgorImRwa2ctZGViOiAgICBjb3JydXB0ZWQgYnkgYmVpbmcgZG93bmxvYWRlZCBpbiBBU0NJSSBtb2RlXG4iCittc2dzdHIgIiIKKyJkcGtnLWRlYjog4LmB4Lif4LmJ4Lih4LiU4Li54LmA4Lir4Lih4Li34Lit4LiZ4LiI4Liw4LmA4Lib4LmH4LiZ4LmB4Lie4LiB4LmA4LiB4LiI4LiX4Li14LmI4LmE4LiU4LmJ4Lij4Lix4Lia4LiE4Lin4Liy4Lih4LmA4Liq4Li14Lii4Lir4Liy4Lii4LiC4LiT4Liw4LiU4Liy4Lin4LiZ4LmM4LmC4Lir4Lil4LiUXG4iCisiZHBrZy1kZWI6ICAgIOC5g+C4meC5guC4q+C4oeC4lCBBU0NJSVxuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjU5CisjLCBjLWZvcm1hdAorbXNnaWQgImAlLjI1NXMnIGlzIG5vdCBhIGRlYmlhbiBmb3JtYXQgYXJjaGl2ZSIKK21zZ3N0ciAiYCUuMjU1cycg4LmE4Lih4LmI4LmD4LiK4LmI4LmB4Lie4LiB4LmA4LiB4LiI4LmD4LiZ4Lij4Li54Lib4LmB4Lia4Lia4LiC4Lit4LiH4LmA4LiU4LmA4Lia4Li14Lii4LiZIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjY2Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIHRvIHBpcGUgaW4gY29weSIKK21zZ3N0ciAi4LmA4LiC4Li14Lii4LiZ4Lil4LiH4LmE4Lib4Lib4LmM4LmE4Lih4LmI4Liq4Liz4LmA4Lij4LmH4LiI4LmD4LiZIGNvcHkiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNjgKK21zZ2lkICJmYWlsZWQgdG8gY2xvc2UgcGlwZSBpbiBjb3B5IgorbXNnc3RyICLguJvguLTguJTguYTguJvguJvguYzguYTguKHguYjguKrguLPguYDguKPguYfguIjguYPguJkgY29weSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI4NAorbXNnaWQgImRhdGEiCittc2dzdHIgImRhdGEiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozMDcKK21zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gZGlyZWN0b3J5IgorbXNnc3RyICLguYDguJvguKXguLXguYjguKLguJnguYDguILguYnguLLguYTguJTguYDguKPguIHguJfguK3guKPguLXguYTguKHguYjguKrguLPguYDguKPguYfguIgiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozMTAKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGRpcmVjdG9yeSIKK21zZ3N0ciAi4Liq4Lij4LmJ4Liy4LiH4LmE4LiU4LmA4Lij4LiB4LiX4Lit4Lij4Li14LmE4Lih4LmI4Liq4Liz4LmA4Lij4LmH4LiIIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzEyCittc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIGRpcmVjdG9yeSBhZnRlciBjcmVhdGluZyBpdCIKK21zZ3N0ciAi4LmA4Lib4Lil4Li14LmI4Lii4LiZ4LmA4LiC4LmJ4Liy4LmE4LiU4LmA4Lij4LiB4LiX4Lit4Lij4Li14Lir4Lil4Lix4LiH4LiI4Liy4LiB4Liq4Lij4LmJ4Liy4LiH4LmB4Lil4LmJ4Lin4LmE4Lih4LmI4Liq4Liz4LmA4Lij4LmH4LiIIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzIzCittc2dpZCAiPGRlY29tcHJlc3M+IgorbXNnc3RyICI84LiE4Lil4Liy4Lii4Lia4Li14Lia4Lit4Lix4LiUPiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMyNQorbXNnaWQgInBhc3RlIgorbXNnc3RyICLguYHguJvguLAiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozNDIgZHBrZy1kZWIvZXh0cmFjdC5jOjM2MyBkcGtnLWRlYi9leHRyYWN0LmM6NDAyCisjOiBkcGtnLWRlYi9pbmZvLmM6NzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhIC5kZWIgZmlsZW5hbWUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMg4LiV4LmJ4Lit4LiH4Lih4Li14Lit4Liy4Lij4LmM4LiB4Li04Lin4LmA4Lih4LiZ4LiV4LmM4LmA4Lib4LmH4LiZ4LiK4Li34LmI4Lit4LmB4Lif4LmJ4LihIC5kZWIg4LiU4LmJ4Lin4LiiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzQ3IGRwa2ctZGViL2V4dHJhY3QuYzo0MDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIi0tJXMgbmVlZHMgYSB0YXJnZXQgZGlyZWN0b3J5LlxuIgorIlBlcmhhcHMgeW91IHNob3VsZCBiZSB1c2luZyBkcGtnIC0taW5zdGFsbCA/IgorbXNnc3RyICIiCisiLS0lcyDguJXguYnguK3guIfguKPguLDguJrguLjguYTguJTguYDguKPguIHguJfguK3guKPguLXguJvguKXguLLguKLguJfguLLguIfguJTguYnguKfguKJcbiIKKyLguJrguLLguIfguJfguLUg4LiE4Li44LiT4LiE4Lin4Lij4LmD4LiK4LmJIGRwa2cgLS1pbnN0YWxsIOC5hOC4q+C4oT8iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozNTAgZHBrZy1kZWIvZXh0cmFjdC5jOjQxMAorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIHRha2VzIGF0IG1vc3QgdHdvIGFyZ3VtZW50cyAoLmRlYiBhbmQgZGlyZWN0b3J5KSIKK21zZ3N0ciAiLS0lcyDguKPguLHguJrguK3guLLguKPguYzguIHguLTguKfguYDguKHguJnguJXguYzguYTguKHguYjguYDguIHguLTguJnguKrguK3guIfguJXguLHguKcgKC5kZWIg4LmB4Lil4Liw4LmE4LiU4LmA4Lij4LiB4LiX4Lit4Lij4Li1KSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjM2NQorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIHRha2VzIG9ubHkgb25lIGFyZ3VtZW50ICguZGViIGZpbGVuYW1lKSIKK21zZ3N0ciAiLS0lcyDguKPguLHguJrguK3guLLguKPguYzguIHguLTguKfguYDguKHguJnguJXguYzguYHguITguYjguJXguLHguKfguYDguJTguLXguKLguKcgKOC4iuC4t+C5iOC4reC5geC4n+C5ieC4oSAuZGViKSIKKworIzogZHBrZy1kZWIvaW5mby5jOjYzCittc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIGAvJyBmb3IgY2xlYW51cCIKK21zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiWIGNoZGlyIOC5hOC4m+C4ouC4seC4hyBgLycg4LmA4Lie4Li34LmI4Lit4LmA4LiB4LmH4Lia4LiB4Lin4Liy4LiUIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTA2CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW5ub3Qgc3RhdCBmaWxlICclcyciCittc2dpZCAiY29udHJvbCBmaWxlICclcyciCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4liBzdGF0IOC5geC4n+C5ieC4oSAnJXMnIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTEwCisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2ctZGViOiBgJS4yNTVzJyBjb250YWlucyBubyBjb250cm9sIGNvbXBvbmVudCBgJS4yNTVzJ1xuIgorbXNnc3RyICJkcGtnLWRlYjogYCUuMjU1cycg4LmE4Lih4LmI4Lih4Li14Lit4LiH4LiE4LmM4Lib4Lij4Liw4LiB4Lit4Lia4Liq4LmI4Lin4LiZ4LiE4Lin4Lia4LiE4Li44LihIGAlLjI1NXMnXG4iCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAib3BlbiBjb21wb25lbnQgYCUuMjU1cycgKGluICUuMjU1cykgZmFpbGVkIGluIGFuIHVuZXhwZWN0ZWQgd2F5IgorbXNnc3RyICLguYDguJvguLTguJTguK3guIfguITguYzguJvguKPguLDguIHguK3guJogYCUuMjU1cycgKOC5g+C4mSAlLjI1NXMpIOC5hOC4oeC5iOC4quC4s+C5gOC4o+C5h+C4iCDguYLguJTguKLguYTguJTguYnguJzguKXguKXguLHguJ7guJjguYzguJfguLXguYjguYTguKHguYjguITguLLguJTguITguLTguJQiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJWQgcmVxdWVzdGVkIGNvbnRyb2wgY29tcG9uZW50IGlzIG1pc3NpbmciCittc2dpZF9wbHVyYWwgIiVkIHJlcXVlc3RlZCBjb250cm9sIGNvbXBvbmVudHMgYXJlIG1pc3NpbmciCittc2dzdHJbMF0gIuC4reC4h+C4hOC5jOC4m+C4o+C4sOC4geC4reC4muC4quC5iOC4p+C4meC4hOC4p+C4muC4hOC4uOC4oeC4guC4suC4lOC4q+C4suC4ouC5hOC4myAlZCDguKPguLLguKLguIHguLLguKMiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMzkgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQyNAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc2NhbiBkaXJlY3RvcnkgYCUuMjU1cyciCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC4leC4o+C4p+C4iOC4guC5ieC4reC4oeC4ueC4peC5hOC4lOC5gOC4o+C4geC4l+C4reC4o+C4tSBgJS4yNTVzJyIKKworIzogZHBrZy1kZWIvaW5mby5jOjE0OAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc3RhdCBgJS4yNTVzJyAoaW4gYCUuMjU1cycpIgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJYgc3RhdCBgJS4yNTVzJyAo4LmD4LiZIGAlLjI1NXMnKSIKKworIzogZHBrZy1kZWIvaW5mby5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgb3BlbiBgJS4yNTVzJyAoaW4gYCUuMjU1cycpIgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguYDguJvguLTguJQgYCUuMjU1cycgKOC5g+C4mSBgJS4yNTVzJykiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxNjcgZHBrZy1kZWIvaW5mby5jOjE4NSBkcGtnLWRlYi9pbmZvLmM6MTk5CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZWFkIGAlLjI1NXMnIChpbiBgJS4yNTVzJykiCittc2dzdHIgIuC4reC5iOC4suC4mSBgJS4yNTVzJyDguYTguKHguYjguKrguLPguYDguKPguYfguIggKOC5g+C4mSBgJS4yNTVzJykiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxNzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiAlN2xkIGJ5dGVzLCAlNWQgbGluZXMgICAlYyAgJS0yMC4xMjdzICUuMTI3c1xuIgorbXNnaWQgIiAlN2pkIGJ5dGVzLCAlNWQgbGluZXMgICAlYyAgJS0yMC4xMjdzICUuMTI3c1xuIgorbXNnc3RyICIgJTdsZCDguYTguJrguJXguYwsICU1ZCDguJrguKPguKPguJfguLHguJQgICAlYyAgJS0yMC4xMjdzICUuMTI3c1xuIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTc0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgICAgbm90IGEgcGxhaW4gZmlsZSAgICAgICAgICAlLjI1NXNcbiIKK21zZ3N0ciAiICAgICDguYTguKHguYjguYPguIrguYjguYHguJ/guYnguKHguJvguIHguJXguLQgICAgICAgICAgICAgICAgJS4yNTVzXG4iCisKKyM6IGRwa2ctZGViL2luZm8uYzoxODYKK21zZ2lkICIobm8gYGNvbnRyb2wnIGZpbGUgaW4gY29udHJvbCBhcmNoaXZlISlcbiIKK21zZ3N0ciAiKOC5hOC4oeC5iOC4oeC4teC5geC4n+C5ieC4oSBgY29udHJvbCcg4LmD4LiZ4LmB4Lif4LmJ4Lih4LiI4Lix4LiU4LmA4LiB4LmH4Lia4LiC4Lit4LiH4Liq4LmI4Lin4LiZ4LiE4Lin4Lia4LiE4Li44LihISlcbiIKKworIzogZHBrZy1kZWIvaW5mby5jOjIyMgorbXNnaWQgImNvdWxkIG5vdCBvcGVuIHRoZSBgY29udHJvbCcgY29tcG9uZW50IgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguYDguJvguLTguJTguK3guIfguITguYzguJvguKPguLDguIHguK3guJogYGNvbnRyb2wnIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MjYxCittc2dpZCAiZmFpbGVkIGR1cmluZyByZWFkIG9mIGBjb250cm9sJyBjb21wb25lbnQiCittc2dzdHIgIuC5gOC4geC4tOC4lOC4guC5ieC4reC4nOC4tOC4lOC4nuC4peC4suC4lOC4guC4k+C4sOC4reC5iOC4suC4meC4reC4h+C4hOC5jOC4m+C4o+C4sOC4geC4reC4miBgY29udHJvbCciCisKKyM6IGRwa2ctZGViL2luZm8uYzoyNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyB0aGUgJyVzJyBjb21wb25lbnQiCittc2dzdHIgIuC5gOC4geC4tOC4lOC4guC5ieC4reC4nOC4tOC4lOC4nuC4peC4suC4lOC4guC4k+C4sOC4m+C4tOC4lOC4reC4h+C4hOC5jOC4m+C4o+C4sOC4geC4reC4miAnJXMnIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6Mjc4Cittc2dpZCAiRXJyb3IgaW4gZm9ybWF0IgorbXNnc3RyICLguKHguLXguILguYnguK3guJzguLTguJTguJ7guKXguLLguJTguYPguJnguKPguLnguJvguYHguJrguJrguILguYnguK3guKHguLnguKUiCisKKyM6IGRwa2ctZGViL2luZm8uYzozMjgKK21zZ2lkICItLWNvbnRlbnRzIHRha2VzIGV4YWN0bHkgb25lIGFyZ3VtZW50IgorbXNnc3RyICItLWNvbnRlbnRzIOC4o+C4seC4muC4reC4suC4o+C5jOC4geC4tOC4p+C5gOC4oeC4meC4leC5jOC4leC4seC4p+C5gOC4lOC4teC4ouC4pyIKKworIzogZHBrZy1kZWIvbWFpbi5jOjU0CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiBgJXMnIHBhY2thZ2UgYXJjaGl2ZSBiYWNrZW5kIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIuC5geC4muC5h+C4geC5gOC4reC4meC4lOC5jOC4iOC4seC4lOC4geC4suC4o+C5geC4nuC4geC5gOC4geC4iCBgJXMnIOC4guC4reC4h+C5gOC4lOC5gOC4muC4teC4ouC4mSDguKPguLjguYjguJkgJXNcbiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjczCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiQ29tbWFuZHM6XG4iCisjfCAiICAtYnwtLWJ1aWxkIDxkaXJlY3Rvcnk+IFs8ZGViPl0gICBCdWlsZCBhbiBhcmNoaXZlLlxuIgorI3wgIiAgLWN8LS1jb250ZW50cyA8ZGViPiAgICAgICAgICAgICAgTGlzdCBjb250ZW50cy5cbiIKKyN8ICIgIC1JfC0taW5mbyA8ZGViPiBbPGNmaWxlPiAuLi5dICAgIFNob3cgaW5mbyB0byBzdGRvdXQuXG4iCisjfCAiICAtV3wtLXNob3cgPGRlYj4gICAgICAgICAgICAgICAgICBTaG93IGluZm9ybWF0aW9uIG9uIHBhY2thZ2UocylcbiIKKyN8ICIgIC1mfC0tZmllbGQgPGRlYj4gWzxjZmllbGQ+IC4uLl0gIFNob3cgZmllbGQocykgdG8gc3Rkb3V0LlxuIgorI3wgIiAgLWV8LS1jb250cm9sIDxkZWI+IFs8ZGlyZWN0b3J5Pl0gRXh0cmFjdCBjb250cm9sIGluZm8uXG4iCisjfCAiICAteHwtLWV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gICBFeHRyYWN0IGZpbGVzLlxuIgorI3wgIiAgLVh8LS12ZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PiAgRXh0cmFjdCAmIGxpc3QgZmlsZXMuXG4iCisjfCAiICAtLWZzeXMtdGFyZmlsZSA8ZGViPiAgICAgICAgICAgICBPdXRwdXQgZmlsZXN5c3RlbSB0YXJmaWxlLlxuIgorI3wgIlxuIgorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1ifC0tYnVpbGQgPGRpcmVjdG9yeT4gWzxkZWI+XSAgIEJ1aWxkIGFuIGFyY2hpdmUuXG4iCisiICAtY3wtLWNvbnRlbnRzIDxkZWI+ICAgICAgICAgICAgICBMaXN0IGNvbnRlbnRzLlxuIgorIiAgLUl8LS1pbmZvIDxkZWI+IFs8Y2ZpbGU+IC4uLl0gICAgU2hvdyBpbmZvIHRvIHN0ZG91dC5cbiIKKyIgIC1XfC0tc2hvdyA8ZGViPiAgICAgICAgICAgICAgICAgIFNob3cgaW5mb3JtYXRpb24gb24gcGFja2FnZShzKVxuIgorIiAgLWZ8LS1maWVsZCA8ZGViPiBbPGNmaWVsZD4gLi4uXSAgU2hvdyBmaWVsZChzKSB0byBzdGRvdXQuXG4iCisiICAtZXwtLWNvbnRyb2wgPGRlYj4gWzxkaXJlY3Rvcnk+XSBFeHRyYWN0IGNvbnRyb2wgaW5mby5cbiIKKyIgIC14fC0tZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PiAgIEV4dHJhY3QgZmlsZXMuXG4iCisiICAtWHwtLXZleHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+ICBFeHRyYWN0ICYgbGlzdCBmaWxlcy5cbiIKKyIgIC1SfC0tcmF3LWV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEV4dHJhY3QgY29udHJvbCBpbmZvIGFuZCBmaWxlcy5cbiIKKyIgIC0tZnN5cy10YXJmaWxlIDxkZWI+ICAgICAgICAgICAgIE91dHB1dCBmaWxlc3lzdGVtIHRhcmZpbGUuXG4iCisiXG4iCittc2dzdHIgIiIKKyLguITguLPguKrguLHguYjguIc6XG4iCisiICAtYnwtLWJ1aWxkIDxkaXJlY3Rvcnk+IFs8ZGViPl0gICDguKrguKPguYnguLLguIfguYHguJ7guIHguYDguIHguIhcbiIKKyIgIC1jfC0tY29udGVudHMgPGRlYj4gICAgICAgICAgICAgIOC5geC4quC4lOC4h+C4o+C4suC4ouC4iuC4t+C5iOC4reC5geC4n+C5ieC4oeC5g+C4meC5geC4nuC4geC5gOC4geC4iFxuIgorIiAgLUl8LS1pbmZvIDxkZWI+IFs8Y2ZpbGU+IC4uLl0gICAg4LmB4Liq4LiU4LiH4LiC4LmJ4Lit4Lih4Li54Lil4Lit4Lit4LiB4LiX4Liy4LiHIHN0ZG91dFxuIgorIiAgLVd8LS1zaG93IDxkZWI+ICAgICAgICAgICAgICAgICAg4LmB4Liq4LiU4LiH4LiC4LmJ4Lit4Lih4Li54Lil4LiC4Lit4LiH4LmB4Lie4LiB4LmA4LiB4LiIXG4iCisiICAtZnwtLWZpZWxkIDxkZWI+IFs8Y2ZpZWxkPiAuLi5dICDguYHguKrguJTguIfguYDguILguJXguILguYnguK3guKHguLnguKXguK3guK3guIHguJfguLLguIcgc3Rkb3V0XG4iCisiICAtZXwtLWNvbnRyb2wgPGRlYj4gWzxkaXJlY3Rvcnk+XSDguYHguKLguIHguILguYnguK3guKHguLnguKXguITguKfguJrguITguLjguKHguK3guK3guIHguKHguLJcbiIKKyIgIC14fC0tZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PiAgIOC5geC4ouC4geC5geC4n+C5ieC4oeC4leC4tOC4lOC4leC4seC5ieC4h+C4reC4reC4geC4oeC4slxuIgorIiAgLVh8LS12ZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PiAg4LmB4Lii4LiB4LmB4Lif4LmJ4Lih4LiX4Li14LmI4LiV4Li04LiU4LiV4Lix4LmJ4LiH4Lit4Lit4LiB4Lih4LiyIOC4nuC4o+C5ieC4reC4oeC5geC4quC4lOC4h+C4o+C4suC4ouC4iuC4t+C5iOC4reC4lOC5ieC4p+C4olxuIgorIiAgLS1mc3lzLXRhcmZpbGUgPGRlYj4gICAgICAgICAgICAg4LmB4Liq4LiU4LiH4LmB4Lif4LmJ4LihIHRhciDguJfguLXguYjguYPguIrguYnguJXguLTguJTguJXguLHguYnguIfguYHguJ/guYnguKHguYPguJnguKPguLDguJrguJpcbiIKKyJcbiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjkzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyI8ZGViPiBpcyB0aGUgZmlsZW5hbWUgb2YgYSBEZWJpYW4gZm9ybWF0IGFyY2hpdmUuXG4iCisiPGNmaWxlPiBpcyB0aGUgbmFtZSBvZiBhbiBhZG1pbmlzdHJhdGl2ZSBmaWxlIGNvbXBvbmVudC5cbiIKKyI8Y2ZpZWxkPiBpcyB0aGUgbmFtZSBvZiBhIGZpZWxkIGluIHRoZSBtYWluIGBjb250cm9sJyBmaWxlLlxuIgorIlxuIgorbXNnc3RyICIiCisiPGRlYj4g4LiE4Li34Lit4LiK4Li34LmI4Lit4LmB4Lif4LmJ4Lih4LiC4Lit4LiH4LmB4Lie4LiB4LmA4LiB4LiI4LmA4LiU4LmA4Lia4Li14Lii4LiZXG4iCisiPGNmaWxlPiDguITguLfguK3guIrguLfguYjguK3guILguK3guIfguK3guIfguITguYzguJvguKPguLDguIHguK3guJrguYHguJ/guYnguKHguJfguLXguYjguYPguIrguYnguITguKfguJrguITguLjguKHguYHguJ7guIHguYDguIHguIhcbiIKKyI8Y2ZpZWxkPiDguITguLfguK3guIrguLfguYjguK3guYDguILguJXguILguYnguK3guKHguLnguKXguYPguJnguYHguJ/guYnguKEgYGNvbnRyb2wnIOC4q+C4peC4seC4gVxuIgorIlxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6OTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJPcHRpb25zOlxuIgorI3wgIiAgLS1zaG93Zm9ybWF0PTxmb3JtYXQ+ICAgICAgICAgICAgVXNlIGFsdGVybmF0aXZlIGZvcm1hdCBmb3IgLS1zaG93LlxuIgorI3wgIiAgLUQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRW5hYmxlIGRlYnVnZ2luZyBvdXRwdXQuXG4iCisjfCAiICAtLW9sZCwgLS1uZXcgICAgICAgICAgICAgICAgICAgICBTZWxlY3QgYXJjaGl2ZSBmb3JtYXQuXG4iCisjfCAiICAtLW5vY2hlY2sgICAgICAgICAgICAgICAgICAgICAgICBTdXBwcmVzcyBjb250cm9sIGZpbGUgY2hlY2sgKGJ1aWxkICIKKyN8ICJiYWRcbiIKKyN8ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFja2FnZXMpLlxuIgorI3wgIiAgLXojICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU2V0IHRoZSBjb21wcmVzc2lvbiBsZXZlbCB3aGVuICIKKyN8ICJidWlsZGluZy5cbiIKKyN8ICIgIC1aPHR5cGU+ICAgICAgICAgICAgICAgICAgICAgICAgIFNldCB0aGUgY29tcHJlc3Npb24gdHlwZSB1c2VkIHdoZW4gIgorI3wgImJ1aWxkaW5nLlxuIgorI3wgIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBbGxvd2VkIHR5cGVzOiBnemlwLCB4eiwgYnppcDIsICIKKyN8ICJsem1hLCBub25lLlxuIgorI3wgIlxuIgorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1zaG93Zm9ybWF0PTxmb3JtYXQ+ICAgICAgICAgICAgVXNlIGFsdGVybmF0aXZlIGZvcm1hdCBmb3IgLS1zaG93LlxuIgorIiAgLXYsIC0tdmVyYm9zZSAgICAgICAgICAgICAgICAgICAgRW5hYmxlIHZlcmJvc2Ugb3V0cHV0LlxuIgorIiAgLUQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRW5hYmxlIGRlYnVnZ2luZyBvdXRwdXQuXG4iCisiICAtLW9sZCwgLS1uZXcgICAgICAgICAgICAgICAgICAgICBTZWxlY3QgYXJjaGl2ZSBmb3JtYXQuXG4iCisiICAtLW5vY2hlY2sgICAgICAgICAgICAgICAgICAgICAgICBTdXBwcmVzcyBjb250cm9sIGZpbGUgY2hlY2sgKGJ1aWxkIGJhZFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWNrYWdlcykuXG4iCisiICAteiMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTZXQgdGhlIGNvbXByZXNzaW9uIGxldmVsIHdoZW4gYnVpbGRpbmcuXG4iCisiICAtWjx0eXBlPiAgICAgICAgICAgICAgICAgICAgICAgICBTZXQgdGhlIGNvbXByZXNzaW9uIHR5cGUgdXNlZCB3aGVuICIKKyJidWlsZGluZy5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWxsb3dlZCB0eXBlczogZ3ppcCwgeHosIGJ6aXAyLCBsem1hLCAiCisibm9uZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIuC4leC4seC4p+C5gOC4peC4t+C4reC4gTpcbiIKKyIgIC0tc2hvd2Zvcm1hdD084Lij4Li54Lib4LmB4Lia4LiaPiAgICAgICAgICAgICDguIHguLPguKvguJnguJTguKPguLnguJvguYHguJrguJrguIHguLLguKPguYHguKrguJTguIfguILguYnguK3guKHguLnguKXguKrguLPguKvguKPguLHguJrguITguLPguKrguLHguYjguIcgLS1zaG93XG4iCisiICAtRCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDguYHguKrguJTguIfguILguYnguK3guITguKfguLLguKHguKrguLPguKvguKPguLHguJrguJTguLXguJrguLHguYrguIFcbiIKKyIgIC0tb2xkLCAtLW5ldyAgICAgICAgICAgICAgICAgICAgIOC5gOC4peC4t+C4reC4geC4o+C4ueC4m+C5geC4muC4muC4guC5ieC4reC4oeC4ueC4peC5geC4nuC4geC5gOC4geC4iFxuIgorIiAgLS1ub2NoZWNrICAgICAgICAgICAgICAgICAgICAgICAg4LmE4Lih4LmI4LiV4LmJ4Lit4LiH4LiV4Lij4Lin4LiI4Liq4Lit4Lia4LmB4Lif4LmJ4Lih4LiE4Lin4Lia4LiE4Li44LihICjguKrguKPguYnguLLguIfguYHguKXguYnguKfguYTguJTguYnguYHguJ7guIHguYDguIHguIhcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg4LiX4Li14LmI4LmE4Lih4LmI4LiU4Li14LiZ4Lix4LiBKVxuIgorIiAgLXojICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg4LiB4Liz4Lir4LiZ4LiU4Lij4Liw4LiU4Lix4Lia4LiB4Liy4Lij4Lia4Li14Lia4Lit4Lix4LiU4LmA4Lih4Li34LmI4Lit4Liq4Lij4LmJ4Liy4LiH4LmB4Lie4LiB4LmA4LiB4LiIXG4iCisiICAtWjzguIrguJnguLTguJQ+ICAgICAgICAgICAgICAgICAgICAgICAgICDguIHguLPguKvguJnguJTguIrguJnguLTguJTguILguK3guIfguIHguLLguKPguJrguLXguJrguK3guLHguJTguYDguKHguLfguYjguK3guKrguKPguYnguLLguIfguYHguJ7guIHguYDguIHguIhcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg4LiE4LmI4Liy4LiX4Li14LmI4LmD4LiK4LmJ4LmE4LiU4LmJOiBnemlwLCB4eiwgYnppcDIsIGx6bWEsIG5vbmVcbiIKKyJcbiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjEyMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiVXNlIGBkcGtnJyB0byBpbnN0YWxsIGFuZCByZW1vdmUgcGFja2FnZXMgZnJvbSB5b3VyIHN5c3RlbSwgb3JcbiIKKyJgZHNlbGVjdCcgb3IgYGFwdGl0dWRlJyBmb3IgdXNlci1mcmllbmRseSBwYWNrYWdlIG1hbmFnZW1lbnQuICBQYWNrYWdlc1xuIgorInVucGFja2VkIHVzaW5nIGBkcGtnLWRlYiAtLWV4dHJhY3QnIHdpbGwgYmUgaW5jb3JyZWN0bHkgaW5zdGFsbGVkICFcbiIKK21zZ3N0ciAiIgorIlxuIgorIuC5g+C4iuC5iSBgZHBrZycg4LmA4Lie4Li34LmI4Lit4LiV4Li04LiU4LiV4Lix4LmJ4LiH4Lir4Lij4Li34Lit4LiW4Lit4LiU4LiW4Lit4LiZ4LmB4Lie4LiB4LmA4LiB4LiI4LmD4LiZ4Lij4Liw4Lia4Lia4LiC4Lit4LiH4LiE4Li44LiTIOC4q+C4o+C4t+C4reC5g+C4iuC5iVxuIgorImBkc2VsZWN0JyDguKvguKPguLfguK0gYGFwdGl0dWRlJyDguJbguYnguLLguJXguYnguK3guIfguIHguLLguKPguIHguLLguKPguIjguLHguJTguIHguLLguKPguYHguJ7guIHguYDguIHguIjguYHguJrguJrguYDguJvguYfguJnguKHguLTguJXguKPguIHguLHguJrguJzguLnguYnguYPguIrguYlcbiIKKyLguYHguJ7guIHguYDguIHguIjguJfguLXguYjguYHguJXguIHguJTguYnguKfguKLguITguLPguKrguLHguYjguIcgYGRwa2ctZGViIC0tZXh0cmFjdCcg4LiI4Liw4LiV4Li04LiU4LiV4Lix4LmJ4LiH4LmE4Lih4LmI4LiW4Li54LiB4LiV4LmJ4Lit4LiHICFcbiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjEzMgorbXNnaWQgIiIKKyJUeXBlIGRwa2ctZGViIC0taGVscCBmb3IgaGVscCBhYm91dCBtYW5pcHVsYXRpbmcgKi5kZWIgZmlsZXM7XG4iCisiVHlwZSBkcGtnIC0taGVscCBmb3IgaGVscCBhYm91dCBpbnN0YWxsaW5nIGFuZCBkZWluc3RhbGxpbmcgcGFja2FnZXMuIgorbXNnc3RyICIiCisi4Lie4Li04Lih4Lie4LmMIGRwa2ctZGViIC0taGVscCDguYDguJ7guLfguYjguK3guJTguLnguKfguLTguJjguLXguIjguLHguJTguIHguLLguKPguYHguJ/guYnguKEgKi5kZWI7XG4iCisi4Lie4Li04Lih4Lie4LmMIGRwa2cgLS1oZWxwIOC5gOC4nuC4t+C5iOC4reC4lOC4ueC4p+C4tOC4mOC4teC4leC4tOC4lOC4leC4seC5ieC4h+C5geC4peC4sOC4luC4reC4lOC4luC4reC4meC5geC4nuC4geC5gOC4geC4iCIKKworIzogZHBrZy1kZWIvbWFpbi5jOjE0OAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGludGVnZXIgZm9yIC0lYzogJyUuMjUwcyciCittc2dzdHIgIuC4hOC5iOC4suC4iOC4s+C4meC4p+C4meC5gOC4leC5h+C4oeC4nOC4tOC4lOC4nuC4peC4suC4lOC4quC4s+C4q+C4o+C4seC4miAtJWM6ICclLjI1MHMnIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTUxCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgY29tcHJlc3Npb24gbGV2ZWwgZm9yIC0lYzogJWxkJyIKK21zZ3N0ciAi4LiE4LmI4Liy4Lij4Liw4LiU4Lix4Lia4LiB4Liy4Lij4Lia4Li14Lia4Lit4Lix4LiU4Lic4Li04LiU4Lie4Lil4Liy4LiU4Liq4Liz4Lir4Lij4Lix4LiaIC0lYzogJWxkIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTYxCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gY29tcHJlc3Npb24gdHlwZSBgJXMnISIKK21zZ3N0ciAi4LmE4Lih4LmI4Lij4Li54LmJ4LiI4Lix4LiB4LiK4LiZ4Li04LiU4LiC4Lit4LiH4LiB4Liy4Lij4Lia4Li14Lia4Lit4Lix4LiUIGAlcychIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzo1MgorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgZGlnaXQgKGNvZGUgJWQpIGluICVzIgorbXNnc3RyICLguYHguJ/guYnguKEgYCUuMjUwcycg4LmA4Liq4Li14Lii4Lir4Liy4LiiIC0g4LiV4Lix4Lin4LmA4Lil4LiC4Lic4Li04LiUICjguKPguKvguLHguKogJWQpIOC4l+C4teC5iCAlcyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gJS4yNTBzIG1pc3NpbmciCittc2dzdHIgIuC5geC4n+C5ieC4oSBgJS4yNTBzJyDguYDguKrguLXguKLguKvguLLguKIgLSDguILguLLguJQgJS4yNTBzIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzo2MworIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBtaXNzaW5nIG5ld2xpbmUgYWZ0ZXIgJS4yNTBzIgorbXNnc3RyICLguYHguJ/guYnguKEgYCUuMjUwcycg4LmA4Liq4Li14Lii4Lir4Liy4LiiIC0g4LiC4Liy4LiUIG5ld2xpbmUg4Lir4Lil4Lix4LiHICUuMjUwcyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6ODkgZHBrZy1zcGxpdC9tYWluLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHJlYWRpbmcgJS4yNTBzIgorbXNnc3RyICLguYDguIHguLTguJTguILguYnguK3guJzguLTguJTguJ7guKXguLLguJTguILguJPguLDguK3guYjguLLguJkgJS4yNTBzIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIG1hZ2ljIGF0IGVuZCBvZiBmaXJzdCBoZWFkZXIiCittc2dzdHIgIuC5geC4n+C5ieC4oSBgJS4yNTBzJyDguYDguKrguLXguKLguKvguLLguKIgLSDguKPguKvguLHguKrguYDguK3guIHguKXguLHguIHguKnguJPguYzguJzguLTguJTguJ7guKXguLLguJTguJfguLXguYjguJfguYnguLLguKLguILguYnguK3guKHguLnguKXguKrguYjguKfguJnguKvguLHguKfguIrguLTguYnguJnguYHguKPguIEiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjExMworIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgcGFkZGluZyBjaGFyYWN0ZXIgKGNvZGUgJWQpIgorbXNnc3RyICLguYHguJ/guYnguKEgYCUuMjUwcycg4LmA4Liq4Li14Lii4Lir4Liy4LiiIC0g4Lit4Lix4LiB4LiC4Lij4Liw4LmA4LiV4Li04Lih4LiK4LmI4Lit4LiH4Lin4LmI4Liy4LiH4LmD4LiK4LmJ4LmE4Lih4LmI4LmE4LiU4LmJICjguKPguKvguLHguKogJWQpIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gbnVsbHMgaW4gaW5mbyBzZWN0aW9uIgorbXNnc3RyICLguYHguJ/guYnguKEgYCUuMjUwcycg4LmA4Liq4Li14Lii4Lir4Liy4LiiIC0g4Lih4Li14Lit4Lix4LiB4LiC4Lij4Liw4Lij4Lir4Lix4Liq4Lio4Li54LiZ4Lii4LmM4LmD4LiZ4Lir4Lih4Lin4LiU4LiC4LmJ4Lit4Lih4Li54Lil4LmB4Lie4LiB4LmA4LiB4LiIIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMjIKK21zZ2lkICJmb3JtYXQgdmVyc2lvbiBudW1iZXIiCittc2dzdHIgIuC5gOC4peC4guC4o+C4uOC5iOC4meC4guC4reC4h+C4o+C4ueC4m+C5geC4muC4muC5geC4nuC4geC5gOC4geC4iCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgZm9ybWF0IHZlcnNpb24gYCUuMjUwcycgLSB5b3UgbmVlZCBhIG5ld2VyIGRwa2ctc3BsaXQiCittc2dzdHIgIuC5geC4n+C5ieC4oSBgJS4yNTBzJyDguK3guKLguLnguYjguYPguJnguKPguLnguJvguYHguJrguJrguKPguLjguYjguJkgYCUuMjUwcycgLSDguITguLjguJPguJXguYnguK3guIfguYPguIrguYkgZHBrZy1zcGxpdCDguKPguLjguYjguJnguYPguKvguKHguYjguIHguKfguYjguLLguJnguLXguYkiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyNworbXNnaWQgInBhY2thZ2UgbmFtZSIKK21zZ3N0ciAi4LiK4Li34LmI4Lit4LmB4Lie4LiB4LmA4LiB4LiIIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMjgKK21zZ2lkICJwYWNrYWdlIHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICLguYDguKXguILguKPguLjguYjguJnguILguK3guIfguYHguJ7guIHguYDguIHguIgiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyOQorbXNnaWQgInBhY2thZ2UgZmlsZSBNRDUgY2hlY2tzdW0iCittc2dzdHIgIuC4nOC4peC4o+C4p+C4oSBNRDUg4LiC4Lit4LiH4LmB4Lif4LmJ4Lih4LmB4Lie4LiB4LmA4LiB4LiIIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIE1ENSBjaGVja3N1bSBgJS4yNTBzJyIKK21zZ3N0ciAi4LmB4Lif4LmJ4LihIGAlLjI1MHMnIOC5gOC4quC4teC4ouC4q+C4suC4oiAtIOC4hOC5iOC4siBNRDUgY2hlY2tzdW0gYCUuMjUwcycg4LmE4Lih4LmI4LiW4Li54LiB4LiV4LmJ4Lit4LiHIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMzQgZHBrZy1zcGxpdC9pbmZvLmM6MTM1Cittc2dpZCAiYXJjaGl2ZSB0b3RhbCBzaXplIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEzNiBkcGtnLXNwbGl0L2luZm8uYzoxMzcKKyMsIGZ1enp5CisjfCBtc2dpZCAicGFydCBvZmZzZXQiCittc2dpZCAiYXJjaGl2ZSBwYXJ0IG9mZnNldCIKK21zZ3N0ciAi4Lit4Lit4Lif4LmA4LiL4LmH4LiV4LiC4Lit4LiH4Liq4LmI4Lin4LiZ4Lii4LmI4Lit4LiiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMzkKKyMsIGZ1enp5CisjfCBtc2dpZCAicGFydCBudW1iZXJzIgorbXNnaWQgImFyY2hpdmUgcGFydCBudW1iZXJzIgorbXNnc3RyICLguKvguKHguLLguKLguYDguKXguILguKrguYjguKfguJnguKLguYjguK3guKIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE0MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gbm8gc2xhc2ggYmV0d2VlbiBwYXJ0IG51bWJlcnMiCittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gbm8gc2xhc2ggYmV0d2VlbiBhcmNoaXZlIHBhcnQgbnVtYmVycyIKK21zZ3N0ciAi4LmB4Lif4LmJ4LihIGAlLjI1MHMnIOC5gOC4quC4teC4ouC4q+C4suC4oiAtIOC5hOC4oeC5iOC4oeC4teC4reC4seC4geC4guC4o+C4sOC4guC4teC4lOC4l+C4seC4muC4o+C4sOC4q+C4p+C5iOC4suC4h+C4q+C4oeC4suC4ouC5gOC4peC4guC4quC5iOC4p+C4meC4ouC5iOC4reC4oiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTQ1CisjLCBmdXp6eQorI3wgbXNnaWQgIm51bWJlciBvZiBwYXJ0cyIKK21zZ2lkICJudW1iZXIgb2YgYXJjaGl2ZSBwYXJ0cyIKK21zZ3N0ciAi4LiI4Liz4LiZ4Lin4LiZ4Liq4LmI4Lin4LiZ4Lii4LmI4Lit4LiiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDcKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBudW1iZXIgb2YgcGFydHMiCittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIG51bWJlciBvZiBhcmNoaXZlIHBhcnRzIgorbXNnc3RyICLguYHguJ/guYnguKEgJyUuMjUwcycg4LmA4Liq4Li14Lii4Lir4Liy4LiiIC0g4LiI4Liz4LiZ4Lin4LiZ4Liq4LmI4Lin4LiZ4Lii4LmI4Lit4Lii4LmA4Lib4LmH4LiZ4LiE4LmI4Liy4LiX4Li14LmI4LmD4LiK4LmJ4LmE4Lih4LmI4LmE4LiU4LmJIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDkKKyMsIGZ1enp5CisjfCBtc2dpZCAicGFydHMgbnVtYmVyIgorbXNnaWQgImFyY2hpdmUgcGFydHMgbnVtYmVyIgorbXNnc3RyICLguKvguKHguLLguKLguYDguKXguILguKrguYjguKfguJnguKLguYjguK3guKIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE1MQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIHBhcnQgbnVtYmVyIgorbXNnaWQgImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBhcmNoaXZlIHBhcnQgbnVtYmVyIgorbXNnc3RyICLguYHguJ/guYnguKEgYCUuMjUwcycg4LmA4Liq4Li14Lii4Lir4Liy4LiiIC0g4Lir4Lih4Liy4Lii4LmA4Lil4LiC4Liq4LmI4Lin4LiZ4Lii4LmI4Lit4Lii4LmA4Lib4LmH4LiZ4LiE4LmI4Liy4LiX4Li14LmI4LmD4LiK4LmJ4LmE4Lih4LmI4LmE4LiU4LmJIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNTcKKyMsIGZ1enp5CisjfCBtc2dpZCAicGFja2FnZSBuYW1lIgorbXNnaWQgInBhY2thZ2UgYXJjaGl0ZWN0dXJlIgorbXNnc3RyICLguIrguLfguYjguK3guYHguJ7guIHguYDguIHguIgiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE2NgorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgbWFnaWMgYXQgZW5kIG9mIHNlY29uZCBoZWFkZXIiCittc2dzdHIgIuC5geC4n+C5ieC4oSBgJS4yNTBzJyDguYDguKrguLXguKLguKvguLLguKIgLSDguITguYjguLLguKPguKvguLHguKrguYDguK3guIHguKXguLHguIHguKnguJPguYzguJfguLXguYjguILguYnguK3guKHguLnguKXguKrguYjguKfguJnguKvguLHguKfguKrguYjguKfguJnguJfguLXguYjguKrguK3guIfguYTguKHguYjguJbguLnguIHguJXguYnguK3guIciCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE2OAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBzZWNvbmQgbWVtYmVyIGlzIG5vdCBkYXRhIG1lbWJlciIKK21zZ3N0ciAi4LmB4Lif4LmJ4LihIGAlLjI1MHMnIOC5gOC4quC4teC4ouC4q+C4suC4oiAtIOC4quC4oeC4suC4iuC4tOC4geC4l+C4teC5iOC4quC4reC4h+C5hOC4oeC5iOC5g+C4iuC5iOC4quC4oeC4suC4iuC4tOC4geC4l+C4teC5iOC5gOC4m+C5h+C4meC4guC5ieC4reC4oeC4ueC4pSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTc0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIHdyb25nIG51bWJlciBvZiBwYXJ0cyBmb3IgcXVvdGVkIHNpemVzIgorbXNnc3RyICLguYHguJ/guYnguKEgYCUuMjUwcycg4LmA4Liq4Li14Lii4Lir4Liy4LiiIC0g4LiI4Liz4LiZ4Lin4LiZ4Liq4LmI4Lin4LiZ4Lii4LmI4Lit4Lii4LmE4Lih4LmI4LiW4Li54LiB4LiV4LmJ4Lit4LiH4LmD4LiZIHF1b3RlZCBzaXplIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gc2l6ZSBpcyB3cm9uZyBmb3IgcXVvdGVkIHBhcnQgbnVtYmVyIgorbXNnc3RyICLguYHguJ/guYnguKEgYCUuMjUwcycg4LmA4Liq4Li14Lii4Lir4Liy4LiiIC0g4LiC4LiZ4Liy4LiU4LmE4Lih4LmI4LiW4Li54LiB4LiV4LmJ4Lit4LiH4LmD4LiZIHF1b3RlZCBwYXJ0IG51bWJlciIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTg0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmc3RhdCBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4liBmc3RhdCDguYHguJ/guYnguKHguKrguYjguKfguJnguKLguYjguK3guKIgYCUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE4OQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSB0b28gc2hvcnQiCittc2dzdHIgIuC5geC4n+C5ieC4oSBgJS4yNTBzJyDguYDguKrguLXguKLguKvguLLguKIgLSDguKrguLHguYnguJnguYDguIHguLTguJnguYTguJsiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjIwMiBkcGtnLXNwbGl0L2luZm8uYzoyNDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IG9wZW4gYXJjaGl2ZSBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC5gOC4m+C4tOC4lOC5geC4n+C5ieC4oeC4quC5iOC4p+C4meC4ouC5iOC4reC4ouC4guC4reC4h+C5geC4n+C5ieC4oeC4iOC4seC4lOC5gOC4geC5h+C4miBgJS4yNTBzJyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjA0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgbm90IGFuIGFyY2hpdmUgcGFydCIKK21zZ3N0ciAi4LmB4Lif4LmJ4LihIGAlLjI1MHMnIOC5hOC4oeC5iOC5g+C4iuC5iOC4quC5iOC4p+C4meC4ouC5iOC4reC4ouC4guC4reC4h+C5geC4n+C5ieC4oeC4iOC4seC4lOC5gOC4geC5h+C4miIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjA5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiJXM6XG4iCisjfCAiICAgIFBhcnQgZm9ybWF0IHZlcnNpb246ICAgICAgICAgICAgJXNcbiIKKyN8ICIgICAgUGFydCBvZiBwYWNrYWdlOiAgICAgICAgICAgICAgICAlc1xuIgorI3wgIiAgICAgICAgLi4uIHZlcnNpb246ICAgICAgICAgICAgICAgICVzXG4iCisjfCAiICAgICAgICAuLi4gTUQ1IGNoZWNrc3VtOiAgICAgICAgICAgJXNcbiIKKyN8ICIgICAgICAgIC4uLiBsZW5ndGg6ICAgICAgICAgICAgICAgICAlbHUgYnl0ZXNcbiIKKyN8ICIgICAgICAgIC4uLiBzcGxpdCBldmVyeTogICAgICAgICAgICAlbHUgYnl0ZXNcbiIKKyN8ICIgICAgUGFydCBudW1iZXI6ICAgICAgICAgICAgICAgICAgICAlZC8lZFxuIgorI3wgIiAgICBQYXJ0IGxlbmd0aDogICAgICAgICAgICAgICAgICAgICV6aSBieXRlc1xuIgorI3wgIiAgICBQYXJ0IG9mZnNldDogICAgICAgICAgICAgICAgICAgICVsdSBieXRlc1xuIgorI3wgIiAgICBQYXJ0IGZpbGUgc2l6ZSAodXNlZCBwb3J0aW9uKTogICVsdSBieXRlc1xuIgorI3wgIlxuIgorbXNnaWQgIiIKKyIlczpcbiIKKyIgICAgUGFydCBmb3JtYXQgdmVyc2lvbjogICAgICAgICAgICAlc1xuIgorIiAgICBQYXJ0IG9mIHBhY2thZ2U6ICAgICAgICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gdmVyc2lvbjogICAgICAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiBhcmNoaXRlY3R1cmU6ICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIE1ENSBjaGVja3N1bTogICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gbGVuZ3RoOiAgICAgICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgICAgICAuLi4gc3BsaXQgZXZlcnk6ICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgIFBhcnQgbnVtYmVyOiAgICAgICAgICAgICAgICAgICAgJWQvJWRcbiIKKyIgICAgUGFydCBsZW5ndGg6ICAgICAgICAgICAgICAgICAgICAlamQgYnl0ZXNcbiIKKyIgICAgUGFydCBvZmZzZXQ6ICAgICAgICAgICAgICAgICAgICAlamQgYnl0ZXNcbiIKKyIgICAgUGFydCBmaWxlIHNpemUgKHVzZWQgcG9ydGlvbik6ICAlamQgYnl0ZXNcbiIKKyJcbiIKK21zZ3N0ciAiIgorIiVzOlxuIgorIiAgICDguKPguLjguYjguJnguILguK3guIfguKPguLnguJvguYHguJrguJrguILguYnguK3guKHguLnguKXguKrguYjguKfguJnguKLguYjguK3guKI6ICAgICAgICAgICAlc1xuIgorIiAgICDguKrguYjguKfguJnguKLguYjguK3guKLguILguK3guIfguYHguJ7guIHguYDguIHguIg6ICAgICAgICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4g4Lij4Li44LmI4LiZOiAgICAgICAgICAgICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gTUQ1IGNoZWNrc3VtOiAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiDguITguKfguLLguKHguKLguLLguKc6ICAgICAgICAgICAgICAgICVsdSDguYTguJrguJXguYxcbiIKKyIgICAgICAgIC4uLiDguJXguLHguJTguYHguJrguYjguIfguJfguLXguYjguJfguLjguIHguYY6ICAgICAgICAgICAgICAlbHUg4LmE4Lia4LiV4LmMXG4iCisiICAgIOC4q+C4oeC4suC4ouC5gOC4peC4guC4quC5iOC4p+C4meC4ouC5iOC4reC4ojogICAgICAgICAgICAgICAgICAlZC8lZFxuIgorIiAgICDguITguKfguLLguKHguKLguLLguKfguKrguYjguKfguJnguKLguYjguK3guKI6ICAgICAgICAgICAgICAgICAgJXppIOC5hOC4muC4leC5jFxuIgorIiAgICDguK3guK3guJ/guYDguIvguYfguJXguILguK3guIfguKrguYjguKfguJnguKLguYjguK3guKI6ICAgICAgICAgICAgICAgICVsdSDguYTguJrguJXguYxcbiIKKyIgICAg4LiC4LiZ4Liy4LiU4LiC4Lit4LiH4LmB4Lif4LmJ4Lih4Liq4LmI4Lin4LiZ4Lii4LmI4Lit4LiiICjguKrguYjguKfguJnguJfguLXguYjguYPguIrguYkpOiAgICAgICVsdSDguYTguJrguJXguYxcbiIKKyJcbiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjI1CisjLCBmdXp6eQorI3wgbXNnaWQgIjx1bmtub3duPiIKK21zZ2N0eHQgImFyY2hpdGVjdHVyZSIKK21zZ2lkICI8dW5rbm93bj4iCittc2dzdHIgIjzguYTguKHguYjguJfguKPguLLguJo+IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyNDQgZHBrZy1zcGxpdC9qb2luLmM6MTA1CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgcmVxdWlyZXMgb25lIG9yIG1vcmUgcGFydCBmaWxlIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS0lcyDguJXguYnguK3guIfguIHguLLguKPguK3guLLguKPguYzguIHguLTguKfguYDguKHguJnguJXguYzguJfguLXguYjguYDguJvguYfguJnguYHguJ/guYnguKHguKrguYjguKfguJnguKLguYjguK3guKLguJXguLHguYnguIfguYHguJXguYjguKvguJnguLbguYjguIfguKPguLLguKLguIHguLLguKPguILguLbguYnguJnguYTguJsiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjI1NQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlcycgaXMgbm90IGFuIGFyY2hpdmUgcGFydFxuIgorbXNnc3RyICLguYHguJ/guYnguKEgYCVzJyDguYTguKHguYjguYPguIrguYjguKrguYjguKfguJnguKLguYjguK3guKLguILguK3guIfguYHguJ/guYnguKHguIjguLHguJTguYDguIHguYfguJpcbiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHV0dGluZyBwYWNrYWdlICVzIHRvZ2V0aGVyIGZyb20gJWQgcGFydDogIgorbXNnaWRfcGx1cmFsICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0czogIgorbXNnc3RyWzBdICLguIHguLPguKXguLHguIfguJvguKPguLDguIHguK3guJrguYHguJ7guIHguYDguIHguIggJXMg4LmA4LiC4LmJ4Liy4LiU4LmJ4Lin4Lii4LiB4Lix4LiZ4LiI4Liy4LiB4Liq4LmI4Lin4LiZ4Lii4LmI4Lit4LiiICVkIOC4quC5iOC4p+C4mTogIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBvdXRwdXQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4LmA4Lib4Li04LiU4LmB4Lif4LmJ4Lih4Lic4Lil4Lil4Lix4Lie4LiY4LmMIGAlLjI1MHMnIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gKHJlKW9wZW4gaW5wdXQgcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguYDguJvguLTguJQgKOC4i+C5ieC4sykg4LmB4Lif4LmJ4Lih4Liq4LmI4Lin4LiZ4Lii4LmI4Lit4Lii4LiC4LmJ4Lit4Lih4Li54Lil4LmA4LiC4LmJ4LiyIGAlLjI1MHMnIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1OAorIywgZnV6enkKKyN8IG1zZ2lkICJTa2lwcGluZyBkZXNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dpZCAic2tpcHBpbmcgc3BsaXQgcGFja2FnZSBoZWFkZXIiCittc2dzdHIgIuC4geC4s+C4peC4seC4h+C4guC5ieC4suC4oeC5geC4nuC4geC5gOC4geC4iCAlcyDguJfguLXguYjguYTguKHguYjguYTguJTguYnguYDguKXguLfguK3guIFcbiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NTkKKyMsIGZ1enp5CisjfCBtc2dpZCAiUHV0dGluZyBwYWNrYWdlICVzIHRvZ2V0aGVyIGZyb20gJWQgcGFydDogIgorI3wgbXNnaWRfcGx1cmFsICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0czogIgorbXNnaWQgInNwbGl0IHBhY2thZ2UgcGFydCIKK21zZ3N0ciAi4LiB4Liz4Lil4Lix4LiH4Lib4Lij4Liw4LiB4Lit4Lia4LmB4Lie4LiB4LmA4LiB4LiIICVzIOC5gOC4guC5ieC4suC4lOC5ieC4p+C4ouC4geC4seC4meC4iOC4suC4geC4quC5iOC4p+C4meC4ouC5iOC4reC4oiAlZCDguKrguYjguKfguJk6ICIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NjkgZHBrZy1zcGxpdC9zcGxpdC5jOjIzNworIywgYy1mb3JtYXQKK21zZ2lkICJkb25lXG4iCittc2dzdHIgIuC5gOC4quC4o+C5h+C4iFxuIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo4NQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlcyBgJS4yNTBzJyBhbmQgYCUuMjUwcycgYXJlIG5vdCBwYXJ0cyBvZiB0aGUgc2FtZSBmaWxlIgorbXNnc3RyICLguYHguJ/guYnguKEgYCUuMjUwcycg4LmB4Lil4LiwIGAlLjI1MHMnIOC5hOC4oeC5iOC5g+C4iuC5iOC4quC5iOC4p+C4meC4ouC5iOC4reC4ouC4guC4reC4h+C5geC4n+C5ieC4oeC5gOC4lOC4teC4ouC4p+C4geC4seC4mSIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAidGhlcmUgYXJlIHNldmVyYWwgdmVyc2lvbnMgb2YgcGFydCAlZCAtIGF0IGxlYXN0IGAlLjI1MHMnIGFuZCBgJS4yNTBzJyIKK21zZ3N0ciAi4Lih4Li14LmB4Lif4LmJ4Lih4Liq4LmI4Lin4LiZ4Lii4LmI4Lit4LiiICVkIOC4q+C4peC4suC4ouC4ieC4muC4seC4miAtIOC4reC4ouC5iOC4suC4h+C4meC5ieC4reC4ouC4geC5hyBgJS4yNTBzJyDguYHguKXguLAgYCUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjEyOAorIywgYy1mb3JtYXQKK21zZ2lkICJwYXJ0ICVkIGlzIG1pc3NpbmciCittc2dzdHIgIuC4quC5iOC4p+C4meC4ouC5iOC4reC4oiAlZCDguILguLLguJTguKvguLLguKIiCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjQ3CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiBgJXMnIHBhY2thZ2Ugc3BsaXQvam9pbiB0b29sOyB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICLguYDguITguKPguLfguYjguK3guIfguKHguLfguK3guJXguLHguJTguYHguJrguYjguIcv4Lij4Lin4Lih4LmB4Lie4LiB4LmA4LiB4LiIIGAlcycg4LiC4Lit4LiH4LmA4LiU4LmA4Lia4Li14Lii4LiZOyDguKPguLjguYjguJkgJXNcbiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ29weXJpZ2h0IChDKSAxOTk0LTE5OTYgSWFuIEphY2tzb24uXG4iCittc2dzdHIgIkNvcHlyaWdodCAoQykgMTk5NC0xOTk2IElhbiBKYWNrc29uLlxuIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo2NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtc3wtLXNwbGl0IDxmaWxlPiBbPHByZWZpeD5dICAgICBTcGxpdCBhbiBhcmNoaXZlLlxuIgorIiAgLWp8LS1qb2luIDxwYXJ0PiA8cGFydD4gLi4uICAgICAgSm9pbiBwYXJ0cyB0b2dldGhlci5cbiIKKyIgIC1JfC0taW5mbyA8cGFydD4gLi4uICAgICAgICAgICAgIERpc3BsYXkgaW5mbyBhYm91dCBhIHBhcnQuXG4iCisiICAtYXwtLWF1dG8gLW8gPGNvbXBsZXRlPiA8cGFydD4gICBBdXRvLWFjY3VtdWxhdGUgcGFydHMuXG4iCisiICAtbHwtLWxpc3RxICAgICAgICAgICAgICAgICAgICAgICBMaXN0IHVubWF0Y2hlZCBwaWVjZXMuXG4iCisiICAtZHwtLWRpc2NhcmQgWzxmaWxlbmFtZT4gLi4uXSAgICBEaXNjYXJkIHVubWF0Y2hlZCBwaWVjZXMuXG4iCisiXG4iCittc2dzdHIgIiIKKyLguITguLPguKrguLHguYjguIc6XG4iCisiICAtc3wtLXNwbGl0IDxmaWxlPiBbPHByZWZpeD5dICAgICDguJXguLHguJTguYHguJrguYjguIfguYHguJ7guIHguYDguIHguIhcbiIKKyIgIC1qfC0tam9pbiA8cGFydD4gPHBhcnQ+IC4uLiAgICAgIOC4o+C4p+C4oeC4quC5iOC4p+C4meC4ouC5iOC4reC4ouC5gOC4guC5ieC4suC4lOC5ieC4p+C4ouC4geC4seC4mVxuIgorIiAgLUl8LS1pbmZvIDxwYXJ0PiAuLi4gICAgICAgICAgICAg4LmB4Liq4LiU4LiH4LiC4LmJ4Lit4Lih4Li54Lil4LmA4LiB4Li14LmI4Lii4Lin4LiB4Lix4Lia4Liq4LmI4Lin4LiZ4Lii4LmI4Lit4LiiXG4iCisiICAtYXwtLWF1dG8gLW8gPGNvbXBsZXRlPiA8cGFydD4gICDguKrguLDguKrguKHguKrguYjguKfguJnguKLguYjguK3guKLguYLguJTguKLguK3guLHguJXguYLguJnguKHguLHguJXguLRcbiIKKyIgIC1sfC0tbGlzdHEgICAgICAgICAgICAgICAgICAgICAgIOC5geC4quC4lOC4h+C4o+C4suC4ouC4iuC4t+C5iOC4reC4quC5iOC4p+C4meC4ouC5iOC4reC4ouC4l+C4teC5iOC4o+C4reC4reC4ouC4ueC5iFxuIgorIiAgLWR8LS1kaXNjYXJkIFs8ZmlsZW5hbWU+IC4uLl0gICAg4Lil4LmJ4Liy4LiH4Liq4LmI4Lin4LiZ4Lii4LmI4Lit4Lii4LiX4Li14LmI4Lij4Lit4Lit4Lii4Li54LmI4LiX4Li04LmJ4LiHXG4iCisiXG4iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjgyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiT3B0aW9uczpcbiIKKyN8ICIgIC0tZGVwb3RkaXIgPGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLyVzLlxuIgorI3wgIiAgLVN8LS1wYXJ0c2l6ZSA8c2l6ZT4gICAgICAgICAgICAgSW4gS2lCLCBmb3IgLXMgKGRlZmF1bHQgaXMgNDUwKS5cbiIKKyN8ICIgIC1vfC0tb3V0cHV0IDxmaWxlPiAgICAgICAgICAgICAgIEZvciAtaiAoZGVmYXVsdCBpcyA8cGFja2FnZT4tPHZlcnNpb24+LiIKKyN8ICJkZWIpLlxuIgorI3wgIiAgLVF8LS1ucHF1aWV0ICAgICAgICAgICAgICAgICAgICAgQmUgcXVpZXQgd2hlbiAtYSBpcyBub3QgYSBwYXJ0LlxuIgorI3wgIiAgLS1tc2RvcyAgICAgICAgICAgICAgICAgICAgICAgICAgR2VuZXJhdGUgOC4zIGZpbGVuYW1lcy5cbiIKKyN8ICJcbiIKKyN8ICJFeGl0IHN0YXR1czogMCA9IE9LOyAgMSA9IC1hIGlzIG5vdCBhIHBhcnQ7ICAyID0gdHJvdWJsZSFcbiIKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tZGVwb3RkaXIgPGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLyVzLlxuIgorIiAgLVN8LS1wYXJ0c2l6ZSA8c2l6ZT4gICAgICAgICAgICAgSW4gS2lCLCBmb3IgLXMgKGRlZmF1bHQgaXMgNDUwKS5cbiIKKyIgIC1vfC0tb3V0cHV0IDxmaWxlPiAgICAgICAgICAgICAgIEZpbGVuYW1lLCBmb3IgLWogKGRlZmF1bHQgaXNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhY2thZ2U+Xzx2ZXJzaW9uPl88YXJjaD4uZGViKS5cbiIKKyIgIC1RfC0tbnBxdWlldCAgICAgICAgICAgICAgICAgICAgIEJlIHF1aWV0IHdoZW4gLWEgaXMgbm90IGEgcGFydC5cbiIKKyIgIC0tbXNkb3MgICAgICAgICAgICAgICAgICAgICAgICAgIEdlbmVyYXRlIDguMyBmaWxlbmFtZXMuXG4iCisiXG4iCittc2dzdHIgIiIKKyLguJXguLHguKfguYDguKXguLfguK3guIE6XG4iCisiICAtLWRlcG90ZGlyIDxkaXJlY3Rvcnk+ICAgICAgICAgICDguYPguIrguYkgPGRpcmVjdG9yeT4g4LmB4LiX4LiZICVzLyVzXG4iCisiICAtU3wtLXBhcnRzaXplIDxzaXplPiAgICAgICAgICAgICDguYPguIrguYnguKvguJnguYjguKfguKIgS2lCIOC4quC4s+C4q+C4o+C4seC4miAtcyAo4LiE4LmI4Liy4Lib4Lij4Li04Lii4Liy4Lii4LiE4Li34LitIDQ1MClcbiIKKyIgIC1vfC0tb3V0cHV0IDxmaWxlPiAgICAgICAgICAgICAgIOC5geC4n+C5ieC4oeC4nOC4peC4peC4seC4nuC4mOC5jOC4quC4s+C4q+C4o+C4seC4miAtaiAo4LiE4LmI4Liy4Lib4Lij4Li04Lii4Liy4Lii4LiE4Li34LitIDxwYWNrYWdlPi0iCisiPHZlcnNpb24+LmRlYikuXG4iCisiICAtUXwtLW5wcXVpZXQgICAgICAgICAgICAgICAgICAgICDguYTguKHguYjguJXguYnguK3guIfguJrguYjguJnguJbguYnguLIgLWEg4LmE4Lih4LmI4LmD4LiK4LmI4Liq4LmI4Lin4LiZ4Lii4LmI4Lit4LiiXG4iCisiICAtLW1zZG9zICAgICAgICAgICAgICAgICAgICAgICAgICDguYPguIrguYnguIrguLfguYjguK3guYHguJ/guYnguKHguYPguJnguKPguLnguJvguYHguJrguJogOC4zXG4iCisiXG4iCisi4Liq4LiW4Liy4LiZ4Liw4LiB4Liy4Lij4LiI4Lia4LiB4Liy4Lij4LiX4Liz4LiH4Liy4LiZOiAwID0gT0s7ICAxID0gLWEg4LmE4Lih4LmI4LmD4LiK4LmI4Liq4LmI4Lin4LiZ4Lii4LmI4Lit4LiiOyAgMiA9IOC4oeC4teC4m+C4seC4jeC4q+C4siFcbiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6OTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkV4aXQgc3RhdHVzOlxuIgorIiAgMCA9IG9rXG4iCisiICAxID0gd2l0aCAtLWF1dG8sIGZpbGUgaXMgbm90IGEgcGFydFxuIgorIiAgMiA9IHRyb3VibGVcbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMDMKK21zZ2lkICJUeXBlIGRwa2ctc3BsaXQgLS1oZWxwIGZvciBoZWxwLiIKK21zZ3N0ciAi4Lie4Li04Lih4Lie4LmMIGRwa2ctc3BsaXQgLS1oZWxwIOC5gOC4nuC4t+C5iOC4reC4lOC4ueC4p+C4tOC4mOC4teC5g+C4iuC5iSIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6MTE1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGZpbGUgaW4gJS4yNTBzIgorbXNnc3RyICLguJ7guJrguIjguLjguJTguIjguJrguYHguJ/guYnguKHguIHguYjguK3guJnguIHguLPguKvguJnguJTguYPguJkgJS4yNTBzIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMjYKK21zZ2lkICJwYXJ0IHNpemUgaXMgZmFyIHRvbyBsYXJnZSBvciBpcyBub3QgcG9zaXRpdmUiCittc2dzdHIgIuC4guC4meC4suC4lOC4guC4reC4h+C4quC5iOC4p+C4meC4ouC5iOC4reC4ouC5g+C4q+C4jeC5iOC5gOC4geC4tOC4meC5hOC4myDguKvguKPguLfguK3guYTguKHguYjguYPguIrguYjguITguYjguLLguJrguKfguIEiCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjEzMAorIywgYy1mb3JtYXQKK21zZ2lkICJwYXJ0IHNpemUgbXVzdCBiZSBhdCBsZWFzdCAlZCBLaUIgKHRvIGFsbG93IGZvciBoZWFkZXIpIgorbXNnc3RyICLguILguJnguLLguJTguILguK3guIfguKrguYjguKfguJnguKLguYjguK3guKLguJXguYnguK3guIfguKHguLXguITguYjguLLguK3guKLguYjguLLguIfguJnguYnguK3guKIgJWRLaUIgKOC5gOC4nuC4t+C5iOC4reC5g+C4q+C5ieC5gOC4geC5h+C4muC4guC5ieC4reC4oeC4ueC4peC4quC5iOC4p+C4meC4q+C4seC4p+C5hOC4lOC5iSkiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzo5MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBkZXBvdCBkaXJlY3RvcnkgYCUuMjUwcyciCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC4reC5iOC4suC4meC5hOC4lOC5gOC4o+C4geC4l+C4reC4o+C4teC4quC4sOC4quC4oeC4quC5iOC4p+C4meC4ouC5iOC4reC4oiBgJS4yNTBzJyIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjEzNAorbXNnaWQgIi0tYXV0byByZXF1aXJlcyB0aGUgdXNlIG9mIHRoZSAtLW91dHB1dCBvcHRpb24iCittc2dzdHIgIi0tYXV0byDguJXguYnguK3guIfguYPguIrguYnguJXguLHguKfguYDguKXguLfguK3guIEgLS1vdXRwdXQg4LiU4LmJ4Lin4LiiIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTM2Cittc2dpZCAiLS1hdXRvIHJlcXVpcmVzIGV4YWN0bHkgb25lIHBhcnQgZmlsZSBhcmd1bWVudCIKK21zZ3N0ciAiLS1hdXRvIOC4leC5ieC4reC4h+C4geC4suC4o+C4reC4suC4o+C5jOC4geC4tOC4p+C5gOC4oeC4meC4leC5jOC4l+C4teC5iOC5gOC4m+C5h+C4meC5geC4n+C5ieC4oeC4quC5iOC4p+C4meC4ouC5iOC4reC4ouC4o+C4suC4ouC4geC4suC4o+C5gOC4lOC4teC4ouC4pyIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE0MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC4reC5iOC4suC4meC5geC4n+C5ieC4oeC4quC5iOC4p+C4meC4ouC5iOC4reC4oiBgJS4yNTBzJyIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE0MworIywgYy1mb3JtYXQKK21zZ2lkICJGaWxlIGAlLjI1MHMnIGlzIG5vdCBwYXJ0IG9mIGEgbXVsdGlwYXJ0IGFyY2hpdmUuXG4iCittc2dzdHIgIuC5geC4n+C5ieC4oSBgJS4yNTBzJyDguYTguKHguYjguYPguIrguYjguKrguYjguKfguJnguKLguYjguK3guKLguILguK3guIfguYHguJ7guIHguYDguIHguIjguYHguJrguYjguIfguKrguYjguKfguJlcbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE3OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVvcGVuIHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4LmA4Lib4Li04LiU4LmB4Lif4LmJ4Lih4Liq4LmI4Lin4LiZ4Lii4LmI4Lit4LiiIGAlLjI1MHMnIOC4i+C5ieC4syIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE4MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBuZXcgZGVwb3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4LmA4Lib4Li04LiU4LmB4Lif4LmJ4Lih4Liq4Liw4Liq4Lih4Liq4LmI4Lin4LiZ4Lii4LmI4Lit4Lii4LmD4Lir4Lih4LmIIGAlLjI1MHMnIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTg0Cittc2dpZCAiZXh0cmFjdGluZyBzcGxpdCBwYXJ0IgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbmFtZSBuZXcgZGVwb3QgZmlsZSBgJS4yNTBzJyB0byBgJS4yNTBzJyIKK21zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4LmA4Lib4Lil4Li14LmI4Lii4LiZ4LiK4Li34LmI4Lit4LmB4Lif4LmJ4Lih4Liq4Liw4Liq4Lih4LmD4Lir4Lih4LmIIGAlLjI1MHMnIOC5hOC4m+C5gOC4m+C5h+C4mSBgJS4yNTBzJyIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE5NgorIywgYy1mb3JtYXQKK21zZ2lkICJQYXJ0ICVkIG9mIHBhY2thZ2UgJXMgZmlsZWQgKHN0aWxsIHdhbnQgIgorbXNnc3RyICLguYDguIHguYfguJrguKrguYjguKfguJnguKLguYjguK3guKIgJWQg4LiC4Lit4LiH4LmB4Lie4LiB4LmA4LiB4LiIICVzIOC5geC4peC5ieC4pyAo4Lii4Lix4LiH4LiV4LmJ4Lit4LiH4LiB4Liy4Lij4Lit4Li14LiBICIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjIwMAorbXNnaWQgIiBhbmQgIgorbXNnc3RyICIg4LmB4Lil4LiwICIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjIxNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGVsZXRlIHVzZWQtdXAgZGVwb3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4Lil4Lia4LmB4Lif4LmJ4Lih4Liq4Liw4Liq4Lih4Liq4LmI4Lin4LiZ4Lii4LmI4Lit4LiiIGAlLjI1MHMnIOC4l+C4teC5iOC5g+C4iuC5ieC5geC4peC5ieC4pyIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjIzNQorbXNnaWQgIkp1bmsgZmlsZXMgbGVmdCBhcm91bmQgaW4gdGhlIGRlcG90IGRpcmVjdG9yeTpcbiIKK21zZ3N0ciAi4Lih4Li14LmB4Lif4LmJ4Lih4LiC4Lii4Liw4Lir4Lil4LiH4LmA4Lir4Lil4Li34Lit4Lit4Lii4Li54LmI4LmD4LiZ4LmE4LiU4LmA4Lij4LiB4LiX4Lit4Lij4Li14Liq4Liw4Liq4Lih4Liq4LmI4Lin4LiZ4Lii4LmI4Lit4LiiOlxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjQwIGRwa2ctc3BsaXQvcXVldWUuYzoyNjkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgYCUuMjUwcyciCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4liBzdGF0IGAlLjI1MHMnIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjQzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIgJXMgKCVsdSBieXRlcylcbiIKK21zZ2lkICIgJXMgKCVqZCBieXRlcylcbiIKK21zZ3N0ciAiICVzICglbHUg4LmE4Lia4LiV4LmMKVxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAlcyAobm90IGEgcGxhaW4gZmlsZSlcbiIKK21zZ3N0ciAiICVzICjguYTguKHguYjguYPguIrguYjguYHguJ/guYnguKHguJvguIHguJXguLQpXG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNTAKK21zZ2lkICJQYWNrYWdlcyBub3QgeWV0IHJlYXNzZW1ibGVkOlxuIgorbXNnc3RyICLguYHguJ7guIHguYDguIHguIjguJfguLXguYjguKLguLHguIfguJvguKPguLDguIHguK3guJrguKPguKfguKHguYTguKHguYjguYDguKrguKPguYfguIg6XG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIFBhY2thZ2UgJXM6IHBhcnQocykgIgorbXNnc3RyICIg4LmB4Lie4LiB4LmA4LiB4LiIICVzOiDguKrguYjguKfguJnguKLguYjguK3guKIgIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjcxCisjLCBjLWZvcm1hdAorbXNnaWQgInBhcnQgZmlsZSBgJS4yNTBzJyBpcyBub3QgYSBwbGFpbiBmaWxlIgorbXNnc3RyICLguYHguJ/guYnguKHguKrguYjguKfguJnguKLguYjguK3guKIgYCUuMjUwcycg4LmE4Lih4LmI4LmD4LiK4LmI4LmB4Lif4LmJ4Lih4Lib4LiB4LiV4Li0IgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6Mjc4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIodG90YWwgJWx1IGJ5dGVzKVxuIgorbXNnaWQgIih0b3RhbCAlamQgYnl0ZXMpXG4iCittc2dzdHIgIijguKPguKfguKEgJWx1IOC5hOC4muC4leC5jClcbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjMwNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGlzY2FyZCBgJS4yNTBzJyIKK21zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4Lil4LmJ4Liy4LiHIGAlLjI1MHMnIOC4l+C4tOC5ieC4hyIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjMwNQorIywgYy1mb3JtYXQKK21zZ2lkICJEZWxldGVkICVzLlxuIgorbXNnc3RyICLguKXguJogJXMg4LmB4Lil4LmJ4LinXG4iCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzo3MCBkcGtnLXNwbGl0L3NwbGl0LmM6NzYgZHBrZy1zcGxpdC9zcGxpdC5jOjgxCisjLCBmdXp6eQorI3wgbXNnaWQgImRwa2ctZGViIGZpZWxkIGV4dHJhY3Rpb24iCittc2dpZCAicGFja2FnZSBmaWVsZCB2YWx1ZSBleHRyYWN0aW9uIgorbXNnc3RyICLguIHguLLguKPguYHguKLguIHguYDguK3guLLguITguYjguLLguYDguILguJXguILguYnguK3guKHguLnguKXguJTguYnguKfguKIgZHBrZy1kZWIiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxMzEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gc291cmNlIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC5gOC4m+C4tOC4lOC5geC4n+C5ieC4oeC4leC5ieC4meC4ieC4muC4seC4miBgJS4yNTBzJyIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjEzMworbXNnaWQgInVuYWJsZSB0byBmc3RhdCBzb3VyY2UgZmlsZSIKK21zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiWIHN0YXQg4LmB4Lif4LmJ4Lih4LiV4LmJ4LiZ4LiJ4Lia4Lix4LiaIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTM1CisjLCBjLWZvcm1hdAorbXNnaWQgInNvdXJjZSBmaWxlIGAlLjI1MHMnIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgIuC5geC4n+C5ieC4oeC4leC5ieC4meC4ieC4muC4seC4miBgJS4yNTBzJyDguYTguKHguYjguYPguIrguYjguYHguJ/guYnguKHguJvguIHguJXguLQiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxNTMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIlB1dHRpbmcgcGFja2FnZSAlcyB0b2dldGhlciBmcm9tICVkIHBhcnQ6ICIKKyN8IG1zZ2lkX3BsdXJhbCAiUHV0dGluZyBwYWNrYWdlICVzIHRvZ2V0aGVyIGZyb20gJWQgcGFydHM6ICIKK21zZ2lkICJTcGxpdHRpbmcgcGFja2FnZSAlcyBpbnRvICVkIHBhcnQ6ICIKK21zZ2lkX3BsdXJhbCAiU3BsaXR0aW5nIHBhY2thZ2UgJXMgaW50byAlZCBwYXJ0czogIgorbXNnc3RyWzBdICLguIHguLPguKXguLHguIfguJvguKPguLDguIHguK3guJrguYHguJ7guIHguYDguIHguIggJXMg4LmA4LiC4LmJ4Liy4LiU4LmJ4Lin4Lii4LiB4Lix4LiZ4LiI4Liy4LiB4Liq4LmI4Lin4LiZ4Lii4LmI4Lit4LiiICVkIOC4quC5iOC4p+C4mTogIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTkzCittc2dpZCAiIgorIkhlYWRlciBpcyB0b28gbG9uZywgbWFraW5nIHBhcnQgdG9vIGxvbmcuIFlvdXIgcGFja2FnZSBuYW1lIG9yIHZlcnNpb25cbiIKKyJudW1iZXJzIG11c3QgYmUgZXh0cmFvcmRpbmFyaWx5IGxvbmcsIG9yIHNvbWV0aGluZy4gR2l2aW5nIHVwLlxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoyNDkKK21zZ2lkICItLXNwbGl0IG5lZWRzIGEgc291cmNlIGZpbGVuYW1lIGFyZ3VtZW50IgorbXNnc3RyICItLXNwbGl0IOC4leC5ieC4reC4h+C4geC4suC4o+C4reC4suC4o+C5jOC4geC4tOC4p+C5gOC4oeC4meC4leC5jOC4l+C4teC5iOC5gOC4m+C5h+C4meC4iuC4t+C5iOC4reC5geC4n+C5ieC4oeC4leC5ieC4meC4ieC4muC4seC4miIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjI1MgorbXNnaWQgIi0tc3BsaXQgdGFrZXMgYXQgbW9zdCBhIHNvdXJjZSBmaWxlbmFtZSBhbmQgZGVzdGluYXRpb24gcHJlZml4IgorbXNnc3RyICIiCisiLS1zcGxpdCDguKPguLHguJrguK3guLLguKPguYzguIHguLTguKfguYDguKHguJnguJXguYzguYDguJvguYfguJnguIrguLfguYjguK3guYHguJ/guYnguKHguJXguYnguJnguInguJrguLHguJrguYHguKXguLDguIrguLfguYjguK3guILguLbguYnguJnguJXguYnguJnguILguK3guIfguJvguKXguLLguKLguJfguLLguIfguK3guKLguYjguLLguIfguKXguLDguKvguJnguLbguYjguIfguKPguLLguKLguIHguLLguKPguYDguJfguYjguLLguJnguLHguYnguJkiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo4NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMC0yMDAyIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDA5LTIwMTAgUmFwaGFlbCBIZXJ0em9nLlxuIgorbXNnc3RyICIiCisiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMC0yMDAyIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDA5LTIwMTAgUmFwaGFlbCBIZXJ0em9nLlxuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTAxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIDxjb21tYW5kPlxuIgorI3wgIlxuIgorI3wgIkNvbW1hbmRzOlxuIgorI3wgIiAgLS1pbnN0YWxsIDxsaW5rPiA8bmFtZT4gPHBhdGg+IDxwcmlvcml0eT5cbiIKKyN8ICIgICAgWy0tc2xhdmUgPGxpbms+IDxuYW1lPiA8cGF0aD5dIC4uLlxuIgorI3wgIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGFkZCBhIGdyb3VwIG9mIGFsdGVybmF0aXZlcyB0byB0aGUgc3lzdGVtLlxuIgorI3wgIiAgLS1yZW1vdmUgPG5hbWU+IDxwYXRoPiAgIHJlbW92ZSA8cGF0aD4gZnJvbSB0aGUgPG5hbWU+IGdyb3VwICIKKyN8ICJhbHRlcm5hdGl2ZS5cbiIKKyN8ICIgIC0tcmVtb3ZlLWFsbCA8bmFtZT4gICAgICByZW1vdmUgPG5hbWU+IGdyb3VwIGZyb20gdGhlIGFsdGVybmF0aXZlcyAiCisjfCAic3lzdGVtLlxuIgorI3wgIiAgLS1hdXRvIDxuYW1lPiAgICAgICAgICAgIHN3aXRjaCB0aGUgbWFzdGVyIGxpbmsgPG5hbWU+IHRvIGF1dG9tYXRpYyAiCisjfCAibW9kZS5cbiIKKyN8ICIgIC0tZGlzcGxheSA8bmFtZT4gICAgICAgICBkaXNwbGF5IGluZm9ybWF0aW9uIGFib3V0IHRoZSA8bmFtZT4gZ3JvdXAuXG4iCisjfCAiICAtLXF1ZXJ5IDxuYW1lPiAgICAgICAgICAgbWFjaGluZSBwYXJzZWFibGUgdmVyc2lvbiBvZiAtLWRpc3BsYXkgIgorI3wgIjxuYW1lPi5cbiIKKyN8ICIgIC0tbGlzdCA8bmFtZT4gICAgICAgICAgICBkaXNwbGF5IGFsbCB0YXJnZXRzIG9mIHRoZSA8bmFtZT4gZ3JvdXAuXG4iCisjfCAiICAtLWNvbmZpZyA8bmFtZT4gICAgICAgICAgc2hvdyBhbHRlcm5hdGl2ZXMgZm9yIHRoZSA8bmFtZT4gZ3JvdXAgYW5kIGFzayAiCisjfCAidGhlXG4iCisjfCAiICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlciB0byBzZWxlY3Qgd2hpY2ggb25lIHRvIHVzZS5cbiIKKyN8ICIgIC0tc2V0IDxuYW1lPiA8cGF0aD4gICAgICBzZXQgPHBhdGg+IGFzIGFsdGVybmF0aXZlIGZvciA8bmFtZT4uXG4iCisjfCAiICAtLWFsbCAgICAgICAgICAgICAgICAgICAgY2FsbCAtLWNvbmZpZyBvbiBhbGwgYWx0ZXJuYXRpdmVzLlxuIgorI3wgIlxuIgorI3wgIjxsaW5rPiBpcyB0aGUgc3ltbGluayBwb2ludGluZyB0byAlcy88bmFtZT4uXG4iCisjfCAiICAoZS5nLiAvdXNyL2Jpbi9wYWdlcilcbiIKKyN8ICI8bmFtZT4gaXMgdGhlIG1hc3RlciBuYW1lIGZvciB0aGlzIGxpbmsgZ3JvdXAuXG4iCisjfCAiICAoZS5nLiBwYWdlcilcbiIKKyN8ICI8cGF0aD4gaXMgdGhlIGxvY2F0aW9uIG9mIG9uZSBvZiB0aGUgYWx0ZXJuYXRpdmUgdGFyZ2V0IGZpbGVzLlxuIgorI3wgIiAgKGUuZy4gL3Vzci9iaW4vbGVzcylcbiIKKyN8ICI8cHJpb3JpdHk+IGlzIGFuIGludGVnZXI7IG9wdGlvbnMgd2l0aCBoaWdoZXIgbnVtYmVycyBoYXZlIGhpZ2hlciAiCisjfCAicHJpb3JpdHkgaW5cbiIKKyN8ICIgIGF1dG9tYXRpYyBtb2RlLlxuIgorI3wgIlxuIgorI3wgIk9wdGlvbnM6XG4iCisjfCAiICAtLWFsdGRpciA8ZGlyZWN0b3J5PiAgICAgY2hhbmdlIHRoZSBhbHRlcm5hdGl2ZXMgZGlyZWN0b3J5LlxuIgorI3wgIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIGNoYW5nZSB0aGUgYWRtaW5pc3RyYXRpdmUgZGlyZWN0b3J5LlxuIgorI3wgIiAgLS1za2lwLWF1dG8gICAgICAgICAgICAgIHNraXAgcHJvbXB0IGZvciBhbHRlcm5hdGl2ZXMgY29ycmVjdGx5ICIKKyN8ICJjb25maWd1cmVkXG4iCisjfCAiICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gYXV0b21hdGljIG1vZGUgKHJlbGV2YW50IGZvciAtLWNvbmZpZyAiCisjfCAib25seSlcbiIKKyN8ICIgIC0tdmVyYm9zZSAgICAgICAgICAgICAgICB2ZXJib3NlIG9wZXJhdGlvbiwgbW9yZSBvdXRwdXQuXG4iCisjfCAiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgcXVpZXQgb3BlcmF0aW9uLCBtaW5pbWFsIG91dHB1dC5cbiIKKyN8ICIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorI3wgIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLS1pbnN0YWxsIDxsaW5rPiA8bmFtZT4gPHBhdGg+IDxwcmlvcml0eT5cbiIKKyIgICAgWy0tc2xhdmUgPGxpbms+IDxuYW1lPiA8cGF0aD5dIC4uLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGFkZCBhIGdyb3VwIG9mIGFsdGVybmF0aXZlcyB0byB0aGUgc3lzdGVtLlxuIgorIiAgLS1yZW1vdmUgPG5hbWU+IDxwYXRoPiAgIHJlbW92ZSA8cGF0aD4gZnJvbSB0aGUgPG5hbWU+IGdyb3VwIGFsdGVybmF0aXZlLlxuIgorIiAgLS1yZW1vdmUtYWxsIDxuYW1lPiAgICAgIHJlbW92ZSA8bmFtZT4gZ3JvdXAgZnJvbSB0aGUgYWx0ZXJuYXRpdmVzICIKKyJzeXN0ZW0uXG4iCisiICAtLWF1dG8gPG5hbWU+ICAgICAgICAgICAgc3dpdGNoIHRoZSBtYXN0ZXIgbGluayA8bmFtZT4gdG8gYXV0b21hdGljIG1vZGUuXG4iCisiICAtLWRpc3BsYXkgPG5hbWU+ICAgICAgICAgZGlzcGxheSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgPG5hbWU+IGdyb3VwLlxuIgorIiAgLS1xdWVyeSA8bmFtZT4gICAgICAgICAgIG1hY2hpbmUgcGFyc2VhYmxlIHZlcnNpb24gb2YgLS1kaXNwbGF5IDxuYW1lPi5cbiIKKyIgIC0tbGlzdCA8bmFtZT4gICAgICAgICAgICBkaXNwbGF5IGFsbCB0YXJnZXRzIG9mIHRoZSA8bmFtZT4gZ3JvdXAuXG4iCisiICAtLWdldC1zZWxlY3Rpb25zICAgICAgICAgbGlzdCBtYXN0ZXIgYWx0ZXJuYXRpdmUgbmFtZXMgYW5kIHRoZWlyIHN0YXR1cy5cbiIKKyIgIC0tc2V0LXNlbGVjdGlvbnMgICAgICAgICByZWFkIGFsdGVybmF0aXZlIHN0YXR1cyBmcm9tIHN0YW5kYXJkIGlucHV0LlxuIgorIiAgLS1jb25maWcgPG5hbWU+ICAgICAgICAgIHNob3cgYWx0ZXJuYXRpdmVzIGZvciB0aGUgPG5hbWU+IGdyb3VwIGFuZCBhc2sgIgorInRoZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzZXIgdG8gc2VsZWN0IHdoaWNoIG9uZSB0byB1c2UuXG4iCisiICAtLXNldCA8bmFtZT4gPHBhdGg+ICAgICAgc2V0IDxwYXRoPiBhcyBhbHRlcm5hdGl2ZSBmb3IgPG5hbWU+LlxuIgorIiAgLS1hbGwgICAgICAgICAgICAgICAgICAgIGNhbGwgLS1jb25maWcgb24gYWxsIGFsdGVybmF0aXZlcy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIuC4p+C4tOC4mOC4teC5g+C4iuC5iTogJXMgWzzguJXguLHguKfguYDguKXguLfguK3guIE+IC4uLl0gPOC4hOC4s+C4quC4seC5iOC4hz5cbiIKKyJcbiIKKyLguITguLPguKrguLHguYjguIc6XG4iCisiICAtLWluc3RhbGwgPGxpbms+IDxuYW1lPiA8cGF0aD4gPHByaW9yaXR5PlxuIgorIiAgICBbLS1zbGF2ZSA8bGluaz4gPG5hbWU+IDxwYXRoPl0gLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAg4LmA4Lie4Li04LmI4Lih4LiB4Lil4Li44LmI4Lih4LiC4Lit4LiH4LmB4Lif4LmJ4Lih4LiX4Liy4LiH4LmA4Lil4Li34Lit4LiB4LmD4LiZ4Lij4Liw4Lia4LiaXG4iCisiICAtLXJlbW92ZSA8bmFtZT4gPHBhdGg+ICAg4Lil4LiaIDxwYXRoPiDguK3guK3guIHguIjguLLguIHguIHguKXguLjguYjguKHguYHguJ/guYnguKHguJfguLLguIfguYDguKXguLfguK3guIEgPG5hbWU+XG4iCisiICAtLXJlbW92ZS1hbGwgPG5hbWU+ICAgICAg4Lil4Lia4LiB4Lil4Li44LmI4LihIDxuYW1lPiDguK3guK3guIHguIjguLLguIHguKPguLDguJrguJrguYHguJ/guYnguKHguJfguLLguIfguYDguKXguLfguK3guIFcbiIKKyIgIC0tYXV0byA8bmFtZT4gICAgICAgICAgICDguIHguLPguKvguJnguJTguYPguKvguYnguKXguLTguIfguIHguYzguKvguKXguLHguIEgPG5hbWU+IOC5gOC4guC5ieC4suC4quC4ueC5iOC5guC4q+C4oeC4lOC4reC4seC4leC5guC4meC4oeC4seC4leC4tFxuIgorIiAgLS1kaXNwbGF5IDxuYW1lPiAgICAgICAgIOC5geC4quC4lOC4h+C4guC5ieC4reC4oeC4ueC4peC5gOC4geC4teC5iOC4ouC4p+C4geC4seC4muC4geC4peC4uOC5iOC4oSA8bmFtZT5cbiIKKyIgIC0tcXVlcnkgPG5hbWU+ICAgICAgICAgICDguYDguKvguKHguLfguK3guJkgLS1kaXNwbGF5IDxuYW1lPiDguYHguJXguYjguYHguKrguJTguIfguYPguJnguYHguJrguJrguJfguLXguYjguYDguITguKPguLfguYjguK3guIfguYHguIjguIfguK3guYjguLLguJnguYTguJTguYlcbiIKKyIgIC0tbGlzdCA8bmFtZT4gICAgICAgICAgICDguYHguKrguJTguIfguJvguKXguLLguKLguJfguLLguIfguJfguLHguYnguIfguKvguKHguJTguILguK3guIfguIHguKXguLjguYjguKEgPG5hbWU+XG4iCisiICAtLWNvbmZpZyA8bmFtZT4gICAgICAgICAg4LmB4Liq4LiU4LiH4LiX4Liy4LiH4LmA4Lil4Li34Lit4LiB4LiX4Lix4LmJ4LiH4Lir4Lih4LiU4LiC4Lit4LiH4LiB4Lil4Li44LmI4LihIDxuYW1lPiDguYHguKXguLDguYPguKvguYnguJzguLnguYnguYPguIrguYnguYDguKXguLfguK3guIFcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICDguKfguYjguLLguIjguLDguYPguIrguYnguJfguLLguIfguYDguKXguLfguK3guIHguYTguKvguJlcbiIKKyIgIC0tc2V0IDxuYW1lPiA8cGF0aD4gICAgICDguIHguLPguKvguJnguJTguYPguKvguYkgPHBhdGg+IOC5gOC4m+C5h+C4meC4l+C4suC4h+C5gOC4peC4t+C4reC4geC4quC4s+C4q+C4o+C4seC4miA8bmFtZT5cbiIKKyIgIC0tYWxsICAgICAgICAgICAgICAgICAgICDguYDguKPguLXguKLguIEgLS1jb25maWcg4LiB4Lix4Lia4LmB4Lif4LmJ4Lih4LiX4Liy4LiH4LmA4Lil4Li34Lit4LiB4LiX4Lix4LmJ4LiH4Lir4Lih4LiUXG4iCisiXG4iCisiPGxpbms+IOC5gOC4m+C5h+C4mSBzeW1saW5rIOC4l+C4teC5iOC4iuC4teC5ieC5hOC4m+C4ouC4seC4hyAlcy88bmFtZT5cbiIKKyIgICjguYDguIrguYjguJkgL3Vzci9iaW4vcGFnZXIpXG4iCisiPG5hbWU+IOC5gOC4m+C5h+C4meC4iuC4t+C5iOC4reC4q+C4peC4seC4geC4guC4reC4h+C4geC4peC4uOC5iOC4oeC4peC4tOC4h+C4geC5jOC4meC4teC5iVxuIgorIiAgKOC5gOC4iuC5iOC4mSBwYWdlcilcbiIKKyI8cGF0aD4gaXMgdGhlIGxvY2F0aW9uIG9mIG9uZSBvZiB0aGUgYWx0ZXJuYXRpdmUgdGFyZ2V0IGZpbGVzLlxuIgorIiAgKOC5gOC4iuC5iOC4mSAvdXNyL2Jpbi9sZXNzKVxuIgorIjxwcmlvcml0eT4g4LmA4Lib4LmH4LiZ4LiV4Lix4Lin4LmA4Lil4LiCOyDguJfguLLguIfguYDguKXguLfguK3guIHguJfguLXguYjguKHguLXguJXguLHguKfguYDguKXguILguJnguLXguYnguKrguLnguIcg4LiI4Liw4LmE4LiU4LmJ4Lij4Lix4Lia4LiE4Lin4Liy4Lih4Liq4Liz4LiE4Lix4LiN4Liq4Li54LiH4LmD4LiZ4LmC4Lir4Lih4LiU4Lit4Lix4LiV4LmC4LiZ4Lih4Lix4LiV4Li0XG4iCisiIFxuIgorIuC4leC4seC4p+C5gOC4peC4t+C4reC4gTpcbiIKKyIgIC0tYWx0ZGlyIDxkaXJlY3Rvcnk+ICAgICDguYDguJvguKXguLXguYjguKLguJnguYTguJTguYDguKPguIHguJfguK3guKPguLXguILguK3guIfguJfguLLguIfguYDguKXguLfguK3guIFcbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICDguYDguJvguKXguLXguYjguKLguJnguYTguJTguYDguKPguIHguJfguK3guKPguLXguKrguLPguKvguKPguLHguJrguIHguLLguKPguJTguLnguYHguKXguKPguLDguJrguJpcbiIKKyIgIC0tc2tpcC1hdXRvICAgICAgICAgICAgICAiCisi4LiC4LmJ4Liy4Lih4LiE4Liz4LiW4Liy4Lih4Liq4Liz4Lir4Lij4Lix4Lia4LiX4Liy4LiH4LmA4Lil4Li34Lit4LiB4LiX4Li14LmI4LmE4LiU4LmJ4LiV4Lix4LmJ4LiH4LiE4LmI4Liy4LmD4LiZ4LmC4Lir4Lih4LiU4Lit4Lix4LiV4LmC4LiZ4Lih4Lix4LiV4Li04LmE4Lin4LmJ4LiW4Li54LiB4LiV4LmJ4Lit4LiH4LmB4Lil4LmJ4LinXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgKOC5g+C4iuC5ieC4o+C4p+C4oeC4geC4seC4miAtLWNvbmZpZyDguYDguJfguYjguLLguJnguLHguYnguJkpXG4iCisiICAtLXZlcmJvc2UgICAgICAgICAgICAgICAg4LiX4Liz4LmB4Lia4Lia4Lia4Lit4LiB4Lil4Liw4LmA4Lit4Li14Lii4LiUIOC5geC4quC4lOC4h+C4guC5ieC4reC4hOC4p+C4suC4oeC4oeC4suC4geC4guC4tuC5ieC4mVxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIOC4l+C4s+C5geC4muC4muC5gOC4h+C4teC4ouC4miDguYHguKrguJTguIfguILguYnguK3guITguKfguLLguKHguYPguKvguYnguJnguYnguK3guKLguJfguLXguYjguKrguLjguJRcbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICDguYHguKrguJTguIfguILguYnguK3guITguKfguLLguKHguIrguYjguKfguKLguYDguKvguKXguLfguK3guJnguLXguYlcbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICDguYHguKrguJTguIfguYDguKXguILguKPguLjguYjguJlcbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiPGxpbms+IGlzIHRoZSBzeW1saW5rIHBvaW50aW5nIHRvICVzLzxuYW1lPi5cbiIKKyIgIChlLmcuIC91c3IvYmluL3BhZ2VyKVxuIgorIjxuYW1lPiBpcyB0aGUgbWFzdGVyIG5hbWUgZm9yIHRoaXMgbGluayBncm91cC5cbiIKKyIgIChlLmcuIHBhZ2VyKVxuIgorIjxwYXRoPiBpcyB0aGUgbG9jYXRpb24gb2Ygb25lIG9mIHRoZSBhbHRlcm5hdGl2ZSB0YXJnZXQgZmlsZXMuXG4iCisiICAoZS5nLiAvdXNyL2Jpbi9sZXNzKVxuIgorIjxwcmlvcml0eT4gaXMgYW4gaW50ZWdlcjsgb3B0aW9ucyB3aXRoIGhpZ2hlciBudW1iZXJzIGhhdmUgaGlnaGVyIHByaW9yaXR5ICIKKyJpblxuIgorIiAgYXV0b21hdGljIG1vZGUuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzMQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIk9wdGlvbnM6XG4iCisjfCAiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgc2V0IHRoZSBkaXJlY3Rvcnkgd2l0aCB0aGUgc3RhdG92ZXJyaWRlIGZpbGUuXG4iCisjfCAiICAtLXVwZGF0ZSAgICAgICAgICAgICAgICAgaW1tZWRpYXRlbHkgdXBkYXRlIGZpbGUgcGVybWlzc2lvbnMuXG4iCisjfCAiICAtLWZvcmNlICAgICAgICAgICAgICAgICAgZm9yY2UgYW4gYWN0aW9uIGV2ZW4gaWYgYSBzYW5pdHkgY2hlY2sgZmFpbHMuXG4iCisjfCAiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgcXVpZXQgb3BlcmF0aW9uLCBtaW5pbWFsIG91dHB1dC5cbiIKKyN8ICIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorI3wgIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisjfCAiXG4iCittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFsdGRpciA8ZGlyZWN0b3J5PiAgICAgY2hhbmdlIHRoZSBhbHRlcm5hdGl2ZXMgZGlyZWN0b3J5LlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIGNoYW5nZSB0aGUgYWRtaW5pc3RyYXRpdmUgZGlyZWN0b3J5LlxuIgorIiAgLS1sb2cgPGZpbGU+ICAgICAgICAgICAgIGNoYW5nZSB0aGUgbG9nIGZpbGUuXG4iCisiICAtLWZvcmNlICAgICAgICAgICAgICAgICAgYWxsb3cgcmVwbGFjaW5nIGZpbGVzIHdpdGggYWx0ZXJuYXRpdmUgbGlua3MuXG4iCisiICAtLXNraXAtYXV0byAgICAgICAgICAgICAgc2tpcCBwcm9tcHQgZm9yIGFsdGVybmF0aXZlcyBjb3JyZWN0bHkgIgorImNvbmZpZ3VyZWRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBhdXRvbWF0aWMgbW9kZSAocmVsZXZhbnQgZm9yIC0tY29uZmlnIG9ubHkpXG4iCisiICAtLXZlcmJvc2UgICAgICAgICAgICAgICAgdmVyYm9zZSBvcGVyYXRpb24sIG1vcmUgb3V0cHV0LlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHF1aWV0IG9wZXJhdGlvbiwgbWluaW1hbCBvdXRwdXQuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorbXNnc3RyICIiCisi4LiV4Lix4Lin4LmA4Lil4Li34Lit4LiBOlxuIgorIiAgLS1hZG1pbmRpciA84LmE4LiU4LmA4Lij4LiB4LiX4Lit4Lij4Li1PiAgICDguIHguLPguKvguJnguJTguYTguJTguYDguKPguIHguJfguK3guKPguLXguJfguLXguYjguYDguIHguYfguJrguYHguJ/guYnguKEgc3RhdG92ZXJyaWRlXG4iCisiICAtLXVwZGF0ZSAgICAgICAgICAgICAgICAg4Lib4Lij4Lix4Lia4LiB4Liy4Lij4Lit4LiZ4Li44LiN4Liy4LiV4Liq4Li04LiX4LiY4Li04LmM4LiC4Lit4LiH4LmB4Lif4LmJ4Lih4LiX4Lix4LiZ4LiX4Li1XG4iCisiICAtLWZvcmNlICAgICAgICAgICAgICAgICAg4Lia4Lix4LiH4LiE4Lix4Lia4LiB4Liy4Lij4LiB4Lij4Liw4LiX4Liz4LmB4Lih4LmJ4LiB4Liy4Lij4LiV4Lij4Lin4LiI4Liq4Lit4Lia4LiE4Lin4Liy4Lih4LmA4Lij4Li14Lii4Lia4Lij4LmJ4Lit4Lii4LiI4Liw4Lil4LmJ4Lih4LmA4Lir4Lil4LinXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAg4LiX4Liz4LmB4Lia4Lia4LmA4LiH4Li14Lii4LiaIOC5geC4quC4lOC4h+C4guC5ieC4reC4hOC4p+C4suC4oeC5g+C4q+C5ieC4meC5ieC4reC4ouC4l+C4teC5iOC4quC4uOC4lFxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIOC5geC4quC4lOC4h+C4guC5ieC4reC4hOC4p+C4suC4oeC4iuC5iOC4p+C4ouC5gOC4q+C4peC4t+C4reC4meC4teC5iVxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIOC5geC4quC4lOC4h+C5gOC4peC4guC4o+C4uOC5iOC4mVxuIgorIlxuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNjMKK21zZ2lkICJlcnJvciIKK21zZ3N0ciAi4LiC4LmJ4Lit4Lic4Li04LiU4Lie4Lil4Liy4LiUIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTkzCittc2dpZCAid2FybmluZyIKK21zZ3N0ciAi4LiE4Liz4LmA4LiV4Li34Lit4LiZIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MzU2CisjLCBjLWZvcm1hdAorbXNnaWQgInR3byBjb21tYW5kcyBzcGVjaWZpZWQ6IC0tJXMgYW5kIC0tJXMiCittc2dzdHIgIuC4oeC4teC4geC4suC4o+C4o+C4sOC4muC4uOC4hOC4s+C4quC4seC5iOC4h+C4quC4reC4h+C4hOC4s+C4quC4seC5iOC4hzogLS0lcyDguYHguKXguLAgLS0lcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjM4NworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiY2Fubm90IGFwcGVuZCB0byAlczogJXMiCittc2dpZCAiY2Fubm90IGFwcGVuZCB0byAnJXMnIgorbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguYDguILguLXguKLguJnguJXguYjguK3guJfguYnguLLguKIgJXM6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NTU2CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlICVzOiAlcyIKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlICclcyciCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC4peC4miAlczogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTExCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGZpbGUgd2hpbGUgdHJ5aW5nIHRvIHJlYWQgJXMiCittc2dzdHIgIuC4nuC4muC4iOC4uOC4lOC4iOC4muC5geC4n+C5ieC4oeC4geC5iOC4reC4meC4geC4s+C4q+C4meC4lOC4guC4k+C4sOC4nuC4ouC4suC4ouC4suC4oeC4reC5iOC4suC4mSAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAid2hpbGUgcmVhZGluZyAlczogJXMiCittc2dzdHIgIuC4guC4k+C4sOC4reC5iOC4suC4mSAlczogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTE5CisjLCBjLWZvcm1hdAorbXNnaWQgImxpbmUgbm90IHRlcm1pbmF0ZWQgd2hpbGUgdHJ5aW5nIHRvIHJlYWQgJXMiCittc2dzdHIgIuC4nuC4muC4muC4o+C4o+C4l+C4seC4lOC4l+C4teC5iOC5hOC4oeC5iOC5hOC4lOC5ieC4m+C4tOC4lOC4l+C5ieC4suC4ouC4guC4k+C4sOC4nuC4ouC4suC4ouC4suC4oeC4reC5iOC4suC4mSAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgY29ycnVwdDogJXMiCittc2dzdHIgIiVzIOC5gOC4quC4teC4ouC4q+C4suC4ojogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTUwCisjLCBjLWZvcm1hdAorbXNnaWQgIm5ld2xpbmVzIHByb2hpYml0ZWQgaW4gdXBkYXRlLWFsdGVybmF0aXZlcyBmaWxlcyAoJXMpIgorbXNnc3RyICLguKvguYnguLLguKHguYPguIrguYnguK3guLHguIHguILguKPguLDguILguLbguYnguJnguJrguKPguKPguJfguLHguJTguYPguKvguKHguYjguYPguJnguYHguJ/guYnguKHguKrguLPguKvguKPguLHguJogdXBkYXRlLWFsdGVybmF0aXZlcyAoJXMpIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE2MworbXNnaWQgInNsYXZlIG5hbWUiCittc2dzdHIgIuC4iuC4t+C5iOC4reC4o+C4suC4ouC4geC4suC4o+C4peC4ueC4gSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNzEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImR1cGxpY2F0ZSBzbGF2ZSAlcyIKK21zZ2lkICJkdXBsaWNhdGUgc2xhdmUgbmFtZSAlcyIKK21zZ3N0ciAi4Lij4Liy4Lii4LiB4Liy4Lij4Lil4Li54LiBICVzIOC4i+C5ieC4syIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNzQKK21zZ2lkICJzbGF2ZSBsaW5rIgorbXNnc3RyICLguKXguLTguIfguIHguYzguKXguLnguIEiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTc4CisjLCBjLWZvcm1hdAorbXNnaWQgInNsYXZlIGxpbmsgc2FtZSBhcyBtYWluIGxpbmsgJXMiCittc2dzdHIgIuC4peC4tOC4h+C4geC5jOC4peC4ueC4geC4i+C5ieC4s+C4geC4seC4muC4peC4tOC4h+C4geC5jOC4q+C4peC4seC4gSAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExODUgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHNsYXZlIGxpbmsgJXMiCittc2dzdHIgIuC4peC4tOC4h+C4geC5jOC4peC4ueC4gSAlcyDguIvguYnguLMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjA0Cittc2dpZCAibWFzdGVyIGZpbGUiCittc2dzdHIgIuC5geC4n+C5ieC4oeC4q+C4peC4seC4gSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHBhdGggJXMiCittc2dzdHIgIuC4nuC4suC4mCAlcyDguIvguYnguLMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjI2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJhbHRlcm5hdGl2ZSAlcyAocGFydCBvZiBsaW5rIGdyb3VwICVzKSBkb2Vzbid0IGV4aXN0LiBSZW1vdmluZyBmcm9tIGxpc3Qgb2YgIgorImFsdGVybmF0aXZlcy4iCittc2dzdHIgIuC4l+C4suC4h+C5gOC4peC4t+C4reC4gSAlcyAo4LiL4Li24LmI4LiH4LmA4Lib4LmH4LiZ4Liq4LmI4Lin4LiZ4Lir4LiZ4Li24LmI4LiH4LiC4Lit4LiH4LiB4Lil4Li44LmI4Lih4Lil4Li04LiH4LiB4LmMICVzKSDguYTguKHguYjguKHguLXguK3guKLguLnguYgg4LiI4Liw4Lil4Lia4Lit4Lit4LiB4LiI4Liy4LiB4Lij4Liy4Lii4LiK4Li34LmI4Lit4LmB4Lif4LmJ4Lih4LiX4Liy4LiH4LmA4Lil4Li34Lit4LiBIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIyOSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI0MAorbXNnaWQgInByaW9yaXR5IgorbXNnc3RyICLguKXguLPguJTguLHguJrguITguKfguLLguKHguKrguLPguITguLHguI0iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjMyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjQ5Cittc2dpZCAic2xhdmUgZmlsZSIKK21zZ3N0ciAi4LmB4Lif4LmJ4Lih4Lil4Li54LiBIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI0NAorIywgYy1mb3JtYXQKK21zZ2lkICJwcmlvcml0eSBvZiAlczogJXMiCittc2dzdHIgIuC4peC4s+C4lOC4seC4muC4hOC4p+C4suC4oeC4quC4s+C4hOC4seC4jeC4guC4reC4hyAlczogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjk3Cittc2dpZCAic3RhdHVzIgorbXNnc3RyICLguKrguJbguLLguJnguLAiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjk5Cittc2dpZCAiaW52YWxpZCBzdGF0dXMiCittc2dzdHIgIuC4quC4luC4suC4meC4sOC4nOC4tOC4lOC4nuC4peC4suC4lCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzMDQKK21zZ2lkICJtYXN0ZXIgbGluayIKK21zZ3N0ciAi4Lil4Li04LiH4LiB4LmM4Lir4Lil4Lix4LiBIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTM0OAorIywgYy1mb3JtYXQKK21zZ2lkICJkaXNjYXJkaW5nIG9ic29sZXRlIHNsYXZlIGxpbmsgJXMgKCVzKS4iCittc2dzdHIgIuC4iOC4sOC4l+C4tOC5ieC4h+C4peC4tOC4h+C4geC5jOC4peC4ueC4geC4l+C4teC5iOC5gOC4peC4tOC4geC5g+C4iuC5ieC5geC4peC5ieC4pyAlcyAoJXMpIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2OQorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MzgKK21zZ2lkICJhdXRvIG1vZGUiCittc2dzdHIgIuC5guC4q+C4oeC4lOC4reC4seC4leC5guC4meC4oeC4seC4leC4tCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MDIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NzgKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjM5Cittc2dpZCAibWFudWFsIG1vZGUiCittc2dzdHIgIuC5guC4q+C4oeC4lOC4quC4seC5iOC4h+C5gOC4reC4hyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBsaW5rIGN1cnJlbnRseSBwb2ludHMgdG8gJXMiCittc2dzdHIgIiAg4Lil4Li04LiH4LiB4LmM4LiC4LiT4Liw4LiZ4Li14LmJ4LiK4Li14LmJ4LmE4Lib4Lii4Lix4LiHICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwOAorbXNnaWQgIiAgbGluayBjdXJyZW50bHkgYWJzZW50IgorbXNnc3RyICIgIOC4peC4tOC4h+C4geC5jOC4guC4suC4lOC4q+C4suC4ouC4reC4ouC4ueC5iCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgLSBwcmlvcml0eSAlZCIKK21zZ3N0ciAiJXMgLSDguITguKfguLLguKHguKrguLPguITguLHguI0gJWQiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTE1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgc2xhdmUgJXM6ICVzIgorbXNnc3RyICIgIOC4o+C4suC4ouC4geC4suC4o+C4peC4ueC4gSAlczogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTIyCisjLCBjLWZvcm1hdAorbXNnaWQgIkN1cnJlbnQgJ2Jlc3QnIHZlcnNpb24gaXMgJyVzJy4iCittc2dzdHIgIuC4l+C4suC4h+C5gOC4peC4t+C4reC4geC4l+C4teC5iCAn4LiU4Li14LiX4Li14LmI4Liq4Li44LiUJyDguYPguJnguILguJPguLDguJnguLXguYnguITguLfguK0gJyVzJyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MjQKK21zZ2lkICJObyB2ZXJzaW9ucyBhdmFpbGFibGUuIgorbXNnc3RyICLguYTguKHguYjguKHguLXguJfguLLguIfguYDguKXguLfguK3guIHguK3guKLguLnguYgiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTUzCisjLCBjLWZvcm1hdAorbXNnaWQgIlRoZXJlIGlzICVkIGNob2ljZSBmb3IgdGhlIGFsdGVybmF0aXZlICVzIChwcm92aWRpbmcgJXMpLiIKK21zZ2lkX3BsdXJhbCAiVGhlcmUgYXJlICVkIGNob2ljZXMgZm9yIHRoZSBhbHRlcm5hdGl2ZSAlcyAocHJvdmlkaW5nICVzKS4iCittc2dzdHJbMF0gIuC4oeC4teC4leC4seC4p+C5gOC4peC4t+C4reC4gSAlZCDguJXguLHguKfguKrguLPguKvguKPguLHguJrguJfguLLguIfguYDguKXguLfguK3guIEgJXMgKOC4i+C4tuC5iOC4h+C4iOC4seC4lOC5gOC4leC4o+C4teC4ouC4oSAlcykiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYwCittc2dpZCAiU2VsZWN0aW9uIgorbXNnc3RyICLguIHguLLguKPguYDguKXguLfguK3guIEiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYxCittc2dpZCAiUGF0aCIKK21zZ3N0ciAi4Lie4Liy4LiYIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2MQorbXNnaWQgIlByaW9yaXR5IgorbXNnc3RyICLguITguKfguLLguKHguKrguLPguITguLHguI0iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYxCittc2dpZCAiU3RhdHVzIgorbXNnc3RyICLguKrguJbguLLguJnguLAiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTgyCisjLCBjLWZvcm1hdAorbXNnaWQgIlByZXNzIGVudGVyIHRvIGtlZXAgdGhlIGN1cnJlbnQgY2hvaWNlWypdLCBvciB0eXBlIHNlbGVjdGlvbiBudW1iZXI6ICIKK21zZ3N0ciAi4LiB4LiUIGVudGVyIOC5gOC4nuC4t+C5iOC4reC4hOC4h+C4hOC5iOC4suC4m+C4seC4iOC4iOC4uOC4muC4seC4mVsqXSDguKvguKPguLfguK3guJ7guLTguKHguJ7guYzguKvguKHguLLguKLguYDguKXguILguILguK3guIfguJXguLHguKfguYDguKXguLfguK3guIE6ICIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3MjEKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IHJlcGxhY2luZyAlcyB3aXRoIGEgbGluay4iCittc2dzdHIgIuC4iOC4sOC5hOC4oeC5iOC5geC4l+C4meC4l+C4teC5iCAlcyDguJTguYnguKfguKLguKXguLTguIfguIHguYwiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNzYyCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbid0IGluc3RhbGwgdW5rbm93biBjaG9pY2UgJXMiCittc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC4leC4tOC4lOC4leC4seC5ieC4h+C4leC4seC4p+C5gOC4peC4t+C4reC4gSAlcyDguJfguLXguYjguYTguKHguYjguKPguLnguYnguIjguLHguIEiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNzgwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJza2lwIGNyZWF0aW9uIG9mICVzIGJlY2F1c2UgYXNzb2NpYXRlZCBmaWxlICVzIChvZiBsaW5rIGdyb3VwICVzKSBkb2Vzbid0ICIKKyJleGlzdC4iCittc2dzdHIgIuC4guC5ieC4suC4oeC4geC4suC4o+C4quC4o+C5ieC4suC4hyAlcyDguYDguJ7guKPguLLguLDguYHguJ/guYnguKEgJXMgKOC4i+C4tuC5iOC4h+C4reC4ouC4ueC5iOC5g+C4meC4geC4peC4uOC5iOC4oeC4peC4tOC4h+C4geC5jCAlcykg4LiX4Li14LmI4LmA4LiK4Li34LmI4Lit4Lih4LmC4Lii4LiH4Lit4Lii4Li54LmI4LmE4Lih4LmI4Lih4Li14Lit4Lii4Li54LmIIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTc5MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAibm90IHJlcGxhY2luZyAlcyB3aXRoIGEgbGluay4iCittc2dpZCAibm90IHJlbW92aW5nICVzIHNpbmNlIGl0J3Mgbm90IGEgc3ltbGluay4iCittc2dzdHIgIuC4iOC4sOC5hOC4oeC5iOC5geC4l+C4meC4l+C4teC5iCAlcyDguJTguYnguKfguKLguKXguLTguIfguIHguYwiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDQxIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDQ3CisjLCBjLWZvcm1hdAorbXNnaWQgIkNhbGwgJXMuIgorbXNnc3RyICLguYDguKPguLXguKLguIEgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDUxCisjLCBjLWZvcm1hdAorbXNnaWQgIkFsdGVybmF0aXZlICVzIHVuY2hhbmdlZCBiZWNhdXNlIGNob2ljZSAlcyBpcyBub3QgYXZhaWxhYmxlLiIKK21zZ3N0ciAi4LiX4Liy4LiH4LmA4Lil4Li34Lit4LiBICVzIOC5hOC4oeC5iOC4oeC4teC4geC4suC4o+C5gOC4m+C4peC4teC5iOC4ouC4meC5geC4m+C4peC4hyDguYDguJ7guKPguLLguLDguJXguLHguKfguYDguKXguLfguK3guIEgJXMg4LmE4Lih4LmI4Lih4Li14Lit4Lii4Li54LmIIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA1NQorIywgYy1mb3JtYXQKK21zZ2lkICJTa2lwIHVua25vd24gYWx0ZXJuYXRpdmUgJXMuIgorbXNnc3RyICLguILguYnguLLguKHguJfguLLguIfguYDguKXguLfguK3guIEgJXMg4LiX4Li14LmI4LmE4Lih4LmI4Lij4Li54LmJ4LiI4Lix4LiBIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA3NworIywgYy1mb3JtYXQKK21zZ2lkICJsaW5lIHRvbyBsb25nIG9yIG5vdCB0ZXJtaW5hdGVkIHdoaWxlIHRyeWluZyB0byByZWFkICVzIgorbXNnc3RyICLguJ7guJrguJrguKPguKPguJfguLHguJTguJfguLXguYjguKLguLLguKfguYDguIHguLTguJnguYTguJvguKvguKPguLfguK3guYTguKHguYjguYTguJTguYnguJvguLTguJTguJfguYnguLLguKLguILguJPguLDguJ7guKLguLLguKLguLLguKHguK3guYjguLLguJkgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDkwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTAzCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjExMworIywgYy1mb3JtYXQKK21zZ2lkICJTa2lwIGludmFsaWQgbGluZTogJXMiCittc2dzdHIgIuC4guC5ieC4suC4oeC4muC4o+C4o+C4l+C4seC4lOC4l+C4teC5iOC5hOC4oeC5iOC4luC4ueC4geC4leC5ieC4reC4hzogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTMyCisjLCBjLWZvcm1hdAorbXNnaWQgInJlbmFtaW5nICVzIGxpbmsgZnJvbSAlcyB0byAlcy4iCittc2dzdHIgIuC4geC4s+C4peC4seC4h+C5gOC4m+C4peC4teC5iOC4ouC4meC4iuC4t+C5iOC4reC4peC4tOC4h+C4geC5jCAlcyDguIjguLLguIEgJXMg4LmA4Lib4LmH4LiZICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE3MworIywgYy1mb3JtYXQKK21zZ2lkICJyZW5hbWluZyAlcyBzbGF2ZSBsaW5rIGZyb20gJXMgdG8gJXMuIgorbXNnc3RyICLguIHguLPguKXguLHguIfguYDguJvguKXguLXguYjguKLguJnguIrguLfguYjguK3guKXguLTguIfguIHguYzguKXguLnguIEgJXMg4LiI4Liy4LiBICVzIOC5gOC4m+C5h+C4mSAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgbmFtZSAoJXMpIG11c3Qgbm90IGNvbnRhaW4gJy8nIGFuZCBzcGFjZXMuIgorbXNnc3RyICLguIrguLfguYjguK3guJfguLLguIfguYDguKXguLfguK3guIEgKCVzKSDguIjguLDguKHguLUgJy8nIOC4q+C4o+C4t+C4reC4iuC5iOC4reC4h+C4p+C5iOC4suC4h+C5hOC4oeC5iOC5hOC4lOC5iSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgbGluayBpcyBub3QgYWJzb2x1dGUgYXMgaXQgc2hvdWxkIGJlOiAlcyIKK21zZ3N0ciAi4Lil4Li04LiH4LiB4LmM4LiX4Liy4LiH4LmA4Lil4Li34Lit4LiB4LmE4Lih4LmI4LmE4LiU4LmJ4LmA4Lib4LmH4LiZ4Lil4Li04LiH4LiB4LmM4Liq4Lix4Lih4Lia4Li54Lij4LiT4LmM4Lit4Lii4LmI4Liy4LiH4LiX4Li14LmI4LiE4Lin4Lij4LiI4Liw4LmA4Lib4LmH4LiZOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxOTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgcGF0aCBpcyBub3QgYWJzb2x1dGUgYXMgaXQgc2hvdWxkIGJlOiAlcyIKK21zZ3N0ciAi4Lie4Liy4LiY4LiX4Liy4LiH4LmA4Lil4Li34Lit4LiB4LmE4Lih4LmI4LmE4LiU4LmJ4LmA4Lib4LmH4LiZ4Lie4Liy4LiY4Liq4Lix4Lih4Lia4Li54Lij4LiT4LmM4Lit4Lii4LmI4Liy4LiH4LiX4Li14LmI4LiE4Lin4Lij4LiI4Liw4LmA4Lib4LmH4LiZOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyMjQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImFsdGVybmF0aXZlICVzIGNhbid0IGJlIG1hc3RlcjogJXMiCittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgbWFzdGVyOiBpdCBpcyBhIHNsYXZlIG9mICVzIgorbXNnc3RyICLguJfguLLguIfguYDguKXguLfguK3guIEgJXMg4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4LmA4Lib4LmH4LiZ4Lij4Liy4Lii4LiB4Liy4Lij4Lir4Lil4Lix4LiBOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyMzIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgbGluayAlcyBpcyBhbHJlYWR5IG1hbmFnZWQgYnkgJXMuIgorbXNnc3RyICLguKXguLTguIfguIHguYzguJfguLLguIfguYDguKXguLfguK3guIEgJXMg4LiW4Li54LiB4LiI4Lix4LiU4LiB4Liy4Lij4LmC4LiU4LiiICVzIOC4reC4ouC4ueC5iOC5geC4peC5ieC4pyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgcGF0aCAlcyBkb2Vzbid0IGV4aXN0LiIKK21zZ3N0ciAi4Lie4Liy4LiY4LiX4Liy4LiH4LmA4Lil4Li34Lit4LiBICVzIOC5hOC4oeC5iOC4oeC4teC4reC4ouC4ueC5iCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImFsdGVybmF0aXZlICVzIGNhbid0IGJlIHNsYXZlIG9mICVzOiAlcyIKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBzbGF2ZSBvZiAlczogaXQgaXMgYSBtYXN0ZXIgYWx0ZXJuYXRpdmUuIgorbXNnc3RyICLguJfguLLguIfguYDguKXguLfguK3guIEgJXMg4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4LmA4Lib4LmH4LiZ4Lij4Liy4Lii4LiB4Liy4Lij4Lil4Li54LiB4LiC4Lit4LiHICVzOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNTgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImFsdGVybmF0aXZlICVzIGNhbid0IGJlIG1hc3RlcjogJXMiCittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgc2xhdmUgb2YgJXM6IGl0IGlzIGEgc2xhdmUgb2YgJXMiCittc2dzdHIgIuC4l+C4suC4h+C5gOC4peC4t+C4reC4gSAlcyDguYTguKHguYjguKrguLLguKHguLLguKPguJbguYDguJvguYfguJnguKPguLLguKLguIHguLLguKPguKvguKXguLHguIE6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI3OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYWx0ZXJuYXRpdmUgbGluayAlcyBpcyBhbHJlYWR5IG1hbmFnZWQgYnkgJXMuIgorbXNnaWQgImFsdGVybmF0aXZlIGxpbmsgJXMgaXMgYWxyZWFkeSBtYW5hZ2VkIGJ5ICVzIChzbGF2ZSBvZiAlcykuIgorbXNnc3RyICLguKXguLTguIfguIHguYzguJfguLLguIfguYDguKXguLfguK3guIEgJXMg4LiW4Li54LiB4LiI4Lix4LiU4LiB4Liy4Lij4LmC4LiU4LiiICVzIOC4reC4ouC4ueC5iOC5geC4peC5ieC4pyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBhcmd1bWVudCBgJXMnIgorbXNnc3RyICLguYTguKHguYjguKPguLnguYnguIjguLHguIHguK3guLLguKPguYzguIHguLTguKfguYDguKHguJnguJXguYwgYCVzJyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNDMKK21zZ2lkICItLWluc3RhbGwgbmVlZHMgPGxpbms+IDxuYW1lPiA8cGF0aD4gPHByaW9yaXR5PiIKK21zZ3N0ciAiLS1pbnN0YWxsIOC4leC5ieC4reC4h+C4geC4suC4oyA8bGluaz4gPG5hbWU+IDxwYXRoPiA8cHJpb3JpdHk+IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM0NiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM5NworbXNnaWQgIjxsaW5rPiBhbmQgPHBhdGg+IGNhbid0IGJlIHRoZSBzYW1lIgorbXNnc3RyICI8bGluaz4g4LiB4Lix4LiaIDxwYXRoPiDguIjguLDguYDguKvguKHguLfguK3guJnguIHguLHguJnguYTguKHguYjguYTguJTguYkiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzQ5Cittc2dpZCAicHJpb3JpdHkgbXVzdCBiZSBhbiBpbnRlZ2VyIgorbXNnc3RyICLguITguKfguLLguKHguKrguLPguITguLHguI3guJXguYnguK3guIfguYDguJvguYfguJnguJXguLHguKfguYDguKXguIIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzYyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgPG5hbWU+IDxwYXRoPiIKK21zZ3N0ciAiLS0lcyDguJXguYnguK3guIfguIHguLLguKMgPG5hbWU+IDxwYXRoPiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyA8bmFtZT4iCittc2dzdHIgIi0tJXMg4LiV4LmJ4Lit4LiH4LiB4Liy4LijIDxuYW1lPiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzODgKK21zZ2lkICItLXNsYXZlIG9ubHkgYWxsb3dlZCB3aXRoIC0taW5zdGFsbCIKK21zZ3N0ciAiLS1zbGF2ZSDguYPguIrguYnguYTguJTguYnguIHguLHguJogLS1pbnN0YWxsIOC5gOC4l+C5iOC4suC4meC4seC5ieC4mSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzOTAKK21zZ2lkICItLXNsYXZlIG5lZWRzIDxsaW5rPiA8bmFtZT4gPHBhdGg+IgorbXNnc3RyICItLXNsYXZlIOC4leC5ieC4reC4h+C4geC4suC4oyA8bGluaz4gPG5hbWU+IDxwYXRoPiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzOTkKKyMsIGMtZm9ybWF0Cittc2dpZCAibmFtZSAlcyBpcyBib3RoIHByaW1hcnkgYW5kIHNsYXZlIgorbXNnc3RyICLguIrguLfguYjguK0gJXMg4LmA4Lib4LmH4LiZ4LiX4Lix4LmJ4LiH4Lij4Liy4Lii4LiB4Liy4Lij4Lir4Lil4Lix4LiB4LmB4Lil4Liw4Lij4Liy4Lii4LiB4Liy4Lij4Lil4Li54LiBIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQwMgorIywgYy1mb3JtYXQKK21zZ2lkICJsaW5rICVzIGlzIGJvdGggcHJpbWFyeSBhbmQgc2xhdmUiCittc2dzdHIgIuC4peC4tOC4h+C4geC5jCAlcyDguYDguJvguYfguJnguJfguLHguYnguIfguKXguLTguIfguIHguYzguKvguKXguLHguIHguYHguKXguLDguKXguLTguIfguIHguYzguKXguLnguIEiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDIyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSA8ZmlsZT4gYXJndW1lbnQiCittc2dzdHIgIi0tJXMg4LiV4LmJ4Lit4LiH4LiB4Liy4Lij4Lit4Liy4Lij4LmM4LiB4Li04Lin4LmA4Lih4LiZ4LiV4LmMIDxmaWxlPiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gYCVzJyIKK21zZ3N0ciAi4LmE4Lih4LmI4Lij4Li54LmJ4LiI4Lix4LiB4LiV4Lix4Lin4LmA4Lil4Li34Lit4LiBIGAlcyciCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDUzCittc2dpZCAiIgorIm5lZWQgLS1kaXNwbGF5LCAtLXF1ZXJ5LCAtLWxpc3QsIC0tZ2V0LXNlbGVjdGlvbnMsIC0tY29uZmlnLCAtLXNldCwgLS1zZXQtIgorInNlbGVjdGlvbnMsIC0taW5zdGFsbCwgLS1yZW1vdmUsIC0tYWxsLCAtLXJlbW92ZS1hbGwgb3IgLS1hdXRvIgorbXNnc3RyICIiCisi4LiV4LmJ4Lit4LiH4LiB4Liy4LijIC0tZGlzcGxheSwgLS1xdWVyeSwgLS1saXN0LCAtLWdldC1zZWxlY3Rpb25zLCAtLWNvbmZpZywgLS1zZXQsIC0tc2V0LSIKKyJzZWxlY3Rpb25zLCAtLWluc3RhbGwsIC0tcmVtb3ZlLCAtLWFsbCwgLS1yZW1vdmUtYWxsIOC4q+C4o+C4t+C4rSAtLWF1dG8iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDkwCittc2dpZCAiPHN0YW5kYXJkIGlucHV0PiIKK21zZ3N0ciAiPOC4reC4tOC4meC4nuC4uOC4leC4oeC4suC4leC4o+C4kOC4suC4mT4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTAwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTAzCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIGFsdGVybmF0aXZlcyBmb3IgJXMuIgorbXNnc3RyICLguYTguKHguYjguKHguLXguJfguLLguIfguYDguKXguLfguK3guIHguKrguLPguKvguKPguLHguJogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTMwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIlcyBpcyBkYW5nbGluZywgaXQgd2lsbCBiZSB1cGRhdGVkIHdpdGggYmVzdCBjaG9pY2UuIgorbXNnaWQgIiVzLyVzIGlzIGRhbmdsaW5nLCBpdCB3aWxsIGJlIHVwZGF0ZWQgd2l0aCBiZXN0IGNob2ljZS4iCittc2dzdHIgIuC4peC4tOC4h+C4geC5jCAlcyDguYDguJvguYfguJnguKXguLTguIfguIHguYzguILguLLguJQg4LiI4Liw4Lib4Lij4Lix4Lia4LmD4Lir4LmJ4LmA4Lib4LmH4LiZ4LiV4Lix4Lin4LmA4Lil4Li34Lit4LiB4LiX4Li14LmI4LiU4Li14LiX4Li14LmI4Liq4Li44LiUIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUzNAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiVzIGhhcyBiZWVuIGNoYW5nZWQgKG1hbnVhbGx5IG9yIGJ5IGEgc2NyaXB0KS4gU3dpdGNoaW5nIHRvIG1hbnVhbCAiCisjfCAidXBkYXRlcyBvbmx5LiIKK21zZ2lkICIiCisiJXMvJXMgaGFzIGJlZW4gY2hhbmdlZCAobWFudWFsbHkgb3IgYnkgYSBzY3JpcHQpLiBTd2l0Y2hpbmcgdG8gbWFudWFsICIKKyJ1cGRhdGVzIG9ubHkuIgorbXNnc3RyICIiCisiJXMg4LmE4LiU4LmJ4LiW4Li54LiB4LmA4Lib4Lil4Li14LmI4Lii4LiZ4LmB4Lib4Lil4LiHICjguJTguYnguKfguKLguIHguLLguKPguKrguLHguYjguIfguYDguK3guIfguKvguKPguLfguK3guJzguYjguLLguJnguKrguITguKPguLTguJvguJXguYwpIOC4iOC4sOC5gOC4m+C4peC4teC5iOC4ouC4meC4quC4ueC5iOC4geC4suC4o+C4m+C4o+C4seC4muC4guC5ieC4reC4oeC4ueC4peC5geC4muC4muC4quC4seC5iOC4h+C5gOC4reC4h+C5gOC4l+C5iOC4suC4meC4seC5ieC4mSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NDIKKyMsIGMtZm9ybWF0Cittc2dpZCAic2V0dGluZyB1cCBhdXRvbWF0aWMgc2VsZWN0aW9uIG9mICVzLiIKK21zZ3N0ciAi4LiB4Liz4Lil4Lix4LiH4LiB4Liz4Lir4LiZ4LiU4LiX4Liy4LiH4LmA4Lil4Li34Lit4LiB4LmB4Lia4Lia4Lit4Lix4LiV4LmC4LiZ4Lih4Lix4LiV4Li04Liq4Liz4Lir4Lij4Lix4LiaICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU1MQorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBmb3IgJXMgbm90IHJlZ2lzdGVyZWQsIG5vdCBzZXR0aW5nLiIKK21zZ3N0ciAi4LiX4Liy4LiH4LmA4Lil4Li34Lit4LiBICVzIOC4quC4s+C4q+C4o+C4seC4miAlcyDguYTguKHguYjguYTguJTguYnguKXguIfguJfguLDguYDguJrguLXguKLguJnguYTguKfguYkg4LiI4Liw4LmE4Lih4LmI4LiB4Liz4Lir4LiZ4LiU4LiE4LmI4LiyIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU1NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU2MworIywgYy1mb3JtYXQKK21zZ2lkICJUaGVyZSBpcyBubyBwcm9ncmFtIHdoaWNoIHByb3ZpZGVzICVzLiIKK21zZ3N0ciAi4LmE4Lih4LmI4Lih4Li14LmC4Lib4Lij4LmB4LiB4Lij4Lih4LiX4Li14LmI4LiI4Lix4LiU4LmA4LiV4Lij4Li14Lii4LihICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU2NSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU3NQorbXNnaWQgIk5vdGhpbmcgdG8gY29uZmlndXJlLiIKK21zZ3N0ciAi4LmE4Lih4LmI4Lih4Li14Lit4Liw4LmE4Lij4LiI4Liw4LiV4Lix4LmJ4LiH4LiE4LmI4LiyIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU3MworIywgYy1mb3JtYXQKK21zZ2lkICJUaGVyZSBpcyBvbmx5IG9uZSBhbHRlcm5hdGl2ZSBpbiBsaW5rIGdyb3VwICVzOiAlcyIKK21zZ3N0ciAi4Lih4Li14LiX4Liy4LiH4LmA4Lil4Li34Lit4LiB4LmA4Lie4Li14Lii4LiH4LiX4Liy4LiH4LmA4LiU4Li14Lii4Lin4LmD4LiZ4LiB4Lil4Li44LmI4Lih4Lil4Li04LiH4LiB4LmMICVzOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1ODQKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgZm9yICVzIG5vdCByZWdpc3RlcmVkLCBub3QgcmVtb3ZpbmcuIgorbXNnc3RyICLguJfguLLguIfguYDguKXguLfguK3guIEgJXMg4Liq4Liz4Lir4Lij4Lix4LiaICVzIOC5hOC4oeC5iOC5hOC4lOC5ieC4peC4h+C4l+C4sOC5gOC4muC4teC4ouC4meC5hOC4p+C5iSDguIjguLDguYTguKHguYjguKXguJoiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTkyCisjLCBjLWZvcm1hdAorbXNnaWQgInJlbW92aW5nIG1hbnVhbGx5IHNlbGVjdGVkIGFsdGVybmF0aXZlIC0gc3dpdGNoaW5nICVzIHRvIGF1dG8gbW9kZSIKK21zZ3N0ciAi4LiB4Liz4Lil4Lix4LiH4Lil4Lia4LiX4Liy4LiH4LmA4Lil4Li34Lit4LiB4LiX4Li14LmI4LmA4Lil4Li34Lit4LiB4LmB4Lia4Lia4Liq4Lix4LmI4LiH4LmA4Lit4LiHIC0g4LiI4Liw4LmA4Lib4Lil4Li14LmI4Lii4LiZICVzIOC5gOC4guC5ieC4suC4quC4ueC5iOC5guC4q+C4oeC4lOC4reC4seC4leC5guC4meC4oeC4seC4leC4tCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MTcKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImF1dG9tYXRpYyB1cGRhdGVzIG9mICVzIGFyZSBkaXNhYmxlZCwgbGVhdmluZyBpdCBhbG9uZS4iCittc2dpZCAiYXV0b21hdGljIHVwZGF0ZXMgb2YgJXMvJXMgYXJlIGRpc2FibGVkLCBsZWF2aW5nIGl0IGFsb25lLiIKK21zZ3N0ciAi4LiB4Liy4Lij4Lib4Lij4Lix4Lia4LiC4LmJ4Lit4Lih4Li54Lil4LmB4Lia4Lia4Lit4Lix4LiV4LmC4LiZ4Lih4Lix4LiV4Li04LiC4Lit4LiHICVzIOC4luC4ueC4geC4m+C4tOC4lOC5hOC4p+C5iSDguIjguLDguYTguKHguYjguYHguJXguLDguJXguYnguK3guIciCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjE5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ0byByZXR1cm4gdG8gYXV0b21hdGljIHVwZGF0ZXMgdXNlIGB1cGRhdGUtYWx0ZXJuYXRpdmVzIC0tYXV0byAlcycuIgorbXNnaWQgInRvIHJldHVybiB0byBhdXRvbWF0aWMgdXBkYXRlcyB1c2UgJyVzIC0tYXV0byAlcycuIgorbXNnc3RyICIiCisi4Lir4Liy4LiB4LiV4LmJ4Lit4LiH4LiB4Liy4Lij4LiB4Lil4Lix4Lia4Liq4Li54LmI4LiB4Liy4Lij4Lib4Lij4Lix4Lia4LiC4LmJ4Lit4Lih4Li54Lil4LmB4Lia4Lia4Lit4Lix4LiV4LmC4LiZ4Lih4Lix4LiV4Li0IOC5g+C4iuC5ieC4hOC4s+C4quC4seC5iOC4hyBgdXBkYXRlLWFsdGVybmF0aXZlcyAtLWF1dG8gJXMnIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYzNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1c2luZyAlcyB0byBwcm92aWRlICVzICglcykgaW4gJXMuIgorbXNnc3RyICLguIjguLDguYPguIrguYkgJXMg4LmA4Lie4Li34LmI4Lit4LiI4Lix4LiU4LmA4LiV4Lij4Li14Lii4LihICVzICglcykg4LmD4LiZJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjQ0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmb3JjaW5nIHJlaW5zdGFsbGF0aW9uIG9mIGFsdGVybmF0aXZlICVzIGJlY2F1c2UgbGluayBncm91cCAlcyBpcyBicm9rZW4uIgorbXNnc3RyICLguIjguLDguJrguLHguIfguITguLHguJrguJXguLTguJTguJXguLHguYnguIfguJfguLLguIfguYDguKXguLfguK3guIEgJXMg4LiL4LmJ4Liz4LmD4Lir4Lih4LmIIOC5gOC4nuC4o+C4suC4sOC4geC4peC4uOC5iOC4oeC4peC4tOC4h+C4geC5jCAlcyDguYDguKrguLXguKLguK3guKLguLnguYgiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjUxCisjLCBjLWZvcm1hdAorbXNnaWQgImN1cnJlbnQgYWx0ZXJuYXRpdmUgJXMgaXMgdW5rbm93biwgc3dpdGNoaW5nIHRvICVzIGZvciBsaW5rIGdyb3VwICVzLiIKK21zZ3N0ciAi4LmE4Lih4LmI4Lij4Li54LmJ4LiI4Lix4LiB4LiX4Liy4LiH4LmA4Lil4Li34Lit4LiB4Lib4Lix4LiI4LiI4Li44Lia4Lix4LiZICVzIOC4iOC4sOC5gOC4m+C4peC4teC5iOC4ouC4meC5hOC4m+C5g+C4iuC5iSAlcyDguKrguLPguKvguKPguLHguJrguIHguKXguLjguYjguKHguKXguLTguIfguIHguYwgJXMiCisKKyN+IG1zZ2lkICJpdCBpcyBhIG1hc3RlciBhbHRlcm5hdGl2ZS4iCisjfiBtc2dzdHIgIuC4l+C4suC4h+C5gOC4peC4t+C4reC4geC4meC4teC5ieC5gOC4m+C5h+C4meC4o+C4suC4ouC4geC4suC4o+C4q+C4peC4seC4geC4reC4ouC4ueC5iCIKKworI34gbXNnaWQgIml0IGlzIGEgc2xhdmUgb2YgJXMiCisjfiBtc2dzdHIgIuC4l+C4suC4h+C5gOC4peC4t+C4reC4geC4meC4teC5ieC5gOC4m+C5h+C4meC4o+C4suC4ouC4geC4suC4o+C4peC4ueC4geC4guC4reC4hyAlcyDguK3guKLguLnguYgiCisKKyN+IG1zZ2lkICJjYW5ub3Qgc3RhdCAlczogJXMiCisjfiBtc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4liBzdGF0ICVzOiAlcyIKKworI34gbXNnaWQgInJlYWRsaW5rKCVzKSBmYWlsZWQ6ICVzIgorI34gbXNnc3RyICJyZWFkbGluayglcykg4LmE4Lih4LmI4Liq4Liz4LmA4Lij4LmH4LiIOiAlcyIKKworI34gbXNnaWQgInNjYW4gb2YgJXMgZmFpbGVkOiAlcyIKKyN+IG1zZ3N0ciAi4LiV4Lij4Lin4LiI4LiC4LmJ4Lit4Lih4Li54LilICVzIOC5hOC4oeC5iOC4quC4s+C5gOC4o+C5h+C4iDogJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlY3V0ZSAlczogJXMiCisjfiBtc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC5gOC4o+C4teC4ouC4geC4l+C4s+C4h+C4suC4mSAlczogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gbWFrZSAlcyBhIHN5bWxpbmsgdG8gJXM6ICVzIgorI34gbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguKrguKPguYnguLLguIcgJXMg4LmD4Lir4LmJ4LmA4Lib4LmH4LiZIHN5bWxpbmsg4LmE4Lib4Lii4Lix4LiHICVzOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsICVzIGFzICVzOiAlcyIKKyN+IG1zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4LiV4Li04LiU4LiV4Lix4LmJ4LiHICVzIOC5gOC4m+C5h+C4mSAlczogJXMiCisKKyN+IG1zZ2lkICJ3aGlsZSB3cml0aW5nICVzOiAlcyIKKyN+IG1zZ3N0ciAi4LiC4LiT4Liw4LmA4LiC4Li14Lii4LiZICVzOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byByZWFkICVzOiAlcyIKKyN+IG1zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4Lit4LmI4Liy4LiZICVzOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byBjbG9zZSAlczogJXMiCisjfiBtc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC4m+C4tOC4lCAlczogJXMiCisKKyN+IG1zZ2lkICJjYW5ub3Qgd3JpdGUgJXM6ICVzIgorI34gbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguYDguILguLXguKLguJkgJXM6ICVzIgorCisjLCBmdXp6eQorI358IG1zZ2lkICJ1bmFibGUgdG8gcmVuYW1lICVzIHRvICVzOiAlcyIKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcmVuYW1lIGZpbGUgJyVzJyB0byAnJXMnIgorI34gbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguYDguJvguKXguLXguYjguKLguJnguIrguLfguYjguK0gJXMg4LmE4Lib4LmA4Lib4LmH4LiZICVzOiAlcyIKKworI34gbXNnaWQgIm1hbGxvYyBmYWlsZWQgKCVsZCBieXRlcykiCisjfiBtc2dzdHIgIm1hbGxvYyDguYTguKHguYjguKrguLPguYDguKPguYfguIggKCVsZCDguYTguJrguJXguYwpIgorCisjfiBtc2dpZCAicmVhbGxvYyBmYWlsZWQgKCVsZCBieXRlcykiCisjfiBtc2dzdHIgInJlYWxsb2Mg4LmE4Lih4LmI4Liq4Liz4LmA4Lij4LmH4LiIICglbGQg4LmE4Lia4LiV4LmMKSIKKworI34gbXNnaWQgInVuYWJsZSB0byB1bmJ1ZmZlciBgJS4yNTVzJyIKKyN+IG1zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4LmA4Lil4Li04LiB4LmD4LiK4LmJ4Lia4Lix4Lif4LmA4Lif4Lit4Lij4LmM4Liq4Liz4Lir4Lij4Lix4LiaIGAlLjI1MHMnIgorCisjfiBtc2dpZCAicGFydCBmaWxlIGAlLjI1MHMnIGhhcyB0cmFpbGluZyBnYXJiYWdlIgorI34gbXNnc3RyICLguYHguJ/guYnguKHguKrguYjguKfguJnguKLguYjguK3guKIgYCUuMjUwcycg4Lih4Li14LiC4Lii4Liw4LiX4Li14LmI4LiX4LmJ4Liy4Lii4LmB4Lif4LmJ4LihIgorCisjfiBtc2dpZCAic2l6ZSAlN2Qgb2NjdXJzICU1ZCB0aW1lc1xuIgorI34gbXNnc3RyICLguILguJnguLLguJQgJTdkIOC4nuC4miAlZCDguITguKPguLHguYnguIdcbiIKKworI34gbXNnaWQgIm91dCBvZiBtZW1vcnkgcHVzaGluZyBlcnJvciBoYW5kbGVyOiAiCisjfiBtc2dzdHIgIuC4q+C4meC5iOC4p+C4ouC4hOC4p+C4suC4oeC4iOC4s+C4q+C4oeC4lOC4guC4k+C4sCBwdXNoIOC4leC4seC4p+C4iOC4seC4lOC4geC4suC4o+C4guC5ieC4reC4nOC4tOC4lOC4nuC4peC4suC4lDogIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHVubG9jayBkcGtnIHN0YXR1cyBkYXRhYmFzZSIKKyN+IG1zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4Lib4Lil4LiU4Lil4LmH4Lit4LiE4LiQ4Liy4LiZ4LiC4LmJ4Lit4Lih4Li54Lil4Liq4LiW4Liy4LiZ4Liw4LiC4Lit4LiHIGRwa2ciCisKKyN+IG1zZ2lkICJjb3B5IGluZm8gZmlsZSBgJS4yNTVzJyIKKyN+IG1zZ3N0ciAi4LiE4Lix4LiU4Lil4Lit4LiB4LmB4Lif4LmJ4Lih4LiC4LmJ4Lit4Lih4Li54Lil4LmB4Lie4LiB4LmA4LiB4LiIIGAlLjI1NXMnIgorCisjfiBtc2dpZCAicGFyc2UgZXJyb3IiCisjfiBtc2dzdHIgIuC4guC5ieC4reC4nOC4tOC4lOC4nuC4peC4suC4lOC4guC4k+C4sOC5geC4iOC4hyIKKworI34gbXNnaWQgImZhaWxlZCB0byB3cml0ZSBwYXJzaW5nIHdhcm5pbmciCisjfiBtc2dzdHIgIuC5gOC4guC4teC4ouC4meC4hOC4s+C5gOC4leC4t+C4reC4meC5gOC4geC4teC5iOC4ouC4p+C4geC4seC4muC4geC4suC4o+C5geC4iOC4h+C5hOC4oeC5iOC4quC4s+C5gOC4o+C5h+C4iCIKKworI34gbXNnaWQgInVuYWJsZSB0byBsb2NrIHRyaWdnZXJzIGFyZWEiCisjfiBtc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC4peC5h+C4reC4hOC5gOC4meC4t+C5ieC4reC4l+C4teC5iOC4guC4reC4h+C4geC4suC4o+C4quC4sOC4geC4tOC4lCIKKworI34gbXNnaWQgImZhaWxlZCB0byBydW4gJXMgKCUuMjUwcykiCisjfiBtc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC5gOC4o+C4teC4ouC4geC4l+C4s+C4h+C4suC4mSAlcyAoJS4yNTBzKSIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIHNoZWxsICglLjI1MHMpIgorI34gbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguYDguKPguLXguKLguIHguYDguIrguKXguKXguYwgKCUuMjUwcykiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gY2hlY2sgZm9yIGV4aXN0ZW5jZSBvZiBgJS4yNTBzJyIKKyN+IG1zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4LiV4Lij4Lin4LiI4Liq4Lit4Lia4LiE4Lin4Liy4Lih4Lih4Li14Lit4Lii4Li54LmI4LiC4Lit4LiHIGAlLjI1MHMnIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgcm0gZm9yIGNsZWFudXAiCisjfiBtc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC5gOC4o+C4teC4ouC4gSBybSDguYDguJ7guLfguYjguK3guKXguJrguILguYnguK3guKHguLnguKXguYTguJTguYkiCisKKyN+IG1zZ2lkICIiCisjfiAiJXMgZGVidWdnaW5nIG9wdGlvbiwgLS1kZWJ1Zz08b2N0YWw+IG9yIC1EPG9jdGFsPjpcbiIKKyN+ICJcbiIKKyN+ICIgbnVtYmVyICByZWYuIGluIHNvdXJjZSAgIGRlc2NyaXB0aW9uXG4iCisjfiAiICAgICAgMSAgIGdlbmVyYWwgICAgICAgICAgIEdlbmVyYWxseSBoZWxwZnVsIHByb2dyZXNzIGluZm9ybWF0aW9uXG4iCisjfiAiICAgICAgMiAgIHNjcmlwdHMgICAgICAgICAgIEludm9jYXRpb24gYW5kIHN0YXR1cyBvZiBtYWludGFpbmVyIHNjcmlwdHNcbiIKKyN+ICIgICAgIDEwICAgZWFjaGZpbGUgICAgICAgICAgT3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkXG4iCisjfiAiICAgIDEwMCAgIGVhY2hmaWxlZGV0YWlsICAgIExvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkXG4iCisjfiAiICAgICAyMCAgIGNvbmZmICAgICAgICAgICAgIE91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGVcbiIKKyN+ICIgICAgMjAwICAgY29uZmZkZXRhaWwgICAgICAgTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggY29uZmlndXJhdGlvbiBmaWxlXG4iCisjfiAiICAgICA0MCAgIGRlcGNvbiAgICAgICAgICAgIERlcGVuZGVuY2llcyBhbmQgY29uZmxpY3RzXG4iCisjfiAiICAgIDQwMCAgIGRlcGNvbmRldGFpbCAgICAgIExvdHMgb2YgZGVwZW5kZW5jaWVzL2NvbmZsaWN0cyBvdXRwdXRcbiIKKyN+ICIgIDEwMDAwICAgdHJpZ2dlcnMgICAgICAgICAgVHJpZ2dlciBhY3RpdmF0aW9uIGFuZCBwcm9jZXNzaW5nXG4iCisjfiAiICAyMDAwMCAgIHRyaWdnZXJzZGV0YWlsICAgIExvdHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2Vyc1xuIgorI34gIiAgNDAwMDAgICB0cmlnZ2Vyc3N0dXBpZCAgICBTaWxseSBhbW91bnRzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnNcbiIKKyN+ICIgICAxMDAwICAgdmVyeXZlcmJvc2UgICAgICAgTG90cyBvZiBkcml2ZWwgYWJvdXQgZWcgdGhlIGRwa2cvaW5mbyAiCisjfiAiZGlyZWN0b3J5XG4iCisjfiAiICAgMjAwMCAgIHN0dXBpZGx5dmVyYm9zZSAgIEluc2FuZSBhbW91bnRzIG9mIGRyaXZlbFxuIgorI34gIlxuIgorI34gIkRlYnVnZ2luZyBvcHRpb25zIGFyZSBiZSBtaXhlZCB1c2luZyBiaXR3aXNlLW9yLlxuIgorI34gIk5vdGUgdGhhdCB0aGUgbWVhbmluZ3MgYW5kIHZhbHVlcyBhcmUgc3ViamVjdCB0byBjaGFuZ2UuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICLguJXguLHguKfguYDguKXguLfguK3guIHguIHguLLguKPguJTguLXguJrguLHguYrguIHguILguK3guIcgJXM6IC0tZGVidWc9POC4kOC4suC4meC5geC4m+C4lD4g4Lir4Lij4Li34LitIC1EPOC4kOC4suC4meC5geC4m+C4lD46XG4iCisjfiAiXG4iCisjfiAiICAgIOC5gOC4peC4giAg4Lij4Liy4Lii4LiB4Liy4Lij4LmD4LiZ4LmC4Lib4Lij4LmB4LiB4Lij4LihICDguITguLPguJrguKPguKPguKLguLLguKJcbiIKKyN+ICIgICAgICAxICAgZ2VuZXJhbCAgICAgICAgICAg4LiC4LmJ4Lit4Lih4Li54Lil4LiE4Lin4Liy4Lih4LiE4Li34Lia4Lir4LiZ4LmJ4Liy4LiX4Lix4LmI4Lin4LmE4Lib4LiX4Li14LmI4LmA4Lib4LmH4LiZ4Lib4Lij4Liw4LmC4Lii4LiK4LiZ4LmMXG4iCisjfiAiICAgICAgMiAgIHNjcmlwdHMgICAgICAgICAgIOC4geC4suC4o+C5gOC4o+C4teC4ouC4geC5geC4peC4sOC4nOC4peC4peC4seC4nuC4mOC5jOC4guC4reC4h+C4quC4hOC4o+C4tOC4m+C4leC5jOC4nOC4ueC5ieC4lOC4ueC5geC4peC5geC4nuC4geC5gOC4geC4iFxuIgorI34gIiAgICAgMTAgICBlYWNoZmlsZSAgICAgICAgICDguYHguKrguJTguIfguJzguKXguKXguLHguJ7guJjguYzguKrguLPguKvguKPguLHguJrguIHguLLguKPguJvguKPguLDguKHguKfguKXguJzguKXguYHguJXguYjguKXguLDguYHguJ/guYnguKFcbiIKKyN+ICIgICAgMTAwICAgZWFjaGZpbGVkZXRhaWwgICAg4LmB4Liq4LiU4LiH4Lic4Lil4Lil4Lix4Lie4LiY4LmM4Liq4Liz4Lir4Lij4Lix4Lia4LiB4Liy4Lij4Lib4Lij4Liw4Lih4Lin4Lil4Lic4Lil4LmB4LiV4LmI4Lil4Liw4LmB4Lif4LmJ4Lih4Lit4Lii4LmI4Liy4LiH4Lil4Liw4LmA4Lit4Li14Lii4LiUXG4iCisjfiAiICAgICAyMCAgIGNvbmZmICAgICAgICAgICAgIOC5geC4quC4lOC4h+C4nOC4peC4peC4seC4nuC4mOC5jOC4quC4s+C4q+C4o+C4seC4muC5geC4n+C5ieC4oeC4hOC5iOC4suC4leC4seC5ieC4h+C5geC4leC5iOC4peC4sOC5geC4n+C5ieC4oVxuIgorI34gIiAgICAyMDAgICBjb25mZmRldGFpbCAgICAgICDguYHguKrguJTguIfguJzguKXguKXguLHguJ7guJjguYzguKrguLPguKvguKPguLHguJrguYHguJ/guYnguKHguITguYjguLLguJXguLHguYnguIfguYHguJXguYjguKXguLDguYHguJ/guYnguKHguK3guKLguYjguLLguIfguKXguLDguYDguK3guLXguKLguJRcbiIKKyN+ICIgICAgIDQwICAgZGVwY29uICAgICAgICAgICAg4LiE4Lin4Liy4Lih4LiC4Li24LmJ4LiZ4LiV4LmI4Lit4LiB4Lix4LiZ4LmB4Lil4Liw4LiC4LmJ4Lit4LiC4Lix4LiU4LmB4Lii4LmJ4LiH4Lij4Liw4Lir4Lin4LmI4Liy4LiH4LmB4Lie4LiB4LmA4LiB4LiIXG4iCisjfiAiICAgIDQwMCAgIGRlcGNvbmRldGFpbCAgICAgIOC4hOC4p+C4suC4oeC4guC4tuC5ieC4meC4leC5iOC4reC4geC4seC4meC5geC4peC4sOC4guC5ieC4reC4guC4seC4lOC5geC4ouC5ieC4h+C4o+C4sOC4q+C4p+C5iOC4suC4h+C5geC4nuC4geC5gOC4geC4iOC4reC4ouC5iOC4suC4h+C4peC4sOC5gOC4reC4teC4ouC4lFxuIgorI34gIiAgMTAwMDAgICB0cmlnZ2VycyAgICAgICAgICDguIHguLLguKPguYDguKPguLXguKLguIHguYHguKXguLDguIHguLLguKPguJvguKPguLDguKHguKfguKXguJzguKXguIHguLLguKPguKrguLDguIHguLTguJRcbiIKKyN+ICIgIDIwMDAwICAgdHJpZ2dlcnNkZXRhaWwgICAg4LmB4Liq4LiU4LiH4LiB4Liy4Lij4Liq4Liw4LiB4Li04LiU4Lit4Lii4LmI4Liy4LiH4Lil4Liw4LmA4Lit4Li14Lii4LiUXG4iCisjfiAiICA0MDAwMCAgIHRyaWdnZXJzc3R1cGlkICAgIOC5geC4quC4lOC4h+C4geC4suC4o+C4quC4sOC4geC4tOC4lOC4reC4ouC5iOC4suC4h+C4peC4sOC5gOC4reC4teC4ouC4lOC4meC5iOC4suC4o+C4s+C4hOC4suC4jVxuIgorI34gIiAgIDEwMDAgICB2ZXJ5dmVyYm9zZSAgICAgICDguJ7guKXguYjguLLguKHguYDguIHguLXguYjguKLguKfguIHguLHguJrguYDguKPguLfguYjguK3guIfguK3guKLguYjguLLguIfguYTguJTguYDguKPguIHguJfguK3guKPguLUgZHBrZy9pbmZvIOC4lOC5ieC4p+C4olxuIgorI34gIiAgIDIwMDAgICBzdHVwaWRseXZlcmJvc2UgICDguJ7guKXguYjguLLguKHguJfguLjguIHguYDguKPguLfguYjguK3guIfguK3guKLguYjguLLguIfguJnguYjguLLguKPguLPguITguLLguI1cbiIKKyN+ICJcbiIKKyN+ICLguJXguLHguKfguYDguKXguLfguK3guIHguIHguLLguKPguJTguLXguJrguLHguYrguIHguKrguLLguKHguLLguKPguJbguYPguIrguYnguJzguKrguKHguIHguLHguJnguYTguJTguYnguJTguYnguKfguKLguIHguLLguKMgb3Ig4LmB4Lia4Lia4Lia4Li04LiVXG4iCisjfiAi4Liq4Lix4LiH4LmA4LiB4LiV4Lin4LmI4Liy4LiE4LmI4Liy4LmB4Lil4Liw4LiE4Lin4Liy4Lih4Lir4Lih4Liy4Lii4LiV4LmI4Liy4LiH4LmGIOC4reC4suC4iOC5gOC4m+C4peC4teC5iOC4ouC4meC5geC4m+C4peC4h+C5hOC4lOC5iVxuIgorCisjfiBtc2dpZCAiIgorI34gIiVzIGZvcmNpbmcgb3B0aW9ucyAtIGNvbnRyb2wgYmVoYXZpb3VyIHdoZW4gcHJvYmxlbXMgZm91bmQ6XG4iCisjfiAiICB3YXJuIGJ1dCBjb250aW51ZTogIC0tZm9yY2UtPHRoaW5nPiw8dGhpbmc+LC4uLlxuIgorI34gIiAgc3RvcCB3aXRoIGVycm9yOiAgICAtLXJlZnVzZS08dGhpbmc+LDx0aGluZz4sLi4uIHwgLS1uby1mb3JjZS0iCisjfiAiPHRoaW5nPiwuLi5cbiIKKyN+ICIgRm9yY2luZyB0aGluZ3M6XG4iCisjfiAiICBhbGwgWyFdICAgICAgICAgICAgICAgIFNldCBhbGwgZm9yY2Ugb3B0aW9uc1xuIgorI34gIiAgZG93bmdyYWRlIFsqXSAgICAgICAgICBSZXBsYWNlIGEgcGFja2FnZSB3aXRoIGEgbG93ZXIgdmVyc2lvblxuIgorI34gIiAgY29uZmlndXJlLWFueSAgICAgICAgICBDb25maWd1cmUgYW55IHBhY2thZ2Ugd2hpY2ggbWF5IGhlbHAgdGhpcyBvbmVcbiIKKyN+ICIgIGhvbGQgICAgICAgICAgICAgICAgICAgUHJvY2VzcyBpbmNpZGVudGFsIHBhY2thZ2VzIGV2ZW4gd2hlbiBvbiBob2xkXG4iCisjfiAiICBiYWQtcGF0aCAgICAgICAgICAgICAgIFBBVEggaXMgbWlzc2luZyBpbXBvcnRhbnQgcHJvZ3JhbXMsIHByb2JsZW1zICIKKyN+ICJsaWtlbHlcbiIKKyN+ICIgIG5vdC1yb290ICAgICAgICAgICAgICAgVHJ5IHRvIChkZSlpbnN0YWxsIHRoaW5ncyBldmVuIHdoZW4gbm90IHJvb3RcbiIKKyN+ICIgIG92ZXJ3cml0ZSAgICAgICAgICAgICAgT3ZlcndyaXRlIGEgZmlsZSBmcm9tIG9uZSBwYWNrYWdlIHdpdGggYW5vdGhlclxuIgorI34gIiAgb3ZlcndyaXRlLWRpdmVydGVkICAgICBPdmVyd3JpdGUgYSBkaXZlcnRlZCBmaWxlIHdpdGggYW4gdW5kaXZlcnRlZCAiCisjfiAidmVyc2lvblxuIgorI34gIiAgYmFkLXZlcmlmeSAgICAgICAgICAgICBJbnN0YWxsIGEgcGFja2FnZSBldmVuIGlmIGl0IGZhaWxzIGF1dGhlbnRpY2l0eSAiCisjfiAiY2hlY2tcbiIKKyN+ICIgIGRlcGVuZHMtdmVyc2lvbiBbIV0gICAgVHVybiBkZXBlbmRlbmN5IHZlcnNpb24gcHJvYmxlbXMgaW50byB3YXJuaW5nc1xuIgorI34gIiAgZGVwZW5kcyBbIV0gICAgICAgICAgICBUdXJuIGFsbCBkZXBlbmRlbmN5IHByb2JsZW1zIGludG8gd2FybmluZ3NcbiIKKyN+ICIgIGNvbmZuZXcgWyFdICAgICAgICAgICAgQWx3YXlzIHVzZSB0aGUgbmV3IGNvbmZpZyBmaWxlcywgZG9uJ3QgcHJvbXB0XG4iCisjfiAiICBjb25mb2xkIFshXSAgICAgICAgICAgIEFsd2F5cyB1c2UgdGhlIG9sZCBjb25maWcgZmlsZXMsIGRvbid0IHByb21wdFxuIgorI34gIiAgY29uZmRlZiBbIV0gICAgICAgICAgICBVc2UgdGhlIGRlZmF1bHQgb3B0aW9uIGZvciBuZXcgY29uZmlnIGZpbGVzIGlmICIKKyN+ICJvbmVcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgaXMgYXZhaWxhYmxlLCBkb24ndCBwcm9tcHQuIElmIG5vIGRlZmF1bHQgY2FuIGJlICIKKyN+ICJmb3VuZCxcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgeW91IHdpbGwgYmUgcHJvbXB0ZWQgdW5sZXNzIG9uZSBvZiB0aGUgY29uZm9sZCAiCisjfiAib3JcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgY29uZm5ldyBvcHRpb25zIGlzIGFsc28gZ2l2ZW5cbiIKKyN+ICIgIGNvbmZtaXNzIFshXSAgICAgICAgICAgQWx3YXlzIGluc3RhbGwgbWlzc2luZyBjb25maWcgZmlsZXNcbiIKKyN+ICIgIGNvbmZhc2sgWyFdICAgICAgICAgICAgT2ZmZXIgdG8gcmVwbGFjZSBjb25maWcgZmlsZXMgd2l0aCBubyBuZXcgIgorI34gInZlcnNpb25zXG4iCisjfiAiICBicmVha3MgWyFdICAgICAgICAgICAgIEluc3RhbGwgZXZlbiBpZiBpdCB3b3VsZCBicmVhayBhbm90aGVyIHBhY2thZ2VcbiIKKyN+ICIgIGNvbmZsaWN0cyBbIV0gICAgICAgICAgQWxsb3cgaW5zdGFsbGF0aW9uIG9mIGNvbmZsaWN0aW5nIHBhY2thZ2VzXG4iCisjfiAiICBhcmNoaXRlY3R1cmUgWyFdICAgICAgIFByb2Nlc3MgZXZlbiBwYWNrYWdlcyB3aXRoIHdyb25nIGFyY2hpdGVjdHVyZVxuIgorI34gIiAgb3ZlcndyaXRlLWRpciBbIV0gICAgICBPdmVyd3JpdGUgb25lIHBhY2thZ2UncyBkaXJlY3Rvcnkgd2l0aCBhbm90aGVyJ3MgIgorI34gImZpbGVcbiIKKyN+ICIgIHVuc2FmZS1pbyBbIV0gICAgICAgICAgRG8gbm90IHBlcmZvcm0gc2FmZSBJL08gb3BlcmF0aW9ucyB3aGVuICIKKyN+ICJ1bnBhY2tpbmdcbiIKKyN+ICIgIHJlbW92ZS1yZWluc3RyZXEgWyFdICAgUmVtb3ZlIHBhY2thZ2VzIHdoaWNoIHJlcXVpcmUgaW5zdGFsbGF0aW9uXG4iCisjfiAiICByZW1vdmUtZXNzZW50aWFsIFshXSAgIFJlbW92ZSBhbiBlc3NlbnRpYWwgcGFja2FnZVxuIgorI34gIlxuIgorI34gIldBUk5JTkcgLSB1c2Ugb2Ygb3B0aW9ucyBtYXJrZWQgWyFdIGNhbiBzZXJpb3VzbHkgZGFtYWdlIHlvdXIgIgorI34gImluc3RhbGxhdGlvbi5cbiIKKyN+ICJGb3JjaW5nIG9wdGlvbnMgbWFya2VkIFsqXSBhcmUgZW5hYmxlZCBieSBkZWZhdWx0LlxuIgorI34gbXNnc3RyICIiCisjfiAi4LiV4Lix4Lin4LmA4Lil4Li34Lit4LiB4Liq4Liz4Lir4Lij4Lix4Lia4Lia4Lix4LiH4LiE4Lix4Lia4LiC4Lit4LiHICVzIC0g4LiE4Lin4Lia4LiE4Li44Lih4Lie4Lik4LiV4Li04LiB4Lij4Lij4Lih4LmA4Lih4Li34LmI4Lit4Lie4Lia4Lib4Lix4LiN4Lir4LiyOlxuIgorI34gIiAg4LmA4LiV4Li34Lit4LiZ4LmB4LiV4LmI4LiX4Liz4LiV4LmI4Lit4LmE4LibOiAgICAgICAtLWZvcmNlLTzguKPguLLguKLguIHguLLguKM+LDzguKPguLLguKLguIHguLLguKM+LC4uLlxuIgorI34gIiAg4Lir4Lii4Li44LiU4LmA4Lih4Li34LmI4Lit4Lie4Lia4Lib4Lix4LiN4Lir4LiyOiAgICAgICAtLXJlZnVzZS084Lij4Liy4Lii4LiB4Liy4LijPiw84Lij4Liy4Lii4LiB4Liy4LijPiwuLi4gfCAtLW5vLWZvcmNlLSIKKyN+ICI84Lij4Liy4Lii4LiB4Liy4LijPiwuLi5cbiIKKyN+ICIg4Lij4Liy4Lii4LiB4Liy4Lij4Liq4Liz4Lir4Lij4Lix4Lia4LiB4Liy4Lij4Lia4Lix4LiH4LiE4Lix4LiaOlxuIgorI34gIiAgYWxsIFshXSAgICAgICAgICAgICAgICDguJrguLHguIfguITguLHguJrguJfguLjguIHguKPguLLguKLguIHguLLguKNcbiIKKyN+ICIgIGRvd25ncmFkZSBbKl0gICAgICAgICAg4LmB4LiX4LiZ4LiX4Li14LmI4LmB4Lie4LiB4LmA4LiB4LiI4LiU4LmJ4Lin4Lii4Lij4Li44LmI4LiZ4LiX4Li14LmI4LmA4LiB4LmI4Liy4LiB4Lin4LmI4LiyXG4iCisjfiAiICBjb25maWd1cmUtYW55ICAgICAgICAgIOC4leC4seC5ieC4h+C4hOC5iOC4suC5geC4nuC4geC5gOC4geC4iOC5g+C4lOC4geC5h+C4leC4suC4oeC4l+C4teC5iOC4reC4suC4iOC4iuC5iOC4p+C4ouC5g+C4q+C5ieC4leC4tOC4lOC4leC4seC5ieC4h+C5geC4nuC4geC5gOC4geC4iOC4meC4teC5ieC5hOC4lOC5iVxuIgorI34gIiAgaG9sZCAgICAgICAgICAgICAgICAgICDguJTguLPguYDguJnguLTguJnguIHguLLguKPguIHguLHguJrguYHguJ7guIHguYDguIHguIjguJfguLXguYjguJXguLTguJTguILguLHguJTguK3guKLguLnguYjguYHguKHguYnguIjguLDguJbguLnguIHguIHguLPguKvguJnguJTguYPguKvguYnguITguIfguKPguLjguYjguJnguYTguKfguYnguIHguYfguJXguLLguKFcbiIKKyN+ICIgIGJhZC1wYXRoICAgICAgICAgICAgICAgUEFUSCDguILguLLguJTguYLguJvguKPguYHguIHguKPguKHguKrguLPguITguLHguI0g4LiL4Li24LmI4LiH4LiZ4LmI4Liy4LiI4Liw4LmA4Lib4LmH4LiZ4Lib4Lix4LiN4Lir4LiyXG4iCisjfiAiICBub3Qtcm9vdCAgICAgICAgICAgICAgIOC4nuC4ouC4suC4ouC4suC4oeC4leC4tOC4lOC4leC4seC5ieC4hy/guJbguK3guJTguJbguK3guJnguYHguKHguYnguIjguLDguYTguKHguYjguYPguIrguYggcm9vdFxuIgorI34gIiAgb3ZlcndyaXRlICAgICAgICAgICAgICDguYDguILguLXguKLguJnguJfguLHguJrguYHguJ/guYnguKHguILguK3guIfguYHguJ7guIHguYDguIHguIjguK3guLfguYjguJlcbiIKKyN+ICIgIG92ZXJ3cml0ZS1kaXZlcnRlZCAgICAg4LmA4LiC4Li14Lii4LiZ4LiX4Lix4Lia4LmB4Lif4LmJ4Lih4LiX4Li14LmI4LmA4Lia4LiZ4Lit4Lii4Li54LmI4LiU4LmJ4Lin4Lii4LiJ4Lia4Lix4Lia4LiX4Li14LmI4LmE4Lih4LmI4LmE4LiU4LmJ4LmA4Lia4LiZXG4iCisjfiAiICBiYWQtdmVyaWZ5ICAgICAgICAgICAgIOC4leC4tOC4lOC4leC4seC5ieC4h+C5geC4nuC4geC5gOC4geC4iOC5geC4oeC5ieC4iOC4sOC5hOC4oeC5iOC4nOC5iOC4suC4meC4geC4suC4o+C4leC4o+C4p+C4iOC4quC4reC4muC5geC4q+C4peC5iOC4h+C4leC5ieC4meC4leC4rVxuIgorI34gIiAgZGVwZW5kcy12ZXJzaW9uIFshXSAgICDguYDguJvguKXguLXguYjguKLguJnguJvguLHguI3guKvguLLguITguKfguLLguKHguILguLbguYnguJnguJXguYjguK3guKPguLjguYjguJnguILguK3guIfguYHguJ7guIHguYDguIHguIjguYPguKvguYnguYDguJvguYfguJnguYHguITguYjguITguLPguYDguJXguLfguK3guJlcbiIKKyN+ICIgIGRlcGVuZHMgWyFdICAgICAgICAgICAg4LmA4Lib4Lil4Li14LmI4Lii4LiZ4Lib4Lix4LiN4Lir4Liy4LiE4Lin4Liy4Lih4LiC4Li24LmJ4LiZ4LiV4LmI4Lit4LiB4Lix4LiZ4LiX4Lix4LmJ4LiH4Lir4Lih4LiU4LiC4Lit4LiH4LmB4Lie4LiB4LmA4LiB4LiI4LmD4Lir4LmJ4LmA4Lib4LmH4LiZ4LmB4LiE4LmI4LiE4Liz4LmA4LiV4Li34Lit4LiZXG4iCisjfiAiICBjb25mbmV3IFshXSAgICAgICAgICAgIOC5g+C4iuC5ieC5geC4n+C5ieC4oeC4hOC5iOC4suC4leC4seC5ieC4h+C5g+C4q+C4oeC5iOC5gOC4quC4oeC4reC5guC4lOC4ouC5hOC4oeC5iOC4leC5ieC4reC4h+C4luC4suC4oVxuIgorI34gIiAgY29uZm9sZCBbIV0gICAgICAgICAgICDguYPguIrguYnguYHguJ/guYnguKHguITguYjguLLguJXguLHguYnguIfguYDguJTguLTguKHguYDguKrguKHguK3guYLguJTguKLguYTguKHguYjguJXguYnguK3guIfguJbguLLguKFcbiIKKyN+ICIgIGNvbmZkZWYgWyFdICAgICAgICAgICAg4LmD4LiK4LmJ4LiE4Liz4LiV4Lit4Lia4Lib4Lij4Li04Lii4Liy4Lii4Liq4Liz4Lir4Lij4Lix4Lia4LiE4Liz4LiW4Liy4Lih4LmA4LiB4Li14LmI4Lii4Lin4LiB4Lix4Lia4LmB4Lif4LmJ4Lih4LiE4LmI4Liy4LiV4Lix4LmJ4LiH4LmD4Lir4Lih4LmI4LiW4LmJ4Liy4Lih4Li1XG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIOC5guC4lOC4ouC5hOC4oeC5iOC4leC5ieC4reC4h+C4luC4suC4oSDguJbguYnguLLguYTguKHguYjguKHguLXguITguYjguLLguJvguKPguLTguKLguLLguKLguIHguLPguKvguJnguJTguYTguKfguYkg4LiB4LmH4LiI4Liw4LiW4Liy4Lih4LiE4Liz4LiW4Liy4LihXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIOC4ouC4geC5gOC4p+C5ieC4meC4oeC4teC4geC4suC4o+C4geC4s+C4q+C4meC4lOC4leC4seC4p+C5gOC4peC4t+C4reC4gSBjb25mb2xkIOC4q+C4o+C4t+C4rSBjb25mbmV3IOC4lOC5ieC4p+C4olxuIgorI34gIiAgY29uZm1pc3MgWyFdICAgICAgICAgICDguJXguLTguJTguJXguLHguYnguIfguYHguJ/guYnguKHguITguYjguLLguJXguLHguYnguIfguJfguLXguYjguILguLLguJTguKvguLLguKLguYDguKrguKHguK1cbiIKKyN+ICIgIGNvbmZhc2sgWyFdICAgICAgICAgICAg4LmA4Liq4LiZ4Lit4LiB4Liy4Lij4LmB4LiX4LiZ4LiX4Li14LmI4LmB4Lif4LmJ4Lih4LiE4LmI4Liy4LiV4Lix4LmJ4LiH4LiX4Li14LmI4LmE4Lih4LmI4Lih4Li14Lij4Li44LmI4LiZ4LmD4Lir4Lih4LmIXG4iCisjfiAiICBicmVha3MgWyFdICAgICAgICAgICAgIOC4leC4tOC4lOC4leC4seC5ieC4h+C5geC4nuC4geC5gOC4geC4iOC5geC4oeC5ieC4iOC4sOC4l+C4s+C5g+C4q+C5ieC5geC4nuC4geC5gOC4geC4iOC4reC4t+C5iOC4meC4nuC4seC4h1xuIgorI34gIiAgY29uZmxpY3RzIFshXSAgICAgICAgICDguKLguK3guKHguYPguKvguYnguJXguLTguJTguJXguLHguYnguIfguYHguJ7guIHguYDguIHguIjguJfguLXguYjguILguLHguJTguYHguKLguYnguIfguIHguLHguJlcbiIKKyN+ICIgIGFyY2hpdGVjdHVyZSBbIV0gICAgICAg4LiU4Liz4LmA4LiZ4Li04LiZ4LiB4Liy4Lij4LmB4Lih4LmJ4LiB4Lix4Lia4LmB4Lie4LiB4LmA4LiB4LiI4LiX4Li14LmI4Lic4Li04LiU4Liq4LiW4Liy4Lib4Lix4LiV4Lii4LiB4Lij4Lij4LihXG4iCisjfiAiICBvdmVyd3JpdGUtZGlyIFshXSAgICAgIOC5gOC4guC4teC4ouC4meC4l+C4seC4muC5hOC4lOC5gOC4o+C4geC4l+C4reC4o+C4teC4guC4reC4h+C5geC4nuC4geC5gOC4geC4iOC4lOC5ieC4p+C4ouC5geC4n+C5ieC4oeC4guC4reC4h+C5geC4nuC4geC5gOC4geC4iOC4reC4t+C5iOC4mVxuIgorI34gIiAgdW5zYWZlLWlvIFshXSAgICAgICAgICDguYTguKHguYjguJXguYnguK3guIfguYPguIrguYnguIHguLLguKPguIHguKPguLDguJfguLMgSS9PIOC5geC4muC4muC4m+C4peC4reC4lOC4oOC4seC4ouC5gOC4oeC4t+C5iOC4reC5geC4leC4geC5geC4nuC4geC5gOC4geC4iFxuIgorI34gIiAgcmVtb3ZlLXJlaW5zdHJlcSBbIV0gICDguJbguK3guJTguJbguK3guJnguYHguJ7guIHguYDguIHguIjguJfguLXguYjguJXguYnguK3guIfguIHguLLguKPguIHguLLguKPguJXguLTguJTguJXguLHguYnguIfguIvguYnguLNcbiIKKyN+ICIgIHJlbW92ZS1lc3NlbnRpYWwgWyFdICAg4LiW4Lit4LiU4LiW4Lit4LiZ4LmB4Lie4LiB4LmA4LiB4LiI4LiI4Liz4LmA4Lib4LmH4LiZXG4iCisjfiAiXG4iCisjfiAiKuC4hOC4s+C5gOC4leC4t+C4reC4mSogLSDguIHguLLguKPguYPguIrguYnguJXguLHguKfguYDguKXguLfguK3guIHguJfguLXguYjguJfguLPguYDguITguKPguLfguYjguK3guIfguKvguKHguLLguKIgWyFdIOC5hOC4p+C5iSDguK3guLLguIjguJfguLPguYPguKvguYnguKPguLDguJrguJrguYDguKrguLXguKLguKvguLLguKLguK3guKLguYjguLLguIfguKPguYnguLLguKLguYHguKPguIfguYTguJTguYlcbiIKKyN+ICLguKPguLLguKLguIHguLLguKPguIHguLLguKPguJrguLHguIfguITguLHguJrguJfguLXguYjguJfguLPguYDguITguKPguLfguYjguK3guIfguKvguKHguLLguKIgWypdIOC5hOC4p+C5iSDguIjguLDguJbguLnguIHguYDguJvguLTguJTguYPguIrguYnguYLguJTguKLguJvguKPguLTguKLguLLguKLguK3guKLguLnguYjguYHguKXguYnguKdcbiIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIGRwa2ctc3BsaXQgdG8gc2VlIGlmIGl0J3MgcGFydCBvZiBhIG11bHRpcGFydGVyIgorI34gbXNnc3RyICIiCisjfiAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4LmA4Lij4Li14Lii4LiBIGRwa2ctc3BsaXQg4LmA4Lie4Li34LmI4Lit4LiV4Lij4Lin4LiI4Liq4Lit4Lia4Lin4LmI4Liy4LmB4Lie4LiB4LmA4LiB4LiI4LmA4Lib4LmH4LiZ4Liq4LmI4Lin4LiZ4Lii4LmI4Lit4Lii4LiC4Lit4LiH4LmB4Lie4LiB4LmA4LiB4LiI4LmB4Lia4LmI4LiH4Liq4LmI4Lin4LiZ4Lir4Lij4Li34Lit4LmE4Lih4LmIIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWNsIGRlYnNpZy12ZXJpZnkiCisjfiBtc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4liBleGVjbCBkZWJzaWctdmVyaWZ5IgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgZHBrZy1kZWIgdG8gZXh0cmFjdCBjb250cm9sIGluZm9ybWF0aW9uIgorI34gbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguYDguKPguLXguKLguIHguJfguLPguIfguLLguJkgZHBrZy1kZWIg4LmA4Lie4Li34LmI4Lit4LmB4Lii4LiB4LmA4Lit4Liy4LiC4LmJ4Lit4Lih4Li54Lil4LiE4Lin4Lia4LiE4Li44LihIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGV4ZWMgZHBrZy1kZWIgdG8gZ2V0IGZpbGVzeXN0ZW0gYXJjaGl2ZSIKKyN+IG1zZ3N0ciAiIgorI34gIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC5gOC4o+C4teC4ouC4geC4l+C4s+C4h+C4suC4mSBkcGtnLWRlYiDguYDguJ7guLfguYjguK3guYHguKLguIHguYDguK3guLLguYHguJ/guYnguKHguIjguLHguJTguYDguIHguYfguJrguKrguLPguKvguKPguLHguJrguYHguJ/guYnguKHguJfguLXguYjguIjguLDguJXguLTguJTguJXguLHguYnguIfguYPguJnguKPguLDguJrguJrguYHguJ/guYnguKEiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gZGVsZXRlIGRpc2FwcGVhcmluZyBjb250cm9sIGluZm8gZmlsZSBgJS4yNTBzJyIKKyN+IG1zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4Lil4Lia4LmB4Lif4LmJ4Lih4LiC4LmJ4Lit4Lih4Li54Lil4LiE4Lin4Lia4LiE4Li44LihIGAlLjI1MHMnIOC4i+C4tuC5iOC4h+C4luC4ueC4geC4geC4s+C4q+C4meC4lOC5g+C4q+C5ieC4q+C4suC4ouC5hOC4myIKKworI34gbXNnaWQgImRwa2c6ICVzIG5vdCBmb3VuZC5cbiIKKyN+IG1zZ3N0ciAiZHBrZzog4LmE4Lih4LmI4Lie4LiaICVzXG4iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gLi4uL0RFQklBTiIKKyN+IG1zZ3N0ciAi4LmA4Lib4Lil4Li14LmI4Lii4LiZ4LmE4LiU4LmA4Lij4LiB4LiX4Lit4Lij4Li14LmE4Lib4Lii4Lix4LiHIC4uLi9ERUJJQU4g4LmE4Lih4LmI4Liq4Liz4LmA4Lij4LmH4LiIIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgdGFyIC1jZiIKKyN+IG1zZ3N0ciAi4LmA4Lij4Li14Lii4LiB4LiX4Liz4LiH4Liy4LiZIHRhciAtY2Yg4LmE4Lih4LmI4Liq4Liz4LmA4Lij4LmH4LiIIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIG1ha2UgdG1wZmlsZSAoY29udHJvbCkiCisjfiBtc2dzdHIgIuC4quC4o+C5ieC4suC4h+C5geC4n+C5ieC4oeC4iuC4seC5iOC4p+C4hOC4o+C4suC4pyAoY29udHJvbCkg4LmE4Lih4LmI4Liq4Liz4LmA4Lij4LmH4LiIIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHVubGluayB0bXBmaWxlIChjb250cm9sKSwgJXMiCisjfiBtc2dzdHIgIuC4peC4muC5geC4n+C5ieC4oeC4iuC4seC5iOC4p+C4hOC4o+C4suC4pyAoY29udHJvbCkg4LmE4Lih4LmI4Liq4Liz4LmA4Lij4LmH4LiIOiAlcyIKKworI34gbXNnaWQgImNvbnRyb2wiCisjfiBtc2dzdHIgImNvbnRyb2wiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gcmV3aW5kIHRtcGZpbGUgKGNvbnRyb2wpIgorI34gbXNnc3RyICLguIHguKPguK3guYHguJ/guYnguKHguIrguLHguYjguKfguITguKPguLLguKcgKGNvbnRyb2wpIOC4geC4peC4seC4muC5hOC4oeC5iOC4quC4s+C5gOC4o+C5h+C4iCIKKworI34gbXNnaWQgImZhaWxlZCB0byBmc3RhdCB0bXBmaWxlIChjb250cm9sKSIKKyN+IG1zZ3N0ciAiZnN0YXQg4LmB4Lif4LmJ4Lih4LiK4Lix4LmI4Lin4LiE4Lij4Liy4LinIChjb250cm9sKSDguYTguKHguYjguKrguLPguYDguKPguYfguIgiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBmaW5kIgorI34gbXNnc3RyICLguYDguKPguLXguKLguIHguYPguIrguYkgZmluZCDguYTguKHguYjguKrguLPguYDguKPguYfguIgiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBzaCAtYyBtdiBmb28vKiAmYyIKKyN+IG1zZ3N0ciAi4LmA4Lij4Li14Lii4LiB4LiX4Liz4LiH4Liy4LiZIHNoIC1jIG12IGZvby8qICZjIOC5hOC4oeC5iOC4quC4s+C5gOC4o+C5h+C4iCIKKworI34gbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtICUuMjUwcyBsZW5ndGggY29udGFpbnMgbnVsbHMiCisjfiBtc2dzdHIgIuC5geC4n+C5ieC4oSBgJS4yNTBzJyDguYDguKrguLXguKLguKvguLLguKIgLSDguYDguJnguLfguYnguK3guKvguLIgJS4yNTBzIOC4oeC4teC5hOC4muC4leC5jOC4qOC4ueC4meC4ouC5jCIKKworI34gbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIG5lZ2F0aXZlIG1lbWJlciBsZW5ndGggJXppIgorI34gbXNnc3RyICLguYHguJ/guYnguKEgYCUuMjUwcycg4LmA4Liq4Li14Lii4Lir4Liy4LiiIC0g4LiE4Lin4Liy4Lih4Lii4Liy4Lin4LiC4LmJ4Lit4Lih4Li54Lil4Liq4Lih4Liy4LiK4Li04LiBICV6aSDguYDguJvguYfguJnguKXguJoiCisKKyN+IG1zZ2lkICJmYWlsZWQgZ2V0dGluZyB0aGUgY3VycmVudCBmaWxlIHBvc2l0aW9uIgorI34gbXNnc3RyICLguK3guYjguLLguJnguJXguLPguYHguKvguJnguYjguIfguJvguLHguIjguIjguLjguJrguLHguJnguILguK3guIfguYHguJ/guYnguKHguYTguKHguYjguKrguLPguYDguKPguYfguIgiCisKKyN+IG1zZ2lkICJmYWlsZWQgc2V0dGluZyB0aGUgY3VycmVudCBmaWxlIHBvc2l0aW9uIgorI34gbXNnc3RyICLguIHguLPguKvguJnguJTguJXguLPguYHguKvguJnguYjguIfguJvguLHguIjguIjguLjguJrguLHguJnguILguK3guIfguYHguJ/guYnguKHguYTguKHguYjguKrguLPguYDguKPguYfguIgiCisKKyN+IG1zZ2lkICJ2ZXJzaW9uIG51bWJlciIKKyN+IG1zZ3N0ciAi4LmA4Lil4LiC4Lij4Li44LmI4LiZIgorCisjfiBtc2dpZCAibWVtYmVyIGxlbmd0aCIKKyN+IG1zZ3N0ciAi4LiE4Lin4Liy4Lih4Lii4Liy4Lin4LiC4LmJ4Lit4Lih4Li54Lil4Liq4Lih4Liy4LiK4Li04LiBIgorCisjfiBtc2dpZCAiaGVhZGVyIGluZm8gbWVtYmVyIgorI34gbXNnc3RyICLguILguYnguK3guKHguLnguKXguKrguYjguKfguJnguKvguLHguKfguKrguKHguLLguIrguLTguIEiCisKKyN+IG1zZ2lkICJza2lwcGVkIGNvbnRyb2wgYXJlYSBmcm9tICVzIgorI34gbXNnc3RyICLguIjguLDguILguYnguLLguKHguJ7guLfguYnguJnguJfguLXguYjguITguKfguJrguITguLjguKHguYPguJkgJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHRlbXBvcmFyeSBkaXJlY3RvcnkiCisjfiBtc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC4quC4o+C5ieC4suC4h+C5hOC4lOC5gOC4o+C4geC4l+C4reC4o+C4teC4iuC4seC5iOC4p+C4hOC4o+C4suC4pyIKKworI34gbXNnaWQgImluZm9fc3BldyIKKyN+IG1zZ3N0ciAiaW5mb19zcGV3IgorCisjfiBtc2dpZCAiaW5mbyBsZW5ndGgiCisjfiBtc2dzdHIgIuC4hOC4p+C4suC4oeC4ouC4suC4p+C4guC4reC4h+C4guC5ieC4reC4oeC4ueC4pSIKKworI34gbXNnaWQgInRvdGFsIGxlbmd0aCIKKyN+IG1zZ3N0ciAi4LiE4Lin4Liy4Lih4Lii4Liy4Lin4Lij4Lin4LihIgorCisjfiBtc2dpZCAiZGF0YSBsZW5ndGgiCisjfiBtc2dzdHIgIuC4hOC4p+C4suC4oeC4ouC4suC4p+C4guC5ieC4reC4oeC4ueC4pSIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIGRwa2ctZGViIHRvIGV4dHJhY3QgZmllbGQgdmFsdWUiCisjfiBtc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC5gOC4o+C4teC4ouC4geC4l+C4s+C4h+C4suC4mSBkcGtnLWRlYiDguYDguJ7guLfguYjguK3guYHguKLguIHguYDguK3guLLguITguYjguLLguILguK3guIfguYDguILguJXguILguYnguK3guKHguLnguKUiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gc3RhdCAlczogJXMiCisjfiBtc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4liBzdGF0ICVzOiAlcyIKKworI34gbXNnaWQgInNsYXZlIG5hbWUgJXMgZHVwbGljYXRlZCIKKyN+IG1zZ3N0ciAi4LiK4Li34LmI4Lit4Lij4Liy4Lii4LiB4Liy4Lij4Lil4Li54LiBICVzIOC4i+C5ieC4syIKKworI34gbXNnaWQgInNsYXZlIGxpbmsgJXMgZHVwbGljYXRlZCIKKyN+IG1zZ3N0ciAi4Lil4Li04LiH4LiB4LmM4Lil4Li54LiBICVzIOC4i+C5ieC4syIKKworI34gbXNnaWQgIiVkIHJlcXVlc3RlZCBjb250cm9sIGNvbXBvbmVudHMgYXJlIG1pc3NpbmciCisjfiBtc2dzdHIgIuC4reC4h+C4hOC5jOC4m+C4o+C4sOC4geC4reC4muC4quC5iOC4p+C4meC4hOC4p+C4muC4hOC4uOC4oeC4guC4suC4lOC4q+C4suC4ouC5hOC4myAlZCDguKPguLLguKLguIHguLLguKMiCisKKyN+IG1zZ2lkICJjYXQgKGRhdGEpIgorI34gbXNnc3RyICJjYXQgKGRhdGEpIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIG9wZW4gcGlwZSBkZXNjcmlwdG9yIGAxJyBpbiBwYXN0ZSIKKyN+IG1zZ3N0ciAi4LmA4Lib4Li04LiUIGRlc2NyaXB0b3Ig4LiC4Lit4LiH4LmE4Lib4Lib4LmMIGAxJyDguYTguKHguYjguKrguLPguYDguKPguYfguIjguYPguJkgcGFzdGUiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gd3JpdGUgdG8gZ3ppcCAtZGMiCisjfiBtc2dzdHIgIuC5gOC4guC4teC4ouC4meC5hOC4m+C4ouC4seC4hyBnemlwIC1kYyDguYTguKHguYjguKrguLPguYDguKPguYfguIgiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gY2xvc2UgZ3ppcCAtZGMiCisjfiBtc2dzdHIgIuC4m+C4tOC4lCBnemlwIC1kYyDguYTguKHguYjguKrguLPguYDguKPguYfguIgiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gc3lzY2FsbCBsc2VlayB0byBmaWxlcyBhcmNoaXZlIHBvcnRpb24iCisjfiBtc2dzdHIgIuC5gOC4o+C4teC4ouC4geC4n+C4seC4h+C4geC5jOC4iuC4seC4meC4o+C4sOC4muC4miBsc2VlayDguYTguJvguKLguLHguIfguKrguYjguKfguJnguIjguLHguJTguYDguIHguYfguJrguYHguJ/guYnguKHguYTguKHguYjguKrguLPguYDguKPguYfguIgiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gZXhlYyBta3NwbGl0IgorI34gbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguYDguKPguLXguKLguIHguJfguLPguIfguLLguJkgbWtzcGxpdCIKKworI34gbXNnaWQgIiIKKyN+ICJcbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisjfiAiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi4iCisjfiBtc2dzdHIgIiIKKyN+ICJcbiIKKyN+ICLguKrguIfguKfguJnguKXguLTguILguKrguLTguJfguJjguLTguYwgKEMpIDE5OTUgSWFuIEphY2tzb25cbiIKKyN+ICLguKrguIfguKfguJnguKXguLTguILguKrguLTguJfguJjguLTguYwgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuIgorCisjfiBtc2dpZCAidHdvIGNvbW1hbmRzIHNwZWNpZmllZDogJXMgYW5kIC0tJXMiCisjfiBtc2dzdHIgIuC4oeC4teC4geC4suC4o+C4o+C4sOC4muC4uOC4hOC4s+C4quC4seC5iOC4h+C4quC4reC4h+C4hOC4s+C4quC4seC5iOC4hzogJXMg4LmB4Lil4LiwIC0tJXMiCisKKyN+IG1zZ2lkICItLSVzIG5lZWRzIGEgZGl2ZXJ0LXRvIGFyZ3VtZW50IgorI34gbXNnc3RyICItLSVzIOC4leC5ieC4reC4h+C4geC4suC4o+C4reC4suC4o+C5jOC4geC4tOC4p+C5gOC4oeC4meC4leC5jCBkaXZlcnQtdG8iCisKKyN+IG1zZ2lkICItLSVzIG5lZWRzIGEgPHBhY2thZ2U+IGFyZ3VtZW50IgorI34gbXNnc3RyICItLSVzIOC4leC5ieC4reC4h+C4geC4suC4o+C4reC4suC4o+C5jOC4geC4tOC4p+C5gOC4oeC4meC4leC5jCA8cGFja2FnZT4iCisKKyN+IG1zZ2lkICJjYW5ub3Qgb3BlbiBkaXZlcnNpb25zOiAlcyIKKyN+IG1zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4LmA4Lib4Li04LiU4LmB4Lif4LmJ4LihIGRpdmVyc2lvbnM6ICVzIgorCisjfiBtc2dpZCAibWlzc2luZyBhbHRuYW1lIgorI34gbXNnc3RyICLguILguLLguJQgYWx0bmFtZSIKKworI34gbXNnaWQgIm1pc3NpbmcgcGFja2FnZSIKKyN+IG1zZ3N0ciAi4LiC4Liy4LiUIHBhY2thZ2UiCisKKyN+IG1zZ2lkICJpbnRlcm5hbCBlcnJvciAtIGJhZCBtb2RlIGAlcyciCisjfiBtc2dzdHIgIuC4guC5ieC4reC4nOC4tOC4lOC4nuC4peC4suC4lOC4oOC4suC4ouC5g+C4mSAtIOC5guC4q+C4oeC4lCBgJXMnIOC5g+C4iuC5ieC4geC4suC4o+C5hOC4oeC5iOC5hOC4lOC5iSIKKworI34gbXNnaWQgImNhbm5vdCBzdGF0IG9sZCBuYW1lIGAlcyc6ICVzIgorI34gbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJYgc3RhdCDguIrguLfguYjguK3guYDguJTguLTguKEgYCVzJzogJXMiCisKKyN+IG1zZ2lkICJyZW5hbWU6IHJlbmFtZSBgJXMnIHRvIGAlcyc6ICVzIgorI34gbXNnc3RyICJyZW5hbWU6IOC5gOC4m+C4peC4teC5iOC4ouC4meC4iuC4t+C5iOC4rSBgJXMnIOC5hOC4m+C5gOC4m+C5h+C4mSBgJXMnOiAlcyIKKworI34gbXNnaWQgImNyZWF0ZSBkaXZlcnNpb25zLW5ldzogJXMiCisjfiBtc2dzdHIgIuC4quC4o+C5ieC4suC4hyBkaXZlcnNpb25zLW5ldzogJXMiCisKKyN+IG1zZ2lkICJ3cml0ZSBkaXZlcnNpb25zLW5ldzogJXMiCisjfiBtc2dzdHIgIuC5gOC4guC4teC4ouC4mSBkaXZlcnNpb25zLW5ldzogJXMiCisKKyN+IG1zZ2lkICJjbG9zZSBkaXZlcnNpb25zLW5ldzogJXMiCisjfiBtc2dzdHIgIuC4m+C4tOC4lCBkaXZlcnNpb25zLW5ldzogJXMiCisKKyN+IG1zZ2lkICJjcmVhdGUgbmV3IGRpdmVyc2lvbnMtb2xkOiAlcyIKKyN+IG1zZ3N0ciAi4Liq4Lij4LmJ4Liy4LiHIGRpdmVyc2lvbnMtb2xkIOC4ieC4muC4seC4muC5g+C4q+C4oeC5iDogJXMiCisKKyN+IG1zZ2lkICJpbnN0YWxsIG5ldyBkaXZlcnNpb25zOiAlcyIKKyN+IG1zZ3N0ciAi4LiV4Li04LiU4LiV4Lix4LmJ4LiHIGRpdmVyc2lvbnMg4LiJ4Lia4Lix4Lia4LmD4Lir4Lih4LmIOiAlcyIKKworI34gbXNnaWQgImludGVybmFsIGVycm9yOiAlcyBjb3JydXB0OiAlcyIKKyN+IG1zZ3N0ciAi4LiC4LmJ4Lit4Lic4Li04LiU4Lie4Lil4Liy4LiU4Lig4Liy4Lii4LmD4LiZOiAlcyDguYDguKrguLXguKLguKvguLLguKI6ICVzIgorCisjfiBtc2dpZCAiZHBrZy1kZWIgLSBlcnJvcjogJXMgKGAlcycpIGRvZXNuJ3QgY29udGFpbiBhbnkgZGlnaXRzXG4iCisjfiBtc2dzdHIgImRwa2ctZGViIC0g4Lic4Li04LiU4Lie4Lil4Liy4LiUOiAlcyAoYCVzJykg4LmE4Lih4LmI4Lih4Li14LiV4Lix4Lin4LmA4Lil4LiC4LmA4Lil4LiiXG4iCisKKyN+IG1zZ2lkICIlZCBlcnJvcnMgaW4gY29udHJvbCBmaWxlIgorI34gbXNnc3RyICLguKHguLXguILguYnguK3guJzguLTguJTguJ7guKXguLLguJQgJWQg4Lij4Liy4Lii4LiB4Liy4Lij4LmD4LiZ4LmB4Lif4LmJ4Lih4LiE4Lin4Lia4LiE4Li44LihIgorCisjfiBtc2dpZCAiZmFpbGVkIGluIGJ1ZmZlcl93cml0ZShmZCkgKCVpLCByZXQ9JWxpKTogJXMiCisjfiBtc2dzdHIgIuC4l+C4s+C4h+C4suC4meC5hOC4oeC5iOC4quC4s+C5gOC4o+C5h+C4iOC5g+C4mSBidWZmZXJfd3JpdGUoZmQpICglaSwgcmV0PSVsaSk6ICVzIgorCisjfiBtc2dpZCAiZW9mIGluIGJ1ZmZlcl93cml0ZShzdHJlYW0pOiAlcyIKKyN+IG1zZ3N0ciAiZW9mIOC5g+C4mSBidWZmZXJfd3JpdGUoc3RyZWFtKTogJXMiCisKKyN+IG1zZ2lkICJlcnJvciBpbiBidWZmZXJfd3JpdGUoc3RyZWFtKTogJXMiCisjfiBtc2dzdHIgIuC5gOC4geC4tOC4lOC4guC5ieC4reC4nOC4tOC4lOC4nuC4peC4suC4lOC5g+C4mSBidWZmZXJfd3JpdGUoc3RyZWFtKTogJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgaW4gYnVmZmVyX3JlYWQoZmQpOiAlcyIKKyN+IG1zZ3N0ciAi4LiX4Liz4LiH4Liy4LiZ4LmE4Lih4LmI4Liq4Liz4LmA4Lij4LmH4LiI4LmD4LiZIGJ1ZmZlcl9yZWFkKGZkKTogJXMiCisKKyN+IG1zZ2lkICJlcnJvciBpbiBidWZmZXJfcmVhZChzdHJlYW0pOiAlcyIKKyN+IG1zZ3N0ciAi4LmA4LiB4Li04LiU4LiC4LmJ4Lit4Lic4Li04LiU4Lie4Lil4Liy4LiU4LmD4LiZIGJ1ZmZlcl9yZWFkKHN0cmVhbSk6ICVzIgorCisjfiBtc2dpZCAiJXMgcmV0dXJuZWQgZXJyb3IgZXhpdCBzdGF0dXMgJWQiCisjfiBtc2dzdHIgIiVzIOC4iOC4muC4geC4suC4o+C4l+C4s+C4h+C4suC4meC5guC4lOC4ouC4hOC4t+C4meC4hOC5iOC4suC4quC4luC4suC4meC4sOC4guC5ieC4reC4nOC4tOC4lOC4nuC4peC4suC4lCAlZCIKKworI34gbXNnaWQgIiVzIGtpbGxlZCBieSBzaWduYWwgKCVzKSVzIgorI34gbXNnc3RyICIlcyDguJbguLnguIHguIbguYjguLLguJTguYnguKfguKLguKrguLHguI3guI3guLLguJMgKCVzKSVzIgorCisjfiBtc2dpZCAiIgorI34gIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSB2ZXJzaW9uIDIgb3JcbiIKKyN+ICJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIuC4meC4teC5iOC5gOC4m+C5h+C4meC4i+C4reC4n+C4leC5jOC5geC4p+C4o+C5jOC5gOC4quC4o+C4tSDguIHguKPguLjguJPguLLguK3guYjguLLguJnguYDguIfguLfguYjguK3guJnguYTguILguIHguLLguKPguYHguIjguIHguIjguYjguLLguKLguYTguJTguYnguIjguLLguIEgR05VIEdlbmVyYWwgUHVibGljXG4iCisjfiAiTGljZW5zZSDguKPguLjguYjguJkgMiDguKvguKPguLfguK3guYPguKvguKHguYjguIHguKfguYjguLIg4LiL4Lit4Lif4LiV4LmM4LmB4Lin4Lij4LmM4LiZ4Li14LmJICrguYTguKHguYjguKHguLUqIOC4geC4suC4o+C4o+C4seC4muC4m+C4o+C4sOC4geC4seC4meC5g+C4lOC5hlxuIgorCisjfiBtc2dpZCAiIgorI34gIlxuIgorI34gIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSB2ZXJzaW9uIDIgb3JcbiIKKyN+ICJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIlxuIgorI34gIuC4meC4teC5iOC5gOC4m+C5h+C4meC4i+C4reC4n+C4leC5jOC5geC4p+C4o+C5jOC5gOC4quC4o+C4tSDguIHguKPguLjguJPguLLguK3guYjguLLguJnguYDguIfguLfguYjguK3guJnguYTguILguIHguLLguKPguYHguIjguIHguIjguYjguLLguKLguYTguJTguYnguIjguLLguIEgR05VIEdlbmVyYWwgUHVibGljXG4iCisjfiAiTGljZW5zZSDguKPguLjguYjguJkgMiDguKvguKPguLfguK3guYPguKvguKHguYjguIHguKfguYjguLIg4LiL4Lit4Lif4LiV4LmM4LmB4Lin4Lij4LmM4LiZ4Li14LmJICrguYTguKHguYjguKHguLUqIOC4geC4suC4o+C4o+C4seC4muC4m+C4o+C4sOC4geC4seC4meC5g+C4lOC5hlxuIgorCisjfiBtc2dpZCAiJXM6IGZhaWxlZCB0byBleGVjICclcyAlcyciCisjfiBtc2dzdHIgIiVzOiDguYTguKHguYjguKrguLLguKHguLLguKPguJbguYDguKPguLXguKLguIHguJfguLPguIfguLLguJkgJyVzICVzJyIKKworI34gbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIGVycm9yOiByZWFkOiBgJXMnIgorI34gbXNnc3RyICIlczog4LiC4LmJ4Lit4Lic4Li04LiU4Lie4Lil4Liy4LiU4Lig4Liy4Lii4LmD4LiZ4LiC4Lit4LiHIGd6aXA6IOC4reC5iOC4suC4mTogYCVzJyIKKworI34gbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIGVycm9yOiB3cml0ZTogYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IOC4guC5ieC4reC4nOC4tOC4lOC4nuC4peC4suC4lOC4oOC4suC4ouC5g+C4meC4guC4reC4hyBnemlwOiDguYDguILguLXguKLguJk6IGAlcyciCisKKyN+IG1zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCBlcnJvcjogcmVhZCglaSkgIT0gd3JpdGUoJWkpIgorI34gbXNnc3RyICIlczog4LiC4LmJ4Lit4Lic4Li04LiU4Lie4Lil4Liy4LiU4Lig4Liy4Lii4LmD4LiZ4LiC4Lit4LiHIGd6aXA6IOC4reC5iOC4suC4mSglaSkgIT0g4LmA4LiC4Li14Lii4LiZKCVpKSIKKworI34gbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiBlcnJvcjogcmVhZDogYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IOC4guC5ieC4reC4nOC4tOC4lOC4nuC4peC4suC4lOC4oOC4suC4ouC5g+C4meC4guC4reC4hyBiemlwMjog4Lit4LmI4Liy4LiZOiBgJXMnIgorCisjfiBtc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIGVycm9yOiB3cml0ZTogYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IOC4guC5ieC4reC4nOC4tOC4lOC4nuC4peC4suC4lOC4oOC4suC4ouC5g+C4meC4guC4reC4hyBiemlwMjog4LmA4LiC4Li14Lii4LiZOiBgJXMnIgorCisjfiBtc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIGVycm9yOiByZWFkKCVpKSAhPSB3cml0ZSglaSkiCisjfiBtc2dzdHIgIiVzOiDguILguYnguK3guJzguLTguJTguJ7guKXguLLguJTguKDguLLguKLguYPguJnguILguK3guIcgYnppcDI6IOC4reC5iOC4suC4mSglaSkgIT0g4LmA4LiC4Li14Lii4LiZKCVpKSIKKworI34gbXNnaWQgIkRvbid0IGZvcmdldCB0byBmb3JlZ3JvdW5kIChgZmcnKSB0aGlzIHByb2Nlc3Mgd2hlbiB5b3UncmUgZG9uZSAhXG4iCisjfiBtc2dzdHIgIuC4reC4ouC5iOC4suC4peC4t+C4oeC4ouC4geC5guC4nuC4o+C5gOC4i+C4quC4meC4teC5ieC4geC4peC4seC4muC4oeC4suC4l+C4teC5iOC4ieC4suC4geC4q+C4meC5ieC4siAo4LiU4LmJ4Lin4Lii4LiE4Liz4Liq4Lix4LmI4LiHIGBmZycpIOC5gOC4oeC4t+C5iOC4reC5gOC4quC4o+C5h+C4iOC5geC4peC5ieC4pyAhXG4iCisKKyN+IG1zZ2lkICIiCisjfiAiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvclxuIgorI34gImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LlxuIgorI34gIlNlZSAlcyAtLWxpY2Vuc2UgZm9yIGNvcHlyaWdodCBhbmQgbGljZW5zZSBkZXRhaWxzLlxuIgorI34gbXNnc3RyICIiCisjfiAi4LiZ4Li14LmI4LmA4Lib4LmH4LiZ4LiL4Lit4Lif4LiV4LmM4LmB4Lin4Lij4LmM4LmA4Liq4Lij4Li1IOC4geC4o+C4uOC4k+C4suC4reC5iOC4suC4meC5gOC4h+C4t+C5iOC4reC4meC5hOC4guC4geC4suC4o+C5geC4iOC4geC4iOC5iOC4suC4ouC5hOC4lOC5ieC4iOC4suC4gSBHTlUgR2VuZXJhbCBQdWJsaWNcbiIKKyN+ICJMaWNlbnNlIOC4o+C4uOC5iOC4mSAyIOC4q+C4o+C4t+C4reC5g+C4q+C4oeC5iOC4geC4p+C5iOC4siDguIvguK3guJ/guJXguYzguYHguKfguKPguYzguJnguLXguYkgKuC5hOC4oeC5iOC4oeC4tSog4LiB4Liy4Lij4Lij4Lix4Lia4Lib4Lij4Liw4LiB4Lix4LiZ4LmD4LiU4LmGXG4iCisjfiAi4LiU4Li54Lij4Liy4Lii4Lil4Liw4LmA4Lit4Li14Lii4LiU4Lil4Li04LiC4Liq4Li04LiX4LiY4Li04LmM4LmB4Lil4Liw4Liq4Lix4LiN4LiN4Liy4Lit4LiZ4Li44LiN4Liy4LiV4LmE4LiU4LmJ4LiI4Liy4LiBICVzIC0tbGljZW5zZVxuIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGdldCB1bmlxdWUgZmlsZW5hbWUgZm9yIGNvbnRyb2wgaW5mbyIKKyN+IG1zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4Liq4Lij4LmJ4Liy4LiH4LiK4Li34LmI4Lit4LmB4Lif4LmJ4Lih4LiK4Lix4LmI4Lin4LiE4Lij4Liy4Lin4LiX4Li14LmI4LmE4Lih4LmI4LiL4LmJ4Liz4Liq4Liz4Lir4Lij4Lix4Lia4LiC4LmJ4Lit4Lih4Li54Lil4LiE4Lin4Lia4LiE4Li44LihIgorCisjfiBtc2dpZCAiRGViaWFuIGAlcycgcGFja2FnZSBtYW5hZ2VtZW50IHByb2dyYW0gcXVlcnkgdG9vbFxuIgorI34gbXNnc3RyICLguYDguITguKPguLfguYjguK3guIfguKHguLfguK3guKrguK3guJrguJbguLLguKEgYCVzJyDguKrguLPguKvguKPguLHguJrguYLguJvguKPguYHguIHguKPguKHguIjguLHguJTguIHguLLguKPguYHguJ7guIHguYDguIHguIjguILguK3guIfguYDguJTguYDguJrguLXguKLguJlcbiIKKworI34gbXNnaWQgIiIKKyN+ICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IHF1ZXJ5aW5nIHBhY2thZ2VzO1xuIgorI34gIlVzZSAtLWxpY2Vuc2UgZm9yIGNvcHlyaWdodCBsaWNlbnNlIGFuZCBsYWNrIG9mIHdhcnJhbnR5IChHTlUgR1BMKS4iCisjfiBtc2dzdHIgIiIKKyN+ICLguYPguIrguYkgLS1oZWxwIOC5gOC4nuC4t+C5iOC4reC4lOC4ueC4p+C4tOC4mOC4teC4quC4reC4muC4luC4suC4oeC4guC5ieC4reC4oeC4ueC4peC5geC4nuC4geC5gOC4geC4iFxuIgorI34gIuC5g+C4iuC5iSAtLWxpY2Vuc2Ug4LmA4Lie4Li34LmI4Lit4LiU4Li54Lil4Li04LiC4Liq4Li04LiX4LiY4Li04LmM4LmB4Lil4Liw4Liq4Lix4LiN4LiN4Liy4Lit4LiZ4Li44LiN4Liy4LiVIChHTlUgR1BMKSDguYHguKXguLDguIHguLLguKPguKrguIfguKfguJnguITguKfguLLguKHguKPguLHguJrguJzguLTguJTguIrguK3guJoiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gY2hvd24gJXM6ICVzIgorI34gbXNnc3RyICLguIHguLPguKvguJnguJTguYDguIjguYnguLLguILguK3guIcgJXMg4LmE4Lih4LmI4Liq4Liz4LmA4Lij4LmH4LiIOiAlcyIKKworI34gbXNnaWQgImZhaWxlZCB0byBjaG1vZCAlczogJXMiCisjfiBtc2dzdHIgIuC4geC4s+C4q+C4meC4lOC4quC4tOC4l+C4mOC4tOC5jCAlcyDguYTguKHguYjguKrguLPguYDguKPguYfguIg6ICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGZvcmsgZm9yIGNsZWFudXAiCisjfiBtc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4liBmb3JrIOC5gOC4nuC4t+C5iOC4reC5gOC4geC5h+C4muC4geC4p+C4suC4lCIKKworI34gbXNnaWQgImZhaWxlZCB0byB3YWl0IGZvciBybSBjbGVhbnVwIgorI34gbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguYDguKPguLXguKLguIHguJfguLPguIfguLLguJkgcm0g4LmA4Lie4Li34LmI4Lit4LmA4LiB4LmH4Lia4LiB4Lin4Liy4LiUIgorCisjfiBtc2dpZCAicm0gY2xlYW51cCBmYWlsZWQsIGNvZGUgJWRcbiIKKyN+IG1zZ3N0ciAi4LiB4Liy4Lij4LmA4LiB4LmH4Lia4LiB4Lin4Liy4LiU4LiU4LmJ4Lin4LiiIHJtIOC4peC5ieC4oeC5gOC4q+C4peC4pyDguJTguYnguKfguKLguKPguKvguLHguKogJWRcbiIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIHJtIC1yZiIKKyN+IG1zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4LmA4Lij4Li14Lii4LiB4LiX4Liz4LiH4Liy4LiZIHJtIC1yZiIKKworI34gbXNnaWQgImZhaWxlZCB0byByZWFkIGBjb250cm9sJyAoaW4gYCUuMjU1cycpIgorI34gbXNnc3RyICLguK3guYjguLLguJkgYGNvbnRyb2wnIOC5hOC4oeC5iOC4quC4s+C5gOC4o+C5h+C4iCAo4LmD4LiZIGAlLjI1NXMnKSIKKworI34gbXNnaWQgInVuYWJsZSB0byBzZWVrIGJhY2siCisjfiBtc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC4geC4o+C4reC4geC4peC4seC4miIKKworI34gbXNnaWQgInVua25vd24gZGF0YSB0eXBlIGAlaScgaW4gYnVmZmVyX3dyaXRlXG4iCisjfiBtc2dzdHIgIuC5hOC4oeC5iOC4o+C4ueC5ieC4iOC4seC4geC4iuC4meC4tOC4lOC4guC5ieC4reC4oeC4ueC4pSBgJWknIOC5g+C4mSBidWZmZXJfd3JpdGVcbiIKKworI34gbXNnaWQgInVua25vd24gZGF0YSB0eXBlIGAlaScgaW4gYnVmZmVyX3JlYWRcbiIKKyN+IG1zZ3N0ciAi4LmE4Lih4LmI4Lij4Li54LmJ4LiI4Lix4LiB4LiK4LiZ4Li04LiU4LiC4LmJ4Lit4Lih4Li54LilIGAlaScg4LmD4LiZIGJ1ZmZlcl9yZWFkXG4iCisKKyN+IG1zZ2lkICJ3YWl0IGZvciBzaGVsbCBmYWlsZWQiCisjfiBtc2dzdHIgIuC4o+C4reC5guC4nuC4o+C5gOC4i+C4quC5gOC4iuC4peC4peC5jOC5hOC4oeC5iOC4quC4s+C5gOC4o+C5h+C4iCIKKworI34gbXNnaWQgInJlYWQgZXJyb3IgaW4gZGl2ZXJzaW9ucyBbaV0iCisjfiBtc2dzdHIgIuC5gOC4geC4tOC4lOC4guC5ieC4reC4nOC4tOC4lOC4nuC4peC4suC4lOC4guC4k+C4sOC4reC5iOC4suC4meC5geC4n+C5ieC4oSBkaXZlcnNpb25zIFtpXSIKKworIyDguJzguLnguYnguYHguJvguKU6IOC5g+C4iuC5ieC4geC4seC4miAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiWJXMgYCUlLjI1NXMnIiDguJTguYnguLLguJnguKXguYjguLLguIcKKyN+IG1zZ2lkICJ1bmxpbmsiCisjfiBtc2dzdHIgIiB1bmxpbmsiCisKKyMg4Lic4Li54LmJ4LmB4Lib4LilOiDguYPguIrguYnguIHguLHguJogIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4liVzIGAlJS4yNTVzJyIg4LiU4LmJ4Liy4LiZ4Lil4LmI4Liy4LiHCisjfiBtc2dpZCAiY2htb2QiCisjfiBtc2dzdHIgIiBjaG1vZCIKKworIyDguJzguLnguYnguYHguJvguKU6IOC5g+C4iuC5ieC4geC4seC4miAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiWJXMgYCUlLjI1NXMnIiDguJTguYnguLLguJnguKXguYjguLLguIcKKyMg4Lic4Li54LmJ4LmB4Lib4LilOiDguYPguIrguYnguIHguLHguJogImRwa2c6IOC4hOC4s+C5gOC4leC4t+C4reC4mSAtIOC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4liVz4LmB4Lif4LmJ4Lih4LmA4LiB4LmI4LiyIGAlJS4yNTBzJzogJSVzXG4iIOC4lOC5ieC4suC4meC4peC5iOC4suC4hworI34gbXNnaWQgImRlbGV0ZSIKKyN+IG1zZ3N0ciAi4Lil4LiaIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvICVzICclLjI1NXMnIgorI34gbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJYlcyAnJSUuMjU1cyciCisKKyN+IG1zZ2lkICJ3YWl0IGZvciBkcGtnLXNwbGl0IGZhaWxlZCIKKyN+IG1zZ3N0ciAi4LiE4Lit4LiiIGRwa2ctc3BsaXQg4LmE4Lih4LmI4Liq4Liz4LmA4Lij4LmH4LiIIgorCisjfiBtc2dpZCAiY2Fubm90IHJlbW92ZSBmaWxlIGAlLjI1MHMnIgorI34gbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguKXguJrguYHguJ/guYnguKEgYCUuMjUwcyciCisKKyN+IG1zZ2lkICIiCisjfiAiXG4iCisjfiAiQ29weXJpZ2h0IChDKSAyMDAwIFdpY2hlcnQgQWtrZXJtYW4uIgorI34gbXNnc3RyICIiCisjfiAiXG4iCisjfiAi4Liq4LiH4Lin4LiZ4Lil4Li04LiC4Liq4Li04LiX4LiY4Li04LmMIChDKSAyMDAwIFdpY2hlcnQgQWtrZXJtYW4iCisKKyN+IG1zZ2lkICJubyBtb2RlIHNwZWNpZmllZCIKKyN+IG1zZ3N0ciAi4LmE4Lih4LmI4Lih4Li14LiB4Liy4Lij4LiB4Liz4Lir4LiZ4LiU4LmC4Lir4Lih4LiUIgorCisjfiBtc2dpZCAiaWxsZWdhbCB1c2VyICVzIgorI34gbXNnc3RyICLguJzguLnguYnguYPguIrguYkgJXMg4LmD4LiK4LmJ4LmE4Lih4LmI4LmE4LiU4LmJIgorCisjfiBtc2dpZCAibm9uLWV4aXN0aW5nIHVzZXIgJXMiCisjfiBtc2dzdHIgIuC5hOC4oeC5iOC4oeC4teC4nOC4ueC5ieC5g+C4iuC5iSAlcyIKKworI34gbXNnaWQgImlsbGVnYWwgZ3JvdXAgJXMiCisjfiBtc2dzdHIgIuC4geC4peC4uOC5iOC4oSAlcyDguYPguIrguYnguYTguKHguYjguYTguJTguYkiCisKKyN+IG1zZ2lkICJub24tZXhpc3RpbmcgZ3JvdXAgJXMiCisjfiBtc2dzdHIgIuC5hOC4oeC5iOC4oeC4teC4geC4peC4uOC5iOC4oSAlcyIKKworI34gbXNnaWQgImlsbGVnYWwgbW9kZSAlcyIKKyN+IG1zZ3N0ciAi4LmC4Lir4Lih4LiUICVzIOC5g+C4iuC5ieC5hOC4oeC5iOC5hOC4lOC5iSIKKworI34gbXNnaWQgImFib3J0aW5nIgorI34gbXNnc3RyICLguILguK3guKLguIHguYDguKXguLTguIEiCisKKyN+IG1zZ2lkICJjYW5ub3Qgb3BlbiBzdGF0b3ZlcnJpZGU6ICVzIgorI34gbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguYDguJvguLTguJQgc3RhdG92ZXJyaWRlOiAlcyIKKworI34gbXNnaWQgIk11bHRpcGxlIG92ZXJyaWRlcyBmb3IgXCIlc1wiLCBhYm9ydGluZyIKKyN+IG1zZ3N0ciAi4Lih4Li1IG92ZXJyaWRlIOC4q+C4peC4suC4ouC4o+C4suC4ouC4geC4suC4o+C4quC4s+C4q+C4o+C4seC4miBcIiVzXCIg4LiC4Lit4Lii4LiB4LmA4Lil4Li04LiBIgorCisjfiBtc2dpZCAiZmFpbGVkIHdyaXRlIGR1cmluZyBoYXNocmVwb3J0IgorI34gbXNnc3RyICLguYDguILguLXguKLguJnguYTguKHguYjguKrguLPguYDguKPguYfguIjguKPguLDguKvguKfguYjguLLguIfguJfguLMgaGFzaHJlcG9ydCIKKworI34gbXNnaWQgImNvbmZpZ3VyYXRpb24gZXJyb3I6IHVua25vd24gb3B0aW9uICVzIgorI34gbXNnc3RyICLguILguYnguK3guJzguLTguJTguJ7guKXguLLguJTguYPguJnguITguYjguLLguJXguLHguYnguIc6IOC5hOC4oeC5iOC4o+C4ueC5ieC4iOC4seC4geC4leC4seC4p+C5gOC4peC4t+C4reC4gSAlcyIKKworI34gbXNnaWQgImNvbmZpZ3VyYXRpb24gZXJyb3I6ICVzIGRvZXMgbm90IHRha2UgYSB2YWx1ZSIKKyN+IG1zZ3N0ciAi4LiC4LmJ4Lit4Lic4Li04LiU4Lie4Lil4Liy4LiU4LmD4LiZ4LiE4LmI4Liy4LiV4Lix4LmJ4LiHOiAlcyDguYTguKHguYjguKPguLHguJrguITguYjguLIiCisKKyN+IG1zZ2lkICJ1bmV4ZWNwdGVkIGVuZCBvZiBsaW5lIGluIHN0YXRvdmVycmlkZSBmaWxlIgorI34gbXNnc3RyICLguJ7guJrguIjguLjguJTguIjguJrguJrguKPguKPguJfguLHguJTguIHguYjguK3guJnguIHguLPguKvguJnguJTguYPguJnguYHguJ/guYnguKEgc3RhdG92ZXJyaWRlIgorCisjfiBtc2dpZCAiLS1jaGVjay1zdXBwb3J0ZWQgdGFrZXMgbm8gYXJndW1lbnRzIgorI34gbXNnc3RyICItLWNoZWNrLXN1cHBvcnRlZCDguYTguKHguYjguKPguLHguJrguK3guLLguKPguYzguIHguLTguKfguYDguKHguJnguJXguYwiCisKKyN+IG1zZ2lkICItLWZvcmdldC1vbGQtdW5hdmFpbCB0YWtlcyBubyBhcmd1bWVudHMiCisjfiBtc2dzdHIgIi0tZm9yZ2V0LW9sZC11bmF2YWlsIOC5hOC4oeC5iOC4o+C4seC4muC4reC4suC4o+C5jOC4geC4tOC4p+C5gOC4oeC4meC4leC5jCIKKworI34gbXNnaWQgIiIKKyN+ICJcbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDE5OTQsMTk5NSBJYW4gSmFja3Nvbi4iCisjfiBtc2dzdHIgIiIKKyN+ICJcbiIKKyN+ICLguKrguIfguKfguJnguKXguLTguILguKrguLTguJfguJjguLTguYwgKEMpIDE5OTQsMTk5NSBJYW4gSmFja3NvbiIKKworI34gbXNnaWQgIiIKKyN+ICJVc2FnZTogJXMgWzxvcHRpb25zPiAuLi5dIFstLV0gPGZpbGVuYW1lPlxuIgorI34gIlxuIgorI34gIk9wdGlvbnM6XG4iCisjfiAiICAtLXNlY3Rpb24gPHJlZ2V4cD4gPHRpdGxlPlxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHB1dCB0aGUgbmV3IGVudHJ5IGluIHRoZSA8cmVnZXg+IG1hdGNoZWQgIgorI34gInNlY3Rpb25cbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICBvciBjcmVhdGUgYSBuZXcgb25lIHdpdGggPHRpdGxlPiBpZiBub24tIgorI34gImV4aXN0ZW50LlxuIgorI34gIiAgLS1tZW51ZW50cnk9PHRleHQ+ICAgICAgIHNldCB0aGUgbWVudSBlbnRyeS5cbiIKKyN+ICIgIC0tZGVzY3JpcHRpb249PHRleHQ+ICAgICBzZXQgdGhlIGRlc2NyaXB0aW9uIHRvIGJlIHVzZWQgaW4gdGhlIG1lbnUgIgorI34gImVudHJ5LlxuIgorI34gIiAgLS1pbmZvLWZpbGU9PHBhdGg+ICAgICAgIHNwZWNpZnkgaW5mbyBmaWxlIHRvIGluc3RhbGwgaW4gdGhlICIKKyN+ICJkaXJlY3RvcnkuXG4iCisjfiAiICAtLWRpci1maWxlPTxwYXRoPiAgICAgICAgc3BlY2lmeSBmaWxlIG5hbWUgb2YgaW5mbyBkaXJlY3RvcnkgZmlsZS5cbiIKKyN+ICIgIC0taW5mb2Rpcj08ZGlyZWN0b3J5PiAgICBzYW1lIGFzICctLWRpci1maWxlPTxkaXJlY3Rvcnk+L2RpcicuXG4iCisjfiAiICAtLWluZm8tZGlyPTxkaXJlY3Rvcnk+ICAgbGlrZXdpc2UuXG4iCisjfiAiICAtLWtlZXAtb2xkICAgICAgICAgICAgICAgZG8gbm90IHJlcGxhY2UgZW50cmllcyBub3IgcmVtb3ZlIGVtcHR5IG9uZXMuXG4iCisjfiAiICAtLXJlbW92ZSAgICAgICAgICAgICAgICAgcmVtb3ZlIHRoZSBlbnRyeSBzcGVjaWZpZWQgYnkgPGZpbGVuYW1lPiAiCisjfiAiYmFzZW5hbWUuXG4iCisjfiAiICAtLXJlbW92ZS1leGFjdGx5ICAgICAgICAgcmVtb3ZlIHRoZSBleGFjdCA8ZmlsZW5hbWU+IGVudHJ5LlxuIgorI34gIiAgLS10ZXN0ICAgICAgICAgICAgICAgICAgIGVuYWJsZXMgdGVzdCBtb2RlIChubyBhY3Rpb25zIHRha2VuKS5cbiIKKyN+ICIgIC0tZGVidWcgICAgICAgICAgICAgICAgICBlbmFibGVzIGRlYnVnIG1vZGUgKHNob3cgbW9yZSBpbmZvcm1hdGlvbikuXG4iCisjfiAiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgZG8gbm90IHNob3cgb3V0cHV0IG1lc3NhZ2VzLlxuIgorI34gIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisjfiAiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIuC4p+C4tOC4mOC4teC5g+C4iuC5iTogJXMgWzzguJXguLHguKfguYDguKXguLfguK3guIE+IC4uLl0gWy0tXSA8ZmlsZW5hbWU+XG4iCisjfiAiXG4iCisjfiAi4LiV4Lix4Lin4LmA4Lil4Li34Lit4LiBOlxuIgorI34gIiAgLS1zZWN0aW9uIDxyZWdleHA+IDx0aXRsZT5cbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICDguJXguLTguJTguJXguLHguYnguIfguKPguLLguKLguIHguLLguKPguYPguKvguKHguYjguYPguJnguKvguKHguKfguJTguJfguLXguYjguJXguKPguIfguIHguLHguJogPHJlZ2V4PlxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgIOC4q+C4o+C4t+C4reC4quC4o+C5ieC4suC4h+C4o+C4suC4ouC4geC4suC4o+C5g+C4q+C4oeC5iOC5g+C4meC4q+C4seC4p+C4guC5ieC4rSA8dGl0bGU+IOC4luC5ieC4suC5gOC4lOC4tOC4oeC5hOC4oeC5iOC4oeC4teC4reC4ouC4ueC5iFxuIgorI34gIiAgLS1tZW51ZW50cnk9PHRleHQ+ICAgICAgIOC4geC4s+C4q+C4meC4lOC4o+C4suC4ouC4geC4suC4o+C5gOC4oeC4meC4uVxuIgorI34gIiAgLS1kZXNjcmlwdGlvbj08dGV4dD4gICAgIOC4geC4s+C4q+C4meC4lOC4hOC4s+C4muC4o+C4o+C4ouC4suC4ouC4l+C4teC5iOC4iOC4sOC5g+C4iuC5ieC5g+C4meC4o+C4suC4ouC4geC4suC4o+C5gOC4oeC4meC4uVxuIgorI34gIiAgLS1pbmZvLWZpbGU9PHBhdGg+ICAgICAgIOC4geC4s+C4q+C4meC4lOC5geC4n+C5ieC4oSBpbmZvIOC4l+C4teC5iOC4iOC4sOC4leC4tOC4lOC4leC4seC5ieC4h+C5g+C4meC5hOC4lOC5gOC4o+C4geC4l+C4reC4o+C4tVxuIgorI34gIiAgLS1kaXItZmlsZT08cGF0aD4gICAgICAgIOC4o+C4sOC4muC4uOC4iuC4t+C5iOC4reC5geC4n+C5ieC4oeC4quC4suC4o+C4muC4muC4guC4reC4hyBpbmZvXG4iCisjfiAiICAtLWluZm9kaXI9PGRpcmVjdG9yeT4gICAg4LmA4Lir4Lih4Li34Lit4LiZ4LiB4Lix4LiaICctLWRpci1maWxlPTxkaXJlY3Rvcnk+L2RpcidcbiIKKyN+ICIgIC0taW5mby1kaXI9PGRpcmVjdG9yeT4gICDguYDguIrguYjguJnguIHguLHguJlcbiIKKyN+ICIgIC0ta2VlcC1vbGQgICAgICAgICAgICAgICDguYTguKHguYjguJXguYnguK3guIfguYHguJfguJnguJfguLXguYjguKPguLLguKLguIHguLLguKPguYDguJTguLTguKHguKvguKPguLfguK3guKXguJrguKPguLLguKLguIHguLLguKPguJfguLXguYjguKfguYjguLLguIfguYDguJvguKXguYjguLJcbiIKKyN+ICIgIC0tcmVtb3ZlICAgICAgICAgICAgICAgICDguKXguJrguKPguLLguKLguIHguLLguKPguJfguLXguYjguKPguLDguJrguLjguYLguJTguKLguKrguYjguKfguJnguIrguLfguYjguK3guYHguJ/guYnguKHguYPguJkgPGZpbGVuYW1lPlxuIgorI34gIiAgLS1yZW1vdmUtZXhhY3RseSAgICAgICAgIOC4peC4muC4o+C4suC4ouC4geC4suC4o+C4l+C4teC5iOC4leC4o+C4h+C4geC4seC4miA8ZmlsZW5hbWU+IOC4l+C4uOC4geC4m+C4o+C4sOC4geC4suC4o1xuIgorI34gIiAgLS10ZXN0ICAgICAgICAgICAgICAgICAgIOC5g+C4iuC5ieC5guC4q+C4oeC4lOC4l+C4lOC4quC4reC4miAo4LmE4Lih4LmI4LiV4LmJ4Lit4LiH4LiX4Liz4LiI4Lij4Li04LiHKVxuIgorI34gIiAgLS1kZWJ1ZyAgICAgICAgICAgICAgICAgIOC5g+C4iuC5ieC5guC4q+C4oeC4lOC4lOC4teC4muC4seC5iuC4gSAo4LmB4Liq4LiU4LiH4Lij4Liy4Lii4Lil4Liw4LmA4Lit4Li14Lii4LiU4Lih4Liy4LiB4LiC4Li24LmJ4LiZKVxuIgorI34gIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIOC5hOC4oeC5iOC4leC5ieC4reC4h+C5geC4quC4lOC4h+C4guC5ieC4reC4hOC4p+C4suC4oeC5g+C4lOC5hlxuIgorI34gIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIOC5geC4quC4lOC4h+C4guC5ieC4reC4hOC4p+C4suC4oeC4iuC5iOC4p+C4ouC5gOC4q+C4peC4t+C4reC4meC4teC5iVxuIgorI34gIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIOC5geC4quC4lOC4h+C5gOC4peC4guC4o+C4uOC5iOC4mVxuIgorCisjfiBtc2dpZCAiY291bGQgbm90IG9wZW4gc3RkZXJyIGZvciBvdXRwdXQhICVzIgorI34gbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguYDguJvguLTguJQgc3RkZXJyIOC5gOC4nuC4t+C5iOC4reC5gOC4guC4teC4ouC4mSEgJXMiCisKKyN+IG1zZ2lkICIlczogLS1zZWN0aW9uIG5lZWRzIHR3byBtb3JlIGFyZ3MiCisjfiBtc2dzdHIgIiVzOiAtLXNlY3Rpb24g4LiV4LmJ4Lit4LiH4LiB4Liy4Lij4Lit4Liy4Lij4LmM4LiB4Li04Lin4LmA4Lih4LiZ4LiV4LmM4Liq4Lit4LiH4Lij4Liy4Lii4LiB4Liy4LijIgorCisjfiBtc2dpZCAiJXM6IG9wdGlvbiAtLSVzIGlzIGRlcHJlY2F0ZWQgKGlnbm9yZWQpIgorI34gbXNnc3RyICIlczog4LiV4Lix4Lin4LmA4Lil4Li34Lit4LiBIC0tJXMg4LmA4Lil4Li04LiB4LmD4LiK4LmJ4LmB4Lil4LmJ4LinICjguIjguLDguKXguLDguYDguKXguKIpIgorCisjfiBtc2dpZCAiJXM6IHVua25vd24gb3B0aW9uIGAlcyciCisjfiBtc2dzdHIgIiVzOiDguYTguKHguYjguKPguLnguYnguIjguLHguIHguJXguLHguKfguYDguKXguLfguK3guIEgYCVzJyIKKworI34gbXNnaWQgIiVzOiB0b28gbWFueSBhcmd1bWVudHMiCisjfiBtc2dzdHIgIiVzOiDguK3guLLguKPguYzguIHguLTguKfguYDguKHguJnguJXguYzguYDguKLguK3guLDguYDguIHguLTguJnguYTguJsiCisKKyN+IG1zZ2lkICIlczogLS1zZWN0aW9uIGlnbm9yZWQgd2l0aCAtLXJlbW92ZSIKKyN+IG1zZ3N0ciAiJXM6IOC4iOC4sOC4peC4sOC5gOC4peC4oiAtLXNlY3Rpb24g4Liq4Liz4Lir4Lij4Lix4LiaIC0tcmVtb3ZlIgorCisjfiBtc2dpZCAiJXM6IC0tZGVzY3JpcHRpb24gaWdub3JlZCB3aXRoIC0tcmVtb3ZlIgorI34gbXNnc3RyICIlczog4LiI4Liw4Lil4Liw4LmA4Lil4LiiIC0tZGVzY3JpcHRpb24g4Liq4Liz4Lir4Lij4Lix4LiaIC0tcmVtb3ZlIgorCisjfiBtc2dpZCAiJXM6IHRlc3QgbW9kZSAtIGRpciBmaWxlIHdpbGwgbm90IGJlIHVwZGF0ZWQiCisjfiBtc2dzdHIgIiVzOiDguYLguKvguKHguJTguJfguJTguKrguK3guJogLSDguYHguJ/guYnguKHguKrguLLguKPguJrguJrguIjguLDguYTguKHguYjguJbguLnguIHguJvguKPguLHguJrguILguYnguK3guKHguLnguKUiCisKKyN+IG1zZ2lkICIlczogd2FybmluZywgaWdub3JpbmcgY29uZnVzaW5nIElORk8tRElSLUVOVFJZIGluIGZpbGUuIgorI34gbXNnc3RyICIlczog4LiE4Liz4LmA4LiV4Li34Lit4LiZIC0g4LiI4Liw4Lil4Liw4LmA4Lil4Lii4Lij4Liy4Lii4LiB4Liy4LijIElORk8tRElSLUVOVFJZIOC4l+C4teC5iOC4nOC4tOC4lOC4o+C4ueC4m+C5geC4muC4muC5g+C4meC5geC4n+C5ieC4oSIKKworI34gbXNnaWQgImludmFsaWQgaW5mbyBlbnRyeSIKKyN+IG1zZ3N0ciAi4Lij4Liy4Lii4LiB4Liy4LijIGluZm8g4LmD4LiK4LmJ4LmE4Lih4LmI4LmE4LiU4LmJIgorCisjfiBtc2dpZCAiIgorI34gIlxuIgorI34gIk5vIGBTVEFSVC1JTkZPLURJUi1FTlRSWScgYW5kIG5vIGBUaGlzIGZpbGUgZG9jdW1lbnRzJy5cbiIKKyN+ICIlczogdW5hYmxlIHRvIGRldGVybWluZSBkZXNjcmlwdGlvbiBmb3IgYGRpcicgZW50cnkgLSBnaXZpbmcgdXBcbiIKKyN+IG1zZ3N0ciAiIgorI34gIlxuIgorI34gIuC5hOC4oeC5iOC4oeC4tSBgU1RBUlQtSU5GTy1ESVItRU5UUlknIOC5geC4peC4sOC5hOC4oeC5iOC4oeC4tSBgVGhpcyBmaWxlIGRvY3VtZW50cydcbiIKKyN+ICIlczog4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4Lij4Liw4Lia4Li44LiE4Liz4Lia4Lij4Lij4Lii4Liy4Lii4Liq4Liz4Lir4Lij4Lix4Lia4Lij4Liy4Lii4LiB4Liy4LijIGBkaXInIC0g4LiC4Lit4Lii4LiB4LmA4Lil4Li04LiBXG4iCisKKyN+IG1zZ2lkICIlczogbm8gZmlsZSAlcywgcmV0cmlldmluZyBiYWNrdXAgZmlsZSAlcy4iCisjfiBtc2dzdHIgIiVzOiDguYTguKHguYjguKHguLXguYHguJ/guYnguKEgJXMg4Lit4Lii4Li54LmIIOC4iOC4sOC4lOC4tuC4h+C5geC4n+C5ieC4oeC4quC4s+C4o+C4reC4hyAlcyDguKHguLLguYPguIrguYkiCisKKyN+IG1zZ2lkICIlczogbm8gYmFja3VwIGZpbGUgJXMgYXZhaWxhYmxlLCByZXRyaWV2aW5nIGRlZmF1bHQgZmlsZS4iCisjfiBtc2dzdHIgIiVzOiDguYTguKHguYjguKHguLXguYHguJ/guYnguKHguKrguLPguKPguK3guIcgJXMg4Lit4Lii4Li54LmIIOC4iOC4sOC4lOC4tuC4h+C5geC4n+C5ieC4oeC4m+C4o+C4tOC4ouC4suC4ouC4oeC4suC5g+C4iuC5iSIKKworI34gbXNnaWQgIiVzOiBubyBiYWNrdXAgZmlsZSAlcyBhdmFpbGFibGUuIgorI34gbXNnc3RyICIlczog4LmE4Lih4LmI4Lih4Li14LmB4Lif4LmJ4Lih4Liq4Liz4Lij4Lit4LiHICVzIOC4reC4ouC4ueC5iCIKKworI34gbXNnaWQgIiVzOiBubyBkZWZhdWx0IGZpbGUgJXMgYXZhaWxhYmxlLCBnaXZpbmcgdXAuIgorI34gbXNnc3RyICIlczog4LmE4Lih4LmI4Lih4Li14LmB4Lif4LmJ4Lih4Lib4Lij4Li04Lii4Liy4LiiICVzIOC4reC4ouC4ueC5iCDguILguK3guKLguIHguYDguKXguLTguIEiCisKKyN+IG1zZ2lkICIlczogZmFpbGVkIHRvIGxvY2sgZGlyIGZvciBlZGl0aW5nISAlcyIKKyN+IG1zZ3N0ciAiJXM6IOC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC4peC5h+C4reC4hOC5hOC4lOC5gOC4o+C4geC4l+C4reC4o+C4teC5gOC4nuC4t+C5iOC4reC5geC4geC5ieC5hOC4giEgJXMiCisKKyN+IG1zZ2lkICJ0cnkgZGVsZXRpbmcgJXM/IgorI34gbXNnc3RyICLguKXguK3guIfguKXguJogJXMg4LiU4Li54LmE4Lir4LihPyIKKworI34gbXNnaWQgInVuYWJsZSB0byBvcGVuICVzOiAlcyIKKyN+IG1zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4LmA4Lib4Li04LiUICVzOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byBjbG9zZSAlcyBhZnRlciByZWFkOiAlcyIKKyN+IG1zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4Lib4Li04LiUICVzIOC4q+C4peC4seC4h+C4iOC4suC4geC4reC5iOC4suC4meC5geC4peC5ieC4pzogJXMiCisKKyN+IG1zZ2lkICIlczogZXhpc3RpbmcgZW50cnkgZm9yIGAlcycgbm90IHJlcGxhY2VkIgorI34gbXNnc3RyICIlczog4LiI4Liw4LmE4Lih4LmI4LmB4LiX4LiZ4LiX4Li14LmI4Lij4Liy4Lii4LiB4Liy4Lij4LiX4Li14LmI4Lih4Li14Lit4Lii4Li54LmI4LiC4Lit4LiHIGAlcyciCisKKyN+IG1zZ2lkICIlczogcmVwbGFjaW5nIGV4aXN0aW5nIGRpciBlbnRyeSBmb3IgYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IOC4iOC4sOC5geC4l+C4meC4l+C4teC5iOC4o+C4suC4ouC4geC4suC4o+C4quC4suC4o+C4muC4muC4l+C4teC5iOC4oeC4teC4reC4ouC4ueC5iOC4quC4s+C4q+C4o+C4seC4miBgJXMnIgorCisjfiBtc2dpZCAiJXM6IGNyZWF0aW5nIG5ldyBzZWN0aW9uIGAlcyciCisjfiBtc2dzdHIgIiVzOiDguIHguLPguKXguLHguIfguKrguKPguYnguLLguIfguKvguKHguKfguJTguYPguKvguKHguYggYCVzJyIKKworI34gbXNnaWQgIiVzOiBubyBzZWN0aW9ucyB5ZXQsIGNyZWF0aW5nIE1pc2NlbGxhbmVvdXMgc2VjdGlvbiB0b28uIgorI34gbXNnc3RyICIlczog4Lii4Lix4LiH4LmE4Lih4LmI4Lih4Li14Lir4Lih4Lin4LiU4LmD4LiUIOC4iOC4sOC4quC4o+C5ieC4suC4h+C4q+C4oeC4p+C4lCBNaXNjZWxsYW5lb3VzIOC4lOC5ieC4p+C4oiIKKworI34gbXNnaWQgIiVzOiBubyBzZWN0aW9uIHNwZWNpZmllZCBmb3IgbmV3IGVudHJ5LCBwbGFjaW5nIGF0IGVuZCIKKyN+IG1zZ3N0ciAiJXM6IOC5hOC4oeC5iOC4oeC4teC4geC4suC4o+C4o+C4sOC4muC4uOC4q+C4oeC4p+C4lOC4quC4s+C4q+C4o+C4seC4muC4o+C4suC4ouC4geC4suC4o+C5g+C4q+C4oeC5iCDguIjguLDguKfguLLguIfguYTguKfguYnguJfguYnguLLguKLguKrguLjguJQiCisKKyN+IG1zZ2lkICIlczogZGVsZXRpbmcgZW50cnkgYCVzIC4uLiciCisjfiBtc2dzdHIgIiVzOiDguIHguLPguKXguLHguIfguKXguJrguKPguLLguKLguIHguLLguKMgYCVzIC4uLiciCisKKyN+IG1zZ2lkICIlczogZW1wdHkgc2VjdGlvbiBgJXMnIG5vdCByZW1vdmVkIgorI34gbXNnc3RyICIlczog4LiI4Liw4LmE4Lih4LmI4Lil4Lia4Lir4Lih4Lin4LiU4LiX4Li14LmI4Lin4LmI4Liy4LiH4LmA4Lib4Lil4LmI4LiyIGAlcyciCisKKyN+IG1zZ2lkICIlczogZGVsZXRpbmcgZW1wdHkgc2VjdGlvbiBgJXMnIgorI34gbXNnc3RyICIlczog4LiI4Liw4Lil4Lia4Lir4Lih4Lin4LiU4LiX4Li14LmI4Lin4LmI4Liy4LiH4LmA4Lib4Lil4LmI4LiyIGAlcyciCisKKyN+IG1zZ2lkICIlczogbm8gZW50cnkgZm9yIGZpbGUgYCVzJyBhbmQgbWVudSBlbnRyeSBgJXMnIgorI34gbXNnc3RyICIlczog4LmE4Lih4LmI4Lih4Li14Lij4Liy4Lii4LiB4Liy4Lij4Liq4Liz4Lir4Lij4Lix4Lia4LmB4Lif4LmJ4LihIGAlcycg4LmB4Lil4Liw4Lij4Liy4Lii4LiB4Liy4Lij4LmA4Lih4LiZ4Li5IGAlcyciCisKKyN+IG1zZ2lkICIlczogbm8gZW50cnkgZm9yIGZpbGUgYCVzJyIKKyN+IG1zZ3N0ciAiJXM6IOC5hOC4oeC5iOC4oeC4teC4o+C4suC4ouC4geC4suC4o+C4quC4s+C4q+C4o+C4seC4muC5geC4n+C5ieC4oSBgJXMnIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGJhY2t1cCBvbGQgJXMsIGdpdmluZyB1cDogJXMiCisjfiBtc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC4quC4s+C4o+C4reC4hyAlcyDguYDguIHguYjguLIg4LiC4Lit4Lii4LiB4LmA4Lil4Li04LiBOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyAlczogJXMiCisjfiBtc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC4leC4tOC4lOC4leC4seC5ieC4hyAlcyDguInguJrguLHguJrguYPguKvguKHguYg6ICVzIgorCisjfiBtc2dpZCAiJXM6IGNvdWxkIG5vdCBiYWNrdXAgJXMgaW4gJXM6ICVzIgorI34gbXNnc3RyICIlczog4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4Liq4Liz4Lij4Lit4LiH4LiC4LmJ4Lit4Lih4Li54LilICVzIOC5g+C4mSAlczogJXMiCisKKyN+IG1zZ2lkICIlczogd2FybmluZyAtIHVuYWJsZSB0byB1bmxvY2sgJXM6ICVzIgorI34gbXNnc3RyICIlczog4LiE4Liz4LmA4LiV4Li34Lit4LiZIC0g4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4Lib4Lil4LiU4Lil4LmH4Lit4LiEICVzOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byByZWFkICVzOiAlZCIKKyN+IG1zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4Lit4LmI4Liy4LiZICVzOiAlZCIKKworI34gbXNnaWQgImRiZzogJXMiCisjfiBtc2dzdHIgImRiZzogJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gb3BlbiB0bXBmaWxlIChjb250cm9sKSwgJXMiCisjfiBtc2dzdHIgIuC5gOC4m+C4tOC4lOC5geC4n+C5ieC4oeC4iuC4seC5iOC4p+C4hOC4o+C4suC4pyAoY29udHJvbCkg4LmE4Lih4LmI4Liq4Liz4LmA4Lij4LmH4LiIOiAlcyIKKworI34gbXNnaWQgImZhaWxlZCB0byBvcGVuIHRtcGZpbGUgKGRhdGEpLCAlcyIKKyN+IG1zZ3N0ciAi4LmA4Lib4Li04LiU4LmB4Lif4LmJ4Lih4LiK4Lix4LmI4Lin4LiE4Lij4Liy4LinIChkYXRhKSDguYTguKHguYjguKrguLPguYDguKPguYfguIg6ICVzIgorCisjfiBtc2dpZCAiaW52YWxpZCBudW1iZXIgZm9yIC0tY29tbWFuZC1mZCIKKyN+IG1zZ3N0ciAi4LiE4LmI4Liy4LiV4Lix4Lin4LmA4Lil4LiC4LmE4Lih4LmI4LiW4Li54LiB4LiV4LmJ4Lit4LiH4Liq4Liz4Lir4Lij4Lix4LiaIC0tY29tbWFuZC1mZCIKKworI34gbXNnaWQgInVuYWJsZSB0byByZXdpbmQgYXQgc3RhcnQgb2YgdnNucHJpbnRmIgorI34gbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguIHguKPguK3guIHguKXguLHguJrguJfguLXguYjguJXguYnguJnguJ/guLHguIfguIHguYzguIrguLHguJkgdnNucHJpbnRmIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHRydW5jYXRlIGluIHZzbnByaW50ZiIKKyN+IG1zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4LiV4Lix4LiU4LiX4LmJ4Liy4Lii4LmA4LiZ4Li34LmJ4Lit4Lir4Liy4LmB4Lif4LmJ4Lih4LmD4LiZIHZzbnByaW50ZiIKKworI34gbXNnaWQgIndyaXRlIGVycm9yIGluIHZzbnByaW50ZiIKKyN+IG1zZ3N0ciAi4LmA4LiB4Li04LiU4LiC4LmJ4Lit4Lic4Li04LiU4Lie4Lil4Liy4LiU4LiC4LiT4Liw4LmA4LiC4Li14Lii4LiZ4LmD4LiZIHZzbnByaW50ZiIKKworI34gbXNnaWQgInVuYWJsZSB0byBzdGF0IGluIHZzbnByaW50ZiIKKyN+IG1zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiWIHN0YXQg4LmD4LiZIHZzbnByaW50ZiIKKworI34gbXNnaWQgInVuYWJsZSB0byByZXdpbmQgaW4gdnNucHJpbnRmIgorI34gbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguIHguKPguK3guIHguKXguLHguJrguYPguJkgdnNucHJpbnRmIgorCisjfiBtc2dpZCAicmVhZCBlcnJvciBpbiB2c25wcmludGYgdHJ1bmNhdGVkIgorI34gbXNnc3RyICLguYDguIHguLTguJTguILguYnguK3guJzguLTguJTguJ7guKXguLLguJTguILguJPguLDguK3guYjguLLguJnguYPguJkgdnNucHJpbnRmIOC5guC4lOC4ouC5gOC4meC4t+C5ieC4reC4q+C4suC4luC4ueC4geC4leC4seC4lOC4l+C5ieC4suC4oiIKKworI34gbXNnaWQgIlN5c3RlbSBlcnJvciBuby4lZCIKKyN+IG1zZ3N0ciAi4LiC4LmJ4Lit4Lic4Li04LiU4Lie4Lil4Liy4LiU4LiC4Lit4LiH4Lij4Liw4Lia4LiaIOC4q+C4oeC4suC4ouC5gOC4peC4giAlZCIKKworI34gbXNnaWQgIlNpZ25hbCBuby4lZCIKKyN+IG1zZ3N0ciAi4Liq4Lix4LiN4LiN4Liy4LiT4Lir4Lih4Liy4Lii4LmA4Lil4LiCICVkIgorCisjfiBtc2dpZCAiZHBrZzogd2FybmluZyAtICVzIHJldHVybmVkIGVycm9yIGV4aXQgc3RhdHVzICVkXG4iCisjfiBtc2dzdHIgImRwa2c6IOC4hOC4s+C5gOC4leC4t+C4reC4mSAtICVzIOC4iOC4muC4geC4suC4o+C4l+C4s+C4h+C4suC4meC5guC4lOC4ouC4hOC4t+C4meC4hOC5iOC4suC4quC4luC4suC4meC4sOC4guC5ieC4reC4nOC4tOC4lOC4nuC4peC4suC4lCAlZFxuIgorCisjfiBtc2dpZCAiZHBrZzogd2FybmluZyAtICVzIGtpbGxlZCBieSBzaWduYWwgKCVzKSVzXG4iCisjfiBtc2dzdHIgImRwa2c6IOC4hOC4s+C5gOC4leC4t+C4reC4mSAtICVzIOC4luC4ueC4geC4huC5iOC4suC4lOC5ieC4p+C4ouC4quC4seC4jeC4jeC4suC4kyAoJXMpJXNcbiIKKworI34gbXNnaWQgImZhaWxlZCB0byByZWFkIGAlcycgYXQgbGluZSAlZCIKKyN+IG1zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4Lit4LmI4Liy4LiZIGAlcycg4LiX4Li14LmI4Lia4Lij4Lij4LiX4Lix4LiUICVkIgorCisjfiBtc2dpZCAicGFyc2UgZXJyb3IsIGluIGZpbGUgYCUuMjU1cycgbmVhciBsaW5lICVkIgorI34gbXNnc3RyICLguILguYnguK3guJzguLTguJTguJ7guKXguLLguJTguILguJPguLDguYHguIjguIc6IOC5g+C4meC5geC4n+C5ieC4oSBgJS4yNTVzJyDguJrguKPguLTguYDguKfguJPguJrguKPguKPguJfguLHguJQgJWQiCisKKyN+IG1zZ2lkICIgcGFja2FnZSBgJS4yNTVzJyIKKyN+IG1zZ3N0ciAiIOC5geC4nuC4geC5gOC4geC4iCBgJS4yNTVzJyIKKworI34gbXNnaWQgImZhaWxlZCB0byByZWFsbG9jIGZvciB2YXJpYWJsZSBidWZmZXIiCisjfiBtc2dzdHIgInJlYWxsb2Mg4Lir4LiZ4LmI4Lin4Lii4LiE4Lin4Liy4Lih4LiI4Liz4Liq4Liz4Lir4Lij4Lix4Lia4Lia4Lix4Lif4LmA4Lif4Lit4Lij4LmM4Lib4Lij4Lix4Lia4LiC4LiZ4Liy4LiU4LmE4LiU4LmJ4LmE4Lih4LmI4Liq4Liz4LmA4Lij4LmH4LiIIgorCisjfiBtc2dpZCAicHJvY2Vzc19hcmNoaXZlIC4uLiAgYWxyZWFkeSBkaXNhcHBlYXJlZCAhIgorI34gbXNnc3RyICJwcm9jZXNzX2FyY2hpdmUgLi4uICDguKXguJrguKvguLLguKLguYTguJvguYHguKXguYnguKcgISIKKworI34gbXNnaWQgImdvYmJsZSByZXBsYWNlZCBmaWxlIGAlLjI1NXMnIgorI34gbXNnc3RyICLguYDguILguKHguLfguK3guJrguYHguJ/guYnguKEgYCUuMjU1cycg4LiL4Li24LmI4LiH4LiW4Li54LiB4LmB4LiX4LiZ4LiX4Li14LmIIgorCisjfiBtc2dpZCAiZHBrZzogJXM6IHdhcm5pbmcgLSBmYWlsZWQgdG8gcmVtb3ZlIGAlLjI1MHMnOiAlc1xuIgorI34gbXNnc3RyICJkcGtnOiAlczog4LiE4Liz4LmA4LiV4Li34Lit4LiZIC0g4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4Lil4LiaIGAlLjI1MHMnOiAlc1xuIgorCisjfiBtc2dpZCAiLS1hdWRpdCBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudHMiCisjfiBtc2dzdHIgIi0tYXVkaXQg4LmE4Lih4LmI4Lij4Lix4Lia4Lit4Liy4Lij4LmM4LiB4Li04Lin4LmA4Lih4LiZ4LiV4LmMIgorCisjfiBtc2dpZCAiLS15ZXQtdG8tdW5wYWNrIGRvZXMgbm90IHRha2UgYW55IGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiLS15ZXQtdG8tdW5wYWNrIOC5hOC4oeC5iOC4o+C4seC4muC4reC4suC4o+C5jOC4geC4tOC4p+C5gOC4oeC4meC4leC5jCIKKworI34gbXNnaWQgIi0tYXNzZXJ0LSogZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnRzIgorI34gbXNnc3RyICItLWFzc2VydC0qIOC5hOC4oeC5iOC4o+C4seC4muC4reC4suC4o+C5jOC4geC4tOC4p+C5gOC4oeC4meC4leC5jCIKKworI34gbXNnaWQgIi0tcHJlZGVwLXBhY2thZ2UgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tcHJlZGVwLXBhY2thZ2Ug4LmE4Lih4LmI4Lij4Lix4Lia4Lit4Liy4Lij4LmM4LiB4Li04Lin4LmA4Lih4LiZ4LiV4LmMIgorCisjfiBtc2dpZCAiLS1wcmludC1hcmNoaXRlY3R1cmUgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tcHJpbnQtYXJjaGl0ZWN0dXJlIOC5hOC4oeC5iOC4o+C4seC4muC4reC4suC4o+C5jOC4geC4tOC4p+C5gOC4oeC4meC4leC5jCIKKworI34gbXNnaWQgInVuYWJsZSB0byBzdGF0IGluc3RhbGxlZCAlcyBzY3JpcHQgYCUuMjUwcyciCisjfiBtc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4liBzdGF0IOC4quC4hOC4o+C4tOC4m+C4leC5jCAlcyBgJS4yNTBzJyDguJfguLXguYjguJXguLTguJTguJXguLHguYnguIfguYTguKfguYnguYTguJTguYkiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gc3RhdCBuZXcgJXMgc2NyaXB0IGAlLjI1MHMnIgorI34gbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJYgc3RhdCDguKrguITguKPguLTguJvguJXguYwgJXMg4Lit4Lix4LiZ4LmD4Lir4Lih4LmIIGAlLjI1MHMnIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGV4ZWN1dGUgbmV3ICVzIgorI34gbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguYDguKPguLXguKLguIHguJfguLPguIfguLLguJkgJXMg4Lit4Lix4LiZ4LmD4Lir4Lih4LmIIgorCisjfiBtc2dpZCAiZHBrZzogd2FybmluZyAtIHVuYWJsZSB0byBzdGF0ICVzIGAlLjI1MHMnOiAlc1xuIgorI34gbXNnc3RyICJkcGtnOiDguITguLPguYDguJXguLfguK3guJkgLSDguYTguKHguYjguKrguLLguKHguLLguKPguJYgc3RhdCAlcyBgJS4yNTBzJzogJXNcbiIKKworI34gbXNnaWQgIi0tc2V0LXNlbGVjdGlvbnMgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tc2V0LXNlbGVjdGlvbnMg4LmE4Lih4LmI4Lij4Lix4Lia4Lit4Liy4Lij4LmM4LiB4Li04Lin4LmA4Lih4LiZ4LiV4LmMIgorCisjfiBtc2dpZCAiLS1jbGVhci1zZWxlY3Rpb25zIGRvZXMgbm90IHRha2UgYW55IGFyZ3VtZW50IgorI34gbXNnc3RyICItLWNsZWFyLXNlbGVjdGlvbnMg4LmE4Lih4LmI4Lij4Lix4Lia4Lit4Liy4Lij4LmM4LiB4Li04Lin4LmA4Lih4LiZ4LiV4LmMIgorCisjfiBtc2dpZCAiLS1idWlsZCBuZWVkcyBhIGRpcmVjdG9yeSBhcmd1bWVudCIKKyN+IG1zZ3N0ciAiLS1idWlsZCDguJXguYnguK3guIfguKHguLXguK3guLLguKPguYzguIHguLTguKfguYDguKHguJnguJXguYzguYDguJvguYfguJnguYTguJTguYDguKPguIHguJfguK3guKPguLXguJTguYnguKfguKIiCisKKyN+IG1zZ2lkICIiCisjfiAiZHBrZy1kZWI6IHdhcm5pbmcsIG5vdCBjaGVja2luZyBjb250ZW50cyBvZiBjb250cm9sIGFyZWEuXG4iCisjfiAiZHBrZy1kZWI6IGJ1aWxkaW5nIGFuIHVua25vd24gcGFja2FnZSBpbiBgJXMnLlxuIgorI34gbXNnc3RyICIiCisjfiAiZHBrZy1kZWI6IOC4hOC4s+C5gOC4leC4t+C4reC4mTog4LiI4Liw4LmE4Lih4LmI4LiV4Lij4Lin4LiI4Liq4Lit4Lia4LmA4LiZ4Li34LmJ4Lit4Lir4Liy4LiC4Lit4LiH4LiC4LmJ4Lit4Lih4Li54Lil4Liq4LmI4Lin4LiZ4LiE4Lin4Lia4LiE4Li44LihXG4iCisjfiAiZHBrZy1kZWI6IOC4iOC4sOC4quC4o+C5ieC4suC4h+C5geC4nuC4geC5gOC4geC4iOC5geC4muC4muC5hOC4oeC5iOC4l+C4o+C4suC4muC4iuC4meC4tOC4lOC5g+C4mSBgJXMnXG4iCisKKyN+IG1zZ2lkICJJbnRlcm5hbCBlcnJvciwgY29tcHJlc3NfdHlwZSBgJWknIHVua25vd24hIgorI34gbXNnc3RyICLguILguYnguK3guJzguLTguJTguJ7guKXguLLguJTguKDguLLguKLguYPguJk6IOC5hOC4oeC5iOC4o+C4ueC5ieC4iOC4seC4gSBjb21wcmVzc190eXBlIGAlaSchIgorCisjfiBtc2dpZCAiLS1qb2luIHJlcXVpcmVzIG9uZSBvciBtb3JlIHBhcnQgZmlsZSBhcmd1bWVudHMiCisjfiBtc2dzdHIgIi0tam9pbiDguJXguYnguK3guIfguIHguLLguKPguK3guLLguKPguYzguIHguLTguKfguYDguKHguJnguJXguYzguJfguLXguYjguYDguJvguYfguJnguYHguJ/guYnguKHguKrguYjguKfguJnguKLguYjguK3guKLguK3guKLguYjguLLguIfguJnguYnguK3guKLguKvguJnguLbguYjguIfguKPguLLguKLguIHguLLguKMiCisKKyN+IG1zZ2lkICItLWxpc3RxIGRvZXMgbm90IHRha2UgYW55IGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiLS1saXN0cSDguYTguKHguYjguKPguLHguJrguK3guLLguKPguYzguIHguLTguKfguYDguKHguJnguJXguYwiCisKKyN+IG1zZ2lkICIiCisjfiAiXG4iCisjfiAiQ29weXJpZ2h0IChDKSAxOTk2IEtpbS1NaW5oIEthcGxhbi4iCisjfiBtc2dzdHIgIiIKKyN+ICJcbiIKKyN+ICLguKrguIfguKfguJnguKXguLTguILguKrguLTguJfguJjguLTguYwgKEMpIDE5OTYgS2ltLU1pbmggS2FwbGFuIgorCisjfiBtc2dpZCAiIgorI34gIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSBbLS1dIFs8ZGlybmFtZT5dXG4iCisjfiAiXG4iCisjfiAiT3B0aW9uczpcbiIKKyN+ICIgIC0tdW5zYWZlICAgICBzZXQgc29tZSBhZGRpdGlvbmFsIHBvc3NpYmx5IHVzZWZ1bCBvcHRpb25zLlxuIgorI34gIiAgICAgICAgICAgICAgIHdhcm5pbmc6IHRoaXMgb3B0aW9uIG1heSBnYXJibGUgYW4gb3RoZXJ3aXNlIGNvcnJlY3QgIgorI34gImZpbGUuXG4iCisjfiAiICAtLWhlbHAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyN+ICIgIC0tdmVyc2lvbiAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorI34gbXNnc3RyICIiCisjfiAi4Lin4Li04LiY4Li14LmD4LiK4LmJOiAlcyBbPOC4leC4seC4p+C5gOC4peC4t+C4reC4gT4gLi4uXSBbLS1dIFs84LiK4Li34LmI4LitIGRpcj5dXG4iCisjfiAiXG4iCisjfiAi4LiV4Lix4Lin4LmA4Lil4Li34Lit4LiBOlxuIgorI34gIiAgLS11bnNhZmUgICAgIOC4geC4s+C4q+C4meC4lOC4leC4seC4p+C5gOC4peC4t+C4reC4geC5gOC4nuC4tOC5iOC4oeC5gOC4leC4tOC4oeC4muC4suC4h+C4reC4ouC5iOC4suC4h+C4l+C4teC5iOC4reC4suC4iOC5gOC4m+C5h+C4meC4m+C4o+C4sOC5guC4ouC4iuC4meC5jFxuIgorI34gIiAgICAgICAgICAgICAgIOC4hOC4s+C5gOC4leC4t+C4reC4mTog4LiV4Lix4Lin4LmA4Lil4Li34Lit4LiB4LiZ4Li14LmJ4Lit4Liy4LiI4LiX4Liz4LmD4Lir4LmJ4LmB4Lif4LmJ4Lih4LiX4Li14LmI4Lit4Liy4LiI4LiI4Liw4LiW4Li54LiB4LiV4LmJ4Lit4LiH4Lit4Lii4Li54LmI4LmB4Lil4LmJ4Lin4LmA4Lil4Liw4LmE4LiU4LmJXG4iCisjfiAiICAtLWhlbHAgICAgICAg4LmB4Liq4LiU4LiH4LiC4LmJ4Lit4LiE4Lin4Liy4Lih4LiK4LmI4Lin4Lii4LmA4Lir4Lil4Li34Lit4LiZ4Li14LmJXG4iCisjfiAiICAtLXZlcnNpb24gICAg4LmB4Liq4LiU4LiH4LmA4Lil4LiC4Lij4Li44LmI4LiZXG4iCisKKyN+IG1zZ2lkICJ0cnkgZGVsZXRpbmcgJXMiCisjfiBtc2dzdHIgIuC4peC4reC4h+C4peC4miAlcyIKKworI34gbXNnaWQgImZhaWxlZCB0byBpbnN0YWxsICVzOyBpdCB3aWxsIGJlIGxlZnQgYXMgJXM6ICVzIgorI34gbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguJXguLTguJTguJXguLHguYnguIcgJXMg4LiI4Liw4LiE4LiH4LmE4Lin4LmJ4LmA4Lib4LmH4LiZICVzOiAlcyIKKworI34gbXNnaWQgIiVzOiB1bmFibGUgdG8gdW5sb2NrICVzOiAlcyIKKyN+IG1zZ3N0ciAiJXM6IOC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC4m+C4peC4lOC4peC5h+C4reC4hCAlczogJXMiCisKKyN+IG1zZ2lkICIlcyAtIHN0YXR1cyBpcyAlcy4iCisjfiBtc2dzdHIgIiVzIC0g4Liq4LiW4Liy4LiZ4Liw4LiE4Li34LitICVzIgorCisjfiBtc2dpZCAiIGxpbmsgdW5yZWFkYWJsZSAtICVzIgorI34gbXNnc3RyICIg4Lil4Li04LiH4LiB4LmM4Lit4LmI4Liy4LiZ4LmE4Lih4LmI4LmE4LiU4LmJIC0gJXMiCisKKyN+IG1zZ2lkICIiCisjfiAid2FybmluZzogJXMgaXMgc3VwcG9zZWQgdG8gYmUgYSBzeW1saW5rIHRvICVzLCBcbiIKKyN+ICJvciBub25leGlzdGVudDsgaG93ZXZlciwgcmVhZGxpbmsgZmFpbGVkOiAlcyIKKyN+IG1zZ3N0ciAiIgorI34gIuC4hOC4s+C5gOC4leC4t+C4reC4mTogJXMg4LiE4Lin4Lij4LiI4Liw4LmA4Lib4LmH4LiZIHN5bWxpbmsg4LmE4Lib4Lii4Lix4LiHICVzXG4iCisjfiAi4Lir4Lij4Li34Lit4LmE4Lih4LmI4LiB4LmH4LmE4Lih4LmI4Lih4Li14Lit4Lii4Li54LmI4LmA4Lil4LiiIOC5geC4leC5iOC4m+C4o+C4suC4geC4j+C4p+C5iOC4siByZWFkbGluayDguKXguYnguKHguYDguKvguKXguKc6ICVzIgorCisjfiBtc2dpZCAiTGVhdmluZyAlcyAoJXMpIHBvaW50aW5nIHRvICVzLiIKKyN+IG1zZ3N0ciAi4LiI4Liw4Lib4Lil4LmI4Lit4Lii4LmD4Lir4LmJICVzICglcykg4LiK4Li14LmJ4LmE4Lib4Lii4Lix4LiHICVzIgorCisjfiBtc2dpZCAiVXBkYXRpbmcgJXMgKCVzKSB0byBwb2ludCB0byAlcy4iCisjfiBtc2dzdHIgIuC4geC4s+C4peC4seC4h+C4m+C4o+C4seC4muC4guC5ieC4reC4oeC4ueC4pSAlcyAoJXMpIOC5g+C4q+C5ieC4iuC4teC5ieC5hOC4m+C4ouC4seC4hyAlcyIKKworI34gbXNnaWQgIlJlbW92aW5nICVzICglcyksIG5vdCBhcHByb3ByaWF0ZSB3aXRoICVzLiIKKyN+IG1zZ3N0ciAi4LiI4Liw4Lil4LiaICVzICglcykg4LmA4Lie4Lij4Liy4Liw4LmE4Lih4LmI4LmA4Lir4Lih4Liy4Liw4LiB4Lix4LiaICVzIgorCisjfiBtc2dpZCAiIgorI34gIkNoZWNraW5nIGF2YWlsYWJsZSB2ZXJzaW9ucyBvZiAlcywgdXBkYXRpbmcgbGlua3MgaW4gJXMgLi4uXG4iCisjfiAiKFlvdSBtYXkgbW9kaWZ5IHRoZSBzeW1saW5rcyB0aGVyZSB5b3Vyc2VsZiBpZiBkZXNpcmVkIC0gc2VlIGBtYW4gbG4nLikiCisjfiBtc2dzdHIgIiIKKyN+ICLguIHguLPguKXguLHguIfguJXguKPguKfguIjguKrguK3guJrguJfguLLguIfguYDguKXguLfguK3guIHguJfguLXguYjguKHguLXguK3guKLguLnguYjguILguK3guIcgJXMg4LmB4Lil4Liw4Lib4Lij4Lix4Lia4Lil4Li04LiH4LiB4LmM4LmD4LiZICVzIC4uLlxuIgorI34gIijguITguLjguJPguK3guLLguIjguYHguIHguYnguYTguIIgc3ltbGluayDguJfguLXguYjguJnguLHguYjguJnguYDguK3guIfguYTguJTguYnguJbguYnguLLguJXguYnguK3guIfguIHguLLguKMgLSDguJTguLkgYG1hbiBsbicpIgorCisjfiBtc2dpZCAic2xhdmUgbGluayBuYW1lICVzIGR1cGxpY2F0ZWQiCisjfiBtc2dzdHIgIuC4iuC4t+C5iOC4reC4peC4tOC4h+C4geC5jOC4peC4ueC4gSAlcyDguIvguYnguLMiCisKKyN+IG1zZ2lkICJSZWNvdmVyaW5nIGZyb20gcHJldmlvdXMgZmFpbGVkIHVwZGF0ZSBvZiAlcyAuLi4iCisjfiBtc2dzdHIgIuC4geC4s+C4peC4seC4h+C4n+C4t+C5ieC4meC4iOC4suC4geC4geC4suC4o+C4m+C4o+C4seC4muC4guC5ieC4reC4oeC4ueC4peC4l+C4teC5iOC4peC5ieC4oeC5gOC4q+C4peC4p+C4guC4reC4hyAlcyAuLi4iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gb3BlbiAlcyBmb3Igd3JpdGU6ICVzIgorI34gbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguYDguJvguLTguJQgJXMg4LmA4Lie4Li34LmI4Lit4LmA4LiC4Li14Lii4LiZOiAlcyIKKworI34gbXNnaWQgIkxhc3QgcGFja2FnZSBwcm92aWRpbmcgJXMgKCVzKSByZW1vdmVkLCBkZWxldGluZyBpdC4iCisjfiBtc2dzdHIgIuC5geC4nuC4geC5gOC4geC4iOC4quC4uOC4lOC4l+C5ieC4suC4ouC4l+C4teC5iOC4iOC4seC4lOC5gOC4leC4o+C4teC4ouC4oSAlcyAoJXMpIOC4luC4ueC4geC4luC4reC4lOC4luC4reC4mSDguIjguLDguKXguJrguJfguLTguYnguIciCisKKyN+IG1zZ2lkICIiCisjfiAiVGhlcmUgaXMgb25seSAxIHByb2dyYW0gd2hpY2ggcHJvdmlkZXMgJXNcbiIKKyN+ICIoJXMpLiBOb3RoaW5nIHRvIGNvbmZpZ3VyZS5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIuC4oeC4teC5gOC4nuC4teC4ouC4hyAxIOC5guC4m+C4o+C5geC4geC4o+C4oeC4l+C4teC5iOC4iOC4seC4lOC5gOC4leC4o+C4teC4ouC4oSAlc1xuIgorI34gIiglcykg4LmE4Lih4LmI4Lih4Li14Lit4Liw4LmE4Lij4LiI4Liw4LiV4Lix4LmJ4LiH4LiE4LmI4LiyXG4iCisKKyN+IG1zZ2lkICIiCisjfiAiVGhlcmUgYXJlICVzIGFsdGVybmF0aXZlcyB3aGljaCBwcm92aWRlIGAlcycuXG4iCisjfiAiXG4iCisjfiAiICBTZWxlY3Rpb24gICAgQWx0ZXJuYXRpdmVcbiIKKyN+ICItLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIgorI34gbXNnc3RyICIiCisjfiAi4Lih4Li14LiX4Liy4LiH4LmA4Lil4Li34Lit4LiBICVzIOC4o+C4suC4ouC4geC4suC4o+C4l+C4teC5iOC4iOC4seC4lOC5gOC4leC4o+C4teC4ouC4oSBgJXMnXG4iCisjfiAiXG4iCisjfiAiICDguKPguLLguKLguIHguLLguKMgICAgICAg4LiX4Liy4LiH4LmA4Lil4Li34Lit4LiBXG4iCisjfiAiLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiIKKworI34gbXNnaWQgImVycm9yIG9yIGVvZiByZWFkaW5nICVzIGZvciAlcyAoJXMpIgorI34gbXNnc3RyICLguYDguIHguLTguJTguILguYnguK3guJzguLTguJTguJ7guKXguLLguJTguKvguKPguLfguK3guJ7guJrguIjguLjguJTguIjguJrguYHguJ/guYnguKHguILguJPguLDguK3guYjguLLguJkgJXMg4Liq4Liz4Lir4Lij4Lix4LiaICVzICglcykiCisKKyN+IG1zZ2lkICJtaXNzaW5nIG5ld2xpbmUgYWZ0ZXIgJXMiCisjfiBtc2dzdHIgIuC4guC4suC4lOC4reC4seC4geC4guC4o+C4sOC4guC4tuC5ieC4meC4muC4o+C4o+C4l+C4seC4lOC5g+C4q+C4oeC5iOC4q+C4peC4seC4hyAlcyIKKworI34gbXNnaWQgIlNlcmlvdXMgcHJvYmxlbTogJXMiCisjfiBtc2dzdHIgIuC4m+C4seC4jeC4q+C4suC4o+C5ieC4suC4ouC5geC4o+C4hzogJXMiCisKKyN+IG1zZ2lkICJjb3VsZG4ndCBhbGxvY2F0ZSBtZW1vcnkgZm9yIHN0cmR1cCBpbiBmaW5kcGFja2FnZSglcykiCisjfiBtc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC4iOC4reC4h+C4q+C4meC5iOC4p+C4ouC4hOC4p+C4suC4oeC4iOC4s+C4quC4s+C4q+C4o+C4seC4miBzdHJkdXAg4LmD4LiZIGZpbmRwYWNrYWdlKCVzKSIKKworI34gbXNnaWQgImZhaWxlZCB0byBhbGxvY2F0ZSBidWZmZXIgaW4gYnVmZmVyX2NvcHkgKCVzKSIKKyN+IG1zZ3N0ciAi4LiI4Lit4LiH4LmA4LiZ4Li34LmJ4Lit4LiX4Li14LmI4Lia4Lix4Lif4LmA4Lif4Lit4Lij4LmM4LmE4Lih4LmI4Liq4Liz4LmA4Lij4LmH4LiI4LmD4LiZIGJ1ZmZlcl9jb3B5ICglcykiCisKKyN+IG1zZ2lkICJFcnJvciBhbGxvY2F0aW5nIG1lbW9yeSBmb3IgY2ZnZmlsZW5hbWUiCisjfiBtc2dzdHIgIuC5gOC4geC4tOC4lOC4guC5ieC4reC4nOC4tOC4lOC4nuC4peC4suC4lOC4guC4k+C4sOC4iOC4reC4h+C4q+C4meC5iOC4p+C4ouC4hOC4p+C4suC4oeC4iOC4s+C4quC4s+C4q+C4o+C4seC4miBjZmdmaWxlbmFtZSIKKworI34gbXNnaWQgImZhaWxlZCB0byBtYWxsb2MgZm9yIGluZm8gZmlsZSBgJS4yNTVzJyIKKyN+IG1zZ3N0ciAi4LmE4Lih4LmI4Liq4Liy4Lih4Liy4Lij4LiW4LiI4Lit4LiH4Lir4LiZ4LmI4Lin4Lii4LiE4Lin4Liy4Lih4LiI4Liz4Liq4Liz4Lir4Lij4Lix4Lia4LmB4Lif4LmJ4Lih4LiC4LmJ4Lit4Lih4Li54Lil4LmB4Lie4LiB4LmA4LiB4LiIIGAlLjI1NXMnIgorCisjfiBtc2dpZCAiZGl2ZXJzaW9ucyBmaWxlIGhhcyB0b28tbG9uZyBsaW5lIG9yIEVPRiBbaV0iCisjfiBtc2dzdHIgIuC5geC4n+C5ieC4oSBkaXZlcnNpb25zIOC4oeC4teC4muC4o+C4o+C4l+C4seC4lOC4ouC4suC4p+C5gOC4geC4tOC4meC5hOC4m+C4q+C4o+C4t+C4reC4oeC4tSBFT0YgW2ldIgorCisjfiBtc2dpZCAicmVhZCBlcnJvciBpbiBkaXZlcnNpb25zIFtpaV0iCisjfiBtc2dzdHIgIuC5gOC4geC4tOC4lOC4guC5ieC4reC4nOC4tOC4lOC4nuC4peC4suC4lOC4guC4k+C4sOC4reC5iOC4suC4meC5geC4n+C5ieC4oSBkaXZlcnNpb25zIFtpaV0iCisKKyN+IG1zZ2lkICJ1bmV4cGVjdGVkIEVPRiBpbiBkaXZlcnNpb25zIFtpaV0iCisjfiBtc2dzdHIgIuC4nuC4miBFT0Yg4LiB4Lil4Liy4LiH4LiE4Lix4LiZ4LmD4LiZ4LmB4Lif4LmJ4LihIGRpdmVyc2lvbnMgW2lpXSIKKworI34gbXNnaWQgImZnZXRzIGdhdmUgYW4gZW1wdHkgc3RyaW5nIGZyb20gZGl2ZXJzaW9ucyBbaWldIgorI34gbXNnc3RyICJmZ2V0cyDguITguLfguJnguILguYnguK3guITguKfguLLguKHguYDguJvguKXguYjguLLguIjguLLguIHguYHguJ/guYnguKEgZGl2ZXJzaW9ucyBbaWldIgorCisjfiBtc2dpZCAiZGl2ZXJzaW9ucyBmaWxlIGhhcyB0b28tbG9uZyBsaW5lIG9yIEVPRiBbaWldIgorI34gbXNnc3RyICLguYHguJ/guYnguKEgZGl2ZXJzaW9ucyDguKHguLXguJrguKPguKPguJfguLHguJTguKLguLLguKfguYDguIHguLTguJnguYTguJvguKvguKPguLfguK3guKHguLUgRU9GIFtpaV0iCisKKyN+IG1zZ2lkICJyZWFkIGVycm9yIGluIGRpdmVyc2lvbnMgW2lpaV0iCisjfiBtc2dzdHIgIuC5gOC4geC4tOC4lOC4guC5ieC4reC4nOC4tOC4lOC4nuC4peC4suC4lOC4guC4k+C4sOC4reC5iOC4suC4meC5geC4n+C5ieC4oSBkaXZlcnNpb25zIFtpaWldIgorCisjfiBtc2dpZCAidW5leHBlY3RlZCBFT0YgaW4gZGl2ZXJzaW9ucyBbaWlpXSIKKyN+IG1zZ3N0ciAi4Lie4LiaIEVPRiDguIHguKXguLLguIfguITguLHguJnguYPguJnguYHguJ/guYnguKEgZGl2ZXJzaW9ucyBbaWlpXSIKKworI34gbXNnaWQgImZnZXRzIGdhdmUgYW4gZW1wdHkgc3RyaW5nIGZyb20gZGl2ZXJzaW9ucyBbaWlpXSIKKyN+IG1zZ3N0ciAiZmdldHMg4LiE4Li34LiZ4LiC4LmJ4Lit4LiE4Lin4Liy4Lih4LmA4Lib4Lil4LmI4Liy4LiI4Liy4LiB4LmB4Lif4LmJ4LihIGRpdmVyc2lvbnMgW2lpaV0iCisKKyN+IG1zZ2lkICJjb3VsZG4ndCBtYWxsb2MgaW4gZXhlY2JhY2tlbmQiCisjfiBtc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4liBtYWxsb2Mg4LmD4LiZIGV4ZWNiYWNrZW5kIgorCisjfiBtc2dpZCAiY291bGRuJ3Qgc3RyZHVwIGluIGV4ZWNiYWNrZW5kIgorI34gbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJYgc3RyZHVwIOC5g+C4mSBleGVjYmFja2VuZCIKKworI34gbXNnaWQgImZhaWxlZCBhbGxvY2F0aW5nIG1lbW9yeSBmb3IgdmFyaWFibGUgYGN0cmxhcmVhJyIKKyN+IG1zZ3N0ciAi4LiI4Lit4LiH4Lir4LiZ4LmI4Lin4Lii4LiE4Lin4Liy4Lih4LiI4Liz4Liq4Liz4Lir4Lij4Lix4Lia4LiV4Lix4Lin4LmB4Lib4LijIGBjdHJsYXJlYScg4LmE4Lih4LmI4Liq4Liz4LmA4Lij4LmH4LiIIgorCisjfiBtc2dpZCAiQ2Fubm90IGdldCBFTk9FTlQgdmFsdWUgZnJvbSAlczogJXMiCisjfiBtc2dzdHIgIuC5hOC4oeC5iOC4quC4suC4oeC4suC4o+C4luC4reC5iOC4suC4meC4hOC5iOC4siBFTk9FTlQg4LiI4Liy4LiBICVzOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byBlbnN1cmUgJXMgbm9uZXhpc3RlbnQ6ICVzIgorI34gbXNnc3RyICLguYTguKHguYjguKrguLLguKHguLLguKPguJbguJfguLPguYPguKvguYnguYHguJnguYjguYPguIjguKfguYjguLIgJXMg4LmE4Lih4LmI4Lih4Li14Lit4Lii4Li54LmIOiAlcyIKKworI34gbXNnaWQgIiIKKyN+ICJ3YXJuaW5nOiAlcyBpcyBzdXBwb3NlZCB0byBiZSBhIHNsYXZlIHN5bWxpbmsgdG9cbiIKKyN+ICIgJXMsIG9yIG5vbmV4aXN0ZW50OyBob3dldmVyLCByZWFkbGluayBmYWlsZWQ6ICVzIgorI34gbXNnc3RyICIiCisjfiAi4LiE4Liz4LmA4LiV4Li34Lit4LiZOiAlcyDguITguKfguKPguIjguLDguYDguJvguYfguJkgc3ltbGluayDguKXguLnguIHguYTguJvguKLguLHguIcgJXNcbiIKKyN+ICIg4Lir4Lij4Li34Lit4LmE4Lih4LmI4LiB4LmH4LmE4Lih4LmI4Lih4Li14Lit4Lii4Li54LmI4LmA4Lil4LiiIOC5geC4leC5iOC4m+C4o+C4suC4geC4j+C4p+C5iOC4siByZWFkbGluayDguKXguYnguKHguYDguKvguKXguKc6ICVzIgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9wby90bC5nbW8gYi9kcGtnLTEuMTYuMS4xL3BvL3RsLmdtbwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yM2JiMWQ0Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9wby90bC5nbW8KQmluYXJ5IGZpbGVzIGRpZmZlcgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9wby90bC5wbyBiL2Rwa2ctMS4xNi4xLjEvcG8vdGwucG8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOWZhZDc5MwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvcG8vdGwucG8KQEAgLTAsMCArMSw3MTcxIEBACisjIFRhZ2Fsb2cgdHJhbnNsYXRpb24gZmlsZSBmb3IgZHBrZworIyBDb3B5cmlnaHQgKEMpIDIwMDUgRXJpYyBQYXJlamEKKyMgVGhpcyBmaWxlIGlzIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBzYW1lIGxpY2Vuc2UgYXMgdGhlIHBhY2thZ2UgZHBrZy4KKyMgRXJpYyBQYXJlamEsIDIwMDUKKyMKKyMKK21zZ2lkICIiCittc2dzdHIgIiIKKyJQcm9qZWN0LUlkLVZlcnNpb246IGRwa2cgMS4xM1xuIgorIlJlcG9ydC1Nc2dpZC1CdWdzLVRvOiBkZWJpYW4tZHBrZ0BsaXN0cy5kZWJpYW4ub3JnXG4iCisiUE9ULUNyZWF0aW9uLURhdGU6IDIwMTEtMTAtMTQgMDc6MTErMDIwMFxuIgorIlBPLVJldmlzaW9uLURhdGU6IDIwMDYtMDItMTcgMDg6NTMrMDIwMFxuIgorIkxhc3QtVHJhbnNsYXRvcjogRXJpYyBQYXJlamEgPHhlbm9zQHVwbS5lZHUucGg+XG4iCisiTGFuZ3VhZ2UtVGVhbTogVGFnYWxvZyA8ZGViaWFuLXRsQGJhbndhLnVwbS5lZHUucGg+XG4iCisiTGFuZ3VhZ2U6IHRsXG4iCisiTUlNRS1WZXJzaW9uOiAxLjBcbiIKKyJDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9VVRGLThcbiIKKyJDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiA4Yml0XG4iCisKKyM6IGxpYi9kcGtnL2FyLmM6NjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgJyVjJyBpbiBhcmNoaXZlICclLjI1MHMnIG1lbWJlciAnJS4xNnMnIHNpemUiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvYXIuYzo4MSBsaWIvZHBrZy9hci5jOjk3IGxpYi9kcGtnL2FyLmM6MTA4IGxpYi9kcGtnL2FyLmM6MTEyCisjOiBsaWIvZHBrZy9hci5jOjEzNCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE1NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIGZpbGUgJyVzJyIKK21zZ3N0ciAiaGluZGkgbWFidWtzYW4gYW5nIHBpbmFnbXVsYW4gbmEgdGFsYWtzYW5nIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy9hci5jOjk0CisjLCBjLWZvcm1hdAorbXNnaWQgImdlbmVyYXRlZCBjb3JydXB0IGFyIGhlYWRlciBmb3IgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9hci5jOjEyMworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGFyIG1lbWJlciBmaWxlICglcykiCittc2dzdHIgImJpZ28gbmEgbGlraGFpbiBhbmcgdG1wZmlsZSAoZGF0b3MpIgorCisjOiBsaWIvZHBrZy9hci5jOjEzMAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiYXIgbWVtYmVyIGZpbGUgKCVzKSIKK21zZ3N0ciAiYmlnbyBuYSBsaWtoYWluIGFuZyB0bXBmaWxlIChkYXRvcykiCisKKyM6IGxpYi9kcGtnL2J1ZmZlci5jOjE5NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgb24gYnVmZmVyIGNvcHkgZm9yICVzIgorbXNnc3RyICJiaWdvIHNhIGJ1ZmZlcl9jb3B5ICglcykiCisKKyM6IGxpYi9kcGtnL2J1ZmZlci5jOjIxMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIGluIHdyaXRlIG9uIGJ1ZmZlciBjb3B5IGZvciAlcyIKK21zZ3N0ciAiYmlnbyBzYSBidWZmZXJfY29weSAoJXMpIgorCisjOiBsaWIvZHBrZy9idWZmZXIuYzoyMjAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInNob3J0IHJlYWQgb24gYnVmZmVyIGNvcHkgZm9yICVzIgorbXNnc3RyICJtYWlrc2luZyBwYWdiYXNhIHNhIGJ1ZmZlcl9jb3B5ICglcykiCisKKyM6IGxpYi9kcGtnL2J1ZmZlci5jOjI4OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgdGFyIgorbXNnaWQgImZhaWxlZCB0byBzZWVrICVzIgorbXNnc3RyICJiaWdvIG5hIGktZXhlYyBhbmcgdGFyIgorCisjOiBsaWIvZHBrZy9jb21tYW5kLmM6MTc4IGxpYi9kcGtnL2NvbW1hbmQuYzoyMDQgc3JjL2hlbHAuYzo2MjEKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTggc3JjL3Byb2Nlc3NhcmMuYzoxMzggc3JjL3Byb2Nlc3NhcmMuYzo0MzIKKyM6IHNyYy9wcm9jZXNzYXJjLmM6ODM5IGRwa2ctZGViL2J1aWxkLmM6NDU5IGRwa2ctZGViL2J1aWxkLmM6NTM4CisjOiBkcGtnLWRlYi9idWlsZC5jOjU2MSBkcGtnLWRlYi9leHRyYWN0LmM6MzE3IGRwa2ctZGViL2luZm8uYzo2NQorIzogZHBrZy1zcGxpdC9zcGxpdC5jOjY5IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo0NTcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBleGVjdXRlICVzICglcykiCittc2dzdHIgImhpbmRpIG1hLWV4ZWN1dGUgYW5nICVzIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBkZWNvbXByZXNzaW9uIgorbXNnc3RyICIlczogZGVjb21wcmVzc2lvbiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzo4OQorIywgYy1mb3JtYXQKK21zZ2lkICIlczogY29tcHJlc3Npb24iCittc2dzdHIgIiVzOiBjb21wcmVzc2lvbiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yIGJpbmRpbmcgaW5wdXQgdG8gZ3ppcCBzdHJlYW0iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxMjQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHJlYWQgZXJyb3I6ICclcyciCittc2dzdHIgIiVzOiBlcnJvciBuYSBpbnRlcm5hbCBzYSBnemlwOiBgJXMnIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjEzMiBsaWIvZHBrZy9jb21wcmVzcy5jOjEzNgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgd3JpdGUgZXJyb3IiCittc2dzdHIgIiVzOiBlcnJvciBuYSBpbnRlcm5hbCBzYSBnemlwOiBgJXMnIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE1MAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZXJyb3IgYmluZGluZyBvdXRwdXQgdG8gZ3ppcCBzdHJlYW0iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxNTcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHJlYWQgZXJyb3IiCittc2dzdHIgIiVzOiBlcnJvciBuYSBpbnRlcm5hbCBzYSBnemlwOiBgJXMnIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE2NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgd3JpdGUgZXJyb3I6ICclcyciCittc2dzdHIgIiVzOiBlcnJvciBuYSBpbnRlcm5hbCBzYSBnemlwOiBgJXMnIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE4MAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgd3JpdGUgZXJyb3I6ICVzIgorbXNnc3RyICIlczogZXJyb3IgbmEgaW50ZXJuYWwgc2EgZ3ppcDogYCVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyMjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yIGJpbmRpbmcgaW5wdXQgdG8gYnppcDIgc3RyZWFtIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjMyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgcmVhZCBlcnJvcjogJyVzJyIKK21zZ3N0ciAiJXM6IGVycm9yIG5hIGludGVybmFsIHNhIGJ6aXAyOiBgJXMnIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI0MCBsaWIvZHBrZy9jb21wcmVzcy5jOjI0NCBsaWIvZHBrZy9jb21wcmVzcy5jOjI5NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIHdyaXRlIGVycm9yIgorbXNnc3RyICIlczogZXJyb3IgbmEgaW50ZXJuYWwgc2EgYnppcDI6IGAlcyciCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjU4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvciBiaW5kaW5nIG91dHB1dCB0byBiemlwMiBzdHJlYW0iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyNjUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiByZWFkIGVycm9yIgorbXNnc3RyICIlczogZXJyb3IgbmEgaW50ZXJuYWwgc2EgYnppcDI6IGAlcyciCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6Mjc1IGxpYi9kcGtnL2NvbXByZXNzLmM6Mjg2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgd3JpdGUgZXJyb3I6ICclcyciCittc2dzdHIgIiVzOiBlcnJvciBuYSBpbnRlcm5hbCBzYSBiemlwMjogYCVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyODIKK21zZ2lkICJ1bmV4cGVjdGVkIGJ6aXAyIGVycm9yIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVwZGF0ZXMgZGlyZWN0b3J5IGNvbnRhaW5zIGZpbGUgYCUuMjUwcycgd2hvc2UgbmFtZSBpcyB0b28gbG9uZyAobGVuZ3RoPSVkLCAiCisibWF4PSVkKSIKK21zZ3N0ciAiIgorImRpcmVjdG9yeSBuZyBtZ2EgdXBkYXRlIG5hZ2xhbGFtYW4gbmcgdGFsYWtzYW4gYCUuMjUwcycgbmEgYW5nIHBhbmdhbGFuIGF5ICIKKyJzb2JyYW5nIGhhYmEgKGhhYmE9JWQsIG1heD0lZCkiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVwZGF0ZXMgZGlyZWN0b3J5IGNvbnRhaW5zIGZpbGVzIHdpdGggZGlmZmVyZW50IGxlbmd0aCBuYW1lcyAoYm90aCAlZCBhbmQgJWQpIgorbXNnc3RyICIiCisiZGlyZWN0b3J5IG5nIG1nYSB1cGRhdGUgbmFnbGFsYW1hbiBuZyBtZ2EgdGFsYWtzYW4gbmEgbWFna2FpYmFuZyBoYWJhIG5hIG1nYSAiCisicGFuZ2FsYW4gKHBhcmVob25nICVkIGF0ICVkKSIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzo4NgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc2NhbiB1cGRhdGVzIGRpcmVjdG9yeSBgJS4yNTVzJyIKK21zZ3N0ciAiaGluZGkgbWEtc2NhbiBhbmcgZGlyZWN0b3J5IG5nIG1nYSB1cGRhdGUgYCUuMjU1cyciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZW1vdmUgaW5jb3Jwb3JhdGVkIHVwZGF0ZSBmaWxlICUuMjU1cyIKK21zZ3N0ciAiYmlnbyBzYSBwYWd0YW5nZ2FsIG5nIG5haXNhbWFuZyBtZ2EgdGFsYWtzYW5nIHVwZGF0ZSAlLjI1NXMiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTIxIGRwa2ctZGViL2J1aWxkLmM6NDQ3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgYCUuMjU1cyciCittc2dzdHIgImhpbmRpIG1hbGlraGEgYW5nIGAlLjI1NXMnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEyNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmlsbCAlLjI1MHMgd2l0aCBwYWRkaW5nIgorbXNnc3RyICJoaW5kaSBuYWxhbW5hbiBhbmcgJS4yNTBzIG5nIHBhZGRpbmciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTI3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggJS4yNTBzIGFmdGVyIHBhZGRpbmciCittc2dzdHIgImhpbmRpIG5haS1mbHVzaCBhbmcgJS4yNTBzIG1hdGFwb3MgYW5nIHBhZy1wYWQiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTI5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2VlayB0byBzdGFydCBvZiAlLjI1MHMgYWZ0ZXIgcGFkZGluZyIKK21zZ3N0ciAiZGkgbWFrYXBhZy1zZWVrIHNhIHVtcGlzYSBuZyAlLjI1MHMgbWF0YXBvcyBtYWctcGFkIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjE5NQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIG9wZW4gdG1wZmlsZSBmb3IgdnNucHJpbnRmIgorbXNnaWQgInVuYWJsZSB0byBvcGVuIGxvY2sgZmlsZSAlcyBmb3IgdGVzdGluZyIKK21zZ3N0ciAiaGluZGkgbWFidWtzYW4gYW5nIHRtcGZpbGUgcGFyYSBzYSB2c25wcmludGYiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjIxCittc2dpZCAidW5hYmxlIHRvIG9wZW4vY3JlYXRlIHN0YXR1cyBkYXRhYmFzZSBsb2NrZmlsZSIKK21zZ3N0ciAiaGluZGkgbWFidWtzYW4vbWFsaWtoYSBhbmcgc3RhdHVzIGRhdGFiYXNlIGxvY2tmaWxlIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjIzMQorbXNnaWQgInlvdSBkbyBub3QgaGF2ZSBwZXJtaXNzaW9uIHRvIGxvY2sgdGhlIGRwa2cgc3RhdHVzIGRhdGFiYXNlIgorbXNnc3RyICJ3YWxhIGtheW9uZyBwYWhpbnR1bG90IG5hIGlhbGRhYmEgYW5nIGRwa2cgc3RhdHVzIGRhdGFiYXNlIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjIzMworIywgZnV6enkKKyN8IG1zZ2lkICJ1bmFibGUgdG8gbG9jayBkcGtnIHN0YXR1cyBkYXRhYmFzZSIKK21zZ2lkICJkcGtnIHN0YXR1cyBkYXRhYmFzZSIKK21zZ3N0ciAiaGluZGkgbWFhbGRhYmEgYW5nIGRwa2cgc3RhdHVzIGRhdGFiYXNlIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjI1NworbXNnaWQgInJlcXVlc3RlZCBvcGVyYXRpb24gcmVxdWlyZXMgc3VwZXJ1c2VyIHByaXZpbGVnZSIKK21zZ3N0ciAia2FpbGFuZ2FuIG5nIHByaWJpbGVoaXlvbmcgc3VwZXJ1c2VyIGFuZyBoaW5pbGluZyBuYSBvcGVyYXN5b24iCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjYyCittc2dpZCAidW5hYmxlIHRvIGFjY2VzcyBkcGtnIHN0YXR1cyBhcmVhIgorbXNnc3RyICJoaW5kaSBtYWJhc2EgYW5nIGx1Z2FyIG5nIGthbGFnYXlhbiBuZyBkcGtnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjI2NAorbXNnaWQgIm9wZXJhdGlvbiByZXF1aXJlcyByZWFkL3dyaXRlIGFjY2VzcyB0byBkcGtnIHN0YXR1cyBhcmVhIgorbXNnc3RyICIiCisia2FpbGFuZ2FuIG5nIG9wZXJhc3lvbiBuZyBwYWhpbnR1bG90IHNhIHBhZ2Jhc2EvcGFnc3VsYXQgc2EgbHVnYXIgbmcgIgorImthbGFnYXlhbmcgZHBrZyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozMDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlbW92ZSBteSBvd24gdXBkYXRlIGZpbGUgJS4yNTVzIgorbXNnc3RyICJiaWdvIHNhIHBhZ3RhbmdnYWwgbmcgc2FyaWxpbmcgdGFsYWtzYW5nIGFwZGV5dCAlLjI1NXMiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzQ3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiaGluZGkgbWFrYXBhZ3N1bGF0IG5nIGthbGFnYXlhbmcgaW5hcGRleXQgbmcgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzQ5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiaGluZGkgbWFpLWZsdXNoIGFuZyBrYWxhZ2F5YW5nIGluYXBkZXl0IG5nIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM1MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gdHJ1bmNhdGUgZm9yIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJoaW5kaSBtYWktdHJ1bmNhdGUgcGFyYSBzYSBrYWxhZ2F5YW5nIGluYXBkZXl0IG5nIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM1MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZnN5bmMgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgImhpbmRpIG1hLWZzeW5jIGFuZyBrYWxhZ2F5YW5nIGluYXBkZXl0IG5nIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM1NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgImhpbmRpIG1hc2FyaGFuIGFuZyBrYWxhZ2F5YW5nIGluYXBkZXl0IG5nIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM1OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiaGluZGkgbWEtbHVrbG9rIGFuZyBrYWxhZ2F5YW5nIGluYXBkZXl0IG5nIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy9kaXIuYzo1MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHJlYWQgZmlsZWRlc2NyaXB0b3IgZmxhZ3MgZm9yICUuMjUwcyIKK21zZ2lkICJ1bmFibGUgdG8gZ2V0IGZpbGUgZGVzY3JpcHRvciBmb3IgZGlyZWN0b3J5ICclcyciCittc2dzdHIgImhpbmRpIG1hYmFzYSBhbmcgZmlsZWRlc2NyaXB0b3IgZmxhZ3MgcGFyYSBzYSAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL2Rpci5jOjU0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBkaXJlY3RvcnkgJyVzJyIKK21zZ3N0ciAiaGluZGkgbWFidWtzYW4gYW5nIHBpbmFnbXVsYW4gbmEgdGFsYWtzYW5nIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy9kaXIuYzo2OSBsaWIvZHBrZy9kaXIuYzoxMzEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICJoaW5kaSBtYWJ1a3NhbiBhbmcgcGluYWdtdWxhbiBuYSB0YWxha3NhbmcgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2Rpci5jOjEwOSBzcmMvZGl2ZXJ0Y21kLmM6MjE4IGRwa2ctc3BsaXQvc3BsaXQuYzoyMDIKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjkzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBmaWxlICclcyciCittc2dzdHIgImhpbmRpIG1hYnVrc2FuIGFuZyBwaW5hZ211bGFuIG5hIHRhbGFrc2FuZyBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZGlyLmM6MTExIHNyYy9kaXZlcnRjbWQuYzoyMzIgc3JjL2RpdmVydGNtZC5jOjM3NworIzogc3JjL3N0YXRjbWQuYzoyMTcgZHBrZy1kZWIvYnVpbGQuYzo1OTggZHBrZy1zcGxpdC9qb2luLmM6NjUKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxODcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE0MDYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzeW5jIGZpbGUgJyVzJyIKK21zZ3N0ciAiaGluZGkgbWFidWtzYW4gYW5nIHBpbmFnbXVsYW4gbmEgdGFsYWtzYW5nIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy9kaXIuYzoxMTMgc3JjL2RpdmVydGNtZC5jOjIzNCBzcmMvZGl2ZXJ0Y21kLmM6Mzc5CisjOiBkcGtnLWRlYi9idWlsZC5jOjYwMCBkcGtnLXNwbGl0L2pvaW4uYzo2NyBkcGtnLXNwbGl0L3F1ZXVlLmM6MTg5CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTMxNCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTQwOAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIGZpbGUgJyVzJyIKK21zZ3N0ciAiaGluZGkgbWFrYS1mbHVzaCBzYSB2c25wcmludGYiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzozOTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB3cml0ZSBkZXRhaWxzIG9mIGAlLjUwcycgdG8gYCUuMjUwcyciCittc2dzdHIgImJpZ28gc2EgcGFnc3VsYXQgbmcgJXMgcmVjb3JkIHR1bmdrb2wgYCUuNTBzJyBzYSBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQyMworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gJyVzJyBmb3Igd3JpdGluZyAlcyBkYXRhYmFzZSIKK21zZ3N0ciAiYmlnbyBzYSBwYWdidWthcyBuZyBgJXMnIHBhcmEgbWFnc3VsYXQgbmcgJXMgbmEgaW1wb3JtYXN5b24iCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0MjYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgYnVmZmVyaW5nIG9uICVzIGRhdGFiYXNlIGZpbGUiCittc2dzdHIgImhpbmRpIG1hdGFrZGEgYW5nIHBhZy1idWZmZXIgc2EgdGFsYWtzYW5nIGthbGFnYXlhbiIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQzOAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlICVzIGRhdGFiYXNlIHJlY29yZCBhYm91dCAnJS41MHMnIHRvICclLjI1MHMnIgorbXNnc3RyICJiaWdvIHNhIHBhZ3N1bGF0IG5nICVzIHJlY29yZCB0dW5na29sIGAlLjUwcycgc2EgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NDYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBmbHVzaCAlcyBkYXRhYmFzZSB0byAnJS4yNTBzJyIKK21zZ3N0ciAiYmlnbyBzYSBwYWctZmx1c2ggbmcgaW1wb3JtYXN5b24gJXMgc2EgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NDgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBmc3luYyAlcyBkYXRhYmFzZSB0byAnJS4yNTBzJyIKK21zZ3N0ciAiYmlnbyBzYSBwYWctZnN5bmMgbmcgJXMgbmEgaW1wb3JtYXN5b24gc2EgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjbG9zZSAnJS4yNTBzJyBhZnRlciB3cml0aW5nICVzIGRhdGFiYXNlIgorbXNnc3RyICJiaWdvIHNhIHBhZ3NhcmEgbmcgYCUuMjUwcycgbWF0YXBvcyBtYWdzdWxhdCBuZyBpbXBvcm1hc3lvbmcgJXMiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NTUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBsaW5rICclLjI1MHMnIHRvICclLjI1MHMnIGZvciBiYWNrdXAgb2YgJXMgZGF0YWJhc2UiCittc2dzdHIgImJpZ28gc2EgcGFnLWxpbmsgbmcgYCUuMjUwcycgc2EgYCUuMjUwcycgcGFyYSBzYSBiYWNrdXAgbmcgJXMgaW5mbyIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ1OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGluc3RhbGwgJyUuMjUwcycgYXMgJyUuMjUwcycgY29udGFpbmluZyAlcyBkYXRhYmFzZSIKK21zZ3N0ciAiYmlnbyBzYSBwYWdsdWtsb2sgbmcgYCUuMjUwcycgYmlsYW5nIGAlLjI1MHMnIG5hIG5hZ2xhbGFtYW4gbmcgJXMgaW5mbyIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjk0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogdW5yZWNvdmVyYWJsZSBmYXRhbCBlcnJvciwgYWJvcnRpbmc6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjEwMAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IG91dHNpZGUgZXJyb3IgY29udGV4dCwgYWJvcnRpbmc6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjEyMAorIywgZnV6enkKKyN8IG1zZ2lkICJvdXQgb2YgbWVtb3J5IGZvciBuZXcgY2xlYW51cCBlbnRyeSIKK21zZ2lkICJvdXQgb2YgbWVtb3J5IGZvciBuZXcgZXJyb3IgY29udGV4dCIKK21zZ3N0ciAibmFna3VsYW5nIG5nIG1lbW9yeSBwYXJhIHNhIGJhZ29uZyBlbnRyeSBuZyBwYWdsaW5pcyIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjE4MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IGVycm9yIHdoaWxlIGNsZWFuaW5nIHVwOlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisiJXM6IGVycm9yIGhhYmFuZyBuYWdsaWxpbmlzOlxuIgorIiAlc1xuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MjAxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJkcGtnOiB0b28gbWFueSBuZXN0ZWQgZXJyb3JzIGR1cmluZyBlcnJvciByZWNvdmVyeSAhIVxuIgorbXNnaWQgIiVzOiB0b28gbWFueSBuZXN0ZWQgZXJyb3JzIGR1cmluZyBlcnJvciByZWNvdmVyeSEhXG4iCittc2dzdHIgIiIKKyJkcGtnOiBsdWJvcyBuYSBuZXN0ZWQgZXJyb3IgaGFiYW5nIHNpbnVidWthbmcgbWFncmVjb3ZlciBtdWxhIHNhIGVycm9yICEhXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoyNjggbGliL2Rwa2cvZWhhbmRsZS5jOjMwNworbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBjbGVhbnVwIGVudHJ5IgorbXNnc3RyICJuYWdrdWxhbmcgbmcgbWVtb3J5IHBhcmEgc2EgYmFnb25nIGVudHJ5IG5nIHBhZ2xpbmlzIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MjkxCittc2dpZCAib3V0IG9mIG1lbW9yeSBmb3IgbmV3IGNsZWFudXAgZW50cnkgd2l0aCBtYW55IGFyZ3VtZW50cyIKK21zZ3N0ciAiIgorIm5hZ2t1bGFuZyBuZyBtZW1vcnkgcGFyYSBzYSBiYWdvbmcgZW50cnkgbmcgcGFnbGluaXMgbmEgbWFyYW1pbmcgYXJndW1lbnRvIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MzUyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogZXJyb3I6ICVzXG4iCittc2dzdHIgIiIKKyIlczogZXJyb3Igc2EgcGFncHJvc2VzbyBuZyAlcyAoLS0lcyk6XG4iCisiICVzXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzozOTMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiB3YXJuaW5nOiAlc1xuIgorbXNnc3RyICJlcnJvciBzYSBwYWdzdWxhdCBuZyBgJXMnIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6NDE2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczolczolZDogaW50ZXJuYWwgZXJyb3I6ICVzXG4iCittc2dzdHIgIiVzOiVkOiBpbnRlcm5hbCBlcnJvciBgJXMnXG4iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGlzIG1pc3NpbmciCittc2dzdHIgIiVzIGF5IG5hd2F3YWxhIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0OQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYCUuKnMnIGlzIG5vdCBhbGxvd2VkIGZvciAlcyIKK21zZ2lkICInJS41MHMnIGlzIG5vdCBhbGxvd2VkIGZvciAlcyIKK21zZ3N0ciAiYCUuKnMnIGF5IGhpbmRpIHBpbmFwYXlhZ2FuIHBhcmEgc2EgJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjczCisjLCBjLWZvcm1hdAorbXNnaWQgImp1bmsgYWZ0ZXIgJXMiCittc2dzdHIgImJhc3VyYSBtYXRhcG9zIGFuZyAlcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6ODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBwYWNrYWdlIG5hbWUgKCUuMjUwcykiCittc2dzdHIgImRpIHRhbmdnYXAgbmEgcGFuZ2FsYW4gbmcgcGFrZXRlICglLjI1MHMpIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZW1wdHkgZmlsZSBkZXRhaWxzIGZpZWxkIGAlcyciCittc2dzdHIgIndhbGFuZyBsYW1hbiBhbmcgc2FrbGF3IG5nIGRldGFseWVuZyB0YWxha3NhbiBgJXMnIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBkZXRhaWxzIGZpZWxkIGAlcycgbm90IGFsbG93ZWQgaW4gc3RhdHVzIGZpbGUiCittc2dzdHIgIiIKKyJoaW5kaSBwaW5hcGF5YWdhbiBhbmcgc2FrbGF3IG5nIGRldGFseWUgbmcgdGFsYWtzYW4gYCVzJyBzYSB0YWxha3NhbmcgZXN0YWRvIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidG9vIG1hbnkgdmFsdWVzIGluIGZpbGUgZGV0YWlscyBmaWVsZCBgJXMnIChjb21wYXJlZCB0byBvdGhlcnMpIgorbXNnc3RyICIiCisibGFiaXMgYW5nIGRhbWkgbmcgaGFsYWdhIHNhIHNha2xhdyBuZyBkZXRhbHllbmcgdGFsYWtzYW4gYCVzJyAoaGluYW1iaW5nIHNhICIKKyJpYmEpIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAidG9vIGZldyB2YWx1ZXMgaW4gZmlsZSBkZXRhaWxzIGZpZWxkIGAlcycgKGNvbXBhcmVkIHRvIG90aGVycykiCittc2dzdHIgIiIKKyJsYWJpcyBuYSBrYWthdW50aSBhbmcgaGFsYWdhIHNhIHNha2xhdyBuZyBkZXRhbHllbmcgdGFsYWtzYW4gYCVzJyAoaGluYW1iaW5nICIKKyJzYSBpYmEpIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxNTQKK21zZ2lkICJ5ZXMvbm8gaW4gYm9vbGVhbiBmaWVsZCIKK21zZ3N0ciAib28vaGluZGkgc2Egc2FrbGF3IG5hIGJvb2xlYW4iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE3NAorbXNnaWQgIndvcmQgaW4gYHByaW9yaXR5JyBmaWVsZCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxODYKK21zZ2lkICJ2YWx1ZSBmb3IgYHN0YXR1cycgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICJoYWxhZ2Egbmcgc2FrbGF3IG5nIGBzdGF0dXMnIGF5IGhpbmRpIHBpbmFwYXlhZ2FuIHNhIGNvbnRleHQgbmEgaXRvIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxOTEKKyMsIGZ1enp5Cittc2dpZCAiZmlyc3QgKHdhbnQpIHdvcmQgaW4gYHN0YXR1cycgZmllbGQiCittc2dzdHIgInBhbmdhdGxvbmcgc2FsaXRhbmcgKHN0YXR1cykgc2Egc2FrbGF3IG5hIGBzdGF0dXMnIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxOTQKKyMsIGZ1enp5Cittc2dpZCAic2Vjb25kIChlcnJvcikgd29yZCBpbiBgc3RhdHVzJyBmaWVsZCIKK21zZ3N0ciAicGFuZ2F0bG9uZyBzYWxpdGFuZyAoc3RhdHVzKSBzYSBzYWtsYXcgbmEgYHN0YXR1cyciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE5NworbXNnaWQgInRoaXJkIChzdGF0dXMpIHdvcmQgaW4gYHN0YXR1cycgZmllbGQiCittc2dzdHIgInBhbmdhdGxvbmcgc2FsaXRhbmcgKHN0YXR1cykgc2Egc2FrbGF3IG5hIGBzdGF0dXMnIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyMDcKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImVycm9yIGluIFZlcnNpb24gc3RyaW5nIGAlLjI1MHMnOiAlLjI1MHMiCittc2dpZCAiZXJyb3IgaW4gVmVyc2lvbiBzdHJpbmcgJyUuMjUwcyciCittc2dzdHIgImVycm9yIHNhIFZlcnNpb24gc3RyaW5nIGAlLjI1MHMnOiAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjIxOAorbXNnaWQgIm9ic29sZXRlIGBSZXZpc2lvbicgb3IgYFBhY2thZ2UtUmV2aXNpb24nIGZpZWxkIHVzZWQiCittc2dzdHIgImxhb3MgbmEgc2FrbGF3IG5nIGBSZXZpc2lvbicgbyBgUGFja2FnZS1SZXZpc2lvbicgbmEgZ2luYW1pdCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjM1Cittc2dpZCAidmFsdWUgZm9yIGBjb25maWctdmVyc2lvbicgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICIiCisiaGFsYWdhIG5nIHNha2xhdyBuYSBgY29uZmlnLXZlcnNpb24nIGF5IGhpbmRpIHBpbmFwYXlhZ2FuIHNhIGNvbnRleHQgbmEgaXRvIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyNDAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImVycm9yIGluIENvbmZpZy1WZXJzaW9uIHN0cmluZyBgJS4yNTBzJzogJS4yNTBzIgorbXNnaWQgImVycm9yIGluIENvbmZpZy1WZXJzaW9uIHN0cmluZyAnJS4yNTBzJyIKK21zZ3N0ciAiZXJyb3Igc2EgQ29uZmlnLVZlcnNpb24gc3RyaW5nIGAlLjI1MHMnOiAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjI2NgorIywgYy1mb3JtYXQKK21zZ2lkICJ2YWx1ZSBmb3IgYGNvbmZmaWxlcycgaGFzIG1hbGZvcm1hdHRlZCBsaW5lIGAlLipzJyIKK21zZ3N0ciAiaGFsYWdhIG5nIGBjb25mZmlsZXMnIGF5IG1heSBtYWxpbmcgYW55b25nIGxpbnlhIGAlLipzJyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6Mjg3CisjLCBjLWZvcm1hdAorbXNnaWQgInZhbHVlIGZvciBgY29uZmZpbGVzJyBoYXMgbGluZSBzdGFydGluZyB3aXRoIG5vbi1zcGFjZSBgJWMnIgorbXNnc3RyICJoYWxhZ2EgbmcgYGNvbmZmaWxlcycgYXkgbWF5IGxpbnlhbmcgbmFnLXVtcGlzYSBuZyBkaS1wdXdhbmcgYCVjJyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MzA0Cittc2dpZCAicm9vdCBvciBudWxsIGRpcmVjdG9yeSBpcyBsaXN0ZWQgYXMgYSBjb25mZmlsZSIKK21zZ3N0ciAicm9vdCBvIG51bGwgZGlyZWN0b3J5IGF5IG5ha2FsaXN0YSBiaWxhbmcgY29uZmZpbGUiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjM2NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgbWlzc2luZyBwYWNrYWdlIG5hbWUsIG9yIGdhcmJhZ2Ugd2hlcmUgcGFja2FnZSBuYW1lIGV4cGVjdGVkIgorbXNnc3RyICIiCisic2FrbGF3IG5hIGAlcycsIHdhbGFuZyBwYW5nYWxhbiBuZyBwYWtldGUsIG8gYmFzdXJhIGt1bmcgc2FhbiBpbmFhc2FoYW4gYW5nICIKKyJwYW5nYWxhbiBuZyBwYWtldGUiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjM3MAorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGZpZWxkLCBpbnZhbGlkIHBhY2thZ2UgbmFtZSBgJS4yNTVzJzogJXMiCittc2dzdHIgInNha2xhdyBuYSBgJXMnLCBpbWJhbGlkbyBuYSBwYW5nYWxhbiBuZyBwYWtldGUgYCUuMjU1cyc6ICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgYmFkIHZlcnNpb24gcmVsYXRpb25zaGlwICVjJWMiCittc2dzdHIgIiIKKyJzYWtsYXcgbmEgYCVzJywgdHVtdXR1a295IHNhIGAlLjI1NXMnOlxuIgorIiBtYXNhbWFuZyB1Z25heWFuZyBiZXJzeW9uICVjJWMgIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgYCVjJyBpcyBvYnNvbGV0ZSwgdXNlIGAlYz0nIG9yIGAlYyVjJyBpbnN0ZWFkIgorbXNnc3RyICIiCisic2FrbGF3IG5hIGAlcycsIHR1bXV0dWtveSBzYSBgJS4yNTVzJzpcbiIKKyIgYCVjJyBheSBsYW9zIG5hLCBnYW1pdGluIGAlYz0nIG8gYCVjJWMnIHNhIGhhbGlwIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgaW1wbGljaXQgZXhhY3QgbWF0Y2ggb24gdmVyc2lvbiBudW1iZXIsIHN1Z2dlc3QgdXNpbmcgYD0nIGluc3RlYWQiCittc2dzdHIgIiIKKyJzYWtsYXcgbmEgYCVzJywgdHVtdXR1a295IHNhIGAlLjI1NXMnOlxuIgorIiBuYWdwYXBhaGl3YXRpZyBuZyB0aXlhayBuYSBwYWdwYXJlcyBzYSBiaWxhbmcgbmcgYmVyc3lvbiwgbXVuZ2thaGluZyAiCisiZ2FtaXRpblxuIgorIiBhbmcgYD0nIHNhIGhhbGlwIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MzAKK21zZ2lkICJPbmx5IGV4YWN0IHZlcnNpb25zIG1heSBiZSB1c2VkIGZvciBQcm92aWRlcyIKK21zZ3N0ciAiTWFhcmluZyBnYW1pdGluIGxhbWFuZyBhbmcgZXhhY3RvbmcgYmVyc3lvbiBwYXJhIHNhIFByb3ZpZGVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgdmVyc2lvbiB2YWx1ZSBzdGFydHMgd2l0aCBub24tYWxwaGFudW1lcmljLCBzdWdnZXN0IGFkZGluZyBhIHNwYWNlIgorbXNnc3RyICIiCisic2FrbGF3IG5hIGAlcycsIHR1bXV0dWtveSBzYSBgJS4yNTVzJzpcbiIKKyIgaGFsYWdhIG5nIGJlcnN5b24gYXkgbmFnLXVtcGlzYSBuYSBkaS1hbHBoYW51bWVyaWMsIG11bmdrYWhpbmcgZGFnZGFnYW4gbmdcbiIKKyIgcHV3YW5nIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NTEgbGliL2Rwa2cvZmllbGRzLmM6NDU1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6IHZlcnNpb24gY29udGFpbnMgYCVjJyIKK21zZ3N0ciAic2FrbGF3IG5hIGAlcycsIHR1bXV0dWtveSBzYSBgJS4yNTVzJzogbmFnbGFsYW1hbiBhbmcgYmVyc3lvbiBuZyBgKCciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ1OQorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6IHZlcnNpb24gdW50ZXJtaW5hdGVkIgorbXNnc3RyICJzYWtsYXcgbmEgYCVzJywgdHVtdXR1a295IHNhIGAlLjI1NXMnOiBoaW5kaSBuYWd3YWthcyBhbmcgYmVyc3lvbiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDY1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6IGVycm9yIGluIHZlcnNpb246ICUuMjU1cyIKK21zZ2lkICInJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gJyUuMjU1cyc6IGVycm9yIGluIHZlcnNpb24iCittc2dzdHIgInNha2xhdyBuYSBgJXMnLCB0dW11dHVrb3kgc2EgYCUuMjU1cyc6IGVycm9yIHNhIGJlcnN5b246ICUuMjU1cyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDc1CisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgZmllbGQsIHN5bnRheCBlcnJvciBhZnRlciByZWZlcmVuY2UgdG8gcGFja2FnZSBgJS4yNTVzJyIKK21zZ3N0ciAic2FrbGF3IG5hIGAlcycsIHN5bnRheCBlcnJvciBtYXRhcG9zIHR1bXVrb3kgc2EgcGFrZXRlbmcgYCUuMjU1cyciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ4MgorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZXMgKGB8Jykgbm90IGFsbG93ZWQgaW4gJXMgZmllbGQiCittc2dzdHIgImRpIHBpbmFwYXlhZ2FuIGFuZyBtZ2EgaGFsaWxpIChgfCcpIHNhIHNha2xhdyBuYSAlcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTM2CisjLCBmdXp6eQorbXNnaWQgInZhbHVlIGZvciBgdHJpZ2dlcnMtcGVuZGluZycgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICIiCisiaGFsYWdhIG5nIHNha2xhdyBuYSBgY29uZmlnLXZlcnNpb24nIGF5IGhpbmRpIHBpbmFwYXlhZ2FuIHNhIGNvbnRleHQgbmEgaXRvIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NDMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImlsbGVnYWwgcGVuZGluZyB0cmlnZ2VyIG5hbWUgYCUuMjU1cyc6ICVzIgorbXNnc3RyICJzYWtsYXcgbmEgYCVzJywgaW1iYWxpZG8gbmEgcGFuZ2FsYW4gbmcgcGFrZXRlIGAlLjI1NXMnOiAlcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTQ3CisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBwZW5kaW5nIHRyaWdnZXIgYCUuMjU1cyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTYxCisjLCBmdXp6eQorbXNnaWQgInZhbHVlIGZvciBgdHJpZ2dlcnMtYXdhaXRlZCcgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICJoYWxhZ2Egbmcgc2FrbGF3IG5nIGBzdGF0dXMnIGF5IGhpbmRpIHBpbmFwYXlhZ2FuIHNhIGNvbnRleHQgbmEgaXRvIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NjgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImlsbGVnYWwgcGFja2FnZSBuYW1lIGluIGF3YWl0ZWQgdHJpZ2dlciBgJS4yNTVzJzogJXMiCittc2dzdHIgImJhd2FsIG5hIHBhbmdhbGFuIG5nIHBha2V0ZSBzYSBsaW55YSAlZDogJS4yNTBzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NzQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBhd2FpdGVkIHRyaWdnZXIgcGFja2FnZSBgJS4yNTVzJyIKK21zZ3N0ciAibGlzdGFoYW4gbmcgdGFsYWtzYW4gcGFyYSBzYSBwYWtldGUgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzo1MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgc291cmNlIGZpbGUgJyUuMjUwcyciCittc2dzdHIgImhpbmRpIG1hYnVrc2FuIGFuZyBwaW5hZ211bGFuIG5hIHRhbGFrc2FuZyBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZmlsZS5jOjU1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hhbmdlIG93bmVyc2hpcCBvZiB0YXJnZXQgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAiaGluZGkgbWFwYWxpdGFuIGFuZyBwYWdtYW1heWFyaSBuZyBiYWdvbmcgZGlzdCBjb25mZmlsZSBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZmlsZS5jOjU5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IG1vZGUgb2YgdGFyZ2V0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgImhpbmRpIG1hdGFrZGEgYW5nIG1vZG8gbmcgYmFnb25nIGRpc3QgY29uZmZpbGUgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzo4NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHVubG9jayAlcyIKK21zZ3N0ciAiaGluZGkgbWEtZXhlY3V0ZSBhbmcgJXMiCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzoxMTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGVjayBmaWxlICclcycgbG9jayBzdGF0dXMiCittc2dzdHIgImhpbmRpIG1hYnVrc2FuIGFuZyBwaW5hZ211bGFuIG5hIHRhbGFrc2FuZyBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZmlsZS5jOjE0NgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic3RhdHVzIGRhdGFiYXNlIGFyZWEgaXMgbG9ja2VkIGJ5IGFub3RoZXIgcHJvY2VzcyIKK21zZ2lkICIlcyBpcyBsb2NrZWQgYnkgYW5vdGhlciBwcm9jZXNzIgorbXNnc3RyICJuYWthYWxkYWJhIG5hIGFuZyBzdGF0dXMgZGF0YWJhc2UgYXJlYSBuZyBpYmFuZyBwcm9zZXNvIgorCisjOiBsaWIvZHBrZy9maWxlLmM6MTQ4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gbG9jayAlcyIKK21zZ3N0ciAiaGluZGkgbWEtZXhlY3V0ZSBhbmcgJXMiCisKKyM6IGxpYi9kcGtnL2xvZy5jOjUzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkbid0IG9wZW4gbG9nIGAlcyc6ICVzXG4iCittc2dzdHIgImhpbmRpIG1hYnVrc2FuIGFuZyB0YWxhYW5gJXMnOiAlc1xuIgorCisjOiBsaWIvZHBrZy9sb2cuYzo4NQorbXNnaWQgIjxwYWNrYWdlIHN0YXR1cyBhbmQgcHJvZ3Jlc3MgZmlsZSBkZXNjcmlwdG9yPiIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9sb2cuYzoxMTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSB0byBzdGF0dXMgZmQgJWQiCittc2dzdHIgImhpbmRpIG1ha2FwYWdzdWxhdCBuZyBrYWxhZ2F5YW5nIGluYXBkZXl0IG5nIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy9tbGliLmM6NDQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAibWFsbG9jIGZhaWxlZCAoJXp1IGJ5dGVzKSIKK21zZ3N0ciAiYmlnbyBhbmcgcmVhbGxvYyAoJWxkIG5hIGJ5dGUpIgorCisjOiBsaWIvZHBrZy9tbGliLmM6NTgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInJlYWxsb2MgZmFpbGVkICglenUgYnl0ZXMpIgorbXNnc3RyICJiaWdvIGFuZyByZWFsbG9jICglbGQgbmEgYnl0ZSkiCisKKyM6IGxpYi9kcGtnL21saWIuYzo3MiBsaWIvZHBrZy9tbGliLmM6OTAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI3NworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjMzNCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTEwNworIywgZnV6enkKK21zZ2lkICJmYWlsZWQgdG8gYWxsb2NhdGUgbWVtb3J5IgorbXNnc3RyICJiaWdvIG5hIGxpa2hhaW4gYW5nIGRpcmVjdG9yeSIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZHVwIGZvciBzdGQlcyIKK21zZ3N0ciAiYmlnbyBhbmcgcGFnLWR1cCBwYXJhIHNhIHN0ZCVzIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTAzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBkdXAgZm9yIGZkICVkIgorbXNnc3RyICJiaWdvIGFuZyBwYWctZHVwIHBhcmEgc2EgZmQgJWQiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMDkKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHBpcGUiCittc2dzdHIgImJpZ28gc2EgcGFnbGlraGEgbmcgcGlwZSIKKworIzogbGliL2Rwa2cvbWxpYi5jOjExNworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igd3JpdGluZyB0byAnJXMnIgorbXNnc3RyICJlcnJvciBzYSBwYWdzdWxhdCBuZyBgJXMnIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIGZpbGVkZXNjcmlwdG9yIGZsYWdzIGZvciAlLjI1MHMiCittc2dzdHIgImhpbmRpIG1hYmFzYSBhbmcgZmlsZWRlc2NyaXB0b3IgZmxhZ3MgcGFyYSBzYSAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMjYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNldCBjbG9zZS1vbi1leGVjIGZsYWcgZm9yICUuMjUwcyIKK21zZ3N0ciAiaGluZGkgbWF0YWtkYSBhbmcgY2xvc2Utb24tZXhlYyBmbGFnIHBhcmEgc2EgJS4yNTBzIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6NjMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImNvbmZpZ3VyYXRpb24gZXJyb3I6ICVzOiVkOiAlcyIKK21zZ3N0ciAiZXJyb3Igc2EgcGFna2FheW9zOiBrYWlsYW5nYW4gbmcgaGFsYWdhIGFuZyAlcyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjc1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiBjb25maWd1cmF0aW9uIGZpbGUgJyUuMjU1cycgZm9yIHJlYWRpbmc6ICVzIgorbXNnc3RyICJiaWdvIHNhIHBhZ2J1a2FzIG5nIHRhbGFrc2FuZyBwYWdrYWF5b3MgYCUuMjU1cycgcGFyYSBzYSBwYWdiYXNhIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYmFsYW5jZWQgcXVvdGVzIGluICclcyciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjExNworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gJyVzJyIKK21zZ3N0ciAiZGkga2lsYWxhbmcgb3BzeW9uIC0tJXMiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiclcycgbmVlZHMgYSB2YWx1ZSIKK21zZ3N0ciAiLS0lcyBvcHN5b24gYXkgdHVtYXRhbmdnYXAgbmcgaGFsYWdhIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTI3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICInJXMnIGRvZXMgbm90IHRha2UgYSB2YWx1ZSIKK21zZ3N0ciAiLS0lcyBvcHN5b24gYXkgaGluZGkgdHVtYXRhbmdnYXAgbmcgaGFsYWdhIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTMzCisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWQgZXJyb3IgaW4gY29uZmlndXJhdGlvbiBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICJlcnJvciBzYSBwYWdiYXNhIG5nIHRhbGFrc2FuZyBwYWdrYWF5b3MgYCUuMjU1cyciCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyBjb25maWd1cmF0aW9uIGZpbGUgYCUuMjU1cyciCittc2dzdHIgImVycm9yIHNhIHBhZ3NhcmEgbmcgdGFsYWtzYW5nIHBhZ2thYXlvcyBgJS4yNTVzJyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjE3MAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igb3BlbmluZyBjb25maWd1cmF0aW9uIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICJlcnJvciBzYSBwYWdzYXJhIG5nIHRhbGFrc2FuZyBwYWdrYWF5b3MgYCUuMjU1cyciCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gLS0lcyIKK21zZ3N0ciAiZGkga2lsYWxhbmcgb3BzeW9uIC0tJXMiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBvcHRpb24gdGFrZXMgYSB2YWx1ZSIKK21zZ3N0ciAiLS0lcyBvcHN5b24gYXkgdHVtYXRhbmdnYXAgbmcgaGFsYWdhIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjM3CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgb3B0aW9uIGRvZXMgbm90IHRha2UgYSB2YWx1ZSIKK21zZ3N0ciAiLS0lcyBvcHN5b24gYXkgaGluZGkgdHVtYXRhbmdnYXAgbmcgaGFsYWdhIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gb3B0aW9uIC0lYyIKK21zZ3N0ciAiZGkga2lsYWxhbmcgb3BzeW9uIC0lYyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI1MAorIywgYy1mb3JtYXQKK21zZ2lkICItJWMgb3B0aW9uIHRha2VzIGEgdmFsdWUiCittc2dzdHIgIi0lYyBvcHN5b24gYXkgdHVtYXRhbmdnYXAgbmcgaGFsYWdhIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjU4CisjLCBjLWZvcm1hdAorbXNnaWQgIi0lYyBvcHRpb24gZG9lcyBub3QgdGFrZSBhIHZhbHVlIgorbXNnc3RyICItJWMgb3BzeW9uIGF5IGhpbmRpIHR1bWF0YW5nZ2FwIG5nIGhhbGFnYSIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI3MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAib2Jzb2xldGUgb3B0aW9uICctLSVzJ1xuIgorbXNnc3RyICJCYWJhbGE6IGxhb3MgbmEgb3BzeW9uIGAtLSVzJ1xuIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6Mjg3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJjb25mbGljdGluZyBhY3Rpb25zIC0lYyAoLS0lcykgYW5kIC0lYyAoLS0lcykiCittc2dzdHIgIm1hZ2thdHVuZ2dhbGluZyBnYWdhd2luIC0tJXMgYXQgLS0lcyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHZhbHVlIGZvciBgJXMnIGZpZWxkIgorbXNnc3RyICJuYWRvYmxlbmcgaGFsYWdhIHBhcmEgc2Egc2FrbGF3IG5hIGAlcyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MTQ2CisjLCBjLWZvcm1hdAorbXNnaWQgInVzZXItZGVmaW5lZCBmaWVsZCBuYW1lIGAlLipzJyB0b28gc2hvcnQiCittc2dzdHIgInBpbmFwYW5nYWxhbmFuIG5nIGd1bWFnYW1pdCBuYSBzYWtsYXcgYCUuKnMnIGF5IGxhYmlzIG5hIG1haWtzaSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoxNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHZhbHVlIGZvciB1c2VyLWRlZmluZWQgZmllbGQgYCUuKnMnIgorbXNnc3RyICJkaW5vYmxlbmcgaGFsYWdhIHBhcmEgc2EgcGluYXBhbmdhbGFuYW4gbmcgZ3VtYWdhbWl0IG5hIHNha2xhdyBgJS4qcyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjA3Cittc2dpZCAiQ29uZmlndXJlZC1WZXJzaW9uIGZvciBwYWNrYWdlIHdpdGggaW5hcHByb3ByaWF0ZSBTdGF0dXMiCittc2dzdHIgIkNvbmZpZ3VyZWQtVmVyc2lvbiBwYXJhIHNhIHBha2V0ZSBuYSBtYXkgaGluZGkgYWttYW5nIFN0YXR1cyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzICVzIGJ1dCB0cmlnZ2VycyBhcmUgYXdhaXRlZCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjIyMgorbXNnaWQgInBhY2thZ2UgaGFzIHN0YXR1cyB0cmlnZ2Vycy1hd2FpdGVkIGJ1dCBubyB0cmlnZ2VycyBhd2FpdGVkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjI4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgaGFzIHN0YXR1cyAlcyBidXQgdHJpZ2dlcnMgYXJlIHBlbmRpbmciCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMzIKK21zZ2lkICJwYWNrYWdlIGhhcyBzdGF0dXMgdHJpZ2dlcnMtcGVuZGluZyBidXQgbm8gdHJpZ2dlcnMgcGVuZGluZyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjI0MgorbXNnaWQgIlBhY2thZ2Ugd2hpY2ggaW4gc3RhdGUgbm90LWluc3RhbGxlZCBoYXMgY29uZmZpbGVzLCBmb3JnZXR0aW5nIHRoZW0iCittc2dzdHIgIiIKKyJQYWtldGUgbmEgbmFzYSBrYWxhZ2F5YW5nIGhpbmRpLW5ha2FsdWtsb2sgYXkgbWF5IGNvbmZmaWxlcywga2luYWxpbGltdXRhbiAiCisic2lsYSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozMzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gcGFja2FnZSBpbmZvIGZpbGUgYCUuMjU1cycgZm9yIHJlYWRpbmciCittc2dzdHIgImJpZ28gc2EgcGFnYnVrYXMgbmcgdGFsYWtzYW5nIGluZm8gbmcgcGFrZXRlIGAlLjI1NXMnIHBhcmEgc2EgcGFnYmFzYSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozNDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2FuJ3Qgc3RhdCBwYWNrYWdlIGluZm8gZmlsZSBgJS4yNTVzJyIKK21zZ3N0ciAiaGluZGkgbWEtc3RhdCBhbmcgdGFsYWtzYW5nIGluZm8gbmcgcGFrZXRlIGAlLjI1NXMnIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjM0NworIywgYy1mb3JtYXQKK21zZ2lkICJjYW4ndCBtbWFwIHBhY2thZ2UgaW5mbyBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICJoaW5kaSBtYS1tbWFwIGFuZyB0YWxha3NhbmcgaW5mbyBuZyBwYWtldGUgYCUuMjU1cyciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzUyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW4ndCBzdGF0IHBhY2thZ2UgaW5mbyBmaWxlIGAlLjI1NXMnIgorbXNnaWQgInJlYWRpbmcgcGFja2FnZSBpbmZvIGZpbGUgJyUuMjU1cyciCittc2dzdHIgImhpbmRpIG1hLXN0YXQgYW5nIHRhbGFrc2FuZyBpbmZvIG5nIHBha2V0ZSBgJS4yNTVzJyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNsb3NlIGFmdGVyIHJlYWQ6IGAlLjI1NXMnIgorbXNnc3RyICJiaWdvIHNhIHBhZ3NhcmEgbWF0YXBvcyBuZyBwYWdiYXNhOiBgJS4yNTVzJyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiRU9GIGFmdGVyIGZpZWxkIG5hbWUgYCUuKnMnIgorbXNnc3RyICJFT0YgbWF0YXBvcyBuZyBwYW5nYWxhbiBuZyBzYWtsYXcgYCUuKnMnIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQwNworIywgYy1mb3JtYXQKK21zZ2lkICJuZXdsaW5lIGluIGZpZWxkIG5hbWUgYCUuKnMnIgorbXNnc3RyICJuZXdsaW5lIHNhIGxvb2IgbmcgcGFuZ2FsYW4gbmcgc2FrbGF3IGAlLipzJyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiTVNET1MgRU9GICheWikgaW4gZmllbGQgbmFtZSBgJS4qcyciCittc2dzdHIgIk1TRE9TIEVPRiAoXlopIHNhIGxvb2IgbmcgcGFuZ2FsYW4gbmcgc2FrbGF3IGAlLipzJyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmllbGQgbmFtZSBgJS4qcycgbXVzdCBiZSBmb2xsb3dlZCBieSBjb2xvbiIKK21zZ3N0ciAicGFuZ2FsYW4gbmcgc2FrbGF3IGAlLipzJyBheSBkYXBhdCBzdW5kYW4gbmcga29sb24iCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDI1CisjLCBjLWZvcm1hdAorbXNnaWQgIkVPRiBiZWZvcmUgdmFsdWUgb2YgZmllbGQgYCUuKnMnIChtaXNzaW5nIGZpbmFsIG5ld2xpbmUpIgorbXNnc3RyICJFT0YgbmF1bmEgc2EgaGFsYWdhIG5nIHNha2xhdyBgJS4qcycgKGt1bGFuZyBuZyBrYWh1bGloYW5nIG5ld2xpbmUpIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQyOQorIywgYy1mb3JtYXQKK21zZ2lkICJNU0RPUyBFT0YgY2hhciBpbiB2YWx1ZSBvZiBmaWVsZCBgJS4qcycgKG1pc3NpbmcgbmV3bGluZT8pIgorbXNnc3RyICJNU0RPUyBFT0YgY2hhciBzYSBoYWxhZ2Egbmcgc2FrbGF3IGAlLipzJyAoa3VsYW5nIG5hIG5ld2xpbmU/KSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0NDAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIm5ld2xpbmUgaW4gZmllbGQgbmFtZSBgJS4qcyciCittc2dpZCAiYmxhbmsgbGluZSBpbiB2YWx1ZSBvZiBmaWVsZCAnJS4qcyciCittc2dzdHIgIm5ld2xpbmUgc2EgbG9vYiBuZyBwYW5nYWxhbiBuZyBzYWtsYXcgYCUuKnMnIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQ2MQorIywgYy1mb3JtYXQKK21zZ2lkICJFT0YgZHVyaW5nIHZhbHVlIG9mIGZpZWxkIGAlLipzJyAobWlzc2luZyBmaW5hbCBuZXdsaW5lKSIKK21zZ3N0ciAiRU9GIHNhIGhhbGFnYSBuZyBzYWtsYXcgYCUuKnMnIChrdWxhbmcgbmEga2FodWxpaGFuZyBuZXdsaW5lKSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo1NDYKK21zZ2lkICJzZXZlcmFsIHBhY2thZ2UgaW5mbyBlbnRyaWVzIGZvdW5kLCBvbmx5IG9uZSBhbGxvd2VkIgorbXNnc3RyICIiCisibWF5IGlsYW5nIHBpbmFzb2sgbmEgaW5mbyB0dW5na29sIHNhIHBha2V0ZSBuYSBuYWhhbmFwLCBpaXNhIGxhbWFuZyBkYXBhdCIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo1NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gcGFja2FnZSBpbmZvcm1hdGlvbiBpbiBgJS4yNTVzJyIKK21zZ3N0ciAid2FsYW5nIGltcG9ybWFzeW9uZyBwYWtldGUgc2EgbG9vYiBuZyBgJS4yNTVzJyIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6NDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJwYXJzaW5nIGZpbGUgJyUuMjU1cycgbmVhciBsaW5lICVkIHBhY2thZ2UgJyUuMjU1cyc6XG4iCisiICUuMjU1cyIKK21zZ3N0ciAiJXMsIHNhIHRhbGFrc2FuZyBgJS4yNTVzJyBtYWxhcGl0IHNhIGxpbnlhICVkIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzo0OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorInBhcnNpbmcgZmlsZSAnJS4yNTVzJyBuZWFyIGxpbmUgJWQ6XG4iCisiICUuMjU1cyIKK21zZ3N0ciAiJXMsIHNhIHRhbGFrc2FuZyBgJS4yNTVzJyBtYWxhcGl0IHNhIGxpbnlhICVkIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoxMjUKK21zZ2lkICJtYXkgbm90IGJlIGVtcHR5IHN0cmluZyIKK21zZ3N0ciAiaGluZGkgbWFhYXJpbmcgd2FsYW5nIGxhbWFuIG5hIHN0cmluZyIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MTI3CisjLCBmdXp6eQorI3wgbXNnaWQgIm11c3Qgc3RhcnQgd2l0aCBhbiBhbHBoYW51bWVyaWMiCittc2dpZCAibXVzdCBzdGFydCB3aXRoIGFuIGFscGhhbnVtZXJpYyBjaGFyYWN0ZXIiCittc2dzdHIgImthaWxhbmdhbmcgbWFnLXVtcGlzYSBzYSBhbHBoYW51bWVyaWMiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjEzNgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiY2hhcmFjdGVyIGAlYycgbm90IGFsbG93ZWQgKG9ubHkgbGV0dGVycywgZGlnaXRzIGFuZCBjaGFyYWN0ZXJzIGAlcycpIgorbXNnc3RyICJkaSB0YW5nZ2FwIGFuZyBrYXJha3RlciBgJWMnIC0gbWdhIHRpdGlrLCBudW1lcm8gYXQgJXMgYW5nIHRhbmdnYXAiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjE3OAorIywgZnV6enkKKyN8IG1zZ2lkICI8bm9uZT4iCittc2djdHh0ICJ2ZXJzaW9uIgorbXNnaWQgIjxub25lPiIKK21zZ3N0ciAiPHdhbGE+IgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyMDkKK21zZ2lkICJ2ZXJzaW9uIHN0cmluZyBpcyBlbXB0eSIKK21zZ3N0ciAid2FsYW5nIGxhbWFuIGFuZyBzdHJpbmcgbmEgYmVyc3lvbiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjI0Cittc2dpZCAidmVyc2lvbiBzdHJpbmcgaGFzIGVtYmVkZGVkIHNwYWNlcyIKK21zZ3N0ciAibmFnbGFsYW1hbiBuZyBtZ2EgcHV3YW5nIGFuZyBzdHJpbmcgbmEgYmVyc3lvbiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjMwCittc2dpZCAiZXBvY2ggaW4gdmVyc2lvbiBpcyBub3QgbnVtYmVyIgorbXNnc3RyICJlcG9jaCBzYSBiZXJzeW9uIGF5IGhpbmRpIG51bWVybyIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjMyCittc2dpZCAibm90aGluZyBhZnRlciBjb2xvbiBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAid2FsYW5nIHN1bXVub2Qgc2Ega29sb24gc2EgYmlsYW5nIG5nIGJlcnN5b24iCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjI0NworbXNnaWQgInZlcnNpb24gbnVtYmVyIGRvZXMgbm90IHN0YXJ0IHdpdGggZGlnaXQiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjUwCisjLCBmdXp6eQorI3wgbXNnaWQgIm5vdGhpbmcgYWZ0ZXIgY29sb24gaW4gdmVyc2lvbiBudW1iZXIiCittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgaW4gdmVyc2lvbiBudW1iZXIiCittc2dzdHIgIndhbGFuZyBzdW11bm9kIHNhIGtvbG9uIHNhIGJpbGFuZyBuZyBiZXJzeW9uIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyNTQKKyMsIGZ1enp5CisjfCBtc2dpZCAibm90aGluZyBhZnRlciBjb2xvbiBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ2lkICJpbnZhbGlkIGNoYXJhY3RlciBpbiByZXZpc2lvbiBudW1iZXIiCittc2dzdHIgIndhbGFuZyBzdW11bm9kIHNhIGtvbG9uIHNhIGJpbGFuZyBuZyBiZXJzeW9uIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyOTkgbGliL2Rwa2cvcGFyc2VoZWxwLmM6MzExCisjLCBjLWZvcm1hdAorbXNnaWQgIm1pc3NpbmcgJXMiCittc2dzdHIgImt1bGFuZyBuYSAlcyIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MzAxIGxpYi9kcGtnL3BhcnNlaGVscC5jOjMxNAorIywgYy1mb3JtYXQKK21zZ2lkICJlbXB0eSB2YWx1ZSBmb3IgJXMiCittc2dzdHIgIndhbGFuZyBoYWxhZ2EgcGFyYSBzYSAlcyIKKworIzogbGliL2Rwa2cvcGtnLWZvcm1hdC5jOjgwCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgY2hhcmFjdGVyIGAlYycgaW4gZmllbGQgd2lkdGhcbiIKK21zZ3N0ciAiZGkgdGFuZ2dhcCBuYSBrYXJha3RlciBgJWMnIHNhIGxhcGFkIG5nIHNha2xhd1xuIgorCisjOiBsaWIvZHBrZy9wa2ctZm9ybWF0LmM6MTcyCisjLCBjLWZvcm1hdAorbXNnaWQgIkNsb3NpbmcgYnJhY2UgbWlzc2luZyBpbiBmb3JtYXRcbiIKK21zZ3N0ciAiS3VsYW5nIGFuZyBwYW5zYXJhbmcgYnJhY2Ugc2EgYW55b1xuIgorCisjOiBsaWIvZHBrZy9wa2ctc2hvdy5jOjQwCittc2dpZCAiKG5vIGRlc2NyaXB0aW9uIGF2YWlsYWJsZSkiCittc2dzdHIgIih3YWxhbmcgcGFnbGFsYXJhd2FuKSIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjU1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaWdub3JlIHNpZ25hbCAlcyBiZWZvcmUgcnVubmluZyAlLjI1MHMiCittc2dzdHIgImhpbmRpIG1hYXJpbmcgaGluZGkgcGFuc2luaW4gYW5nIGh1ZHlhdCAlcyBiYWdvIHBhdGFrYnVoaW4gYW5nIHNrcmlwdG8iCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzo2OAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciB1bi1jYXRjaGluZyBzaWduYWwgJXM6ICVzXG4iCittc2dzdHIgImVycnJvIHNhIHBhZy11bi1jYXRjaCBuZyBodWR5YXQgJXM6ICVzXG4iCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzo3OAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyAoc3VicHJvY2Vzcyk6ICVzXG4iCittc2dzdHIgIiVzIChzdWJwcm9jZXNzKTogJXNcbiIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjg5IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo0NTQKK21zZ2lkICJmb3JrIGZhaWxlZCIKK21zZ3N0ciAiYmlnbyBhbmcgcGFnLWZvcmsiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMTkKKyMsIGMtZm9ybWF0Cittc2dpZCAic3VicHJvY2VzcyAlcyByZXR1cm5lZCBlcnJvciBleGl0IHN0YXR1cyAlZCIKK21zZ3N0ciAibmFnYmFsaWsgYW5nIHN1YnByb2Nlc3MgJXMgbmcgZXJyb3IgZXhpdCBzdGF0dXMgJWQiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMjgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInN1YnByb2Nlc3MgJXMgd2FzIGludGVycnVwdGVkIgorbXNnc3RyICJwYWdoaW50YXkgc2EgJXMgYXkgYmlnbyIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEzMAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic3VicHJvY2VzcyAlcyBraWxsZWQgYnkgc2lnbmFsICglcyklcyIKK21zZ2lkICJzdWJwcm9jZXNzICVzIHdhcyBraWxsZWQgYnkgc2lnbmFsICglcyklcyIKK21zZ3N0ciAic3VicHJvY2VzcyAlcyBheSBwaW5hdGF5IG5nIGh1ZHlhdCAoJXMpJXMiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMzIKK21zZ2lkICIsIGNvcmUgZHVtcGVkIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAic3VicHJvY2VzcyAlcyBmYWlsZWQgd2l0aCB3YWl0IHN0YXR1cyBjb2RlICVkIgorbXNnc3RyICJzdWJwcm9jZXNzICVzIGF5IGJpZ28gbmEgbWF5IHdhaXQgc3RhdHVzIGNvZGUgJWQiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxNTEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQ2MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAid2FpdCBmb3Igc3VicHJvY2VzcyAlcyBmYWlsZWQiCittc2dzdHIgInBhZ2hpbnRheSBzYSAlcyBheSBiaWdvIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDo3MgorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHBhY2thZ2UgbmFtZSBgJS4yNTBzJyBpbiB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjgxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ0cnVuY2F0ZWQgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAidGFsYWtzYW5nIHN0YXRvdmVycmlkZSBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yIGluIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcycgYXQgY2hhcmFjdGVyIGAlcyclcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxMzQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuL2NyZWF0ZSB0cmlnZ2VycyBsb2NrZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiaGluZGkgbWFidWtzYW4gYW5nIHBpbmFnbXVsYW4gbmEgdGFsYWtzYW5nIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNDEKKyMsIGZ1enp5Cittc2dpZCAidHJpZ2dlcnMgYXJlYSIKK21zZ3N0ciAiaGluZGkgbWEtZXhlY3V0ZSBhbmcgJXMiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjE1MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiaGluZGkgbWEtZnN0YXQgYW5nIHRhbGFrc2FuZyBiYWhhZ2kgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjE2NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiaGluZGkgbWFidWtzYW4gYW5nIHBpbmFnbXVsYW4gbmEgdGFsYWtzYW5nIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNzkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuL2NyZWF0ZSBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiaGluZGkgbWFidWtzYW4gYW5nIGJhZ29uZyB0YWxha3NhbmcgYm9kZWdhIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoyMTUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHJlYWRpbmcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiYmlnbyBzYSBwYWdiYXNhIG5nICVzIG11bGEgc2EgJS4yNTVzIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoyMjMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiaGluZGkgbWFidWtzYW4gYW5nIGJhZ29uZyB0YWxha3NhbmcgYm9kZWdhIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoyMjgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiaGluZGkgbWFidWtzYW4gYW5nIGJhZ29uZyB0YWxha3NhbmcgYm9kZWdhIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoyMzIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJoaW5kaSBtYWlsdWtsb2sgYW5nIGJhZ29uZyBiZXJzeW9uIG5nIGAlLjI1NXMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MjIyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpbnZhbGlkIG9yIHVua25vd24gc3ludGF4IGluIHRyaWdnZXIgbmFtZSBgJS4yNTBzJyAoaW4gdHJpZ2dlciBpbnRlcmVzdHMgZm9yICIKKyJwYWNrYWdlIGAlLjI1MHMnKSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MjYzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiB0cmlnZ2VyIGludGVyZXN0IGxpc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiaGluZGkgbWFidWtzYW4gYW5nIGJhZ29uZyB0YWxha3NhbmcgYm9kZWdhIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MjkyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmV3aW5kIHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiaGluZGkgbWFiYXNhIGFuZyB0YWxha3NhbmcgYmFoYWdpIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzA1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcycgc3ludGF4IGVycm9yOyBpbGxlZ2FsIHBhY2thZ2UgbmFtZSBgJS4yNTBzJzogIgorIiUuMjUwcyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzE4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiaGluZGkgbWEtZnN0YXQgYW5nIHRhbGFrc2FuZyBiYWhhZ2kgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlICclLjI1MHMnIgorbXNnc3RyICJoaW5kaSBtYS1mc3RhdCBhbmcgdGFsYWtzYW5nIGJhaGFnaSBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMyNAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAiaGluZGkgbWEtZnN0YXQgYW5nIHRhbGFrc2FuZyBiYWhhZ2kgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMzIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgImhpbmRpIG1haWx1a2xvayBhbmcgYmFnb25nIGJlcnN5b24gbmcgYCUuMjU1cyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozNDAgbGliL2Rwa2cvdHJpZ2xpYi5jOjM0MiBsaWIvZHBrZy90cmlnbGliLmM6NDcyCisjOiBzcmMvcmVtb3ZlLmM6Mjg2IHNyYy9yZW1vdmUuYzozNzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlbW92ZSBgJS4yNTBzJyIKK21zZ3N0ciAiaGluZGkgbWF0YW5nZ2FsIGFuZyBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjM2MAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJoaW5kaSBtYS1mc3RhdCBhbmcgdGFsYWtzYW5nIGJhaGFnaSBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjM4MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgImhpbmRpIG1hLWZzdGF0IGFuZyB0YWxha3NhbmcgYmFoYWdpIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDU2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiZHVwbGljYXRlIGZpbGUgdHJpZ2dlciBpbnRlcmVzdCBmb3IgZmlsZW5hbWUgYCUuMjUwcycgYW5kIHBhY2thZ2UgYCUuMjUwcyciCittc2dzdHIgImhpbmRpIG1haWx1a2xvayBhbmcgYmFnb25nIHRhbGFrc2FuZyBpbmZvIGAlLjI1MHMnIGJpbGFuZyBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ4MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJoaW5kaSBtYWJ1a3NhbiBhbmcgYmFnb25nIHRhbGFrc2FuZyBib2RlZ2EgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0OTMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJoaW5kaSBtYWJ1a3NhbiBhbmcgYmFnb25nIHRhbGFrc2FuZyBib2RlZ2EgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0OTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlICclLjI1MHMnIgorbXNnc3RyICJoaW5kaSBtYWJ1a3NhbiBhbmcgYmFnb25nIHRhbGFrc2FuZyBib2RlZ2EgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0OTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzeW5jIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgJyUuMjUwcyciCittc2dzdHIgImhpbmRpIG1hYnVrc2FuIGFuZyBiYWdvbmcgdGFsYWtzYW5nIGJvZGVnYSBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjUwMworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImhpbmRpIG1hYnVrc2FuIGFuZyBiYWdvbmcgdGFsYWtzYW5nIGJvZGVnYSBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjUwNworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSBhcyBgJS4yNTBzJyIKK21zZ3N0ciAiaGluZGkgbWFpbHVrbG9rIGFuZyBiYWdvbmcgdGFsYWtzYW5nIGluZm8gYCUuMjUwcycgYmlsYW5nIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTQyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImhpbmRpIG1hYmFzYSBhbmcgdGFsYWtzYW5nIGJhaGFnaSBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjU1MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yIGluIGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiZXJyb3Igc2EgcGFnYmFzYSBuZyB0YWxha3NhbmcgcGFna2FheW9zIGAlLjI1NXMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTYzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmaWxlIHRyaWdnZXJzIHJlY29yZCBtZW50aW9ucyBpbGxlZ2FsIHBhY2thZ2UgbmFtZSBgJS4yNTBzJyAoZm9yIGludGVyZXN0IGluICIKKyJmaWxlIGAlLjI1MHMnKTogJS4yNTBzIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo2NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInRyaWdnZXJzIGNpIGZpbGUgYCUuMjUwcycgY29udGFpbnMgaWxsZWdhbCB0cmlnZ2VyIHN5bnRheCBpbiB0cmlnZ2VyIG5hbWUgYCIKKyIlLjI1MHMnOiAlLjI1MHMiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjY4NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gdHJpZ2dlcnMgY2kgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiaGluZGkgbWFidWtzYW4gYW5nIHBpbmFnbXVsYW4gbmEgdGFsYWtzYW5nIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Njk5Cittc2dpZCAidHJpZ2dlcnMgY2kgZmlsZSBjb250YWlucyB1bmtub3duIGRpcmVjdGl2ZSBzeW50YXgiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjcxMgorIywgYy1mb3JtYXQKK21zZ2lkICJ0cmlnZ2VycyBjaSBmaWxlIGNvbnRhaW5zIHVua25vd24gZGlyZWN0aXZlIGAlLjI1MHMnIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo3NzYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdHJpZ2dlcnMgc3RhdGUgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICJoaW5kaSBtYWJhc2EgYW5nIGRpcmVjdG9yeSBuYSBib2RlZ2EgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo3NzkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgb3duZXJzaGlwIG9mIHRyaWdnZXJzIHN0YXRlIGRpcmVjdG9yeSBgJS4yNTBzJyIKK21zZ3N0ciAiaGluZGkgbWFiYXNhIGFuZyBkaXJlY3RvcnkgbmEgYm9kZWdhIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbmFtZS5jOjM0Cittc2dpZCAiZW1wdHkgdHJpZ2dlciBuYW1lcyBhcmUgbm90IHBlcm1pdHRlZCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy90cmlnbmFtZS5jOjM4Cittc2dpZCAidHJpZ2dlciBuYW1lIGNvbnRhaW5zIGludmFsaWQgY2hhcmFjdGVyIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3V0aWxzLmM6NTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInJlYWQgZXJyb3IgaW4gYCUuMjUwcyciCittc2dzdHIgImVycm9yIHNhIHBhZ2Jhc2Egc2EgJS4yNTBzIgorCisjOiBsaWIvZHBrZy91dGlscy5jOjYxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmZ2V0cyBnYXZlIGFuIGVtcHR5IHN0cmluZyBmcm9tIGAlLjI1MHMnIgorbXNnc3RyICJuYWdiaWdheSBuZyBibGFua29uZyBzdHJpbmcgYW5nIGZnZXRzIG11bGEgc2EgZGliZXJzeW9uIFtpXSIKKworIzogbGliL2Rwa2cvdXRpbHMuYzo2MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidG9vLWxvbmcgbGluZSBvciBtaXNzaW5nIG5ld2xpbmUgaW4gYCUuMjUwcyciCittc2dzdHIgInNpcmEgYW5nIHRhbGFrc2FuZyBgJS4yNTBzJyAtIG1heSBrdWxhbmcgbmEgbmV3bGluZSBtYXRhcG9zIGFuZyAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL3V0aWxzLmM6NzUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW9mIHJlYWRpbmcgYCUuMjUwcyciCittc2dzdHIgImRpIGluYWFzYWhhbmcgZHVsbyBuZyB0YWxha3NhbiBzYSAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL3ZhcmJ1Zi5jOjgyIGxpYi9kcGtnL3ZhcmJ1Zi5jOjg4Cittc2dpZCAiZXJyb3IgZm9ybWF0dGluZyBzdHJpbmcgaW50byB2YXJidWYgdmFyaWFibGUiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTc5IHNyYy9hcmNoaXZlcy5jOjIwMCBzcmMvYXJjaGl2ZXMuYzo3MjQKK21zZ2lkICJlcnJvciByZWFkaW5nIGZyb20gZHBrZy1kZWIgcGlwZSIKK21zZ3N0ciAiZXJyb3Igc2EgcGFnYmFzYSBtdWxhIHNhIGRwa2ctZGViIHBpcGUiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjE5NQorIywgYy1mb3JtYXQKK21zZ2lkICJza2lwcGVkIHVucGFja2luZyBmaWxlICclLjI1NXMnIChyZXBsYWNlZCBvciBleGNsdWRlZD8pIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjI0NiBzcmMvYXJjaGl2ZXMuYzoyNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igc2V0dGluZyB0aW1lc3RhbXBzIG9mIGAlLjI1NXMnIgorbXNnc3RyICJlcnJvciBzYSBwYWd0YWtkYSBuZyB0aW1lc3RhbXAgbmcgYCUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjI2MgorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIG93bmVyc2hpcCBvZiBzeW1saW5rIGAlLjI1NXMnIgorbXNnc3RyICJlcnJvciBzYSBwYWd0YWtkYSBuZyBwYWdtYW1heWFyaSBuZyBzeW1saW5rIGAlLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoyNjUgc3JjL2FyY2hpdmVzLmM6NzM0IHNyYy9zdGF0Y21kLmM6MTYzCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHNldHRpbmcgb3duZXJzaGlwIG9mIGAlLjI1NXMnIgorbXNnc3RyICJlcnJvciBzYSBwYWd0YWtkYSBuZyBwYWdtYW1heWFyaSBuZyBgJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6MjY3IHNyYy9hcmNoaXZlcy5jOjczNiBzcmMvc3RhdGNtZC5jOjE2NQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIHBlcm1pc3Npb25zIG9mIGAlLjI1NXMnIgorbXNnc3RyICJlcnJvciBzYSBwYWd0YWtkYSBuZyBwYWhpbnR1bG8gbmcgYCUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjM5NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHN0YXQgKGRlcmVmZXJlbmNlKSBleGlzdGluZyBzeW1saW5rIGAlLjI1MHMnIgorbXNnc3RyICJoaW5kaSBtYXRha2RhIGFuZyBwYWhpbnR1bG90IG5nIHBhZy1leGVjdXRlIHNhIGAlLjI1MHMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo0MTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImZhaWxlZCB0byBzdGF0IChkZXJlZmVyZW5jZSkgcHJvcG9zZWQgbmV3IHN5bWxpbmsgdGFyZ2V0IGAlLjI1MHMnIGZvciAiCisic3ltbGluayBgJS4yNTBzJyIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo0NzUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ0cnlpbmcgdG8gb3ZlcndyaXRlIGAlLjI1MHMnLCB3aGljaCBpcyB0aGUgZGl2ZXJ0ZWQgdmVyc2lvbiBvZiBgIgorIiUuMjUwcycgKHBhY2thZ2U6ICUuMTAwcykiCittc2dzdHIgIiIKKyJzaW51c3VidWthbmcgcGF0dW5nYW4gYW5nIGAlLjI1MHMnLCBuYSBzaXlhbmcgZGliZXJ0YWRvbmcgYmVyc3lvbiBuZyBgIgorIiUuMjUwcyclLjEwcyUuMTAwcyUuMTBzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo0ODEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInRyeWluZyB0byBvdmVyd3JpdGUgYCUuMjUwcycsIHdoaWNoIGlzIHRoZSBkaXZlcnRlZCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICIiCisic2ludXN1YnVrYW5nIHBhdHVuZ2FuIGFuZyBgJS4yNTBzJywgbmEgc2l5YW5nIGRpYmVydGFkb25nIGJlcnN5b24gbmcgYCIKKyIlLjI1MHMnJS4xMHMlLjEwMHMlLjEwcyIKKworIzogc3JjL2FyY2hpdmVzLmM6NTExCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGAlLjI1NXMnICh3aGljaCBJIHdhcyBhYm91dCB0byBpbnN0YWxsKSIKK21zZ3N0ciAiaGluZGkgbWEtc3RhdCBhbmcgYCUuMjU1cycgKG5hIHNpeWFuZyBpbHVsdWtsb2sgc2FuYSkiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjUxOQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidW5hYmxlIHRvIGNsZWFuIHVwIG1lc3Mgc3Vycm91bmRpbmcgYCUuMjU1cycgYmVmb3JlIGluc3RhbGxpbmcgYW5vdGhlciAiCisidmVyc2lvbiIKK21zZ3N0ciAiIgorImhpbmRpIG1hbGluaXMgYW5nIGthbGF0IHNhIHBhbGlnaWQgbmcgYCUuMjU1cycgYmFnbyBtYWdsdWtsb2sgbmcgaWJhbmcgIgorImJlcnN5b24iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjUyNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCByZXN0b3JlZCBgJS4yNTVzJyBiZWZvcmUgaW5zdGFsbGluZyBhbm90aGVyIHZlcnNpb24iCittc2dzdHIgImhpbmRpIG1hLXN0YXQgYW5nIGliaW5hbGlrIG5hIGAlLjI1NXMnIGJhZ28gbWFnbHVrbG9rIG5nIGliYW5nIGJlcnN5b24iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjU2MQorIywgYy1mb3JtYXQKK21zZ2lkICJhcmNoaXZlIGNvbnRhaW5lZCBvYmplY3QgYCUuMjU1cycgb2YgdW5rbm93biB0eXBlIDB4JXgiCittc2dzdHIgIm5hZ2xhbGFtYW4gYW5nIGFya2libyBuZyBiYWdheSBuYSBgJS4yNTVzJyBuZyBoaW5kaSBraWxhbGFuZyB1cmkgMHgleCIKKworIzogc3JjL2FyY2hpdmVzLmM6NjI2IHNyYy9kaXZlcnRjbWQuYzoxNTAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjY4MgorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMjIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyODQKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNDQxIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNjgwCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE2NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI0NAorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MjcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzdGF0IGZpbGUgJyVzJyIKK21zZ3N0ciAiaGluZGkgbWEtc3RhdCBhbmcgYCUuMjU1cycgKHNhIGAlLjI1NXMnKSIKKworIzogc3JjL2FyY2hpdmVzLmM6NjQxCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlcGxhY2luZyBmaWxlcyBpbiBvbGQgcGFja2FnZSAlcyAuLi5cbiIKK21zZ3N0ciAiUGluYXBhbGl0YW4gYW5nIHRhbGFrc2FuIHNhIGx1bWFuZyBwYWtldGVuZyAlcyAuLi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6NjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlcGxhY2VkIGJ5IGZpbGVzIGluIGluc3RhbGxlZCBwYWNrYWdlICVzIC4uLlxuIgorbXNnc3RyICJQaW5hbGl0YW4gbmcgbWdhIHRhbGFrc2FuIHNhIG5ha2FsdWtsb2sgbmEgcGFrZXRlbmcgJXMgLi4uXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjY1NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorInRyeWluZyB0byBvdmVyd3JpdGUgZGlyZWN0b3J5ICclLjI1MHMnIGluIHBhY2thZ2UgJS4yNTBzICUuMjUwcyB3aXRoICIKKyJub25kaXJlY3RvcnkiCittc2dzdHIgIiIKKyJzaW51c3VidWthbmcgcGF0dW5nYW4gYW5nIGRpcmVjdG9yeSBgJS4yNTBzJyBzYSBwYWtldGVuZyAlLjI1MHMgbmcgaGluZGkgIgorImRpcmVjdG9yeSIKKworIzogc3JjL2FyY2hpdmVzLmM6NjYxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ0cnlpbmcgdG8gb3ZlcndyaXRlICclLjI1MHMnLCB3aGljaCBpcyBhbHNvIGluIHBhY2thZ2UgJS4yNTBzICUuMjUwcyIKK21zZ3N0ciAic2ludXN1YnVrYW5nIHBhdHVuZ2FuIGFuZyBgJS4yNTBzJywgbmEgbmFzYSBwYWtldGVuZyAlLjI1MHMgZGluIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3MTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgYCUuMjU1cycgKHdoaWxlIHByb2Nlc3NpbmcgYCUuMjU1cycpIgorbXNnc3RyICJiaWdvIGFuZyBwYWdiYXNhIG5nIGAlLjI1NXMnIChzYSBgJS4yNTVzJykiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjcxOAorIywgYy1mb3JtYXQKK21zZ2lkICJiYWNrZW5kIGRwa2ctZGViIGR1cmluZyBgJS4yNTVzJyIKK21zZ3N0ciAiYmFrZW5kIGRwa2ctZGViIGhhYmFuZyBgJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6NzQ0IHNyYy9hcmNoaXZlcy5jOjkwOCBzcmMvYXJjaGl2ZXMuYzo5NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZy93cml0aW5nIGAlLjI1NXMnIgorbXNnc3RyICJlcnJvciBzYSBwYWdzYXJhL3BhZ3N1bGF0IGAlLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgcGlwZSBgJS4yNTVzJyIKK21zZ3N0ciAiZXJyb3Igc2EgcGFnbGlraGEgbmcgcGlwZSBgJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6NzUzIHNyYy9hcmNoaXZlcy5jOjc1OAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBkZXZpY2UgYCUuMjU1cyciCittc2dzdHIgImVycm9yIHNhIHBhZ2xpa2hhIG5nIGRldmljZSBgJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6NzcxCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIGhhcmQgbGluayBgJS4yNTVzJyIKK21zZ3N0ciAiZXJyb3Igc2EgcGFnbGlraGEgbmcgaGFyZCBsaW5rIGAlLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NzcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjUzOQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBzeW1ib2xpYyBsaW5rIGAlLjI1NXMnIgorbXNnc3RyICJlcnJvciBzYSBwYWdsaWtoYSBuZyBzeW1ib2xpYyBsaW5rIGAlLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgZGlyZWN0b3J5IGAlLjI1NXMnIgorbXNnc3RyICJlcnJvciBzYSBwYWdsaWtoYSBuZyBkaXJlY3RvcnkgYCUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjgyMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gbW92ZSBhc2lkZSBgJS4yNTVzJyB0byBpbnN0YWxsIG5ldyB2ZXJzaW9uIgorbXNnc3RyICJoaW5kaSBtYWxpcGF0IGFuZyBgJS4yNTVzJyB1cGFuZyBpbHVrbG9rIGFuZyBiYWdvbmcgYmVyc3lvbiIKKworIzogc3JjL2FyY2hpdmVzLmM6ODMyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzozMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgbGluayBgJS4yNTVzJyIKK21zZ3N0ciAiaGluZGkgbWFiYXNhIGFuZyBsaW5rIGAlLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4MzQgc3JjL2NvbmZpZ3VyZS5jOjQyMworIywgYy1mb3JtYXQKK21zZ2lkICJzeW1ib2xpYyBsaW5rICclLjI1MHMnIHNpemUgaGFzIGNoYW5nZWQgZnJvbSAlamQgdG8gJXpkIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjgzOQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gbWFrZSBiYWNrdXAgc3ltbGluayBmb3IgYCUuMjU1cyciCittc2dzdHIgImhpbmRpIG1ha2FnYXdhIG5nIGJhY2t1cCBzeW1saW5rIHBhcmEgc2EgYCUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjg0MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hvd24gYmFja3VwIHN5bWxpbmsgZm9yIGAlLjI1NXMnIgorbXNnc3RyICJoaW5kaSBtYS1jaG93biBhbmcgYmFja3VwIHN5bWxpbmsgcGFyYSBzYSBgJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6ODQ2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBtYWtlIGJhY2t1cCBsaW5rIG9mIGAlLjI1NXMnIGJlZm9yZSBpbnN0YWxsaW5nIG5ldyB2ZXJzaW9uIgorbXNnc3RyICIiCisiaGluZGkgbWFrYWdhd2EgbmcgYmFja3VwIGxpbmsgbmcgYCUuMjU1cycgYmFnbyBpbHVrbG9rIGFuZyBiYWdvbmcgYmVyc3lvbiIKKworIzogc3JjL2FyY2hpdmVzLmM6ODYzIHNyYy9hcmNoaXZlcy5jOjk1NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgdmVyc2lvbiBvZiBgJS4yNTVzJyIKK21zZ3N0ciAiaGluZGkgbWFpbHVrbG9rIGFuZyBiYWdvbmcgYmVyc3lvbiBuZyBgJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6OTAyIHNyYy9hcmNoaXZlcy5jOjk0NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gJyUuMjU1cyciCittc2dzdHIgImhpbmRpIG1hbGlraGEgYW5nIGAlLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo5NDcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzeW5jIGZpbGUgJyUuMjU1cyciCittc2dzdHIgImhpbmRpIG1hLXVuYnVmZmVyIGFuZyBgJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAwMAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorImlnbm9yaW5nIGRlcGVuZGVuY3kgcHJvYmxlbSB3aXRoICVzOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogYmFiYWxhIC0gaGluZGkgcGluYW5zaW4gYW5nIHByb2JsZW1hbmcgZGVwZW5kZW5zaXlhIHNhIHBhZ3RhbmdnYWwgbmcgIgorIiVzOlxuIgorIiVzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDA1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiY29uc2lkZXJpbmcgZGVjb25maWd1cmF0aW9uIG9mIGVzc2VudGlhbFxuIgorIiBwYWNrYWdlICVzLCB0byBlbmFibGUgJXMuIgorbXNnc3RyICIiCisiZHBrZzogYmFiYWxhIC0gaW5hYXl1bmFuIG5hIHRhbmdnYWxpbiBhbmcgcGFna2FheW9zIG5nIGthaWxhbmdhbmdcbiIKKyIgcGFrZXRlICVzLCB1cGFuZyBtYWFhcmluZyB0YW5nZ2FsaW4gYW5nICVzLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDA4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogbm8sICVzIGlzIGVzc2VudGlhbCwgd2lsbCBub3QgZGVjb25maWd1cmVcbiIKKyIgaXQgaW4gb3JkZXIgdG8gZW5hYmxlICVzLlxuIgorbXNnc3RyICIiCisiZHBrZzogaGluZGksICVzIGF5IGthaWxhbmdhbiwgaGluZGkgaXRvIHRhdGFuZ2dhbGFuIG5nIHBhZ2thYXlvc1xuIgorIiBuaXRvIHVwYW5nIG1hYWFyaW5nIHRhbmdnYWxpbiBhbmcgJXMuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMjIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBubywgY2Fubm90IHByb2NlZWQgd2l0aCAlcyAoLS1hdXRvLWRlY29uZmlndXJlIHdpbGwgaGVscCk6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiBoaW5kaSBtYWFhcmluZyB0YW5nZ2FsaW4gYW5nICVzIChtYWtha2F0dWxvbmcgYW5nICAtLWF1dG8tIgorImRlY29uZmlndXJlKTpcbiIKKyIgJXMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMzIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInJlbW92YWwgb2YgJS4yNTBzIgorbXNnc3RyICJlcnJvciBzYSBwYWdiYXNhIHNhICUuMjUwcyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA1NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiaW5zdGFsbGF0aW9uIG9mICUuMjUwcyIKK21zZ3N0ciAiaGluZGkgbWFpbHVrbG9rIGFuZyBiYWdvbmcgYmVyc3lvbiBuZyBgJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA1OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IGNvbnNpZGVyaW5nIGRlY29uZmlndXJhdGlvbiBvZiAlcywgd2hpY2ggd291bGQgYmUgYnJva2VuIGJ5ICVzIC4uLlxuIgorbXNnc3RyICJkcGtnOiBpbmFheXVuYW4gYW5nIHBhZ3RhbmdnYWwgbmcgJXMgcGFib3Igc2EgJXMgLi4uXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNjUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IHllcywgd2lsbCBkZWNvbmZpZ3VyZSAlcyAoYnJva2VuIGJ5ICVzKS5cbiIKK21zZ3N0ciAiZHBrZzogb28sIHRhdGFuZ2dhbGluIGFuZyAlcyBwYWJvciBzYSAlcy5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA2OSBzcmMvYXJjaGl2ZXMuYzoxMTg3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiByZWdhcmRpbmcgJXMgY29udGFpbmluZyAlczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6IHR1bmdrb2wgc2EgJXMgbmEgbmFnbGFsYW1hbiBuZyAlczpcbiIKKyIlcyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA3NworIywgZnV6enkKK21zZ2lkICJpZ25vcmluZyBicmVha2FnZSwgbWF5IHByb2NlZWQgYW55d2F5ISIKK21zZ3N0ciAiIgorImRwa2c6IGJhYmFsYSAtIGhpbmRpIHBpbmFwYW5zaW4gYW5nIHR1bmdnYWxpYW4sIG1hYWFyaW5nIG1hZ3BhdHVsb3kgcGEgIgorInJpbiAhXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImluc3RhbGxpbmcgJS4yNTBzIHdvdWxkIGJyZWFrICUuMjUwcywgYW5kXG4iCisiIGRlY29uZmlndXJhdGlvbiBpcyBub3QgcGVybWl0dGVkICgtLWF1dG8tZGVjb25maWd1cmUgbWlnaHQgaGVscCkiCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA4NgorIywgYy1mb3JtYXQKK21zZ2lkICJpbnN0YWxsaW5nICUuMjUwcyB3b3VsZCBicmVhayBleGlzdGluZyBzb2Z0d2FyZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTE2CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IGNvbnNpZGVyaW5nIHJlbW92aW5nICVzIGluIGZhdm91ciBvZiAlcyAuLi5cbiIKK21zZ3N0ciAiZHBrZzogaW5hYXl1bmFuIGFuZyBwYWd0YW5nZ2FsIG5nICVzIHBhYm9yIHNhICVzIC4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTIyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGlzIG5vdCBwcm9wZXJseSBpbnN0YWxsZWQgLSBpZ25vcmluZyBhbnkgZGVwZW5kZW5jaWVzIG9uIGl0LlxuIgorbXNnc3RyICIiCisiaGluZGkgbmFrYWx1a2xvayBuZyB0YW1hIGFuZyAlcyAtIGhpbmRpIHBpbmFwYW5zaW4gYW5nIG1nYSBkZXBlbmRlbnNpeWEgc2EgIgorImthbnlhLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTUxCisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IG1heSBoYXZlIHRyb3VibGUgcmVtb3ZpbmcgJXMsIGFzIGl0IHByb3ZpZGVzICVzIC4uLlxuIgorbXNnc3RyICIiCisiZHBrZzogbWFhYXJpbmcgbWFna2Fwcm9ibGVtYSBzYSBwYWd0YW5nZ2FsIG5nICVzLCBkYWhpbCBuYWdiaWJpZ2F5IGl0byBuZyAiCisiJXMgLi4uXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExNjYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBwYWNrYWdlICVzIHJlcXVpcmVzIHJlaW5zdGFsbGF0aW9uLCBidXQgd2lsbCByZW1vdmUgYW55d2F5IGFzIHlvdSAiCisicmVxdWVzdGVkLlxuIgorbXNnc3RyICIiCisiZHBrZzoga2luYWthaWxhbmdhbiBpbHVrbG9rIG11bGkgYW5nIHBha2V0ZW5nICVzLCBuZ3VuaXQgdGF0YW5nZ2FsaW4gbmEgcmluICIKKyJpdG8gZ2F5YSBuZyBoaWxpbmcgbml5by5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE2OQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiBwYWNrYWdlICVzIHJlcXVpcmVzIHJlaW5zdGFsbGF0aW9uLCB3aWxsIG5vdCByZW1vdmUuXG4iCittc2dzdHIgImRwa2c6IGtpbmFrYWlsYW5nYW4gaWx1a2xvayBtdWxpIGFuZyBwYWtldGVuZyAlcywgaGluZGkgdGF0YW5nZ2FsaW4uXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogeWVzLCB3aWxsIHJlbW92ZSAlcyBpbiBmYXZvdXIgb2YgJXMuXG4iCittc2dzdHIgImRwa2c6IG9vLCB0YXRhbmdnYWxpbiBhbmcgJXMgcGFib3Igc2EgJXMuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmxpY3RpbmcgcGFja2FnZXMgLSBub3QgaW5zdGFsbGluZyAlLjI1MHMiCittc2dzdHIgIm1hZ2thdHVuZ2dhbGluZyBtZ2EgcGFrZXRlIC0gaGluZGkgaWx1bHVrbG9rICUuMjUwcyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE5MQorIywgZnV6enkKK21zZ2lkICJpZ25vcmluZyBjb25mbGljdCwgbWF5IHByb2NlZWQgYW55d2F5ISIKK21zZ3N0ciAiIgorImRwa2c6IGJhYmFsYSAtIGhpbmRpIHBpbmFwYW5zaW4gYW5nIHR1bmdnYWxpYW4sIG1hYWFyaW5nIG1hZ3BhdHVsb3kgcGEgIgorInJpbiAhXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyMzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyAtLXJlY3Vyc2l2ZSBuZWVkcyBhdCBsZWFzdCBvbmUgcGF0aCBhcmd1bWVudCIKK21zZ3N0ciAiIgorIi0tJXMgLS1yZWN1cnNpdmUgYXkgbmFuZ2FuZ2FpbGFuZ2FuIG5nIGhpbmRpIGt1a3VsYW5nIHNhIGlzYW5nIGFyZ3VtZW50b25nICIKKyJwYXRoIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjQ1CisjLCBmdXp6eQorbXNnaWQgImZpbmQgZm9yIGRwa2cgLS1yZWN1cnNpdmUiCittc2dzdHIgImJpZ28gc2EgcGFnLWV4ZWMgbmcgZmluZCBwYXJhIHNhIC0tcmVjdXJzaXZlIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjY2Cittc2dpZCAiZmFpbGVkIHRvIGZkb3BlbiBmaW5kJ3MgcGlwZSIKK21zZ3N0ciAiYmlnbyBzYSBwYWctZmRvcGVuIG5nIHBpcGUgbmcgZmluZCIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3MgorbXNnaWQgImVycm9yIHJlYWRpbmcgZmluZCdzIHBpcGUiCittc2dzdHIgImVycm9yIHNhIHBhZ2Jhc2EgbmcgcGlwZSBuZyBmaW5kIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjczCittc2dpZCAiZXJyb3IgY2xvc2luZyBmaW5kJ3MgcGlwZSIKK21zZ3N0ciAiZXJyb3Igc2EgcGFnc2FyYSBuZyBwaXBlIG5nIGZpbmQiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmluZCBmb3IgLS1yZWN1cnNpdmUgcmV0dXJuZWQgdW5oYW5kbGVkIGVycm9yICVpIgorbXNnc3RyICJmaW5kIHBhcmEgc2EgLS1yZWN1cnNpdmUgYXkgbmFnYmFsaWsgbmcgaGluZGkgbWFwcm9zZXNvbmcgZXJyb3IgJWkiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNzkKK21zZ2lkICJzZWFyY2hlZCwgYnV0IGZvdW5kIG5vIHBhY2thZ2VzIChmaWxlcyBtYXRjaGluZyAqLmRlYikiCittc2dzdHIgIm5hZ2hhbmFwLCBuZ3VuaXQgd2FsYW5nIG5haGFuYXAgbmEgcGFrZXRlICh0YWxha3NhbmcgcHVtYXJlcyBzYSAqLmRlYikiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhdCBsZWFzdCBvbmUgcGFja2FnZSBhcmNoaXZlIGZpbGUgYXJndW1lbnQiCittc2dzdHIgIiIKKyItLSVzIGF5IG5hbmdhbmdhaWxhbmdhbiBuZyBoaW5kaSBrdWxhbmcgc2EgaXNhIHRhbGFrc2FuZyBhcmtpYm9uZyBwYWtldGUgIgorImFyZ3VtZW50byIKKworIzogc3JjL2FyY2hpdmVzLmM6MTMyNSBzcmMvZGl2ZXJ0Y21kLmM6Nzggc3JjL2RpdmVydGNtZC5jOjExOAorIzogc3JjL2VucXVpcnkuYzoxNjYgc3JjL2VucXVpcnkuYzoyNzkgc3JjL2VucXVpcnkuYzo0NDkgc3JjL2VucXVpcnkuYzo0NTEKKyM6IHNyYy9lbnF1aXJ5LmM6NDY0IHNyYy9tYWluLmM6NjYgc3JjL21haW4uYzoxNjMgc3JjL21haW4uYzozMTQKKyM6IHNyYy9tYWluLmM6NDkzIHNyYy9wYWNrYWdlcy5jOjI1NCBzcmMvcXVlcnljbWQuYzoyNTIgc3JjL3F1ZXJ5Y21kLmM6MzU1CisjOiBzcmMvcXVlcnljbWQuYzozOTYgc3JjL3F1ZXJ5Y21kLmM6NDA0IHNyYy9xdWVyeWNtZC5jOjQ0OCBzcmMvcXVlcnljbWQuYzo1MTcKKyM6IHNyYy9xdWVyeWNtZC5jOjYwNiBzcmMvcXVlcnljbWQuYzo2NTAgc3JjL3NlbGVjdC5jOjc5IHNyYy9zdGF0Y21kLmM6NjgKKyM6IHNyYy9zdGF0Y21kLmM6OTggc3JjL3RyaWdjbWQuYzo1OCBzcmMvdHJpZ2NtZC5jOjkwIGRwa2ctZGViL2J1aWxkLmM6NDQxCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjE3IGRwa2ctZGViL2V4dHJhY3QuYzoyNTAgZHBrZy1kZWIvaW5mby5jOjIwMworIzogZHBrZy1kZWIvaW5mby5jOjI2NSBkcGtnLWRlYi9tYWluLmM6NjAgZHBrZy1kZWIvbWFpbi5jOjEyNgorIzogZHBrZy1zcGxpdC9pbmZvLmM6MjU3IGRwa2ctc3BsaXQvbWFpbi5jOjU0IGRwa2ctc3BsaXQvbWFpbi5jOjk4CisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTQ0IGRwa2ctc3BsaXQvcXVldWUuYzoyODAKK21zZ2lkICI8c3RhbmRhcmQgb3V0cHV0PiIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzI2IHNyYy9wYWNrYWdlcy5jOjI1NSBzcmMvcXVlcnljbWQuYzoyNTMKKyM6IHNyYy9xdWVyeWNtZC5jOjM1MyBzcmMvcXVlcnljbWQuYzo0NTQgc3JjL3F1ZXJ5Y21kLmM6NTE4IHNyYy9zZWxlY3QuYzo4MAorIzogZHBrZy1zcGxpdC9tYWluLmM6MTY5IGRwa2ctc3BsaXQvcXVldWUuYzoyMTgKK21zZ2lkICI8c3RhbmRhcmQgZXJyb3I+IgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzNjcKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIlNlbGVjdGluZyBwcmV2aW91c2x5IGRlc2VsZWN0ZWQgcGFja2FnZSAlcy5cbiIKK21zZ2lkICJTZWxlY3RpbmcgcHJldmlvdXNseSB1bnNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dzdHIgIlBpbmlwaWxpIGFuZyBuYWthcmFhbmcgaGluZGkgcGluaWxpbmcgcGFrZXRlICVzLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzcxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJTa2lwcGluZyBkZXNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dpZCAiU2tpcHBpbmcgdW5zZWxlY3RlZCBwYWNrYWdlICVzLlxuIgorbXNnc3RyICJMaW5hbXBhc2FuIGFuZyBoaW5kaSBwaW5pbGluZyBwYWtldGUgJXMuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiVmVyc2lvbiAlLjI1MHMgb2YgJS4yNTBzIGFscmVhZHkgaW5zdGFsbGVkLCBza2lwcGluZy5cbiIKK21zZ3N0ciAiQmVyc3lvbiAlLjI1MHMgbmcgJS4yNTBzIGF5IG5ha2FsdWtsb2sgbmEsIGxpbmFsYW1wYXNhbi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTM5NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZG93bmdyYWRpbmcgJS4yNTBzIGZyb20gJS4yNTBzIHRvICUuMjUwcy4iCittc2dzdHIgIiVzIC0gYmFiYWxhOiBkb3duZ3JhZGUgbmcgJS4yNTBzIG11bGEgJS4yNTBzIHR1bmdvbmcgJS4yNTBzLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxNDAyCisjLCBjLWZvcm1hdAorbXNnaWQgIldpbGwgbm90IGRvd25ncmFkZSAlLjI1MHMgZnJvbSB2ZXJzaW9uICUuMjUwcyB0byAlLjI1MHMsIHNraXBwaW5nLlxuIgorbXNnc3RyICIiCisiSGluZGkgbWFnLWRvd25ncmFkZSBuZyAlLjI1MHMgbXVsYSBiZXJzeW9uICUuMjUwcyB0dW5nb25nICUuMjUwcywgIgorImxhbGFncGFzaW4uXG4iCisKKyM6IHNyYy9jbGVhbnVwLmM6ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVuYWJsZSB0byByZW1vdmUgbmV3bHktaW5zdGFsbGVkIHZlcnNpb24gb2YgYCUuMjUwcycgdG8gYWxsb3cgcmVpbnN0YWxsYXRpb24gIgorIm9mIGJhY2t1cCBjb3B5IgorbXNnc3RyICIiCisiaGluZGkgbWF0YW5nZ2FsIGFuZyBiYWdvbmctbHVrbG9rIG5hIGJlcnN5b24gbmcgYCUuMjUwcycgdXBhbmcgbWFhYXJpbmcgIgorImlsdWtsb2stbXVsaSBhbmcga29weWFuZyBiYWNrdXAiCisKKyM6IHNyYy9jbGVhbnVwLmM6OTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlc3RvcmUgYmFja3VwIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dzdHIgImhpbmRpIG1haWJhbGlrIGFuZyBiZXJzeW9uZyBiYWNrdXAgbmcgYCUuMjUwcyciCisKKyM6IHNyYy9jbGVhbnVwLmM6OTcKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byByZXN0b3JlIGJhY2t1cCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgYmFja3VwIGNvcHkgb2YgJyUuMjUwcyciCittc2dzdHIgImhpbmRpIG1haWJhbGlrIGFuZyBiZXJzeW9uZyBiYWNrdXAgbmcgYCUuMjUwcyciCisKKyM6IHNyYy9jbGVhbnVwLmM6MTAxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgbmV3bHktaW5zdGFsbGVkIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dzdHIgImhpbmRpIG1hdGFuZ2dhbCBhbmcgYmFnb25nIGx1a2xvayBuYSBiZXJzeW9uIG5nIGAlLjI1MHMnIgorCisjOiBzcmMvY2xlYW51cC5jOjEwOAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIG5ld2x5LWV4dHJhY3RlZCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICJoaW5kaSBtYXRhbmdnYWwgYW5nIGJhZ29uZy1iaW51a2xhdCBuYSBiZXJzeW9uIG5nIGAlLjI1MHMnIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTA0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gc3RhdCBuZXcgZGlzdCBjb25mZmlsZSBgJS4yNTBzJyIKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBuZXcgZGlzdHJpYnV0ZWQgY29uZmZpbGUgJyUuMjUwcyciCittc2dzdHIgImhpbmRpIG1hLXN0YXQgYW5nIGJhZ29uZyBkaXN0IGNvbmZmaWxlIGAlLjI1MHMnIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGN1cnJlbnQgaW5zdGFsbGVkIGNvbmZmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJoaW5kaSBtYS1zdGF0IGFuZyBrYXNhbHVrdXlhbmcgbmFrYWx1a2xvayBuYSBjb25mZmlsZSBgJS4yNTBzJyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjEyNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiQ29uZmlndXJhdGlvbiBmaWxlIGAlcycsIGRvZXMgbm90IGV4aXN0IG9uIHN5c3RlbS5cbiIKKyJJbnN0YWxsaW5nIG5ldyBjb25maWcgZmlsZSBhcyB5b3UgcmVxdWVzdGVkLlxuIgorbXNnc3RyICIiCisiXG4iCisiQW5nIHRhbGFrc2FuZyBwYWdrYWF5b3MgYCVzJyBheSB3YWxhIHNhIHNpc3RlbWEuXG4iCisiSW5pbHVsdWtsb2sgYW5nIGJhZ29uZyB0YWxha3NhbmcgcGFna2FheW9zIHR1bGFkIG5nIGlueW9uZyBoaWxpbmcuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzoxNjgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlIG9sZCBiYWNrdXAgJyUuMjUwcyc6ICVzIgorbXNnc3RyICJkcGtnOiAlczogYmFiYWxhIC0gYmlnbyBzYSBwYWd0YW5nZ2FsIG5nIGx1bWFuZyBiYWNrdXAgYCUuMjUwcyc6ICVzXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzoxNzYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVuYW1lICclLjI1MHMnIHRvICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiBiYWJhbGEgLSBiaWdvIHNhIHBhZ3BhbGl0IG5nIHBhbmdhbGFuIG5nIGAlLjI1MHMnIHNhIGAlLjI1MHMnOiAlc1xuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTgyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIHJlbW92ZSAnJS4yNTBzJzogJXMiCittc2dzdHIgIiVzOiBiaWdvIHNhIHBhZy1leGVjIGd6aXAgJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxODgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlIG9sZCBkaXN0cmlidXRlZCB2ZXJzaW9uICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiBiYWJhbGEgLSBiaWdvIHNhIHBhZ3RhbmdnYWwgbmcgbHVtYW5nIGRpc3RyaWIgYmVyc3lvbiBuZyBgJS4yNTBzJzogIgorIiVzXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzoxOTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlICclLjI1MHMnIChiZWZvcmUgb3ZlcndyaXRlKTogJXMiCittc2dzdHIgIiIKKyJkcGtnOiAlczogYmFiYWxhIC0gYmlnbyBzYSBwYWd0YW5nZ2FsIG5nIGAlLjI1MHMnIChiYWdvIHBhdHVuZ2FuKTogJXNcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE5NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byBsaW5rICclLjI1MHMnIHRvICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiZHBrZzogJXM6IGJhYmFsYSAtIGJpZ28gc2EgcGFnLWxpbmsgbmcgYCUuMjUwcycgdHVuZ29uZyBgJS4yNTBzJzogJXNcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjIwMAorIywgYy1mb3JtYXQKK21zZ2lkICJJbnN0YWxsaW5nIG5ldyB2ZXJzaW9uIG9mIGNvbmZpZyBmaWxlICVzIC4uLlxuIgorbXNnc3RyICJJbmlsdWx1a2xvayBhbmcgYmFnb25nIGJlcnN5b24gbmcgdGFsYWtzYW5nIHBhZ2thYXlvcyAlcyAuLi5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjIwNiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NTQ2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIGAlLjI1MHMnIGFzIGAlLjI1MHMnIgorbXNnc3RyICJoaW5kaSBtYWx1a2xvayBhbmcgYCUuMjUwcycgYmlsYW5nIGAlLjI1MHMnIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjU3CisjLCBjLWZvcm1hdAorbXNnaWQgIm5vIHBhY2thZ2UgbmFtZWQgYCVzJyBpcyBpbnN0YWxsZWQsIGNhbm5vdCBjb25maWd1cmUiCittc2dzdHIgIndhbGFuZyBwYWtldGVuZyBuYWduZ2FwYW5nYWxhbmcgYCVzJyBuYSBuYWthbHVrbG9rLCBoaW5kaSBtYWlzYWF5b3MiCisKKyM6IHNyYy9jb25maWd1cmUuYzoyNjAKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlLjI1MHMgaXMgYWxyZWFkeSBpbnN0YWxsZWQgYW5kIGNvbmZpZ3VyZWQiCittc2dzdHIgIm5ha2FsdWtsb2sgYXQgbmFrYWF5b3MgbmEgYW5nIHBha2V0ZW5nICUuMjUwcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI2MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisicGFja2FnZSAlLjI1MHMgaXMgbm90IHJlYWR5IGZvciBjb25maWd1cmF0aW9uXG4iCisiIGNhbm5vdCBjb25maWd1cmUgKGN1cnJlbnQgc3RhdHVzIGAlLjI1MHMnKSIKK21zZ3N0ciAiIgorImhpbmRpIGhhbmRhIG5hIGlzYWF5b3MgYW5nIHBha2V0ZW5nICUuMjUwc1xuIgorIiBoaW5kaSBtYWlzYWF5b3MgKGthc2FsdWt1eWFuZyBrYWxhZ2F5YW4gYCUuMjUwcycpIgorCisjOiBzcmMvY29uZmlndXJlLmM6Mjk0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBkZXBlbmRlbmN5IHByb2JsZW1zIHByZXZlbnQgY29uZmlndXJhdGlvbiBvZiAlczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6IHByb2JsZW1hIHNhIGRlcGVuZGVuc2l5YSBheSBiYWxha2lkIHNhIHBhZ3Nhc2FheW9zIG5nICVzOlxuIgorIiVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6Mjk3Cittc2dpZCAiZGVwZW5kZW5jeSBwcm9ibGVtcyAtIGxlYXZpbmcgdW5jb25maWd1cmVkIgorbXNnc3RyICJwcm9ibGVtYSBzYSBkZXBlbmRlbnNpeWEgLSBpbml3YW5hbmcgaGluZGkgbmFrYWF5b3MiCisKKyM6IHNyYy9jb25maWd1cmUuYzozMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6ICVzOiBkZXBlbmRlbmN5IHByb2JsZW1zLCBidXQgY29uZmlndXJpbmcgYW55d2F5IGFzIHlvdSByZXF1ZXN0ZWQ6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiAlczogcHJvYmxlbWEgc2EgZGVwZW5kZW5zaXlhLCBwZXJvIGlzaW5hc2FheW9zIHJpbiB0dWxhZCBuZyBoaWxpbmcgIgorIm5peW86XG4iCisiJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzozMDkKK21zZ2lkICIiCisiUGFja2FnZSBpcyBpbiBhIHZlcnkgYmFkIGluY29uc2lzdGVudCBzdGF0ZSAtIHlvdSBzaG91bGRcbiIKKyIgcmVpbnN0YWxsIGl0IGJlZm9yZSBhdHRlbXB0aW5nIGNvbmZpZ3VyYXRpb24uIgorbXNnc3RyICIiCisiTmFzYSBtYXNhbWFuZyBrYWxhZ2F5YW4gYW5nIHBha2V0ZSAtIGthaWxhbmdhbiBuaXlvbmdcbiIKKyIgaWx1a2xvay1tdWxpIGl0byBiYWdvIHN1YnVrYW5nIGlzYWF5b3MgaXRvLiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjMxMgorIywgYy1mb3JtYXQKK21zZ2lkICJTZXR0aW5nIHVwICVzICglcykgLi4uXG4iCittc2dzdHIgIkhpbmFoYW5kYSBhbmcgJXMgKCVzKSAuLi5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjM5NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiB1bmFibGUgdG8gc3RhdCBjb25maWcgZmlsZSAnJXMnXG4iCisiICg9ICclcycpOiAlcyIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiBiYWJhbGEgLSBoaW5kaSBtYS1zdGF0IGFuZyB0YWxha3NhbmcgcGFna2FheW9zIGAlcydcbiIKKyIgKD0gYCVzJyk6ICVzXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo0MDkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogY29uZmlnIGZpbGUgJyVzJyBpcyBhIGNpcmN1bGFyIGxpbmtcbiIKKyIgKD0gJyVzJykiCittc2dzdHIgIiIKKyJkcGtnOiAlczogYmFiYWxhIC0gdGFsYWtzYW5nIHBhZ2thYXlvcyBgJXMnIGF5IHBhaWtvdCBuYSBsaW5rXG4iCisiICg9IGAlcycpXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo0MTgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogdW5hYmxlIHRvIHJlYWRsaW5rIGNvbmZmaWxlICclcydcbiIKKyIgKD0gJyVzJyk6ICVzIgorbXNnc3RyICIiCisiZHBrZzogJXM6IGJhYmFsYSAtIGhpbmRpIG1hLXJlYWRsaW5rIGFuZyBjb25mZmlsZSBgJXMnXG4iCisiICg9IGAlcycpOiAlc1xuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDQ0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IGNvbmZmaWxlICclLjI1MHMnIHJlc29sdmVzIHRvIGRlZ2VuZXJhdGUgZmlsZW5hbWVcbiIKKyIgKCclcycgaXMgYSBzeW1saW5rIHRvICclcycpIgorbXNnc3RyICIiCisiZHBrZzogJXM6IGJhYmFsYSAtIGNvbmZmaWxlIGAlLjI1MHMnIG5hZ3Jlc29sYmEgc2EgcGFuZ2FsYW5nIHRhbGFrc2FuIG5hXG4iCisiIGRlZ2VuZXJhZG8gKGAlcycgYXkgc3ltbGluayBwYXR1bmdvIHNhIGAlcycpXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo0NjAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBjb25mZmlsZSAnJS4yNTBzJyBpcyBub3QgYSBwbGFpbiBmaWxlIG9yIHN5bWxpbmsgKD0gJyVzJykiCittc2dzdHIgIiIKKyJkcGtnOiAlczogYmFiYWxhIC0gY29uZmZpbGUgYCUuMjUwcycgYXkgaGluZGkgcGF5YWsgbmEgdGFsYWtzYW4gbyBzeW1saW5rXG4iCisiICg9IGAlcycpXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo0ODYKK21zZ2lkICJtZDVoYXNoIgorbXNnc3RyICJtZDVoYXNoIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDkyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogdW5hYmxlIHRvIG9wZW4gY29uZmZpbGUgJXMgZm9yIGhhc2g6ICVzIgorbXNnc3RyICJkcGtnOiAlczogYmFiYWxhIC0gaGluZGkgbWFidWtzYW4gYW5nIGNvbmZmaWxlICVzIHBhcmEgc2EgaGFzaDogJXNcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjUyMiBzcmMvY29uZmlndXJlLmM6NTI2Cittc2dpZCAiY29uZmZpbGUgZGlmZmVyZW5jZSB2aXN1YWxpemVyIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo1NDMKK21zZ2lkICJUeXBlIGBleGl0JyB3aGVuIHlvdSdyZSBkb25lLlxuIgorbXNnc3RyICJJcGFzb2sgYW5nIGBleGl0JyBrYXBhZyB0YXBvcyBuYSBrYXlvLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NTUyIHNyYy9jb25maWd1cmUuYzo1NTYKK21zZ2lkICJjb25mZmlsZSBzaGVsbCIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjAyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJDb25maWd1cmF0aW9uIGZpbGUgYCVzJyIKK21zZ3N0ciAiIgorIlxuIgorIlRhbGFrc2FuZyBwYWdrYWF5b3MgYCVzJyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYwNAorIywgYy1mb3JtYXQKK21zZ2lkICIgKGFjdHVhbGx5IGAlcycpIgorbXNnc3RyICIgKGFuZyB0b3RvbyBheSBgJXMnKSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYwOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiID09PiBGaWxlIG9uIHN5c3RlbSBjcmVhdGVkIGJ5IHlvdSBvciBieSBhIHNjcmlwdC5cbiIKKyIgPT0+IEZpbGUgYWxzbyBpbiBwYWNrYWdlIHByb3ZpZGVkIGJ5IHBhY2thZ2UgbWFpbnRhaW5lci5cbiIKK21zZ3N0ciAiIgorIlxuIgorIiA9PT4gVGFsYWtzYW4gc2Egc2lzdGVtYSBheSBuaWxpa2hhIG5pbnlvIG8gbmcgc2tyaXB0LlxuIgorIiA9PT4gVGFsYWtzYW4gYXkgbmFzYSBsb29iIGRpbiBuZyBwYWtldGVuZyBiaWdheSBuZyB0YWdhcGFuZ2FsYWdhIG5nICIKKyJwYWtldGUuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiAgICAgTm90IG1vZGlmaWVkIHNpbmNlIGluc3RhbGxhdGlvbi5cbiIKK21zZ3N0ciAiIgorIlxuIgorIiAgICAgSGluZGkgYmluYWdvIG1hZ211bGEgbmcgaW5pbHVrbG9rIGl0by5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYxNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiID09PiBNb2RpZmllZCAoYnkgeW91IG9yIGJ5IGEgc2NyaXB0KSBzaW5jZSBpbnN0YWxsYXRpb24uXG4iCittc2dzdHIgIiIKKyJcbiIKKyIgPT0+IEJpbmFnbyAobmlueW8gbyBuZyBza3JpcHQpIG1hZ211bGEgbm9vbmcgaW5pbHVrbG9rIGl0by5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYxNgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiA9PT4gRGVsZXRlZCAoYnkgeW91IG9yIGJ5IGEgc2NyaXB0KSBzaW5jZSBpbnN0YWxsYXRpb24uXG4iCittc2dzdHIgIiIKKyJcbiIKKyIgPT0+IEJpbmFnbyAobmlueW8gbyBuZyBza3JpcHQpIG1hZ211bGEgbm9vbmcgaW5pbHVrbG9rIGl0by5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYxOQorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IFBhY2thZ2UgZGlzdHJpYnV0b3IgaGFzIHNoaXBwZWQgYW4gdXBkYXRlZCB2ZXJzaW9uLlxuIgorbXNnc3RyICIgPT0+IE5hZ3BhZGFsYSBuZyBwYW5pYmFnb25nIGJlcnN5b24gYW5nIG5hZ3BhbXVkbW9kIG5nIHBha2V0ZS5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYyMAorIywgYy1mb3JtYXQKK21zZ2lkICIgICAgIFZlcnNpb24gaW4gcGFja2FnZSBpcyB0aGUgc2FtZSBhcyBhdCBsYXN0IGluc3RhbGxhdGlvbi5cbiIKK21zZ3N0ciAiICAgICBCZXJzeW9uIHNhIGxvb2IgbmcgcGFrZXRlIGF5IHBhcmVobyBzYSBodWxpbmcgcGFna2FsdWtsb2suXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBVc2luZyBuZXcgZmlsZSBhcyB5b3UgcmVxdWVzdGVkLlxuIgorbXNnc3RyICIgPT0+IEdpbmFnYW1pdCBhbmcgYmFnb25nIHRhbGFrc2FuIHR1bGFkIG5nIGlueW9uZyBoaWxpbmcuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBVc2luZyBjdXJyZW50IG9sZCBmaWxlIGFzIHlvdSByZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiIKKyIgPT0+IEdpbmFnYW1pdCBhbmcga2FzYWx1a3V5YW5nIGx1bWFuZyB0YWxha3NhbiB0dWxhZCBuZyBpbnlvbmcgaGlsaW5nLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjQxCisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gS2VlcGluZyBvbGQgY29uZmlnIGZpbGUgYXMgZGVmYXVsdC5cbiIKK21zZ3N0ciAiID09PiBQaW5hbmF0aWxpbmcgZGVmYXVsdCBhbmcgbHVtYW5nIHRhbGFrc2FuZyBwYWdrYWF5b3MuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBVc2luZyBuZXcgY29uZmlnIGZpbGUgYXMgZGVmYXVsdC5cbiIKK21zZ3N0ciAiID09PiBHYWdhbWl0aW4gYW5nIGJhZ29uZyB0YWxha3NhbmcgcGFna2FheW9zIGJpbGFuZyBkZWZhdWx0LlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjUyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiICAgV2hhdCB3b3VsZCB5b3UgbGlrZSB0byBkbyBhYm91dCBpdCA/ICBZb3VyIG9wdGlvbnMgYXJlOlxuIgorIiAgICBZIG9yIEkgIDogaW5zdGFsbCB0aGUgcGFja2FnZSBtYWludGFpbmVyJ3MgdmVyc2lvblxuIgorIiAgICBOIG9yIE8gIDoga2VlcCB5b3VyIGN1cnJlbnRseS1pbnN0YWxsZWQgdmVyc2lvblxuIgorIiAgICAgIEQgICAgIDogc2hvdyB0aGUgZGlmZmVyZW5jZXMgYmV0d2VlbiB0aGUgdmVyc2lvbnNcbiIKKyIgICAgICBaICAgICA6IHN0YXJ0IGEgc2hlbGwgdG8gZXhhbWluZSB0aGUgc2l0dWF0aW9uXG4iCittc2dzdHIgIiIKKyIgICBBbm8gYW5nIG5haXMgbml5b25nIGdhd2luIHR1bmdrb2wgZGl0byA/ICBBbmcgbWdhIG9wc3lvbiBuaXlvIGF5OlxuIgorIiAgICBZIG8gSSAgOiBpbHVrbG9rIGFuZyBiZXJzeW9uIG5nIHRhZ2FwYW5nYWxhZ2EgbmcgcGFrZXRlXG4iCisiICAgIE4gbyBPICA6IGdhbWl0aW4gYW5nIGthc2FsdWt1eWFuZyBuYWthbHVrbG9rIG5hIGJlcnN5b25cbiIKKyIgICAgICBEICAgIDogaXBha2l0YSBhbmcgcGFna2FrYWliYSBuZyBtZ2EgYmVyc3lvblxuIgorIiAgICAgIFogICAgOiBpbGFnYXkgc2EgYmFja2dyb3VuZCBhbmcgcHJvc2Vzb25nIGl0byB1cGFuZyB0aWduYW4gYW5nICIKKyJrYWF5dXNhblxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjU5CisjLCBjLWZvcm1hdAorbXNnaWQgIiBUaGUgZGVmYXVsdCBhY3Rpb24gaXMgdG8ga2VlcCB5b3VyIGN1cnJlbnQgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIEFuZyBkZWZhdWx0IG5hIGdhZ2F3aW4gYXkgZ2FtaXRpbiBhbmcga2FzYWx1a3V5YW5nIGJlcnN5b24uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIFRoZSBkZWZhdWx0IGFjdGlvbiBpcyB0byBpbnN0YWxsIHRoZSBuZXcgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIEFuZyBkZWZhdWx0IG5hIGdhZ2F3aW4gYXkgaWx1a2xvayBhbmcgYmFnb25nIGJlcnN5b24uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NjYKK21zZ2lkICJbZGVmYXVsdD1OXSIKK21zZ3N0ciAiW2RlZmF1bHQ9Tl0iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NjcKK21zZ2lkICJbZGVmYXVsdD1ZXSIKK21zZ3N0ciAiW2RlZmF1bHQ9WV0iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NjgKK21zZ2lkICJbbm8gZGVmYXVsdF0iCittc2dzdHIgIlt3YWxhbmcgZGVmYXVsdF0iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NzEKK21zZ2lkICJlcnJvciB3cml0aW5nIHRvIHN0ZGVyciwgZGlzY292ZXJlZCBiZWZvcmUgY29uZmZpbGUgcHJvbXB0IgorbXNnc3RyICJlcnJvciBzYSBwYWdzdWxhdCBzYSBzdGRlcnIsIG5hdGFncHVhbiBiYWdvIG1hZy1wcm9tcHQgbmcgY29uZmZpbGUiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2ODAKK21zZ2lkICJyZWFkIGVycm9yIG9uIHN0ZGluIGF0IGNvbmZmaWxlIHByb21wdCIKK21zZ3N0ciAiZXJyb3Igc2EgcGFnYmFzYSBuZyBzdGRpbiBzYSBwcm9tcHQgbmcgY29uZmZpbGUiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2ODEKK21zZ2lkICJFT0Ygb24gc3RkaW4gYXQgY29uZmZpbGUgcHJvbXB0IgorbXNnc3RyICJFT0Ygc2Egc3RkaW4gc2EgcHJvbXB0IG5nIGNvbmZmaWxlIgorCisjOiBzcmMvZGVwY29uLmM6MTc1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlcyBkZXBlbmRzIG9uICVzIgorbXNnc3RyICIgbmFnZGVkZXBlbmRlIHNhICIKKworIzogc3JjL2RlcGNvbi5jOjE3OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXMgcHJlLWRlcGVuZHMgb24gJXMiCittc2dzdHIgIiBuYWctcHJlLWRlcGVuZGUgc2EgIgorCisjOiBzcmMvZGVwY29uLmM6MTgxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlcyByZWNvbW1lbmRzICVzIgorbXNnc3RyICIgcmVrb21lbmRhZG8gYW5nICIKKworIzogc3JjL2RlcGNvbi5jOjE4NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXMgc3VnZ2VzdHMgJXMiCittc2dzdHIgIiBtdW5na2FoaSBhbmcgIgorCisjOiBzcmMvZGVwY29uLmM6MTg3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlcyBicmVha3MgJXMiCittc2dzdHIgIiVzIChzdWJwcm9jZXNzKTogJXNcbiIKKworIzogc3JjL2RlcGNvbi5jOjE5MAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXMgY29uZmxpY3RzIHdpdGggJXMiCittc2dzdHIgIiBrYXR1bmdnYWxpIGFuZyAiCisKKyM6IHNyYy9kZXBjb24uYzoxOTMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzIGVuaGFuY2VzICVzIgorbXNnc3RyICIgbmFncGFwYWJ1dGkgc2EgIgorCisjOiBzcmMvZGVwY29uLmM6Mjk2CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHRvIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIGF5IHRhdGFuZ2dhbGluLlxuIgorCisjOiBzcmMvZGVwY29uLmM6Mjk5CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHRvIGJlIGRlY29uZmlndXJlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMgYXkgdGF0YW5nZ2FsaW4gYW5nIHBhZ2thYXlvcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjMwNAorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB0byBiZSBpbnN0YWxsZWQsIGJ1dCBpcyB2ZXJzaW9uICUuMjUwcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgYXkgaWx1bHVrbG9rLCBuZ3VuaXQgaXRvJ3kgYmVyc3lvbiAlLjI1MHMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgaW5zdGFsbGVkLCBidXQgaXMgdmVyc2lvbiAlLjI1MHMuXG4iCittc2dzdHIgIiAgJS4yNTBzIGF5IG5ha2FsdWtsb2ssIG5ndW5pdCBhbmcgYmVyc3lvbiBuaXRvIGF5ICUuMjUwcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjMzMworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB1bnBhY2tlZCwgYnV0IGhhcyBuZXZlciBiZWVuIGNvbmZpZ3VyZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIGF5IG5ha2FidWtsYXQsIG5ndW5pdCBoaW5kaSBpdG8gaXNpbmFheW9zIGthaWxhbm1hbi5cbiIKKworIzogc3JjL2RlcGNvbi5jOjMzNworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB1bnBhY2tlZCwgYnV0IGlzIHZlcnNpb24gJS4yNTBzLlxuIgorbXNnc3RyICIgICUuMjUwcyBheSBuYWthYnVrbGF0LCBuZ3VuaXQgaXRvJ3kgYmVyc3lvbiAlLjI1MHMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozNDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgbGF0ZXN0IGNvbmZpZ3VyZWQgdmVyc2lvbiBpcyAlLjI1MHMuXG4iCittc2dzdHIgIiAgQW5nIGh1bGluZyBiZXJzeW9uIG5nIHBhZ2thYXlvcyBuZyAlLjI1MHMgYXkgJS4yNTBzLlxuIgorCisjOiBzcmMvZGVwY29uLmM6MzUzCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzICVzLlxuIgorbXNnc3RyICIgICUuMjUwcyBheSAlcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjM4OAorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYnV0IGlzIHRvIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIGF5IG5hZ2JpYmlnYXkgbmcgJS4yNTBzIG5ndW5pdCBpdG8neSB0YXRhbmdnYWxpbi5cbiIKKworIzogc3JjL2RlcGNvbi5jOjM5MgorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYnV0IGlzIHRvIGJlIGRlY29uZmlndXJlZC5cbiIKK21zZ3N0ciAiIgorIiAgJS4yNTBzIGF5IG5hZ2JpYmlnYXkgbmcgJS4yNTBzIG5ndW5pdCBpdG8neSB0YXRhbmdnYWxhbiBuZyBwYWdrYWF5b3MuXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0MDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGJ1dCBpcyAlcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgYXkgbmFnYmliaWdheSBuZyAlLjI1MHMgbmd1bml0IGl0byd5ICVzLlxuIgorCisjOiBzcmMvZGVwY29uLmM6NDE1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIG5vdCBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIGF5IGhpbmRpIG5ha2FsdWtsb2suXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgKHZlcnNpb24gJS4yNTBzKSBpcyB0byBiZSBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIChiZXJzeW9uICUuMjUwcykgYXkgaWx1bHVrbG9rLlxuIgorCisjOiBzcmMvZGVwY29uLmM6NDY4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyAodmVyc2lvbiAlLjI1MHMpIGlzIHByZXNlbnQgYW5kICVzLlxuIgorbXNnc3RyICIgICUuMjUwcyAoYmVyc3lvbiAlLjI1MHMpIGF5ICVzLlxuIgorCisjOiBzcmMvZGVwY29uLmM6NDk1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBhbmQgaXMgdG8gYmUgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIgICUuMjUwcyBheSBuYWdiaWJpZ2F5IG5nICUuMjUwcyBhdCBpbHVsdWtsb2suXG4iCisKKyM6IHNyYy9kZXBjb24uYzo1MzcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBhbmQgaXMgcHJlc2VudCBhbmQgJXMuXG4iCittc2dzdHIgIiAgJS4yNTBzIGF5IG5hZ2JpYmlnYXkgbmcgJS4yNTBzIGF0IGF5ICVzLlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTAKKyMsIGZ1enp5Cittc2dpZCAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBkaXZlcnRpbmcgZmlsZXMuIgorbXNnc3RyICJkcGtnLXNwbGl0IC0taGVscCBwYXJhIHNhIHR1bG9uZy4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo2NiBzcmMvc3RhdGNtZC5jOjU3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo4MAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuICVzIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIicgYmVyc3lvbiBuZyBiYWNrZW5kIG5nIGFya2lib25nIHBha2V0ZSIKKworIzogc3JjL2RpdmVydGNtZC5jOjcwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMTAgR3VpbGxlbSBKb3Zlci5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NzUgc3JjL21haW4uYzo2MyBzcmMvcXVlcnljbWQuYzo2MDMgc3JjL3N0YXRjbWQuYzo2NQorIzogc3JjL3RyaWdjbWQuYzo1NSBkcGtnLWRlYi9tYWluLmM6NTcgZHBrZy1zcGxpdC9tYWluLmM6NTEKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo4OQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgb3JcbiIKKyJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKK21zZ3N0ciAiIgorIkl0byBheSBtYWxheWFuZyBzb2Z0d2FyZTsgYmFzYWhpbiBhbmcgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgYmVyc3lvbiAyICIKKyJvXG4iCisibWFzLWJhZ28gcGFyYSBzYSBrdW5kaXN5b24gbmcgcGFuZ29uZ29weWEuIFdhbGFuZyB3YXJhbnRpLlxuIgorIkJhc2FoaW4gYW5nIGRwa2ctZGViIC0tbGljZW5jZSBwYXJhIHNhIGRldGFseWUuXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo4NyBzcmMvbWFpbi5jOjgxIHNyYy9xdWVyeWNtZC5jOjYxNSBzcmMvc3RhdGNtZC5jOjc3CisjOiBkcGtnLWRlYi9tYWluLmM6NjkgZHBrZy1zcGxpdC9tYWluLmM6NjMgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjk3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gPGNvbW1hbmQ+XG4iCisiXG4iCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjkxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIFstLWFkZF0gPGZpbGU+ICAgICAgICAgICBhZGQgYSBkaXZlcnNpb24uXG4iCisiICAtLXJlbW92ZSA8ZmlsZT4gICAgICAgICAgcmVtb3ZlIHRoZSBkaXZlcnNpb24uXG4iCisiICAtLWxpc3QgWzxnbG9iLXBhdHRlcm4+XSAgc2hvdyBmaWxlIGRpdmVyc2lvbnMuXG4iCisiICAtLWxpc3RwYWNrYWdlIDxmaWxlPiAgICAgc2hvdyB3aGF0IHBhY2thZ2UgZGl2ZXJ0cyB0aGUgZmlsZS5cbiIKKyIgIC0tdHJ1ZW5hbWUgPGZpbGU+ICAgICAgICByZXR1cm4gdGhlIGRpdmVydGVkIGZpbGUuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjEwMAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tcGFja2FnZSA8cGFja2FnZT4gICAgICBuYW1lIG9mIHRoZSBwYWNrYWdlIHdob3NlIGNvcHkgb2YgPGZpbGU+IHdpbGwgIgorIm5vdFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmUgZGl2ZXJ0ZWQuXG4iCisiICAtLWxvY2FsICAgICAgICAgICAgICAgICAgYWxsIHBhY2thZ2VzJyB2ZXJzaW9ucyBhcmUgZGl2ZXJ0ZWQuXG4iCisiICAtLWRpdmVydCA8ZGl2ZXJ0LXRvPiAgICAgdGhlIG5hbWUgdXNlZCBieSBvdGhlciBwYWNrYWdlcycgdmVyc2lvbnMuXG4iCisiICAtLXJlbmFtZSAgICAgICAgICAgICAgICAgYWN0dWFsbHkgbW92ZSB0aGUgZmlsZSBhc2lkZSAob3IgYmFjaykuXG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgc2V0IHRoZSBkaXJlY3Rvcnkgd2l0aCB0aGUgZGl2ZXJzaW9ucyBmaWxlLlxuIgorIiAgLS10ZXN0ICAgICAgICAgICAgICAgICAgIGRvbid0IGRvIGFueXRoaW5nLCBqdXN0IGRlbW9uc3RyYXRlLlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHF1aWV0IG9wZXJhdGlvbiwgbWluaW1hbCBvdXRwdXQuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIldoZW4gYWRkaW5nLCBkZWZhdWx0IGlzIC0tbG9jYWwgYW5kIC0tZGl2ZXJ0IDxvcmlnaW5hbD4uZGlzdHJpYi5cbiIKKyJXaGVuIHJlbW92aW5nLCAtLXBhY2thZ2Ugb3IgLS1sb2NhbCBhbmQgLS1kaXZlcnQgbXVzdCBtYXRjaCBpZiBzcGVjaWZpZWQuXG4iCisiUGFja2FnZSBwcmVpbnN0L3Bvc3RybSBzY3JpcHRzIHNob3VsZCBhbHdheXMgc3BlY2lmeSAtLXBhY2thZ2UgYW5kIC0tIgorImRpdmVydC5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MTY4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjaGVja2luZyAnJXMnIgorbXNnc3RyICJlcnJvciBzYSBwYWdzdWxhdCBuZyBgJXMnIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjAzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJyZW5hbWUgaW52b2x2ZXMgb3ZlcndyaXRpbmcgYCVzJyB3aXRoXG4iCisiICBkaWZmZXJlbnQgZmlsZSBgJXMnLCBub3QgYWxsb3dlZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjIzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzczCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIGZpbGUgJyVzJyIKK21zZ3N0ciAiaGluZGkgbWFidWtzYW4gYW5nIHBpbmFnbXVsYW4gbmEgdGFsYWtzYW5nIGAlLjI1MHMnIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjI3Cittc2dpZCAiZmlsZSBjb3B5IgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyMzkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZW5hbWUgJyVzJyB0byAnJXMnIgorbXNnc3RyICJoaW5kaSBtYS1zdGF0IGFuZyBgJS4yNTVzJyAoc2EgYCUuMjU1cycpIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjUyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJyZW5hbWU6IHJlbW92ZSBkdXBsaWNhdGUgb2xkIGxpbmsgJyVzJyIKK21zZ3N0ciAibmFkb2JsZW5nIGhhbGFnYSBwYXJhIHNhIHNha2xhdyBuYSBgJXMnIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjYyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gb3BlbiBzb3VyY2UgZmlsZSBgJS4yNTBzJyIKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIGNvcGllZCBzb3VyY2UgZmlsZSAnJXMnIgorbXNnc3RyICJoaW5kaSBtYWJ1a3NhbiBhbmcgcGluYWdtdWxhbiBuYSB0YWxha3NhbmcgYCUuMjUwcyciCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyODQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImxvY2FsIGRpdmVyc2lvbiBvZiAlcyIKK21zZ3N0ciAiZGliZXJ0YWRvIG5hIGxva2FsIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mjg2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJsb2NhbCBkaXZlcnNpb24gb2YgJXMgdG8gJXMiCittc2dzdHIgImRpYmVydGFkbyBuYSBsb2thbCIKKworIzogc3JjL2RpdmVydGNtZC5jOjI5MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZGl2ZXJzaW9uIGJ5ICVzIgorbXNnaWQgImRpdmVyc2lvbiBvZiAlcyBieSAlcyIKK21zZ3N0ciAiZGliZXJzeW9uIG5nICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjkzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnNpb24gb2YgJXMgdG8gJXMgYnkgJXMiCittc2dzdHIgImRpYmVydGFkbyBuZyAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjMwOQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZGl2ZXJzaW9uIGJ5ICVzIgorbXNnaWQgImFueSBkaXZlcnNpb24gb2YgJXMiCittc2dzdHIgImRpYmVyc3lvbiBuZyAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjMxMQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiYW55IGRpdmVyc2lvbiBvZiAlcyB0byAlcyIKK21zZ3N0ciAiZGliZXJ0YWRvIG5nICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MzU3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgY3JlYXRlIG5ldyAlcyBmaWxlIgorbXNnc3RyICJoaW5kaSBtYWJ1a3NhbiBhbmcgdGFsYWtzYW5nIEdQTCAiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozNzUgc3JjL3N0YXRjbWQuYzoyMTUgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE0MDQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCBmaWxlICclcyciCittc2dzdHIgImhpbmRpIG1ha2EtZmx1c2ggc2EgdnNucHJpbnRmIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MzgyCisjLCBmdXp6eQorbXNnaWQgImVycm9yIHJlbW92aW5nIG9sZCBkaXZlcnNpb25zLW9sZCIKK21zZ3N0ciAiZXJyb3Igc2EgcGFnbGlraGEgbmcgZGV2aWNlIGAlLjI1NXMnIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mzg0CisjLCBmdXp6eQorbXNnaWQgImVycm9yIGNyZWF0aW5nIG5ldyBkaXZlcnNpb25zLW9sZCIKK21zZ3N0ciAiZXJyb3Igc2EgcGFnbGlraGEgbmcgZGV2aWNlIGAlLjI1NXMnIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mzg2CisjLCBmdXp6eQorbXNnaWQgImVycm9yIGluc3RhbGxpbmcgbmV3IGRpdmVyc2lvbnMiCittc2dzdHIgImVycm9yIHNhIHBhZ2xpa2hhIG5nIGRldmljZSBgJS4yNTVzJyIKKworIzogc3JjL2RpdmVydGNtZC5jOjQwNiBzcmMvZGl2ZXJ0Y21kLmM6NTAzIHNyYy9kaXZlcnRjbWQuYzo2MTAKKyM6IHNyYy9kaXZlcnRjbWQuYzo2MzAgc3JjL3N0YXRjbWQuYzoyOTAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSBzaW5nbGUgYXJndW1lbnQiCittc2dzdHIgIi0tYnVpbGQgYXkgbmFuZ2FuZ2FpbGFuZ2FuIG5nIGFyZ3VtZW50b25nIGRpcmVjdG9yeSIKKworIzogc3JjL2RpdmVydGNtZC5jOjQwOSBzcmMvZGl2ZXJ0Y21kLmM6NDMwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmaWxlbmFtZSBcIiVzXCIgaXMgbm90IGFic29sdXRlIgorbXNnc3RyICJjb25mZmlsZSBgJS4yNTBzJyBheSBoaW5kaSBtYS1zdGF0IgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDExIHNyYy9zdGF0Y21kLmM6MjQ5Cittc2dpZCAiZmlsZSBtYXkgbm90IGNvbnRhaW4gbmV3bGluZXMiCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjQxOAorIywgZnV6enkKK21zZ2lkICJDYW5ub3QgZGl2ZXJ0IGRpcmVjdG9yaWVzIgorbXNnc3RyICJoaW5kaSBtYWJhc2EgYW5nIGluZm8gZGlyZWN0b3J5IgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDMzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgZGl2ZXJ0IGZpbGUgJyVzJyB0byBpdHNlbGYiCittc2dzdHIgImhpbmRpIG1hYmFzYSBhbmcgaW5mbyBkaXJlY3RvcnkiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0NTMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIkxlYXZpbmcgJyVzJ1xuIgorbXNnc3RyICJlcnJvciBzYSBwYWdzdWxhdCBuZyBgJXMnIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDU4CisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgY2xhc2hlcyB3aXRoIGAlcyciCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjQ4MQorIywgYy1mb3JtYXQKK21zZ2lkICJBZGRpbmcgJyVzJ1xuIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MTAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnaWQgIk5vIGRpdmVyc2lvbiAnJXMnLCBub25lIHJlbW92ZWQuXG4iCittc2dzdHIgIiBheSB0YXRhbmdnYWxpbi5cbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjUyNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisibWlzbWF0Y2ggb24gZGl2ZXJ0LXRvXG4iCisiICB3aGVuIHJlbW92aW5nIGAlcydcbiIKKyIgIGZvdW5kIGAlcyciCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjUzMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisibWlzbWF0Y2ggb24gcGFja2FnZVxuIgorIiAgd2hlbiByZW1vdmluZyBgJXMnXG4iCisiICBmb3VuZCBgJXMnIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MzkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIlJlbW92aW5nICclcydcbiIKK21zZ3N0ciAiVGluYXRhbmdnYWwgYW5nICVzIC4uLlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjU3CisjLCBmdXp6eQorbXNnaWQgInBhY2thZ2UgbWF5IG5vdCBjb250YWluIG5ld2xpbmVzIgorbXNnc3RyICJXYWxhbmcgbGFtYW4gYW5nIHBha2V0ZW5nIGAlcycgKCEpXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo2NjYKK21zZ2lkICJkaXZlcnQtdG8gbWF5IG5vdCBjb250YWluIG5ld2xpbmVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRkYi5jOjY0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gZGl2ZXJzaW9ucyBmaWxlIgorbXNnc3RyICJiaWdvIHNhIHBhZ2J1a2FzIG5nIHRhbGFrc2FuZyBkaWJlcnN5b24iCisKKyM6IHNyYy9kaXZlcnRkYi5jOjcxCittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IHByZXZpb3VzIGRpdmVyc2lvbnMgZmlsZSIKK21zZ3N0ciAiYmlnbyBzYSBwYWctZnN0YXQgbmcgbmFrYXJhYW5nIHRhbGFrc2FuZyBkaWJlcnN5b24iCisKKyM6IHNyYy9kaXZlcnRkYi5jOjczCittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGRpdmVyc2lvbnMgZmlsZSIKK21zZ3N0ciAiYmlnbyBzYSBwYWctZnN0YXQgbmcgdGFsYWtzYW5nIGRpYmVyc3lvbiIKKworIzogc3JjL2RpdmVydGRiLmM6MTEzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZsaWN0aW5nIGRpdmVyc2lvbnMgaW52b2x2aW5nIGAlLjI1MHMnIG9yIGAlLjI1MHMnIgorbXNnc3RyICJtYWdrYXR1bmdnYWxpbmcgZGliZXJzeW9uIHNhbmdrb3QgYW5nIGAlLjI1MHMnIG8gYCUuMjUwcyciCisKKyM6IHNyYy9lbnF1aXJ5LmM6NzMKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgaW4gYSBtZXNzIGR1ZSB0byBzZXJpb3VzIHByb2JsZW1zIGR1cmluZ1xuIgorImluc3RhbGxhdGlvbi4gIFRoZXkgbXVzdCBiZSByZWluc3RhbGxlZCBmb3IgdGhlbSAoYW5kIGFueSBwYWNrYWdlc1xuIgorInRoYXQgZGVwZW5kIG9uIHRoZW0pIHRvIGZ1bmN0aW9uIHByb3Blcmx5OlxuIgorbXNnc3RyICIiCisiQW5nIHN1bXVzdW5vZCBuYSBtZ2EgcGFrZXRlIGF5IG5hZ2thZ3VsbyBkYWhpbCBzYSBtYWJpZ2F0IG5hIHByb2JsZW1hICIKKyJoYWJhbmdcbiIKKyJuaWx1bHVrbG9rIGFuZyBtZ2EgaXRvLiBLaW5ha2FpbGFuZ2FuIG1haWx1a2xvay1tdWxpIGFuZyBtZ2EgaXRvIHVwYW5nIHNpbGFcbiIKKyIoYXQgYWxpbm1hbmcgcGFrZXRlIGFuZyBtYXkgZGVwZW5kZW5zaXlhIHNhIGthbmlsYSkgYXkgdW1hbmRhciBuZyB0YW1hOlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjgwCittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgaGF2ZSBiZWVuIHVucGFja2VkIGJ1dCBub3QgeWV0IGNvbmZpZ3VyZWQuXG4iCisiVGhleSBtdXN0IGJlIGNvbmZpZ3VyZWQgdXNpbmcgZHBrZyAtLWNvbmZpZ3VyZSBvciB0aGUgY29uZmlndXJlXG4iCisibWVudSBvcHRpb24gaW4gZHNlbGVjdCBmb3IgdGhlbSB0byB3b3JrOlxuIgorbXNnc3RyICIiCisiQW5nIHN1bXVzdW5vZCBuYSBtZ2EgcGFrZXRlIGF5IG5hYnVrbGF0IG5hIG5ndW5pdCBoaW5kaSBwYSBpc2luYWF5b3MuXG4iCisiS2FpbGFuZ2FuIHNpbGFuZyBpc2FheW9zIGdhbWl0IGFuZyBkcGtnIC0tY29uZmlndXJlIG8gYW5nIG9wc3lvbiBuZyAiCisicGFnc2FzYWF5b3NcbiIKKyJzYSBtZW51IG5nIGRzZWxlY3QgdXBhbmcgc2lsYSBheSB1bWFuZGFyOlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjg3Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgYXJlIG9ubHkgaGFsZiBjb25maWd1cmVkLCBwcm9iYWJseSBkdWUgdG8gcHJvYmxlbXNcbiIKKyJjb25maWd1cmluZyB0aGVtIHRoZSBmaXJzdCB0aW1lLiAgVGhlIGNvbmZpZ3VyYXRpb24gc2hvdWxkIGJlIHJldHJpZWQgdXNpbmdcbiIKKyJkcGtnIC0tY29uZmlndXJlIDxwYWNrYWdlPiBvciB0aGUgY29uZmlndXJlIG1lbnUgb3B0aW9uIGluIGRzZWxlY3Q6XG4iCittc2dzdHIgIiIKKyJBbmcgc3VtdXN1bm9kIG5hIG1nYSBwYWtldGUgYXkgbmFrYWF5b3MgbmEgYml0aW4sIG1hYWFyaW5nIGRhaGlsIHNhIG1nYVxuIgorInByb2JsZW1hIHNhIHBhZ3Nhc2FheW9zIHNhIGthbmlsYSBuZyB1bmFuZyBwYWdrYWthdGFhb24uIEFuZyBwYWdzYXNhYXlvc1xuIgorImF5IGRhcGF0IHN1YnVrYW4gbXVsaSBnYW1pdCBhbmcgZHBrZyAtLWNvbmZpZ3VyZSA8cGFrZXRlPiBvIHNhIG9wc3lvbiBuZ1xuIgorInBhZ3Nhc2FheW9zIHNhIG1lbnUgbmcgZHNlbGVjdDpcbiIKKworIzogc3JjL2VucXVpcnkuYzo5NAorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBvbmx5IGhhbGYgaW5zdGFsbGVkLCBkdWUgdG8gcHJvYmxlbXMgZHVyaW5nXG4iCisiaW5zdGFsbGF0aW9uLiAgVGhlIGluc3RhbGxhdGlvbiBjYW4gcHJvYmFibHkgYmUgY29tcGxldGVkIGJ5IHJldHJ5aW5nIGl0O1xuIgorInRoZSBwYWNrYWdlcyBjYW4gYmUgcmVtb3ZlZCB1c2luZyBkc2VsZWN0IG9yIGRwa2cgLS1yZW1vdmU6XG4iCittc2dzdHIgIiIKKyJBbmcgc3VtdXN1bm9kIG5hIG1nYSBwYWtldGUgYXkgbmFrYWx1a2xvayBuYSBiaXRpbiwgZGFoaWwgc2EgbWdhIHByb2JsZW1hXG4iCisiaGFiYW5nIHNpbGEneSBpbmlsdWtsb2suIEFuZyBwYWdsdWtsb2sgYXkgbWFhYXJpbmcgbWFidW8gc2EgcGFnc3Vib2sgbXVsaTtcbiIKKyJhbmcgbWdhIHBha2V0ZSBheSBtYWFhcmluZyB0YW5nZ2FsaW4gZ2FtaXQgYW5nIGRzZWxlY3QgbyBkcGtnIC0tcmVtb3ZlOlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjEwMQorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBhd2FpdGluZyBwcm9jZXNzaW5nIG9mIHRyaWdnZXJzIHRoYXQgdGhleVxuIgorImhhdmUgYWN0aXZhdGVkIGluIG90aGVyIHBhY2thZ2VzLiAgVGhpcyBwcm9jZXNzaW5nIGNhbiBiZSByZXF1ZXN0ZWQgdXNpbmdcbiIKKyJkc2VsZWN0IG9yIGRwa2cgLS1jb25maWd1cmUgLS1wZW5kaW5nIChvciBkcGtnIC0tdHJpZ2dlcnMtb25seSk6XG4iCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzoxMDgKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBoYXZlIGJlZW4gdHJpZ2dlcmVkLCBidXQgdGhlIHRyaWdnZXIgcHJvY2Vzc2luZ1xuIgorImhhcyBub3QgeWV0IGJlZW4gZG9uZS4gIFRyaWdnZXIgcHJvY2Vzc2luZyBjYW4gYmUgcmVxdWVzdGVkIHVzaW5nXG4iCisiZHNlbGVjdCBvciBkcGtnIC0tY29uZmlndXJlIC0tcGVuZGluZyAob3IgZHBrZyAtLXRyaWdnZXJzLW9ubHkpOlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTM3IHNyYy9lbnF1aXJ5LmM6MjExIHNyYy9lbnF1aXJ5LmM6MjkyIHNyYy9lbnF1aXJ5LmM6MzczCisjOiBzcmMvZW5xdWlyeS5jOjQ2MCBzcmMvc2VsZWN0LmM6OTggc3JjL3NlbGVjdC5jOjE2NCBzcmMvdHJpZ2NtZC5jOjE5OQorIzogc3JjL3VwZGF0ZS5jOjQ4IHNyYy91cGRhdGUuYzoxMTMgZHBrZy1zcGxpdC9xdWV1ZS5jOjIzMgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIHRha2VzIG5vIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS0lcyBheSBoaW5kaSB0dW1hdGFuZ2dhcCBuZyBtZ2EgYXJndW1lbnRvIgorCisjOiBzcmMvZW5xdWlyeS5jOjE1MgorbXNnaWQgIiIKKyJBbm90aGVyIHByb2Nlc3MgaGFzIGxvY2tlZCB0aGUgZGF0YWJhc2UgZm9yIHdyaXRpbmcsIGFuZCBtaWdodCBjdXJyZW50bHkgYmVcbiIKKyJtb2RpZnlpbmcgaXQsIHNvbWUgb2YgdGhlIGZvbGxvd2luZyBwcm9ibGVtcyBtaWdodCBqdXN0IGJlIGR1ZSB0byB0aGF0LlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTkxCisjLCBmdXp6eQorI3wgbXNnaWQgIjx1bmtub3duPiIKK21zZ2N0eHQgInNlY3Rpb24iCittc2dpZCAiPHVua25vd24+IgorbXNnc3RyICI8ZGkga2lsYWxhPiIKKworIzogc3JjL2VucXVpcnkuYzoyNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiICVkIGluICVzOiAiCittc2dzdHIgIiAlZCBzYSBsb29iIG5nICVzOiAiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MjY2CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIgJWQgcGFja2FnZXMsIGZyb20gdGhlIGZvbGxvd2luZyBzZWN0aW9uczoiCittc2dpZCAiICVkIHBhY2thZ2UsIGZyb20gdGhlIGZvbGxvd2luZyBzZWN0aW9uOiIKK21zZ2lkX3BsdXJhbCAiICVkIHBhY2thZ2VzLCBmcm9tIHRoZSBmb2xsb3dpbmcgc2VjdGlvbnM6IgorbXNnc3RyWzBdICIgJWQgbmEgcGFrZXRlLCBtdWxhIHNhIHN1bXVzdW5vZCBuYSBtZ2Egc2Vrc3lvbjoiCittc2dzdHJbMV0gIiAlZCBuYSBwYWtldGUsIG11bGEgc2Egc3VtdXN1bm9kIG5hIG1nYSBzZWtzeW9uOiIKKworIzogc3JjL2VucXVpcnkuYzozMDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJWZXJzaW9uIG9mIGRwa2cgd2l0aCB3b3JraW5nICVzIHN1cHBvcnQgbm90IHlldCBjb25maWd1cmVkLlxuIgorIiBQbGVhc2UgdXNlICdkcGtnIC0tY29uZmlndXJlIGRwa2cnLCBhbmQgdGhlbiB0cnkgYWdhaW4uXG4iCittc2dzdHIgIiIKKyJCZXJzeW9uIG5nIGRwa2cgbmEgbWF5IGd1bWFnYW5hbmcgc3Vwb3J0YSBzYSBlcG9jaCBheSBoaW5kaSBwYSBuYWthYXlvcy5cbiIKKyIgR2FtaXRpbiBwbyBsYW1hbmcgYW5nIGBkcGtnIC0tY29uZmlndXJlIGRwa2cnLCBhdCBzdWJ1a2FuIG11bGkgbWF0YXBvcyAiCisibml0by5cbiIKKworIzogc3JjL2VucXVpcnkuYzozMTAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImRwa2cgbm90IHJlY29yZGVkIGFzIGluc3RhbGxlZCwgY2Fubm90IGNoZWNrIGZvciAlcyBzdXBwb3J0IVxuIgorbXNnc3RyICIiCisiaGluZGkgbmFrYXRhbGFuZyBuYWthbHVrbG9rIGFuZyBkcGtnLCBoaW5kaSBtYXN1cmkga3VuZyBtYXkgc3Vwb3J0YSBzYSAiCisiZXBvY2ggIVxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjMyMQorbXNnaWQgIlByZS1EZXBlbmRzIGZpZWxkIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzI5Cittc2dpZCAiZXBvY2giCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzozMzcKK21zZ2lkICJsb25nIGZpbGVuYW1lcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZW5xdWlyeS5jOjM0NgorbXNnaWQgIm11bHRpcGxlIENvbmZsaWN0cyBhbmQgUmVwbGFjZXMiCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzo0MzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IGNhbm5vdCBzZWUgaG93IHRvIHNhdGlzZnkgcHJlLWRlcGVuZGVuY3k6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKyJkcGtnOiBoaW5kaSBtYWtpdGEga3VuZyBwYWFubyBtYWF5b3MgYW5nIHByZS1kZXBlbmRlbnNpeWE6XG4iCisiICVzXG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6NDM1CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzYXRpc2Z5IHByZS1kZXBlbmRlbmNpZXMgZm9yICUuMjUwcyAod2FudGVkIGR1ZSB0byAlLjI1MHMpIgorbXNnc3RyICIiCisiaGluZGkgbWFheW9zIGFuZyBwcmUtZGVwZW5kZW5zaXlhIHBhcmEgc2EgJS4yNTBzIChrYWlsYW5nYW4gZGFoaWwgc2EgJS4yNTBzKSIKKworIzogc3JjL2VucXVpcnkuYzo0NzIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIm9ic29sZXRlIG9wdGlvbiAnLS0lcycsIHBsZWFzZSB1c2UgJy0tJXMnIGluc3RlYWQuIgorbXNnc3RyICJCYWJhbGE6IGxhb3MgbmEgb3BzeW9uIGAtLSVzJ1xuIgorCisjOiBzcmMvZW5xdWlyeS5jOjUxOQorbXNnaWQgIiIKKyItLWNvbXBhcmUtdmVyc2lvbnMgdGFrZXMgdGhyZWUgYXJndW1lbnRzOiA8dmVyc2lvbj4gPHJlbGF0aW9uPiA8dmVyc2lvbj4iCittc2dzdHIgIiIKKyItLWNvbXBhcmUtdmVyc2lvbnMgYXkgdHVtYXRhbmdnYXAgbmcgdGF0bG9uZyBhcmd1bWVudG86ICAgPGJlcnN5b24+ICIKKyI8dWduYXlhbj4gPGJlcnN5b24+IgorCisjOiBzcmMvZW5xdWlyeS5jOjUyNAorbXNnaWQgIi0tY29tcGFyZS12ZXJzaW9ucyBiYWQgcmVsYXRpb24iCittc2dzdHIgIi0tY29tcGFyZS12ZXJzaW9ucyBtYWxpbmcgdWduYXlhbiIKKworIzogc3JjL2VucXVpcnkuYzo1Mjkgc3JjL2VucXVpcnkuYzo1MzEgc3JjL2VucXVpcnkuYzo1NDAgc3JjL2VucXVpcnkuYzo1NDIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInZlcnNpb24gJyVzJyBoYXMgYmFkIHN5bnRheDogJXMiCittc2dzdHIgImJlcnN5b24gYXkgbWF5IG1hbGluZyBzeW50YXg6ICVzXG4iCisKKyM6IHNyYy9lcnJvcnMuYzo2MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IGVycm9yIHByb2Nlc3NpbmcgJXMgKC0tJXMpOlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisiJXM6IGVycm9yIHNhIHBhZ3Byb3Nlc28gbmcgJXMgKC0tJXMpOlxuIgorIiAlc1xuIgorCisjOiBzcmMvZXJyb3JzLmM6NjgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJkcGtnOiBmYWlsZWQgdG8gYWxsb2NhdGUgbWVtb3J5IGZvciBuZXcgZW50cnkgaW4gbGlzdCBvZiBmYWlsZWQgcGFja2FnZXMuIgorbXNnaWQgIiIKKyIlczogZmFpbGVkIHRvIGFsbG9jYXRlIG1lbW9yeSBmb3IgbmV3IGVudHJ5IGluIGxpc3Qgb2YgZmFpbGVkIHBhY2thZ2VzOiAlcyIKK21zZ3N0ciAiIgorImRwa2c6IGJpZ28gc2EgcGFnLWFsbG9jYXRlIG5nIG1lbW9yeSBwYXJhIHNhIGJhZ29uZyBlbnRyeSBzYSBsaXN0YWhhbiBuZyAiCisibWdhXG4iCisiIHBha2V0ZW5nIGJpZ28uIgorCisjOiBzcmMvZXJyb3JzLmM6NzkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImRwa2c6IHRvbyBtYW55IGVycm9ycywgc3RvcHBpbmdcbiIKK21zZ2lkICIlczogdG9vIG1hbnkgZXJyb3JzLCBzdG9wcGluZ1xuIgorbXNnc3RyICJkcGtnOiBsYWJpcyBhbmcgZGFtaSBuZyBtZ2EgZXJyb3IsIGh1bWloaW50b1xuIgorCisjOiBzcmMvZXJyb3JzLmM6ODcKK21zZ2lkICJFcnJvcnMgd2VyZSBlbmNvdW50ZXJlZCB3aGlsZSBwcm9jZXNzaW5nOlxuIgorbXNnc3RyICJNYXkgbWdhIGVycm9yIG5hIG5hZ2FuYXAgaGFiYW5nIG5hZ3Byb3Byb3Nlc28gbmc6XG4iCisKKyM6IHNyYy9lcnJvcnMuYzo5NAorbXNnaWQgIlByb2Nlc3Npbmcgd2FzIGhhbHRlZCBiZWNhdXNlIHRoZXJlIHdlcmUgdG9vIG1hbnkgZXJyb3JzLlxuIgorbXNnc3RyICJIaW5pbnRvIGFuZyBwYWdwcm9zZXNvIGRhaGlsIGxhYmlzIGFuZyBkYW1pIG5nIG1nYSBlcnJvci5cbiIKKworIzogc3JjL2Vycm9ycy5jOjEwNQorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlICVzIHdhcyBvbiBob2xkLCBwcm9jZXNzaW5nIGl0IGFueXdheSBhcyB5b3UgcmVxdWVzdGVkXG4iCittc2dzdHIgIiIKKyJBbmcgcGFrZXRlbmcgJXMgYXkgbmFrYS1ob2xkLCBwaW5vcHJvc2VzbyBwYSByaW4gZGFoaWwgc2EgaW55b25nIGhpbGluZ1xuIgorCisjOiBzcmMvZXJyb3JzLmM6MTA5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJQYWNrYWdlICVzIGlzIG9uIGhvbGQsIG5vdCB0b3VjaGluZyBpdC4gIFVzZSAtLWZvcmNlLWhvbGQgdG8gb3ZlcnJpZGUuXG4iCittc2dzdHIgIiIKKyJBbmcgcGFrZXRlbmcgJXMgYXkgbmFrYS1ob2xkLCBoaW5kaSBnYWdhbGF3aW4uIEdhbWl0aW4gYW5nIC0tZm9yY2UtaG9sZCAiCisidXBhbmdcbiIKKyJtYS1vdmVycmlkZS5cbiIKKworIzogc3JjL2Vycm9ycy5jOjExOQorIywgZnV6enkKK21zZ2lkICJvdmVycmlkaW5nIHByb2JsZW0gYmVjYXVzZSAtLWZvcmNlIGVuYWJsZWQ6IgorbXNnc3RyICIiCisiZHBrZyAtIGJhYmFsYSwgcHJvYmxlbWEgc2EgcGFnLW92ZXJyaWRlIGRhaGlsIC0tZm9yY2UgYXkgbmFrYS1lbmFibGU6XG4iCisiICIKKworIzogc3JjL2ZpbGVzZGIuYzozMDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlIGAlLjI1MHMnIgorbXNnc3RyICIiCisiaGluZGkgbWFidWtzYW4gYW5nIHRhbGFrc2FuIG5nIGxpc3RhaGFuIG5nIHRhbGFrc2FuIHBhcmEgc2EgcGFrZXRlbmcgYCUuMjUwcyciCisKKyM6IHNyYy9maWxlc2RiLmM6MzExCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlIGAlLjI1MHMnIG1pc3NpbmcsIGFzc3VtaW5nIHBhY2thZ2UgaGFzIG5vIGZpbGVzICIKKyJjdXJyZW50bHkgaW5zdGFsbGVkLiIKK21zZ3N0ciAiIgorImRwa2c6IG1hYmlnYXQgbmEgYmFiYWxhOiBhbmcgdGFsYWtzYW4gbmcgbGlzdGFoYW4gbmcgdGFsYWtzYW4gcGFyYSBzYSAiCisicGFrZXRlbmcgYCUuMjUwcycgYXkgbmF3YXdhbGEsIGlwaW5hZ3BhcGFsYWdheSBuYSBhbmcgcGFrZXRlIGF5IHdhbGFuZyBtZ2EgIgorInRhbGFrc2FuIG5hIGthc2FsdWt1eWFuZyBuYWthbHVrbG9rLlxuIgorCisjOiBzcmMvZmlsZXNkYi5jOjMyMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICclLjI1MHMnIgorbXNnc3RyICIiCisiaGluZGkgbWFidWtzYW4gYW5nIHRhbGFrc2FuIG5nIGxpc3RhaGFuIG5nIHRhbGFrc2FuIHBhcmEgc2EgcGFrZXRlbmcgYCUuMjUwcyciCisKKyM6IHNyYy9maWxlc2RiLmM6MzMwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlcyBsaXN0IGZvciBwYWNrYWdlIGAlLjI1MHMnIgorbXNnaWQgInJlYWRpbmcgZmlsZXMgbGlzdCBmb3IgcGFja2FnZSAnJS4yNTBzJyIKK21zZ3N0ciAibGlzdGFoYW4gbmcgdGFsYWtzYW4gcGFyYSBzYSBwYWtldGUgYCUuMjUwcyciCisKKyM6IHNyYy9maWxlc2RiLmM6MzM2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJyUuMjUwcycgaXMgbWlzc2luZyBmaW5hbCBuZXdsaW5lIgorbXNnc3RyICIiCisidGFsYWtzYW4gbmcgbGlzdGFoYW4gbmcgbWdhIHRhbGFrc2FuIG5nIHBha2V0ZSBgJS4yNTBzJyBheSBuYWdsYWxhbWFuIG5nXG4iCisicGFuZ2FsYW4gbmEgYmxhbmtvIgorCisjOiBzcmMvZmlsZXNkYi5jOjM0NAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcycgY29udGFpbnMgZW1wdHkgZmlsZW5hbWUiCittc2dzdHIgIiIKKyJ0YWxha3NhbiBuZyBsaXN0YWhhbiBuZyBtZ2EgdGFsYWtzYW4gbmcgcGFrZXRlIGAlLjI1MHMnIGF5IG5hZ2xhbGFtYW4gbmdcbiIKKyJwYW5nYWxhbiBuYSBibGFua28iCisKKyM6IHNyYy9maWxlc2RiLmM6MzUyCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlIGAlLjI1MHMnIgorbXNnc3RyICIiCisiZXJyb3Igc2EgcGFnc2FyYSBuZyB0YWxha3NhbmcgbGlzdGFoYW4gbmcgbWdhIHRhbGFrc2FuIG5nIHBha2V0ZSBgJS4yNTBzJyIKKworIzogc3JjL2ZpbGVzZGIuYzo0NjIKK21zZ2lkICIoUmVhZGluZyBkYXRhYmFzZSAuLi4gIgorbXNnc3RyICIoQmluYWJhc2EgYW5nIGRhdGFiYXNlIC4uLiAiCisKKyM6IHNyYy9maWxlc2RiLmM6NDgzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIlZCBmaWxlcyBhbmQgZGlyZWN0b3JpZXMgY3VycmVudGx5IGluc3RhbGxlZC4pXG4iCittc2dpZCAiJWQgZmlsZSBvciBkaXJlY3RvcnkgY3VycmVudGx5IGluc3RhbGxlZC4pXG4iCittc2dpZF9wbHVyYWwgIiVkIGZpbGVzIGFuZCBkaXJlY3RvcmllcyBjdXJyZW50bHkgaW5zdGFsbGVkLilcbiIKK21zZ3N0clswXSAiJWQgbmEgdGFsYWtzYW4gYXQgZGlyZWN0b3J5IGF5IGthc2FsdWt1eWFuZyBuYWthbHVrbG9rLilcbiIKK21zZ3N0clsxXSAiJWQgbmEgdGFsYWtzYW4gYXQgZGlyZWN0b3J5IGF5IGthc2FsdWt1eWFuZyBuYWthbHVrbG9rLilcbiIKKworIzogc3JjL2ZpbGVzZGIuYzo1MTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAiaGluZGkgbWFsaWtoYSBhbmcgcGluYWthYmFnb25nIGxpc3RhaGFuIG5nIHRhbGFrc2FuIG5nIHBha2V0ZW5nICVzIgorCisjOiBzcmMvZmlsZXNkYi5jOjUyNgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgdG8gdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgImJpZ28gc2EgcGFnc3VsYXQgc2EgcGluYWthYmFnb25nIGxpc3RhaGFuIG5nIHRhbGFrc2FuIG5nIHBha2V0ZW5nICVzIgorCisjOiBzcmMvZmlsZXNkYi5jOjUyOAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZmx1c2ggdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgImJpZ28gc2EgcGFnLWZsdXNoIG5nIHBpbmFrYWJhZ29uZyBsaXN0YWhhbiBuZyB0YWxha3NhbiBuZyBwYWtldGVuZyAlcyIKKworIzogc3JjL2ZpbGVzZGIuYzo1MzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHN5bmMgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgImJpZ28gc2EgcGFnLXN5bmMgbmcgcGluYWthYmFnb25nIGxpc3RhaGFuIG5nIHRhbGFrc2FuIG5nIHBha2V0ZW5nICVzIgorCisjOiBzcmMvZmlsZXNkYi5jOjUzMworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2xvc2UgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgImJpZ28gc2EgcGFnc2FyYSBuZyBwaW5ha2FiYWdvbmcgbGlzdGFoYW4gbmcgdGFsYWtzYW4gbmcgcGFrZXRlbmcgJXMiCisKKyM6IHNyYy9maWxlc2RiLmM6NTM1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBpbnN0YWxsIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICJiaWdvIHNhIHBhZ2x1a2xvayBuZyBwaW5ha2FiYWdvbmcgbGlzdGFoYW4gbmcgdGFsYWtzYW4gbmcgcGFrZXRlbmcgJXMiCisKKyM6IHNyYy9oZWxwLmM6NDgKK21zZ2lkICJub3QgaW5zdGFsbGVkIgorbXNnc3RyICJoaW5kaSBuYWthbHVrbG9rIgorCisjOiBzcmMvaGVscC5jOjQ5Cittc2dpZCAibm90IGluc3RhbGxlZCBidXQgY29uZmlncyByZW1haW4iCittc2dzdHIgImhpbmRpIG5ha2FsdWtsb2sgbmd1bml0IG5haXdhbiBhbmcgcGFna2FheW9zIgorCisjOiBzcmMvaGVscC5jOjUwCisjLCBmdXp6eQorbXNnaWQgImJyb2tlbiBkdWUgdG8gZmFpbGVkIHJlbW92YWwgb3IgaW5zdGFsbGF0aW9uIgorbXNnc3RyICJzaXJhIGRhaGlsIHNhIGJpZ29uZyBwYWd0YW5nZ2FsIgorCisjOiBzcmMvaGVscC5jOjUxCittc2dpZCAidW5wYWNrZWQgYnV0IG5vdCBjb25maWd1cmVkIgorbXNnc3RyICJuYWthYnVrbGF0IHBlcm8gaGluZGkgbmFrYWF5b3MiCisKKyM6IHNyYy9oZWxwLmM6NTIKK21zZ2lkICJicm9rZW4gZHVlIHRvIHBvc3RpbnN0IGZhaWx1cmUiCittc2dzdHIgInNpcmEgZGFoaWwgc2Ega2FiaWdvYW5nIHBvc3RpbnN0IgorCisjOiBzcmMvaGVscC5jOjUzCittc2dpZCAiYXdhaXRpbmcgdHJpZ2dlciBwcm9jZXNzaW5nIGJ5IGFub3RoZXIgcGFja2FnZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvaGVscC5jOjU0Cittc2dpZCAidHJpZ2dlcmVkIgorbXNnc3RyICIiCisKKyM6IHNyYy9oZWxwLmM6NTUKK21zZ2lkICJpbnN0YWxsZWQiCittc2dzdHIgIm5ha2FsdWtsb2siCisKKyM6IHNyYy9oZWxwLmM6MTA3CisjLCBmdXp6eQorbXNnaWQgIlBBVEggaXMgbm90IHNldC4iCittc2dzdHIgImRwa2cgLSBlcnJvcjogaGluZGkgbmFrYXRha2RhIGFuZyBQQVRILlxuIgorCisjOiBzcmMvaGVscC5jOjEyOQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS4iCittc2dzdHIgImRwa2c6IGAlcycgaGluZGkgbmFoYW5hcCBzYSBQQVRILlxuIgorCisjOiBzcmMvaGVscC5jOjEzOAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIiVkIGV4cGVjdGVkIHByb2dyYW0gbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuXG4iCisiJXMiCittc2dpZF9wbHVyYWwgIiIKKyIlZCBleHBlY3RlZCBwcm9ncmFtcyBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS5cbiIKKyIlcyIKK21zZ3N0clswXSAiZHBrZzogYCVzJyBoaW5kaSBuYWhhbmFwIHNhIFBBVEguXG4iCittc2dzdHJbMV0gImRwa2c6IGAlcycgaGluZGkgbmFoYW5hcCBzYSBQQVRILlxuIgorCisjOiBzcmMvaGVscC5jOjE0MQorIywgZnV6enkKK21zZ2lkICIiCisiTm90ZTogcm9vdCdzIFBBVEggc2hvdWxkIHVzdWFsbHkgY29udGFpbiAvdXNyL2xvY2FsL3NiaW4sIC91c3Ivc2JpbiBhbmQgLyIKKyJzYmluLiIKK21zZ3N0ciAiIgorIiVkIG5hIGluYWFzYWhhbmcgcHJvZ3JhbWEgYXkgaGluZGkgbmFoYW5hcCBzYSBQQVRILlxuIgorIk5COiBhbmcgUEFUSCBuaSByb290IGF5IG1hZGFsYXMga2FzYW1hIGFuZyAvdXNyL2xvY2FsL3NiaW4sIC91c3Ivc2JpbiBhdCAvIgorInNiaW4uIgorCisjOiBzcmMvaGVscC5jOjE4OAorbXNnaWQgImFkbWluZGlyIG11c3QgYmUgaW5zaWRlIGluc3RkaXIgZm9yIGRwa2cgdG8gd29yayBwcm9wZXJseSIKK21zZ3N0ciAiIgorCisjOiBzcmMvaGVscC5jOjE5MCBzcmMvbWFpbi5jOjc0NworIywgZnV6enkKK21zZ2lkICJ1bmFibGUgdG8gc2V0ZW52IGZvciBzdWJwcm9jZXNzZXMiCittc2dzdHIgImhpbmTDriBtYWthLXN0YXQgc2EgdnNucHJpbnRmIgorCisjOiBzcmMvaGVscC5jOjE5MgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2hyb290IHRvIGAlLjI1MHMnIgorbXNnc3RyICJiaWdvIHNhIHBhZy1jaHJvb3Qgc2EgYCUuMjUwcyciCisKKyM6IHNyYy9oZWxwLmM6MTk0IGRwa2ctZGViL2J1aWxkLmM6NDU1IGRwa2ctZGViL2J1aWxkLmM6NDU3CisjOiBkcGtnLWRlYi9idWlsZC5jOjUzNiBkcGtnLWRlYi9idWlsZC5jOjU1OAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gYCUuMjU1cyciCittc2dzdHIgImJpZ28gc2EgcGFnLWNoZGlyIHNhIGAlLjI1NXMnIgorCisjOiBzcmMvaGVscC5jOjI1NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IGV4ZWN1dGUgcGVybWlzc2lvbnMgb24gYCUuMjUwcyciCittc2dzdHIgImhpbmRpIG1hdGFrZGEgYW5nIHBhaGludHVsb3QgbmcgcGFnLWV4ZWN1dGUgc2EgYCUuMjUwcyciCisKKyM6IHNyYy9oZWxwLmM6Mjc2CisjLCBmdXp6eQorbXNnaWQgInVuYWJsZSB0byBzZXRlbnYgZm9yIG1haW50YWluZXIgc2NyaXB0IgorbXNnc3RyICJoaW5kw64gbWFrYS1zdGF0IHNhIHZzbnByaW50ZiIKKworIzogc3JjL2hlbHAuYzozMDAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImluc3RhbGxlZCAlcyBzY3JpcHQiCittc2dzdHIgImx1bWFuZyAlcyBza3JpcHRvIgorCisjOiBzcmMvaGVscC5jOjMxMyBzcmMvaGVscC5jOjM4MiBzcmMvaGVscC5jOjQ0MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCAlcyBgJS4yNTBzJyIKK21zZ3N0ciAiaGluZGkgbWEtc3RhdCBhbmcgJXMgYCUuMjUwcyciCisKKyM6IHNyYy9oZWxwLmM6MzY4IHNyYy9oZWxwLmM6NDI4CisjLCBjLWZvcm1hdAorbXNnaWQgIm5ldyAlcyBzY3JpcHQiCittc2dzdHIgImJhZ29uZyAlcyBza3JpcHRvIgorCisjOiBzcmMvaGVscC5jOjQwMgorIywgYy1mb3JtYXQKK21zZ2lkICJvbGQgJXMgc2NyaXB0IgorbXNnc3RyICJsdW1hbmcgJXMgc2tyaXB0byIKKworIzogc3JjL2hlbHAuYzo0MTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0ICVzICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiaGluZGkgbWEtc3RhdCBhbmcgJXMgYCUuMjUwcyciCisKKyM6IHNyYy9oZWxwLmM6NDI1CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2cgLSB0cnlpbmcgc2NyaXB0IGZyb20gdGhlIG5ldyBwYWNrYWdlIGluc3RlYWQgLi4uXG4iCittc2dzdHIgIiIKKyJkcGtnIC0gc2ludXN1YnVrYW4gbmEgbGFtYW5nIGFuZyBza3JpcHRvIG11bGEgc2EgYmFnb25nIHBha2V0ZSBzYSBoYWxpcCAuLi5cbiIKKworIzogc3JjL2hlbHAuYzo0MzkKK21zZ2lkICJ0aGVyZSBpcyBubyBzY3JpcHQgaW4gdGhlIG5ldyB2ZXJzaW9uIG9mIHRoZSBwYWNrYWdlIC0gZ2l2aW5nIHVwIgorbXNnc3RyICJ3YWxhbmcgc2tyaXB0byBzYSBiYWdvbmcgYmVyc3lvbiBuZyBwYWtldGUgLSBzdW11c3VrbyBuYSIKKworIzogc3JjL2hlbHAuYzo0NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogLi4uIGl0IGxvb2tzIGxpa2UgdGhhdCB3ZW50IE9LLlxuIgorbXNnc3RyICJkcGtnOiAuLi4gbXVraGFuZyBheW9zIG5hbWFuIGFuZyBuYW5neWFyaS5cbiIKKworIzogc3JjL2hlbHAuYzo2MTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWN1cmVseSByZW1vdmUgJyUuMjU1cyciCittc2dzdHIgImhpbmRpIG1hbGlraGEgYW5nIGAlLjI1NXMnIgorCisjOiBzcmMvaGVscC5jOjYyMSBkcGtnLWRlYi9pbmZvLmM6NjUgZHBrZy1kZWIvaW5mby5jOjY3Cittc2dpZCAicm0gY29tbWFuZCBmb3IgY2xlYW51cCIKK21zZ3N0ciAiIgorCisjOiBzcmMvaW5mb2RiLmM6NTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoZWNrIGV4aXN0ZW5jZSBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiaGluZGkgbWF0aXlhayBhbmcgcGFna2FrYXJvb24gbmcgYCUuMjUwcyciCisKKyM6IHNyYy9pbmZvZGIuYzo3MAorbXNnaWQgImNhbm5vdCByZWFkIGluZm8gZGlyZWN0b3J5IgorbXNnc3RyICJoaW5kaSBtYWJhc2EgYW5nIGluZm8gZGlyZWN0b3J5IgorCisjOiBzcmMvbWFpbi5jOjYwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIG1hbmFnZW1lbnQgcHJvZ3JhbSB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICInIHByb2dyYW1hbmcgdGFnYXBhbmdhc2l3YSBuZyBtZ2EgcGFrZXRlLCBiZXJzeW9uICIKKworIzogc3JjL21haW4uYzo4NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtaXwtLWluc3RhbGwgICAgICAgPC5kZWIgZmlsZSBuYW1lPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyZWN0b3J5PiAuLi5cbiIKKyIgIC0tdW5wYWNrICAgICAgICAgICA8LmRlYiBmaWxlIG5hbWU+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXJlY3Rvcnk+IC4uLlxuIgorIiAgLUF8LS1yZWNvcmQtYXZhaWwgIDwuZGViIGZpbGUgbmFtZT4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRpcmVjdG9yeT4gLi4uXG4iCisiICAtLWNvbmZpZ3VyZSAgICAgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLS10cmlnZ2Vycy1vbmx5ICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC1yfC0tcmVtb3ZlICAgICAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtUHwtLXB1cmdlICAgICAgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLS1nZXQtc2VsZWN0aW9ucyBbPHBhdHRlcm4+IC4uLl0gR2V0IGxpc3Qgb2Ygc2VsZWN0aW9ucyB0byBzdGRvdXQuXG4iCisiICAtLXNldC1zZWxlY3Rpb25zICAgICAgICAgICAgICAgICBTZXQgcGFja2FnZSBzZWxlY3Rpb25zIGZyb20gc3RkaW4uXG4iCisiICAtLWNsZWFyLXNlbGVjdGlvbnMgICAgICAgICAgICAgICBEZXNlbGVjdCBldmVyeSBub24tZXNzZW50aWFsIHBhY2thZ2UuXG4iCisiICAtLXVwZGF0ZS1hdmFpbCA8UGFja2FnZXMtZmlsZT4gICBSZXBsYWNlIGF2YWlsYWJsZSBwYWNrYWdlcyBpbmZvLlxuIgorIiAgLS1tZXJnZS1hdmFpbCA8UGFja2FnZXMtZmlsZT4gICAgTWVyZ2Ugd2l0aCBpbmZvIGZyb20gZmlsZS5cbiIKKyIgIC0tY2xlYXItYXZhaWwgICAgICAgICAgICAgICAgICAgIEVyYXNlIGV4aXN0aW5nIGF2YWlsYWJsZSBpbmZvLlxuIgorIiAgLS1mb3JnZXQtb2xkLXVuYXZhaWwgICAgICAgICAgICAgRm9yZ2V0IHVuaW5zdGFsbGVkIHVuYXZhaWxhYmxlIHBrZ3MuXG4iCisiICAtc3wtLXN0YXR1cyA8cGFja2FnZT4gLi4uICAgICAgICBEaXNwbGF5IHBhY2thZ2Ugc3RhdHVzIGRldGFpbHMuXG4iCisiICAtcHwtLXByaW50LWF2YWlsIDxwYWNrYWdlPiAuLi4gICBEaXNwbGF5IGF2YWlsYWJsZSB2ZXJzaW9uIGRldGFpbHMuXG4iCisiICAtTHwtLWxpc3RmaWxlcyA8cGFja2FnZT4gLi4uICAgICBMaXN0IGZpbGVzIGBvd25lZCcgYnkgcGFja2FnZShzKS5cbiIKKyIgIC1sfC0tbGlzdCBbPHBhdHRlcm4+IC4uLl0gICAgICAgIExpc3QgcGFja2FnZXMgY29uY2lzZWx5LlxuIgorIiAgLVN8LS1zZWFyY2ggPHBhdHRlcm4+IC4uLiAgICAgICAgRmluZCBwYWNrYWdlKHMpIG93bmluZyBmaWxlKHMpLlxuIgorIiAgLUN8LS1hdWRpdCAgICAgICAgICAgICAgICAgICAgICAgQ2hlY2sgZm9yIGJyb2tlbiBwYWNrYWdlKHMpLlxuIgorIiAgLS1wcmludC1hcmNoaXRlY3R1cmUgICAgICAgICAgICAgUHJpbnQgZHBrZyBhcmNoaXRlY3R1cmUuXG4iCisiICAtLWNvbXBhcmUtdmVyc2lvbnMgPGE+IDxvcD4gPGI+ICBDb21wYXJlIHZlcnNpb24gbnVtYmVycyAtIHNlZSBiZWxvdy5cbiIKKyIgIC0tZm9yY2UtaGVscCAgICAgICAgICAgICAgICAgICAgIFNob3cgaGVscCBvbiBmb3JjaW5nLlxuIgorIiAgLURofC0tZGVidWc9aGVscCAgICAgICAgICAgICAgICAgU2hvdyBoZWxwIG9uIGRlYnVnZ2luZy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjExMyBzcmMvcXVlcnljbWQuYzo2MzEgc3JjL3RyaWdjbWQuYzo3NyBkcGtnLWRlYi9tYWluLmM6ODgKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjc3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIgIC1ofC0taGVscCAgICAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgICAgICAgICBTaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MTE4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJVc2UgZHBrZyAtYnwtLWJ1aWxkfC1jfC0tY29udGVudHN8LWV8LS1jb250cm9sfC1JfC0taW5mb3wtZnwtLWZpZWxkfFxuIgorIiAteHwtLWV4dHJhY3R8LVh8LS12ZXh0cmFjdHwtLWZzeXMtdGFyZmlsZSAgb24gYXJjaGl2ZXMgKHR5cGUgJXMgLS1oZWxwKS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjEyMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiRm9yIGludGVybmFsIHVzZTogZHBrZyAtLWFzc2VydC1zdXBwb3J0LXByZWRlcGVuZHMgfCAtLXByZWRlcC1wYWNrYWdlIHxcbiIKKyIgIC0tYXNzZXJ0LXdvcmtpbmctZXBvY2ggfCAtLWFzc2VydC1sb25nLWZpbGVuYW1lcyB8IC0tYXNzZXJ0LW11bHRpLWNvbnJlcC5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjEyOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT4gICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorIiAgLS1yb290PTxkaXJlY3Rvcnk+ICAgICAgICAgSW5zdGFsbCBvbiBhIGRpZmZlcmVudCByb290IGRpcmVjdG9yeS5cbiIKKyIgIC0taW5zdGRpcj08ZGlyZWN0b3J5PiAgICAgIENoYW5nZSBpbnN0YWxsYXRpb24gZGlyIHdpdGhvdXQgY2hhbmdpbmcgYWRtaW4gIgorImRpci5cbiIKKyIgIC0tcGF0aC1leGNsdWRlPTxwYXR0ZXJuPiAgIERvIG5vdCBpbnN0YWxsIHBhdGhzIHdoaWNoIG1hdGNoIGEgc2hlbGwgIgorInBhdHRlcm4uXG4iCisiICAtLXBhdGgtaW5jbHVkZT08cGF0dGVybj4gICBSZS1pbmNsdWRlIGEgcGF0dGVybiBhZnRlciBhIHByZXZpb3VzICIKKyJleGNsdXNpb24uXG4iCisiICAtT3wtLXNlbGVjdGVkLW9ubHkgICAgICAgICBTa2lwIHBhY2thZ2VzIG5vdCBzZWxlY3RlZCBmb3IgaW5zdGFsbC8iCisidXBncmFkZS5cbiIKKyIgIC1FfC0tc2tpcC1zYW1lLXZlcnNpb24gICAgIFNraXAgcGFja2FnZXMgd2hvc2Ugc2FtZSB2ZXJzaW9uIGlzIGluc3RhbGxlZC5cbiIKKyIgIC1HfC0tcmVmdXNlLWRvd25ncmFkZSAgICAgIFNraXAgcGFja2FnZXMgd2l0aCBlYXJsaWVyIHZlcnNpb24gdGhhbiAiCisiaW5zdGFsbGVkLlxuIgorIiAgLUJ8LS1hdXRvLWRlY29uZmlndXJlICAgICAgSW5zdGFsbCBldmVuIGlmIGl0IHdvdWxkIGJyZWFrIHNvbWUgb3RoZXIgIgorInBhY2thZ2UuXG4iCisiICAtLVtuby1ddHJpZ2dlcnMgICAgICAgICAgICBTa2lwIG9yIGZvcmNlIGNvbnNlcXVlbnRpYWwgdHJpZ2dlciAiCisicHJvY2Vzc2luZy5cbiIKKyIgIC0tbm8tZGVic2lnICAgICAgICAgICAgICAgIERvIG5vdCB0cnkgdG8gdmVyaWZ5IHBhY2thZ2Ugc2lnbmF0dXJlcy5cbiIKKyIgIC0tbm8tYWN0fC0tZHJ5LXJ1bnwtLXNpbXVsYXRlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBKdXN0IHNheSB3aGF0IHdlIHdvdWxkIGRvIC0gZG9uJ3QgZG8gaXQuXG4iCisiICAtRHwtLWRlYnVnPTxvY3RhbD4gICAgICAgICBFbmFibGUgZGVidWdnaW5nIChzZWUgLURoZWxwIG9yIC0tZGVidWc9aGVscCkuXG4iCisiICAtLXN0YXR1cy1mZCA8bj4gICAgICAgICAgICBTZW5kIHN0YXR1cyBjaGFuZ2UgdXBkYXRlcyB0byBmaWxlIGRlc2NyaXB0b3IgIgorIjxuPi5cbiIKKyIgIC0tbG9nPTxmaWxlbmFtZT4gICAgICAgICAgIExvZyBzdGF0dXMgY2hhbmdlcyBhbmQgYWN0aW9ucyB0byA8ZmlsZW5hbWU+LlxuIgorIiAgLS1pZ25vcmUtZGVwZW5kcz08cGFja2FnZT4sLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZ25vcmUgZGVwZW5kZW5jaWVzIGludm9sdmluZyA8cGFja2FnZT4uXG4iCisiICAtLWZvcmNlLS4uLiAgICAgICAgICAgICAgICBPdmVycmlkZSBwcm9ibGVtcyAoc2VlIC0tZm9yY2UtaGVscCkuXG4iCisiICAtLW5vLWZvcmNlLS4uLnwtLXJlZnVzZS0uLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3Agd2hlbiBwcm9ibGVtcyBlbmNvdW50ZXJlZC5cbiIKKyIgIC0tYWJvcnQtYWZ0ZXIgPG4+ICAgICAgICAgIEFib3J0IGFmdGVyIGVuY291bnRlcmluZyA8bj4gZXJyb3JzLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MTU0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21wYXJpc29uIG9wZXJhdG9ycyBmb3IgLS1jb21wYXJlLXZlcnNpb25zIGFyZTpcbiIKKyIgIGx0IGxlIGVxIG5lIGdlIGd0ICAgICAgICh0cmVhdCBlbXB0eSB2ZXJzaW9uIGFzIGVhcmxpZXIgdGhhbiBhbnkgIgorInZlcnNpb24pO1xuIgorIiAgbHQtbmwgbGUtbmwgZ2UtbmwgZ3QtbmwgKHRyZWF0IGVtcHR5IHZlcnNpb24gYXMgbGF0ZXIgdGhhbiBhbnkgdmVyc2lvbik7XG4iCisiICA8IDw8IDw9ID0gPj0gPj4gPiAgICAgICAob25seSBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIGNvbnRyb2wgZmlsZSAiCisic3ludGF4KS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjE2MQorIywgYy1mb3JtYXQKK21zZ2lkICJVc2UgYGRzZWxlY3QnIG9yIGBhcHRpdHVkZScgZm9yIHVzZXItZnJpZW5kbHkgcGFja2FnZSBtYW5hZ2VtZW50LlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MTcwCisjLCBmdXp6eQorbXNnaWQgIiIKKyJUeXBlIGRwa2cgLS1oZWxwIGZvciBoZWxwIGFib3V0IGluc3RhbGxpbmcgYW5kIGRlaW5zdGFsbGluZyBwYWNrYWdlcyBbKl07XG4iCisiVXNlIGBkc2VsZWN0JyBvciBgYXB0aXR1ZGUnIGZvciB1c2VyLWZyaWVuZGx5IHBhY2thZ2UgbWFuYWdlbWVudDtcbiIKKyJUeXBlIGRwa2cgLURoZWxwIGZvciBhIGxpc3Qgb2YgZHBrZyBkZWJ1ZyBmbGFnIHZhbHVlcztcbiIKKyJUeXBlIGRwa2cgLS1mb3JjZS1oZWxwIGZvciBhIGxpc3Qgb2YgZm9yY2luZyBvcHRpb25zO1xuIgorIlR5cGUgZHBrZy1kZWIgLS1oZWxwIGZvciBoZWxwIGFib3V0IG1hbmlwdWxhdGluZyAqLmRlYiBmaWxlcztcbiIKKyJcbiIKKyJPcHRpb25zIG1hcmtlZCBbKl0gcHJvZHVjZSBhIGxvdCBvZiBvdXRwdXQgLSBwaXBlIGl0IHRocm91Z2ggYGxlc3MnIG9yICIKKyJgbW9yZScgISIKK21zZ3N0ciAiIgorIkktdHlwZSBhbmcgZHBrZyAtLWhlbHAgcGFyYSBzYSB0dWxvbmcgdHVuZ2tvbCBzYSBwYWdsdWtsb2sgYXQgcGFndGFuZ2dhbCBuZyAiCisibWdhIHBha2V0ZSBbKl07XG4iCisiR2FtaXRpbiBhbmcgZHNlbGVjdCBwYXJhIHNhIG1hc21hZGFsaW5nIHRhZ2FwYW5nYXNpd2EgbmcgbWdhIHBha2V0ZTtcbiIKKyJkcGtnIC1EaGVscCBwYXJhIHNhIGxpc3RhaGFuIG5nIG1nYSBoYWxhZ2EgbmcgZHBrZyBkZWJ1ZyBmbGFnO1xuIgorImRwa2cgLS1mb3JjZS1oZWxwIHBhcmEgc2EgbGlzdGFoYW4gbmcgbWdhIG9wc3lvbiBuZyBwYWdwaWxpdDtcbiIKKyJkcGtnLWRlYiAtLWhlbHAgcGFyYSBzYSB0dWxvbmcgdHVuZ2tvbCBzYSBwYWctbWFuaXB1bGEgbmcgdGFsYWtzYW5nICouZGViO1xuIgorImRwa2cgLS1saWNlbmNlIHBhcmEgc2Ega2FyYXBhdGFuZyBzaXBpLCBsaXNlbnNpeWEgYXQga2FrdWxhbmdhbiBuZyB3YXJhbnRpXG4iCisiICAoR05VIEdQTCkgWypdLlxuIgorIlxuIgorIk1nYSBvcHN5b24gbmEgbWF5IG1hcmthbmcgWypdIGF5IG5hZ3BhcGFraXRhIG5nIG1hcmFtaW5nIG91dHB1dCAtIGktcGlwZSBpdG8gIgorInNhIGBsZXNzJyBvIGBtb3JlJyAhIgorCisjOiBzcmMvbWFpbi5jOjIxOQorbXNnaWQgIlNldCBhbGwgZm9yY2Ugb3B0aW9ucyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIyMQorbXNnaWQgIlJlcGxhY2UgYSBwYWNrYWdlIHdpdGggYSBsb3dlciB2ZXJzaW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjIzCittc2dpZCAiQ29uZmlndXJlIGFueSBwYWNrYWdlIHdoaWNoIG1heSBoZWxwIHRoaXMgb25lIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjI1Cittc2dpZCAiUHJvY2VzcyBpbmNpZGVudGFsIHBhY2thZ2VzIGV2ZW4gd2hlbiBvbiBob2xkIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjI3Cittc2dpZCAiVHJ5IHRvIChkZSlpbnN0YWxsIHRoaW5ncyBldmVuIHdoZW4gbm90IHJvb3QiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjkKK21zZ2lkICJQQVRIIGlzIG1pc3NpbmcgaW1wb3J0YW50IHByb2dyYW1zLCBwcm9ibGVtcyBsaWtlbHkiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzEKK21zZ2lkICJJbnN0YWxsIGEgcGFja2FnZSBldmVuIGlmIGl0IGZhaWxzIGF1dGhlbnRpY2l0eSBjaGVjayIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzMworbXNnaWQgIlByb2Nlc3MgZXZlbiBwYWNrYWdlcyB3aXRoIHdyb25nIHZlcnNpb25zIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjM1Cittc2dpZCAiT3ZlcndyaXRlIGEgZmlsZSBmcm9tIG9uZSBwYWNrYWdlIHdpdGggYW5vdGhlciIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzNworbXNnaWQgIk92ZXJ3cml0ZSBhIGRpdmVydGVkIGZpbGUgd2l0aCBhbiB1bmRpdmVydGVkIHZlcnNpb24iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzkKK21zZ2lkICJPdmVyd3JpdGUgb25lIHBhY2thZ2UncyBkaXJlY3Rvcnkgd2l0aCBhbm90aGVyJ3MgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI0MQorbXNnaWQgIkRvIG5vdCBwZXJmb3JtIHNhZmUgSS9PIG9wZXJhdGlvbnMgd2hlbiB1bnBhY2tpbmciCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDMKK21zZ2lkICJBbHdheXMgdXNlIHRoZSBuZXcgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDUKK21zZ2lkICJBbHdheXMgdXNlIHRoZSBvbGQgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDgKK21zZ2lkICIiCisiVXNlIHRoZSBkZWZhdWx0IG9wdGlvbiBmb3IgbmV3IGNvbmZpZyBmaWxlcyBpZiBvbmVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgaXMgYXZhaWxhYmxlLCBkb24ndCBwcm9tcHQuIElmIG5vIGRlZmF1bHQgY2FuIGJlICIKKyJmb3VuZCxcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgeW91IHdpbGwgYmUgcHJvbXB0ZWQgdW5sZXNzIG9uZSBvZiB0aGUgY29uZm9sZCBvclxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICBjb25mbmV3IG9wdGlvbnMgaXMgYWxzbyBnaXZlbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI1MworbXNnaWQgIkFsd2F5cyBpbnN0YWxsIG1pc3NpbmcgY29uZmlnIGZpbGVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjU1Cittc2dpZCAiT2ZmZXIgdG8gcmVwbGFjZSBjb25maWcgZmlsZXMgd2l0aCBubyBuZXcgdmVyc2lvbnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNTcKK21zZ2lkICJQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyBvciBubyBhcmNoaXRlY3R1cmUiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNTkKK21zZ2lkICJJbnN0YWxsIGV2ZW4gaWYgaXQgd291bGQgYnJlYWsgYW5vdGhlciBwYWNrYWdlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjYxCittc2dpZCAiQWxsb3cgaW5zdGFsbGF0aW9uIG9mIGNvbmZsaWN0aW5nIHBhY2thZ2VzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjYzCisjLCBmdXp6eQorI3wgbXNnaWQgImRlcGVuZGVuY3kgcHJvYmxlbXMgLSBub3QgcmVtb3ZpbmciCittc2dpZCAiVHVybiBhbGwgZGVwZW5kZW5jeSBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzIgorbXNnc3RyICJwcm9ibGVtYSBzYSBkZXBlbmRlbnNpeWEgLSBoaW5kaSB0YXRhbmdnYWxpbiIKKworIzogc3JjL21haW4uYzoyNjUKKyMsIGZ1enp5CisjfCBtc2dpZCAiZGVwZW5kZW5jeSBwcm9ibGVtcyAtIG5vdCByZW1vdmluZyIKK21zZ2lkICJUdXJuIGRlcGVuZGVuY3kgdmVyc2lvbiBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzIgorbXNnc3RyICJwcm9ibGVtYSBzYSBkZXBlbmRlbnNpeWEgLSBoaW5kaSB0YXRhbmdnYWxpbiIKKworIzogc3JjL21haW4uYzoyNjcKK21zZ2lkICJSZW1vdmUgcGFja2FnZXMgd2hpY2ggcmVxdWlyZSBpbnN0YWxsYXRpb24iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNjkKK21zZ2lkICJSZW1vdmUgYW4gZXNzZW50aWFsIHBhY2thZ2UiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODEKK21zZ2lkICJHZW5lcmFsbHkgaGVscGZ1bCBwcm9ncmVzcyBpbmZvcm1hdGlvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4MgorIywgZnV6enkKK21zZ2lkICJJbnZvY2F0aW9uIGFuZCBzdGF0dXMgb2YgbWFpbnRhaW5lciBzY3JpcHRzIgorbXNnc3RyICJoaW5kw64gbWFrYS1zdGF0IHNhIHZzbnByaW50ZiIKKworIzogc3JjL21haW4uYzoyODMKK21zZ2lkICJPdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODQKK21zZ2lkICJMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4NQorIywgZnV6enkKKyN8IG1zZ2lkICJyZWFkIGVycm9yIGluIGNvbmZpZ3VyYXRpb24gZmlsZSBgJS4yNTVzJyIKK21zZ2lkICJPdXRwdXQgZm9yIGVhY2ggY29uZmlndXJhdGlvbiBmaWxlIgorbXNnc3RyICJlcnJvciBzYSBwYWdiYXNhIG5nIHRhbGFrc2FuZyBwYWdrYWF5b3MgYCUuMjU1cyciCisKKyM6IHNyYy9tYWluLmM6Mjg2Cittc2dpZCAiTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggY29uZmlndXJhdGlvbiBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg3Cittc2dpZCAiRGVwZW5kZW5jaWVzIGFuZCBjb25mbGljdHMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODgKK21zZ2lkICJMb3RzIG9mIGRlcGVuZGVuY2llcy9jb25mbGljdHMgb3V0cHV0IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg5Cittc2dpZCAiVHJpZ2dlciBhY3RpdmF0aW9uIGFuZCBwcm9jZXNzaW5nIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjkwCittc2dpZCAiTG90cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjkxCittc2dpZCAiU2lsbHkgYW1vdW50cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjkyCittc2dpZCAiTG90cyBvZiBkcml2ZWwgYWJvdXQgZWcgdGhlIGRwa2cvaW5mbyBkaXJlY3RvcnkiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyOTMKK21zZ2lkICJJbnNhbmUgYW1vdW50cyBvZiBkcml2ZWwiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzozMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzIGRlYnVnZ2luZyBvcHRpb24sIC0tZGVidWc9PG9jdGFsPiBvciAtRDxvY3RhbD46XG4iCisiXG4iCisiIE51bWJlciAgUmVmLiBpbiBzb3VyY2UgICBEZXNjcmlwdGlvblxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MzExCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJEZWJ1Z2dpbmcgb3B0aW9ucyBjYW4gYmUgbWl4ZWQgdXNpbmcgYml0d2lzZS1vci5cbiIKKyJOb3RlIHRoYXQgdGhlIG1lYW5pbmdzIGFuZCB2YWx1ZXMgYXJlIHN1YmplY3QgdG8gY2hhbmdlLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MzE5Cittc2dpZCAiLS1kZWJ1ZyByZXF1aXJlcyBhbiBvY3RhbCBhcmd1bWVudCIKK21zZ3N0ciAiLS1kZWJ1ZyBheSBuYW5nYW5nYWlsYW5nYW4gbmcgYXJndW1lbnRvbmcgb2N0YWwiCisKKyM6IHNyYy9tYWluLmM6MzQ4CisjLCBjLWZvcm1hdAorbXNnaWQgIm51bGwgcGFja2FnZSBuYW1lIGluIC0taWdub3JlLWRlcGVuZHMgY29tbWEtc2VwYXJhdGVkIGxpc3QgYCUuMjUwcyciCittc2dzdHIgIiIKKyJwYW5nYWxhbiBuZyBwYWtldGUgbmEgbnVsbCBzYSAtLWlnbm9yZS1kZXBlbmRzIGxpc3RhaGFuZyBoaXdhbGF5LW5nLWtvbWEgYCIKKyIlLjI1MHMnIgorCisjOiBzcmMvbWFpbi5jOjM1NAorIywgYy1mb3JtYXQKK21zZ2lkICItLWlnbm9yZS1kZXBlbmRzIHJlcXVpcmVzIGEgbGVnYWwgcGFja2FnZSBuYW1lLiBgJS4yNTBzJyBpcyBub3Q7ICVzIgorbXNnc3RyICIiCisiLS1pZ25vcmUtZGVwZW5kcyBheSBuYW5nYW5nYWlsYW5nYW4gbmcgbGVnYWwgbmEgcGFuZ2FsYW4gbmcgcGFrZXRlLiBgJS4yNTBzJyAiCisiYXkgaGluZGk6ICVzIgorCisjOiBzcmMvbWFpbi5jOjM3MSBzcmMvbWFpbi5jOjM4MSBzcmMvbWFpbi5jOjY0OSBkcGtnLXNwbGl0L21haW4uYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBpbnRlZ2VyIGZvciAtLSVzOiBgJS4yNTBzJyIKK21zZ3N0ciAiZGkgdGFuZ2dhcCBuYSBpbnRlZ2VyIHBhcmEgc2EgLS0lczogYCUuMjUwcyciCisKKyM6IHNyYy9tYWluLmM6NDM4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGV4ZWN1dGluZyBob29rICclcycsIGV4aXQgY29kZSAlZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjQ2NQorbXNnaWQgInN0YXR1cyBsb2dnZXIiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzo0ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzIGZvcmNpbmcgb3B0aW9ucyAtIGNvbnRyb2wgYmVoYXZpb3VyIHdoZW4gcHJvYmxlbXMgZm91bmQ6XG4iCisiICB3YXJuIGJ1dCBjb250aW51ZTogIC0tZm9yY2UtPHRoaW5nPiw8dGhpbmc+LC4uLlxuIgorIiAgc3RvcCB3aXRoIGVycm9yOiAgICAtLXJlZnVzZS08dGhpbmc+LDx0aGluZz4sLi4uIHwgLS1uby1mb3JjZS08dGhpbmc+LC4uLlxuIgorIiBGb3JjaW5nIHRoaW5nczpcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjQ5MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiV0FSTklORyAtIHVzZSBvZiBvcHRpb25zIG1hcmtlZCBbIV0gY2FuIHNlcmlvdXNseSBkYW1hZ2UgeW91ciBpbnN0YWxsYXRpb24uXG4iCisiRm9yY2luZyBvcHRpb25zIG1hcmtlZCBbKl0gYXJlIGVuYWJsZWQgYnkgZGVmYXVsdC5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjUwNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGZvcmNlL3JlZnVzZSBvcHRpb24gYCUuKnMnIgorbXNnc3RyICJkaSBraWxhbGFuZyBvcHN5b24gbmEgZm9yY2UvcmVmdXNlIGAlLipzJyIKKworIzogc3JjL21haW4uYzo1MTMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIm9ic29sZXRlIGZvcmNlL3JlZnVzZSBvcHRpb24gJyVzJ1xuIgorbXNnc3RyICJCYWJhbGE6IGxhb3MgbmEgb3BzeW9uIGAtLSVzJ1xuIgorCisjOiBzcmMvbWFpbi5jOjY0MworIywgZnV6enkKK21zZ2lkICItLWNvbW1hbmQtZmQgdGFrZXMgb25lIGFyZ3VtZW50LCBub3QgemVybyIKK21zZ3N0ciAiLS1jb21tYW5kLWZkIGF5IHR1bWF0YW5nZ2FwIG5nIDEgYXJndW1lbnRvLCBoaW5kaSAwIgorCisjOiBzcmMvbWFpbi5jOjY0NQorIywgZnV6enkKK21zZ2lkICItLWNvbW1hbmQtZmQgb25seSB0YWtlcyBvbmUgYXJndW1lbnQiCittc2dzdHIgIi0tY29tbWFuZC1mZCBheSB0dW1hdGFuZ2dhcCBsYW1hbmcgbmcgMSBhcmd1bWVudG8iCisKKyM6IHNyYy9tYWluLmM6NjUxCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkbid0IG9wZW4gYCVpJyBmb3Igc3RyZWFtIgorbXNnc3RyICJoaW5kaSBtYWJ1a3NhbiBhbmcgYCVpJyBwYXJhIHNhIHN0cmVhbSIKKworIzogc3JjL21haW4uYzo2NzYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgYmVmb3JlIGVuZCBvZiBsaW5lICVkIgorbXNnc3RyICJkaSBpbmFhc2FoYW5nIGVvZiBiYWdvIG1hdGFwb3MgYW5nIGxpbnlhICVkIgorCisjOiBzcmMvbWFpbi5jOjcxOSBzcmMvbWFpbi5jOjc0MSBzcmMvcXVlcnljbWQuYzo2OTIgc3JjL3N0YXRjbWQuYzozNzkKKyM6IGRwa2ctZGViL21haW4uYzoyMDEgZHBrZy1zcGxpdC9tYWluLmM6MTYzCittc2dpZCAibmVlZCBhbiBhY3Rpb24gb3B0aW9uIgorbXNnc3RyICJrYWlsYW5nYW4gbmcgb3BzeW9uIG5nIGdhZ2F3aW4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjExMworbXNnaWQgIiIKKyJ5b3UgbXVzdCBzcGVjaWZ5IHBhY2thZ2VzIGJ5IHRoZWlyIG93biBuYW1lcywgbm90IGJ5IHF1b3RpbmcgdGhlIG5hbWVzIG9mICIKKyJ0aGUgZmlsZXMgdGhleSBjb21lIGluIgorbXNnc3RyICIiCisia2FpbGFuZ2FuIG5peW9uZyBpdGFrZGEgYW5nIG1nYSBwYWtldGUgc2Ega2FuaWxhbmcgbWdhIHBhbmdhbGFuLCBoaW5kaSBhbmcgIgorInBhbmdhbGFuIG5nIHRhbGFrc2FuIG5hIGtpbmFyb3Jvb25hbiBuaWxhIgorCisjOiBzcmMvcGFja2FnZXMuYzoxMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyAtLXBlbmRpbmcgZG9lcyBub3QgdGFrZSBhbnkgbm9uLW9wdGlvbiBhcmd1bWVudHMiCittc2dzdHIgIi0tJXMgLS1wZW5kaW5nIGF5IGhpbmRpIHR1bWF0YW5nZ2FwIG5nIGFyZ3VtZW50b25nIGhpbmRpIG9wc3lvbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MTM4IHNyYy9xdWVyeWNtZC5jOjM3NSBzcmMvcXVlcnljbWQuYzo1NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhdCBsZWFzdCBvbmUgcGFja2FnZSBuYW1lIGFyZ3VtZW50IgorbXNnc3RyICIiCisiLS0lcyBheSBuYW5nYW5nYWlsYW5nYW4gbmcgaGluZGkga3VrdWxhbmcgc2EgaXNhIG5hIGFyZ3VtZW50b25nIHBhbmdhbGFuIG5nICIKKyJwYWtldGUiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjE3OQorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlICVzIGxpc3RlZCBtb3JlIHRoYW4gb25jZSwgb25seSBwcm9jZXNzaW5nIG9uY2UuXG4iCittc2dzdHIgIiIKKyJOYWthbGlzdGEgYW5nIHBha2V0ZW5nICVzIG5nIGhpZ2l0IHNhIGlzYW5nIGJlc2VzLCBwaW5vcHJvc2VzbyBuZyBpc2FuZ1xuIgorImJlc2VzIGxhbWFuZy5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MTgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJNb3JlIHRoYW4gb25lIGNvcHkgb2YgcGFja2FnZSAlcyBoYXMgYmVlbiB1bnBhY2tlZFxuIgorIiBpbiB0aGlzIHJ1biAhICBPbmx5IGNvbmZpZ3VyaW5nIGl0IG9uY2UuXG4iCittc2dzdHIgIiIKKyJIaWdpdCBzYSBpc2FuZyBrb3B5YSBuZyBwYWtldGVuZyAlcyBheSBuYWJ1a2xhdCBzYSBwYWd0YWtib25nIGl0byAhXG4iCisiSXNhc2FheW9zIGl0byBuZyBpc2FuZyBiZXNlcyBsYW1hbmcuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjIzMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorInBhY2thZ2UgJS4yNTBzIGlzIG5vdCByZWFkeSBmb3IgdHJpZ2dlciBwcm9jZXNzaW5nXG4iCisiIChjdXJyZW50IHN0YXR1cyBgJS4yNTBzJyB3aXRoIG5vIHBlbmRpbmcgdHJpZ2dlcnMpIgorbXNnc3RyICIiCisiaGluZGkgaGFuZGEgbmEgaXNhYXlvcyBhbmcgcGFrZXRlbmcgJS4yNTBzXG4iCisiIGhpbmRpIG1haXNhYXlvcyAoa2FzYWx1a3V5YW5nIGthbGFnYXlhbiBgJS4yNTBzJykiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjMzNAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIHdoaWNoIHByb3ZpZGVzICVzIGlzIHRvIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIGF5IG5hZ2JpYmlnYXkgbmcgJS4yNTBzIG5ndW5pdCBpdG8neSB0YXRhbmdnYWxpbi5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MzM3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgaXMgdG8gYmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMgYXkgdGF0YW5nZ2FsaW4uXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjM1NAorIywgYy1mb3JtYXQKK21zZ2lkICIgIFZlcnNpb24gb2YgJXMgb24gc3lzdGVtIGlzICVzLlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjM3NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIHdoaWNoIHByb3ZpZGVzICVzIGF3YWl0cyB0cmlnZ2VyIHByb2Nlc3NpbmcuXG4iCittc2dzdHIgIiAgJS4yNTBzIGF5IG5hZ2JpYmlnYXkgbmcgJS4yNTBzIG5ndW5pdCBpdG8neSB0YXRhbmdnYWxpbi5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MzgwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgYXdhaXRzIHRyaWdnZXIgcHJvY2Vzc2luZy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgYXkgdGF0YW5nZ2FsaW4uXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQxMAorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiBhbHNvIGNvbmZpZ3VyaW5nIGAlcycgKHJlcXVpcmVkIGJ5IGAlcycpXG4iCittc2dzdHIgImRwa2c6IGlzaW5hc2FheW9zIGRpbiBhbmcgYCVzJyAoa2FpbGFuZ2FuIG5nIGAlcycpXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQxOAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIHdoaWNoIHByb3ZpZGVzICVzIGlzIG5vdCBjb25maWd1cmVkIHlldC5cbiIKK21zZ3N0ciAiIgorIiAgJS4yNTBzIGF5IG5hZ2JpYmlnYXkgbmcgJS4yNTBzIG5ndW5pdCBpdG8neSB0YXRhbmdnYWxhbiBuZyBwYWdrYWF5b3MuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQyMQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIGlzIG5vdCBjb25maWd1cmVkIHlldC5cbiIKK21zZ3N0ciAiIGF5IGhpbmRpIHBhIG5ha2FheW9zLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MzIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyB3aGljaCBwcm92aWRlcyAlcyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICJEaSBuYWthbHVrbG9rIGFuZyBwYWtldGVuZyBgJXMnLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MzUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICJEaSBuYWthbHVrbG9rIGFuZyBwYWtldGVuZyBgJXMnLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0NzIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiAlcyAoJXMpIGJyZWFrcyAlcyBhbmQgaXMgJXMuXG4iCittc2dzdHIgIiAgJS4yNTBzIGF5IG5hZ2JpYmlnYXkgbmcgJS4yNTBzIGF0IGF5ICVzLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0NzgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiAgJXMgKCVzKSBwcm92aWRlcyAlcy5cbiIKK21zZ3N0ciAiJXMgKHN1YnByb2Nlc3MpOiAlc1xuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0ODIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiAgVmVyc2lvbiBvZiAlcyB0byBiZSBjb25maWd1cmVkIGlzICVzLlxuIgorbXNnc3RyICIgICUuMjUwcyBheSB0YXRhbmdnYWxpbiBhbmcgcGFna2FheW9zLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo1OTYKK21zZ2lkICIgZGVwZW5kcyBvbiAiCittc2dzdHIgIiBuYWdkZWRlcGVuZGUgc2EgIgorCisjOiBzcmMvcGFja2FnZXMuYzo2MDIKK21zZ2lkICI7IGhvd2V2ZXI6XG4iCittc2dzdHIgIjsgZ2F5dW5wYW1hbjpcbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo3MQorIywgYy1mb3JtYXQKK21zZ2lkICIuLi4vJXMiCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5MQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBlbnN1cmluZyBgJS4yNTBzJyBkb2Vzbid0IGV4aXN0IgorbXNnc3RyICJlcnJvciBzYSBwYW5pZ3VyYWRvbmcgYCUuMjUwcycgYXkgd2FsYSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5OQorbXNnaWQgInNwbGl0IHBhY2thZ2UgcmVhc3NlbWJseSIKK21zZ3N0ciAiIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEwOAorbXNnaWQgInJlYXNzZW1ibGVkIHBhY2thZ2UgZmlsZSIKK21zZ3N0ciAiYmludW8gbXVsaSBhbmcgdGFsYWtzYW5nIHBha2V0ZSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiQXV0aGVudGljYXRpbmcgJXMgLi4uXG4iCittc2dzdHIgIlRpbml0aXlhayBhbmcgJXMgLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTM5Cittc2dpZCAicGFja2FnZSBzaWduYXR1cmUgdmVyaWZpY2F0aW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTQ2CisjLCBjLWZvcm1hdAorbXNnaWQgIlZlcmlmaWNhdGlvbiBvbiBwYWNrYWdlICVzIGZhaWxlZCEiCittc2dzdHIgIkJpZ28gYW5nIHBhZ3RpeWFrIHNhIHBha2V0ZW5nICVzISIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlZlcmlmaWNhdGlvbiBvbiBwYWNrYWdlICVzIGZhaWxlZCxcbiIKKyJidXQgaW5zdGFsbGluZyBhbnl3YXkgYXMgeW91IHJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiIgorIkJpZ28gYW5nIHBhZ3RpeWFrIHNhIHBha2V0ZW5nICVzLFxuIgorIm5ndW5pdCBpbHVsdWtsb2sgcGEgcmluIHR1bGFkIG5nIGlueW9uZyBoaWxpbmcuXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTUyCisjLCBjLWZvcm1hdAorbXNnaWQgInBhc3NlZFxuIgorbXNnc3RyICJwYXNhZG9cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxNjUgZHBrZy1kZWIvaW5mby5jOjgxCisjLCBmdXp6eQorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdGVtcG9yYXJ5IGRpcmVjdG9yeSIKK21zZ3N0ciAiYmlnbyBuYSBsaWtoYWluIGFuZyB0ZW1wb3JhcnkgZGlyZWN0b3J5bmFtZSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlcyBoYXMgdG9vIG1hbnkgQ29uZmxpY3RzL1JlcGxhY2VzIHBhaXJzIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MjQzCisjLCBjLWZvcm1hdAorbXNnaWQgIm9sZCB2ZXJzaW9uIG9mIHBhY2thZ2UgaGFzIG92ZXJseS1sb25nIGluZm8gZmlsZSBuYW1lIHN0YXJ0aW5nIGAlLjI1MHMnIgorbXNnc3RyICIiCisibHVtYW5nIGJlcnN5b24gbmcgcGFrZXRlIGF5IG1heSBzb2JyYW5nLWhhYmEgbmEgcGFuZ2FsYW4gbmcgdGFsYWtzYW5nIGluZm8gXG4iCisibmFnc2lzaW11bGEgYCUuMjUwcyciCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MjgxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgb2Jzb2xldGUgaW5mbyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJoaW5kaSBtYXRhbmdnYWwgYW5nIGxhb3MgbmEgdGFsYWtzYW5nIGluZm8gYCUuMjUwcyciCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6Mjg2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIChzdXBwb3NlZCkgbmV3IGluZm8gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiaGluZGkgbWFsdWtsb2sgKGRhdykgYmFnb25nIHRhbGFrc2FuZyBpbmZvIGAlLjI1MHMnIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjI5NgorbXNnaWQgInVuYWJsZSB0byBvcGVuIHRlbXAgY29udHJvbCBkaXJlY3RvcnkiCittc2dzdHIgImhpbmRpIG1hYnVrc2FuIGFuZyB0ZW1wIGNvbnRyb2wgZGlyZWN0b3J5IgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMwNworIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGNvbnRhaW5zIG92ZXJseS1sb25nIGNvbnRyb2wgaW5mbyBmaWxlIG5hbWUgKHN0YXJ0aW5nIGAlLjUwcycpIgorbXNnc3RyICIiCisibmFnbGFsYW1hbiBhbmcgcGFrZXRlIG5nIHNvYnJhbmctaGFiYSBuYSBwYW5nYWxhbiBuZyB0YWxha3NhbmcgY29udHJvbCBpbmZvXG4iCisiKG5hZ3Npc2ltdWxhIGAlLjUwcycpIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMxNAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGNvbnRyb2wgaW5mbyBjb250YWluZWQgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICJjb250cm9sIGluZm8gbmcgcGFrZXRlIGF5IG5hZ2xhbWFuIG5nIGRpcmVjdG9yeSBgJS4yNTBzJyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMTYKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBjb250cm9sIGluZm8gcm1kaXIgb2YgYCUuMjUwcycgZGlkbid0IHNheSBub3QgYSBkaXIiCittc2dzdHIgImNvbnRyb2wgaW5mbyBuZyBwYWtldGUgcm1kaXIgbmcgYCUuMjUwcycgaGluZGkgbmFnc2FiaW5nIGhpbmRpIGl0byBkaXIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzI2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlICVzIGNvbnRhaW5lZCBsaXN0IGFzIGluZm8gZmlsZSIKK21zZ3N0ciAiIgorImRwa2c6IGJhYmFsYSAtIGFuZyBwYWtldGVuZyAlcyBheSBuYWdsYW1hbiBuZyBsaXN0YWhhbiBiaWxhbmcgdGFsYWtzYW5nIGluZm8iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzMzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyBpbmZvIGZpbGUgYCUuMjUwcycgYXMgYCUuMjUwcyciCittc2dzdHIgImhpbmRpIG1haWx1a2xvayBhbmcgYmFnb25nIHRhbGFrc2FuZyBpbmZvIGAlLjI1MHMnIGJpbGFuZyBgJS4yNTBzJyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozNDkgc3JjL3JlbW92ZS5jOjE5OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGVsZXRlIGNvbnRyb2wgaW5mbyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJoaW5kaSBtYXRhbmdnYWwgYW5nIHRhbGFrc2FuZyBjb250cm9sIGluZm8gYCUuMjUwcyciCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDExCittc2dpZCAiY2Fubm90IGFjY2VzcyBhcmNoaXZlIgorbXNnc3RyICJoaW5kaSBtYS1ha3NlcyBhbmcgYXJraWJvIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjQzMworIywgZnV6enkKK21zZ2lkICJwYWNrYWdlIGNvbnRyb2wgaW5mb3JtYXRpb24gZXh0cmFjdGlvbiIKK21zZ3N0ciAiaGFiYSBuZyBpbXBvcm1hc3lvbmcgY3RybCIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo0NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVjb3JkZWQgaW5mbyBhYm91dCAlcyBmcm9tICVzLlxuIgorbXNnc3RyICJUaW5hbGEgYW5nIGluZm8gdHVuZ2tvbCBzYSAlcyBtdWxhIHNhICVzLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjQ2OAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGFyY2hpdGVjdHVyZSAoJXMpIGRvZXMgbm90IG1hdGNoIHN5c3RlbSAoJXMpIgorbXNnc3RyICJhcmtpdGVrdHVyYSBuZyBwYWtldGUgKCVzKSBheSBoaW5kaSBsYXBhdCBzYSBzaXN0ZW1hICglcykiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTIzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiByZWdhcmRpbmcgJXMgY29udGFpbmluZyAlcywgcHJlLWRlcGVuZGVuY3kgcHJvYmxlbTpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6IHR1bmdrb2wgc2EgJXMgbmEgbmFnbGFsYW1hbiBuZyAlcywgcHJvYmxlbWFuZyBwcmUtZGVwZW5kZW5zaXlhOlxuIgorIiVzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjUyNgorIywgYy1mb3JtYXQKK21zZ2lkICJwcmUtZGVwZW5kZW5jeSBwcm9ibGVtIC0gbm90IGluc3RhbGxpbmcgJS4yNTBzIgorbXNnc3RyICJwcm9ibGVtYW5nIHByZS1kZXBlbmRlbnNpeWEgLSBoaW5kaSBpbHVsdWtsb2sgYW5nICUuMjUwcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1MjcKKyMsIGZ1enp5Cittc2dpZCAiaWdub3JpbmcgcHJlLWRlcGVuZGVuY3kgcHJvYmxlbSEiCittc2dzdHIgImRwa2c6IGJhYmFsYSAtIGhpbmRpIHBpbmFuc2luIGFuZyBwcm9ibGVtYW5nIHByZS1kZXBlbmRlbnNpeWEgIVxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjU0MworIywgYy1mb3JtYXQKK21zZ2lkICJQcmVwYXJpbmcgdG8gcmVwbGFjZSAlcyAlcyAodXNpbmcgJXMpIC4uLlxuIgorbXNnc3RyICJOYWdoYWhhbmRhbmcgcGFsaXRhbiBhbmcgJXMgJXMgKGdhbWl0IGFuZyAlcykgLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIlVucGFja2luZyAlcyAoZnJvbSAlcykgLi4uXG4iCittc2dzdHIgIkJpbnVidWtsYXQgYW5nICVzIChtdWxhIHNhICVzKSAuLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAibmFtZSBvZiBjb25mZmlsZSAoc3RhcnRpbmcgYCUuMjUwcycpIGlzIHRvbyBsb25nICg+JWQgY2hhcmFjdGVycykiCittc2dzdHIgIiIKKyJwYW5nYWxhbiBuZyBjb25mZmlsZSAobmFndW1waXNhIGAlLjI1MHMnKSBheSBsYWJpcyBhbmcgaGFiYSAoPiVkIGthcmFrdGVyKSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2MzMgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVhZCBlcnJvciBpbiAlLjI1MHMiCittc2dzdHIgImVycm9yIHNhIHBhZ2Jhc2Egc2EgJS4yNTBzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjYzNQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nICUuMjUwcyIKK21zZ3N0ciAiZXJyb3Igc2EgcGFnc2FyYSAlLjI1MHMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjM3CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHRyeWluZyB0byBvcGVuICUuMjUwcyIKK21zZ3N0ciAiZXJyb3IgaGFiYW5nIHNpbnVidWthbmcgYnVrc2FuIGFuZyAlLjI1MHMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6Njc4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJEZS1jb25maWd1cmluZyAlcywgdG8gYWxsb3cgcmVtb3ZhbCBvZiAlcyAuLi5cbiIKK21zZ3N0ciAiIgorIlRpbmF0YW5nZ2FsYW4gbmcgcGFna2FheW9zIGFuZyAlcywgdXBhbmcgbWFhYXJpbmcgdGFuZ2dhbGluIGFuZyAlcyAuLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2ODEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIkRlLWNvbmZpZ3VyaW5nICVzIC4uLlxuIgorbXNnc3RyICJUaW5hdGFuZ2dhbCBhbmcgJXMgLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NzU1CisjLCBjLWZvcm1hdAorbXNnaWQgIlVucGFja2luZyByZXBsYWNlbWVudCAlLjI1MHMgLi4uXG4iCittc2dzdHIgIkJpbnVidWtsYXQgYW5nIHBhcGFsaXQgc2EgJS4yNTBzIC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjg0MAorbXNnaWQgInBhY2thZ2UgZmlsZXN5c3RlbSBhcmNoaXZlIGV4dHJhY3Rpb24iCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NTQKK21zZ2lkICJlcnJvciByZWFkaW5nIGRwa2ctZGViIHRhciBvdXRwdXQiCittc2dzdHIgImVycm9yIHNhIHBhZ2Jhc2EgbmcgZHBrZy1kZWIgdGFyIG91dHB1dCIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NTYKK21zZ2lkICJjb3JydXB0ZWQgZmlsZXN5c3RlbSB0YXJmaWxlIC0gY29ycnVwdGVkIHBhY2thZ2UgYXJjaGl2ZSIKK21zZ3N0ciAic2lyYW5nIGZpbGVzeXN0ZW0gdGFyZmlsZSAtIHNpcmEgYW5nIGFya2lib25nIHBha2V0ZSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NTkKK21zZ2lkICJkcGtnLWRlYjogemFwIHBvc3NpYmxlIHRyYWlsaW5nIHplcm9zIgorbXNnc3RyICJkcGtnLWRlYjogaS16YXAgYW5nIHBvc2libGVuZyBzdXN1bm9kIG5hIG1nYSBzZXJvIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjkxOQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHN0YXQgb2xkIGZpbGUgJyUuMjUwcycgc28gbm90IGRlbGV0aW5nIGl0OiAlcyIKK21zZ3N0ciAiZHBrZzogYmFiYWxhIC0gaGluZGkgbWF0YW5nZ2FsIGFuZyBsdW1hbmcgdGFsYWtzYW4gYCUuMjUwcyc6ICVzXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTI1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGVsZXRlIG9sZCBkaXJlY3RvcnkgJyUuMjUwcyc6ICVzIgorbXNnc3RyICJkcGtnOiBiYWJhbGEgLSBoaW5kaSBtYXRhbmdnYWwgYW5nIGx1bWFuZyB0YWxha3NhbiBgJS4yNTBzJzogJXNcbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5MjgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIm9sZCBjb25mZmlsZSAnJS4yNTBzJyB3YXMgYW4gZW1wdHkgZGlyZWN0b3J5IChhbmQgaGFzIG5vdyBiZWVuIGRlbGV0ZWQpIgorbXNnc3RyICIiCisiZHBrZzogJXM6IGJhYmFsYSAtIGNvbmZmaWxlIGAlLjI1MHMnIGF5IGhpbmRpIHBheWFrIG5hIHRhbGFrc2FuIG8gc3ltbGlua1xuIgorIiAoPSBgJXMnKVxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjk3NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgb3RoZXIgbmV3IGZpbGUgYCUuMjUwcyciCittc2dzdHIgImhpbmRpIG1hLWZzdGF0IGFuZyB0YWxha3NhbmcgYmFoYWdpIGAlLjI1MHMnIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjk4NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIm9sZCBmaWxlICclLjI1MHMnIGlzIHRoZSBzYW1lIGFzIHNldmVyYWwgbmV3IGZpbGVzISAoYm90aCAnJS4yNTBzJyBhbmQgIgorIiclLjI1MHMnKSIKK21zZ3N0ciAiIgorImRwa2c6ICVzOiBiYWJhbGEgLSBjb25mZmlsZSBgJS4yNTBzJyBheSBoaW5kaSBwYXlhayBuYSB0YWxha3NhbiBvIHN5bWxpbmtcbiIKKyIgKD0gYCVzJylcbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxMDI1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2VjdXJlbHkgcmVtb3ZlIG9sZCBmaWxlICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiZHBrZzogYmFiYWxhIC0gaGluZGkgbWF0YW5nZ2FsIGFuZyBsdW1hbmcgdGFsYWtzYW4gYCUuMjUwcyc6ICVzXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTIwNgorIywgYy1mb3JtYXQKK21zZ2lkICIoTm90aW5nIGRpc2FwcGVhcmFuY2Ugb2YgJXMsIHdoaWNoIGhhcyBiZWVuIGNvbXBsZXRlbHkgcmVwbGFjZWQuKVxuIgorbXNnc3RyICIoUGludXB1bmEgYW5nIHBhZ2thd2FsYSBuZyAlcywgbmEgc2l5YW5nIG5hcGFsaXRhbiBuZyBidW8uKVxuIgorCisjLiBUUkFOU0xBVE9SUzogVGhpcyBpcyB0aGUgaGVhZGVyIHRoYXQgYXBwZWFycyBvbiAnZHBrZy1xdWVyeSAtbCcuIFRoZQorIy4gKiBzdHJpbmcgc2hvdWxkIHJlbWFpbiB1bmRlciA4MCBjaGFyYWN0ZXJzLiBUaGUgdXBwZXJjYXNlIGxldHRlcnMgaW4KKyMuICogdGhlIHN0YXRlIHZhbHVlcyBkZW5vdGUgdGhlIGFiYnJldmlhdGVkIGxldHRlciB0aGF0IHdpbGwgYXBwZWFyIG9uCisjLiAqIHRoZSBmaXJzdCB0aHJlZSBjb2x1bW5zLCB3aGljaCBzaG91bGQgaWRlYWxseSBtYXRjaCB0aGUgRW5nbGlzaCBvbmUKKyMuICogKGUuZy4gUmVtb3ZlIOKGkiBzdXBSaW1laXgpLCBzZWUgZHBrZy1xdWVyeSgxKSBmb3IgZnVydGhlciBkZXRhaWxzLiBUaGUKKyMuICogdHJhbnNsYXRlZCBtZXNzYWdlIGNhbiB1c2UgYWRkaXRpb25hbCBsaW5lcyBpZiBuZWVkZWQuCisjOiBzcmMvcXVlcnljbWQuYzoxNDkKKyMsIGZ1enp5Cittc2dpZCAiIgorIkRlc2lyZWQ9VW5rbm93bi9JbnN0YWxsL1JlbW92ZS9QdXJnZS9Ib2xkXG4iCisifCBTdGF0dXM9Tm90L0luc3QvQ29uZi1maWxlcy9VbnBhY2tlZC9oYWxGLWNvbmYvSGFsZi1pbnN0L3RyaWctYVdhaXQvVHJpZy0iCisicGVuZFxuIgorInwvIEVycj89KG5vbmUpL1JlaW5zdC1yZXF1aXJlZCAoU3RhdHVzLEVycjogdXBwZXJjYXNlPWJhZClcbiIKK21zZ3N0ciAiIgorIkhpbGluZz1VLURpIGFsYW0vSWx1a2xvay9SLVRhbmdnYWxpbi9QdXJnYWhpbi9Ib2xkXG4iCisifCBLYWxhZ2F5YW49Tm90L0luc3RhbGxlZC9Db25maWctZmlsZXMvVW5wYWNrZWQvRmFpbGVkLWNvbmZpZy9IYWxmLSIKKyJpbnN0YWxsZWRcbiIKKyJ8LyBFcnI/PSh3YWxhKS9Ib2xkL1JlaW5zdC1yZXF1aXJlZC9YPXBhcmVob25nLXByb2JsZW1hIFxuIgorInwgICAgICAgKFN0YXR1cywgRXJyOiBtYXNhbWEga2FwYWcgbWFsYWtpbmcgbGV0cmEpXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjE1MworbXNnaWQgIk5hbWUiCittc2dzdHIgIlBhcGFuZ2FsYW4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjE1MworbXNnaWQgIlZlcnNpb24iCittc2dzdHIgIkJlcnN5b24iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjE1NAorbXNnaWQgIkRlc2NyaXB0aW9uIgorbXNnc3RyICJQYWdsYWxhcmF3YW4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI0NiBzcmMvcXVlcnljbWQuYzo1MTEgc3JjL3NlbGVjdC5jOjc1CisjLCBjLWZvcm1hdAorbXNnaWQgIk5vIHBhY2thZ2VzIGZvdW5kIG1hdGNoaW5nICVzLlxuIgorbXNnc3RyICJXYWxhbmcgcGFrZXRlbmcgdHVnbWEgc2EgJXMuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI3MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJzaW9uIGJ5ICVzIGZyb206ICVzXG4iCittc2dzdHIgImRpYmVydGFkbyBuZyAlcyIKKworIzogc3JjL3F1ZXJ5Y21kLmM6Mjc1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnNpb24gYnkgJXMgdG86ICVzXG4iCittc2dzdHIgImRpYmVydGFkbyBuZyAlcyIKKworIzogc3JjL3F1ZXJ5Y21kLmM6Mjc4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJsb2NhbCBkaXZlcnNpb24gZnJvbTogJXNcbiIKK21zZ3N0ciAibG9rYWwgbmEgZGliZXJzeW9uIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNzkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImxvY2FsIGRpdmVyc2lvbiB0bzogJXNcbiIKK21zZ3N0ciAiZGliZXJ0YWRvIG5hIGxva2FsIgorCisjOiBzcmMvcXVlcnljbWQuYzozMDkKK21zZ2lkICItLXNlYXJjaCBuZWVkcyBhdCBsZWFzdCBvbmUgZmlsZSBuYW1lIHBhdHRlcm4gYXJndW1lbnQiCittc2dzdHIgIiIKKyItLXNlYXJjaCBheSBuYW5nYW5nYWlsYW5nYW4gbmcgaGluZGkga3VrdWxhbmcgc2EgaXNhbmcgYXJndW1lbnRvbmcgcGF0dGVybiAiCisibmdcbiIKKyIgcGFuZ2FsYW4gbmcgdGFsYWtzYW4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjM1MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiTm8gcGFja2FnZXMgZm91bmQgbWF0Y2hpbmcgJXMuXG4iCittc2dpZCAiJXM6IG5vIHBhdGggZm91bmQgbWF0Y2hpbmcgcGF0dGVybiAlcy5cbiIKK21zZ3N0ciAiV2FsYW5nIHBha2V0ZW5nIHR1Z21hIHNhICVzLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzozOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSBgJXMnIGlzIG5vdCBpbnN0YWxsZWQgYW5kIG5vIGluZm8gaXMgYXZhaWxhYmxlLlxuIgorbXNnc3RyICJEaSBuYWthbHVrbG9rIGFuZyBwYWtldGVuZyBgJXMnIGF0IHdhbGFuZyBpbmZvIHR1bmdrb2wgZGl0by5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDAxCisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgYCVzJyBpcyBub3QgYXZhaWxhYmxlLlxuIgorbXNnc3RyICJEaSBtYWdhZ2FtaXQgYW5nIHBha2V0ZW5nIGAlcycuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQxMCBzcmMvcXVlcnljbWQuYzo1ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSBgJXMnIGlzIG5vdCBpbnN0YWxsZWQuXG4iCittc2dzdHIgIkRpIG5ha2FsdWtsb2sgYW5nIHBha2V0ZW5nIGAlcycuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQxOAorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlIGAlcycgZG9lcyBub3QgY29udGFpbiBhbnkgZmlsZXMgKCEpXG4iCittc2dzdHIgIldhbGFuZyBsYW1hbiBhbmcgcGFrZXRlbmcgYCVzJyAoISlcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDI1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJsb2NhbGx5IGRpdmVydGVkIHRvOiAlc1xuIgorbXNnc3RyICJkaWJlcnRhZG8gbmEgbG9rYWwiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQyOAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBkaXZlcnRzIG90aGVycyB0bzogJXNcbiIKK21zZ3N0ciAiYW5nIHBha2V0ZSBheSBuYW5naGFoYWxpbGkgc2EgaWJhIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MzEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImRpdmVydGVkIGJ5ICVzIHRvOiAlc1xuIgorbXNnc3RyICJkaWJlcnRhZG8gbmcgJXMiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQ1MgorbXNnaWQgIiIKKyJVc2UgZHBrZyAtLWluZm8gKD0gZHBrZy1kZWIgLS1pbmZvKSB0byBleGFtaW5lIGFyY2hpdmUgZmlsZXMsXG4iCisiYW5kIGRwa2cgLS1jb250ZW50cyAoPSBkcGtnLWRlYiAtLWNvbnRlbnRzKSB0byBsaXN0IHRoZWlyIGNvbnRlbnRzLlxuIgorbXNnc3RyICIiCisiR2FtaXRpbiBkcGtnIC0taW5mbyAoPSBkcGtnLWRlYiAtLWluZm8pIHVwYW5nIHRpZ25hbiBhbmcgdGFsa3NhbmcgYXJraWJvLFxuIgorImF0IGRwa2cgLS1jb250ZW50cyAoPSBkcGtnLWRlYiAtLWNvbnRlbnRzKSB1cGFuZyBpbGlzdGEgYW5nIG5pbGFsYW1hbiBuaWxhLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo1NzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgYXQgbW9zdCB0d28gYXJndW1lbnRzIgorbXNnc3RyICItLWJ1aWxkIGF5IHR1bWF0YW5nZ2FwIG5nIGhhbmdnYW5nIGRhbGF3YW5nIGFyZ3VtZW50byBsYW1hbmciCisKKyM6IHNyYy9xdWVyeWNtZC5jOjU3OAorIywgYy1mb3JtYXQKK21zZ2lkICJjb250cm9sIGZpbGUgY29udGFpbnMgJWMiCittc2dzdHIgIiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjAwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gJXMgcGFja2FnZSBtYW5hZ2VtZW50IHByb2dyYW0gcXVlcnkgdG9vbCB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICInIHByb2dyYW1hbmcgdGFnYXBhbmdhc2l3YSBuZyBtZ2EgcGFrZXRlLCBiZXJzeW9uICIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjE5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtc3wtLXN0YXR1cyA8cGFja2FnZT4gLi4uICAgICAgICBEaXNwbGF5IHBhY2thZ2Ugc3RhdHVzIGRldGFpbHMuXG4iCisiICAtcHwtLXByaW50LWF2YWlsIDxwYWNrYWdlPiAuLi4gICBEaXNwbGF5IGF2YWlsYWJsZSB2ZXJzaW9uIGRldGFpbHMuXG4iCisiICAtTHwtLWxpc3RmaWxlcyA8cGFja2FnZT4gLi4uICAgICBMaXN0IGZpbGVzIGBvd25lZCcgYnkgcGFja2FnZShzKS5cbiIKKyIgIC1sfC0tbGlzdCBbPHBhdHRlcm4+IC4uLl0gICAgICAgIExpc3QgcGFja2FnZXMgY29uY2lzZWx5LlxuIgorIiAgLVd8LS1zaG93IFs8cGF0dGVybj4gLi4uXSAgICAgICAgU2hvdyBpbmZvcm1hdGlvbiBvbiBwYWNrYWdlKHMpLlxuIgorIiAgLVN8LS1zZWFyY2ggPHBhdHRlcm4+IC4uLiAgICAgICAgRmluZCBwYWNrYWdlKHMpIG93bmluZyBmaWxlKHMpLlxuIgorIiAgLWN8LS1jb250cm9sLXBhdGggPHBhY2thZ2U+IFs8ZmlsZT5dXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQcmludCBwYXRoIGZvciBwYWNrYWdlIGNvbnRyb2wgZmlsZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIiBbPG9wc3lvbj5dIDx1dG9zPlxuIgorIk1nYSB1dG9zOlxuIgorIiAgLXN8LS1zdGF0dXMgPHBhbmdhbGFuLW5nLXBha2V0ZT4gLi4uIGlwYWtpdGEgYW5nIGRldGFseWUgbmcga2FsYWdheWFuIG5nICIKKyJwYWtldGVcbiIKKyIgIC1wfC0tcHJpbnQtYXZhaWwgPHBhbmdhbGFuLW5nLXBha2V0ZT4gLi4uIGlwYWtpdGEgYW5nIGRldGFseWUgbmcgbWdhICIKKyJiZXJzeW9uXG4iCisiICAtTHwtLWxpc3RmaWxlcyA8cGFuZ2FsYW4tbmctcGFrZXRlPiAuLi4gIGlsaXN0YSBhbmcgbWdhIHRhbGFrc2FuZyBgcGFnLSIKKyJhYXJpJ1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuZyAobWdhKSBwYWtldGVcbiIKKyIgIC1sfC0tbGlzdCBbPGh1d2FyYW4+IC4uLl0gICAgICAgICAgICAgaWxpc3RhIGFuZyBtZ2EgcGFrZXRlIG5nIG1haWdzaVxuIgorIiAgLVd8LS1zaG93IDxodXdhcmFuPiAuLi4gICAgICAgICAgICAgICBpcGFraXRhIGFuZyBpbXBvcm1hc3lvbiB1a29sIHNhICIKKyIobWdhKVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBha2V0ZVxuIgorIiAgLVN8LS1zZWFyY2ggPGh1d2FyYW4+IC4uLiAgICAgICAgICAgICBoYW5hcGluIGFuZyAobWdhKSBwYWtldGUgbmEgbWF5LWFyaVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5nIChtZ2EpIHRhbGFrc2FuXG4iCisiICAtLWhlbHAgfCAtLXZlcnNpb24gICAgICAgICAgICAgICAgICAgIGlwYWtpdGEgYW5nIHR1bG9uZyAvIGJpbGFuZyBuZyAiCisiYmVyc3lvblxuIgorIiAgLS1saWNlbmNlICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpcGFraXRhIGFuZyBrYXJhcGF0YW5nIHNpcGkgYXQgIgorImxpc2Vuc3lhXG4iCisiXG4iCisiTWdhIG9wc3lvbjpcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT4gICAgR2FtaXRpbiBhbmcgPGRpcmVjdG9yeT4gc2EgaGFsaXAgbmcgJXNcbiIKKyIgIC0tc2hvd2Zvcm1hdD08Zm9ybWF0PiAgICAgR2FtaXRpbiBhbmcgYWx0ZXJuYXRpYm9uZyBmb3JtYXQgcGFyYSBzYSAtLXNob3dcbiIKKyJcbiIKKyJTeW50YXggbmcgZm9ybWF0OlxuIgorIiAgQW5nIGZvcm1hdCBheSBzdHJpbmcgbmEgaXBhcGFraXRhIHBhcmEgc2EgYmF3YXQgcGFrZXRlLiBBbmcgZm9ybWF0IGF5XG4iCisiICBtYWFhcmluZyBtYXkgbWdhIHN0YW5kYXJkIGVzY2FwZSBzZXF1ZW5jZSBuYSBcXFxcbiAobmV3bGluZSksIFxcXFxyICIKKyIoY2FycmlhZ2VcbiIKKyIgIHJldHVybikgbyBcXFxcXFxcXCAocGxhaW4gYmFja3NsYXNoKS4gSW1wb3JtYXN5b24gdWtvbCBzYSBwYWtldGUgYXkgIgorIm1hYWFyaW5nXG4iCisiICBpc2FtYSBzYSBwYW1hbWFnaXRhbiBuZyBwYWdsYWdheSBuZyB2YXJpYWJsZSByZWZlcmVuY2Ugc2Egc2FrbGF3IG5nICIKKyJwYWtldGVcbiIKKyIgIGdhbWl0IGFuZyAke3Zhcls7d2lkdGhdfSBuYSBzeW50YXguIEFuZyBtZ2Egc2FrbGF3IGF5IG5ha2FheW9zLXBha2FuYW5cbiIKKyIgIG1hbGliYW4ga3VuZyBuZWdhdGlibyBhbmcgbGFwYWQgYXQga3VuZyBnYW5vb24gYXkgYXlvcy1wYWthbGl3YSBhbmcgIgorImdhZ2FtaXRpbi5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjM2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hZG1pbmRpcj08ZGlyZWN0b3J5PiAgICAgICAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMuXG4iCisiICAtZnwtLXNob3dmb3JtYXQ9PGZvcm1hdD4gICAgICAgICBVc2UgYWx0ZXJuYXRpdmUgZm9ybWF0IGZvciAtLXNob3cuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjQyIGRwa2ctZGViL21haW4uYzoxMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkZvcm1hdCBzeW50YXg6XG4iCisiICBBIGZvcm1hdCBpcyBhIHN0cmluZyB0aGF0IHdpbGwgYmUgb3V0cHV0IGZvciBlYWNoIHBhY2thZ2UuIFRoZSBmb3JtYXRcbiIKKyIgIGNhbiBpbmNsdWRlIHRoZSBzdGFuZGFyZCBlc2NhcGUgc2VxdWVuY2VzIFxcbiAobmV3bGluZSksIFxcciAoY2FycmlhZ2VcbiIKKyIgIHJldHVybikgb3IgXFxcXCAocGxhaW4gYmFja3NsYXNoKS4gUGFja2FnZSBpbmZvcm1hdGlvbiBjYW4gYmUgaW5jbHVkZWRcbiIKKyIgIGJ5IGluc2VydGluZyB2YXJpYWJsZSByZWZlcmVuY2VzIHRvIHBhY2thZ2UgZmllbGRzIHVzaW5nIHRoZSAke3Zhcls7IgorIndpZHRoXX1cbiIKKyIgIHN5bnRheC4gRmllbGRzIHdpbGwgYmUgcmlnaHQtYWxpZ25lZCB1bmxlc3MgdGhlIHdpZHRoIGlzIG5lZ2F0aXZlIGluICIKKyJ3aGljaFxuIgorIiAgY2FzZSBsZWZ0IGFsaWdubWVudCB3aWxsIGJlIHVzZWQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjU2Cittc2dpZCAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBxdWVyeWluZyBwYWNrYWdlcy4iCittc2dzdHIgIiIKKworIzogc3JjL3JlbW92ZS5jOjg4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJpZ25vcmluZyByZXF1ZXN0IHRvIHJlbW92ZSAlLjI1MHMgd2hpY2ggaXNuJ3QgaW5zdGFsbGVkLiIKK21zZ3N0ciAiIgorImRwa2cgLSBiYWJhbGE6IGhpbmRpIHBpbmFwYW5zaW4gYW5nIGhpbGluZyBuYSB0YW5nZ2FsaW4gYW5nICUuMjUwcyBuYSBoaW5kaVxuIgorIiBuYW1hbiBuYWthbHVrbG9rLlxuIgorCisjOiBzcmMvcmVtb3ZlLmM6OTUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpZ25vcmluZyByZXF1ZXN0IHRvIHJlbW92ZSAlLjI1MHMsIG9ubHkgdGhlIGNvbmZpZ1xuIgorIiBmaWxlcyBvZiB3aGljaCBhcmUgb24gdGhlIHN5c3RlbS4gVXNlIC0tcHVyZ2UgdG8gcmVtb3ZlIHRoZW0gdG9vLiIKK21zZ3N0ciAiIgorImRwa2cgLSBiYWJhbGE6IGhpbmRpIHBpbmFwYW5zaW4gYW5nIGhpbGluZyBuYSB0YW5nZ2FsaW4gYW5nICUuMjUwcywgbmEgYW5nXG4iCisiIHRhbGFrc2FuZyBwYWdrYWF5b3Mgbml0byBsYW1hbmcgYW5nIG5hc2Egc2lzdGVtYS4gIEdhbWl0aW4gYW5nIC0tcHVyZ2UgIgorInVwYW5nXG4iCisiIG1hdGFuZ2dhbCBkaW4gYW5nIG1nYSBpdG8uXG4iCisKKyM6IHNyYy9yZW1vdmUuYzoxMDMKK21zZ2lkICJUaGlzIGlzIGFuIGVzc2VudGlhbCBwYWNrYWdlIC0gaXQgc2hvdWxkIG5vdCBiZSByZW1vdmVkLiIKK21zZ3N0ciAiSXRvIGF5IGVzZW5zaXlhbCBuYSBwYWtldGUgLSBoaW5kaSBkYXBhdCB0YW5nZ2FsaW4uIgorCisjOiBzcmMvcmVtb3ZlLmM6MTI4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBkZXBlbmRlbmN5IHByb2JsZW1zIHByZXZlbnQgcmVtb3ZhbCBvZiAlczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6IHByb2JsZW1hIHNhIGRlcGVuZGVuc2l5YSBhbmcgaGFkbGFuZyBzYSBwYWd0YW5nZ2FsIG5nICVzOlxuIgorIiVzIgorCisjOiBzcmMvcmVtb3ZlLmM6MTMwCittc2dpZCAiZGVwZW5kZW5jeSBwcm9ibGVtcyAtIG5vdCByZW1vdmluZyIKK21zZ3N0ciAicHJvYmxlbWEgc2EgZGVwZW5kZW5zaXlhIC0gaGluZGkgdGF0YW5nZ2FsaW4iCisKKyM6IHNyYy9yZW1vdmUuYzoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6ICVzOiBkZXBlbmRlbmN5IHByb2JsZW1zLCBidXQgcmVtb3ZpbmcgYW55d2F5IGFzIHlvdSByZXF1ZXN0ZWQ6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiAlczogcHJvYmxlbWEgc2EgZGVwZW5kZW5zaXlhLCBwZXJvIHRhdGFuZ2dhbGluIGRpbiBkYWhpbCBpbnlvbmcgIgorImhpbmlsaW5nOlxuIgorIiVzIgorCisjOiBzcmMvcmVtb3ZlLmM6MTQyCittc2dpZCAiIgorIlBhY2thZ2UgaXMgaW4gYSB2ZXJ5IGJhZCBpbmNvbnNpc3RlbnQgc3RhdGUgLSB5b3Ugc2hvdWxkXG4iCisiIHJlaW5zdGFsbCBpdCBiZWZvcmUgYXR0ZW1wdGluZyBhIHJlbW92YWwuIgorbXNnc3RyICIiCisiUGFrZXRlIGF5IG5hc2EgbWFzYW1hIGF0IGhpbmRpIG1hYXNhaGFuZyBrYWxhZ2F5YW4gLSBrYWlsYW5nYW4gbml5b25nICIKKyJpbHVrbG9rIGl0b1xuIgorIiBtdWxpIGJhZ28gbml5byBzdWJ1a2FuZyB0YW5nZ2FsaW4uIgorCisjOiBzcmMvcmVtb3ZlLmM6MTQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIldvdWxkIHJlbW92ZSBvciBwdXJnZSAlcyAuLi5cbiIKK21zZ3N0ciAiVGF0YW5nZ2FsaW4gbyBwdXB1cmdhaGluIGFuZyAlcyAuLi5cbiIKKworIzogc3JjL3JlbW92ZS5jOjE1NworIywgYy1mb3JtYXQKK21zZ2lkICJSZW1vdmluZyAlcyAuLi5cbiIKK21zZ3N0ciAiVGluYXRhbmdnYWwgYW5nICVzIC4uLlxuIgorCisjOiBzcmMvcmVtb3ZlLmM6Mjc1IHNyYy9yZW1vdmUuYzozNjYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ3aGlsZSByZW1vdmluZyAlLjI1MHMsIHVuYWJsZSB0byByZW1vdmUgZGlyZWN0b3J5ICclLjI1MHMnOiAlcyAtIGRpcmVjdG9yeSAiCisibWF5IGJlIGEgbW91bnQgcG9pbnQ/IgorbXNnc3RyICIiCisiZHBrZyAtIGJhYmFsYTogaGFiYW5nIHRpbmF0YW5nZ2FsIGFuZyAlLjI1MHMsIGhpbmRpIG1hdGFuZ2dhbCBhbmcgZGlyZWN0b3J5XG4iCisiIGAlLjI1MHMnOiAlcyAtIGRpcmVjdG9yeSBheSBtYWFhcmluZyBwdW50byBuZyBwYWdsYXBhdCA/XG4iCisKKyM6IHNyYy9yZW1vdmUuYzoyODkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWN1cmVseSByZW1vdmUgJyUuMjUwcyciCittc2dzdHIgImhpbmRpIG5ha2FidW8gJS4yNTBzIgorCisjOiBzcmMvcmVtb3ZlLmM6MzYxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ3aGlsZSByZW1vdmluZyAlLjI1MHMsIGRpcmVjdG9yeSAnJS4yNTBzJyBub3QgZW1wdHkgc28gbm90IHJlbW92ZWQuIgorbXNnc3RyICIiCisiZHBrZyAtIGJhYmFsYTogaGFiYW5nIHRpbmF0YW5nZ2FsIGFuZyAlLjI1MHMsIG1heSBsYW1hbiBhbmcgZGlyZWN0b3J5IGAiCisiJS4yNTBzJ1xuIgorIiBrYXlhJ3QgaGluZGkgaXRvIHRpbmFuZ2dhbC5cbiIKKworIzogc3JjL3JlbW92ZS5jOjM4MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiY2Fubm90IHJlbW92ZSBgJS4yNTBzJyIKK21zZ2lkICJjYW5ub3QgcmVtb3ZlICclLjI1MHMnIgorbXNnc3RyICJoaW5kaSBtYXRhbmdnYWwgYW5nIGAlLjI1MHMnIgorCisjOiBzcmMvcmVtb3ZlLmM6NDA5CisjLCBjLWZvcm1hdAorbXNnaWQgIlB1cmdpbmcgY29uZmlndXJhdGlvbiBmaWxlcyBmb3IgJXMgLi4uXG4iCittc2dzdHIgIlBpbnVwdXJnYSBhbmcgdGFsYWtzYW5nIHBhZ2thYXlvcyBuZyAlcyAuLi5cbiIKKworIzogc3JjL3JlbW92ZS5jOjQ1OQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVtb3ZlIG9sZCBjb25maWcgZmlsZSBgJS4yNTBzJyAoPSBgJS4yNTBzJykiCittc2dzdHIgImhpbmRpIG1hdGFuZ2dhbCBhbmcgbHVtYW5nIHRhbGFrc2FuZyBwYWdrYWF5b3MgYCUuMjUwcycgKD0gYCUuMjUwcycpIgorCisjOiBzcmMvcmVtb3ZlLmM6NDc0CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZWFkIGNvbmZpZyBmaWxlIGRpciBgJS4yNTBzJyAoZnJvbSBgJS4yNTBzJykiCittc2dzdHIgImhpbmRpIG1hYmFzYSBhbmcgZGlyIG5nIHRhbGFrc2FuZyBwYWdrYWF5b3MgYCUuMjUwcycgKG11bGEgYCUuMjUwcycpIgorCisjOiBzcmMvcmVtb3ZlLmM6NTEwCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZW1vdmUgb2xkIGJhY2t1cCBjb25maWcgZmlsZSBgJS4yNTBzJyAob2YgYCUuMjUwcycpIgorbXNnc3RyICIiCisiaGluZGkgbWF0YW5nZ2FsIGFuZyBsdW1hbmcgYmFja3VwIG5nIHRhbGFrc2FuZyBwYWdrYWF5b3MgYCUuMjUwcycgKG5nIGAiCisiJS4yNTBzJykiCisKKyM6IHNyYy9yZW1vdmUuYzo1NjgKK21zZ2lkICJjYW5ub3QgcmVtb3ZlIG9sZCBmaWxlcyBsaXN0IgorbXNnc3RyICJoaW5kaSBtYXRhbmdnYWwgYW5nIGx1bWFuZyBsaXN0YWhhbiBuZyB0YWxha3NhbiIKKworIzogc3JjL3JlbW92ZS5jOjU3NAorbXNnaWQgImNhbid0IHJlbW92ZSBvbGQgcG9zdHJtIHNjcmlwdCIKK21zZ3N0ciAiaGluZGkgbWF0YW5nZ2FsIGFuZyBsdW1hbmcgc2tyaXB0b25nIHBvc3RybSIKKworIzogc3JjL3NlbGVjdC5jOjExNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVvZiBpbiBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZCIKK21zZ3N0ciAiZGkgaW5hYXNhaGFuZyBlb2Ygc2EgcGFuZ2FsYW4gbmcgcGFrZXRlIHNhIGxpbnlhICVkIgorCisjOiBzcmMvc2VsZWN0LmM6MTE2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGxpbmUgaW4gcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQiCittc2dzdHIgImRpIGluYWFzYWhhbmcgZHVsbyBuZyBsaW55YSBzYSBwYW5nYWxhbiBuZyBwYWtldGUgc2EgbGlueWEgJWQiCisKKyM6IHNyYy9zZWxlY3QuYzoxMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgYWZ0ZXIgcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQiCittc2dzdHIgImRpIGluYWFzYWhhbmcgZW9mIG1hdGFwb3MgbmcgcGFuZ2FsYW4gbmcgcGFrZXRlIHNhIGxpbnlhICVkIgorCisjOiBzcmMvc2VsZWN0LmM6MTIzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGxpbmUgYWZ0ZXIgcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQiCittc2dzdHIgImRpIGluYWFzYWhhbmcgZHVsbyBuZyBsaW55YSBtYXRhcG9zIG5nIHBhbmdhbGFuIG5nIHBha2V0ZSBzYSBsaW55YSAlZCIKKworIzogc3JjL3NlbGVjdC5jOjEzNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGRhdGEgYWZ0ZXIgcGFja2FnZSBhbmQgc2VsZWN0aW9uIGF0IGxpbmUgJWQiCittc2dzdHIgImRpIGluYWFzYWhhbmcgZGF0b3MgbWF0YXBvcyBuZyBwYWtldGUgYXQgcGluaWxpIHNhIGxpbnlhICVkIgorCisjOiBzcmMvc2VsZWN0LmM6MTM5CisjLCBjLWZvcm1hdAorbXNnaWQgImlsbGVnYWwgcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQ6ICUuMjUwcyIKK21zZ3N0ciAiYmF3YWwgbmEgcGFuZ2FsYW4gbmcgcGFrZXRlIHNhIGxpbnlhICVkOiAlLjI1MHMiCisKKyM6IHNyYy9zZWxlY3QuYzoxNDMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biB3YW50ZWQgc3RhdHVzIGF0IGxpbmUgJWQ6ICUuMjUwcyIKK21zZ3N0ciAiZGkga2lsYWxhbmcga2FsYWdheWFuIHNhIGxpbnlhICVkOiAlLjI1MHMiCisKKyM6IHNyYy9zZWxlY3QuYzoxNDkKK21zZ2lkICJyZWFkIGVycm9yIG9uIHN0YW5kYXJkIGlucHV0IgorbXNnc3RyICJlcnJvciBzYSBwYWdiYXNhIG5nIHN0YW5kYXJkIGlucHV0IgorCisjOiBzcmMvc3RhdGNtZC5jOjUyCittc2dpZCAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBvdmVycmlkaW5nIGZpbGUgc3RhdCBpbmZvcm1hdGlvbi4iCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRjbWQuYzo2MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29weXJpZ2h0IChDKSAyMDAwLCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDA2LTIwMDkgR3VpbGxlbSBKb3Zlci5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGNtZC5jOjgxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC0tYWRkIDxvd25lcj4gPGdyb3VwPiA8bW9kZT4gPGZpbGU+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkIGEgbmV3IGVudHJ5IGludG8gdGhlIGRhdGFiYXNlLlxuIgorIiAgLS1yZW1vdmUgPGZpbGU+ICAgICAgICAgIHJlbW92ZSBmaWxlIGZyb20gdGhlIGRhdGFiYXNlLlxuIgorIiAgLS1saXN0IFs8Z2xvYi1wYXR0ZXJuPl0gIGxpc3QgY3VycmVudCBvdmVycmlkZXMgaW4gdGhlIGRhdGFiYXNlLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0Y21kLmM6ODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgc2V0IHRoZSBkaXJlY3Rvcnkgd2l0aCB0aGUgc3RhdG92ZXJyaWRlIGZpbGUuXG4iCisiICAtLXVwZGF0ZSAgICAgICAgICAgICAgICAgaW1tZWRpYXRlbHkgdXBkYXRlIGZpbGUgcGVybWlzc2lvbnMuXG4iCisiICAtLWZvcmNlICAgICAgICAgICAgICAgICAgZm9yY2UgYW4gYWN0aW9uIGV2ZW4gaWYgYSBzYW5pdHkgY2hlY2sgZmFpbHMuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgcXVpZXQgb3BlcmF0aW9uLCBtaW5pbWFsIG91dHB1dC5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRjbWQuYzoxMTYKK21zZ2lkICJzdHJpcHBpbmcgdHJhaWxpbmcgLyIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGNtZC5jOjIwNworIywgZnV6enkKK21zZ2lkICJjYW5ub3Qgb3BlbiBuZXcgc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgImJpZ28gc2EgcGFnYnVrYXMgbmcgdGFsYWtzYW5nIHN0YXRvdmVycmlkZSIKKworIzogc3JjL3N0YXRjbWQuYzoyMjIKKyMsIGZ1enp5Cittc2dpZCAiZXJyb3IgcmVtb3Zpbmcgc3RhdG92ZXJyaWRlLW9sZCIKK21zZ3N0ciAiZXJyb3Igc2EgcGFnbGlraGEgbmcgZGV2aWNlIGAlLjI1NXMnIgorCisjOiBzcmMvc3RhdGNtZC5jOjIyNAorIywgZnV6enkKK21zZ2lkICJlcnJvciBjcmVhdGluZyBuZXcgc3RhdG92ZXJyaWRlLW9sZCIKK21zZ3N0ciAiZXJyb3Igc2EgcGFnbGlraGEgbmcgZGV2aWNlIGAlLjI1NXMnIgorCisjOiBzcmMvc3RhdGNtZC5jOjIyNgorIywgZnV6enkKK21zZ2lkICJlcnJvciBpbnN0YWxsaW5nIG5ldyBzdGF0b3ZlcnJpZGUiCittc2dzdHIgImVycm9yIHNhIHBhZ2xpa2hhIG5nIGRldmljZSBgJS4yNTVzJyIKKworIzogc3JjL3N0YXRjbWQuYzoyNDYKKyMsIGZ1enp5Cittc2dpZCAiLS1hZGQgbmVlZHMgZm91ciBhcmd1bWVudHMiCittc2dzdHIgIi0tYnVpbGQgYXkgbmFuZ2FuZ2FpbGFuZ2FuIG5nIGFyZ3VtZW50b25nIGRpcmVjdG9yeSIKKworIzogc3JjL3N0YXRjbWQuYzoyNTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkFuIG92ZXJyaWRlIGZvciAnJXMnIGFscmVhZHkgZXhpc3RzLCBidXQgLS1mb3JjZSBzcGVjaWZpZWQgc28gd2lsbCBiZSAiCisiaWdub3JlZC4iCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRjbWQuYzoyNjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiQW4gb3ZlcnJpZGUgZm9yICclcycgYWxyZWFkeSBleGlzdHMsIGFib3J0aW5nLiIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGNtZC5jOjI3MgorIywgYy1mb3JtYXQKK21zZ2lkICItLXVwZGF0ZSBnaXZlbiBidXQgJXMgZG9lcyBub3QgZXhpc3QiCittc2dzdHIgIiIKKworIzogc3JjL3N0YXRjbWQuYzoyOTYKK21zZ2lkICJObyBvdmVycmlkZSBwcmVzZW50LiIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGNtZC5jOjMwNAorbXNnaWQgIi0tdXBkYXRlIGlzIHVzZWxlc3MgZm9yIC0tcmVtb3ZlIgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0ZGIuYzo1OQorIywgZnV6enkKK21zZ2lkICJzeW50YXggZXJyb3I6IGludmFsaWQgdWlkIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJiaWdvIHNhIHBhZ2J1a2FzIG5nIHRhbGFrc2FuZyBzdGF0b3ZlcnJpZGUiCisKKyM6IHNyYy9zdGF0ZGIuYzo2NAorIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3I6IHVua25vd24gdXNlciAnJXMnIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0ZGIuYzo4MworIywgZnV6enkKK21zZ2lkICJzeW50YXggZXJyb3I6IGludmFsaWQgZ2lkIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJiaWdvIHNhIHBhZ2J1a2FzIG5nIHRhbGFrc2FuZyBzdGF0b3ZlcnJpZGUiCisKKyM6IHNyYy9zdGF0ZGIuYzo4OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yOiB1bmtub3duIGdyb3VwICclcycgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgImJpZ28gc2EgcGFnYnVrYXMgbmcgdGFsYWtzYW5nIHN0YXRvdmVycmlkZSIKKworIzogc3JjL3N0YXRkYi5jOjEwNAorIywgZnV6enkKK21zZ2lkICJzeW50YXggZXJyb3I6IGludmFsaWQgbW9kZSBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiYmlnbyBzYSBwYWdidWthcyBuZyB0YWxha3Nhbmcgc3RhdG92ZXJyaWRlIgorCisjOiBzcmMvc3RhdGRiLmM6MTI3Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgImJpZ28gc2EgcGFnYnVrYXMgbmcgdGFsYWtzYW5nIHN0YXRvdmVycmlkZSIKKworIzogc3JjL3N0YXRkYi5jOjEzNAorbXNnaWQgImZhaWxlZCB0byBmc3RhdCBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiYmlnbyBzYSBwYWctZnN0YXQgbmcgdGFsYWtzYW5nIHN0YXRvdmVycmlkZSIKKworIzogc3JjL3N0YXRkYi5jOjEzNworbXNnaWQgImZhaWxlZCB0byBmc3RhdCBwcmV2aW91cyBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiYmlnbyBzYSBwYWctZnN0YXQgbmcgbmFrYXJhYW5nIHRhbGFrc2FuZyBzdGF0b3ZlcnJpZGUiCisKKyM6IHNyYy9zdGF0ZGIuYzoxNjIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInN0YXRvdmVycmlkZSBmaWxlIGAlLjI1MHMnIgorbXNnaWQgInJlYWRpbmcgc3RhdG92ZXJyaWRlIGZpbGUgJyUuMjUwcyciCittc2dzdHIgInRhbGFrc2FuZyBzdGF0b3ZlcnJpZGUgYCUuMjUwcyciCisKKyM6IHNyYy9zdGF0ZGIuYzoxNjkKKyMsIGZ1enp5Cittc2dpZCAic3RhdG92ZXJyaWRlIGZpbGUgaXMgbWlzc2luZyBmaW5hbCBuZXdsaW5lIgorbXNnc3RyICJuYWdsYWxhbWFuIG5nIGJsYW5rb25nIGxpbnlhIGFuZyB0YWxha3Nhbmcgc3RhdG92ZXJyaWRlIgorCisjOiBzcmMvc3RhdGRiLmM6MTczCittc2dpZCAic3RhdG92ZXJyaWRlIGZpbGUgY29udGFpbnMgZW1wdHkgbGluZSIKK21zZ3N0ciAibmFnbGFsYW1hbiBuZyBibGFua29uZyBsaW55YSBhbmcgdGFsYWtzYW5nIHN0YXRvdmVycmlkZSIKKworIzogc3JjL3N0YXRkYi5jOjE3OCBzcmMvc3RhdGRiLmM6MTkwIHNyYy9zdGF0ZGIuYzoyMDIKKyMsIGZ1enp5Cittc2dpZCAic3ludGF4IGVycm9yIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJiaWdvIHNhIHBhZ2J1a2FzIG5nIHRhbGFrc2FuZyBzdGF0b3ZlcnJpZGUiCisKKyM6IHNyYy9zdGF0ZGIuYzoxODYgc3JjL3N0YXRkYi5jOjE5OCBzcmMvc3RhdGRiLmM6MjEwCisjLCBmdXp6eQorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGxpbmUgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgImRpIGluYWFzYWhhbmcgZHVsbyBuZyBsaW55YSBzYSBwYW5nYWxhbiBuZyBwYWtldGUgc2EgbGlueWEgJWQiCisKKyM6IHNyYy9zdGF0ZGIuYzoyMTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIm11bHRpcGxlIHN0YXR1c292ZXJyaWRlcyBwcmVzZW50IGZvciBmaWxlICclLjI1MHMnIgorbXNnc3RyICJ0YWxha3Nhbmcgc3RhdG92ZXJyaWRlIGAlLjI1MHMnIgorCisjOiBzcmMvdHJpZ2NtZC5jOjQ2CisjLCBmdXp6eQorbXNnaWQgIlR5cGUgZHBrZy10cmlnZ2VyIC0taGVscCBmb3IgaGVscCBhYm91dCB0aGlzIHV0aWxpdHkuIgorbXNnc3RyICJkcGtnLXNwbGl0IC0taGVscCBwYXJhIHNhIHR1bG9uZy4iCisKKyM6IHNyYy90cmlnY21kLmM6NTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiAlcyBwYWNrYWdlIHRyaWdnZXIgdXRpbGl0eSB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICIga2FzYW5na2FwYW4gc2EgcGFndGFub25nIG5nIHByb2dyYW1hbmcgdGFnYXBhbmdhc2l3YSBuZyBtZ2EgcGFrZXRlXG4iCisKKyM6IHNyYy90cmlnY21kLmM6NjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbnM+IC4uLl0gPHRyaWdnZXItbmFtZT5cbiIKKyIgICAgICAgJXMgWzxvcHRpb25zPiAuLi5dIDxjb21tYW5kPlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy90cmlnY21kLmM6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLS1jaGVjay1zdXBwb3J0ZWQgICAgICAgICAgICAgICAgQ2hlY2sgaWYgdGhlIHJ1bm5pbmcgZHBrZyBzdXBwb3J0cyAiCisidHJpZ2dlcnMuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogc3JjL3RyaWdjbWQuYzo4MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorIiAgLS1ieS1wYWNrYWdlPTxwYWNrYWdlPiAgICAgICAgICAgT3ZlcnJpZGUgdHJpZ2dlciBhd2FpdGVyIChub3JtYWxseSBzZXRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnkgZHBrZykuXG4iCisiICAtLW5vLWF3YWl0ICAgICAgICAgICAgICAgICAgICAgICBObyBwYWNrYWdlIG5lZWRzIHRvIGF3YWl0IHRoZSAiCisicHJvY2Vzc2luZy5cbiIKKyIgIC0tbm8tYWN0ICAgICAgICAgICAgICAgICAgICAgICAgIEp1c3QgdGVzdCAtIGRvbid0IGFjdHVhbGx5IGNoYW5nZSAiCisiYW55dGhpbmcuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogc3JjL3RyaWdjbWQuYzoxNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IHRyaWdnZXJzIGRhdGEgZGlyZWN0b3J5IG5vdCB5ZXQgY3JlYXRlZFxuIgorbXNnc3RyICIiCisKKyM6IHNyYy90cmlnY21kLmM6MTU2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB0cmlnZ2VyIHJlY29yZHMgbm90IHlldCBpbiBleGlzdGVuY2VcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIwNQorIywgZnV6enkKK21zZ2lkICJ0YWtlcyBvbmUgYXJndW1lbnQsIHRoZSB0cmlnZ2VyIG5hbWUiCittc2dzdHIgIiIKKyItLSVzIGF5IHR1bWF0YW5nZ2FwIGxhbWFuZyBuZyBpc2FuZyBhcmd1bWVudG8gKHBhbmdhbGFuIG5nIHRhbGFrc2FuZyAuZGViKSIKKworIzogc3JjL3RyaWdjbWQuYzoyMTAKK21zZ2lkICJtdXN0IGJlIGNhbGxlZCBmcm9tIGEgbWFpbnRhaW5lciBzY3JpcHQgKG9yIHdpdGggYSAtLWJ5LXBhY2thZ2Ugb3B0aW9uKSIKK21zZ3N0ciAiIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIxNQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiaWxsZWdhbCBhd2FpdGVkIHBhY2thZ2UgbmFtZSAnJS4yNTBzJzogJS4yNTBzIgorbXNnc3RyICJzYWtsYXcgbmEgYCVzJywgaW1iYWxpZG8gbmEgcGFuZ2FsYW4gbmcgcGFrZXRlIGAlLjI1NXMnOiAlcyIKKworIzogc3JjL3RyaWdjbWQuYzoyMjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgdHJpZ2dlciBuYW1lIGAlLjI1MHMnOiAlLjI1MHMiCittc2dzdHIgInNha2xhdyBuYSBgJXMnLCBpbWJhbGlkbyBuYSBwYW5nYWxhbiBuZyBwYWtldGUgYCUuMjU1cyc6ICVzIgorCisjOiBzcmMvdHJpZ3Byb2MuYzoyNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBjeWNsZSBmb3VuZCB3aGlsZSBwcm9jZXNzaW5nIHRyaWdnZXJzOlxuIgorIiBjaGFpbiBvZiBwYWNrYWdlcyB3aG9zZSB0cmlnZ2VycyBhcmUgb3IgbWF5IGJlIHJlc3BvbnNpYmxlOlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy90cmlncHJvYy5jOjI1OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiIHBhY2thZ2VzJyBwZW5kaW5nIHRyaWdnZXJzIHdoaWNoIGFyZSBvciBtYXkgYmUgdW5yZXNvbHZhYmxlOlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy90cmlncHJvYy5jOjI4MQorbXNnaWQgInRyaWdnZXJzIGxvb3BpbmcsIGFiYW5kb25lZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvdHJpZ3Byb2MuYzozMTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIlByb2Nlc3NpbmcgdHJpZ2dlcnMgZm9yICVzIC4uLlxuIgorbXNnc3RyICJQaW51cHVyZ2EgYW5nIHRhbGFrc2FuZyBwYWdrYWF5b3MgbmcgJXMgLi4uXG4iCisKKyM6IHNyYy91cGRhdGUuYzo1MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiLS0lcyBuZWVkcyBleGFjdGx5IG9uZSBQYWNrYWdlcyBmaWxlIGFyZ3VtZW50IgorbXNnaWQgIi0tJXMgbmVlZHMgZXhhY3RseSBvbmUgUGFja2FnZXMtZmlsZSBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyBheSBuYW5nYW5nYWlsYW5nYW4gbmcgaXNhbmcgYXJndW1lbnRvbmcgdGFsYWtzYW5nIFBhY2thZ2VzIgorCisjOiBzcmMvdXBkYXRlLmM6NjIKK21zZ2lkICJ1bmFibGUgdG8gYWNjZXNzIGRwa2cgc3RhdHVzIGFyZWEgZm9yIGJ1bGsgYXZhaWxhYmxlIHVwZGF0ZSIKK21zZ3N0ciAiIgorImRpIG1hLWFrc2VzIGFuZyBkcGtnIHN0YXR1cyBhcmVhIHBhcmEgc2EgbWFyYW1paGFuZyBwYWctYXBkZXl0IG5nIG1hZ2FnYW1pdCIKKworIzogc3JjL3VwZGF0ZS5jOjY0Cittc2dpZCAiYnVsayBhdmFpbGFibGUgdXBkYXRlIHJlcXVpcmVzIHdyaXRlIGFjY2VzcyB0byBkcGtnIHN0YXR1cyBhcmVhIgorbXNnc3RyICIiCisia2FpbGFuZ2FuIG5nIGFrc2VzIHNhIHBhZ3N1bGF0IHNhIGRwa2cgc3RhdHVzIGFyZWEgbmcgbWFyYW1paGFuZyBwYWctYXBkZXl0ICIKKyJuZ1xuIgorIm1hZ2FnYW1pdCIKKworIzogc3JjL3VwZGF0ZS5jOjcxCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlcGxhY2luZyBhdmFpbGFibGUgcGFja2FnZXMgaW5mbywgdXNpbmcgJXMuXG4iCittc2dzdHIgIiIKKyJQaW5hcGFsaXRhbiBhbmcgaW5mbyB0dW5na29sIHNhIG1hZ2FnYW1pdCBuYSBtZ2EgcGFrZXRlLCBnYW1pdCBhbmcgJXMuXG4iCisKKyM6IHNyYy91cGRhdGUuYzo3NAorIywgYy1mb3JtYXQKK21zZ2lkICJVcGRhdGluZyBhdmFpbGFibGUgcGFja2FnZXMgaW5mbywgdXNpbmcgJXMuXG4iCittc2dzdHIgIiIKKyJJbmEtYXBkZXl0IGFuZyBpbmZvIHR1bmdrb2wgc2EgbWFnYWdhbWl0IG5hIG1nYSBwYWtldGUsIGdhbWl0IGFuZyAlcy5cbiIKKworIzogc3JjL3VwZGF0ZS5jOjEwMQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiSW5mb3JtYXRpb24gYWJvdXQgJWQgcGFja2FnZShzKSB3YXMgdXBkYXRlZC5cbiIKK21zZ2lkICJJbmZvcm1hdGlvbiBhYm91dCAlZCBwYWNrYWdlIHdhcyB1cGRhdGVkLlxuIgorbXNnaWRfcGx1cmFsICJJbmZvcm1hdGlvbiBhYm91dCAlZCBwYWNrYWdlcyB3YXMgdXBkYXRlZC5cbiIKK21zZ3N0clswXSAiSW1wb3JtYXN5b24gdHVuZ2tvbCBzYSAlZCBuYSAobWdhKSBwYWtldGUgYXkgaW5hcGRleXQuXG4iCittc2dzdHJbMV0gIkltcG9ybWFzeW9uIHR1bmdrb2wgc2EgJWQgbmEgKG1nYSkgcGFrZXRlIGF5IGluYXBkZXl0LlxuIgorCisjOiBzcmMvdXBkYXRlLmM6MTE1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJvYnNvbGV0ZSAnLS0lcycgb3B0aW9uLCB1bmF2YWlsYWJsZSBwYWNrYWdlcyBhcmUgYXV0b21hdGljYWxseSBjbGVhbmVkIHVwLiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIG5hbWUgJyUuNTBzLi4uJyBpcyB0b28gbG9uZyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjEyOQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgZmlsZSBuYW1lICclLjI1MHMnIgorbXNnc3RyICJoaW5kaSBtYWJ1a3NhbiBhbmcgcGluYWdtdWxhbiBuYSB0YWxha3NhbmcgYCUuMjUwcyciCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTg5CisjLCBmdXp6eQorbXNnaWQgInVuYWJsZSB0byBzdGF0IGNvbnRyb2wgZGlyZWN0b3J5IgorbXNnc3RyICJoaW5kaSBtYWJ1a3NhbiBhbmcgdGVtcCBjb250cm9sIGRpcmVjdG9yeSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoxOTEKKyMsIGZ1enp5Cittc2dpZCAiY29udHJvbCBkaXJlY3RvcnkgaXMgbm90IGEgZGlyZWN0b3J5IgorbXNnc3RyICJoaW5kaSBtYWJhc2EgYW5nIGluZm8gZGlyZWN0b3J5IgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjE5MworIywgYy1mb3JtYXQKK21zZ2lkICJjb250cm9sIGRpcmVjdG9yeSBoYXMgYmFkIHBlcm1pc3Npb25zICUwM2xvIChtdXN0IGJlID49MDc1NSBhbmQgPD0wNzc1KSIKK21zZ3N0ciAiIgorImNvbnRyb2wgZGlyZWN0b3J5IGF5IG1heSBtYXNhbWFuZyBwYWhpbnR1bG90ICUwM2xvIChrYWlsYW5nYW5nID49MDc1NSBhdCAiCisiPD0wNzc1KSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAibWFpbnRhaW5lciBzY3JpcHQgYCUuNTBzJyBpcyBub3QgYSBwbGFpbiBmaWxlIG9yIHN5bWxpbmsiCittc2dzdHIgInNrcmlwdG8gbmcgdGFnYXBhbmdhbGFnYSBgJS41MHMnIGF5IGhpbmRpIHBheWFrIG5hIHRhbGFrc2FuIG8gc3ltbGluayIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyMDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm1haW50YWluZXIgc2NyaXB0IGAlLjUwcycgaGFzIGJhZCBwZXJtaXNzaW9ucyAlMDNsbyAobXVzdCBiZSA+PTA1NTUgYW5kICIKKyI8PTA3NzUpIgorbXNnc3RyICIiCisic2tyaXB0byBuZyB0YWdhcGFuZ2FsYWdhIGAlLjUwcycgYXkgbWF5IG1hc2FtYW5nIHBhaGludHVsb3QgJTAzbG9cbiIKKyIoa2FpbGFuZ2FuZyA+PTA1NTUgYXQgPD0wNzc1KSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAibWFpbnRhaW5lciBzY3JpcHQgYCUuNTBzJyBpcyBub3Qgc3RhdHRhYmxlIgorbXNnc3RyICJza3JpcHRvIG5nIHRhZ2FwYW5nYWxhZ2EgYCUuNTBzJyBheSBoaW5kaSBtYS1zdGF0IgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjIzNworbXNnaWQgImVycm9yIG9wZW5pbmcgY29uZmZpbGVzIGZpbGUiCittc2dzdHIgImVycm9yIHNhIHBhZ2J1a2FzIG5nIHRhbGFrc2FuZyBjb25mZmlsZXMiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjQ2Cittc2dpZCAiZW1wdHkgc3RyaW5nIGZyb20gZmdldHMgcmVhZGluZyBjb25mZmlsZXMiCittc2dzdHIgIndhbGFuZyBsYW1hbiBhbmcgc3RyaW5nIG11bGEgc2EgZmdldHMgaGFiYW5nIGJpbmFiYXNhIGFuZyBjb25mZmlsZXMiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjUxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBuYW1lICclLjUwcy4uLicgaXMgdG9vIGxvbmcsIG9yIG1pc3NpbmcgZmluYWwgbmV3bGluZSIKK21zZ3N0ciAiIgorImJhYmFsYSwgcGFuZ2FsYW4gbmcgY29uZmZpbGUgYCUuNTBzLi4uJyBheSBsYWJpcyBhbmcgaGFiYSwgbyBrdWxhbmdcbiIKKyJuZyBwYW5nd2FrYXMgbmEgbmV3bGluZVxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI2NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgZmlsZW5hbWUgJyVzJyBjb250YWlucyB0cmFpbGluZyB3aGl0ZSBzcGFjZXMiCittc2dzdHIgImJhYmFsYSwgY29uZmZpbGUgYCVzJyBheSBoaW5kaSBwYXlhayBuYSB0YWxha3NhblxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI2NgorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBgJS4yNTBzJyBkb2VzIG5vdCBhcHBlYXIgaW4gcGFja2FnZSIKK21zZ3N0ciAiY29uZmZpbGUgYCUuMjUwcycgYXkgd2FsYSBzYSBwYWtldGUiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjY4CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIGAlLjI1MHMnIGlzIG5vdCBzdGF0dGFibGUiCittc2dzdHIgImNvbmZmaWxlIGAlLjI1MHMnIGF5IGhpbmRpIG1hLXN0YXQiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjcwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSAnJXMnIGlzIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgImJhYmFsYSwgY29uZmZpbGUgYCVzJyBheSBoaW5kaSBwYXlhayBuYSB0YWxha3NhblxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI3NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgbmFtZSAnJXMnIGlzIGR1cGxpY2F0ZWQiCittc2dzdHIgImJhYmFsYSwgY29uZmZpbGUgYCVzJyBheSBoaW5kaSBwYXlhayBuYSB0YWxha3NhblxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI4NworbXNnaWQgImVycm9yIHJlYWRpbmcgY29uZmZpbGVzIGZpbGUiCittc2dzdHIgImVycm9yIHNhIHBhZ2Jhc2EgbmcgdGFsYWtzYW5nIGNvbmZmaWxlcyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzozMzkKK21zZ2lkICJwYWNrYWdlIG5hbWUgaGFzIGNoYXJhY3RlcnMgdGhhdCBhcmVuJ3QgbG93ZXJjYXNlIGFscGhhbnVtcyBvciBgLSsuJyIKK21zZ3N0ciAiIgorInBhbmdhbGFuIG5nIHBha2V0ZSBheSBtYXkgbWdhIGthcmFrdGVyIG5hIGhpbmRpIG1hbGlpdCBuYSB0aXRpaywgbnVtZXJvIG8gYC0iCisiKy4nIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjM0MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBjb250YWlucyB1c2VyLWRlZmluZWQgUHJpb3JpdHkgdmFsdWUgJyVzJyIKK21zZ3N0ciAiYmFiYWxhLCBgJXMnIGF5IG5hZ2xhbGFtYW4gbmcgaGFsYWdhbmcgdXNlci1kZWZpbmVkIFByaW9yaXR5IGAlcydcbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzozNDcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiclcycgY29udGFpbnMgdXNlci1kZWZpbmVkIGZpZWxkICclcyciCittc2dzdHIgImJhYmFsYSwgYCVzJyBheSBuYWdsYWxhbWFuIG5nIHVzZXItZGVmaW5lZCBuYSBzYWtsYXcgYCVzJ1xuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjM1OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgJWQgd2FybmluZyBhYm91dCB0aGUgY29udHJvbCBmaWxlKHMpXG4iCittc2dpZF9wbHVyYWwgImlnbm9yaW5nICVkIHdhcm5pbmdzIGFib3V0IHRoZSBjb250cm9sIGZpbGUocylcbiIKK21zZ3N0clswXSAiIgorImRwa2ctZGViOiBoaW5kaSBwaW5hbnNpbiAlZCBuYSBiYWJhbGEgdHVuZ2tvbCBzYSAobWdhKSB0YWxha3NhbmcgY29udHJvbFxuIgorbXNnc3RyWzFdICIiCisiZHBrZy1kZWI6IGhpbmRpIHBpbmFuc2luICVkIG5hIGJhYmFsYSB0dW5na29sIHNhIChtZ2EpIHRhbGFrc2FuZyBjb250cm9sXG4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDAzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDI5CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQzNgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhIDxkaXJlY3Rvcnk+IGFyZ3VtZW50IgorbXNnc3RyICItLWJ1aWxkIGF5IG5hbmdhbmdhaWxhbmdhbiBuZyBhcmd1bWVudG9uZyBkaXJlY3RvcnkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDA5Cittc2dpZCAiLS1idWlsZCB0YWtlcyBhdCBtb3N0IHR3byBhcmd1bWVudHMiCittc2dzdHIgIi0tYnVpbGQgYXkgdHVtYXRhbmdnYXAgbmcgaGFuZ2dhbmcgZGFsYXdhbmcgYXJndW1lbnRvIGxhbWFuZyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoZWNrIGZvciBleGlzdGVuY2Ugb2YgYXJjaGl2ZSBgJS4yNTBzJyIKK21zZ3N0ciAiaGluZGkgbWF0aXlhayBuYSBtYXlyb29uZyBhcmtpYm9uZyBgJS4yNTBzJyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzAKK21zZ2lkICJ0YXJnZXQgaXMgZGlyZWN0b3J5IC0gY2Fubm90IHNraXAgY29udHJvbCBmaWxlIGNoZWNrIgorbXNnc3RyICIiCisiYW5nIHRhcmdldCBheSBkaXJlY3RvcnkgLSBoaW5kaSBtYWxha3Rhd2FuIGFuZyBwYWdzdXJpIG5nIHRhbGFrc2FuZyBjb250cm9sIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQzMQorbXNnaWQgIm5vdCBjaGVja2luZyBjb250ZW50cyBvZiBjb250cm9sIGFyZWEuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDMyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJkcGtnLWRlYjogYnVpbGRpbmcgYW4gdW5rbm93biBwYWNrYWdlIGluICclcycuXG4iCittc2dzdHIgImRwa2ctZGViOiBiaW51YnVvIGFuZyBwYWtldGVuZyBgJXMnIHNhIGAlcycuXG4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDM5CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2ctZGViOiBidWlsZGluZyBwYWNrYWdlIGAlcycgaW4gYCVzJy5cbiIKK21zZ3N0ciAiZHBrZy1kZWI6IGJpbnVidW8gYW5nIHBha2V0ZW5nIGAlcycgc2EgYCVzJy5cbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0NjcgZHBrZy1kZWIvYnVpbGQuYzo1MjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byBtYWtlIHRtcGZpbGUgKGRhdGEpIgorbXNnaWQgImZhaWxlZCB0byBtYWtlIHRlbXBvcmFyeSBmaWxlICglcykiCittc2dzdHIgImJpZ28gbmEgbGlraGFpbiBhbmcgdG1wZmlsZSAoZGF0b3MpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ2NyBkcGtnLWRlYi9idWlsZC5jOjQ3MCBkcGtnLWRlYi9idWlsZC5jOjQ3NworIzogZHBrZy1kZWIvYnVpbGQuYzo0ODUgZHBrZy1kZWIvYnVpbGQuYzo0OTQgZHBrZy1kZWIvYnVpbGQuYzo0OTkKKyMsIGZ1enp5Cittc2dpZCAiY29udHJvbCBtZW1iZXIiCittc2dzdHIgImN0cmxhcmVhIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ3MCBkcGtnLWRlYi9idWlsZC5jOjUyNAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIHVubGluayB0bXBmaWxlIChkYXRhKSwgJXMiCittc2dpZCAiZmFpbGVkIHRvIHVubGluayB0ZW1wb3JhcnkgZmlsZSAoJXMpLCAlcyIKK21zZ3N0ciAiYmlnbyBuYSBpLXVubGluayBhbmcgdG1wZmlsZSAoZGF0b3MpLCAlcyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0ODUgZHBrZy1kZWIvYnVpbGQuYzo1OTMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdG1wZmlsZSAoZGF0YSkiCittc2dpZCAiZmFpbGVkIHRvIHJld2luZCB0ZW1wb3JhcnkgZmlsZSAoJXMpIgorbXNnc3RyICJiaWdvIG5hIGktcmV3aW5kIGFuZyB0bXBmaWxlIChkYXRvcykiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDk0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gc3RhdCB0ZW1wb3JhcnkgZmlsZSAoJXMpIgorbXNnc3RyICJiaWdvIG5hIGxpa2hhaW4gYW5nIHRtcGZpbGUgKGRhdG9zKSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0OTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igd3JpdGluZyBgJXMnIgorbXNnc3RyICJlcnJvciBzYSBwYWdzdWxhdCBuZyBgJXMnIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjUyMSBkcGtnLWRlYi9idWlsZC5jOjUyNCBkcGtnLWRlYi9idWlsZC5jOjU0NgorIzogZHBrZy1kZWIvYnVpbGQuYzo1NzIgZHBrZy1kZWIvYnVpbGQuYzo1ODAgZHBrZy1kZWIvYnVpbGQuYzo1OTMKKyMsIGZ1enp5CisjfCBtc2dpZCAiYmV0d2VlbiBtZW1iZXJzIgorbXNnaWQgImRhdGEgbWVtYmVyIgorbXNnc3RyICJzYSBnaXRuYSBuZyBtZ2Ega2FzYXBpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjU3MSBkcGtnLWRlYi9idWlsZC5jOjU4MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIHdyaXRlIGZpbGVuYW1lIHRvIHRhciBwaXBlIChkYXRhKSIKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgZmlsZW5hbWUgdG8gdGFyIHBpcGUgKCVzKSIKK21zZ3N0ciAiYmlnbyBuYSBpc3VsYXQgYW5nIHBhbmdhbGFuIG5nIHRhbGFrc2FuIHNhIHRhciBwaXBlIChkYXRvcykiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTg0Cittc2dpZCAiPGNvbXByZXNzPiBmcm9tIHRhciAtY2YiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjYxIGRwa2ctZGViL2V4dHJhY3QuYzo2MworbXNnaWQgInNoZWxsIGNvbW1hbmQgdG8gbW92ZSBmaWxlcyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6NzAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgZmlsZSBpbiAlcyBpbiAlLjI1NXMiCittc2dzdHIgImRpIGluYWFzYWhhbmcgZHVsbyBuZyB0YWxha3NhbiBzYSAlcyBzYSAlLjI1NXMiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzo3MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcmVhZGluZyAlcyBmcm9tIGZpbGUgJS4yNTVzIgorbXNnc3RyICJiaWdvIHNhIHBhZ2Jhc2EgbmcgJXMgbXVsYSBzYSAlLjI1NXMiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxMjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgYXJjaGl2ZSBgJS4yNTVzJyIKK21zZ3N0ciAiYmlnbyBzYSBwYWdiYXNhIG5nIGFya2libyBgJS4yNTVzJyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjEyNworbXNnaWQgImZhaWxlZCB0byBmc3RhdCBhcmNoaXZlIgorbXNnc3RyICJiaWdvIG5hIGktZnN0YXQgYW5nIGFya2libyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjEzMQorIywgZnV6enkKKyN8IG1zZ2lkICJhcmNoaXZlIGhhcyBubyBkb3QgaW4gdmVyc2lvbiBudW1iZXIiCittc2dpZCAiYXJjaGl2ZSBtYWdpYyB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAid2FsYW5nIHR1bGRvayBzYSBiaWxhbmcgbmcgYmVyc3lvbiBuZyBhcmtpYm8iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNDMKKyMsIGZ1enp5CisjfCBtc2dpZCAiYXJjaGl2ZSBoYXMgbm8gbmV3bGluZXMgaW4gaGVhZGVyIgorbXNnaWQgImFyY2hpdmUgbWVtYmVyIGhlYWRlciIKK21zZ3N0ciAid2FsYW5nIG5ld2xpbmUgc2EgaGVhZGVyIG5nIGFya2libyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE0OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIHBhcnQgbnVtYmVyIgorbXNnaWQgImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBhcmNoaXZlIGhlYWRlciBtYWdpYyIKK21zZ3N0ciAic2lyYSBhbmcgdGFsYWtzYW5nIGAlLjI1MHMnIC0gbWFzYW1hbmcgYmlsYW5nIG5nIGJhaGFnaSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE1NQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIG5vdCBhIGRlYmlhbiBiaW5hcnkgYXJjaGl2ZSAodHJ5IGRwa2ctc3BsaXQ/KSIKK21zZ3N0ciAiIgorImhpbmRpIGFya2lib25nIGRlYmlhbiBiaW5hcnkgYW5nIHRhbGFrc2FuZyBgJS4yNTBzJyAoc3VidWthbiBhbmcgZHBrZy1zcGxpdD8pIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTU5CisjLCBmdXp6eQorI3wgbXNnaWQgImFyY2hpdmUgaGFzIG5vIGRvdCBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ2lkICJhcmNoaXZlIGluZm9ybWF0aW9uIGhlYWRlciBtZW1iZXIiCittc2dzdHIgIndhbGFuZyB0dWxkb2sgc2EgYmlsYW5nIG5nIGJlcnN5b24gbmcgYXJraWJvIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTYyCittc2dpZCAiYXJjaGl2ZSBoYXMgbm8gbmV3bGluZXMgaW4gaGVhZGVyIgorbXNnc3RyICJ3YWxhbmcgbmV3bGluZSBzYSBoZWFkZXIgbmcgYXJraWJvIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTY1Cittc2dpZCAiYXJjaGl2ZSBoYXMgbm8gZG90IGluIHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICJ3YWxhbmcgdHVsZG9rIHNhIGJpbGFuZyBuZyBiZXJzeW9uIG5nIGFya2libyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE2OAorIywgYy1mb3JtYXQKK21zZ2lkICJhcmNoaXZlIHZlcnNpb24gJS4yNTBzIG5vdCB1bmRlcnN0b29kLCBnZXQgbmV3ZXIgZHBrZy1kZWIiCittc2dzdHIgIiIKKyJkaSBtYWludGluZGloYW4gYW5nIGJlcnN5b24gbmcgYXJraWJvbmcgJS4yNTBzLCBrdW11aGEgbmcgbWFzIGJhZ29uZyBkcGtnLWRlYiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE3OSBkcGtnLWRlYi9leHRyYWN0LmM6MjA1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJza2lwcGVkIG1lbWJlciBkYXRhIGZyb20gJXMiCittc2dpZCAic2tpcHBlZCBhcmNoaXZlIG1lbWJlciBkYXRhIGZyb20gJXMiCittc2dzdHIgImxpbmFrdGF3YW4gYW5nIGRhdG9zIG5hIGthc2FwaSBtdWxhIHNhICVzIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTk0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGNvbnRhaW5zIHVudW5kZXJzdG9vZCBkYXRhIG1lbWJlciAlLipzLCBnaXZpbmcgdXAiCittc2dpZCAiYXJjaGl2ZSAnJS4yNTBzJyBjb250YWlucyBub3QgdW5kZXJzdG9vZCBkYXRhIG1lbWJlciAlLipzLCBnaXZpbmcgdXAiCittc2dzdHIgIiIKKyJuYWdsYWxhbWFuIGFuZyB0YWxha3NhbmcgYCUuMjUwcycgbmcgaGluZGkgbWFpbnRpbmRpaGFuIG5hIGthc2FwaSBuYSBkYXRvcyAiCisiJS4qcyxcbiIKKyJzdW11c3VrbyBuYSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE5OQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZSBgJS4yNTBzJyBjb250YWlucyB0d28gY29udHJvbCBtZW1iZXJzLCBnaXZpbmcgdXAiCittc2dpZCAiYXJjaGl2ZSAnJS4yNTBzJyBjb250YWlucyB0d28gY29udHJvbCBtZW1iZXJzLCBnaXZpbmcgdXAiCittc2dzdHIgIiIKKyJuYWdsYWxhbWFuIG5nIGRhbGF3YW5nIGthc2FwaW5nIGNvbnRyb2wgYW5nIHRhbGFrc2FuZyBgJS4yNTBzJywgc3VtdXN1a28gbmEiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyMTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIgbmV3IGRlYmlhbiBwYWNrYWdlLCB2ZXJzaW9uICVzLlxuIgorI3wgIiBzaXplICVsZCBieXRlczogY29udHJvbCBhcmNoaXZlPSAlemkgYnl0ZXMuXG4iCittc2dpZCAiIgorIiBuZXcgZGViaWFuIHBhY2thZ2UsIHZlcnNpb24gJXMuXG4iCisiIHNpemUgJWpkIGJ5dGVzOiBjb250cm9sIGFyY2hpdmU9ICVqZCBieXRlcy5cbiIKK21zZ3N0ciAiIgorIiBiYWdvbmcgcGFrZXRlbmcgZGViaWFuLCBiZXJzeW9uZyAlcy5cbiIKKyIgbGFraSAlbGQgbmEgYnl0ZTogYXJraWJvbmcgY29udHJvbD0gJXppIG5hIGJ5dGUuXG4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyMzIKK21zZ2lkICJhcmNoaXZlIGNvbnRyb2wgbWVtYmVyIHNpemUiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIzNQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiYXJjaGl2ZSBoYXMgbWFsZm9ybWF0dGVkIGNvbnRyb2wgbWVtYmVyIHNpemUgJyVzJyIKK21zZ3N0ciAibWF5IG1hbGluZyBhbnlvbmcgY3RybCBsZW4gYCVzJyBhbmcgYXJraWJvIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjQyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJza2lwcGVkIG1lbWJlciBkYXRhIGZyb20gJXMiCittc2dpZCAic2tpcHBlZCBhcmNoaXZlIGNvbnRyb2wgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ3N0ciAibGluYWt0YXdhbiBhbmcgZGF0b3MgbmEga2FzYXBpIG11bGEgc2EgJXMiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNDYKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIgb2xkIGRlYmlhbiBwYWNrYWdlLCB2ZXJzaW9uICVzLlxuIgorI3wgIiBzaXplICVsZCBieXRlczogY29udHJvbCBhcmNoaXZlPSAlemksIG1haW4gYXJjaGl2ZT0gJWxkLlxuIgorbXNnaWQgIiIKKyIgb2xkIGRlYmlhbiBwYWNrYWdlLCB2ZXJzaW9uICVzLlxuIgorIiBzaXplICVqZCBieXRlczogY29udHJvbCBhcmNoaXZlPSAlamQsIG1haW4gYXJjaGl2ZT0gJWpkLlxuIgorbXNnc3RyICIiCisiIGx1bWFuZyBwYWtldGVuZyBkZWJpYW4sIGJlcnN5b25nICVzLlxuIgorIiBsYWtpICVsZCBuYSBieXRlOiBhcmtpYm9uZyBjb250cm9sPSAlemksIHBhbmd1bmFoaW5nIGFya2libz0gJWxkLlxuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjU1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnLWRlYjogZmlsZSBsb29rcyBsaWtlIGl0IG1pZ2h0IGJlIGFuIGFyY2hpdmUgd2hpY2ggaGFzIGJlZW5cbiIKKyJkcGtnLWRlYjogICAgY29ycnVwdGVkIGJ5IGJlaW5nIGRvd25sb2FkZWQgaW4gQVNDSUkgbW9kZVxuIgorbXNnc3RyICIiCisiZHBrZy1kZWI6IG11a2hhbmcgYW5nIHRhbGFrc2FuIGF5IGFya2libyBuYSBuYXNpcmEgZGFoaWwgc2FcbiIKKyJkcGtnLWRlYjogIGtpbnVoYSBpdG8gbmEgZ2FtaXQgYW5nIEFTQ0lJIG1vZGVcbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI1OQorIywgYy1mb3JtYXQKK21zZ2lkICJgJS4yNTVzJyBpcyBub3QgYSBkZWJpYW4gZm9ybWF0IGFyY2hpdmUiCittc2dzdHIgImAlLjI1NXMnIGF5IGhpbmRpIGFya2lib25nIGFueW9uZyBkZWJpYW4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNjYKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgdG8gcGlwZSBpbiBjb3B5IgorbXNnc3RyICJiaWdvIHNhIHBhZ3N1bGF0IHNhIHBpcGUgc2EgY29weSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI2OAorbXNnaWQgImZhaWxlZCB0byBjbG9zZSBwaXBlIGluIGNvcHkiCittc2dzdHIgImJpZ28gbmEgaXNhcmEgYW5nIHBpcGUgc2EgY29weSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI4NAorbXNnaWQgImRhdGEiCittc2dzdHIgImRhdG9zIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzA3Cittc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIGRpcmVjdG9yeSIKK21zZ3N0ciAiYmlnbyBuYSBtYWctY2hkaXIgc2EgZGlyZWN0b3J5IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzEwCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBkaXJlY3RvcnkiCittc2dzdHIgImJpZ28gbmEgbGlraGFpbiBhbmcgZGlyZWN0b3J5IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzEyCittc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIGRpcmVjdG9yeSBhZnRlciBjcmVhdGluZyBpdCIKK21zZ3N0ciAiYmlnbyBuYSBtYWctY2hkaXIgc2EgZGlyZWN0b3J5IG1hdGFwb3MgbGlraGFpbiBpdG8iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozMjMKKyMsIGZ1enp5Cittc2dpZCAiPGRlY29tcHJlc3M+IgorbXNnc3RyICIlczogZGVjb21wcmVzc2lvbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMyNQorIywgZnV6enkKK21zZ2lkICJwYXN0ZSIKK21zZ3N0ciAicGFzYWRvXG4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozNDIgZHBrZy1kZWIvZXh0cmFjdC5jOjM2MyBkcGtnLWRlYi9leHRyYWN0LmM6NDAyCisjOiBkcGtnLWRlYi9pbmZvLmM6NzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhIC5kZWIgZmlsZW5hbWUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMgYXkgbmFuZ2FuZ2FpbGFuZ2FuIG5nIGFyZ3VtZW50b25nIHBhbmdhbGFuIG5nIHRhbGFrc2FuZyAuZGViIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzQ3IGRwa2ctZGViL2V4dHJhY3QuYzo0MDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIi0tJXMgbmVlZHMgYSB0YXJnZXQgZGlyZWN0b3J5LlxuIgorIlBlcmhhcHMgeW91IHNob3VsZCBiZSB1c2luZyBkcGtnIC0taW5zdGFsbCA/IgorbXNnc3RyICIiCisiLS0lcyBheSBuYW5nYW5nYWlsYW5nYW4gbmcgdGFyZ2V0IGRpcmVjdG9yeS5cbiIKKyJTaWd1cm8gYW5nIGthaWxhbmdhbiBuaXlvbmcgZ2FtaXRpbiBheSBkcGtnIC0taW5zdGFsbCA/IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzUwIGRwa2ctZGViL2V4dHJhY3QuYzo0MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyB0YWtlcyBhdCBtb3N0IHR3byBhcmd1bWVudHMgKC5kZWIgYW5kIGRpcmVjdG9yeSkiCittc2dzdHIgIiIKKyItLSVzIGF5IHR1bWF0YW5nZ2FwIG5nIGhpbmRpIGxhbGFiaXMgc2EgZGFsYXdhbmcgYXJndW1lbnRvICguZGViIGF0ICIKKyJkaXJlY3RvcnkpIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzY1CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgb25seSBvbmUgYXJndW1lbnQgKC5kZWIgZmlsZW5hbWUpIgorbXNnc3RyICIiCisiLS0lcyBheSB0dW1hdGFuZ2dhcCBsYW1hbmcgbmcgaXNhbmcgYXJndW1lbnRvIChwYW5nYWxhbiBuZyB0YWxha3NhbmcgLmRlYikiCisKKyM6IGRwa2ctZGViL2luZm8uYzo2MworbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byBgLycgZm9yIGNsZWFudXAiCittc2dzdHIgImJpZ28gc2EgcGFnLWNoZGlyIHNhIGAvJyB1cGFuZyBtYWdsaW5pcyIKKworIzogZHBrZy1kZWIvaW5mby5jOjEwNgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiY29udHJvbCBmaWxlICclcyciCittc2dzdHIgImhpbmRpIG1hLXN0YXQgYW5nIGAlLjI1NXMnIChzYSBgJS4yNTVzJykiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZy1kZWI6IGAlLjI1NXMnIGNvbnRhaW5zIG5vIGNvbnRyb2wgY29tcG9uZW50IGAlLjI1NXMnXG4iCittc2dzdHIgImRwa2ctZGViOiBgJS4yNTVzJyBheSBoaW5kaSBuYWdsYWxhbWFuIG5nIGNvbnRyb2wgY29tcG9uZW50IGAlLjI1NXMnXG4iCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAib3BlbiBjb21wb25lbnQgYCUuMjU1cycgKGluICUuMjU1cykgZmFpbGVkIGluIGFuIHVuZXhwZWN0ZWQgd2F5IgorbXNnc3RyICIiCisicGFnYnVrYXMgbmcgYmFoYWdpbmcgYCUuMjU1cycgKG5nICUuMjU1cykgYmlnbyBzYSBoaW5kaSBpbmFhc2FoYW5nIHBhcmFhbiIKKworIzogZHBrZy1kZWIvaW5mby5jOjEyMQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiT25lIHJlcXVlc3RlZCBjb250cm9sIGNvbXBvbmVudCBpcyBtaXNzaW5nIgorbXNnaWQgIiVkIHJlcXVlc3RlZCBjb250cm9sIGNvbXBvbmVudCBpcyBtaXNzaW5nIgorbXNnaWRfcGx1cmFsICIlZCByZXF1ZXN0ZWQgY29udHJvbCBjb21wb25lbnRzIGFyZSBtaXNzaW5nIgorbXNnc3RyWzBdICJNYXkga3VsYW5nIG5hIGlzYW5nIGhpbmluZ2luZyBiYWhhZ2luZyBjb250cm9sIgorbXNnc3RyWzFdICJNYXkga3VsYW5nIG5hIGlzYW5nIGhpbmluZ2luZyBiYWhhZ2luZyBjb250cm9sIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTM5IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo0MjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHNjYW4gZGlyZWN0b3J5IGAlLjI1NXMnIgorbXNnc3RyICJoaW5kaSBtYS1zY2FuIGFuZyBkaXJlY3RvcnkgYCUuMjU1cyciCisKKyM6IGRwa2ctZGViL2luZm8uYzoxNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHN0YXQgYCUuMjU1cycgKGluIGAlLjI1NXMnKSIKK21zZ3N0ciAiaGluZGkgbWEtc3RhdCBhbmcgYCUuMjU1cycgKHNhIGAlLjI1NXMnKSIKKworIzogZHBrZy1kZWIvaW5mby5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgb3BlbiBgJS4yNTVzJyAoaW4gYCUuMjU1cycpIgorbXNnc3RyICJoaW5kaSBtYWJ1a3NhbiBhbmcgYCUuMjU1cycgKHNhIGAlLjI1NXMnKSIKKworIzogZHBrZy1kZWIvaW5mby5jOjE2NyBkcGtnLWRlYi9pbmZvLmM6MTg1IGRwa2ctZGViL2luZm8uYzoxOTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgYCUuMjU1cycgKGluIGAlLjI1NXMnKSIKK21zZ3N0ciAiYmlnbyBhbmcgcGFnYmFzYSBuZyBgJS4yNTVzJyAoc2EgYCUuMjU1cycpIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTcwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIgJTdsZCBieXRlcywgJTVkIGxpbmVzICAgJWMgICUtMjAuMTI3cyAlLjEyN3NcbiIKK21zZ2lkICIgJTdqZCBieXRlcywgJTVkIGxpbmVzICAgJWMgICUtMjAuMTI3cyAlLjEyN3NcbiIKK21zZ3N0ciAiICU3bGQgbmEgYnl0ZSwgJTVkIG5hIGxpbnlhICAgJWMgICUtMjAuMTI3cyAlLjEyN3NcbiIKKworIzogZHBrZy1kZWIvaW5mby5jOjE3NAorIywgYy1mb3JtYXQKK21zZ2lkICIgICAgIG5vdCBhIHBsYWluIGZpbGUgICAgICAgICAgJS4yNTVzXG4iCittc2dzdHIgIiAgICAgaGluZGkgcGF5YWsgbmEgdGFsYWtzYW4gICAlLjI1NXNcbiIKKworIzogZHBrZy1kZWIvaW5mby5jOjE4NgorbXNnaWQgIihubyBgY29udHJvbCcgZmlsZSBpbiBjb250cm9sIGFyY2hpdmUhKVxuIgorbXNnc3RyICIod2FsYW5nIHRhbGFrc2FuZyBgY29udHJvbCcgc2EgYXJraWJvbmcgY29udHJvbCEpXG4iCisKKyM6IGRwa2ctZGViL2luZm8uYzoyMjIKK21zZ2lkICJjb3VsZCBub3Qgb3BlbiB0aGUgYGNvbnRyb2wnIGNvbXBvbmVudCIKK21zZ3N0ciAiaGluZGkgbWFidWtzYW4gYW5nIGJhaGFnaW5nIGBjb250cm9sJyIKKworIzogZHBrZy1kZWIvaW5mby5jOjI2MQorbXNnaWQgImZhaWxlZCBkdXJpbmcgcmVhZCBvZiBgY29udHJvbCcgY29tcG9uZW50IgorbXNnc3RyICJiaWdvIHNhIHBhZ2Jhc2EgbmcgYmFoYWdpbmcgYGNvbnRyb2wnIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MjYzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nIHRoZSAnJXMnIGNvbXBvbmVudCIKK21zZ3N0ciAiZXJyb3Igc2EgcGFnc2FyYSBuZyBwaXBlIG5nIGZpbmQiCisKKyM6IGRwa2ctZGViL2luZm8uYzoyNzgKK21zZ2lkICJFcnJvciBpbiBmb3JtYXQiCittc2dzdHIgIkVycm9yIHNhIGZvcm1hdCIKKworIzogZHBrZy1kZWIvaW5mby5jOjMyOAorbXNnaWQgIi0tY29udGVudHMgdGFrZXMgZXhhY3RseSBvbmUgYXJndW1lbnQiCittc2dzdHIgIi0tY29udGVudHMgYXkgdHVtYXRhbmdnYXAgbmcgaXNhbmcgYXJndW1lbnRvIGxhbWFuZyIKKworIzogZHBrZy1kZWIvbWFpbi5jOjU0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIGFyY2hpdmUgYmFja2VuZCB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICInIGJlcnN5b24gbmcgYmFja2VuZCBuZyBhcmtpYm9uZyBwYWtldGUiCisKKyM6IGRwa2ctZGViL21haW4uYzo3MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtYnwtLWJ1aWxkIDxkaXJlY3Rvcnk+IFs8ZGViPl0gICBCdWlsZCBhbiBhcmNoaXZlLlxuIgorIiAgLWN8LS1jb250ZW50cyA8ZGViPiAgICAgICAgICAgICAgTGlzdCBjb250ZW50cy5cbiIKKyIgIC1JfC0taW5mbyA8ZGViPiBbPGNmaWxlPiAuLi5dICAgIFNob3cgaW5mbyB0byBzdGRvdXQuXG4iCisiICAtV3wtLXNob3cgPGRlYj4gICAgICAgICAgICAgICAgICBTaG93IGluZm9ybWF0aW9uIG9uIHBhY2thZ2UocylcbiIKKyIgIC1mfC0tZmllbGQgPGRlYj4gWzxjZmllbGQ+IC4uLl0gIFNob3cgZmllbGQocykgdG8gc3Rkb3V0LlxuIgorIiAgLWV8LS1jb250cm9sIDxkZWI+IFs8ZGlyZWN0b3J5Pl0gRXh0cmFjdCBjb250cm9sIGluZm8uXG4iCisiICAteHwtLWV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gICBFeHRyYWN0IGZpbGVzLlxuIgorIiAgLVh8LS12ZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PiAgRXh0cmFjdCAmIGxpc3QgZmlsZXMuXG4iCisiICAtUnwtLXJhdy1leHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFeHRyYWN0IGNvbnRyb2wgaW5mbyBhbmQgZmlsZXMuXG4iCisiICAtLWZzeXMtdGFyZmlsZSA8ZGViPiAgICAgICAgICAgICBPdXRwdXQgZmlsZXN5c3RlbSB0YXJmaWxlLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL21haW4uYzo5MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiPGRlYj4gaXMgdGhlIGZpbGVuYW1lIG9mIGEgRGViaWFuIGZvcm1hdCBhcmNoaXZlLlxuIgorIjxjZmlsZT4gaXMgdGhlIG5hbWUgb2YgYW4gYWRtaW5pc3RyYXRpdmUgZmlsZSBjb21wb25lbnQuXG4iCisiPGNmaWVsZD4gaXMgdGhlIG5hbWUgb2YgYSBmaWVsZCBpbiB0aGUgbWFpbiBgY29udHJvbCcgZmlsZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9tYWluLmM6OTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLXNob3dmb3JtYXQ9PGZvcm1hdD4gICAgICAgICAgICBVc2UgYWx0ZXJuYXRpdmUgZm9ybWF0IGZvciAtLXNob3cuXG4iCisiICAtdiwgLS12ZXJib3NlICAgICAgICAgICAgICAgICAgICBFbmFibGUgdmVyYm9zZSBvdXRwdXQuXG4iCisiICAtRCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbmFibGUgZGVidWdnaW5nIG91dHB1dC5cbiIKKyIgIC0tb2xkLCAtLW5ldyAgICAgICAgICAgICAgICAgICAgIFNlbGVjdCBhcmNoaXZlIGZvcm1hdC5cbiIKKyIgIC0tbm9jaGVjayAgICAgICAgICAgICAgICAgICAgICAgIFN1cHByZXNzIGNvbnRyb2wgZmlsZSBjaGVjayAoYnVpbGQgYmFkXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhY2thZ2VzKS5cbiIKKyIgIC16IyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNldCB0aGUgY29tcHJlc3Npb24gbGV2ZWwgd2hlbiBidWlsZGluZy5cbiIKKyIgIC1aPHR5cGU+ICAgICAgICAgICAgICAgICAgICAgICAgIFNldCB0aGUgY29tcHJlc3Npb24gdHlwZSB1c2VkIHdoZW4gIgorImJ1aWxkaW5nLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBbGxvd2VkIHR5cGVzOiBnemlwLCB4eiwgYnppcDIsIGx6bWEsICIKKyJub25lLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL21haW4uYzoxMjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIlVzZSBgZHBrZycgdG8gaW5zdGFsbCBhbmQgcmVtb3ZlIHBhY2thZ2VzIGZyb20geW91ciBzeXN0ZW0sIG9yXG4iCisiYGRzZWxlY3QnIG9yIGBhcHRpdHVkZScgZm9yIHVzZXItZnJpZW5kbHkgcGFja2FnZSBtYW5hZ2VtZW50LiAgUGFja2FnZXNcbiIKKyJ1bnBhY2tlZCB1c2luZyBgZHBrZy1kZWIgLS1leHRyYWN0JyB3aWxsIGJlIGluY29ycmVjdGx5IGluc3RhbGxlZCAhXG4iCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjEzMgorbXNnaWQgIiIKKyJUeXBlIGRwa2ctZGViIC0taGVscCBmb3IgaGVscCBhYm91dCBtYW5pcHVsYXRpbmcgKi5kZWIgZmlsZXM7XG4iCisiVHlwZSBkcGtnIC0taGVscCBmb3IgaGVscCBhYm91dCBpbnN0YWxsaW5nIGFuZCBkZWluc3RhbGxpbmcgcGFja2FnZXMuIgorbXNnc3RyICIiCisiZHBrZy1kZWIgLS1oZWxwIHBhcmEgc2EgdHVsb25nIHR1bmdrb2wgc2EgcGFnLW1hbmlwdWxhdGUgbmcgKi5kZWI7XG4iCisiZHBrZyAtLWhlbHAgcGFyYSBzYSB0dWxvbmcgdHVuZ2tvbCBzYSBwYWdsdWtsb2sgYXQgcGFndGFuZ2dhbCBuZyBtZ2EgcGFrZXRlLiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjE0OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBpbnRlZ2VyIGZvciAtJWM6ICclLjI1MHMnIgorbXNnc3RyICJkaSB0YW5nZ2FwIG5hIGludGVnZXIgcGFyYSBzYSAtLSVzOiBgJS4yNTBzJyIKKworIzogZHBrZy1kZWIvbWFpbi5jOjE1MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjb21wcmVzc2lvbiBsZXZlbCBmb3IgLSVjOiAlbGQnIgorbXNnc3RyICJkaSB0YW5nZ2FwIG5hIGludGVnZXIgcGFyYSBzYSAtLSVzOiBgJS4yNTBzJyIKKworIzogZHBrZy1kZWIvbWFpbi5jOjE2MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGNvbXByZXNzaW9uIHR5cGUgYCVzJyEiCittc2dzdHIgImRpIGtpbGFsYW5nIHVyaSBuZyBjb21wcmVzc2lvbiBgJXMnISIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6NTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIGRpZ2l0IChjb2RlICVkKSBpbiAlcyIKK21zZ3N0ciAidGFsYWtzYW5nIGAlLjI1MHMnIGF5IHNpcmEgLSBtYWxpbmcgZGlnaXQgKGNvZGUgJWQpIHNhICVzIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzo2MAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSAlLjI1MHMgbWlzc2luZyIKK21zZ3N0ciAic2lyYSBhbmcgdGFsYWtzYW5nIGAlLjI1MHMnIC0gJS4yNTBzIGF5IG5hd2F3YWxhIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzo2MworIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBtaXNzaW5nIG5ld2xpbmUgYWZ0ZXIgJS4yNTBzIgorbXNnc3RyICJzaXJhIGFuZyB0YWxha3NhbmcgYCUuMjUwcycgLSBtYXkga3VsYW5nIG5hIG5ld2xpbmUgbWF0YXBvcyBhbmcgJS4yNTBzIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzo4OSBkcGtnLXNwbGl0L21haW4uYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcmVhZGluZyAlLjI1MHMiCittc2dzdHIgImVycm9yIHNhIHBhZ2Jhc2EgbmcgJS4yNTBzIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIG1hZ2ljIGF0IGVuZCBvZiBmaXJzdCBoZWFkZXIiCittc2dzdHIgInNpcmEgYW5nIHRhbGFrc2FuZyBgJS4yNTBzJyAtIG1hbGluZyBtYWdpYyBzYSBkdWxvIG5nIHVuYW5nIGhlYWRlciIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTEzCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBwYWRkaW5nIGNoYXJhY3RlciAoY29kZSAlZCkiCittc2dzdHIgInNpcmEgYW5nIHRhbGFrc2FuZyBgJS4yNTBzJyAtIG1hc2FtYW5nIHBhZGRpbmcga2FyYWt0ZXIgKGNvZGUgJWQpIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gbnVsbHMgaW4gaW5mbyBzZWN0aW9uIgorbXNnc3RyICJzaXJhIGFuZyB0YWxha3NhbmcgYCUuMjUwcycgLSBtYXkgbWdhIG51bGwgc2Egc2Vrc3lvbmcgaW5mbyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTIyCisjLCBmdXp6eQorbXNnaWQgImZvcm1hdCB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAiYmlsYW5nIG5nIGJlcnN5b24iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGZvcm1hdCB2ZXJzaW9uIGAlLjI1MHMnIC0geW91IG5lZWQgYSBuZXdlciBkcGtnLXNwbGl0IgorbXNnc3RyICIiCisic2lyYSBhbmcgdGFsYWtzYW5nIGAlLjI1MHMnIG5hc2EgYW55b25nIGJlcnN5b24gYCUuMjUwcycgLSBrYWlsYW5nYW4gbml5byAiCisibmcgXG4iCisibWFzLWJhZ29uZyBkcGtnLXNwbGl0IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMjcKKyMsIGZ1enp5Cittc2dpZCAicGFja2FnZSBuYW1lIgorbXNnc3RyICIgKHBha2V0ZTogIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMjgKKyMsIGZ1enp5Cittc2dpZCAicGFja2FnZSB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAiYmlsYW5nIG5nIGJlcnN5b24iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyOQorbXNnaWQgInBhY2thZ2UgZmlsZSBNRDUgY2hlY2tzdW0iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTMyCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBNRDUgY2hlY2tzdW0gYCUuMjUwcyciCittc2dzdHIgInNpcmEgYW5nIHRhbGFrc2FuZyBgJS4yNTBzJyAtIG1hc2FtYW5nIE1ENSBjaGVja3N1bSBgJS4yNTBzJyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTM0IGRwa2ctc3BsaXQvaW5mby5jOjEzNQorbXNnaWQgImFyY2hpdmUgdG90YWwgc2l6ZSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMzYgZHBrZy1zcGxpdC9pbmZvLmM6MTM3Cittc2dpZCAiYXJjaGl2ZSBwYXJ0IG9mZnNldCIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMzkKKyMsIGZ1enp5Cittc2dpZCAiYXJjaGl2ZSBwYXJ0IG51bWJlcnMiCittc2dzdHIgImJpbGFuZyBuZyBiZXJzeW9uIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIG5vIHNsYXNoIGJldHdlZW4gcGFydCBudW1iZXJzIgorbXNnaWQgImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIG5vIHNsYXNoIGJldHdlZW4gYXJjaGl2ZSBwYXJ0IG51bWJlcnMiCittc2dzdHIgIiIKKyJzaXJhIGFuZyB0YWxha3NhbmcgYCUuMjUwcycgLSB3YWxhbmcgc2xhc2ggc2EgcGFnaXRhbiBuZyBiaWxhbmcgbmcgbWdhIGJhaGFnaSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTQ1Cittc2dpZCAibnVtYmVyIG9mIGFyY2hpdmUgcGFydHMiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTQ3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgbnVtYmVyIG9mIGFyY2hpdmUgcGFydHMiCittc2dzdHIgInNpcmEgYW5nIHRhbGFrc2FuZyBgJS4yNTBzJyAtIG1hc2FtYW5nIGJpbGFuZyBuZyBiYWhhZ2kiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE0OQorIywgZnV6enkKK21zZ2lkICJhcmNoaXZlIHBhcnRzIG51bWJlciIKK21zZ3N0ciAiYmlsYW5nIG5nIGJlcnN5b24iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE1MQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIHBhcnQgbnVtYmVyIgorbXNnaWQgImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBhcmNoaXZlIHBhcnQgbnVtYmVyIgorbXNnc3RyICJzaXJhIGFuZyB0YWxha3NhbmcgYCUuMjUwcycgLSBtYXNhbWFuZyBiaWxhbmcgbmcgYmFoYWdpIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNTcKKyMsIGZ1enp5Cittc2dpZCAicGFja2FnZSBhcmNoaXRlY3R1cmUiCittc2dzdHIgIiAocGFrZXRlOiAiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE2NgorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgbWFnaWMgYXQgZW5kIG9mIHNlY29uZCBoZWFkZXIiCittc2dzdHIgIiIKKyJzaXJhIGFuZyB0YWxha3NhbmcgYCUuMjUwcycgLSBtYXNhbWFuZyBtYWdpYyBzYSBkdWxvIG5nIHBhbmdhbGF3YW5nIGhlYWRlciIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTY4CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIHNlY29uZCBtZW1iZXIgaXMgbm90IGRhdGEgbWVtYmVyIgorbXNnc3RyICIiCisic2lyYSBhbmcgdGFsYWtzYW5nIGAlLjI1MHMnIC0gcGFuZ2FsYXdhbmcga2FzYXBpIGF5IGhpbmRpIGthc2FwaW5nIGRhdG9zIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gd3JvbmcgbnVtYmVyIG9mIHBhcnRzIGZvciBxdW90ZWQgc2l6ZXMiCittc2dzdHIgIiIKKyJzaXJhIGFuZyB0YWxha3NhbmcgYCUuMjUwcycgLSBtYWxpIGFuZyBiaWxhbmcgbmcgbWdhIGJhaGFnaSBwYXJhIHNhICIKKyJuYWJhbmdnaXQgbmEgbGFraSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTc4CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIHNpemUgaXMgd3JvbmcgZm9yIHF1b3RlZCBwYXJ0IG51bWJlciIKK21zZ3N0ciAiIgorInNpcmEgYW5nIHRhbGFrc2FuZyBgJS4yNTBzJyAtIG1hbGkgYW5nIGxha2kgcGFyYSBzYSBiaWxhbmcgbmcgYmFoYWdpbmcgIgorIm5hYmFuZ2dpdCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTg0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmc3RhdCBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgImhpbmRpIG1hLWZzdGF0IGFuZyB0YWxha3NhbmcgYmFoYWdpIGAlLjI1MHMnIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gdG9vIHNob3J0IgorbXNnc3RyICJzaXJhIGFuZyB0YWxha3NhbmcgYCUuMjUwcycgLSBtYXN5YWRvbmcgbWFpa3NpIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyMDIgZHBrZy1zcGxpdC9pbmZvLmM6MjQ5CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBvcGVuIGFyY2hpdmUgcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJoaW5kaSBtYWJ1a3NhbiBhbmcgYXJraWJvIG5nIGJhaGFnaW5nIHRhbGFrc2FuZyBgJS4yNTBzJyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjA0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgbm90IGFuIGFyY2hpdmUgcGFydCIKK21zZ3N0ciAiYW5nIHRhbGFrc2FuZyBgJS4yNTBzJyBheSBoaW5kaSBiYWhhZ2kgbmcgYXJraWJvIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyMDkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIlczpcbiIKKyN8ICIgICAgUGFydCBmb3JtYXQgdmVyc2lvbjogICAgICAgICAgICAlc1xuIgorI3wgIiAgICBQYXJ0IG9mIHBhY2thZ2U6ICAgICAgICAgICAgICAgICVzXG4iCisjfCAiICAgICAgICAuLi4gdmVyc2lvbjogICAgICAgICAgICAgICAgJXNcbiIKKyN8ICIgICAgICAgIC4uLiBNRDUgY2hlY2tzdW06ICAgICAgICAgICAlc1xuIgorI3wgIiAgICAgICAgLi4uIGxlbmd0aDogICAgICAgICAgICAgICAgICVsdSBieXRlc1xuIgorI3wgIiAgICAgICAgLi4uIHNwbGl0IGV2ZXJ5OiAgICAgICAgICAgICVsdSBieXRlc1xuIgorI3wgIiAgICBQYXJ0IG51bWJlcjogICAgICAgICAgICAgICAgICAgICVkLyVkXG4iCisjfCAiICAgIFBhcnQgbGVuZ3RoOiAgICAgICAgICAgICAgICAgICAgJXppIGJ5dGVzXG4iCisjfCAiICAgIFBhcnQgb2Zmc2V0OiAgICAgICAgICAgICAgICAgICAgJWx1IGJ5dGVzXG4iCisjfCAiICAgIFBhcnQgZmlsZSBzaXplICh1c2VkIHBvcnRpb24pOiAgJWx1IGJ5dGVzXG4iCisjfCAiXG4iCittc2dpZCAiIgorIiVzOlxuIgorIiAgICBQYXJ0IGZvcm1hdCB2ZXJzaW9uOiAgICAgICAgICAgICVzXG4iCisiICAgIFBhcnQgb2YgcGFja2FnZTogICAgICAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiB2ZXJzaW9uOiAgICAgICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIGFyY2hpdGVjdHVyZTogICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gTUQ1IGNoZWNrc3VtOiAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiBsZW5ndGg6ICAgICAgICAgICAgICAgICAlamQgYnl0ZXNcbiIKKyIgICAgICAgIC4uLiBzcGxpdCBldmVyeTogICAgICAgICAgICAlamQgYnl0ZXNcbiIKKyIgICAgUGFydCBudW1iZXI6ICAgICAgICAgICAgICAgICAgICAlZC8lZFxuIgorIiAgICBQYXJ0IGxlbmd0aDogICAgICAgICAgICAgICAgICAgICVqZCBieXRlc1xuIgorIiAgICBQYXJ0IG9mZnNldDogICAgICAgICAgICAgICAgICAgICVqZCBieXRlc1xuIgorIiAgICBQYXJ0IGZpbGUgc2l6ZSAodXNlZCBwb3J0aW9uKTogICVqZCBieXRlc1xuIgorIlxuIgorbXNnc3RyICIiCisiJXM6XG4iCisiICBCZXJzeW9uIG5nIGFueW8gbmcgYmFoYWdpOiAgICAgICAgICAgICAgICAgICAgJXNcbiIKKyIgIEJhaGFnaSBuZyBwYWtldGU6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAlc1xuIgorIiAgICAgIC4uLiBiZXJzeW9uOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICVzXG4iCisiICAgICAgLi4uIE1ENSBjaGVja3N1bTogICAgICAgICAgICAgICAgICAgICAgICAgJXNcbiIKKyIgICAgICAuLi4gaGFiYTogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAlbHUgYnl0ZXNcbiIKKyIgICAgICAuLi4gbmFrYWhhdGkgYmF3YXQ6ICAgICAgICAgICAgICAgICAgICAgICAlbHUgYnl0ZXNcbiIKKyIgIEJpbGFuZyBuZyBiYWhhZ2k6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAlZC8lZFxuIgorIiAgSGFiYSBuZyBiYWhhZ2k6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICV6aSBieXRlc1xuIgorIiAgT2Zmc2V0IG5nIGJhaGFnaTogICAgICAgICAgICAgICAgICAgICAgICAgICAgICVsdSBieXRlc1xuIgorIiAgTGFraSBuZyBiYWhhZ2kgbmcgdGFsYWtzYW4gKGdhbWl0IG5hIGJhaGFnaSk6ICVsdSBieXRlc1xuIgorIlxuIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyMjUKKyMsIGZ1enp5CisjfCBtc2dpZCAiPHVua25vd24+IgorbXNnY3R4dCAiYXJjaGl0ZWN0dXJlIgorbXNnaWQgIjx1bmtub3duPiIKK21zZ3N0ciAiPGRpIGtpbGFsYT4iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjI0NCBkcGtnLXNwbGl0L2pvaW4uYzoxMDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgcmVxdWlyZXMgb25lIG9yIG1vcmUgcGFydCBmaWxlIGFyZ3VtZW50cyIKK21zZ3N0ciAiIgorIi0taW5mbyBheSBuYW5nYW5nYWlsYW5nYW4gbmcgaXNhIG8gaGlnaXQgcGEgbmEgYXJndW1lbnRvbmcgYmFoYWdpbmcgdGFsYWtzYW4iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjI1NQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlcycgaXMgbm90IGFuIGFyY2hpdmUgcGFydFxuIgorbXNnc3RyICJhbmcgdGFsYWtzYW5nIGAlcycgYXkgaGluZGkgYmFoYWdpbmcgYXJraWJvXG4iCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjQ0CisjLCBjLWZvcm1hdAorbXNnaWQgIlB1dHRpbmcgcGFja2FnZSAlcyB0b2dldGhlciBmcm9tICVkIHBhcnQ6ICIKK21zZ2lkX3BsdXJhbCAiUHV0dGluZyBwYWNrYWdlICVzIHRvZ2V0aGVyIGZyb20gJWQgcGFydHM6ICIKK21zZ3N0clswXSAiIgorbXNnc3RyWzFdICIiCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjUxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIG91dHB1dCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJoaW5kaSBtYWJ1a3NhbiBhbmcgdGFsYWtzYW5nIG91dHB1dCBgJS4yNTBzJyIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIChyZSlvcGVuIGlucHV0IHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiaGluZGkgbWFidWtzYW4gKG11bGkpIGFuZyBpbnB1dCBuZyBiYWhhZ2luZyB0YWxha3NhbiBgJS4yNTBzJyIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NTgKKyMsIGZ1enp5CisjfCBtc2dpZCAiU2tpcHBpbmcgZGVzZWxlY3RlZCBwYWNrYWdlICVzLlxuIgorbXNnaWQgInNraXBwaW5nIHNwbGl0IHBhY2thZ2UgaGVhZGVyIgorbXNnc3RyICJMaW5hbXBhc2FuIGFuZyBoaW5kaSBwaW5pbGluZyBwYWtldGUgJXMuXG4iCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjU5CisjLCBmdXp6eQorbXNnaWQgInNwbGl0IHBhY2thZ2UgcGFydCIKK21zZ3N0ciAia3VsYW5nIG5hICVzIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo2OSBkcGtnLXNwbGl0L3NwbGl0LmM6MjM3CisjLCBjLWZvcm1hdAorbXNnaWQgImRvbmVcbiIKK21zZ3N0ciAidGFwb3NcbiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZXMgYCUuMjUwcycgYW5kIGAlLjI1MHMnIGFyZSBub3QgcGFydHMgb2YgdGhlIHNhbWUgZmlsZSIKK21zZ3N0ciAiIgorImFuZyBtZ2EgdGFsYWtzYW5nIGAlLjI1MHMnIGF0IGAlLjI1MHMnIGF5IGhpbmRpIGJhaGFnaSBuZyBwYXJlaG9uZyB0YWxha3NhbiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAidGhlcmUgYXJlIHNldmVyYWwgdmVyc2lvbnMgb2YgcGFydCAlZCAtIGF0IGxlYXN0IGAlLjI1MHMnIGFuZCBgJS4yNTBzJyIKK21zZ3N0ciAiIgorIm1heSBpYmEndCBpYmFuZyBiZXJzeW9uIG5nIGJhaGFnaW5nICVkIC0ga2FiaWxhbmcgZGl0byBhbmcgYCUuMjUwcycgYXQgYCIKKyIlLjI1MHMnIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzoxMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFydCAlZCBpcyBtaXNzaW5nIgorbXNnc3RyICJiYWhhZ2luZyAlZCBheSBuYXdhd2FsYSIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6NDcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiBgJXMnIHBhY2thZ2Ugc3BsaXQvam9pbiB0b29sOyB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICIiCisiRGViaWFuIEdOVS9MaW51eCBgZHBrZy1zcGxpdCcga2FzYW5na2FwYW5nIHBhbmdoYXRpL3BhbmR1Z3RvbmcgbmcgbWdhICIKKyJwYWtldGU7XG4iCisiYmVyc3lvbiAiCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIkNvcHlyaWdodCAoQykgMTk5NC0xOTk2IElhbiBKYWNrc29uLlxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjY3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1zfC0tc3BsaXQgPGZpbGU+IFs8cHJlZml4Pl0gICAgIFNwbGl0IGFuIGFyY2hpdmUuXG4iCisiICAtanwtLWpvaW4gPHBhcnQ+IDxwYXJ0PiAuLi4gICAgICBKb2luIHBhcnRzIHRvZ2V0aGVyLlxuIgorIiAgLUl8LS1pbmZvIDxwYXJ0PiAuLi4gICAgICAgICAgICAgRGlzcGxheSBpbmZvIGFib3V0IGEgcGFydC5cbiIKKyIgIC1hfC0tYXV0byAtbyA8Y29tcGxldGU+IDxwYXJ0PiAgIEF1dG8tYWNjdW11bGF0ZSBwYXJ0cy5cbiIKKyIgIC1sfC0tbGlzdHEgICAgICAgICAgICAgICAgICAgICAgIExpc3QgdW5tYXRjaGVkIHBpZWNlcy5cbiIKKyIgIC1kfC0tZGlzY2FyZCBbPGZpbGVuYW1lPiAuLi5dICAgIERpc2NhcmQgdW5tYXRjaGVkIHBpZWNlcy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo4MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tZGVwb3RkaXIgPGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLyVzLlxuIgorIiAgLVN8LS1wYXJ0c2l6ZSA8c2l6ZT4gICAgICAgICAgICAgSW4gS2lCLCBmb3IgLXMgKGRlZmF1bHQgaXMgNDUwKS5cbiIKKyIgIC1vfC0tb3V0cHV0IDxmaWxlPiAgICAgICAgICAgICAgIEZpbGVuYW1lLCBmb3IgLWogKGRlZmF1bHQgaXNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhY2thZ2U+Xzx2ZXJzaW9uPl88YXJjaD4uZGViKS5cbiIKKyIgIC1RfC0tbnBxdWlldCAgICAgICAgICAgICAgICAgICAgIEJlIHF1aWV0IHdoZW4gLWEgaXMgbm90IGEgcGFydC5cbiIKKyIgIC0tbXNkb3MgICAgICAgICAgICAgICAgICAgICAgICAgIEdlbmVyYXRlIDguMyBmaWxlbmFtZXMuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6OTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkV4aXQgc3RhdHVzOlxuIgorIiAgMCA9IG9rXG4iCisiICAxID0gd2l0aCAtLWF1dG8sIGZpbGUgaXMgbm90IGEgcGFydFxuIgorIiAgMiA9IHRyb3VibGVcbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMDMKK21zZ2lkICJUeXBlIGRwa2ctc3BsaXQgLS1oZWxwIGZvciBoZWxwLiIKK21zZ3N0ciAiZHBrZy1zcGxpdCAtLWhlbHAgcGFyYSBzYSB0dWxvbmcuIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgZmlsZSBpbiAlLjI1MHMiCittc2dzdHIgImRpIGluYWFzYWhhbmcgZHVsbyBuZyB0YWxha3NhbiBzYSAlLjI1MHMiCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjEyNgorbXNnaWQgInBhcnQgc2l6ZSBpcyBmYXIgdG9vIGxhcmdlIG9yIGlzIG5vdCBwb3NpdGl2ZSIKK21zZ3N0ciAibGFraSBuZyBiYWhhZ2kgYXkgbGFiaXMgbmcgbGFraSBvIGhpbmRpIHBvc2l0aWJvIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInBhcnQgc2l6ZSBtdXN0IGJlIGF0IGxlYXN0ICVkIEtpQiAodG8gYWxsb3cgZm9yIGhlYWRlcikiCittc2dzdHIgImxha2kgbmcgYmFoYWdpIGF5IGRhcGF0IGhpbmRpIGt1bXVsYW5nIHNhICVkayAoa2FzYW1hIG5hIGFuZyBoZWFkZXIpIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgZGVwb3QgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICJoaW5kaSBtYWJhc2EgYW5nIGRpcmVjdG9yeSBuYSBib2RlZ2EgYCUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxMzQKK21zZ2lkICItLWF1dG8gcmVxdWlyZXMgdGhlIHVzZSBvZiB0aGUgLS1vdXRwdXQgb3B0aW9uIgorbXNnc3RyICItLWF1dG8gYXkgZ2luYWdhbWl0IG5hIHNhYmF5IG5nIC0tb3V0cHV0IG9wdGlvbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjEzNgorbXNnaWQgIi0tYXV0byByZXF1aXJlcyBleGFjdGx5IG9uZSBwYXJ0IGZpbGUgYXJndW1lbnQiCittc2dzdHIgIi0tYXV0byBheSBuYW5nYW5nYWlsYW5nYW4gbmcgaXNhbmcgYXJndW1lbnRvbmcgdGFsYWtzYW4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxNDAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJoaW5kaSBtYWJhc2EgYW5nIHRhbGFrc2FuZyBiYWhhZ2kgYCUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxNDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiRmlsZSBgJS4yNTBzJyBpcyBub3QgcGFydCBvZiBhIG11bHRpcGFydCBhcmNoaXZlLlxuIgorbXNnc3RyICJIaW5kaSBiYWhhZ2kgbmcgYXJraWJvbmcgbXVsdGlwYXJ0IGFuZyB0YWxha3NhbmcgYCUuMjUwcycuXG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlb3BlbiBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgImhpbmRpIG1hYnVrc2FuZyBtdWxpIGFuZyB0YWxha3NhbmcgYmFoYWdpIGAlLjI1MHMnIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTgyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIG5ldyBkZXBvdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJoaW5kaSBtYWJ1a3NhbiBhbmcgYmFnb25nIHRhbGFrc2FuZyBib2RlZ2EgYCUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxODQKK21zZ2lkICJleHRyYWN0aW5nIHNwbGl0IHBhcnQiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE5MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVuYW1lIG5ldyBkZXBvdCBmaWxlIGAlLjI1MHMnIHRvIGAlLjI1MHMnIgorbXNnc3RyICIiCisiaGluZGkgbWFwYWxpdGFuIGFuZyBwYW5nYWxhbiBuZyBiYWdvbmcgdGFsYWtzYW5nIGJvZGVnYSBgJS4yNTBzJyB0dW5nbyBgIgorIiUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFydCAlZCBvZiBwYWNrYWdlICVzIGZpbGVkIChzdGlsbCB3YW50ICIKK21zZ3N0ciAiQmFoYWdpbmcgJWQgbmcgJXMgcGFrZXRlIGF5IG5haW1iYWsgKGthaWxhbmdhbiBwYSAiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyMDAKK21zZ2lkICIgYW5kICIKK21zZ3N0ciAiIGF0ICIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjIxNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGVsZXRlIHVzZWQtdXAgZGVwb3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAiaGluZGkgbWF0YW5nZ2FsIGFuZyBuYWdhbWl0IG5hIHRhbGFrc2FuZyBib2RlZ2EgYCUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyMzUKK21zZ2lkICJKdW5rIGZpbGVzIGxlZnQgYXJvdW5kIGluIHRoZSBkZXBvdCBkaXJlY3Rvcnk6XG4iCittc2dzdHIgIk1heSBiYXN1cmFuZyB0YWxha3NhbiBuYSBuYWl3YW4gcGFsaWJvdCBzYSBkaXJlY3RvcnkgbmEgYm9kZWdhOlxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjQwIGRwa2ctc3BsaXQvcXVldWUuYzoyNjkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgYCUuMjUwcyciCittc2dzdHIgImhpbmRpIG1hLXN0YXQgYW5nIGAlLjI1MHMnIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjQzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIgJXMgKCVsdSBieXRlcylcbiIKK21zZ2lkICIgJXMgKCVqZCBieXRlcylcbiIKK21zZ3N0ciAiICVzICglbHUgbmEgYnl0ZSlcbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI0NQorIywgYy1mb3JtYXQKK21zZ2lkICIgJXMgKG5vdCBhIHBsYWluIGZpbGUpXG4iCittc2dzdHIgIiAlcyAoaGluZGkgcGF5YWsgbmEgdGFsYWtzYW4pXG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNTAKK21zZ2lkICJQYWNrYWdlcyBub3QgeWV0IHJlYXNzZW1ibGVkOlxuIgorbXNnc3RyICJIaW5kaSBwYSBuYWJ1b25nIG11bGkgYW5nIG1nYSBwYWtldGU6XG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIFBhY2thZ2UgJXM6IHBhcnQocykgIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFydCBmaWxlIGAlLjI1MHMnIGlzIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgInRhbGFrc2FuZyBiYWhhZ2kgYCUuMjUwcycgYXkgaGluZGkgcGF5YWsgbmEgdGFsYWtzYW4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNzgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIih0b3RhbCAlbHUgYnl0ZXMpXG4iCittc2dpZCAiKHRvdGFsICVqZCBieXRlcylcbiIKK21zZ3N0ciAiKHRvdGFsICVsdSBuYSBieXRlKVxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MzA0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkaXNjYXJkIGAlLjI1MHMnIgorbXNnc3RyICJoaW5kaSBtYWJhc3VyYSBgJS4yNTBzJyIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjMwNQorIywgYy1mb3JtYXQKK21zZ2lkICJEZWxldGVkICVzLlxuIgorbXNnc3RyICJUaW5hbmdnYWwgYW5nICVzLlxuIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6NzAgZHBrZy1zcGxpdC9zcGxpdC5jOjc2IGRwa2ctc3BsaXQvc3BsaXQuYzo4MQorbXNnaWQgInBhY2thZ2UgZmllbGQgdmFsdWUgZXh0cmFjdGlvbiIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTMxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIHNvdXJjZSBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJoaW5kaSBtYWJ1a3NhbiBhbmcgcGluYWdtdWxhbiBuYSB0YWxha3NhbmcgYCUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxMzMKK21zZ2lkICJ1bmFibGUgdG8gZnN0YXQgc291cmNlIGZpbGUiCittc2dzdHIgImhpbmRpIG1hLWZzdGF0IGFuZyBwaW5hZ211bGFuIG5hIHRhbGFrc2FuIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTM1CisjLCBjLWZvcm1hdAorbXNnaWQgInNvdXJjZSBmaWxlIGAlLjI1MHMnIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgInBpbmFnbXVsYW4gbmEgdGFsYWtzYW4gYCUuMjUwcycgYXkgaGluZGkgcGF5YWsgbmEgdGFsYWtzYW4iCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxNTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiU3BsaXR0aW5nIHBhY2thZ2UgJXMgaW50byAlZCBwYXJ0OiAiCittc2dpZF9wbHVyYWwgIlNwbGl0dGluZyBwYWNrYWdlICVzIGludG8gJWQgcGFydHM6ICIKK21zZ3N0clswXSAiIgorbXNnc3RyWzFdICIiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxOTMKK21zZ2lkICIiCisiSGVhZGVyIGlzIHRvbyBsb25nLCBtYWtpbmcgcGFydCB0b28gbG9uZy4gWW91ciBwYWNrYWdlIG5hbWUgb3IgdmVyc2lvblxuIgorIm51bWJlcnMgbXVzdCBiZSBleHRyYW9yZGluYXJpbHkgbG9uZywgb3Igc29tZXRoaW5nLiBHaXZpbmcgdXAuXG4iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjI0OQorbXNnaWQgIi0tc3BsaXQgbmVlZHMgYSBzb3VyY2UgZmlsZW5hbWUgYXJndW1lbnQiCittc2dzdHIgIiIKKyItLXNwbGl0IGF5IG5hbmdhbmdhaWxhbmdhbiBuZyBhcmd1bWVudG9uZyBwYW5nYWxhbiBuZyBwaW5hZ211bGFuIG5hIHRhbGFrc2FuIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MjUyCittc2dpZCAiLS1zcGxpdCB0YWtlcyBhdCBtb3N0IGEgc291cmNlIGZpbGVuYW1lIGFuZCBkZXN0aW5hdGlvbiBwcmVmaXgiCittc2dzdHIgIiIKKyItLXNwbGl0IGF5IHR1bWF0YW5nZ2FwIG5nIHBhbmdhbGFuIG5nIHBpbmFnbXVsYW4gbmEgdGFsYWtzYW4gYXQgdW5sYXBpbmdcbiIKKyIgICAgICAgIHBhdHV0dW5ndWhhbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjg0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLTIwMDIgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDktMjAxMCBSYXBoYWVsIEhlcnR6b2cuXG4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEwMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtLWluc3RhbGwgPGxpbms+IDxuYW1lPiA8cGF0aD4gPHByaW9yaXR5PlxuIgorIiAgICBbLS1zbGF2ZSA8bGluaz4gPG5hbWU+IDxwYXRoPl0gLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkIGEgZ3JvdXAgb2YgYWx0ZXJuYXRpdmVzIHRvIHRoZSBzeXN0ZW0uXG4iCisiICAtLXJlbW92ZSA8bmFtZT4gPHBhdGg+ICAgcmVtb3ZlIDxwYXRoPiBmcm9tIHRoZSA8bmFtZT4gZ3JvdXAgYWx0ZXJuYXRpdmUuXG4iCisiICAtLXJlbW92ZS1hbGwgPG5hbWU+ICAgICAgcmVtb3ZlIDxuYW1lPiBncm91cCBmcm9tIHRoZSBhbHRlcm5hdGl2ZXMgIgorInN5c3RlbS5cbiIKKyIgIC0tYXV0byA8bmFtZT4gICAgICAgICAgICBzd2l0Y2ggdGhlIG1hc3RlciBsaW5rIDxuYW1lPiB0byBhdXRvbWF0aWMgbW9kZS5cbiIKKyIgIC0tZGlzcGxheSA8bmFtZT4gICAgICAgICBkaXNwbGF5IGluZm9ybWF0aW9uIGFib3V0IHRoZSA8bmFtZT4gZ3JvdXAuXG4iCisiICAtLXF1ZXJ5IDxuYW1lPiAgICAgICAgICAgbWFjaGluZSBwYXJzZWFibGUgdmVyc2lvbiBvZiAtLWRpc3BsYXkgPG5hbWU+LlxuIgorIiAgLS1saXN0IDxuYW1lPiAgICAgICAgICAgIGRpc3BsYXkgYWxsIHRhcmdldHMgb2YgdGhlIDxuYW1lPiBncm91cC5cbiIKKyIgIC0tZ2V0LXNlbGVjdGlvbnMgICAgICAgICBsaXN0IG1hc3RlciBhbHRlcm5hdGl2ZSBuYW1lcyBhbmQgdGhlaXIgc3RhdHVzLlxuIgorIiAgLS1zZXQtc2VsZWN0aW9ucyAgICAgICAgIHJlYWQgYWx0ZXJuYXRpdmUgc3RhdHVzIGZyb20gc3RhbmRhcmQgaW5wdXQuXG4iCisiICAtLWNvbmZpZyA8bmFtZT4gICAgICAgICAgc2hvdyBhbHRlcm5hdGl2ZXMgZm9yIHRoZSA8bmFtZT4gZ3JvdXAgYW5kIGFzayAiCisidGhlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlciB0byBzZWxlY3Qgd2hpY2ggb25lIHRvIHVzZS5cbiIKKyIgIC0tc2V0IDxuYW1lPiA8cGF0aD4gICAgICBzZXQgPHBhdGg+IGFzIGFsdGVybmF0aXZlIGZvciA8bmFtZT4uXG4iCisiICAtLWFsbCAgICAgICAgICAgICAgICAgICAgY2FsbCAtLWNvbmZpZyBvbiBhbGwgYWx0ZXJuYXRpdmVzLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIjxsaW5rPiBpcyB0aGUgc3ltbGluayBwb2ludGluZyB0byAlcy88bmFtZT4uXG4iCisiICAoZS5nLiAvdXNyL2Jpbi9wYWdlcilcbiIKKyI8bmFtZT4gaXMgdGhlIG1hc3RlciBuYW1lIGZvciB0aGlzIGxpbmsgZ3JvdXAuXG4iCisiICAoZS5nLiBwYWdlcilcbiIKKyI8cGF0aD4gaXMgdGhlIGxvY2F0aW9uIG9mIG9uZSBvZiB0aGUgYWx0ZXJuYXRpdmUgdGFyZ2V0IGZpbGVzLlxuIgorIiAgKGUuZy4gL3Vzci9iaW4vbGVzcylcbiIKKyI8cHJpb3JpdHk+IGlzIGFuIGludGVnZXI7IG9wdGlvbnMgd2l0aCBoaWdoZXIgbnVtYmVycyBoYXZlIGhpZ2hlciBwcmlvcml0eSAiCisiaW5cbiIKKyIgIGF1dG9tYXRpYyBtb2RlLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFsdGRpciA8ZGlyZWN0b3J5PiAgICAgY2hhbmdlIHRoZSBhbHRlcm5hdGl2ZXMgZGlyZWN0b3J5LlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIGNoYW5nZSB0aGUgYWRtaW5pc3RyYXRpdmUgZGlyZWN0b3J5LlxuIgorIiAgLS1sb2cgPGZpbGU+ICAgICAgICAgICAgIGNoYW5nZSB0aGUgbG9nIGZpbGUuXG4iCisiICAtLWZvcmNlICAgICAgICAgICAgICAgICAgYWxsb3cgcmVwbGFjaW5nIGZpbGVzIHdpdGggYWx0ZXJuYXRpdmUgbGlua3MuXG4iCisiICAtLXNraXAtYXV0byAgICAgICAgICAgICAgc2tpcCBwcm9tcHQgZm9yIGFsdGVybmF0aXZlcyBjb3JyZWN0bHkgIgorImNvbmZpZ3VyZWRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBhdXRvbWF0aWMgbW9kZSAocmVsZXZhbnQgZm9yIC0tY29uZmlnIG9ubHkpXG4iCisiICAtLXZlcmJvc2UgICAgICAgICAgICAgICAgdmVyYm9zZSBvcGVyYXRpb24sIG1vcmUgb3V0cHV0LlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHF1aWV0IG9wZXJhdGlvbiwgbWluaW1hbCBvdXRwdXQuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE2MworIywgZnV6enkKKyN8IG1zZ2lkICJwYXJzZSBlcnJvciIKK21zZ2lkICJlcnJvciIKK21zZ3N0ciAiZXJyb3Igc2EgcGFnLXBhcnNlIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTkzCittc2dpZCAid2FybmluZyIKK21zZ3N0ciAiYmFiYWxhIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MzU2CisjLCBjLWZvcm1hdAorbXNnaWQgInR3byBjb21tYW5kcyBzcGVjaWZpZWQ6IC0tJXMgYW5kIC0tJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjM4NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGFwcGVuZCB0byAnJXMnIgorbXNnc3RyICJoaW5kaSBtYWJ1a3NhbiBhbmcgdGFsYWFuYCVzJzogJXNcbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjU1NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSAnJXMnIgorbXNnc3RyICJoaW5kaSBtYS1leGVjdXRlIGFuZyAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGZpbGUgd2hpbGUgdHJ5aW5nIHRvIHJlYWQgJXMiCittc2dzdHIgImRpIGluYWFzYWhhbmcgZHVsbyBuZyB0YWxha3NhbiBzYSAlcyBzYSAlLjI1NXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTEzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ3aGlsZSByZWFkaW5nICVzOiAlcyIKK21zZ3N0ciAiZGliZXJ0YWRvIG5nICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTExOQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAibGluZSBub3QgdGVybWluYXRlZCB3aGlsZSB0cnlpbmcgdG8gcmVhZCAlcyIKK21zZ3N0ciAiZGkgaW5hYXNhaGFuZyBkdWxvIG5nIHRhbGFrc2FuIHNhICVzIHNhICUuMjU1cyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMzcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzIGNvcnJ1cHQ6ICVzIgorbXNnc3RyICIlczogaW50ZXJuYWwgZ3ppcCBlcnJvcjogcGFnc3VsYXQ6IGAlcyciCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTUwCisjLCBjLWZvcm1hdAorbXNnaWQgIm5ld2xpbmVzIHByb2hpYml0ZWQgaW4gdXBkYXRlLWFsdGVybmF0aXZlcyBmaWxlcyAoJXMpIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTYzCittc2dpZCAic2xhdmUgbmFtZSIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE3MSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQwNQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHNsYXZlIG5hbWUgJXMiCittc2dzdHIgIm5hZG9ibGVuZyBoYWxhZ2EgcGFyYSBzYSBzYWtsYXcgbmEgYCVzJyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNzQKKyMsIGZ1enp5Cittc2dpZCAic2xhdmUgbGluayIKK21zZ3N0ciAibmFkb2JsZW5nIGhhbGFnYSBwYXJhIHNhIHNha2xhdyBuYSBgJXMnIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE3OAorIywgYy1mb3JtYXQKK21zZ2lkICJzbGF2ZSBsaW5rIHNhbWUgYXMgbWFpbiBsaW5rICVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTg1IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDEyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgc2xhdmUgbGluayAlcyIKK21zZ3N0ciAibmFkb2JsZW5nIGhhbGFnYSBwYXJhIHNhIHNha2xhdyBuYSBgJXMnIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIwNAorbXNnaWQgIm1hc3RlciBmaWxlIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjEzCisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBwYXRoICVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjI2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJhbHRlcm5hdGl2ZSAlcyAocGFydCBvZiBsaW5rIGdyb3VwICVzKSBkb2Vzbid0IGV4aXN0LiBSZW1vdmluZyBmcm9tIGxpc3Qgb2YgIgorImFsdGVybmF0aXZlcy4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMjkgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyNDAKK21zZ2lkICJwcmlvcml0eSIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIzMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI0OQorbXNnaWQgInNsYXZlIGZpbGUiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyNDQKKyMsIGMtZm9ybWF0Cittc2dpZCAicHJpb3JpdHkgb2YgJXM6ICVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjk3Cittc2dpZCAic3RhdHVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjk5Cittc2dpZCAiaW52YWxpZCBzdGF0dXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzMDQKKyMsIGZ1enp5Cittc2dpZCAibWFzdGVyIGxpbmsiCittc2dzdHIgIm5hZG9ibGVuZyBoYWxhZ2EgcGFyYSBzYSBzYWtsYXcgbmEgYCVzJyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzNDgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImRpc2NhcmRpbmcgb2Jzb2xldGUgc2xhdmUgbGluayAlcyAoJXMpLiIKK21zZ3N0ciAibmFkb2JsZW5nIGhhbGFnYSBwYXJhIHNhIHNha2xhdyBuYSBgJXMnIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2OQorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MzgKK21zZ2lkICJhdXRvIG1vZGUiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MDIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NzgKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjM5Cittc2dpZCAibWFudWFsIG1vZGUiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBsaW5rIGN1cnJlbnRseSBwb2ludHMgdG8gJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MDgKK21zZ2lkICIgIGxpbmsgY3VycmVudGx5IGFic2VudCIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUxMgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyAtIHByaW9yaXR5ICVkIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTE1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIgIHNsYXZlICVzOiAlcyIKK21zZ3N0ciAiaGluZGkgbWEtZXhlY3V0ZSBhbmcgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTIyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJDdXJyZW50ICdiZXN0JyB2ZXJzaW9uIGlzICclcycuIgorbXNnc3RyICInIGJlcnN5b24gbmcgYmFja2VuZCBuZyBhcmtpYm9uZyBwYWtldGUiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTI0CisjLCBmdXp6eQorbXNnaWQgIk5vIHZlcnNpb25zIGF2YWlsYWJsZS4iCittc2dzdHIgIih3YWxhbmcgcGFnbGFsYXJhd2FuKSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiVGhlcmUgaXMgJWQgY2hvaWNlIGZvciB0aGUgYWx0ZXJuYXRpdmUgJXMgKHByb3ZpZGluZyAlcykuIgorbXNnaWRfcGx1cmFsICJUaGVyZSBhcmUgJWQgY2hvaWNlcyBmb3IgdGhlIGFsdGVybmF0aXZlICVzIChwcm92aWRpbmcgJXMpLiIKK21zZ3N0clswXSAiIgorbXNnc3RyWzFdICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYwCisjLCBmdXp6eQorbXNnaWQgIlNlbGVjdGlvbiIKK21zZ3N0ciAiUGFnbGFsYXJhd2FuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2MQorbXNnaWQgIlBhdGgiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NjEKK21zZ2lkICJQcmlvcml0eSIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2MQorbXNnaWQgIlN0YXR1cyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU4MgorIywgYy1mb3JtYXQKK21zZ2lkICJQcmVzcyBlbnRlciB0byBrZWVwIHRoZSBjdXJyZW50IGNob2ljZVsqXSwgb3IgdHlwZSBzZWxlY3Rpb24gbnVtYmVyOiAiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3MjEKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IHJlcGxhY2luZyAlcyB3aXRoIGEgbGluay4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3NjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2FuJ3QgaW5zdGFsbCB1bmtub3duIGNob2ljZSAlcyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTc4MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisic2tpcCBjcmVhdGlvbiBvZiAlcyBiZWNhdXNlIGFzc29jaWF0ZWQgZmlsZSAlcyAob2YgbGluayBncm91cCAlcykgZG9lc24ndCAiCisiZXhpc3QuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNzkwCisjLCBjLWZvcm1hdAorbXNnaWQgIm5vdCByZW1vdmluZyAlcyBzaW5jZSBpdCdzIG5vdCBhIHN5bWxpbmsuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDQxIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDQ3CisjLCBjLWZvcm1hdAorbXNnaWQgIkNhbGwgJXMuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDUxCisjLCBjLWZvcm1hdAorbXNnaWQgIkFsdGVybmF0aXZlICVzIHVuY2hhbmdlZCBiZWNhdXNlIGNob2ljZSAlcyBpcyBub3QgYXZhaWxhYmxlLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA1NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiU2tpcCB1bmtub3duIGFsdGVybmF0aXZlICVzLiIKK21zZ3N0ciAiZGkga2lsYWxhbmcgdXJpIG5nIGNvbXByZXNzaW9uIGAlcychIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA3NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAibGluZSB0b28gbG9uZyBvciBub3QgdGVybWluYXRlZCB3aGlsZSB0cnlpbmcgdG8gcmVhZCAlcyIKK21zZ3N0ciAiZGkgaW5hYXNhaGFuZyBkdWxvIG5nIHRhbGFrc2FuIHNhICVzIHNhICUuMjU1cyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwOTAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxMDMKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTEzCisjLCBjLWZvcm1hdAorbXNnaWQgIlNraXAgaW52YWxpZCBsaW5lOiAlcyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjEzMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAicmVuYW1pbmcgJXMgbGluayBmcm9tICVzIHRvICVzLiIKK21zZ3N0ciAiQmludWJ1a2xhdCBhbmcgJXMgKG11bGEgc2EgJXMpIC4uLlxuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE3MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAicmVuYW1pbmcgJXMgc2xhdmUgbGluayBmcm9tICVzIHRvICVzLiIKK21zZ3N0ciAiQmludWJ1a2xhdCBhbmcgJXMgKG11bGEgc2EgJXMpIC4uLlxuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE4OQorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBuYW1lICglcykgbXVzdCBub3QgY29udGFpbiAnLycgYW5kIHNwYWNlcy4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgbGluayBpcyBub3QgYWJzb2x1dGUgYXMgaXQgc2hvdWxkIGJlOiAlcyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE5NworIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBwYXRoIGlzIG5vdCBhYnNvbHV0ZSBhcyBpdCBzaG91bGQgYmU6ICVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjI0CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlICVzIGNhbid0IGJlIG1hc3RlcjogaXQgaXMgYSBzbGF2ZSBvZiAlcyIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjIzMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI2NworIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBsaW5rICVzIGlzIGFscmVhZHkgbWFuYWdlZCBieSAlcy4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgcGF0aCAlcyBkb2Vzbid0IGV4aXN0LiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI1NAorIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBzbGF2ZSBvZiAlczogaXQgaXMgYSBtYXN0ZXIgYWx0ZXJuYXRpdmUuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjU4CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlICVzIGNhbid0IGJlIHNsYXZlIG9mICVzOiBpdCBpcyBhIHNsYXZlIG9mICVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjc4CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIGxpbmsgJXMgaXMgYWxyZWFkeSBtYW5hZ2VkIGJ5ICVzIChzbGF2ZSBvZiAlcykuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzI0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGFyZ3VtZW50IGAlcyciCittc2dzdHIgImRpIGtpbGFsYW5nIHVyaSBuZyBjb21wcmVzc2lvbiBgJXMnISIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNDMKK21zZ2lkICItLWluc3RhbGwgbmVlZHMgPGxpbms+IDxuYW1lPiA8cGF0aD4gPHByaW9yaXR5PiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM0NiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM5NworbXNnaWQgIjxsaW5rPiBhbmQgPHBhdGg+IGNhbid0IGJlIHRoZSBzYW1lIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzQ5Cittc2dpZCAicHJpb3JpdHkgbXVzdCBiZSBhbiBpbnRlZ2VyIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzYyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIDxuYW1lPiA8cGF0aD4iCittc2dzdHIgIi0tJXMgYXkgbmFuZ2FuZ2FpbGFuZ2FuIG5nIGFyZ3VtZW50b25nIHBhbmdhbGFuIG5nIHRhbGFrc2FuZyAuZGViIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM3NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyA8bmFtZT4iCittc2dzdHIgIi0tJXMgYXkgaGluZGkgdHVtYXRhbmdnYXAgbmcgbWdhIGFyZ3VtZW50byIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzODgKK21zZ2lkICItLXNsYXZlIG9ubHkgYWxsb3dlZCB3aXRoIC0taW5zdGFsbCIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM5MAorbXNnaWQgIi0tc2xhdmUgbmVlZHMgPGxpbms+IDxuYW1lPiA8cGF0aD4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzOTkKKyMsIGMtZm9ybWF0Cittc2dpZCAibmFtZSAlcyBpcyBib3RoIHByaW1hcnkgYW5kIHNsYXZlIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDAyCisjLCBjLWZvcm1hdAorbXNnaWQgImxpbmsgJXMgaXMgYm90aCBwcmltYXJ5IGFuZCBzbGF2ZSIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQyMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhIDxmaWxlPiBhcmd1bWVudCIKK21zZ3N0ciAiLS1idWlsZCBheSBuYW5nYW5nYWlsYW5nYW4gbmcgYXJndW1lbnRvbmcgZGlyZWN0b3J5IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQ0OAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gYCVzJyIKK21zZ3N0ciAiZGkga2lsYWxhbmcgb3BzeW9uIC0tJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDUzCittc2dpZCAiIgorIm5lZWQgLS1kaXNwbGF5LCAtLXF1ZXJ5LCAtLWxpc3QsIC0tZ2V0LXNlbGVjdGlvbnMsIC0tY29uZmlnLCAtLXNldCwgLS1zZXQtIgorInNlbGVjdGlvbnMsIC0taW5zdGFsbCwgLS1yZW1vdmUsIC0tYWxsLCAtLXJlbW92ZS1hbGwgb3IgLS1hdXRvIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDkwCisjLCBmdXp6eQorI3wgbXNnaWQgInJlYWQgZXJyb3Igb24gc3RhbmRhcmQgaW5wdXQiCittc2dpZCAiPHN0YW5kYXJkIGlucHV0PiIKK21zZ3N0ciAiZXJyb3Igc2EgcGFnYmFzYSBuZyBzdGFuZGFyZCBpbnB1dCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MDAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MDMKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gYWx0ZXJuYXRpdmVzIGZvciAlcy4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMvJXMgaXMgZGFuZ2xpbmcsIGl0IHdpbGwgYmUgdXBkYXRlZCB3aXRoIGJlc3QgY2hvaWNlLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUzNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXMvJXMgaGFzIGJlZW4gY2hhbmdlZCAobWFudWFsbHkgb3IgYnkgYSBzY3JpcHQpLiBTd2l0Y2hpbmcgdG8gbWFudWFsICIKKyJ1cGRhdGVzIG9ubHkuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTQyCisjLCBjLWZvcm1hdAorbXNnaWQgInNldHRpbmcgdXAgYXV0b21hdGljIHNlbGVjdGlvbiBvZiAlcy4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgZm9yICVzIG5vdCByZWdpc3RlcmVkLCBub3Qgc2V0dGluZy4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NTcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NjMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIlRoZXJlIGlzIG5vIHByb2dyYW0gd2hpY2ggcHJvdmlkZXMgJXMuIgorbXNnc3RyICIiCisiICAlLjI1MHMgYXkgbmFnYmliaWdheSBuZyAlLjI1MHMgbmd1bml0IGl0byd5IHRhdGFuZ2dhbGFuIG5nIHBhZ2thYXlvcy5cbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NjUgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NzUKK21zZ2lkICJOb3RoaW5nIHRvIGNvbmZpZ3VyZS4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiVGhlcmUgaXMgb25seSBvbmUgYWx0ZXJuYXRpdmUgaW4gbGluayBncm91cCAlczogJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1ODQKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgZm9yICVzIG5vdCByZWdpc3RlcmVkLCBub3QgcmVtb3ZpbmcuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTkyCisjLCBjLWZvcm1hdAorbXNnaWQgInJlbW92aW5nIG1hbnVhbGx5IHNlbGVjdGVkIGFsdGVybmF0aXZlIC0gc3dpdGNoaW5nICVzIHRvIGF1dG8gbW9kZSIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYxNworIywgYy1mb3JtYXQKK21zZ2lkICJhdXRvbWF0aWMgdXBkYXRlcyBvZiAlcy8lcyBhcmUgZGlzYWJsZWQsIGxlYXZpbmcgaXQgYWxvbmUuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjE5CisjLCBjLWZvcm1hdAorbXNnaWQgInRvIHJldHVybiB0byBhdXRvbWF0aWMgdXBkYXRlcyB1c2UgJyVzIC0tYXV0byAlcycuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjM2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1c2luZyAlcyB0byBwcm92aWRlICVzICglcykgaW4gJXMuIgorbXNnc3RyICIlcyAoc3VicHJvY2Vzcyk6ICVzXG4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjQ0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmb3JjaW5nIHJlaW5zdGFsbGF0aW9uIG9mIGFsdGVybmF0aXZlICVzIGJlY2F1c2UgbGluayBncm91cCAlcyBpcyBicm9rZW4uIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjUxCisjLCBjLWZvcm1hdAorbXNnaWQgImN1cnJlbnQgYWx0ZXJuYXRpdmUgJXMgaXMgdW5rbm93biwgc3dpdGNoaW5nIHRvICVzIGZvciBsaW5rIGdyb3VwICVzLiIKK21zZ3N0ciAiIgorCisjLCBmdXp6eQorI34gbXNnaWQgImNhbm5vdCBzdGF0ICVzOiAlcyIKKyN+IG1zZ3N0ciAiaGluZGkgbWEtc3RhdCBhbmcgYCUuMjU1cycgKHNhIGAlLjI1NXMnKSIKKworIywgZnV6enkKKyN+fCBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgJXMiCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWN1dGUgJXM6ICVzIgorI34gbXNnc3RyICJiaWdvIHNhIHBhZy1leGVjIG5nICVzIgorCisjLCBmdXp6eQorI34gbXNnaWQgInVuYWJsZSB0byBtYWtlICVzIGEgc3ltbGluayB0byAlczogJXMiCisjfiBtc2dzdHIgImhpbmRpIG1ha2FnYXdhIG5nIGJhY2t1cCBzeW1saW5rIHBhcmEgc2EgYCUuMjU1cyciCisKKyMsIGZ1enp5CisjfiBtc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgJXMgYXMgJXM6ICVzIgorI34gbXNnc3RyICJoaW5kaSBtYWx1a2xvayBhbmcgYCUuMjUwcycgYmlsYW5nIGAlLjI1MHMnIgorCisjLCBmdXp6eQorI34gbXNnaWQgIndoaWxlIHdyaXRpbmcgJXM6ICVzIgorI34gbXNnc3RyICJlcnJvciBzYSBwYWdzdWxhdCBuZyBgJXMnIgorCisjLCBmdXp6eQorI34gbXNnaWQgInVuYWJsZSB0byByZWFkICVzOiAlcyIKKyN+IG1zZ3N0ciAiaGluZGkgbWEtZXhlY3V0ZSBhbmcgJXMiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAidW5hYmxlIHRvIGNsb3NlICVzOiAlcyIKKyN+IG1zZ3N0ciAiaGluZGkgbWEtZXhlY3V0ZSBhbmcgJXMiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiY2Fubm90IHdyaXRlICVzOiAlcyIKKyN+IG1zZ3N0ciAiaGluZGkgbWEtZXhlY3V0ZSBhbmcgJXMiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAidW5hYmxlIHRvIHJlbmFtZSBmaWxlICclcycgdG8gJyVzJyIKKyN+IG1zZ3N0ciAiaGluZGkgbWEtc3RhdCBhbmcgJXMgYCUuMjUwcyciCisKKyN+IG1zZ2lkICJtYWxsb2MgZmFpbGVkICglbGQgYnl0ZXMpIgorI34gbXNnc3RyICJiaWdvIGFuZyBtYWxsb2MgKCVsZCBuYSBieXRlKSIKKworI34gbXNnaWQgInJlYWxsb2MgZmFpbGVkICglbGQgYnl0ZXMpIgorI34gbXNnc3RyICJiaWdvIGFuZyByZWFsbG9jICglbGQgbmEgYnl0ZSkiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gdW5idWZmZXIgYCUuMjU1cyciCisjfiBtc2dzdHIgImhpbmRpIG1hLXVuYnVmZmVyIGFuZyBgJS4yNTVzJyIKKworI34gbXNnaWQgInBhcnQgZmlsZSBgJS4yNTBzJyBoYXMgdHJhaWxpbmcgZ2FyYmFnZSIKKyN+IG1zZ3N0ciAibWF5IGJhc3VyYSBzYSBkdWxvIG5nIHRhbGFrc2FuZyBiYWhhZ2kgYCUuMjUwcyciCisKKyN+IG1zZ2lkICJzaXplICU3ZCBvY2N1cnMgJTVkIHRpbWVzXG4iCisjfiBtc2dzdHIgImxha2luZyAlN2QgbmFnYW5hcCAlNWQgbmEgYmVzZXNcbiIKKworI34gbXNnaWQgIm91dCBvZiBtZW1vcnkgcHVzaGluZyBlcnJvciBoYW5kbGVyOiAiCisjfiBtc2dzdHIgIm5hZ2t1bGFuZyBuZyBtZW1vcnkgbmFuZyB0aW51bGFrIGFuZyBlcnJvciBoYW5kbGVyOiAiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gdW5sb2NrIGRwa2cgc3RhdHVzIGRhdGFiYXNlIgorI34gbXNnc3RyICJkaSBtYXRhbmdnYWwgYW5nIGFsZGFiYSBuZyBkcGtnIHN0YXR1cyBkYXRhYmFzZSIKKworI34gbXNnaWQgImNvcHkgaW5mbyBmaWxlIGAlLjI1NXMnIgorI34gbXNnc3RyICJrb3B5YWhpbiBhbmcgdGFsYWtzYW5nIGluZm8gYCUuMjU1cyciCisKKyN+IG1zZ2lkICJwYXJzZSBlcnJvciIKKyN+IG1zZ3N0ciAiZXJyb3Igc2EgcGFnLXBhcnNlIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHdyaXRlIHBhcnNpbmcgd2FybmluZyIKKyN+IG1zZ3N0ciAiYmlnbyBzYSBwYWdzdWxhdCBuZyBiYWJhbGEgdHVuZ2tvbCBzYSBwYWctcGFyc2UiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gcnVuICVzICglLjI1MHMpIgorI34gbXNnc3RyICJiaWdvIGFuZyBwYWdwYXRha2JvIG5nICVzICglLjI1MHMpIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgc2hlbGwgKCUuMjUwcykiCisjfiBtc2dzdHIgImJpZ28gc2EgcGFnLWV4ZWMgbmcgc2hlbGwgKCUuMjUwcykiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gY2hlY2sgZm9yIGV4aXN0ZW5jZSBvZiBgJS4yNTBzJyIKKyN+IG1zZ3N0ciAiaGluZGkgbWFzaWd1cm8gYW5nIHBhZ2tha2Fyb29uIG5nIGAlLjI1MHMnIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgcm0gZm9yIGNsZWFudXAiCisjfiBtc2dzdHIgImJpZ28gc2EgcGFnLWV4ZWMgbmcgcm0gcGFyYSBzYSBwYWdsaW5pcyIKKworIywgZnV6enkKKyN+IG1zZ2lkICIiCisjfiAiJXMgZGVidWdnaW5nIG9wdGlvbiwgLS1kZWJ1Zz08b2N0YWw+IG9yIC1EPG9jdGFsPjpcbiIKKyN+ICJcbiIKKyN+ICIgbnVtYmVyICByZWYuIGluIHNvdXJjZSAgIGRlc2NyaXB0aW9uXG4iCisjfiAiICAgICAgMSAgIGdlbmVyYWwgICAgICAgICAgIEdlbmVyYWxseSBoZWxwZnVsIHByb2dyZXNzIGluZm9ybWF0aW9uXG4iCisjfiAiICAgICAgMiAgIHNjcmlwdHMgICAgICAgICAgIEludm9jYXRpb24gYW5kIHN0YXR1cyBvZiBtYWludGFpbmVyIHNjcmlwdHNcbiIKKyN+ICIgICAgIDEwICAgZWFjaGZpbGUgICAgICAgICAgT3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkXG4iCisjfiAiICAgIDEwMCAgIGVhY2hmaWxlZGV0YWlsICAgIExvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkXG4iCisjfiAiICAgICAyMCAgIGNvbmZmICAgICAgICAgICAgIE91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGVcbiIKKyN+ICIgICAgMjAwICAgY29uZmZkZXRhaWwgICAgICAgTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggY29uZmlndXJhdGlvbiBmaWxlXG4iCisjfiAiICAgICA0MCAgIGRlcGNvbiAgICAgICAgICAgIERlcGVuZGVuY2llcyBhbmQgY29uZmxpY3RzXG4iCisjfiAiICAgIDQwMCAgIGRlcGNvbmRldGFpbCAgICAgIExvdHMgb2YgZGVwZW5kZW5jaWVzL2NvbmZsaWN0cyBvdXRwdXRcbiIKKyN+ICIgIDEwMDAwICAgdHJpZ2dlcnMgICAgICAgICAgVHJpZ2dlciBhY3RpdmF0aW9uIGFuZCBwcm9jZXNzaW5nXG4iCisjfiAiICAyMDAwMCAgIHRyaWdnZXJzZGV0YWlsICAgIExvdHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2Vyc1xuIgorI34gIiAgNDAwMDAgICB0cmlnZ2Vyc3N0dXBpZCAgICBTaWxseSBhbW91bnRzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnNcbiIKKyN+ICIgICAxMDAwICAgdmVyeXZlcmJvc2UgICAgICAgTG90cyBvZiBkcml2ZWwgYWJvdXQgZWcgdGhlIGRwa2cvaW5mbyAiCisjfiAiZGlyZWN0b3J5XG4iCisjfiAiICAgMjAwMCAgIHN0dXBpZGx5dmVyYm9zZSAgIEluc2FuZSBhbW91bnRzIG9mIGRyaXZlbFxuIgorI34gIlxuIgorI34gIkRlYnVnZ2luZyBvcHRpb25zIGFyZSBiZSBtaXhlZCB1c2luZyBiaXR3aXNlLW9yLlxuIgorI34gIk5vdGUgdGhhdCB0aGUgbWVhbmluZ3MgYW5kIHZhbHVlcyBhcmUgc3ViamVjdCB0byBjaGFuZ2UuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICIlcyBvcHN5b24gc2EgcGFnLWRlYnVnLCAtLWRlYnVnPTxvY3RhbD4gbyAtRDxvY3RhbD46XG4iCisjfiAiXG4iCisjfiAiIGJpbGFuZyAgcmVmLiBzYSBidWthbCAgIHBhZ2xhbGFyYXdhblxuIgorI34gIiAgICAgIDEgICBnZW5lcmFsICAgICAgICAgIEthcmFuaXdhbmcgbmFrYWthdHVsb25nIG5hIGltcG9ybWFzeW9uZyAiCisjfiAicHJvZ3Jlc29cbiIKKyN+ICIgICAgICAyICAgc2NyaXB0cyAgICAgICAgICBQYWd0YXdhZyBhdCBrYWxhZ2F5YW4gbmcgc2tyaXB0b25nICIKKyN+ICJ0YWdhcGFuZ2FsYWdhXG4iCisjfiAiICAgICAxMCAgIGVhY2hmaWxlICAgICAgICAgT3V0cHV0IG5nIGJhd2F0IHRhbGFrc2FuZyBwcmlub3Nlc29cbiIKKyN+ICIgICAgMTAwICAgZWFjaGZpbGVkZXRhaWwgICBNYXJhbWluZyBvdXRwdXQgbmcgYmF3YXQgdGFsYWtzYW5nIHByaW5vc2Vzb1xuIgorI34gIiAgICAgMjAgICBjb25mZiAgICAgICAgICAgIE91dHB1dCBuZyBiYXdhdCB0YWxha3NhbmcgcGFna2FheW9zXG4iCisjfiAiICAgIDIwMCAgIGNvbmZmZGV0YWlsICAgICAgTWFyYW1pbmcgb3V0cHV0IG5nIGJhd2F0IHRhbGFrc2FuZyBwYWdrYWF5b3NcbiIKKyN+ICIgICAgIDQwICAgZGVwY29uICAgICAgICAgICBEZXBlbmRlbnNpeWEgYXQgdHVuZ2dhbGlhblxuIgorI34gIiAgICA0MDAgICBkZXBjb25kZXRhaWwgICAgIE1hcmFtaW5nIG91dHB1dCBuZyBkZXBlbmRlbnNpeWEgYXQgdHVuZ2dhbGlhblxuIgorI34gIiAgIDEwMDAgICB2ZXJ5dmVyYm9zZSAgICAgIE5hcGFrYXJhbWluZyBsYXdheSBoYWwuIGFuZyBkcGtnL2luZm8gIgorI34gImRpcmVjdG9yeVxuIgorI34gIiAgIDIwMDAgICBzdHVwaWRseXZlcmJvc2UgIFVib2QgbmcgZGFtaW5nIGxhd2F5XG4iCisjfiAiXG4iCisjfiAiT3BzeW9uIHNhIHBhZy1kZWJ1ZyBheSBwaW5hZ3Nhc2FtYSBnYW1pdCBhbmcgYml0d2lzZS1vci5cbiIKKyN+ICJVbmF3YWluIG5hIGFuZyBtZ2Ega2FodWx1Z2FuIGF0IGhhbGFnYSBheSBtYWFhcmluZyBtYWdiYWdvLlxuIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICIlcyBmb3JjaW5nIG9wdGlvbnMgLSBjb250cm9sIGJlaGF2aW91ciB3aGVuIHByb2JsZW1zIGZvdW5kOlxuIgorI34gIiAgd2FybiBidXQgY29udGludWU6ICAtLWZvcmNlLTx0aGluZz4sPHRoaW5nPiwuLi5cbiIKKyN+ICIgIHN0b3Agd2l0aCBlcnJvcjogICAgLS1yZWZ1c2UtPHRoaW5nPiw8dGhpbmc+LC4uLiB8IC0tbm8tZm9yY2UtIgorI34gIjx0aGluZz4sLi4uXG4iCisjfiAiIEZvcmNpbmcgdGhpbmdzOlxuIgorI34gIiAgYWxsIFshXSAgICAgICAgICAgICAgICBTZXQgYWxsIGZvcmNlIG9wdGlvbnNcbiIKKyN+ICIgIGRvd25ncmFkZSBbKl0gICAgICAgICAgUmVwbGFjZSBhIHBhY2thZ2Ugd2l0aCBhIGxvd2VyIHZlcnNpb25cbiIKKyN+ICIgIGNvbmZpZ3VyZS1hbnkgICAgICAgICAgQ29uZmlndXJlIGFueSBwYWNrYWdlIHdoaWNoIG1heSBoZWxwIHRoaXMgb25lXG4iCisjfiAiICBob2xkICAgICAgICAgICAgICAgICAgIFByb2Nlc3MgaW5jaWRlbnRhbCBwYWNrYWdlcyBldmVuIHdoZW4gb24gaG9sZFxuIgorI34gIiAgYmFkLXBhdGggICAgICAgICAgICAgICBQQVRIIGlzIG1pc3NpbmcgaW1wb3J0YW50IHByb2dyYW1zLCBwcm9ibGVtcyAiCisjfiAibGlrZWx5XG4iCisjfiAiICBub3Qtcm9vdCAgICAgICAgICAgICAgIFRyeSB0byAoZGUpaW5zdGFsbCB0aGluZ3MgZXZlbiB3aGVuIG5vdCByb290XG4iCisjfiAiICBvdmVyd3JpdGUgICAgICAgICAgICAgIE92ZXJ3cml0ZSBhIGZpbGUgZnJvbSBvbmUgcGFja2FnZSB3aXRoIGFub3RoZXJcbiIKKyN+ICIgIG92ZXJ3cml0ZS1kaXZlcnRlZCAgICAgT3ZlcndyaXRlIGEgZGl2ZXJ0ZWQgZmlsZSB3aXRoIGFuIHVuZGl2ZXJ0ZWQgIgorI34gInZlcnNpb25cbiIKKyN+ICIgIGJhZC12ZXJpZnkgICAgICAgICAgICAgSW5zdGFsbCBhIHBhY2thZ2UgZXZlbiBpZiBpdCBmYWlscyBhdXRoZW50aWNpdHkgIgorI34gImNoZWNrXG4iCisjfiAiICBkZXBlbmRzLXZlcnNpb24gWyFdICAgIFR1cm4gZGVwZW5kZW5jeSB2ZXJzaW9uIHByb2JsZW1zIGludG8gd2FybmluZ3NcbiIKKyN+ICIgIGRlcGVuZHMgWyFdICAgICAgICAgICAgVHVybiBhbGwgZGVwZW5kZW5jeSBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzXG4iCisjfiAiICBjb25mbmV3IFshXSAgICAgICAgICAgIEFsd2F5cyB1c2UgdGhlIG5ldyBjb25maWcgZmlsZXMsIGRvbid0IHByb21wdFxuIgorI34gIiAgY29uZm9sZCBbIV0gICAgICAgICAgICBBbHdheXMgdXNlIHRoZSBvbGQgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHRcbiIKKyN+ICIgIGNvbmZkZWYgWyFdICAgICAgICAgICAgVXNlIHRoZSBkZWZhdWx0IG9wdGlvbiBmb3IgbmV3IGNvbmZpZyBmaWxlcyBpZiAiCisjfiAib25lXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIGlzIGF2YWlsYWJsZSwgZG9uJ3QgcHJvbXB0LiBJZiBubyBkZWZhdWx0IGNhbiBiZSAiCisjfiAiZm91bmQsXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIHlvdSB3aWxsIGJlIHByb21wdGVkIHVubGVzcyBvbmUgb2YgdGhlIGNvbmZvbGQgIgorI34gIm9yXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmZuZXcgb3B0aW9ucyBpcyBhbHNvIGdpdmVuXG4iCisjfiAiICBjb25mbWlzcyBbIV0gICAgICAgICAgIEFsd2F5cyBpbnN0YWxsIG1pc3NpbmcgY29uZmlnIGZpbGVzXG4iCisjfiAiICBjb25mYXNrIFshXSAgICAgICAgICAgIE9mZmVyIHRvIHJlcGxhY2UgY29uZmlnIGZpbGVzIHdpdGggbm8gbmV3ICIKKyN+ICJ2ZXJzaW9uc1xuIgorI34gIiAgYnJlYWtzIFshXSAgICAgICAgICAgICBJbnN0YWxsIGV2ZW4gaWYgaXQgd291bGQgYnJlYWsgYW5vdGhlciBwYWNrYWdlXG4iCisjfiAiICBjb25mbGljdHMgWyFdICAgICAgICAgIEFsbG93IGluc3RhbGxhdGlvbiBvZiBjb25mbGljdGluZyBwYWNrYWdlc1xuIgorI34gIiAgYXJjaGl0ZWN0dXJlIFshXSAgICAgICBQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyBhcmNoaXRlY3R1cmVcbiIKKyN+ICIgIG92ZXJ3cml0ZS1kaXIgWyFdICAgICAgT3ZlcndyaXRlIG9uZSBwYWNrYWdlJ3MgZGlyZWN0b3J5IHdpdGggYW5vdGhlcidzICIKKyN+ICJmaWxlXG4iCisjfiAiICB1bnNhZmUtaW8gWyFdICAgICAgICAgIERvIG5vdCBwZXJmb3JtIHNhZmUgSS9PIG9wZXJhdGlvbnMgd2hlbiAiCisjfiAidW5wYWNraW5nXG4iCisjfiAiICByZW1vdmUtcmVpbnN0cmVxIFshXSAgIFJlbW92ZSBwYWNrYWdlcyB3aGljaCByZXF1aXJlIGluc3RhbGxhdGlvblxuIgorI34gIiAgcmVtb3ZlLWVzc2VudGlhbCBbIV0gICBSZW1vdmUgYW4gZXNzZW50aWFsIHBhY2thZ2VcbiIKKyN+ICJcbiIKKyN+ICJXQVJOSU5HIC0gdXNlIG9mIG9wdGlvbnMgbWFya2VkIFshXSBjYW4gc2VyaW91c2x5IGRhbWFnZSB5b3VyICIKKyN+ICJpbnN0YWxsYXRpb24uXG4iCisjfiAiRm9yY2luZyBvcHRpb25zIG1hcmtlZCBbKl0gYXJlIGVuYWJsZWQgYnkgZGVmYXVsdC5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIiVzIG9wc3lvbiBzYSBwYWdwaWxpdCAtIGlrb250cm9sIGFuZyBnYWdhd2luIGthcGFnIG1heSBwcm9ibGVtYW5nICIKKyN+ICJuYW5neWFyaTpcbiIKKyN+ICIgIG1hZ2JhYmFsYSBwZXJvIGl0dWxveTogLS1mb3JjZS08YmFnYXk+LDxiYWdheT4sLi4uXG4iCisjfiAiICBodW1pbnRvIG5hIG1heSBlcnJvcjogIC0tcmVmdXNlLTxiYWdheT4sPGJhZ2F5PiwuLi4gfCAtLW5vLWZvcmNlLSIKKyN+ICI8YmFnYXk+LC4uLlxuIgorI34gIiBQYWdwaWxpdCBzYSBtZ2EgYmFnYXk6XG4iCisjfiAiICBhbGwgICAgICAgICAgICAgICAgICAgIEl0YWtkYSBhbmcgbGFoYXQgbmcgb3BzeW9uZyBwYWdwaWxpdFxuIgorI34gIiAgYXV0by1zZWxlY3QgWypdICAgICAgICAoRGkpIFBhZ3BpbGkgbmcgbWdhIHBha2V0ZW5nIGlsdWx1a2xvayAiCisjfiAiKHRhdGFuZ2dhbGluKVxuIgorI34gIiAgZG93bmdyYWRlIFsqXSAgICAgICAgICBQYWxpdGFuIGFuZyBwYWtldGUgbmcgbWFzIG5hdW5hbmcgYmVyc3lvblxuIgorI34gIiAgY29uZmlndXJlLWFueSAgICAgICAgICBJc2FheW9zIGFuZyBhbGlubWFuZyBwYWtldGVuZyBtYWtha2F0dWxvbmcgZGl0b1xuIgorI34gIiAgaG9sZCAgICAgICAgICAgICAgICAgICBJcHJvc2VzbyBhbmcgcGFrZXRlIGthaGl0IG5ha2EtaG9sZFxuIgorI34gIiAgYmFkLXBhdGggICAgICAgICAgICAgICBXYWxhIHNhIFBBVEggYW5nIGltcG9ydGFudGVuZyBtZ2EgcHJvZ3JhbWEsICIKKyN+ICJtYWxhbWFuZ1xuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICBuYSBtYWdrYXJvb24gbmcgbWdhIHByb2JsZW1hXG4iCisjfiAiICBub3Qtcm9vdCAgICAgICAgICAgICAgIFN1YnVrYW5nIGlsdWtsb2sodGFuZ2dhbGluKSBhbmcgbWdhIGJhZ2F5IGthaGl0ICIKKyN+ICJoaW5kaVxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICByb290XG4iCisjfiAiICBvdmVyd3JpdGUgICAgICAgICAgICAgIFBhdHVuZ2FuIGFuZyB0YWxha3NhbiBtdWxhIHNhIGlzYW5nIHBha2V0ZSBuZyAiCisjfiAiaWJhXG4iCisjfiAiICBvdmVyd3JpdGUtZGl2ZXJ0ZWQgICAgIFBhdHVuZ2FuIGFuZyBkaWJlcnRhZG9uZyB0YWxha3NhbiBuZyBoaW5kaSAiCisjfiAiZGliZXJ0YWRvbmcgXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIGJlcnN5b25cbiIKKyN+ICIgIGJhZC12ZXJpZnkgICAgICAgICAgICAgSWx1a2xvayBhbmcgcGFrZXRlIGthaGl0IG5hYmlnbyBhbmcgcGFncGF0aWJheSAiCisjfiAibml0b1xuIgorI34gIiAgZGVwZW5kcy12ZXJzaW9uIFshXSAgICBHYXdpbmcgYmFiYWxhIGFuZyBtZ2EgcHJvYmxlbWEgc2EgZGVwZW5kZW5zaXlhICIKKyN+ICJzYSBcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgYmVyc3lvblxuIgorI34gIiAgZGVwZW5kcyBbIV0gICAgICAgICAgICBHYXdpbmcgYmFiYWxhIGFuZyBtZ2EgcHJvYmxlbWEgc2EgZGVwZW5kZW5zaXlhXG4iCisjfiAiICBjb25mbmV3IFshXSAgICAgICAgICAgIEdhbWl0aW4gbGFnaSBhbmcgYmFnb25nIHRhbGFrc2FuZyBwYWdrYWF5b3MsICIKKyN+ICJodXdhZ1xuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICBuYW5nIG1hZ3Rhbm9uZ1xuIgorI34gIiAgY29uZm9sZCBbIV0gICAgICAgICAgICBHYW1pdGluIGxhZ2kgYW5nIGx1bWFuZyB0YWxha3NhbmcgcGFna2FheW9zLCAiCisjfiAiaHV3YWdcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgbmFuZyBtYWd0YW5vbmdcbiIKKyN+ICIgIGNvbmZkZWYgWyFdICAgICAgICAgICAgR2FtaXRpbiBhbmcgZGVmYXVsdCBuYSBvcHN5b24gcGFyYSBzYSBiYWdvbmcgIgorI34gInRhbGFrc2FuZ1xuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICBwYWdrYWF5b3Mga3VuZyBtYXlyb29uLCBodXdhZyBuYW5nIG1hZ3Rhbm9uZy4gIgorI34gIkt1bmdcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgd2FsYW5nIGRlZmF1bHQgbmEgbWFnYWdhbWl0LCBrYXlvIGF5IHRhdGFudW5naW5cbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgbWFsaWJhbiBrdW5nIGFuZyBjb25mb2xkIG8gY29uZm5ldyBuYSBvcHN5b24gYXlcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgZ2luYW1pdCBkaW5cbiIKKyN+ICIgIGNvbmZtaXMgWyFdICAgICAgICAgICAgTGFnaW5nIGlsdWtsb2sgYW5nIG1nYSBrdWxhbmcgbmEgdGFsYWtzYW5nICIKKyN+ICJwYWdrYWF5b3NcbiIKKyN+ICIgIGNvbmZsaWN0cyBbIV0gICAgICAgICAgUGF5YWdhbiBhbmcgcGFnbHVrbG9rIG5nIG1hZ2thdHVuZ2dhbGluZyBtZ2EgIgorI34gInBha2V0ZVxuIgorI34gIiAgYXJjaGl0ZWN0dXJlIFshXSAgICAgICBJcHJvc2VzbyBhbmcgcGFrZXRlIGthaGl0IG1hbGluZyBhcmtpdGVrdHVyYVxuIgorI34gIiAgb3ZlcndyaXRlLWRpciBbIV0gICAgICBQYXR1bmdhbiBhbmcgZGlyZWN0b3J5IG5nIGlzYW5nIHBha2V0ZSBuZyAiCisjfiAidGFsYWtzYW5cbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgbmcgaWJhXG4iCisjfiAiICByZW1vdmUtcmVpbnN0cmVxIFshXSAgIFRhbmdnYWxpbiBhbmcgbWdhIHBha2V0ZW5nIGthaWxhbmdhbmcgaWx1a2xva1xuIgorI34gIiAgcmVtb3ZlLWVzc2VudGlhbCBbIV0gICBUYW5nZ2FsaW4gYW5nIGVzZW5zeWFsIG5hIHBha2V0ZVxuIgorI34gIlxuIgorI34gIkJBQkFMQSAtIGFuZyBwYWctZ2FtaXQgbmcgbWdhIG9wc3lvbiBuYSBtYXJrYWRvbmcgWyFdIGF5IG1hYWFyaW5nICIKKyN+ICJtYWthcGluc2FsYVxuIgorI34gIm8gbWFrYXNpcmEgbmcgaW55b25nIHBhZ2thbHVrbG9rLiBNZ2Egb3BzeW9uIHNhIHBhZ3BpbGl0IG5hIG1hcmthZG9uZyBbKl0gIgorI34gImF5XG4iCisjfiAibmFrYS1lbmFibGUgbmEgZGVmYXVsdC5cbiIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIGRwa2ctc3BsaXQgdG8gc2VlIGlmIGl0J3MgcGFydCBvZiBhIG11bHRpcGFydGVyIgorI34gbXNnc3RyICIiCisjfiAiYmlnbyBzYSBwYWctZXhlYyBuZyBkcGtnLXNwbGl0IHVwYW5nIG1ha2l0YSBrdW5nIGl0byd5IGJhaGFnaSBuYSAiCisjfiAibXVsdGlwYXJ0ZXIiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlY2wgZGVic2lnLXZlcmlmeSIKKyN+IG1zZ3N0ciAiYmlnbyBuYSBpLWV4ZWNsIGFuZyBkZWJzaWctdmVyaWZ5IgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgZHBrZy1kZWIgdG8gZXh0cmFjdCBjb250cm9sIGluZm9ybWF0aW9uIgorI34gbXNnc3RyICIiCisjfiAiYmlnbyBzYSBwYWctZXhlYyBuZyBkcGtnLWRlYiB1cGFuZyBtYS1leHRyYWN0IGFuZyBpbXBvcm1hc3lvbmcgY29udHJvbCIKKworI34gbXNnaWQgInVuYWJsZSB0byBleGVjIGRwa2ctZGViIHRvIGdldCBmaWxlc3lzdGVtIGFyY2hpdmUiCisjfiBtc2dzdHIgImhpbmRpIG1hLWV4ZWMgYW5nIGRwa2ctZGViIHVwYW5nIGt1bmluIGFuZyBhcmtpYm8gbmcgZmlsZXN5c3RlbSIKKworI34gbXNnaWQgInVuYWJsZSB0byBkZWxldGUgZGlzYXBwZWFyaW5nIGNvbnRyb2wgaW5mbyBmaWxlIGAlLjI1MHMnIgorI34gbXNnc3RyICJoaW5kaSBtYXRhbmdnYWwgYW5nIG5hd2F3YWxhbmcgdGFsYWtzYW5nIGNvbnRyb2wgaW5mbyBgJS4yNTBzJyIKKworI34gbXNnaWQgImRwa2c6ICVzIG5vdCBmb3VuZC5cbiIKKyN+IG1zZ3N0ciAiZHBrZzogaGluZGkgbmFoYW5hcCBhbmcgJXMuXG4iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gLi4uL0RFQklBTiIKKyN+IG1zZ3N0ciAiYmlnbyBzYSBwYWctY2hkaXIgc2EgLi4uL0RFQklBTiIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIHRhciAtY2YiCisjfiBtc2dzdHIgImJpZ28gc2EgcGFnLWV4ZWMgbmcgdGFyIC1jZiIKKworI34gbXNnaWQgImZhaWxlZCB0byBtYWtlIHRtcGZpbGUgKGNvbnRyb2wpIgorI34gbXNnc3RyICJiaWdvIG5hIGxpa2hhaW4gYW5nIHRtcGZpbGUgKGNvbnRyb2wpIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHVubGluayB0bXBmaWxlIChjb250cm9sKSwgJXMiCisjfiBtc2dzdHIgImJpZ28gbmEgaS11bmxpbmsgYW5nIHRtcGZpbGUgKGNvbnRyb2wpLCAlcyIKKworI34gbXNnaWQgImNvbnRyb2wiCisjfiBtc2dzdHIgImNvbnRyb2wiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gcmV3aW5kIHRtcGZpbGUgKGNvbnRyb2wpIgorI34gbXNnc3RyICJiaWdvIG5hIGktcmV3aW5kIGFuZyB0bXBmaWxlIChjb250cm9sKSIKKworI34gbXNnaWQgImZhaWxlZCB0byBmc3RhdCB0bXBmaWxlIChjb250cm9sKSIKKyN+IG1zZ3N0ciAiYmlnbyBuYSBpLWZzdGF0IGFuZyB0bXBmaWxlIChjb250cm9sKSIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIGZpbmQiCisjfiBtc2dzdHIgImJpZ28gc2EgcGFnLWV4ZWMgbmcgZmluZCIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIHNoIC1jIG12IGZvby8qICZjIgorI34gbXNnc3RyICJiaWdvIG5hIGktZXhlYyBhbmcgc2ggLWMgbXYgZm9vLyogJmMiCisKKyN+IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSAlLjI1MHMgbGVuZ3RoIGNvbnRhaW5zIG51bGxzIgorI34gbXNnc3RyICIiCisjfiAidGFsYWtzYW5nIGAlLjI1MHMnIGF5IHNpcmEgLSAlLjI1MHMgbmEgaGFiYSBheSBuYWdsYWxhbWFuIG5nIG1nYSBudWxsIgorCisjfiBtc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gbmVnYXRpdmUgbWVtYmVyIGxlbmd0aCAlemkiCisjfiBtc2dzdHIgInNpcmEgYW5nIHRhbGFrc2FuZyBgJS4yNTBzJyAtIG5lZ2F0aWJvIGFuZyBoYWJhIG5nIGthc2FwaSAlemkiCisKKyN+IG1zZ2lkICJ2ZXJzaW9uIG51bWJlciIKKyN+IG1zZ3N0ciAiYmlsYW5nIG5nIGJlcnN5b24iCisKKyN+IG1zZ2lkICJoZWFkZXIgaW5mbyBtZW1iZXIiCisjfiBtc2dzdHIgInBhbmltdWxhbmcgaW5mbyBuZyBrYXNhcGkiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgInNraXBwZWQgbWVtYmVyIGRhdGEgZnJvbSAlcyIKKyN+IG1zZ2lkICJza2lwcGVkIGNvbnRyb2wgYXJlYSBmcm9tICVzIgorI34gbXNnc3RyICJsaW5ha3Rhd2FuIGFuZyBkYXRvcyBuYSBrYXNhcGkgbXVsYSBzYSAlcyIKKworIywgZnV6enkKKyN+IG1zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHRlbXBvcmFyeSBkaXJlY3RvcnkiCisjfiBtc2dzdHIgImJpZ28gbmEgbGlraGFpbiBhbmcgdGVtcG9yYXJ5IGRpcmVjdG9yeW5hbWUiCisKKyN+IG1zZ2lkICJpbmZvX3NwZXciCisjfiBtc2dzdHIgImluZm9fc3BldyIKKworIywgZnV6enkKKyN+fCBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgZHBrZy1kZWIgdG8gZXh0cmFjdCBjb250cm9sIGluZm9ybWF0aW9uIgorI34gbXNnaWQgImZhaWxlZCB0byBleGVjIGRwa2ctZGViIHRvIGV4dHJhY3QgZmllbGQgdmFsdWUiCisjfiBtc2dzdHIgIiIKKyN+ICJiaWdvIHNhIHBhZy1leGVjIG5nIGRwa2ctZGViIHVwYW5nIG1hLWV4dHJhY3QgYW5nIGltcG9ybWFzeW9uZyBjb250cm9sIgorCisjLCBmdXp6eQorI34gbXNnaWQgInVuYWJsZSB0byBzdGF0ICVzOiAlcyIKKyN+IG1zZ3N0ciAiaGluZGkgbWEtZXhlY3V0ZSBhbmcgJXMiCisKKyN+IG1zZ2lkICIlZCByZXF1ZXN0ZWQgY29udHJvbCBjb21wb25lbnRzIGFyZSBtaXNzaW5nIgorI34gbXNnc3RyICJuYXdhd2FsYSBhbmcgJWQgbmEgaGluaW5naW5nIGJhaGFnaW5nIGNvbnRyb2wiCisKKyN+IG1zZ2lkICJjYXQgKGRhdGEpIgorI34gbXNnc3RyICJjYXQgKGRhdG9zKSIKKworIywgZnV6enkKKyN+IG1zZ2lkICJmYWlsZWQgdG8gb3BlbiBwaXBlIGRlc2NyaXB0b3IgYDEnIGluIHBhc3RlIgorI34gbXNnc3RyICJiaWdvIGFuZyBmZG9wZW4gcDEgc2EgcGFnLXBhc3RlIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHdyaXRlIHRvIGd6aXAgLWRjIgorI34gbXNnc3RyICJiaWdvIGFuZyBwYWdzdWxhdCBzYSBnemlwIC1kYyIKKworI34gbXNnaWQgImZhaWxlZCB0byBjbG9zZSBnemlwIC1kYyIKKyN+IG1zZ3N0ciAiYmlnbyBhbmcgcGFnc2FyYSBuZyBnemlwIC1kYyIKKworI34gbXNnaWQgImZhaWxlZCB0byBzeXNjYWxsIGxzZWVrIHRvIGZpbGVzIGFyY2hpdmUgcG9ydGlvbiIKKyN+IG1zZ3N0ciAiYmlnbyBuYSBtYWctc3lzY2FsbCBuZyBsc2VlayBzYSBiYWhhZ2kgbmcgYXJraWJvbmcgdGFsYWtzYW4iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gZXhlYyBta3NwbGl0IgorI34gbXNnc3RyICJoaW5kaSBtYS1leGVjIGFuZyBta3NwbGl0IgorCisjLCBmdXp6eQorI34gbXNnaWQgIi0tJXMgbmVlZHMgYSBkaXZlcnQtdG8gYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tYnVpbGQgYXkgbmFuZ2FuZ2FpbGFuZ2FuIG5nIGFyZ3VtZW50b25nIGRpcmVjdG9yeSIKKworIywgZnV6enkKKyN+IG1zZ2lkICItLSVzIG5lZWRzIGEgPHBhY2thZ2U+IGFyZ3VtZW50IgorI34gbXNnc3RyICIiCisjfiAiLS0lcyBheSBuYW5nYW5nYWlsYW5nYW4gbmcgaGluZGkga3VrdWxhbmcgc2EgaXNhIG5hIGFyZ3VtZW50b25nIHBhbmdhbGFuICIKKyN+ICJuZyBwYWtldGUiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiY2Fubm90IG9wZW4gZGl2ZXJzaW9uczogJXMiCisjfiBtc2dzdHIgImJpZ28gc2EgcGFnYnVrYXMgbmcgdGFsYWtzYW5nIGRpYmVyc3lvbiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJtaXNzaW5nIGFsdG5hbWUiCisjfiBtc2dzdHIgImt1bGFuZyBuYSAlcyIKKworIywgZnV6enkKKyN+IG1zZ2lkICJpbnRlcm5hbCBlcnJvciAtIGJhZCBtb2RlIGAlcyciCisjfiBtc2dzdHIgIiVzOiBpbnRlcm5hbCBnemlwIGVycm9yOiBwYWdiYXNhOiBgJXMnIgorCisjLCBmdXp6eQorI34gbXNnaWQgImNhbm5vdCBzdGF0IG9sZCBuYW1lIGAlcyc6ICVzIgorI34gbXNnc3RyICJoaW5kaSBtYS1zdGF0IGFuZyBgJS4yNTVzJyAoc2EgYCUuMjU1cycpIgorCisjLCBmdXp6eQorI34gbXNnaWQgInJlbmFtZTogcmVuYW1lIGAlcycgdG8gYCVzJzogJXMiCisjfiBtc2dzdHIgIiIKKyN+ICJkcGtnOiAlczogYmFiYWxhIC0gYmlnbyBzYSBwYWdwYWxpdCBuZyBwYW5nYWxhbiBuZyBgJS4yNTBzJyBzYSBgJS4yNTBzJzogIgorI34gIiVzXG4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiY3JlYXRlIGRpdmVyc2lvbnMtbmV3OiAlcyIKKyN+IG1zZ3N0ciAiZXJyb3Igc2EgcGFnYmFzYSBzYSBkaWJlcnN5b24gW2ldIgorCisjLCBmdXp6eQorI34gbXNnaWQgIndyaXRlIGRpdmVyc2lvbnMtbmV3OiAlcyIKKyN+IG1zZ3N0ciAiZGliZXJzeW9uIG5nICVzIgorCisjLCBmdXp6eQorI34gbXNnaWQgImNsb3NlIGRpdmVyc2lvbnMtbmV3OiAlcyIKKyN+IG1zZ3N0ciAiZGliZXJzeW9uIG5nICVzIgorCisjLCBmdXp6eQorI34gbXNnaWQgImNyZWF0ZSBuZXcgZGl2ZXJzaW9ucy1vbGQ6ICVzIgorI34gbXNnc3RyICJlcnJvciBzYSBwYWdiYXNhIHNhIGRpYmVyc3lvbiBbaV0iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiaW5zdGFsbCBuZXcgZGl2ZXJzaW9uczogJXMiCisjfiBtc2dzdHIgImhpbmRpIG1haWx1a2xvayBhbmcgYmFnb25nIGJlcnN5b24gbmcgYCUuMjU1cyciCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiaW50ZXJuYWwgZXJyb3I6ICVzIGNvcnJ1cHQ6ICVzIgorI34gbXNnc3RyICIlczogaW50ZXJuYWwgZ3ppcCBlcnJvcjogcGFnc3VsYXQ6IGAlcyciCisKKyN+IG1zZ2lkICJkcGtnLWRlYiAtIGVycm9yOiAlcyAoYCVzJykgZG9lc24ndCBjb250YWluIGFueSBkaWdpdHNcbiIKKyN+IG1zZ3N0ciAiZHBrZy1kZWIgLSBlcnJvcjogJXMgKGAlcycpIGF5IGhpbmRpIG5hZ2xhbGFtYW4gbmcgbWdhIGRpZ2l0XG4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiRGViaWFuIHJldmlzaW9uIgorI34gbXNnc3RyICInIGJlcnN5b24gbmcgYmFja2VuZCBuZyBhcmtpYm9uZyBwYWtldGUiCisKKyN+IG1zZ2lkICIlZCBlcnJvcnMgaW4gY29udHJvbCBmaWxlIgorI34gbXNnc3RyICIlZCBuYSBlcnJvciBzYSB0YWxha3NhbmcgY29udHJvbCIKKworIywgZnV6enkKKyN+IG1zZ2lkICJjYW4ndCByZWFkZGlyICVzOiAlcyIKKyN+IG1zZ3N0ciAiaGluZGkgbWFidWtzYW4gYW5nIHRhbGFhbmAlcyc6ICVzXG4iCisKKyN+IG1zZ2lkICJmYWlsZWQgaW4gYnVmZmVyX3dyaXRlKGZkKSAoJWksIHJldD0lbGkpOiAlcyIKKyN+IG1zZ3N0ciAiYmlnbyBzYSBidWZmZXJfd3JpdGUoZmQpICglaSwgcmV0PSVsaSk6ICVzIgorCisjfiBtc2dpZCAiZW9mIGluIGJ1ZmZlcl93cml0ZShzdHJlYW0pOiAlcyIKKyN+IG1zZ3N0ciAiZW9mIHNhIGJ1ZmZlcl93cml0ZShzdHJlYW0pOiAlcyIKKworI34gbXNnaWQgImVycm9yIGluIGJ1ZmZlcl93cml0ZShzdHJlYW0pOiAlcyIKKyN+IG1zZ3N0ciAiZXJyb3Igc2EgYnVmZmVyX3dyaXRlKHN0cmVhbSk6ICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIGluIGJ1ZmZlcl9yZWFkKGZkKTogJXMiCisjfiBtc2dzdHIgImJpZ28gc2EgYnVmZmVyX3JlYWQoZmQpOiAlcyIKKworI34gbXNnaWQgImVycm9yIGluIGJ1ZmZlcl9yZWFkKHN0cmVhbSk6ICVzIgorI34gbXNnc3RyICJlcnJvciBzYSBidWZmZXJfcmVhZChzdHJlYW0pOiAlcyIKKworIywgZnV6enkKKyN+IG1zZ2lkICIlcyByZXR1cm5lZCBlcnJvciBleGl0IHN0YXR1cyAlZCIKKyN+IG1zZ3N0ciAibmFnYmFsaWsgYW5nIHN1YnByb2Nlc3MgJXMgbmcgZXJyb3IgZXhpdCBzdGF0dXMgJWQiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiJXMga2lsbGVkIGJ5IHNpZ25hbCAoJXMpJXMiCisjfiBtc2dzdHIgInN1YnByb2Nlc3MgJXMgYXkgcGluYXRheSBuZyBodWR5YXQgKCVzKSVzIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgdmVyc2lvbiAyIG9yXG4iCisjfiAibGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJJdG8gYXkgbWFsYXlhbmcgc29mdHdhcmU7IGJhc2FoaW4gYW5nIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbmNlIGJlcnN5b24gIgorI34gIjIgb1xuIgorI34gIm1hcy1iYWdvIHBhcmEgc2Ega3VuZGlzeW9uIG5nIHBhbmdvbmdvcHlhLiBXYWxhbmcgd2FyYW50aS5cbiIKKyN+ICJCYXNhaGluIGFuZyBkcGtnLWRlYiAtLWxpY2VuY2UgcGFyYSBzYSBkZXRhbHllLlxuIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICJcbiIKKyN+ICJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgdmVyc2lvbiAyIG9yXG4iCisjfiAibGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJJdG8gYXkgbWFsYXlhbmcgc29mdHdhcmU7IGJhc2FoaW4gYW5nIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbmNlIGJlcnN5b24gIgorI34gIjIgb1xuIgorI34gIm1hcy1iYWdvIHBhcmEgc2Ega3VuZGlzeW9uIG5nIHBhbmdvbmdvcHlhLiBXYWxhbmcgd2FyYW50aS5cbiIKKyN+ICJCYXNhaGluIGFuZyBkcGtnLWRlYiAtLWxpY2VuY2UgcGFyYSBzYSBkZXRhbHllLlxuIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiVzOiBmYWlsZWQgdG8gZXhlYyAnJXMgJXMnIgorI34gbXNnc3RyICIlczogYmlnbyBzYSBwYWctZXhlYyBnemlwICVzIgorCisjfiBtc2dpZCAiJXM6IGludGVybmFsIGd6aXAgZXJyb3I6IHJlYWQ6IGAlcyciCisjfiBtc2dzdHIgIiVzOiBpbnRlcm5hbCBnemlwIGVycm9yOiBwYWdiYXNhOiBgJXMnIgorCisjfiBtc2dpZCAiJXM6IGludGVybmFsIGd6aXAgZXJyb3I6IHdyaXRlOiBgJXMnIgorI34gbXNnc3RyICIlczogaW50ZXJuYWwgZ3ppcCBlcnJvcjogcGFnc3VsYXQ6IGAlcyciCisKKyN+IG1zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCBlcnJvcjogcmVhZCglaSkgIT0gd3JpdGUoJWkpIgorI34gbXNnc3RyICIlczogaW50ZXJuYWwgZ3ppcCBlcnJvcjogcGFnYmFzYSglaSkgIT0gcGFnc3VsYXQoJWkpIgorCisjfiBtc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIGVycm9yOiByZWFkOiBgJXMnIgorI34gbXNnc3RyICIlczogaW50ZXJuYWwgYnppcDIgZXJyb3I6IHBhZ2Jhc2E6IGAlcyciCisKKyN+IG1zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgZXJyb3I6IHdyaXRlOiBgJXMnIgorI34gbXNnc3RyICIlczogaW50ZXJuYWwgYnppcDIgZXJyb3I6IHBhZ3N1bGF0OiBgJXMnIgorCisjfiBtc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIGVycm9yOiByZWFkKCVpKSAhPSB3cml0ZSglaSkiCisjfiBtc2dzdHIgIiVzOiBpbnRlcm5hbCBiemlwMiBlcnJvcjogcGFnYmFzYSglaSkgIT0gcGFnc3VsYXQoJWkpIgorCisjfiBtc2dpZCAiRG9uJ3QgZm9yZ2V0IHRvIGZvcmVncm91bmQgKGBmZycpIHRoaXMgcHJvY2VzcyB3aGVuIHlvdSdyZSBkb25lICFcbiIKKyN+IG1zZ3N0ciAiIgorI34gIkh1d2FnIGthbGltdXRhbiBtYWctZm9yZWdyb3VuZCAoYGZnJykgbmcgcHJvc2Vzb25nIGl0byBrYXBhZyB0YXBvcyBuYSAiCisjfiAia2F5byAhXG4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiIgorI34gIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgb3JcbiIKKyN+ICJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKKyN+ICJTZWUgJXMgLS1saWNlbnNlIGZvciBjb3B5cmlnaHQgYW5kIGxpY2Vuc2UgZGV0YWlscy5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIkl0byBheSBtYWxheWFuZyBzb2Z0d2FyZTsgYmFzYWhpbiBhbmcgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgYmVyc3lvbiAiCisjfiAiMiBvXG4iCisjfiAibWFzLWJhZ28gcGFyYSBzYSBrdW5kaXN5b24gbmcgcGFuZ29uZ29weWEuIFdhbGFuZyB3YXJhbnRpLlxuIgorI34gIkJhc2FoaW4gYW5nIGRwa2ctZGViIC0tbGljZW5jZSBwYXJhIHNhIGRldGFseWUuXG4iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gZ2V0IHVuaXF1ZSBmaWxlbmFtZSBmb3IgY29udHJvbCBpbmZvIgorI34gbXNnc3RyICJoaW5kaSBtYWtha3VoYSBuZyBrYWthaWJhbmcgcGFuZ2FsYW5nIHRhbGFrc2FuIHBhcmEgc2EgY29udHJvbCBpbmZvIgorCisjLCBmdXp6eQorI34gbXNnaWQgIkRlYmlhbiBgJXMnIHBhY2thZ2UgbWFuYWdlbWVudCBwcm9ncmFtIHF1ZXJ5IHRvb2xcbiIKKyN+IG1zZ3N0ciAiIgorI34gIiBrYXNhbmdrYXBhbiBzYSBwYWd0YW5vbmcgbmcgcHJvZ3JhbWFuZyB0YWdhcGFuZ2FzaXdhIG5nIG1nYSBwYWtldGVcbiIKKworIywgZnV6enkKKyN+IG1zZ2lkICIiCisjfiAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBxdWVyeWluZyBwYWNrYWdlcztcbiIKKyN+ICJVc2UgLS1saWNlbnNlIGZvciBjb3B5cmlnaHQgbGljZW5zZSBhbmQgbGFjayBvZiB3YXJyYW50eSAoR05VIEdQTCkuIgorI34gbXNnc3RyICIiCisjfiAiR2FtaXRpbiAtLWhlbHAgcGFyYSBzYSB0dWxvbmcgdHVuZ2tvbCBzYSBwYWd0YW5vbmcgdWtvbCBzYSBtZ2EgcGFrZXRlO1xuIgorI34gIkdhbWl0aW4gLS1saWNlbnNlIHBhcmEgc2Ega2FyYXBhdGFuZyBzaXBpLCBsaXNlbnNpeWEgYXQga2FrdWxhbmdhbiBuZyAiCisjfiAid2FyYW50aVxuIgorI34gIiAoR05VIEdQTCkuXG4iCisjfiAiXG4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiZmFpbGVkIHRvIGNob3duICVzOiAlcyIKKyN+IG1zZ3N0ciAiYmlnbyBhbmcgcGFncGF0YWtibyBuZyAlcyAoJS4yNTBzKSIKKworIywgZnV6enkKKyN+IG1zZ2lkICJmYWlsZWQgdG8gY2htb2QgJXM6ICVzIgorI34gbXNnc3RyICJiaWdvIHNhIHBhZy1leGVjIG5nICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGZvcmsgZm9yIGNsZWFudXAiCisjfiBtc2dzdHIgImJpZ28gc2EgcGFnLWZvcmsgcGFyYSBtYWdsaW5pcyIKKworI34gbXNnaWQgImZhaWxlZCB0byB3YWl0IGZvciBybSBjbGVhbnVwIgorI34gbXNnc3RyICJiaWdvIG5hIG1hZ2hpbnRheSBuYSBtYWdsaW5pcyBhbmcgcm0iCisKKyN+IG1zZ2lkICJybSBjbGVhbnVwIGZhaWxlZCwgY29kZSAlZFxuIgorI34gbXNnc3RyICJiaWdvIGFuZyBwYWdsaW5pcyBuZyBybSwgY29kZSAlZFxuIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgcm0gLXJmIgorI34gbXNnc3RyICJiaWdvIG5hIGktZXhlYyBhbmcgcm0gLXJmIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHJlYWQgYGNvbnRyb2wnIChpbiBgJS4yNTVzJykiCisjfiBtc2dzdHIgImJpZ28gYW5nIHBhZ2Jhc2EgbmcgYGNvbnRyb2wnIChzYSBgJS4yNTVzJykiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gc2VlayBiYWNrIgorI34gbXNnc3RyICJoaW5kaSBtYWthcGFnLXNlZWsgcGFiYWxpayIKKworI34gbXNnaWQgInVua25vd24gZGF0YSB0eXBlIGAlaScgaW4gYnVmZmVyX3dyaXRlXG4iCisjfiBtc2dzdHIgImRpIGtpbGFsYW5nIHVyaSBuZyBkYXRvcyBgJWknIHNhIGJ1ZmZlcl93cml0ZVxuIgorCisjfiBtc2dpZCAidW5rbm93biBkYXRhIHR5cGUgYCVpJyBpbiBidWZmZXJfcmVhZFxuIgorI34gbXNnc3RyICJkaSBraWxhbGFuZyB1cmkgbmcgZGF0b3MgYCVpJyBzYSBidWZmZXJfcmVhZFxuIgorCisjfiBtc2dpZCAid2FpdCBmb3Igc2hlbGwgZmFpbGVkIgorI34gbXNnc3RyICJiaWdvIGFuZyBwYWdoaW50YXkgc2Egc2hlbGwiCisKKyN+IG1zZ2lkICJyZWFkIGVycm9yIGluIGRpdmVyc2lvbnMgW2ldIgorI34gbXNnc3RyICJlcnJvciBzYSBwYWdiYXNhIHNhIGRpYmVyc3lvbiBbaV0iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiY2htb2QiCisjfiBtc2dzdHIgImhhd2FrYW4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiZmFpbGVkIHRvICVzICclLjI1NXMnIgorI34gbXNnc3RyICJiaWdvIHNhIHBhZy1jaGRpciBzYSBgJS4yNTVzJyIKKworI34gbXNnaWQgIndhaXQgZm9yIGRwa2ctc3BsaXQgZmFpbGVkIgorI34gbXNnc3RyICJiaWdvIGFuZyBwYWdoaW50YXkgc2EgZHBrZy1zcGxpdCIKKworI34gbXNnaWQgImNhbm5vdCByZW1vdmUgZmlsZSBgJS4yNTBzJyIKKyN+IG1zZ3N0ciAiaGluZGkgbWF0YW5nZ2FsIGFuZyB0YWxha3NhbmcgYCUuMjUwcyciCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiYWJvcnRpbmciCisjfiBtc2dzdHIgImJhYmFsYSIKKworIywgZnV6enkKKyN+IG1zZ2lkICJjYW5ub3Qgb3BlbiBzdGF0b3ZlcnJpZGU6ICVzIgorI34gbXNnc3RyICJiaWdvIHNhIHBhZ2J1a2FzIG5nIHRhbGFrc2FuZyBzdGF0b3ZlcnJpZGUiCisKKyN+IG1zZ2lkICJmYWlsZWQgd3JpdGUgZHVyaW5nIGhhc2hyZXBvcnQiCisjfiBtc2dzdHIgImJpZ28gc2EgcGFnc3VsYXQgaGFiYW5nIG5hZy1oYXNocmVwb3J0IgorCisjfiBtc2dpZCAiY29uZmlndXJhdGlvbiBlcnJvcjogdW5rbm93biBvcHRpb24gJXMiCisjfiBtc2dzdHIgImVycm9yIHNhIHBhZ2thYXlvczogaGluZGkga2lsYWxhbmcgb3BzeW9uICVzIgorCisjfiBtc2dpZCAiY29uZmlndXJhdGlvbiBlcnJvcjogJXMgZG9lcyBub3QgdGFrZSBhIHZhbHVlIgorI34gbXNnc3RyICJlcnJvciBzYSBwYWdrYWF5b3M6IGhpbmRpIG5hbmdhbmdhaWxhbmdhbiBuZyBoYWxhZ2EgYW5nICVzIgorCisjLCBmdXp6eQorI34gbXNnaWQgImRwa2c6IHZlcnNpb24gJyVzJyBoYXMgYmFkIHN5bnRheDogJXNcbiIKKyN+IG1zZ3N0ciAiYmVyc3lvbiBiIGF5IG1heSBtYWxpbmcgc3ludGF4OiAlc1xuIgorCisjLCBmdXp6eQorI34gbXNnaWQgInVuZXhlY3B0ZWQgZW5kIG9mIGxpbmUgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCisjfiBtc2dzdHIgImRpIGluYWFzYWhhbmcgZHVsbyBuZyBsaW55YSBzYSBwYW5nYWxhbiBuZyBwYWtldGUgc2EgbGlueWEgJWQiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiLS1jaGVjay1zdXBwb3J0ZWQgdGFrZXMgbm8gYXJndW1lbnRzIgorI34gbXNnc3RyICItLSVzIGF5IGhpbmRpIHR1bWF0YW5nZ2FwIG5nIG1nYSBhcmd1bWVudG8iCisKKyN+IG1zZ2lkICItLWZvcmdldC1vbGQtdW5hdmFpbCB0YWtlcyBubyBhcmd1bWVudHMiCisjfiBtc2dzdHIgIi0tZm9yZ2V0LW9sZC11bmF2YWlsIGF5IGhpbmRpIHR1bWF0YW5nZ2FwIG5nIGFyZ3VtZW50byIKKworIywgZnV6enkKKyN+IG1zZ2lkICJjb3VsZCBub3Qgb3BlbiBzdGRlcnIgZm9yIG91dHB1dCEgJXMiCisjfiBtc2dzdHIgImhpbmRpIG1hYnVrc2FuIGFuZyBiYWhhZ2luZyBgY29udHJvbCciCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiJXM6IHVua25vd24gb3B0aW9uIGAlcyciCisjfiBtc2dzdHIgImRpIGtpbGFsYW5nIG9wc3lvbiAtLSVzIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiVzOiB0b28gbWFueSBhcmd1bWVudHMiCisjfiBtc2dzdHIgIi0tJXMgYXkgaGluZGkgdHVtYXRhbmdnYXAgbmcgbWdhIGFyZ3VtZW50byIKKworIywgZnV6enkKKyN+IG1zZ2lkICIlczogZmFpbGVkIHRvIGxvY2sgZGlyIGZvciBlZGl0aW5nISAlcyIKKyN+IG1zZ3N0ciAiJXM6IGJpZ28gc2EgcGFnLWV4ZWMgZ3ppcCAlcyIKKworIywgZnV6enkKKyN+IG1zZ2lkICJ1bmFibGUgdG8gb3BlbiAlczogJXMiCisjfiBtc2dzdHIgImhpbmRpIG1hLWV4ZWN1dGUgYW5nICVzIgorCisjLCBmdXp6eQorI34gbXNnaWQgInVuYWJsZSB0byBjbG9zZSAlcyBhZnRlciByZWFkOiAlcyIKKyN+IG1zZ3N0ciAiYmlnbyBzYSBwYWdzYXJhIG1hdGFwb3MgbmcgcGFnYmFzYTogYCUuMjU1cyciCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiJXM6IGNyZWF0aW5nIG5ldyBzZWN0aW9uIGAlcyciCisjfiBtc2dzdHIgImVycm9yIHNhIHBhZ2xpa2hhIG5nIGRpcmVjdG9yeSBgJS4yNTVzJyIKKworIywgZnV6enkKKyN+IG1zZ2lkICIlczogbm8gZW50cnkgZm9yIGZpbGUgYCVzJyIKKyN+IG1zZ3N0ciAia29weWFoaW4gYW5nIHRhbGFrc2FuZyBpbmZvIGAlLjI1NXMnIgorCisjLCBmdXp6eQorI34gbXNnaWQgInVuYWJsZSB0byBiYWNrdXAgb2xkICVzLCBnaXZpbmcgdXA6ICVzIgorI34gbXNnc3RyICJoaW5kaSBtYS1leGVjdXRlIGFuZyAlcyIKKworIywgZnV6enkKKyN+IG1zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgJXM6ICVzIgorI34gbXNnc3RyICJoaW5kaSBtYWx1a2xvayBhbmcgYCUuMjUwcycgYmlsYW5nIGAlLjI1MHMnIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiVzOiBjb3VsZCBub3QgYmFja3VwICVzIGluICVzOiAlcyIKKyN+IG1zZ3N0ciAiaGluZGkgbWFidWtzYW4gYW5nIHRhbGFhbmAlcyc6ICVzXG4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiJXM6IHdhcm5pbmcgLSB1bmFibGUgdG8gdW5sb2NrICVzOiAlcyIKKyN+IG1zZ3N0ciAiZHBrZzogYmFiYWxhIC0gaGluZGkgbWEtc3RhdCBhbmcgJXMgYCUuMjUwcyc6ICVzXG4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAidW5hYmxlIHRvIHJlYWQgJXM6ICVkIgorI34gbXNnc3RyICJoaW5kaSBtYS1leGVjdXRlIGFuZyAlcyIKKworI34gbXNnaWQgImZhaWxlZCB0byBvcGVuIHRtcGZpbGUgKGNvbnRyb2wpLCAlcyIKKyN+IG1zZ3N0ciAiYmlnbyBzYSBwYWdidWthcyBuZyB0bXBmaWxlIChjb250cm9sKSwgJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gb3BlbiB0bXBmaWxlIChkYXRhKSwgJXMiCisjfiBtc2dzdHIgImJpZ28gbmEgYnVrc2FuIGFuZyB0bXBmaWxlIChkYXRvcyksICVzIgorCisjfiBtc2dpZCAiaW52YWxpZCBudW1iZXIgZm9yIC0tY29tbWFuZC1mZCIKKyN+IG1zZ3N0ciAiZGkgdGFuZ2dhcCBuYSBudW1lcm8gcGFyYSBzYSAtLWNvbW1hbmQtZmQiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcmV3aW5kIGF0IHN0YXJ0IG9mIHZzbnByaW50ZiIKKyN+IG1zZ3N0ciAiaGluZGkgbWFrYS1yZXdpbmQgc2EgdW1waXNhIG5nIHZzbnByaW50ZiIKKworI34gbXNnaWQgInVuYWJsZSB0byB0cnVuY2F0ZSBpbiB2c25wcmludGYiCisjfiBtc2dzdHIgImhpbmRpIG1ha2FwYWctdHJ1bmNhdGUgc2EgdnNucHJpbnRmIgorCisjfiBtc2dpZCAid3JpdGUgZXJyb3IgaW4gdnNucHJpbnRmIgorI34gbXNnc3RyICJlcnJvciBzYSBwYWdzdXN1bGF0IHNhIHZzbnByaW50ZiIKKworI34gbXNnaWQgInVuYWJsZSB0byBzdGF0IGluIHZzbnByaW50ZiIKKyN+IG1zZ3N0ciAiaGluZMOuIG1ha2Etc3RhdCBzYSB2c25wcmludGYiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcmV3aW5kIGluIHZzbnByaW50ZiIKKyN+IG1zZ3N0ciAiaGluZGkgbWFrYS1yZXdpbmQgc2EgdnNucHJpbnRmIgorCisjfiBtc2dpZCAicmVhZCBlcnJvciBpbiB2c25wcmludGYgdHJ1bmNhdGVkIgorI34gbXNnc3RyICJlcnJvciBzYSBwYWdiYXNhIHNhIHZzbnByaW50ZiBuYS10cnVuY2F0ZSIKKworI34gbXNnaWQgIlN5c3RlbSBlcnJvciBuby4lZCIKKyN+IG1zZ3N0ciAiRXJyb3Igbmcgc2lzdGVtYSBiaWxhbmcgJWQiCisKKyN+IG1zZ2lkICJTaWduYWwgbm8uJWQiCisjfiBtc2dzdHIgIkh1ZHlhdCBiaWxhbmcgJWQiCisKKyN+IG1zZ2lkICJkcGtnOiB3YXJuaW5nIC0gJXMgcmV0dXJuZWQgZXJyb3IgZXhpdCBzdGF0dXMgJWRcbiIKKyN+IG1zZ3N0ciAiZHBrZzogYmFiYWxhIC0gbmFnYmFsaWsgYW5nICVzIG5nIGVycm9yIGV4aXQgc3RhdHVzICVkXG4iCisKKyN+IG1zZ2lkICJkcGtnOiB3YXJuaW5nIC0gJXMga2lsbGVkIGJ5IHNpZ25hbCAoJXMpJXNcbiIKKyN+IG1zZ3N0ciAiZHBrZzogYmFiYWxhIC0gcGluYXRheSBhbmcgJXMgbmcgaHVkeWF0ICglcyklc1xuIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHJlYWQgYCVzJyBhdCBsaW5lICVkIgorI34gbXNnc3RyICJiaWdvIHNhIHBhZ2Jhc2EgbmcgYCVzJyBzYSBsaW55YSAlZCIKKworIywgZnV6enkKKyN+IG1zZ2lkICJwYXJzZSBlcnJvciwgaW4gZmlsZSBgJS4yNTVzJyBuZWFyIGxpbmUgJWQiCisjfiBtc2dzdHIgIiVzLCBzYSB0YWxha3NhbmcgYCUuMjU1cycgbWFsYXBpdCBzYSBsaW55YSAlZCIKKworI34gbXNnaWQgIiBwYWNrYWdlIGAlLjI1NXMnIgorI34gbXNnc3RyICIgcGFrZXRlbmcgYCUuMjU1cyciCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gcmVhbGxvYyBmb3IgdmFyaWFibGUgYnVmZmVyIgorI34gbXNnc3RyICJiaWdvIHNhIHBhZy1yZWFsbG9jIHBhcmEgc2EgdmFyaWFibGUgYnVmZmVyIgorCisjfiBtc2dpZCAicHJvY2Vzc19hcmNoaXZlIC4uLiAgYWxyZWFkeSBkaXNhcHBlYXJlZCAhIgorI34gbXNnc3RyICJwcm9jZXNzX2FyY2hpdmUuLi4gbmF3YWxhIG5hICEiCisKKyN+IG1zZ2lkICJnb2JibGUgcmVwbGFjZWQgZmlsZSBgJS4yNTVzJyIKKyN+IG1zZ3N0ciAicGluYWxpdGFuIG5nIGdvYmJsZSBhbmcgdGFsYWtzYW5nIGAlLjI1NXMnIgorCisjfiBtc2dpZCAiZHBrZzogJXM6IHdhcm5pbmcgLSBmYWlsZWQgdG8gcmVtb3ZlIGAlLjI1MHMnOiAlc1xuIgorI34gbXNnc3RyICJkcGtnOiAlczogYmFiYWxhIC0gYmlnbyBzYSBwYWd0YW5nZ2FsIG5nIGAlLjI1MHMnOiAlc1xuIgorCisjfiBtc2dpZCAiLS1hdWRpdCBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudHMiCisjfiBtc2dzdHIgIi0tYXVkaXQgYXkgaGluZGkgdHVtYXRhbmdnYXAgbmcgbWdhIGFyZ3VtZW50byIKKworI34gbXNnaWQgIi0teWV0LXRvLXVucGFjayBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudHMiCisjfiBtc2dzdHIgIi0teWV0LXRvLXVucGFjayBheSBoaW5kaSB0dW1hdGFuZ2dhcCBuZyBtZ2EgYXJndW1lbnRvIgorCisjfiBtc2dpZCAiLS1hc3NlcnQtKiBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudHMiCisjfiBtc2dzdHIgIi0tYXNzZXJ0LSogYXkgaGluZGkgdHVtYXRhbmdnYXAgbmcgbWdhIGFyZ3VtZW50byIKKworI34gbXNnaWQgIi0tcHJlZGVwLXBhY2thZ2UgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tcHJlZGVwLXBhY2thZ2UgYXkgaGluZGkgdHVtYXRhbmdnYXAgbmcgYXJndW1lbnRvIgorCisjfiBtc2dpZCAiLS1wcmludC1hcmNoaXRlY3R1cmUgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tcHJpbnQtYXJjaGl0ZWN0dXJlIGF5IGhpbmRpIHR1bWF0YW5nZ2FwIG5nIGFyZ3VtZW50byIKKworI34gbXNnaWQgInVuYWJsZSB0byBzdGF0IGluc3RhbGxlZCAlcyBzY3JpcHQgYCUuMjUwcyciCisjfiBtc2dzdHIgImhpbmRpIG1hLXN0YXQgYW5nIG5ha2FsdWtsb2sgbmEgJXMgc2tyaXB0byBgJS4yNTBzJyIKKworI34gbXNnaWQgInVuYWJsZSB0byBzdGF0IG5ldyAlcyBzY3JpcHQgYCUuMjUwcyciCisjfiBtc2dzdHIgImhpbmRpIG1hLXN0YXQgYW5nIGJhZ29uZyAlcyBza3JpcHRvIGAlLjI1MHMnIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGV4ZWN1dGUgbmV3ICVzIgorI34gbXNnc3RyICJoaW5kaSBtYS1leGVjdXRlIGFuZyBiYWdvbmcgJXMiCisKKyN+IG1zZ2lkICJkcGtnOiB3YXJuaW5nIC0gdW5hYmxlIHRvIHN0YXQgJXMgYCUuMjUwcyc6ICVzXG4iCisjfiBtc2dzdHIgImRwa2c6IGJhYmFsYSAtIGhpbmRpIG1hLXN0YXQgYW5nICVzIGAlLjI1MHMnOiAlc1xuIgorCisjfiBtc2dpZCAiLS1zZXQtc2VsZWN0aW9ucyBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudCIKKyN+IG1zZ3N0ciAiLS1zZXQtc2VsZWN0aW9ucyBheSBoaW5kaSB0dW1hdGFuZ2dhcCBuZyBhcmd1bWVudG8iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiLS1jbGVhci1zZWxlY3Rpb25zIGRvZXMgbm90IHRha2UgYW55IGFyZ3VtZW50IgorI34gbXNnc3RyICItLXNldC1zZWxlY3Rpb25zIGF5IGhpbmRpIHR1bWF0YW5nZ2FwIG5nIGFyZ3VtZW50byIKKworI34gbXNnaWQgIi0tYnVpbGQgbmVlZHMgYSBkaXJlY3RvcnkgYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tYnVpbGQgYXkgbmFuZ2FuZ2FpbGFuZ2FuIG5nIGFyZ3VtZW50b25nIGRpcmVjdG9yeSIKKworI34gbXNnaWQgIiIKKyN+ICJkcGtnLWRlYjogd2FybmluZywgbm90IGNoZWNraW5nIGNvbnRlbnRzIG9mIGNvbnRyb2wgYXJlYS5cbiIKKyN+ICJkcGtnLWRlYjogYnVpbGRpbmcgYW4gdW5rbm93biBwYWNrYWdlIGluIGAlcycuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJkcGtnLWRlYjogYmFiYWxhLCBoaW5kaSBzaW51c3VyaSBhbmcgbmlsYWxhbWFuIG5nIGNvbnRyb2wgYXJlYS5cbiIKKyN+ICJkcGtnLWRlYjogYmludWJ1byBhbmcgaGluZGkga2lsYWxhbmcgcGFrZXRlIHNhIGAlcycuXG4iCisKKyN+IG1zZ2lkICJJbnRlcm5hbCBlcnJvciwgY29tcHJlc3NfdHlwZSBgJWknIHVua25vd24hIgorI34gbXNnc3RyICJJbnRlcm5hbCBuYSBlcnJvciwgY29tcHJlc3NfdHlwZSBgJWknIGhpbmRpIGtpbGFsYSEiCisKKyN+IG1zZ2lkICItLWpvaW4gcmVxdWlyZXMgb25lIG9yIG1vcmUgcGFydCBmaWxlIGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiIgorI34gIi0tam9pbiBheSBuYW5nYW5nYWlsYW5nYW4gbmcgaXNhIG8gaGlnaXQgc2EgaXNhIG5hIGFyZ3VtZW50b25nIGJhaGFnaW5nICIKKyN+ICJ0YWxha3NhbiIKKworI34gbXNnaWQgIi0tbGlzdHEgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnRzIgorI34gbXNnc3RyICItLWxpc3RxIGF5IGhpbmRpIHR1bWF0YW5nZ2FwIG5nIGFyZ3VtZW50byIKKworIywgZnV6enkKKyN+IG1zZ2lkICJmYWlsZWQgdG8gaW5zdGFsbCAlczsgaXQgd2lsbCBiZSBsZWZ0IGFzICVzOiAlcyIKKyN+IG1zZ3N0ciAiaGluZGkgbWFsdWtsb2sgYW5nIGAlLjI1MHMnIGJpbGFuZyBgJS4yNTBzJyIKKworIywgZnV6enkKKyN+IG1zZ2lkICIlczogdW5hYmxlIHRvIHVubG9jayAlczogJXMiCisjfiBtc2dzdHIgIiVzOiBiaWdvIHNhIHBhZy1leGVjIGd6aXAgJXMiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAidW5hYmxlIHRvIG9wZW4gJXMgZm9yIHdyaXRlOiAlcyIKKyN+IG1zZ3N0ciAiaGluZGkgbWFidWtzYW4gYW5nIHBpbmFnbXVsYW4gbmEgdGFsYWtzYW5nIGAlLjI1MHMnIgorCisjLCBmdXp6eQorI34gbXNnaWQgImVycm9yIHdyaXRpbmcgc3Rkb3V0OiAlcyIKKyN+IG1zZ3N0ciAiZXJyb3Igc2EgcGFnc3VsYXQgbmcgYCVzJyIKKworIywgZnV6enkKKyN+IG1zZ2lkICJlcnJvciBvciBlb2YgcmVhZGluZyAlcyBmb3IgJXMgKCVzKSIKKyN+IG1zZ3N0ciAiYmlnbyBzYSBwYWdiYXNhIG5nICVzIG11bGEgc2EgJS4yNTVzIgorCisjLCBmdXp6eQorI34gbXNnaWQgIm1pc3NpbmcgbmV3bGluZSBhZnRlciAlcyIKKyN+IG1zZ3N0ciAiIgorI34gInNpcmEgYW5nIHRhbGFrc2FuZyBgJS4yNTBzJyAtIG1heSBrdWxhbmcgbmEgbmV3bGluZSBtYXRhcG9zIGFuZyAlLjI1MHMiCisKKyN+IG1zZ2lkICJjb3VsZG4ndCBhbGxvY2F0ZSBtZW1vcnkgZm9yIHN0cmR1cCBpbiBmaW5kcGFja2FnZSglcykiCisjfiBtc2dzdHIgImhpbmRpIG1ha2FwYWctYWxsb2NhdGUgbmcgbWVtb3J5IHBhcmEgc2Egc3RyZHVwIHNhIGZpbmRwYWNrYWdlKCVzKSIKKworI34gbXNnaWQgImZhaWxlZCB0byBhbGxvY2F0ZSBidWZmZXIgaW4gYnVmZmVyX2NvcHkgKCVzKSIKKyN+IG1zZ3N0ciAiYmlnbyBzYSBwYWctYWxsb2NhdGUgbmcgYnVmZmVyIHNhIGJ1ZmZlcl9jb3B5ICglcykiCisKKyN+IG1zZ2lkICJFcnJvciBhbGxvY2F0aW5nIG1lbW9yeSBmb3IgY2ZnZmlsZW5hbWUiCisjfiBtc2dzdHIgIkVycm9yIHNhIHBhZy1hbGxvY2F0ZSBuZyBtZW1vcnkgcGFyYSBzYSBjZmdmaWxlbmFtZSIKKworI34gbXNnaWQgImZhaWxlZCB0byBtYWxsb2MgZm9yIGluZm8gZmlsZSBgJS4yNTVzJyIKKyN+IG1zZ3N0ciAiYmlnbyBhbmcgcGFnLW1hbGxvYyBwYXJhIHNhIHRhbGFrc2FuZyBpbmZvIGAlLjI1NXMnIgorCisjfiBtc2dpZCAiZGl2ZXJzaW9ucyBmaWxlIGhhcyB0b28tbG9uZyBsaW5lIG9yIEVPRiBbaV0iCisjfiBtc2dzdHIgImFuZyB0YWxha3NhbmcgZGliZXJzeW9uIGF5IG1heSBsYWJpcyBuYSBoYWJhbmcgbGlueWEgbyBFT0YgW2ldIgorCisjfiBtc2dpZCAicmVhZCBlcnJvciBpbiBkaXZlcnNpb25zIFtpaV0iCisjfiBtc2dzdHIgImVycm9yIHNhIHBhZ2Jhc2Egc2EgZGliZXJzeW9uIFtpaV0iCisKKyN+IG1zZ2lkICJ1bmV4cGVjdGVkIEVPRiBpbiBkaXZlcnNpb25zIFtpaV0iCisjfiBtc2dzdHIgImRpIGluYWFzYWhhbmcgRU9GIHNhIGRpYmVyc3lvbiBbaWldIgorCisjfiBtc2dpZCAiZmdldHMgZ2F2ZSBhbiBlbXB0eSBzdHJpbmcgZnJvbSBkaXZlcnNpb25zIFtpaV0iCisjfiBtc2dzdHIgIm5hZ2JpZ2F5IG5nIGJsYW5rb25nIHN0cmluZyBhbmcgZmdldHMgbXVsYSBzYSBkaWJlcnN5b24gW2lpXSIKKworI34gbXNnaWQgImRpdmVyc2lvbnMgZmlsZSBoYXMgdG9vLWxvbmcgbGluZSBvciBFT0YgW2lpXSIKKyN+IG1zZ3N0ciAiYW5nIHRhbGFrc2FuZyBkaWJlcnN5b24gYXkgbWF5IGxhYmlzIGFuZyBoYWJhIG5hIGxpbnlhIG8gRU9GIFtpaV0iCisKKyN+IG1zZ2lkICJyZWFkIGVycm9yIGluIGRpdmVyc2lvbnMgW2lpaV0iCisjfiBtc2dzdHIgImVycm9yIHNhIHBhZ2Jhc2Egc2EgZGliZXJzeW9uIFtpaWldIgorCisjfiBtc2dpZCAidW5leHBlY3RlZCBFT0YgaW4gZGl2ZXJzaW9ucyBbaWlpXSIKKyN+IG1zZ3N0ciAiZGkgaW5hYXNhaGFuZyBFT0Ygc2EgZGliZXJzeW9uIFtpaWldIgorCisjfiBtc2dpZCAiZmdldHMgZ2F2ZSBhbiBlbXB0eSBzdHJpbmcgZnJvbSBkaXZlcnNpb25zIFtpaWldIgorI34gbXNnc3RyICJuYWdiaWdheSBuZyBibGFua29uZyBzdHJpbmcgYW5nIGZnZXRzIG11bGEgc2EgZGliZXJzeW9uIFtpaWldIgorCisjfiBtc2dpZCAiY291bGRuJ3QgbWFsbG9jIGluIGV4ZWNiYWNrZW5kIgorI34gbXNnc3RyICJoaW5kaSBtYWthLW1hbGxvYyBzYSBleGVjYmFja2VuZCIKKworI34gbXNnaWQgImNvdWxkbid0IHN0cmR1cCBpbiBleGVjYmFja2VuZCIKKyN+IG1zZ3N0ciAiaGluZGkgbWFrYS1zdHJkdXAgc2EgZXhlY2JhY2tlbmQiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiZmFpbGVkIGFsbG9jYXRpbmcgbWVtb3J5IGZvciB2YXJpYWJsZSBgY3RybGFyZWEnIgorI34gbXNnc3RyICJFcnJvciBzYSBwYWctYWxsb2NhdGUgbmcgbWVtb3J5IHBhcmEgc2EgY2ZnZmlsZW5hbWUiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAidW5hYmxlIHRvIGVuc3VyZSAlcyBub25leGlzdGVudDogJXMiCisjfiBtc2dzdHIgImhpbmRpIG1hLWV4ZWN1dGUgYW5nIGJhZ29uZyAlcyIKKworIywgZnV6enkKKyN+IG1zZ2lkICIiCisjfiAiZHBrZzogcmVnYXJkaW5nICVzIGNvbnRhaW5pbmcgJXM6XG4iCisjfiAiIHBhY2thZ2UgdXNlcyBCcmVha3M7IG5vdCBzdXBwb3J0ZWQgaW4gdGhpcyBkcGtnXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJkcGtnOiB0dW5na29sIHNhICVzIG5hIG5hZ2xhbGFtYW4gbmcgJXMsIHByb2JsZW1hbmcgcHJlLWRlcGVuZGVuc2l5YTpcbiIKKyN+ICIlcyIKKworIywgZnV6enkKKyN+IG1zZ2lkICJ1bnN1cHBvcnRlZCBkZXBlbmRlbmN5IHByb2JsZW0gLSBub3QgaW5zdGFsbGluZyAlLjI1MHMiCisjfiBtc2dzdHIgInByb2JsZW1hbmcgcHJlLWRlcGVuZGVuc2l5YSAtIGhpbmRpIGlsdWx1a2xvayBhbmcgJS4yNTBzIgorCisjLCBmdXp6eQorI34gbXNnaWQgImRwa2c6IHdhcm5pbmcgLSBpZ25vcmluZyBCcmVha3MgIVxuIgorI34gbXNnc3RyICJkcGtnOiBiYWJhbGEgLSBoaW5kaSBwaW5hbnNpbiBhbmcgcHJvYmxlbWFuZyBwcmUtZGVwZW5kZW5zaXlhICFcbiIKKworI34gbXNnaWQgInRvIgorI34gbXNnc3RyICJ0dW5nbyIKKworI34gbXNnaWQgImZyb20iCisjfiBtc2dzdHIgIm11bGEiCisKKyN+IG1zZ2lkICJlcnJvciByZWFkaW5nICVzIgorI34gbXNnc3RyICJlcnJvciBzYSBwYWdiYXNhIG5nICVzIgorCisjfiBtc2dpZCAiJXM6IGZhaWxlZCB0byBleGVjIGd6aXAgLWRjIgorI34gbXNnc3RyICIlczogYmlnbyBzYSBwYWctZXhlYyBuZyBnemlwIC1kYyIKKworI34gbXNnaWQgIiVzOiBmYWlsZWQgdG8gZXhlYyBiemlwMiAtZGMiCisjfiBtc2dzdHIgIiVzOiBiaWdvIHNhIHBhZy1leGVjIGJ6aXAyIC1kYyIKKworI34gbXNnaWQgIiVzOiBmYWlsZWQgdG8gZXhlYyBiemlwMiAlcyIKKyN+IG1zZ3N0ciAiJXM6IGJpZ28gc2EgcGFnLWV4ZWMgYnppcDIgJXMiCisKKyN+IG1zZ2lkICJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6IHZlcnNpb24gY29udGFpbnMgYCAnIgorI34gbXNnc3RyICJzYWtsYXcgbmEgYCVzJywgdHVtdXR1a295IHNhIGAlLjI1NXMnOiBuYWdsYWxhbWFuIG5nIGAgJyIKKworIywgZnV6enkKKyN+IG1zZ2lkICIlczogY2xvc2UgJXMgYWZ0ZXIgcmVhZDogJXMiCisjfiBtc2dzdHIgImJpZ28gc2EgcGFnc2FyYSBtYXRhcG9zIG5nIHBhZ2Jhc2E6IGAlLjI1NXMnIgorCisjLCBmdXp6eQorI34gbXNnaWQgIi0tYWRtaW5kaXIgbmVlZHMgYSBkaXJlY3RvcnkgYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tYnVpbGQgYXkgbmFuZ2FuZ2FpbGFuZ2FuIG5nIGFyZ3VtZW50b25nIGRpcmVjdG9yeSIKKworIywgZnV6enkKKyN+IG1zZ2lkICItLXJlbW92ZSBuZWVkcyBhIHNpbmdsZSBhcmd1bWVudCIKKyN+IG1zZ3N0ciAiLS0lcyBheSBuYW5nYW5nYWlsYW5nYW4gbmcgYXJndW1lbnRvbmcgcGFuZ2FsYW4gbmcgdGFsYWtzYW5nIC5kZWIiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiLS10cnVlbmFtZSBuZWVkcyBhIHNpbmdsZSBhcmd1bWVudCIKKyN+IG1zZ3N0ciAiLS1idWlsZCBheSBuYW5nYW5nYWlsYW5nYW4gbmcgYXJndW1lbnRvbmcgZGlyZWN0b3J5IgorCisjLCBmdXp6eQorI34gbXNnaWQgIi0tcmVtb3ZlIG5lZWRzIG9uZSBhcmd1bWVudHMiCisjfiBtc2dzdHIgIi0tJXMgYXkgaGluZGkgdHVtYXRhbmdnYXAgbmcgbWdhIGFyZ3VtZW50byIKKworIywgZnV6enkKKyN+IG1zZ2lkICJkcGtnLXN0YXRvdmVycmlkZTogJXMiCisjfiBtc2dzdHIgInRhbGFrc2FuZyBzdGF0b3ZlcnJpZGUgYCUuMjUwcyciCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiLS1hZG1pbmRpciBuZWVkcyBhIDxkaXJlY3Rvcnk+IGFyZ3VtZW50IgorI34gbXNnc3RyICItLWJ1aWxkIGF5IG5hbmdhbmdhaWxhbmdhbiBuZyBhcmd1bWVudG9uZyBkaXJlY3RvcnkiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiZmFpbGVkIHRvIG9wZW4gJXM6ICVzIgorI34gbXNnc3RyICJiaWdvIGFuZyBwYWdwYXRha2JvIG5nICVzICglLjI1MHMpIgorCisjLCBmdXp6eQorI34gbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsICVzIGFzICVzIgorI34gbXNnc3RyICJoaW5kaSBtYWx1a2xvayBhbmcgYCUuMjUwcycgYmlsYW5nIGAlLjI1MHMnIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gPGNvbW1hbmQ+XG4iCisjfiAiXG4iCisjfiAiQ29tbWFuZHM6XG4iCisjfiAiICAtaXwtLWluc3RhbGwgICAgICAgPC5kZWIgZmlsZSBuYW1lPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyPiAuLi5cbiIKKyN+ICIgIC0tdW5wYWNrICAgICAgICAgICA8LmRlYiBmaWxlIG5hbWU+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXI+IC4uLlxuIgorI34gIiAgLUF8LS1yZWNvcmQtYXZhaWwgIDwuZGViIGZpbGUgbmFtZT4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRpcj4gLi4uXG4iCisjfiAiICAtLWNvbmZpZ3VyZSAgICAgICAgPHBhY2thZ2UtbmFtZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisjfiAiICAtcnwtLXJlbW92ZSAgICAgICAgPHBhY2thZ2UtbmFtZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisjfiAiICAtUHwtLXB1cmdlICAgICAgICAgPHBhY2thZ2UtbmFtZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisjfiAiICAtLWdldC1zZWxlY3Rpb25zIFs8cGF0dGVybj4gLi4uXSAgICAgR2V0IGxpc3Qgb2Ygc2VsZWN0aW9ucyB0byBzdGRvdXQuXG4iCisjfiAiICAtLXNldC1zZWxlY3Rpb25zICAgICAgICAgICAgICAgICAgICAgU2V0IHBhY2thZ2Ugc2VsZWN0aW9ucyBmcm9tICIKKyN+ICJzdGRpbi5cbiIKKyN+ICIgIC0tY2xlYXItc2VsZWN0aW9ucyAgICAgICAgICAgICAgICAgICBEZXNlbGVjdCBldmVyeSBub24tZXNzZW50aWFsICIKKyN+ICJwYWNrYWdlLlxuIgorI34gIiAgLS11cGRhdGUtYXZhaWwgPFBhY2thZ2VzLWZpbGU+ICAgICAgIFJlcGxhY2UgYXZhaWxhYmxlIHBhY2thZ2VzIGluZm8uXG4iCisjfiAiICAtLW1lcmdlLWF2YWlsIDxQYWNrYWdlcy1maWxlPiAgICAgICAgTWVyZ2Ugd2l0aCBpbmZvIGZyb20gZmlsZS5cbiIKKyN+ICIgIC0tY2xlYXItYXZhaWwgICAgICAgICAgICAgICAgICAgICAgICBFcmFzZSBleGlzdGluZyBhdmFpbGFibGUgaW5mby5cbiIKKyN+ICIgIC0tZm9yZ2V0LW9sZC11bmF2YWlsICAgICAgICAgICAgICAgICBGb3JnZXQgdW5pbnN0YWxsZWQgdW5hdmFpbGFibGUgIgorI34gInBrZ3MuXG4iCisjfiAiICAtc3wtLXN0YXR1cyA8cGFja2FnZS1uYW1lPiAuLi4gICAgICAgRGlzcGxheSBwYWNrYWdlIHN0YXR1cyBkZXRhaWxzLlxuIgorI34gIiAgLXB8LS1wcmludC1hdmFpbCA8cGFja2FnZS1uYW1lPiAuLi4gIERpc3BsYXkgYXZhaWxhYmxlIHZlcnNpb24gIgorI34gImRldGFpbHMuXG4iCisjfiAiICAtTHwtLWxpc3RmaWxlcyA8cGFja2FnZS1uYW1lPiAuLi4gICAgTGlzdCBmaWxlcyBgb3duZWQnIGJ5IHBhY2thZ2UocykuXG4iCisjfiAiICAtbHwtLWxpc3QgWzxwYXR0ZXJuPiAuLi5dICAgICAgICAgICAgTGlzdCBwYWNrYWdlcyBjb25jaXNlbHkuXG4iCisjfiAiICAtU3wtLXNlYXJjaCA8cGF0dGVybj4gLi4uICAgICAgICAgICAgRmluZCBwYWNrYWdlKHMpIG93bmluZyBmaWxlKHMpLlxuIgorI34gIiAgLUN8LS1hdWRpdCAgICAgICAgICAgICAgICAgICAgICAgICAgIENoZWNrIGZvciBicm9rZW4gcGFja2FnZShzKS5cbiIKKyN+ICIgIC0tcHJpbnQtYXJjaGl0ZWN0dXJlICAgICAgICAgICAgICAgICBQcmludCBkcGtnIGFyY2hpdGVjdHVyZS5cbiIKKyN+ICIgIC0tY29tcGFyZS12ZXJzaW9ucyA8YT4gPHJlbD4gPGI+ICAgICBDb21wYXJlIHZlcnNpb24gbnVtYmVycyAtIHNlZSAiCisjfiAiYmVsb3cuXG4iCisjfiAiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyN+ICIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTaG93IHRoZSB2ZXJzaW9uLlxuIgorI34gIiAgLS1mb3JjZS1oZWxwIHwgLURofC0tZGVidWc9aGVscCAgICAgIEhlbHAgb24gZm9yY2luZyByZXNwLiBkZWJ1Z2dpbmcuXG4iCisjfiAiICAtLWxpY2Vuc2UgfCAtLWxpY2VuY2UgICAgICAgICAgICAgICAgUHJpbnQgY29weXJpZ2h0IGxpY2Vuc2luZyB0ZXJtcy5cbiIKKyN+ICJcbiIKKyN+ICJVc2UgZHBrZyAtYnwtLWJ1aWxkfC1jfC0tY29udGVudHN8LWV8LS1jb250cm9sfC1JfC0taW5mb3wtZnwtLWZpZWxkfFxuIgorI34gIiAteHwtLWV4dHJhY3R8LVh8LS12ZXh0cmFjdHwtLWZzeXMtdGFyZmlsZSAgb24gYXJjaGl2ZXMgKHR5cGUgJXMgLS0iCisjfiAiaGVscCkuXG4iCisjfiAiXG4iCisjfiAiRm9yIGludGVybmFsIHVzZTogZHBrZyAtLWFzc2VydC1zdXBwb3J0LXByZWRlcGVuZHMgfCAtLXByZWRlcC1wYWNrYWdlIHxcbiIKKyN+ICIgIC0tYXNzZXJ0LXdvcmtpbmctZXBvY2ggfCAtLWFzc2VydC1sb25nLWZpbGVuYW1lcyB8IC0tYXNzZXJ0LW11bHRpLSIKKyN+ICJjb25yZXAuXG4iCisjfiAiXG4iCisjfiAiT3B0aW9uczpcbiIKKyN+ICIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT4gICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorI34gIiAgLS1yb290PTxkaXJlY3Rvcnk+ICAgICAgICAgSW5zdGFsbCBvbiBhbHRlcm5hdGl2ZSBzeXN0ZW0gcm9vdGVkICIKKyN+ICJlbHNld2hlcmUuXG4iCisjfiAiICAtLWluc3RkaXI9PGRpcmVjdG9yeT4gICAgICBDaGFuZ2UgaW5zdCduIHJvb3Qgd2l0aG91dCBjaGFuZ2luZyBhZG1pbiAiCisjfiAiZGlyLlxuIgorI34gIiAgLU98LS1zZWxlY3RlZC1vbmx5ICAgICAgICAgU2tpcCBwYWNrYWdlcyBub3Qgc2VsZWN0ZWQgZm9yIGluc3RhbGwvIgorI34gInVwZ3JhZGUuXG4iCisjfiAiICAtRXwtLXNraXAtc2FtZS12ZXJzaW9uICAgICBTa2lwIHBhY2thZ2VzIHdob3NlIHNhbWUgdmVyc2lvbiBpcyAiCisjfiAiaW5zdGFsbGVkLlxuIgorI34gIiAgLUd8LS1yZWZ1c2UtZG93bmdyYWRlICAgICAgU2tpcCBwYWNrYWdlcyB3aXRoIGVhcmxpZXIgdmVyc2lvbiB0aGFuICIKKyN+ICJpbnN0YWxsZWQuXG4iCisjfiAiICAtQnwtLWF1dG8tZGVjb25maWd1cmUgICAgICBJbnN0YWxsIGV2ZW4gaWYgaXQgd291bGQgYnJlYWsgc29tZSBvdGhlciAiCisjfiAicGFja2FnZS5cbiIKKyN+ICIgIC0tbm8tZGVic2lnICAgICAgICAgICAgICAgIERvIG5vdCB0cnkgdG8gdmVyaWZ5IHBhY2thZ2Ugc2lnbmF0dXJlcy5cbiIKKyN+ICIgIC0tbm8tYWN0fC0tZHJ5LXJ1bnwtLXNpbXVsYXRlXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBKdXN0IHNheSB3aGF0IHdlIHdvdWxkIGRvIC0gZG9uJ3QgZG8gaXQuXG4iCisjfiAiICAtRHwtLWRlYnVnPTxvY3RhbD4gICAgICAgICBFbmFibGUgZGVidWdnaW5nIC0gc2VlIC1EaGVscCBvciAtLSIKKyN+ICJkZWJ1Zz1oZWxwLlxuIgorI34gIiAgLS1zdGF0dXMtZmQgPG4+ICAgICAgICAgICAgU2VuZCBzdGF0dXMgY2hhbmdlIHVwZGF0ZXMgdG8gZmlsZSAiCisjfiAiZGVzY3JpcHRvciA8bj4uXG4iCisjfiAiICAtLWxvZz08ZmlsZW5hbWU+ICAgICAgICAgICBMb2cgc3RhdHVzIGNoYW5nZXMgYW5kIGFjdGlvbnMgdG8gIgorI34gIjxmaWxlbmFtZT4uXG4iCisjfiAiICAtLWlnbm9yZS1kZXBlbmRzPTxwYWNrYWdlPiwuLi4gSWdub3JlIGRlcGVuZGVuY2llcyBpbnZvbHZpbmcgIgorI34gIjxwYWNrYWdlPi5cbiIKKyN+ICIgIC0tZm9yY2UtLi4uICAgICAgICAgICAgICAgICAgICBPdmVycmlkZSBwcm9ibGVtcyAtIHNlZSAtLWZvcmNlLWhlbHAuXG4iCisjfiAiICAtLW5vLWZvcmNlLS4uLnwtLXJlZnVzZS0uLi4gICAgU3RvcCB3aGVuIHByb2JsZW1zIGVuY291bnRlcmVkLlxuIgorI34gIiAgLS1hYm9ydC1hZnRlciA8bj4gICAgICAgICAgICAgIEFib3J0IGFmdGVyIGVuY291bnRlcmluZyA8bj4gZXJyb3JzLlxuIgorI34gIlxuIgorI34gIkNvbXBhcmlzb24gb3BlcmF0b3JzIGZvciAtLWNvbXBhcmUtdmVyc2lvbnMgYXJlOlxuIgorI34gIiAgbHQgbGUgZXEgbmUgZ2UgZ3QgICAgICAgKHRyZWF0IGVtcHR5IHZlcnNpb24gYXMgZWFybGllciB0aGFuIGFueSAiCisjfiAidmVyc2lvbik7XG4iCisjfiAiICBsdC1ubCBsZS1ubCBnZS1ubCBndC1ubCAodHJlYXQgZW1wdHkgdmVyc2lvbiBhcyBsYXRlciB0aGFuIGFueSAiCisjfiAidmVyc2lvbik7XG4iCisjfiAiICA8IDw8IDw9ID0gPj0gPj4gPiAgICAgICAob25seSBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIGNvbnRyb2wgZmlsZSAiCisjfiAic3ludGF4KS5cbiIKKyN+ICJcbiIKKyN+ICJVc2UgYGRzZWxlY3QnIG9yIGBhcHRpdHVkZScgZm9yIHVzZXItZnJpZW5kbHkgcGFja2FnZSBtYW5hZ2VtZW50LlxuIgorI34gbXNnc3RyICIiCisjfiAiUGFnLWdhbWl0OiBcbiIKKyN+ICIgZHBrZyAtaXwtLWluc3RhbGwgICAgICA8LmRlYiBwYW5nYWxhbiBuZyB0YWxha3Nhbj4gLi4uIHwtUnwtLXJlY3Vyc2l2ZSAiCisjfiAiPGRpcj4gLi4uXG4iCisjfiAiIGRwa2cgLS11bnBhY2sgICAgICAgICAgPC5kZWIgcGFuZ2FsYW4gbmcgdGFsYWtzYW4+IC4uLiB8LVJ8LS1yZWN1cnNpdmUgIgorI34gIjxkaXI+IC4uLlxuIgorI34gIiBkcGtnIC1BfC0tcmVjb3JkLWF2YWlsIDwuZGViIHBhbmdhbGFuIG5nIHRhbGFrc2FuPiAuLi4gfC1SfC0tcmVjdXJzaXZlICIKKyN+ICI8ZGlyPiAuLi5cbiIKKyN+ICIgZHBrZyAtLWNvbmZpZ3VyZSA8cGFuZ2FsYW4gbmcgcGFrZXRlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyN+ICIgZHBrZyAtcnwtLXJlbW92ZSB8IC1QfC0tcHVyZ2UgPHBhbmdhbGFuIG5nIHBha2V0ZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisjfiAiIGRwa2cgLS1nZXQtc2VsZWN0aW9ucyBbPHBhdHRlcm4+IC4uLl0gICBpcGFraXRhIGFuZyBsaXN0YWhhbmcgcGluaWxpIHNhICIKKyN+ICJzdGRvdXRcbiIKKyN+ICIgZHBrZyAtLXNldC1zZWxlY3Rpb25zICAgICAgICAgICAgICAgaXRha2RhIGFuZyBwaWxpbmcgbWdhIHBha2V0ZSBtdWxhIHNhICIKKyN+ICJzdGRpblxuIgorI34gIiBkcGtnIC0tdXBkYXRlLWF2YWlsIDx0YWxha3NhbmcgUGFja2FnZXM+ICBwYWxpdGFuIGFuZyBpbmZvIG5nIG1hZ2FnYW1pdCAiCisjfiAibmEgcGt0XG4iCisjfiAiIGRwa2cgLS1tZXJnZS1hdmFpbCA8dGFsYWtzYW5nIFBhY2thZ2VzID4gICAgICAgaXNhbWEgYW5nIGluZm8gbXVsYSBzYSAiCisjfiAidGFsYWtzYW5cbiIKKyN+ICIgZHBrZyAtLWNsZWFyLWF2YWlsICAgICAgICAgIGJ1cmFoaW4gYW5nIGthc2FsdWt1eWFuZyBpbmZvIHR1bmdrb2wgc2EgIgorI34gIm1hZ2FnYW1pdFxuIgorI34gIiBkcGtnIC0tZm9yZ2V0LW9sZC11bmF2YWlsICAgICAga2FsaW11dGFuIGFuZyB0aW5hbmdnYWwgYXQgaGluZGkgbmEgIgorI34gIm1hZ2FtaXQgbmEgcGt0XG4iCisjfiAiIGRwa2cgLXN8LS1zdGF0dXMgPHBhbmdhbGFuIG5nIHBrdD4gLi4uICAgaXBha2l0YSBhbmcgZGV0YWx5ZSBuZyAiCisjfiAia2FsYWdheWFuIG5nIHBrdFxuIgorI34gIiBkcGtnIC1wfC0tcHJpbnQtYXZhaWwgPHBhbmdhbGFuIG5nIHBha2V0ZT4gLi4uICBpcGFraXRhIGFuZyBkZXRhbHllIG5nICIKKyN+ICJtYWdhZ2FtaXRcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hIGJlcnN5b25cbiIKKyN+ICIgZHBrZyAtTHwtLWxpc3RmaWxlcyA8cGFuZ2FsYW4gbmcgcGFrZXRlPiAuLi4gICAgaWxpc3RhIGFuZyBtZ2EgIgorI34gInRhbGFrc2FuZ1xuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYHBhZy1hYXJpJyBuZyAobWdhKSAiCisjfiAicGFrZXRlXG4iCisjfiAiIGRwa2cgLWx8LS1saXN0IFs8cGF0dGVybj4gLi4uXSAgICAgICAgICAgICAgICBoYW5hcGluIChtZ2EpIHBha2V0ZSBuYSAiCisjfiAibWF5LWFyaVxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmcgKG1nYSkgdGFsYWtzYW5cbiIKKyN+ICIgZHBrZyAtQ3wtLWF1ZGl0ICAgICAgICAgICAgICAgICAgICAgICAgIHNpeWFzYXRpbiBrdW5nIG1heSBzaXJhbmcgKG1nYSkgIgorI34gInBha2V0ZVxuIgorI34gIiBkcGtnIC0tcHJpbnQtYXJjaGl0ZWN0dXJlICAgICAgICAgICAgICAgICAgICBpcGFraXRhIGFuZyB0YXJnZXQgbmEgIgorI34gImFya2l0ZWt0dXJhXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChndW1hZ2FtaXQgbmcgR0NDKVxuIgorI34gIiBkcGtnIC0tcHJpbnQtZ251LWJ1aWxkLWFyY2hpdGVjdHVyZSAgICBpcGFraXRhIGFuZyBiZXJzeW9uZyBHTlUgbmcgIgorI34gInRhcmdldCBhcmNoXG4iCisjfiAiIGRwa2cgLS1wcmludC1pbnN0YWxsYXRpb24tYXJjaGl0ZWN0dXJlICAgICAgICAgaXBha2l0YSBhbmcgYXJraXRla3R1cmEgIgorI34gIm5nIGhvc3RcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAocGFyYSBzYSBwYWdsdWtsb2spXG4iCisjfiAiIGRwa2cgLS1jb21wYXJlLXZlcnNpb25zIDxhPiA8cmVsPiA8Yj4gICAgICAgICAgaWhhbWJpbmcgYW5nIGJpbGFuZyBuZyAiCisjfiAiYmVyc3lvbiBcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtIHRpZ25hbiBzYSBpYmFiYSBhbmcgIgorI34gIjxyZWw+XG4iCisjfiAiIGRwa2cgLS1oZWxwIHwgLS12ZXJzaW9uICAgICAgIGlwYWtpdGEgaXRvbmcgdHVsb25nIG5hIGl0byAvIGJpbGFuZyBuZyAiCisjfiAiYmVyc3lvblxuIgorI34gIiBkcGtnIC0tZm9yY2UtaGVscCB8IC1EaHwtLWRlYnVnPWhlbHAgIHR1bG9uZyB0dW5na29sIHNhIHBhZ3BpbGl0IGF0IHNhXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFnLWRlYnVnXG4iCisjfiAiIGRwa2cgLS1saWNlbmNlICAgICAgICAgICAgICAgICAgICAgICAgaXBha2l0YSBhbmcga2FyYXBhdGFuZyBzaXBpIGF0ICIKKyN+ICJsaXNlbnN5YVxuIgorI34gIlxuIgorI34gIkdhbWl0aW4gYW5nIGRwa2cgLWJ8LS1idWlsZHwtY3wtLWNvbnRlbnRzfC1lfC0tY29udHJvbHwtSXwtLWluZm98LWZ8LS0iCisjfiAiZmllbGR8XG4iCisjfiAiIC14fC0tZXh0cmFjdHwtWHwtLXZleHRyYWN0fC0tZnN5cy10YXJmaWxlIHNhIG1nYSBhcmtpYm8gXG4iCisjfiAiIChpcGFzb2sgJXMgLS1oZWxwLilcbiIKKyN+ICJcbiIKKyN+ICJQYW5sb29iIG5hIGdhbWl0IGxhbWFuZzogZHBrZyAtLWFzc2VydC1zdXBwb3J0LXByZWRlcGVuZHMgfCAtLXByZWRlcC0iCisjfiAicGFja2FnZSB8XG4iCisjfiAiICAtLWFzc2VydC13b3JraW5nLWVwb2NoIHwgLS1hc3NlcnQtbG9uZy1maWxlbmFtZXMgfCAtLWFzc2VydC1tdWx0aS0iCisjfiAiY29ucmVwXG4iCisjfiAiXG4iCisjfiAiTWdhIG9wc3lvbjpcbiIKKyN+ICIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT4gICAgR2FtaXRpbiBhbmcgPGRpcmVjdG9yeT4gc2EgaGFsaXAgbmcgJXNcbiIKKyN+ICIgIC0tcm9vdD08ZGlyZWN0b3J5PiAgICAgICAgSWx1a2xvayBzYSBrYWhhbGlsaW5nIHNpc3RlbWEgbmEgaWJhIGFuZyAiCisjfiAidWdhdFxuIgorI34gIiAgLS1pbnN0ZGlyPTxkaXJlY3Rvcnk+ICAgICBQYWxpdGFuIGFuZyB1Z2F0IG5nIHBhZ2x1a2xvayBuYSBoaW5kaSAiCisjfiAiYmluYWJhZ28gYW5nXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFkbWluIGRpcmVjdG9yeVxuIgorI34gIiAgLU98LS1zZWxlY3RlZC1vbmx5ICAgICAgICBMYWt0YXdhbiBhbmcgbWdhIHBha2V0ZW5nIGhpbmRpIHBpbmlsaSBwYXJhICIKKyN+ICJzYVxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWdsdWtsb2svcGFnLWFwZ3JleWRcbiIKKyN+ICIgIC1FfC0tc2tpcC1zYW1lLXZlcnNpb24gICAgTGFrdGF3YW4gYW5nIG1nYSBwYWtldGVuZyBrYXBhcmVob25nIGJlcnN5b24gIgorI34gInNhXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5ha2FsdWtsb2tcbiIKKyN+ICIgIC1HfC0tcmVmdXNlLWRvd25ncmFkZSAgICAgTGFrdGF3YW4gYW5nIG1nYSBwYWtldGVuZyBtYXMtbHVtYW5nIGJlcnN5b24gIgorI34gImtheXNhXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNhIGJlcnN5b24gbmEgbmFrYWx1a2xva1xuIgorI34gIiAgLUJ8LS1hdXRvLWRlY29uZmlndXJlICAgICBJbHVrbG9rIGthaGl0IG1heSBtYXNpc2lyYW5nIGliYW5nIHBha2V0ZVxuIgorI34gIiAgLS1uby1kZWJzaWcgICAgICAgICAgICAgICBIdXdhZyBzdWJ1a2FuZyB0aXlha2luIGFuZyBsYWdkYSBzYSBtZ2EgIgorI34gInBha2V0ZVxuIgorI34gIiAgLS1uby1hY3R8LS1kcnktcnVufC0tc2ltdWxhdGVcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgSXBha2l0YSBsYW1hbmcgYW5nIGdhZ2F3aW4gLSBodXdhZyBnYWdhd2luICIKKyN+ICJ0YWxhZ2FcbiIKKyN+ICIgIC1EfC0tZGVidWc9PG9jdGFsPiAgICAgICAgSXRha2RhIGFuZyBkZWJ1Z2dpbmcgLSB0aWduYW4gLURoZWxwIG8gLS0iCisjfiAiZGVidWc9aGVscFxuIgorI34gIiAgLS1zdGF0dXMtZmQgPG4+ICAgICBNYWdwYWRhbGEgbmcgcGFnYmFiYWdvIG5nIGthbGFnYXlhbiBzYSBmaWxlICIKKyN+ICJkZXNjcmlwdG9yIDxuPlxuIgorI34gIiAgLS1pZ25vcmUtZGVwZW5kcz08cGFrZXRlPiwuLi4gSHV3YWcgcGFuc2luaW4gYW5nIGRlcGVuZGVuc2l5YSBuZyAiCisjfiAiPHBha2V0ZT5cbiIKKyN+ICIgIC0tZm9yY2UtLi4uICAgICAgICAgICAgIFBpbGl0aW5nIGxhbXBhc2luIGFuZyBwcm9ibGVtYSAtIHRpZ25hbiAtLWZvcmNlLSIKKyN+ICJoZWxwXG4iCisjfiAiICAtLW5vLWZvcmNlLS4uLnwtLXJlZnVzZS0uLi4gICBIdW1pbnRvIGthcGFnIG1heSBwcm9ibGVtYVxuIgorI34gIiAgLS1hYm9ydC1hZnRlciA8bj4gICAgICAgICAgICAgSHVtaW50byBtYXRhcG9zIG1hZ2thcm9vbiBuZyA8bj4gbmEgIgorI34gImVycm9yXG4iCisjfiAiXG4iCisjfiAiT3BlcmF0b3IgbmcgcGFnaGFtYmluZyBwYXJhIHNhIDxyZWw+IHNhIC0tY29tcGFyZS12ZXJzaW9ucyBheTpcbiIKKyN+ICIgbHQgbGUgZXEgbmUgZ2UgZ3QgICAgICAgICAgKGliaWxhbmcgbmEgbWFzbHVtYW5nIGJlcnN5b24gYW5nIGJsYW5rb25nICIKKyN+ICJiZXJzeW9uKVxuIgorI34gIiBsdC1ubCBsZS1ubCBnZS1ubCBndC1ubCAgICAoaWJpbGFuZyBuYSBtYXNodWxpbmcgYmVyc3lvbiBhbmcgYmxhbmtvbmcgIgorI34gImJlcnN5b24pXG4iCisjfiAiIDwgPDwgPD0gPSA+PSA+PiA+ICAgIChwYXJhIGxhbmcgc2EgcGFraWtpYmFnYXkgc2Egc3ludGF4IG5nIHRhbGFrc2FuZyAiCisjfiAiY29udHJvbClcbiIKKyN+ICJcbiIKKyN+ICJHYW1pdGluIGFuZyBgZHNlbGVjdCcgbyBgYXB0aXR1ZGUnIHBhcmEgc2EgbWFzLW1hZGFsaW5nIHRhZ2FwYW5nYXNpd2EgbmcgIgorI34gInBha2V0ZVxuIgorCisjfiBtc2dpZCAiICBQYWNrYWdlICIKKyN+IG1zZ3N0ciAiICBQYWtldGUgIgorCisjfiBtc2dpZCAiIHdoaWNoIHByb3ZpZGVzICIKKyN+IG1zZ3N0ciAiIG5hIG5hZ2JpYmlnYXkgIgorCisjfiBtc2dpZCAiICBWZXJzaW9uIG9mICIKKyN+IG1zZ3N0ciAiICBCZXJzeW9uIG5nICIKKworI34gbXNnaWQgIiBvbiBzeXN0ZW0gaXMgIgorI34gbXNnc3RyICIgc2Egc2lzdGVtYSBheSAiCisKKyN+IG1zZ2lkICIgaXMgbm90IGluc3RhbGxlZC5cbiIKKyN+IG1zZ3N0ciAiIGF5IGhpbmRpIG5ha2FsdWtsb2suXG4iCisKKyN+IG1zZ2lkICIgdG86ICVzXG4iCisjfiBtc2dzdHIgIiBwYXR1bmdvOiAlc1xuIgorCisjfiBtc2dpZCAiZmdldHBvcyBmYWlsZWQiCisjfiBtc2dzdHIgImJpZ28gYW5nIGZnZXRwb3MiCisKKyN+IG1zZ2lkICJmc2V0cG9zIGZhaWxlZCIKKyN+IG1zZ3N0ciAiYmlnbyBhbmcgZnNldHBvcyIKKworIywgZnV6enkKKyN+IG1zZ2lkICIiCisjfiAiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIDxjb21tYW5kPlxuIgorI34gIlxuIgorI34gIkNvbW1hbmRzOlxuIgorI34gIiAgLWJ8LS1idWlsZCA8ZGlyZWN0b3J5PiBbPGRlYj5dICAgIEJ1aWxkIGFuIGFyY2hpdmUuXG4iCisjfiAiICAtY3wtLWNvbnRlbnRzIDxkZWI+ICAgICAgICAgICAgICAgTGlzdCBjb250ZW50cy5cbiIKKyN+ICIgIC1JfC0taW5mbyA8ZGViPiBbPGNmaWxlPi4uLl0gICAgICBTaG93IGluZm8gdG8gc3Rkb3V0LlxuIgorI34gIiAgLVd8LS1zaG93IDxkZWI+ICAgICAgICAgICAgICAgICAgIFNob3cgaW5mb3JtYXRpb24gb24gcGFja2FnZShzKVxuIgorI34gIiAgLWZ8LS1maWVsZCA8ZGViPiBbPGNmaWVsZD4uLi5dICAgIFNob3cgZmllbGQocykgdG8gc3Rkb3V0LlxuIgorI34gIiAgLWV8LS1jb250cm9sIDxkZWI+IFs8ZGlyZWN0b3J5Pl0gIEV4dHJhY3QgY29udHJvbCBpbmZvLlxuIgorI34gIiAgLXh8LS1leHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+ICAgIEV4dHJhY3QgZmlsZXMuXG4iCisjfiAiICAtWHwtLXZleHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+ICAgRXh0cmFjdCAmIGxpc3QgZmlsZXMuXG4iCisjfiAiICAtLWZzeXMtdGFyZmlsZSA8ZGViPiAgICAgICAgICAgICAgT3V0cHV0IGZpbGVzeXN0ZW0gdGFyZmlsZS5cbiIKKyN+ICIgIC1ofC0taGVscCAgICAgICAgICAgICAgICAgICAgICAgICBEaXNwbGF5IHRoaXMgbWVzc2FnZS5cbiIKKyN+ICIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgICAgICAgICBTaG93IHZlcnNpb24uXG4iCisjfiAiICAtLWxpY2Vuc2UgfCAtLWxpY2VuY2UgICAgICAgICAgICAgU2hvdyBsaWNlbnNlLlxuIgorI34gIlxuIgorI34gIjxkZWI+IGlzIHRoZSBmaWxlbmFtZSBvZiBhIERlYmlhbiBmb3JtYXQgYXJjaGl2ZS5cbiIKKyN+ICI8Y2ZpbGU+IGlzIHRoZSBuYW1lIG9mIGFuIGFkbWluaXN0cmF0aXZlIGZpbGUgY29tcG9uZW50LlxuIgorI34gIjxjZmllbGQ+IGlzIHRoZSBuYW1lIG9mIGEgZmllbGQgaW4gdGhlIG1haW4gYGNvbnRyb2wnIGZpbGUuXG4iCisjfiAiXG4iCisjfiAiT3B0aW9uczpcbiIKKyN+ICIgIC0tc2hvd2Zvcm1hdD08Zm9ybWF0PiAgICAgIFVzZSBhbHRlcm5hdGl2ZSBmb3JtYXQgZm9yIC0tc2hvdy5cbiIKKyN+ICIgIC1EICAgICAgICAgICAgICAgICAgICAgICAgIEVuYWJsZSBkZWJ1Z2dpbmcgb3V0cHV0LlxuIgorI34gIiAgLS1vbGQsIC0tbmV3ICAgICAgICAgICAgICAgU2VsZWN0IGFyY2hpdmUgZm9ybWF0LlxuIgorI34gIiAgLS1ub2NoZWNrICAgICAgICAgICAgICAgICAgU3VwcHJlc3MgY29udHJvbCBmaWxlIGNoZWNrIChidWlsZCBiYWQgIgorI34gInBhY2thZ2UpLlxuIgorI34gIiAgLXojICAgICAgICAgICAgICAgICAgICAgICAgU2V0IHRoZSBjb21wcmVzc2lvbiBsZXZlbCB3aGVuIGJ1aWxkaW5nLlxuIgorI34gIiAgLVo8dHlwZT4gICAgICAgICAgICAgICAgICAgU2V0IHRoZSBjb21wcmVzc2lvbiB0eXBlIHRvIHVzZSB3aGVuICIKKyN+ICJidWlsZGluZy5cbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFsbG93ZWQgdmFsdWVzOiBnemlwLCBiemlwMiwgbm9uZS5cbiIKKyN+ICJcbiIKKyN+IG1zZ3N0ciAiIgorI34gIk1nYSB1dG9zOlxuIgorI34gIiAgLWJ8LS1idWlsZCA8ZGlyZWN0b3J5PiBbPGRlYj5dICAgIGJ1bXVvIG5nIGFya2liby5cbiIKKyN+ICIgIC1jfC0tY29udGVudHMgPGRlYj4gICAgICAgICAgICAgICBpbGlzdGEgYW5nIG5pbGFsYW1hbi5cbiIKKyN+ICIgIC1JfC0taW5mbyA8ZGViPiBbPGNmaWxlPi4uLl0gICAgICBpcGFraXRhIGFuZyBpbmZvIHNhIHN0ZG91dC5cbiIKKyN+ICIgIC1XfC0tc2hvdyA8ZGViPiAgICAgICAgICAgICAgICAgICBpcGFraXRhIGFuZyBpbXBvcm1hc3lvbiB0dW5na29sIHNhICIKKyN+ICJwYWtldGVcbiIKKyN+ICIgIC1mfC0tZmllbGQgPGRlYj4gWzxjZmllbGQ+Li4uXSAgICBpcGFraXRhIGFuZyBzYWtsYXcgc2Egc3Rkb3V0LlxuIgorI34gIiAgLWV8LS1jb250cm9sIDxkZWI+IFs8ZGlyZWN0b3J5Pl0gIGktZXh0cmFjdCBhbmcgY29udHJvbCBpbmZvLlxuIgorI34gIiAgLXh8LS1leHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+ICAgIGktZXh0cmFjdCBhbmcgbWdhIHRhbGFrc2FuLlxuIgorI34gIiAgLVh8LS12ZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PiAgIGktZXh0cmFjdCBhdCBpbGlzdGEgYW5nIG1nYSAiCisjfiAidGFsYWtzYW4uXG4iCisjfiAiICAtLWZzeXMtdGFyZmlsZSA8ZGViPiAgICAgICAgICAgICAgaS1vdXRwdXQgYW5nIGZpbGVzeXN0ZW0gdGFyZmlsZS5cbiIKKyN+ICIgIC1ofC0taGVscCAgICAgICAgICAgICAgICAgICAgICAgICBpcGFraXRhIGl0b25nIG1lbnNhaGUuXG4iCisjfiAiICAtLXZlcnNpb24gfCAtLWxpY2VuY2UgICAgICAgICAgICAgaXBha2l0YSBhbmcgYmVyc3lvbi9saXNlbnNpeWEuXG4iCisjfiAiXG4iCisjfiAiPGRlYj4gYXkgcGFuZ2FsYW4gbmcgdGFsYWtzYW4gbmcgYXJraWJvbmcgYW55b25nIERlYmlhbi5cbiIKKyN+ICI8Y2ZpbGU+IGF5IHBhbmdhbGFuIG5nIGJhaGFnaSBuZyB0YWxha3NhbmcgYWRtaW5pc3RyYXRpYm8uXG4iCisjfiAiPGNmaWVsZD4gYXkgcGFuZ2FsYW4gbmcgc2FrbGF3IHNhIHBhbmd1bmFoaW5nIHRhbGFrc2FuZyBgY29udHJvbCcuXG4iCisjfiAiXG4iCisjfiAiTWdhIG9wc3lvbjpcbiIKKyN+ICIgIC0tc2hvd2Zvcm1hdD08YW55bz4gICAgIGd1bWFtaXQgbmcga2FoYWxpcCBuYSBhbnlvIHBhcmEgc2EgLS1zaG93XG4iCisjfiAiICAtRCAgICAgICAgICAgICAgICAgICAgICBpLWVuYWJsZSBhbmcgZGVidWdnaW5nIG91dHB1dFxuIgorI34gIiAgLS1vbGQsIC0tbmV3ICAgICAgICAgICAgcGlsaWluIGFuZyBhbnlvIG5nIGFya2lib1xuIgorI34gIiAgLS1ub2NoZWNrICAgICAgICAgICAgICAgaHV3YWcgc3VyaWluIGFuZyB0YWxha3NhbmcgY29udHJvbFxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgKGJ1bXVvIG5nIGhpbmRpIG5vcm1hbCBuYSBwYWtldGUpXG4iCisjfiAiICAteiMgICAgICAgICAgICAgICAgICAgICB1cGFuZyBpdGFrZGEgYW5nIGNvbXByZXNzaW9uIGhhYmFuZyBidW11YnVvXG4iCisjfiAiICAtWjx1cmk+ICAgICAgICAgICAgICAgICBpdGFrZGEgYW5nIHVyaSBuZyBjb21wcmVzc2lvbiBuYSBnYWdhbWl0aW4gc2EgIgorI34gInBhZ2J1by5cbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgIHRhbmdnYXAgbmEgaGFsYWdhOiBnemlwLCBiemlwMiwgbm9uZVxuIgorI34gIlxuIgorI34gIkFueW9uZyBzeW50YXg6XG4iCisjfiAiICBBbmcgYW55byBheSBzdHJpbmcgbmEgaS1vdXRwdXQgcGFyYSBzYSBiYXdhdCBwYWtldGUuIEFuZyBhbnlvIGF5ICIKKyN+ICJtYWFhcmluZ1xuIgorI34gIiAgbWF5IGthc2FtYW5nIG1nYSBzdGFuZGFyZCBlc2NhcGUgc2VxdWVuY2UgXFxcXG4gKG5ld2xpbmUpLCBcXFxcciAiCisjfiAiKGNhcnJpYWdlIHJldHVybilcbiIKKyN+ICIgIG8gXFxcXFxcXFwgKHBheWFrIG5hIGJhY2tzbGFzaCkuICBJbXBvcm1hc3lvbiB0dW5na29sIHNhIHBha2V0ZSBheSAiCisjfiAibWFhYXJpbmcgaXNhbWFcbiIKKyN+ICIgIHNhIHBhbWFtYWdpdGFuIG5nIHBhZ2xhZ2F5IG5nIHZhcmlhYmxlIHJlZmVyZW5jZSBzYSBzYWtsYXcgbmcgcGFrZXRlICIKKyN+ICJnYW1pdCBhbmdcbiIKKyN+ICIgICR7dmFyWzt3aWR0aF19IG5hIHN5bnRheC4gQW5nIG1nYSBzYWtsYXcgYXkgcmlnaHQtYWxpZ25lZCBrdW5nIGhpbmRpICIKKyN+ICJuZWdhdGlib1xuIgorI34gIiAgYW5nIGxhcGFkLCBhdCBrdW5nIGdhbm9vbiBheSBsZWZ0IGFsaWdubWVudCBhbmcgZ2FnYW1pdGluLlxuIgorI34gIlxuIgorI34gIkdhbWl0aW4gYW5nIGBkcGtnJyB1cGFuZyBpbHVrbG9rIG8gdGFuZ2dhbGluIGFuZyBtZ2EgcGFrZXRlIHNhIGlueW9uZyAiCisjfiAic2lzdGVtYSwgb1xuIgorI34gImBkc2VsZWN0JyBwYXJhIHNhIG1hc21hZGFsaW5nIHBhbmdhc2l3YSBuZyBtZ2EgcGFrZXRlLiBBbmcgbWdhIHBha2V0ZW5nICIKKyN+ICJiaW51a2xhdFxuIgorI34gImdhbWl0IGFuZyBgZHBrZy1kZWIgLS1leHRyYWN0JyBheSBoaW5kaSBtYWx1bHVrbG9rIG5nIHRhbWEgIVxuIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiIKKyN+ICJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gPGNvbW1hbmQ+XG4iCisjfiAiXG4iCisjfiAiQ29tbWFuZHM6XG4iCisjfiAiICAtc3wtLXNwbGl0IDxmaWxlPiBbPHByZWZpeD5dICAgIFNwbGl0IGFuIGFyY2hpdmUuXG4iCisjfiAiICAtanwtLWpvaW4gPHBhcnQ+IDxwYXJ0PiAuLi4gICAgIEpvaW4gcGFydHMgdG9nZXRoZXIuXG4iCisjfiAiICAtSXwtLWluZm8gPHBhcnQ+IC4uLiAgICAgICAgICAgIERpc3BsYXkgaW5mbyBhYm91dCBhIHBhcnQuXG4iCisjfiAiICAtaHwtLWhlbHAgICAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisjfiAiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhlIHZlcnNpb24uXG4iCisjfiAiICAtLWxpY2Vuc2UgICAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhlIGxpY2Vuc2UuXG4iCisjfiAiXG4iCisjfiAiICAtYXwtLWF1dG8gLW8gPGNvbXBsZXRlPiA8cGFydD4gIEF1dG8tYWNjdW11bGF0ZSBwYXJ0cy5cbiIKKyN+ICIgIC1sfC0tbGlzdHEgICAgICAgICAgICAgICAgICAgICAgTGlzdCB1bm1hdGNoZWQgcGllY2VzLlxuIgorI34gIiAgLWR8LS1kaXNjYXJkIFs8ZmlsZW5hbWU+IC4uLl0gICBEaXNjYXJkIHVubWF0Y2hlZCBwaWVjZXMuXG4iCisjfiAiXG4iCisjfiAiT3B0aW9uczpcbiIKKyN+ICIgIC0tZGVwb3RkaXIgPGRpcmVjdG9yeT4gICAgICAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMvJXMuXG4iCisjfiAiICAtU3wtLXBhcnRzaXplIDxzaXplPiAgICAgICAgICAgIEluIEtpQiwgZm9yIC1zIChkZWZhdWx0IGlzIDQ1MCkuXG4iCisjfiAiICAtb3wtLW91dHB1dCA8ZmlsZT4gICAgICAgICAgICAgIEZvciAtaiAoZGVmYXVsdCBpcyA8cGFja2FnZT4tPHZlcnNpb24+LiIKKyN+ICJkZWIpLlxuIgorI34gIiAgLVF8LS1ucHF1aWV0ICAgICAgICAgICAgICAgICAgICBCZSBxdWlldCB3aGVuIC1hIGlzIG5vdCBhIHBhcnQuXG4iCisjfiAiICAtLW1zZG9zICAgICAgICAgICAgICAgICAgICAgICAgIEdlbmVyYXRlIDguMyBmaWxlbmFtZXMuXG4iCisjfiAiXG4iCisjfiAiRXhpdCBzdGF0dXM6IDAgPSBPSzsgIDEgPSAtYSBpcyBub3QgYSBwYXJ0OyAgMiA9IHRyb3VibGUhXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJQYWctZ2FtaXQ6IGRwa2ctc3BsaXQgLXN8LS1zcGxpdCA8dGFsYWtzYW4+IFs8dW5sYXBpPl0gIEloYXRpIGFuZyBpc2FuZyAiCisjfiAiYXJraWJvLlxuIgorI34gIiAgICAgICAgICAgZHBrZy1zcGxpdCAtanwtLWpvaW4gPGJhaGFnaT4gPGJhaGFnaT4gLi4uICBJcGFnc2FtYSBhbmcgbWdhICIKKyN+ICJiYWhhZ2kuXG4iCisjfiAiICAgICAgICAgICBkcGtnLXNwbGl0IC1JfC0taW5mbyA8YmFoYWdpPiAuLi4gICAgICAgICAgIElwYWtpdGEgYW5nIGluZm8gIgorI34gInVrb2wgc2FcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWhhZ2kuXG4iCisjfiAiICAgICAgICAgICBkcGtnLXNwbGl0IC1ofC0taGVscHwtLXZlcnNpb258LS1saWNlbmNlICAgIElwYWtpdGEgYW5nICIKKyN+ICJ0dWxvbmcvXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmVyc3lvbi8iCisjfiAibGlzZW5zaXlhXG4iCisjfiAiICAgICAgICAgICBkcGtnLXNwbGl0IC1hfC0tYXV0byAtbyA8YnVvPiA8YmFoYWdpPiAgICAgIElwYWdzYW1hIG5nIGt1c2EgIgorI34gImFuZyBtZ2FcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWhhZ2kuXG4iCisjfiAiICAgICAgICAgICBkcGtnLXNwbGl0IC1sfC0tbGlzdHEgICAgICAgICAgICAgICAgICAgICAgIElsaXN0YSBhbmcgaGluZGkgIgorI34gInB1bWFyZXNcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYSBtZ2EgcGlyYXNvLlxuIgorI34gIiAgICAgICAgICAgZHBrZy1zcGxpdCAtZHwtLWRpc2NhcmQgWzx0YWxha3Nhbj4gLi4uXSAgICBJYmFzdXJhIGFuZyBoaW5kaSAiCisjfiAicHVtYXJlc1xuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hIG1nYSBwaXJhc28uXG4iCisjfiAiXG4iCisjfiAiTWdhIG9wc3lvbjogLS1kZXBvdGRpciA8ZGlyZWN0b3J5PiAgIChkZWZhdWx0IGF5ICVzLyVzKVxuIgorI34gIiAgICAgICAgICAgIC1TfC0tbGFraW5nYmFoYWdpIDxsYWtpPiAoc2Ega0IsIHBhcmEgc2EgLXMsIGFuZyBkZWZhdWx0IGF5ICIKKyN+ICI0NTApXG4iCisjfiAiICAgICAgICAgICAgLW98LS1vdXRwdXQgPHRhbGFrc2FuPiAgIChwYXJhIHNhIC1qLCBkZWZhdWx0IGF5IFxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBha2V0ZT4tPGJlcnN5b24+LmRlYilcbiIKKyN+ICIgICAgICAgICAgICAtUXwtLW5wcXVpZXQgICAgICAgICAgICAoaHV3YWcgbWFpbmdheSBrYXBhZyAtYSBheSBoaW5kaSAiCisjfiAiYmFoYWdpKVxuIgorI34gIiAgICAgICAgICAgIC0tbXNkb3MgICAgICAgICAgICAgICAgKGd1bWF3YSBuZyBwYW5nYWxhbiBuZyB0YWxha3NhbiBuYSAiCisjfiAiYW55b25nIDguMylcbiIKKyN+ICJcbiIKKyN+ICJLYWxhZ2F5YW4gcGFnbGFiYXM6IDAgPSBPSzsgIDEgPSAtYSBheSBoaW5kaSBiYWhhZ2k7IDIgPSBiYWdhYmFnIVxuIgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9wby92aS5nbW8gYi9kcGtnLTEuMTYuMS4xL3BvL3ZpLmdtbwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wZmRhMzNjCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9wby92aS5nbW8KQmluYXJ5IGZpbGVzIGRpZmZlcgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9wby92aS5wbyBiL2Rwa2ctMS4xNi4xLjEvcG8vdmkucG8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNTU1ZDk3OQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvcG8vdmkucG8KQEAgLTAsMCArMSw2NzAxIEBACisjIFZpZXRuYW1lc2UgdHJhbnNsYXRpb24gZm9yIERwa2cuCisjIENvcHlyaWdodCDCqSAyMDEwIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgorIyBQaGFuIFZpbmggVGhpbmggPHRlcHBpQHZub3NzLm9yZz4sIDIwMDUuCisjIENseXRpZSBTaWRkYWxsIDxjbHl0aWVAcml2ZXJsYW5kLm5ldC5hdT4sIDIwMDYtMjAxMC4KKyMKK21zZ2lkICIiCittc2dzdHIgIiIKKyJQcm9qZWN0LUlkLVZlcnNpb246IGRwa2cgMS4xNS44LjVcbiIKKyJSZXBvcnQtTXNnaWQtQnVncy1UbzogZGViaWFuLWRwa2dAbGlzdHMuZGViaWFuLm9yZ1xuIgorIlBPVC1DcmVhdGlvbi1EYXRlOiAyMDExLTEwLTE0IDA3OjExKzAyMDBcbiIKKyJQTy1SZXZpc2lvbi1EYXRlOiAyMDExLTA0LTI4IDAzOjIyKzAyMDBcbiIKKyJMYXN0LVRyYW5zbGF0b3I6IENseXRpZSBTaWRkYWxsIDxjbHl0aWVAcml2ZXJsYW5kLm5ldC5hdT5cbiIKKyJMYW5ndWFnZS1UZWFtOiBWaWV0bmFtZXNlIDx2aS1WTkBnb29nbGVncm91cHMuY29tPlxuIgorIkxhbmd1YWdlOiB2aVxuIgorIk1JTUUtVmVyc2lvbjogMS4wXG4iCisiQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PVVURi04XG4iCisiQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdFxuIgorIlBsdXJhbC1Gb3JtczogbnBsdXJhbHM9MTsgcGx1cmFsPTA7XG4iCisiWC1HZW5lcmF0b3I6IExvY0ZhY3RvcnlFZGl0b3IgMS44XG4iCisKKyM6IGxpYi9kcGtnL2FyLmM6NjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgJyVjJyBpbiBhcmNoaXZlICclLjI1MHMnIG1lbWJlciAnJS4xNnMnIHNpemUiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvYXIuYzo4MSBsaWIvZHBrZy9hci5jOjk3IGxpYi9kcGtnL2FyLmM6MTA4IGxpYi9kcGtnL2FyLmM6MTEyCisjOiBsaWIvZHBrZy9hci5jOjEzNCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE1NAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgZmlsZSAnJXMnIgorbXNnc3RyICJraMO0bmcgdGjhu4MgZ2hpIHThuq1wIHRpbiDCqyAlcyDCuyIKKworIzogbGliL2Rwa2cvYXIuYzo5NAorIywgYy1mb3JtYXQKK21zZ2lkICJnZW5lcmF0ZWQgY29ycnVwdCBhciBoZWFkZXIgZm9yICclcyciCittc2dzdHIgIsSRw6MgdOG6oW8gbeG7mXQgZMOybmcgxJHhuqd1IGFyIGLhu4sgaOG7j25nIGNobyDCqyAlcyDCuyIKKworIzogbGliL2Rwa2cvYXIuYzoxMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGFyIG1lbWJlciBmaWxlICglcykiCittc2dzdHIgImzhu5dpIGzhuqV5IHRy4bqhbmcgdGjDoWkgduG7gSB04bqtcCB0aW4gYuG7mSBwaOG6rW4gYXIgKCVzKSIKKworIzogbGliL2Rwa2cvYXIuYzoxMzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byBmc3RhdCBhciBtZW1iZXIgZmlsZSAoJXMpIgorbXNnaWQgImFyIG1lbWJlciBmaWxlICglcykiCittc2dzdHIgImzhu5dpIGzhuqV5IHRy4bqhbmcgdGjDoWkgduG7gSB04bqtcCB0aW4gYuG7mSBwaOG6rW4gYXIgKCVzKSIKKworIzogbGliL2Rwa2cvYnVmZmVyLmM6MTk2CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZWFkIG9uIGJ1ZmZlciBjb3B5IGZvciAlcyIKK21zZ3N0ciAibOG7l2kgxJHhu41jIGtoaSBzYW8gY2jDqXAgdsO5bmcgxJHhu4dtIGNobyAlcyIKKworIzogbGliL2Rwa2cvYnVmZmVyLmM6MjEyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCBpbiB3cml0ZSBvbiBidWZmZXIgY29weSBmb3IgJXMiCittc2dzdHIgImzhu5dpIGdoaSBraGkgc2FvIGNow6lwIHbDuW5nIMSR4buHbSBjaG8gJXMiCisKKyM6IGxpYi9kcGtnL2J1ZmZlci5jOjIyMAorIywgYy1mb3JtYXQKK21zZ2lkICJzaG9ydCByZWFkIG9uIGJ1ZmZlciBjb3B5IGZvciAlcyIKK21zZ3N0ciAixJHhu41jIG5n4bqvbiBraGkgc2FvIGNow6lwIHbDuW5nIMSR4buHbSBjaG8gJXMiCisKKyM6IGxpYi9kcGtnL2J1ZmZlci5jOjI4OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgdGFyIgorbXNnaWQgImZhaWxlZCB0byBzZWVrICVzIgorbXNnc3RyICJs4buXaSB0aOG7sWMgaGnhu4duIHRhciIKKworIzogbGliL2Rwa2cvY29tbWFuZC5jOjE3OCBsaWIvZHBrZy9jb21tYW5kLmM6MjA0IHNyYy9oZWxwLmM6NjIxCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjk4IHNyYy9wcm9jZXNzYXJjLmM6MTM4IHNyYy9wcm9jZXNzYXJjLmM6NDMyCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjgzOSBkcGtnLWRlYi9idWlsZC5jOjQ1OSBkcGtnLWRlYi9idWlsZC5jOjUzOAorIzogZHBrZy1kZWIvYnVpbGQuYzo1NjEgZHBrZy1kZWIvZXh0cmFjdC5jOjMxNyBkcGtnLWRlYi9pbmZvLmM6NjUKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzo2OSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NDU3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBleGVjdXRlICVzICglcykiCittc2dzdHIgImtow7RuZyB0aOG7gyB0aOG7sWMgaGnhu4duICVzICglcykiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGRlY29tcHJlc3Npb24iCittc2dzdHIgIiVzOiBnaeG6o2kgbsOpbiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzo4OQorIywgYy1mb3JtYXQKK21zZ2lkICIlczogY29tcHJlc3Npb24iCittc2dzdHIgIiVzOiBuw6luIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjExMgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZXJyb3IgYmluZGluZyBpbnB1dCB0byBnemlwIHN0cmVhbSIKK21zZ3N0ciAiJXM6IGzhu5dpIMSRw7NuZyBr4bq/dCBk4buvIGxp4buHdSBuaOG6rXAgduG7m2kgbHXhu5NuZyBuw6luIGd6aXAiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHJlYWQgZXJyb3I6ICclcyciCittc2dzdHIgIiVzOiBs4buXaSDEkeG7jWMgbuG7mWkgYuG7mSBj4bunYSBnemlwOiDCqyAlcyDCuyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxMzIgbGliL2Rwa2cvY29tcHJlc3MuYzoxMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgd3JpdGUgZXJyb3IiCittc2dzdHIgIiVzOiBs4buXaSBnaGkgbuG7mWkgYuG7mSBj4bunYSBnemlwIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE1MAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZXJyb3IgYmluZGluZyBvdXRwdXQgdG8gZ3ppcCBzdHJlYW0iCittc2dzdHIgIiVzOiBs4buXaSDEkcOzbmcga+G6v3QgZOG7ryBsaeG7h3UgeHXhuqV0IHbhu5tpIGx14buTbmcgbsOpbiBnemlwIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE1NworIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCByZWFkIGVycm9yIgorbXNnc3RyICIlczogbOG7l2kgxJHhu41jIG7hu5lpIGLhu5kgY+G7p2EgZ3ppcCIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxNjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgd3JpdGUgZXJyb3I6ICclcyciCittc2dzdHIgIiVzOiBs4buXaSBnaGkgbuG7mWkgYuG7mSBj4bunYSBnemlwOiDCqyAlcyDCuyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgd3JpdGUgZXJyb3I6ICVzIgorbXNnc3RyICIlczogbOG7l2kgZ2hpIG7hu5lpIGLhu5kgY+G7p2EgZ3ppcDogJXMiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjIwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvciBiaW5kaW5nIGlucHV0IHRvIGJ6aXAyIHN0cmVhbSIKK21zZ3N0ciAiJXM6IGzhu5dpIMSRw7NuZyBr4bq/dCBk4buvIGxp4buHdSBuaOG6rXAgduG7m2kgbHXhu5NuZyBuw6luIGJ6aXAyIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjIzMgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgcmVhZCBlcnJvcjogJyVzJyIKK21zZ3N0ciAiJXM6IGzhu5dpIMSR4buNYyBu4buZaSBi4buZIGPhu6dhIGJ6aXAyOiDCqyAlcyDCuyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyNDAgbGliL2Rwa2cvY29tcHJlc3MuYzoyNDQgbGliL2Rwa2cvY29tcHJlc3MuYzoyOTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIHdyaXRlIGVycm9yIgorbXNnc3RyICIlczogbOG7l2kgZ2hpIG7hu5lpIGLhu5kgY+G7p2EgYnppcDIiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjU4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvciBiaW5kaW5nIG91dHB1dCB0byBiemlwMiBzdHJlYW0iCittc2dzdHIgIiVzOiBs4buXaSDEkcOzbmcga+G6v3QgZOG7ryBsaeG7h3UgeHXhuqV0IHbhu5tpIGx14buTbmcgbsOpbiBiemlwMiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIHJlYWQgZXJyb3IiCittc2dzdHIgIiVzOiBs4buXaSDEkeG7jWMgbuG7mWkgYuG7mSBj4bunYSBiemlwMiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyNzUgbGliL2Rwa2cvY29tcHJlc3MuYzoyODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIHdyaXRlIGVycm9yOiAnJXMnIgorbXNnc3RyICIlczogbOG7l2kgZ2hpIG7hu5lpIGLhu5kgY+G7p2EgYnppcDI6IMKrICVzIMK7IgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI4MgorbXNnaWQgInVuZXhwZWN0ZWQgYnppcDIgZXJyb3IiCittc2dzdHIgImfhurdwIGzhu5dpIGJ6aXAyIGLhuqV0IHRoxrDhu51uZyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzo2OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidXBkYXRlcyBkaXJlY3RvcnkgY29udGFpbnMgZmlsZSBgJS4yNTBzJyB3aG9zZSBuYW1lIGlzIHRvbyBsb25nIChsZW5ndGg9JWQsICIKKyJtYXg9JWQpIgorbXNnc3RyICIiCisidGjGsCBt4bulYyBj4bqtcCBuaOG6rXQgY2jhu6lhIHThuq1wIHRpbiDCqyAlLjI1MHMgwrsgY8OzIHTDqm4gcXXDoSBkw6BpICjEkeG7mSBkw6BpPSVkLCB04buRaSDEkWE9IgorIiVkKSIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzo3MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidXBkYXRlcyBkaXJlY3RvcnkgY29udGFpbnMgZmlsZXMgd2l0aCBkaWZmZXJlbnQgbGVuZ3RoIG5hbWVzIChib3RoICVkIGFuZCAlZCkiCittc2dzdHIgIiIKKyJ0aMawIG3hu6VjIGPhuq1wIG5o4bqtdCBjaOG7qWEgY8OhYyB04bqtcCB0aW4gY8OzIHTDqm4gY8OzIGNoaeG7gXUgZMOgaSBraMOhYyBuaGF1IChj4bqjIGhhaSAlZCAiCisidsOgICVkKSIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzo4NgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc2NhbiB1cGRhdGVzIGRpcmVjdG9yeSBgJS4yNTVzJyIKK21zZ3N0ciAia2jDtG5nIHRo4buDIHF1w6l0IHRoxrAgbeG7pWMgY+G6rXAgbmjhuq10IMKrICUuMjU1cyDCuyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlbW92ZSBpbmNvcnBvcmF0ZWQgdXBkYXRlIGZpbGUgJS4yNTVzIgorbXNnc3RyICJs4buXaSBn4buhIGLhu48gdOG6rXAgdGluIGPhuq1wIG5o4bqtdCDEkcOjIGjhu6NwIG5o4bqldCAlLjI1NXMiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTIxIGRwa2ctZGViL2J1aWxkLmM6NDQ3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgYCUuMjU1cyciCittc2dzdHIgImtow7RuZyB0aOG7gyB04bqhbyDCqyAlLjI1NXMgwrsiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTI1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmaWxsICUuMjUwcyB3aXRoIHBhZGRpbmciCittc2dzdHIgImtow7RuZyB0aOG7gyBsw6BtIMSR4bqneSAlLjI1MHMgYuG6sW5nIGPDoWMga8O9IHThu7EgxJHhu4dtIGzDs3QiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTI3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCAlLjI1MHMgYWZ0ZXIgcGFkZGluZyIKK21zZ3N0ciAia2jDtG5nIHRo4buDIHjDs2Egc+G6oWNoICUuMjUwcyBzYXUga2hpIMSR4buHbSBsw7N0IgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEyOQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2VlayB0byBzdGFydCBvZiAlLjI1MHMgYWZ0ZXIgcGFkZGluZyIKK21zZ3N0ciAia2jDtG5nIHRo4buDIHTDrG0gduG7iyB0csOtIHThu5tpIMSR4bqndSBj4bunYSAlLjI1MHMgc2F1IGtoaSDEkeG7h20gbMOzdCIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxOTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gbG9jayBmaWxlICVzIGZvciB0ZXN0aW5nIgorbXNnc3RyICJraMO0bmcgdGjhu4MgbeG7nyB04bqtcCB0aW4ga2hvw6EgJXMgxJHhu4MgdGjhu60iCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjIxCittc2dpZCAidW5hYmxlIHRvIG9wZW4vY3JlYXRlIHN0YXR1cyBkYXRhYmFzZSBsb2NrZmlsZSIKK21zZ3N0ciAia2jDtG5nIHRo4buDIG3hu58vdOG6oW8gdOG6rXAgdGluIGtow7NhIGPhu6dhIGPGoSBz4bufIGThu68gbGnhu4d1IHRy4bqhbmcgdGjDoWkiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjMxCittc2dpZCAieW91IGRvIG5vdCBoYXZlIHBlcm1pc3Npb24gdG8gbG9jayB0aGUgZHBrZyBzdGF0dXMgZGF0YWJhc2UiCittc2dzdHIgImtow7RuZyBjw7MgcXV54buBbiBraMOzYSBjxqEgc+G7nyBk4buvIGxp4buHdSB0cuG6oW5nIHRow6FpIGPhu6dhIGRwa2ciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjMzCisjLCBmdXp6eQorI3wgbXNnaWQgInVuYWJsZSB0byBsb2NrIGRwa2cgc3RhdHVzIGRhdGFiYXNlIgorbXNnaWQgImRwa2cgc3RhdHVzIGRhdGFiYXNlIgorbXNnc3RyICJraMO0bmcgdGjhu4Mga2jDs2EgY8ahIHPhu58gZOG7ryBsaeG7h3UgdHLhuqFuZyB0aMOhaSBj4bunYSBkcGtnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjI1NworbXNnaWQgInJlcXVlc3RlZCBvcGVyYXRpb24gcmVxdWlyZXMgc3VwZXJ1c2VyIHByaXZpbGVnZSIKK21zZ3N0ciAidGhhbyB0w6FjIMSRw6MgecOqdSBj4bqndSBj4bqnbiB0aGnhur90IHF1eeG7gW4gY+G7p2Egc2nDqnUgbmfGsOG7nWkgZMO5bmcgKHN1cGVydXNlcikiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjYyCittc2dpZCAidW5hYmxlIHRvIGFjY2VzcyBkcGtnIHN0YXR1cyBhcmVhIgorbXNnc3RyICJraMO0bmcgdGjhu4MgdHJ1eSBj4bqtcCB2w7luZyB0cuG6oW5nIHRow6FpIGPhu6dhIGRwa2ciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjY0Cittc2dpZCAib3BlcmF0aW9uIHJlcXVpcmVzIHJlYWQvd3JpdGUgYWNjZXNzIHRvIGRwa2cgc3RhdHVzIGFyZWEiCittc2dzdHIgInRoYW8gdMOhYyBj4bqnbiB0aGnhur90IHF1eeG7gW4gxJHhu41jL2doaSB0cm9uZyB2w7luZyB0cuG6oW5nIHRow6FpIGPhu6dhIGRwa2ciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzA5CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZW1vdmUgbXkgb3duIHVwZGF0ZSBmaWxlICUuMjU1cyIKK21zZ3N0ciAibOG7l2kgZ+G7oSBi4buPIHThuq1wIHRpbiBj4bqtcCBuaOG6rXQgY+G7p2EgbcOsbmggJS4yNTVzIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM0NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgImtow7RuZyB0aOG7gyBnaGkgdHLhuqFuZyB0aMOhaSDEkcOjIGPhuq1wIG5o4bqtdCBj4bunYSDCqyAlLjI1MHMgwrsiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzQ5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAia2jDtG5nIHRo4buDIHjDs2Egc+G6oWNoIHRy4bqhbmcgdGjDoWkgxJHDoyBj4bqtcCBuaOG6rXQgY+G7p2EgwqsgJS4yNTBzIMK7IgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM1MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gdHJ1bmNhdGUgZm9yIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJraMO0bmcgdGjhu4MgY+G6r3Qgbmfhuq9uIGNobyB0cuG6oW5nIHRow6FpIMSRw6MgY+G6rXAgbmjhuq10IGPhu6dhIMKrICUuMjUwcyDCuyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZzeW5jIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICIiCisia2jDtG5nIHRo4buDIGZzeW5jICjEkeG7k25nIGLhu5kgdOG6rXAgdGluKSB0cuG6oW5nIHRow6FpIMSRw6MgY+G6rXAgbmjhuq10IGPhu6dhIMKrICUuMjUwcyDCuyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICJraMO0bmcgdGjhu4MgxJHDs25nIHRy4bqhbmcgdGjDoWkgxJHDoyBj4bqtcCBuaOG6rXQgY+G7p2EgwqsgJS4yNTBzIMK7IgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM1OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAia2jDtG5nIHRo4buDIGPDoGkgxJHhurd0IHRy4bqhbmcgdGjDoWkgxJHDoyBj4bqtcCBuaOG6rXQgY+G7p2EgwqsgJS4yNTBzIMK7IgorCisjOiBsaWIvZHBrZy9kaXIuYzo1MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHJlYWQgZmlsZWRlc2NyaXB0b3IgZmxhZ3MgZm9yICUuMjUwcyIKK21zZ2lkICJ1bmFibGUgdG8gZ2V0IGZpbGUgZGVzY3JpcHRvciBmb3IgZGlyZWN0b3J5ICclcyciCittc2dzdHIgImtow7RuZyB0aOG7gyDEkeG7jWMgY8OhYyBj4budIGZpbGVkZXNjcmlwdG9yIChtw7QgdOG6oyB04bqtcCB0aW4pIGNobyAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL2Rpci5jOjU0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gc3luYyBmaWxlICclcyciCittc2dpZCAidW5hYmxlIHRvIHN5bmMgZGlyZWN0b3J5ICclcyciCittc2dzdHIgImtow7RuZyB0aOG7gyDEkeG7mW5nIGLhu5kgaG/DoSB04bqtcCB0aW4gwqsgJXMgwrsiCisKKyM6IGxpYi9kcGtnL2Rpci5jOjY5IGxpYi9kcGtnL2Rpci5jOjEzMQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIG9wZW4gZmlsZSAnJXMnIgorbXNnaWQgInVuYWJsZSB0byBvcGVuIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICJraMO0bmcgdGjhu4MgbeG7nyB04bqtcCB0aW4gwqsgJXMgwrsiCisKKyM6IGxpYi9kcGtnL2Rpci5jOjEwOSBzcmMvZGl2ZXJ0Y21kLmM6MjE4IGRwa2ctc3BsaXQvc3BsaXQuYzoyMDIKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjkzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIGZpbGUgJyVzJyIKK21zZ3N0ciAia2jDtG5nIHRo4buDIG3hu58gdOG6rXAgdGluIMKrICVzIMK7IgorCisjOiBsaWIvZHBrZy9kaXIuYzoxMTEgc3JjL2RpdmVydGNtZC5jOjIzMiBzcmMvZGl2ZXJ0Y21kLmM6Mzc3CisjOiBzcmMvc3RhdGNtZC5jOjIxNyBkcGtnLWRlYi9idWlsZC5jOjU5OCBkcGtnLXNwbGl0L2pvaW4uYzo2NQorIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE4NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTQwNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBmaWxlICclcyciCittc2dzdHIgImtow7RuZyB0aOG7gyDEkeG7mW5nIGLhu5kgaG/DoSB04bqtcCB0aW4gwqsgJXMgwrsiCisKKyM6IGxpYi9kcGtnL2Rpci5jOjExMyBzcmMvZGl2ZXJ0Y21kLmM6MjM0IHNyYy9kaXZlcnRjbWQuYzozNzkKKyM6IGRwa2ctZGViL2J1aWxkLmM6NjAwIGRwa2ctc3BsaXQvam9pbi5jOjY3IGRwa2ctc3BsaXQvcXVldWUuYzoxODkKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzE0IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNDA4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBmaWxlICclcyciCittc2dzdHIgImtow7RuZyB0aOG7gyDEkcOzbmcgdOG6rXAgdGluIMKrICVzIMK7IgorCisjOiBsaWIvZHBrZy9kdW1wLmM6Mzk2CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB3cml0ZSBkZXRhaWxzIG9mIGAlLjUwcycgdG8gYCUuMjUwcyciCittc2dzdHIgImzhu5dpIGdoaSBjaGkgdGnhur90IHbhu4EgwqsgJS41MHMgwrsgdsOgbyDCqyAlLjI1MHMgwrsiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0MjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gJyVzJyBmb3Igd3JpdGluZyAlcyBkYXRhYmFzZSIKK21zZ3N0ciAibOG7l2kgbeG7nyDCqyAlcyDCuyDEkeG7gyBnaGkgY8ahIHPhu58gZOG7ryBsaeG7h3UgJXMiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0MjYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNldCBidWZmZXJpbmcgb24gJXMgZGF0YWJhc2UgZmlsZSIKK21zZ3N0ciAia2jDtG5nIHRo4buDIMSR4bq3dCBraOG6oyBuxINuZyBjaHV54buDbiBob8OhbiDEkeG7h20gdHLDqm4gdOG6rXAgdGluIGPGoSBz4bufIGThu68gbGnhu4d1ICVzIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDM4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB3cml0ZSAlcyBkYXRhYmFzZSByZWNvcmQgYWJvdXQgJyUuNTBzJyB0byAnJS4yNTBzJyIKK21zZ3N0ciAibOG7l2kgZ2hpIHbDoG8gwqsgJS4yNTBzIMK7IG3hu6VjIGdoaSBjxqEgc+G7nyBk4buvIGxp4buHdSAlcyB24buBIMKrICUuNTBzIMK7IgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDQ2CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBmbHVzaCAlcyBkYXRhYmFzZSB0byAnJS4yNTBzJyIKK21zZ3N0ciAibOG7l2kgY2h1eeG7g24gaOG6v3QgY8ahIHPhu58gZOG7ryBsaeG7h3UgJXMgcmEgwqsgJS4yNTBzIMK7IgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDQ4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBmc3luYyAlcyBkYXRhYmFzZSB0byAnJS4yNTBzJyIKK21zZ3N0ciAibOG7l2kgZnN5bmMgKMSR4buTbmcgYuG7mSB04bqtcCB0aW4pIGPGoSBz4bufIGThu68gbGnhu4d1ICVzIHbhu5tpIMKrICUuMjUwcyDCuyIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ1MQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2xvc2UgJyUuMjUwcycgYWZ0ZXIgd3JpdGluZyAlcyBkYXRhYmFzZSIKK21zZ3N0ciAibOG7l2kgxJHDs25nIMKrICUuMjUwcyDCuyBzYXUga2hpIGdoaSBjxqEgc+G7nyBk4buvIGxp4buHdSAlcyIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ1NQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gbGluayAnJS4yNTBzJyB0byAnJS4yNTBzJyBmb3IgYmFja3VwIG9mICVzIGRhdGFiYXNlIgorbXNnc3RyICJs4buXaSBsacOqbiBr4bq/dCDCqyAlLjI1MHMgwrsgdOG7m2kgwqsgJS4yNTBzIMK7IMSR4buDIHNhbyBsxrB1IGPGoSBz4bufIGThu68gbGnhu4d1ICVzIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDU4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBpbnN0YWxsICclLjI1MHMnIGFzICclLjI1MHMnIGNvbnRhaW5pbmcgJXMgZGF0YWJhc2UiCittc2dzdHIgImzhu5dpIGPDoGkgxJHhurd0IMKrICUuMjUwcyDCuyBuaMawIGzDoCDCqyAlLjI1MHMgwrsgY2jhu6lhIGPGoSBz4bufIGThu68gbGnhu4d1ICVzIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6OTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiB1bnJlY292ZXJhYmxlIGZhdGFsIGVycm9yLCBhYm9ydGluZzpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorIiVzOiBn4bq3cCBs4buXaSBuZ2hpw6ptIHRy4buNbmcgbcOgIGtow7RuZyB0aOG7gyBwaOG7pWMgaOG7k2kgbsOqbiBo4buneSBi4buPIDpcbiIKKyIlc1xuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MTAwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiJXM6IHVucmVjb3ZlcmFibGUgZmF0YWwgZXJyb3IsIGFib3J0aW5nOlxuIgorI3wgIiAlc1xuIgorbXNnaWQgIiIKKyIlczogb3V0c2lkZSBlcnJvciBjb250ZXh0LCBhYm9ydGluZzpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorIiVzOiBn4bq3cCBs4buXaSBuZ2hpw6ptIHRy4buNbmcgbcOgIGtow7RuZyB0aOG7gyBwaOG7pWMgaOG7k2kgbsOqbiBo4buneSBi4buPIDpcbiIKKyIlc1xuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MTIwCisjLCBmdXp6eQorI3wgbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBjbGVhbnVwIGVudHJ5IgorbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBlcnJvciBjb250ZXh0IgorbXNnc3RyICJraMO0bmcgxJHhu6cgYuG7mSBuaOG7myBjaG8gbeG7pWMgZOG7jW4gZOG6uXAgbeG7m2kiCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoxODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBlcnJvciB3aGlsZSBjbGVhbmluZyB1cDpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorIiVzOiBs4buXaSBraGkgZOG7jW4gZOG6uXA6XG4iCisiICVzXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoyMDEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImRwa2c6IHRvbyBtYW55IG5lc3RlZCBlcnJvcnMgZHVyaW5nIGVycm9yIHJlY292ZXJ5ICEhXG4iCittc2dpZCAiJXM6IHRvbyBtYW55IG5lc3RlZCBlcnJvcnMgZHVyaW5nIGVycm9yIHJlY292ZXJ5ISFcbiIKK21zZ3N0ciAiZHBrZzogcXXDoSBuaGnhu4F1IGzhu5dpIGzhu5NuZyBuaGF1IHRyb25nIGtoaSBwaOG7pWMgaOG7k2kgbOG7l2kuXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoyNjggbGliL2Rwa2cvZWhhbmRsZS5jOjMwNworbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBjbGVhbnVwIGVudHJ5IgorbXNnc3RyICJraMO0bmcgxJHhu6cgYuG7mSBuaOG7myBjaG8gbeG7pWMgZOG7jW4gZOG6uXAgbeG7m2kiCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoyOTEKK21zZ2lkICJvdXQgb2YgbWVtb3J5IGZvciBuZXcgY2xlYW51cCBlbnRyeSB3aXRoIG1hbnkgYXJndW1lbnRzIgorbXNnc3RyICJraMO0bmcgxJHhu6cgYuG7mSBuaOG7myBjaG8gbeG7pWMgZOG7jW4gZOG6uXAgbeG7m2kgY8OzIG5oaeG7gXUgxJHhu5FpIHPhu5EiCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzozNTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiVzOiB3YXJuaW5nOiAlc1xuIgorbXNnaWQgIiVzOiBlcnJvcjogJXNcbiIKK21zZ3N0ciAiJXM6IGPhuqNuaCBiw6FvIDogJXNcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjM5MworIywgYy1mb3JtYXQKK21zZ2lkICIlczogd2FybmluZzogJXNcbiIKK21zZ3N0ciAiJXM6IGPhuqNuaCBiw6FvIDogJXNcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjQxNgorIywgYy1mb3JtYXQKK21zZ2lkICIlczolczolZDogaW50ZXJuYWwgZXJyb3I6ICVzXG4iCittc2dzdHIgIiVzOiVzOiVkOiBs4buXaSBu4buZaSBi4buZIDogJXNcbiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgaXMgbWlzc2luZyIKK21zZ3N0ciAiJXMgY8OybiB0aGnhur91IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0OQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYCUuKnMnIGlzIG5vdCBhbGxvd2VkIGZvciAlcyIKK21zZ2lkICInJS41MHMnIGlzIG5vdCBhbGxvd2VkIGZvciAlcyIKK21zZ3N0ciAia2jDtG5nIGNobyBwaMOpcCDCqyAlKnMgwrsgY2hvICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo3MworIywgYy1mb3JtYXQKK21zZ2lkICJqdW5rIGFmdGVyICVzIgorbXNnc3RyICJyw6FjIG7hurFtIHNhdSAlcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6ODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBwYWNrYWdlIG5hbWUgKCUuMjUwcykiCittc2dzdHIgInTDqm4gZ8OzaSBraMO0bmcgaOG7o3AgbOG7hyAoJS4yNTBzKSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgImVtcHR5IGZpbGUgZGV0YWlscyBmaWVsZCBgJXMnIgorbXNnc3RyICJ0csaw4budbmcgY2hpIHRp4bq/dCB04bqtcCB0aW4gcuG7l25nIMKrICVzIMK7IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBkZXRhaWxzIGZpZWxkIGAlcycgbm90IGFsbG93ZWQgaW4gc3RhdHVzIGZpbGUiCittc2dzdHIgImtow7RuZyBjaG8gcGjDqXAgdHLGsOG7nW5nIGNoaSB0aeG6v3QgdOG6rXAgdGluIMKrICVzIMK7IHRyb25nIHThuq1wIHRpbiB0cuG6oW5nIHRow6FpIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidG9vIG1hbnkgdmFsdWVzIGluIGZpbGUgZGV0YWlscyBmaWVsZCBgJXMnIChjb21wYXJlZCB0byBvdGhlcnMpIgorbXNnc3RyICIiCisicXXDoSBuaGnhu4F1IGdpw6EgdHLhu4sgdHJvbmcgdHLGsOG7nW5nIGNoaSB0aeG6v3QgdOG6rXAgdGluIMKrICVzIMK7IChzbyBzw6FuaCB24bubaSBuaOG7r25nICIKKyJjw6FpIGtow6FjKSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTMyCisjLCBjLWZvcm1hdAorbXNnaWQgInRvbyBmZXcgdmFsdWVzIGluIGZpbGUgZGV0YWlscyBmaWVsZCBgJXMnIChjb21wYXJlZCB0byBvdGhlcnMpIgorbXNnc3RyICIiCisicXXDoSDDrXQgZ2nDoSB0cuG7iyB0cm9uZyB0csaw4budbmcgY2hpIHRp4bq/dCB04bqtcCB0aW4gwqsgJXMgwrsgKHNvIHPDoW5oIHbhu5tpIG5o4buvbmcgY8OhaSAiCisia2jDoWMpIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxNTQKK21zZ2lkICJ5ZXMvbm8gaW4gYm9vbGVhbiBmaWVsZCIKK21zZ3N0ciAiY8OzL2tow7RuZyB0cm9uZyB0csaw4budbmcgaOG7o3AgbMO9ICjEkcO6bmcvc2FpKSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTc0Cittc2dpZCAid29yZCBpbiBgcHJpb3JpdHknIGZpZWxkIgorbXNnc3RyICJn4bq3cCB04burIHRyb25nIHRyxrDhu51uZyDCqyBwcmlvcml0eSDCuyAoxrB1IHRpw6puKSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTg2Cittc2dpZCAidmFsdWUgZm9yIGBzdGF0dXMnIGZpZWxkIG5vdCBhbGxvd2VkIGluIHRoaXMgY29udGV4dCIKK21zZ3N0ciAiIgorImtow7RuZyBjaG8gcGjDqXAgZ2nDoSB0cuG7iyBjaG8gdHLGsOG7nW5nIMKrIHN0YXR1cyDCuyAodHLhuqFuZyB0aMOhaSkgdHJvbmcgbmfhu68gY+G6o25oIG7DoHkiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE5MQorbXNnaWQgImZpcnN0ICh3YW50KSB3b3JkIGluIGBzdGF0dXMnIGZpZWxkIgorbXNnc3RyICJ04burIHRo4bupIG5o4bqldCAod2FudCBbbXXhu5FuXSkgdHJvbmcgdHLGsOG7nW5nIMKrIHN0YXR1cyDCuyAodHLhuqFuZyB0aMOhaSkiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE5NAorbXNnaWQgInNlY29uZCAoZXJyb3IpIHdvcmQgaW4gYHN0YXR1cycgZmllbGQiCittc2dzdHIgInThu6sgdGjhu6kgaGFpIChlcnJvciBbbOG7l2ldKSB0cm9uZyB0csaw4budbmcgwqsgc3RhdHVzIMK7ICh0cuG6oW5nIHRow6FpKSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTk3Cittc2dpZCAidGhpcmQgKHN0YXR1cykgd29yZCBpbiBgc3RhdHVzJyBmaWVsZCIKK21zZ3N0ciAidOG7qyB0aOG7qSBiYSAoc3RhdHVzIFt0cuG6oW5nIHRow6FpXSkgdHJvbmcgdHLGsOG7nW5nIMKrIHN0YXR1cyDCuyAodHLhuqFuZyB0aMOhaSkiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjIwNworIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBpbiBWZXJzaW9uIHN0cmluZyAnJS4yNTBzJyIKK21zZ3N0ciAibOG7l2kgdHJvbmcgY2h14buXaSDCqyBWZXJzaW9uIMK7IChwaGnDqm4gYuG6o24pIMKrICUuMjUwcyDCuyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjE4Cittc2dpZCAib2Jzb2xldGUgYFJldmlzaW9uJyBvciBgUGFja2FnZS1SZXZpc2lvbicgZmllbGQgdXNlZCIKK21zZ3N0ciAiIgorIsSRw6MgZMO5bmcgdHLGsOG7nW5nIMKrIFJldmlzaW9uIMK7IChi4bqjbiBz4butYSDEkeG7lWkpIGhv4bq3YyDCqyBQYWNrYWdlLVJldmlzaW9uIMK7IChi4bqjbiBz4butYSAiCisixJHhu5VpIGfDs2kpIGPFqSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjM1Cittc2dpZCAidmFsdWUgZm9yIGBjb25maWctdmVyc2lvbicgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICIiCisia2jDtG5nIGNobyBwaMOpcCBnacOhIHRy4buLIGNobyB0csaw4budbmcgwqsgY29uZmlnLXZlcnNpb24gwrsgKHBoacOqbiBi4bqjbiBj4bqldSBow6xuaCkgIgorInRyb25nIG5n4buvIGPhuqNuaCBuw6B5IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyNDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgaW4gQ29uZmlnLVZlcnNpb24gc3RyaW5nICclLjI1MHMnIgorbXNnc3RyICJs4buXaSB0cm9uZyBjaHXhu5dpIMKrIENvbmZpZy1WZXJzaW9uIMK7IChwaGnDqm4gYuG6o24gY+G6pXUgaMOsbmgpIMKrICUuMjUwcyDCuyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjY2CisjLCBjLWZvcm1hdAorbXNnaWQgInZhbHVlIGZvciBgY29uZmZpbGVzJyBoYXMgbWFsZm9ybWF0dGVkIGxpbmUgYCUuKnMnIgorbXNnc3RyICIiCisiZ2nDoSB0cuG7iyBjaG8gwqsgY29uZmZpbGVzIMK7IChjw6FjIHThuq1wIHRpbiBj4bqldSBow6xuaCkgY8OzIGTDsm5nIGThuqFuZyBzYWkgwqsgJS4qcyDCuyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6Mjg3CisjLCBjLWZvcm1hdAorbXNnaWQgInZhbHVlIGZvciBgY29uZmZpbGVzJyBoYXMgbGluZSBzdGFydGluZyB3aXRoIG5vbi1zcGFjZSBgJWMnIgorbXNnc3RyICIiCisiZ2nDoSB0cuG7iyBjaG8gwqsgY29uZmZpbGVzIMK7IChjw6FjIHThuq1wIHRpbiBj4bqldSBow6xuaCkgY8OzIGTDsm5nIHbhu5tpIGvDvSB04buxIMSR4bqndSBraMO0bmcgIgorInBo4bqjaSBraG/huqNuZyB0cuG6r25nIMKrICVjIMK7IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzozMDQKK21zZ2lkICJyb290IG9yIG51bGwgZGlyZWN0b3J5IGlzIGxpc3RlZCBhcyBhIGNvbmZmaWxlIgorbXNnc3RyICJ0aMawIG3hu6VjIGfhu5FjIGhheSBy4buXbmcgxJHGsOG7o2MgbGnhu4d0IGvDqiBuaMawIGzDoCBt4buZdCB04bqtcCB0aW4gY+G6pXUgaMOsbmgiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjM2NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgbWlzc2luZyBwYWNrYWdlIG5hbWUsIG9yIGdhcmJhZ2Ugd2hlcmUgcGFja2FnZSBuYW1lIGV4cGVjdGVkIgorbXNnc3RyICJ0csaw4budbmcgwqsgJXMgwrssIHTDqm4gZ8OzaSBi4buLIHRoaeG6v3UsIGhv4bq3YyByw6FjIOG7nyBuxqFpIGNo4budIMSR4bujaSB0w6puIGfDs2kiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjM3MAorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGZpZWxkLCBpbnZhbGlkIHBhY2thZ2UgbmFtZSBgJS4yNTVzJzogJXMiCittc2dzdHIgInRyxrDhu51uZyDCqyAlcyDCuywgdMOqbiBnw7NpIGtow7RuZyBo4bujcCBs4buHIMKrICUuMjU1cyDCuzogJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQwNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOlxuIgorIiBiYWQgdmVyc2lvbiByZWxhdGlvbnNoaXAgJWMlYyIKK21zZ3N0ciAiIgorInRyxrDhu51uZyDCqyAlcyDCuywgdGhhbSBjaGnhur91IMSR4bq/biDCqyAlLjI1NXMgwrs6XG4iCisiIHF1YW4gaOG7hyBwaGnDqm4gYuG6o24gc2FpICVjJWMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQxMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOlxuIgorIiBgJWMnIGlzIG9ic29sZXRlLCB1c2UgYCVjPScgb3IgYCVjJWMnIGluc3RlYWQiCittc2dzdHIgIiIKKyJ0csaw4budbmcgwqsgJXMgwrssIHRoYW0gY2hp4bq/dSDEkeG6v24gwqsgJS4yNTVzIMK7OlxuIgorIiDCqyAlYyDCuyBsw6AgY8WpLCBkw7luZyDCqyAlYz0gwrsgaGF5IMKrICVjJWMgwrsgdGhheSB0aOG6vyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDIyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6XG4iCisiIGltcGxpY2l0IGV4YWN0IG1hdGNoIG9uIHZlcnNpb24gbnVtYmVyLCBzdWdnZXN0IHVzaW5nIGA9JyBpbnN0ZWFkIgorbXNnc3RyICIiCisidHLGsOG7nW5nIMKrICVzIMK7LCB0aGFtIGNoaeG6v3UgxJHhur9uIMKrICUuMjU1cyDCuzpcbiIKKyIga2jhu5twIGNow61uaCB4w6FjIG5n4bqnbSBz4buRIHBoacOqbiBi4bqjbiwgxJHhu4Egbmdo4buLIGTDuW5nIMKrID0gwrsgdGhheSB0aOG6vyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDMwCittc2dpZCAiT25seSBleGFjdCB2ZXJzaW9ucyBtYXkgYmUgdXNlZCBmb3IgUHJvdmlkZXMiCittc2dzdHIgIkNo4buJIGTDuW5nIMSRxrDhu6NjIHBoacOqbiBi4bqjbiBjaMOtbmggeMOhYyBjaG8gUHJvdmlkZXMgKG1p4buFbiBsw6ApIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgdmVyc2lvbiB2YWx1ZSBzdGFydHMgd2l0aCBub24tYWxwaGFudW1lcmljLCBzdWdnZXN0IGFkZGluZyBhIHNwYWNlIgorbXNnc3RyICIiCisidHLGsOG7nW5nIMKrICVzIMK7LCB0aGFtIGNoaeG6v3UgxJHhur9uIMKrICUuMjU1cyDCuzpcbiIKKyIgZ2nDoSB0cuG7iyBwaGnDqm4gYuG6o24gYuG6r3QgxJHhuqd1IHbhu5tpIGvDvSB04buxIGtow7RuZyBwaOG6o2kgY2jhu68gc+G7kSwgxJHhu4Egbmdo4buLIHRow6ptIGThuqV1IGPDoWNoIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NTEgbGliL2Rwa2cvZmllbGRzLmM6NDU1CisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzogdmVyc2lvbiBjb250YWlucyBgJWMnIgorbXNnc3RyICJ0csaw4budbmcgwqsgJXMgwrssIHRoYW0gY2hp4bq/dSDEkeG6v24gwqsgJS4yNTVzIMK7OiBwaGnDqm4gYuG6o24gY2jhu6lhIMKrICVjIMK7IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOiB2ZXJzaW9uIHVudGVybWluYXRlZCIKK21zZ3N0ciAidHLGsOG7nW5nIMKrICVzIMK7LCB0aGFtIGNoaeG6v3UgxJHhur9uIMKrICUuMjU1cyDCuzogcGhpw6puIGLhuqNuIGNoxrBhIMSRxrDhu6NjIGvhur90IHRow7pjIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvICclLjI1NXMnOiBlcnJvciBpbiB2ZXJzaW9uIgorbXNnc3RyICJ0csaw4budbmcgwqsgJXMgwrssIHRoYW0gY2hp4bq/dSDEkeG6v24gwqsgJS4yNTVzIMK7OiBn4bq3cCBs4buXaSB0cm9uZyBwaGnDqm4gYuG6o24iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ3NQorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGZpZWxkLCBzeW50YXggZXJyb3IgYWZ0ZXIgcmVmZXJlbmNlIHRvIHBhY2thZ2UgYCUuMjU1cyciCittc2dzdHIgInRyxrDhu51uZyDCqyAlcyDCuywgbOG7l2kgY8O6IHBow6FwIOG7nyBzYXUgdGhhbSBjaGnhur91IMSR4bq/biBnw7NpIMKrICUuMjU1cyDCuyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDgyCisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlcyAoYHwnKSBub3QgYWxsb3dlZCBpbiAlcyBmaWVsZCIKK21zZ3N0ciAia2jDtG5nIGNobyBwaMOpcCDEkWnhu4F1IHhlbiBr4bq9ICjCqyB8IMK7KSB0cm9uZyB0csaw4budbmcgJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjUzNgorbXNnaWQgInZhbHVlIGZvciBgdHJpZ2dlcnMtcGVuZGluZycgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICIiCisia2jDtG5nIGNobyBwaMOpcCBnacOhIHRy4buLIGNobyB0csaw4budbmcgwqsgdHJpZ2dlcnMtcGVuZGluZyDCuyAoYuG7mSBnw6J5IG7Dqm4gYuG7iyBob8OjbikgIgorInRyb25nIG5n4buvIGPhuqNuaCBuw6B5IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWxsZWdhbCBwZW5kaW5nIHRyaWdnZXIgbmFtZSBgJS4yNTVzJzogJXMiCittc2dzdHIgInTDqm4gYuG7mSBnw6J5IG7Dqm4gY+G6pW0gwqsgJS4yNTVzIMK7OiAlcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTQ3CisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBwZW5kaW5nIHRyaWdnZXIgYCUuMjU1cyciCittc2dzdHIgImLhu5kgZ8OieSBuw6puIHRyw7luZyBi4buLIGhvw6NuIMKrICUuMjU1cyDCuyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTYxCittc2dpZCAidmFsdWUgZm9yIGB0cmlnZ2Vycy1hd2FpdGVkJyBmaWVsZCBub3QgYWxsb3dlZCBpbiB0aGlzIGNvbnRleHQiCittc2dzdHIgIiIKKyJraMO0bmcgY2hvIHBow6lwIGdpw6EgdHLhu4sgY2hvIHRyxrDhu51uZyDCqyB0cmlnZ2Vycy1hd2FpdGVkIMK7IChjw6FjIGLhu5kgZ8OieSBuw6puIG1vbmcgIgorIsSR4bujaSkgdHJvbmcgbmfhu68gY+G6o25oIG7DoHkiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU2OAorIywgYy1mb3JtYXQKK21zZ2lkICJpbGxlZ2FsIHBhY2thZ2UgbmFtZSBpbiBhd2FpdGVkIHRyaWdnZXIgYCUuMjU1cyc6ICVzIgorbXNnc3RyICJn4bq3cCB0w6puIGfDs2kga2jDtG5nIGjhu6NwIGzhu4cgdHJvbmcgYuG7mSBnw6J5IG7Dqm4gbW9uZyDEkeG7o2kgwqsgJS4yNTVzIMK7OiAlcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTc0CisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBhd2FpdGVkIHRyaWdnZXIgcGFja2FnZSBgJS4yNTVzJyIKK21zZ3N0ciAiZ8OzaSBi4buZIGfDonkgbsOqbiB0csO5bmcgbW9uZyDEkeG7o2kgwqsgJS4yNTVzIMK7IgorCisjOiBsaWIvZHBrZy9maWxlLmM6NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgc291cmNlIGZpbGUgJyUuMjUwcyciCittc2dzdHIgImtow7RuZyB0aOG7gyBs4bqleSB0cuG6oW5nIHRow6FpIHbhu4EgdOG6rXAgdGluIG5ndeG7k24gwqsgJS4yNTBzIMK7IgorCisjOiBsaWIvZHBrZy9maWxlLmM6NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoYW5nZSBvd25lcnNoaXAgb2YgdGFyZ2V0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgImtow7RuZyB0aOG7gyB0aGF5IMSR4buVaSBxdXnhu4FuIHPhu58gaOG7r3UgdOG6rXAgdGluIMSRw61jaCDCqyAlLjI1MHMgwrsiCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzo1OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IG1vZGUgb2YgdGFyZ2V0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgImtow7RuZyB0aOG7gyDEkeG6t3QgY2jhur8gxJHhu5kgY+G7p2EgdOG6rXAgdGluIMSRw61jaCDCqyAlLjI1MHMgwrsiCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzo4NQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIGNsb3NlICVzOiAlcyIKK21zZ2lkICJ1bmFibGUgdG8gdW5sb2NrICVzIgorbXNnc3RyICJraMO0bmcgdGjhu4MgxJHDs25nICVzOiAlcyIKKworIzogbGliL2Rwa2cvZmlsZS5jOjExMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hlY2sgZmlsZSAnJXMnIGxvY2sgc3RhdHVzIgorbXNnc3RyICJraMO0bmcgdGjhu4Mga2nhu4NtIHRyYSB0cuG6oW5nIHRow6FpIGtob8OhIGPhu6dhIHThuq1wIHRpbiDCqyAlcyDCuyIKKworIzogbGliL2Rwa2cvZmlsZS5jOjE0NgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic3RhdHVzIGRhdGFiYXNlIGFyZWEgaXMgbG9ja2VkIGJ5IGFub3RoZXIgcHJvY2VzcyIKK21zZ2lkICIlcyBpcyBsb2NrZWQgYnkgYW5vdGhlciBwcm9jZXNzIgorbXNnc3RyICJ2w7luZyBjxqEgc+G7nyBk4buvIGxp4buHdSB0cuG6oW5nIHRow6FpIGLhu4sgdGnhur9uIHRyw6xuaCBraMOhYyBraMOzYSIKKworIzogbGliL2Rwa2cvZmlsZS5jOjE0OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIGNsb3NlICVzOiAlcyIKK21zZ2lkICJ1bmFibGUgdG8gbG9jayAlcyIKK21zZ3N0ciAia2jDtG5nIHRo4buDIMSRw7NuZyAlczogJXMiCisKKyM6IGxpYi9kcGtnL2xvZy5jOjUzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkbid0IG9wZW4gbG9nIGAlcyc6ICVzXG4iCittc2dzdHIgImtow7RuZyB0aOG7gyBt4bufIHPhu5UgdGhlbyBkw7VpIMKrICVzIMK7OiAlc1xuIgorCisjOiBsaWIvZHBrZy9sb2cuYzo4NQorbXNnaWQgIjxwYWNrYWdlIHN0YXR1cyBhbmQgcHJvZ3Jlc3MgZmlsZSBkZXNjcmlwdG9yPiIKK21zZ3N0ciAiPGLhu5kgbcO0IHThuqMgdHLhuqFuZyB0aMOhaSBnw7NpIHbDoCB04bqtcCB0aW4gdGnhur9uIGjDoG5oPiIKKworIzogbGliL2Rwa2cvbG9nLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSB0byBzdGF0dXMgZmQgJWQiCittc2dzdHIgImtow7RuZyB0aOG7gyBnaGkgdsOgbyBi4buZIG3DtCB04bqjIHThuq1wIHRpbiAoZmQpIGtp4buDdSB0cuG6oW5nIHRow6FpICVkIgorCisjOiBsaWIvZHBrZy9tbGliLmM6NDQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAibWFsbG9jIGZhaWxlZCAoJWxkIGJ5dGVzKSIKK21zZ2lkICJtYWxsb2MgZmFpbGVkICglenUgYnl0ZXMpIgorbXNnc3RyICJtYWxsb2MgKGPhuqVwIHBow6F0IGLhu5kgbmjhu5spIGLhu4sgbOG7l2kgKCVsZCBieXRlKSIKKworIzogbGliL2Rwa2cvbWxpYi5jOjU4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJyZWFsbG9jIGZhaWxlZCAoJWxkIGJ5dGVzKSIKK21zZ2lkICJyZWFsbG9jIGZhaWxlZCAoJXp1IGJ5dGVzKSIKK21zZ3N0ciAicmVhbGxvYyAoY+G6pXAgcGjDoXQgbOG6oWkpIGLhu4sgbOG7l2kgKCVsZCBieXRlKSIKKworIzogbGliL2Rwa2cvbWxpYi5jOjcyIGxpYi9kcGtnL21saWIuYzo5MCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6Mjc3CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MzM0IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTA3Cittc2dpZCAiZmFpbGVkIHRvIGFsbG9jYXRlIG1lbW9yeSIKK21zZ3N0ciAibOG7l2kgY+G6pXAgcGjDoXQgYuG7mSBuaOG7myIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZHVwIGZvciBzdGQlcyIKK21zZ3N0ciAibOG7l2kgZHVwIChuaMOibiDEkcO0aT8pIGNobyBzdGQlcyIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEwMworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZHVwIGZvciBmZCAlZCIKK21zZ3N0ciAibOG7l2kgZHVwIChuaMOibiDEkcO0aT8pIGNobyBmZCAlZCIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEwOQorbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgcGlwZSIKK21zZ3N0ciAibOG7l2kgdOG6oW8g4buRbmcgZOG6q24iCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igd3JpdGluZyB0byAnJXMnIgorbXNnc3RyICJs4buXaSBnaGkgdsOgbyDCqyAlcyDCuyIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBmaWxlZGVzY3JpcHRvciBmbGFncyBmb3IgJS4yNTBzIgorbXNnc3RyICJraMO0bmcgdGjhu4MgxJHhu41jIGPDoWMgY+G7nSBmaWxlZGVzY3JpcHRvciAobcO0IHThuqMgdOG6rXAgdGluKSBjaG8gJS4yNTBzIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTI2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgY2xvc2Utb24tZXhlYyBmbGFnIGZvciAlLjI1MHMiCittc2dzdHIgImtow7RuZyB0aOG7gyDEkeG6t3QgY+G7nSBjbG9zZS1vbi1leGVjICjEkcOzbmcga2hpIHRo4buxYyBoaeG7h24pIGNobyAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzo2MworIywgYy1mb3JtYXQKK21zZ2lkICJjb25maWd1cmF0aW9uIGVycm9yOiAlczolZDogJXMiCittc2dzdHIgImzhu5dpIGPhuqV1IGjDrG5oOiAlczolZDogJXMiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzo3NQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiBjb25maWd1cmF0aW9uIGZpbGUgJyUuMjU1cycgZm9yIHJlYWRpbmc6ICVzIgorbXNnc3RyICJs4buXaSBt4bufIHThuq1wIHRpbiBj4bqldSBow6xuaCDCqyAlLjI1NXMgwrsgxJHhu4MgxJHhu41jOiAlcyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmJhbGFuY2VkIHF1b3RlcyBpbiAnJXMnIgorbXNnc3RyICLCqyAlcyDCuyBjaOG7qWEgZOG6pXUgdHLDrWNoIGThuqtuIHRo4burYSBoYXkgdGhp4bq/dSIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjExNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiAnJXMnIgorbXNnc3RyICJraMO0bmcgcsO1IHTDuXkgY2jhu41uIMKrICVzIMK7IgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTIxCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgbmVlZHMgYSB2YWx1ZSIKK21zZ3N0ciAidMO5eSBjaOG7jW4gwqsgJXMgwrsgecOqdSBj4bqndSBt4buZdCBnacOhIHRy4buLIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTI3CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgZG9lcyBub3QgdGFrZSBhIHZhbHVlIgorbXNnc3RyICJ0w7l5IGNo4buNbiDCqyAlcyDCuyBraMO0bmcgY2jhuqVwIG5o4bqtbiBnacOhIHRy4buLIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTMzCisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWQgZXJyb3IgaW4gY29uZmlndXJhdGlvbiBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICJs4buXaSDEkeG7jWMgdHJvbmcgdOG6rXAgdGluIGPhuqV1IGjDrG5oIMKrICUuMjU1cyDCuyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nIGNvbmZpZ3VyYXRpb24gZmlsZSBgJS4yNTVzJyIKK21zZ3N0ciAibOG7l2kgxJHDs25nIHThuq1wIHRpbiBj4bqldSBow6xuaCDCqyAlLjI1NXMgwrsiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxNzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igb3BlbmluZyBjb25maWd1cmF0aW9uIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICJs4buXaSBt4bufIHRoxrAgbeG7pWMgY+G6pXUgaMOsbmggwqsgJXMgwrsiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gLS0lcyIKK21zZ3N0ciAidMO5eSBjaOG7jW4ga2jDtG5nIHLDtSDCqyAtLSVzIMK7IgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgb3B0aW9uIHRha2VzIGEgdmFsdWUiCittc2dzdHIgInTDuXkgY2jhu41uIMKrIC0tJXMgwrsgecOqdSBj4bqndSBt4buZdCBnacOhIHRy4buLIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjM3CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgb3B0aW9uIGRvZXMgbm90IHRha2UgYSB2YWx1ZSIKK21zZ3N0ciAidMO5eSBjaOG7jW4gwqsgLS0lcyDCuyBraMO0bmcgY2jhuqVwIG5o4bqtbiBnacOhIHRy4buLIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gb3B0aW9uIC0lYyIKK21zZ3N0ciAidMO5eSBjaOG7jW4ga2jDtG5nIHLDtSDCqyAtJWMgwrsiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLSVjIG9wdGlvbiB0YWtlcyBhIHZhbHVlIgorbXNnc3RyICJ0w7l5IGNo4buNbiDCqyAtJWMgwrsgecOqdSBj4bqndSBt4buZdCBnacOhIHRy4buLIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjU4CisjLCBjLWZvcm1hdAorbXNnaWQgIi0lYyBvcHRpb24gZG9lcyBub3QgdGFrZSBhIHZhbHVlIgorbXNnc3RyICJ0w7l5IGNo4buNbiDCqyAtJWMgwrsga2jDtG5nIGNo4bqlcCBuaOG6rW4gZ2nDoSB0cuG7iyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI3MQorIywgYy1mb3JtYXQKK21zZ2lkICJvYnNvbGV0ZSBvcHRpb24gJy0tJXMnXG4iCittc2dzdHIgInTDuXkgY2jhu41uIGPFqSDCqyAtLSVzIMK7XG4iCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmxpY3RpbmcgYWN0aW9ucyAtJWMgKC0tJXMpIGFuZCAtJWMgKC0tJXMpIgorbXNnc3RyICJow6BuaCDEkeG7mW5nIHh1bmcgxJHhu5l0IMKrIC0lYyAoLS0lcykgwrsgdsOgIMKrIC0lYyAgKC0tJXMpIMK7IgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgdmFsdWUgZm9yIGAlcycgZmllbGQiCittc2dzdHIgImdpw6EgdHLhu4sgbmjDom4gxJHDtGkgY2hvIHRyxrDhu51uZyDCqyAlcyDCuyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoxNDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidXNlci1kZWZpbmVkIGZpZWxkIG5hbWUgYCUuKnMnIHRvbyBzaG9ydCIKK21zZ3N0ciAidMOqbiB0csaw4budbmcgZG8gbmfGsOG7nWkgZMO5bmcgeMOhYyDEkeG7i25oIMKrICUuKnMgwrsgcXXDoSBuZ+G6r24iCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MTUyCisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSB2YWx1ZSBmb3IgdXNlci1kZWZpbmVkIGZpZWxkIGAlLipzJyIKK21zZ3N0ciAiZ2nDoSB0cuG7iyBuaMOibiDEkcO0aSBjaG8gdHLGsOG7nW5nIGRvIG5nxrDhu51pIGTDuW5nIHjDoWMgxJHhu4tuaCDCqyAlLipzIMK7IgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjIwNworbXNnaWQgIkNvbmZpZ3VyZWQtVmVyc2lvbiBmb3IgcGFja2FnZSB3aXRoIGluYXBwcm9wcmlhdGUgU3RhdHVzIgorbXNnc3RyICIiCisiQ29uZmlndXJlZC1WZXJzaW9uIChwaGnDqm4gYuG6o24gxJHDoyBj4bqldSBow6xuaCkgY2hvIGfDs2kgduG7m2kgU3RhdHVzICh0cuG6oW5nIHRow6FpKSAiCisia2jDtG5nIHRow61jaCBo4bujcCIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzICVzIGJ1dCB0cmlnZ2VycyBhcmUgYXdhaXRlZCIKK21zZ3N0ciAiZ8OzaSBjw7MgdHLhuqFuZyB0aMOhaSAlcyBuaMawbmcgbW9uZyDEkeG7o2kgYuG7mSBnw6J5IG7Dqm4iCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjIyCittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzIHRyaWdnZXJzLWF3YWl0ZWQgYnV0IG5vIHRyaWdnZXJzIGF3YWl0ZWQiCittc2dzdHIgImfDs2kgY8OzIHRy4bqhbmcgdGjDoWkgbW9uZyDEkeG7o2kgYuG7mSBnw6J5IG7Dqm4gbmjGsG5nIGtow7RuZyBtb25nIMSR4bujaSBi4buZIGfDonkgbsOqbiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzICVzIGJ1dCB0cmlnZ2VycyBhcmUgcGVuZGluZyIKK21zZ3N0ciAiZ8OzaSBjw7MgdHLhuqFuZyB0aMOhaSAlcyBuaMawbmcgY8OzIGLhu5kgZ8OieSBuw6puIGLhu4sgaG/Do24iCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjMyCittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzIHRyaWdnZXJzLXBlbmRpbmcgYnV0IG5vIHRyaWdnZXJzIHBlbmRpbmciCittc2dzdHIgImfDs2kgY8OzIHRy4bqhbmcgdGjDoWkgYuG7mSBnw6J5IG7Dqm4gYuG7iyBob8OjbiBuaMawbmcga2jDtG5nIGPDsyBi4buZIGfDonkgbsOqbiBi4buLIGhvw6NuIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjI0MgorbXNnaWQgIlBhY2thZ2Ugd2hpY2ggaW4gc3RhdGUgbm90LWluc3RhbGxlZCBoYXMgY29uZmZpbGVzLCBmb3JnZXR0aW5nIHRoZW0iCittc2dzdHIgIiIKKyJHw7NpIHRyb25nIHRy4bqhbmcgdGjDoWkgbm90LWluc3RhbGxlZCAoY2jGsGEgY8OgaSDEkeG6t3QpIGPDsyBjw6FjIHThuq1wIHRpbiBj4bqldSBow6xuaCBtw6AgIgorInF1w6puIGNow7puZyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozMzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gcGFja2FnZSBpbmZvIGZpbGUgYCUuMjU1cycgZm9yIHJlYWRpbmciCittc2dzdHIgImzhu5dpIG3hu58gdOG6rXAgdGluIHRow7RuZyB0aW4gZ8OzaSDCqyAlLjI1NXMgwrsgxJHhu4MgxJHhu41jIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjM0MQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW4ndCBzdGF0IHBhY2thZ2UgaW5mbyBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICJraMO0bmcgdGjhu4MgbOG6pXkgY8OhYyB0aMO0bmcgdGluIHbhu4EgdOG6rXAgdGluIHRow7RuZyB0aW4gZ8OzaSDCqyAlLjI1NXMgwrsiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzQ3CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbid0IG1tYXAgcGFja2FnZSBpbmZvIGZpbGUgYCUuMjU1cyciCittc2dzdHIgImtow7RuZyB0aOG7gyBtbWFwICjDoW5oIHjhuqEgYuG7mSBuaOG7mykgdOG6rXAgdGluIHRow7RuZyB0aW4gZ8OzaSDCqyAlLjI1NXMgwrsiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzUyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW4ndCBzdGF0IHBhY2thZ2UgaW5mbyBmaWxlIGAlLjI1NXMnIgorbXNnaWQgInJlYWRpbmcgcGFja2FnZSBpbmZvIGZpbGUgJyUuMjU1cyciCittc2dzdHIgImtow7RuZyB0aOG7gyBs4bqleSBjw6FjIHRow7RuZyB0aW4gduG7gSB04bqtcCB0aW4gdGjDtG5nIHRpbiBnw7NpIMKrICUuMjU1cyDCuyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNsb3NlIGFmdGVyIHJlYWQ6IGAlLjI1NXMnIgorbXNnc3RyICJs4buXaSDEkcOzbmcgc2F1IGtoaSDEkeG7jWM6IMKrICUuMjU1cyDCuyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiRU9GIGFmdGVyIGZpZWxkIG5hbWUgYCUuKnMnIgorbXNnc3RyICJn4bq3cCBr4bq/dCB0aMO6YyB04bqtcCB0aW4gc2F1IHTDqm4gdHLGsOG7nW5nIMKrICUuKnMgwrsiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDA3CisjLCBjLWZvcm1hdAorbXNnaWQgIm5ld2xpbmUgaW4gZmllbGQgbmFtZSBgJS4qcyciCittc2dzdHIgImTDsm5nIG3hu5tpIHRyb25nIHTDqm4gdHLGsOG7nW5nIMKrICUuKnMgwrsiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDEwCisjLCBjLWZvcm1hdAorbXNnaWQgIk1TRE9TIEVPRiAoXlopIGluIGZpZWxkIG5hbWUgYCUuKnMnIgorbXNnc3RyICJn4bq3cCBr4bq/dCB0aMO6YyB04bqtcCB0aW4gZOG6oW5nIE1TRE9TICheWikgdHJvbmcgdMOqbiB0csaw4budbmcgwqsgJS4qcyDCuyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmllbGQgbmFtZSBgJS4qcycgbXVzdCBiZSBmb2xsb3dlZCBieSBjb2xvbiIKK21zZ3N0ciAidMOqbiB0csaw4budbmcgwqsgJS4qcyDCuyBwaOG6o2kgY8OzIGThuqV1IGhhaSBjaOG6pW0gdGhlbyBzYXUiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDI1CisjLCBjLWZvcm1hdAorbXNnaWQgIkVPRiBiZWZvcmUgdmFsdWUgb2YgZmllbGQgYCUuKnMnIChtaXNzaW5nIGZpbmFsIG5ld2xpbmUpIgorbXNnc3RyICIiCisiZ+G6t3Aga+G6v3QgdGjDumMgdOG6rXAgdGluIG7hurFtIHRyxrDhu5tjIGdpw6EgdHLhu4sgY+G7p2EgdHLGsOG7nW5nIMKrICUuKnMgwrsgKGPDsm4gdGhp4bq/dSBkw7JuZyAiCisibeG7m2kgY3Xhu5FpIGPDuW5nKSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiTVNET1MgRU9GIGNoYXIgaW4gdmFsdWUgb2YgZmllbGQgYCUuKnMnIChtaXNzaW5nIG5ld2xpbmU/KSIKK21zZ3N0ciAiIgorImvDvSB04buxIGvhur90IHRow7pjIHThuq1wIHRpbiBk4bqhbmcgTVNET1MgdHJvbmcgZ2nDoSB0cuG7iyBj4bunYSB0csaw4budbmcgwqsgJS4qcyDCuyAodGhp4bq/dSAiCisiZMOybmcgbeG7m2k/KSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0NDAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIm5ld2xpbmUgaW4gZmllbGQgbmFtZSBgJS4qcyciCittc2dpZCAiYmxhbmsgbGluZSBpbiB2YWx1ZSBvZiBmaWVsZCAnJS4qcyciCittc2dzdHIgImTDsm5nIG3hu5tpIHRyb25nIHTDqm4gdHLGsOG7nW5nIMKrICUuKnMgwrsiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDYxCisjLCBjLWZvcm1hdAorbXNnaWQgIkVPRiBkdXJpbmcgdmFsdWUgb2YgZmllbGQgYCUuKnMnIChtaXNzaW5nIGZpbmFsIG5ld2xpbmUpIgorbXNnc3RyICIiCisiZ+G6t3Aga+G6v3QgdGjDumMgdOG6rXAgdGluIHRyb25nIGdpw6EgdHLhu4sgY+G7p2EgdHLGsOG7nW5nIMKrICUuKnMgwrsgKGPDsm4gdGhp4bq/dSBkw7JuZyBt4bubaSAiCisiY3Xhu5FpIGPDuW5nKSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo1NDYKK21zZ2lkICJzZXZlcmFsIHBhY2thZ2UgaW5mbyBlbnRyaWVzIGZvdW5kLCBvbmx5IG9uZSBhbGxvd2VkIgorbXNnc3RyICJ0w6xtIHRo4bqleSB2w6BpIG3hu6VjIG5o4bqtcCB0aMO0bmcgdGluIGfDs2ksIGNo4buJIGNobyBwaMOpcCBt4buZdCBt4bulYyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo1NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gcGFja2FnZSBpbmZvcm1hdGlvbiBpbiBgJS4yNTVzJyIKK21zZ3N0ciAia2jDtG5nIGPDsyB0aMO0bmcgdGluIGfDs2kgdHJvbmcgwqsgJS4yNTVzIMK7IgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzo0NQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiVzLCBpbiBmaWxlICclLjI1NXMnIG5lYXIgbGluZSAlZCBwYWNrYWdlICclLjI1NXMnOlxuIgorI3wgIiAiCittc2dpZCAiIgorInBhcnNpbmcgZmlsZSAnJS4yNTVzJyBuZWFyIGxpbmUgJWQgcGFja2FnZSAnJS4yNTVzJzpcbiIKKyIgJS4yNTVzIgorbXNnc3RyICIiCisiJXMsIHRyb25nIHThuq1wIHRpbiDCqyAlLjI1NXMgwrsg4bufIGfhuqduIGTDsm5nICVkIGfDs2kgwqsgJS4yNTVzIMK7OlxuIgorIiAiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjQ4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiJXMsIGluIGZpbGUgJyUuMjU1cycgbmVhciBsaW5lICVkOlxuIgorI3wgIiAiCittc2dpZCAiIgorInBhcnNpbmcgZmlsZSAnJS4yNTVzJyBuZWFyIGxpbmUgJWQ6XG4iCisiICUuMjU1cyIKK21zZ3N0ciAiIgorIiVzLCB0cm9uZyB04bqtcCB0aW4gwqsgJS4yNTVzIMK7IOG7nyBn4bqnbiBkw7JuZyAlZDpcbiIKKyIgIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoxMjUKK21zZ2lkICJtYXkgbm90IGJlIGVtcHR5IHN0cmluZyIKK21zZ3N0ciAiY8OzIHRo4buDIGtow7RuZyBwaOG6o2kgbMOgIGNodeG7l2kgcuG7l25nIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoxMjcKKyMsIGZ1enp5CisjfCBtc2dpZCAibXVzdCBzdGFydCB3aXRoIGFuIGFscGhhbnVtZXJpYyIKK21zZ2lkICJtdXN0IHN0YXJ0IHdpdGggYW4gYWxwaGFudW1lcmljIGNoYXJhY3RlciIKK21zZ3N0ciAiY+G6p24gcGjhuqNpIGLhuq90IMSR4bqndSB24bubaSBt4buZdCBjaOG7ryBz4buRIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoxMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2hhcmFjdGVyIGAlYycgbm90IGFsbG93ZWQgKG9ubHkgbGV0dGVycywgZGlnaXRzIGFuZCBjaGFyYWN0ZXJzIGAlcycpIgorbXNnc3RyICIiCisia2jDtG5nIGNobyBwaMOpcCBrw70gdOG7sSDCqyAlYyDCuyA6IGNo4buJIGNobyBwaMOpcCBjaOG7ryBjw6FpLCBjaOG7ryBz4buRIHbDoCBrw70gdOG7sSDCqyAlcyDCuyIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MTc4CisjLCBmdXp6eQorI3wgbXNnaWQgIjxub25lPiIKK21zZ2N0eHQgInZlcnNpb24iCittc2dpZCAiPG5vbmU+IgorbXNnc3RyICI8a2jDtG5nIGPDsz4iCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjIwOQorbXNnaWQgInZlcnNpb24gc3RyaW5nIGlzIGVtcHR5IgorbXNnc3RyICJjaHXhu5dpIHBoacOqbiBi4bqjbiBsw6AgcuG7l25nIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyMjQKK21zZ2lkICJ2ZXJzaW9uIHN0cmluZyBoYXMgZW1iZWRkZWQgc3BhY2VzIgorbXNnc3RyICJjaHXhu5dpIHBoacOqbiBi4bqjbiBjw7Mga2hv4bqjbmcgdHLhuq9uZyBuaMO6bmciCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjIzMAorbXNnaWQgImVwb2NoIGluIHZlcnNpb24gaXMgbm90IG51bWJlciIKK21zZ3N0ciAia+G7tyBuZ3V5w6puIHRyb25nIHBoacOqbiBi4bqjbiBraMO0bmcgcGjhuqNpIGzDoCBjb24gc+G7kSIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjMyCittc2dpZCAibm90aGluZyBhZnRlciBjb2xvbiBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAia2jDtG5nIGPDsyBnw6wgbuG6sW0gc2F1IGThuqV1IGhhaSBjaOG6pW0gdHJvbmcgc+G7kSB0aOG7qSB04buxIHBoacOqbiBi4bqjbiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjQ3Cittc2dpZCAidmVyc2lvbiBudW1iZXIgZG9lcyBub3Qgc3RhcnQgd2l0aCBkaWdpdCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyNTAKK21zZ2lkICJpbnZhbGlkIGNoYXJhY3RlciBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAiZ+G6t3Aga8O9IHThu7Egc2FpIHRyb25nIHPhu5EgdGjhu6kgdOG7sSBwaGnDqm4gYuG6o24iCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjI1NAorbXNnaWQgImludmFsaWQgY2hhcmFjdGVyIGluIHJldmlzaW9uIG51bWJlciIKK21zZ3N0ciAiZ+G6t3Aga8O9IHThu7Egc2FpIHRyb25nIHPhu5EgdGjhu6kgdOG7sSBi4bqjbiBz4butYSDEkeG7lWkiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjI5OSBsaWIvZHBrZy9wYXJzZWhlbHAuYzozMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAibWlzc2luZyAlcyIKK21zZ3N0ciAidGhp4bq/dSAlcyIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MzAxIGxpYi9kcGtnL3BhcnNlaGVscC5jOjMxNAorIywgYy1mb3JtYXQKK21zZ2lkICJlbXB0eSB2YWx1ZSBmb3IgJXMiCittc2dzdHIgImdpw6EgdHLhu4sgcuG7l25nIGNobyAlcyIKKworIzogbGliL2Rwa2cvcGtnLWZvcm1hdC5jOjgwCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgY2hhcmFjdGVyIGAlYycgaW4gZmllbGQgd2lkdGhcbiIKK21zZ3N0ciAia8O9IHThu7Egc2FpIMKrICVjIMK7IHRyb25nIGNoaeG7gXUgcuG7mW5nIGPhu6dhIHRyxrDhu51uZ1xuIgorCisjOiBsaWIvZHBrZy9wa2ctZm9ybWF0LmM6MTcyCisjLCBjLWZvcm1hdAorbXNnaWQgIkNsb3NpbmcgYnJhY2UgbWlzc2luZyBpbiBmb3JtYXRcbiIKK21zZ3N0ciAiVGhp4bq/dSBk4bqldSDEkcOzbmcgbmdv4bq3YyBtw7NjIHRyb25nIMSR4buLbmggZOG6oW5nXG4iCisKKyM6IGxpYi9kcGtnL3BrZy1zaG93LmM6NDAKK21zZ2lkICIobm8gZGVzY3JpcHRpb24gYXZhaWxhYmxlKSIKK21zZ3N0ciAiKGtow7RuZyBjw7MgbcO0IHThuqMpIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGlnbm9yZSBzaWduYWwgJXMgYmVmb3JlIHJ1bm5pbmcgJS4yNTBzIgorbXNnc3RyICJraMO0bmcgdGjhu4MgYuG7jyBxdWEgdMOtbiBoaeG7h3UgJXMgdHLGsOG7m2Mga2hpIGNo4bqheSAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzo2OAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciB1bi1jYXRjaGluZyBzaWduYWwgJXM6ICVzXG4iCittc2dzdHIgImfhurdwIGzhu5dpIGtoaSBo4buneSBi4bqvdCB0w61uIGhp4buHdSAlczogJXNcbiIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjc4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIChzdWJwcm9jZXNzKTogJXNcbiIKK21zZ3N0ciAiJXMgKHRp4bq/biB0csOsbmggY29uKTogJXNcbiIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjg5IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo0NTQKK21zZ2lkICJmb3JrIGZhaWxlZCIKK21zZ3N0ciAibOG7l2kgdOG6oW8gdGnhur9uIHRyw6xuaCBjb24iCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMTkKKyMsIGMtZm9ybWF0Cittc2dpZCAic3VicHJvY2VzcyAlcyByZXR1cm5lZCBlcnJvciBleGl0IHN0YXR1cyAlZCIKK21zZ3N0ciAidGnhur9uIHRyw6xuaCBjb24gJXMgdHLhuqMgbOG6oWkgbOG7l2ksIHRy4bqhbmcgdGjDoWkgdGhvw6F0ICVkIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTI4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ3YWl0IGZvciBzdWJwcm9jZXNzICVzIGZhaWxlZCIKK21zZ2lkICJzdWJwcm9jZXNzICVzIHdhcyBpbnRlcnJ1cHRlZCIKK21zZ3N0ciAibOG7l2kgY2jhu50gdGnhur9uIHRyw6xuaCBwaOG7pSAlcyIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEzMAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic3VicHJvY2VzcyAlcyBraWxsZWQgYnkgc2lnbmFsICglcyklcyIKK21zZ2lkICJzdWJwcm9jZXNzICVzIHdhcyBraWxsZWQgYnkgc2lnbmFsICglcyklcyIKK21zZ3N0ciAidGnhur9uIHRyw6xuaCBjb24gJXMgYuG7iyBkaeG7h3QgYuG7n2kgdMOtbiBoaeG7h3UgKCVzKSVzIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTMyCittc2dpZCAiLCBjb3JlIGR1bXBlZCIKK21zZ3N0ciAiLCBsw7VpIGLhu4sgxJHhu5UiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAic3VicHJvY2VzcyAlcyBmYWlsZWQgd2l0aCB3YWl0IHN0YXR1cyBjb2RlICVkIgorbXNnc3RyICJ0aeG6v24gdHLDrG5oIGNvbiAlcyBi4buLIGzhu5dpIHbhu5tpIG3DoyB0cuG6oW5nIHRow6FpIGNo4budICVkIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTUxIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo0NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAid2FpdCBmb3Igc3VicHJvY2VzcyAlcyBmYWlsZWQiCittc2dzdHIgImzhu5dpIGNo4budIHRp4bq/biB0csOsbmggcGjhu6UgJXMiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgcGFja2FnZSBuYW1lIGAlLjI1MHMnIGluIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIiIKKyJ0w6puIGfDs2kga2jDtG5nIGjhu6NwIGzhu4cgwqsgJS4yNTBzIMK7IHRyb25nIHThuq1wIHRpbiBi4buZIGfDonkgbsOqbiB0csOsIGhvw6NuIMKrICUuMjUwcyDCuyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJ1bmNhdGVkIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgInThuq1wIHRpbiBi4buZIGfDonkgbsOqbiB0csOsIGhvw6NuIGLhu4sgY+G6r3Qgbmfhuq9uIMKrICUuMjUwcyDCuyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yIGluIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcycgYXQgY2hhcmFjdGVyIGAlcyclcyIKK21zZ3N0ciAiIgorImfhurdwIGzhu5dpIGPDuiBwaMOhcCB0cm9uZyB04bqtcCB0aW4gYuG7mSBnw6J5IG7Dqm4gdHLDrCBob8OjbiDCqyAlLjI1MHMgwrsg4bufIGvDvSB04buxIGAlcyclcyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuL2NyZWF0ZSB0cmlnZ2VycyBsb2NrZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia2jDtG5nIHRo4buDIG3hu58vdOG6oW8gdOG6rXAgdGluIGtob8OhIGLhu5kgZ8OieSBuw6puIMKrICUuMjUwcyDCuyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MTQxCisjLCBmdXp6eQorI3wgbXNnaWQgInRyaWdnZXJlZCIKK21zZ2lkICJ0cmlnZ2VycyBhcmVhIgorbXNnc3RyICLEkcOjIGfDonkgbsOqbiIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MTUxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImtow7RuZyB0aOG7gyBs4bqleSB0cuG6oW5nIHRow6FpIHbhu4EgdOG6rXAgdGluIGLhu5kgZ8OieSBuw6puIHRyw6wgaG/Do24gwqsgJS4yNTBzIMK7IgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia2jDtG5nIHRo4buDIG3hu58gdOG6rXAgdGluIGLhu5kgZ8OieSBuw6puIHRyw6wgaG/Do24gwqsgJS4yNTBzIMK7IgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4vY3JlYXRlIG5ldyB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJraMO0bmcgdGjhu4MgbeG7ny904bqhbyB04bqtcCB0aW4gYuG7mSBnw6J5IG7Dqm4gdHLDrCBob8OjbiBt4bubaSDCqyAlLjI1MHMgwrsiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjIxNQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciByZWFkaW5nIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImfhurdwIGzhu5dpIGtoaSDEkeG7jWMgdOG6rXAgdGluIGLhu5kgZ8OieSBuw6puIHRyw6wgaG/Do24gwqsgJS4yNTBzIMK7IgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoyMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ldyB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJraMO0bmcgdGjhu4MgbeG7nyB04bqtcCB0aW4gYuG7mSBnw6J5IG7Dqm4gdHLDrCBob8OjbiBt4bubaSDCqyAlLjI1MHMgwrsiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjIyOAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImtow7RuZyB0aOG7gyBt4bufIHThuq1wIHRpbiBi4buZIGfDonkgbsOqbiB0csOsIGhvw6NuIG3hu5tpIMKrICUuMjUwcyDCuyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MjMyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJraMO0bmcgdGjhu4MgY8OgaSDEkeG6t3QgdOG6rXAgdGluIGLhu5kgZ8OieSBuw6puIHRyw6wgaG/Do24gbeG7m2kgwqsgJS4yNTBzIMK7IgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MjIyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpbnZhbGlkIG9yIHVua25vd24gc3ludGF4IGluIHRyaWdnZXIgbmFtZSBgJS4yNTBzJyAoaW4gdHJpZ2dlciBpbnRlcmVzdHMgZm9yICIKKyJwYWNrYWdlIGAlLjI1MHMnKSIKK21zZ3N0ciAiIgorImfhurdwIGPDuiBwaMOhcCBraMO0bmcgaOG7o3AgbOG7hyBob+G6t2Mga2jDtG5nIHLDtSB0cm9uZyB0w6puIGLhu5kgZ8OieSBuw6puIMKrICUuMjUwcyAiCisiwrsgKHRyb25nIHPhu7EgcXVhbiB0w6JtIGLhu5kgZ8OieSBuw6puIMSR4buRaSB24bubaSBnw7NpIMKrICUuMjUwcyDCuyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjI2MworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiB0cmlnZ2VyIGludGVyZXN0IGxpc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAibOG7l2kgbeG7nyB04bqtcCB0aW4gZGFuaCBzw6FjaCBz4buxIHF1YW4gdMOibSBi4buZIGfDonkgbsOqbiDCqyAlLjI1MHMgwrsiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzoyOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJld2luZCB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgImzhu5dpIHF1YXkgdHLhuqMgbOG6oWkgdOG6rXAgdGluIGRhbmggc8OhY2ggc+G7sSBxdWFuIHTDom0gYuG7mSBnw6J5IG7Dqm4gwqsgJS4yNTBzIMK7IgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzA1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcycgc3ludGF4IGVycm9yOyBpbGxlZ2FsIHBhY2thZ2UgbmFtZSBgJS4yNTBzJzogIgorIiUuMjUwcyIKK21zZ3N0ciAiIgorImfhurdwIGzhu5dpIGPDuiBwaMOhcCB0cm9uZyB04bqtcCB0aW4gc+G7sSBxdWFuIHTDom0gYuG7mSBnw6J5IG7Dqm4gwqsgJS4yNTBzIMK7OyB0w6puIGfDs2kgY+G6pW0gIgorIsKrICUuMjUwcyDCuzogJS4yNTBzIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzE4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJraMO0bmcgdGjhu4Mgdmnhur90IHThuq1wIHRpbiBz4buxIHF1YW4gdMOibSBi4buZIGfDonkgbsOqbiBt4bubaSDCqyAlLjI1MHMgwrsiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMjEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgImtow7RuZyB0aOG7gyBjaHV54buDbiBo4bq/dCB04bqtcCB0aW4gc+G7sSBxdWFuIHTDom0gYuG7mSBnw6J5IG7Dqm4gbeG7m2kgwqsgJS4yNTBzIMK7IgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzI0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzeW5jIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgImtow7RuZyB0aOG7gyDEkeG7mW5nIGLhu5kgaG/DoSB04bqtcCB0aW4gc+G7sSBxdWFuIHTDom0gYuG7mSBnw6J5IG7Dqm4gbeG7m2kgwqsgJS4yNTBzIMK7IgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzMyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgImtow7RuZyB0aOG7gyBjw6BpIMSR4bq3dCB04bqtcCB0aW4gc+G7sSBxdWFuIHTDom0gYuG7mSBnw6J5IG7Dqm4gbeG7m2kgwqsgJS4yNTBzIMK7IgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzQwIGxpYi9kcGtnL3RyaWdsaWIuYzozNDIgbGliL2Rwa2cvdHJpZ2xpYi5jOjQ3MgorIzogc3JjL3JlbW92ZS5jOjI4NiBzcmMvcmVtb3ZlLmM6Mzc3CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZW1vdmUgYCUuMjUwcyciCittc2dzdHIgImtow7RuZyB0aOG7gyBn4buhIGLhu48gwqsgJS4yNTBzIMK7IgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzYwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia2jDtG5nIHRo4buDIHThuqFvIHThuq1wIHRpbiBz4buxIHF1YW4gdMOibSBi4buZIGfDonkgbsOqbiBt4bubaSDCqyAlLjI1MHMgwrsiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozODMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgImtow7RuZyB0aOG7gyDEkcOzbmcgdOG6rXAgdGluIHPhu7EgcXVhbiB0w6JtIGLhu5kgZ8OieSBuw6puIG3hu5tpIMKrICUuMjUwcyDCuyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ1NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHVwbGljYXRlIGZpbGUgdHJpZ2dlciBpbnRlcmVzdCBmb3IgZmlsZW5hbWUgYCUuMjUwcycgYW5kIHBhY2thZ2UgYCUuMjUwcyciCittc2dzdHIgIiIKKyJz4buxIHF1YW4gdMOibSBi4buZIGfDonkgbsOqbiB04bqtcCB0aW4gdHLDuW5nIMSR4buRaSB24bubaSB0w6puIHThuq1wIHRpbiDCqyAlLjI1MHMgwrsgdsOgIGfDs2kgwqsgIgorIiUuMjUwcyDCuyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ4MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImtow7RuZyB0aOG7gyB04bqhbyB04bqtcCB0aW4gYuG7mSBnw6J5IG7Dqm4gdOG6rXAgdGluIG3hu5tpIMKrICUuMjUwcyDCuyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ5MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia2jDtG5nIHRo4buDIHZp4bq/dCB04bqtcCB0aW4gYuG7mSBnw6J5IG7Dqm4gdOG6rXAgdGluIG3hu5tpIMKrICUuMjUwcyDCuyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ5NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAia2jDtG5nIHRo4buDIGNodXnhu4NuIGjhur90IHThuq1wIHRpbiBi4buZIGfDonkgbsOqbiB04bqtcCB0aW4gbeG7m2kgwqsgJS4yNTBzIMK7IgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDk5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzeW5jIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgJyUuMjUwcyciCittc2dzdHIgImtow7RuZyB0aOG7gyDEkeG7mW5nIGLhu5kgaG/DoSB04bqtcCB0aW4gYuG7mSBnw6J5IG7Dqm4gdOG6rXAgdGluIG3hu5tpIMKrICUuMjUwcyDCuyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjUwMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia2jDtG5nIHRo4buDIMSRw7NuZyB04bqtcCB0aW4gYuG7mSBnw6J5IG7Dqm4gdOG6rXAgdGluIG3hu5tpIMKrICUuMjUwcyDCuyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjUwNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGFzIGAlLjI1MHMnIgorbXNnc3RyICJraMO0bmcgdGjhu4MgY8OgaSDEkeG6t3QgdOG6rXAgdGluIGLhu5kgZ8OieSBuw6puIHThuq1wIHRpbiBt4bubaSBk4bqhbmcgwqsgJS4yNTBzIMK7IgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTQyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia2jDtG5nIHRo4buDIMSR4buNYyB04bqtcCB0aW4gYuG7mSBnw6J5IG7Dqm4gdOG6rXAgdGluIMKrICUuMjUwcyDCuyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjU1MgorIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJs4buXaSBjw7ogcGjDoXAgdHJvbmcgdOG6rXAgdGluIGLhu5kgZ8OieSBuw6puIHThuq1wIHRpbiDCqyAlLjI1MHMgwrsiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImZpbGUgdHJpZ2dlcnMgcmVjb3JkIG1lbnRpb25zIGlsbGVnYWwgcGFja2FnZSBuYW1lIGAlLjI1MHMnIChmb3IgaW50ZXJlc3QgaW4gIgorImZpbGUgYCUuMjUwcycpOiAlLjI1MHMiCittc2dzdHIgIiIKKyJt4bulYyBnaGkgYuG7mSBnw6J5IG7Dqm4gdOG6rXAgdGluIGNo4bupYSB0w6puIGfDs2kgY+G6pW0gwqsgJS4yNTBzIMK7ICjEkeG7kWkgduG7m2kgc+G7sSBxdWFuIHTDom0gIgorInRyb25nIHThuq1wIHRpbiDCqyAlLjI1MHMgwrspOiAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo2NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInRyaWdnZXJzIGNpIGZpbGUgYCUuMjUwcycgY29udGFpbnMgaWxsZWdhbCB0cmlnZ2VyIHN5bnRheCBpbiB0cmlnZ2VyIG5hbWUgYCIKKyIlLjI1MHMnOiAlLjI1MHMiCittc2dzdHIgIiIKKyJ04bqtcCB0aW4gY2kgYuG7mSBnw6J5IG7Dqm4gwqsgJS4yNTBzIMK7IGNo4bupYSBjw7ogcGjDoXAgYuG7mSBnw6J5IG7Dqm4gY+G6pW0gdHJvbmcgdMOqbiBi4buZICIKKyJnw6J5IG7Dqm4gwqsgJS4yNTBzIMK7OiAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo2ODQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gdHJpZ2dlcnMgY2kgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia2jDtG5nIHRo4buDIG3hu58gdOG6rXAgdGluIGNpIGLhu5kgZ8OieSBuw6puIMKrICUuMjUwcyDCuyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjY5OQorbXNnaWQgInRyaWdnZXJzIGNpIGZpbGUgY29udGFpbnMgdW5rbm93biBkaXJlY3RpdmUgc3ludGF4IgorbXNnc3RyICJ04bqtcCB0aW4gY2kgYuG7mSBnw6J5IG7Dqm4gY2jhu6lhIGPDuiBwaMOhcCBjaOG7iSB0aOG7iyBraMO0bmcgcsO1IgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NzEyCisjLCBjLWZvcm1hdAorbXNnaWQgInRyaWdnZXJzIGNpIGZpbGUgY29udGFpbnMgdW5rbm93biBkaXJlY3RpdmUgYCUuMjUwcyciCittc2dzdHIgInThuq1wIHRpbiBjaSBi4buZIGfDonkgbsOqbiBjaOG7qWEgY2jhu4kgdGjhu4sga2jDtG5nIHLDtSDCqyAlLjI1MHMgwrsiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo3NzYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSB0cmlnZ2VycyBzdGF0ZSBkaXJlY3RvcnkgYCUuMjUwcyciCittc2dzdHIgImtow7RuZyB0aOG7gyB04bqhbyB0aMawIG3hu6VjIHTDrG5oIHRy4bqhbmcgYuG7mSBnw6J5IG7Dqm4gwqsgJS4yNTBzIMK7IgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Nzc5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgb3duZXJzaGlwIG9mIHRyaWdnZXJzIHN0YXRlIGRpcmVjdG9yeSBgJS4yNTBzJyIKK21zZ3N0ciAiIgorImtow7RuZyB0aOG7gyDEkeG6t3QgcXV54buBbiBz4bufIGjhu691IGPhu6dhIHRoxrAgbeG7pWMgdMOsbmggdHLhuqFuZyBi4buZIGfDonkgbsOqbiDCqyAlLjI1MHMgwrsiCisKKyM6IGxpYi9kcGtnL3RyaWduYW1lLmM6MzQKK21zZ2lkICJlbXB0eSB0cmlnZ2VyIG5hbWVzIGFyZSBub3QgcGVybWl0dGVkIgorbXNnc3RyICJraMO0bmcgY2hvIHBow6lwIHTDqm4gYuG7mSBnw6J5IG7Dqm4gcuG7l25nIgorCisjOiBsaWIvZHBrZy90cmlnbmFtZS5jOjM4Cittc2dpZCAidHJpZ2dlciBuYW1lIGNvbnRhaW5zIGludmFsaWQgY2hhcmFjdGVyIgorbXNnc3RyICJ0w6puIGLhu5kgZ8OieSBuw6puIGNo4bupYSBrw70gdOG7sSBraMO0bmcgaOG7o3AgbOG7hyIKKworIzogbGliL2Rwa2cvdXRpbHMuYzo1NgorIywgYy1mb3JtYXQKK21zZ2lkICJyZWFkIGVycm9yIGluIGAlLjI1MHMnIgorbXNnc3RyICJs4buXaSDEkeG7jWMgdHJvbmcgwqsgJS4yNTBzIMK7IgorCisjOiBsaWIvZHBrZy91dGlscy5jOjYxCisjLCBjLWZvcm1hdAorbXNnaWQgImZnZXRzIGdhdmUgYW4gZW1wdHkgc3RyaW5nIGZyb20gYCUuMjUwcyciCittc2dzdHIgImZnZXRzIMSRxrBhIHJhIG3hu5l0IGNodeG7l2kgcuG7l25nIHThu6sgwqsgJS4yNTBzIMK7IgorCisjOiBsaWIvZHBrZy91dGlscy5jOjYzCisjLCBjLWZvcm1hdAorbXNnaWQgInRvby1sb25nIGxpbmUgb3IgbWlzc2luZyBuZXdsaW5lIGluIGAlLjI1MHMnIgorbXNnc3RyICJkw7JuZyBxdcOhIGTDoGkgaG/hurdjIGTDsm5nIG3hu5tpIGLhu4sgdGhp4bq/dSB0cm9uZyDCqyAlLjI1MHMgwrsiCisKKyM6IGxpYi9kcGtnL3V0aWxzLmM6NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgcmVhZGluZyBgJS4yNTBzJyIKK21zZ3N0ciAiZ+G6t3Aga+G6v3QgdGjDumMgdOG6rXAgdGluIGLhuqV0IHRoxrDhu51uZyBraGkgxJHhu41jIMKrICUuMjUwcyDCuyIKKworIzogbGliL2Rwa2cvdmFyYnVmLmM6ODIgbGliL2Rwa2cvdmFyYnVmLmM6ODgKK21zZ2lkICJlcnJvciBmb3JtYXR0aW5nIHN0cmluZyBpbnRvIHZhcmJ1ZiB2YXJpYWJsZSIKK21zZ3N0ciAiZ+G6t3AgbOG7l2kga2hpIMSR4buLbmggZOG6oW5nIGNodeG7l2kgc2FuZyBiaeG6v24gdmFyYnVmIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxNzkgc3JjL2FyY2hpdmVzLmM6MjAwIHNyYy9hcmNoaXZlcy5jOjcyNAorbXNnaWQgImVycm9yIHJlYWRpbmcgZnJvbSBkcGtnLWRlYiBwaXBlIgorbXNnc3RyICJn4bq3cCBs4buXaSBraGkgxJHhu41jIHThu6sg4buRbmcgZOG6q24gZHBrZy1kZWIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjE5NQorIywgYy1mb3JtYXQKK21zZ2lkICJza2lwcGVkIHVucGFja2luZyBmaWxlICclLjI1NXMnIChyZXBsYWNlZCBvciBleGNsdWRlZD8pIgorbXNnc3RyICIiCisixJHDoyBi4buPIHF1YSBixrDhu5tjIGdp4bqjaSBuw6luIHThuq1wIHRpbiDCqyAlLjI1NXMgwrsgKGLhu4sgdGhheSB0aOG6vyBob+G6t2MgYuG7iyBsb+G6oWkgdHLhu6sgPykiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjI0NiBzcmMvYXJjaGl2ZXMuYzoyNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igc2V0dGluZyB0aW1lc3RhbXBzIG9mIGAlLjI1NXMnIgorbXNnc3RyICJn4bq3cCBs4buXaSBraGkgxJHhurd0IG5ow6NuIHRo4budaSBnaWFuIGPhu6dhIMKrICUuMjU1cyDCuyIKKworIzogc3JjL2FyY2hpdmVzLmM6MjYyCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHNldHRpbmcgb3duZXJzaGlwIG9mIHN5bWxpbmsgYCUuMjU1cyciCittc2dzdHIgImzhu5dpIHRoaeG6v3QgbOG6rXAgcXV54buBbiBz4bufIGjhu691IGxpw6puIGvhur90IHTGsOG7o25nIHRyxrBuZyDCqyAlLjI1NXMgwrsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjI2NSBzcmMvYXJjaGl2ZXMuYzo3MzQgc3JjL3N0YXRjbWQuYzoxNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igc2V0dGluZyBvd25lcnNoaXAgb2YgYCUuMjU1cyciCittc2dzdHIgImfhurdwIGzhu5dpIGtoaSDEkeG6t3QgcXV54buBbiBz4bufIGjhu691IMKrICUuMjU1cyDCuyIKKworIzogc3JjL2FyY2hpdmVzLmM6MjY3IHNyYy9hcmNoaXZlcy5jOjczNiBzcmMvc3RhdGNtZC5jOjE2NQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIHBlcm1pc3Npb25zIG9mIGAlLjI1NXMnIgorbXNnc3RyICJn4bq3cCBs4buXaSBraGkgxJHhurd0IHF1eeG7gW4gaOG6oW4gY+G7p2EgwqsgJS4yNTVzIMK7IgorCisjOiBzcmMvYXJjaGl2ZXMuYzozOTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHN0YXQgKGRlcmVmZXJlbmNlKSBleGlzdGluZyBzeW1saW5rIGAlLjI1MHMnIgorbXNnc3RyICIiCisibOG7l2kgbOG6pXkgdHLhuqFuZyB0aMOhaSB24buBIChn4buhIGLhu48gdGhhbSBjaGnhur91IMSR4bq/bikgbGnDqm4ga+G6v3QgdMaw4bujbmcgdHLGsG5nIMSRw6MgdOG7k24gdOG6oWkgIgorIsKrICUuMjUwcyDCuyIKKworIzogc3JjL2FyY2hpdmVzLmM6NDE3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmYWlsZWQgdG8gc3RhdCAoZGVyZWZlcmVuY2UpIHByb3Bvc2VkIG5ldyBzeW1saW5rIHRhcmdldCBgJS4yNTBzJyBmb3IgIgorInN5bWxpbmsgYCUuMjUwcyciCittc2dzdHIgIiIKKyJs4buXaSBs4bqleSB0cuG6oW5nIHRow6FpIHbhu4EgKGfhu6EgYuG7jyB0aGFtIGNoaeG6v3UgxJHhur9uKSDEkcOtY2ggbGnDqm4ga+G6v3QgdMaw4bujbmcgdHLGsG5nIG3hu5tpICIKKyLEkcOjIMSR4buBIG5naOG7iyDCqyAlLjI1MHMgwrsgxJHhu5FpIHbhu5tpIGxpw6puIGvhur90IHTGsOG7o25nIHRyxrBuZyDCqyAlLjI1MHMgwrsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjQ3NQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgInRyeWluZyB0byBvdmVyd3JpdGUgYCUuMjU1cycsIHdoaWNoIGlzIHRoZSBkaXZlcnRlZCB2ZXJzaW9uIG9mIGAiCisjfCAiJS4yNTBzJyAocGFja2FnZTogJS4xMDBzKSIKK21zZ2lkICIiCisidHJ5aW5nIHRvIG92ZXJ3cml0ZSBgJS4yNTBzJywgd2hpY2ggaXMgdGhlIGRpdmVydGVkIHZlcnNpb24gb2YgYCIKKyIlLjI1MHMnIChwYWNrYWdlOiAlLjEwMHMpIgorbXNnc3RyICIiCisixJFhbmcgdGjhu60gZ2hpIMSRw6ggbMOqbiDCqyAlLjI1MHMgwrssIHBoacOqbiBi4bqjbiDEkcOjIGNodXnhu4NuIGjGsOG7m25nIGPhu6dhIMKrICUuMjUwcyAiCisiwrsgKGfDs2k6ICUuMTAwcykiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjQ4MQorIywgYy1mb3JtYXQKK21zZ2lkICJ0cnlpbmcgdG8gb3ZlcndyaXRlIGAlLjI1MHMnLCB3aGljaCBpcyB0aGUgZGl2ZXJ0ZWQgdmVyc2lvbiBvZiBgJS4yNTBzJyIKK21zZ3N0ciAiIgorIsSRYW5nIHRo4butIGdoaSDEkcOoIGzDqm4gwqsgJS4yNTBzIMK7LCBwaGnDqm4gYuG6o24gxJHDoyBjaHV54buDbiBoxrDhu5tuZyBj4bunYSDCqyAlLjI1MHMgwrsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjUxMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBgJS4yNTVzJyAod2hpY2ggSSB3YXMgYWJvdXQgdG8gaW5zdGFsbCkiCittc2dzdHIgImtow7RuZyB0aOG7gyBs4bqleSB0cuG6oW5nIHRow6FpIHbhu4EgwqsgJS4yNTVzIMK7IChtw6AgdHLDrG5oIG7DoHkgc+G6r3AgY8OgaSDEkeG6t3QpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo1MTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVuYWJsZSB0byBjbGVhbiB1cCBtZXNzIHN1cnJvdW5kaW5nIGAlLjI1NXMnIGJlZm9yZSBpbnN0YWxsaW5nIGFub3RoZXIgIgorInZlcnNpb24iCittc2dzdHIgIiIKKyJraMO0bmcgdGjhu4MgZOG7jW4gZOG6uXAgc+G7sSBs4buZbiB44buZbiBxdWFuaCDCqyAlLjI1NXMgwrsgdHLGsOG7m2Mga2hpIGPDoGkgxJHhurd0IHBoacOqbiBi4bqjbiAiCisia2jDoWMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjUyNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCByZXN0b3JlZCBgJS4yNTVzJyBiZWZvcmUgaW5zdGFsbGluZyBhbm90aGVyIHZlcnNpb24iCittc2dzdHIgIiIKKyJraMO0bmcgdGjhu4MgbOG6pXkgdHLhuqFuZyB0aMOhaSB24buBIMKrICUuMjU1cyDCuyDEkcOjIHBo4bulYyBo4buTaSB0csaw4bubYyBraGkgY8OgaSDEkeG6t3QgcGhpw6puICIKKyJi4bqjbiBraMOhYyIKKworIzogc3JjL2FyY2hpdmVzLmM6NTYxCisjLCBjLWZvcm1hdAorbXNnaWQgImFyY2hpdmUgY29udGFpbmVkIG9iamVjdCBgJS4yNTVzJyBvZiB1bmtub3duIHR5cGUgMHgleCIKK21zZ3N0ciAia2hvIG7DqW4gY2jhu6lhIMSR4buRaSB0xrDhu6NuZyDCqyAlLjI1NXMgwrsgY8OzIGtp4buDdSBraMO0bmcgcsO1IDB4JXgiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjYyNiBzcmMvZGl2ZXJ0Y21kLmM6MTUwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo2ODIKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjIyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjg0CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTQ0MSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTY4MAorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxNjcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNDQKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTI3CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzdGF0IGZpbGUgJyVzJyIKK21zZ3N0ciAia2jDtG5nIHRo4buDIGzhuqV5IHRy4bqhbmcgdGjDoWkgduG7gSB04bqtcCB0aW4gwqsgJXMgwrsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjY0MQorIywgYy1mb3JtYXQKK21zZ2lkICJSZXBsYWNpbmcgZmlsZXMgaW4gb2xkIHBhY2thZ2UgJXMgLi4uXG4iCittc2dzdHIgIsSQYW5nIHRoYXkgdGjhur8gY8OhYyB04bqtcCB0aW4gdHJvbmcgZ8OzaSBjxakgJXMgLi4uXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjY0NQorIywgYy1mb3JtYXQKK21zZ2lkICJSZXBsYWNlZCBieSBmaWxlcyBpbiBpbnN0YWxsZWQgcGFja2FnZSAlcyAuLi5cbiIKK21zZ3N0ciAixJDGsOG7o2MgdGhheSB0aOG6vyBi4bqxbmcgY8OhYyB04bqtcCB0aW4gdHJvbmcgZ8OzaSDEkcOjIGPDoGkgxJHhurd0ICVzIC4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInRyeWluZyB0byBvdmVyd3JpdGUgZGlyZWN0b3J5ICclLjI1MHMnIGluIHBhY2thZ2UgJS4yNTBzICUuMjUwcyB3aXRoICIKKyJub25kaXJlY3RvcnkiCittc2dzdHIgIiIKKyLEkWFuZyBj4buRIGdoaSDEkcOoIGzDqm4gdGjGsCBt4bulYyDCqyAlLjI1MHMgwrsgdHJvbmcgZ8OzaSAlLjI1MHMgJS4yNTBzIHbhu5tpIMSRaeG7gXUga2jDoWMgIgorInRoxrAgbeG7pWMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjY2MQorIywgYy1mb3JtYXQKK21zZ2lkICJ0cnlpbmcgdG8gb3ZlcndyaXRlICclLjI1MHMnLCB3aGljaCBpcyBhbHNvIGluIHBhY2thZ2UgJS4yNTBzICUuMjUwcyIKK21zZ3N0ciAixJFhbmcgY+G7kSBnaGkgxJHDqCBsw6puIMKrICUuMjUwcyDCuywgbcOgIGPFqW5nIG7hurFtIHRyb25nIGfDs2kgJS4yNTBzICUuMjUwcyIKKworIzogc3JjL2FyY2hpdmVzLmM6NzExCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgYCUuMjU1cycgKHdoaWxlIHByb2Nlc3NpbmcgYCUuMjU1cycpIgorbXNnc3RyICJraMO0bmcgdOG6oW8gxJHGsOG7o2MgwqsgJS4yNTVzIMK7ICh0cm9uZyBraGkgeOG7rSBsw70gwqsgJS4yNTVzIMK7KSIKKworIzogc3JjL2FyY2hpdmVzLmM6NzE4CisjLCBjLWZvcm1hdAorbXNnaWQgImJhY2tlbmQgZHBrZy1kZWIgZHVyaW5nIGAlLjI1NXMnIgorbXNnc3RyICJo4bqtdSBwaMawxqFuZyBkcGtnLWRlYiB0cm9uZyB0aeG6v24gdHLDrG5oIMKrICUuMjU1cyDCuyIKKworIzogc3JjL2FyY2hpdmVzLmM6NzQ0IHNyYy9hcmNoaXZlcy5jOjkwOCBzcmMvYXJjaGl2ZXMuYzo5NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZy93cml0aW5nIGAlLjI1NXMnIgorbXNnc3RyICJs4buXaSDEkcOzbmcvZ2hpIMKrICUuMjU1cyDCuyIKKworIzogc3JjL2FyY2hpdmVzLmM6NzQ4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIHBpcGUgYCUuMjU1cyciCittc2dzdHIgImzhu5dpIHThuqFvIOG7kW5nIGThuqtuIMKrICUuMjU1cyDCuyIKKworIzogc3JjL2FyY2hpdmVzLmM6NzUzIHNyYy9hcmNoaXZlcy5jOjc1OAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBkZXZpY2UgYCUuMjU1cyciCittc2dzdHIgImzhu5dpIHThuqFvIHRoaeG6v3QgYuG7iyDCqyAlLjI1NXMgwrsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc3MQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBoYXJkIGxpbmsgYCUuMjU1cyciCittc2dzdHIgImzhu5dpIHThuqFvIGxpw6puIGvhur90IGPhu6luZyDCqyAlLjI1NXMgwrsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc3NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NTM5CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIHN5bWJvbGljIGxpbmsgYCUuMjU1cyciCittc2dzdHIgImzhu5dpIHThuqFvIGxpw6puIGvhur90IHTGsOG7o25nIHRyxrBuZyDCqyAlLjI1NXMgwrsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc4MworIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBkaXJlY3RvcnkgYCUuMjU1cyciCittc2dzdHIgImzhu5dpIHThuqFvIHRoxrAgbeG7pWMgwqsgJS4yNTVzIMK7IgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4MjIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG1vdmUgYXNpZGUgYCUuMjU1cycgdG8gaW5zdGFsbCBuZXcgdmVyc2lvbiIKK21zZ3N0ciAia2jDtG5nIHRo4buDIGRpIGNodXnhu4NuIMKrICUuMjU1cyDCuyByacOqbmcgcmEgxJHhu4MgY8OgaSDEkeG6t3QgcGhpw6puIGLhuqNuIG3hu5tpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4MzIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjMyMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBsaW5rIGAlLjI1NXMnIgorbXNnc3RyICJraMO0bmcgdGjhu4MgxJHhu41jIGxpw6puIGvhur90IMKrICUuMjU1cyDCuyIKKworIzogc3JjL2FyY2hpdmVzLmM6ODM0IHNyYy9jb25maWd1cmUuYzo0MjMKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ltYm9saWMgbGluayAnJS4yNTBzJyBzaXplIGhhcyBjaGFuZ2VkIGZyb20gJWpkIHRvICV6ZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG1ha2UgYmFja3VwIHN5bWxpbmsgZm9yIGAlLjI1NXMnIgorbXNnc3RyICJraMO0bmcgdGjhu4MgdOG6oW8gbGnDqm4ga+G6v3QgdMaw4bujbmcgdHLGsG5nIHNhbyBsxrB1IGNobyDCqyAlLjI1NXMgwrsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjg0MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hvd24gYmFja3VwIHN5bWxpbmsgZm9yIGAlLjI1NXMnIgorbXNnc3RyICIiCisia2jDtG5nIHRo4buDIGNob3duIChjaHV54buDbiDEkeG7lWkgdMOtbmggdHLhuqFuZyBz4bufIGjhu691KSBsacOqbiBr4bq/dCB0xrDhu6NuZyB0csawbmcgc2FvIGzGsHUgIgorImNobyDCqyAlLjI1NXMgwrsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjg0NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gbWFrZSBiYWNrdXAgbGluayBvZiBgJS4yNTVzJyBiZWZvcmUgaW5zdGFsbGluZyBuZXcgdmVyc2lvbiIKK21zZ3N0ciAiIgorImtow7RuZyB0aOG7gyB04bqhbyBsacOqbiBr4bq/dCB0xrDhu6NuZyB0csawbmcgc2FvIGzGsHUgY+G7p2EgwqsgJS4yNTVzIMK7IHRyxrDhu5tjIGtoaSBjw6BpIMSR4bq3dCAiCisicGhpw6puIGLhuqNuIG3hu5tpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4NjMgc3JjL2FyY2hpdmVzLmM6OTU3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyB2ZXJzaW9uIG9mIGAlLjI1NXMnIgorbXNnc3RyICJraMO0bmcgdGjhu4MgY8OgaSDEkeG6t3QgcGhpw6puIGLhuqNuIG3hu5tpIGPhu6dhIMKrICUuMjU1cyDCuyIKKworIzogc3JjL2FyY2hpdmVzLmM6OTAyIHNyYy9hcmNoaXZlcy5jOjk0NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiAnJS4yNTVzJyIKK21zZ3N0ciAia2jDtG5nIHRo4buDIG3hu58gwqsgJS4yNTVzIMK7IgorCisjOiBzcmMvYXJjaGl2ZXMuYzo5NDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgZmlsZSAnJS4yNTVzJyIKK21zZ3N0ciAia2jDtG5nIHRo4buDIMSR4buZbmcgYuG7mSBob8OhIHThuq1wIHRpbiDCqyAlLjI1NXMgwrsiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImlnbm9yaW5nIGRlcGVuZGVuY3kgcHJvYmxlbSB3aXRoICVzOlxuIgorIiVzIgorbXNnc3RyICIiCisixJFhbmcgbOG7nSB24bqlbiDEkeG7gSBxdWFuIGjhu4cgcGjhu6UgdGh14buZYyB24buBICVzOlxuIgorIiVzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDA1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJjb25zaWRlcmluZyBkZWNvbmZpZ3VyYXRpb24gb2YgZXNzZW50aWFsXG4iCisiIHBhY2thZ2UgJXMsIHRvIGVuYWJsZSAlcy4iCittc2dzdHIgIiIKKyJjb2kgbmjGsCBo4buneSBj4bqldSBow6xuaCBj4bunYSBnw7NpIGPhu5F0IHnhur91ICVzLFxuIgorIsSR4buDIGhp4buHdSBs4buxYyAlcy4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IG5vLCAlcyBpcyBlc3NlbnRpYWwsIHdpbGwgbm90IGRlY29uZmlndXJlXG4iCisiIGl0IGluIG9yZGVyIHRvIGVuYWJsZSAlcy5cbiIKK21zZ3N0ciAiIgorImRwa2c6IGtow7RuZywgJXMgbMOgIGPhu5F0IHnhur91LCBz4bq9IGtow7RuZyBo4buneVxuIgorImPhuqV1IGjDrG5oIG7DsyDEkeG7gyBoaeG7h3UgbOG7sWMgJXMuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IG5vLCBjYW5ub3QgcHJvY2VlZCB3aXRoICVzICgtLWF1dG8tZGVjb25maWd1cmUgd2lsbCBoZWxwKTpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6IGtow7RuZywga2jDtG5nIHRo4buDIHRp4bq/cCB04bulYyAlcyAowqsgLS1hdXRvLWRlY29uZmlndXJlIMK7IFt04buxIMSR4buZbmcgaOG7p3kgY+G6pXUgIgorImjDrG5oXSBz4bq9IGdpw7pwKTpcbiIKKyIlcyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAzMgorIywgYy1mb3JtYXQKK21zZ2lkICJyZW1vdmFsIG9mICUuMjUwcyIKK21zZ3N0ciAidmnhu4djIGfhu6EgYuG7jyAlLjI1MHMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW5zdGFsbGF0aW9uIG9mICUuMjUwcyIKK21zZ3N0ciAidmnhu4djIGPDoGkgxJHhurd0ICUuMjUwcyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA1OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogY29uc2lkZXJpbmcgZGVjb25maWd1cmF0aW9uIG9mICVzLCB3aGljaCB3b3VsZCBiZSBicm9rZW4gYnkgJXMgLi4uXG4iCittc2dzdHIgImRwa2c6IGNvaSBuaMawIGjhu6d5IGPhuqV1IGjDrG5oICVzLCBtw6Agc+G6vSBi4buLICVzIHbhu6EgLi4uXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogeWVzLCB3aWxsIGRlY29uZmlndXJlICVzIChicm9rZW4gYnkgJXMpLlxuIgorbXNnc3RyICJkcGtnOiBjw7MsIHPhur0gaOG7p3kgY+G6pXUgaMOsbmggJXMgKGLhu4sgJXMgduG7oSkuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNjkgc3JjL2FyY2hpdmVzLmM6MTE4NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogcmVnYXJkaW5nICVzIGNvbnRhaW5pbmcgJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiB24buBIHRyxrDhu51uZyBo4bujcCAlcyBjaOG7qWEgJXM6XG4iCisiJXMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNzcKK21zZ2lkICJpZ25vcmluZyBicmVha2FnZSwgbWF5IHByb2NlZWQgYW55d2F5ISIKK21zZ3N0ciAixJFhbmcgbOG7nSB0csaw4budbmcgaOG7o3AgduG7oSwgduG6q24gY8OzIHRo4buDIHRp4bq/cCB04bulYyBs4bqhaS4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImluc3RhbGxpbmcgJS4yNTBzIHdvdWxkIGJyZWFrICUuMjUwcywgYW5kXG4iCisiIGRlY29uZmlndXJhdGlvbiBpcyBub3QgcGVybWl0dGVkICgtLWF1dG8tZGVjb25maWd1cmUgbWlnaHQgaGVscCkiCittc2dzdHIgIiIKKyJjw6BpIMSR4bq3dCAlLjI1MHMgbsOqbiB24buhICUuMjUwcywgY8Wpbmcga2jDtG5nIGNobyBwaMOpcFxuIgorImjhu6d5IGPhuqV1IGjDrG5oICjCqyAtLWF1dG8tZGVjb25maWd1cmUgwrsgW3Thu7EgxJHhu5luZyBo4buneSBj4bqldSBow6xuaF0gc+G6vSBnacO6cCkiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW5zdGFsbGluZyAlLjI1MHMgd291bGQgYnJlYWsgZXhpc3Rpbmcgc29mdHdhcmUiCittc2dzdHIgImPDoGkgxJHhurd0ICUuMjUwcyBuw6puIHbhu6EgcGjhuqduIG3hu4FtIMSRw6MgY8OzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTE2CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IGNvbnNpZGVyaW5nIHJlbW92aW5nICVzIGluIGZhdm91ciBvZiAlcyAuLi5cbiIKK21zZ3N0ciAiZHBrZzogY29pIG5oxrAgZ+G7oSBi4buPICVzIMSR4buDIOG7p25nIGjhu5kgJXMgLi4uXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgaXMgbm90IHByb3Blcmx5IGluc3RhbGxlZCAtIGlnbm9yaW5nIGFueSBkZXBlbmRlbmNpZXMgb24gaXQuXG4iCittc2dzdHIgIiVzIGNoxrBhIGPDoGkgxJHhurd0IMSRw7puZyA6IGzhu50gxJFpIMSRaeG7gXUgbsOgbyBwaOG7pSB0aHXhu5ljIHbDoG8gbsOzLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTUxCisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IG1heSBoYXZlIHRyb3VibGUgcmVtb3ZpbmcgJXMsIGFzIGl0IHByb3ZpZGVzICVzIC4uLlxuIgorbXNnc3RyICJkcGtnOiBjw7MgdGjhu4MgZ+G6t3Aga2jDsyBraMSDbiB0cm9uZyB2aeG7h2MgZ+G7oSBi4buPICVzLCB2w6wgbsOzIGN1bmcgY+G6pXAgJXMgLi4uXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IHBhY2thZ2UgJXMgcmVxdWlyZXMgcmVpbnN0YWxsYXRpb24sIGJ1dCB3aWxsIHJlbW92ZSBhbnl3YXkgYXMgeW91ICIKKyJyZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiIKKyJkcGtnOiBnw7NpICVzIHnDqnUgY+G6p3UgY8OgaSDEkeG6t3QgbOG6oWksIG5oxrBuZyBz4bq9IHbhuqtuIGfhu6EgYuG7jyBuw7MgdGhlbyB5w6p1IGPhuqd1IGPhu6dhICIKKyJi4bqhbi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE2OQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiBwYWNrYWdlICVzIHJlcXVpcmVzIHJlaW5zdGFsbGF0aW9uLCB3aWxsIG5vdCByZW1vdmUuXG4iCittc2dzdHIgImRwa2c6IGfDs2kgJXMgecOqdSBj4bqndSBjw6BpIMSR4bq3dCBs4bqhaSBuw6puIHPhur0ga2jDtG5nIGfhu6EgYuG7jy5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE3OAorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiB5ZXMsIHdpbGwgcmVtb3ZlICVzIGluIGZhdm91ciBvZiAlcy5cbiIKK21zZ3N0ciAiZHBrZzogY8OzLCBz4bq9IGfhu6EgYuG7jyAlcyDEkeG7gyDhu6duZyBo4buZICVzLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTkwCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZsaWN0aW5nIHBhY2thZ2VzIC0gbm90IGluc3RhbGxpbmcgJS4yNTBzIgorbXNnc3RyICJnw7NpIHh1bmcgxJHhu5l0IHbhu5tpIG5oYXUgbsOqbiBraMO0bmcgY8OgaSDEkeG6t3QgJS4yNTBzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTkxCittc2dpZCAiaWdub3JpbmcgY29uZmxpY3QsIG1heSBwcm9jZWVkIGFueXdheSEiCittc2dzdHIgIsSRYW5nIGzhu50gdHLGsOG7nW5nIGjhu6NwIHh1bmcgxJHhu5l0LCB24bqrbiBjw7MgdGjhu4MgdGnhur9wIHThu6VjIGzhuqFpLiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTIzNQorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIC0tcmVjdXJzaXZlIG5lZWRzIGF0IGxlYXN0IG9uZSBwYXRoIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIC0tcmVjdXJzaXZlICjEkeG7hyBxdXkpIGPhuqduIMOtdCBuaOG6pXQgbeG7mXQgdGhhbSBz4buRIMSRxrDhu51uZyBk4bqrbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI0NQorbXNnaWQgImZpbmQgZm9yIGRwa2cgLS1yZWN1cnNpdmUiCittc2dzdHIgInTDrG0gY2hvIGRwa2cgLS1yZWN1cnNpdmUgKMSR4buHIHF1aSkiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNjYKK21zZ2lkICJmYWlsZWQgdG8gZmRvcGVuIGZpbmQncyBwaXBlIgorbXNnc3RyICJs4buXaSBmZG9wZW4g4buRbmcgZOG6q24gY+G7p2EgZmluZCAodMOsbSkiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNzIKK21zZ2lkICJlcnJvciByZWFkaW5nIGZpbmQncyBwaXBlIgorbXNnc3RyICJn4bq3cCBs4buXaSBraGkgxJHhu41jIOG7kW5nIGThuqtuIGPhu6dhIGZpbmQgKHTDrG0pIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjczCittc2dpZCAiZXJyb3IgY2xvc2luZyBmaW5kJ3MgcGlwZSIKK21zZ3N0ciAiZ+G6t3AgbOG7l2kga2hpIMSRw7NuZyDhu5FuZyBk4bqrbiBj4bunYSBmaW5kICh0w6xtKSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3NgorIywgYy1mb3JtYXQKK21zZ2lkICJmaW5kIGZvciAtLXJlY3Vyc2l2ZSByZXR1cm5lZCB1bmhhbmRsZWQgZXJyb3IgJWkiCittc2dzdHIgIiIKKyJ2aeG7h2MgZmluZCAodMOsbSkgY2hvIMKrIC0tcmVjdXJzaXZlIMK7ICjEkeG7hyBxdWkpIHRy4bqjIGzhuqFpIGzhu5dpIGtow7RuZyDEkcaw4bujYyBxdeG6o24gbMO9ICIKKyIlaSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3OQorbXNnaWQgInNlYXJjaGVkLCBidXQgZm91bmQgbm8gcGFja2FnZXMgKGZpbGVzIG1hdGNoaW5nICouZGViKSIKK21zZ3N0ciAixJHDoyB0w6xtIGtp4bq/bSwgbmjGsG5nIGtow7RuZyB0w6xtIHRo4bqleSBnw7NpIG7DoG8gKHThuq1wIHRpbiBraOG7m3AgduG7m2kgKi5kZWIpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjkwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYXQgbGVhc3Qgb25lIHBhY2thZ2UgYXJjaGl2ZSBmaWxlIGFyZ3VtZW50IgorbXNnc3RyICLCqyAtLSVzIMK7IGPhuqduIMOtdCBuaOG6pXQgbeG7mXQgxJHhu5FpIHPhu5Ega2nhu4N1IHThuq1wIHRpbiBraG8gbMawdSBnw7NpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzI1IHNyYy9kaXZlcnRjbWQuYzo3OCBzcmMvZGl2ZXJ0Y21kLmM6MTE4CisjOiBzcmMvZW5xdWlyeS5jOjE2NiBzcmMvZW5xdWlyeS5jOjI3OSBzcmMvZW5xdWlyeS5jOjQ0OSBzcmMvZW5xdWlyeS5jOjQ1MQorIzogc3JjL2VucXVpcnkuYzo0NjQgc3JjL21haW4uYzo2NiBzcmMvbWFpbi5jOjE2MyBzcmMvbWFpbi5jOjMxNAorIzogc3JjL21haW4uYzo0OTMgc3JjL3BhY2thZ2VzLmM6MjU0IHNyYy9xdWVyeWNtZC5jOjI1MiBzcmMvcXVlcnljbWQuYzozNTUKKyM6IHNyYy9xdWVyeWNtZC5jOjM5NiBzcmMvcXVlcnljbWQuYzo0MDQgc3JjL3F1ZXJ5Y21kLmM6NDQ4IHNyYy9xdWVyeWNtZC5jOjUxNworIzogc3JjL3F1ZXJ5Y21kLmM6NjA2IHNyYy9xdWVyeWNtZC5jOjY1MCBzcmMvc2VsZWN0LmM6Nzkgc3JjL3N0YXRjbWQuYzo2OAorIzogc3JjL3N0YXRjbWQuYzo5OCBzcmMvdHJpZ2NtZC5jOjU4IHNyYy90cmlnY21kLmM6OTAgZHBrZy1kZWIvYnVpbGQuYzo0NDEKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyMTcgZHBrZy1kZWIvZXh0cmFjdC5jOjI1MCBkcGtnLWRlYi9pbmZvLmM6MjAzCisjOiBkcGtnLWRlYi9pbmZvLmM6MjY1IGRwa2ctZGViL21haW4uYzo2MCBkcGtnLWRlYi9tYWluLmM6MTI2CisjOiBkcGtnLXNwbGl0L2luZm8uYzoyNTcgZHBrZy1zcGxpdC9tYWluLmM6NTQgZHBrZy1zcGxpdC9tYWluLmM6OTgKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxNDQgZHBrZy1zcGxpdC9xdWV1ZS5jOjI4MAorbXNnaWQgIjxzdGFuZGFyZCBvdXRwdXQ+IgorbXNnc3RyICI8xJHhuqd1IHJhIHRpw6p1IGNodeG6qW4+IgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzI2IHNyYy9wYWNrYWdlcy5jOjI1NSBzcmMvcXVlcnljbWQuYzoyNTMKKyM6IHNyYy9xdWVyeWNtZC5jOjM1MyBzcmMvcXVlcnljbWQuYzo0NTQgc3JjL3F1ZXJ5Y21kLmM6NTE4IHNyYy9zZWxlY3QuYzo4MAorIzogZHBrZy1zcGxpdC9tYWluLmM6MTY5IGRwa2ctc3BsaXQvcXVldWUuYzoyMTgKK21zZ2lkICI8c3RhbmRhcmQgZXJyb3I+IgorbXNnc3RyICI8xJHhuqd1IGzhu5dpIHRpw6p1IGNodeG6qW4+IgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzY3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJTZWxlY3RpbmcgcHJldmlvdXNseSBkZXNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dpZCAiU2VsZWN0aW5nIHByZXZpb3VzbHkgdW5zZWxlY3RlZCBwYWNrYWdlICVzLlxuIgorbXNnc3RyICLEkGFuZyBjaOG7jW4gZ8OzaSDEkcOjIGjhu6d5IGNo4buNbiB0csaw4bubYyDEkcOieSAlcy5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTM3MQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiU2tpcHBpbmcgZGVzZWxlY3RlZCBwYWNrYWdlICVzLlxuIgorbXNnaWQgIlNraXBwaW5nIHVuc2VsZWN0ZWQgcGFja2FnZSAlcy5cbiIKK21zZ3N0ciAixJBhbmcgYuG7jyBxdWEgZ8OzaSDEkcOjIGjhu6d5IGNo4buNbiAlcy5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTM4NworIywgYy1mb3JtYXQKK21zZ2lkICJWZXJzaW9uICUuMjUwcyBvZiAlLjI1MHMgYWxyZWFkeSBpbnN0YWxsZWQsIHNraXBwaW5nLlxuIgorbXNnc3RyICJQaGnDqm4gYuG6o24gJS4yNTBzIGPhu6dhICUuMjUwcyDEkcOjIMSRxrDhu6NjIGPDoGkgxJHhurd0IG7Dqm4gYuG7jyBxdWEuXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzOTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZG93bmdyYWRpbmcgJS4yNTBzIGZyb20gJS4yNTBzIHRvICUuMjUwcy4iCittc2dzdHIgIsSRYW5nIGjhuqEgdGjhuqVwIHBoacOqbiBi4bqjbiAlLjI1MHMgdOG7qyAlLjI1MHMgeHXhu5FuZyAlLjI1MHMuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxNDAyCisjLCBjLWZvcm1hdAorbXNnaWQgIldpbGwgbm90IGRvd25ncmFkZSAlLjI1MHMgZnJvbSB2ZXJzaW9uICUuMjUwcyB0byAlLjI1MHMsIHNraXBwaW5nLlxuIgorbXNnc3RyICIiCisiU+G6vSBraMO0bmcgaOG6oSB0aOG6pXAgcGhpw6puIGLhuqNuICUuMjUwcyB04burIHBoacOqbiBi4bqjbiAlLjI1MHMgeHXhu5FuZyAlLjI1MHMgbsOqbiBi4buPICIKKyJxdWEuXG4iCisKKyM6IHNyYy9jbGVhbnVwLmM6ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVuYWJsZSB0byByZW1vdmUgbmV3bHktaW5zdGFsbGVkIHZlcnNpb24gb2YgYCUuMjUwcycgdG8gYWxsb3cgcmVpbnN0YWxsYXRpb24gIgorIm9mIGJhY2t1cCBjb3B5IgorbXNnc3RyICIiCisia2jDtG5nIHRo4buDIGfhu6EgYuG7jyBwaGnDqm4gYuG6o24gbeG7m2kgY8OgaSDEkeG6t3QgY+G7p2EgwqsgJS4yNTBzIMK7IMSR4buDIGNobyBwaMOpcCBjw6BpIMSR4bq3dCBs4bqhaSAiCisiYuG6o24gc2FvIGzGsHUiCisKKyM6IHNyYy9jbGVhbnVwLmM6OTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlc3RvcmUgYmFja3VwIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dzdHIgImtow7RuZyB0aOG7gyBwaOG7pWMgaOG7k2kgcGhpw6puIGLhuqNuIHNhbyBsxrB1IGPhu6dhIMKrICUuMjUwcyDCuyIKKworIzogc3JjL2NsZWFudXAuYzo5NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIGJhY2t1cCBjb3B5IG9mICclLjI1MHMnIgorbXNnc3RyICJraMO0bmcgdGjhu4MgZ+G7oSBi4buPIGLhuqNuIHNhbyBsxrB1IGPhu6dhIMKrICUuMjUwcyDCuyIKKworIzogc3JjL2NsZWFudXAuYzoxMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBuZXdseS1pbnN0YWxsZWQgdmVyc2lvbiBvZiBgJS4yNTBzJyIKK21zZ3N0ciAia2jDtG5nIHRo4buDIGfhu6EgYuG7jyBwaGnDqm4gYuG6o24gbeG7m2kgY8OgaSDEkeG6t3QgY+G7p2EgwqsgJS4yNTBzIMK7IgorCisjOiBzcmMvY2xlYW51cC5jOjEwOAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIG5ld2x5LWV4dHJhY3RlZCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICJraMO0bmcgdGjhu4MgZ+G7oSBi4buPIHBoacOqbiBi4bqjbiBt4bubaSBnaeG6o2kgcGjDs25nIGPhu6dhIMKrICUuMjUwcyDCuyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjEwNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBuZXcgZGlzdHJpYnV0ZWQgY29uZmZpbGUgJyUuMjUwcyciCittc2dzdHIgImtow7RuZyB0aOG7gyBs4bqleSB0cuG6oW5nIHRow6FpIHbDqiB04bqtcCB0aW4gY+G6pXUgaMOsbmggbeG7m2kgcGjDoXQgaMOgbmggwqsgJS4yNTBzIMK7IgorCisjOiBzcmMvY29uZmlndXJlLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGN1cnJlbnQgaW5zdGFsbGVkIGNvbmZmaWxlIGAlLjI1MHMnIgorbXNnc3RyICIiCisia2jDtG5nIHRo4buDIGzhuqV5IHRy4bqhbmcgdGjDoWkgdsOqIHThuq1wIHRpbiBj4bqldSBow6xuaCBoaeG7h24gdGjhu51pIMSRxrDhu6NjIGPDoGkgxJHhurd0IMKrICUuMjUwcyAiCisiwrsiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxMjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIkNvbmZpZ3VyYXRpb24gZmlsZSBgJXMnLCBkb2VzIG5vdCBleGlzdCBvbiBzeXN0ZW0uXG4iCisiSW5zdGFsbGluZyBuZXcgY29uZmlnIGZpbGUgYXMgeW91IHJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiIgorIlxuIgorIlThuq1wIHRpbiBj4bqldSBow6xuaCDCqyAlcyDCuyBraMO0bmcgbuG6sW0gdHLDqm4gaOG7hyB0aOG7kW5nLlxuIgorIsSQYW5nIGPDoGkgxJHhurd0IHThuq1wIHRpbiBj4bqldSBow6xuaCBt4bubaSBuaMawIGLhuqFuIHnDqnUgY+G6p3UuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzoxNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW1vdmUgb2xkIGJhY2t1cCAnJS4yNTBzJzogJXMiCittc2dzdHIgIiVzOiBs4buXaSBn4buhIGLhu48gYuG6o24gc2FvIGzGsHUgY8WpIMKrICUuMjUwcyDCuzogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW5hbWUgJyUuMjUwcycgdG8gJyUuMjUwcyc6ICVzIgorbXNnc3RyICIlczogbOG7l2kgdGhheSDEkeG7lWkgdMOqbiDCqyAlLjI1MHMgwrsgdGjDoG5oIMKrICUuMjUwcyDCuzogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW1vdmUgJyUuMjUwcyc6ICVzIgorbXNnc3RyICIlczogbOG7l2kgZ+G7oSBi4buPIMKrICUuMjUwcyDCuzogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxODgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW1vdmUgb2xkIGRpc3RyaWJ1dGVkIHZlcnNpb24gJyUuMjUwcyc6ICVzIgorbXNnc3RyICIlczogbOG7l2kgZ+G7oSBi4buPIHBoacOqbiBi4bqjbiBwaMOhdCBow6BuaCBjxakgwqsgJS4yNTBzIMK7OiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE5MgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIHJlbW92ZSAnJS4yNTBzJyAoYmVmb3JlIG92ZXJ3cml0ZSk6ICVzIgorbXNnc3RyICIlczogbOG7l2kgZ+G7oSBi4buPIMKrICUuMjUwcyDCuyAodHLGsOG7m2Mga2hpIGdoaSDEkcOoKTogJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byBsaW5rICclLjI1MHMnIHRvICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiJXM6IGzhu5dpIGxpw6puIGvhur90IMKrICUuMjUwcyDCuyB04bubaSDCqyAlLjI1MHMgwrs6ICVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjAwCisjLCBjLWZvcm1hdAorbXNnaWQgIkluc3RhbGxpbmcgbmV3IHZlcnNpb24gb2YgY29uZmlnIGZpbGUgJXMgLi4uXG4iCittc2dzdHIgIsSQYW5nIGPDoGkgxJHhurd0IHBoacOqbiBi4bqjbiBt4bubaSBj4bunYSB04bqtcCB0aW4gY+G6pXUgaMOsbmggJXMgLi4uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzoyMDYgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjU0NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBgJS4yNTBzJyBhcyBgJS4yNTBzJyIKK21zZ3N0ciAia2jDtG5nIHRo4buDIGPDoGkgxJHhurd0IMKrICUuMjUwcyDCuyBuaMawIGzDoCDCqyAlLjI1MHMgwrsiCisKKyM6IHNyYy9jb25maWd1cmUuYzoyNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gcGFja2FnZSBuYW1lZCBgJXMnIGlzIGluc3RhbGxlZCwgY2Fubm90IGNvbmZpZ3VyZSIKK21zZ3N0ciAia2jDtG5nIGPDsyBnw7NpIHTDqm4gwqsgJXMgwrsgxJHGsOG7o2MgY8OgaSDEkeG6t3QgbsOqbiBraMO0bmcgdGjhu4MgY+G6pXUgaMOsbmgiCisKKyM6IHNyYy9jb25maWd1cmUuYzoyNjAKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlLjI1MHMgaXMgYWxyZWFkeSBpbnN0YWxsZWQgYW5kIGNvbmZpZ3VyZWQiCittc2dzdHIgImfDs2kgJS4yNTBzIMSRw6MgxJHGsOG7o2MgY8OgaSDEkeG6t3QgdsOgIGPhuqV1IGjDrG5oIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjYzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJwYWNrYWdlICUuMjUwcyBpcyBub3QgcmVhZHkgZm9yIGNvbmZpZ3VyYXRpb25cbiIKKyIgY2Fubm90IGNvbmZpZ3VyZSAoY3VycmVudCBzdGF0dXMgYCUuMjUwcycpIgorbXNnc3RyICIiCisiZ8OzaSAlLjI1MHMgY2jGsGEgc+G6tW4gc8OgbmcgxJHhu4MgY+G6pXUgaMOsbmhcbiIKKyIgbsOqbiBraMO0bmcgdGjhu4MgY+G6pXUgaMOsbmggKHRy4bqhbmcgdGjDoWkgaGnhu4duIHRo4budaSDCqyAlLjI1MHMgwrspIgorCisjOiBzcmMvY29uZmlndXJlLmM6Mjk0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBkZXBlbmRlbmN5IHByb2JsZW1zIHByZXZlbnQgY29uZmlndXJhdGlvbiBvZiAlczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6IHbhuqVuIMSR4buBIHF1YW4gaOG7hyBwaOG7pSB0aHXhu5ljIG5nxINuIGPhuqNuIHZp4buHYyBj4bqldSBow6xuaCAlczpcbiIKKyIlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI5NworbXNnaWQgImRlcGVuZGVuY3kgcHJvYmxlbXMgLSBsZWF2aW5nIHVuY29uZmlndXJlZCIKK21zZ3N0ciAiduG6pW4gxJHhu4EgcXVhbiBo4buHIHBo4bulIHRodeG7mWMgLSDEkeG7gyBuZ3V5w6puIGNoxrBhIMSRxrDhu6NjIGPhuqV1IGjDrG5oIgorCisjOiBzcmMvY29uZmlndXJlLmM6MzAxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiAlczogZGVwZW5kZW5jeSBwcm9ibGVtcywgYnV0IGNvbmZpZ3VyaW5nIGFueXdheSBhcyB5b3UgcmVxdWVzdGVkOlxuIgorIiVzIgorbXNnc3RyICIiCisiZHBrZzogJXM6IHbhuqVuIMSR4buBIHF1YW4gaOG7hyBwaOG7pSB0aHXhu5ljLCBuaMawbmcgduG6q24gY+G6pXUgaMOsbmggbmjGsCBi4bqhbiB5w6p1IGPhuqd1OlxuIgorIiVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MzA5Cittc2dpZCAiIgorIlBhY2thZ2UgaXMgaW4gYSB2ZXJ5IGJhZCBpbmNvbnNpc3RlbnQgc3RhdGUgLSB5b3Ugc2hvdWxkXG4iCisiIHJlaW5zdGFsbCBpdCBiZWZvcmUgYXR0ZW1wdGluZyBjb25maWd1cmF0aW9uLiIKK21zZ3N0ciAiIgorIkfDs2kg4bufIHRyb25nIHRy4bqhbmcgdGjDoWkgaGF5IHRoYXkgxJHhu5VpIHLhuqV0IHjhuqV1IC0gbsOqbiBjw6BpIMSR4bq3dFxuIgorIiBs4bqhaSB0csaw4bubYyBraGkgdGjhu60gY+G6pXUgaMOsbmguIgorCisjOiBzcmMvY29uZmlndXJlLmM6MzEyCisjLCBjLWZvcm1hdAorbXNnaWQgIlNldHRpbmcgdXAgJXMgKCVzKSAuLi5cbiIKK21zZ3N0ciAixJBhbmcgdGhp4bq/dCBs4bqtcCAlcyAoJXMpIC4uLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6Mzk2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogdW5hYmxlIHRvIHN0YXQgY29uZmlnIGZpbGUgJyVzJ1xuIgorIiAoPSAnJXMnKTogJXMiCittc2dzdHIgIiIKKyIlczoga2jDtG5nIHRo4buDIGzhuqV5IHRy4bqhbmcgdGjDoWkgduG7gSB04bqtcCB0aW4gY+G6pXUgaMOsbmggwqsgJXMgwrtcbiIKKyIgKD0gJyVzJyk6ICVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDA5CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogY29uZmlnIGZpbGUgJyVzJyBpcyBhIGNpcmN1bGFyIGxpbmtcbiIKKyIgKD0gJyVzJykiCittc2dzdHIgIiIKKyIlczogdOG6rXAgdGluIGPhuqV1IGjDrG5oIMKrICVzIMK7IGzDoCBt4buZdCBsacOqbiBr4bq/dCB2w7JuZyB0csOyblxuIgorIiAoPSAnJXMnKSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQxOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IHVuYWJsZSB0byByZWFkbGluayBjb25mZmlsZSAnJXMnXG4iCisiICg9ICclcycpOiAlcyIKK21zZ3N0ciAiIgorIiVzOiBraMO0bmcgdGjhu4MgcmVhZGxpbmsgKHRow6ptIGxpw6puIGvhur90IGzhuqFpKSB04bqtcCB0aW4gY+G6pXUgaMOsbmggwqsgJXMgwrtcbiIKKyIgKD0gJyVzJyk6ICVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDQ0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogY29uZmZpbGUgJyUuMjUwcycgcmVzb2x2ZXMgdG8gZGVnZW5lcmF0ZSBmaWxlbmFtZVxuIgorIiAoJyVzJyBpcyBhIHN5bWxpbmsgdG8gJyVzJykiCittc2dzdHIgIiIKKyIlczogdOG6rXAgdGluIGPhuqV1IGjDrG5oIMKrICUuMjUwcyDCuyB0cuG7nyB0aMOgbmggdMOqbiB04bqtcCB0aW4gdGhvw6FpIGhvw6FcbiIKKyIgKMKrICVzIMK7IGzDoCBsacOqbiBr4bq/dCB0xrDhu6NuZyB0csawbmcgdOG7m2kgwqsgJXMgwrspIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDYwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBjb25mZmlsZSAnJS4yNTBzJyBpcyBub3QgYSBwbGFpbiBmaWxlIG9yIHN5bWxpbmsgKD0gJyVzJykiCittc2dzdHIgIiIKKyIlczogdOG6rXAgdGluIGPhuqV1IGjDrG5oIMKrICUuMjUwcyDCuyBraMO0bmcgcGjhuqNpIGzDoCBt4buZdCB04bqtcCB0aW4gdGnDqnUgY2h14bqpblxuIgorImhheSBsacOqbiBr4bq/dCB0xrDhu6NuZyB0csawbmcgKD0gJyVzJykiCisKKyMgTmFtZTogZG9uJ3QgdHJhbnNsYXRlL1TDqm46IMSR4burbmcgZOG7i2NoCisjOiBzcmMvY29uZmlndXJlLmM6NDg2Cittc2dpZCAibWQ1aGFzaCIKK21zZ3N0ciAibWQ1aGFzaCIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQ5MgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogdW5hYmxlIHRvIG9wZW4gY29uZmZpbGUgJXMgZm9yIGhhc2g6ICVzIgorbXNnc3RyICIiCisiJXM6IGtow7RuZyB0aOG7gyBt4bufIHThuq1wIHRpbiBj4bqldSBow6xuaCAlcyBjaG8gaMOgbSB04bqhbyBt4buZdCBjaHXhu5dpIGR1eSBuaOG6pXQgY2hvIHThuq1wICIKKyJ0aW4gKGhhc2gpOiAlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjUyMiBzcmMvY29uZmlndXJlLmM6NTI2Cittc2dpZCAiY29uZmZpbGUgZGlmZmVyZW5jZSB2aXN1YWxpemVyIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo1NDMKK21zZ2lkICJUeXBlIGBleGl0JyB3aGVuIHlvdSdyZSBkb25lLlxuIgorbXNnc3RyICJHw7UgwqsgZXhpdCDCuyAodGhvw6F0KSBt4buZdCBraGkgaG/DoG4gdOG6pXQuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo1NTIgc3JjL2NvbmZpZ3VyZS5jOjU1NgorbXNnaWQgImNvbmZmaWxlIHNoZWxsIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIkNvbmZpZ3VyYXRpb24gZmlsZSBgJXMnIgorbXNnc3RyICIiCisiXG4iCisiVOG6rXAgdGluIGPhuqV1IGjDrG5oIMKrICVzIMK7IgorCisjOiBzcmMvY29uZmlndXJlLmM6NjA0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAoYWN0dWFsbHkgYCVzJykiCittc2dzdHIgIiAodGjhu7FjIHPhu7EgwqsgJXMgwrspIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjA4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgPT0+IEZpbGUgb24gc3lzdGVtIGNyZWF0ZWQgYnkgeW91IG9yIGJ5IGEgc2NyaXB0LlxuIgorIiA9PT4gRmlsZSBhbHNvIGluIHBhY2thZ2UgcHJvdmlkZWQgYnkgcGFja2FnZSBtYWludGFpbmVyLlxuIgorbXNnc3RyICIiCisiXG4iCisiID09PiBU4bqtcCB0aW4gdHLDqm4gaOG7hyB0aOG7kW5nIHThuqFvIGLhu59pIG5nxrDhu51pIGTDuW5nIGhv4bq3YyBi4bufaSBt4buZdCB2xINuIGzhu4duaC5cbiIKKyIgPT0+IFThuq1wIHRpbiBjxaluZyBu4bqxbSB0cm9uZyBnw7NpIGN1bmcgY+G6pXAgYuG7n2kgbmjDoCBkdXkgdHLDrCBnw7NpLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjEzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgICAgIE5vdCBtb2RpZmllZCBzaW5jZSBpbnN0YWxsYXRpb24uXG4iCittc2dzdHIgIiIKKyJcbiIKKyIgICAgIENoxrBhIHPhu61hIMSR4buVaSBr4buDIHThu6sgbMO6YyBjw6BpIMSR4bq3dC5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYxNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiID09PiBNb2RpZmllZCAoYnkgeW91IG9yIGJ5IGEgc2NyaXB0KSBzaW5jZSBpbnN0YWxsYXRpb24uXG4iCittc2dzdHIgIiIKKyJcbiIKKyIgPT0+IMSQw6Mgc+G7rWEgxJHhu5VpIChi4bufaSBuZ8aw4budaSBkw7luZyBoYXkgdsSDbiBs4buHbmgpIGvhu4MgdOG7qyBsw7pjIGPDoGkgxJHhurd0LlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjE2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgPT0+IERlbGV0ZWQgKGJ5IHlvdSBvciBieSBhIHNjcmlwdCkgc2luY2UgaW5zdGFsbGF0aW9uLlxuIgorbXNnc3RyICIiCisiXG4iCisiID09PiDEkMOjIHhvw6EgKGLhu59pIGLhuqFuIGhheSB2xINuIGzhu4duaCkga+G7gyB04burIGzDumMgY8OgaSDEkeG6t3QuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBQYWNrYWdlIGRpc3RyaWJ1dG9yIGhhcyBzaGlwcGVkIGFuIHVwZGF0ZWQgdmVyc2lvbi5cbiIKK21zZ3N0ciAiID09PiBOaMOgIHBow6JuIHBo4buRaSBnw7NpIMSRw6MgY3VuZyBj4bqlcCBt4buZdCBwaGnDqm4gYuG6o24gxJHDoyBj4bqtcCBuaOG6rXQuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAgICBWZXJzaW9uIGluIHBhY2thZ2UgaXMgdGhlIHNhbWUgYXMgYXQgbGFzdCBpbnN0YWxsYXRpb24uXG4iCittc2dzdHIgIiAgICAgUGhpw6puIGLhuqNuIHRyb25nIGfDs2kgbMOgIHRyw7luZyB24bubaSBwaGnDqm4gYuG6o24gY8OgaSDEkeG6t3QgY3Xhu5FpIGPDuW5nLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjI4CisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gVXNpbmcgbmV3IGZpbGUgYXMgeW91IHJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiID09PiDEkGFuZyBz4butIGThu6VuZyB04bqtcCB0aW4gbeG7m2kgbmjGsCBi4bqhbiB5w6p1IGPhuqd1LlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gVXNpbmcgY3VycmVudCBvbGQgZmlsZSBhcyB5b3UgcmVxdWVzdGVkLlxuIgorbXNnc3RyICIgPT0+IMSQYW5nIHPhu60gZOG7pW5nIHThuq1wIHRpbiBjxakgaGnhu4duIHRo4budaSBuaMawIGLhuqFuIHnDqnUgY+G6p3UuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBLZWVwaW5nIG9sZCBjb25maWcgZmlsZSBhcyBkZWZhdWx0LlxuIgorbXNnc3RyICIgPT0+IMSQYW5nIGdp4buvIHThuq1wIHRpbiBj4bqldSBow6xuaCBjxakgbMOgbSBt4bq3YyDEkeG7i25oLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gVXNpbmcgbmV3IGNvbmZpZyBmaWxlIGFzIGRlZmF1bHQuXG4iCittc2dzdHIgIiA9PT4gxJBhbmcgZMO5bmcgdOG6rXAgdGluIGPhuqV1IGjDrG5oIG3hu5tpIGzDoG0gbeG6t2MgxJHhu4tuaC5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY1MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiICAgV2hhdCB3b3VsZCB5b3UgbGlrZSB0byBkbyBhYm91dCBpdCA/ICBZb3VyIG9wdGlvbnMgYXJlOlxuIgorIiAgICBZIG9yIEkgIDogaW5zdGFsbCB0aGUgcGFja2FnZSBtYWludGFpbmVyJ3MgdmVyc2lvblxuIgorIiAgICBOIG9yIE8gIDoga2VlcCB5b3VyIGN1cnJlbnRseS1pbnN0YWxsZWQgdmVyc2lvblxuIgorIiAgICAgIEQgICAgIDogc2hvdyB0aGUgZGlmZmVyZW5jZXMgYmV0d2VlbiB0aGUgdmVyc2lvbnNcbiIKKyIgICAgICBaICAgICA6IHN0YXJ0IGEgc2hlbGwgdG8gZXhhbWluZSB0aGUgc2l0dWF0aW9uXG4iCittc2dzdHIgIiIKKyIgICBC4bqhbiBjw7MgbXXhu5FuIGzDoG0gZ8OsIHbhuq15PyBUw7l5IGNo4buNbjpcbiIKKyIgICAgWSBoYXkgSSAg4oCUICBjw6BpIMSR4bq3dCBwaGnDqm4gYuG6o24gY+G7p2EgbmjDoCBkdXkgdHLDrCBnw7NpXG4iCisiICAgIE4gaGF5IE8gIOKAlCAgZ2nhu68gbOG6oWkgcGhpw6puIGLhuqNuIGhp4buHbiB0aOG7nWkgxJHGsOG7o2MgY8OgaSDEkeG6t3RcbiIKKyIgICAgICBEICAgICDigJQgIGhp4buDbiB0aOG7iyBz4buxIGtow6FjIG5oYXUgZ2nhu69hIGhhaSBwaGnDqm4gYuG6o25cbiIKKyIgICAgICBaICAgICDigJQgIGNo4bqheSBt4buZdCB0csOsbmggYmFvIMSR4buDIHhlbSBs4bqhaSB0csaw4budbmcgaOG7o3BcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY1OQorIywgYy1mb3JtYXQKK21zZ2lkICIgVGhlIGRlZmF1bHQgYWN0aW9uIGlzIHRvIGtlZXAgeW91ciBjdXJyZW50IHZlcnNpb24uXG4iCittc2dzdHIgIiBIw6BuaCDEkeG7mW5nIG3hurdjIMSR4buLbmggbMOgIGdp4buvIHBoacOqbiBi4bqjbiBoaeG7h24gdGjhu51pLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjYxCisjLCBjLWZvcm1hdAorbXNnaWQgIiBUaGUgZGVmYXVsdCBhY3Rpb24gaXMgdG8gaW5zdGFsbCB0aGUgbmV3IHZlcnNpb24uXG4iCittc2dzdHIgIiBIw6BuaCB2aSBt4bq3YyDEkeG7i25oIGzDoCBjw6BpIMSR4bq3dCBwaGnDqm4gYuG6o24gbeG7m2kuXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NjYKK21zZ2lkICJbZGVmYXVsdD1OXSIKK21zZ3N0ciAiW23hurdjIMSR4buLbmg9Tl0iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NjcKK21zZ2lkICJbZGVmYXVsdD1ZXSIKK21zZ3N0ciAiW23hurdjIMSR4buLbmg9WV0iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NjgKK21zZ2lkICJbbm8gZGVmYXVsdF0iCittc2dzdHIgIltraMO0bmcgY8OzIGdpw6EgdHLhu4sgbeG6t2MgxJHhu4tuaF0iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NzEKK21zZ2lkICJlcnJvciB3cml0aW5nIHRvIHN0ZGVyciwgZGlzY292ZXJlZCBiZWZvcmUgY29uZmZpbGUgcHJvbXB0IgorbXNnc3RyICIiCisiZ+G6t3AgbOG7l2kga2hpIGdoaSByYSB0aGnhur90IGLhu4sgbOG7l2kgY2h14bqpbiwgcGjDoXQgaGnhu4duIHRyxrDhu5tjIGtoaSB4ZW0gZOG6pXUgbmjhuq9jIHThuq1wICIKKyJ0aW4gY+G6pXUgaMOsbmgiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2ODAKK21zZ2lkICJyZWFkIGVycm9yIG9uIHN0ZGluIGF0IGNvbmZmaWxlIHByb21wdCIKK21zZ3N0ciAibOG7l2kgxJHhu41jIHRyw6puIHRoaeG6v3QgYuG7iyBuaOG6rXAgY2h14bqpbiDhu58gZOG6pXUgbmjhuq9jIHThuq1wIHRpbiBj4bqldSBow6xuaCIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY4MQorbXNnaWQgIkVPRiBvbiBzdGRpbiBhdCBjb25mZmlsZSBwcm9tcHQiCittc2dzdHIgIiIKKyJn4bq3cCBr4bq/dCB0aMO6YyB04bqtcCB0aW4gdHLDqm4gdGhp4bq/dCBi4buLIG5o4bqtcCBjaHXhuqluIOG7nyBk4bqldSBuaOG6r2MgdOG6rXAgdGluIGPhuqV1IGjDrG5oIgorCisjOiBzcmMvZGVwY29uLmM6MTc1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGRlcGVuZHMgb24gJXMiCittc2dzdHIgIiVzIHBo4bulIHRodeG7mWMgdsOgbyAlcyIKKworIzogc3JjL2RlcGNvbi5jOjE3OAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBwcmUtZGVwZW5kcyBvbiAlcyIKK21zZ3N0ciAiJXMgcGjhu6UgdGh14buZYyBz4bq1biB2w6BvICVzIgorCisjOiBzcmMvZGVwY29uLmM6MTgxCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHJlY29tbWVuZHMgJXMiCittc2dzdHIgIiVzIGtodXnDqm4gJXMiCisKKyM6IHNyYy9kZXBjb24uYzoxODQKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgc3VnZ2VzdHMgJXMiCittc2dzdHIgIiVzIMSR4buBIG5naOG7iyAlcyIKKworIzogc3JjL2RlcGNvbi5jOjE4NworIywgYy1mb3JtYXQKK21zZ2lkICIlcyBicmVha3MgJXMiCittc2dzdHIgIiVzIG5n4bqvdCAlcyIKKworIzogc3JjL2RlcGNvbi5jOjE5MAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBjb25mbGljdHMgd2l0aCAlcyIKK21zZ3N0ciAiJXMgeHVuZyDEkeG7mXQgduG7m2kgJXMiCisKKyM6IHNyYy9kZXBjb24uYzoxOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgZW5oYW5jZXMgJXMiCittc2dzdHIgIiVzIHTEg25nIGPGsOG7nW5nICVzIgorCisjOiBzcmMvZGVwY29uLmM6Mjk2CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHRvIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIHPhur0gYuG7iyBn4buhIGLhu48uXG4iCisKKyM6IHNyYy9kZXBjb24uYzoyOTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdG8gYmUgZGVjb25maWd1cmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyBz4bq9IGLhu4sgaOG7p3kgY+G6pXUgaMOsbmguXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdG8gYmUgaW5zdGFsbGVkLCBidXQgaXMgdmVyc2lvbiAlLjI1MHMuXG4iCittc2dzdHIgIiAgJS4yNTBzIHPhur0gxJHGsOG7o2MgY8OgaSDEkeG6t3QsIG5oxrBuZyBsw6AgcGhpw6puIGLhuqNuICUuMjUwcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjMxNAorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyBpbnN0YWxsZWQsIGJ1dCBpcyB2ZXJzaW9uICUuMjUwcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgaGnhu4duIHRo4budaSDEkcaw4bujYyBjw6BpIMSR4bq3dCwgbmjGsG5nIGzDoCBwaGnDqm4gYuG6o24gJS4yNTBzLlxuIgorCisjOiBzcmMvZGVwY29uLmM6MzMzCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHVucGFja2VkLCBidXQgaGFzIG5ldmVyIGJlZW4gY29uZmlndXJlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMgxJHDoyDEkcaw4bujYyBt4bufIGfDs2ksIG5oxrBuZyBjaMawYSBs4bqnbiBuw6BvIMSRxrDhu6NjIGPhuqV1IGjDrG5oLlxuIgorCisjOiBzcmMvZGVwY29uLmM6MzM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHVucGFja2VkLCBidXQgaXMgdmVyc2lvbiAlLjI1MHMuXG4iCittc2dzdHIgIiAgJS4yNTBzIMSRw6MgxJHGsOG7o2MgbeG7nyBnw7NpLCBuaMawbmcgbMOgIHBoacOqbiBi4bqjbiAlLjI1MHMuXG4iCisKKyM6IHNyYy9kZXBjb24uYzozNDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgbGF0ZXN0IGNvbmZpZ3VyZWQgdmVyc2lvbiBpcyAlLjI1MHMuXG4iCittc2dzdHIgIiAgJS4yNTBzIHBoacOqbiBi4bqjbiDEkcaw4bujYyBj4bqldSBow6xuaCBt4bubaSBuaOG6pXQgbMOgICUuMjUwcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjM1MworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyAlcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgbMOgICVzLlxuIgorCisjOiBzcmMvZGVwY29uLmM6Mzg4CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBidXQgaXMgdG8gYmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMgY3VuZyBj4bqlcCAlLjI1MHMgbmjGsG5nIHPhur0gYuG7iyBn4buhIGLhu48uXG4iCisKKyM6IHNyYy9kZXBjb24uYzozOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGJ1dCBpcyB0byBiZSBkZWNvbmZpZ3VyZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIGN1bmcgY+G6pXAgJS4yNTBzIG5oxrBuZyBz4bq9IGLhu4sgaHXhu7cgY+G6pXUgaMOsbmguXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0MDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGJ1dCBpcyAlcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgY3VuZyBj4bqlcCAlLjI1MHMgbmjGsG5nIGzDoCAlcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjQxNQorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIgICUuMjUwcyBraMO0bmcgaGnhu4duIHRo4budaSDEkcaw4bujYyBjw6BpIMSR4bq3dC5cbiIKKworIzogc3JjL2RlcGNvbi5jOjQ0MworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyAodmVyc2lvbiAlLjI1MHMpIGlzIHRvIGJlIGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMgKHBoacOqbiBi4bqjbiAlLjI1MHMpIHPhur0gxJHGsOG7o2MgY8OgaSDEkeG6t3QuXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgKHZlcnNpb24gJS4yNTBzKSBpcyBwcmVzZW50IGFuZCAlcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgKHBoacOqbiBi4bqjbiAlLjI1MHMpIMSRw6MgY8OzIHbDoCAlcy5cbiIKKworIzogc3JjL2RlcGNvbi5jOjQ5NQorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYW5kIGlzIHRvIGJlIGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMgY3VuZyBj4bqlcCAlLjI1MHMgdsOgIHPhur0gxJHGsOG7o2MgY8OgaSDEkeG6t3QuXG4iCisKKyM6IHNyYy9kZXBjb24uYzo1MzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGFuZCBpcyBwcmVzZW50IGFuZCAlcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMgY3VuZyBj4bqlcCAlLjI1MHMgdsOgIMSRw6MgY8OzIHbDoCAlcy5cbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjUwCisjLCBmdXp6eQorI3wgbXNnaWQgIlVzZSAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgcXVlcnlpbmcgcGFja2FnZXMuIgorbXNnaWQgIlVzZSAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgZGl2ZXJ0aW5nIGZpbGVzLiIKK21zZ3N0ciAiIgorIkjDo3kgc+G7rSBk4bulbmcgdHXhu7MgY2jhu41uIHRy4bujIGdpw7pwIMKrIC0taGVscCDCuyDEkeG7gyB0w6xtIHRy4bujIGdpw7pwIHbhu4EgY2jhu6ljIG7Eg25nIHRydXkgIgorInbhuqVuIGfDs2kuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjYgc3JjL3N0YXRjbWQuYzo1NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuICVzIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkRlYmlhbiAlcyBwaGnDqm4gYuG6o24gJXMuXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo3MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDEwIEd1aWxsZW0gSm92ZXIuXG4iCittc2dzdHIgIiIKKyJUw6FjIHF1eeG7gW4gwqkgbsSDbSAxOTk1IGPhu6dhIElhbiBKYWNrc29uLlxuIgorIlTDoWMgcXV54buBbiDCqSBuxINtIDIwMDAsMjAwMSBj4bunYSBXaWNoZXJ0IEFra2VybWFuLlxuIgorIlTDoWMgcXV54buBbiDCqSBuxINtIDIwMTAgR3VpbGxlbSBKb3Zlci5cbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjc1IHNyYy9tYWluLmM6NjMgc3JjL3F1ZXJ5Y21kLmM6NjAzIHNyYy9zdGF0Y21kLmM6NjUKKyM6IHNyYy90cmlnY21kLmM6NTUgZHBrZy1kZWIvbWFpbi5jOjU3IGRwa2ctc3BsaXQvbWFpbi5jOjUxCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6ODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgb3JcbiIKKyJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKK21zZ3N0ciAiIgorIsSQw6J5IGzDoCBwaOG6p24gbeG7gW0gdOG7sSBkbywgeGVtIEdp4bqleSBQaMOpcCBDw7RuZyBD4buZbmcgR05VIChHUEwpXG4iCisicGhpw6puIGLhuqNuIDIgaG/hurdjIG3hu5tpIGjGoW4gxJHhu4MgYmnhur90IMSRaeG7gXUga2nhu4duIHNhbyBjaMOpcC5cbiIKKyJLSMOUTkcgY8OzIGLhuqNvIGjDoG5oIGfDrCBj4bqjLlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6ODcgc3JjL21haW4uYzo4MSBzcmMvcXVlcnljbWQuYzo2MTUgc3JjL3N0YXRjbWQuYzo3NworIzogZHBrZy1kZWIvbWFpbi5jOjY5IGRwa2ctc3BsaXQvbWFpbi5jOjYzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo5NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIDxjb21tYW5kPlxuIgorIlxuIgorbXNnc3RyICIiCisiU+G7rSBk4bulbmc6ICVzIFs8dMO5eV9jaOG7jW4+IC4uLl0gPGzhu4duaD5cbiIKKyJcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjkxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIFstLWFkZF0gPGZpbGU+ICAgICAgICAgICBhZGQgYSBkaXZlcnNpb24uXG4iCisiICAtLXJlbW92ZSA8ZmlsZT4gICAgICAgICAgcmVtb3ZlIHRoZSBkaXZlcnNpb24uXG4iCisiICAtLWxpc3QgWzxnbG9iLXBhdHRlcm4+XSAgc2hvdyBmaWxlIGRpdmVyc2lvbnMuXG4iCisiICAtLWxpc3RwYWNrYWdlIDxmaWxlPiAgICAgc2hvdyB3aGF0IHBhY2thZ2UgZGl2ZXJ0cyB0aGUgZmlsZS5cbiIKKyIgIC0tdHJ1ZW5hbWUgPGZpbGU+ICAgICAgICByZXR1cm4gdGhlIGRpdmVydGVkIGZpbGUuXG4iCisiXG4iCittc2dzdHIgIiIKKyJM4buHbmg6XG4iCisiICBbLS1hZGRdIDx04buHcD4gICAgICAgICAgIHRow6ptIG3hu5l0IHPhu7EgbMOgbSB0cuG7h2NoIMSRaS5cbiIKKyIgIC0tcmVtb3ZlIDx04buHcD4gICAgICAgICAgZ+G7oSBi4buPIHPhu7EgbMOgbSB0cuG7h2NoIMSRaS5cbiIKKyIgIC0tbGlzdCBbPG3huqt1X2dsb2I+XSAgICBoaeG7g24gdGjhu4sgY8OhYyBz4buxIGzDoG0gdHLhu4djaCDEkWkgduG7gSB04bqtcCB0aW4uXG4iCisiICAtLWxpc3RwYWNrYWdlIDx04buHcD4gICAgIGhp4buDbiB0aOG7iyBnw7NpIG7DoG8gbMOgbSB0cuG7h2NoIHThuq1wIHRpbiDEkWkuXG4iCisiICAtLXRydWVuYW1lIDx04buHcD4gICAgICAgIGzDoG0gdHLhu58gbOG6oWkgdOG6rXAgdGluIGLhu4sgbMOgbSB0cuG7h2NoIMSRaS5cbiIKKyJcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjEwMAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tcGFja2FnZSA8cGFja2FnZT4gICAgICBuYW1lIG9mIHRoZSBwYWNrYWdlIHdob3NlIGNvcHkgb2YgPGZpbGU+IHdpbGwgIgorIm5vdFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmUgZGl2ZXJ0ZWQuXG4iCisiICAtLWxvY2FsICAgICAgICAgICAgICAgICAgYWxsIHBhY2thZ2VzJyB2ZXJzaW9ucyBhcmUgZGl2ZXJ0ZWQuXG4iCisiICAtLWRpdmVydCA8ZGl2ZXJ0LXRvPiAgICAgdGhlIG5hbWUgdXNlZCBieSBvdGhlciBwYWNrYWdlcycgdmVyc2lvbnMuXG4iCisiICAtLXJlbmFtZSAgICAgICAgICAgICAgICAgYWN0dWFsbHkgbW92ZSB0aGUgZmlsZSBhc2lkZSAob3IgYmFjaykuXG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgc2V0IHRoZSBkaXJlY3Rvcnkgd2l0aCB0aGUgZGl2ZXJzaW9ucyBmaWxlLlxuIgorIiAgLS10ZXN0ICAgICAgICAgICAgICAgICAgIGRvbid0IGRvIGFueXRoaW5nLCBqdXN0IGRlbW9uc3RyYXRlLlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHF1aWV0IG9wZXJhdGlvbiwgbWluaW1hbCBvdXRwdXQuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorbXNnc3RyICIiCisiVHXhu7MgY2jhu41uOlxuIgorIiAgLS1wYWNrYWdlIDx0w6puX2fDs2k+ICAgICAgdMOqbiBj4bunYSBnw7NpIGPDsyBi4bqjbiBzYW8gdOG7h3Agc+G6vSBraMO0bmcgYuG7iyBsw6BtIHRy4buHY2ggIgorIsSRaS5cbiIKKyIgIC0tbG9jYWwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG3hu41pIHBoacOqbiBi4bqjbiBnw7NpIMSR4buBdSBi4buLIGzDoG0gdHLhu4djaCAiCisixJFpLlxuIgorIiAgLS1kaXZlcnQgPMSRw61jaF/EkeG6v24+ICAgICAgICB0w6puIMSRxrDhu6NjIGTDuW5nIGLhu59pIGPDoWMgcGhpw6puIGLhuqNuIGPhu6dhIGfDs2kga2jDoWMuXG4iCisiICAtLXJlbmFtZSAgICAgICAgICAgICAgICAgICAgICAgICAgIHRo4buxYyBz4buxIGRpIGNodXnhu4NuIHThu4dwIHJhIGLDqm4gKGhv4bq3YyB0cuG7nyAiCisibOG6oWkpLlxuIgorIiAgLS1hZG1pbmRpciA8dGjGsF9t4bulYz4gICBs4bqtcCB0aMawIG3hu6VjIGNo4bupYSB04bqtcCB0aW4gbMOgbSB0cuG7h2NoIMSRaS5cbiIKKyIgIC0tdGVzdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBraMO0bmcgbMOgbSBnw6wsIGNo4buJIG1pbmggaOG7jWEuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNo4bqheSBpbSwga2jDtG5nIHh14bqldCBuaGnhu4F1XG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhp4buDbiB0aOG7iyB0cuG7oyBnacO6cCBuw6B5LlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICAgICAgICAgICAgaGnhu4NuIHRo4buLIHPhu5EgdGjhu6kgdOG7sSBwaGnDqm4gYuG6o24uXG4iCisiXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIldoZW4gYWRkaW5nLCBkZWZhdWx0IGlzIC0tbG9jYWwgYW5kIC0tZGl2ZXJ0IDxvcmlnaW5hbD4uZGlzdHJpYi5cbiIKKyJXaGVuIHJlbW92aW5nLCAtLXBhY2thZ2Ugb3IgLS1sb2NhbCBhbmQgLS1kaXZlcnQgbXVzdCBtYXRjaCBpZiBzcGVjaWZpZWQuXG4iCisiUGFja2FnZSBwcmVpbnN0L3Bvc3RybSBzY3JpcHRzIHNob3VsZCBhbHdheXMgc3BlY2lmeSAtLXBhY2thZ2UgYW5kIC0tIgorImRpdmVydC5cbiIKK21zZ3N0ciAiIgorIlRow6ptIHRow6wgbeG6t2MgxJHhu4tuaCBsw6AgwqsgLS1sb2NhbCDCuyAoY+G7pWMgYuG7mSkgdsOgIMKrIC0tZGl2ZXJ0IEfhu5BDLmRpc3RyaWIgwrsuXG4iCisiR+G7oSBi4buPIHRow6wgcGjhuqNpIGPDsyDCqyAtLXBhY2thZ2UgwrsgKGfDs2kpLCDCqyAtLWxvY2FsIMK7IChj4bulYyBi4buZKSB2w6AgwqsgLS1kaXZlcnQgIgorIsK7IChsw6BtIHRy4buHY2ggxJFpKVxuIgorInTGsMahbmcg4bupbmcgbmhhdSAobuG6v3UgY8OzKS5cbiIKKyJWxINuIGzhu4duaCBjaOG6oXkgc2F1IGtoaSBjw6BpIMSR4bq3dCBob+G6t2MgZ+G7oSBi4buPIGfDs2kgdGjDrCBjxaluZyBwaOG6o2kgZ2hpIHLDtSDCqyAtLSIKKyJwYWNrYWdlIMK7IHbDoCDCqyAtLWRpdmVydCDCuy5cbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjE2OAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjaGVja2luZyAnJXMnIgorbXNnc3RyICJn4bq3cCBs4buXaSBraGkga2nhu4NtIHRyYSDCqyAlcyDCuyIKKworIzogc3JjL2RpdmVydGNtZC5jOjIwMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisicmVuYW1lIGludm9sdmVzIG92ZXJ3cml0aW5nIGAlcycgd2l0aFxuIgorIiAgZGlmZmVyZW50IGZpbGUgYCVzJywgbm90IGFsbG93ZWQiCittc2dzdHIgIiIKKyLCqyByZW5hbWUgwrsgY+G6p24gdGhp4bq/dCB2aeG7h2MgZ2hpIMSRw6ggwqsgJXMgwrtcbiIKKyIgIGLhurFuZyB04bqtcCB0aW4ga2jDoWMgwqsgJXMgwrssIGtow7RuZyBjaG8gcGjDqXAiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyMjMgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzNzMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byB3cml0ZSBmaWxlICclcyciCittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBmaWxlICclcyciCittc2dzdHIgImtow7RuZyB0aOG7gyBnaGkgdOG6rXAgdGluIMKrICVzIMK7IgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjI3Cittc2dpZCAiZmlsZSBjb3B5IgorbXNnc3RyICJjaMOpcCB04bqtcCB0aW4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyMzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlbmFtZSAnJXMnIHRvICclcyciCittc2dzdHIgImtow7RuZyB0aOG7gyB0aGF5IMSR4buVaSB0w6puIMKrICVzIMK7IHRow6BuaCDCqyAlcyDCuyIKKworIzogc3JjL2RpdmVydGNtZC5jOjI1MgorIywgYy1mb3JtYXQKK21zZ2lkICJyZW5hbWU6IHJlbW92ZSBkdXBsaWNhdGUgb2xkIGxpbmsgJyVzJyIKK21zZ3N0ciAicmVuYW1lOiBn4buhIGLhu48gbGnDqm4ga+G6v3QgY8WpIG5ow6JuIMSRw7RpIMKrICVzIMK7IgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjYyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gb3BlbiBzb3VyY2UgZmlsZSBgJS4yNTBzJyIKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIGNvcGllZCBzb3VyY2UgZmlsZSAnJXMnIgorbXNnc3RyICJraMO0bmcgdGjhu4MgbeG7nyB04bqtcCB0aW4gbmd14buTbiDCqyAlLjI1MHMgwrsiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyODQKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9jYWwgZGl2ZXJzaW9uIG9mICVzIgorbXNnc3RyICIlcyBi4buLIGzDoG0gdHLhu4djaCBu4buZaSBi4buZIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mjg2CisjLCBjLWZvcm1hdAorbXNnaWQgImxvY2FsIGRpdmVyc2lvbiBvZiAlcyB0byAlcyIKK21zZ3N0ciAiJXMgYuG7iyBsw6BtIHRy4buHY2ggbuG7mWkgYuG7mSB04bubaSAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjI5MAorIywgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnNpb24gb2YgJXMgYnkgJXMiCittc2dzdHIgIiVzIGLhu4sgJXMgbMOgbSB0cuG7h2NoIMSRaSIKKworIzogc3JjL2RpdmVydGNtZC5jOjI5MworIywgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnNpb24gb2YgJXMgdG8gJXMgYnkgJXMiCittc2dzdHIgIiUxJHMgYuG7iyAlMyRzIGzDoG0gdHLhu4djaCB04bubaSAlMiRzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MzA5CisjLCBjLWZvcm1hdAorbXNnaWQgImFueSBkaXZlcnNpb24gb2YgJXMiCittc2dzdHIgIiVzIGLhu4sgbMOgbSB0cuG7h2NoIG7DoG8iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiYW55IGRpdmVyc2lvbiBvZiAlcyB0byAlcyIKK21zZ3N0ciAiJXMgYuG7iyBsw6BtIHRy4buHY2ggbsOgbyB04bubaSAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjM1NworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgY3JlYXRlIG5ldyAlcyBmaWxlIgorbXNnc3RyICJraMO0bmcgdGjhu4MgdOG6oW8gdOG6rXAgdGluICVzIG3hu5tpIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mzc1IHNyYy9zdGF0Y21kLmM6MjE1IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNDA0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCBmaWxlICclcyciCittc2dzdHIgImtow7RuZyB0aOG7gyBjaHV54buDbiBo4bq/dCB04bqtcCB0aW4gwqsgJXMgwrsiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozODIKK21zZ2lkICJlcnJvciByZW1vdmluZyBvbGQgZGl2ZXJzaW9ucy1vbGQiCittc2dzdHIgImfhurdwIGzhu5dpIGtoaSBn4buhIGLhu48gdOG6rXAgdGluIMKrIGRpdmVyc2lvbnMtb2xkIMK7IGPFqSIKKworIzogc3JjL2RpdmVydGNtZC5jOjM4NAorbXNnaWQgImVycm9yIGNyZWF0aW5nIG5ldyBkaXZlcnNpb25zLW9sZCIKK21zZ3N0ciAiZ+G6t3AgbOG7l2kga2hpIHThuqFvIHThuq1wIHRpbiDCqyBkaXZlcnNpb25zLW9sZCDCuyBt4bubaSIKKworIzogc3JjL2RpdmVydGNtZC5jOjM4NgorbXNnaWQgImVycm9yIGluc3RhbGxpbmcgbmV3IGRpdmVyc2lvbnMiCittc2dzdHIgImfhurdwIGzhu5dpIGtoaSBjw6BpIMSR4bq3dCBz4buxIGzDoG0gdHLhu4djaCDEkWkgbeG7m2kiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MDYgc3JjL2RpdmVydGNtZC5jOjUwMyBzcmMvZGl2ZXJ0Y21kLmM6NjEwCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjMwIHNyYy9zdGF0Y21kLmM6MjkwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSBzaW5nbGUgYXJndW1lbnQiCittc2dzdHIgIsKrIC0tJXMgwrsgecOqdSBj4bqndSBt4buZdCDEkeG7kWkgc+G7kSBybMOqbmcgbOG6uyIKKworIzogc3JjL2RpdmVydGNtZC5jOjQwOSBzcmMvZGl2ZXJ0Y21kLmM6NDMwCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGVuYW1lIFwiJXNcIiBpcyBub3QgYWJzb2x1dGUiCittc2dzdHIgInTDqm4gdOG6rXAgdGluIMKrICVzIMK7IGtow7RuZyBwaOG6o2kgbMOgIHR1eeG7h3QgxJHhu5FpIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDExIHNyYy9zdGF0Y21kLmM6MjQ5Cittc2dpZCAiZmlsZSBtYXkgbm90IGNvbnRhaW4gbmV3bGluZXMiCittc2dzdHIgInThuq1wIHRpbiBraMO0bmcgdGjhu4MgY2jhu6lhIGvDvSB04buxIGTDsm5nIG3hu5tpIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDE4Cittc2dpZCAiQ2Fubm90IGRpdmVydCBkaXJlY3RvcmllcyIKK21zZ3N0ciAiS2jDtG5nIHRo4buDIGNodXnhu4NuIGjGsOG7m25nIHRoxrAgbeG7pWMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IGRpdmVydCBmaWxlICclcycgdG8gaXRzZWxmIgorbXNnc3RyICJraMO0bmcgdGjhu4MgY2h1eeG7g24gaMaw4bubbmcgdOG6rXAgdGluIMKrICVzIMK7IHThu5tpIGNow61uaCBuw7MiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiTGVhdmluZyAnJXMnXG4iCittc2dzdHIgIsSQYW5nIMSR4buDIGzhuqFpIMKrICVzIMK7XG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCVzJyBjbGFzaGVzIHdpdGggYCVzJyIKK21zZ3N0ciAiwqsgJXMgwrsgeHVuZyDEkeG7mXQgduG7m2kgwqsgJXMgwrsiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAiQWRkaW5nICclcydcbiIKK21zZ3N0ciAixJBhbmcgdGjDqm0gwqsgJXMgwrtcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjUxMAorIywgYy1mb3JtYXQKK21zZ2lkICJObyBkaXZlcnNpb24gJyVzJywgbm9uZSByZW1vdmVkLlxuIgorbXNnc3RyICJLaMO0bmcgY8OzIHPhu7EgbMOgbSB0cuG7h2NoIMKrICVzIMK7IG7DoG8gbsOqbiBraMO0bmcgZ+G7oSBi4buPLlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTI1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJtaXNtYXRjaCBvbiBkaXZlcnQtdG9cbiIKKyIgIHdoZW4gcmVtb3ZpbmcgYCVzJ1xuIgorIiAgZm91bmQgYCVzJyIKK21zZ3N0ciAiIgorInNhaSBraOG7m3AgduG7m2kgwqsgZGl2ZXJ0LXRvIMK7XG4iCisiICBraGkgZ+G7oSBi4buPIMKrICVzIMK7XG4iCisiICB0w6xtIHRo4bqleSDCqyAlcyDCuyIKKworIzogc3JjL2RpdmVydGNtZC5jOjUzMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisibWlzbWF0Y2ggb24gcGFja2FnZVxuIgorIiAgd2hlbiByZW1vdmluZyBgJXMnXG4iCisiICBmb3VuZCBgJXMnIgorbXNnc3RyICIiCisic2FpIGto4bubcCB24bubaSDCqyBwYWNrYWdlIMK7XG4iCisiICBraGkgZ+G7oSBi4buPIMKrICVzIMK7XG4iCisiICB0w6xtIHRo4bqleSDCqyAlcyDCuyIKKworIzogc3JjL2RpdmVydGNtZC5jOjUzOQorIywgYy1mb3JtYXQKK21zZ2lkICJSZW1vdmluZyAnJXMnXG4iCittc2dzdHIgIsSQYW5nIGfhu6EgYuG7jyDCqyAlcyDCu1xuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjU3Cittc2dpZCAicGFja2FnZSBtYXkgbm90IGNvbnRhaW4gbmV3bGluZXMiCittc2dzdHIgIsKrIHBhY2thZ2UgwrsgKGfDs2kpIGtow7RuZyB0aOG7gyBjaOG7qWEga8O9IHThu7EgZMOybmcgbeG7m2kiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo2NjYKK21zZ2lkICJkaXZlcnQtdG8gbWF5IG5vdCBjb250YWluIG5ld2xpbmVzIgorbXNnc3RyICLCqyBkaXZlcnQtdG8gwrsgKGNodXnhu4NuIGjGsOG7m25nIHThu5tpKSBraMO0bmcgdGjhu4MgY2jhu6lhIGvDvSB04buxIGTDsm5nIG3hu5tpIgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzo2NAorbXNnaWQgImZhaWxlZCB0byBvcGVuIGRpdmVyc2lvbnMgZmlsZSIKK21zZ3N0ciAibOG7l2kgbeG7nyB04bqtcCB0aW4gZGl2ZXJzaW9ucyAoc+G7sSB0cuG7h2NoIMSRaSkiCisKKyM6IHNyYy9kaXZlcnRkYi5jOjcxCittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IHByZXZpb3VzIGRpdmVyc2lvbnMgZmlsZSIKK21zZ3N0ciAibOG7l2kgZnN0YXQgdOG6rXAgdGluIGRpdmVyc2lvbnMgKHPhu7EgdHLhu4djaCDEkWkpIHRyxrDhu5tjIgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzo3MworbXNnaWQgImZhaWxlZCB0byBmc3RhdCBkaXZlcnNpb25zIGZpbGUiCittc2dzdHIgImzhu5dpIGZzdGF0IHThuq1wIHRpbiBkaXZlcnNpb25zIChz4buxIHRy4buHY2ggxJFpKSIKKworIzogc3JjL2RpdmVydGRiLmM6MTEzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZsaWN0aW5nIGRpdmVyc2lvbnMgaW52b2x2aW5nIGAlLjI1MHMnIG9yIGAlLjI1MHMnIgorbXNnc3RyICJkaXZlcnNpb25zIChz4buxIHRy4buHY2ggxJFpKSB4dW5nIMSR4buZdCB24bubaSDCqyAlLjI1MHMgwrsgaGF5IMKrICUuMjUwcyDCuyIKKworIzogc3JjL2VucXVpcnkuYzo3MworbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBpbiBhIG1lc3MgZHVlIHRvIHNlcmlvdXMgcHJvYmxlbXMgZHVyaW5nXG4iCisiaW5zdGFsbGF0aW9uLiAgVGhleSBtdXN0IGJlIHJlaW5zdGFsbGVkIGZvciB0aGVtIChhbmQgYW55IHBhY2thZ2VzXG4iCisidGhhdCBkZXBlbmQgb24gdGhlbSkgdG8gZnVuY3Rpb24gcHJvcGVybHk6XG4iCittc2dzdHIgIiIKKyJOaOG7r25nIGfDs2kgc2F1IOG7nyB0cm9uZyB0w6xuaCB0cuG6oW5nIGjhu5duIGxv4bqhbiBkbyB24bqlbiDEkeG7gSBuZ2hp4buHbSB0cuG7jW5nXG4iCisidHJvbmcgdGnhur9uIHRyw6xuaCBjw6BpIMSR4bq3dC4gQ8OhYyBnw7NpIG7DoHkgcGjhuqNpIMSRxrDhu6NjIGPDoGkgxJHhurd0IGzhuqFpIMSR4buDIGNow7puZ1xuIgorIih2w6AgdOG6pXQgY+G6oyBuaOG7r25nIGfDs2kgcGjhu6UgdGh14buZYyB2w6BvIGNow7puZykgaG/huqF0IMSR4buZbmcgxJHGsOG7o2M6XG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6ODAKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBoYXZlIGJlZW4gdW5wYWNrZWQgYnV0IG5vdCB5ZXQgY29uZmlndXJlZC5cbiIKKyJUaGV5IG11c3QgYmUgY29uZmlndXJlZCB1c2luZyBkcGtnIC0tY29uZmlndXJlIG9yIHRoZSBjb25maWd1cmVcbiIKKyJtZW51IG9wdGlvbiBpbiBkc2VsZWN0IGZvciB0aGVtIHRvIHdvcms6XG4iCittc2dzdHIgIiIKKyJOaOG7r25nIGfDs2kgc2F1IMSRw6MgxJHGsOG7o2MgbeG7nyBnw7NpIG5oxrBuZyBjaMawYSDEkcaw4bujYyBj4bqldSBow6xuaC5cbiIKKyJDw6FjIGfDs2kgbsOgeSBwaOG6o2kgxJHGsOG7o2MgY+G6pXUgaMOsbmggYuG6sW5nIGzhu4duaCDCqyBkcGtnIC0tY29uZmlndXJlIMK7XG4iCisiaG/hurdjIHTDuXkgY2jhu41uIHRyw6xuaCDEkcahbiDCqyBj4bqldSBow6xuaCDCuyB0cm9uZyBkc2VsZWN0LFxuIgorIsSR4buDIGNow7puZyBob+G6oXQgxJHhu5luZyDEkcaw4bujYzpcbiIKKworIzogc3JjL2VucXVpcnkuYzo4NworbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBvbmx5IGhhbGYgY29uZmlndXJlZCwgcHJvYmFibHkgZHVlIHRvIHByb2JsZW1zXG4iCisiY29uZmlndXJpbmcgdGhlbSB0aGUgZmlyc3QgdGltZS4gIFRoZSBjb25maWd1cmF0aW9uIHNob3VsZCBiZSByZXRyaWVkIHVzaW5nXG4iCisiZHBrZyAtLWNvbmZpZ3VyZSA8cGFja2FnZT4gb3IgdGhlIGNvbmZpZ3VyZSBtZW51IG9wdGlvbiBpbiBkc2VsZWN0OlxuIgorbXNnc3RyICIiCisiTmjhu69uZyBnw7NpIHNhdSBjaOG7iSDEkcaw4bujYyBj4bqldSBow6xuaCBt4buZdCBu4butYSwgY8OzIHRo4buDIGRvIHbhuqVuIMSR4buBIGtoaSBj4bqldSBow6xuaFxuIgorImNow7puZyBs4bqnbiB0aOG7qSBuaOG6pXQuIFZp4buHYyBj4bqldSBow6xuaCBuw6puIMSRxrDhu6NjIHRo4butIGzhuqFpIGLhurFuZyBs4buHbmhcbiIKKyLCqyBkcGtnIC0tY29uZmlndXJlIDx0w6puX2fDs2k+IMK7XG4iCisiaG/hurdjIHTDuXkgY2jhu41uIHRyw6xuaCDEkcahbiDCqyBj4bqldSBow6xuaCDCuyB0cm9uZyBkc2VsZWN0OlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjk0Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgYXJlIG9ubHkgaGFsZiBpbnN0YWxsZWQsIGR1ZSB0byBwcm9ibGVtcyBkdXJpbmdcbiIKKyJpbnN0YWxsYXRpb24uICBUaGUgaW5zdGFsbGF0aW9uIGNhbiBwcm9iYWJseSBiZSBjb21wbGV0ZWQgYnkgcmV0cnlpbmcgaXQ7XG4iCisidGhlIHBhY2thZ2VzIGNhbiBiZSByZW1vdmVkIHVzaW5nIGRzZWxlY3Qgb3IgZHBrZyAtLXJlbW92ZTpcbiIKK21zZ3N0ciAiIgorIk5o4buvbmcgZ8OzaSBzYXUgY2jhu4kgxJHGsOG7o2MgY8OgaSDEkeG6t3QgbeG7mXQgbuG7rWEsIGRvIHbhuqVuIMSR4buBIHRyb25nIHRp4bq/biB0csOsbmggY8OgaSDEkeG6t3QuXG4iCisiUuG6pXQgY8OzIHRo4buDIHRo4butIGzhuqFpIGNo4bqheSB4b25nIHRp4bq/biB0csOsbmggY8OgaSDEkeG6t3Q7IGPDsyB0aOG7gyBn4buhIGLhu48gY8OhYyBnw7NpXG4iCisiYuG6sW5nIGRzZWxlY3QgaGF5IGzhu4duaCDCqyBkcGtnIC0tcmVtb3ZlIMK7OlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjEwMQorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBhd2FpdGluZyBwcm9jZXNzaW5nIG9mIHRyaWdnZXJzIHRoYXQgdGhleVxuIgorImhhdmUgYWN0aXZhdGVkIGluIG90aGVyIHBhY2thZ2VzLiAgVGhpcyBwcm9jZXNzaW5nIGNhbiBiZSByZXF1ZXN0ZWQgdXNpbmdcbiIKKyJkc2VsZWN0IG9yIGRwa2cgLS1jb25maWd1cmUgLS1wZW5kaW5nIChvciBkcGtnIC0tdHJpZ2dlcnMtb25seSk6XG4iCittc2dzdHIgIiIKKyJOaOG7r25nIGfDs2kgc2F1IMSRYW5nIMSR4bujaSBjaOG7qWMgbsSDbmcgeOG7rSBsw70gY8OhYyBi4buZIGfDonkgbsOqblxuIgorImNow7puZyDEkcOjIGvDrWNoIGhv4bqhdCB0cm9uZyBnw7NpIGtow6FjLlxuIgorIkNo4bupYyBuxINuZyB44butIGzDvSBuw6B5IGPDsyB0aOG7gyDEkcaw4bujYyB5w6p1IGPhuqd1IGTDuW5nOlxuIgorIiDigKIgZHNlbGVjdFxuIgorIiDigKIgZHBrZyAtLWNvbmZpZ3VyZSAtLXBlbmRpbmdcbiIKKyIg4oCiIGRwa2cgLS10cmlnZ2Vycy1vbmx5XG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTA4Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgaGF2ZSBiZWVuIHRyaWdnZXJlZCwgYnV0IHRoZSB0cmlnZ2VyIHByb2Nlc3NpbmdcbiIKKyJoYXMgbm90IHlldCBiZWVuIGRvbmUuICBUcmlnZ2VyIHByb2Nlc3NpbmcgY2FuIGJlIHJlcXVlc3RlZCB1c2luZ1xuIgorImRzZWxlY3Qgb3IgZHBrZyAtLWNvbmZpZ3VyZSAtLXBlbmRpbmcgKG9yIGRwa2cgLS10cmlnZ2Vycy1vbmx5KTpcbiIKK21zZ3N0ciAiIgorIk5o4buvbmcgZ8OzaSBzYXUgxJHDoyDEkcaw4bujYyBnw6J5IG7Dqm4sIG5oxrBuZyBjaMawYSB44butIGzDvSBi4buZIGfDonkgbsOqbi5cbiIKKyJDaOG7qWMgbsSDbmcgeOG7rSBsw70gbsOgeSBjw7MgdGjhu4MgxJHGsOG7o2MgecOqdSBj4bqndSBkw7luZzpcbiIKKyIg4oCiIGRzZWxlY3RcbiIKKyIg4oCiIGRwa2cgLS1jb25maWd1cmUgLS1wZW5kaW5nXG4iCisiIOKAoiBkcGtnIC0tdHJpZ2dlcnMtb25seVxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjEzNyBzcmMvZW5xdWlyeS5jOjIxMSBzcmMvZW5xdWlyeS5jOjI5MiBzcmMvZW5xdWlyeS5jOjM3MworIzogc3JjL2VucXVpcnkuYzo0NjAgc3JjL3NlbGVjdC5jOjk4IHNyYy9zZWxlY3QuYzoxNjQgc3JjL3RyaWdjbWQuYzoxOTkKKyM6IHNyYy91cGRhdGUuYzo0OCBzcmMvdXBkYXRlLmM6MTEzIGRwa2ctc3BsaXQvcXVldWUuYzoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyB0YWtlcyBubyBhcmd1bWVudHMiCittc2dzdHIgIsKrIC0tJXMgwrsga2jDtG5nIGNo4bqlcCBuaOG6rW4gxJHhu5FpIHPhu5EiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTUyCittc2dpZCAiIgorIkFub3RoZXIgcHJvY2VzcyBoYXMgbG9ja2VkIHRoZSBkYXRhYmFzZSBmb3Igd3JpdGluZywgYW5kIG1pZ2h0IGN1cnJlbnRseSBiZVxuIgorIm1vZGlmeWluZyBpdCwgc29tZSBvZiB0aGUgZm9sbG93aW5nIHByb2JsZW1zIG1pZ2h0IGp1c3QgYmUgZHVlIHRvIHRoYXQuXG4iCittc2dzdHIgIiIKKyJN4buZdCB0aeG6v24gdHLDrG5oIGtow6FjIMSRw6Mga2hvw6EgY8ahIHPhu58gZOG7ryBsaeG7h3UgxJHhu4MgZ2hpIG5o4bubLCBjw7MgdGjhu4MgbMOgIMSRYW5nIHPhu61hIMSR4buVaSAiCisibsOzLlxuIgorIk3hu5l0IHPhu5EgduG6pW4gxJHhu4EgdGhlbyDEkcOieSBjw7MgdGjhu4MgZG8gdHLGsOG7nW5nIGjhu6NwIMSRw7MuXG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTkxCisjLCBmdXp6eQorI3wgbXNnaWQgIjx1bmtub3duPiIKK21zZ2N0eHQgInNlY3Rpb24iCittc2dpZCAiPHVua25vd24+IgorbXNnc3RyICI8a2jDtG5nIHLDtT4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MjUxCisjLCBjLWZvcm1hdAorbXNnaWQgIiAlZCBpbiAlczogIgorbXNnc3RyICIgJWQgdHJvbmcgJXM6ICIKKworIzogc3JjL2VucXVpcnkuYzoyNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiICVkIHBhY2thZ2UsIGZyb20gdGhlIGZvbGxvd2luZyBzZWN0aW9uOiIKK21zZ2lkX3BsdXJhbCAiICVkIHBhY2thZ2VzLCBmcm9tIHRoZSBmb2xsb3dpbmcgc2VjdGlvbnM6IgorbXNnc3RyWzBdICIgJWQgZ8OzaSwgdOG7qyBwaOG6p24gc2F1IDoiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzA1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJWZXJzaW9uIG9mIGRwa2cgd2l0aCB3b3JraW5nICVzIHN1cHBvcnQgbm90IHlldCBjb25maWd1cmVkLlxuIgorIiBQbGVhc2UgdXNlICdkcGtnIC0tY29uZmlndXJlIGRwa2cnLCBhbmQgdGhlbiB0cnkgYWdhaW4uXG4iCittc2dzdHIgIiIKKyJDaMawYSBj4bqldSBow6xuaCBwaGnDqm4gYuG6o24gZHBrZyBo4buXIHRy4bujICVzIGhv4bqhdCDEkeG7mW5nLlxuIgorIiBIw6N5IGTDuW5nIGPDonUgbOG7h25oIGPhuqV1IGjDrG5oICDCqyBkcGtnIC0tY29uZmlndXJlIGRwa2cgwrssXG4iCisic2F1IMSRw7MgdGjhu60gbOG6oWkuXG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzEwCisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2cgbm90IHJlY29yZGVkIGFzIGluc3RhbGxlZCwgY2Fubm90IGNoZWNrIGZvciAlcyBzdXBwb3J0IVxuIgorbXNnc3RyICIiCisiVGhlbyBk4buvIGxp4buHdSBoaeG7h24gdGjhu51pLCBkcGtnIGtow7RuZyBwaOG6o2kgxJHGsOG7o2MgY8OgaSDEkeG6t3QuIFRyb25nIHRyxrDhu51uZyBo4bujcCBuw6B5LCAiCisia2jDtG5nIHRo4buDIGtp4buDbSB0cmEgY8OzIGjhu5cgdHLhu6MgJXMga2jDtG5nLlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjMyMQorbXNnaWQgIlByZS1EZXBlbmRzIGZpZWxkIgorbXNnc3RyICJUcsaw4budbmcgwqsgcGjhu6UgdGh14buZYyBz4bq1biDCuyIKKworIzogc3JjL2VucXVpcnkuYzozMjkKK21zZ2lkICJlcG9jaCIKK21zZ3N0ciAidGjhu51pIMSRaeG7g20iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzM3Cittc2dpZCAibG9uZyBmaWxlbmFtZXMiCittc2dzdHIgInTDqm4gdOG6rXAgdGluIGTDoGkiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzQ2Cittc2dpZCAibXVsdGlwbGUgQ29uZmxpY3RzIGFuZCBSZXBsYWNlcyIKK21zZ3N0ciAiY8OzIG5oaeG7gXUgdHLGsOG7nW5nIGjhu6NwIFh1bmcgxJHhu5l0IHbDoCBUaGF5IHRo4bq/IgorCisjOiBzcmMvZW5xdWlyeS5jOjQzNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogY2Fubm90IHNlZSBob3cgdG8gc2F0aXNmeSBwcmUtZGVwZW5kZW5jeTpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorImRwa2c6IGtow7RuZyBiaeG6v3QgY8OhY2ggdGhv4bqjIG3Do24gcXVhbiBo4buHIHBo4bulIHRodeG7mWMgc+G6tW46XG4iCisiICVzXG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6NDM1CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzYXRpc2Z5IHByZS1kZXBlbmRlbmNpZXMgZm9yICUuMjUwcyAod2FudGVkIGR1ZSB0byAlLjI1MHMpIgorbXNnc3RyICIiCisia2jDtG5nIHRo4buDIHRob+G6oyBtw6NuIGPDoWMgcXVhbiBo4buHIHBo4bulIHRodeG7mWMgc+G6tW4gY2hvICUuMjUwcyAoY+G6p24gZG8gJS4yNTBzKSIKKworIzogc3JjL2VucXVpcnkuYzo0NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAib2Jzb2xldGUgb3B0aW9uICctLSVzJywgcGxlYXNlIHVzZSAnLS0lcycgaW5zdGVhZC4iCittc2dzdHIgImfhurdwIHTDuXkgY2jhu41uIGPFqSDCqyAtLSVzIMK7OiBow6N5IHPhu60gZOG7pW5nIMKrIC0tJXMgwrsgxJHhu4MgdGhheSB0aOG6vy4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6NTE5Cittc2dpZCAiIgorIi0tY29tcGFyZS12ZXJzaW9ucyB0YWtlcyB0aHJlZSBhcmd1bWVudHM6IDx2ZXJzaW9uPiA8cmVsYXRpb24+IDx2ZXJzaW9uPiIKK21zZ3N0ciAiIgorIsKrIC0tY29tcGFyZS12ZXJzaW9ucyDCuyAoc28gc8OhbmggcGhpw6puIGLhuqNuKSBjaOG6pXAgbmjhuq1uIGJhIMSR4buRaSBz4buROiA8dmVyc2lvbj4gIgorIihwaGnDqm4gYuG6o24gMSkgPHJlbGF0aW9uPiAocXVhbiBo4buHKSB2w6AgPHZlcnNpb24+IChwaGnDqm4gYuG6o24gMikiCisKKyM6IHNyYy9lbnF1aXJ5LmM6NTI0Cittc2dpZCAiLS1jb21wYXJlLXZlcnNpb25zIGJhZCByZWxhdGlvbiIKK21zZ3N0ciAiwqsgLS1jb21wYXJlLXZlcnNpb25zIMK7IChzbyBzw6FuaCBwaGnDqm4gYuG6o24pIGPDsyBxdWFuIGjhu4cgc2FpIgorCisjOiBzcmMvZW5xdWlyeS5jOjUyOSBzcmMvZW5xdWlyeS5jOjUzMSBzcmMvZW5xdWlyeS5jOjU0MCBzcmMvZW5xdWlyeS5jOjU0MgorIywgYy1mb3JtYXQKK21zZ2lkICJ2ZXJzaW9uICclcycgaGFzIGJhZCBzeW50YXg6ICVzIgorbXNnc3RyICJwaGnDqm4gYuG6o24gwqsgJXMgwrsgY8OzIGPDuiBwaMOhcCBzYWk6ICVzIgorCisjOiBzcmMvZXJyb3JzLmM6NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBlcnJvciBwcm9jZXNzaW5nICVzICgtLSVzKTpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorIiVzOiBs4buXaSB44butIGzDvSAlcyAoLS0lcyk6XG4iCisiICVzXG4iCisKKyM6IHNyYy9lcnJvcnMuYzo2OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgImRwa2c6IGZhaWxlZCB0byBhbGxvY2F0ZSBtZW1vcnkgZm9yIG5ldyBlbnRyeSBpbiBsaXN0IG9mIGZhaWxlZCBwYWNrYWdlcy4iCittc2dpZCAiIgorIiVzOiBmYWlsZWQgdG8gYWxsb2NhdGUgbWVtb3J5IGZvciBuZXcgZW50cnkgaW4gbGlzdCBvZiBmYWlsZWQgcGFja2FnZXM6ICVzIgorbXNnc3RyICIiCisiZHBrZzogbOG7l2kgY+G6pXAgcGjDoXQgYuG7mSBuaOG7myBjaG8gbeG7pWMgbmjhuq1wIG3hu5tpIHRyb25nIGRhbmggc8OhY2ggbmjhu69uZyBnw7NpIGtow7RuZyAiCisidGjDoG5oIGPDtG5nLiIKKworIzogc3JjL2Vycm9ycy5jOjc5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJkcGtnOiB0b28gbWFueSBlcnJvcnMsIHN0b3BwaW5nXG4iCittc2dpZCAiJXM6IHRvbyBtYW55IGVycm9ycywgc3RvcHBpbmdcbiIKK21zZ3N0ciAiZHBrZzogcXXDoSBuaGnhu4F1IGzhu5dpIG7Dqm4gZOG7q25nIGzhuqFpXG4iCisKKyM6IHNyYy9lcnJvcnMuYzo4NworbXNnaWQgIkVycm9ycyB3ZXJlIGVuY291bnRlcmVkIHdoaWxlIHByb2Nlc3Npbmc6XG4iCittc2dzdHIgIkfhurdwIGzhu5dpIGtoaSB44butIGzDvTpcbiIKKworIzogc3JjL2Vycm9ycy5jOjk0Cittc2dpZCAiUHJvY2Vzc2luZyB3YXMgaGFsdGVkIGJlY2F1c2UgdGhlcmUgd2VyZSB0b28gbWFueSBlcnJvcnMuXG4iCittc2dzdHIgIlRp4bq/biB0csOsbmggYuG7iyBk4burbmcgbOG6oWkgdsOsIGPDsyBxdcOhIG5oaeG7gXUgbOG7l2kuXG4iCisKKyM6IHNyYy9lcnJvcnMuYzoxMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSAlcyB3YXMgb24gaG9sZCwgcHJvY2Vzc2luZyBpdCBhbnl3YXkgYXMgeW91IHJlcXVlc3RlZFxuIgorbXNnc3RyICJHw7NpICVzIGLhu4sgZ2nhu68gbOG6oWksIHbhuqtuIHjhu60gbMO9IG7DsyBuaMawIGLhuqFuIHnDqnUgY+G6p3UuXG4iCisKKyM6IHNyYy9lcnJvcnMuYzoxMDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlBhY2thZ2UgJXMgaXMgb24gaG9sZCwgbm90IHRvdWNoaW5nIGl0LiAgVXNlIC0tZm9yY2UtaG9sZCB0byBvdmVycmlkZS5cbiIKK21zZ3N0ciAiIgorIkfDs2kgJXMgYuG7iyBnaeG7ryBs4bqhaSBuw6puIGtow7RuZyB0aGFvIHTDoWMgbsOzLiBEw7luZyDCqyAtLWZvcmNlLWhvbGQgwrsgKGJ14buZYyBnaeG7ryAiCisibOG6oWkpIMSR4buDIMSRw6guXG4iCisKKyM6IHNyYy9lcnJvcnMuYzoxMTkKK21zZ2lkICJvdmVycmlkaW5nIHByb2JsZW0gYmVjYXVzZSAtLWZvcmNlIGVuYWJsZWQ6IgorbXNnc3RyICIiCisiY8OzIHF1eeG7gW4gY2FvIGjGoW4gduG6pW4gxJHhu4EgbsOgeSB2w6wgdHXhu7MgY2jhu41uIMKrIC0tZm9yY2UgwrsgKMOpcCBideG7mWMpIMSRw6MgxJHGsOG7o2MgaGnhu4d1ICIKKyJs4buxYzogIgorCisjOiBzcmMvZmlsZXNkYi5jOjMwNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcyciCittc2dzdHIgImtow7RuZyB0aOG7gyBt4bufIHThuq1wIHRpbiBsaeG7h3Qga8OqIG7hu5lpIGR1bmcgZ8OzaSDCqyAlLjI1MHMgwrsiCisKKyM6IHNyYy9maWxlc2RiLmM6MzExCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcycgbWlzc2luZywgYXNzdW1pbmcgcGFja2FnZSBoYXMgbm8gZmlsZXMgIgorImN1cnJlbnRseSBpbnN0YWxsZWQuIgorbXNnc3RyICIiCisidGhp4bq/dSB04bqtcCB0aW4gbGnhu4d0IGvDqiBu4buZaSBkdW5nIGfDs2kgwqsgJS4yNTBzIMK7LCBnaeG6oyBz4butIGfDs2kgbsOgeSBraMO0bmcgY8OzIHThuq1wICIKKyJ0aW4gaGnhu4duIHRo4budaSDEkcaw4bujYyBjw6BpIMSR4bq3dC4iCisKKyM6IHNyYy9maWxlc2RiLmM6MzIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAnJS4yNTBzJyIKK21zZ3N0ciAia2jDtG5nIHRo4buDIGzhuqV5IHRy4bqhbmcgdGjDoWkgduG7gSB04bqtcCB0aW4gbGnhu4d0IGvDqiBu4buZaSBkdW5nIGfDs2kgwqsgJS4yNTBzIMK7IgorCisjOiBzcmMvZmlsZXNkYi5jOjMzMAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZXMgbGlzdCBmb3IgcGFja2FnZSBgJS4yNTBzJyIKK21zZ2lkICJyZWFkaW5nIGZpbGVzIGxpc3QgZm9yIHBhY2thZ2UgJyUuMjUwcyciCittc2dzdHIgIm7hu5lpIGR1bmcgZ8OzaSDCqyAlLjI1MHMgwrsiCisKKyM6IHNyYy9maWxlc2RiLmM6MzM2CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAnJS4yNTBzJyBpcyBtaXNzaW5nIGZpbmFsIG5ld2xpbmUiCittc2dzdHIgIiIKKyJ04bqtcCB0aW4gbGnhu4d0IGvDqiBu4buZaSBkdW5nIGfDs2kgwqsgJS4yNTBzIMK7IGPDsm4gdGhp4bq/dSBrw70gdOG7sSBkw7JuZyBt4bubaSBjdeG7kWkgY8O5bmciCisKKyM6IHNyYy9maWxlc2RiLmM6MzQ0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSBgJS4yNTBzJyBjb250YWlucyBlbXB0eSBmaWxlbmFtZSIKK21zZ3N0ciAidOG6rXAgdGluIGxp4buHdCBrw6ogbuG7mWkgZHVuZyBnw7NpIMKrICUuMjUwcyDCuyBjaOG7qWEgdMOqbiB04bqtcCB0aW4gcuG7l25nIgorCisjOiBzcmMvZmlsZXNkYi5jOjM1MgorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSBgJS4yNTBzJyIKK21zZ3N0ciAiZ+G6t3AgbOG7l2kga2hpIMSRw7NuZyB04bqtcCB0aW4gbGnhu4d0IGvDqiBu4buZaSBkdW5nIGfDs2kgwqsgJS4yNTBzIMK7IgorCisjOiBzcmMvZmlsZXNkYi5jOjQ2MgorbXNnaWQgIihSZWFkaW5nIGRhdGFiYXNlIC4uLiAiCittc2dzdHIgIijEkGFuZyDEkeG7jWMgY8ahIHPhu58gZOG7ryBsaeG7h3UgLi4uICIKKworIzogc3JjL2ZpbGVzZGIuYzo0ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJWQgZmlsZSBvciBkaXJlY3RvcnkgY3VycmVudGx5IGluc3RhbGxlZC4pXG4iCittc2dpZF9wbHVyYWwgIiVkIGZpbGVzIGFuZCBkaXJlY3RvcmllcyBjdXJyZW50bHkgaW5zdGFsbGVkLilcbiIKK21zZ3N0clswXSAiJWQgdOG6rXAgdGluIGhv4bq3YyB0aMawIG3hu6VjIGhp4buHbiB0aOG7nWkgxJHGsOG7o2MgY8OgaSDEkeG6t3QuKVxuIgorCisjOiBzcmMvZmlsZXNkYi5jOjUxNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICJraMO0bmcgdGjhu4MgdOG6oW8gdOG6rXAgdGluIGxp4buHdCBrw6ogbuG7mWkgZHVuZyDEkcOjIGPhuq1wIG5o4bqtdCBjaG8gZ8OzaSAlcyIKKworIzogc3JjL2ZpbGVzZGIuYzo1MjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIHRvIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICJs4buXaSBnaGkgdsOgbyB04bqtcCB0aW4gbGnhu4d0IGvDqiBu4buZaSBkdW5nIMSRw6MgY+G6rXAgbmjhuq10IGNobyBnw7NpICVzIgorCisjOiBzcmMvZmlsZXNkYi5jOjUyOAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZmx1c2ggdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgImzhu5dpIHjDs2Egc+G6oWNoIHThuq1wIHRpbiBsaeG7h3Qga8OqIG7hu5lpIGR1bmcgxJHDoyBj4bqtcCBuaOG6rXQgY2hvIGfDs2kgJXMiCisKKyM6IHNyYy9maWxlc2RiLmM6NTMwCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBzeW5jIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICJs4buXaSDEkeG7k25nIGLhu5kgaG/DoSB04bqtcCB0aW4gbGnhu4d0IGvDqiBu4buZaSBkdW5nIMSRw6MgY+G6rXAgbmjhuq10IGNobyBnw7NpICVzIgorCisjOiBzcmMvZmlsZXNkYi5jOjUzMworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2xvc2UgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgImzhu5dpIMSRw7NuZyB04bqtcCB0aW4gbGnhu4d0IGvDqiBu4buZaSBkdW5nIMSRw6MgY+G6rXAgbmjhuq10IGNobyBnw7NpICVzIgorCisjOiBzcmMvZmlsZXNkYi5jOjUzNQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gaW5zdGFsbCB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAibOG7l2kgY8OgaSDEkeG6t3QgdOG6rXAgdGluIGxp4buHdCBrw6ogbuG7mWkgZHVuZyDEkcOjIGPhuq1wIG5o4bqtdCBjaG8gZ8OzaSAlcyIKKworIzogc3JjL2hlbHAuYzo0OAorbXNnaWQgIm5vdCBpbnN0YWxsZWQiCittc2dzdHIgImNoxrBhIGPDoGkgxJHhurd0IgorCisjOiBzcmMvaGVscC5jOjQ5Cittc2dpZCAibm90IGluc3RhbGxlZCBidXQgY29uZmlncyByZW1haW4iCittc2dzdHIgImtow7RuZyDEkcaw4bujYyBjw6BpIMSR4bq3dCBuaMawbmcgduG6q24gY8OybiBjw7MgY8OhYyBj4bqldSBow6xuaCIKKworIzogc3JjL2hlbHAuYzo1MAorbXNnaWQgImJyb2tlbiBkdWUgdG8gZmFpbGVkIHJlbW92YWwgb3IgaW5zdGFsbGF0aW9uIgorbXNnc3RyICJi4buLIHbhu6EgZG8gdmnhu4djIGfhu6EgYuG7jyBob+G6t2MgY8OgaSDEkeG6t3QgbcOgIGLhu4sgbOG7l2kiCisKKyM6IHNyYy9oZWxwLmM6NTEKK21zZ2lkICJ1bnBhY2tlZCBidXQgbm90IGNvbmZpZ3VyZWQiCittc2dzdHIgIsSRw6MgbeG7nyBnw7NpIG5oxrBuZyBjaMawYSBj4bqldSBow6xuaCIKKworIzogc3JjL2hlbHAuYzo1MgorbXNnaWQgImJyb2tlbiBkdWUgdG8gcG9zdGluc3QgZmFpbHVyZSIKK21zZ3N0ciAiYuG7iyB24buhIGRvIHZp4buHYyBi4buLIGzhu5dpIHNhdSBraGkgY8OgaSDEkeG6t3QiCisKKyM6IHNyYy9oZWxwLmM6NTMKK21zZ2lkICJhd2FpdGluZyB0cmlnZ2VyIHByb2Nlc3NpbmcgYnkgYW5vdGhlciBwYWNrYWdlIgorbXNnc3RyICLEkWFuZyDEkeG7o2kgbeG7mXQgZ8OzaSBraMOhYyB44butIGzDvSBi4buZIGfDonkgbsOqbiIKKworIzogc3JjL2hlbHAuYzo1NAorbXNnaWQgInRyaWdnZXJlZCIKK21zZ3N0ciAixJHDoyBnw6J5IG7Dqm4iCisKKyM6IHNyYy9oZWxwLmM6NTUKK21zZ2lkICJpbnN0YWxsZWQiCittc2dzdHIgIsSRw6MgY8OgaSDEkeG6t3QiCisKKyM6IHNyYy9oZWxwLmM6MTA3CisjLCBmdXp6eQorI3wgbXNnaWQgImVycm9yOiBQQVRIIGlzIG5vdCBzZXQuIgorbXNnaWQgIlBBVEggaXMgbm90IHNldC4iCittc2dzdHIgImzhu5dpOiBjaMawYSDEkeG6t3QgUEFUSCAoxJHGsOG7nW5nIGThuqtuIMSR4bq/biBwaOG6p24gbeG7gW0pLiIKKworIzogc3JjL2hlbHAuYzoxMjkKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS4iCittc2dzdHIgIiIKKyLCqyAlcyDCuyBraMO0bmcgbuG6sW0gdHJvbmcgUEFUSCAoxJHGsOG7nW5nIGThuqtuIMSR4bq/biBwaOG6p24gbeG7gW0pIGhv4bq3YyBraMO0bmcgdGjhu7FjIGhp4buHbiAiCisixJHGsOG7o2MuIgorCisjOiBzcmMvaGVscC5jOjEzOAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiJyVzJyBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS4iCittc2dpZCAiIgorIiVkIGV4cGVjdGVkIHByb2dyYW0gbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuXG4iCisiJXMiCittc2dpZF9wbHVyYWwgIiIKKyIlZCBleHBlY3RlZCBwcm9ncmFtcyBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS5cbiIKKyIlcyIKK21zZ3N0clswXSAiIgorIsKrICVzIMK7IGtow7RuZyBu4bqxbSB0cm9uZyBQQVRIICjEkcaw4budbmcgZOG6q24gxJHhur9uIHBo4bqnbiBt4buBbSkgaG/hurdjIGtow7RuZyB0aOG7sWMgaGnhu4duICIKKyLEkcaw4bujYy4iCisKKyM6IHNyYy9oZWxwLmM6MTQxCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICIlZCBleHBlY3RlZCBwcm9ncmFtIG5vdCBmb3VuZCBpbiBQQVRIIG9yIG5vdCBleGVjdXRhYmxlLlxuIgorI3wgIk5COiByb290J3MgUEFUSCBzaG91bGQgdXN1YWxseSBjb250YWluIC91c3IvbG9jYWwvc2JpbiwgL3Vzci9zYmluIGFuZCAvIgorI3wgInNiaW4uIgorI3wgbXNnaWRfcGx1cmFsICIiCisjfCAiJWQgZXhwZWN0ZWQgcHJvZ3JhbXMgbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuXG4iCisjfCAiTkI6IHJvb3QncyBQQVRIIHNob3VsZCB1c3VhbGx5IGNvbnRhaW4gL3Vzci9sb2NhbC9zYmluLCAvdXNyL3NiaW4gYW5kIC8iCisjfCAic2Jpbi4iCittc2dpZCAiIgorIk5vdGU6IHJvb3QncyBQQVRIIHNob3VsZCB1c3VhbGx5IGNvbnRhaW4gL3Vzci9sb2NhbC9zYmluLCAvdXNyL3NiaW4gYW5kIC8iCisic2Jpbi4iCittc2dzdHIgIiIKKyJraMO0bmcgdMOsbSB0aOG6pXkgJWQgY2jGsMahbmcgdHLDrG5oIG1vbmcgxJHhu6NpIHRyb25nIFBBVEggKMSRxrDhu51uZyBk4bqrbiDEkeG6v24gcGjhuqduIG3hu4FtKVxuIgorImhv4bq3YyBuw7Mga2jDtG5nIHRo4buxYyBoaeG7h24gxJHGsOG7o2MuXG4iCisiR2hpIGNow7ogOiBQQVRIIGPhu6dhIG5nxrDhu51pIGNo4bunIHRoxrDhu51uZyBuw6puIGNo4bupYSDCqyAvdXNyL2xvY2FsL3NiaW4gwrssIMKrIC91c3IvIgorInNiaW4gwrsgdsOgIMKrIC9zYmluIMK7LiIKKworIzogc3JjL2hlbHAuYzoxODgKK21zZ2lkICJhZG1pbmRpciBtdXN0IGJlIGluc2lkZSBpbnN0ZGlyIGZvciBkcGtnIHRvIHdvcmsgcHJvcGVybHkiCittc2dzdHIgIiIKKworIzogc3JjL2hlbHAuYzoxOTAgc3JjL21haW4uYzo3NDcKKyMsIGZ1enp5CisjfCBtc2dpZCAidW5hYmxlIHRvIHNldGVudiBmb3IgbWFpbnRhaW5lciBzY3JpcHQiCittc2dpZCAidW5hYmxlIHRvIHNldGVudiBmb3Igc3VicHJvY2Vzc2VzIgorbXNnc3RyICJraMO0bmcgdGjhu4Mgc2V0ZW52ICjEkeG6t3QgbcO0aSB0csaw4budbmcpIGNobyB2xINuIGzhu4duaCBi4bqjbyB04buTbiIKKworIzogc3JjL2hlbHAuYzoxOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNocm9vdCB0byBgJS4yNTBzJyIKK21zZ3N0ciAibOG7l2kgY2hyb290IHThu5tpIMKrICUuMjUwcyDCuyIKKworIzogc3JjL2hlbHAuYzoxOTQgZHBrZy1kZWIvYnVpbGQuYzo0NTUgZHBrZy1kZWIvYnVpbGQuYzo0NTcKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTM2IGRwa2ctZGViL2J1aWxkLmM6NTU4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byBgJS4yNTVzJyIKK21zZ3N0ciAibOG7l2kgY2hkaXIgKGNodXnhu4NuIMSR4buVaSB0aMawIG3hu6VjKSBzYW5nIMKrICUuMjU1cyDCuyIKKworIzogc3JjL2hlbHAuYzoyNTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNldCBleGVjdXRlIHBlcm1pc3Npb25zIG9uIGAlLjI1MHMnIgorbXNnc3RyICJraMO0bmcgdGjhu4MgxJHhurd0IHF1eeG7gW4gdGjhu7FjIGhp4buHbiBjaG8gwqsgJS4yNTBzIMK7IgorCisjOiBzcmMvaGVscC5jOjI3NgorbXNnaWQgInVuYWJsZSB0byBzZXRlbnYgZm9yIG1haW50YWluZXIgc2NyaXB0IgorbXNnc3RyICJraMO0bmcgdGjhu4Mgc2V0ZW52ICjEkeG6t3QgbcO0aSB0csaw4budbmcpIGNobyB2xINuIGzhu4duaCBi4bqjbyB04buTbiIKKworIzogc3JjL2hlbHAuYzozMDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW5zdGFsbGVkICVzIHNjcmlwdCIKK21zZ3N0ciAixJHDoyBjw6BpIMSR4bq3dCB2xINuIGzhu4duaCAlcyIKKworIzogc3JjL2hlbHAuYzozMTMgc3JjL2hlbHAuYzozODIgc3JjL2hlbHAuYzo0NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgJXMgYCUuMjUwcyciCittc2dzdHIgImtow7RuZyB0aOG7gyBs4bqleSBjw6FjIHRow7RuZyB0aW4gduG7gSAlcyDCqyAlLjI1MHMgwrsiCisKKyM6IHNyYy9oZWxwLmM6MzY4IHNyYy9oZWxwLmM6NDI4CisjLCBjLWZvcm1hdAorbXNnaWQgIm5ldyAlcyBzY3JpcHQiCittc2dzdHIgInbEg24gbOG7h25oICVzIG3hu5tpIgorCisjOiBzcmMvaGVscC5jOjQwMgorIywgYy1mb3JtYXQKK21zZ2lkICJvbGQgJXMgc2NyaXB0IgorbXNnc3RyICJ2xINuIGzhu4duaCAlcyBjxakiCisKKyM6IHNyYy9oZWxwLmM6NDE2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0ICVzICclLjI1MHMnOiAlcyIKK21zZ3N0ciAia2jDtG5nIHRo4buDIGzhuqV5IHRy4bqhbmcgdGjDoWkgduG7gSAlcyDCqyAlLjI1MHMgwrs6ICVzIgorCisjOiBzcmMvaGVscC5jOjQyNQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnIC0gdHJ5aW5nIHNjcmlwdCBmcm9tIHRoZSBuZXcgcGFja2FnZSBpbnN0ZWFkIC4uLlxuIgorbXNnc3RyICJkcGtnIOKAlCDEkWFuZyB0aOG7rSB2xINuIGzhu4duaCB04burIGfDs2kgbeG7m2kgxJHhu4MgdGhheSB0aOG6vyAuLi5cbiIKKworIzogc3JjL2hlbHAuYzo0MzkKK21zZ2lkICJ0aGVyZSBpcyBubyBzY3JpcHQgaW4gdGhlIG5ldyB2ZXJzaW9uIG9mIHRoZSBwYWNrYWdlIC0gZ2l2aW5nIHVwIgorbXNnc3RyICJraMO0bmcgY8OzIHbEg24gbOG7h25oIHRyb25nIHBoacOqbiBi4bqjbiBt4bubaSBj4bunYSBnw7NpIG7Dqm4gY2jhu4t1IHRodWEiCisKKyM6IHNyYy9oZWxwLmM6NDQ1CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IC4uLiBpdCBsb29rcyBsaWtlIHRoYXQgd2VudCBPSy5cbiIKK21zZ3N0ciAiZHBrZzogLi4uIGPDsyB24bq7IG5oxrAgdmnhu4djIMSRw6MgbMOgbSDEkcaw4bujYy5cbiIKKworIzogc3JjL2hlbHAuYzo2MTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNlY3VyZWx5IHJlbW92ZSAnJS4yNTVzJyIKK21zZ3N0ciAia2jDtG5nIHRo4buDIGfhu6EgYuG7jyBi4bqjbyBt4bqtdCDCqyAlLjI1NXMgwrsiCisKKyM6IHNyYy9oZWxwLmM6NjIxIGRwa2ctZGViL2luZm8uYzo2NSBkcGtnLWRlYi9pbmZvLmM6NjcKK21zZ2lkICJybSBjb21tYW5kIGZvciBjbGVhbnVwIgorbXNnc3RyICIiCisKKyM6IHNyYy9pbmZvZGIuYzo1MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hlY2sgZXhpc3RlbmNlIG9mIGAlLjI1MHMnIgorbXNnc3RyICJraMO0bmcgdGjhu4Mga2nhu4NtIHRyYSBz4buxIHThu5NuIHThuqFpIGPhu6dhIMKrICUuMjUwcyDCuyIKKworIzogc3JjL2luZm9kYi5jOjcwCittc2dpZCAiY2Fubm90IHJlYWQgaW5mbyBkaXJlY3RvcnkiCittc2dzdHIgImtow7RuZyB0aOG7gyDEkeG7jWMgdGjGsCBt4bulYyB0aMO0bmcgdGluIgorCisjOiBzcmMvbWFpbi5jOjYwCisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiBgJXMnIHBhY2thZ2UgbWFuYWdlbWVudCBwcm9ncmFtIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkNoxrDGoW5nIHRyw6xuaCBxdeG6o24gbMO9IGfDs2kgRGViaWFuIBzCqyAlcyDCuywgcGhpw6puIGLhuqNuICVzLlxuIgorCisjOiBzcmMvbWFpbi5jOjg1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1pfC0taW5zdGFsbCAgICAgICA8LmRlYiBmaWxlIG5hbWU+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXJlY3Rvcnk+IC4uLlxuIgorIiAgLS11bnBhY2sgICAgICAgICAgIDwuZGViIGZpbGUgbmFtZT4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRpcmVjdG9yeT4gLi4uXG4iCisiICAtQXwtLXJlY29yZC1hdmFpbCAgPC5kZWIgZmlsZSBuYW1lPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyZWN0b3J5PiAuLi5cbiIKKyIgIC0tY29uZmlndXJlICAgICAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtLXRyaWdnZXJzLW9ubHkgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLXJ8LS1yZW1vdmUgICAgICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC1QfC0tcHVyZ2UgICAgICAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtLWdldC1zZWxlY3Rpb25zIFs8cGF0dGVybj4gLi4uXSBHZXQgbGlzdCBvZiBzZWxlY3Rpb25zIHRvIHN0ZG91dC5cbiIKKyIgIC0tc2V0LXNlbGVjdGlvbnMgICAgICAgICAgICAgICAgIFNldCBwYWNrYWdlIHNlbGVjdGlvbnMgZnJvbSBzdGRpbi5cbiIKKyIgIC0tY2xlYXItc2VsZWN0aW9ucyAgICAgICAgICAgICAgIERlc2VsZWN0IGV2ZXJ5IG5vbi1lc3NlbnRpYWwgcGFja2FnZS5cbiIKKyIgIC0tdXBkYXRlLWF2YWlsIDxQYWNrYWdlcy1maWxlPiAgIFJlcGxhY2UgYXZhaWxhYmxlIHBhY2thZ2VzIGluZm8uXG4iCisiICAtLW1lcmdlLWF2YWlsIDxQYWNrYWdlcy1maWxlPiAgICBNZXJnZSB3aXRoIGluZm8gZnJvbSBmaWxlLlxuIgorIiAgLS1jbGVhci1hdmFpbCAgICAgICAgICAgICAgICAgICAgRXJhc2UgZXhpc3RpbmcgYXZhaWxhYmxlIGluZm8uXG4iCisiICAtLWZvcmdldC1vbGQtdW5hdmFpbCAgICAgICAgICAgICBGb3JnZXQgdW5pbnN0YWxsZWQgdW5hdmFpbGFibGUgcGtncy5cbiIKKyIgIC1zfC0tc3RhdHVzIDxwYWNrYWdlPiAuLi4gICAgICAgIERpc3BsYXkgcGFja2FnZSBzdGF0dXMgZGV0YWlscy5cbiIKKyIgIC1wfC0tcHJpbnQtYXZhaWwgPHBhY2thZ2U+IC4uLiAgIERpc3BsYXkgYXZhaWxhYmxlIHZlcnNpb24gZGV0YWlscy5cbiIKKyIgIC1MfC0tbGlzdGZpbGVzIDxwYWNrYWdlPiAuLi4gICAgIExpc3QgZmlsZXMgYG93bmVkJyBieSBwYWNrYWdlKHMpLlxuIgorIiAgLWx8LS1saXN0IFs8cGF0dGVybj4gLi4uXSAgICAgICAgTGlzdCBwYWNrYWdlcyBjb25jaXNlbHkuXG4iCisiICAtU3wtLXNlYXJjaCA8cGF0dGVybj4gLi4uICAgICAgICBGaW5kIHBhY2thZ2Uocykgb3duaW5nIGZpbGUocykuXG4iCisiICAtQ3wtLWF1ZGl0ICAgICAgICAgICAgICAgICAgICAgICBDaGVjayBmb3IgYnJva2VuIHBhY2thZ2UocykuXG4iCisiICAtLXByaW50LWFyY2hpdGVjdHVyZSAgICAgICAgICAgICBQcmludCBkcGtnIGFyY2hpdGVjdHVyZS5cbiIKKyIgIC0tY29tcGFyZS12ZXJzaW9ucyA8YT4gPG9wPiA8Yj4gIENvbXBhcmUgdmVyc2lvbiBudW1iZXJzIC0gc2VlIGJlbG93LlxuIgorIiAgLS1mb3JjZS1oZWxwICAgICAgICAgICAgICAgICAgICAgU2hvdyBoZWxwIG9uIGZvcmNpbmcuXG4iCisiICAtRGh8LS1kZWJ1Zz1oZWxwICAgICAgICAgICAgICAgICBTaG93IGhlbHAgb24gZGVidWdnaW5nLlxuIgorIlxuIgorbXNnc3RyICIiCisiIEPDonUgbOG7h25oOlxuIgorIiAgIC1pfC0taW5zdGFsbCAgICAgICA8dMOqbiB04bqtcCB0aW4gLmRlYj4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPHRoxrAgbeG7pWM+IC4uLlxuIgorIiAgICAgICAgIChjw6BpIMSR4bq3dCwgxJHhu4cgcXVpKVxuIgorIiAgIC0tdW5wYWNrICAgICAgICAgICA8dMOqbiB04bqtcCB0aW4gLmRlYj4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPHRoxrAgbeG7pWM+IC4uLlxuIgorIiAgICAgICAgIChnaeG6o2kgbsOpbiwgxJHhu4cgcXVpKVxuIgorIiAgIC1BfC0tcmVjb3JkLWF2YWlsICA8dMOqbiB04bqtcCB0aW4gLmRlYj4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPHRoxrAgbeG7pWM+IC4uLlxuIgorIiAgICAgICAgKGdoaSBs4bqhaSBjw6FjIG3hu6VjIHPhurVuIHPDoG5nLCDEkeG7hyBxdWkpXG4iCisiICAgLS1jb25maWd1cmUgICAgICAgIDx0w6puIGfDs2k+IC4uLiB8IC1hfC0tcGVuZGluZyAgICAoY+G6pXUgaMOsbmgsIGLhu4sgaG/Do24pXG4iCisiIC0tdHJpZ2dlcnMtb25seSAgICA8dMOqbiBnw7NpPiAuLi4gfCAtYXwtLXBlbmRpbmcgICAgKGNo4buJIGLhu5kgZ8OieSBuw6puLCBi4buLICIKKyJob8OjbilcbiIKKyIgICAtcnwtLXJlbW92ZSAgICAgICAgPHTDqm4gZ8OzaT4gLi4uIHwgLWF8LS1wZW5kaW5nICAgIChn4buhIGLhu48sIGLhu4sgaG/Do24pXG4iCisiICAgLVB8LS1wdXJnZSAgICAgICAgIDx0w6puIGfDs2k+IC4uLiB8IC1hfC0tcGVuZGluZyAgICAodOG6qXksIGLhu4sgaG/Do24pXG4iCisiICAgLS1nZXQtc2VsZWN0aW9ucyBbPG3huqt1PiAuLi5dICAgIFh14bqldCBkYW5oIHPDoWNoIGPDoWMgZ8OzaSDEkcOjIGNo4buNbiByYSDEkeG6p3UgIgorInh14bqldCB0acOqdSBjaHXhuqluXG4iCisiICAgLS1zZXQtc2VsZWN0aW9ucyAgICAgICAgICAgICAgICAgICAgIFx0xJDhurd0IGPDoWMgZ8OzaSDEkcOjIGNo4buNbiB04burIMSR4bqndSB2w6BvICIKKyJ0acOqdSBjaHXhuqluLlxuIgorIiAgIC0tY2xlYXItc2VsZWN0aW9ucyAgICAgICAgICAgICAgICAgICBI4buneSBjaOG7jW4gbeG7jWkgZ8OzaSBraMO0bmcgY+G7kXQgeeG6v3UuXG4iCisiICAgLS11cGRhdGUtYXZhaWwgPHThuq1wIHRpbiBQYWNrYWdlcz4gICAgVGhheSB0aOG6vyB0aMO0bmcgdGluIHbhu4EgY8OhYyBnw7NpIHPhurVuICIKKyJzw6BuZy5cbiIKKyIgICAtLW1lcmdlLWF2YWlsIDx04bqtcCB0aW4gUGFja2FnZXM+ICAgIFRy4buZbiB24bubaSB0aMO0bmcgdGluIHThu6sgdOG6rXAgdGluIG7DoHkuXG4iCisiICAgLS1jbGVhci1hdmFpbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWG/DoSB0aMO0bmcgdGluIHThu5NuIHThuqFpIHbhu4EgY8OhYyAiCisiZ8OzaSBz4bq1biBzw6BuZy5cbiIKKyIgICAtLWZvcmdldC1vbGQtdW5hdmFpbCAgICAgICAgIFF1w6puIGPDoWMgZ8OzaSBraMO0bmcgxJHGsOG7o2MgY8OgaSDEkeG6t3QsIGtow7RuZyBz4bq1biAiCisic8OgbmcuXG4iCisiICAgLXN8LS1zdGF0dXMgPHTDqm4gZ8OzaT4gLi4uICAgICAgICAgICBIaeG7h24gY2hpIHRp4bq/dCB24buBIHRy4bqhbmcgdGjDoWkgY+G7p2EgZ8OzaS5cbiIKKyIgICAtcHwtLXByaW50LWF2YWlsIDx0w6puIGfDs2k+IC4uLiAgIEhp4buHbiBjaGkgdGnhur90IHbhu4EgcGhpw6puIGLhuqNuIHPhurVuIHPDoG5nLlxuIgorIiAgIC1MfC0tbGlzdGZpbGVzIDx0w6puIGfDs2k+IC4uLiAgICAgICAgTGnhu4d0IGvDqiBjw6FjIHThuq1wIHRpbiDEkcaw4bujYyBnw7NpIMKrIHPhu58gaOG7r3UgIgorIsK7LlxuIgorIiAgIC1sfC0tbGlzdCBbPG3huqt1PiAuLi5dICAgICAgICAgICAgICAgICAgIExp4buHdCBrw6ogbmfhuq9uIGfhu41uIGPDoWMgZ8OzaS5cbiIKKyIgICAtU3wtLXNlYXJjaCA8beG6q3U+IC4uLiAgICAgICAgICAgIFTDrG0gY8OhYyBnw7NpIHPhu58gaOG7r3Ugbmjhu69uZyB04bqtcCB0aW4gbsOgbyAiCisixJHDsy5cbiIKKyIgICAtQ3wtLWF1ZGl0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBLaeG7g20gdHJhIHTDrG0gZ8OzaSBi4buLIGjhu49uZy5cbiIKKyIgICAtLXByaW50LWFyY2hpdGVjdHVyZSAgICAgICAgICAgICAgICBJbiByYSBraeG6v24gdHLDumMgZHBrZy5cbiIKKyIgICAtLWNvbXBhcmUtdmVyc2lvbnMgPGE+IDxxdWFuX2jhu4c+IDxiPiAgICBTbyBzw6FuaCBoYWkgc+G7kSB0aOG7qSB04buxIHBoacOqbiBi4bqjbiAiCisiKHhlbSBkxrDhu5tpKS5cbiIKKyIgICAtLWZvcmNlLWhlbHAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSEnhu4duIHRy4bujIGdpw7pwIHbhu4Egdmnhu4djIOG6v3AgYnXhu5ljLlxuIgorIiAgIC1EaHwtLWRlYnVnPWhlbHAgICAgICAgICAgICAgICAgIEhJ4buHbiB0cuG7oyBnacO6cCB24buBIHZp4buHYyBn4buhIGzhu5dpLlxuIgorIiBcbiIKKworIzogc3JjL21haW4uYzoxMTMgc3JjL3F1ZXJ5Y21kLmM6NjMxIHNyYy90cmlnY21kLmM6NzcgZHBrZy1kZWIvbWFpbi5jOjg4CisjOiBkcGtnLXNwbGl0L21haW4uYzo3NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiICAtaHwtLWhlbHAgICAgICAgICAgICAgICAgICAgICAgICBTaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICAgICAgICAgU2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIiAgLWh8LS1oZWxwICAgICAgICAgICAgICAgICAgICAgICAgSGnhu4NuIHRo4buLIHRy4bujIGdpw7pwIG7DoHkuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgICAgICAgICBIaeG7g24gdGjhu4sgc+G7kSB0aOG7qSB04buxIHBoacOqbiBi4bqjbi5cbiIKKyJcbiIKKworIzogc3JjL21haW4uYzoxMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlVzZSBkcGtnIC1ifC0tYnVpbGR8LWN8LS1jb250ZW50c3wtZXwtLWNvbnRyb2x8LUl8LS1pbmZvfC1mfC0tZmllbGR8XG4iCisiIC14fC0tZXh0cmFjdHwtWHwtLXZleHRyYWN0fC0tZnN5cy10YXJmaWxlICBvbiBhcmNoaXZlcyAodHlwZSAlcyAtLWhlbHApLlxuIgorIlxuIgorbXNnc3RyICIiCisiIMSQ4buDIHPhu60gZOG7pW5nIHbhu5tpIGtobyBsxrB1IChs4buHbmgpOiBkcGtnXG4iCisiICAgLWJ8LS1idWlsZFx0XHR4w6J5IGThu7FuZ1xuIgorIiAgIC1jfC0tY29udGVudHNcdG7hu5lpIGR1bmdcbiIKKyIgICAtZXwtLWNvbnRyb2xcdFx0xJFp4buBdSBraGnhu4NuXG4iCisiICAgLUl8LS1pbmZvXHRcdHRow7RuZyB0aW5cbiIKKyIgICAtZnwtLWZpZWxkXHRcdHRyxrDhu51uZ1xuIgorIiAgIC14fC0tZXh0cmFjdFx0XHRnaeG6o2kgbsOpblxuIgorIiAgIC1YfC0tdmV4dHJhY3R8XHRnaeG6o2kgbsOpbiB2w6AgbGnhu4d0IGvDqlxuIgorIiAgIC0tZnN5cy10YXJmaWxlXHR04bqtcCB0aW4gLnRhciBo4buHIHRo4buRbmcgdOG6rXAgdGluXG4iCisiIChnw7UgwqsgJXMgLS1oZWxwIMK7IMSR4buDIHhlbSB0cuG7oyBnacO6cCkuXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTIzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJGb3IgaW50ZXJuYWwgdXNlOiBkcGtnIC0tYXNzZXJ0LXN1cHBvcnQtcHJlZGVwZW5kcyB8IC0tcHJlZGVwLXBhY2thZ2UgfFxuIgorIiAgLS1hc3NlcnQtd29ya2luZy1lcG9jaCB8IC0tYXNzZXJ0LWxvbmctZmlsZW5hbWVzIHwgLS1hc3NlcnQtbXVsdGktY29ucmVwLlxuIgorIlxuIgorbXNnc3RyICIiCisiIMSQ4buDIHPhu60gZOG7pW5nIG7hu5lpIGLhu5kgKGzhu4duaCk6IGRwa2dcbiIKKyIgICAtLWFzc2VydC1zdXBwb3J0LXByZWRlcGVuZHNcdFx0a2jhurNuZyDEkeG7i25oIGjhu5cgdHLhu6MgcGjhu6UgdGh14buZYyBz4bq1blxuIgorIiAgIC0tcHJlZGVwLXBhY2thZ2VcdFx0XHRcdHBo4bulIHRodeG7mWMgc+G6tW4gZ8OzaVxuIgorIiAgIC0tYXNzZXJ0LXdvcmtpbmctZXBvY2hcdFx0XHRraOG6s25nIMSR4buLbmgga+G7tyBuZ3V5w6puIGhv4bqhdCDEkeG7mW5nXG4iCisiICAgLS1hc3NlcnQtbG9uZy1maWxlbmFtZXNcdFx0XHRraOG6s25nIMSR4buLbmggY8OhYyB0w6puIHThuq1wIHRpbiBkw6BpXG4iCisiICAgLS1hc3NlcnQtbXVsdGktY29ucmVwXHRcdFx0a2jhurNuZyDEkeG7i25oIHRow7RuZyBiw6FvIG5oaeG7gXUgY+G6pXUgaMOsbmhcbiIKKyIgXG4iCisKKyM6IHNyYy9tYWluLmM6MTI4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hZG1pbmRpcj08ZGlyZWN0b3J5PiAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMuXG4iCisiICAtLXJvb3Q9PGRpcmVjdG9yeT4gICAgICAgICBJbnN0YWxsIG9uIGEgZGlmZmVyZW50IHJvb3QgZGlyZWN0b3J5LlxuIgorIiAgLS1pbnN0ZGlyPTxkaXJlY3Rvcnk+ICAgICAgQ2hhbmdlIGluc3RhbGxhdGlvbiBkaXIgd2l0aG91dCBjaGFuZ2luZyBhZG1pbiAiCisiZGlyLlxuIgorIiAgLS1wYXRoLWV4Y2x1ZGU9PHBhdHRlcm4+ICAgRG8gbm90IGluc3RhbGwgcGF0aHMgd2hpY2ggbWF0Y2ggYSBzaGVsbCAiCisicGF0dGVybi5cbiIKKyIgIC0tcGF0aC1pbmNsdWRlPTxwYXR0ZXJuPiAgIFJlLWluY2x1ZGUgYSBwYXR0ZXJuIGFmdGVyIGEgcHJldmlvdXMgIgorImV4Y2x1c2lvbi5cbiIKKyIgIC1PfC0tc2VsZWN0ZWQtb25seSAgICAgICAgIFNraXAgcGFja2FnZXMgbm90IHNlbGVjdGVkIGZvciBpbnN0YWxsLyIKKyJ1cGdyYWRlLlxuIgorIiAgLUV8LS1za2lwLXNhbWUtdmVyc2lvbiAgICAgU2tpcCBwYWNrYWdlcyB3aG9zZSBzYW1lIHZlcnNpb24gaXMgaW5zdGFsbGVkLlxuIgorIiAgLUd8LS1yZWZ1c2UtZG93bmdyYWRlICAgICAgU2tpcCBwYWNrYWdlcyB3aXRoIGVhcmxpZXIgdmVyc2lvbiB0aGFuICIKKyJpbnN0YWxsZWQuXG4iCisiICAtQnwtLWF1dG8tZGVjb25maWd1cmUgICAgICBJbnN0YWxsIGV2ZW4gaWYgaXQgd291bGQgYnJlYWsgc29tZSBvdGhlciAiCisicGFja2FnZS5cbiIKKyIgIC0tW25vLV10cmlnZ2VycyAgICAgICAgICAgIFNraXAgb3IgZm9yY2UgY29uc2VxdWVudGlhbCB0cmlnZ2VyICIKKyJwcm9jZXNzaW5nLlxuIgorIiAgLS1uby1kZWJzaWcgICAgICAgICAgICAgICAgRG8gbm90IHRyeSB0byB2ZXJpZnkgcGFja2FnZSBzaWduYXR1cmVzLlxuIgorIiAgLS1uby1hY3R8LS1kcnktcnVufC0tc2ltdWxhdGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEp1c3Qgc2F5IHdoYXQgd2Ugd291bGQgZG8gLSBkb24ndCBkbyBpdC5cbiIKKyIgIC1EfC0tZGVidWc9PG9jdGFsPiAgICAgICAgIEVuYWJsZSBkZWJ1Z2dpbmcgKHNlZSAtRGhlbHAgb3IgLS1kZWJ1Zz1oZWxwKS5cbiIKKyIgIC0tc3RhdHVzLWZkIDxuPiAgICAgICAgICAgIFNlbmQgc3RhdHVzIGNoYW5nZSB1cGRhdGVzIHRvIGZpbGUgZGVzY3JpcHRvciAiCisiPG4+LlxuIgorIiAgLS1sb2c9PGZpbGVuYW1lPiAgICAgICAgICAgTG9nIHN0YXR1cyBjaGFuZ2VzIGFuZCBhY3Rpb25zIHRvIDxmaWxlbmFtZT4uXG4iCisiICAtLWlnbm9yZS1kZXBlbmRzPTxwYWNrYWdlPiwuLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIElnbm9yZSBkZXBlbmRlbmNpZXMgaW52b2x2aW5nIDxwYWNrYWdlPi5cbiIKKyIgIC0tZm9yY2UtLi4uICAgICAgICAgICAgICAgIE92ZXJyaWRlIHByb2JsZW1zIChzZWUgLS1mb3JjZS1oZWxwKS5cbiIKKyIgIC0tbm8tZm9yY2UtLi4ufC0tcmVmdXNlLS4uLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcCB3aGVuIHByb2JsZW1zIGVuY291bnRlcmVkLlxuIgorIiAgLS1hYm9ydC1hZnRlciA8bj4gICAgICAgICAgQWJvcnQgYWZ0ZXIgZW5jb3VudGVyaW5nIDxuPiBlcnJvcnMuXG4iCisiXG4iCittc2dzdHIgIiIKKyJUdeG7syBjaOG7jW46XG4iCisiICAtLWFkbWluZGlyPTx0aMawX23hu6VjPiAgICAgRMO5bmcgdGjGsCBt4bulYyBuw6B5IHRoYXkgY2hvICVzLlxuIgorIiAgLS1yb290PTx0aMawX23hu6VjPiAgICAgICAgIEPDoGkgxJHhurd0IHbDoG8gbeG7mXQgdGjGsCBt4bulYyBn4buRYyBraMOhYy5cbiIKKyIgIC0taW5zdGRpcj08dGjGsF9t4bulYz4gICAgQ2h1eeG7g24gxJHhu5VpIHRoxrAgbeG7pWMgY8OgaSDEkeG6t3QgbcOgIGtow7RuZyBjaHV54buDbiDEkeG7lWkgdGjGsCAiCisibeG7pWMgcXXhuqNuIGzDvS5cbiIKKyIgIC0tcGF0aC1leGNsdWRlPTxt4bqrdT4gICAgxJDhu6tuZyBjw6BpIMSR4bq3dCDEkcaw4budbmcgZOG6q24gbsOgbyB0xrDGoW5nIOG7qW5nIHbhu5tpIG3huqt1IHRyw6xuaCAiCisiYmFvIG7DoHkuXG4iCisiICAtLXBhdGgtaW5jbHVkZT08beG6q3U+ICAgIEJhbyBn4buTbSBs4bqhaSBt4bqrdSBuw6B5IHNhdSBraGkgYuG7iyBsb+G6oWkgdHLhu6sgduG7gSB0csaw4bubYy5cbiIKKyIgIC1PfC0tc2VsZWN0ZWQtb25seSAgICBC4buPIHF1YSBnw7NpIG7DoG8ga2jDtG5nIHBo4bqjaSDEkcaw4bujYyBs4buxYSBjaOG7jW4gxJHhu4MgY8OgaSDEkeG6t3QgIgorImhv4bq3YyBuw6JuZyBj4bqlcC5cbiIKKyIgIC1FfC0tc2tpcC1zYW1lLXZlcnNpb24gICAgQuG7jyBxdWEgZ8OzaSBuw6BvIGPDsyBjw7luZyBt4buZdCBwaGnDqm4gYuG6o24gxJHGsOG7o2MgY8OgaSAiCisixJHhurd0LlxuIgorIiAgLUd8LS1yZWZ1c2UtZG93bmdyYWRlICAgIELhu48gcXVhIGfDs2kgbsOgbyBjw7MgcGhpw6puIGLhuqNuIGPFqSBoxqFuIHBoacOqbiBi4bqjbiDEkcaw4bujYyAiCisiY8OgaSDEkeG6t3QuXG4iCisiICAtQnwtLWF1dG8tZGVjb25maWd1cmUgICAgICBDw6BpIMSR4bq3dCBuZ2F5IGPhuqMgbuG6v3UgZ8OieSByYSB24bqlbiDEkeG7gSBjaG8gZ8OzaSAiCisia2jDoWMuXG4iCisiICAtLVtuby1ddHJpZ2dlcnMgICAgICAgICAgICBC4buPIHF1YSBob+G6t2Mgw6lwIGJ14buZYyB44butIGzDvSBi4buZIGfDonkgbsOqbiBkbyBr4bq/dCAiCisicXXhuqMuXG4iCisiICAtLW5vLWRlYnNpZyAgICAgICAgICAgICAgICDEkOG7q25nIHRo4butIHRo4bqpbSB0cmEgY2jhu68ga8O9IGPhu6dhIGfDs2kuXG4iCisiICAtLW5vLWFjdHwtLWRyeS1ydW58LS1zaW11bGF0ZSAgICBDaOG7iSBkaeG7hW4gdOG6oyB2aeG7h2MgbsOqbiBsw6BtOiDEkeG7q25nIGzDoG0gbsOzLlxuIgorIiAgLUR8LS1kZWJ1Zz08YsOhdF9waMOibj4gICAgSGnhu4d1IGzhu7FjIGNo4bupYyBuxINuZyBn4buhIHLhu5FpICh4ZW0gLURoZWxwIGhv4bq3YyAtLSIKKyJkZWJ1Zz1oZWxwKS5cbiIKKyIgIC0tc3RhdHVzLWZkIDxz4buRPiAgICBH4butaSBi4bqjbiBj4bqtcCBuaOG6rXQgdHLhuqFuZyB0aMOhaSBjaG8gYuG7mSBtw7QgdOG6oyB04bqtcCB0aW4gc+G7kSAiCisibsOgeS5cbiIKKyIgIC0tbG9nPTx0w6puX3Thu4dwPiAgICBHaGkgbMawdSB2w6BvIHThuq1wIHRpbiBuw6B5IGPDoWMgdGhheSDEkeG7lWkgdHLhuqFuZyB0aMOhaSB2w6AgY8OhYyAiCisiaMOgbmggxJHhu5luZy5cbiIKKyIgIC0taWdub3JlLWRlcGVuZHM9PHTDqm5fZ8OzaT4sLi4uICAgIELhu48gcXVhIHF1YW4gaOG7hyBwaOG7pSB0aHXhu5ljIG7DoG8gZ+G7k20gY8OzIGfDs2kgIgorIm7DoHkuXG4iCisiICAtLWZvcmNlLS4uLiAgICAgICAgICAgICAgICBDw7MgcXV54buBbiBjYW8gaMahbiB24bqlbiDEkeG7gSAoeGVtIC0tZm9yY2UtaGVscCkuXG4iCisiICAtLW5vLWZvcmNlLS4uLnwtLXJlZnVzZS0uLi4gICAgR+G6t3AgduG6pW4gxJHhu4EgdGjDrCBk4burbmcgbOG6oWkuXG4iCisiICAtLWFib3J0LWFmdGVyIDxz4buRPiAgICAgICAgICBI4buneSBi4buPIHNhdSBraGkgZ+G6t3Agc+G7kSBjw6FjIGzhu5dpIG7DoHkuXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTU0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21wYXJpc29uIG9wZXJhdG9ycyBmb3IgLS1jb21wYXJlLXZlcnNpb25zIGFyZTpcbiIKKyIgIGx0IGxlIGVxIG5lIGdlIGd0ICAgICAgICh0cmVhdCBlbXB0eSB2ZXJzaW9uIGFzIGVhcmxpZXIgdGhhbiBhbnkgIgorInZlcnNpb24pO1xuIgorIiAgbHQtbmwgbGUtbmwgZ2UtbmwgZ3QtbmwgKHRyZWF0IGVtcHR5IHZlcnNpb24gYXMgbGF0ZXIgdGhhbiBhbnkgdmVyc2lvbik7XG4iCisiICA8IDw8IDw9ID0gPj0gPj4gPiAgICAgICAob25seSBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIGNvbnRyb2wgZmlsZSAiCisic3ludGF4KS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIiBUb8OhbiB04butIHNvIHPDoW5oIGNobyB0w7l5IGNo4buNbiDCqyAtLWNvbXBhcmUtdmVyc2lvbnMgwrsgKHNvIHPDoW5oIGhhaSBwaGnDqm4gIgorImLhuqNuKTpcbiIKKyIgICBsdCBsZSBlcSBuZSBnZSBndCAgICAgICAoeOG7rSBsw70gcGhpw6puIGLhuqNuIHLhu5duZyBsw6AgY8WpIGjGoW4gYuG6pXQga+G7syBwaGnDqm4gICIKKyJi4bqjbik7XG4iCisiICAgbHQtbmwgbGUtbmwgZ2UtbmwgZ3QtbmwgXHQgICAgKHjhu60gbMO9IHBoacOqbiBi4bqjbiBy4buXbmcgbMOgIG3hu5tpIGjGoW4gYuG6pXQga+G7syAgIgorInBoacOqbiBi4bqjbik7XG4iCisiICAgPCA8PCA8PSA9ID49ID4+ID4gICAgICAgIChjaOG7iSDEkeG7gyB0xrDGoW5nIHRow61jaCB24bubaSBjw7ogcGjDoXAgdOG6rXAgdGluIMSRaeG7gXUgICIKKyJraGnhu4NuLlxuIgorIiBcbiIKKworIzogc3JjL21haW4uYzoxNjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiVXNlIGBkc2VsZWN0JyBvciBgYXB0aXR1ZGUnIGZvciB1c2VyLWZyaWVuZGx5IHBhY2thZ2UgbWFuYWdlbWVudC5cbiIKK21zZ3N0ciAiIgorIktodXnDqm4gYuG6oW4gc+G7rSBk4bulbmcgwqsgZHNlbGVjdCDCuyBoYXkgwqsgYXB0aXR1ZGUgwrtcbiIKKyIgXHTEkeG7gyBxdeG6o24gbMO9IGfDs2kgbeG7mXQgY8OhY2ggdGjDom4gdGhp4buHbiB24bubaSBuZ8aw4budaSBkw7luZy5cbiIKKworIzogc3JjL21haW4uYzoxNzAKK21zZ2lkICIiCisiVHlwZSBkcGtnIC0taGVscCBmb3IgaGVscCBhYm91dCBpbnN0YWxsaW5nIGFuZCBkZWluc3RhbGxpbmcgcGFja2FnZXMgWypdO1xuIgorIlVzZSBgZHNlbGVjdCcgb3IgYGFwdGl0dWRlJyBmb3IgdXNlci1mcmllbmRseSBwYWNrYWdlIG1hbmFnZW1lbnQ7XG4iCisiVHlwZSBkcGtnIC1EaGVscCBmb3IgYSBsaXN0IG9mIGRwa2cgZGVidWcgZmxhZyB2YWx1ZXM7XG4iCisiVHlwZSBkcGtnIC0tZm9yY2UtaGVscCBmb3IgYSBsaXN0IG9mIGZvcmNpbmcgb3B0aW9ucztcbiIKKyJUeXBlIGRwa2ctZGViIC0taGVscCBmb3IgaGVscCBhYm91dCBtYW5pcHVsYXRpbmcgKi5kZWIgZmlsZXM7XG4iCisiXG4iCisiT3B0aW9ucyBtYXJrZWQgWypdIHByb2R1Y2UgYSBsb3Qgb2Ygb3V0cHV0IC0gcGlwZSBpdCB0aHJvdWdoIGBsZXNzJyBvciAiCisiYG1vcmUnICEiCittc2dzdHIgIiIKKyJHw7UgY8OidSBs4buHbmggwqsgZHBrZyAtLWhlbHAgwrsgxJHhu4MgeGVtIHRy4bujIGdpw7pwIHbhu4EgY8OgaSDEkeG6t3QgdsOgIGjhu6d5IGPDoGkgxJHhurd0IGfDs2kgIgorInBo4bqnbiBt4buBbSBbKl1cbiIKKyJEw7luZyBgZHNlbGVjdCcgaG/hurdjIGBhcHRpdHVkZScgxJHhu4MgcXXhuqNuIGzDvSBjw6FjIGfDs2kgbeG7mXQgY8OhY2ggdGjDom4gdGhp4buHbiB24bubaSAiCisibmfGsOG7nWkgZMO5bmc7XG4iCisiR8O1IDpcbiIKKyIg4oCiIGRwa2cgLURoZWxwICAgIMSR4buDIHhlbSBkYW5oIHPDoWNoIGPDoWMgZ2nDoSB0cuG7iyBj4budIGfhu6EgcuG7kWkgY+G7p2EgZHBrZ1xuIgorIiDigKIgZHBrZyAtLWZvcmNlLWhlbHAgICAgxJHhu4MgeGVtIGRhbmggc8OhY2ggY8OhYyB0deG7syBjaOG7jW4gw6lwIGJ14buZY1xuIgorIiDigKIgZHBrZy1kZWIgLS1oZWxwICAgIMSR4buDIHhlbSB0cuG7oyBnacO6cCB24buBIHRoYW8gdMOhYyB04bqtcCB0aW4ga2nhu4N1IMKrIC5kZWIgwrtcbiIKKyJcbiIKKyJUdeG7syBjaOG7jW4gY8OzIGThuqV1IFsqXSB0aMOsIHh14bqldCBuaGnhu4F1IOKAlCBow6N5IGfhu61pIHF1YSDhu5FuZyBk4bqrbiBjaG8gwqsgbGVzcyDCuyBob+G6t2MgwqsgIgorIm1vcmUgwrsuIgorCisjOiBzcmMvbWFpbi5jOjIxOQorbXNnaWQgIlNldCBhbGwgZm9yY2Ugb3B0aW9ucyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIyMQorbXNnaWQgIlJlcGxhY2UgYSBwYWNrYWdlIHdpdGggYSBsb3dlciB2ZXJzaW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjIzCittc2dpZCAiQ29uZmlndXJlIGFueSBwYWNrYWdlIHdoaWNoIG1heSBoZWxwIHRoaXMgb25lIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjI1Cittc2dpZCAiUHJvY2VzcyBpbmNpZGVudGFsIHBhY2thZ2VzIGV2ZW4gd2hlbiBvbiBob2xkIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjI3Cittc2dpZCAiVHJ5IHRvIChkZSlpbnN0YWxsIHRoaW5ncyBldmVuIHdoZW4gbm90IHJvb3QiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjkKK21zZ2lkICJQQVRIIGlzIG1pc3NpbmcgaW1wb3J0YW50IHByb2dyYW1zLCBwcm9ibGVtcyBsaWtlbHkiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzEKK21zZ2lkICJJbnN0YWxsIGEgcGFja2FnZSBldmVuIGlmIGl0IGZhaWxzIGF1dGhlbnRpY2l0eSBjaGVjayIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzMworbXNnaWQgIlByb2Nlc3MgZXZlbiBwYWNrYWdlcyB3aXRoIHdyb25nIHZlcnNpb25zIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjM1Cittc2dpZCAiT3ZlcndyaXRlIGEgZmlsZSBmcm9tIG9uZSBwYWNrYWdlIHdpdGggYW5vdGhlciIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzNworbXNnaWQgIk92ZXJ3cml0ZSBhIGRpdmVydGVkIGZpbGUgd2l0aCBhbiB1bmRpdmVydGVkIHZlcnNpb24iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzkKK21zZ2lkICJPdmVyd3JpdGUgb25lIHBhY2thZ2UncyBkaXJlY3Rvcnkgd2l0aCBhbm90aGVyJ3MgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI0MQorbXNnaWQgIkRvIG5vdCBwZXJmb3JtIHNhZmUgSS9PIG9wZXJhdGlvbnMgd2hlbiB1bnBhY2tpbmciCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDMKK21zZ2lkICJBbHdheXMgdXNlIHRoZSBuZXcgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDUKK21zZ2lkICJBbHdheXMgdXNlIHRoZSBvbGQgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDgKK21zZ2lkICIiCisiVXNlIHRoZSBkZWZhdWx0IG9wdGlvbiBmb3IgbmV3IGNvbmZpZyBmaWxlcyBpZiBvbmVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgaXMgYXZhaWxhYmxlLCBkb24ndCBwcm9tcHQuIElmIG5vIGRlZmF1bHQgY2FuIGJlICIKKyJmb3VuZCxcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgeW91IHdpbGwgYmUgcHJvbXB0ZWQgdW5sZXNzIG9uZSBvZiB0aGUgY29uZm9sZCBvclxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICBjb25mbmV3IG9wdGlvbnMgaXMgYWxzbyBnaXZlbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI1MworbXNnaWQgIkFsd2F5cyBpbnN0YWxsIG1pc3NpbmcgY29uZmlnIGZpbGVzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjU1Cittc2dpZCAiT2ZmZXIgdG8gcmVwbGFjZSBjb25maWcgZmlsZXMgd2l0aCBubyBuZXcgdmVyc2lvbnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNTcKK21zZ2lkICJQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyBvciBubyBhcmNoaXRlY3R1cmUiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNTkKK21zZ2lkICJJbnN0YWxsIGV2ZW4gaWYgaXQgd291bGQgYnJlYWsgYW5vdGhlciBwYWNrYWdlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjYxCittc2dpZCAiQWxsb3cgaW5zdGFsbGF0aW9uIG9mIGNvbmZsaWN0aW5nIHBhY2thZ2VzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjYzCisjLCBmdXp6eQorI3wgbXNnaWQgImRlcGVuZGVuY3kgcHJvYmxlbXMgLSBub3QgcmVtb3ZpbmciCittc2dpZCAiVHVybiBhbGwgZGVwZW5kZW5jeSBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzIgorbXNnc3RyICJn4bq3cCB24bqlbiDEkeG7gSBxdWFuIGjhu4cgcGjhu6UgdGh14buZYyBuw6puIGtow7RuZyBn4buhIGLhu48iCisKKyM6IHNyYy9tYWluLmM6MjY1CisjLCBmdXp6eQorI3wgbXNnaWQgImRlcGVuZGVuY3kgcHJvYmxlbXMgLSBub3QgcmVtb3ZpbmciCittc2dpZCAiVHVybiBkZXBlbmRlbmN5IHZlcnNpb24gcHJvYmxlbXMgaW50byB3YXJuaW5ncyIKK21zZ3N0ciAiZ+G6t3AgduG6pW4gxJHhu4EgcXVhbiBo4buHIHBo4bulIHRodeG7mWMgbsOqbiBraMO0bmcgZ+G7oSBi4buPIgorCisjOiBzcmMvbWFpbi5jOjI2NworbXNnaWQgIlJlbW92ZSBwYWNrYWdlcyB3aGljaCByZXF1aXJlIGluc3RhbGxhdGlvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI2OQorbXNnaWQgIlJlbW92ZSBhbiBlc3NlbnRpYWwgcGFja2FnZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4MQorbXNnaWQgIkdlbmVyYWxseSBoZWxwZnVsIHByb2dyZXNzIGluZm9ybWF0aW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjgyCisjLCBmdXp6eQorI3wgbXNnaWQgInVuYWJsZSB0byBzZXRlbnYgZm9yIG1haW50YWluZXIgc2NyaXB0IgorbXNnaWQgIkludm9jYXRpb24gYW5kIHN0YXR1cyBvZiBtYWludGFpbmVyIHNjcmlwdHMiCittc2dzdHIgImtow7RuZyB0aOG7gyBzZXRlbnYgKMSR4bq3dCBtw7RpIHRyxrDhu51uZykgY2hvIHbEg24gbOG7h25oIGLhuqNvIHThu5NuIgorCisjOiBzcmMvbWFpbi5jOjI4MworbXNnaWQgIk91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4NAorbXNnaWQgIkxvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg1CisjLCBmdXp6eQorI3wgbXNnaWQgInJlYWQgZXJyb3IgaW4gY29uZmlndXJhdGlvbiBmaWxlIGAlLjI1NXMnIgorbXNnaWQgIk91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGUiCittc2dzdHIgImzhu5dpIMSR4buNYyB0cm9uZyB04bqtcCB0aW4gY+G6pXUgaMOsbmggwqsgJS4yNTVzIMK7IgorCisjOiBzcmMvbWFpbi5jOjI4NgorbXNnaWQgIkxvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4NworbXNnaWQgIkRlcGVuZGVuY2llcyBhbmQgY29uZmxpY3RzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg4Cittc2dpZCAiTG90cyBvZiBkZXBlbmRlbmNpZXMvY29uZmxpY3RzIG91dHB1dCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4OQorbXNnaWQgIlRyaWdnZXIgYWN0aXZhdGlvbiBhbmQgcHJvY2Vzc2luZyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MAorbXNnaWQgIkxvdHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2VycyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MQorbXNnaWQgIlNpbGx5IGFtb3VudHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2VycyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MgorbXNnaWQgIkxvdHMgb2YgZHJpdmVsIGFib3V0IGVnIHRoZSBkcGtnL2luZm8gZGlyZWN0b3J5IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjkzCittc2dpZCAiSW5zYW5lIGFtb3VudHMgb2YgZHJpdmVsIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MzA0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlcyBkZWJ1Z2dpbmcgb3B0aW9uLCAtLWRlYnVnPTxvY3RhbD4gb3IgLUQ8b2N0YWw+OlxuIgorIlxuIgorIiBOdW1iZXIgIFJlZi4gaW4gc291cmNlICAgRGVzY3JpcHRpb25cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjMxMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiRGVidWdnaW5nIG9wdGlvbnMgY2FuIGJlIG1peGVkIHVzaW5nIGJpdHdpc2Utb3IuXG4iCisiTm90ZSB0aGF0IHRoZSBtZWFuaW5ncyBhbmQgdmFsdWVzIGFyZSBzdWJqZWN0IHRvIGNoYW5nZS5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjMxOQorbXNnaWQgIi0tZGVidWcgcmVxdWlyZXMgYW4gb2N0YWwgYXJndW1lbnQiCittc2dzdHIgIsKrIC0tZGVidWcgwrsgKGfhu6EgbOG7l2kpIGPhuqduIG3hu5l0IMSR4buRaSBz4buRIGtp4buDdSBiw6F0IHBow6JuIgorCisjOiBzcmMvbWFpbi5jOjM0OAorIywgYy1mb3JtYXQKK21zZ2lkICJudWxsIHBhY2thZ2UgbmFtZSBpbiAtLWlnbm9yZS1kZXBlbmRzIGNvbW1hLXNlcGFyYXRlZCBsaXN0IGAlLjI1MHMnIgorbXNnc3RyICIiCisiZ+G6t3AgdMOqbiBnw7NpIHbDtCBnacOhIHRy4buLIHRyb25nIGRhbmggc8OhY2ggxJHhu4tuaCBnaeG7m2kgYuG6sW5nIGThuqV1IHBo4bqpeSDCqyAtLWlnbm9yZS0iCisiZGVwZW5kcyDCuyAobOG7nSDEkWkgY8OhYyBxdWFuIGjhu4cgcGjhu6UgdGh14buZYykgwqsgJS4yNTBzIMK7IgorCisjOiBzcmMvbWFpbi5jOjM1NAorIywgYy1mb3JtYXQKK21zZ2lkICItLWlnbm9yZS1kZXBlbmRzIHJlcXVpcmVzIGEgbGVnYWwgcGFja2FnZSBuYW1lLiBgJS4yNTBzJyBpcyBub3Q7ICVzIgorbXNnc3RyICLCqyAtLWlnbm9yZS1kZXBlbmRzIMK7IGPhuqduIG3hu5l0IHTDqm4gZ8OzaSBo4bujcCBs4buHLiDCqyAlLjI1MHMgwrsga2jDtG5nIHBo4bqjaTsgJXMiCisKKyM6IHNyYy9tYWluLmM6MzcxIHNyYy9tYWluLmM6MzgxIHNyYy9tYWluLmM6NjQ5IGRwa2ctc3BsaXQvbWFpbi5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGludGVnZXIgZm9yIC0tJXM6IGAlLjI1MHMnIgorbXNnc3RyICJz4buRIG5ndXnDqm4ga2jDtG5nIGjhu6NwIGzhu4cgY2hvIMKrIC0tJXMgwrs6IMKrICUuMjUwcyDCuyIKKworIzogc3JjL21haW4uYzo0MzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgZXhlY3V0aW5nIGhvb2sgJyVzJywgZXhpdCBjb2RlICVkIgorbXNnc3RyICJn4bq3cCBs4buXaSBraGkgdGjhu7FjIGhp4buHbiBow6BtIG3Ds2MgwqsgJXMgwrssIG3DoyB0aG/DoXQgJWQiCisKKyM6IHNyYy9tYWluLmM6NDY1CisjLCBmdXp6eQorI3wgbXNnaWQgInN0YXR1cyIKK21zZ2lkICJzdGF0dXMgbG9nZ2VyIgorbXNnc3RyICJ0cuG6oW5nIHRow6FpIgorCisjOiBzcmMvbWFpbi5jOjQ4MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXMgZm9yY2luZyBvcHRpb25zIC0gY29udHJvbCBiZWhhdmlvdXIgd2hlbiBwcm9ibGVtcyBmb3VuZDpcbiIKKyIgIHdhcm4gYnV0IGNvbnRpbnVlOiAgLS1mb3JjZS08dGhpbmc+LDx0aGluZz4sLi4uXG4iCisiICBzdG9wIHdpdGggZXJyb3I6ICAgIC0tcmVmdXNlLTx0aGluZz4sPHRoaW5nPiwuLi4gfCAtLW5vLWZvcmNlLTx0aGluZz4sLi4uXG4iCisiIEZvcmNpbmcgdGhpbmdzOlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6NDkwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJXQVJOSU5HIC0gdXNlIG9mIG9wdGlvbnMgbWFya2VkIFshXSBjYW4gc2VyaW91c2x5IGRhbWFnZSB5b3VyIGluc3RhbGxhdGlvbi5cbiIKKyJGb3JjaW5nIG9wdGlvbnMgbWFya2VkIFsqXSBhcmUgZW5hYmxlZCBieSBkZWZhdWx0LlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6NTA0CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gZm9yY2UvcmVmdXNlIG9wdGlvbiBgJS4qcyciCittc2dzdHIgImtow7RuZyByw7UgdMO5eSBjaOG7jW4gw6lwIGJ14buZYyBob+G6t2MgdOG7qyBjaOG7kWkgwqsgJS4qcyDCuyIKKworIzogc3JjL21haW4uYzo1MTMKKyMsIGMtZm9ybWF0Cittc2dpZCAib2Jzb2xldGUgZm9yY2UvcmVmdXNlIG9wdGlvbiAnJXMnXG4iCittc2dzdHIgInF1w6EgY8WpIHTDuXkgY2jhu41uIMOpcCBideG7mWMgaG/hurdjIHThu6sgY2jhu5FpIMKrICVzIMK7XG4iCisKKyM6IHNyYy9tYWluLmM6NjQzCittc2dpZCAiLS1jb21tYW5kLWZkIHRha2VzIG9uZSBhcmd1bWVudCwgbm90IHplcm8iCittc2dzdHIgIiIKKyLCqyAtLWNvbW1hbmQtZmQgwrsgKGzhu4duaCBtw7QgdOG6oyB04bqtcCB0aW4pIGNo4bqlcCBuaOG6rW4gMSDEkeG7kWkgc+G7kSAoa2jDtG5nIHBo4bqjaSAwKSIKKworIzogc3JjL21haW4uYzo2NDUKK21zZ2lkICItLWNvbW1hbmQtZmQgb25seSB0YWtlcyBvbmUgYXJndW1lbnQiCittc2dzdHIgIsKrIC0tY29tbWFuZC1mZCDCuyAobOG7h25oIG3DtCB04bqjIHThuq1wIHRpbikgY2jhu4kgY2jhuqVwIG5o4bqtbiAxIMSR4buRaSBz4buRIgorCisjOiBzcmMvbWFpbi5jOjY1MQorIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBvcGVuIGAlaScgZm9yIHN0cmVhbSIKK21zZ3N0ciAia2jDtG5nIHRo4buDIG3hu58gwqsgJWkgwrsgY2hvIGx14buTbmciCisKKyM6IHNyYy9tYWluLmM6Njc2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW9mIGJlZm9yZSBlbmQgb2YgbGluZSAlZCIKK21zZ3N0ciAiZ+G6t3Aga+G6v3QgdGjDumMgdOG6rXAgdGluIGLhuqV0IHRoxrDhu51uZyB0csaw4bubYyBr4bq/dCB0aMO6YyBkw7JuZyAlZCIKKworIzogc3JjL21haW4uYzo3MTkgc3JjL21haW4uYzo3NDEgc3JjL3F1ZXJ5Y21kLmM6NjkyIHNyYy9zdGF0Y21kLmM6Mzc5CisjOiBkcGtnLWRlYi9tYWluLmM6MjAxIGRwa2ctc3BsaXQvbWFpbi5jOjE2MworbXNnaWQgIm5lZWQgYW4gYWN0aW9uIG9wdGlvbiIKK21zZ3N0ciAiY+G6p24gbeG7mXQgdMO5eSBjaOG7jW4gaMOgbmggxJHhu5luZyIKKworIzogc3JjL3BhY2thZ2VzLmM6MTEzCittc2dpZCAiIgorInlvdSBtdXN0IHNwZWNpZnkgcGFja2FnZXMgYnkgdGhlaXIgb3duIG5hbWVzLCBub3QgYnkgcXVvdGluZyB0aGUgbmFtZXMgb2YgIgorInRoZSBmaWxlcyB0aGV5IGNvbWUgaW4iCittc2dzdHIgIiIKKyJi4bqhbiBwaOG6o2kgZ2hpIHLDtSBt4buXaSBnw7NpIGLhurFuZyB0w6puIHJpw6puZyBj4bunYSBuw7MsIGtow7RuZyBwaOG6o2kgYuG6sW5nIHTDqm4gY+G7p2EgdOG6rXAgIgorInRpbiAuZGViIGNo4bupYSBuw7MiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjEzMworIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIC0tcGVuZGluZyBkb2VzIG5vdCB0YWtlIGFueSBub24tb3B0aW9uIGFyZ3VtZW50cyIKK21zZ3N0ciAiwqsgLS0lcyAtLXBlbmRpbmcgwrsgKGhvw6NuKSBraMO0bmcgY2jhuqVwIG5o4bqtbiDEkeG7kWkgc+G7kSBraMOhYyB0w7l5IGNo4buNbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MTM4IHNyYy9xdWVyeWNtZC5jOjM3NSBzcmMvcXVlcnljbWQuYzo1NjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhdCBsZWFzdCBvbmUgcGFja2FnZSBuYW1lIGFyZ3VtZW50IgorbXNnc3RyICLCqyAtLSVzIMK7IGPhuqduIMOtdCBuaOG6pXQgbeG7mXQgxJHhu5FpIHPhu5Ega2nhu4N1IHTDqm4gZ8OzaSIKKworIzogc3JjL3BhY2thZ2VzLmM6MTc5CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgJXMgbGlzdGVkIG1vcmUgdGhhbiBvbmNlLCBvbmx5IHByb2Nlc3Npbmcgb25jZS5cbiIKK21zZ3N0ciAiR8OzaSAlcyDEkcaw4bujYyBsaeG7h3Qga8OqIG5oaeG7gXUgbOG6p24gbsOqbiBjaOG7iSB44butIGzDvSBt4buZdCBs4bqnbi5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MTgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJNb3JlIHRoYW4gb25lIGNvcHkgb2YgcGFja2FnZSAlcyBoYXMgYmVlbiB1bnBhY2tlZFxuIgorIiBpbiB0aGlzIHJ1biAhICBPbmx5IGNvbmZpZ3VyaW5nIGl0IG9uY2UuXG4iCittc2dzdHIgIiIKKyJOaGnhu4F1IGLhuqNuIHNhbyBj4bunYSBnw7NpICVzIMSRw6MgxJHGsOG7o2MgbeG7nyBnw7NpXG4iCisidHJvbmcgbOG6p24gY2jhuqF5IG7DoHkuIENo4buJIGPhuqV1IGjDrG5oIG7DsyBt4buZdCBs4bqnbi5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJwYWNrYWdlICUuMjUwcyBpcyBub3QgcmVhZHkgZm9yIHRyaWdnZXIgcHJvY2Vzc2luZ1xuIgorIiAoY3VycmVudCBzdGF0dXMgYCUuMjUwcycgd2l0aCBubyBwZW5kaW5nIHRyaWdnZXJzKSIKK21zZ3N0ciAiIgorImfDs2kgJS4yNTBzIGNoxrBhIHPhurVuIHPDoG5nIMSR4buDIHjhu60gbMO9IGLhu5kgZ8OieSBuw6puXG4iCisiICh0cuG6oW5nIHRow6FpIGhp4buHbiB0aOG7nWkgwqsgJS4yNTBzIMK7LCBraMO0bmcgY8OzIGLhu5kgZ8OieSBuw6puIGLhu4sgaG/Do24pIgorCisjOiBzcmMvcGFja2FnZXMuYzozMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIHdoaWNoIHByb3ZpZGVzICVzIGlzIHRvIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiAgR8OzaSAlcyBtw6AgY3VuZyBj4bqlcCAlcyBz4bq9IGLhu4sgZ+G7oSBi4buPLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzozMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIGlzIHRvIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiAgR8OzaSAlcyBz4bq9IGLhu4sgZ+G7oSBi4buPLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzozNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBWZXJzaW9uIG9mICVzIG9uIHN5c3RlbSBpcyAlcy5cbiIKK21zZ3N0ciAiICBQaGnDqm4gYuG6o24gY+G7p2EgJXMgdHLDqm4gaOG7hyB0aOG7kW5nIGzDoCAlcy5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6Mzc2CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyB3aGljaCBwcm92aWRlcyAlcyBhd2FpdHMgdHJpZ2dlciBwcm9jZXNzaW5nLlxuIgorbXNnc3RyICIgIEfDs2kgJXMgbcOgIGN1bmcgY+G6pXAgJXMgY8WpbmcgxJHhu6NpIHjhu60gbMO9IGLhu5kgZ8OieSBuw6puLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzozODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIGF3YWl0cyB0cmlnZ2VyIHByb2Nlc3NpbmcuXG4iCittc2dzdHIgIiAgR8OzaSAlcyBjxaluZyDEkeG7o2kgeOG7rSBsw70gYuG7mSBnw6J5IG7Dqm4uXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQxMAorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiBhbHNvIGNvbmZpZ3VyaW5nIGAlcycgKHJlcXVpcmVkIGJ5IGAlcycpXG4iCittc2dzdHIgImRwa2c6IGPFqW5nIMSRYW5nIGPhuqV1IGjDrG5oIMKrICVzIMK7ICh5w6p1IGPhuqd1IGLhu59pIMKrICVzIMK7KVxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIHdoaWNoIHByb3ZpZGVzICVzIGlzIG5vdCBjb25maWd1cmVkIHlldC5cbiIKK21zZ3N0ciAiICBDaMawYSBj4bqldSBow6xuaCBnw7NpICVzIG3DoCBjdW5nIGPhuqVwICVzLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIGlzIG5vdCBjb25maWd1cmVkIHlldC5cbiIKK21zZ3N0ciAiICBDaMawYSBj4bqldSBow6xuaCBnw7NpICVzLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIHdoaWNoIHByb3ZpZGVzICVzIGlzIG5vdCBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgQ2jGsGEgY8OgaSDEkeG6t3QgZ8OzaSAlcyBtw6AgY3VuZyBj4bqlcCAlcy5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDM1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIgIENoxrBhIGPDoGkgxJHhurd0IGfDs2kgJXMuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQ3MgorIywgYy1mb3JtYXQKK21zZ2lkICIgJXMgKCVzKSBicmVha3MgJXMgYW5kIGlzICVzLlxuIgorbXNnc3RyICIgJXMgKCVzKSB24buhICVzLCBjxaluZyAlcy5cbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDc4CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJXMgKCVzKSBwcm92aWRlcyAlcy5cbiIKK21zZ3N0ciAiICAlcyAoJXMpIGN1bmcgY+G6pXAgJXMuXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQ4MgorIywgYy1mb3JtYXQKK21zZ2lkICIgIFZlcnNpb24gb2YgJXMgdG8gYmUgY29uZmlndXJlZCBpcyAlcy5cbiIKK21zZ3N0ciAiICBQaGnDqm4gYuG6o24gY+G7p2EgJXMgY+G6p24gY+G6pXUgaMOsbmggbMOgICVzLlxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo1OTYKK21zZ2lkICIgZGVwZW5kcyBvbiAiCittc2dzdHIgIiBwaOG7pSB0aHXhu5ljIHbDoG8gIgorCisjOiBzcmMvcGFja2FnZXMuYzo2MDIKK21zZ2lkICI7IGhvd2V2ZXI6XG4iCittc2dzdHIgIjsgdHV5IG5oacOqbjpcbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo3MQorIywgYy1mb3JtYXQKK21zZ2lkICIuLi4vJXMiCittc2dzdHIgIi4uLi8lcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5MQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBlbnN1cmluZyBgJS4yNTBzJyBkb2Vzbid0IGV4aXN0IgorbXNnc3RyICJn4bq3cCBs4buXaSBraGkgYuG6o28gxJHhuqNtIMKrICUuMjUwcyDCuyBraMO0bmcgdOG7k24gdOG6oWkiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTkKK21zZ2lkICJzcGxpdCBwYWNrYWdlIHJlYXNzZW1ibHkiCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxMDgKK21zZ2lkICJyZWFzc2VtYmxlZCBwYWNrYWdlIGZpbGUiCittc2dzdHIgInThuq1wIHRpbiBnw7NpIMSRw6MgdOG6rXAgaOG7o3AgbOG6oWkiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTMzCisjLCBjLWZvcm1hdAorbXNnaWQgIkF1dGhlbnRpY2F0aW5nICVzIC4uLlxuIgorbXNnc3RyICLEkGFuZyB4w6FjIHRo4buxYyAlcyAuLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxMzkKK21zZ2lkICJwYWNrYWdlIHNpZ25hdHVyZSB2ZXJpZmljYXRpb24iCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxNDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiVmVyaWZpY2F0aW9uIG9uIHBhY2thZ2UgJXMgZmFpbGVkISIKK21zZ3N0ciAiTOG7l2kgdGjhuqltIHRyYSBnw7NpICVzLiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlZlcmlmaWNhdGlvbiBvbiBwYWNrYWdlICVzIGZhaWxlZCxcbiIKKyJidXQgaW5zdGFsbGluZyBhbnl3YXkgYXMgeW91IHJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiIgorIkzhu5dpIHRo4bqpbSB0cmEgZ8OzaSAlcyxcbiIKKyJuaMawbmcgduG6q24gxJFhbmcgY8OgaSDEkeG6t3QgbmjGsCBi4bqhbiB5w6p1IGPhuqd1LlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICJwYXNzZWRcbiIKK21zZ3N0ciAixJHDoyBxdWFcbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxNjUgZHBrZy1kZWIvaW5mby5jOjgxCittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSB0ZW1wb3JhcnkgZGlyZWN0b3J5IgorbXNnc3RyICJraMO0bmcgdGjhu4MgdOG6oW8gdGjGsCBt4bulYyB04bqhbSB0aOG7nWkiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MjA1CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgJXMgaGFzIHRvbyBtYW55IENvbmZsaWN0cy9SZXBsYWNlcyBwYWlycyIKK21zZ3N0ciAiZ8OzaSAlcyBjw7MgcXXDoSBuaGnhu4F1IGPhurdwIFh1bmcgxJHhu5l0L1RoYXkgdGjhur8iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MjQzCisjLCBjLWZvcm1hdAorbXNnaWQgIm9sZCB2ZXJzaW9uIG9mIHBhY2thZ2UgaGFzIG92ZXJseS1sb25nIGluZm8gZmlsZSBuYW1lIHN0YXJ0aW5nIGAlLjI1MHMnIgorbXNnc3RyICIiCisicGhpw6puIGLhuqNuIGPFqSBj4bunYSBnw7NpIGPDsyB0w6puIHThuq1wIHRpbiB0aMO0bmcgdGluIHF1w6EgZMOgaSBi4bqvdCDEkeG6p3UgwqsgJS4yNTBzIMK7IgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjI4MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIG9ic29sZXRlIGluZm8gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia2jDtG5nIHRo4buDIGfhu6EgYuG7jyB04bqtcCB0aW4gdGjDtG5nIHRpbiBjxakgwqsgJS4yNTBzIMK7IgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjI4NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCAoc3VwcG9zZWQpIG5ldyBpbmZvIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImtow7RuZyB0aOG7gyBjw6BpIMSR4bq3dCB04bqtcCB0aW4gdGjDtG5nIHRpbiAoZ2nhuqMgdGhp4bq/dCkgbeG7m2kgwqsgJS4yNTBzIMK7IgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjI5NgorbXNnaWQgInVuYWJsZSB0byBvcGVuIHRlbXAgY29udHJvbCBkaXJlY3RvcnkiCittc2dzdHIgImtow7RuZyB0aOG7gyBt4bufIHRoxrAgbeG7pWMgxJFp4buBdSBraGnhu4NuIHThuqFtIHRo4budaSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMDcKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBjb250YWlucyBvdmVybHktbG9uZyBjb250cm9sIGluZm8gZmlsZSBuYW1lIChzdGFydGluZyBgJS41MHMnKSIKK21zZ3N0ciAiZ8OzaSBjaOG7qWEgdMOqbiB04bqtcCB0aW4gdGjDtG5nIHRpbiDEkWnhu4F1IGtoaeG7g24gcXXDoSBkw6BpIChi4bqvdCDEkeG6p3UgwqsgJS41MHMgwrspIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMxNAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGNvbnRyb2wgaW5mbyBjb250YWluZWQgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICJ0aMO0bmcgdGluIMSRaeG7gXUga2hp4buDbiBnw7NpIGNo4bupYSB0aMawIG3hu6VjIMKrICUuMjUwcyDCuyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMTYKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBjb250cm9sIGluZm8gcm1kaXIgb2YgYCUuMjUwcycgZGlkbid0IHNheSBub3QgYSBkaXIiCittc2dzdHIgIiIKKyJ2aeG7h2Mgcm1kaXIgKGfhu6EgYuG7jyB0aMawIG3hu6VjKSBraeG7g3UgdGjDtG5nIHRpbiDEkWnhu4F1IGtoaeG7g24gZ8OzaSBj4bunYSDCqyAlLjI1MHMgwrsgIgorImtow7RuZyBuw7NpIMKrIGtow7RuZyBwaOG6o2kgbMOgIHRoxrAgbeG7pWMgwrsiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzI2CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgJXMgY29udGFpbmVkIGxpc3QgYXMgaW5mbyBmaWxlIgorbXNnc3RyICJnw7NpICVzIGNo4bupYSBt4buZdCBkYW5oIHPDoWNoIGTGsOG7m2kgZOG6oW5nIHThuq1wIHRpbiB0aMO0bmcgdGluIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMzMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgaW5mbyBmaWxlIGAlLjI1MHMnIGFzIGAlLjI1MHMnIgorbXNnc3RyICIiCisia2jDtG5nIHRo4buDIGPDoGkgxJHhurd0IHThuq1wIHRpbiB0aMO0bmcgdGluIG3hu5tpIMKrICUuMjUwcyDCuyBkxrDhu5tpIGThuqFuZyDCqyAlLjI1MHMgwrsiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzQ5IHNyYy9yZW1vdmUuYzoxOTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSBjb250cm9sIGluZm8gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia2jDtG5nIHRo4buDIHjDs2EgdOG6rXAgdGluIHRow7RuZyB0aW4gxJFp4buBdSBraGnhu4NuIMKrICUuMjUwcyDCuyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo0MTEKK21zZ2lkICJjYW5ub3QgYWNjZXNzIGFyY2hpdmUiCittc2dzdHIgImtow7RuZyB0aOG7gyB0cnV5IGPhuq1wIGtobyBsxrB1IgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjQzMworIywgZnV6enkKKyN8IG1zZ2lkICJjb250cm9sIGluZm9ybWF0aW9uIGxlbmd0aCIKK21zZ2lkICJwYWNrYWdlIGNvbnRyb2wgaW5mb3JtYXRpb24gZXh0cmFjdGlvbiIKK21zZ3N0ciAixJHhu5kgZMOgaSB0aMO0bmcgdGluIMSRaeG7gXUga2hp4buDbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo0NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVjb3JkZWQgaW5mbyBhYm91dCAlcyBmcm9tICVzLlxuIgorbXNnc3RyICLEkMOjIGdoaSBsxrB1IHRow7RuZyB0aW4gduG7gSAlcyB04burICVzLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjQ2OAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGFyY2hpdGVjdHVyZSAoJXMpIGRvZXMgbm90IG1hdGNoIHN5c3RlbSAoJXMpIgorbXNnc3RyICJraeG6v24gdHLDumMgZ8OzaSAoJXMpIGtow7RuZyBraOG7m3AgduG7m2kgaOG7hyB0aOG7kW5nICglcykiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTIzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiByZWdhcmRpbmcgJXMgY29udGFpbmluZyAlcywgcHJlLWRlcGVuZGVuY3kgcHJvYmxlbTpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6IHbhu4EgJXMgY2jhu6lhICVzLCB24bqlbiDEkeG7gSBxdWFuIGjhu4cgcGjhu6UgdGh14buZYyBz4bq1bjpcbiIKKyIlcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1MjYKKyMsIGMtZm9ybWF0Cittc2dpZCAicHJlLWRlcGVuZGVuY3kgcHJvYmxlbSAtIG5vdCBpbnN0YWxsaW5nICUuMjUwcyIKK21zZ3N0ciAiduG6pW4gxJHhu4EgcXVhbiBo4buHIHBo4bulIHRodeG7mWMgc+G6tW4gbsOqbiBraMO0bmcgY8OgaSDEkeG6t3QgJS4yNTBzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjUyNworbXNnaWQgImlnbm9yaW5nIHByZS1kZXBlbmRlbmN5IHByb2JsZW0hIgorbXNnc3RyICLEkWFuZyBs4budIHbhuqVuIMSR4buBIHbhu4EgcXVhbiBo4buHIHBo4bulIHRodeG7mWMgc+G6tW4uIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjU0MworIywgYy1mb3JtYXQKK21zZ2lkICJQcmVwYXJpbmcgdG8gcmVwbGFjZSAlcyAlcyAodXNpbmcgJXMpIC4uLlxuIgorbXNnc3RyICLEkGFuZyBjaHXhuqluIGLhu4sgdGhheSB0aOG6vyAlcyAlcyAoYuG6sW5nICVzKSAuLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiVW5wYWNraW5nICVzIChmcm9tICVzKSAuLi5cbiIKK21zZ3N0ciAixJBhbmcgbeG7nyBnw7NpICVzICh04burICVzKSAuLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAibmFtZSBvZiBjb25mZmlsZSAoc3RhcnRpbmcgYCUuMjUwcycpIGlzIHRvbyBsb25nICg+JWQgY2hhcmFjdGVycykiCittc2dzdHIgInTDqm4gY+G7p2EgdOG6rXAgdGluIGPhuqV1IGjDrG5oIChi4bqvdCDEkeG6p3UgwqsgJS4yNTBzIMK7KSBxdcOhIGTDoGkgKD4lZCBrw70gdOG7sSkiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjMzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDcxCisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWQgZXJyb3IgaW4gJS4yNTBzIgorbXNnc3RyICJn4bq3cCBs4buXaSDEkeG7jWMgdHJvbmcgJS4yNTBzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjYzNQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nICUuMjUwcyIKK21zZ3N0ciAiZ+G6t3AgbOG7l2kga2hpIMSRw7NuZyAlLjI1MHMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjM3CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHRyeWluZyB0byBvcGVuICUuMjUwcyIKK21zZ3N0ciAiZ+G6t3AgbOG7l2kga2hpIGPhu5EgbeG7nyAlLjI1MHMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6Njc4CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlLWNvbmZpZ3VyaW5nICVzLCB0byBhbGxvdyByZW1vdmFsIG9mICVzIC4uLlxuIgorbXNnc3RyICLEkGFuZyBodeG7tyBj4bqldSBow6xuaCAlcywgxJHhu4MgY8OzIGto4bqjIG7Eg25nIGfhu6EgYuG7jyAlcyAuLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGUtY29uZmlndXJpbmcgJXMgLi4uXG4iCittc2dzdHIgIsSQYW5nIGjhu6d5IGPhuqV1IGjDrG5oICVzIC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjc1NQorIywgYy1mb3JtYXQKK21zZ2lkICJVbnBhY2tpbmcgcmVwbGFjZW1lbnQgJS4yNTBzIC4uLlxuIgorbXNnc3RyICLEkGFuZyBt4bufIGfDs2kgxJFp4buBdSB0aGF5IHRo4bq/ICUuMjUwcyAuLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NDAKKyMsIGZ1enp5CisjfCBtc2dpZCAiZHBrZy1kZWIgZmllbGQgZXh0cmFjdGlvbiIKK21zZ2lkICJwYWNrYWdlIGZpbGVzeXN0ZW0gYXJjaGl2ZSBleHRyYWN0aW9uIgorbXNnc3RyICJkcGtnLWRlYiBs4bqleSB0csaw4budbmciCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6ODU0Cittc2dpZCAiZXJyb3IgcmVhZGluZyBkcGtnLWRlYiB0YXIgb3V0cHV0IgorbXNnc3RyICJn4bq3cCBs4buXaSBraGkgxJHhu41jIGvhur90IHh14bqldCB0YXIgY+G7p2EgwqsgZHBrZy1kZWIgwrsiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6ODU2Cittc2dpZCAiY29ycnVwdGVkIGZpbGVzeXN0ZW0gdGFyZmlsZSAtIGNvcnJ1cHRlZCBwYWNrYWdlIGFyY2hpdmUiCittc2dzdHIgInThuq1wIHRpbiAudGFyIGPhu6dhIGjhu4cgdGjhu5FuZyB04bqtcCB0aW4gYuG7iyBo4buPbmcg4oCUIGtobyBsxrB1IGfDs2kgYuG7iyBo4buPbmciCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6ODU5Cittc2dpZCAiZHBrZy1kZWI6IHphcCBwb3NzaWJsZSB0cmFpbGluZyB6ZXJvcyIKK21zZ3N0ciAiZHBrZy1kZWI6IHPhu61hIGPDoWMgc+G7kSBraMO0bmcgxJFpIHNhdSBjw7MgdGjhu4MiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTE5CisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCBzdGF0IG9sZCBmaWxlICclLjI1MHMnIHNvIG5vdCBkZWxldGluZyBpdDogJXMiCittc2dzdHIgIiIKKyJraMO0bmcgdGjhu4MgbOG6pXkgdHLhuqFuZyB0aMOhaSB24buBIHThuq1wIHRpbiBjxakgwqsgJS4yNTBzIMK7IG7Dqm4ga2jDtG5nIHhvw6EgYuG7jyBuw7MgOiAlcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSBvbGQgZGlyZWN0b3J5ICclLjI1MHMnOiAlcyIKK21zZ3N0ciAia2jDtG5nIHRo4buDIHhvw6EgYuG7jyB0aMawIG3hu6VjIGPFqSDCqyAlLjI1MHMgwrs6ICVzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjkyOAorIywgYy1mb3JtYXQKK21zZ2lkICJvbGQgY29uZmZpbGUgJyUuMjUwcycgd2FzIGFuIGVtcHR5IGRpcmVjdG9yeSAoYW5kIGhhcyBub3cgYmVlbiBkZWxldGVkKSIKK21zZ3N0ciAiIgorInThuq1wIHRpbiBj4bqldSBow6xuaCBjxakgwqsgJS4yNTBzIMK7IGzDoCBt4buZdCB0aMawIG3hu6VjIHRy4buRbmcgKHRow6wgxJHDoyDEkcaw4bujYyB4b8OhIGLhu48pIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjk3NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBvdGhlciBuZXcgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia2jDtG5nIHRo4buDIGzhuqV5IGPDoWMgdGjDtG5nIHRpbiB24buBIHThuq1wIHRpbiBt4bubaSBraMOhYyDCqyAlLjI1MHMgwrsiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTg2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJvbGQgZmlsZSAnJS4yNTBzJyBpcyB0aGUgc2FtZSBhcyBzZXZlcmFsIG5ldyBmaWxlcyEgKGJvdGggJyUuMjUwcycgYW5kICIKKyInJS4yNTBzJykiCittc2dzdHIgIiIKKyJ04bqtcCB0aW4gY8WpIMKrICUuMjUwcyDCuyBsw6AgY8O5bmcgbeG7mXQgdOG6rXAgdGluIHbhu5tpIHbDoGkgdOG6rXAgdGluIG3hu5tpIChj4bqjIGhhaSDCqyAiCisiJS4yNTBzIMK7IHbDoCDCqyAlLjI1MHMgwrspIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEwMjUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNlY3VyZWx5IHJlbW92ZSBvbGQgZmlsZSAnJS4yNTBzJzogJXMiCittc2dzdHIgImtow7RuZyB0aOG7gyBn4buhIGLhu48gYuG6o28gbeG6rXQgdOG6rXAgdGluIGPFqSDCqyAlLjI1MHMgwrs6ICVzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEyMDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiKE5vdGluZyBkaXNhcHBlYXJhbmNlIG9mICVzLCB3aGljaCBoYXMgYmVlbiBjb21wbGV0ZWx5IHJlcGxhY2VkLilcbiIKK21zZ3N0ciAiKMSQYW5nIGdoaSBsxrB1IHPhu7EgYmnhur9uIG3huqV0IGPhu6dhICVzLCBtw6AgxJHDoyBob8OgbiB0b8OgbiDEkcaw4bujYyB0aGF5IHRo4bq/LilcbiIKKworIy4gVFJBTlNMQVRPUlM6IFRoaXMgaXMgdGhlIGhlYWRlciB0aGF0IGFwcGVhcnMgb24gJ2Rwa2ctcXVlcnkgLWwnLiBUaGUKKyMuICogc3RyaW5nIHNob3VsZCByZW1haW4gdW5kZXIgODAgY2hhcmFjdGVycy4gVGhlIHVwcGVyY2FzZSBsZXR0ZXJzIGluCisjLiAqIHRoZSBzdGF0ZSB2YWx1ZXMgZGVub3RlIHRoZSBhYmJyZXZpYXRlZCBsZXR0ZXIgdGhhdCB3aWxsIGFwcGVhciBvbgorIy4gKiB0aGUgZmlyc3QgdGhyZWUgY29sdW1ucywgd2hpY2ggc2hvdWxkIGlkZWFsbHkgbWF0Y2ggdGhlIEVuZ2xpc2ggb25lCisjLiAqIChlLmcuIFJlbW92ZSDihpIgc3VwUmltZWl4KSwgc2VlIGRwa2ctcXVlcnkoMSkgZm9yIGZ1cnRoZXIgZGV0YWlscy4gVGhlCisjLiAqIHRyYW5zbGF0ZWQgbWVzc2FnZSBjYW4gdXNlIGFkZGl0aW9uYWwgbGluZXMgaWYgbmVlZGVkLgorIzogc3JjL3F1ZXJ5Y21kLmM6MTQ5Cittc2dpZCAiIgorIkRlc2lyZWQ9VW5rbm93bi9JbnN0YWxsL1JlbW92ZS9QdXJnZS9Ib2xkXG4iCisifCBTdGF0dXM9Tm90L0luc3QvQ29uZi1maWxlcy9VbnBhY2tlZC9oYWxGLWNvbmYvSGFsZi1pbnN0L3RyaWctYVdhaXQvVHJpZy0iCisicGVuZFxuIgorInwvIEVycj89KG5vbmUpL1JlaW5zdC1yZXF1aXJlZCAoU3RhdHVzLEVycjogdXBwZXJjYXNlPWJhZClcbiIKK21zZ3N0ciAiIgorIk1vbmcgbXXhu5FuIChEZXNpcmVkPSk6XG4iCisiIFUgICAga2jDtG5nIHLDtVxuIgorIiBJXHRjw6BpIMSR4bq3dFxuIgorIiBSXHRn4buhIGLhu49cbiIKKyIgUFx0dOG6qXlcbiIKKyIgSFx0Z2nhu68gbOG6oWlcbiIKKyJcbiIKKyJUcuG6oW5nIHRow6FpIChTdGF0dXM9KTpcbiIKKyIgblx0a2jDtG5nIGPDs1xuIgorIiBpXHTEkcaw4bujYyBjw6BpIMSR4bq3dFxuIgorIiBjXHR04bqtcCB0aW4gY+G6pXUgaMOsbmhcbiIKKyIgdVx0xJHGsOG7o2MgZ2nhuqNpIG7DqW5cbiIKKyIgZlx0buG7rWEgY+G6pXUgaMOsbmhcbiIKKyIgaFx0buG7rWEgY8OgaSDEkeG6t3RcbiIKKyIgd1x0xJHhu6NpIGLhu5kgZ8OieSBuw6puXG4iCisiIHRcdGLhu5kgZ8OieSBuw6puIGLhu4sgaG/Do25cbiIKKyJcbiIKKyJM4buXaSAoLyBFcnI/PSk6XG4iCisiIChub25lKVx0a2jDtG5nIGPDs1xuIgorIiByXHR5w6p1IGPhuqd1IGPDoGkgxJHhurd0IGzhuqFpXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjE1MworbXNnaWQgIk5hbWUiCittc2dzdHIgIlTDqm4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjE1MworbXNnaWQgIlZlcnNpb24iCittc2dzdHIgIlBoacOqbiBi4bqjbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MTU0Cittc2dpZCAiRGVzY3JpcHRpb24iCittc2dzdHIgIk3DtCB04bqjIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNDYgc3JjL3F1ZXJ5Y21kLmM6NTExIHNyYy9zZWxlY3QuYzo3NQorIywgYy1mb3JtYXQKK21zZ2lkICJObyBwYWNrYWdlcyBmb3VuZCBtYXRjaGluZyAlcy5cbiIKK21zZ3N0ciAiS2jDtG5nIHTDrG0gdGjhuqV5IGfDs2kga2jhu5twIHbGoWkgJXMuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI3MworIywgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnNpb24gYnkgJXMgZnJvbTogJXNcbiIKK21zZ3N0ciAiYuG7iyB0cuG7h2NoIGLhu59pICVzIHThu6sgOiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJzaW9uIGJ5ICVzIHRvOiAlc1xuIgorbXNnc3RyICJi4buLIHRy4buHY2ggYuG7n2kgJXMgdOG7m2kgOiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9jYWwgZGl2ZXJzaW9uIGZyb206ICVzXG4iCittc2dzdHIgInRy4buHY2ggbuG7mWkgYuG7mSB04burIDogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6Mjc5CisjLCBjLWZvcm1hdAorbXNnaWQgImxvY2FsIGRpdmVyc2lvbiB0bzogJXNcbiIKK21zZ3N0ciAiYuG7iyB0cuG7h2NoIG7hu5lpIGLhu5kgdOG7m2kgOiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzozMDkKK21zZ2lkICItLXNlYXJjaCBuZWVkcyBhdCBsZWFzdCBvbmUgZmlsZSBuYW1lIHBhdHRlcm4gYXJndW1lbnQiCittc2dzdHIgIsKrIC0tc2VhcmNoIMK7IGPhuqduIMOtdCBuaOG6pXQgbeG7mXQgxJHhu5FpIHPhu5EgbMOgIGtp4buDdSBt4bqrdSB0w6puIHThuq1wIHRpbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MzUwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJObyBwYWNrYWdlcyBmb3VuZCBtYXRjaGluZyAlcy5cbiIKK21zZ2lkICIlczogbm8gcGF0aCBmb3VuZCBtYXRjaGluZyBwYXR0ZXJuICVzLlxuIgorbXNnc3RyICJLaMO0bmcgdMOsbSB0aOG6pXkgZ8OzaSBraOG7m3AgdsahaSAlcy5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MzkzCisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgYCVzJyBpcyBub3QgaW5zdGFsbGVkIGFuZCBubyBpbmZvIGlzIGF2YWlsYWJsZS5cbiIKK21zZ3N0ciAiR8OzaSDCqyAlcyDCuyBraMO0bmcgxJHGsOG7o2MgY8OgaSDEkeG6t3QgdsOgIGtow7RuZyBjw7MgdGjDtG5nIHRpbiBuw6BvIHPhurVuIHPDoG5nLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSBgJXMnIGlzIG5vdCBhdmFpbGFibGUuXG4iCittc2dzdHIgIkfDs2kgwqsgJXMgwrsga2jDtG5nIHPhurVuIHPDoG5nLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MTAgc3JjL3F1ZXJ5Y21kLmM6NTg1CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgYCVzJyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICJHw7NpIMKrICVzIMK7IGtow7RuZyDEkcaw4bujYyBjw6BpIMSR4bq3dC5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDE4CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgYCVzJyBkb2VzIG5vdCBjb250YWluIGFueSBmaWxlcyAoISlcbiIKK21zZ3N0ciAiR8OzaSDCqyAlcyDCuyBraMO0bmcgY2jhu6lhIHThuq1wIHRpbiBuw6BvICghKVxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9jYWxseSBkaXZlcnRlZCB0bzogJXNcbiIKK21zZ3N0ciAiYuG7iyB0cuG7h2NoIG7hu5lpIGLhu5kgdOG7m2kgOiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBkaXZlcnRzIG90aGVycyB0bzogJXNcbiIKK21zZ3N0ciAiZ8OzaSBsw6BtIHRy4buHY2ggbmjhu69uZyBnw7NpIGtow6FjIHThu5tpIDogJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDMxCisjLCBjLWZvcm1hdAorbXNnaWQgImRpdmVydGVkIGJ5ICVzIHRvOiAlc1xuIgorbXNnc3RyICJi4buLIHRy4buHY2ggYuG7n2kgJXMgdOG7m2kgOiAlc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0NTIKK21zZ2lkICIiCisiVXNlIGRwa2cgLS1pbmZvICg9IGRwa2ctZGViIC0taW5mbykgdG8gZXhhbWluZSBhcmNoaXZlIGZpbGVzLFxuIgorImFuZCBkcGtnIC0tY29udGVudHMgKD0gZHBrZy1kZWIgLS1jb250ZW50cykgdG8gbGlzdCB0aGVpciBjb250ZW50cy5cbiIKK21zZ3N0ciAiIgorIkTDuW5nIGzhu4duaDpcbiIKKyLCqyBkcGtnIC0taW5mbyDCuyAoPSDCqyBkcGtnLWRlYiAtLWluZm8gwrspXG4iCisiXHRcdMSR4buDIGtp4buDbSB0cmEgeGVtIGPDoWMgdOG6rXAgdGluIGtobyBsxrB1LFxuIgorInbDoFxuIgorIsKrIGRwa2cgLS1jb250ZW50cyDCuyAoPSDCqyBkcGtnLWRlYiAtLWNvbnRlbnRzIMK7KVxuIgorIlx0XHTEkeG7gyBsaeG7h3Qga8OqIG7hu5lpIGR1bmcgY+G7p2EgY2jDum5nLlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo1NzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyB0YWtlcyBhdCBtb3N0IHR3byBhcmd1bWVudHMiCittc2dzdHIgIsKrIC0tJXMgwrsgY2jhuqVwIG5o4bqtbiBuaGnhu4F1IG5o4bqldCAyIMSR4buRaSBz4buRIgorCisjOiBzcmMvcXVlcnljbWQuYzo1NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29udHJvbCBmaWxlIGNvbnRhaW5zICVjIgorbXNnc3RyICJ04bqtcCB0aW4gxJFp4buBdSBraGnhu4NuIGNo4bupYSAlYyIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjAwCisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiAlcyBwYWNrYWdlIG1hbmFnZW1lbnQgcHJvZ3JhbSBxdWVyeSB0b29sIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkNoxrDGoW5nIHRyw6xuaCBxdeG6o24gbMO9IGfDs2kgJXMgY+G7p2EgRGViaWFuLCBwaGnDqm4gYuG6o24gJXMuXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjYxOQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIkNvbW1hbmRzOlxuIgorI3wgIiAgLXN8LS1zdGF0dXMgPHBhY2thZ2U+IC4uLiAgICAgICAgRGlzcGxheSBwYWNrYWdlIHN0YXR1cyBkZXRhaWxzLlxuIgorI3wgIiAgLXB8LS1wcmludC1hdmFpbCA8cGFja2FnZT4gLi4uICAgRGlzcGxheSBhdmFpbGFibGUgdmVyc2lvbiBkZXRhaWxzLlxuIgorI3wgIiAgLUx8LS1saXN0ZmlsZXMgPHBhY2thZ2U+IC4uLiAgICAgTGlzdCBmaWxlcyBgb3duZWQnIGJ5IHBhY2thZ2UocykuXG4iCisjfCAiICAtbHwtLWxpc3QgWzxwYXR0ZXJuPiAuLi5dICAgICAgICBMaXN0IHBhY2thZ2VzIGNvbmNpc2VseS5cbiIKKyN8ICIgIC1XfC0tc2hvdyA8cGF0dGVybj4gLi4uICAgICAgICAgIFNob3cgaW5mb3JtYXRpb24gb24gcGFja2FnZShzKS5cbiIKKyN8ICIgIC1TfC0tc2VhcmNoIDxwYXR0ZXJuPiAuLi4gICAgICAgIEZpbmQgcGFja2FnZShzKSBvd25pbmcgZmlsZShzKS5cbiIKKyN8ICIgIC1jfC0tY29udHJvbC1wYXRoIDxwYWNrYWdlPiBbPGZpbGU+XVxuIgorI3wgIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHJpbnQgcGF0aCBmb3IgcGFja2FnZSBjb250cm9sIGZpbGUuXG4iCisjfCAiXG4iCittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLXN8LS1zdGF0dXMgPHBhY2thZ2U+IC4uLiAgICAgICAgRGlzcGxheSBwYWNrYWdlIHN0YXR1cyBkZXRhaWxzLlxuIgorIiAgLXB8LS1wcmludC1hdmFpbCA8cGFja2FnZT4gLi4uICAgRGlzcGxheSBhdmFpbGFibGUgdmVyc2lvbiBkZXRhaWxzLlxuIgorIiAgLUx8LS1saXN0ZmlsZXMgPHBhY2thZ2U+IC4uLiAgICAgTGlzdCBmaWxlcyBgb3duZWQnIGJ5IHBhY2thZ2UocykuXG4iCisiICAtbHwtLWxpc3QgWzxwYXR0ZXJuPiAuLi5dICAgICAgICBMaXN0IHBhY2thZ2VzIGNvbmNpc2VseS5cbiIKKyIgIC1XfC0tc2hvdyBbPHBhdHRlcm4+IC4uLl0gICAgICAgIFNob3cgaW5mb3JtYXRpb24gb24gcGFja2FnZShzKS5cbiIKKyIgIC1TfC0tc2VhcmNoIDxwYXR0ZXJuPiAuLi4gICAgICAgIEZpbmQgcGFja2FnZShzKSBvd25pbmcgZmlsZShzKS5cbiIKKyIgIC1jfC0tY29udHJvbC1wYXRoIDxwYWNrYWdlPiBbPGZpbGU+XVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHJpbnQgcGF0aCBmb3IgcGFja2FnZSBjb250cm9sIGZpbGUuXG4iCisiXG4iCittc2dzdHIgIiIKKyJM4buHbmg6XG4iCisiICAtc3wtLXN0YXR1cyA8dMOqbl9nw7NpPiAuLi4gICAgICAgIEhp4buDbiB0aOG7iyBjaGkgdGnhur90IHbhu4EgdHLhuqFuZyB0aMOhaSBnw7NpXG4iCisiICAtcHwtLXByaW50LWF2YWlsIDx0w6puX2fDs2k+IC4uLiAgIEhp4buDbiB0aOG7iyBjaGkgdGnhur90IHPhurVuIHPDoG5nIHbhu4EgcGhpw6puIGLhuqNuXG4iCisiICAtTHwtLWxpc3RmaWxlcyA8dMOqbl9nw7NpPiAuLi4gICAgIExp4buHdCBrw6ogbmjhu69uZyB04bqtcCB0aW4gxJHGsOG7o2MgZ8OzaSDCqyBz4bufIGjhu691ICIKKyLCu1xuIgorIiAgLWx8LS1saXN0IFs8beG6q3U+IC4uLl0gICAgICAgICAgICAgICAgIExp4buHdCBrw6ogbmfhuq9uIGfhu41uIGPDoWMgZ8OzaVxuIgorIiAgLVd8LS1zaG93IDxt4bqrdT4gLi4uICAgICAgICAgIEhp4buDbiB0aOG7iyB0aMO0bmcgdGluIHbhu4EgZ8OzaVxuIgorIiAgLVN8LS1zZWFyY2ggPG3huqt1PiAuLi4gICAgICAgIFTDrG0gbmjhu69uZyBnw7NpIMKrIHPhu58gaOG7r3UgwrsgdOG6rXAgdGluXG4iCisiICAtY3wtLWNvbnRyb2wtcGF0aCA8dMOqbl9nw7NpPiBbPHThu4dwPl0gICAgSW4gcmEgxJHGsOG7nW5nIGThuqtuIMSR4bq/biB04bqtcCB0aW4gxJFp4buBdSAiCisia2hp4buDbiBnw7NpXG4iCisiXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjYzNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorIiAgLWZ8LS1zaG93Zm9ybWF0PTxmb3JtYXQ+ICAgICAgICAgVXNlIGFsdGVybmF0aXZlIGZvcm1hdCBmb3IgLS1zaG93LlxuIgorIlxuIgorbXNnc3RyICIiCisiVMO5eSBjaOG7jW46XG4iCisiICAtLWFkbWluZGlyPTx0aMawX23hu6VjPiAgICAgICAgICAgICAgIETDuW5nIHRoxrAgbeG7pWMgbsOgeSB0aGF5IGNobyAlc1xuIgorIiAgLS1zaG93Zm9ybWF0PTzEkeG7i25oX2ThuqFuZz4gICAgICBEw7luZyDEkeG7i25oIGThuqFuZyB4ZW4ga+G6vSBjaG8gwqsgLS1zaG93IMK7XG4iCisiXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjY0MiBkcGtnLWRlYi9tYWluLmM6MTEyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJGb3JtYXQgc3ludGF4OlxuIgorIiAgQSBmb3JtYXQgaXMgYSBzdHJpbmcgdGhhdCB3aWxsIGJlIG91dHB1dCBmb3IgZWFjaCBwYWNrYWdlLiBUaGUgZm9ybWF0XG4iCisiICBjYW4gaW5jbHVkZSB0aGUgc3RhbmRhcmQgZXNjYXBlIHNlcXVlbmNlcyBcXG4gKG5ld2xpbmUpLCBcXHIgKGNhcnJpYWdlXG4iCisiICByZXR1cm4pIG9yIFxcXFwgKHBsYWluIGJhY2tzbGFzaCkuIFBhY2thZ2UgaW5mb3JtYXRpb24gY2FuIGJlIGluY2x1ZGVkXG4iCisiICBieSBpbnNlcnRpbmcgdmFyaWFibGUgcmVmZXJlbmNlcyB0byBwYWNrYWdlIGZpZWxkcyB1c2luZyB0aGUgJHt2YXJbOyIKKyJ3aWR0aF19XG4iCisiICBzeW50YXguIEZpZWxkcyB3aWxsIGJlIHJpZ2h0LWFsaWduZWQgdW5sZXNzIHRoZSB3aWR0aCBpcyBuZWdhdGl2ZSBpbiAiCisid2hpY2hcbiIKKyIgIGNhc2UgbGVmdCBhbGlnbm1lbnQgd2lsbCBiZSB1c2VkLlxuIgorbXNnc3RyICIiCisiQ8O6IHBow6FwIMSR4buLbmggZOG6oW5nOlxuIgorIiAgxJDhu4tuaCBk4bqhbmcgbMOgIGNodeG7l2kgc+G6vSDEkcaw4bujYyB4deG6pXQgY2hvIG3hu5dpIGfDs2kuXG4iCisiICDEkOG7i25oIGThuqFuZyBjw7MgdGjhu4MgZ+G7k20gY8OhYyBkw6N5IHRob8OhdCBjaHXhuqluOlxuIgorIlx0XFxuXHRcdGTDsm5nIG3hu5tpXG4iCisiXHRcXHJcdFx0eHXhu5FuZyBkw7JuZ1xuIgorIlx0XFxcXFx0XHR4dXnhu4djIG5nxrDhu6NjIGNodeG6qW5cbiIKKyIgIEPDsyB0aOG7gyBn4buTbSB0aMO0bmcgdGluIHbhu4EgZ8OzaSBi4bqxbmcgY8OhY2ggY2jDqG4gdGhhbSBjaGnhur91IGJp4bq/blxuIgorIiAgxJHhur9uIHRyxrDhu51uZyBnw7NpLCBkw7luZyBjw7ogcGjDoXAgwqsgJHt2YXJbO3dpZHRoXX0gwrsuXG4iCisiICBUcsaw4budbmcgxJHGsOG7o2MgY2FuaCBs4buBIHBo4bqjaSwgbuG6v3UgxJHhu5kgcuG7mW5nIGtow7RuZyDDom1cbiIKKyIgICh0cm9uZyB0csaw4budbmcgaOG7o3AgxJHDsywgY2FuaCBs4buBIHRyw6FpKS5cbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjU2Cittc2dpZCAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBxdWVyeWluZyBwYWNrYWdlcy4iCittc2dzdHIgIiIKKyJIw6N5IHPhu60gZOG7pW5nIHR14buzIGNo4buNbiB0cuG7oyBnacO6cCDCqyAtLWhlbHAgwrsgxJHhu4MgdMOsbSB0cuG7oyBnacO6cCB24buBIGNo4bupYyBuxINuZyB0cnV5ICIKKyJ24bqlbiBnw7NpLiIKKworIzogc3JjL3JlbW92ZS5jOjg4CisjLCBjLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nIHJlcXVlc3QgdG8gcmVtb3ZlICUuMjUwcyB3aGljaCBpc24ndCBpbnN0YWxsZWQuIgorbXNnc3RyICLEkWFuZyBs4budIHnDqnUgY+G6p3UgZ+G7oSBi4buPIGfDs2kgY2jGsGEgY8OgaSDEkeG6t3QgJS4yNTBzLiIKKworIzogc3JjL3JlbW92ZS5jOjk1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpZ25vcmluZyByZXF1ZXN0IHRvIHJlbW92ZSAlLjI1MHMsIG9ubHkgdGhlIGNvbmZpZ1xuIgorIiBmaWxlcyBvZiB3aGljaCBhcmUgb24gdGhlIHN5c3RlbS4gVXNlIC0tcHVyZ2UgdG8gcmVtb3ZlIHRoZW0gdG9vLiIKK21zZ3N0ciAiIgorIsSRYW5nIGzhu50gecOqdSBj4bqndSBn4buhIGLhu48gZ8OzaSAlLjI1MHMsXG4iCisiY2jhu4kgY8OzIG5o4buvbmcgdOG6rXAgdGluIGPhuqV1IGjDrG5oIGPhu6dhIG7DsyB0csOqbiBo4buHIHRo4buRbmcuXG4iCisiRMO5bmcgwqsgLS1wdXJnZSDCuyAodOG6qXkpIMSR4buDIGfhu6EgYuG7jyBjaMO6bmcuIgorCisjOiBzcmMvcmVtb3ZlLmM6MTAzCittc2dpZCAiVGhpcyBpcyBhbiBlc3NlbnRpYWwgcGFja2FnZSAtIGl0IHNob3VsZCBub3QgYmUgcmVtb3ZlZC4iCittc2dzdHIgIsSQw6J5IGzDoCBt4buZdCBnw7NpIGNo4bunIHnhur91IOKAlCDEkeG7q25nIGfhu6EgYuG7jyBuw7MuIgorCisjOiBzcmMvcmVtb3ZlLmM6MTI4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBkZXBlbmRlbmN5IHByb2JsZW1zIHByZXZlbnQgcmVtb3ZhbCBvZiAlczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2c6IHbhuqVuIMSR4buBIHF1YW4gaOG7hyBwaOG7pSB0aHXhu5ljIG5nxINuIGPhuqNuIHZp4buHYyBn4buhIGLhu48gJXM6XG4iCisiJXMiCisKKyM6IHNyYy9yZW1vdmUuYzoxMzAKK21zZ2lkICJkZXBlbmRlbmN5IHByb2JsZW1zIC0gbm90IHJlbW92aW5nIgorbXNnc3RyICJn4bq3cCB24bqlbiDEkeG7gSBxdWFuIGjhu4cgcGjhu6UgdGh14buZYyBuw6puIGtow7RuZyBn4buhIGLhu48iCisKKyM6IHNyYy9yZW1vdmUuYzoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6ICVzOiBkZXBlbmRlbmN5IHByb2JsZW1zLCBidXQgcmVtb3ZpbmcgYW55d2F5IGFzIHlvdSByZXF1ZXN0ZWQ6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtnOiAlczogduG6pW4gxJHhu4EgcXVhbiBo4buHIHBo4bulIHRodeG7mWMsIG5oxrBuZyB24bqrbiBn4buhIGLhu48gbmjGsCBi4bqhbiB5w6p1IGPhuqd1IDpcbiIKKyIlcyIKKworIzogc3JjL3JlbW92ZS5jOjE0MgorbXNnaWQgIiIKKyJQYWNrYWdlIGlzIGluIGEgdmVyeSBiYWQgaW5jb25zaXN0ZW50IHN0YXRlIC0geW91IHNob3VsZFxuIgorIiByZWluc3RhbGwgaXQgYmVmb3JlIGF0dGVtcHRpbmcgYSByZW1vdmFsLiIKK21zZ3N0ciAiIgorIkfDs2kg4bufIHRyb25nIHTDrG5oIHRy4bqhbmcgcuG6pXQga2jDtG5nIOG7lW4gxJHhu4tuaC5cbiIKKyJLaHV5w6puIGLhuqFuIGPDoGkgxJHhurd0IGzhuqFpIG7DsyB0csaw4bubYyBraGkgdGjhu60gZ+G7oSBi4buPIG7Dsy4iCisKKyM6IHNyYy9yZW1vdmUuYzoxNDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiV291bGQgcmVtb3ZlIG9yIHB1cmdlICVzIC4uLlxuIgorbXNnc3RyICJOw6puIGfhu6EgYuG7jyBob+G6t2MgdOG6qXkgJXMgLi4uXG4iCisKKyM6IHNyYy9yZW1vdmUuYzoxNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVtb3ZpbmcgJXMgLi4uXG4iCittc2dzdHIgIsSQYW5nIGfhu6EgYuG7jyAlcyAuLi5cbiIKKworIzogc3JjL3JlbW92ZS5jOjI3NSBzcmMvcmVtb3ZlLmM6MzY2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ3aGlsZSByZW1vdmluZyAlLjI1MHMsIHVuYWJsZSB0byByZW1vdmUgZGlyZWN0b3J5ICclLjI1MHMnOiAlcyAtIGRpcmVjdG9yeSAiCisibWF5IGJlIGEgbW91bnQgcG9pbnQ/IgorbXNnc3RyICIiCisidHJvbmcga2hpIGfhu6EgYuG7jyAlLjI1MHMsIGtow7RuZyB0aOG7gyBn4buhIGLhu48gdGjGsCBt4bulYyDCqyAlLjI1MHMgwrs6XG4iCisiJXMg4oCUIHRoxrAgbeG7pWMgY8OzIHRo4buDIGzDoCBt4buZdCDEkWnhu4NtIGzhuq9wIGtow7RuZz8iCisKKyM6IHNyYy9yZW1vdmUuYzoyODkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNlY3VyZWx5IHJlbW92ZSAnJS4yNTBzJyIKK21zZ3N0ciAia2jDtG5nIHRo4buDIGfhu6EgYuG7jyBi4bqjbyBt4bqtdCDCqyAlLjI1MHMgwrsiCisKKyM6IHNyYy9yZW1vdmUuYzozNjEKKyMsIGMtZm9ybWF0Cittc2dpZCAid2hpbGUgcmVtb3ZpbmcgJS4yNTBzLCBkaXJlY3RvcnkgJyUuMjUwcycgbm90IGVtcHR5IHNvIG5vdCByZW1vdmVkLiIKK21zZ3N0ciAiIgorInRyb25nIGtoaSBn4buhIGLhu48gJS4yNTBzLCB0aMawIG3hu6VjIMKrICUuMjUwcyDCuyBraMO0bmcgdHLhu5FuZyBuw6puIGtow7RuZyDEkcaw4bujYyBn4buhIGLhu48uIgorCisjOiBzcmMvcmVtb3ZlLmM6MzgzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW5ub3QgcmVtb3ZlIGAlLjI1MHMnIgorbXNnaWQgImNhbm5vdCByZW1vdmUgJyUuMjUwcyciCittc2dzdHIgImtow7RuZyB0aOG7gyBn4buhIGLhu48gwqsgJS4yNTBzIMK7IgorCisjOiBzcmMvcmVtb3ZlLmM6NDA5CisjLCBjLWZvcm1hdAorbXNnaWQgIlB1cmdpbmcgY29uZmlndXJhdGlvbiBmaWxlcyBmb3IgJXMgLi4uXG4iCittc2dzdHIgIsSQYW5nIHThuql5IGPDoWMgdOG6rXAgdGluIGPhuqV1IGjDrG5oIGNobyAlcyAuLi5cbiIKKworIzogc3JjL3JlbW92ZS5jOjQ1OQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVtb3ZlIG9sZCBjb25maWcgZmlsZSBgJS4yNTBzJyAoPSBgJS4yNTBzJykiCittc2dzdHIgImtow7RuZyB0aOG7gyBn4buhIGLhu48gdOG6rXAgdGluIGPhuqV1IGjDrG5oIGPFqSDCqyAlLjI1MHMgwrsgKD0gwqsgJS4yNTBzIMK7KSIKKworIzogc3JjL3JlbW92ZS5jOjQ3NAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVhZCBjb25maWcgZmlsZSBkaXIgYCUuMjUwcycgKGZyb20gYCUuMjUwcycpIgorbXNnc3RyICJraMO0bmcgdGjhu4MgxJHhu41jIHRoxrAgbeG7pWMgdOG6rXAgdGluIGPhuqV1IGjDrG5oIMKrICUuMjUwcyDCuyAodOG7qyDCqyAlLjI1MHMgwrspIgorCisjOiBzcmMvcmVtb3ZlLmM6NTEwCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZW1vdmUgb2xkIGJhY2t1cCBjb25maWcgZmlsZSBgJS4yNTBzJyAob2YgYCUuMjUwcycpIgorbXNnc3RyICIiCisia2jDtG5nIHRo4buDIGfhu6EgYuG7jyB04bqtcCB0aW4gY+G6pXUgaMOsbmggc2FvIGzGsHUgY8WpIMKrICUuMjUwcyDCuyAoY+G7p2EgwqsgJS4yNTBzIMK7KSIKKworIzogc3JjL3JlbW92ZS5jOjU2OAorbXNnaWQgImNhbm5vdCByZW1vdmUgb2xkIGZpbGVzIGxpc3QiCittc2dzdHIgImtow7RuZyB0aOG7gyBn4buhIGLhu48gZGFuaCBzw6FjaCBjw6FjIHThuq1wIHRpbiBjxakiCisKKyM6IHNyYy9yZW1vdmUuYzo1NzQKK21zZ2lkICJjYW4ndCByZW1vdmUgb2xkIHBvc3RybSBzY3JpcHQiCittc2dzdHIgImtow7RuZyB0aOG7gyBn4buhIGLhu48gdsSDbiBs4buHbmggcG9zdHJtIChzYXUga2hpIGfhu6EgYuG7jykgY8WpIgorCisjOiBzcmMvc2VsZWN0LmM6MTE1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW9mIGluIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICJn4bq3cCBr4bq/dCB0aMO6YyB04bqtcCB0aW4gYuG6pXQgdGjGsOG7nW5nIHRyb25nIHTDqm4gZ8OzaSB0csOqbiBkw7JuZyAlZCIKKworIzogc3JjL3NlbGVjdC5jOjExNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBsaW5lIGluIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICJn4bq3cCBr4bq/dCB0aMO6YyBkw7JuZyBi4bqldCB0aMaw4budbmcgdHJvbmcgdMOqbiBnw7NpIHRyw6puIGTDsm5nICVkIgorCisjOiBzcmMvc2VsZWN0LmM6MTIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW9mIGFmdGVyIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICJn4bq3cCBr4bq/dCB0aMO6YyB04bqtcCB0aW4gYuG6pXQgdGjGsOG7nW5nIHNhdSB0w6puIGfDs2kgdHLDqm4gZMOybmcgJWQiCisKKyM6IHNyYy9zZWxlY3QuYzoxMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgbGluZSBhZnRlciBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZCIKK21zZ3N0ciAiZ+G6t3Aga+G6v3QgdGjDumMgZMOybmcgYuG6pXQgdGjGsOG7nW5nIHNhdSB0w6puIGfDs2kgdHLDqm4gZMOybmcgJWQiCisKKyM6IHNyYy9zZWxlY3QuYzoxMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBkYXRhIGFmdGVyIHBhY2thZ2UgYW5kIHNlbGVjdGlvbiBhdCBsaW5lICVkIgorbXNnc3RyICJn4bq3cCBk4buvIGxp4buHdSBi4bqldCB0aMaw4budbmcgc2F1IGfDs2kgdsOgIHbDuW5nIGNo4buNbiB0csOqbiBkw7JuZyAlZCIKKworIzogc3JjL3NlbGVjdC5jOjEzOQorIywgYy1mb3JtYXQKK21zZ2lkICJpbGxlZ2FsIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkOiAlLjI1MHMiCittc2dzdHIgImfhurdwIHTDqm4gZ8OzaSBraMO0bmcgaOG7o3AgbOG7hyB0csOqbiBkw7JuZyAlZDogJS4yNTBzIgorCisjOiBzcmMvc2VsZWN0LmM6MTQzCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gd2FudGVkIHN0YXR1cyBhdCBsaW5lICVkOiAlLjI1MHMiCittc2dzdHIgInRy4bqhbmcgdGjDoWkgbW9uZyBtdeG7kW4ga2jDtG5nIHLDtSB0csOqbiBkw7JuZyAlZDogJS4yNTBzIgorCisjOiBzcmMvc2VsZWN0LmM6MTQ5Cittc2dpZCAicmVhZCBlcnJvciBvbiBzdGFuZGFyZCBpbnB1dCIKK21zZ3N0ciAibOG7l2kgxJHhu41jIHRyw6puIHRoaeG6v3QgYuG7iyBuaOG6rXAgY2h14bqpbiIKKworIzogc3JjL3N0YXRjbWQuYzo1MgorIywgZnV6enkKKyN8IG1zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IHF1ZXJ5aW5nIHBhY2thZ2VzLiIKK21zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IG92ZXJyaWRpbmcgZmlsZSBzdGF0IGluZm9ybWF0aW9uLiIKK21zZ3N0ciAiIgorIkjDo3kgc+G7rSBk4bulbmcgdHXhu7MgY2jhu41uIHRy4bujIGdpw7pwIMKrIC0taGVscCDCuyDEkeG7gyB0w6xtIHRy4bujIGdpw7pwIHbhu4EgY2jhu6ljIG7Eg25nIHRydXkgIgorInbhuqVuIGfDs2kuIgorCisjOiBzcmMvc3RhdGNtZC5jOjYxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsIDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDYtMjAwOSBHdWlsbGVtIEpvdmVyLlxuIgorbXNnc3RyICIiCisiVMOhYyBxdXnhu4FuIMKpIG7Eg20gMjAwMCwgMjAwMSBj4bunYSBXaWNoZXJ0IEFra2VybWFuXG4iCisiVMOhYyBxdXnhu4FuIMKpIG7Eg20gMjAwNi0yMDA5IGPhu6dhIEd1aWxsZW0gSm92ZXIuXG4iCisKKyM6IHNyYy9zdGF0Y21kLmM6ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLS1hZGQgPG93bmVyPiA8Z3JvdXA+IDxtb2RlPiA8ZmlsZT5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBhZGQgYSBuZXcgZW50cnkgaW50byB0aGUgZGF0YWJhc2UuXG4iCisiICAtLXJlbW92ZSA8ZmlsZT4gICAgICAgICAgcmVtb3ZlIGZpbGUgZnJvbSB0aGUgZGF0YWJhc2UuXG4iCisiICAtLWxpc3QgWzxnbG9iLXBhdHRlcm4+XSAgbGlzdCBjdXJyZW50IG92ZXJyaWRlcyBpbiB0aGUgZGF0YWJhc2UuXG4iCisiXG4iCittc2dzdHIgIiIKKyJM4buHbmg6XG4iCisiICAtLWFkZCA8Y2jhu6dfc+G7n19o4buvdT4gPG5ow7NtPiA8Y2jhur9fxJHhu5k+IDx04buHcD5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICB0aMOqbSB2w6BvIGPGoSBz4bufIGThu68gbGnhu4d1IG3hu5l0IG3hu6VjIG5o4bqtcCBt4bubaVxuIgorIiAgLS1yZW1vdmUgPHThu4dwPiAgICAgICAgICBn4buhIGLhu48ga2jhu49pIGPGoSBz4bufIGThu68gbGnhu4d1IHThuq1wIHRpbiBuw6B5XG4iCisiICAtLWxpc3QgWzxt4bqrdV9nbG9iPl0gICAgbGnhu4d0IGvDqiBuaOG7r25nIHPhu7EgxJHDqCBsw6puIGhp4buHbiB0aOG7nWkgdHJvbmcgY8ahIHPhu58gZOG7ryAiCisibGnhu4d1XG4iCisiXG4iCisKKyM6IHNyYy9zdGF0Y21kLmM6ODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgc2V0IHRoZSBkaXJlY3Rvcnkgd2l0aCB0aGUgc3RhdG92ZXJyaWRlIGZpbGUuXG4iCisiICAtLXVwZGF0ZSAgICAgICAgICAgICAgICAgaW1tZWRpYXRlbHkgdXBkYXRlIGZpbGUgcGVybWlzc2lvbnMuXG4iCisiICAtLWZvcmNlICAgICAgICAgICAgICAgICAgZm9yY2UgYW4gYWN0aW9uIGV2ZW4gaWYgYSBzYW5pdHkgY2hlY2sgZmFpbHMuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgcXVpZXQgb3BlcmF0aW9uLCBtaW5pbWFsIG91dHB1dC5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCittc2dzdHIgIiIKKyJUdeG7syBjaOG7jW46XG4iCisiICAtLWFkbWluZGlyIDx0aMawX23hu6VjPiAgIGzhuq1wIHRoxrAgbeG7pWMgZMO5bmcgdOG6rXAgdGluIHN0YXRvdmVycmlkZS5cbiIKKyIgIC0tdXBkYXRlICAgICAgICAgICAgICAgICBuZ2F5IGzhuq1wIHThu6ljIGPhuq1wIG5o4bqtdCBjw6FjIHF1eeG7gW4gaOG6oW4gdOG6rXAgdGluLlxuIgorIiAgLS1mb3JjZSAgICAgIMOpcCBideG7mWMgaMOgbmggxJHhu5luZyDEkcOzLCBuZ2F5IGPhuqMgbuG6v3UgYuG7iyBzYWkga2nhu4NtIHRyYSBz4buxIMSRw7puZyAiCisibeG7sWMuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgY2jhuqF5IGltLCBraMO0bmcgeHXhuqV0IG5oaeG7gXUuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgaGnhu4NuIHRo4buLIHRy4bujIGdpw7pwIG7DoHkuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgaGnhu4NuIHRo4buLIHPhu5EgdGjhu6kgdOG7sSBwaGnDqm4gYuG6o24uXG4iCisiXG4iCisKKyM6IHNyYy9zdGF0Y21kLmM6MTE2Cittc2dpZCAic3RyaXBwaW5nIHRyYWlsaW5nIC8iCittc2dzdHIgIsSRYW5nIHTGsOG7m2MgY8OhYyBk4bqldSB4dXnhu4djIC8gdGhlbyBzYXUiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjA3Cittc2dpZCAiY2Fubm90IG9wZW4gbmV3IHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJraMO0bmcgdGjhu4MgbeG7nyB04bqtcCB0aW4gc3RhdG92ZXJyaWRlIG3hu5tpIgorCisjOiBzcmMvc3RhdGNtZC5jOjIyMgorbXNnaWQgImVycm9yIHJlbW92aW5nIHN0YXRvdmVycmlkZS1vbGQiCittc2dzdHIgImfhurdwIGzhu5dpIGtoaSBn4buhIGLhu48gwqsgc3RhdG92ZXJyaWRlLW9sZCDCuyIKKworIzogc3JjL3N0YXRjbWQuYzoyMjQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBuZXcgc3RhdG92ZXJyaWRlLW9sZCIKK21zZ3N0ciAiZ+G6t3AgbOG7l2kga2hpIHThuqFvIMKrIHN0YXRvdmVycmlkZS1vbGQgwrsgbeG7m2kiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjI2Cittc2dpZCAiZXJyb3IgaW5zdGFsbGluZyBuZXcgc3RhdG92ZXJyaWRlIgorbXNnc3RyICJn4bq3cCBs4buXaSBraGkgY8OgaSDEkeG6t3Qgwqsgc3RhdG92ZXJyaWRlIMK7IG3hu5tpIgorCisjOiBzcmMvc3RhdGNtZC5jOjI0NgorbXNnaWQgIi0tYWRkIG5lZWRzIGZvdXIgYXJndW1lbnRzIgorbXNnc3RyICLCqyAtLWFkZCDCuyB5w6p1IGPhuqd1IDQgxJHhu5FpIHPhu5EiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjU2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJBbiBvdmVycmlkZSBmb3IgJyVzJyBhbHJlYWR5IGV4aXN0cywgYnV0IC0tZm9yY2Ugc3BlY2lmaWVkIHNvIHdpbGwgYmUgIgorImlnbm9yZWQuIgorbXNnc3RyICIiCisixJDDoyBjw7MgbeG7mXQgc+G7sSBnaGkgxJHDqCBjaG8gwqsgJXMgwrsgbcOgIGLhu4sgYuG7jyBxdWEgdsOsIMKrIC0tZm9yY2UgwrsgKMOpcCBideG7mWMpIMSRxrDhu6NjICIKKyJ4w6FjIMSR4buLbmguIgorCisjOiBzcmMvc3RhdGNtZC5jOjI2MAorIywgYy1mb3JtYXQKK21zZ2lkICJBbiBvdmVycmlkZSBmb3IgJyVzJyBhbHJlYWR5IGV4aXN0cywgYWJvcnRpbmcuIgorbXNnc3RyICLEkMOjIGPDsyBt4buZdCBz4buxIGdoaSDEkcOoIGNobyDCqyAlcyDCuyBuw6puIGjhu6d5IGLhu48uIgorCisjOiBzcmMvc3RhdGNtZC5jOjI3MgorIywgYy1mb3JtYXQKK21zZ2lkICItLXVwZGF0ZSBnaXZlbiBidXQgJXMgZG9lcyBub3QgZXhpc3QiCittc2dzdHIgInTDuXkgY2jhu41uIMKrIC0tdXBkYXRlIMK7IChj4bqtcCBuaOG6rXQpIMSRxrBhIHJhIG5oxrBuZyAlcyBraMO0bmcgdOG7k24gdOG6oWkiCisKKyM6IHNyYy9zdGF0Y21kLmM6Mjk2Cittc2dpZCAiTm8gb3ZlcnJpZGUgcHJlc2VudC4iCittc2dzdHIgIktow7RuZyBjw7Mgc+G7sSDEkcOoLiIKKworIzogc3JjL3N0YXRjbWQuYzozMDQKK21zZ2lkICItLXVwZGF0ZSBpcyB1c2VsZXNzIGZvciAtLXJlbW92ZSIKK21zZ3N0ciAidMO5eSBjaOG7jW4gwqsgLS11cGRhdGUgwrsgKGPhuq1wIG5o4bqtdCkgdsO0IMOtY2ggY2hvIMKrIC0tcmVtb3ZlIMK7IChn4buhIGLhu48pIgorCisjOiBzcmMvc3RhdGRiLmM6NTkKK21zZ2lkICJzeW50YXggZXJyb3I6IGludmFsaWQgdWlkIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJs4buXaSBjw7ogcGjDoXA6IGfhurdwIFVJRCBzYWkgdHJvbmcgdOG6rXAgdGluIHN0YXRlb3ZlcnJpZGUiCisKKyM6IHNyYy9zdGF0ZGIuYzo2NAorIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3I6IHVua25vd24gdXNlciAnJXMnIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICIiCisibOG7l2kgY8O6IHBow6FwOiBn4bq3cCBuZ8aw4budaSBkw7luZyBraMO0bmcgcsO1IMKrICVzIMK7IHRyb25nIHThuq1wIHRpbiBzdGF0ZW92ZXJyaWRlIgorCisjOiBzcmMvc3RhdGRiLmM6ODMKK21zZ2lkICJzeW50YXggZXJyb3I6IGludmFsaWQgZ2lkIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJs4buXaSBjw7ogcGjDoXA6IGfhurdwIEdJRCBzYWkgdHJvbmcgdOG6rXAgdGluIHN0YXRlb3ZlcnJpZGUiCisKKyM6IHNyYy9zdGF0ZGIuYzo4OAorIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3I6IHVua25vd24gZ3JvdXAgJyVzJyBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAibOG7l2kgY8O6IHBow6FwOiBn4bq3cCBuaMOzbSBraMO0bmcgcsO1IMKrICVzIMK7IHRyb25nIHThuq1wIHRpbiBzdGF0ZW92ZXJyaWRlIgorCisjOiBzcmMvc3RhdGRiLmM6MTA0Cittc2dpZCAic3ludGF4IGVycm9yOiBpbnZhbGlkIG1vZGUgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgImzhu5dpIGPDuiBwaMOhcDogZ+G6t3AgdHLhuqFuZyB0aMOhaSBzYWkgdHJvbmcgdOG6rXAgdGluIHN0YXRlb3ZlcnJpZGUiCisKKyM6IHNyYy9zdGF0ZGIuYzoxMjcKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAibOG7l2kgbeG7nyB04bqtcCB0aW4gc3RhdG92ZXJyaWRlIgorCisjOiBzcmMvc3RhdGRiLmM6MTM0Cittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJs4buXaSBmc3RhdCB04bqtcCB0aW4gc3RhdG92ZXJyaWRlIgorCisjOiBzcmMvc3RhdGRiLmM6MTM3Cittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IHByZXZpb3VzIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJs4buXaSBmc3RhdCB04bqtcCB0aW4gc3RhdG92ZXJyaWRlIHRyxrDhu5tjIgorCisjOiBzcmMvc3RhdGRiLmM6MTYyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJzdGF0b3ZlcnJpZGUgZmlsZSBgJS4yNTBzJyIKK21zZ2lkICJyZWFkaW5nIHN0YXRvdmVycmlkZSBmaWxlICclLjI1MHMnIgorbXNnc3RyICJ04bqtcCB0aW4gc3RhdG92ZXJyaWRlIMKrICUuMjUwcyDCuyIKKworIzogc3JjL3N0YXRkYi5jOjE2OQorbXNnaWQgInN0YXRvdmVycmlkZSBmaWxlIGlzIG1pc3NpbmcgZmluYWwgbmV3bGluZSIKK21zZ3N0ciAidOG6rXAgdGluIHN0YXRvdmVycmlkZSBjw7JuIHRoaeG6v3Uga8O9IHThu7EgZMOybmcgbeG7m2kgY3Xhu5FpIGPDuW5nIgorCisjOiBzcmMvc3RhdGRiLmM6MTczCittc2dpZCAic3RhdG92ZXJyaWRlIGZpbGUgY29udGFpbnMgZW1wdHkgbGluZSIKK21zZ3N0ciAidOG6rXAgdGluIHN0YXRvdmVycmlkZSBjaOG7qWEgZMOybmcgdHLhu5FuZyIKKworIzogc3JjL3N0YXRkYi5jOjE3OCBzcmMvc3RhdGRiLmM6MTkwIHNyYy9zdGF0ZGIuYzoyMDIKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgImfhurdwIGzhu5dpIGPDuiBwaMOhcCB0cm9uZyB04bqtcCB0aW4gc3RhdGVvdmVycmlkZSIKKworIzogc3JjL3N0YXRkYi5jOjE4NiBzcmMvc3RhdGRiLmM6MTk4IHNyYy9zdGF0ZGIuYzoyMTAKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBsaW5lIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICJn4bq3cCBr4bq/dCB0aMO6YyBkw7JuZyBi4bqldCB0aMaw4budbmcgdHJvbmcgdOG6rXAgdGluIHN0YXRlb3ZlcnJpZGUiCisKKyM6IHNyYy9zdGF0ZGIuYzoyMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAibXVsdGlwbGUgc3RhdHVzb3ZlcnJpZGVzIHByZXNlbnQgZm9yIGZpbGUgJyUuMjUwcyciCittc2dzdHIgIiIKKyJjw7Mgbmhp4buBdSBzdGF0dXNvdmVycmlkZSAoc+G7sSBnaGkgxJHDqCBsw6puIHRy4bqhbmcgdGjDoWkpIGNobyB04bqtcCB0aW4gwqsgJS4yNTBzIMK7IgorCisjOiBzcmMvdHJpZ2NtZC5jOjQ2Cittc2dpZCAiVHlwZSBkcGtnLXRyaWdnZXIgLS1oZWxwIGZvciBoZWxwIGFib3V0IHRoaXMgdXRpbGl0eS4iCittc2dzdHIgIkfDtSDCqyBkcGtnLXRyaWdnZXIgLS1oZWxwIMK7IMSR4buDIHhlbSB0cuG7oyBnacO6cCB24buBIHRp4buHbiDDrWNoIG7DoHkuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjUxCisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiAlcyBwYWNrYWdlIHRyaWdnZXIgdXRpbGl0eSB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICJUaeG7h24gw61jaCBnw6J5IG7Dqm4gZ8OzaSAlcyBj4bunYSBEZWJpYW4sIHBoacOqbiBi4bqjbiAlcy5cbiIKKworIzogc3JjL3RyaWdjbWQuYzo2NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9ucz4gLi4uXSA8dHJpZ2dlci1uYW1lPlxuIgorIiAgICAgICAlcyBbPG9wdGlvbnM+IC4uLl0gPGNvbW1hbmQ+XG4iCisiXG4iCittc2dzdHIgIiIKKyJT4butIGThu6VuZzogJXMgWzx0w7l5X2No4buNbj4gLi4uXSA8dMOqbl9i4buZX2fDonlfbsOqbj5cbiIKKyIgICAgICAgJXMgWzx0w7l5X2No4buNbj4gLi4uXSA8Y8OidV9s4buHbmg+XG4iCisiXG4iCisKKyM6IHNyYy90cmlnY21kLmM6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLS1jaGVjay1zdXBwb3J0ZWQgICAgICAgICAgICAgICAgQ2hlY2sgaWYgdGhlIHJ1bm5pbmcgZHBrZyBzdXBwb3J0cyAiCisidHJpZ2dlcnMuXG4iCisiXG4iCittc2dzdHIgIiIKKyJDw6J1IGzhu4duaDpcbiIKKyIgIC0tY2hlY2stc3VwcG9ydGVkICAgS2nhu4NtIHRyYSBu4bq/dSBkcGtnIMSRYW5nIGNo4bqheSBjw7MgaOG7lyB0cuG7oyBi4buZIGfDonkgbsOqbiAiCisia2jDtG5nLlxuIgorIlxuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjgyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hZG1pbmRpcj08ZGlyZWN0b3J5PiAgICAgICAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMuXG4iCisiICAtLWJ5LXBhY2thZ2U9PHBhY2thZ2U+ICAgICAgICAgICBPdmVycmlkZSB0cmlnZ2VyIGF3YWl0ZXIgKG5vcm1hbGx5IHNldFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBieSBkcGtnKS5cbiIKKyIgIC0tbm8tYXdhaXQgICAgICAgICAgICAgICAgICAgICAgIE5vIHBhY2thZ2UgbmVlZHMgdG8gYXdhaXQgdGhlICIKKyJwcm9jZXNzaW5nLlxuIgorIiAgLS1uby1hY3QgICAgICAgICAgICAgICAgICAgICAgICAgSnVzdCB0ZXN0IC0gZG9uJ3QgYWN0dWFsbHkgY2hhbmdlICIKKyJhbnl0aGluZy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIlR14buzIGNo4buNbjpcbiIKKyIgIC0tYWRtaW5kaXI9PHRoxrBfbeG7pWM+ICAgICAgICAgICBEw7luZyB0aMawIG3hu6VjIG7DoHkgdGhheSBjaG8gJXMuXG4iCisiICAtLWJ5LXBhY2thZ2U9PHTDqm5fZ8OzaT4gICAgICAgIEPDsyBxdXnhu4FuIGNhbyBoxqFuIHPhu7EgxJHhu6NpIGLhu5kgZ8OieSBuw6puXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGLDrG5oIHRoxrDhu51uZyDEkcaw4bujYyBkcGtnICIKKyJs4bqtcCkuXG4iCisiICAtLW5vLWF3YWl0ICAgICAgICAgICAgICAgICAgICAgICBLaMO0bmcgY8OzIGfDs2kgbsOgbyBj4bqnbiDEkeG7o2kgeOG7rSBsw70uXG4iCisiICAtLW5vLWFjdCAgICAgICAgICAgICAgICAgICAgICAgICBDaOG7iSB0aOG7rSwga2jDtG5nIHBo4bqjaSB0aOG6rXQgdGhheSDEkeG7lWkgZ8OsLlxuIgorIlxuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogdHJpZ2dlcnMgZGF0YSBkaXJlY3Rvcnkgbm90IHlldCBjcmVhdGVkXG4iCittc2dzdHIgIiVzOiBjaMawYSB04bqhbyB0aMawIG3hu6VjIGThu68gbGnhu4d1IGLhu5kgZ8OieSBuw6puXG4iCisKKyM6IHNyYy90cmlnY21kLmM6MTU2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB0cmlnZ2VyIHJlY29yZHMgbm90IHlldCBpbiBleGlzdGVuY2VcbiIKK21zZ3N0ciAiJXM6IG3hu6VjIGdoaSBi4buZIGfDonkgbsOqbiBjaMawYSB04buTbiB04bqhaVxuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIwNQorbXNnaWQgInRha2VzIG9uZSBhcmd1bWVudCwgdGhlIHRyaWdnZXIgbmFtZSIKK21zZ3N0ciAiY2jhuqVwIG5o4bqtbiAxIMSR4buRaSBz4buRLCB0w6puIGLhu5kgZ8OieSBuw6puIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIxMAorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiZHBrZy10cmlnZ2VyIG11c3QgYmUgY2FsbGVkIGZyb20gYSBtYWludGFpbmVyIHNjcmlwdCAob3Igd2l0aCBhIC0tYnktIgorI3wgInBhY2thZ2Ugb3B0aW9uKSIKK21zZ2lkICJtdXN0IGJlIGNhbGxlZCBmcm9tIGEgbWFpbnRhaW5lciBzY3JpcHQgKG9yIHdpdGggYSAtLWJ5LXBhY2thZ2Ugb3B0aW9uKSIKK21zZ3N0ciAiIgorIsKrIGRwa2ctdHJpZ2dlciDCuyBwaOG6o2kgxJHGsOG7o2MgZ+G7jWkgdOG7qyBt4buZdCB2xINuIGzhu4duaCBkdXkgdHLDrCAoaG/hurdjIHbhu5tpIHTDuXkgY2jhu41uIMKrIC0iCisiYnktcGFja2FnZSDCuykiCisKKyM6IHNyYy90cmlnY21kLmM6MjE1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJkcGtnLXRyaWdnZXI6IGlsbGVnYWwgYXdhaXRlZCBwYWNrYWdlIG5hbWUgYCUuMjUwcyc6ICUuMjUwcyIKK21zZ2lkICJpbGxlZ2FsIGF3YWl0ZWQgcGFja2FnZSBuYW1lICclLjI1MHMnOiAlLjI1MHMiCittc2dzdHIgImRwa2ctdHJpZ2dlcjogdMOqbiBnw7NpIG1vbmcgxJHhu6NpIGPhuqVtIMKrICUuMjUwcyDCuzogJS4yNTBzIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIyMQorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHRyaWdnZXIgbmFtZSBgJS4yNTBzJzogJS4yNTBzIgorbXNnc3RyICJ0w6puIGLhu5kgZ8OieSBuw6puIGtow7RuZyBo4bujcCBs4buHIMKrICUuMjUwcyDCuzogJS4yNTBzIgorCisjOiBzcmMvdHJpZ3Byb2MuYzoyNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBjeWNsZSBmb3VuZCB3aGlsZSBwcm9jZXNzaW5nIHRyaWdnZXJzOlxuIgorIiBjaGFpbiBvZiBwYWNrYWdlcyB3aG9zZSB0cmlnZ2VycyBhcmUgb3IgbWF5IGJlIHJlc3BvbnNpYmxlOlxuIgorbXNnc3RyICIiCisiJXM6IHBow6F0IGhp4buHbiBjaHUga8O9IHRyb25nIGtoaSB44butIGzDvSBi4buZIGfDonkgbsOqbjpcbiIKKyIgZMOjeSBjw6FjIGfDs2kgY8OzIGLhu5kgZ8OieSBuw6puIGPDsyB0aOG7gyB04bqhbyB24bqlbiDEkeG7gSBuw6B5OlxuIgorCisjOiBzcmMvdHJpZ3Byb2MuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiBwYWNrYWdlcycgcGVuZGluZyB0cmlnZ2VycyB3aGljaCBhcmUgb3IgbWF5IGJlIHVucmVzb2x2YWJsZTpcbiIKK21zZ3N0ciAiIgorIlxuIgorIiBjw6FjIGLhu5kgZ8OieSBuw6puIGLhu4sgaG/Do24gY+G7p2EgZ8OzaSBtw6AgY8OzIHRo4buDIGtow7RuZyB0aOG7gyBnaeG6o2kgcXV54bq/dDpcbiIKKworIzogc3JjL3RyaWdwcm9jLmM6MjgxCittc2dpZCAidHJpZ2dlcnMgbG9vcGluZywgYWJhbmRvbmVkIgorbXNnc3RyICJi4buZIGfDonkgbsOqbiDEkWkgdsOybmcgbOG6t3AgbsOqbiBi4buLIGjhu6d5IgorCisjOiBzcmMvdHJpZ3Byb2MuYzozMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHJvY2Vzc2luZyB0cmlnZ2VycyBmb3IgJXMgLi4uXG4iCittc2dzdHIgIsSQYW5nIHjhu60gbMO9IGPDoWMgYuG7mSBnw6J5IG7Dqm4gxJHhu5FpIHbhu5tpICVzIC4uLlxuIgorCisjOiBzcmMvdXBkYXRlLmM6NTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIi0tJXMgbmVlZHMgZXhhY3RseSBvbmUgUGFja2FnZXMgZmlsZSBhcmd1bWVudCIKK21zZ2lkICItLSVzIG5lZWRzIGV4YWN0bHkgb25lIFBhY2thZ2VzLWZpbGUgYXJndW1lbnQiCittc2dzdHIgIsKrIC0tJXMgwrsgY+G6p24gY2jDrW5oIHjDoWMgbeG7mXQgxJHhu5FpIHPhu5Ega2nhu4N1IHThuq1wIHRpbiBQYWNrYWdlcyAoR8OzaSkiCisKKyM6IHNyYy91cGRhdGUuYzo2MgorbXNnaWQgInVuYWJsZSB0byBhY2Nlc3MgZHBrZyBzdGF0dXMgYXJlYSBmb3IgYnVsayBhdmFpbGFibGUgdXBkYXRlIgorbXNnc3RyICIiCisia2jDtG5nIHRo4buDIHRydXkgY+G6rXAgdsO5bmcgdHLhuqFuZyB0aMOhaSBkcGtnIGNobyB2aeG7h2MgY+G6rXAgbmjhuq10IHPhurVuIHPDoG5nIGjDoG5nIGxv4bqhdCIKKworIzogc3JjL3VwZGF0ZS5jOjY0Cittc2dpZCAiYnVsayBhdmFpbGFibGUgdXBkYXRlIHJlcXVpcmVzIHdyaXRlIGFjY2VzcyB0byBkcGtnIHN0YXR1cyBhcmVhIgorbXNnc3RyICIiCisidmnhu4djIGPhuq1wIG5o4bqtdCBz4bq1biBzw6BuZyBow6BuZyBsb+G6oXQgY+G6p24gdGhp4bq/dCBxdXnhu4FuIGdoaSB2w6BvIHbDuW5nIHRy4bqhbmcgdGjDoWkgZHBrZyIKKworIzogc3JjL3VwZGF0ZS5jOjcxCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlcGxhY2luZyBhdmFpbGFibGUgcGFja2FnZXMgaW5mbywgdXNpbmcgJXMuXG4iCittc2dzdHIgIsSQYW5nIHRoYXkgdGjhur8gdGjDtG5nIHRpbiBnw7NpIHPhurVuIHPDoG5nLCBi4bqxbmcgJXMuXG4iCisKKyM6IHNyYy91cGRhdGUuYzo3NAorIywgYy1mb3JtYXQKK21zZ2lkICJVcGRhdGluZyBhdmFpbGFibGUgcGFja2FnZXMgaW5mbywgdXNpbmcgJXMuXG4iCittc2dzdHIgIsSQYW5nIGPhuq1wIG5o4bqtdCB0aMO0bmcgdGluIGfDs2kgc+G6tW4gc8OgbmcsIGLhurFuZyAlcy5cbiIKKworIzogc3JjL3VwZGF0ZS5jOjEwMQorIywgYy1mb3JtYXQKK21zZ2lkICJJbmZvcm1hdGlvbiBhYm91dCAlZCBwYWNrYWdlIHdhcyB1cGRhdGVkLlxuIgorbXNnaWRfcGx1cmFsICJJbmZvcm1hdGlvbiBhYm91dCAlZCBwYWNrYWdlcyB3YXMgdXBkYXRlZC5cbiIKK21zZ3N0clswXSAiVGjDtG5nIHRpbiB24buBICVkIGfDs2kgxJHDoyDEkcaw4bujYyBj4bqtcCBuaOG6rXQuXG4iCisKKyM6IHNyYy91cGRhdGUuYzoxMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm9ic29sZXRlICctLSVzJyBvcHRpb24sIHVuYXZhaWxhYmxlIHBhY2thZ2VzIGFyZSBhdXRvbWF0aWNhbGx5IGNsZWFuZWQgdXAuIgorbXNnc3RyICIiCisiZ+G6t3AgdHXhu7MgY2jhu41uIMKrIC0tJXMgwrsgcXXDoSBjxaksIGPDoWMgZ8OzaSBraMO0bmcgc+G6tW4gc8OgbmcgxJHGsOG7o2MgdOG7sSDEkeG7mW5nIGzDoG0gc+G6oWNoLiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBuYW1lICclLjUwcy4uLicgaXMgdG9vIGxvbmciCittc2dzdHIgInTDqm4gdOG6rXAgdGluIMKrICUuNTBzLi4gwrsgcXXDoSBkw6BpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjEyOQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBmaWxlIG5hbWUgJyUuMjUwcyciCittc2dzdHIgImtow7RuZyB0aOG7gyBs4bqleSB0cuG6oW5nIHRow6FpIHbhu4EgdMOqbiB04bqtcCB0aW4gwqsgJS4yNTBzIMK7IgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjE4OQorbXNnaWQgInVuYWJsZSB0byBzdGF0IGNvbnRyb2wgZGlyZWN0b3J5IgorbXNnc3RyICJraMO0bmcgdGjhu4MgbOG6pXkgdHLhuqFuZyB0aMOhaSB24buBIHRoxrAgbeG7pWMgxJFp4buBdSBraGnhu4NuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjE5MQorbXNnaWQgImNvbnRyb2wgZGlyZWN0b3J5IGlzIG5vdCBhIGRpcmVjdG9yeSIKK21zZ3N0ciAic2FpIGzhuq1wIHRoxrAgbeG7pWMgxJFp4buBdSBraGnhu4NuIChraMO0bmcgcGjhuqNpIGzDoCBt4buZdCB0aMawIG3hu6VjKSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoxOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29udHJvbCBkaXJlY3RvcnkgaGFzIGJhZCBwZXJtaXNzaW9ucyAlMDNsbyAobXVzdCBiZSA+PTA3NTUgYW5kIDw9MDc3NSkiCittc2dzdHIgInRoxrAgbeG7pWMgxJFp4buBdSBraGnhu4NuIGPDsyBxdXnhu4FuIGjhuqFuIHNhaSAlMDNsbyAocGjhuqNpIGzDoCDiiaUwNzU1IHbDoCDiiaQwNzc1KSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAibWFpbnRhaW5lciBzY3JpcHQgYCUuNTBzJyBpcyBub3QgYSBwbGFpbiBmaWxlIG9yIHN5bWxpbmsiCittc2dzdHIgIiIKKyJ2xINuIGzhu4duaCBuaMOgIGR1eSB0csOsIMKrICUuNTBzIMK7IGtow7RuZyBwaOG6o2kgbMOgIHThuq1wIHRpbiBjaHXhuqluIGhheSBsacOqbiBr4bq/dCAiCisidMaw4bujbmcgdHLGsG5nIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjIwNworIywgYy1mb3JtYXQKK21zZ2lkICIiCisibWFpbnRhaW5lciBzY3JpcHQgYCUuNTBzJyBoYXMgYmFkIHBlcm1pc3Npb25zICUwM2xvIChtdXN0IGJlID49MDU1NSBhbmQgIgorIjw9MDc3NSkiCittc2dzdHIgIiIKKyJ2xINuIGzhu4duaCBuaMOgIGR1eSB0csOsIMKrICUuNTBzIMK7IGPDsyBxdXnhu4FuIGjhuqFuIHNhaSAlMDNsbyAocGjhuqNpIGzDoCDiiaUwNzU1IHbDoCAiCisi4omkMDc3NSkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjExCisjLCBjLWZvcm1hdAorbXNnaWQgIm1haW50YWluZXIgc2NyaXB0IGAlLjUwcycgaXMgbm90IHN0YXR0YWJsZSIKK21zZ3N0ciAiIgorInbEg24gbOG7h25oIG5ow6AgZHV5IHRyw6wgwqsgJS41MHMgwrsga2jDtG5nIGPDsyBraOG6oyBuxINuZyBjdW5nIGPhuqVwIGPDoWMgdGjDtG5nIHRpbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyMzcKK21zZ2lkICJlcnJvciBvcGVuaW5nIGNvbmZmaWxlcyBmaWxlIgorbXNnc3RyICJn4bq3cCBs4buXaSBraGkgbeG7nyB04bqtcCB0aW4gY+G6pXUgaMOsbmgiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjQ2Cittc2dpZCAiZW1wdHkgc3RyaW5nIGZyb20gZmdldHMgcmVhZGluZyBjb25mZmlsZXMiCittc2dzdHIgImNodeG7l2kgcuG7l25nIHThu6sgZmdldHMgxJHhu41jIGPDoWMgdOG6rXAgdGluIGPhuqV1IGjDrG5oIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI1MQorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBuYW1lICclLjUwcy4uLicgaXMgdG9vIGxvbmcsIG9yIG1pc3NpbmcgZmluYWwgbmV3bGluZSIKK21zZ3N0ciAiIgorInTDqm4gdOG6rXAgdGluIGPhuqV1IGjDrG5oIMKrICUuNTBzLi4uIMK7IHF1w6EgZMOgaSwgaG/hurdjIG7DsyBjw7JuIHRoaeG6v3Uga8O9IHThu7EgZMOybmcgbeG7m2kgIgorImN14buRaSBjw7luZyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgZmlsZW5hbWUgJyVzJyBjb250YWlucyB0cmFpbGluZyB3aGl0ZSBzcGFjZXMiCittc2dzdHIgInTDqm4gdOG6rXAgdGluIGPhuqV1IGjDrG5oIMKrICVzIMK7IGNo4bupYSBk4bqldSBjw6FjaCB0aGVvIHNhdSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgYCUuMjUwcycgZG9lcyBub3QgYXBwZWFyIGluIHBhY2thZ2UiCittc2dzdHIgInThuq1wIHRpbiBj4bqldSBow6xuaCDCqyAlLjI1MHMgwrsga2jDtG5nIG7hurFtIHRyb25nIGfDs2kiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjY4CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIGAlLjI1MHMnIGlzIG5vdCBzdGF0dGFibGUiCittc2dzdHIgInThuq1wIHRpbiBj4bqldSBow6xuaCDCqyAlLjI1MHMgwrsga2jDtG5nIGPDsyBraOG6oyBuxINuZyBjdW5nIGPhuqVwIHRy4bqhbmcgdGjDoWkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjcwCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlICclcycgaXMgbm90IGEgcGxhaW4gZmlsZSIKK21zZ3N0ciAidOG6rXAgdGluIGPhuqV1IGjDrG5oIMKrICVzIMK7IGtow7RuZyBwaOG6o2kgbMOgIG3hu5l0IHThuq1wIHRpbiB0acOqdSBjaHXhuqluIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI3NAorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBuYW1lICclcycgaXMgZHVwbGljYXRlZCIKK21zZ3N0ciAidMOqbiB04bqtcCB0aW4gY+G6pXUgaMOsbmggwqsgJXMgwrsgYuG7iyBuaMOibiDEkcO0aSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyODcKK21zZ2lkICJlcnJvciByZWFkaW5nIGNvbmZmaWxlcyBmaWxlIgorbXNnc3RyICJn4bq3cCBs4buXaSBraGkgxJHhu41jIHThuq1wIHRpbiBj4bqldSBow6xuaCIKKworIzogZHBrZy1kZWIvYnVpbGQuYzozMzkKK21zZ2lkICJwYWNrYWdlIG5hbWUgaGFzIGNoYXJhY3RlcnMgdGhhdCBhcmVuJ3QgbG93ZXJjYXNlIGFscGhhbnVtcyBvciBgLSsuJyIKK21zZ3N0ciAiIgorInTDqm4gZ8OzaSBjaOG7qWEga8O9IHThu7Ega2jDtG5nIHBo4bqjaSBrw70gdOG7sSBjaOG7ryBz4buRIHZp4bq/dCB0aMaw4budbmcgaG/hurdjIGThuqV1IGPhu5luZywgZOG6pXUgIgorInRy4burIMKrIC0rIMK7LiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzozNDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBjb250YWlucyB1c2VyLWRlZmluZWQgUHJpb3JpdHkgdmFsdWUgJyVzJyIKK21zZ3N0ciAiwqsgJXMgwrsgY2jhu6lhIGdpw6EgdHLhu4sgxq91IHRpw6puIMKrICVzIMK7IMSRxrDhu6NjIG5nxrDhu51pIGTDuW5nIHjDoWMgxJHhu4tuaCIKKworIzogZHBrZy1kZWIvYnVpbGQuYzozNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBjb250YWlucyB1c2VyLWRlZmluZWQgZmllbGQgJyVzJyIKK21zZ3N0ciAiwqsgJXMgwrsgY2jhu6lhIHRyxrDhu51uZyDCqyAlcyDCuyDEkcaw4bujYyBuZ8aw4budaSBkw7luZyB4w6FjIMSR4buLbmgiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MzU4CisjLCBjLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nICVkIHdhcm5pbmcgYWJvdXQgdGhlIGNvbnRyb2wgZmlsZShzKVxuIgorbXNnaWRfcGx1cmFsICJpZ25vcmluZyAlZCB3YXJuaW5ncyBhYm91dCB0aGUgY29udHJvbCBmaWxlKHMpXG4iCittc2dzdHJbMF0gIsSRYW5nIGzhu50gJWQgY+G6o25oIGLDoW8gduG7gSAoY8OhYykgdOG6rXAgdGluIMSRaeG7gXUga2hp4buDblxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQwMyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQyOQorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhIDxkaXJlY3Rvcnk+IGFyZ3VtZW50IgorbXNnc3RyICLCqyAtLSVzIMK7IGPhuqduIG3hu5l0IMSR4buRaSBz4buRIGtp4buDdSA8dGjGsF9t4bulYz4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDA5Cittc2dpZCAiLS1idWlsZCB0YWtlcyBhdCBtb3N0IHR3byBhcmd1bWVudHMiCittc2dzdHIgIsKrIC0tYnVpbGQgwrsgKHjDonkgZOG7sW5nKSBjaOG6pXAgbmjhuq1uIG5oaeG7gXUgbmjhuqV0IDIgxJHhu5FpIHPhu5EiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDEzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGVjayBmb3IgZXhpc3RlbmNlIG9mIGFyY2hpdmUgYCUuMjUwcyciCittc2dzdHIgImtow7RuZyB0aOG7gyBraeG7g20gdHJhIHPhu7EgdOG7k24gdOG6oWkgY+G7p2Ega2hvIGzGsHUgwqsgJS4yNTBzIMK7IgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQzMAorbXNnaWQgInRhcmdldCBpcyBkaXJlY3RvcnkgLSBjYW5ub3Qgc2tpcCBjb250cm9sIGZpbGUgY2hlY2siCittc2dzdHIgIsSRw61jaCBsw6AgdGjGsCBt4bulYyDigJQga2jDtG5nIHRo4buDIGLhu48gcXVhIHZp4buHYyBraeG7g20gdHJhIHThuq1wIHRpbiDEkWnhu4F1IGtoaeG7g24iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDMxCittc2dpZCAibm90IGNoZWNraW5nIGNvbnRlbnRzIG9mIGNvbnRyb2wgYXJlYS4iCittc2dzdHIgImtow7RuZyBwaOG6o2kga2nhu4NtIHRyYSBu4buZaSBkdW5nIGPhu6dhIHbDuW5nIMSRaeG7gXUga2hp4buDbi4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDMyCisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2ctZGViOiBidWlsZGluZyBhbiB1bmtub3duIHBhY2thZ2UgaW4gJyVzJy5cbiIKK21zZ3N0ciAiZHBrZy1kZWI6IMSRYW5nIHjDonkgZOG7sW5nIG3hu5l0IGfDs2kga2jDtG5nIHLDtSB0cm9uZyDCqyAlcyDCuy5cbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZy1kZWI6IGJ1aWxkaW5nIHBhY2thZ2UgYCVzJyBpbiBgJXMnLlxuIgorbXNnc3RyICJkcGtnLWRlYjogxJFhbmcgeMOieSBk4buxbmcgZ8OzaSDCqyAlcyDCuyB0cm9uZyDCqyAlcyDCuy5cbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0NjcgZHBrZy1kZWIvYnVpbGQuYzo1MjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byBtYWtlIHRtcGZpbGUgKGRhdGEpIgorbXNnaWQgImZhaWxlZCB0byBtYWtlIHRlbXBvcmFyeSBmaWxlICglcykiCittc2dzdHIgImzhu5dpIHThuqFvIHThuq1wIHRpbiB04bqhbSB0aOG7nWkgKGThu68gbGnhu4d1KSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0NjcgZHBrZy1kZWIvYnVpbGQuYzo0NzAgZHBrZy1kZWIvYnVpbGQuYzo0NzcKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDg1IGRwa2ctZGViL2J1aWxkLmM6NDk0IGRwa2ctZGViL2J1aWxkLmM6NDk5CisjLCBmdXp6eQorI3wgbXNnaWQgImNvbnRyb2wiCittc2dpZCAiY29udHJvbCBtZW1iZXIiCittc2dzdHIgIsSRaeG7gXUga2hp4buDbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0NzAgZHBrZy1kZWIvYnVpbGQuYzo1MjQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byB1bmxpbmsgdG1wZmlsZSAoZGF0YSksICVzIgorbXNnaWQgImZhaWxlZCB0byB1bmxpbmsgdGVtcG9yYXJ5IGZpbGUgKCVzKSwgJXMiCittc2dzdHIgImzhu5dpIGjhu6d5IGxpw6puIGvhur90IHThuq1wIHRpbiB04bqhbSB0aOG7nWkgKGThu68gbGnhu4d1KSwgJXMiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDg1IGRwa2ctZGViL2J1aWxkLmM6NTkzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gcmV3aW5kIHRtcGZpbGUgKGRhdGEpIgorbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdGVtcG9yYXJ5IGZpbGUgKCVzKSIKK21zZ3N0ciAibOG7l2kgdHVhIGzhuqFpIHThuq1wIHRpbiB04bqhbSB0aOG7nWkgKGThu68gbGnhu4d1KSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0OTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byBmc3RhdCBhciBtZW1iZXIgZmlsZSAoJXMpIgorbXNnaWQgImZhaWxlZCB0byBzdGF0IHRlbXBvcmFyeSBmaWxlICglcykiCittc2dzdHIgImzhu5dpIGzhuqV5IHRy4bqhbmcgdGjDoWkgduG7gSB04bqtcCB0aW4gYuG7mSBwaOG6rW4gYXIgKCVzKSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0OTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igd3JpdGluZyBgJXMnIgorbXNnc3RyICJs4buXaSBnaGkgwqsgJXMgwrsiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTIxIGRwa2ctZGViL2J1aWxkLmM6NTI0IGRwa2ctZGViL2J1aWxkLmM6NTQ2CisjOiBkcGtnLWRlYi9idWlsZC5jOjU3MiBkcGtnLWRlYi9idWlsZC5jOjU4MCBkcGtnLWRlYi9idWlsZC5jOjU5MworIywgZnV6enkKKyN8IG1zZ2lkICJiZXR3ZWVuIG1lbWJlcnMiCittc2dpZCAiZGF0YSBtZW1iZXIiCittc2dzdHIgImdp4buvYSBjw6FjIGLhu5kgcGjhuqFuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjU3MSBkcGtnLWRlYi9idWlsZC5jOjU4MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIHdyaXRlIGZpbGVuYW1lIHRvIHRhciBwaXBlIChkYXRhKSIKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgZmlsZW5hbWUgdG8gdGFyIHBpcGUgKCVzKSIKK21zZ3N0ciAibOG7l2kgZ2hpIHTDqm4gdOG6rXAgdGluIHThu5tpIMSRxrDhu51uZyDhu5FuZyBk4bqrbiB0YXIgKGThu68gbGnhu4d1KSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo1ODQKK21zZ2lkICI8Y29tcHJlc3M+IGZyb20gdGFyIC1jZiIKK21zZ3N0ciAiPG7DqW4+IHThu6sgdGFyIC1jZiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjYxIGRwa2ctZGViL2V4dHJhY3QuYzo2MworbXNnaWQgInNoZWxsIGNvbW1hbmQgdG8gbW92ZSBmaWxlcyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6NzAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgZmlsZSBpbiAlcyBpbiAlLjI1NXMiCittc2dzdHIgImfhurdwIGvhur90IHRow7pjIHThuq1wIHRpbiBi4bqldCB0aMaw4budbmcgdHJvbmcgJXMgdHJvbmcgJS4yNTVzIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcmVhZGluZyAlcyBmcm9tIGZpbGUgJS4yNTVzIgorbXNnc3RyICJn4bq3cCBs4buXaSBraGkgxJHhu41jICVzIHThu6sgdOG6rXAgdGluICUuMjU1cyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjEyNQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVhZCBhcmNoaXZlIGAlLjI1NXMnIgorbXNnc3RyICJs4buXaSDEkeG7jWMga2hvIGzGsHUgwqsgJS4yNTVzIMK7IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTI3Cittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGFyY2hpdmUiCittc2dzdHIgImzhu5dpIGZzdGF0IGtobyBsxrB1IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTMxCisjLCBmdXp6eQorI3wgbXNnaWQgImFyY2hpdmUgaGFzIG5vIGRvdCBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ2lkICJhcmNoaXZlIG1hZ2ljIHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICJraG8gbMawdSBraMO0bmcgY8OzIGThuqV1IGNo4bqlbSB0cm9uZyBz4buRIHRo4bupIHThu7EgcGhpw6puIGLhuqNuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTQzCisjLCBmdXp6eQorI3wgbXNnaWQgImFyY2hpdmUgaGFzIG5vIG5ld2xpbmVzIGluIGhlYWRlciIKK21zZ2lkICJhcmNoaXZlIG1lbWJlciBoZWFkZXIiCittc2dzdHIgImtobyBsxrB1IGtow7RuZyBjw7MgZMOybmcgbeG7m2kgbsOgbyB0cm9uZyBwaOG6p24gxJHhuqd1IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTQ4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgcGFydCBudW1iZXIiCittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIGFyY2hpdmUgaGVhZGVyIG1hZ2ljIgorbXNnc3RyICJ04bqtcCB0aW4gwqsgJS4yNTBzIMK7IGLhu4sgaOG7j25nIOKAlCBz4buRIHRo4bupIHThu7EgcGjhuqduIHNhaSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE1NQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIG5vdCBhIGRlYmlhbiBiaW5hcnkgYXJjaGl2ZSAodHJ5IGRwa2ctc3BsaXQ/KSIKK21zZ3N0ciAiIgorInThuq1wIHRpbiDCqyAlLjI1MHMgwrsga2jDtG5nIHBo4bqjaSBsw6AgbeG7mXQga2hvIG7DqW4gbmjhu4sgcGjDom4gRGViaWFuICh0aOG7rSDCqyBkcGtnLSIKKyJzcGxpdCDCuyAoY2hpYSB0w6FjaCk/KSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE1OQorIywgZnV6enkKKyN8IG1zZ2lkICJhcmNoaXZlIGhhcyBubyBkb3QgaW4gdmVyc2lvbiBudW1iZXIiCittc2dpZCAiYXJjaGl2ZSBpbmZvcm1hdGlvbiBoZWFkZXIgbWVtYmVyIgorbXNnc3RyICJraG8gbMawdSBraMO0bmcgY8OzIGThuqV1IGNo4bqlbSB0cm9uZyBz4buRIHRo4bupIHThu7EgcGhpw6puIGLhuqNuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTYyCittc2dpZCAiYXJjaGl2ZSBoYXMgbm8gbmV3bGluZXMgaW4gaGVhZGVyIgorbXNnc3RyICJraG8gbMawdSBraMO0bmcgY8OzIGTDsm5nIG3hu5tpIG7DoG8gdHJvbmcgcGjhuqduIMSR4bqndSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE2NQorbXNnaWQgImFyY2hpdmUgaGFzIG5vIGRvdCBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAia2hvIGzGsHUga2jDtG5nIGPDsyBk4bqldSBjaOG6pW0gdHJvbmcgc+G7kSB0aOG7qSB04buxIHBoacOqbiBi4bqjbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE2OAorIywgYy1mb3JtYXQKK21zZ2lkICJhcmNoaXZlIHZlcnNpb24gJS4yNTBzIG5vdCB1bmRlcnN0b29kLCBnZXQgbmV3ZXIgZHBrZy1kZWIiCittc2dzdHIgImtow7RuZyBoaeG7g3UgcGhpw6puIGLhuqNuIGtobyBsxrB1ICUuMjUwcywgaMOjeSBs4bqleSDCqyBkcGtnLWRlYiDCuyBt4bubaSBoxqFuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTc5IGRwa2ctZGViL2V4dHJhY3QuYzoyMDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInNraXBwZWQgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ2lkICJza2lwcGVkIGFyY2hpdmUgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ3N0ciAixJHDoyBi4buPIHF1YSBk4buvIGxp4buHdSBi4buZIHBo4bqhbiB04burICVzIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTk0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGNvbnRhaW5zIHVudW5kZXJzdG9vZCBkYXRhIG1lbWJlciAlLipzLCBnaXZpbmcgdXAiCittc2dpZCAiYXJjaGl2ZSAnJS4yNTBzJyBjb250YWlucyBub3QgdW5kZXJzdG9vZCBkYXRhIG1lbWJlciAlLipzLCBnaXZpbmcgdXAiCittc2dzdHIgIiIKKyJ04bqtcCB0aW4gwqsgJS4yNTBzIMK7IGNo4bupYSBi4buZIHBo4bqhbiBk4buvIGxp4buHdSBraMO0bmcgxJHGsOG7o2MgaGnhu4N1ICUuKnMgbsOqbiBjaOG7i3UgdGh1YSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE5OQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZSBgJS4yNTBzJyBjb250YWlucyB0d28gY29udHJvbCBtZW1iZXJzLCBnaXZpbmcgdXAiCittc2dpZCAiYXJjaGl2ZSAnJS4yNTBzJyBjb250YWlucyB0d28gY29udHJvbCBtZW1iZXJzLCBnaXZpbmcgdXAiCittc2dzdHIgInThuq1wIHRpbiDCqyAlLjI1MHMgwrsgY2jhu6lhIGhhaSBi4buZIHBo4bqhbiDEkWnhu4F1IGtoaeG7g24gbsOqbiBjaOG7i3UgdGh1YSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIxNAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiBuZXcgZGViaWFuIHBhY2thZ2UsIHZlcnNpb24gJXMuXG4iCisjfCAiIHNpemUgJWxkIGJ5dGVzOiBjb250cm9sIGFyY2hpdmU9ICV6aSBieXRlcy5cbiIKK21zZ2lkICIiCisiIG5ldyBkZWJpYW4gcGFja2FnZSwgdmVyc2lvbiAlcy5cbiIKKyIgc2l6ZSAlamQgYnl0ZXM6IGNvbnRyb2wgYXJjaGl2ZT0gJWpkIGJ5dGVzLlxuIgorbXNnc3RyICIiCisiIGfDs2kgRGViaWFuIG3hu5tpLCBwaGnDqm4gYuG6o24gJXMuXG4iCisiIGvDrWNoIGPhu6EgJWxkIGJ5dGU6IGtobyBsxrB1IMSRaeG7gXUga2hp4buDbj0gJXppIGJ5dGUuXG4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyMzIKK21zZ2lkICJhcmNoaXZlIGNvbnRyb2wgbWVtYmVyIHNpemUiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIzNQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYXJjaGl2ZSBoYXMgbWFsZm9ybWF0dGVkIGNvbnRyb2wgbGVuZ3RoIGAlcyciCittc2dpZCAiYXJjaGl2ZSBoYXMgbWFsZm9ybWF0dGVkIGNvbnRyb2wgbWVtYmVyIHNpemUgJyVzJyIKK21zZ3N0ciAia2hvIGzGsHUgY8OzIMSR4buZIGTDoGkgxJFp4buBdSBraGnhu4NuIGThuqFuZyBzYWkgwqsgJXMgwrsiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNDIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInNraXBwZWQgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ2lkICJza2lwcGVkIGFyY2hpdmUgY29udHJvbCBtZW1iZXIgZGF0YSBmcm9tICVzIgorbXNnc3RyICLEkcOjIGLhu48gcXVhIGThu68gbGnhu4d1IGLhu5kgcGjhuqFuIHThu6sgJXMiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNDYKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIgb2xkIGRlYmlhbiBwYWNrYWdlLCB2ZXJzaW9uICVzLlxuIgorI3wgIiBzaXplICVsZCBieXRlczogY29udHJvbCBhcmNoaXZlPSAlemksIG1haW4gYXJjaGl2ZT0gJWxkLlxuIgorbXNnaWQgIiIKKyIgb2xkIGRlYmlhbiBwYWNrYWdlLCB2ZXJzaW9uICVzLlxuIgorIiBzaXplICVqZCBieXRlczogY29udHJvbCBhcmNoaXZlPSAlamQsIG1haW4gYXJjaGl2ZT0gJWpkLlxuIgorbXNnc3RyICIiCisiIGfDs2kgRGViaWFuIGPFqSwgcGhpw6puIGLhuqNuICVzLlxuIgorIiBrw61jaCBj4buhICVsZCBieXRlOiBraG8gbMawdSDEkWnhu4F1IGtoaeG7g249ICV6aSBieXRlLCBraG8gbMawdSBjaMOtbmg9ICVsZC5cbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI1NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZy1kZWI6IGZpbGUgbG9va3MgbGlrZSBpdCBtaWdodCBiZSBhbiBhcmNoaXZlIHdoaWNoIGhhcyBiZWVuXG4iCisiZHBrZy1kZWI6ICAgIGNvcnJ1cHRlZCBieSBiZWluZyBkb3dubG9hZGVkIGluIEFTQ0lJIG1vZGVcbiIKK21zZ3N0ciAiIgorImRwa2ctZGViOiBcdHThuq1wIHRpbiBjw7MgduG6uyBsw6AgbeG7mXQga2hvIG7DqW4gxJHDoyBi4buLIGjhu49uZ1xuIgorImRwa2ctZGViOiBcdGRvIHZp4buHYyB04bqjaSB4deG7kW5nIHRyb25nIGNo4bq/IMSR4buZIEFTQ0lJXG4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiYCUuMjU1cycgaXMgbm90IGEgZGViaWFuIGZvcm1hdCBhcmNoaXZlIgorbXNnc3RyICLCqyAlLjI1NXMgwrsga2jDtG5nIHBo4bqjaSBsw6Aga2hvIG7DqW4gxJHhu4tuaCBk4bqhbmcgRGViaWFuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjY2Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIHRvIHBpcGUgaW4gY29weSIKK21zZ3N0ciAibOG7l2kgZ2hpIHThu5tpIOG7kW5nIGThuqtuIHRyb25nIGNvcHkgKHNhbyBjaMOpcCkiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNjgKK21zZ2lkICJmYWlsZWQgdG8gY2xvc2UgcGlwZSBpbiBjb3B5IgorbXNnc3RyICJs4buXaSDEkcOzbmcg4buRbmcgZOG6q24gdHJvbmcgY29weSAoc2FvIGNow6lwKSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI4NAorbXNnaWQgImRhdGEiCittc2dzdHIgImThu68gbGnhu4d1IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzA3Cittc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIGRpcmVjdG9yeSIKK21zZ3N0ciAibOG7l2kgY2hkaXIgKGNodXnhu4NuIMSR4buVaSB0aMawIG3hu6VjKSBzYW5nIHRoxrAgbeG7pWMiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozMTAKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGRpcmVjdG9yeSIKK21zZ3N0ciAibOG7l2kgdOG6oW8gdGjGsCBt4bulYyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMxMgorbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byBkaXJlY3RvcnkgYWZ0ZXIgY3JlYXRpbmcgaXQiCittc2dzdHIgImzhu5dpIGNoZGlyIChjaHV54buDbiDEkeG7lWkgdGjGsCBt4bulYykgc2FuZyB0aMawIG3hu6VjIHNhdSBraGkgdOG6oW8gbsOzIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzIzCittc2dpZCAiPGRlY29tcHJlc3M+IgorbXNnc3RyICI8Z2nhuqNpIG7DqW4+IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzI1Cittc2dpZCAicGFzdGUiCittc2dzdHIgImTDoW4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozNDIgZHBrZy1kZWIvZXh0cmFjdC5jOjM2MyBkcGtnLWRlYi9leHRyYWN0LmM6NDAyCisjOiBkcGtnLWRlYi9pbmZvLmM6NzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhIC5kZWIgZmlsZW5hbWUgYXJndW1lbnQiCittc2dzdHIgIsKrIC0tJXMgwrsgY+G6p24gbeG7mXQgxJHhu5dpIHPhu5Ega2nhu4N1IHTDqm4gdOG6rXAgdGluIC5kZWIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozNDcgZHBrZy1kZWIvZXh0cmFjdC5jOjQwNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiLS0lcyBuZWVkcyBhIHRhcmdldCBkaXJlY3RvcnkuXG4iCisiUGVyaGFwcyB5b3Ugc2hvdWxkIGJlIHVzaW5nIGRwa2cgLS1pbnN0YWxsID8iCittc2dzdHIgIiIKKyLCqyAtLSVzIMK7IGPhuqduIG3hu5l0IHRoxrAgbeG7pWMgxJHDrWNoLlxuIgorIkPDsyB0aOG7gyBj4bqnbiBz4butIGThu6VuZyDCqyBkcGtnIC0taW5zdGFsbCDCuyA/IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzUwIGRwa2ctZGViL2V4dHJhY3QuYzo0MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyB0YWtlcyBhdCBtb3N0IHR3byBhcmd1bWVudHMgKC5kZWIgYW5kIGRpcmVjdG9yeSkiCittc2dzdHIgIsKrIC0tJXMgwrsgY2jhuqVwIG5o4bqtbiBuaGnhu4F1IG5o4bqldCBoYWkgxJHhu5FpIHPhu5EgKC5kZWIgdsOgIHRoxrAgbeG7pWMpIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzY1CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgb25seSBvbmUgYXJndW1lbnQgKC5kZWIgZmlsZW5hbWUpIgorbXNnc3RyICLCqyAtLSVzIMK7IGNo4buJIGNo4bqlcCBuaOG6rW4gbeG7mXQgxJHhu5FpIHPhu5EgKHTDqm4gdOG6rXAgdGluIC5kZWIpIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6NjMKK21zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gYC8nIGZvciBjbGVhbnVwIgorbXNnc3RyICJs4buXaSBjaGRpciAoY2h1eeG7g24gxJHhu5VpIHRoxrAgbeG7pWMpIHNhbmcgwqsgLyDCuyDEkeG7gyBk4buNbiBz4bqhY2giCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMDYKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImNhbm5vdCBzdGF0IGZpbGUgJyVzJyIKK21zZ2lkICJjb250cm9sIGZpbGUgJyVzJyIKK21zZ3N0ciAia2jDtG5nIHRo4buDIGzhuqV5IHRy4bqhbmcgdGjDoWkgduG7gSB04bqtcCB0aW4gwqsgJXMgwrsiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZy1kZWI6IGAlLjI1NXMnIGNvbnRhaW5zIG5vIGNvbnRyb2wgY29tcG9uZW50IGAlLjI1NXMnXG4iCittc2dzdHIgImRwa2ctZGViOiDCqyAlLjI1NXMgwrsga2jDtG5nIGNo4bupYSB0aMOgbmggcGjhuqduIMSRaeG7gXUga2hp4buDbiBuw6BvIMKrICUuMjU1cyDCu1xuIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgIm9wZW4gY29tcG9uZW50IGAlLjI1NXMnIChpbiAlLjI1NXMpIGZhaWxlZCBpbiBhbiB1bmV4cGVjdGVkIHdheSIKK21zZ3N0ciAiIgorInZp4buHYyBt4bufIHRow6BuaCBwaOG6p24gwqsgJS4yNTVzIMK7ICh0cm9uZyAlLjI1NXMpIGLhu4sgbOG7l2kgbeG7mXQgY8OhY2ggYuG6pXQgdGjGsOG7nW5nIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTIxCisjLCBjLWZvcm1hdAorbXNnaWQgIiVkIHJlcXVlc3RlZCBjb250cm9sIGNvbXBvbmVudCBpcyBtaXNzaW5nIgorbXNnaWRfcGx1cmFsICIlZCByZXF1ZXN0ZWQgY29udHJvbCBjb21wb25lbnRzIGFyZSBtaXNzaW5nIgorbXNnc3RyWzBdICJDw7JuIHRoaeG6v3UgJWQgdGjDoG5oIHBo4bqnbiDEkWnhu4F1IGtoaeG7g24gxJHDoyB5w6p1IGPhuqd1IgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTM5IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo0MjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHNjYW4gZGlyZWN0b3J5IGAlLjI1NXMnIgorbXNnc3RyICJraMO0bmcgdGjhu4MgcXXDqXQgdGjGsCBt4bulYyDCqyAlLjI1NXMgwrsiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHN0YXQgYCUuMjU1cycgKGluIGAlLjI1NXMnKSIKK21zZ3N0ciAia2jDtG5nIHRo4buDIGzhuqV5IGPDoWMgdGjDtG5nIHRpbiB24buBIMKrICUuMjU1cyDCuyAodHJvbmcgwqsgJS4yNTVzIMK7KSIKKworIzogZHBrZy1kZWIvaW5mby5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgb3BlbiBgJS4yNTVzJyAoaW4gYCUuMjU1cycpIgorbXNnc3RyICJraMO0bmcgdGjhu4MgbeG7nyDCqyAlLjI1NXMgwrsgKHRyb25nIMKrICUuMjU1cyDCuykiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxNjcgZHBrZy1kZWIvaW5mby5jOjE4NSBkcGtnLWRlYi9pbmZvLmM6MTk5CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZWFkIGAlLjI1NXMnIChpbiBgJS4yNTVzJykiCittc2dzdHIgImzhu5dpIMSR4buNYyDCqyAlLjI1NXMgwrsgKHRyb25nIMKrICUuMjU1cyDCuykiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxNzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiAlN2xkIGJ5dGVzLCAlNWQgbGluZXMgICAlYyAgJS0yMC4xMjdzICUuMTI3c1xuIgorbXNnaWQgIiAlN2pkIGJ5dGVzLCAlNWQgbGluZXMgICAlYyAgJS0yMC4xMjdzICUuMTI3c1xuIgorbXNnc3RyICIgJTdsZCBieXRlLCAlNWQgZMOybmcgICAlYyAgJS0yMC4xMjdzICUuMTI3c1xuIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTc0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgICAgbm90IGEgcGxhaW4gZmlsZSAgICAgICAgICAlLjI1NXNcbiIKK21zZ3N0ciAiICAgICBraMO0bmcgcGjhuqNpIHThuq1wIHRpbiBjaHXhuqluICAgICAgICAgICUuMjU1c1xuIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTg2Cittc2dpZCAiKG5vIGBjb250cm9sJyBmaWxlIGluIGNvbnRyb2wgYXJjaGl2ZSEpXG4iCittc2dzdHIgIiIKKyIoa2jDtG5nIGPDsyB04bqtcCB0aW4gwqsgY29udHJvbCDCuyAoxJFp4buBdSBraGnhu4NuKSB0cm9uZyBraG8gbMawdSDEkWnhu4F1IGtoaeG7g24hKVxuIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MjIyCittc2dpZCAiY291bGQgbm90IG9wZW4gdGhlIGBjb250cm9sJyBjb21wb25lbnQiCittc2dzdHIgImtow7RuZyB0aOG7gyBt4bufIHRow6BuaCBwaOG6p24gwqsgY29udHJvbCDCuyAoxJFp4buBdSBraGnhu4NuKSIKKworIzogZHBrZy1kZWIvaW5mby5jOjI2MQorbXNnaWQgImZhaWxlZCBkdXJpbmcgcmVhZCBvZiBgY29udHJvbCcgY29tcG9uZW50IgorbXNnc3RyICJi4buLIGzhu5dpIHRyb25nIGtoaSDEkeG7jWMgdGjDoG5oIHBo4bqnbiDCqyBjb250cm9sIMK7ICjEkWnhu4F1IGtoaeG7g24pIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MjYzCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgdGhlICclcycgY29tcG9uZW50IgorbXNnc3RyICJn4bq3cCBs4buXaSBraGkgxJHDs25nIHRow6BuaCBwaOG6p24gwqsgJXMgwrsiCisKKyM6IGRwa2ctZGViL2luZm8uYzoyNzgKK21zZ2lkICJFcnJvciBpbiBmb3JtYXQiCittc2dzdHIgIkzhu5dpIHRyb25nIMSR4buLbmggZOG6oW5nIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MzI4Cittc2dpZCAiLS1jb250ZW50cyB0YWtlcyBleGFjdGx5IG9uZSBhcmd1bWVudCIKK21zZ3N0ciAiwqsgLS1jb250ZW50cyDCuyAobuG7mWkgZHVuZykgY2jhuqVwIG5o4bqtbiBjaMOtbmggeMOhYyBt4buZdCDEkeG7kWkgc+G7kSIKKworIzogZHBrZy1kZWIvbWFpbi5jOjU0CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiBgJXMnIHBhY2thZ2UgYXJjaGl2ZSBiYWNrZW5kIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkjhuq11IHBoxrDGoW5nIGtobyBsxrB1IGfDs2kgRGViaWFuIMKrICVzIMK7IHBoacOqbiBi4bqjbiAlcy5cbiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjczCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiQ29tbWFuZHM6XG4iCisjfCAiICAtYnwtLWJ1aWxkIDxkaXJlY3Rvcnk+IFs8ZGViPl0gICBCdWlsZCBhbiBhcmNoaXZlLlxuIgorI3wgIiAgLWN8LS1jb250ZW50cyA8ZGViPiAgICAgICAgICAgICAgTGlzdCBjb250ZW50cy5cbiIKKyN8ICIgIC1JfC0taW5mbyA8ZGViPiBbPGNmaWxlPiAuLi5dICAgIFNob3cgaW5mbyB0byBzdGRvdXQuXG4iCisjfCAiICAtV3wtLXNob3cgPGRlYj4gICAgICAgICAgICAgICAgICBTaG93IGluZm9ybWF0aW9uIG9uIHBhY2thZ2UocylcbiIKKyN8ICIgIC1mfC0tZmllbGQgPGRlYj4gWzxjZmllbGQ+IC4uLl0gIFNob3cgZmllbGQocykgdG8gc3Rkb3V0LlxuIgorI3wgIiAgLWV8LS1jb250cm9sIDxkZWI+IFs8ZGlyZWN0b3J5Pl0gRXh0cmFjdCBjb250cm9sIGluZm8uXG4iCisjfCAiICAteHwtLWV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gICBFeHRyYWN0IGZpbGVzLlxuIgorI3wgIiAgLVh8LS12ZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PiAgRXh0cmFjdCAmIGxpc3QgZmlsZXMuXG4iCisjfCAiICAtLWZzeXMtdGFyZmlsZSA8ZGViPiAgICAgICAgICAgICBPdXRwdXQgZmlsZXN5c3RlbSB0YXJmaWxlLlxuIgorI3wgIlxuIgorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1ifC0tYnVpbGQgPGRpcmVjdG9yeT4gWzxkZWI+XSAgIEJ1aWxkIGFuIGFyY2hpdmUuXG4iCisiICAtY3wtLWNvbnRlbnRzIDxkZWI+ICAgICAgICAgICAgICBMaXN0IGNvbnRlbnRzLlxuIgorIiAgLUl8LS1pbmZvIDxkZWI+IFs8Y2ZpbGU+IC4uLl0gICAgU2hvdyBpbmZvIHRvIHN0ZG91dC5cbiIKKyIgIC1XfC0tc2hvdyA8ZGViPiAgICAgICAgICAgICAgICAgIFNob3cgaW5mb3JtYXRpb24gb24gcGFja2FnZShzKVxuIgorIiAgLWZ8LS1maWVsZCA8ZGViPiBbPGNmaWVsZD4gLi4uXSAgU2hvdyBmaWVsZChzKSB0byBzdGRvdXQuXG4iCisiICAtZXwtLWNvbnRyb2wgPGRlYj4gWzxkaXJlY3Rvcnk+XSBFeHRyYWN0IGNvbnRyb2wgaW5mby5cbiIKKyIgIC14fC0tZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PiAgIEV4dHJhY3QgZmlsZXMuXG4iCisiICAtWHwtLXZleHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+ICBFeHRyYWN0ICYgbGlzdCBmaWxlcy5cbiIKKyIgIC1SfC0tcmF3LWV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEV4dHJhY3QgY29udHJvbCBpbmZvIGFuZCBmaWxlcy5cbiIKKyIgIC0tZnN5cy10YXJmaWxlIDxkZWI+ICAgICAgICAgICAgIE91dHB1dCBmaWxlc3lzdGVtIHRhcmZpbGUuXG4iCisiXG4iCittc2dzdHIgIiIKKyIgTOG7h25oOlxuIgorIiAgIC1ifC0tYnVpbGQgPHRoxrBfbeG7pWM+IFs8ZGViPl0gICAgXHRU4bqhbyBt4buZdCBraG8gbMawdS5cbiIKKyIgICAtY3wtLWNvbnRlbnRzIDxkZWI+ICAgICAgICAgICAgICAgXHRcdExp4buHdCBrw6ogbuG7mWkgZHVuZy5cbiIKKyIgICAtSXwtLWluZm8gPGRlYj4gWzx04bqtcF90aW5fcT4uLi5dXG4iCisiXHRcdEhJ4buHbiB0aMO0bmcgdGluIHJhIHRoaeG6v3QgYuG7iyB4deG6pXQgY2h14bqpbi5cbiIKKyIgICAtV3wtLXNob3cgPGRlYj4gICAgICAgICAgICAgICAgICAgSGnhu4duIHRow7RuZyB0aW4gduG7gSAoY8OhYykgZ8OzaVxuIgorIiAgIC1mfC0tZmllbGQgPGRlYj4gWzx0csaw4budbmdfxJFrPi4uLl1cbiIKKyJcdFx0SGnhu4duIChjw6FjKSB0csaw4budbmcgcmEgdGhp4bq/dCBi4buLIHh14bqldCBjaHXhuqluLlxuIgorIiAgIC1lfC0tY29udHJvbCA8ZGViPiBbPHRoxrBfbeG7pWM+XSAgXHRnaeG6o2kgbsOpbiB0aMO0bmcgdGluIMSRaeG7gXUga2hp4buDbi5cbiIKKyIgICAteHwtLWV4dHJhY3QgPGRlYj4gPHRoxrBfbeG7pWM+ICAgIFx0Z2nhuqNpIG7DqW4gY8OhYyB04bqtcCB0aW4uXG4iCisiICAgLVh8LS12ZXh0cmFjdCA8ZGViPiA8dGjGsF9t4bulYz4gICBcdGdp4bqjaSBuw6luIHbDoCBsaeG7h3Qga8OqIGPDoWMgdOG6rXAgdGluLlxuIgorIiAgIC0tZnN5cy10YXJmaWxlIDxkZWI+ICAgICAgICDEkcawYSByYSB04bqtcCB0aW4gLnRhciBraeG7g3UgaOG7hyB0aOG7kW5nIHThuq1wIHRpbi5cbiIKKyJcbiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjkzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyI8ZGViPiBpcyB0aGUgZmlsZW5hbWUgb2YgYSBEZWJpYW4gZm9ybWF0IGFyY2hpdmUuXG4iCisiPGNmaWxlPiBpcyB0aGUgbmFtZSBvZiBhbiBhZG1pbmlzdHJhdGl2ZSBmaWxlIGNvbXBvbmVudC5cbiIKKyI8Y2ZpZWxkPiBpcyB0aGUgbmFtZSBvZiBhIGZpZWxkIGluIHRoZSBtYWluIGBjb250cm9sJyBmaWxlLlxuIgorIlxuIgorbXNnc3RyICIiCisiPGRlYj4gbMOgIHTDqm4gdOG6rXAgdGluIGPhu6dhIGtobyBuw6luIMSR4buLbmggZOG6oW5nIERlYmlhbi5cbiIKKyI8dOG6rXBfdGluX3E+IGzDoCB0w6puIGPhu6dhIHRow6BuaCBwaOG6p24gdOG6rXAgdGluIGtp4buDdSBxdeG6o24gdHLhu4suXG4iCisiPHRyxrDhu51uZ19kaz4gbMOgIHTDqm4gY+G7p2EgdHLGsOG7nW5nIHRyb25nIHThuq1wIHRpbiDCqyDEkWnhu4F1IGtoaeG7g24gwrsgY2jDrW5oLlxuIgorIlxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6OTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJPcHRpb25zOlxuIgorI3wgIiAgLS1zaG93Zm9ybWF0PTxmb3JtYXQ+ICAgICAgICAgICAgVXNlIGFsdGVybmF0aXZlIGZvcm1hdCBmb3IgLS1zaG93LlxuIgorI3wgIiAgLUQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRW5hYmxlIGRlYnVnZ2luZyBvdXRwdXQuXG4iCisjfCAiICAtLW9sZCwgLS1uZXcgICAgICAgICAgICAgICAgICAgICBTZWxlY3QgYXJjaGl2ZSBmb3JtYXQuXG4iCisjfCAiICAtLW5vY2hlY2sgICAgICAgICAgICAgICAgICAgICAgICBTdXBwcmVzcyBjb250cm9sIGZpbGUgY2hlY2sgKGJ1aWxkICIKKyN8ICJiYWRcbiIKKyN8ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFja2FnZXMpLlxuIgorI3wgIiAgLXojICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU2V0IHRoZSBjb21wcmVzc2lvbiBsZXZlbCB3aGVuICIKKyN8ICJidWlsZGluZy5cbiIKKyN8ICIgIC1aPHR5cGU+ICAgICAgICAgICAgICAgICAgICAgICAgIFNldCB0aGUgY29tcHJlc3Npb24gdHlwZSB1c2VkIHdoZW4gIgorI3wgImJ1aWxkaW5nLlxuIgorI3wgIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBbGxvd2VkIHR5cGVzOiBnemlwLCB4eiwgYnppcDIsICIKKyN8ICJsem1hLCBub25lLlxuIgorI3wgIlxuIgorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1zaG93Zm9ybWF0PTxmb3JtYXQ+ICAgICAgICAgICAgVXNlIGFsdGVybmF0aXZlIGZvcm1hdCBmb3IgLS1zaG93LlxuIgorIiAgLXYsIC0tdmVyYm9zZSAgICAgICAgICAgICAgICAgICAgRW5hYmxlIHZlcmJvc2Ugb3V0cHV0LlxuIgorIiAgLUQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRW5hYmxlIGRlYnVnZ2luZyBvdXRwdXQuXG4iCisiICAtLW9sZCwgLS1uZXcgICAgICAgICAgICAgICAgICAgICBTZWxlY3QgYXJjaGl2ZSBmb3JtYXQuXG4iCisiICAtLW5vY2hlY2sgICAgICAgICAgICAgICAgICAgICAgICBTdXBwcmVzcyBjb250cm9sIGZpbGUgY2hlY2sgKGJ1aWxkIGJhZFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWNrYWdlcykuXG4iCisiICAteiMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTZXQgdGhlIGNvbXByZXNzaW9uIGxldmVsIHdoZW4gYnVpbGRpbmcuXG4iCisiICAtWjx0eXBlPiAgICAgICAgICAgICAgICAgICAgICAgICBTZXQgdGhlIGNvbXByZXNzaW9uIHR5cGUgdXNlZCB3aGVuICIKKyJidWlsZGluZy5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWxsb3dlZCB0eXBlczogZ3ppcCwgeHosIGJ6aXAyLCBsem1hLCAiCisibm9uZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIlR14buzIGNo4buNbjpcbiIKKyIgIC0tc2hvd2Zvcm1hdD08xJHhu4tuaF9k4bqhbmc+ICAgICAgRMO5bmcgxJHhu4tuaCBk4bqhbmcgbsOgeSBjaG8gwqsgLS1zaG93IMK7LlxuIgorIiAgLUQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSGnhu4d1IGzhu7FjIGvhur90IHh14bqldCBn4buhIHLhu5FpLlxuIgorIiAgLS1vbGQsIC0tbmV3ICAgICAgICAgICAgICAgICAgICAgQ2jhu41uIMSR4buLbmggZOG6oW5nIGtobyBsxrB1L27DqW4uXG4iCisiICAtLW5vY2hlY2sgICAgICBUaHUgaOG7k2kgY2jhu6ljIG7Eg25nIGtp4buDbSB0cmEgdOG6rXAgdGluIMSRaeG7gXUga2hp4buDbiAoeMOieSBk4buxbmcgZ8OzaSAiCisic2FpKS5cbiIKKyIgIC16IyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEzhuq1wIGPhuqVwIG7DqW4gdHJvbmcga2hpIHjDonkgZOG7sW5nLlxuIgorIiAgLVo8a2nhu4N1PiAgICAgICAgICAgICAgICAgICBM4bqtcCBraeG7g3UgbsOpbiDEkcaw4bujYyBkw7luZyBraGkgeMOieSBk4buxbmcuXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ8OhYyBraeG7g3UgxJHGsOG7o2MgcGjDqXA6IGd6aXAsIHh6LCBiemlwMiwgIgorImx6bWEsIG5vbmUgKGtow7RuZyBjw7MpLlxuIgorIlxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTIxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJVc2UgYGRwa2cnIHRvIGluc3RhbGwgYW5kIHJlbW92ZSBwYWNrYWdlcyBmcm9tIHlvdXIgc3lzdGVtLCBvclxuIgorImBkc2VsZWN0JyBvciBgYXB0aXR1ZGUnIGZvciB1c2VyLWZyaWVuZGx5IHBhY2thZ2UgbWFuYWdlbWVudC4gIFBhY2thZ2VzXG4iCisidW5wYWNrZWQgdXNpbmcgYGRwa2ctZGViIC0tZXh0cmFjdCcgd2lsbCBiZSBpbmNvcnJlY3RseSBpbnN0YWxsZWQgIVxuIgorbXNnc3RyICIiCisiXG4iCisiSMOjeSBz4butIGThu6VuZyDhu6luZyBk4bulbmcgwqsgZHBrZyDCuyDEkeG7gyBjw6BpIMSR4bq3dCBnw7NpIHbDoG8gdsOgIGfhu6EgYuG7jyBnw7NpIHJhXG4iCisiaOG7hyB0aOG7kW5nIGPhu6dhIGLhuqFuLCBob+G6t2MgZMO5bmcgwqsgZHNlbGVjdCDCuyBoYXkgwqsgYXB0aXR1ZGUgwrsgxJHhu4MgcXXhuqNuIGzDvSBnw7NpXG4iCisibeG7mXQgY8OhY2ggdGjDom4gdGhp4buHbiB24bubaSBuZ8aw4budaSBkw7luZy4gR2hpIGNow7ogOiBnw7NpIMSRxrDhu6NjIGdp4bqjaSBuw6luXG4iCisiYuG6sW5nIGzhu4duaCDCqyBkcGtnLWRlYiAtLWV4dHJhY3Qgwrsgc+G6vSDEkcaw4bujYyBjw6BpIMSR4bq3dCBzYWkuXG4iCisKKyM6IGRwa2ctZGViL21haW4uYzoxMzIKK21zZ2lkICIiCisiVHlwZSBkcGtnLWRlYiAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgbWFuaXB1bGF0aW5nICouZGViIGZpbGVzO1xuIgorIlR5cGUgZHBrZyAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgaW5zdGFsbGluZyBhbmQgZGVpbnN0YWxsaW5nIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorIkfDtSA6XG4iCisiZHBrZy1kZWIgLS1oZWxwXHRcdMSR4buDIHhlbSB0cuG7oyBnacO6cCB24buBIHRoYW8gdMOhYyB04bqtcCB0aW4gKi5kZWI7XG4iCisiZHBrZyAtLWhlbHBcdFx0XHTEkeG7gyB4ZW0gdHLhu6MgZ2nDunAgduG7gSB2aeG7h2MgY8OgaSDEkeG6t3QgdsOgIGfhu6EgYuG7jyBnw7NpLiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjE0OAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGludGVnZXIgZm9yIC0lYzogJyUuMjUwcyciCittc2dzdHIgInPhu5Egbmd1ecOqbiBraMO0bmcgaOG7o3AgbOG7hyBjaG8gLSVjOiDCqyAlLjI1MHMgwrsiCisKKyM6IGRwa2ctZGViL21haW4uYzoxNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjb21wcmVzc2lvbiBsZXZlbCBmb3IgLSVjOiAlbGQnIgorbXNnc3RyICJj4bqlcCBuw6luIGtow7RuZyBo4bujcCBs4buHIGNobyAtJWM6ICVsZCciCisKKyM6IGRwa2ctZGViL21haW4uYzoxNjEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBjb21wcmVzc2lvbiB0eXBlIGAlcychIgorbXNnc3RyICJraeG7g3UgbsOpbiBraMO0bmcgcsO1IMKrICVzIMK7LiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6NTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIGRpZ2l0IChjb2RlICVkKSBpbiAlcyIKK21zZ3N0ciAidOG6rXAgdGluIMKrICUuMjUwcyDCuyBi4buLIGjhu49uZyDigJQgY2jhu68gc+G7kSBzYWkgKG3DoyAlZCkgdHJvbmcgJXMiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjYwCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtICUuMjUwcyBtaXNzaW5nIgorbXNnc3RyICJ04bqtcCB0aW4gwqsgJS4yNTBzIMK7IGLhu4sgaOG7j25nIOKAlCAlLjI1MHMgY8OybiB0aGnhur91IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzo2MworIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBtaXNzaW5nIG5ld2xpbmUgYWZ0ZXIgJS4yNTBzIgorbXNnc3RyICJ04bqtcCB0aW4gwqsgJS4yNTBzIMK7IGLhu4sgaOG7j25nIOKAlCB0aGnhur91IGvDvSB04buxIGTDsm5nIG3hu5tpIMSR4bqxbmcgc2F1ICUuMjUwcyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6ODkgZHBrZy1zcGxpdC9tYWluLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHJlYWRpbmcgJS4yNTBzIgorbXNnc3RyICJn4bq3cCBs4buXaSBraGkgxJHhu41jICUuMjUwcyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTAzCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBtYWdpYyBhdCBlbmQgb2YgZmlyc3QgaGVhZGVyIgorbXNnc3RyICIiCisidOG6rXAgdGluIMKrICUuMjUwcyDCuyBi4buLIGjhu49uZyDigJQgbWEgdGh14bqtdCBzYWkg4bufIGvhur90IHRow7pjIGPhu6dhIHBo4bqnbiDEkeG6p3UgdGjhu6kgbmjhuqV0IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIHBhZGRpbmcgY2hhcmFjdGVyIChjb2RlICVkKSIKK21zZ3N0ciAidOG6rXAgdGluIMKrICUuMjUwcyDCuyBi4buLIGjhu49uZyDigJQga8O9IHThu7EgxJHhu4dtIHNhaSAobcOjICVkKSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTE3CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIG51bGxzIGluIGluZm8gc2VjdGlvbiIKK21zZ3N0ciAidOG6rXAgdGluIMKrICUuMjUwcyDCuyBi4buLIGjhu49uZyDigJQgY8OhYyBz4buRIGtow7RuZyDhu58gdHJvbmcgcGjhuqduIHRow7RuZyB0aW4iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyMgorbXNnaWQgImZvcm1hdCB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAic+G7kSB0aOG7qSB04buxIHBoacOqbiBi4bqjbiDEkeG7i25oIGThuqFuZyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgZm9ybWF0IHZlcnNpb24gYCUuMjUwcycgLSB5b3UgbmVlZCBhIG5ld2VyIGRwa2ctc3BsaXQiCittc2dzdHIgIiIKKyJ04bqtcCB0aW4gwqsgJS4yNTBzIMK7IGPDsyDEkeG7i25oIGThuqFuZyBwaGnDqm4gYuG6o24gwqsgJS4yNTBzIMK7IOKAlCBj4bqnbiDCqyBkcGtnLXNwbGl0IMK7ICIKKyJt4bubaSBoxqFuIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMjcKK21zZ2lkICJwYWNrYWdlIG5hbWUiCittc2dzdHIgInTDqm4gZ8OzaSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTI4Cittc2dpZCAicGFja2FnZSB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAic+G7kSB0aOG7qSB04buxIHBoacOqbiBi4bqjbiBnw7NpIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMjkKK21zZ2lkICJwYWNrYWdlIGZpbGUgTUQ1IGNoZWNrc3VtIgorbXNnc3RyICJ04buVbmcga2nhu4NtIHRyYSBNRDUgdOG6rXAgdGluIGfDs2kiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEzMgorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgTUQ1IGNoZWNrc3VtIGAlLjI1MHMnIgorbXNnc3RyICJ04bqtcCB0aW4gwqsgJS4yNTBzIMK7IGLhu4sgaOG7j25nIOKAlCB04buVbmcga2nhu4NtIHRyYSBNRDUgJS4yNTBzIHNhaSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTM0IGRwa2ctc3BsaXQvaW5mby5jOjEzNQorbXNnaWQgImFyY2hpdmUgdG90YWwgc2l6ZSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMzYgZHBrZy1zcGxpdC9pbmZvLmM6MTM3CisjLCBmdXp6eQorI3wgbXNnaWQgInBhcnQgb2Zmc2V0IgorbXNnaWQgImFyY2hpdmUgcGFydCBvZmZzZXQiCittc2dzdHIgImhp4buHdSBwaOG6p24iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEzOQorIywgZnV6enkKKyN8IG1zZ2lkICJwYXJ0IG51bWJlcnMiCittc2dpZCAiYXJjaGl2ZSBwYXJ0IG51bWJlcnMiCittc2dzdHIgImPDoWMgc+G7kSBj4bunYSBwaOG6p24iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE0MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gbm8gc2xhc2ggYmV0d2VlbiBwYXJ0IG51bWJlcnMiCittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gbm8gc2xhc2ggYmV0d2VlbiBhcmNoaXZlIHBhcnQgbnVtYmVycyIKK21zZ3N0ciAidOG6rXAgdGluIMKrICUuMjUwcyDCuyBi4buLIGjhu49uZyDigJQga2jDtG5nIGPDsyBk4bqldSB4dXnhu4djIGdp4buvYSBjw6FjIHPhu5EgY+G7p2EgcGjhuqduIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDUKKyMsIGZ1enp5CisjfCBtc2dpZCAibnVtYmVyIG9mIHBhcnRzIgorbXNnaWQgIm51bWJlciBvZiBhcmNoaXZlIHBhcnRzIgorbXNnc3RyICJz4buRIGPDoWMgcGjhuqduIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDcKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBudW1iZXIgb2YgcGFydHMiCittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIG51bWJlciBvZiBhcmNoaXZlIHBhcnRzIgorbXNnc3RyICJ04bqtcCB0aW4gwqsgJS4yNTBzIMK7IGLhu4sgaOG7j25nIOKAlCBzYWkgbOG6rXAgc+G7kSBjw6FjIHBo4bqnbiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTQ5CisjLCBmdXp6eQorI3wgbXNnaWQgInBhcnRzIG51bWJlciIKK21zZ2lkICJhcmNoaXZlIHBhcnRzIG51bWJlciIKK21zZ3N0ciAic+G7kSB0aOG7qSB04buxIHBo4bqnbiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTUxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgcGFydCBudW1iZXIiCittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIGFyY2hpdmUgcGFydCBudW1iZXIiCittc2dzdHIgInThuq1wIHRpbiDCqyAlLjI1MHMgwrsgYuG7iyBo4buPbmcg4oCUIHPhu5EgdGjhu6kgdOG7sSBwaOG6p24gc2FpIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNTcKKyMsIGZ1enp5CisjfCBtc2dpZCAicGFja2FnZSBuYW1lIgorbXNnaWQgInBhY2thZ2UgYXJjaGl0ZWN0dXJlIgorbXNnc3RyICJ0w6puIGfDs2kiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE2NgorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgbWFnaWMgYXQgZW5kIG9mIHNlY29uZCBoZWFkZXIiCittc2dzdHIgInThuq1wIHRpbiDCqyAlLjI1MHMgwrsgYuG7iyBo4buPbmcg4oCUIG1hIHRodeG6rXQgc2FpIOG7nyBjdeG7kWkgcGjhuqduIMSR4bqndSB0aOG7qSBoYWkiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE2OAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBzZWNvbmQgbWVtYmVyIGlzIG5vdCBkYXRhIG1lbWJlciIKK21zZ3N0ciAiIgorInThuq1wIHRpbiDCqyAlLjI1MHMgwrsgYuG7iyBo4buPbmcg4oCUIGLhu5kgcGjhuqFuIHRo4bupIGhhaSBraMO0bmcgcGjhuqNpIGzDoCBi4buZIHBo4bqhbiBk4buvIGxp4buHdSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTc0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIHdyb25nIG51bWJlciBvZiBwYXJ0cyBmb3IgcXVvdGVkIHNpemVzIgorbXNnc3RyICIiCisidOG6rXAgdGluIMKrICUuMjUwcyDCuyBi4buLIGjhu49uZyDigJQgc2FpIHPhu5EgY8OhYyBwaOG6p24gY2hvIGPDoWMga8OtY2ggY+G7oSDEkcOjIHjDoWMgxJHhu4tuaCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTc4CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIHNpemUgaXMgd3JvbmcgZm9yIHF1b3RlZCBwYXJ0IG51bWJlciIKK21zZ3N0ciAiIgorInThuq1wIHRpbiDCqyAlLjI1MHMgwrsgYuG7iyBo4buPbmcg4oCUIGvDrWNoIGPhu6Egc2FpIGNobyBz4buRIHRo4bupIHThu7EgcGjhuqduIMSRw6MgeMOhYyDEkeG7i25oIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxODQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZzdGF0IHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia2jDtG5nIHRo4buDIGZzdGF0IHThuq1wIHRpbiBwaOG6p24gwqsgJS4yNTBzIMK7IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gdG9vIHNob3J0IgorbXNnc3RyICJ04bqtcCB0aW4gwqsgJS4yNTBzIMK7IGLhu4sgaOG7j25nIOKAlCBxdcOhIG5n4bqvbiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjAyIGRwa2ctc3BsaXQvaW5mby5jOjI0OQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgb3BlbiBhcmNoaXZlIHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia2jDtG5nIHRo4buDIG3hu58gdOG6rXAgdGluIHBo4bqnbiBj4bunYSBraG8gbsOpbiDCqyAlLjI1MHMgwrsiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjIwNAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIG5vdCBhbiBhcmNoaXZlIHBhcnQiCittc2dzdHIgInThuq1wIHRpbiDCqyAlLjI1MHMgwrsga2jDtG5nIHBo4bqjaSBsw6AgbeG7mXQgcGjhuqduIGtobyBuw6luIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyMDkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIlczpcbiIKKyN8ICIgICAgUGFydCBmb3JtYXQgdmVyc2lvbjogICAgICAgICAgICAlc1xuIgorI3wgIiAgICBQYXJ0IG9mIHBhY2thZ2U6ICAgICAgICAgICAgICAgICVzXG4iCisjfCAiICAgICAgICAuLi4gdmVyc2lvbjogICAgICAgICAgICAgICAgJXNcbiIKKyN8ICIgICAgICAgIC4uLiBNRDUgY2hlY2tzdW06ICAgICAgICAgICAlc1xuIgorI3wgIiAgICAgICAgLi4uIGxlbmd0aDogICAgICAgICAgICAgICAgICVsdSBieXRlc1xuIgorI3wgIiAgICAgICAgLi4uIHNwbGl0IGV2ZXJ5OiAgICAgICAgICAgICVsdSBieXRlc1xuIgorI3wgIiAgICBQYXJ0IG51bWJlcjogICAgICAgICAgICAgICAgICAgICVkLyVkXG4iCisjfCAiICAgIFBhcnQgbGVuZ3RoOiAgICAgICAgICAgICAgICAgICAgJXppIGJ5dGVzXG4iCisjfCAiICAgIFBhcnQgb2Zmc2V0OiAgICAgICAgICAgICAgICAgICAgJWx1IGJ5dGVzXG4iCisjfCAiICAgIFBhcnQgZmlsZSBzaXplICh1c2VkIHBvcnRpb24pOiAgJWx1IGJ5dGVzXG4iCisjfCAiXG4iCittc2dpZCAiIgorIiVzOlxuIgorIiAgICBQYXJ0IGZvcm1hdCB2ZXJzaW9uOiAgICAgICAgICAgICVzXG4iCisiICAgIFBhcnQgb2YgcGFja2FnZTogICAgICAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiB2ZXJzaW9uOiAgICAgICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIGFyY2hpdGVjdHVyZTogICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gTUQ1IGNoZWNrc3VtOiAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiBsZW5ndGg6ICAgICAgICAgICAgICAgICAlamQgYnl0ZXNcbiIKKyIgICAgICAgIC4uLiBzcGxpdCBldmVyeTogICAgICAgICAgICAlamQgYnl0ZXNcbiIKKyIgICAgUGFydCBudW1iZXI6ICAgICAgICAgICAgICAgICAgICAlZC8lZFxuIgorIiAgICBQYXJ0IGxlbmd0aDogICAgICAgICAgICAgICAgICAgICVqZCBieXRlc1xuIgorIiAgICBQYXJ0IG9mZnNldDogICAgICAgICAgICAgICAgICAgICVqZCBieXRlc1xuIgorIiAgICBQYXJ0IGZpbGUgc2l6ZSAodXNlZCBwb3J0aW9uKTogICVqZCBieXRlc1xuIgorIlxuIgorbXNnc3RyICIiCisiJXM6XG4iCisiICAgIFBoacOqbiBi4bqjbiDEkeG7i25oIGThuqFuZyBwaOG6p246ICAgICAgICAgICAgJXNcbiIKKyIgICAgUGjhuqduIGPhu6dhIGfDs2k6ICAgICAgICAgICAgICAgIFx0XHQgICVzXG4iCisiICAgICAgICAuLi4gcGhpw6puIGLhuqNuOiAgICAgICAgICAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiB04buVbmcga2nhu4NtIHRyYSBNRDU6ICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIGNoaeG7gXUgZMOgaTogICAgICAgICAgICAgICAgICAgJWx1IGJ5dGVcbiIKKyIgICAgICAgIC4uLiBjaGlhIHTDoWNoIG3hu5dpOiAgICAgICAgICAgICAgICVsdSBieXRlXG4iCisiICAgIFPhu5EgaGnhu4d1IHBo4bqnbjogICAgICAgICAgICAgICAgICAgICVkLyVkXG4iCisiICAgIENoaeG7gXUgZMOgaSBwaOG6p246ICAgICAgICAgICAgICAgICAgICAlemkgYnl0ZVxuIgorIiAgICBIaeG7h3Ugc+G7kSBwaOG6p246ICAgICAgICAgICAgICAgICAgICAgICAgJWx1IGJ5dGVcbiIKKyIgICAgS8OtY2ggY+G7oSB04bqtcCB0aW4gcGjhuqduICh2w7luZyDEkcOjIGTDuW5nKTogICVsdSBieXRlXG4iCisiXG4iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjIyNQorIywgZnV6enkKKyN8IG1zZ2lkICI8dW5rbm93bj4iCittc2djdHh0ICJhcmNoaXRlY3R1cmUiCittc2dpZCAiPHVua25vd24+IgorbXNnc3RyICI8a2jDtG5nIHLDtT4iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjI0NCBkcGtnLXNwbGl0L2pvaW4uYzoxMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyByZXF1aXJlcyBvbmUgb3IgbW9yZSBwYXJ0IGZpbGUgYXJndW1lbnRzIgorbXNnc3RyICLCqyAtLSVzIMK7IHnDqnUgY+G6p3UgbeG7mXQgaGF5IG5oaeG7gXUgxJHhu5FpIHPhu5Ega2nhu4N1IHThuq1wIHRpbiBwaOG6p24iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjI1NQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlcycgaXMgbm90IGFuIGFyY2hpdmUgcGFydFxuIgorbXNnc3RyICJ04bqtcCB0aW4gwqsgJXMgwrsga2jDtG5nIHBo4bqjaSBsw6AgcGjhuqduIGtobyBuw6luXG4iCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjQ0CisjLCBjLWZvcm1hdAorbXNnaWQgIlB1dHRpbmcgcGFja2FnZSAlcyB0b2dldGhlciBmcm9tICVkIHBhcnQ6ICIKK21zZ2lkX3BsdXJhbCAiUHV0dGluZyBwYWNrYWdlICVzIHRvZ2V0aGVyIGZyb20gJWQgcGFydHM6ICIKK21zZ3N0clswXSAixJBhbmcgdOG6rXAgaOG7o3AgJTIkZCBwaOG6p24gxJHhu4MgbMOgbSBnw7NpICUxJHM6ICIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gb3V0cHV0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgImtow7RuZyB0aOG7gyBt4bufIHThuq1wIHRpbiBr4bq/dCB4deG6pXQgwqsgJS4yNTBzIMK7IgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gKHJlKW9wZW4gaW5wdXQgcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICJraMO0bmcgdGjhu4MgbeG7nyAobOG6oWkpIHThuq1wIHRpbiBwaOG6p24gbmjhuq1wIMKrICUuMjUwcyDCuyIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NTgKKyMsIGZ1enp5CisjfCBtc2dpZCAiU2tpcHBpbmcgZGVzZWxlY3RlZCBwYWNrYWdlICVzLlxuIgorbXNnaWQgInNraXBwaW5nIHNwbGl0IHBhY2thZ2UgaGVhZGVyIgorbXNnc3RyICLEkGFuZyBi4buPIHF1YSBnw7NpIMSRw6MgaOG7p3kgY2jhu41uICVzLlxuIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1OQorIywgZnV6enkKKyN8IG1zZ2lkICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0OiAiCisjfCBtc2dpZF9wbHVyYWwgIlB1dHRpbmcgcGFja2FnZSAlcyB0b2dldGhlciBmcm9tICVkIHBhcnRzOiAiCittc2dpZCAic3BsaXQgcGFja2FnZSBwYXJ0IgorbXNnc3RyICLEkGFuZyB04bqtcCBo4bujcCAlMiRkIHBo4bqnbiDEkeG7gyBsw6BtIGfDs2kgJTEkczogIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo2OSBkcGtnLXNwbGl0L3NwbGl0LmM6MjM3CisjLCBjLWZvcm1hdAorbXNnaWQgImRvbmVcbiIKK21zZ3N0ciAiaG/DoG4gdOG6pXRcbiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZXMgYCUuMjUwcycgYW5kIGAlLjI1MHMnIGFyZSBub3QgcGFydHMgb2YgdGhlIHNhbWUgZmlsZSIKK21zZ3N0ciAiIgorInThuq1wIHRpbiDCqyAlLjI1MHMgwrsgdsOgIMKrICUuMjUwcyDCuyBraMO0bmcgcGjhuqNpIGzDoCBoYWkgcGjhuqduIGPhu6dhIGPDuW5nIG3hu5l0IHThuq1wIHRpbiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAidGhlcmUgYXJlIHNldmVyYWwgdmVyc2lvbnMgb2YgcGFydCAlZCAtIGF0IGxlYXN0IGAlLjI1MHMnIGFuZCBgJS4yNTBzJyIKK21zZ3N0ciAiIgorImPDsyB2w6BpIHBoacOqbiBi4bqjbiBraMOhYyBuaGF1IGPhu6dhIHBo4bqnbiAlZCDigJQgw610IG5o4bqldCDCqyAlLjI1MHMgwrsgdsOgIMKrICUuMjUwcyDCuyIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6MTI4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhcnQgJWQgaXMgbWlzc2luZyIKK21zZ3N0ciAicGjhuqduICVkIGPDsm4gdGhp4bq/dSIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6NDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuIGAlcycgcGFja2FnZSBzcGxpdC9qb2luIHRvb2w7IHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkPDtG5nIGPhu6UgY2hpYSB0w6FjaC9u4buRaSBs4bqhaSBnw7NpIERlYmlhbiDCqyAlcyDCuzsgcGhpw6puIGLhuqNuICVzLlxuIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo0OQorIywgYy1mb3JtYXQKK21zZ2lkICJDb3B5cmlnaHQgKEMpIDE5OTQtMTk5NiBJYW4gSmFja3Nvbi5cbiIKK21zZ3N0ciAiVMOhYyBxdXnhu4FuIMKpIG7Eg20gMTk5NC0xOTk2IGPhu6dhIElhbiBKYWNrc29uLlxuIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo2NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtc3wtLXNwbGl0IDxmaWxlPiBbPHByZWZpeD5dICAgICBTcGxpdCBhbiBhcmNoaXZlLlxuIgorIiAgLWp8LS1qb2luIDxwYXJ0PiA8cGFydD4gLi4uICAgICAgSm9pbiBwYXJ0cyB0b2dldGhlci5cbiIKKyIgIC1JfC0taW5mbyA8cGFydD4gLi4uICAgICAgICAgICAgIERpc3BsYXkgaW5mbyBhYm91dCBhIHBhcnQuXG4iCisiICAtYXwtLWF1dG8gLW8gPGNvbXBsZXRlPiA8cGFydD4gICBBdXRvLWFjY3VtdWxhdGUgcGFydHMuXG4iCisiICAtbHwtLWxpc3RxICAgICAgICAgICAgICAgICAgICAgICBMaXN0IHVubWF0Y2hlZCBwaWVjZXMuXG4iCisiICAtZHwtLWRpc2NhcmQgWzxmaWxlbmFtZT4gLi4uXSAgICBEaXNjYXJkIHVubWF0Y2hlZCBwaWVjZXMuXG4iCisiXG4iCittc2dzdHIgIiIKKyJM4buHbmg6XG4iCisiICAgLXN8LS1zcGxpdCA8dOG6rXBfdGluPiBbPHRp4buBbl904buRPl1cdENoaWEgdMOhY2ggbeG7mXQga2hvIG7DqW4uXG4iCisiICAgLWp8LS1qb2luIDxwaOG6p24xPiA8cGjhuqduMj4gLi4uICAgICBcdE7hu5FpIGzhuqFpIG5oaeG7gXUgcGjhuqduIHJpw6puZy5cbiIKKyIgICAtSXwtLWluZm8gPHBo4bqnbj4gLi4uICAgICAgICAgIFx0XHRcdEhp4buHbiB0aMO0bmcgdGluIHbhu4EgcGjhuqduLlxuIgorIiAgIC1hfC0tYXV0byAtbyA8dG/DoG5fYuG7mT4gPHBo4bqnbj5cdFThu7EgxJHhu5luZyB0w61jaCBsxal5IGPDoWMgcGjhuqduLlxuIgorIiAgIC1sfC0tbGlzdHEgICAgICAgICAgICAgICAgIFx0XHRcdFx0TGnhu4d0IGvDqiBjw6FjIHBo4bqnbiBjaMawYSBraOG7m3AuXG4iCisiICAgLWR8LS1kaXNjYXJkIFs8dMOqbl904bqtcF90aW4+IC4uLl0gICBcdEjhu6d5IGPDoWMgcGjhuqduIGNoxrBhIGto4bubcC5cbiIKKyIgXG4iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjgyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiT3B0aW9uczpcbiIKKyN8ICIgIC0tZGVwb3RkaXIgPGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLyVzLlxuIgorI3wgIiAgLVN8LS1wYXJ0c2l6ZSA8c2l6ZT4gICAgICAgICAgICAgSW4gS2lCLCBmb3IgLXMgKGRlZmF1bHQgaXMgNDUwKS5cbiIKKyN8ICIgIC1vfC0tb3V0cHV0IDxmaWxlPiAgICAgICAgICAgICAgIEZvciAtaiAoZGVmYXVsdCBpcyA8cGFja2FnZT4tPHZlcnNpb24+LiIKKyN8ICJkZWIpLlxuIgorI3wgIiAgLVF8LS1ucHF1aWV0ICAgICAgICAgICAgICAgICAgICAgQmUgcXVpZXQgd2hlbiAtYSBpcyBub3QgYSBwYXJ0LlxuIgorI3wgIiAgLS1tc2RvcyAgICAgICAgICAgICAgICAgICAgICAgICAgR2VuZXJhdGUgOC4zIGZpbGVuYW1lcy5cbiIKKyN8ICJcbiIKKyN8ICJFeGl0IHN0YXR1czogMCA9IE9LOyAgMSA9IC1hIGlzIG5vdCBhIHBhcnQ7ICAyID0gdHJvdWJsZSFcbiIKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tZGVwb3RkaXIgPGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLyVzLlxuIgorIiAgLVN8LS1wYXJ0c2l6ZSA8c2l6ZT4gICAgICAgICAgICAgSW4gS2lCLCBmb3IgLXMgKGRlZmF1bHQgaXMgNDUwKS5cbiIKKyIgIC1vfC0tb3V0cHV0IDxmaWxlPiAgICAgICAgICAgICAgIEZpbGVuYW1lLCBmb3IgLWogKGRlZmF1bHQgaXNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhY2thZ2U+Xzx2ZXJzaW9uPl88YXJjaD4uZGViKS5cbiIKKyIgIC1RfC0tbnBxdWlldCAgICAgICAgICAgICAgICAgICAgIEJlIHF1aWV0IHdoZW4gLWEgaXMgbm90IGEgcGFydC5cbiIKKyIgIC0tbXNkb3MgICAgICAgICAgICAgICAgICAgICAgICAgIEdlbmVyYXRlIDguMyBmaWxlbmFtZXMuXG4iCisiXG4iCittc2dzdHIgIiIKKyJUw7l5IGNo4buNbjpcbiIKKyIgICAtLWRlcG90ZGlyIDx0aMawX23hu6VjPiAgICAgICAgXHREw7luZyA8dGjGsF9t4bulYz4gdGhheSBjaG8gJXMvJXMuXG4iCisiICAgLVN8LS1wYXJ0c2l6ZSA8Y+G7oT4gICAgICAgICAgICBcdFRoZW8gS2lCLCBjaG8gLXMgKG3hurdjIMSR4buLbmggbMOgIDQ1MCkuXG4iCisiICAgLW98LS1vdXRwdXQgPHThuq1wX3Rpbj4gICBcdENobyAtaiAobeG6t2MgxJHhu4tuaCBsw6AgPGfDs2k+LTxwaGnDqm4gYuG6o24+LmRlYikuXG4iCisiICAgLVF8LS1ucHF1aWV0ICAgICAgICAgICAgICAgICAgXHRLaMO0bmcgeHXhuqV0IGNoaSB0aeG6v3Qga2hpIC1hIGtow7RuZyBwaOG6o2kgbMOgICIKKyJwaOG6p24uXG4iCisiICAgLS1tc2RvcyAgICAgICAgICAgICAgICAgICAgICAgICBcdFThuqFvIHJhIGPDoWMgdMOqbiB04bqtcCB0aW4ga2nhu4N1IDguMy5cbiIKKyIgXG4iCisiIFRy4bqhbmcgdGjDoWkgdGhvw6F0OlxuIgorIiBcdDBcdE9LXG4iCisiIFx0MVx0LWEga2jDtG5nIHBo4bqjaSBsw6AgbeG7mXQgcGjhuqduO1xuIgorIiBcdDJcdGzhu5dpIG5naGnDqm0gdHLhu41uZyAhXG4iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjkyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJFeGl0IHN0YXR1czpcbiIKKyIgIDAgPSBva1xuIgorIiAgMSA9IHdpdGggLS1hdXRvLCBmaWxlIGlzIG5vdCBhIHBhcnRcbiIKKyIgIDIgPSB0cm91YmxlXG4iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6MTAzCittc2dpZCAiVHlwZSBkcGtnLXNwbGl0IC0taGVscCBmb3IgaGVscC4iCittc2dzdHIgIkfDtSDCqyBkcGtnLXNwbGl0IC0taGVscCDCuyDEkeG7gyB4ZW0gdHLhu6MgZ2nDunAuIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgZmlsZSBpbiAlLjI1MHMiCittc2dzdHIgImfhurdwIGvhur90IHRow7pjIHThuq1wIHRpbiBi4bqldCB0aMaw4budbmcgdHJvbmcgJS4yNTBzIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMjYKK21zZ2lkICJwYXJ0IHNpemUgaXMgZmFyIHRvbyBsYXJnZSBvciBpcyBub3QgcG9zaXRpdmUiCittc2dzdHIgImvDrWNoIGPhu6EgcGjhuqduIHF1w6EgZMOgaSBob+G6t2Mga2jDtG5nIHBo4bqjaSBsw6Agc+G7kSBkxrDGoW5nIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMzAKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFydCBzaXplIG11c3QgYmUgYXQgbGVhc3QgJWQgS2lCICh0byBhbGxvdyBmb3IgaGVhZGVyKSIKK21zZ3N0ciAia8OtY2ggY+G7oSBwaOG6p24gcGjhuqNpIGzDoCDDrXQgbmjhuqV0ICVkIEtpQiAoxJHhu4MgY2jhu6lhIHBo4bqnbiDEkeG6p3UpIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgZGVwb3QgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICJraMO0bmcgdGjhu4MgxJHhu41jIHRoxrAgbeG7pWMga2hvIGNo4bupYSAoZGVwb3QpIMKrICUuMjUwcyDCuyIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjEzNAorbXNnaWQgIi0tYXV0byByZXF1aXJlcyB0aGUgdXNlIG9mIHRoZSAtLW91dHB1dCBvcHRpb24iCittc2dzdHIgIsKrIC0tYXV0byDCuyAodOG7sSDEkeG7mW5nKSBjxaluZyBj4bqnbiBz4butIGThu6VuZyB0w7l5IGNo4buNbiDCqyAtLW91dHB1dCDCuyAoa+G6v3QgeHXhuqV0KSIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjEzNgorbXNnaWQgIi0tYXV0byByZXF1aXJlcyBleGFjdGx5IG9uZSBwYXJ0IGZpbGUgYXJndW1lbnQiCittc2dzdHIgIsKrIC0tYXV0byDCuyAodOG7sSDEkeG7mW5nKSBj4bqnbiBjaMOtbmggeMOhYyBt4buZdCDEkeG7kWkgc+G7kSBraeG7g3UgdOG6rXAgdGluIHBo4bqnbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE0MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgImtow7RuZyB0aOG7gyDEkeG7jWMgdOG6rXAgdGluIHBo4bqnbiDCqyAlLjI1MHMgwrsiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxNDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiRmlsZSBgJS4yNTBzJyBpcyBub3QgcGFydCBvZiBhIG11bHRpcGFydCBhcmNoaXZlLlxuIgorbXNnc3RyICJU4bqtcCB0aW4gwqsgJS4yNTBzIMK7IGtow7RuZyBwaOG6o2kgbMOgIHBo4bqnbiBj4bunYSBt4buZdCBraG8gxJFhIHBo4bqnbi5cbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE3OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVvcGVuIHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAia2jDtG5nIHRo4buDIG3hu58gbOG6oWkgdOG6rXAgdGluIHBo4bqnbiDCqyAlLjI1MHMgwrsiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxODIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gbmV3IGRlcG90IGZpbGUgYCUuMjUwcyciCittc2dzdHIgImtow7RuZyB0aOG7gyBt4bufIHThuq1wIHRpbiBraG8gY2jhu6lhIChkZXBvdCkgbeG7m2kgwqsgJS4yNTBzIMK7IgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTg0Cittc2dpZCAiZXh0cmFjdGluZyBzcGxpdCBwYXJ0IgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbmFtZSBuZXcgZGVwb3QgZmlsZSBgJS4yNTBzJyB0byBgJS4yNTBzJyIKK21zZ3N0ciAiIgorImtow7RuZyB0aOG7gyB0aGF5IMSR4buVaSB0w6puIHThuq1wIHRpbiBraG8gY2jhu6lhIChkZXBvdCkgbeG7m2kgwqsgJS4yNTBzIMK7IHRow6BuaCDCqyAiCisiJS4yNTBzIMK7IgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTk2CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhcnQgJWQgb2YgcGFja2FnZSAlcyBmaWxlZCAoc3RpbGwgd2FudCAiCittc2dzdHIgIlBo4bqnbiAlZCBj4bunYSBnw7NpICVzIMSRw6MgxJHGsOG7o2MgZ2hpIGzGsHUgKHbhuqtuIG114buRbiAiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyMDAKK21zZ2lkICIgYW5kICIKK21zZ3N0ciAiIHbDoCAiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSB1c2VkLXVwIGRlcG90IGZpbGUgYCUuMjUwcyciCittc2dzdHIgImtow7RuZyB0aOG7gyB4w7NhIHThuq1wIHRpbiBraG8gY2jhu6lhIChkZXBvdCkgdGnDqnUgdGjhu6UgwqsgJS4yNTBzIMK7IgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjM1Cittc2dpZCAiSnVuayBmaWxlcyBsZWZ0IGFyb3VuZCBpbiB0aGUgZGVwb3QgZGlyZWN0b3J5OlxuIgorbXNnc3RyICJU4bqtcCB0aW4gcsOhYyB24bqrbiBjw7JuIG7hurFtIHRyb25nIHRoxrAgbeG7pWMga2hvIGNo4bupYSAoZGVwb3QpOlxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjQwIGRwa2ctc3BsaXQvcXVldWUuYzoyNjkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgYCUuMjUwcyciCittc2dzdHIgImtow7RuZyB0aOG7gyBs4bqleSBjw6FjIHRow7RuZyB0aW4gduG7gSDCqyAlLjI1MHMgwrsiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNDMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiAlcyAoJWx1IGJ5dGVzKVxuIgorbXNnaWQgIiAlcyAoJWpkIGJ5dGVzKVxuIgorbXNnc3RyICIgJXMgKCVsdSBieXRlKVxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAlcyAobm90IGEgcGxhaW4gZmlsZSlcbiIKK21zZ3N0ciAiICVzIChraMO0bmcgcGjhuqNpIGzDoCB04bqtcCB0aW4gY2h14bqpbilcbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI1MAorbXNnaWQgIlBhY2thZ2VzIG5vdCB5ZXQgcmVhc3NlbWJsZWQ6XG4iCittc2dzdHIgIkfDs2kgY2jGsGEgxJHGsOG7o2MgdGh1IHRo4bqtcCBs4bqhaTpcbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI1OAorIywgYy1mb3JtYXQKK21zZ2lkICIgUGFja2FnZSAlczogcGFydChzKSAiCittc2dzdHIgIiBHw7NpICVzOiBjw7MgcGjhuqduICIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI3MQorIywgYy1mb3JtYXQKK21zZ2lkICJwYXJ0IGZpbGUgYCUuMjUwcycgaXMgbm90IGEgcGxhaW4gZmlsZSIKK21zZ3N0ciAidOG6rXAgdGluIHBo4bqnbiDCqyAlLjI1MHMgwrsga2jDtG5nIHBo4bqjaSBsw6AgdOG6rXAgdGluIGNodeG6qW4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNzgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIih0b3RhbCAlbHUgYnl0ZXMpXG4iCittc2dpZCAiKHRvdGFsICVqZCBieXRlcylcbiIKK21zZ3N0ciAiKHThu5VuZyAlbHUgYnl0ZSlcbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjMwNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGlzY2FyZCBgJS4yNTBzJyIKK21zZ3N0ciAia2jDtG5nIHRo4buDIGjhu6d5IMKrICUuMjUwcyDCuyIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjMwNQorIywgYy1mb3JtYXQKK21zZ2lkICJEZWxldGVkICVzLlxuIgorbXNnc3RyICLEkMOjIHjDs2EgJXMuXG4iCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzo3MCBkcGtnLXNwbGl0L3NwbGl0LmM6NzYgZHBrZy1zcGxpdC9zcGxpdC5jOjgxCisjLCBmdXp6eQorI3wgbXNnaWQgImRwa2ctZGViIGZpZWxkIGV4dHJhY3Rpb24iCittc2dpZCAicGFja2FnZSBmaWVsZCB2YWx1ZSBleHRyYWN0aW9uIgorbXNnc3RyICJkcGtnLWRlYiBs4bqleSB0csaw4budbmciCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxMzEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gc291cmNlIGZpbGUgYCUuMjUwcyciCittc2dzdHIgImtow7RuZyB0aOG7gyBt4bufIHThuq1wIHRpbiBuZ3Xhu5NuIMKrICUuMjUwcyDCuyIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjEzMworbXNnaWQgInVuYWJsZSB0byBmc3RhdCBzb3VyY2UgZmlsZSIKK21zZ3N0ciAia2jDtG5nIHRo4buDIGZzdGF0IHThuq1wIHRpbiBuZ3Xhu5NuIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTM1CisjLCBjLWZvcm1hdAorbXNnaWQgInNvdXJjZSBmaWxlIGAlLjI1MHMnIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgInThuq1wIHRpbiBuZ3Xhu5NuIMKrICUuMjUwcyDCuyBraMO0bmcgcGjhuqNpIGzDoCB04bqtcCB0aW4gY2h14bqpbiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjE1MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiUHV0dGluZyBwYWNrYWdlICVzIHRvZ2V0aGVyIGZyb20gJWQgcGFydDogIgorI3wgbXNnaWRfcGx1cmFsICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0czogIgorbXNnaWQgIlNwbGl0dGluZyBwYWNrYWdlICVzIGludG8gJWQgcGFydDogIgorbXNnaWRfcGx1cmFsICJTcGxpdHRpbmcgcGFja2FnZSAlcyBpbnRvICVkIHBhcnRzOiAiCittc2dzdHJbMF0gIsSQYW5nIHThuq1wIGjhu6NwICUyJGQgcGjhuqduIMSR4buDIGzDoG0gZ8OzaSAlMSRzOiAiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxOTMKK21zZ2lkICIiCisiSGVhZGVyIGlzIHRvbyBsb25nLCBtYWtpbmcgcGFydCB0b28gbG9uZy4gWW91ciBwYWNrYWdlIG5hbWUgb3IgdmVyc2lvblxuIgorIm51bWJlcnMgbXVzdCBiZSBleHRyYW9yZGluYXJpbHkgbG9uZywgb3Igc29tZXRoaW5nLiBHaXZpbmcgdXAuXG4iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjI0OQorbXNnaWQgIi0tc3BsaXQgbmVlZHMgYSBzb3VyY2UgZmlsZW5hbWUgYXJndW1lbnQiCittc2dzdHIgIsKrIC0tc3BsaXQgwrsgKGNoaWEgdMOhY2gpIGPhuqduIG3hu5l0IMSR4buRaSBz4buRIGtp4buDdSB0w6puIHThuq1wIHRpbiBuZ3Xhu5NuIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MjUyCittc2dpZCAiLS1zcGxpdCB0YWtlcyBhdCBtb3N0IGEgc291cmNlIGZpbGVuYW1lIGFuZCBkZXN0aW5hdGlvbiBwcmVmaXgiCittc2dzdHIgIiIKKyLCqyAtLXNwbGl0IMK7IChjaGlhIHTDoWNoKSBjaOG6pXAgbmjhuq1uIG5oaeG7gXUgbmjhuqV0IG3hu5l0IHTDqm4gdOG6rXAgdGluIG5ndeG7k24gdsOgIG3hu5l0ICIKKyJ0aeG7gW4gdOG7kSDEkcOtY2giCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo4NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMC0yMDAyIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDA5LTIwMTAgUmFwaGFlbCBIZXJ0em9nLlxuIgorbXNnc3RyICIiCisiVMOhYyBxdXnhu4FuIMKpIG7Eg20gMTk5NSBj4bunYSBJYW4gSmFja3Nvbi5cbiIKKyJUw6FjIHF1eeG7gW4gwqkgbsSDbSAyMDAwLTIwMDIgY+G7p2EgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJUw6FjIHF1eeG7gW4gwqkgbsSDbSAyMDA5LTIwMTAgY+G7p2EgUmFwaGFlbCBIZXJ0em9nLlxuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTAxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIDxjb21tYW5kPlxuIgorI3wgIlxuIgorI3wgIkNvbW1hbmRzOlxuIgorI3wgIiAgLS1pbnN0YWxsIDxsaW5rPiA8bmFtZT4gPHBhdGg+IDxwcmlvcml0eT5cbiIKKyN8ICIgICAgWy0tc2xhdmUgPGxpbms+IDxuYW1lPiA8cGF0aD5dIC4uLlxuIgorI3wgIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGFkZCBhIGdyb3VwIG9mIGFsdGVybmF0aXZlcyB0byB0aGUgc3lzdGVtLlxuIgorI3wgIiAgLS1yZW1vdmUgPG5hbWU+IDxwYXRoPiAgIHJlbW92ZSA8cGF0aD4gZnJvbSB0aGUgPG5hbWU+IGdyb3VwICIKKyN8ICJhbHRlcm5hdGl2ZS5cbiIKKyN8ICIgIC0tcmVtb3ZlLWFsbCA8bmFtZT4gICAgICByZW1vdmUgPG5hbWU+IGdyb3VwIGZyb20gdGhlIGFsdGVybmF0aXZlcyAiCisjfCAic3lzdGVtLlxuIgorI3wgIiAgLS1hdXRvIDxuYW1lPiAgICAgICAgICAgIHN3aXRjaCB0aGUgbWFzdGVyIGxpbmsgPG5hbWU+IHRvIGF1dG9tYXRpYyAiCisjfCAibW9kZS5cbiIKKyN8ICIgIC0tZGlzcGxheSA8bmFtZT4gICAgICAgICBkaXNwbGF5IGluZm9ybWF0aW9uIGFib3V0IHRoZSA8bmFtZT4gZ3JvdXAuXG4iCisjfCAiICAtLXF1ZXJ5IDxuYW1lPiAgICAgICAgICAgbWFjaGluZSBwYXJzZWFibGUgdmVyc2lvbiBvZiAtLWRpc3BsYXkgIgorI3wgIjxuYW1lPi5cbiIKKyN8ICIgIC0tbGlzdCA8bmFtZT4gICAgICAgICAgICBkaXNwbGF5IGFsbCB0YXJnZXRzIG9mIHRoZSA8bmFtZT4gZ3JvdXAuXG4iCisjfCAiICAtLWNvbmZpZyA8bmFtZT4gICAgICAgICAgc2hvdyBhbHRlcm5hdGl2ZXMgZm9yIHRoZSA8bmFtZT4gZ3JvdXAgYW5kIGFzayAiCisjfCAidGhlXG4iCisjfCAiICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlciB0byBzZWxlY3Qgd2hpY2ggb25lIHRvIHVzZS5cbiIKKyN8ICIgIC0tc2V0IDxuYW1lPiA8cGF0aD4gICAgICBzZXQgPHBhdGg+IGFzIGFsdGVybmF0aXZlIGZvciA8bmFtZT4uXG4iCisjfCAiICAtLWFsbCAgICAgICAgICAgICAgICAgICAgY2FsbCAtLWNvbmZpZyBvbiBhbGwgYWx0ZXJuYXRpdmVzLlxuIgorI3wgIlxuIgorI3wgIjxsaW5rPiBpcyB0aGUgc3ltbGluayBwb2ludGluZyB0byAlcy88bmFtZT4uXG4iCisjfCAiICAoZS5nLiAvdXNyL2Jpbi9wYWdlcilcbiIKKyN8ICI8bmFtZT4gaXMgdGhlIG1hc3RlciBuYW1lIGZvciB0aGlzIGxpbmsgZ3JvdXAuXG4iCisjfCAiICAoZS5nLiBwYWdlcilcbiIKKyN8ICI8cGF0aD4gaXMgdGhlIGxvY2F0aW9uIG9mIG9uZSBvZiB0aGUgYWx0ZXJuYXRpdmUgdGFyZ2V0IGZpbGVzLlxuIgorI3wgIiAgKGUuZy4gL3Vzci9iaW4vbGVzcylcbiIKKyN8ICI8cHJpb3JpdHk+IGlzIGFuIGludGVnZXI7IG9wdGlvbnMgd2l0aCBoaWdoZXIgbnVtYmVycyBoYXZlIGhpZ2hlciAiCisjfCAicHJpb3JpdHkgaW5cbiIKKyN8ICIgIGF1dG9tYXRpYyBtb2RlLlxuIgorI3wgIlxuIgorI3wgIk9wdGlvbnM6XG4iCisjfCAiICAtLWFsdGRpciA8ZGlyZWN0b3J5PiAgICAgY2hhbmdlIHRoZSBhbHRlcm5hdGl2ZXMgZGlyZWN0b3J5LlxuIgorI3wgIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIGNoYW5nZSB0aGUgYWRtaW5pc3RyYXRpdmUgZGlyZWN0b3J5LlxuIgorI3wgIiAgLS1za2lwLWF1dG8gICAgICAgICAgICAgIHNraXAgcHJvbXB0IGZvciBhbHRlcm5hdGl2ZXMgY29ycmVjdGx5ICIKKyN8ICJjb25maWd1cmVkXG4iCisjfCAiICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gYXV0b21hdGljIG1vZGUgKHJlbGV2YW50IGZvciAtLWNvbmZpZyAiCisjfCAib25seSlcbiIKKyN8ICIgIC0tdmVyYm9zZSAgICAgICAgICAgICAgICB2ZXJib3NlIG9wZXJhdGlvbiwgbW9yZSBvdXRwdXQuXG4iCisjfCAiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgcXVpZXQgb3BlcmF0aW9uLCBtaW5pbWFsIG91dHB1dC5cbiIKKyN8ICIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorI3wgIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLS1pbnN0YWxsIDxsaW5rPiA8bmFtZT4gPHBhdGg+IDxwcmlvcml0eT5cbiIKKyIgICAgWy0tc2xhdmUgPGxpbms+IDxuYW1lPiA8cGF0aD5dIC4uLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGFkZCBhIGdyb3VwIG9mIGFsdGVybmF0aXZlcyB0byB0aGUgc3lzdGVtLlxuIgorIiAgLS1yZW1vdmUgPG5hbWU+IDxwYXRoPiAgIHJlbW92ZSA8cGF0aD4gZnJvbSB0aGUgPG5hbWU+IGdyb3VwIGFsdGVybmF0aXZlLlxuIgorIiAgLS1yZW1vdmUtYWxsIDxuYW1lPiAgICAgIHJlbW92ZSA8bmFtZT4gZ3JvdXAgZnJvbSB0aGUgYWx0ZXJuYXRpdmVzICIKKyJzeXN0ZW0uXG4iCisiICAtLWF1dG8gPG5hbWU+ICAgICAgICAgICAgc3dpdGNoIHRoZSBtYXN0ZXIgbGluayA8bmFtZT4gdG8gYXV0b21hdGljIG1vZGUuXG4iCisiICAtLWRpc3BsYXkgPG5hbWU+ICAgICAgICAgZGlzcGxheSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgPG5hbWU+IGdyb3VwLlxuIgorIiAgLS1xdWVyeSA8bmFtZT4gICAgICAgICAgIG1hY2hpbmUgcGFyc2VhYmxlIHZlcnNpb24gb2YgLS1kaXNwbGF5IDxuYW1lPi5cbiIKKyIgIC0tbGlzdCA8bmFtZT4gICAgICAgICAgICBkaXNwbGF5IGFsbCB0YXJnZXRzIG9mIHRoZSA8bmFtZT4gZ3JvdXAuXG4iCisiICAtLWdldC1zZWxlY3Rpb25zICAgICAgICAgbGlzdCBtYXN0ZXIgYWx0ZXJuYXRpdmUgbmFtZXMgYW5kIHRoZWlyIHN0YXR1cy5cbiIKKyIgIC0tc2V0LXNlbGVjdGlvbnMgICAgICAgICByZWFkIGFsdGVybmF0aXZlIHN0YXR1cyBmcm9tIHN0YW5kYXJkIGlucHV0LlxuIgorIiAgLS1jb25maWcgPG5hbWU+ICAgICAgICAgIHNob3cgYWx0ZXJuYXRpdmVzIGZvciB0aGUgPG5hbWU+IGdyb3VwIGFuZCBhc2sgIgorInRoZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzZXIgdG8gc2VsZWN0IHdoaWNoIG9uZSB0byB1c2UuXG4iCisiICAtLXNldCA8bmFtZT4gPHBhdGg+ICAgICAgc2V0IDxwYXRoPiBhcyBhbHRlcm5hdGl2ZSBmb3IgPG5hbWU+LlxuIgorIiAgLS1hbGwgICAgICAgICAgICAgICAgICAgIGNhbGwgLS1jb25maWcgb24gYWxsIGFsdGVybmF0aXZlcy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIlPhu60gZOG7pW5nOiAlcyBbPHTDuXlfY2jhu41uPiAuLi5dIDxs4buHbmg+XG4iCisiXG4iCisiTOG7h25oOlxuIgorIiAgLS1pbnN0YWxsIDxsacOqbl9r4bq/dD4gPHTDqm4+IDzEkcaw4budbmdfZOG6q24+IDxt4bupY1/GsHVfdGnDqm4+XG4iCisiICAgIFstLXNsYXZlIDxsacOqbl9r4bq/dD4gPHTDqm4+IDzEkcaw4budbmdfZOG6q24+XSAuLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICB0aMOqbSB2w6BvIGjhu4cgdGjhu5FuZyBt4buZdCBuaMOzbSBjw6FjIHPhu7EgeGVuIGvhur0uXG4iCisiICAtLXJlbW92ZSA8dMOqbj4gPMSRxrDhu51uZ19k4bqrbj5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBn4buhIGLhu48gxJHGsOG7nW5nIGThuqtuIG7DoHkga2jhu49pIG5ow7NtIHPhu7EgeGVuIGvhur0gY8OzIHTDqm4gIgorIm7DoHkuXG4iCisiICAtLXJlbW92ZS1hbGwgPHTDqm4+ICAgIGfhu6EgYuG7jyBuaMOzbSB0w6puIG7DoHkga2jhu49pIGjhu4cgdGjhu5FuZyBz4buxIHhlbiBr4bq9LlxuIgorIiAgLS1hdXRvIDx0w6puPiAgICAgICAgICAgY2h1eeG7g24gxJHhu5VpIGxpw6puIGvhur90IGNo4bunIHTDqm4gbsOgeSBzYW5nIGNo4bq/IMSR4buZIHThu7EgIgorIsSR4buZbmcuXG4iCisiICAtLWRpc3BsYXkgPHTDqm4+ICAgICAgICAgaGnhu4NuIHRo4buLIHRow7RuZyB0aW4gduG7gSBuaMOzbSB0w6puIG7DoHkuXG4iCisiICAtLXF1ZXJ5IDx0w6puPiAgICAgICAgICAgcGhpw6puIGLhuqNuIGNobyBtw6F5IHBow6JuIHTDrWNoIMSRxrDhu6NjIGPhu6dhIMKrIC0tZGlzcGxheSAiCisiPHTDqm4+IMK7LlxuIgorIiAgLS1saXN0IDx0w6puPiAgICAgICAgICAgIGhp4buDbiB0aOG7iyB04bqldCBj4bqjIGPDoWMgxJHDrWNoIGPhu6dhIG5ow7NtIHTDqm4gbsOgeS5cbiIKKyIgIC0tY29uZmlnIDx0w6puPiAgICAgICAgICBoaeG7g24gdGjhu4sgY8OhYyBz4buxIHhlbiBr4bq9IGNobyBuaMOzbSB0w6puIG7DoHksXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHbDoCBuaOG6r2MgbmfGsOG7nWkgZMO5bmcgY2jhu41uIHPhu7EgeGVuIGvhur0gdGjDrWNoICIKKyJo4bujcC5cbiIKKyIgIC0tc2V0IDx0w6puPiA8xJHGsOG7nW5nX2ThuqtuPiAgICAgIGzhuq1wIMSRxrDhu51uZyBk4bqrbiBuw6B5IG5oxrAgbMOgIHPhu7EgeGVuIGvhur0gY2hvIHTDqm4gIgorIm7DoHkuXG4iCisiICAtLWFsbCAgICAgICAgICAgICAgICAgICAgZ+G7jWkgwqsgLS1jb25maWcgwrsgKGPhuqV1IGjDrG5oKSB24bubaSBt4buXaSBz4buxIHhlbiBr4bq9LlxuIgorIlxuIgorIjxsacOqbl9r4bq/dD4gbMOgIGxpw6puIGvhur90IHTGsOG7o25nIHRyxrBuZyBtw6AgY2jhu4kgdOG7m2kgJXMvPHTDqm4+LlxuIgorIiAgKHYuZC4gL3Vzci9iaW4vcGFnZXIpXG4iCisiPHTDqm4+IGzDoCB0w6puIGNo4bunIGNobyBuaMOzbSBsacOqbiBr4bq/dCBuw6B5LlxuIgorIiAgKHYuZC4gcGFnZXIpXG4iCisiPMSRxrDhu51uZ19k4bqrbj4gbMOgIHbhu4sgdHLDrSBj4bunYSBt4buZdCB04bqtcCB0aW4gxJHDrWNoIHhlbiBr4bq9IG7DoG8gxJHDsy5cbiIKKyIgIChlLmcuIC91c3IvYmluL2xlc3MpXG4iCisiPG3hu6ljX8awdV90acOqbj4gbMOgIG3hu5l0IHPhu5Egbmd1ecOqbjpcbiIKKyIgICBjb24gc+G7kSBs4bubbiBoxqFuIHRow6wgbOG6rXAgbeG7qWMgxrB1IHRpw6puIGNhbyBoxqFuIHRyb25nIGNo4bq/IMSR4buZIHThu7EgxJHhu5luZy5cbiIKKyJcbiIKKyJUdeG7syBjaOG7jW46XG4iCisiICAtLWFsdGRpciA8dGjGsF9t4bulYz4gICAgIGNodXnhu4NuIMSR4buVaSB0aMawIG3hu6VjIHPhu7EgeGVuIGvhur0uXG4iCisiICAtLWFkbWluZGlyIDx0aMawX23hu6VjPiAgIGNodXnhu4NuIMSR4buVaSB0aMawIG3hu6VjIHF14bqjbiBsw70uXG4iCisiICAtLXNraXAtYXV0byAgICAgIGLhu48gcXVhIGThuqV1IG5o4bqvYyBjaG8gc+G7sSB4ZW4ga+G6vSDEkcO6bmcgY+G6pXUgaMOsbmggdHJvbmcgY2jhur8gxJHDtCAiCisidOG7sSDEkeG7mW5nXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgKHRow61jaCBo4bujcCBjaOG7iSB24bubaSDCqyAtLWNvbmZpZyDCuylcbiIKKyIgIC0tdmVyYm9zZSAgICAgICAgICAgICAgICB4deG6pXQgbmhp4buBdSBoxqFuLlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHh14bqldCDDrXQgaMahbi5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICBoaeG7g24gdGjhu4sgdHLhu6MgZ2nDunAgbsOgeS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBoaeG7g24gdGjhu4sgc+G7kSB0aOG7qSB04buxIHBoacOqbiBi4bqjbi5cbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiPGxpbms+IGlzIHRoZSBzeW1saW5rIHBvaW50aW5nIHRvICVzLzxuYW1lPi5cbiIKKyIgIChlLmcuIC91c3IvYmluL3BhZ2VyKVxuIgorIjxuYW1lPiBpcyB0aGUgbWFzdGVyIG5hbWUgZm9yIHRoaXMgbGluayBncm91cC5cbiIKKyIgIChlLmcuIHBhZ2VyKVxuIgorIjxwYXRoPiBpcyB0aGUgbG9jYXRpb24gb2Ygb25lIG9mIHRoZSBhbHRlcm5hdGl2ZSB0YXJnZXQgZmlsZXMuXG4iCisiICAoZS5nLiAvdXNyL2Jpbi9sZXNzKVxuIgorIjxwcmlvcml0eT4gaXMgYW4gaW50ZWdlcjsgb3B0aW9ucyB3aXRoIGhpZ2hlciBudW1iZXJzIGhhdmUgaGlnaGVyIHByaW9yaXR5ICIKKyJpblxuIgorIiAgYXV0b21hdGljIG1vZGUuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzMQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIk9wdGlvbnM6XG4iCisjfCAiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgc2V0IHRoZSBkaXJlY3Rvcnkgd2l0aCB0aGUgc3RhdG92ZXJyaWRlIGZpbGUuXG4iCisjfCAiICAtLXVwZGF0ZSAgICAgICAgICAgICAgICAgaW1tZWRpYXRlbHkgdXBkYXRlIGZpbGUgcGVybWlzc2lvbnMuXG4iCisjfCAiICAtLWZvcmNlICAgICAgICAgICAgICAgICAgZm9yY2UgYW4gYWN0aW9uIGV2ZW4gaWYgYSBzYW5pdHkgY2hlY2sgZmFpbHMuXG4iCisjfCAiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgcXVpZXQgb3BlcmF0aW9uLCBtaW5pbWFsIG91dHB1dC5cbiIKKyN8ICIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorI3wgIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisjfCAiXG4iCittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFsdGRpciA8ZGlyZWN0b3J5PiAgICAgY2hhbmdlIHRoZSBhbHRlcm5hdGl2ZXMgZGlyZWN0b3J5LlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIGNoYW5nZSB0aGUgYWRtaW5pc3RyYXRpdmUgZGlyZWN0b3J5LlxuIgorIiAgLS1sb2cgPGZpbGU+ICAgICAgICAgICAgIGNoYW5nZSB0aGUgbG9nIGZpbGUuXG4iCisiICAtLWZvcmNlICAgICAgICAgICAgICAgICAgYWxsb3cgcmVwbGFjaW5nIGZpbGVzIHdpdGggYWx0ZXJuYXRpdmUgbGlua3MuXG4iCisiICAtLXNraXAtYXV0byAgICAgICAgICAgICAgc2tpcCBwcm9tcHQgZm9yIGFsdGVybmF0aXZlcyBjb3JyZWN0bHkgIgorImNvbmZpZ3VyZWRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBhdXRvbWF0aWMgbW9kZSAocmVsZXZhbnQgZm9yIC0tY29uZmlnIG9ubHkpXG4iCisiICAtLXZlcmJvc2UgICAgICAgICAgICAgICAgdmVyYm9zZSBvcGVyYXRpb24sIG1vcmUgb3V0cHV0LlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHF1aWV0IG9wZXJhdGlvbiwgbWluaW1hbCBvdXRwdXQuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorbXNnc3RyICIiCisiVHXhu7MgY2jhu41uOlxuIgorIiAgLS1hZG1pbmRpciA8dGjGsF9t4bulYz4gICBs4bqtcCB0aMawIG3hu6VjIGTDuW5nIHThuq1wIHRpbiBzdGF0b3ZlcnJpZGUuXG4iCisiICAtLXVwZGF0ZSAgICAgICAgICAgICAgICAgbmdheSBs4bqtcCB04bupYyBj4bqtcCBuaOG6rXQgY8OhYyBxdXnhu4FuIGjhuqFuIHThuq1wIHRpbi5cbiIKKyIgIC0tZm9yY2UgICAgICDDqXAgYnXhu5ljIGjDoG5oIMSR4buZbmcgxJHDsywgbmdheSBj4bqjIG7hur91IGLhu4sgc2FpIGtp4buDbSB0cmEgc+G7sSDEkcO6bmcgIgorIm3hu7FjLlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIGNo4bqheSBpbSwga2jDtG5nIHh14bqldCBuaGnhu4F1LlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIGhp4buDbiB0aOG7iyB0cuG7oyBnacO6cCBuw6B5LlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIGhp4buDbiB0aOG7iyBz4buRIHRo4bupIHThu7EgcGhpw6puIGLhuqNuLlxuIgorIlxuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNjMKK21zZ2lkICJlcnJvciIKK21zZ3N0ciAibOG7l2kiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxOTMKK21zZ2lkICJ3YXJuaW5nIgorbXNnc3RyICJj4bqjbmggYsOhbyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjM1NgorIywgYy1mb3JtYXQKK21zZ2lkICJ0d28gY29tbWFuZHMgc3BlY2lmaWVkOiAtLSVzIGFuZCAtLSVzIgorbXNnc3RyICJoYWkgbOG7h25oIMSRw6MgeMOhYyDEkeG7i25oOiAtLSVzIHbDoCAtLSVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6Mzg3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW5ub3QgYXBwZW5kIHRvICVzOiAlcyIKK21zZ2lkICJjYW5ub3QgYXBwZW5kIHRvICclcyciCittc2dzdHIgImtow7RuZyB0aOG7gyBwaOG7pSB0aMOqbSB2w6BvICVzOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjU1NgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHJlbW92ZSAlczogJXMiCittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSAnJXMnIgorbXNnc3RyICJraMO0bmcgdGjhu4MgZ+G7oSBi4buPICVzOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgZmlsZSB3aGlsZSB0cnlpbmcgdG8gcmVhZCAlcyIKK21zZ3N0ciAiZ+G6t3Aga+G6v3QgdGjDumMgdOG6rXAgdGluIGLhuqV0IHRoxrDhu51uZyB0cm9uZyBraGkgdGjhu60gxJHhu41jICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTExMworIywgYy1mb3JtYXQKK21zZ2lkICJ3aGlsZSByZWFkaW5nICVzOiAlcyIKK21zZ3N0ciAidHJvbmcga2hpIMSR4buNYyAlczogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTE5CisjLCBjLWZvcm1hdAorbXNnaWQgImxpbmUgbm90IHRlcm1pbmF0ZWQgd2hpbGUgdHJ5aW5nIHRvIHJlYWQgJXMiCittc2dzdHIgImfhurdwIGTDsm5nIGtow7RuZyBjw7MgY2jhuqVtIGThu6l0IHRyb25nIGtoaSB0aOG7rSDEkeG7jWMgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGNvcnJ1cHQ6ICVzIgorbXNnc3RyICIlcyBi4buLIGjhu49uZzogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTUwCisjLCBjLWZvcm1hdAorbXNnaWQgIm5ld2xpbmVzIHByb2hpYml0ZWQgaW4gdXBkYXRlLWFsdGVybmF0aXZlcyBmaWxlcyAoJXMpIgorbXNnc3RyICIiCisia2jDtG5nIGNobyBwaMOpcCBrw70gdOG7sSBkw7JuZyBt4bubaSB0cm9uZyB04bqtcCB0aW4gwqsgdXBkYXRlLWFsdGVybmF0aXZlcyDCuyAoJXMpIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE2MworbXNnaWQgInNsYXZlIG5hbWUiCittc2dzdHIgInTDqm4gxJFp4buBdSBwaOG7pSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNzEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImR1cGxpY2F0ZSBzbGF2ZSAlcyIKK21zZ2lkICJkdXBsaWNhdGUgc2xhdmUgbmFtZSAlcyIKK21zZ3N0ciAixJFp4buBdSBwaOG7pSB0csO5bmcgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTc0Cittc2dpZCAic2xhdmUgbGluayIKK21zZ3N0ciAibGnDqm4ga+G6v3QgcGjhu6UiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTc4CisjLCBjLWZvcm1hdAorbXNnaWQgInNsYXZlIGxpbmsgc2FtZSBhcyBtYWluIGxpbmsgJXMiCittc2dzdHIgImxpw6puIGvhur90IHBo4bulIHbhuqtuIHRyw7luZyB24bubaSBsacOqbiBr4bq/dCBjaMOtbmggJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTg1IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDEyCisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBzbGF2ZSBsaW5rICVzIgorbXNnc3RyICJsacOqbiBr4bq/dCBwaOG7pSB0csO5bmcgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjA0Cittc2dpZCAibWFzdGVyIGZpbGUiCittc2dzdHIgInThuq1wIHRpbiBjaOG7pyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHBhdGggJXMiCittc2dzdHIgIsSRxrDhu51uZyBk4bqrbiB0csO5bmcgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjI2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJhbHRlcm5hdGl2ZSAlcyAocGFydCBvZiBsaW5rIGdyb3VwICVzKSBkb2Vzbid0IGV4aXN0LiBSZW1vdmluZyBmcm9tIGxpc3Qgb2YgIgorImFsdGVybmF0aXZlcy4iCittc2dzdHIgIiIKKyJz4buxIHhlbiBr4bq9ICVzIChwaOG6p24gY+G7p2EgbmjDs20gbGnDqm4ga+G6v3QgJXMpIGtow7RuZyB04buTbiB04bqhaS4gVsOsIHRo4bq/IMSRYW5nIGfhu6EgYuG7jyBuw7MgIgorImto4buPaSBkYW5oIHPDoWNoIGPDoWMgc+G7sSB4ZW4ga+G6vS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjI5IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjQwCittc2dpZCAicHJpb3JpdHkiCittc2dzdHIgIsawdSB0acOqbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMzIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyNDkKK21zZ2lkICJzbGF2ZSBmaWxlIgorbXNnc3RyICJ04bqtcCB0aW4gcGjhu6UiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjQ0CisjLCBjLWZvcm1hdAorbXNnaWQgInByaW9yaXR5IG9mICVzOiAlcyIKK21zZ3N0ciAixrB1IHRpw6puIGPhu6dhICVzOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyOTcKK21zZ2lkICJzdGF0dXMiCittc2dzdHIgInRy4bqhbmcgdGjDoWkiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjk5Cittc2dpZCAiaW52YWxpZCBzdGF0dXMiCittc2dzdHIgInRy4bqhbmcgdGjDoWkga2jDtG5nIGjhu6NwIGzhu4ciCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzA0Cittc2dpZCAibWFzdGVyIGxpbmsiCittc2dzdHIgImxpw6puIGvhur90IGNo4bunIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTM0OAorIywgYy1mb3JtYXQKK21zZ2lkICJkaXNjYXJkaW5nIG9ic29sZXRlIHNsYXZlIGxpbmsgJXMgKCVzKS4iCittc2dzdHIgIsSRYW5nIGjhu6d5IGxpw6puIGvhur90IHBo4bulIGPFqSAlcyAoJXMpLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MDIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NjkKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjM4Cittc2dpZCAiYXV0byBtb2RlIgorbXNnc3RyICJjaOG6vyDEkeG7mSB04buxIMSR4buZbmciCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTAyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTc4CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYzOQorbXNnaWQgIm1hbnVhbCBtb2RlIgorbXNnc3RyICJjaOG6vyDEkeG7mSBi4bqxbmcgdGF5IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwNQorIywgYy1mb3JtYXQKK21zZ2lkICIgIGxpbmsgY3VycmVudGx5IHBvaW50cyB0byAlcyIKK21zZ3N0ciAiICBsacOqbiBr4bq/dCBoaeG7h24gdGjhu51pIGNo4buJIHThu5tpICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwOAorbXNnaWQgIiAgbGluayBjdXJyZW50bHkgYWJzZW50IgorbXNnc3RyICIgIGhp4buHbiB0aOG7nWkga2jDtG5nIGPDsyBsacOqbiBr4bq/dCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgLSBwcmlvcml0eSAlZCIKK21zZ3N0ciAiJXMg4oCUIMawdSB0acOqbiAlZCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBzbGF2ZSAlczogJXMiCittc2dzdHIgIiAgcGjhu6UgJXM6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUyMgorIywgYy1mb3JtYXQKK21zZ2lkICJDdXJyZW50ICdiZXN0JyB2ZXJzaW9uIGlzICclcycuIgorbXNnc3RyICJQaGnDqm4gYuG6o24gwqsgdOG7kXQgbmjhuqV0IMK7IGhp4buHbiB0aOG7nWkgbMOgIMKrICVzIMK7LiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MjQKK21zZ2lkICJObyB2ZXJzaW9ucyBhdmFpbGFibGUuIgorbXNnc3RyICJLaMO0bmcgY8OzIHBoacOqbiBi4bqjbiBz4bq1biBzw6BuZy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTUzCisjLCBjLWZvcm1hdAorbXNnaWQgIlRoZXJlIGlzICVkIGNob2ljZSBmb3IgdGhlIGFsdGVybmF0aXZlICVzIChwcm92aWRpbmcgJXMpLiIKK21zZ2lkX3BsdXJhbCAiVGhlcmUgYXJlICVkIGNob2ljZXMgZm9yIHRoZSBhbHRlcm5hdGl2ZSAlcyAocHJvdmlkaW5nICVzKS4iCittc2dzdHJbMF0gIkPDsyAlZCBz4buxIGNo4buNbiBjaG8gc+G7sSB4ZW4ga+G6vSAlcyAoxJFhbmcgY3VuZyBj4bqlcCAlcykuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2MAorbXNnaWQgIlNlbGVjdGlvbiIKK21zZ3N0ciAiTOG7sWEgY2jhu41uIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2MQorbXNnaWQgIlBhdGgiCittc2dzdHIgIsSQxrDhu51uZyBk4bqrbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NjEKK21zZ2lkICJQcmlvcml0eSIKK21zZ3N0ciAixq91IHRpw6puIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2MQorbXNnaWQgIlN0YXR1cyIKK21zZ3N0ciAiVHLhuqFuZyB0aMOhaSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHJlc3MgZW50ZXIgdG8ga2VlcCB0aGUgY3VycmVudCBjaG9pY2VbKl0sIG9yIHR5cGUgc2VsZWN0aW9uIG51bWJlcjogIgorbXNnc3RyICIiCisiQuG6pW0gcGjDrW0gRW50ZXIgxJHhu4MgZ2nhu68gbOG6oWkgZ2nDoSB0cuG7iyBt4bq3YyDEkeG7i25oWypdLCBob+G6t2MgZ8O1IHPhu5EgdGjhu6kgdOG7sSBs4buxYSBjaOG7jW46ICIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3MjEKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IHJlcGxhY2luZyAlcyB3aXRoIGEgbGluay4iCittc2dzdHIgImtow7RuZyBwaOG6o2kgdGhheSB0aOG6vyAlcyBi4bqxbmcgbeG7mXQgbGnDqm4ga+G6v3QuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTc2MgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW4ndCBpbnN0YWxsIHVua25vd24gY2hvaWNlICVzIgorbXNnc3RyICJraMO0bmcgdGjhu4MgY8OgaSDEkeG6t3Qgc+G7sSBjaOG7jW4ga2jDtG5nIHLDtSAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInNraXAgY3JlYXRpb24gb2YgJXMgYmVjYXVzZSBhc3NvY2lhdGVkIGZpbGUgJXMgKG9mIGxpbmsgZ3JvdXAgJXMpIGRvZXNuJ3QgIgorImV4aXN0LiIKK21zZ3N0ciAiIgorImLhu48gcXVhIGLGsOG7m2MgdOG6oW8gJXMsIHbDrCB04bqtcCB0aW4gbGnDqm4gcXVhbiAlcyAoY+G7p2EgbmjDs20gbGnDqm4ga+G6v3QgJXMpIGtow7RuZyB04buTbiAiCisidOG6oWkuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTc5MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAibm90IHJlcGxhY2luZyAlcyB3aXRoIGEgbGluay4iCittc2dpZCAibm90IHJlbW92aW5nICVzIHNpbmNlIGl0J3Mgbm90IGEgc3ltbGluay4iCittc2dzdHIgImtow7RuZyBwaOG6o2kgdGhheSB0aOG6vyAlcyBi4bqxbmcgbeG7mXQgbGnDqm4ga+G6v3QuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA0MSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA0NworIywgYy1mb3JtYXQKK21zZ2lkICJDYWxsICVzLiIKK21zZ3N0ciAiR+G7jWkgJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA1MQorIywgYy1mb3JtYXQKK21zZ2lkICJBbHRlcm5hdGl2ZSAlcyB1bmNoYW5nZWQgYmVjYXVzZSBjaG9pY2UgJXMgaXMgbm90IGF2YWlsYWJsZS4iCittc2dzdHIgIlPhu7EgeGVuIGvhur0gJXMgY2jGsGEgdGhheSDEkeG7lWkgdsOsIHPhu7EgY2jhu41uICVzIGtow7RuZyBz4bq1biBzw6BuZy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDU1CisjLCBjLWZvcm1hdAorbXNnaWQgIlNraXAgdW5rbm93biBhbHRlcm5hdGl2ZSAlcy4iCittc2dzdHIgIkLhu48gcXVhIHPhu7EgeGVuIGvhur0ga2jDtG5nIHLDtSAlcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDc3CisjLCBjLWZvcm1hdAorbXNnaWQgImxpbmUgdG9vIGxvbmcgb3Igbm90IHRlcm1pbmF0ZWQgd2hpbGUgdHJ5aW5nIHRvIHJlYWQgJXMiCittc2dzdHIgImfhurdwIGTDsm5nIHF1w6EgZMOgaSBob+G6t2MgZMOybmcga2jDtG5nIGPDsyBjaOG6pW0gZOG7qXQsIHRyb25nIGtoaSB0aOG7rSDEkeG7jWMgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDkwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTAzCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjExMworIywgYy1mb3JtYXQKK21zZ2lkICJTa2lwIGludmFsaWQgbGluZTogJXMiCittc2dzdHIgIkLhu48gcXVhIGTDsm5nIHNhaTogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTMyCisjLCBjLWZvcm1hdAorbXNnaWQgInJlbmFtaW5nICVzIGxpbmsgZnJvbSAlcyB0byAlcy4iCittc2dzdHIgIsSRYW5nIHRoYXkgxJHhu5VpIHTDqm4gbGnDqm4ga+G6v3QgJXMgdOG7qyAlcyB0aMOgbmggJXMuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE3MworIywgYy1mb3JtYXQKK21zZ2lkICJyZW5hbWluZyAlcyBzbGF2ZSBsaW5rIGZyb20gJXMgdG8gJXMuIgorbXNnc3RyICLEkWFuZyB0aGF5IMSR4buVaSB0w6puIGxpw6puIGvhur90IHBo4bulICVzIHThu6sgJXMgdGjDoG5oICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgbmFtZSAoJXMpIG11c3Qgbm90IGNvbnRhaW4gJy8nIGFuZCBzcGFjZXMuIgorbXNnc3RyICJ0w6puIHhlbiBr4bq9ICglcykga2jDtG5nIHRo4buDIGNo4bupYSBk4bqldSB4dXnhu4djIMKrIC8gwrsgaG/hurdjIGThuqV1IGPDoWNoLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgbGluayBpcyBub3QgYWJzb2x1dGUgYXMgaXQgc2hvdWxkIGJlOiAlcyIKK21zZ3N0ciAibGnDqm4ga+G6v3QgeGVuIGvhur0ga2jDtG5nIHBo4bqjaSB0dXnhu4d0IMSR4buRaSBuaMawIHnDqnUgY+G6p3UgOiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxOTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgcGF0aCBpcyBub3QgYWJzb2x1dGUgYXMgaXQgc2hvdWxkIGJlOiAlcyIKK21zZ3N0ciAixJHGsOG7nW5nIGThuqtuIHhlbiBr4bq9IGtow7RuZyBwaOG6o2kgdHV54buHdCDEkeG7kWkgbmjGsCB5w6p1IGPhuqd1IDogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjI0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBtYXN0ZXI6ICVzIgorbXNnaWQgImFsdGVybmF0aXZlICVzIGNhbid0IGJlIG1hc3RlcjogaXQgaXMgYSBzbGF2ZSBvZiAlcyIKK21zZ3N0ciAic+G7sSB4ZW4ga+G6vSAlcyBraMO0bmcgdGjhu4MgbMOgIGNo4bunIDogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjMyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjY3CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIGxpbmsgJXMgaXMgYWxyZWFkeSBtYW5hZ2VkIGJ5ICVzLiIKK21zZ3N0ciAibGnDqm4ga+G6v3QgeGVuIGvhur0gJXMgxJHDoyDEkcaw4bujYyAlcyBxdeG6o24gbMO9LiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgcGF0aCAlcyBkb2Vzbid0IGV4aXN0LiIKK21zZ3N0ciAixJHGsOG7nW5nIGThuqtuIHhlbiBr4bq9ICVzIGtow7RuZyB04buTbiB04bqhaS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjU0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBzbGF2ZSBvZiAlczogJXMiCittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgc2xhdmUgb2YgJXM6IGl0IGlzIGEgbWFzdGVyIGFsdGVybmF0aXZlLiIKK21zZ3N0ciAic+G7sSB4ZW4ga+G6vSAlcyBraMO0bmcgdGjhu4MgbMOgIMSRaeG7gXUgcGjhu6UgY+G7p2EgJXM6ICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI1OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgbWFzdGVyOiAlcyIKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBzbGF2ZSBvZiAlczogaXQgaXMgYSBzbGF2ZSBvZiAlcyIKK21zZ3N0ciAic+G7sSB4ZW4ga+G6vSAlcyBraMO0bmcgdGjhu4MgbMOgIGNo4bunIDogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjc4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJhbHRlcm5hdGl2ZSBsaW5rICVzIGlzIGFscmVhZHkgbWFuYWdlZCBieSAlcy4iCittc2dpZCAiYWx0ZXJuYXRpdmUgbGluayAlcyBpcyBhbHJlYWR5IG1hbmFnZWQgYnkgJXMgKHNsYXZlIG9mICVzKS4iCittc2dzdHIgImxpw6puIGvhur90IHhlbiBr4bq9ICVzIMSRw6MgxJHGsOG7o2MgJXMgcXXhuqNuIGzDvS4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzI0CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gYXJndW1lbnQgYCVzJyIKK21zZ3N0ciAia2jDtG5nIHLDtSDEkeG7kWkgc+G7kSDCqyAlcyDCuyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNDMKK21zZ2lkICItLWluc3RhbGwgbmVlZHMgPGxpbms+IDxuYW1lPiA8cGF0aD4gPHByaW9yaXR5PiIKK21zZ3N0ciAiwqsgLS1pbnN0YWxsIMK7IChjw6BpIMSR4bq3dCkgecOqdSBj4bqndSA8bGnDqm5fa+G6v3Q+IDx0w6puPiA8xJHGsOG7nW5nX2ThuqtuPiA8xrB1X3Rpw6puPiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNDYgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzOTcKK21zZ2lkICI8bGluaz4gYW5kIDxwYXRoPiBjYW4ndCBiZSB0aGUgc2FtZSIKK21zZ3N0ciAiPGxpw6puX2vhur90PiB2w6AgPMSRxrDhu51uZ19k4bqrbj4ga2jDtG5nIHRo4buDIGzDoCB0csO5bmcgbmhhdSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNDkKK21zZ2lkICJwcmlvcml0eSBtdXN0IGJlIGFuIGludGVnZXIiCittc2dzdHIgIsKrIMawdSB0acOqbiDCuyBwaOG6o2kgbMOgIG3hu5l0IHPhu5Egbmd1ecOqbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyA8bmFtZT4gPHBhdGg+IgorbXNnc3RyICLCqyAtLSVzIMK7IHnDqnUgY+G6p3UgPHTDqm4+IDzEkcaw4budbmdfZOG6q24+IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM3NgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIDxuYW1lPiIKK21zZ3N0ciAiwqsgLS0lcyDCuyB5w6p1IGPhuqd1IDx0w6puPiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzODgKK21zZ2lkICItLXNsYXZlIG9ubHkgYWxsb3dlZCB3aXRoIC0taW5zdGFsbCIKK21zZ3N0ciAiY2hvIHBow6lwIMKrIC0tc2xhdmUgwrsgKHBo4bulKSBjaOG7iSB24bubaSDCqyAtLWluc3RhbGwgwrsgKGPDoGkgxJHhurd0KSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzOTAKK21zZ2lkICItLXNsYXZlIG5lZWRzIDxsaW5rPiA8bmFtZT4gPHBhdGg+IgorbXNnc3RyICLCqyAtLXNsYXZlIMK7IChwaOG7pSkgecOqdSBj4bqndSA8bGnDqm5fa+G6v3Q+IDx0w6puPiA8xJHGsOG7nW5nX2ThuqtuPiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzOTkKKyMsIGMtZm9ybWF0Cittc2dpZCAibmFtZSAlcyBpcyBib3RoIHByaW1hcnkgYW5kIHNsYXZlIgorbXNnc3RyICJ0w6puICVzIGzDoCBj4bqjIGhhaSBraeG7g3UgY2jDrW5oIHbDoCBwaOG7pSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAibGluayAlcyBpcyBib3RoIHByaW1hcnkgYW5kIHNsYXZlIgorbXNnc3RyICJsacOqbiBr4bq/dCAlcyBsw6AgY+G6oyBoYWkga2nhu4N1IGNow61uaCB2w6AgcGjhu6UiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDIyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSA8ZmlsZT4gYXJndW1lbnQiCittc2dzdHIgIsKrIC0tJXMgwrsgecOqdSBj4bqndSBt4buZdCDEkeG7kWkgc+G7kSA8dOG7h3A+IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQ0OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiBgJXMnIgorbXNnc3RyICJraMO0bmcgcsO1IHTDuXkgY2jhu41uIMKrICVzIMK7IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQ1MworbXNnaWQgIiIKKyJuZWVkIC0tZGlzcGxheSwgLS1xdWVyeSwgLS1saXN0LCAtLWdldC1zZWxlY3Rpb25zLCAtLWNvbmZpZywgLS1zZXQsIC0tc2V0LSIKKyJzZWxlY3Rpb25zLCAtLWluc3RhbGwsIC0tcmVtb3ZlLCAtLWFsbCwgLS1yZW1vdmUtYWxsIG9yIC0tYXV0byIKK21zZ3N0ciAiIgorInnDqnUgY+G6p3UgOlxuIgorIiDigKIgLS1kaXNwbGF5XHRcdGhp4buDbiB0aOG7i1xuIgorIiDigKIgLS1xdWVyeVx0XHR0cnV5IHbhuqVuXG4iCisiIOKAoiAtLWxpc3RcdFx0bGnhu4d0IGvDqlxuIgorIiDigKIgLS1nZXQtc2VsZWN0aW9uc1x0XHRs4bqleSBjw6FjIGzhu7FhIGNo4buNblxuIgorIiDigKIgLS1jb25maWdcdFx0Y+G6pXUgaMOsbmhcbiIKKyIg4oCiIC0tc2V0XHRcdFx0xJHhurd0XG4iCisiIOKAoiAtLXNldC1zZWxlY3Rpb25zXHRcdGzhuq1wIGPDoWMgbOG7sWEgY2jhu41uXG4iCisiIOKAoi0taW5zdGFsbFx0XHRjw6BpIMSR4bq3dFxuIgorIiDigKItLXJlbW92ZSBcdFx0Z+G7oSBi4buPXG4iCisiIOKAoi0tYWxsXHRcdFx0dOG6pXQgY+G6o1xuIgorIiDigKItLXJlbW92ZS1hbGwgXHRn4buhIGLhu48gdOG6pXQgY+G6o1xuIgorIiDigKItLWF1dG9cdFx0XHR04buxIMSR4buZbmciCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDkwCittc2dpZCAiPHN0YW5kYXJkIGlucHV0PiIKK21zZ3N0ciAiPMSR4bqndSB2w6BvIHRpw6p1IGNodeG6qW4+IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUwMCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUwMworIywgYy1mb3JtYXQKK21zZ2lkICJubyBhbHRlcm5hdGl2ZXMgZm9yICVzLiIKK21zZ3N0ciAia2jDtG5nIGPDsyBz4buxIHhlbiBr4bq9IG7DoG8gY2hvICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MzAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiVzIGlzIGRhbmdsaW5nLCBpdCB3aWxsIGJlIHVwZGF0ZWQgd2l0aCBiZXN0IGNob2ljZS4iCittc2dpZCAiJXMvJXMgaXMgZGFuZ2xpbmcsIGl0IHdpbGwgYmUgdXBkYXRlZCB3aXRoIGJlc3QgY2hvaWNlLiIKK21zZ3N0ciAiJXMgduG6q24gdHJlbywgbsOzIHPhur0gxJHGsOG7o2MgY+G6rXAgbmjhuq10IGTDuW5nIHPhu7EgY2jhu41uIHThu5F0IG5o4bqldCBz4bq1biBzw6BuZy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTM0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiJXMgaGFzIGJlZW4gY2hhbmdlZCAobWFudWFsbHkgb3IgYnkgYSBzY3JpcHQpLiBTd2l0Y2hpbmcgdG8gbWFudWFsICIKKyN8ICJ1cGRhdGVzIG9ubHkuIgorbXNnaWQgIiIKKyIlcy8lcyBoYXMgYmVlbiBjaGFuZ2VkIChtYW51YWxseSBvciBieSBhIHNjcmlwdCkuIFN3aXRjaGluZyB0byBtYW51YWwgIgorInVwZGF0ZXMgb25seS4iCittc2dzdHIgIiIKKyIlcyDEkcOjIGLhu4sgdGhheSDEkeG7lWkgKGLhurFuZyB0YXkgaG/hurdjIGLhurFuZyB2xINuIGzhu4duaCkgbsOqbiBjaHV54buDbiDEkeG7lWkgc2FuZyBjaOG7iSB2aeG7h2MgIgorImPhuq1wIG5o4bqtdCBi4bqxbmcgdGF5LiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NDIKKyMsIGMtZm9ybWF0Cittc2dpZCAic2V0dGluZyB1cCBhdXRvbWF0aWMgc2VsZWN0aW9uIG9mICVzLiIKK21zZ3N0ciAixJFhbmcgdGhp4bq/dCBs4bqtcCB2aeG7h2MgdOG7sSDEkeG7mW5nIGNo4buNbiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgZm9yICVzIG5vdCByZWdpc3RlcmVkLCBub3Qgc2V0dGluZy4iCittc2dzdHIgInPhu7EgeGVuIGvhur0gJXMgY2hvICVzIGtow7RuZyDEkcaw4bujYyDEkcSDbmcga8O9IG7Dqm4ga2jDtG5nIGzhuq1wLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NTcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiVGhlcmUgaXMgbm8gcHJvZ3JhbSB3aGljaCBwcm92aWRlcyAlcy4iCittc2dzdHIgIktow7RuZyBjw7MgY2jGsMahbmcgdHLDrG5oIG7DoG8gY3VuZyBj4bqlcCAlcy4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTY1IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTc1Cittc2dpZCAiTm90aGluZyB0byBjb25maWd1cmUuIgorbXNnc3RyICJLaMO0bmcgY8OzIGfDrCBj4bqnbiBj4bqldSBow6xuaC4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTczCisjLCBjLWZvcm1hdAorbXNnaWQgIlRoZXJlIGlzIG9ubHkgb25lIGFsdGVybmF0aXZlIGluIGxpbmsgZ3JvdXAgJXM6ICVzIgorbXNnc3RyICJDaOG7iSBjw7MgbeG7mXQgc+G7sSB4ZW4ga+G6vSB0cm9uZyBuaMOzbSBsacOqbiBr4bq/dCAlczogJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTg0CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlICVzIGZvciAlcyBub3QgcmVnaXN0ZXJlZCwgbm90IHJlbW92aW5nLiIKK21zZ3N0ciAic+G7sSB4ZW4ga+G6vSAlcyBjaG8gJXMga2jDtG5nIMSRxrDhu6NjIMSRxINuZyBrw70gbsOqbiBraMO0bmcgZ+G7oSBi4buPLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1OTIKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVtb3ZpbmcgbWFudWFsbHkgc2VsZWN0ZWQgYWx0ZXJuYXRpdmUgLSBzd2l0Y2hpbmcgJXMgdG8gYXV0byBtb2RlIgorbXNnc3RyICIiCisixJFhbmcgZ+G7oSBi4buPIHPhu7EgeGVuIGvhur0gxJHGsOG7o2MgY2jhu41uIGLhurFuZyB0YXkg4oCUIMSRYW5nIGNodXnhu4NuIMSR4buVaSAlcyBzYW5nIGNo4bq/IMSR4buZIHThu7EgIgorIsSR4buZbmciCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjE3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJhdXRvbWF0aWMgdXBkYXRlcyBvZiAlcyBhcmUgZGlzYWJsZWQsIGxlYXZpbmcgaXQgYWxvbmUuIgorbXNnaWQgImF1dG9tYXRpYyB1cGRhdGVzIG9mICVzLyVzIGFyZSBkaXNhYmxlZCwgbGVhdmluZyBpdCBhbG9uZS4iCittc2dzdHIgImto4bqjIG7Eg25nIHThu7EgxJHhu5luZyBj4bqtcCBuaOG6rXQgJXMgYuG7iyB04bqvdCBuw6puIGtow7RuZyBsw6BtIGfDrC4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjE5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ0byByZXR1cm4gdG8gYXV0b21hdGljIHVwZGF0ZXMgdXNlIGB1cGRhdGUtYWx0ZXJuYXRpdmVzIC0tYXV0byAlcycuIgorbXNnaWQgInRvIHJldHVybiB0byBhdXRvbWF0aWMgdXBkYXRlcyB1c2UgJyVzIC0tYXV0byAlcycuIgorbXNnc3RyICIiCisixJHhu4MgYuG6rXQgbOG6oWkga2jhuqMgbsSDbmcgdOG7sSDEkeG7mW5nIGPhuq1wIG5o4bqtdCwgaMOjeSBkw7luZyBs4buHbmggwqsgdXBkYXRlLWFsdGVybmF0aXZlcyAtLSIKKyJhdXRvICVzIMK7LiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MzYKKyMsIGMtZm9ybWF0Cittc2dpZCAidXNpbmcgJXMgdG8gcHJvdmlkZSAlcyAoJXMpIGluICVzLiIKK21zZ3N0ciAixJFhbmcgZMO5bmcgwqsgJXMgwrsgxJHhu4MgY3VuZyBj4bqlcCAlcyAoJXMpIHRyb25nICVzLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImZvcmNpbmcgcmVpbnN0YWxsYXRpb24gb2YgYWx0ZXJuYXRpdmUgJXMgYmVjYXVzZSBsaW5rIGdyb3VwICVzIGlzIGJyb2tlbi4iCittc2dzdHIgIsSRYW5nIMOpcCBideG7mWMgY8OgaSDEkeG6t3QgbOG6oWkgc+G7sSB4ZW4ga+G6vSAlcyB2w6wgbmjDs20gbGnDqm4ga+G6v3QgJXMgYuG7iyBo4buPbmcuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjY1MQorIywgYy1mb3JtYXQKK21zZ2lkICJjdXJyZW50IGFsdGVybmF0aXZlICVzIGlzIHVua25vd24sIHN3aXRjaGluZyB0byAlcyBmb3IgbGluayBncm91cCAlcy4iCittc2dzdHIgIiIKKyJraMO0bmcgcsO1IHPhu7EgeGVuIGvhur0gaGnhu4duIHRo4budaSAlcyBuw6puIGNodXnhu4NuIMSR4buVaSBzYW5nICVzIGNobyBuaMOzbSBsacOqbiBr4bq/dCAlcy4iCisKKyN+IG1zZ2lkICJpdCBpcyBhIG1hc3RlciBhbHRlcm5hdGl2ZS4iCisjfiBtc2dzdHIgIm7DsyBsw6AgbeG7mXQgc+G7sSB4ZW4ga+G6vSBjaOG7py4iCisKKyN+IG1zZ2lkICJpdCBpcyBhIHNsYXZlIG9mICVzIgorI34gbXNnc3RyICJsw6AgbeG7mXQgxJFp4buBdSBwaOG7pSBj4bunYSAlcyIKKworI34gbXNnaWQgImNhbm5vdCBzdGF0ICVzOiAlcyIKKyN+IG1zZ3N0ciAia2jDtG5nIHRo4buDIGzhuqV5IHRy4bqhbmcgdGjDoWkgduG7gSAlczogJXMiCisKKyN+IG1zZ2lkICJyZWFkbGluayglcykgZmFpbGVkOiAlcyIKKyN+IG1zZ3N0ciAicmVhZGxpbmsoJXMpIGLhu4sgbOG7l2k6ICVzIgorCisjfiBtc2dpZCAic2NhbiBvZiAlcyBmYWlsZWQ6ICVzIgorI34gbXNnc3RyICJs4buXaSBxdcOpdCAlczogJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlY3V0ZSAlczogJXMiCisjfiBtc2dzdHIgImzhu5dpIHRo4buxYyBoaeG7h24gJXM6ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIG1ha2UgJXMgYSBzeW1saW5rIHRvICVzOiAlcyIKKyN+IG1zZ3N0ciAia2jDtG5nIHRo4buDIGzDoG0gY2hvICVzIGzDoCBsacOqbiBr4bq/dCB0xrDhu6NuZyB0csawbmcgxJHhur9uICVzOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsICVzIGFzICVzOiAlcyIKKyN+IG1zZ3N0ciAia2jDtG5nIHRo4buDIGPDoGkgxJHhurd0ICVzIG5oxrAgbMOgICVzOiAlcyIKKworI34gbXNnaWQgIndoaWxlIHdyaXRpbmcgJXM6ICVzIgorI34gbXNnc3RyICJ0cm9uZyBraGkgZ2hpIG5o4bubICVzOiAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byByZWFkICVzOiAlcyIKKyN+IG1zZ3N0ciAia2jDtG5nIHRo4buDIMSR4buNYyAlczogJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gY2xvc2UgJXM6ICVzIgorI34gbXNnc3RyICJraMO0bmcgdGjhu4MgxJHDs25nICVzOiAlcyIKKworI34gbXNnaWQgImNhbm5vdCB3cml0ZSAlczogJXMiCisjfiBtc2dzdHIgImtow7RuZyB0aOG7gyBnaGkgJXM6ICVzIgorCisjLCBmdXp6eQorI358IG1zZ2lkICJ1bmFibGUgdG8gb3BlbiBmaWxlICclcyciCisjfiBtc2dpZCAidW5hYmxlIHRvIHJlbmFtZSBmaWxlICclcycgdG8gJyVzJyIKKyN+IG1zZ3N0ciAia2jDtG5nIHRo4buDIG3hu58gdOG6rXAgdGluIMKrICVzIMK7IgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHVuYnVmZmVyIGAlLjI1NXMnIgorI34gbXNnc3RyICJraMO0bmcgdGjhu4MgaOG7p3kgY2h1eeG7g24gaG/DoW4gxJHhu4dtIMKrICUuMjU1cyDCuyIKKworI34gbXNnaWQgInBhcnQgZmlsZSBgJS4yNTBzJyBoYXMgdHJhaWxpbmcgZ2FyYmFnZSIKKyN+IG1zZ3N0ciAidOG6rXAgdGluIHBo4bqnbiDCqyAlLjI1MHMgwrsgY8OzIHLDoWMgdGhlbyBzYXUiCisKKyN+IG1zZ2lkICJzaXplICU3ZCBvY2N1cnMgJTVkIHRpbWVzXG4iCisjfiBtc2dzdHIgImvDrWNoIGPhu6EgJTdkIHh14bqldCBoaeG7h24gJTVkIGzhuqduXG4iCisKKyN+IG1zZ2lkICJvdXQgb2YgbWVtb3J5IHB1c2hpbmcgZXJyb3IgaGFuZGxlcjogIgorI34gbXNnc3RyICJo4bq/dCBi4buZIG5o4bubIGtoaSDEkeG6p3kgYuG7mSBxdeG6o24gbMO9IGzhu5dpOiAiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gdW5sb2NrIGRwa2cgc3RhdHVzIGRhdGFiYXNlIgorI34gbXNnc3RyICJraMO0bmcgdGjhu4MgbeG7nyBraMOzYSBjxqEgc+G7nyBk4buvIGxp4buHdSB0cuG6oW5nIHRow6FpIGPhu6dhIGRwa2ciCisKKyN+IG1zZ2lkICJjb3B5IGluZm8gZmlsZSBgJS4yNTVzJyIKKyN+IG1zZ3N0ciAic2FvIGNow6lwIHThuq1wIHRpbiB0aMO0bmcgdGluIMKrICUuMjU1cyDCuyIKKworI34gbXNnaWQgInBhcnNlIGVycm9yIgorI34gbXNnc3RyICJs4buXaSBwaMOibiB0w61jaCBjw7ogcGjDoXAiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gd3JpdGUgcGFyc2luZyB3YXJuaW5nIgorI34gbXNnc3RyICJs4buXaSBnaGkgY+G6o25oIGLDoW8gduG7gSBwaMOibiB0w61jaCIKKworI34gbXNnaWQgInVuYWJsZSB0byBsb2NrIHRyaWdnZXJzIGFyZWEiCisjfiBtc2dzdHIgImtow7RuZyB0aOG7gyBraG/DoSB2w7luZyBi4buZIGfDonkgbsOqbiIKKworI34gbXNnaWQgImZhaWxlZCB0byBydW4gJXMgKCUuMjUwcykiCisjfiBtc2dzdHIgImzhu5dpIGNo4bqheSAlcyAoJS4yNTBzKSIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIHNoZWxsICglLjI1MHMpIgorI34gbXNnc3RyICJs4buXaSB0aOG7sWMgaGnhu4duIHRyw6xuaCBiYW8gKCUuMjUwcykiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gY2hlY2sgZm9yIGV4aXN0ZW5jZSBvZiBgJS4yNTBzJyIKKyN+IG1zZ3N0ciAia2jDtG5nIHRo4buDIGtp4buDbSB0cmEgc+G7sSB04buTbiB04bqhaSBj4bunYSDCqyAlLjI1MHMgwrsiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBybSBmb3IgY2xlYW51cCIKKyN+IG1zZ3N0ciAibOG7l2kgdGjhu7FjIGhp4buHbiBybSAoZ+G7oSBi4buPKSDEkeG7gyBk4buNbiBk4bq5cCIKKworI34gbXNnaWQgIiIKKyN+ICIlcyBkZWJ1Z2dpbmcgb3B0aW9uLCAtLWRlYnVnPTxvY3RhbD4gb3IgLUQ8b2N0YWw+OlxuIgorI34gIlxuIgorI34gIiBudW1iZXIgIHJlZi4gaW4gc291cmNlICAgZGVzY3JpcHRpb25cbiIKKyN+ICIgICAgICAxICAgZ2VuZXJhbCAgICAgICAgICAgR2VuZXJhbGx5IGhlbHBmdWwgcHJvZ3Jlc3MgaW5mb3JtYXRpb25cbiIKKyN+ICIgICAgICAyICAgc2NyaXB0cyAgICAgICAgICAgSW52b2NhdGlvbiBhbmQgc3RhdHVzIG9mIG1haW50YWluZXIgc2NyaXB0c1xuIgorI34gIiAgICAgMTAgICBlYWNoZmlsZSAgICAgICAgICBPdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWRcbiIKKyN+ICIgICAgMTAwICAgZWFjaGZpbGVkZXRhaWwgICAgTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWRcbiIKKyN+ICIgICAgIDIwICAgY29uZmYgICAgICAgICAgICAgT3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZVxuIgorI34gIiAgICAyMDAgICBjb25mZmRldGFpbCAgICAgICBMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGVcbiIKKyN+ICIgICAgIDQwICAgZGVwY29uICAgICAgICAgICAgRGVwZW5kZW5jaWVzIGFuZCBjb25mbGljdHNcbiIKKyN+ICIgICAgNDAwICAgZGVwY29uZGV0YWlsICAgICAgTG90cyBvZiBkZXBlbmRlbmNpZXMvY29uZmxpY3RzIG91dHB1dFxuIgorI34gIiAgMTAwMDAgICB0cmlnZ2VycyAgICAgICAgICBUcmlnZ2VyIGFjdGl2YXRpb24gYW5kIHByb2Nlc3NpbmdcbiIKKyN+ICIgIDIwMDAwICAgdHJpZ2dlcnNkZXRhaWwgICAgTG90cyBvZiBvdXRwdXQgcmVnYXJkaW5nIHRyaWdnZXJzXG4iCisjfiAiICA0MDAwMCAgIHRyaWdnZXJzc3R1cGlkICAgIFNpbGx5IGFtb3VudHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2Vyc1xuIgorI34gIiAgIDEwMDAgICB2ZXJ5dmVyYm9zZSAgICAgICBMb3RzIG9mIGRyaXZlbCBhYm91dCBlZyB0aGUgZHBrZy9pbmZvICIKKyN+ICJkaXJlY3RvcnlcbiIKKyN+ICIgICAyMDAwICAgc3R1cGlkbHl2ZXJib3NlICAgSW5zYW5lIGFtb3VudHMgb2YgZHJpdmVsXG4iCisjfiAiXG4iCisjfiAiRGVidWdnaW5nIG9wdGlvbnMgYXJlIGJlIG1peGVkIHVzaW5nIGJpdHdpc2Utb3IuXG4iCisjfiAiTm90ZSB0aGF0IHRoZSBtZWFuaW5ncyBhbmQgdmFsdWVzIGFyZSBzdWJqZWN0IHRvIGNoYW5nZS5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIlTDuXkgY2jhu41uIGfhu6EgbOG7l2kgJXMsIMKrIC0tZGVidWc9PGLDoXRfcGjDom4+IMK7IGhheSDCqyAtRDxiw6F0X3Bow6JuPiDCuzpcbiIKKyN+ICJcbiIKKyN+ICIgICBz4buRICAgIHRoYW0gY2hp4bq/dSB0cm9uZyBuZ3Xhu5NuICBcdFx0bcO0IHThuqNcbiIKKyN+ICIgICAgICAxICAgZ2VuZXJhbCAgICAgICAgICAgXHRcdFx0VGjDtG5nIHRpbiB0aeG6v24gaMOgbmggaOG7r3Ugw61jaCBjaHVuZ1xuIgorI34gIiAgICAgIDIgICBzY3JpcHRzICAgICAgICAgICBcdEfhu41pIHbDoCB0cuG6oW5nIHRow6FpIGPhu6dhIGPDoWMgdsSDbiBs4buHbmggZHV5IHRyw6xcbiIKKyN+ICIgICAgIDEwICAgZWFjaGZpbGUgICAgICAgICAgXHRcdFx0S+G6v3QgeHXhuqV0IGNobyBt4buXaSB04bqtcCB0aW4gxJHGsOG7o2MgeOG7rSBsw71cbiIKKyN+ICIgICAgMTAwICAgZWFjaGZpbGVkZXRhaWwgICAgS+G6v3QgeHXhuqV0IGNoaSB0aeG6v3QgY2hvIG3hu5dpIHThuq1wIHRpbiDEkcaw4bujYyB44butIGzDvVxuIgorI34gIiAgICAgMjAgICBjb25mZiAgICAgICAgICAgICBcdFx0S+G6v3QgeHXhuqV0IGNobyBt4buXaSB04bqtcCB0aW4gY+G6pXUgaMOsbmhcbiIKKyN+ICIgICAgMjAwICAgY29uZmZkZXRhaWwgICAgICAgS+G6v3QgeHXhuqV0IGNoaSB0aeG6v3QgY2hvIG3hu5dpIHThuq1wIHRpbiBj4bqldSBow6xuaFxuIgorI34gIiAgICAgNDAgICBkZXBjb24gICAgICAgICAgICBcdFx0XHRcdFF1YW4gaOG7hyBwaOG7pSB0aHXhu5ljIHbDoCB4dW5nIMSR4buZdFxuIgorI34gIiAgICA0MDAgICBkZXBjb25kZXRhaWwgICAgIEvhur90IHh14bqldCBjaGkgdGnhur90IHbhu4EgcXVhbiBo4buHIHBo4bulIHRodeG7mWMgdsOgIHh1bmcgIgorI34gIsSR4buZdFxuIgorI34gIiAxMDAwMCAgIHRyaWdnZXJzICAgICAgICAgIEvDrWNoIGhv4bqhdCB2w6AgeOG7rSBsw70gYuG7mSBnw6J5IG7Dqm5cbiIKKyN+ICIgIDIwMDAwICAgdHJpZ2dlcnNkZXRhaWwgICAgUuG6pXQgbmhp4buBdSBjaGkgdGnhur90IHbhu4EgYuG7mSBnw6J5IG7Dqm5cbiIKKyN+ICIgIDQwMDAwICAgdHJpZ2dlcnNzdHVwaWQgICAgUXXDoSBuaGnhu4F1IGvhur90IHh14bqldCB24buBIGLhu5kgZ8OieSBuw6puXG4iCisjfiAiICAgMTAwMCAgIHZlcnl2ZXJib3NlICAgICAgIFLhuqV0IG5oaeG7gXUgY2hpIHRp4bq/dCB24buBIHYuZC4gdGjGsCBt4bulYyDCqyBkcGtnLyIKKyN+ICJpbmZvIMK7XG4iCisjfiAiICAgMjAwMCAgIHN0dXBpZGx5dmVyYm9zZSAgIFF1w6Egbmhp4buBdSBjaGkgdGnhur90XG4iCisjfiAiXG4iCisjfiAiVMO5eSBjaOG7jW4gZ+G7oSBy4buRaSBjw7MgdGjhu4MgZ+G7mXAgbOG6oWkgZMO5bmcgcGjDqXAgdG/DoW4gwqsgYml0d2lzZS1vciDCuy5cbiIKKyN+ICJDaMO6IMO9IHLhurFuZyBjw6FjIMO9IG5naMSpYSB2w6AgZ2nDoSB0cuG7iyB24bqrbiBjw7MgdGjhu4MgdGhheSDEkeG7lWkuXG4iCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgIiIKKyN+fCAiJXMgZm9yY2luZyBvcHRpb25zIC0gY29udHJvbCBiZWhhdmlvdXIgd2hlbiBwcm9ibGVtcyBmb3VuZDpcbiIKKyN+fCAiICB3YXJuIGJ1dCBjb250aW51ZTogIC0tZm9yY2UtPHRoaW5nPiw8dGhpbmc+LC4uLlxuIgorI358ICIgIHN0b3Agd2l0aCBlcnJvcjogICAgLS1yZWZ1c2UtPHRoaW5nPiw8dGhpbmc+LC4uLiB8IC0tbm8tZm9yY2UtIgorI358ICI8dGhpbmc+LC4uLlxuIgorI358ICIgRm9yY2luZyB0aGluZ3M6XG4iCisjfnwgIiAgYWxsIFshXSAgICAgICAgICAgICAgICBTZXQgYWxsIGZvcmNlIG9wdGlvbnNcbiIKKyN+fCAiICBkb3duZ3JhZGUgWypdICAgICAgICAgIFJlcGxhY2UgYSBwYWNrYWdlIHdpdGggYSBsb3dlciB2ZXJzaW9uXG4iCisjfnwgIiAgY29uZmlndXJlLWFueSAgICAgICAgICBDb25maWd1cmUgYW55IHBhY2thZ2Ugd2hpY2ggbWF5IGhlbHAgdGhpcyBvbmVcbiIKKyN+fCAiICBob2xkICAgICAgICAgICAgICAgICAgIFByb2Nlc3MgaW5jaWRlbnRhbCBwYWNrYWdlcyBldmVuIHdoZW4gb24gaG9sZFxuIgorI358ICIgIGJhZC1wYXRoICAgICAgICAgICAgICAgUEFUSCBpcyBtaXNzaW5nIGltcG9ydGFudCBwcm9ncmFtcywgcHJvYmxlbXMgIgorI358ICJsaWtlbHlcbiIKKyN+fCAiICBub3Qtcm9vdCAgICAgICAgICAgICAgIFRyeSB0byAoZGUpaW5zdGFsbCB0aGluZ3MgZXZlbiB3aGVuIG5vdCByb290XG4iCisjfnwgIiAgb3ZlcndyaXRlICAgICAgICAgICAgICBPdmVyd3JpdGUgYSBmaWxlIGZyb20gb25lIHBhY2thZ2Ugd2l0aCBhbm90aGVyXG4iCisjfnwgIiAgb3ZlcndyaXRlLWRpdmVydGVkICAgICBPdmVyd3JpdGUgYSBkaXZlcnRlZCBmaWxlIHdpdGggYW4gdW5kaXZlcnRlZCAiCisjfnwgInZlcnNpb25cbiIKKyN+fCAiICBiYWQtdmVyaWZ5ICAgICAgICAgICAgIEluc3RhbGwgYSBwYWNrYWdlIGV2ZW4gaWYgaXQgZmFpbHMgYXV0aGVudGljaXR5ICIKKyN+fCAiY2hlY2tcbiIKKyN+fCAiICBkZXBlbmRzLXZlcnNpb24gWyFdICAgIFR1cm4gZGVwZW5kZW5jeSB2ZXJzaW9uIHByb2JsZW1zIGludG8gd2FybmluZ3NcbiIKKyN+fCAiICBkZXBlbmRzIFshXSAgICAgICAgICAgIFR1cm4gYWxsIGRlcGVuZGVuY3kgcHJvYmxlbXMgaW50byB3YXJuaW5nc1xuIgorI358ICIgIGNvbmZuZXcgWyFdICAgICAgICAgICAgQWx3YXlzIHVzZSB0aGUgbmV3IGNvbmZpZyBmaWxlcywgZG9uJ3QgcHJvbXB0XG4iCisjfnwgIiAgY29uZm9sZCBbIV0gICAgICAgICAgICBBbHdheXMgdXNlIHRoZSBvbGQgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHRcbiIKKyN+fCAiICBjb25mZGVmIFshXSAgICAgICAgICAgIFVzZSB0aGUgZGVmYXVsdCBvcHRpb24gZm9yIG5ldyBjb25maWcgZmlsZXMgaWYgIgorI358ICJvbmVcbiIKKyN+fCAiICAgICAgICAgICAgICAgICAgICAgICAgIGlzIGF2YWlsYWJsZSwgZG9uJ3QgcHJvbXB0LiBJZiBubyBkZWZhdWx0IGNhbiAiCisjfnwgImJlIGZvdW5kLFxuIgorI358ICIgICAgICAgICAgICAgICAgICAgICAgICAgeW91IHdpbGwgYmUgcHJvbXB0ZWQgdW5sZXNzIG9uZSBvZiB0aGUgY29uZm9sZCAiCisjfnwgIm9yXG4iCisjfnwgIiAgICAgICAgICAgICAgICAgICAgICAgICBjb25mbmV3IG9wdGlvbnMgaXMgYWxzbyBnaXZlblxuIgorI358ICIgIGNvbmZtaXNzIFshXSAgICAgICAgICAgQWx3YXlzIGluc3RhbGwgbWlzc2luZyBjb25maWcgZmlsZXNcbiIKKyN+fCAiICBjb25mYXNrIFshXSAgICAgICAgICAgIE9mZmVyIHRvIHJlcGxhY2UgY29uZmlnIGZpbGVzIHdpdGggbm8gbmV3ICIKKyN+fCAidmVyc2lvbnNcbiIKKyN+fCAiICBicmVha3MgWyFdICAgICAgICAgICAgIEluc3RhbGwgZXZlbiBpZiBpdCB3b3VsZCBicmVhayBhbm90aGVyIHBhY2thZ2VcbiIKKyN+fCAiICBjb25mbGljdHMgWyFdICAgICAgICAgIEFsbG93IGluc3RhbGxhdGlvbiBvZiBjb25mbGljdGluZyBwYWNrYWdlc1xuIgorI358ICIgIGFyY2hpdGVjdHVyZSBbIV0gICAgICAgUHJvY2VzcyBldmVuIHBhY2thZ2VzIHdpdGggd3JvbmcgYXJjaGl0ZWN0dXJlXG4iCisjfnwgIiAgb3ZlcndyaXRlLWRpciBbIV0gICAgICBPdmVyd3JpdGUgb25lIHBhY2thZ2UncyBkaXJlY3Rvcnkgd2l0aCAiCisjfnwgImFub3RoZXIncyBmaWxlXG4iCisjfnwgIiAgcmVtb3ZlLXJlaW5zdHJlcSBbIV0gICBSZW1vdmUgcGFja2FnZXMgd2hpY2ggcmVxdWlyZSBpbnN0YWxsYXRpb25cbiIKKyN+fCAiICByZW1vdmUtZXNzZW50aWFsIFshXSAgIFJlbW92ZSBhbiBlc3NlbnRpYWwgcGFja2FnZVxuIgorI358ICJcbiIKKyN+fCAiV0FSTklORyAtIHVzZSBvZiBvcHRpb25zIG1hcmtlZCBbIV0gY2FuIHNlcmlvdXNseSBkYW1hZ2UgeW91ciAiCisjfnwgImluc3RhbGxhdGlvbi5cbiIKKyN+fCAiRm9yY2luZyBvcHRpb25zIG1hcmtlZCBbKl0gYXJlIGVuYWJsZWQgYnkgZGVmYXVsdC5cbiIKKyN+IG1zZ2lkICIiCisjfiAiJXMgZm9yY2luZyBvcHRpb25zIC0gY29udHJvbCBiZWhhdmlvdXIgd2hlbiBwcm9ibGVtcyBmb3VuZDpcbiIKKyN+ICIgIHdhcm4gYnV0IGNvbnRpbnVlOiAgLS1mb3JjZS08dGhpbmc+LDx0aGluZz4sLi4uXG4iCisjfiAiICBzdG9wIHdpdGggZXJyb3I6ICAgIC0tcmVmdXNlLTx0aGluZz4sPHRoaW5nPiwuLi4gfCAtLW5vLWZvcmNlLSIKKyN+ICI8dGhpbmc+LC4uLlxuIgorI34gIiBGb3JjaW5nIHRoaW5nczpcbiIKKyN+ICIgIGFsbCBbIV0gICAgICAgICAgICAgICAgU2V0IGFsbCBmb3JjZSBvcHRpb25zXG4iCisjfiAiICBkb3duZ3JhZGUgWypdICAgICAgICAgIFJlcGxhY2UgYSBwYWNrYWdlIHdpdGggYSBsb3dlciB2ZXJzaW9uXG4iCisjfiAiICBjb25maWd1cmUtYW55ICAgICAgICAgIENvbmZpZ3VyZSBhbnkgcGFja2FnZSB3aGljaCBtYXkgaGVscCB0aGlzIG9uZVxuIgorI34gIiAgaG9sZCAgICAgICAgICAgICAgICAgICBQcm9jZXNzIGluY2lkZW50YWwgcGFja2FnZXMgZXZlbiB3aGVuIG9uIGhvbGRcbiIKKyN+ICIgIGJhZC1wYXRoICAgICAgICAgICAgICAgUEFUSCBpcyBtaXNzaW5nIGltcG9ydGFudCBwcm9ncmFtcywgcHJvYmxlbXMgIgorI34gImxpa2VseVxuIgorI34gIiAgbm90LXJvb3QgICAgICAgICAgICAgICBUcnkgdG8gKGRlKWluc3RhbGwgdGhpbmdzIGV2ZW4gd2hlbiBub3Qgcm9vdFxuIgorI34gIiAgb3ZlcndyaXRlICAgICAgICAgICAgICBPdmVyd3JpdGUgYSBmaWxlIGZyb20gb25lIHBhY2thZ2Ugd2l0aCBhbm90aGVyXG4iCisjfiAiICBvdmVyd3JpdGUtZGl2ZXJ0ZWQgICAgIE92ZXJ3cml0ZSBhIGRpdmVydGVkIGZpbGUgd2l0aCBhbiB1bmRpdmVydGVkICIKKyN+ICJ2ZXJzaW9uXG4iCisjfiAiICBiYWQtdmVyaWZ5ICAgICAgICAgICAgIEluc3RhbGwgYSBwYWNrYWdlIGV2ZW4gaWYgaXQgZmFpbHMgYXV0aGVudGljaXR5ICIKKyN+ICJjaGVja1xuIgorI34gIiAgZGVwZW5kcy12ZXJzaW9uIFshXSAgICBUdXJuIGRlcGVuZGVuY3kgdmVyc2lvbiBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzXG4iCisjfiAiICBkZXBlbmRzIFshXSAgICAgICAgICAgIFR1cm4gYWxsIGRlcGVuZGVuY3kgcHJvYmxlbXMgaW50byB3YXJuaW5nc1xuIgorI34gIiAgY29uZm5ldyBbIV0gICAgICAgICAgICBBbHdheXMgdXNlIHRoZSBuZXcgY29uZmlnIGZpbGVzLCBkb24ndCBwcm9tcHRcbiIKKyN+ICIgIGNvbmZvbGQgWyFdICAgICAgICAgICAgQWx3YXlzIHVzZSB0aGUgb2xkIGNvbmZpZyBmaWxlcywgZG9uJ3QgcHJvbXB0XG4iCisjfiAiICBjb25mZGVmIFshXSAgICAgICAgICAgIFVzZSB0aGUgZGVmYXVsdCBvcHRpb24gZm9yIG5ldyBjb25maWcgZmlsZXMgaWYgIgorI34gIm9uZVxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICBpcyBhdmFpbGFibGUsIGRvbid0IHByb21wdC4gSWYgbm8gZGVmYXVsdCBjYW4gYmUgIgorI34gImZvdW5kLFxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICB5b3Ugd2lsbCBiZSBwcm9tcHRlZCB1bmxlc3Mgb25lIG9mIHRoZSBjb25mb2xkICIKKyN+ICJvclxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICBjb25mbmV3IG9wdGlvbnMgaXMgYWxzbyBnaXZlblxuIgorI34gIiAgY29uZm1pc3MgWyFdICAgICAgICAgICBBbHdheXMgaW5zdGFsbCBtaXNzaW5nIGNvbmZpZyBmaWxlc1xuIgorI34gIiAgY29uZmFzayBbIV0gICAgICAgICAgICBPZmZlciB0byByZXBsYWNlIGNvbmZpZyBmaWxlcyB3aXRoIG5vIG5ldyAiCisjfiAidmVyc2lvbnNcbiIKKyN+ICIgIGJyZWFrcyBbIV0gICAgICAgICAgICAgSW5zdGFsbCBldmVuIGlmIGl0IHdvdWxkIGJyZWFrIGFub3RoZXIgcGFja2FnZVxuIgorI34gIiAgY29uZmxpY3RzIFshXSAgICAgICAgICBBbGxvdyBpbnN0YWxsYXRpb24gb2YgY29uZmxpY3RpbmcgcGFja2FnZXNcbiIKKyN+ICIgIGFyY2hpdGVjdHVyZSBbIV0gICAgICAgUHJvY2VzcyBldmVuIHBhY2thZ2VzIHdpdGggd3JvbmcgYXJjaGl0ZWN0dXJlXG4iCisjfiAiICBvdmVyd3JpdGUtZGlyIFshXSAgICAgIE92ZXJ3cml0ZSBvbmUgcGFja2FnZSdzIGRpcmVjdG9yeSB3aXRoIGFub3RoZXIncyAiCisjfiAiZmlsZVxuIgorI34gIiAgdW5zYWZlLWlvIFshXSAgICAgICAgICBEbyBub3QgcGVyZm9ybSBzYWZlIEkvTyBvcGVyYXRpb25zIHdoZW4gIgorI34gInVucGFja2luZ1xuIgorI34gIiAgcmVtb3ZlLXJlaW5zdHJlcSBbIV0gICBSZW1vdmUgcGFja2FnZXMgd2hpY2ggcmVxdWlyZSBpbnN0YWxsYXRpb25cbiIKKyN+ICIgIHJlbW92ZS1lc3NlbnRpYWwgWyFdICAgUmVtb3ZlIGFuIGVzc2VudGlhbCBwYWNrYWdlXG4iCisjfiAiXG4iCisjfiAiV0FSTklORyAtIHVzZSBvZiBvcHRpb25zIG1hcmtlZCBbIV0gY2FuIHNlcmlvdXNseSBkYW1hZ2UgeW91ciAiCisjfiAiaW5zdGFsbGF0aW9uLlxuIgorI34gIkZvcmNpbmcgb3B0aW9ucyBtYXJrZWQgWypdIGFyZSBlbmFibGVkIGJ5IGRlZmF1bHQuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJIYWkgdHXhu7MgY2jhu41uICVzIHbhu4EgY2jhu6ljIG7Eg25nIMOpcCBideG7mWMg4oCUIMSRaeG7gXUgY2jhu4luaCDhu6luZyB44butIGtoaSBn4bq3cCB24bqlbiAiCisjfiAixJHhu4E6OlxuIgorI34gIiDigKIgY+G6o25oIGLDoW8gbcOgIHbhuqtuIHRp4bq/cCB04bulYyAoLS1mb3JjZS08xJFp4buBdT4sPMSRaeG7gXU+LC4uLilcbiIKKyN+ICIg4oCiIGThu6tuZyBs4bqhaSB2w6AgaGnhu4NuIHRo4buLIGzhu5dpICgtLXJlZnVzZS08xJFp4buBdT4sPMSRaeG7gXU+LC4uLiB8IC0tbm8tZm9yY2UtIgorI34gIjzEkWnhu4F1PiwuLi4pXG4iCisjfiAiXG4iCisjfiAiIMOJcCBideG7mWM6XG4iCisjfiAiICBhbGwgWyFdICAgICAgICAgICAgICAgIEzhuq1wIHThuqV0IGPhuqMgY8OhYyB0deG7syBjaOG7jW4gduG7gSBjaOG7qWMgbsSDbmcgw6lwIGJ14buZY1xuIgorI34gIiAgZG93bmdyYWRlIFsqXSAgICAgICAgICBUaGF5IHRo4bq/IGfDs2kgxJHDsyBi4bqxbmcgbeG7mXQgcGhpw6puIGLhuqNuIGPFqSBoxqFuXG4iCisjfiAiICBjb25maWd1cmUtYW55ICAgICAgICAgIEPhuqV1IGjDrG5oIGLhuqV0IGPhu6kgZ8OzaSBuw6BvIGPDsyB0aOG7gyBnacO6cCDEkeG7oSBnw7NpIG7DoHlcbiIKKyN+ICIgIGhvbGQgICAgICAgICAgICAgICAgICAgWOG7rSBsw70gY8OhYyBnw7NpIHTDrG5oIGPhu50gbmdheSBj4bqjIGtoaSBi4buLIGdp4buvIGzhuqFpXG4iCisjfiAiICBiYWQtcGF0aCAgICAgIFBBVEggKMSRxrDhu51uZyBk4bqrbikgY8OybiB0aGnhur91IG3hu5l0IHPhu5EgY2jGsMahbmcgdHLDrG5oIHF1YW4gIgorI34gInRy4buNbmdcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICBtw6AgcuG6pXQgY8OzIHRo4buDIGfDonkgcmEgduG6pW4gxJHhu4FcbiIKKyN+ICIgIG5vdC1yb290ICAgICAgICAgICAgICAgVGjhu60gKGjhu6d5KSBjw6BpIMSR4bq3dCBnw6wgbmdheSBj4bqjIGtoaSBraMO0bmcgcGjhuqNpICIKKyN+ICJuZ8aw4budaSBjaOG7p1xuIgorI34gIiAgb3ZlcndyaXRlICAgICAgICAgICAgICBHaGkgxJHDqCBsw6puIHThuq1wIHRpbiB0cm9uZyBnw7NpIG7DoHkgYuG6sW5nIHThuq1wIHRpbiB04burICIKKyN+ICJnw7NpIMSRw7NcbiIKKyN+ICIgIG92ZXJ3cml0ZS1kaXZlcnRlZCAgICBHaGkgxJHDqCBsw6puIG3hu5l0IHThuq1wIHRpbiBi4buLIGzDoG0gdHLhu4djaCDEkWlcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBi4bqxbmcgbeG7mXQgcGhpw6puIGLhuqNuIGtow7RuZyBwaOG6o2kgYuG7iyAiCisjfiAibMOgbSB0cuG7h2NoIMSRaVxuIgorI34gIiAgYmFkLXZlcmlmeSAgICAgICAgICAgICBDw6BpIMSR4bq3dCBuZ2F5IGPhuqMgZ8OzaSBi4buLIHNhaSBraeG7g20gdHJhIHjDoWMgdGjhu7FjXG4iCisjfiAiICBkZXBlbmRzLXZlcnNpb24gWyFdICAgIENodXnhu4NuIMSR4buVaSBzYW5nIGPhuqNuaCBiw6FvIG3hu5dpIHbhuqVuIMSR4buBIHBoacOqbiBi4bqjblxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgduG7gSBxdWFuIGjhu4cgcGjhu6UgdGh14buZY1xuIgorI34gIiAgZGVwZW5kcyBbIV0gICAgICBDaHV54buDbiDEkeG7lWkgc2FuZyBj4bqjbmggYsOhbyBt4buNaSB24bqlbiDEkeG7gSB24buBIHF1YW4gaOG7hyBwaOG7pSAiCisjfiAidGh14buZY1xuIgorI34gIiAgY29uZm5ldyBbIV0gICAgICBMw7pjIG7DoG8gY8WpbmcgZMO5bmcgdOG6rXAgdGluIGPhuqV1IGjDrG5oIG3hu5tpLCBraMO0bmcgY+G6p24gIgorI34gIm5o4bqvY1xuIgorI34gIiAgY29uZm9sZCBbIV0gICAgICAgIEzDumMgbsOgbyBjxaluZyBkw7luZyB04bqtcCB0aW4gY+G6pXUgaMOsbmggY8WpLCBraMO0bmcgY+G6p24gIgorI34gIm5o4bqvY1xuIgorI34gIiAgY29uZmRlZiBbIV0gICAgICAgIETDuW5nIHR14buzIGNo4buNbiBt4bq3YyDEkeG7i25oIGNobyB04bqtcCB0aW4gbeG7m2kgKG7hur91IGPDsyksICIKKyN+ICJraMO0bmcgY+G6p24gbmjhuq9jLlxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgIEtow7RuZyB0w6xtIHRo4bqleSBt4bq3YyDEkeG7i25oIHRow6wgYuG6oW4gxJHGsOG7o2Mgbmjhuq9jXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgKG7hur91IGtow7RuZyBjxaluZyBs4bqtcCBt4buZdCBj4bunYSBoYWkgdHXhu7MgY2jhu41uIMKrIGNvbmZvbGQgwrsgIgorI34gInbDoCDCqyBjb25mbmV3IMK7KVxuIgorI34gIiAgY29uZm1pc3MgWyFdICAgICAgTMO6YyBuw6BvIGPFqW5nIGPDoGkgxJHhurd0IHThuq1wIHRpbiBj4bqldSBow6xuaCBi4buLIHRoaeG6v3VcbiIKKyN+ICIgIGNvbmZhc2sgWyFdICAgICAgICBI4buPaSB24buBIHRoYXkgdGjhur8gY8OhYyB04bqtcCB0aW4gY+G6pXUgaMOsbmggYuG6sW5nIHBoacOqbiBi4bqjbiAiCisjfiAibeG7m2lcbiIKKyN+ICIgIGJyZWFrcyBbIV0gICAgICAgICAgQ8OgaSDEkeG6t3QgbmdheSBj4bqjIG7hur91IGfDonkgcmEgduG6pW4gxJHhu4EgY2hvIG3hu5l0IGfDs2kga2jDoWNcbiIKKyN+ICIgIGNvbmZsaWN0cyBbIV0gICAgICAgQ2hvIHBow6lwIGPDoGkgxJHhurd0IGPDoWMgZ8OzaSB4dW5nIMSR4buZdCB24bubaSBuaGF1XG4iCisjfiAiICBhcmNoaXRlY3R1cmUgWyFdICAgICAgIFjhu60gbMO9IG5nYXkgY+G6oyBnw7NpIGPDsyBraeG6v24gdGjhu6ljIGtow7RuZyDEkcO6bmdcbiIKKyN+ICIgIG92ZXJ3cml0ZS1kaXIgWyFdICAgICAgR2hpIMSRw6ggbMOqbiB0aMawIG3hu6VjIGPhu6dhIGfDs2kgbsOgeSBi4bqxbmcgdOG6rXAgdGluIGPhu6dhICIKKyN+ICJnw7NpIMSRw7NcbiIKKyN+ICIgIHJlbW92ZS1yZWluc3RyZXEgWyFdICAgICAgR+G7oSBi4buPIGPDoWMgZ8OzaSB5w6p1IGPhuqd1IGPDoGkgxJHhurd0XG4iCisjfiAiICByZW1vdmUtZXNzZW50aWFsIFshXSAgICAgIEfhu6EgYuG7jyBt4buZdCBnw7NpIGNo4bunIHnhur91XG4iCisjfiAiXG4iCisjfiAiQ+G6ok5IIELDgU8g4oCUIHR14buzIGNo4buNbiBjw7MgZOG6pXUgWyFdIGPDsyB0aOG7gyBsw6BtIGjhuqFpIGLhuqNuIGPDoGkgxJHhurd0IG3hu5l0IGPDoWNoIHRy4bqnbSAiCisjfiAidHLhu41uZy5cbiIKKyN+ICJUdeG7syBjaOG7jW4gw6lwIGJ14buZYyBjw7MgZOG6pXUgWypdIHRow6wgxJHGsOG7o2MgaGnhu4d1IGzhu7FjIHRoZW8gbeG6t2MgxJHhu4tuaC5cbiIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIGRwa2ctc3BsaXQgdG8gc2VlIGlmIGl0J3MgcGFydCBvZiBhIG11bHRpcGFydGVyIgorI34gbXNnc3RyICIiCisjfiAibOG7l2kgdGjhu7FjIGhp4buHbiDCqyBkcGtnLXNwbGl0IMK7IChjaGlhIHTDoWNoKSDEkeG7gyB4ZW0gbuG6v3UgbsOzIGzDoCBt4buZdCBwaOG6p24gY+G7p2EgIgorI34gIsSRaeG7gXUgxJFhIHBo4bqnbiIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjbCBkZWJzaWctdmVyaWZ5IgorI34gbXNnc3RyICIiCisjfiAibOG7l2kgZXhlY2wgKHRo4buxYyBoaeG7h24gcuG7k2kgY2jhuqVtIGThu6l0KSDCqyBkZWJzaWctdmVyaWZ5IMK7ICh0aOG6qW0gdHJhIGNo4buvIGvDvSAiCisjfiAiRGViaWFuKSIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIGRwa2ctZGViIHRvIGV4dHJhY3QgY29udHJvbCBpbmZvcm1hdGlvbiIKKyN+IG1zZ3N0ciAibOG7l2kgdGjhu7FjIGhp4buHbiDCqyBkcGtnLWRlYiDCuyDEkeG7gyBnaeG6o2kgbsOpbiB0aMO0bmcgdGluIMSRaeG7gXUga2hp4buDbiIKKworI34gbXNnaWQgInVuYWJsZSB0byBleGVjIGRwa2ctZGViIHRvIGdldCBmaWxlc3lzdGVtIGFyY2hpdmUiCisjfiBtc2dzdHIgImtow7RuZyB0aOG7gyB0aOG7sWMgaGnhu4duIMKrIGRwa2ctZGViIMK7IMSR4buDIGzhuqV5IGtobyBsxrB1IGjhu4cgdGjhu5FuZyB04bqtcCB0aW4iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gZGVsZXRlIGRpc2FwcGVhcmluZyBjb250cm9sIGluZm8gZmlsZSBgJS4yNTBzJyIKKyN+IG1zZ3N0ciAia2jDtG5nIHRo4buDIHjDs2EgdOG6rXAgdGluIHRow7RuZyB0aW4gxJFp4buBdSBraGnhu4NuIGJp4bq/biBt4bqldCDCqyAlLjI1MHMgwrsiCisKKyN+IG1zZ2lkICJkcGtnOiAlcyBub3QgZm91bmQuXG4iCisjfiBtc2dzdHIgImRwa2c6IGtow7RuZyB0w6xtIHRo4bqleSAlcy5cbiIKKworI34gbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byAuLi4vREVCSUFOIgorI34gbXNnc3RyICJs4buXaSBjaGRpciAoY2h1eeG7g24gxJHhu5VpIHRoxrAgbeG7pWMpIHNhbmcgwqsgLi4uL0RFQklBTiDCuyIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIHRhciAtY2YiCisjfiBtc2dzdHIgImzhu5dpIHRo4buxYyBoaeG7h24gwqsgdGFyIC1jZiDCuyIKKworI34gbXNnaWQgImZhaWxlZCB0byBtYWtlIHRtcGZpbGUgKGNvbnRyb2wpIgorI34gbXNnc3RyICJs4buXaSB04bqhbyB04bqtcCB0aW4gdOG6oW0gdGjhu51pICjEkWnhu4F1IGtoaeG7g24pIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHVubGluayB0bXBmaWxlIChjb250cm9sKSwgJXMiCisjfiBtc2dzdHIgImzhu5dpIGjhu6d5IGxpw6puIGvhur90IHThuq1wIHRpbiB04bqhbSB0aOG7nWkgKMSRaeG7gXUga2hp4buDbiksICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHJld2luZCB0bXBmaWxlIChjb250cm9sKSIKKyN+IG1zZ3N0ciAibOG7l2kgdHVhIGzhuqFpIHThuq1wIHRpbiB04bqhbSB0aOG7nWkgKMSRaeG7gXUga2hp4buDbikiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZnN0YXQgdG1wZmlsZSAoY29udHJvbCkiCisjfiBtc2dzdHIgImzhu5dpIGZzdGF0IHThuq1wIHRpbiB04bqhbSB0aOG7nWkgKMSRaeG7gXUga2hp4buDbikiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBmaW5kIgorI34gbXNnc3RyICJs4buXaSB0aOG7sWMgaGnhu4duIHRp4bq/biB0csOsbmggZmluZCAodMOsbSkiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBzaCAtYyBtdiBmb28vKiAmYyIKKyN+IG1zZ3N0ciAibOG7l2kgdGjhu7FjIGhp4buHbiDCqyBzaCAtYyBtdiBmb28vKiAmYyDCuyIKKworI34gbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtICUuMjUwcyBsZW5ndGggY29udGFpbnMgbnVsbHMiCisjfiBtc2dzdHIgInThuq1wIHRpbiDCqyAlLjI1MHMgwrsgYuG7iyBo4buPbmcg4oCUIGNoaeG7gXUgZMOgaSAlLjI1MHMgY2jhu6lhIG5o4buvbmcgc+G7kSBraMO0bmciCisKKyN+IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBuZWdhdGl2ZSBtZW1iZXIgbGVuZ3RoICV6aSIKKyN+IG1zZ3N0ciAidOG6rXAgdGluIMKrICUuMjUwcyDCuyBi4buLIGjhu49uZyDigJQgY2hp4buBdSBkw6BpIGLhu5kgcGjhuqFuIMOibSAlemkiCisKKyN+IG1zZ2lkICJmYWlsZWQgZ2V0dGluZyB0aGUgY3VycmVudCBmaWxlIHBvc2l0aW9uIgorI34gbXNnc3RyICJs4buXaSBs4bqleSB24buLIHRyw60gdOG6rXAgdGluIGhp4buHbiB0aOG7nWkiCisKKyN+IG1zZ2lkICJmYWlsZWQgc2V0dGluZyB0aGUgY3VycmVudCBmaWxlIHBvc2l0aW9uIgorI34gbXNnc3RyICJs4buXaSDEkeG6t3QgduG7iyB0csOtIHThuq1wIHRpbiBoaeG7h24gdGjhu51pIgorCisjfiBtc2dpZCAidmVyc2lvbiBudW1iZXIiCisjfiBtc2dzdHIgInPhu5EgdGjhu6kgdOG7sSBwaGnDqm4gYuG6o24iCisKKyN+IG1zZ2lkICJtZW1iZXIgbGVuZ3RoIgorI34gbXNnc3RyICJjaGnhu4F1IGTDoGkgYuG7mSBwaOG6rW4iCisKKyN+IG1zZ2lkICJoZWFkZXIgaW5mbyBtZW1iZXIiCisjfiBtc2dzdHIgImLhu5kgcGjhuqFuIHRow7RuZyB0aW4gcGjhuqduIMSR4bqndSIKKworI34gbXNnaWQgInNraXBwZWQgY29udHJvbCBhcmVhIGZyb20gJXMiCisjfiBtc2dzdHIgIsSRw6MgYuG7jyBxdWEgdsO5bmcgxJFp4buBdSBraGnhu4NuIHThu6sgJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHRlbXBvcmFyeSBkaXJlY3RvcnkiCisjfiBtc2dzdHIgImzhu5dpIHThuqFvIHRoxrAgbeG7pWMgdOG6oW0gdGjhu51pIgorCisjfiBtc2dpZCAiaW5mb19zcGV3IgorI34gbXNnc3RyICJpbmZvX3NwZXcgKMSR4buVIGjhur90IHRow7RuZyB0aW4pIgorCisjfiBtc2dpZCAiaW5mbyBsZW5ndGgiCisjfiBtc2dzdHIgImNoaeG7gXUgZMOgaSB0aMO0bmcgdGluIgorCisjfiBtc2dpZCAidG90YWwgbGVuZ3RoIgorI34gbXNnc3RyICJ04buVbmcgY2hp4buBdSBkw6BpIgorCisjfiBtc2dpZCAiZGF0YSBsZW5ndGgiCisjfiBtc2dzdHIgImNoaeG7gXUgZMOgaSBk4buvIGxp4buHdSIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIGRwa2ctZGViIHRvIGV4dHJhY3QgZmllbGQgdmFsdWUiCisjfiBtc2dzdHIgImzhu5dpIHRo4buxYyBoaeG7h24gwqsgZHBrZy1kZWIgwrsgxJHhu4MgbOG6pXkgZ2nDoSB0cuG7iyB0csaw4budbmciCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gc3RhdCAlczogJXMiCisjfiBtc2dzdHIgImtow7RuZyB0aOG7gyBs4bqleSB0cuG6oW5nIHRow6FpIHbhu4EgJXM6ICVzIgorCisjfiBtc2dpZCAic2xhdmUgbmFtZSAlcyBkdXBsaWNhdGVkIgorI34gbXNnc3RyICJ0w6puIHBo4bulICVzIGLhu4sgbmjDom4gxJHDtGkiCisKKyN+IG1zZ2lkICJzbGF2ZSBsaW5rICVzIGR1cGxpY2F0ZWQiCisjfiBtc2dzdHIgImxpw6puIGvhur90IHBo4bulICVzIGLhu4sgbmjDom4gxJHDtGkiCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3BvL3poX0NOLmdtbyBiL2Rwa2ctMS4xNi4xLjEvcG8vemhfQ04uZ21vCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmFmZWJjOTcKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3BvL3poX0NOLmdtbwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3BvL3poX0NOLnBvIGIvZHBrZy0xLjE2LjEuMS9wby96aF9DTi5wbwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45OGUzMWU4Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9wby96aF9DTi5wbwpAQCAtMCwwICsxLDYzNjIgQEAKKyMgU2ltcGxpZmllZCBDaGluZXNlIHRyYW5zbGF0aW9uIHRvIGRwa2cuCisjIFRoaXMgZmlsZSBpcyBkaXN0cmlidXRlZCB1bmRlciB0aGUgc2FtZSBsaWNlbnNlIGFzIHRoZSBkcGtnIHBhY2thZ2UuCisjCisjIENvcHlyaWdodHM6CisjIEhpd2VlZCBMZW5nIDxoaXdlZWRAMTYzLmNvbT4sIDIwMDQuCisjIEtvdiBDaGFpIDx0Y2hhaWtvdkBnbWFpbC5jb20+LCAyMDA1LDIwMDYsMjAwNworIyBNaW5nIEh1YSA8bWluZ2h1YUByaWNlLmVkdT4sIDIwMDYuCisjIENhcmxvcyBaLkYuIExpdSA8Y2FybG9zbGl1QHVzZXJzLnNvdXJjZWZvcmdlLm5ldD4sIDIwMDQsMjAwNi4KKyMgQW50aG9ueSBXb25nIDx5cHdvbmdAZGViaWFuLm9yZy5oaz4sIDIwMDcuCisjIERlbmcgWGl5dWUgPG1hbnBoaXotZ3Vlc3RAdXNlcnMuYWxpb3RoLmRlYmlhbi5vcmc+LCAyMDA3LCAyMDA4LCAyMDA5LgorIyBBcm9uIFh1IDxoYXBweWFyb24ueHVAZ21haWwuY29tPiwgMjAwOSwgMjAxMC4KKyMKK21zZ2lkICIiCittc2dzdHIgIiIKKyJQcm9qZWN0LUlkLVZlcnNpb246IGRwa2cgMS4xNS44LjdcbiIKKyJSZXBvcnQtTXNnaWQtQnVncy1UbzogZGViaWFuLWRwa2dAbGlzdHMuZGViaWFuLm9yZ1xuIgorIlBPVC1DcmVhdGlvbi1EYXRlOiAyMDExLTEwLTE0IDA3OjExKzAyMDBcbiIKKyJQTy1SZXZpc2lvbi1EYXRlOiAyMDEwLTEyLTE4IDAyOjI2KzAxMDBcbiIKKyJMYXN0LVRyYW5zbGF0b3I6IEFyb24gWHUgPGhhcHB5YXJvbi54dUBnbWFpbC5jb20+XG4iCisiTGFuZ3VhZ2UtVGVhbTogQ2hpbmVzZSAoc2ltcGxpZmllZCkgPGkxOG4temhAZ29vZ2xlZ3JvdXBzLmNvbT5cbiIKKyJMYW5ndWFnZTogemhfQ05cbiIKKyJNSU1FLVZlcnNpb246IDEuMFxuIgorIkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD1VVEYtOFxuIgorIkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXRcbiIKKyJQbHVyYWwtRm9ybXM6IG5wbHVyYWxzPTE7IHBsdXJhbD0wO1xuIgorCisjOiBsaWIvZHBrZy9hci5jOjY2CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgY2hhcmFjdGVyICclYycgaW4gYXJjaGl2ZSAnJS4yNTBzJyBtZW1iZXIgJyUuMTZzJyBzaXplIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2FyLmM6ODEgbGliL2Rwa2cvYXIuYzo5NyBsaWIvZHBrZy9hci5jOjEwOCBsaWIvZHBrZy9hci5jOjExMgorIzogbGliL2Rwa2cvYXIuYzoxMzQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIGZpbGUgJyVzJyIKK21zZ3N0ciAi5peg5rOV5YaZ5YWl5paH5Lu2ICVzIgorCisjOiBsaWIvZHBrZy9hci5jOjk0CisjLCBjLWZvcm1hdAorbXNnaWQgImdlbmVyYXRlZCBjb3JydXB0IGFyIGhlYWRlciBmb3IgJyVzJyIKK21zZ3N0ciAiYXIg55Sf5oiQ55qEICVzIOaNn+Wdj+WktCIKKworIzogbGliL2Rwa2cvYXIuYzoxMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGFyIG1lbWJlciBmaWxlICglcykiCittc2dzdHIgImZzdGF0IGFyIOaIkOWRmOaWh+S7tuWksei0pSglcykiCisKKyM6IGxpYi9kcGtnL2FyLmM6MTMwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gZnN0YXQgYXIgbWVtYmVyIGZpbGUgKCVzKSIKK21zZ2lkICJhciBtZW1iZXIgZmlsZSAoJXMpIgorbXNnc3RyICJmc3RhdCBhciDmiJDlkZjmlofku7blpLHotKUoJXMpIgorCisjOiBsaWIvZHBrZy9idWZmZXIuYzoxOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgb24gYnVmZmVyIGNvcHkgZm9yICVzIgorbXNnc3RyICLkuLogJXMg6K+75Y+W57yT5Yay5Ymv5pys5aSx6LSlIgorCisjOiBsaWIvZHBrZy9idWZmZXIuYzoyMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIGluIHdyaXRlIG9uIGJ1ZmZlciBjb3B5IGZvciAlcyIKK21zZ3N0ciAi5Li6ICVzIOWGmeWFpee8k+WGsuWJr+acrOWksei0pSIKKworIzogbGliL2Rwa2cvYnVmZmVyLmM6MjIwCisjLCBjLWZvcm1hdAorbXNnaWQgInNob3J0IHJlYWQgb24gYnVmZmVyIGNvcHkgZm9yICVzIgorbXNnc3RyICLkuLogJXMg55+t5pqC6K+75Y+W57yT5Yay5Ymv5pysIgorCisjOiBsaWIvZHBrZy9idWZmZXIuYzoyODgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byBleGVjIHRhciIKK21zZ2lkICJmYWlsZWQgdG8gc2VlayAlcyIKK21zZ3N0ciAi5omn6KGMIHRhciDlpLHotKUiCisKKyM6IGxpYi9kcGtnL2NvbW1hbmQuYzoxNzggbGliL2Rwa2cvY29tbWFuZC5jOjIwNCBzcmMvaGVscC5jOjYyMQorIzogc3JjL3Byb2Nlc3NhcmMuYzo5OCBzcmMvcHJvY2Vzc2FyYy5jOjEzOCBzcmMvcHJvY2Vzc2FyYy5jOjQzMgorIzogc3JjL3Byb2Nlc3NhcmMuYzo4MzkgZHBrZy1kZWIvYnVpbGQuYzo0NTkgZHBrZy1kZWIvYnVpbGQuYzo1MzgKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTYxIGRwa2ctZGViL2V4dHJhY3QuYzozMTcgZHBrZy1kZWIvaW5mby5jOjY1CisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6NjkgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQ1NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZXhlY3V0ZSAlcyAoJXMpIgorbXNnc3RyICLml6Dms5Xov5DooYwgJXMgKCVzKSIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzo4MworIywgYy1mb3JtYXQKK21zZ2lkICIlczogZGVjb21wcmVzc2lvbiIKK21zZ3N0ciAiJXPvvJrop6PljovnvKkiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6ODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGNvbXByZXNzaW9uIgorbXNnc3RyICIlc++8muWOi+e8qSIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yIGJpbmRpbmcgaW5wdXQgdG8gZ3ppcCBzdHJlYW0iCittc2dzdHIgIiVz77ya57uR5a6a6L6T5YWl5YiwIGd6aXAg5rWB5aSx6LSlIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCByZWFkIGVycm9yOiAnJXMnIgorbXNnc3RyICIlc++8muWGhemDqCBnemlwIOivu+WPlumUmeivr++8miVzIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjEzMiBsaWIvZHBrZy9jb21wcmVzcy5jOjEzNgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCB3cml0ZSBlcnJvciIKK21zZ3N0ciAiJXPvvJrlhoXpg6ggZ3ppcCDlhpnlhaXplJnor68iCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTUwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvciBiaW5kaW5nIG91dHB1dCB0byBnemlwIHN0cmVhbSIKK21zZ3N0ciAiJXPvvJrnu5HlrprovpPlh7rliLAgZ3ppcCDmtYHlh7rplJkiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTU3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHJlYWQgZXJyb3IiCittc2dzdHIgIiVz77ya5YaF6YOoIGd6aXAg6K+75Y+W6ZSZ6K+vIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE2NworIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCB3cml0ZSBlcnJvcjogJyVzJyIKK21zZ3N0ciAiJXPvvJrlhoXpg6ggZ3ppcCDlhpnlhaXplJnor6/vvJolcyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGd6aXAgd3JpdGUgZXJyb3I6ICVzIgorbXNnc3RyICIlc++8muWGhemDqCBnemlwIOWGmeWFpemUmeivr++8miVzIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjIyMAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZXJyb3IgYmluZGluZyBpbnB1dCB0byBiemlwMiBzdHJlYW0iCittc2dzdHIgIiVz77ya57uR5a6a6L6T5YWl5YiwIGJ6aXAyIOa1geWksei0pSIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIHJlYWQgZXJyb3I6ICclcyciCittc2dzdHIgIiVz77ya5YaF6YOoIGJ6aXAyIOivu+WPlumUmeivr++8miVzIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI0MCBsaWIvZHBrZy9jb21wcmVzcy5jOjI0NCBsaWIvZHBrZy9jb21wcmVzcy5jOjI5NAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgd3JpdGUgZXJyb3IiCittc2dzdHIgIiVz77ya5YaF6YOoIGJ6aXAyIOWGmeWFpemUmeivryIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yIGJpbmRpbmcgb3V0cHV0IHRvIGJ6aXAyIHN0cmVhbSIKK21zZ3N0ciAiJXPvvJrnu5HlrprovpPlh7rliLAgYnppcDIg5rWB5Ye66ZSZIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI2NQorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgcmVhZCBlcnJvciIKK21zZ3N0ciAiJXPvvJrlhoXpg6ggYnppcDIg6K+75Y+W6ZSZ6K+vIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI3NSBsaWIvZHBrZy9jb21wcmVzcy5jOjI4NgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgd3JpdGUgZXJyb3I6ICclcyciCittc2dzdHIgIiVz77ya5YaF6YOoIGJ6aXAyIOWGmeWFpemUmeivr++8miVzIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI4MgorbXNnaWQgInVuZXhwZWN0ZWQgYnppcDIgZXJyb3IiCittc2dzdHIgIuacqumihOaWmeeahCBiemlwMiDplJnor68iCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVwZGF0ZXMgZGlyZWN0b3J5IGNvbnRhaW5zIGZpbGUgYCUuMjUwcycgd2hvc2UgbmFtZSBpcyB0b28gbG9uZyAobGVuZ3RoPSVkLCAiCisibWF4PSVkKSIKK21zZ3N0ciAi5pu05paw55uu5b2V5Lit5YyF5ZCr5paH5Lu2ICUuMjUwc++8jOWFtuaWh+S7tuWQjeWkqumVvyjplb/luqbkuLogJWTvvIzkvYbmnIDlpKfkuI3og73otoXov4cgJWQpIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1cGRhdGVzIGRpcmVjdG9yeSBjb250YWlucyBmaWxlcyB3aXRoIGRpZmZlcmVudCBsZW5ndGggbmFtZXMgKGJvdGggJWQgYW5kICVkKSIKK21zZ3N0ciAi5pu05paw55uu5b2V5Lit5ZCr5pyJ5LiN5ZCM6ZW/5bqm5ZCN56ew55qE5paH5Lu2KOWIhuWIq+S4uiAlZCDlkowgJWQpIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjg2CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzY2FuIHVwZGF0ZXMgZGlyZWN0b3J5IGAlLjI1NXMnIgorbXNnc3RyICLml6Dms5Xmiavmj4/mm7TmlrDnm67lvZUgJS4yNTVzICIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlbW92ZSBpbmNvcnBvcmF0ZWQgdXBkYXRlIGZpbGUgJS4yNTVzIgorbXNnc3RyICLliKDpmaTlkIjlubbnmoTmm7TmlrDmlofku7YgJS4yNTVzIOWksei0pSIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxMjEgZHBrZy1kZWIvYnVpbGQuYzo0NDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBgJS4yNTVzJyIKK21zZ3N0ciAi5peg5rOV5Yib5bu6ICUuMjU1cyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxMjUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZpbGwgJS4yNTBzIHdpdGggcGFkZGluZyIKK21zZ3N0ciAi5peg5rOV5aGr5YWFICUuMjUwcyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxMjcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoICUuMjUwcyBhZnRlciBwYWRkaW5nIgorbXNnc3RyICLml6Dms5XlnKjloavlhYXlkI7liLfmlrAgJS4yNTBzIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEyOQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2VlayB0byBzdGFydCBvZiAlLjI1MHMgYWZ0ZXIgcGFkZGluZyIKK21zZ3N0ciAi5peg5rOV5Zyo5aGr5YWFICUuMjUwcyDlkI7mib7liLDotbflp4vkvY3nva4iCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTk1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIGxvY2sgZmlsZSAlcyBmb3IgdGVzdGluZyIKK21zZ3N0ciAi5peg5rOV5omT5byA6ZSB5paH5Lu2ICVzIOS7pea1i+ivlSIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyMjEKK21zZ2lkICJ1bmFibGUgdG8gb3Blbi9jcmVhdGUgc3RhdHVzIGRhdGFiYXNlIGxvY2tmaWxlIgorbXNnc3RyICLml6Dms5XmiZPlvIDmiJblu7rnq4vnirbmgIHmlbDmja7lupPnmoTplIHmlofku7YiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjMxCittc2dpZCAieW91IGRvIG5vdCBoYXZlIHBlcm1pc3Npb24gdG8gbG9jayB0aGUgZHBrZyBzdGF0dXMgZGF0YWJhc2UiCittc2dzdHIgIuaCqOayoeacieS4uiBkcGtnIOeahOeKtuaAgeaVsOaNruW6k+WKoOmUgeeahOadg+mZkCIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyMzMKKyMsIGZ1enp5CisjfCBtc2dpZCAidW5hYmxlIHRvIGxvY2sgZHBrZyBzdGF0dXMgZGF0YWJhc2UiCittc2dpZCAiZHBrZyBzdGF0dXMgZGF0YWJhc2UiCittc2dzdHIgIuaXoOazleS4uiBkcGtnIOeahOeKtuaAgeaVsOaNruW6k+WKoOmUgSIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyNTcKK21zZ2lkICJyZXF1ZXN0ZWQgb3BlcmF0aW9uIHJlcXVpcmVzIHN1cGVydXNlciBwcml2aWxlZ2UiCittc2dzdHIgIuivpeaTjeS9nOmcgOimgei2hee6p+eUqOaIt+adg+mZkCIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyNjIKK21zZ2lkICJ1bmFibGUgdG8gYWNjZXNzIGRwa2cgc3RhdHVzIGFyZWEiCittc2dzdHIgIuaXoOazleiuv+mXriBkcGtnIOeKtuaAgeWMuuWfnyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyNjQKK21zZ2lkICJvcGVyYXRpb24gcmVxdWlyZXMgcmVhZC93cml0ZSBhY2Nlc3MgdG8gZHBrZyBzdGF0dXMgYXJlYSIKK21zZ3N0ciAi6K+l5pON5L2c6ZyA6KaB55So5oi35a+5IGRwa2cg54q25oCB55uu5b2V5pyJ6K+75YaZ5p2D6ZmQIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjMwOQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVtb3ZlIG15IG93biB1cGRhdGUgZmlsZSAlLjI1NXMiCittc2dzdHIgIuWIoOmZpOaIkeiHquW3seeahOabtOaWsOaWh+S7tiAlLjI1NXMg5aSx6LSlIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM0NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgIuaXoOazleWGmeWFpSAlLjI1MHMg55qE5pu05paw54q25oCBIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM0OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgIuaXoOazleWIt+aWsCAlLjI1MHMg55qE5pu05paw54q25oCBIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM1MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gdHJ1bmNhdGUgZm9yIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICLml6Dms5XmiKrmlq0gJS4yNTBzIOeahOabtOaWsOeKtuaAgSIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZzeW5jIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICLml6Dms5XlkIzmraUgJS4yNTBzIOeahOabtOaWsOeKtuaAgSIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICLml6Dms5XlhbPpl60gJS4yNTBzIOeahOabtOaWsOeKtuaAgeaWh+S7tiIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgIuaXoOazleWuieijhSAlLjI1MHMg55qE5pu05paw54q25oCBIgorCisjOiBsaWIvZHBrZy9kaXIuYzo1MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHJlYWQgZmlsZWRlc2NyaXB0b3IgZmxhZ3MgZm9yICUuMjUwcyIKK21zZ2lkICJ1bmFibGUgdG8gZ2V0IGZpbGUgZGVzY3JpcHRvciBmb3IgZGlyZWN0b3J5ICclcyciCittc2dzdHIgIuWcqCAlLjI1MHMg5pe277yM5peg5rOV6K+75Y+WIGZpbGVkZXNjcmlwdG9yIOagh+W/l+S9jSIKKworIzogbGliL2Rwa2cvZGlyLmM6NTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byBzeW5jIGZpbGUgJyVzJyIKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBkaXJlY3RvcnkgJyVzJyIKK21zZ3N0ciAi5peg5rOV5ZCM5q2l5paH5Lu2ICVzIgorCisjOiBsaWIvZHBrZy9kaXIuYzo2OSBsaWIvZHBrZy9kaXIuYzoxMzEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byBvcGVuIGZpbGUgJyVzJyIKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBkaXJlY3RvcnkgJyVzJyIKK21zZ3N0ciAi5peg5rOV5omT5byA5paH5Lu2ICVzIgorCisjOiBsaWIvZHBrZy9kaXIuYzoxMDkgc3JjL2RpdmVydGNtZC5jOjIxOCBkcGtnLXNwbGl0L3NwbGl0LmM6MjAyCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI5MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBmaWxlICclcyciCittc2dzdHIgIuaXoOazleaJk+W8gOaWh+S7tiAlcyIKKworIzogbGliL2Rwa2cvZGlyLmM6MTExIHNyYy9kaXZlcnRjbWQuYzoyMzIgc3JjL2RpdmVydGNtZC5jOjM3NworIzogc3JjL3N0YXRjbWQuYzoyMTcgZHBrZy1kZWIvYnVpbGQuYzo1OTggZHBrZy1zcGxpdC9qb2luLmM6NjUKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxODcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE0MDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgZmlsZSAnJXMnIgorbXNnc3RyICLml6Dms5XlkIzmraXmlofku7YgJXMiCisKKyM6IGxpYi9kcGtnL2Rpci5jOjExMyBzcmMvZGl2ZXJ0Y21kLmM6MjM0IHNyYy9kaXZlcnRjbWQuYzozNzkKKyM6IGRwa2ctZGViL2J1aWxkLmM6NjAwIGRwa2ctc3BsaXQvam9pbi5jOjY3IGRwa2ctc3BsaXQvcXVldWUuYzoxODkKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzE0IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNDA4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBmaWxlICclcyciCittc2dzdHIgIuaXoOazleWFs+mXreaWh+S7tiAlcyIKKworIzogbGliL2Rwa2cvZHVtcC5jOjM5NgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgZGV0YWlscyBvZiBgJS41MHMnIHRvIGAlLjI1MHMnIgorbXNnc3RyICLlsIYgJS41MHMg6K+m5oOF5YaZ5YWl6IezICUuMjUwcyDlpLHotKUiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0MjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gJyVzJyBmb3Igd3JpdGluZyAlcyBkYXRhYmFzZSIKK21zZ3N0ciAi5peg5rOV5omT5byAICVzIOS7peWGmeWFpSAlcyDmlbDmja7lupMiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0MjYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNldCBidWZmZXJpbmcgb24gJXMgZGF0YWJhc2UgZmlsZSIKK21zZ3N0ciAi5peg5rOV5Li65pWw5o2u5bqT5paH5Lu2ICVzIOiuvue9rue8k+WGsuWMuiIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQzOAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgJXMgZGF0YWJhc2UgcmVjb3JkIGFib3V0ICclLjUwcycgdG8gJyUuMjUwcyciCittc2dzdHIgIuWGmeWFpSAlcyDmlbDmja7lupPorrDlvZXlpLHotKUoJS41MHMg5YiwICUuMjUwcykiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZsdXNoICVzIGRhdGFiYXNlIHRvICclLjI1MHMnIgorbXNnc3RyICLmuIXnqbogJXMg5pWw5o2u5bqT5YiwICUuMjUwcyDlpLHotKUiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZzeW5jICVzIGRhdGFiYXNlIHRvICclLjI1MHMnIgorbXNnc3RyICJmc3luYyAlcyDmlbDmja7lupPliLAgJS4yNTBzIOWksei0pSIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ1MQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2xvc2UgJyUuMjUwcycgYWZ0ZXIgd3JpdGluZyAlcyBkYXRhYmFzZSIKK21zZ3N0ciAi5YaZ5YWlICUyJHMg5pWw5o2u5bqT5ZCO77yM5YWz6ZetICUxJC4yNTBzIOWksei0pSIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ1NQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gbGluayAnJS4yNTBzJyB0byAnJS4yNTBzJyBmb3IgYmFja3VwIG9mICVzIGRhdGFiYXNlIgorbXNnc3RyICLlu7rnq4sgJS4yNTBzIOWIsCAlLjI1MHMg55qE6ZO+5o6l5pe25aSx6LSlKOivpemTvuaOpeeUqOS6juWkh+S7vSAlcyDmlbDmja7lupMpIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDU4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBpbnN0YWxsICclLjI1MHMnIGFzICclLjI1MHMnIGNvbnRhaW5pbmcgJXMgZGF0YWJhc2UiCittc2dzdHIgIuWwhuWMheWQqyAlMyRzIOaVsOaNruW6k+eahCAlMSQuMjUwcyDlronoo4XkuLogJTIkLjI1MHMg5pe25aSx6LSlIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6OTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiB1bnJlY292ZXJhYmxlIGZhdGFsIGVycm9yLCBhYm9ydGluZzpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorIiVzOiDml6Dms5XmgaLlpI3nmoToh7Tlkb3plJnor6/vvIzkuK3mraLvvJpcbiIKKyIgJXNcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjEwMAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiVzOiB1bnJlY292ZXJhYmxlIGZhdGFsIGVycm9yLCBhYm9ydGluZzpcbiIKKyN8ICIgJXNcbiIKK21zZ2lkICIiCisiJXM6IG91dHNpZGUgZXJyb3IgY29udGV4dCwgYWJvcnRpbmc6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKyIlczog5peg5rOV5oGi5aSN55qE6Ie05ZG96ZSZ6K+v77yM5Lit5q2i77yaXG4iCisiICVzXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoxMjAKKyMsIGZ1enp5CisjfCBtc2dpZCAib3V0IG9mIG1lbW9yeSBmb3IgbmV3IGNsZWFudXAgZW50cnkiCittc2dpZCAib3V0IG9mIG1lbW9yeSBmb3IgbmV3IGVycm9yIGNvbnRleHQiCittc2dzdHIgIuaWsOW7uua4heeQhuadoeebruaXtuWGheWtmOS4jei2syIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjE4MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IGVycm9yIHdoaWxlIGNsZWFuaW5nIHVwOlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisiJXPvvJrmuIXnkIbml7blh7rplJk6XG4iCisiICVzXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoyMDEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImRwa2c6IHRvbyBtYW55IG5lc3RlZCBlcnJvcnMgZHVyaW5nIGVycm9yIHJlY292ZXJ5ICEhXG4iCittc2dpZCAiJXM6IHRvbyBtYW55IG5lc3RlZCBlcnJvcnMgZHVyaW5nIGVycm9yIHJlY292ZXJ5ISFcbiIKK21zZ3N0ciAiZHBrZ++8muWcqOmUmeivr+aBouWkjei/h+eoi+S4reWPkeeUn+S6huWkquWkmueahOW1jOWll+mUmeivr++8ge+8gVxuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MjY4IGxpYi9kcGtnL2VoYW5kbGUuYzozMDcKK21zZ2lkICJvdXQgb2YgbWVtb3J5IGZvciBuZXcgY2xlYW51cCBlbnRyeSIKK21zZ3N0ciAi5paw5bu65riF55CG5p2h55uu5pe25YaF5a2Y5LiN6LazIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MjkxCittc2dpZCAib3V0IG9mIG1lbW9yeSBmb3IgbmV3IGNsZWFudXAgZW50cnkgd2l0aCBtYW55IGFyZ3VtZW50cyIKK21zZ3N0ciAi5paw5bu65riF55CG5p2h55uu5Y+C5pWw5aSq5aSa77yM5YaF5a2Y5LiN6LazIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MzUyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIlczogd2FybmluZzogJXNcbiIKK21zZ2lkICIlczogZXJyb3I6ICVzXG4iCittc2dzdHIgIiVz77ya6K2m5ZGK77yaJXNcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjM5MworIywgYy1mb3JtYXQKK21zZ2lkICIlczogd2FybmluZzogJXNcbiIKK21zZ3N0ciAiJXPvvJrorablkYrvvJolc1xuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6NDE2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiVzOiVkOiBpbnRlcm5hbCBlcnJvcjogJXNcbiIKK21zZ3N0ciAiJXM6JXM6JWTvvJrlhoXpg6jplJnor6/vvJolc1xuIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBpcyBtaXNzaW5nIgorbXNnc3RyICIlcyDnvLrlpLEiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJgJS4qcycgaXMgbm90IGFsbG93ZWQgZm9yICVzIgorbXNnaWQgIiclLjUwcycgaXMgbm90IGFsbG93ZWQgZm9yICVzIgorbXNnc3RyICIlLipzIOS4jeiiqyAlcyDmiYDlhYHorrgiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjczCisjLCBjLWZvcm1hdAorbXNnaWQgImp1bmsgYWZ0ZXIgJXMiCittc2dzdHIgIuW/veeVpSAlcyDlkI7nmoTmlbDmja4iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjg3CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgcGFja2FnZSBuYW1lICglLjI1MHMpIgorbXNnc3RyICLova/ku7bljIXlkI3np7Dml6DmlYgoJS4yNTBzKSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgImVtcHR5IGZpbGUgZGV0YWlscyBmaWVsZCBgJXMnIgorbXNnc3RyICLmlofku7bmj4/ov7DlrZfmrrUgJXMg5Li656m6IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBkZXRhaWxzIGZpZWxkIGAlcycgbm90IGFsbG93ZWQgaW4gc3RhdHVzIGZpbGUiCittc2dzdHIgIueKtuaAgeaWh+S7tuS4jeWFgeiuuOaWh+S7tuaPj+i/sOWtl+autSAlcyAiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjExOAorIywgYy1mb3JtYXQKK21zZ2lkICJ0b28gbWFueSB2YWx1ZXMgaW4gZmlsZSBkZXRhaWxzIGZpZWxkIGAlcycgKGNvbXBhcmVkIHRvIG90aGVycykiCittc2dzdHIgIuaWh+S7tuaPj+i/sOWtl+autSAlcyDkuK3nmoTlgLzlpKrlpJoo5ZKM5YW25LuW55qE55u45q+UKSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTMyCisjLCBjLWZvcm1hdAorbXNnaWQgInRvbyBmZXcgdmFsdWVzIGluIGZpbGUgZGV0YWlscyBmaWVsZCBgJXMnIChjb21wYXJlZCB0byBvdGhlcnMpIgorbXNnc3RyICLmlofku7bmj4/ov7DlrZfmrrUgJXMg5Lit55qE5YC85aSq5bCRKOWSjOWFtuS7lueahOebuOavlCkiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE1NAorbXNnaWQgInllcy9ubyBpbiBib29sZWFuIGZpZWxkIgorbXNnc3RyICLluIPlsJTlnovlrZfmrrXnmoQgeWVzL25vIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxNzQKK21zZ2lkICJ3b3JkIGluIGBwcmlvcml0eScgZmllbGQiCittc2dzdHIgIiBwcmlvcml0eSDlrZfmrrXkuK3nmoTmloflrZciCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE4NgorbXNnaWQgInZhbHVlIGZvciBgc3RhdHVzJyBmaWVsZCBub3QgYWxsb3dlZCBpbiB0aGlzIGNvbnRleHQiCittc2dzdHIgIuivpeeOr+Wig+S4reS4jeWFgeiuuCBzdGF0dXMg5a2X5q6155qE5YC8IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxOTEKK21zZ2lkICJmaXJzdCAod2FudCkgd29yZCBpbiBgc3RhdHVzJyBmaWVsZCIKK21zZ3N0ciAiIHN0YXR1cyDlrZfmrrXnmoTnrKzkuIDkuKror40od2FudCkiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE5NAorbXNnaWQgInNlY29uZCAoZXJyb3IpIHdvcmQgaW4gYHN0YXR1cycgZmllbGQiCittc2dzdHIgIiBzdGF0dXMg5a2X5q6155qE56ys5LqM5Liq6K+NKGVycm9yKSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTk3Cittc2dpZCAidGhpcmQgKHN0YXR1cykgd29yZCBpbiBgc3RhdHVzJyBmaWVsZCIKK21zZ3N0ciAiIHN0YXR1cyDlrZfmrrXnmoTnrKzkuInkuKror40oc3RhdHVzKSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjA3CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGluIFZlcnNpb24gc3RyaW5nICclLjI1MHMnIgorbXNnc3RyICLniYjmnKzlrZfnrKbkuLIgJS4yNTBzIOS4reaciemUmeivryIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjE4Cittc2dpZCAib2Jzb2xldGUgYFJldmlzaW9uJyBvciBgUGFja2FnZS1SZXZpc2lvbicgZmllbGQgdXNlZCIKK21zZ3N0ciAi5oKo5L2/55So5LqG5bey57uP5bqf5byD5LiN55So55qE5a2X5q61IFJldmlzaW9uIOaIluiAhSBQYWNrYWdlLVJldmlzaW9uICIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjM1Cittc2dpZCAidmFsdWUgZm9yIGBjb25maWctdmVyc2lvbicgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICIgY29uZmlnLXZlcnNpb24g5a2X5q6155qE5YC85Zyo6K+l546v5aKD5Lit5LiN6KKr5YWB6K64IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyNDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgaW4gQ29uZmlnLVZlcnNpb24gc3RyaW5nICclLjI1MHMnIgorbXNnc3RyICJDb25maWctVmVyc2lvbiDlrZfnrKbkuLIgJS4yNTBzIOS4reaciemUmeivryIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjY2CisjLCBjLWZvcm1hdAorbXNnaWQgInZhbHVlIGZvciBgY29uZmZpbGVzJyBoYXMgbWFsZm9ybWF0dGVkIGxpbmUgYCUuKnMnIgorbXNnc3RyICIgY29uZmZpbGVzICDnmoTlgLzljIXlkKvkuobmnInmoLzlvI/plJnor6/nmoTooYzvvJogJS4qcyAiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjI4NworIywgYy1mb3JtYXQKK21zZ2lkICJ2YWx1ZSBmb3IgYGNvbmZmaWxlcycgaGFzIGxpbmUgc3RhcnRpbmcgd2l0aCBub24tc3BhY2UgYCVjJyIKK21zZ3N0ciAiIGNvbmZmaWxlcyDnmoTlgLzkuK3vvIzmnInnmoTooYzmmK/ku6UgJWMg5byA5aS055qE77yM6ICM5a6D5LiN5piv56m65qC8IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzozMDQKK21zZ2lkICJyb290IG9yIG51bGwgZGlyZWN0b3J5IGlzIGxpc3RlZCBhcyBhIGNvbmZmaWxlIgorbXNnc3RyICLmoLnnm67lvZXmiJbmmK/nqbrnm67lvZXkuZ/ooqvliJfkuLrkuoYgY29uZmZpbGUiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjM2NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgbWlzc2luZyBwYWNrYWdlIG5hbWUsIG9yIGdhcmJhZ2Ugd2hlcmUgcGFja2FnZSBuYW1lIGV4cGVjdGVkIgorbXNnc3RyICIiCisiJXNcIiDlrZfmrrXnvLrlsJHova/ku7bljIXlkI3vvIzkuZ/lj6/og73mmK/lnKjmnKzor6Xloavlhpnova/ku7bljIXlkI3nmoTlnLDmlrnlj5HnjrDkuobml6DmhI/kuYnnmoTmlbDmja4iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjM3MAorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGZpZWxkLCBpbnZhbGlkIHBhY2thZ2UgbmFtZSBgJS4yNTVzJzogJXMiCittc2dzdHIgIiVzIOWtl+aute+8jOaXoOaViOeahOi9r+S7tuWMheWQjSAlLjI1NXMgOiVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgYmFkIHZlcnNpb24gcmVsYXRpb25zaGlwICVjJWMiCittc2dzdHIgIiIKKyIlcyDlrZfmrrXvvIzkuo4gICUuMjU1cyA6XG4iCisiIOmUmeivr+eahOeJiOacrOS+nei1luWFs+ezuyAlYyVjIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgYCVjJyBpcyBvYnNvbGV0ZSwgdXNlIGAlYz0nIG9yIGAlYyVjJyBpbnN0ZWFkIgorbXNnc3RyICIiCisiJXMg5a2X5q6177yM5LqOICUuMjU1cyA6XG4iCisiICAlYyAg5bey6KKr5bqf5byD5LiN55So77yM6K+35L2/55SoICVjPSDmiJbogIUgJWMlYyAiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQyMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOlxuIgorIiBpbXBsaWNpdCBleGFjdCBtYXRjaCBvbiB2ZXJzaW9uIG51bWJlciwgc3VnZ2VzdCB1c2luZyBgPScgaW5zdGVhZCIKK21zZ3N0ciAiIgorIiVzIOWtl+aute+8jOS6jiAlLjI1NXMgOlxuIgorIiDmnKrmmI7noa7opoHmsYLniYjmnKzlj7flrozlhajkuIDoh7TvvIzlu7rorq7kvb/nlKggPSAiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQzMAorbXNnaWQgIk9ubHkgZXhhY3QgdmVyc2lvbnMgbWF5IGJlIHVzZWQgZm9yIFByb3ZpZGVzIgorbXNnc3RyICJQcm92aWRlcyDkuK3lj6rog73mjIfmmI7lhbfkvZPnmoTniYjmnKwiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQzNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOlxuIgorIiB2ZXJzaW9uIHZhbHVlIHN0YXJ0cyB3aXRoIG5vbi1hbHBoYW51bWVyaWMsIHN1Z2dlc3QgYWRkaW5nIGEgc3BhY2UiCittc2dzdHIgIiIKKyIlcyDlrZfmrrXvvIzkuo4gJS4yNTVzIDpcbiIKKyIg54mI5pys5Y+35Lul5LiA5Liq5LiN5piv5a2X5q+N55qE5a2X56ym5byA5aS077yM5bu66K6u5Yqg5LiA5Liq56m65qC8IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NTEgbGliL2Rwa2cvZmllbGRzLmM6NDU1CisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzogdmVyc2lvbiBjb250YWlucyBgJWMnIgorbXNnc3RyICIlcyDlrZfmrrXvvIzkuo4gJS4yNTVzIO+8mueJiOacrOWPt+WQq+aciSAlYyAiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ1OQorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6IHZlcnNpb24gdW50ZXJtaW5hdGVkIgorbXNnc3RyICIlcyDlrZfmrrXvvIzkuo4gJS4yNTVzIO+8mueJiOacrOWPt+S4jeW6lOWwseatpOe7iOatoiIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDY1CisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgZmllbGQsIHJlZmVyZW5jZSB0byAnJS4yNTVzJzogZXJyb3IgaW4gdmVyc2lvbiIKK21zZ3N0ciAiJXMg5a2X5q6177yM5LqOICUuMjU1cyDvvJrop6PmnpDniYjmnKzlj7fml7blh7rplJkiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ3NQorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGZpZWxkLCBzeW50YXggZXJyb3IgYWZ0ZXIgcmVmZXJlbmNlIHRvIHBhY2thZ2UgYCUuMjU1cyciCittc2dzdHIgIiVzIOWtl+aute+8jOWcqOW8leeUqOi9r+S7tuWMhSAlLjI1NXMg5ZCO5Y+R546w6K+t5rOV6ZSZ6K+vIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmVzIChgfCcpIG5vdCBhbGxvd2VkIGluICVzIGZpZWxkIgorbXNnc3RyICLlnKggJXMg5a2X5q615Lit5LiN6IO95ZCr5pyJ5YCZ6YCJ6aG5KCB8ICkiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjUzNgorbXNnaWQgInZhbHVlIGZvciBgdHJpZ2dlcnMtcGVuZGluZycgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICIgdHJpZ2dlcnMtcGVuZGluZyDlrZfmrrXnmoTlgLzlnKjor6Xnjq/looPkuK3kuI3ooqvlhYHorrgiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU0MworIywgYy1mb3JtYXQKK21zZ2lkICJpbGxlZ2FsIHBlbmRpbmcgdHJpZ2dlciBuYW1lIGAlLjI1NXMnOiAlcyIKK21zZ3N0ciAi6Z2e5rOV55qE5pyq5Yaz6Kem5Y+R5Zmo5ZCNICUuMjU1cyDvvJolcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTQ3CisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBwZW5kaW5nIHRyaWdnZXIgYCUuMjU1cyciCittc2dzdHIgIumHjeWkjeeahOacquWGs+inpuWPkeWZqCAlLjI1NXMgIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NjEKK21zZ2lkICJ2YWx1ZSBmb3IgYHRyaWdnZXJzLWF3YWl0ZWQnIGZpZWxkIG5vdCBhbGxvd2VkIGluIHRoaXMgY29udGV4dCIKK21zZ3N0ciAiIHRyaWdnZXJzLWF3YWl0ZWQg5a2X5q6155qE5YC85Zyo6K+l546v5aKD5Lit5LiN6KKr5YWB6K64IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo1NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWxsZWdhbCBwYWNrYWdlIG5hbWUgaW4gYXdhaXRlZCB0cmlnZ2VyIGAlLjI1NXMnOiAlcyIKK21zZ3N0ciAi5Zyo562J5b6F6Kem5Y+R5ZmoICUuMjU1cyDkuK3ljIXlkKvpnZ7ms5XnmoTova/ku7bljIXlkI3vvJolcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTc0CisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBhd2FpdGVkIHRyaWdnZXIgcGFja2FnZSBgJS4yNTVzJyIKK21zZ3N0ciAi6YeN5aSN55qE562J5b6F6Kem5Y+R5YyFICUuMjU1cyAiCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzo1MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBzb3VyY2UgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAi5peg5rOV5omT5byA5rqQ5paH5Lu2ICUuMjUwcyIKKworIzogbGliL2Rwa2cvZmlsZS5jOjU1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGFuZ2Ugb3duZXJzaGlwIG9mIHRhcmdldCBmaWxlICclLjI1MHMnIgorbXNnc3RyICLml6Dms5XmlLnlj5jnm67moIfmlofku7YgJS4yNTBzIOeahOWxnuS4uyIKKworIzogbGliL2Rwa2cvZmlsZS5jOjU5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgbW9kZSBvZiB0YXJnZXQgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAi5peg5rOV6K6+572u5paH5Lu2ICUuMjUwcyDnmoTmnYPpmZDkvY0iCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzo4NQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIGNsb3NlICVzOiAlcyIKK21zZ2lkICJ1bmFibGUgdG8gdW5sb2NrICVzIgorbXNnc3RyICLml6Dms5XlhbPpl60gJXPvvJolcyIKKworIzogbGliL2Rwa2cvZmlsZS5jOjExMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hlY2sgZmlsZSAnJXMnIGxvY2sgc3RhdHVzIgorbXNnc3RyICLml6Dms5Xmo4Dmn6Xmlofku7YgJXMg55qE6ZSB54q25oCBICIKKworIzogbGliL2Rwa2cvZmlsZS5jOjE0NgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic3RhdHVzIGRhdGFiYXNlIGFyZWEgaXMgbG9ja2VkIGJ5IGFub3RoZXIgcHJvY2VzcyIKK21zZ2lkICIlcyBpcyBsb2NrZWQgYnkgYW5vdGhlciBwcm9jZXNzIgorbXNnc3RyICLlj6blpJbkuIDkuKrov5vnqIvlt7Lnu4/kuLrnirbmgIHmlbDmja7lupPliqDkuobplIEiCisKKyM6IGxpYi9kcGtnL2ZpbGUuYzoxNDgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byBjbG9zZSAlczogJXMiCittc2dpZCAidW5hYmxlIHRvIGxvY2sgJXMiCittc2dzdHIgIuaXoOazleWFs+mXrSAlc++8miVzIgorCisjOiBsaWIvZHBrZy9sb2cuYzo1MworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBvcGVuIGxvZyBgJXMnOiAlc1xuIgorbXNnc3RyICLml6Dms5XmiZPlvIDml6Xlv5fmlofku7YgJXMg77yaJXNcbiIKKworIzogbGliL2Rwa2cvbG9nLmM6ODUKK21zZ2lkICI8cGFja2FnZSBzdGF0dXMgYW5kIHByb2dyZXNzIGZpbGUgZGVzY3JpcHRvcj4iCittc2dzdHIgIjzljIXnirbmgIHlkozov5vluqbmlofku7bmj4/ov7DnrKY+IgorCisjOiBsaWIvZHBrZy9sb2cuYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIHRvIHN0YXR1cyBmZCAlZCIKK21zZ3N0ciAi5peg5rOV5YaZ5YWl54q25oCBIGZkICVkIgorCisjOiBsaWIvZHBrZy9tbGliLmM6NDQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAibWFsbG9jIGZhaWxlZCAoJWxkIGJ5dGVzKSIKK21zZ2lkICJtYWxsb2MgZmFpbGVkICglenUgYnl0ZXMpIgorbXNnc3RyICJtYWxsb2Mg5aSx6LSlICglbGQg5a2X6IqCKSIKKworIzogbGliL2Rwa2cvbWxpYi5jOjU4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJyZWFsbG9jIGZhaWxlZCAoJWxkIGJ5dGVzKSIKK21zZ2lkICJyZWFsbG9jIGZhaWxlZCAoJXp1IGJ5dGVzKSIKK21zZ3N0ciAicmVhbGxvYyDlpLHotKUoJWxkIOWtl+iKgikiCisKKyM6IGxpYi9kcGtnL21saWIuYzo3MiBsaWIvZHBrZy9tbGliLmM6OTAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI3NworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjMzNCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTEwNworbXNnaWQgImZhaWxlZCB0byBhbGxvY2F0ZSBtZW1vcnkiCittc2dzdHIgIuWIhumFjeWGheWtmOWksei0pSIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEwMgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZHVwIGZvciBzdGQlcyIKK21zZ3N0ciAi5peg5rOVIGR1cCDliLAgc3RkJXMiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGR1cCBmb3IgZmQgJWQiCittc2dzdHIgIuaXoOazlSBkdXAg5YiwIGZkICVkIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTA5Cittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBwaXBlIgorbXNnc3RyICLml6Dms5XmlrDlu7rnrqHpgZMiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igd3JpdGluZyB0byAnJXMnIgorbXNnc3RyICLlhpnlhaXliLAgJXMg5Ye66ZSZIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIGZpbGVkZXNjcmlwdG9yIGZsYWdzIGZvciAlLjI1MHMiCittc2dzdHIgIuWcqCAlLjI1MHMg5pe277yM5peg5rOV6K+75Y+WIGZpbGVkZXNjcmlwdG9yIOagh+W/l+S9jSIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEyNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IGNsb3NlLW9uLWV4ZWMgZmxhZyBmb3IgJS4yNTBzIgorbXNnc3RyICLlnKggJS4yNTBzIOaXtu+8jOaXoOazleiuvue9riBjbG9zZS1vbi1leGVjIOagh+W/l+S9jSIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjYzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZpZ3VyYXRpb24gZXJyb3I6ICVzOiVkOiAlcyIKK21zZ3N0ciAi6YWN572u6ZSZ6K+v77yaJXM6JWTvvJolcyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjc1CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuIGNvbmZpZ3VyYXRpb24gZmlsZSAnJS4yNTVzJyBmb3IgcmVhZGluZzogJXMiCittc2dzdHIgIuaXoOazleaJk+W8gOmFjee9ruaWh+S7tiAgJS4yNTVzIOS7peWkh+ivu+WPlu+8miVzIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYmFsYW5jZWQgcXVvdGVzIGluICclcyciCittc2dzdHIgIiVzIOS4reacieS4jeW5s+ihoeW8leeUqCIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjExNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiAnJXMnIgorbXNnc3RyICLmnKrnn6XpgInpobkgJXMgIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTIxCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgbmVlZHMgYSB2YWx1ZSIKK21zZ3N0ciAiJyVzJyDpgInpobnpnIDopoHkuIDkuKrlgLwiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBkb2VzIG5vdCB0YWtlIGEgdmFsdWUiCittc2dzdHIgIiclcycg6YCJ6aG55LiN6ZyA6KaB5YC8IgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTMzCisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWQgZXJyb3IgaW4gY29uZmlndXJhdGlvbiBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICLor7vlj5bphY3nva7mlofku7YgJS4yNTVzIOaXtuWHuumUmSIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nIGNvbmZpZ3VyYXRpb24gZmlsZSBgJS4yNTVzJyIKK21zZ3N0ciAi5YWz6Zet6YWN572u5paH5Lu2ICUuMjU1cyDml7blh7rplJkiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxNzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igb3BlbmluZyBjb25maWd1cmF0aW9uIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICLmiZPlvIDphY3nva7nm67lvZUgJXMg5pe25Ye66ZSZIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjI4CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gb3B0aW9uIC0tJXMiCittc2dzdHIgIuacquefpemAiemhuSAtLSAlcyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjIzMgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG9wdGlvbiB0YWtlcyBhIHZhbHVlIgorbXNnc3RyICItLSVzIOmAiemhuemcgOimgeS4gOS4quWPguaVsCIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjIzNworIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG9wdGlvbiBkb2VzIG5vdCB0YWtlIGEgdmFsdWUiCittc2dzdHIgIi0tJXMg6YCJ6aG55LiN6ZyA6KaB5Y+C5pWwIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gb3B0aW9uIC0lYyIKK21zZ3N0ciAi5pyq55+l6YCJ6aG5IC0lYyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI1MAorIywgYy1mb3JtYXQKK21zZ2lkICItJWMgb3B0aW9uIHRha2VzIGEgdmFsdWUiCittc2dzdHIgIi0lYyDpgInpobnpnIDopoHkuIDkuKrlj4LmlbAiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiLSVjIG9wdGlvbiBkb2VzIG5vdCB0YWtlIGEgdmFsdWUiCittc2dzdHIgIi0lYyDpgInpobnkuI3pnIDopoHlj4LmlbAiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyNzEKKyMsIGMtZm9ybWF0Cittc2dpZCAib2Jzb2xldGUgb3B0aW9uICctLSVzJ1xuIgorbXNnc3RyICLlup/lvIPnmoTpgInpobkgLS0lcyBcbiIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI4NworIywgYy1mb3JtYXQKK21zZ2lkICJjb25mbGljdGluZyBhY3Rpb25zIC0lYyAoLS0lcykgYW5kIC0lYyAoLS0lcykiCittc2dzdHIgIi0lYyAoLS0lcykg5ZKMIC0lYyAoLS0lcykg5Lik5Liq5pON5L2c5LmL6Ze05pyJ55+b55u+IgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgdmFsdWUgZm9yIGAlcycgZmllbGQiCittc2dzdHIgIuacieWkmuS4quWAvOWvueW6lOS6juWtl+autSAlcyAiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MTQ2CisjLCBjLWZvcm1hdAorbXNnaWQgInVzZXItZGVmaW5lZCBmaWVsZCBuYW1lIGAlLipzJyB0b28gc2hvcnQiCittc2dzdHIgIueUqOaIt+iHquWumuS5ieeahOWtl+auteWQjSAlLipzIOWkquefrSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoxNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHZhbHVlIGZvciB1c2VyLWRlZmluZWQgZmllbGQgYCUuKnMnIgorbXNnc3RyICLmnInlpJrkuKrlgLzlr7nlupTkuo7nlKjmiLfoh6rlrprkuYnnmoTlrZfmrrUgJS4qcyAiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjA3Cittc2dpZCAiQ29uZmlndXJlZC1WZXJzaW9uIGZvciBwYWNrYWdlIHdpdGggaW5hcHByb3ByaWF0ZSBTdGF0dXMiCittc2dzdHIgIui9r+S7tuWMheaciSBDb25maWd1cmVkLVZlcnNpb24g55qE5qCH5b+X77yM5L2G5piv5a6D5a6J6KOF54q25oCB5Y205LiO5LmL5LiN56ymIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjIxOAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGhhcyBzdGF0dXMgJXMgYnV0IHRyaWdnZXJzIGFyZSBhd2FpdGVkIgorbXNnc3RyICLova/ku7bljIXmnIkgJXMg54q25oCB5L2G6Kem5Y+R5Zmo5Zyo562J5b6FIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjIyMgorbXNnaWQgInBhY2thZ2UgaGFzIHN0YXR1cyB0cmlnZ2Vycy1hd2FpdGVkIGJ1dCBubyB0cmlnZ2VycyBhd2FpdGVkIgorbXNnc3RyICLova/ku7bljIXmnInop6blj5HlmajnrYnlvoXnirbmgIHkvYbmsqHmnInop6blj5HlmajlnKjnrYnlvoUiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjI4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgaGFzIHN0YXR1cyAlcyBidXQgdHJpZ2dlcnMgYXJlIHBlbmRpbmciCittc2dzdHIgIui9r+S7tuWMheaciSAlcyDnirbmgIHkvYbmmK/op6blj5HlmajlpITkuo7mnKrlhrPnirbmgIEiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjMyCittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzIHRyaWdnZXJzLXBlbmRpbmcgYnV0IG5vIHRyaWdnZXJzIHBlbmRpbmciCittc2dzdHIgIui9r+S7tuWMheacieinpuWPkeWZqOacquWGs+eKtuaAgeS9huayoeacieinpuWPkeWZqOWkhOS6juacquWGs+eKtuaAgSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyNDIKK21zZ2lkICJQYWNrYWdlIHdoaWNoIGluIHN0YXRlIG5vdC1pbnN0YWxsZWQgaGFzIGNvbmZmaWxlcywgZm9yZ2V0dGluZyB0aGVtIgorbXNnc3RyICLor6Xova/ku7bljIXnmoTnirbmgIHmmK/lsJrmnKrlronoo4XvvIzkvYbmmK/lroPljbTmnIkgY29uZmZpbGVz77yM5b+955Wl6L+Z5LqbIGNvbmZmaWxlIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjMzNQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiBwYWNrYWdlIGluZm8gZmlsZSBgJS4yNTVzJyBmb3IgcmVhZGluZyIKK21zZ3N0ciAi5peg5rOV5omT5byA6L2v5Lu25YyF55qEIGluZm8g5paH5Lu2ICUuMjU1cyDov5vooYzor7vlj5YiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzQxCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbid0IHN0YXQgcGFja2FnZSBpbmZvIGZpbGUgYCUuMjU1cyciCittc2dzdHIgIuaXoOazleiOt+W+l+i9r+S7tuWMhSBpbmZvIOaWh+S7tiAlLjI1NXMg55qE54q25oCBIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjM0NworIywgYy1mb3JtYXQKK21zZ2lkICJjYW4ndCBtbWFwIHBhY2thZ2UgaW5mbyBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICLml6Dms5UgbW1hcCDova/ku7bljIXnmoQgaW5mbyDmlofku7YgJS4yNTVzICIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozNTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImNhbid0IHN0YXQgcGFja2FnZSBpbmZvIGZpbGUgYCUuMjU1cyciCittc2dpZCAicmVhZGluZyBwYWNrYWdlIGluZm8gZmlsZSAnJS4yNTVzJyIKK21zZ3N0ciAi5peg5rOV6I635b6X6L2v5Lu25YyFIGluZm8g5paH5Lu2ICUuMjU1cyDnmoTnirbmgIEiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MzYzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjbG9zZSBhZnRlciByZWFkOiBgJS4yNTVzJyIKK21zZ3N0ciAi6K+75Y+W5a6M5q+VICUuMjU1cyDlkI7vvIzml6Dms5XlhbPpl63or6Xmlofku7YiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDA0CisjLCBjLWZvcm1hdAorbXNnaWQgIkVPRiBhZnRlciBmaWVsZCBuYW1lIGAlLipzJyIKK21zZ3N0ciAi5Zyo5a2X5q615ZCNICUuKnMg5ZCO5Y+R546wIEVPRiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MDcKKyMsIGMtZm9ybWF0Cittc2dpZCAibmV3bGluZSBpbiBmaWVsZCBuYW1lIGAlLipzJyIKK21zZ3N0ciAi5Zyo5a2X5q615ZCNICUuKnMg5Lit5Y+R546w5o2i6KGM56ymIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQxMAorIywgYy1mb3JtYXQKK21zZ2lkICJNU0RPUyBFT0YgKF5aKSBpbiBmaWVsZCBuYW1lIGAlLipzJyIKK21zZ3N0ciAi5Zyo5a2X5q615ZCNICUuKnMg5Lit5Y+R546wIE1TRE9TIEVPRiAoXlopIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQxNAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWVsZCBuYW1lIGAlLipzJyBtdXN0IGJlIGZvbGxvd2VkIGJ5IGNvbG9uIgorbXNnc3RyICLlrZfmrrXlkI0gJS4qcyDlkI7lv4XpobvntKfot5/lhpLlj7ciCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDI1CisjLCBjLWZvcm1hdAorbXNnaWQgIkVPRiBiZWZvcmUgdmFsdWUgb2YgZmllbGQgYCUuKnMnIChtaXNzaW5nIGZpbmFsIG5ld2xpbmUpIgorbXNnc3RyICLlnKjlrZfmrrUgJS4qcyDnmoTlgLznmoTliY3pnaLlj5HnjrDkuoYgRU9GKOe8uuWwkeacgOWQjue7k+WwvueahOaNouihjOespikiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDI5CisjLCBjLWZvcm1hdAorbXNnaWQgIk1TRE9TIEVPRiBjaGFyIGluIHZhbHVlIG9mIGZpZWxkIGAlLipzJyAobWlzc2luZyBuZXdsaW5lPykiCittc2dzdHIgIuWcqOWtl+autSAlLipzIOeahOWAvOS4remXtOWPkeeOsOS6hiBNU0RPUyBFT0Yg5a2X56ymKOe8uuWwkeacgOWQjue7k+WwvueahOaNouihjOespu+8nykiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDQwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJuZXdsaW5lIGluIGZpZWxkIG5hbWUgYCUuKnMnIgorbXNnaWQgImJsYW5rIGxpbmUgaW4gdmFsdWUgb2YgZmllbGQgJyUuKnMnIgorbXNnc3RyICLlnKjlrZfmrrXlkI0gJS4qcyDkuK3lj5HnjrDmjaLooYznrKYiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDYxCisjLCBjLWZvcm1hdAorbXNnaWQgIkVPRiBkdXJpbmcgdmFsdWUgb2YgZmllbGQgYCUuKnMnIChtaXNzaW5nIGZpbmFsIG5ld2xpbmUpIgorbXNnc3RyICLlnKjlrZfmrrUgJS4qcyDnmoTlgLzkuK3pl7Tlj5HnjrDkuoYgRU9GIOWtl+espijnvLrlsJHmnIDlkI7nu5PlsL7nmoTmjaLooYznrKYpIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjU0NgorbXNnaWQgInNldmVyYWwgcGFja2FnZSBpbmZvIGVudHJpZXMgZm91bmQsIG9ubHkgb25lIGFsbG93ZWQiCittc2dzdHIgIuWPkeeOsOS6huWkmuS4qui9r+S7tuWMheeahCBpbmZvIOadoeebru+8jOS9huWPquWFgeiuuOS4gOS4qiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo1NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gcGFja2FnZSBpbmZvcm1hdGlvbiBpbiBgJS4yNTVzJyIKK21zZ3N0ciAi5ZyoICUuMjU1cyDkuK3msqHmnInova/ku7bljIXnmoTnm7jlhbPkv6Hmga8iCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjQ1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiJXMsIGluIGZpbGUgJyUuMjU1cycgbmVhciBsaW5lICVkIHBhY2thZ2UgJyUuMjU1cyc6XG4iCisjfCAiICIKK21zZ2lkICIiCisicGFyc2luZyBmaWxlICclLjI1NXMnIG5lYXIgbGluZSAlZCBwYWNrYWdlICclLjI1NXMnOlxuIgorIiAlLjI1NXMiCittc2dzdHIgIiIKKyIlc++8jOWcqOaWh+S7tiAlLjI1NXMg56ysICVkIOihjOmZhOi/ke+8jOi9r+S7tuWMhSAlLjI1NXMgOlxuIgorIiAiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjQ4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiJXMsIGluIGZpbGUgJyUuMjU1cycgbmVhciBsaW5lICVkOlxuIgorI3wgIiAiCittc2dpZCAiIgorInBhcnNpbmcgZmlsZSAnJS4yNTVzJyBuZWFyIGxpbmUgJWQ6XG4iCisiICUuMjU1cyIKK21zZ3N0ciAiIgorIiVz77yM5Zyo5paH5Lu2ICUuMjU1cyDnrKwgJWQg6KGM6ZmE6L+ROlxuIgorIiAiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjEyNQorbXNnaWQgIm1heSBub3QgYmUgZW1wdHkgc3RyaW5nIgorbXNnc3RyICLkuI3lupTlvZPkuLrnqbrlrZfnrKbkuLIiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjEyNworIywgZnV6enkKKyN8IG1zZ2lkICJtdXN0IHN0YXJ0IHdpdGggYW4gYWxwaGFudW1lcmljIgorbXNnaWQgIm11c3Qgc3RhcnQgd2l0aCBhbiBhbHBoYW51bWVyaWMgY2hhcmFjdGVyIgorbXNnc3RyICLlv4Xpobvku6XlrZfmr43lvIDlpLQiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjEzNgorIywgYy1mb3JtYXQKK21zZ2lkICJjaGFyYWN0ZXIgYCVjJyBub3QgYWxsb3dlZCAob25seSBsZXR0ZXJzLCBkaWdpdHMgYW5kIGNoYXJhY3RlcnMgYCVzJykiCittc2dzdHIgIuS4jeWFgeiuuOWHuueOsOWtl+espiAlYyAgKOWPquiDveS9v+eUqOWtl+espuOAgeaVsOWtl+WSjCAlcykiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjE3OAorIywgZnV6enkKKyN8IG1zZ2lkICI8bm9uZT4iCittc2djdHh0ICJ2ZXJzaW9uIgorbXNnaWQgIjxub25lPiIKK21zZ3N0ciAiPOaXoD4iCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjIwOQorbXNnaWQgInZlcnNpb24gc3RyaW5nIGlzIGVtcHR5IgorbXNnc3RyICLniYjmnKzlj7fkuLrnqboiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjIyNAorbXNnaWQgInZlcnNpb24gc3RyaW5nIGhhcyBlbWJlZGRlZCBzcGFjZXMiCittc2dzdHIgIueJiOacrOWPt+mHjOW1jOacieepuuagvOWtl+espiIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjMwCittc2dpZCAiZXBvY2ggaW4gdmVyc2lvbiBpcyBub3QgbnVtYmVyIgorbXNnc3RyICLniYjmnKzkuK3nmoTniYjmrKHkuI3mmK/mlbDlrZciCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjIzMgorbXNnaWQgIm5vdGhpbmcgYWZ0ZXIgY29sb24gaW4gdmVyc2lvbiBudW1iZXIiCittc2dzdHIgIueJiOacrOWPt+eahOWGkuWPt+WQjumdouayoeacieS7u+S9leS4nOilvyIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjQ3Cittc2dpZCAidmVyc2lvbiBudW1iZXIgZG9lcyBub3Qgc3RhcnQgd2l0aCBkaWdpdCIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyNTAKK21zZ2lkICJpbnZhbGlkIGNoYXJhY3RlciBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAi54mI5pys5Y+35ZCO55qE5a2X56ym5Liy5peg5pWIIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyNTQKK21zZ2lkICJpbnZhbGlkIGNoYXJhY3RlciBpbiByZXZpc2lvbiBudW1iZXIiCittc2dzdHIgIueJiOacrOWPt+WQjueahOWtl+espuS4suaXoOaViCIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6Mjk5IGxpYi9kcGtnL3BhcnNlaGVscC5jOjMxMQorIywgYy1mb3JtYXQKK21zZ2lkICJtaXNzaW5nICVzIgorbXNnc3RyICLmib7kuI3liLAgJXMiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjMwMSBsaWIvZHBrZy9wYXJzZWhlbHAuYzozMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZW1wdHkgdmFsdWUgZm9yICVzIgorbXNnc3RyICIlcyDnmoTlgLzkuLrnqboiCisKKyM6IGxpYi9kcGtnL3BrZy1mb3JtYXQuYzo4MAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGNoYXJhY3RlciBgJWMnIGluIGZpZWxkIHdpZHRoXG4iCittc2dzdHIgIuWtl+auteWuveW6puS4reacieaXoOaViOeahOWtl+espiAlYyBcbiIKKworIzogbGliL2Rwa2cvcGtnLWZvcm1hdC5jOjE3MgorIywgYy1mb3JtYXQKK21zZ2lkICJDbG9zaW5nIGJyYWNlIG1pc3NpbmcgaW4gZm9ybWF0XG4iCittc2dzdHIgIuayoeacieWPkeeOsOagvOW8j+Wtl+S4suS4remFjeWvueeahOWPs+aLrOWPt1xuIgorCisjOiBsaWIvZHBrZy9wa2ctc2hvdy5jOjQwCittc2dpZCAiKG5vIGRlc2NyaXB0aW9uIGF2YWlsYWJsZSkiCittc2dzdHIgIijml6Dlj6/nlKjmj4/ov7ApIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGlnbm9yZSBzaWduYWwgJXMgYmVmb3JlIHJ1bm5pbmcgJS4yNTBzIgorbXNnc3RyICLml6Dms5XlnKjov5DooYwgJTIkLjI1MHMg5LmL5YmN5b+955Wl5L+h5Y+3ICUxJHMiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzo2OAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciB1bi1jYXRjaGluZyBzaWduYWwgJXM6ICVzXG4iCittc2dzdHIgIuW9k+aBouWkjeWkhOeQhuS/oeWPtyAlcyDml7blh7rplJnvvJolc1xuIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgKHN1YnByb2Nlc3MpOiAlc1xuIgorbXNnc3RyICIlcyAo5a2Q6L+b56iLKe+8miVzXG4iCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzo4OSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NDU0Cittc2dpZCAiZm9yayBmYWlsZWQiCittc2dzdHIgImZvcmsg5aSx6LSlIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTE5CisjLCBjLWZvcm1hdAorbXNnaWQgInN1YnByb2Nlc3MgJXMgcmV0dXJuZWQgZXJyb3IgZXhpdCBzdGF0dXMgJWQiCittc2dzdHIgIuWtkOi/m+eoiyAlcyDov5Tlm57kuobplJnor6/lj7cgJWQiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMjgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIndhaXQgZm9yIHN1YnByb2Nlc3MgJXMgZmFpbGVkIgorbXNnaWQgInN1YnByb2Nlc3MgJXMgd2FzIGludGVycnVwdGVkIgorbXNnc3RyICLnrYnlvoXlrZDov5vnqIsgJXMg5pe25Ye66ZSZIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTMwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJzdWJwcm9jZXNzICVzIGtpbGxlZCBieSBzaWduYWwgKCVzKSVzIgorbXNnaWQgInN1YnByb2Nlc3MgJXMgd2FzIGtpbGxlZCBieSBzaWduYWwgKCVzKSVzIgorbXNnc3RyICLlrZDov5vnqIsgJXMg6KKr5L+h5Y+3KCVzKSVzIOe7iOatouS6hiIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEzMgorbXNnaWQgIiwgY29yZSBkdW1wZWQiCittc2dzdHIgIu+8jOaguOW/g+W3sui9rOWCqCIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJzdWJwcm9jZXNzICVzIGZhaWxlZCB3aXRoIHdhaXQgc3RhdHVzIGNvZGUgJWQiCittc2dzdHIgIuWtkOi/m+eoiyAlcyDlh7rplJnvvIzmiYDojrflvpfnmoTnrYnlvoXnirbmgIHmlbDkuLogJWQiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxNTEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQ2MQorIywgYy1mb3JtYXQKK21zZ2lkICJ3YWl0IGZvciBzdWJwcm9jZXNzICVzIGZhaWxlZCIKK21zZ3N0ciAi562J5b6F5a2Q6L+b56iLICVzIOaXtuWHuumUmSIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBwYWNrYWdlIG5hbWUgYCUuMjUwcycgaW4gdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi5peg5pWI55qE6L2v5Lu25YyF5ZCNICUuMjUwcyDlh7rnjrDlnKjop6blj5Hmjqjov5/mlofku7YgJS4yNTBzIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDo4MQorIywgYy1mb3JtYXQKK21zZ2lkICJ0cnVuY2F0ZWQgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi5bey5oiq5pat6Kem5Y+R5o6o6L+f5paH5Lu2ICUuMjUwcyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yIGluIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcycgYXQgY2hhcmFjdGVyIGAlcyclcyIKK21zZ3N0ciAi6Kem5Y+R5o6o6L+f5paH5Lu2ICUuMjUwcyDkuK3mnInor63ms5XplJnor6/vvIzlnKjlrZfnrKYgJXMgJXMiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3Blbi9jcmVhdGUgdHJpZ2dlcnMgbG9ja2ZpbGUgYCUuMjUwcyciCittc2dzdHIgIuaXoOazleaJk+W8gC/liJvlu7rop6blj5HlmajplIHmlofku7YgJS4yNTBzIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNDEKKyMsIGZ1enp5CisjfCBtc2dpZCAidHJpZ2dlcmVkIgorbXNnaWQgInRyaWdnZXJzIGFyZWEiCittc2dzdHIgIuW3suinpuWPkSIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MTUxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuaXoOazleiOt+WPluinpuWPkeaOqOi/n+aWh+S7tiAlLjI1MHMg55qE5L+h5oGvIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi5peg5rOV5omT5byA6Kem5Y+R5o6o6L+f5paH5Lu2ICUuMjUwcyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MTc5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuL2NyZWF0ZSBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi5peg5rOV5omT5byAL+WIm+W7uuaWsOeahOinpuWPkeaOqOi/n+aWh+S7tiAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjIxNQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciByZWFkaW5nIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuivu+WPluinpuWPkeaOqOi/n+aWh+S7tiAlLjI1MHMg5pe25Ye66ZSZIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoyMjMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ldyB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLml6Dms5XlhpnlhaXmlrDnmoTop6blj5Hmjqjov5/mlofku7YgJS4yNTBzIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoyMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIG5ldyB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLml6Dms5XlhbPpl63mlrDnmoTop6blj5Hmjqjov5/mlofku7YgJS4yNTBzIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuaXoOazleWuieijheaWsOeahOinpuWPkeaOqOi/n+aWh+S7tiAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzoyMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImludmFsaWQgb3IgdW5rbm93biBzeW50YXggaW4gdHJpZ2dlciBuYW1lIGAlLjI1MHMnIChpbiB0cmlnZ2VyIGludGVyZXN0cyBmb3IgIgorInBhY2thZ2UgYCUuMjUwcycpIgorbXNnc3RyICIiCisi6Kem5Y+R5Zmo5ZCNICUuMjUwcyDljIXlkKvml6DmlYjmiJbogIXmnKrnn6XnmoTor63ms5Uo5Zyo5a+56L2v5Lu25YyFICUuMjUwcyDmhJ/lhbTotqPnmoTop6blj5HlmajkuK0pIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MjYzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuIHRyaWdnZXIgaW50ZXJlc3QgbGlzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLml6Dms5XmiZPlvIDop6blj5HlhbPms6jliJfooajmlofku7YgJS4yNTBzIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MjkyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLlm57liLDop6blj5HlhbPms6jmlofku7YgJS4yNTBzIOi1t+Wni+S9jee9ruWksei0pSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMwNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIHN5bnRheCBlcnJvcjsgaWxsZWdhbCBwYWNrYWdlIG5hbWUgYCUuMjUwcyc6ICIKKyIlLjI1MHMiCittc2dzdHIgIuinpuWPkeWFs+azqOaWh+S7tiAlLjI1MHMg6K+t5rOV6ZSZ6K+v77yb6Z2e5rOV55qE6L2v5Lu25YyF5ZCNICUuMjUwcyDvvJolLjI1MHMiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuaXoOazleWGmeWFpeaWsOeahOinpuWPkeWFs+azqOaWh+S7tiAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMjEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgIuaXoOazlea4heepuuaWsOeahOinpuWPkeWFs+azqOaWh+S7tiAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAi5peg5rOV5ZCM5q2l5paw55qE6Kem5Y+R5YWz5rOo5paH5Lu2ICUuMjUwcyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMzMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLml6Dms5Xlronoo4XmlrDnmoTop6blj5HlhbPms6jmlofku7YgJS4yNTBzIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzQwIGxpYi9kcGtnL3RyaWdsaWIuYzozNDIgbGliL2Rwa2cvdHJpZ2xpYi5jOjQ3MgorIzogc3JjL3JlbW92ZS5jOjI4NiBzcmMvcmVtb3ZlLmM6Mzc3CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZW1vdmUgYCUuMjUwcyciCittc2dzdHIgIuaXoOazleWNuOi9vSAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozNjAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLml6Dms5XliJvlu7rmlrDnmoTop6blj5HlhbPms6jmlofku7YgJS4yNTBzIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzgzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLml6Dms5XliJvlu7rmlrDnmoTop6blj5HlhbPms6jmlofku7YgJS4yNTBzIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDU2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkdXBsaWNhdGUgZmlsZSB0cmlnZ2VyIGludGVyZXN0IGZvciBmaWxlbmFtZSBgJS4yNTBzJyBhbmQgcGFja2FnZSBgJS4yNTBzJyIKK21zZ3N0ciAi5paH5Lu2ICUuMjUwcyDlkozova/ku7bljIUgJS4yNTBzIOaciemHjeWkjeeahOaWh+S7tuinpuWPkeWFs+azqCIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ4MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuaXoOazleWIm+W7uuaWsOeahOaWh+S7tuinpuWPkeaWh+S7tiAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0OTMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuaXoOazleWGmeWFpeaWsOeahOaWh+S7tuinpuWPkeaWh+S7tiAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0OTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgJyUuMjUwcyciCittc2dzdHIgIuaXoOazlea4heepuuaWsOeahOaWh+S7tuinpuWPkeaWh+S7tiAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0OTkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAi5peg5rOV5ZCM5q2l5paw55qE5paH5Lu26Kem5Y+R5paH5Lu2ICUuMjUwcyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjUwMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2xvc2UgbmV3IGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi5peg5rOV5Yib5bu65paw55qE5paH5Lu26Kem5Y+R5paH5Lu2ICUuMjUwcyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjUwNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGFzIGAlLjI1MHMnIgorbXNnc3RyICLml6Dms5Xlronoo4XmlrDnmoTmlofku7bop6blj5Hmlofku7bliLAgJS4yNTBzIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTQyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi5peg5rOV6K+75Y+W5paH5Lu26Kem5Y+R5paH5Lu2ICUuMjUwcyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjU1MgorIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLmlofku7bop6blj5Hmlofku7YgJS4yNTBzIOS4reacieivreazlemUmeivryIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjU2MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZmlsZSB0cmlnZ2VycyByZWNvcmQgbWVudGlvbnMgaWxsZWdhbCBwYWNrYWdlIG5hbWUgYCUuMjUwcycgKGZvciBpbnRlcmVzdCBpbiAiCisiZmlsZSBgJS4yNTBzJyk6ICUuMjUwcyIKK21zZ3N0ciAiIgorIuaWh+S7tuinpuWPkeiusOW9leacieaPkOWIsOmdnuazleeahOi9r+S7tuWMheWQjSAlLjI1MHMgKOeUqOS6juaWh+S7tiAlLjI1MHMg55qE6Kem5Y+R5YWz5rOoKe+8miUuMjUwcyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjY2NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidHJpZ2dlcnMgY2kgZmlsZSBgJS4yNTBzJyBjb250YWlucyBpbGxlZ2FsIHRyaWdnZXIgc3ludGF4IGluIHRyaWdnZXIgbmFtZSBgIgorIiUuMjUwcyc6ICUuMjUwcyIKK21zZ3N0ciAi6Kem5Y+R5Zmo6YWN572u6aG55paH5Lu2YCUuMjUwcyflnKjop6blj5HlmajlkI0gJS4yNTBzIOS4reWMheWQq+mdnuazleinpuWPkeWZqOivreazle+8miUuMjUwcyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjY4NAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiB0cmlnZ2VycyBjaSBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLml6Dms5XmiZPlvIDop6blj5HlmajphY3nva7pobnmlofku7YgJS4yNTBzIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Njk5Cittc2dpZCAidHJpZ2dlcnMgY2kgZmlsZSBjb250YWlucyB1bmtub3duIGRpcmVjdGl2ZSBzeW50YXgiCittc2dzdHIgIuinpuWPkeWZqOmFjee9rumhueaWh+S7tuWMheWQq+S9jee9ruaMh+S7pOivreazlSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjcxMgorIywgYy1mb3JtYXQKK21zZ2lkICJ0cmlnZ2VycyBjaSBmaWxlIGNvbnRhaW5zIHVua25vd24gZGlyZWN0aXZlIGAlLjI1MHMnIgorbXNnc3RyICLop6blj5HlmajphY3nva7pobnmlofku7bljIXlkKvkvY3nva7mjIfku6QgJS4yNTBzIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Nzc2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdHJpZ2dlcnMgc3RhdGUgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICLml6Dms5XliJvlu7rop6blj5HlmajnirbmgIHnm67lvZUgJS4yNTBzIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Nzc5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgb3duZXJzaGlwIG9mIHRyaWdnZXJzIHN0YXRlIGRpcmVjdG9yeSBgJS4yNTBzJyIKK21zZ3N0ciAi5peg5rOV6K6+572u6Kem5Y+R5Zmo54q25oCB55uu5b2VICUuMjUwcyDnmoTmiYDmnInmnYMiCisKKyM6IGxpYi9kcGtnL3RyaWduYW1lLmM6MzQKK21zZ2lkICJlbXB0eSB0cmlnZ2VyIG5hbWVzIGFyZSBub3QgcGVybWl0dGVkIgorbXNnc3RyICLkuI3lhYHorrjnqbrnmoTop6blj5HlmajlkI0iCisKKyM6IGxpYi9kcGtnL3RyaWduYW1lLmM6MzgKK21zZ2lkICJ0cmlnZ2VyIG5hbWUgY29udGFpbnMgaW52YWxpZCBjaGFyYWN0ZXIiCittc2dzdHIgIuinpuWPkeWZqOWQjeWMheWQq+aXoOaViOWtl+espiIKKworIzogbGliL2Rwa2cvdXRpbHMuYzo1NgorIywgYy1mb3JtYXQKK21zZ2lkICJyZWFkIGVycm9yIGluIGAlLjI1MHMnIgorbXNnc3RyICLor7vlj5YgJS4yNTBzIOWHuumUmSIKKworIzogbGliL2Rwa2cvdXRpbHMuYzo2MQorIywgYy1mb3JtYXQKK21zZ2lkICJmZ2V0cyBnYXZlIGFuIGVtcHR5IHN0cmluZyBmcm9tIGAlLjI1MHMnIgorbXNnc3RyICJmZ2V0cyDku44gJS4yNTBzIOWPluWbnuS6huS4gOS4quepuueahOWtl+espuS4siIKKworIzogbGliL2Rwa2cvdXRpbHMuYzo2MworIywgYy1mb3JtYXQKK21zZ2lkICJ0b28tbG9uZyBsaW5lIG9yIG1pc3NpbmcgbmV3bGluZSBpbiBgJS4yNTBzJyIKK21zZ3N0ciAi5paH5Lu2ICUuMjUwcyDkuK3nmoTooYzlpKrplb/miJbogIXnvLrlsJHmjaLooYznrKYiCisKKyM6IGxpYi9kcGtnL3V0aWxzLmM6NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgcmVhZGluZyBgJS4yNTBzJyIKK21zZ3N0ciAi6K+75Y+WICUuMjUwcyDml7blj5HnjrDmnKrpooTmnJ/nmoTmlofku7bnu5PmnZ/nrKYiCisKKyM6IGxpYi9kcGtnL3ZhcmJ1Zi5jOjgyIGxpYi9kcGtnL3ZhcmJ1Zi5jOjg4Cittc2dpZCAiZXJyb3IgZm9ybWF0dGluZyBzdHJpbmcgaW50byB2YXJidWYgdmFyaWFibGUiCittc2dzdHIgIuWwhuWtl+espuS4suagvOW8j+WMluS4uiB2YXJidWYg5Y+Y6YeP5pe25Ye66ZSZIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxNzkgc3JjL2FyY2hpdmVzLmM6MjAwIHNyYy9hcmNoaXZlcy5jOjcyNAorbXNnaWQgImVycm9yIHJlYWRpbmcgZnJvbSBkcGtnLWRlYiBwaXBlIgorbXNnc3RyICLku44gZHBrZy1kZWIg55qE566h6YGT6K+75Y+W5pWw5o2u5pe25Ye66ZSZIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxOTUKKyMsIGMtZm9ybWF0Cittc2dpZCAic2tpcHBlZCB1bnBhY2tpbmcgZmlsZSAnJS4yNTVzJyAocmVwbGFjZWQgb3IgZXhjbHVkZWQ/KSIKK21zZ3N0ciAi5bey6Lez6L+H5pyq6Kej5YyF5paH5Lu2ICUuMjU1cyAo5bey6KKr5pu/5o2i5oiW5o6S6Zmk77yfKSIKKworIzogc3JjL2FyY2hpdmVzLmM6MjQ2IHNyYy9hcmNoaXZlcy5jOjI1MAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIHRpbWVzdGFtcHMgb2YgYCUuMjU1cyciCittc2dzdHIgIuS4uiAlLjI1NXMg6K6+572u5pe26Ze05oiz5pe25Ye66ZSZIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoyNjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igc2V0dGluZyBvd25lcnNoaXAgb2Ygc3ltbGluayBgJS4yNTVzJyIKK21zZ3N0ciAi5Li656ym5Y+36ZO+5o6lICUuMjU1cyDorr7nva7lsZ7kuLvml7blh7rplJkiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjI2NSBzcmMvYXJjaGl2ZXMuYzo3MzQgc3JjL3N0YXRjbWQuYzoxNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igc2V0dGluZyBvd25lcnNoaXAgb2YgYCUuMjU1cyciCittc2dzdHIgIuS4uiAlLjI1NXMg6K6+572u5bGe5Li75pe25Ye66ZSZIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoyNjcgc3JjL2FyY2hpdmVzLmM6NzM2IHNyYy9zdGF0Y21kLmM6MTY1CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHNldHRpbmcgcGVybWlzc2lvbnMgb2YgYCUuMjU1cyciCittc2dzdHIgIuS4uiAlLjI1NXMg6K6+572u5p2D6ZmQ5L2N5pe25Ye66ZSZIgorCisjOiBzcmMvYXJjaGl2ZXMuYzozOTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHN0YXQgKGRlcmVmZXJlbmNlKSBleGlzdGluZyBzeW1saW5rIGAlLjI1MHMnIgorbXNnc3RyICLojrflj5bnjrDmnInnmoTnrKblj7fpk77mjqUgJS4yNTBzIOeahOeKtuaAgSjlj43lvJXnlKgp5aSx6LSlIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo0MTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImZhaWxlZCB0byBzdGF0IChkZXJlZmVyZW5jZSkgcHJvcG9zZWQgbmV3IHN5bWxpbmsgdGFyZ2V0IGAlLjI1MHMnIGZvciAiCisic3ltbGluayBgJS4yNTBzJyIKK21zZ3N0ciAi6I635Y+W5bu66K6u55qE5paw56ym5Y+36ZO+5o6lICUuMjUwcyDnmoTnirbmgIHlpLHotKXvvIzlroPlsIbmm7/ku6PnrKblj7fpk77mjqUgJS4yNTBzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo0NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInRyeWluZyB0byBvdmVyd3JpdGUgYCUuMjUwcycsIHdoaWNoIGlzIHRoZSBkaXZlcnRlZCB2ZXJzaW9uIG9mIGAiCisiJS4yNTBzJyAocGFja2FnZTogJS4xMDBzKSIKK21zZ3N0ciAi5q2j5Zyo5bCd6K+V6KaG55uWICUuMjUwc++8jOWug+aYryAlLjI1MHMg55qE5pys5Zyw5L+u5pS554mI5pysKOi9r+S7tuWMhe+8miUuMTAwcykiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjQ4MQorIywgYy1mb3JtYXQKK21zZ2lkICJ0cnlpbmcgdG8gb3ZlcndyaXRlIGAlLjI1MHMnLCB3aGljaCBpcyB0aGUgZGl2ZXJ0ZWQgdmVyc2lvbiBvZiBgJS4yNTBzJyIKK21zZ3N0ciAi5q2j5Zyo5bCd6K+V6KaG55uWICUuMjUwc++8jOWug+aYryAlLjI1MHMg55qE5pys5Zyw5L+u5pS554mI5pysIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo1MTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgYCUuMjU1cycgKHdoaWNoIEkgd2FzIGFib3V0IHRvIGluc3RhbGwpIgorbXNnc3RyICLml6Dms5Xojrflj5YgJS4yNTVzIOeahOeKtuaAgSjmraPlh4blpIflronoo4Xor6Xmlofku7YpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo1MTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVuYWJsZSB0byBjbGVhbiB1cCBtZXNzIHN1cnJvdW5kaW5nIGAlLjI1NXMnIGJlZm9yZSBpbnN0YWxsaW5nIGFub3RoZXIgIgorInZlcnNpb24iCittc2dzdHIgIuWcqOWuieijheWPpuS4gOeJiOacrOWJje+8jOaXoOazlea4heeQhiAlLjI1NXMg55qE5Li05pe25paH5Lu2IgorCisjOiBzcmMvYXJjaGl2ZXMuYzo1MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgcmVzdG9yZWQgYCUuMjU1cycgYmVmb3JlIGluc3RhbGxpbmcgYW5vdGhlciB2ZXJzaW9uIgorbXNnc3RyICLlnKjlronoo4Xlj6bkuIDniYjmnKzliY3vvIzml6Dms5Xojrflj5bmgaLlpI3lkI7nmoQgJS4yNTVzIOeahOeKtuaAgSIKKworIzogc3JjL2FyY2hpdmVzLmM6NTYxCisjLCBjLWZvcm1hdAorbXNnaWQgImFyY2hpdmUgY29udGFpbmVkIG9iamVjdCBgJS4yNTVzJyBvZiB1bmtub3duIHR5cGUgMHgleCIKK21zZ3N0ciAi5YyF5paH5Lu25Lit5ZCr5pyJ5LiA5Liq5a+56LGhICUuMjU1c++8jOaXoOazleivhuWIq+Wug+eahOexu+WeiyAweCV4IgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2MjYgc3JjL2RpdmVydGNtZC5jOjE1MCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NjgyCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIyMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI4NAorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE0NDEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE2ODAKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTY3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjQ0CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUyNworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc3RhdCBmaWxlICclcyciCittc2dzdHIgIuaXoOazleiuv+mXruaWh+S7tiAlcyIKKworIzogc3JjL2FyY2hpdmVzLmM6NjQxCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlcGxhY2luZyBmaWxlcyBpbiBvbGQgcGFja2FnZSAlcyAuLi5cbiIKK21zZ3N0ciAi5q2j5Zyo5pu/5o2i5Y6f6L2v5Lu25YyF5Lit55qE5paH5Lu2ICVzIC4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVwbGFjZWQgYnkgZmlsZXMgaW4gaW5zdGFsbGVkIHBhY2thZ2UgJXMgLi4uXG4iCittc2dzdHIgIuiiq+W3suWuieijheeahOi9r+S7tuWMhSAlcyDkuK3nmoTmlofku7bmm7/mjaLkuoYuLi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6NjU0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ0cnlpbmcgdG8gb3ZlcndyaXRlIGRpcmVjdG9yeSAnJS4yNTBzJyBpbiBwYWNrYWdlICUuMjUwcyAlLjI1MHMgd2l0aCAiCisibm9uZGlyZWN0b3J5IgorbXNnc3RyICIiCisi5q2j6K+V5Zu+55So5LiA5Liq6Z2e55uu5b2V55qE5paH5Lu25pu/5o2i55uu5b2VICUuMjUwc++8jOivpeebruW9leWxnuS6jui9r+S7tuWMhSAlLjI1MHMgJS4yNTBzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJ5aW5nIHRvIG92ZXJ3cml0ZSAnJS4yNTBzJywgd2hpY2ggaXMgYWxzbyBpbiBwYWNrYWdlICUuMjUwcyAlLjI1MHMiCittc2dzdHIgIuato+ivleWbvuimhuebliAlLjI1MHPvvIzlroPlkIzml7booqvljIXlkKvkuo7ova/ku7bljIUgJS4yNTBzICUuMjUwcyIKKworIzogc3JjL2FyY2hpdmVzLmM6NzExCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgYCUuMjU1cycgKHdoaWxlIHByb2Nlc3NpbmcgYCUuMjU1cycpIgorbXNnc3RyICLml6Dms5XliJvlu7ogJS4yNTVzICjlpITnkIYgJS4yNTVzIOaXtikiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjcxOAorIywgYy1mb3JtYXQKK21zZ2lkICJiYWNrZW5kIGRwa2ctZGViIGR1cmluZyBgJS4yNTVzJyIKK21zZ3N0ciAiJS4yNTVzICDml7bvvIxkcGtnLWRlYiDooqvkvZzkuLrlkI7nq68iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc0NCBzcmMvYXJjaGl2ZXMuYzo5MDggc3JjL2FyY2hpdmVzLmM6OTQ5CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3Npbmcvd3JpdGluZyBgJS4yNTVzJyIKK21zZ3N0ciAi5YWz6ZetL+WGmeWFpSAlLjI1NXMg5Ye66ZSZIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgcGlwZSBgJS4yNTVzJyIKK21zZ3N0ciAi5paw5bu6566h6YGTICUuMjU1cyDml7blh7rplJkiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc1MyBzcmMvYXJjaGl2ZXMuYzo3NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgZGV2aWNlIGAlLjI1NXMnIgorbXNnc3RyICLmlrDlu7rorr7lpIfmlofku7YgJS4yNTVzIOaXtuWHuumUmSIKKworIzogc3JjL2FyY2hpdmVzLmM6NzcxCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIGhhcmQgbGluayBgJS4yNTVzJyIKK21zZ3N0ciAi5paw5bu656Gs6ZO+5o6lICUuMjU1cyDml7blh7rplJkiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc3NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NTM5CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIHN5bWJvbGljIGxpbmsgYCUuMjU1cyciCittc2dzdHIgIuaWsOW7uuespuWPt+mTvuaOpSAlLjI1NXMg5pe25Ye66ZSZIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgZGlyZWN0b3J5IGAlLjI1NXMnIgorbXNnc3RyICLmlrDlu7rnm67lvZUgJS4yNTVzIOaXtuWHuumUmSIKKworIzogc3JjL2FyY2hpdmVzLmM6ODIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBtb3ZlIGFzaWRlIGAlLjI1NXMnIHRvIGluc3RhbGwgbmV3IHZlcnNpb24iCittc2dzdHIgIuaXoOazleWwhiAlLjI1NXMg5pS55ZCN77yM5Lul5a6J6KOF5paw55qE54mI5pysIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4MzIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjMyMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBsaW5rIGAlLjI1NXMnIgorbXNnc3RyICLml6Dms5Xor7vlj5bnrKblj7fpk77mjqUgJS4yNTVzICIKKworIzogc3JjL2FyY2hpdmVzLmM6ODM0IHNyYy9jb25maWd1cmUuYzo0MjMKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ltYm9saWMgbGluayAnJS4yNTBzJyBzaXplIGhhcyBjaGFuZ2VkIGZyb20gJWpkIHRvICV6ZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG1ha2UgYmFja3VwIHN5bWxpbmsgZm9yIGAlLjI1NXMnIgorbXNnc3RyICLml6Dms5XkuLogJS4yNTVzIOWBmuS4gOS4quespuWPt+mTvuaOpeWkh+S7vSIKKworIzogc3JjL2FyY2hpdmVzLmM6ODQxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaG93biBiYWNrdXAgc3ltbGluayBmb3IgYCUuMjU1cyciCittc2dzdHIgIuaXoOazleabtOaUuSAlLjI1NXMg55qE56ym5Y+36ZO+5o6l5aSH5Lu955qE5bGe5Li7IgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4NDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG1ha2UgYmFja3VwIGxpbmsgb2YgYCUuMjU1cycgYmVmb3JlIGluc3RhbGxpbmcgbmV3IHZlcnNpb24iCittc2dzdHIgIuaXoOazleWcqOWuieijheaWsOeahOeJiOacrOWJje+8jOS4uiAlLjI1NXMg5YGa5LiA5Liq56ym5Y+36ZO+5o6l5aSH5Lu9IgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4NjMgc3JjL2FyY2hpdmVzLmM6OTU3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyB2ZXJzaW9uIG9mIGAlLjI1NXMnIgorbXNnc3RyICLml6Dms5Xlronoo4UgJS4yNTVzIOeahOaWsOeJiOacrCIKKworIzogc3JjL2FyY2hpdmVzLmM6OTAyIHNyYy9hcmNoaXZlcy5jOjk0NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiAnJS4yNTVzJyIKK21zZ3N0ciAi5peg5rOV5omT5byAICUuMjU1cyAiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjk0NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBmaWxlICclLjI1NXMnIgorbXNnc3RyICLml6Dms5XlkIzmraXmlofku7YgJS4yNTVzICIKKworIzogc3JjL2FyY2hpdmVzLmM6MTAwMAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiaWdub3JpbmcgZGVwZW5kZW5jeSBwcm9ibGVtIHdpdGggJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyLlv73op4YgJXMg55qE5L6d6LWW5YWz57O76Zeu6aKY77yaXG4iCisiJXMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImNvbnNpZGVyaW5nIGRlY29uZmlndXJhdGlvbiBvZiBlc3NlbnRpYWxcbiIKKyIgcGFja2FnZSAlcywgdG8gZW5hYmxlICVzLiIKK21zZ3N0ciAi5q2j5Zyo6ICD6JmR5Y+N6YWN572u5Z+656GA6L2v5Lu25YyFICVz77yM5Lul5L6/5ZCv55SoICVz44CCIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDA4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBubywgJXMgaXMgZXNzZW50aWFsLCB3aWxsIG5vdCBkZWNvbmZpZ3VyZVxuIgorIiBpdCBpbiBvcmRlciB0byBlbmFibGUgJXMuXG4iCittc2dzdHIgIiIKKyJkcGtn77ya5ouS57ud77yMJXMg5piv5Z+656GA6L2v5Lu25YyF77yM5LiN6IO95Y+N6YWN572u6K+l6L2v5Lu25YyFXG4iCisiIOWQr+eUqOW8gOWQryAlc+OAglxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDIyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBubywgY2Fubm90IHByb2NlZWQgd2l0aCAlcyAoLS1hdXRvLWRlY29uZmlndXJlIHdpbGwgaGVscCk6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtn77ya5ouS57ud77yM5LiN6IO957un57ut6L+b6KGMICVzICjkuI3lpqjlsJ3or5UgLS1hdXRvLWRlY29uZmlndXJlKe+8mlxuIgorIiVzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDMyCisjLCBjLWZvcm1hdAorbXNnaWQgInJlbW92YWwgb2YgJS4yNTBzIgorbXNnc3RyICLljbjovb0gJS4yNTBzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDU3CisjLCBjLWZvcm1hdAorbXNnaWQgImluc3RhbGxhdGlvbiBvZiAlLjI1MHMiCittc2dzdHIgIuWuieijhSAlLjI1MHMiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IGNvbnNpZGVyaW5nIGRlY29uZmlndXJhdGlvbiBvZiAlcywgd2hpY2ggd291bGQgYmUgYnJva2VuIGJ5ICVzIC4uLlxuIgorbXNnc3RyICJkcGtn77ya5q2j5Zyo6ICD6JmR5Y+N6YWN572uICVz77yM5ZCm5YiZ5Lya6KKrICVzIOegtOWdjyAuLi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA2NQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiB5ZXMsIHdpbGwgZGVjb25maWd1cmUgJXMgKGJyb2tlbiBieSAlcykuXG4iCittc2dzdHIgImRwa2fvvJrlpb3nmoTvvIzlsIblj43phY3nva4gJXMgKOiiqyAlcyDnoLTlnY8p44CCXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNjkgc3JjL2FyY2hpdmVzLmM6MTE4NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogcmVnYXJkaW5nICVzIGNvbnRhaW5pbmcgJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtn77ya5YWz5LqO5ZCr5pyJICUyJHMg55qEICUxJHPvvJpcbiIKKyIlMyRzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDc3Cittc2dpZCAiaWdub3JpbmcgYnJlYWthZ2UsIG1heSBwcm9jZWVkIGFueXdheSEiCittc2dzdHIgIuW/veinhui9r+S7tuWMhemXtOeahOegtOWdj++8jOaXoOiuuuaAjuagt++8jOe7p+e7reWuieijhe+8gSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA4MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiaW5zdGFsbGluZyAlLjI1MHMgd291bGQgYnJlYWsgJS4yNTBzLCBhbmRcbiIKKyIgZGVjb25maWd1cmF0aW9uIGlzIG5vdCBwZXJtaXR0ZWQgKC0tYXV0by1kZWNvbmZpZ3VyZSBtaWdodCBoZWxwKSIKK21zZ3N0ciAiIgorIuWuieijhSAlLjI1MHMg5bCG56C05Z2PICUuMjUwc++8jOW5tuS4lFxuIgorIuS4jeWFgeiuuOWPjemFjee9rigtLWF1dG8tZGVjb25maWd1cmUg5Lmf6K645Lya5pyJ5biu5YqpKSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA4NgorIywgYy1mb3JtYXQKK21zZ2lkICJpbnN0YWxsaW5nICUuMjUwcyB3b3VsZCBicmVhayBleGlzdGluZyBzb2Z0d2FyZSIKK21zZ3N0ciAi5a6J6KOFICUuMjUwcyDlsIbnoLTlnY/njrDmnInova/ku7YiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExMTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogY29uc2lkZXJpbmcgcmVtb3ZpbmcgJXMgaW4gZmF2b3VyIG9mICVzIC4uLlxuIgorbXNnc3RyICJkcGtn77ya5Li65LqGICUyJHPvvIzmraPogIPomZHljbjovb0gJTEkcyAuLi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTEyMgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgcHJvcGVybHkgaW5zdGFsbGVkIC0gaWdub3JpbmcgYW55IGRlcGVuZGVuY2llcyBvbiBpdC5cbiIKK21zZ3N0ciAiJXMg5rKh5pyJ6KKr5q2j5bi45a6J6KOFIC0g5bCG5b+955Wl5omA5pyJ5a+55a6D55qE5L6d6LWW5YWz57O744CCXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogbWF5IGhhdmUgdHJvdWJsZSByZW1vdmluZyAlcywgYXMgaXQgcHJvdmlkZXMgJXMgLi4uXG4iCittc2dzdHIgImRwa2fvvJrkuZ/orrjljbjovb0gJXMg5Lya5pyJ6Zeu6aKY77yM5Zug5Li65a6D5o+Q5L6b5LqGICVzIC4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTY2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBwYWNrYWdlICVzIHJlcXVpcmVzIHJlaW5zdGFsbGF0aW9uLCBidXQgd2lsbCByZW1vdmUgYW55d2F5IGFzIHlvdSAiCisicmVxdWVzdGVkLlxuIgorbXNnc3RyICIiCisiZHBrZ++8muWwveeuoei9r+S7tuWMhSAlcyDpnIDopoHph43mlrDlronoo4XvvIzkvYbov5jmmK/lsIbpgbXnhafmgqjnmoTopoHmsYLvvIxcbiIKKyLmiorlroPljbjovb3jgIJcbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE2OQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiBwYWNrYWdlICVzIHJlcXVpcmVzIHJlaW5zdGFsbGF0aW9uLCB3aWxsIG5vdCByZW1vdmUuXG4iCittc2dzdHIgImRwa2fvvJrova/ku7bljIUgJXMg6ZyA6KaB6YeN5paw5a6J6KOF77yM5a6D5LiN5Lya6KKr5Y246L2944CCXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogeWVzLCB3aWxsIHJlbW92ZSAlcyBpbiBmYXZvdXIgb2YgJXMuXG4iCittc2dzdHIgImRwa2fvvJrlpb3nmoTvvIzkuLrkuoYgJTIkcyDljbjovb0gJTEkc+OAglxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTkwCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZsaWN0aW5nIHBhY2thZ2VzIC0gbm90IGluc3RhbGxpbmcgJS4yNTBzIgorbXNnc3RyICLova/ku7bljIXnm7jkupLlhrLnqoEgLSDlsIbkuI3lronoo4UgJS4yNTBzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTkxCittc2dpZCAiaWdub3JpbmcgY29uZmxpY3QsIG1heSBwcm9jZWVkIGFueXdheSEiCittc2dzdHIgIuW/veinhui9r+S7tuWMhemXtOeahOWGsueqge+8jOaXoOiuuuaAjuagt++8jOe7p+e7reWuieijhe+8gSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTIzNQorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIC0tcmVjdXJzaXZlIG5lZWRzIGF0IGxlYXN0IG9uZSBwYXRoIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIC0t6YCS5b2S5omn6KGM6ZyA6KaB6Iez5bCR5LiA5Liq6Lev5b6E5L2c5Li65Y+C5pWwIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjQ1Cittc2dpZCAiZmluZCBmb3IgZHBrZyAtLXJlY3Vyc2l2ZSIKK21zZ3N0ciAi5ZCv55SoIC0tcmVjdXJzaXZlIOmAiemhueaJp+ihjCBmaW5kIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjY2Cittc2dpZCAiZmFpbGVkIHRvIGZkb3BlbiBmaW5kJ3MgcGlwZSIKK21zZ3N0ciAi5peg5rOVIGZkb3BlbiBmaW5kIOeahOeuoemBkyIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3MgorbXNnaWQgImVycm9yIHJlYWRpbmcgZmluZCdzIHBpcGUiCittc2dzdHIgIuivu+WPliBmaW5kIOeahOeuoemBk+aXtuWHuumUmSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3MworbXNnaWQgImVycm9yIGNsb3NpbmcgZmluZCdzIHBpcGUiCittc2dzdHIgIuWFs+mXrSBmaW5kIOeahOeuoemBk+aXtuWHuumUmSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3NgorIywgYy1mb3JtYXQKK21zZ2lkICJmaW5kIGZvciAtLXJlY3Vyc2l2ZSByZXR1cm5lZCB1bmhhbmRsZWQgZXJyb3IgJWkiCittc2dzdHIgIi0tcmVjdXJzaXZlIOmAiemhueaJgOiwg+eUqOeahCBmaW5kIOi/lOWbnuS6huS4gOS4quayoeacieiiq+WkhOeQhueahOmUmeivryAlaSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3OQorbXNnaWQgInNlYXJjaGVkLCBidXQgZm91bmQgbm8gcGFja2FnZXMgKGZpbGVzIG1hdGNoaW5nICouZGViKSIKK21zZ3N0ciAi5bey5pCc57Si5YyF5paH5Lu277yM5L2G5piv5rKh5pyJ5Y+R546w5Lu75L2V6L2v5Lu25YyFKOWNs+S4jiAqLmRlYiDljLnphY3nmoTmlofku7YpIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjkwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYXQgbGVhc3Qgb25lIHBhY2thZ2UgYXJjaGl2ZSBmaWxlIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIOmcgOimgeiHs+WwkeS4gOS4qui9r+S7tuWMheaWh+S7tuS9nOS4uuWPguaVsCIKKworIzogc3JjL2FyY2hpdmVzLmM6MTMyNSBzcmMvZGl2ZXJ0Y21kLmM6Nzggc3JjL2RpdmVydGNtZC5jOjExOAorIzogc3JjL2VucXVpcnkuYzoxNjYgc3JjL2VucXVpcnkuYzoyNzkgc3JjL2VucXVpcnkuYzo0NDkgc3JjL2VucXVpcnkuYzo0NTEKKyM6IHNyYy9lbnF1aXJ5LmM6NDY0IHNyYy9tYWluLmM6NjYgc3JjL21haW4uYzoxNjMgc3JjL21haW4uYzozMTQKKyM6IHNyYy9tYWluLmM6NDkzIHNyYy9wYWNrYWdlcy5jOjI1NCBzcmMvcXVlcnljbWQuYzoyNTIgc3JjL3F1ZXJ5Y21kLmM6MzU1CisjOiBzcmMvcXVlcnljbWQuYzozOTYgc3JjL3F1ZXJ5Y21kLmM6NDA0IHNyYy9xdWVyeWNtZC5jOjQ0OCBzcmMvcXVlcnljbWQuYzo1MTcKKyM6IHNyYy9xdWVyeWNtZC5jOjYwNiBzcmMvcXVlcnljbWQuYzo2NTAgc3JjL3NlbGVjdC5jOjc5IHNyYy9zdGF0Y21kLmM6NjgKKyM6IHNyYy9zdGF0Y21kLmM6OTggc3JjL3RyaWdjbWQuYzo1OCBzcmMvdHJpZ2NtZC5jOjkwIGRwa2ctZGViL2J1aWxkLmM6NDQxCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjE3IGRwa2ctZGViL2V4dHJhY3QuYzoyNTAgZHBrZy1kZWIvaW5mby5jOjIwMworIzogZHBrZy1kZWIvaW5mby5jOjI2NSBkcGtnLWRlYi9tYWluLmM6NjAgZHBrZy1kZWIvbWFpbi5jOjEyNgorIzogZHBrZy1zcGxpdC9pbmZvLmM6MjU3IGRwa2ctc3BsaXQvbWFpbi5jOjU0IGRwa2ctc3BsaXQvbWFpbi5jOjk4CisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTQ0IGRwa2ctc3BsaXQvcXVldWUuYzoyODAKK21zZ2lkICI8c3RhbmRhcmQgb3V0cHV0PiIKK21zZ3N0ciAiPOagh+WHhui+k+WHuj4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzMjYgc3JjL3BhY2thZ2VzLmM6MjU1IHNyYy9xdWVyeWNtZC5jOjI1MworIzogc3JjL3F1ZXJ5Y21kLmM6MzUzIHNyYy9xdWVyeWNtZC5jOjQ1NCBzcmMvcXVlcnljbWQuYzo1MTggc3JjL3NlbGVjdC5jOjgwCisjOiBkcGtnLXNwbGl0L21haW4uYzoxNjkgZHBrZy1zcGxpdC9xdWV1ZS5jOjIxOAorbXNnaWQgIjxzdGFuZGFyZCBlcnJvcj4iCittc2dzdHIgIjzmoIflh4bplJnor68+IgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzY3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJTZWxlY3RpbmcgcHJldmlvdXNseSBkZXNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dpZCAiU2VsZWN0aW5nIHByZXZpb3VzbHkgdW5zZWxlY3RlZCBwYWNrYWdlICVzLlxuIgorbXNnc3RyICLpgInkuK3kuobmm77ooqvlj5bmtojpgInmi6nnmoTova/ku7bljIUgJXPjgIJcbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTM3MQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiU2tpcHBpbmcgZGVzZWxlY3RlZCBwYWNrYWdlICVzLlxuIgorbXNnaWQgIlNraXBwaW5nIHVuc2VsZWN0ZWQgcGFja2FnZSAlcy5cbiIKK21zZ3N0ciAi5b+955Wl5LqG6KKr5Y+W5raI6YCJ5oup55qE6L2v5Lu25YyFICVz44CCXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiVmVyc2lvbiAlLjI1MHMgb2YgJS4yNTBzIGFscmVhZHkgaW5zdGFsbGVkLCBza2lwcGluZy5cbiIKK21zZ3N0ciAiJTEkLjI1MHMg55qEICUyJC4yNTBzIOeJiOacrOW3sue7j+Wuieijhe+8jOWboOiAjOWwhuS4jeWGjeWuieijheWug+OAglxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzk3CisjLCBjLWZvcm1hdAorbXNnaWQgImRvd25ncmFkaW5nICUuMjUwcyBmcm9tICUuMjUwcyB0byAlLjI1MHMuIgorbXNnc3RyICLljbPlsIbmioogJS4yNTBzIOS7jiAlLjI1MHMg6ZmN57qn5YiwICUuMjUwc+OAgiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTQwMgorIywgYy1mb3JtYXQKK21zZ2lkICJXaWxsIG5vdCBkb3duZ3JhZGUgJS4yNTBzIGZyb20gdmVyc2lvbiAlLjI1MHMgdG8gJS4yNTBzLCBza2lwcGluZy5cbiIKK21zZ3N0ciAi55Sx5LqO5LiN5biM5pyb5oqKICUuMjUwcyDku44gJS4yNTBzIOmZjee6p+WIsCAlLjI1MHPvvIzlm6DogIzlsIbkuI3lho3lronoo4XlroPjgIJcbiIKKworIzogc3JjL2NsZWFudXAuYzo4NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidW5hYmxlIHRvIHJlbW92ZSBuZXdseS1pbnN0YWxsZWQgdmVyc2lvbiBvZiBgJS4yNTBzJyB0byBhbGxvdyByZWluc3RhbGxhdGlvbiAiCisib2YgYmFja3VwIGNvcHkiCittc2dzdHIgIuaXoOazleaKiuaWsOi/keWuieijheeJiOacrOeahCAlLjI1MHMg5Y246L2977yM5Y246L295a6D6IO95bCx6IO96YeN5paw5a6J6KOF5aSH5Lu95aSN5Yi2IgorCisjOiBzcmMvY2xlYW51cC5jOjkzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZXN0b3JlIGJhY2t1cCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICLml6Dms5XmgaLlpI0gJS4yNTBzIOeahOWkh+S7veeJiOacrCIKKworIzogc3JjL2NsZWFudXAuYzo5NworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIGJhY2t1cCBjb3B5IG9mICclLjI1MHMnIgorbXNnc3RyICLml6Dms5XliKDpmaQgJS4yNTBzIOeahOWkh+S7veeJiOacrCIKKworIzogc3JjL2NsZWFudXAuYzoxMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBuZXdseS1pbnN0YWxsZWQgdmVyc2lvbiBvZiBgJS4yNTBzJyIKK21zZ3N0ciAi5peg5rOV5Yig6ZmkICUuMjUwcyDnmoTmlrDov5Hlronoo4XnmoTniYjmnKwiCisKKyM6IHNyYy9jbGVhbnVwLmM6MTA4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgbmV3bHktZXh0cmFjdGVkIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dzdHIgIuaXoOazleWIoOmZpCAlLjI1MHMg55qE5paw6L+R6Kej5Y6L55qE54mI5pysIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTA0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IG5ldyBkaXN0cmlidXRlZCBjb25mZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAi5peg5rOV6I635Y+W5paw5Y+R5biD54mI55qEIGNvbmZmaWxlICAlLjI1MHMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgY3VycmVudCBpbnN0YWxsZWQgY29uZmZpbGUgYCUuMjUwcyciCittc2dzdHIgIuaXoOazleiOt+WPluW9k+WJjeW3suiiq+WuieijheeahCBjb25mZmlsZSAgJS4yNTBzIOeahOS/oeaBryIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjEyNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiQ29uZmlndXJhdGlvbiBmaWxlIGAlcycsIGRvZXMgbm90IGV4aXN0IG9uIHN5c3RlbS5cbiIKKyJJbnN0YWxsaW5nIG5ldyBjb25maWcgZmlsZSBhcyB5b3UgcmVxdWVzdGVkLlxuIgorbXNnc3RyICIiCisiXG4iCisi57O757uf5Lit5bm25pyq5Y+R546w6YWN572uICVz44CCXG4iCisi5aaC5oKo5omA5oS/77yM5a6J6KOF5LqG5paw55qE6YWN572u5paH5Lu244CCXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzoxNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW1vdmUgb2xkIGJhY2t1cCAnJS4yNTBzJzogJXMiCittc2dzdHIgIiVz77ya5peg5rOV5Yig6Zmk5Lul5YmN55qE5aSH5Lu95paH5Lu2ICUuMjUwcyDvvJolcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE3NgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIHJlbmFtZSAnJS4yNTBzJyB0byAnJS4yNTBzJzogJXMiCittc2dzdHIgIiVz77ya5peg5rOV5bCGICUuMjUwcyDmlLnlkI3kuLogJS4yNTBzIO+8miVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTgyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiJXPvvJrliKDpmaQgJS4yNTBzIOWksei0pe+8miVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTg4CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlIG9sZCBkaXN0cmlidXRlZCB2ZXJzaW9uICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiJXPvvJrml6Dms5XliKDpmaTku6XliY3nmoTlj5HluIPniYjmnKwgJS4yNTBzIO+8miVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTkyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlICclLjI1MHMnIChiZWZvcmUgb3ZlcndyaXRlKTogJXMiCittc2dzdHIgIiVz77ya5peg5rOV5Yig6ZmkICUuMjUwcyAo5Zyo6KaG55uW5YmNKe+8miVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTk2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gbGluayAnJS4yNTBzJyB0byAnJS4yNTBzJzogJXMiCittc2dzdHIgIiVz77ya5bCGICUuMjUwcyDpk77mjqXliLAgJS4yNTBzIOWksei0pe+8miVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjAwCisjLCBjLWZvcm1hdAorbXNnaWQgIkluc3RhbGxpbmcgbmV3IHZlcnNpb24gb2YgY29uZmlnIGZpbGUgJXMgLi4uXG4iCittc2dzdHIgIuato+WcqOWuieijheaWsOeJiOacrOeahOmFjee9ruaWh+S7tiAlcyAuLi5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjIwNiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NTQ2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIGAlLjI1MHMnIGFzIGAlLjI1MHMnIgorbXNnc3RyICLml6Dms5XmioogJS4yNTBzIOWuieijheWIsCAlLjI1MHMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoyNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gcGFja2FnZSBuYW1lZCBgJXMnIGlzIGluc3RhbGxlZCwgY2Fubm90IGNvbmZpZ3VyZSIKK21zZ3N0ciAi5oKo5pyq5pu+5a6J6KOF5ZCN5Li6ICVzIOeahOi9r+S7tuWMhe+8jOWboOiAjOS4jeiDveWvueWug+i/m+ihjOmFjee9riIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI2MAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlICUuMjUwcyBpcyBhbHJlYWR5IGluc3RhbGxlZCBhbmQgY29uZmlndXJlZCIKK21zZ3N0ciAi5oKo5bey57uP5a6J6KOF5bm26YWN572u5LqG6L2v5Lu25YyFICUuMjUwcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI2MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisicGFja2FnZSAlLjI1MHMgaXMgbm90IHJlYWR5IGZvciBjb25maWd1cmF0aW9uXG4iCisiIGNhbm5vdCBjb25maWd1cmUgKGN1cnJlbnQgc3RhdHVzIGAlLjI1MHMnKSIKK21zZ3N0ciAiIgorIueOsOWcqOWwmuS4jeiDvemFjee9rui9r+S7tuWMhSAlLjI1MHNcbiIKKyIg5LiN6IO96YWN572uKOebruWJjeeKtuaAgeS4uiAlLjI1MHMgKSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI5NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogZGVwZW5kZW5jeSBwcm9ibGVtcyBwcmV2ZW50IGNvbmZpZ3VyYXRpb24gb2YgJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtn77ya5L6d6LWW5YWz57O76Zeu6aKY5L2/5b6XICVzIOeahOmFjee9ruW3peS9nOS4jeiDvee7p+e7re+8mlxuIgorIiVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6Mjk3Cittc2dpZCAiZGVwZW5kZW5jeSBwcm9ibGVtcyAtIGxlYXZpbmcgdW5jb25maWd1cmVkIgorbXNnc3RyICLkvp3otZblhbPns7vpl67popggLSDku43mnKrooqvphY3nva4iCisKKyM6IHNyYy9jb25maWd1cmUuYzozMDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6ICVzOiBkZXBlbmRlbmN5IHByb2JsZW1zLCBidXQgY29uZmlndXJpbmcgYW55d2F5IGFzIHlvdSByZXF1ZXN0ZWQ6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtn77yaJXPvvJrlsL3nrqHmnInkvp3otZblhbPns7vnmoTpl67popjvvIzkvYbkuI3nrqHmgI7moLfvvIzov5jmmK/mjInnhafmgqjnmoTopoHmsYLvvIznu6fnu63phY3nva7vvJpcbiIKKyIlcyIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjMwOQorbXNnaWQgIiIKKyJQYWNrYWdlIGlzIGluIGEgdmVyeSBiYWQgaW5jb25zaXN0ZW50IHN0YXRlIC0geW91IHNob3VsZFxuIgorIiByZWluc3RhbGwgaXQgYmVmb3JlIGF0dGVtcHRpbmcgY29uZmlndXJhdGlvbi4iCittc2dzdHIgIiIKKyLor6Xova/ku7bljIXmraPlpITkuo7pnZ7luLjkuI3nqLPlrprnmoTnirbmgIEgLSDmgqjmnIDlpb1cbiIKKyLlnKjphY3nva7lroPkuYvliY3vvIzlhYjph43mlrDlronoo4XlroPjgIIiCisKKyM6IHNyYy9jb25maWd1cmUuYzozMTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiU2V0dGluZyB1cCAlcyAoJXMpIC4uLlxuIgorbXNnc3RyICLmraPlnKjorr7nva4gJXMgKCVzKSAuLi5cbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjM5NgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IHVuYWJsZSB0byBzdGF0IGNvbmZpZyBmaWxlICclcydcbiIKKyIgKD0gJyVzJyk6ICVzIgorbXNnc3RyICIiCisiJXPvvJrml6Dms5XojrflvpfphY3nva7mlofku7YgJXMg55qE54q25oCBXG4iCisiICg9ICAlcyAp77yaJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzo0MDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBjb25maWcgZmlsZSAnJXMnIGlzIGEgY2lyY3VsYXIgbGlua1xuIgorIiAoPSAnJXMnKSIKK21zZ3N0ciAiIgorIiVz77ya6YWN572u5paH5Lu2ICVzIOaYr+S4gOS4quW+queOryjmnIDnu4jmjIflkJHoh6rlt7Ep6ZO+5o6lXG4iCisiICg9ICAlcyApIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDE4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogdW5hYmxlIHRvIHJlYWRsaW5rIGNvbmZmaWxlICclcydcbiIKKyIgKD0gJyVzJyk6ICVzIgorbXNnc3RyICIiCisiJXPvvJrml6Dms5UgcmVhZGxpbmsgY29uZmZpbGUgICVzIFxuIgorIiAoPSAgJXMgKe+8miVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDQ0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogY29uZmZpbGUgJyUuMjUwcycgcmVzb2x2ZXMgdG8gZGVnZW5lcmF0ZSBmaWxlbmFtZVxuIgorIiAoJyVzJyBpcyBhIHN5bWxpbmsgdG8gJyVzJykiCittc2dzdHIgIiIKKyIlc++8muaXoOazleaJvuWIsCBjb25mZmlsZSAgJS4yNTBzIOacgOe7iOaMh+WQkeeahOaWh+S7tlxuIgorIiAoICVzIOaYr+S4gOS4quaMh+WQkSAlcyDnmoTnrKblj7fpk77mjqUpIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDYwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBjb25mZmlsZSAnJS4yNTBzJyBpcyBub3QgYSBwbGFpbiBmaWxlIG9yIHN5bWxpbmsgKD0gJyVzJykiCittc2dzdHIgIiVz77ya6K2m5ZGKIC0gY29uZmZpbGUgICUuMjUwcyDkuI3mmK/mma7pgJrmlofku7bmiJbogIXnrKblj7fpk77mjqUgKD0gICVzICkiCisKKyM6IHNyYy9jb25maWd1cmUuYzo0ODYKK21zZ2lkICJtZDVoYXNoIgorbXNnc3RyICJtZDVoYXNoIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDkyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB1bmFibGUgdG8gb3BlbiBjb25mZmlsZSAlcyBmb3IgaGFzaDogJXMiCittc2dzdHIgIiVz77ya5peg5rOV5omT5byAIGNvbmZmaWxlICVzIOadpeS9nOWTiOW4jOWkhOeQhu+8miVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6NTIyIHNyYy9jb25maWd1cmUuYzo1MjYKK21zZ2lkICJjb25mZmlsZSBkaWZmZXJlbmNlIHZpc3VhbGl6ZXIiCittc2dzdHIgIiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjU0MworbXNnaWQgIlR5cGUgYGV4aXQnIHdoZW4geW91J3JlIGRvbmUuXG4iCittc2dzdHIgIuW9k+aCqOWujOaIkOaTjeS9nOWQju+8jOivt+i+k+WFpSBleGl044CCXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo1NTIgc3JjL2NvbmZpZ3VyZS5jOjU1NgorbXNnaWQgImNvbmZmaWxlIHNoZWxsIgorbXNnc3RyICIiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIkNvbmZpZ3VyYXRpb24gZmlsZSBgJXMnIgorbXNnc3RyICIiCisiXG4iCisi6YWN572u5paH5Lu2ICVzICIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYwNAorIywgYy1mb3JtYXQKK21zZ2lkICIgKGFjdHVhbGx5IGAlcycpIgorbXNnc3RyICIo5a6e6ZmF5LiK5pivICVzICkiCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiA9PT4gRmlsZSBvbiBzeXN0ZW0gY3JlYXRlZCBieSB5b3Ugb3IgYnkgYSBzY3JpcHQuXG4iCisiID09PiBGaWxlIGFsc28gaW4gcGFja2FnZSBwcm92aWRlZCBieSBwYWNrYWdlIG1haW50YWluZXIuXG4iCittc2dzdHIgIiIKKyJcbiIKKyIgPT0+IOezu+e7n+S4reeahOi/meS4quaWh+S7tuaIluiAheaYr+eUseaCqOWIm+W7uueahO+8jOaIluiAheaYr+eUseiEmuacrOW7uueri+eahOOAglxuIgorIiA9PT4g6L2v5Lu25YyF57u05oqk6ICF5omA5o+Q5L6b55qE6L2v5Lu25YyF5Lit5Lmf5YyF5ZCr5LqG6K+l5paH5Lu244CCXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiAgICAgTm90IG1vZGlmaWVkIHNpbmNlIGluc3RhbGxhdGlvbi5cbiIKK21zZ3N0ciAiIgorIlxuIgorIiAgICAg5Zyo5a6J6KOF5ZCO5pyq5pu+5pu05Yqo44CCXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiA9PT4gTW9kaWZpZWQgKGJ5IHlvdSBvciBieSBhIHNjcmlwdCkgc2luY2UgaW5zdGFsbGF0aW9uLlxuIgorbXNnc3RyICIiCisiXG4iCisiID09PiDlnKjlronoo4XlkI7mm77ooqvkv67mlLko5oKo5oiW6ICF5p+Q5Liq6ISa5pys5L+u5pS55LqG5a6DKeOAglxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjE2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgPT0+IERlbGV0ZWQgKGJ5IHlvdSBvciBieSBhIHNjcmlwdCkgc2luY2UgaW5zdGFsbGF0aW9uLlxuIgorbXNnc3RyICIiCisiXG4iCisiID09PiDlnKjlronoo4XlkI7mm77ooqvliKDpmaQo5oKo5oiW6ICF5p+Q5Liq6ISa5pys5Yig6Zmk5LqG5a6DKeOAglxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjE5CisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gUGFja2FnZSBkaXN0cmlidXRvciBoYXMgc2hpcHBlZCBhbiB1cGRhdGVkIHZlcnNpb24uXG4iCittc2dzdHIgIiA9PT4g6L2v5Lu25YyF55qE5o+Q5Lqk6ICF5ZCM5pe25o+Q5L6b5LqG5LiA5Liq5pu05paw5LqG55qE54mI5pys44CCXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAgICBWZXJzaW9uIGluIHBhY2thZ2UgaXMgdGhlIHNhbWUgYXMgYXQgbGFzdCBpbnN0YWxsYXRpb24uXG4iCittc2dzdHIgIiAgICAg6L2v5Lu25YyF55qE54mI5pys5ZKM5LiK5qyh5a6J6KOF55qE54mI5pys5piv55u45ZCM55qE44CCXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBVc2luZyBuZXcgZmlsZSBhcyB5b3UgcmVxdWVzdGVkLlxuIgorbXNnc3RyICIgPT0+IOWmguaCqOaJgOaEv++8jOWuieijheS6huaWsOeahOmFjee9ruaWh+S7tuOAglxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gVXNpbmcgY3VycmVudCBvbGQgZmlsZSBhcyB5b3UgcmVxdWVzdGVkLlxuIgorbXNnc3RyICIgPT0+IOWmguaCqOaJgOaEv++8jOS/neeVmeWOn+adpeeahOmFjee9ruaWh+S7tuS4jeWPmOOAglxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjQxCisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gS2VlcGluZyBvbGQgY29uZmlnIGZpbGUgYXMgZGVmYXVsdC5cbiIKK21zZ3N0ciAiID09PiDmjInnhafpu5jorqTorr7nva7vvIzkv53nlZnljp/mnInnmoTphY3nva7mlofku7bjgIJcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY0NQorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IFVzaW5nIG5ldyBjb25maWcgZmlsZSBhcyBkZWZhdWx0LlxuIgorbXNnc3RyICIgPT0+IOaMieeFp+m7mOiupOiuvue9ru+8jOWuieijheaWsOeahOmFjee9ruaWh+S7tuOAglxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjUyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIgICBXaGF0IHdvdWxkIHlvdSBsaWtlIHRvIGRvIGFib3V0IGl0ID8gIFlvdXIgb3B0aW9ucyBhcmU6XG4iCisiICAgIFkgb3IgSSAgOiBpbnN0YWxsIHRoZSBwYWNrYWdlIG1haW50YWluZXIncyB2ZXJzaW9uXG4iCisiICAgIE4gb3IgTyAgOiBrZWVwIHlvdXIgY3VycmVudGx5LWluc3RhbGxlZCB2ZXJzaW9uXG4iCisiICAgICAgRCAgICAgOiBzaG93IHRoZSBkaWZmZXJlbmNlcyBiZXR3ZWVuIHRoZSB2ZXJzaW9uc1xuIgorIiAgICAgIFogICAgIDogc3RhcnQgYSBzaGVsbCB0byBleGFtaW5lIHRoZSBzaXR1YXRpb25cbiIKK21zZ3N0ciAiIgorIiAgIOaCqOeOsOWcqOW4jOacm+WmguS9leWkhOeQhuWRou+8nyDmgqjmnInku6XkuIvlh6DkuKrpgInmi6nvvJpcbiIKKyIgICAgWSDmiJYgSSAg77ya5a6J6KOF6L2v5Lu25YyF57u05oqk6ICF5omA5o+Q5L6b55qE54mI5pysXG4iCisiICAgIE4g5oiWIE8gIO+8muS/neeVmeaCqOWOn+adpeWuieijheeahOeJiOacrFxuIgorIiAgICAgIEQgICAgIO+8muaYvuekuuS4pOiAheeahOWMuuWIq1xuIgorIiAgICAgIFogICAgIO+8muaKiuW9k+WJjei/m+eoi+WIh+aNouWIsOWQjuWPsO+8jOeEtuWQjuafpeeci+eOsOWcqOeahOWFt+S9k+aDheWGtVxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjU5CisjLCBjLWZvcm1hdAorbXNnaWQgIiBUaGUgZGVmYXVsdCBhY3Rpb24gaXMgdG8ga2VlcCB5b3VyIGN1cnJlbnQgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIOm7mOiupOeahOWkhOeQhuaWueazleaYr+S/neeVmeaCqOW9k+WJjeS9v+eUqOeahOeJiOacrOOAglxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjYxCisjLCBjLWZvcm1hdAorbXNnaWQgIiBUaGUgZGVmYXVsdCBhY3Rpb24gaXMgdG8gaW5zdGFsbCB0aGUgbmV3IHZlcnNpb24uXG4iCittc2dzdHIgIiDpu5jorqTnmoTlpITnkIblip7ms5XmmK/lronoo4XmlrDnmoTniYjmnKzjgIJcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY2NgorbXNnaWQgIltkZWZhdWx0PU5dIgorbXNnc3RyICJb6buY6K6k6YCJ6aG5PU5dIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjY3Cittc2dpZCAiW2RlZmF1bHQ9WV0iCittc2dzdHIgIlvpu5jorqTpgInpobk9WV0iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NjgKK21zZ2lkICJbbm8gZGVmYXVsdF0iCittc2dzdHIgIlvml6Dpu5jorqTpgInpobldIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjcxCittc2dpZCAiZXJyb3Igd3JpdGluZyB0byBzdGRlcnIsIGRpc2NvdmVyZWQgYmVmb3JlIGNvbmZmaWxlIHByb21wdCIKK21zZ3N0ciAi5ZyoIGNvbmZmaWxlIOaPkOekuui+k+WFpeWJjeWGmeagh+WHhumUmeivr+WHuumUmSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY4MAorbXNnaWQgInJlYWQgZXJyb3Igb24gc3RkaW4gYXQgY29uZmZpbGUgcHJvbXB0IgorbXNnc3RyICLlnKggY29uZmZpbGUg5o+Q56S66L6T5YWl5pe26K+75Y+W5qCH5YeG6L6T5YWl5Ye66ZSZIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjgxCittc2dpZCAiRU9GIG9uIHN0ZGluIGF0IGNvbmZmaWxlIHByb21wdCIKK21zZ3N0ciAi5ZyoIGNvbmZmaWxlIOaPkOekuui+k+WFpeaXtuWcqOagh+WHhui+k+WFpeivu+WIsOS6hiBFT0YgIgorCisjOiBzcmMvZGVwY29uLmM6MTc1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGRlcGVuZHMgb24gJXMiCittc2dzdHIgIiVzIOS+nei1luS6jiAlcyIKKworIzogc3JjL2RlcGNvbi5jOjE3OAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBwcmUtZGVwZW5kcyBvbiAlcyIKK21zZ3N0ciAiJXMg6aKE5L6d6LWW5LqOICVzIgorCisjOiBzcmMvZGVwY29uLmM6MTgxCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHJlY29tbWVuZHMgJXMiCittc2dzdHIgIiVzIOaOqOiNkCAlcyIKKworIzogc3JjL2RlcGNvbi5jOjE4NAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBzdWdnZXN0cyAlcyIKK21zZ3N0ciAiJXMg5bu66K6uICVzIgorCisjOiBzcmMvZGVwY29uLmM6MTg3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGJyZWFrcyAlcyIKK21zZ3N0ciAiJXMg56C05Z2PICVzIgorCisjOiBzcmMvZGVwY29uLmM6MTkwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGNvbmZsaWN0cyB3aXRoICVzIgorbXNnc3RyICIlcyDlhrLnqoHkuo4gJXMiCisKKyM6IHNyYy9kZXBjb24uYzoxOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgZW5oYW5jZXMgJXMiCittc2dzdHIgIiVzIOWinuW8uiAlcyIKKworIzogc3JjL2RlcGNvbi5jOjI5NgorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIgIOWNs+WwhuWNuOi9vSAlLjI1MHPjgIJcbiIKKworIzogc3JjL2RlcGNvbi5jOjI5OQorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB0byBiZSBkZWNvbmZpZ3VyZWQuXG4iCittc2dzdHIgIiAg5Y2z5bCG5Y+N6YWN572uICUuMjUwc+OAglxuIgorCisjOiBzcmMvZGVwY29uLmM6MzA0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHRvIGJlIGluc3RhbGxlZCwgYnV0IGlzIHZlcnNpb24gJS4yNTBzLlxuIgorbXNnc3RyICIgIOWNs+WwhuWuieijhSAlLjI1MHPvvIzkvYblronoo4XnmoTniYjmnKzmmK8gJS4yNTBz44CCXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgaW5zdGFsbGVkLCBidXQgaXMgdmVyc2lvbiAlLjI1MHMuXG4iCittc2dzdHIgIiAg5bey5a6J6KOFICUuMjUwc++8jOS9huWuieijheeahOeJiOacrOaYryAlLjI1MHPjgIJcbiIKKworIzogc3JjL2RlcGNvbi5jOjMzMworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB1bnBhY2tlZCwgYnV0IGhhcyBuZXZlciBiZWVuIGNvbmZpZ3VyZWQuXG4iCittc2dzdHIgIiAg5bey6Kej5YyFICUuMjUwc++8jOS9huS7jeacqumFjee9ruOAglxuIgorCisjOiBzcmMvZGVwY29uLmM6MzM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIHVucGFja2VkLCBidXQgaXMgdmVyc2lvbiAlLjI1MHMuXG4iCittc2dzdHIgIiAg5bey6Kej5YyFICUuMjUwc++8jOS9huWug+eahOeJiOacrOaYryAlLjI1MHPjgIJcbiIKKworIzogc3JjL2RlcGNvbi5jOjM0MworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBsYXRlc3QgY29uZmlndXJlZCB2ZXJzaW9uIGlzICUuMjUwcy5cbiIKK21zZ3N0ciAiICDkuIrmrKHphY3nva4gJS4yNTBzIOaXtu+8jOWug+eahOeJiOacrOaYryAlLjI1MHPjgIJcbiIKKworIzogc3JjL2RlcGNvbi5jOjM1MworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyAlcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMg546w5ZyoICVz44CCXG4iCisKKyM6IHNyYy9kZXBjb24uYzozODgKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGJ1dCBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyDmj5DkvpvkuoYgJS4yNTBz77yM5L2G5piv5a6D5Y2z5bCG6KKr5Yig6Zmk44CCXG4iCisKKyM6IHNyYy9kZXBjb24uYzozOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGJ1dCBpcyB0byBiZSBkZWNvbmZpZ3VyZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIOaPkOS+m+S6hiAlLjI1MHPvvIzkvYbmmK/lroPnmoTphY3nva7kv6Hmga/lsIbooqvmirnljrvjgIJcbiIKKworIzogc3JjL2RlcGNvbi5jOjQwMQorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYnV0IGlzICVzLlxuIgorbXNnc3RyICIgICUuMjUwcyDmj5DkvpvkuoYgJS4yNTBz77yM5L2G5piv5a6D546w5ZyoICVz44CCXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0MTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgbm90IGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMg5pyq5a6J6KOF44CCXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0NDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgKHZlcnNpb24gJS4yNTBzKSBpcyB0byBiZSBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAg5Y2z5bCG5a6J6KOFICUuMjUwcyAo54mI5pys5Li6ICUuMjUwcynjgIJcbiIKKworIzogc3JjL2RlcGNvbi5jOjQ2OAorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyAodmVyc2lvbiAlLjI1MHMpIGlzIHByZXNlbnQgYW5kICVzLlxuIgorbXNnc3RyICIgICUuMjUwcyAo54mI5pys5Li6ICUuMjUwcynlt7LlrZjlnKjlubbkuJQgJXPjgIJcbiIKKworIzogc3JjL2RlcGNvbi5jOjQ5NQorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYW5kIGlzIHRvIGJlIGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMg5o+Q5L6b5LqGICUuMjUwc++8jOWug+Wwhuiiq+WuieijheOAglxuIgorCisjOiBzcmMvZGVwY29uLmM6NTM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBhbmQgaXMgcHJlc2VudCBhbmQgJXMuXG4iCittc2dzdHIgIiAgJS4yNTBzIOaPkOS+m+S6hiAlLjI1MHMg5bm25bey5a2Y5Zyo6ICM5LiUICVz44CCXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MAorIywgZnV6enkKKyN8IG1zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IHF1ZXJ5aW5nIHBhY2thZ2VzLiIKK21zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IGRpdmVydGluZyBmaWxlcy4iCittc2dzdHIgIuS9v+eUqCAtLWhlbHAg5p+l55yL5YWz5LqO5p+l6K+i6L2v5Lu25YyF55qE5biu5Yqp44CCIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjYgc3JjL3N0YXRjbWQuYzo1NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuICVzIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkRlYmlhbiAlcyDniYjmnKwgJXPjgIJcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjcwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMTAgR3VpbGxlbSBKb3Zlci5cbiIKK21zZ3N0ciAiIgorIueJiOadg+aJgOaciSAoQykgMTk5NSBJYW4gSmFja3NvblxuIgorIueJiOadg+aJgOaciSAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW5cbiIKKyLniYjmnYPmiYDmnIkgKEMpIDIwMTAgR3VpbGxlbSBKb3ZlclxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NzUgc3JjL21haW4uYzo2MyBzcmMvcXVlcnljbWQuYzo2MDMgc3JjL3N0YXRjbWQuYzo2NQorIzogc3JjL3RyaWdjbWQuYzo1NSBkcGtnLWRlYi9tYWluLmM6NTcgZHBrZy1zcGxpdC9tYWluLmM6NTEKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo4OQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvclxuIgorImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LlxuIgorbXNnc3RyICIiCisi5q2k6L2v5Lu25piv6Ieq55Sx6L2v5Lu277yb6KaB6I6355+l5aSN5Yi26K+l6L2v5Lu255qE5p2h5Lu277yM6K+35Y+C6ZiFIEdOVSDlhazlhbHorrjlj6/or4FcbiIKKyLnrKzkuozniYjmiJblhbbmm7TmlrDnmoTniYjmnKzjgILmnKzova/ku7bjgJDkuI3jgJHmj5Dkvpvku7vkvZXmi4Xkv53jgIJcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjg3IHNyYy9tYWluLmM6ODEgc3JjL3F1ZXJ5Y21kLmM6NjE1IHNyYy9zdGF0Y21kLmM6NzcKKyM6IGRwa2ctZGViL21haW4uYzo2OSBkcGtnLXNwbGl0L21haW4uYzo2MyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6OTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSA8Y29tbWFuZD5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIueUqOazle+8miVzIFs86YCJ6aG5PiAuLi5dIDzlkb3ku6Q+XG4iCisiXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo5MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICBbLS1hZGRdIDxmaWxlPiAgICAgICAgICAgYWRkIGEgZGl2ZXJzaW9uLlxuIgorIiAgLS1yZW1vdmUgPGZpbGU+ICAgICAgICAgIHJlbW92ZSB0aGUgZGl2ZXJzaW9uLlxuIgorIiAgLS1saXN0IFs8Z2xvYi1wYXR0ZXJuPl0gIHNob3cgZmlsZSBkaXZlcnNpb25zLlxuIgorIiAgLS1saXN0cGFja2FnZSA8ZmlsZT4gICAgIHNob3cgd2hhdCBwYWNrYWdlIGRpdmVydHMgdGhlIGZpbGUuXG4iCisiICAtLXRydWVuYW1lIDxmaWxlPiAgICAgICAgcmV0dXJuIHRoZSBkaXZlcnRlZCBmaWxlLlxuIgorIlxuIgorbXNnc3RyICIiCisi5ZG95Luk77yaXG4iCisiICBbLS1hZGRdIDzmlofku7blkI0+ICAgICAgICAg5re75Yqg5LiA5Liq5pys5Zyw5L+u5pS56aG544CCXG4iCisiICAtLXJlbW92ZSA85paH5Lu25ZCNPiAgICAgICAg5Yig6Zmk6L+Z5Liq5pys5Zyw5L+u5pS56aG544CCXG4iCisiICAtLWxpc3QgWzxnbG9iIOaooeW8jz5dICAgICDliJflh7rlkITmlofku7bmnKzlnLDkv67mlLnpobnjgIJcbiIKKyIgIC0tbGlzdHBhY2thZ2UgPOaWh+S7tj4gICAgIOaYvuekuuWTquS4qui9r+S7tuWMheacrOWcsOS/ruaUueS6huaMh+WumuaWh+S7tuOAglxuIgorIiAgLS10cnVlbmFtZSA85paH5Lu25ZCNPiAgICAgIOi/lOWbnuiiq+acrOWcsOS/ruaUueeahOWOn+Wni+aWh+S7tuOAglxuIgorIlxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MTAwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1wYWNrYWdlIDxwYWNrYWdlPiAgICAgIG5hbWUgb2YgdGhlIHBhY2thZ2Ugd2hvc2UgY29weSBvZiA8ZmlsZT4gd2lsbCAiCisibm90XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiZSBkaXZlcnRlZC5cbiIKKyIgIC0tbG9jYWwgICAgICAgICAgICAgICAgICBhbGwgcGFja2FnZXMnIHZlcnNpb25zIGFyZSBkaXZlcnRlZC5cbiIKKyIgIC0tZGl2ZXJ0IDxkaXZlcnQtdG8+ICAgICB0aGUgbmFtZSB1c2VkIGJ5IG90aGVyIHBhY2thZ2VzJyB2ZXJzaW9ucy5cbiIKKyIgIC0tcmVuYW1lICAgICAgICAgICAgICAgICBhY3R1YWxseSBtb3ZlIHRoZSBmaWxlIGFzaWRlIChvciBiYWNrKS5cbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICBzZXQgdGhlIGRpcmVjdG9yeSB3aXRoIHRoZSBkaXZlcnNpb25zIGZpbGUuXG4iCisiICAtLXRlc3QgICAgICAgICAgICAgICAgICAgZG9uJ3QgZG8gYW55dGhpbmcsIGp1c3QgZGVtb25zdHJhdGUuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgcXVpZXQgb3BlcmF0aW9uLCBtaW5pbWFsIG91dHB1dC5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCittc2dzdHIgIiIKKyLpgInpobnvvJpcbiIKKyIgIC0tcGFja2FnZSA86L2v5Lu25YyF5ZCNPiAgICAg6K+l6L2v5Lu25YyF5Lit55qEIDzmlofku7blkI0+IOWJr+acrOWwhuS4jeS8muiiq+acrOWcsOS/ruaUueOAglxuIgorIiAgLS1sb2NhbCAgICAgICAgICAgICAgICAgIOaJgOaciei9r+S7tuWMheeahOeJiOacrOWdh+S8muiiq+acrOWcsOS/ruaUueOAglxuIgorIiAgLS1kaXZlcnQgPOacrOWcsOS/ruaUueebruagh+WQjT4gICAg5YW25a6D6L2v5Lu25YyF54mI5pys5bCG6L2s6ICM5L2/55So55qE5paH5Lu25ZCN44CCXG4iCisiICAtLXJlbmFtZSAgICAgICAgICAgICAgICAg5a6e6ZmF5LiK5oqK6K+l5paH5Lu25oyq5byAKOaIluaYr+i/mOWOnynjgIJcbiIKKyIgIC0tYWRtaW5kaXIgPOebruW9leWQjT4gICAgICDorr7nva7mnKzlnLDkv67mlLnmlofku7bmiYDlnKjnmoTnm67lvZXjgIJcbiIKKyIgIC0tdGVzdCAgICAgICAgICAgICAgICAgICDku4Xku4XmvJTnpLropoHov5vooYznmoTmk43kvZzvvIzogIzkuI3mmK/nnJ/mraPnmoTmiafooYzlroPku6zjgIJcbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICDlronpnZnmqKHlvI/vvIzovpPlh7rlsL3lj6/og73lsJHnmoTkv6Hmga/jgII8XG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAg5pi+56S65pys5biu5Yqp5L+h5oGv44CCXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAg5pi+56S654mI5pys5L+h5oGv44CCXG4iCisiXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIldoZW4gYWRkaW5nLCBkZWZhdWx0IGlzIC0tbG9jYWwgYW5kIC0tZGl2ZXJ0IDxvcmlnaW5hbD4uZGlzdHJpYi5cbiIKKyJXaGVuIHJlbW92aW5nLCAtLXBhY2thZ2Ugb3IgLS1sb2NhbCBhbmQgLS1kaXZlcnQgbXVzdCBtYXRjaCBpZiBzcGVjaWZpZWQuXG4iCisiUGFja2FnZSBwcmVpbnN0L3Bvc3RybSBzY3JpcHRzIHNob3VsZCBhbHdheXMgc3BlY2lmeSAtLXBhY2thZ2UgYW5kIC0tIgorImRpdmVydC5cbiIKK21zZ3N0ciAiIgorIuW9k+a3u+WKoOacrOWcsOS/ruaUuemhueeahOaXtuWAme+8jOm7mOiupOeahOmAiemhueaYryAtLWxvY2FsIOWSjCAtLWRpdmVydCA85Y6f5aeL5paH5Lu25ZCNPi4iCisiZGlzdHJpYuOAglxuIgorIuWcqOWIoOmZpOacrOWcsOS/ruaUuemhueeahOaXtuWAme+8jC0tcGFja2FnZSDmiJYgLS1sb2NhbCDpgInpobnlkowgLS1kaXZlcnQg6YCJ6aG55b+F6aG75LiA6Ie044CCXG4iCisi6L2v5Lu25YyF55qEIHByZWluc3Qg5ZKMIHBvc3RybSDohJrmnKzpgJrluLjlupTlvZPmjIflrpogLS1wYWNrYWdlIOWSjCAtLWRpdmVydCDpgInpobnjgIJcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjE2OAorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjaGVja2luZyAnJXMnIgorbXNnc3RyICLmo4Dmn6UgJXMg5pe25Ye66ZSZIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjAzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJyZW5hbWUgaW52b2x2ZXMgb3ZlcndyaXRpbmcgYCVzJyB3aXRoXG4iCisiICBkaWZmZXJlbnQgZmlsZSBgJXMnLCBub3QgYWxsb3dlZCIKK21zZ3N0ciAiIgorIuabtOaUuSAgJTIkcyAg5paH5Lu25ZCN5Lya5aSN55uWICAlMSRz77yMXG4iCisiICDkuI3lhYHoqLHmraTmk43kvZwiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyMjMgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzNzMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byB3cml0ZSBmaWxlICclcyciCittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBmaWxlICclcyciCittc2dzdHIgIuaXoOazleWGmeWFpeaWh+S7tiAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjIyNworbXNnaWQgImZpbGUgY29weSIKK21zZ3N0ciAi5paH5Lu25Ymv5pysIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjM5CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZW5hbWUgJyVzJyB0byAnJXMnIgorbXNnc3RyICLml6Dms5Xph43lkb3lkI0gJXMg5Li6ICVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjUyCisjLCBjLWZvcm1hdAorbXNnaWQgInJlbmFtZTogcmVtb3ZlIGR1cGxpY2F0ZSBvbGQgbGluayAnJXMnIgorbXNnc3RyICLmlLnlkI3vvJrnp7vpmaTph43lpI3nmoTml6fov57mjqUgJXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyNjIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byBvcGVuIHNvdXJjZSBmaWxlIGAlLjI1MHMnIgorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgY29waWVkIHNvdXJjZSBmaWxlICclcyciCittc2dzdHIgIuaXoOazleaJk+W8gOWOn+Wni+aWh+S7tiAlLjI1MHMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyODQKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9jYWwgZGl2ZXJzaW9uIG9mICVzIgorbXNnc3RyICLmnKzlnLDkv67mlLnoh7PvvJolcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjI4NgorIywgYy1mb3JtYXQKK21zZ2lkICJsb2NhbCBkaXZlcnNpb24gb2YgJXMgdG8gJXMiCittc2dzdHIgIuacrOWcsOS/ruaUuSAlcyDliLAgJXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyOTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJzaW9uIG9mICVzIGJ5ICVzIgorbXNnc3RyICLooqsgJTIkcyDmnKzlnLDkv67mlLnnmoQgJTEkcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjI5MworIywgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnNpb24gb2YgJXMgdG8gJXMgYnkgJXMiCittc2dzdHIgIiUzJHMg5a+86Ie0ICUxJHMg5pys5Zyw5L+u5pS56IezICUyJHMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozMDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiYW55IGRpdmVyc2lvbiBvZiAlcyIKK21zZ3N0ciAi5Lu75L2VICVzIOeahOacrOWcsOS/ruaUuSIKKworIzogc3JjL2RpdmVydGNtZC5jOjMxMQorIywgYy1mb3JtYXQKK21zZ2lkICJhbnkgZGl2ZXJzaW9uIG9mICVzIHRvICVzIgorbXNnc3RyICLku7vkvZXnlLEgJXMg6IezICVzIOeahOacrOWcsOS/ruaUuSIKKworIzogc3JjL2RpdmVydGNtZC5jOjM1NworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgY3JlYXRlIG5ldyAlcyBmaWxlIgorbXNnc3RyICLml6Dms5XmlrDlu7ogJXMg5paH5Lu2IgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mzc1IHNyYy9zdGF0Y21kLmM6MjE1IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNDA0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmbHVzaCBmaWxlICclcyciCittc2dzdHIgIuaXoOazlea4heepuuaWh+S7tiAlcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjM4MgorbXNnaWQgImVycm9yIHJlbW92aW5nIG9sZCBkaXZlcnNpb25zLW9sZCIKK21zZ3N0ciAi5Yig6Zmk5pen55qE5pys5Zyw5L+u5pS56aG55aSH5Lu95Ye66ZSZIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mzg0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgbmV3IGRpdmVyc2lvbnMtb2xkIgorbXNnc3RyICLlu7rnq4vmlrDnmoTmnKzlnLDkv67mlLnpobnlpIfku73lh7rplJkiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozODYKK21zZ2lkICJlcnJvciBpbnN0YWxsaW5nIG5ldyBkaXZlcnNpb25zIgorbXNnc3RyICLlronoo4XmlrDnmoTmnKzlnLDkv67mlLnpobnlh7rplJkiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MDYgc3JjL2RpdmVydGNtZC5jOjUwMyBzcmMvZGl2ZXJ0Y21kLmM6NjEwCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjMwIHNyYy9zdGF0Y21kLmM6MjkwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSBzaW5nbGUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMg6ZyA6KaB5LiA5Liq5Y+C5pWwIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDA5IHNyYy9kaXZlcnRjbWQuYzo0MzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZW5hbWUgXCIlc1wiIGlzIG5vdCBhYnNvbHV0ZSIKK21zZ3N0ciAi5paH5Lu25ZCNICAlcyAg5bm25LiN5piv57ud5a+555qEIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDExIHNyYy9zdGF0Y21kLmM6MjQ5Cittc2dpZCAiZmlsZSBtYXkgbm90IGNvbnRhaW4gbmV3bGluZXMiCittc2dzdHIgIuaWh+S7tuS4jeWPr+S7peWQq+acieaNouihjOespiIKKworIzogc3JjL2RpdmVydGNtZC5jOjQxOAorbXNnaWQgIkNhbm5vdCBkaXZlcnQgZGlyZWN0b3JpZXMiCittc2dzdHIgIuS4jeiDveacrOWcsOS/ruaUueebruW9lSIKKworIzogc3JjL2RpdmVydGNtZC5jOjQzMworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgZGl2ZXJ0IGZpbGUgJyVzJyB0byBpdHNlbGYiCittc2dzdHIgIuS4jeiDveacrOWcsOS/ruaUueaWh+S7tiAlcyDliLDlhbbmnKzouqsiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiTGVhdmluZyAnJXMnXG4iCittc2dzdHIgIuato+WcqOemu+W8gCAlc1xuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDU4CisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgY2xhc2hlcyB3aXRoIGAlcyciCittc2dzdHIgIiVzICDkuI4gICVzICDlhrLnqoEiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAiQWRkaW5nICclcydcbiIKK21zZ3N0ciAi5q2j5Zyo5re75YqgICVzXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiTm8gZGl2ZXJzaW9uICclcycsIG5vbmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAi5rKh5pyJ5pys5Zyw5L+u5pS56aG5ICVz77yM5Zug5q2k5rKh5pyJ5Yig6Zmk44CCXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm1pc21hdGNoIG9uIGRpdmVydC10b1xuIgorIiAgd2hlbiByZW1vdmluZyBgJXMnXG4iCisiICBmb3VuZCBgJXMnIgorbXNnc3RyICIiCisi5Zyo5Yig6ZmkICVzIOaXtlxuIgorIiAg5pys5Zyw5L+u5pS555uu5qCH5ZCN5LiN5Yy56YWNXG4iCisiICDlj5HnjrDkuoYgJXMgIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJtaXNtYXRjaCBvbiBwYWNrYWdlXG4iCisiICB3aGVuIHJlbW92aW5nIGAlcydcbiIKKyIgIGZvdW5kIGAlcyciCittc2dzdHIgIiIKKyLliKDpmaQgJXMg5pe2XG4iCisiICDova/ku7bljIXlkI3kuI3ljLnphY1cbiIKKyIgIOWPkeeOsOS6hiAlcyAiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVtb3ZpbmcgJyVzJ1xuIgorbXNnc3RyICLmraPlnKjliKDpmaQgJXNcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjY1NworbXNnaWQgInBhY2thZ2UgbWF5IG5vdCBjb250YWluIG5ld2xpbmVzIgorbXNnc3RyICLova/ku7bljIXkuI3lj6/ku6XlkKvmnInmjaLooYznrKYiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo2NjYKK21zZ2lkICJkaXZlcnQtdG8gbWF5IG5vdCBjb250YWluIG5ld2xpbmVzIgorbXNnc3RyICJkaXZlcnQtdG8g5LiN5Y+v5Lul5ZCr5pyJ5o2i6KGM56ymIgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzo2NAorbXNnaWQgImZhaWxlZCB0byBvcGVuIGRpdmVyc2lvbnMgZmlsZSIKK21zZ3N0ciAi5peg5rOV5omT5byA5pys5Zyw5L+u5pS56aG55paH5Lu2IgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzo3MQorbXNnaWQgImZhaWxlZCB0byBmc3RhdCBwcmV2aW91cyBkaXZlcnNpb25zIGZpbGUiCittc2dzdHIgIuaXoOazlSBmc3RhdCDljp/mnInnmoTmnKzlnLDkv67mlLnpobnmlofku7YiCisKKyM6IHNyYy9kaXZlcnRkYi5jOjczCittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGRpdmVyc2lvbnMgZmlsZSIKK21zZ3N0ciAi5peg5rOVIGZzdGF0IOacrOWcsOS/ruaUuemhueaWh+S7tiIKKworIzogc3JjL2RpdmVydGRiLmM6MTEzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZsaWN0aW5nIGRpdmVyc2lvbnMgaW52b2x2aW5nIGAlLjI1MHMnIG9yIGAlLjI1MHMnIgorbXNnc3RyICLmnKzlnLDkv67mlLnpobnpl7TlrZjlnKjnnYDlhrLnqoHlhbPns7vvvIwgJS4yNTBzIOWSjCAlLjI1MHMg5Lit5Y+q6IO95Y+W5YW25LiAIgorCisjOiBzcmMvZW5xdWlyeS5jOjczCittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgYXJlIGluIGEgbWVzcyBkdWUgdG8gc2VyaW91cyBwcm9ibGVtcyBkdXJpbmdcbiIKKyJpbnN0YWxsYXRpb24uICBUaGV5IG11c3QgYmUgcmVpbnN0YWxsZWQgZm9yIHRoZW0gKGFuZCBhbnkgcGFja2FnZXNcbiIKKyJ0aGF0IGRlcGVuZCBvbiB0aGVtKSB0byBmdW5jdGlvbiBwcm9wZXJseTpcbiIKK21zZ3N0ciAiIgorIueUseS6juWcqOWuieijhei/h+eoi+S4remBh+WIsOS4pemHjeeahOmXrumimO+8jOS4i+WIl+i9r+S7tuWMheeahOeKtuaAgeWtmOWcqOS4pemHjemXrumimOOAglxuIgorIuiLpeimgeS7pOWFtui/kOihjOato+W4uO+8jOaCqOW/hemhu+mHjeaWsOWuieijheWug+S7rFxuIgorIijku6Xlj4rmiYDmnInkvp3otZbkuo7lroPku6znmoTova/ku7bljIUp77yaXG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6ODAKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBoYXZlIGJlZW4gdW5wYWNrZWQgYnV0IG5vdCB5ZXQgY29uZmlndXJlZC5cbiIKKyJUaGV5IG11c3QgYmUgY29uZmlndXJlZCB1c2luZyBkcGtnIC0tY29uZmlndXJlIG9yIHRoZSBjb25maWd1cmVcbiIKKyJtZW51IG9wdGlvbiBpbiBkc2VsZWN0IGZvciB0aGVtIHRvIHdvcms6XG4iCittc2dzdHIgIiIKKyLkuIvliJfova/ku7bljIXlt7Looqvop6PlvIDvvIzkvYbmmK/lsJrmnKrphY3nva7jgIJcbiIKKyLopoHku6TlroPku6zov5DooYzmraPluLjvvIzmgqjlv4XpobvlgJ/liqkgZHBrZyAtLWNvbmZpZ3VyZVxuIgorIuaIluiAhSBkc2VsZWN0IOiPnOWNleS4reeahOmFjee9rumhue+8mlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjg3Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgYXJlIG9ubHkgaGFsZiBjb25maWd1cmVkLCBwcm9iYWJseSBkdWUgdG8gcHJvYmxlbXNcbiIKKyJjb25maWd1cmluZyB0aGVtIHRoZSBmaXJzdCB0aW1lLiAgVGhlIGNvbmZpZ3VyYXRpb24gc2hvdWxkIGJlIHJldHJpZWQgdXNpbmdcbiIKKyJkcGtnIC0tY29uZmlndXJlIDxwYWNrYWdlPiBvciB0aGUgY29uZmlndXJlIG1lbnUgb3B0aW9uIGluIGRzZWxlY3Q6XG4iCittc2dzdHIgIiIKKyLkuIvliJfova/ku7bljIXlj6rmmK/ooqvkuI3lhajpnaLlnLDphY3nva7kuobvvIzov5nkuZ/orrjopoHlvZLlko7kuo5cbiIKKyLnrKzkuIDmrKHphY3nva7lroPku6zml7blh7rnmoTpl67popjjgILmgqjmnIDlpb3og73ph43mlrDphY3nva7lroPku6zjgIJcbiIKKyLlgJ/liqkgZHBrZyAtLWNvbmZpZ3VyZSA86L2v5Lu25YyF5ZCNPiDmiJbogIXnlKggZHNlbGVjdCBcbiIKKyLoj5zljZXkuK3nmoTphY3nva7pobnph43mlrDphY3nva7ova/ku7bljIXvvJpcbiIKKworIzogc3JjL2VucXVpcnkuYzo5NAorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBvbmx5IGhhbGYgaW5zdGFsbGVkLCBkdWUgdG8gcHJvYmxlbXMgZHVyaW5nXG4iCisiaW5zdGFsbGF0aW9uLiAgVGhlIGluc3RhbGxhdGlvbiBjYW4gcHJvYmFibHkgYmUgY29tcGxldGVkIGJ5IHJldHJ5aW5nIGl0O1xuIgorInRoZSBwYWNrYWdlcyBjYW4gYmUgcmVtb3ZlZCB1c2luZyBkc2VsZWN0IG9yIGRwa2cgLS1yZW1vdmU6XG4iCittc2dzdHIgIiIKKyLkuIvliJfova/ku7bljIXooqvkuI3lrozmlbTlnLDlronoo4XkuobvvIzov5nopoHlvZLlko7kuo5cbiIKKyLlronoo4Xml7blh7rnmoTpl67popjjgILlho3or5XkuIDmrKHlj6/og73lsLHog73lrozmiJDlronoo4XvvJtcbiIKKyLlgJ/liqkgZHNlbGVjdCDmiJYgZHBrZyAtLXJlbW92ZSDlj6/ku6Xmiorov5nkupvova/ku7bljIXliKDpmaTvvJpcbiIKKworIzogc3JjL2VucXVpcnkuYzoxMDEKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgYXdhaXRpbmcgcHJvY2Vzc2luZyBvZiB0cmlnZ2VycyB0aGF0IHRoZXlcbiIKKyJoYXZlIGFjdGl2YXRlZCBpbiBvdGhlciBwYWNrYWdlcy4gIFRoaXMgcHJvY2Vzc2luZyBjYW4gYmUgcmVxdWVzdGVkIHVzaW5nXG4iCisiZHNlbGVjdCBvciBkcGtnIC0tY29uZmlndXJlIC0tcGVuZGluZyAob3IgZHBrZyAtLXRyaWdnZXJzLW9ubHkpOlxuIgorbXNnc3RyICIiCisi5LiL5YiX6L2v5Lu25YyF5q2j5Zyo562J5b6F55Sx5a6D5Lus5Zyo5YW25LuW6L2v5Lu25YyF5r+A5rS755qE6Kem5Y+R5Zmo5aSE55CG44CCXG4iCisi6K+l5aSE55CG5Y+v5Lul5L2/55SoIGRzZWxlY3Qg5oiW6ICFIGRwa2cgLS1jb25maWd1cmUgLS1wZW5kaW5nXG4iCisiKOaIluiAhSBkcGtnIC0tdHJpZ2dlcnMtb25seSnmnaXor7fmsYLvvJpcbiIKKworIzogc3JjL2VucXVpcnkuYzoxMDgKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBoYXZlIGJlZW4gdHJpZ2dlcmVkLCBidXQgdGhlIHRyaWdnZXIgcHJvY2Vzc2luZ1xuIgorImhhcyBub3QgeWV0IGJlZW4gZG9uZS4gIFRyaWdnZXIgcHJvY2Vzc2luZyBjYW4gYmUgcmVxdWVzdGVkIHVzaW5nXG4iCisiZHNlbGVjdCBvciBkcGtnIC0tY29uZmlndXJlIC0tcGVuZGluZyAob3IgZHBrZyAtLXRyaWdnZXJzLW9ubHkpOlxuIgorbXNnc3RyICIiCisi5LiL5YiX6L2v5Lu25YyF6KKr6Kem5Y+R77yM5L2G6Kem5Y+R5Zmo5aSE55CG5bCa5pyq5a6M5oiQ44CC6Kem5Y+R5Zmo5aSE55CG5Y+v5Lul5L2/55SoIGRzZWxlY3Qg5oiW6ICFIFxuIgorImRwa2cgLS1jb25maWd1cmUgLS1wZW5kaW5nICjmiJbogIUgZHBrZyAtLXRyaWdnZXJzLW9ubHkp5p2l6K+35rGC77yaXG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTM3IHNyYy9lbnF1aXJ5LmM6MjExIHNyYy9lbnF1aXJ5LmM6MjkyIHNyYy9lbnF1aXJ5LmM6MzczCisjOiBzcmMvZW5xdWlyeS5jOjQ2MCBzcmMvc2VsZWN0LmM6OTggc3JjL3NlbGVjdC5jOjE2NCBzcmMvdHJpZ2NtZC5jOjE5OQorIzogc3JjL3VwZGF0ZS5jOjQ4IHNyYy91cGRhdGUuYzoxMTMgZHBrZy1zcGxpdC9xdWV1ZS5jOjIzMgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIHRha2VzIG5vIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS0lcyDkuI3pnIDopoHku7vkvZXlj4LmlbAiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTUyCittc2dpZCAiIgorIkFub3RoZXIgcHJvY2VzcyBoYXMgbG9ja2VkIHRoZSBkYXRhYmFzZSBmb3Igd3JpdGluZywgYW5kIG1pZ2h0IGN1cnJlbnRseSBiZVxuIgorIm1vZGlmeWluZyBpdCwgc29tZSBvZiB0aGUgZm9sbG93aW5nIHByb2JsZW1zIG1pZ2h0IGp1c3QgYmUgZHVlIHRvIHRoYXQuXG4iCittc2dzdHIgIiIKKyLlj6bkuIDov5vnqIvlt7Lnu4/plIHlrprmlbDmja7lupPku6XlhpnlhaXvvIzlubblj6/og73mraPlnKjlr7nlhbbov5vooYzkv67mlLnvvIzkuIDkupvpl67popjlj6/og73mraPmmK/nlLHmraTlr7wiCisi6Ie055qE44CCXG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTkxCisjLCBmdXp6eQorI3wgbXNnaWQgIjx1bmtub3duPiIKK21zZ2N0eHQgInNlY3Rpb24iCittc2dpZCAiPHVua25vd24+IgorbXNnc3RyICI85pyq55+lPiIKKworIzogc3JjL2VucXVpcnkuYzoyNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiICVkIGluICVzOiAiCittc2dzdHIgIiDlnKggJTIkcyDmnIkgJTEkZCDkuKrvvJoiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MjY2CisjLCBjLWZvcm1hdAorbXNnaWQgIiAlZCBwYWNrYWdlLCBmcm9tIHRoZSBmb2xsb3dpbmcgc2VjdGlvbjoiCittc2dpZF9wbHVyYWwgIiAlZCBwYWNrYWdlcywgZnJvbSB0aGUgZm9sbG93aW5nIHNlY3Rpb25zOiIKK21zZ3N0clswXSAiIOWcqOS4i+WIl+exu+WIq+S4re+8jOaciSAlZCDkuKrova/ku7bljIXvvJoiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzA1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJWZXJzaW9uIG9mIGRwa2cgd2l0aCB3b3JraW5nICVzIHN1cHBvcnQgbm90IHlldCBjb25maWd1cmVkLlxuIgorIiBQbGVhc2UgdXNlICdkcGtnIC0tY29uZmlndXJlIGRwa2cnLCBhbmQgdGhlbiB0cnkgYWdhaW4uXG4iCittc2dzdHIgIiIKKyLluKbmnInlj6/lt6XkvZwgJXMg5pSv5oyB55qEIGRwa2cg54mI5pys5bCa5pyq6YWN572u5aW944CCXG4iCisiIOivt+i/kOihjCBkcGtnIC0tY29uZmlndXJlIGRwa2fvvIznhLblkI7lho3lsJ3or5XjgIJcbiIKKworIzogc3JjL2VucXVpcnkuYzozMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZyBub3QgcmVjb3JkZWQgYXMgaW5zdGFsbGVkLCBjYW5ub3QgY2hlY2sgZm9yICVzIHN1cHBvcnQhXG4iCittc2dzdHIgIuiusOW9leS4reaYvuekuu+8jGRwa2cg5rKh5pyJ6KKr5a6J6KOF77yM5Zug6ICM5LiN6IO95pat5a6a5a6D5piv5ZCm5pSv5oyBICVz77yBXG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzIxCittc2dpZCAiUHJlLURlcGVuZHMgZmllbGQiCittc2dzdHIgIumihOS+nei1luWfnyIKKworIzogc3JjL2VucXVpcnkuYzozMjkKK21zZ2lkICJlcG9jaCIKK21zZ3N0ciAi54mI5qyhIgorCisjOiBzcmMvZW5xdWlyeS5jOjMzNworbXNnaWQgImxvbmcgZmlsZW5hbWVzIgorbXNnc3RyICLplb/mlofku7blkI0iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzQ2Cittc2dpZCAibXVsdGlwbGUgQ29uZmxpY3RzIGFuZCBSZXBsYWNlcyIKK21zZ3N0ciAi5aSa5Liq5Yay56qB5ZKM5pu/5o2iIgorCisjOiBzcmMvZW5xdWlyeS5jOjQzNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogY2Fubm90IHNlZSBob3cgdG8gc2F0aXNmeSBwcmUtZGVwZW5kZW5jeTpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorImRwa2fvvJrml6Dms5XmjqjmtYvor6XlpoLkvZXmu6HotrPpooTkvp3otZblhbPns7vvvJpcbiIKKyIgJXNcbiIKKworIzogc3JjL2VucXVpcnkuYzo0MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHNhdGlzZnkgcHJlLWRlcGVuZGVuY2llcyBmb3IgJS4yNTBzICh3YW50ZWQgZHVlIHRvICUuMjUwcykiCittc2dzdHIgIuaXoOazlea7oei2syAlLjI1MHMg55qE6aKE5L6d6LWW5YWz57O777yM6LW35Zug5pivICUuMjUwcyIKKworIzogc3JjL2VucXVpcnkuYzo0NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAib2Jzb2xldGUgb3B0aW9uICctLSVzJywgcGxlYXNlIHVzZSAnLS0lcycgaW5zdGVhZC4iCittc2dzdHIgIuW6n+W8g+eahOmAiemhuSAtLSVz77yM6K+35L2/55SoIC0tJXMgIgorCisjOiBzcmMvZW5xdWlyeS5jOjUxOQorbXNnaWQgIiIKKyItLWNvbXBhcmUtdmVyc2lvbnMgdGFrZXMgdGhyZWUgYXJndW1lbnRzOiA8dmVyc2lvbj4gPHJlbGF0aW9uPiA8dmVyc2lvbj4iCittc2dzdHIgIiIKKyItLWNvbXBhcmUtdmVyc2lvbiDpnIDopoHkuInkuKrlj4LmlbDvvIzlroPku6zliIbliKvmmK/vvJo854mI5pys5Y+3PiA85q+U6L6D5YWz57O7PiA854mI5pys5Y+3PiIKKworIzogc3JjL2VucXVpcnkuYzo1MjQKK21zZ2lkICItLWNvbXBhcmUtdmVyc2lvbnMgYmFkIHJlbGF0aW9uIgorbXNnc3RyICItLWNvbXBhcmUtdmVyc2lvbnMg6ZSZ6K+v55qE5q+U6L6D5YWz57O7IgorCisjOiBzcmMvZW5xdWlyeS5jOjUyOSBzcmMvZW5xdWlyeS5jOjUzMSBzcmMvZW5xdWlyeS5jOjU0MCBzcmMvZW5xdWlyeS5jOjU0MgorIywgYy1mb3JtYXQKK21zZ2lkICJ2ZXJzaW9uICclcycgaGFzIGJhZCBzeW50YXg6ICVzIgorbXNnc3RyICLniYjmnKzlj7cgJXMg5pyJ6K+t5rOV6ZSZ6K+v77yaJXMiCisKKyM6IHNyYy9lcnJvcnMuYzo2MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IGVycm9yIHByb2Nlc3NpbmcgJXMgKC0tJXMpOlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisiJXPvvJrlpITnkIYgJXMgKC0tJXMp5pe25Ye66ZSZ77yaXG4iCisiICVzXG4iCisKKyM6IHNyYy9lcnJvcnMuYzo2OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgImRwa2c6IGZhaWxlZCB0byBhbGxvY2F0ZSBtZW1vcnkgZm9yIG5ldyBlbnRyeSBpbiBsaXN0IG9mIGZhaWxlZCBwYWNrYWdlcy4iCittc2dpZCAiIgorIiVzOiBmYWlsZWQgdG8gYWxsb2NhdGUgbWVtb3J5IGZvciBuZXcgZW50cnkgaW4gbGlzdCBvZiBmYWlsZWQgcGFja2FnZXM6ICVzIgorbXNnc3RyICJkcGtn77ya5Zyo5peg5rOV5aSE55CG55qE6L2v5Lu25YyF5YiX6KGo5Lit5re75Yqg6KGo6aG55pe277yM55Sz6K+36KGo6aG55omA6ZyA55qE5YaF5a2Y5aSx6LSl44CCIgorCisjOiBzcmMvZXJyb3JzLmM6NzkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImRwa2c6IHRvbyBtYW55IGVycm9ycywgc3RvcHBpbmdcbiIKK21zZ2lkICIlczogdG9vIG1hbnkgZXJyb3JzLCBzdG9wcGluZ1xuIgorbXNnc3RyICJkcGtn77ya5Ye6546w6L+H5aSa6ZSZ6K+v77yM5q2j5Zyo57uI5q2iXG4iCisKKyM6IHNyYy9lcnJvcnMuYzo4NworbXNnaWQgIkVycm9ycyB3ZXJlIGVuY291bnRlcmVkIHdoaWxlIHByb2Nlc3Npbmc6XG4iCittc2dzdHIgIuWcqOWkhOeQhuaXtuaciemUmeivr+WPkeeUn++8mlxuIgorCisjOiBzcmMvZXJyb3JzLmM6OTQKK21zZ2lkICJQcm9jZXNzaW5nIHdhcyBoYWx0ZWQgYmVjYXVzZSB0aGVyZSB3ZXJlIHRvbyBtYW55IGVycm9ycy5cbiIKK21zZ3N0ciAi55Sx5LqO5Ye6546w5LqG5aSq5aSa6ZSZ6K+v77yM5aSE55CG6L+H56iL6KKr57uI5q2i5LqG44CCXG4iCisKKyM6IHNyYy9lcnJvcnMuYzoxMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSAlcyB3YXMgb24gaG9sZCwgcHJvY2Vzc2luZyBpdCBhbnl3YXkgYXMgeW91IHJlcXVlc3RlZFxuIgorbXNnc3RyICLova/ku7bljIUgJXMg5pys5p2l6KKr6KaB5rGC5L+d5oyB5Y6f5p2l55qE54mI5pys77yM5L2G6L+Y5piv5aaC5oKo5omA5oS/77yM57un57ut5a+55a6D6L+b6KGM5pON5L2cXG4iCisKKyM6IHNyYy9lcnJvcnMuYzoxMDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlBhY2thZ2UgJXMgaXMgb24gaG9sZCwgbm90IHRvdWNoaW5nIGl0LiAgVXNlIC0tZm9yY2UtaG9sZCB0byBvdmVycmlkZS5cbiIKK21zZ3N0ciAiIgorIui9r+S7tuWMhSAlcyDooqvopoHmsYLkv53mjIHljp/mnaXnmoTniYjmnKzvvIzlm6DogIzkuI3kvJrljrvmlLnliqjlroPjgILor7fkvb/nlKggLS1mb3JjZS1ob2xkIOmAiemhueadpSIKKyLlv73nlaXor6Xorr7nva7jgIJcbiIKKworIzogc3JjL2Vycm9ycy5jOjExOQorbXNnaWQgIm92ZXJyaWRpbmcgcHJvYmxlbSBiZWNhdXNlIC0tZm9yY2UgZW5hYmxlZDoiCittc2dzdHIgIueUseS6juW8gOWQr+S6hiAtLWZvcmNlIOmAiemhue+8jOS7peS4i+mXrumimOiiq+W/veeVpe+8miIKKworIzogc3JjL2ZpbGVzZGIuYzozMDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlIGAlLjI1MHMnIgorbXNnc3RyICLml6Dms5XmiZPlvIDova/ku7bljIUgJS4yNTBzIOeahOaWh+S7tuWQjeWIl+ihqOaWh+S7tiIKKworIzogc3JjL2ZpbGVzZGIuYzozMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSBgJS4yNTBzJyBtaXNzaW5nLCBhc3N1bWluZyBwYWNrYWdlIGhhcyBubyBmaWxlcyAiCisiY3VycmVudGx5IGluc3RhbGxlZC4iCittc2dzdHIgIiIKKyLml6Dms5Xmib7liLDova/ku7bljIUgJS4yNTBzIOeahOaWh+S7tuWQjeWIl+ihqOaWh+S7tu+8jOeOsOWBh+Wumuivpei9r+S7tuWMheebruWJjeayoeacieS7u+S9leaWh+S7tuiiq+WuieijhSIKKyLlnKjns7vnu5/ph4zjgIIiCisKKyM6IHNyYy9maWxlc2RiLmM6MzIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAnJS4yNTBzJyIKK21zZ3N0ciAi5peg5rOV5Y+W5b6X6L2v5Lu25YyFICUuMjUwcyDnmoTmlofku7blkI3liJfooajmlofku7YiCisKKyM6IHNyYy9maWxlc2RiLmM6MzMwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlcyBsaXN0IGZvciBwYWNrYWdlIGAlLjI1MHMnIgorbXNnaWQgInJlYWRpbmcgZmlsZXMgbGlzdCBmb3IgcGFja2FnZSAnJS4yNTBzJyIKK21zZ3N0ciAi6L2v5Lu25YyFICUuMjUwcyDnmoTmlofku7blkI3liJfooajmlofku7YiCisKKyM6IHNyYy9maWxlc2RiLmM6MzM2CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAnJS4yNTBzJyBpcyBtaXNzaW5nIGZpbmFsIG5ld2xpbmUiCittc2dzdHIgIui9r+S7tuWMhSAlLjI1MHMg55qE5paH5Lu25ZCN5YiX6KGo5paH5Lu25pyA5ZCO57uT5bC+55qE5o2i6KGM56ymIgorCisjOiBzcmMvZmlsZXNkYi5jOjM0NAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcycgY29udGFpbnMgZW1wdHkgZmlsZW5hbWUiCittc2dzdHIgIui9r+S7tuWMhSAlLjI1MHMg55qE5paH5Lu25ZCN5YiX6KGo5paH5Lu25ZCr5pyJ56m655qE5paH5Lu25ZCNIgorCisjOiBzcmMvZmlsZXNkYi5jOjM1MgorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSBgJS4yNTBzJyIKK21zZ3N0ciAi5YWz6Zet6L2v5Lu25YyFICUuMjUwcyDnmoTmlofku7blkI3liJfooajmlofku7bml7blh7rplJkiCisKKyM6IHNyYy9maWxlc2RiLmM6NDYyCittc2dpZCAiKFJlYWRpbmcgZGF0YWJhc2UgLi4uICIKK21zZ3N0ciAiKOato+WcqOivu+WPluaVsOaNruW6kyAuLi4gIgorCisjOiBzcmMvZmlsZXNkYi5jOjQ4MworIywgYy1mb3JtYXQKK21zZ2lkICIlZCBmaWxlIG9yIGRpcmVjdG9yeSBjdXJyZW50bHkgaW5zdGFsbGVkLilcbiIKK21zZ2lkX3BsdXJhbCAiJWQgZmlsZXMgYW5kIGRpcmVjdG9yaWVzIGN1cnJlbnRseSBpbnN0YWxsZWQuKVxuIgorbXNnc3RyWzBdICLns7vnu5/lvZPliY3lhbHlronoo4XmnIkgJWQg5Liq5paH5Lu25ZKM55uu5b2V44CCKVxuIgorCisjOiBzcmMvZmlsZXNkYi5jOjUxNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICLml6Dms5XkuLrova/ku7bljIUgJXMg5paw5bu65pu05paw5ZCO55qE5paH5Lu25ZCN5YiX6KGo5paH5Lu2IgorCisjOiBzcmMvZmlsZXNkYi5jOjUyNgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgdG8gdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIuaXoOazleWGmeWFpeabtOaWsOWQjueahOi9r+S7tuWMhSAlcyDnmoTmlofku7blkI3liJfooajmlofku7YiCisKKyM6IHNyYy9maWxlc2RiLmM6NTI4CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBmbHVzaCB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAi5peg5rOV5Yi35paw5pu05paw5ZCO55qE6L2v5Lu25YyFICVzIOeahOaWh+S7tuWQjeWIl+ihqOaWh+S7tiIKKworIzogc3JjL2ZpbGVzZGIuYzo1MzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHN5bmMgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIuaXoOazleWQjOatpeabtOaWsOWQjueahOi9r+S7tuWMhSAlcyDnmoTmlofku7blkI3liJfooajmlofku7YiCisKKyM6IHNyYy9maWxlc2RiLmM6NTMzCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjbG9zZSB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAi5peg5rOV5YWz6Zet5pu05paw5ZCO55qE6L2v5Lu25YyFICVzIOeahOaWh+S7tuWQjeWIl+ihqOaWh+S7tiIKKworIzogc3JjL2ZpbGVzZGIuYzo1MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGluc3RhbGwgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIuaXoOazleWuieijheabtOaWsOWQjueahOi9r+S7tuWMhSAlcyDnmoTmlofku7blkI3liJfooajmlofku7YiCisKKyM6IHNyYy9oZWxwLmM6NDgKK21zZ2lkICJub3QgaW5zdGFsbGVkIgorbXNnc3RyICLmnKrlronoo4UiCisKKyM6IHNyYy9oZWxwLmM6NDkKK21zZ2lkICJub3QgaW5zdGFsbGVkIGJ1dCBjb25maWdzIHJlbWFpbiIKK21zZ3N0ciAi5pyq5a6J6KOF77yM5L2G5piv5YW26YWN572u5paH5Lu25LuN5a2Y55WZ5LqO57O757uf5LitIgorCisjOiBzcmMvaGVscC5jOjUwCittc2dpZCAiYnJva2VuIGR1ZSB0byBmYWlsZWQgcmVtb3ZhbCBvciBpbnN0YWxsYXRpb24iCittc2dzdHIgIueUseS6juenu+mZpOaIluWuieijheWksei0peiAjOWkhOS6juaui+aNn+eahOeKtuaAgSIKKworIzogc3JjL2hlbHAuYzo1MQorbXNnaWQgInVucGFja2VkIGJ1dCBub3QgY29uZmlndXJlZCIKK21zZ3N0ciAi5bey6Kej5YyF77yM5L2G5bCa5pyq6YWN572uIgorCisjOiBzcmMvaGVscC5jOjUyCittc2dpZCAiYnJva2VuIGR1ZSB0byBwb3N0aW5zdCBmYWlsdXJlIgorbXNnc3RyICLnlLHkuo7lronoo4XlkI7mk43kvZwocG9zdGluc3Qp5aSx6LSl77yM5pyq6IO95a6M5oiQ5a6J6KOFIgorCisjOiBzcmMvaGVscC5jOjUzCittc2dpZCAiYXdhaXRpbmcgdHJpZ2dlciBwcm9jZXNzaW5nIGJ5IGFub3RoZXIgcGFja2FnZSIKK21zZ3N0ciAi562J5b6F5Y+m5LiA6L2v5Lu25YyF55qE6Kem5Y+R5Zmo5aSE55CGIgorCisjOiBzcmMvaGVscC5jOjU0Cittc2dpZCAidHJpZ2dlcmVkIgorbXNnc3RyICLlt7Lop6blj5EiCisKKyM6IHNyYy9oZWxwLmM6NTUKK21zZ2lkICJpbnN0YWxsZWQiCittc2dzdHIgIuW3suWuieijhSIKKworIzogc3JjL2hlbHAuYzoxMDcKKyMsIGZ1enp5CisjfCBtc2dpZCAiZXJyb3I6IFBBVEggaXMgbm90IHNldC4iCittc2dpZCAiUEFUSCBpcyBub3Qgc2V0LiIKK21zZ3N0ciAi6ZSZ6K+v77ya5rKh5pyJ6K6+572uIFBBVEgg546v5aKD5Y+Y6YeP44CCIgorCisjOiBzcmMvaGVscC5jOjEyOQorIywgYy1mb3JtYXQKK21zZ2lkICInJXMnIG5vdCBmb3VuZCBpbiBQQVRIIG9yIG5vdCBleGVjdXRhYmxlLiIKK21zZ3N0ciAi5ZyoIFBBVEgg546v5aKD5Y+Y6YeP5Lit5om+5LiN5YiwICVzIOaIluayoeacieWPr+aJp+ihjOadg+mZkOOAgiIKKworIzogc3JjL2hlbHAuYzoxMzgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiclcycgbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuIgorbXNnaWQgIiIKKyIlZCBleHBlY3RlZCBwcm9ncmFtIG5vdCBmb3VuZCBpbiBQQVRIIG9yIG5vdCBleGVjdXRhYmxlLlxuIgorIiVzIgorbXNnaWRfcGx1cmFsICIiCisiJWQgZXhwZWN0ZWQgcHJvZ3JhbXMgbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuXG4iCisiJXMiCittc2dzdHJbMF0gIuWcqCBQQVRIIOeOr+Wig+WPmOmHj+S4reaJvuS4jeWIsCAlcyDmiJbmsqHmnInlj6/miafooYzmnYPpmZDjgIIiCisKKyM6IHNyYy9oZWxwLmM6MTQxCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICIlZCBleHBlY3RlZCBwcm9ncmFtIG5vdCBmb3VuZCBpbiBQQVRIIG9yIG5vdCBleGVjdXRhYmxlLlxuIgorI3wgIk5COiByb290J3MgUEFUSCBzaG91bGQgdXN1YWxseSBjb250YWluIC91c3IvbG9jYWwvc2JpbiwgL3Vzci9zYmluIGFuZCAvIgorI3wgInNiaW4uIgorI3wgbXNnaWRfcGx1cmFsICIiCisjfCAiJWQgZXhwZWN0ZWQgcHJvZ3JhbXMgbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuXG4iCisjfCAiTkI6IHJvb3QncyBQQVRIIHNob3VsZCB1c3VhbGx5IGNvbnRhaW4gL3Vzci9sb2NhbC9zYmluLCAvdXNyL3NiaW4gYW5kIC8iCisjfCAic2Jpbi4iCittc2dpZCAiIgorIk5vdGU6IHJvb3QncyBQQVRIIHNob3VsZCB1c3VhbGx5IGNvbnRhaW4gL3Vzci9sb2NhbC9zYmluLCAvdXNyL3NiaW4gYW5kIC8iCisic2Jpbi4iCittc2dzdHIgIiIKKyLlhbHmnIkgJWQg5Liq56iL5bqP5rKh5ZyoIFBBVEgg5Lit5om+5Yiw5oiW5rKh5pyJ5Y+v5omn6KGM5p2D6ZmQ44CCXG4iCisi5o+Q56S677yacm9vdCDnmoQgUEFUSCDnjq/looPlj5jph4/pgJrluLjlupTlvZPljIXlkKsgL3Vzci9sb2NhbC9zYmlu44CBL3Vzci9zYmluIOWSjCAvc2JpbiIKKworIzogc3JjL2hlbHAuYzoxODgKK21zZ2lkICJhZG1pbmRpciBtdXN0IGJlIGluc2lkZSBpbnN0ZGlyIGZvciBkcGtnIHRvIHdvcmsgcHJvcGVybHkiCittc2dzdHIgIiIKKworIzogc3JjL2hlbHAuYzoxOTAgc3JjL21haW4uYzo3NDcKKyMsIGZ1enp5CisjfCBtc2dpZCAidW5hYmxlIHRvIHNldGVudiBmb3IgbWFpbnRhaW5lciBzY3JpcHQiCittc2dpZCAidW5hYmxlIHRvIHNldGVudiBmb3Igc3VicHJvY2Vzc2VzIgorbXNnc3RyICLml6Dms5XkuLrnu7TmiqTohJrmnKzorr7nva7njq/looPlj5jph48iCisKKyM6IHNyYy9oZWxwLmM6MTkyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjaHJvb3QgdG8gYCUuMjUwcyciCittc2dzdHIgIuaXoOazlSBjaHJvb3Qg5YiwICUuMjUwcyDnm67lvZUiCisKKyM6IHNyYy9oZWxwLmM6MTk0IGRwa2ctZGViL2J1aWxkLmM6NDU1IGRwa2ctZGViL2J1aWxkLmM6NDU3CisjOiBkcGtnLWRlYi9idWlsZC5jOjUzNiBkcGtnLWRlYi9idWlsZC5jOjU1OAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gYCUuMjU1cyciCittc2dzdHIgImNoZGlyIOWIsCAlLjI1NXMg5aSx6LSlIgorCisjOiBzcmMvaGVscC5jOjI1NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IGV4ZWN1dGUgcGVybWlzc2lvbnMgb24gYCUuMjUwcyciCittc2dzdHIgIuaXoOazleiuvue9riAlcyDnmoTmiafooYzmnYPpmZDkvY0iCisKKyM6IHNyYy9oZWxwLmM6Mjc2Cittc2dpZCAidW5hYmxlIHRvIHNldGVudiBmb3IgbWFpbnRhaW5lciBzY3JpcHQiCittc2dzdHIgIuaXoOazleS4uue7tOaKpOiEmuacrOiuvue9rueOr+Wig+WPmOmHjyIKKworIzogc3JjL2hlbHAuYzozMDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW5zdGFsbGVkICVzIHNjcmlwdCIKK21zZ3N0ciAi5bey5a6J6KOFICVzIOiEmuacrCIKKworIzogc3JjL2hlbHAuYzozMTMgc3JjL2hlbHAuYzozODIgc3JjL2hlbHAuYzo0NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgJXMgYCUuMjUwcyciCittc2dzdHIgIuaXoOazleiOt+WPliAlcyAgJS4yNTBzIOeahOeKtuaAgSIKKworIzogc3JjL2hlbHAuYzozNjggc3JjL2hlbHAuYzo0MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAibmV3ICVzIHNjcmlwdCIKK21zZ3N0ciAi5paw55qEICVzIOiEmuacrCIKKworIzogc3JjL2hlbHAuYzo0MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAib2xkICVzIHNjcmlwdCIKK21zZ3N0ciAi5pen55qEICVzIOiEmuacrCIKKworIzogc3JjL2hlbHAuYzo0MTYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgJXMgJyUuMjUwcyc6ICVzIgorbXNnc3RyICLml6Dms5Xojrflj5YgJXMgICUuMjUwcyDnmoTnirbmgIHvvJolcyIKKworIzogc3JjL2hlbHAuYzo0MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZyAtIHRyeWluZyBzY3JpcHQgZnJvbSB0aGUgbmV3IHBhY2thZ2UgaW5zdGVhZCAuLi5cbiIKK21zZ3N0ciAiZHBrZyAtIOeOsOWcqOWwneivleS9v+eUqOaWsOi9r+S7tuWMheaJgOW4pueahOiEmuacrC4uLlxuIgorCisjOiBzcmMvaGVscC5jOjQzOQorbXNnaWQgInRoZXJlIGlzIG5vIHNjcmlwdCBpbiB0aGUgbmV3IHZlcnNpb24gb2YgdGhlIHBhY2thZ2UgLSBnaXZpbmcgdXAiCittc2dzdHIgIuaWsOeJiOacrOeahOi9r+S7tuWMhemHjOayoeacieiEmuacrCAtIOWPlua2iOaTjeS9nCIKKworIzogc3JjL2hlbHAuYzo0NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogLi4uIGl0IGxvb2tzIGxpa2UgdGhhdCB3ZW50IE9LLlxuIgorbXNnc3RyICJkcGtn77yaLi4uIOeci+i1t+adpeWug+iDveato+ehruaJp+ihjOOAglxuIgorCisjOiBzcmMvaGVscC5jOjYxNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2VjdXJlbHkgcmVtb3ZlICclLjI1NXMnIgorbXNnc3RyICLml6Dms5XlronlhajliKDpmaQgJS4yNTVzICIKKworIzogc3JjL2hlbHAuYzo2MjEgZHBrZy1kZWIvaW5mby5jOjY1IGRwa2ctZGViL2luZm8uYzo2NworbXNnaWQgInJtIGNvbW1hbmQgZm9yIGNsZWFudXAiCittc2dzdHIgIiIKKworIzogc3JjL2luZm9kYi5jOjUyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGVjayBleGlzdGVuY2Ugb2YgYCUuMjUwcyciCittc2dzdHIgIuaXoOazleWIpOaWrSAlLjI1MHMg5piv5ZCm5a2Y5ZyoIgorCisjOiBzcmMvaW5mb2RiLmM6NzAKK21zZ2lkICJjYW5ub3QgcmVhZCBpbmZvIGRpcmVjdG9yeSIKK21zZ3N0ciAi5peg5rOV6K+75Y+W5L+h5oGvKGluZm8p55uu5b2VIgorCisjOiBzcmMvbWFpbi5jOjYwCisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiBgJXMnIHBhY2thZ2UgbWFuYWdlbWVudCBwcm9ncmFtIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkRlYmlhbiAlcyDova/ku7bljIXnrqHnkIbnqIvluo8gJXMg54mI44CCXG4iCisKKyM6IHNyYy9tYWluLmM6ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLWl8LS1pbnN0YWxsICAgICAgIDwuZGViIGZpbGUgbmFtZT4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRpcmVjdG9yeT4gLi4uXG4iCisiICAtLXVucGFjayAgICAgICAgICAgPC5kZWIgZmlsZSBuYW1lPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyZWN0b3J5PiAuLi5cbiIKKyIgIC1BfC0tcmVjb3JkLWF2YWlsICA8LmRlYiBmaWxlIG5hbWU+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXJlY3Rvcnk+IC4uLlxuIgorIiAgLS1jb25maWd1cmUgICAgICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC0tdHJpZ2dlcnMtb25seSAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtcnwtLXJlbW92ZSAgICAgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLVB8LS1wdXJnZSAgICAgICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC0tZ2V0LXNlbGVjdGlvbnMgWzxwYXR0ZXJuPiAuLi5dIEdldCBsaXN0IG9mIHNlbGVjdGlvbnMgdG8gc3Rkb3V0LlxuIgorIiAgLS1zZXQtc2VsZWN0aW9ucyAgICAgICAgICAgICAgICAgU2V0IHBhY2thZ2Ugc2VsZWN0aW9ucyBmcm9tIHN0ZGluLlxuIgorIiAgLS1jbGVhci1zZWxlY3Rpb25zICAgICAgICAgICAgICAgRGVzZWxlY3QgZXZlcnkgbm9uLWVzc2VudGlhbCBwYWNrYWdlLlxuIgorIiAgLS11cGRhdGUtYXZhaWwgPFBhY2thZ2VzLWZpbGU+ICAgUmVwbGFjZSBhdmFpbGFibGUgcGFja2FnZXMgaW5mby5cbiIKKyIgIC0tbWVyZ2UtYXZhaWwgPFBhY2thZ2VzLWZpbGU+ICAgIE1lcmdlIHdpdGggaW5mbyBmcm9tIGZpbGUuXG4iCisiICAtLWNsZWFyLWF2YWlsICAgICAgICAgICAgICAgICAgICBFcmFzZSBleGlzdGluZyBhdmFpbGFibGUgaW5mby5cbiIKKyIgIC0tZm9yZ2V0LW9sZC11bmF2YWlsICAgICAgICAgICAgIEZvcmdldCB1bmluc3RhbGxlZCB1bmF2YWlsYWJsZSBwa2dzLlxuIgorIiAgLXN8LS1zdGF0dXMgPHBhY2thZ2U+IC4uLiAgICAgICAgRGlzcGxheSBwYWNrYWdlIHN0YXR1cyBkZXRhaWxzLlxuIgorIiAgLXB8LS1wcmludC1hdmFpbCA8cGFja2FnZT4gLi4uICAgRGlzcGxheSBhdmFpbGFibGUgdmVyc2lvbiBkZXRhaWxzLlxuIgorIiAgLUx8LS1saXN0ZmlsZXMgPHBhY2thZ2U+IC4uLiAgICAgTGlzdCBmaWxlcyBgb3duZWQnIGJ5IHBhY2thZ2UocykuXG4iCisiICAtbHwtLWxpc3QgWzxwYXR0ZXJuPiAuLi5dICAgICAgICBMaXN0IHBhY2thZ2VzIGNvbmNpc2VseS5cbiIKKyIgIC1TfC0tc2VhcmNoIDxwYXR0ZXJuPiAuLi4gICAgICAgIEZpbmQgcGFja2FnZShzKSBvd25pbmcgZmlsZShzKS5cbiIKKyIgIC1DfC0tYXVkaXQgICAgICAgICAgICAgICAgICAgICAgIENoZWNrIGZvciBicm9rZW4gcGFja2FnZShzKS5cbiIKKyIgIC0tcHJpbnQtYXJjaGl0ZWN0dXJlICAgICAgICAgICAgIFByaW50IGRwa2cgYXJjaGl0ZWN0dXJlLlxuIgorIiAgLS1jb21wYXJlLXZlcnNpb25zIDxhPiA8b3A+IDxiPiAgQ29tcGFyZSB2ZXJzaW9uIG51bWJlcnMgLSBzZWUgYmVsb3cuXG4iCisiICAtLWZvcmNlLWhlbHAgICAgICAgICAgICAgICAgICAgICBTaG93IGhlbHAgb24gZm9yY2luZy5cbiIKKyIgIC1EaHwtLWRlYnVnPWhlbHAgICAgICAgICAgICAgICAgIFNob3cgaGVscCBvbiBkZWJ1Z2dpbmcuXG4iCisiXG4iCittc2dzdHIgIiIKKyLlkb3ku6TvvJpcbiIKKyIgIC1pfC0taW5zdGFsbCAgICAgICA8LmRlYiDmlofku7blkI0+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDznm67lvZU+IC4uLlxuIgorIiAgLS11bnBhY2sgICAgICAgICAgIDwuZGViIOaWh+S7tuWQjT4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPOebruW9lT4gLi4uXG4iCisiICAtQXwtLXJlY29yZC1hdmFpbCAgPC5kZWIg5paH5Lu25ZCNPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA855uu5b2VPiAuLi5cbiIKKyIgIC0tY29uZmlndXJlICAgICAgICA86L2v5Lu25YyF5ZCNPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC0tdHJpZ2dlcnMtb25seSAgICA86L2v5Lu25YyF5ZCNPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC1yfC0tcmVtb3ZlICAgICAgICA86L2v5Lu25YyF5ZCNPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC1QfC0tcHVyZ2UgICAgICAgICA86L2v5Lu25YyF5ZCNPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC0tZ2V0LXNlbGVjdGlvbnMgWzzooajovr7lvI8+IC4uLl0gIOaKiuW3sumAieS4reeahOi9r+S7tuWMheWIl+ihqOaJk+WNsOWIsOagh+WHhui+k+WHuuOAglxuIgorIiAgLS1zZXQtc2VsZWN0aW9ucyAgICAgICAgICAgICAgICAg5LuO5qCH5YeG6L6T5YWl6YeM6K+75Ye66KaB6YCJ5oup55qE6L2v5Lu244CCXG4iCisiICAtLWNsZWFyLXNlbGVjdGlvbnMgICAgICAgICAgICAgICDlj5bmtojpgInkuK3miYDmnInkuI3lv4XopoHnmoTova/ku7bljIXjgIJcbiIKKyIgIC0tdXBkYXRlLWF2YWlsIDzova/ku7bljIXmlofku7Y+ICAgICAg5pu/5o2i546w5pyJ5Y+v5a6J6KOF55qE6L2v5Lu25YyF5L+h5oGv44CCXG4iCisiICAtLW1lcmdlLWF2YWlsIDzova/ku7bljIXmlofku7Y+ICAgICAgIOaKiuaWh+S7tuS4reeahOS/oeaBr+WQiOW5tuWIsOezu+e7n+S4reOAglxuIgorIiAgLS1jbGVhci1hdmFpbCAgICAgICAgICAgICAgICAgICAg5riF6Zmk546w5pyJ55qE6L2v5Lu25YyF5L+h5oGv44CCXG4iCisiICAtLWZvcmdldC1vbGQtdW5hdmFpbCAgICAgICAgICAgICDlv5jljbTlt7Looqvljbjovb3nmoTkuI3lj6/lronoo4XnmoTova/ku7bljIXjgIJcbiIKKyIgIC1zfC0tc3RhdHVzIDzova/ku7bljIXlkI0+IC4uLiAgICAgICDmmL7npLrova/ku7bljIXor6blsL3nmoTnirbmgIHkv6Hmga/jgIJcbiIKKyIgIC1wfC0tcHJpbnQtYXZhaWwgPOi9r+S7tuWMheWQjT4gLi4uICDmmL7npLrlj6/kvpvlronoo4XnmoTniYjmnKzor6bmg4XjgIJcbiIKKyIgIC1MfC0tbGlzdGZpbGVzIDzova/ku7bljIXlkI0+IC4uLiAgICDliJflh7rmiYDmnIkg5bGe5LqOIOivpei9r+S7tuWMhSjmiJblpJrkuKop55qE5paH5Lu244CCXG4iCisiICAtbHwtLWxpc3QgWzzooajovr7lvI8+IC4uLiAgICAgICAgICDnroDmmI7lnLDliJflh7rova/ku7bljIXnmoTnirbmgIHjgIJcbiIKKyIgIC1TfC0tc2VhcmNoIDzooajovr7lvI8+IC4uLiAgICAgICAgIOaQnOWvu+aLpeacieivpeaWh+S7tijmiJblpJrkuKrmlofku7Yp55qE5YyF44CCXG4iCisiICAtQ3wtLWF1ZGl0ICAgICAgICAgICAgICAgICAgICAgICDmo4Dmn6XmkJzlr7vmrovmjZ/nmoTova/ku7bljIXjgIJcbiIKKyIgIC0tcHJpbnQtYXJjaGl0ZWN0dXJlICAgICAgICAgICAgIOaYvuekuiBkcGtnIOS9k+ezu+aetuaehOOAglxuIgorIiAgLS1jb21wYXJlLXZlc2lvbnMgPGE+IDzlhbPns7s+IDxiPiDmr5TovoPniYjmnKzlj7cgLSDop4HkuIvjgIJcbiIKKyIgIC0tZm9yY2UtaGVscCAgICAgICAgICAgICAgICAgICAgIOaYvuekuuacrOW8uuWItumAiemhueeahOW4ruWKqeS/oeaBr+OAglxuIgorIiAgLURofC0tZGVidWc9aGVscCAgICAgICAgICAgICAgICAg5pi+56S65pyJ5YWz5Ye66ZSZ6LCD6K+V55qE5biu5Yqp5L+h5oGv44CCXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTEzIHNyYy9xdWVyeWNtZC5jOjYzMSBzcmMvdHJpZ2NtZC5jOjc3IGRwa2ctZGViL21haW4uYzo4OAorIzogZHBrZy1zcGxpdC9tYWluLmM6NzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiAgLWh8LS1oZWxwICAgICAgICAgICAgICAgICAgICAgICAgU2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCittc2dzdHIgIiIKKyIgIC1ofC0taGVscCAgICAgICAgICAgICAgICAgICAgICAgIOaYvuekuuacrOW4ruWKqeS/oeaBr+OAglxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICAgICAgICAg5pi+56S654mI5pys5L+h5oGv44CCXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTE4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJVc2UgZHBrZyAtYnwtLWJ1aWxkfC1jfC0tY29udGVudHN8LWV8LS1jb250cm9sfC1JfC0taW5mb3wtZnwtLWZpZWxkfFxuIgorIiAteHwtLWV4dHJhY3R8LVh8LS12ZXh0cmFjdHwtLWZzeXMtdGFyZmlsZSAgb24gYXJjaGl2ZXMgKHR5cGUgJXMgLS1oZWxwKS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIuWvueW9kuaho+aWh+S7tuS9v+eUqCBkcGtnIC1ifC0tYnVpbGR8LWN8LS1jb250ZW50c3wtZXwtLWNvbnRyb2x8LUl8LS1pbmZvfC1mfC0tIgorImZpZWxkfFxuIgorIiAgLXh8LS1leHRyYWN0fC1YfC0tdmV4dHJhY3R8LS1mc3lzLXRhcmZpbGUgKOi+k+WFpSAlcyAtLWhlbHAp44CCXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTIzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJGb3IgaW50ZXJuYWwgdXNlOiBkcGtnIC0tYXNzZXJ0LXN1cHBvcnQtcHJlZGVwZW5kcyB8IC0tcHJlZGVwLXBhY2thZ2UgfFxuIgorIiAgLS1hc3NlcnQtd29ya2luZy1lcG9jaCB8IC0tYXNzZXJ0LWxvbmctZmlsZW5hbWVzIHwgLS1hc3NlcnQtbXVsdGktY29ucmVwLlxuIgorIlxuIgorbXNnc3RyICIiCisi5L6b5YaF6YOo5L2/55So77yaZHBrZyAgLS1hc3NlcnQtc3VwcG9ydC1wcmVkZXBlbmRzIHwgLS1wcmVkZXAtcGFja2FnZSB8XG4iCisiICAtLWFzc2VydC13b3JraW5nLWVwb2NoIHwgLS1hc3NlcnQtbG9uZy1maWxlbmFtZXMgfCAtLWFzc2VydC1tdWx0aS0iCisiY29ucmVw44CCXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTI4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hZG1pbmRpcj08ZGlyZWN0b3J5PiAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMuXG4iCisiICAtLXJvb3Q9PGRpcmVjdG9yeT4gICAgICAgICBJbnN0YWxsIG9uIGEgZGlmZmVyZW50IHJvb3QgZGlyZWN0b3J5LlxuIgorIiAgLS1pbnN0ZGlyPTxkaXJlY3Rvcnk+ICAgICAgQ2hhbmdlIGluc3RhbGxhdGlvbiBkaXIgd2l0aG91dCBjaGFuZ2luZyBhZG1pbiAiCisiZGlyLlxuIgorIiAgLS1wYXRoLWV4Y2x1ZGU9PHBhdHRlcm4+ICAgRG8gbm90IGluc3RhbGwgcGF0aHMgd2hpY2ggbWF0Y2ggYSBzaGVsbCAiCisicGF0dGVybi5cbiIKKyIgIC0tcGF0aC1pbmNsdWRlPTxwYXR0ZXJuPiAgIFJlLWluY2x1ZGUgYSBwYXR0ZXJuIGFmdGVyIGEgcHJldmlvdXMgIgorImV4Y2x1c2lvbi5cbiIKKyIgIC1PfC0tc2VsZWN0ZWQtb25seSAgICAgICAgIFNraXAgcGFja2FnZXMgbm90IHNlbGVjdGVkIGZvciBpbnN0YWxsLyIKKyJ1cGdyYWRlLlxuIgorIiAgLUV8LS1za2lwLXNhbWUtdmVyc2lvbiAgICAgU2tpcCBwYWNrYWdlcyB3aG9zZSBzYW1lIHZlcnNpb24gaXMgaW5zdGFsbGVkLlxuIgorIiAgLUd8LS1yZWZ1c2UtZG93bmdyYWRlICAgICAgU2tpcCBwYWNrYWdlcyB3aXRoIGVhcmxpZXIgdmVyc2lvbiB0aGFuICIKKyJpbnN0YWxsZWQuXG4iCisiICAtQnwtLWF1dG8tZGVjb25maWd1cmUgICAgICBJbnN0YWxsIGV2ZW4gaWYgaXQgd291bGQgYnJlYWsgc29tZSBvdGhlciAiCisicGFja2FnZS5cbiIKKyIgIC0tW25vLV10cmlnZ2VycyAgICAgICAgICAgIFNraXAgb3IgZm9yY2UgY29uc2VxdWVudGlhbCB0cmlnZ2VyICIKKyJwcm9jZXNzaW5nLlxuIgorIiAgLS1uby1kZWJzaWcgICAgICAgICAgICAgICAgRG8gbm90IHRyeSB0byB2ZXJpZnkgcGFja2FnZSBzaWduYXR1cmVzLlxuIgorIiAgLS1uby1hY3R8LS1kcnktcnVufC0tc2ltdWxhdGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEp1c3Qgc2F5IHdoYXQgd2Ugd291bGQgZG8gLSBkb24ndCBkbyBpdC5cbiIKKyIgIC1EfC0tZGVidWc9PG9jdGFsPiAgICAgICAgIEVuYWJsZSBkZWJ1Z2dpbmcgKHNlZSAtRGhlbHAgb3IgLS1kZWJ1Zz1oZWxwKS5cbiIKKyIgIC0tc3RhdHVzLWZkIDxuPiAgICAgICAgICAgIFNlbmQgc3RhdHVzIGNoYW5nZSB1cGRhdGVzIHRvIGZpbGUgZGVzY3JpcHRvciAiCisiPG4+LlxuIgorIiAgLS1sb2c9PGZpbGVuYW1lPiAgICAgICAgICAgTG9nIHN0YXR1cyBjaGFuZ2VzIGFuZCBhY3Rpb25zIHRvIDxmaWxlbmFtZT4uXG4iCisiICAtLWlnbm9yZS1kZXBlbmRzPTxwYWNrYWdlPiwuLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIElnbm9yZSBkZXBlbmRlbmNpZXMgaW52b2x2aW5nIDxwYWNrYWdlPi5cbiIKKyIgIC0tZm9yY2UtLi4uICAgICAgICAgICAgICAgIE92ZXJyaWRlIHByb2JsZW1zIChzZWUgLS1mb3JjZS1oZWxwKS5cbiIKKyIgIC0tbm8tZm9yY2UtLi4ufC0tcmVmdXNlLS4uLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcCB3aGVuIHByb2JsZW1zIGVuY291bnRlcmVkLlxuIgorIiAgLS1hYm9ydC1hZnRlciA8bj4gICAgICAgICAgQWJvcnQgYWZ0ZXIgZW5jb3VudGVyaW5nIDxuPiBlcnJvcnMuXG4iCisiXG4iCittc2dzdHIgIiIKKyLpgInpobnvvJpcbiIKKyIgIC0tYWRtaW5kaXI9POebruW9lT4gICAgICAgICAg5L2/55SoIDznm67lvZU+IOiAjOmdniAlc+OAglxuIgorIiAgLS1yb290PTznm67lvZU+ICAgICAgICAgICAgICDlronoo4XliLDlj6bkuIDkuKrmoLnmlofku7bns7vnu5/jgIJcbiIKKyIgIC0taW5zdGRpcj0855uu5b2VPiAgICAgICAgICAg5pS55Y+Y5a6J6KOF55qE5qC555uu5b2V55qE5ZCM5pe25L+d5oyB566h55CG55uu5b2V5LiN5Y+Y44CCXG4iCisiICAtT3wtLXNlbGVjdGVkLW9ubHkgICAgICAgICDlv73nlaXmsqHmnInooqvpgInkuK3lronoo4XmiJbljYfnuqfnmoTova/ku7bljIXjgIJcbiIKKyIgIC1FfC0tc2tpcC1zYW1lLXZlcnNpb24gICAgIOW/veeVpeeJiOacrOS4juW3suWuieijhei9r+S7tueJiOacrOebuOWQjOeahOi9r+S7tuWMheOAglxuIgorIiAgLUd8LS1yZWZ1c2UtZG93bmdyYWRlICAgICAg5b+955Wl54mI5pys5pep5LqO5bey5a6J6KOF6L2v5Lu254mI5pys55qE55qE6L2v5Lu25YyF44CCXG4iCisiICAtQnwtLWF1dG8tZGVjb25maWd1cmUgICAgICDlsLHnrpfkvJrlvbHlk43lhbbku5bova/ku7bljIXvvIzkuZ/opoHlronoo4XjgIJcbiIKKyIgIC0tW25vLV10cmlnZ2VycyAgICAgICAgICAgIOi3s+i/h+aIluW8uuWItumaj+S5i+WPkeeUn+eahOinpuWPkeWZqOWkhOeQhuOAglxuIgorIiAgLS1uby1kZWJzaWcgICAgICAgICAgICAgICAg5LiN5Y676K+V5Zu+6aqM6K+B6L2v5Lu25YyF55qE562+5ZCN44CCXG4iCisiICAtLW5vLWFjdHwtLWRyeS1ydW58LS1zaW11bGF0ZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg5LuF5oql5ZGK6KaB5omn6KGM55qE5pON5L2cIC0g5L2G5piv5LiN5omn6KGM44CCXG4iCisiICAtRHwtLWRlYnVnPTzlhavov5vliLbmlbDlrZc+ICAgIOW8gOWQr+iwg+ivleWKn+iDvSjlj4Lop4EgLURoZWxwIOaIluiAhSAtLWRlYnVnPWhlbHAp44CCXG4iCisiICAtLXN0YXR1cy1mZCA8bj4gICAgICAgICAgICDlj5HpgIHnirbmgIHmlLnlj5jnmoTmm7TmlrDkv6Hlj7fliLDmlofku7bmj4/ov7DnrKY8bj7jgIJcbiIKKyIgIC0tbG9nPTzmlofku7blkI0+ICAgICAgICAgICAgIOaKiueKtuaAgeeahOabtOWKqOWSjOaTjeS9nOS/oeaBr+iusOW9leWIsCA85paH5Lu25ZCNPuOAglxuIgorIiAgLS1pZ25vcmUtZGVwZW5kcz086L2v5Lu25YyF5ZCNPiwuLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIOW/veeVpeWFs+S6jiA86L2v5Lu25YyF5ZCNPiDnmoTmiYDmnInkvp3otZblhbPns7vjgIJcbiIKKyIgIC0tZm9yY2UtLi4uICAgICAgICAgICAgICAgIOW/veinhumBh+WIsOeahOmXrumimCjlj4Lop4EgLS1mb3JjZS1oZWxwKeOAglxuIgorIiAgLS1uby1mb3JjZS0uLi58LS1yZWZ1c2UtLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICDlvZPpgYfliLDpl67popjml7bkuK3mraLov5DooYzjgIJcbiIKKyIgIC0tYWJvcnQtYWZ0ZXIgPG4+ICAgICAgICAgIOmBh+WIsCA8bj4g5Liq6ZSZ6K+v5ZCO57uI5q2i44CCXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTU0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21wYXJpc29uIG9wZXJhdG9ycyBmb3IgLS1jb21wYXJlLXZlcnNpb25zIGFyZTpcbiIKKyIgIGx0IGxlIGVxIG5lIGdlIGd0ICAgICAgICh0cmVhdCBlbXB0eSB2ZXJzaW9uIGFzIGVhcmxpZXIgdGhhbiBhbnkgIgorInZlcnNpb24pO1xuIgorIiAgbHQtbmwgbGUtbmwgZ2UtbmwgZ3QtbmwgKHRyZWF0IGVtcHR5IHZlcnNpb24gYXMgbGF0ZXIgdGhhbiBhbnkgdmVyc2lvbik7XG4iCisiICA8IDw8IDw9ID0gPj0gPj4gPiAgICAgICAob25seSBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIGNvbnRyb2wgZmlsZSAiCisic3ludGF4KS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIuWPr+S+my0tY29tcGFyZS12ZXJzaW9uIOS9v+eUqOeahOavlOi+g+i/kOeul+espuacie+8mlxuIgorIiBsdCBsZSBlcSBuZSBnZSBndCAgICAgICAgKOWmguaenOeJiOacrOWPt+S4uuepuu+8jOmCo+S5iOWwseiupOS4uuWug+WFiOS6juS7u+aEj+eJiOacrOWPtynvvJtcbiIKKyIgbHQtbmwgbGUtbmwgZ2UtbmwgZ3QtbmwgICjlpoLmnpzniYjmnKzlj7fkuLrnqbrvvIzpgqPkuYjlsLHorqTkuLrlroPlkI7kuo7ku7vmhI/niYjmnKzlj7cp77ybXG4iCisiIDwgPDwgPD0gPSA+PSA+PiA+ICAgICAgICAo5LuF5LuF5piv5Li65LqG5LiO5Li75o6n5paH5Lu255qE6K+t5rOV5YW85a65KeOAglxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjE2MQorIywgYy1mb3JtYXQKK21zZ2lkICJVc2UgYGRzZWxlY3QnIG9yIGBhcHRpdHVkZScgZm9yIHVzZXItZnJpZW5kbHkgcGFja2FnZSBtYW5hZ2VtZW50LlxuIgorbXNnc3RyICIgZHNlbGVjdCDlkowgYXB0aXR1ZGUg5o+Q5L6b5LqG5pu05Li65piT55So55qE55qE6L2v5Lu25YyF566h55CG5bel5YW344CCXG4iCisKKyM6IHNyYy9tYWluLmM6MTcwCittc2dpZCAiIgorIlR5cGUgZHBrZyAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgaW5zdGFsbGluZyBhbmQgZGVpbnN0YWxsaW5nIHBhY2thZ2VzIFsqXTtcbiIKKyJVc2UgYGRzZWxlY3QnIG9yIGBhcHRpdHVkZScgZm9yIHVzZXItZnJpZW5kbHkgcGFja2FnZSBtYW5hZ2VtZW50O1xuIgorIlR5cGUgZHBrZyAtRGhlbHAgZm9yIGEgbGlzdCBvZiBkcGtnIGRlYnVnIGZsYWcgdmFsdWVzO1xuIgorIlR5cGUgZHBrZyAtLWZvcmNlLWhlbHAgZm9yIGEgbGlzdCBvZiBmb3JjaW5nIG9wdGlvbnM7XG4iCisiVHlwZSBkcGtnLWRlYiAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgbWFuaXB1bGF0aW5nICouZGViIGZpbGVzO1xuIgorIlxuIgorIk9wdGlvbnMgbWFya2VkIFsqXSBwcm9kdWNlIGEgbG90IG9mIG91dHB1dCAtIHBpcGUgaXQgdGhyb3VnaCBgbGVzcycgb3IgIgorImBtb3JlJyAhIgorbXNnc3RyICIiCisi6L6T5YWlIGRwa2cgLS1oZWxwIOWPr+iOt+W+l+WuieijheWSjOWNuOi9vei9r+S7tuWMheeahOacieWFs+W4ruWKqSBbKl3vvJtcbiIKKyLkvb/nlKggZHNlbGVjdCDmiJbmmK8gYXB0aXR1ZGUg5bCx6IO95Zyo5Y+L5aW955qE55WM6Z2i5LiL566h55CG6L2v5Lu25YyF77ybXG4iCisi6L6T5YWlIGRwa2cgLURoZWxwIOWPr+eci+WIsCBkcGtnIOmZpOmUmeagh+W/l+eahOWAvOeahOWIl+ihqO+8m1xuIgorIui+k+WFpSBkcGtnIC0tZm9yY2UtaGVscCDlj6/ojrflvpfmiYDmnInlvLrliLbmk43kvZzpgInpobnnmoTliJfooajvvJtcbiIKKyLovpPlhaUgZHBrZy1kZWIgLS1oZWxwIOWPr+iOt+W+l+acieWFs+aTjeS9nCAqLmRlYiDmlofku7bnmoTluK7liqnvvJtcbiIKKyJcbiIKKyLluKbmnIkgWypdIOeahOmAiemhueWwhuS8mui+k+WHuui+g+Wkp+evh+W5heeahOaWh+WtlyAtIOWPr+S9v+eUqOeuoemBk+WwhuWFtui+k+WHuui/nuaOpeWIsCBsZXNzIOaIliAiCisibW9yZSDvvIEiCisKKyM6IHNyYy9tYWluLmM6MjE5Cittc2dpZCAiU2V0IGFsbCBmb3JjZSBvcHRpb25zIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjIxCittc2dpZCAiUmVwbGFjZSBhIHBhY2thZ2Ugd2l0aCBhIGxvd2VyIHZlcnNpb24iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjMKK21zZ2lkICJDb25maWd1cmUgYW55IHBhY2thZ2Ugd2hpY2ggbWF5IGhlbHAgdGhpcyBvbmUiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjUKK21zZ2lkICJQcm9jZXNzIGluY2lkZW50YWwgcGFja2FnZXMgZXZlbiB3aGVuIG9uIGhvbGQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjcKK21zZ2lkICJUcnkgdG8gKGRlKWluc3RhbGwgdGhpbmdzIGV2ZW4gd2hlbiBub3Qgcm9vdCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIyOQorbXNnaWQgIlBBVEggaXMgbWlzc2luZyBpbXBvcnRhbnQgcHJvZ3JhbXMsIHByb2JsZW1zIGxpa2VseSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzMQorbXNnaWQgIkluc3RhbGwgYSBwYWNrYWdlIGV2ZW4gaWYgaXQgZmFpbHMgYXV0aGVudGljaXR5IGNoZWNrIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjMzCittc2dpZCAiUHJvY2VzcyBldmVuIHBhY2thZ2VzIHdpdGggd3JvbmcgdmVyc2lvbnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzUKK21zZ2lkICJPdmVyd3JpdGUgYSBmaWxlIGZyb20gb25lIHBhY2thZ2Ugd2l0aCBhbm90aGVyIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjM3Cittc2dpZCAiT3ZlcndyaXRlIGEgZGl2ZXJ0ZWQgZmlsZSB3aXRoIGFuIHVuZGl2ZXJ0ZWQgdmVyc2lvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzOQorbXNnaWQgIk92ZXJ3cml0ZSBvbmUgcGFja2FnZSdzIGRpcmVjdG9yeSB3aXRoIGFub3RoZXIncyBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjQxCittc2dpZCAiRG8gbm90IHBlcmZvcm0gc2FmZSBJL08gb3BlcmF0aW9ucyB3aGVuIHVucGFja2luZyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI0MworbXNnaWQgIkFsd2F5cyB1c2UgdGhlIG5ldyBjb25maWcgZmlsZXMsIGRvbid0IHByb21wdCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI0NQorbXNnaWQgIkFsd2F5cyB1c2UgdGhlIG9sZCBjb25maWcgZmlsZXMsIGRvbid0IHByb21wdCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI0OAorbXNnaWQgIiIKKyJVc2UgdGhlIGRlZmF1bHQgb3B0aW9uIGZvciBuZXcgY29uZmlnIGZpbGVzIGlmIG9uZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICBpcyBhdmFpbGFibGUsIGRvbid0IHByb21wdC4gSWYgbm8gZGVmYXVsdCBjYW4gYmUgIgorImZvdW5kLFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICB5b3Ugd2lsbCBiZSBwcm9tcHRlZCB1bmxlc3Mgb25lIG9mIHRoZSBjb25mb2xkIG9yXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmZuZXcgb3B0aW9ucyBpcyBhbHNvIGdpdmVuIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjUzCittc2dpZCAiQWx3YXlzIGluc3RhbGwgbWlzc2luZyBjb25maWcgZmlsZXMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNTUKK21zZ2lkICJPZmZlciB0byByZXBsYWNlIGNvbmZpZyBmaWxlcyB3aXRoIG5vIG5ldyB2ZXJzaW9ucyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI1NworbXNnaWQgIlByb2Nlc3MgZXZlbiBwYWNrYWdlcyB3aXRoIHdyb25nIG9yIG5vIGFyY2hpdGVjdHVyZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI1OQorbXNnaWQgIkluc3RhbGwgZXZlbiBpZiBpdCB3b3VsZCBicmVhayBhbm90aGVyIHBhY2thZ2UiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNjEKK21zZ2lkICJBbGxvdyBpbnN0YWxsYXRpb24gb2YgY29uZmxpY3RpbmcgcGFja2FnZXMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNjMKKyMsIGZ1enp5CisjfCBtc2dpZCAiZGVwZW5kZW5jeSBwcm9ibGVtcyAtIG5vdCByZW1vdmluZyIKK21zZ2lkICJUdXJuIGFsbCBkZXBlbmRlbmN5IHByb2JsZW1zIGludG8gd2FybmluZ3MiCittc2dzdHIgIuS+nei1lumXrumimCAtIOS4jeS8muaJp+ihjOWNuOi9vSIKKworIzogc3JjL21haW4uYzoyNjUKKyMsIGZ1enp5CisjfCBtc2dpZCAiZGVwZW5kZW5jeSBwcm9ibGVtcyAtIG5vdCByZW1vdmluZyIKK21zZ2lkICJUdXJuIGRlcGVuZGVuY3kgdmVyc2lvbiBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzIgorbXNnc3RyICLkvp3otZbpl67popggLSDkuI3kvJrmiafooYzljbjovb0iCisKKyM6IHNyYy9tYWluLmM6MjY3Cittc2dpZCAiUmVtb3ZlIHBhY2thZ2VzIHdoaWNoIHJlcXVpcmUgaW5zdGFsbGF0aW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjY5Cittc2dpZCAiUmVtb3ZlIGFuIGVzc2VudGlhbCBwYWNrYWdlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjgxCittc2dpZCAiR2VuZXJhbGx5IGhlbHBmdWwgcHJvZ3Jlc3MgaW5mb3JtYXRpb24iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODIKKyMsIGZ1enp5CisjfCBtc2dpZCAidW5hYmxlIHRvIHNldGVudiBmb3IgbWFpbnRhaW5lciBzY3JpcHQiCittc2dpZCAiSW52b2NhdGlvbiBhbmQgc3RhdHVzIG9mIG1haW50YWluZXIgc2NyaXB0cyIKK21zZ3N0ciAi5peg5rOV5Li657u05oqk6ISa5pys6K6+572u546v5aKD5Y+Y6YePIgorCisjOiBzcmMvbWFpbi5jOjI4MworbXNnaWQgIk91dHB1dCBmb3IgZWFjaCBmaWxlIHByb2Nlc3NlZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4NAorbXNnaWQgIkxvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg1CisjLCBmdXp6eQorI3wgbXNnaWQgInJlYWQgZXJyb3IgaW4gY29uZmlndXJhdGlvbiBmaWxlIGAlLjI1NXMnIgorbXNnaWQgIk91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGUiCittc2dzdHIgIuivu+WPlumFjee9ruaWh+S7tiAlLjI1NXMg5pe25Ye66ZSZIgorCisjOiBzcmMvbWFpbi5jOjI4NgorbXNnaWQgIkxvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4NworbXNnaWQgIkRlcGVuZGVuY2llcyBhbmQgY29uZmxpY3RzIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg4Cittc2dpZCAiTG90cyBvZiBkZXBlbmRlbmNpZXMvY29uZmxpY3RzIG91dHB1dCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4OQorbXNnaWQgIlRyaWdnZXIgYWN0aXZhdGlvbiBhbmQgcHJvY2Vzc2luZyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MAorbXNnaWQgIkxvdHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2VycyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MQorbXNnaWQgIlNpbGx5IGFtb3VudHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2VycyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MgorbXNnaWQgIkxvdHMgb2YgZHJpdmVsIGFib3V0IGVnIHRoZSBkcGtnL2luZm8gZGlyZWN0b3J5IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjkzCittc2dpZCAiSW5zYW5lIGFtb3VudHMgb2YgZHJpdmVsIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MzA0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlcyBkZWJ1Z2dpbmcgb3B0aW9uLCAtLWRlYnVnPTxvY3RhbD4gb3IgLUQ8b2N0YWw+OlxuIgorIlxuIgorIiBOdW1iZXIgIFJlZi4gaW4gc291cmNlICAgRGVzY3JpcHRpb25cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjMxMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiRGVidWdnaW5nIG9wdGlvbnMgY2FuIGJlIG1peGVkIHVzaW5nIGJpdHdpc2Utb3IuXG4iCisiTm90ZSB0aGF0IHRoZSBtZWFuaW5ncyBhbmQgdmFsdWVzIGFyZSBzdWJqZWN0IHRvIGNoYW5nZS5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjMxOQorbXNnaWQgIi0tZGVidWcgcmVxdWlyZXMgYW4gb2N0YWwgYXJndW1lbnQiCittc2dzdHIgIi0tZGVidWcg6ZyA6KaB5LiA5Liq5YWr6L+b5Yi255qE5Y+C5pWwIgorCisjOiBzcmMvbWFpbi5jOjM0OAorIywgYy1mb3JtYXQKK21zZ2lkICJudWxsIHBhY2thZ2UgbmFtZSBpbiAtLWlnbm9yZS1kZXBlbmRzIGNvbW1hLXNlcGFyYXRlZCBsaXN0IGAlLjI1MHMnIgorbXNnc3RyICLlnKggLS1pZ25vcmUtZGVwZW5kcyDnmoTnlKjpgJflj7fnm7jpmpTnmoTlj4LmlbDliJfooaggJXMg5Lit77yM5Y+R546w5pyJ55qE6L2v5Lu25YyF5ZCN5Li656m6IgorCisjOiBzcmMvbWFpbi5jOjM1NAorIywgYy1mb3JtYXQKK21zZ2lkICItLWlnbm9yZS1kZXBlbmRzIHJlcXVpcmVzIGEgbGVnYWwgcGFja2FnZSBuYW1lLiBgJS4yNTBzJyBpcyBub3Q7ICVzIgorbXNnc3RyICItLWlnbm9yZS1kZXBlbmRzIOmcgOimgeS4gOS4quacieaViOeahOi9r+S7tuWMheWQjeOAguiAjCAlLjI1MHMg5Y205LiN5piv77ybJXMiCisKKyM6IHNyYy9tYWluLmM6MzcxIHNyYy9tYWluLmM6MzgxIHNyYy9tYWluLmM6NjQ5IGRwa2ctc3BsaXQvbWFpbi5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGludGVnZXIgZm9yIC0tJXM6IGAlLjI1MHMnIgorbXNnc3RyICItLSVzIOacieS4gOS4quaXoOaViOeahOaVsOWtl+WPguaVsO+8miAlLjI1MHMiCisKKyM6IHNyYy9tYWluLmM6NDM4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGV4ZWN1dGluZyBob29rICclcycsIGV4aXQgY29kZSAlZCIKK21zZ3N0ciAi5omn6KGM6ZKp5a2QICVzIOWHuumUme+8jOmAgOWHuueKtuaAgeS5puS4uiAlZCIKKworIzogc3JjL21haW4uYzo0NjUKKyMsIGZ1enp5CisjfCBtc2dpZCAic3RhdHVzIgorbXNnaWQgInN0YXR1cyBsb2dnZXIiCittc2dzdHIgIueKtuaAgSIKKworIzogc3JjL21haW4uYzo0ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzIGZvcmNpbmcgb3B0aW9ucyAtIGNvbnRyb2wgYmVoYXZpb3VyIHdoZW4gcHJvYmxlbXMgZm91bmQ6XG4iCisiICB3YXJuIGJ1dCBjb250aW51ZTogIC0tZm9yY2UtPHRoaW5nPiw8dGhpbmc+LC4uLlxuIgorIiAgc3RvcCB3aXRoIGVycm9yOiAgICAtLXJlZnVzZS08dGhpbmc+LDx0aGluZz4sLi4uIHwgLS1uby1mb3JjZS08dGhpbmc+LC4uLlxuIgorIiBGb3JjaW5nIHRoaW5nczpcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjQ5MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiV0FSTklORyAtIHVzZSBvZiBvcHRpb25zIG1hcmtlZCBbIV0gY2FuIHNlcmlvdXNseSBkYW1hZ2UgeW91ciBpbnN0YWxsYXRpb24uXG4iCisiRm9yY2luZyBvcHRpb25zIG1hcmtlZCBbKl0gYXJlIGVuYWJsZWQgYnkgZGVmYXVsdC5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjUwNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGZvcmNlL3JlZnVzZSBvcHRpb24gYCUuKnMnIgorbXNnc3RyICLml6Dms5Xor4bliKvnmoQgZm9yY2UvcmVmdXNlIOmAiemhuSAlLipzICIKKworIzogc3JjL21haW4uYzo1MTMKKyMsIGMtZm9ybWF0Cittc2dpZCAib2Jzb2xldGUgZm9yY2UvcmVmdXNlIG9wdGlvbiAnJXMnXG4iCittc2dzdHIgIuW6n+W8g+eahOW8uuWItuaIluaLkue7nemAiemhuSAlcyBcbiIKKworIzogc3JjL21haW4uYzo2NDMKK21zZ2lkICItLWNvbW1hbmQtZmQgdGFrZXMgb25lIGFyZ3VtZW50LCBub3QgemVybyIKK21zZ3N0ciAiLS1jb21tYW5kLWZkIOmcgOimgeS4gOS4quWPguaVsO+8jOiAjOmdnumbtuS4qiIKKworIzogc3JjL21haW4uYzo2NDUKK21zZ2lkICItLWNvbW1hbmQtZmQgb25seSB0YWtlcyBvbmUgYXJndW1lbnQiCittc2dzdHIgIi0tY29tbWFuZC1mZCDlj6rpnIDluKbkuIDkuKrlj4LmlbAiCisKKyM6IHNyYy9tYWluLmM6NjUxCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkbid0IG9wZW4gYCVpJyBmb3Igc3RyZWFtIgorbXNnc3RyICLml6Dms5XmiZPlvIAgJWnvvIzlubbmiorlroPkvZzkuLrlrZfnrKbmtYHmk43kvZwiCisKKyM6IHNyYy9tYWluLmM6Njc2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW9mIGJlZm9yZSBlbmQgb2YgbGluZSAlZCIKK21zZ3N0ciAi5Zyo56ysICVkIOihjOi/mOacque7k+adn+aXtu+8jOWPkeeOsOacqumihOaWmeeahCBlb2YiCisKKyM6IHNyYy9tYWluLmM6NzE5IHNyYy9tYWluLmM6NzQxIHNyYy9xdWVyeWNtZC5jOjY5MiBzcmMvc3RhdGNtZC5jOjM3OQorIzogZHBrZy1kZWIvbWFpbi5jOjIwMSBkcGtnLXNwbGl0L21haW4uYzoxNjMKK21zZ2lkICJuZWVkIGFuIGFjdGlvbiBvcHRpb24iCittc2dzdHIgIumcgOimgeS4gOS4quaMh+ekuuaTjeS9nOeahOmAiemhuSIKKworIzogc3JjL3BhY2thZ2VzLmM6MTEzCittc2dpZCAiIgorInlvdSBtdXN0IHNwZWNpZnkgcGFja2FnZXMgYnkgdGhlaXIgb3duIG5hbWVzLCBub3QgYnkgcXVvdGluZyB0aGUgbmFtZXMgb2YgIgorInRoZSBmaWxlcyB0aGV5IGNvbWUgaW4iCittc2dzdHIgIiIKKyLmgqjlv4XpobvpgJrov4fova/ku7bljIXoh6rouqvnmoTlkI3lrZfmnaXmjIflrprova/ku7bljIXvvIzogIzkuI3mmK/nm7TmjqXlvJXnlKjova/ku7bljIXmlofku7bnmoTmlofku7blkI0iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjEzMworIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIC0tcGVuZGluZyBkb2VzIG5vdCB0YWtlIGFueSBub24tb3B0aW9uIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS0lcyAtLXBlbmRpbmcg5LiN6ZyA6KaB5Lu75L2V5LiN5piv6YCJ6aG555qE5Y+C5pWwIgorCisjOiBzcmMvcGFja2FnZXMuYzoxMzggc3JjL3F1ZXJ5Y21kLmM6Mzc1IHNyYy9xdWVyeWNtZC5jOjU2NQorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGF0IGxlYXN0IG9uZSBwYWNrYWdlIG5hbWUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMg6ZyA6KaB6Iez5bCR5LiA5Liq6L2v5Lu25YyF5ZCN5L2c5Li65Y+C5pWwIgorCisjOiBzcmMvcGFja2FnZXMuYzoxNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSAlcyBsaXN0ZWQgbW9yZSB0aGFuIG9uY2UsIG9ubHkgcHJvY2Vzc2luZyBvbmNlLlxuIgorbXNnc3RyICLlpJrmrKHliJflh7rkuobova/ku7bljIUgJXPvvIzlroPlsIblj6rooqvlpITnkIbkuIDmrKHjgIJcbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MTgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJNb3JlIHRoYW4gb25lIGNvcHkgb2YgcGFja2FnZSAlcyBoYXMgYmVlbiB1bnBhY2tlZFxuIgorIiBpbiB0aGlzIHJ1biAhICBPbmx5IGNvbmZpZ3VyaW5nIGl0IG9uY2UuXG4iCittc2dzdHIgIiIKKyLlnKjov5nmraTov5DooYzkuK3vvIzova/ku7bljIUgJXMg5pyJ5aSa5Liq5Ymv5pys6KKr6Kej5Y6L57yp5LqG77yBXG4iCisi546w5Y+q6YWN572u5a6D5LiA5qyh44CCXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjIzMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisicGFja2FnZSAlLjI1MHMgaXMgbm90IHJlYWR5IGZvciB0cmlnZ2VyIHByb2Nlc3NpbmdcbiIKKyIgKGN1cnJlbnQgc3RhdHVzIGAlLjI1MHMnIHdpdGggbm8gcGVuZGluZyB0cmlnZ2VycykiCittc2dzdHIgIiIKKyLova/ku7bljIUgJS4yNTBzIOWwmuacquWHhuWkh+WlveeUseinpuWPkeWZqOWkhOeQhlxuIgorIiAo55uu5YmN54q25oCB5Li6ICUuMjUwc++8jOayoeacieacquWGs+eahOinpuWPkSkiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjMzNAorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgd2hpY2ggcHJvdmlkZXMgJXMgaXMgdG8gYmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiICDmj5DkvpvkuoYgJTIkcyDnmoTova/ku7bljIUgJTEkcyDljbPlsIbooqvliKDpmaTjgIJcbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MzM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIgIOWNs+WwhuWIoOmZpCAlc+OAglxuIgorCisjOiBzcmMvcGFja2FnZXMuYzozNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBWZXJzaW9uIG9mICVzIG9uIHN5c3RlbSBpcyAlcy5cbiIKK21zZ3N0ciAi57O757uf5LitICVzIOeahOeJiOacrOS4uiAlc+OAglxuIgorCisjOiBzcmMvcGFja2FnZXMuYzozNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIHdoaWNoIHByb3ZpZGVzICVzIGF3YWl0cyB0cmlnZ2VyIHByb2Nlc3NpbmcuXG4iCittc2dzdHIgIiAg5o+Q5L6b5LqGICUyJHMg55qE6L2v5Lu25YyFICUxJHMg5q2j5Zyo562J5b6F6Kem5Y+R5Zmo5aSE55CG44CCXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjM4MAorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgYXdhaXRzIHRyaWdnZXIgcHJvY2Vzc2luZy5cbiIKK21zZ3N0ciAiICDova/ku7bljIUgJXMg5q2j5Zyo562J5b6F6Kem5Y+R5Zmo5aSE55CG44CCXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQxMAorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiBhbHNvIGNvbmZpZ3VyaW5nIGAlcycgKHJlcXVpcmVkIGJ5IGAlcycpXG4iCittc2dzdHIgImRwa2fvvJrlkIzml7bkuZ/lr7kgJXMg6L+b6KGM6YWN572uKCAlcyDpnIDopoHlpoLmraQpXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQxOAorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgd2hpY2ggcHJvdmlkZXMgJXMgaXMgbm90IGNvbmZpZ3VyZWQgeWV0LlxuIgorbXNnc3RyICIgIOi9r+S7tuWMhSAlcyDmj5DkvpvkuoYgJXPvvIzkvYblroPlsJrmnKrooqvphY3nva7jgIJcbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDIxCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyBpcyBub3QgY29uZmlndXJlZCB5ZXQuXG4iCittc2dzdHIgIiAg6L2v5Lu25YyFICVzIOWwmuacqumFjee9ruOAglxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIHdoaWNoIHByb3ZpZGVzICVzIGlzIG5vdCBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAg5o+Q5L6bICUyJHMg55qE6L2v5Lu25YyFICUxJHMg5pyq5a6J6KOF44CCXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQzNQorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgaXMgbm90IGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiICDmnKrlronoo4Xova/ku7bljIUgJXPjgIJcbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDcyCisjLCBjLWZvcm1hdAorbXNnaWQgIiAlcyAoJXMpIGJyZWFrcyAlcyBhbmQgaXMgJXMuXG4iCittc2dzdHIgIiAlcyAoJXMp56C05Z2PICVzIOW5tuS4lCAlc+OAglxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlcyAoJXMpIHByb3ZpZGVzICVzLlxuIgorbXNnc3RyICIlcyAoJXMp5o+Q5L6bICVz44CCXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQ4MgorIywgYy1mb3JtYXQKK21zZ2lkICIgIFZlcnNpb24gb2YgJXMgdG8gYmUgY29uZmlndXJlZCBpcyAlcy5cbiIKK21zZ3N0ciAiICDlsIbooqvphY3nva7nmoQgJXMg55qE54mI5pys5Li6ICVz44CCXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjU5NgorbXNnaWQgIiBkZXBlbmRzIG9uICIKK21zZ3N0ciAiIOS+nei1luS6jiAiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjYwMgorbXNnaWQgIjsgaG93ZXZlcjpcbiIKK21zZ3N0ciAi77yb54S26ICM77yaXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiLi4uLyVzIgorbXNnc3RyICIuLi4vJXMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgZW5zdXJpbmcgYCUuMjUwcycgZG9lc24ndCBleGlzdCIKK21zZ3N0ciAi5Zyo56Gu5L+d5paH5Lu2ICUuMjUwcyDkuI3lrZjlnKjml7blh7rplJkiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTkKK21zZ2lkICJzcGxpdCBwYWNrYWdlIHJlYXNzZW1ibHkiCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxMDgKK21zZ2lkICJyZWFzc2VtYmxlZCBwYWNrYWdlIGZpbGUiCittc2dzdHIgIumHjeaWsOe7hOijheaIkOeahOi9r+S7tuWMheaWh+S7tiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiQXV0aGVudGljYXRpbmcgJXMgLi4uXG4iCittc2dzdHIgIuato+WcqOmqjOivgSAlcyAuLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxMzkKK21zZ2lkICJwYWNrYWdlIHNpZ25hdHVyZSB2ZXJpZmljYXRpb24iCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxNDYKKyMsIGMtZm9ybWF0Cittc2dpZCAiVmVyaWZpY2F0aW9uIG9uIHBhY2thZ2UgJXMgZmFpbGVkISIKK21zZ3N0ciAi6L2v5Lu25YyFICVzIOayoeaciemAmui/h+mqjOivge+8gSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlZlcmlmaWNhdGlvbiBvbiBwYWNrYWdlICVzIGZhaWxlZCxcbiIKKyJidXQgaW5zdGFsbGluZyBhbnl3YXkgYXMgeW91IHJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiIgorIuiZveeEtui9r+S7tuWMhSAlcyDmsqHog73pgJrov4fpqozor4HvvIxcbiIKKyLkvYbov5jmmK/lpoLmgqjmiYDmhL/nu6fnu63lronoo4XlroPjgIJcbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFzc2VkXG4iCittc2dzdHIgIumqjOivgemAmui/h1xuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjE2NSBkcGtnLWRlYi9pbmZvLmM6ODEKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHRlbXBvcmFyeSBkaXJlY3RvcnkiCittc2dzdHIgIuaXoOazleWIm+W7uuS4tOaXtuebruW9lSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyMDUKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlcyBoYXMgdG9vIG1hbnkgQ29uZmxpY3RzL1JlcGxhY2VzIHBhaXJzIgorbXNnc3RyICLova/ku7bljIUgJXMg5pyJ5aSq5aSa55qE5Yay56qBL+abv+aNoue7hOWQiCIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyNDMKKyMsIGMtZm9ybWF0Cittc2dpZCAib2xkIHZlcnNpb24gb2YgcGFja2FnZSBoYXMgb3Zlcmx5LWxvbmcgaW5mbyBmaWxlIG5hbWUgc3RhcnRpbmcgYCUuMjUwcyciCittc2dzdHIgIuWOn+WFiOeJiOacrOeahOi9r+S7tuWMheS4reacieS4gOS4quS/oeaBr+aWh+S7tueahOaWh+S7tuWQjeWkqumVv++8jOaWh+S7tuWQjeaYr+S7pSAlLjI1MHMg5byA5aS055qEIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjI4MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIG9ic29sZXRlIGluZm8gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi5peg5rOV5Yig6Zmk5bqf5byD5LiN55So55qE5L+h5oGv5paH5Lu2ICUuMjUwcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoyODYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgKHN1cHBvc2VkKSBuZXcgaW5mbyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLml6Dms5Xlronoo4Xmlofku7YgJS4yNTBz77yM6K+l5paH5Lu26KKr6K6k5a6a5piv5paw55qE5L+h5oGv5paH5Lu2IgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjI5NgorbXNnaWQgInVuYWJsZSB0byBvcGVuIHRlbXAgY29udHJvbCBkaXJlY3RvcnkiCittc2dzdHIgIuaXoOazleaJk+W8gOS4tOaXtuS4u+aOp+ebruW9lSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMDcKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBjb250YWlucyBvdmVybHktbG9uZyBjb250cm9sIGluZm8gZmlsZSBuYW1lIChzdGFydGluZyBgJS41MHMnKSIKK21zZ3N0ciAi6L2v5Lu25YyF5Lit5pyJ5LiA5Liq5Li75o6n5L+h5oGv5paH5Lu255qE5paH5Lu25ZCN5aSq6ZW/KOivpeaWh+S7tuWQjeaYr+S7pSAlLjI1MHMg5byA5aS055qEKSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBjb250cm9sIGluZm8gY29udGFpbmVkIGRpcmVjdG9yeSBgJS4yNTBzJyIKK21zZ3N0ciAi6L2v5Lu25YyF55qE5Li75o6n5L+h5oGv5ZCr5pyJ5LiA5Liq55uu5b2VICUuMjUwcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMTYKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBjb250cm9sIGluZm8gcm1kaXIgb2YgYCUuMjUwcycgZGlkbid0IHNheSBub3QgYSBkaXIiCittc2dzdHIgIui9r+S7tuWMheaOp+WItuS/oeaBr++8jHJtZGlyICAlLjI1MHMg5Lmf5rKh5pyJ6K+06L+Z5LiN5piv5LiA5Liq55uu5b2VIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMyNgorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlICVzIGNvbnRhaW5lZCBsaXN0IGFzIGluZm8gZmlsZSIKK21zZ3N0ciAi6L2v5Lu25YyFICVzIOaKiuS4gOS4quWIl+ihqOS9nOS4uuS/oeaBr+aWh+S7tuS9v+eUqCIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IGluZm8gZmlsZSBgJS4yNTBzJyBhcyBgJS4yNTBzJyIKK21zZ3N0ciAi5peg5rOV5oqK5paw55qE5L+h5oGv5paH5Lu2ICUuMjUwcyDlronoo4XliLAgJS4yNTBzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjM0OSBzcmMvcmVtb3ZlLmM6MTk4CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkZWxldGUgY29udHJvbCBpbmZvIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuaXoOazleWIoOmZpOaOp+WItuS/oeaBr+aWh+S7tiAlLjI1MHMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDExCittc2dpZCAiY2Fubm90IGFjY2VzcyBhcmNoaXZlIgorbXNnc3RyICLml6Dms5Xorr/pl67lvZLmoaPmlofku7YiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDMzCisjLCBmdXp6eQorI3wgbXNnaWQgImNvbnRyb2wgaW5mb3JtYXRpb24gbGVuZ3RoIgorbXNnaWQgInBhY2thZ2UgY29udHJvbCBpbmZvcm1hdGlvbiBleHRyYWN0aW9uIgorbXNnc3RyICLmjqfliLbkv6Hmga/nmoTplb/luqYiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDYwCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlY29yZGVkIGluZm8gYWJvdXQgJXMgZnJvbSAlcy5cbiIKK21zZ3N0ciAi5LuOICUyJHMg6I635b6X55qE5YWz5LqOICUxJHMg55qE5L+h5oGv44CCXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDY4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgYXJjaGl0ZWN0dXJlICglcykgZG9lcyBub3QgbWF0Y2ggc3lzdGVtICglcykiCittc2dzdHIgIui9r+S7tuWMheeahOS9k+ezu+aetuaehCglcynkuI7mnKzmnLrns7vnu5/nmoTmnrbmnoQoJXMp5LiN56ymIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjUyMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogcmVnYXJkaW5nICVzIGNvbnRhaW5pbmcgJXMsIHByZS1kZXBlbmRlbmN5IHByb2JsZW06XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtn77ya5a+55LqO5ZCrICUyJHMg55qE5paH5Lu2ICUxJHMg5p2l6K+077yM5pyJ6aKE5L6d6LWWKHByZS1kZXBlbmRlbmN5KeaWuemdoueahOmXrumimO+8mlxuIgorIiUzJHMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTI2CisjLCBjLWZvcm1hdAorbXNnaWQgInByZS1kZXBlbmRlbmN5IHByb2JsZW0gLSBub3QgaW5zdGFsbGluZyAlLjI1MHMiCittc2dzdHIgIumihOS+nei1lihwcmUtZGVwZW5kZW5jeSnpl67popggLSDlsIbkuI3lronoo4UlLjI1MHMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTI3Cittc2dpZCAiaWdub3JpbmcgcHJlLWRlcGVuZGVuY3kgcHJvYmxlbSEiCittc2dzdHIgIuW/veeVpemihOS+nei1lihwcmUtZGVwZW5kZW5jeSnpl67popjvvIEiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NTQzCisjLCBjLWZvcm1hdAorbXNnaWQgIlByZXBhcmluZyB0byByZXBsYWNlICVzICVzICh1c2luZyAlcykgLi4uXG4iCittc2dzdHIgIuato+mihOWkh+abv+aNoiAlcyAlcyAo5L2/55SoICVzKSAuLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiVW5wYWNraW5nICVzIChmcm9tICVzKSAuLi5cbiIKK21zZ3N0ciAi5q2j5Zyo6Kej5Y6L57ypICVzICjku44gJXMpIC4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjU4MAorIywgYy1mb3JtYXQKK21zZ2lkICJuYW1lIG9mIGNvbmZmaWxlIChzdGFydGluZyBgJS4yNTBzJykgaXMgdG9vIGxvbmcgKD4lZCBjaGFyYWN0ZXJzKSIKK21zZ3N0ciAiY29uZmZpbGUg55qE5paH5Lu25ZCNKOWFtuW8gOWktOaYryAlLjI1MHMgKeWkqumVvyg+ICVkIOS4quWtl+espikiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjMzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDcxCisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWQgZXJyb3IgaW4gJS4yNTBzIgorbXNnc3RyICLor7vlj5YgJS4yNTBzIOWHuumUmSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyAlLjI1MHMiCittc2dzdHIgIuWFs+mXrSAlLjI1MHMg5Ye66ZSZIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjYzNworIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciB0cnlpbmcgdG8gb3BlbiAlLjI1MHMiCittc2dzdHIgIuivleWbvuaJk+W8gCAlLjI1MHMg5Ye66ZSZIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjY3OAorIywgYy1mb3JtYXQKK21zZ2lkICJEZS1jb25maWd1cmluZyAlcywgdG8gYWxsb3cgcmVtb3ZhbCBvZiAlcyAuLi5cbiIKK21zZ3N0ciAi5q2j5Zyo5Y+N6YWN572uICVzIOS7peWFgeiuuOWIoOmZpCAlcyAuLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGUtY29uZmlndXJpbmcgJXMgLi4uXG4iCittc2dzdHIgIuato+WcqOWPjemFjee9riAlcyAuLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo3NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiVW5wYWNraW5nIHJlcGxhY2VtZW50ICUuMjUwcyAuLi5cbiIKK21zZ3N0ciAi5q2j5Zyo6Kej5Y6L57yp5bCG55So5LqO5pu05pu/55qE5YyF5paH5Lu2ICUuMjUwcyAuLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NDAKKyMsIGZ1enp5CisjfCBtc2dpZCAiZHBrZy1kZWIgZmllbGQgZXh0cmFjdGlvbiIKK21zZ2lkICJwYWNrYWdlIGZpbGVzeXN0ZW0gYXJjaGl2ZSBleHRyYWN0aW9uIgorbXNnc3RyICJkcGtnLWRlYiDln5/ph4rmlL4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6ODU0Cittc2dpZCAiZXJyb3IgcmVhZGluZyBkcGtnLWRlYiB0YXIgb3V0cHV0IgorbXNnc3RyICLml6Dms5Xor7vlj5YgZHBrZy1kZWIg6L6T5Ye655qEIHRhciDmlofku7YiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6ODU2Cittc2dpZCAiY29ycnVwdGVkIGZpbGVzeXN0ZW0gdGFyZmlsZSAtIGNvcnJ1cHRlZCBwYWNrYWdlIGFyY2hpdmUiCittc2dzdHIgIuaWh+S7tuezu+e7n+eahCB0YXIg5paH5Lu25bey5o2f5Z2PIC0g6L2v5Lu25YyF5paH5Lu25bey5q+B5o2fIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjg1OQorbXNnaWQgImRwa2ctZGViOiB6YXAgcG9zc2libGUgdHJhaWxpbmcgemVyb3MiCittc2dzdHIgImRwa2ctZGVi77ya5oiq5Y675LqG5pyA5ZCO55qE6Zu25pWw5o2uKHplcm9zKSIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5MTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY291bGQgbm90IHN0YXQgb2xkIGZpbGUgJyUuMjUwcycgc28gbm90IGRlbGV0aW5nIGl0OiAlcyIKK21zZ3N0ciAi5peg5rOV6I635Y+W5pen5paH5Lu2ICUuMjUwcyDnmoTkv6Hmga/vvIzlm6DmraTkuI3liKDpmaTlroPvvJolcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSBvbGQgZGlyZWN0b3J5ICclLjI1MHMnOiAlcyIKK21zZ3N0ciAi5peg5rOV5Yig6Zmk5Y6f5pyJ55qE55uu5b2VICUuMjUwcyDvvJolcyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAib2xkIGNvbmZmaWxlICclLjI1MHMnIHdhcyBhbiBlbXB0eSBkaXJlY3RvcnkgKGFuZCBoYXMgbm93IGJlZW4gZGVsZXRlZCkiCittc2dzdHIgIuWOn+aciSBjb25mZmlsZSAgJS4yNTBzIOaYr+S4gOS4quepuuebruW9lSjnjrDlnKjlt7LooqvliKDpmaQpIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjk3NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBvdGhlciBuZXcgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi5peg5rOV6I635Y+W5YW25a6D5paw5paH5Lu2ICUuMjUwcyDnmoTkv6Hmga8iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTg2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJvbGQgZmlsZSAnJS4yNTBzJyBpcyB0aGUgc2FtZSBhcyBzZXZlcmFsIG5ldyBmaWxlcyEgKGJvdGggJyUuMjUwcycgYW5kICIKKyInJS4yNTBzJykiCittc2dzdHIgIuaXp+aWh+S7tiAlLjI1MHMg5LiO5aSa5Liq5paw5paH5Lu255u45ZCM77yBKCAlLjI1MHMg5ZKMICUuMjUwcyApIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjEwMjUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNlY3VyZWx5IHJlbW92ZSBvbGQgZmlsZSAnJS4yNTBzJzogJXMiCittc2dzdHIgIuaXoOazleWuieWFqOWcsOWIoOmZpOaXp+eahOaWh+S7tiAlLjI1MHMg77yaJXMiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTIwNgorIywgYy1mb3JtYXQKK21zZ2lkICIoTm90aW5nIGRpc2FwcGVhcmFuY2Ugb2YgJXMsIHdoaWNoIGhhcyBiZWVuIGNvbXBsZXRlbHkgcmVwbGFjZWQuKVxuIgorbXNnc3RyICIo5rOo5oSP5YiwICVzIOW3sue7j+S4jeWkjeWtmOWcqO+8jOWug+W3sueEtuiiq+WujOWFqOWPluS7o+S6huOAgilcbiIKKworIy4gVFJBTlNMQVRPUlM6IFRoaXMgaXMgdGhlIGhlYWRlciB0aGF0IGFwcGVhcnMgb24gJ2Rwa2ctcXVlcnkgLWwnLiBUaGUKKyMuICogc3RyaW5nIHNob3VsZCByZW1haW4gdW5kZXIgODAgY2hhcmFjdGVycy4gVGhlIHVwcGVyY2FzZSBsZXR0ZXJzIGluCisjLiAqIHRoZSBzdGF0ZSB2YWx1ZXMgZGVub3RlIHRoZSBhYmJyZXZpYXRlZCBsZXR0ZXIgdGhhdCB3aWxsIGFwcGVhciBvbgorIy4gKiB0aGUgZmlyc3QgdGhyZWUgY29sdW1ucywgd2hpY2ggc2hvdWxkIGlkZWFsbHkgbWF0Y2ggdGhlIEVuZ2xpc2ggb25lCisjLiAqIChlLmcuIFJlbW92ZSDihpIgc3VwUmltZWl4KSwgc2VlIGRwa2ctcXVlcnkoMSkgZm9yIGZ1cnRoZXIgZGV0YWlscy4gVGhlCisjLiAqIHRyYW5zbGF0ZWQgbWVzc2FnZSBjYW4gdXNlIGFkZGl0aW9uYWwgbGluZXMgaWYgbmVlZGVkLgorIzogc3JjL3F1ZXJ5Y21kLmM6MTQ5Cittc2dpZCAiIgorIkRlc2lyZWQ9VW5rbm93bi9JbnN0YWxsL1JlbW92ZS9QdXJnZS9Ib2xkXG4iCisifCBTdGF0dXM9Tm90L0luc3QvQ29uZi1maWxlcy9VbnBhY2tlZC9oYWxGLWNvbmYvSGFsZi1pbnN0L3RyaWctYVdhaXQvVHJpZy0iCisicGVuZFxuIgorInwvIEVycj89KG5vbmUpL1JlaW5zdC1yZXF1aXJlZCAoU3RhdHVzLEVycjogdXBwZXJjYXNlPWJhZClcbiIKK21zZ3N0ciAiIgorIuacn+acm+eKtuaAgT3mnKrnn6UodSkv5a6J6KOFKGkpL+WIoOmZpChyKS/muIXpmaQocCkv5L+d5oyBKGgpXG4iCisifCDnirbmgIE95pyq5a6J6KOFKG4pL+W3suWuieijhShpKS/ku4XlrZjphY3nva4oYykv5LuF6Kej5Y6L57ypKFUpL+mFjee9ruWksei0pShGKS/kuI3lrozlhajlronoo4UoSCkvIgorIuinpuWPkeWZqOetieW+hShXKS/op6blj5HlmajmnKrlhrMoVClcbiIKKyJ8LyDplJnor68/PSjml6ApL+mhu+mHjeijhShSKSAo54q25oCB77yM6ZSZ6K+v77ya5aSn5YaZPeaVhemanClcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MTUzCittc2dpZCAiTmFtZSIKK21zZ3N0ciAi5ZCN56ewIgorCisjOiBzcmMvcXVlcnljbWQuYzoxNTMKK21zZ2lkICJWZXJzaW9uIgorbXNnc3RyICLniYjmnKwiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjE1NAorbXNnaWQgIkRlc2NyaXB0aW9uIgorbXNnc3RyICLmj4/ov7AiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI0NiBzcmMvcXVlcnljbWQuYzo1MTEgc3JjL3NlbGVjdC5jOjc1CisjLCBjLWZvcm1hdAorbXNnaWQgIk5vIHBhY2thZ2VzIGZvdW5kIG1hdGNoaW5nICVzLlxuIgorbXNnc3RyICLmsqHmnInmib7liLDkuI4gJXMg55u45Yy56YWN55qE6L2v5Lu25YyF44CCXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI3MworIywgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnNpb24gYnkgJXMgZnJvbTogJXNcbiIKK21zZ3N0ciAiJXMg5a+86Ie05pys5Zyw5L+u5pS56Ieq77yaJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6Mjc1CisjLCBjLWZvcm1hdAorbXNnaWQgImRpdmVyc2lvbiBieSAlcyB0bzogJXNcbiIKK21zZ3N0ciAiJXMg5a+86Ie05pys5Zyw5L+u5pS56Iez77yaJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6Mjc4CisjLCBjLWZvcm1hdAorbXNnaWQgImxvY2FsIGRpdmVyc2lvbiBmcm9tOiAlc1xuIgorbXNnc3RyICLmnKzlnLDkv67mlLnoh6rvvJolc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9jYWwgZGl2ZXJzaW9uIHRvOiAlc1xuIgorbXNnc3RyICLmnKzlnLDkv67mlLnoh7PvvJolc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzozMDkKK21zZ2lkICItLXNlYXJjaCBuZWVkcyBhdCBsZWFzdCBvbmUgZmlsZSBuYW1lIHBhdHRlcm4gYXJndW1lbnQiCittc2dzdHIgIi0tc2VhcmNoIOmcgOimgeiHs+WwkeS4gOS4quaWh+S7tuWQjeihqOi+vuW8j+S9nOS4uuWPguaVsCIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MzUwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJObyBwYWNrYWdlcyBmb3VuZCBtYXRjaGluZyAlcy5cbiIKK21zZ2lkICIlczogbm8gcGF0aCBmb3VuZCBtYXRjaGluZyBwYXR0ZXJuICVzLlxuIgorbXNnc3RyICLmsqHmnInmib7liLDkuI4gJXMg55u45Yy56YWN55qE6L2v5Lu25YyF44CCXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjM5MworIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlIGAlcycgaXMgbm90IGluc3RhbGxlZCBhbmQgbm8gaW5mbyBpcyBhdmFpbGFibGUuXG4iCittc2dzdHIgIuezu+e7n+ayoeacieWuieijhei9r+S7tuWMhSAlc++8jOWboOiAjOayoeacieebuOWFs+eahOS/oeaBr+OAglxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiUGFja2FnZSBgJXMnIGlzIG5vdCBhdmFpbGFibGUuXG4iCittc2dzdHIgIui9r+S7tuWMhSAlcyDnjrDlnKjkuI3lj6/nlKjjgIJcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDEwIHNyYy9xdWVyeWNtZC5jOjU4NQorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlIGAlcycgaXMgbm90IGluc3RhbGxlZC5cbiIKK21zZ3N0ciAi5pyq5pu+5a6J6KOF6L2v5Lu25YyFICVz44CCXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQxOAorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlIGAlcycgZG9lcyBub3QgY29udGFpbiBhbnkgZmlsZXMgKCEpXG4iCittc2dzdHIgIui9r+S7tuWMhSAlcyDmnKrlkKvmnInku7vkvZXmlofku7YoISlcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDI1CisjLCBjLWZvcm1hdAorbXNnaWQgImxvY2FsbHkgZGl2ZXJ0ZWQgdG86ICVzXG4iCittc2dzdHIgIuacrOWcsOS/ruaUueWIsO+8miVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQyOAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGRpdmVydHMgb3RoZXJzIHRvOiAlc1xuIgorbXNnc3RyICLova/ku7bljIXmnKzlnLDkv67mlLnlhbbku5bliLDvvJolc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGl2ZXJ0ZWQgYnkgJXMgdG86ICVzXG4iCittc2dzdHIgIuiiqyAlcyDmnKzlnLDkv67mlLnliLDkuobvvJolc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0NTIKK21zZ2lkICIiCisiVXNlIGRwa2cgLS1pbmZvICg9IGRwa2ctZGViIC0taW5mbykgdG8gZXhhbWluZSBhcmNoaXZlIGZpbGVzLFxuIgorImFuZCBkcGtnIC0tY29udGVudHMgKD0gZHBrZy1kZWIgLS1jb250ZW50cykgdG8gbGlzdCB0aGVpciBjb250ZW50cy5cbiIKK21zZ3N0ciAiIgorIuS9v+eUqCBkcGtnIC0taW5mbyAoPSBkcGtnLWRlYiAtLWluZm8pIOadpeajgOa1i+aJk+WMheWlveeahOaWh+S7tu+8jFxuIgorIui/mOWPr+S7pemAmui/hyBkcGtnIC0tY29udGVudHMgKD0gZHBrZy1kZWIgLS1jb250ZW50cykg5p2l5YiX5Ye65a6D5Lus55qE5YaF5a6544CCXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjU3MAorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIHRha2VzIGF0IG1vc3QgdHdvIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS0lcyDoh7PlpJrlj6/mnInkuKTkuKrlj4LmlbAiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjU3OAorIywgYy1mb3JtYXQKK21zZ2lkICJjb250cm9sIGZpbGUgY29udGFpbnMgJWMiCittc2dzdHIgIuS4u+aOp+aWh+S7tuWMheWQqyAlYyIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjAwCisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiAlcyBwYWNrYWdlIG1hbmFnZW1lbnQgcHJvZ3JhbSBxdWVyeSB0b29sIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkRlYmlhbiAlcyDova/ku7bljIXnrqHnkIbnqIvluo/mn6Xor6Llt6XlhbcgJXMg54mI44CCXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjYxOQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIkNvbW1hbmRzOlxuIgorI3wgIiAgLXN8LS1zdGF0dXMgPHBhY2thZ2U+IC4uLiAgICAgICAgRGlzcGxheSBwYWNrYWdlIHN0YXR1cyBkZXRhaWxzLlxuIgorI3wgIiAgLXB8LS1wcmludC1hdmFpbCA8cGFja2FnZT4gLi4uICAgRGlzcGxheSBhdmFpbGFibGUgdmVyc2lvbiBkZXRhaWxzLlxuIgorI3wgIiAgLUx8LS1saXN0ZmlsZXMgPHBhY2thZ2U+IC4uLiAgICAgTGlzdCBmaWxlcyBgb3duZWQnIGJ5IHBhY2thZ2UocykuXG4iCisjfCAiICAtbHwtLWxpc3QgWzxwYXR0ZXJuPiAuLi5dICAgICAgICBMaXN0IHBhY2thZ2VzIGNvbmNpc2VseS5cbiIKKyN8ICIgIC1XfC0tc2hvdyA8cGF0dGVybj4gLi4uICAgICAgICAgIFNob3cgaW5mb3JtYXRpb24gb24gcGFja2FnZShzKS5cbiIKKyN8ICIgIC1TfC0tc2VhcmNoIDxwYXR0ZXJuPiAuLi4gICAgICAgIEZpbmQgcGFja2FnZShzKSBvd25pbmcgZmlsZShzKS5cbiIKKyN8ICIgIC1jfC0tY29udHJvbC1wYXRoIDxwYWNrYWdlPiBbPGZpbGU+XVxuIgorI3wgIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHJpbnQgcGF0aCBmb3IgcGFja2FnZSBjb250cm9sIGZpbGUuXG4iCisjfCAiXG4iCittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLXN8LS1zdGF0dXMgPHBhY2thZ2U+IC4uLiAgICAgICAgRGlzcGxheSBwYWNrYWdlIHN0YXR1cyBkZXRhaWxzLlxuIgorIiAgLXB8LS1wcmludC1hdmFpbCA8cGFja2FnZT4gLi4uICAgRGlzcGxheSBhdmFpbGFibGUgdmVyc2lvbiBkZXRhaWxzLlxuIgorIiAgLUx8LS1saXN0ZmlsZXMgPHBhY2thZ2U+IC4uLiAgICAgTGlzdCBmaWxlcyBgb3duZWQnIGJ5IHBhY2thZ2UocykuXG4iCisiICAtbHwtLWxpc3QgWzxwYXR0ZXJuPiAuLi5dICAgICAgICBMaXN0IHBhY2thZ2VzIGNvbmNpc2VseS5cbiIKKyIgIC1XfC0tc2hvdyBbPHBhdHRlcm4+IC4uLl0gICAgICAgIFNob3cgaW5mb3JtYXRpb24gb24gcGFja2FnZShzKS5cbiIKKyIgIC1TfC0tc2VhcmNoIDxwYXR0ZXJuPiAuLi4gICAgICAgIEZpbmQgcGFja2FnZShzKSBvd25pbmcgZmlsZShzKS5cbiIKKyIgIC1jfC0tY29udHJvbC1wYXRoIDxwYWNrYWdlPiBbPGZpbGU+XVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHJpbnQgcGF0aCBmb3IgcGFja2FnZSBjb250cm9sIGZpbGUuXG4iCisiXG4iCittc2dzdHIgIiIKKyLlkb3ku6TvvJpcbiIKKyIgIC1zfC0tc3RhdHVzIDzova/ku7bljIXlkI0+IC4uLiAgICAgICDmmL7npLrova/ku7bljIXor6blsL3nmoTnirbmgIHkv6Hmga/jgIJcbiIKKyIgIC1wfC0tcHJpbnQtYXZhaWwgPOi9r+S7tuWMheWQjT4gLi4uICDmmL7npLrlvZPliY3lj6/kvpvlronoo4XnmoTniYjmnKznmoTor6bnu4bkv6Hmga/jgIJcbiIKKyIgIC1MfC0tbGlzdGZpbGVzIDzova/ku7bljIXlkI0+IC4uLiAgICDliJflh7rmiYDmnIkg5bGe5LqOIOivpei9r+S7tuWMhSjmiJblpJrkuKrova/ku7bljIUp55qE5paHIgorIuS7tuOAglxuIgorIiAgLWx8LS1saXN0IFs86KGo6L6+5byPPiAuLi5dICAgICAgICAg566A6KaB5Zyw5YiX5Ye66L2v5Lu25YyF44CCXG4iCisiICAtV3wtLXNob3cgPOihqOi+vuW8jz4gLi4uICAgICAgICAgICDmmL7npLrova/ku7bljIXnmoTnm7jlhbPkv6Hmga/jgIJcbiIKKyIgIC1TfC0tc2VhcmNoIDzooajovr7lvI8+IC4uLiAgICAgICAgIOaQnOWvu+aLpeacieivpeaWh+S7tijmiJblpJrkuKrmlofku7Yp55qE6L2v5Lu25YyF44CCXG4iCisiXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjYzNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorIiAgLWZ8LS1zaG93Zm9ybWF0PTxmb3JtYXQ+ICAgICAgICAgVXNlIGFsdGVybmF0aXZlIGZvcm1hdCBmb3IgLS1zaG93LlxuIgorIlxuIgorbXNnc3RyICIiCisi6YCJ6aG577yaXG4iCisiICAtLWFkbWluZGlyPTznm67lvZU+ICAgICAgICAgICAgICAgIOS9v+eUqCA855uu5b2VPiDogIzpnZ4gJXPjgIJcbiIKKyIgIC1mfC0tc2hvd2Zvcm1hdD085qC85byP5LiyPiAgICAgICAgIOS7pCAtLXNob3cg5L2/55So5YW25a6D55qE5qC85byP6L6T5Ye644CCXG4iCisiXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjY0MiBkcGtnLWRlYi9tYWluLmM6MTEyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJGb3JtYXQgc3ludGF4OlxuIgorIiAgQSBmb3JtYXQgaXMgYSBzdHJpbmcgdGhhdCB3aWxsIGJlIG91dHB1dCBmb3IgZWFjaCBwYWNrYWdlLiBUaGUgZm9ybWF0XG4iCisiICBjYW4gaW5jbHVkZSB0aGUgc3RhbmRhcmQgZXNjYXBlIHNlcXVlbmNlcyBcXG4gKG5ld2xpbmUpLCBcXHIgKGNhcnJpYWdlXG4iCisiICByZXR1cm4pIG9yIFxcXFwgKHBsYWluIGJhY2tzbGFzaCkuIFBhY2thZ2UgaW5mb3JtYXRpb24gY2FuIGJlIGluY2x1ZGVkXG4iCisiICBieSBpbnNlcnRpbmcgdmFyaWFibGUgcmVmZXJlbmNlcyB0byBwYWNrYWdlIGZpZWxkcyB1c2luZyB0aGUgJHt2YXJbOyIKKyJ3aWR0aF19XG4iCisiICBzeW50YXguIEZpZWxkcyB3aWxsIGJlIHJpZ2h0LWFsaWduZWQgdW5sZXNzIHRoZSB3aWR0aCBpcyBuZWdhdGl2ZSBpbiAiCisid2hpY2hcbiIKKyIgIGNhc2UgbGVmdCBhbGlnbm1lbnQgd2lsbCBiZSB1c2VkLlxuIgorbXNnc3RyICIiCisi5qC85byP5Liy55qE6K+t5rOV77yaXG4iCisiICDmoLzlvI/kuLLmmK/nlKjkuo7mmL7npLrmr4/kuIDkuKrova/ku7bljIXnmoTlrZfnrKbkuLLjgILmoLzlvI/kuLLlj6/ku6XljIXlkKvmoIflh4bnmoRcbiIKKyIgIOiEseWtl+espihlc2NhcGUgc2VxdWVuY2VzKe+8jOWmgiBcXG4gKOaNouihjCnjgIFcXHIgKOWbnui9pinjgIHmiJbmmK8gXFxcXCAo5Y+N5pac5p2gKeOAglxuIgorIiAg6L+Y5Y+v5Lul6YCa6L+H5Yqg5YWl6L2v5Lu25YyF5bGe5oCn55qE5Y+Y6YeP5byV55So5p2l5Y+N5pig6L2v5Lu25YyF55qE55u45YWz5L+h5oGv77yMXG4iCisiICDopoHlnKjmn5DkupvlrZfmrrXlvJXnlKjlsZ7mgKflj5jph4/nmoTor53vvIzlj6/ku6XnlKjov5nmoLfnmoTor63ms5XvvJoke3Zhcls7d2lkdGhdfeOAglxuIgorIiAg5a2X5q615LiA6Iis5piv6Z2g5Y+z5a+56b2Q55qE77yM6Zmk6Z2e5a6D55qE5a695bqm5piv6LSf5pWw44CC6Iul5YW25a695bqm5piv6LSf5pWw77yMXG4iCisiICDpgqPkuYjlrZfmrrXlsIbkvJrpnaDlt6blr7npvZDjgIJcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjU2Cittc2dpZCAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBxdWVyeWluZyBwYWNrYWdlcy4iCittc2dzdHIgIuS9v+eUqCAtLWhlbHAg5p+l55yL5YWz5LqO5p+l6K+i6L2v5Lu25YyF55qE5biu5Yqp44CCIgorCisjOiBzcmMvcmVtb3ZlLmM6ODgKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgcmVxdWVzdCB0byByZW1vdmUgJS4yNTBzIHdoaWNoIGlzbid0IGluc3RhbGxlZC4iCittc2dzdHIgIuW/veeVpeWIoOmZpCAlLjI1MHMg55qE6KaB5rGC77yM57O757uf5rKh5pyJ5a6J6KOF6K+l6L2v5Lu25YyF44CCIgorCisjOiBzcmMvcmVtb3ZlLmM6OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImlnbm9yaW5nIHJlcXVlc3QgdG8gcmVtb3ZlICUuMjUwcywgb25seSB0aGUgY29uZmlnXG4iCisiIGZpbGVzIG9mIHdoaWNoIGFyZSBvbiB0aGUgc3lzdGVtLiBVc2UgLS1wdXJnZSB0byByZW1vdmUgdGhlbSB0b28uIgorbXNnc3RyICIiCisi5b+955Wl5Y246L29ICUuMjUwcyDnmoTopoHmsYLvvIzns7vnu5/kuK3ku4XlrZjlnKjlhbbphY3nva7mlofku7bjgIJcbiIKKyLlj6/kvb/nlKggLS1wdXJnZSDmnaXmiorov5nkupvphY3nva7mlofku7bkuIDlubbliKDpmaTjgIIiCisKKyM6IHNyYy9yZW1vdmUuYzoxMDMKK21zZ2lkICJUaGlzIGlzIGFuIGVzc2VudGlhbCBwYWNrYWdlIC0gaXQgc2hvdWxkIG5vdCBiZSByZW1vdmVkLiIKK21zZ3N0ciAi6L+Z5piv5LiA5Liq6YeN6KaB55qE6L2v5Lu25YyFIC0g5oKo5LiN5bqU5b2T5oqK5a6D5Y246L2944CCIgorCisjOiBzcmMvcmVtb3ZlLmM6MTI4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBkZXBlbmRlbmN5IHByb2JsZW1zIHByZXZlbnQgcmVtb3ZhbCBvZiAlczpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2fvvJrkvp3otZbpl67popjpmLvmraLljbjovb0gJXMg55qE5pON5L2c57un57ut77yaXG4iCisiJXMiCisKKyM6IHNyYy9yZW1vdmUuYzoxMzAKK21zZ2lkICJkZXBlbmRlbmN5IHByb2JsZW1zIC0gbm90IHJlbW92aW5nIgorbXNnc3RyICLkvp3otZbpl67popggLSDkuI3kvJrmiafooYzljbjovb0iCisKKyM6IHNyYy9yZW1vdmUuYzoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6ICVzOiBkZXBlbmRlbmN5IHByb2JsZW1zLCBidXQgcmVtb3ZpbmcgYW55d2F5IGFzIHlvdSByZXF1ZXN0ZWQ6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtn77yaJXPvvJrmnInkvp3otZbpl67popjvvIzkvYbmmK/lpoLmgqjmiYDmhL/ov5jmmK/nu6fnu63ljbjovb3vvJpcbiIKKyIlcyIKKworIzogc3JjL3JlbW92ZS5jOjE0MgorbXNnaWQgIiIKKyJQYWNrYWdlIGlzIGluIGEgdmVyeSBiYWQgaW5jb25zaXN0ZW50IHN0YXRlIC0geW91IHNob3VsZFxuIgorIiByZWluc3RhbGwgaXQgYmVmb3JlIGF0dGVtcHRpbmcgYSByZW1vdmFsLiIKK21zZ3N0ciAiIgorIuivpei9r+S7tuWMheeOsOWcqOeahOeKtuaAgeaegeS4uuS4jeWmpSAtIOW7uuiuruaCqFxuIgorIuWcqOWNuOi9veWug+S5i+WJjeWGjemHjeaWsOWuieijheS4gOasoeOAgiIKKworIzogc3JjL3JlbW92ZS5jOjE0OQorIywgYy1mb3JtYXQKK21zZ2lkICJXb3VsZCByZW1vdmUgb3IgcHVyZ2UgJXMgLi4uXG4iCittc2dzdHIgIuatpOaTjeS9nOS8muWNuOi9veaIlua4hemZpCAlcyAuLi5cbiIKKworIzogc3JjL3JlbW92ZS5jOjE1NworIywgYy1mb3JtYXQKK21zZ2lkICJSZW1vdmluZyAlcyAuLi5cbiIKK21zZ3N0ciAi5q2j5Zyo5Y246L29ICVzIC4uLlxuIgorCisjOiBzcmMvcmVtb3ZlLmM6Mjc1IHNyYy9yZW1vdmUuYzozNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIndoaWxlIHJlbW92aW5nICUuMjUwcywgdW5hYmxlIHRvIHJlbW92ZSBkaXJlY3RvcnkgJyUuMjUwcyc6ICVzIC0gZGlyZWN0b3J5ICIKKyJtYXkgYmUgYSBtb3VudCBwb2ludD8iCittc2dzdHIgIuW9k+WNuOi9vSAlLjI1MHMg5pe277yM5peg5rOV5Yig5o6J55uu5b2VICUuMjUwcyDvvJolcyAtIOWug+S8muS4jeS8muaYr+S4gOS4quaMgui9veeCueWRou+8nyIKKworIzogc3JjL3JlbW92ZS5jOjI4OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2VjdXJlbHkgcmVtb3ZlICclLjI1MHMnIgorbXNnc3RyICLml6Dms5XlronlhajlnLDljbjovb0gJS4yNTBzIgorCisjOiBzcmMvcmVtb3ZlLmM6MzYxCisjLCBjLWZvcm1hdAorbXNnaWQgIndoaWxlIHJlbW92aW5nICUuMjUwcywgZGlyZWN0b3J5ICclLjI1MHMnIG5vdCBlbXB0eSBzbyBub3QgcmVtb3ZlZC4iCittc2dzdHIgIuWNuOi9vSAlLjI1MHMg5pe277yM55uu5b2VICUuMjUwcyDpnZ7nqbrvvIzlm6DogIzkuI3kvJrliKDpmaTor6Xnm67lvZXjgIIiCisKKyM6IHNyYy9yZW1vdmUuYzozODMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImNhbm5vdCByZW1vdmUgYCUuMjUwcyciCittc2dpZCAiY2Fubm90IHJlbW92ZSAnJS4yNTBzJyIKK21zZ3N0ciAi5peg5rOV5Y246L29ICUuMjUwcyIKKworIzogc3JjL3JlbW92ZS5jOjQwOQorIywgYy1mb3JtYXQKK21zZ2lkICJQdXJnaW5nIGNvbmZpZ3VyYXRpb24gZmlsZXMgZm9yICVzIC4uLlxuIgorbXNnc3RyICLmraPlnKjmuIXpmaQgJXMg55qE6YWN572u5paH5Lu2IC4uLlxuIgorCisjOiBzcmMvcmVtb3ZlLmM6NDU5CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZW1vdmUgb2xkIGNvbmZpZyBmaWxlIGAlLjI1MHMnICg9IGAlLjI1MHMnKSIKK21zZ3N0ciAi5peg5rOV5Yig6Zmk5Y6f5pyJ55qE6YWN572u5paH5Lu2ICUuMjUwcyAgKD0gJS4yNTBzICkiCisKKyM6IHNyYy9yZW1vdmUuYzo0NzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlYWQgY29uZmlnIGZpbGUgZGlyIGAlLjI1MHMnIChmcm9tIGAlLjI1MHMnKSIKK21zZ3N0ciAi5peg5rOV6K+75Y+W6YWN572u5paH5Lu25omA5Zyo55uu5b2VICUuMjUwcyAo5LuOICUuMjUwcyApIgorCisjOiBzcmMvcmVtb3ZlLmM6NTEwCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZW1vdmUgb2xkIGJhY2t1cCBjb25maWcgZmlsZSBgJS4yNTBzJyAob2YgYCUuMjUwcycpIgorbXNnc3RyICLml6Dms5XliKDpmaTml6fmnInnmoTphY3nva7mlofku7blpIfku70gJS4yNTBzICjlnKggJS4yNTBzIOS4reaPkOWIsCkiCisKKyM6IHNyYy9yZW1vdmUuYzo1NjgKK21zZ2lkICJjYW5ub3QgcmVtb3ZlIG9sZCBmaWxlcyBsaXN0IgorbXNnc3RyICLml6Dms5XliKDpmaTljp/mnInnmoTmlofku7bliJfooagiCisKKyM6IHNyYy9yZW1vdmUuYzo1NzQKK21zZ2lkICJjYW4ndCByZW1vdmUgb2xkIHBvc3RybSBzY3JpcHQiCittc2dzdHIgIuaXoOazleWIoOmZpOWOn+acieeahCBwb3N0cm0g6ISa5pysIgorCisjOiBzcmMvc2VsZWN0LmM6MTE1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW9mIGluIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICLlnKjnrKwgJWQg6KGM55qE6L2v5Lu25YyF5ZCN5Lit5Y+R546w5LqGIGVvZu+8jOi/meWHuuS5juaIkeS7rOeahOaEj+aWmSIKKworIzogc3JjL3NlbGVjdC5jOjExNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBsaW5lIGluIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICLlnKjnrKwgJWQg6KGM55qE6L2v5Lu25YyF5ZCN5Lit5Y+R546w6K+l6KGM5Zyo5q2k57uT5p2f77yM6L+Z5Ye65LmO5oiR5Lus55qE5oSP5paZIgorCisjOiBzcmMvc2VsZWN0LmM6MTIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW9mIGFmdGVyIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICLlnKjnrKwgJWQg6KGM55qE6L2v5Lu25YyF5ZCN5ZCO5Y+R546wIGVvZu+8jOi/meWHuuS5juaIkeS7rOeahOaEj+aWmSIKKworIzogc3JjL3NlbGVjdC5jOjEyMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBsaW5lIGFmdGVyIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICLlnKjnrKwgJWQg6KGM55qE6L2v5Lu25YyF5ZCN5ZCO5Y+R546w6K+l6KGM5Zyo5q2k57uT5p2f77yM6L+Z5Ye65LmO5oiR5Lus55qE5oSP5paZIgorCisjOiBzcmMvc2VsZWN0LmM6MTM2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZGF0YSBhZnRlciBwYWNrYWdlIGFuZCBzZWxlY3Rpb24gYXQgbGluZSAlZCIKK21zZ3N0ciAi5Zyo56ysICVkIOihjOeahOi9r+S7tuWMheWSjOeUqOaIt+mAieaLqeWQjuacieWPkeeOsOS6huaVsOaNru+8jOi/meWHuuS5juaIkeS7rOeahOaEj+aWmSIKKworIzogc3JjL3NlbGVjdC5jOjEzOQorIywgYy1mb3JtYXQKK21zZ2lkICJpbGxlZ2FsIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkOiAlLjI1MHMiCittc2dzdHIgIuWcqOesrCAlZCDooYzlj5HnjrDpnZ7ms5XnmoTova/ku7bljIXlkI3vvJolLjI1MHMiCisKKyM6IHNyYy9zZWxlY3QuYzoxNDMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biB3YW50ZWQgc3RhdHVzIGF0IGxpbmUgJWQ6ICUuMjUwcyIKK21zZ3N0ciAi5Zyo56ysICVkIOihjOWPkeeOsOaXoOazleivhuWIq+eahOeKtuaAge+8miUuMjUwcyIKKworIzogc3JjL3NlbGVjdC5jOjE0OQorbXNnaWQgInJlYWQgZXJyb3Igb24gc3RhbmRhcmQgaW5wdXQiCittc2dzdHIgIuS7juagh+WHhui+k+WFpeivu+WPluaVsOaNruaXtuWHuumUmSIKKworIzogc3JjL3N0YXRjbWQuYzo1MgorIywgZnV6enkKKyN8IG1zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IHF1ZXJ5aW5nIHBhY2thZ2VzLiIKK21zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IG92ZXJyaWRpbmcgZmlsZSBzdGF0IGluZm9ybWF0aW9uLiIKK21zZ3N0ciAi5L2/55SoIC0taGVscCDmn6XnnIvlhbPkuo7mn6Xor6Lova/ku7bljIXnmoTluK7liqnjgIIiCisKKyM6IHNyYy9zdGF0Y21kLmM6NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvcHlyaWdodCAoQykgMjAwMCwgMjAwMSBXaWNoZXJ0IEFra2VybWFuLlxuIgorIkNvcHlyaWdodCAoQykgMjAwNi0yMDA5IEd1aWxsZW0gSm92ZXIuXG4iCittc2dzdHIgIiIKKyLniYjmnYPmiYDmnIkgKEMpIDIwMDAsIDIwMDEgV2ljaGVydCBBa2tlcm1hblxuIgorIueJiOadg+aJgOaciSAoQykgMjAwNi0yMDA5IEd1aWxsZW0gSm92ZXJcbiIKKworIzogc3JjL3N0YXRjbWQuYzo4MQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtLWFkZCA8b3duZXI+IDxncm91cD4gPG1vZGU+IDxmaWxlPlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGFkZCBhIG5ldyBlbnRyeSBpbnRvIHRoZSBkYXRhYmFzZS5cbiIKKyIgIC0tcmVtb3ZlIDxmaWxlPiAgICAgICAgICByZW1vdmUgZmlsZSBmcm9tIHRoZSBkYXRhYmFzZS5cbiIKKyIgIC0tbGlzdCBbPGdsb2ItcGF0dGVybj5dICBsaXN0IGN1cnJlbnQgb3ZlcnJpZGVzIGluIHRoZSBkYXRhYmFzZS5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIuWRveS7pO+8mlxuIgorIiAgLS1hZGQgPOaJgOacieiAhT4gPOeUqOaIt+e7hD4gPOadg+mZkOS9jT4gPOaWh+S7tuWQjT5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICDlnKjmlbDmja7lupPkuK3liqDlhaXkuIDkuKrmlrDnmoTorrDlvZXmnaHnm67jgIJcbiIKKyIgIC0tcmVtb3ZlIDzmlofku7blkI0+ICAgICAgICDlsIbmlofku7bku47mlbDmja7lupPkuK3liKDpmaTjgIJcbiIKKyIgIC0tbGlzdCBbPGdsb2Ig5qih5byPPl0gICAgIOWIl+WHuuW9k+WJjeaVsOaNruW6k+S4reeahCBvdmVycmlkZSDmnaHnm67jgIJcbiIKKyJcbiIKKworIzogc3JjL3N0YXRjbWQuYzo4OQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICBzZXQgdGhlIGRpcmVjdG9yeSB3aXRoIHRoZSBzdGF0b3ZlcnJpZGUgZmlsZS5cbiIKKyIgIC0tdXBkYXRlICAgICAgICAgICAgICAgICBpbW1lZGlhdGVseSB1cGRhdGUgZmlsZSBwZXJtaXNzaW9ucy5cbiIKKyIgIC0tZm9yY2UgICAgICAgICAgICAgICAgICBmb3JjZSBhbiBhY3Rpb24gZXZlbiBpZiBhIHNhbml0eSBjaGVjayBmYWlscy5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBxdWlldCBvcGVyYXRpb24sIG1pbmltYWwgb3V0cHV0LlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIumAiemhue+8mlxuIgorIiAgLS1hZG1pbmRpciA855uu5b2VPiAgICAgICAg6K6+572uIHN0YXRvdmVycmlkZSDmlofku7bnmoTnm67lvZXjgIJcbiIKKyIgIC0tdXBkYXRlICAgICAgICAgICAgICAgICDnq4vljbPmm7TmlrDmlofku7bnmoTmnYPpmZDjgIJcbiIKKyIgIC0tZm9yY2UgICAgICAgICAgICAgICAgICDlsLHnrpfmsqHmnInpgJrov4foh6rmo4DvvIzkuZ/lvLrliLbmiafooYzmk43kvZzjgIJcbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICDlronpnZnmqKHlvI/vvIzovpPlh7rlsL3lj6/og73lsJHnmoTkv6Hmga/jgILkuI3mmL7npLrovpPlh7rkv6Hmga/jgIJcbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICDmmL7npLrmnKzluK7liqnkv6Hmga/jgIJcbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICDmmL7npLrniYjmnKzkv6Hmga/jgIJcbiIKKworIzogc3JjL3N0YXRjbWQuYzoxMTYKK21zZ2lkICJzdHJpcHBpbmcgdHJhaWxpbmcgLyIKK21zZ3N0ciAi56e76Zmk5ZCO6Z2i55qEIC8iCisKKyM6IHNyYy9zdGF0Y21kLmM6MjA3Cittc2dpZCAiY2Fubm90IG9wZW4gbmV3IHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICLml6Dms5XmiZPlvIDmlrDnmoQgc3RhdG92ZXJyaWRlIOaWh+S7tu+8miVzIgorCisjOiBzcmMvc3RhdGNtZC5jOjIyMgorbXNnaWQgImVycm9yIHJlbW92aW5nIHN0YXRvdmVycmlkZS1vbGQiCittc2dzdHIgIuenu+mZpCBzdGF0b3ZlcnJpZGUtb2xkIOaXtuWHuumUme+8miVzIgorCisjOiBzcmMvc3RhdGNtZC5jOjIyNAorbXNnaWQgImVycm9yIGNyZWF0aW5nIG5ldyBzdGF0b3ZlcnJpZGUtb2xkIgorbXNnc3RyICLlu7rnq4vmlrDnmoQgc3RhdG92ZXJyaWRlLW9sZCDml7blh7rplJnvvJolcyIKKworIzogc3JjL3N0YXRjbWQuYzoyMjYKK21zZ2lkICJlcnJvciBpbnN0YWxsaW5nIG5ldyBzdGF0b3ZlcnJpZGUiCittc2dzdHIgIuWuieijheaWsOeahCBzdGF0b3ZlcnJpZGUg5pe25Ye66ZSZ77yaJXMiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjQ2Cittc2dpZCAiLS1hZGQgbmVlZHMgZm91ciBhcmd1bWVudHMiCittc2dzdHIgIi0tYWRkIOmcgOimgeWbm+S4quWPguaVsCIKKworIzogc3JjL3N0YXRjbWQuYzoyNTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkFuIG92ZXJyaWRlIGZvciAnJXMnIGFscmVhZHkgZXhpc3RzLCBidXQgLS1mb3JjZSBzcGVjaWZpZWQgc28gd2lsbCBiZSAiCisiaWdub3JlZC4iCittc2dzdHIgIi0tZm9yY2Ug5bey5oyH5a6a77yM5omA5Lul5YWI5YmN5a+5ICVzIOeahOimhuebluiuvue9ruS8muiiq+W/veeVpeOAgiIKKworIzogc3JjL3N0YXRjbWQuYzoyNjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiQW4gb3ZlcnJpZGUgZm9yICclcycgYWxyZWFkeSBleGlzdHMsIGFib3J0aW5nLiIKK21zZ3N0ciAiJXMgIOeahCBvdmVycmlkZSDlt7LlrZjlnKjvvIwiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjcyCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tdXBkYXRlIGdpdmVuIGJ1dCAlcyBkb2VzIG5vdCBleGlzdCIKK21zZ3N0ciAi6K2m5ZGK77yaLS11cGRhdGUg5bey5oyH5a6a5L2GICVzIOS4jeWtmOWcqCIKKworIzogc3JjL3N0YXRjbWQuYzoyOTYKK21zZ2lkICJObyBvdmVycmlkZSBwcmVzZW50LiIKK21zZ3N0ciAib3ZlcnJpZGUg5LiN5a2Y5Zyo44CCIgorCisjOiBzcmMvc3RhdGNtZC5jOjMwNAorbXNnaWQgIi0tdXBkYXRlIGlzIHVzZWxlc3MgZm9yIC0tcmVtb3ZlIgorbXNnc3RyICLorablkYrvvJrlr7nkuo4gLS1yZW1vdmXvvIwtLXVwZGF0ZSDmmK/ml6DmlYjnmoQiCisKKyM6IHNyYy9zdGF0ZGIuYzo1OQorbXNnaWQgInN5bnRheCBlcnJvcjogaW52YWxpZCB1aWQgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIuivreazlemUmeivr++8miBzdGF0b3ZlcnJpZGUg5paH5Lu25pyJ5peg5pWI55qEIHVpZCIKKworIzogc3JjL3N0YXRkYi5jOjY0CisjLCBjLWZvcm1hdAorbXNnaWQgInN5bnRheCBlcnJvcjogdW5rbm93biB1c2VyICclcycgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIuivreazlemUmeivr++8muWcqCBzdGF0b3ZlcnJpZGUg5paH5Lu25Lit5pyJ5pyq55+l55So5oi3ICVzICIKKworIzogc3JjL3N0YXRkYi5jOjgzCittc2dpZCAic3ludGF4IGVycm9yOiBpbnZhbGlkIGdpZCBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAi6K+t5rOV6ZSZ6K+v77yac3RhdG92ZXJyaWRlIOaWh+S7tuacieaXoOaViOeahCBnaWQiCisKKyM6IHNyYy9zdGF0ZGIuYzo4OAorIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3I6IHVua25vd24gZ3JvdXAgJyVzJyBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAi6K+t5rOV6ZSZ6K+v77yac3RhdG92ZXJyaWRlIOaWh+S7tuacieaXoOaViOe7hCAlcyAiCisKKyM6IHNyYy9zdGF0ZGIuYzoxMDQKK21zZ2lkICJzeW50YXggZXJyb3I6IGludmFsaWQgbW9kZSBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAi6K+t5rOV6ZSZ6K+v77yac3RhdG92ZXJyaWRlIOaWh+S7tuacieaXoOaViOadg+mZkOaooeW8jyIKKworIzogc3JjL3N0YXRkYi5jOjEyNworbXNnaWQgImZhaWxlZCB0byBvcGVuIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICLml6Dms5XmiZPlvIAgc3RhdG92ZXJyaWRlIOaWh+S7tiIKKworIzogc3JjL3N0YXRkYi5jOjEzNAorbXNnaWQgImZhaWxlZCB0byBmc3RhdCBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAi5peg5rOVIGZzdGF0IHN0YXRvdmVycmlkZSDmlofku7YiCisKKyM6IHNyYy9zdGF0ZGIuYzoxMzcKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgcHJldmlvdXMgc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIuaXoOazlSBmc3RhdCDljp/mnInnmoQgc3RhdG92ZXJyaWRlIOaWh+S7tiIKKworIzogc3JjL3N0YXRkYi5jOjE2MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic3RhdG92ZXJyaWRlIGZpbGUgYCUuMjUwcyciCittc2dpZCAicmVhZGluZyBzdGF0b3ZlcnJpZGUgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAic3RhdG92ZXJyaWRlIOaWh+S7tiAgJS4yNTBzIgorCisjOiBzcmMvc3RhdGRiLmM6MTY5Cittc2dpZCAic3RhdG92ZXJyaWRlIGZpbGUgaXMgbWlzc2luZyBmaW5hbCBuZXdsaW5lIgorbXNnc3RyICJzdGF0b3ZlcnJpZGUg5paH5Lu257y65bCR5pyA5ZCO57uT5bC+55qE5o2i6KGM56ymIgorCisjOiBzcmMvc3RhdGRiLmM6MTczCittc2dpZCAic3RhdG92ZXJyaWRlIGZpbGUgY29udGFpbnMgZW1wdHkgbGluZSIKK21zZ3N0ciAic3RhdG92ZXJyaWRlIOaWh+S7tuWQq+acieepuuihjCIKKworIzogc3JjL3N0YXRkYi5jOjE3OCBzcmMvc3RhdGRiLmM6MTkwIHNyYy9zdGF0ZGIuYzoyMDIKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgInN0YXRvdmVycmlkZSDmlofku7bmnInor63ms5XplJnor68iCisKKyM6IHNyYy9zdGF0ZGIuYzoxODYgc3JjL3N0YXRkYi5jOjE5OCBzcmMvc3RhdGRiLmM6MjEwCittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgbGluZSBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAic3RhdG92ZXJyaWRlIOaWh+S7tuaciemdnumihOacn+eahOihjOe7k+adn+espiIKKworIzogc3JjL3N0YXRkYi5jOjIxNAorIywgYy1mb3JtYXQKK21zZ2lkICJtdWx0aXBsZSBzdGF0dXNvdmVycmlkZXMgcHJlc2VudCBmb3IgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAi5a2Y5Zyo5aSa5LiqIHN0YXRvdmVycmlkZSDnlKjkuo7mlofku7YgICUuMjUwcyIKKworIzogc3JjL3RyaWdjbWQuYzo0NgorbXNnaWQgIlR5cGUgZHBrZy10cmlnZ2VyIC0taGVscCBmb3IgaGVscCBhYm91dCB0aGlzIHV0aWxpdHkuIgorbXNnc3RyICLovpPlhaUgZHBrZy10cmlnZ2VyIC0taGVscCDku6Xojrflj5bmraTlip/og73nmoTluK7liqnkv6Hmga/jgIIiCisKKyM6IHNyYy90cmlnY21kLmM6NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuICVzIHBhY2thZ2UgdHJpZ2dlciB1dGlsaXR5IHZlcnNpb24gJXMuXG4iCittc2dzdHIgIiBEZWJpYW4gJXMg6L2v5Lu25YyF6Kem5Y+R5Zmo5bel5YW3ICVzIOeJiOOAglxuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjY3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJVc2FnZTogJXMgWzxvcHRpb25zPiAuLi5dIDx0cmlnZ2VyLW5hbWU+XG4iCisiICAgICAgICVzIFs8b3B0aW9ucz4gLi4uXSA8Y29tbWFuZD5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIueUqOazle+8miVzIFs86YCJ6aG5PiAuLi5dIDzop6blj5HlmajlkI3np7A+XG4iCisiICAgICAgJXMgWzzpgInpobk+IC4uLl0gPOWRveS7pD5cbiIKKyJcbiIKKworIzogc3JjL3RyaWdjbWQuYzo3MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtLWNoZWNrLXN1cHBvcnRlZCAgICAgICAgICAgICAgICBDaGVjayBpZiB0aGUgcnVubmluZyBkcGtnIHN1cHBvcnRzICIKKyJ0cmlnZ2Vycy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIuWRveS7pO+8mlxuIgorIiAgLS1jaGVjay1zdXBwb3J0ZWQgICAgICAgICAgICAgICAg5qOA5p+l5q2j5Zyo6L+Q6KGM55qEIGRwa2cg5piv5ZCm5pSv5oyB6Kem5Y+R5Zmo44CCXG4iCisiXG4iCisKKyM6IHNyYy90cmlnY21kLmM6ODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgICAgICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyIgIC0tYnktcGFja2FnZT08cGFja2FnZT4gICAgICAgICAgIE92ZXJyaWRlIHRyaWdnZXIgYXdhaXRlciAobm9ybWFsbHkgc2V0XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ5IGRwa2cpLlxuIgorIiAgLS1uby1hd2FpdCAgICAgICAgICAgICAgICAgICAgICAgTm8gcGFja2FnZSBuZWVkcyB0byBhd2FpdCB0aGUgIgorInByb2Nlc3NpbmcuXG4iCisiICAtLW5vLWFjdCAgICAgICAgICAgICAgICAgICAgICAgICBKdXN0IHRlc3QgLSBkb24ndCBhY3R1YWxseSBjaGFuZ2UgIgorImFueXRoaW5nLlxuIgorIlxuIgorbXNnc3RyICIiCisi6YCJ6aG577yaXG4iCisiICAtLWFkbWluZGlyPTznm67lvZU+ICAgICAgICAgICAgICAgIOS9v+eUqCA855uu5b2VPiDogIzkuI3mmK8gJXPjgIJcbiIKKyIgIC0tYnktcGFja2FnZT086L2v5Lu25YyFPiAgICAgICAgICAgIOmHjeWGmeinpuWPkeWZqOetieW+heiAhSjpgJrluLjnlLEgZHBrZyDorr7nva4p44CCXG4iCisiICAtLW5vLWF3YWl0ICAgICAgICAgICAgICAgICAgICAgICDmsqHmnInova/ku7bljIXpnIDopoHnrYnlvoXlpITnkIbjgIJcbiIKKyIgIC0tbm8tYWN0ICAgICAgICAgICAgICAgICAgICAgICAgIOS7hea1i+ivlSAtIOS4jeecn+ato+i/m+ihjOS/ruaUueOAglxuIgorIlxuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogdHJpZ2dlcnMgZGF0YSBkaXJlY3Rvcnkgbm90IHlldCBjcmVhdGVkXG4iCittc2dzdHIgIiVz77ya5bCa5pyq5Yib5bu66Kem5Y+R5Zmo5pWw5o2u55uu5b2VXG4iCisKKyM6IHNyYy90cmlnY21kLmM6MTU2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB0cmlnZ2VyIHJlY29yZHMgbm90IHlldCBpbiBleGlzdGVuY2VcbiIKK21zZ3N0ciAiJXPvvJrop6blj5HlmajorrDlvZXlsJrkuI3lrZjlnKhcbiIKKworIzogc3JjL3RyaWdjbWQuYzoyMDUKK21zZ2lkICJ0YWtlcyBvbmUgYXJndW1lbnQsIHRoZSB0cmlnZ2VyIG5hbWUiCittc2dzdHIgIuWPquaOpeWPl+S4gOS4quWPguaVsO+8jOinpuWPkeWZqOWQjSIKKworIzogc3JjL3RyaWdjbWQuYzoyMTAKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgImRwa2ctdHJpZ2dlciBtdXN0IGJlIGNhbGxlZCBmcm9tIGEgbWFpbnRhaW5lciBzY3JpcHQgKG9yIHdpdGggYSAtLWJ5LSIKKyN8ICJwYWNrYWdlIG9wdGlvbikiCittc2dpZCAibXVzdCBiZSBjYWxsZWQgZnJvbSBhIG1haW50YWluZXIgc2NyaXB0IChvciB3aXRoIGEgLS1ieS1wYWNrYWdlIG9wdGlvbikiCittc2dzdHIgImRwa2ctdHJpZ2dlciDlv4Xpobvku47nu7TmiqTogIXohJrmnKzkuK3osIPnlKgo5oiW6ICF6YCa6L+HIC0tYnktcGFja2FnZSDpgInpobkpIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIxNQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZHBrZy10cmlnZ2VyOiBpbGxlZ2FsIGF3YWl0ZWQgcGFja2FnZSBuYW1lIGAlLjI1MHMnOiAlLjI1MHMiCittc2dpZCAiaWxsZWdhbCBhd2FpdGVkIHBhY2thZ2UgbmFtZSAnJS4yNTBzJzogJS4yNTBzIgorbXNnc3RyICJkcGtnLXRyaWdnZXLvvJrpnZ7ms5XnmoTnrYnlvoXova/ku7bljIXlkI0gJS4yNTBzIDolLjI1MHMiCisKKyM6IHNyYy90cmlnY21kLmM6MjIxCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgdHJpZ2dlciBuYW1lIGAlLjI1MHMnOiAlLjI1MHMiCittc2dzdHIgIuaXoOaViOeahOinpuWPkeWZqOWQjSAlLjI1MHMgOiUuMjUwcyIKKworIzogc3JjL3RyaWdwcm9jLmM6MjUwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogY3ljbGUgZm91bmQgd2hpbGUgcHJvY2Vzc2luZyB0cmlnZ2VyczpcbiIKKyIgY2hhaW4gb2YgcGFja2FnZXMgd2hvc2UgdHJpZ2dlcnMgYXJlIG9yIG1heSBiZSByZXNwb25zaWJsZTpcbiIKK21zZ3N0ciAiIgorIiVz77ya5aSE55CG6Kem5Y+R5Zmo5pe25Y+R546w5Zue6Lev77yaXG4iCisiIOWMheWQq+aIluWPr+iDveWMheWQq+WvueatpOaciei0o+S7u+eahOinpuWPkeWZqOeahOi9r+S7tuWMhemTvu+8mlxuIgorCisjOiBzcmMvdHJpZ3Byb2MuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIiBwYWNrYWdlcycgcGVuZGluZyB0cmlnZ2VycyB3aGljaCBhcmUgb3IgbWF5IGJlIHVucmVzb2x2YWJsZTpcbiIKK21zZ3N0ciAiIgorIlxuIgorIiDml6Dms5Xop6PlhrPnmoTova/ku7bljIXmnKrlhrPop6blj5HlmajvvJpcbiIKKworIzogc3JjL3RyaWdwcm9jLmM6MjgxCittc2dpZCAidHJpZ2dlcnMgbG9vcGluZywgYWJhbmRvbmVkIgorbXNnc3RyICLop6blj5Hlmajlvqrnjq/vvIzmlL7lvIMiCisKKyM6IHNyYy90cmlncHJvYy5jOjMxMgorIywgYy1mb3JtYXQKK21zZ2lkICJQcm9jZXNzaW5nIHRyaWdnZXJzIGZvciAlcyAuLi5cbiIKK21zZ3N0ciAi5q2j5Zyo5aSE55CG55So5LqOICVzIOeahOinpuWPkeWZqC4uLlxuIgorCisjOiBzcmMvdXBkYXRlLmM6NTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIi0tJXMgbmVlZHMgZXhhY3RseSBvbmUgUGFja2FnZXMgZmlsZSBhcmd1bWVudCIKK21zZ2lkICItLSVzIG5lZWRzIGV4YWN0bHkgb25lIFBhY2thZ2VzLWZpbGUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMg5Y+q6ZyA6KaB5LiA5Liq6L2v5Lu25YyF5ZCN5L2c5Li65Y+C5pWwIgorCisjOiBzcmMvdXBkYXRlLmM6NjIKK21zZ2lkICJ1bmFibGUgdG8gYWNjZXNzIGRwa2cgc3RhdHVzIGFyZWEgZm9yIGJ1bGsgYXZhaWxhYmxlIHVwZGF0ZSIKK21zZ3N0ciAi5peg5rOV6K6/6ZeuIGRwa2cg55qE54q25oCB5Yy677yM5Lul6L+b6KGM5om56YeP55qE5Y+v55So6L2v5Lu25YyF5pu05pawIgorCisjOiBzcmMvdXBkYXRlLmM6NjQKK21zZ2lkICJidWxrIGF2YWlsYWJsZSB1cGRhdGUgcmVxdWlyZXMgd3JpdGUgYWNjZXNzIHRvIGRwa2cgc3RhdHVzIGFyZWEiCittc2dzdHIgIui/m+ihjOaJuemHj+WPr+eUqOi9r+S7tuWMheeahOabtOaWsO+8jOmcgOimgeaLpeacieWvuSBkcGtnIOeKtuaAgeWMuueahOWGmeadg+mZkCIKKworIzogc3JjL3VwZGF0ZS5jOjcxCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlcGxhY2luZyBhdmFpbGFibGUgcGFja2FnZXMgaW5mbywgdXNpbmcgJXMuXG4iCittc2dzdHIgIuato+WcqOS9v+eUqCAlcyDmm7/mjaLlj6/nlKjova/ku7bljIXnmoTkv6Hmga/jgIJcbiIKKworIzogc3JjL3VwZGF0ZS5jOjc0CisjLCBjLWZvcm1hdAorbXNnaWQgIlVwZGF0aW5nIGF2YWlsYWJsZSBwYWNrYWdlcyBpbmZvLCB1c2luZyAlcy5cbiIKK21zZ3N0ciAi5q2j5Zyo5L2/55SoICVzIOabtOaWsOWPr+eUqOi9r+S7tuWMheeahOS/oeaBr+OAglxuIgorCisjOiBzcmMvdXBkYXRlLmM6MTAxCisjLCBjLWZvcm1hdAorbXNnaWQgIkluZm9ybWF0aW9uIGFib3V0ICVkIHBhY2thZ2Ugd2FzIHVwZGF0ZWQuXG4iCittc2dpZF9wbHVyYWwgIkluZm9ybWF0aW9uIGFib3V0ICVkIHBhY2thZ2VzIHdhcyB1cGRhdGVkLlxuIgorbXNnc3RyWzBdICLlhbHmm7TmlrDkuoYgJWQg5Liq6L2v5Lu25YyF55qE55u45YWz5L+h5oGv44CCXG4iCisKKyM6IHNyYy91cGRhdGUuYzoxMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm9ic29sZXRlICctLSVzJyBvcHRpb24sIHVuYXZhaWxhYmxlIHBhY2thZ2VzIGFyZSBhdXRvbWF0aWNhbGx5IGNsZWFuZWQgdXAuIgorbXNnc3RyICLlt7Llup/lvIPnmoQgLS0lcyDpgInpobnvvIznjrDlnKjkuI3lj6/nlKjova/ku7bljIXlsIboh6rliqjooqvmuIXnkIbjgIIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgbmFtZSAnJS41MHMuLi4nIGlzIHRvbyBsb25nIgorbXNnc3RyICLmlofku7blkI0gJS41MHMuLi4g5aSq6ZW/5LqGIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjEyOQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBmaWxlIG5hbWUgJyUuMjUwcyciCittc2dzdHIgIuaXoOazleiOt+WPluaWh+S7tuWQjSAlLjI1MHMiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTg5Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgY29udHJvbCBkaXJlY3RvcnkiCittc2dzdHIgIuaXoOazleiOt+W+l+aOp+WItuebruW9leS/oeaBryIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoxOTEKK21zZ2lkICJjb250cm9sIGRpcmVjdG9yeSBpcyBub3QgYSBkaXJlY3RvcnkiCittc2dzdHIgIuaOp+WItuebruW9leS4jeaYr+ebruW9lSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoxOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29udHJvbCBkaXJlY3RvcnkgaGFzIGJhZCBwZXJtaXNzaW9ucyAlMDNsbyAobXVzdCBiZSA+PTA3NTUgYW5kIDw9MDc3NSkiCittc2dzdHIgIuaOp+WItuebruW9leeahOeahOadg+mZkOS9jeaYryAlMDNsbyAo5b+F6aG7ID49MDc1NSDkuJQgPD0wNzU1KSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAibWFpbnRhaW5lciBzY3JpcHQgYCUuNTBzJyBpcyBub3QgYSBwbGFpbiBmaWxlIG9yIHN5bWxpbmsiCittc2dzdHIgIue7tOaKpOiAheeahOiEmuacrCAlLjUwcyDkuI3mmK/mma7pgJrmlofku7bmiJbnrKblj7fpk77mjqUiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjA3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJtYWludGFpbmVyIHNjcmlwdCBgJS41MHMnIGhhcyBiYWQgcGVybWlzc2lvbnMgJTAzbG8gKG11c3QgYmUgPj0wNTU1IGFuZCAiCisiPD0wNzc1KSIKK21zZ3N0ciAi57u05oqk6ICF55qE6ISa5pysICUuNTBzIOeahOadg+mZkOS9jeaYryAlMDNsbyAo5b+F6aG7ID49MDU1NSDkuJQgPD0wNzc1KSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAibWFpbnRhaW5lciBzY3JpcHQgYCUuNTBzJyBpcyBub3Qgc3RhdHRhYmxlIgorbXNnc3RyICLml6Dms5Xojrflj5bnu7TmiqTogIXnmoTohJrmnKzmlofku7YgJS41MHMg55qE54q25oCBIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjIzNworbXNnaWQgImVycm9yIG9wZW5pbmcgY29uZmZpbGVzIGZpbGUiCittc2dzdHIgIuaJk+W8gCBjb25mZmlsZSDmlofku7bml7blh7rplJkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjQ2Cittc2dpZCAiZW1wdHkgc3RyaW5nIGZyb20gZmdldHMgcmVhZGluZyBjb25mZmlsZXMiCittc2dzdHIgIumAmui/hyBmZ2V0cyDor7vlj5YgY29uZmZpbGUg5pe277yM6L+U5Zue5LqG56m65a2X56ym5LiyIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI1MQorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBuYW1lICclLjUwcy4uLicgaXMgdG9vIGxvbmcsIG9yIG1pc3NpbmcgZmluYWwgbmV3bGluZSIKK21zZ3N0ciAiY29uZmZpbGUg55qE5paH5Lu25ZCNICUuNTBzLi4uIOi2hemVv++8jOaIluaYr+e8uuWwkeacgOWQjue7k+WwvueahOaNouihjOespiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyNjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgZmlsZW5hbWUgJyVzJyBjb250YWlucyB0cmFpbGluZyB3aGl0ZSBzcGFjZXMiCittc2dzdHIgImNvbmZmaWxlICAlcyAg55qE5paH5Lu25ZCN5ZCO6Z2i5ZCr5pyJ56m65qC8IgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI2NgorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBgJS4yNTBzJyBkb2VzIG5vdCBhcHBlYXIgaW4gcGFja2FnZSIKK21zZ3N0ciAi6L2v5Lu25YyF5YaF5rKh5pyJ5Y+R546wIGNvbmZmaWxlICAlLjI1MHMiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjY4CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIGAlLjI1MHMnIGlzIG5vdCBzdGF0dGFibGUiCittc2dzdHIgIuaXoOazlSBjb25mZmlsZSAgJS41MHMg55qE54q25oCBIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI3MAorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSAnJXMnIGlzIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgImNvbmZmaWxlICAlcyDkuI3mmK/mma7pgJrmlofku7YiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6Mjc0CisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZmaWxlIG5hbWUgJyVzJyBpcyBkdXBsaWNhdGVkIgorbXNnc3RyICJjb25mZmlsZSDlkI3np7AgJXMg6YeN5aSNIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI4NworbXNnaWQgImVycm9yIHJlYWRpbmcgY29uZmZpbGVzIGZpbGUiCittc2dzdHIgIuivu+WPliBjb25mZmlsZSDmlofku7bml7blh7rplJkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MzM5Cittc2dpZCAicGFja2FnZSBuYW1lIGhhcyBjaGFyYWN0ZXJzIHRoYXQgYXJlbid0IGxvd2VyY2FzZSBhbHBoYW51bXMgb3IgYC0rLiciCittc2dzdHIgIui9r+S7tuWMheeahOWQjeWtl+WQq+acieS4jeaYr+Wwj+WGmeWtl+avjeaIliAtKyDnmoTlrZfnrKYiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MzQxCisjLCBjLWZvcm1hdAorbXNnaWQgIiclcycgY29udGFpbnMgdXNlci1kZWZpbmVkIFByaW9yaXR5IHZhbHVlICclcyciCittc2dzdHIgIiVzIOWQq+acieeUqOaIt+iHquWumuS5ieeahOS8mOWFiOe6p+WIqyhQcmlvcml0eSB2YWx1ZSkgICVzICIKKworIzogZHBrZy1kZWIvYnVpbGQuYzozNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBjb250YWlucyB1c2VyLWRlZmluZWQgZmllbGQgJyVzJyIKK21zZ3N0ciAiJXMg5ZCr5pyJ55So5oi36Ieq5a6a5LmJ55qE5a2X5q61ICVzICIKKworIzogZHBrZy1kZWIvYnVpbGQuYzozNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgJWQgd2FybmluZyBhYm91dCB0aGUgY29udHJvbCBmaWxlKHMpXG4iCittc2dpZF9wbHVyYWwgImlnbm9yaW5nICVkIHdhcm5pbmdzIGFib3V0IHRoZSBjb250cm9sIGZpbGUocylcbiIKK21zZ3N0clswXSAi5b+955Wl5pyJ5YWz5Li75o6n5paH5Lu255qEICVkIOS4quitpuWRilxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQwMyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQyOQorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyBhIDxkaXJlY3Rvcnk+IGFyZ3VtZW50IgorbXNnc3RyICItLSVzIOmcgOimgeS4gOS4qiA8ZGlyZWN0b3J5PiDlj4LmlbAiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDA5Cittc2dpZCAiLS1idWlsZCB0YWtlcyBhdCBtb3N0IHR3byBhcmd1bWVudHMiCittc2dzdHIgIi0tYnVpbGQg6Iez5aSa5Y+v5pyJ5Lik5Liq5Y+C5pWwIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQxMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hlY2sgZm9yIGV4aXN0ZW5jZSBvZiBhcmNoaXZlIGAlLjI1MHMnIgorbXNnc3RyICLml6Dms5XliKTmlq3ljIXmlofku7YgJS4yNTBzIOWtmOWcqOS4juWQpiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzAKK21zZ2lkICJ0YXJnZXQgaXMgZGlyZWN0b3J5IC0gY2Fubm90IHNraXAgY29udHJvbCBmaWxlIGNoZWNrIgorbXNnc3RyICLnm67moIfmmK/kuIDkuKrnm67lvZUgLSDml6Dms5Xlv73nlaXkuLvmjqfmlofku7bnmoTmo4Dmn6XmraXpqqQiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDMxCittc2dpZCAibm90IGNoZWNraW5nIGNvbnRlbnRzIG9mIGNvbnRyb2wgYXJlYS4iCittc2dzdHIgIuS4jeajgOafpeaOp+WItuWMuuWfn+eahOWGheWuueOAgiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZy1kZWI6IGJ1aWxkaW5nIGFuIHVua25vd24gcGFja2FnZSBpbiAnJXMnLlxuIgorbXNnc3RyICJkcGtnLWRlYu+8muato+WcqCAlcyDkuK3mnoTlu7rmnKrnn6Xova/ku7bljIXjgIJcbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZy1kZWI6IGJ1aWxkaW5nIHBhY2thZ2UgYCVzJyBpbiBgJXMnLlxuIgorbXNnc3RyICJkcGtnLWRlYu+8muato+WcqOaWsOW7uui9r+S7tuWMhSAlc++8jOWMheaWh+S7tuS4uiAlc+OAglxuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ2NyBkcGtnLWRlYi9idWlsZC5jOjUyMQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIG1ha2UgdG1wZmlsZSAoZGF0YSkiCittc2dpZCAiZmFpbGVkIHRvIG1ha2UgdGVtcG9yYXJ5IGZpbGUgKCVzKSIKK21zZ3N0ciAi5paw5bu65Li05pe25paH5Lu2KOaVsOaNrinlpLHotKUiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDY3IGRwa2ctZGViL2J1aWxkLmM6NDcwIGRwa2ctZGViL2J1aWxkLmM6NDc3CisjOiBkcGtnLWRlYi9idWlsZC5jOjQ4NSBkcGtnLWRlYi9idWlsZC5jOjQ5NCBkcGtnLWRlYi9idWlsZC5jOjQ5OQorIywgZnV6enkKKyN8IG1zZ2lkICJjb250cm9sIgorbXNnaWQgImNvbnRyb2wgbWVtYmVyIgorbXNnc3RyICLmjqfliLbkv6Hmga8iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDcwIGRwa2ctZGViL2J1aWxkLmM6NTI0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gdW5saW5rIHRtcGZpbGUgKGRhdGEpLCAlcyIKK21zZ2lkICJmYWlsZWQgdG8gdW5saW5rIHRlbXBvcmFyeSBmaWxlICglcyksICVzIgorbXNnc3RyICJ1bmxpbmsg5Li05pe25paH5Lu2KOaVsOaNrinlpLHotKXvvIwlcyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0ODUgZHBrZy1kZWIvYnVpbGQuYzo1OTMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdG1wZmlsZSAoZGF0YSkiCittc2dpZCAiZmFpbGVkIHRvIHJld2luZCB0ZW1wb3JhcnkgZmlsZSAoJXMpIgorbXNnc3RyICLot7PliLDkuLTml7bmlofku7Yo5pWw5o2uKeeahOi1t+Wni+S9jee9rihyZXdpbmQp5aSx6LSlIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ5NAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGFyIG1lbWJlciBmaWxlICglcykiCittc2dpZCAiZmFpbGVkIHRvIHN0YXQgdGVtcG9yYXJ5IGZpbGUgKCVzKSIKK21zZ3N0ciAiZnN0YXQgYXIg5oiQ5ZGY5paH5Lu25aSx6LSlKCVzKSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0OTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igd3JpdGluZyBgJXMnIgorbXNnc3RyICIlcyDlhpnlhaXplJnor68iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTIxIGRwa2ctZGViL2J1aWxkLmM6NTI0IGRwa2ctZGViL2J1aWxkLmM6NTQ2CisjOiBkcGtnLWRlYi9idWlsZC5jOjU3MiBkcGtnLWRlYi9idWlsZC5jOjU4MCBkcGtnLWRlYi9idWlsZC5jOjU5MworIywgZnV6enkKKyN8IG1zZ2lkICJiZXR3ZWVuIG1lbWJlcnMiCittc2dpZCAiZGF0YSBtZW1iZXIiCittc2dzdHIgIuaIkOWRmOmXtCIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo1NzEgZHBrZy1kZWIvYnVpbGQuYzo1ODAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byB3cml0ZSBmaWxlbmFtZSB0byB0YXIgcGlwZSAoZGF0YSkiCittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIGZpbGVuYW1lIHRvIHRhciBwaXBlICglcykiCittc2dzdHIgIuWGmeWFpeaWh+S7tuWQjeWIsCB0YXIg55qE566h6YGTKOaVsOaNrinlpLHotKUiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTg0Cittc2dpZCAiPGNvbXByZXNzPiBmcm9tIHRhciAtY2YiCittc2dzdHIgIjzljovnvKk+IOiHqiB0YXIgLWNmIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6NjEgZHBrZy1kZWIvZXh0cmFjdC5jOjYzCittc2dpZCAic2hlbGwgY29tbWFuZCB0byBtb3ZlIGZpbGVzIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzo3MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBmaWxlIGluICVzIGluICUuMjU1cyIKK21zZ3N0ciAi5ZyoICUyJC4yNTVzIOS4reivu+WPliAlMSRzIOaXtumBh+WIsOaEj+aWmeS5i+WklueahOaWh+S7tue7k+adn+espiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjcyCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHJlYWRpbmcgJXMgZnJvbSBmaWxlICUuMjU1cyIKK21zZ3N0ciAi5peg5rOV5LuO5paH5Lu2ICUyJHMg6K+75Y+WICUxJHMiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxMjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgYXJjaGl2ZSBgJS4yNTVzJyIKK21zZ3N0ciAi6K+75Y+W5YyF5paH5Lu2ICUuMjU1cyDlpLHotKUiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxMjcKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgYXJjaGl2ZSIKK21zZ3N0ciAiZnN0YXQg5YyF5paH5Lu25aSx6LSlIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTMxCisjLCBmdXp6eQorI3wgbXNnaWQgImFyY2hpdmUgaGFzIG5vIGRvdCBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ2lkICJhcmNoaXZlIG1hZ2ljIHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICLljIXmlofku7bnmoTniYjmnKzlj7fkuK3msqHmnInngrkiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNDMKKyMsIGZ1enp5CisjfCBtc2dpZCAiYXJjaGl2ZSBoYXMgbm8gbmV3bGluZXMgaW4gaGVhZGVyIgorbXNnaWQgImFyY2hpdmUgbWVtYmVyIGhlYWRlciIKK21zZ3N0ciAi5YyF5paH5Lu255qE5paH5Lu25aS05Lit5rKh5pyJ5o2i6KGMIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTQ4CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgcGFydCBudW1iZXIiCittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIGFyY2hpdmUgaGVhZGVyIG1hZ2ljIgorbXNnc3RyICLmlofku7YgJS4yNTBzIOW3sue7j+aNn+avgSAtIOWIhuWdl+e8luWPt+acieivryIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE1NQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIG5vdCBhIGRlYmlhbiBiaW5hcnkgYXJjaGl2ZSAodHJ5IGRwa2ctc3BsaXQ/KSIKK21zZ3N0ciAi5paH5Lu2ICUuMjUwcyDkuI3mmK8gZGViaWFuIOeahOS6jOi/m+WItuWMheaWh+S7tijkuI3lpqjor5XkuIDkuIsgZHBrZy1zcGxpdO+8nykiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNTkKKyMsIGZ1enp5CisjfCBtc2dpZCAiYXJjaGl2ZSBoYXMgbm8gZG90IGluIHZlcnNpb24gbnVtYmVyIgorbXNnaWQgImFyY2hpdmUgaW5mb3JtYXRpb24gaGVhZGVyIG1lbWJlciIKK21zZ3N0ciAi5YyF5paH5Lu255qE54mI5pys5Y+35Lit5rKh5pyJ54K5IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTYyCittc2dpZCAiYXJjaGl2ZSBoYXMgbm8gbmV3bGluZXMgaW4gaGVhZGVyIgorbXNnc3RyICLljIXmlofku7bnmoTmlofku7blpLTkuK3msqHmnInmjaLooYwiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNjUKK21zZ2lkICJhcmNoaXZlIGhhcyBubyBkb3QgaW4gdmVyc2lvbiBudW1iZXIiCittc2dzdHIgIuWMheaWh+S7tueahOeJiOacrOWPt+S4reayoeacieeCuSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE2OAorIywgYy1mb3JtYXQKK21zZ2lkICJhcmNoaXZlIHZlcnNpb24gJS4yNTBzIG5vdCB1bmRlcnN0b29kLCBnZXQgbmV3ZXIgZHBrZy1kZWIiCittc2dzdHIgIuS4jeiDveivhuWIq+WMheaWh+S7tueahOeJiOacrCAlLjI1MHPvvIzor7fljYfnuqcgZHBrZy1kZWIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNzkgZHBrZy1kZWIvZXh0cmFjdC5jOjIwNQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic2tpcHBlZCBtZW1iZXIgZGF0YSBmcm9tICVzIgorbXNnaWQgInNraXBwZWQgYXJjaGl2ZSBtZW1iZXIgZGF0YSBmcm9tICVzIgorbXNnc3RyICLlv73nlaXkuoYgJXMg5Lit55qE5oiQ5ZGY5pWw5o2uIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTk0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGNvbnRhaW5zIHVudW5kZXJzdG9vZCBkYXRhIG1lbWJlciAlLipzLCBnaXZpbmcgdXAiCittc2dpZCAiYXJjaGl2ZSAnJS4yNTBzJyBjb250YWlucyBub3QgdW5kZXJzdG9vZCBkYXRhIG1lbWJlciAlLipzLCBnaXZpbmcgdXAiCittc2dzdHIgIuaWh+S7tiAlLjI1MHMg5ZCr5pyJ5pyq55+l55qE5pWw5o2u5oiQ5ZGYICUuKnPvvIzlj5bmtojmk43kvZwiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxOTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgY29udGFpbnMgdHdvIGNvbnRyb2wgbWVtYmVycywgZ2l2aW5nIHVwIgorbXNnaWQgImFyY2hpdmUgJyUuMjUwcycgY29udGFpbnMgdHdvIGNvbnRyb2wgbWVtYmVycywgZ2l2aW5nIHVwIgorbXNnc3RyICLmlofku7YgJS4yNTBzIOWQq+acieS4pOS4quaOp+WItuaIkOWRmO+8jOWPlua2iOaTjeS9nCIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIxNAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiBuZXcgZGViaWFuIHBhY2thZ2UsIHZlcnNpb24gJXMuXG4iCisjfCAiIHNpemUgJWxkIGJ5dGVzOiBjb250cm9sIGFyY2hpdmU9ICV6aSBieXRlcy5cbiIKK21zZ2lkICIiCisiIG5ldyBkZWJpYW4gcGFja2FnZSwgdmVyc2lvbiAlcy5cbiIKKyIgc2l6ZSAlamQgYnl0ZXM6IGNvbnRyb2wgYXJjaGl2ZT0gJWpkIGJ5dGVzLlxuIgorbXNnc3RyICIiCisiIOaWsOagvOW8j+eahCBkZWJpYW4g6L2v5Lu25YyF77yM5qC85byP54mI5pysICVz44CCXG4iCisiIOWkp+WwjyAlbGQg5a2X6IqC77ya5Li75o6n5YyFPSV6aSDlrZfoioLjgIJcbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIzMgorbXNnaWQgImFyY2hpdmUgY29udHJvbCBtZW1iZXIgc2l6ZSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjM1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJhcmNoaXZlIGhhcyBtYWxmb3JtYXR0ZWQgY29udHJvbCBsZW5ndGggYCVzJyIKK21zZ2lkICJhcmNoaXZlIGhhcyBtYWxmb3JtYXR0ZWQgY29udHJvbCBtZW1iZXIgc2l6ZSAnJXMnIgorbXNnc3RyICLljovnvKnmlofku7bkuK3nmoTmjqfliLbkv6Hmga/plb/luqYgICVzICDmoLzlvI/mnInor68iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNDIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInNraXBwZWQgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ2lkICJza2lwcGVkIGFyY2hpdmUgY29udHJvbCBtZW1iZXIgZGF0YSBmcm9tICVzIgorbXNnc3RyICLlv73nlaXkuoYgJXMg5Lit55qE5oiQ5ZGY5pWw5o2uIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjQ2CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiIG9sZCBkZWJpYW4gcGFja2FnZSwgdmVyc2lvbiAlcy5cbiIKKyN8ICIgc2l6ZSAlbGQgYnl0ZXM6IGNvbnRyb2wgYXJjaGl2ZT0gJXppLCBtYWluIGFyY2hpdmU9ICVsZC5cbiIKK21zZ2lkICIiCisiIG9sZCBkZWJpYW4gcGFja2FnZSwgdmVyc2lvbiAlcy5cbiIKKyIgc2l6ZSAlamQgYnl0ZXM6IGNvbnRyb2wgYXJjaGl2ZT0gJWpkLCBtYWluIGFyY2hpdmU9ICVqZC5cbiIKK21zZ3N0ciAiIgorIiDml6fmoLzlvI/nmoQgZGViaWFuIOi9r+S7tuWMhe+8jOagvOW8j+eJiOacrCAlc+OAglxuIgorIiDlpKflsI8gJWxkIOWtl+iKgu+8muS4u+aOp+WMhT0gJXppIOWtl+iKgu+8jOaVsOaNruWPiueoi+W6j+WMhT0gJWxk44CCXG4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2ctZGViOiBmaWxlIGxvb2tzIGxpa2UgaXQgbWlnaHQgYmUgYW4gYXJjaGl2ZSB3aGljaCBoYXMgYmVlblxuIgorImRwa2ctZGViOiAgICBjb3JydXB0ZWQgYnkgYmVpbmcgZG93bmxvYWRlZCBpbiBBU0NJSSBtb2RlXG4iCittc2dzdHIgIiIKKyJkcGtnLWRlYu+8muivpeaWh+S7tueci+S4iuWOu+S8vOS5juWOn+acrOaYr+S4gOS4quWMheaWh+S7tu+8jOS9huaYr+eUseS6juS4i+i9veWug+aXtlxuIgorImRwa2ctZGVi77ya5L2/55So55qE5pivIEFTQ0lJIOaooeW8j++8jOS7juiAjOWvvOiHtOS6huWMheaWh+S7tuiiq+aNn+Wdj1xuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjU5CisjLCBjLWZvcm1hdAorbXNnaWQgImAlLjI1NXMnIGlzIG5vdCBhIGRlYmlhbiBmb3JtYXQgYXJjaGl2ZSIKK21zZ3N0ciAiJS4yNTVzIOW5tumdniBkZWJpYW4g5qC85byP55qE5YyF5paH5Lu2IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjY2Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIHRvIHBpcGUgaW4gY29weSIKK21zZ3N0ciAi5YaZ5YWl6YCa5ZCR5aSN5Yi255qE566h6YGT5pe25Ye66ZSZIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjY4Cittc2dpZCAiZmFpbGVkIHRvIGNsb3NlIHBpcGUgaW4gY29weSIKK21zZ3N0ciAi5YWz6Zet6YCa5ZCR5aSN5Yi255qE566h6YGT5pe25Ye66ZSZIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6Mjg0Cittc2dpZCAiZGF0YSIKK21zZ3N0ciAi5pWw5o2uIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzA3Cittc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIGRpcmVjdG9yeSIKK21zZ3N0ciAiY2hkaXIg5Yiw55uu5b2V5aSx6LSlIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzEwCittc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSBkaXJlY3RvcnkiCittc2dzdHIgIuaWsOW7uuebruW9leWksei0pSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMxMgorbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byBkaXJlY3RvcnkgYWZ0ZXIgY3JlYXRpbmcgaXQiCittc2dzdHIgIuaWsOW7uuebruW9leWQju+8jGNoZGlyIOWIsOivpeebruW9leWksei0pSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMyMworbXNnaWQgIjxkZWNvbXByZXNzPiIKK21zZ3N0ciAiPOino+WOi+e8qT4iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozMjUKK21zZ2lkICJwYXN0ZSIKK21zZ3N0ciAi57KY6LS0IgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzQyIGRwa2ctZGViL2V4dHJhY3QuYzozNjMgZHBrZy1kZWIvZXh0cmFjdC5jOjQwMgorIzogZHBrZy1kZWIvaW5mby5jOjc3CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSAuZGViIGZpbGVuYW1lIGFyZ3VtZW50IgorbXNnc3RyICItLSVzIOmcgOimgeS4gOS4qiAuZGViIOaWh+S7tueahOaWh+S7tuWQjeS9nOS4uuWPguaVsCIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjM0NyBkcGtnLWRlYi9leHRyYWN0LmM6NDA2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyItLSVzIG5lZWRzIGEgdGFyZ2V0IGRpcmVjdG9yeS5cbiIKKyJQZXJoYXBzIHlvdSBzaG91bGQgYmUgdXNpbmcgZHBrZyAtLWluc3RhbGwgPyIKK21zZ3N0ciAiIgorIi0tJXMg6ZyA6KaB5LiA5Liq55uu5b2V5L2c5Li655uu5qCH55uu5b2V44CCXG4iCisi5oiW6K645oKo5bqU6K+l5L2/55SoIGRwa2cgLS1pbnN0YWxs77yfIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzUwIGRwa2ctZGViL2V4dHJhY3QuYzo0MTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyB0YWtlcyBhdCBtb3N0IHR3byBhcmd1bWVudHMgKC5kZWIgYW5kIGRpcmVjdG9yeSkiCittc2dzdHIgIi0tJXMg6Iez5aSa6IO95pyJ5Lik5Liq5Y+C5pWwKOWIhuWIq+aYryAuZGViIOaWh+S7tuWSjOebruW9lSkiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozNjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyB0YWtlcyBvbmx5IG9uZSBhcmd1bWVudCAoLmRlYiBmaWxlbmFtZSkiCittc2dzdHIgIi0tJXMg5Y+q5bim5LiA5Liq5Y+C5pWwKOWNsyAuZGViIOaWh+S7tueahOaWh+S7tuWQjSkiCisKKyM6IGRwa2ctZGViL2luZm8uYzo2MworbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byBgLycgZm9yIGNsZWFudXAiCittc2dzdHIgIui/m+ihjOa4heeQhuW3peS9nOaXtu+8jGNoZGlyIOWIsCAvIOebruW9leWksei0pSIKKworIzogZHBrZy1kZWIvaW5mby5jOjEwNgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiY2Fubm90IHN0YXQgZmlsZSAnJXMnIgorbXNnaWQgImNvbnRyb2wgZmlsZSAnJXMnIgorbXNnc3RyICLml6Dms5Xorr/pl67mlofku7YgJXMiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZy1kZWI6IGAlLjI1NXMnIGNvbnRhaW5zIG5vIGNvbnRyb2wgY29tcG9uZW50IGAlLjI1NXMnXG4iCittc2dzdHIgImRwa2ctZGVi77yaICUuMjU1cyDkuK3msqHmnInlj5HnjrDmjqfliLbnu4Tku7YgJS4yNTVzIFxuIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgIm9wZW4gY29tcG9uZW50IGAlLjI1NXMnIChpbiAlLjI1NXMpIGZhaWxlZCBpbiBhbiB1bmV4cGVjdGVkIHdheSIKK21zZ3N0ciAi5omT5byA57uE5Lu2ICUuMjU1cyAo5LqOICUuMjU1cyDnm67lvZUp5aSx6LSl77yM5aSx6LSl55qE5Y6f5Zug5Ye65LmO5oSP5paZIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTIxCisjLCBjLWZvcm1hdAorbXNnaWQgIiVkIHJlcXVlc3RlZCBjb250cm9sIGNvbXBvbmVudCBpcyBtaXNzaW5nIgorbXNnaWRfcGx1cmFsICIlZCByZXF1ZXN0ZWQgY29udHJvbCBjb21wb25lbnRzIGFyZSBtaXNzaW5nIgorbXNnc3RyWzBdICIlZCDkuKrlv4XopoHnmoTmjqfliLbnu4Tku7bmsqHmnInmib7liLAiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMzkgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQyNAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc2NhbiBkaXJlY3RvcnkgYCUuMjU1cyciCittc2dzdHIgIuaXoOazleaQnOe0ouebruW9lSAlLjI1NXMgIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTQ4CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzdGF0IGAlLjI1NXMnIChpbiBgJS4yNTVzJykiCittc2dzdHIgIuaXoOazleiOt+WPliAlLjI1NXMg55qE5L+h5oGvKOS6jiAlLjI1NXMg55uu5b2VKSIKKworIzogZHBrZy1kZWIvaW5mby5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgb3BlbiBgJS4yNTVzJyAoaW4gYCUuMjU1cycpIgorbXNnc3RyICLml6Dms5XmiZPlvIAgJS4yNTVzICjkuo4gJS4yNTVzIOebruW9lSkiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxNjcgZHBrZy1kZWIvaW5mby5jOjE4NSBkcGtnLWRlYi9pbmZvLmM6MTk5CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZWFkIGAlLjI1NXMnIChpbiBgJS4yNTVzJykiCittc2dzdHIgIuivu+WPliAlLjI1NXMgKOS6jiAlLjI1NXMg55uu5b2VKeWksei0pSIKKworIzogZHBrZy1kZWIvaW5mby5jOjE3MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiICU3bGQgYnl0ZXMsICU1ZCBsaW5lcyAgICVjICAlLTIwLjEyN3MgJS4xMjdzXG4iCittc2dpZCAiICU3amQgYnl0ZXMsICU1ZCBsaW5lcyAgICVjICAlLTIwLjEyN3MgJS4xMjdzXG4iCittc2dzdHIgIiAlN2xkIOWtl+iKgu+8jCU1ZCDooYwgICAlYyAgJS0yMC4xMjdzICUuMTI3c1xuIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTc0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgICAgbm90IGEgcGxhaW4gZmlsZSAgICAgICAgICAlLjI1NXNcbiIKK21zZ3N0ciAiICAgICDkuI3mmK/mma7pgJrmlofku7YgICAgICAgICAgJS4yNTVzXG4iCisKKyM6IGRwa2ctZGViL2luZm8uYzoxODYKK21zZ2lkICIobm8gYGNvbnRyb2wnIGZpbGUgaW4gY29udHJvbCBhcmNoaXZlISlcbiIKK21zZ3N0ciAiKOWcqOS4u+aOp+WMheS4reayoeacieWPkeeOsCBjb250cm9sIOaWh+S7tu+8gSlcbiIKKworIzogZHBrZy1kZWIvaW5mby5jOjIyMgorbXNnaWQgImNvdWxkIG5vdCBvcGVuIHRoZSBgY29udHJvbCcgY29tcG9uZW50IgorbXNnc3RyICLml6Dms5XmiZPlvIAgY29udHJvbCDnu4Tku7YiCisKKyM6IGRwa2ctZGViL2luZm8uYzoyNjEKK21zZ2lkICJmYWlsZWQgZHVyaW5nIHJlYWQgb2YgYGNvbnRyb2wnIGNvbXBvbmVudCIKK21zZ3N0ciAi5b2T6K+75Y+WIGNvbnRyb2wg57uE5Lu25pe25aSx6LSlIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MjYzCisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgdGhlICclcycgY29tcG9uZW50IgorbXNnc3RyICLlhbPpl60gJXMg57uE5Lu25pe25Ye66ZSZIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6Mjc4Cittc2dpZCAiRXJyb3IgaW4gZm9ybWF0IgorbXNnc3RyICLmoLzlvI/mnInor68iCisKKyM6IGRwa2ctZGViL2luZm8uYzozMjgKK21zZ2lkICItLWNvbnRlbnRzIHRha2VzIGV4YWN0bHkgb25lIGFyZ3VtZW50IgorbXNnc3RyICItLWNvbnRlbnRzIOmcgOimgeS4lOS7hemcgOS4gOS4quWPguaVsCIKKworIzogZHBrZy1kZWIvbWFpbi5jOjU0CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiBgJXMnIHBhY2thZ2UgYXJjaGl2ZSBiYWNrZW5kIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkRlYmlhbiAlcyDova/ku7bljIXlkI7nq6/miZPljIXnqIvluo8gJXMg54mI44CCXG4iCisKKyM6IGRwa2ctZGViL21haW4uYzo3MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIkNvbW1hbmRzOlxuIgorI3wgIiAgLWJ8LS1idWlsZCA8ZGlyZWN0b3J5PiBbPGRlYj5dICAgQnVpbGQgYW4gYXJjaGl2ZS5cbiIKKyN8ICIgIC1jfC0tY29udGVudHMgPGRlYj4gICAgICAgICAgICAgIExpc3QgY29udGVudHMuXG4iCisjfCAiICAtSXwtLWluZm8gPGRlYj4gWzxjZmlsZT4gLi4uXSAgICBTaG93IGluZm8gdG8gc3Rkb3V0LlxuIgorI3wgIiAgLVd8LS1zaG93IDxkZWI+ICAgICAgICAgICAgICAgICAgU2hvdyBpbmZvcm1hdGlvbiBvbiBwYWNrYWdlKHMpXG4iCisjfCAiICAtZnwtLWZpZWxkIDxkZWI+IFs8Y2ZpZWxkPiAuLi5dICBTaG93IGZpZWxkKHMpIHRvIHN0ZG91dC5cbiIKKyN8ICIgIC1lfC0tY29udHJvbCA8ZGViPiBbPGRpcmVjdG9yeT5dIEV4dHJhY3QgY29udHJvbCBpbmZvLlxuIgorI3wgIiAgLXh8LS1leHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+ICAgRXh0cmFjdCBmaWxlcy5cbiIKKyN8ICIgIC1YfC0tdmV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gIEV4dHJhY3QgJiBsaXN0IGZpbGVzLlxuIgorI3wgIiAgLS1mc3lzLXRhcmZpbGUgPGRlYj4gICAgICAgICAgICAgT3V0cHV0IGZpbGVzeXN0ZW0gdGFyZmlsZS5cbiIKKyN8ICJcbiIKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtYnwtLWJ1aWxkIDxkaXJlY3Rvcnk+IFs8ZGViPl0gICBCdWlsZCBhbiBhcmNoaXZlLlxuIgorIiAgLWN8LS1jb250ZW50cyA8ZGViPiAgICAgICAgICAgICAgTGlzdCBjb250ZW50cy5cbiIKKyIgIC1JfC0taW5mbyA8ZGViPiBbPGNmaWxlPiAuLi5dICAgIFNob3cgaW5mbyB0byBzdGRvdXQuXG4iCisiICAtV3wtLXNob3cgPGRlYj4gICAgICAgICAgICAgICAgICBTaG93IGluZm9ybWF0aW9uIG9uIHBhY2thZ2UocylcbiIKKyIgIC1mfC0tZmllbGQgPGRlYj4gWzxjZmllbGQ+IC4uLl0gIFNob3cgZmllbGQocykgdG8gc3Rkb3V0LlxuIgorIiAgLWV8LS1jb250cm9sIDxkZWI+IFs8ZGlyZWN0b3J5Pl0gRXh0cmFjdCBjb250cm9sIGluZm8uXG4iCisiICAteHwtLWV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gICBFeHRyYWN0IGZpbGVzLlxuIgorIiAgLVh8LS12ZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PiAgRXh0cmFjdCAmIGxpc3QgZmlsZXMuXG4iCisiICAtUnwtLXJhdy1leHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFeHRyYWN0IGNvbnRyb2wgaW5mbyBhbmQgZmlsZXMuXG4iCisiICAtLWZzeXMtdGFyZmlsZSA8ZGViPiAgICAgICAgICAgICBPdXRwdXQgZmlsZXN5c3RlbSB0YXJmaWxlLlxuIgorIlxuIgorbXNnc3RyICIiCisi5ZG95Luk77yaXG4iCisiICAtYnwtLWJ1aWxkIDznm67lvZU+IFs8ZGViPl0gICAgICAgIOaehOW7uuS4gOS4qui9r+S7tuWMheOAglxuIgorIiAgLWN8LS1jb250ZW50cyA8ZGViPiAgICAgICAgICAgICAg5YiX5Ye65omA5ZCr5YaF5a6544CCXG4iCisiICAtSXwtLWluZm8gPGRlYj4gWzxjZmlsZT4gLi4uXSAgICDmiZPljbDnm7jlhbPkv6Hmga/liLDmoIflh4bovpPlh7rjgIJcbiIKKyIgIC1XfC0tc2hvdyA8ZGViPiAgICAgICAgICAgICAgICAgIOaJk+WNsOWvueW6lOi9r+S7tuWMheeahOeugOaYjuS/oeaBr+OAglxuIgorIiAgLWZ8LS1maWVsZCA8ZGViPiBbPGNmaWVsZD4gLi4uXSAg5oqK5a2X5q615YaF5a655omT5Y2w5Yiw5qCH5YeG6L6T5Ye644CCXG4iCisiICAtZXwtLWNvbnRyb2wgPGRlYj4gWzznm67lvZU+XSAgICAgIOWwhuS4u+aOp+S/oeaBr+ino+WOi+OAglxuIgorIiAgLXh8LS1leHRyYWN0IDxkZWI+IDznm67lvZU+ICAgICAgICDlsIbmiYDmnInmlofku7bop6PljovjgIJcbiIKKyIgIC1YfC0tdmV4dHJhY3QgPGRlYj4gPOebruW9lT4gICAgICAg6Kej5Y6L5omA5pyJ5paH5Lu25bm25omT5Y2w5YW25YiX6KGo44CCXG4iCisiICAtLWZzeXMtdGFyZmlsZSA8ZGViPiAgICAgICAgICAgICDovpPlh7rmlofku7bns7vnu5/nmoQgdGFyIOaWh+S7tuOAglxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6OTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIjxkZWI+IGlzIHRoZSBmaWxlbmFtZSBvZiBhIERlYmlhbiBmb3JtYXQgYXJjaGl2ZS5cbiIKKyI8Y2ZpbGU+IGlzIHRoZSBuYW1lIG9mIGFuIGFkbWluaXN0cmF0aXZlIGZpbGUgY29tcG9uZW50LlxuIgorIjxjZmllbGQ+IGlzIHRoZSBuYW1lIG9mIGEgZmllbGQgaW4gdGhlIG1haW4gYGNvbnRyb2wnIGZpbGUuXG4iCisiXG4iCittc2dzdHIgIiIKKyI8ZGViPiDmmK8gRGViaWFuIOagvOW8j+W9kuaho+aWh+S7tueahOaWh+S7tuWQjeOAglxuIgorIjxjZmlsZT4g5piv566h55CG5paH5Lu257uE5Lu255qE5paH5Lu25ZCN44CCXG4iCisiPGNmaWVsZD4g5piv5Li7IGNvbnRyb2wg5paH5Lu25Lit55qE5bGe5oCn5a2X5q6155qE5ZCN5a2X44CCXG4iCisiXG4iCisKKyM6IGRwa2ctZGViL21haW4uYzo5OQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIk9wdGlvbnM6XG4iCisjfCAiICAtLXNob3dmb3JtYXQ9PGZvcm1hdD4gICAgICAgICAgICBVc2UgYWx0ZXJuYXRpdmUgZm9ybWF0IGZvciAtLXNob3cuXG4iCisjfCAiICAtRCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbmFibGUgZGVidWdnaW5nIG91dHB1dC5cbiIKKyN8ICIgIC0tb2xkLCAtLW5ldyAgICAgICAgICAgICAgICAgICAgIFNlbGVjdCBhcmNoaXZlIGZvcm1hdC5cbiIKKyN8ICIgIC0tbm9jaGVjayAgICAgICAgICAgICAgICAgICAgICAgIFN1cHByZXNzIGNvbnRyb2wgZmlsZSBjaGVjayAoYnVpbGQgIgorI3wgImJhZFxuIgorI3wgIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWNrYWdlcykuXG4iCisjfCAiICAteiMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTZXQgdGhlIGNvbXByZXNzaW9uIGxldmVsIHdoZW4gIgorI3wgImJ1aWxkaW5nLlxuIgorI3wgIiAgLVo8dHlwZT4gICAgICAgICAgICAgICAgICAgICAgICAgU2V0IHRoZSBjb21wcmVzc2lvbiB0eXBlIHVzZWQgd2hlbiAiCisjfCAiYnVpbGRpbmcuXG4iCisjfCAiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFsbG93ZWQgdHlwZXM6IGd6aXAsIHh6LCBiemlwMiwgIgorI3wgImx6bWEsIG5vbmUuXG4iCisjfCAiXG4iCittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLXNob3dmb3JtYXQ9PGZvcm1hdD4gICAgICAgICAgICBVc2UgYWx0ZXJuYXRpdmUgZm9ybWF0IGZvciAtLXNob3cuXG4iCisiICAtdiwgLS12ZXJib3NlICAgICAgICAgICAgICAgICAgICBFbmFibGUgdmVyYm9zZSBvdXRwdXQuXG4iCisiICAtRCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbmFibGUgZGVidWdnaW5nIG91dHB1dC5cbiIKKyIgIC0tb2xkLCAtLW5ldyAgICAgICAgICAgICAgICAgICAgIFNlbGVjdCBhcmNoaXZlIGZvcm1hdC5cbiIKKyIgIC0tbm9jaGVjayAgICAgICAgICAgICAgICAgICAgICAgIFN1cHByZXNzIGNvbnRyb2wgZmlsZSBjaGVjayAoYnVpbGQgYmFkXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhY2thZ2VzKS5cbiIKKyIgIC16IyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNldCB0aGUgY29tcHJlc3Npb24gbGV2ZWwgd2hlbiBidWlsZGluZy5cbiIKKyIgIC1aPHR5cGU+ICAgICAgICAgICAgICAgICAgICAgICAgIFNldCB0aGUgY29tcHJlc3Npb24gdHlwZSB1c2VkIHdoZW4gIgorImJ1aWxkaW5nLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBbGxvd2VkIHR5cGVzOiBnemlwLCB4eiwgYnppcDIsIGx6bWEsICIKKyJub25lLlxuIgorIlxuIgorbXNnc3RyICIiCisi6YCJ6aG577yaXG4iCisiICAtLXNob3dmb3JtYXQ9POagvOW8jz4gICAgICAgICAgICAgIOeUqOS6jiAtLXNob3cg55qE5pu/5Luj5qC85byP6L6T5Ye6LlxuIgorIiAgLUQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg5byA5ZCv6LCD6K+V5L+h5oGv55qE6L6T5Ye6LlxuIgorIiAgLS1vbGTvvIwtLW5ldyAgICAgICAgICAgICAgICAgICAgIOmAieaLqeaho+ahiOeahOagvOW8jy5cbiIKKyIgIC0tbm9jaGVjayAgICAgICAgICAgICAgICAgICAgICAgIOWFs+mXreWvueS4u+aOp+aWh+S7tueahOajgOafpSjlj6/og73lr7zoh7TnlJ/miJBcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg5Z2P55qE6L2v5Lu25YyFKeOAglxuIgorIiAgLXojICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg6K6+572u5p6E6YCg6L2v5Lu25YyF5pe277yM5L2/55So55qE5Y6L57yp546H44CCXG4iCisiICAtWjznsbvlnos+ICAgICAgICAgICAgICAgICAgICAgICAgIOiuvue9ruW7uuaho+aXtuaJgOS9v+eUqOeahOWOi+e8qeexu+Wei+OAglxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDlj6/nlKjlgLzvvJpnemlw44CBYnppcDLjgIFsem1h44CBbm9uZeOAglxuIgorIlxuIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTIxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJVc2UgYGRwa2cnIHRvIGluc3RhbGwgYW5kIHJlbW92ZSBwYWNrYWdlcyBmcm9tIHlvdXIgc3lzdGVtLCBvclxuIgorImBkc2VsZWN0JyBvciBgYXB0aXR1ZGUnIGZvciB1c2VyLWZyaWVuZGx5IHBhY2thZ2UgbWFuYWdlbWVudC4gIFBhY2thZ2VzXG4iCisidW5wYWNrZWQgdXNpbmcgYGRwa2ctZGViIC0tZXh0cmFjdCcgd2lsbCBiZSBpbmNvcnJlY3RseSBpbnN0YWxsZWQgIVxuIgorbXNnc3RyICIiCisiXG4iCisi5L2/55SoIGRwa2cg5ZG95Luk5Y+v5Lul5Zyo57O757uf5Lit5a6J6KOF5ZKM5Y246L296L2v5Lu25YyF77yMXG4iCisiIGRzZWxlY3Qg5ZG95Luk5YiZ55So5LqO566A5L6/55qE6L2v5Lu25YyF566h55CG44CC5Y+m5aSW77yMXG4iCisi6YCa6L+HIGRwa2ctZGViIC0tZXh0cmFjdCDlkb3ku6Top6PljovnmoTova/ku7bljIXlsIbkuI1cbiIKKyLkvJrooqvmraPnoa7lronoo4XvvIFcbiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjEzMgorbXNnaWQgIiIKKyJUeXBlIGRwa2ctZGViIC0taGVscCBmb3IgaGVscCBhYm91dCBtYW5pcHVsYXRpbmcgKi5kZWIgZmlsZXM7XG4iCisiVHlwZSBkcGtnIC0taGVscCBmb3IgaGVscCBhYm91dCBpbnN0YWxsaW5nIGFuZCBkZWluc3RhbGxpbmcgcGFja2FnZXMuIgorbXNnc3RyICIiCisi6L6T5YWlIGRwa2ctZGViIC0taGVscCDlj6/ojrflvpfmnInlhbPmk43kvZwgKi5kZWIg5paH5Lu255qE5biu5Yqp77ybXG4iCisi6L6T5YWlIGRwa2cgLS1oZWxwIOWPr+iOt+W+l+acieWFs+WuieijheWSjOWNuOi9vei9r+S7tuWMheeahOW4ruWKqeOAgiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjE0OAorIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGludGVnZXIgZm9yIC0lYzogJyUuMjUwcyciCittc2dzdHIgIuaXoOaViOeahOaVtOWei+WPguaVsCAtJWPvvJolLjI1MHMiCisKKyM6IGRwa2ctZGViL21haW4uYzoxNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjb21wcmVzc2lvbiBsZXZlbCBmb3IgLSVjOiAlbGQnIgorbXNnc3RyICLml6DmlYjnmoTljovnvKnnrYnnuqcgLSVj77yaJWxkICIKKworIzogZHBrZy1kZWIvbWFpbi5jOjE2MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGNvbXByZXNzaW9uIHR5cGUgYCVzJyEiCittc2dzdHIgIuaXoOazleivhuWIq+eahOWOi+e8qeexu+WeiyAlcyDvvIEiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjUyCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBkaWdpdCAoY29kZSAlZCkgaW4gJXMiCittc2dzdHIgIuaWh+S7tiAlMSQuMjUwcyDlt7LmjZ/mr4EgLSDlnKggJTMkcyDkuK3mnInml6DmlYjmlbDlrZco5Y2zICUyJGQpIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzo2MAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSAlLjI1MHMgbWlzc2luZyIKK21zZ3N0ciAi5paH5Lu2ICUuMjUwcyDlt7Lnu4/mjZ/mr4EgLSDml6Dms5Xmib7liLAgJS4yNTBzIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzo2MworIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBtaXNzaW5nIG5ld2xpbmUgYWZ0ZXIgJS4yNTBzIgorbXNnc3RyICLmlofku7YgJS4yNTBzIOW3sue7j+aNn+avgSAtIOWcqCAlLjI1MHMg5ZCO5rKh5pyJ5Y+R546w5o2i6KGM56ymIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzo4OSBkcGtnLXNwbGl0L21haW4uYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcmVhZGluZyAlLjI1MHMiCittc2dzdHIgIuivu+WPliAlLjI1MHMg5pe25Ye66ZSZIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIG1hZ2ljIGF0IGVuZCBvZiBmaXJzdCBoZWFkZXIiCittc2dzdHIgIuaWh+S7tiAlLjI1MHMg5bey5o2f5q+BIC0g5Zyo56ys5LiA5Liq5paH5Lu25aS05pyr5bC+5pyJ6ZSZ6K+v55qE6a2U5pWwKG1hZ2ljKSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTEzCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBwYWRkaW5nIGNoYXJhY3RlciAoY29kZSAlZCkiCittc2dzdHIgIuaWh+S7tiAlLjI1MHMg5bey57uP5o2f5q+BIC0g6ZSZ6K+v55qE5aGr5YWF5a2X56ymKOWFtuS7o+eggeS4uiAlZCkiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjExNworIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBudWxscyBpbiBpbmZvIHNlY3Rpb24iCittc2dzdHIgIuaWh+S7tiAlLjI1MHMg5bey57uP5o2f5q+BIC0gaW5mbyDlsI/oioLkuK3lj5HnjrDkuobnqbrlrZfnrKYobnVsbCkiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyMgorbXNnaWQgImZvcm1hdCB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAi5qC85byP54mI5pysIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBmb3JtYXQgdmVyc2lvbiBgJS4yNTBzJyAtIHlvdSBuZWVkIGEgbmV3ZXIgZHBrZy1zcGxpdCIKK21zZ3N0ciAiIgorIuaWh+S7tiAlLjI1MHMg5qC85byP55qE54mI5pys5pivICUuMjUwcyAgLSDmgqjpnIDopoHnlKjmm7TmlrDniYjmnKznmoQgZHBrZy1zcGxpdCDmnaXlpITnkIblroMiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyNworbXNnaWQgInBhY2thZ2UgbmFtZSIKK21zZ3N0ciAi6L2v5Lu25YyF5ZCN77yaIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMjgKK21zZ2lkICJwYWNrYWdlIHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICLova/ku7bljIXniYjmnKzlj7ciCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyOQorbXNnaWQgInBhY2thZ2UgZmlsZSBNRDUgY2hlY2tzdW0iCittc2dzdHIgIui9r+S7tuWMheaWh+S7tiBNRDUg5qCh6aqM5ZKMIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIE1ENSBjaGVja3N1bSBgJS4yNTBzJyIKK21zZ3N0ciAi5paH5Lu2ICUuMjUwcyDlt7Lnu4/mjZ/mr4EgLSBNRDUg5qCh6aqM5ZKMICUuMjUwcyDkuI3nrKYiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEzNCBkcGtnLXNwbGl0L2luZm8uYzoxMzUKK21zZ2lkICJhcmNoaXZlIHRvdGFsIHNpemUiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTM2IGRwa2ctc3BsaXQvaW5mby5jOjEzNworIywgZnV6enkKKyN8IG1zZ2lkICJwYXJ0IG9mZnNldCIKK21zZ2lkICJhcmNoaXZlIHBhcnQgb2Zmc2V0IgorbXNnc3RyICLpg6jliIblgY/np7vph48iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEzOQorIywgZnV6enkKKyN8IG1zZ2lkICJwYXJ0IG51bWJlcnMiCittc2dpZCAiYXJjaGl2ZSBwYXJ0IG51bWJlcnMiCittc2dzdHIgIumDqOWIhueJiOacrOWPtyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTQyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBubyBzbGFzaCBiZXR3ZWVuIHBhcnQgbnVtYmVycyIKK21zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBubyBzbGFzaCBiZXR3ZWVuIGFyY2hpdmUgcGFydCBudW1iZXJzIgorbXNnc3RyICLmlofku7YgJS4yNTBzIOW3sue7j+aNn+avgSAtIOWcqOWIhuWdl+e8luWPt+S5i+mXtOayoeacieWPkeeOsOaWnOadoCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTQ1CisjLCBmdXp6eQorI3wgbXNnaWQgIm51bWJlciBvZiBwYXJ0cyIKK21zZ2lkICJudW1iZXIgb2YgYXJjaGl2ZSBwYXJ0cyIKK21zZ3N0ciAi6YOo5YiG55qE5pWw6YePIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDcKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBudW1iZXIgb2YgcGFydHMiCittc2dpZCAiZmlsZSAnJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIG51bWJlciBvZiBhcmNoaXZlIHBhcnRzIgorbXNnc3RyICLmlofku7YgJS4yNTBzIOW3sue7j+aNn+avgSAtIOmDqOWIhue8luWPt+acieivryIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTQ5CisjLCBmdXp6eQorI3wgbXNnaWQgInBhcnRzIG51bWJlciIKK21zZ2lkICJhcmNoaXZlIHBhcnRzIG51bWJlciIKK21zZ3N0ciAi6YOo5YiG5Y+3IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBwYXJ0IG51bWJlciIKK21zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgYXJjaGl2ZSBwYXJ0IG51bWJlciIKK21zZ3N0ciAi5paH5Lu2ICUuMjUwcyDlt7Lnu4/mjZ/mr4EgLSDliIblnZfnvJblj7fmnInor68iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE1NworIywgZnV6enkKKyN8IG1zZ2lkICJwYWNrYWdlIG5hbWUiCittc2dpZCAicGFja2FnZSBhcmNoaXRlY3R1cmUiCittc2dzdHIgIui9r+S7tuWMheWQje+8miIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTY2CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBtYWdpYyBhdCBlbmQgb2Ygc2Vjb25kIGhlYWRlciIKK21zZ3N0ciAi5paH5Lu2ICUuMjUwcyDlt7Lnu4/mjZ/mr4EgLSDlnKjnrKzkuozkuKrmlofku7blpLTmnKvlsL7nmoTprZTmlbAobWFnaWMp5pyJ6K+vIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gc2Vjb25kIG1lbWJlciBpcyBub3QgZGF0YSBtZW1iZXIiCittc2dzdHIgIuaWh+S7tiAlLjI1MHMg5bey57uP5o2f5q+BIC0g56ys5LqM5Liq5oiQ5ZGY5LiN5piv5pWw5o2u5oiQ5ZGYIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gd3JvbmcgbnVtYmVyIG9mIHBhcnRzIGZvciBxdW90ZWQgc2l6ZXMiCittc2dzdHIgIuaWh+S7tiAlLjI1MHMg5bey57uP5o2f5q+BIC0g5qCH56ew5aSn5bCP55qE5YiG5Z2X55qE5pWw6YeP5pyJ6K+vIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gc2l6ZSBpcyB3cm9uZyBmb3IgcXVvdGVkIHBhcnQgbnVtYmVyIgorbXNnc3RyICLmlofku7YgJS4yNTBzIOW3sue7j+aNn+avgSAtIOagh+ensOWIhuWdl+e8luWPt+eahOmVv+W6puacieivryIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTg0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmc3RhdCBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuaXoOazlSBmc3RhdCDliIblnZfmlofku7YgJS4yNTBzIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxODkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gdG9vIHNob3J0IgorbXNnc3RyICLmlofku7YgJS4yNTBzIOW3sue7j+aNn+avgSAtIOaWh+S7tui/h+WwjyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjAyIGRwa2ctc3BsaXQvaW5mby5jOjI0OQorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgb3BlbiBhcmNoaXZlIHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi5peg5rOV5omT5byA5a2Y5qGj55qE5YiG5Z2X5paH5Lu2ICUuMjUwcyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjA0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgbm90IGFuIGFyY2hpdmUgcGFydCIKK21zZ3N0ciAi5paH5Lu2ICUuMjUwcyDlubbpnZ7kuIDkuKrljIXmlofku7bnmoTliIblnZfmlofku7YiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjIwOQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiVzOlxuIgorI3wgIiAgICBQYXJ0IGZvcm1hdCB2ZXJzaW9uOiAgICAgICAgICAgICVzXG4iCisjfCAiICAgIFBhcnQgb2YgcGFja2FnZTogICAgICAgICAgICAgICAgJXNcbiIKKyN8ICIgICAgICAgIC4uLiB2ZXJzaW9uOiAgICAgICAgICAgICAgICAlc1xuIgorI3wgIiAgICAgICAgLi4uIE1ENSBjaGVja3N1bTogICAgICAgICAgICVzXG4iCisjfCAiICAgICAgICAuLi4gbGVuZ3RoOiAgICAgICAgICAgICAgICAgJWx1IGJ5dGVzXG4iCisjfCAiICAgICAgICAuLi4gc3BsaXQgZXZlcnk6ICAgICAgICAgICAgJWx1IGJ5dGVzXG4iCisjfCAiICAgIFBhcnQgbnVtYmVyOiAgICAgICAgICAgICAgICAgICAgJWQvJWRcbiIKKyN8ICIgICAgUGFydCBsZW5ndGg6ICAgICAgICAgICAgICAgICAgICAlemkgYnl0ZXNcbiIKKyN8ICIgICAgUGFydCBvZmZzZXQ6ICAgICAgICAgICAgICAgICAgICAlbHUgYnl0ZXNcbiIKKyN8ICIgICAgUGFydCBmaWxlIHNpemUgKHVzZWQgcG9ydGlvbik6ICAlbHUgYnl0ZXNcbiIKKyN8ICJcbiIKK21zZ2lkICIiCisiJXM6XG4iCisiICAgIFBhcnQgZm9ybWF0IHZlcnNpb246ICAgICAgICAgICAgJXNcbiIKKyIgICAgUGFydCBvZiBwYWNrYWdlOiAgICAgICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIHZlcnNpb246ICAgICAgICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gYXJjaGl0ZWN0dXJlOiAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiBNRDUgY2hlY2tzdW06ICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIGxlbmd0aDogICAgICAgICAgICAgICAgICVqZCBieXRlc1xuIgorIiAgICAgICAgLi4uIHNwbGl0IGV2ZXJ5OiAgICAgICAgICAgICVqZCBieXRlc1xuIgorIiAgICBQYXJ0IG51bWJlcjogICAgICAgICAgICAgICAgICAgICVkLyVkXG4iCisiICAgIFBhcnQgbGVuZ3RoOiAgICAgICAgICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgIFBhcnQgb2Zmc2V0OiAgICAgICAgICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgIFBhcnQgZmlsZSBzaXplICh1c2VkIHBvcnRpb24pOiAgJWpkIGJ5dGVzXG4iCisiXG4iCittc2dzdHIgIiIKKyIlc++8mlxuIgorIiAgICDliIblnZfmlofku7bnmoTmoLzlvI/niYjmnKzvvJogICAgICAgICAgICAlc1xuIgorIiAgICDmmK/ov5nkuKrova/ku7bljIXnmoTliIblnZfvvJogICAgICAgICAgICAlc1xuIgorIiAgICAgICAgIC4uLiDniYjmnKzvvJogICAgICAgICAgICAgICAgICVzXG4iCisiICAgICAgICAgLi4uIE1ENSDmoKHpqozlkozvvJogICAgICAgICAgICVzXG4iCisiICAgICAgICAgLi4uIOWkp+Wwj++8miAgICAgICAgICAgICAgICAgJWx1IOWtl+iKglxuIgorIiAgICAgICAgIC4uLiDmr4/kuKrliIblnZfnmoTlpKflsI/vvJogICAgICAgJWx1IOWtl+iKglxuIgorIiAgICDliIblnZfmlofku7bnmoTnvJblj7fvvJogICAgICAgICAgICAgICAgJWQvJWRcbiIKKyIgICAg5YiG5Z2X5paH5Lu255qE5Lit5YiG5Z2X55qE5aSn5bCP77yaICAgICAgICAlemkg5a2X6IqCXG4iCisiICAgIOWIhuWdl+aWh+S7tueahOWBj+enu+S9jee9ru+8miAgICAgICAgICAgICVsdSDlrZfoioJcbiIKKyIgICAg5YiG5Z2X5paH5Lu2KOiiq+S9v+eUqOeahOmDqOWIhinnmoTlpKflsI/vvJogICVsdSDlrZfoioJcbiIKKyJcbiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjI1CisjLCBmdXp6eQorI3wgbXNnaWQgIjx1bmtub3duPiIKK21zZ2N0eHQgImFyY2hpdGVjdHVyZSIKK21zZ2lkICI8dW5rbm93bj4iCittc2dzdHIgIjzmnKrnn6U+IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyNDQgZHBrZy1zcGxpdC9qb2luLmM6MTA1CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgcmVxdWlyZXMgb25lIG9yIG1vcmUgcGFydCBmaWxlIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS0lcyDpnIDopoHkuIDkuKrmiJblpJrkuKrpg6jliIbmlofku7bkvZzkuLrlj4LmlbAiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjI1NQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlcycgaXMgbm90IGFuIGFyY2hpdmUgcGFydFxuIgorbXNnc3RyICLmlofku7YgJXMgIOS4jeaYr+S4gOS4quWMheaWh+S7tueahOWIhuWdl+aWh+S7tlxuIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo0NAorIywgYy1mb3JtYXQKK21zZ2lkICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0OiAiCittc2dpZF9wbHVyYWwgIlB1dHRpbmcgcGFja2FnZSAlcyB0b2dldGhlciBmcm9tICVkIHBhcnRzOiAiCittc2dzdHJbMF0gIuS7jiAlMiRkIOS4qumDqOWIhuaVtOWQiOi9r+S7tuWMhSAlMSRz77yaIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBvdXRwdXQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi5peg5rOV5omT5byA6L6T5Ye65paH5Lu2ICUuMjUwcyIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIChyZSlvcGVuIGlucHV0IHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi5peg5rOVKOmHjeaWsCnmiZPlvIDkvZzkuLrovpPlhaXnmoTliIblnZfmlofku7YgJS4yNTBzIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1OAorIywgZnV6enkKKyN8IG1zZ2lkICJTa2lwcGluZyBkZXNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dpZCAic2tpcHBpbmcgc3BsaXQgcGFja2FnZSBoZWFkZXIiCittc2dzdHIgIuW/veeVpeS6huiiq+WPlua2iOmAieaLqeeahOi9r+S7tuWMhSAlc+OAglxuIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1OQorIywgZnV6enkKKyN8IG1zZ2lkICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0OiAiCisjfCBtc2dpZF9wbHVyYWwgIlB1dHRpbmcgcGFja2FnZSAlcyB0b2dldGhlciBmcm9tICVkIHBhcnRzOiAiCittc2dpZCAic3BsaXQgcGFja2FnZSBwYXJ0IgorbXNnc3RyICLku44gJTIkZCDkuKrpg6jliIbmlbTlkIjova/ku7bljIUgJTEkc++8miIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NjkgZHBrZy1zcGxpdC9zcGxpdC5jOjIzNworIywgYy1mb3JtYXQKK21zZ2lkICJkb25lXG4iCittc2dzdHIgIuWlveS6hlxuIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo4NQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlcyBgJS4yNTBzJyBhbmQgYCUuMjUwcycgYXJlIG5vdCBwYXJ0cyBvZiB0aGUgc2FtZSBmaWxlIgorbXNnc3RyICLmlofku7YgJS4yNTBzIOWSjCAlLjI1MHMg5bm25LiN5ZCM5bGe5LiA5Liq5YyF5paH5Lu255qE5YiG5Z2X5paH5Lu2IgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo5MAorIywgYy1mb3JtYXQKK21zZ2lkICJ0aGVyZSBhcmUgc2V2ZXJhbCB2ZXJzaW9ucyBvZiBwYXJ0ICVkIC0gYXQgbGVhc3QgYCUuMjUwcycgYW5kIGAlLjI1MHMnIgorbXNnc3RyICLnrKwgJWQg5Liq5YiG5Z2X5paH5Lu25pyJ5aW95Yeg5Liq54mI5pysIC0g5YW25Lit6Iez5bCR5pyJICUuMjUwcyDlkowgJS4yNTBzIOS4pOS4qiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6MTI4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhcnQgJWQgaXMgbWlzc2luZyIKK21zZ3N0ciAi57y65bCR56ysICVkIOS4quWIhuWdlyIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6NDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuIGAlcycgcGFja2FnZSBzcGxpdC9qb2luIHRvb2w7IHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkRlYmlhbiAlcyDova/ku7bljIXliIflibIv6YeN57uE5bel5YW3ICVzIOeJiOOAglxuIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo0OQorIywgYy1mb3JtYXQKK21zZ2lkICJDb3B5cmlnaHQgKEMpIDE5OTQtMTk5NiBJYW4gSmFja3Nvbi5cbiIKK21zZ3N0ciAi54mI5p2D5omA5pyJKEMpIDE5OTQtMTk5NiBJYW4gSmFja3NvbuOAglxuIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo2NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtc3wtLXNwbGl0IDxmaWxlPiBbPHByZWZpeD5dICAgICBTcGxpdCBhbiBhcmNoaXZlLlxuIgorIiAgLWp8LS1qb2luIDxwYXJ0PiA8cGFydD4gLi4uICAgICAgSm9pbiBwYXJ0cyB0b2dldGhlci5cbiIKKyIgIC1JfC0taW5mbyA8cGFydD4gLi4uICAgICAgICAgICAgIERpc3BsYXkgaW5mbyBhYm91dCBhIHBhcnQuXG4iCisiICAtYXwtLWF1dG8gLW8gPGNvbXBsZXRlPiA8cGFydD4gICBBdXRvLWFjY3VtdWxhdGUgcGFydHMuXG4iCisiICAtbHwtLWxpc3RxICAgICAgICAgICAgICAgICAgICAgICBMaXN0IHVubWF0Y2hlZCBwaWVjZXMuXG4iCisiICAtZHwtLWRpc2NhcmQgWzxmaWxlbmFtZT4gLi4uXSAgICBEaXNjYXJkIHVubWF0Y2hlZCBwaWVjZXMuXG4iCisiXG4iCittc2dzdHIgIiIKKyLlkb3ku6TvvJpcbiIKKyIgIC1zfC0tc3BsaXQgPOaWh+S7tj4gWzzliY3nvIA+XSAgICAgICAgICDliIblibLljIXmlofku7bjgIJcbiIKKyIgIC1qfC0tam9pbiA85YiG5Z2X5paH5Lu2PiA85YiG5Z2X5paH5Lu2PiAuLi4g5oqK5ZCE5Liq5YiG5Z2X5ZCI5bm25Yiw5LiA6LW344CCXG4iCisiICAtSXwtLWluZm8gPOWIhuWdl+aWh+S7tj4gLi4uICAgICAgICAgICAg5pi+56S65YiG5Z2X5paH5Lu255qE55u45YWz5L+h5oGv44CCXG4iCisiICAtYXwtLWF1dG8gLW8gPOWujOaVtD4gPOWIhuWdl+aWh+S7tj4gICAgICDoh6rliqjntK/np6/liIblnZfmlofku7bjgIJcbiIKKyIgIC1sfC0tbGlzdHEgICAgICAgICAgICAgICAgICAgICAgICAgIOWIl+WHuuS4jeWMuemFjeeahOmDqOWIhuOAglxuIgorIiAgLWR8LWRpc2NhcmQgWzzmlofku7blkI0+IC4uLl0gICAgICAgICAg5b+955Wl5LiN5Yy56YWN55qE6YOo5YiG44CCXG4iCisiXG4iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjgyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiT3B0aW9uczpcbiIKKyN8ICIgIC0tZGVwb3RkaXIgPGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLyVzLlxuIgorI3wgIiAgLVN8LS1wYXJ0c2l6ZSA8c2l6ZT4gICAgICAgICAgICAgSW4gS2lCLCBmb3IgLXMgKGRlZmF1bHQgaXMgNDUwKS5cbiIKKyN8ICIgIC1vfC0tb3V0cHV0IDxmaWxlPiAgICAgICAgICAgICAgIEZvciAtaiAoZGVmYXVsdCBpcyA8cGFja2FnZT4tPHZlcnNpb24+LiIKKyN8ICJkZWIpLlxuIgorI3wgIiAgLVF8LS1ucHF1aWV0ICAgICAgICAgICAgICAgICAgICAgQmUgcXVpZXQgd2hlbiAtYSBpcyBub3QgYSBwYXJ0LlxuIgorI3wgIiAgLS1tc2RvcyAgICAgICAgICAgICAgICAgICAgICAgICAgR2VuZXJhdGUgOC4zIGZpbGVuYW1lcy5cbiIKKyN8ICJcbiIKKyN8ICJFeGl0IHN0YXR1czogMCA9IE9LOyAgMSA9IC1hIGlzIG5vdCBhIHBhcnQ7ICAyID0gdHJvdWJsZSFcbiIKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tZGVwb3RkaXIgPGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLyVzLlxuIgorIiAgLVN8LS1wYXJ0c2l6ZSA8c2l6ZT4gICAgICAgICAgICAgSW4gS2lCLCBmb3IgLXMgKGRlZmF1bHQgaXMgNDUwKS5cbiIKKyIgIC1vfC0tb3V0cHV0IDxmaWxlPiAgICAgICAgICAgICAgIEZpbGVuYW1lLCBmb3IgLWogKGRlZmF1bHQgaXNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhY2thZ2U+Xzx2ZXJzaW9uPl88YXJjaD4uZGViKS5cbiIKKyIgIC1RfC0tbnBxdWlldCAgICAgICAgICAgICAgICAgICAgIEJlIHF1aWV0IHdoZW4gLWEgaXMgbm90IGEgcGFydC5cbiIKKyIgIC0tbXNkb3MgICAgICAgICAgICAgICAgICAgICAgICAgIEdlbmVyYXRlIDguMyBmaWxlbmFtZXMuXG4iCisiXG4iCittc2dzdHIgIiIKKyLpgInpobnvvJpcbiIKKyIgIC0tZGVwb3RkaXIgPOebruW9lT4gICAgICAgICAgICAgICAg5L2/55SoPOebruW9lT7ogIzpnZ4gJXMvJXPjgIJcbiIKKyIgIC1TfC0tcGFydHNpemUgPOWkp+Wwjz4gICAgICAgICAgICAgLXMg55qE5Y2V5L2N5pS555SoIEtpQiAo6buY6K6k5pivIDQ1MCnjgIJcbiIKKyIgIC1vfC0tb3V0cHV0IDzmlofku7Y+ICAgICAgICAgICAgICAg5a+55bqUIC1qICjpu5jorqTmlofku7blkI3mmK8gPOi9r+S7tuWMheWQjT4tPOeJiOacrOWPtz4uIgorImRlYinjgIJcbiIKKyIgIC1RfC0tbnBxdWlldCAgICAgICAgICAgICAgICAgICAgIOS4jeeUqCAtYSDml7bvvIzlsJHovpPlh7rkv6Hmga/jgIJcbiIKKyIgIC0tbXNkb3MgICAgICAgICAgICAgICAgICAgICAgICAgIOS9v+eUqCA4LjMg55qE5paH5Lu25ZCN5qC85byP44CCXG4iCisiXG4iCisi6L+U5Zue54q25oCB77yaMCA9IOS4gOWIh+ato+W4uO+8myAgMSA9IC1hIOS4jeaYr+S4gOS4qumDqOWIhu+8myAgMiA9IOWHuumXrumimOS6hu+8gVxuIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo5MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiRXhpdCBzdGF0dXM6XG4iCisiICAwID0gb2tcbiIKKyIgIDEgPSB3aXRoIC0tYXV0bywgZmlsZSBpcyBub3QgYSBwYXJ0XG4iCisiICAyID0gdHJvdWJsZVxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjEwMworbXNnaWQgIlR5cGUgZHBrZy1zcGxpdCAtLWhlbHAgZm9yIGhlbHAuIgorbXNnc3RyICLovpPlhaUgZHBrZy1zcGxpdCAtLWhlbHAg5bCx5Y+v5Lul6ZiF6K+75biu5Yqp5L+h5oGv44CCIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgZmlsZSBpbiAlLjI1MHMiCittc2dzdHIgIuWcqCAlLjI1MHMg5Lit5Y+R546w5pyq6aKE5pyf55qE5paH5Lu257uT5p2f56ymIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMjYKK21zZ2lkICJwYXJ0IHNpemUgaXMgZmFyIHRvbyBsYXJnZSBvciBpcyBub3QgcG9zaXRpdmUiCittc2dzdHIgIuWIhuWdl+aWh+S7tueahOWkp+Wwj+W3sui/nOi/nOi2hemVv+aIluiAheS4jeaYr+ato+aVsCIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6MTMwCisjLCBjLWZvcm1hdAorbXNnaWQgInBhcnQgc2l6ZSBtdXN0IGJlIGF0IGxlYXN0ICVkIEtpQiAodG8gYWxsb3cgZm9yIGhlYWRlcikiCittc2dzdHIgIuWIhuWdl+aWh+S7tueahOWkp+Wwj+W/hemhu+Wkp+S6jiAlZCBLaUIgKOS4uuS6huWuueS4i+aWh+S7tuWktCkiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzo5MAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBkZXBvdCBkaXJlY3RvcnkgYCUuMjUwcyciCittc2dzdHIgIuaXoOazleivu+WPlueUqOS6juWtmOaUvuaWh+S7tueahOebruW9lSAlLjI1MHMiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxMzQKK21zZ2lkICItLWF1dG8gcmVxdWlyZXMgdGhlIHVzZSBvZiB0aGUgLS1vdXRwdXQgb3B0aW9uIgorbXNnc3RyICItLWF1dG8g5ZG95Luk6ZyA6KaB5LiOIC0tb3V0cHV0IOmAiemhueS4gOWQjOS9v+eUqCIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjEzNgorbXNnaWQgIi0tYXV0byByZXF1aXJlcyBleGFjdGx5IG9uZSBwYXJ0IGZpbGUgYXJndW1lbnQiCittc2dzdHIgIi0tYXV0byDlkb3ku6TpnIDopoHkuJTku4XpnIDopoHkuIDkuKrliIblnZfmlofku7bnmoTmlofku7blkI3kvZzkuLrlj4LmlbAiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxNDAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLml6Dms5Xor7vlj5bliIblnZfmlofku7YgJS4yNTBzIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTQzCisjLCBjLWZvcm1hdAorbXNnaWQgIkZpbGUgYCUuMjUwcycgaXMgbm90IHBhcnQgb2YgYSBtdWx0aXBhcnQgYXJjaGl2ZS5cbiIKK21zZ3N0ciAi5paH5Lu2ICUuMjUwcyDlubbpnZ7lpJrljbfljIXmlofku7bnmoTkuIDkuKrliIblnZfmlofku7bjgIJcbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE3OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVvcGVuIHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi5peg5rOV5omT5byA5YiG5Z2X5paH5Lu2ICUuMjUwcyIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE4MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBuZXcgZGVwb3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi5peg5rOV5omT5byA5paw55qE5a2Y5YKo5paH5Lu2ICUuMjUwcyIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE4NAorbXNnaWQgImV4dHJhY3Rpbmcgc3BsaXQgcGFydCIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTkyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW5hbWUgbmV3IGRlcG90IGZpbGUgYCUuMjUwcycgdG8gYCUuMjUwcyciCittc2dzdHIgIuaXoOazleWwhuaWsOeahOWtmOWCqOaWh+S7tiAlLjI1MHMg6YeN5ZG95ZCN5Li6ICUuMjUwcyIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE5NgorIywgYy1mb3JtYXQKK21zZ2lkICJQYXJ0ICVkIG9mIHBhY2thZ2UgJXMgZmlsZWQgKHN0aWxsIHdhbnQgIgorbXNnc3RyICLova/ku7bljIUgJTIkcyDlhbHmnIkgJTEkZCDkuKrliIblnZfooqvlrZjmoaMgKOS9hui/mOe8uuWwkSAiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyMDAKK21zZ2lkICIgYW5kICIKK21zZ3N0ciAiIOWSjCAiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSB1c2VkLXVwIGRlcG90IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIuaXoOazleWIoOmZpOeUqOavleeahOWtmOWCqOaWh+S7tiAlLjI1MHMiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyMzUKK21zZ2lkICJKdW5rIGZpbGVzIGxlZnQgYXJvdW5kIGluIHRoZSBkZXBvdCBkaXJlY3Rvcnk6XG4iCittc2dzdHIgIuWcqOWtmOWCqOebruW9leeVmeS4i+S6huS4gOS6m+Weg+WcvuaWh+S7tu+8mlxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjQwIGRwa2ctc3BsaXQvcXVldWUuYzoyNjkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgYCUuMjUwcyciCittc2dzdHIgIuaXoOazleiOt+WPliAlLjI1MHMg55qE5L+h5oGvIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjQzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIgJXMgKCVsdSBieXRlcylcbiIKK21zZ2lkICIgJXMgKCVqZCBieXRlcylcbiIKK21zZ3N0ciAiICVzICglbHUg5a2X6IqCKVxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAlcyAobm90IGEgcGxhaW4gZmlsZSlcbiIKK21zZ3N0ciAiICVzICjkuI3mmK/mma7pgJrmlofku7YpXG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNTAKK21zZ2lkICJQYWNrYWdlcyBub3QgeWV0IHJlYXNzZW1ibGVkOlxuIgorbXNnc3RyICLljIXmlofku7blsJrmnKrooqvph43mlrDnu4TlkIjlpb3vvJpcbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI1OAorIywgYy1mb3JtYXQKK21zZ2lkICIgUGFja2FnZSAlczogcGFydChzKSAiCittc2dzdHIgIiDova/ku7bljIUgJXM6IOmDqOWIhiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI3MQorIywgYy1mb3JtYXQKK21zZ2lkICJwYXJ0IGZpbGUgYCUuMjUwcycgaXMgbm90IGEgcGxhaW4gZmlsZSIKK21zZ3N0ciAi5YiG5Z2X5paH5Lu2ICUuMjUwcyDkuI3mmK/kuIDkuKrmma7pgJrmlofku7YiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNzgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIih0b3RhbCAlbHUgYnl0ZXMpXG4iCittc2dpZCAiKHRvdGFsICVqZCBieXRlcylcbiIKK21zZ3N0ciAiKOWFseiuoSAlbHUg5a2X6IqCKVxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MzA0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBkaXNjYXJkIGAlLjI1MHMnIgorbXNnc3RyICLml6Dms5Xlv73nlaUgJS4yNTBzIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MzA1CisjLCBjLWZvcm1hdAorbXNnaWQgIkRlbGV0ZWQgJXMuXG4iCittc2dzdHIgIuW3suWwhiAlcyDliKDpmaTjgIJcbiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjcwIGRwa2ctc3BsaXQvc3BsaXQuYzo3NiBkcGtnLXNwbGl0L3NwbGl0LmM6ODEKKyMsIGZ1enp5CisjfCBtc2dpZCAiZHBrZy1kZWIgZmllbGQgZXh0cmFjdGlvbiIKK21zZ2lkICJwYWNrYWdlIGZpZWxkIHZhbHVlIGV4dHJhY3Rpb24iCittc2dzdHIgImRwa2ctZGViIOWfn+mHiuaUviIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjEzMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBzb3VyY2UgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi5peg5rOV5omT5byA5Y6f5aeL5paH5Lu2ICUuMjUwcyIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjEzMworbXNnaWQgInVuYWJsZSB0byBmc3RhdCBzb3VyY2UgZmlsZSIKK21zZ3N0ciAi5peg5rOVIGZzdGF0IOWOn+Wni+aWh+S7tiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjEzNQorIywgYy1mb3JtYXQKK21zZ2lkICJzb3VyY2UgZmlsZSBgJS4yNTBzJyBub3QgYSBwbGFpbiBmaWxlIgorbXNnc3RyICLljp/lp4vmlofku7YgJS4yNTBzIOS4jeaYr+aZrumAmuaWh+S7tiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjE1MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiUHV0dGluZyBwYWNrYWdlICVzIHRvZ2V0aGVyIGZyb20gJWQgcGFydDogIgorI3wgbXNnaWRfcGx1cmFsICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0czogIgorbXNnaWQgIlNwbGl0dGluZyBwYWNrYWdlICVzIGludG8gJWQgcGFydDogIgorbXNnaWRfcGx1cmFsICJTcGxpdHRpbmcgcGFja2FnZSAlcyBpbnRvICVkIHBhcnRzOiAiCittc2dzdHJbMF0gIuS7jiAlMiRkIOS4qumDqOWIhuaVtOWQiOi9r+S7tuWMhSAlMSRz77yaIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTkzCittc2dpZCAiIgorIkhlYWRlciBpcyB0b28gbG9uZywgbWFraW5nIHBhcnQgdG9vIGxvbmcuIFlvdXIgcGFja2FnZSBuYW1lIG9yIHZlcnNpb25cbiIKKyJudW1iZXJzIG11c3QgYmUgZXh0cmFvcmRpbmFyaWx5IGxvbmcsIG9yIHNvbWV0aGluZy4gR2l2aW5nIHVwLlxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoyNDkKK21zZ2lkICItLXNwbGl0IG5lZWRzIGEgc291cmNlIGZpbGVuYW1lIGFyZ3VtZW50IgorbXNnc3RyICItLXNwbGl0IOmcgOimgeS4gOS4quWOn+Wni+aWh+S7tuS9nOS4uuWPguaVsCIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjI1MgorbXNnaWQgIi0tc3BsaXQgdGFrZXMgYXQgbW9zdCBhIHNvdXJjZSBmaWxlbmFtZSBhbmQgZGVzdGluYXRpb24gcHJlZml4IgorbXNnc3RyICItLXNwbGl0IOmcgOimgeiHs+WkmuS4gOS4quWOn+Wni+aWh+S7tu+8jOS7peWPiuebruagh+aWh+S7tueahOaWh+S7tuWQjeWJjee8gOS9nOS4uuWPguaVsCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjg0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLTIwMDIgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDktMjAxMCBSYXBoYWVsIEhlcnR6b2cuXG4iCittc2dzdHIgIiIKKyLniYjmnYPmiYDmnIkgKEMpIDE5OTUgSWFuIEphY2tzb25cbiIKKyLniYjmnYPmiYDmnIkgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuXG4iCisi54mI5p2D5omA5pyJIChDKSAyMDA5LTIwMTAgUmFwaGFlbCBIZXJ0em9nXG4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMDEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gPGNvbW1hbmQ+XG4iCisjfCAiXG4iCisjfCAiQ29tbWFuZHM6XG4iCisjfCAiICAtLWluc3RhbGwgPGxpbms+IDxuYW1lPiA8cGF0aD4gPHByaW9yaXR5PlxuIgorI3wgIiAgICBbLS1zbGF2ZSA8bGluaz4gPG5hbWU+IDxwYXRoPl0gLi4uXG4iCisjfCAiICAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkIGEgZ3JvdXAgb2YgYWx0ZXJuYXRpdmVzIHRvIHRoZSBzeXN0ZW0uXG4iCisjfCAiICAtLXJlbW92ZSA8bmFtZT4gPHBhdGg+ICAgcmVtb3ZlIDxwYXRoPiBmcm9tIHRoZSA8bmFtZT4gZ3JvdXAgIgorI3wgImFsdGVybmF0aXZlLlxuIgorI3wgIiAgLS1yZW1vdmUtYWxsIDxuYW1lPiAgICAgIHJlbW92ZSA8bmFtZT4gZ3JvdXAgZnJvbSB0aGUgYWx0ZXJuYXRpdmVzICIKKyN8ICJzeXN0ZW0uXG4iCisjfCAiICAtLWF1dG8gPG5hbWU+ICAgICAgICAgICAgc3dpdGNoIHRoZSBtYXN0ZXIgbGluayA8bmFtZT4gdG8gYXV0b21hdGljICIKKyN8ICJtb2RlLlxuIgorI3wgIiAgLS1kaXNwbGF5IDxuYW1lPiAgICAgICAgIGRpc3BsYXkgaW5mb3JtYXRpb24gYWJvdXQgdGhlIDxuYW1lPiBncm91cC5cbiIKKyN8ICIgIC0tcXVlcnkgPG5hbWU+ICAgICAgICAgICBtYWNoaW5lIHBhcnNlYWJsZSB2ZXJzaW9uIG9mIC0tZGlzcGxheSAiCisjfCAiPG5hbWU+LlxuIgorI3wgIiAgLS1saXN0IDxuYW1lPiAgICAgICAgICAgIGRpc3BsYXkgYWxsIHRhcmdldHMgb2YgdGhlIDxuYW1lPiBncm91cC5cbiIKKyN8ICIgIC0tY29uZmlnIDxuYW1lPiAgICAgICAgICBzaG93IGFsdGVybmF0aXZlcyBmb3IgdGhlIDxuYW1lPiBncm91cCBhbmQgYXNrICIKKyN8ICJ0aGVcbiIKKyN8ICIgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2VyIHRvIHNlbGVjdCB3aGljaCBvbmUgdG8gdXNlLlxuIgorI3wgIiAgLS1zZXQgPG5hbWU+IDxwYXRoPiAgICAgIHNldCA8cGF0aD4gYXMgYWx0ZXJuYXRpdmUgZm9yIDxuYW1lPi5cbiIKKyN8ICIgIC0tYWxsICAgICAgICAgICAgICAgICAgICBjYWxsIC0tY29uZmlnIG9uIGFsbCBhbHRlcm5hdGl2ZXMuXG4iCisjfCAiXG4iCisjfCAiPGxpbms+IGlzIHRoZSBzeW1saW5rIHBvaW50aW5nIHRvICVzLzxuYW1lPi5cbiIKKyN8ICIgIChlLmcuIC91c3IvYmluL3BhZ2VyKVxuIgorI3wgIjxuYW1lPiBpcyB0aGUgbWFzdGVyIG5hbWUgZm9yIHRoaXMgbGluayBncm91cC5cbiIKKyN8ICIgIChlLmcuIHBhZ2VyKVxuIgorI3wgIjxwYXRoPiBpcyB0aGUgbG9jYXRpb24gb2Ygb25lIG9mIHRoZSBhbHRlcm5hdGl2ZSB0YXJnZXQgZmlsZXMuXG4iCisjfCAiICAoZS5nLiAvdXNyL2Jpbi9sZXNzKVxuIgorI3wgIjxwcmlvcml0eT4gaXMgYW4gaW50ZWdlcjsgb3B0aW9ucyB3aXRoIGhpZ2hlciBudW1iZXJzIGhhdmUgaGlnaGVyICIKKyN8ICJwcmlvcml0eSBpblxuIgorI3wgIiAgYXV0b21hdGljIG1vZGUuXG4iCisjfCAiXG4iCisjfCAiT3B0aW9uczpcbiIKKyN8ICIgIC0tYWx0ZGlyIDxkaXJlY3Rvcnk+ICAgICBjaGFuZ2UgdGhlIGFsdGVybmF0aXZlcyBkaXJlY3RvcnkuXG4iCisjfCAiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgY2hhbmdlIHRoZSBhZG1pbmlzdHJhdGl2ZSBkaXJlY3RvcnkuXG4iCisjfCAiICAtLXNraXAtYXV0byAgICAgICAgICAgICAgc2tpcCBwcm9tcHQgZm9yIGFsdGVybmF0aXZlcyBjb3JyZWN0bHkgIgorI3wgImNvbmZpZ3VyZWRcbiIKKyN8ICIgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBhdXRvbWF0aWMgbW9kZSAocmVsZXZhbnQgZm9yIC0tY29uZmlnICIKKyN8ICJvbmx5KVxuIgorI3wgIiAgLS12ZXJib3NlICAgICAgICAgICAgICAgIHZlcmJvc2Ugb3BlcmF0aW9uLCBtb3JlIG91dHB1dC5cbiIKKyN8ICIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBxdWlldCBvcGVyYXRpb24sIG1pbmltYWwgb3V0cHV0LlxuIgorI3wgIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisjfCAiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKK21zZ2lkICIiCisiQ29tbWFuZHM6XG4iCisiICAtLWluc3RhbGwgPGxpbms+IDxuYW1lPiA8cGF0aD4gPHByaW9yaXR5PlxuIgorIiAgICBbLS1zbGF2ZSA8bGluaz4gPG5hbWU+IDxwYXRoPl0gLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkIGEgZ3JvdXAgb2YgYWx0ZXJuYXRpdmVzIHRvIHRoZSBzeXN0ZW0uXG4iCisiICAtLXJlbW92ZSA8bmFtZT4gPHBhdGg+ICAgcmVtb3ZlIDxwYXRoPiBmcm9tIHRoZSA8bmFtZT4gZ3JvdXAgYWx0ZXJuYXRpdmUuXG4iCisiICAtLXJlbW92ZS1hbGwgPG5hbWU+ICAgICAgcmVtb3ZlIDxuYW1lPiBncm91cCBmcm9tIHRoZSBhbHRlcm5hdGl2ZXMgIgorInN5c3RlbS5cbiIKKyIgIC0tYXV0byA8bmFtZT4gICAgICAgICAgICBzd2l0Y2ggdGhlIG1hc3RlciBsaW5rIDxuYW1lPiB0byBhdXRvbWF0aWMgbW9kZS5cbiIKKyIgIC0tZGlzcGxheSA8bmFtZT4gICAgICAgICBkaXNwbGF5IGluZm9ybWF0aW9uIGFib3V0IHRoZSA8bmFtZT4gZ3JvdXAuXG4iCisiICAtLXF1ZXJ5IDxuYW1lPiAgICAgICAgICAgbWFjaGluZSBwYXJzZWFibGUgdmVyc2lvbiBvZiAtLWRpc3BsYXkgPG5hbWU+LlxuIgorIiAgLS1saXN0IDxuYW1lPiAgICAgICAgICAgIGRpc3BsYXkgYWxsIHRhcmdldHMgb2YgdGhlIDxuYW1lPiBncm91cC5cbiIKKyIgIC0tZ2V0LXNlbGVjdGlvbnMgICAgICAgICBsaXN0IG1hc3RlciBhbHRlcm5hdGl2ZSBuYW1lcyBhbmQgdGhlaXIgc3RhdHVzLlxuIgorIiAgLS1zZXQtc2VsZWN0aW9ucyAgICAgICAgIHJlYWQgYWx0ZXJuYXRpdmUgc3RhdHVzIGZyb20gc3RhbmRhcmQgaW5wdXQuXG4iCisiICAtLWNvbmZpZyA8bmFtZT4gICAgICAgICAgc2hvdyBhbHRlcm5hdGl2ZXMgZm9yIHRoZSA8bmFtZT4gZ3JvdXAgYW5kIGFzayAiCisidGhlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlciB0byBzZWxlY3Qgd2hpY2ggb25lIHRvIHVzZS5cbiIKKyIgIC0tc2V0IDxuYW1lPiA8cGF0aD4gICAgICBzZXQgPHBhdGg+IGFzIGFsdGVybmF0aXZlIGZvciA8bmFtZT4uXG4iCisiICAtLWFsbCAgICAgICAgICAgICAgICAgICAgY2FsbCAtLWNvbmZpZyBvbiBhbGwgYWx0ZXJuYXRpdmVzLlxuIgorIlxuIgorbXNnc3RyICIiCisi55So5rOV77yaJXMgWzzpgInpobk+IC4uLl0gPOWRveS7pD5cbiIKKyJcbiIKKyLlkb3ku6TvvJpcbiIKKyIgIC0taW5zdGFsbCA86ZO+5o6lPiA85ZCN56ewPiA86Lev5b6EPiA85LyY5YWI57qnPlxuIgorIiAgICBbLS1zbGF2ZSA86ZO+5o6lPiA85ZCN56ewPiA86Lev5b6EPl0gLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAg5Zyo57O757uf5Lit5Yqg5YWl5LiA57uE5YCZ6YCJ6aG544CCXG4iCisiICAtLXJlbW92ZSA85ZCN56ewPiA86Lev5b6EPiAgIOS7jiA85ZCN56ewPiDmm7/mjaLnu4TkuK3ljrvpmaQgPOi3r+W+hD4g6aG544CCXG4iCisiICAtLXJlbW92ZS1hbGwgPOWQjeensD4gICAgICDku47mm7/mjaLns7vnu5/kuK3liKDpmaQgPOWQjeensD4g5pu/5o2i57uE44CCXG4iCisiICAtLWF1dG8gPOWQjeensD4gICAgICAgICAgICDlsIYgPOWQjeensD4g55qE5Li76ZO+5o6l5YiH5o2i5Yiw6Ieq5Yqo5qih5byP44CCXG4iCisiICAtLWRpc3BsYXkgPOWQjeensD4gICAgICAgICDmmL7npLrlhbPkuo4gPOWQjeensD4g5pu/5o2i57uE55qE5L+h5oGv44CCXG4iCisiICAtLWxpc3QgPOWQjeensD4gICAgICAgICAgICDliJflh7ogPOWQjeensD4g5pu/5o2i57uE5Lit5omA5pyJ55qE5Y+v55So5YCZ6YCJ6aG544CCXG4iCisiICAtLWNvbmZpZyA85ZCN56ewPiAgICAgICAgICDliJflh7ogPOWQjeensD4g5pu/5o2i57uE5Lit55qE5Y+v6YCJ6aG577yM5bm25bCx5L2/55So5YW25LitXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAg5ZOq5LiA5Liq77yM5b6B6K+i55So5oi355qE5oSP6KeB44CCXG4iCisiICAtLXNldCA85ZCN56ewPiA86Lev5b6EPiAgICAgIOWwhiA86Lev5b6EPiDorr7nva7kuLogPOWQjeensD4g55qE5YCZ6YCJ6aG544CCXG4iCisiICAtLWFsbCAgICAgICAgICAgICAgICAgICAg5a+55omA5pyJ5Y+v6YCJ6aG55LiA5LiA6LCD55SoIC0tY29uZmlnIOWRveS7pOOAglxuIgorIlxuIgorIjzpk77mjqU+IOaYr+aMh+WQkSAlcy885ZCN56ewPiDnmoTnrKblj7fpk77mjqXjgIJcbiIKKyIgICAgKOWmgiAvdXNyL2Jpbi9wYWdlcilcbiIKKyI85ZCN56ewPiDmmK/or6Xpk77mjqXmm7/mjaLnu4TnmoTkuLvmjqflkI3jgIJcbiIKKyIgICAgKOWmgiBwYWdlcilcbiIKKyI86Lev5b6EPiDmmK/lgJnpgInpobnnm67moIfmlofku7bnmoTkvY3nva7jgIJcbiIKKyIgICAgKOWmgiAvdXNyL2Jpbi9sZXNzKVxuIgorIjzkvJjlhYjnuqc+IOaYr+S4gOS4quaVtOaVsO+8jOWcqOiHquWKqOaooeW8j+S4i++8jOi/meS4quaVsOWtl+i2iumrmOeahOmAiemhue+8jOWFtuS8mOWFiOe6p+S5n+Wwsei2iumrmOOAglxuIgorIlxuIgorIumAiemhue+8mlxuIgorIiAgIC0tYWx0ZGlyIDznm67lvZU+ICAgICAgICAg5oyH5a6a5LiN5ZCM55qE5Y+v6YCJ6aG555uu5b2V44CCXG4iCisiICAgLS1hZG1pbmRpciA855uu5b2VPiAgICAgICDmjIflrprkuI3lkIznmoTnrqHnkIbnm67lvZXjgIJcbiIKKyIgICAtLXZlcmJvc2UgICAgICAgICAgICAgICDor6blsL3nmoTmk43kvZzov5vooYzkv6Hmga/vvIzmm7TlpJrnmoTovpPlh7rjgIJcbiIKKyIgICAtLXF1aWV0ICAgICAgICAgICAgICAgICDlronpnZnmqKHlvI/vvIzovpPlh7rlsL3lj6/og73lsJHnmoTkv6Hmga/jgIJcbiIKKyIgICAtLWhlbHAgICAgICAgICAgICAgICAgICDmmL7npLrmnKzluK7liqnkv6Hmga/jgIJcbiIKKyIgICAtLXZlcnNpb24gICAgICAgICAgICAgICDmmL7npLrniYjmnKzkv6Hmga/jgIJcbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiPGxpbms+IGlzIHRoZSBzeW1saW5rIHBvaW50aW5nIHRvICVzLzxuYW1lPi5cbiIKKyIgIChlLmcuIC91c3IvYmluL3BhZ2VyKVxuIgorIjxuYW1lPiBpcyB0aGUgbWFzdGVyIG5hbWUgZm9yIHRoaXMgbGluayBncm91cC5cbiIKKyIgIChlLmcuIHBhZ2VyKVxuIgorIjxwYXRoPiBpcyB0aGUgbG9jYXRpb24gb2Ygb25lIG9mIHRoZSBhbHRlcm5hdGl2ZSB0YXJnZXQgZmlsZXMuXG4iCisiICAoZS5nLiAvdXNyL2Jpbi9sZXNzKVxuIgorIjxwcmlvcml0eT4gaXMgYW4gaW50ZWdlcjsgb3B0aW9ucyB3aXRoIGhpZ2hlciBudW1iZXJzIGhhdmUgaGlnaGVyIHByaW9yaXR5ICIKKyJpblxuIgorIiAgYXV0b21hdGljIG1vZGUuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzMQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIk9wdGlvbnM6XG4iCisjfCAiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgc2V0IHRoZSBkaXJlY3Rvcnkgd2l0aCB0aGUgc3RhdG92ZXJyaWRlIGZpbGUuXG4iCisjfCAiICAtLXVwZGF0ZSAgICAgICAgICAgICAgICAgaW1tZWRpYXRlbHkgdXBkYXRlIGZpbGUgcGVybWlzc2lvbnMuXG4iCisjfCAiICAtLWZvcmNlICAgICAgICAgICAgICAgICAgZm9yY2UgYW4gYWN0aW9uIGV2ZW4gaWYgYSBzYW5pdHkgY2hlY2sgZmFpbHMuXG4iCisjfCAiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgcXVpZXQgb3BlcmF0aW9uLCBtaW5pbWFsIG91dHB1dC5cbiIKKyN8ICIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorI3wgIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisjfCAiXG4iCittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFsdGRpciA8ZGlyZWN0b3J5PiAgICAgY2hhbmdlIHRoZSBhbHRlcm5hdGl2ZXMgZGlyZWN0b3J5LlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIGNoYW5nZSB0aGUgYWRtaW5pc3RyYXRpdmUgZGlyZWN0b3J5LlxuIgorIiAgLS1sb2cgPGZpbGU+ICAgICAgICAgICAgIGNoYW5nZSB0aGUgbG9nIGZpbGUuXG4iCisiICAtLWZvcmNlICAgICAgICAgICAgICAgICAgYWxsb3cgcmVwbGFjaW5nIGZpbGVzIHdpdGggYWx0ZXJuYXRpdmUgbGlua3MuXG4iCisiICAtLXNraXAtYXV0byAgICAgICAgICAgICAgc2tpcCBwcm9tcHQgZm9yIGFsdGVybmF0aXZlcyBjb3JyZWN0bHkgIgorImNvbmZpZ3VyZWRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBhdXRvbWF0aWMgbW9kZSAocmVsZXZhbnQgZm9yIC0tY29uZmlnIG9ubHkpXG4iCisiICAtLXZlcmJvc2UgICAgICAgICAgICAgICAgdmVyYm9zZSBvcGVyYXRpb24sIG1vcmUgb3V0cHV0LlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHF1aWV0IG9wZXJhdGlvbiwgbWluaW1hbCBvdXRwdXQuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorbXNnc3RyICIiCisi6YCJ6aG577yaXG4iCisiICAtLWFkbWluZGlyIDznm67lvZU+ICAgICAgICDorr7nva4gc3RhdG92ZXJyaWRlIOaWh+S7tueahOebruW9leOAglxuIgorIiAgLS11cGRhdGUgICAgICAgICAgICAgICAgIOeri+WNs+abtOaWsOaWh+S7tueahOadg+mZkOOAglxuIgorIiAgLS1mb3JjZSAgICAgICAgICAgICAgICAgIOWwseeul+ayoeaciemAmui/h+iHquajgO+8jOS5n+W8uuWItuaJp+ihjOaTjeS9nOOAglxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIOWuiemdmeaooeW8j++8jOi+k+WHuuWwveWPr+iDveWwkeeahOS/oeaBr+OAguS4jeaYvuekuui+k+WHuuS/oeaBr+OAglxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIOaYvuekuuacrOW4ruWKqeS/oeaBr+OAglxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIOaYvuekuueJiOacrOS/oeaBr+OAglxuIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNjMKK21zZ2lkICJlcnJvciIKK21zZ3N0ciAi6ZSZ6K+vIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTkzCittc2dpZCAid2FybmluZyIKK21zZ3N0ciAi6K2m5ZGKIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MzU2CisjLCBjLWZvcm1hdAorbXNnaWQgInR3byBjb21tYW5kcyBzcGVjaWZpZWQ6IC0tJXMgYW5kIC0tJXMiCittc2dzdHIgIuaMh+WumuS6huS4pOS4quWRveS7pO+8mi0tJXMg5ZKMIC0tJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzozODcKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImNhbm5vdCBhcHBlbmQgdG8gJXM6ICVzIgorbXNnaWQgImNhbm5vdCBhcHBlbmQgdG8gJyVzJyIKK21zZ3N0ciAi5peg5rOV6L+95Yqg6IezICVz77yaJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo1NTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byByZW1vdmUgJXM6ICVzIgorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgJyVzJyIKK21zZ3N0ciAi5peg5rOV56e76ZmkICVz77yaJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTExCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGZpbGUgd2hpbGUgdHJ5aW5nIHRvIHJlYWQgJXMiCittc2dzdHIgIuWcqOivu+WPliAlcyDml7bpgYfliLDpnZ7pooTmnJ/nmoTmlofku7bnu5PmnZ/nrKYiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTEzCisjLCBjLWZvcm1hdAorbXNnaWQgIndoaWxlIHJlYWRpbmcgJXM6ICVzIgorbXNnc3RyICLlvZPor7vlj5YgJXMg5pe277yaJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTE5CisjLCBjLWZvcm1hdAorbXNnaWQgImxpbmUgbm90IHRlcm1pbmF0ZWQgd2hpbGUgdHJ5aW5nIHRvIHJlYWQgJXMiCittc2dzdHIgIuWwneivleivu+WPliAlcyDml7booYzmnKrnu5PmnZ8iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTM3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGNvcnJ1cHQ6ICVzIgorbXNnc3RyICIlcyDmjZ/lnY/vvJolcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAibmV3bGluZXMgcHJvaGliaXRlZCBpbiB1cGRhdGUtYWx0ZXJuYXRpdmVzIGZpbGVzICglcykiCittc2dzdHIgInVwZGF0ZS1hbHRlcm5hdGl2ZXMg5paH5Lu2KCVzKeemgeatouaNouihjOespiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNjMKK21zZ2lkICJzbGF2ZSBuYW1lIgorbXNnc3RyICLmrKHopoHlkI3np7AiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTcxIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDA1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJkdXBsaWNhdGUgc2xhdmUgJXMiCittc2dpZCAiZHVwbGljYXRlIHNsYXZlIG5hbWUgJXMiCittc2dzdHIgIumHjeWkjeeahOasoeimgSAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNzQKK21zZ2lkICJzbGF2ZSBsaW5rIgorbXNnc3RyICLmrKHopoHpk77mjqUiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTc4CisjLCBjLWZvcm1hdAorbXNnaWQgInNsYXZlIGxpbmsgc2FtZSBhcyBtYWluIGxpbmsgJXMiCittc2dzdHIgIuasoeimgeeahOmTvuaOpeS4juS4u+imgemTvuaOpSAlcyDnm7jlkIwiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTg1IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDEyCisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBzbGF2ZSBsaW5rICVzIgorbXNnc3RyICLph43lpI3nmoTmrKHopoHpk77mjqUgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjA0Cittc2dpZCAibWFzdGVyIGZpbGUiCittc2dzdHIgIuS4u+imgeaWh+S7tiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHBhdGggJXMiCittc2dzdHIgIumHjeWkjei3r+W+hCAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImFsdGVybmF0aXZlICVzIChwYXJ0IG9mIGxpbmsgZ3JvdXAgJXMpIGRvZXNuJ3QgZXhpc3QuIFJlbW92aW5nIGZyb20gbGlzdCBvZiAiCisiYWx0ZXJuYXRpdmVzLiIKK21zZ3N0ciAi5YCZ6YCJ6aG5ICVzKOmTvuaOpee7hCAlcyDnmoTkuIDpg6jliIYp5LiN5a2Y5Zyo44CC5LuO5YCZ6YCJ6aG55YiX6KGo5Lit56e76Zmk44CCIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIyOSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI0MAorbXNnaWQgInByaW9yaXR5IgorbXNnc3RyICLkvJjlhYjnuqciCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjMyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjQ5Cittc2dpZCAic2xhdmUgZmlsZSIKK21zZ3N0ciAi5qyh6KaB5paH5Lu2IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI0NAorIywgYy1mb3JtYXQKK21zZ2lkICJwcmlvcml0eSBvZiAlczogJXMiCittc2dzdHIgIiVzIOeahOS8mOWFiOe6p++8miVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI5NworbXNnaWQgInN0YXR1cyIKK21zZ3N0ciAi54q25oCBIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI5OQorbXNnaWQgImludmFsaWQgc3RhdHVzIgorbXNnc3RyICLml6DmlYjnirbmgIEiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzA0Cittc2dpZCAibWFzdGVyIGxpbmsiCittc2dzdHIgIuS4u+mTvuaOpSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZGlzY2FyZGluZyBvYnNvbGV0ZSBzbGF2ZSBsaW5rICVzICglcykuIgorbXNnc3RyICLoiI3lvIPlup/lvIPnmoTmrKHopoHpk77mjqUgJXMoJXMp44CCIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2OQorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MzgKK21zZ2lkICJhdXRvIG1vZGUiCittc2dzdHIgIuiHquWKqOaooeW8jyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MDIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NzgKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjM5Cittc2dpZCAibWFudWFsIG1vZGUiCittc2dzdHIgIuaJi+WKqOaooeW8jyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBsaW5rIGN1cnJlbnRseSBwb2ludHMgdG8gJXMiCittc2dzdHIgIiDpk77mjqXnm67liY3mjIflkJEgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTA4Cittc2dpZCAiICBsaW5rIGN1cnJlbnRseSBhYnNlbnQiCittc2dzdHIgIiDpk77mjqXnm67liY3kuI3lrZjlnKgiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTEyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIC0gcHJpb3JpdHkgJWQiCittc2dzdHIgIiVzIC0g5LyY5YWI57qnICVkIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUxNQorIywgYy1mb3JtYXQKK21zZ2lkICIgIHNsYXZlICVzOiAlcyIKK21zZ3N0ciAiICBzbGF2ZSAlc++8miVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUyMgorIywgYy1mb3JtYXQKK21zZ2lkICJDdXJyZW50ICdiZXN0JyB2ZXJzaW9uIGlzICclcycuIgorbXNnc3RyICLnm67liY3igJzmnIDkvbPigJ3nmoTniYjmnKzkuLogJXPjgIIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTI0Cittc2dpZCAiTm8gdmVyc2lvbnMgYXZhaWxhYmxlLiIKK21zZ3N0ciAi5peg6YCC55So54mI5pys44CCIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU1MworIywgYy1mb3JtYXQKK21zZ2lkICJUaGVyZSBpcyAlZCBjaG9pY2UgZm9yIHRoZSBhbHRlcm5hdGl2ZSAlcyAocHJvdmlkaW5nICVzKS4iCittc2dpZF9wbHVyYWwgIlRoZXJlIGFyZSAlZCBjaG9pY2VzIGZvciB0aGUgYWx0ZXJuYXRpdmUgJXMgKHByb3ZpZGluZyAlcykuIgorbXNnc3RyWzBdICLmnIkgJWQg5Liq5YCZ6YCJ6aG55Y+v55So5LqO5pu/5o2iICVzICjmj5DkvpsgJXMp44CCIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2MAorbXNnaWQgIlNlbGVjdGlvbiIKK21zZ3N0ciAi6YCJ5oupIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2MQorbXNnaWQgIlBhdGgiCittc2dzdHIgIui3r+W+hCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NjEKK21zZ2lkICJQcmlvcml0eSIKK21zZ3N0ciAi5LyY5YWI57qnIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2MQorbXNnaWQgIlN0YXR1cyIKK21zZ3N0ciAi54q25oCBIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU4MgorIywgYy1mb3JtYXQKK21zZ2lkICJQcmVzcyBlbnRlciB0byBrZWVwIHRoZSBjdXJyZW50IGNob2ljZVsqXSwgb3IgdHlwZSBzZWxlY3Rpb24gbnVtYmVyOiAiCittc2dzdHIgIuimgee7tOaMgeW9k+WJjeWAvFsqXeivt+aMieWbnui9pumUru+8jOaIluiAhemUruWFpemAieaLqeeahOe8luWPt++8miIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3MjEKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IHJlcGxhY2luZyAlcyB3aXRoIGEgbGluay4iCittc2dzdHIgIuacquWwhiAlcyDmm7/mjaLkuLrpk77mjqXjgIIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNzYyCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbid0IGluc3RhbGwgdW5rbm93biBjaG9pY2UgJXMiCittc2dzdHIgIuaXoOazleWuieijheacquefpeeahOmAieaLqSAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInNraXAgY3JlYXRpb24gb2YgJXMgYmVjYXVzZSBhc3NvY2lhdGVkIGZpbGUgJXMgKG9mIGxpbmsgZ3JvdXAgJXMpIGRvZXNuJ3QgIgorImV4aXN0LiIKK21zZ3N0ciAi6Lez6L+H5Yib5bu6ICVzIOWboOS4uuaJgOWFs+iBlOaWh+S7tiAlcyAo5L2N5LqO6ZO+5o6l57uEICVzKeS4jeWtmOWcqOOAgiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3OTAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIm5vdCByZXBsYWNpbmcgJXMgd2l0aCBhIGxpbmsuIgorbXNnaWQgIm5vdCByZW1vdmluZyAlcyBzaW5jZSBpdCdzIG5vdCBhIHN5bWxpbmsuIgorbXNnc3RyICLmnKrlsIYgJXMg5pu/5o2i5Li66ZO+5o6l44CCIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA0MSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA0NworIywgYy1mb3JtYXQKK21zZ2lkICJDYWxsICVzLiIKK21zZ3N0ciAi6LCD55SoICVz44CCIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA1MQorIywgYy1mb3JtYXQKK21zZ2lkICJBbHRlcm5hdGl2ZSAlcyB1bmNoYW5nZWQgYmVjYXVzZSBjaG9pY2UgJXMgaXMgbm90IGF2YWlsYWJsZS4iCittc2dzdHIgIuWAmemAiemhuSAlcyDmnKrmlLnlj5jvvIzlm6DkuLrpgInpobkgJXMg5LiN5Y+v55So44CCIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjA1NQorIywgYy1mb3JtYXQKK21zZ2lkICJTa2lwIHVua25vd24gYWx0ZXJuYXRpdmUgJXMuIgorbXNnc3RyICLot7Pov4fkvY3nva7lgJnpgInpobkgJXPjgIIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDc3CisjLCBjLWZvcm1hdAorbXNnaWQgImxpbmUgdG9vIGxvbmcgb3Igbm90IHRlcm1pbmF0ZWQgd2hpbGUgdHJ5aW5nIHRvIHJlYWQgJXMiCittc2dzdHIgIuWwneivleivu+WPliAlcyDml7booYzov4fplb/miJbmsqHmnInnu5PmnZ8iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDkwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTAzCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjExMworIywgYy1mb3JtYXQKK21zZ2lkICJTa2lwIGludmFsaWQgbGluZTogJXMiCittc2dzdHIgIui3s+i/h+aXoOaViOihjO+8miVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjEzMgorIywgYy1mb3JtYXQKK21zZ2lkICJyZW5hbWluZyAlcyBsaW5rIGZyb20gJXMgdG8gJXMuIgorbXNnc3RyICLmraPlnKjlsIbpk77mjqUgJXMg55qE5ZCN56ew5LuOICVzIOaUueaIkCAlc+OAgiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxNzMKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVuYW1pbmcgJXMgc2xhdmUgbGluayBmcm9tICVzIHRvICVzLiIKK21zZ3N0ciAi5q2j5Zyo5bCG5qyh6KaB6ZO+5o6lICVzIOeahOWQjeensOS7jiAlcyDmlLnmiJAgJXPjgIIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTg5CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIG5hbWUgKCVzKSBtdXN0IG5vdCBjb250YWluICcvJyBhbmQgc3BhY2VzLiIKK21zZ3N0ciAi5pu/5o2i5ZCN56ewKCVzKeS4jeWPr+WMheWQqyAvIOWSjOepuuagvOOAgiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgbGluayBpcyBub3QgYWJzb2x1dGUgYXMgaXQgc2hvdWxkIGJlOiAlcyIKK21zZ3N0ciAi5pu/5o2i6ZO+5o6l5LiN5piv57ud5a+56ZO+5o6l77yM5a6D5bqU6K+l5piv57ud5a+56ZO+5o6l77yaJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTk3CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIHBhdGggaXMgbm90IGFic29sdXRlIGFzIGl0IHNob3VsZCBiZTogJXMiCittc2dzdHIgIuabv+aNoui3r+W+hOS4jeaYr+e7neWvuei3r+W+hO+8jOWug+W6lOivpeaYr+e7neWvuei3r+W+hO+8miVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjIyNAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgbWFzdGVyOiAlcyIKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBtYXN0ZXI6IGl0IGlzIGEgc2xhdmUgb2YgJXMiCittc2dzdHIgIuWAmemAiemhuSAlcyDkuI3og73mmK/kuLvopoHpobnvvJolcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyMzIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNjcKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgbGluayAlcyBpcyBhbHJlYWR5IG1hbmFnZWQgYnkgJXMuIgorbXNnc3RyICLmm7/mjaLpk77mjqUgJXMg5bey57uP55SxICVzIOadpeeuoeeQhuS6huOAgiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgcGF0aCAlcyBkb2Vzbid0IGV4aXN0LiIKK21zZ3N0ciAi5pu/5Luj6Lev5b6EICVzIOS4jeWtmOWcqCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyNTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImFsdGVybmF0aXZlICVzIGNhbid0IGJlIHNsYXZlIG9mICVzOiAlcyIKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBzbGF2ZSBvZiAlczogaXQgaXMgYSBtYXN0ZXIgYWx0ZXJuYXRpdmUuIgorbXNnc3RyICLmm7/ku6PpobkgJXMg5L2c5Li6ICVzIOeahOasoeimgemhue+8miVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI1OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgbWFzdGVyOiAlcyIKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBzbGF2ZSBvZiAlczogaXQgaXMgYSBzbGF2ZSBvZiAlcyIKK21zZ3N0ciAi5YCZ6YCJ6aG5ICVzIOS4jeiDveaYr+S4u+imgemhue+8miVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI3OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYWx0ZXJuYXRpdmUgbGluayAlcyBpcyBhbHJlYWR5IG1hbmFnZWQgYnkgJXMuIgorbXNnaWQgImFsdGVybmF0aXZlIGxpbmsgJXMgaXMgYWxyZWFkeSBtYW5hZ2VkIGJ5ICVzIChzbGF2ZSBvZiAlcykuIgorbXNnc3RyICLmm7/mjaLpk77mjqUgJXMg5bey57uP55SxICVzIOadpeeuoeeQhuS6huOAgiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBhcmd1bWVudCBgJXMnIgorbXNnc3RyICLml6Dms5Xor4bliKvnmoTlj4LmlbAgJXMgIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM0MworbXNnaWQgIi0taW5zdGFsbCBuZWVkcyA8bGluaz4gPG5hbWU+IDxwYXRoPiA8cHJpb3JpdHk+IgorbXNnc3RyICItLWluc3RhbGwg6ZyA6KaBIDzpk77mjqU+IDzlkI3np7A+IDzot6/lvoQ+IDzkvJjlhYjnuqc+IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM0NiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM5NworbXNnaWQgIjxsaW5rPiBhbmQgPHBhdGg+IGNhbid0IGJlIHRoZSBzYW1lIgorbXNnc3RyICI86ZO+5o6lPiDlkowgPOi3r+W+hD4g5LiN6IO955u45ZCMIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM0OQorbXNnaWQgInByaW9yaXR5IG11c3QgYmUgYW4gaW50ZWdlciIKK21zZ3N0ciAi5LyY5YWI57qn5b+F6aG75Li65pW05pWwIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM2MgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIDxuYW1lPiA8cGF0aD4iCittc2dzdHIgIi0tJXMg6ZyA6KaBIDzlkI3np7A+IDzot6/lvoQ+IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM3NgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIDxuYW1lPiIKK21zZ3N0ciAiLS0lcyDpnIDopoEgPOWQjeensD4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzg4Cittc2dpZCAiLS1zbGF2ZSBvbmx5IGFsbG93ZWQgd2l0aCAtLWluc3RhbGwiCittc2dzdHIgIi0tc2xhdmUg5Y+q6IO95pCt6YWNIC0taW5zdGFsbCDkvb/nlKgiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzkwCittc2dpZCAiLS1zbGF2ZSBuZWVkcyA8bGluaz4gPG5hbWU+IDxwYXRoPiIKK21zZ3N0ciAiLS1zbGF2ZSDpnIDopoEgPOmTvuaOpT4gPOWQjeensD4gPOi3r+W+hD4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzk5CisjLCBjLWZvcm1hdAorbXNnaWQgIm5hbWUgJXMgaXMgYm90aCBwcmltYXJ5IGFuZCBzbGF2ZSIKK21zZ3N0ciAi5paH5Lu25ZCNICVzIOWQjOaXtuaYr+S4u+imgeWSjOasoeimgSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAibGluayAlcyBpcyBib3RoIHByaW1hcnkgYW5kIHNsYXZlIgorbXNnc3RyICLpk77mjqUgJXMg5ZCM5pe25piv5Li76KaB5ZKM5qyh6KaBIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQyMgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGEgPGZpbGU+IGFyZ3VtZW50IgorbXNnc3RyICItLSVzIOmcgOimgeS4gOS4qjzmlofku7Y+5Y+C5pWwIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQ0OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiBgJXMnIgorbXNnc3RyICLmnKrnn6XpgInpobkgICVzICIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0NTMKK21zZ2lkICIiCisibmVlZCAtLWRpc3BsYXksIC0tcXVlcnksIC0tbGlzdCwgLS1nZXQtc2VsZWN0aW9ucywgLS1jb25maWcsIC0tc2V0LCAtLXNldC0iCisic2VsZWN0aW9ucywgLS1pbnN0YWxsLCAtLXJlbW92ZSwgLS1hbGwsIC0tcmVtb3ZlLWFsbCBvciAtLWF1dG8iCittc2dzdHIgIiIKKyLpnIDopoEgLS1kaXNwbGF5LCAtLXF1ZXJ5LCAtLWxpc3QsIC0tZ2V0LXNlbGVjdGlvbnMsIC0tY29uZmlnLCAtLXNldCwgLS1zZXQtIgorInNlbGVjdGlvbnMsIC0taW5zdGFsbCwgLS1yZW1vdmUsIC0tYWxsLCAtLXJlbW92ZS1hbGwg5oiWIC0tYXV0byIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0OTAKK21zZ2lkICI8c3RhbmRhcmQgaW5wdXQ+IgorbXNnc3RyICI85qCH5YeG6L6T5YWlPiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MDAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MDMKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gYWx0ZXJuYXRpdmVzIGZvciAlcy4iCittc2dzdHIgIuaXoCAlcyDnmoTlgJnpgInpobnjgIIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTMwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIlcyBpcyBkYW5nbGluZywgaXQgd2lsbCBiZSB1cGRhdGVkIHdpdGggYmVzdCBjaG9pY2UuIgorbXNnaWQgIiVzLyVzIGlzIGRhbmdsaW5nLCBpdCB3aWxsIGJlIHVwZGF0ZWQgd2l0aCBiZXN0IGNob2ljZS4iCittc2dzdHIgIiVzIOato+WkhOS6juacquWGs+eKtuaAgeS4re+8jOWwhuS7peacgOS9s+mAiemhueabtOaWsOWug+OAgiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MzQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIlcyBoYXMgYmVlbiBjaGFuZ2VkIChtYW51YWxseSBvciBieSBhIHNjcmlwdCkuIFN3aXRjaGluZyB0byBtYW51YWwgIgorI3wgInVwZGF0ZXMgb25seS4iCittc2dpZCAiIgorIiVzLyVzIGhhcyBiZWVuIGNoYW5nZWQgKG1hbnVhbGx5IG9yIGJ5IGEgc2NyaXB0KS4gU3dpdGNoaW5nIHRvIG1hbnVhbCAiCisidXBkYXRlcyBvbmx5LiIKK21zZ3N0ciAiJXMg5bey5pu05pS5KOeUseS6juaJi+WKqOabtOaUueaIlumAmui/h+iEmuacrCnjgILliIfmjaLmiJDku4XmiYvliqjmm7TmlrDjgIIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTQyCisjLCBjLWZvcm1hdAorbXNnaWQgInNldHRpbmcgdXAgYXV0b21hdGljIHNlbGVjdGlvbiBvZiAlcy4iCittc2dzdHIgIuato+WcqOiuvue9riAlcyDnmoToh6rliqjpgInmi6njgIIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTUxCisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlICVzIGZvciAlcyBub3QgcmVnaXN0ZXJlZCwgbm90IHNldHRpbmcuIgorbXNnc3RyICIlMiRzIOeahOWAmemAiemhuSAlMSRzIOayoeacieazqOWGjO+8jOS4jeS6iOiuvue9ruOAgiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NTcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiVGhlcmUgaXMgbm8gcHJvZ3JhbSB3aGljaCBwcm92aWRlcyAlcy4iCittc2dzdHIgIuayoeacieeoi+W6j+aPkOS+myAlc+OAgiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NjUgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NzUKK21zZ2lkICJOb3RoaW5nIHRvIGNvbmZpZ3VyZS4iCittc2dzdHIgIuaXoOmcgOmFjee9ruOAgiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiVGhlcmUgaXMgb25seSBvbmUgYWx0ZXJuYXRpdmUgaW4gbGluayBncm91cCAlczogJXMiCittc2dzdHIgIumTvuaOpee7hCAlcyDkuK3lj6rmnInkuIDkuKrlgJnpgInpobnvvJolcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1ODQKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgZm9yICVzIG5vdCByZWdpc3RlcmVkLCBub3QgcmVtb3ZpbmcuIgorbXNnc3RyICIlMiRzIOeahOWAmemAiemhuSAlMSRzIOayoeacieazqOWGjO+8jOS4jeS6iOenu+mZpOOAgiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1OTIKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVtb3ZpbmcgbWFudWFsbHkgc2VsZWN0ZWQgYWx0ZXJuYXRpdmUgLSBzd2l0Y2hpbmcgJXMgdG8gYXV0byBtb2RlIgorbXNnc3RyICLmraPlnKjnp7vpmaTmiYvliqjpgInmi6nnmoTmm7/ku6PpobkgLSDliIfmjaIgJXMg5Yiw6Ieq5Yqo5qih5byPIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYxNworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiYXV0b21hdGljIHVwZGF0ZXMgb2YgJXMgYXJlIGRpc2FibGVkLCBsZWF2aW5nIGl0IGFsb25lLiIKK21zZ2lkICJhdXRvbWF0aWMgdXBkYXRlcyBvZiAlcy8lcyBhcmUgZGlzYWJsZWQsIGxlYXZpbmcgaXQgYWxvbmUuIgorbXNnc3RyICIlcyDnmoToh6rliqjmm7TmlrDlip/og73lt7LnpoHnlKjvvIzkv53mjIHnjrDnirbjgIIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjE5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ0byByZXR1cm4gdG8gYXV0b21hdGljIHVwZGF0ZXMgdXNlIGB1cGRhdGUtYWx0ZXJuYXRpdmVzIC0tYXV0byAlcycuIgorbXNnaWQgInRvIHJldHVybiB0byBhdXRvbWF0aWMgdXBkYXRlcyB1c2UgJyVzIC0tYXV0byAlcycuIgorbXNnc3RyICLopoHlm57lpI3miJDoh6rliqjmm7TmlrDor7fmiafooYwgdXBkYXRlLWFsdGVybmF0aXZlcyAtLWF1dG8gJXPjgIIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjM2CisjLCBjLWZvcm1hdAorbXNnaWQgInVzaW5nICVzIHRvIHByb3ZpZGUgJXMgKCVzKSBpbiAlcy4iCittc2dzdHIgIuS9v+eUqCAlcyDmnaXmj5DkvpsgJXMgKCVzKe+8jOS6jiAlcyDkuK3jgIIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjQ0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmb3JjaW5nIHJlaW5zdGFsbGF0aW9uIG9mIGFsdGVybmF0aXZlICVzIGJlY2F1c2UgbGluayBncm91cCAlcyBpcyBicm9rZW4uIgorbXNnc3RyICLpk77mjqXnu4QgJTIkcyDlt7LmjZ/lnY/vvIzmlYXlvLrliLbph43mlrDlronoo4XlgJnpgInpobkgJTEkc3MiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNjUxCisjLCBjLWZvcm1hdAorbXNnaWQgImN1cnJlbnQgYWx0ZXJuYXRpdmUgJXMgaXMgdW5rbm93biwgc3dpdGNoaW5nIHRvICVzIGZvciBsaW5rIGdyb3VwICVzLiIKK21zZ3N0ciAi5b2T5YmN5YCZ6YCJ6aG5ICUxJHMg5pyq55+l77yM5Li66ZO+5o6l57uEICUzJHMg5YiH5o2i6IezICUyJHMiCisKKyN+IG1zZ2lkICJpdCBpcyBhIG1hc3RlciBhbHRlcm5hdGl2ZS4iCisjfiBtc2dzdHIgIui/meaYr+S4gOS4quS4u+WAmemAiemhueOAgiIKKworI34gbXNnaWQgIml0IGlzIGEgc2xhdmUgb2YgJXMiCisjfiBtc2dzdHIgIui/meaYryAlcyDnmoTkuIDkuKrmrKHopoHpobkiCisKKyN+IG1zZ2lkICJjYW5ub3Qgc3RhdCAlczogJXMiCisjfiBtc2dzdHIgIuaXoOazleiOt+WPliAlcyDnmoTkv6Hmga/vvJolcyIKKworI34gbXNnaWQgInJlYWRsaW5rKCVzKSBmYWlsZWQ6ICVzIgorI34gbXNnc3RyICJyZWFkbGluayglcykg5aSx6LSl77yaJXMiCisKKyN+IG1zZ2lkICJzY2FuIG9mICVzIGZhaWxlZDogJXMiCisjfiBtc2dzdHIgIuaJq+aPjyAlcyDlpLHotKXvvJolcyIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjdXRlICVzOiAlcyIKKyN+IG1zZ3N0ciAi5omn6KGMICVzIOWksei0pe+8miVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIG1ha2UgJXMgYSBzeW1saW5rIHRvICVzOiAlcyIKKyN+IG1zZ3N0ciAi5peg5rOV5Yib5bu6ICVzIOS4uiAlcyDnmoTnrKblj7fpk77mjqXvvJolcyIKKworI34gbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsICVzIGFzICVzOiAlcyIKKyN+IG1zZ3N0ciAi5peg5rOV5oqKICVzIOWuieijheS4uiAlc++8miVzIgorCisjfiBtc2dpZCAid2hpbGUgd3JpdGluZyAlczogJXMiCisjfiBtc2dzdHIgIuW9k+WGmeWFpSAlcyDml7bvvJolcyIKKworI34gbXNnaWQgInVuYWJsZSB0byByZWFkICVzOiAlcyIKKyN+IG1zZ3N0ciAi5peg5rOV6K+75Y+WICVz77yaJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gY2xvc2UgJXM6ICVzIgorI34gbXNnc3RyICLml6Dms5XlhbPpl60gJXPvvJolcyIKKworI34gbXNnaWQgImNhbm5vdCB3cml0ZSAlczogJXMiCisjfiBtc2dzdHIgIuaXoOazleWGmeWFpSAlc++8miVzIgorCisjLCBmdXp6eQorI358IG1zZ2lkICJ1bmFibGUgdG8gb3BlbiBmaWxlICclcyciCisjfiBtc2dpZCAidW5hYmxlIHRvIHJlbmFtZSBmaWxlICclcycgdG8gJyVzJyIKKyN+IG1zZ3N0ciAi5peg5rOV5omT5byA5paH5Lu2ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHVuYnVmZmVyIGAlLjI1NXMnIgorI34gbXNnc3RyICLml6Dms5XlhbPpl63mlofku7bnvJPlhrIgJS4yNTVzICIKKworI34gbXNnaWQgInBhcnQgZmlsZSBgJS4yNTBzJyBoYXMgdHJhaWxpbmcgZ2FyYmFnZSIKKyN+IG1zZ3N0ciAi5YiG5Z2X5paH5Lu2ICUuMjUwcyDnmoTlsL7pg6jmnInml6DnlKjnmoTmlbDmja4iCisKKyN+IG1zZ2lkICJzaXplICU3ZCBvY2N1cnMgJTVkIHRpbWVzXG4iCisjfiBtc2dzdHIgIuWkp+Wwj+S4uiAlN2Qg55qE5Ye6546w5LqGICU1ZCDmrKFcbiIKKworI34gbXNnaWQgIm91dCBvZiBtZW1vcnkgcHVzaGluZyBlcnJvciBoYW5kbGVyOiAiCisjfiBtc2dzdHIgIuWQkemUmeivr+WkhOeQhuWHveaVsOWOi+agiOaXtuWGheWtmOS4jei2szogIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHVubG9jayBkcGtnIHN0YXR1cyBkYXRhYmFzZSIKKyN+IG1zZ3N0ciAi5peg5rOV5Li6IGRwa2cg55qE54q25oCB5pWw5o2u5bqT6Kej6ZSBIgorCisjfiBtc2dpZCAiY29weSBpbmZvIGZpbGUgYCUuMjU1cyciCisjfiBtc2dzdHIgIuWkjeWItiBpbmZvIOaWh+S7tiAgJS4yNTVzICIKKworI34gbXNnaWQgInBhcnNlIGVycm9yIgorI34gbXNnc3RyICLop6PmnpDplJnor68iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gd3JpdGUgcGFyc2luZyB3YXJuaW5nIgorI34gbXNnc3RyICLml6Dms5Xlhpnop6PmnpDorablkYoiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gbG9jayB0cmlnZ2VycyBhcmVhIgorI34gbXNnc3RyICLml6Dms5XplIHlrprop6blj5HlmajljLrln58iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gcnVuICVzICglLjI1MHMpIgorI34gbXNnc3RyICLml6Dms5Xov5DooYwgJXMgKCUuMjUwcykiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBzaGVsbCAoJS4yNTBzKSIKKyN+IG1zZ3N0ciAi5peg5rOV5omn6KGMIHNoZWxsICglLjI1MHMpIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGNoZWNrIGZvciBleGlzdGVuY2Ugb2YgYCUuMjUwcyciCisjfiBtc2dzdHIgIuaXoOazleajgOafpSAlLjI1MHMg5piv5ZCm5a2Y5ZyoIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgcm0gZm9yIGNsZWFudXAiCisjfiBtc2dzdHIgIuaXoOazlei/kOihjCBybSDmnaXmiafooYzmuIXnkIYiCisKKyN+IG1zZ2lkICIiCisjfiAiJXMgZGVidWdnaW5nIG9wdGlvbiwgLS1kZWJ1Zz08b2N0YWw+IG9yIC1EPG9jdGFsPjpcbiIKKyN+ICJcbiIKKyN+ICIgbnVtYmVyICByZWYuIGluIHNvdXJjZSAgIGRlc2NyaXB0aW9uXG4iCisjfiAiICAgICAgMSAgIGdlbmVyYWwgICAgICAgICAgIEdlbmVyYWxseSBoZWxwZnVsIHByb2dyZXNzIGluZm9ybWF0aW9uXG4iCisjfiAiICAgICAgMiAgIHNjcmlwdHMgICAgICAgICAgIEludm9jYXRpb24gYW5kIHN0YXR1cyBvZiBtYWludGFpbmVyIHNjcmlwdHNcbiIKKyN+ICIgICAgIDEwICAgZWFjaGZpbGUgICAgICAgICAgT3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkXG4iCisjfiAiICAgIDEwMCAgIGVhY2hmaWxlZGV0YWlsICAgIExvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkXG4iCisjfiAiICAgICAyMCAgIGNvbmZmICAgICAgICAgICAgIE91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGVcbiIKKyN+ICIgICAgMjAwICAgY29uZmZkZXRhaWwgICAgICAgTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggY29uZmlndXJhdGlvbiBmaWxlXG4iCisjfiAiICAgICA0MCAgIGRlcGNvbiAgICAgICAgICAgIERlcGVuZGVuY2llcyBhbmQgY29uZmxpY3RzXG4iCisjfiAiICAgIDQwMCAgIGRlcGNvbmRldGFpbCAgICAgIExvdHMgb2YgZGVwZW5kZW5jaWVzL2NvbmZsaWN0cyBvdXRwdXRcbiIKKyN+ICIgIDEwMDAwICAgdHJpZ2dlcnMgICAgICAgICAgVHJpZ2dlciBhY3RpdmF0aW9uIGFuZCBwcm9jZXNzaW5nXG4iCisjfiAiICAyMDAwMCAgIHRyaWdnZXJzZGV0YWlsICAgIExvdHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2Vyc1xuIgorI34gIiAgNDAwMDAgICB0cmlnZ2Vyc3N0dXBpZCAgICBTaWxseSBhbW91bnRzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnNcbiIKKyN+ICIgICAxMDAwICAgdmVyeXZlcmJvc2UgICAgICAgTG90cyBvZiBkcml2ZWwgYWJvdXQgZWcgdGhlIGRwa2cvaW5mbyAiCisjfiAiZGlyZWN0b3J5XG4iCisjfiAiICAgMjAwMCAgIHN0dXBpZGx5dmVyYm9zZSAgIEluc2FuZSBhbW91bnRzIG9mIGRyaXZlbFxuIgorI34gIlxuIgorI34gIkRlYnVnZ2luZyBvcHRpb25zIGFyZSBiZSBtaXhlZCB1c2luZyBiaXR3aXNlLW9yLlxuIgorI34gIk5vdGUgdGhhdCB0aGUgbWVhbmluZ3MgYW5kIHZhbHVlcyBhcmUgc3ViamVjdCB0byBjaGFuZ2UuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICIlcyDpmaTplJnpgInpobnvvIwtLWRlYnVnPTzlhavov5vliLbmlbDlrZc+IOaIliAtRDzlhavov5vliLbmlbDlrZc+77yaXG4iCisjfiAiXG4iCisjfiAiICAg5pWw5a2XICDmupDku6PnoIHkuK3nmoTlr7nlupQgICDop6Pph4pcbiIKKyN+ICIgICAgICAxICAg5bi46KeEICAgICAgICAgICAgICDluLjop4TnmoTovoXliqnov5vluqbkv6Hmga9cbiIKKyN+ICIgICAgICAyICAg6ISa5pysICAgICAgICAgICAgICDnu7TmiqTogIXohJrmnKznmoTnirbmgIHlj4rlr7nlhbbnmoTosIPnlKhcbiIKKyN+ICIgICAgIDEwICAg5q+P5Liq5paH5Lu2ICAgICAgICAgIOaTjeS9nOavj+S4quaWh+S7tueahOi+k+WHulxuIgorI34gIiAgICAxMDAgICDmr4/kuKrmlofku7bnu4boioIgICAgICDmk43kvZzmr4/kuKrmlofku7bnmoTlpKfph4/ovpPlh7pcbiIKKyN+ICIgICAgIDIwICAg6YWN572u5paH5Lu2ICAgICAgICAgIOavj+S4qumFjee9ruaWh+S7tueahOi+k+WHulxuIgorI34gIiAgICAyMDAgICDphY3nva7mlofku7bnu4boioIgICAgICDmr4/kuKrphY3nva7mlofku7bnmoTlpKfph4/ovpPlh7pcbiIKKyN+ICIgICAgIDQwICAg5L6d6LWW5ZKM5Yay56qBICAgICAgICDkvp3otZblkozlhrLnqoFcbiIKKyN+ICIgICAgNDAwICAg5L6d6LWW5ZKM5Yay56qB57uG6IqCICAgIOS+nei1luWSjOWGsueqgee7huiKglxuIgorI34gIiAgMTAwMDAgICDop6blj5HlmaggICAgICAgICAgICDop6blj5Hlmajmv4DmtLvlkozlpITnkIZcbiIKKyN+ICIgIDIwMDAwICAg6Kem5Y+R5Zmo57uG6IqCICAgICAgICDmnInlhbPop6blj5HlmajnmoTlpKfph4/ovpPlh7pcbiIKKyN+ICIgIDQwMDAwICAg6Kem5Y+R5Zmo5p6B5bqm57uG6IqCICAgIOacieWFs+inpuWPkeWZqOeahOaegeWkp+mHj+eahOi+k+WHulxuIgorI34gIiAgIDEwMDAgICDljYHliIbor6bnu4YgICAgICAgICAg5aSn6YeP55qE55CQ56KO57uG6IqC77yM5aaCIGRwa2cvaW5mbyDnm67lvZVcbiIKKyN+ICIgICAyMDAwICAg5p6B5bqm6K+m57uGICAgICAgICAgIOaVsOmHj+aegeWkp+eahOi+k+WHulxuIgorI34gIlxuIgorI34gIuWPr+S7peeUqOS9jeS4jihiaXR3aXNlLW9yKeaKiumZpOmUmemAiemhuee7hOWQiOi1t+adpeS9v+eUqOOAglxuIgorI34gIuazqOaEj++8jOaEj+S5ieWSjOaVsOWAvOWwhuacieWPr+iDveabtOWKqOOAglxuIgorCisjfiBtc2dpZCAiIgorI34gIiVzIGZvcmNpbmcgb3B0aW9ucyAtIGNvbnRyb2wgYmVoYXZpb3VyIHdoZW4gcHJvYmxlbXMgZm91bmQ6XG4iCisjfiAiICB3YXJuIGJ1dCBjb250aW51ZTogIC0tZm9yY2UtPHRoaW5nPiw8dGhpbmc+LC4uLlxuIgorI34gIiAgc3RvcCB3aXRoIGVycm9yOiAgICAtLXJlZnVzZS08dGhpbmc+LDx0aGluZz4sLi4uIHwgLS1uby1mb3JjZS0iCisjfiAiPHRoaW5nPiwuLi5cbiIKKyN+ICIgRm9yY2luZyB0aGluZ3M6XG4iCisjfiAiICBhbGwgWyFdICAgICAgICAgICAgICAgIFNldCBhbGwgZm9yY2Ugb3B0aW9uc1xuIgorI34gIiAgZG93bmdyYWRlIFsqXSAgICAgICAgICBSZXBsYWNlIGEgcGFja2FnZSB3aXRoIGEgbG93ZXIgdmVyc2lvblxuIgorI34gIiAgY29uZmlndXJlLWFueSAgICAgICAgICBDb25maWd1cmUgYW55IHBhY2thZ2Ugd2hpY2ggbWF5IGhlbHAgdGhpcyBvbmVcbiIKKyN+ICIgIGhvbGQgICAgICAgICAgICAgICAgICAgUHJvY2VzcyBpbmNpZGVudGFsIHBhY2thZ2VzIGV2ZW4gd2hlbiBvbiBob2xkXG4iCisjfiAiICBiYWQtcGF0aCAgICAgICAgICAgICAgIFBBVEggaXMgbWlzc2luZyBpbXBvcnRhbnQgcHJvZ3JhbXMsIHByb2JsZW1zICIKKyN+ICJsaWtlbHlcbiIKKyN+ICIgIG5vdC1yb290ICAgICAgICAgICAgICAgVHJ5IHRvIChkZSlpbnN0YWxsIHRoaW5ncyBldmVuIHdoZW4gbm90IHJvb3RcbiIKKyN+ICIgIG92ZXJ3cml0ZSAgICAgICAgICAgICAgT3ZlcndyaXRlIGEgZmlsZSBmcm9tIG9uZSBwYWNrYWdlIHdpdGggYW5vdGhlclxuIgorI34gIiAgb3ZlcndyaXRlLWRpdmVydGVkICAgICBPdmVyd3JpdGUgYSBkaXZlcnRlZCBmaWxlIHdpdGggYW4gdW5kaXZlcnRlZCAiCisjfiAidmVyc2lvblxuIgorI34gIiAgYmFkLXZlcmlmeSAgICAgICAgICAgICBJbnN0YWxsIGEgcGFja2FnZSBldmVuIGlmIGl0IGZhaWxzIGF1dGhlbnRpY2l0eSAiCisjfiAiY2hlY2tcbiIKKyN+ICIgIGRlcGVuZHMtdmVyc2lvbiBbIV0gICAgVHVybiBkZXBlbmRlbmN5IHZlcnNpb24gcHJvYmxlbXMgaW50byB3YXJuaW5nc1xuIgorI34gIiAgZGVwZW5kcyBbIV0gICAgICAgICAgICBUdXJuIGFsbCBkZXBlbmRlbmN5IHByb2JsZW1zIGludG8gd2FybmluZ3NcbiIKKyN+ICIgIGNvbmZuZXcgWyFdICAgICAgICAgICAgQWx3YXlzIHVzZSB0aGUgbmV3IGNvbmZpZyBmaWxlcywgZG9uJ3QgcHJvbXB0XG4iCisjfiAiICBjb25mb2xkIFshXSAgICAgICAgICAgIEFsd2F5cyB1c2UgdGhlIG9sZCBjb25maWcgZmlsZXMsIGRvbid0IHByb21wdFxuIgorI34gIiAgY29uZmRlZiBbIV0gICAgICAgICAgICBVc2UgdGhlIGRlZmF1bHQgb3B0aW9uIGZvciBuZXcgY29uZmlnIGZpbGVzIGlmICIKKyN+ICJvbmVcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgaXMgYXZhaWxhYmxlLCBkb24ndCBwcm9tcHQuIElmIG5vIGRlZmF1bHQgY2FuIGJlICIKKyN+ICJmb3VuZCxcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgeW91IHdpbGwgYmUgcHJvbXB0ZWQgdW5sZXNzIG9uZSBvZiB0aGUgY29uZm9sZCAiCisjfiAib3JcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgY29uZm5ldyBvcHRpb25zIGlzIGFsc28gZ2l2ZW5cbiIKKyN+ICIgIGNvbmZtaXNzIFshXSAgICAgICAgICAgQWx3YXlzIGluc3RhbGwgbWlzc2luZyBjb25maWcgZmlsZXNcbiIKKyN+ICIgIGNvbmZhc2sgWyFdICAgICAgICAgICAgT2ZmZXIgdG8gcmVwbGFjZSBjb25maWcgZmlsZXMgd2l0aCBubyBuZXcgIgorI34gInZlcnNpb25zXG4iCisjfiAiICBicmVha3MgWyFdICAgICAgICAgICAgIEluc3RhbGwgZXZlbiBpZiBpdCB3b3VsZCBicmVhayBhbm90aGVyIHBhY2thZ2VcbiIKKyN+ICIgIGNvbmZsaWN0cyBbIV0gICAgICAgICAgQWxsb3cgaW5zdGFsbGF0aW9uIG9mIGNvbmZsaWN0aW5nIHBhY2thZ2VzXG4iCisjfiAiICBhcmNoaXRlY3R1cmUgWyFdICAgICAgIFByb2Nlc3MgZXZlbiBwYWNrYWdlcyB3aXRoIHdyb25nIGFyY2hpdGVjdHVyZVxuIgorI34gIiAgb3ZlcndyaXRlLWRpciBbIV0gICAgICBPdmVyd3JpdGUgb25lIHBhY2thZ2UncyBkaXJlY3Rvcnkgd2l0aCBhbm90aGVyJ3MgIgorI34gImZpbGVcbiIKKyN+ICIgIHVuc2FmZS1pbyBbIV0gICAgICAgICAgRG8gbm90IHBlcmZvcm0gc2FmZSBJL08gb3BlcmF0aW9ucyB3aGVuICIKKyN+ICJ1bnBhY2tpbmdcbiIKKyN+ICIgIHJlbW92ZS1yZWluc3RyZXEgWyFdICAgUmVtb3ZlIHBhY2thZ2VzIHdoaWNoIHJlcXVpcmUgaW5zdGFsbGF0aW9uXG4iCisjfiAiICByZW1vdmUtZXNzZW50aWFsIFshXSAgIFJlbW92ZSBhbiBlc3NlbnRpYWwgcGFja2FnZVxuIgorI34gIlxuIgorI34gIldBUk5JTkcgLSB1c2Ugb2Ygb3B0aW9ucyBtYXJrZWQgWyFdIGNhbiBzZXJpb3VzbHkgZGFtYWdlIHlvdXIgIgorI34gImluc3RhbGxhdGlvbi5cbiIKKyN+ICJGb3JjaW5nIG9wdGlvbnMgbWFya2VkIFsqXSBhcmUgZW5hYmxlZCBieSBkZWZhdWx0LlxuIgorI34gbXNnc3RyICIiCisjfiAiJXMg5by65Yi26YCJ6aG5IC0g5Y+v5oyH5a6a6YGH5Yiw6Zeu6aKY5pe255qE5aSE55CG5omL5q6177yaXG4iCisjfiAiICDorablkYrnmoTlkIzml7bnu6fnu63miafooYzvvJogIC0tZm9yY2UtPOaJi+autT4sPOaJi+autT4sLi4uXG4iCisjfiAiICDmnInplJnor6/ml7bnq4vljbPkuK3mraLvvJogICAgLS1yZWZ1c2UtPOaJi+autT4sPOaJi+autT4sLi4uIHwgLS1uby1mb3JjZS085omL5q61IgorI34gIj4sLi4uXG4iCisjfiAiIOW8uuWItuaJp+ihjOeahOWQhOenjeaJi+aute+8mlxuIgorI34gIiAgYWxsIFshXSAgICAgICAgICAgICAgICDlupTnlKjmiYDmnInnmoTlvLrliLbmiYvmrrVcbiIKKyN+ICIgIGRvd25ncmFkZSBbKl0gICAgICAgICAg5oqK6L2v5Lu25YyF5pu/5o2i5oiQ5pu05L2O54mI5pys55qE6L2v5Lu25YyFXG4iCisjfiAiICBjb25maWd1cmUtYW55ICAgICAgICAgIOmFjee9ruS7u+S9lei9r+S7tuWMhe+8jOWPquimgei/meWPr+iDveacieWKqeS6jueOsOWcqOeahOaTjeS9nFxuIgorI34gIiAgaG9sZCAgICAgICAgICAgICAgICAgICDlkIzml7bkuZ/lr7nooqvmoIforrDkuLog5L+d5oyB5Y6f54q2IChob2xkKeeahOi9r+S7tuWMhei/m+ihjOaTjSIKKyN+ICLkvZxcbiIKKyN+ICIgIGJhZC1wYXRoICAgICAgICAgICAgICAgUEFUSCDnjq/looPlj5jph4/kuK3mib7kuI3liLDlhbPplK7nmoTnqIvluo/vvIzmnInlj6/og73lvJXotbfplJnor69cbiIKKyN+ICIgIG5vdC1yb290ICAgICAgICAgICAgICAg5Y2z5L2/55So5oi35LiN5pivIHJvb3TvvIzkuZ/or5Xlm77lronoo4Uo5oiW5Y246L29Keeoi+W6j1xuIgorI34gIiAgb3ZlcndyaXRlICAgICAgICAgICAgICDkvb/nlKjmnaXoh6rmn5DkuKrova/ku7bljIXnmoTmlofku7bopobnm5bljp/mnKzlsZ7kuo7lj6bkuIDova/ku7bljIXnmoQiCisjfiAi5paH5Lu2XG4iCisjfiAiICBvdmVyd3JpdGUtZGl2ZXJ0ZWQgICAgIOS9v+eUqOS4gOS4quS4jeaYr+acrOWcsOS/ruaUueeJiOacrOeahOaWh+S7tuimhuebluacrOWcsOS/ruaUueeJiOacrOeahCIKKyN+ICLmlofku7ZcbiIKKyN+ICIgIGJhZC12ZXJpZnkgICAgICAgICAgICAg5Y2z5L2/6L2v5Lu25YyF5rKh6IO96YCa6L+H6aqM6K+B77yM5a6D5Lmf5bCG6KKr5a6J6KOFXG4iCisjfiAiICBkZXBlbmRzLXZlcnNpb24gWyFdICAgIOaKiuacieWFs+eJiOacrOeahOS+nei1lumXrumimOS9nOS4uuitpuWRiuWkhOeQhlxuIgorI34gIiAgZGVwZW5kcyBbIV0gICAgICAgICAgICDmiormiYDmnInnsbvlnovnmoTkvp3otZbpl67popjpg73kvZzkuLrorablkYrlpITnkIZcbiIKKyN+ICIgIGNvbmZuZXcgWyFdICAgICAgICAgICAg5oC75piv5L2/55So5paw54mI55qE6YWN572u5paH5Lu277yM5LiN5YaN6K+i6ZeuXG4iCisjfiAiICBjb25mb2xkIFshXSAgICAgICAgICAgIOaAu+aYr+S9v+eUqOWOn+acieeahOmFjee9ruaWh+S7tu+8jOS4jeWGjeivoumXrlxuIgorI34gIiAgY29uZmRlZiBbIV0gICAgICAgICAgICDlpoLmnpzmnInpu5jorqTpgInmi6nnmoTor53vvIzlsLHkvb/nlKjlroPvvIxcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAg6Iul5piv5rKh5pyJ77yM5ZCM5pe25Lmf5rKh5pyJ5L2/55SoIGNvbmZvbGQg5oiWIGNvbmZuZXcgXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIOmAiemhueeahOivne+8jOWwhuS8muivoumXruaCqO+8jOW5tueUseaCqOS9nOWHuumAieaLqVxuIgorI34gIiAgY29uZm1pc3MgWyFdICAgICAgICAgICDmgLvmmK/lronoo4XnvLrlpLHnmoTphY3nva7mlofku7ZcbiIKKyN+ICIgIGNvbmZhc2sgWyFdICAgICAgICAgICAg5rKh5pyJ5paw54mI5pys5pe26K+i6Zeu5pu/5o2i6YWN572u5paH5Lu2XG4iCisjfiAiICBicmVha3MgWyFdICAgICAgICAgICAgIOWNs+S9v+aNn+Wdj+WFtuS7lui9r+S7tuWMheS5n+e7p+e7reWuieijhVxuIgorI34gIiAgY29uZmxpY3RzIFshXSAgICAgICAgICDorqnnm7jkupLlhrLnqoHnmoTova/ku7bljIXkuZ/lvpfku6Xlronoo4VcbiIKKyN+ICIgIGFyY2hpdGVjdHVyZSBbIV0gICAgICAg5Y2z5L2/6L2v5Lu25YyF5omA5bGe55qE5L2T57O75p625p6E5LiO546v5aKD5LiN56ym77yM5a6D5Lmf5bCG6KKr5aSEIgorI34gIueQhlxuIgorI34gIiAgb3ZlcndyaXRlLWRpciBbIV0gICAgICDnlKjmnaXoh6rkuIDkuKrova/ku7bljIXnmoTmlofku7bopobnm5bljp/mnKzlsZ7kuo7lj6bkuIDova/ku7bljIXnmoTnm64iCisjfiAi5b2VXG4iCisjfiAiICByZW1vdmUtcmVpbnN0cmVxIFshXSAgIOWIoOmZpOmCo+S6m+mcgOimgeWuieijheeahOi9r+S7tuWMhVxuIgorI34gIiAgcmVtb3ZlLWVzc2VudGlhbCBbIV0gICDliKDpmaTph43opoHnmoTova/ku7bljIVcbiIKKyN+ICJcbiIKKyN+ICLorablkYogLSDkvb/nlKjluKbmnIlbIV3moIforrDnmoTpgInpobnlj6/og73kvJrkuKXph43noLTlnY/mgqjnmoTns7vnu5/jgIJcbiIKKyN+ICLpu5jorqTmg4XlhrXkuIvvvIzmmK/kvb/nlKjluKbmnIlbKl3moIforrDnmoTlvLrliLbmiYvmrrXnmoTjgIJcbiIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIGRwa2ctc3BsaXQgdG8gc2VlIGlmIGl0J3MgcGFydCBvZiBhIG11bHRpcGFydGVyIgorI34gbXNnc3RyICIiCisjfiAiZXhlYyBkcGtnLXNwbGl0IOaXtuWHuumUme+8jOivpeaTjeS9nOiiq+eUqOadpeWIpOaWrei/meaYr+WQpuaYr+S4gOS4quWll+S7tihtdWx0aXBhcnRlcinkuK3nmoQiCisjfiAi5LiA5Liq57uE5oiQ6YOo5YiGIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWNsIGRlYnNpZy12ZXJpZnkiCisjfiBtc2dzdHIgIuaXoOazlSBleGVjbCBkZWJzaWctdmVyaWZ5IgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgZHBrZy1kZWIgdG8gZXh0cmFjdCBjb250cm9sIGluZm9ybWF0aW9uIgorI34gbXNnc3RyICLml6Dms5UgZXhlYyBkcGtnLWRlYu+8jOmAmui/h+Wug+adpeino+WOi+e8qeaOp+WItuS/oeaBryIKKworI34gbXNnaWQgInVuYWJsZSB0byBleGVjIGRwa2ctZGViIHRvIGdldCBmaWxlc3lzdGVtIGFyY2hpdmUiCisjfiBtc2dzdHIgIuaXoOazlSBleGVjIGRwa2ctZGVi77yM5Lul5q2k5p2l6I635b6X5omT5YyF5ZCO55qE5paH5Lu257O757ufIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSBkaXNhcHBlYXJpbmcgY29udHJvbCBpbmZvIGZpbGUgYCUuMjUwcyciCisjfiBtc2dzdHIgIuaXoOazleWIoOmZpOW3sue7j+a2iOWkseS6hueahOaOp+WItuS/oeaBr+aWh+S7tiAlLjI1MHMiCisKKyN+IG1zZ2lkICJkcGtnOiAlcyBub3QgZm91bmQuXG4iCisjfiBtc2dzdHIgImRwa2fvvJrmsqHmnInmib7liLAgJXPjgIJcbiIKKworI34gbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byAuLi4vREVCSUFOIgorI34gbXNnc3RyICJjaGRpciDliLAgLi4uL0RFQklBTiDlpLHotKUiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyB0YXIgLWNmIgorI34gbXNnc3RyICLmiafooYwgdGFyIC1jZiDlpLHotKUiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gbWFrZSB0bXBmaWxlIChjb250cm9sKSIKKyN+IG1zZ3N0ciAi5paw5bu65Li05pe25paH5Lu2KOaOp+WItuS/oeaBrynlpLHotKUiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gdW5saW5rIHRtcGZpbGUgKGNvbnRyb2wpLCAlcyIKKyN+IG1zZ3N0ciAidW5saW5rIOS4tOaXtuaWh+S7tijmjqfliLbkv6Hmga8p5aSx6LSl77yMJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gcmV3aW5kIHRtcGZpbGUgKGNvbnRyb2wpIgorI34gbXNnc3RyICLot7PliLDkuLTml7bmlofku7Yo5o6n5Yi25L+h5oGvKeeahOi1t+Wni+S9jee9rihyZXdpbmQp5aSx6LSlIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGZzdGF0IHRtcGZpbGUgKGNvbnRyb2wpIgorI34gbXNnc3RyICJmc3RhdCDkuLTml7bmlofku7Yo5o6n5Yi25L+h5oGvKeWksei0pSIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIGZpbmQiCisjfiBtc2dzdHIgIuaJp+ihjCBmaW5kIOWksei0pSIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIHNoIC1jIG12IGZvby8qICZjIgorI34gbXNnc3RyICLmiafooYwgc2ggLWMgbXYgZm9vLyogJmMg5aSx6LSlIgorCisjfiBtc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gJS4yNTBzIGxlbmd0aCBjb250YWlucyBudWxscyIKKyN+IG1zZ3N0ciAi5paH5Lu2ICUuMjUwcyDlt7LmjZ/mr4EgLSAlLjI1MHMg55qE6ZW/5bqm5ZCr5pyJIG51bGwg5L2NIgorCisjfiBtc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gbmVnYXRpdmUgbWVtYmVyIGxlbmd0aCAlemkiCisjfiBtc2dzdHIgIuaWh+S7tiAlLjI1MHMg5bey5o2f5q+BIC0g5oiQ5ZGY6ZW/5bqm5Li66LSfICV6aSIKKworI34gbXNnaWQgImZhaWxlZCBnZXR0aW5nIHRoZSBjdXJyZW50IGZpbGUgcG9zaXRpb24iCisjfiBtc2dzdHIgIuaXoOazleW+l+WIsOW9k+WJjeaWh+S7tueahOS9jee9riIKKworI34gbXNnaWQgImZhaWxlZCBzZXR0aW5nIHRoZSBjdXJyZW50IGZpbGUgcG9zaXRpb24iCisjfiBtc2dzdHIgIuaXoOazleiuvue9ruW9k+WJjeaWh+S7tueahOS9jee9riIKKworI34gbXNnaWQgInZlcnNpb24gbnVtYmVyIgorI34gbXNnc3RyICLniYjmnKzlj7ciCisKKyN+IG1zZ2lkICJtZW1iZXIgbGVuZ3RoIgorI34gbXNnc3RyICLmiJDlkZjplb/luqYiCisKKyN+IG1zZ2lkICJoZWFkZXIgaW5mbyBtZW1iZXIiCisjfiBtc2dzdHIgIuaWh+S7tuWktOS/oeaBr+aIkOWRmCIKKworI34gbXNnaWQgInNraXBwZWQgY29udHJvbCBhcmVhIGZyb20gJXMiCisjfiBtc2dzdHIgIuW/veeVpeS6hiAlcyDkuK3nmoTmjqfliLbljLrln58iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHRlbXBvcmFyeSBkaXJlY3RvcnkiCisjfiBtc2dzdHIgIuWIm+W7uuS4tOaXtuebruW9leWksei0pSIKKworI34gbXNnaWQgImluZm9fc3BldyIKKyN+IG1zZ3N0ciAiaW5mb19zcGV3IgorCisjfiBtc2dpZCAiaW5mbyBsZW5ndGgiCisjfiBtc2dzdHIgIuS/oeaBr+mVv+W6piIKKworI34gbXNnaWQgInRvdGFsIGxlbmd0aCIKKyN+IG1zZ3N0ciAi5oC76ZW/5bqmIgorCisjfiBtc2dpZCAiZGF0YSBsZW5ndGgiCisjfiBtc2dzdHIgIuaVsOaNrumVv+W6piIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIGRwa2ctZGViIHRvIGV4dHJhY3QgZmllbGQgdmFsdWUiCisjfiBtc2dzdHIgIuaXoOazleaJp+ihjCBkcGtnLWRlYiDmnaXph4rmlL7ln5/lgLwiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gc3RhdCAlczogJXMiCisjfiBtc2dzdHIgIuaXoOazleiOt+WPliAlcyDnmoTkv6Hmga/vvJolcyIKKworI34gbXNnaWQgInNsYXZlIG5hbWUgJXMgZHVwbGljYXRlZCIKKyN+IG1zZ3N0ciAi5qyh6KaB5ZCN56ewICVzIOaciemHjeWkjSIKKworI34gbXNnaWQgInNsYXZlIGxpbmsgJXMgZHVwbGljYXRlZCIKKyN+IG1zZ3N0ciAi5qyh6KaB6ZO+5o6lICVzIOaciemHjeWkjSIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvcG8vemhfVFcuZ21vIGIvZHBrZy0xLjE2LjEuMS9wby96aF9UVy5nbW8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODhmZDNmZQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvcG8vemhfVFcuZ21vCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvcG8vemhfVFcucG8gYi9kcGtnLTEuMTYuMS4xL3BvL3poX1RXLnBvCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjJlZTgyNzEKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3BvL3poX1RXLnBvCkBAIC0wLDAgKzEsNzA5MiBAQAorIyBUcmFkaXRpb25hbCBDaGluZXNlIHRyYW5zbGF0aW9uIHRvIGRwa2cuCisjIENvcHlyaWdodCAoQykgMjAwOSBUZXRyYWxldC4KKyMgVGhpcyBmaWxlIGlzIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBzYW1lIGxpY2Vuc2UgYXMgdGhlIGRwa2cgcGFja2FnZS4KKyMKKyMgQXNobyBZZWggPGFzaG9AZGViaWFuLm9yZy50dz4sIDIwMDYuCisjCittc2dpZCAiIgorbXNnc3RyICIiCisiUHJvamVjdC1JZC1WZXJzaW9uOiBkcGtnIDEuMTNcbiIKKyJSZXBvcnQtTXNnaWQtQnVncy1UbzogZGViaWFuLWRwa2dAbGlzdHMuZGViaWFuLm9yZ1xuIgorIlBPVC1DcmVhdGlvbi1EYXRlOiAyMDExLTEwLTE0IDA3OjExKzAyMDBcbiIKKyJQTy1SZXZpc2lvbi1EYXRlOiAyMDA5LTAxLTI4IDEwOjMxKzA4MDBcbiIKKyJMYXN0LVRyYW5zbGF0b3I6IFRldHJhbGV0IDx0ZXRyYWxldEBnbWFpbC5jb20+XG4iCisiTGFuZ3VhZ2UtVGVhbTogRGViaWFuLXVzZXIgaW4gQ2hpbmVzZSBbQmlnNV0gPGRlYmlhbi1jaGluZXNlLWJpZzVAbGlzdHMuIgorImRlYmlhbi5vcmc+XG4iCisiTGFuZ3VhZ2U6IHpoX1RXXG4iCisiTUlNRS1WZXJzaW9uOiAxLjBcbiIKKyJDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9VVRGLThcbiIKKyJDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiA4Yml0XG4iCisKKyM6IGxpYi9kcGtnL2FyLmM6NjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjaGFyYWN0ZXIgJyVjJyBpbiBhcmNoaXZlICclLjI1MHMnIG1lbWJlciAnJS4xNnMnIHNpemUiCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvYXIuYzo4MSBsaWIvZHBrZy9hci5jOjk3IGxpYi9kcGtnL2FyLmM6MTA4IGxpYi9kcGtnL2FyLmM6MTEyCisjOiBsaWIvZHBrZy9hci5jOjEzNCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE1NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIGZpbGUgJyVzJyIKK21zZ3N0ciAi54Sh5rOV6ZaL5ZWf5L6G5rqQ5qqUIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy9hci5jOjk0CisjLCBjLWZvcm1hdAorbXNnaWQgImdlbmVyYXRlZCBjb3JydXB0IGFyIGhlYWRlciBmb3IgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9hci5jOjEyMworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGFyIG1lbWJlciBmaWxlICglcykiCittc2dzdHIgIueEoeazleW7uueri+iHqOaZguaqlCAoZGF0YSkiCisKKyM6IGxpYi9kcGtnL2FyLmM6MTMwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJhciBtZW1iZXIgZmlsZSAoJXMpIgorbXNnc3RyICLnhKHms5Xlu7rnq4voh6jmmYLmqpQgKGRhdGEpIgorCisjOiBsaWIvZHBrZy9idWZmZXIuYzoxOTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZWFkIG9uIGJ1ZmZlciBjb3B5IGZvciAlcyIKK21zZ3N0ciAiYnVmZmVyX2NvcHkgKCVzKSDlpLHmlZciCisKKyM6IGxpYi9kcGtnL2J1ZmZlci5jOjIxMgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIGluIHdyaXRlIG9uIGJ1ZmZlciBjb3B5IGZvciAlcyIKK21zZ3N0ciAiYnVmZmVyX2NvcHkgKCVzKSDlpLHmlZciCisKKyM6IGxpYi9kcGtnL2J1ZmZlci5jOjIyMAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAic2hvcnQgcmVhZCBvbiBidWZmZXIgY29weSBmb3IgJXMiCittc2dzdHIgImJ1ZmZlcl9jb3B5ICglcykg5pyq6K6A5a6M5omA5pyJ6LOH5paZIgorCisjOiBsaWIvZHBrZy9idWZmZXIuYzoyODgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byBleGVjIHRhciIKK21zZ2lkICJmYWlsZWQgdG8gc2VlayAlcyIKK21zZ3N0ciAi54Sh5rOV5Z+36KGMIHRhciIKKworIzogbGliL2Rwa2cvY29tbWFuZC5jOjE3OCBsaWIvZHBrZy9jb21tYW5kLmM6MjA0IHNyYy9oZWxwLmM6NjIxCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjk4IHNyYy9wcm9jZXNzYXJjLmM6MTM4IHNyYy9wcm9jZXNzYXJjLmM6NDMyCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjgzOSBkcGtnLWRlYi9idWlsZC5jOjQ1OSBkcGtnLWRlYi9idWlsZC5jOjUzOAorIzogZHBrZy1kZWIvYnVpbGQuYzo1NjEgZHBrZy1kZWIvZXh0cmFjdC5jOjMxNyBkcGtnLWRlYi9pbmZvLmM6NjUKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzo2OSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NDU3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZXhlY3V0ZSAlcyAoJXMpIgorbXNnc3RyICLnhKHms5Xln7fooYwgJXMiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGRlY29tcHJlc3Npb24iCittc2dzdHIgIiVz77ya6Kej5aOT57iuIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjg5CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBjb21wcmVzc2lvbiIKK21zZ3N0ciAiJXPvvJrlo5PnuK4iCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTEyCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvciBiaW5kaW5nIGlucHV0IHRvIGd6aXAgc3RyZWFtIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTI0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCByZWFkIGVycm9yOiAnJXMnIgorbXNnc3RyICIlc++8muWFp+mDqCBnemlwIOmMr+iqpO+8mmAlcyciCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTMyIGxpYi9kcGtnL2NvbXByZXNzLmM6MTM2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCB3cml0ZSBlcnJvciIKK21zZ3N0ciAiJXPvvJrlhafpg6ggZ3ppcCDpjK/oqqTvvJpgJXMnIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjE1MAorIywgYy1mb3JtYXQKK21zZ2lkICIlczogZXJyb3IgYmluZGluZyBvdXRwdXQgdG8gZ3ppcCBzdHJlYW0iCittc2dzdHIgIiIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxNTcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHJlYWQgZXJyb3IiCittc2dzdHIgIiVz77ya5YWn6YOoIGd6aXAg6Yyv6Kqk77yaYCVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoxNjcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIHdyaXRlIGVycm9yOiAnJXMnIgorbXNnc3RyICIlc++8muWFp+mDqCBnemlwIOmMr+iqpO+8mmAlcyciCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MTgwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCB3cml0ZSBlcnJvcjogJXMiCittc2dzdHIgIiVz77ya5YWn6YOoIGd6aXAg6Yyv6Kqk77yaYCVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyMjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yIGJpbmRpbmcgaW5wdXQgdG8gYnppcDIgc3RyZWFtIgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjMyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgcmVhZCBlcnJvcjogJyVzJyIKK21zZ3N0ciAiJXPvvJrlhafpg6ggYnppcDIg6Yyv6Kqk77yaYCVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyNDAgbGliL2Rwa2cvY29tcHJlc3MuYzoyNDQgbGliL2Rwa2cvY29tcHJlc3MuYzoyOTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiB3cml0ZSBlcnJvciIKK21zZ3N0ciAiJXPvvJrlhafpg6ggYnppcDIg6Yyv6Kqk77yaYCVzJyIKKworIzogbGliL2Rwa2cvY29tcHJlc3MuYzoyNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXM6IGVycm9yIGJpbmRpbmcgb3V0cHV0IHRvIGJ6aXAyIHN0cmVhbSIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9jb21wcmVzcy5jOjI2NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIHJlYWQgZXJyb3IiCittc2dzdHIgIiVz77ya5YWn6YOoIGJ6aXAyIOmMr+iqpO+8mmAlcyciCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6Mjc1IGxpYi9kcGtnL2NvbXByZXNzLmM6Mjg2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogaW50ZXJuYWwgYnppcDIgd3JpdGUgZXJyb3I6ICclcyciCittc2dzdHIgIiVz77ya5YWn6YOoIGJ6aXAyIOmMr+iqpO+8mmAlcyciCisKKyM6IGxpYi9kcGtnL2NvbXByZXNzLmM6MjgyCittc2dpZCAidW5leHBlY3RlZCBiemlwMiBlcnJvciIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjY4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJ1cGRhdGVzIGRpcmVjdG9yeSBjb250YWlucyBmaWxlIGAlLjI1MHMnIHdob3NlIG5hbWUgaXMgdG9vIGxvbmcgKGxlbmd0aD0lZCwgIgorIm1heD0lZCkiCittc2dzdHIgIiIKKyLmm7TmlrDnm67pjITkuK3ljIXlkKvkuobmqpTmoYggYCUuMjUwcyfvvIzkvYblroPnmoTlkI3nqLHlpKrplbfkuobvvIjplbfluqbngrogJWTvvIzmnIDlpKfngrogJWTvvIkiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVwZGF0ZXMgZGlyZWN0b3J5IGNvbnRhaW5zIGZpbGVzIHdpdGggZGlmZmVyZW50IGxlbmd0aCBuYW1lcyAoYm90aCAlZCBhbmQgJWQpIgorbXNnc3RyICLmm7TmlrDnm67pjITkuK3lkKvmnInkuI3lkIzplbfluqblkI3nqLHnmoTmqpTmoYjvvIjliIbliKXngrogJWQg5ZKMICVk77yJIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjg2CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzY2FuIHVwZGF0ZXMgZGlyZWN0b3J5IGAlLjI1NXMnIgorbXNnc3RyICLnhKHms5XmjoPmj4/mm7TmlrDnm67pjIQgYCUuMjU1cyciCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZW1vdmUgaW5jb3Jwb3JhdGVkIHVwZGF0ZSBmaWxlICUuMjU1cyIKK21zZ3N0ciAi54Sh5rOV5Yiq6Zmk5ZCI5L215b6M55qE5pu05paw5qqUICUuMjU1cyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxMjEgZHBrZy1kZWIvYnVpbGQuYzo0NDcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBgJS4yNTVzJyIKK21zZ3N0ciAi54Sh5rOV5bu656uLIGAlLjI1NXMnIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEyNQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmlsbCAlLjI1MHMgd2l0aCBwYWRkaW5nIgorbXNnc3RyICLnhKHms5XnlKjloavmlpnloavmu78gJS4yNTBzIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjEyNworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZmx1c2ggJS4yNTBzIGFmdGVyIHBhZGRpbmciCittc2dzdHIgIuWcqOWhq+WFheW+jOeEoeazleWIt+aWsCAlLjI1MHMiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MTI5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZWVrIHRvIHN0YXJ0IG9mICUuMjUwcyBhZnRlciBwYWRkaW5nIgorbXNnc3RyICLlnKjloavlhYXlvoznhKHms5XmkJzlsIvliLAgJS4yNTBzIOeahOi1t+Wni+S9jee9riIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoxOTUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byBvcGVuIHRtcGZpbGUgZm9yIHZzbnByaW50ZiIKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBsb2NrIGZpbGUgJXMgZm9yIHRlc3RpbmciCittc2dzdHIgIueEoeazleabvyB2c25wcmludGYg6ZaL5ZWf6Ieo5pmC5qqUIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjIyMQorbXNnaWQgInVuYWJsZSB0byBvcGVuL2NyZWF0ZSBzdGF0dXMgZGF0YWJhc2UgbG9ja2ZpbGUiCittc2dzdHIgIueEoeazlemWi+WVny/lu7rnq4vni4DmhYvos4fmlpnluqvnmoTpjpblrprmqpQiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MjMxCittc2dpZCAieW91IGRvIG5vdCBoYXZlIHBlcm1pc3Npb24gdG8gbG9jayB0aGUgZHBrZyBzdGF0dXMgZGF0YWJhc2UiCittc2dzdHIgIuaCqOaykuaciemOluWumiBkcGtnIOeahOeLgOaFi+izh+aWmeW6q+eahOasiumZkCIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyMzMKKyMsIGZ1enp5CisjfCBtc2dpZCAidW5hYmxlIHRvIGxvY2sgZHBrZyBzdGF0dXMgZGF0YWJhc2UiCittc2dpZCAiZHBrZyBzdGF0dXMgZGF0YWJhc2UiCittc2dzdHIgIueEoeazlemOluWumiBkcGtnIOeahOeLgOaFi+izh+aWmeW6qyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyNTcKK21zZ2lkICJyZXF1ZXN0ZWQgb3BlcmF0aW9uIHJlcXVpcmVzIHN1cGVydXNlciBwcml2aWxlZ2UiCittc2dzdHIgIuipsuaTjeS9nOmcgOimgei2hee0muS9v+eUqOiAheasiumZkCIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyNjIKK21zZ2lkICJ1bmFibGUgdG8gYWNjZXNzIGRwa2cgc3RhdHVzIGFyZWEiCittc2dzdHIgIueEoeazleWtmOWPliBkcGtnIOeLgOaFi+W6qyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzoyNjQKK21zZ2lkICJvcGVyYXRpb24gcmVxdWlyZXMgcmVhZC93cml0ZSBhY2Nlc3MgdG8gZHBrZyBzdGF0dXMgYXJlYSIKK21zZ3N0ciAi6Kmy5pON5L2c6ZyA6KaB5ZyoIGRwa2cg54uA5oWL5bqr5pyJ6JGX6K6A5a+r5qyK6ZmQIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjMwOQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVtb3ZlIG15IG93biB1cGRhdGUgZmlsZSAlLjI1NXMiCittc2dzdHIgIueEoeazleWIqumZpOiHquW3seeahOabtOaWsOaqlCAlLjI1NXMiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzQ3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAi54Sh5rOV5a+r5YWlIGAlLjI1MHMnIOeahOabtOaWsOeLgOaFiyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNDkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICLnhKHms5XliLfmlrAgYCUuMjUwcycg55qE5pu05paw54uA5oWLIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM1MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gdHJ1bmNhdGUgZm9yIHVwZGF0ZWQgc3RhdHVzIG9mIGAlLjI1MHMnIgorbXNnc3RyICLnhKHms5XnuK7muJsgYCUuMjUwcycg55qE5pu05paw54uA5oWLIgorCisjOiBsaWIvZHBrZy9kYm1vZGlmeS5jOjM1MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZnN5bmMgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgIueEoeazleWQjOatpSBgJS4yNTBzJyDnmoTmm7TmlrDni4DmhYsiCisKKyM6IGxpYi9kcGtnL2RibW9kaWZ5LmM6MzU1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSB1cGRhdGVkIHN0YXR1cyBvZiBgJS4yNTBzJyIKK21zZ3N0ciAi54Sh5rOV6Zec6ZaJIGAlLjI1MHMnIOeahOabtOaWsOeLgOaFiyIKKworIzogbGliL2Rwa2cvZGJtb2RpZnkuYzozNTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgdXBkYXRlZCBzdGF0dXMgb2YgYCUuMjUwcyciCittc2dzdHIgIueEoeazleWuieijnSBgJS4yNTBzJyDnmoTmm7TmlrDni4DmhYsiCisKKyM6IGxpYi9kcGtnL2Rpci5jOjUwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gcmVhZCBmaWxlZGVzY3JpcHRvciBmbGFncyBmb3IgJS4yNTBzIgorbXNnaWQgInVuYWJsZSB0byBnZXQgZmlsZSBkZXNjcmlwdG9yIGZvciBkaXJlY3RvcnkgJyVzJyIKK21zZ3N0ciAi54Sh5rOV6K6A5Y+WICUuMjUwcyDnmoTmqpTmoYjph43lsI7nmoToqK3lrpoiCisKKyM6IGxpYi9kcGtnL2Rpci5jOjU0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBkaXJlY3RvcnkgJyVzJyIKK21zZ3N0ciAi54Sh5rOV6ZaL5ZWf5L6G5rqQ5qqUIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy9kaXIuYzo2OSBsaWIvZHBrZy9kaXIuYzoxMzEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICLnhKHms5XplovllZ/kvobmupDmqpQgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2Rpci5jOjEwOSBzcmMvZGl2ZXJ0Y21kLmM6MjE4IGRwa2ctc3BsaXQvc3BsaXQuYzoyMDIKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjkzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBmaWxlICclcyciCittc2dzdHIgIueEoeazlemWi+WVn+S+hua6kOaqlCBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvZGlyLmM6MTExIHNyYy9kaXZlcnRjbWQuYzoyMzIgc3JjL2RpdmVydGNtZC5jOjM3NworIzogc3JjL3N0YXRjbWQuYzoyMTcgZHBrZy1kZWIvYnVpbGQuYzo1OTggZHBrZy1zcGxpdC9qb2luLmM6NjUKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxODcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE0MDYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzeW5jIGZpbGUgJyVzJyIKK21zZ3N0ciAi54Sh5rOV6ZaL5ZWf5L6G5rqQ5qqUIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy9kaXIuYzoxMTMgc3JjL2RpdmVydGNtZC5jOjIzNCBzcmMvZGl2ZXJ0Y21kLmM6Mzc5CisjOiBkcGtnLWRlYi9idWlsZC5jOjYwMCBkcGtnLXNwbGl0L2pvaW4uYzo2NyBkcGtnLXNwbGl0L3F1ZXVlLmM6MTg5CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTMxNCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTQwOAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIGZpbGUgJyVzJyIKK21zZ3N0ciAi54Sh5rOV5ZyoIHZzbnByaW50ZiDoo6HpgLLooYzliLfmlrAiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzozOTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIGRldGFpbHMgb2YgYCUuNTBzJyB0byBgJS4yNTBzJyIKK21zZ3N0ciAi54Sh5rOV5bCHIGAlLjUwcycg55qE6Kmz55uh6LOH6KiK5a+r5YWlIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDIzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiAnJXMnIGZvciB3cml0aW5nICVzIGRhdGFiYXNlIgorbXNnc3RyICLnhKHms5XplovllZ8gYCVzJyDku6Xlr6vlhaUgJXMg6LOH6KiKIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDI2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IGJ1ZmZlcmluZyBvbiAlcyBkYXRhYmFzZSBmaWxlIgorbXNnc3RyICLnhKHms5XlnKjni4DmhYvmqpTkuIroqK3nva7nt6nooZ3ljYAiCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0MzgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB3cml0ZSAlcyBkYXRhYmFzZSByZWNvcmQgYWJvdXQgJyUuNTBzJyB0byAnJS4yNTBzJyIKK21zZ3N0ciAi54Sh5rOV5a+r5YWlICVzIOiomOmMhO+8iOeUsSBgJS41MHMnIOiHsyBgJS4yNTBzJ++8iSIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ0NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZsdXNoICVzIGRhdGFiYXNlIHRvICclLjI1MHMnIgorbXNnc3RyICLnhKHms5XliLfmlrAgJXMg6LOH6KiK6IezIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDQ4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZnN5bmMgJXMgZGF0YWJhc2UgdG8gJyUuMjUwcyciCittc2dzdHIgIueEoeazleWQjOatpSAlcyDos4foqIroh7MgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL2R1bXAuYzo0NTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjbG9zZSAnJS4yNTBzJyBhZnRlciB3cml0aW5nICVzIGRhdGFiYXNlIgorbXNnc3RyICLlnKjlr6vlhaUgJTIkcyDos4foqIrkuYvlvozvvIznhKHms5Xpl5zplokgYCUxJC4yNTBzJyIKKworIzogbGliL2Rwa2cvZHVtcC5jOjQ1NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGxpbmsgJyUuMjUwcycgdG8gJyUuMjUwcycgZm9yIGJhY2t1cCBvZiAlcyBkYXRhYmFzZSIKK21zZ3N0ciAi54Sh5rOV5bCHIGAlLjI1MHMnIOaMh+WQkSBgJS4yNTBzJyDku6XlgZrngrogJXMg55qE5YKZ5Lu95LmL55SoIgorCisjOiBsaWIvZHBrZy9kdW1wLmM6NDU4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gaW5zdGFsbCAnJS4yNTBzJyBhcyAnJS4yNTBzJyBjb250YWluaW5nICVzIGRhdGFiYXNlIgorbXNnc3RyICLnhKHms5XlsIcgYCUuMjUwcycg5a6J6KOd54K6IGAlLjI1MHMnIOS7peWMheWQqyAlcyDos4foqIoiCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzo5NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IHVucmVjb3ZlcmFibGUgZmF0YWwgZXJyb3IsIGFib3J0aW5nOlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisiJXPvvJrnhKHlj6/mjL3lm57nmoToh7Tlkb3pjK/oqqTvvIzkuK3mraLmk43kvZzvvJpcbiIKKyIgJXNcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjEwMAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIiVzOiB1bnJlY292ZXJhYmxlIGZhdGFsIGVycm9yLCBhYm9ydGluZzpcbiIKKyN8ICIgJXNcbiIKK21zZ2lkICIiCisiJXM6IG91dHNpZGUgZXJyb3IgY29udGV4dCwgYWJvcnRpbmc6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKyIlc++8mueEoeWPr+aMveWbnueahOiHtOWRvemMr+iqpO+8jOS4reatouaTjeS9nO+8mlxuIgorIiAlc1xuIgorCisjOiBsaWIvZHBrZy9laGFuZGxlLmM6MTIwCisjLCBmdXp6eQorI3wgbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBjbGVhbnVwIGVudHJ5IgorbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBlcnJvciBjb250ZXh0IgorbXNnc3RyICLmlrDnmoTmuIXnkIbpoIXnm67lsI7oh7ToqJjmhrbpq5TkuI3mlbfkvb/nlKgiCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoxODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzOiBlcnJvciB3aGlsZSBjbGVhbmluZyB1cDpcbiIKKyIgJXNcbiIKK21zZ3N0ciAiIgorIiVzOiDlnKjmuIXnkIbmmYLnmbznlJ/pjK/oqqTvvJpcbiIKKyIgJXNcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjIwMQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZHBrZzogdG9vIG1hbnkgbmVzdGVkIGVycm9ycyBkdXJpbmcgZXJyb3IgcmVjb3ZlcnkgISFcbiIKK21zZ2lkICIlczogdG9vIG1hbnkgbmVzdGVkIGVycm9ycyBkdXJpbmcgZXJyb3IgcmVjb3ZlcnkhIVxuIgorbXNnc3RyICJkcGtn77ya5Zyo6Yyv6Kqk5Zue5b6p6YGO56iL5Lit5Y+I55m855Sf5LqG5pu05aSa55qE5bGk5bGk6Yyv6Kqk77yB77yBXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoyNjggbGliL2Rwa2cvZWhhbmRsZS5jOjMwNworbXNnaWQgIm91dCBvZiBtZW1vcnkgZm9yIG5ldyBjbGVhbnVwIGVudHJ5IgorbXNnc3RyICLmlrDnmoTmuIXnkIbpoIXnm67lsI7oh7ToqJjmhrbpq5TkuI3mlbfkvb/nlKgiCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzoyOTEKK21zZ2lkICJvdXQgb2YgbWVtb3J5IGZvciBuZXcgY2xlYW51cCBlbnRyeSB3aXRoIG1hbnkgYXJndW1lbnRzIgorbXNnc3RyICLmlrDnmoTmuIXnkIbpoIXnm67nmoTlj4PmlbjlpKrlpJrlsI7oh7ToqJjmhrbpq5TkuI3mlbfkvb/nlKgiCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzozNTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBlcnJvcjogJXNcbiIKK21zZ3N0ciAiIgorIiVzOiDlnKjmuIXnkIbmmYLnmbznlJ/pjK/oqqTvvJpcbiIKKyIgJXNcbiIKKworIzogbGliL2Rwa2cvZWhhbmRsZS5jOjM5MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IHdhcm5pbmc6ICVzXG4iCittc2dzdHIgIiIKKyIlczog5Zyo5riF55CG5pmC55m855Sf6Yyv6Kqk77yaXG4iCisiICVzXG4iCisKKyM6IGxpYi9kcGtnL2VoYW5kbGUuYzo0MTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiVzOiVkOiBpbnRlcm5hbCBlcnJvcjogJXNcbiIKK21zZ3N0ciAiJXM6JWTvvJrlhafpg6jpjK/oqqQgYCVzJ1xuIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NQorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBpcyBtaXNzaW5nIgorbXNnc3RyICLmnKrmib7liLAgJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJgJS4qcycgaXMgbm90IGFsbG93ZWQgZm9yICVzIgorbXNnaWQgIiclLjUwcycgaXMgbm90IGFsbG93ZWQgZm9yICVzIgorbXNnc3RyICJgJS4qcycg5LiN5Y+v55So5pa8ICVzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo3MworIywgYy1mb3JtYXQKK21zZ2lkICJqdW5rIGFmdGVyICVzIgorbXNnc3RyICLlnKggJXMg5LmL5b6M5pyJ5aSa6aSY55qE6LOH5paZIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo4NworIywgYy1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHBhY2thZ2UgbmFtZSAoJS4yNTBzKSIKK21zZ3N0ciAi54Sh5pWI55qE5aWX5Lu25ZCN56ixICglLjI1MHMpIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZW1wdHkgZmlsZSBkZXRhaWxzIGZpZWxkIGAlcyciCittc2dzdHIgIuaqlOahiOiqquaYjuashOS9jSBgJXMnIOaYr+epuueahCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTA1CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgZGV0YWlscyBmaWVsZCBgJXMnIG5vdCBhbGxvd2VkIGluIHN0YXR1cyBmaWxlIgorbXNnc3RyICLpgJnlgIvmqpTmoYjoqqrmmI7mrITkvY0gYCVzJyDkuI3lj6/nlKjmlrzni4DmhYvmqpQiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjExOAorIywgYy1mb3JtYXQKK21zZ2lkICJ0b28gbWFueSB2YWx1ZXMgaW4gZmlsZSBkZXRhaWxzIGZpZWxkIGAlcycgKGNvbXBhcmVkIHRvIG90aGVycykiCittc2dzdHIgIuaqlOahiOiqquaYjuashOS9jSBgJXMnIOijoeeahOWAvOWkquWkmu+8iOWSjOWFtuS7lueahOebuOavlO+8iSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTMyCisjLCBjLWZvcm1hdAorbXNnaWQgInRvbyBmZXcgdmFsdWVzIGluIGZpbGUgZGV0YWlscyBmaWVsZCBgJXMnIChjb21wYXJlZCB0byBvdGhlcnMpIgorbXNnc3RyICLmqpTmoYjoqqrmmI7mrITkvY0gYCVzJyDkuK3nmoTlgLzlpKrlsJHvvIjlkozlhbbku5bnmoTnm7jmr5TvvIkiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE1NAorbXNnaWQgInllcy9ubyBpbiBib29sZWFuIGZpZWxkIgorbXNnc3RyICJib29sZWFuIOashOS9jeeahCB5ZXMvbm8iCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE3NAorbXNnaWQgIndvcmQgaW4gYHByaW9yaXR5JyBmaWVsZCIKK21zZ3N0ciAiYOWEquWFiOetiee0micg5qyE5L2N55qE5a2X5LiyIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxODYKK21zZ2lkICJ2YWx1ZSBmb3IgYHN0YXR1cycgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICLlnKjmraTkuI3og73kvb/nlKjpgJnlgIsgYHN0YXR1cycg5qyE5L2N55qE5YC8IgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoxOTEKK21zZ2lkICJmaXJzdCAod2FudCkgd29yZCBpbiBgc3RhdHVzJyBmaWVsZCIKK21zZ3N0ciAi5ZyoIGBzdGF0dXMnIOashOS9jeeahOesrOS4gOWAi+WtlyAod2FudCkiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjE5NAorbXNnaWQgInNlY29uZCAoZXJyb3IpIHdvcmQgaW4gYHN0YXR1cycgZmllbGQiCittc2dzdHIgIuWcqCBgc3RhdHVzJyDmrITkvY3nmoTnrKzkuozlgIvlrZcgKGVycm9yKSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MTk3Cittc2dpZCAidGhpcmQgKHN0YXR1cykgd29yZCBpbiBgc3RhdHVzJyBmaWVsZCIKK21zZ3N0ciAi5ZyoIGBzdGF0dXMnIOashOS9jeeahOesrOS4ieWAi+WtlyAoc3RhdHVzKSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjA3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJlcnJvciBpbiBWZXJzaW9uIHN0cmluZyBgJS4yNTBzJzogJS4yNTBzIgorbXNnaWQgImVycm9yIGluIFZlcnNpb24gc3RyaW5nICclLjI1MHMnIgorbXNnc3RyICLniYjmnKzlrZfkuLIgYCUuMjUwcycg5pyJ6Kqk77yaJS4yNTBzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyMTgKK21zZ2lkICJvYnNvbGV0ZSBgUmV2aXNpb24nIG9yIGBQYWNrYWdlLVJldmlzaW9uJyBmaWVsZCB1c2VkIgorbXNnc3RyICLkvb/nlKjkuoblt7Llu6Lmo4TnmoQgYFJldmlzaW9uJyDmiJYgYFBhY2thZ2UtUmV2aXNpb24nIOashOS9jSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MjM1Cittc2dpZCAidmFsdWUgZm9yIGBjb25maWctdmVyc2lvbicgZmllbGQgbm90IGFsbG93ZWQgaW4gdGhpcyBjb250ZXh0IgorbXNnc3RyICLlnKjmraTkuI3og73kvb/nlKjpgJnlgIsgYGNvbmZpZy12ZXJzaW9uJyDmrITkvY3nmoTlgLwiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjI0MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZXJyb3IgaW4gQ29uZmlnLVZlcnNpb24gc3RyaW5nIGAlLjI1MHMnOiAlLjI1MHMiCittc2dpZCAiZXJyb3IgaW4gQ29uZmlnLVZlcnNpb24gc3RyaW5nICclLjI1MHMnIgorbXNnc3RyICJDb25maWctVmVyc2lvbiDlrZfkuLIgYCUuMjUwcycg5pyJ6Kqk77yaJS4yNTBzIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAidmFsdWUgZm9yIGBjb25mZmlsZXMnIGhhcyBtYWxmb3JtYXR0ZWQgbGluZSBgJS4qcyciCittc2dzdHIgImBjb25mZmlsZXMnIOeahOWAvOacieihjCBgJS4qcycg55qE5qC85byP6Yyv6Kqk5LqGIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzoyODcKKyMsIGMtZm9ybWF0Cittc2dpZCAidmFsdWUgZm9yIGBjb25mZmlsZXMnIGhhcyBsaW5lIHN0YXJ0aW5nIHdpdGggbm9uLXNwYWNlIGAlYyciCittc2dzdHIgImBjb25mZmlsZXMnIOeahOWAvOacieihjOaYr+S7pemdnuepuueZveWtl+WFgyBgJWMnIOmWi+mgrSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MzA0Cittc2dpZCAicm9vdCBvciBudWxsIGRpcmVjdG9yeSBpcyBsaXN0ZWQgYXMgYSBjb25mZmlsZSIKK21zZ3N0ciAicm9vdCDmiJbnqbrnm67pjITkuZ/ooqvliJfngrogY29uZmZpbGUiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjM2NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgbWlzc2luZyBwYWNrYWdlIG5hbWUsIG9yIGdhcmJhZ2Ugd2hlcmUgcGFja2FnZSBuYW1lIGV4cGVjdGVkIgorbXNnc3RyICJgJXMnIOashOS9je+8jOaJvuS4jeWIsOWll+S7tuWQjeeose+8jOaIluaYr+aHieeVtueCuuWll+S7tuWQjeeoseeahOWcsOaWueaYr+S6gueivCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6MzcwCisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgZmllbGQsIGludmFsaWQgcGFja2FnZSBuYW1lIGAlLjI1NXMnOiAlcyIKK21zZ3N0ciAiYCVzJyDmrITkvY3vvIznhKHmlYjnmoTlpZfku7blkI3nqLEgYCUuMjU1cyfvvJolcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDA2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6XG4iCisiIGJhZCB2ZXJzaW9uIHJlbGF0aW9uc2hpcCAlYyVjIgorbXNnc3RyICIiCisiYCVzJyDmrITkvY3vvIzlj4Pnhafoh7MgYCUuMjU1cyfvvJpcbiIKKyIg5LiN5q2j56K655qE54mI5pys55u45L6d6Zec5L+CICVjJWMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQxMgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiYCVzJyBmaWVsZCwgcmVmZXJlbmNlIHRvIGAlLjI1NXMnOlxuIgorIiBgJWMnIGlzIG9ic29sZXRlLCB1c2UgYCVjPScgb3IgYCVjJWMnIGluc3RlYWQiCittc2dzdHIgIiIKKyJgJXMnIOashOS9je+8jOWPg+eFp+iHsyBgJS4yNTVzJ++8mlxuIgorIiBgJWMnIOW3suW7ouajhO+8jOiri+abv+iAjOS9v+eUqCBgJWM9JyDmiJYgYCVjJWMnIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzpcbiIKKyIgaW1wbGljaXQgZXhhY3QgbWF0Y2ggb24gdmVyc2lvbiBudW1iZXIsIHN1Z2dlc3QgdXNpbmcgYD0nIGluc3RlYWQiCittc2dzdHIgIiIKKyJgJXMnIOashOS9je+8jOWPg+eFp+iHsyBgJS4yNTVzJ++8mlxuIgorIiDmnKrmmI7norropoHmsYLniYjmnKzomZ/lrozlhajkuIDoh7TvvIzlu7rorbDmm7/ogIzkvb/nlKggYD0nIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0MzAKK21zZ2lkICJPbmx5IGV4YWN0IHZlcnNpb25zIG1heSBiZSB1c2VkIGZvciBQcm92aWRlcyIKK21zZ3N0ciAi5ZyoIFByb3ZpZGVzIOS4reWPquiDveaMh+WumuaYjueiuueahOeJiOacrCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDM0CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6XG4iCisiIHZlcnNpb24gdmFsdWUgc3RhcnRzIHdpdGggbm9uLWFscGhhbnVtZXJpYywgc3VnZ2VzdCBhZGRpbmcgYSBzcGFjZSIKK21zZ3N0ciAiIgorImAlcycg5qyE5L2N77yM5Y+D54Wn6IezIGAlLjI1NXMn77yaXG4iCisiIOeJiOacrOiZn+S4jeaYr+S7peiLseaVuOWtl+mWi+mgre+8jOW7uuitsOWKoOS4gOWAi+epuuagvCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDUxIGxpYi9kcGtnL2ZpZWxkcy5jOjQ1NQorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGZpZWxkLCByZWZlcmVuY2UgdG8gYCUuMjU1cyc6IHZlcnNpb24gY29udGFpbnMgYCVjJyIKK21zZ3N0ciAiYCVzJyDmrITkvY3vvIzlj4Pnhafoh7MgYCUuMjU1cyfvvJrniYjmnKzomZ/lkKvmnIkgYCVjJyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDU5CisjLCBjLWZvcm1hdAorbXNnaWQgImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzogdmVyc2lvbiB1bnRlcm1pbmF0ZWQiCittc2dzdHIgImAlcycg5qyE5L2N77yM5Y+D54Wn6IezIGAlLjI1NXMn77ya54mI5pys6Jmf5pyq57WC5q2iIgorCisjOiBsaWIvZHBrZy9maWVsZHMuYzo0NjUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImAlcycgZmllbGQsIHJlZmVyZW5jZSB0byBgJS4yNTVzJzogZXJyb3IgaW4gdmVyc2lvbjogJS4yNTVzIgorbXNnaWQgIiclcycgZmllbGQsIHJlZmVyZW5jZSB0byAnJS4yNTVzJzogZXJyb3IgaW4gdmVyc2lvbiIKK21zZ3N0ciAiYCVzJyDmrITkvY3vvIzlj4Pnhafoh7MgYCUuMjU1cyfvvJrniYjmnKzomZ/mnInoqqTvvJolLjI1NXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjQ3NQorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGZpZWxkLCBzeW50YXggZXJyb3IgYWZ0ZXIgcmVmZXJlbmNlIHRvIHBhY2thZ2UgYCUuMjU1cyciCittc2dzdHIgImAlcycg5qyE5L2N77yM5Zyo5Y+D54Wn6Iez5aWX5Lu2IGAlLjI1NXMnIOW+jOeahOiqnuazleacieiqpCIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NDgyCisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlcyAoYHwnKSBub3QgYWxsb3dlZCBpbiAlcyBmaWVsZCIKK21zZ3N0ciAi5ZyoICVzIOashOS9jeS4jeWPr+acieWPr+abv+aPm+espuiZnyAoYHwnKSIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTM2Cittc2dpZCAidmFsdWUgZm9yIGB0cmlnZ2Vycy1wZW5kaW5nJyBmaWVsZCBub3QgYWxsb3dlZCBpbiB0aGlzIGNvbnRleHQiCittc2dzdHIgImB0cmlnZ2Vycy1wZW5kaW5nJyDmrITkvY3miYDoqK3lrprnmoTlgLzkuI3og73nlKjlnKjpgJnlgIvlnLDmlrkiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU0MworIywgYy1mb3JtYXQKK21zZ2lkICJpbGxlZ2FsIHBlbmRpbmcgdHJpZ2dlciBuYW1lIGAlLjI1NXMnOiAlcyIKK21zZ3N0ciAi5LiN5ZCI5rOV55qE5b6F5Z+36KGM6Ke455m856iL5byP5ZCN56ixIGAlLjI1NXMnOiAlcyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTQ3CisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBwZW5kaW5nIHRyaWdnZXIgYCUuMjU1cyciCittc2dzdHIgIumHjeikh+eahOW+heWft+ihjOinuOeZvOeoi+W8jyBgJS4yNTVzJyIKKworIzogbGliL2Rwa2cvZmllbGRzLmM6NTYxCittc2dpZCAidmFsdWUgZm9yIGB0cmlnZ2Vycy1hd2FpdGVkJyBmaWVsZCBub3QgYWxsb3dlZCBpbiB0aGlzIGNvbnRleHQiCittc2dzdHIgImB0cmlnZ2Vycy1hd2FpdGVkJyDmrITkvY3miYDoqK3lrprnmoTlgLzkuI3og73nlKjlnKjpgJnlgIvlnLDmlrkiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU2OAorIywgYy1mb3JtYXQKK21zZ2lkICJpbGxlZ2FsIHBhY2thZ2UgbmFtZSBpbiBhd2FpdGVkIHRyaWdnZXIgYCUuMjU1cyc6ICVzIgorbXNnc3RyICLlnKjmraPopoHln7fooYznmoTop7jnmbznqIvlvI8gYCUuMjU1cycg6KOh5pyJ5LiN5ZCI5rOV55qE5aWX5Lu25ZCN56ix77yaJXMiCisKKyM6IGxpYi9kcGtnL2ZpZWxkcy5jOjU3NAorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgYXdhaXRlZCB0cmlnZ2VyIHBhY2thZ2UgYCUuMjU1cyciCittc2dzdHIgIumHjeikh+eahOato+imgeWft+ihjOeahOinuOeZvOeoi+W8j+Wll+S7tiBgJS4yNTVzJyIKKworIzogbGliL2Rwa2cvZmlsZS5jOjUxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBzb3VyY2UgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAi54Sh5rOV6ZaL5ZWf5L6G5rqQ5qqUIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy9maWxlLmM6NTUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGFuZ2Ugb3duZXJzaGlwIG9mIHRhcmdldCBmaWxlICclLjI1MHMnIgorbXNnc3RyICLnhKHms5XmlLnorormlrDnmbzkvYjnmoQgY29uZmZpbGUgYCUuMjUwcycg55qE5omA5pyJ5qyKIgorCisjOiBsaWIvZHBrZy9maWxlLmM6NTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgbW9kZSBvZiB0YXJnZXQgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAi54Sh5rOV6Kit5a6a5paw55m85L2I55qEIGNvbmZmaWxlIGAlLjI1MHMnIOeahOasiumZkCIKKworIzogbGliL2Rwa2cvZmlsZS5jOjg1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gdW5sb2NrICVzOiAlcyIKK21zZ2lkICJ1bmFibGUgdG8gdW5sb2NrICVzIgorbXNnc3RyICLnhKHms5Xop6PpmaTpjpblrpogJXPvvJolcyIKKworIzogbGliL2Rwa2cvZmlsZS5jOjExMQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoZWNrIGZpbGUgJyVzJyBsb2NrIHN0YXR1cyIKK21zZ3N0ciAi54Sh5rOV6ZaL5ZWf5L6G5rqQ5qqUIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy9maWxlLmM6MTQ2CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJzdGF0dXMgZGF0YWJhc2UgYXJlYSBpcyBsb2NrZWQgYnkgYW5vdGhlciBwcm9jZXNzIgorbXNnaWQgIiVzIGlzIGxvY2tlZCBieSBhbm90aGVyIHByb2Nlc3MiCittc2dzdHIgIueLgOaFi+izh+aWmeW6q+W3suiiq+WPpuWkluS4gOWAi+eoi+W6j+mOluWumuS6hiIKKworIzogbGliL2Rwa2cvZmlsZS5jOjE0OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHVubG9jayAlczogJXMiCittc2dpZCAidW5hYmxlIHRvIGxvY2sgJXMiCittc2dzdHIgIueEoeazleino+mZpOmOluWumiAlc++8miVzIgorCisjOiBsaWIvZHBrZy9sb2cuYzo1MworIywgYy1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBvcGVuIGxvZyBgJXMnOiAlc1xuIgorbXNnc3RyICLnhKHms5XplovllZ/ml6XoqozmqpQgYCVzJ++8miVzXG4iCisKKyM6IGxpYi9kcGtnL2xvZy5jOjg1Cittc2dpZCAiPHBhY2thZ2Ugc3RhdHVzIGFuZCBwcm9ncmVzcyBmaWxlIGRlc2NyaXB0b3I+IgorbXNnc3RyICI85aWX5Lu255qE54uA5oWL5Y+K6YCy5bGV55qE5qqU5qGI6YeN5bCOPiIKKworIzogbGliL2Rwa2cvbG9nLmM6MTE0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gd3JpdGUgdG8gc3RhdHVzIGZkICVkIgorbXNnc3RyICLnhKHms5Xlr6vlhaUgYCUuMjUwcycg55qE5pu05paw54uA5oWLIgorCisjOiBsaWIvZHBrZy9tbGliLmM6NDQgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAicmVhbGxvYyBmYWlsZWQgKCV6dSBieXRlcykiCittc2dpZCAibWFsbG9jIGZhaWxlZCAoJXp1IGJ5dGVzKSIKK21zZ3N0ciAicmVhbGxvYyDlpLHmlZfvvIglenUg5L2N5YWD57WE77yJIgorCisjOiBsaWIvZHBrZy9tbGliLmM6NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAicmVhbGxvYyBmYWlsZWQgKCV6dSBieXRlcykiCittc2dzdHIgInJlYWxsb2Mg5aSx5pWX77yIJXp1IOS9jeWFg+e1hO+8iSIKKworIzogbGliL2Rwa2cvbWxpYi5jOjcyIGxpYi9kcGtnL21saWIuYzo5MCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6Mjc3CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MzM0IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTA3Cittc2dpZCAiZmFpbGVkIHRvIGFsbG9jYXRlIG1lbW9yeSIKK21zZ3N0ciAi54Sh5rOV6YWN572u6KiY5oa26auUIgorCisjOiBsaWIvZHBrZy9tbGliLmM6MTAyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBkdXAgZm9yIHN0ZCVzIgorbXNnc3RyICLnhKHms5Xmm78gc3RkJXMg6YCy6KGMIGR1cCIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEwMworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gZHVwIGZvciBmZCAlZCIKK21zZ3N0ciAi54Sh5rOV5pu/IGZkICVkIOmAsuihjCBkdXAiCisKKyM6IGxpYi9kcGtnL21saWIuYzoxMDkKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIHBpcGUiCittc2dzdHIgIueEoeazleW7uueri+euoee3miIKKworIzogbGliL2Rwa2cvbWxpYi5jOjExNworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igd3JpdGluZyB0byAnJXMnIgorbXNnc3RyICJgJXMnIOWvq+WFpemMr+iqpCIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEyNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVhZCBmaWxlZGVzY3JpcHRvciBmbGFncyBmb3IgJS4yNTBzIgorbXNnc3RyICLnhKHms5XoroDlj5YgJS4yNTBzIOeahOaqlOahiOmHjeWwjueahOioreWumiIKKworIzogbGliL2Rwa2cvbWxpYi5jOjEyNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IGNsb3NlLW9uLWV4ZWMgZmxhZyBmb3IgJS4yNTBzIgorbXNnc3RyICLnhKHms5XlnKggJS4yNTBzIOS4iuioreWumiBjbG9zZS1vbi1leGVjIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6NjMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImNvbmZpZ3VyYXRpb24gZXJyb3I6ICVzOiVkOiAlcyIKK21zZ3N0ciAi6Kit5a6a6Yyv6Kqk77ya6ZyA6LOm5LqI5YC857WmICVzIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6NzUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBvcGVuIGNvbmZpZ3VyYXRpb24gZmlsZSAnJS4yNTVzJyBmb3IgcmVhZGluZzogJXMiCittc2dzdHIgIueEoeazlemWi+WVn+ioreWumuaqlCBgJS4yNTVzJyDku6XpgLLooYzoroDlj5YiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoxMDIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5iYWxhbmNlZCBxdW90ZXMgaW4gJyVzJyIKK21zZ3N0ciAiIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTE3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiAnJXMnIgorbXNnc3RyICLmnKrnn6XpgbjpoIUgYCVzJyIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjEyMQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBuZWVkcyBhIHZhbHVlIgorbXNnc3RyICItLSVzIOmBuOmghemcgOacieS4gOWAi+WPg+aVuCIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjEyNworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBkb2VzIG5vdCB0YWtlIGEgdmFsdWUiCittc2dzdHIgIi0tJXMg6YG46aCF5Lim5LiN6ZyA6KaB5Y+D5pW4IgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTMzCisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWQgZXJyb3IgaW4gY29uZmlndXJhdGlvbiBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICLoqK3lrprmqpQgYCUuMjU1cycg6K6A5Y+W6Yyv6KqkIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgY29uZmlndXJhdGlvbiBmaWxlIGAlLjI1NXMnIgorbXNnc3RyICLlnKjpl5zplonoqK3lrprmqpQgYCUuMjU1cycg5pmC55m855Sf6Yyv6KqkIgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MTcwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBvcGVuaW5nIGNvbmZpZ3VyYXRpb24gZGlyZWN0b3J5ICclcyciCittc2dzdHIgIuWcqOmXnOmWieioreWumuaqlCBgJS4yNTVzJyDmmYLnmbznlJ/pjK/oqqQiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gLS0lcyIKK21zZ3N0ciAi5pyq55+l55qE6YG46aCFIC0tJXMiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBvcHRpb24gdGFrZXMgYSB2YWx1ZSIKK21zZ3N0ciAiLS0lcyDpgbjpoIXpnIDmnInkuIDlgIvlj4PmlbgiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBvcHRpb24gZG9lcyBub3QgdGFrZSBhIHZhbHVlIgorbXNnc3RyICItLSVzIOmBuOmgheS4puS4jemcgOimgeWPg+aVuCIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI0NQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiAtJWMiCittc2dzdHIgIuacquefpeeahOmBuOmghSAtJWMiCisKKyM6IGxpYi9kcGtnL29wdGlvbnMuYzoyNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiLSVjIG9wdGlvbiB0YWtlcyBhIHZhbHVlIgorbXNnc3RyICItJWMg6YG46aCF6ZyA5pyJ5LiA5YCL5Y+D5pW4IgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjU4CisjLCBjLWZvcm1hdAorbXNnaWQgIi0lYyBvcHRpb24gZG9lcyBub3QgdGFrZSBhIHZhbHVlIgorbXNnc3RyICItJWMg6YG46aCF5Lim5LiN6ZyA6KaB5Y+D5pW4IgorCisjOiBsaWIvZHBrZy9vcHRpb25zLmM6MjcxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJvYnNvbGV0ZSBvcHRpb24gJy0tJXMnXG4iCittc2dzdHIgIuitpuWRiu+8muW3suW7ouajhOmBuOmghSBgLS0lcydcbiIKKworIzogbGliL2Rwa2cvb3B0aW9ucy5jOjI4NworIywgYy1mb3JtYXQKK21zZ2lkICJjb25mbGljdGluZyBhY3Rpb25zIC0lYyAoLS0lcykgYW5kIC0lYyAoLS0lcykiCittc2dzdHIgIuebuOS6kuihneeqgeeahOaTjeS9nCAtJWMgKC0tJXMpIOWSjCAtJWMgKC0tJXMpIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgdmFsdWUgZm9yIGAlcycgZmllbGQiCittc2dzdHIgIuacieWkmuWAi+WAvOWwjeaHieiHsyBgJXMnIOashOS9jSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoxNDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidXNlci1kZWZpbmVkIGZpZWxkIG5hbWUgYCUuKnMnIHRvbyBzaG9ydCIKK21zZ3N0ciAi55So5oi26Ieq5a6a55qE5qyE5L2N5ZCNIGAlLipzJyDpgY7nn60iCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MTUyCisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSB2YWx1ZSBmb3IgdXNlci1kZWZpbmVkIGZpZWxkIGAlLipzJyIKK21zZ3N0ciAi5pyJ5aSa5YCL5YC85bCN5oeJ6Iez55So5oi26Ieq5a6a55qE5qyE5L2NIGAlLipzJyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMDcKK21zZ2lkICJDb25maWd1cmVkLVZlcnNpb24gZm9yIHBhY2thZ2Ugd2l0aCBpbmFwcHJvcHJpYXRlIFN0YXR1cyIKK21zZ3N0ciAi5aWX5Lu255qEIENvbmZpZ3VyZWQtVmVyc2lvbiDlkowgU3RhdHVzIOeahOWFp+WuueS4jeespiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBoYXMgc3RhdHVzICVzIGJ1dCB0cmlnZ2VycyBhcmUgYXdhaXRlZCIKK21zZ3N0ciAi5aWX5Lu255qE54uA5oWL54K6ICVzIOS9huinuOeZvOeoi+W8j+ato+imgeWft+ihjCIKKworIzogbGliL2Rwa2cvcGFyc2UuYzoyMjIKK21zZ2lkICJwYWNrYWdlIGhhcyBzdGF0dXMgdHJpZ2dlcnMtYXdhaXRlZCBidXQgbm8gdHJpZ2dlcnMgYXdhaXRlZCIKK21zZ3N0ciAi5aWX5Lu255qE54uA5oWL54K6IHRyaWdnZXJzLWF3YWl0ZWQg5L2G5Lim5rKS5pyJ6Ke455m856iL5byP5q2j6KaB5Z+36KGMIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjIyOAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGhhcyBzdGF0dXMgJXMgYnV0IHRyaWdnZXJzIGFyZSBwZW5kaW5nIgorbXNnc3RyICLlpZfku7bnmoTni4DmhYvngrogJXMg5L2G6Ke455m856iL5byP5bCa5b6F5Z+36KGMIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjIzMgorbXNnaWQgInBhY2thZ2UgaGFzIHN0YXR1cyB0cmlnZ2Vycy1wZW5kaW5nIGJ1dCBubyB0cmlnZ2VycyBwZW5kaW5nIgorbXNnc3RyICLlpZfku7bnmoTni4DmhYvngrogdHJpZ2dlcnMtcGVuZGluZyDkvYbkuKbmspLmnInop7jnmbznqIvlvI/lsJrlvoXln7fooYwiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6MjQyCittc2dpZCAiUGFja2FnZSB3aGljaCBpbiBzdGF0ZSBub3QtaW5zdGFsbGVkIGhhcyBjb25mZmlsZXMsIGZvcmdldHRpbmcgdGhlbSIKK21zZ3N0ciAi6Kmy5aWX5Lu255qE54uA5oWL5piv5bCa5pyq5a6J6KOd77yM5L2G5piv5a6D5Y275pyJIGNvbmZmaWxl77yM5LiN5Y6755CG5pyD5a6DIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjMzNQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gb3BlbiBwYWNrYWdlIGluZm8gZmlsZSBgJS4yNTVzJyBmb3IgcmVhZGluZyIKK21zZ3N0ciAi54Sh5rOV6ZaL5ZWf5aWX5Lu255qEIGluZm8g5qqUIGAlLjI1NXMnIOS7pemAsuihjOiugOWPliIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozNDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2FuJ3Qgc3RhdCBwYWNrYWdlIGluZm8gZmlsZSBgJS4yNTVzJyIKK21zZ3N0ciAi54Sh5rOV5Y+W5b6X5aWX5Lu255qEIGluZm8g5qqUIGAlLjI1NXMnIOeahOeLgOaFiyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzozNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2FuJ3QgbW1hcCBwYWNrYWdlIGluZm8gZmlsZSBgJS4yNTVzJyIKK21zZ3N0ciAi54Sh5rOVIG1tYXAg5aWX5Lu255qEIGluZm8g5qqUIGAlLjI1NXMnIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjM1MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiY2FuJ3Qgc3RhdCBwYWNrYWdlIGluZm8gZmlsZSBgJS4yNTVzJyIKK21zZ2lkICJyZWFkaW5nIHBhY2thZ2UgaW5mbyBmaWxlICclLjI1NXMnIgorbXNnc3RyICLnhKHms5Xlj5blvpflpZfku7bnmoQgaW5mbyDmqpQgYCUuMjU1cycg55qE54uA5oWLIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjM2MworIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gY2xvc2UgYWZ0ZXIgcmVhZDogYCUuMjU1cyciCittc2dzdHIgIuWcqOiugOWPluWujOeVouS5i+W+jOeEoeazlemXnOmWie+8mmAlLjI1NXMnIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjQwNAorIywgYy1mb3JtYXQKK21zZ2lkICJFT0YgYWZ0ZXIgZmllbGQgbmFtZSBgJS4qcyciCittc2dzdHIgIuWcqOashOS9jeWQjeeosSBgJS4qcycg5b6M5pyJIEVPRiIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MDcKKyMsIGMtZm9ybWF0Cittc2dpZCAibmV3bGluZSBpbiBmaWVsZCBuYW1lIGAlLipzJyIKK21zZ3N0ciAi5Zyo5qyE5L2N5ZCN56ixIGAlLipzJyDkuK3mnInmj5vooYznrKbomZ8iCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDEwCisjLCBjLWZvcm1hdAorbXNnaWQgIk1TRE9TIEVPRiAoXlopIGluIGZpZWxkIG5hbWUgYCUuKnMnIgorbXNnc3RyICLlnKjmrITkvY3lkI3nqLEgYCUuKnMnIOS4reaciSBNU0RPUyBFT0YgKF5aKSIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0MTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmllbGQgbmFtZSBgJS4qcycgbXVzdCBiZSBmb2xsb3dlZCBieSBjb2xvbiIKK21zZ3N0ciAi5qyE5L2N5ZCN56ixIGAlLipzJyDkuYvlvozlv4XpoIjmnInlgIvlhpLomZ8iCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDI1CisjLCBjLWZvcm1hdAorbXNnaWQgIkVPRiBiZWZvcmUgdmFsdWUgb2YgZmllbGQgYCUuKnMnIChtaXNzaW5nIGZpbmFsIG5ld2xpbmUpIgorbXNnc3RyICLlnKjmrITkvY0gYCUuKnMnIOeahOWAvOeahOWJjemdouaciSBFT0bvvIjlsJHkuobntZDlsL7nmoTmj5vooYznrKbomZ/vvIkiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDI5CisjLCBjLWZvcm1hdAorbXNnaWQgIk1TRE9TIEVPRiBjaGFyIGluIHZhbHVlIG9mIGZpZWxkIGAlLipzJyAobWlzc2luZyBuZXdsaW5lPykiCittc2dzdHIgIuWcqOashOS9jSBgJS4qcycg55qE5YC85LmL5Lit5pyJIE1TRE9TIEVPRiDlrZflhYPvvIjlsJHkuobmj5vooYznrKbomZ/vvJ/vvIkiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NDQwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJuZXdsaW5lIGluIGZpZWxkIG5hbWUgYCUuKnMnIgorbXNnaWQgImJsYW5rIGxpbmUgaW4gdmFsdWUgb2YgZmllbGQgJyUuKnMnIgorbXNnc3RyICLlnKjmrITkvY3lkI3nqLEgYCUuKnMnIOS4reacieaPm+ihjOespuiZnyIKKworIzogbGliL2Rwa2cvcGFyc2UuYzo0NjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiRU9GIGR1cmluZyB2YWx1ZSBvZiBmaWVsZCBgJS4qcycgKG1pc3NpbmcgZmluYWwgbmV3bGluZSkiCittc2dzdHIgIuWcqOashOS9jSBgJS4qcycg55qE5YC85LmL5Lit5pyJIEVPRiDlrZflhYPvvIjlsJHkuobntZDlsL7nmoTmj5vooYznrKbomZ/vvIkiCisKKyM6IGxpYi9kcGtnL3BhcnNlLmM6NTQ2Cittc2dpZCAic2V2ZXJhbCBwYWNrYWdlIGluZm8gZW50cmllcyBmb3VuZCwgb25seSBvbmUgYWxsb3dlZCIKK21zZ3N0ciAi5om+5Yiw5LqG5aSa5YCL5aWX5Lu255qEIGluZm8g6aCF55uu77yM5L2G5Y+q6IO95pyJ5LiA5YCLIgorCisjOiBsaWIvZHBrZy9wYXJzZS5jOjU3MgorIywgYy1mb3JtYXQKK21zZ2lkICJubyBwYWNrYWdlIGluZm9ybWF0aW9uIGluIGAlLjI1NXMnIgorbXNnc3RyICLlnKggYCUuMjU1cycg5Lit5rKS5pyJ5aWX5Lu255qE55u46Zec6LOH6KiKIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzo0NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorInBhcnNpbmcgZmlsZSAnJS4yNTVzJyBuZWFyIGxpbmUgJWQgcGFja2FnZSAnJS4yNTVzJzpcbiIKKyIgJS4yNTVzIgorbXNnc3RyICLorablkYrvvIzlnKjmqpTmoYggYCUuMjU1cycg55qE56ysICVkIOihjOmZhOi/kSIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6NDgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJwYXJzaW5nIGZpbGUgJyUuMjU1cycgbmVhciBsaW5lICVkOlxuIgorIiAlLjI1NXMiCittc2dzdHIgIuitpuWRiu+8jOWcqOaqlOahiCBgJS4yNTVzJyDnmoTnrKwgJWQg6KGM6ZmE6L+RIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoxMjUKK21zZ2lkICJtYXkgbm90IGJlIGVtcHR5IHN0cmluZyIKK21zZ3N0ciAi5LiN5oeJ6Kmy5piv56m65a2X5LiyIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoxMjcKKyMsIGZ1enp5CisjfCBtc2dpZCAibXVzdCBzdGFydCB3aXRoIGFuIGFscGhhbnVtZXJpYyIKK21zZ2lkICJtdXN0IHN0YXJ0IHdpdGggYW4gYWxwaGFudW1lcmljIGNoYXJhY3RlciIKK21zZ3N0ciAi5b+F6aCI5Lul6Iux5pW45a2X6ZaL6aCtIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoxMzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2hhcmFjdGVyIGAlYycgbm90IGFsbG93ZWQgKG9ubHkgbGV0dGVycywgZGlnaXRzIGFuZCBjaGFyYWN0ZXJzIGAlcycpIgorbXNnc3RyICLkuI3lj6/mnInlrZflhYMgYCVjJ++8iOWPquiDveeUqOiLseaWh+Wtl+avjeOAgeaVuOWtl+WSjOWtl+WFgyBgJXMn77yJIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoxNzgKKyMsIGZ1enp5CisjfCBtc2dpZCAiPG5vbmU+IgorbXNnY3R4dCAidmVyc2lvbiIKK21zZ2lkICI8bm9uZT4iCittc2dzdHIgIjznhKE+IgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyMDkKK21zZ2lkICJ2ZXJzaW9uIHN0cmluZyBpcyBlbXB0eSIKK21zZ3N0ciAi54mI5pys6Jmf5piv56m655qEIgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyMjQKK21zZ2lkICJ2ZXJzaW9uIHN0cmluZyBoYXMgZW1iZWRkZWQgc3BhY2VzIgorbXNnc3RyICLniYjmnKzomZ/oo6HltYzmnInnqbrmoLzlrZflhYMiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjIzMAorbXNnaWQgImVwb2NoIGluIHZlcnNpb24gaXMgbm90IG51bWJlciIKK21zZ3N0ciAi54mI5pys5Lit55qEIGVwb2NoIOS4jeaYr+aVuOWtlyIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MjMyCittc2dpZCAibm90aGluZyBhZnRlciBjb2xvbiBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ3N0ciAi54mI5pys6Jmf55qE5YaS6Jmf5b6M6Z2i5rKS5pyJ5p2x6KW/IgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyNDcKK21zZ2lkICJ2ZXJzaW9uIG51bWJlciBkb2VzIG5vdCBzdGFydCB3aXRoIGRpZ2l0IgorbXNnc3RyICIiCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjI1MAorIywgZnV6enkKKyN8IG1zZ2lkICJub3RoaW5nIGFmdGVyIGNvbG9uIGluIHZlcnNpb24gbnVtYmVyIgorbXNnaWQgImludmFsaWQgY2hhcmFjdGVyIGluIHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICLniYjmnKzomZ/nmoTlhpLomZ/lvozpnaLmspLmnInmnbHopb8iCisKKyM6IGxpYi9kcGtnL3BhcnNlaGVscC5jOjI1NAorIywgZnV6enkKKyN8IG1zZ2lkICJub3RoaW5nIGFmdGVyIGNvbG9uIGluIHZlcnNpb24gbnVtYmVyIgorbXNnaWQgImludmFsaWQgY2hhcmFjdGVyIGluIHJldmlzaW9uIG51bWJlciIKK21zZ3N0ciAi54mI5pys6Jmf55qE5YaS6Jmf5b6M6Z2i5rKS5pyJ5p2x6KW/IgorCisjOiBsaWIvZHBrZy9wYXJzZWhlbHAuYzoyOTkgbGliL2Rwa2cvcGFyc2VoZWxwLmM6MzExCisjLCBjLWZvcm1hdAorbXNnaWQgIm1pc3NpbmcgJXMiCittc2dzdHIgIuaJvuS4jeWIsCAlcyIKKworIzogbGliL2Rwa2cvcGFyc2VoZWxwLmM6MzAxIGxpYi9kcGtnL3BhcnNlaGVscC5jOjMxNAorIywgYy1mb3JtYXQKK21zZ2lkICJlbXB0eSB2YWx1ZSBmb3IgJXMiCittc2dzdHIgIiVzIOeahOWAvOaYr+epuueahCIKKworIzogbGliL2Rwa2cvcGtnLWZvcm1hdC5jOjgwCisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgY2hhcmFjdGVyIGAlYycgaW4gZmllbGQgd2lkdGhcbiIKK21zZ3N0ciAi5qyE5L2N5a+s5bqm5Lit5pyJ54Sh5pWI55qE5a2X5YWDIGAlYydcbiIKKworIzogbGliL2Rwa2cvcGtnLWZvcm1hdC5jOjE3MgorIywgYy1mb3JtYXQKK21zZ2lkICJDbG9zaW5nIGJyYWNlIG1pc3NpbmcgaW4gZm9ybWF0XG4iCittc2dzdHIgIuWcqOagvOW8j+S4reWwkeS6huWPs+aLrOiZn1xuIgorCisjOiBsaWIvZHBrZy9wa2ctc2hvdy5jOjQwCittc2dpZCAiKG5vIGRlc2NyaXB0aW9uIGF2YWlsYWJsZSkiCittc2dzdHIgIu+8iOeEoeebuOmXnOS7i+e0ue+8iSIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjU1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaWdub3JlIHNpZ25hbCAlcyBiZWZvcmUgcnVubmluZyAlLjI1MHMiCittc2dzdHIgIueEoeazleWcqOWft+ihjCBzY3JpcHQg5YmN77yM5b+955Wl5L+h6JmfICVzIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgdW4tY2F0Y2hpbmcgc2lnbmFsICVzOiAlc1xuIgorbXNnc3RyICLpjK/oqqTvvIznhKHms5XmjZXmjYnliLDnmoToqIromZ8gJXPvvJolc1xuIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6NzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgKHN1YnByb2Nlc3MpOiAlc1xuIgorbXNnc3RyICIlc++8iOWtkOeoi+W6j++8ie+8miVzXG4iCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzo4OSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NDU0Cittc2dpZCAiZm9yayBmYWlsZWQiCittc2dzdHIgImZvcmsg5aSx5pWXIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTE5CisjLCBjLWZvcm1hdAorbXNnaWQgInN1YnByb2Nlc3MgJXMgcmV0dXJuZWQgZXJyb3IgZXhpdCBzdGF0dXMgJWQiCittc2dzdHIgIuWtkOeoi+W6jyAlcyDlgrPlm57kuobpjK/oqqTpgIDlh7rni4DmhYsgJWQiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMjgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInN1YnByb2Nlc3MgJXMgd2FzIGludGVycnVwdGVkIgorbXNnc3RyICLlnKjnrYnlvoUgJXMg5pmC5aSx5pWXIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTMwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJzdWJwcm9jZXNzICVzIGtpbGxlZCBieSBzaWduYWwgKCVzKSVzIgorbXNnaWQgInN1YnByb2Nlc3MgJXMgd2FzIGtpbGxlZCBieSBzaWduYWwgKCVzKSVzIgorbXNnc3RyICLlrZDnqIvluo8gJXMg6KKr5L+h6JmfICglcyklcyDntYLmraLkuoYiCisKKyM6IGxpYi9kcGtnL3N1YnByb2MuYzoxMzIKK21zZ2lkICIsIGNvcmUgZHVtcGVkIgorbXNnc3RyICIsIGNvcmUgZHVtcGVkIgorCisjOiBsaWIvZHBrZy9zdWJwcm9jLmM6MTM0CisjLCBjLWZvcm1hdAorbXNnaWQgInN1YnByb2Nlc3MgJXMgZmFpbGVkIHdpdGggd2FpdCBzdGF0dXMgY29kZSAlZCIKK21zZ3N0ciAi5a2Q56iL5bqPICVzIOWkseaVl++8jOS4puWCs+WbnuS6hiB3YWl0IOeLgOaFi+eivCAlZCIKKworIzogbGliL2Rwa2cvc3VicHJvYy5jOjE1MSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NDYxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ3YWl0IGZvciBzdWJwcm9jZXNzICVzIGZhaWxlZCIKK21zZ3N0ciAi5Zyo562J5b6FICVzIOaZguWkseaVlyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBwYWNrYWdlIG5hbWUgYCUuMjUwcycgaW4gdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi5LiN5q2j56K655qE5aWX5Lu25ZCN56ixIGAlLjI1MHMn77yM5L2N5pa86Ke455m856iL5byP5bu26YGy5qqUIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDo4MQorIywgYy1mb3JtYXQKK21zZ2lkICJ0cnVuY2F0ZWQgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi6KKr5oiq55+t55qE6Ke455m856iL5byP5bu26YGy5qqUIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDo4NQorIywgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyBhdCBjaGFyYWN0ZXIgYCVzJyVzIgorbXNnc3RyICLlnKjop7jnmbznqIvlvI/lu7bpgbLmqpQgYCUuMjUwcycg6KOh55qE5a2X5YWDIGAlcyclcyDoo6HnmoToqp7ms5XmnInoqqQiCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjEzNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3Blbi9jcmVhdGUgdHJpZ2dlcnMgbG9ja2ZpbGUgYCUuMjUwcyciCittc2dzdHIgIueEoeazlemWi+WVny/lu7rnq4vop7jnmbznqIvlvI/pjpblrprmqpQgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjE0MQorIywgZnV6enkKKyN8IG1zZ2lkICJ0cmlnZ2VyZWQiCittc2dpZCAidHJpZ2dlcnMgYXJlYSIKK21zZ3N0ciAi5bey6Ke455m8IgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoxNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi54Sh5rOV5Y+W5b6X6Ke455m856iL5byP5bu26YGy5qqUIGAlLjI1MHMnIOeahOizh+ioiiIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MTY1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIHRyaWdnZXJzIGRlZmVycmVkIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIueEoeazlemWi+WVn+inuOeZvOeoi+W8j+W7tumBsuaqlCBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MTc5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuL2NyZWF0ZSBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi54Sh5rOV6ZaL5ZWfL+W7uueri+aWsOeahOinuOeZvOeoi+W8j+W7tumBsuaqlCBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MjE1CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHJlYWRpbmcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi5Zyo6K6A5Y+W6Ke455m856iL5byP5bu26YGy5qqUIGAlLjI1MHMnIOaZgueZvOeUn+mMr+iqpCIKKworIzogbGliL2Rwa2cvdHJpZ2RlZmVycmVkLmw6MjIzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi54Sh5rOV5a+r5YWl5paw55qE6Ke455m856iL5byP5bu26YGy5qqUIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnZGVmZXJyZWQubDoyMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIG5ldyB0cmlnZ2VycyBkZWZlcnJlZCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLnhKHms5Xpl5zplonmlrDnmoTop7jnmbznqIvlvI/lu7bpgbLmqpQgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdkZWZlcnJlZC5sOjIzMgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgdHJpZ2dlcnMgZGVmZXJyZWQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi54Sh5rOV5a6J6KOd5paw55qE6Ke455m856iL5byP5bu26YGy5qqUIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MjIyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJpbnZhbGlkIG9yIHVua25vd24gc3ludGF4IGluIHRyaWdnZXIgbmFtZSBgJS4yNTBzJyAoaW4gdHJpZ2dlciBpbnRlcmVzdHMgZm9yICIKKyJwYWNrYWdlIGAlLjI1MHMnKSIKK21zZ3N0ciAiIgorIuinuOeZvOeoi+W8j+eahOWQjeeosSBgJS4yNTBzJyDkvb/nlKjkuobkuI3mraPnorrmiJbmnKrnn6XnmoToqp7ms5XvvIjlnKjlpZfku7YgYCUuMjUwcycg55qEIHRyaWdnZXIgIgorImludGVyZXN0cyDoo6HvvIkiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzoyNjMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gdHJpZ2dlciBpbnRlcmVzdCBsaXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIueEoeazlemWi+WVnyB0cmlnZ2VyIGludGVyZXN0IOWIl+ihqOaqlCBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjI5MgorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmV3aW5kIHRyaWdnZXIgaW50ZXJlc3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi54Sh5rOV6Lez5YiwIHRyaWdnZXIgaW50ZXJlc3Qg5qqUIGAlLjI1MHMnIOeahOmWi+mgrSIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMwNQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIHN5bnRheCBlcnJvcjsgaWxsZWdhbCBwYWNrYWdlIG5hbWUgYCUuMjUwcyc6ICIKKyIlLjI1MHMiCittc2dzdHIgIiIKKyJ0cmlnZ2VyIGludGVyZXN0IOaqlCBgJS4yNTBzJyDnmoToqp7ms5XmnInoqqTvvJvkuI3lkIjms5XnmoTlpZfku7blkI3nqLEgYCUuMjUwcyfvvJolLjI1MHMiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozMTgKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHdyaXRlIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIueEoeazleWvq+WFpeaWsOeahCB0cmlnZ2VyIGludGVyZXN0IOaqlCBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMyMQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgJyUuMjUwcyciCittc2dzdHIgIueEoeazleW7uueri+aWsOeahCB0cmlnZ2VyIGludGVyZXN0IOaqlCBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjMyNAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgbmV3IHRyaWdnZXIgaW50ZXJlc3QgZmlsZSAnJS4yNTBzJyIKK21zZ3N0ciAi54Sh5rOV5bu656uL5paw55qEIHRyaWdnZXIgaW50ZXJlc3Qg5qqUIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6MzMyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyB0cmlnZ2VyIGludGVyZXN0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIueEoeazleWuieijneaWsOeahCB0cmlnZ2VyIGludGVyZXN0IOaqlCBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjM0MCBsaWIvZHBrZy90cmlnbGliLmM6MzQyIGxpYi9kcGtnL3RyaWdsaWIuYzo0NzIKKyM6IHNyYy9yZW1vdmUuYzoyODYgc3JjL3JlbW92ZS5jOjM3NworIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVtb3ZlIGAlLjI1MHMnIgorbXNnc3RyICLnhKHms5Xnp7vpmaQgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozNjAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNyZWF0ZSBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLnhKHms5Xlu7rnq4vmlrDnmoQgdHJpZ2dlciBpbnRlcmVzdCDmqpQgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzozODMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjbG9zZSBuZXcgdHJpZ2dlciBpbnRlcmVzdCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLnhKHms5Xlu7rnq4vmlrDnmoQgdHJpZ2dlciBpbnRlcmVzdCDmqpQgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo0NTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImR1cGxpY2F0ZSBmaWxlIHRyaWdnZXIgaW50ZXJlc3QgZm9yIGZpbGVuYW1lIGAlLjI1MHMnIGFuZCBwYWNrYWdlIGAlLjI1MHMnIgorbXNnc3RyICLmqpTmoYjlkI3nqLEgYCUuMjUwcycg5ZKM5aWX5Lu2IGAlLjI1MHMnIOeahCB0cmlnZ2VyIGludGVyZXN0IOaqlOmHjeikh+S6hiIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ4MworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIueEoeazleW7uueri+aWsOeahCBmaWxlIHRyaWdnZXIg5qqUIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDkzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byB3cml0ZSBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLnhKHms5Xlr6vlhaXmlrDnmoQgZmlsZSB0cmlnZ2VyIOaqlCBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjQ5NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgJyUuMjUwcyciCittc2dzdHIgIueEoeazleW7uueri+aWsOeahCBmaWxlIHRyaWdnZXIg5qqUIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NDk5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3luYyBuZXcgZmlsZSB0cmlnZ2VycyBmaWxlICclLjI1MHMnIgorbXNnc3RyICLnhKHms5Xlu7rnq4vmlrDnmoQgZmlsZSB0cmlnZ2VyIOaqlCBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjUwMworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNsb3NlIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgYCUuMjUwcyciCittc2dzdHIgIueEoeazleW7uueri+aWsOeahCBmaWxlIHRyaWdnZXIg5qqUIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTA3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIG5ldyBmaWxlIHRyaWdnZXJzIGZpbGUgYXMgYCUuMjUwcyciCittc2dzdHIgIueEoeazleWwh+aWsOeahCBmaWxlIHRyaWdnZXIg5qqU5a6J6KOd54K6IGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTQyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZWFkIGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi54Sh5rOV6K6A5Y+WIGZpbGUgdHJpZ2dlciDmqpQgYCUuMjUwcyciCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo1NTIKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yIGluIGZpbGUgdHJpZ2dlcnMgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi5ZyoIGZpbGUgdHJpZ2dlciDmqpQgYCUuMjU1cycg6KOh55qE6Kqe5rOV5pyJ6KqkIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6NTYzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmaWxlIHRyaWdnZXJzIHJlY29yZCBtZW50aW9ucyBpbGxlZ2FsIHBhY2thZ2UgbmFtZSBgJS4yNTBzJyAoZm9yIGludGVyZXN0IGluICIKKyJmaWxlIGAlLjI1MHMnKTogJS4yNTBzIgorbXNnc3RyICIiCisiZmlsZSB0cmlnZ2VyIOeahOiomOmMhOijoeWMheWQq+S6huS4jeWQiOazleeahOWll+S7tuWQjeeosSBgJS4yNTBzJ++8iOWcqOaqlOahiCBgJS4yNTBzJyDnmoQgIgorImludGVyZXN0IOijoe+8ie+8miUuMjUwcyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjY2NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidHJpZ2dlcnMgY2kgZmlsZSBgJS4yNTBzJyBjb250YWlucyBpbGxlZ2FsIHRyaWdnZXIgc3ludGF4IGluIHRyaWdnZXIgbmFtZSBgIgorIiUuMjUwcyc6ICUuMjUwcyIKK21zZ3N0ciAiIgorIuinuOeZvOeoi+W8jyBjaSDmqpQgYCUuMjUwcycg55qE6Ke455m856iL5byP5ZCN56ixIGAlLjI1MHMnIOS4jeWQiOaWvOinuOeZvOeoi+W8j+eahOiqnuazle+8miUuMjUwcyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjY4NAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiB0cmlnZ2VycyBjaSBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLnhKHms5XplovllZ/op7jnmbznqIvlvI8gY2kg5qqUIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Njk5Cittc2dpZCAidHJpZ2dlcnMgY2kgZmlsZSBjb250YWlucyB1bmtub3duIGRpcmVjdGl2ZSBzeW50YXgiCittc2dzdHIgIuinuOeZvOeoi+W8jyBjaSDmqpTljIXlkKvkuobmnKrnn6XnmoTmjIfku6Toqp7ms5UiCisKKyM6IGxpYi9kcGtnL3RyaWdsaWIuYzo3MTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJpZ2dlcnMgY2kgZmlsZSBjb250YWlucyB1bmtub3duIGRpcmVjdGl2ZSBgJS4yNTBzJyIKK21zZ3N0ciAi6Ke455m856iL5byPIGNpIOaqlOWMheWQq+S6huacquefpeeahOaMh+S7pCBgJS4yNTBzJyIKKworIzogbGliL2Rwa2cvdHJpZ2xpYi5jOjc3NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY3JlYXRlIHRyaWdnZXJzIHN0YXRlIGRpcmVjdG9yeSBgJS4yNTBzJyIKK21zZ3N0ciAi54Sh5rOV5bu656uL6Ke455m856iL5byP54uA5oWL55uu6YyEIGAlLjI1MHMnIgorCisjOiBsaWIvZHBrZy90cmlnbGliLmM6Nzc5CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzZXQgb3duZXJzaGlwIG9mIHRyaWdnZXJzIHN0YXRlIGRpcmVjdG9yeSBgJS4yNTBzJyIKK21zZ3N0ciAi54Sh5rOV6Kit5a6a6Ke455m856iL5byP54uA5oWL55uu6YyEIGAlLjI1MHMnIOeahOaJgOacieasiiIKKworIzogbGliL2Rwa2cvdHJpZ25hbWUuYzozNAorbXNnaWQgImVtcHR5IHRyaWdnZXIgbmFtZXMgYXJlIG5vdCBwZXJtaXR0ZWQiCittc2dzdHIgIuinuOeZvOeoi+W8j+eahOWQjeeoseS4jeWPr+eCuuepuueahCIKKworIzogbGliL2Rwa2cvdHJpZ25hbWUuYzozOAorbXNnaWQgInRyaWdnZXIgbmFtZSBjb250YWlucyBpbnZhbGlkIGNoYXJhY3RlciIKK21zZ3N0ciAi6Ke455m856iL5byP55qE5ZCN56ix5YyF5ZCr5LqG5LiN5ZCI5rOV55qE5a2X5YWDIgorCisjOiBsaWIvZHBrZy91dGlscy5jOjU2CisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWQgZXJyb3IgaW4gYCUuMjUwcyciCittc2dzdHIgIuWcqCAlLjI1MHMg5Lit6K6A5Y+W6Yyv6KqkIgorCisjOiBsaWIvZHBrZy91dGlscy5jOjYxCisjLCBjLWZvcm1hdAorbXNnaWQgImZnZXRzIGdhdmUgYW4gZW1wdHkgc3RyaW5nIGZyb20gYCUuMjUwcyciCittc2dzdHIgImZnZXRzIOW+niBgJS4yNTBzJyDlj5blvpfkuobkuIDlgIvnqbrlrZfkuLIiCisKKyM6IGxpYi9kcGtnL3V0aWxzLmM6NjMKKyMsIGMtZm9ybWF0Cittc2dpZCAidG9vLWxvbmcgbGluZSBvciBtaXNzaW5nIG5ld2xpbmUgaW4gYCUuMjUwcyciCittc2dzdHIgIuWcqCBgJS4yNTBzJyDoo6HnmoTmloflrZflpKrplbfvvIzmiJblsJHkuobmj5vooYznrKbomZ8iCisKKyM6IGxpYi9kcGtnL3V0aWxzLmM6NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlb2YgcmVhZGluZyBgJS4yNTBzJyIKK21zZ3N0ciAi55SxICUuMjUwcyDoroDlj5bliLDkuobpoJDmnJ/kuYvlpJbnmoQgZW9mIgorCisjOiBsaWIvZHBrZy92YXJidWYuYzo4MiBsaWIvZHBrZy92YXJidWYuYzo4OAorbXNnaWQgImVycm9yIGZvcm1hdHRpbmcgc3RyaW5nIGludG8gdmFyYnVmIHZhcmlhYmxlIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjE3OSBzcmMvYXJjaGl2ZXMuYzoyMDAgc3JjL2FyY2hpdmVzLmM6NzI0Cittc2dpZCAiZXJyb3IgcmVhZGluZyBmcm9tIGRwa2ctZGViIHBpcGUiCittc2dzdHIgIueUsSBkcGtnLWRlYiDnmoTnrqHnt5roroDlj5bos4fmlpnmmYLnmbznlJ/pjK/oqqQiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjE5NQorIywgYy1mb3JtYXQKK21zZ2lkICJza2lwcGVkIHVucGFja2luZyBmaWxlICclLjI1NXMnIChyZXBsYWNlZCBvciBleGNsdWRlZD8pIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjI0NiBzcmMvYXJjaGl2ZXMuYzoyNTAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igc2V0dGluZyB0aW1lc3RhbXBzIG9mIGAlLjI1NXMnIgorbXNnc3RyICLlnKjmm78gYCUuMjU1cycg6Kit5a6a5pmC6ZaT5oiz6KiY5pmC55m855Sf6Yyv6KqkIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoyNjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igc2V0dGluZyBvd25lcnNoaXAgb2Ygc3ltbGluayBgJS4yNTVzJyIKK21zZ3N0ciAi5Zyo5pu/56ym6Jmf6YCj57WQIGAlLjI1NXMnIOioreWumuaJgOacieasiuaZgueZvOeUn+mMr+iqpCIKKworIzogc3JjL2FyY2hpdmVzLmM6MjY1IHNyYy9hcmNoaXZlcy5jOjczNCBzcmMvc3RhdGNtZC5jOjE2MworIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIG93bmVyc2hpcCBvZiBgJS4yNTVzJyIKK21zZ3N0ciAi5Zyo5pu/IGAlLjI1NXMnIOioreWumuaJgOacieasiuaZgueZvOeUn+mMr+iqpCIKKworIzogc3JjL2FyY2hpdmVzLmM6MjY3IHNyYy9hcmNoaXZlcy5jOjczNiBzcmMvc3RhdGNtZC5jOjE2NQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBzZXR0aW5nIHBlcm1pc3Npb25zIG9mIGAlLjI1NXMnIgorbXNnc3RyICLlnKjmm78gYCUuMjU1cycg6Kit5a6a5qyK6ZmQ5pmC55m855Sf6Yyv6KqkIgorCisjOiBzcmMvYXJjaGl2ZXMuYzozOTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHN0YXQgKGRlcmVmZXJlbmNlKSBleGlzdGluZyBzeW1saW5rIGAlLjI1MHMnIgorbXNnc3RyICLnhKHms5Xlj5blvpfvvIjlj43lvJXnlKjvvInlt7LlrZjlnKjnmoTnrKbomZ/pgKPntZAgYCUuMjUwcycg55qE54uA5oWLIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo0MTcKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImZhaWxlZCB0byBzdGF0IChkZXJlZmVyZW5jZSkgcHJvcG9zZWQgbmV3IHN5bWxpbmsgdGFyZ2V0IGAlLjI1MHMnIGZvciAiCisic3ltbGluayBgJS4yNTBzJyIKK21zZ3N0ciAiIgorIueEoeazleWPluW+l++8iOWPjeW8leeUqO+8ieWwh+imgeaMh+WQkeaWsOespuiZn+mAo+e1kCBgJS4yNTBzJyDnmoTnrKbomZ/pgKPntZAgYCUuMjUwcycg55qE54uA5oWLIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo0NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInRyeWluZyB0byBvdmVyd3JpdGUgYCUuMjUwcycsIHdoaWNoIGlzIHRoZSBkaXZlcnRlZCB2ZXJzaW9uIG9mIGAiCisiJS4yNTBzJyAocGFja2FnZTogJS4xMDBzKSIKK21zZ3N0ciAi6Kmm5ZyW6KaG6JOLIGAlLjI1MHMn77yM5a6D5pivIGAlLjI1MHMn77yI5aWX5Lu277yaJS4xMDBz77yJ5oq95o+b5b6M55qE54mI5pysIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo0ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAidHJ5aW5nIHRvIG92ZXJ3cml0ZSBgJS4yNTBzJywgd2hpY2ggaXMgdGhlIGRpdmVydGVkIHZlcnNpb24gb2YgYCUuMjUwcyciCittc2dzdHIgIuippuWcluimhuiTiyBgJS4yNTBzJ++8jOWug+aYryBgJS4yNTBzJyDmir3mj5vlvoznmoTniYjmnKwiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjUxMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBgJS4yNTVzJyAod2hpY2ggSSB3YXMgYWJvdXQgdG8gaW5zdGFsbCkiCittc2dzdHIgIueEoeazleWPluW+lyBgJS4yNTVzJyDnmoTni4DmhYvvvIjmraPopoHlronoo53pgJnlgIvmqpTmoYjvvIkiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjUxOQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisidW5hYmxlIHRvIGNsZWFuIHVwIG1lc3Mgc3Vycm91bmRpbmcgYCUuMjU1cycgYmVmb3JlIGluc3RhbGxpbmcgYW5vdGhlciAiCisidmVyc2lvbiIKK21zZ3N0ciAi5Zyo5a6J6KOd5Y+m5LiA54mI5pys5YmN77yM54Sh5rOV5riF55CGIGAlLjI1NXMnIOeahOa3t+S6gueLgOaFiyIKKworIzogc3JjL2FyY2hpdmVzLmM6NTI1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IHJlc3RvcmVkIGAlLjI1NXMnIGJlZm9yZSBpbnN0YWxsaW5nIGFub3RoZXIgdmVyc2lvbiIKK21zZ3N0ciAi5Zyo5a6J6KOd5Y+m5LiA54mI5pys5YmN77yM54Sh5rOV5Y+W5b6X5Zue5b6p5b6M55qEIGAlLjI1NXMnIOeahOeLgOaFiyIKKworIzogc3JjL2FyY2hpdmVzLmM6NTYxCisjLCBjLWZvcm1hdAorbXNnaWQgImFyY2hpdmUgY29udGFpbmVkIG9iamVjdCBgJS4yNTVzJyBvZiB1bmtub3duIHR5cGUgMHgleCIKK21zZ3N0ciAi5aWX5Lu25qqU5Lit5YyF5ZCr5LqG54mp5Lu2IGAlLjI1NXMnIOacieiRl+S4jeaYjueahOWei+aFiyAweCV4IgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2MjYgc3JjL2RpdmVydGNtZC5jOjE1MCB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6NjgyCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTIyMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTI4NAorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE0NDEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE2ODAKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTY3IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjQ0CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUyNworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiY2Fubm90IHN0YXQgb2xkIG5hbWUgYCVzJzogJXMiCittc2dpZCAiY2Fubm90IHN0YXQgZmlsZSAnJXMnIgorbXNnc3RyICLnhKHms5Xlj5blvpfljp/mnKzlkI3nqLEgYCVzJyDnmoTos4foqIrvvJolcyIKKworIzogc3JjL2FyY2hpdmVzLmM6NjQxCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlcGxhY2luZyBmaWxlcyBpbiBvbGQgcGFja2FnZSAlcyAuLi5cbiIKK21zZ3N0ciAi5q2j5Zyo5pu/5o+b5oiQ5Y6f5pyJ5aWX5Lu2ICVzIOijoeeahOaqlOahiC4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVwbGFjZWQgYnkgZmlsZXMgaW4gaW5zdGFsbGVkIHBhY2thZ2UgJXMgLi4uXG4iCittc2dzdHIgIuiiq+abv+aPm+aIkOW3suWuieijneWll+S7tiAlcyDoo6HnmoTmqpTmoYguLi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6NjU0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisidHJ5aW5nIHRvIG92ZXJ3cml0ZSBkaXJlY3RvcnkgJyUuMjUwcycgaW4gcGFja2FnZSAlLjI1MHMgJS4yNTBzIHdpdGggIgorIm5vbmRpcmVjdG9yeSIKK21zZ3N0ciAi5q2j6Kmm5ZyW55So5aWX5Lu2ICUyJC4yNTBzIOijoeS4gOWAi+mdnuebrumMhOeahOaqlOahiOabv+aPm+ebrumMhCBgJTEkLjI1MHMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo2NjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInRyeWluZyB0byBvdmVyd3JpdGUgJyUuMjUwcycsIHdoaWNoIGlzIGFsc28gaW4gcGFja2FnZSAlLjI1MHMgJS4yNTBzIgorbXNnc3RyICLmraPoqablnJbopobok4sgYCUuMjUwcyfvvIzlroPlkIzmmYLkuZ/ljIXlkKvmlrzlpZfku7YgJS4yNTBzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3MTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgYCUuMjU1cycgKHdoaWxlIHByb2Nlc3NpbmcgYCUuMjU1cycpIgorbXNnc3RyICLnhKHms5XoroDlj5YgYCUuMjU1cyfvvIjkvY3mlrwgYCUuMjU1cyfvvIkiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjcxOAorIywgYy1mb3JtYXQKK21zZ2lkICJiYWNrZW5kIGRwa2ctZGViIGR1cmluZyBgJS4yNTVzJyIKK21zZ3N0ciAi5Zyo6YCZ5pyf6ZaT5pyD5LulIGRwa2ctZGViIOmAsuihjCBgJS4yNTVzJyIKKworIzogc3JjL2FyY2hpdmVzLmM6NzQ0IHNyYy9hcmNoaXZlcy5jOjkwOCBzcmMvYXJjaGl2ZXMuYzo5NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZy93cml0aW5nIGAlLjI1NXMnIgorbXNnc3RyICLlnKjpl5zplokv5a+r5YWlIGAlLjI1NXMnIOaZgueZvOeUn+mMr+iqpCIKKworIzogc3JjL2FyY2hpdmVzLmM6NzQ4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGNyZWF0aW5nIHBpcGUgYCUuMjU1cyciCittc2dzdHIgIuWcqOW7uueri+euoee3miBgJS4yNTVzJyDmmYLnmbznlJ/pjK/oqqQiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjc1MyBzcmMvYXJjaGl2ZXMuYzo3NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgZGV2aWNlIGAlLjI1NXMnIgorbXNnc3RyICLlnKjlu7rnq4voo53nva7mqpQgYCUuMjU1cycg5pmC55m855Sf6Yyv6KqkIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NzEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgaGFyZCBsaW5rIGAlLjI1NXMnIgorbXNnc3RyICLlnKjlu7rnq4vlr6bpq5TpgKPntZAgYCUuMjU1cycg5pmC55m855Sf6Yyv6KqkIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3NzcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjUzOQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBjcmVhdGluZyBzeW1ib2xpYyBsaW5rIGAlLjI1NXMnIgorbXNnc3RyICLlnKjlu7rnq4vnrKbomZ/pgKPntZAgYCUuMjU1cycg5pmC55m855Sf6Yyv6KqkIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo3ODMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY3JlYXRpbmcgZGlyZWN0b3J5IGAlLjI1NXMnIgorbXNnc3RyICLlnKjlu7rnq4vnm67pjIQgYCUuMjU1cycg5pmC55m855Sf6Yyv6KqkIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4MjIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG1vdmUgYXNpZGUgYCUuMjU1cycgdG8gaW5zdGFsbCBuZXcgdmVyc2lvbiIKK21zZ3N0ciAi54Sh5rOV5bCHIGAlLjI1NXMnIOenu+mWi+S7peWuieijneaWsOeahOeJiOacrCIKKworIzogc3JjL2FyY2hpdmVzLmM6ODMyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzozMjIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgbGluayBgJS4yNTVzJyIKK21zZ3N0ciAi54Sh5rOV6K6A5Y+W56ym6Jmf6YCj57WQIGAlLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4MzQgc3JjL2NvbmZpZ3VyZS5jOjQyMworIywgYy1mb3JtYXQKK21zZ2lkICJzeW1ib2xpYyBsaW5rICclLjI1MHMnIHNpemUgaGFzIGNoYW5nZWQgZnJvbSAlamQgdG8gJXpkIgorbXNnc3RyICIiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjgzOQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gbWFrZSBiYWNrdXAgc3ltbGluayBmb3IgYCUuMjU1cyciCittc2dzdHIgIueEoeazleabvyBgJS4yNTVzJyDlgZrkuIDlgIvnrKbomZ/pgKPntZDlgpnku70iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjg0MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hvd24gYmFja3VwIHN5bWxpbmsgZm9yIGAlLjI1NXMnIgorbXNnc3RyICLnhKHms5UgY2hvd24gYCUuMjU1cycg55qE56ym6Jmf6YCj57WQ5YKZ5Lu9IgorCisjOiBzcmMvYXJjaGl2ZXMuYzo4NDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG1ha2UgYmFja3VwIGxpbmsgb2YgYCUuMjU1cycgYmVmb3JlIGluc3RhbGxpbmcgbmV3IHZlcnNpb24iCittc2dzdHIgIueEoeazleWcqOWuieijneaWsOeahOeJiOacrOWJje+8jOeCuiBgJS4yNTVzJyDlgZrkuIDlgIvnrKbomZ/pgKPntZDlgpnku70iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjg2MyBzcmMvYXJjaGl2ZXMuYzo5NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IHZlcnNpb24gb2YgYCUuMjU1cyciCittc2dzdHIgIueEoeazleWuieijnSBgJS4yNTVzJyDnmoTmlrDniYjmnKwiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjkwMiBzcmMvYXJjaGl2ZXMuYzo5NDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuICclLjI1NXMnIgorbXNnc3RyICLnhKHms5Xlu7rnq4sgYCUuMjU1cyciCisKKyM6IHNyYy9hcmNoaXZlcy5jOjk0NworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN5bmMgZmlsZSAnJS4yNTVzJyIKK21zZ3N0ciAi54Sh5rOV6Zec6ZaJ57ep6KGdIGAlLjI1NXMnIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDAwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiaWdub3JpbmcgZGVwZW5kZW5jeSBwcm9ibGVtIHdpdGggJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtn77ya6K2m5ZGKIC0g5b+955WlICVzIOeahOebuOS+neWVj+mhjO+8mlxuIgorIiVzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDA1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiY29uc2lkZXJpbmcgZGVjb25maWd1cmF0aW9uIG9mIGVzc2VudGlhbFxuIgorIiBwYWNrYWdlICVzLCB0byBlbmFibGUgJXMuIgorbXNnc3RyICJkcGtnOiDorablkYogLSDmraPmiZPnrpfmuIXpmaTln7rmnKzlpZfku7YgJXMg55qE6Kit5a6a77yM5Lul5ZWf55SoICVz44CCXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwMDgKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IG5vLCAlcyBpcyBlc3NlbnRpYWwsIHdpbGwgbm90IGRlY29uZmlndXJlXG4iCisiIGl0IGluIG9yZGVyIHRvIGVuYWJsZSAlcy5cbiIKK21zZ3N0ciAiZHBrZ++8muS4jeihjO+8jCVzIOaYr+WfuuacrOWll+S7tu+8jOS4jeacg+a4hemZpOWug+eahOioreWumuWPqueCuuS6huWVn+eUqCAlc+OAglxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDIyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJkcGtnOiBubywgY2Fubm90IHByb2NlZWQgd2l0aCAlcyAoLS1hdXRvLWRlY29uZmlndXJlIHdpbGwgaGVscCk6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtn77ya5LiN6KGM77yM54Sh5rOV57m857qM6YCy6KGMICVz77yI6Kmm6KmmIC0tYXV0by1kZWNvbmZpZ3VyZe+8ie+8mlxuIgorIiVzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDMyCisjLCBjLWZvcm1hdAorbXNnaWQgInJlbW92YWwgb2YgJS4yNTBzIgorbXNnc3RyICIlLjI1MHMg55qE56e76Zmk5L2c5qWtIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDU3CisjLCBjLWZvcm1hdAorbXNnaWQgImluc3RhbGxhdGlvbiBvZiAlLjI1MHMiCittc2dzdHIgImAlLjI1NXMnIOeahOWuieijneS9nOalrSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA1OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogY29uc2lkZXJpbmcgZGVjb25maWd1cmF0aW9uIG9mICVzLCB3aGljaCB3b3VsZCBiZSBicm9rZW4gYnkgJXMgLi4uXG4iCittc2dzdHIgImRwa2fvvJrmraPmiZPnrpfmuIXpmaQgJXMg55qE6Kit5a6a77yM5Zug54K65Y+v6IO95pyD6KKrICVzIOW8hOWjni4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDY1CisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IHllcywgd2lsbCBkZWNvbmZpZ3VyZSAlcyAoYnJva2VuIGJ5ICVzKS5cbiIKK21zZ3N0ciAiZHBrZ++8muWlve+8jOWwh+a4hemZpCAlcyDnmoToqK3lrprvvIjooqsgJXMg5byE5aOe5LqG77yJ44CCXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwNjkgc3JjL2FyY2hpdmVzLmM6MTE4NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogcmVnYXJkaW5nICVzIGNvbnRhaW5pbmcgJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtn77ya6Zec5pa8ICVzIOWMheWQq+S6hiAlc++8mlxuIgorIiVzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMDc3CisjLCBmdXp6eQorbXNnaWQgImlnbm9yaW5nIGJyZWFrYWdlLCBtYXkgcHJvY2VlZCBhbnl3YXkhIgorbXNnc3RyICJkcGtn77ya6K2m5ZGKIC0g5b+955Wl5pCN5aOe77yM5bCH5by35Yi257m857qM5a6J6KOd77yBXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEwODIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImluc3RhbGxpbmcgJS4yNTBzIHdvdWxkIGJyZWFrICUuMjUwcywgYW5kXG4iCisiIGRlY29uZmlndXJhdGlvbiBpcyBub3QgcGVybWl0dGVkICgtLWF1dG8tZGVjb25maWd1cmUgbWlnaHQgaGVscCkiCittc2dzdHIgIiIKKyLlronoo50gJS4yNTBzIOWwh+acg+avgOaQjSAlLjI1MHPvvIxcbiIKKyIg5LiU5LiN5omT566X6KaB5riF6Zmk6Kit5a6a77yILS1hdXRvLWRlY29uZmlndXJlIOS5n+ioseacieeUqO+8iSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTA4NgorIywgYy1mb3JtYXQKK21zZ2lkICJpbnN0YWxsaW5nICUuMjUwcyB3b3VsZCBicmVhayBleGlzdGluZyBzb2Z0d2FyZSIKK21zZ3N0ciAi5a6J6KOdICUuMjUwcyDlsIfmnIPmr4DmkI3nj77mnInnmoTou5/pq5QiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExMTYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogY29uc2lkZXJpbmcgcmVtb3ZpbmcgJXMgaW4gZmF2b3VyIG9mICVzIC4uLlxuIgorbXNnc3RyICJkcGtn77ya54K65LqGICUyJHPvvIzmraPmiZPnrpfnp7vpmaQgJTEkcyAuLi5cbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTEyMgorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgcHJvcGVybHkgaW5zdGFsbGVkIC0gaWdub3JpbmcgYW55IGRlcGVuZGVuY2llcyBvbiBpdC5cbiIKK21zZ3N0ciAiJXMg5pyq6KKr5q2j56K65a6J6KOdIC0g5bCH5b+955Wl5a6D5omA5pyJ55qE55u45L6d6Zec5L+C44CCXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogbWF5IGhhdmUgdHJvdWJsZSByZW1vdmluZyAlcywgYXMgaXQgcHJvdmlkZXMgJXMgLi4uXG4iCittc2dzdHIgImRwa2fvvJrkuZ/oqLHnp7vpmaQgJXMg5pyD5Ye65ZWP6aGM77yM5Zug54K65a6D5o+Q5L6b5LqGICVzIC4uLlxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTY2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogcGFja2FnZSAlcyByZXF1aXJlcyByZWluc3RhbGxhdGlvbiwgYnV0IHdpbGwgcmVtb3ZlIGFueXdheSBhcyB5b3UgIgorInJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiZHBrZ++8muWEmOeuoeWll+S7tiAlcyDpnIDopoHph43mlrDlronoo53vvIzkvYbpgoTmmK/mh4nmgqjnmoTopoHmsYLlsIflhbblvLfliLbnp7vpmaTjgIJcbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTE2OQorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnOiBwYWNrYWdlICVzIHJlcXVpcmVzIHJlaW5zdGFsbGF0aW9uLCB3aWxsIG5vdCByZW1vdmUuXG4iCittc2dzdHIgImRwa2fvvJrlpZfku7YgJXMg6ZyA6KaB6YeN5paw5a6J6KOd77yM5bCH5LiN5pyD6KKr56e76Zmk44CCXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjExNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogeWVzLCB3aWxsIHJlbW92ZSAlcyBpbiBmYXZvdXIgb2YgJXMuXG4iCittc2dzdHIgImRwa2fvvJrlpb3nmoTvvIzngrrkuoYgJTIkcyDlsIfmnIPnp7vpmaQgJTEkc+OAglxuIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTkwCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbmZsaWN0aW5nIHBhY2thZ2VzIC0gbm90IGluc3RhbGxpbmcgJS4yNTBzIgorbXNnc3RyICLlpZfku7booZ3nqoEgLSDlsIfkuI3lronoo50gJS4yNTBzIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMTkxCisjLCBmdXp6eQorbXNnaWQgImlnbm9yaW5nIGNvbmZsaWN0LCBtYXkgcHJvY2VlZCBhbnl3YXkhIgorbXNnc3RyICJkcGtn77ya6K2m5ZGKIC0g5b+955Wl6KGd56qB77yM5bCH5by35Yi257m857qM5a6J6KOd77yBXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyMzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyAtLXJlY3Vyc2l2ZSBuZWVkcyBhdCBsZWFzdCBvbmUgcGF0aCBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyAtLXJlY3Vyc2l2ZSDpnIDopoHoh7PlsJHkuIDlgIvot6/lvpHkvZzngrrlj4PmlbgiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEyNDUKKyMsIGZ1enp5Cittc2dpZCAiZmluZCBmb3IgZHBrZyAtLXJlY3Vyc2l2ZSIKK21zZ3N0ciAi54Sh5rOV54K6IC0tcmVjdXJzaXZlIOmBuOmgheWft+ihjCBmaW5kIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMjY2Cittc2dpZCAiZmFpbGVkIHRvIGZkb3BlbiBmaW5kJ3MgcGlwZSIKK21zZ3N0ciAi54Sh5rOVIGZkb3BlbiBmaW5kIOeahOeuoee3miIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3MgorbXNnaWQgImVycm9yIHJlYWRpbmcgZmluZCdzIHBpcGUiCittc2dzdHIgIuWcqOiugOWPliBmaW5kIOeahOeuoee3muaZgueZvOeUn+mMr+iqpCIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3MworbXNnaWQgImVycm9yIGNsb3NpbmcgZmluZCdzIHBpcGUiCittc2dzdHIgIuWcqOmXnOmWiSBmaW5kIOeahOeuoee3muaZgueZvOeUn+mMr+iqpCIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3NgorIywgYy1mb3JtYXQKK21zZ2lkICJmaW5kIGZvciAtLXJlY3Vyc2l2ZSByZXR1cm5lZCB1bmhhbmRsZWQgZXJyb3IgJWkiCittc2dzdHIgIi0tcmVjdXJzaXZlIOmBuOmgheaJgOWRvOWPq+eahCBmaW5kIOi/lOWbnuS6huacquiiq+iZleeQhueahOmMr+iqpCAlaSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI3OQorbXNnaWQgInNlYXJjaGVkLCBidXQgZm91bmQgbm8gcGFja2FnZXMgKGZpbGVzIG1hdGNoaW5nICouZGViKSIKK21zZ3N0ciAi5bey6YCy6KGM5pCc5bCL77yM5L2G5piv5rKS5pyJ5om+5Yiw5Lu75L2V5aWX5Lu277yI5Y2z56ym5ZCIICouZGViIOeahOaqlOahiO+8iSIKKworIzogc3JjL2FyY2hpdmVzLmM6MTI5MAorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGF0IGxlYXN0IG9uZSBwYWNrYWdlIGFyY2hpdmUgZmlsZSBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyDpnIDopoHoh7PlsJHkuIDlgIvlpZfku7bmqpTkvZzngrrlj4PmlbgiCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzMjUgc3JjL2RpdmVydGNtZC5jOjc4IHNyYy9kaXZlcnRjbWQuYzoxMTgKKyM6IHNyYy9lbnF1aXJ5LmM6MTY2IHNyYy9lbnF1aXJ5LmM6Mjc5IHNyYy9lbnF1aXJ5LmM6NDQ5IHNyYy9lbnF1aXJ5LmM6NDUxCisjOiBzcmMvZW5xdWlyeS5jOjQ2NCBzcmMvbWFpbi5jOjY2IHNyYy9tYWluLmM6MTYzIHNyYy9tYWluLmM6MzE0CisjOiBzcmMvbWFpbi5jOjQ5MyBzcmMvcGFja2FnZXMuYzoyNTQgc3JjL3F1ZXJ5Y21kLmM6MjUyIHNyYy9xdWVyeWNtZC5jOjM1NQorIzogc3JjL3F1ZXJ5Y21kLmM6Mzk2IHNyYy9xdWVyeWNtZC5jOjQwNCBzcmMvcXVlcnljbWQuYzo0NDggc3JjL3F1ZXJ5Y21kLmM6NTE3CisjOiBzcmMvcXVlcnljbWQuYzo2MDYgc3JjL3F1ZXJ5Y21kLmM6NjUwIHNyYy9zZWxlY3QuYzo3OSBzcmMvc3RhdGNtZC5jOjY4CisjOiBzcmMvc3RhdGNtZC5jOjk4IHNyYy90cmlnY21kLmM6NTggc3JjL3RyaWdjbWQuYzo5MCBkcGtnLWRlYi9idWlsZC5jOjQ0MQorIzogZHBrZy1kZWIvZXh0cmFjdC5jOjIxNyBkcGtnLWRlYi9leHRyYWN0LmM6MjUwIGRwa2ctZGViL2luZm8uYzoyMDMKKyM6IGRwa2ctZGViL2luZm8uYzoyNjUgZHBrZy1kZWIvbWFpbi5jOjYwIGRwa2ctZGViL21haW4uYzoxMjYKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjI1NyBkcGtnLXNwbGl0L21haW4uYzo1NCBkcGtnLXNwbGl0L21haW4uYzo5OAorIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE0NCBkcGtnLXNwbGl0L3F1ZXVlLmM6MjgwCittc2dpZCAiPHN0YW5kYXJkIG91dHB1dD4iCittc2dzdHIgIiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTMyNiBzcmMvcGFja2FnZXMuYzoyNTUgc3JjL3F1ZXJ5Y21kLmM6MjUzCisjOiBzcmMvcXVlcnljbWQuYzozNTMgc3JjL3F1ZXJ5Y21kLmM6NDU0IHNyYy9xdWVyeWNtZC5jOjUxOCBzcmMvc2VsZWN0LmM6ODAKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjE2OSBkcGtnLXNwbGl0L3F1ZXVlLmM6MjE4Cittc2dpZCAiPHN0YW5kYXJkIGVycm9yPiIKK21zZ3N0ciAiIgorCisjOiBzcmMvYXJjaGl2ZXMuYzoxMzY3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJTZWxlY3RpbmcgcHJldmlvdXNseSBkZXNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dpZCAiU2VsZWN0aW5nIHByZXZpb3VzbHkgdW5zZWxlY3RlZCBwYWNrYWdlICVzLlxuIgorbXNnc3RyICLpgbjlj5bkuobljp/lhYjmnKrooqvpgbjlj5bnmoTlpZfku7YgJXPjgIJcbiIKKworIzogc3JjL2FyY2hpdmVzLmM6MTM3MQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiU2tpcHBpbmcgZGVzZWxlY3RlZCBwYWNrYWdlICVzLlxuIgorbXNnaWQgIlNraXBwaW5nIHVuc2VsZWN0ZWQgcGFja2FnZSAlcy5cbiIKK21zZ3N0ciAi55Wl6YGO5pyq6KKr6YG45Y+W55qE5aWX5Lu2ICVz44CCXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzODcKKyMsIGMtZm9ybWF0Cittc2dpZCAiVmVyc2lvbiAlLjI1MHMgb2YgJS4yNTBzIGFscmVhZHkgaW5zdGFsbGVkLCBza2lwcGluZy5cbiIKK21zZ3N0ciAi5bey5pyJ5a6J6KOdICUuMjUwcyDniYjnmoQgJS4yNTBz77yM55Wl6YGO44CCXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjEzOTcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImRvd25ncmFkaW5nICUuMjUwcyBmcm9tICUuMjUwcyB0byAlLjI1MHMuIgorbXNnc3RyICIlcyAtIOitpuWRiu+8muWNs+Wwh+aKiiAlLjI1MHMg5b6eICUuMjUwcyDpmY3ntJrliLAgJS4yNTBz44CCXG4iCisKKyM6IHNyYy9hcmNoaXZlcy5jOjE0MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAiV2lsbCBub3QgZG93bmdyYWRlICUuMjUwcyBmcm9tIHZlcnNpb24gJS4yNTBzIHRvICUuMjUwcywgc2tpcHBpbmcuXG4iCittc2dzdHIgIuWwh+S4jeacg+aKiiAlLjI1MHMg5b6eICUuMjUwcyDpmY3ntJrliLAgJS4yNTBz77yM55Wl6YGO44CCXG4iCisKKyM6IHNyYy9jbGVhbnVwLmM6ODYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInVuYWJsZSB0byByZW1vdmUgbmV3bHktaW5zdGFsbGVkIHZlcnNpb24gb2YgYCUuMjUwcycgdG8gYWxsb3cgcmVpbnN0YWxsYXRpb24gIgorIm9mIGJhY2t1cCBjb3B5IgorbXNnc3RyICLnhKHms5Xnp7vpmaQgYCUuMjUwcycg55qE5paw5a6J6KOd54mI5pys5Lul5L6/6IO96YeN5paw5Lul5YKZ5Lu95Ymv5pys5a6J6KOdIgorCisjOiBzcmMvY2xlYW51cC5jOjkzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZXN0b3JlIGJhY2t1cCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICLnhKHms5Xlm57lvqnngrogYCUuMjUwcycg55qE5YKZ5Lu954mI5pysIgorCisjOiBzcmMvY2xlYW51cC5jOjk3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gcmVzdG9yZSBiYWNrdXAgdmVyc2lvbiBvZiBgJS4yNTBzJyIKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIGJhY2t1cCBjb3B5IG9mICclLjI1MHMnIgorbXNnc3RyICLnhKHms5Xlm57lvqnngrogYCUuMjUwcycg55qE5YKZ5Lu954mI5pysIgorCisjOiBzcmMvY2xlYW51cC5jOjEwMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIG5ld2x5LWluc3RhbGxlZCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICLnhKHms5Xnp7vpmaQgYCUuMjUwcycg55qE5paw5a6J6KOd54mI5pysIgorCisjOiBzcmMvY2xlYW51cC5jOjEwOAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIG5ld2x5LWV4dHJhY3RlZCB2ZXJzaW9uIG9mIGAlLjI1MHMnIgorbXNnc3RyICLnhKHms5Xnp7vpmaQgYCUuMjUwcycg55qE5paw6Kej5aOT54mI5pysIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTA0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gc3RhdCBuZXcgZGlzdCBjb25mZmlsZSBgJS4yNTBzJyIKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBuZXcgZGlzdHJpYnV0ZWQgY29uZmZpbGUgJyUuMjUwcyciCittc2dzdHIgIueEoeazleWPluW+l+aWsOeZvOS9iOeahCBjb25mZmlsZSBgJS4yNTBzJyDnmoTni4DmhYsiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgY3VycmVudCBpbnN0YWxsZWQgY29uZmZpbGUgYCUuMjUwcyciCittc2dzdHIgIueEoeazleWPluW+l+ePvuW3suWuieijneeahCBjb25mZmlsZSBgJS4yNTBzJyDnmoTni4DmhYsiCisKKyM6IHNyYy9jb25maWd1cmUuYzoxMjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIkNvbmZpZ3VyYXRpb24gZmlsZSBgJXMnLCBkb2VzIG5vdCBleGlzdCBvbiBzeXN0ZW0uXG4iCisiSW5zdGFsbGluZyBuZXcgY29uZmlnIGZpbGUgYXMgeW91IHJlcXVlc3RlZC5cbiIKK21zZ3N0ciAiIgorIlxuIgorIuWcqOezu+e1seS4reaJvuS4jeWIsOioreWumuaqlCBgJXMn44CCXG4iCisi5oeJ5oKo55qE6KaB5rGC77yM5a6J6KOd5paw55qE6Kit5a6a5qqU44CCXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzoxNjgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlIG9sZCBiYWNrdXAgJyUuMjUwcyc6ICVzIgorbXNnc3RyICJkcGtn77yaJXPvvJrorablkYogLSDnhKHms5Xnp7vpmaTljp/mnInnmoTlgpnku73mqpQgYCUuMjUwcyfvvJolc1xuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTc2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIHJlbmFtZSAnJS4yNTBzJyB0byAnJS4yNTBzJzogJXMiCittc2dzdHIgImRwa2fvvJolc++8muitpuWRiiAtIOeEoeazleWwhyBgJS4yNTBzJyDmlLnlkI3ngrogYCUuMjUwcyfvvJolc1xuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MTgyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIlczogZmFpbGVkIHRvIHJlbW92ZSAnJS4yNTBzJzogJXMiCittc2dzdHIgIiVz77ya54Sh5rOV5Z+36KGMICclcyAlcyciCisKKyM6IHNyYy9jb25maWd1cmUuYzoxODgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBmYWlsZWQgdG8gcmVtb3ZlIG9sZCBkaXN0cmlidXRlZCB2ZXJzaW9uICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiZHBrZ++8miVz77ya6K2m5ZGKIC0g54Sh5rOV56e76Zmk5Y6f5pyJ55qE55m85L2I54mIIGAlLjI1MHMn77yaJXNcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE5MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byByZW1vdmUgJyUuMjUwcycgKGJlZm9yZSBvdmVyd3JpdGUpOiAlcyIKK21zZ3N0ciAiZHBrZ++8miVz77ya6K2m5ZGKIC0g54Sh5rOV56e76ZmkIGAlLjI1MHMn77yI5Zyo6KaB6YCy6KGM6KaG6JOL5YmN77yJ77yaJXNcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjE5NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IGZhaWxlZCB0byBsaW5rICclLjI1MHMnIHRvICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiZHBrZ++8miVz77ya6K2m5ZGKIC0g54Sh5rOV5bCHIGAlLjI1MHMnIOaMh+WQkSBgJS4yNTBzJ++8miVzXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzoyMDAKKyMsIGMtZm9ybWF0Cittc2dpZCAiSW5zdGFsbGluZyBuZXcgdmVyc2lvbiBvZiBjb25maWcgZmlsZSAlcyAuLi5cbiIKK21zZ3N0ciAi5q2j5Zyo5a6J6KOd5paw54mI55qE6Kit5a6a5qqUICVzIC4uLlxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjA2IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo1NDYKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgYCUuMjUwcycgYXMgYCUuMjUwcyciCittc2dzdHIgIueEoeazleWwhyBgJS4yNTBzJyDlronoo53ngrogYCUuMjUwcyciCisKKyM6IHNyYy9jb25maWd1cmUuYzoyNTcKKyMsIGMtZm9ybWF0Cittc2dpZCAibm8gcGFja2FnZSBuYW1lZCBgJXMnIGlzIGluc3RhbGxlZCwgY2Fubm90IGNvbmZpZ3VyZSIKK21zZ3N0ciAi5pyq5pu+5a6J6KOd5ZCN54K6IGAlcycg55qE5aWX5Lu277yM54Sh5rOV6Kit5a6aIgorCisjOiBzcmMvY29uZmlndXJlLmM6MjYwCisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgJS4yNTBzIGlzIGFscmVhZHkgaW5zdGFsbGVkIGFuZCBjb25maWd1cmVkIgorbXNnc3RyICLlpZfku7YgJS4yNTBzIOW3suWuieijneS4puioreWumuWujOaIkCIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI2MworIywgYy1mb3JtYXQKK21zZ2lkICIiCisicGFja2FnZSAlLjI1MHMgaXMgbm90IHJlYWR5IGZvciBjb25maWd1cmF0aW9uXG4iCisiIGNhbm5vdCBjb25maWd1cmUgKGN1cnJlbnQgc3RhdHVzIGAlLjI1MHMnKSIKK21zZ3N0ciAiIgorIuWll+S7tiAlLjI1MHMg5bCa5pyq5rqW5YKZ5aW95Y+v6YCy6KGM6Kit5a6aXG4iCisiIOS4jeiDveioreWumu+8iOebruWJjeeahOeLgOaFi+eCuiBgJS4yNTBzJ++8iSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjI5NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogZGVwZW5kZW5jeSBwcm9ibGVtcyBwcmV2ZW50IGNvbmZpZ3VyYXRpb24gb2YgJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtn77ya5Zug55u45L6d5ZWP6aGM77yM5LiN6IO96Kit5a6aICVz77yaXG4iCisiJXMiCisKKyM6IHNyYy9jb25maWd1cmUuYzoyOTcKK21zZ2lkICJkZXBlbmRlbmN5IHByb2JsZW1zIC0gbGVhdmluZyB1bmNvbmZpZ3VyZWQiCittc2dzdHIgIuebuOS+neWVj+mhjCAtIOS/neeVmeeCuuacquioreWumiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjMwMQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogJXM6IGRlcGVuZGVuY3kgcHJvYmxlbXMsIGJ1dCBjb25maWd1cmluZyBhbnl3YXkgYXMgeW91IHJlcXVlc3RlZDpcbiIKKyIlcyIKK21zZ3N0ciAiIgorImRwa2fvvJolc++8muebuOS+neWVj+mhjCAtIOS9humChOaYr+S+neaCqOimgeaxguW8t+WItumAsuihjOioreWumu+8mlxuIgorIiVzIgorCisjOiBzcmMvY29uZmlndXJlLmM6MzA5Cittc2dpZCAiIgorIlBhY2thZ2UgaXMgaW4gYSB2ZXJ5IGJhZCBpbmNvbnNpc3RlbnQgc3RhdGUgLSB5b3Ugc2hvdWxkXG4iCisiIHJlaW5zdGFsbCBpdCBiZWZvcmUgYXR0ZW1wdGluZyBjb25maWd1cmF0aW9uLiIKK21zZ3N0ciAi6Kmy5aWX5Lu25q2j6JmV5pa86Z2e5bi45LiN56mp5a6a55qE54uA5oWLIC0g5oKo5pyA5aW95Zyo6Kit5a6a5a6D5LmL5YmN77yM5YWI6YeN5paw5a6J6KOd5a6D44CCIgorCisjOiBzcmMvY29uZmlndXJlLmM6MzEyCisjLCBjLWZvcm1hdAorbXNnaWQgIlNldHRpbmcgdXAgJXMgKCVzKSAuLi5cbiIKK21zZ3N0ciAi5q2j5Zyo6Kit5a6aICVzICglcykgLi4uXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzozOTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogdW5hYmxlIHRvIHN0YXQgY29uZmlnIGZpbGUgJyVzJ1xuIgorIiAoPSAnJXMnKTogJXMiCittc2dzdHIgIiIKKyJkcGtn77yaJXPvvJrorablkYogLSDnhKHms5Xlj5blvpfoqK3lrprmqpQgYCVzJyDnmoTni4DmhYtcbiIKKyIgKD0gYCVzJynvvJolc1xuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDA5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IGNvbmZpZyBmaWxlICclcycgaXMgYSBjaXJjdWxhciBsaW5rXG4iCisiICg9ICclcycpIgorbXNnc3RyICIiCisiZHBrZ++8miVz77ya6K2m5ZGKIC0g6Kit5a6a5qqUIGAlcycg5piv5LiA5YCL5b6q55Kw6YCj57WQXG4iCisiICg9IGAlcycpXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo0MTgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogdW5hYmxlIHRvIHJlYWRsaW5rIGNvbmZmaWxlICclcydcbiIKKyIgKD0gJyVzJyk6ICVzIgorbXNnc3RyICIiCisiZHBrZ++8miVz77ya6K2m5ZGKIC0g54Sh5rOVIHJlYWRsaW5rIGNvbmZmaWxlIGAlcydcbiIKKyIgKD0gYCVzJynvvJolc1xuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDQ0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IGNvbmZmaWxlICclLjI1MHMnIHJlc29sdmVzIHRvIGRlZ2VuZXJhdGUgZmlsZW5hbWVcbiIKKyIgKCclcycgaXMgYSBzeW1saW5rIHRvICclcycpIgorbXNnc3RyICIiCisiZHBrZ++8miVz77ya6K2m5ZGKIC0gY29uZmZpbGUgYCUuMjUwcycg5oyH5ZCR5LqG5pyJ5ZWP6aGM55qE5qqU5qGI5ZCN56ixXG4iCisiIO+8iGAlcycg5piv5LiA5YCL5oyH5ZCRIGAlcycg55qE56ym6Jmf6YCj57WQ77yJXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo0NjAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiVzOiBjb25mZmlsZSAnJS4yNTBzJyBpcyBub3QgYSBwbGFpbiBmaWxlIG9yIHN5bWxpbmsgKD0gJyVzJykiCittc2dzdHIgImRwa2fvvJolc++8muitpuWRiiAtIGNvbmZmaWxlIGAlLjI1MHMnIOS4pumdnuS4gOiIrOeahOaqlOahiOaIluespuiZn+mAo+e1kCAoPSBgJXMnKVxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NDg2Cittc2dpZCAibWQ1aGFzaCIKK21zZ3N0ciAibWQ1aGFzaCIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjQ5MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXM6IHVuYWJsZSB0byBvcGVuIGNvbmZmaWxlICVzIGZvciBoYXNoOiAlcyIKK21zZ3N0ciAiZHBrZ++8miVz77ya6K2m5ZGKIC0g54Sh5rOV6ZaL5ZWfIGNvbmZmaWxlICVzIOS7pemAsuihjOmbnOa5iu+8miVzXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo1MjIgc3JjL2NvbmZpZ3VyZS5jOjUyNgorbXNnaWQgImNvbmZmaWxlIGRpZmZlcmVuY2UgdmlzdWFsaXplciIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NTQzCittc2dpZCAiVHlwZSBgZXhpdCcgd2hlbiB5b3UncmUgZG9uZS5cbiIKK21zZ3N0ciAi5a6M5oiQ5b6M77yM6KuL6Ly45YWlIGBleGl0J+OAglxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NTUyIHNyYy9jb25maWd1cmUuYzo1NTYKK21zZ2lkICJjb25mZmlsZSBzaGVsbCIKK21zZ3N0ciAiIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjAyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJDb25maWd1cmF0aW9uIGZpbGUgYCVzJyIKK21zZ3N0ciAiIgorIlxuIgorIuioreWumuaqlCBgJXMnIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjA0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAoYWN0dWFsbHkgYCVzJykiCittc2dzdHIgIiDvvIjlr6bpmpvkuIrmmK8gYCVzJ++8iSIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYwOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiID09PiBGaWxlIG9uIHN5c3RlbSBjcmVhdGVkIGJ5IHlvdSBvciBieSBhIHNjcmlwdC5cbiIKKyIgPT0+IEZpbGUgYWxzbyBpbiBwYWNrYWdlIHByb3ZpZGVkIGJ5IHBhY2thZ2UgbWFpbnRhaW5lci5cbiIKK21zZ3N0ciAiIgorIlxuIgorIiA9PT4g57O757Wx5Lit55qE6YCZ5YCL5qqU5qGI5piv55Sx5oKo5bu656uL5oiW6ICF5piv55SxIHNjcmlwdCDlu7rnq4vnmoTjgIJcbiIKKyIgPT0+IOWll+S7tue2reitt+iAheaJgOaPkOS+m+eahOWll+S7tuS4reS5n+WMheWQq+S6huipsuaqlOahiOOAglxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjEzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgICAgIE5vdCBtb2RpZmllZCBzaW5jZSBpbnN0YWxsYXRpb24uXG4iCittc2dzdHIgIiIKKyJcbiIKKyIgICAgIOWcqOWuieijneW+jOacquabvuabtOWLleOAglxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjE1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgPT0+IE1vZGlmaWVkIChieSB5b3Ugb3IgYnkgYSBzY3JpcHQpIHNpbmNlIGluc3RhbGxhdGlvbi5cbiIKK21zZ3N0ciAiIgorIlxuIgorIiA9PT4g5Zyo5a6J6KOd5b6M5pu+6KKr77yI5oKo5oiW5p+Q5YCLIHNjcmlwdO+8ieS/ruaUuemBjuOAglxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjE2CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyIgPT0+IERlbGV0ZWQgKGJ5IHlvdSBvciBieSBhIHNjcmlwdCkgc2luY2UgaW5zdGFsbGF0aW9uLlxuIgorbXNnc3RyICIiCisiXG4iCisiID09PiDlnKjlronoo53lvozooqvvvIjmgqjmiJbmn5DlgIsgc2NyaXB077yJ5Yiq5o6J5LqG44CCXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBQYWNrYWdlIGRpc3RyaWJ1dG9yIGhhcyBzaGlwcGVkIGFuIHVwZGF0ZWQgdmVyc2lvbi5cbiIKK21zZ3N0ciAiID09PiDlpZfku7bnmoTmj5DkuqTogIXmj5DkvpvkuobkuIDlgIvmm7TmlrDniYjmnKzjgIJcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYyMAorIywgYy1mb3JtYXQKK21zZ2lkICIgICAgIFZlcnNpb24gaW4gcGFja2FnZSBpcyB0aGUgc2FtZSBhcyBhdCBsYXN0IGluc3RhbGxhdGlvbi5cbiIKK21zZ3N0ciAiICAgICDlpZfku7bnmoTniYjmnKzlkozkuIrmrKHlronoo53nmoTniYjmnKzmmK/nm7jlkIznmoTjgIJcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjYyOAorIywgYy1mb3JtYXQKK21zZ2lkICIgPT0+IFVzaW5nIG5ldyBmaWxlIGFzIHlvdSByZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiA9PT4g5oyJ54Wn5oKo55qE6KaB5rGC77yM5L2/55So5paw55qE5qqU5qGI44CCXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2MzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBVc2luZyBjdXJyZW50IG9sZCBmaWxlIGFzIHlvdSByZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiA9PT4g5oyJ54Wn5oKo55qE6KaB5rGC77yM5L+d55WZ5Y6f5pyJ55qE6IiK5qqU5qGI44CCXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiID09PiBLZWVwaW5nIG9sZCBjb25maWcgZmlsZSBhcyBkZWZhdWx0LlxuIgorbXNnc3RyICIgPT0+IOmgkOioreS4iuaYr+S/neeVmeWOn+acieeahOioreWumuaqlOOAglxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiA9PT4gVXNpbmcgbmV3IGNvbmZpZyBmaWxlIGFzIGRlZmF1bHQuXG4iCittc2dzdHIgIiA9PT4g6aCQ6Kit5LiK5piv5L2/55So5paw55qE6Kit5a6a5qqU44CCXG4iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyIgICBXaGF0IHdvdWxkIHlvdSBsaWtlIHRvIGRvIGFib3V0IGl0ID8gIFlvdXIgb3B0aW9ucyBhcmU6XG4iCisiICAgIFkgb3IgSSAgOiBpbnN0YWxsIHRoZSBwYWNrYWdlIG1haW50YWluZXIncyB2ZXJzaW9uXG4iCisiICAgIE4gb3IgTyAgOiBrZWVwIHlvdXIgY3VycmVudGx5LWluc3RhbGxlZCB2ZXJzaW9uXG4iCisiICAgICAgRCAgICAgOiBzaG93IHRoZSBkaWZmZXJlbmNlcyBiZXR3ZWVuIHRoZSB2ZXJzaW9uc1xuIgorIiAgICAgIFogICAgIDogc3RhcnQgYSBzaGVsbCB0byBleGFtaW5lIHRoZSBzaXR1YXRpb25cbiIKK21zZ3N0ciAiIgorIiAgIOaCqOW4jOacm+WmguS9leiZleeQhu+8nyDpgbjpoIXlpoLkuIvvvJpcbiIKKyIgICAgWSDmiJYgSSAg77ya5a6J6KOd5aWX5Lu257at6K236ICF5omA5o+Q5L6b55qE54mI5pysXG4iCisiICAgIE4g5oiWIE8gIO+8muS/neeVmeaCqOWOn+acrOWuieijneeahOeJiOacrFxuIgorIiAgICAgIEQgICAgIO+8mumhr+ekuuWFqeiAheacieS9leS4jeWQjFxuIgorIiAgICAgIFogICAgIO+8muaKiuebruWJjeeoi+W6j+WIh+aPm+WIsOiDjOaZr++8jOWGjeWKoOS7peeglOWIpFxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjU5CisjLCBjLWZvcm1hdAorbXNnaWQgIiBUaGUgZGVmYXVsdCBhY3Rpb24gaXMgdG8ga2VlcCB5b3VyIGN1cnJlbnQgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIOmgkOioreeahOWLleS9nOaYr+S/neeVmeaCqOebruWJjeS9v+eUqOeahOeJiOacrOOAglxuIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjYxCisjLCBjLWZvcm1hdAorbXNnaWQgIiBUaGUgZGVmYXVsdCBhY3Rpb24gaXMgdG8gaW5zdGFsbCB0aGUgbmV3IHZlcnNpb24uXG4iCittc2dzdHIgIiDpoJDoqK3nmoTli5XkvZzmmK/lronoo53mlrDnmoTniYjmnKzjgIJcbiIKKworIzogc3JjL2NvbmZpZ3VyZS5jOjY2NgorbXNnaWQgIltkZWZhdWx0PU5dIgorbXNnc3RyICJb6aCQ6KitPU5dIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjY3Cittc2dpZCAiW2RlZmF1bHQ9WV0iCittc2dzdHIgIlvpoJDoqK09WV0iCisKKyM6IHNyYy9jb25maWd1cmUuYzo2NjgKK21zZ2lkICJbbm8gZGVmYXVsdF0iCittc2dzdHIgIlvnhKHpoJDoqK3lgLxdIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjcxCittc2dpZCAiZXJyb3Igd3JpdGluZyB0byBzdGRlcnIsIGRpc2NvdmVyZWQgYmVmb3JlIGNvbmZmaWxlIHByb21wdCIKK21zZ3N0ciAi5ZyoIGNvbmZmaWxlIOaPkOekuui8uOWFpeS5i+WJje+8jOeZvOePvuWvq+WFpSBzdGRlcnIg6Yyv6KqkIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjgwCittc2dpZCAicmVhZCBlcnJvciBvbiBzdGRpbiBhdCBjb25mZmlsZSBwcm9tcHQiCittc2dzdHIgIuWcqCBjb25mZmlsZSDmj5DnpLrovLjlhaXmmYLvvIznmbznj77oroDlj5Ygc3RkaW4g6Yyv6KqkIgorCisjOiBzcmMvY29uZmlndXJlLmM6NjgxCittc2dpZCAiRU9GIG9uIHN0ZGluIGF0IGNvbmZmaWxlIHByb21wdCIKK21zZ3N0ciAi5ZyoIGNvbmZmaWxlIOaPkOekuui8uOWFpeaZgu+8jOeUsSBzdGRpbiDkuK3oroDliLDkuoYgRU9GIgorCisjOiBzcmMvZGVwY29uLmM6MTc1CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGRlcGVuZHMgb24gJXMiCittc2dzdHIgIiVzIOebuOS+neaWvCAlcyIKKworIzogc3JjL2RlcGNvbi5jOjE3OAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBwcmUtZGVwZW5kcyBvbiAlcyIKK21zZ3N0ciAiJXMg6aCQ5YWI55u45L6d5pa8ICVzIgorCisjOiBzcmMvZGVwY29uLmM6MTgxCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIHJlY29tbWVuZHMgJXMiCittc2dzdHIgIiVzIOaOqOiWpiAlcyIKKworIzogc3JjL2RlcGNvbi5jOjE4NAorIywgYy1mb3JtYXQKK21zZ2lkICIlcyBzdWdnZXN0cyAlcyIKK21zZ3N0ciAiJXMg5bu66K2wICVzIgorCisjOiBzcmMvZGVwY29uLmM6MTg3CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGJyZWFrcyAlcyIKK21zZ3N0ciAiJXMg5pyD5pCN5q+AICVzIgorCisjOiBzcmMvZGVwY29uLmM6MTkwCisjLCBjLWZvcm1hdAorbXNnaWQgIiVzIGNvbmZsaWN0cyB3aXRoICVzIgorbXNnc3RyICIlcyDooZ3nqoHmlrwgJXMiCisKKyM6IHNyYy9kZXBjb24uYzoxOTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiJXMgZW5oYW5jZXMgJXMiCittc2dzdHIgIiVzIOWKoOW8t+S6hiAlcyIKKworIzogc3JjL2RlcGNvbi5jOjI5NgorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB0byBiZSByZW1vdmVkLlxuIgorbXNnc3RyICIgIOWNs+Wwh+enu+mZpCAlLjI1MHPjgIJcbiIKKworIzogc3JjL2RlcGNvbi5jOjI5OQorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB0byBiZSBkZWNvbmZpZ3VyZWQuXG4iCittc2dzdHIgIiAg5Y2z5bCH5riF6ZmkICUuMjUwcyDnmoToqK3lrprjgIJcbiIKKworIzogc3JjL2RlcGNvbi5jOjMwNAorIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB0byBiZSBpbnN0YWxsZWQsIGJ1dCBpcyB2ZXJzaW9uICUuMjUwcy5cbiIKK21zZ3N0ciAiICDljbPlsIflronoo50gJS4yNTBz77yM5LiN6YGO5Y275piv54mI5pysICUuMjUwc+OAglxuIgorCisjOiBzcmMvZGVwY29uLmM6MzE0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIGluc3RhbGxlZCwgYnV0IGlzIHZlcnNpb24gJS4yNTBzLlxuIgorbXNnc3RyICIgIOW3suWuieijneS6hiAlLjI1MHPvvIzkuI3pgY7ljbvmmK/niYjmnKwgJS4yNTBz44CCXG4iCisKKyM6IHNyYy9kZXBjb24uYzozMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgdW5wYWNrZWQsIGJ1dCBoYXMgbmV2ZXIgYmVlbiBjb25maWd1cmVkLlxuIgorbXNnc3RyICIgIOW3suino+mWi+S6hiAlLjI1MHPvvIzkvYbmmK/lroPpgoTmspLmnInooqvoqK3lrprpgY7jgIJcbiIKKworIzogc3JjL2RlcGNvbi5jOjMzNworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBpcyB1bnBhY2tlZCwgYnV0IGlzIHZlcnNpb24gJS4yNTBzLlxuIgorbXNnc3RyICIgIOW3sue2k+ino+mWi+S6hiAlLjI1MHPvvIzkuI3pgY7ljbvmmK/niYjmnKwgJS4yNTBz44CCXG4iCisKKyM6IHNyYy9kZXBjb24uYzozNDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgbGF0ZXN0IGNvbmZpZ3VyZWQgdmVyc2lvbiBpcyAlLjI1MHMuXG4iCittc2dzdHIgIiAg5LiK5qyh6Kit5a6aICUuMjUwcyDmmYLvvIzniYjmnKzngrogJS4yNTBz44CCXG4iCisKKyM6IHNyYy9kZXBjb24uYzozNTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgaXMgJXMuXG4iCittc2dzdHIgIiAgJS4yNTBzIOePvueCuiAlc+OAglxuIgorCisjOiBzcmMvZGVwY29uLmM6Mzg4CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBidXQgaXMgdG8gYmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiICAlLjI1MHMg5o+Q5L6b5LqGICUuMjUwc++8jOS9huWNu+Wwh+iiq+enu+mZpOOAglxuIgorCisjOiBzcmMvZGVwY29uLmM6MzkyCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIHByb3ZpZGVzICUuMjUwcyBidXQgaXMgdG8gYmUgZGVjb25maWd1cmVkLlxuIgorbXNnc3RyICIgICUuMjUwcyDmj5DkvpvkuoYgJS4yNTBz77yM5L2G5Y275bCH6KaB5riF6Zmk5a6D55qE6Kit5a6a44CCXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0MDEKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGJ1dCBpcyAlcy5cbiIKK21zZ3N0ciAiICAlLjI1MHMg5o+Q5L6b5LqGICUuMjUwc++8jOS9huaYr+Wug+ePvueCuiAlc+OAglxuIgorCisjOiBzcmMvZGVwY29uLmM6NDE1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzIGlzIG5vdCBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIOaykuacieiiq+WuieijneOAglxuIgorCisjOiBzcmMvZGVwY29uLmM6NDQzCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJS4yNTBzICh2ZXJzaW9uICUuMjUwcykgaXMgdG8gYmUgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIgIOWNs+Wwh+WuieijnSAlLjI1MHPvvIjniYjmnKwgJS4yNTBz77yJ44CCXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgKHZlcnNpb24gJS4yNTBzKSBpcyBwcmVzZW50IGFuZCAlcy5cbiIKK21zZ3N0ciAiICAlLjI1MHPvvIjniYjmnKwgJS4yNTBz77yJ5bey5a2Y5Zyo5LiUICVz44CCXG4iCisKKyM6IHNyYy9kZXBjb24uYzo0OTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGFuZCBpcyB0byBiZSBpbnN0YWxsZWQuXG4iCittc2dzdHIgIiAgJS4yNTBzIOaPkOS+m+S6hiAlLjI1MHPvvIzkuJTlsIfmnIPooqvlronoo53jgIJcbiIKKworIzogc3JjL2RlcGNvbi5jOjUzNworIywgYy1mb3JtYXQKK21zZ2lkICIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYW5kIGlzIHByZXNlbnQgYW5kICVzLlxuIgorbXNnc3RyICIgICUuMjUwcyDmj5DkvpvkuoYgJS4yNTBz77yM5a6D5bey5a2Y5Zyo5LiUICVz44CCXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MAorIywgZnV6enkKKyN8IG1zZ2lkICJUeXBlIGRwa2ctdHJpZ2dlciAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgdGhpcyB1dGlsaXR5LiIKK21zZ2lkICJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IGRpdmVydGluZyBmaWxlcy4iCittc2dzdHIgIui8uOWFpSBkcGtnLXRyaWdnZXIgLS1oZWxwIOS7peWPluW+l+mAmeWAi+W3peWFt+eahOiqquaYjuOAgiIKKworIzogc3JjL2RpdmVydGNtZC5jOjY2IHNyYy9zdGF0Y21kLmM6NTcgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjgwCisjLCBjLWZvcm1hdAorbXNnaWQgIkRlYmlhbiAlcyB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICJEZWJpYW4gJXMg54mI5pysICVz44CCXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo3MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIlxuIgorI3wgIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyN8ICJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLiIKK21zZ2lkICIiCisiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDEwIEd1aWxsZW0gSm92ZXIuXG4iCittc2dzdHIgIiIKKyJcbiIKKyJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo3NSBzcmMvbWFpbi5jOjYzIHNyYy9xdWVyeWNtZC5jOjYwMyBzcmMvc3RhdGNtZC5jOjY1CisjOiBzcmMvdHJpZ2NtZC5jOjU1IGRwa2ctZGViL21haW4uYzo1NyBkcGtnLXNwbGl0L21haW4uYzo1MQorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjg5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvclxuIgorImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LlxuIgorbXNnc3RyICIiCisiXG4iCisi6YCZ5piv6Ieq55Sx6Luf6auU77mU6KaB542y55+l6KSH6KO96Kmy6Luf6auU55qE5YmN5o+Q5ZKM5qKd5Lu277yM6KuL5Y+D6ZaxIEdOVSBQdWJsaWMgTGljZW5jZVxuIgorIuesrCAyIOaIluabtOaWsOeahOeJiOacrOOAguacrOi7n+mrlOOAkOS4jeOAkeaPkOS+m+S7u+S9leS/neiovOOAglxuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6ODcgc3JjL21haW4uYzo4MSBzcmMvcXVlcnljbWQuYzo2MTUgc3JjL3N0YXRjbWQuYzo3NworIzogZHBrZy1kZWIvbWFpbi5jOjY5IGRwa2ctc3BsaXQvbWFpbi5jOjYzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzo5NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIDxjb21tYW5kPlxuIgorIlxuIgorbXNnc3RyICIiCisi55So5rOV77yaJXMgWzzpgbjpoIU+IC4uLl0gPOWRveS7pD5cbiIKKyJcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjkxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIFstLWFkZF0gPGZpbGU+ICAgICAgICAgICBhZGQgYSBkaXZlcnNpb24uXG4iCisiICAtLXJlbW92ZSA8ZmlsZT4gICAgICAgICAgcmVtb3ZlIHRoZSBkaXZlcnNpb24uXG4iCisiICAtLWxpc3QgWzxnbG9iLXBhdHRlcm4+XSAgc2hvdyBmaWxlIGRpdmVyc2lvbnMuXG4iCisiICAtLWxpc3RwYWNrYWdlIDxmaWxlPiAgICAgc2hvdyB3aGF0IHBhY2thZ2UgZGl2ZXJ0cyB0aGUgZmlsZS5cbiIKKyIgIC0tdHJ1ZW5hbWUgPGZpbGU+ICAgICAgICByZXR1cm4gdGhlIGRpdmVydGVkIGZpbGUuXG4iCisiXG4iCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjEwMAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLXBhY2thZ2UgPHBhY2thZ2U+ICAgICAgbmFtZSBvZiB0aGUgcGFja2FnZSB3aG9zZSBjb3B5IG9mIDxmaWxlPiB3aWxsICIKKyJub3RcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJlIGRpdmVydGVkLlxuIgorIiAgLS1sb2NhbCAgICAgICAgICAgICAgICAgIGFsbCBwYWNrYWdlcycgdmVyc2lvbnMgYXJlIGRpdmVydGVkLlxuIgorIiAgLS1kaXZlcnQgPGRpdmVydC10bz4gICAgIHRoZSBuYW1lIHVzZWQgYnkgb3RoZXIgcGFja2FnZXMnIHZlcnNpb25zLlxuIgorIiAgLS1yZW5hbWUgICAgICAgICAgICAgICAgIGFjdHVhbGx5IG1vdmUgdGhlIGZpbGUgYXNpZGUgKG9yIGJhY2spLlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIHNldCB0aGUgZGlyZWN0b3J5IHdpdGggdGhlIGRpdmVyc2lvbnMgZmlsZS5cbiIKKyIgIC0tdGVzdCAgICAgICAgICAgICAgICAgICBkb24ndCBkbyBhbnl0aGluZywganVzdCBkZW1vbnN0cmF0ZS5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBxdWlldCBvcGVyYXRpb24sIG1pbmltYWwgb3V0cHV0LlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIueUqOazle+8miVzIFs86YG46aCFPiAuLi5dIDzlkb3ku6Q+XG4iCisiXG4iCisi5ZG95Luk77yaXG4iCisiICBbLS1hZGRdIDzmqpTmoYg+ICAgICAgICAgICDmlrDlop7mir3mj5vpoIXnm67jgIJcbiIKKyIgIC0tcmVtb3ZlIDzmqpTmoYg+ICAgICAgICAgIOWIqumZpOaKveaPm+mgheebruOAglxuIgorIiAgLS1saXN0IFs85q+U5bCN6KGo6YGU5byPPl0gICAg6aGv56S65qqU5qGI55qE5oq95o+b6aCF55uu44CCXG4iCisiICAtLXRydWVuYW1lIDzmqpTmoYg+ICAgICAgICDlgrPlm57ooqvmir3mj5vnmoTmqpTmoYjjgIJcbiIKKyJcbiIKKyLpgbjpoIXvvJpcbiIKKyIgIC0tcGFja2FnZSA85aWX5Lu2PiAgICAgICAgIOWll+S7tueahOWQjeeose+8jOWug+eahCA85qqU5qGIPiDnmoTlia/mnKzlsIfkuI3mnIPooqvmir3mj5vjgIJcbiIKKyIgIC0tbG9jYWwgICAgICAgICAgICAgICAgICDmiYDmnInlpZfku7bniYjmnKzpg73mnIPooqvmir3mj5vjgIJcbiIKKyIgIC0tZGl2ZXJ0IDzmir3mj5vlkI3nqLE+ICAgICAg5YW25a6D55qE5aWX5Lu254mI5pys5omA5pyD5L2/55So5ZCN56ix44CCXG4iCisiICAtLXJlbmFtZSAgICAgICAgICAgICAgICAg55yf55qE6YCy6KGM5qqU5qGI55qE5pCs56e777yI5oiW5Zue5b6p77yJ44CCXG4iCisiICAtLWFkbWluZGlyIDznm67pjIQ+ICAgICAgICDoqK3lrprmir3mj5vmqpTnmoTmiYDkvb/nlKjnmoTnm67pjITjgIJcbiIKKyIgIC0tdGVzdCAgICAgICAgICAgICAgICAgICDkuI3lr6bpmpvpgLLooYzvvIzlg4XmqKHmk6zjgIJcbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICDlronpnZzmqKHlvI/vvIzlhJjph4/kuI3poa/npLroqIrmga/jgIJcbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICDpoa/npLrpgJnlgIvoqqrmmI7oqIrmga/jgIJcbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICDpoa/npLrniYjmnKzos4foqIrjgIJcbiIKKyJcbiIKKyLlnKjmlrDlop7mmYLvvIzpoJDoqK3ngrogLS1sb2NhbCDlj4ogLS1kaXZlcnQgPOWOn+Wni+aqlD4uZGlzdHJpYuOAglxuIgorIuWcqOenu+mZpOaZgu+8jC0tcGFja2FnZSDmiJYgLS1sb2NhbCDlj4ogLS1kaXZlcnQg5b+F6aCI55u456ym77yI6Iul5pyJ5oyH5a6a55qE6Kmx77yJ44CCXG4iCisi5aWX5Lu255qEIHByZWluc3QvcG9zdHJtIHNjcmlwdHMg5oeJ55W26KaB5oyH5a6aIC0tcGFja2FnZSDlj4ogLS1kaXZlcnTjgIJcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiV2hlbiBhZGRpbmcsIGRlZmF1bHQgaXMgLS1sb2NhbCBhbmQgLS1kaXZlcnQgPG9yaWdpbmFsPi5kaXN0cmliLlxuIgorIldoZW4gcmVtb3ZpbmcsIC0tcGFja2FnZSBvciAtLWxvY2FsIGFuZCAtLWRpdmVydCBtdXN0IG1hdGNoIGlmIHNwZWNpZmllZC5cbiIKKyJQYWNrYWdlIHByZWluc3QvcG9zdHJtIHNjcmlwdHMgc2hvdWxkIGFsd2F5cyBzcGVjaWZ5IC0tcGFja2FnZSBhbmQgLS0iCisiZGl2ZXJ0LlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoxNjgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImVycm9yIGNoZWNraW5nIGAlcyc6ICVzIgorbXNnaWQgImVycm9yIGNoZWNraW5nICclcyciCittc2dzdHIgIuWcqOaqouafpSBgJXMnIOaZgueZvOeUn+mMr+iqpO+8miVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjAzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJyZW5hbWUgaW52b2x2ZXMgb3ZlcndyaXRpbmcgYCVzJyB3aXRoXG4iCisiICBkaWZmZXJlbnQgZmlsZSBgJXMnLCBub3QgYWxsb3dlZCIKK21zZ3N0ciAiIgorIuiLpemAsuihjOabtOWQje+8jOWwh+acg+S7peWPpuS4gOWAi+aqlOahiCBgJTIkcydcbiIKKyIgIOiTi+mBjiBgJTEkcyfvvIzlm6DogIzkuI3lj6/pgLLooYwiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyMjMgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzNzMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgZmlsZSAnJXMnIgorbXNnc3RyICLnhKHms5XplovllZ/kvobmupDmqpQgYCUuMjUwcyciCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyMjcKK21zZ2lkICJmaWxlIGNvcHkiCittc2dzdHIgIiIKKworIzogc3JjL2RpdmVydGNtZC5jOjIzOQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiY2Fubm90IHN0YXQgbmV3IG5hbWUgYCVzJzogJXMiCittc2dpZCAiY2Fubm90IHJlbmFtZSAnJXMnIHRvICclcyciCittc2dzdHIgIueEoeazleWPluW+l+aWsOWQjeeosSBgJXMnIOeahOizh+ioiu+8miVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MjUyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJyZW5hbWU6IHJlbW92ZSBkdXBsaWNhdGUgb2xkIGxpbmsgYCVzJzogJXMiCittc2dpZCAicmVuYW1lOiByZW1vdmUgZHVwbGljYXRlIG9sZCBsaW5rICclcyciCittc2dzdHIgIuabtOWQje+8muenu+mZpOmHjeikh+eahOiIiumAo+e1kCBgJXMn77yaJXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyNjIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byBvcGVuIHNvdXJjZSBmaWxlIGAlLjI1MHMnIgorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgY29waWVkIHNvdXJjZSBmaWxlICclcyciCittc2dzdHIgIueEoeazlemWi+WVn+S+hua6kOaqlCBgJS4yNTBzJyIKKworIzogc3JjL2RpdmVydGNtZC5jOjI4NAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAibG9jYWwgZGl2ZXJzaW9uIHRvOiAlc1xuIgorbXNnaWQgImxvY2FsIGRpdmVyc2lvbiBvZiAlcyIKK21zZ3N0ciAi6Ieq6KGM5oq95o+b77yM6Iez77yaJXNcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjI4NgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAibG9jYWwgZGl2ZXJzaW9uIHRvOiAlc1xuIgorbXNnaWQgImxvY2FsIGRpdmVyc2lvbiBvZiAlcyB0byAlcyIKK21zZ3N0ciAi6Ieq6KGM5oq95o+b77yM6Iez77yaJXNcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjI5MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZGl2ZXJzaW9uIGJ5ICVzIHRvOiAlc1xuIgorbXNnaWQgImRpdmVyc2lvbiBvZiAlcyBieSAlcyIKK21zZ3N0ciAi55SxICVzIOaJgOaKveaPm++8jOiHs++8miVzXG4iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzoyOTMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImRpdmVyc2lvbiBieSAlcyB0bzogJXNcbiIKK21zZ2lkICJkaXZlcnNpb24gb2YgJXMgdG8gJXMgYnkgJXMiCittc2dzdHIgIueUsSAlcyDmiYDmir3mj5vvvIzoh7PvvJolc1xuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MzA5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJsb2NhbCBkaXZlcnNpb24gdG86ICVzXG4iCittc2dpZCAiYW55IGRpdmVyc2lvbiBvZiAlcyIKK21zZ3N0ciAi6Ieq6KGM5oq95o+b77yM6Iez77yaJXNcbiIKKworIzogc3JjL2RpdmVydGNtZC5jOjMxMQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZGl2ZXJzaW9uIGJ5ICVzIHRvOiAlc1xuIgorbXNnaWQgImFueSBkaXZlcnNpb24gb2YgJXMgdG8gJXMiCittc2dzdHIgIueUsSAlcyDmiYDmir3mj5vvvIzoh7PvvJolc1xuIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6MzU3CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW5ub3Qgb3BlbiBHUEwgZmlsZSIKK21zZ2lkICJjYW5ub3QgY3JlYXRlIG5ldyAlcyBmaWxlIgorbXNnc3RyICLnhKHms5XplovllZ8gR1BMIOaqlCIKKworIzogc3JjL2RpdmVydGNtZC5jOjM3NSBzcmMvc3RhdGNtZC5jOjIxNSB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTQwNAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGZsdXNoIGZpbGUgJyVzJyIKK21zZ3N0ciAi54Sh5rOV5ZyoIHZzbnByaW50ZiDoo6HpgLLooYzliLfmlrAiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzozODIKKyMsIGZ1enp5CisjfCBtc2dpZCAicmVtb3ZlIG9sZCBkaXZlcnNpb25zLW9sZDogJXMiCittc2dpZCAiZXJyb3IgcmVtb3Zpbmcgb2xkIGRpdmVyc2lvbnMtb2xkIgorbXNnc3RyICLnp7vpmaTljp/mnKznmoQgZGl2ZXJzaW9ucy1vbGTvvJolcyIKKworIzogc3JjL2RpdmVydGNtZC5jOjM4NAorIywgZnV6enkKK21zZ2lkICJlcnJvciBjcmVhdGluZyBuZXcgZGl2ZXJzaW9ucy1vbGQiCittc2dzdHIgIuWcqOW7uueri+aWsOeahCBzdGF0b3ZlcnJpZGUtb2xkIOaZgueZvOeUn+mMr+iqpO+8miVzIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6Mzg2CisjLCBmdXp6eQorbXNnaWQgImVycm9yIGluc3RhbGxpbmcgbmV3IGRpdmVyc2lvbnMiCittc2dzdHIgIuWcqOWuieijneaWsOeahCBzdGF0b3ZlcnJpZGUg5pmC55m855Sf6Yyv6Kqk77yaJXMiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MDYgc3JjL2RpdmVydGNtZC5jOjUwMyBzcmMvZGl2ZXJ0Y21kLmM6NjEwCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NjMwIHNyYy9zdGF0Y21kLmM6MjkwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSBzaW5nbGUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMg6ZyA6KaB5LiA5YCL5Y+D5pW4IgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDA5IHNyYy9kaXZlcnRjbWQuYzo0MzAKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZW5hbWUgXCIlc1wiIGlzIG5vdCBhYnNvbHV0ZSIKK21zZ3N0ciAi5qqU5ZCNIFwiJXNcIiDkuI3mmK/llK/kuIDnmoQiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo0MTEgc3JjL3N0YXRjbWQuYzoyNDkKK21zZ2lkICJmaWxlIG1heSBub3QgY29udGFpbiBuZXdsaW5lcyIKK21zZ3N0ciAi5qqU5qGI5LiN6Kmy5YyF5ZCr5o+b6KGM56ym6JmfIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDE4Cittc2dpZCAiQ2Fubm90IGRpdmVydCBkaXJlY3RvcmllcyIKK21zZ3N0ciAi54Sh5rOV5oq95o+b55uu6YyEIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NDMzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3QgZGl2ZXJ0IGZpbGUgJyVzJyB0byBpdHNlbGYiCittc2dzdHIgIueEoeazleaKveaPm+ebrumMhCIKKworIzogc3JjL2RpdmVydGNtZC5jOjQ1MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiTGVhdmluZyBgJXMnIgorbXNnaWQgIkxlYXZpbmcgJyVzJ1xuIgorbXNnc3RyICLpm6LplosgYCVzJyIKKworIzogc3JjL2RpdmVydGNtZC5jOjQ1OAorIywgYy1mb3JtYXQKK21zZ2lkICJgJXMnIGNsYXNoZXMgd2l0aCBgJXMnIgorbXNnc3RyICJgJXMnIOWSjCBgJXMnIOebuOihneeqgSIKKworIzogc3JjL2RpdmVydGNtZC5jOjQ4MQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiQWRkaW5nIGAlcyciCittc2dpZCAiQWRkaW5nICclcydcbiIKK21zZ3N0ciAi5aKe5YqgIGAlcyciCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MTAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIk5vIGRpdmVyc2lvbiBgJXMnLCBub25lIHJlbW92ZWQiCittc2dpZCAiTm8gZGl2ZXJzaW9uICclcycsIG5vbmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAi54Sh5oq95o+b6aCF55uuIGAlcyfvvIznhKHlj6/liKrpmaQiCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm1pc21hdGNoIG9uIGRpdmVydC10b1xuIgorIiAgd2hlbiByZW1vdmluZyBgJXMnXG4iCisiICBmb3VuZCBgJXMnIgorbXNnc3RyICIiCisiPOaKveaPm+WQjeeosT4g5LiN56ym77yMXG4iCisiICDlnKjnp7vpmaQgYCVzJyDmmYJcbiIKKyIgIOeZvOePviBgJXMnIgorCisjOiBzcmMvZGl2ZXJ0Y21kLmM6NTMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJtaXNtYXRjaCBvbiBwYWNrYWdlXG4iCisiICB3aGVuIHJlbW92aW5nIGAlcydcbiIKKyIgIGZvdW5kIGAlcyciCittc2dzdHIgIiIKKyI85aWX5Lu2PiDkuI3nrKbvvIxcbiIKKyIgIOWcqOenu+mZpCBgJXMnIOaZglxuIgorIiAg55m854++IGAlcyciCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo1MzkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIlJlbW92aW5nIGAlcyciCittc2dpZCAiUmVtb3ZpbmcgJyVzJ1xuIgorbXNnc3RyICLmraPlnKjliKrpmaQgYCVzJyIKKworIzogc3JjL2RpdmVydGNtZC5jOjY1NworbXNnaWQgInBhY2thZ2UgbWF5IG5vdCBjb250YWluIG5ld2xpbmVzIgorbXNnc3RyICI85aWX5Lu2PiDkuI3oqbLljIXlkKvmj5vooYznrKbomZ8iCisKKyM6IHNyYy9kaXZlcnRjbWQuYzo2NjYKK21zZ2lkICJkaXZlcnQtdG8gbWF5IG5vdCBjb250YWluIG5ld2xpbmVzIgorbXNnc3RyICI85oq95o+b5ZCN56ixPiDkuI3oqbLljIXlkKvmj5vooYznrKbomZ8iCisKKyM6IHNyYy9kaXZlcnRkYi5jOjY0Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gZGl2ZXJzaW9ucyBmaWxlIgorbXNnc3RyICLnhKHms5XplovllZ/mir3mj5vmqpQiCisKKyM6IHNyYy9kaXZlcnRkYi5jOjcxCittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IHByZXZpb3VzIGRpdmVyc2lvbnMgZmlsZSIKK21zZ3N0ciAi54Sh5rOVIGZzdGF0IOWOn+acieeahOaKveaPm+aqlCIKKworIzogc3JjL2RpdmVydGRiLmM6NzMKK21zZ2lkICJmYWlsZWQgdG8gZnN0YXQgZGl2ZXJzaW9ucyBmaWxlIgorbXNnc3RyICLnhKHms5UgZnN0YXQg5oq95o+b5qqUIgorCisjOiBzcmMvZGl2ZXJ0ZGIuYzoxMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiY29uZmxpY3RpbmcgZGl2ZXJzaW9ucyBpbnZvbHZpbmcgYCUuMjUwcycgb3IgYCUuMjUwcyciCittc2dzdHIgIuaKveaPm+ihneeqge+8jOa2ieWFpeWFtuS4reeahOaciSBgJS4yNTBzJyDlj4ogYCUuMjUwcyciCisKKyM6IHNyYy9lbnF1aXJ5LmM6NzMKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgaW4gYSBtZXNzIGR1ZSB0byBzZXJpb3VzIHByb2JsZW1zIGR1cmluZ1xuIgorImluc3RhbGxhdGlvbi4gIFRoZXkgbXVzdCBiZSByZWluc3RhbGxlZCBmb3IgdGhlbSAoYW5kIGFueSBwYWNrYWdlc1xuIgorInRoYXQgZGVwZW5kIG9uIHRoZW0pIHRvIGZ1bmN0aW9uIHByb3Blcmx5OlxuIgorbXNnc3RyICIiCisi5LiL5YiX5aWX5Lu254++5Zyo5q2j6JmV5pa85qW15bqm57SK5LqC55qE54uA5oWL77yM5Zug54K65Zyo5a6J6KOd6YGO56iL5Lit55m855Sf5LqG5Zq06YeN55qE5ZWP6aGM44CCXG4iCisi6KaB6K6T5a6D5YCR6IO95q2j5bi46YGL5L2c77yM5oKo5b+F6aCI6YeN5paw5a6J6KOd5a6D5YCR77yI5Lul5Y+K5omA5pyJ55u45L6d5pa85a6D5YCR55qE5aWX5Lu277yJ77yaXG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6ODAKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBoYXZlIGJlZW4gdW5wYWNrZWQgYnV0IG5vdCB5ZXQgY29uZmlndXJlZC5cbiIKKyJUaGV5IG11c3QgYmUgY29uZmlndXJlZCB1c2luZyBkcGtnIC0tY29uZmlndXJlIG9yIHRoZSBjb25maWd1cmVcbiIKKyJtZW51IG9wdGlvbiBpbiBkc2VsZWN0IGZvciB0aGVtIHRvIHdvcms6XG4iCittc2dzdHIgIiIKKyLkuIvliJflpZfku7blt7LntpPooqvop6PplovvvIzkvYbmmK/lsJrmnKrpgLLooYzoqK3lrprjgILopoHorpPlroPlgJHog73mraPluLjpgYvkvZzvvIxcbiIKKyLmgqjlv4XpoIjkvb/nlKggZHBrZyAtLWNvbmZpZ3VyZSDmiJbogIUgZHNlbGVjdCDpgbjllq7kuK3nmoQgY29uZmlndXJlIOmgheebru+8mlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjg3Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgYXJlIG9ubHkgaGFsZiBjb25maWd1cmVkLCBwcm9iYWJseSBkdWUgdG8gcHJvYmxlbXNcbiIKKyJjb25maWd1cmluZyB0aGVtIHRoZSBmaXJzdCB0aW1lLiAgVGhlIGNvbmZpZ3VyYXRpb24gc2hvdWxkIGJlIHJldHJpZWQgdXNpbmdcbiIKKyJkcGtnIC0tY29uZmlndXJlIDxwYWNrYWdlPiBvciB0aGUgY29uZmlndXJlIG1lbnUgb3B0aW9uIGluIGRzZWxlY3Q6XG4iCittc2dzdHIgIiIKKyLkuIvliJflpZfku7blj6rlrozmiJDkuIDljYrnmoToqK3lrprvvIzpgJnkuZ/oqLHmmK/lm6DngrrlroPlgJHlnKjnrKzkuIDmrKHoqK3lrprmmYLlh7rkuobllY/poYzjgIJcbiIKKyLlj6/kvb/nlKggZHBrZyAtLWNvbmZpZ3VyZSA85aWX5Lu25ZCNPiDmiJbogIXnlKggZHNlbGVjdCDpgbjllq7kuK3nmoQgY29uZmlndXJlIOmgheebruS+hlxuIgorIuippuiRl+mHjeaWsOioreWumuWll+S7tu+8mlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjk0Cittc2dpZCAiIgorIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgYXJlIG9ubHkgaGFsZiBpbnN0YWxsZWQsIGR1ZSB0byBwcm9ibGVtcyBkdXJpbmdcbiIKKyJpbnN0YWxsYXRpb24uICBUaGUgaW5zdGFsbGF0aW9uIGNhbiBwcm9iYWJseSBiZSBjb21wbGV0ZWQgYnkgcmV0cnlpbmcgaXQ7XG4iCisidGhlIHBhY2thZ2VzIGNhbiBiZSByZW1vdmVkIHVzaW5nIGRzZWxlY3Qgb3IgZHBrZyAtLXJlbW92ZTpcbiIKK21zZ3N0ciAiIgorIuS4i+WIl+Wll+S7tuWPquWujOaIkOS4gOWNiuWuieijne+8jOWboOeCuuWuieijneaZguWHuuS6huWVj+mhjOOAguWGjeippuS4gOasoeaHieipsuWwseWPr+S7peWujOaIkOWuieijne+8m1xuIgorIuaIluS9v+eUqCBkc2VsZWN0IOaIliBkcGtnIC0tcmVtb3ZlIOWPr+S7peWwh+WFtuenu+mZpO+8mlxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjEwMQorbXNnaWQgIiIKKyJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGFyZSBhd2FpdGluZyBwcm9jZXNzaW5nIG9mIHRyaWdnZXJzIHRoYXQgdGhleVxuIgorImhhdmUgYWN0aXZhdGVkIGluIG90aGVyIHBhY2thZ2VzLiAgVGhpcyBwcm9jZXNzaW5nIGNhbiBiZSByZXF1ZXN0ZWQgdXNpbmdcbiIKKyJkc2VsZWN0IG9yIGRwa2cgLS1jb25maWd1cmUgLS1wZW5kaW5nIChvciBkcGtnIC0tdHJpZ2dlcnMtb25seSk6XG4iCittc2dzdHIgIiIKKyLku6XkuIvlpZfku7bmraPopoHln7fooYzooqvlhbblroPlpZfku7bmiYDllZ/li5XnmoTop7jnmbznqIvlvI/jgIJcbiIKKyLlj6/ku6XnlKggZHNlbGVjdCDmiJYgZHBrZyAtLWNvbmZpZ3VyZSAtLXBlbmRpbmfvvIjmiJYgZHBrZyAtLXRyaWdnZXJzLW9ubHnvvIlcbiIKKyLkvobopoHmsYLln7fooYzpgJnlgIvli5XkvZzjgIJcbiIKKworIzogc3JjL2VucXVpcnkuYzoxMDgKK21zZ2lkICIiCisiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBoYXZlIGJlZW4gdHJpZ2dlcmVkLCBidXQgdGhlIHRyaWdnZXIgcHJvY2Vzc2luZ1xuIgorImhhcyBub3QgeWV0IGJlZW4gZG9uZS4gIFRyaWdnZXIgcHJvY2Vzc2luZyBjYW4gYmUgcmVxdWVzdGVkIHVzaW5nXG4iCisiZHNlbGVjdCBvciBkcGtnIC0tY29uZmlndXJlIC0tcGVuZGluZyAob3IgZHBrZyAtLXRyaWdnZXJzLW9ubHkpOlxuIgorbXNnc3RyICIiCisi5Lul5LiL5aWX5Lu255qE6Ke455m856iL5byP5bey6KKr5ZG85Y+r77yM5L2G6Ke455m856iL5byP55qE6JmV55CG5L2c5qWt5bCa5pyq57WQ5p2f44CCXG4iCisi5Y+v5Lul55SoIGRzZWxlY3Qg5oiWIGRwa2cgLS1jb25maWd1cmUgLS1wZW5kaW5n77yI5oiWIGRwa2cgLS10cmlnZ2Vycy1vbmx577yJXG4iCisi5L6G6KaB5rGC5Z+36KGM6Ke455m856iL5byP44CCXG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTM3IHNyYy9lbnF1aXJ5LmM6MjExIHNyYy9lbnF1aXJ5LmM6MjkyIHNyYy9lbnF1aXJ5LmM6MzczCisjOiBzcmMvZW5xdWlyeS5jOjQ2MCBzcmMvc2VsZWN0LmM6OTggc3JjL3NlbGVjdC5jOjE2NCBzcmMvdHJpZ2NtZC5jOjE5OQorIzogc3JjL3VwZGF0ZS5jOjQ4IHNyYy91cGRhdGUuYzoxMTMgZHBrZy1zcGxpdC9xdWV1ZS5jOjIzMgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIHRha2VzIG5vIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS0lcyDkuI3pnIDku7vkvZXlj4PmlbgiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MTUyCittc2dpZCAiIgorIkFub3RoZXIgcHJvY2VzcyBoYXMgbG9ja2VkIHRoZSBkYXRhYmFzZSBmb3Igd3JpdGluZywgYW5kIG1pZ2h0IGN1cnJlbnRseSBiZVxuIgorIm1vZGlmeWluZyBpdCwgc29tZSBvZiB0aGUgZm9sbG93aW5nIHByb2JsZW1zIG1pZ2h0IGp1c3QgYmUgZHVlIHRvIHRoYXQuXG4iCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzoxOTEKKyMsIGZ1enp5CisjfCBtc2dpZCAiPHVua25vd24+IgorbXNnY3R4dCAic2VjdGlvbiIKK21zZ2lkICI8dW5rbm93bj4iCittc2dzdHIgIjzmnKrnn6U+IgorCisjOiBzcmMvZW5xdWlyeS5jOjI1MQorIywgYy1mb3JtYXQKK21zZ2lkICIgJWQgaW4gJXM6ICIKK21zZ3N0ciAiICVkIOWxrOaWvCAlc++8miIKKworIzogc3JjL2VucXVpcnkuYzoyNjYKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiAlZCBwYWNrYWdlcywgZnJvbSB0aGUgZm9sbG93aW5nIHNlY3Rpb25zOiIKK21zZ2lkICIgJWQgcGFja2FnZSwgZnJvbSB0aGUgZm9sbG93aW5nIHNlY3Rpb246IgorbXNnaWRfcGx1cmFsICIgJWQgcGFja2FnZXMsIGZyb20gdGhlIGZvbGxvd2luZyBzZWN0aW9uczoiCittc2dzdHJbMF0gIiAlZCDlgIvlpZfku7bvvIzlsazmlrzku6XkuIvpoZ7liKXvvJoiCittc2dzdHJbMV0gIiAlZCDlgIvlpZfku7bvvIzlsazmlrzku6XkuIvpoZ7liKXvvJoiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzA1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiVmVyc2lvbiBvZiBkcGtnIHdpdGggd29ya2luZyAlcyBzdXBwb3J0IG5vdCB5ZXQgY29uZmlndXJlZC5cbiIKKyIgUGxlYXNlIHVzZSAnZHBrZyAtLWNvbmZpZ3VyZSBkcGtnJywgYW5kIHRoZW4gdHJ5IGFnYWluLlxuIgorbXNnc3RyICIiCisi6Kmy54mI5pys55qEIGRwa2cg5Y+v5pSv5o+0IGVwb2No77yM5L2G5bCa5pyq6Kit5a6a44CCXG4iCisiIOiri+Wft+ihjCBgZHBrZyAtLWNvbmZpZ3VyZSBkcGtnJyDvvIznhLblvozlho3oqabkuIDmrKHjgIJcbiIKKworIzogc3JjL2VucXVpcnkuYzozMTAKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImRwa2cgbm90IHJlY29yZGVkIGFzIGluc3RhbGxlZCwgY2Fubm90IGNoZWNrIGZvciAlcyBzdXBwb3J0IVxuIgorbXNnc3RyICLoqJjpjITkuK3poa/npLrvvIxkcGtnIOS4puaykuacieiiq+Wuieijne+8jOWboOiAjOS4jeiDveaWt+WumuWug+aYr+WQpuaUr+aPtCBlcG9jaO+8gVxuIgorCisjOiBzcmMvZW5xdWlyeS5jOjMyMQorbXNnaWQgIlByZS1EZXBlbmRzIGZpZWxkIgorbXNnc3RyICIiCisKKyM6IHNyYy9lbnF1aXJ5LmM6MzI5Cittc2dpZCAiZXBvY2giCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzozMzcKK21zZ2lkICJsb25nIGZpbGVuYW1lcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvZW5xdWlyeS5jOjM0NgorbXNnaWQgIm11bHRpcGxlIENvbmZsaWN0cyBhbmQgUmVwbGFjZXMiCittc2dzdHIgIiIKKworIzogc3JjL2VucXVpcnkuYzo0MzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6IGNhbm5vdCBzZWUgaG93IHRvIHNhdGlzZnkgcHJlLWRlcGVuZGVuY3k6XG4iCisiICVzXG4iCittc2dzdHIgIiIKKyJkcGtn77ya54Sh5rOV5o6o5ris6Kmy5aaC5L2V5ru/6Laz6aCQ5YWI55u45L6d6Zec5L+C77yaXG4iCisiICVzXG4iCisKKyM6IHNyYy9lbnF1aXJ5LmM6NDM1CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzYXRpc2Z5IHByZS1kZXBlbmRlbmNpZXMgZm9yICUuMjUwcyAod2FudGVkIGR1ZSB0byAlLjI1MHMpIgorbXNnc3RyICLnhKHms5Xmu7/otrMgJS4yNTBzIOeahOmgkOWFiOebuOS+nemXnOS/gu+8iOaHiSAlLjI1MHMg5LmL6KaB5rGC77yJIgorCisjOiBzcmMvZW5xdWlyeS5jOjQ3MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAib2Jzb2xldGUgb3B0aW9uICctLSVzJywgcGxlYXNlIHVzZSAnLS0lcycgaW5zdGVhZC4iCittc2dzdHIgIuitpuWRiu+8muW3suW7ouajhOmBuOmghSBgLS0lcydcbiIKKworIzogc3JjL2VucXVpcnkuYzo1MTkKK21zZ2lkICIiCisiLS1jb21wYXJlLXZlcnNpb25zIHRha2VzIHRocmVlIGFyZ3VtZW50czogPHZlcnNpb24+IDxyZWxhdGlvbj4gPHZlcnNpb24+IgorbXNnc3RyICItLWNvbXBhcmUtdmVyc2lvbiDpnIDmnInkuInlgIvlj4PmlbjvvJo854mI5pys6JmfPiA85q+U6LyD6Zec5L+CPiA854mI5pys6JmfPiIKKworIzogc3JjL2VucXVpcnkuYzo1MjQKK21zZ2lkICItLWNvbXBhcmUtdmVyc2lvbnMgYmFkIHJlbGF0aW9uIgorbXNnc3RyICItLWNvbXBhcmUtdmVyc2lvbnMg5q+U6LyD6Zec5L+C5LiN6YGp5YiHIgorCisjOiBzcmMvZW5xdWlyeS5jOjUyOSBzcmMvZW5xdWlyeS5jOjUzMSBzcmMvZW5xdWlyeS5jOjU0MCBzcmMvZW5xdWlyeS5jOjU0MgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidmVyc2lvbiAnJXMnIGhhcyBiYWQgc3ludGF4OiAlcyIKK21zZ3N0ciAiZHBrZ++8mueJiOacrCAnJXMnIOeahOiqnuazleS4jeato+eiuu+8miVzXG4iCisKKyM6IHNyYy9lcnJvcnMuYzo2MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXM6IGVycm9yIHByb2Nlc3NpbmcgJXMgKC0tJXMpOlxuIgorIiAlc1xuIgorbXNnc3RyICIiCisiJXPvvJrlnKjomZXnkIYgJXMgKC0tJXMpIOaZgueZvOeUn+mMr+iqpO+8mlxuIgorIiAlc1xuIgorCisjOiBzcmMvZXJyb3JzLmM6NjgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJkcGtnOiBmYWlsZWQgdG8gYWxsb2NhdGUgbWVtb3J5IGZvciBuZXcgZW50cnkgaW4gbGlzdCBvZiBmYWlsZWQgcGFja2FnZXMuIgorbXNnaWQgIiIKKyIlczogZmFpbGVkIHRvIGFsbG9jYXRlIG1lbW9yeSBmb3IgbmV3IGVudHJ5IGluIGxpc3Qgb2YgZmFpbGVkIHBhY2thZ2VzOiAlcyIKK21zZ3N0ciAiZHBrZ++8muWcqOaWsOWinumgheebruiHs+WkseaVl+Wll+S7tuWIl+ihqOaZgu+8jOeEoeazlemFjee9ruiomOaGtumrlOOAgiIKKworIzogc3JjL2Vycm9ycy5jOjc5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJkcGtnOiB0b28gbWFueSBlcnJvcnMsIHN0b3BwaW5nXG4iCittc2dpZCAiJXM6IHRvbyBtYW55IGVycm9ycywgc3RvcHBpbmdcbiIKK21zZ3N0ciAiZHBrZ++8muWHuuePvumBjuWkmumMr+iqpO+8jOato+WcqOe1guatolxuIgorCisjOiBzcmMvZXJyb3JzLmM6ODcKK21zZ2lkICJFcnJvcnMgd2VyZSBlbmNvdW50ZXJlZCB3aGlsZSBwcm9jZXNzaW5nOlxuIgorbXNnc3RyICLlnKjomZXnkIbmmYLmnInpjK/oqqTnmbznlJ/vvJpcbiIKKworIzogc3JjL2Vycm9ycy5jOjk0Cittc2dpZCAiUHJvY2Vzc2luZyB3YXMgaGFsdGVkIGJlY2F1c2UgdGhlcmUgd2VyZSB0b28gbWFueSBlcnJvcnMuXG4iCittc2dzdHIgIueUseaWvOWHuuePvuS6huWkquWkmumMr+iqpO+8jOiZleeQhuS9nOalreiiq+S4reaWt+S6huOAglxuIgorCisjOiBzcmMvZXJyb3JzLmM6MTA1CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgJXMgd2FzIG9uIGhvbGQsIHByb2Nlc3NpbmcgaXQgYW55d2F5IGFzIHlvdSByZXF1ZXN0ZWRcbiIKK21zZ3N0ciAi5aWX5Lu2ICVzIOWOn+acrOioreWumueCuuS/neeVmSAoaG9sZCnvvIzmh4nmgqjnmoTopoHmsYLlvLfliLbnubznuozomZXnkIZcbiIKKworIzogc3JjL2Vycm9ycy5jOjEwOQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiUGFja2FnZSAlcyBpcyBvbiBob2xkLCBub3QgdG91Y2hpbmcgaXQuICBVc2UgLS1mb3JjZS1ob2xkIHRvIG92ZXJyaWRlLlxuIgorbXNnc3RyICIiCisi5aWX5Lu2ICVzIOiiq+ioreWumueCuuS/neeVmSAoaG9sZCnvvIzlm6DogIzkuI3mnIPljrvororli5XlroPjgILoq4vkvb/nlKggLS1mb3JjZS1ob2xkIOmBuOmgheS+huW/veeVpSIKKyLoqbLoqK3lrprjgIJcbiIKKworIzogc3JjL2Vycm9ycy5jOjExOQorIywgZnV6enkKK21zZ2lkICJvdmVycmlkaW5nIHByb2JsZW0gYmVjYXVzZSAtLWZvcmNlIGVuYWJsZWQ6IgorbXNnc3RyICIiCisiZHBrZyAtIOitpuWRiu+8jOeUseaWvOS9v+eUqOS6hiAtLWZvcmNlIOmBuOmghe+8jOW/veeVpeWVj+mhjOeahOWtmOWcqO+8mlxuIgorIiAiCisKKyM6IHNyYy9maWxlc2RiLmM6MzA3CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSBgJS4yNTBzJyIKK21zZ3N0ciAi54Sh5rOV6ZaL5ZWf5aWX5Lu2IGAlLjI1MHMnIOeahOaqlOahiOWIl+ihqOaqlCIKKworIzogc3JjL2ZpbGVzZGIuYzozMTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcycgbWlzc2luZywgYXNzdW1pbmcgcGFja2FnZSBoYXMgbm8gZmlsZXMgIgorImN1cnJlbnRseSBpbnN0YWxsZWQuIgorbXNnc3RyICIiCisiZHBrZ++8muWatOmHjeitpuWRiu+8mueEoeazleaJvuWIsOWll+S7tiBgJS4yNTBzJyDnmoTmqpTmoYjliJfooajmqpTvvIzlgYflrproqbLlpZfku7bnm67liY3mspLmnInku7vkvZXmqpQiCisi5qGI6KKr5a6J6KOd5Zyo57O757Wx6KOh44CCXG4iCisKKyM6IHNyYy9maWxlc2RiLmM6MzIyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJyUuMjUwcyciCittc2dzdHIgIueEoeazlemWi+WVn+Wll+S7tiBgJS4yNTBzJyDnmoTmqpTmoYjliJfooajmqpQiCisKKyM6IHNyYy9maWxlc2RiLmM6MzMwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlcyBsaXN0IGZvciBwYWNrYWdlIGAlLjI1MHMnIgorbXNnaWQgInJlYWRpbmcgZmlsZXMgbGlzdCBmb3IgcGFja2FnZSAnJS4yNTBzJyIKK21zZ3N0ciAi5aWX5Lu2IGAlLjI1MHMnIOeahOaqlOahiOWIl+ihqOaqlCIKKworIzogc3JjL2ZpbGVzZGIuYzozMzYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAnJS4yNTBzJyBpcyBtaXNzaW5nIGZpbmFsIG5ld2xpbmUiCittc2dzdHIgIuWll+S7tiBgJS4yNTBzJyDnmoTmqpTmoYjliJfooajmqpTlkKvmnInnqbrnmoTmqpTmoYjlkI3nqLEiCisKKyM6IHNyYy9maWxlc2RiLmM6MzQ0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSBgJS4yNTBzJyBjb250YWlucyBlbXB0eSBmaWxlbmFtZSIKK21zZ3N0ciAi5aWX5Lu2IGAlLjI1MHMnIOeahOaqlOahiOWIl+ihqOaqlOWQq+acieepuueahOaqlOahiOWQjeeosSIKKworIzogc3JjL2ZpbGVzZGIuYzozNTIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcyciCittc2dzdHIgIuWcqOmXnOmWieWll+S7tiBgJS4yNTBzJyDnmoTmqpTmoYjliJfooajmqpTmmYLnmbznlJ/pjK/oqqQiCisKKyM6IHNyYy9maWxlc2RiLmM6NDYyCittc2dpZCAiKFJlYWRpbmcgZGF0YWJhc2UgLi4uICIKK21zZ3N0ciAi77yI5q2j5Zyo6K6A5Y+W6LOH5paZ5bqrIC4uLiAiCisKKyM6IHNyYy9maWxlc2RiLmM6NDgzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIlZCBmaWxlcyBhbmQgZGlyZWN0b3JpZXMgY3VycmVudGx5IGluc3RhbGxlZC4pXG4iCittc2dpZCAiJWQgZmlsZSBvciBkaXJlY3RvcnkgY3VycmVudGx5IGluc3RhbGxlZC4pXG4iCittc2dpZF9wbHVyYWwgIiVkIGZpbGVzIGFuZCBkaXJlY3RvcmllcyBjdXJyZW50bHkgaW5zdGFsbGVkLilcbiIKK21zZ3N0clswXSAi57O757Wx55uu5YmN5YWx5a6J6KOd5LqGICVkIOWAi+aqlOahiOWSjOebrumMhOOAgu+8iVxuIgorbXNnc3RyWzFdICLns7vntbHnm67liY3lhbHlronoo53kuoYgJWQg5YCL5qqU5qGI5ZKM55uu6YyE44CC77yJXG4iCisKKyM6IHNyYy9maWxlc2RiLmM6NTE2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiCittc2dzdHIgIueEoeazleeCuuWll+S7tiAlcyDlu7rnq4vmm7TmlrDlvoznmoTmqpTmoYjliJfooajmqpQiCisKKyM6IHNyYy9maWxlc2RiLmM6NTI2CisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB3cml0ZSB0byB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAi54Sh5rOV5a+r5YWl5pu05paw5b6M55qE5aWX5Lu2ICVzIOeahOaqlOahiOWIl+ihqOaqlCIKKworIzogc3JjL2ZpbGVzZGIuYzo1MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGZsdXNoIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICLnhKHms5XliLfmlrDmm7TmlrDlvoznmoTlpZfku7YgJXMg55qE5qqU5qGI5YiX6KGo5qqUIgorCisjOiBzcmMvZmlsZXNkYi5jOjUzMAorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gc3luYyB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAi54Sh5rOV5ZCM5q2l5pu05paw5b6M55qE5aWX5Lu2ICVzIOeahOaqlOahiOWIl+ihqOaqlCIKKworIzogc3JjL2ZpbGVzZGIuYzo1MzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNsb3NlIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIgorbXNnc3RyICLnhKHms5Xpl5zplonmm7TmlrDlvoznmoTlpZfku7YgJXMg55qE5qqU5qGI5YiX6KGo5qqUIgorCisjOiBzcmMvZmlsZXNkYi5jOjUzNQorIywgYy1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gaW5zdGFsbCB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIKK21zZ3N0ciAi54Sh5rOV5a6J6KOd5pu05paw5b6M55qE5aWX5Lu2ICVzIOeahOaqlOahiOWIl+ihqOaqlCIKKworIzogc3JjL2hlbHAuYzo0OAorbXNnaWQgIm5vdCBpbnN0YWxsZWQiCittc2dzdHIgIuacquWuieijnSIKKworIzogc3JjL2hlbHAuYzo0OQorbXNnaWQgIm5vdCBpbnN0YWxsZWQgYnV0IGNvbmZpZ3MgcmVtYWluIgorbXNnc3RyICLmnKrooqvlronoo53vvIzkvYbljbvnlZnmnInoqK3lrprmqpQiCisKKyM6IHNyYy9oZWxwLmM6NTAKK21zZ2lkICJicm9rZW4gZHVlIHRvIGZhaWxlZCByZW1vdmFsIG9yIGluc3RhbGxhdGlvbiIKK21zZ3N0ciAi55Sx5pa856e76Zmk5oiW5a6J6KOd5aSx5pWX6ICM5q+A5pCN5LqGIgorCisjOiBzcmMvaGVscC5jOjUxCittc2dpZCAidW5wYWNrZWQgYnV0IG5vdCBjb25maWd1cmVkIgorbXNnc3RyICLlt7Looqvop6PplovvvIzkvYblsJrmnKroqK3lrpoiCisKKyM6IHNyYy9oZWxwLmM6NTIKK21zZ2lkICJicm9rZW4gZHVlIHRvIHBvc3RpbnN0IGZhaWx1cmUiCittc2dzdHIgIueUseaWvCBwb3N0aW5zdCDlh7rpjK/ogIzmr4DmkI3kuoYiCisKKyM6IHNyYy9oZWxwLmM6NTMKK21zZ2lkICJhd2FpdGluZyB0cmlnZ2VyIHByb2Nlc3NpbmcgYnkgYW5vdGhlciBwYWNrYWdlIgorbXNnc3RyICLmraPopoHln7fooYznlLHlj6bkuIDlgIvlpZfku7bmiYDpgLLooYznmoTop7jnmbznqIvlvI8iCisKKyM6IHNyYy9oZWxwLmM6NTQKK21zZ2lkICJ0cmlnZ2VyZWQiCittc2dzdHIgIuW3suinuOeZvCIKKworIzogc3JjL2hlbHAuYzo1NQorbXNnaWQgImluc3RhbGxlZCIKK21zZ3N0ciAi5bey5a6J6KOd5a6M55WiIgorCisjOiBzcmMvaGVscC5jOjEwNworIywgZnV6enkKK21zZ2lkICJQQVRIIGlzIG5vdCBzZXQuIgorbXNnc3RyICJkcGtnIC0g6Yyv6Kqk77ya5rKS5pyJ6Kit5a6aIFBBVEjjgIJcbiIKKworIzogc3JjL2hlbHAuYzoxMjkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiclcycgbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuIgorbXNnc3RyICJkcGtn77ya5ZyoIFBBVEgg5Lit5om+5LiN5YiwIGAlcyfjgIJcbiIKKworIzogc3JjL2hlbHAuYzoxMzgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlZCBleHBlY3RlZCBwcm9ncmFtIG5vdCBmb3VuZCBpbiBQQVRIIG9yIG5vdCBleGVjdXRhYmxlLlxuIgorIiVzIgorbXNnaWRfcGx1cmFsICIiCisiJWQgZXhwZWN0ZWQgcHJvZ3JhbXMgbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuXG4iCisiJXMiCittc2dzdHJbMF0gImRwa2fvvJrlnKggUEFUSCDkuK3mib7kuI3liLAgYCVzJ+OAglxuIgorbXNnc3RyWzFdICJkcGtn77ya5ZyoIFBBVEgg5Lit5om+5LiN5YiwIGAlcyfjgIJcbiIKKworIzogc3JjL2hlbHAuYzoxNDEKKyMsIGZ1enp5Cittc2dpZCAiIgorIk5vdGU6IHJvb3QncyBQQVRIIHNob3VsZCB1c3VhbGx5IGNvbnRhaW4gL3Vzci9sb2NhbC9zYmluLCAvdXNyL3NiaW4gYW5kIC8iCisic2Jpbi4iCittc2dzdHIgIiIKKyLlhbHmnIkgJWQg5YCL5pyD55So5Yiw55qE56iL5byP5pyq5ZyoIFBBVEgg5Lit5om+5Yiw44CCXG4iCisi5o+Q56S677yacm9vdCDnmoQgUEFUSCDpgJrluLjmnIPljIXlkKvkuoYgL3Vzci9sb2NhbC9zYmlu44CBL3Vzci9zYmluIOWSjCAvc2JpbuOAgiIKKworIzogc3JjL2hlbHAuYzoxODgKK21zZ2lkICJhZG1pbmRpciBtdXN0IGJlIGluc2lkZSBpbnN0ZGlyIGZvciBkcGtnIHRvIHdvcmsgcHJvcGVybHkiCittc2dzdHIgIiIKKworIzogc3JjL2hlbHAuYzoxOTAgc3JjL21haW4uYzo3NDcKKyMsIGZ1enp5Cittc2dpZCAidW5hYmxlIHRvIHNldGVudiBmb3Igc3VicHJvY2Vzc2VzIgorbXNnc3RyICLnhKHms5XlnKggbWFpbnQgc2NyaXB0IOS4iumAsuihjCBzZXRlbnYiCisKKyM6IHNyYy9oZWxwLmM6MTkyCisjLCBjLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjaHJvb3QgdG8gYCUuMjUwcyciCittc2dzdHIgIueEoeazlSBjaHJvb3Qg6IezIGAlLjI1MHMnIgorCisjOiBzcmMvaGVscC5jOjE5NCBkcGtnLWRlYi9idWlsZC5jOjQ1NSBkcGtnLWRlYi9idWlsZC5jOjQ1NworIzogZHBrZy1kZWIvYnVpbGQuYzo1MzYgZHBrZy1kZWIvYnVpbGQuYzo1NTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIGAlLjI1NXMnIgorbXNnc3RyICLnhKHms5UgY2hkaXIg5YiwIGAlLjI1NXMnIgorCisjOiBzcmMvaGVscC5jOjI1NgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2V0IGV4ZWN1dGUgcGVybWlzc2lvbnMgb24gYCUuMjUwcyciCittc2dzdHIgIueEoeazleioreWumiBgJS4yNTBzJyDnmoTln7fooYzmrIrpmZAiCisKKyM6IHNyYy9oZWxwLmM6Mjc2CisjLCBmdXp6eQorbXNnaWQgInVuYWJsZSB0byBzZXRlbnYgZm9yIG1haW50YWluZXIgc2NyaXB0IgorbXNnc3RyICLnhKHms5XlnKggbWFpbnQgc2NyaXB0IOS4iumAsuihjCBzZXRlbnYiCisKKyM6IHNyYy9oZWxwLmM6MzAwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJpbnN0YWxsZWQgJXMgc2NyaXB0IgorbXNnc3RyICLljp/lhYjnmoQgJXMgc2NyaXB0IgorCisjOiBzcmMvaGVscC5jOjMxMyBzcmMvaGVscC5jOjM4MiBzcmMvaGVscC5jOjQ0MQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCAlcyBgJS4yNTBzJyIKK21zZ3N0ciAi54Sh5rOV5Y+W5b6XICVzIGAlLjI1MHMnIOeahOeLgOaFiyIKKworIzogc3JjL2hlbHAuYzozNjggc3JjL2hlbHAuYzo0MjgKKyMsIGMtZm9ybWF0Cittc2dpZCAibmV3ICVzIHNjcmlwdCIKK21zZ3N0ciAi5paw55qEICVzIHNjcmlwdCIKKworIzogc3JjL2hlbHAuYzo0MDIKKyMsIGMtZm9ybWF0Cittc2dpZCAib2xkICVzIHNjcmlwdCIKK21zZ3N0ciAi5Y6f5YWI55qEICVzIHNjcmlwdCIKKworIzogc3JjL2hlbHAuYzo0MTYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0ICVzICclLjI1MHMnOiAlcyIKK21zZ3N0ciAi54Sh5rOV5Y+W5b6XICVzIGAlLjI1MHMnIOeahOeLgOaFiyIKKworIzogc3JjL2hlbHAuYzo0MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZyAtIHRyeWluZyBzY3JpcHQgZnJvbSB0aGUgbmV3IHBhY2thZ2UgaW5zdGVhZCAuLi5cbiIKK21zZ3N0ciAiZHBrZyAtIOippuiRl+abv+iAjOS9v+eUqOaWsOWll+S7tuaJgOmZhOW4tueahCBzY3JpcHQgLi4uXG4iCisKKyM6IHNyYy9oZWxwLmM6NDM5Cittc2dpZCAidGhlcmUgaXMgbm8gc2NyaXB0IGluIHRoZSBuZXcgdmVyc2lvbiBvZiB0aGUgcGFja2FnZSAtIGdpdmluZyB1cCIKK21zZ3N0ciAi5paw54mI5pys55qE5aWX5Lu26KOh5Lim5rKS5pyJIHNjcmlwdCAtIOWPlua2iOaTjeS9nCIKKworIzogc3JjL2hlbHAuYzo0NDUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZzogLi4uIGl0IGxvb2tzIGxpa2UgdGhhdCB3ZW50IE9LLlxuIgorbXNnc3RyICJkcGtn77yaLi4uIOeci+i1t+S+huWug+iDveato+eiuuWft+ihjOOAglxuIgorCisjOiBzcmMvaGVscC5jOjYxNgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNlY3VyZWx5IHJlbW92ZSAnJS4yNTVzJyIKK21zZ3N0ciAi54Sh5rOV5bu656uLIGAlLjI1NXMnIgorCisjOiBzcmMvaGVscC5jOjYyMSBkcGtnLWRlYi9pbmZvLmM6NjUgZHBrZy1kZWIvaW5mby5jOjY3Cittc2dpZCAicm0gY29tbWFuZCBmb3IgY2xlYW51cCIKK21zZ3N0ciAiIgorCisjOiBzcmMvaW5mb2RiLmM6NTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoZWNrIGV4aXN0ZW5jZSBvZiBgJS4yNTBzJyIKK21zZ3N0ciAi54Sh5rOV5Yik5pa3IGAlLjI1MHMnIOaYr+WQpuWtmOWcqCIKKworIzogc3JjL2luZm9kYi5jOjcwCittc2dpZCAiY2Fubm90IHJlYWQgaW5mbyBkaXJlY3RvcnkiCittc2dzdHIgIueEoeazleiugOWPliBpbmZvIOebrumMhCIKKworIzogc3JjL21haW4uYzo2MAorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIG1hbmFnZW1lbnQgcHJvZ3JhbSB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICJEZWJpYW4gYCVzJyDlpZfku7bnrqHnkIbnqIvlvI/niYjmnKwlc+OAglxuIgorCisjOiBzcmMvbWFpbi5jOjg1CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1pfC0taW5zdGFsbCAgICAgICA8LmRlYiBmaWxlIG5hbWU+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXJlY3Rvcnk+IC4uLlxuIgorIiAgLS11bnBhY2sgICAgICAgICAgIDwuZGViIGZpbGUgbmFtZT4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRpcmVjdG9yeT4gLi4uXG4iCisiICAtQXwtLXJlY29yZC1hdmFpbCAgPC5kZWIgZmlsZSBuYW1lPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyZWN0b3J5PiAuLi5cbiIKKyIgIC0tY29uZmlndXJlICAgICAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtLXRyaWdnZXJzLW9ubHkgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLXJ8LS1yZW1vdmUgICAgICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC1QfC0tcHVyZ2UgICAgICAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtLWdldC1zZWxlY3Rpb25zIFs8cGF0dGVybj4gLi4uXSBHZXQgbGlzdCBvZiBzZWxlY3Rpb25zIHRvIHN0ZG91dC5cbiIKKyIgIC0tc2V0LXNlbGVjdGlvbnMgICAgICAgICAgICAgICAgIFNldCBwYWNrYWdlIHNlbGVjdGlvbnMgZnJvbSBzdGRpbi5cbiIKKyIgIC0tY2xlYXItc2VsZWN0aW9ucyAgICAgICAgICAgICAgIERlc2VsZWN0IGV2ZXJ5IG5vbi1lc3NlbnRpYWwgcGFja2FnZS5cbiIKKyIgIC0tdXBkYXRlLWF2YWlsIDxQYWNrYWdlcy1maWxlPiAgIFJlcGxhY2UgYXZhaWxhYmxlIHBhY2thZ2VzIGluZm8uXG4iCisiICAtLW1lcmdlLWF2YWlsIDxQYWNrYWdlcy1maWxlPiAgICBNZXJnZSB3aXRoIGluZm8gZnJvbSBmaWxlLlxuIgorIiAgLS1jbGVhci1hdmFpbCAgICAgICAgICAgICAgICAgICAgRXJhc2UgZXhpc3RpbmcgYXZhaWxhYmxlIGluZm8uXG4iCisiICAtLWZvcmdldC1vbGQtdW5hdmFpbCAgICAgICAgICAgICBGb3JnZXQgdW5pbnN0YWxsZWQgdW5hdmFpbGFibGUgcGtncy5cbiIKKyIgIC1zfC0tc3RhdHVzIDxwYWNrYWdlPiAuLi4gICAgICAgIERpc3BsYXkgcGFja2FnZSBzdGF0dXMgZGV0YWlscy5cbiIKKyIgIC1wfC0tcHJpbnQtYXZhaWwgPHBhY2thZ2U+IC4uLiAgIERpc3BsYXkgYXZhaWxhYmxlIHZlcnNpb24gZGV0YWlscy5cbiIKKyIgIC1MfC0tbGlzdGZpbGVzIDxwYWNrYWdlPiAuLi4gICAgIExpc3QgZmlsZXMgYG93bmVkJyBieSBwYWNrYWdlKHMpLlxuIgorIiAgLWx8LS1saXN0IFs8cGF0dGVybj4gLi4uXSAgICAgICAgTGlzdCBwYWNrYWdlcyBjb25jaXNlbHkuXG4iCisiICAtU3wtLXNlYXJjaCA8cGF0dGVybj4gLi4uICAgICAgICBGaW5kIHBhY2thZ2Uocykgb3duaW5nIGZpbGUocykuXG4iCisiICAtQ3wtLWF1ZGl0ICAgICAgICAgICAgICAgICAgICAgICBDaGVjayBmb3IgYnJva2VuIHBhY2thZ2UocykuXG4iCisiICAtLXByaW50LWFyY2hpdGVjdHVyZSAgICAgICAgICAgICBQcmludCBkcGtnIGFyY2hpdGVjdHVyZS5cbiIKKyIgIC0tY29tcGFyZS12ZXJzaW9ucyA8YT4gPG9wPiA8Yj4gIENvbXBhcmUgdmVyc2lvbiBudW1iZXJzIC0gc2VlIGJlbG93LlxuIgorIiAgLS1mb3JjZS1oZWxwICAgICAgICAgICAgICAgICAgICAgU2hvdyBoZWxwIG9uIGZvcmNpbmcuXG4iCisiICAtRGh8LS1kZWJ1Zz1oZWxwICAgICAgICAgICAgICAgICBTaG93IGhlbHAgb24gZGVidWdnaW5nLlxuIgorIlxuIgorbXNnc3RyICIiCisi5oyH5Luk77yaXG4iCisiICAtaXwtLWluc3RhbGwgICAgICAgPC5kZWIg5qqUPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA855uu6YyEPiAuLi5cbiIKKyIgIC0tdW5wYWNrICAgICAgICAgICA8LmRlYiDmqpQ+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDznm67pjIQ+IC4uLlxuIgorIiAgLUF8LS1yZWNvcmQtYXZhaWwgIDwuZGViIOaqlD4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPOebrumMhD4gLi4uXG4iCisiICAtLWNvbmZpZ3VyZSAgICAgICAgPOWll+S7tj4gLi4uICAgIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtLXRyaWdnZXJzLW9ubHkgICAgPOWll+S7tj4gLi4uICAgIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtcnwtLXJlbW92ZSAgICAgICAgPOWll+S7tj4gLi4uICAgIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtUHwtLXB1cmdlICAgICAgICAgPOWll+S7tj4gLi4uICAgIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtLWdldC1zZWxlY3Rpb25zIFs86KGo6YGU5byPPiAuLi5dICDlj5blvpfpgbjmk4fliJfooajoh7Mgc3Rkb3V044CCXG4iCisiICAtLXNldC1zZWxlY3Rpb25zICAgICAgICAgICAgICAgICDlvp4gc3RkaW4g5Y+W5b6X5aWX5Lu26YG45pOH5YiX6KGo44CCXG4iCisiICAtLWNsZWFyLXNlbGVjdGlvbnMgICAgICAgICAgICAgICDlj5bmtojpgbjmk4fmiYDmnInnmoTpnZ7ln7rmnKzlpZfku7bjgIJcbiIKKyIgIC0tdXBkYXRlLWF2YWlsIDzlpZfku7bmqpQ+ICAgICAgICAgIOWPluS7o+ePvuacieWll+S7tueahOizh+ioiuOAglxuIgorIiAgLS1tZXJnZS1hdmFpbCA85aWX5Lu25qqUPiAgICAgICAgICAg5Lul5qqU5qGI5YWn55qEIGluZm8g6LOH6KiK6YCy6KGM5ZCI5L2144CCXG4iCisiICAtLWNsZWFyLWF2YWlsICAgICAgICAgICAgICAgICAgICDmuIXpmaTnj77mnInnmoTos4foqIrjgIJcbiIKKyIgIC0tZm9yZ2V0LW9sZC11bmF2YWlsICAgICAgICAgICAgIOa4hemZpOW3suenu+mZpOS4lOeEoeazleWGjeWuieijneeahOWll+S7tuOAglxuIgorIiAgLXN8LS1zdGF0dXMgPOWll+S7tj4gLi4uICAgICAgICAgICDpoa/npLrlpZfku7bnmoToqbPntLDni4DmhYvjgIJcbiIKKyIgIC1wfC0tcHJpbnQtYXZhaWwgPOWll+S7tj4gLi4uICAgICAg6aGv56S65Y+v55So54mI5pys55qE6Kmz57Sw6LOH6KiK44CCXG4iCisiICAtTHwtLWxpc3RmaWxlcyA85aWX5Lu2PiAuLi4gICAgICAgIOWIl+WHuiBg5bGs5pa8JyDoqbLlpZfku7bnmoTmiYDmnInmqpTmoYjjgIJcbiIKKyIgIC1sfC0tbGlzdCBbPOihqOmBlOW8jz4gLi4uXSAgICAgICAgIOewoei/sOWll+S7tueLgOaFi+OAglxuIgorIiAgLVN8LS1zZWFyY2ggPOihqOmBlOW8jz4gLi4uICAgICAgICAg5p+l6Kmi5p+Q5Lqb5qqU5qGI5piv5bGs5pa85ZOq5Lqb5aWX5Lu244CCXG4iCisiICAtQ3wtLWF1ZGl0ICAgICAgICAgICAgICAgICAgICAgICDmqqLmn6Xlt7LmkI3mr4DnmoTlpZfku7bjgIJcbiIKKyIgIC0tcHJpbnQtYXJjaGl0ZWN0dXJlICAgICAgICAgICAgIOmhr+ekuiBkcGtnIOehrOmrlOW5s+WPsOOAglxuIgorIiAgLS1jb21wYXJlLXZlcnNpb25zIDxhPiA8b3A+IDxiPiAg5q+U6LyD54mI5pysIC0g6KuL5Y+D6Zax5LiL5paH44CCXG4iCisiICAtLWZvcmNlLWhlbHAgICAgICAgICAgICAgICAgICAgICDpoa/npLrlvLfliLbpgbjpoIXnmoToqqrmmI7jgIJcbiIKKyIgIC1EaHwtLWRlYnVnPWhlbHAgICAgICAgICAgICAgICAgIOmhr+ekuuWBtemMr+aooeW8j+eahOiqquaYjuOAglxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjExMyBzcmMvcXVlcnljbWQuYzo2MzEgc3JjL3RyaWdjbWQuYzo3NyBkcGtnLWRlYi9tYWluLmM6ODgKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjc3CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiICAtaHwtLWhlbHAgICAgICAgICAgICAgICAgICAgICAgICBTaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICAgICAgICAgU2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIiAgLWh8LS1oZWxwICAgICAgICAgICAgICAgICAgICAgICAg6aGv56S66YCZ5YCL6Kqq5piO6KiK5oGv44CCXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgICAgICAgICDpoa/npLrniYjmnKzos4foqIrjgIJcbiIKKyIgIC0tbGljZW5zZXwtLWxpY2VuY2UgICAgICAgICAgICAgIOmhr+ekuuiRl+S9nOeJiOasiuaineaWh+OAglxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjExOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVXNlIGRwa2cgLWJ8LS1idWlsZHwtY3wtLWNvbnRlbnRzfC1lfC0tY29udHJvbHwtSXwtLWluZm98LWZ8LS1maWVsZHxcbiIKKyIgLXh8LS1leHRyYWN0fC1YfC0tdmV4dHJhY3R8LS1mc3lzLXRhcmZpbGUgIG9uIGFyY2hpdmVzICh0eXBlICVzIC0taGVscCkuXG4iCisiXG4iCittc2dzdHIgIiIKKyLkvb/nlKggZHBrZyAtYnwtLWJ1aWxkfC1jfC0tY29udGVudHN8LWV8LS1jb250cm9sfC1JfC0taW5mb3wtZnwtLWZpZWxkfFxuIgorIiAteHwtLWV4dHJhY3R8LVh8LS12ZXh0cmFjdHwtLWZzeXMtdGFyZmlsZSDmlrzlpZfku7bmqpTkuIrvvIjpjbXlhaUgJXMgLS1oZWxw77yJ44CCXG4iCisiXG4iCisKKyM6IHNyYy9tYWluLmM6MTIzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJGb3IgaW50ZXJuYWwgdXNlOiBkcGtnIC0tYXNzZXJ0LXN1cHBvcnQtcHJlZGVwZW5kcyB8IC0tcHJlZGVwLXBhY2thZ2UgfFxuIgorIiAgLS1hc3NlcnQtd29ya2luZy1lcG9jaCB8IC0tYXNzZXJ0LWxvbmctZmlsZW5hbWVzIHwgLS1hc3NlcnQtbXVsdGktY29ucmVwLlxuIgorIlxuIgorbXNnc3RyICIiCisi5YWn6YOo5L2/55So77yaZHBrZyAtLWFzc2VydC1zdXBwb3J0LXByZWRlcGVuZHMgfCAtLXByZWRlcC1wYWNrYWdlIHxcbiIKKyIgIC0tYXNzZXJ0LXdvcmtpbmctZXBvY2ggfCAtLWFzc2VydC1sb25nLWZpbGVuYW1lcyB8IC0tYXNzZXJ0LW11bHRpLSIKKyJjb25yZXDjgIJcbiIKKyJcbiIKKworIzogc3JjL21haW4uYzoxMjgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJPcHRpb25zOlxuIgorI3wgIiAgLS1hZG1pbmRpcj08ZGlyZWN0b3J5PiAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMuXG4iCisjfCAiICAtLXJvb3Q9PGRpcmVjdG9yeT4gICAgICAgICBJbnN0YWxsIG9uIGEgZGlmZmVyZW50IHJvb3QgZGlyZWN0b3J5LlxuIgorI3wgIiAgLS1pbnN0ZGlyPTxkaXJlY3Rvcnk+ICAgICAgQ2hhbmdlIGluc3RhbGxhdGlvbiBkaXIgd2l0aG91dCBjaGFuZ2luZyAiCisjfCAiYWRtaW4gZGlyLlxuIgorI3wgIiAgLU98LS1zZWxlY3RlZC1vbmx5ICAgICAgICAgU2tpcCBwYWNrYWdlcyBub3Qgc2VsZWN0ZWQgZm9yIGluc3RhbGwvIgorI3wgInVwZ3JhZGUuXG4iCisjfCAiICAtRXwtLXNraXAtc2FtZS12ZXJzaW9uICAgICBTa2lwIHBhY2thZ2VzIHdob3NlIHNhbWUgdmVyc2lvbiBpcyAiCisjfCAiaW5zdGFsbGVkLlxuIgorI3wgIiAgLUd8LS1yZWZ1c2UtZG93bmdyYWRlICAgICAgU2tpcCBwYWNrYWdlcyB3aXRoIGVhcmxpZXIgdmVyc2lvbiB0aGFuICIKKyN8ICJpbnN0YWxsZWQuXG4iCisjfCAiICAtQnwtLWF1dG8tZGVjb25maWd1cmUgICAgICBJbnN0YWxsIGV2ZW4gaWYgaXQgd291bGQgYnJlYWsgc29tZSBvdGhlciAiCisjfCAicGFja2FnZS5cbiIKKyN8ICIgIC0tW25vLV10cmlnZ2VycyAgICAgICAgICAgIFNraXAgb3IgZm9yY2UgY29uc2VxdWVudGlhbCB0cmlnZ2VyICIKKyN8ICJwcm9jZXNzaW5nLlxuIgorI3wgIiAgLS1uby1kZWJzaWcgICAgICAgICAgICAgICAgRG8gbm90IHRyeSB0byB2ZXJpZnkgcGFja2FnZSBzaWduYXR1cmVzLlxuIgorI3wgIiAgLS1uby1hY3R8LS1kcnktcnVufC0tc2ltdWxhdGVcbiIKKyN8ICIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEp1c3Qgc2F5IHdoYXQgd2Ugd291bGQgZG8gLSBkb24ndCBkbyBpdC5cbiIKKyN8ICIgIC1EfC0tZGVidWc9PG9jdGFsPiAgICAgICAgIEVuYWJsZSBkZWJ1Z2dpbmcgKHNlZSAtRGhlbHAgb3IgLS0iCisjfCAiZGVidWc9aGVscCkuXG4iCisjfCAiICAtLXN0YXR1cy1mZCA8bj4gICAgICAgICAgICBTZW5kIHN0YXR1cyBjaGFuZ2UgdXBkYXRlcyB0byBmaWxlICIKKyN8ICJkZXNjcmlwdG9yIDxuPi5cbiIKKyN8ICIgIC0tbG9nPTxmaWxlbmFtZT4gICAgICAgICAgIExvZyBzdGF0dXMgY2hhbmdlcyBhbmQgYWN0aW9ucyB0byAiCisjfCAiPGZpbGVuYW1lPi5cbiIKKyN8ICIgIC0taWdub3JlLWRlcGVuZHM9PHBhY2thZ2U+LC4uLlxuIgorI3wgIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSWdub3JlIGRlcGVuZGVuY2llcyBpbnZvbHZpbmcgPHBhY2thZ2U+LlxuIgorI3wgIiAgLS1mb3JjZS0uLi4gICAgICAgICAgICAgICAgT3ZlcnJpZGUgcHJvYmxlbXMgKHNlZSAtLWZvcmNlLWhlbHApLlxuIgorI3wgIiAgLS1uby1mb3JjZS0uLi58LS1yZWZ1c2UtLi4uXG4iCisjfCAiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9wIHdoZW4gcHJvYmxlbXMgZW5jb3VudGVyZWQuXG4iCisjfCAiICAtLWFib3J0LWFmdGVyIDxuPiAgICAgICAgICBBYm9ydCBhZnRlciBlbmNvdW50ZXJpbmcgPG4+IGVycm9ycy5cbiIKKyN8ICJcbiIKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT4gICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLlxuIgorIiAgLS1yb290PTxkaXJlY3Rvcnk+ICAgICAgICAgSW5zdGFsbCBvbiBhIGRpZmZlcmVudCByb290IGRpcmVjdG9yeS5cbiIKKyIgIC0taW5zdGRpcj08ZGlyZWN0b3J5PiAgICAgIENoYW5nZSBpbnN0YWxsYXRpb24gZGlyIHdpdGhvdXQgY2hhbmdpbmcgYWRtaW4gIgorImRpci5cbiIKKyIgIC0tcGF0aC1leGNsdWRlPTxwYXR0ZXJuPiAgIERvIG5vdCBpbnN0YWxsIHBhdGhzIHdoaWNoIG1hdGNoIGEgc2hlbGwgIgorInBhdHRlcm4uXG4iCisiICAtLXBhdGgtaW5jbHVkZT08cGF0dGVybj4gICBSZS1pbmNsdWRlIGEgcGF0dGVybiBhZnRlciBhIHByZXZpb3VzICIKKyJleGNsdXNpb24uXG4iCisiICAtT3wtLXNlbGVjdGVkLW9ubHkgICAgICAgICBTa2lwIHBhY2thZ2VzIG5vdCBzZWxlY3RlZCBmb3IgaW5zdGFsbC8iCisidXBncmFkZS5cbiIKKyIgIC1FfC0tc2tpcC1zYW1lLXZlcnNpb24gICAgIFNraXAgcGFja2FnZXMgd2hvc2Ugc2FtZSB2ZXJzaW9uIGlzIGluc3RhbGxlZC5cbiIKKyIgIC1HfC0tcmVmdXNlLWRvd25ncmFkZSAgICAgIFNraXAgcGFja2FnZXMgd2l0aCBlYXJsaWVyIHZlcnNpb24gdGhhbiAiCisiaW5zdGFsbGVkLlxuIgorIiAgLUJ8LS1hdXRvLWRlY29uZmlndXJlICAgICAgSW5zdGFsbCBldmVuIGlmIGl0IHdvdWxkIGJyZWFrIHNvbWUgb3RoZXIgIgorInBhY2thZ2UuXG4iCisiICAtLVtuby1ddHJpZ2dlcnMgICAgICAgICAgICBTa2lwIG9yIGZvcmNlIGNvbnNlcXVlbnRpYWwgdHJpZ2dlciAiCisicHJvY2Vzc2luZy5cbiIKKyIgIC0tbm8tZGVic2lnICAgICAgICAgICAgICAgIERvIG5vdCB0cnkgdG8gdmVyaWZ5IHBhY2thZ2Ugc2lnbmF0dXJlcy5cbiIKKyIgIC0tbm8tYWN0fC0tZHJ5LXJ1bnwtLXNpbXVsYXRlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBKdXN0IHNheSB3aGF0IHdlIHdvdWxkIGRvIC0gZG9uJ3QgZG8gaXQuXG4iCisiICAtRHwtLWRlYnVnPTxvY3RhbD4gICAgICAgICBFbmFibGUgZGVidWdnaW5nIChzZWUgLURoZWxwIG9yIC0tZGVidWc9aGVscCkuXG4iCisiICAtLXN0YXR1cy1mZCA8bj4gICAgICAgICAgICBTZW5kIHN0YXR1cyBjaGFuZ2UgdXBkYXRlcyB0byBmaWxlIGRlc2NyaXB0b3IgIgorIjxuPi5cbiIKKyIgIC0tbG9nPTxmaWxlbmFtZT4gICAgICAgICAgIExvZyBzdGF0dXMgY2hhbmdlcyBhbmQgYWN0aW9ucyB0byA8ZmlsZW5hbWU+LlxuIgorIiAgLS1pZ25vcmUtZGVwZW5kcz08cGFja2FnZT4sLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZ25vcmUgZGVwZW5kZW5jaWVzIGludm9sdmluZyA8cGFja2FnZT4uXG4iCisiICAtLWZvcmNlLS4uLiAgICAgICAgICAgICAgICBPdmVycmlkZSBwcm9ibGVtcyAoc2VlIC0tZm9yY2UtaGVscCkuXG4iCisiICAtLW5vLWZvcmNlLS4uLnwtLXJlZnVzZS0uLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3Agd2hlbiBwcm9ibGVtcyBlbmNvdW50ZXJlZC5cbiIKKyIgIC0tYWJvcnQtYWZ0ZXIgPG4+ICAgICAgICAgIEFib3J0IGFmdGVyIGVuY291bnRlcmluZyA8bj4gZXJyb3JzLlxuIgorIlxuIgorbXNnc3RyICIiCisi6YG46aCF77yaXG4iCisiICAtLWFkbWluZGlyPTznm67pjIQ+ICAgICAgICAgIOS9v+eUqCA855uu6YyEPiDlj5bku6MgJXPjgIJcbiIKKyIgIC0tcm9vdD0855uu6YyEPiAgICAgICAgICAgICAg5a6J6KOd5Zyo5Y+m5LiA5YCL5LiN5ZCM55qEIHJvb3Qg55uu6YyE44CCXG4iCisiICAtLWluc3RkaXI9POebrumMhD4gICAgICAgICAgIOWcqOS4jeiuiuabtCBhZG1pbiBkaXIg55qE5oOF5rOB5LiK6K6K5pu05a6J6KOd6Lev5b6R44CCXG4iCisiICAtT3wtLXNlbGVjdGVkLW9ubHkgICAgICAgICDnlaXpgY7mnKrooqvpgbjmk4fngrropoHpgLLooYzlronoo50v5Y2H57Sa55qE5aWX5Lu244CCXG4iCisiICAtRXwtLXNraXAtc2FtZS12ZXJzaW9uICAgICDnlaXpgY7lkozlt7Llronoo53lpZfku7bnm7jlkIznmoTniYjmnKzjgIJcbiIKKyIgIC1HfC0tcmVmdXNlLWRvd25ncmFkZSAgICAgIOeVpemBjuavlOW3suWuieijneWll+S7tuabtOiIiueahOeJiOacrOOAglxuIgorIiAgLUJ8LS1hdXRvLWRlY29uZmlndXJlICAgICAg5Y2z5L2/5pyD5pCN5q+A5YW25a6D5aWX5Lu25Lmf6KaB6YCy6KGM5a6J6KOd44CCXG4iCisiICAtLVtuby1ddHJpZ2dlcnMgICAgICAgICAgICDnlaXpgY7miJblvLfliLbpgLLooYzkvLTpmqjogIzkvobnmoTop7jnmbznqIvlvI/jgIJcbiIKKyIgIC0tbm8tZGVic2lnICAgICAgICAgICAgICAgIOS4jeippuiRl+WOu+mpl+iovOWll+S7tuewveeroOOAglxuIgorIiAgLS1uby1hY3R8LS1kcnktcnVufC0tc2ltdWxhdGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIOWPqumhr+ekuuWwh+imgemAsuihjOeahOWLleS9nCAtIOS4jeWvpumam+mAsuihjOOAglxuIgorIiAgLUR8LS1kZWJ1Zz085YWr6YCy5Yi25pW45a2XPiAgICDllZ/nlKjpmaTpjK/mqZ/mqZ/vvIjoq4vlj4PplrEgRGhlbHAg5oiWIC0tZGVidWc9aGVscO+8ieOAglxuIgorIiAgLS1zdGF0dXMtZmQgPG4+ICAgICAgICAgICAg5YKz6YCB54uA5oWL55qE6K6K5pu05oOF5rOB6Iez5qqU5qGI6YeN5bCOIDxuPuOAglxuIgorIiAgLS1sb2c9POaqlOWQjT4gICAgICAgICAgICAgICDoqJjpjITni4DmhYvnmoTorormm7Tlj4rli5XkvZzoh7MgPOaqlOWQjT7jgIJcbiIKKyIgIC0taWdub3JlLWRlcGVuZHM9POWll+S7tj4sLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICDlv73nlaUgPOWll+S7tj4g55qE55u45L6d6Zec5L+C44CCXG4iCisiICAtLWZvcmNlLS4uLiAgICAgICAgICAgICAgICDnhKHoppbllY/poYznmoTnmbznlJ/vvIjoq4vlj4PplrEgLS1mb3JjZS1oZWxw77yJ44CCXG4iCisiICAtLW5vLWZvcmNlLS4uLnwtLXJlZnVzZS0uLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIOeVtueZvOeUn+WVj+mhjOaZguS4reatouOAglxuIgorIiAgLS1hYm9ydC1hZnRlciA8bj4gICAgICAgICAg5Zyo55m855SfIDxuPiDlgIvpjK/oqqTlvozkuK3mraLjgIJcbiIKKyJcbiIKKworIzogc3JjL21haW4uYzoxNTQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbXBhcmlzb24gb3BlcmF0b3JzIGZvciAtLWNvbXBhcmUtdmVyc2lvbnMgYXJlOlxuIgorIiAgbHQgbGUgZXEgbmUgZ2UgZ3QgICAgICAgKHRyZWF0IGVtcHR5IHZlcnNpb24gYXMgZWFybGllciB0aGFuIGFueSAiCisidmVyc2lvbik7XG4iCisiICBsdC1ubCBsZS1ubCBnZS1ubCBndC1ubCAodHJlYXQgZW1wdHkgdmVyc2lvbiBhcyBsYXRlciB0aGFuIGFueSB2ZXJzaW9uKTtcbiIKKyIgIDwgPDwgPD0gPSA+PSA+PiA+ICAgICAgIChvbmx5IGZvciBjb21wYXRpYmlsaXR5IHdpdGggY29udHJvbCBmaWxlICIKKyJzeW50YXgpLlxuIgorIlxuIgorbXNnc3RyICIiCisiLS1jb21wYXJlLXZlcnNpb25zIOeahOavlOi8g+mBi+eul+WtkO+8mlxuIgorIiAgbHQgbGUgZXEgbmUgZ2UgZ3QgICAgICAg77yI5bCH54Sh54mI5pys6KaW54K65q+U5Lu75L2V54mI5pys6YO96IiK77yJ77ybXG4iCisiICBsdC1ubCBsZS1ubCBnZS1ubCBndC1ubCDvvIjlsIfnhKHniYjmnKzoppbngrrmr5Tku7vkvZXniYjmnKzpg73mlrDvvInvvJtcbiIKKyIgIDwgPDwgPD0gPSA+PSA+PiA+ICAgICAgIO+8iOWDheeCuuS6huiDveebuOWuueaWvCBjb250cm9sIOaqlOeahOiqnuazle+8iVxuIgorIlxuIgorCisjOiBzcmMvbWFpbi5jOjE2MQorIywgYy1mb3JtYXQKK21zZ2lkICJVc2UgYGRzZWxlY3QnIG9yIGBhcHRpdHVkZScgZm9yIHVzZXItZnJpZW5kbHkgcGFja2FnZSBtYW5hZ2VtZW50LlxuIgorbXNnc3RyICLkvb/nlKggYGRzZWxlY3QnIOaIliBgYXB0aXR1ZGUnIOetieS7i+mdouimquWSjOeahOWll+S7tueuoeeQhueoi+W8j+OAglxuIgorCisjOiBzcmMvbWFpbi5jOjE3MAorIywgZnV6enkKK21zZ2lkICIiCisiVHlwZSBkcGtnIC0taGVscCBmb3IgaGVscCBhYm91dCBpbnN0YWxsaW5nIGFuZCBkZWluc3RhbGxpbmcgcGFja2FnZXMgWypdO1xuIgorIlVzZSBgZHNlbGVjdCcgb3IgYGFwdGl0dWRlJyBmb3IgdXNlci1mcmllbmRseSBwYWNrYWdlIG1hbmFnZW1lbnQ7XG4iCisiVHlwZSBkcGtnIC1EaGVscCBmb3IgYSBsaXN0IG9mIGRwa2cgZGVidWcgZmxhZyB2YWx1ZXM7XG4iCisiVHlwZSBkcGtnIC0tZm9yY2UtaGVscCBmb3IgYSBsaXN0IG9mIGZvcmNpbmcgb3B0aW9ucztcbiIKKyJUeXBlIGRwa2ctZGViIC0taGVscCBmb3IgaGVscCBhYm91dCBtYW5pcHVsYXRpbmcgKi5kZWIgZmlsZXM7XG4iCisiXG4iCisiT3B0aW9ucyBtYXJrZWQgWypdIHByb2R1Y2UgYSBsb3Qgb2Ygb3V0cHV0IC0gcGlwZSBpdCB0aHJvdWdoIGBsZXNzJyBvciAiCisiYG1vcmUnICEiCittc2dzdHIgIiIKKyLovLjlhaUgZHBrZyAtLWhlbHAg5Lul5Y+W5b6X5a6J6KOd5ZKM56e76Zmk5aWX5Lu255qE6Kqq5piOIFsqXe+5lFxuIgorIuS9v+eUqCBgZHNlbGVjdCcg5oiWIGBhcHRpdHVkZScg5Lul5L2/55So5LuL6Z2i6Kaq5ZKM55qE5aWX5Lu2566h55CG56iL5byP77mUXG4iCisi6Ly45YWlIGRwa2cgLURoZWxwIOS7peWPluW+lyBkcGtnIOmZpOmMr+ioreWumuWAvOeahOWIl+ihqO+5lFxuIgorIui8uOWFpSBkcGtnIC0tZm9yY2UtaGVscCDku6Xlj5blvpflvLfliLbpgbjpoIXnmoTliJfooajvuZRcbiIKKyLovLjlhaUgZHBrZy1kZWIgLS1oZWxwIOS7peWPluW+l+WmguS9leaTjeS9nCAqLmRlYiDmqpTnmoToqqrmmI7vuZRcbiIKKyLovLjlhaUgZHBrZyAtLWxpY2VuY2Ug5Lul5Y+W5b6X5pyJ54mI5qyK5o6I5qyK5ZKM54Sh5pOU5L+d55qE6Kqq5piOIChHTlUgR1BMKSBbKl3jgIJcbiIKKyJcbiIKKyLmqJnnpLrmnIkgWypdIOeahOmBuOmgheWwh+acg+i8uOWHuuWkp+mHj+aWh+WtlyAtIOeUqOeuoee3mui8uOWHuuiHsyBgbGVzcycg5oiWIGBtb3JlJ++8gSIKKworIzogc3JjL21haW4uYzoyMTkKK21zZ2lkICJTZXQgYWxsIGZvcmNlIG9wdGlvbnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMjEKK21zZ2lkICJSZXBsYWNlIGEgcGFja2FnZSB3aXRoIGEgbG93ZXIgdmVyc2lvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIyMworbXNnaWQgIkNvbmZpZ3VyZSBhbnkgcGFja2FnZSB3aGljaCBtYXkgaGVscCB0aGlzIG9uZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIyNQorbXNnaWQgIlByb2Nlc3MgaW5jaWRlbnRhbCBwYWNrYWdlcyBldmVuIHdoZW4gb24gaG9sZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIyNworbXNnaWQgIlRyeSB0byAoZGUpaW5zdGFsbCB0aGluZ3MgZXZlbiB3aGVuIG5vdCByb290IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjI5Cittc2dpZCAiUEFUSCBpcyBtaXNzaW5nIGltcG9ydGFudCBwcm9ncmFtcywgcHJvYmxlbXMgbGlrZWx5IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjMxCittc2dpZCAiSW5zdGFsbCBhIHBhY2thZ2UgZXZlbiBpZiBpdCBmYWlscyBhdXRoZW50aWNpdHkgY2hlY2siCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzMKK21zZ2lkICJQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyB2ZXJzaW9ucyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjIzNQorbXNnaWQgIk92ZXJ3cml0ZSBhIGZpbGUgZnJvbSBvbmUgcGFja2FnZSB3aXRoIGFub3RoZXIiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyMzcKK21zZ2lkICJPdmVyd3JpdGUgYSBkaXZlcnRlZCBmaWxlIHdpdGggYW4gdW5kaXZlcnRlZCB2ZXJzaW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjM5Cittc2dpZCAiT3ZlcndyaXRlIG9uZSBwYWNrYWdlJ3MgZGlyZWN0b3J5IHdpdGggYW5vdGhlcidzIGZpbGUiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNDEKK21zZ2lkICJEbyBub3QgcGVyZm9ybSBzYWZlIEkvTyBvcGVyYXRpb25zIHdoZW4gdW5wYWNraW5nIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjQzCittc2dpZCAiQWx3YXlzIHVzZSB0aGUgbmV3IGNvbmZpZyBmaWxlcywgZG9uJ3QgcHJvbXB0IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjQ1Cittc2dpZCAiQWx3YXlzIHVzZSB0aGUgb2xkIGNvbmZpZyBmaWxlcywgZG9uJ3QgcHJvbXB0IgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjQ4Cittc2dpZCAiIgorIlVzZSB0aGUgZGVmYXVsdCBvcHRpb24gZm9yIG5ldyBjb25maWcgZmlsZXMgaWYgb25lXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgIGlzIGF2YWlsYWJsZSwgZG9uJ3QgcHJvbXB0LiBJZiBubyBkZWZhdWx0IGNhbiBiZSAiCisiZm91bmQsXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgIHlvdSB3aWxsIGJlIHByb21wdGVkIHVubGVzcyBvbmUgb2YgdGhlIGNvbmZvbGQgb3JcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgY29uZm5ldyBvcHRpb25zIGlzIGFsc28gZ2l2ZW4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNTMKK21zZ2lkICJBbHdheXMgaW5zdGFsbCBtaXNzaW5nIGNvbmZpZyBmaWxlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI1NQorbXNnaWQgIk9mZmVyIHRvIHJlcGxhY2UgY29uZmlnIGZpbGVzIHdpdGggbm8gbmV3IHZlcnNpb25zIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjU3Cittc2dpZCAiUHJvY2VzcyBldmVuIHBhY2thZ2VzIHdpdGggd3Jvbmcgb3Igbm8gYXJjaGl0ZWN0dXJlIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6MjU5Cittc2dpZCAiSW5zdGFsbCBldmVuIGlmIGl0IHdvdWxkIGJyZWFrIGFub3RoZXIgcGFja2FnZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI2MQorbXNnaWQgIkFsbG93IGluc3RhbGxhdGlvbiBvZiBjb25mbGljdGluZyBwYWNrYWdlcyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI2MworIywgZnV6enkKKyN8IG1zZ2lkICJkZXBlbmRlbmN5IHByb2JsZW1zIC0gbm90IHJlbW92aW5nIgorbXNnaWQgIlR1cm4gYWxsIGRlcGVuZGVuY3kgcHJvYmxlbXMgaW50byB3YXJuaW5ncyIKK21zZ3N0ciAi55u45L6d5ZWP6aGMIC0g5LiN6YCy6KGM56e76ZmkIgorCisjOiBzcmMvbWFpbi5jOjI2NQorIywgZnV6enkKKyN8IG1zZ2lkICJkZXBlbmRlbmN5IHByb2JsZW1zIC0gbm90IHJlbW92aW5nIgorbXNnaWQgIlR1cm4gZGVwZW5kZW5jeSB2ZXJzaW9uIHByb2JsZW1zIGludG8gd2FybmluZ3MiCittc2dzdHIgIuebuOS+neWVj+mhjCAtIOS4jemAsuihjOenu+mZpCIKKworIzogc3JjL21haW4uYzoyNjcKK21zZ2lkICJSZW1vdmUgcGFja2FnZXMgd2hpY2ggcmVxdWlyZSBpbnN0YWxsYXRpb24iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyNjkKK21zZ2lkICJSZW1vdmUgYW4gZXNzZW50aWFsIHBhY2thZ2UiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODEKK21zZ2lkICJHZW5lcmFsbHkgaGVscGZ1bCBwcm9ncmVzcyBpbmZvcm1hdGlvbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4MgorIywgZnV6enkKK21zZ2lkICJJbnZvY2F0aW9uIGFuZCBzdGF0dXMgb2YgbWFpbnRhaW5lciBzY3JpcHRzIgorbXNnc3RyICLnhKHms5XlnKggbWFpbnQgc2NyaXB0IOS4iumAsuihjCBzZXRlbnYiCisKKyM6IHNyYy9tYWluLmM6MjgzCittc2dpZCAiT3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkIgorbXNnc3RyICIiCisKKyM6IHNyYy9tYWluLmM6Mjg0Cittc2dpZCAiTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggZmlsZSBwcm9jZXNzZWQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODUKKyMsIGZ1enp5CisjfCBtc2dpZCAicmVhZCBlcnJvciBpbiBjb25maWd1cmF0aW9uIGZpbGUgYCUuMjU1cyciCittc2dpZCAiT3V0cHV0IGZvciBlYWNoIGNvbmZpZ3VyYXRpb24gZmlsZSIKK21zZ3N0ciAi6Kit5a6a5qqUIGAlLjI1NXMnIOiugOWPlumMr+iqpCIKKworIzogc3JjL21haW4uYzoyODYKK21zZ2lkICJMb3RzIG9mIG91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGUiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODcKK21zZ2lkICJEZXBlbmRlbmNpZXMgYW5kIGNvbmZsaWN0cyIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI4OAorbXNnaWQgIkxvdHMgb2YgZGVwZW5kZW5jaWVzL2NvbmZsaWN0cyBvdXRwdXQiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyODkKK21zZ2lkICJUcmlnZ2VyIGFjdGl2YXRpb24gYW5kIHByb2Nlc3NpbmciCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyOTAKK21zZ2lkICJMb3RzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyOTEKK21zZ2lkICJTaWxseSBhbW91bnRzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnMiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzoyOTIKK21zZ2lkICJMb3RzIG9mIGRyaXZlbCBhYm91dCBlZyB0aGUgZHBrZy9pbmZvIGRpcmVjdG9yeSIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjI5MworbXNnaWQgIkluc2FuZSBhbW91bnRzIG9mIGRyaXZlbCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjMwNAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiJXMgZGVidWdnaW5nIG9wdGlvbiwgLS1kZWJ1Zz08b2N0YWw+IG9yIC1EPG9jdGFsPjpcbiIKKyJcbiIKKyIgTnVtYmVyICBSZWYuIGluIHNvdXJjZSAgIERlc2NyaXB0aW9uXG4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzozMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIkRlYnVnZ2luZyBvcHRpb25zIGNhbiBiZSBtaXhlZCB1c2luZyBiaXR3aXNlLW9yLlxuIgorIk5vdGUgdGhhdCB0aGUgbWVhbmluZ3MgYW5kIHZhbHVlcyBhcmUgc3ViamVjdCB0byBjaGFuZ2UuXG4iCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzozMTkKK21zZ2lkICItLWRlYnVnIHJlcXVpcmVzIGFuIG9jdGFsIGFyZ3VtZW50IgorbXNnc3RyICItLWRlYnVnIOmcgOimgeS4gOWAi+WFq+mAsuWItueahOWPg+aVuCIKKworIzogc3JjL21haW4uYzozNDgKKyMsIGMtZm9ybWF0Cittc2dpZCAibnVsbCBwYWNrYWdlIG5hbWUgaW4gLS1pZ25vcmUtZGVwZW5kcyBjb21tYS1zZXBhcmF0ZWQgbGlzdCBgJS4yNTBzJyIKK21zZ3N0ciAi5ZyoIC0taWdub3JlLWRlcGVuZHMg55qE6YCX6Jmf5YiG6ZqU5YiX6KGoIGAlcycg5Lit5pyJ55qE5aWX5Lu25ZCN56ix5piv56m655qEIgorCisjOiBzcmMvbWFpbi5jOjM1NAorIywgYy1mb3JtYXQKK21zZ2lkICItLWlnbm9yZS1kZXBlbmRzIHJlcXVpcmVzIGEgbGVnYWwgcGFja2FnZSBuYW1lLiBgJS4yNTBzJyBpcyBub3Q7ICVzIgorbXNnc3RyICItLWlnbm9yZS1kZXBlbmRzIOmcgOimgeS4gOWAi+acieaViOeahOWll+S7tuWQjeeoseOAguiAjCBgJS4yNTBzJyDljbvkuI3mmK/vuZQlcyIKKworIzogc3JjL21haW4uYzozNzEgc3JjL21haW4uYzozODEgc3JjL21haW4uYzo2NDkgZHBrZy1zcGxpdC9tYWluLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgaW50ZWdlciBmb3IgLS0lczogYCUuMjUwcyciCittc2dzdHIgIi0tJXMg5omA5oyH5a6a55qE5pW45a2X54Sh5pWI77yaYCUuMjUwcyciCisKKyM6IHNyYy9tYWluLmM6NDM4CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIGV4ZWN1dGluZyBob29rICclcycsIGV4aXQgY29kZSAlZCIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjQ2NQorbXNnaWQgInN0YXR1cyBsb2dnZXIiCittc2dzdHIgIiIKKworIzogc3JjL21haW4uYzo0ODAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIiVzIGZvcmNpbmcgb3B0aW9ucyAtIGNvbnRyb2wgYmVoYXZpb3VyIHdoZW4gcHJvYmxlbXMgZm91bmQ6XG4iCisiICB3YXJuIGJ1dCBjb250aW51ZTogIC0tZm9yY2UtPHRoaW5nPiw8dGhpbmc+LC4uLlxuIgorIiAgc3RvcCB3aXRoIGVycm9yOiAgICAtLXJlZnVzZS08dGhpbmc+LDx0aGluZz4sLi4uIHwgLS1uby1mb3JjZS08dGhpbmc+LC4uLlxuIgorIiBGb3JjaW5nIHRoaW5nczpcbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjQ5MAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiV0FSTklORyAtIHVzZSBvZiBvcHRpb25zIG1hcmtlZCBbIV0gY2FuIHNlcmlvdXNseSBkYW1hZ2UgeW91ciBpbnN0YWxsYXRpb24uXG4iCisiRm9yY2luZyBvcHRpb25zIG1hcmtlZCBbKl0gYXJlIGVuYWJsZWQgYnkgZGVmYXVsdC5cbiIKK21zZ3N0ciAiIgorCisjOiBzcmMvbWFpbi5jOjUwNAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGZvcmNlL3JlZnVzZSBvcHRpb24gYCUuKnMnIgorbXNnc3RyICLmnKrnn6XnmoQgZm9yY2UvcmVmdXNlIOmBuOmghSBgJS4qcyciCisKKyM6IHNyYy9tYWluLmM6NTEzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJvYnNvbGV0ZSBmb3JjZS9yZWZ1c2Ugb3B0aW9uICclcydcbiIKK21zZ3N0ciAi6K2m5ZGK77ya5bey5bui5qOE55qEIGZvcmNlL3JlZnVzZSDpgbjpoIUgYCVzJyBcbiIKKworIzogc3JjL21haW4uYzo2NDMKK21zZ2lkICItLWNvbW1hbmQtZmQgdGFrZXMgb25lIGFyZ3VtZW50LCBub3QgemVybyIKK21zZ3N0ciAiLS1jb21tYW5kLWZkIOmcgOimgeS4gOWAi+WPg+aVuO+8jOiAjOS4jeaYr+aykuaciSIKKworIzogc3JjL21haW4uYzo2NDUKK21zZ2lkICItLWNvbW1hbmQtZmQgb25seSB0YWtlcyBvbmUgYXJndW1lbnQiCittc2dzdHIgIi0tY29tbWFuZC1mZCDlj6rpnIDkuIDlgIvlj4PmlbgiCisKKyM6IHNyYy9tYWluLmM6NjUxCisjLCBjLWZvcm1hdAorbXNnaWQgImNvdWxkbid0IG9wZW4gYCVpJyBmb3Igc3RyZWFtIgorbXNnc3RyICLnhKHms5XplovllZ8gYCVpJyDku6XpgLLooYzkuLLmtYHomZXnkIYiCisKKyM6IHNyYy9tYWluLmM6Njc2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW9mIGJlZm9yZSBlbmQgb2YgbGluZSAlZCIKK21zZ3N0ciAi5Zyo56ysICVkIOihjOe1kOadn+S5i+WJjeaciemgkOacn+S5i+WklueahCBlb2YiCisKKyM6IHNyYy9tYWluLmM6NzE5IHNyYy9tYWluLmM6NzQxIHNyYy9xdWVyeWNtZC5jOjY5MiBzcmMvc3RhdGNtZC5jOjM3OQorIzogZHBrZy1kZWIvbWFpbi5jOjIwMSBkcGtnLXNwbGl0L21haW4uYzoxNjMKK21zZ2lkICJuZWVkIGFuIGFjdGlvbiBvcHRpb24iCittc2dzdHIgIuasoOe8uuaTjeS9nOmBuOmghSIKKworIzogc3JjL3BhY2thZ2VzLmM6MTEzCittc2dpZCAiIgorInlvdSBtdXN0IHNwZWNpZnkgcGFja2FnZXMgYnkgdGhlaXIgb3duIG5hbWVzLCBub3QgYnkgcXVvdGluZyB0aGUgbmFtZXMgb2YgIgorInRoZSBmaWxlcyB0aGV5IGNvbWUgaW4iCittc2dzdHIgIuaCqOW/hemgiOS9v+eUqOWll+S7tuacrOi6q+eahOWQjeWtl++8jOiAjOS4jeaYr+ebtOaOpeW8leeUqOWujOaVtOeahOaqlOahiOWQjeeosSIKKworIzogc3JjL3BhY2thZ2VzLmM6MTMzCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgLS1wZW5kaW5nIGRvZXMgbm90IHRha2UgYW55IG5vbi1vcHRpb24gYXJndW1lbnRzIgorbXNnc3RyICItLSVzIC0tcGVuZGluZyDkuI3pnIDku7vkvZXkuI3mmK/pgbjpoIXnmoTlj4PmlbgiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjEzOCBzcmMvcXVlcnljbWQuYzozNzUgc3JjL3F1ZXJ5Y21kLmM6NTY1CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYXQgbGVhc3Qgb25lIHBhY2thZ2UgbmFtZSBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyDpnIDopoHoh7PlsJHkuIDlgIvlpZfku7blkI3nqLHkvZzngrrlj4PmlbgiCisKKyM6IHNyYy9wYWNrYWdlcy5jOjE3OQorIywgYy1mb3JtYXQKK21zZ2lkICJQYWNrYWdlICVzIGxpc3RlZCBtb3JlIHRoYW4gb25jZSwgb25seSBwcm9jZXNzaW5nIG9uY2UuXG4iCittc2dzdHIgIuWll+S7tiAlcyDooqvliJflh7rlpJrmrKHvvIzkvYblj6rmnIPooqvomZXnkIbkuIDmrKHjgIJcbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MTgzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJNb3JlIHRoYW4gb25lIGNvcHkgb2YgcGFja2FnZSAlcyBoYXMgYmVlbiB1bnBhY2tlZFxuIgorIiBpbiB0aGlzIHJ1biAhICBPbmx5IGNvbmZpZ3VyaW5nIGl0IG9uY2UuXG4iCittc2dzdHIgIiIKKyLlnKjmraTmrKHln7fooYzkuK3vvIzlkIzmmYLop6PplovkuoblpZfku7YgJXMg55qE5aSa5YCL5Ymv5pys77yBXG4iCisiIOS9huWPquacg+ioreWumuS4gOasoeOAglxuIgorCisjOiBzcmMvcGFja2FnZXMuYzoyMzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorInBhY2thZ2UgJS4yNTBzIGlzIG5vdCByZWFkeSBmb3IgdHJpZ2dlciBwcm9jZXNzaW5nXG4iCisiIChjdXJyZW50IHN0YXR1cyBgJS4yNTBzJyB3aXRoIG5vIHBlbmRpbmcgdHJpZ2dlcnMpIgorbXNnc3RyICIiCisi5aWX5Lu2ICUuMjUwcyDpgoTmspLmupblgpnlpb3opoHomZXnkIbop7jnmbznqIvlvI9cbiIKKyIg77yI55uu5YmN55qE54uA5oWL54K6IGAlLjI1MHMn77yM5LiU5rKS5pyJ5bCa5b6F6YCy6KGM55qE6Ke455m856iL5byP77yJIgorCisjOiBzcmMvcGFja2FnZXMuYzozMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIHdoaWNoIHByb3ZpZGVzICVzIGlzIHRvIGJlIHJlbW92ZWQuXG4iCittc2dzdHIgIiAg5o+Q5L6b5LqGICUyJHMg55qE5aWX5Lu2ICUxJHMg5Y2z5bCH6KKr56e76Zmk44CCXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjMzNworIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgaXMgdG8gYmUgcmVtb3ZlZC5cbiIKK21zZ3N0ciAiICDljbPlsIfnp7vpmaTlpZfku7YgJXPjgIJcbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MzU0CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgVmVyc2lvbiBvZiAlcyBvbiBzeXN0ZW0gaXMgJXMuXG4iCittc2dzdHIgIiAgJXMg5Zyo57O757Wx5LiK55qE54mI5pys54K6ICVz44CCXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjM3NgorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgd2hpY2ggcHJvdmlkZXMgJXMgYXdhaXRzIHRyaWdnZXIgcHJvY2Vzc2luZy5cbiIKK21zZ3N0ciAiICDmj5DkvpvkuoYgJTIkcyDnmoTlpZfku7YgJTEkcyDmraPopoHln7fooYzop7jnmbznqIvlvI/jgIJcbiIKKworIzogc3JjL3BhY2thZ2VzLmM6MzgwCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyBhd2FpdHMgdHJpZ2dlciBwcm9jZXNzaW5nLlxuIgorbXNnc3RyICIgIOWll+S7tiAlcyDmraPopoHln7fooYzop7jnmbznqIvlvI/jgIJcbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDEwCisjLCBjLWZvcm1hdAorbXNnaWQgImRwa2c6IGFsc28gY29uZmlndXJpbmcgYCVzJyAocmVxdWlyZWQgYnkgYCVzJylcbiIKK21zZ3N0ciAiZHBrZ++8muS5n+WQjOaZguioreWumiBgJXMn77yI5q2k54K6IGAlcycg5omA6KaB5rGC55qE77yJXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQxOAorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgd2hpY2ggcHJvdmlkZXMgJXMgaXMgbm90IGNvbmZpZ3VyZWQgeWV0LlxuIgorbXNnc3RyICIgIOaPkOS+m+S6hiAlMiRzIOeahOWll+S7tiAlMSRzIOWwmuacquioreWumuOAglxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0MjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiICBQYWNrYWdlICVzIGlzIG5vdCBjb25maWd1cmVkIHlldC5cbiIKK21zZ3N0ciAiICAlcyDlpZfku7blsJrmnKroqK3lrprjgIJcbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDMyCisjLCBjLWZvcm1hdAorbXNnaWQgIiAgUGFja2FnZSAlcyB3aGljaCBwcm92aWRlcyAlcyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICIgIOacquabvuWuieijneaPkOS+m+S6hiAlMiRzIOeahOWll+S7tiAlMSRz44CCXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQzNQorIywgYy1mb3JtYXQKK21zZ2lkICIgIFBhY2thZ2UgJXMgaXMgbm90IGluc3RhbGxlZC5cbiIKK21zZ3N0ciAiICDmnKrmm77lronoo53lpZfku7YgYCVzJ+OAglxuIgorCisjOiBzcmMvcGFja2FnZXMuYzo0NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiICVzICglcykgYnJlYWtzICVzIGFuZCBpcyAlcy5cbiIKK21zZ3N0ciAiICVz77yIJXPvvInmkI3mr4DkuoYgJXPvvIzkuJTlt7IgJXPjgIJcbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NDc4CisjLCBjLWZvcm1hdAorbXNnaWQgIiAgJXMgKCVzKSBwcm92aWRlcyAlcy5cbiIKK21zZ3N0ciAiICAlc++8iCVz77yJ5o+Q5L6b5LqGICVz44CCXG4iCisKKyM6IHNyYy9wYWNrYWdlcy5jOjQ4MgorIywgYy1mb3JtYXQKK21zZ2lkICIgIFZlcnNpb24gb2YgJXMgdG8gYmUgY29uZmlndXJlZCBpcyAlcy5cbiIKK21zZ3N0ciAiICAlcyDopoHpgLLooYzoqK3lrprnmoTniYjmnKzmmK8gJXPjgIJcbiIKKworIzogc3JjL3BhY2thZ2VzLmM6NTk2Cittc2dpZCAiIGRlcGVuZHMgb24gIgorbXNnc3RyICIg55u45L6d5pa8ICIKKworIzogc3JjL3BhY2thZ2VzLmM6NjAyCittc2dpZCAiOyBob3dldmVyOlxuIgorbXNnc3RyICLvuZTnhLbogIzvvJpcbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo3MQorIywgYy1mb3JtYXQKK21zZ2lkICIuLi4vJXMiCittc2dzdHIgIiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5MQorIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciBlbnN1cmluZyBgJS4yNTBzJyBkb2Vzbid0IGV4aXN0IgorbXNnc3RyICLlnKjnorrkv53mqpTmoYggYCUuMjUwcycg5piv5ZCm5a2Y5Zyo5pmC55m855Sf6Yyv6KqkIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjk5Cittc2dpZCAic3BsaXQgcGFja2FnZSByZWFzc2VtYmx5IgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTA4Cittc2dpZCAicmVhc3NlbWJsZWQgcGFja2FnZSBmaWxlIgorbXNnc3RyICLph43mlrDntYToo53miJDnmoTlpZfku7bmqpQiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTMzCisjLCBjLWZvcm1hdAorbXNnaWQgIkF1dGhlbnRpY2F0aW5nICVzIC4uLlxuIgorbXNnc3RyICLmraPlnKjpqZfoqLwgJXMgLi4uXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTM5Cittc2dpZCAicGFja2FnZSBzaWduYXR1cmUgdmVyaWZpY2F0aW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTQ2CisjLCBjLWZvcm1hdAorbXNnaWQgIlZlcmlmaWNhdGlvbiBvbiBwYWNrYWdlICVzIGZhaWxlZCEiCittc2dzdHIgIuWll+S7tiAlcyDmspLmnInpgJrpgY7pqZfoqLzvvIEiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTQ4CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJWZXJpZmljYXRpb24gb24gcGFja2FnZSAlcyBmYWlsZWQsXG4iCisiYnV0IGluc3RhbGxpbmcgYW55d2F5IGFzIHlvdSByZXF1ZXN0ZWQuXG4iCittc2dzdHIgIiIKKyLpm5bnhLblpZfku7YgJXMg5pyq6IO96YCa6YGO6amX6Ki877yMXG4iCisi5L2G6YKE5piv5oeJ5oKo55qE6KaB5rGC5by35Yi26YCy6KGM5a6J6KOd44CCXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTUyCisjLCBjLWZvcm1hdAorbXNnaWQgInBhc3NlZFxuIgorbXNnc3RyICLpgJrpgY5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxNjUgZHBrZy1kZWIvaW5mby5jOjgxCisjLCBmdXp6eQorbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgdGVtcG9yYXJ5IGRpcmVjdG9yeSIKK21zZ3N0ciAi54Sh5rOV54K66Ieo5pmC55uu6YyE5ZG95ZCNIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjIwNQorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlICVzIGhhcyB0b28gbWFueSBDb25mbGljdHMvUmVwbGFjZXMgcGFpcnMiCittc2dzdHIgIuWll+S7tiAlcyDmnInlpKrlpJrnmoQg6KGd56qBL+abv+aPmyDntYTlkIgiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MjQzCisjLCBjLWZvcm1hdAorbXNnaWQgIm9sZCB2ZXJzaW9uIG9mIHBhY2thZ2UgaGFzIG92ZXJseS1sb25nIGluZm8gZmlsZSBuYW1lIHN0YXJ0aW5nIGAlLjI1MHMnIgorbXNnc3RyICLljp/lhYjniYjmnKznmoTlpZfku7bkuK3ljIXlkKvkuoblkI3nqLHpgY7plbfnmoQgaW5mbyDmqpTvvIzlhbbplovpoK3ngrogYCUuMjUwcyciCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MjgxCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW1vdmUgb2Jzb2xldGUgaW5mbyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLnhKHms5Xnp7vpmaTlu6Lmo4TnmoQgaW5mbyDmqpQgYCUuMjUwcyciCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6Mjg2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBpbnN0YWxsIChzdXBwb3NlZCkgbmV3IGluZm8gZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi54Sh5rOV5a6J6KOd77yI6KKr6KqN5a6a54K677yJ5paw55qEIGluZm8g5qqUIGAlLjI1MHMnIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjI5NgorbXNnaWQgInVuYWJsZSB0byBvcGVuIHRlbXAgY29udHJvbCBkaXJlY3RvcnkiCittc2dzdHIgIueEoeazlemWi+WVn+aaq+WtmOeahCBjb250cm9sIOebrumMhCIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMDcKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBjb250YWlucyBvdmVybHktbG9uZyBjb250cm9sIGluZm8gZmlsZSBuYW1lIChzdGFydGluZyBgJS41MHMnKSIKK21zZ3N0ciAi5aWX5Lu255qEIGNvbnRyb2wg6LOH6KiK5Lit5YyF5ZCr5LqG5ZCN56ix6YGO6ZW355qE5qqU5qGI77yI5YW26ZaL6aCt54K6IGAlLjI1MHMn77yJIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjMxNAorIywgYy1mb3JtYXQKK21zZ2lkICJwYWNrYWdlIGNvbnRyb2wgaW5mbyBjb250YWluZWQgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICLlpZfku7bnmoQgY29udHJvbCDos4foqIrkuK3ljIXlkKvkuobnm67pjIQgYCUuMjUwcyciCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MzE2CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgY29udHJvbCBpbmZvIHJtZGlyIG9mIGAlLjI1MHMnIGRpZG4ndCBzYXkgbm90IGEgZGlyIgorbXNnc3RyICLlpZfku7YgY29udHJvbCDos4foqIogcm1kaXIg5LqGIGAlLjI1MHMnIOS9huaykuacieiqqumAmeS4jeaYr+S4gOWAi+ebrumMhCIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMjYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgJXMgY29udGFpbmVkIGxpc3QgYXMgaW5mbyBmaWxlIgorbXNnc3RyICJkcGtn77ya6K2m5ZGKIC0g5aWX5Lu2ICVzIOijoeeahOWIl+ihqOiiq+eVtuS9nCBpbmZvIOaqlOS9v+eUqCIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozMzMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3IGluZm8gZmlsZSBgJS4yNTBzJyBhcyBgJS4yNTBzJyIKK21zZ3N0ciAi54Sh5rOV5oqK5paw55qEIGluZm8g5qqUIGAlLjI1MHMnIOWuieijneeCuiBgJS4yNTBzJyIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzozNDkgc3JjL3JlbW92ZS5jOjE5OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGVsZXRlIGNvbnRyb2wgaW5mbyBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLnhKHms5XliKrpmaQgY29udHJvbCDos4foqIrmqpQgYCUuMjUwcyciCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDExCittc2dpZCAiY2Fubm90IGFjY2VzcyBhcmNoaXZlIgorbXNnc3RyICLnhKHms5XlrZjlj5blpZfku7bmqpQiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NDMzCisjLCBmdXp6eQorI3wgbXNnaWQgImNvbnRyb2wgaW5mb3JtYXRpb24gbGVuZ3RoIgorbXNnaWQgInBhY2thZ2UgY29udHJvbCBpbmZvcm1hdGlvbiBleHRyYWN0aW9uIgorbXNnc3RyICJjb250cm9sIOizh+ioiumVt+W6piIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo0NjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiUmVjb3JkZWQgaW5mbyBhYm91dCAlcyBmcm9tICVzLlxuIgorbXNnc3RyICLlvp4gJTIkcyDnjbLlvpfpl5zmlrwgJTEkcyDnmoQgaW5mbyDoqJjpjITjgIJcbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo0NjgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFja2FnZSBhcmNoaXRlY3R1cmUgKCVzKSBkb2VzIG5vdCBtYXRjaCBzeXN0ZW0gKCVzKSIKK21zZ3N0ciAi5aWX5Lu255qE57O757Wx5bmz5Y+wICglcykg6IiH5pys5qmf57O757WxICglcykg5LiN56ymIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjUyMworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogcmVnYXJkaW5nICVzIGNvbnRhaW5pbmcgJXMsIHByZS1kZXBlbmRlbmN5IHByb2JsZW06XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtn77ya55Sx5pa8ICVzIOWMheWQq+S6hiAlc++8jOmgkOWFiOebuOS+neWVj+mhjO+8mlxuIgorIiVzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjUyNgorIywgYy1mb3JtYXQKK21zZ2lkICJwcmUtZGVwZW5kZW5jeSBwcm9ibGVtIC0gbm90IGluc3RhbGxpbmcgJS4yNTBzIgorbXNnc3RyICLpoJDlhYjnm7jkvp3llY/poYwgLSDlsIfkuI3lronoo50gJS4yNTBzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjUyNworIywgZnV6enkKK21zZ2lkICJpZ25vcmluZyBwcmUtZGVwZW5kZW5jeSBwcm9ibGVtISIKK21zZ3N0ciAiZHBrZ++8muitpuWRiiAtIOW/veimluS6humgkOWFiOebuOS+neWVj+mhjO+8gVxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjU0MworIywgYy1mb3JtYXQKK21zZ2lkICJQcmVwYXJpbmcgdG8gcmVwbGFjZSAlcyAlcyAodXNpbmcgJXMpIC4uLlxuIgorbXNnc3RyICLmraPmupblgpnmm7/mj5sgJXMgJXPvvIjkvb/nlKggJXPvvIkuLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo1NDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiVW5wYWNraW5nICVzIChmcm9tICVzKSAuLi5cbiIKK21zZ3N0ciAi5q2j5Zyo6Kej6ZaLICVzIO+8iOW+niAlc++8iS4uLlxuIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjU4MAorIywgYy1mb3JtYXQKK21zZ2lkICJuYW1lIG9mIGNvbmZmaWxlIChzdGFydGluZyBgJS4yNTBzJykgaXMgdG9vIGxvbmcgKD4lZCBjaGFyYWN0ZXJzKSIKK21zZ3N0ciAiY29uZmZpbGUg55qE5qqU5qGI5ZCN77yI6ZaL6aCt5pivIGAlLjI1MHMn77yJ6YGO6ZW377yIPiAlZCDlgIvlrZflhYPvvIkiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6NjMzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDcxCisjLCBjLWZvcm1hdAorbXNnaWQgInJlYWQgZXJyb3IgaW4gJS4yNTBzIgorbXNnc3RyICLlnKggJS4yNTBzIOS4reeZvOeUn+iugOWPlumMr+iqpCIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2MzUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyAlLjI1MHMiCittc2dzdHIgIuWcqOmXnOmWiSAlLjI1MHMg5pmC55m855Sf6Yyv6KqkIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjYzNworIywgYy1mb3JtYXQKK21zZ2lkICJlcnJvciB0cnlpbmcgdG8gb3BlbiAlLjI1MHMiCittc2dzdHIgIuWcqOippuWclumWi+WVnyAlLjI1MHMg5pmC55m855Sf6Yyv6KqkIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjY3OAorIywgYy1mb3JtYXQKK21zZ2lkICJEZS1jb25maWd1cmluZyAlcywgdG8gYWxsb3cgcmVtb3ZhbCBvZiAlcyAuLi5cbiIKK21zZ3N0ciAi5q2j5Zyo5riF6ZmkICVzIOeahOioreWumu+8jOeCuuS6huiDveenu+mZpCAlcyAuLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo2ODEKKyMsIGMtZm9ybWF0Cittc2dpZCAiRGUtY29uZmlndXJpbmcgJXMgLi4uXG4iCittc2dzdHIgIuato+WcqOWIqumZpCAlcyDnmoToqK3lrpouLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo3NTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiVW5wYWNraW5nIHJlcGxhY2VtZW50ICUuMjUwcyAuLi5cbiIKK21zZ3N0ciAi5q2j5Zyo6Kej6ZaL5pu/5o+b55qE5aWX5Lu25qqUICUuMjUwcyAuLi5cbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo4NDAKK21zZ2lkICJwYWNrYWdlIGZpbGVzeXN0ZW0gYXJjaGl2ZSBleHRyYWN0aW9uIgorbXNnc3RyICIiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6ODU0Cittc2dpZCAiZXJyb3IgcmVhZGluZyBkcGtnLWRlYiB0YXIgb3V0cHV0IgorbXNnc3RyICLlnKjoroDlj5YgZHBrZy1kZWIg6Ly45Ye655qEIHRhciDmqpTmmYLnmbznlJ/pjK/oqqQiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6ODU2Cittc2dpZCAiY29ycnVwdGVkIGZpbGVzeXN0ZW0gdGFyZmlsZSAtIGNvcnJ1cHRlZCBwYWNrYWdlIGFyY2hpdmUiCittc2dzdHIgIuaqlOahiOezu+e1seS4iueahCB0YXIg5qqU5bey5pCN5aOeIC0g5aWX5Lu25qqU5bey5q+A5pCNIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjg1OQorbXNnaWQgImRwa2ctZGViOiB6YXAgcG9zc2libGUgdHJhaWxpbmcgemVyb3MiCittc2dzdHIgImRwa2ctZGVi77ya5oiq5o6J5LqG5Y+v6IO95pyD5Ye654++5Zyo57WQ5bC+55qE5a2X5YWDIDAiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTE5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3Qgc3RhdCBvbGQgZmlsZSAnJS4yNTBzJyBzbyBub3QgZGVsZXRpbmcgaXQ6ICVzIgorbXNnc3RyICJkcGtn77ya6K2m5ZGKIC0g54Sh5rOV5Y+W5b6X5Y6f5pyJ55qE5qqU5qGIIGAlLjI1MHMnIOeahOizh+ioiu+8jOaJgOS7peS4jeacg+WIqumZpO+8miVzIgorCisjOiBzcmMvcHJvY2Vzc2FyYy5jOjkyNQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSBvbGQgZGlyZWN0b3J5ICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiZHBrZ++8muitpuWRiiAtIOeEoeazleWIqumZpOWOn+acieeahOebrumMhCBgJS4yNTBzJ++8miVzXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTI4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJvbGQgY29uZmZpbGUgJyUuMjUwcycgd2FzIGFuIGVtcHR5IGRpcmVjdG9yeSAoYW5kIGhhcyBub3cgYmVlbiBkZWxldGVkKSIKK21zZ3N0ciAiZHBrZ++8muitpuWRiiAtIOWOn+acrOeahCBjb25mZmlsZSBgJS4yNTBzJyDmmK/nqbrnm67pjITvvIjnj77lt7LliKrpmaTvvIlcbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzo5NzUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgb3RoZXIgbmV3IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIueEoeazleWPluW+l+WFtuWug+aWsOaqlOahiCBgJS4yNTBzJyDnmoTos4foqIoiCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6OTg2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisib2xkIGZpbGUgJyUuMjUwcycgaXMgdGhlIHNhbWUgYXMgc2V2ZXJhbCBuZXcgZmlsZXMhIChib3RoICclLjI1MHMnIGFuZCAiCisiJyUuMjUwcycpIgorbXNnc3RyICIiCisiZHBrZ++8muitpuWRiiAtIOiIiuaqlOahiCBgJS4yNTBzJyDoiIfmlbjlgIvmlrDmqpTmoYjnm7jlkIzvvIHvvIhgJS4yNTBzJyDku6Xlj4ogYCUuMjUwcyfvvIlcbiIKKworIzogc3JjL3Byb2Nlc3NhcmMuYzoxMDI1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc2VjdXJlbHkgcmVtb3ZlIG9sZCBmaWxlICclLjI1MHMnOiAlcyIKK21zZ3N0ciAiZHBrZ++8muitpuWRiiAtIOeEoeazlSAlcyDljp/mnInnmoTmqpTmoYggYCUlLjI1MHMn77yaJSVzXG4iCisKKyM6IHNyYy9wcm9jZXNzYXJjLmM6MTIwNgorIywgYy1mb3JtYXQKK21zZ2lkICIoTm90aW5nIGRpc2FwcGVhcmFuY2Ugb2YgJXMsIHdoaWNoIGhhcyBiZWVuIGNvbXBsZXRlbHkgcmVwbGFjZWQuKVxuIgorbXNnc3RyICLvvIjms6jmhI/liLAgJXMg5bey57aT5LiN5b6p5a2Y5Zyo77yM5a6D5bey6KKr5a6M5YWo5Y+W5Luj5LqG44CC77yJXG4iCisKKyMuIFRSQU5TTEFUT1JTOiBUaGlzIGlzIHRoZSBoZWFkZXIgdGhhdCBhcHBlYXJzIG9uICdkcGtnLXF1ZXJ5IC1sJy4gVGhlCisjLiAqIHN0cmluZyBzaG91bGQgcmVtYWluIHVuZGVyIDgwIGNoYXJhY3RlcnMuIFRoZSB1cHBlcmNhc2UgbGV0dGVycyBpbgorIy4gKiB0aGUgc3RhdGUgdmFsdWVzIGRlbm90ZSB0aGUgYWJicmV2aWF0ZWQgbGV0dGVyIHRoYXQgd2lsbCBhcHBlYXIgb24KKyMuICogdGhlIGZpcnN0IHRocmVlIGNvbHVtbnMsIHdoaWNoIHNob3VsZCBpZGVhbGx5IG1hdGNoIHRoZSBFbmdsaXNoIG9uZQorIy4gKiAoZS5nLiBSZW1vdmUg4oaSIHN1cFJpbWVpeCksIHNlZSBkcGtnLXF1ZXJ5KDEpIGZvciBmdXJ0aGVyIGRldGFpbHMuIFRoZQorIy4gKiB0cmFuc2xhdGVkIG1lc3NhZ2UgY2FuIHVzZSBhZGRpdGlvbmFsIGxpbmVzIGlmIG5lZWRlZC4KKyM6IHNyYy9xdWVyeWNtZC5jOjE0OQorIywgZnV6enkKK21zZ2lkICIiCisiRGVzaXJlZD1Vbmtub3duL0luc3RhbGwvUmVtb3ZlL1B1cmdlL0hvbGRcbiIKKyJ8IFN0YXR1cz1Ob3QvSW5zdC9Db25mLWZpbGVzL1VucGFja2VkL2hhbEYtY29uZi9IYWxmLWluc3QvdHJpZy1hV2FpdC9UcmlnLSIKKyJwZW5kXG4iCisifC8gRXJyPz0obm9uZSkvUmVpbnN0LXJlcXVpcmVkIChTdGF0dXMsRXJyOiB1cHBlcmNhc2U9YmFkKVxuIgorbXNnc3RyICIiCisi6KaB5rGCPVU65pyq55+lL0k65a6J6KOdL1I65Yiq6ZmkL1A65riF6ZmkL0g65L+d55WZXG4iCisifCDni4DmhYs9TjrlsJrmnKovSTrlt7Llronoo50vQzroqK3lrprmqpQvVTrlt7Lop6PplosvRjroqK3lrprlpLHmlZcvSDrljYrlronoo50vVzrlvoXomZXnkIYvVDrmnKromZUiCisi55CGXG4iCisifC8g6Yyv6KqkPz0o54ShKS9IOuS/neeVmS9SOumgiOmHjeaWsOWuieijnS9YOuWFqeiAheWFvOacie+8iOeLgOaFi++8jOmMr+iqpO+8muWkp+Wvqz3mnInllY/poYzvvIlcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MTUzCittc2dpZCAiTmFtZSIKK21zZ3N0ciAi5ZCN56ixIgorCisjOiBzcmMvcXVlcnljbWQuYzoxNTMKK21zZ2lkICJWZXJzaW9uIgorbXNnc3RyICLniYjmnKwiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjE1NAorbXNnaWQgIkRlc2NyaXB0aW9uIgorbXNnc3RyICLnsKHku4siCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI0NiBzcmMvcXVlcnljbWQuYzo1MTEgc3JjL3NlbGVjdC5jOjc1CisjLCBjLWZvcm1hdAorbXNnaWQgIk5vIHBhY2thZ2VzIGZvdW5kIG1hdGNoaW5nICVzLlxuIgorbXNnc3RyICLmspLmnInmib7liLDku7vkvZXnrKblkIggJXMg55qE5aWX5Lu244CCXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI3MworIywgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnNpb24gYnkgJXMgZnJvbTogJXNcbiIKK21zZ3N0ciAi55SxICVzIOaJgOaKveaPm++8jOW+nu+8miVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI3NQorIywgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnNpb24gYnkgJXMgdG86ICVzXG4iCittc2dzdHIgIueUsSAlcyDmiYDmir3mj5vvvIzoh7PvvJolc1xuIgorCisjOiBzcmMvcXVlcnljbWQuYzoyNzgKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9jYWwgZGl2ZXJzaW9uIGZyb206ICVzXG4iCittc2dzdHIgIuiHquihjOaKveaPm++8jOW+nu+8miVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjI3OQorIywgYy1mb3JtYXQKK21zZ2lkICJsb2NhbCBkaXZlcnNpb24gdG86ICVzXG4iCittc2dzdHIgIuiHquihjOaKveaPm++8jOiHs++8miVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjMwOQorbXNnaWQgIi0tc2VhcmNoIG5lZWRzIGF0IGxlYXN0IG9uZSBmaWxlIG5hbWUgcGF0dGVybiBhcmd1bWVudCIKK21zZ3N0ciAiLS1zZWFyY2gg6ZyA6KaB6Iez5bCR5LiA5YCL5qqU5qGI5ZCN56ix6KGo6YGU5byP5L2c54K65Y+D5pW4IgorCisjOiBzcmMvcXVlcnljbWQuYzozNTAKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIk5vIHBhY2thZ2VzIGZvdW5kIG1hdGNoaW5nICVzLlxuIgorbXNnaWQgIiVzOiBubyBwYXRoIGZvdW5kIG1hdGNoaW5nIHBhdHRlcm4gJXMuXG4iCittc2dzdHIgIuaykuacieaJvuWIsOS7u+S9leespuWQiCAlcyDnmoTlpZfku7bjgIJcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6MzkzCisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgYCVzJyBpcyBub3QgaW5zdGFsbGVkIGFuZCBubyBpbmZvIGlzIGF2YWlsYWJsZS5cbiIKK21zZ3N0ciAi5pyq5pu+5a6J6KOd5aWX5Lu2IGAlcyfvvIzkuZ/nhKHms5Xlj5blvpflhbbos4foqIrjgIJcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDAxCisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgYCVzJyBpcyBub3QgYXZhaWxhYmxlLlxuIgorbXNnc3RyICLnhKHms5Xlj5blvpflpZfku7YgYCVzJ+OAglxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MTAgc3JjL3F1ZXJ5Y21kLmM6NTg1CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgYCVzJyBpcyBub3QgaW5zdGFsbGVkLlxuIgorbXNnc3RyICLlpZfku7YgYCVzJyDmnKrlronoo53jgIJcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDE4CisjLCBjLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgYCVzJyBkb2VzIG5vdCBjb250YWluIGFueSBmaWxlcyAoISlcbiIKK21zZ3N0ciAi5aWX5Lu2IGAlcycg5pyq5ZCr5pyJ5Lu75L2V5qqU5qGIICghKVxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo0MjUKKyMsIGMtZm9ybWF0Cittc2dpZCAibG9jYWxseSBkaXZlcnRlZCB0bzogJXNcbiIKK21zZ3N0ciAi6Ieq6KGM5oq95o+b6Iez77yaJXNcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NDI4CisjLCBjLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgZGl2ZXJ0cyBvdGhlcnMgdG86ICVzXG4iCittc2dzdHIgIuWll+S7tuWwh+WFtuWug+eahOaKveaPm+iHs++8miVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQzMQorIywgYy1mb3JtYXQKK21zZ2lkICJkaXZlcnRlZCBieSAlcyB0bzogJXNcbiIKK21zZ3N0ciAi6KKrICVzIOaKveaPm+WIsO+8miVzXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjQ1MgorbXNnaWQgIiIKKyJVc2UgZHBrZyAtLWluZm8gKD0gZHBrZy1kZWIgLS1pbmZvKSB0byBleGFtaW5lIGFyY2hpdmUgZmlsZXMsXG4iCisiYW5kIGRwa2cgLS1jb250ZW50cyAoPSBkcGtnLWRlYiAtLWNvbnRlbnRzKSB0byBsaXN0IHRoZWlyIGNvbnRlbnRzLlxuIgorbXNnc3RyICIiCisi5L2/55SoIGRwa2cgLS1pbmZvICg9IGRwa2ctZGViIC0taW5mbykg5L6G5qqi5ris5aWX5Lu25qqU77yMXG4iCisi5Lul5Y+KIGRwa2cgLS1jb250ZW50cyAoPSBkcGtnLWRlYiAtLWNvbnRlbnRzKSDkvobliJflh7rlroPlgJHnmoTlhaflrrnjgIJcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NTcwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICItLSVzIHRha2VzIGF0IG1vc3QgdHdvIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS1idWlsZCDoh7PlpJrlj6/mnInlhanlgIvlj4PmlbgiCisKKyM6IHNyYy9xdWVyeWNtZC5jOjU3OAorIywgYy1mb3JtYXQKK21zZ2lkICJjb250cm9sIGZpbGUgY29udGFpbnMgJWMiCittc2dzdHIgIiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjAwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gJXMgcGFja2FnZSBtYW5hZ2VtZW50IHByb2dyYW0gcXVlcnkgdG9vbCB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICJEZWJpYW4gYCVzJyDlpZfku7bnrqHnkIbnqIvlvI/niYjmnKwlc+OAglxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo2MTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1zfC0tc3RhdHVzIDxwYWNrYWdlPiAuLi4gICAgICAgIERpc3BsYXkgcGFja2FnZSBzdGF0dXMgZGV0YWlscy5cbiIKKyIgIC1wfC0tcHJpbnQtYXZhaWwgPHBhY2thZ2U+IC4uLiAgIERpc3BsYXkgYXZhaWxhYmxlIHZlcnNpb24gZGV0YWlscy5cbiIKKyIgIC1MfC0tbGlzdGZpbGVzIDxwYWNrYWdlPiAuLi4gICAgIExpc3QgZmlsZXMgYG93bmVkJyBieSBwYWNrYWdlKHMpLlxuIgorIiAgLWx8LS1saXN0IFs8cGF0dGVybj4gLi4uXSAgICAgICAgTGlzdCBwYWNrYWdlcyBjb25jaXNlbHkuXG4iCisiICAtV3wtLXNob3cgWzxwYXR0ZXJuPiAuLi5dICAgICAgICBTaG93IGluZm9ybWF0aW9uIG9uIHBhY2thZ2UocykuXG4iCisiICAtU3wtLXNlYXJjaCA8cGF0dGVybj4gLi4uICAgICAgICBGaW5kIHBhY2thZ2Uocykgb3duaW5nIGZpbGUocykuXG4iCisiICAtY3wtLWNvbnRyb2wtcGF0aCA8cGFja2FnZT4gWzxmaWxlPl1cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFByaW50IHBhdGggZm9yIHBhY2thZ2UgY29udHJvbCBmaWxlLlxuIgorIlxuIgorbXNnc3RyICIiCisi5oyH5Luk77yaXG4iCisiICAtc3wtLXN0YXR1cyA85aWX5Lu25ZCNPiAuLi4gICAgICAgICDpoa/npLrlpZfku7boqbPnm6HnmoTni4DmhYvos4foqIrjgIJcbiIKKyIgIC1wfC0tcHJpbnQtYXZhaWwgPOWll+S7tuWQjT4gLi4uICAgIOmhr+ekuuWll+S7tuebruWJjeWPr+WuieijneeJiOacrOeahOips+e0sOizh+ioiuOAglxuIgorIiAgLUx8LS1saXN0ZmlsZXMgPOWll+S7tuWQjT4gLi4uICAgICAg5YiX5Ye65omA5pyJIGDlsazmlrwnIOipsuWll+S7tueahOaqlOahiOOAglxuIgorIiAgLUl8LS1saXN0IFs86KGo6YGU5byPPiAuLi5dICAgICAgICAg57Ch6KaB5Zyw5YiX5Ye65aWX5Lu244CCXG4iCisiICAtV3wtLXNob3cgPOihqOmBlOW8jz4gLi4uICAgICAgICAgICDpoa/npLrlpZfku7bos4foqIrjgIJcbiIKKyIgIC1TfC0tc2VhcmNoIDzooajpgZTlvI8+IC4uLiAgICAgICAgIOaQnOWwi+aTgeacieipsuaqlOahiOeahOWll+S7tuOAglxuIgorIlxuIgorCisjOiBzcmMvcXVlcnljbWQuYzo2MzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgICAgICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyIgIC1mfC0tc2hvd2Zvcm1hdD08Zm9ybWF0PiAgICAgICAgIFVzZSBhbHRlcm5hdGl2ZSBmb3JtYXQgZm9yIC0tc2hvdy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIumBuOmghe+8mlxuIgorIiAgLS1hZG1pbmRpcj0855uu6YyEPiAgICAgICAgICAgICAgICDkvb/nlKggPGRpcmVjdG9yeT4g5L6G5pu/5LujICVz44CCXG4iCisiICAtZnwtLXNob3dmb3JtYXQ9POagvOW8jz4gICAgICAgICAgIOabvyAtLXNob3cg5oyH5a6a5YW25a6D55qE6Ly45Ye65qC85byP44CCXG4iCisiXG4iCisKKyM6IHNyYy9xdWVyeWNtZC5jOjY0MiBkcGtnLWRlYi9tYWluLmM6MTEyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJGb3JtYXQgc3ludGF4OlxuIgorIiAgQSBmb3JtYXQgaXMgYSBzdHJpbmcgdGhhdCB3aWxsIGJlIG91dHB1dCBmb3IgZWFjaCBwYWNrYWdlLiBUaGUgZm9ybWF0XG4iCisiICBjYW4gaW5jbHVkZSB0aGUgc3RhbmRhcmQgZXNjYXBlIHNlcXVlbmNlcyBcXG4gKG5ld2xpbmUpLCBcXHIgKGNhcnJpYWdlXG4iCisiICByZXR1cm4pIG9yIFxcXFwgKHBsYWluIGJhY2tzbGFzaCkuIFBhY2thZ2UgaW5mb3JtYXRpb24gY2FuIGJlIGluY2x1ZGVkXG4iCisiICBieSBpbnNlcnRpbmcgdmFyaWFibGUgcmVmZXJlbmNlcyB0byBwYWNrYWdlIGZpZWxkcyB1c2luZyB0aGUgJHt2YXJbOyIKKyJ3aWR0aF19XG4iCisiICBzeW50YXguIEZpZWxkcyB3aWxsIGJlIHJpZ2h0LWFsaWduZWQgdW5sZXNzIHRoZSB3aWR0aCBpcyBuZWdhdGl2ZSBpbiAiCisid2hpY2hcbiIKKyIgIGNhc2UgbGVmdCBhbGlnbm1lbnQgd2lsbCBiZSB1c2VkLlxuIgorbXNnc3RyICIiCisi5qC85byP6Kqe5rOV77yaXG4iCisiICDjgI7moLzlvI/jgI/mmK/mjIflnKjovLjlh7rlpZfku7bos4foqIrmmYLmiYDmnIPmjqHnlKjnmoTlrZfkuLLjgILlj6/ku6XlnKjmoLzlvI/oo6Hkvb/nlKjku7vkvZXnmoTot7PohKvlrZdcbiIKKyIgIOS4su+8jOWDj+aYryBcXG7vvIjplovmlrDooYzvvInjgIFcXHLvvIjpgYrmqJnov5Tlm57vvInmiJYgXFxcXO+8iOWPjeaWnOe3mu+8ieOAguWll+S7tueahOizh+ioiuWPr+eUqFxuIgorIiAg5o+S5YWl5p+Q5YCL6K6K5pW455qE5pa55byP5L6G5byV55So77yM5a6D5piv5LulICR7dmFyWzt3aWR0aF19IOS5i+mhnueahOiqnuazleS7peWPg+eFp+iHs+Wll+S7tuijoVxuIgorIiAg55qE5ZCE5YCL5qyE5L2N44CC5ZCE5YCL5qyE5L2N5pyD5piv5ZCR5Y+z5bCN6b2K77yM6Zmk6Z2e5a+s5bqm5piv6LKg55qE77yN6YKj5Zyo5q2k5oOF5rOB5LiL5pyD5o6h55So5ZCR5bemXG4iCisiICDlsI3pvYrjgIJcbiIKKworIzogc3JjL3F1ZXJ5Y21kLmM6NjU2Cittc2dpZCAiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBxdWVyeWluZyBwYWNrYWdlcy4iCittc2dzdHIgIiIKKworIzogc3JjL3JlbW92ZS5jOjg4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJpZ25vcmluZyByZXF1ZXN0IHRvIHJlbW92ZSAlLjI1MHMgd2hpY2ggaXNuJ3QgaW5zdGFsbGVkLiIKK21zZ3N0ciAiZHBrZyAtIOitpuWRiu+8muW/veeVpeS6huenu+mZpCAlLjI1MHMg55qE6KaB5rGC77yM5Zug54K65a6D5Lim5rKS5pyJ6KKr5a6J6KOd44CCXG4iCisKKyM6IHNyYy9yZW1vdmUuYzo5NQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorImlnbm9yaW5nIHJlcXVlc3QgdG8gcmVtb3ZlICUuMjUwcywgb25seSB0aGUgY29uZmlnXG4iCisiIGZpbGVzIG9mIHdoaWNoIGFyZSBvbiB0aGUgc3lzdGVtLiBVc2UgLS1wdXJnZSB0byByZW1vdmUgdGhlbSB0b28uIgorbXNnc3RyICIiCisiZHBrZyAtIOitpuWRiu+8muW/veeVpeS6huenu+mZpCAlLjI1MHMg55qE6KaB5rGC77yM5a6D5Zyo57O757Wx5Lit5YOF5Ymp5LiL6Kit5a6a5qqU44CCXG4iCisiIOWPr+S9v+eUqCAtLXB1cmdlIOWwh+mAmeS6m+ioreWumuaqlOS4gOS9teWIqumZpOOAglxuIgorCisjOiBzcmMvcmVtb3ZlLmM6MTAzCittc2dpZCAiVGhpcyBpcyBhbiBlc3NlbnRpYWwgcGFja2FnZSAtIGl0IHNob3VsZCBub3QgYmUgcmVtb3ZlZC4iCittc2dzdHIgIumAmeaYr+S4gOWAi+WfuuacrOWll+S7tiAtIOS4jeaHieeVtuaKiuWug+enu+mZpOOAgiIKKworIzogc3JjL3JlbW92ZS5jOjEyOAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZzogZGVwZW5kZW5jeSBwcm9ibGVtcyBwcmV2ZW50IHJlbW92YWwgb2YgJXM6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtn77ya55Sx5pa855u45L6d5LiK55qE5ZWP6aGM77yM5LiN6IO956e76ZmkICVz77yaXG4iCisiJXMiCisKKyM6IHNyYy9yZW1vdmUuYzoxMzAKK21zZ2lkICJkZXBlbmRlbmN5IHByb2JsZW1zIC0gbm90IHJlbW92aW5nIgorbXNnc3RyICLnm7jkvp3llY/poYwgLSDkuI3pgLLooYznp7vpmaQiCisKKyM6IHNyYy9yZW1vdmUuYzoxMzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorImRwa2c6ICVzOiBkZXBlbmRlbmN5IHByb2JsZW1zLCBidXQgcmVtb3ZpbmcgYW55d2F5IGFzIHlvdSByZXF1ZXN0ZWQ6XG4iCisiJXMiCittc2dzdHIgIiIKKyJkcGtn77yaJXPvvJrnmbznlJ/nm7jkvp3kuIrnmoTllY/poYzvvIzkvYbpgoTmmK/mh4nmgqjopoHmsYLlvLfliLblsIflhbbnp7vpmaTvvJpcbiIKKyIlcyIKKworIzogc3JjL3JlbW92ZS5jOjE0MgorbXNnaWQgIiIKKyJQYWNrYWdlIGlzIGluIGEgdmVyeSBiYWQgaW5jb25zaXN0ZW50IHN0YXRlIC0geW91IHNob3VsZFxuIgorIiByZWluc3RhbGwgaXQgYmVmb3JlIGF0dGVtcHRpbmcgYSByZW1vdmFsLiIKK21zZ3N0ciAi6Kmy5aWX5Lu25q2j6JmV5pa85qW15bqm5re35LqC55qE54uA5oWLIC0g5oKo5pyA5aW96IO95Zyo56e76Zmk5a6D5LmL5YmN5YWI6YeN5paw5a6J6KOd5LiA5qyh44CCIgorCisjOiBzcmMvcmVtb3ZlLmM6MTQ5CisjLCBjLWZvcm1hdAorbXNnaWQgIldvdWxkIHJlbW92ZSBvciBwdXJnZSAlcyAuLi5cbiIKK21zZ3N0ciAi5bCH6KaB56e76Zmk5oiW5riF6ZmkICVzIC4uLlxuIgorCisjOiBzcmMvcmVtb3ZlLmM6MTU3CisjLCBjLWZvcm1hdAorbXNnaWQgIlJlbW92aW5nICVzIC4uLlxuIgorbXNnc3RyICLmraPlnKjnp7vpmaQgJXMgLi4uXG4iCisKKyM6IHNyYy9yZW1vdmUuYzoyNzUgc3JjL3JlbW92ZS5jOjM2NgorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIndoaWxlIHJlbW92aW5nICUuMjUwcywgdW5hYmxlIHRvIHJlbW92ZSBkaXJlY3RvcnkgJyUuMjUwcyc6ICVzIC0gZGlyZWN0b3J5ICIKKyJtYXkgYmUgYSBtb3VudCBwb2ludD8iCittc2dzdHIgIiIKKyJkcGtnIC0g6K2m5ZGK77ya5Zyo56e76ZmkICUuMjUwcyDmmYLvvIznhKHms5XliKrpmaTnm67pjIQgYCUuMjUwcyfvvJolcyAtIOipsuebrumMhOacg+S4jeacg+aYr+S4gOWAiyIKKyLmjpvovInpu57lkaLvvJ9cbiIKKworIzogc3JjL3JlbW92ZS5jOjI4OQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHNlY3VyZWx5IHJlbW92ZSAnJS4yNTBzJyIKK21zZ3N0ciAi54Sh5rOV5bu656uLIGAlLjI1NXMnIgorCisjOiBzcmMvcmVtb3ZlLmM6MzYxCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ3aGlsZSByZW1vdmluZyAlLjI1MHMsIGRpcmVjdG9yeSAnJS4yNTBzJyBub3QgZW1wdHkgc28gbm90IHJlbW92ZWQuIgorbXNnc3RyICIiCisiZHBrZyAtIOitpuWRiu+8muWcqOenu+mZpCAlLjI1MHMg5pmC77yM55uu6YyEIGAlLjI1MHMnIOS4jeaYr+epuueahO+8jOaJgOS7peS4jeacg+Wwh+WFtuWIqumZpOOAglxuIgorCisjOiBzcmMvcmVtb3ZlLmM6MzgzCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJjYW5ub3QgcmVtb3ZlIGAlLjI1MHMnIgorbXNnaWQgImNhbm5vdCByZW1vdmUgJyUuMjUwcyciCittc2dzdHIgIueEoeazleenu+mZpCBgJS4yNTBzJyIKKworIzogc3JjL3JlbW92ZS5jOjQwOQorIywgYy1mb3JtYXQKK21zZ2lkICJQdXJnaW5nIGNvbmZpZ3VyYXRpb24gZmlsZXMgZm9yICVzIC4uLlxuIgorbXNnc3RyICLmraPlnKjmuIXpmaQgJXMg55qE6Kit5a6a5qqUIC4uLlxuIgorCisjOiBzcmMvcmVtb3ZlLmM6NDU5CisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZW1vdmUgb2xkIGNvbmZpZyBmaWxlIGAlLjI1MHMnICg9IGAlLjI1MHMnKSIKK21zZ3N0ciAi54Sh5rOV5Yiq6Zmk5Y6f5pyJ55qE6Kit5a6a5qqUIGAlLjI1MHMnICg9IGAlLjI1MHMnICkiCisKKyM6IHNyYy9yZW1vdmUuYzo0NzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlYWQgY29uZmlnIGZpbGUgZGlyIGAlLjI1MHMnIChmcm9tIGAlLjI1MHMnKSIKK21zZ3N0ciAi54Sh5rOV6K6A5Y+W6Kit5a6a5qqU55uu6YyEIGAlLjI1MHMn77yI5b6eIGAlLjI1MHMn77yJIgorCisjOiBzcmMvcmVtb3ZlLmM6NTEwCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZW1vdmUgb2xkIGJhY2t1cCBjb25maWcgZmlsZSBgJS4yNTBzJyAob2YgYCUuMjUwcycpIgorbXNnc3RyICLnhKHms5XliKrpmaTljp/mnInnmoToqK3lrprmqpTlgpnku70gYCUuMjUwcyfvvIhgJS4yNTBzJyDnmoTvvIkiCisKKyM6IHNyYy9yZW1vdmUuYzo1NjgKK21zZ2lkICJjYW5ub3QgcmVtb3ZlIG9sZCBmaWxlcyBsaXN0IgorbXNnc3RyICLnhKHms5XliKrpmaTljp/mnInnmoTmqpTmoYjliJfooagiCisKKyM6IHNyYy9yZW1vdmUuYzo1NzQKK21zZ2lkICJjYW4ndCByZW1vdmUgb2xkIHBvc3RybSBzY3JpcHQiCittc2dzdHIgIueEoeazleWIqumZpOWOn+acieeahCBwb3N0cm0gc2NyaXB0IgorCisjOiBzcmMvc2VsZWN0LmM6MTE1CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW9mIGluIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICLlnKjnrKwgJWQg6KGM55qE5aWX5Lu25ZCN56ix5Lit5pyJ6aCQ5pyf5LmL5aSW55qEIGVvZiIKKworIzogc3JjL3NlbGVjdC5jOjExNgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBsaW5lIGluIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICLlnKjnrKwgJWQg6KGM55qE5aWX5Lu25ZCN56ix5Lit5oSP5aSW5Zyw55m854++5q2k6KGM57WQ5p2fIgorCisjOiBzcmMvc2VsZWN0LmM6MTIyCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW9mIGFmdGVyIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICLlnKjnrKwgJWQg6KGM55qE5aWX5Lu25ZCN56ix5b6M5pyJ6aCQ5pyf5LmL5aSW55qEIGVvZiIKKworIzogc3JjL3NlbGVjdC5jOjEyMworIywgYy1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBsaW5lIGFmdGVyIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkIgorbXNnc3RyICLlnKjnrKwgJWQg6KGM55qE5aWX5Lu25ZCN5b6M5oSP5aSW5Zyw55m854++5q2k6KGM57WQ5p2fIgorCisjOiBzcmMvc2VsZWN0LmM6MTM2CisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZGF0YSBhZnRlciBwYWNrYWdlIGFuZCBzZWxlY3Rpb24gYXQgbGluZSAlZCIKK21zZ3N0ciAi5Zyo56ysICVkIOihjOeahOWll+S7tuWPiumBuOaTh+mgheebruS5i+W+jOaciemgkOacn+S5i+WklueahOizh+aWmSIKKworIzogc3JjL3NlbGVjdC5jOjEzOQorIywgYy1mb3JtYXQKK21zZ2lkICJpbGxlZ2FsIHBhY2thZ2UgbmFtZSBhdCBsaW5lICVkOiAlLjI1MHMiCittc2dzdHIgIuWcqOesrCAlZCDooYzmnInpnZ7ms5XnmoTlpZfku7blkI3nqLHvvJolLjI1MHMiCisKKyM6IHNyYy9zZWxlY3QuYzoxNDMKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5rbm93biB3YW50ZWQgc3RhdHVzIGF0IGxpbmUgJWQ6ICUuMjUwcyIKK21zZ3N0ciAi5Zyo56ysICVkIOihjOaJgOW+l+WIsOeahOeLgOaFi+S4jeaYju+8miUuMjUwcyIKKworIzogc3JjL3NlbGVjdC5jOjE0OQorbXNnaWQgInJlYWQgZXJyb3Igb24gc3RhbmRhcmQgaW5wdXQiCittc2dzdHIgIuW+nuaomea6lui8uOWFpeiugOWPluizh+aWmeaZgueZvOeUn+mMr+iqpCIKKworIzogc3JjL3N0YXRjbWQuYzo1MgorbXNnaWQgIlVzZSAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgb3ZlcnJpZGluZyBmaWxlIHN0YXQgaW5mb3JtYXRpb24uIgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0Y21kLmM6NjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsIDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDYtMjAwOSBHdWlsbGVtIEpvdmVyLlxuIgorbXNnc3RyICIiCisiXG4iCisiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMC0yMDAyIFdpY2hlcnQgQWtrZXJtYW4uIgorCisjOiBzcmMvc3RhdGNtZC5jOjgxCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC0tYWRkIDxvd25lcj4gPGdyb3VwPiA8bW9kZT4gPGZpbGU+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkIGEgbmV3IGVudHJ5IGludG8gdGhlIGRhdGFiYXNlLlxuIgorIiAgLS1yZW1vdmUgPGZpbGU+ICAgICAgICAgIHJlbW92ZSBmaWxlIGZyb20gdGhlIGRhdGFiYXNlLlxuIgorIiAgLS1saXN0IFs8Z2xvYi1wYXR0ZXJuPl0gIGxpc3QgY3VycmVudCBvdmVycmlkZXMgaW4gdGhlIGRhdGFiYXNlLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHNyYy9zdGF0Y21kLmM6ODkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIHNldCB0aGUgZGlyZWN0b3J5IHdpdGggdGhlIHN0YXRvdmVycmlkZSBmaWxlLlxuIgorIiAgLS11cGRhdGUgICAgICAgICAgICAgICAgIGltbWVkaWF0ZWx5IHVwZGF0ZSBmaWxlIHBlcm1pc3Npb25zLlxuIgorIiAgLS1mb3JjZSAgICAgICAgICAgICAgICAgIGZvcmNlIGFuIGFjdGlvbiBldmVuIGlmIGEgc2FuaXR5IGNoZWNrIGZhaWxzLlxuIgorIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHF1aWV0IG9wZXJhdGlvbiwgbWluaW1hbCBvdXRwdXQuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorbXNnc3RyICIiCisi55So5rOV77yaJXMgWzzpgbjpoIU+IC4uLl0gPOWRveS7pD5cbiIKKyJcbiIKKyLlkb3ku6TvvJpcbiIKKyIgIC0tYWRkIDzmk4HmnInogIU+IDznvqTntYQ+IDzmqKHlvI8+IDzmqpTmoYg+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAg5paw5aKe5LiA5YCL5paw6aCF55uu6Iez6LOH5paZ5bqr44CCXG4iCisiICAtLXJlbW92ZSA85qqU5qGIPiAgICAgICAgICDnlLHos4fmlpnluqvkuK3np7vpmaTmqpTmoYjjgIJcbiIKKyIgIC0tbGlzdCBbPOavlOWwjeihqOmBlOW8jz5dICAgIOWIl+WHuuebruWJjeizh+aWmeW6q+S4reeahOW8t+WItumBuOmgheOAglxuIgorIlxuIgorIumBuOmghe+8mlxuIgorIiAgLS1hZG1pbmRpciA855uu6YyEPiAgICAgICAg6Kit5a6aIHN0YXRvdmVycmlkZSDmqpTmiYDkvb/nlKjnmoTnm67pjITjgIJcbiIKKyIgIC0tdXBkYXRlICAgICAgICAgICAgICAgICDnq4vljbPmm7TmlrDmqpTmoYjmrIrpmZDjgIJcbiIKKyIgIC0tZm9yY2UgICAgICAgICAgICAgICAgICDljbPkvb/mnKrog73pgJrpgY7lrozmlbTmqqLpqZfvvIzkuZ/lvLfliLbpgLLooYzmn5DlgIvli5XkvZzjgIJcbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICDlronpnZzmqKHlvI/vvIzlhJjph4/kuI3poa/npLroqIrmga/jgIJcbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICDpoa/npLrpgJnlgIvoqqrmmI7oqIrmga/jgIJcbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICDpoa/npLrniYjmnKzos4foqIrjgIJcbiIKKworIzogc3JjL3N0YXRjbWQuYzoxMTYKK21zZ2lkICJzdHJpcHBpbmcgdHJhaWxpbmcgLyIKK21zZ3N0ciAi6Zmk5Y6757WQ5bC+55qEIC8iCisKKyM6IHNyYy9zdGF0Y21kLmM6MjA3CisjLCBmdXp6eQorbXNnaWQgImNhbm5vdCBvcGVuIG5ldyBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAi54Sh5rOV6ZaL5ZWf5paw55qEIHN0YXRvdmVycmlkZSDmqpTvvJolcyIKKworIzogc3JjL3N0YXRjbWQuYzoyMjIKKyMsIGZ1enp5Cittc2dpZCAiZXJyb3IgcmVtb3Zpbmcgc3RhdG92ZXJyaWRlLW9sZCIKK21zZ3N0ciAi5Zyo56e76ZmkIHN0YXRvdmVycmlkZS1vbGQg5pmC55m855Sf6Yyv6Kqk77yaJXMiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjI0CisjLCBmdXp6eQorbXNnaWQgImVycm9yIGNyZWF0aW5nIG5ldyBzdGF0b3ZlcnJpZGUtb2xkIgorbXNnc3RyICLlnKjlu7rnq4vmlrDnmoQgc3RhdG92ZXJyaWRlLW9sZCDmmYLnmbznlJ/pjK/oqqTvvJolcyIKKworIzogc3JjL3N0YXRjbWQuYzoyMjYKKyMsIGZ1enp5Cittc2dpZCAiZXJyb3IgaW5zdGFsbGluZyBuZXcgc3RhdG92ZXJyaWRlIgorbXNnc3RyICLlnKjlronoo53mlrDnmoQgc3RhdG92ZXJyaWRlIOaZgueZvOeUn+mMr+iqpO+8miVzIgorCisjOiBzcmMvc3RhdGNtZC5jOjI0NgorbXNnaWQgIi0tYWRkIG5lZWRzIGZvdXIgYXJndW1lbnRzIgorbXNnc3RyICItLWFkZCDpnIDopoHlm5vlgIvlj4PmlbgiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjU2CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiQW4gb3ZlcnJpZGUgZm9yICclcycgYWxyZWFkeSBleGlzdHMsIGJ1dCAtLWZvcmNlIHNwZWNpZmllZCBzbyB3aWxsIGJlICIKKyJpZ25vcmVkLiIKK21zZ3N0ciAi5L2G5Y+I6Kit5a6a5LqGIC0tZm9yY2XvvIzmiYDku6XoqbLpgbjpoIXmnIPooqvlv73nlaXjgIIiCisKKyM6IHNyYy9zdGF0Y21kLmM6MjYwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJBbiBvdmVycmlkZSBmb3IgJyVzJyBhbHJlYWR5IGV4aXN0cywgYWJvcnRpbmcuIgorbXNnc3RyICLlt7LoqK3lrprkuoYgXCIlc1wiIOeahOW8t+WItumBuOmghe+8jCIKKworIzogc3JjL3N0YXRjbWQuYzoyNzIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIi0tdXBkYXRlIGdpdmVuIGJ1dCAlcyBkb2VzIG5vdCBleGlzdCIKK21zZ3N0ciAi6K2m5ZGK77ya5bex6Kit5a6a54K6IC0tdXBkYXRlIOS9hiAlcyDkuI3lrZjlnKgiCisKKyM6IHNyYy9zdGF0Y21kLmM6Mjk2Cittc2dpZCAiTm8gb3ZlcnJpZGUgcHJlc2VudC4iCittc2dzdHIgIuaykuacieioreWumuW8t+WItumBuOmgheOAgiIKKworIzogc3JjL3N0YXRjbWQuYzozMDQKKyMsIGZ1enp5Cittc2dpZCAiLS11cGRhdGUgaXMgdXNlbGVzcyBmb3IgLS1yZW1vdmUiCittc2dzdHIgIuitpuWRiu+8muWcqCAtLXJlbW92ZSDmmYLvvIwtLXVwZGF0ZSDmmK/nhKHmlYjnmoQiCisKKyM6IHNyYy9zdGF0ZGIuYzo1OQorIywgZnV6enkKK21zZ2lkICJzeW50YXggZXJyb3I6IGludmFsaWQgdWlkIGluIHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICLlnKjlronoo53mlrDnmoQgc3RhdG92ZXJyaWRlIOaZgueZvOeUn+mMr+iqpO+8miVzIgorCisjOiBzcmMvc3RhdGRiLmM6NjQKKyMsIGMtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yOiB1bmtub3duIHVzZXIgJyVzJyBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzcmMvc3RhdGRiLmM6ODMKKyMsIGZ1enp5Cittc2dpZCAic3ludGF4IGVycm9yOiBpbnZhbGlkIGdpZCBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAi5Zyo5a6J6KOd5paw55qEIHN0YXRvdmVycmlkZSDmmYLnmbznlJ/pjK/oqqTvvJolcyIKKworIzogc3JjL3N0YXRkYi5jOjg4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3I6IHVua25vd24gZ3JvdXAgJyVzJyBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAi54Sh5rOV6ZaL5ZWfIHN0YXRvdmVycmlkZSDmqpQiCisKKyM6IHNyYy9zdGF0ZGIuYzoxMDQKKyMsIGZ1enp5Cittc2dpZCAic3ludGF4IGVycm9yOiBpbnZhbGlkIG1vZGUgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIueEoeazlemWi+WVnyBzdGF0b3ZlcnJpZGUg5qqUIgorCisjOiBzcmMvc3RhdGRiLmM6MTI3Cittc2dpZCAiZmFpbGVkIHRvIG9wZW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIueEoeazlemWi+WVnyBzdGF0b3ZlcnJpZGUg5qqUIgorCisjOiBzcmMvc3RhdGRiLmM6MTM0Cittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IHN0YXRvdmVycmlkZSBmaWxlIgorbXNnc3RyICLnhKHms5UgZnN0YXQgc3RhdG92ZXJyaWRlIOaqlCIKKworIzogc3JjL3N0YXRkYi5jOjEzNworbXNnaWQgImZhaWxlZCB0byBmc3RhdCBwcmV2aW91cyBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAi54Sh5rOVIGZzdGF0IOWOn+acieeahCBzdGF0b3ZlcnJpZGUg5qqUIgorCisjOiBzcmMvc3RhdGRiLmM6MTYyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJzdGF0b3ZlcnJpZGUgZmlsZSBgJS4yNTBzJyIKK21zZ2lkICJyZWFkaW5nIHN0YXRvdmVycmlkZSBmaWxlICclLjI1MHMnIgorbXNnc3RyICJzdGF0b3ZlcnJpZGUg5qqUIGAlLjI1MHMnIgorCisjOiBzcmMvc3RhdGRiLmM6MTY5CisjLCBmdXp6eQorbXNnaWQgInN0YXRvdmVycmlkZSBmaWxlIGlzIG1pc3NpbmcgZmluYWwgbmV3bGluZSIKK21zZ3N0ciAic3RhdG92ZXJyaWRlIOaqlOijoeacieepuuihjCIKKworIzogc3JjL3N0YXRkYi5jOjE3MworbXNnaWQgInN0YXRvdmVycmlkZSBmaWxlIGNvbnRhaW5zIGVtcHR5IGxpbmUiCittc2dzdHIgInN0YXRvdmVycmlkZSDmqpToo6HmnInnqbrooYwiCisKKyM6IHNyYy9zdGF0ZGIuYzoxNzggc3JjL3N0YXRkYi5jOjE5MCBzcmMvc3RhdGRiLmM6MjAyCisjLCBmdXp6eQorbXNnaWQgInN5bnRheCBlcnJvciBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIKK21zZ3N0ciAi54Sh5rOV6ZaL5ZWfIHN0YXRvdmVycmlkZSDmqpQiCisKKyM6IHNyYy9zdGF0ZGIuYzoxODYgc3JjL3N0YXRkYi5jOjE5OCBzcmMvc3RhdGRiLmM6MjEwCisjLCBmdXp6eQorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGxpbmUgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCittc2dzdHIgIuWcqOesrCAlZCDooYznmoTlpZfku7blkI3nqLHkuK3mhI/lpJblnLDnmbznj77mraTooYzntZDmnZ8iCisKKyM6IHNyYy9zdGF0ZGIuYzoyMTQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIm11bHRpcGxlIHN0YXR1c292ZXJyaWRlcyBwcmVzZW50IGZvciBmaWxlICclLjI1MHMnIgorbXNnc3RyICJzdGF0b3ZlcnJpZGUg5qqUIGAlLjI1MHMnIgorCisjOiBzcmMvdHJpZ2NtZC5jOjQ2Cittc2dpZCAiVHlwZSBkcGtnLXRyaWdnZXIgLS1oZWxwIGZvciBoZWxwIGFib3V0IHRoaXMgdXRpbGl0eS4iCittc2dzdHIgIui8uOWFpSBkcGtnLXRyaWdnZXIgLS1oZWxwIOS7peWPluW+l+mAmeWAi+W3peWFt+eahOiqquaYjuOAgiIKKworIzogc3JjL3RyaWdjbWQuYzo1MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiRGViaWFuICVzIHBhY2thZ2UgdHJpZ2dlciB1dGlsaXR5IHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkRlYmlhbiAlcyDlpZfku7bop7jnmbznqIvlvI/lt6XlhbfjgIJcbiIKKworIzogc3JjL3RyaWdjbWQuYzo2NworIywgYy1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9ucz4gLi4uXSA8dHJpZ2dlci1uYW1lPlxuIgorIiAgICAgICAlcyBbPG9wdGlvbnM+IC4uLl0gPGNvbW1hbmQ+XG4iCisiXG4iCittc2dzdHIgIiIKKyLnlKjms5XvvJolcyBbPOmBuOmghT4gLi4uXSA86Ke455m856iL5byPPlxuIgorIiAgICAgICVzIFs86YG46aCFPiAuLi5dIDzlkb3ku6Q+XG4iCisiXG4iCisKKyM6IHNyYy90cmlnY21kLmM6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIkNvbW1hbmRzOlxuIgorIiAgLS1jaGVjay1zdXBwb3J0ZWQgICAgICAgICAgICAgICAgQ2hlY2sgaWYgdGhlIHJ1bm5pbmcgZHBrZyBzdXBwb3J0cyAiCisidHJpZ2dlcnMuXG4iCisiXG4iCittc2dzdHIgIiIKKyLmjIfku6TvvJpcbiIKKyIgIC0tY2hlY2stc3VwcG9ydGVkICAgICAgICAgICAgICAgIOaqouafpeato+WcqOmBi+S9nOS4reeahCBkcGtnIOaYr+WQpuaUr+aPtOinuOeZvOeoi+W8j+OAglxuIgorIlxuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjgyCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hZG1pbmRpcj08ZGlyZWN0b3J5PiAgICAgICAgICAgVXNlIDxkaXJlY3Rvcnk+IGluc3RlYWQgb2YgJXMuXG4iCisiICAtLWJ5LXBhY2thZ2U9PHBhY2thZ2U+ICAgICAgICAgICBPdmVycmlkZSB0cmlnZ2VyIGF3YWl0ZXIgKG5vcm1hbGx5IHNldFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBieSBkcGtnKS5cbiIKKyIgIC0tbm8tYXdhaXQgICAgICAgICAgICAgICAgICAgICAgIE5vIHBhY2thZ2UgbmVlZHMgdG8gYXdhaXQgdGhlICIKKyJwcm9jZXNzaW5nLlxuIgorIiAgLS1uby1hY3QgICAgICAgICAgICAgICAgICAgICAgICAgSnVzdCB0ZXN0IC0gZG9uJ3QgYWN0dWFsbHkgY2hhbmdlICIKKyJhbnl0aGluZy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIumBuOmghe+8mlxuIgorIiAgLS1hZG1pbmRpcj0855uu6YyEPiAgICAgICAgICAgICAgICDkvb/nlKggPOebrumMhD4g5Lul5Y+W5LujICVz44CCXG4iCisiICAtLWJ5LXBhY2thZ2U9POWll+S7tj4gICAgICAgICAgICAgIOW8t+WItuS9v+eUqOWFtuWug+eahOeoi+W8j+S7peetieW+heinuOeZvOeoi+W8j+WujOaIkFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg77yI6YCa5bi45piv55SxIGRwa2cg5oyH5a6a77yJ44CCXG4iCisiICAtLW5vLWF3YWl0ICAgICAgICAgICAgICAgICAgICAgICDmspLmnInlpZfku7bpnIDnrYnlvoXpgJnlgIvomZXnkIbpgY7nqIvjgIJcbiIKKyIgIC0tbm8tYWN0ICAgICAgICAgICAgICAgICAgICAgICAgIOWDhea4rOippiAtIOS4jeimgeecn+eahOS/ruaUueS7u+S9leadseilv+OAglxuIgorIlxuIgorCisjOiBzcmMvdHJpZ2NtZC5jOjE1MgorIywgYy1mb3JtYXQKK21zZ2lkICIlczogdHJpZ2dlcnMgZGF0YSBkaXJlY3Rvcnkgbm90IHlldCBjcmVhdGVkXG4iCittc2dzdHIgIiVz77ya6Ke455m856iL5byP55qE6LOH5paZ55uu6YyE5bCa5pyq5bu656uLXG4iCisKKyM6IHNyYy90cmlnY21kLmM6MTU2CisjLCBjLWZvcm1hdAorbXNnaWQgIiVzOiB0cmlnZ2VyIHJlY29yZHMgbm90IHlldCBpbiBleGlzdGVuY2VcbiIKK21zZ3N0ciAiJXPvvJrop7jnmbznqIvlvI/nmoToqJjpjITkuKbmnKrlrZjlnKhcbiIKKworIzogc3JjL3RyaWdjbWQuYzoyMDUKKyMsIGZ1enp5Cittc2dpZCAidGFrZXMgb25lIGFyZ3VtZW50LCB0aGUgdHJpZ2dlciBuYW1lIgorbXNnc3RyICJkcGtnLXRyaWdnZXIg5Y+q6ZyA5LiA5YCL5Y+D5pW477yM6Ke455m856iL5byP55qE5ZCN56ixIgorCisjOiBzcmMvdHJpZ2NtZC5jOjIxMAorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiZHBrZy10cmlnZ2VyIG11c3QgYmUgY2FsbGVkIGZyb20gYSBtYWludGFpbmVyIHNjcmlwdCAob3Igd2l0aCBhIC0tYnktIgorI3wgInBhY2thZ2Ugb3B0aW9uKSIKK21zZ2lkICJtdXN0IGJlIGNhbGxlZCBmcm9tIGEgbWFpbnRhaW5lciBzY3JpcHQgKG9yIHdpdGggYSAtLWJ5LXBhY2thZ2Ugb3B0aW9uKSIKK21zZ3N0ciAiIgorImRwa2ctdHJpZ2dlciDlv4XpoIjnlLHmn5DlgIvntq3orbfogIXnmoQgU2NyaXB077yI5oiW5pCt6YWNIC0tYnktcGFja2FnZSDpgbjpoIXvvInmiYDlkbzlj6siCisKKyM6IHNyYy90cmlnY21kLmM6MjE1CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJkcGtnLXRyaWdnZXI6IGlsbGVnYWwgYXdhaXRlZCBwYWNrYWdlIG5hbWUgYCUuMjUwcyc6ICUuMjUwcyIKK21zZ2lkICJpbGxlZ2FsIGF3YWl0ZWQgcGFja2FnZSBuYW1lICclLjI1MHMnOiAlLjI1MHMiCittc2dzdHIgImRwa2ctdHJpZ2dlcu+8muS4jeWQiOazleeahOetieW+heWll+S7tuWQjeeosSBgJS4yNTBzJ++8miUuMjUwcyIKKworIzogc3JjL3RyaWdjbWQuYzoyMjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgdHJpZ2dlciBuYW1lIGAlLjI1MHMnOiAlLjI1MHMiCittc2dzdHIgImRwa2ctdHJpZ2dlcu+8muS4jeato+eiuueahOinuOeZvOeoi+W8j+WQjeeosSBgJS4yNTBzJ++8miUuMjUwcyIKKworIzogc3JjL3RyaWdwcm9jLmM6MjUwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyIlczogY3ljbGUgZm91bmQgd2hpbGUgcHJvY2Vzc2luZyB0cmlnZ2VyczpcbiIKKyIgY2hhaW4gb2YgcGFja2FnZXMgd2hvc2UgdHJpZ2dlcnMgYXJlIG9yIG1heSBiZSByZXNwb25zaWJsZTpcbiIKK21zZ3N0ciAiIgorIiVzOiDlnKjomZXnkIbop7jnmbznqIvlvI/mmYLnmbznlJ/lvqrnkrDvvJpcbiIKKyIg5Y+v6IO95piv5Zug54K66YCZ5Lqb6YCj6Y6W5aWX5Lu25omA6ZmE5bi255qE6Ke455m856iL5byP5omA5byV6LW355qE77yaXG4iCisKKyM6IHNyYy90cmlncHJvYy5jOjI1OAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiIHBhY2thZ2VzJyBwZW5kaW5nIHRyaWdnZXJzIHdoaWNoIGFyZSBvciBtYXkgYmUgdW5yZXNvbHZhYmxlOlxuIgorbXNnc3RyICIiCisiXG4iCisiIOWll+S7tuWwmuW+hemAsuihjOeahOinuOeZvOeoi+W8j++8iOacieWPr+iDve+8ieeEoeazleino+axuu+8mlxuIgorCisjOiBzcmMvdHJpZ3Byb2MuYzoyODEKK21zZ2lkICJ0cmlnZ2VycyBsb29waW5nLCBhYmFuZG9uZWQiCittc2dzdHIgIuinuOeZvOeoi+W8j+mZt+WFpei/tOWciO+8jOW3suaUvuajhOWft+ihjCIKKworIzogc3JjL3RyaWdwcm9jLmM6MzEyCisjLCBjLWZvcm1hdAorbXNnaWQgIlByb2Nlc3NpbmcgdHJpZ2dlcnMgZm9yICVzIC4uLlxuIgorbXNnc3RyICLmraPlnKjpgLLooYwgJXMg55qE6Ke455m856iL5byPIC4uLlxuIgorCisjOiBzcmMvdXBkYXRlLmM6NTIKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIi0tJXMgbmVlZHMgZXhhY3RseSBvbmUgUGFja2FnZXMgZmlsZSBhcmd1bWVudCIKK21zZ2lkICItLSVzIG5lZWRzIGV4YWN0bHkgb25lIFBhY2thZ2VzLWZpbGUgYXJndW1lbnQiCittc2dzdHIgIi0tJXMg6ZyA6KaB5LiA5YCL5aWX5Lu25ZCN56ix5L2c54K65Y+D5pW4IgorCisjOiBzcmMvdXBkYXRlLmM6NjIKK21zZ2lkICJ1bmFibGUgdG8gYWNjZXNzIGRwa2cgc3RhdHVzIGFyZWEgZm9yIGJ1bGsgYXZhaWxhYmxlIHVwZGF0ZSIKK21zZ3N0ciAi54Sh5rOV5a2Y5Y+WIGRwa2cg55qE54uA5oWL5bqr77yM5Lul6YCy6KGM5aSn6YeP5Y+v55So5aWX5Lu255qE5pu05pawIgorCisjOiBzcmMvdXBkYXRlLmM6NjQKK21zZ2lkICJidWxrIGF2YWlsYWJsZSB1cGRhdGUgcmVxdWlyZXMgd3JpdGUgYWNjZXNzIHRvIGRwa2cgc3RhdHVzIGFyZWEiCittc2dzdHIgIuimgemAsuihjOWkp+mHj+WPr+eUqOWll+S7tueahOabtOaWsO+8jOmcgOacieWcqCBkcGtnIOeLgOaFi+W6q+S4iueahOWvq+WFpeasiumZkCIKKworIzogc3JjL3VwZGF0ZS5jOjcxCisjLCBjLWZvcm1hdAorbXNnaWQgIlJlcGxhY2luZyBhdmFpbGFibGUgcGFja2FnZXMgaW5mbywgdXNpbmcgJXMuXG4iCittc2dzdHIgIuato+WcqOWPluS7o+WPr+eUqOWll+S7tuizh+ioiu+8jOS9v+eUqCAlc+OAglxuIgorCisjOiBzcmMvdXBkYXRlLmM6NzQKKyMsIGMtZm9ybWF0Cittc2dpZCAiVXBkYXRpbmcgYXZhaWxhYmxlIHBhY2thZ2VzIGluZm8sIHVzaW5nICVzLlxuIgorbXNnc3RyICLmraPlnKjmm7TmlrDlj6/nlKjlpZfku7bnmoTos4foqIrvvIzkvb/nlKggJXPjgIJcbiIKKworIzogc3JjL3VwZGF0ZS5jOjEwMQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiSW5mb3JtYXRpb24gYWJvdXQgJWQgcGFja2FnZShzKSB3YXMgdXBkYXRlZC5cbiIKK21zZ2lkICJJbmZvcm1hdGlvbiBhYm91dCAlZCBwYWNrYWdlIHdhcyB1cGRhdGVkLlxuIgorbXNnaWRfcGx1cmFsICJJbmZvcm1hdGlvbiBhYm91dCAlZCBwYWNrYWdlcyB3YXMgdXBkYXRlZC5cbiIKK21zZ3N0clswXSAi5YWx5pu05paw5LqGICVkIOWAi+Wll+S7tueahOebuOmXnOizh+ioiuOAglxuIgorbXNnc3RyWzFdICLlhbHmm7TmlrDkuoYgJWQg5YCL5aWX5Lu255qE55u46Zec6LOH6KiK44CCXG4iCisKKyM6IHNyYy91cGRhdGUuYzoxMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIm9ic29sZXRlICctLSVzJyBvcHRpb24sIHVuYXZhaWxhYmxlIHBhY2thZ2VzIGFyZSBhdXRvbWF0aWNhbGx5IGNsZWFuZWQgdXAuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgbmFtZSAnJS41MHMuLi4nIGlzIHRvbyBsb25nIgorbXNnc3RyICLmqpTmoYjlkI3nqLEgJyUuNTBzLi4uJyDlpKrplbfkuoYiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTI5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBmaWxlIG5hbWUgJyUuMjUwcyciCittc2dzdHIgIueEoeazlemWi+WVn+S+hua6kOaqlCBgJS4yNTBzJyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoxODkKKyMsIGZ1enp5Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgY29udHJvbCBkaXJlY3RvcnkiCittc2dzdHIgIueEoeazlemWi+WVn+aaq+WtmOeahCBjb250cm9sIOebrumMhCIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoxOTEKKyMsIGZ1enp5Cittc2dpZCAiY29udHJvbCBkaXJlY3RvcnkgaXMgbm90IGEgZGlyZWN0b3J5IgorbXNnc3RyICLnhKHms5XoroDlj5YgaW5mbyDnm67pjIQiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MTkzCisjLCBjLWZvcm1hdAorbXNnaWQgImNvbnRyb2wgZGlyZWN0b3J5IGhhcyBiYWQgcGVybWlzc2lvbnMgJTAzbG8gKG11c3QgYmUgPj0wNzU1IGFuZCA8PTA3NzUpIgorbXNnc3RyICJjb250cm9sIOebrumMhOeahOasiumZkOeCuiAlMDNsbyDkuKbkuI3mraPnorrvvIjlv4XpoIggPj0wNzU1IOS4lCA8PTA3NTXvvIkiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjA0CisjLCBjLWZvcm1hdAorbXNnaWQgIm1haW50YWluZXIgc2NyaXB0IGAlLjUwcycgaXMgbm90IGEgcGxhaW4gZmlsZSBvciBzeW1saW5rIgorbXNnc3RyICLntq3orbfogIXnmoQgc2NyaXB0IGAlLjUwcycg5Lim6Z2e5LiA6Iis5qqU5qGI5oiW56ym6Jmf6YCj57WQIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjIwNworIywgYy1mb3JtYXQKK21zZ2lkICIiCisibWFpbnRhaW5lciBzY3JpcHQgYCUuNTBzJyBoYXMgYmFkIHBlcm1pc3Npb25zICUwM2xvIChtdXN0IGJlID49MDU1NSBhbmQgIgorIjw9MDc3NSkiCittc2dzdHIgIiIKKyLntq3orbfogIXnmoQgc2NyaXB0IGAlLjUwcycg55qE5qyK6ZmQ54K6ICUwM2xvIOS4puS4jeaBsOeVtu+8iOW/hemgiCA+PTA1NTUg5LiUIDw9MDc3Ne+8iSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyMTEKKyMsIGMtZm9ybWF0Cittc2dpZCAibWFpbnRhaW5lciBzY3JpcHQgYCUuNTBzJyBpcyBub3Qgc3RhdHRhYmxlIgorbXNnc3RyICLnhKHms5Xlj5blvpfntq3orbfogIXnmoQgc2NyaXB0IGAlLjUwcycg55qE54uA5oWLIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjIzNworbXNnaWQgImVycm9yIG9wZW5pbmcgY29uZmZpbGVzIGZpbGUiCittc2dzdHIgIuWcqOmWi+WVnyBjb25mZmlsZSDmqpTmmYLnmbznlJ/pjK/oqqQiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjQ2Cittc2dpZCAiZW1wdHkgc3RyaW5nIGZyb20gZmdldHMgcmVhZGluZyBjb25mZmlsZXMiCittc2dzdHIgIuWcqOS7pSBmZ2V0cyDoroDlj5YgY29uZmZpbGUg5pmC77yM5YKz5Zue5LqG56m65a2X5LiyIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI1MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgbmFtZSAnJS41MHMuLi4nIGlzIHRvbyBsb25nLCBvciBtaXNzaW5nIGZpbmFsIG5ld2xpbmUiCittc2dzdHIgIuitpuWRiu+8jGNvbmZmaWxlIOeahOWQjeeosSBgJS41MHMnIOmBjumVt++8jOaIluaYr+WwkeS6hue1kOWwvueahOaPm+ihjOespuiZn1xuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI2NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiY29uZmZpbGUgZmlsZW5hbWUgJyVzJyBjb250YWlucyB0cmFpbGluZyB3aGl0ZSBzcGFjZXMiCittc2dzdHIgIuitpuWRiu+8jGNvbmZmaWxlIOeahOaqlOahiOWQjeeosSBgJXMnIOeahOe1kOWwvuacieepuueZveWtl+WFg1xuIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI2NgorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBgJS4yNTBzJyBkb2VzIG5vdCBhcHBlYXIgaW4gcGFja2FnZSIKK21zZ3N0ciAi5Zyo5aWX5Lu26KOh5rKS5pyJ5om+5YiwIGNvbmZmaWxlIGAlLjI1MHMnIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjI2OAorIywgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBgJS4yNTBzJyBpcyBub3Qgc3RhdHRhYmxlIgorbXNnc3RyICLnhKHms5Xlj5blvpcgY29uZmZpbGUgYCUuNTBzJyDnmoTni4DmhYsiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MjcwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSAnJXMnIGlzIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgIuitpuWRiu+8jGNvbmZmaWxlIGAlcycg5Lim6Z2e5LiA6Iis5qqU5qGIXG4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6Mjc0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJjb25mZmlsZSBuYW1lICclcycgaXMgZHVwbGljYXRlZCIKK21zZ3N0ciAi5qyh6KaB5ZCN56ixICVzIOW3sumHjeikhyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzoyODcKK21zZ2lkICJlcnJvciByZWFkaW5nIGNvbmZmaWxlcyBmaWxlIgorbXNnc3RyICLlnKjoroDlj5YgY29uZmZpbGUg5qqU5pmC55m855Sf6Yyv6KqkIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjMzOQorbXNnaWQgInBhY2thZ2UgbmFtZSBoYXMgY2hhcmFjdGVycyB0aGF0IGFyZW4ndCBsb3dlcmNhc2UgYWxwaGFudW1zIG9yIGAtKy4nIgorbXNnc3RyICLlpZfku7bnmoTlkI3lrZflkKvmnInkuI3mmK/oi7HmlbjlrZfmiJYgYC0rLicg55qE5a2X5YWDIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjM0MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJyVzJyBjb250YWlucyB1c2VyLWRlZmluZWQgUHJpb3JpdHkgdmFsdWUgJyVzJyIKK21zZ3N0ciAi6K2m5ZGK77yMIGAlcycg5YyF5ZCr5LqG5L2/55So6ICF6Ieq6KiC55qE5YSq5YWI562J57SaIGAlcydcbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzozNDcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiclcycgY29udGFpbnMgdXNlci1kZWZpbmVkIGZpZWxkICclcyciCittc2dzdHIgIuitpuWRiu+8jCBgJXMnIOWMheWQq+S6huS9v+eUqOiAheiHquiogueahOashOS9jSBgJXMnXG4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6MzU4CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJpZ25vcmluZyAlZCB3YXJuaW5nIGFib3V0IHRoZSBjb250cm9sIGZpbGUocylcbiIKK21zZ2lkX3BsdXJhbCAiaWdub3JpbmcgJWQgd2FybmluZ3MgYWJvdXQgdGhlIGNvbnRyb2wgZmlsZShzKVxuIgorbXNnc3RyWzBdICJkcGtnLWRlYu+8muW/veeVpeS6hiAlZCDlgIvmnInpl5wgY29udHJvbCDos4foqIrmqpTnmoTorablkYpcbiIKK21zZ3N0clsxXSAiZHBrZy1kZWLvvJrlv73nlaXkuoYgJWQg5YCL5pyJ6ZecIGNvbnRyb2wg6LOH6KiK5qqU55qE6K2m5ZGKXG4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDAzIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDI5CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQzNgorIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGEgPGRpcmVjdG9yeT4gYXJndW1lbnQiCittc2dzdHIgIi0tJXMg6ZyA5pyJIDznm67pjITlkI0+IOWPg+aVuCIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MDkKK21zZ2lkICItLWJ1aWxkIHRha2VzIGF0IG1vc3QgdHdvIGFyZ3VtZW50cyIKK21zZ3N0ciAiLS1idWlsZCDoh7PlpJrlj6/mnInlhanlgIvlj4PmlbgiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDEzCisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGVjayBmb3IgZXhpc3RlbmNlIG9mIGFyY2hpdmUgYCUuMjUwcyciCittc2dzdHIgIueEoeazleWIpOaWt+Wll+S7tuaqlCBgJS4yNTBzJyDmmK/lkKblrZjlnKgiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDMwCittc2dpZCAidGFyZ2V0IGlzIGRpcmVjdG9yeSAtIGNhbm5vdCBza2lwIGNvbnRyb2wgZmlsZSBjaGVjayIKK21zZ3N0ciAi55uu55qE5Zyw5piv55uu6YyEIC0g54Sh5rOV55Wl6YGOIGNvbnRyb2wg5qqU55qE5qqi5p+lIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQzMQorbXNnaWQgIm5vdCBjaGVja2luZyBjb250ZW50cyBvZiBjb250cm9sIGFyZWEuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDMyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJkcGtnLWRlYjogYnVpbGRpbmcgYW4gdW5rbm93biBwYWNrYWdlIGluICclcycuXG4iCittc2dzdHIgImRwa2ctZGVi77ya5q2j5oqK5aWX5Lu2IGAlcycg57eo6K2v54K6IGAlcyfjgIJcbiIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0MzkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHBrZy1kZWI6IGJ1aWxkaW5nIHBhY2thZ2UgYCVzJyBpbiBgJXMnLlxuIgorbXNnc3RyICJkcGtnLWRlYu+8muato+aKiuWll+S7tiBgJXMnIOe3qOitr+eCuiBgJXMn44CCXG4iCisKKyM6IGRwa2ctZGViL2J1aWxkLmM6NDY3IGRwa2ctZGViL2J1aWxkLmM6NTIxCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gbWFrZSB0bXBmaWxlIChkYXRhKSIKK21zZ2lkICJmYWlsZWQgdG8gbWFrZSB0ZW1wb3JhcnkgZmlsZSAoJXMpIgorbXNnc3RyICLnhKHms5Xlu7rnq4voh6jmmYLmqpQgKGRhdGEpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ2NyBkcGtnLWRlYi9idWlsZC5jOjQ3MCBkcGtnLWRlYi9idWlsZC5jOjQ3NworIzogZHBrZy1kZWIvYnVpbGQuYzo0ODUgZHBrZy1kZWIvYnVpbGQuYzo0OTQgZHBrZy1kZWIvYnVpbGQuYzo0OTkKKyMsIGZ1enp5CisjfCBtc2dpZCAiY29udHJvbCBhcmVhIgorbXNnaWQgImNvbnRyb2wgbWVtYmVyIgorbXNnc3RyICJjb250cm9sIOWNgOWfnyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0NzAgZHBrZy1kZWIvYnVpbGQuYzo1MjQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byB1bmxpbmsgdG1wZmlsZSAoZGF0YSksICVzIgorbXNnaWQgImZhaWxlZCB0byB1bmxpbmsgdGVtcG9yYXJ5IGZpbGUgKCVzKSwgJXMiCittc2dzdHIgIueEoeazleWIqumZpOiHqOaZguaqlCAoZGF0YSnvvIwlcyIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0ODUgZHBrZy1kZWIvYnVpbGQuYzo1OTMKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdG1wZmlsZSAoZGF0YSkiCittc2dpZCAiZmFpbGVkIHRvIHJld2luZCB0ZW1wb3JhcnkgZmlsZSAoJXMpIgorbXNnc3RyICLnhKHms5Xot7PliLDoh6jmmYLmqpTnmoTotbflp4vkvY3nva4gKGRhdGEpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjQ5NAorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHN0YXQgdGVtcG9yYXJ5IGZpbGUgKCVzKSIKK21zZ3N0ciAi54Sh5rOV5bu656uL6Ieo5pmC5qqUIChkYXRhKSIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo0OTgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3Igd3JpdGluZyBgJXMnIgorbXNnc3RyICJgJXMnIOWvq+WFpemMr+iqpCIKKworIzogZHBrZy1kZWIvYnVpbGQuYzo1MjEgZHBrZy1kZWIvYnVpbGQuYzo1MjQgZHBrZy1kZWIvYnVpbGQuYzo1NDYKKyM6IGRwa2ctZGViL2J1aWxkLmM6NTcyIGRwa2ctZGViL2J1aWxkLmM6NTgwIGRwa2ctZGViL2J1aWxkLmM6NTkzCisjLCBmdXp6eQorI3wgbXNnaWQgImJldHdlZW4gbWVtYmVycyIKK21zZ2lkICJkYXRhIG1lbWJlciIKK21zZ3N0ciAi5oiQ5ZOh5LmL6ZaTIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjU3MSBkcGtnLWRlYi9idWlsZC5jOjU4MAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIHdyaXRlIGZpbGVuYW1lIHRvIHRhciBwaXBlIChkYXRhKSIKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUgZmlsZW5hbWUgdG8gdGFyIHBpcGUgKCVzKSIKK21zZ3N0ciAi54Sh5rOV5a+r5YWl5qqU5qGI5ZCN56ix5YiwIHRhciDnmoTnrqHnt5ogKGRhdGEpIgorCisjOiBkcGtnLWRlYi9idWlsZC5jOjU4NAorbXNnaWQgIjxjb21wcmVzcz4gZnJvbSB0YXIgLWNmIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzo2MSBkcGtnLWRlYi9leHRyYWN0LmM6NjMKK21zZ2lkICJzaGVsbCBjb21tYW5kIHRvIG1vdmUgZmlsZXMiCittc2dzdHIgIiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjcwCisjLCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGZpbGUgaW4gJXMgaW4gJS4yNTVzIgorbXNnc3RyICLlnKggJTIkLjI1NXMg5Lit55qEICUxJHMg5pyJ6aCQ5pyf5LmL5aSW55qE5qqU5qGI57WQ5p2f56ym6JmfIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6NzIKKyMsIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgcmVhZGluZyAlcyBmcm9tIGZpbGUgJS4yNTVzIgorbXNnc3RyICLnhKHms5Xlvp7mqpTmoYggJTIkLjI1NXMg6K6A5Y+WICUxJHMiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxMjUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgYXJjaGl2ZSBgJS4yNTVzJyIKK21zZ3N0ciAi54Sh5rOV6K6A5Y+W5aWX5Lu25qqUIGAlLjI1NXMnIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTI3Cittc2dpZCAiZmFpbGVkIHRvIGZzdGF0IGFyY2hpdmUiCittc2dzdHIgIueEoeazlSBmc3RhdCDlpZfku7bmqpQiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxMzEKKyMsIGZ1enp5CisjfCBtc2dpZCAiYXJjaGl2ZSBoYXMgbm8gZG90IGluIHZlcnNpb24gbnVtYmVyIgorbXNnaWQgImFyY2hpdmUgbWFnaWMgdmVyc2lvbiBudW1iZXIiCittc2dzdHIgIuWll+S7tuaqlOeahOeJiOacrOe3qOiZn+S4reaykuaciem7nuiZnyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE0MworIywgZnV6enkKKyN8IG1zZ2lkICJhcmNoaXZlIGhhcyBubyBuZXdsaW5lcyBpbiBoZWFkZXIiCittc2dpZCAiYXJjaGl2ZSBtZW1iZXIgaGVhZGVyIgorbXNnc3RyICLlpZfku7bmqpTnmoTmqpTmoYjmqJnpoK3kuK3mspLmnInmj5vooYznrKbomZ8iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNDgKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBwYXJ0IG51bWJlciIKK21zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBiYWQgYXJjaGl2ZSBoZWFkZXIgbWFnaWMiCittc2dzdHIgIuaqlOahiCBgJS4yNTBzJyDlt7LntpPmkI3mr4AgLSDliIblibLomZ/norzkuI3nrKYiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNTUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBub3QgYSBkZWJpYW4gYmluYXJ5IGFyY2hpdmUgKHRyeSBkcGtnLXNwbGl0PykiCittc2dzdHIgIuaqlOahiCBgJS4yNTBzJyDkuI3mmK8gZGViaWFuIOeahOS6jOmAsuWItuWll+S7tuaqlO+8iOippuippiBkcGtnLXNwbGl077yf77yJIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTU5CisjLCBmdXp6eQorI3wgbXNnaWQgImFyY2hpdmUgaGFzIG5vIGRvdCBpbiB2ZXJzaW9uIG51bWJlciIKK21zZ2lkICJhcmNoaXZlIGluZm9ybWF0aW9uIGhlYWRlciBtZW1iZXIiCittc2dzdHIgIuWll+S7tuaqlOeahOeJiOacrOe3qOiZn+S4reaykuaciem7nuiZnyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE2MgorbXNnaWQgImFyY2hpdmUgaGFzIG5vIG5ld2xpbmVzIGluIGhlYWRlciIKK21zZ3N0ciAi5aWX5Lu25qqU55qE5qqU5qGI5qiZ6aCt5Lit5rKS5pyJ5o+b6KGM56ym6JmfIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTY1Cittc2dpZCAiYXJjaGl2ZSBoYXMgbm8gZG90IGluIHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICLlpZfku7bmqpTnmoTniYjmnKznt6jomZ/kuK3mspLmnInpu57omZ8iCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiYXJjaGl2ZSB2ZXJzaW9uICUuMjUwcyBub3QgdW5kZXJzdG9vZCwgZ2V0IG5ld2VyIGRwa2ctZGViIgorbXNnc3RyICLnhKHms5XorZjliKXlpZfku7bmqpTnmoTniYjmnKwgJS4yNTBz77yM6KuL5Y2H57SaIGRwa2ctZGViIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MTc5IGRwa2ctZGViL2V4dHJhY3QuYzoyMDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgInNraXBwZWQgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ2lkICJza2lwcGVkIGFyY2hpdmUgbWVtYmVyIGRhdGEgZnJvbSAlcyIKK21zZ3N0ciAi5b+955Wl5LqGICVzIOS4reeahOaIkOWToeizh+aWmSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjE5NAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZSBgJS4yNTBzJyBjb250YWlucyB1bnVuZGVyc3Rvb2QgZGF0YSBtZW1iZXIgJS4qcywgZ2l2aW5nIHVwIgorbXNnaWQgImFyY2hpdmUgJyUuMjUwcycgY29udGFpbnMgbm90IHVuZGVyc3Rvb2QgZGF0YSBtZW1iZXIgJS4qcywgZ2l2aW5nIHVwIgorbXNnc3RyICLmqpTmoYggYCUuMjUwcycg5ZCr5pyJ5pyq55+l55qE5oiQ5ZOh6LOH5paZICUuKnPvvIzlj5bmtojmk43kvZwiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoxOTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImZpbGUgYCUuMjUwcycgY29udGFpbnMgdHdvIGNvbnRyb2wgbWVtYmVycywgZ2l2aW5nIHVwIgorbXNnaWQgImFyY2hpdmUgJyUuMjUwcycgY29udGFpbnMgdHdvIGNvbnRyb2wgbWVtYmVycywgZ2l2aW5nIHVwIgorbXNnc3RyICLmqpTmoYggYCUuMjUwcycg5ZCr5pyJ5YWp5YCLIGNvbnRyb2wg5oiQ5ZOh77yM5Y+W5raI5pON5L2cIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjE0CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiIG5ldyBkZWJpYW4gcGFja2FnZSwgdmVyc2lvbiAlcy5cbiIKKyN8ICIgc2l6ZSAlbGQgYnl0ZXM6IGNvbnRyb2wgYXJjaGl2ZT0gJXppIGJ5dGVzLlxuIgorbXNnaWQgIiIKKyIgbmV3IGRlYmlhbiBwYWNrYWdlLCB2ZXJzaW9uICVzLlxuIgorIiBzaXplICVqZCBieXRlczogY29udHJvbCBhcmNoaXZlPSAlamQgYnl0ZXMuXG4iCittc2dzdHIgIiIKKyIg5paw5byPIGRlYmlhbiDlpZfku7bvvIzniYjmnKwgJXPjgIJcbiIKKyIg5aSn5bCP54K6ICVsZCBieXRlc++8mmNvbnRyb2wg5aWX5Lu25qqUPSV6aSBieXRlc+OAglxuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjMyCittc2dpZCAiYXJjaGl2ZSBjb250cm9sIG1lbWJlciBzaXplIgorbXNnc3RyICIiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyMzUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImFyY2hpdmUgaGFzIG1hbGZvcm1hdHRlZCBjb250cm9sIGxlbmd0aCBgJXMnIgorbXNnaWQgImFyY2hpdmUgaGFzIG1hbGZvcm1hdHRlZCBjb250cm9sIG1lbWJlciBzaXplICclcyciCittc2dzdHIgIuWll+S7tuaqlOS4reeahCBjb250cm9sIOizh+ioiumVt+W6piBgJXMnIOS4jeWQiOimj+agvCIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI0MgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAic2tpcHBlZCBtZW1iZXIgZGF0YSBmcm9tICVzIgorbXNnaWQgInNraXBwZWQgYXJjaGl2ZSBjb250cm9sIG1lbWJlciBkYXRhIGZyb20gJXMiCittc2dzdHIgIuW/veeVpeS6hiAlcyDkuK3nmoTmiJDlk6Hos4fmlpkiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzoyNDYKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIgb2xkIGRlYmlhbiBwYWNrYWdlLCB2ZXJzaW9uICVzLlxuIgorI3wgIiBzaXplICVsZCBieXRlczogY29udHJvbCBhcmNoaXZlPSAlemksIG1haW4gYXJjaGl2ZT0gJWxkLlxuIgorbXNnaWQgIiIKKyIgb2xkIGRlYmlhbiBwYWNrYWdlLCB2ZXJzaW9uICVzLlxuIgorIiBzaXplICVqZCBieXRlczogY29udHJvbCBhcmNoaXZlPSAlamQsIG1haW4gYXJjaGl2ZT0gJWpkLlxuIgorbXNnc3RyICIiCisiIOiIiuW8jyBkZWJpYW4g5aWX5Lu277yM54mI5pysICVz44CCXG4iCisiIOWkp+Wwj+eCuiAlbGQgYnl0ZXPvvJpjb250cm9sIOWll+S7tuaqlD0gJXppIGJ5dGVz77yM5Li76KaB5aWX5Lu25qqUPSAlbGTjgIJcbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI1NQorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZHBrZy1kZWI6IGZpbGUgbG9va3MgbGlrZSBpdCBtaWdodCBiZSBhbiBhcmNoaXZlIHdoaWNoIGhhcyBiZWVuXG4iCisiZHBrZy1kZWI6ICAgIGNvcnJ1cHRlZCBieSBiZWluZyBkb3dubG9hZGVkIGluIEFTQ0lJIG1vZGVcbiIKK21zZ3N0ciAiIgorImRwa2ctZGVi77ya6YCZ5YCL5qqU5qGI55yL6LW35L6G5oeJ6Kmy5piv5YCL5aWX5Lu25qqU77yM5L2G5Y+v6IO95Zug54K65Zyo5LiL6LyJ5pmC5L2/55So5LqGXG4iCisiZHBrZy1kZWLvvJogICBBU0NJSSDmqKHlvI/ogIzmkI3lo57kuoZcbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjI1OQorIywgYy1mb3JtYXQKK21zZ2lkICJgJS4yNTVzJyBpcyBub3QgYSBkZWJpYW4gZm9ybWF0IGFyY2hpdmUiCittc2dzdHIgImAlLjI1NXMnIOS4pumdniBkZWJpYW4g5qC85byP55qE5aWX5Lu25qqUIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjY2Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIHRvIHBpcGUgaW4gY29weSIKK21zZ3N0ciAi5Zyo6KSH6KO95pmC54Sh5rOV5a+r5YWl566h57eaIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MjY4Cittc2dpZCAiZmFpbGVkIHRvIGNsb3NlIHBpcGUgaW4gY29weSIKK21zZ3N0ciAi5Zyo6KSH6KO95pmC54Sh5rOV6Zec6ZaJ566h57eaIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6Mjg0Cittc2dpZCAiZGF0YSIKK21zZ3N0ciAiZGF0YSIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMwNworbXNnaWQgImZhaWxlZCB0byBjaGRpciB0byBkaXJlY3RvcnkiCittc2dzdHIgIueEoeazlSBjaGRpciDliLDnm67pjIQiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozMTAKK21zZ2lkICJmYWlsZWQgdG8gY3JlYXRlIGRpcmVjdG9yeSIKK21zZ3N0ciAi54Sh5rOV5bu656uL55uu6YyEIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzEyCittc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIGRpcmVjdG9yeSBhZnRlciBjcmVhdGluZyBpdCIKK21zZ3N0ciAi5Zyo5bu656uL55uu6YyE5b6M77yM54Sh5rOVIGNoZGlyIOWIsOipsuebrumMhCIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjMyMworIywgZnV6enkKK21zZ2lkICI8ZGVjb21wcmVzcz4iCittc2dzdHIgIiVz77ya6Kej5aOT57iuIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzI1CisjLCBmdXp6eQorbXNnaWQgInBhc3RlIgorbXNnc3RyICLpgJrpgY5cbiIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjM0MiBkcGtnLWRlYi9leHRyYWN0LmM6MzYzIGRwa2ctZGViL2V4dHJhY3QuYzo0MDIKKyM6IGRwa2ctZGViL2luZm8uYzo3NworIywgYy1mb3JtYXQKK21zZ2lkICItLSVzIG5lZWRzIGEgLmRlYiBmaWxlbmFtZSBhcmd1bWVudCIKK21zZ3N0ciAiLS0lcyDpnIDopoHkuIDlgIsgLmRlYiDmqpTmoYjlkI3nqLHkvZzngrrlj4PmlbgiCisKKyM6IGRwa2ctZGViL2V4dHJhY3QuYzozNDcgZHBrZy1kZWIvZXh0cmFjdC5jOjQwNgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiLS0lcyBuZWVkcyBhIHRhcmdldCBkaXJlY3RvcnkuXG4iCisiUGVyaGFwcyB5b3Ugc2hvdWxkIGJlIHVzaW5nIGRwa2cgLS1pbnN0YWxsID8iCittc2dzdHIgIiIKKyItLSVzIOmcgOimgeS4gOWAi+ebrueahOWcsOebrumMhOOAglxuIgorIuaIluioseaCqOaHieipsuS9v+eUqCBkcGtnIC0taW5zdGFsbO+8nyIKKworIzogZHBrZy1kZWIvZXh0cmFjdC5jOjM1MCBkcGtnLWRlYi9leHRyYWN0LmM6NDEwCisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgYXQgbW9zdCB0d28gYXJndW1lbnRzICguZGViIGFuZCBkaXJlY3RvcnkpIgorbXNnc3RyICItLSVzIOiHs+WkmuWPr+acieWFqeWAi+WPg+aVuO+8iC5kZWIg5ZKM55uu6YyE77yJIgorCisjOiBkcGtnLWRlYi9leHRyYWN0LmM6MzY1CisjLCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgdGFrZXMgb25seSBvbmUgYXJndW1lbnQgKC5kZWIgZmlsZW5hbWUpIgorbXNnc3RyICItLSVzIOWPqumcgOS4gOWAi+WPg+aVuO+8iC5kZWIg5qqU5qGI5ZCN56ix77yJIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6NjMKK21zZ2lkICJmYWlsZWQgdG8gY2hkaXIgdG8gYC8nIGZvciBjbGVhbnVwIgorbXNnc3RyICLnhKHms5UgY2hkaXIg5YiwIGAvJyDku6XpgLLooYzmuIXnkIYiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMDYKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImNhbm5vdCBzdGF0IG9sZCBuYW1lIGAlcyc6ICVzIgorbXNnaWQgImNvbnRyb2wgZmlsZSAnJXMnIgorbXNnc3RyICLnhKHms5Xlj5blvpfljp/mnKzlkI3nqLEgYCVzJyDnmoTos4foqIrvvJolcyIKKworIzogZHBrZy1kZWIvaW5mby5jOjExMAorIywgYy1mb3JtYXQKK21zZ2lkICJkcGtnLWRlYjogYCUuMjU1cycgY29udGFpbnMgbm8gY29udHJvbCBjb21wb25lbnQgYCUuMjU1cydcbiIKK21zZ3N0ciAiZHBrZy1kZWLvvJpgJS4yNTVzJyDkuK3mspLmnInmjqfliLblhYPku7YgYCUuMjU1cydcbiIKKworIzogZHBrZy1kZWIvaW5mby5jOjExNAorIywgYy1mb3JtYXQKK21zZ2lkICJvcGVuIGNvbXBvbmVudCBgJS4yNTVzJyAoaW4gJS4yNTVzKSBmYWlsZWQgaW4gYW4gdW5leHBlY3RlZCB3YXkiCittc2dzdHIgIuWcqOmWi+WVn+WFg+S7tiBgJS4yNTVzJ++8iOS9jeaWvCAlLjI1NXPvvInmmYLku6XmhI/mg7PkuI3liLDnmoTmlrnlvI/lpLHmlZfkuoYiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMjEKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIk9uZSByZXF1ZXN0ZWQgY29udHJvbCBjb21wb25lbnQgaXMgbWlzc2luZyIKK21zZ2lkICIlZCByZXF1ZXN0ZWQgY29udHJvbCBjb21wb25lbnQgaXMgbWlzc2luZyIKK21zZ2lkX3BsdXJhbCAiJWQgcmVxdWVzdGVkIGNvbnRyb2wgY29tcG9uZW50cyBhcmUgbWlzc2luZyIKK21zZ3N0clswXSAi5om+5LiN5Yiw5p+Q5YCL5b+F6KaB55qE5o6n5Yi25YWD5Lu2IgorbXNnc3RyWzFdICLmib7kuI3liLDmn5DlgIvlv4XopoHnmoTmjqfliLblhYPku7YiCisKKyM6IGRwa2ctZGViL2luZm8uYzoxMzkgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjQyNAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc2NhbiBkaXJlY3RvcnkgYCUuMjU1cyciCittc2dzdHIgIueEoeazleaOg+eehOebrumMhCBgJS4yNTVzJyIKKworIzogZHBrZy1kZWIvaW5mby5jOjE0OAorIywgYy1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc3RhdCBgJS4yNTVzJyAoaW4gYCUuMjU1cycpIgorbXNnc3RyICLnhKHms5Xlj5blvpcgYCUuMjU1cycg55qE54uA5oWL77yI5L2N5pa8IGAlLjI1NXMn77yJIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTUyCisjLCBjLWZvcm1hdAorbXNnaWQgImNhbm5vdCBvcGVuIGAlLjI1NXMnIChpbiBgJS4yNTVzJykiCittc2dzdHIgIueEoeazlemWi+WVnyBgJS4yNTVzJ++8iOS9jeaWvCBgJS4yNTVzJ++8iSIKKworIzogZHBrZy1kZWIvaW5mby5jOjE2NyBkcGtnLWRlYi9pbmZvLmM6MTg1IGRwa2ctZGViL2luZm8uYzoxOTkKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlYWQgYCUuMjU1cycgKGluIGAlLjI1NXMnKSIKK21zZ3N0ciAi54Sh5rOV6K6A5Y+WIGAlLjI1NXMn77yI5L2N5pa8IGAlLjI1NXMn77yJIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MTcwCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIgJTdsZCBieXRlcywgJTVkIGxpbmVzICAgJWMgICUtMjAuMTI3cyAlLjEyN3NcbiIKK21zZ2lkICIgJTdqZCBieXRlcywgJTVkIGxpbmVzICAgJWMgICUtMjAuMTI3cyAlLjEyN3NcbiIKK21zZ3N0ciAiICU3bGQgYnl0ZXPvvIwlNWQg6KGMICAgICAgJWMgICUtMjAuMTI3cyAlLjEyN3NcbiIKKworIzogZHBrZy1kZWIvaW5mby5jOjE3NAorIywgYy1mb3JtYXQKK21zZ2lkICIgICAgIG5vdCBhIHBsYWluIGZpbGUgICAgICAgICAgJS4yNTVzXG4iCittc2dzdHIgIiAgICAg5Lim6Z2e5LiA6Iis5qqU5qGIICAgICAgICAgICAgICAlLjI1NXNcbiIKKworIzogZHBrZy1kZWIvaW5mby5jOjE4NgorbXNnaWQgIihubyBgY29udHJvbCcgZmlsZSBpbiBjb250cm9sIGFyY2hpdmUhKVxuIgorbXNnc3RyICLvvIjlnKggY29udHJvbCDlpZfku7bmqpTkuK3mspLmnIkgYGNvbnRyb2wnIOaqlO+8gSlcbiIKKworIzogZHBrZy1kZWIvaW5mby5jOjIyMgorbXNnaWQgImNvdWxkIG5vdCBvcGVuIHRoZSBgY29udHJvbCcgY29tcG9uZW50IgorbXNnc3RyICLnhKHms5XplovllZ8gYGNvbnRyb2wnIOWFg+S7tiIKKworIzogZHBrZy1kZWIvaW5mby5jOjI2MQorbXNnaWQgImZhaWxlZCBkdXJpbmcgcmVhZCBvZiBgY29udHJvbCcgY29tcG9uZW50IgorbXNnc3RyICLlnKjoroDlj5YgYGNvbnRyb2wnIOWFg+S7tuaZguWkseaVlyIKKworIzogZHBrZy1kZWIvaW5mby5jOjI2MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyB0aGUgJyVzJyBjb21wb25lbnQiCittc2dzdHIgIuWcqOmXnOmWiSBmaW5kIOeahOeuoee3muaZgueZvOeUn+mMr+iqpCIKKworIzogZHBrZy1kZWIvaW5mby5jOjI3OAorbXNnaWQgIkVycm9yIGluIGZvcm1hdCIKK21zZ3N0ciAi5qC85byP6Yyv6KqkIgorCisjOiBkcGtnLWRlYi9pbmZvLmM6MzI4Cittc2dpZCAiLS1jb250ZW50cyB0YWtlcyBleGFjdGx5IG9uZSBhcmd1bWVudCIKK21zZ3N0ciAiLS1jb250ZW50cyDlj6rpnIDopoHkuIDlgIvlj4PmlbgiCisKKyM6IGRwa2ctZGViL21haW4uYzo1NAorIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIGFyY2hpdmUgYmFja2VuZCB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICJEZWJpYW4gYCVzJyDlpZfku7bmqpTnmoTlvoznq6/vvIzniYjmnKwgJXPjgIJcbiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjczCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiQ29tbWFuZHM6XG4iCisjfCAiICAtYnwtLWJ1aWxkIDxkaXJlY3Rvcnk+IFs8ZGViPl0gICBCdWlsZCBhbiBhcmNoaXZlLlxuIgorI3wgIiAgLWN8LS1jb250ZW50cyA8ZGViPiAgICAgICAgICAgICAgTGlzdCBjb250ZW50cy5cbiIKKyN8ICIgIC1JfC0taW5mbyA8ZGViPiBbPGNmaWxlPiAuLi5dICAgIFNob3cgaW5mbyB0byBzdGRvdXQuXG4iCisjfCAiICAtV3wtLXNob3cgPGRlYj4gICAgICAgICAgICAgICAgICBTaG93IGluZm9ybWF0aW9uIG9uIHBhY2thZ2UocylcbiIKKyN8ICIgIC1mfC0tZmllbGQgPGRlYj4gWzxjZmllbGQ+IC4uLl0gIFNob3cgZmllbGQocykgdG8gc3Rkb3V0LlxuIgorI3wgIiAgLWV8LS1jb250cm9sIDxkZWI+IFs8ZGlyZWN0b3J5Pl0gRXh0cmFjdCBjb250cm9sIGluZm8uXG4iCisjfCAiICAteHwtLWV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT4gICBFeHRyYWN0IGZpbGVzLlxuIgorI3wgIiAgLVh8LS12ZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PiAgRXh0cmFjdCAmIGxpc3QgZmlsZXMuXG4iCisjfCAiICAtLWZzeXMtdGFyZmlsZSA8ZGViPiAgICAgICAgICAgICBPdXRwdXQgZmlsZXN5c3RlbSB0YXJmaWxlLlxuIgorI3wgIlxuIgorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1ifC0tYnVpbGQgPGRpcmVjdG9yeT4gWzxkZWI+XSAgIEJ1aWxkIGFuIGFyY2hpdmUuXG4iCisiICAtY3wtLWNvbnRlbnRzIDxkZWI+ICAgICAgICAgICAgICBMaXN0IGNvbnRlbnRzLlxuIgorIiAgLUl8LS1pbmZvIDxkZWI+IFs8Y2ZpbGU+IC4uLl0gICAgU2hvdyBpbmZvIHRvIHN0ZG91dC5cbiIKKyIgIC1XfC0tc2hvdyA8ZGViPiAgICAgICAgICAgICAgICAgIFNob3cgaW5mb3JtYXRpb24gb24gcGFja2FnZShzKVxuIgorIiAgLWZ8LS1maWVsZCA8ZGViPiBbPGNmaWVsZD4gLi4uXSAgU2hvdyBmaWVsZChzKSB0byBzdGRvdXQuXG4iCisiICAtZXwtLWNvbnRyb2wgPGRlYj4gWzxkaXJlY3Rvcnk+XSBFeHRyYWN0IGNvbnRyb2wgaW5mby5cbiIKKyIgIC14fC0tZXh0cmFjdCA8ZGViPiA8ZGlyZWN0b3J5PiAgIEV4dHJhY3QgZmlsZXMuXG4iCisiICAtWHwtLXZleHRyYWN0IDxkZWI+IDxkaXJlY3Rvcnk+ICBFeHRyYWN0ICYgbGlzdCBmaWxlcy5cbiIKKyIgIC1SfC0tcmF3LWV4dHJhY3QgPGRlYj4gPGRpcmVjdG9yeT5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEV4dHJhY3QgY29udHJvbCBpbmZvIGFuZCBmaWxlcy5cbiIKKyIgIC0tZnN5cy10YXJmaWxlIDxkZWI+ICAgICAgICAgICAgIE91dHB1dCBmaWxlc3lzdGVtIHRhcmZpbGUuXG4iCisiXG4iCittc2dzdHIgIiIKKyLmjIfku6TvvJpcbiIKKyIgIC1ifC0tYnVpbGQgPOebrumMhD4gWzxkZWI+XSAgICAgICAg57eo6K2v5aWX5Lu25qqU44CCXG4iCisiICAtY3wtLWNvbnRlbnRzIDxkZWI+ICAgICAgICAgICAgICDliJflh7rmqpTmoYjlhaflrrnjgIJcbiIKKyIgIC1JfC0taW5mbyA8ZGViPiBbPGNmaWxlPiAuLi5dICAgIOmhr+ekuiBpbmZvIOiHsyBzdGRvdXTjgIJcbiIKKyIgIC1XfC0tc2hvdyA8ZGViPiAgICAgICAgICAgICAgICAgIOmhr+ekuuWll+S7tuizh+ioilxuIgorIiAgLWZ8LS1maWVsZCA8ZGViPiBbPGNmaWVsZD4gLi4uXSAg6aGv56S65qyE5L2N6IezIHN0ZG91dOOAglxuIgorIiAgLWV8LS1jb250cm9sIDxkZWI+IFs855uu6YyEPl0gICAgICDop6PplosgY29udHJvbCDos4foqIrjgIJcbiIKKyIgIC14fC0tZXh0cmFjdCA8ZGViPiA855uu6YyEPiAgICAgICAg6Kej6ZaL5qqU5qGI44CCXG4iCisiICAtWHwtLXZleHRyYWN0IDxkZWI+IDznm67pjIQ+ICAgICAgIOino+mWi+S4puWIl+WHuuaqlOahiOOAglxuIgorIiAgLS1mc3lzLXRhcmZpbGUgPGRlYj4gICAgICAgICAgICAg6Ly45Ye65qqU5qGI57O757Wx55qEIHRhciDmqpTjgIJcbiIKKyJcbiIKKworIzogZHBrZy1kZWIvbWFpbi5jOjkzCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyI8ZGViPiBpcyB0aGUgZmlsZW5hbWUgb2YgYSBEZWJpYW4gZm9ybWF0IGFyY2hpdmUuXG4iCisiPGNmaWxlPiBpcyB0aGUgbmFtZSBvZiBhbiBhZG1pbmlzdHJhdGl2ZSBmaWxlIGNvbXBvbmVudC5cbiIKKyI8Y2ZpZWxkPiBpcyB0aGUgbmFtZSBvZiBhIGZpZWxkIGluIHRoZSBtYWluIGBjb250cm9sJyBmaWxlLlxuIgorIlxuIgorbXNnc3RyICIiCisiPGRlYj4g5piv5p+Q5YCLIERlYmlhbiDlpZfku7bmqpTnmoTmqpTmoYjlkI3nqLHjgIJcbiIKKyI8Y2ZpbGU+IOaYr+afkOWAi+euoeeQhueUqOeahOaqlOahiOWFg+S7tueahOWQjeeoseOAglxuIgorIjxjZmllbGQ+IOaYr+S4u+imgSBgY29udHJvbCcg5qqU5Lit55qE5LiA5YCL5qyE5L2N55qE5ZCN56ix44CCXG4iCisiXG4iCisKKyM6IGRwa2ctZGViL21haW4uYzo5OQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtLXNob3dmb3JtYXQ9PGZvcm1hdD4gICAgICAgICAgICBVc2UgYWx0ZXJuYXRpdmUgZm9ybWF0IGZvciAtLXNob3cuXG4iCisiICAtdiwgLS12ZXJib3NlICAgICAgICAgICAgICAgICAgICBFbmFibGUgdmVyYm9zZSBvdXRwdXQuXG4iCisiICAtRCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbmFibGUgZGVidWdnaW5nIG91dHB1dC5cbiIKKyIgIC0tb2xkLCAtLW5ldyAgICAgICAgICAgICAgICAgICAgIFNlbGVjdCBhcmNoaXZlIGZvcm1hdC5cbiIKKyIgIC0tbm9jaGVjayAgICAgICAgICAgICAgICAgICAgICAgIFN1cHByZXNzIGNvbnRyb2wgZmlsZSBjaGVjayAoYnVpbGQgYmFkXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhY2thZ2VzKS5cbiIKKyIgIC16IyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNldCB0aGUgY29tcHJlc3Npb24gbGV2ZWwgd2hlbiBidWlsZGluZy5cbiIKKyIgIC1aPHR5cGU+ICAgICAgICAgICAgICAgICAgICAgICAgIFNldCB0aGUgY29tcHJlc3Npb24gdHlwZSB1c2VkIHdoZW4gIgorImJ1aWxkaW5nLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBbGxvd2VkIHR5cGVzOiBnemlwLCB4eiwgYnppcDIsIGx6bWEsICIKKyJub25lLlxuIgorIlxuIgorbXNnc3RyICIiCisi6YG46aCF77yaXG4iCisiICAtLXNob3dmb3JtYXQ9POagvOW8jz4gICAgICAgICAgICDmm78gLS1zaG93IOaMh+WumuWFtuWug+eahOi8uOWHuuagvOW8j+OAglxuIgorIiAgLUQgICAgICAgICAgICAgICAgICAgICAgICAgICAgIOWVn+eUqOmZpOmMr+izh+ioiuOAglxuIgorIiAgLS1vbGQsIC0tbmV3ICAgICAgICAgICAgICAgICAgIOaMh+WumuWll+S7tuaqlOagvOW8j+OAglxuIgorIiAgLS1ub2NoZWNrICAgICAgICAgICAgICAgICAgICAgIOS4jeaqouafpSBjb250cm9sIOaqlO+8iOWPr+iDveacg+eUn+aIkOacieWVj+mhjOeahOWllyIKKyLku7bvvInjgIJcbiIKKyIgIC16IyAgICAgICAgICAgICAgICAgICAgICAgICAgICDlnKjnt6jora/mmYLmjIflrprlhbblo5PnuK7mr5TnjofjgIJcbiIKKyIgIC1aPHR5cGU+ICAgICAgICAgICAgICAgICAgICAgICDlnKjnt6jora/mmYLmjIflrprlhbblo5PnuK7poZ7lnovjgIJcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIOWPr+S9v+eUqOeahOmBuOmghe+8mmd6aXDjgIFiemlwMuOAgWx6bWHjgIFub25l44CCXG4iCisiXG4iCisKKyM6IGRwa2ctZGViL21haW4uYzoxMjEKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIlVzZSBgZHBrZycgdG8gaW5zdGFsbCBhbmQgcmVtb3ZlIHBhY2thZ2VzIGZyb20geW91ciBzeXN0ZW0sIG9yXG4iCisiYGRzZWxlY3QnIG9yIGBhcHRpdHVkZScgZm9yIHVzZXItZnJpZW5kbHkgcGFja2FnZSBtYW5hZ2VtZW50LiAgUGFja2FnZXNcbiIKKyJ1bnBhY2tlZCB1c2luZyBgZHBrZy1kZWIgLS1leHRyYWN0JyB3aWxsIGJlIGluY29ycmVjdGx5IGluc3RhbGxlZCAhXG4iCittc2dzdHIgIiIKKyJcbiIKKyLkvb/nlKggYGRwa2cnIOS+huWuieijneWSjOenu+mZpOaCqOezu+e1seS4iueahOWll+S7tu+8jOaIluaYr+eUqCBgZHNlbGVjdCcg5oiWIGBhcHRpdHVkZSdcbiIKKyLnrYnovIPkurrmgKfljJbnmoTlpZfku7bnrqHnkIbnqIvlvI/jgILnlKggYGRwa2ctZGViIC0tZXh0cmFjdCcg5L6G6Kej6ZaL5aWX5Lu25Lim5LiN5piv5q2j56K6XG4iCisi55qE5a6J6KOd5pa55byP77yBXG4iCisKKyM6IGRwa2ctZGViL21haW4uYzoxMzIKK21zZ2lkICIiCisiVHlwZSBkcGtnLWRlYiAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgbWFuaXB1bGF0aW5nICouZGViIGZpbGVzO1xuIgorIlR5cGUgZHBrZyAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgaW5zdGFsbGluZyBhbmQgZGVpbnN0YWxsaW5nIHBhY2thZ2VzLiIKK21zZ3N0ciAiIgorIui8uOWFpSBkcGtnLWRlYiAtLWhlbHAg5Lul5Y+W5b6X5aaC5L2V5pON5L2cICouZGViIOaqlOeahOiqquaYju+5lFxuIgorIui8uOWFpSBkcGtnIC0taGVscCDku6Xlj5blvpflpoLkvZXlronoo53lkoznp7vpmaTlpZfku7bnmoToqqrmmI7jgIIiCisKKyM6IGRwa2ctZGViL21haW4uYzoxNDgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImludmFsaWQgaW50ZWdlciBmb3IgLSVjOiAnJS4yNTBzJyIKK21zZ3N0ciAiLS0lcyDmiYDmjIflrprnmoTmlbjlrZfnhKHmlYjvvJpgJS4yNTBzJyIKKworIzogZHBrZy1kZWIvbWFpbi5jOjE1MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBjb21wcmVzc2lvbiBsZXZlbCBmb3IgLSVjOiAlbGQnIgorbXNnc3RyICItLSVzIOaJgOaMh+WumueahOaVuOWtl+eEoeaViO+8mmAlLjI1MHMnIgorCisjOiBkcGtnLWRlYi9tYWluLmM6MTYxCisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gY29tcHJlc3Npb24gdHlwZSBgJXMnISIKK21zZ3N0ciAi5pyq55+l55qE5aOT57iu6aGe5Z6LIGAlcyfvvIEiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjUyCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBkaWdpdCAoY29kZSAlZCkgaW4gJXMiCittc2dzdHIgIuaqlOahiCBgJTEkLjI1MHMnIOW3suaQjeavgCAtIOWcqCAlMyRzIOS4reacieeEoeaViOaVuOWtl++8iOS7o+eivOeCuiAlMiRk77yJIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzo2MAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSAlLjI1MHMgbWlzc2luZyIKK21zZ3N0ciAi5qqU5qGIIGAlLjI1MHMnIOW3suaQjeavgCAtIOaykuaciSAlLjI1MHMiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjYzCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIG1pc3NpbmcgbmV3bGluZSBhZnRlciAlLjI1MHMiCittc2dzdHIgIuaqlOahiCBgJS4yNTBzJyDlt7LmkI3mr4AgLSDlnKggJS4yNTBzIOW+jOaykuacieaPm+ihjOespuiZnyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6ODkgZHBrZy1zcGxpdC9tYWluLmM6MTE0CisjLCBjLWZvcm1hdAorbXNnaWQgImVycm9yIHJlYWRpbmcgJS4yNTBzIgorbXNnc3RyICLlnKjoroDlj5YgJS4yNTBzIOaZgueZvOeUn+mMr+iqpCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTAzCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBtYWdpYyBhdCBlbmQgb2YgZmlyc3QgaGVhZGVyIgorbXNnc3RyICLmqpTmoYggYCUuMjUwcycg5bey5pCN5q+AIC0g5Zyo56ys5LiA5YCL5qqU5qGI5qiZ6aCt55qE5pyr5bC+5pyJ5LiN5q2j56K655qE6K2Y5Yil56K8IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIHBhZGRpbmcgY2hhcmFjdGVyIChjb2RlICVkKSIKK21zZ3N0ciAi5qqU5qGIIGAlLjI1MHMnIOW3sue2k+aQjeavgCAtIOS4jeWQiOWunOeahOWhq+WFheWtl+WFg++8iOS7o+eivOeCuiAlZO+8iSIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTE3CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIG51bGxzIGluIGluZm8gc2VjdGlvbiIKK21zZ3N0ciAi5qqU5qGIIGAlLjI1MHMnIOW3sue2k+aQjeavgCAtIGluZm8g5Y2A5q615Lit5pyJIG51bGwiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyMgorIywgZnV6enkKK21zZ2lkICJmb3JtYXQgdmVyc2lvbiBudW1iZXIiCittc2dzdHIgIueJiOacrOe3qOiZnyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTI0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgZm9ybWF0IHZlcnNpb24gYCUuMjUwcycgLSB5b3UgbmVlZCBhIG5ld2VyIGRwa2ctc3BsaXQiCittc2dzdHIgIuaqlOahiCBgJS4yNTBzJyDnmoTmoLzlvI/lhbbniYjmnKzngrogYCUuMjUwcycgLSDmgqjpnIDkvb/nlKjovIPmlrDniYjnmoQgZHBrZy1zcGxpdCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTI3Cittc2dpZCAicGFja2FnZSBuYW1lIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyOAorIywgZnV6enkKK21zZ2lkICJwYWNrYWdlIHZlcnNpb24gbnVtYmVyIgorbXNnc3RyICLniYjmnKznt6jomZ8iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjEyOQorbXNnaWQgInBhY2thZ2UgZmlsZSBNRDUgY2hlY2tzdW0iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTMyCisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBNRDUgY2hlY2tzdW0gYCUuMjUwcyciCittc2dzdHIgIuaqlOahiCBgJS4yNTBzJyDlt7LntpPmkI3mr4AgLSBNRDUg5qqi6amX56K8IGAlLjI1MHMnIOS4jeespiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTM0IGRwa2ctc3BsaXQvaW5mby5jOjEzNQorbXNnaWQgImFyY2hpdmUgdG90YWwgc2l6ZSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMzYgZHBrZy1zcGxpdC9pbmZvLmM6MTM3Cittc2dpZCAiYXJjaGl2ZSBwYXJ0IG9mZnNldCIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxMzkKKyMsIGZ1enp5Cittc2dpZCAiYXJjaGl2ZSBwYXJ0IG51bWJlcnMiCittc2dzdHIgIueJiOacrOe3qOiZnyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTQyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSBubyBzbGFzaCBiZXR3ZWVuIHBhcnQgbnVtYmVycyIKK21zZ2lkICJmaWxlICclLjI1MHMnIGlzIGNvcnJ1cHQgLSBubyBzbGFzaCBiZXR3ZWVuIGFyY2hpdmUgcGFydCBudW1iZXJzIgorbXNnc3RyICLmqpTmoYggYCUuMjUwcycg5bey57aT5pCN5q+AIC0g5Zyo5YiG5Ymy6Jmf56K85LmL6ZaT5rKS5pyJ5pac57eaIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDUKK21zZ2lkICJudW1iZXIgb2YgYXJjaGl2ZSBwYXJ0cyIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNDcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBudW1iZXIgb2YgYXJjaGl2ZSBwYXJ0cyIKK21zZ3N0ciAi5qqU5qGIIGAlLjI1MHMnIOW3sue2k+aQjeavgCAtIOWIhuWJsuiZn+eivOS4jeespiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTQ5CisjLCBmdXp6eQorbXNnaWQgImFyY2hpdmUgcGFydHMgbnVtYmVyIgorbXNnc3RyICLniYjmnKznt6jomZ8iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE1MQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIHBhcnQgbnVtYmVyIgorbXNnaWQgImZpbGUgJyUuMjUwcycgaXMgY29ycnVwdCAtIGJhZCBhcmNoaXZlIHBhcnQgbnVtYmVyIgorbXNnc3RyICLmqpTmoYggYCUuMjUwcycg5bey57aT5pCN5q+AIC0g5YiG5Ymy6Jmf56K85LiN56ymIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNTcKK21zZ2lkICJwYWNrYWdlIGFyY2hpdGVjdHVyZSIKK21zZ3N0ciAiIgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNjYKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gYmFkIG1hZ2ljIGF0IGVuZCBvZiBzZWNvbmQgaGVhZGVyIgorbXNnc3RyICLmqpTmoYggYCUuMjUwcycg5bey57aT5pCN5q+AIC0g5Zyo56ys5LqM5YCL5qiZ6aCt5qqU5pyr5bC+55qE6K2Y5Yil56K85LiN5q2j56K6IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoxNjgKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gc2Vjb25kIG1lbWJlciBpcyBub3QgZGF0YSBtZW1iZXIiCittc2dzdHIgIuaqlOahiCBgJS4yNTBzJyDlt7LntpPmkI3mr4AgLSDnrKzkuozlgIvmiJDlk6HkuI3mmK/os4fmlpnmiJDlk6EiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE3NAorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSB3cm9uZyBudW1iZXIgb2YgcGFydHMgZm9yIHF1b3RlZCBzaXplcyIKK21zZ3N0ciAi5qqU5qGIIGAlLjI1MHMnIOW3sue2k+aQjeavgCAtIOWIhuWJsuiZn+eivOWSjOaJgOWuo+eoseeahOWkp+Wwj+S4jeebuOespiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTc4CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIHNpemUgaXMgd3JvbmcgZm9yIHF1b3RlZCBwYXJ0IG51bWJlciIKK21zZ3N0ciAi5qqU5qGIIGAlLjI1MHMnIOW3sue2k+aQjeavgCAtIOWkp+Wwj+WSjOaJgOWuo+eoseeahOWIhuWJsuiZn+eivOS4jeebuOespiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MTg0CisjLCBjLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBmc3RhdCBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIueEoeazlSBmc3RhdCDliIblibLmqpQgYCUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjE4OQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlLjI1MHMnIGlzIGNvcnJ1cHQgLSB0b28gc2hvcnQiCittc2dzdHIgIuaqlOahiCBgJS4yNTBzJyDlt7LntpPmkI3mr4AgLSDmqpTmoYjpgY7lsI8iCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjIwMiBkcGtnLXNwbGl0L2luZm8uYzoyNDkKKyMsIGMtZm9ybWF0Cittc2dpZCAiY2Fubm90IG9wZW4gYXJjaGl2ZSBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIueEoeazlemWi+WVn+Wll+S7tuaqlOeahOWIhuWJsuaqlCBgJS4yNTBzJyIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjA0CisjLCBjLWZvcm1hdAorbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgbm90IGFuIGFyY2hpdmUgcGFydCIKK21zZ3N0ciAi5qqU5qGIIGAlLjI1MHMnIOS4pumdnuafkOWAi+Wll+S7tuaqlOeahOWIhuWJsuaqlCIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjA5CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiJXM6XG4iCisjfCAiICAgIFBhcnQgZm9ybWF0IHZlcnNpb246ICAgICAgICAgICAgJXNcbiIKKyN8ICIgICAgUGFydCBvZiBwYWNrYWdlOiAgICAgICAgICAgICAgICAlc1xuIgorI3wgIiAgICAgICAgLi4uIHZlcnNpb246ICAgICAgICAgICAgICAgICVzXG4iCisjfCAiICAgICAgICAuLi4gTUQ1IGNoZWNrc3VtOiAgICAgICAgICAgJXNcbiIKKyN8ICIgICAgICAgIC4uLiBsZW5ndGg6ICAgICAgICAgICAgICAgICAlbHUgYnl0ZXNcbiIKKyN8ICIgICAgICAgIC4uLiBzcGxpdCBldmVyeTogICAgICAgICAgICAlbHUgYnl0ZXNcbiIKKyN8ICIgICAgUGFydCBudW1iZXI6ICAgICAgICAgICAgICAgICAgICAlZC8lZFxuIgorI3wgIiAgICBQYXJ0IGxlbmd0aDogICAgICAgICAgICAgICAgICAgICV6aSBieXRlc1xuIgorI3wgIiAgICBQYXJ0IG9mZnNldDogICAgICAgICAgICAgICAgICAgICVsdSBieXRlc1xuIgorI3wgIiAgICBQYXJ0IGZpbGUgc2l6ZSAodXNlZCBwb3J0aW9uKTogICVsdSBieXRlc1xuIgorI3wgIlxuIgorbXNnaWQgIiIKKyIlczpcbiIKKyIgICAgUGFydCBmb3JtYXQgdmVyc2lvbjogICAgICAgICAgICAlc1xuIgorIiAgICBQYXJ0IG9mIHBhY2thZ2U6ICAgICAgICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gdmVyc2lvbjogICAgICAgICAgICAgICAgJXNcbiIKKyIgICAgICAgIC4uLiBhcmNoaXRlY3R1cmU6ICAgICAgICAgICAlc1xuIgorIiAgICAgICAgLi4uIE1ENSBjaGVja3N1bTogICAgICAgICAgICVzXG4iCisiICAgICAgICAuLi4gbGVuZ3RoOiAgICAgICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgICAgICAuLi4gc3BsaXQgZXZlcnk6ICAgICAgICAgICAgJWpkIGJ5dGVzXG4iCisiICAgIFBhcnQgbnVtYmVyOiAgICAgICAgICAgICAgICAgICAgJWQvJWRcbiIKKyIgICAgUGFydCBsZW5ndGg6ICAgICAgICAgICAgICAgICAgICAlamQgYnl0ZXNcbiIKKyIgICAgUGFydCBvZmZzZXQ6ICAgICAgICAgICAgICAgICAgICAlamQgYnl0ZXNcbiIKKyIgICAgUGFydCBmaWxlIHNpemUgKHVzZWQgcG9ydGlvbik6ICAlamQgYnl0ZXNcbiIKKyJcbiIKK21zZ3N0ciAiIgorIiVz77yaXG4iCisiICAgIOWIhuWJsuaqlOagvOW8j+eahOeJiOacrO+8miAgICAgICAgICAgICAgJXNcbiIKKyIgICAg5Y6f5aeL5aWX5Lu277yaICAgICAgICAgICAgICAgICAgICAgICVzXG4iCisiICAgICAgICAgLi4uIOeJiOacrO+8miAgICAgICAgICAgICAgICAgJXNcbiIKKyIgICAgICAgICAuLi4gTUQ1IOaqoumpl+eivO+8miAgICAgICAgICAgJXNcbiIKKyIgICAgICAgICAuLi4g5aSn5bCP77yaICAgICAgICAgICAgICAgICAlbHUgYnl0ZXNcbiIKKyIgICAgICAgICAuLi4g5q+P5YCL5YiG5Ymy55qE5aSn5bCP77yaICAgICAgICVsdSBieXRlc1xuIgorIiAgICDliIblibLmqpTnmoTnt6jomZ/vvJogICAgICAgICAgICAgICAgICAlZC8lZFxuIgorIiAgICDliIblibLmqpTnmoTplbfluqbvvJogICAgICAgICAgICAgICAgICAlemkgYnl0ZXNcbiIKKyIgICAg5YiG5Ymy5qqU55qE5YGP56e75L2N572u77yaICAgICAgICAgICAgICAlbHUgYnl0ZXNcbiIKKyIgICAg5YiG5Ymy5qqU77yI5pyD55So5Yiw55qE6YOo5YiG77yJ55qE5aSn5bCP77yaICAlbHUgYnl0ZXNcbiIKKyJcbiIKKworIzogZHBrZy1zcGxpdC9pbmZvLmM6MjI1CisjLCBmdXp6eQorI3wgbXNnaWQgIjx1bmtub3duPiIKK21zZ2N0eHQgImFyY2hpdGVjdHVyZSIKK21zZ2lkICI8dW5rbm93bj4iCittc2dzdHIgIjzmnKrnn6U+IgorCisjOiBkcGtnLXNwbGl0L2luZm8uYzoyNDQgZHBrZy1zcGxpdC9qb2luLmM6MTA1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICItLSVzIHJlcXVpcmVzIG9uZSBvciBtb3JlIHBhcnQgZmlsZSBhcmd1bWVudHMiCittc2dzdHIgIi0taW5mbyDpnIDopoHkuIDlgIvmiJblpJrlgIvliIblibLmqpTnmoTmqpTmoYjlkI3nqLHkvZzngrrlj4PmlbgiCisKKyM6IGRwa2ctc3BsaXQvaW5mby5jOjI1NQorIywgYy1mb3JtYXQKK21zZ2lkICJmaWxlIGAlcycgaXMgbm90IGFuIGFyY2hpdmUgcGFydFxuIgorbXNnc3RyICLmqpTmoYggYCVzJyDkuKbkuI3mmK/lpZfku7bmqpTnmoTliIblibLmqpRcbiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NDQKKyMsIGMtZm9ybWF0Cittc2dpZCAiUHV0dGluZyBwYWNrYWdlICVzIHRvZ2V0aGVyIGZyb20gJWQgcGFydDogIgorbXNnaWRfcGx1cmFsICJQdXR0aW5nIHBhY2thZ2UgJXMgdG9nZXRoZXIgZnJvbSAlZCBwYXJ0czogIgorbXNnc3RyWzBdICIiCittc2dzdHJbMV0gIiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NTEKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gb3V0cHV0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIueEoeazlemWi+WVn+i8uOWHuuaqlCBgJS4yNTBzJyIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6NTcKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIChyZSlvcGVuIGlucHV0IHBhcnQgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi54Sh5rOV77yI6YeN5paw77yJ6ZaL5ZWf5YGa54K66Ly45YWl5LmL55So55qE5YiG5Ymy5qqUIGAlLjI1MHMnIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1OAorIywgZnV6enkKKyN8IG1zZ2lkICJTa2lwcGluZyBkZXNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iCittc2dpZCAic2tpcHBpbmcgc3BsaXQgcGFja2FnZSBoZWFkZXIiCittc2dzdHIgIueVpemBjuacquiiq+mBuOWPlueahOWll+S7tiAlc+OAglxuIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzo1OQorIywgZnV6enkKKyN8IG1zZ2lkICJtaXNzaW5nIHBhY2thZ2UiCittc2dpZCAic3BsaXQgcGFja2FnZSBwYXJ0IgorbXNnc3RyICLmib7kuI3liLDlpZfku7YiCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjY5IGRwa2ctc3BsaXQvc3BsaXQuYzoyMzcKKyMsIGMtZm9ybWF0Cittc2dpZCAiZG9uZVxuIgorbXNnc3RyICLlrozmiJBcbiIKKworIzogZHBrZy1zcGxpdC9qb2luLmM6ODUKKyMsIGMtZm9ybWF0Cittc2dpZCAiZmlsZXMgYCUuMjUwcycgYW5kIGAlLjI1MHMnIGFyZSBub3QgcGFydHMgb2YgdGhlIHNhbWUgZmlsZSIKK21zZ3N0ciAi5qqU5qGIIGAlLjI1MHMnIOWSjCBgJS4yNTBzJyDkuKbkuI3lkIzlsazkuIDlgIvmqpTmoYjnmoTliIblibLmqpQiCisKKyM6IGRwa2ctc3BsaXQvam9pbi5jOjkwCisjLCBjLWZvcm1hdAorbXNnaWQgInRoZXJlIGFyZSBzZXZlcmFsIHZlcnNpb25zIG9mIHBhcnQgJWQgLSBhdCBsZWFzdCBgJS4yNTBzJyBhbmQgYCUuMjUwcyciCittc2dzdHIgIuesrCAlZCDlgIvliIblibLmqpTmnInlpb3lub7lgIvniYjmnKwgLSDoh7PlsJHmnIkgYCUuMjUwcycg5ZKMIGAlLjI1MHMnIgorCisjOiBkcGtnLXNwbGl0L2pvaW4uYzoxMjgKKyMsIGMtZm9ybWF0Cittc2dpZCAicGFydCAlZCBpcyBtaXNzaW5nIgorbXNnc3RyICLnvLrlsJHnrKwgJWQg5YCL5YiG5Ymy5qqUIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo0NworIywgYy1mb3JtYXQKK21zZ2lkICJEZWJpYW4gYCVzJyBwYWNrYWdlIHNwbGl0L2pvaW4gdG9vbDsgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiRGViaWFuIGAlcycg5aWX5Lu25YiH5YmyL+mHjee1hOW3peWFt++5lOeJiOacrCAlc+OAglxuIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo0OQorIywgYy1mb3JtYXQKK21zZ2lkICJDb3B5cmlnaHQgKEMpIDE5OTQtMTk5NiBJYW4gSmFja3Nvbi5cbiIKK21zZ3N0ciAiQ29weXJpZ2h0IChDKSAxOTk0LTE5OTYgSWFuIEphY2tzb24uXG4iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjY3CisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC1zfC0tc3BsaXQgPGZpbGU+IFs8cHJlZml4Pl0gICAgIFNwbGl0IGFuIGFyY2hpdmUuXG4iCisiICAtanwtLWpvaW4gPHBhcnQ+IDxwYXJ0PiAuLi4gICAgICBKb2luIHBhcnRzIHRvZ2V0aGVyLlxuIgorIiAgLUl8LS1pbmZvIDxwYXJ0PiAuLi4gICAgICAgICAgICAgRGlzcGxheSBpbmZvIGFib3V0IGEgcGFydC5cbiIKKyIgIC1hfC0tYXV0byAtbyA8Y29tcGxldGU+IDxwYXJ0PiAgIEF1dG8tYWNjdW11bGF0ZSBwYXJ0cy5cbiIKKyIgIC1sfC0tbGlzdHEgICAgICAgICAgICAgICAgICAgICAgIExpc3QgdW5tYXRjaGVkIHBpZWNlcy5cbiIKKyIgIC1kfC0tZGlzY2FyZCBbPGZpbGVuYW1lPiAuLi5dICAgIERpc2NhcmQgdW5tYXRjaGVkIHBpZWNlcy5cbiIKKyJcbiIKK21zZ3N0ciAiIgorIuaMh+S7pO+8mlxuIgorIiAgLXN8LS1zcGxpdCA85qqU5qGIPiBbPOWJjee2tD5dICAgICAgIOWIh+WJsuWll+S7tuaqlOOAglxuIgorIiAgLWp8LS1qb2luIDzliIblibLmqpQ+IDzliIblibLmqpQ+IC4uLiAg57WQ5ZCI5YiG5Ymy5qqU44CCXG4iCisiICAtSXwtLWluZm8gPOWIhuWJsuaqlD4gLi4uICAgICAgICAgICDpoa/npLrmn5DlgIvliIblibLmqpTnmoTos4foqIrjgIJcbiIKKyIgIC1hfC0tYXV0byAtbyA857WQ5ZCI5qqUPiA85YiG5Ymy5qqUPiAgIOiHquWLlee1kOWQiOWIhuWJsuaqlOOAglxuIgorIiAgLWx8LS1saXN0cSAgICAgICAgICAgICAgICAgICAgICAg5YiX5Ye65LiN55u456ym55qE6YOo5Lu944CCXG4iCisiICAtZHwtLWRpc2NhcmQgWzzmqpTmoYjlkI3nqLE+IC4uLl0gICAg5o2o5qOE5LiN55u456ym55qE6YOo5Lu944CCXG4iCisiXG4iCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjgyCisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiT3B0aW9uczpcbiIKKyN8ICIgIC0tZGVwb3RkaXIgPGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLyVzLlxuIgorI3wgIiAgLVN8LS1wYXJ0c2l6ZSA8c2l6ZT4gICAgICAgICAgICAgSW4gS2lCLCBmb3IgLXMgKGRlZmF1bHQgaXMgNDUwKS5cbiIKKyN8ICIgIC1vfC0tb3V0cHV0IDxmaWxlPiAgICAgICAgICAgICAgIEZvciAtaiAoZGVmYXVsdCBpcyA8cGFja2FnZT4tPHZlcnNpb24+LiIKKyN8ICJkZWIpLlxuIgorI3wgIiAgLVF8LS1ucHF1aWV0ICAgICAgICAgICAgICAgICAgICAgQmUgcXVpZXQgd2hlbiAtYSBpcyBub3QgYSBwYXJ0LlxuIgorI3wgIiAgLS1tc2RvcyAgICAgICAgICAgICAgICAgICAgICAgICAgR2VuZXJhdGUgOC4zIGZpbGVuYW1lcy5cbiIKKyN8ICJcbiIKKyN8ICJFeGl0IHN0YXR1czogMCA9IE9LOyAgMSA9IC1hIGlzIG5vdCBhIHBhcnQ7ICAyID0gdHJvdWJsZSFcbiIKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC0tZGVwb3RkaXIgPGRpcmVjdG9yeT4gICAgICAgICAgIFVzZSA8ZGlyZWN0b3J5PiBpbnN0ZWFkIG9mICVzLyVzLlxuIgorIiAgLVN8LS1wYXJ0c2l6ZSA8c2l6ZT4gICAgICAgICAgICAgSW4gS2lCLCBmb3IgLXMgKGRlZmF1bHQgaXMgNDUwKS5cbiIKKyIgIC1vfC0tb3V0cHV0IDxmaWxlPiAgICAgICAgICAgICAgIEZpbGVuYW1lLCBmb3IgLWogKGRlZmF1bHQgaXNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhY2thZ2U+Xzx2ZXJzaW9uPl88YXJjaD4uZGViKS5cbiIKKyIgIC1RfC0tbnBxdWlldCAgICAgICAgICAgICAgICAgICAgIEJlIHF1aWV0IHdoZW4gLWEgaXMgbm90IGEgcGFydC5cbiIKKyIgIC0tbXNkb3MgICAgICAgICAgICAgICAgICAgICAgICAgIEdlbmVyYXRlIDguMyBmaWxlbmFtZXMuXG4iCisiXG4iCittc2dzdHIgIiIKKyLpgbjpoIXvvJpcbiIKKyIgIC0tZGVwb3RkaXIgPOebrumMhD4gICAgICAgICAgICAgICAg5L2/55SoIDznm67pjIQ+IOS+huWPluS7oyAlcy8lc+OAglxuIgorIiAgLVMvLS1wYXJ0c2l6ZSA85aSn5bCPPiAgICAgICAgICAgICDllq7kvY3ngrogS2lC77yM55So5pa8IC1z77yI6aCQ6Kit54K6IDQ1MO+8ieOAglxuIgorIiAgLW8vLS1vdXRwdXQgPOaqlOahiD4gICAgICAgICAgICAgICDnlKjmlrwgLWrvvIjpoJDoqK3ngrogPOWll+S7tuWQjT4tPOeJiOacrD4uZGVi77yJ44CCXG4iCisiICAtUXwtLW5wcXVpZXQgICAgICAgICAgICAgICAgICAgICDnlbbmnKrmjIflrpogLWEg5pmC77yM5LiN6aGv56S66KiK5oGv44CCXG4iCisiICAtLW1zZG9zICAgICAgICAgICAgICAgICAgICAgICAgICDnlKLnlJ8gOC4zIOeahOaqlOWQjeOAglxuIgorIlxuIgorIumboumWi+eLgOaFi++8mjAgPSBPS++8myAxID0g5pyq5oyH5a6aIC1h77ybMiA9IOeZvOeUn+mMr+iqpO+8gVxuIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzo5MgorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiRXhpdCBzdGF0dXM6XG4iCisiICAwID0gb2tcbiIKKyIgIDEgPSB3aXRoIC0tYXV0bywgZmlsZSBpcyBub3QgYSBwYXJ0XG4iCisiICAyID0gdHJvdWJsZVxuIgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvbWFpbi5jOjEwMworbXNnaWQgIlR5cGUgZHBrZy1zcGxpdCAtLWhlbHAgZm9yIGhlbHAuIgorbXNnc3RyICLovLjlhaUgZHBrZy1zcGxpdCAtLWhlbHAg5Lul5Y+W5b6X6Kqq5piO44CCIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMTUKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgZmlsZSBpbiAlLjI1MHMiCittc2dzdHIgIuWcqCAlLjI1MHMg5Lit5pyJ6aCQ5pyf5LmL5aSW55qE5qqU5qGI57WQ5p2f56ym6JmfIgorCisjOiBkcGtnLXNwbGl0L21haW4uYzoxMjYKK21zZ2lkICJwYXJ0IHNpemUgaXMgZmFyIHRvbyBsYXJnZSBvciBpcyBub3QgcG9zaXRpdmUiCittc2dzdHIgIuWIhuWJsuaqlOeahOWkp+Wwj+W3sumBoOmBoOmBjumVt+aIlumdnuato+aVuCIKKworIzogZHBrZy1zcGxpdC9tYWluLmM6MTMwCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJwYXJ0IHNpemUgbXVzdCBiZSBhdCBsZWFzdCAlZCBLaUIgKHRvIGFsbG93IGZvciBoZWFkZXIpIgorbXNnc3RyICLliIblibLmqpTnmoTlpKflsI/oh7PlsJHlv4XpoIjlpKfmlrwgJWRr77yI54K65LqG5a655LiL5qiZ6aCt6LOH6KiK77yJIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgZGVwb3QgZGlyZWN0b3J5IGAlLjI1MHMnIgorbXNnc3RyICLnhKHms5XoroDlj5bmmqvlrZjnm67pjIQgYCUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxMzQKK21zZ2lkICItLWF1dG8gcmVxdWlyZXMgdGhlIHVzZSBvZiB0aGUgLS1vdXRwdXQgb3B0aW9uIgorbXNnc3RyICItLWF1dG8g6ZyA6KaB6IiHIC0tb3V0cHV0IOS4gOWQjOS9v+eUqCIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjEzNgorbXNnaWQgIi0tYXV0byByZXF1aXJlcyBleGFjdGx5IG9uZSBwYXJ0IGZpbGUgYXJndW1lbnQiCittc2dzdHIgIi0tYXV0byDlj6rpnIDkuIDlgIvliIblibLmqpTnmoTlkI3nqLHkvZzngrrlj4PmlbgiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxNDAKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlYWQgcGFydCBmaWxlIGAlLjI1MHMnIgorbXNnc3RyICLnhKHms5XoroDlj5bliIblibLmqpQgYCUuMjUwcyciCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxNDMKKyMsIGMtZm9ybWF0Cittc2dpZCAiRmlsZSBgJS4yNTBzJyBpcyBub3QgcGFydCBvZiBhIG11bHRpcGFydCBhcmNoaXZlLlxuIgorbXNnc3RyICLmqpTmoYggYCUuMjUwcycg5Lim6Z2e5aWX5Lu25qqU5Lit55qE5LiA5YCL5YiG5Ymy5qqU44CCXG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxNzkKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlb3BlbiBwYXJ0IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIueEoeazlemHjeaWsOmWi+WVn+WIhuWJsuaqlCBgJS4yNTBzJyIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE4MgorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBuZXcgZGVwb3QgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi54Sh5rOV6ZaL5ZWf5paw55qE5pqr5a2Y5qqUIGAlLjI1MHMnIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MTg0Cittc2dpZCAiZXh0cmFjdGluZyBzcGxpdCBwYXJ0IgorbXNnc3RyICIiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoxOTIKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbmFtZSBuZXcgZGVwb3QgZmlsZSBgJS4yNTBzJyB0byBgJS4yNTBzJyIKK21zZ3N0ciAi54Sh5rOV5bCH5paw55qE5pqr5a2Y5qqUIGAlLjI1MHMnIOmHjeaWsOWRveWQjeeCuiBgJS4yNTBzJyIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjE5NgorIywgYy1mb3JtYXQKK21zZ2lkICJQYXJ0ICVkIG9mIHBhY2thZ2UgJXMgZmlsZWQgKHN0aWxsIHdhbnQgIgorbXNnc3RyICLlt7LmlLbpm4YgJWQg5YCL5aWX5Lu2ICVzIOeahOWIhuWJsuaqlO+8iOWwmumcgCAiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyMDAKK21zZ2lkICIgYW5kICIKK21zZ3N0ciAiIOWSjCAiCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyMTQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSB1c2VkLXVwIGRlcG90IGZpbGUgYCUuMjUwcyciCittc2dzdHIgIueEoeazleWIqumZpOeUqOeVoueahOaaq+WtmOaqlCBgJS4yNTBzJyIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjIzNQorbXNnaWQgIkp1bmsgZmlsZXMgbGVmdCBhcm91bmQgaW4gdGhlIGRlcG90IGRpcmVjdG9yeTpcbiIKK21zZ3N0ciAi5Zyo5pqr5a2Y55uu6YyE5Lit55WZ5LiL5LqG5LiA5Lqb5aSa6aSY5qqU5qGI77yaXG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNDAgZHBrZy1zcGxpdC9xdWV1ZS5jOjI2OQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gc3RhdCBgJS4yNTBzJyIKK21zZ3N0ciAi54Sh5rOV5Y+W5b6XIGAlLjI1MHMnIOeahOeLgOaFiyIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI0MworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiICVzICglbHUgYnl0ZXMpXG4iCittc2dpZCAiICVzICglamQgYnl0ZXMpXG4iCittc2dzdHIgIiAlcyAoJWx1IGJ5dGVzKVxuIgorCisjOiBkcGtnLXNwbGl0L3F1ZXVlLmM6MjQ1CisjLCBjLWZvcm1hdAorbXNnaWQgIiAlcyAobm90IGEgcGxhaW4gZmlsZSlcbiIKK21zZ3N0ciAiICVz77yI5Lim6Z2e5LiA6Iis5qqU5qGI77yJXG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzoyNTAKK21zZ2lkICJQYWNrYWdlcyBub3QgeWV0IHJlYXNzZW1ibGVkOlxuIgorbXNnc3RyICLlpZfku7blsJrmnKrntZDlkIjlroznlaLvvJpcbiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI1OAorIywgYy1mb3JtYXQKK21zZ2lkICIgUGFja2FnZSAlczogcGFydChzKSAiCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI3MQorIywgYy1mb3JtYXQKK21zZ2lkICJwYXJ0IGZpbGUgYCUuMjUwcycgaXMgbm90IGEgcGxhaW4gZmlsZSIKK21zZ3N0ciAi5YiG5Ymy5qqUIGAlLjI1MHMnIOS4pumdnuS4gOiIrOaqlOahiCIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjI3OAorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiKHRvdGFsICVsdSBieXRlcylcbiIKK21zZ2lkICIodG90YWwgJWpkIGJ5dGVzKVxuIgorbXNnc3RyICLvvIjlkIjoqIggJWx1IGJ5dGVz77yJXG4iCisKKyM6IGRwa2ctc3BsaXQvcXVldWUuYzozMDQKKyMsIGMtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRpc2NhcmQgYCUuMjUwcyciCittc2dzdHIgIueEoeazleW/veeVpSBgJS4yNTBzJyIKKworIzogZHBrZy1zcGxpdC9xdWV1ZS5jOjMwNQorIywgYy1mb3JtYXQKK21zZ2lkICJEZWxldGVkICVzLlxuIgorbXNnc3RyICLlt7LliKrpmaQgJXPjgIJcbiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjcwIGRwa2ctc3BsaXQvc3BsaXQuYzo3NiBkcGtnLXNwbGl0L3NwbGl0LmM6ODEKK21zZ2lkICJwYWNrYWdlIGZpZWxkIHZhbHVlIGV4dHJhY3Rpb24iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjEzMQorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBzb3VyY2UgZmlsZSBgJS4yNTBzJyIKK21zZ3N0ciAi54Sh5rOV6ZaL5ZWf5L6G5rqQ5qqUIGAlLjI1MHMnIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTMzCittc2dpZCAidW5hYmxlIHRvIGZzdGF0IHNvdXJjZSBmaWxlIgorbXNnc3RyICLnhKHms5UgZnN0YXQg5L6G5rqQ5qqUIgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MTM1CisjLCBjLWZvcm1hdAorbXNnaWQgInNvdXJjZSBmaWxlIGAlLjI1MHMnIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgIuS+hua6kOaqlCBgJS4yNTBzJyDkuKbpnZ7kuIDoiKzmqpTmoYgiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxNTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiU3BsaXR0aW5nIHBhY2thZ2UgJXMgaW50byAlZCBwYXJ0OiAiCittc2dpZF9wbHVyYWwgIlNwbGl0dGluZyBwYWNrYWdlICVzIGludG8gJWQgcGFydHM6ICIKK21zZ3N0clswXSAiIgorbXNnc3RyWzFdICIiCisKKyM6IGRwa2ctc3BsaXQvc3BsaXQuYzoxOTMKK21zZ2lkICIiCisiSGVhZGVyIGlzIHRvbyBsb25nLCBtYWtpbmcgcGFydCB0b28gbG9uZy4gWW91ciBwYWNrYWdlIG5hbWUgb3IgdmVyc2lvblxuIgorIm51bWJlcnMgbXVzdCBiZSBleHRyYW9yZGluYXJpbHkgbG9uZywgb3Igc29tZXRoaW5nLiBHaXZpbmcgdXAuXG4iCittc2dzdHIgIiIKKworIzogZHBrZy1zcGxpdC9zcGxpdC5jOjI0OQorbXNnaWQgIi0tc3BsaXQgbmVlZHMgYSBzb3VyY2UgZmlsZW5hbWUgYXJndW1lbnQiCittc2dzdHIgIi0tc3BsaXQg6ZyA6KaB5LiA5YCL5L6G5rqQ5qqU5L2c54K65Y+D5pW4IgorCisjOiBkcGtnLXNwbGl0L3NwbGl0LmM6MjUyCittc2dpZCAiLS1zcGxpdCB0YWtlcyBhdCBtb3N0IGEgc291cmNlIGZpbGVuYW1lIGFuZCBkZXN0aW5hdGlvbiBwcmVmaXgiCittc2dzdHIgIi0tc3BsaXQg5pyA5aSa6ZyA6KaB5LiA5YCL5L6G5rqQ5qqU5ZKM55uu55qE6Lev5b6R5YmN57a05YGa54K65Y+D5pW4IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6ODQKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJcbiIKKyN8ICJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisjfCAiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi4iCittc2dpZCAiIgorIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAtMjAwMiBXaWNoZXJ0IEFra2VybWFuLlxuIgorIkNvcHlyaWdodCAoQykgMjAwOS0yMDEwIFJhcGhhZWwgSGVydHpvZy5cbiIKK21zZ3N0ciAiIgorIlxuIgorIkNvcHlyaWdodCAoQykgMTk5NSBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEwMQorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSA8Y29tbWFuZD5cbiIKKyN8ICJcbiIKKyN8ICJDb21tYW5kczpcbiIKKyN8ICIgIC0taW5zdGFsbCA8bGluaz4gPG5hbWU+IDxwYXRoPiA8cHJpb3JpdHk+XG4iCisjfCAiICAgIFstLXNsYXZlIDxsaW5rPiA8bmFtZT4gPHBhdGg+XSAuLi5cbiIKKyN8ICIgICAgICAgICAgICAgICAgICAgICAgICAgICBhZGQgYSBncm91cCBvZiBhbHRlcm5hdGl2ZXMgdG8gdGhlIHN5c3RlbS5cbiIKKyN8ICIgIC0tcmVtb3ZlIDxuYW1lPiA8cGF0aD4gICByZW1vdmUgPHBhdGg+IGZyb20gdGhlIDxuYW1lPiBncm91cCAiCisjfCAiYWx0ZXJuYXRpdmUuXG4iCisjfCAiICAtLXJlbW92ZS1hbGwgPG5hbWU+ICAgICAgcmVtb3ZlIDxuYW1lPiBncm91cCBmcm9tIHRoZSBhbHRlcm5hdGl2ZXMgIgorI3wgInN5c3RlbS5cbiIKKyN8ICIgIC0tYXV0byA8bmFtZT4gICAgICAgICAgICBzd2l0Y2ggdGhlIG1hc3RlciBsaW5rIDxuYW1lPiB0byBhdXRvbWF0aWMgIgorI3wgIm1vZGUuXG4iCisjfCAiICAtLWRpc3BsYXkgPG5hbWU+ICAgICAgICAgZGlzcGxheSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgPG5hbWU+IGdyb3VwLlxuIgorI3wgIiAgLS1saXN0IDxuYW1lPiAgICAgICAgICAgIGRpc3BsYXkgYWxsIHRhcmdldHMgb2YgdGhlIDxuYW1lPiBncm91cC5cbiIKKyN8ICIgIC0tY29uZmlnIDxuYW1lPiAgICAgICAgICBzaG93IGFsdGVybmF0aXZlcyBmb3IgdGhlIDxuYW1lPiBncm91cCBhbmQgYXNrICIKKyN8ICJ0aGVcbiIKKyN8ICIgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2VyIHRvIHNlbGVjdCB3aGljaCBvbmUgdG8gdXNlLlxuIgorI3wgIiAgLS1zZXQgPG5hbWU+IDxwYXRoPiAgICAgIHNldCA8cGF0aD4gYXMgYWx0ZXJuYXRpdmUgZm9yIDxuYW1lPi5cbiIKKyN8ICIgIC0tYWxsICAgICAgICAgICAgICAgICAgICBjYWxsIC0tY29uZmlnIG9uIGFsbCBhbHRlcm5hdGl2ZXMuXG4iCisjfCAiXG4iCisjfCAiPGxpbms+IGlzIHRoZSBzeW1saW5rIHBvaW50aW5nIHRvICVzLzxuYW1lPi5cbiIKKyN8ICIgIChlLmcuIC91c3IvYmluL3BhZ2VyKVxuIgorI3wgIjxuYW1lPiBpcyB0aGUgbWFzdGVyIG5hbWUgZm9yIHRoaXMgbGluayBncm91cC5cbiIKKyN8ICIgIChlLmcuIHBhZ2VyKVxuIgorI3wgIjxwYXRoPiBpcyB0aGUgbG9jYXRpb24gb2Ygb25lIG9mIHRoZSBhbHRlcm5hdGl2ZSB0YXJnZXQgZmlsZXMuXG4iCisjfCAiICAoZS5nLiAvdXNyL2Jpbi9sZXNzKVxuIgorI3wgIjxwcmlvcml0eT4gaXMgYW4gaW50ZWdlcjsgb3B0aW9ucyB3aXRoIGhpZ2hlciBudW1iZXJzIGhhdmUgaGlnaGVyICIKKyN8ICJwcmlvcml0eSBpblxuIgorI3wgIiAgYXV0b21hdGljIG1vZGUuXG4iCisjfCAiXG4iCisjfCAiT3B0aW9uczpcbiIKKyN8ICIgIC0tYWx0ZGlyIDxkaXJlY3Rvcnk+ICAgICBjaGFuZ2UgdGhlIGFsdGVybmF0aXZlcyBkaXJlY3RvcnkuXG4iCisjfCAiICAtLWFkbWluZGlyIDxkaXJlY3Rvcnk+ICAgY2hhbmdlIHRoZSBhZG1pbmlzdHJhdGl2ZSBkaXJlY3RvcnkuXG4iCisjfCAiICAtLXZlcmJvc2UgICAgICAgICAgICAgICAgdmVyYm9zZSBvcGVyYXRpb24sIG1vcmUgb3V0cHV0LlxuIgorI3wgIiAgLS1xdWlldCAgICAgICAgICAgICAgICAgIHF1aWV0IG9wZXJhdGlvbiwgbWluaW1hbCBvdXRwdXQuXG4iCisjfCAiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyN8ICIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorbXNnaWQgIiIKKyJDb21tYW5kczpcbiIKKyIgIC0taW5zdGFsbCA8bGluaz4gPG5hbWU+IDxwYXRoPiA8cHJpb3JpdHk+XG4iCisiICAgIFstLXNsYXZlIDxsaW5rPiA8bmFtZT4gPHBhdGg+XSAuLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBhZGQgYSBncm91cCBvZiBhbHRlcm5hdGl2ZXMgdG8gdGhlIHN5c3RlbS5cbiIKKyIgIC0tcmVtb3ZlIDxuYW1lPiA8cGF0aD4gICByZW1vdmUgPHBhdGg+IGZyb20gdGhlIDxuYW1lPiBncm91cCBhbHRlcm5hdGl2ZS5cbiIKKyIgIC0tcmVtb3ZlLWFsbCA8bmFtZT4gICAgICByZW1vdmUgPG5hbWU+IGdyb3VwIGZyb20gdGhlIGFsdGVybmF0aXZlcyAiCisic3lzdGVtLlxuIgorIiAgLS1hdXRvIDxuYW1lPiAgICAgICAgICAgIHN3aXRjaCB0aGUgbWFzdGVyIGxpbmsgPG5hbWU+IHRvIGF1dG9tYXRpYyBtb2RlLlxuIgorIiAgLS1kaXNwbGF5IDxuYW1lPiAgICAgICAgIGRpc3BsYXkgaW5mb3JtYXRpb24gYWJvdXQgdGhlIDxuYW1lPiBncm91cC5cbiIKKyIgIC0tcXVlcnkgPG5hbWU+ICAgICAgICAgICBtYWNoaW5lIHBhcnNlYWJsZSB2ZXJzaW9uIG9mIC0tZGlzcGxheSA8bmFtZT4uXG4iCisiICAtLWxpc3QgPG5hbWU+ICAgICAgICAgICAgZGlzcGxheSBhbGwgdGFyZ2V0cyBvZiB0aGUgPG5hbWU+IGdyb3VwLlxuIgorIiAgLS1nZXQtc2VsZWN0aW9ucyAgICAgICAgIGxpc3QgbWFzdGVyIGFsdGVybmF0aXZlIG5hbWVzIGFuZCB0aGVpciBzdGF0dXMuXG4iCisiICAtLXNldC1zZWxlY3Rpb25zICAgICAgICAgcmVhZCBhbHRlcm5hdGl2ZSBzdGF0dXMgZnJvbSBzdGFuZGFyZCBpbnB1dC5cbiIKKyIgIC0tY29uZmlnIDxuYW1lPiAgICAgICAgICBzaG93IGFsdGVybmF0aXZlcyBmb3IgdGhlIDxuYW1lPiBncm91cCBhbmQgYXNrICIKKyJ0aGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2VyIHRvIHNlbGVjdCB3aGljaCBvbmUgdG8gdXNlLlxuIgorIiAgLS1zZXQgPG5hbWU+IDxwYXRoPiAgICAgIHNldCA8cGF0aD4gYXMgYWx0ZXJuYXRpdmUgZm9yIDxuYW1lPi5cbiIKKyIgIC0tYWxsICAgICAgICAgICAgICAgICAgICBjYWxsIC0tY29uZmlnIG9uIGFsbCBhbHRlcm5hdGl2ZXMuXG4iCisiXG4iCittc2dzdHIgIiIKKyLnlKjms5XvvJolcyBbPOmBuOmghT4gLi4uXSA85ZG95LukPlxuIgorIlxuIgorIuaMh+S7pDpcbiIKKyIgIC0taW5zdGFsbCA86YCj57WQPiA85ZCN56ixPiA85qqU5qGI6Lev5b6RPiA85YSq5YWI562J57SaPlxuIgorIiAgICBbLS1zbGF2ZSA86YCj57WQPiA85ZCN56ixPiA85qqU5qGI6Lev5b6RPl0gLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICDmlrDlop7kuIDns7vliJfnmoTlj6/mm7/mj5vmjIfku6TliLDns7vntbHoo6HjgIJcbiIKKyIgIC0tcmVtb3ZlIDzlkI3nqLE+IDzmqpTmoYjot6/lvpE+IOW+nuWPr+abv+aPm+aMh+S7pCA85ZCN56ixPiDnvqTntYToo6Hnp7vpmaQgPOaqlOahiOi3r+W+kT7jgIJcbiIKKyIgIC0tcmVtb3ZlLWFsbCA85ZCN56ixPiAgICAgICAg55Sx5Y+v5pu/5o+b5oyH5Luk57O757Wx6KOh56e76ZmkIDzlkI3nqLE+IOe+pOe1hOOAglxuIgorIiAgLS1hdXRvIDzlkI3nqLE+ICAgICAgICAgICAgICDlsIfkuLvopoHpgKPntZAgPOWQjeeosT4g5YiH5o+b54K66Ieq5YuV5qih5byP44CCXG4iCisiICAtLWRpc3BsYXkgPOWQjeeosT4gICAgICAgICAgIOmhr+ekuiA85ZCN56ixPiDnvqTntYTnmoTos4foqIrjgIJcbiIKKyIgIC0tbGlzdCA85ZCN56ixPiAgICAgICAgICAgICAg6aGv56S6IDzlkI3nqLE+IOe+pOe1hOaJgOaMh+WQkeeahOeoi+W8j+OAglxuIgorIiAgLS1jb25maWcgPOWQjeeosT4gICAgICAgICAgICDpoa/npLogPOWQjeeosT4g576k57WE55qE5Y+v5pu/5o+b5oyH5Luk77yMXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICDkuKborpPkvb/nlKjogIXpgbjmk4fopoHnlKjlk6rkuIDlgIvjgIJcbiIKKyIgIC0tc2V0IDzlkI3nqLE+IDzmqpTmoYjot6/lvpE+ICAgIOWwhyA85qqU5qGI6Lev5b6RPiDliqDlhaUgPOWQjeeosT4g5Y+v5pu/5o+b5oyH5Luk44CCXG4iCisiICAtLWFsbCAgICAgICAgICAgICAgICAgICAgICDlnKjmiYDmnInnmoTlj6/mm7/mj5vmjIfku6TkuIrlkbzlj6sgLS1jb25maWfjgIJcbiIKKyJcbiIKKyI86YCj57WQPiDmmK/mjIflkJEgJXMvPOWQjeeosT4g55qE56ym6Jmf6YCj57WQ44CCXG4iCisiICDvvIjkvovlpoIgL3Vzci9iaW4vcGFnZXLvvIlcbiIKKyI85ZCN56ixPiDmmK/pgJnlgIvpgKPntZDnvqTntYTnmoTkuLvopoHlkI3nqLHjgIJcbiIKKyIgIO+8iOS+i+WmgiBwYWdlcu+8iVxuIgorIjzmqpTmoYjot6/lvpE+IOaYr+afkOWAi+WPr+abv+aPm+aMh+S7pOaJgOaMh+WQkeeahOaqlOahiOS9jee9ruOAglxuIgorIiAg77yI5L6L5aaCIC91c3IvYmluL2xlc3PvvIlcbiIKKyI85YSq5YWI562J57SaPiDmmK/lgIvmlbTmlbjvvIzmk4HmnInovIPpq5jmlbjlrZfnmoTlnKjoh6rli5XmqKHlvI/oo6HmnIPmnInovIPpq5jnmoTlhKrlhYjnrYnntJrjgIJcbiIKKyJcbiIKKyLpgbjpoIXvvJpcbiIKKyIgIC0tYWx0ZGlyIDznm67pjIQ+ICAgICAgICAgIOaUueiuiuWPr+abv+aPm+aMh+S7pOeahOebrumMhOOAglxuIgorIiAgLS1hZG1pbmRpciA855uu6YyEPiAgICAgICAg5pS56K6K566h55CG55uu6YyE44CCXG4iCisiICAtLXZlcmJvc2UgICAgICAgICAgICAgICAg6Kmz55uh55qE5pON5L2c6YGO56iL77yM5pyD6Ly45Ye65pu05aSa55qE6LOH6KiK44CCXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAg5a6J6Z2c5qih5byP77yM5YSY6YeP5LiN6aGv56S66KiK5oGv44CCXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAg6aGv56S66YCZ5YCL6Kqq5piO6KiK5oGv44CCXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAg6aGv56S654mI5pys6LOH6KiK44CCXG4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjAKKyMsIGMtZm9ybWF0Cittc2dpZCAiIgorIjxsaW5rPiBpcyB0aGUgc3ltbGluayBwb2ludGluZyB0byAlcy88bmFtZT4uXG4iCisiICAoZS5nLiAvdXNyL2Jpbi9wYWdlcilcbiIKKyI8bmFtZT4gaXMgdGhlIG1hc3RlciBuYW1lIGZvciB0aGlzIGxpbmsgZ3JvdXAuXG4iCisiICAoZS5nLiBwYWdlcilcbiIKKyI8cGF0aD4gaXMgdGhlIGxvY2F0aW9uIG9mIG9uZSBvZiB0aGUgYWx0ZXJuYXRpdmUgdGFyZ2V0IGZpbGVzLlxuIgorIiAgKGUuZy4gL3Vzci9iaW4vbGVzcylcbiIKKyI8cHJpb3JpdHk+IGlzIGFuIGludGVnZXI7IG9wdGlvbnMgd2l0aCBoaWdoZXIgbnVtYmVycyBoYXZlIGhpZ2hlciBwcmlvcml0eSAiCisiaW5cbiIKKyIgIGF1dG9tYXRpYyBtb2RlLlxuIgorIlxuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMzEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLS1hbHRkaXIgPGRpcmVjdG9yeT4gICAgIGNoYW5nZSB0aGUgYWx0ZXJuYXRpdmVzIGRpcmVjdG9yeS5cbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICBjaGFuZ2UgdGhlIGFkbWluaXN0cmF0aXZlIGRpcmVjdG9yeS5cbiIKKyIgIC0tbG9nIDxmaWxlPiAgICAgICAgICAgICBjaGFuZ2UgdGhlIGxvZyBmaWxlLlxuIgorIiAgLS1mb3JjZSAgICAgICAgICAgICAgICAgIGFsbG93IHJlcGxhY2luZyBmaWxlcyB3aXRoIGFsdGVybmF0aXZlIGxpbmtzLlxuIgorIiAgLS1za2lwLWF1dG8gICAgICAgICAgICAgIHNraXAgcHJvbXB0IGZvciBhbHRlcm5hdGl2ZXMgY29ycmVjdGx5ICIKKyJjb25maWd1cmVkXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gYXV0b21hdGljIG1vZGUgKHJlbGV2YW50IGZvciAtLWNvbmZpZyBvbmx5KVxuIgorIiAgLS12ZXJib3NlICAgICAgICAgICAgICAgIHZlcmJvc2Ugb3BlcmF0aW9uLCBtb3JlIG91dHB1dC5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBxdWlldCBvcGVyYXRpb24sIG1pbmltYWwgb3V0cHV0LlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIgorIueUqOazle+8miVzIFs86YG46aCFPiAuLi5dIDzlkb3ku6Q+XG4iCisiXG4iCisi5ZG95Luk77yaXG4iCisiICAtLWFkZCA85pOB5pyJ6ICFPiA8576k57WEPiA85qih5byPPiA85qqU5qGIPlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIOaWsOWinuS4gOWAi+aWsOmgheebruiHs+izh+aWmeW6q+OAglxuIgorIiAgLS1yZW1vdmUgPOaqlOahiD4gICAgICAgICAg55Sx6LOH5paZ5bqr5Lit56e76Zmk5qqU5qGI44CCXG4iCisiICAtLWxpc3QgWzzmr5TlsI3ooajpgZTlvI8+XSAgICDliJflh7rnm67liY3os4fmlpnluqvkuK3nmoTlvLfliLbpgbjpoIXjgIJcbiIKKyJcbiIKKyLpgbjpoIXvvJpcbiIKKyIgIC0tYWRtaW5kaXIgPOebrumMhD4gICAgICAgIOioreWumiBzdGF0b3ZlcnJpZGUg5qqU5omA5L2/55So55qE55uu6YyE44CCXG4iCisiICAtLXVwZGF0ZSAgICAgICAgICAgICAgICAg56uL5Y2z5pu05paw5qqU5qGI5qyK6ZmQ44CCXG4iCisiICAtLWZvcmNlICAgICAgICAgICAgICAgICAg5Y2z5L2/5pyq6IO96YCa6YGO5a6M5pW05qqi6amX77yM5Lmf5by35Yi26YCy6KGM5p+Q5YCL5YuV5L2c44CCXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAg5a6J6Z2c5qih5byP77yM5YSY6YeP5LiN6aGv56S66KiK5oGv44CCXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAg6aGv56S66YCZ5YCL6Kqq5piO6KiK5oGv44CCXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAg6aGv56S654mI5pys6LOH6KiK44CCXG4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE2MworbXNnaWQgImVycm9yIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxOTMKKyMsIGZ1enp5Cittc2dpZCAid2FybmluZyIKK21zZ3N0ciAi5Lit5q2i5pON5L2cIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MzU2CisjLCBmdXp6eSwgYy1mb3JtYXQKKyN8IG1zZ2lkICJ0d28gY29tbWFuZHMgc3BlY2lmaWVkOiAlcyBhbmQgLS0lcyIKK21zZ2lkICJ0d28gY29tbWFuZHMgc3BlY2lmaWVkOiAtLSVzIGFuZCAtLSVzIgorbXNnc3RyICLmjIflrprkuoblhanlgIvmjIfku6TvvJolcyDku6Xlj4ogLS0lcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjM4NworIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiY2Fubm90IG9wZW4gZGl2ZXJzaW9uczogJXMiCittc2dpZCAiY2Fubm90IGFwcGVuZCB0byAnJXMnIgorbXNnc3RyICLnhKHms5XplovllZ/mir3mj5vpoIXnm67vvJolcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjU1NgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAidW5hYmxlIHRvIHJlbW92ZSAlczogJXMiCittc2dpZCAidW5hYmxlIHRvIHJlbW92ZSAnJXMnIgorbXNnc3RyICLnhKHms5Xnp7vpmaQgJXPvvJolcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExMTEKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGZpbGUgd2hpbGUgdHJ5aW5nIHRvIHJlYWQgJXMiCittc2dzdHIgIuWcqCAlMiQuMjU1cyDkuK3nmoQgJTEkcyDmnInpoJDmnJ/kuYvlpJbnmoTmqpTmoYjntZDmnZ/nrKbomZ8iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTEzCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJ3aGlsZSByZWFkaW5nICVzOiAlcyIKK21zZ3N0ciAi54Sh5rOV6K6A5Y+WICVz77yaJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTE5CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJsaW5lIG5vdCB0ZXJtaW5hdGVkIHdoaWxlIHRyeWluZyB0byByZWFkICVzIgorbXNnc3RyICLlnKggJTIkLjI1NXMg5Lit55qEICUxJHMg5pyJ6aCQ5pyf5LmL5aSW55qE5qqU5qGI57WQ5p2f56ym6JmfIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTEzNworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiJXMgY29ycnVwdDogJXMiCittc2dzdHIgIuWFp+mDqOmMr+iqpO+8miVzIOaQjeavgO+8miVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE1MAorIywgYy1mb3JtYXQKK21zZ2lkICJuZXdsaW5lcyBwcm9oaWJpdGVkIGluIHVwZGF0ZS1hbHRlcm5hdGl2ZXMgZmlsZXMgKCVzKSIKK21zZ3N0ciAi5ZyoIHVwZGF0ZS1hbHRlcm5hdGl2ZXMg5qqUICglcykg6KOh5LiN5Y+v5pyJ5o+b6KGM56ym6JmfIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE2MworbXNnaWQgInNsYXZlIG5hbWUiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjExNzEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MDUKKyMsIGZ1enp5LCBjLWZvcm1hdAorI3wgbXNnaWQgImR1cGxpY2F0ZSBzbGF2ZSAlcyIKK21zZ2lkICJkdXBsaWNhdGUgc2xhdmUgbmFtZSAlcyIKK21zZ3N0ciAi6YeN6KSH55qE5qyh6KaBICVzIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTE3NAorIywgZnV6enkKK21zZ2lkICJzbGF2ZSBsaW5rIgorbXNnc3RyICLph43opIfnmoTmrKHopoHpgKPntZAgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTc4CisjLCBjLWZvcm1hdAorbXNnaWQgInNsYXZlIGxpbmsgc2FtZSBhcyBtYWluIGxpbmsgJXMiCittc2dzdHIgIuasoeimgemAo+e1kOiIh+S4u+imgemAo+e1kCAlcyDnm7jlkIwiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMTg1IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDEyCisjLCBjLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBzbGF2ZSBsaW5rICVzIgorbXNnc3RyICLph43opIfnmoTmrKHopoHpgKPntZAgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjA0Cittc2dpZCAibWFzdGVyIGZpbGUiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIHBhdGggJXMiCittc2dzdHIgIumHjeikh+eahOi3r+W+kSAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMjYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiIKKyJhbHRlcm5hdGl2ZSAlcyAocGFydCBvZiBsaW5rIGdyb3VwICVzKSBkb2Vzbid0IGV4aXN0LiBSZW1vdmluZyBmcm9tIGxpc3Qgb2YgIgorImFsdGVybmF0aXZlcy4iCittc2dzdHIgIiVzIOeahOabv+aPm+mgheebruaMh+WQkeS6hiAlcyAtIOS9huWNu+aJvuS4jeWIsOOAguWwh+WFtuW+nuabv+aPm+mgheebruWIl+ihqOS4reenu+mZpOOAgiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMjkgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyNDAKKyMsIGZ1enp5Cittc2dpZCAicHJpb3JpdHkiCittc2dzdHIgIuWEquWFiOasiiAlcyAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyMzIgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyNDkKK21zZ2lkICJzbGF2ZSBmaWxlIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxMjQ0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJwcmlvcml0eSBvZiAlczogJXMiCittc2dzdHIgIuWEquWFiOasiiAlcyAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyOTcKK21zZ2lkICJzdGF0dXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEyOTkKKyMsIGZ1enp5Cittc2dpZCAiaW52YWxpZCBzdGF0dXMiCittc2dzdHIgIueEoeaViOeahOabtOaWsOaooeW8jyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzMDQKKyMsIGZ1enp5Cittc2dpZCAibWFzdGVyIGxpbmsiCittc2dzdHIgIumHjeikh+eahOasoeimgemAo+e1kCAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjEzNDgKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImRpc2NhcmRpbmcgb2Jzb2xldGUgc2xhdmUgbGluayAlcyAoJXMpLiIKK21zZ3N0ciAi5o2o5qOE5bey5bui5qOE55qE5qyh6KaB6YCj57WQICVzICglcynjgIIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTAyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTY5CisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjYzOAorbXNnaWQgImF1dG8gbW9kZSIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwMiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU3OAorIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MzkKK21zZ2lkICJtYW51YWwgbW9kZSIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUwNQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiICBsaW5rIGN1cnJlbnRseSBwb2ludHMgdG8gJXMiCittc2dzdHIgIiDnm67liY3nmoTpgKPntZDmmK/mjIflkJEgJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTA4CisjLCBmdXp6eQorbXNnaWQgIiAgbGluayBjdXJyZW50bHkgYWJzZW50IgorbXNnc3RyICIg6YCj57WQ55uu5YmN5aSx5pWIIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUxMgorIywgZnV6enksIGMtZm9ybWF0CisjfCBtc2dpZCAiJXMgLSBwcmlvcml0eSAlcyIKK21zZ2lkICIlcyAtIHByaW9yaXR5ICVkIgorbXNnc3RyICIlcyAtIOWEquWFiOasiiAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1MTUKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIiAgc2xhdmUgJXM6ICVzIgorbXNnc3RyICIg5qyh6KaBICVz77yaJXMiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTIyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJDdXJyZW50ICdiZXN0JyB2ZXJzaW9uIGlzICclcycuIgorbXNnc3RyICLnm67liY0gYOacgOS9sycg55qE54mI5pys54K6ICVz44CCIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTUyNAorbXNnaWQgIk5vIHZlcnNpb25zIGF2YWlsYWJsZS4iCittc2dzdHIgIuaykuacieWPr+eUqOeahOeJiOacrOOAgiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NTMKKyMsIGMtZm9ybWF0Cittc2dpZCAiVGhlcmUgaXMgJWQgY2hvaWNlIGZvciB0aGUgYWx0ZXJuYXRpdmUgJXMgKHByb3ZpZGluZyAlcykuIgorbXNnaWRfcGx1cmFsICJUaGVyZSBhcmUgJWQgY2hvaWNlcyBmb3IgdGhlIGFsdGVybmF0aXZlICVzIChwcm92aWRpbmcgJXMpLiIKK21zZ3N0clswXSAiIgorbXNnc3RyWzFdICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNTYwCisjLCBmdXp6eQorbXNnaWQgIlNlbGVjdGlvbiIKK21zZ3N0ciAi57Ch5LuLIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTU2MQorbXNnaWQgIlBhdGgiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NjEKKyMsIGZ1enp5Cittc2dpZCAiUHJpb3JpdHkiCittc2dzdHIgIuWEquWFiOasiiAlcyAlcyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1NjEKK21zZ2lkICJTdGF0dXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE1ODIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIlByZXNzIGVudGVyIHRvIGtlZXAgdGhlIGN1cnJlbnQgY2hvaWNlWypdLCBvciB0eXBlIHNlbGVjdGlvbiBudW1iZXI6ICIKK21zZ3N0ciAi6KuL5oyJ5LiLIFtlbnRlcl0g5L2/55So6aCQ6Kit5YC8Wypd77yM5oiW6Ly45YWl6YG45pOH6Jmf56K877yaIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTcyMQorIywgYy1mb3JtYXQKK21zZ2lkICJub3QgcmVwbGFjaW5nICVzIHdpdGggYSBsaW5rLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MTc2MgorIywgYy1mb3JtYXQKK21zZ2lkICJjYW4ndCBpbnN0YWxsIHVua25vd24gY2hvaWNlICVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoxNzgwCisjLCBjLWZvcm1hdAorbXNnaWQgIiIKKyJza2lwIGNyZWF0aW9uIG9mICVzIGJlY2F1c2UgYXNzb2NpYXRlZCBmaWxlICVzIChvZiBsaW5rIGdyb3VwICVzKSBkb2Vzbid0ICIKKyJleGlzdC4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjE3OTAKKyMsIGMtZm9ybWF0Cittc2dpZCAibm90IHJlbW92aW5nICVzIHNpbmNlIGl0J3Mgbm90IGEgc3ltbGluay4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNDEgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNDcKKyMsIGMtZm9ybWF0Cittc2dpZCAiQ2FsbCAlcy4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNTEKKyMsIGMtZm9ybWF0Cittc2dpZCAiQWx0ZXJuYXRpdmUgJXMgdW5jaGFuZ2VkIGJlY2F1c2UgY2hvaWNlICVzIGlzIG5vdCBhdmFpbGFibGUuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDU1CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJTa2lwIHVua25vd24gYWx0ZXJuYXRpdmUgJXMuIgorbXNnc3RyICLmib7kuI3liLDlj6/mm7/mj5vnqIvlvI8gYCVzJ+OAgiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIwNzcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImxpbmUgdG9vIGxvbmcgb3Igbm90IHRlcm1pbmF0ZWQgd2hpbGUgdHJ5aW5nIHRvIHJlYWQgJXMiCittc2dzdHIgIuWcqCAlMiQuMjU1cyDkuK3nmoQgJTEkcyDmnInpoJDmnJ/kuYvlpJbnmoTmqpTmoYjntZDmnZ/nrKbomZ8iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMDkwIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTAzCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjExMworIywgYy1mb3JtYXQKK21zZ2lkICJTa2lwIGludmFsaWQgbGluZTogJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIxMzIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInJlbmFtaW5nICVzIGxpbmsgZnJvbSAlcyB0byAlcy4iCittc2dzdHIgIuato+WcqOWwhyAlcyDpgKPntZDnlLEgJXMg5pu05ZCN54K6ICVz44CCIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE3MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAicmVuYW1pbmcgJXMgc2xhdmUgbGluayBmcm9tICVzIHRvICVzLiIKK21zZ3N0ciAi5q2j5Zyo5bCHICVzIOasoeimgemAo+e1kOeUsSAlcyDmm7TlkI3ngrogJXPjgIIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTg5CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIG5hbWUgKCVzKSBtdXN0IG5vdCBjb250YWluICcvJyBhbmQgc3BhY2VzLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjE5MworIywgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSBsaW5rIGlzIG5vdCBhYnNvbHV0ZSBhcyBpdCBzaG91bGQgYmU6ICVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMTk3CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIHBhdGggaXMgbm90IGFic29sdXRlIGFzIGl0IHNob3VsZCBiZTogJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIyMjQKKyMsIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgbWFzdGVyOiBpdCBpcyBhIHNsYXZlIG9mICVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjMyIHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjY3CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIGxpbmsgJXMgaXMgYWxyZWFkeSBtYW5hZ2VkIGJ5ICVzLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjI0MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgcGF0aCAlcyBkb2Vzbid0IGV4aXN0LiIKK21zZ3N0ciAi6K2m5ZGK77ya5bex6Kit5a6a54K6IC0tdXBkYXRlIOS9hiAlcyDkuI3lrZjlnKgiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjU0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBzbGF2ZSBvZiAlczogaXQgaXMgYSBtYXN0ZXIgYWx0ZXJuYXRpdmUuIgorbXNnc3RyICIlcyDnmoTmm7/mj5vpoIXnm67mjIflkJHkuoYgJXMgLSDkvYbljbvmib7kuI3liLDjgILlsIflhbblvp7mm7/mj5vpoIXnm67liJfooajkuK3np7vpmaTjgIIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjU4CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlICVzIGNhbid0IGJlIHNsYXZlIG9mICVzOiBpdCBpcyBhIHNsYXZlIG9mICVzIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMjc4CisjLCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlIGxpbmsgJXMgaXMgYWxyZWFkeSBtYW5hZ2VkIGJ5ICVzIChzbGF2ZSBvZiAlcykuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzI0CisjLCBjLWZvcm1hdAorbXNnaWQgInVua25vd24gYXJndW1lbnQgYCVzJyIKK21zZ3N0ciAi5pyq55+l5Y+D5pW4IGAlcyciCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzQzCittc2dpZCAiLS1pbnN0YWxsIG5lZWRzIDxsaW5rPiA8bmFtZT4gPHBhdGg+IDxwcmlvcml0eT4iCittc2dzdHIgIi0taW5zdGFsbCDopoHmnIkgPOmAo+e1kD4gPOWQjeeosT4gPOaqlOahiOi3r+W+kT4gPOWEquWFiOasij4iCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzQ2IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyMzk3Cittc2dpZCAiPGxpbms+IGFuZCA8cGF0aD4gY2FuJ3QgYmUgdGhlIHNhbWUiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNDkKK21zZ2lkICJwcmlvcml0eSBtdXN0IGJlIGFuIGludGVnZXIiCittc2dzdHIgIuWEquWFiOasiuW/hemgiOeCuuaVtOaVuCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNjIKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyA8bmFtZT4gPHBhdGg+IgorbXNnc3RyICItLSVzIOimgeaciSA85ZCN56ixPiA85qqU5qGI6Lev5b6RPiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjIzNzYKKyMsIGMtZm9ybWF0Cittc2dpZCAiLS0lcyBuZWVkcyA8bmFtZT4iCittc2dzdHIgIi0tJXMg6KaB5pyJIDzlkI3nqLE+IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM4OAorbXNnaWQgIi0tc2xhdmUgb25seSBhbGxvd2VkIHdpdGggLS1pbnN0YWxsIgorbXNnc3RyICItLXNsYXZlIOWPquiDveaQremFjSAtLWluc3RhbGwg5L2/55SoIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM5MAorbXNnaWQgIi0tc2xhdmUgbmVlZHMgPGxpbms+IDxuYW1lPiA8cGF0aD4iCittc2dzdHIgIi0tc2xhdmUg6KaB5pyJIDzpgKPntZA+IDzlkI3nqLE+IDzmqpTmoYjot6/lvpE+IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjM5OQorIywgYy1mb3JtYXQKK21zZ2lkICJuYW1lICVzIGlzIGJvdGggcHJpbWFyeSBhbmQgc2xhdmUiCittc2dzdHIgIuWQjeeosSAlcyDlkIzmmYLmmK/kuLvopoHlj4rmrKHopoEiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNDAyCisjLCBjLWZvcm1hdAorbXNnaWQgImxpbmsgJXMgaXMgYm90aCBwcmltYXJ5IGFuZCBzbGF2ZSIKK21zZ3N0ciAi6YCj57WQICVzIOWQjOaZguaYr+S4u+imgeWPiuasoeimgSIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0MjIKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIi0tJXMgbmVlZHMgYSA8ZmlsZT4gYXJndW1lbnQiCittc2dzdHIgIi0tJXMg6ZyA6KaB5LiA5YCL5Y+D5pW4IgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQ0OAorIywgYy1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiBgJXMnIgorbXNnc3RyICLmnKrnn6XpgbjpoIUgYCVzJyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI0NTMKKyMsIGZ1enp5Cittc2dpZCAiIgorIm5lZWQgLS1kaXNwbGF5LCAtLXF1ZXJ5LCAtLWxpc3QsIC0tZ2V0LXNlbGVjdGlvbnMsIC0tY29uZmlnLCAtLXNldCwgLS1zZXQtIgorInNlbGVjdGlvbnMsIC0taW5zdGFsbCwgLS1yZW1vdmUsIC0tYWxsLCAtLXJlbW92ZS1hbGwgb3IgLS1hdXRvIgorbXNnc3RyICIiCisi6KaB5pyJIC0tZGlzcGxheSwgLS1jb25maWcsIC0tc2V0LCAtLWluc3RhbGwsIC0tcmVtb3ZlLCAtLWFsbCwgLS1yZW1vdmUtYWxsIOaIliAiCisiLS1hdXRvIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjQ5MAorIywgZnV6enkKKyN8IG1zZ2lkICJyZWFkIGVycm9yIG9uIHN0YW5kYXJkIGlucHV0IgorbXNnaWQgIjxzdGFuZGFyZCBpbnB1dD4iCittc2dzdHIgIuW+nuaomea6lui8uOWFpeiugOWPluizh+aWmeaZgueZvOeUn+mMr+iqpCIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MDAgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1MDMKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgIm5vIGFsdGVybmF0aXZlcyBmb3IgJXMuIgorbXNnc3RyICLmspLmnIkgJXMg55qE5pu/5o+b5qqU44CCIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjUzMAorIywgYy1mb3JtYXQKK21zZ2lkICIlcy8lcyBpcyBkYW5nbGluZywgaXQgd2lsbCBiZSB1cGRhdGVkIHdpdGggYmVzdCBjaG9pY2UuIgorbXNnc3RyICIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTM0CisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICIiCisiJXMvJXMgaGFzIGJlZW4gY2hhbmdlZCAobWFudWFsbHkgb3IgYnkgYSBzY3JpcHQpLiBTd2l0Y2hpbmcgdG8gbWFudWFsICIKKyJ1cGRhdGVzIG9ubHkuIgorbXNnc3RyICIiCisiJXMg5bey5pyJ5pu05YuV77yI5omL5YuV5oiW6KKr5p+Q5YCLIHNjcmlwdCDkv67mlLnvvInjgIJcbiIKKyLliIfmj5vmiJDlg4Xog73miYvli5Xmm7TmlrDjgIIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTQyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJzZXR0aW5nIHVwIGF1dG9tYXRpYyBzZWxlY3Rpb24gb2YgJXMuIgorbXNnc3RyICLmraPlnKjoqK3lrpogJXMg55qE6Ieq5YuV6YG45pOH44CCIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU1MQorIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiYWx0ZXJuYXRpdmUgJXMgZm9yICVzIG5vdCByZWdpc3RlcmVkLCBub3Qgc2V0dGluZy4iCittc2dzdHIgIiUyJHMg55qE5pu/5o+b6aCF55uuICUxJHMg5rKS5pyJ6Ki75YaK77yM54Sh5rOV56e76Zmk44CCIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU1NyB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjU2MworIywgZnV6enksIGMtZm9ybWF0Cittc2dpZCAiVGhlcmUgaXMgbm8gcHJvZ3JhbSB3aGljaCBwcm92aWRlcyAlcy4iCittc2dzdHIgIiIKKyLmspLmnInnqIvlvI/mnInmj5DkvpsgJXPjgIJcbiIKKyLmr4vpnIDku7vkvZXoqK3lrprjgIJcbiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NjUgdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NzUKK21zZ2lkICJOb3RoaW5nIHRvIGNvbmZpZ3VyZS4iCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1NzMKKyMsIGMtZm9ybWF0Cittc2dpZCAiVGhlcmUgaXMgb25seSBvbmUgYWx0ZXJuYXRpdmUgaW4gbGluayBncm91cCAlczogJXMiCittc2dzdHIgIiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI1ODQKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImFsdGVybmF0aXZlICVzIGZvciAlcyBub3QgcmVnaXN0ZXJlZCwgbm90IHJlbW92aW5nLiIKK21zZ3N0ciAiJTIkcyDnmoTmm7/mj5vpoIXnm64gJTEkcyDmspLmnInoqLvlhorvvIznhKHms5Xnp7vpmaTjgIIiCisKKyM6IHV0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYzoyNTkyCisjLCBmdXp6eSwgYy1mb3JtYXQKK21zZ2lkICJyZW1vdmluZyBtYW51YWxseSBzZWxlY3RlZCBhbHRlcm5hdGl2ZSAtIHN3aXRjaGluZyAlcyB0byBhdXRvIG1vZGUiCittc2dzdHIgIuato+WcqOenu+mZpOeUseaJi+WLleaJgOmBuOaTh+eahOabv+S7o+aMh+S7pCAtIOWIh+aPm+eCuuiHquWLleaooeW8jyIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MTcKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgImF1dG9tYXRpYyB1cGRhdGVzIG9mICVzLyVzIGFyZSBkaXNhYmxlZCwgbGVhdmluZyBpdCBhbG9uZS4iCittc2dzdHIgIiVzIOeahOiHquWLleabtOaWsOW3suiiq+WBnOeUqO+8jOS4jeWBmuiuiuabtOOAgiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MTkKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInRvIHJldHVybiB0byBhdXRvbWF0aWMgdXBkYXRlcyB1c2UgJyVzIC0tYXV0byAlcycuIgorbXNnc3RyICLoi6XopoHlm57lvqnmiJDoh6rli5Xmm7TmlrDvvIzoq4vln7fooYwgYHVwZGF0ZS1hbHRlcm5hdGl2ZXMgLS1hdXRvICVzJ+OAgiIKKworIzogdXRpbHMvdXBkYXRlLWFsdGVybmF0aXZlcy5jOjI2MzYKKyMsIGZ1enp5LCBjLWZvcm1hdAorbXNnaWQgInVzaW5nICVzIHRvIHByb3ZpZGUgJXMgKCVzKSBpbiAlcy4iCittc2dzdHIgIuS7pSAnJXMnIOaPkOS+myAnJXMn44CCIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjY0NAorIywgYy1mb3JtYXQKK21zZ2lkICIiCisiZm9yY2luZyByZWluc3RhbGxhdGlvbiBvZiBhbHRlcm5hdGl2ZSAlcyBiZWNhdXNlIGxpbmsgZ3JvdXAgJXMgaXMgYnJva2VuLiIKK21zZ3N0ciAiIgorCisjOiB1dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmM6MjY1MQorIywgYy1mb3JtYXQKK21zZ2lkICJjdXJyZW50IGFsdGVybmF0aXZlICVzIGlzIHVua25vd24sIHN3aXRjaGluZyB0byAlcyBmb3IgbGluayBncm91cCAlcy4iCittc2dzdHIgIiIKKworIywgZnV6enkKKyN+IG1zZ2lkICJpdCBpcyBhIHNsYXZlIG9mICVzIgorI34gbXNnc3RyICIg5qyh6KaBICVz77yaJXMiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgImNhbm5vdCBzdGF0IG9sZCBuYW1lIGAlcyc6ICVzIgorI34gbXNnaWQgImNhbm5vdCBzdGF0ICVzOiAlcyIKKyN+IG1zZ3N0ciAi54Sh5rOV5Y+W5b6X5Y6f5pys5ZCN56ixIGAlcycg55qE6LOH6KiK77yaJXMiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgIiVzOiBjb3B5aW5nICVzIHRvICVzIGZhaWxlZCwgZ2l2aW5nIHVwOiAlcyIKKyN+IG1zZ2lkICJzY2FuIG9mICVzIGZhaWxlZDogJXMiCisjfiBtc2dzdHIgIiVz77ya5Zyo5bCHICVzIOikh+ijveiHsyAlcyDmmYLnmbznlJ/pjK/oqqTvvIzlj5bmtojmk43kvZzvvJolcyIKKworIywgZnV6enkKKyN+fCBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgJXMiCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWN1dGUgJXM6ICVzIgorI34gbXNnc3RyICLnhKHms5Xln7fooYwgJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gbWFrZSAlcyBhIHN5bWxpbmsgdG8gJXM6ICVzIgorI34gbXNnc3RyICLnhKHms5XorpMgJXMg5oiQ54K65oyH5ZCRICVzIOeahOespuiZn+mAo+e1kO+8miVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgJXMgYXMgJXM6ICVzIgorI34gbXNnc3RyICLnhKHms5XlsIcgJXMg5a6J6KOd54K6ICVz77yaJXMiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAid2hpbGUgd3JpdGluZyAlczogJXMiCisjfiBtc2dzdHIgIuWcqOWvq+WFpSBzdGRvdXQg5pmC55m855Sf6Yyv6Kqk77yaJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcmVhZCAlczogJXMiCisjfiBtc2dzdHIgIueEoeazleiugOWPliAlc++8miVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGNsb3NlICVzOiAlcyIKKyN+IG1zZ3N0ciAi54Sh5rOV6Zec6ZaJICVz77yaJXMiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgInVuYWJsZSB0byB3cml0ZSAlczogJXMiCisjfiBtc2dpZCAiY2Fubm90IHdyaXRlICVzOiAlcyIKKyN+IG1zZ3N0ciAi54Sh5rOV5a+r5YWlICVz77yaJXMiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgInVuYWJsZSB0byByZW5hbWUgJXMgdG8gJXM6ICVzIgorI34gbXNnaWQgInVuYWJsZSB0byByZW5hbWUgZmlsZSAnJXMnIHRvICclcyciCisjfiBtc2dzdHIgIueEoeazleWwhyAlcyDmm7TlkI3ngrogJXPvvJolcyIKKworI34gbXNnaWQgIm1hbGxvYyBmYWlsZWQgKCVsZCBieXRlcykiCisjfiBtc2dzdHIgIm1hbGxvYyDlpLHmlZfvvIglbGQg5L2N5YWD57WE77yJIgorCisjfiBtc2dpZCAicmVhbGxvYyBmYWlsZWQgKCVsZCBieXRlcykiCisjfiBtc2dzdHIgInJlYWxsb2Mg5aSx5pWX77yIJWxkIOS9jeWFg+e1hO+8iSIKKworI34gbXNnaWQgInVuYWJsZSB0byB1bmJ1ZmZlciBgJS4yNTVzJyIKKyN+IG1zZ3N0ciAi54Sh5rOV6Zec6ZaJ57ep6KGdIGAlLjI1NXMnIgorCisjfiBtc2dpZCAicGFydCBmaWxlIGAlLjI1MHMnIGhhcyB0cmFpbGluZyBnYXJiYWdlIgorI34gbXNnc3RyICLliIblibLmqpQgYCUuMjUwcycg55qE57WQ5bC+5pyJ54Sh5pWI55qE6LOH5paZIgorCisjfiBtc2dpZCAic2l6ZSAlN2Qgb2NjdXJzICU1ZCB0aW1lc1xuIgorI34gbXNnc3RyICLlpKflsI/ngrogJTdkIOWHuuePvuS6hiAlNWQg5qyhXG4iCisKKyN+IG1zZ2lkICJvdXQgb2YgbWVtb3J5IHB1c2hpbmcgZXJyb3IgaGFuZGxlcjogIgorI34gbXNnc3RyICLlnKjpgLLooYzpjK/oqqTomZXnkIbmmYLoqJjmhrbpq5TkuI3otrPvvJoiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gdW5sb2NrIGRwa2cgc3RhdHVzIGRhdGFiYXNlIgorI34gbXNnc3RyICLnhKHms5Xop6PpmaTpjpblrpogZHBrZyDnmoTni4DmhYvos4fmlpnluqsiCisKKyN+IG1zZ2lkICJjb3B5IGluZm8gZmlsZSBgJS4yNTVzJyIKKyN+IG1zZ3N0ciAi6KSH6KO9IGluZm8g5qqUIGAlLjI1NXMnIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHdyaXRlIHBhcnNpbmcgd2FybmluZyIKKyN+IG1zZ3N0ciAi54Sh5rOV5a+r5YWl6Kqe5rOV5YiG5p6Q6K2m5ZGK5paH5a2XIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGxvY2sgdHJpZ2dlcnMgYXJlYSIKKyN+IG1zZ3N0ciAi54Sh5rOV6Y6W5a6a6Ke455m856iL5byP5Y2AIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHJ1biAlcyAoJS4yNTBzKSIKKyN+IG1zZ3N0ciAi54Sh5rOV5Z+36KGMICVzICglLjI1MHMpIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgc2hlbGwgKCUuMjUwcykiCisjfiBtc2dzdHIgIueEoeazleWft+ihjCBzaGVsbCAoJS4yNTBzKSIKKworI34gbXNnaWQgInVuYWJsZSB0byBjaGVjayBmb3IgZXhpc3RlbmNlIG9mIGAlLjI1MHMnIgorI34gbXNnc3RyICLnhKHms5XliKTmlrcgYCUuMjUwcycg5piv5ZCm5a2Y5ZyoIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgcm0gZm9yIGNsZWFudXAiCisjfiBtc2dzdHIgIueEoeazleWft+ihjCBybSDku6XpgLLooYzmuIXnkIYiCisKKyN+IG1zZ2lkICIiCisjfiAiJXMgZGVidWdnaW5nIG9wdGlvbiwgLS1kZWJ1Zz08b2N0YWw+IG9yIC1EPG9jdGFsPjpcbiIKKyN+ICJcbiIKKyN+ICIgbnVtYmVyICByZWYuIGluIHNvdXJjZSAgIGRlc2NyaXB0aW9uXG4iCisjfiAiICAgICAgMSAgIGdlbmVyYWwgICAgICAgICAgIEdlbmVyYWxseSBoZWxwZnVsIHByb2dyZXNzIGluZm9ybWF0aW9uXG4iCisjfiAiICAgICAgMiAgIHNjcmlwdHMgICAgICAgICAgIEludm9jYXRpb24gYW5kIHN0YXR1cyBvZiBtYWludGFpbmVyIHNjcmlwdHNcbiIKKyN+ICIgICAgIDEwICAgZWFjaGZpbGUgICAgICAgICAgT3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkXG4iCisjfiAiICAgIDEwMCAgIGVhY2hmaWxlZGV0YWlsICAgIExvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkXG4iCisjfiAiICAgICAyMCAgIGNvbmZmICAgICAgICAgICAgIE91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGVcbiIKKyN+ICIgICAgMjAwICAgY29uZmZkZXRhaWwgICAgICAgTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggY29uZmlndXJhdGlvbiBmaWxlXG4iCisjfiAiICAgICA0MCAgIGRlcGNvbiAgICAgICAgICAgIERlcGVuZGVuY2llcyBhbmQgY29uZmxpY3RzXG4iCisjfiAiICAgIDQwMCAgIGRlcGNvbmRldGFpbCAgICAgIExvdHMgb2YgZGVwZW5kZW5jaWVzL2NvbmZsaWN0cyBvdXRwdXRcbiIKKyN+ICIgIDEwMDAwICAgdHJpZ2dlcnMgICAgICAgICAgVHJpZ2dlciBhY3RpdmF0aW9uIGFuZCBwcm9jZXNzaW5nXG4iCisjfiAiICAyMDAwMCAgIHRyaWdnZXJzZGV0YWlsICAgIExvdHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2Vyc1xuIgorI34gIiAgNDAwMDAgICB0cmlnZ2Vyc3N0dXBpZCAgICBTaWxseSBhbW91bnRzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnNcbiIKKyN+ICIgICAxMDAwICAgdmVyeXZlcmJvc2UgICAgICAgTG90cyBvZiBkcml2ZWwgYWJvdXQgZWcgdGhlIGRwa2cvaW5mbyAiCisjfiAiZGlyZWN0b3J5XG4iCisjfiAiICAgMjAwMCAgIHN0dXBpZGx5dmVyYm9zZSAgIEluc2FuZSBhbW91bnRzIG9mIGRyaXZlbFxuIgorI34gIlxuIgorI34gIkRlYnVnZ2luZyBvcHRpb25zIGFyZSBiZSBtaXhlZCB1c2luZyBiaXR3aXNlLW9yLlxuIgorI34gIk5vdGUgdGhhdCB0aGUgbWVhbmluZ3MgYW5kIHZhbHVlcyBhcmUgc3ViamVjdCB0byBjaGFuZ2UuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICIlcyDpmaTpjK/pgbjpoIXvvIwtLWRlYnVnPTzlhavpgLLliLbmlbjlrZc+IOaIliAtRDzlhavpgLLliLbmlbjlrZc+77yaXG4iCisjfiAiXG4iCisjfiAiICAgIOaVuOWtlyAg5Y6f5aeL56K85Y+D54Wn5paH5a2XICAgIOiqquaYjlxuIgorI34gIiAgICAgIDEgICBnZW5lcmFsICAgICAgICAgICDkuIDoiKznmoTovJTliqnpgLLluqbos4foqIpcbiIKKyN+ICIgICAgICAyICAgc2NyaXB0cyAgICAgICAgICAg57at6K236ICFIFNjcmlwdCDnmoTlsI3mh4nos4foqIrlj4rni4DmhYtcbiIKKyN+ICIgICAgIDEwICAgZWFjaGZpbGUgICAgICAgICAg5q+P55W25Zyo5pON5L2c5qqU5qGI5pmC6Ly45Ye6XG4iCisjfiAiICAgIDEwMCAgIGVhY2hmaWxlZGV0YWlsICAgIOavj+eVtuWcqOaTjeS9nOaqlOahiOaZgui8uOWHuuips+eboeizh+ioilxuIgorI34gIiAgICAgMjAgICBjb25mZiAgICAgICAgICAgICDmr4/nlbblnKjomZXnkIboqK3lrprmqpTmmYLovLjlh7pcbiIKKyN+ICIgICAgMjAwICAgY29uZmZkZXRhaWwgICAgICAg5q+P55W25Zyo6JmV55CG6Kit5a6a5qqU5pmC6Ly45Ye66Kmz55uh6LOH6KiKXG4iCisjfiAiICAgICA0MCAgIGRlcGNvbiAgICAgICAgICAgIOebuOS+neWPiuihneeqgemXnOS/glxuIgorI34gIiAgICA0MDAgICBkZXBjb25kZXRhaWwgICAgICDnm7jkvp3lj4rooZ3nqoHpl5zkv4LnmoToqbPnm6Hos4foqIpcbiIKKyN+ICIgIDEwMDAwICAgdHJpZ2dlcnMgICAgICAgICAg6Ke455m856iL5byP55qE5ZG85Y+r5Y+K6JmV55CGXG4iCisjfiAiICAyMDAwMCAgIHRyaWdnZXJzZGV0YWlsICAgIOinuOeZvOeoi+W8j+eahOebuOmXnOips+eboeizh+ioilxuIgorI34gIiAgNDAwMDAgICB0cmlnZ2Vyc3N0dXBpZCAgICDop7jnmbznqIvlvI/nmoTnm7jpl5zotoXoqbPnm6Hos4foqIpcbiIKKyN+ICIgICAxMDAwICAgdmVyeXZlcmJvc2UgICAgICAg5aSn6YeP55qE55Gj56KO57Sw56+A77yM5aaCIGRwa2cvaW5mbyDnm67pjIRcbiIKKyN+ICIgICAyMDAwICAgc3R1cGlkbHl2ZXJib3NlICAg5pW46YeP5qW15aSn55qE6LaF6Kmz55uh6LOH6KiKXG4iCisjfiAiXG4iCisjfiAi5Y+v55SoIG9yIOS9jeWFg+mBi+eul+S+hue1hOWQiOmZpOmMr+mBuOmgheOAglxuIgorI34gIuiri+azqOaEj++8jOS7peS4iueahOiqquaYjuWPiuaVuOWAvOWPr+iDveacg+acieiuiuWLleOAglxuIgorCisjLCBmdXp6eQorI358IG1zZ2lkICIiCisjfnwgIiVzIGZvcmNpbmcgb3B0aW9ucyAtIGNvbnRyb2wgYmVoYXZpb3VyIHdoZW4gcHJvYmxlbXMgZm91bmQ6XG4iCisjfnwgIiAgd2FybiBidXQgY29udGludWU6ICAtLWZvcmNlLTx0aGluZz4sPHRoaW5nPiwuLi5cbiIKKyN+fCAiICBzdG9wIHdpdGggZXJyb3I6ICAgIC0tcmVmdXNlLTx0aGluZz4sPHRoaW5nPiwuLi4gfCAtLW5vLWZvcmNlLSIKKyN+fCAiPHRoaW5nPiwuLi5cbiIKKyN+fCAiIEZvcmNpbmcgdGhpbmdzOlxuIgorI358ICIgIGFsbCBbIV0gICAgICAgICAgICAgICAgU2V0IGFsbCBmb3JjZSBvcHRpb25zXG4iCisjfnwgIiAgZG93bmdyYWRlIFsqXSAgICAgICAgICBSZXBsYWNlIGEgcGFja2FnZSB3aXRoIGEgbG93ZXIgdmVyc2lvblxuIgorI358ICIgIGNvbmZpZ3VyZS1hbnkgICAgICAgICAgQ29uZmlndXJlIGFueSBwYWNrYWdlIHdoaWNoIG1heSBoZWxwIHRoaXMgb25lXG4iCisjfnwgIiAgaG9sZCAgICAgICAgICAgICAgICAgICBQcm9jZXNzIGluY2lkZW50YWwgcGFja2FnZXMgZXZlbiB3aGVuIG9uIGhvbGRcbiIKKyN+fCAiICBiYWQtcGF0aCAgICAgICAgICAgICAgIFBBVEggaXMgbWlzc2luZyBpbXBvcnRhbnQgcHJvZ3JhbXMsIHByb2JsZW1zICIKKyN+fCAibGlrZWx5XG4iCisjfnwgIiAgbm90LXJvb3QgICAgICAgICAgICAgICBUcnkgdG8gKGRlKWluc3RhbGwgdGhpbmdzIGV2ZW4gd2hlbiBub3Qgcm9vdFxuIgorI358ICIgIG92ZXJ3cml0ZSAgICAgICAgICAgICAgT3ZlcndyaXRlIGEgZmlsZSBmcm9tIG9uZSBwYWNrYWdlIHdpdGggYW5vdGhlclxuIgorI358ICIgIG92ZXJ3cml0ZS1kaXZlcnRlZCAgICAgT3ZlcndyaXRlIGEgZGl2ZXJ0ZWQgZmlsZSB3aXRoIGFuIHVuZGl2ZXJ0ZWQgIgorI358ICJ2ZXJzaW9uXG4iCisjfnwgIiAgYmFkLXZlcmlmeSAgICAgICAgICAgICBJbnN0YWxsIGEgcGFja2FnZSBldmVuIGlmIGl0IGZhaWxzIGF1dGhlbnRpY2l0eSAiCisjfnwgImNoZWNrXG4iCisjfnwgIiAgZGVwZW5kcy12ZXJzaW9uIFshXSAgICBUdXJuIGRlcGVuZGVuY3kgdmVyc2lvbiBwcm9ibGVtcyBpbnRvIHdhcm5pbmdzXG4iCisjfnwgIiAgZGVwZW5kcyBbIV0gICAgICAgICAgICBUdXJuIGFsbCBkZXBlbmRlbmN5IHByb2JsZW1zIGludG8gd2FybmluZ3NcbiIKKyN+fCAiICBjb25mbmV3IFshXSAgICAgICAgICAgIEFsd2F5cyB1c2UgdGhlIG5ldyBjb25maWcgZmlsZXMsIGRvbid0IHByb21wdFxuIgorI358ICIgIGNvbmZvbGQgWyFdICAgICAgICAgICAgQWx3YXlzIHVzZSB0aGUgb2xkIGNvbmZpZyBmaWxlcywgZG9uJ3QgcHJvbXB0XG4iCisjfnwgIiAgY29uZmRlZiBbIV0gICAgICAgICAgICBVc2UgdGhlIGRlZmF1bHQgb3B0aW9uIGZvciBuZXcgY29uZmlnIGZpbGVzIGlmICIKKyN+fCAib25lXG4iCisjfnwgIiAgICAgICAgICAgICAgICAgICAgICAgICBpcyBhdmFpbGFibGUsIGRvbid0IHByb21wdC4gSWYgbm8gZGVmYXVsdCBjYW4gIgorI358ICJiZSBmb3VuZCxcbiIKKyN+fCAiICAgICAgICAgICAgICAgICAgICAgICAgIHlvdSB3aWxsIGJlIHByb21wdGVkIHVubGVzcyBvbmUgb2YgdGhlIGNvbmZvbGQgIgorI358ICJvclxuIgorI358ICIgICAgICAgICAgICAgICAgICAgICAgICAgY29uZm5ldyBvcHRpb25zIGlzIGFsc28gZ2l2ZW5cbiIKKyN+fCAiICBjb25mbWlzcyBbIV0gICAgICAgICAgIEFsd2F5cyBpbnN0YWxsIG1pc3NpbmcgY29uZmlnIGZpbGVzXG4iCisjfnwgIiAgYnJlYWtzIFshXSAgICAgICAgICAgICBJbnN0YWxsIGV2ZW4gaWYgaXQgd291bGQgYnJlYWsgYW5vdGhlciBwYWNrYWdlXG4iCisjfnwgIiAgY29uZmxpY3RzIFshXSAgICAgICAgICBBbGxvdyBpbnN0YWxsYXRpb24gb2YgY29uZmxpY3RpbmcgcGFja2FnZXNcbiIKKyN+fCAiICBhcmNoaXRlY3R1cmUgWyFdICAgICAgIFByb2Nlc3MgZXZlbiBwYWNrYWdlcyB3aXRoIHdyb25nIGFyY2hpdGVjdHVyZVxuIgorI358ICIgIG92ZXJ3cml0ZS1kaXIgWyFdICAgICAgT3ZlcndyaXRlIG9uZSBwYWNrYWdlJ3MgZGlyZWN0b3J5IHdpdGggIgorI358ICJhbm90aGVyJ3MgZmlsZVxuIgorI358ICIgIHJlbW92ZS1yZWluc3RyZXEgWyFdICAgUmVtb3ZlIHBhY2thZ2VzIHdoaWNoIHJlcXVpcmUgaW5zdGFsbGF0aW9uXG4iCisjfnwgIiAgcmVtb3ZlLWVzc2VudGlhbCBbIV0gICBSZW1vdmUgYW4gZXNzZW50aWFsIHBhY2thZ2VcbiIKKyN+fCAiXG4iCisjfnwgIldBUk5JTkcgLSB1c2Ugb2Ygb3B0aW9ucyBtYXJrZWQgWyFdIGNhbiBzZXJpb3VzbHkgZGFtYWdlIHlvdXIgIgorI358ICJpbnN0YWxsYXRpb24uXG4iCisjfnwgIkZvcmNpbmcgb3B0aW9ucyBtYXJrZWQgWypdIGFyZSBlbmFibGVkIGJ5IGRlZmF1bHQuXG4iCisjfiBtc2dpZCAiIgorI34gIiVzIGZvcmNpbmcgb3B0aW9ucyAtIGNvbnRyb2wgYmVoYXZpb3VyIHdoZW4gcHJvYmxlbXMgZm91bmQ6XG4iCisjfiAiICB3YXJuIGJ1dCBjb250aW51ZTogIC0tZm9yY2UtPHRoaW5nPiw8dGhpbmc+LC4uLlxuIgorI34gIiAgc3RvcCB3aXRoIGVycm9yOiAgICAtLXJlZnVzZS08dGhpbmc+LDx0aGluZz4sLi4uIHwgLS1uby1mb3JjZS0iCisjfiAiPHRoaW5nPiwuLi5cbiIKKyN+ICIgRm9yY2luZyB0aGluZ3M6XG4iCisjfiAiICBhbGwgWyFdICAgICAgICAgICAgICAgIFNldCBhbGwgZm9yY2Ugb3B0aW9uc1xuIgorI34gIiAgZG93bmdyYWRlIFsqXSAgICAgICAgICBSZXBsYWNlIGEgcGFja2FnZSB3aXRoIGEgbG93ZXIgdmVyc2lvblxuIgorI34gIiAgY29uZmlndXJlLWFueSAgICAgICAgICBDb25maWd1cmUgYW55IHBhY2thZ2Ugd2hpY2ggbWF5IGhlbHAgdGhpcyBvbmVcbiIKKyN+ICIgIGhvbGQgICAgICAgICAgICAgICAgICAgUHJvY2VzcyBpbmNpZGVudGFsIHBhY2thZ2VzIGV2ZW4gd2hlbiBvbiBob2xkXG4iCisjfiAiICBiYWQtcGF0aCAgICAgICAgICAgICAgIFBBVEggaXMgbWlzc2luZyBpbXBvcnRhbnQgcHJvZ3JhbXMsIHByb2JsZW1zICIKKyN+ICJsaWtlbHlcbiIKKyN+ICIgIG5vdC1yb290ICAgICAgICAgICAgICAgVHJ5IHRvIChkZSlpbnN0YWxsIHRoaW5ncyBldmVuIHdoZW4gbm90IHJvb3RcbiIKKyN+ICIgIG92ZXJ3cml0ZSAgICAgICAgICAgICAgT3ZlcndyaXRlIGEgZmlsZSBmcm9tIG9uZSBwYWNrYWdlIHdpdGggYW5vdGhlclxuIgorI34gIiAgb3ZlcndyaXRlLWRpdmVydGVkICAgICBPdmVyd3JpdGUgYSBkaXZlcnRlZCBmaWxlIHdpdGggYW4gdW5kaXZlcnRlZCAiCisjfiAidmVyc2lvblxuIgorI34gIiAgYmFkLXZlcmlmeSAgICAgICAgICAgICBJbnN0YWxsIGEgcGFja2FnZSBldmVuIGlmIGl0IGZhaWxzIGF1dGhlbnRpY2l0eSAiCisjfiAiY2hlY2tcbiIKKyN+ICIgIGRlcGVuZHMtdmVyc2lvbiBbIV0gICAgVHVybiBkZXBlbmRlbmN5IHZlcnNpb24gcHJvYmxlbXMgaW50byB3YXJuaW5nc1xuIgorI34gIiAgZGVwZW5kcyBbIV0gICAgICAgICAgICBUdXJuIGFsbCBkZXBlbmRlbmN5IHByb2JsZW1zIGludG8gd2FybmluZ3NcbiIKKyN+ICIgIGNvbmZuZXcgWyFdICAgICAgICAgICAgQWx3YXlzIHVzZSB0aGUgbmV3IGNvbmZpZyBmaWxlcywgZG9uJ3QgcHJvbXB0XG4iCisjfiAiICBjb25mb2xkIFshXSAgICAgICAgICAgIEFsd2F5cyB1c2UgdGhlIG9sZCBjb25maWcgZmlsZXMsIGRvbid0IHByb21wdFxuIgorI34gIiAgY29uZmRlZiBbIV0gICAgICAgICAgICBVc2UgdGhlIGRlZmF1bHQgb3B0aW9uIGZvciBuZXcgY29uZmlnIGZpbGVzIGlmICIKKyN+ICJvbmVcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgaXMgYXZhaWxhYmxlLCBkb24ndCBwcm9tcHQuIElmIG5vIGRlZmF1bHQgY2FuIGJlICIKKyN+ICJmb3VuZCxcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgeW91IHdpbGwgYmUgcHJvbXB0ZWQgdW5sZXNzIG9uZSBvZiB0aGUgY29uZm9sZCAiCisjfiAib3JcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgY29uZm5ldyBvcHRpb25zIGlzIGFsc28gZ2l2ZW5cbiIKKyN+ICIgIGNvbmZtaXNzIFshXSAgICAgICAgICAgQWx3YXlzIGluc3RhbGwgbWlzc2luZyBjb25maWcgZmlsZXNcbiIKKyN+ICIgIGNvbmZhc2sgWyFdICAgICAgICAgICAgT2ZmZXIgdG8gcmVwbGFjZSBjb25maWcgZmlsZXMgd2l0aCBubyBuZXcgIgorI34gInZlcnNpb25zXG4iCisjfiAiICBicmVha3MgWyFdICAgICAgICAgICAgIEluc3RhbGwgZXZlbiBpZiBpdCB3b3VsZCBicmVhayBhbm90aGVyIHBhY2thZ2VcbiIKKyN+ICIgIGNvbmZsaWN0cyBbIV0gICAgICAgICAgQWxsb3cgaW5zdGFsbGF0aW9uIG9mIGNvbmZsaWN0aW5nIHBhY2thZ2VzXG4iCisjfiAiICBhcmNoaXRlY3R1cmUgWyFdICAgICAgIFByb2Nlc3MgZXZlbiBwYWNrYWdlcyB3aXRoIHdyb25nIGFyY2hpdGVjdHVyZVxuIgorI34gIiAgb3ZlcndyaXRlLWRpciBbIV0gICAgICBPdmVyd3JpdGUgb25lIHBhY2thZ2UncyBkaXJlY3Rvcnkgd2l0aCBhbm90aGVyJ3MgIgorI34gImZpbGVcbiIKKyN+ICIgIHVuc2FmZS1pbyBbIV0gICAgICAgICAgRG8gbm90IHBlcmZvcm0gc2FmZSBJL08gb3BlcmF0aW9ucyB3aGVuICIKKyN+ICJ1bnBhY2tpbmdcbiIKKyN+ICIgIHJlbW92ZS1yZWluc3RyZXEgWyFdICAgUmVtb3ZlIHBhY2thZ2VzIHdoaWNoIHJlcXVpcmUgaW5zdGFsbGF0aW9uXG4iCisjfiAiICByZW1vdmUtZXNzZW50aWFsIFshXSAgIFJlbW92ZSBhbiBlc3NlbnRpYWwgcGFja2FnZVxuIgorI34gIlxuIgorI34gIldBUk5JTkcgLSB1c2Ugb2Ygb3B0aW9ucyBtYXJrZWQgWyFdIGNhbiBzZXJpb3VzbHkgZGFtYWdlIHlvdXIgIgorI34gImluc3RhbGxhdGlvbi5cbiIKKyN+ICJGb3JjaW5nIG9wdGlvbnMgbWFya2VkIFsqXSBhcmUgZW5hYmxlZCBieSBkZWZhdWx0LlxuIgorI34gbXNnc3RyICIiCisjfiAiJXMg5by35Yi26YG46aCFIC0g5Y+v5oyH5a6a6YGH5Yiw5ZWP6aGM5pmC55qE6JmV55CG5pa55rOV77yaXG4iCisjfiAiICDorablkYrvvIzkvYbnubznuozln7fooYzvvJogLS1mb3JjZS085omL5q61Piw85omL5q61PiwuLi5cbiIKKyN+ICIgIOaciemMr+iqpOaZgueri+WNs+S4reatou+8miAtLXJlZnVzZS085omL5q61Piw85omL5q61PiwuLi4gfCAtLW5vLWZvcmNlLTzmiYvmrrU+LC4uLlxuIgorI34gIiDlvLfliLbln7fooYznmoTlkITnqK7mlrnms5XvvJpcbiIKKyN+ICIgIGFsbCBbIV0gICAgICAgICAgICAgICAg5ZWf55So5omA5pyJ55qE5by35Yi26YG46aCFXG4iCisjfiAiICBkb3duZ3JhZGUgWypdICAgICAgICAgIOaKiuWll+S7tuabv+aPm+aIkOi8g+S9jueahOeJiOacrFxuIgorI34gIiAgY29uZmlndXJlLWFueSAgICAgICAgICDoqK3lrprku7vkvZXlj6/og73og73luavliqnop6PmsbrllY/poYznmoTlpZfku7ZcbiIKKyN+ICIgIGhvbGQgICAgICAgICAgICAgICAgICAg5ZCM5pmC6JmV55CG55u46Zec5aWX5Lu277yM5Y2z5L2/5bey6KKr5L+d55WZKGhvbGQpXG4iCisjfiAiICBiYWQtcGF0aCAgICAgICAgICAgICAgIFBBVEgg55Kw5aKD6K6K5pW45Lit5om+5LiN5Yiw6Zec6Y2156iL5byP77yM5pyJ5Y+v6IO95byV6LW36Yyv6KqkXG4iCisjfiAiICBub3Qtcm9vdCAgICAgICAgICAgICAgIOWNs+S9v+S4jeaYryByb29077yM5Lmf6Kmm5ZyW5a6J6KOd77yI56e76Zmk77yJ6Luf6auUXG4iCisjfiAiICBvdmVyd3JpdGUgICAgICAgICAgICAgIOS7peafkOWll+S7tueahOaqlOahiOimhuiTi+WPpuS4gOWll+S7tueahOaqlOahiFxuIgorI34gIiAgb3ZlcndyaXRlLWRpdmVydGVkICAgICDkvb/nlKjkuIDlgIvpnZ7mir3mj5vniYjnmoTmqpTmoYjopobok4vljp/mnInnmoTmir3mj5vniYhcbiIKKyN+ICIgIGJhZC12ZXJpZnkgICAgICAgICAgICAg5a6J6KOd5Y2z5L2/5rKS6IO96YCa6YGO6amX6Ki855qE5aWX5Lu2XG4iCisjfiAiICBkZXBlbmRzLXZlcnNpb24gWyFdICAgIOWwh+eJiOacrOebuOS+neWVj+mhjOS9nOeCuuitpuWRiuiZleeQhlxuIgorI34gIiAgZGVwZW5kcyBbIV0gICAgICAgICAgICDmiormiYDmnInpoZ7lnovnmoTnm7jkvp3llY/poYzpg73kvZzngrrorablkYromZXnkIZcbiIKKyN+ICIgIGNvbmZuZXcgWyFdICAgICAgICAgICAg55u05o6l5L2/55So5paw54mI55qE6Kit5a6a5qqU77yM5LiN5pyD5o+Q56S6XG4iCisjfiAiICBjb25mb2xkIFshXSAgICAgICAgICAgIOebtOaOpeS9v+eUqOWOn+acieeahOioreWumuaqlO+8jOS4jeacg+aPkOekulxuIgorI34gIiAgY29uZmRlZiBbIV0gICAgICAgICAgICDlpoLmnpzmnInmj5DkvpvpoJDoqK3lgLzvvIzlsLHnm7TmjqXlpZfnlKjmlrzmlrDnmoToqK3lrprmqpRcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAg5aaC5p6c5rKS5pyJ77yM5Y+I5rKS5pyJ5L2/55SoIGNvbmZuZXcg5oiWIGNvbmZvbGQg6YG46aCF77yMXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgIOWJh+Wwh+acg+aPkOekuu+8jOS6pOeUseS9v+eUqOiAheaxuuWumlxuIgorI34gIiAgY29uZm1pc3MgWyFdICAgICAgICAgICDlvLfliLblronoo53mrKDnvLrnmoToqK3lrprmqpRcbiIKKyN+ICIgIGNvbmZsaWN0cyBbIV0gICAgICAgICAg5Y2z5L2/5Y+v6IO95pyD5q+A5pCN5YW25a6D5aWX5Lu25Lmf6KaB6YCy6KGM5a6J6KOdXG4iCisjfiAiICBhcmNoaXRlY3R1cmUgWyFdICAgICAgIOWNs+S9v+ehrOmrlOW5s+WPsOS4jeespuS5n+imgemAsuihjOWuieijnVxuIgorI34gIiAgb3ZlcndyaXRlLWRpciBbIV0gICAgICDku6Xmn5DlpZfku7bnmoTmqpTmoYjopobok4vlj6bkuIDlpZfku7bnmoTnm67pjIRcbiIKKyN+ICIgIHJlbW92ZS1yZWluc3RyZXEgWyFdICAg56e76Zmk6YKj5Lqb5b+F6ZyA6Zqo5LmL5a6J6KOd55qE5aWX5Lu2XG4iCisjfiAiICByZW1vdmUtZXNzZW50aWFsIFshXSAgIOenu+mZpOafkOWAi+WfuuacrOWll+S7tlxuIgorI34gIlxuIgorI34gIuitpuWRiiAtIOS9v+eUqOaomeekuuS6hiBbIV0g55qE6YG46aCF5Y+v6IO95pyD5Zq06YeN56C05aOe5oKo55qE5a6J6KOd5L2c5qWt44CCXG4iCisjfiAi6aCQ6Kit5pyD5ZWf55So5qiZ56S65LqGIFsqXSDnmoTlvLfliLbpgbjpoIXjgIJcbiIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIGRwa2ctc3BsaXQgdG8gc2VlIGlmIGl0J3MgcGFydCBvZiBhIG11bHRpcGFydGVyIgorI34gbXNnc3RyICLnhKHms5Xln7fooYwgZHBrZy1zcGxpdCDku6XliKTmlrflroPmmK/lkKbngrrlpZfku7bmqpTkuK3nmoTkuIDlgIvliIblibLmqpQiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlY2wgZGVic2lnLXZlcmlmeSIKKyN+IG1zZ3N0ciAi54Sh5rOVIGV4ZWNsIGRlYnNpZy12ZXJpZnkiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBkcGtnLWRlYiB0byBleHRyYWN0IGNvbnRyb2wgaW5mb3JtYXRpb24iCisjfiBtc2dzdHIgIueEoeazleWft+ihjCBkcGtnLWRlYiDku6Xmk7flj5YgY29udHJvbCDos4foqIoiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gZXhlYyBkcGtnLWRlYiB0byBnZXQgZmlsZXN5c3RlbSBhcmNoaXZlIgorI34gbXNnc3RyICLnhKHms5Xln7fooYwgZHBrZy1kZWIg5Lul5Y+W5b6X5qqU5qGI57O757Wx5LiK55qE5aWX5Lu25qqUIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGRlbGV0ZSBkaXNhcHBlYXJpbmcgY29udHJvbCBpbmZvIGZpbGUgYCUuMjUwcyciCisjfiBtc2dzdHIgIueEoeazleWIqumZpOW3sue2k+a2iOWkseS6hueahCBjb250cm9sIOizh+ioiuaqlCBgJS4yNTBzJyIKKworI34gbXNnaWQgImRwa2c6ICVzIG5vdCBmb3VuZC5cbiIKKyN+IG1zZ3N0ciAiZHBrZ++8muaykuacieaJvuWIsCAlc+OAglxuIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGNoZGlyIHRvIC4uLi9ERUJJQU4iCisjfiBtc2dzdHIgIueEoeazlSBjaGRpciDliLAgLi4uL0RFQklBTiIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIHRhciAtY2YiCisjfiBtc2dzdHIgIueEoeazleWft+ihjCB0YXIgLWNmIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIG1ha2UgdG1wZmlsZSAoY29udHJvbCkiCisjfiBtc2dzdHIgIueEoeazleW7uueri+iHqOaZguaqlCAoY29udHJvbCkiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gdW5saW5rIHRtcGZpbGUgKGNvbnRyb2wpLCAlcyIKKyN+IG1zZ3N0ciAi54Sh5rOV5Yiq6Zmk6Ieo5pmC5qqUIChjb250cm9sKe+8jCVzIgorCisjfiBtc2dpZCAiY29udHJvbCIKKyN+IG1zZ3N0ciAiY29udHJvbCIKKworI34gbXNnaWQgImZhaWxlZCB0byByZXdpbmQgdG1wZmlsZSAoY29udHJvbCkiCisjfiBtc2dzdHIgIueEoeazlei3s+WIsOiHqOaZguaqlOeahOi1t+Wni+S9jee9riAoY29udHJvbCkiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZnN0YXQgdG1wZmlsZSAoY29udHJvbCkiCisjfiBtc2dzdHIgIueEoeazlSBmc3RhdCDoh6jmmYLmqpQgKGNvbnRyb2wpIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgZmluZCIKKyN+IG1zZ3N0ciAi54Sh5rOV5Z+36KGMIGZpbmQiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gZXhlYyBzaCAtYyBtdiBmb28vKiAmYyIKKyN+IG1zZ3N0ciAi54Sh5rOV5Z+36KGMIHNoIC1jIG12IGZvby8qICZjIgorCisjfiBtc2dpZCAiZmlsZSBgJS4yNTBzJyBpcyBjb3JydXB0IC0gJS4yNTBzIGxlbmd0aCBjb250YWlucyBudWxscyIKKyN+IG1zZ3N0ciAi5qqU5qGIIGAlLjI1MHMnIOW3suaQjeavgCAtICUuMjUwcyDnmoTplbfluqblkKvmnIkgbnVsbCIKKworI34gbXNnaWQgImZpbGUgYCUuMjUwcycgaXMgY29ycnVwdCAtIG5lZ2F0aXZlIG1lbWJlciBsZW5ndGggJXppIgorI34gbXNnc3RyICLmqpTmoYggYCUuMjUwcycg5bey5pCN5q+AIC0g6LKg55qE5oiQ5ZOh6ZW35bqmICV6aSIKKworI34gbXNnaWQgImZhaWxlZCBnZXR0aW5nIHRoZSBjdXJyZW50IGZpbGUgcG9zaXRpb24iCisjfiBtc2dzdHIgIueEoeazleWPluW+l+ebruWJjeeahOaqlOahiOS9jee9riIKKworI34gbXNnaWQgImZhaWxlZCBzZXR0aW5nIHRoZSBjdXJyZW50IGZpbGUgcG9zaXRpb24iCisjfiBtc2dzdHIgIueEoeazleioreWumuebruWJjeeahOaqlOahiOS9jee9riIKKworI34gbXNnaWQgInZlcnNpb24gbnVtYmVyIgorI34gbXNnc3RyICLniYjmnKznt6jomZ8iCisKKyN+IG1zZ2lkICJoZWFkZXIgaW5mbyBtZW1iZXIiCisjfiBtc2dzdHIgIuaqlOahiOaomemgreizh+ioiuaIkOWToSIKKworIywgZnV6enkKKyN+fCBtc2dpZCAic2tpcHBlZCBtZW1iZXIgZGF0YSBmcm9tICVzIgorI34gbXNnaWQgInNraXBwZWQgY29udHJvbCBhcmVhIGZyb20gJXMiCisjfiBtc2dzdHIgIuW/veeVpeS6hiAlcyDkuK3nmoTmiJDlk6Hos4fmlpkiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiZmFpbGVkIHRvIGNyZWF0ZSB0ZW1wb3JhcnkgZGlyZWN0b3J5IgorI34gbXNnc3RyICLnhKHms5Xngrroh6jmmYLnm67pjITlkb3lkI0iCisKKyN+IG1zZ2lkICJpbmZvX3NwZXciCisjfiBtc2dzdHIgImluZm9fc3BldyIKKworIywgZnV6enkKKyN+fCBtc2dpZCAiZmFpbGVkIHRvIGV4ZWMgZHBrZy1kZWIgdG8gZXh0cmFjdCBjb250cm9sIGluZm9ybWF0aW9uIgorI34gbXNnaWQgImZhaWxlZCB0byBleGVjIGRwa2ctZGViIHRvIGV4dHJhY3QgZmllbGQgdmFsdWUiCisjfiBtc2dzdHIgIueEoeazleWft+ihjCBkcGtnLWRlYiDku6Xmk7flj5YgY29udHJvbCDos4foqIoiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgInVuYWJsZSB0byBjcmVhdGUgJXM6ICVzIgorI34gbXNnaWQgInVuYWJsZSB0byBzdGF0ICVzOiAlcyIKKyN+IG1zZ3N0ciAi54Sh5rOV5bu656uLICVz77yaJXMiCisKKyN+IG1zZ2lkICJzbGF2ZSBuYW1lICVzIGR1cGxpY2F0ZWQiCisjfiBtc2dzdHIgIuasoeimgeWQjeeosSAlcyDlt7Lph43opIciCisKKyN+IG1zZ2lkICJzbGF2ZSBsaW5rICVzIGR1cGxpY2F0ZWQiCisjfiBtc2dzdHIgIuasoeimgemAo+e1kCAlcyDlt7Lph43opIciCisKKyN+IG1zZ2lkICIlZCByZXF1ZXN0ZWQgY29udHJvbCBjb21wb25lbnRzIGFyZSBtaXNzaW5nIgorI34gbXNnc3RyICLmib7kuI3liLAgJWQg5YCL5b+F6KaB55qE5o6n5Yi25YWD5Lu2IgorCisjfiBtc2dpZCAiY2F0IChkYXRhKSIKKyN+IG1zZ3N0ciAiY2F0IChkYXRhKSIKKworI34gbXNnaWQgImZhaWxlZCB0byBvcGVuIHBpcGUgZGVzY3JpcHRvciBgMScgaW4gcGFzdGUiCisjfiBtc2dzdHIgIuWcqOiyvOS4iuaZgueEoeazlemWi+WVn+euoee3mumHjeWwjiBgMSciCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gd3JpdGUgdG8gZ3ppcCAtZGMiCisjfiBtc2dzdHIgIueEoeazleWvq+WFpSBnemlwIC1kYyIKKworI34gbXNnaWQgImZhaWxlZCB0byBjbG9zZSBnemlwIC1kYyIKKyN+IG1zZ3N0ciAi54Sh5rOV6Zec6ZaJIGd6aXAgLWRjIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHN5c2NhbGwgbHNlZWsgdG8gZmlsZXMgYXJjaGl2ZSBwb3J0aW9uIgorI34gbXNnc3RyICLnhKHms5Xkvb/nlKjns7vntbHlkbzlj6sgbHNlZWsg5L6G5Yyv5pW05aWX5Lu25qqU5L2N572uIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGV4ZWMgbWtzcGxpdCIKKyN+IG1zZ3N0ciAi54Sh5rOV5Z+36KGMIG1rc3BsaXQiCisKKyN+IG1zZ2lkICIiCisjfiAiXG4iCisjfiAiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorI34gIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uIgorI34gbXNnc3RyICIiCisjfiAiXG4iCisjfiAiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorI34gIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uIgorCisjfiBtc2dpZCAidHdvIGNvbW1hbmRzIHNwZWNpZmllZDogJXMgYW5kIC0tJXMiCisjfiBtc2dzdHIgIuaMh+WumuS6huWFqeWAi+aMh+S7pO+8miVzIOS7peWPiiAtLSVzIgorCisjfiBtc2dpZCAiLS0lcyBuZWVkcyBhIGRpdmVydC10byBhcmd1bWVudCIKKyN+IG1zZ3N0ciAiLS0lcyDpnIDmnIkgPOaKveaPm+WQjeeosT4g5Y+D5pW4IgorCisjfiBtc2dpZCAiLS0lcyBuZWVkcyBhIDxwYWNrYWdlPiBhcmd1bWVudCIKKyN+IG1zZ3N0ciAiLS0lcyDpnIDmnIkgPOWll+S7tj4g5Y+D5pW4IgorCisjfiBtc2dpZCAiY2Fubm90IG9wZW4gZGl2ZXJzaW9uczogJXMiCisjfiBtc2dzdHIgIueEoeazlemWi+WVn+aKveaPm+mgheebru+8miVzIgorCisjfiBtc2dpZCAibWlzc2luZyBhbHRuYW1lIgorI34gbXNnc3RyICLmib7kuI3liLDmm7/mj5vlkI3nqLEiCisKKyN+IG1zZ2lkICJpbnRlcm5hbCBlcnJvciAtIGJhZCBtb2RlIGAlcyciCisjfiBtc2dzdHIgIuWFp+mDqOmMr+iqpCAtIOS4jeato+W4uOeahOaooeW8jyBgJXMnIgorCisjfiBtc2dpZCAiY2Fubm90IHN0YXQgb2xkIG5hbWUgYCVzJzogJXMiCisjfiBtc2dzdHIgIueEoeazleWPluW+l+WOn+acrOWQjeeosSBgJXMnIOeahOizh+ioiu+8miVzIgorCisjfiBtc2dpZCAicmVuYW1lOiByZW5hbWUgYCVzJyB0byBgJXMnOiAlcyIKKyN+IG1zZ3N0ciAi5pu05ZCN77ya5bCHIGAlcycg5pu05ZCN54K6IGAlcyfvvJolcyIKKworI34gbXNnaWQgImNyZWF0ZSBkaXZlcnNpb25zLW5ldzogJXMiCisjfiBtc2dzdHIgIuW7uueriyBkaXZlcnNpb25zLW5ld++8miVzIgorCisjfiBtc2dpZCAid3JpdGUgZGl2ZXJzaW9ucy1uZXc6ICVzIgorI34gbXNnc3RyICLlr6vlhaUgZGl2ZXJzaW9ucy1uZXfvvJolcyIKKworI34gbXNnaWQgImNsb3NlIGRpdmVyc2lvbnMtbmV3OiAlcyIKKyN+IG1zZ3N0ciAi6Zec6ZaJIGRpdmVyc2lvbnMtbmV377yaJXMiCisKKyN+IG1zZ2lkICJjcmVhdGUgbmV3IGRpdmVyc2lvbnMtb2xkOiAlcyIKKyN+IG1zZ3N0ciAi5bu656uL5paw55qEIGRpdmVyc2lvbnMtb2xk77yaJXMiCisKKyN+IG1zZ2lkICJpbnN0YWxsIG5ldyBkaXZlcnNpb25zOiAlcyIKKyN+IG1zZ3N0ciAi5a6J6KOd5paw55qE5oq95o+b6aCF55uu77yaJXMiCisKKyN+IG1zZ2lkICJpbnRlcm5hbCBlcnJvcjogJXMgY29ycnVwdDogJXMiCisjfiBtc2dzdHIgIuWFp+mDqOmMr+iqpO+8miVzIOaQjeavgO+8miVzIgorCisjfiBtc2dpZCAiZHBrZy1kZWIgLSBlcnJvcjogJXMgKGAlcycpIGRvZXNuJ3QgY29udGFpbiBhbnkgZGlnaXRzXG4iCisjfiBtc2dzdHIgImRwa2ctZGViIC0g6Yyv6Kqk77yaJXMgKGAlcycpIOacquWQq+acieS7u+S9leaVuOWtl1xuIgorCisjLCBmdXp6eQorI34gbXNnaWQgIkRlYmlhbiByZXZpc2lvbiIKKyN+IG1zZ3N0ciAiRGViaWFuICVzIOeJiOacrCAlc+OAglxuIgorCisjfiBtc2dpZCAiJWQgZXJyb3JzIGluIGNvbnRyb2wgZmlsZSIKKyN+IG1zZ3N0ciAi5ZyoIGNvbnRyb2wg5qqU6KOh5YWx5pyJICVkIOWAi+mMr+iqpCIKKworIywgZnV6enkKKyN+fCBtc2dpZCAidW5hYmxlIHRvIHJlYWQgJXM6ICVzIgorI34gbXNnaWQgImNhbid0IHJlYWRkaXIgJXM6ICVzIgorI34gbXNnc3RyICLnhKHms5XoroDlj5YgJXPvvJolcyIKKworI34gbXNnaWQgImZhaWxlZCBpbiBidWZmZXJfd3JpdGUoZmQpICglaSwgcmV0PSVsaSk6ICVzIgorI34gbXNnc3RyICJidWZmZXJfd3JpdGUoZmQpICglaSwgcmV0PSVsaSkg5aSx5pWX77yaJXMiCisKKyN+IG1zZ2lkICJlb2YgaW4gYnVmZmVyX3dyaXRlKHN0cmVhbSk6ICVzIgorI34gbXNnc3RyICLlnKggYnVmZmVyX3dyaXRlKHN0cmVhbSkg5Lit55m854++IGVvZu+8miVzIgorCisjfiBtc2dpZCAiZXJyb3IgaW4gYnVmZmVyX3dyaXRlKHN0cmVhbSk6ICVzIgorI34gbXNnc3RyICLlnKggYnVmZmVyX3dyaXRlKHN0cmVhbSkg5Lit55m855Sf6Yyv6Kqk77yaJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgaW4gYnVmZmVyX3JlYWQoZmQpOiAlcyIKKyN+IG1zZ3N0ciAiYnVmZmVyX3JlYWQoZmQpIOWkseaVl++8miVzIgorCisjfiBtc2dpZCAiZXJyb3IgaW4gYnVmZmVyX3JlYWQoc3RyZWFtKTogJXMiCisjfiBtc2dzdHIgIuWcqCBidWZmZXJfcmVhZChzdHJlYW0pIOS4reeZvOeUn+mMr+iqpO+8miVzIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiVzIHJldHVybmVkIGVycm9yIGV4aXQgc3RhdHVzICVkIgorI34gbXNnc3RyICLlrZDnqIvluo8gJXMg5YKz5Zue5LqG6Yyv6Kqk6YCA5Ye654uA5oWLICVkIgorCisjLCBmdXp6eQorI34gbXNnaWQgIiVzIGtpbGxlZCBieSBzaWduYWwgKCVzKSVzIgorI34gbXNnc3RyICLlrZDnqIvluo8gJXMg6KKr5L+h6JmfICglcyklcyDntYLmraLkuoYiCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiIgorI34gIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZSB2ZXJzaW9uIDIgb3JcbiIKKyN+ICJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIlxuIgorI34gIumAmeaYr+iHqueUsei7n+mrlO+5lOimgeeNsuefpeikh+ijveipsui7n+mrlOeahOWJjeaPkOWSjOaineS7tu+8jOiri+WPg+mWsSBHTlUgUHVibGljIExpY2VuY2VcbiIKKyN+ICLnrKwgMiDmiJbmm7TmlrDnmoTniYjmnKzjgILmnKzou5/pq5TjgJDkuI3jgJHmj5Dkvpvku7vkvZXkv53oqLzjgIJcbiIKKworI34gbXNnaWQgIiIKKyN+ICJcbiIKKyN+ICJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UgdmVyc2lvbiAyIG9yXG4iCisjfiAibGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJcbiIKKyN+ICLpgJnmmK/oh6rnlLHou5/pq5TvuZTopoHnjbLnn6XopIfoo73oqbLou5/pq5TnmoTliY3mj5Dlkozmop3ku7bvvIzoq4vlj4PplrEgR05VIFB1YmxpYyBMaWNlbmNlXG4iCisjfiAi56ysIDIg5oiW5pu05paw55qE54mI5pys44CC5pys6Luf6auU44CQ5LiN44CR5o+Q5L6b5Lu75L2V5L+d6Ki844CCXG4iCisKKyN+IG1zZ2lkICIlczogZmFpbGVkIHRvIGV4ZWMgJyVzICVzJyIKKyN+IG1zZ3N0ciAiJXPvvJrnhKHms5Xln7fooYwgJyVzICVzJyIKKworI34gbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIGVycm9yOiByZWFkOiBgJXMnIgorI34gbXNnc3RyICIlc++8muWFp+mDqCBnemlwIOmMr+iqpO+8muiugOWPlu+8mmAlcyciCisKKyN+IG1zZ2lkICIlczogaW50ZXJuYWwgZ3ppcCBlcnJvcjogd3JpdGU6IGAlcyciCisjfiBtc2dzdHIgIiVz77ya5YWn6YOoIGd6aXAg6Yyv6Kqk77ya5a+r5YWl77yaYCVzJyIKKworI34gbXNnaWQgIiVzOiBpbnRlcm5hbCBnemlwIGVycm9yOiByZWFkKCVpKSAhPSB3cml0ZSglaSkiCisjfiBtc2dzdHIgIiVz77ya5YWn6YOoIGd6aXAg6Yyv6Kqk77ya6K6A5Y+WKCVpKSAhPSDlr6vlhaUoJWkpIgorCisjfiBtc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIGVycm9yOiByZWFkOiBgJXMnIgorI34gbXNnc3RyICIlc++8muWFp+mDqCBiemlwMiDpjK/oqqTvvJroroDlj5bvvJpgJXMnIgorCisjfiBtc2dpZCAiJXM6IGludGVybmFsIGJ6aXAyIGVycm9yOiB3cml0ZTogYCVzJyIKKyN+IG1zZ3N0ciAiJXPvvJrlhafpg6ggYnppcDIg6Yyv6Kqk77ya5a+r5YWl77yaYCVzJyIKKworI34gbXNnaWQgIiVzOiBpbnRlcm5hbCBiemlwMiBlcnJvcjogcmVhZCglaSkgIT0gd3JpdGUoJWkpIgorI34gbXNnc3RyICIlc++8muWFp+mDqCBiemlwMiDpjK/oqqTvvJroroDlj5YoJWkpICE9IOWvq+WFpSglaSkiCisKKyN+IG1zZ2lkICJEb24ndCBmb3JnZXQgdG8gZm9yZWdyb3VuZCAoYGZnJykgdGhpcyBwcm9jZXNzIHdoZW4geW91J3JlIGRvbmUgIVxuIgorI34gbXNnc3RyICLlnKjlrozmiJDlvozvvIzoq4vkuI3opoHlv5jkuobnlKggYGZnJyDmjIfku6TliIfmj5vlm57pgJnlgIvnqIvluo/vvIFcbiIKKworI34gbXNnaWQgIiIKKyN+ICJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAyIG9yXG4iCisjfiAibGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuXG4iCisjfiAiU2VlICVzIC0tbGljZW5zZSBmb3IgY29weXJpZ2h0IGFuZCBsaWNlbnNlIGRldGFpbHMuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICLpgJnmmK/oh6rnlLHou5/pq5TvuZTopoHnjbLnn6XopIfoo73oqbLou5/pq5TnmoTliY3mj5Dlkozmop3ku7bvvIzoq4vlj4PplrEgR05VIFB1YmxpYyBMaWNlbmNlXG4iCisjfiAi56ysIDIg5oiW5pu05paw55qE54mI5pys44CC5pys6Luf6auU44CQ5LiN44CR5o+Q5L6b5Lu75L2V5L+d6Ki844CCXG4iCisjfiAi6KuL5Z+36KGMICVzIC0tbGljZW5zZSDku6Xlj5blvpfniYjmrIrlkozmjojmrIrnmoToqbPnm6Hos4foqIrjgIJcbiIKKworI34gbXNnaWQgInVuYWJsZSB0byBnZXQgdW5pcXVlIGZpbGVuYW1lIGZvciBjb250cm9sIGluZm8iCisjfiBtc2dzdHIgIueEoeazleeUsSBjb250cm9sIOizh+ioiuS4reWPluW+l+WUr+S4gOeahOaqlOahiOWQjeeosSIKKworI34gbXNnaWQgIkRlYmlhbiBgJXMnIHBhY2thZ2UgbWFuYWdlbWVudCBwcm9ncmFtIHF1ZXJ5IHRvb2xcbiIKKyN+IG1zZ3N0ciAiRGViaWFuIGAlcycg5aWX5Lu2566h55CG56iL5byP5p+l6Kmi5bel5YW3XG4iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiIgorI34gIlVzZSAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgcXVlcnlpbmcgcGFja2FnZXM7XG4iCisjfiAiVXNlIC0tbGljZW5zZSBmb3IgY29weXJpZ2h0IGxpY2Vuc2UgYW5kIGxhY2sgb2Ygd2FycmFudHkgKEdOVSBHUEwpLiIKKyN+IG1zZ3N0ciAiIgorI34gIuS9v+eUqCAtLWhlbHAg5Lul5Y+W5b6X5aaC5L2V5p+l6Kmi5aWX5Lu2562J562J55qE6Kqq5piO77mUXG4iCisjfiAi5L2/55SoIC0tbGljZW5jZSDku6Xlj5blvpfmnInpl5zniYjmrIrmjojmrIrlkoznhKHmk5Tkv53nmoToqqrmmI4gKEdOVSBHUEwp44CCXG4iCisjfiAiXG4iCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gY2hvd24gJXM6ICVzIgorI34gbXNnc3RyICLnhKHms5UgY2hvd24gJXPvvJolcyIKKworI34gbXNnaWQgImZhaWxlZCB0byBjaG1vZCAlczogJXMiCisjfiBtc2dzdHIgIueEoeazlSBjaG1vZCAlc++8miVzIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIGZvcmsgZm9yIGNsZWFudXAiCisjfiBtc2dzdHIgIueEoeazlemAsuihjCBmb3JrIOS7pemAsuihjOa4heeQhiIKKworI34gbXNnaWQgImZhaWxlZCB0byB3YWl0IGZvciBybSBjbGVhbnVwIgorI34gbXNnc3RyICLlnKjnrYnlvoUgcm0gY2xlYW51cCDmmYLlpLHmlZciCisKKyN+IG1zZ2lkICJybSBjbGVhbnVwIGZhaWxlZCwgY29kZSAlZFxuIgorI34gbXNnc3RyICLlnKggcm0gY2xlYW51cCDmmYLlpLHmlZfvvIzku6PnorzngrogJWRcbiIKKworI34gbXNnaWQgImZhaWxlZCB0byBleGVjIHJtIC1yZiIKKyN+IG1zZ3N0ciAi54Sh5rOV5Z+36KGMIHJtIC1yZiIKKworI34gbXNnaWQgImZhaWxlZCB0byByZWFkIGBjb250cm9sJyAoaW4gYCUuMjU1cycpIgorI34gbXNnc3RyICLnhKHms5XoroDlj5YgYGNvbnRyb2wn77yI5L2N5pa8IGAlLjI1NXMn77yJIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHNlZWsgYmFjayIKKyN+IG1zZ3N0ciAi54Sh5rOV5ZCR5b6MIHNlZWsiCisKKyN+IG1zZ2lkICJ1bmtub3duIGRhdGEgdHlwZSBgJWknIGluIGJ1ZmZlcl93cml0ZVxuIgorI34gbXNnc3RyICLlnKggYnVmZmVyX3dyaXRlIOS4reacieS4jeaYjueahOizh+aWmeWei+aFiyBgJWknXG4iCisKKyN+IG1zZ2lkICJ1bmtub3duIGRhdGEgdHlwZSBgJWknIGluIGJ1ZmZlcl9yZWFkXG4iCisjfiBtc2dzdHIgIuWcqCBidWZmZXJfcmVhZCDkuK3mnInkuI3mmI7nmoTos4fmlpnlnovmhYsgYCVpJyBcbiIKKworI34gbXNnaWQgIndhaXQgZm9yIHNoZWxsIGZhaWxlZCIKKyN+IG1zZ3N0ciAi5Zyo562J5b6FIHNoZWxsIOaZguWkseaVlyIKKworI34gbXNnaWQgInJlYWQgZXJyb3IgaW4gZGl2ZXJzaW9ucyBbaV0iCisjfiBtc2dzdHIgIuaKveaPm+izh+ioiuiugOWPlumMr+iqpCBbaV0iCisKKyN+IG1zZ2lkICJ1bmxpbmsiCisjfiBtc2dzdHIgIuenu+mZpOmAo+e1kCIKKworI34gbXNnaWQgImNobW9kIgorI34gbXNnc3RyICLmlLnorormrIrpmZAiCisKKyN+IG1zZ2lkICJkZWxldGUiCisjfiBtc2dzdHIgIuWIqumZpCIKKworIywgZnV6enkKKyN+IG1zZ2lkICJmYWlsZWQgdG8gJXMgJyUuMjU1cyciCisjfiBtc2dzdHIgIueEoeazlSVzIGAlJS4yNTVzJyIKKworI34gbXNnaWQgIndhaXQgZm9yIGRwa2ctc3BsaXQgZmFpbGVkIgorI34gbXNnc3RyICLlnKjnrYnlvoUgZHBrZy1zcGxpdCDmmYLlpLHmlZciCisKKyN+IG1zZ2lkICJjYW5ub3QgcmVtb3ZlIGZpbGUgYCUuMjUwcyciCisjfiBtc2dzdHIgIueEoeazleWIqumZpOaqlOahiCBgJS4yNTBzJyIKKworI34gbXNnaWQgIiIKKyN+ICJcbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDIwMDAgV2ljaGVydCBBa2tlcm1hbi4iCisjfiBtc2dzdHIgIiIKKyN+ICJcbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDIwMDAgV2ljaGVydCBBa2tlcm1hbi4iCisKKyN+IG1zZ2lkICJubyBtb2RlIHNwZWNpZmllZCIKKyN+IG1zZ3N0ciAi5pyq5oyH5a6a5qih5byPIgorCisjfiBtc2dpZCAiaWxsZWdhbCB1c2VyICVzIgorI34gbXNnc3RyICLkuI3lkIjms5XnmoTkvb/nlKjogIUgJXMiCisKKyN+IG1zZ2lkICJub24tZXhpc3RpbmcgdXNlciAlcyIKKyN+IG1zZ3N0ciAi5LiN5a2Y5Zyo55qE5L2/55So6ICFICVzIgorCisjfiBtc2dpZCAiaWxsZWdhbCBncm91cCAlcyIKKyN+IG1zZ3N0ciAi5LiN5ZCI5rOV55qE576k57WEICVzIgorCisjfiBtc2dpZCAibm9uLWV4aXN0aW5nIGdyb3VwICVzIgorI34gbXNnc3RyICLkuI3lrZjlnKjnmoTnvqTntYQgJXMiCisKKyN+IG1zZ2lkICJpbGxlZ2FsIG1vZGUgJXMiCisjfiBtc2dzdHIgIuS4jeWQiOazleeahOaooeW8jyVzIgorCisjfiBtc2dpZCAiYWJvcnRpbmciCisjfiBtc2dzdHIgIuS4reatouaTjeS9nCIKKworI34gbXNnaWQgImNhbm5vdCBvcGVuIHN0YXRvdmVycmlkZTogJXMiCisjfiBtc2dzdHIgIueEoeazlemWi+WVnyBzdGF0b3ZlcnJpZGXvvJolcyIKKworI34gbXNnaWQgIk11bHRpcGxlIG92ZXJyaWRlcyBmb3IgXCIlc1wiLCBhYm9ydGluZyIKKyN+IG1zZ3N0ciAiXCIlc1wiIOacieWkmuWAi+W8t+WItumBuOmghe+8jOS4reatouaTjeS9nCIKKworI34gbXNnaWQgImZhaWxlZCB3cml0ZSBkdXJpbmcgaGFzaHJlcG9ydCIKKyN+IG1zZ3N0ciAi5ZyoIGhhc2hyZXBvcnQg5pmC5a+r5YWl5aSx5pWXIgorCisjfiBtc2dpZCAiY29uZmlndXJhdGlvbiBlcnJvcjogdW5rbm93biBvcHRpb24gJXMiCisjfiBtc2dzdHIgIuioreWumumMr+iqpO+8muacquefpemBuOmghSAlcyIKKworI34gbXNnaWQgImNvbmZpZ3VyYXRpb24gZXJyb3I6ICVzIGRvZXMgbm90IHRha2UgYSB2YWx1ZSIKKyN+IG1zZ3N0ciAi6Kit5a6a6Yyv6Kqk77ya5LiN6ZyA6LOm5LqI5YC857WmICVzIgorCisjLCBmdXp6eQorI34gbXNnaWQgInVuZXhlY3B0ZWQgZW5kIG9mIGxpbmUgaW4gc3RhdG92ZXJyaWRlIGZpbGUiCisjfiBtc2dzdHIgIuWcqOesrCAlZCDooYznmoTlpZfku7blkI3nqLHkuK3mhI/lpJblnLDnmbznj77mraTooYzntZDmnZ8iCisKKyMsIGZ1enp5CisjfiBtc2dpZCAiLS1jaGVjay1zdXBwb3J0ZWQgdGFrZXMgbm8gYXJndW1lbnRzIgorI34gbXNnc3RyICJkcGtnLXRyaWdnZXIgLS1jaGVjay1zdXBwb3J0ZWQg5LiN6ZyA5Lu75L2V5Y+D5pW4IgorCisjfiBtc2dpZCAiLS1mb3JnZXQtb2xkLXVuYXZhaWwgdGFrZXMgbm8gYXJndW1lbnRzIgorI34gbXNnc3RyICItLWZvcmdldC1vbGQtdW5hdmFpbCDkuI3pnIDku7vkvZXlj4PmlbgiCisKKyN+IG1zZ2lkICIiCisjfiAiXG4iCisjfiAiQ29weXJpZ2h0IChDKSAxOTk0LDE5OTUgSWFuIEphY2tzb24uIgorI34gbXNnc3RyICIiCisjfiAiXG4iCisjfiAiQ29weXJpZ2h0IChDKSAxOTk0LDE5OTUgSWFuIEphY2tzb24uIgorCisjfiBtc2dpZCAiIgorI34gIlVzYWdlOiAlcyBbPG9wdGlvbnM+IC4uLl0gWy0tXSA8ZmlsZW5hbWU+XG4iCisjfiAiXG4iCisjfiAiT3B0aW9uczpcbiIKKyN+ICIgIC0tc2VjdGlvbiA8cmVnZXhwPiA8dGl0bGU+XG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgcHV0IHRoZSBuZXcgZW50cnkgaW4gdGhlIDxyZWdleD4gbWF0Y2hlZCAiCisjfiAic2VjdGlvblxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgIG9yIGNyZWF0ZSBhIG5ldyBvbmUgd2l0aCA8dGl0bGU+IGlmIG5vbi0iCisjfiAiZXhpc3RlbnQuXG4iCisjfiAiICAtLW1lbnVlbnRyeT08dGV4dD4gICAgICAgc2V0IHRoZSBtZW51IGVudHJ5LlxuIgorI34gIiAgLS1kZXNjcmlwdGlvbj08dGV4dD4gICAgIHNldCB0aGUgZGVzY3JpcHRpb24gdG8gYmUgdXNlZCBpbiB0aGUgbWVudSAiCisjfiAiZW50cnkuXG4iCisjfiAiICAtLWluZm8tZmlsZT08cGF0aD4gICAgICAgc3BlY2lmeSBpbmZvIGZpbGUgdG8gaW5zdGFsbCBpbiB0aGUgIgorI34gImRpcmVjdG9yeS5cbiIKKyN+ICIgIC0tZGlyLWZpbGU9PHBhdGg+ICAgICAgICBzcGVjaWZ5IGZpbGUgbmFtZSBvZiBpbmZvIGRpcmVjdG9yeSBmaWxlLlxuIgorI34gIiAgLS1pbmZvZGlyPTxkaXJlY3Rvcnk+ICAgIHNhbWUgYXMgJy0tZGlyLWZpbGU9PGRpcmVjdG9yeT4vZGlyJy5cbiIKKyN+ICIgIC0taW5mby1kaXI9PGRpcmVjdG9yeT4gICBsaWtld2lzZS5cbiIKKyN+ICIgIC0ta2VlcC1vbGQgICAgICAgICAgICAgICBkbyBub3QgcmVwbGFjZSBlbnRyaWVzIG5vciByZW1vdmUgZW1wdHkgb25lcy5cbiIKKyN+ICIgIC0tcmVtb3ZlICAgICAgICAgICAgICAgICByZW1vdmUgdGhlIGVudHJ5IHNwZWNpZmllZCBieSA8ZmlsZW5hbWU+ICIKKyN+ICJiYXNlbmFtZS5cbiIKKyN+ICIgIC0tcmVtb3ZlLWV4YWN0bHkgICAgICAgICByZW1vdmUgdGhlIGV4YWN0IDxmaWxlbmFtZT4gZW50cnkuXG4iCisjfiAiICAtLXRlc3QgICAgICAgICAgICAgICAgICAgZW5hYmxlcyB0ZXN0IG1vZGUgKG5vIGFjdGlvbnMgdGFrZW4pLlxuIgorI34gIiAgLS1kZWJ1ZyAgICAgICAgICAgICAgICAgIGVuYWJsZXMgZGVidWcgbW9kZSAoc2hvdyBtb3JlIGluZm9ybWF0aW9uKS5cbiIKKyN+ICIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBkbyBub3Qgc2hvdyBvdXRwdXQgbWVzc2FnZXMuXG4iCisjfiAiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyN+ICIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorI34gbXNnc3RyICIiCisjfiAi55So5rOV77yaJXMgWzzpgbjpoIU+IC4uLl0gWy0tXSA85qqU5ZCNPlxuIgorI34gIlxuIgorI34gIumBuOmghe+8mlxuIgorI34gIiAgLS1zZWN0aW9uIDzooajnpLrlvI8+IDzmqJnpoYw+XG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAg5bCH5paw55qE6aCF55uu5pS+5Yiw56ym5ZCIIDzooajnpLrlvI8+IOeahOWNgOauteS4re+8jFxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgIOiLpeacquaJvuWIsO+8jOWJh+S7pSA85qiZ6aGMPiDlu7rnq4vkuIDlgIvmlrDljYDmrrXjgIJcbiIKKyN+ICIgIC0tbWVudWVudHJ5PTzmloflrZc+ICAgICAgIOioreWumumBuOWWrumgheebruOAglxuIgorI34gIiAgLS1kZXNjcmlwdGlvbj085paH5a2XPiAgICAg6Kit5a6a6YG45Zau6aCF55uu55qE6Kqq5piO5paH5a2X44CCXG4iCisjfiAiICAtLWluZm8tZmlsZT086Lev5b6RPiAgICAgICDoqK3lrpropoHlronoo53liLDoqbLnm67pjIToo6HnmoQgaW5mbyDmqpTjgIJcbiIKKyN+ICIgIC0tZGlyLWZpbGU9POi3r+W+kT4gICAgICAgIOaMh+WumiBpbmZvIOebrumMhOijoeeahOaqlOahiOeahOaqlOahiOWQjeeoseOAglxuIgorI34gIiAgLS1pbmZvZGlyPTznm67pjIQ+ICAgICAgICAg562J5ZCM5pa8ICctLWRpci1maWxlPTznm67pjIQ+L2RpcifjgIJcbiIKKyN+ICIgIC0taW5mby1kaXI9POebrumMhD4gICAgICAgIOavlOeFp+i+qOeQhuOAglxuIgorI34gIiAgLS1rZWVwLW9sZCAgICAgICAgICAgICAgIOS4jeabv+aPm+W3suaciemgheebru+8jOS5n+S4jeenu+mZpOepuueZvemgheebruOAglxuIgorI34gIiAgLS1yZW1vdmUgICAgICAgICAgICAgICAgIOenu+mZpOS7pSA85qqU5ZCNPiDngrrln7rmupblkI3nqLHnmoTpoIXnm67jgIJcbiIKKyN+ICIgIC0tcmVtb3ZlLWV4YWN0bHkgICAgICAgICDnp7vpmaTnrKblkIggPOaqlOWQjT4g6aCF55uu44CCXG4iCisjfiAiICAtLXRlc3QgICAgICAgICAgICAgICAgICAg5ZWf55So5ris6Kmm5qih5byP77yI5LiN5a+m6Zqb6YCy6KGM77yJ44CCXG4iCisjfiAiICAtLWRlYnVnICAgICAgICAgICAgICAgICAg5ZWf55So6Zmk6Yyv5qih5byP77yI6aGv56S65pu05aSa6KiK5oGv77yJ44CCXG4iCisjfiAiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAg5a6J6Z2c5qih5byP77yM5YSY6YeP5LiN6aGv56S66KiK5oGv44CCXG4iCisjfiAiICAtLWhlbHAgICAgICAgICAgICAgICAgICAg6aGv56S66YCZ5YCL6Kqq5piO6KiK5oGv44CCXG4iCisjfiAiICAtLXZlcnNpb24gICAgICAgICAgICAgICAg6aGv56S654mI5pys6LOH6KiK44CCXG4iCisKKyN+IG1zZ2lkICJjb3VsZCBub3Qgb3BlbiBzdGRlcnIgZm9yIG91dHB1dCEgJXMiCisjfiBtc2dzdHIgIueEoeazlemWi+WVnyBzdGRlcnIg5Lul6Ly45Ye66LOH6KiK77yBJXMiCisKKyN+IG1zZ2lkICIlczogLS1zZWN0aW9uIG5lZWRzIHR3byBtb3JlIGFyZ3MiCisjfiBtc2dzdHIgIiVz77yaLS1zZWN0aW9uIOmcgOimgeWFqeWAi+S7peS4iueahOWPg+aVuCIKKworI34gbXNnaWQgIiVzOiBvcHRpb24gLS0lcyBpcyBkZXByZWNhdGVkIChpZ25vcmVkKSIKKyN+IG1zZ3N0ciAiJXPvvJrpgbjpoIUgLS0lcyDlt7Lmo4TnlKjvvIjlt7Llv73nlaXvvIkiCisKKyN+IG1zZ2lkICIlczogdW5rbm93biBvcHRpb24gYCVzJyIKKyN+IG1zZ3N0ciAiJXPvvJrmnKrnn6XpgbjpoIUgYCVzJyIKKworI34gbXNnaWQgIiVzOiB0b28gbWFueSBhcmd1bWVudHMiCisjfiBtc2dzdHIgIiVz77ya5Y+D5pW46YGO5aSaIgorCisjfiBtc2dpZCAiJXM6IC0tc2VjdGlvbiBpZ25vcmVkIHdpdGggLS1yZW1vdmUiCisjfiBtc2dzdHIgIiVz77ya5ZyoIC0tcmVtb3ZlIOaZgu+8jOacg+eEoeimliAtLXNlY3Rpb24iCisKKyN+IG1zZ2lkICIlczogLS1kZXNjcmlwdGlvbiBpZ25vcmVkIHdpdGggLS1yZW1vdmUiCisjfiBtc2dzdHIgIiVz77ya5ZyoIC0tcmVtb3ZlIOaZgu+8jOacg+eEoeimliAtLWRlc2NyaXB0aW9uIgorCisjfiBtc2dpZCAiJXM6IHRlc3QgbW9kZSAtIGRpciBmaWxlIHdpbGwgbm90IGJlIHVwZGF0ZWQiCisjfiBtc2dzdHIgIiVz77ya5ris6Kmm5qih5byPIC0g5bCH5LiN5pyD5pu05paw55uu6YyE5qqUIgorCisjfiBtc2dpZCAiJXM6IHdhcm5pbmcsIGlnbm9yaW5nIGNvbmZ1c2luZyBJTkZPLURJUi1FTlRSWSBpbiBmaWxlLiIKKyN+IG1zZ3N0ciAiJXPvvJrorablkYrvvIzlv73nlaXmqpTmoYjlhafpm6Pku6Xop6PmnpDnmoQgSU5GTy1ESVItRU5UUlkg6aCF55uu44CCIgorCisjfiBtc2dpZCAiaW52YWxpZCBpbmZvIGVudHJ5IgorI34gbXNnc3RyICLpjK/oqqTnmoQgaW5mbyDpoIXnm64iCisKKyN+IG1zZ2lkICIiCisjfiAiXG4iCisjfiAiTm8gYFNUQVJULUlORk8tRElSLUVOVFJZJyBhbmQgbm8gYFRoaXMgZmlsZSBkb2N1bWVudHMnLlxuIgorI34gIiVzOiB1bmFibGUgdG8gZGV0ZXJtaW5lIGRlc2NyaXB0aW9uIGZvciBgZGlyJyBlbnRyeSAtIGdpdmluZyB1cFxuIgorI34gbXNnc3RyICIiCisjfiAiXG4iCisjfiAi57y65bCRIGBTVEFSVC1JTkZPLURJUi1FTlRSWScg5ZKMIGBUaGlzIGZpbGUgZG9jdW1lbnRzJ+OAglxuIgorI34gIiVz77ya54Sh5rOV6L6v6K2YIGBkaXInIOmgheebrueahOiqquaYjiAtIOWPlua2iOaTjeS9nFxuIgorCisjfiBtc2dpZCAiJXM6IG5vIGZpbGUgJXMsIHJldHJpZXZpbmcgYmFja3VwIGZpbGUgJXMuIgorI34gbXNnc3RyICIlc++8muaykuacieaqlOahiCAlc++8jOWPluWbnuWCmeS7veaqlCAlc+OAgiIKKworI34gbXNnaWQgIiVzOiBubyBiYWNrdXAgZmlsZSAlcyBhdmFpbGFibGUsIHJldHJpZXZpbmcgZGVmYXVsdCBmaWxlLiIKKyN+IG1zZ3N0ciAiJXPvvJrmib7kuI3liLDlgpnku73mqpQgJXPvvIzlj5blm57poJDoqK3mqpTjgIIiCisKKyN+IG1zZ2lkICIlczogbm8gYmFja3VwIGZpbGUgJXMgYXZhaWxhYmxlLiIKKyN+IG1zZ3N0ciAiJXPvvJrmib7kuI3liLDlgpnku73mqpQgJXPjgIIiCisKKyN+IG1zZ2lkICIlczogbm8gZGVmYXVsdCBmaWxlICVzIGF2YWlsYWJsZSwgZ2l2aW5nIHVwLiIKKyN+IG1zZ3N0ciAiJXPvvJrmib7kuI3liLDpoJDoqK3mqpQgJXPvvIzlj5bmtojmk43kvZzjgIIiCisKKyN+IG1zZ2lkICIlczogZmFpbGVkIHRvIGxvY2sgZGlyIGZvciBlZGl0aW5nISAlcyIKKyN+IG1zZ3N0ciAiJXPvvJrnhKHms5Xpjpblrprnm67pjITku6XpgLLooYznt6jovK/vvIElcyIKKworI34gbXNnaWQgInRyeSBkZWxldGluZyAlcz8iCisjfiBtc2dzdHIgIuaYr+WQpuippuiRl+WIqumZpCAlc++8nyIKKworI34gbXNnaWQgInVuYWJsZSB0byBvcGVuICVzOiAlcyIKKyN+IG1zZ3N0ciAi54Sh5rOV6ZaL5ZWfICVz77yaJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gY2xvc2UgJXMgYWZ0ZXIgcmVhZDogJXMiCisjfiBtc2dzdHIgIuWcqOiugOWPluWujOeVouW+jOeEoeazlemXnOmWiSAlc++8miVzIgorCisjfiBtc2dpZCAiJXM6IGV4aXN0aW5nIGVudHJ5IGZvciBgJXMnIG5vdCByZXBsYWNlZCIKKyN+IG1zZ3N0ciAiJXPvvJrkuI3lj5bku6Plt7LlrZjlnKjnmoTpoIXnm64gYCVzJyIKKworI34gbXNnaWQgIiVzOiByZXBsYWNpbmcgZXhpc3RpbmcgZGlyIGVudHJ5IGZvciBgJXMnIgorI34gbXNnc3RyICIlc++8muWPluS7o+W3suWtmOWcqOeahOmgheebriBgJXMnIgorCisjfiBtc2dpZCAiJXM6IGNyZWF0aW5nIG5ldyBzZWN0aW9uIGAlcyciCisjfiBtc2dzdHIgIiVz77ya5bu656uL5paw55qE5Y2A5q61IGAlcyciCisKKyN+IG1zZ2lkICIlczogbm8gc2VjdGlvbnMgeWV0LCBjcmVhdGluZyBNaXNjZWxsYW5lb3VzIHNlY3Rpb24gdG9vLiIKKyN+IG1zZ3N0ciAiJXPvvJrlsJrnhKHku7vkvZXljYDmrrXvvIzlkIzmmYLlu7rnq4sgTWlzY2VsbGFuZW91c+OAgiIKKworI34gbXNnaWQgIiVzOiBubyBzZWN0aW9uIHNwZWNpZmllZCBmb3IgbmV3IGVudHJ5LCBwbGFjaW5nIGF0IGVuZCIKKyN+IG1zZ3N0ciAiJXPvvJrmspLmnInmm7/mlrDnmoTpoIXnm67mjIflrprljYDmrrXvvIzmiorlroPmlL7liLDmnIDlvozpnaIiCisKKyN+IG1zZ2lkICIlczogZGVsZXRpbmcgZW50cnkgYCVzIC4uLiciCisjfiBtc2dzdHIgIiVz77ya5Yiq6Zmk6aCF55uuIGAlcy4uLiciCisKKyN+IG1zZ2lkICIlczogZW1wdHkgc2VjdGlvbiBgJXMnIG5vdCByZW1vdmVkIgorI34gbXNnc3RyICIlc++8muacquWIqumZpOepuueahOWNgOautSBgJXMnIgorCisjfiBtc2dpZCAiJXM6IGRlbGV0aW5nIGVtcHR5IHNlY3Rpb24gYCVzJyIKKyN+IG1zZ3N0ciAiJXPvvJrliKrpmaTnqbrnmoTljYDmrrUgYCVzJyIKKworI34gbXNnaWQgIiVzOiBubyBlbnRyeSBmb3IgZmlsZSBgJXMnIGFuZCBtZW51IGVudHJ5IGAlcyciCisjfiBtc2dzdHIgIiVz77ya5rKS5pyJIGAlcycg5qqU5ZKM6YG45ZauIGAlcycg55qE6aCF55uuIgorCisjfiBtc2dpZCAiJXM6IG5vIGVudHJ5IGZvciBmaWxlIGAlcyciCisjfiBtc2dzdHIgIiVz77ya5rKS5pyJ5qqU5qGIIGAlcycg55qE6aCF55uuIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGJhY2t1cCBvbGQgJXMsIGdpdmluZyB1cDogJXMiCisjfiBtc2dzdHIgIueEoeazleWCmeS7veWOn+acieeahCAlc++8jOWPlua2iOaTjeS9nO+8miVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGluc3RhbGwgbmV3ICVzOiAlcyIKKyN+IG1zZ3N0ciAi54Sh5rOV5a6J6KOd5paw55qEICVz77yaJXMiCisKKyN+IG1zZ2lkICIlczogY291bGQgbm90IGJhY2t1cCAlcyBpbiAlczogJXMiCisjfiBtc2dzdHIgIiVz77ya54Sh5rOV5bCHICVzIOWCmeS7veaWvCAlc++8miVzIgorCisjfiBtc2dpZCAiJXM6IHdhcm5pbmcgLSB1bmFibGUgdG8gdW5sb2NrICVzOiAlcyIKKyN+IG1zZ3N0ciAiJXPvvJrorablkYogLSDnhKHms5Xop6PpmaTpjpblrpogJXPvvJolcyIKKworI34gbXNnaWQgInVuYWJsZSB0byByZWFkICVzOiAlZCIKKyN+IG1zZ3N0ciAi54Sh5rOV6K6A5Y+WICVz77yaJWQiCisKKyN+IG1zZ2lkICJkYmc6ICVzIgorI34gbXNnc3RyICJkYmc6ICVzIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIG9wZW4gdG1wZmlsZSAoY29udHJvbCksICVzIgorI34gbXNnc3RyICLnhKHms5XplovllZ/oh6jmmYLmqpQgKGNvbnRyb2wp77yMJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gb3BlbiB0bXBmaWxlIChkYXRhKSwgJXMiCisjfiBtc2dzdHIgIueEoeazleW7uueri+iHqOaZguaqlCAoZGF0YSnvvIwlcyIKKworI34gbXNnaWQgImludmFsaWQgbnVtYmVyIGZvciAtLWNvbW1hbmQtZmQiCisjfiBtc2dzdHIgIi0tY29tbWFuZC1mZCDmiYDmjIflrprnmoTmlbjlrZfnhKHmlYgiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcmV3aW5kIGF0IHN0YXJ0IG9mIHZzbnByaW50ZiIKKyN+IG1zZ3N0ciAi54Sh5rOV5ZyoIHZzbnByaW50ZiDplovlp4vmmYLot7PliLDotbflp4vkvY3nva4iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gdHJ1bmNhdGUgaW4gdnNucHJpbnRmIgorI34gbXNnc3RyICLnhKHms5XlnKggdnNucHJpbnRmIOijoemAsuihjOe4rua4myIKKworI34gbXNnaWQgIndyaXRlIGVycm9yIGluIHZzbnByaW50ZiIKKyN+IG1zZ3N0ciAi5ZyoIHZzbnByaW50ZiDoo6Hlr6vlhaXpjK/oqqQiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gc3RhdCBpbiB2c25wcmludGYiCisjfiBtc2dzdHIgIueEoeazleWcqCB2c25wcmludGYg6KOh6YCy6KGM54uA5oWL5Y+W5b6XIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHJld2luZCBpbiB2c25wcmludGYiCisjfiBtc2dzdHIgIueEoeazleWcqCB2c25wcmludGYg6KOh6Lez5Yiw6LW35aeL5L2N572uIgorCisjfiBtc2dpZCAicmVhZCBlcnJvciBpbiB2c25wcmludGYgdHJ1bmNhdGVkIgorI34gbXNnc3RyICLlnKggdnNucHJpbnRmIOmAsuihjOe4rua4m+aZguiugOWPlumMr+iqpCIKKworI34gbXNnaWQgIlN5c3RlbSBlcnJvciBuby4lZCIKKyN+IG1zZ3N0ciAi57O757Wx6Yyv6KqkIG5vLiVkIgorCisjfiBtc2dpZCAiU2lnbmFsIG5vLiVkIgorI34gbXNnc3RyICLkv6HomZ8gbm8uJWQiCisKKyN+IG1zZ2lkICJkcGtnOiB3YXJuaW5nIC0gJXMgcmV0dXJuZWQgZXJyb3IgZXhpdCBzdGF0dXMgJWRcbiIKKyN+IG1zZ3N0ciAiZHBrZ++8muitpuWRiiAtICVzIOWCs+WbnuS6humMr+iqpOmAgOWHuueLgOaFiyAlZFxuIgorCisjfiBtc2dpZCAiZHBrZzogd2FybmluZyAtICVzIGtpbGxlZCBieSBzaWduYWwgKCVzKSVzXG4iCisjfiBtc2dzdHIgImRwa2fvvJrorablkYogLSAlcyDooqvkv6HomZ8gKCVzKSVzIOe1guatouS6hlxuIgorCisjfiBtc2dpZCAiZmFpbGVkIHRvIHJlYWQgYCVzJyBhdCBsaW5lICVkIgorI34gbXNnc3RyICLnhKHms5XoroDlj5YgYCVzJyDnmoTnrKwgYCVkJyDooYwiCisKKyN+IG1zZ2lkICJwYXJzZSBlcnJvciwgaW4gZmlsZSBgJS4yNTVzJyBuZWFyIGxpbmUgJWQiCisjfiBtc2dzdHIgIuiqnuazlemMr+iqpO+8jOWcqOaqlOahiCBgJS4yNTVzJyDnmoTnrKwgJWQg6KGM6ZmE6L+RIgorCisjfiBtc2dpZCAiIHBhY2thZ2UgYCUuMjU1cyciCisjfiBtc2dzdHIgIiDlpZfku7YgYCUuMjU1cyciCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gcmVhbGxvYyBmb3IgdmFyaWFibGUgYnVmZmVyIgorI34gbXNnc3RyICLnhKHms5XlnKjorormlbjnt6nooZ3ljYDkuIrpgLLooYwgcmVhbGxvYyIKKworI34gbXNnaWQgInByb2Nlc3NfYXJjaGl2ZSAuLi4gIGFscmVhZHkgZGlzYXBwZWFyZWQgISIKKyN+IG1zZ3N0ciAicHJvY2Vzc19hcmNoaXZlIC4uLiDlt7LntpPmtojlpLHkuobvvIEiCisKKyN+IG1zZ2lkICJnb2JibGUgcmVwbGFjZWQgZmlsZSBgJS4yNTVzJyIKKyN+IG1zZ3N0ciAi5aSn6YeP5pu/5o+b5LqG5qqU5qGIIGAlLjI1NXMnIgorCisjfiBtc2dpZCAiZHBrZzogJXM6IHdhcm5pbmcgLSBmYWlsZWQgdG8gcmVtb3ZlIGAlLjI1MHMnOiAlc1xuIgorI34gbXNnc3RyICJkcGtn77yaJXPvvJrorablkYogLSDnhKHms5Xnp7vpmaQgYCUuMjUwcyfvvJolc1xuIgorCisjfiBtc2dpZCAiLS1hdWRpdCBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudHMiCisjfiBtc2dzdHIgIi0tYXVkaXQg5LiN6ZyA5Lu75L2V5Y+D5pW4IgorCisjfiBtc2dpZCAiLS15ZXQtdG8tdW5wYWNrIGRvZXMgbm90IHRha2UgYW55IGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiLS15ZXQtdG8tdW5wYWNrIOS4jemcgOS7u+S9leWPg+aVuCIKKworI34gbXNnaWQgIi0tYXNzZXJ0LSogZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnRzIgorI34gbXNnc3RyICItLWFzc2VydC0qIOS4jemcgOS7u+S9leWPg+aVuCIKKworI34gbXNnaWQgIi0tcHJlZGVwLXBhY2thZ2UgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tcHJlZGVwLXBhY2thZ2Ug5LiN6ZyA5Lu75L2V5Y+D5pW4IgorCisjfiBtc2dpZCAiLS1wcmludC1hcmNoaXRlY3R1cmUgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tcHJpbnQtYXJjaGl0ZWN0dXJlIOS4jemcgOS7u+S9leWPg+aVuCIKKworI34gbXNnaWQgInVuYWJsZSB0byBzdGF0IGluc3RhbGxlZCAlcyBzY3JpcHQgYCUuMjUwcyciCisjfiBtc2dzdHIgIueEoeazleWPluW+l+W3suWuieijneeahCAlcyBzY3JpcHQgYCUuMjUwcycg55qE54uA5oWLIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHN0YXQgbmV3ICVzIHNjcmlwdCBgJS4yNTBzJyIKKyN+IG1zZ3N0ciAi54Sh5rOV5Y+W5b6X5paw55qEICVzIHNjcmlwdCBgJS4yNTBzJyDnmoTni4DmhYsiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gZXhlY3V0ZSBuZXcgJXMiCisjfiBtc2dzdHIgIueEoeazleWft+ihjOaWsOeahCAlcyIKKworI34gbXNnaWQgImRwa2c6IHdhcm5pbmcgLSB1bmFibGUgdG8gc3RhdCAlcyBgJS4yNTBzJzogJXNcbiIKKyN+IG1zZ3N0ciAiZHBrZ++8muitpuWRiiAtIOeEoeazleWPluW+lyAlcyBgJS4yNTBzJyDnmoTni4DmhYvvvJolc1xuIgorCisjfiBtc2dpZCAiLS1zZXQtc2VsZWN0aW9ucyBkb2VzIG5vdCB0YWtlIGFueSBhcmd1bWVudCIKKyN+IG1zZ3N0ciAiLS1zZXQtc2VsZWN0aW9ucyDkuI3pnIDku7vkvZXlj4PmlbgiCisKKyN+IG1zZ2lkICItLWNsZWFyLXNlbGVjdGlvbnMgZG9lcyBub3QgdGFrZSBhbnkgYXJndW1lbnQiCisjfiBtc2dzdHIgIi0tY2xlYXItc2VsZWN0aW9ucyDkuI3pnIDku7vkvZXlj4PmlbgiCisKKyN+IG1zZ2lkICItLWJ1aWxkIG5lZWRzIGEgZGlyZWN0b3J5IGFyZ3VtZW50IgorI34gbXNnc3RyICItLWJ1aWxkIOmcgOimgeS4gOWAi+ebrumMhOS9nOeCuuWPg+aVuCIKKworI34gbXNnaWQgIiIKKyN+ICJkcGtnLWRlYjogd2FybmluZywgbm90IGNoZWNraW5nIGNvbnRlbnRzIG9mIGNvbnRyb2wgYXJlYS5cbiIKKyN+ICJkcGtnLWRlYjogYnVpbGRpbmcgYW4gdW5rbm93biBwYWNrYWdlIGluIGAlcycuXG4iCisjfiBtc2dzdHIgIiIKKyN+ICJkcGtnLWRlYu+8muitpuWRiu+8jOaykuacieaqouafpSBjb250cm9sIOWNgOWfn+eahOWFp+WuueOAglxuIgorI34gImRwa2ctZGVi77ya5q2j5pa8IGAlcycg57eo6K2v5LiA5YCL5pyq55+l55qE5aWX5Lu244CCXG4iCisKKyN+IG1zZ2lkICJJbnRlcm5hbCBlcnJvciwgY29tcHJlc3NfdHlwZSBgJWknIHVua25vd24hIgorI34gbXNnc3RyICLlhafpg6jpjK/oqqTvvIzmnKrnn6XnmoQgY29tcHJlc3NfdHlwZSBgJWkn77yBIgorCisjfiBtc2dpZCAiLS1qb2luIHJlcXVpcmVzIG9uZSBvciBtb3JlIHBhcnQgZmlsZSBhcmd1bWVudHMiCisjfiBtc2dzdHIgIi0tam9pbiDpnIDopoHkuIDlgIvmiJblpJrlgIvliIblibLmqpTnmoTmqpTmoYjlkI3nqLHkvZzngrrlj4PmlbgiCisKKyN+IG1zZ2lkICItLWxpc3RxIGRvZXMgbm90IHRha2UgYW55IGFyZ3VtZW50cyIKKyN+IG1zZ3N0ciAiLS1saXN0cSDkuI3pnIDku7vkvZXlj4PmlbgiCisKKyN+IG1zZ2lkICIiCisjfiAiXG4iCisjfiAiQ29weXJpZ2h0IChDKSAxOTk2IEtpbS1NaW5oIEthcGxhbi4iCisjfiBtc2dzdHIgIiIKKyN+ICJcbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDE5OTYgS2ltLU1pbmggS2FwbGFuLiIKKworI34gbXNnaWQgIiIKKyN+ICJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gWy0tXSBbPGRpcm5hbWU+XVxuIgorI34gIlxuIgorI34gIk9wdGlvbnM6XG4iCisjfiAiICAtLXVuc2FmZSAgICAgc2V0IHNvbWUgYWRkaXRpb25hbCBwb3NzaWJseSB1c2VmdWwgb3B0aW9ucy5cbiIKKyN+ICIgICAgICAgICAgICAgICB3YXJuaW5nOiB0aGlzIG9wdGlvbiBtYXkgZ2FyYmxlIGFuIG90aGVyd2lzZSBjb3JyZWN0ICIKKyN+ICJmaWxlLlxuIgorI34gIiAgLS1oZWxwICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisjfiAiICAtLXZlcnNpb24gICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIueUqOazle+8miVzIFs86YG46aCFPiAuLi5dIFstLV0gWzznm67pjIQ+XVxuIgorI34gIlxuIgorI34gIumBuOmghe+8mlxuIgorI34gIiAgLS11bnNhZmUgICAgIOioreWumuS4gOS6m+WPr+iDveacg+acieeUqOeahOmhjeWklumBuOmgheOAglxuIgorI34gIiAgICAgICAgICAgICAgIOitpuWRiu+8mumAmeWAi+mBuOmgheWPr+iDveacg+aQjeavgOWOn+acrOato+eiuueahOaqlOahiOOAglxuIgorI34gIiAgLS1oZWxwICAgICAgIOmhr+ekuumAmeWAi+iqquaYjuioiuaBr+OAglxuIgorI34gIiAgLS12ZXJzaW9uICAgIOmhr+ekuueJiOacrOizh+ioiuOAglxuIgorCisjfiBtc2dpZCAidHJ5IGRlbGV0aW5nICVzIgorI34gbXNnc3RyICLlmJfoqabliKrpmaQgJXMiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gaW5zdGFsbCAlczsgaXQgd2lsbCBiZSBsZWZ0IGFzICVzOiAlcyIKKyN+IG1zZ3N0ciAi54Sh5rOV5a6J6KOdICVz77yb5bCH6KKr5pS+5ZyoICVz77yaJXMiCisKKyN+IG1zZ2lkICIlczogdW5hYmxlIHRvIHVubG9jayAlczogJXMiCisjfiBtc2dzdHIgIiVz77ya54Sh5rOV6Kej6Zmk6Y6W5a6aICVz77yaJXMiCisKKyN+IG1zZ2lkICIlcyAtIHN0YXR1cyBpcyAlcy4iCisjfiBtc2dzdHIgIiVzIC0g54uA5oWL54K6ICVz44CCIgorCisjfiBtc2dpZCAiIGxpbmsgdW5yZWFkYWJsZSAtICVzIgorI34gbXNnc3RyICIg6YCj57WQ54Sh5rOV6K6A5Y+WIC0gJXMiCisKKyN+IG1zZ2lkICIiCisjfiAid2FybmluZzogJXMgaXMgc3VwcG9zZWQgdG8gYmUgYSBzeW1saW5rIHRvICVzLCBcbiIKKyN+ICJvciBub25leGlzdGVudDsgaG93ZXZlciwgcmVhZGxpbmsgZmFpbGVkOiAlcyIKKyN+IG1zZ3N0ciAiIgorI34gIuitpuWRiu+8miVzIOeQhuaHieaYr+aMh+WQkSAlcyDnmoTpgKPntZDvvIxcbiIKKyN+ICLmiJbmoLnmnKzkuI3lrZjlnKjvvJvlj6/mmK/oroDlj5bpgKPntZDljbvlpLHmlZfvvJolcyIKKworI34gbXNnaWQgIkxlYXZpbmcgJXMgKCVzKSBwb2ludGluZyB0byAlcy4iCisjfiBtc2dzdHIgIuS/neeVmSAlcyAoJXMpIOaMh+WQkSAlc+OAgiIKKworI34gbXNnaWQgIlVwZGF0aW5nICVzICglcykgdG8gcG9pbnQgdG8gJXMuIgorI34gbXNnc3RyICLmraPlnKjmm7TmlrAgJXMoJXMpIOS7peaMh+WQkSAlc+OAgiIKKworI34gbXNnaWQgIlJlbW92aW5nICVzICglcyksIG5vdCBhcHByb3ByaWF0ZSB3aXRoICVzLiIKKyN+IG1zZ3N0ciAi5q2j5Zyo56e76ZmkICVzKCVzKSDvvIzkuI3pgannlKjmlrwgJXPjgIIiCisKKyN+IG1zZ2lkICIiCisjfiAiQ2hlY2tpbmcgYXZhaWxhYmxlIHZlcnNpb25zIG9mICVzLCB1cGRhdGluZyBsaW5rcyBpbiAlcyAuLi5cbiIKKyN+ICIoWW91IG1heSBtb2RpZnkgdGhlIHN5bWxpbmtzIHRoZXJlIHlvdXJzZWxmIGlmIGRlc2lyZWQgLSBzZWUgYG1hbiBsbicuKSIKKyN+IG1zZ3N0ciAiIgorI34gIuaqouafpSAlcyDnmoTlj6/nlKjniYjmnKzvvIzmm7TmlrAgJXMg55qE6YCj57WQ5LitIC4uLlxuIgorI34gIu+8iOS9oOS5n+WPr+S7peS+neeFp+iHquW3sueahOWWnOWlveS+huiHquihjOS/ruaUuemAo+e1kCAtIOiri+WPg+mWsSBgbWFuIGxuJ+OAgikiCisKKyN+IG1zZ2lkICJzbGF2ZSBsaW5rIG5hbWUgJXMgZHVwbGljYXRlZCIKKyN+IG1zZ3N0ciAi5qyh6KaB6YCj57WQ5ZCN56ixICVzIOW3sumHjeikhyIKKworI34gbXNnaWQgIlJlY292ZXJpbmcgZnJvbSBwcmV2aW91cyBmYWlsZWQgdXBkYXRlIG9mICVzIC4uLiIKKyN+IG1zZ3N0ciAi5bCHICVzIOWbnuW+qeaIkOabtOaWsOWkseaVl+S5i+WJjeeahOeLgOaFiyAuLi4iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gb3BlbiAlcyBmb3Igd3JpdGU6ICVzIgorI34gbXNnc3RyICLnhKHms5XplovllZ8gJXMg5Lul6YCy6KGM5a+r5YWl77yaJXMiCisKKyN+IG1zZ2lkICJMYXN0IHBhY2thZ2UgcHJvdmlkaW5nICVzICglcykgcmVtb3ZlZCwgZGVsZXRpbmcgaXQuIgorI34gbXNnc3RyICLmnIDlvozkuIDlgIvmj5DkvpsgJXMgKCVzKSDnmoTlpZfku7blt7Lnp7vpmaTvvIzlsIflhbbliKrpmaTjgIIiCisKKyN+IG1zZ2lkICIiCisjfiAiVGhlcmUgaXMgb25seSAxIHByb2dyYW0gd2hpY2ggcHJvdmlkZXMgJXNcbiIKKyN+ICIoJXMpLiBOb3RoaW5nIHRvIGNvbmZpZ3VyZS5cbiIKKyN+IG1zZ3N0ciAiIgorI34gIuWPquacieS4gOWAi+eoi+W8j+aPkOS+m+S6hiAlc1xuIgorI34gIiglcynjgILmr4vpnIDku7vkvZXoqK3lrprjgIJcbiIKKworI34gbXNnaWQgIiIKKyN+ICJUaGVyZSBhcmUgJXMgYWx0ZXJuYXRpdmVzIHdoaWNoIHByb3ZpZGUgYCVzJy5cbiIKKyN+ICJcbiIKKyN+ICIgIFNlbGVjdGlvbiAgICBBbHRlcm5hdGl2ZVxuIgorI34gIi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4iCisjfiBtc2dzdHIgIiIKKyN+ICLmj5DkvpvkuoYgYCUyJHMnIOeahOWPr+abv+aPm+eoi+W8j+WFseaciSAlMSRzIOWAi+OAglxuIgorI34gIlxuIgorI34gIiAg6YG45pOHICAgICAgICAg5Y+v5pu/5o+b56iL5byPXG4iCisjfiAiLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiIKKworI34gbXNnaWQgImVycm9yIG9yIGVvZiByZWFkaW5nICVzIGZvciAlcyAoJXMpIgorI34gbXNnc3RyICLlnKjoroDlj5YgJTIkcyAoJTMkcykg55qEICUxJHMg5pmC55m855Sf6Yyv6Kqk5oiW5piv6K6A5Y+W5YiwIGVvZiIKKworI34gbXNnaWQgIm1pc3NpbmcgbmV3bGluZSBhZnRlciAlcyIKKyN+IG1zZ3N0ciAi5ZyoICVzIOW+jOaykuacieaPm+ihjOespuiZnyIKKworI34gbXNnaWQgIlNlcmlvdXMgcHJvYmxlbTogJXMiCisjfiBtc2dzdHIgIuWatOmHjeeahOWVj+mhjO+8miVzIgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL0Rwa2cucG0gYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvRHBrZy5wbQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yODNmMDQxCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL0Rwa2cucG0KQEAgLTAsMCArMSwzMyBAQAorIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorIworIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorIworIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKworcGFja2FnZSBEcGtnOworCit1c2Ugc3RyaWN0OwordXNlIHdhcm5pbmdzOworCitvdXIgJFZFUlNJT04gPSAiMS4wMCI7CisKK3VzZSBiYXNlIHF3KEV4cG9ydGVyKTsKK291ciBARVhQT1JUID0gcXcoJHZlcnNpb24gJHByb2duYW1lICRhZG1pbmRpciAkZHBrZ2xpYmRpciAkcGtnZGF0YWRpcik7CisKK291ciAoJHByb2duYW1lKSA9ICQwID1+IG0jKD86LiovKT8oW14vXSopIzsKKworIyBUaGUgZm9sbG93aW5nIGxpbmVzIGFyZSBhdXRvbWF0aWNhbGx5IGZpeGVkIGF0IGluc3RhbGwgdGltZQorb3VyICR2ZXJzaW9uID0gIjEuMTQiOworb3VyICRhZG1pbmRpciA9ICIvdmFyL2xpYi9kcGtnIjsKK291ciAkZHBrZ2xpYmRpciA9ICIuIjsKK291ciAkcGtnZGF0YWRpciA9ICIuLiI7CiskcGtnZGF0YWRpciA9ICRFTlZ7RFBLR19EQVRBRElSfSBpZiBkZWZpbmVkICRFTlZ7RFBLR19EQVRBRElSfTsKKworMTsKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9EcGtnL0FyY2gucG0gYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvRHBrZy9BcmNoLnBtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjhmZTY4YWEKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvRHBrZy9BcmNoLnBtCkBAIC0wLDAgKzEsMzc1IEBACisjIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisjIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisjIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisjIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisjCisjIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisjIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisjCisjIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisjIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorCitwYWNrYWdlIERwa2c6OkFyY2g7CisKK3VzZSBzdHJpY3Q7Cit1c2Ugd2FybmluZ3M7CisKK291ciAkVkVSU0lPTiA9ICIwLjAxIjsKKwordXNlIGJhc2UgcXcoRXhwb3J0ZXIpOworb3VyIEBFWFBPUlRfT0sgPSBxdyhnZXRfcmF3X2J1aWxkX2FyY2ggZ2V0X3Jhd19ob3N0X2FyY2gKKyAgICAgICAgICAgICAgICAgICAgZ2V0X2J1aWxkX2FyY2ggZ2V0X2hvc3RfYXJjaCBnZXRfZ2NjX2hvc3RfZ251X3R5cGUKKyAgICAgICAgICAgICAgICAgICAgZ2V0X3ZhbGlkX2FyY2hlcyBkZWJhcmNoX2VxIGRlYmFyY2hfaXMKKyAgICAgICAgICAgICAgICAgICAgZGViYXJjaF90b19jcHVhdHRycworICAgICAgICAgICAgICAgICAgICBkZWJhcmNoX3RvX2dudXRyaXBsZXQgZ251dHJpcGxldF90b19kZWJhcmNoCisgICAgICAgICAgICAgICAgICAgIGRlYnRyaXBsZXRfdG9fZ251dHJpcGxldCBnbnV0cmlwbGV0X3RvX2RlYnRyaXBsZXQKKyAgICAgICAgICAgICAgICAgICAgZGVidHJpcGxldF90b19kZWJhcmNoIGRlYmFyY2hfdG9fZGVidHJpcGxldAorICAgICAgICAgICAgICAgICAgICBnbnV0cmlwbGV0X3RvX211bHRpYXJjaCBkZWJhcmNoX3RvX211bHRpYXJjaCk7CisKK3VzZSBEcGtnOwordXNlIERwa2c6OkdldHRleHQ7Cit1c2UgRHBrZzo6RXJyb3JIYW5kbGluZzsKKworbXkgKEBjcHUsIEBvcyk7CitteSAoJWNwdXRhYmxlLCAlb3N0YWJsZSk7CitteSAoJWNwdXRhYmxlX3JlLCAlb3N0YWJsZV9yZSk7CitteSAoJWNwdWJpdHMsICVjcHVlbmRpYW4pOworCitteSAlZGVidHJpcGxldF90b19kZWJhcmNoOworbXkgJWRlYmFyY2hfdG9fZGVidHJpcGxldDsKKworeworICAgIG15ICRidWlsZF9hcmNoOworICAgIG15ICRob3N0X2FyY2g7CisgICAgbXkgJGdjY19ob3N0X2dudV90eXBlOworCisgICAgc3ViIGdldF9yYXdfYnVpbGRfYXJjaCgpCisgICAgeworCXJldHVybiAkYnVpbGRfYXJjaCBpZiBkZWZpbmVkICRidWlsZF9hcmNoOworCisJbXkgJGJ1aWxkX2FyY2ggPSBgZHBrZyAtLXByaW50LWFyY2hpdGVjdHVyZWA7CisJIyBGSVhNRTogSGFuZGxlIGJvb3RzdHJhcHBpbmcKKwlzeXNlcnIoImRwa2cgLS1wcmludC1hcmNoaXRlY3R1cmUgZmFpbGVkIikgaWYgJD8gPj4gODsKKworCWNob21wICRidWlsZF9hcmNoOworCXJldHVybiAkYnVpbGRfYXJjaDsKKyAgICB9CisKKyAgICBzdWIgZ2V0X2J1aWxkX2FyY2goKQorICAgIHsKKwlyZXR1cm4gJEVOVntERUJfQlVJTERfQVJDSH0gfHwgZ2V0X3Jhd19idWlsZF9hcmNoKCk7CisgICAgfQorCisgICAgc3ViIGdldF9nY2NfaG9zdF9nbnVfdHlwZSgpCisgICAgeworCXJldHVybiAkZ2NjX2hvc3RfZ251X3R5cGUgaWYgZGVmaW5lZCAkZ2NjX2hvc3RfZ251X3R5cGU7CisKKwlteSAkZ2NjX2hvc3RfZ251X3R5cGUgPSBgXCR7Q0M6LWdjY30gLWR1bXBtYWNoaW5lYDsKKwlpZiAoJD8gPj4gOCkgeworCSAgICAkZ2NjX2hvc3RfZ251X3R5cGUgPSAnJzsKKwl9IGVsc2UgeworCSAgICBjaG9tcCAkZ2NjX2hvc3RfZ251X3R5cGU7CisJfQorCisJcmV0dXJuICRnY2NfaG9zdF9nbnVfdHlwZTsKKyAgICB9CisKKyAgICBzdWIgZ2V0X3Jhd19ob3N0X2FyY2goKQorICAgIHsKKwlyZXR1cm4gJGhvc3RfYXJjaCBpZiBkZWZpbmVkICRob3N0X2FyY2g7CisKKwkkZ2NjX2hvc3RfZ251X3R5cGUgPSBnZXRfZ2NjX2hvc3RfZ251X3R5cGUoKTsKKworCWlmICgkZ2NjX2hvc3RfZ251X3R5cGUgZXEgJycpIHsKKwkgICAgd2FybmluZyhfZygiQ291bGRuJ3QgZGV0ZXJtaW5lIGdjYyBzeXN0ZW0gdHlwZSwgZmFsbGluZyBiYWNrIHRvICIgLgorCSAgICAgICAgICAgICAgICJkZWZhdWx0IChuYXRpdmUgY29tcGlsYXRpb24pIikpOworCX0gZWxzZSB7CisJICAgIG15IChAaG9zdF9hcmNodHJpcGxldCkgPSBnbnV0cmlwbGV0X3RvX2RlYnRyaXBsZXQoJGdjY19ob3N0X2dudV90eXBlKTsKKwkgICAgJGhvc3RfYXJjaCA9IGRlYnRyaXBsZXRfdG9fZGViYXJjaChAaG9zdF9hcmNodHJpcGxldCk7CisKKwkgICAgaWYgKGRlZmluZWQgJGhvc3RfYXJjaCkgeworCQkkZ2NjX2hvc3RfZ251X3R5cGUgPSBkZWJ0cmlwbGV0X3RvX2dudXRyaXBsZXQoQGhvc3RfYXJjaHRyaXBsZXQpOworCSAgICB9IGVsc2UgeworCQl3YXJuaW5nKF9nKCJVbmtub3duIGdjYyBzeXN0ZW0gdHlwZSAlcywgZmFsbGluZyBiYWNrIHRvICIgLgorCQkgICAgICAgICAgICJkZWZhdWx0IChuYXRpdmUgY29tcGlsYXRpb24pIiksICRnY2NfaG9zdF9nbnVfdHlwZSk7CisJCSRnY2NfaG9zdF9nbnVfdHlwZSA9ICcnOworCSAgICB9CisJfQorCisJaWYgKCFkZWZpbmVkKCRob3N0X2FyY2gpKSB7CisJICAgICMgU3dpdGNoIHRvIG5hdGl2ZSBjb21waWxhdGlvbi4KKwkgICAgJGhvc3RfYXJjaCA9IGdldF9yYXdfYnVpbGRfYXJjaCgpOworCX0KKworCXJldHVybiAkaG9zdF9hcmNoOworICAgIH0KKworICAgIHN1YiBnZXRfaG9zdF9hcmNoKCkKKyAgICB7CisJcmV0dXJuICRFTlZ7REVCX0hPU1RfQVJDSH0gfHwgZ2V0X3Jhd19ob3N0X2FyY2goKTsKKyAgICB9Cit9CisKK3N1YiBnZXRfdmFsaWRfYXJjaGVzKCkKK3sKKyAgICByZWFkX2NwdXRhYmxlKCkgaWYgKCFAY3B1KTsKKyAgICByZWFkX29zdGFibGUoKSBpZiAoIUBvcyk7CisKKyAgICBteSBAYXJjaGVzOworCisgICAgZm9yZWFjaCBteSAkb3MgKEBvcykgeworCWZvcmVhY2ggbXkgJGNwdSAoQGNwdSkgeworCSAgICBteSAkYXJjaCA9IGRlYnRyaXBsZXRfdG9fZGViYXJjaChzcGxpdCgvLS8sICRvcywgMiksICRjcHUpOworCSAgICBwdXNoIEBhcmNoZXMsICRhcmNoIGlmIGRlZmluZWQoJGFyY2gpOworCX0KKyAgICB9CisKKyAgICByZXR1cm4gQGFyY2hlczsKK30KKworc3ViIHJlYWRfY3B1dGFibGUKK3sKKyAgICBsb2NhbCAkXzsKKyAgICBsb2NhbCAkLyA9ICJcbiI7CisKKyAgICBvcGVuIENQVVRBQkxFLCAiJHBrZ2RhdGFkaXIvY3B1dGFibGUiCisJb3Igc3lzZXJyKF9nKCJjYW5ub3Qgb3BlbiAlcyIpLCAiY3B1dGFibGUiKTsKKyAgICB3aGlsZSAoPENQVVRBQkxFPikgeworCWlmIChtL14oPyFcIykoXFMrKVxzKyhcUyspXHMrKFxTKylccysoXFMrKVxzKyhcUyspLykgeworCSAgICAkY3B1dGFibGV7JDF9ID0gJDI7CisJICAgICRjcHV0YWJsZV9yZXskMX0gPSAkMzsKKwkgICAgJGNwdWJpdHN7JDF9ID0gJDQ7CisJICAgICRjcHVlbmRpYW57JDF9ID0gJDU7CisJICAgIHB1c2ggQGNwdSwgJDE7CisJfQorICAgIH0KKyAgICBjbG9zZSBDUFVUQUJMRTsKK30KKworc3ViIHJlYWRfb3N0YWJsZQoreworICAgIGxvY2FsICRfOworICAgIGxvY2FsICQvID0gIlxuIjsKKworICAgIG9wZW4gT1NUQUJMRSwgIiRwa2dkYXRhZGlyL29zdGFibGUiCisJb3Igc3lzZXJyKF9nKCJjYW5ub3Qgb3BlbiAlcyIpLCAib3N0YWJsZSIpOworICAgIHdoaWxlICg8T1NUQUJMRT4pIHsKKwlpZiAobS9eKD8hXCMpKFxTKylccysoXFMrKVxzKyhcUyspLykgeworCSAgICAkb3N0YWJsZXskMX0gPSAkMjsKKwkgICAgJG9zdGFibGVfcmV7JDF9ID0gJDM7CisJICAgIHB1c2ggQG9zLCAkMTsKKwl9CisgICAgfQorICAgIGNsb3NlIE9TVEFCTEU7Cit9CisKK3N1YiByZWFkX3RyaXBsZXR0YWJsZSgpCit7CisgICAgcmVhZF9jcHV0YWJsZSgpIGlmICghQGNwdSk7CisKKyAgICBsb2NhbCAkXzsKKyAgICBsb2NhbCAkLyA9ICJcbiI7CisKKyAgICBvcGVuIFRSSVBMRVRUQUJMRSwgIiRwa2dkYXRhZGlyL3RyaXBsZXR0YWJsZSIKKwlvciBzeXNlcnIoX2coImNhbm5vdCBvcGVuICVzIiksICJ0cmlwbGV0dGFibGUiKTsKKyAgICB3aGlsZSAoPFRSSVBMRVRUQUJMRT4pIHsKKwlpZiAobS9eKD8hXCMpKFxTKylccysoXFMrKS8pIHsKKwkgICAgbXkgJGRlYnRyaXBsZXQgPSAkMTsKKwkgICAgbXkgJGRlYmFyY2ggPSAkMjsKKworCSAgICBpZiAoJGRlYnRyaXBsZXQgPX4gLzxjcHU+LykgeworCQlmb3JlYWNoIG15ICRfY3B1IChAY3B1KSB7CisJCSAgICAobXkgJGR0ID0gJGRlYnRyaXBsZXQpID1+IHMvPGNwdT4vJF9jcHUvOworCQkgICAgKG15ICRkYSA9ICRkZWJhcmNoKSA9fiBzLzxjcHU+LyRfY3B1LzsKKworCQkgICAgJGRlYmFyY2hfdG9fZGVidHJpcGxldHskZGF9ID0gJGR0OworCQkgICAgJGRlYnRyaXBsZXRfdG9fZGViYXJjaHskZHR9ID0gJGRhOworCQl9CisJICAgIH0gZWxzZSB7CisJCSRkZWJhcmNoX3RvX2RlYnRyaXBsZXR7JDJ9ID0gJDE7CisJCSRkZWJ0cmlwbGV0X3RvX2RlYmFyY2h7JDF9ID0gJDI7CisJICAgIH0KKwl9CisgICAgfQorICAgIGNsb3NlIFRSSVBMRVRUQUJMRTsKK30KKworc3ViIGRlYnRyaXBsZXRfdG9fZ251dHJpcGxldChAKQoreworICAgIHJlYWRfY3B1dGFibGUoKSBpZiAoIUBjcHUpOworICAgIHJlYWRfb3N0YWJsZSgpIGlmICghQG9zKTsKKworICAgIG15ICgkYWJpLCAkb3MsICRjcHUpID0gQF87CisKKyAgICByZXR1cm4gdW5kZWYgdW5sZXNzIGRlZmluZWQoJGFiaSkgJiYgZGVmaW5lZCgkb3MpICYmIGRlZmluZWQoJGNwdSkgJiYKKyAgICAgICAgZXhpc3RzKCRjcHV0YWJsZXskY3B1fSkgJiYgZXhpc3RzKCRvc3RhYmxleyIkYWJpLSRvcyJ9KTsKKyAgICByZXR1cm4gam9pbigiLSIsICRjcHV0YWJsZXskY3B1fSwgJG9zdGFibGV7IiRhYmktJG9zIn0pOworfQorCitzdWIgZ251dHJpcGxldF90b19kZWJ0cmlwbGV0KCQpCit7CisgICAgbXkgKCRnbnUpID0gQF87CisgICAgcmV0dXJuIHVuZGVmIHVubGVzcyBkZWZpbmVkKCRnbnUpOworICAgIG15ICgkZ251X2NwdSwgJGdudV9vcykgPSBzcGxpdCgvLS8sICRnbnUsIDIpOworICAgIHJldHVybiB1bmRlZiB1bmxlc3MgZGVmaW5lZCgkZ251X2NwdSkgJiYgZGVmaW5lZCgkZ251X29zKTsKKworICAgIHJlYWRfY3B1dGFibGUoKSBpZiAoIUBjcHUpOworICAgIHJlYWRfb3N0YWJsZSgpIGlmICghQG9zKTsKKworICAgIG15ICgkb3MsICRjcHUpOworCisgICAgZm9yZWFjaCBteSAkX2NwdSAoQGNwdSkgeworCWlmICgkZ251X2NwdSA9fiAvXiRjcHV0YWJsZV9yZXskX2NwdX0kLykgeworCSAgICAkY3B1ID0gJF9jcHU7CisJICAgIGxhc3Q7CisJfQorICAgIH0KKworICAgIGZvcmVhY2ggbXkgJF9vcyAoQG9zKSB7CisJaWYgKCRnbnVfb3MgPX4gL14oLiotKT8kb3N0YWJsZV9yZXskX29zfSQvKSB7CisJICAgICRvcyA9ICRfb3M7CisJICAgIGxhc3Q7CisJfQorICAgIH0KKworICAgIHJldHVybiB1bmRlZiBpZiAhZGVmaW5lZCgkY3B1KSB8fCAhZGVmaW5lZCgkb3MpOworICAgIHJldHVybiAoc3BsaXQoLy0vLCAkb3MsIDIpLCAkY3B1KTsKK30KKworc3ViIGdudXRyaXBsZXRfdG9fbXVsdGlhcmNoKCQpCit7CisgICAgbXkgKCRnbnUpID0gQF87CisgICAgbXkgKCRjcHUsICRjZHIpID0gc3BsaXQoJy0nLCAkZ251LCAyKTsKKworICAgIGlmICgkY3B1ID1+IC9eaVs0NTZdODYkLykgeworCXJldHVybiAiaTM4Ni0kY2RyIjsKKyAgICB9IGVsc2UgeworCXJldHVybiAkZ251OworICAgIH0KK30KKworc3ViIGRlYmFyY2hfdG9fbXVsdGlhcmNoKCQpCit7CisgICAgbXkgKCRhcmNoKSA9IEBfOworCisgICAgcmV0dXJuIGdudXRyaXBsZXRfdG9fbXVsdGlhcmNoKGRlYmFyY2hfdG9fZ251dHJpcGxldCgkYXJjaCkpOworfQorCitzdWIgZGVidHJpcGxldF90b19kZWJhcmNoKEApCit7CisgICAgcmVhZF90cmlwbGV0dGFibGUoKSBpZiAoISVkZWJ0cmlwbGV0X3RvX2RlYmFyY2gpOworCisgICAgbXkgKCRhYmksICRvcywgJGNwdSkgPSBAXzsKKworICAgIGlmICghZGVmaW5lZCgkYWJpKSB8fCAhZGVmaW5lZCgkb3MpIHx8ICFkZWZpbmVkKCRjcHUpKSB7CisJcmV0dXJuIHVuZGVmOworICAgIH0gZWxzaWYgKGV4aXN0cyAkZGVidHJpcGxldF90b19kZWJhcmNoeyIkYWJpLSRvcy0kY3B1In0pIHsKKwlyZXR1cm4gJGRlYnRyaXBsZXRfdG9fZGViYXJjaHsiJGFiaS0kb3MtJGNwdSJ9OworICAgIH0gZWxzZSB7CisJcmV0dXJuIHVuZGVmOworICAgIH0KK30KKworc3ViIGRlYmFyY2hfdG9fZGVidHJpcGxldCgkKQoreworICAgIHJlYWRfdHJpcGxldHRhYmxlKCkgaWYgKCElZGViYXJjaF90b19kZWJ0cmlwbGV0KTsKKworICAgIGxvY2FsICgkXykgPSBAXzsKKyAgICBteSAkYXJjaDsKKworICAgIGlmICgvXmxpbnV4LShbXi1dKikvKSB7CisJIyBYWFg6IE1pZ2h0IGRpc2FwcGVhciBpbiB0aGUgZnV0dXJlLCBub3Qgc3VyZSB5ZXQuCisJJGFyY2ggPSAkMTsKKyAgICB9IGVsc2UgeworCSRhcmNoID0gJF87CisgICAgfQorCisgICAgbXkgJHRyaXBsZXQgPSAkZGViYXJjaF90b19kZWJ0cmlwbGV0eyRhcmNofTsKKworICAgIGlmIChkZWZpbmVkKCR0cmlwbGV0KSkgeworCXJldHVybiBzcGxpdCgnLScsICR0cmlwbGV0LCAzKTsKKyAgICB9IGVsc2UgeworCXJldHVybiB1bmRlZjsKKyAgICB9Cit9CisKK3N1YiBkZWJhcmNoX3RvX2dudXRyaXBsZXQoJCkKK3sKKyAgICBteSAoJGFyY2gpID0gQF87CisKKyAgICByZXR1cm4gZGVidHJpcGxldF90b19nbnV0cmlwbGV0KGRlYmFyY2hfdG9fZGVidHJpcGxldCgkYXJjaCkpOworfQorCitzdWIgZ251dHJpcGxldF90b19kZWJhcmNoKCQpCit7CisgICAgbXkgKCRnbnUpID0gQF87CisKKyAgICByZXR1cm4gZGVidHJpcGxldF90b19kZWJhcmNoKGdudXRyaXBsZXRfdG9fZGVidHJpcGxldCgkZ251KSk7Cit9CisKK3N1YiBkZWJ3aWxkY2FyZF90b19kZWJ0cmlwbGV0KCQpCit7CisgICAgbG9jYWwgKCRfKSA9IEBfOworCisgICAgaWYgKC9hbnkvKSB7CisJaWYgKC9eKFteLV0qKS0oW14tXSopLSguKikvKSB7CisJICAgIHJldHVybiAoJDEsICQyLCAkMyk7CisJfSBlbHNpZiAoL14oW14tXSopLShbXi1dKikkLykgeworCSAgICByZXR1cm4gKCdhbnknLCAkMSwgJDIpOworCX0gZWxzZSB7CisJICAgIHJldHVybiAoJF8sICRfLCAkXyk7CisJfQorICAgIH0gZWxzZSB7CisJcmV0dXJuIGRlYmFyY2hfdG9fZGVidHJpcGxldCgkXyk7CisgICAgfQorfQorCitzdWIgZGViYXJjaF90b19jcHVhdHRycygkKQoreworICAgIG15ICgkYXJjaCkgPSBAXzsKKyAgICBteSAoJGFiaSwgJG9zLCAkY3B1KSA9IGRlYmFyY2hfdG9fZGVidHJpcGxldCgkYXJjaCk7CisKKyAgICBpZiAoZGVmaW5lZCgkY3B1KSkgeworICAgICAgICByZXR1cm4gKCRjcHViaXRzeyRjcHV9LCAkY3B1ZW5kaWFueyRjcHV9KTsKKyAgICB9IGVsc2UgeworICAgICAgICByZXR1cm4gdW5kZWY7CisgICAgfQorfQorCitzdWIgZGViYXJjaF9lcSgkJCkKK3sKKyAgICBteSAoJGEsICRiKSA9IEBfOworCisgICAgcmV0dXJuIDEgaWYgKCRhIGVxICRiKTsKKworICAgIG15IEBhID0gZGViYXJjaF90b19kZWJ0cmlwbGV0KCRhKTsKKyAgICBteSBAYiA9IGRlYmFyY2hfdG9fZGVidHJpcGxldCgkYik7CisKKyAgICByZXR1cm4gMCBpZiBncmVwKCFkZWZpbmVkLCAoQGEsIEBiKSk7CisKKyAgICByZXR1cm4gKCRhWzBdIGVxICRiWzBdICYmICRhWzFdIGVxICRiWzFdICYmICRhWzJdIGVxICRiWzJdKTsKK30KKworc3ViIGRlYmFyY2hfaXMoJCQpCit7CisgICAgbXkgKCRyZWFsLCAkYWxpYXMpID0gQF87CisKKyAgICByZXR1cm4gMSBpZiAoJGFsaWFzIGVxICRyZWFsIG9yICRhbGlhcyBlcSAnYW55Jyk7CisKKyAgICBteSBAcmVhbCA9IGRlYmFyY2hfdG9fZGVidHJpcGxldCgkcmVhbCk7CisgICAgbXkgQGFsaWFzID0gZGVid2lsZGNhcmRfdG9fZGVidHJpcGxldCgkYWxpYXMpOworCisgICAgcmV0dXJuIDAgaWYgZ3JlcCghZGVmaW5lZCwgKEByZWFsLCBAYWxpYXMpKTsKKworICAgIGlmICgoJGFsaWFzWzBdIGVxICRyZWFsWzBdIHx8ICRhbGlhc1swXSBlcSAnYW55JykgJiYKKyAgICAgICAgKCRhbGlhc1sxXSBlcSAkcmVhbFsxXSB8fCAkYWxpYXNbMV0gZXEgJ2FueScpICYmCisgICAgICAgICgkYWxpYXNbMl0gZXEgJHJlYWxbMl0gfHwgJGFsaWFzWzJdIGVxICdhbnknKSkgeworCXJldHVybiAxOworICAgIH0KKworICAgIHJldHVybiAwOworfQorCisxOwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL0Rwa2cvQnVpbGRGbGFncy5wbSBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9EcGtnL0J1aWxkRmxhZ3MucG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjExMmE5ZgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9EcGtnL0J1aWxkRmxhZ3MucG0KQEAgLTAsMCArMSwzNjEgQEAKKyMgQ29weXJpZ2h0IMKpIDIwMTAtMjAxMSBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisjCisjIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisjIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisjIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisjIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisjCisjIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisjIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisjCisjIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisjIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorCitwYWNrYWdlIERwa2c6OkJ1aWxkRmxhZ3M7CisKK3VzZSBzdHJpY3Q7Cit1c2Ugd2FybmluZ3M7CisKK291ciAkVkVSU0lPTiA9ICIxLjAxIjsKKwordXNlIERwa2c6OkdldHRleHQ7Cit1c2UgRHBrZzo6QnVpbGRPcHRpb25zOwordXNlIERwa2c6OkVycm9ySGFuZGxpbmc7Cit1c2UgRHBrZzo6VmVuZG9yIHF3KHJ1bl92ZW5kb3JfaG9vayk7CisKKz1lbmNvZGluZyB1dGY4CisKKz1oZWFkMSBOQU1FCisKK0Rwa2c6OkJ1aWxkRmxhZ3MgLSBxdWVyeSBidWlsZCBmbGFncworCis9aGVhZDEgREVTQ1JJUFRJT04KKworVGhlIERwa2c6OkJ1aWxkRmxhZ3Mgb2JqZWN0IGlzIHVzZWQgYnkgZHBrZy1idWlsZGZsYWdzIGFuZCBjYW4gYmUgdXNlZAordG8gcXVlcnkgdGhlIHNhbWUgaW5mb3JtYXRpb24uCisKKz1oZWFkMSBGVU5DVElPTlMKKworPW92ZXIgNAorCis9aXRlbSBteSAkYmYgPSBEcGtnOjpCdWlsZEZsYWdzLT5uZXcoKQorCitDcmVhdGUgYSBuZXcgRHBrZzo6QnVpbGRGbGFncyBvYmplY3QuIEl0IHdpbGwgYmUgaW5pdGlhbGl6ZWQgYmFzZWQKK29uIHRoZSB2YWx1ZSBvZiBzZXZlcmFsIGNvbmZpZ3VyYXRpb24gZmlsZXMgYW5kIGVudmlyb25tZW50IHZhcmlhYmxlcy4KKworPWN1dAorCitzdWIgbmV3IHsKKyAgICBteSAoJHRoaXMsICVvcHRzKSA9IEBfOworICAgIG15ICRjbGFzcyA9IHJlZigkdGhpcykgfHwgJHRoaXM7CisKKyAgICBteSAkc2VsZiA9IHsKKyAgICB9OworICAgIGJsZXNzICRzZWxmLCAkY2xhc3M7CisgICAgJHNlbGYtPmxvYWRfdmVuZG9yX2RlZmF1bHRzKCk7CisgICAgcmV0dXJuICRzZWxmOworfQorCis9aXRlbSAkYmYtPmxvYWRfdmVuZG9yX2RlZmF1bHRzKCkKKworUmVzZXQgdGhlIGZsYWdzIHN0b3JlZCB0byB0aGUgZGVmYXVsdCBzZXQgcHJvdmlkZWQgYnkgdGhlIHZlbmRvci4KKworPWN1dAorCitzdWIgbG9hZF92ZW5kb3JfZGVmYXVsdHMgeworICAgIG15ICgkc2VsZikgPSBAXzsKKyAgICAkc2VsZi0+eydvcHRpb25zJ30gPSB7fTsKKyAgICAkc2VsZi0+eydzb3VyY2UnfSA9IHt9OworICAgIG15ICRidWlsZF9vcHRzID0gRHBrZzo6QnVpbGRPcHRpb25zLT5uZXcoKTsKKyAgICBteSAkZGVmYXVsdF9mbGFncyA9ICRidWlsZF9vcHRzLT5oYXMoIm5vb3B0IikgPyAiLWcgLU8wIiA6ICItZyAtTzIiOworICAgICRzZWxmLT57ZmxhZ3N9ID0geworCUNQUEZMQUdTID0+ICcnLAorCUNGTEFHUyAgID0+ICRkZWZhdWx0X2ZsYWdzLAorCUNYWEZMQUdTID0+ICRkZWZhdWx0X2ZsYWdzLAorCUZGTEFHUyAgID0+ICRkZWZhdWx0X2ZsYWdzLAorCUxERkxBR1MgID0+ICcnLAorICAgIH07CisgICAgJHNlbGYtPntvcmlnaW59ID0geworCUNQUEZMQUdTID0+ICd2ZW5kb3InLAorCUNGTEFHUyAgID0+ICd2ZW5kb3InLAorCUNYWEZMQUdTID0+ICd2ZW5kb3InLAorCUZGTEFHUyAgID0+ICd2ZW5kb3InLAorCUxERkxBR1MgID0+ICd2ZW5kb3InLAorICAgIH07CisgICAgIyBUaGUgRGViaWFuIHZlbmRvciBob29rIHdpbGwgYWRkIGhhcmRlbmluZyBidWlsZCBmbGFncworICAgIHJ1bl92ZW5kb3JfaG9vaygidXBkYXRlLWJ1aWxkZmxhZ3MiLCAkc2VsZik7Cit9CisKKz1pdGVtICRiZi0+bG9hZF9zeXN0ZW1fY29uZmlnKCkKKworVXBkYXRlIGZsYWdzIGZyb20gdGhlIHN5c3RlbSBjb25maWd1cmF0aW9uLgorCis9Y3V0CisKK3N1YiBsb2FkX3N5c3RlbV9jb25maWcgeworICAgIG15ICgkc2VsZikgPSBAXzsKKyAgICAkc2VsZi0+dXBkYXRlX2Zyb21fY29uZmZpbGUoIi9ldGMvZHBrZy9idWlsZGZsYWdzLmNvbmYiLCAic3lzdGVtIik7Cit9CisKKz1pdGVtICRiZi0+bG9hZF91c2VyX2NvbmZpZygpCisKK1VwZGF0ZSBmbGFncyBmcm9tIHRoZSB1c2VyIGNvbmZpZ3VyYXRpb24uCisKKz1jdXQKKworc3ViIGxvYWRfdXNlcl9jb25maWcgeworICAgIG15ICgkc2VsZikgPSBAXzsKKyAgICBteSAkY29uZmRpciA9ICRFTlZ7J1hER19DT05GSUdfSE9NRSd9OworICAgICRjb25mZGlyIHx8PSAkRU5WeydIT01FJ30gLiAiLy5jb25maWciIGlmIGRlZmluZWQgJEVOVnsnSE9NRSd9OworICAgIGlmIChkZWZpbmVkICRjb25mZGlyKSB7CisgICAgICAgICRzZWxmLT51cGRhdGVfZnJvbV9jb25mZmlsZSgiJGNvbmZkaXIvZHBrZy9idWlsZGZsYWdzLmNvbmYiLCAidXNlciIpOworICAgIH0KK30KKworPWl0ZW0gJGJmLT5sb2FkX2Vudmlyb25tZW50X2NvbmZpZygpCisKK1VwZGF0ZSBmbGFncyBiYXNlZCBvbiB1c2VyIGRpcmVjdGl2ZXMgc3RvcmVkIGluIHRoZSBlbnZpcm9ubWVudC4gU2VlCitkcGtnLWJ1aWxkZmxhZ3MoMSkgZm9yIGRldGFpbHMuCisKKz1jdXQKKworc3ViIGxvYWRfZW52aXJvbm1lbnRfY29uZmlnIHsKKyAgICBteSAoJHNlbGYpID0gQF87CisgICAgZm9yZWFjaCBteSAkZmxhZyAoa2V5cyAleyRzZWxmLT57ZmxhZ3N9fSkgeworCW15ICRlbnZ2YXIgPSAiREVCXyIgLiAkZmxhZyAuICJfU0VUIjsKKwlpZiAoZXhpc3RzICRFTlZ7JGVudnZhcn0pIHsKKwkgICAgJHNlbGYtPnNldCgkZmxhZywgJEVOVnskZW52dmFyfSwgImVudiIpOworCX0KKwkkZW52dmFyID0gIkRFQl8iIC4gJGZsYWcgLiAiX1NUUklQIjsKKwlpZiAoZXhpc3RzICRFTlZ7JGVudnZhcn0pIHsKKwkgICAgJHNlbGYtPnN0cmlwKCRmbGFnLCAkRU5WeyRlbnZ2YXJ9LCAiZW52Iik7CisJfQorCSRlbnZ2YXIgPSAiREVCXyIgLiAkZmxhZyAuICJfQVBQRU5EIjsKKwlpZiAoZXhpc3RzICRFTlZ7JGVudnZhcn0pIHsKKwkgICAgJHNlbGYtPmFwcGVuZCgkZmxhZywgJEVOVnskZW52dmFyfSwgImVudiIpOworCX0KKwkkZW52dmFyID0gIkRFQl8iIC4gJGZsYWcgLiAiX1BSRVBFTkQiOworCWlmIChleGlzdHMgJEVOVnskZW52dmFyfSkgeworCSAgICAkc2VsZi0+cHJlcGVuZCgkZmxhZywgJEVOVnskZW52dmFyfSwgImVudiIpOworCX0KKyAgICB9Cit9CisKKz1pdGVtICRiZi0+bG9hZF9tYWludGFpbmVyX2NvbmZpZygpCisKK1VwZGF0ZSBmbGFncyBiYXNlZCBvbiBtYWludGFpbmVyIGRpcmVjdGl2ZXMgc3RvcmVkIGluIHRoZSBlbnZpcm9ubWVudC4gU2VlCitkcGtnLWJ1aWxkZmxhZ3MoMSkgZm9yIGRldGFpbHMuCisKKz1jdXQKKworc3ViIGxvYWRfbWFpbnRhaW5lcl9jb25maWcgeworICAgIG15ICgkc2VsZikgPSBAXzsKKyAgICBmb3JlYWNoIG15ICRmbGFnIChrZXlzICV7JHNlbGYtPntmbGFnc319KSB7CisJbXkgJGVudnZhciA9ICJERUJfIiAuICRmbGFnIC4gIl9NQUlOVF9TRVQiOworCWlmIChleGlzdHMgJEVOVnskZW52dmFyfSkgeworCSAgICAkc2VsZi0+c2V0KCRmbGFnLCAkRU5WeyRlbnZ2YXJ9LCB1bmRlZik7CisJfQorCSRlbnZ2YXIgPSAiREVCXyIgLiAkZmxhZyAuICJfTUFJTlRfU1RSSVAiOworCWlmIChleGlzdHMgJEVOVnskZW52dmFyfSkgeworCSAgICAkc2VsZi0+c3RyaXAoJGZsYWcsICRFTlZ7JGVudnZhcn0sIHVuZGVmKTsKKwl9CisJJGVudnZhciA9ICJERUJfIiAuICRmbGFnIC4gIl9NQUlOVF9BUFBFTkQiOworCWlmIChleGlzdHMgJEVOVnskZW52dmFyfSkgeworCSAgICAkc2VsZi0+YXBwZW5kKCRmbGFnLCAkRU5WeyRlbnZ2YXJ9LCB1bmRlZik7CisJfQorCSRlbnZ2YXIgPSAiREVCXyIgLiAkZmxhZyAuICJfTUFJTlRfUFJFUEVORCI7CisJaWYgKGV4aXN0cyAkRU5WeyRlbnZ2YXJ9KSB7CisJICAgICRzZWxmLT5wcmVwZW5kKCRmbGFnLCAkRU5WeyRlbnZ2YXJ9LCB1bmRlZik7CisJfQorICAgIH0KK30KKworCis9aXRlbSAkYmYtPmxvYWRfY29uZmlnKCkKKworQ2FsbCBzdWNjZXNzaXZlbHkgbG9hZF9zeXN0ZW1fY29uZmlnKCksIGxvYWRfdXNlcl9jb25maWcoKSwKK2xvYWRfZW52aXJvbm1lbnRfY29uZmlnKCkgYW5kIGxvYWRfbWFpbnRhaW5lcl9jb25maWcoKSB0byB1cGRhdGUgdGhlCitkZWZhdWx0IGJ1aWxkIGZsYWdzIGRlZmluZWQgYnkgdGhlIHZlbmRvci4KKworPWN1dAorCitzdWIgbG9hZF9jb25maWcgeworICAgIG15ICgkc2VsZikgPSBAXzsKKyAgICAkc2VsZi0+bG9hZF9zeXN0ZW1fY29uZmlnKCk7CisgICAgJHNlbGYtPmxvYWRfdXNlcl9jb25maWcoKTsKKyAgICAkc2VsZi0+bG9hZF9lbnZpcm9ubWVudF9jb25maWcoKTsKKyAgICAkc2VsZi0+bG9hZF9tYWludGFpbmVyX2NvbmZpZygpOworfQorCis9aXRlbSAkYmYtPnNldCgkZmxhZywgJHZhbHVlLCAkc291cmNlKQorCitVcGRhdGUgdGhlIGJ1aWxkIGZsYWcgJGZsYWcgd2l0aCB2YWx1ZSAkdmFsdWUgYW5kIHJlY29yZCBpdHMgb3JpZ2luIGFzCiskc291cmNlIChpZiBkZWZpbmVkKS4KKworPWN1dAorCitzdWIgc2V0IHsKKyAgICBteSAoJHNlbGYsICRmbGFnLCAkdmFsdWUsICRzcmMpID0gQF87CisgICAgJHNlbGYtPntmbGFnc30tPnskZmxhZ30gPSAkdmFsdWU7CisgICAgJHNlbGYtPntvcmlnaW59LT57JGZsYWd9ID0gJHNyYyBpZiBkZWZpbmVkICRzcmM7Cit9CisKKz1pdGVtICRiZi0+c3RyaXAoJGZsYWcsICR2YWx1ZSwgJHNvdXJjZSkKKworVXBkYXRlIHRoZSBidWlsZCBmbGFnICRmbGFnIGJ5IHN0cmlwcGluZyB0aGUgZmxhZ3MgbGlzdGVkIGluICR2YWx1ZSBhbmQKK3JlY29yZCBpdHMgb3JpZ2luIGFzICRzb3VyY2UgKGlmIGRlZmluZWQpLgorCis9Y3V0CisKK3N1YiBzdHJpcCB7CisgICAgbXkgKCRzZWxmLCAkZmxhZywgJHZhbHVlLCAkc3JjKSA9IEBfOworICAgIGZvcmVhY2ggbXkgJHRvc3RyaXAgKHNwbGl0KC9ccysvLCAkdmFsdWUpKSB7CisJbmV4dCB1bmxlc3MgbGVuZ3RoICR0b3N0cmlwOworCSRzZWxmLT57ZmxhZ3N9LT57JGZsYWd9ID1+IHMvKF58XHMrKVxRJHRvc3RyaXBcRShccyt8JCkvIC9nOworICAgIH0KKyAgICAkc2VsZi0+e2ZsYWdzfS0+eyRmbGFnfSA9fiBzL15ccysvL2c7CisgICAgJHNlbGYtPntmbGFnc30tPnskZmxhZ30gPX4gcy9ccyskLy9nOworICAgICRzZWxmLT57b3JpZ2lufS0+eyRmbGFnfSA9ICRzcmMgaWYgZGVmaW5lZCAkc3JjOworfQorCis9aXRlbSAkYmYtPmFwcGVuZCgkZmxhZywgJHZhbHVlLCAkc291cmNlKQorCitBcHBlbmQgdGhlIG9wdGlvbnMgbGlzdGVkIGluICR2YWx1ZSB0byB0aGUgY3VycmVudCB2YWx1ZSBvZiB0aGUgZmxhZyAkZmxhZy4KK1JlY29yZCBpdHMgb3JpZ2luIGFzICRzb3VyY2UgKGlmIGRlZmluZWQpLgorCis9Y3V0CisKK3N1YiBhcHBlbmQgeworICAgIG15ICgkc2VsZiwgJGZsYWcsICR2YWx1ZSwgJHNyYykgPSBAXzsKKyAgICBpZiAobGVuZ3RoKCRzZWxmLT57ZmxhZ3N9LT57JGZsYWd9KSkgeworICAgICAgICAkc2VsZi0+e2ZsYWdzfS0+eyRmbGFnfSAuPSAiICR2YWx1ZSI7CisgICAgfSBlbHNlIHsKKyAgICAgICAgJHNlbGYtPntmbGFnc30tPnskZmxhZ30gPSAkdmFsdWU7CisgICAgfQorICAgICRzZWxmLT57b3JpZ2lufS0+eyRmbGFnfSA9ICRzcmMgaWYgZGVmaW5lZCAkc3JjOworfQorCis9aXRlbSAkYmYtPnByZXBlbmQoJGZsYWcsICR2YWx1ZSwgJHNvdXJjZSkKKworUHJlcGVuZCB0aGUgb3B0aW9ucyBsaXN0ZWQgaW4gJHZhbHVlIHRvIHRoZSBjdXJyZW50IHZhbHVlIG9mIHRoZSBmbGFnICRmbGFnLgorUmVjb3JkIGl0cyBvcmlnaW4gYXMgJHNvdXJjZSAoaWYgZGVmaW5lZCkuCisKKz1jdXQKKworc3ViIHByZXBlbmQgeworICAgIG15ICgkc2VsZiwgJGZsYWcsICR2YWx1ZSwgJHNyYykgPSBAXzsKKyAgICBpZiAobGVuZ3RoKCRzZWxmLT57ZmxhZ3N9LT57JGZsYWd9KSkgeworICAgICAgICAkc2VsZi0+e2ZsYWdzfS0+eyRmbGFnfSA9ICIkdmFsdWUgIiAuICRzZWxmLT57ZmxhZ3N9LT57JGZsYWd9OworICAgIH0gZWxzZSB7CisgICAgICAgICRzZWxmLT57ZmxhZ3N9LT57JGZsYWd9ID0gJHZhbHVlOworICAgIH0KKyAgICAkc2VsZi0+e29yaWdpbn0tPnskZmxhZ30gPSAkc3JjIGlmIGRlZmluZWQgJHNyYzsKK30KKworCis9aXRlbSAkYmYtPnVwZGF0ZV9mcm9tX2NvbmZmaWxlKCRmaWxlLCAkc291cmNlKQorCitVcGRhdGUgdGhlIGN1cnJlbnQgYnVpbGQgZmxhZ3MgYmFzZWQgb24gdGhlIGNvbmZpZ3VyYXRpb24gZGlyZWN0aXZlcworY29udGFpbmVkIGluICRmaWxlLiBTZWUgZHBrZy1idWlsZGZsYWdzKDEpIGZvciB0aGUgZm9ybWF0IG9mIHRoZSBkaXJlY3RpdmVzLgorCiskc291cmNlIGlzIHRoZSBvcmlnaW4gcmVjb3JkZWQgZm9yIGFueSBidWlsZCBmbGFnIHNldCBvciBtb2RpZmllZC4KKworPWN1dAorCitzdWIgdXBkYXRlX2Zyb21fY29uZmZpbGUgeworICAgIG15ICgkc2VsZiwgJGZpbGUsICRzcmMpID0gQF87CisgICAgcmV0dXJuIHVubGVzcyAtZSAkZmlsZTsKKyAgICBvcGVuKENORiwgIjwiLCAkZmlsZSkgb3Igc3lzZXJyKF9nKCJjYW5ub3QgcmVhZCAlcyIpLCAkZmlsZSk7CisgICAgd2hpbGUoPENORj4pIHsKKyAgICAgICAgY2hvbXA7CisgICAgICAgIG5leHQgaWYgL15ccyojLzsgIyBTa2lwIGNvbW1lbnRzCisgICAgICAgIG5leHQgaWYgL15ccyokLzsgIyBTa2lwIGVtcHR5IGxpbmVzCisgICAgICAgIGlmICgvXihhcHBlbmR8cHJlcGVuZHxzZXR8c3RyaXApXHMrKFxTKylccysoXFMuKlxTKVxzKiQvaSkgeworICAgICAgICAgICAgbXkgKCRvcCwgJGZsYWcsICR2YWx1ZSkgPSAoJDEsICQyLCAkMyk7CisgICAgICAgICAgICB1bmxlc3MgKGV4aXN0cyAkc2VsZi0+e2ZsYWdzfS0+eyRmbGFnfSkgeworICAgICAgICAgICAgICAgIHdhcm5pbmcoX2coImxpbmUgJWQgb2YgJXMgbWVudGlvbnMgdW5rbm93biBmbGFnICVzIiksICQuLCAkZmlsZSwgJGZsYWcpOworICAgICAgICAgICAgICAgICRzZWxmLT57ZmxhZ3N9LT57JGZsYWd9ID0gIiI7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBpZiAobGMoJG9wKSBlcSAic2V0IikgeworICAgICAgICAgICAgICAgICRzZWxmLT5zZXQoJGZsYWcsICR2YWx1ZSwgJHNyYyk7CisgICAgICAgICAgICB9IGVsc2lmIChsYygkb3ApIGVxICJzdHJpcCIpIHsKKyAgICAgICAgICAgICAgICAkc2VsZi0+c3RyaXAoJGZsYWcsICR2YWx1ZSwgJHNyYyk7CisgICAgICAgICAgICB9IGVsc2lmIChsYygkb3ApIGVxICJhcHBlbmQiKSB7CisgICAgICAgICAgICAgICAgJHNlbGYtPmFwcGVuZCgkZmxhZywgJHZhbHVlLCAkc3JjKTsKKyAgICAgICAgICAgIH0gZWxzaWYgKGxjKCRvcCkgZXEgInByZXBlbmQiKSB7CisgICAgICAgICAgICAgICAgJHNlbGYtPnByZXBlbmQoJGZsYWcsICR2YWx1ZSwgJHNyYyk7CisgICAgICAgICAgICB9CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICB3YXJuaW5nKF9nKCJsaW5lICVkIG9mICVzIGlzIGludmFsaWQsIGl0IGhhcyBiZWVuIGlnbm9yZWQuIiksICQuLCAkZmlsZSk7CisgICAgICAgIH0KKyAgICB9CisgICAgY2xvc2UoQ05GKTsKK30KKworPWl0ZW0gJGJmLT5nZXQoJGZsYWcpCisKK1JldHVybiB0aGUgdmFsdWUgYXNzb2NpYXRlZCB0byB0aGUgZmxhZy4gSXQgbWlnaHQgYmUgdW5kZWYgaWYgdGhlCitmbGFnIGRvZXNuJ3QgZXhpc3QuCisKKz1jdXQKKworc3ViIGdldCB7CisgICAgbXkgKCRzZWxmLCAka2V5KSA9IEBfOworICAgIHJldHVybiAkc2VsZi0+eydmbGFncyd9eyRrZXl9OworfQorCis9aXRlbSAkYmYtPmdldF9vcmlnaW4oJGZsYWcpCisKK1JldHVybiB0aGUgb3JpZ2luIGFzc29jaWF0ZWQgdG8gdGhlIGZsYWcuIEl0IG1pZ2h0IGJlIHVuZGVmIGlmIHRoZQorZmxhZyBkb2Vzbid0IGV4aXN0LgorCis9Y3V0CisKK3N1YiBnZXRfb3JpZ2luIHsKKyAgICBteSAoJHNlbGYsICRrZXkpID0gQF87CisgICAgcmV0dXJuICRzZWxmLT57J29yaWdpbid9eyRrZXl9OworfQorCis9aXRlbSAkYmYtPmhhcygkb3B0aW9uKQorCitSZXR1cm5zIGEgYm9vbGVhbiBpbmRpY2F0aW5nIHdoZXRoZXIgdGhlIGZsYWdzIGV4aXN0cyBpbiB0aGUgb2JqZWN0LgorCis9Y3V0CisKK3N1YiBoYXMgeworICAgIG15ICgkc2VsZiwgJGtleSkgPSBAXzsKKyAgICByZXR1cm4gZXhpc3RzICRzZWxmLT57J2ZsYWdzJ317JGtleX07Cit9CisKKz1pdGVtIG15IEBmbGFncyA9ICRiZi0+bGlzdCgpCisKK1JldHVybnMgdGhlIGxpc3Qgb2YgZmxhZ3Mgc3RvcmVkIGluIHRoZSBvYmplY3QuCisKKz1jdXQKKworc3ViIGxpc3QgeworICAgIG15ICgkc2VsZikgPSBAXzsKKyAgICByZXR1cm4gc29ydCBrZXlzICV7JHNlbGYtPnsnZmxhZ3MnfX07Cit9CisKKz1iYWNrCisKKz1oZWFkMSBDSEFOR0VTCisKKz1oZWFkMiBWZXJzaW9uIDEuMDEKKworTmV3IG1ldGhvZDogJGJmLT5wcmVwZW5kKCkgdmVyeSBzaW1pbGFyIHRvIGFwcGVuZCgpLiBJbXBsZW1lbnQgc3VwcG9ydCBvZgordGhlIHByZXBlbmQgb3BlcmF0aW9uIGV2ZXJ5d2hlcmUuCisKK05ldyBtZXRob2Q6ICRiZi0+bG9hZF9tYWludGFpbmVyX2NvbmZpZygpIHRoYXQgdXBkYXRlIHRoZSBidWlsZCBmbGFncworYmFzZWQgb24gdGhlIHBhY2thZ2UgbWFpbnRhaW5lciBkaXJlY3RpdmVzLgorCis9aGVhZDEgQVVUSE9SCisKK1JhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworPWN1dAorCisxOwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL0Rwa2cvQnVpbGRPcHRpb25zLnBtIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL0Rwa2cvQnVpbGRPcHRpb25zLnBtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjFhY2NkZWMKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvRHBrZy9CdWlsZE9wdGlvbnMucG0KQEAgLTAsMCArMSwyMDMgQEAKKyMgQ29weXJpZ2h0IMKpIDIwMDcgRnJhbmsgTGljaHRlbmhlbGQgPGRqcGlnQGRlYmlhbi5vcmc+CisjIENvcHlyaWdodCDCqSAyMDEwIFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KKyMKKyMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyMKKyMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisjIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisjIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyMKKyMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisKK3BhY2thZ2UgRHBrZzo6QnVpbGRPcHRpb25zOworCit1c2Ugc3RyaWN0OwordXNlIHdhcm5pbmdzOworCitvdXIgJFZFUlNJT04gPSAiMS4wMSI7CisKK3VzZSBEcGtnOjpHZXR0ZXh0OwordXNlIERwa2c6OkVycm9ySGFuZGxpbmc7CisKKz1lbmNvZGluZyB1dGY4CisKKz1oZWFkMSBOQU1FCisKK0Rwa2c6OkJ1aWxkT3B0aW9ucyAtIHBhcnNlIGFuZCB1cGRhdGUgYnVpbGQgb3B0aW9ucworCis9aGVhZDEgREVTQ1JJUFRJT04KKworVGhlIERwa2c6OkJ1aWxkT3B0aW9ucyBvYmplY3QgY2FuIGJlIHVzZWQgdG8gbWFuaXB1bGF0ZSBvcHRpb25zIHN0b3JlZAoraW4gZW52aXJvbm1lbnQgdmFyaWFibGVzIGxpa2UgREVCX0JVSUxEX09QVElPTlMgYW5kCitERUJfQlVJTERfTUFJTlRfT1BUSU9OUy4KKworPWhlYWQxIEZVTkNUSU9OUworCis9b3ZlciA0CisKKz1pdGVtIG15ICRibyA9IERwa2c6OkJ1aWxkT3B0aW9ucy0+bmV3KCVvcHRzKQorCitDcmVhdGUgYSBuZXcgRHBrZzo6QnVpbGRPcHRpb25zIG9iamVjdC4gSXQgd2lsbCBiZSBpbml0aWFsaXplZCBiYXNlZAorb24gdGhlIHZhbHVlIG9mIHRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZSBuYW1lZCAkb3B0c3snZW52dmFyJ30gKG9yCitERUJfQlVJTERfT1BUSU9OUyBpZiB0aGF0IG9wdGlvbiBpcyBub3Qgc2V0KS4KKworPWN1dAorCitzdWIgbmV3IHsKKyAgICBteSAoJHRoaXMsICVvcHRzKSA9IEBfOworICAgIG15ICRjbGFzcyA9IHJlZigkdGhpcykgfHwgJHRoaXM7CisKKyAgICBteSAkc2VsZiA9IHsKKyAgICAgICAgb3B0aW9ucyA9PiB7fSwKKwlzb3VyY2UgPT4ge30sCisJZW52dmFyID0+ICRvcHRzeydlbnZ2YXInfSAvLyAiREVCX0JVSUxEX09QVElPTlMiLAorICAgIH07CisgICAgYmxlc3MgJHNlbGYsICRjbGFzczsKKyAgICAkc2VsZi0+bWVyZ2UoJEVOVnskc2VsZi0+eydlbnZ2YXInfX0sICRzZWxmLT57J2VudnZhcid9KTsKKyAgICByZXR1cm4gJHNlbGY7Cit9CisKKz1pdGVtICRiby0+cmVzZXQoKQorCitSZXNldCB0aGUgb2JqZWN0IHRvIG5vdCBoYXZlIGFueSBvcHRpb24gKGl0J3MgZW1wdHkpLgorCis9Y3V0CisKK3N1YiByZXNldCB7CisgICAgbXkgKCRzZWxmKSA9IEBfOworICAgICRzZWxmLT57J29wdGlvbnMnfSA9IHt9OworICAgICRzZWxmLT57J3NvdXJjZSd9ID0ge307Cit9CisKKz1pdGVtICRiby0+bWVyZ2UoJGNvbnRlbnQsICRzb3VyY2UpCisKK01lcmdlIHRoZSBvcHRpb25zIHNldCBpbiAkY29udGVudCBhbmQgcmVjb3JkIHRoYXQgdGhleSBjb21lIGZyb20gdGhlCitzb3VyY2UgJHNvdXJjZS4gJHNvdXJjZSBpcyBtYWlubHkgdXNlZCBpbiB3YXJuaW5nIG1lc3NhZ2VzIGN1cnJlbnRseQordG8gaW5kaWNhdGUgd2hlcmUgaW52YWxpZCBvcHRpb25zIGhhdmUgYmVlbiBkZXRlY3RlZC4KKworJGNvbnRlbnQgaXMgYSBzcGFjZSBzZXBhcmF0ZWQgbGlzdCBvZiBvcHRpb25zIHdpdGggb3B0aW9uYWwgYXNzaWduZWQKK3ZhbHVlcyBsaWtlICJub2NoZWNrIHBhcmFsbGVsPTIiLgorCis9Y3V0CisKK3N1YiBtZXJnZSB7CisgICAgbXkgKCRzZWxmLCAkY29udGVudCwgJHNvdXJjZSkgPSBAXzsKKyAgICByZXR1cm4gMCB1bmxlc3MgZGVmaW5lZCAkY29udGVudDsKKyAgICBteSAkY291bnQgPSAwOworICAgIGZvcmVhY2ggKHNwbGl0KC9ccysvLCAkY29udGVudCkpIHsKKwl1bmxlc3MgKC9eKFthLXpdW2EtejAtOV8tXSopKD86PShcUyopKT8kLykgeworICAgICAgICAgICAgd2FybmluZyhfZygiaW52YWxpZCBmbGFnIGluICVzOiAlcyIpLCAkc291cmNlLCAkXyk7CisgICAgICAgICAgICBuZXh0OworICAgICAgICB9CisJJGNvdW50ICs9ICRzZWxmLT5zZXQoJDEsICQyLCAkc291cmNlKTsKKyAgICB9CisgICAgcmV0dXJuICRjb3VudDsKK30KKworPWl0ZW0gJGJvLT5zZXQoJG9wdGlvbiwgJHZhbHVlLCBbJHNvdXJjZV0pCisKK1N0b3JlIHRoZSBnaXZlbiBvcHRpb24gaW4gdGhlIG9iamV0IHdpdGggdGhlIGdpdmVuIHZhbHVlLiBJdCdzIGxlZ2l0aW1hdGUKK2ZvciBhIHZhbHVlIHRvIGJlIHVuZGVmaW5lZCBpZiB0aGUgb3B0aW9uIGlzIGEgc2ltcGxlIGJvb2xlYW4gKGl0cworcHJlc2VuY2UgbWVhbnMgdHJ1ZSwgaXRzIGFic2VuY2UgbWVhbnMgZmFsc2UpLiBUaGUgJHNvdXJjZSBpcyBvcHRpb25hbAorYW5kIGluZGljYXRlcyB3aGVyZSB0aGUgb3B0aW9uIGNvbWVzIGZyb20uCisKK1RoZSBrbm93biBvcHRpb25zIGhhdmUgdGhlaXIgdmFsdWVzIGNoZWNrZWQgZm9yIHNhbml0eS4gT3B0aW9ucyB3aXRob3V0Cit2YWx1ZXMgaGF2ZSB0aGVpciB2YWx1ZSByZW1vdmVkIGFuZCBvcHRpb25zIHdpdGggaW52YWxpZCB2YWx1ZXMgYXJlCitkaXNjYXJkZWQuCisKKz1jdXQKKworc3ViIHNldCB7CisgICAgbXkgKCRzZWxmLCAka2V5LCAkdmFsdWUsICRzb3VyY2UpID0gQF87CisKKyAgICAjIFNhbml0eSBjaGVja3MKKyAgICBpZiAoJGtleSA9fiAvXihub29wdHxub3N0cmlwfG5vY2hlY2spJC8gJiYgZGVmaW5lZCgkdmFsdWUpKSB7CisJJHZhbHVlID0gdW5kZWY7CisgICAgfSBlbHNpZiAoJGtleSBlcSAncGFyYWxsZWwnKSAgeworCSR2YWx1ZSA9ICIiIGlmIG5vdCBkZWZpbmVkKCR2YWx1ZSk7CisJcmV0dXJuIDAgaWYgJHZhbHVlICF+IC9eXGQqJC87CisgICAgfQorCisgICAgJHNlbGYtPnsnb3B0aW9ucyd9eyRrZXl9ID0gJHZhbHVlOworICAgICRzZWxmLT57J3NvdXJjZSd9eyRrZXl9ID0gJHNvdXJjZTsKKworICAgIHJldHVybiAxOworfQorCis9aXRlbSAkYm8tPmdldCgkb3B0aW9uKQorCitSZXR1cm4gdGhlIHZhbHVlIGFzc29jaWF0ZWQgdG8gdGhlIG9wdGlvbi4gSXQgbWlnaHQgYmUgdW5kZWYgZXZlbiBpZiB0aGUKK29wdGlvbiBleGlzdHMuIFlvdSBtaWdodCB3YW50IHRvIGNoZWNrIHdpdGggJGJvLT5oYXMoJG9wdGlvbikgdG8gdmVyaWZ5IGlmCit0aGUgb3B0aW9uIGlzIHN0b3JlZCBpbiB0aGUgb2JqZWN0LgorCis9Y3V0CisKK3N1YiBnZXQgeworICAgIG15ICgkc2VsZiwgJGtleSkgPSBAXzsKKyAgICByZXR1cm4gJHNlbGYtPnsnb3B0aW9ucyd9eyRrZXl9OworfQorCis9aXRlbSAkYm8tPmhhcygkb3B0aW9uKQorCitSZXR1cm5zIGEgYm9vbGVhbiBpbmRpY2F0aW5nIHdoZXRoZXIgdGhlIG9wdGlvbiBpcyBzdG9yZWQgaW4gdGhlIG9iamVjdC4KKworPWN1dAorCitzdWIgaGFzIHsKKyAgICBteSAoJHNlbGYsICRrZXkpID0gQF87CisgICAgcmV0dXJuIGV4aXN0cyAkc2VsZi0+eydvcHRpb25zJ317JGtleX07Cit9CisKKz1pdGVtICRzdHJpbmcgPSAkYm8tPm91dHB1dCgkZmgpCisKK1JldHVybiBhIHN0cmluZyByZXByZXNlbnRhdGlvbiBvZiB0aGUgYnVpbGQgb3B0aW9ucyBzdWl0YWJsZSB0byBiZQorYXNzaWduZWQgdG8gYW4gZW52aXJvbm1lbnQgdmFyaWFibGUuIENhbiBvcHRpb25uYWx5IG91dHB1dCB0aGF0IHN0cmluZyB0bwordGhlIGdpdmVuIGZpbGVoYW5kbGUuCisKKz1jdXQKKworc3ViIG91dHB1dCB7CisgICAgbXkgKCRzZWxmLCAkZmgpID0gQF87CisgICAgbXkgJG8gPSAkc2VsZi0+eydvcHRpb25zJ307CisgICAgbXkgJHJlcyA9IGpvaW4oIiAiLCBtYXAgeyBkZWZpbmVkKCRvLT57JF99KSA/ICRfIC4gIj0iIC4gJG8tPnskX30gOiAkXyB9IHNvcnQga2V5cyAlJG8pOworICAgIHByaW50ICRmaCAkcmVzIGlmIGRlZmluZWQgJGZoOworICAgIHJldHVybiAkcmVzOworfQorCis9aXRlbSAkYm8tPmV4cG9ydChbJHZhcl0pCisKK0V4cG9ydCB0aGUgYnVpbGQgb3B0aW9ucyB0byB0aGUgZ2l2ZW4gZW52aXJvbm1lbnQgdmFyaWFibGUuIElmIG9taXR0ZWQsCit0aGUgZW52aXJvbm1lbnQgdmFyaWFibGUgZGVmaW5lZCBhdCBjcmVhdGlvbiB0aW1lIGlzIGFzc3VtZWQuIFRoZSB2YWx1ZQorc2V0IHRvIHRoZSB2YXJpYWJsZSBpcyBhbHNvIHJldHVybmVkLgorCis9Y3V0CisKK3N1YiBleHBvcnQgeworICAgIG15ICgkc2VsZiwgJHZhcikgPSBAXzsKKyAgICAkdmFyID0gJHNlbGYtPnsnZW52dmFyJ30gdW5sZXNzIGRlZmluZWQgJHZhcjsKKyAgICBteSAkY29udGVudCA9ICRzZWxmLT5vdXRwdXQoKTsKKyAgICAkRU5WeyR2YXJ9ID0gJGNvbnRlbnQ7CisgICAgcmV0dXJuICRjb250ZW50OworfQorCis9YmFjaworCis9aGVhZDEgQ0hBTkdFUworCis9aGVhZDIgVmVyc2lvbiAxLjAxCisKK0VuYWJsZSB0byB1c2UgYW5vdGhlciBlbnZpcm9ubWVudCB2YXJpYWJsZSBpbnN0ZWFkIG9mIERFQl9CVUlMRF9PUFRJT05TLgorVGh1cyBhZGQgc3VwcG9ydCBmb3IgdGhlICJlbnZ2YXIiIG9wdGlvbiBhdCBjcmVhdGlvbiB0aW1lLgorCis9aGVhZDEgQVVUSE9SCisKK1JhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworPWN1dAorCisxOwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQyZjg3N2QKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG0KQEAgLTAsMCArMSw2OTUgQEAKKyMgQ29weXJpZ2h0IMKpIDIwMDUsIDIwMDcgRnJhbmsgTGljaHRlbmhlbGQgPGZyYW5rQGxpY2h0ZW5oZWxkLmRlPgorIyBDb3B5cmlnaHQgwqkgMjAwOSAgICAgICBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisjCisjIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisjIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisjIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisjIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisjCisjIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisjIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisjCisjIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisjIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorCis9ZW5jb2RpbmcgdXRmOAorCis9aGVhZDEgTkFNRQorCitEcGtnOjpDaGFuZ2Vsb2cgLSBiYXNlIGNsYXNzIHRvIGltcGxlbWVudCBhIGNoYW5nZWxvZyBwYXJzZXIKKworPWhlYWQxIERFU0NSSVBUSU9OCisKK0Rwa2c6OkNoYW5nZWxvZyBpcyBhIGNsYXNzIHJlcHJlc2VudGluZyBhIGNoYW5nZWxvZyBmaWxlCithcyBhbiBhcnJheSBvZiBjaGFuZ2Vsb2cgZW50cmllcyAoRHBrZzo6Q2hhbmdlbG9nOjpFbnRyeSkuCitCeSBkZXJpdmluZyB0aGlzIG9iamVjdCBhbmQgaW1wbGVtZW50aW5nIGl0cyBwYXJzZSBtZXRob2QsIHlvdQorYWRkIHRoZSBhYmlsaXR5IHRvIGZpbGwgdGhpcyBvYmplY3Qgd2l0aCBjaGFuZ2Vsb2cgZW50cmllcy4KKworPWhlYWQyIEZVTkNUSU9OUworCis9Y3V0CisKK3BhY2thZ2UgRHBrZzo6Q2hhbmdlbG9nOworCit1c2Ugc3RyaWN0OwordXNlIHdhcm5pbmdzOworCitvdXIgJFZFUlNJT04gPSAiMS4wMCI7CisKK3VzZSBEcGtnOwordXNlIERwa2c6OkdldHRleHQ7Cit1c2UgRHBrZzo6RXJyb3JIYW5kbGluZyBxdyg6REVGQVVMVCByZXBvcnQpOwordXNlIERwa2c6OkNvbnRyb2w7Cit1c2UgRHBrZzo6Q29udHJvbDo6Q2hhbmdlbG9nOwordXNlIERwa2c6OkNvbnRyb2w6OkZpZWxkczsKK3VzZSBEcGtnOjpJbmRleDsKK3VzZSBEcGtnOjpWZXJzaW9uOwordXNlIERwa2c6OlZlbmRvciBxdyhydW5fdmVuZG9yX2hvb2spOworCit1c2UgYmFzZSBxdyhEcGtnOjpJbnRlcmZhY2U6OlN0b3JhYmxlKTsKKwordXNlIG92ZXJsb2FkCisgICAgJ0B7fScgPT4gc3ViIHsgcmV0dXJuICRfWzBdLT57ZGF0YX0gfTsKKworPW92ZXIgNAorCis9aXRlbSBteSAkYyA9IERwa2c6OkNoYW5nZWxvZy0+bmV3KCVvcHRpb25zKQorCitDcmVhdGVzIGEgbmV3IGNoYW5nZWxvZyBvYmplY3QuCisKKz1jdXQKKworc3ViIG5ldyB7CisgICAgbXkgKCR0aGlzLCAlb3B0cykgPSBAXzsKKyAgICBteSAkY2xhc3MgPSByZWYoJHRoaXMpIHx8ICR0aGlzOworICAgIG15ICRzZWxmID0geworCXZlcmJvc2UgPT4gMSwKKwlwYXJzZV9lcnJvcnMgPT4gW10KKyAgICB9OworICAgIGJsZXNzICRzZWxmLCAkY2xhc3M7CisgICAgJHNlbGYtPnNldF9vcHRpb25zKCVvcHRzKTsKKyAgICByZXR1cm4gJHNlbGY7Cit9CisKKz1pdGVtICRjLT5sb2FkKCRmaWxlbmFtZSkKKworUGFyc2UgJGZpbGVuYW1lIGFzIGEgY2hhbmdlbG9nLgorCis9Y3V0CisKKz1pdGVtICRjLT5zZXRfb3B0aW9ucyglb3B0cykKKworQ2hhbmdlIHRoZSB2YWx1ZSBvZiBzb21lIG9wdGlvbnMuICJ2ZXJib3NlIiAoZGVmYXVsdHMgdG8gMSkgZGVmaW5lcword2hldGhlciBwYXJzZSBlcnJvcnMgYXJlIGRpc3BsYXllZCBhcyB3YXJuaW5ncyBieSBkZWZhdWx0LiAicmVwb3J0ZmlsZSIKK2lzIGEgc3RyaW5nIHRvIHVzZSBpbnN0ZWFkIG9mIHRoZSBuYW1lIG9mIHRoZSBmaWxlIHBhcnNlZCwgaW4gcGFydGljdWxhcgoraW4gZXJyb3IgbWVzc2FnZXMuICJyYW5nZSIgZGVmaW5lcyB0aGUgcmFuZ2Ugb2YgZW50cmllcyB0aGF0IHdlIHdhbnQgdG8KK3BhcnNlLCB0aGUgcGFyc2VyIHdpbGwgc3RvcCBhcyBzb29uIGFzIGl0IGhhcyBwYXJzZWQgZW5vdWdoIGRhdGEgdG8KK3NhdGlzZnkgJGMtPmdldF9yYW5nZSgkb3B0c3sncmFuZ2UnfSkuCisKKz1jdXQKKworc3ViIHNldF9vcHRpb25zIHsKKyAgICBteSAoJHNlbGYsICVvcHRzKSA9IEBfOworICAgICRzZWxmLT57JF99ID0gJG9wdHN7JF99IGZvcmVhY2gga2V5cyAlb3B0czsKK30KKworPWl0ZW0gJGMtPnJlc2V0X3BhcnNlX2Vycm9ycygpCisKK0NhbiBiZSB1c2VkIHRvIGRlbGV0ZSBhbGwgaW5mb3JtYXRpb24gYWJvdXQgZXJyb3JzIG9jY3VycmVkIGR1cmluZworcHJldmlvdXMgTDxwYXJzZT4gcnVucy4KKworPWN1dAorCitzdWIgcmVzZXRfcGFyc2VfZXJyb3JzIHsKKyAgICBteSAoJHNlbGYpID0gQF87CisgICAgJHNlbGYtPntwYXJzZV9lcnJvcnN9ID0gW107Cit9CisKKz1pdGVtICRjLT5wYXJzZV9lcnJvcigkbGluZV9uciwgJGVycm9yLCBbJGxpbmVdKQorCitSZWNvcmQgYSBuZXcgcGFyc2UgZXJyb3IgYXQgbGluZSAkbGluZV9uci4gVGhlIGVycm9yIG1lc3NhZ2UgaXMgc3BlY2lmaWVkCit3aXRoICRlcnJvciBhbmQgYSBjb3B5IG9mIHRoZSBsaW5lIGNhbiBiZSByZWNvcmRlZCBpbiAkbGluZS4KKworPWN1dAorCitzdWIgcGFyc2VfZXJyb3IgeworICAgIG15ICgkc2VsZiwgJGZpbGUsICRsaW5lX25yLCAkZXJyb3IsICRsaW5lKSA9IEBfOworICAgIHNoaWZ0OworCisgICAgcHVzaCBAeyRzZWxmLT57cGFyc2VfZXJyb3JzfX0sIFsgQF8gXTsKKworICAgIGlmICgkc2VsZi0+e3ZlcmJvc2V9KSB7CisJaWYgKCRsaW5lKSB7CisJICAgIHdhcm5pbmcoIiUyMHMobCRsaW5lX25yKTogJGVycm9yXG5MSU5FOiAkbGluZSIsICRmaWxlKTsKKwl9IGVsc2UgeworCSAgICB3YXJuaW5nKCIlMjBzKGwkbGluZV9ucik6ICRlcnJvciIsICRmaWxlKTsKKwl9CisgICAgfQorfQorCis9aXRlbSAkYy0+Z2V0X3BhcnNlX2Vycm9ycygpCisKK1JldHVybnMgYWxsIGVycm9yIG1lc3NhZ2VzIGZyb20gdGhlIGxhc3QgTDxwYXJzZT4gcnVuLgorSWYgY2FsbGVkIGluIHNjYWxhciBjb250ZXh0IHJldHVybnMgYSBodW1hbiByZWFkYWJsZQorc3RyaW5nIHJlcHJlc2VudGF0aW9uLiBJZiBjYWxsZWQgaW4gbGlzdCBjb250ZXh0IHJldHVybnMKK2FuIGFycmF5IG9mIGFycmF5cy4gRWFjaCBvZiB0aGVzZSBhcnJheXMgY29udGFpbnMKKworPW92ZXIgNAorCis9aXRlbSAxLgorCithIHN0cmluZyBkZXNjcmliaW5nIHRoZSBvcmlnaW4gb2YgdGhlIGRhdGEgKGEgZmlsZW5hbWUgdXN1YWxseSkuIElmIHRoZQorcmVwb3J0ZmlsZSBjb25maWd1cmF0aW9uIG9wdGlvbiB3YXMgZ2l2ZW4sIGl0cyB2YWx1ZSB3aWxsIGJlIHVzZWQgaW5zdGVhZC4KKworPWl0ZW0gMi4KKwordGhlIGxpbmUgbnVtYmVyIHdoZXJlIHRoZSBlcnJvciBvY2N1cnJlZAorCis9aXRlbSAzLgorCithbiBlcnJvciBkZXNjcmlwdGlvbgorCis9aXRlbSA0LgorCit0aGUgb3JpZ2luYWwgbGluZQorCis9YmFjaworCis9Y3V0CisKK3N1YiBnZXRfcGFyc2VfZXJyb3JzIHsKKyAgICBteSAoJHNlbGYpID0gQF87CisKKyAgICBpZiAod2FudGFycmF5KSB7CisJcmV0dXJuIEB7JHNlbGYtPntwYXJzZV9lcnJvcnN9fTsKKyAgICB9IGVsc2UgeworCW15ICRyZXMgPSAiIjsKKwlmb3JlYWNoIG15ICRlIChAeyRzZWxmLT57cGFyc2VfZXJyb3JzfX0pIHsKKwkgICAgaWYgKCRlLT5bM10pIHsKKwkJJHJlcyAuPSByZXBvcnQoX2coJ3dhcm5pbmcnKSxfZygiJXMobCVzKTogJXNcbkxJTkU6ICVzIiksIEAkZSApOworCSAgICB9IGVsc2UgeworCQkkcmVzIC49IHJlcG9ydChfZygnd2FybmluZycpLF9nKCIlcyhsJXMpOiAlcyIpLCBAJGUgKTsKKwkgICAgfQorCX0KKwlyZXR1cm4gJHJlczsKKyAgICB9Cit9CisKKz1pdGVtICRjLT5zZXRfdW5wYXJzZWRfdGFpbCgkdGFpbCkKKworQWRkIGEgc3RyaW5nIHJlcHJlc2VudGluZyB1bnBhcnNlZCBsaW5lcyBhZnRlciB0aGUgY2hhbmdlbG9nIGVudHJpZXMuCitVc2UgdW5kZWYgYXMgJHRhaWwgdG8gcmVtb3ZlIHRoZSB1bnBhcnNlZCBsaW5lcyBjdXJyZW50bHkgc2V0LgorCis9aXRlbSAkYy0+Z2V0X3VucGFyc2VkX3RhaWwoKQorCitSZXR1cm4gYSBzdHJpbmcgcmVwcmVzZW50aW5nIHRoZSB1bnBhcnNlZCBsaW5lcyBhZnRlciB0aGUgY2hhbmdlbG9nCitlbnRyaWVzLiBSZXR1cm5zIHVuZGVmIGlmIHRoZXJlJ3Mgbm8gc3VjaCB0aGluZy4KKworPWN1dAorCitzdWIgc2V0X3VucGFyc2VkX3RhaWwgeworICAgIG15ICgkc2VsZiwgJHRhaWwpID0gQF87CisgICAgJHNlbGYtPnsndW5wYXJzZWRfdGFpbCd9ID0gJHRhaWw7Cit9CisKK3N1YiBnZXRfdW5wYXJzZWRfdGFpbCB7CisgICAgbXkgKCRzZWxmKSA9IEBfOworICAgIHJldHVybiAkc2VsZi0+eyd1bnBhcnNlZF90YWlsJ307Cit9CisKKz1pdGVtIEB7JGN9CisKK1JldHVybnMgYWxsIHRoZSBEcGtnOjpDaGFuZ2Vsb2c6OkVudHJ5IG9iamVjdHMgY29udGFpbmVkIGluIHRoaXMgY2hhbmdlbG9nCitpbiB0aGUgb3JkZXIgaW4gd2hpY2ggdGhleSBoYXZlIGJlZW4gcGFyc2VkLgorCis9aXRlbSAkYy0+Z2V0X3JhbmdlKCRyYW5nZSkKKworUmV0dXJucyBhbiBhcnJheSAoaWYgY2FsbGVkIGluIGxpc3QgY29udGV4dCkgb3IgYSByZWZlcmVuY2UgdG8gYW4gYXJyYXkgb2YKK0Rwa2c6OkNoYW5nZWxvZzo6RW50cnkgb2JqZWN0cyB3aGljaCBlYWNoIHJlcHJlc2VudCBvbmUgZW50cnkgb2YgdGhlCitjaGFuZ2Vsb2cuICRyYW5nZSBpcyBhIGhhc2ggcmVmZXJlbmNlIGRlc2NyaWJpbmcgdGhlIHJhbmdlIG9mIGVudHJpZXMKK3RvIHJldHVybi4gU2VlIHNlY3Rpb24gTDwiUkFOR0UgU0VMRUNUSU9OIj4uCisKKz1jdXQKKworc3ViIF9fc2FuaXR5X2NoZWNrX3JhbmdlIHsKKyAgICBteSAoJHNlbGYsICRyKSA9IEBfOworICAgIG15ICRkYXRhID0gJHNlbGYtPntkYXRhfTsKKworICAgIGlmIChkZWZpbmVkKCRyLT57b2Zmc2V0fSkgYW5kIG5vdCBkZWZpbmVkKCRyLT57Y291bnR9KSkgeworCXdhcm5pbmcoX2coIidvZmZzZXQnIHdpdGhvdXQgJ2NvdW50JyBoYXMgbm8gZWZmZWN0IikpIGlmICRzZWxmLT57dmVyYm9zZX07CisJZGVsZXRlICRyLT57b2Zmc2V0fTsKKyAgICB9CisKKyAgICBpZiAoKGRlZmluZWQoJHItPntjb3VudH0pIHx8IGRlZmluZWQoJHItPntvZmZzZXR9KSkgJiYKKyAgICAgICAgKGRlZmluZWQoJHItPntmcm9tfSkgfHwgZGVmaW5lZCgkci0+e3NpbmNlfSkgfHwKKwkgZGVmaW5lZCgkci0+e3RvfSkgfHwgZGVmaW5lZCgkci0+eyd1bnRpbCd9KSkpCisgICAgeworCXdhcm5pbmcoX2coInlvdSBjYW4ndCBjb21iaW5lICdjb3VudCcgb3IgJ29mZnNldCcgd2l0aCBhbnkgb3RoZXIgIiAuCisJCSAgICJyYW5nZSBvcHRpb24iKSkgaWYgJHNlbGYtPnt2ZXJib3NlfTsKKwlkZWxldGUgJHItPntmcm9tfTsKKwlkZWxldGUgJHItPntzaW5jZX07CisJZGVsZXRlICRyLT57dG99OworCWRlbGV0ZSAkci0+eyd1bnRpbCd9OworICAgIH0KKyAgICBpZiAoZGVmaW5lZCgkci0+e2Zyb219KSAmJiBkZWZpbmVkKCRyLT57c2luY2V9KSkgeworCXdhcm5pbmcoX2coInlvdSBjYW4gb25seSBzcGVjaWZ5IG9uZSBvZiAnZnJvbScgYW5kICdzaW5jZScsIHVzaW5nICIgLgorCQkgICAiJ3NpbmNlJyIpKSBpZiAkc2VsZi0+e3ZlcmJvc2V9OworCWRlbGV0ZSAkci0+e2Zyb219OworICAgIH0KKyAgICBpZiAoZGVmaW5lZCgkci0+e3RvfSkgJiYgZGVmaW5lZCgkci0+eyd1bnRpbCd9KSkgeworCXdhcm5pbmcoX2coInlvdSBjYW4gb25seSBzcGVjaWZ5IG9uZSBvZiAndG8nIGFuZCAndW50aWwnLCB1c2luZyAiIC4KKwkJICAgIid1bnRpbCciKSkgaWYgJHNlbGYtPnt2ZXJib3NlfTsKKwlkZWxldGUgJHItPnt0b307CisgICAgfQorCisgICAgIyBIYW5kbGUgbm9uLWV4aXN0aW5nIHZlcnNpb25zCisgICAgbXkgKCV2ZXJzaW9ucywgQHZlcnNpb25zKTsKKyAgICBmb3JlYWNoIG15ICRlbnRyeSAoQHskZGF0YX0pIHsKKyAgICAgICAgJHZlcnNpb25zeyRlbnRyeS0+Z2V0X3ZlcnNpb24oKS0+YXNfc3RyaW5nKCl9ID0gMTsKKyAgICAgICAgcHVzaCBAdmVyc2lvbnMsICRlbnRyeS0+Z2V0X3ZlcnNpb24oKS0+YXNfc3RyaW5nKCk7CisgICAgfQorICAgIGlmICgoZGVmaW5lZCgkci0+e3NpbmNlfSkgYW5kIG5vdCBleGlzdHMgJHZlcnNpb25zeyRyLT57c2luY2V9fSkpIHsKKyAgICAgICAgd2FybmluZyhfZygiJyVzJyBvcHRpb24gc3BlY2lmaWVzIG5vbi1leGlzdGluZyB2ZXJzaW9uIiksICJzaW5jZSIpOworICAgICAgICB3YXJuaW5nKF9nKCJ1c2UgbmV3ZXN0IGVudHJ5IHRoYXQgaXMgZWFybGllciB0aGFuIHRoZSBvbmUgc3BlY2lmaWVkIikpOworICAgICAgICBmb3JlYWNoIG15ICR2IChAdmVyc2lvbnMpIHsKKyAgICAgICAgICAgIGlmICh2ZXJzaW9uX2NvbXBhcmVfcmVsYXRpb24oJHYsIFJFTF9MVCwgJHItPntzaW5jZX0pKSB7CisgICAgICAgICAgICAgICAgJHItPntzaW5jZX0gPSAkdjsKKyAgICAgICAgICAgICAgICBsYXN0OworICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgICAgIGlmIChub3QgZXhpc3RzICR2ZXJzaW9uc3skci0+e3NpbmNlfX0pIHsKKyAgICAgICAgICAgICMgTm8gdmVyc2lvbiB3YXMgZWFybGllciwgaW5jbHVkZSBhbGwKKyAgICAgICAgICAgIHdhcm5pbmcoX2coIm5vbmUgZm91bmQsIHN0YXJ0aW5nIGZyb20gdGhlIG9sZGVzdCBlbnRyeSIpKTsKKyAgICAgICAgICAgIGRlbGV0ZSAkci0+e3NpbmNlfTsKKyAgICAgICAgICAgICRyLT57ZnJvbX0gPSAkdmVyc2lvbnNbLTFdOworICAgICAgICB9CisgICAgfQorICAgIGlmICgoZGVmaW5lZCgkci0+e2Zyb219KSBhbmQgbm90IGV4aXN0cyAkdmVyc2lvbnN7JHItPntmcm9tfX0pKSB7CisgICAgICAgIHdhcm5pbmcoX2coIiclcycgb3B0aW9uIHNwZWNpZmllcyBub24tZXhpc3RpbmcgdmVyc2lvbiIpLCAiZnJvbSIpOworICAgICAgICB3YXJuaW5nKF9nKCJ1c2Ugb2xkZXN0IGVudHJ5IHRoYXQgaXMgbGF0ZXIgdGhhbiB0aGUgb25lIHNwZWNpZmllZCIpKTsKKyAgICAgICAgbXkgJG9sZGVzdDsKKyAgICAgICAgZm9yZWFjaCBteSAkdiAoQHZlcnNpb25zKSB7CisgICAgICAgICAgICBpZiAodmVyc2lvbl9jb21wYXJlX3JlbGF0aW9uKCR2LCBSRUxfR1QsICRyLT57ZnJvbX0pKSB7CisgICAgICAgICAgICAgICAgJG9sZGVzdCA9ICR2OworICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgICAgIGlmIChkZWZpbmVkKCRvbGRlc3QpKSB7CisgICAgICAgICAgICAkci0+e2Zyb219ID0gJG9sZGVzdDsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIHdhcm5pbmcoX2coIm5vIHN1Y2ggZW50cnkgZm91bmQsIGlnbm9yaW5nICclcycgcGFyYW1ldGVyIiksICJmcm9tIik7CisgICAgICAgICAgICBkZWxldGUgJHItPntmcm9tfTsgIyBObyB2ZXJzaW9uIHdhcyBvbGRlc3QKKyAgICAgICAgfQorICAgIH0KKyAgICBpZiAoZGVmaW5lZCgkci0+eyd1bnRpbCd9KSBhbmQgbm90IGV4aXN0cyAkdmVyc2lvbnN7JHItPnsndW50aWwnfX0pIHsKKyAgICAgICAgd2FybmluZyhfZygiJyVzJyBvcHRpb24gc3BlY2lmaWVzIG5vbi1leGlzdGluZyB2ZXJzaW9uIiksICJ1bnRpbCIpOworICAgICAgICB3YXJuaW5nKF9nKCJ1c2Ugb2xkZXN0IGVudHJ5IHRoYXQgaXMgbGF0ZXIgdGhhbiB0aGUgb25lIHNwZWNpZmllZCIpKTsKKyAgICAgICAgbXkgJG9sZGVzdDsKKyAgICAgICAgZm9yZWFjaCBteSAkdiAoQHZlcnNpb25zKSB7CisgICAgICAgICAgICBpZiAodmVyc2lvbl9jb21wYXJlX3JlbGF0aW9uKCR2LCBSRUxfR1QsICRyLT57J3VudGlsJ30pKSB7CisgICAgICAgICAgICAgICAgJG9sZGVzdCA9ICR2OworICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgICAgIGlmIChkZWZpbmVkKCRvbGRlc3QpKSB7CisgICAgICAgICAgICAkci0+eyd1bnRpbCd9ID0gJG9sZGVzdDsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIHdhcm5pbmcoX2coIm5vIHN1Y2ggZW50cnkgZm91bmQsIGlnbm9yaW5nICclcycgcGFyYW1ldGVyIiksICJ1bnRpbCIpOworICAgICAgICAgICAgZGVsZXRlICRyLT57J3VudGlsJ307ICMgTm8gdmVyc2lvbiB3YXMgb2xkZXN0CisgICAgICAgIH0KKyAgICB9CisgICAgaWYgKGRlZmluZWQoJHItPnt0b30pIGFuZCBub3QgZXhpc3RzICR2ZXJzaW9uc3skci0+e3RvfX0pIHsKKyAgICAgICAgd2FybmluZyhfZygiJyVzJyBvcHRpb24gc3BlY2lmaWVzIG5vbi1leGlzdGluZyB2ZXJzaW9uIiksICJ0byIpOworICAgICAgICB3YXJuaW5nKF9nKCJ1c2UgbmV3ZXN0IGVudHJ5IHRoYXQgaXMgZWFybGllciB0aGFuIHRoZSBvbmUgc3BlY2lmaWVkIikpOworICAgICAgICBmb3JlYWNoIG15ICR2IChAdmVyc2lvbnMpIHsKKyAgICAgICAgICAgIGlmICh2ZXJzaW9uX2NvbXBhcmVfcmVsYXRpb24oJHYsIFJFTF9MVCwgJHItPnt0b30pKSB7CisgICAgICAgICAgICAgICAgJHItPnt0b30gPSAkdjsKKyAgICAgICAgICAgICAgICBsYXN0OworICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgICAgIGlmIChub3QgZXhpc3RzICR2ZXJzaW9uc3skci0+e3RvfX0pIHsKKyAgICAgICAgICAgICMgTm8gdmVyc2lvbiB3YXMgZWFybGllcgorICAgICAgICAgICAgd2FybmluZyhfZygibm8gc3VjaCBlbnRyeSBmb3VuZCwgaWdub3JpbmcgJyVzJyBwYXJhbWV0ZXIiKSwgInRvIik7CisgICAgICAgICAgICBkZWxldGUgJHItPnt0b307CisgICAgICAgIH0KKyAgICB9CisKKyAgICBpZiAoZGVmaW5lZCgkci0+e3NpbmNlfSkgYW5kICRkYXRhLT5bMF0tPmdldF92ZXJzaW9uKCkgZXEgJHItPntzaW5jZX0pIHsKKwl3YXJuaW5nKF9nKCInc2luY2UnIG9wdGlvbiBzcGVjaWZpZXMgbW9zdCByZWNlbnQgdmVyc2lvbiwgaWdub3JpbmciKSk7CisJZGVsZXRlICRyLT57c2luY2V9OworICAgIH0KKyAgICBpZiAoZGVmaW5lZCgkci0+eyd1bnRpbCd9KSBhbmQgJGRhdGEtPlstMV0tPmdldF92ZXJzaW9uKCkgZXEgJHItPnsndW50aWwnfSkgeworCXdhcm5pbmcoX2coIid1bnRpbCcgb3B0aW9uIHNwZWNpZmllcyBvbGRlc3QgdmVyc2lvbiwgaWdub3JpbmciKSk7CisJZGVsZXRlICRyLT57J3VudGlsJ307CisgICAgfQorfQorCitzdWIgZ2V0X3JhbmdlIHsKKyAgICBteSAoJHNlbGYsICRyYW5nZSkgPSBAXzsKKyAgICAkcmFuZ2UgPSB7fSB1bmxlc3MgZGVmaW5lZCAkcmFuZ2U7CisgICAgbXkgJHJlcyA9ICRzZWxmLT5fZGF0YV9yYW5nZSgkcmFuZ2UpOworICAgIGlmIChkZWZpbmVkICRyZXMpIHsKKwlyZXR1cm4gQCRyZXMgaWYgd2FudGFycmF5OworCXJldHVybiAkcmVzOworICAgIH0gZWxzZSB7CisJcmV0dXJuICgpIGlmIHdhbnRhcnJheTsKKwlyZXR1cm4gdW5kZWY7CisgICAgfQorfQorCitzdWIgX2RhdGFfcmFuZ2UgeworICAgIG15ICgkc2VsZiwgJHJhbmdlKSA9IEBfOworCisgICAgbXkgJGRhdGEgPSAkc2VsZi0+e2RhdGF9IG9yIHJldHVybiB1bmRlZjsKKworICAgIHJldHVybiBbIEAkZGF0YSBdIGlmICRyYW5nZS0+e2FsbH07CisKKyAgICB1bmxlc3MgKGdyZXAgeyBtL14oc2luY2V8dW50aWx8ZnJvbXx0b3xjb3VudHxvZmZzZXQpJC8gfSBrZXlzICUkcmFuZ2UpIHsKKwlyZXR1cm4gWyBAJGRhdGEgXTsKKyAgICB9CisKKyAgICAkc2VsZi0+X19zYW5pdHlfY2hlY2tfcmFuZ2UoJHJhbmdlKTsKKworICAgIG15ICgkc3RhcnQsICRlbmQpOworICAgIGlmIChkZWZpbmVkKCRyYW5nZS0+e2NvdW50fSkpIHsKKwlteSAkb2Zmc2V0ID0gJHJhbmdlLT57b2Zmc2V0fSB8fCAwOworCW15ICRjb3VudCA9ICRyYW5nZS0+e2NvdW50fTsKKwkjIENvbnZlcnQgY291bnQvb2Zmc2V0IGluIHN0YXJ0L2VuZAorCWlmICgkb2Zmc2V0ID4gMCkgeworCSAgICAkb2Zmc2V0IC09ICgkY291bnQgPCAwKTsKKwl9IGVsc2lmICgkb2Zmc2V0IDwgMCkgeworCSAgICAkb2Zmc2V0ID0gJCMkZGF0YSArICgkY291bnQgPiAwKSArICRvZmZzZXQ7CisJfSBlbHNlIHsKKwkgICAgJG9mZnNldCA9ICQjJGRhdGEgaWYgJGNvdW50IDwgMDsKKwl9CisJJHN0YXJ0ID0gJGVuZCA9ICRvZmZzZXQ7CisJJHN0YXJ0ICs9ICRjb3VudCsxIGlmICRjb3VudCA8IDA7CisJJGVuZCArPSAkY291bnQtMSBpZiAkY291bnQgPiAwOworCSMgQ2hlY2sgbGltaXRzCisJJHN0YXJ0ID0gMCBpZiAkc3RhcnQgPCAwOworCXJldHVybiBpZiAkc3RhcnQgPiAkIyRkYXRhOworCSRlbmQgPSAkIyRkYXRhIGlmICRlbmQgPiAkIyRkYXRhOworCXJldHVybiBpZiAkZW5kIDwgMDsKKwkkZW5kID0gJHN0YXJ0IGlmICRlbmQgPCAkc3RhcnQ7CisJcmV0dXJuIFsgQHskZGF0YX1bJHN0YXJ0IC4uICRlbmRdIF07CisgICAgfQorCisgICAgbXkgQHJlc3VsdDsKKyAgICBteSAkaW5jbHVkZSA9IDE7CisgICAgJGluY2x1ZGUgPSAwIGlmIGRlZmluZWQoJHJhbmdlLT57dG99KSBvciBkZWZpbmVkKCRyYW5nZS0+eyd1bnRpbCd9KTsKKyAgICBmb3JlYWNoIChAJGRhdGEpIHsKKwlteSAkdiA9ICRfLT5nZXRfdmVyc2lvbigpOworCSRpbmNsdWRlID0gMSBpZiBkZWZpbmVkKCRyYW5nZS0+e3RvfSkgYW5kICR2IGVxICRyYW5nZS0+e3RvfTsKKwlsYXN0IGlmIGRlZmluZWQoJHJhbmdlLT57c2luY2V9KSBhbmQgJHYgZXEgJHJhbmdlLT57c2luY2V9OworCisJcHVzaCBAcmVzdWx0LCAkXyBpZiAkaW5jbHVkZTsKKworCSRpbmNsdWRlID0gMSBpZiBkZWZpbmVkKCRyYW5nZS0+eyd1bnRpbCd9KSBhbmQgJHYgZXEgJHJhbmdlLT57J3VudGlsJ307CisJbGFzdCBpZiBkZWZpbmVkKCRyYW5nZS0+e2Zyb219KSBhbmQgJHYgZXEgJHJhbmdlLT57ZnJvbX07CisgICAgfQorCisgICAgcmV0dXJuIFxAcmVzdWx0IGlmIHNjYWxhcihAcmVzdWx0KTsKKyAgICByZXR1cm4gdW5kZWY7Cit9CisKKz1pdGVtICRjLT5hYm9ydF9lYXJseSgpCisKK1JldHVybnMgdHJ1ZSBpZiBlbm91Z2ggZGF0YSBoYXZlIGJlZW4gcGFyc2VkIHRvIGJlIGFibGUgdG8gcmV0dXJuIGFsbAorZW50cmllcyBzZWxlY3RlZCBieSB0aGUgcmFuZ2Ugc2V0IGF0IGNyZWF0aW9uIChvciB3aXRoIHNldF9vcHRpb25zKS4KKworPWN1dAorCitzdWIgYWJvcnRfZWFybHkgeworICAgIG15ICgkc2VsZikgPSBAXzsKKworICAgIG15ICRkYXRhID0gJHNlbGYtPntkYXRhfSBvciByZXR1cm47CisgICAgbXkgJHIgPSAkc2VsZi0+e3JhbmdlfSBvciByZXR1cm47CisgICAgbXkgJGNvdW50ID0gJHItPntjb3VudH0gfHwgMDsKKyAgICBteSAkb2Zmc2V0ID0gJHItPntvZmZzZXR9IHx8IDA7CisKKyAgICByZXR1cm4gaWYgJHItPnthbGx9OworICAgIHJldHVybiB1bmxlc3MgZ3JlcCB7IG0vXihzaW5jZXx1bnRpbHxmcm9tfHRvfGNvdW50fG9mZnNldCkkLyB9IGtleXMgJSRyOworICAgIHJldHVybiBpZiAkb2Zmc2V0IDwgMCBvciAkY291bnQgPCAwOworICAgIGlmIChkZWZpbmVkKCRyLT57Y291bnR9KSkgeworCWlmICgkb2Zmc2V0ID4gMCkgeworCSAgICAkb2Zmc2V0IC09ICgkY291bnQgPCAwKTsKKwl9CisJbXkgJHN0YXJ0ID0gbXkgJGVuZCA9ICRvZmZzZXQ7CisJJGVuZCArPSAkY291bnQtMSBpZiAkY291bnQgPiAwOworCXJldHVybiAoJHN0YXJ0IDwgQCRkYXRhIGFuZCAkZW5kIDwgQCRkYXRhKTsKKyAgICB9CisKKyAgICByZXR1cm4gdW5sZXNzIGRlZmluZWQoJHItPntzaW5jZX0pIG9yIGRlZmluZWQoJHItPntmcm9tfSk7CisgICAgZm9yZWFjaCAoQCRkYXRhKSB7CisJbXkgJHYgPSAkXy0+Z2V0X3ZlcnNpb24oKTsKKwlyZXR1cm4gMSBpZiBkZWZpbmVkKCRyLT57c2luY2V9KSBhbmQgJHYgZXEgJHItPntzaW5jZX07CisJcmV0dXJuIDEgaWYgZGVmaW5lZCgkci0+e2Zyb219KSBhbmQgJHYgZXEgJHItPntmcm9tfTsKKyAgICB9CisKKyAgICByZXR1cm47Cit9CisKKz1pdGVtICRjLT5zYXZlKCRmaWxlbmFtZSkKKworU2F2ZSB0aGUgY2hhbmdlbG9nIGluIHRoZSBnaXZlbiBmaWxlLgorCis9aXRlbSAkYy0+b3V0cHV0KCkKKworPWl0ZW0gIiRjIgorCitSZXR1cm5zIGEgc3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBjaGFuZ2Vsb2cgKGl0J3MgYSBjb25jYXRlbmF0aW9uIG9mCit0aGUgc3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBpbmRpdmlkdWFsIGNoYW5nZWxvZyBlbnRyaWVzKS4KKworPWl0ZW0gJGMtPm91dHB1dCgkZmgpCisKK091dHB1dCB0aGUgY2hhbmdlbG9nIHRvIHRoZSBnaXZlbiBmaWxlaGFuZGxlLgorCis9Y3V0CisKK3N1YiBvdXRwdXQgeworICAgIG15ICgkc2VsZiwgJGZoKSA9IEBfOworICAgIG15ICRzdHIgPSAiIjsKKyAgICBmb3JlYWNoIG15ICRlbnRyeSAoQHskc2VsZn0pIHsKKwlteSAkdGV4dCA9ICRlbnRyeS0+b3V0cHV0KCk7CisJcHJpbnQgJGZoICR0ZXh0IGlmIGRlZmluZWQgJGZoOworCSRzdHIgLj0gJHRleHQgaWYgZGVmaW5lZCB3YW50YXJyYXk7CisgICAgfQorICAgIG15ICR0ZXh0ID0gJHNlbGYtPmdldF91bnBhcnNlZF90YWlsKCk7CisgICAgaWYgKGRlZmluZWQgJHRleHQpIHsKKwlwcmludCAkZmggJHRleHQgaWYgZGVmaW5lZCAkZmg7CisJJHN0ciAuPSAkdGV4dCBpZiBkZWZpbmVkIHdhbnRhcnJheTsKKyAgICB9CisgICAgcmV0dXJuICRzdHI7Cit9CisKKz1pdGVtIG15ICRjb250cm9sID0gJGMtPmRwa2coJHJhbmdlKQorCitSZXR1cm5zIGEgRHBrZzo6Q29udHJvbDo6Q2hhbmdlbG9nIG9iamVjdCByZXByZXNlbnRpbmcgdGhlIGVudHJpZXMgc2VsZWN0ZWQKK2J5IHRoZSBvcHRpb25hbCByYW5nZSBzcGVjaWZpZXIgKHNlZSBMPCJSQU5HRSBTRUxFQ1RJT04iPiBmb3IgZGV0YWlscykuCitSZXR1cm5zIHVuZGVmIGluIG5vIGVudHJpZXMgYXJlIG1hdGNoZWQuCisKK1RoZSBmb2xsb3dpbmcgZmllbGRzIGFyZSBjb250YWluZWQgaW4gdGhlIG9iamVjdDoKKworPW92ZXIgNAorCis9aXRlbSBTb3VyY2UKKworcGFja2FnZSBuYW1lIChpbiB0aGUgZmlyc3QgZW50cnkpCisKKz1pdGVtIFZlcnNpb24KKworcGFja2FnZXMnIHZlcnNpb24gKGZyb20gZmlyc3QgZW50cnkpCisKKz1pdGVtIERpc3RyaWJ1dGlvbgorCit0YXJnZXQgZGlzdHJpYnV0aW9uIChmcm9tIGZpcnN0IGVudHJ5KQorCis9aXRlbSBVcmdlbmN5CisKK3VyZ2VuY3kgKGhpZ2hlc3Qgb2YgYWxsIHByaW50ZWQgZW50cmllcykKKworPWl0ZW0gTWFpbnRhaW5lcgorCitwZXJzb24gdGhhdCBjcmVhdGVkIHRoZSAoZmlyc3QpIGVudHJ5CisKKz1pdGVtIERhdGUKKworZGF0ZSBvZiB0aGUgKGZpcnN0KSBlbnRyeQorCis9aXRlbSBDbG9zZXMKKworYnVncyBjbG9zZWQgYnkgdGhlIGVudHJ5L2VudHJpZXMsIHNvcnRlZCBieSBidWcgbnVtYmVyCisKKz1pdGVtIENoYW5nZXMKKworY29udGVudCBvZiB0aGUgdGhlIGVudHJ5L2VudHJpZXMKKworPWJhY2sKKworPWN1dAorCitvdXIgKCBAVVJHRU5DSUVTLCAlVVJHRU5DSUVTICk7CitCRUdJTiB7CisgICAgQFVSR0VOQ0lFUyA9IHF3KGxvdyBtZWRpdW0gaGlnaCBjcml0aWNhbCBlbWVyZ2VuY3kpOworICAgIG15ICRpID0gMTsKKyAgICAlVVJHRU5DSUVTID0gbWFwIHsgJF8gPT4gJGkrKyB9IEBVUkdFTkNJRVM7Cit9CisKK3N1YiBkcGtnIHsKKyAgICBteSAoJHNlbGYsICRyYW5nZSkgPSBAXzsKKworICAgIG15IEBkYXRhID0gJHNlbGYtPmdldF9yYW5nZSgkcmFuZ2UpIG9yIHJldHVybiB1bmRlZjsKKyAgICBteSAkZW50cnkgPSBzaGlmdCBAZGF0YTsKKworICAgIG15ICRmID0gRHBrZzo6Q29udHJvbDo6Q2hhbmdlbG9nLT5uZXcoKTsKKyAgICAkZi0+e1VyZ2VuY3l9ID0gJGVudHJ5LT5nZXRfdXJnZW5jeSgpIHx8ICJ1bmtub3duIjsKKyAgICAkZi0+e1NvdXJjZX0gPSAkZW50cnktPmdldF9zb3VyY2UoKSB8fCAidW5rbm93biI7CisgICAgJGYtPntWZXJzaW9ufSA9ICRlbnRyeS0+Z2V0X3ZlcnNpb24oKTsKKyAgICAkZi0+e1ZlcnNpb259ID0gInVua25vd24iIHVubGVzcyBkZWZpbmVkICRmLT57VmVyc2lvbn07CisgICAgJGYtPntEaXN0cmlidXRpb259ID0gam9pbigiICIsICRlbnRyeS0+Z2V0X2Rpc3RyaWJ1dGlvbnMoKSk7CisgICAgJGYtPntNYWludGFpbmVyfSA9ICRlbnRyeS0+Z2V0X21haW50YWluZXIoKSB8fCAnJzsKKyAgICAkZi0+e0RhdGV9ID0gJGVudHJ5LT5nZXRfdGltZXN0YW1wKCkgfHwgJyc7CisgICAgJGYtPntDaGFuZ2VzfSA9ICRlbnRyeS0+Z2V0X2Rwa2dfY2hhbmdlcygpOworCisgICAgIyBoYW5kbGUgb3B0aW9uYWwgZmllbGRzCisgICAgbXkgJG9wdHMgPSAkZW50cnktPmdldF9vcHRpb25hbF9maWVsZHMoKTsKKyAgICBteSAlY2xvc2VzOworICAgIGZvcmVhY2ggKGtleXMgJSRvcHRzKSB7CisJaWYgKC9eVXJnZW5jeSQvaSkgeyAjIEFscmVhZHkgZGVhbHQKKwl9IGVsc2lmICgvXkNsb3NlcyQvaSkgeworCSAgICAkY2xvc2VzeyRffSA9IDEgZm9yZWFjaCAoc3BsaXQoL1xzKy8sICRvcHRzLT57Q2xvc2VzfSkpOworCX0gZWxzZSB7CisJICAgIGZpZWxkX3RyYW5zZmVyX3NpbmdsZSgkb3B0cywgJGYpOworCX0KKyAgICB9CisKKyAgICBmb3JlYWNoICRlbnRyeSAoQGRhdGEpIHsKKwlteSAkb2xkdXJnID0gJGYtPntVcmdlbmN5fSB8fCAnJzsKKwlteSAkb2xkdXJnbiA9ICRVUkdFTkNJRVN7JGYtPntVcmdlbmN5fX0gfHwgLTE7CisJbXkgJG5ld3VyZyA9ICRlbnRyeS0+Z2V0X3VyZ2VuY3koKSB8fCAnJzsKKwlteSAkbmV3dXJnbiA9ICRVUkdFTkNJRVN7JG5ld3VyZ30gfHwgLTE7CisJJGYtPntVcmdlbmN5fSA9ICgkbmV3dXJnbiA+ICRvbGR1cmduKSA/ICRuZXd1cmcgOiAkb2xkdXJnOworCSRmLT57Q2hhbmdlc30gLj0gIlxuIiAuICRlbnRyeS0+Z2V0X2Rwa2dfY2hhbmdlcygpOworCisJIyBoYW5kbGUgb3B0aW9uYWwgZmllbGRzCisJJG9wdHMgPSAkZW50cnktPmdldF9vcHRpb25hbF9maWVsZHMoKTsKKwlmb3JlYWNoIChrZXlzICUkb3B0cykgeworCSAgICBpZiAoL15DbG9zZXMkL2kpIHsKKwkJJGNsb3Nlc3skX30gPSAxIGZvcmVhY2ggKHNwbGl0KC9ccysvLCAkb3B0cy0+e0Nsb3Nlc30pKTsKKwkgICAgfSBlbHNpZiAobm90IGV4aXN0cyAkZi0+eyRffSkgeyAjIERvbid0IG92ZXJ3cml0ZSBhbiBleGlzdGluZyBmaWVsZAorCQlmaWVsZF90cmFuc2Zlcl9zaW5nbGUoJG9wdHMsICRmKTsKKwkgICAgfQorCX0KKyAgICB9CisKKyAgICBpZiAoc2NhbGFyIGtleXMgJWNsb3NlcykgeworCSRmLT57Q2xvc2VzfSA9IGpvaW4gIiAiLCBzb3J0IHsgJGEgPD0+ICRiIH0ga2V5cyAlY2xvc2VzOworICAgIH0KKyAgICBydW5fdmVuZG9yX2hvb2soInBvc3QtcHJvY2Vzcy1jaGFuZ2Vsb2ctZW50cnkiLCAkZik7CisKKyAgICByZXR1cm4gJGY7Cit9CisKKz1pdGVtIG15IEBjb250cm9scyA9ICRjLT5yZmM4MjIoJHJhbmdlKQorCitSZXR1cm5zIGEgRHBrZzo6SW5kZXggY29udGFpbmluZyBEcGtnOjpDb250cm9sOjpDaGFuZ2Vsb2cgb2JqZWN0cyB3aGVyZQorZWFjaCBvYmplY3QgcmVwcmVzZW50cyBvbmUgZW50cnkgaW4gdGhlIGNoYW5nZWxvZyB0aGF0IGlzIHBhcnQgb2YgdGhlCityYW5nZSByZXF1ZXN0ZWQgKHNlZSBMPCJSQU5HRSBTRUxFQ1RJT04iPiBmb3IgZGV0YWlscykuIEZvciB0aGUgZm9ybWF0IG9mCitzdWNoIGFuIG9iamVjdCBzZWUgdGhlIGRlc2NyaXB0aW9uIG9mIHRoZSBMPCJkcGtnIj4gbWV0aG9kICh3aGlsZSBpZ25vcmluZwordGhlIHJlbWFya3MgYWJvdXQgd2hpY2ggdmFsdWVzIGFyZSB0YWtlbiBmcm9tIHRoZSBmaXJzdCBlbnRyeSkuCisKKz1jdXQKKworc3ViIHJmYzgyMiB7CisgICAgbXkgKCRzZWxmLCAkcmFuZ2UpID0gQF87CisKKyAgICBteSBAZGF0YSA9ICRzZWxmLT5nZXRfcmFuZ2UoJHJhbmdlKSBvciByZXR1cm4gdW5kZWY7CisgICAgbXkgJGluZGV4ID0gRHBrZzo6SW5kZXgtPm5ldyh0eXBlID0+IENUUkxfQ0hBTkdFTE9HKTsKKworICAgIGZvcmVhY2ggbXkgJGVudHJ5IChAZGF0YSkgeworCW15ICRmID0gRHBrZzo6Q29udHJvbDo6Q2hhbmdlbG9nLT5uZXcoKTsKKwkkZi0+e1VyZ2VuY3l9ID0gJGVudHJ5LT5nZXRfdXJnZW5jeSgpIHx8ICJ1bmtub3duIjsKKwkkZi0+e1NvdXJjZX0gPSAkZW50cnktPmdldF9zb3VyY2UoKSB8fCAidW5rbm93biI7CisJJGYtPntWZXJzaW9ufSA9ICRlbnRyeS0+Z2V0X3ZlcnNpb24oKTsKKwkkZi0+e1ZlcnNpb259ID0gInVua25vd24iIHVubGVzcyBkZWZpbmVkICRmLT57VmVyc2lvbn07CisJJGYtPntEaXN0cmlidXRpb259ID0gam9pbigiICIsICRlbnRyeS0+Z2V0X2Rpc3RyaWJ1dGlvbnMoKSk7CisJJGYtPntNYWludGFpbmVyfSA9ICRlbnRyeS0+Z2V0X21haW50YWluZXIoKSB8fCAiIjsKKwkkZi0+e0RhdGV9ID0gJGVudHJ5LT5nZXRfdGltZXN0YW1wKCkgfHwgIiI7CisJJGYtPntDaGFuZ2VzfSA9ICRlbnRyeS0+Z2V0X2Rwa2dfY2hhbmdlcygpOworCisJIyBoYW5kbGUgb3B0aW9uYWwgZmllbGRzCisJbXkgJG9wdHMgPSAkZW50cnktPmdldF9vcHRpb25hbF9maWVsZHMoKTsKKwlmb3JlYWNoIChrZXlzICUkb3B0cykgeworCSAgICBmaWVsZF90cmFuc2Zlcl9zaW5nbGUoJG9wdHMsICRmKSB1bmxlc3MgZXhpc3RzICRmLT57JF99OworCX0KKworICAgICAgICBydW5fdmVuZG9yX2hvb2soInBvc3QtcHJvY2Vzcy1jaGFuZ2Vsb2ctZW50cnkiLCAkZik7CisKKwkkaW5kZXgtPmFkZCgkZik7CisgICAgfQorICAgIHJldHVybiAkaW5kZXg7Cit9CisKKz1iYWNrCisKKz1oZWFkMSBSQU5HRSBTRUxFQ1RJT04KKworQSByYW5nZSBzZWxlY3Rpb24gaXMgZGVzY3JpYmVkIGJ5IGEgaGFzaCByZWZlcmVuY2Ugd2hlcmUKK3RoZSBhbGxvd2VkIGtleXMgYW5kIHZhbHVlcyBhcmUgZGVzY3JpYmVkIGJlbG93LgorCitUaGUgZm9sbG93aW5nIG9wdGlvbnMgdGFrZSBhIHZlcnNpb24gbnVtYmVyIGFzIHZhbHVlLgorCis9b3ZlciA0CisKKz1pdGVtIHNpbmNlCisKK0NhdXNlcyBjaGFuZ2Vsb2cgaW5mb3JtYXRpb24gZnJvbSBhbGwgdmVyc2lvbnMgc3RyaWN0bHkKK2xhdGVyIHRoYW4gQjx2ZXJzaW9uPiB0byBiZSB1c2VkLgorCis9aXRlbSB1bnRpbAorCitDYXVzZXMgY2hhbmdlbG9nIGluZm9ybWF0aW9uIGZyb20gYWxsIHZlcnNpb25zIHN0cmljdGx5CitlYXJsaWVyIHRoYW4gQjx2ZXJzaW9uPiB0byBiZSB1c2VkLgorCis9aXRlbSBmcm9tCisKK1NpbWlsYXIgdG8gQzxzaW5jZT4gYnV0IGFsc28gaW5jbHVkZXMgdGhlIGluZm9ybWF0aW9uIGZvciB0aGUKK3NwZWNpZmllZCBCPHZlcnNpb24+IGl0c2VsZi4KKworPWl0ZW0gdG8KKworU2ltaWxhciB0byBDPHVudGlsPiBidXQgYWxzbyBpbmNsdWRlcyB0aGUgaW5mb3JtYXRpb24gZm9yIHRoZQorc3BlY2lmaWVkIEI8dmVyc2lvbj4gaXRzZWxmLgorCis9YmFjaworCitUaGUgZm9sbG93aW5nIG9wdGlvbnMgZG9uJ3QgdGFrZSB2ZXJzaW9uIG51bWJlcnMgYXMgdmFsdWVzOgorCis9b3ZlciA0CisKKz1pdGVtIGFsbAorCitJZiBzZXQgdG8gYSB0cnVlIHZhbHVlLCBhbGwgZW50cmllcyBvZiB0aGUgY2hhbmdlbG9nIGFyZSByZXR1cm5lZCwKK3RoaXMgb3ZlcnJpZGVzIGFsbCBvdGhlciBvcHRpb25zLgorCis9aXRlbSBjb3VudAorCitFeHBlY3RzIGEgc2lnbmVkIGludGVnZXIgYXMgdmFsdWUuIFJldHVybnMgQzx2YWx1ZT4gZW50cmllcyBmcm9tIHRoZQordG9wIG9mIHRoZSBjaGFuZ2Vsb2cgaWYgc2V0IHRvIGEgcG9zaXRpdmUgaW50ZWdlciwgYW5kIEM8YWJzKHZhbHVlKT4KK2VudHJpZXMgZnJvbSB0aGUgdGFpbCBpZiBzZXQgdG8gYSBuZWdhdGl2ZSBpbnRlZ2VyLgorCis9aXRlbSBvZmZzZXQKKworRXhwZWN0cyBhIHNpZ25lZCBpbnRlZ2VyIGFzIHZhbHVlLiBDaGFuZ2VzIHRoZSBzdGFydGluZyBwb2ludCBmb3IKK0M8Y291bnQ+LCBlaXRoZXIgY291bnRlZCBmcm9tIHRoZSB0b3AgKHBvc2l0aXZlIGludGVnZXIpIG9yIGZyb20KK3RoZSB0YWlsIChuZWdhdGl2ZSBpbnRlZ2VyKS4gQzxvZmZzZXQ+IGhhcyBubyBlZmZlY3QgaWYgQzxjb3VudD4KK3dhc24ndCBnaXZlbiBhcyB3ZWxsLgorCis9YmFjaworCitTb21lIGV4YW1wbGVzIGZvciB0aGUgYWJvdmUgb3B0aW9ucy4gSW1hZ2luZSBhbiBleGFtcGxlIGNoYW5nZWxvZyB3aXRoCitlbnRyaWVzIGZvciB0aGUgdmVyc2lvbnMgMS4yLCAxLjMsIDIuMCwgMi4xLCAyLjIsIDMuMCBhbmQgMy4xLgorCisgICAgICAgICAgICBSYW5nZSAgICAgICAgICAgICAgICAgICAgICAgICAgIEluY2x1ZGVkIGVudHJpZXMKKyBDPHsgc2luY2UgPUU8Z3Q+ICcyLjAnIH0+ICAgICAgICAgICAgICAgICAgMy4xLCAzLjAsIDIuMgorIEM8eyB1bnRpbCA9RTxndD4gJzIuMCcgfT4gICAgICAgICAgICAgICAgICAxLjMsIDEuMgorIEM8eyBmcm9tID1FPGd0PiAnMi4wJyB9PiAgICAgICAgICAgICAgICAgICAzLjEsIDMuMCwgMi4yLCAyLjEsIDIuMAorIEM8eyB0byA9RTxndD4gJzIuMCcgfT4gICAgICAgICAgICAgICAgICAgICAyLjAsIDEuMywgMS4yCisgQzx7IGNvdW50ID1FPGd0PiAyIH0+ICAgICAgICAgICAgICAgICAgICAgIDMuMSwgMy4wCisgQzx7IGNvdW50ID1FPGd0PiAtMiB9PgkgICAgICAgICAgICAgICAgICAgIDEuMywgMS4yCisgQzx7IGNvdW50ID1FPGd0PiAzLCBvZmZzZXQ9RTxndD4gMiB9PiAgICAgIDIuMiwgMi4xLCAyLjAKKyBDPHsgY291bnQgPUU8Z3Q+IDIsIG9mZnNldD1FPGd0PiAtMyB9PiAgICAgMi4wLCAxLjMKKyBDPHsgY291bnQgPUU8Z3Q+IC0yLCBvZmZzZXQ9RTxndD4gMyB9PiAgICAgMy4wLCAyLjIKKyBDPHsgY291bnQgPUU8Z3Q+IC0yLCBvZmZzZXQ9RTxndD4gLTMgfT4gICAgMi4yLCAyLjEKKworQW55IGNvbWJpbmF0aW9uIG9mIG9uZSBvcHRpb24gb2YgQzxzaW5jZT4gYW5kIEM8ZnJvbT4gYW5kIG9uZSBvZgorQzx1bnRpbD4gYW5kIEM8dG8+IHJldHVybnMgdGhlIGludGVyc2VjdGlvbiBvZiB0aGUgdHdvIHJlc3VsdHMKK3dpdGggb25seSBvbmUgb2YgdGhlIG9wdGlvbnMgc3BlY2lmaWVkLgorCis9aGVhZDEgQVVUSE9SCisKK0ZyYW5rIExpY2h0ZW5oZWxkLCBFPGx0PmZyYW5rQGxpY2h0ZW5oZWxkLmRlRTxndD4KK1JhcGhhw6tsIEhlcnR6b2csIEU8bHQ+aGVydHpvZ0BkZWJpYW4ub3JnRTxndD4KKworPWN1dAorMTsKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9EZWJpYW4ucG0gYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRGViaWFuLnBtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjJlYTMwMjAKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRGViaWFuLnBtCkBAIC0wLDAgKzEsMjA1IEBACisjIENvcHlyaWdodCDCqSAxOTk2IElhbiBKYWNrc29uCisjIENvcHlyaWdodCDCqSAyMDA1IEZyYW5rIExpY2h0ZW5oZWxkIDxmcmFua0BsaWNodGVuaGVsZC5kZT4KKyMgQ29weXJpZ2h0IMKpIDIwMDkgUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorIworIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorIworIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorIworIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKworPWVuY29kaW5nIHV0ZjgKKworPWhlYWQxIE5BTUUKKworRHBrZzo6Q2hhbmdlbG9nOjpEZWJpYW4gLSBwYXJzZSBEZWJpYW4gY2hhbmdlbG9ncworCis9aGVhZDEgREVTQ1JJUFRJT04KKworRHBrZzo6Q2hhbmdlbG9nOjpEZWJpYW4gcGFyc2VzIERlYmlhbiBjaGFuZ2Vsb2dzIGFzIGRlc2NyaWJlZCBpbiB0aGUgRGViaWFuCitwb2xpY3kgKHZlcnNpb24gMy42LjIuMSBhdCB0aGUgdGltZSBvZiB0aGlzIHdyaXRpbmcpLiBTZWUgc2VjdGlvbgorTDwiU0VFIEFMU08iPiBmb3IgbG9jYXRpb25zIHdoZXJlIHRvIGZpbmQgdGhpcyBkZWZpbml0aW9uLgorCitUaGUgcGFyc2VyIHRyaWVzIHRvIGlnbm9yZSBtb3N0IGNydWZ0IGxpa2UgIyBvciAvKiAqLyBzdHlsZSBjb21tZW50cywKK0NWUyBjb21tZW50cywgdmltIHZhcmlhYmxlcywgZW1hY3MgbG9jYWwgdmFyaWFibGVzIGFuZCBzdHVmZiBmcm9tCitvbGRlciBjaGFuZ2Vsb2dzIHdpdGggb3RoZXIgZm9ybWF0cyBhdCB0aGUgZW5kIG9mIHRoZSBmaWxlLgorTk9URTogbW9zdCBvZiB0aGVzZSBhcmUgaWdub3JlZCBzaWxlbnRseSBjdXJyZW50bHksIHRoZXJlIGlzIG5vCitwYXJzZXIgZXJyb3IgaXNzdWVkIGZvciB0aGVtLiBUaGlzIHNob3VsZCBiZWNvbWUgY29uZmlndXJhYmxlIGluIHRoZQorZnV0dXJlLgorCis9aGVhZDIgTUVUSE9EUworCis9Y3V0CisKK3BhY2thZ2UgRHBrZzo6Q2hhbmdlbG9nOjpEZWJpYW47CisKK3VzZSBzdHJpY3Q7Cit1c2Ugd2FybmluZ3M7CisKK291ciAkVkVSU0lPTiA9ICIxLjAwIjsKKwordXNlIERwa2c6OkdldHRleHQ7Cit1c2UgRHBrZzo6Q2hhbmdlbG9nIHF3KDp1dGlsKTsKK3VzZSBiYXNlIHF3KERwa2c6OkNoYW5nZWxvZyk7Cit1c2UgRHBrZzo6Q2hhbmdlbG9nOjpFbnRyeTo6RGViaWFuIHF3KCRyZWdleF9oZWFkZXIgJHJlZ2V4X3RyYWlsZXIpOworCit1c2UgY29uc3RhbnQgeworICAgIEZJUlNUX0hFQURJTkcgPT4gX2coJ2ZpcnN0IGhlYWRpbmcnKSwKKyAgICBORVhUX09SX0VPRiA9PiBfZygnbmV4dCBoZWFkaW5nIG9yIGVvZicpLAorICAgIFNUQVJUX0NIQU5HRVMgPT4gX2coJ3N0YXJ0IG9mIGNoYW5nZSBkYXRhJyksCisgICAgQ0hBTkdFU19PUl9UUkFJTEVSID0+IF9nKCdtb3JlIGNoYW5nZSBkYXRhIG9yIHRyYWlsZXInKSwKK307CisKKz1wb2QKKworPWhlYWQzICRjLT5wYXJzZSgkZmgsICRkZXNjcmlwdGlvbikKKworUmVhZCB0aGUgZmlsZWhhbmRsZSBhbmQgcGFyc2UgYSBEZWJpYW4gY2hhbmdlbG9nIGluIGl0LiBSZXR1cm5zIHRoZSBudW1iZXIKK29mIGNoYW5nZWxvZyBlbnRyaWVzIHRoYXQgaGF2ZSBiZWVuIHBhcnNlZCB3aXRoIHN1Y2Nlc3MuCisKKz1jdXQKKworc3ViIHBhcnNlIHsKKyAgICBteSAoJHNlbGYsICRmaCwgJGZpbGUpID0gQF87CisgICAgJGZpbGUgPSAkc2VsZi0+e3JlcG9ydGZpbGV9IGlmIGV4aXN0cyAkc2VsZi0+e3JlcG9ydGZpbGV9OworCisgICAgJHNlbGYtPnJlc2V0X3BhcnNlX2Vycm9yczsKKworICAgICRzZWxmLT57ZGF0YX0gPSBbXTsKKyAgICAkc2VsZi0+c2V0X3VucGFyc2VkX3RhaWwodW5kZWYpOworCisgICAgbXkgJGV4cGVjdCA9IEZJUlNUX0hFQURJTkc7CisgICAgbXkgJGVudHJ5ID0gRHBrZzo6Q2hhbmdlbG9nOjpFbnRyeTo6RGViaWFuLT5uZXcoKTsKKyAgICBteSBAYmxhbmtsaW5lcyA9ICgpOworICAgIG15ICR1bmtub3duY291bnRlciA9IDE7ICMgdG8gbWFrZSB2ZXJzaW9uIHVuaXF1ZSwgZS5nLiBmb3IgdXNpbmcgYXMgaWQKKworICAgIHdoaWxlICg8JGZoPikgeworCWNob21wOworCWlmICgkXyA9fiAkcmVnZXhfaGVhZGVyKSB7CisJICAgIChteSAkb3B0aW9ucyA9ICQ0KSA9fiBzL15ccysvLzsKKwkgICAgdW5sZXNzICgkZXhwZWN0IGVxIEZJUlNUX0hFQURJTkcgfHwgJGV4cGVjdCBlcSBORVhUX09SX0VPRikgeworCQkkc2VsZi0+cGFyc2VfZXJyb3IoJGZpbGUsICQuLAorCQkgICAgc3ByaW50ZihfZygiZm91bmQgc3RhcnQgb2YgZW50cnkgd2hlcmUgZXhwZWN0ZWQgJXMiKSwKKwkJICAgICRleHBlY3QpLCAiJF8iKTsKKwkgICAgfQorCSAgICB1bmxlc3MgKCRlbnRyeS0+aXNfZW1wdHkpIHsKKwkJcHVzaCBAeyRzZWxmLT57ZGF0YX19LCAkZW50cnk7CisJCSRlbnRyeSA9IERwa2c6OkNoYW5nZWxvZzo6RW50cnk6OkRlYmlhbi0+bmV3KCk7CisJCWxhc3QgaWYgJHNlbGYtPmFib3J0X2Vhcmx5KCk7CisJICAgIH0KKwkgICAgJGVudHJ5LT5zZXRfcGFydCgnaGVhZGVyJywgJF8pOworCSAgICBmb3JlYWNoIG15ICRlcnJvciAoJGVudHJ5LT5jaGVja19oZWFkZXIoKSkgeworCQkkc2VsZi0+cGFyc2VfZXJyb3IoJGZpbGUsICQuLCAkZXJyb3IsICRfKTsKKwkgICAgfQorCSAgICAkZXhwZWN0PSBTVEFSVF9DSEFOR0VTOworCSAgICBAYmxhbmtsaW5lcyA9ICgpOworCX0gZWxzaWYgKG0vXig7O1xzKik/TG9jYWwgdmFyaWFibGVzOi9pbykgeworCSAgICBsYXN0OyAjIHNraXAgRW1hY3MgdmFyaWFibGVzIGF0IGVuZCBvZiBmaWxlCisJfSBlbHNpZiAobS9edmltOi9pbykgeworCSAgICBsYXN0OyAjIHNraXAgdmltIHZhcmlhYmxlcyBhdCBlbmQgb2YgZmlsZQorCX0gZWxzaWYgKG0vXlwkXHcrOi4qXCQvbykgeworCSAgICBuZXh0OyAjIHNraXAgc3R1ZmYgdGhhdCBsb29rIGxpa2UgYSBDVlMga2V5d29yZAorCX0gZWxzaWYgKG0vXlwjIC9vKSB7CisJICAgIG5leHQ7ICMgc2tpcCBjb21tZW50cywgZXZlbiB0aGF0J3Mgbm90IHN1cHBvcnRlZAorCX0gZWxzaWYgKG0sXi9cKi4qXCovLG8pIHsKKwkgICAgbmV4dDsgIyBtb3JlIGNvbW1lbnRzCisJfSBlbHNpZiAobS9eKFx3K1xzK1x3K1xzK1xkezEsMn0gXGR7MSwyfTpcZHsxLDJ9OlxkezEsMn1ccytbXHdcc10qXGR7NH0pXHMrKC4qKVxzKyg8fFwoKSguKikoXCl8PikvbworCQkgfHwgbS9eKFx3K1xzK1x3K1xzK1xkezEsMn0sP1xzKlxkezR9KVxzKyguKilccysoPHxcKCkoLiopKFwpfD4pL28KKwkJIHx8IG0vXihcd1stKzAtOWEtei5dKikgXCgoW15cKFwpIFx0XSspXClcOz8vaW8KKwkJIHx8IG0vXihbXHcuKy1dKykoLXwgKShcUyspIERlYmlhbiAoXFMrKS9pbworCQkgfHwgbS9eQ2hhbmdlcyBmcm9tIHZlcnNpb24gKC4qKSB0byAoLiopOi9pbworCQkgfHwgbS9eQ2hhbmdlcyBmb3IgW1x3ListXSstW1x3ListXSs6P1xzKiQvaW8KKwkJIHx8IG0vXk9sZCBDaGFuZ2Vsb2c6XHMqJC9pbworCQkgfHwgbS9eKD86XGQrOik/XHdbXHcuK34tXSo6P1xzKiQvbykgeworCSAgICAjIHNhdmUgZW50cmllcyBvbiBvbGQgY2hhbmdlbG9nIGZvcm1hdCB2ZXJiYXRpbQorCSAgICAjIHdlIGFzc3VtZSB0aGUgcmVzdCBvZiB0aGUgZmlsZSB3aWxsIGJlIGluIG9sZCBmb3JtYXQgb25jZSB3ZQorCSAgICAjIGhpdCBpdCBmb3IgdGhlIGZpcnN0IHRpbWUKKwkgICAgJHNlbGYtPnNldF91bnBhcnNlZF90YWlsKCIkX1xuIiAuIGpvaW4oIiIsIDwkZmg+KSk7CisJfSBlbHNpZiAobS9eXFMvKSB7CisJICAgICRzZWxmLT5wYXJzZV9lcnJvcigkZmlsZSwgJC4sIF9nKCJiYWRseSBmb3JtYXR0ZWQgaGVhZGluZyBsaW5lIiksICIkXyIpOworCX0gZWxzaWYgKCRfID1+ICRyZWdleF90cmFpbGVyKSB7CisJICAgIHVubGVzcyAoJGV4cGVjdCBlcSBDSEFOR0VTX09SX1RSQUlMRVIpIHsKKwkJJHNlbGYtPnBhcnNlX2Vycm9yKCRmaWxlLCAkLiwKKwkJICAgIHNwcmludGYoX2coImZvdW5kIHRyYWlsZXIgd2hlcmUgZXhwZWN0ZWQgJXMiKSwgJGV4cGVjdCksICIkXyIpOworCSAgICB9CisJICAgICRlbnRyeS0+c2V0X3BhcnQoInRyYWlsZXIiLCAkXyk7CisJICAgICRlbnRyeS0+ZXh0ZW5kX3BhcnQoImJsYW5rX2FmdGVyX2NoYW5nZXMiLCBbIEBibGFua2xpbmVzIF0pOworCSAgICBAYmxhbmtsaW5lcyA9ICgpOworCSAgICBmb3JlYWNoIG15ICRlcnJvciAoJGVudHJ5LT5jaGVja190cmFpbGVyKCkpIHsKKwkJJHNlbGYtPnBhcnNlX2Vycm9yKCRmaWxlLCAkLiwgJGVycm9yLCAkXyk7CisJICAgIH0KKwkgICAgJGV4cGVjdCA9IE5FWFRfT1JfRU9GOworCX0gZWxzaWYgKG0vXiBcLVwtLykgeworCSAgICAkc2VsZi0+cGFyc2VfZXJyb3IoJGZpbGUsICQuLCBfZygiYmFkbHkgZm9ybWF0dGVkIHRyYWlsZXIgbGluZSIpLCAiJF8iKTsKKwl9IGVsc2lmIChtL15cc3syLH0oXFMpLykgeworCSAgICB1bmxlc3MgKCRleHBlY3QgZXEgU1RBUlRfQ0hBTkdFUyBvciAkZXhwZWN0IGVxIENIQU5HRVNfT1JfVFJBSUxFUikgeworCQkkc2VsZi0+cGFyc2VfZXJyb3IoJGZpbGUsICQuLCBzcHJpbnRmKF9nKCJmb3VuZCBjaGFuZ2UgZGF0YSIgLgorCQkgICAgIiB3aGVyZSBleHBlY3RlZCAlcyIpLCAkZXhwZWN0KSwgIiRfIik7CisJCWlmICgkZXhwZWN0IGVxIE5FWFRfT1JfRU9GIGFuZCBub3QgJGVudHJ5LT5pc19lbXB0eSkgeworCQkgICAgIyBsZXRzIGFzc3VtZSB3ZSBoYXZlIG1pc3NlZCB0aGUgYWN0dWFsIGhlYWRlciBsaW5lCisJCSAgICBwdXNoIEB7JHNlbGYtPntkYXRhfX0sICRlbnRyeTsKKwkJICAgICRlbnRyeSA9IERwa2c6OkNoYW5nZWxvZzo6RW50cnk6OkRlYmlhbi0+bmV3KCk7CisJCSAgICAkZW50cnktPnNldF9wYXJ0KCdoZWFkZXInLCAidW5rbm93biAodW5rbm93biIgLiAoJHVua25vd25jb3VudGVyKyspIC4gIikgdW5rbm93bjsgdXJnZW5jeT11bmtub3duIik7CisJCX0KKwkgICAgfQorCSAgICAjIEtlZXAgcmF3IGNoYW5nZXMKKwkgICAgJGVudHJ5LT5leHRlbmRfcGFydCgnY2hhbmdlcycsIFsgQGJsYW5rbGluZXMsICRfIF0pOworCSAgICBAYmxhbmtsaW5lcyA9ICgpOworCSAgICAkZXhwZWN0ID0gQ0hBTkdFU19PUl9UUkFJTEVSOworCX0gZWxzaWYgKCFtL1xTLykgeworCSAgICBpZiAoJGV4cGVjdCBlcSBTVEFSVF9DSEFOR0VTKSB7CisJCSRlbnRyeS0+ZXh0ZW5kX3BhcnQoImJsYW5rX2FmdGVyX2hlYWRlciIsICRfKTsKKwkJbmV4dDsKKwkgICAgfSBlbHNpZiAoJGV4cGVjdCBlcSBORVhUX09SX0VPRikgeworCQkkZW50cnktPmV4dGVuZF9wYXJ0KCJibGFua19hZnRlcl90cmFpbGVyIiwgJF8pOworCQluZXh0OworCSAgICB9IGVsc2lmICgkZXhwZWN0IG5lIENIQU5HRVNfT1JfVFJBSUxFUikgeworCQkkc2VsZi0+cGFyc2VfZXJyb3IoJGZpbGUsICQuLAorCQkgICAgc3ByaW50ZihfZygiZm91bmQgYmxhbmsgbGluZSB3aGVyZSBleHBlY3RlZCAlcyIpLCAkZXhwZWN0KSk7CisJICAgIH0KKwkgICAgcHVzaCBAYmxhbmtsaW5lcywgJF87CisJfSBlbHNlIHsKKwkgICAgJHNlbGYtPnBhcnNlX2Vycm9yKCRmaWxlLCAkLiwgX2coInVucmVjb2duaXNlZCBsaW5lIiksICIkXyIpOworCSAgICB1bmxlc3MgKCRleHBlY3QgZXEgU1RBUlRfQ0hBTkdFUyBvciAkZXhwZWN0IGVxIENIQU5HRVNfT1JfVFJBSUxFUikgeworCQkjIGxldHMgYXNzdW1lIGNoYW5nZSBkYXRhIGlmIHdlIGV4cGVjdGVkIGl0CisJCSRlbnRyeS0+ZXh0ZW5kX3BhcnQoImNoYW5nZXMiLCBbIEBibGFua2xpbmVzLCAkX10pOworCQlAYmxhbmtsaW5lcyA9ICgpOworCQkkZXhwZWN0ID0gQ0hBTkdFU19PUl9UUkFJTEVSOworCSAgICB9CisJfQorICAgIH0KKworICAgIHVubGVzcyAoJGV4cGVjdCBlcSBORVhUX09SX0VPRikgeworCSRzZWxmLT5wYXJzZV9lcnJvcigkZmlsZSwgJC4sIHNwcmludGYoX2coImZvdW5kIGVvZiB3aGVyZSBleHBlY3RlZCAlcyIpLAorCQkJCQkgICAgICAkZXhwZWN0KSk7CisgICAgfQorICAgIHVubGVzcyAoJGVudHJ5LT5pc19lbXB0eSkgeworCXB1c2ggQHskc2VsZi0+e2RhdGF9fSwgJGVudHJ5OworICAgIH0KKworICAgIHJldHVybiBzY2FsYXIgQHskc2VsZi0+e2RhdGF9fTsKK30KKworMTsKK19fRU5EX18KKworPWhlYWQxIFNFRSBBTFNPCisKK0Rwa2c6OkNoYW5nZWxvZworCitEZXNjcmlwdGlvbiBvZiB0aGUgRGViaWFuIGNoYW5nZWxvZyBmb3JtYXQgaW4gdGhlIERlYmlhbiBwb2xpY3k6CitMPGh0dHA6Ly93d3cuZGViaWFuLm9yZy9kb2MvZGViaWFuLXBvbGljeS9jaC1zb3VyY2UuaHRtbCNzLWRwa2djaGFuZ2Vsb2c+LgorCis9aGVhZDEgQVVUSE9SUworCitGcmFuayBMaWNodGVuaGVsZCwgRTxsdD5mcmFua0BsaWNodGVuaGVsZC5kZUU8Z3Q+CitSYXBoYcOrbCBIZXJ0em9nLCBFPGx0PmhlcnR6b2dAZGViaWFuLm9yZ0U8Z3Q+CisKKz1jdXQKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9FbnRyeS5wbSBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9FbnRyeS5wbQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lYjc5YjhmCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0VudHJ5LnBtCkBAIC0wLDAgKzEsMzA0IEBACisjIENvcHlyaWdodCDCqSAyMDA5IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KKyMKKyMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyMKKyMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisjIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisjIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyMKKyMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisKK3BhY2thZ2UgRHBrZzo6Q2hhbmdlbG9nOjpFbnRyeTsKKwordXNlIHN0cmljdDsKK3VzZSB3YXJuaW5nczsKKworb3VyICRWRVJTSU9OID0gIjEuMDAiOworCit1c2UgRHBrZzo6R2V0dGV4dDsKK3VzZSBEcGtnOjpFcnJvckhhbmRsaW5nOwordXNlIERwa2c6OkNvbnRyb2w6OkNoYW5nZWxvZzsKKwordXNlIG92ZXJsb2FkCisgICAgJyIiJyA9PiBcJm91dHB1dCwKKyAgICAnZXEnID0+IHN1YiB7IGRlZmluZWQoJF9bMV0pIGFuZCAiJF9bMF0iIGVxICIkX1sxXSIgfSwKKyAgICBmYWxsYmFjayA9PiAxOworCis9ZW5jb2RpbmcgdXRmOAorCis9aGVhZDEgTkFNRQorCitEcGtnOjpDaGFuZ2Vsb2c6OkVudHJ5IC0gcmVwcmVzZW50cyBhIGNoYW5nZWxvZyBlbnRyeQorCis9aGVhZDEgREVTQ1JJUFRJT04KKworVGhpcyBvYmplY3QgcmVwcmVzZW50cyBhIGNoYW5nZWxvZyBlbnRyeS4gSXQgaXMgY29tcG9zZWQKK29mIGEgc2V0IG9mIGxpbmVzIHdpdGggc3BlY2lmaWMgcHVycG9zZTogYW4gaGVhZGVyIGxpbmUsIGNoYW5nZXMgbGluZXMsIGEKK3RyYWlsZXIgbGluZS4gQmxhbmsgbGluZXMgY2FuIGJlIGJldHdlZW4gdGhvc2Uga2luZCBvZiBsaW5lcy4KKworPWhlYWQxIEZVTkNUSU9OUworCis9b3ZlciA0CisKKz1pdGVtIG15ICRlbnRyeSA9IERwa2c6OkNoYW5nZWxvZzo6RW50cnktPm5ldygpCisKK0NyZWF0ZXMgYSBuZXcgb2JqZWN0LiBJdCBkb2Vzbid0IHJlcHJlc2VudCBhIHJlYWwgY2hhbmdlbG9nIGVudHJ5Cit1bnRpbCBvbmUgaGFzIGJlZW4gc3VjY2Vzc2Z1bGx5IHBhcnNlZCBvciBidWlsdCBmcm9tIHNjcmF0Y2guCisKKz1jdXQKKworc3ViIG5ldyB7CisgICAgbXkgKCR0aGlzKSA9IEBfOworICAgIG15ICRjbGFzcyA9IHJlZigkdGhpcykgfHwgJHRoaXM7CisKKyAgICBteSAkc2VsZiA9IHsKKwknaGVhZGVyJyA9PiB1bmRlZiwKKwknY2hhbmdlcycgPT4gW10sCisJJ3RyYWlsZXInID0+IHVuZGVmLAorCSdibGFua19hZnRlcl9oZWFkZXInID0+IFtdLAorCSdibGFua19hZnRlcl9jaGFuZ2VzJyA9PiBbXSwKKwknYmxhbmtfYWZ0ZXJfdHJhaWxlcicgPT4gW10sCisgICAgfTsKKyAgICBibGVzcyAkc2VsZiwgJGNsYXNzOworICAgIHJldHVybiAkc2VsZjsKK30KKworPWl0ZW0gbXkgJHN0ciA9ICRlbnRyeS0+b3V0cHV0KCkKKworPWl0ZW0gIiRlbnRyeSIKKworR2V0IGEgc3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBjaGFuZ2Vsb2cgZW50cnkuCisKKz1pdGVtICRlbnRyeS0+b3V0cHV0KCRmaCkKKworUHJpbnQgdGhlIHN0cmluZyByZXByZXNlbnRhdGlvbiBvZiB0aGUgY2hhbmdlbG9nIGVudHJ5IHRvIGEKK2ZpbGVoYW5kbGUuCisKKz1jdXQKKworc3ViIG91dHB1dCB7CisgICAgbXkgKCRzZWxmLCAkZmgpID0gQF87CisgICAgbXkgJHN0ciA9ICcnOworICAgIHN1YiBfYmxvY2sgeworCW15ICRsaW5lcyA9IHNoaWZ0OworCXJldHVybiBqb2luKCcnLCBtYXAgeyAkXyAuICJcbiIgfSBAeyRsaW5lc30pOworICAgIH0KKyAgICAkc3RyIC49ICRzZWxmLT57aGVhZGVyfSAuICJcbiIgaWYgZGVmaW5lZCgkc2VsZi0+e2hlYWRlcn0pOworICAgICRzdHIgLj0gX2Jsb2NrKCRzZWxmLT57YmxhbmtfYWZ0ZXJfaGVhZGVyfSk7CisgICAgJHN0ciAuPSBfYmxvY2soJHNlbGYtPntjaGFuZ2VzfSk7CisgICAgJHN0ciAuPSBfYmxvY2soJHNlbGYtPntibGFua19hZnRlcl9jaGFuZ2VzfSk7CisgICAgJHN0ciAuPSAkc2VsZi0+e3RyYWlsZXJ9IC4gIlxuIiBpZiBkZWZpbmVkKCRzZWxmLT57dHJhaWxlcn0pOworICAgICRzdHIgLj0gX2Jsb2NrKCRzZWxmLT57YmxhbmtfYWZ0ZXJfdHJhaWxlcn0pOworICAgIHByaW50ICRmaCAkc3RyIGlmIGRlZmluZWQgJGZoOworICAgIHJldHVybiAkc3RyOworfQorCis9aXRlbSAkZW50cnktPmdldF9wYXJ0KCRwYXJ0KQorCitSZXR1cm4gZWl0aGVyIGEgc3RyaW5nIChmb3IgYSBzaW5nbGUgbGluZSkgb3IgYW4gYXJyYXkgcmVmIChmb3IgbXVsdGlwbGUKK2xpbmVzKSBjb3JyZXNwb25kaW5nIHRvIHRoZSByZXF1ZXN0ZWQgcGFydC4gJHBhcnQgY2FuIGJlCisiaGVhZGVyLCAiY2hhbmdlcyIsICJ0cmFpbGVyIiwgImJsYW5rX2FmdGVyX2hlYWRlciIsCisiYmxhbmtfYWZ0ZXJfY2hhbmdlcyIsICJibGFua19hZnRlcl90cmFpbGVyIi4KKworPWN1dAorCitzdWIgZ2V0X3BhcnQgeworICAgIG15ICgkc2VsZiwgJHBhcnQpID0gQF87CisgICAgaW50ZXJuZXJyKCJpbnZhbGlkIHBhcnQgb2YgY2hhbmdlbG9nIGVudHJ5OiAlcyIpIHVubGVzcyBleGlzdHMgJHNlbGYtPnskcGFydH07CisgICAgcmV0dXJuICRzZWxmLT57JHBhcnR9OworfQorCis9aXRlbSAkZW50cnktPnNldF9wYXJ0KCRwYXJ0LCAkdmFsdWUpCisKK1NldCB0aGUgdmFsdWUgb2YgdGhlIGNvcnJlc3BvbmRpbmcgcGFydC4gJHZhbHVlIGNhbiBiZSBhIHN0cmluZworb3IgYW4gYXJyYXkgcmVmLgorCis9Y3V0CisKK3N1YiBzZXRfcGFydCB7CisgICAgbXkgKCRzZWxmLCAkcGFydCwgJHZhbHVlKSA9IEBfOworICAgIGludGVybmVycigiaW52YWxpZCBwYXJ0IG9mIGNoYW5nZWxvZyBlbnRyeTogJXMiKSB1bmxlc3MgZXhpc3RzICRzZWxmLT57JHBhcnR9OworICAgIGlmIChyZWYoJHNlbGYtPnskcGFydH0pKSB7CisJaWYgKHJlZigkdmFsdWUpKSB7CisJICAgICRzZWxmLT57JHBhcnR9ID0gJHZhbHVlOworCX0gZWxzZSB7CisJICAgICRzZWxmLT57JHBhcnR9ID0gWyAkdmFsdWUgXTsKKwl9CisgICAgfSBlbHNlIHsKKwkkc2VsZi0+eyRwYXJ0fSA9ICR2YWx1ZTsKKyAgICB9Cit9CisKKz1pdGVtICRlbnRyeS0+ZXh0ZW5kX3BhcnQoJHBhcnQsICR2YWx1ZSkKKworQ29uY2F0ZW5hdGUgJHZhbHVlIGF0IHRoZSBlbmQgb2YgdGhlIHBhcnQuIElmIHRoZSBwYXJ0IGlzIGFscmVhZHkgYQorbXVsdGktbGluZSB2YWx1ZSwgJHZhbHVlIGlzIGFkZGVkIGFzIGEgbmV3IGxpbmUgb3RoZXJ3aXNlIGl0J3MKK2NvbmNhdGVuYXRlZCBhdCB0aGUgZW5kIG9mIHRoZSBjdXJyZW50IGxpbmUuCisKKz1jdXQKKworc3ViIGV4dGVuZF9wYXJ0IHsKKyAgICBteSAoJHNlbGYsICRwYXJ0LCAkdmFsdWUsIEByZXN0KSA9IEBfOworICAgIGludGVybmVycigiaW52YWxpZCBwYXJ0IG9mIGNoYW5nZWxvZyBlbnRyeTogJXMiKSB1bmxlc3MgZXhpc3RzICRzZWxmLT57JHBhcnR9OworICAgIGlmIChyZWYoJHNlbGYtPnskcGFydH0pKSB7CisJaWYgKHJlZigkdmFsdWUpKSB7CisJICAgIHB1c2ggQHskc2VsZi0+eyRwYXJ0fX0sIEAkdmFsdWU7CisJfSBlbHNlIHsKKwkgICAgcHVzaCBAeyRzZWxmLT57JHBhcnR9fSwgJHZhbHVlOworCX0KKyAgICB9IGVsc2UgeworCWlmIChkZWZpbmVkKCRzZWxmLT57JHBhcnR9KSkgeworCSAgICBpZiAocmVmKCR2YWx1ZSkpIHsKKwkJJHNlbGYtPnskcGFydH0gPSBbICRzZWxmLT57JHBhcnR9LCBAJHZhbHVlIF07CisJICAgIH0gZWxzZSB7CisJCSRzZWxmLT57JHBhcnR9IC49ICR2YWx1ZTsKKwkgICAgfQorCX0gZWxzZSB7CisJICAgICRzZWxmLT57JHBhcnR9ID0gJHZhbHVlOworCX0KKyAgICB9Cit9CisKKz1pdGVtICRpc19lbXB0eSA9ICRlbnRyeS0+aXNfZW1wdHkoKQorCitSZXR1cm5zIDEgaWYgdGhlIGNoYW5nZWxvZyBlbnRyeSBkb2Vzbid0IGNvbnRhaW4gYW55dGhpbmcgYXQgYWxsLgorUmV0dXJucyAwIGFzIHNvb24gYXMgaXQgY29udGFpbnMgc29tZXRoaW5nIGluIGFueSBvZiBpdHMgbm9uLWJsYW5rCitwYXJ0cy4KKworPWN1dAorCitzdWIgaXNfZW1wdHkgeworICAgIG15ICgkc2VsZikgPSBAXzsKKyAgICByZXR1cm4gIShkZWZpbmVkKCRzZWxmLT57aGVhZGVyfSkgfHwgZGVmaW5lZCgkc2VsZi0+e3RyYWlsZXJ9KSB8fAorCSAgICAgc2NhbGFyKEB7JHNlbGYtPntjaGFuZ2VzfX0pKTsKK30KKworPWl0ZW0gJGVudHJ5LT5ub3JtYWxpemUoKQorCitOb3JtYWxpemUgdGhlIGNvbnRlbnQuIFN0cmlwIHdoaXRlc3BhY2VzIGF0IGVuZCBvZiBsaW5lcywgdXNlIGEgc2luZ2xlCitlbXB0eSBsaW5lIHRvIHNlcGFyYXRlIGVhY2ggcGFydC4KKworPWN1dAorCitzdWIgbm9ybWFsaXplIHsKKyAgICBteSAoJHNlbGYpID0gQF87CisgICAgaWYgKGRlZmluZWQoJHNlbGYtPntoZWFkZXJ9KSkgeworCSRzZWxmLT57aGVhZGVyfSA9fiBzL1xzKyQvL2c7CisJJHNlbGYtPntibGFua19hZnRlcl9oZWFkZXJ9ID0gWycnXTsKKyAgICB9IGVsc2UgeworCSRzZWxmLT57YmxhbmtfYWZ0ZXJfaGVhZGVyfSA9IFtdOworICAgIH0KKyAgICBpZiAoc2NhbGFyKEB7JHNlbGYtPntjaGFuZ2VzfX0pKSB7CisJcy9ccyskLy9nIGZvcmVhY2ggQHskc2VsZi0+e2NoYW5nZXN9fTsKKwkkc2VsZi0+e2JsYW5rX2FmdGVyX2NoYW5nZXN9ID0gWycnXTsKKyAgICB9IGVsc2UgeworCSRzZWxmLT57YmxhbmtfYWZ0ZXJfY2hhbmdlc30gPSBbXTsKKyAgICB9CisgICAgaWYgKGRlZmluZWQoJHNlbGYtPnt0cmFpbGVyfSkpIHsKKwkkc2VsZi0+e3RyYWlsZXJ9ID1+IHMvXHMrJC8vZzsKKwkkc2VsZi0+e2JsYW5rX2FmdGVyX3RyYWlsZXJ9ID0gWycnXTsKKyAgICB9IGVsc2UgeworCSRzZWxmLT57YmxhbmtfYWZ0ZXJfdHJhaWxlcn0gPSBbXTsKKyAgICB9Cit9CisKKz1pdGVtIG15ICRzcmMgPSAkZW50cnktPmdldF9zb3VyY2UoKQorCitSZXR1cm4gdGhlIG5hbWUgb2YgdGhlIHNvdXJjZSBwYWNrYWdlIGFzc29jaWF0ZWQgdG8gdGhlIGNoYW5nZWxvZyBlbnRyeS4KKworPWN1dAorCitzdWIgZ2V0X3NvdXJjZSB7CisgICAgcmV0dXJuIHVuZGVmOworfQorCis9aXRlbSBteSAkdmVyID0gJGVudHJ5LT5nZXRfdmVyc2lvbigpCisKK1JldHVybiB0aGUgdmVyc2lvbiBhc3NvY2lhdGVkIHRvIHRoZSBjaGFuZ2Vsb2cgZW50cnkuCisKKz1jdXQKKworc3ViIGdldF92ZXJzaW9uIHsKKyAgICByZXR1cm4gdW5kZWY7Cit9CisKKz1pdGVtIG15IEBkaXN0cyA9ICRlbnRyeS0+Z2V0X2Rpc3RyaWJ1dGlvbnMoKQorCitSZXR1cm4gYSBsaXN0IG9mIHRhcmdldCBkaXN0cmlidXRpb25zIGZvciB0aGlzIHZlcnNpb24uCisKKz1jdXQKKworc3ViIGdldF9kaXN0cmlidXRpb25zIHsKKyAgICByZXR1cm4gKCkgaWYgd2FudGFycmF5OworICAgIHJldHVybiB1bmRlZjsKK30KKworPWl0ZW0gJGZpZWxkcyA9ICRlbnRyeS0+Z2V0X29wdGlvbmFsX2ZpZWxkcygpCisKK1JldHVybiBhIHNldCBvZiBvcHRpb25hbCBmaWVsZHMgZXhwb3NlZCBieSB0aGUgY2hhbmdlbG9nIGVudHJ5LgorSXQgYWx3YXlzIHJldHVybnMgYSBEcGtnOjpDb250cm9sIG9iamVjdCAocG9zc2libHkgZW1wdHkgdGhvdWdoKS4KKworPWN1dAorCitzdWIgZ2V0X29wdGlvbmFsX2ZpZWxkcyB7CisgICAgcmV0dXJuIERwa2c6OkNvbnRyb2w6OkNoYW5nZWxvZy0+bmV3KCk7Cit9CisKKz1pdGVtICR1cmdlbmN5ID0gJGVudHJ5LT5nZXRfdXJnZW5jeSgpCisKK1JldHVybiB0aGUgdXJnZW5jeSBvZiB0aGUgYXNzb2NpYXRlZCB1cGxvYWQuCisKKz1jdXQKKworc3ViIGdldF91cmdlbmN5IHsKKyAgICByZXR1cm4gdW5kZWY7Cit9CisKKz1pdGVtIG15ICRtYWludCA9ICRlbnRyeS0+Z2V0X21haW50YWluZXIoKQorCitSZXR1cm4gdGhlIHN0cmluZyBpZGVudGlmeWluZyB0aGUgcGVyc29uIHdobyBzaWduZWQgdGhpcyBjaGFuZ2Vsb2cgZW50cnkuCisKKz1jdXQKKworc3ViIGdldF9tYWludGFpbmVyIHsKKyAgICByZXR1cm4gdW5kZWY7Cit9CisKKz1pdGVtIG15ICR0aW1lID0gJGVudHJ5LT5nZXRfdGltZXN0YW1wKCkKKworUmV0dXJuIHRoZSB0aW1lc3RhbXAgb2YgdGhlIGNoYW5nZWxvZyBlbnRyeS4KKworPWN1dAorCitzdWIgZ2V0X3RpbWVzdGFtcCB7CisgICAgcmV0dXJuIHVuZGVmOworfQorCis9aXRlbSBteSAkc3RyID0gJGVudHJ5LT5nZXRfZHBrZ19jaGFuZ2VzKCkKKworUmV0dXJucyBhIHN0cmluZyB0aGF0IGlzIHN1aXRhYmxlIGZvciB1c2FnZSBpbiBhIEM8Q2hhbmdlcz4gZmllbGQKK2luIHRoZSBvdXRwdXQgZm9ybWF0IG9mIEM8ZHBrZy1wYXJzZWNoYW5nZWxvZz4uCisKKz1jdXQKKworc3ViIGdldF9kcGtnX2NoYW5nZXMgeworICAgIG15ICgkc2VsZikgPSBAXzsKKyAgICBteSAkaGVhZGVyID0gJHNlbGYtPmdldF9wYXJ0KCJoZWFkZXIiKSB8fCAiIjsKKyAgICAkaGVhZGVyID1+IHMvXHMrJC8vOworICAgIHJldHVybiAiXG4kaGVhZGVyXG5cbiIgLiBqb2luKCJcbiIsIEB7JHNlbGYtPmdldF9wYXJ0KCJjaGFuZ2VzIil9KTsKK30KKworPWJhY2sKKworPWhlYWQxIEFVVEhPUgorCitSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+LgorCis9Y3V0CisKKzE7CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRW50cnkvRGViaWFuLnBtIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0VudHJ5L0RlYmlhbi5wbQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zNjA3YzdhCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0VudHJ5L0RlYmlhbi5wbQpAQCAtMCwwICsxLDI3OCBAQAorIyBDb3B5cmlnaHQgwqkgMjAwOSBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisjCisjIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisjIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisjIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisjIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisjCisjIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisjIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisjCisjIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisjIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorCitwYWNrYWdlIERwa2c6OkNoYW5nZWxvZzo6RW50cnk6OkRlYmlhbjsKKwordXNlIHN0cmljdDsKK3VzZSB3YXJuaW5nczsKKworb3VyICRWRVJTSU9OID0gIjEuMDAiOworCit1c2UgRXhwb3J0ZXI7Cit1c2UgRHBrZzo6Q2hhbmdlbG9nOjpFbnRyeTsKK3VzZSBiYXNlIHF3KEV4cG9ydGVyIERwa2c6OkNoYW5nZWxvZzo6RW50cnkpOworb3VyIEBFWFBPUlRfT0sgPSBxdygkcmVnZXhfaGVhZGVyICRyZWdleF90cmFpbGVyIGZpbmRfY2xvc2VzKTsKKwordXNlIERhdGU6OlBhcnNlOworCit1c2UgRHBrZzo6R2V0dGV4dDsKK3VzZSBEcGtnOjpDb250cm9sOjpDaGFuZ2Vsb2c7Cit1c2UgRHBrZzo6VmVyc2lvbjsKKworPWVuY29kaW5nIHV0ZjgKKworPWhlYWQxIE5BTUUKKworRHBrZzo6Q2hhbmdlbG9nOjpFbnRyeTo6RGViaWFuIC0gcmVwcmVzZW50cyBhIERlYmlhbiBjaGFuZ2Vsb2cgZW50cnkKKworPWhlYWQxIERFU0NSSVBUSU9OCisKK1RoaXMgb2JqZWN0IHJlcHJlc2VudHMgYSBEZWJpYW4gY2hhbmdlbG9nIGVudHJ5LiBJdCBpbXBsZW1lbnRzIHRoZQorZ2VuZXJpYyBpbnRlcmZhY2UgRHBrZzo6Q2hhbmdlbG9nOjpFbnRyeS4gT25seSBmdW5jdGlvbnMgc3BlY2lmaWMgdG8gdGhpcworaW1wbGVtZW50YXRpb24gYXJlIGRlc2NyaWJlZCBiZWxvdy4KKworPWhlYWQxIFZBUklBQkxFUworCiskcmVnZXhfaGVhZGVyLCAkcmVnZXhfdHJhaWxlciBhcmUgdHdvIHJlZ3VsYXIgZXhwcmVzc2lvbnMgdGhhdCBjYW4gYmUgdXNlZAordG8gbWF0Y2ggYSBsaW5lIGFuZCBrbm93IHdoZXRoZXIgaXQncyBhIHZhbGlkIGhlYWRlci90cmFpbGVyIGxpbmUuCisKK1RoZSBtYXRjaGVkIGNvbnRlbnQgZm9yICRyZWdleF9oZWFkZXIgaXMgdGhlIHNvdXJjZSBwYWNrYWdlIG5hbWUgKCQxKSwgdGhlCit2ZXJzaW9uICgkMiksIHRoZSB0YXJnZXQgZGlzdHJpYnV0aW9ucyAoJDMpIGFuZCB0aGUgb3B0aW9ucyBvbiB0aGUgcmVzdAorb2YgdGhlIGxpbmUgKCQ0KS4gRm9yICRyZWdleF90cmFpbGVyLCBpdCdzIHRoZSBtYWludGFpbmVyIG5hbWUgKCQxKSwgaXRzCitlbWFpbCAoJDIpLCBzb21lIGJsYW5rcyAoJDMpIGFuZCB0aGUgdGltZXN0YW1wICgkNCkuCisKKz1jdXQKKworbXkgJG5hbWVfY2hhcnMgPSBxci9bLSswLTlhLXouXS9pOworb3VyICRyZWdleF9oZWFkZXIgPSBxci9eKFx3JG5hbWVfY2hhcnMqKSBcKChbXlwoXCkgXHRdKylcKSgoPzpccyskbmFtZV9jaGFycyspKylcOyguKj8pXHMqJC9pOworb3VyICRyZWdleF90cmFpbGVyID0gcXIvXiBcLVwtICguKikgPCguKik+KCAgPykoKFx3K1wsXHMqKT9cZHsxLDJ9XHMrXHcrXHMrXGR7NH1ccytcZHsxLDJ9OlxkXGQ6XGRcZFxzK1stK11cZHs0fShccytcKFteXFxcKFwpXVwpKT8pXHMqJC9vOworCis9aGVhZDEgRlVOQ1RJT05TCisKKz1vdmVyIDQKKworPWl0ZW0gbXkgQGl0ZW1zID0gJGVudHJ5LT5nZXRfY2hhbmdlX2l0ZW1zKCkKKworUmV0dXJuIGEgbGlzdCBvZiBjaGFuZ2UgaXRlbXMuIEVhY2ggaXRlbSBjb250YWlucyBhdCBsZWFzdCBvbmUgbGluZS4KK0EgY2hhbmdlIGxpbmUgc3RhcnRpbmcgd2l0aCBhbiBhc3RlcmlzayBkZW5vdGVzIHRoZSBzdGFydCBvZiBhIG5ldyBpdGVtLgorQW55IGNoYW5nZSBsaW5lIGxpa2UgIlsgUmFwaGHDq2wgSGVydHpvZyBdIiBpcyB0cmVhdGVkIGxpa2UgYW4gaXRlbSBvZiBpdHMKK293biBldmVuIGlmIGl0IHN0YXJ0cyBhIHNldCBvZiBpdGVtcyBhdHRyaWJ1dGVkIHRvIHRoaXMgcGVyc29uICh0aGUKK2ZvbGxvd2luZyBsaW5lIG5lY2Vzc2FyaWx5IHN0YXJ0cyBhIG5ldyBpdGVtKS4KKworPWN1dAorCitzdWIgZ2V0X2NoYW5nZV9pdGVtcyB7CisgICAgbXkgKCRzZWxmKSA9IEBfOworICAgIG15IChAaXRlbXMsIEBibGFua3MsICRpdGVtKTsKKyAgICBmb3JlYWNoIG15ICRsaW5lIChAeyRzZWxmLT5nZXRfcGFydCgiY2hhbmdlcyIpfSkgeworCWlmICgkbGluZSA9fiAvXlxzKlwqLykgeworCSAgICBwdXNoIEBpdGVtcywgJGl0ZW0gaWYgZGVmaW5lZCAkaXRlbTsKKwkgICAgJGl0ZW0gPSAiJGxpbmVcbiI7CisJfSBlbHNpZiAoJGxpbmUgPX4gL15ccypcW1xzW15cXV0rXHNcXVxzKiQvKSB7CisJICAgIHB1c2ggQGl0ZW1zLCAkaXRlbSBpZiBkZWZpbmVkICRpdGVtOworCSAgICBwdXNoIEBpdGVtcywgIiRsaW5lXG4iOworCSAgICAkaXRlbSA9IHVuZGVmOworCSAgICBAYmxhbmtzID0gKCk7CisJfSBlbHNpZiAoJGxpbmUgPX4gL15ccyokLykgeworCSAgICBwdXNoIEBibGFua3MsICIkbGluZVxuIjsKKwl9IGVsc2UgeworCSAgICBpZiAoZGVmaW5lZCAkaXRlbSkgeworCQkkaXRlbSAuPSAiQGJsYW5rcyRsaW5lXG4iOworCSAgICB9IGVsc2UgeworCQkkaXRlbSA9ICIkbGluZVxuIjsKKwkgICAgfQorCSAgICBAYmxhbmtzID0gKCk7CisJfQorICAgIH0KKyAgICBwdXNoIEBpdGVtcywgJGl0ZW0gaWYgZGVmaW5lZCAkaXRlbTsKKyAgICByZXR1cm4gQGl0ZW1zOworfQorCis9aXRlbSBteSBAZXJyb3JzID0gJGVudHJ5LT5jaGVja19oZWFkZXIoKQorCis9aXRlbSBteSBAZXJyb3JzID0gJGVudHJ5LT5jaGVja190cmFpbGVyKCkKKworUmV0dXJuIGEgbGlzdCBvZiBlcnJvcnMuIEVhY2ggaXRlbSBpbiB0aGUgbGlzdCBpcyBhbiBlcnJvciBtZXNzYWdlCitkZXNjcmliaW5nIHRoZSBwcm9ibGVtLiBJZiB0aGUgZW1wdHkgbGlzdCBpcyByZXR1cm5lZCwgbm8gZXJyb3JzCitoYXZlIGJlZW4gZm91bmQuCisKKz1jdXQKKworc3ViIGNoZWNrX2hlYWRlciB7CisgICAgbXkgKCRzZWxmKSA9IEBfOworICAgIG15IEBlcnJvcnM7CisgICAgaWYgKGRlZmluZWQoJHNlbGYtPntoZWFkZXJ9KSBhbmQgJHNlbGYtPntoZWFkZXJ9ID1+ICRyZWdleF9oZWFkZXIpIHsKKwlteSAkb3B0aW9ucyA9ICQ0OworCSRvcHRpb25zID1+IHMvXlxzKy8vOworCW15ICVvcHRkb25lOworCWZvcmVhY2ggbXkgJG9wdCAoc3BsaXQoL1xzKixccyovLCAkb3B0aW9ucykpIHsKKwkgICAgdW5sZXNzICgkb3B0ID1+IG0vXihbLTAtOWEtel0rKVw9XHMqKC4qXFMpJC9pKSB7CisJCXB1c2ggQGVycm9ycywgc3ByaW50ZihfZygiYmFkIGtleS12YWx1ZSBhZnRlciBcYDsnOiBcYCVzJyIpLCAkb3B0KTsKKwkJbmV4dDsKKwkgICAgfQorCSAgICBteSAoJGssICR2KSA9ICh1Y2ZpcnN0KCQxKSwgJDIpOworCSAgICBpZiAoJG9wdGRvbmV7JGt9KSB7CisJCXB1c2ggQGVycm9ycywgc3ByaW50ZihfZygicmVwZWF0ZWQga2V5LXZhbHVlICVzIiksICRrKTsKKwkgICAgfQorCSAgICAkb3B0ZG9uZXska30gPSAxOworCSAgICBpZiAoJGsgZXEgJ1VyZ2VuY3knKSB7CisJCXB1c2ggQGVycm9ycywgc3ByaW50ZihfZygiYmFkbHkgZm9ybWF0dGVkIHVyZ2VuY3kgdmFsdWU6ICVzIiksICR2KQorCQkgICAgdW5sZXNzICgkdiA9fiBtL14oWy0wLTlhLXpdKykoKFxzKy4qKT8pJC9pKTsKKwkgICAgfSBlbHNpZiAoJGsgPX4gbS9eWFtCQ1NdKy0vaSkgeworCSAgICB9IGVsc2UgeworCQlwdXNoIEBlcnJvcnMsIHNwcmludGYoX2coInVua25vd24ga2V5LXZhbHVlICVzIiksICRrKTsKKwkgICAgfQorCX0KKyAgICB9IGVsc2UgeworCXB1c2ggQGVycm9ycywgX2coInRoZSBoZWFkZXIgZG9lc24ndCBtYXRjaCB0aGUgZXhwZWN0ZWQgcmVnZXgiKTsKKyAgICB9CisgICAgcmV0dXJuIEBlcnJvcnM7Cit9CisKK3N1YiBjaGVja190cmFpbGVyIHsKKyAgICBteSAoJHNlbGYpID0gQF87CisgICAgbXkgQGVycm9yczsKKyAgICBpZiAoZGVmaW5lZCgkc2VsZi0+e3RyYWlsZXJ9KSBhbmQgJHNlbGYtPnt0cmFpbGVyfSA9fiAkcmVnZXhfdHJhaWxlcikgeworCWlmICgkMyBuZSAnICAnKSB7CisJICAgIHB1c2ggQGVycm9ycywgX2coImJhZGx5IGZvcm1hdHRlZCB0cmFpbGVyIGxpbmUiKTsKKwl9CisJdW5sZXNzIChkZWZpbmVkIHN0cjJ0aW1lKCQ0KSkgeworCSAgICBwdXNoIEBlcnJvcnMsIHNwcmludGYoX2coImNvdWxkbid0IHBhcnNlIGRhdGUgJXMiKSwgJDQpOworCX0KKyAgICB9IGVsc2UgeworCXB1c2ggQGVycm9ycywgX2coInRoZSB0cmFpbGVyIGRvZXNuJ3QgbWF0Y2ggdGhlIGV4cGVjdGVkIHJlZ2V4Iik7CisgICAgfQorICAgIHJldHVybiBAZXJyb3JzOworfQorCis9aXRlbSAkZW50cnktPm5vcm1hbGl6ZSgpCisKK05vcm1hbGl6ZSB0aGUgY29udGVudC4gU3RyaXAgd2hpdGVzcGFjZXMgYXQgZW5kIG9mIGxpbmVzLCB1c2UgYSBzaW5nbGUKK2VtcHR5IGxpbmUgdG8gc2VwYXJhdGUgZWFjaCBwYXJ0LgorCis9Y3V0CisKK3N1YiBub3JtYWxpemUgeworICAgIG15ICgkc2VsZikgPSBAXzsKKyAgICAkc2VsZi0+U1VQRVI6Om5vcm1hbGl6ZSgpOworICAgICNYWFg6IHJlY3JlYXRlIGhlYWRlci90cmFpbGVyCit9CisKK3N1YiBnZXRfc291cmNlIHsKKyAgICBteSAoJHNlbGYpID0gQF87CisgICAgaWYgKGRlZmluZWQoJHNlbGYtPntoZWFkZXJ9KSBhbmQgJHNlbGYtPntoZWFkZXJ9ID1+ICRyZWdleF9oZWFkZXIpIHsKKwlyZXR1cm4gJDE7CisgICAgfQorICAgIHJldHVybiB1bmRlZjsKK30KKworc3ViIGdldF92ZXJzaW9uIHsKKyAgICBteSAoJHNlbGYpID0gQF87CisgICAgaWYgKGRlZmluZWQoJHNlbGYtPntoZWFkZXJ9KSBhbmQgJHNlbGYtPntoZWFkZXJ9ID1+ICRyZWdleF9oZWFkZXIpIHsKKwlyZXR1cm4gRHBrZzo6VmVyc2lvbi0+bmV3KCQyKTsKKyAgICB9CisgICAgcmV0dXJuIHVuZGVmOworfQorCitzdWIgZ2V0X2Rpc3RyaWJ1dGlvbnMgeworICAgIG15ICgkc2VsZikgPSBAXzsKKyAgICBpZiAoZGVmaW5lZCgkc2VsZi0+e2hlYWRlcn0pIGFuZCAkc2VsZi0+e2hlYWRlcn0gPX4gJHJlZ2V4X2hlYWRlcikgeworCW15ICR2YWx1ZSA9ICQzOworCSR2YWx1ZSA9fiBzL15ccysvLzsKKwlteSBAZGlzdHMgPSBzcGxpdCgvXHMrLywgJHZhbHVlKTsKKwlyZXR1cm4gQGRpc3RzIGlmIHdhbnRhcnJheTsKKwlyZXR1cm4gJGRpc3RzWzBdOworICAgIH0KKyAgICByZXR1cm4gKCkgaWYgd2FudGFycmF5OworICAgIHJldHVybiB1bmRlZjsKK30KKworc3ViIGdldF9vcHRpb25hbF9maWVsZHMgeworICAgIG15ICgkc2VsZikgPSBAXzsKKyAgICBteSAkZiA9IERwa2c6OkNvbnRyb2w6OkNoYW5nZWxvZy0+bmV3KCk7CisgICAgaWYgKGRlZmluZWQoJHNlbGYtPntoZWFkZXJ9KSBhbmQgJHNlbGYtPntoZWFkZXJ9ID1+ICRyZWdleF9oZWFkZXIpIHsKKwlteSAkb3B0aW9ucyA9ICQ0OworCSRvcHRpb25zID1+IHMvXlxzKy8vOworCWZvcmVhY2ggbXkgJG9wdCAoc3BsaXQoL1xzKixccyovLCAkb3B0aW9ucykpIHsKKwkgICAgaWYgKCRvcHQgPX4gbS9eKFstMC05YS16XSspXD1ccyooLipcUykkL2kpIHsKKwkJJGYtPnskMX0gPSAkMjsKKwkgICAgfQorCX0KKyAgICB9CisgICAgbXkgQGNsb3NlcyA9IGZpbmRfY2xvc2VzKGpvaW4oIlxuIiwgQHskc2VsZi0+e2NoYW5nZXN9fSkpOworICAgIGlmIChAY2xvc2VzKSB7CisJJGYtPntDbG9zZXN9ID0gam9pbigiICIsIEBjbG9zZXMpOworICAgIH0KKyAgICByZXR1cm4gJGY7Cit9CisKK3N1YiBnZXRfdXJnZW5jeSB7CisgICAgbXkgKCRzZWxmKSA9IEBfOworICAgIG15ICRmID0gJHNlbGYtPmdldF9vcHRpb25hbF9maWVsZHMoKTsKKyAgICBpZiAoZXhpc3RzICRmLT57VXJnZW5jeX0pIHsKKwkkZi0+e1VyZ2VuY3l9ID1+IHMvXHMuKiQvLzsKKwlyZXR1cm4gbGMoJGYtPntVcmdlbmN5fSk7CisgICAgfQorICAgIHJldHVybiB1bmRlZjsKK30KKworc3ViIGdldF9tYWludGFpbmVyIHsKKyAgICBteSAoJHNlbGYpID0gQF87CisgICAgaWYgKGRlZmluZWQoJHNlbGYtPnt0cmFpbGVyfSkgYW5kICRzZWxmLT57dHJhaWxlcn0gPX4gJHJlZ2V4X3RyYWlsZXIpIHsKKwlyZXR1cm4gIiQxIDwkMj4iOworICAgIH0KKyAgICByZXR1cm4gdW5kZWY7Cit9CisKK3N1YiBnZXRfdGltZXN0YW1wIHsKKyAgICBteSAoJHNlbGYpID0gQF87CisgICAgaWYgKGRlZmluZWQoJHNlbGYtPnt0cmFpbGVyfSkgYW5kICRzZWxmLT57dHJhaWxlcn0gPX4gJHJlZ2V4X3RyYWlsZXIpIHsKKwlyZXR1cm4gJDQ7CisgICAgfQorICAgIHJldHVybiB1bmRlZjsKK30KKworPWJhY2sKKworPWhlYWQxIFVUSUxJVFkgRlVOQ1RJT05TCisKKz1oZWFkMyBteSBAY2xvc2VkX2J1Z3MgPSBmaW5kX2Nsb3NlcygkY2hhbmdlcykKKworVGFrZXMgb25lIHN0cmluZyBhcyBhcmd1bWVudCBhbmQgZmluZHMgIkNsb3NlczogIzEyMzQ1NiwgIzY1NDMyMSIgc3RhdGVtZW50cworYXMgc3VwcG9ydGVkIGJ5IHRoZSBEZWJpYW4gQXJjaGl2ZSBzb2Z0d2FyZSBpbiBpdC4gUmV0dXJucyBhbGwgY2xvc2VkIGJ1ZworbnVtYmVycyBpbiBhbiBhcnJheS4KKworPWN1dAorCitzdWIgZmluZF9jbG9zZXMgeworICAgIG15ICRjaGFuZ2VzID0gc2hpZnQ7CisgICAgbXkgJWNsb3NlczsKKworICAgIHdoaWxlICgkY2hhbmdlcyAmJgorICAgICAgICAgICAoJGNoYW5nZXMgPX4gL2Nsb3NlczpccyooPzpidWcpP1wjP1xzP1xkKyg/OixccyooPzpidWcpP1wjP1xzP1xkKykqL2lnKSkgeworICAgICAgICAkY2xvc2VzeyRffSA9IDEgZm9yZWFjaCgkJiA9fiAvXCM/XHM/KFxkKykvZyk7CisgICAgfQorCisgICAgbXkgQGNsb3NlcyA9IHNvcnQgeyAkYSA8PT4gJGIgfSBrZXlzICVjbG9zZXM7CisgICAgcmV0dXJuIEBjbG9zZXM7Cit9CisKKz1oZWFkMSBBVVRIT1IKKworUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPi4KKworPWN1dAorCisxOwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL1BhcnNlLnBtIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL1BhcnNlLnBtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjM5OTAzM2YKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvUGFyc2UucG0KQEAgLTAsMCArMSwxNjMgQEAKKyMgQ29weXJpZ2h0IMKpIDIwMDUsIDIwMDcgRnJhbmsgTGljaHRlbmhlbGQgPGZyYW5rQGxpY2h0ZW5oZWxkLmRlPgorIyBDb3B5cmlnaHQgwqkgMjAwOSAgICAgICBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisjCisjICAgIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisjICAgIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisjICAgIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisjICAgIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisjCisjICAgIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorIyAgICBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorIyAgICBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisjICAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisjCisjICAgIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisjICAgIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorCis9ZW5jb2RpbmcgdXRmOAorCis9aGVhZDEgTkFNRQorCitEcGtnOjpDaGFuZ2Vsb2c6OlBhcnNlIC0gZ2VuZXJpYyBjaGFuZ2Vsb2cgcGFyc2VyIGZvciBkcGtnLXBhcnNlY2hhbmdlbG9nCisKKz1oZWFkMSBERVNDUklQVElPTgorCitUaGlzIG1vZHVsZSBwcm92aWRlcyBhIHNpbmdsZSBmdW5jdGlvbiBjaGFuZ2Vsb2dfcGFyc2UoKSB3aGljaCByZXByb2R1Y2VzCithbGwgdGhlIGZlYXR1cmVzIG9mIGRwa2ctcGFyc2VjaGFuZ2Vsb2cuCisKKz1oZWFkMiBGdW5jdGlvbnMKKworPWN1dAorCitwYWNrYWdlIERwa2c6OkNoYW5nZWxvZzo6UGFyc2U7CisKK3VzZSBzdHJpY3Q7Cit1c2Ugd2FybmluZ3M7CisKK291ciAkVkVSU0lPTiA9ICIxLjAwIjsKKwordXNlIERwa2c7ICMgZm9yICRkcGtnbGliZGlyCit1c2UgRHBrZzo6R2V0dGV4dDsKK3VzZSBEcGtnOjpFcnJvckhhbmRsaW5nOwordXNlIERwa2c6OkNvbnRyb2w6OkNoYW5nZWxvZzsKKwordXNlIGJhc2UgcXcoRXhwb3J0ZXIpOworb3VyIEBFWFBPUlQgPSBxdyhjaGFuZ2Vsb2dfcGFyc2UpOworCis9aGVhZDMgbXkgJGZpZWxkcyA9IGNoYW5nZWxvZ19wYXJzZSglb3B0KQorCitUaGlzIGZ1bmN0aW9uIHdpbGwgcGFyc2UgYSBjaGFuZ2Vsb2cuIEluIGxpc3QgY29udGV4dCwgaXQgcmV0dXJuIGFzIG1hbnkKK0Rwa2c6OkNvbnRyb2wgb2JqZWN0IGFzIHRoZSBwYXJzZXIgZGlkIG91dHB1dC4gSW4gc2NhbGFyIGNvbnRleHQsIGl0IHdpbGwKK3JldHVybiBvbmx5IHRoZSBmaXJzdCBvbmUuIElmIHRoZSBwYXJzZXIgZGlkbid0IHJldHVybiBhbnkgZGF0YSwgaXQgd2lsbAorcmV0dXJuIGFuIGVtcHR5IGluIGxpc3QgY29udGV4dCBvciB1bmRlZiBvbiBzY2FsYXIgY29udGV4dC4gSWYgdGhlIHBhcnNlcgorZmFpbGVkLCBpdCB3aWxsIGRpZS4KKworVGhlIHBhcnNpbmcgaXRzZWxmIGlzIGRvbmUgYnkgYW4gZXh0ZXJuYWwgcHJvZ3JhbSAoc2VhcmNoZWQgaW4gdGhlCitmb2xsb3dpbmcgbGlzdCBvZiBkaXJlY3RvcmllczogJG9wdHtsaWJkaXJ9LAorL3Vzci9sb2NhbC9saWIvZHBrZy9wYXJzZWNoYW5nZWxvZywgL3Vzci9saWIvZHBrZy9wYXJzZWNoYW5nZWxvZykgVGhhdAorcHJvZ3JhbSBpcyBuYW1lZCBhY2NvcmRpbmcgdG8gdGhlIGZvcm1hdCB0aGF0IGl0J3MgYWJsZSB0byBwYXJzZS4gQnkKK2RlZmF1bHQgaXQncyBlaXRoZXIgImRlYmlhbiIgb3IgdGhlIGZvcm1hdCBuYW1lIGxvb2tlcCB1cCBpbiB0aGUgNDAgbGFzdAorbGluZXMgb2YgdGhlIGNoYW5nZWxvZyBpdHNlbGYgKGV4dHJhY3RlZCB3aXRoIHRoaXMgcGVybCByZWd1bGFyIGV4cHJlc3Npb24KKyJcc2NoYW5nZWxvZy1mb3JtYXQ6XHMrKFswLTlhLXpdKylcVyIpLiBCdXQgaXQgY2FuIGJlIG92ZXJyaWRkZW4KK3dpdGggJG9wdHtjaGFuZ2Vsb2dmb3JtYXR9LiBUaGUgcHJvZ3JhbSBleHBlY3RzIHRoZSBjb250ZW50IG9mIHRoZQorY2hhbmdlbG9nIGZpbGUgb24gaXRzIHN0YW5kYXJkIGlucHV0LgorCitUaGUgY2hhbmdlbG9nIGZpbGUgdGhhdCBpcyBwYXJzZWQgaXMgZGViaWFuL2NoYW5nZWxvZyBieSBkZWZhdWx0IGJ1dCBpdAorY2FuIGJlIG92ZXJyaWRkZW4gd2l0aCAkb3B0e2ZpbGV9LgorCitBbGwgdGhlIG90aGVyIGtleXMgaW4gJW9wdCBhcmUgZm9yd2FyZGVkIGFzIHBhcmFtZXRlciB0byB0aGUgZXh0ZXJuYWwKK3BhcnNlci4gSWYgdGhlIGtleSBzdGFydHMgd2l0aCAiLSIsIGl0J3MgcGFzc2VkIGFzIGlzLiBJZiBub3QsIGl0J3MgcGFzc2VkCithcyAiLS08a2V5PiIuIElmIHRoZSB2YWx1ZSBvZiB0aGUgY29ycmVzcG9uZGluZyBoYXNoIGVudHJ5IGlzIGRlZmluZWQsIHRoZW4KK2l0J3MgcGFzc2VkIGFzIHRoZSBwYXJhbWV0ZXIgdGhhdCBmb2xsb3dzLgorCis9Y3V0CisKK3N1YiBjaGFuZ2Vsb2dfcGFyc2UgeworICAgIG15ICglb3B0aW9ucykgPSBAXzsKKyAgICBteSBAcGFyc2VycGF0aCA9ICgiL3Vzci9sb2NhbC9saWIvZHBrZy9wYXJzZWNoYW5nZWxvZyIsCisgICAgICAgICAgICAgICAgICAgICAgIiRkcGtnbGliZGlyL3BhcnNlY2hhbmdlbG9nIiwKKyAgICAgICAgICAgICAgICAgICAgICAiL3Vzci9saWIvZHBrZy9wYXJzZWNoYW5nZWxvZyIpOworICAgIG15ICRmb3JtYXQgPSAiZGViaWFuIjsKKyAgICBteSAkY2hhbmdlbG9nZmlsZSA9ICJkZWJpYW4vY2hhbmdlbG9nIjsKKyAgICBteSAkZm9yY2UgPSAwOworCisgICAgIyBFeHRyYWN0IGFuZCByZW1vdmUgb3B0aW9ucyB0aGF0IGRvIG5vdCBjb25jZXJuIHRoZSBjaGFuZ2Vsb2cgcGFyc2VyCisgICAgIyBpdHNlbGYgKGFuZCB0aGF0IHdlIHNob3VsZG4ndCBmb3J3YXJkKQorICAgIGlmIChleGlzdHMgJG9wdGlvbnN7ImxpYmRpciJ9KSB7CisJdW5zaGlmdCBAcGFyc2VycGF0aCwgJG9wdGlvbnN7ImxpYmRpciJ9OworCWRlbGV0ZSAkb3B0aW9uc3sibGliZGlyIn07CisgICAgfQorICAgIGlmIChleGlzdHMgJG9wdGlvbnN7ImZpbGUifSkgeworCSRjaGFuZ2Vsb2dmaWxlID0gJG9wdGlvbnN7ImZpbGUifTsKKwlkZWxldGUgJG9wdGlvbnN7ImZpbGUifTsKKyAgICB9CisgICAgaWYgKGV4aXN0cyAkb3B0aW9uc3siY2hhbmdlbG9nZm9ybWF0In0pIHsKKwkkZm9ybWF0ID0gJG9wdGlvbnN7ImNoYW5nZWxvZ2Zvcm1hdCJ9OworCWRlbGV0ZSAkb3B0aW9uc3siY2hhbmdlbG9nZm9ybWF0In07CisJJGZvcmNlID0gMTsKKyAgICB9CisKKyAgICAjIEV4dHJhY3QgdGhlIGZvcm1hdCBmcm9tIHRoZSBjaGFuZ2Vsb2cgZmlsZSBpZiBwb3NzaWJsZQorICAgIHVubGVzcygkZm9yY2Ugb3IgKCRjaGFuZ2Vsb2dmaWxlIGVxICItIikpIHsKKwlvcGVuKFAsICItfCIsICJ0YWlsIiwgIi1uIiwgIjQwIiwgJGNoYW5nZWxvZ2ZpbGUpOworCXdoaWxlKDxQPikgeworCSAgICAkZm9ybWF0ID0gJDEgaWYgbS9cc2NoYW5nZWxvZy1mb3JtYXQ6XHMrKFswLTlhLXpdKylcVy87CisJfQorCWNsb3NlKFApIG9yIHN1YnByb2NlcnIoX2coInRhaWwgb2YgJXMiKSwgJGNoYW5nZWxvZ2ZpbGUpOworICAgIH0KKworICAgICMgRmluZCB0aGUgcmlnaHQgY2hhbmdlbG9nIHBhcnNlcgorICAgIG15ICRwYXJzZXI7CisgICAgZm9yZWFjaCBteSAkZGlyIChAcGFyc2VycGF0aCkgeworICAgICAgICBteSAkY2FuZGlkYXRlID0gIiRkaXIvJGZvcm1hdCI7CisJbmV4dCBpZiBub3QgLWUgJGNhbmRpZGF0ZTsKKwlpZiAoLXggXykgeworCSAgICAkcGFyc2VyID0gJGNhbmRpZGF0ZTsKKwkgICAgbGFzdDsKKwl9IGVsc2UgeworCSAgICB3YXJuaW5nKF9nKCJmb3JtYXQgcGFyc2VyICVzIG5vdCBleGVjdXRhYmxlIiksICRjYW5kaWRhdGUpOworCX0KKyAgICB9CisgICAgZXJyb3IoX2coImNoYW5nZWxvZyBmb3JtYXQgJXMgaXMgdW5rbm93biIpLCAkZm9ybWF0KSBpZiBub3QgZGVmaW5lZCAkcGFyc2VyOworCisgICAgIyBDcmVhdGUgdGhlIGFyZ3VtZW50cyBmb3IgdGhlIGNoYW5nZWxvZyBwYXJzZXIKKyAgICBteSBAZXhlYyA9ICgkcGFyc2VyLCAiLWwkY2hhbmdlbG9nZmlsZSIpOworICAgIGZvcmVhY2ggKGtleXMgJW9wdGlvbnMpIHsKKwlpZiAobS9eLS8pIHsKKwkgICAgIyBPcHRpb25zIHBhc3NlZCB1bnRvdWNoZWQKKwkgICAgcHVzaCBAZXhlYywgJF87CisJfSBlbHNlIHsKKwkgICAgIyBOb24tb3B0aW9ucyBhcmUgbWFwcGVkIHRvIGxvbmcgb3B0aW9ucworCSAgICBwdXNoIEBleGVjLCAiLS0kXyI7CisJfQorCXB1c2ggQGV4ZWMsICRvcHRpb25zeyRffSBpZiBkZWZpbmVkKCRvcHRpb25zeyRffSk7CisgICAgfQorCisgICAgIyBGb3JrIGFuZCBjYWxsIHRoZSBwYXJzZXIKKyAgICBteSAkcGlkID0gb3BlbihQLCAiLXwiKTsKKyAgICBzeXNlcnIoX2coImNhbm5vdCBmb3JrIGZvciAlcyIpLCAkcGFyc2VyKSB1bmxlc3MgZGVmaW5lZCAkcGlkOworICAgIGlmIChub3QgJHBpZCkgeworCWlmICgkY2hhbmdlbG9nZmlsZSBuZSAiLSIpIHsKKwkgICAgb3BlbihTVERJTiwgIjwiLCAkY2hhbmdlbG9nZmlsZSkgb3IKKwkJc3lzZXJyKF9nKCJjYW5ub3Qgb3BlbiAlcyIpLCAkY2hhbmdlbG9nZmlsZSk7CisJfQorCWV4ZWMoQGV4ZWMpIHx8IHN5c2VycihfZygiY2Fubm90IGV4ZWMgZm9ybWF0IHBhcnNlcjogJXMiKSwgJHBhcnNlcik7CisgICAgfQorCisgICAgIyBHZXQgdGhlIG91dHB1dCBpbnRvIHNldmVyYWwgRHBrZzo6Q29udHJvbCBvYmplY3RzCisgICAgbXkgKEByZXMsICRmaWVsZHMpOworICAgIHdoaWxlICgxKSB7CisgICAgICAgICRmaWVsZHMgPSBEcGtnOjpDb250cm9sOjpDaGFuZ2Vsb2ctPm5ldygpOworICAgICAgICBsYXN0IHVubGVzcyAkZmllbGRzLT5wYXJzZShcKlAsIF9nKCJvdXRwdXQgb2YgY2hhbmdlbG9nIHBhcnNlciIpKTsKKwlwdXNoIEByZXMsICRmaWVsZHM7CisgICAgfQorICAgIGNsb3NlKFApIG9yIHN1YnByb2NlcnIoX2coImNoYW5nZWxvZyBwYXJzZXIgJXMiKSwgJHBhcnNlcik7CisgICAgaWYgKHdhbnRhcnJheSkgeworCXJldHVybiBAcmVzOworICAgIH0gZWxzZSB7CisJcmV0dXJuICRyZXNbMF0gaWYgKEByZXMpOworCXJldHVybiB1bmRlZjsKKyAgICB9Cit9CisKKzE7CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvRHBrZy9DaGVja3N1bXMucG0gYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvRHBrZy9DaGVja3N1bXMucG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZmQ0YmEwYwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9EcGtnL0NoZWNrc3Vtcy5wbQpAQCAtMCwwICsxLDM3NyBAQAorIyBDb3B5cmlnaHQgwqkgMjAwOCBGcmFuayBMaWNodGVuaGVsZCA8ZGpwaWdAZGViaWFuLm9yZz4KKyMgQ29weXJpZ2h0IMKpIDIwMTAgUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorIworIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorIworIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorIworIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKworcGFja2FnZSBEcGtnOjpDaGVja3N1bXM7CisKK3VzZSBzdHJpY3Q7Cit1c2Ugd2FybmluZ3M7CisKK291ciAkVkVSU0lPTiA9ICIxLjAwIjsKKwordXNlIERwa2c7Cit1c2UgRHBrZzo6R2V0dGV4dDsKK3VzZSBEcGtnOjpFcnJvckhhbmRsaW5nOwordXNlIERwa2c6OklQQzsKKwordXNlIGJhc2UgcXcoRXhwb3J0ZXIpOworb3VyIEBFWFBPUlQgPSBxdyhjaGVja3N1bXNfZ2V0X2xpc3QgY2hlY2tzdW1zX2lzX3N1cHBvcnRlZAorCQkgY2hlY2tzdW1zX2dldF9wcm9wZXJ0eSk7CisKKz1lbmNvZGluZyB1dGY4CisKKz1oZWFkMSBOQU1FCisKK0Rwa2c6OkNoZWNrc3VtcyAtIGdlbmVyYXRlIGFuZCBtYW5pcHVsYXRlIGZpbGUgY2hlY2tzdW1zCisKKz1oZWFkMSBERVNDUklQVElPTgorCitUaGlzIG1vZHVsZSBwcm92aWRlcyBhbiBvYmplY3QgdGhhdCBjYW4gZ2VuZXJhdGUgYW5kIG1hbmlwdWxhdGUKK3ZhcmlvdXMgZmlsZSBjaGVja3N1bXMgYXMgd2VsbCBhcyBzb21lIG1ldGhvZHMgdG8gcXVlcnkgaW5mb3JtYXRpb24KK2Fib3V0IHN1cHBvcnRlZCBjaGVja3N1bXMuCisKKz1oZWFkMSBFWFBPUlRFRCBGVU5DVElPTlMKKworPW92ZXIgNAorCis9Y3V0CisKK215ICRDSEVDS1NVTVMgPSB7CisgICAgIm1kNSIgPT4geworCSJwcm9ncmFtIiA9PiBbICJtZDVzdW0iIF0sCisJInJlZ2V4IiA9PiBxci9bMC05YS1mXXszMn0vLAorICAgIH0sCisgICAgInNoYTEiID0+IHsKKwkicHJvZ3JhbSIgPT4gWyAic2hhMXN1bSIgXSwKKwkicmVnZXgiID0+IHFyL1swLTlhLWZdezQwfS8sCisgICAgfSwKKyAgICAic2hhMjU2IiA9PiB7CisJInByb2dyYW0iID0+IFsgInNoYTI1NnN1bSIgXSwKKwkicmVnZXgiID0+IHFyL1swLTlhLWZdezY0fS8sCisgICAgfSwKK307CisKKz1pdGVtIEBsaXN0ID0gY2hlY2tzdW1zX2dldF9saXN0KCkKKworUmV0dXJucyB0aGUgbGlzdCBvZiBzdXBwb3J0ZWQgY2hlY2tzdW1zIGFsZ29yaXRobXMuCisKKz1jdXQKKworc3ViIGNoZWNrc3Vtc19nZXRfbGlzdCgpIHsKKyAgICByZXR1cm4gc29ydCBrZXlzICV7JENIRUNLU1VNU307Cit9CisKKz1pdGVtICRib29sID0gY2hlY2tzdW1zX2lzX3N1cHBvcnRlZCgkYWxnKQorCitSZXR1cm5zIGEgYm9vbGVhbiBpbmRpY2F0aW5nIHdoZXRoZXIgdGhlIGdpdmVuIGNoZWNrc3VtIGFsZ29yaXRobSBpcworc3VwcG9ydGVkLiBUaGUgY2hlY2tzdW0gYWxnb3JpdGhtIGlzIGNhc2UtaW5zZW5zaXRpdmUuCisKKz1jdXQKKworc3ViIGNoZWNrc3Vtc19pc19zdXBwb3J0ZWQoJCkgeworICAgIG15ICgkYWxnKSA9IEBfOworICAgIHJldHVybiBleGlzdHMgJENIRUNLU1VNUy0+e2xjKCRhbGcpfTsKK30KKworPWl0ZW0gJHZhbHVlID0gY2hlY2tzdW1zX2dldF9wcm9wZXJ0eSgkYWxnLCAkcHJvcGVydHkpCisKK1JldHVybnMgdGhlIHJlcXVlc3RlZCBwcm9wZXJ0eSBvZiB0aGUgY2hlY2tzdW0gYWxnb3JpdGhtLiBSZXR1cm5zIHVuZGVmIGlmCitlaXRoZXIgdGhlIHByb3BlcnR5IG9yIHRoZSBjaGVja3N1bSBhbGdvcml0aG0gZG9lc24ndCBleGlzdC4gVmFsaWQKK3Byb3BlcnRpZXMgY3VycmVudGx5IGluY2x1ZGUgInByb2dyYW0iIChyZXR1cm5zIGFuIGFycmF5IHJlZmVyZW5jZSB3aXRoCithIHByb2dyYW0gbmFtZSBhbmQgcGFyYW1ldGVycyByZXF1aXJlZCB0byBjb21wdXRlIHRoZSBjaGVja3N1bSBvZiB0aGUKK2ZpbGVuYW1lIGdpdmVuIGFzIGxhc3QgcGFyYW1ldGVyKSBhbmQgInJlZ2V4IiBmb3IgdGhlIHJlZ3VsYXIgZXhwcmVzc2lvbgorZGVzY3JpYmluZyB0aGUgY29tbW9uIHN0cmluZyByZXByZXNlbnRhdGlvbiBvZiB0aGUgY2hlY2tzdW0gKGFzIG91dHB1dAorYnkgdGhlIHByb2dyYW0gdGhhdCBnZW5lcmF0ZXMgaXQpLgorCis9Y3V0CisKK3N1YiBjaGVja3N1bXNfZ2V0X3Byb3BlcnR5KCQkKSB7CisgICAgbXkgKCRhbGcsICRwcm9wZXJ0eSkgPSBAXzsKKyAgICByZXR1cm4gdW5kZWYgdW5sZXNzIGNoZWNrc3Vtc19pc19zdXBwb3J0ZWQoJGFsZyk7CisgICAgcmV0dXJuICRDSEVDS1NVTVMtPntsYygkYWxnKX17JHByb3BlcnR5fTsKK30KKworPWJhY2sKKworPWhlYWQxIE9CSkVDVCBNRVRIT0RTCisKKz1vdmVyIDQKKworPWl0ZW0gbXkgJGNrID0gRHBrZzo6Q2hlY2tzdW1zLT5uZXcoKQorCitDcmVhdGUgYSBuZXcgRHBrZzo6Q2hlY2tzdW1zIG9iamVjdC4gVGhpcyBvYmplY3QgaXMgYWJsZSB0byBzdG9yZQordGhlIGNoZWNrc3VtcyBvZiBzZXZlcmFsIGZpbGVzIHRvIGxhdGVyIGV4cG9ydCB0aGVtIG9yIHZlcmlmeSB0aGVtLgorCis9Y3V0CisKK3N1YiBuZXcgeworICAgIG15ICgkdGhpcywgJW9wdHMpID0gQF87CisgICAgbXkgJGNsYXNzID0gcmVmKCR0aGlzKSB8fCAkdGhpczsKKworICAgIG15ICRzZWxmID0ge307CisgICAgYmxlc3MgJHNlbGYsICRjbGFzczsKKyAgICAkc2VsZi0+cmVzZXQoKTsKKworICAgIHJldHVybiAkc2VsZjsKK30KKworPWl0ZW0gJGNrLT5yZXNldCgpCisKK0ZvcmdldCBhYm91dCBhbGwgY2hlY2tzdW1zIHN0b3JlZC4gVGhlIG9iamVjdCBpcyBhZ2FpbiBpbiB0aGUgc2FtZSBzdGF0ZQorYXMgaWYgaXQgd2FzIG5ld2x5IGNyZWF0ZWQuCisKKz1jdXQKKworc3ViIHJlc2V0IHsKKyAgICBteSAoJHNlbGYpID0gQF87CisgICAgJHNlbGYtPntmaWxlc30gPSBbXTsKKyAgICAkc2VsZi0+e2NoZWNrc3Vtc30gPSB7fTsKKyAgICAkc2VsZi0+e3NpemV9ID0ge307Cit9CisKKz1pdGVtICRjay0+YWRkX2Zyb21fZmlsZSgkZmlsZW5hbWUsICVvcHRzKQorCitBZGQgY2hlY2tzdW1zIGluZm9ybWF0aW9uIGZvciB0aGUgZmlsZSAkZmlsZW5hbWUuIFRoZSBmaWxlIG11c3QgZXhpc3RzCitmb3IgdGhlIGNhbGwgdG8gc3VjY2VlZC4gSWYgeW91IGRvbid0IHdhbnQgdGhlIGdpdmVuIGZpbGVuYW1lIHRvIGFwcGVhcgord2hlbiB5b3UgbGF0ZXIgZXhwb3J0IHRoZSBjaGVja3N1bXMgeW91IG1pZ2h0IHdhbnQgdG8gc2V0IHRoZSAia2V5Igorb3B0aW9uIHdpdGggdGhlIHB1YmxpYyBuYW1lIHRoYXQgeW91IHdhbnQgdG8gdXNlLiBBbHNvIGlmIHlvdSBkb24ndCB3YW50Cit0byBnZW5lcmF0ZSBhbGwgdGhlIGNoZWNrc3VtcywgeW91IGNhbiBwYXNzIGFuIGFycmF5IHJlZmVyZW5jZSBvZiB0aGUKK3dhbnRlZCBjaGVja3N1bXMgaW4gdGhlICJjaGVja3N1bXMiIG9wdGlvbi4KKworSXQgdGhlIG9iamVjdCBhbHJlYWR5IGNvbnRhaW5zIGNoZWNrc3VtcyBpbmZvcm1hdGlvbiBhc3NvY2lhdGVkIHRoZQorZmlsZW5hbWUgKG9yIGtleSksIGl0IHdpbGwgZXJyb3Igb3V0IGlmIHRoZSBuZXdseSBjb21wdXRlZCBpbmZvcm1hdGlvbgorZG9lcyBub3QgbWF0Y2ggd2hhdCdzIHN0b3JlZC4KKworPWN1dAorCitzdWIgYWRkX2Zyb21fZmlsZSB7CisgICAgbXkgKCRzZWxmLCAkZmlsZSwgJW9wdHMpID0gQF87CisgICAgbXkgJGtleSA9IGV4aXN0cyAkb3B0c3trZXl9ID8gJG9wdHN7a2V5fSA6ICRmaWxlOworICAgIG15IEBhbGc7CisgICAgaWYgKGV4aXN0cyAkb3B0c3tjaGVja3N1bXN9KSB7CisJcHVzaCBAYWxnLCBtYXAgeyBsYygkXykgfSBAeyRvcHRze2NoZWNrc3Vtc319OworICAgIH0gZWxzZSB7CisJcHVzaCBAYWxnLCBjaGVja3N1bXNfZ2V0X2xpc3QoKTsKKyAgICB9CisKKyAgICBwdXNoIEB7JHNlbGYtPntmaWxlc319LCAka2V5IHVubGVzcyBleGlzdHMgJHNlbGYtPntzaXplfXska2V5fTsKKyAgICAobXkgQHMgPSBzdGF0KCRmaWxlKSkgfHwgc3lzZXJyKF9nKCJjYW5ub3QgZnN0YXQgZmlsZSAlcyIpLCAkZmlsZSk7CisgICAgaWYgKGV4aXN0cyAkc2VsZi0+e3NpemV9eyRrZXl9IGFuZCAkc2VsZi0+e3NpemV9eyRrZXl9ICE9ICRzWzddKSB7CisJZXJyb3IoX2coIkZpbGUgJXMgaGFzIHNpemUgJXUgaW5zdGVhZCBvZiBleHBlY3RlZCAldSIpLAorCSAgICAgICRmaWxlLCAkc1s3XSwgJHNlbGYtPntzaXplfXska2V5fSk7CisgICAgfQorICAgICRzZWxmLT57c2l6ZX17JGtleX0gPSAkc1s3XTsKKworICAgIGZvcmVhY2ggbXkgJGFsZyAoQGFsZykgeworCW15IEBleGVjID0gKEB7JENIRUNLU1VNUy0+eyRhbGd9eyJwcm9ncmFtIn19LCAkZmlsZSk7CisJbXkgJHJlZ2V4ID0gJENIRUNLU1VNUy0+eyRhbGd9eyJyZWdleCJ9OworCW15ICRvdXRwdXQ7CisJc3Bhd24oJ2V4ZWMnID0+IFxAZXhlYywgdG9fc3RyaW5nID0+IFwkb3V0cHV0KTsKKwlpZiAoJG91dHB1dCA9fiAvXigkcmVnZXgpKFxzfCQpL20pIHsKKwkgICAgbXkgJG5ld3N1bSA9ICQxOworCSAgICBpZiAoZXhpc3RzICRzZWxmLT57Y2hlY2tzdW1zfXska2V5fXskYWxnfSBhbmQKKwkJJHNlbGYtPntjaGVja3N1bXN9eyRrZXl9eyRhbGd9IG5lICRuZXdzdW0pIHsKKwkJZXJyb3IoX2coIkZpbGUgJXMgaGFzIGNoZWNrc3VtICVzIGluc3RlYWQgb2YgZXhwZWN0ZWQgJXMgKGFsZ29yaXRobSAlcykiKSwKKwkJICAgICAgJGZpbGUsICRuZXdzdW0sICRzZWxmLT57Y2hlY2tzdW1zfXska2V5fXskYWxnfSwgJGFsZyk7CisJICAgIH0KKwkgICAgJHNlbGYtPntjaGVja3N1bXN9eyRrZXl9eyRhbGd9ID0gJG5ld3N1bTsKKwl9IGVsc2UgeworCSAgICBlcnJvcihfZygiY2hlY2tzdW0gcHJvZ3JhbSBnYXZlIGJvZ3VzIG91dHB1dCBgJXMnIiksICRvdXRwdXQpOworCX0KKyAgICB9Cit9CisKKz1pdGVtICRjay0+YWRkX2Zyb21fc3RyaW5nKCRhbGcsICR2YWx1ZSkKKworQWRkIGNoZWNrc3VtcyBvZiB0eXBlICRhbGcgdGhhdCBhcmUgc3RvcmVkIGluIHRoZSAkdmFsdWUgdmFyaWFibGUuCiskdmFsdWUgY2FuIGJlIG11bHRpLWxpbmVzLCBlYWNoIGxpbmUgc2hvdWxkIGJlIGEgc3BhY2Ugc2VwYXJhdGVkIGxpc3QKK29mIGNoZWNrc3VtLCBmaWxlIHNpemUgYW5kIGZpbGVuYW1lLiBMZWFkaW5nIG9yIHRyYWlsaW5nIHNwYWNlcyBhcmUKK25vdCBhbGxvd2VkLgorCitJdCB0aGUgb2JqZWN0IGFscmVhZHkgY29udGFpbnMgY2hlY2tzdW1zIGluZm9ybWF0aW9uIGFzc29jaWF0ZWQgdG8gdGhlCitmaWxlbmFtZXMsIGl0IHdpbGwgZXJyb3Igb3V0IGlmIHRoZSBuZXdseSByZWFkIGluZm9ybWF0aW9uIGRvZXMgbm90IG1hdGNoCit3aGF0J3Mgc3RvcmVkLgorCis9Y3V0CisKK3N1YiBhZGRfZnJvbV9zdHJpbmcgeworICAgIG15ICgkc2VsZiwgJGFsZywgJGZpZWxkdGV4dCkgPSBAXzsKKyAgICAkYWxnID0gbGMoJGFsZyk7CisgICAgbXkgJHJ4X2ZuYW1lID0gcXIvWzAtOWEtekEtWl1bLSs6Liw9MC05YS16QS1aX35dKy87CisgICAgbXkgJHJlZ2V4ID0gY2hlY2tzdW1zX2dldF9wcm9wZXJ0eSgkYWxnLCAicmVnZXgiKTsKKyAgICBteSAkY2hlY2tzdW1zID0gJHNlbGYtPntjaGVja3N1bXN9OworCisgICAgZm9yIG15ICRjaGVja3N1bSAoc3BsaXQgL1xuICovLCAkZmllbGR0ZXh0KSB7CisJbmV4dCBpZiAkY2hlY2tzdW0gZXEgJyc7CisJdW5sZXNzICgkY2hlY2tzdW0gPX4gbS9eKCRyZWdleClccysoXGQrKVxzKygkcnhfZm5hbWUpJC8pIHsKKwkgICAgZXJyb3IoX2coImludmFsaWQgbGluZSBpbiAlcyBjaGVja3N1bXMgc3RyaW5nOiAlcyIpLAorCQkgICRhbGcsICRjaGVja3N1bSk7CisJfQorCW15ICgkc3VtLCAkc2l6ZSwgJGZpbGUpID0gKCQxLCAkMiwgJDMpOworCWlmIChleGlzdHMoJGNoZWNrc3Vtcy0+eyRmaWxlfXskYWxnfSkKKwkgICAgYW5kICRjaGVja3N1bXMtPnskZmlsZX17JGFsZ30gbmUgJHN1bSkgeworCSAgICBlcnJvcihfZygiQ29uZmxpY3RpbmcgY2hlY2tzdW1zIFxgJXNcJyBhbmQgXGAlcycgZm9yIGZpbGUgXGAlcyciKSwKKwkJICAkY2hlY2tzdW1zLT57JGZpbGV9eyRhbGd9LCAkc3VtLCAkZmlsZSk7CisJfQorCWlmIChleGlzdHMgJHNlbGYtPntzaXplfXskZmlsZX0gYW5kICRzZWxmLT57c2l6ZX17JGZpbGV9ICE9ICRzaXplKSB7CisJICAgIGVycm9yKF9nKCJDb25mbGljdGluZyBmaWxlIHNpemVzIFxgJXVcJyBhbmQgXGAldScgZm9yIGZpbGUgXGAlcyciKSwKKwkJICAkc2VsZi0+e3NpemV9eyRmaWxlfSwgJHNpemUsICRmaWxlKTsKKwl9CisJcHVzaCBAeyRzZWxmLT57ZmlsZXN9fSwgJGZpbGUgdW5sZXNzIGV4aXN0cyAkc2VsZi0+e3NpemV9eyRmaWxlfTsKKwkkY2hlY2tzdW1zLT57JGZpbGV9eyRhbGd9ID0gJHN1bTsKKwkkc2VsZi0+e3NpemV9eyRmaWxlfSA9ICRzaXplOworICAgIH0KK30KKworPWl0ZW0gJGNrLT5hZGRfZnJvbV9jb250cm9sKCRjb250cm9sLCAlb3B0cykKKworUmVhZCBjaGVja3N1bXMgZnJvbSBDaGVja3N1bXMtKiBmaWVsZHMgc3RvcmVkIGluIHRoZSBEcGtnOjpDb250cm9sIG9iamVjdAorJGNvbnRyb2wuIEl0IHVzZXMgJHNlbGYtPmFkZF9mcm9tX3N0cmluZygpIG9uIHRoZSBmaWVsZCB2YWx1ZXMgdG8gZG8gdGhlCithY3R1YWwgd29yay4KKworSWYgdGhlIG9wdGlvbiAidXNlX2ZpbGVzX2Zvcl9tZDUiIGV2YWx1YXRlcyB0byB0cnVlLCB0aGVuIHRoZSAiRmlsZXMiCitmaWVsZCBpcyB1c2VkIGluIHBsYWNlIG9mIHRoZSAiQ2hlY2tzdW1zLU1kNSIgZmllbGQuIEJ5IGRlZmF1bHQgdGhlIG9wdGlvbgoraXMgZmFsc2UuCisKKz1jdXQKKworc3ViIGFkZF9mcm9tX2NvbnRyb2wgeworICAgIG15ICgkc2VsZiwgJGNvbnRyb2wsICVvcHRzKSA9IEBfOworICAgICRvcHRze3VzZV9maWxlc19mb3JfbWQ1fSA9IDAgdW5sZXNzIGV4aXN0cyAkb3B0c3t1c2VfZmlsZXNfZm9yX21kNX07CisgICAgZm9yZWFjaCBteSAkYWxnIChjaGVja3N1bXNfZ2V0X2xpc3QoKSkgeworCW15ICRrZXkgPSAiQ2hlY2tzdW1zLSRhbGciOworCSRrZXkgPSAiRmlsZXMiIGlmICgkb3B0c3t1c2VfZmlsZXNfZm9yX21kNX0gYW5kICRhbGcgZXEgIm1kNSIpOworCWlmIChleGlzdHMgJGNvbnRyb2wtPnska2V5fSkgeworCSAgICAkc2VsZi0+YWRkX2Zyb21fc3RyaW5nKCRhbGcsICRjb250cm9sLT57JGtleX0pOworCX0KKyAgICB9Cit9CisKKz1pdGVtIEBmaWxlcyA9ICRjay0+Z2V0X2ZpbGVzKCkKKworUmV0dXJuIHRoZSBsaXN0IG9mIGZpbGVzIHdob3NlIGNoZWNrc3VtcyBhcmUgc3RvcmVkIGluIHRoZSBvYmplY3QuCisKKz1jdXQKKworc3ViIGdldF9maWxlcyB7CisgICAgbXkgKCRzZWxmKSA9IEBfOworICAgIHJldHVybiBAeyRzZWxmLT57ZmlsZXN9fTsKK30KKworPWl0ZW0gJGJvb2wgPSAkY2stPmhhc19maWxlKCRmaWxlKQorCitSZXR1cm4gdHJ1ZSBpZiB3ZSBoYXZlIGNoZWNrc3VtcyBmb3IgdGhlIGdpdmVuIGZpbGUuIFJldHVybnMgZmFsc2UKK290aGVyd2lzZS4KKworPWN1dAorCitzdWIgaGFzX2ZpbGUgeworICAgIG15ICgkc2VsZiwgJGZpbGUpID0gQF87CisgICAgcmV0dXJuIGV4aXN0cyAkc2VsZi0+e3NpemV9eyRmaWxlfTsKK30KKworPWl0ZW0gJGNrLT5yZW1vdmVfZmlsZSgkZmlsZSkKKworUmVtb3ZlIGFsbCBjaGVja3N1bXMgb2YgdGhlIGdpdmVuIGZpbGUuCisKKz1jdXQKKworc3ViIHJlbW92ZV9maWxlIHsKKyAgICBteSAoJHNlbGYsICRmaWxlKSA9IEBfOworICAgIHJldHVybiB1bmxlc3MgJHNlbGYtPmhhc19maWxlKCRmaWxlKTsKKyAgICBkZWxldGUgJHNlbGYtPnsnY2hlY2tzdW1zJ317JGZpbGV9OworICAgIGRlbGV0ZSAkc2VsZi0+eydzaXplJ317JGZpbGV9OworICAgIEB7JHNlbGYtPnsnZmlsZXMnfX0gPSBncmVwIHsgJF8gbmUgJGZpbGUgfSAkc2VsZi0+Z2V0X2ZpbGVzKCk7Cit9CisKKz1pdGVtICRjaGVja3N1bSA9ICRjay0+Z2V0X2NoZWNrc3VtKCRmaWxlLCAkYWxnKQorCitSZXR1cm4gdGhlIGNoZWNrc3VtIG9mIHR5cGUgJGFsZyBmb3IgdGhlIHJlcXVlc3RlZCAkZmlsZS4gVGhpcyB3aWxsIG5vdAorY29tcHV0ZSB0aGUgY2hlY2tzdW0gYnV0IG9ubHkgcmV0dXJuIHRoZSBjaGVja3N1bSBzdG9yZWQgaW4gdGhlIG9iamVjdCwgaWYKK2FueS4KKworSWYgJGFsZyBpcyBub3QgZGVmaW5lZCwgaXQgcmV0dXJucyBhIHJlZmVyZW5jZSB0byBhIGhhc2g6IGtleXMgYXJlCit0aGUgY2hlY2tzdW0gYWxnb3JpdGhtcyBhbmQgdmFsdWVzIGFyZSB0aGUgY2hlY2tzdW1zIHRoZW1zZWx2ZXMuIFRoZQoraGFzaCByZXR1cm5lZCBtdXN0IG5vdCBiZSBtb2RpZmllZCwgaXQncyBpbnRlcm5hbCB0byB0aGUgb2JqZWN0LgorCis9Y3V0CisKK3N1YiBnZXRfY2hlY2tzdW0geworICAgIG15ICgkc2VsZiwgJGZpbGUsICRhbGcpID0gQF87CisgICAgJGFsZyA9IGxjKCRhbGcpIGlmIGRlZmluZWQgJGFsZzsKKyAgICBpZiAoZXhpc3RzICRzZWxmLT57Y2hlY2tzdW1zfXskZmlsZX0pIHsKKwlyZXR1cm4gJHNlbGYtPntjaGVja3N1bXN9eyRmaWxlfSB1bmxlc3MgZGVmaW5lZCAkYWxnOworCXJldHVybiAkc2VsZi0+e2NoZWNrc3Vtc317JGZpbGV9eyRhbGd9OworICAgIH0KKyAgICByZXR1cm4gdW5kZWY7Cit9CisKKz1pdGVtICRzaXplID0gJGNrLT5nZXRfc2l6ZSgkZmlsZSkKKworUmV0dXJuIHRoZSBzaXplIG9mIHRoZSByZXF1ZXN0ZWQgZmlsZSBpZiBpdCdzIGF2YWlsYWJsZSBpbiB0aGUgb2JqZWN0LgorCis9Y3V0CisKK3N1YiBnZXRfc2l6ZSB7CisgICAgbXkgKCRzZWxmLCAkZmlsZSkgPSBAXzsKKyAgICByZXR1cm4gJHNlbGYtPntzaXplfXskZmlsZX07Cit9CisKKz1pdGVtICRjay0+ZXhwb3J0X3RvX3N0cmluZygkYWxnLCAlb3B0cykKKworUmV0dXJuIGEgbXVsdGktbGluZSBzdHJpbmcgY29udGFpbmluZyB0aGUgY2hlY2tzdW1zIG9mIHR5cGUgJGFsZy4gVGhlCitzdHJpbmcgY2FuIGJlIHN0b3JlZCBhcy1pcyBpbiBhIENoZWNrc3VtLSogZmllbGQgb2YgYSBEcGtnOjpDb250cm9sCitvYmplY3QuCisKKz1jdXQKKworc3ViIGV4cG9ydF90b19zdHJpbmcgeworICAgIG15ICgkc2VsZiwgJGFsZywgJW9wdHMpID0gQF87CisgICAgbXkgJHJlcyA9ICIiOworICAgIGZvcmVhY2ggbXkgJGZpbGUgKCRzZWxmLT5nZXRfZmlsZXMoKSkgeworCW15ICRzdW0gPSAkc2VsZi0+Z2V0X2NoZWNrc3VtKCRmaWxlLCAkYWxnKTsKKwlteSAkc2l6ZSA9ICRzZWxmLT5nZXRfc2l6ZSgkZmlsZSk7CisJbmV4dCB1bmxlc3MgZGVmaW5lZCAkc3VtIGFuZCBkZWZpbmVkICRzaXplOworCSRyZXMgLj0gIlxuJHN1bSAkc2l6ZSAkZmlsZSI7CisgICAgfQorICAgIHJldHVybiAkcmVzOworfQorCis9aXRlbSAkY2stPmV4cG9ydF90b19jb250cm9sKCRjb250cm9sLCAlb3B0cykKKworRXhwb3J0IHRoZSBjaGVja3N1bXMgaW4gdGhlIENoZWNrc3Vtcy0qIGZpZWxkcyBvZiB0aGUgRHBrZzo6Q29udHJvbAorJGNvbnRyb2wgb2JqZWN0LgorCis9Y3V0CisKK3N1YiBleHBvcnRfdG9fY29udHJvbCB7CisgICAgbXkgKCRzZWxmLCAkY29udHJvbCwgJW9wdHMpID0gQF87CisgICAgJG9wdHN7dXNlX2ZpbGVzX2Zvcl9tZDV9ID0gMCB1bmxlc3MgZXhpc3RzICRvcHRze3VzZV9maWxlc19mb3JfbWQ1fTsKKyAgICBmb3JlYWNoIG15ICRhbGcgKGNoZWNrc3Vtc19nZXRfbGlzdCgpKSB7CisJbXkgJGtleSA9ICJDaGVja3N1bXMtJGFsZyI7CisJJGtleSA9ICJGaWxlcyIgaWYgKCRvcHRze3VzZV9maWxlc19mb3JfbWQ1fSBhbmQgJGFsZyBlcSAibWQ1Iik7CisJJGNvbnRyb2wtPnska2V5fSA9ICRzZWxmLT5leHBvcnRfdG9fc3RyaW5nKCRhbGcsICVvcHRzKTsKKyAgICB9Cit9CisKKz1iYWNrCisKKz1oZWFkMSBBVVRIT1IKKworUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPi4KKworPWN1dAorCisxOwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL0Rwa2cvQ29tcHJlc3Npb24ucG0gYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvRHBrZy9Db21wcmVzc2lvbi5wbQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jODNmYjRlCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL0Rwa2cvQ29tcHJlc3Npb24ucG0KQEAgLTAsMCArMSwyMjcgQEAKKyMgQ29weXJpZ2h0IMKpIDIwMTAgUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorIworIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorIworIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorIworIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKworcGFja2FnZSBEcGtnOjpDb21wcmVzc2lvbjsKKwordXNlIHN0cmljdDsKK3VzZSB3YXJuaW5nczsKKworb3VyICRWRVJTSU9OID0gIjEuMDEiOworCit1c2UgRHBrZzo6RXJyb3JIYW5kbGluZzsKK3VzZSBEcGtnOjpHZXR0ZXh0OworCit1c2UgYmFzZSBxdyhFeHBvcnRlcik7CitvdXIgQEVYUE9SVCA9IHF3KCRjb21wcmVzc2lvbl9yZV9maWxlX2V4dCBjb21wcmVzc2lvbl9nZXRfbGlzdAorCQkgY29tcHJlc3Npb25faXNfc3VwcG9ydGVkIGNvbXByZXNzaW9uX2dldF9wcm9wZXJ0eQorCQkgY29tcHJlc3Npb25fZ3Vlc3NfZnJvbV9maWxlbmFtZQorCQkgY29tcHJlc3Npb25fZ2V0X2RlZmF1bHQgY29tcHJlc3Npb25fc2V0X2RlZmF1bHQKKwkJIGNvbXByZXNzaW9uX2dldF9kZWZhdWx0X2xldmVsCisJCSBjb21wcmVzc2lvbl9zZXRfZGVmYXVsdF9sZXZlbAorCQkgY29tcHJlc3Npb25faXNfdmFsaWRfbGV2ZWwpOworCis9ZW5jb2RpbmcgdXRmOAorCis9aGVhZDEgTkFNRQorCitEcGtnOjpDb21wcmVzc2lvbiAtIHNpbXBsZSBkYXRhYmFzZSBvZiBhdmFpbGFibGUgY29tcHJlc3Npb24gbWV0aG9kcworCis9aGVhZDEgREVTQ1JJUFRJT04KKworVGhpcyBtb2R1bGVzIHByb3ZpZGVzIGEgZmV3IHB1YmxpYyBmdW5jaW9ucyBhbmQgYSBwdWJsaWMgcmVnZXggdG8KK2ludGVyYWN0IHdpdGggdGhlIHNldCBvZiBzdXBwb3J0ZWQgY29tcHJlc3Npb24gbWV0aG9kcy4KKworPWhlYWQxIEVYUE9SVEVEIFZBUklBQkxFUworCis9b3ZlciA0CisKKz1jdXQKKworbXkgJENPTVAgPSB7CisgICAgImd6aXAiID0+IHsKKwkiZmlsZV9leHQiID0+ICJneiIsCisJImNvbXBfcHJvZyIgPT4gWyAiZ3ppcCIsICItLW5vLW5hbWUiLCAiLS1yc3luY2FibGUiIF0sCisJImRlY29tcF9wcm9nIiA9PiBbICJndW56aXAiIF0sCisJImRlZmF1bHRfbGV2ZWwiID0+IDksCisgICAgfSwKKyAgICAiYnppcDIiID0+IHsKKwkiZmlsZV9leHQiID0+ICJiejIiLAorCSJjb21wX3Byb2ciID0+IFsgImJ6aXAyIiBdLAorCSJkZWNvbXBfcHJvZyIgPT4gWyAiYnVuemlwMiIgXSwKKwkiZGVmYXVsdF9sZXZlbCIgPT4gOSwKKyAgICB9LAorICAgICJsem1hIiA9PiB7CisJImZpbGVfZXh0IiA9PiAibHptYSIsCisJImNvbXBfcHJvZyIgPT4gWyAneHonLCAnLS1mb3JtYXQ9bHptYScgXSwKKwkiZGVjb21wX3Byb2ciID0+IFsgJ3VueHonLCAnLS1mb3JtYXQ9bHptYScgXSwKKwkiZGVmYXVsdF9sZXZlbCIgPT4gNiwKKyAgICB9LAorICAgICJ4eiIgPT4geworCSJmaWxlX2V4dCIgPT4gInh6IiwKKwkiY29tcF9wcm9nIiA9PiBbICJ4eiIgXSwKKwkiZGVjb21wX3Byb2ciID0+IFsgInVueHoiIF0sCisJImRlZmF1bHRfbGV2ZWwiID0+IDYsCisgICAgfSwKK307CisKK291ciAkZGVmYXVsdF9jb21wcmVzc2lvbiA9ICJnemlwIjsKK291ciAkZGVmYXVsdF9jb21wcmVzc2lvbl9sZXZlbCA9IHVuZGVmOworCis9aXRlbSAkY29tcHJlc3Npb25fcmVfZmlsZV9leHQKKworQSByZWdleCB0aGF0IG1hdGNoZXMgYSBmaWxlIGV4dGVuc2lvbiBvZiBhIGZpbGUgY29tcHJlc3NlZCB3aXRoIG9uZSBvZiB0aGUKK3N1cHBvcnRlZCBjb21wcmVzc2lvbiBtZXRob2RzLgorCis9YmFjaworCis9Y3V0CisKK215ICRyZWdleCA9IGpvaW4gInwiLCBtYXAgeyAkXy0+eyJmaWxlX2V4dCJ9IH0gdmFsdWVzICUkQ09NUDsKK291ciAkY29tcHJlc3Npb25fcmVfZmlsZV9leHQgPSBxci8oPzokcmVnZXgpLzsKKworPWhlYWQxIEVYUE9SVEVEIEZVTkNUSU9OUworCis9b3ZlciA0CisKKz1pdGVtIG15IEBsaXN0ID0gY29tcHJlc3Npb25fZ2V0X2xpc3QoKQorCitSZXR1cm5zIGEgbGlzdCBvZiBzdXBwb3J0ZWQgY29tcHJlc3Npb24gbWV0aG9kcyAoc29ydGVkIGFscGhhYmV0aWNhbGx5KS4KKworPWN1dAorCitzdWIgY29tcHJlc3Npb25fZ2V0X2xpc3QgeworICAgIHJldHVybiBzb3J0IGtleXMgJSRDT01QOworfQorCis9aXRlbSBjb21wcmVzc2lvbl9pc19zdXBwb3J0ZWQoJGNvbXApCisKK1JldHVybnMgYSBib29sZWFuIGluZGljYXRpbmcgd2hldGhlciB0aGUgZ2l2ZSBjb21wcmVzc2lvbiBtZXRob2QgaXMKK2tub3duIGFuZCBzdXBwb3J0ZWQuCisKKz1jdXQKKworc3ViIGNvbXByZXNzaW9uX2lzX3N1cHBvcnRlZCB7CisgICAgcmV0dXJuIGV4aXN0cyAkQ09NUC0+eyRfWzBdfTsKK30KKworPWl0ZW0gY29tcHJlc3Npb25fZ2V0X3Byb3BlcnR5KCRjb21wLCAkcHJvcGVydHkpCisKK1JldHVybnMgdGhlIHJlcXVlc3RlZCBwcm9wZXJ0eSBvZiB0aGUgY29tcHJlc3Npb24gbWV0aG9kLiBSZXR1cm5zIHVuZGVmIGlmCitlaXRoZXIgdGhlIHByb3BlcnR5IG9yIHRoZSBjb21wcmVzc2lvbiBtZXRob2QgZG9lc24ndCBleGlzdC4gVmFsaWQKK3Byb3BlcnRpZXMgY3VycmVudGx5IGluY2x1ZGUgImZpbGVfZXh0IiBmb3IgdGhlIGZpbGUgZXh0ZW5zaW9uLAorImRlZmF1bHRfbGV2ZWwiIGZvciB0aGUgZGVmYXVsdCBjb21wcmVzc2lvbiBsZXZlbCwKKyJjb21wX3Byb2ciIGZvciB0aGUgbmFtZSBvZiB0aGUgY29tcHJlc3Npb24gcHJvZ3JhbSBhbmQgImRlY29tcF9wcm9nIiBmb3IKK3RoZSBuYW1lIG9mIHRoZSBkZWNvbXByZXNzaW9uIHByb2dyYW0uCisKKz1jdXQKKworc3ViIGNvbXByZXNzaW9uX2dldF9wcm9wZXJ0eSB7CisgICAgbXkgKCRjb21wLCAkcHJvcGVydHkpID0gQF87CisgICAgcmV0dXJuIHVuZGVmIHVubGVzcyBjb21wcmVzc2lvbl9pc19zdXBwb3J0ZWQoJGNvbXApOworICAgIHJldHVybiAkQ09NUC0+eyRjb21wfXskcHJvcGVydHl9IGlmIGV4aXN0cyAkQ09NUC0+eyRjb21wfXskcHJvcGVydHl9OworICAgIHJldHVybiB1bmRlZjsKK30KKworPWl0ZW0gY29tcHJlc3Npb25fZ3Vlc3NfZnJvbV9maWxlbmFtZSgkZmlsZW5hbWUpCisKK1JldHVybnMgdGhlIGNvbXByZXNzaW9uIG1ldGhvZCB0aGF0IGlzIGxpa2VseSB1c2VkIG9uIHRoZSBpbmRpY2F0ZWQKK2ZpbGVuYW1lIGJhc2VkIG9uIGl0cyBmaWxlIGV4dGVuc2lvbi4KKworPWN1dAorCitzdWIgY29tcHJlc3Npb25fZ3Vlc3NfZnJvbV9maWxlbmFtZSB7CisgICAgbXkgJGZpbGVuYW1lID0gc2hpZnQ7CisgICAgZm9yZWFjaCBteSAkY29tcCAoY29tcHJlc3Npb25fZ2V0X2xpc3QoKSkgeworCW15ICRleHQgPSBjb21wcmVzc2lvbl9nZXRfcHJvcGVydHkoJGNvbXAsICJmaWxlX2V4dCIpOworICAgICAgICBpZiAoJGZpbGVuYW1lID1+IC9eKC4qKVwuXFEkZXh0XEUkLykgeworCSAgICByZXR1cm4gJGNvbXA7CisgICAgICAgIH0KKyAgICB9CisgICAgcmV0dXJuIHVuZGVmOworfQorCis9aXRlbSBteSAkY29tcCA9IGNvbXByZXNzaW9uX2dldF9kZWZhdWx0KCkKKworUmV0dXJuIHRoZSBkZWZhdWx0IGNvbXByZXNzaW9uIG1ldGhvZC4gSXQncyAiZ3ppcCIgdW5sZXNzCitDPGNvbXByZXNzaW9uX3NldF9kZWZhdWx0PiBoYXMgYmVlbiB1c2VkIHRvIGNoYW5nZSBpdC4KKworPWl0ZW0gY29tcHJlc3Npb25fc2V0X2RlZmF1bHQoJGNvbXApCisKK0NoYW5nZSB0aGUgZGVmYXVsdCBjb21wcmVzc2lvbiBtZXRob2QuIEVycm9ycyBvdXQgaWYgdGhlCitnaXZlbiBjb21wcmVzc2lvbiBtZXRob2QgaXMgbm90IHN1cHBvcnRlZC4KKworPWN1dAorCitzdWIgY29tcHJlc3Npb25fZ2V0X2RlZmF1bHQgeworICAgIHJldHVybiAkZGVmYXVsdF9jb21wcmVzc2lvbjsKK30KKworc3ViIGNvbXByZXNzaW9uX3NldF9kZWZhdWx0IHsKKyAgICBteSAoJG1ldGhvZCkgPSBAXzsKKyAgICBlcnJvcihfZygiJXMgaXMgbm90IGEgc3VwcG9ydGVkIGNvbXByZXNzaW9uIiksICRtZXRob2QpCisgICAgICAgICAgICB1bmxlc3MgY29tcHJlc3Npb25faXNfc3VwcG9ydGVkKCRtZXRob2QpOworICAgICRkZWZhdWx0X2NvbXByZXNzaW9uID0gJG1ldGhvZDsKK30KKworPWl0ZW0gbXkgJGxldmVsID0gY29tcHJlc3Npb25fZ2V0X2RlZmF1bHRfbGV2ZWwoKQorCitSZXR1cm4gdGhlIGRlZmF1bHQgY29tcHJlc3Npb24gbGV2ZWwgdXNlZCB3aGVuIGNvbXByZXNzaW5nIGRhdGEuIEl0J3MgIjkiCitmb3IgImd6aXAiIGFuZCAiYnppcDIiLCAiNiIgZm9yICJ4eiIgYW5kICJsem1hIiwgdW5sZXNzCitDPGNvbXByZXNzaW9uX3NldF9kZWZhdWx0X2xldmVsPiBoYXMgYmVlbiB1c2VkIHRvIGNoYW5nZSBpdC4KKworPWl0ZW0gY29tcHJlc3Npb25fc2V0X2RlZmF1bHRfbGV2ZWwoJGxldmVsKQorCitDaGFuZ2UgdGhlIGRlZmF1bHQgY29tcHJlc3Npb24gbGV2ZWwuIFBhc3NpbmcgdW5kZWYgYXMgdGhlIGxldmVsIHdpbGwKK3Jlc2V0IGl0IHRvIHRoZSBjb21wcmVzc29yIHNwZWNpZmljIGRlZmF1bHQsIG90aGVyd2lzZSBlcnJvcnMgb3V0IGlmIHRoZQorbGV2ZWwgaXMgbm90IHZhbGlkIChzZWUgQzxjb21wcmVzc2lvbl9pc192YWxpZF9sZXZlbD4pLgorCis9Y3V0CisKK3N1YiBjb21wcmVzc2lvbl9nZXRfZGVmYXVsdF9sZXZlbCB7CisgICAgaWYgKGRlZmluZWQgJGRlZmF1bHRfY29tcHJlc3Npb25fbGV2ZWwpIHsKKyAgICAgICAgcmV0dXJuICRkZWZhdWx0X2NvbXByZXNzaW9uX2xldmVsOworICAgIH0gZWxzZSB7CisgICAgICAgIHJldHVybiBjb21wcmVzc2lvbl9nZXRfcHJvcGVydHkoJGRlZmF1bHRfY29tcHJlc3Npb24sICJkZWZhdWx0X2xldmVsIik7CisgICAgfQorfQorCitzdWIgY29tcHJlc3Npb25fc2V0X2RlZmF1bHRfbGV2ZWwgeworICAgIG15ICgkbGV2ZWwpID0gQF87CisgICAgZXJyb3IoX2coIiVzIGlzIG5vdCBhIGNvbXByZXNzaW9uIGxldmVsIiksICRsZXZlbCkKKyAgICAgICAgICAgIHVubGVzcyAhZGVmaW5lZCgkbGV2ZWwpIG9yIGNvbXByZXNzaW9uX2lzX3ZhbGlkX2xldmVsKCRsZXZlbCk7CisgICAgJGRlZmF1bHRfY29tcHJlc3Npb25fbGV2ZWwgPSAkbGV2ZWw7Cit9CisKKz1pdGVtIGNvbXByZXNzaW9uX2lzX3ZhbGlkX2xldmVsKCRsZXZlbCkKKworUmV0dXJucyBhIGJvb2xlYW4gaW5kaWNhdGluZyB3aGV0aGVyICRsZXZlbCBpcyBhIHZhbGlkIGNvbXByZXNzaW9uIGxldmVsCisoaXQgbXVzdCBiZSBlaXRoZXIgYSBudW1iZXIgYmV0d2VlbiAxIGFuZCA5IG9yICJmYXN0IiBvciAiYmVzdCIpCisKKz1jdXQKKworc3ViIGNvbXByZXNzaW9uX2lzX3ZhbGlkX2xldmVsIHsKKyAgICBteSAoJGxldmVsKSA9IEBfOworICAgIHJldHVybiAkbGV2ZWwgPX4gL14oWzEtOV18ZmFzdHxiZXN0KSQvOworfQorCis9YmFjaworCis9aGVhZDEgQVVUSE9SCisKK1JhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4uCisKKz1jdXQKKworMTsKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9EcGtnL0NvbXByZXNzaW9uL0ZpbGVIYW5kbGUucG0gYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvRHBrZy9Db21wcmVzc2lvbi9GaWxlSGFuZGxlLnBtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmIwYWZmN2IKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvRHBrZy9Db21wcmVzc2lvbi9GaWxlSGFuZGxlLnBtCkBAIC0wLDAgKzEsNDQ0IEBACisjIENvcHlyaWdodCDCqSAyMDA4LTIwMTAgUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorIworIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorIworIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorIworIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKworcGFja2FnZSBEcGtnOjpDb21wcmVzc2lvbjo6RmlsZUhhbmRsZTsKKwordXNlIHN0cmljdDsKK3VzZSB3YXJuaW5nczsKKworb3VyICRWRVJTSU9OID0gIjEuMDAiOworCit1c2UgRHBrZzo6Q29tcHJlc3Npb247Cit1c2UgRHBrZzo6Q29tcHJlc3Npb246OlByb2Nlc3M7Cit1c2UgRHBrZzo6R2V0dGV4dDsKK3VzZSBEcGtnOjpFcnJvckhhbmRsaW5nOwordXNlIFBPU0lYIHF3KFdJRlNJR05BTEVEIFdURVJNU0lHIFNJR1BJUEUpOworCit1c2UgYmFzZSBxdyhGaWxlSGFuZGxlIFRpZTo6SGFuZGxlKTsKKworIyBVc2VmdWwgcmVmZXJlbmNlIHRvIHVuZGVyc3RhbmQgc29tZSBrbHVkZ2VzIHJlcXVpcmVkIHRvCisjIGhhdmUgdGhlIG9iamVjdCBiZWhhdmUgbGlrZSBhIGZpbGVoYW5kbGUKKyMgaHR0cDovL2Jsb2cud29vYmxpbmcub3JnLzIwMDkvMTAvYXJlLWZpbGVoYW5kbGVzLW9iamVjdHMuaHRtbAorCis9ZW5jb2RpbmcgdXRmOAorCis9aGVhZDEgTkFNRQorCitEcGtnOjpDb21wcmVzc2lvbjo6RmlsZUhhbmRsZSAtIG9iamVjdCBkZWFsaW5nIHRyYW5zcGFyZW50bHkgd2l0aCBmaWxlIGNvbXByZXNzaW9uCisKKz1oZWFkMSBTWU5PUFNJUworCisgICAgdXNlIERwa2c6OkNvbXByZXNzaW9uOjpGaWxlSGFuZGxlOworCisgICAgJGZoID0gRHBrZzo6Q29tcHJlc3Npb246OkZpbGVIYW5kbGUtPm5ldyhmaWxlbmFtZT0+InNhbXBsZS5neiIpOworICAgIHByaW50ICRmaCAiU29tZXRoaW5nXG4iOworICAgIGNsb3NlICRmaDsKKworICAgICRmaCA9IERwa2c6OkNvbXByZXNzaW9uOjpGaWxlSGFuZGxlLT5uZXcoKTsKKyAgICBvcGVuKCRmaCwgIj4iLCAic2FtcGxlLmJ6MiIpOworICAgIHByaW50ICRmaCAiU29tZXRoaW5nXG4iOworICAgIGNsb3NlICRmaDsKKworICAgICRmaCA9IERwa2c6OkNvbXByZXNzaW9uOjpGaWxlSGFuZGxlLT5uZXcoKTsKKyAgICAkZmgtPm9wZW4oInNhbXBsZS54eiIsICJ3Iik7CisgICAgJGZoLT5wcmludCgiU29tZXRoaW5nXG4iKTsKKyAgICAkZmgtPmNsb3NlKCk7CisKKyAgICAkZmggPSBEcGtnOjpDb21wcmVzc2lvbjo6RmlsZUhhbmRsZS0+bmV3KGZpbGVuYW1lPT4ic2FtcGxlLmd6Iik7CisgICAgbXkgQGxpbmVzID0gPCRmaD47CisgICAgY2xvc2UgJGZoOworCisgICAgJGZoID0gRHBrZzo6Q29tcHJlc3Npb246OkZpbGVIYW5kbGUtPm5ldygpOworICAgIG9wZW4oJGZoLCAiPCIsICJzYW1wbGUuYnoyIik7CisgICAgbXkgQGxpbmVzID0gPCRmaD47CisgICAgY2xvc2UgJGZoOworCisgICAgJGZoID0gRHBrZzo6Q29tcHJlc3Npb246OkZpbGVIYW5kbGUtPm5ldygpOworICAgICRmaC0+b3Blbigic2FtcGxlLnh6IiwgInIiKTsKKyAgICBteSBAbGluZXMgPSAkZmgtPmdldGxpbmVzKCk7CisgICAgJGZoLT5jbG9zZSgpOworCis9aGVhZDEgREVTQ1JJUFRJT04KKworRHBrZzo6Q29tcHJlc3Npb246OkZpbGVIYW5kbGUgaXMgYW4gb2JqZWN0IHRoYXQgY2FuIGJlIHVzZWQKK2xpa2UgYW55IGZpbGVoYW5kbGUgYW5kIHRoYXQgZGVhbHMgdHJhbnNwYXJlbnRseSB3aXRoIGNvbXByZXNzZWQKK2ZpbGVzLiBCeSBkZWZhdWx0LCB0aGUgY29tcHJlc3Npb24gc2NoZW1lIGlzIGd1ZXNzZWQgZnJvbSB0aGUgZmlsZW5hbWUKK2J1dCB5b3UgY2FuIG92ZXJyaWRlIHRoaXMgYmVoYXZpb3VyIHdpdGggdGhlIG1ldGhvZCBDPHNldF9jb21wcmVzc2lvbj4uCisKK0lmIHlvdSBkb24ndCBvcGVuIHRoZSBmaWxlIGV4cGxpY2l0bHksIGl0IHdpbGwgYmUgYXV0by1vcGVuZWQgb24gdGhlCitmaXJzdCByZWFkIG9yIHdyaXRlIG9wZXJhdGlvbiBiYXNlZCBvbiB0aGUgZmlsZW5hbWUgc2V0IGF0IGNyZWF0aW9uIHRpbWUKKyhvciBsYXRlciB3aXRoIHRoZSBDPHNldF9maWxlbmFtZT4gbWV0aG9kKS4KKworT25jZSBhIGZpbGUgaGFzIGJlZW4gb3BlbmVkLCB0aGUgZmlsZWhhbmRsZSBtdXN0IGJlIGNsb3NlZCBiZWZvcmUgYmVpbmcKK2FibGUgdG8gb3BlbiBhbm90aGVyIGZpbGUuCisKKz1oZWFkMSBTVEFOREFSRCBGVU5DVElPTlMKKworVGhlIHN0YW5kYXJkIGZ1bmN0aW9ucyBhY3Rpbmcgb24gZmlsZWhhbmRsZXMgc2hvdWxkIGFjY2VwdCBhCitEcGtnOjpDb21wcmVzc2lvbjo6RmlsZUhhbmRsZSBvYmplY3QgdHJhbnNwYXJlbnRseSBpbmNsdWRpbmcKK0M8b3Blbj4gKG9ubHkgd2hlbiB1c2luZyB0aGUgdmFyaWFudCB3aXRoIDMgcGFyYW1ldGVycyksIEM8Y2xvc2U+LAorQzxiaW5tb2RlPiwgQzxlb2Y+LCBDPGZpbGVubz4sIEM8Z2V0Yz4sIEM8cHJpbnQ+LCBDPHByaW50Zj4sIEM8cmVhZD4sCitDPHN5c3JlYWQ+LCBDPHNheT4sIEM8d3JpdGU+LCBDPHN5c3dyaXRlPiwgQzxzZWVrPiwgQzxzeXNzZWVrPiwgQzx0ZWxsPi4KKworTm90ZSBob3dldmVyIHRoYXQgQzxzZWVrPiBhbmQgQzxzeXNzZWVrPiB3aWxsIG9ubHkgd29yayBvbiB1bmNvbXByZXNzZWQKK2ZpbGVzIGFzIGNvbXByZXNzZWQgZmlsZXMgYXJlIHJlYWxseSBwaXBlcyB0byB0aGUgY29tcHJlc3NvciBwcm9ncmFtcworYW5kIHlvdSBjYW4ndCBzZWVrIG9uIGEgcGlwZS4KKworPWhlYWQxIEZpbGVIYW5kbGUgTUVUSE9EUworCitUaGUgb2JqZWN0IGluaGVyaXRzIGZyb20gRmlsZUhhbmRsZSBzbyBhbGwgbWV0aG9kcyB0aGF0IHdvcmsgb24gdGhpcworb2JqZWN0IHNob3VsZCB3b3JrIGZvciBEcGtnOjpDb21wcmVzc2lvbjo6RmlsZUhhbmRsZSB0b28uIFRoZXJlCittYXkgYmUgZXhjZXB0aW9ucyB0aG91Z2guCisKKz1oZWFkMSBQVUJMSUMgTUVUSE9EUworCis9b3ZlciA0CisKKz1pdGVtIG15ICRmaCA9IERwa2c6OkNvbXByZXNzaW9uOjpGaWxlSGFuZGxlLT5uZXcoJW9wdHMpCisKK0NyZWF0ZXMgYSBuZXcgZmlsZWhhbmRsZSBzdXBwb3J0aW5nIG9uLXRoZS1mbHkgY29tcHJlc3Npb24vZGVjb21wcmVzc2lvbi4KK1N1cHBvcnRlZCBvcHRpb25zIGFyZSAiZmlsZW5hbWUiLCAiY29tcHJlc3Npb24iLCAiY29tcHJlc3Npb25fbGV2ZWwiIChzZWUKK3Jlc3BlY3RpdmUgc2V0XyogZnVuY3Rpb25zKSBhbmQgImFkZF9jb21wX2V4dCIuIElmICJhZGRfY29tcF9leHQiCitldmFsdWF0ZXMgdG8gdHJ1ZSwgdGhlbiB0aGUgZXh0ZW5zaW9uIGNvcnJlc3BvbmRpbmcgdG8gdGhlIHNlbGVjdGVkCitjb21wcmVzc2lvbiBzY2hlbWUgaXMgYXV0b21hdGljYWxseSBhZGRlZCB0byB0aGUgcmVjb3JkZWQgZmlsZW5hbWUuIEl0J3MKK29idmlvdXNseSBpbmNvbXBhdGlibGUgd2l0aCBhdXRvbWF0aWMgZGV0ZWN0aW9uIG9mIHRoZSBjb21wcmVzc2lvbiBtZXRob2QuCisKKz1jdXQKKworIyBPYmplY3QgbWV0aG9kcworc3ViIG5ldyB7CisgICAgbXkgKCR0aGlzLCAlYXJncykgPSBAXzsKKyAgICBteSAkY2xhc3MgPSByZWYoJHRoaXMpIHx8ICR0aGlzOworICAgIG15ICRzZWxmID0gRmlsZUhhbmRsZS0+bmV3KCk7CisgICAgIyBUeWluZyBpcyByZXF1aXJlZCB0byBvdmVybG9hZCB0aGUgb3BlbiBmdW5jdGlvbnMgYW5kIHRvIGF1dG8tb3BlbgorICAgICMgdGhlIGZpbGUgb24gZmlyc3QgcmVhZC93cml0ZSBvcGVyYXRpb24KKyAgICB0aWUgKiRzZWxmLCAkY2xhc3MsICRzZWxmOworICAgIGJsZXNzICRzZWxmLCAkY2xhc3M7CisgICAgIyBJbml0aWFsaXphdGlvbnMKKyAgICAqJHNlbGYtPnsiY29tcHJlc3Npb24ifSA9ICJhdXRvIjsKKyAgICAqJHNlbGYtPnsiY29tcHJlc3NvciJ9ID0gRHBrZzo6Q29tcHJlc3Npb246OlByb2Nlc3MtPm5ldygpOworICAgICokc2VsZi0+eyJhZGRfY29tcF9leHQifSA9ICRhcmdzeyJhZGRfY29tcHJlc3Npb25fZXh0ZW5zaW9uIn0gfHwKKwkgICAgJGFyZ3N7ImFkZF9jb21wX2V4dCJ9IHx8IDA7CisgICAgKiRzZWxmLT57ImFsbG93X3NpZ3BpcGUifSA9IDA7CisgICAgaWYgKGV4aXN0cyAkYXJnc3siZmlsZW5hbWUifSkgeworCSRzZWxmLT5zZXRfZmlsZW5hbWUoJGFyZ3N7ImZpbGVuYW1lIn0pOworICAgIH0KKyAgICBpZiAoZXhpc3RzICRhcmdzeyJjb21wcmVzc2lvbiJ9KSB7CisJJHNlbGYtPnNldF9jb21wcmVzc2lvbigkYXJnc3siY29tcHJlc3Npb24ifSk7CisgICAgfQorICAgIGlmIChleGlzdHMgJGFyZ3N7ImNvbXByZXNzaW9uX2xldmVsIn0pIHsKKwkkc2VsZi0+c2V0X2NvbXByZXNzaW9uX2xldmVsKCRhcmdzeyJjb21wcmVzc2lvbl9sZXZlbCJ9KTsKKyAgICB9CisgICAgcmV0dXJuICRzZWxmOworfQorCis9aXRlbSAkZmgtPmVuc3VyZV9vcGVuKCRtb2RlKQorCitFbnN1cmUgdGhlIGZpbGUgaXMgb3BlbmVkIGluIHRoZSByZXF1ZXN0ZWQgbW9kZSAoInIiIGZvciByZWFkIGFuZCAidyIgZm9yCit3cml0ZSkuIE9wZW5zIHRoZSBmaWxlIHdpdGggdGhlIHJlY29yZGVkIGZpbGVuYW1lIGlmIG5lZWRlZC4gSWYgdGhlIGZpbGUKK2lzIGFscmVhZHkgb3BlbiBidXQgbm90IGluIHRoZSByZXF1ZXN0ZWQgbW9kZSwgdGhlbiBpdCBlcnJvcnMgb3V0LgorCis9Y3V0CisKK3N1YiBlbnN1cmVfb3BlbiB7CisgICAgbXkgKCRzZWxmLCAkbW9kZSkgPSBAXzsKKyAgICBpZiAoZXhpc3RzICokc2VsZi0+eyJtb2RlIn0pIHsKKwlyZXR1cm4gaWYgKiRzZWxmLT57Im1vZGUifSBlcSAkbW9kZTsKKwlpbnRlcm5lcnIoImVuc3VyZV9vcGVuIHJlcXVlc3RlZCBpbmNvbXBhdGlibGUgbW9kZTogJG1vZGUiKTsKKyAgICB9IGVsc2UgeworCWlmICgkbW9kZSBlcSAidyIpIHsKKwkgICAgJHNlbGYtPm9wZW5fZm9yX3dyaXRlKCk7CisJfSBlbHNpZiAoJG1vZGUgZXEgInIiKSB7CisJICAgICRzZWxmLT5vcGVuX2Zvcl9yZWFkKCk7CisJfSBlbHNlIHsKKwkgICAgaW50ZXJuZXJyKCJpbnZhbGlkIG1vZGUgaW4gZW5zdXJlX29wZW46ICRtb2RlIik7CisJfQorICAgIH0KK30KKworIyMKKyMjIE1FVEhPRFMgRk9SIFRJRUQgSEFORExFCisjIworc3ViIFRJRUhBTkRMRSB7CisgICAgbXkgKCRjbGFzcywgJHNlbGYpID0gQF87CisgICAgcmV0dXJuICRzZWxmOworfQorCitzdWIgV1JJVEUgeworICAgIG15ICgkc2VsZiwgJHNjYWxhciwgJGxlbmd0aCwgJG9mZnNldCkgPSBAXzsKKyAgICAkc2VsZi0+ZW5zdXJlX29wZW4oInciKTsKKyAgICByZXR1cm4gKiRzZWxmLT57J2ZpbGUnfS0+d3JpdGUoJHNjYWxhciwgJGxlbmd0aCwgJG9mZnNldCk7Cit9CisKK3N1YiBSRUFEIHsKKyAgICBteSAoJHNlbGYsICRzY2FsYXIsICRsZW5ndGgsICRvZmZzZXQpID0gQF87CisgICAgJHNlbGYtPmVuc3VyZV9vcGVuKCJyIik7CisgICAgcmV0dXJuICokc2VsZi0+eydmaWxlJ30tPnJlYWQoJHNjYWxhciwgJGxlbmd0aCwgJG9mZnNldCk7Cit9CisKK3N1YiBSRUFETElORSB7CisgICAgbXkgKCRzZWxmKSA9IHNoaWZ0OworICAgICRzZWxmLT5lbnN1cmVfb3BlbigiciIpOworICAgIHJldHVybiAqJHNlbGYtPnsiZmlsZSJ9LT5nZXRsaW5lcygpIGlmIHdhbnRhcnJheTsKKyAgICByZXR1cm4gKiRzZWxmLT57ImZpbGUifS0+Z2V0bGluZSgpOworfQorCitzdWIgT1BFTiB7CisgICAgbXkgKCRzZWxmKSA9IHNoaWZ0OworICAgIGlmIChzY2FsYXIoQF8pID09IDIpIHsKKwlteSAoJG1vZGUsICRmaWxlbmFtZSkgPSBAXzsKKwkkc2VsZi0+c2V0X2ZpbGVuYW1lKCRmaWxlbmFtZSk7CisJaWYgKCRtb2RlIGVxICI+IikgeworCSAgICAkc2VsZi0+b3Blbl9mb3Jfd3JpdGUoKTsKKwl9IGVsc2lmICgkbW9kZSBlcSAiPCIpIHsKKwkgICAgJHNlbGYtPm9wZW5fZm9yX3JlYWQoKTsKKwl9IGVsc2UgeworCSAgICBpbnRlcm5lcnIoIlVuc3VwcG9ydGVkIG9wZW4gbW9kZSBvbiBEcGtnOjpDb21wcmVzc2lvbjo6RmlsZUhhbmRsZTogJG1vZGUiKTsKKwl9CisgICAgfSBlbHNlIHsKKwlpbnRlcm5lcnIoIkRwa2c6OkNvbXByZXNzaW9uOjpGaWxlSGFuZGxlIG9ubHkgc3VwcG9ydHMgb3BlbigpIHdpdGggMyBwYXJhbWV0ZXJzIik7CisgICAgfQorICAgIHJldHVybiAxOyAjIEFsd2F5cyB3b3JrcyAob3RoZXJ3aXNlIGVycm9ycyBvdXQpCit9CisKK3N1YiBDTE9TRSB7CisgICAgbXkgKCRzZWxmKSA9IHNoaWZ0OworICAgIG15ICRyZXQgPSAxOworICAgIGlmIChkZWZpbmVkICokc2VsZi0+eydmaWxlJ30pIHsKKwkkcmV0ID0gKiRzZWxmLT57J2ZpbGUnfS0+Y2xvc2UoQF8pIGlmICokc2VsZi0+eydmaWxlJ30tPm9wZW5lZCgpOworICAgIH0gZWxzZSB7CisJJHJldCA9IDA7CisgICAgfQorICAgICRzZWxmLT5jbGVhbnVwKCk7CisgICAgcmV0dXJuICRyZXQ7Cit9CisKK3N1YiBGSUxFTk8geworICAgIG15ICgkc2VsZikgPSBzaGlmdDsKKyAgICByZXR1cm4gKiRzZWxmLT57ImZpbGUifS0+ZmlsZW5vKEBfKSBpZiBkZWZpbmVkICokc2VsZi0+eyJmaWxlIn07CisgICAgcmV0dXJuIHVuZGVmOworfQorCitzdWIgRU9GIHsKKyAgICBteSAoJHNlbGYpID0gc2hpZnQ7CisgICAgcmV0dXJuICokc2VsZi0+eyJmaWxlIn0tPmVvZihAXykgaWYgZGVmaW5lZCAqJHNlbGYtPnsiZmlsZSJ9OworICAgIHJldHVybiAxOworfQorCitzdWIgU0VFSyB7CisgICAgbXkgKCRzZWxmKSA9IHNoaWZ0OworICAgIHJldHVybiAqJHNlbGYtPnsiZmlsZSJ9LT5zZWVrKEBfKSBpZiBkZWZpbmVkICokc2VsZi0+eyJmaWxlIn07CisgICAgcmV0dXJuIDA7Cit9CisKK3N1YiBURUxMIHsKKyAgICBteSAoJHNlbGYpID0gc2hpZnQ7CisgICAgcmV0dXJuICokc2VsZi0+eyJmaWxlIn0tPnRlbGwoQF8pIGlmIGRlZmluZWQgKiRzZWxmLT57ImZpbGUifTsKKyAgICByZXR1cm4gLTE7Cit9CisKK3N1YiBCSU5NT0RFIHsKKyAgICBteSAoJHNlbGYpID0gc2hpZnQ7CisgICAgcmV0dXJuICokc2VsZi0+eyJmaWxlIn0tPmJpbm1vZGUoQF8pIGlmIGRlZmluZWQgKiRzZWxmLT57ImZpbGUifTsKKyAgICByZXR1cm4gdW5kZWY7Cit9CisKKyMjCisjIyBOT1JNQUwgTUVUSE9EUworIyMKKworPWl0ZW0gJGZoLT5zZXRfY29tcHJlc3Npb24oJGNvbXApCisKK0RlZmluZXMgdGhlIGNvbXByZXNzaW9uIG1ldGhvZCB1c2VkLiAkY29tcCBzaG91bGQgb25lIG9mIHRoZSBtZXRob2RzIHN1cHBvcnRlZCBieQorQjxEcGtnOjpDb21wcmVzc2lvbj4gb3IgIm5vbmUiIG9yICJhdXRvIi4gIm5vbmUiIGluZGljYXRlcyB0aGF0IHRoZSBmaWxlIGlzCit1bmNvbXByZXNzZWQgYW5kICJhdXRvIiBpbmRpY2F0ZXMgdGhhdCB0aGUgbWV0aG9kIG11c3QgYmUgZ3Vlc3NlZCBiYXNlZAorb24gdGhlIGZpbGVuYW1lIGV4dGVuc2lvbiB1c2VkLgorCis9Y3V0CisKK3N1YiBzZXRfY29tcHJlc3Npb24geworICAgIG15ICgkc2VsZiwgJG1ldGhvZCkgPSBAXzsKKyAgICBpZiAoJG1ldGhvZCBuZSAibm9uZSIgYW5kICRtZXRob2QgbmUgImF1dG8iKSB7CisJKiRzZWxmLT57ImNvbXByZXNzb3IifS0+c2V0X2NvbXByZXNzaW9uKCRtZXRob2QpOworICAgIH0KKyAgICAqJHNlbGYtPnsiY29tcHJlc3Npb24ifSA9ICRtZXRob2Q7Cit9CisKKz1pdGVtICRmaC0+c2V0X2NvbXByZXNzaW9uX2xldmVsKCRsZXZlbCkKKworSW5kaWNhdGUgdGhlIGRlc2lyZWQgY29tcHJlc3Npb24gbGV2ZWwuIEl0IHNob3VsZCBiZSBhIHZhbHVlIGFjY2VwdGVkCitieSB0aGUgZnVuY3Rpb24gQzxjb21wcmVzc2lvbl9pc192YWxpZF9sZXZlbD4gb2YgQjxEcGtnOjpDb21wcmVzc2lvbj4uCisKKz1jdXQKKworc3ViIHNldF9jb21wcmVzc2lvbl9sZXZlbCB7CisgICAgbXkgKCRzZWxmLCAkbGV2ZWwpID0gQF87CisgICAgKiRzZWxmLT57ImNvbXByZXNzb3IifS0+c2V0X2NvbXByZXNzaW9uX2xldmVsKCRsZXZlbCk7Cit9CisKKz1pdGVtICRmaC0+c2V0X2ZpbGVuYW1lKCRuYW1lLCBbJGFkZF9jb21wX2V4dF0pCisKK1VzZSAkbmFtZSBhcyBmaWxlbmFtZSB3aGVuIHRoZSBmaWxlIG11c3QgYmUgb3BlbmVkL2NyZWF0ZWQuIElmCiskYWRkX2NvbXBfZXh0IGlzIHBhc3NlZCwgaXQgaW5kaWNhdGVzIHdoZXRoZXIgdGhlIGRlZmF1bHQgZXh0ZW5zaW9uCitvZiB0aGUgY29tcHJlc3Npb24gbWV0aG9kIG11c3QgYmUgYXV0b21hdGljYWxseSBhZGRlZCB0byB0aGUgZmlsZW5hbWUKKyhvciBub3QpLgorCis9Y3V0CisKK3N1YiBzZXRfZmlsZW5hbWUgeworICAgIG15ICgkc2VsZiwgJGZpbGVuYW1lLCAkYWRkX2NvbXBfZXh0KSA9IEBfOworICAgICokc2VsZi0+eyJmaWxlbmFtZSJ9ID0gJGZpbGVuYW1lOworICAgICMgQXV0b21hdGljYWxseSBhZGQgY29tcHJlc3Npb24gZXh0ZW5zaW9uIHRvIGZpbGVuYW1lCisgICAgaWYgKGRlZmluZWQoJGFkZF9jb21wX2V4dCkpIHsKKwkqJHNlbGYtPnsiYWRkX2NvbXBfZXh0In0gPSAkYWRkX2NvbXBfZXh0OworICAgIH0KKyAgICBpZiAoKiRzZWxmLT57ImFkZF9jb21wX2V4dCJ9IGFuZCAkZmlsZW5hbWUgPX4gL1wuJGNvbXByZXNzaW9uX3JlX2ZpbGVfZXh0JC8pIHsKKwl3YXJuaW5nKCJmaWxlbmFtZSAlcyBhbHJlYWR5IGhhcyBhbiBleHRlbnNpb24gb2YgYSBjb21wcmVzc2VkIGZpbGUgIiAuCisJICAgICAgICAiYW5kIGFkZF9jb21wX2V4dCBpcyBhY3RpdmUiLCAkZmlsZW5hbWUpOworICAgIH0KK30KKworPWl0ZW0gbXkgJGZpbGUgPSAkZmgtPmdldF9maWxlbmFtZSgpCisKK1JldHVybnMgdGhlIGZpbGVuYW1lIHRoYXQgd291bGQgYmUgdXNlZCB3aGVuIHRoZSBmaWxlaGFuZGxlIG11c3QKK2JlIG9wZW5lZCAoYm90aCBpbiByZWFkIGFuZCB3cml0ZSBtb2RlKS4gVGhpcyBmdW5jdGlvbiBlcnJvcnMgb3V0CitpZiAiYWRkX2NvbXBfZXh0IiBpcyBlbmFibGVhY3RpdmF0ZWQgd2hpbGUgdGhlIGNvbXByZXNzaW9uIG1ldGhvZCBpcyBzZXQKK3RvICJhdXRvIi4gVGhlIHJldHVybmVkIGZpbGVuYW1lIGluY2x1ZGVzIHRoZSBleHRlbnNpb24gb2YgdGhlIGNvbXByZXNzaW9uCittZXRob2QgaWYgImFkZF9jb21wX2V4dCIgaXMgZW5hYmxlZC4KKworPWN1dAorCitzdWIgZ2V0X2ZpbGVuYW1lIHsKKyAgICBteSAkc2VsZiA9IHNoaWZ0OworICAgIG15ICRjb21wID0gKiRzZWxmLT57ImNvbXByZXNzaW9uIn07CisgICAgaWYgKCokc2VsZi0+eydhZGRfY29tcF9leHQnfSkgeworCWlmICgkY29tcCBlcSAiYXV0byIpIHsKKwkgICAgaW50ZXJuZXJyKCJhdXRvbWF0aWMgZGV0ZWN0aW9uIG9mIGNvbXByZXNzaW9uIGlzICIgLgorCSAgICAgICAgICAgICAgImluY29tcGF0aWJsZSB3aXRoIGFkZF9jb21wX2V4dCIpOworCX0gZWxzaWYgKCRjb21wIGVxICJub25lIikgeworCSAgICByZXR1cm4gKiRzZWxmLT57ImZpbGVuYW1lIn07CisJfSBlbHNlIHsKKwkgICAgcmV0dXJuICokc2VsZi0+eyJmaWxlbmFtZSJ9IC4gIi4iIC4KKwkgICAgICAgICAgIGNvbXByZXNzaW9uX2dldF9wcm9wZXJ0eSgkY29tcCwgImZpbGVfZXh0Iik7CisJfQorICAgIH0gZWxzZSB7CisJcmV0dXJuICokc2VsZi0+eyJmaWxlbmFtZSJ9OworICAgIH0KK30KKworPWl0ZW0gJHJldCA9ICRmaC0+dXNlX2NvbXByZXNzaW9uKCkKKworUmV0dXJucyAiMCIgaWYgbm8gY29tcHJlc3Npb24gaXMgdXNlZCBhbmQgdGhlIGNvbXByZXNzaW9uIG1ldGhvZCB1c2VkCitvdGhlcndpc2UuIElmIHRoZSBjb21wcmVzc2lvbiBpcyBzZXQgdG8gImF1dG8iLCB0aGUgdmFsdWUgcmV0dXJuZWQKK2RlcGVuZHMgb24gdGhlIGV4dGVuc2lvbiBvZiB0aGUgZmlsZW5hbWUgb2J0YWluZWQgd2l0aCB0aGUgQjxnZXRfZmlsZW5hbWU+CittZXRob2QuCisKKz1jdXQKKworc3ViIHVzZV9jb21wcmVzc2lvbiB7CisgICAgbXkgKCRzZWxmKSA9IEBfOworICAgIG15ICRjb21wID0gKiRzZWxmLT57ImNvbXByZXNzaW9uIn07CisgICAgaWYgKCRjb21wIGVxICJub25lIikgeworCXJldHVybiAwOworICAgIH0gZWxzaWYgKCRjb21wIGVxICJhdXRvIikgeworCSRjb21wID0gY29tcHJlc3Npb25fZ3Vlc3NfZnJvbV9maWxlbmFtZSgkc2VsZi0+Z2V0X2ZpbGVuYW1lKCkpOworCSokc2VsZi0+eyJjb21wcmVzc29yIn0tPnNldF9jb21wcmVzc2lvbigkY29tcCkgaWYgJGNvbXA7CisgICAgfQorICAgIHJldHVybiAkY29tcDsKK30KKworPWl0ZW0gbXkgJHJlYWxfZmggPSAkZmgtPmdldF9maWxlaGFuZGxlKCkKKworUmV0dXJucyB0aGUgcmVhbCB1bmRlcmx5aW5nIGZpbGVoYW5kbGUuIFVzZWZ1bCBpZiB5b3Ugd2FudCB0byBwYXNzIGl0CithbG9uZyBpbiBhIGRlcml2ZWQgb2JqZWN0LgorCis9Y3V0CisKK3N1YiBnZXRfZmlsZWhhbmRsZSB7CisgICAgbXkgKCRzZWxmKSA9IEBfOworICAgIHJldHVybiAqJHNlbGYtPnsiZmlsZSJ9IGlmIGV4aXN0cyAqJHNlbGYtPnsiZmlsZSJ9OworfQorCisjIyBJTlRFUk5BTCBNRVRIT0RTCisKK3N1YiBvcGVuX2Zvcl93cml0ZSB7CisgICAgbXkgKCRzZWxmKSA9IEBfOworICAgIGVycm9yKCJDYW4ndCByZW9wZW4gYW4gYWxyZWFkeSBvcGVuZWQgY29tcHJlc3NlZCBmaWxlIikgaWYgZXhpc3RzICokc2VsZi0+eyJtb2RlIn07CisgICAgbXkgJGZpbGVoYW5kbGU7CisgICAgaWYgKCRzZWxmLT51c2VfY29tcHJlc3Npb24oKSkgeworCSokc2VsZi0+eydjb21wcmVzc29yJ30tPmNvbXByZXNzKGZyb21fcGlwZSA9PiBcJGZpbGVoYW5kbGUsCisJCXRvX2ZpbGUgPT4gJHNlbGYtPmdldF9maWxlbmFtZSgpKTsKKyAgICB9IGVsc2UgeworCUNPUkU6Om9wZW4oJGZpbGVoYW5kbGUsICI+IiwgJHNlbGYtPmdldF9maWxlbmFtZSkgfHwKKwkJc3lzZXJyKF9nKCJjYW5ub3Qgd3JpdGUgJXMiKSwgJHNlbGYtPmdldF9maWxlbmFtZSgpKTsKKyAgICB9CisgICAgKiRzZWxmLT57Im1vZGUifSA9ICJ3IjsKKyAgICAqJHNlbGYtPnsiZmlsZSJ9ID0gJGZpbGVoYW5kbGU7Cit9CisKK3N1YiBvcGVuX2Zvcl9yZWFkIHsKKyAgICBteSAoJHNlbGYpID0gQF87CisgICAgZXJyb3IoIkNhbid0IHJlb3BlbiBhbiBhbHJlYWR5IG9wZW5lZCBjb21wcmVzc2VkIGZpbGUiKSBpZiBleGlzdHMgKiRzZWxmLT57Im1vZGUifTsKKyAgICBteSAkZmlsZWhhbmRsZTsKKyAgICBpZiAoJHNlbGYtPnVzZV9jb21wcmVzc2lvbigpKSB7CisJKiRzZWxmLT57J2NvbXByZXNzb3InfS0+dW5jb21wcmVzcyh0b19waXBlID0+IFwkZmlsZWhhbmRsZSwKKwkJZnJvbV9maWxlID0+ICRzZWxmLT5nZXRfZmlsZW5hbWUoKSk7CisgICAgICAgICokc2VsZi0+eydhbGxvd19zaWdwaXBlJ30gPSAxOworICAgIH0gZWxzZSB7CisJQ09SRTo6b3BlbigkZmlsZWhhbmRsZSwgIjwiLCAkc2VsZi0+Z2V0X2ZpbGVuYW1lKSB8fAorCQlzeXNlcnIoX2coImNhbm5vdCByZWFkICVzIiksICRzZWxmLT5nZXRfZmlsZW5hbWUoKSk7CisgICAgfQorICAgICokc2VsZi0+eyJtb2RlIn0gPSAiciI7CisgICAgKiRzZWxmLT57ImZpbGUifSA9ICRmaWxlaGFuZGxlOworfQorCitzdWIgY2xlYW51cCB7CisgICAgbXkgKCRzZWxmKSA9IEBfOworICAgIG15ICRjbWRsaW5lID0gKiRzZWxmLT57ImNvbXByZXNzb3IifXsiY21kbGluZSJ9IHx8ICIiOworICAgICokc2VsZi0+eyJjb21wcmVzc29yIn0tPndhaXRfZW5kX3Byb2Nlc3Mobm9jaGVjayA9PiAqJHNlbGYtPnsnYWxsb3dfc2lncGlwZSd9KTsKKyAgICBpZiAoKiRzZWxmLT57J2FsbG93X3NpZ3BpcGUnfSkgeworICAgICAgICB1bmxlc3MgKCgkPyA9PSAwKSB8fCAoV0lGU0lHTkFMRUQoJD8pICYmIChXVEVSTVNJRygkPykgPT0gU0lHUElQRSkpKSB7CisgICAgICAgICAgICBzdWJwcm9jZXJyKCRjbWRsaW5lKTsKKyAgICAgICAgfQorCSokc2VsZi0+eydhbGxvd19zaWdwaXBlJ30gPSAwOworICAgIH0KKyAgICBkZWxldGUgKiRzZWxmLT57Im1vZGUifTsKKyAgICBkZWxldGUgKiRzZWxmLT57ImZpbGUifTsKK30KKworPWJhY2sKKworPWhlYWQxIERFUklWRUQgT0JKRUNUUworCitJZiB5b3Ugd2FudCB0byBjcmVhdGUgYW4gb2JqZWN0IHRoYXQgaW5oZXJpdHMgZnJvbQorRHBrZzo6Q29tcHJlc3Npb246OkZpbGVIYW5kbGUgeW91IG11c3QgYmUgYXdhcmUgdGhhdAordGhlIG9iamVjdCBpcyBhIHJlZmVyZW5jZSB0byBhIEdMT0IgdGhhdCBpcyByZXR1cm5lZCBieSBTeW1ib2w6OmdlbnN5bSgpCithbmQgYXMgc3VjaCBpdCdzIG5vdCBhIEhBU0guCisKK1lvdSBjYW4gc3RvcmUgaW50ZXJuYWwgZGF0YSBpbiBhIGhhc2ggYnV0IHlvdSBoYXZlIHRvIHVzZQorQzwqJHNlbGYtPnsuLi59PiB0byBhY2Nlc3MgdGhlIGFzc29jaWF0ZWQgaGFzaCBsaWtlIGluIHRoZSBleGFtcGxlIGJlbG93OgorCisgICAgc3ViIHNldF9vcHRpb24geworCW15ICgkc2VsZiwgJHZhbHVlKSA9IEBfOworCSokc2VsZi0+eyJvcHRpb24ifSA9ICR2YWx1ZTsKKyAgICB9CisKKworPWhlYWQxIEFVVEhPUgorCitSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKz1jdXQKKzE7CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvRHBrZy9Db21wcmVzc2lvbi9Qcm9jZXNzLnBtIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL0Rwa2cvQ29tcHJlc3Npb24vUHJvY2Vzcy5wbQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41MjAwNzgxCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL0Rwa2cvQ29tcHJlc3Npb24vUHJvY2Vzcy5wbQpAQCAtMCwwICsxLDIwNSBAQAorIyBDb3B5cmlnaHQgwqkgMjAwOC0yMDEwIFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KKyMKKyMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyMKKyMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisjIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisjIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyMKKyMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisKK3BhY2thZ2UgRHBrZzo6Q29tcHJlc3Npb246OlByb2Nlc3M7CisKK3VzZSBzdHJpY3Q7Cit1c2Ugd2FybmluZ3M7CisKK291ciAkVkVSU0lPTiA9ICIxLjAwIjsKKwordXNlIERwa2c6OkNvbXByZXNzaW9uOwordXNlIERwa2c6OkVycm9ySGFuZGxpbmc7Cit1c2UgRHBrZzo6R2V0dGV4dDsKK3VzZSBEcGtnOjpJUEM7CisKKz1lbmNvZGluZyB1dGY4CisKKz1oZWFkMSBOQU1FCisKK0Rwa2c6OkNvbXByZXNzaW9uOjpQcm9jZXNzIC0gcnVuIGNvbXByZXNzaW9uL2RlY29tcHJlc3Npb24gcHJvY2Vzc2VzCisKKz1oZWFkMSBERVNDUklQVElPTgorCitUaGlzIG1vZHVsZSBwcm92aWRlcyBhbiBvYmplY3Qgb3JpZW50ZWQgaW50ZXJmYWNlIHRvIHJ1biBhbmQgbWFuYWdlCitjb21wcmVzc2lvbi9kZWNvbXByZXNzaW9uIHByb2Nlc3Nlcy4KKworPWhlYWQxIE1FVEhPRFMKKworPW92ZXIgNAorCis9aXRlbSBteSAkcHJvYyA9IERwa2c6OkNvbXByZXNzaW9uOjpQcm9jZXNzLT5uZXcoJW9wdHMpCisKK0NyZWF0ZSBhIG5ldyBpbnN0YW5jZSBvZiB0aGUgb2JqZWN0LiBTdXBwb3J0ZWQgb3B0aW9ucyBhcmUgImNvbXByZXNzaW9uIgorYW5kICJjb21wcmVzc2lvbl9sZXZlbCIgKHNlZSBjb3JyZXNwb25kaW5nIHNldF8qIGZ1bmN0aW9ucykuCisKKz1jdXQKKworc3ViIG5ldyB7CisgICAgbXkgKCR0aGlzLCAlYXJncykgPSBAXzsKKyAgICBteSAkY2xhc3MgPSByZWYoJHRoaXMpIHx8ICR0aGlzOworICAgIG15ICRzZWxmID0ge307CisgICAgYmxlc3MgJHNlbGYsICRjbGFzczsKKyAgICAkc2VsZi0+c2V0X2NvbXByZXNzaW9uKCRhcmdzeyJjb21wcmVzc2lvbiJ9IHx8IGNvbXByZXNzaW9uX2dldF9kZWZhdWx0KCkpOworICAgICRzZWxmLT5zZXRfY29tcHJlc3Npb25fbGV2ZWwoJGFyZ3N7ImNvbXByZXNzaW9uX2xldmVsIn0gfHwKKwkgICAgY29tcHJlc3Npb25fZ2V0X2RlZmF1bHRfbGV2ZWwoKSk7CisgICAgcmV0dXJuICRzZWxmOworfQorCis9aXRlbSAkcHJvYy0+c2V0X2NvbXByZXNzaW9uKCRjb21wKQorCitTZWxlY3QgdGhlIGNvbXByZXNzaW9uIG1ldGhvZCB0byB1c2UuIEl0IGVycm9ycyBvdXQgaWYgdGhlIG1ldGhvZCBpcyBub3QKK3N1cHBvcnRlZCBhY2NvcmRpbmcgdG8gQzxjb21wcmVzc2lvbl9pc19zdXBwb3J0ZWQ+IChvZgorQjxEcGtnOjpDb21wcmVzc2lvbj4pLgorCis9Y3V0CisKK3N1YiBzZXRfY29tcHJlc3Npb24geworICAgIG15ICgkc2VsZiwgJG1ldGhvZCkgPSBAXzsKKyAgICBlcnJvcihfZygiJXMgaXMgbm90IGEgc3VwcG9ydGVkIGNvbXByZXNzaW9uIG1ldGhvZCIpLCAkbWV0aG9kKQorCSAgICB1bmxlc3MgY29tcHJlc3Npb25faXNfc3VwcG9ydGVkKCRtZXRob2QpOworICAgICRzZWxmLT57ImNvbXByZXNzaW9uIn0gPSAkbWV0aG9kOworfQorCis9aXRlbSAkcHJvYy0+c2V0X2NvbXByZXNzaW9uX2xldmVsKCRsZXZlbCkKKworU2VsZWN0IHRoZSBjb21wcmVzc2lvbiBsZXZlbCB0byB1c2UuIEl0IGVycm9ycyBvdXQgaWYgdGhlIGxldmVsIGlzIG5vdAordmFsaWQgYWNjb3JkaW5nIHRvIEM8Y29tcHJlc3Npb25faXNfdmFsaWRfbGV2ZWw+IChvZgorQjxEcGtnOjpDb21wcmVzc2lvbj4pLgorCis9Y3V0CisKK3N1YiBzZXRfY29tcHJlc3Npb25fbGV2ZWwgeworICAgIG15ICgkc2VsZiwgJGxldmVsKSA9IEBfOworICAgIGVycm9yKF9nKCIlcyBpcyBub3QgYSBjb21wcmVzc2lvbiBsZXZlbCIpLCAkbGV2ZWwpCisJICAgIHVubGVzcyBjb21wcmVzc2lvbl9pc192YWxpZF9sZXZlbCgkbGV2ZWwpOworICAgICRzZWxmLT57ImNvbXByZXNzaW9uX2xldmVsIn0gPSAkbGV2ZWw7Cit9CisKKz1pdGVtIG15IEBleGVjID0gJHByb2MtPmdldF9jb21wcmVzc19jbWRsaW5lKCkKKworPWl0ZW0gbXkgQGV4ZWMgPSAkcHJvYy0+Z2V0X3VuY29tcHJlc3NfY21kbGluZSgpCisKK1JldHVybnMgYSBsaXN0IHJlYWR5IHRvIGJlIHBhc3NlZCB0byBDPGV4ZWM+LCBpdHMgZmlyc3QgZWxlbWVudCBpcyB0aGUKK3Byb2dyYW0gbmFtZSAoZWl0aGVyIGZvciBjb21wcmVzc2lvbiBvciBkZWNvbXByZXNzaW9uKSBhbmQgdGhlIGZvbGxvd2luZworZWxlbWVudHMgYXJlIHBhcmFtZXRlcnMgZm9yIHRoZSBwcm9ncmFtLgorCitXaGVuIGV4ZWN1dGVkIHRoZSBwcm9ncmFtIGFjdHMgYXMgYSBmaWx0ZXIgYmV0d2VlbiBpdHMgc3RhbmRhcmQgaW5wdXQKK2FuZCBpdHMgc3RhbmRhcmQgb3V0cHV0LgorCis9Y3V0CisKK3N1YiBnZXRfY29tcHJlc3NfY21kbGluZSB7CisgICAgbXkgKCRzZWxmKSA9IEBfOworICAgIG15IEBwcm9nID0gKEB7Y29tcHJlc3Npb25fZ2V0X3Byb3BlcnR5KCRzZWxmLT57ImNvbXByZXNzaW9uIn0sICJjb21wX3Byb2ciKX0pOworICAgIG15ICRsZXZlbCA9ICItIiAuICRzZWxmLT57ImNvbXByZXNzaW9uX2xldmVsIn07CisgICAgJGxldmVsID0gIi0tIiAuICRzZWxmLT57ImNvbXByZXNzaW9uX2xldmVsIn0KKwkgICAgaWYgJHNlbGYtPnsiY29tcHJlc3Npb25fbGV2ZWwifSAhfiBtL15bMS05XSQvOworICAgIHB1c2ggQHByb2csICRsZXZlbDsKKyAgICByZXR1cm4gQHByb2c7Cit9CisKK3N1YiBnZXRfdW5jb21wcmVzc19jbWRsaW5lIHsKKyAgICBteSAoJHNlbGYpID0gQF87CisgICAgcmV0dXJuIChAe2NvbXByZXNzaW9uX2dldF9wcm9wZXJ0eSgkc2VsZi0+eyJjb21wcmVzc2lvbiJ9LCAiZGVjb21wX3Byb2ciKX0pOworfQorCitzdWIgX3Nhbml0eV9jaGVjayB7CisgICAgbXkgKCRzZWxmLCAlb3B0cykgPSBAXzsKKyAgICAjIENoZWNrIGZvciBwcm9wZXIgY2xlYW5pbmcgYmVmb3JlIG5ldyBzdGFydAorICAgIGVycm9yKF9nKCJEcGtnOjpDb21wcmVzc2lvbjo6UHJvY2VzcyBjYW4gb25seSBzdGFydCBvbmUgc3VicHJvY2VzcyBhdCBhIHRpbWUiKSkKKwkgICAgaWYgJHNlbGYtPnsicGlkIn07CisgICAgIyBDaGVjayBvcHRpb25zCisgICAgbXkgJHRvID0gbXkgJGZyb20gPSAwOworICAgIGZvcmVhY2ggKHF3KGZpbGUgaGFuZGxlIHN0cmluZyBwaXBlKSkgeworICAgICAgICAkdG8rKyBpZiAkb3B0c3sidG9fJF8ifTsKKyAgICAgICAgJGZyb20rKyBpZiAkb3B0c3siZnJvbV8kXyJ9OworICAgIH0KKyAgICBpbnRlcm5lcnIoImV4YWN0bHkgb25lIHRvXyogcGFyYW1ldGVyIGlzIG5lZWRlZCIpIGlmICR0byAhPSAxOworICAgIGludGVybmVycigiZXhhY3RseSBvbmUgZnJvbV8qIHBhcmFtZXRlciBpcyBuZWVkZWQiKSBpZiAkZnJvbSAhPSAxOworICAgIHJldHVybiAlb3B0czsKK30KKworPWl0ZW0gJHByb2MtPmNvbXByZXNzKCVvcHRzKQorCitTdGFydHMgYSBjb21wcmVzc29yIHByb2dyYW0uIFlvdSBtdXN0IGluZGljYXRlIHdoZXJlIGl0IHdpbGwgcmVhZCBpdHMKK3VuY29tcHJlc3NlZCBkYXRhIGZyb20gYW5kIHdoZXJlIGl0IHdpbGwgd3JpdGUgaXRzIGNvbXByZXNzZWQgZGF0YSB0by4KK1RoaXMgaXMgYWNjb21wbGlzaGVkIGJ5IHBhc3Npbmcgb25lIHBhcmFtZXRlciBDPHRvXyo+IGFuZCBvbmUgcGFyYW1ldGVyCitDPGZyb21fKj4gYXMgYWNjZXB0ZWQgYnkgQjxEcGtnOjpJUEM6OnNwYXduPi4KKworWW91IG11c3QgY2FsbCBDPHdhaXRfZW5kX3Byb2Nlc3M+IGFmdGVyIGhhdmluZyBjYWxsZWQgdGhpcyBtZXRob2QgdG8KK3Byb3Blcmx5IGNsb3NlIHRoZSBzdWItcHJvY2VzcyAoYW5kIHZlcmlmeSB0aGF0IGl0IGV4aXRlZCB3aXRob3V0IGVycm9yKS4KKworPWN1dAorCitzdWIgY29tcHJlc3MgeworICAgIG15ICRzZWxmID0gc2hpZnQ7CisgICAgbXkgJW9wdHMgPSAkc2VsZi0+X3Nhbml0eV9jaGVjayhAXyk7CisgICAgbXkgQHByb2cgPSAkc2VsZi0+Z2V0X2NvbXByZXNzX2NtZGxpbmUoKTsKKyAgICAkb3B0c3siZXhlYyJ9ID0gXEBwcm9nOworICAgICRzZWxmLT57ImNtZGxpbmUifSA9ICJAcHJvZyI7CisgICAgJHNlbGYtPnsicGlkIn0gPSBzcGF3biglb3B0cyk7CisgICAgZGVsZXRlICRzZWxmLT57InBpZCJ9IGlmICRvcHRzeyJ0b19zdHJpbmcifTsgIyB3YWl0X2NoaWxkIGFscmVhZHkgZG9uZQorfQorCis9aXRlbSAkcHJvYy0+dW5jb21wcmVzcyglb3B0cykKKworU3RhcnRzIGEgZGVjb21wcmVzc29yIHByb2dyYW0uIFlvdSBtdXN0IGluZGljYXRlIHdoZXJlIGl0IHdpbGwgcmVhZCBpdHMKK2NvbXByZXNzZWQgZGF0YSBmcm9tIGFuZCB3aGVyZSBpdCB3aWxsIHdyaXRlIGl0cyB1bmNvbXByZXNzZWQgZGF0YSB0by4KK1RoaXMgaXMgYWNjb21wbGlzaGVkIGJ5IHBhc3Npbmcgb25lIHBhcmFtZXRlciBDPHRvXyo+IGFuZCBvbmUgcGFyYW1ldGVyCitDPGZyb21fKj4gYXMgYWNjZXB0ZWQgYnkgQjxEcGtnOjpJUEM6OnNwYXduPi4KKworWW91IG11c3QgY2FsbCBDPHdhaXRfZW5kX3Byb2Nlc3M+IGFmdGVyIGhhdmluZyBjYWxsZWQgdGhpcyBtZXRob2QgdG8KK3Byb3Blcmx5IGNsb3NlIHRoZSBzdWItcHJvY2VzcyAoYW5kIHZlcmlmeSB0aGF0IGl0IGV4aXRlZCB3aXRob3V0IGVycm9yKS4KKworPWN1dAorCitzdWIgdW5jb21wcmVzcyB7CisgICAgbXkgJHNlbGYgPSBzaGlmdDsKKyAgICBteSAlb3B0cyA9ICRzZWxmLT5fc2FuaXR5X2NoZWNrKEBfKTsKKyAgICBteSBAcHJvZyA9ICRzZWxmLT5nZXRfdW5jb21wcmVzc19jbWRsaW5lKCk7CisgICAgJG9wdHN7ImV4ZWMifSA9IFxAcHJvZzsKKyAgICAkc2VsZi0+eyJjbWRsaW5lIn0gPSAiQHByb2ciOworICAgICRzZWxmLT57InBpZCJ9ID0gc3Bhd24oJW9wdHMpOworICAgIGRlbGV0ZSAkc2VsZi0+eyJwaWQifSBpZiAkb3B0c3sidG9fc3RyaW5nIn07ICMgd2FpdF9jaGlsZCBhbHJlYWR5IGRvbmUKK30KKworPWl0ZW0gJHByb2MtPndhaXRfZW5kX3Byb2Nlc3MoJW9wdHMpCisKK0NhbGwgQjxEcGtnOjpJUEM6OndhaXRfY2hpbGQ+IHRvIHdhaXQgdW50aWwgdGhlIHN1Yi1wcm9jZXNzIGhhcyBleGl0ZWQKK2FuZCB2ZXJpZnkgaXRzIHJldHVybiBjb2RlLiBBbnkgZ2l2ZW4gb3B0aW9uIHdpbGwgYmUgZm9yd2FyZGVkIHRvCit0aGUgQzx3YWl0X2NoaWxkPiBmdW5jdGlvbi4gTW9zdCBub3RhYmx5IHlvdSBjYW4gdXNlIHRoZSAibm9jaGVjayIgb3B0aW9uCit0byB2ZXJpZnkgdGhlIHJldHVybiBjb2RlIHlvdXJzZWxmIGluc3RlYWQgb2YgbGV0dGluZyBDPHdhaXRfY2hpbGQ+IGRvCitpdCBmb3IgeW91LgorCis9Y3V0CisKK3N1YiB3YWl0X2VuZF9wcm9jZXNzIHsKKyAgICBteSAoJHNlbGYsICVvcHRzKSA9IEBfOworICAgICRvcHRzeyJjbWRsaW5lIn0gfHw9ICRzZWxmLT57ImNtZGxpbmUifTsKKyAgICB3YWl0X2NoaWxkKCRzZWxmLT57InBpZCJ9LCAlb3B0cykgaWYgJHNlbGYtPnsncGlkJ307CisgICAgZGVsZXRlICRzZWxmLT57InBpZCJ9OworICAgIGRlbGV0ZSAkc2VsZi0+eyJjbWRsaW5lIn07Cit9CisKKz1iYWNrCisKKz1oZWFkMSBBVVRIT1IKKworUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPi4KKworPWN1dAorCisxOwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL0Rwa2cvQ29uZi5wbSBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9EcGtnL0NvbmYucG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODcxZmU2MwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9EcGtnL0NvbmYucG0KQEAgLTAsMCArMSwxODQgQEAKKyMgQ29weXJpZ2h0IMKpIDIwMDktMjAxMCBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisjCisjIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisjIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisjIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisjIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisjCisjIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisjIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisjCisjIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisjIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorCitwYWNrYWdlIERwa2c6OkNvbmY7CisKK3VzZSBzdHJpY3Q7Cit1c2Ugd2FybmluZ3M7CisKK291ciAkVkVSU0lPTiA9ICIxLjAxIjsKKwordXNlIERwa2c6OkdldHRleHQ7Cit1c2UgRHBrZzo6RXJyb3JIYW5kbGluZzsKKwordXNlIGJhc2UgcXcoRHBrZzo6SW50ZXJmYWNlOjpTdG9yYWJsZSk7CisKK3VzZSBvdmVybG9hZAorICAgICdAe30nID0+IHN1YiB7IHJldHVybiBbICRfWzBdLT5nZXRfb3B0aW9ucygpIF0gfSwKKyAgICBmYWxsYmFjayA9PiAxOworCis9ZW5jb2RpbmcgdXRmOAorCis9aGVhZDEgTkFNRQorCitEcGtnOjpDb25mIC0gcGFyc2UgZHBrZyBjb25maWd1cmF0aW9uIGZpbGVzCisKKz1oZWFkMSBERVNDUklQVElPTgorCitUaGUgRHBrZzo6Q29uZiBvYmplY3QgY2FuIGJlIHVzZWQgdG8gcmVhZCBvcHRpb25zIGZyb20gYSBjb25maWd1cmF0aW9uCitmaWxlLiBJdCBjYW4gZXhwb3J0cyBhbiBhcnJheSB0aGF0IGNhbiB0aGVuIGJlIHBhcnNlZCBleGFjdGx5IGxpa2UgQEFSR1YuCisKKz1oZWFkMSBGVU5DVElPTlMKKworPW92ZXIgNAorCis9aXRlbSBteSAkY29uZiA9IERwa2c6OkNvbmYtPm5ldyglb3B0cykKKworQ3JlYXRlIGEgbmV3IERwa2c6OkNvbmYgb2JqZWN0LiBTb21lIG9wdGlvbnMgY2FuIGJlIHNldCB0aHJvdWdoICVvcHRzOgoraWYgYWxsb3dfc2hvcnQgZXZhbHVhdGVzIHRvIHRydWUgKGl0IGRlZmF1bHRzIHRvIGZhbHNlKSwgdGhlbiBzaG9ydAorb3B0aW9ucyBhcmUgYWxsb3dlZCBpbiB0aGUgY29uZmlndXJhdGlvbiBmaWxlLCB0aGV5IHNob3VsZCBiZSBwcmVwZW5kZWQKK3dpdGggYSBzaW5nbGUgZGFzaC4KKworPWN1dAorCitzdWIgbmV3IHsKKyAgICBteSAoJHRoaXMsICVvcHRzKSA9IEBfOworICAgIG15ICRjbGFzcyA9IHJlZigkdGhpcykgfHwgJHRoaXM7CisKKyAgICBteSAkc2VsZiA9IHsKKwlvcHRpb25zID0+IFtdLAorCWFsbG93X3Nob3J0ID0+IDAsCisgICAgfTsKKyAgICBmb3JlYWNoIG15ICRvcHQgKGtleXMgJW9wdHMpIHsKKwkkc2VsZi0+eyRvcHR9ID0gJG9wdHN7JG9wdH07CisgICAgfQorICAgIGJsZXNzICRzZWxmLCAkY2xhc3M7CisKKyAgICByZXR1cm4gJHNlbGY7Cit9CisKKz1pdGVtIEAkY29uZgorCis9aXRlbSBAb3B0aW9ucyA9ICRjb25mLT5nZXRfb3B0aW9ucygpCisKK1JldHVybnMgdGhlIGxpc3Qgb2Ygb3B0aW9ucyB0aGF0IGNhbiBiZSBwYXJzZWQgbGlrZSBAQVJHVi4KKworPWN1dAorCitzdWIgZ2V0X29wdGlvbnMgeworICAgIG15ICgkc2VsZikgPSBAXzsKKyAgICByZXR1cm4gQHskc2VsZi0+eydvcHRpb25zJ319OworfQorCis9aXRlbSAkY29uZi0+bG9hZCgkZmlsZSkKKworUmVhZCBvcHRpb25zIGZyb20gYSBmaWxlLiBSZXR1cm4gdGhlIG51bWJlciBvZiBvcHRpb25zIHBhcnNlZC4KKworPWl0ZW0gJGNvbmYtPnBhcnNlKCRmaCkKKworUGFyc2Ugb3B0aW9ucyBmcm9tIGEgZmlsZSBoYW5kbGUuIFJldHVybiB0aGUgbnVtYmVyIG9mIG9wdGlvbnMgcGFyc2VkLgorCis9Y3V0CisKK3N1YiBwYXJzZSB7CisgICAgbXkgKCRzZWxmLCAkZmgsICRkZXNjKSA9IEBfOworICAgIG15ICRjb3VudCA9IDA7CisgICAgd2hpbGUgKDwkZmg+KSB7CisJY2hvbXA7CisJcy9eXHMrLy87IHMvXHMrJC8vOyAgICMgU3RyaXAgbGVhZGluZy90cmFpbGluZyBzcGFjZXMKKwlzL1xzKz1ccysvPS87ICAgICAgICAgIyBSZW1vdmUgc3BhY2VzIGFyb3VuZCB0aGUgZmlyc3QgPQorCXMvXHMrLz0vIHVubGVzcyBtLz0vOyAjIEZpcnN0IHNwYWNlcyBiZWNvbWVzID0gaWYgbm8gPQorCW5leHQgaWYgL14jLyBvciAvXiQvOyAjIFNraXAgZW1wdHkgbGluZXMgYW5kIGNvbW1lbnRzCisJaWYgKC9eLVteLV0vIGFuZCBub3QgJHNlbGYtPnsnYWxsb3dfc2hvcnQnfSkgeworCSAgICB3YXJuaW5nKF9nKCJzaG9ydCBvcHRpb24gbm90IGFsbG93ZWQgaW4gJXMsIGxpbmUgJWQiKSwgJGRlc2MsICQuKTsKKwkgICAgbmV4dDsKKwl9CisJaWYgKC9eKFtePV0rKSg/Oj0oLiopKT8kLykgeworCSAgICBteSAoJG5hbWUsICR2YWx1ZSkgPSAoJDEsICQyKTsKKwkgICAgJG5hbWUgPSAiLS0kbmFtZSIgdW5sZXNzICRuYW1lID1+IC9eLS87CisJICAgIGlmIChkZWZpbmVkICR2YWx1ZSkgeworCQkkdmFsdWUgPX4gcy9eIiguKikiJC8kMS8gb3IgJHZhbHVlID1+IHMvXicoLiopJyQvJDEvOworCQlwdXNoIEB7JHNlbGYtPnsnb3B0aW9ucyd9fSwgIiRuYW1lPSR2YWx1ZSI7CisJICAgIH0gZWxzZSB7CisJCXB1c2ggQHskc2VsZi0+eydvcHRpb25zJ319LCAkbmFtZTsKKwkgICAgfQorCSAgICAkY291bnQrKzsKKwl9IGVsc2UgeworCSAgICB3YXJuaW5nKF9nKCJpbnZhbGlkIHN5bnRheCBmb3Igb3B0aW9uIGluICVzLCBsaW5lICVkIiksICRkZXNjLCAkLik7CisJfQorICAgIH0KKyAgICByZXR1cm4gJGNvdW50OworfQorCis9aXRlbSAkY29uZi0+ZmlsdGVyKHJlbW92ZSA9PiAkcm1mdW5jKQorCis9aXRlbSAkY29uZi0+ZmlsdGVyKGtlZXAgPT4gJGtlZXBmdW5jKQorCitGaWx0ZXIgdGhlIGxpc3Qgb2Ygb3B0aW9ucywgZWl0aGVyIHJlbW92aW5nIG9yIGtlZXBpbmcgYWxsIHRob3NlIHRoYXQKK3JldHVybiB0cnVlIHdoZW4gJiRybWZ1bmMoJG9wdGlvbikgb3IgJmtlZXBmdW5jKCRvcHRpb24pIGlzIGNhbGxlZC4KKworPWN1dAorCitzdWIgZmlsdGVyIHsKKyAgICBteSAoJHNlbGYsICVvcHRzKSA9IEBfOworICAgIGlmIChkZWZpbmVkKCRvcHRzeydyZW1vdmUnfSkpIHsKKwlAeyRzZWxmLT57J29wdGlvbnMnfX0gPSBncmVwIHsgbm90ICZ7JG9wdHN7J3JlbW92ZSd9fSgkXykgfQorCQkJCSAgICAgQHskc2VsZi0+eydvcHRpb25zJ319OworICAgIH0KKyAgICBpZiAoZGVmaW5lZCgkb3B0c3sna2VlcCd9KSkgeworCUB7JHNlbGYtPnsnb3B0aW9ucyd9fSA9IGdyZXAgeyAmeyRvcHRzeydrZWVwJ319KCRfKSB9CisJCQkJICAgICBAeyRzZWxmLT57J29wdGlvbnMnfX07CisgICAgfQorfQorCis9aXRlbSAkc3RyaW5nID0gJGNvbmYtPm91dHB1dCgkZmgpCisKK1dyaXRlIHRoZSBvcHRpb25zIGluIHRoZSBnaXZlbiBmaWxlaGFuZGxlIChpZiBkZWZpbmVkKSBhbmQgcmV0dXJuIGEgc3RyaW5nCityZXByZXNlbnRhdGlvbiBvZiB0aGUgY29udGVudCAodGhhdCB3b3VsZCBiZSkgd3JpdHRlbi4KKworPWl0ZW0gIiRjb25mIgorCitSZXR1cm4gYSBzdHJpbmcgcmVwcmVzZW50YXRpb24gb2YgdGhlIGNvbnRlbnQuCisKKz1pdGVtICRjb25mLT5zYXZlKCRmaWxlKQorCitTYXZlIHRoZSBvcHRpb25zIGluIGEgZmlsZS4KKworPWN1dAorCitzdWIgb3V0cHV0IHsKKyAgICBteSAoJHNlbGYsICRmaCkgPSBAXzsKKyAgICBteSAkcmV0ID0gIiI7CisgICAgZm9yZWFjaCBteSAkb3B0ICgkc2VsZi0+Z2V0X29wdGlvbnMoKSkgeworCSRvcHQgPX4gcy9eLS0vLzsKKwlpZiAoJG9wdCA9fiBzL14oW149XSspPS8kMSA9ICIvKSB7CisJICAgICRvcHQgLj0gJyInOworCX0KKwkkb3B0IC49ICJcbiI7CisJcHJpbnQgJGZoICRvcHQgaWYgZGVmaW5lZCAkZmg7CisJJHJldCAuPSAkb3B0OworICAgIH0KKyAgICByZXR1cm4gJHJldDsKK30KKworPWJhY2sKKworPWhlYWQxIEFVVEhPUgorCitSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+LgorCis9Y3V0CisKKzE7CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvRHBrZy9Db250cm9sLnBtIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL0Rwa2cvQ29udHJvbC5wbQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wMWQ4ZDI4Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL0Rwa2cvQ29udHJvbC5wbQpAQCAtMCwwICsxLDE5NyBAQAorIyBDb3B5cmlnaHQgwqkgMjAwNy0yMDA5IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KKyMKKyMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyMKKyMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisjIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisjIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyMKKyMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisKK3BhY2thZ2UgRHBrZzo6Q29udHJvbDsKKwordXNlIHN0cmljdDsKK3VzZSB3YXJuaW5nczsKKworb3VyICRWRVJTSU9OID0gIjEuMDAiOworCit1c2UgRHBrZzo6R2V0dGV4dDsKK3VzZSBEcGtnOjpFcnJvckhhbmRsaW5nOwordXNlIERwa2c6OkNvbnRyb2w6OlR5cGVzOwordXNlIERwa2c6OkNvbnRyb2w6Okhhc2g7Cit1c2UgRHBrZzo6Q29udHJvbDo6RmllbGRzOworCit1c2UgYmFzZSBxdyhEcGtnOjpDb250cm9sOjpIYXNoIEV4cG9ydGVyKTsKK291ciBARVhQT1JUID0gcXcoQ1RSTF9VTktOT1dOIENUUkxfSU5GT19TUkMgQ1RSTF9JTkZPX1BLRyBDVFJMX0lOREVYX1NSQworICAgICAgICAgICAgICAgICBDVFJMX0lOREVYX1BLRyBDVFJMX1BLR19TUkMgQ1RSTF9QS0dfREVCIENUUkxfRklMRV9DSEFOR0VTCisgICAgICAgICAgICAgICAgIENUUkxfRklMRV9WRU5ET1IgQ1RSTF9GSUxFX1NUQVRVUyBDVFJMX0NIQU5HRUxPRyk7CisKKz1lbmNvZGluZyB1dGY4CisKKz1oZWFkMSBOQU1FCisKK0Rwa2c6OkNvbnRyb2wgLSBwYXJzZSBhbmQgbWFuaXB1bGF0ZSBvZmZpY2lhbCBjb250cm9sLWxpa2UgaW5mb3JtYXRpb24KKworPWhlYWQxIERFU0NSSVBUSU9OCisKK1RoZSBEcGtnOjpDb250cm9sIG9iamVjdCBpcyBhIHNtYXJ0IHZlcnNpb24gb2YgRHBrZzo6Q29udHJvbDo6SGFzaC4KK0l0IGFzc29jaWF0ZXMgYSB0eXBlIHRvIHRoZSBjb250cm9sIGluZm9ybWF0aW9uLiBUaGF0IHR5cGUgY2FuIGJlCit1c2VkIHRvIGtub3cgd2hhdCBmaWVsZHMgYXJlIGFsbG93ZWQgYW5kIGluIHdoYXQgb3JkZXIgdGhleSBtdXN0IGJlCitvdXRwdXQuCisKK1RoZSB0eXBlcyBhcmUgY29uc3RhbnRzIHRoYXQgYXJlIGV4cG9ydGVkIGJ5IGRlZmF1bHQuIEhlcmUncyB0aGUgZnVsbAorbGlzdDoKKworPW92ZXIgNAorCis9aXRlbSBDVFJMX1VOS05PV04KKworVGhpcyB0eXBlIGlzIHRoZSBkZWZhdWx0IHR5cGUsIGl0IGluZGljYXRlcyB0aGF0IHRoZSB0eXBlIG9mIGNvbnRyb2wKK2luZm9ybWF0aW9uIGlzIG5vdCB5ZXQga25vd24uCisKKz1pdGVtIENUUkxfSU5GT19TUkMKKworQ29ycmVzcG9uZHMgdG8gdGhlIGZpcnN0IGJsb2NrIG9mIGluZm9ybWF0aW9uIGluIGEgZGViaWFuL2NvbnRyb2wgZmlsZSBpbgorYSBEZWJpYW4gc291cmNlIHBhY2thZ2UuCisKKz1pdGVtIENUUkxfSU5GT19QS0cKKworQ29ycmVzcG9uZHMgdG8gc3Vic2VxdWVudCBibG9ja3Mgb2YgaW5mb3JtYXRpb24gaW4gYSBkZWJpYW4vY29udHJvbCBmaWxlCitpbiBhIERlYmlhbiBzb3VyY2UgcGFja2FnZS4KKworPWl0ZW0gQ1RSTF9JTkRFWF9TUkMKKworQ29ycmVzcG9uZHMgdG8gYW4gZW50cnkgaW4gYSBTb3VyY2VzIGZpbGUgb2YgYSBzb3VyY2UgcGFja2FnZQorcmVwb3NpdG9yeS4KKworPWl0ZW0gQ1RSTF9JTkRFWF9QS0cKKworQ29ycmVzcG9uZHMgdG8gYW4gZW50cnkgaW4gYSBQYWNrYWdlcyBmaWxlIG9mIGEgYmluYXJ5IHBhY2thZ2UKK3JlcG9zaXRvcnkuCisKKz1pdGVtIENUUkxfUEtHX1NSQworCitDb3JyZXNwb25kcyB0byBhIC5kc2MgZmlsZSBvZiBhIERlYmlhbiBzb3VyY2UgcGFja2FnZS4KKworPWl0ZW0gQ1RSTF9QS0dfREVCCisKK0NvcnJlc3BvbmRzIHRvIHRoZSBjb250cm9sIGZpbGUgZ2VuZXJhdGVkIGJ5IGRwa2ctZ2VuY29udHJvbAorKERFQklBTi9jb250cm9sKSBhbmQgdG8gdGhlIHNhbWUgZmlsZSBpbnNpZGUgLmRlYiBwYWNrYWdlcy4KKworPWl0ZW0gQ1RSTF9GSUxFX0NIQU5HRVMKKworQ29ycmVzcG9uZHMgdG8gYSAuY2hhbmdlcyBmaWxlLgorCis9aXRlbSBDVFJMX0ZJTEVfVkVORE9SCisKK0NvcnJlc3BvbmRzIHRvIGEgdmVuZG9yIGZpbGUgaW4gL2V0Yy9kcGtnL29yaWdpbnMvLgorCis9aXRlbSBDVFJMX0ZJTEVfU1RBVFVTCisKK0NvcnJlc3BvbmRzIHRvIGFuIGVudHJ5IGluIGRwa2cncyBzdGF0dXMgZmlsZSAoL3Zhci9saWIvZHBrZy9zdGF0dXMpLgorCis9aXRlbSBDVFJMX0NIQU5HRUxPRworCitDb3JyZXNwb25kcyB0byB0aGUgb3V0cHV0IG9mIGRwa2ctcGFyc2VjaGFuZ2Vsb2cuCisKKz1iYWNrCisKKz1oZWFkMSBGVU5DVElPTlMKKworQWxsIHRoZSBtZXRob2RzIG9mIERwa2c6OkNvbnRyb2w6Okhhc2ggYXJlIGF2YWlsYWJsZS4gVGhvc2UgbGlzdGVkIGJlbG93CithcmUgZWl0aGVyIG5ldyBvciBvdmVycmlkZGVuIHdpdGggYSBkaWZmZXJlbnQgYmVoYXZpb3VyLgorCis9b3ZlciA0CisKKz1pdGVtIG15ICRjID0gRHBrZzo6Q29udHJvbC0+bmV3KCVvcHRzKQorCitJZiB0aGUgInR5cGUiIG9wdGlvbiBpcyBnaXZlbiwgaXQncyB1c2VkIHRvIHNldHVwIGRlZmF1bHQgdmFsdWVzCitmb3Igb3RoZXIgb3B0aW9ucy4gU2VlIHNldF9vcHRpb25zKCkgZm9yIG1vcmUgZGV0YWlscy4KKworPWN1dAorCitzdWIgbmV3IHsKKyAgICBteSAoJHRoaXMsICVvcHRzKSA9IEBfOworICAgIG15ICRjbGFzcyA9IHJlZigkdGhpcykgfHwgJHRoaXM7CisKKyAgICBteSAkc2VsZiA9IERwa2c6OkNvbnRyb2w6Okhhc2gtPm5ldygpOworICAgIGJsZXNzICRzZWxmLCAkY2xhc3M7CisgICAgJHNlbGYtPnNldF9vcHRpb25zKCVvcHRzKTsKKworICAgIHJldHVybiAkc2VsZjsKK30KKworPWl0ZW0gJGMtPnNldF9vcHRpb25zKCVvcHRzKQorCitDaGFuZ2VzIHRoZSB2YWx1ZSBvZiBvbmUgb3IgbW9yZSBvcHRpb25zLiBJZiB0aGUgInR5cGUiIG9wdGlvbiBpcyBjaGFuZ2VkLAoraXQgaXMgdXNlZCBmaXJzdCB0byBkZWZpbmUgZGVmYXVsdCB2YWx1ZXMgZm9yIG90aGVycyBvcHRpb25zLiBUaGUgb3B0aW9uCisiYWxsb3dfcGdwIiBpcyBzZXQgdG8gMSBmb3IgQ1RSTF9QS0dfU1JDIGFuZCBDVFJMX0ZJTEVfQ0hBTkdFUyBhbmQgdG8gMAorb3RoZXJ3aXNlLiBUaGUgb3B0aW9uICJkcm9wX2VtcHR5IiBpcyBzZXQgdG8gMCBmb3IgQ1RSTF9JTkZPX1BLRyBhbmQKK0NUUkxfSU5GT19TUkMgYW5kIHRvIDEgb3RoZXJ3aXNlLiBUaGUgb3B0aW9uICJuYW1lIiBpcyBzZXQgdG8gYSB0ZXh0dWFsCitkZXNjcmlwdGlvbiBvZiB0aGUgdHlwZSBvZiBjb250cm9sIGluZm9ybWF0aW9uLgorCitUaGUgb3V0cHV0IG9yZGVyIGlzIGFsc28gc2V0IHRvIG1hdGNoIHRoZSBvcmRlcmVkIGxpc3QgcmV0dXJuZWQgYnkKK0Rwa2c6OkNvbnRyb2w6OkZpZWxkczo6ZmllbGRfb3JkZXJlZF9saXN0KCR0eXBlKS4KKworPWN1dAorCitzdWIgc2V0X29wdGlvbnMgeworICAgIG15ICgkc2VsZiwgJW9wdHMpID0gQF87CisgICAgaWYgKGV4aXN0cyAkb3B0c3sndHlwZSd9KSB7CisgICAgICAgIG15ICR0ID0gJG9wdHN7J3R5cGUnfTsKKyAgICAgICAgJCRzZWxmLT57J2FsbG93X3BncCd9ID0gKCR0ICYgKENUUkxfUEtHX1NSQyB8IENUUkxfRklMRV9DSEFOR0VTKSkgPyAxIDogMDsKKyAgICAgICAgJCRzZWxmLT57J2Ryb3BfZW1wdHknfSA9ICgkdCAmIChDVFJMX0lORk9fUEtHIHwgQ1RSTF9JTkZPX1NSQykpID8gIDAgOiAxOworICAgICAgICBpZiAoJHQgPT0gQ1RSTF9JTkZPX1NSQykgeworICAgICAgICAgICAgJCRzZWxmLT57J25hbWUnfSA9IF9nKCJnZW5lcmFsIHNlY3Rpb24gb2YgY29udHJvbCBpbmZvIGZpbGUiKTsKKyAgICAgICAgfSBlbHNpZiAoJHQgPT0gQ1RSTF9JTkZPX1BLRykgeworICAgICAgICAgICAgJCRzZWxmLT57J25hbWUnfSA9IF9nKCJwYWNrYWdlJ3Mgc2VjdGlvbiBvZiBjb250cm9sIGluZm8gZmlsZSIpOworICAgICAgICB9IGVsc2lmICgkdCA9PSBDVFJMX0NIQU5HRUxPRykgeworICAgICAgICAgICAgJCRzZWxmLT57J25hbWUnfSA9IF9nKCJwYXJzZWQgdmVyc2lvbiBvZiBjaGFuZ2Vsb2ciKTsKKyAgICAgICAgfSBlbHNpZiAoJHQgPT0gQ1RSTF9JTkRFWF9TUkMpIHsKKyAgICAgICAgICAgICQkc2VsZi0+eyduYW1lJ30gPSBzcHJpbnRmKF9nKCJlbnRyeSBpbiByZXBvc2l0b3J5J3MgJXMgZmlsZSIpLCAiU291cmNlcyIpOworICAgICAgICB9IGVsc2lmICgkdCA9PSBDVFJMX0lOREVYX1BLRykgeworICAgICAgICAgICAgJCRzZWxmLT57J25hbWUnfSA9IHNwcmludGYoX2coImVudHJ5IGluIHJlcG9zaXRvcnkncyAlcyBmaWxlIiksICJQYWNrYWdlcyIpOworICAgICAgICB9IGVsc2lmICgkdCA9PSBDVFJMX1BLR19TUkMpIHsKKyAgICAgICAgICAgICQkc2VsZi0+eyduYW1lJ30gPSBzcHJpbnRmKF9nKCIlcyBmaWxlIiksICIuZHNjIik7CisgICAgICAgIH0gZWxzaWYgKCR0ID09IENUUkxfUEtHX0RFQikgeworICAgICAgICAgICAgJCRzZWxmLT57J25hbWUnfSA9IF9nKCJjb250cm9sIGluZm8gb2YgYSAuZGViIHBhY2thZ2UiKTsKKyAgICAgICAgfSBlbHNpZiAoJHQgPT0gQ1RSTF9GSUxFX0NIQU5HRVMpIHsKKyAgICAgICAgICAgICQkc2VsZi0+eyduYW1lJ30gPSBzcHJpbnRmKF9nKCIlcyBmaWxlIiksICIuY2hhbmdlcyIpOworICAgICAgICB9IGVsc2lmICgkdCA9PSBDVFJMX0ZJTEVfVkVORE9SKSB7CisgICAgICAgICAgICAkJHNlbGYtPnsnbmFtZSd9ID0gX2coInZlbmRvciBmaWxlIik7CisgICAgICAgIH0gZWxzaWYgKCR0ID09IENUUkxfRklMRV9TVEFUVVMpIHsKKyAgICAgICAgICAgICQkc2VsZi0+eyduYW1lJ30gPSBfZygiZW50cnkgaW4gZHBrZydzIHN0YXR1cyBmaWxlIik7CisgICAgICAgIH0KKyAgICAgICAgJHNlbGYtPnNldF9vdXRwdXRfb3JkZXIoZmllbGRfb3JkZXJlZF9saXN0KCRvcHRzeyd0eXBlJ30pKTsKKyAgICB9CisKKyAgICAjIE9wdGlvbnMgc2V0IGJ5IHRoZSB1c2VyIG92ZXJyaWRlIGRlZmF1bHQgdmFsdWVzCisgICAgJCRzZWxmLT57JF99ID0gJG9wdHN7JF99IGZvcmVhY2gga2V5cyAlb3B0czsKK30KKworPWl0ZW0gJGMtPmdldF90eXBlKCkKKworUmV0dXJucyB0aGUgdHlwZSBvZiBjb250cm9sIGluZm9ybWF0aW9uIHN0b3JlZC4gU2VlIHRoZSB0eXBlIHBhcmFtZXRlcgorc2V0IGR1cmluZyBuZXcoKS4KKworPWN1dAorCitzdWIgZ2V0X3R5cGUgeworICAgIG15ICgkc2VsZikgPSBAXzsKKyAgICByZXR1cm4gJCRzZWxmLT57J3R5cGUnfTsKK30KKworPWJhY2sKKworPWhlYWQxIEFVVEhPUgorCitSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+LgorCis9Y3V0CisKKzE7CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvRHBrZy9Db250cm9sL0NoYW5nZWxvZy5wbSBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9EcGtnL0NvbnRyb2wvQ2hhbmdlbG9nLnBtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmFmZmEwOTYKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvRHBrZy9Db250cm9sL0NoYW5nZWxvZy5wbQpAQCAtMCwwICsxLDYyIEBACisjIENvcHlyaWdodCDCqSAyMDA5IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorCisjIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisjIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisKKyMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisKK3BhY2thZ2UgRHBrZzo6Q29udHJvbDo6Q2hhbmdlbG9nOworCit1c2Ugc3RyaWN0OwordXNlIHdhcm5pbmdzOworCitvdXIgJFZFUlNJT04gPSAiMS4wMCI7CisKK3VzZSBEcGtnOjpDb250cm9sOwordXNlIGJhc2UgJ0Rwa2c6OkNvbnRyb2wnOworCis9ZW5jb2RpbmcgdXRmOAorCis9aGVhZDEgTkFNRQorCitEcGtnOjpDb250cm9sOjpDaGFuZ2Vsb2cgLSByZXByZXNlbnQgaW5mbyBmaWVsZHMgb3V0cHV0IGJ5IGRwa2ctcGFyc2VjaGFuZ2Vsb2cKKworPWhlYWQxIERFU0NSSVBUSU9OCisKK1RoaXMgb2JqZWN0IGRlcml2ZXMgZGlyZWN0bHkgZnJvbSBEcGtnOjpDb250cm9sIHdpdGggdGhlIHR5cGUKK0NUUkxfQ0hBTkdFTE9HLgorCis9aGVhZDEgRlVOQ1RJT05TCisKKz1vdmVyIDQKKworPWl0ZW0gJGMgPSBEcGtnOjpDb250cm9sOjpDaGFuZ2Vsb2ctPm5ldygpCisKK0NyZWF0ZSBhIG5ldyBlbXB0eSBzZXQgb2YgY2hhbmdlbG9nIHJlbGF0ZWQgZmllbGRzLgorCis9Y3V0CisKK3N1YiBuZXcgeworICAgIG15ICR0aGlzID0gc2hpZnQ7CisgICAgbXkgJGNsYXNzID0gcmVmKCR0aGlzKSB8fCAkdGhpczsKKyAgICBteSAkc2VsZiA9IERwa2c6OkNvbnRyb2wtPm5ldyh0eXBlID0+IENUUkxfQ0hBTkdFTE9HLCBAXyk7CisgICAgcmV0dXJuIGJsZXNzICRzZWxmLCAkY2xhc3M7Cit9CisKKz1iYWNrCisKKz1oZWFkMSBBVVRIT1IKKworUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPi4KKworPWN1dAorCisxOwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL0Rwa2cvQ29udHJvbC9GaWVsZHMucG0gYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvRHBrZy9Db250cm9sL0ZpZWxkcy5wbQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kN2Q3ZGNmCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL0Rwa2cvQ29udHJvbC9GaWVsZHMucG0KQEAgLTAsMCArMSw2MDAgQEAKKyMgQ29weXJpZ2h0IMKpIDIwMDctMjAwOSBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisjCisjIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisjIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisjIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisjIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisjCisjIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisjIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisjCisjIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisjIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorCitwYWNrYWdlIERwa2c6OkNvbnRyb2w6OkZpZWxkczsKKwordXNlIHN0cmljdDsKK3VzZSB3YXJuaW5nczsKKworb3VyICRWRVJTSU9OID0gIjEuMDAiOworCit1c2UgYmFzZSBxdyhFeHBvcnRlcik7Cit1c2UgRHBrZzo6R2V0dGV4dDsKK3VzZSBEcGtnOjpFcnJvckhhbmRsaW5nOwordXNlIERwa2c6OkNvbnRyb2w6OlR5cGVzOwordXNlIERwa2c6OkNoZWNrc3VtczsKK3VzZSBEcGtnOjpWZW5kb3IgcXcocnVuX3ZlbmRvcl9ob29rKTsKKworb3VyIEBFWFBPUlQgPSBxdyhmaWVsZF9jYXBpdGFsaXplIGZpZWxkX2lzX29mZmljaWFsIGZpZWxkX2lzX2FsbG93ZWRfaW4KKyAgICAgICAgICAgICAgICAgZmllbGRfdHJhbnNmZXJfc2luZ2xlIGZpZWxkX3RyYW5zZmVyX2FsbAorICAgICAgICAgICAgICAgICBmaWVsZF9saXN0X3NyY19kZXAgZmllbGRfbGlzdF9wa2dfZGVwIGZpZWxkX2dldF9kZXBfdHlwZQorICAgICAgICAgICAgICAgICBmaWVsZF9vcmRlcmVkX2xpc3QgZmllbGRfcmVnaXN0ZXIKKyAgICAgICAgICAgICAgICAgZmllbGRfaW5zZXJ0X2FmdGVyIGZpZWxkX2luc2VydF9iZWZvcmUpOworCit1c2UgY29uc3RhbnQgeworICAgIEFMTF9QS0cgPT4gQ1RSTF9JTkZPX1BLRyB8IENUUkxfSU5ERVhfUEtHIHwgQ1RSTF9QS0dfREVCIHwgQ1RSTF9GSUxFX1NUQVRVUywKKyAgICBBTExfU1JDID0+IENUUkxfSU5GT19TUkMgfCBDVFJMX0lOREVYX1NSQyB8IENUUkxfUEtHX1NSQywKKyAgICBBTExfQ0hBTkdFUyA9PiBDVFJMX0ZJTEVfQ0hBTkdFUyB8IENUUkxfQ0hBTkdFTE9HLAorfTsKKworIyBUaGUgY2Fub25pY2FsIGxpc3Qgb2YgZmllbGRzCisKKyMgTm90ZSB0aGF0IGZpZWxkcyB1c2VkIG9ubHkgaW4gZHBrZydzIGF2YWlsYWJsZSBmaWxlIGFyZSBub3QgbGlzdGVkCisjIERlcHJlY2F0ZWQgZmllbGRzIG9mIGRwa2cncyBzdGF0dXMgZmlsZSBhcmUgYWxzbyBub3QgbGlzdGVkCitvdXIgJUZJRUxEUyA9ICgKKyAgICAnQXJjaGl0ZWN0dXJlJyA9PiB7CisgICAgICAgIGFsbG93ZWQgPT4gKEFMTF9QS0cgfCBBTExfU1JDIHwgQ1RSTF9GSUxFX0NIQU5HRVMpICYgKH5DVFJMX0lORk9fU1JDKSwKKyAgICB9LAorICAgICdCaW5hcnknID0+IHsKKyAgICAgICAgYWxsb3dlZCA9PiBDVFJMX1BLR19TUkMgfCBDVFJMX0ZJTEVfQ0hBTkdFUywKKyAgICB9LAorICAgICdCcmVha3MnID0+IHsKKyAgICAgICAgYWxsb3dlZCA9PiBBTExfUEtHLAorICAgICAgICBkZXBlbmRlbmN5ID0+ICd1bmlvbicsCisgICAgICAgIGRlcF9vcmRlciA9PiA3LAorICAgIH0sCisgICAgJ0J1Z3MnID0+IHsKKyAgICAgICAgYWxsb3dlZCA9PiAoQUxMX1BLRyB8IENUUkxfSU5GT19TUkMgfCBDVFJMX0ZJTEVfVkVORE9SKSAmICh+Q1RSTF9JTkZPX1BLRyksCisgICAgfSwKKyAgICAnQnVpbGQtQ29uZmxpY3RzJyA9PiB7CisgICAgICAgIGFsbG93ZWQgPT4gQUxMX1NSQywKKyAgICAgICAgZGVwZW5kZW5jeSA9PiAndW5pb24nLAorICAgICAgICBkZXBfb3JkZXIgPT4gMywKKyAgICB9LAorICAgICdCdWlsZC1Db25mbGljdHMtSW5kZXAnID0+IHsKKyAgICAgICAgYWxsb3dlZCA9PiBBTExfU1JDLAorICAgICAgICBkZXBlbmRlbmN5ID0+ICd1bmlvbicsCisgICAgICAgIGRlcF9vcmRlciA9PiA0LAorICAgIH0sCisgICAgJ0J1aWxkLURlcGVuZHMnID0+IHsKKyAgICAgICAgYWxsb3dlZCA9PiBBTExfU1JDLAorICAgICAgICBkZXBlbmRlbmN5ID0+ICdub3JtYWwnLAorICAgICAgICBkZXBfb3JkZXIgPT4gMSwKKyAgICB9LAorICAgICdCdWlsZC1EZXBlbmRzLUluZGVwJyA9PiB7CisgICAgICAgIGFsbG93ZWQgPT4gQUxMX1NSQywKKyAgICAgICAgZGVwZW5kZW5jeSA9PiAnbm9ybWFsJywKKyAgICAgICAgZGVwX29yZGVyID0+IDIsCisgICAgfSwKKyAgICAnQnVpbHQtVXNpbmcnID0+IHsKKyAgICAgICAgYWxsb3dlZCA9PiBBTExfUEtHLAorICAgICAgICBkZXBlbmRlbmN5ID0+ICd1bmlvbicsCisgICAgICAgIGRlcF9vcmRlciA9PiAxMCwKKyAgICB9LAorICAgICdDaGFuZ2VkLUJ5JyA9PiB7CisgICAgICAgIGFsbG93ZWQgPT4gQ1RSTF9GSUxFX0NIQU5HRVMsCisgICAgfSwKKyAgICAnQ2hhbmdlcycgPT4geworICAgICAgICBhbGxvd2VkID0+IEFMTF9DSEFOR0VTLAorICAgIH0sCisgICAgJ0Nsb3NlcycgPT4geworICAgICAgICBhbGxvd2VkID0+IEFMTF9DSEFOR0VTLAorICAgIH0sCisgICAgJ0NvbmZmaWxlcycgPT4geworICAgICAgICBhbGxvd2VkID0+IENUUkxfRklMRV9TVEFUVVMsCisgICAgfSwKKyAgICAnQ29uZmlnLVZlcnNpb24nID0+IHsKKyAgICAgICAgYWxsb3dlZCA9PiBDVFJMX0ZJTEVfU1RBVFVTLAorICAgIH0sCisgICAgJ0NvbmZsaWN0cycgPT4geworICAgICAgICBhbGxvd2VkID0+IEFMTF9QS0csCisgICAgICAgIGRlcGVuZGVuY3kgPT4gJ3VuaW9uJywKKyAgICAgICAgZGVwX29yZGVyID0+IDYsCisgICAgfSwKKyAgICAnRGF0ZScgPT4geworICAgICAgICBhbGxvd2VkID0+IEFMTF9DSEFOR0VTLAorICAgIH0sCisgICAgJ0RlcGVuZHMnID0+IHsKKyAgICAgICAgYWxsb3dlZCA9PiBBTExfUEtHLAorICAgICAgICBkZXBlbmRlbmN5ID0+ICdub3JtYWwnLAorICAgICAgICBkZXBfb3JkZXIgPT4gMiwKKyAgICB9LAorICAgICdEZXNjcmlwdGlvbicgPT4geworICAgICAgICBhbGxvd2VkID0+IEFMTF9QS0cgfCBDVFJMX0ZJTEVfQ0hBTkdFUywKKyAgICB9LAorICAgICdEaXJlY3RvcnknID0+IHsKKyAgICAgICAgYWxsb3dlZCA9PiBDVFJMX0lOREVYX1NSQywKKyAgICB9LAorICAgICdEaXN0cmlidXRpb24nID0+IHsKKyAgICAgICAgYWxsb3dlZCA9PiBBTExfQ0hBTkdFUywKKyAgICB9LAorICAgICdFbmhhbmNlcycgPT4geworICAgICAgICBhbGxvd2VkID0+IEFMTF9QS0csCisgICAgICAgIGRlcGVuZGVuY3kgPT4gJ3VuaW9uJywKKyAgICAgICAgZGVwX29yZGVyID0+IDUsCisgICAgfSwKKyAgICAnRXNzZW50aWFsJyA9PiB7CisgICAgICAgIGFsbG93ZWQgPT4gQUxMX1BLRywKKyAgICB9LAorICAgICdGaWxlbmFtZScgPT4geworICAgICAgICBhbGxvd2VkID0+IENUUkxfSU5ERVhfUEtHLAorICAgIH0sCisgICAgJ0ZpbGVzJyA9PiB7CisgICAgICAgIGFsbG93ZWQgPT4gQ1RSTF9QS0dfU1JDIHwgQ1RSTF9GSUxFX0NIQU5HRVMsCisgICAgfSwKKyAgICAnRm9ybWF0JyA9PiB7CisgICAgICAgIGFsbG93ZWQgPT4gQ1RSTF9QS0dfU1JDIHwgQ1RSTF9GSUxFX0NIQU5HRVMsCisgICAgfSwKKyAgICAnSG9tZXBhZ2UnID0+IHsKKyAgICAgICAgYWxsb3dlZCA9PiBBTExfU1JDIHwgQUxMX1BLRywKKyAgICB9LAorICAgICdJbnN0YWxsZWQtU2l6ZScgPT4geworICAgICAgICBhbGxvd2VkID0+IEFMTF9QS0cgJiB+Q1RSTF9JTkZPX1BLRywKKyAgICB9LAorICAgICdJbnN0YWxsZXItTWVudS1JdGVtJyA9PiB7CisgICAgICAgIGFsbG93ZWQgPT4gQUxMX1BLRywKKyAgICB9LAorICAgICdLZXJuZWwtVmVyc2lvbicgPT4geworICAgICAgICBhbGxvd2VkID0+IEFMTF9QS0csCisgICAgfSwKKyAgICAnT3JpZ2luJyA9PiB7CisgICAgICAgIGFsbG93ZWQgPT4gKEFMTF9QS0cgfCBBTExfU1JDKSAmICh+Q1RSTF9JTkZPX1BLRyksCisgICAgfSwKKyAgICAnTWFpbnRhaW5lcicgPT4geworICAgICAgICBhbGxvd2VkID0+IENUUkxfUEtHX0RFQiB8IEFMTF9TUkMgfCBBTExfQ0hBTkdFUywKKyAgICB9LAorICAgICdNdWx0aS1BcmNoJyA9PiB7CisgICAgICAgIGFsbG93ZWQgPT4gQUxMX1BLRywKKyAgICB9LAorICAgICdQYWNrYWdlJyA9PiB7CisgICAgICAgIGFsbG93ZWQgPT4gQUxMX1BLRywKKyAgICB9LAorICAgICdQYWNrYWdlLUxpc3QnID0+IHsKKyAgICAgICAgYWxsb3dlZCA9PiBBTExfU1JDICYgfkNUUkxfSU5GT19TUkMsCisgICAgfSwKKyAgICAnUGFja2FnZS1UeXBlJyA9PiB7CisgICAgICAgIGFsbG93ZWQgPT4gQUxMX1BLRywKKyAgICB9LAorICAgICdQYXJlbnQnID0+IHsKKyAgICAgICAgYWxsb3dlZCA9PiBDVFJMX0ZJTEVfVkVORE9SLAorICAgIH0sCisgICAgJ1ByZS1EZXBlbmRzJyA9PiB7CisgICAgICAgIGFsbG93ZWQgPT4gQUxMX1BLRywKKyAgICAgICAgZGVwZW5kZW5jeSA9PiAnbm9ybWFsJywKKyAgICAgICAgZGVwX29yZGVyID0+IDEsCisgICAgfSwKKyAgICAnUHJpb3JpdHknID0+IHsKKyAgICAgICAgYWxsb3dlZCA9PiBDVFJMX0lORk9fU1JDIHwgQ1RSTF9JTkRFWF9TUkMgfCBBTExfUEtHLAorICAgIH0sCisgICAgJ1Byb3ZpZGVzJyA9PiB7CisgICAgICAgIGFsbG93ZWQgPT4gQUxMX1BLRywKKyAgICAgICAgZGVwZW5kZW5jeSA9PiAndW5pb24nLAorICAgICAgICBkZXBfb3JkZXIgPT4gOSwKKyAgICB9LAorICAgICdSZWNvbW1lbmRzJyA9PiB7CisgICAgICAgIGFsbG93ZWQgPT4gQUxMX1BLRywKKyAgICAgICAgZGVwZW5kZW5jeSA9PiAnbm9ybWFsJywKKyAgICAgICAgZGVwX29yZGVyID0+IDMsCisgICAgfSwKKyAgICAnUmVwbGFjZXMnID0+IHsKKyAgICAgICAgYWxsb3dlZCA9PiBBTExfUEtHLAorICAgICAgICBkZXBlbmRlbmN5ID0+ICd1bmlvbicsCisgICAgICAgIGRlcF9vcmRlciA9PiA4LAorICAgIH0sCisgICAgJ1NlY3Rpb24nID0+IHsKKyAgICAgICAgYWxsb3dlZCA9PiBDVFJMX0lORk9fU1JDIHwgQ1RSTF9JTkRFWF9TUkMgfCBBTExfUEtHLAorICAgIH0sCisgICAgJ1NpemUnID0+IHsKKyAgICAgICAgYWxsb3dlZCA9PiBDVFJMX0lOREVYX1BLRywKKyAgICB9LAorICAgICdTb3VyY2UnID0+IHsKKyAgICAgICAgYWxsb3dlZCA9PiAoQUxMX1BLRyB8IEFMTF9TUkMgfCBBTExfQ0hBTkdFUykgJgorICAgICAgICAgICAgICAgICAgICh+KENUUkxfSU5ERVhfU1JDIHwgQ1RSTF9JTkZPX1BLRykpLAorICAgIH0sCisgICAgJ1N0YW5kYXJkcy1WZXJzaW9uJyA9PiB7CisgICAgICAgIGFsbG93ZWQgPT4gQUxMX1NSQywKKyAgICB9LAorICAgICdTdGF0dXMnID0+IHsKKyAgICAgICAgYWxsb3dlZCA9PiBDVFJMX0ZJTEVfU1RBVFVTLAorICAgIH0sCisgICAgJ1N1YmFyY2hpdGVjdHVyZScgPT4geworICAgICAgICBhbGxvd2VkID0+IEFMTF9QS0csCisgICAgfSwKKyAgICAnU3VnZ2VzdHMnID0+IHsKKyAgICAgICAgYWxsb3dlZCA9PiBBTExfUEtHLAorICAgICAgICBkZXBlbmRlbmN5ID0+ICdub3JtYWwnLAorICAgICAgICBkZXBfb3JkZXIgPT4gNCwKKyAgICB9LAorICAgICdUYWcnID0+IHsKKyAgICAgICAgYWxsb3dlZCA9PiBBTExfUEtHLAorICAgIH0sCisgICAgJ1Rhc2snID0+IHsKKyAgICAgICAgYWxsb3dlZCA9PiBBTExfUEtHLAorICAgIH0sCisgICAgJ1RyaWdnZXJzLUF3YWl0ZWQnID0+IHsKKyAgICAgICAgYWxsb3dlZCA9PiBDVFJMX0ZJTEVfU1RBVFVTLAorICAgIH0sCisgICAgJ1RyaWdnZXJzLVBlbmRpbmcnID0+IHsKKyAgICAgICAgYWxsb3dlZCA9PiBDVFJMX0ZJTEVfU1RBVFVTLAorICAgIH0sCisgICAgJ1VwbG9hZGVycycgPT4geworICAgICAgICBhbGxvd2VkID0+IEFMTF9TUkMsCisgICAgfSwKKyAgICAnVXJnZW5jeScgPT4geworICAgICAgICBhbGxvd2VkID0+IEFMTF9DSEFOR0VTLAorICAgIH0sCisgICAgJ1Zjcy1Ccm93c2VyJyA9PiB7CisgICAgICAgIGFsbG93ZWQgPT4gQUxMX1NSQywKKyAgICB9LAorICAgICdWY3MtQXJjaCcgPT4geworICAgICAgICBhbGxvd2VkID0+IEFMTF9TUkMsCisgICAgfSwKKyAgICAnVmNzLUJ6cicgPT4geworICAgICAgICBhbGxvd2VkID0+IEFMTF9TUkMsCisgICAgfSwKKyAgICAnVmNzLUN2cycgPT4geworICAgICAgICBhbGxvd2VkID0+IEFMTF9TUkMsCisgICAgfSwKKyAgICAnVmNzLURhcmNzJyA9PiB7CisgICAgICAgIGFsbG93ZWQgPT4gQUxMX1NSQywKKyAgICB9LAorICAgICdWY3MtR2l0JyA9PiB7CisgICAgICAgIGFsbG93ZWQgPT4gQUxMX1NSQywKKyAgICB9LAorICAgICdWY3MtSGcnID0+IHsKKyAgICAgICAgYWxsb3dlZCA9PiBBTExfU1JDLAorICAgIH0sCisgICAgJ1Zjcy1NdG4nID0+IHsKKyAgICAgICAgYWxsb3dlZCA9PiBBTExfU1JDLAorICAgIH0sCisgICAgJ1Zjcy1Tdm4nID0+IHsKKyAgICAgICAgYWxsb3dlZCA9PiBBTExfU1JDLAorICAgIH0sCisgICAgJ1ZlbmRvcicgPT4geworICAgICAgICBhbGxvd2VkID0+IENUUkxfRklMRV9WRU5ET1IsCisgICAgfSwKKyAgICAnVmVuZG9yLVVybCcgPT4geworICAgICAgICBhbGxvd2VkID0+IENUUkxfRklMRV9WRU5ET1IsCisgICAgfSwKKyAgICAnVmVyc2lvbicgPT4geworICAgICAgICBhbGxvd2VkID0+IChBTExfUEtHIHwgQUxMX1NSQyB8IEFMTF9DSEFOR0VTKSAmCisgICAgICAgICAgICAgICAgICAgICh+KENUUkxfSU5GT19TUkMgfCBDVFJMX0lORk9fUEtHKSksCisgICAgfSwKKyk7CisKK215IEBjaGVja3N1bV9maWVsZHMgPSBtYXAgeyBmaWVsZF9jYXBpdGFsaXplKCJDaGVja3N1bXMtJF8iKSB9IGNoZWNrc3Vtc19nZXRfbGlzdCgpOworbXkgQHN1bV9maWVsZHMgPSBtYXAgeyAkXyBlcSAibWQ1IiA/ICJNRDVzdW0iIDogZmllbGRfY2FwaXRhbGl6ZSgkXykgfQorICAgICAgICAgICAgICAgICBjaGVja3N1bXNfZ2V0X2xpc3QoKTsKKyZmaWVsZF9yZWdpc3RlcigkXywgQ1RSTF9QS0dfU1JDIHwgQ1RSTF9GSUxFX0NIQU5HRVMpIGZvcmVhY2ggQGNoZWNrc3VtX2ZpZWxkczsKKyZmaWVsZF9yZWdpc3RlcigkXywgQ1RSTF9JTkRFWF9QS0cpIGZvcmVhY2ggQHN1bV9maWVsZHM7CisKK291ciAlRklFTERfT1JERVIgPSAoCisgICAgQ1RSTF9QS0dfREVCKCkgPT4gWworICAgICAgICBxdyhQYWNrYWdlIFBhY2thZ2UtVHlwZSBTb3VyY2UgVmVyc2lvbiBCdWlsdC1Vc2luZyBLZXJuZWwtVmVyc2lvbgorICAgICAgICBBcmNoaXRlY3R1cmUgU3ViYXJjaGl0ZWN0dXJlIEluc3RhbGxlci1NZW51LUl0ZW0gRXNzZW50aWFsIE9yaWdpbiBCdWdzCisgICAgICAgIE1haW50YWluZXIgSW5zdGFsbGVkLVNpemUpLCAmZmllbGRfbGlzdF9wa2dfZGVwKCksCisgICAgICAgIHF3KFNlY3Rpb24gUHJpb3JpdHkgTXVsdGktQXJjaCBIb21lcGFnZSBEZXNjcmlwdGlvbiBUYWcgVGFzaykKKyAgICBdLAorICAgIENUUkxfUEtHX1NSQygpID0+IFsKKyAgICAgICAgcXcoRm9ybWF0IFNvdXJjZSBCaW5hcnkgQXJjaGl0ZWN0dXJlIFZlcnNpb24gT3JpZ2luIE1haW50YWluZXIKKyAgICAgICAgVXBsb2FkZXJzIEhvbWVwYWdlIFN0YW5kYXJkcy1WZXJzaW9uIFZjcy1Ccm93c2VyCisgICAgICAgIFZjcy1BcmNoIFZjcy1CenIgVmNzLUN2cyBWY3MtRGFyY3MgVmNzLUdpdCBWY3MtSGcgVmNzLU10bgorICAgICAgICBWY3MtU3ZuKSwgJmZpZWxkX2xpc3Rfc3JjX2RlcCgpLCBxdyhQYWNrYWdlLUxpc3QpLAorICAgICAgICBAY2hlY2tzdW1fZmllbGRzLCBxdyhGaWxlcykKKyAgICBdLAorICAgIENUUkxfRklMRV9DSEFOR0VTKCkgPT4gWworICAgICAgICBxdyhGb3JtYXQgRGF0ZSBTb3VyY2UgQmluYXJ5IEFyY2hpdGVjdHVyZSBWZXJzaW9uIERpc3RyaWJ1dGlvbgorICAgICAgICBVcmdlbmN5IE1haW50YWluZXIgQ2hhbmdlZC1CeSBEZXNjcmlwdGlvbiBDbG9zZXMgQ2hhbmdlcyksCisgICAgICAgIEBjaGVja3N1bV9maWVsZHMsIHF3KEZpbGVzKQorICAgIF0sCisgICAgQ1RSTF9DSEFOR0VMT0coKSA9PiBbCisgICAgICAgIHF3KFNvdXJjZSBWZXJzaW9uIERpc3RyaWJ1dGlvbiBVcmdlbmN5IE1haW50YWluZXIgRGF0ZSBDbG9zZXMKKyAgICAgICAgQ2hhbmdlcyBUaW1lc3RhbXAgSGVhZGVyIEl0ZW1zIFRyYWlsZXIgVXJnZW5jeV9jb21tZW50CisgICAgICAgIFVyZ2VuY3lfbGMpCisgICAgXSwKKyAgICBDVFJMX0ZJTEVfU1RBVFVTKCkgPT4gWyAjIFNhbWUgYXMgZmllbGRpbmZvcyBpbiBsaWIvZHBrZy9wYXJzZS5jCisgICAgICAgIHF3KFBhY2thZ2UgRXNzZW50aWFsIFN0YXR1cyBQcmlvcml0eSBTZWN0aW9uIEluc3RhbGxlZC1TaXplIE9yaWdpbgorICAgICAgICBNYWludGFpbmVyIEJ1Z3MgQXJjaGl0ZWN0dXJlIFNvdXJjZSBWZXJzaW9uIENvbmZpZy1WZXJzaW9uCisgICAgICAgIFJlcGxhY2VzIFByb3ZpZGVzIERlcGVuZHMgUHJlLURlcGVuZHMgUmVjb21tZW5kcyBTdWdnZXN0cyBCcmVha3MKKyAgICAgICAgQ29uZmxpY3RzIEVuaGFuY2VzIENvbmZmaWxlcyBEZXNjcmlwdGlvbiBUcmlnZ2Vycy1QZW5kaW5nCisgICAgICAgIFRyaWdnZXJzLUF3YWl0ZWQpCisgICAgXSwKKyk7CisjIE9yZGVyIGZvciBDVFJMX0lOREVYX1BLRyBpcyBkZXJpdmVkIGZyb20gQ1RSTF9QS0dfREVCCiskRklFTERfT1JERVJ7Q1RSTF9JTkRFWF9QS0coKX0gPSBbIEB7JEZJRUxEX09SREVSe0NUUkxfUEtHX0RFQigpfX0gXTsKKyZmaWVsZF9pbnNlcnRfYmVmb3JlKENUUkxfSU5ERVhfUEtHLCAnU2VjdGlvbicsICdGaWxlbmFtZScsICdTaXplJywgQHN1bV9maWVsZHMpOworIyBPcmRlciBmb3IgQ1RSTF9JTkRFWF9TUkMgaXMgZGVyaXZlZCBmcm9tIENUUkxfUEtHX1NSQworJEZJRUxEX09SREVSe0NUUkxfSU5ERVhfU1JDKCl9ID0gWyBAeyRGSUVMRF9PUkRFUntDVFJMX1BLR19TUkMoKX19IF07CitAeyRGSUVMRF9PUkRFUntDVFJMX0lOREVYX1NSQygpfX0gPSBtYXAgeyAkXyBlcSAiU291cmNlIiA/ICJQYWNrYWdlIiA6ICRfIH0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAeyRGSUVMRF9PUkRFUntDVFJMX1BLR19TUkMoKX19OworJmZpZWxkX2luc2VydF9hZnRlcihDVFJMX0lOREVYX1NSQywgIlZlcnNpb24iLCAiUHJpb3JpdHkiLCAiU2VjdGlvbiIpOworJmZpZWxkX2luc2VydF9iZWZvcmUoQ1RSTF9JTkRFWF9TUkMsICJDaGVja3N1bXMtTWQ1IiwgIkRpcmVjdG9yeSIpOworCisjIFJlZ2lzdGVyIHZlbmRvciBzcGVjaWZpY3MgZmllbGRzCitmb3JlYWNoIG15ICRvcCAocnVuX3ZlbmRvcl9ob29rKCJyZWdpc3Rlci1jdXN0b20tZmllbGRzIikpIHsKKyAgICBuZXh0IGlmIG5vdCAoZGVmaW5lZCAkb3AgYW5kIHJlZiAkb3ApOyAjIFNraXAgd2hlbiBub3QgaW1wbGVtZW50ZWQgYnkgdmVuZG9yCisgICAgbXkgJGZ1bmMgPSBzaGlmdCBAJG9wOworICAgIGlmICgkZnVuYyBlcSAicmVnaXN0ZXIiKSB7CisgICAgICAgICZmaWVsZF9yZWdpc3RlcihAJG9wKTsKKyAgICB9IGVsc2lmICgkZnVuYyBlcSAiaW5zZXJ0X2JlZm9yZSIpIHsKKyAgICAgICAgJmZpZWxkX2luc2VydF9iZWZvcmUoQCRvcCk7CisgICAgfSBlbHNpZiAoJGZ1bmMgZXEgImluc2VydF9hZnRlciIpIHsKKyAgICAgICAgJmZpZWxkX2luc2VydF9hZnRlcihAJG9wKTsKKyAgICB9IGVsc2UgeworICAgICAgICBlcnJvcigidmVuZG9yIGhvb2sgcmVnaXN0ZXItY3VzdG9tLWZpZWxkcyBzZW50IGJhZCBkYXRhOiBAJG9wIik7CisgICAgfQorfQorCis9ZW5jb2RpbmcgdXRmOAorCis9aGVhZDEgTkFNRQorCitEcGtnOjpDb250cm9sOjpGaWVsZHMgLSBtYW5hZ2UgKGxpc3Qgb2Ygb2ZmaWNpYWwpIGNvbnRyb2wgZmllbGRzCisKKz1oZWFkMSBERVNDUklQVElPTgorCitUaGUgbW9kdWxlcyBjb250YWlucyBhIGxpc3Qgb2YgZmllbGRuYW1lcyB3aXRoIGFzc29jaWF0ZWQgbWV0YS1kYXRhIGV4cGxhaW5pbmcKK2luIHdoaWNoIHR5cGUgb2YgY29udHJvbCBpbmZvcm1hdGlvbiB0aGV5IGFyZSBhbGxvd2VkLiBUaGUgdHlwZXMgYXJlIHRoZQorQ1RSTF8qIGNvbnN0YW50cyBleHBvcnRlZCBieSBEcGtnOjpDb250cm9sLgorCis9aGVhZDEgRlVOQ1RJT05TCisKKz1vdmVyIDQKKworPWl0ZW0gbXkgJGYgPSBmaWVsZF9jYXBpdGFsaXplKCRmaWVsZF9uYW1lKQorCitSZXR1cm5zIHRoZSBmaWVsZCBuYW1lIHByb3Blcmx5IGNhcGl0YWxpemVkLiBBbGwgY2hhcmFjdGVycyBhcmUgbG93ZXJjYXNlLAorZXhjZXB0IHRoZSBmaXJzdCBvZiBlYWNoIHdvcmQgKHdvcmRzIGFyZSBzZXBhcmF0ZWQgYnkgYSBkYXNoIGluIGZpZWxkIG5hbWVzKS4KKworPWN1dAorCitzdWIgZmllbGRfY2FwaXRhbGl6ZSgkKSB7CisgICAgbXkgJGZpZWxkID0gbGMoc2hpZnQpOworICAgICMgU29tZSBzcGVjaWFsIGNhc2VzIGR1ZSB0byBoaXN0b3J5CisgICAgcmV0dXJuICJNRDVzdW0iIGlmICRmaWVsZCBlcSAibWQ1c3VtIjsKKyAgICByZXR1cm4gdWMoJGZpZWxkKSBpZiBjaGVja3N1bXNfaXNfc3VwcG9ydGVkKCRmaWVsZCk7CisgICAgIyBHZW5lcmljIGNhc2UKKyAgICByZXR1cm4gam9pbiAnLScsIG1hcCB7IHVjZmlyc3QgfSBzcGxpdCAvLS8sICRmaWVsZDsKK30KKworPWl0ZW0gZmllbGRfaXNfb2ZmaWNpYWwoJGZuYW1lKQorCitSZXR1cm5zIHRydWUgaWYgdGhlIGZpZWxkIGlzIG9mZmljaWFsIGFuZCBrbm93bi4KKworPWN1dAorCitzdWIgZmllbGRfaXNfb2ZmaWNpYWwoJCkgeworICAgIHJldHVybiBleGlzdHMgJEZJRUxEU3tmaWVsZF9jYXBpdGFsaXplKCRfWzBdKX07Cit9CisKKz1pdGVtIGZpZWxkX2lzX2FsbG93ZWRfaW4oJGZuYW1lLCBAdHlwZXMpCisKK1JldHVybnMgdHJ1ZSAoMSkgaWYgdGhlIGZpZWxkICRmbmFtZSBpcyBhbGxvd2VkIGluIGFsbCB0aGUgdHlwZXMgbGlzdGVkIGluCit0aGUgbGlzdC4gTm90ZSB0aGF0IHlvdSBjYW4gdXNlIHR5cGUgc2V0cyBpbnN0ZWFkIG9mIGluZGl2aWR1YWwgdHlwZXMgKGV4OgorQ1RSTF9GSUxFX0NIQU5HRVMgfCBDVFJMX0NIQU5HRUxPRykuCisKK2ZpZWxkX2FsbG93ZWRfaW4oQXxCLCBDKSByZXR1cm5zIHRydWUgb25seSBpZiB0aGUgZmllbGQgaXMgYWxsb3dlZCBpbiBDCithbmQgZWl0aGVyIEEgb3IgQi4KKworVW5kZWYgaXMgcmV0dXJuZWQgZm9yIG5vbi1vZmZpY2lhbCBmaWVsZHMuCisKKz1jdXQKKworc3ViIGZpZWxkX2lzX2FsbG93ZWRfaW4oJEApIHsKKyAgICBteSAoJGZpZWxkLCBAdHlwZXMpID0gQF87CisgICAgJGZpZWxkID0gZmllbGRfY2FwaXRhbGl6ZSgkZmllbGQpOworICAgIHJldHVybiB1bmRlZiB1bmxlc3MgZmllbGRfaXNfb2ZmaWNpYWwoJGZpZWxkKTsKKworICAgIHJldHVybiAwIGlmIG5vdCBzY2FsYXIoQHR5cGVzKTsKKyAgICBmb3JlYWNoIG15ICR0eXBlIChAdHlwZXMpIHsKKyAgICAgICAgbmV4dCBpZiAkdHlwZSA9PSBDVFJMX1VOS05PV047ICMgQWx3YXlzIGFsbG93ZWQKKyAgICAgICAgcmV0dXJuIDAgdW5sZXNzICRGSUVMRFN7JGZpZWxkfXsnYWxsb3dlZCd9ICYgJHR5cGU7CisgICAgfQorICAgIHJldHVybiAxOworfQorCis9aXRlbSBmaWVsZF90cmFuc2Zlcl9zaW5nbGUoJGZyb20sICR0bywgJGZpZWxkKQorCitJZiBhcHByb3ByaWF0ZSwgY29weSB0aGUgdmFsdWUgb2YgdGhlIGZpZWxkIG5hbWVkICRmaWVsZCB0YWtlbiBmcm9tIHRoZQorJGZyb20gRHBrZzo6Q29udHJvbCBvYmplY3QgdG8gdGhlICR0byBEcGtnOjpDb250cm9sIG9iamVjdC4KKworT2ZmaWNpYWwgZmllbGRzIGFyZSBjb3BpZWQgb25seSBpZiB0aGUgZmllbGQgaXMgYWxsb3dlZCBpbiBib3RoIHR5cGVzIG9mCitvYmplY3RzLiBDdXN0b20gZmllbGRzIGFyZSB0cmVhdGVkIGluIGEgc3BlY2lmaWMgbWFubmVyLiBXaGVuIHRoZSB0YXJnZXQKK2lzIG5vdCBhbW9uZyBDVFJMX1BLR19TUkMsIENUUkxfUEtHX0RFQiBvciBDVFJMX0ZJTEVfQ0hBTkdFUywgdGhlbiB0aGV5CithcmUgYWx3YXkgY29waWVkIGFzIGlzICh0aGUgWC0gcHJlZml4IGlzIGtlcHQpLiBPdGhlcndpc2UgdGhleSBhcmUgbm90Citjb3BpZWQgZXhjZXB0IGlmIHRoZSB0YXJnZXQgb2JqZWN0IG1hdGNoZXMgdGhlIHRhcmdldCBkZXN0aW5hdGlvbiBlbmNvZGVkCitpbiB0aGUgZmllbGQgbmFtZS4gVGhlIGluaXRpYWwgWCBkZW5vdGluZyBjdXN0b20gZmllbGRzIGNhbiBiZSBmb2xsb3dlZCBieQorb25lIG9yIG1vcmUgbGV0dGVycyBhbW9uZyAiUyIgKFNvdXJjZTogY29ycmVzcG9uZHMgdG8gQ1RSTF9QS0dfU1JDKSwgIkIiCisoQmluYXJ5OiBjb3JyZXNwb25kcyB0byBDVFJMX1BLR19ERUIpIG9yICJDIiAoQ2hhbmdlczogY29ycmVzcG9uZHMgdG8KK0NUUkxfRklMRV9DSEFOR0VTKS4KKworUmV0dXJucyB1bmRlZiBpZiBub3RoaW5nIGhhcyBiZWVuIGNvcGllZCBvciB0aGUgbmFtZSBvZiB0aGUgbmV3IGZpZWxkCithZGRlZCB0byAkdG8gb3RoZXJ3aXNlLgorCis9Y3V0CisKK3N1YiBmaWVsZF90cmFuc2Zlcl9zaW5nbGUoJCQ7JCkgeworICAgIG15ICgkZnJvbSwgJHRvLCAkZmllbGQpID0gQF87CisgICAgJGZpZWxkID0gJF8gdW5sZXNzIGRlZmluZWQgJGZpZWxkOworICAgIG15ICgkZnJvbV90eXBlLCAkdG9fdHlwZSkgPSAoJGZyb20tPmdldF90eXBlKCksICR0by0+Z2V0X3R5cGUoKSk7CisgICAgJGZpZWxkID0gZmllbGRfY2FwaXRhbGl6ZSgkZmllbGQpOworCisgICAgaWYgKGZpZWxkX2lzX2FsbG93ZWRfaW4oJGZpZWxkLCAkZnJvbV90eXBlLCAkdG9fdHlwZSkpIHsKKyAgICAgICAgJHRvLT57JGZpZWxkfSA9ICRmcm9tLT57JGZpZWxkfTsKKyAgICAgICAgcmV0dXJuICRmaWVsZDsKKyAgICB9IGVsc2lmICgkZmllbGQgPX4gL15YKFtTQkNdKiktL2kpIHsKKyAgICAgICAgbXkgJGRlc3QgPSAkMTsKKyAgICAgICAgaWYgKCgkZGVzdCA9fiAvQi9pIGFuZCAkdG9fdHlwZSA9PSBDVFJMX1BLR19ERUIpIG9yCisgICAgICAgICAgICAoJGRlc3QgPX4gL1MvaSBhbmQgJHRvX3R5cGUgPT0gQ1RSTF9QS0dfU1JDKSBvcgorICAgICAgICAgICAgKCRkZXN0ID1+IC9DL2kgYW5kICR0b190eXBlID09IENUUkxfRklMRV9DSEFOR0VTKSkKKyAgICAgICAgeworICAgICAgICAgICAgbXkgJG5ldyA9ICRmaWVsZDsKKyAgICAgICAgICAgICRuZXcgPX4gcy9eWChbU0JDXSopLS8vaTsKKyAgICAgICAgICAgICR0by0+eyRuZXd9ID0gJGZyb20tPnskZmllbGR9OworICAgICAgICAgICAgcmV0dXJuICRuZXc7CisgICAgICAgIH0gZWxzaWYgKCR0b190eXBlICE9IENUUkxfUEtHX0RFQiBhbmQKKwkJICR0b190eXBlICE9IENUUkxfUEtHX1NSQyBhbmQKKwkJICR0b190eXBlICE9IENUUkxfRklMRV9DSEFOR0VTKQorCXsKKwkgICAgJHRvLT57JGZpZWxkfSA9ICRmcm9tLT57JGZpZWxkfTsKKwkgICAgcmV0dXJuICRmaWVsZDsKKwl9CisgICAgfSBlbHNpZiAobm90IGZpZWxkX2lzX2FsbG93ZWRfaW4oJGZpZWxkLCAkZnJvbV90eXBlKSkgeworICAgICAgICB3YXJuaW5nKF9nKCJ1bmtub3duIGluZm9ybWF0aW9uIGZpZWxkICclcycgaW4gaW5wdXQgZGF0YSBpbiAlcyIpLAorICAgICAgICAgICAgICAgICRmaWVsZCwgJGZyb20tPmdldF9vcHRpb24oIm5hbWUiKSB8fCBfZygiY29udHJvbCBpbmZvcm1hdGlvbiIpKTsKKyAgICB9CisgICAgcmV0dXJuIHVuZGVmOworfQorCis9aXRlbSBmaWVsZF90cmFuc2Zlcl9hbGwoJGZyb20sICR0bykKKworVHJhbnNmZXIgYWxsIGFwcHJvcHJpYXRlIGZpZWxkcyBmcm9tICRmcm9tIHRvICR0by4gQ2FsbHMKK2ZpZWxkX3RyYW5zZmVyX3NpbmdsZSgpIG9uIGFsbCBmaWVsZHMgYXZhaWxhYmxlIGluICRmcm9tLgorCitSZXR1cm5zIHRoZSBsaXN0IG9mIGZpZWxkcyB0aGF0IGhhdmUgYmVlbiBhZGRlZCB0byAkdG8uCisKKz1jdXQKKworc3ViIGZpZWxkX3RyYW5zZmVyX2FsbCgkJCkgeworICAgIG15ICgkZnJvbSwgJHRvKSA9IEBfOworICAgIG15IChAcmVzLCAkcmVzKTsKKyAgICBmb3JlYWNoIG15ICRrIChrZXlzICUkZnJvbSkgeworICAgICAgICAkcmVzID0gZmllbGRfdHJhbnNmZXJfc2luZ2xlKCRmcm9tLCAkdG8sICRrKTsKKyAgICAgICAgcHVzaCBAcmVzLCAkcmVzIGlmICRyZXMgYW5kIGRlZmluZWQgd2FudGFycmF5OworICAgIH0KKyAgICByZXR1cm4gQHJlczsKK30KKworPWl0ZW0gZmllbGRfb3JkZXJlZF9saXN0KCR0eXBlKQorCitSZXR1cm5zIGFuIG9yZGVyZWQgbGlzdCBvZiBmaWVsZHMgZm9yIGEgZ2l2ZW4gdHlwZSBvZiBjb250cm9sIGluZm9ybWF0aW9uLgorVGhpcyBsaXN0IGNhbiBiZSB1c2VkIHRvIG91dHB1dCB0aGUgZmllbGRzIGluIGEgcHJlZGljdGFibGUgb3JkZXIuCitUaGUgbGlzdCBtaWdodCBiZSBlbXB0eSBmb3IgdHlwZXMgd2hlcmUgdGhlIG9yZGVyIGRvZXMgbm90IG1hdHRlciBtdWNoLgorCis9Y3V0CisKK3N1YiBmaWVsZF9vcmRlcmVkX2xpc3QoJCkgeworICAgIG15ICgkdHlwZSkgPSBAXzsKKyAgICByZXR1cm4gQHskRklFTERfT1JERVJ7JHR5cGV9fSBpZiBleGlzdHMgJEZJRUxEX09SREVSeyR0eXBlfTsKKyAgICByZXR1cm4gKCk7Cit9CisKKz1pdGVtIGZpZWxkX2xpc3Rfc3JjX2RlcCgpCisKK0xpc3Qgb2YgZmllbGRzIHRoYXQgY29udGFpbnMgZGVwZW5kZW5jaWVzLWxpa2UgaW5mb3JtYXRpb24gaW4gYSBzb3VyY2UKK0RlYmlhbiBwYWNrYWdlLgorCis9Y3V0CisKK3N1YiBmaWVsZF9saXN0X3NyY19kZXAoKSB7CisgICAgcmV0dXJuIHNvcnQgeworICAgICAgICAkRklFTERTeyRhfXsnZGVwX29yZGVyJ30gPD0+ICRGSUVMRFN7JGJ9eydkZXBfb3JkZXInfQorICAgIH0gZ3JlcCB7CisgICAgICAgIGZpZWxkX2lzX2FsbG93ZWRfaW4oJF8sIENUUkxfUEtHX1NSQykgYW5kCisgICAgICAgIGV4aXN0cyAkRklFTERTeyRffXsnZGVwZW5kZW5jeSd9CisgICAgfSBrZXlzICVGSUVMRFM7Cit9CisKKz1pdGVtIGZpZWxkX2xpc3RfcGtnX2RlcCgpCisKK0xpc3Qgb2YgZmllbGRzIHRoYXQgY29udGFpbnMgZGVwZW5kZW5jaWVzLWxpa2UgaW5mb3JtYXRpb24gaW4gYSBiaW5hcnkKK0RlYmlhbiBwYWNrYWdlLiBUaGUgZmllbGRzIHRoYXQgZXhwcmVzcyByZWFsIGRlcGVuZGVuY2llcyBhcmUgc29ydGVkIGZyb20KK3RoZSBzdHJvbmdlciB0byB0aGUgd2Vha2VyLgorCis9Y3V0CisKK3N1YiBmaWVsZF9saXN0X3BrZ19kZXAoKSB7CisgICAgbXkgQGtleXMgPSBrZXlzICVGSUVMRFM7CisgICAgcmV0dXJuIHNvcnQgeworICAgICAgICAkRklFTERTeyRhfXsnZGVwX29yZGVyJ30gPD0+ICRGSUVMRFN7JGJ9eydkZXBfb3JkZXInfQorICAgIH0gZ3JlcCB7CisgICAgICAgIGZpZWxkX2lzX2FsbG93ZWRfaW4oJF8sIENUUkxfUEtHX0RFQikgYW5kCisgICAgICAgIGV4aXN0cyAkRklFTERTeyRffXsnZGVwZW5kZW5jeSd9CisgICAgfSBAa2V5czsKK30KKworPWl0ZW0gZmllbGRfZ2V0X2RlcF90eXBlKCRmaWVsZCkKKworUmV0dXJuIHRoZSB0eXBlIG9mIHRoZSBkZXBlbmRlbmN5IGV4cHJlc3NlZCBieSB0aGUgZ2l2ZW4gZmllbGQuIENhbgorZWl0aGVyIGJlICJub3JtYWwiIGZvciBhIHJlYWwgZGVwZW5kZW5jeSBmaWVsZCAoUHJlLURlcGVuZHMsIERlcGVuZHMsIC4uLikKK29yICJ1bmlvbiIgZm9yIG90aGVyIHJlbGF0aW9uIGZpZWxkcyBzaGFyaW5nIHRoZSBzYW1lIHN5bnRheCAoQ29uZmxpY3RzLAorQnJlYWtzLCAuLi4pLiBSZXR1cm5zIHVuZGVmIGZvciBmaWVsZHMgd2hpY2ggYXJlIG5vdCBkZXBlbmRlbmNpZXMuCisKKz1jdXQKKworc3ViIGZpZWxkX2dldF9kZXBfdHlwZSgkKSB7CisgICAgbXkgJGZpZWxkID0gZmllbGRfY2FwaXRhbGl6ZSgkX1swXSk7CisgICAgcmV0dXJuIHVuZGVmIHVubGVzcyBmaWVsZF9pc19vZmZpY2lhbCgkZmllbGQpOworICAgIHJldHVybiAkRklFTERTeyRmaWVsZH17J2RlcGVuZGVuY3knfSBpZiBleGlzdHMgJEZJRUxEU3skZmllbGR9eydkZXBlbmRlbmN5J307CisgICAgcmV0dXJuIHVuZGVmOworfQorCis9aXRlbSBmaWVsZF9yZWdpc3RlcigkZmllbGQsICRhbGxvd2VkX3R5cGVzLCAlb3B0cykKKworUmVnaXN0ZXIgYSBuZXcgZmllbGQgYXMgYmVpbmcgYWxsb3dlZCBpbiBjb250cm9sIGluZm9ybWF0aW9uIG9mIHNwZWNpZmllZAordHlwZXMuICVvcHRzIGlzIG9wdGlvbmFsCisKKz1jdXQKKworc3ViIGZpZWxkX3JlZ2lzdGVyKCQkO0ApIHsKKyAgICBteSAoJGZpZWxkLCAkdHlwZXMsICVvcHRzKSA9IEBfOworICAgICRmaWVsZCA9IGZpZWxkX2NhcGl0YWxpemUoJGZpZWxkKTsKKyAgICAkRklFTERTeyRmaWVsZH0gPSB7CisgICAgICAgIGFsbG93ZWQgPT4gJHR5cGVzLAorICAgICAgICAlb3B0cworICAgIH07Cit9CisKKz1pdGVtIGZpZWxkX2luc2VydF9hZnRlcigkdHlwZSwgJHJlZiwgQGZpZWxkcykKKworUGxhY2UgZmllbGQgYWZ0ZXIgYW5vdGhlciBvbmUgKCRyZWYpIGluIG91dHB1dCBvZiBjb250cm9sIGluZm9ybWF0aW9uIG9mCit0eXBlICR0eXBlLgorCis9Y3V0CitzdWIgZmllbGRfaW5zZXJ0X2FmdGVyKCQkQCkgeworICAgIG15ICgkdHlwZSwgJGZpZWxkLCBAZmllbGRzKSA9IEBfOworICAgIHJldHVybiAwIGlmIG5vdCBleGlzdHMgJEZJRUxEX09SREVSeyR0eXBlfTsKKyAgICAoJGZpZWxkLCBAZmllbGRzKSA9IG1hcCB7IGZpZWxkX2NhcGl0YWxpemUoJF8pIH0gKCRmaWVsZCwgQGZpZWxkcyk7CisgICAgQHskRklFTERfT1JERVJ7JHR5cGV9fSA9IG1hcCB7CisgICAgICAgICgkXyBlcSAkZmllbGQpID8gKCRfLCBAZmllbGRzKSA6ICRfCisgICAgfSBAeyRGSUVMRF9PUkRFUnskdHlwZX19OworICAgIHJldHVybiAxOworfQorCis9aXRlbSBmaWVsZF9pbnNlcnRfYmVmb3JlKCR0eXBlLCAkcmVmLCBAZmllbGRzKQorCitQbGFjZSBmaWVsZCBiZWZvcmUgYW5vdGhlciBvbmUgKCRyZWYpIGluIG91dHB1dCBvZiBjb250cm9sIGluZm9ybWF0aW9uIG9mCit0eXBlICR0eXBlLgorCis9Y3V0CitzdWIgZmllbGRfaW5zZXJ0X2JlZm9yZSgkJEApIHsKKyAgICBteSAoJHR5cGUsICRmaWVsZCwgQGZpZWxkcykgPSBAXzsKKyAgICByZXR1cm4gMCBpZiBub3QgZXhpc3RzICRGSUVMRF9PUkRFUnskdHlwZX07CisgICAgKCRmaWVsZCwgQGZpZWxkcykgPSBtYXAgeyBmaWVsZF9jYXBpdGFsaXplKCRfKSB9ICgkZmllbGQsIEBmaWVsZHMpOworICAgIEB7JEZJRUxEX09SREVSeyR0eXBlfX0gPSBtYXAgeworICAgICAgICAoJF8gZXEgJGZpZWxkKSA/IChAZmllbGRzLCAkXykgOiAkXworICAgIH0gQHskRklFTERfT1JERVJ7JHR5cGV9fTsKKyAgICByZXR1cm4gMTsKK30KKworPWJhY2sKKworPWhlYWQxIEFVVEhPUgorCitSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+LgorCis9Y3V0CisKKzE7CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvRHBrZy9Db250cm9sL0hhc2gucG0gYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvRHBrZy9Db250cm9sL0hhc2gucG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODIxNTdkOQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9EcGtnL0NvbnRyb2wvSGFzaC5wbQpAQCAtMCwwICsxLDQ4NyBAQAorIyBDb3B5cmlnaHQgwqkgMjAwNy0yMDA5IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KKyMKKyMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyMKKyMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisjIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisjIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyMKKyMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisKK3BhY2thZ2UgRHBrZzo6Q29udHJvbDo6SGFzaDsKKwordXNlIHN0cmljdDsKK3VzZSB3YXJuaW5nczsKKworb3VyICRWRVJTSU9OID0gIjEuMDAiOworCit1c2UgRHBrZzo6R2V0dGV4dDsKK3VzZSBEcGtnOjpFcnJvckhhbmRsaW5nOworCisjIFRoaXMgbW9kdWxlIG11c3QgYWJzb2x1dGVseSBub3QgdXNlIERwa2c6OkNvbnRyb2w6OkZpZWxkcworIyBpdCdzIHVzZWQgYnkgb3RoZXIgbW9kdWxlcyB0aGF0IGFyZSByZXF1aXJlZCB0byBjb21waWxlCisjIERwa2c6OkNvbnRyb2w6OkZpZWxkcyBpdHNlbGYgKERwa2c6OlZlbmRvcikKKyMgVGhhdCdzIHdoeSBmaWVsZF9jYXBpdGFsaXplIGlzIGR1cGxpY2F0ZWQKKwordXNlIGJhc2UgcXcoRHBrZzo6SW50ZXJmYWNlOjpTdG9yYWJsZSk7CisKK3VzZSBvdmVybG9hZAorICAgICcle30nID0+IHN1YiB7ICR7JF9bMF19LT57J2ZpZWxkcyd9IH0sCisgICAgJ2VxJyA9PiBzdWIgeyAiJF9bMF0iIGVxICIkX1sxXSIgfTsKKworPWVuY29kaW5nIHV0ZjgKKworPWhlYWQxIE5BTUUKKworRHBrZzo6Q29udHJvbDo6SGFzaCAtIHBhcnNlIGFuZCBtYW5pcHVsYXRlIGEgYmxvY2sgb2YgUkZDODIyLWxpa2UgZmllbGRzCisKKz1oZWFkMSBERVNDUklQVElPTgorCitUaGUgRHBrZzo6Q29udHJvbDo6SGFzaCBvYmplY3QgaXMgYSBoYXNoLWxpa2UgcmVwcmVzZW50YXRpb24gb2YgYSBzZXQgb2YKK1JGQzgyMi1saWtlIGZpZWxkcy4gVGhlIGZpZWxkcyBuYW1lcyBhcmUgY2FzZSBpbnNlbnNpdGl2ZSBhbmQgYXJlIGFsd2F5cworY2FwaXRhbGl6ZWQgdGhlIHNhbWUgd2hlbiBvdXRwdXQgKHNlZSBmaWVsZF9jYXBpdGFsaXplIGZ1bmN0aW9uIGluCitEcGtnOjpDb250cm9sOjpGaWVsZHMpLgorVGhlIG9yZGVyIGluIHdoaWNoIGZpZWxkcyBoYXZlIGJlZW4gc2V0IGlzIHJlbWVtYmVyZWQgYW5kIGlzIHVzZWQKK3RvIGJlIGFibGUgdG8gZHVtcCBiYWNrIHRoZSBzYW1lIGNvbnRlbnQuIFRoZSBvdXRwdXQgb3JkZXIgY2FuIGFsc28gYmUKK292ZXJyaWRkZW4gaWYgbmVlZGVkLgorCitZb3UgY2FuIHN0b3JlIGFyYml0cmFyeSB2YWx1ZXMgaW4gdGhlIGhhc2gsIHRoZXkgd2lsbCBhbHdheXMgYmUgcHJvcGVybHkKK2VzY2FwZWQgaW4gdGhlIG91dHB1dCB0byBjb25mb3JtIHRvIHRoZSBzeW50YXggb2YgY29udHJvbCBmaWxlcy4gVGhpcyBpcworcmVsZXZhbnQgbWFpbmx5IGZvciBtdWx0aWxpbmVzIHZhbHVlczogd2hpbGUgdGhlIGZpcnN0IGxpbmUgaXMgYWx3YXlzIG91dHB1dAordW5jaGFuZ2VkIGRpcmVjdGx5IGFmdGVyIHRoZSBmaWVsZCBuYW1lLCBzdXBwbGVtZW50YXJ5IGxpbmVzIGFyZQorbW9kaWZpZWQuIEVtcHR5IGxpbmVzIGFuZCBsaW5lcyBjb250YWluaW5nIG9ubHkgZG90cyBhcmUgcHJlZml4ZWQgd2l0aAorIiAuIiAoc3BhY2UgKyBkb3QpIHdoaWxlIG90aGVyIGxpbmVzIGFyZSBwcmVmaXhlZCB3aXRoIGEgc2luZ2xlIHNwYWNlLgorCitEdXJpbmcgcGFyc2luZywgdHJhaWxpbmcgc3BhY2VzIGFyZSBzdHJpcHBlZCBvbiBhbGwgbGluZXMgd2hpbGUgbGVhZGluZworc3BhY2VzIGFyZSBzdHJpcHBlZCBvbmx5IG9uIHRoZSBmaXJzdCBsaW5lIG9mIGVhY2ggZmllbGQuCisKKz1oZWFkMSBGVU5DVElPTlMKKworPW92ZXIgNAorCis9aXRlbSBteSAkYyA9IERwa2c6OkNvbnRyb2w6Okhhc2gtPm5ldyglb3B0cykKKworQ3JlYXRlcyBhIG5ldyBvYmplY3Qgd2l0aCB0aGUgaW5kaWNhdGVkIG9wdGlvbnMuIFN1cHBvcnRlZCBvcHRpb25zCithcmU6CisKKz1vdmVyIDgKKworPWl0ZW0gYWxsb3dfcGdwCisKK0NvbmZpZ3VyZXMgdGhlIHBhcnNlciB0byBhY2NlcHQgUEdQIHNpZ25hdHVyZXMgYXJvdW5kIHRoZSBjb250cm9sCitpbmZvcm1hdGlvbi4gVmFsdWUgY2FuIGJlIDAgKGRlZmF1bHQpIG9yIDEuCisKKz1pdGVtIGFsbG93X2R1cGxpY2F0ZQorCitDb25maWd1cmVzIHRoZSBwYXJzZXIgdG8gYWxsb3cgZHVwbGljYXRlIGZpZWxkcyBpbiB0aGUgY29udHJvbAoraW5mb3JtYXRpb24uIFZhbHVlIGNhbiBiZSAwIChkZWZhdWx0KSBvciAxLgorCis9aXRlbSBkcm9wX2VtcHR5CisKK0RlZmluZXMgaWYgZW1wdHkgZmllbGRzIGFyZSBkcm9wcGVkIGR1cmluZyB0aGUgb3V0cHV0LiBWYWx1ZSBjYW4gYmUgMAorKGRlZmF1bHQpIG9yIDEuCisKKz1pdGVtIG5hbWUKKworVGhlIHVzZXIgZnJpZW5kbHkgbmFtZSBvZiB0aGUgaW5mb3JtYXRpb24gc3RvcmVkIGluIHRoZSBvYmplY3QuIEl0IG1pZ2h0CitiZSB1c2VkIGluIHNvbWUgZXJyb3IgbWVzc2FnZXMgb3Igd2FybmluZ3MuIEEgZGVmYXVsdCBuYW1lIG1pZ2h0IGJlIHNldAorZGVwZW5kaW5nIG9uIHRoZSB0eXBlLgorCis9YmFjaworCis9Y3V0CisKK3N1YiBuZXcgeworICAgIG15ICgkdGhpcywgJW9wdHMpID0gQF87CisgICAgbXkgJGNsYXNzID0gcmVmKCR0aGlzKSB8fCAkdGhpczsKKworICAgICMgT2JqZWN0IGlzIGEgc2NhbGFyIHJlZmVyZW5jZSBhbmQgbm90IGEgaGFzaCByZWYgdG8gYXZvaWQKKyAgICAjIGluZmluaXRlIHJlY3Vyc2lvbiBkdWUgdG8gb3ZlcmxvYWRpbmcgaGFzaC1kZXJlZmVuY2luZworICAgIG15ICRzZWxmID0gXHsKKyAgICAgICAgJ2luX29yZGVyJyA9PiBbXSwKKyAgICAgICAgJ291dF9vcmRlcicgPT4gW10sCisgICAgICAgICdhbGxvd19wZ3AnID0+IDAsCisgICAgICAgICdhbGxvd19kdXBsaWNhdGUnID0+IDAsCisgICAgICAgICdkcm9wX2VtcHR5JyA9PiAwLAorICAgIH07CisgICAgYmxlc3MgJHNlbGYsICRjbGFzczsKKworICAgICQkc2VsZi0+eydmaWVsZHMnfSA9IERwa2c6OkNvbnRyb2w6Okhhc2g6OlRpZS0+bmV3KCRzZWxmKTsKKworICAgICMgT3B0aW9ucyBzZXQgYnkgdGhlIHVzZXIgb3ZlcnJpZGUgZGVmYXVsdCB2YWx1ZXMKKyAgICAkJHNlbGYtPnskX30gPSAkb3B0c3skX30gZm9yZWFjaCBrZXlzICVvcHRzOworCisgICAgcmV0dXJuICRzZWxmOworfQorCis9aXRlbSAkYy0+c2V0X29wdGlvbnMoJG9wdGlvbiwgJW9wdHMpCisKK0NoYW5nZXMgdGhlIHZhbHVlIG9mIG9uZSBvciBtb3JlIG9wdGlvbnMuCisKKz1jdXQKKworc3ViIHNldF9vcHRpb25zIHsKKyAgICBteSAoJHNlbGYsICRrLCAkdikgPSBAXzsKKyAgICAkJHNlbGYtPnska30gPSAkdjsKK30KKworPWl0ZW0gbXkgJHZhbHVlID0gJGMtPmdldF9vcHRpb24oJG9wdGlvbikKKworUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlIGNvcnJlc3BvbmRpbmcgb3B0aW9uLgorCis9Y3V0CisKK3N1YiBnZXRfb3B0aW9uIHsKKyAgICBteSAoJHNlbGYsICRrKSA9IEBfOworICAgIHJldHVybiAkJHNlbGYtPnska307Cit9CisKKz1pdGVtICRjLT5sb2FkKCRmaWxlKQorCitQYXJzZSB0aGUgY29udGVudCBvZiAkZmlsZS4gRXhpdHMgaW4gY2FzZSBvZiBlcnJvcnMuIFJldHVybnMgdHJ1ZSBpZiBzb21lCitmaWVsZHMgaGF2ZSBiZWVuIHBhcnNlZC4KKworPWl0ZW0gJGMtPnBhcnNlKCRmaCwgJGRlc2NyaXB0aW9uKQorCitQYXJzZSBhIGNvbnRyb2wgZmlsZSBmcm9tIHRoZSBnaXZlbiBmaWxlaGFuZGxlLiBFeGl0cyBpbiBjYXNlIG9mIGVycm9ycy4KKyRkZXNjcmlwdGlvbiBpcyB1c2VkIHRvIGRlc2NyaWJlIHRoZSBmaWxlaGFuZGxlLCBpZGVhbGx5IGl0J3MgYSBmaWxlbmFtZQorb3IgYSBkZXNjcmlwdGlvbiBvZiB3aGVyZSB0aGUgZGF0YSBjb21lcyBmcm9tLiBJdCdzIHVzZWQgaW4gZXJyb3IKK21lc3NhZ2VzLiBSZXR1cm5zIHRydWUgaWYgc29tZSBmaWVsZHMgaGF2ZSBiZWVuIHBhcnNlZC4KKworPWN1dAorCitzdWIgcGFyc2UgeworICAgIG15ICgkc2VsZiwgJGZoLCAkZGVzYykgPSBAXzsKKworICAgIG15ICRwYXJhYm9yZGVyID0gMTsKKyAgICBteSAkY2Y7ICMgQ3VycmVudCBmaWVsZAorICAgIG15ICRleHBlY3RfcGdwX3NpZyA9IDA7CisgICAgd2hpbGUgKDwkZmg+KSB7CisJcy9ccypcbiQvLzsKKwluZXh0IGlmIChtL14kLyBhbmQgJHBhcmFib3JkZXIpOworCW5leHQgaWYgKG0vXiMvKTsKKwkkcGFyYWJvcmRlciA9IDA7CisJaWYgKG0vXihcUys/KVxzKjpccyooLiopJC8pIHsKKwkgICAgaWYgKGV4aXN0cyAkc2VsZi0+eyQxfSkgeworCQl1bmxlc3MgKCQkc2VsZi0+eydhbGxvd19kdXBsaWNhdGUnfSkgeworCQkgICAgc3ludGF4ZXJyKCRkZXNjLCBzcHJpbnRmKF9nKCJkdXBsaWNhdGUgZmllbGQgJXMgZm91bmQiKSwgJDEpKTsKKwkJfQorCSAgICB9CisJICAgICRzZWxmLT57JDF9ID0gJDI7CisJICAgICRjZiA9ICQxOworCX0gZWxzaWYgKG0vXlxzKFxzKlxTLiopJC8pIHsKKwkgICAgbXkgJGxpbmUgPSAkMTsKKwkgICAgdW5sZXNzIChkZWZpbmVkKCRjZikpIHsKKyAgICAgICAgICAgICAgICBzeW50YXhlcnIoJGRlc2MsIF9nKCJjb250aW51ZWQgdmFsdWUgbGluZSBub3QgaW4gZmllbGQiKSk7CisgICAgICAgICAgICB9CisJICAgIGlmICgkbGluZSA9fiAvXlwuKyQvKSB7CisJCSRsaW5lID0gc3Vic3RyICRsaW5lLCAxOworCSAgICB9CisJICAgICRzZWxmLT57JGNmfSAuPSAiXG4kbGluZSI7CisJfSBlbHNpZiAobS9eLS0tLS1CRUdJTiBQR1AgU0lHTkVEIE1FU1NBR0UvKSB7CisJICAgICRleHBlY3RfcGdwX3NpZyA9IDE7CisJICAgIGlmICgkJHNlbGYtPnsnYWxsb3dfcGdwJ30pIHsKKwkJIyBTa2lwIFBHUCBoZWFkZXJzCisJCXdoaWxlICg8JGZoPikgeworCQkgICAgbGFzdCBpZiBtL14kLzsKKwkJfQorCSAgICB9IGVsc2UgeworCQlzeW50YXhlcnIoJGRlc2MsIF9nKCJQR1Agc2lnbmF0dXJlIG5vdCBhbGxvd2VkIGhlcmUiKSk7CisJICAgIH0KKwl9IGVsc2lmIChtL14kLyB8fCAoJGV4cGVjdF9wZ3Bfc2lnICYmIG0vXi0tLS0tQkVHSU4gUEdQIFNJR05BVFVSRS8pKSB7CisJICAgIGlmICgkZXhwZWN0X3BncF9zaWcpIHsKKwkJIyBTa2lwIGVtcHR5IGxpbmVzCisJCSRfID0gPCRmaD4gd2hpbGUgZGVmaW5lZCgkXykgJiYgJF8gPX4gL15ccyokLzsKKwkJbGVuZ3RoKCRfKSB8fAorICAgICAgICAgICAgICAgICAgICBzeW50YXhlcnIoJGRlc2MsIF9nKCJleHBlY3RlZCBQR1Agc2lnbmF0dXJlLCBmb3VuZCBFT0YgIiAuCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImFmdGVyIGJsYW5rIGxpbmUiKSk7CisJCXMvXG4kLy87CisJCXVubGVzcyAobS9eLS0tLS1CRUdJTiBQR1AgU0lHTkFUVVJFLykgeworCQkgICAgc3ludGF4ZXJyKCRkZXNjLCBzcHJpbnRmKF9nKCJleHBlY3RlZCBQR1Agc2lnbmF0dXJlLCAiIC4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJmb3VuZCBzb21ldGhpbmcgZWxzZSBcYCVzJyIpLCAkXykpOworICAgICAgICAgICAgICAgIH0KKwkJIyBTa2lwIFBHUCBzaWduYXR1cmUKKwkJd2hpbGUgKDwkZmg+KSB7CisJCSAgICBsYXN0IGlmIG0vXi0tLS0tRU5EIFBHUCBTSUdOQVRVUkUvOworCQl9CisJCXVubGVzcyAoZGVmaW5lZCgkXykpIHsKKyAgICAgICAgICAgICAgICAgICAgc3ludGF4ZXJyKCRkZXNjLCBfZygidW5maW5pc2hlZCBQR1Agc2lnbmF0dXJlIikpOworICAgICAgICAgICAgICAgIH0KKwkgICAgfQorCSAgICBsYXN0OyAjIEZpbmlzaGVkIHBhcnNpbmcgb25lIGJsb2NrCisJfSBlbHNlIHsKKwkgICAgc3ludGF4ZXJyKCRkZXNjLAorICAgICAgICAgICAgICAgICAgICAgIF9nKCJsaW5lIHdpdGggdW5rbm93biBmb3JtYXQgKG5vdCBmaWVsZC1jb2xvbi12YWx1ZSkiKSk7CisJfQorICAgIH0KKyAgICByZXR1cm4gZGVmaW5lZCgkY2YpOworfQorCis9aXRlbSAkYy0+ZmluZF9jdXN0b21fZmllbGQoJG5hbWUpCisKK1NjYW4gdGhlIGZpZWxkcyBhbmQgbG9vayBmb3IgYSB1c2VyIHNwZWNpZmljIGZpZWxkIHdob3NlIG5hbWUgbWF0Y2hlcyB0aGUKK2ZvbGxvd2luZyByZWdleDogL1hbU0JDXSotJG5hbWUvaS4gUmV0dXJuIHRoZSBuYW1lIG9mIHRoZSBmaWVsZCBmb3VuZCBvcgordW5kZWYgaWYgbm90aGluZyBoYXMgYmVlbiBmb3VuZC4KKworPWN1dAorCitzdWIgZmluZF9jdXN0b21fZmllbGQgeworICAgIG15ICgkc2VsZiwgJG5hbWUpID0gQF87CisgICAgZm9yZWFjaCBteSAka2V5IChrZXlzICUkc2VsZikgeworICAgICAgICByZXR1cm4gJGtleSBpZiAka2V5ID1+IC9eWFtTQkNdKi1cUSRuYW1lXEUkL2k7CisgICAgfQorICAgIHJldHVybiB1bmRlZjsKK30KKworPWl0ZW0gJGMtPmdldF9jdXN0b21fZmllbGQoJG5hbWUpCisKK0lkZW50aWZ5IGEgdXNlciBmaWVsZCBhbmQgcmV0cmlldmUgaXRzIHZhbHVlLgorCis9Y3V0CisKK3N1YiBnZXRfY3VzdG9tX2ZpZWxkIHsKKyAgICBteSAoJHNlbGYsICRuYW1lKSA9IEBfOworICAgIG15ICRrZXkgPSAkc2VsZi0+ZmluZF9jdXN0b21fZmllbGQoJG5hbWUpOworICAgIHJldHVybiAkc2VsZi0+eyRrZXl9IGlmIGRlZmluZWQgJGtleTsKKyAgICByZXR1cm4gdW5kZWY7Cit9CisKKz1pdGVtICRjLT5zYXZlKCRmaWxlbmFtZSkKKworV3JpdGUgdGhlIHN0cmluZyByZXByZXNlbnRhdGlvbiBvZiB0aGUgY29udHJvbCBpbmZvcm1hdGlvbiB0byBhCitmaWxlLgorCis9aXRlbSBteSAkc3RyID0gJGMtPm91dHB1dCgpCisKKz1pdGVtICIkYyIKKworR2V0IGEgc3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBjb250cm9sIGluZm9ybWF0aW9uLiBUaGUgZmllbGRzCithcmUgc29ydGVkIGluIHRoZSBvcmRlciBpbiB3aGljaCB0aGV5IGhhdmUgYmVlbiByZWFkIG9yIHNldCBleGNlcHQKK2lmIHRoZSBvcmRlciBoYXMgYmVlbiBvdmVycmlkZGVuIHdpdGggc2V0X291dHB1dF9vcmRlcigpLgorCis9aXRlbSAkYy0+b3V0cHV0KCRmaCkKKworUHJpbnQgdGhlIHN0cmluZyByZXByZXNlbnRhdGlvbiBvZiB0aGUgY29udHJvbCBpbmZvcm1hdGlvbiB0byBhCitmaWxlaGFuZGxlLgorCis9Y3V0CisKK3N1YiBvdXRwdXQgeworICAgIG15ICgkc2VsZiwgJGZoKSA9IEBfOworICAgIG15ICRzdHIgPSAiIjsKKyAgICBteSBAa2V5czsKKyAgICBpZiAoQHskJHNlbGYtPnsnb3V0X29yZGVyJ319KSB7CisgICAgICAgIG15ICRpID0gMTsKKyAgICAgICAgbXkgJGltcCA9IHt9OworICAgICAgICAkaW1wLT57JF99ID0gJGkrKyBmb3JlYWNoIEB7JCRzZWxmLT57J291dF9vcmRlcid9fTsKKyAgICAgICAgQGtleXMgPSBzb3J0IHsKKyAgICAgICAgICAgIGlmIChkZWZpbmVkICRpbXAtPnskYX0gJiYgZGVmaW5lZCAkaW1wLT57JGJ9KSB7CisgICAgICAgICAgICAgICAgJGltcC0+eyRhfSA8PT4gJGltcC0+eyRifTsKKyAgICAgICAgICAgIH0gZWxzaWYgKGRlZmluZWQoJGltcC0+eyRhfSkpIHsKKyAgICAgICAgICAgICAgICAtMTsKKyAgICAgICAgICAgIH0gZWxzaWYgKGRlZmluZWQoJGltcC0+eyRifSkpIHsKKyAgICAgICAgICAgICAgICAxOworICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICAkYSBjbXAgJGI7CisgICAgICAgICAgICB9CisgICAgICAgIH0ga2V5cyAlJHNlbGY7CisgICAgfSBlbHNlIHsKKyAgICAgICAgQGtleXMgPSBAeyQkc2VsZi0+eydpbl9vcmRlcid9fTsKKyAgICB9CisKKyAgICBmb3JlYWNoIG15ICRrZXkgKEBrZXlzKSB7CisJaWYgKGV4aXN0cyAkc2VsZi0+eyRrZXl9KSB7CisJICAgIG15ICR2YWx1ZSA9ICRzZWxmLT57JGtleX07CisgICAgICAgICAgICAjIFNraXAgd2hpdGVzcGFjZS1vbmx5IGZpZWxkcworICAgICAgICAgICAgbmV4dCBpZiAkJHNlbGYtPnsnZHJvcF9lbXB0eSd9IGFuZCAkdmFsdWUgIX4gbS9cUy87CisJICAgICMgRXNjYXBlIGRhdGEgdG8gZm9sbG93IGNvbnRyb2wgZmlsZSBzeW50YXgKKwkgICAgbXkgQGxpbmVzID0gc3BsaXQoL1xuLywgJHZhbHVlKTsKKwkgICAgJHZhbHVlID0gKHNjYWxhciBAbGluZXMpID8gc2hpZnQgQGxpbmVzIDogIiI7CisJICAgIGZvcmVhY2ggKEBsaW5lcykgeworCQlzL1xzKyQvLzsKKwkJaWYgKC9eJC8gb3IgL15cLiskLykgeworCQkgICAgJHZhbHVlIC49ICJcbiAuJF8iOworCQl9IGVsc2UgeworCQkgICAgJHZhbHVlIC49ICJcbiAkXyI7CisJCX0KKwkgICAgfQorCSAgICAjIFByaW50IGl0IG91dAorICAgICAgICAgICAgaWYgKCRmaCkgeworCSAgICAgICAgcHJpbnQgJGZoICIka2V5OiAkdmFsdWVcbiIgfHwKKyAgICAgICAgICAgICAgICAgICAgc3lzZXJyKF9nKCJ3cml0ZSBlcnJvciBvbiBjb250cm9sIGRhdGEiKSk7CisgICAgICAgICAgICB9CisJICAgICRzdHIgLj0gIiRrZXk6ICR2YWx1ZVxuIiBpZiBkZWZpbmVkIHdhbnRhcnJheTsKKwl9CisgICAgfQorICAgIHJldHVybiAkc3RyOworfQorCis9aXRlbSAkYy0+c2V0X291dHB1dF9vcmRlcihAZmllbGRzKQorCitEZWZpbmUgdGhlIG9yZGVyIGluIHdoaWNoIGZpZWxkcyB3aWxsIGJlIGRpc3BsYXllZCBpbiB0aGUgb3V0cHV0KCkgbWV0aG9kLgorCis9Y3V0CisKK3N1YiBzZXRfb3V0cHV0X29yZGVyIHsKKyAgICBteSAoJHNlbGYsIEBmaWVsZHMpID0gQF87CisKKyAgICAkJHNlbGYtPnsnb3V0X29yZGVyJ30gPSBbQGZpZWxkc107Cit9CisKKz1pdGVtICRjLT5hcHBseV9zdWJzdHZhcnMoJHN1YnN0dmFycykKKworVXBkYXRlIGFsbCBmaWVsZHMgYnkgcmVwbGFjaW5nIHRoZSB2YXJpYWJsZXMgcmVmZXJlbmNlcyB3aXRoCit0aGUgY29ycmVzcG9uZGluZyB2YWx1ZSBzdG9yZWQgaW4gdGhlIERwa2c6OlN1YnN0dmFycyBvYmplY3QuCisKKz1jdXQKKworc3ViIGFwcGx5X3N1YnN0dmFycyB7CisgICAgbXkgKCRzZWxmLCAkc3Vic3R2YXJzLCAlb3B0cykgPSBAXzsKKworICAgICMgQWRkIHN1YnN0dmFycyB0byByZWZlciB0byBvdGhlciBmaWVsZHMKKyAgICBmb3JlYWNoIG15ICRmIChrZXlzICUkc2VsZikgeworICAgICAgICAkc3Vic3R2YXJzLT5zZXQoIkY6JGYiLCAkc2VsZi0+eyRmfSk7CisgICAgICAgICRzdWJzdHZhcnMtPm5vX3dhcm4oIkY6JGYiKTsKKyAgICB9CisKKyAgICBmb3JlYWNoIG15ICRmIChrZXlzICUkc2VsZikgeworICAgICAgICBteSAkdiA9ICRzdWJzdHZhcnMtPnN1YnN0dmFycygkc2VsZi0+eyRmfSwgJW9wdHMpOworCWlmICgkdiBuZSAkc2VsZi0+eyRmfSkgeworCSAgICAjIElmIHdlIHJlcGxhY2VkIHN0dWZmLCBlbnN1cmUgd2UncmUgbm90IGJyZWFraW5nCisJICAgICMgYSBkZXBlbmRlbmN5IGZpZWxkIGJ5IGludHJvZHVjaW5nIGVtcHR5IGxpbmVzLCBvciBtdWx0aXBsZQorCSAgICAjIGNvbW1hcworCSAgICAkdiA9fiBzL1xuWyBcdF0qKFxufCQpLyQxLzsgIyBEcm9wIGVtcHR5L3doaXRlc3BhY2Utb25seSBsaW5lcworCSAgICAjIFRPRE86IGRvIHRoaXMgb25seSBmb3IgZGVwZW5kZW5jeSBmaWVsZHMKKwkgICAgJHYgPX4gcy8sW1xzLF0qLC8sL2c7CisJICAgICR2ID1+IHMvXlxzKixccyovLzsKKwkgICAgJHYgPX4gcy9ccyosXHMqJC8vOworCX0KKyAgICAgICAgJHYgPX4gcy9cJFx7XH0vXCQvZzsgIyBYWFg6IHdoYXQgZm9yPworCisgICAgICAgICRzZWxmLT57JGZ9ID0gJHY7CisgICAgfQorfQorCitwYWNrYWdlIERwa2c6OkNvbnRyb2w6Okhhc2g6OlRpZTsKKworIyBUaGlzIG9iamVjdCBpcyB1c2VkIHRvIHRpZSBhIGhhc2guIEl0IGltcGxlbWVudHMgaGFzaC1saWtlIGZ1bmN0aW9ucyBieQorIyBub3JtYWxpemluZyB0aGUgbmFtZSBvZiBmaWVsZHMgcmVjZWl2ZWQgaW4ga2V5cyAodXNpbmcKKyMgRHBrZzo6Q29udHJvbDo6RmllbGRzOjpmaWVsZF9jYXBpdGFsaXplKS4gSXQgYWxzbyBzdG9yZXMgdGhlIG9yZGVyIGluCisjIHdoaWNoIGZpZWxkcyBoYXZlIGJlZW4gYWRkZWQgaW4gb3JkZXIgdG8gYmUgYWJsZSB0byBkdW1wIHRoZW0gaW4gdGhlCisjIHNhbWUgb3JkZXIuIEJ1dCB0aGUgb3JkZXIgaW5mb3JtYXRpb24gaXMgc3RvcmVkIGluIGEgcGFyZW50IG9iamVjdCBvZgorIyB0eXBlIERwa2c6OkNvbnRyb2wuCisKK3VzZSBEcGtnOjpFcnJvckhhbmRsaW5nOwordXNlIERwa2c6OkNoZWNrc3VtczsKKwordXNlIFRpZTo6SGFzaDsKK3VzZSBiYXNlIHF3KFRpZTo6RXh0cmFIYXNoKTsKKworc3ViIGZpZWxkX2NhcGl0YWxpemUoJCkgeworICAgIG15ICRmaWVsZCA9IGxjKHNoaWZ0KTsKKyAgICAjIFNvbWUgc3BlY2lhbCBjYXNlcyBkdWUgdG8gaGlzdG9yeQorICAgIHJldHVybiAiTUQ1c3VtIiBpZiAkZmllbGQgZXEgIm1kNXN1bSI7CisgICAgcmV0dXJuIHVjKCRmaWVsZCkgaWYgY2hlY2tzdW1zX2lzX3N1cHBvcnRlZCgkZmllbGQpOworICAgICMgR2VuZXJpYyBjYXNlCisgICAgcmV0dXJuIGpvaW4gJy0nLCBtYXAgeyB1Y2ZpcnN0IH0gc3BsaXQgLy0vLCAkZmllbGQ7Cit9CisKKyMgJHNlbGYtPlswXSBpcyB0aGUgcmVhbCBoYXNoCisjICRzZWxmLT5bMV0gaXMgYW4gYXJyYXkgY29udGFpbmluZyB0aGUgb3JkZXJlZCBsaXN0IG9mIGtleXMKKyMgJHNlbGYtPlsyXSBpcyBhbiBoYXNoIGRlc2NyaWJpbmcgdGhlIHJlbGF0aXZlIGltcG9ydGFuY2Ugb2YgZWFjaCBmaWVsZAorIyAodXNlZCB0byBzb3J0IHRoZSBvdXRwdXQpLgorCisjIERwa2c6OkNvbnRyb2w6Okhhc2gtPm5ldygkcGFyZW50KQorIworIyBSZXR1cm4gYSByZWZlcmVuY2UgdG8gYSB0aWVkIGhhc2ggaW1wbGVtZW50aW5nIHN0b3JhZ2Ugb2Ygc2ltcGxlCisjICJmaWVsZDogdmFsdWUiIG1hcHBpbmcgYXMgdXNlZCBpbiBtYW55IERlYmlhbi1zcGVjaWZpYyBmaWxlcy4KKworc3ViIG5ldyB7CisgICAgbXkgJGNsYXNzID0gc2hpZnQ7CisgICAgbXkgJGhhc2ggPSB7fTsKKyAgICB0aWUgJXskaGFzaH0sICRjbGFzcywgQF87CisgICAgcmV0dXJuICRoYXNoOworfQorCitzdWIgVElFSEFTSCAgeworICAgIG15ICgkY2xhc3MsICRwYXJlbnQpID0gQF87CisgICAgZGllICJQYXJlbnQgb2JqZWN0IG11c3QgYmUgRHBrZzo6Q29udHJvbDo6SGFzaCIKKyAgICAgICAgaWYgbm90ICRwYXJlbnQtPmlzYSgiRHBrZzo6Q29udHJvbDo6SGFzaCIpOworICAgIHJldHVybiBibGVzcyBbIHt9LCAkcGFyZW50IF0sICRjbGFzczsKK30KKworc3ViIEZFVENIIHsKKyAgICBteSAoJHNlbGYsICRrZXkpID0gQF87CisgICAgJGtleSA9IGxjKCRrZXkpOworICAgIHJldHVybiAkc2VsZi0+WzBdLT57JGtleX0gaWYgZXhpc3RzICRzZWxmLT5bMF0tPnska2V5fTsKKyAgICByZXR1cm4gdW5kZWY7Cit9CisKK3N1YiBTVE9SRSB7CisgICAgbXkgKCRzZWxmLCAka2V5LCAkdmFsdWUpID0gQF87CisgICAgbXkgJHBhcmVudCA9ICRzZWxmLT5bMV07CisgICAgJGtleSA9IGxjKCRrZXkpOworICAgIGlmIChub3QgZXhpc3RzICRzZWxmLT5bMF0tPnska2V5fSkgeworCXB1c2ggQHskJHBhcmVudC0+eydpbl9vcmRlcid9fSwgZmllbGRfY2FwaXRhbGl6ZSgka2V5KTsKKyAgICB9CisgICAgJHNlbGYtPlswXS0+eyRrZXl9ID0gJHZhbHVlOworfQorCitzdWIgRVhJU1RTIHsKKyAgICBteSAoJHNlbGYsICRrZXkpID0gQF87CisgICAgJGtleSA9IGxjKCRrZXkpOworICAgIHJldHVybiBleGlzdHMgJHNlbGYtPlswXS0+eyRrZXl9OworfQorCitzdWIgREVMRVRFIHsKKyAgICBteSAoJHNlbGYsICRrZXkpID0gQF87CisgICAgbXkgJHBhcmVudCA9ICRzZWxmLT5bMV07CisgICAgbXkgJGluX29yZGVyID0gJCRwYXJlbnQtPnsnaW5fb3JkZXInfTsKKyAgICAka2V5ID0gbGMoJGtleSk7CisgICAgaWYgKGV4aXN0cyAkc2VsZi0+WzBdLT57JGtleX0pIHsKKwlkZWxldGUgJHNlbGYtPlswXS0+eyRrZXl9OworCUAkaW5fb3JkZXIgPSBncmVwIHsgbGMoJF8pIG5lICRrZXkgfSBAJGluX29yZGVyOworCXJldHVybiAxOworICAgIH0gZWxzZSB7CisJcmV0dXJuIDA7CisgICAgfQorfQorCitzdWIgRklSU1RLRVkgeworICAgIG15ICRzZWxmID0gc2hpZnQ7CisgICAgbXkgJHBhcmVudCA9ICRzZWxmLT5bMV07CisgICAgZm9yZWFjaCAoQHskJHBhcmVudC0+eydpbl9vcmRlcid9fSkgeworCXJldHVybiAkXyBpZiBleGlzdHMgJHNlbGYtPlswXS0+e2xjKCRfKX07CisgICAgfQorfQorCitzdWIgTkVYVEtFWSB7CisgICAgbXkgKCRzZWxmLCAkbGFzdCkgPSBAXzsKKyAgICBteSAkcGFyZW50ID0gJHNlbGYtPlsxXTsKKyAgICBteSAkZm91bmQgPSAwOworICAgIGZvcmVhY2ggKEB7JCRwYXJlbnQtPnsnaW5fb3JkZXInfX0pIHsKKwlpZiAoJGZvdW5kKSB7CisJICAgIHJldHVybiAkXyBpZiBleGlzdHMgJHNlbGYtPlswXS0+e2xjKCRfKX07CisJfSBlbHNlIHsKKwkgICAgJGZvdW5kID0gMSBpZiAkXyBlcSAkbGFzdDsKKwl9CisgICAgfQorICAgIHJldHVybiB1bmRlZjsKK30KKworMTsKKworPWJhY2sKKworPWhlYWQxIEFVVEhPUgorCitSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+LgorCis9Y3V0CisKKzE7CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvRHBrZy9Db250cm9sL0luZm8ucG0gYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvRHBrZy9Db250cm9sL0luZm8ucG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDdlYzE4NwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9EcGtnL0NvbnRyb2wvSW5mby5wbQpAQCAtMCwwICsxLDIwNyBAQAorIyBDb3B5cmlnaHQgwqkgMjAwNy0yMDEwIFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KKyMKKyMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyMKKyMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisjIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisjIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyMKKyMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisKK3BhY2thZ2UgRHBrZzo6Q29udHJvbDo6SW5mbzsKKwordXNlIHN0cmljdDsKK3VzZSB3YXJuaW5nczsKKworb3VyICRWRVJTSU9OID0gIjEuMDAiOworCit1c2UgRHBrZzo6Q29udHJvbDsKK3VzZSBEcGtnOjpFcnJvckhhbmRsaW5nOwordXNlIERwa2c6OkdldHRleHQ7CisKK3VzZSBiYXNlIHF3KERwa2c6OkludGVyZmFjZTo6U3RvcmFibGUpOworCit1c2Ugb3ZlcmxvYWQKKyAgICAnQHt9JyA9PiBzdWIgeyByZXR1cm4gWyAkX1swXS0+e3NvdXJjZX0sIEB7JF9bMF0tPntwYWNrYWdlc319IF0gfTsKKworPWVuY29kaW5nIHV0ZjgKKworPWhlYWQxIE5BTUUKKworRHBrZzo6Q29udHJvbDo6SW5mbyAtIHBhcnNlIGZpbGVzIGxpa2UgZGViaWFuL2NvbnRyb2wKKworPWhlYWQxIERFU0NSSVBUSU9OCisKK0l0IHByb3ZpZGVzIGFuIG9iamVjdCB0byBhY2Nlc3MgZGF0YSBvZiBmaWxlcyB0aGF0IGZvbGxvdyB0aGUgc2FtZQorc3ludGF4IHRoYW4gZGViaWFuL2NvbnRyb2wuCisKKz1oZWFkMSBGVU5DVElPTlMKKworPW92ZXIgNAorCis9aXRlbSAkYyA9IERwa2c6OkNvbnRyb2w6OkluZm8tPm5ldygkZmlsZSkKKworQ3JlYXRlIGEgbmV3IERwa2c6OkNvbnRyb2w6OkluZm8gb2JqZWN0IGZvciAkZmlsZS4gSWYgJGZpbGUgaXMgb21pdHRlZCwgaXQKK2xvYWRzIGRlYmlhbi9jb250cm9sLiBJZiBmaWxlIGlzICItIiwgaXQgcGFyc2VzIHRoZSBzdGFuZGFyZCBpbnB1dC4KKworPWN1dAorCitzdWIgbmV3IHsKKyAgICBteSAoJHRoaXMsICRhcmcpID0gQF87CisgICAgbXkgJGNsYXNzID0gcmVmKCR0aGlzKSB8fCAkdGhpczsKKyAgICBteSAkc2VsZiA9IHsKKwknc291cmNlJyA9PiB1bmRlZiwKKwkncGFja2FnZXMnID0+IFtdLAorICAgIH07CisgICAgYmxlc3MgJHNlbGYsICRjbGFzczsKKyAgICBpZiAoJGFyZykgeworCSRzZWxmLT5sb2FkKCRhcmcpOworICAgIH0gZWxzZSB7CisJJHNlbGYtPmxvYWQoImRlYmlhbi9jb250cm9sIik7CisgICAgfQorICAgIHJldHVybiAkc2VsZjsKK30KKworPWl0ZW0gJGMtPnJlc2V0KCkKKworUmVzZXRzIHdoYXQgZ290IHJlYWQuCisKKz1jdXQKKworc3ViIHJlc2V0IHsKKyAgICBteSAkc2VsZiA9IHNoaWZ0OworICAgICRzZWxmLT57c291cmNlfSA9IHVuZGVmOworICAgICRzZWxmLT57cGFja2FnZXN9ID0gW107Cit9CisKKz1pdGVtICRjLT5sb2FkKCRmaWxlKQorCitMb2FkIHRoZSBjb250ZW50IG9mICRmaWxlLiBFeGl0cyBpbiBjYXNlIG9mIGVycm9ycy4gSWYgZmlsZSBpcyAiLSIsIGl0Citsb2FkcyBmcm9tIHRoZSBzdGFuZGFyZCBpbnB1dC4KKworPWl0ZW0gJGMtPnBhcnNlKCRmaCwgJGRlc2NyaXB0aW9uKQorCitQYXJzZSBhIGNvbnRyb2wgZmlsZSBmcm9tIHRoZSBnaXZlbiBmaWxlaGFuZGxlLiBFeGl0cyBpbiBjYXNlIG9mIGVycm9ycy4KKyRkZXNjcmlwdGlvbiBpcyB1c2VkIHRvIGRlc2NyaWJlIHRoZSBmaWxlaGFuZGxlLCBpZGVhbGx5IGl0J3MgYSBmaWxlbmFtZQorb3IgYSBkZXNjcmlwdGlvbiBvZiB3aGVyZSB0aGUgZGF0YSBjb21lcyBmcm9tLiBJdCdzIHVzZWQgaW4gZXJyb3IKK21lc3NhZ2VzLgorCis9Y3V0CisKK3N1YiBwYXJzZSB7CisgICAgbXkgKCRzZWxmLCAkZmgsICRkZXNjKSA9IEBfOworICAgICRzZWxmLT5yZXNldCgpOworICAgIG15ICRjZGF0YSA9IERwa2c6OkNvbnRyb2wtPm5ldyh0eXBlID0+IENUUkxfSU5GT19TUkMpOworICAgIHJldHVybiBpZiBub3QgJGNkYXRhLT5wYXJzZSgkZmgsICRkZXNjKTsKKyAgICAkc2VsZi0+e3NvdXJjZX0gPSAkY2RhdGE7CisgICAgdW5sZXNzIChleGlzdHMgJGNkYXRhLT57U291cmNlfSkgeworCXN5bnRheGVycigkZGVzYywgX2coImZpcnN0IGJsb2NrIGxhY2tzIGEgc291cmNlIGZpZWxkIikpOworICAgIH0KKyAgICB3aGlsZSAoMSkgeworCSRjZGF0YSA9IERwa2c6OkNvbnRyb2wtPm5ldyh0eXBlID0+IENUUkxfSU5GT19QS0cpOworICAgICAgICBsYXN0IGlmIG5vdCAkY2RhdGEtPnBhcnNlKCRmaCwgJGRlc2MpOworCXB1c2ggQHskc2VsZi0+e3BhY2thZ2VzfX0sICRjZGF0YTsKKwl1bmxlc3MgKGV4aXN0cyAkY2RhdGEtPntQYWNrYWdlfSkgeworCSAgICBzeW50YXhlcnIoJGRlc2MsIF9nKCJibG9jayBsYWNrcyB0aGUgJyVzJyBmaWVsZCIpLCAiUGFja2FnZSIpOworCX0KKwl1bmxlc3MgKGV4aXN0cyAkY2RhdGEtPntBcmNoaXRlY3R1cmV9KSB7CisJICAgIHN5bnRheGVycigkZGVzYywgX2coImJsb2NrIGxhY2tzIHRoZSAnJXMnIGZpZWxkIiksICJBcmNoaXRlY3R1cmUiKTsKKwl9CisKKyAgICB9Cit9CisKKz1pdGVtICRjLT5bMF0KKworPWl0ZW0gJGMtPmdldF9zb3VyY2UoKQorCitSZXR1cm5zIGEgRHBrZzo6Q29udHJvbCBvYmplY3QgY29udGFpbmluZyB0aGUgZmllbGRzIGNvbmNlcm5pbmcgdGhlCitzb3VyY2UgcGFja2FnZS4KKworPWN1dAorCitzdWIgZ2V0X3NvdXJjZSB7CisgICAgbXkgJHNlbGYgPSBzaGlmdDsKKyAgICByZXR1cm4gJHNlbGYtPntzb3VyY2V9OworfQorCis9aXRlbSAkYy0+Z2V0X3BrZ19ieV9pZHgoJGlkeCkKKworUmV0dXJucyBhIERwa2c6OkNvbnRyb2wgb2JqZWN0IGNvbnRhaW5pbmcgdGhlIGZpZWxkcyBjb25jZXJuaW5nIHRoZSBiaW5hcnkKK3BhY2thZ2UgbnVtYmVyZWQgJGlkeCAoc3RhcnRpbmcgYXQgMSkuCisKKz1jdXQKKworc3ViIGdldF9wa2dfYnlfaWR4IHsKKyAgICBteSAoJHNlbGYsICRpZHgpID0gQF87CisgICAgcmV0dXJuICRzZWxmLT57cGFja2FnZXN9Wy0tJGlkeF07Cit9CisKKz1pdGVtICRjLT5nZXRfcGtnX2J5X25hbWUoJG5hbWUpCisKK1JldHVybnMgYSBEcGtnOjpDb250cm9sIG9iamVjdCBjb250YWluaW5nIHRoZSBmaWVsZHMgY29uY2VybmluZyB0aGUgYmluYXJ5CitwYWNrYWdlIG5hbWVkICRuYW1lLgorCis9Y3V0CisKK3N1YiBnZXRfcGtnX2J5X25hbWUgeworICAgIG15ICgkc2VsZiwgJG5hbWUpID0gQF87CisgICAgZm9yZWFjaCBteSAkcGtnIChAeyRzZWxmLT57cGFja2FnZXN9fSkgeworCXJldHVybiAkcGtnIGlmICgkcGtnLT57UGFja2FnZX0gZXEgJG5hbWUpOworICAgIH0KKyAgICByZXR1cm4gdW5kZWY7Cit9CisKKworPWl0ZW0gJGMtPmdldF9wYWNrYWdlcygpCisKK1JldHVybnMgYSBsaXN0IGNvbnRhaW5pbmcgdGhlIERwa2c6OkNvbnRyb2wgb2JqZWN0cyBmb3IgYWxsIGJpbmFyeSBwYWNrYWdlcy4KKworPWN1dAorCitzdWIgZ2V0X3BhY2thZ2VzIHsKKyAgICBteSAkc2VsZiA9IHNoaWZ0OworICAgIHJldHVybiBAeyRzZWxmLT57cGFja2FnZXN9fTsKK30KKworPWl0ZW0gJGMtPm91dHB1dCgkZmlsZWhhbmRsZSkKKworRHVtcCB0aGUgY29udGVudCBpbnRvIGEgZmlsZWhhbmRsZS4KKworPWN1dAorCitzdWIgb3V0cHV0IHsKKyAgICBteSAoJHNlbGYsICRmaCkgPSBAXzsKKyAgICBteSAkc3RyOworICAgICRzdHIgLj0gJHNlbGYtPntzb3VyY2V9LT5vdXRwdXQoJGZoKTsKKyAgICBmb3JlYWNoIG15ICRwa2cgKEB7JHNlbGYtPntwYWNrYWdlc319KSB7CisJcHJpbnQgJGZoICJcbiI7CisJJHN0ciAuPSAiXG4iIC4gJHBrZy0+b3V0cHV0KCRmaCk7CisgICAgfQorICAgIHJldHVybiAkc3RyOworfQorCis9aXRlbSAiJGMiCisKK1JldHVybiBhIHN0cmluZyByZXByZXNlbnRhdGlvbiBvZiB0aGUgY29udGVudC4KKworPWl0ZW0gQHskY30KKworUmV0dXJuIGEgbGlzdCBvZiBEcGtnOjpDb250cm9sIG9iamVjdHMsIHRoZSBmaXJzdCBvbmUgaXMgY29ycmVzcG9uZGluZyB0bworc291cmNlIGluZm9ybWF0aW9uIGFuZCB0aGUgZm9sbG93aW5nIG9uZXMgYXJlIHRoZSBiaW5hcnkgcGFja2FnZXMKK2luZm9ybWF0aW9uLgorCis9YmFjaworCis9aGVhZDEgQVVUSE9SCisKK1JhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4uCisKKz1jdXQKKworMTsKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9EcGtnL0NvbnRyb2wvVHlwZXMucG0gYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvRHBrZy9Db250cm9sL1R5cGVzLnBtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmExYTY1OTAKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvRHBrZy9Db250cm9sL1R5cGVzLnBtCkBAIC0wLDAgKzEsNTcgQEAKKyMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyMKKyMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisjIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisjIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyMKKyMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisKK3BhY2thZ2UgRHBrZzo6Q29udHJvbDo6VHlwZXM7CisKK3VzZSBiYXNlIHF3KEV4cG9ydGVyKTsKK291ciBARVhQT1JUID0gcXcoQ1RSTF9VTktOT1dOIENUUkxfSU5GT19TUkMgQ1RSTF9JTkZPX1BLRyBDVFJMX0lOREVYX1NSQworICAgICAgICAgICAgICAgICBDVFJMX0lOREVYX1BLRyBDVFJMX1BLR19TUkMgQ1RSTF9QS0dfREVCIENUUkxfRklMRV9DSEFOR0VTCisgICAgICAgICAgICAgICAgIENUUkxfRklMRV9WRU5ET1IgQ1RSTF9GSUxFX1NUQVRVUyBDVFJMX0NIQU5HRUxPRyk7CisKKz1lbmNvZGluZyB1dGY4CisKKz1oZWFkMSBOQU1FCisKK0Rwa2c6OkNvbnRyb2w6OlR5cGVzIC0gZXhwb3J0IENUUkxfKiBjb25zdGFudHMKKworPWhlYWQxIERFU0NSSVBUSU9OCisKK1lvdSBzaG91bGQgbm90IHVzZSB0aGlzIG1vZHVsZSBkaXJlY3RseS4gSW5zdGVhZCB5b3UgbW9yZSBsaWtlbHkKK3dhbnQgdG8gdXNlIERwa2c6OkNvbnRyb2wgd2hpY2ggYWxzbyByZS1leHBvcnRzIHRoZSBzYW1lIGNvbnN0YW50cy4KKworVGhpcyBtb2R1bGUgaGFzIGJlZW4gaW50cm9kdWNlZCBzb2xlbHkgdG8gYXZvaWQgYSBkZXBlbmRlbmN5IGxvb3AKK2JldHdlZW4gRHBrZzo6Q29udHJvbCBhbmQgRHBrZzo6Q29udHJvbDo6RmllbGRzLgorCis9Y3V0CisKK3VzZSBjb25zdGFudCB7CisgICAgQ1RSTF9VTktOT1dOID0+IDAsCisgICAgQ1RSTF9JTkZPX1NSQyA9PiAxLCAgICAgICMgRmlyc3QgY29udHJvbCBibG9jayBpbiBkZWJpYW4vY29udHJvbAorICAgIENUUkxfSU5GT19QS0cgPT4gMiwgICAgICAjIFN1YnNlcXVlbnQgY29udHJvbCBibG9ja3MgaW4gZGViaWFuL2NvbnRyb2wKKyAgICBDVFJMX0lOREVYX1NSQyA9PiA0LCAgICAgIyBFbnRyeSBpbiByZXBvc2l0b3J5J3MgUGFja2FnZXMgZmlsZXMKKyAgICBDVFJMX0lOREVYX1BLRyA9PiA4LCAgICAgIyBFbnRyeSBpbiByZXBvc2l0b3J5J3MgU291cmNlcyBmaWxlcworICAgIENUUkxfUEtHX1NSQyA9PiAxNiwgICAgICAjIC5kc2MgZmlsZSBvZiBzb3VyY2UgcGFja2FnZQorICAgIENUUkxfUEtHX0RFQiA9PiAzMiwgICAgICAjIERFQklBTi9jb250cm9sIGluIGJpbmFyeSBwYWNrYWdlcworICAgIENUUkxfRklMRV9DSEFOR0VTID0+IDY0LCAjIC5jaGFuZ2VzIGZpbGUKKyAgICBDVFJMX0ZJTEVfVkVORE9SID0+IDEyOCwgIyBGaWxlIGluIC9ldGMvZHBrZy9vcmlnaW5zCisgICAgQ1RSTF9GSUxFX1NUQVRVUyA9PiAyNTYsICMgL3Zhci9saWIvZHBrZy9zdGF0dXMKKyAgICBDVFJMX0NIQU5HRUxPRyA9PiA1MTIsICAgIyBPdXRwdXQgb2YgZHBrZy1wYXJzZWNoYW5nZWxvZworfTsKKworPWhlYWQxIEFVVEhPUgorCitSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+LgorCis9Y3V0CisKKzE7CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvRHBrZy9EZXBzLnBtIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL0Rwa2cvRGVwcy5wbQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yZTM2N2M1Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL0Rwa2cvRGVwcy5wbQpAQCAtMCwwICsxLDEyMTkgQEAKKyMgQ29weXJpZ2h0IMKpIDIwMDctMjAwOSBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisjCisjIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgbWF5IHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisjIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisjIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisjIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisjCisjIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorIworIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKKyMgU2V2ZXJhbCBwYXJ0cyBhcmUgaW5zcGlyZWQgYnkgbGliL0RlcC5wbSBmcm9tIGxpbnRpYW4gKHNhbWUgbGljZW5zZSkKKyMKKyMgQ29weXJpZ2h0IMKpIDE5OTggUmljaGFyZCBCcmFha21hbgorIyBQb3J0aW9ucyBDb3B5cmlnaHQgwqkgMTk5OSBEYXJyZW4gQmVuaGFtCisjIFBvcnRpb25zIENvcHlyaWdodCDCqSAyMDAwIFNlYW4gJ1NoYWxlaCcgUGVycnkKKyMgUG9ydGlvbnMgQ29weXJpZ2h0IMKpIDIwMDQgRnJhbmsgTGljaHRlbmhlbGQKKyMgUG9ydGlvbnMgQ29weXJpZ2h0IMKpIDIwMDYgUnVzcyBBbGxiZXJ5CisKK3BhY2thZ2UgRHBrZzo6RGVwczsKKworPWVuY29kaW5nIHV0ZjgKKworPWhlYWQxIE5BTUUKKworRHBrZzo6RGVwcyAtIHBhcnNlIGFuZCBtYW5pcHVsYXRlIGRlcGVuZGVuY2llcyBvZiBEZWJpYW4gcGFja2FnZXMKKworPWhlYWQxIERFU0NSSVBUSU9OCisKK1RoZSBEcGtnOjpEZXBzIG1vZHVsZSBwcm92aWRlcyBvYmplY3RzIGltcGxlbWVudGluZyB2YXJpb3VzIHR5cGVzIG9mCitkZXBlbmRlbmNpZXMuCisKK1RoZSBtb3N0IGltcG9ydGFudCBmdW5jdGlvbiBpcyBkZXBzX3BhcnNlKCksIGl0IHR1cm5zIGEgZGVwZW5kZW5jeSBsaW5lIGluCithIHNldCBvZiBEcGtnOjpEZXBzOjp7U2ltcGxlLEFORCxPUixVbmlvbn0gb2JqZWN0cyBkZXBlbmRpbmcgb24gdGhlIGNhc2UuCisKKz1oZWFkMSBGVU5DVElPTlMKKworQWxsIHRoZSBkZXBzXyogZnVuY3Rpb25zIGFyZSBleHBvcnRlZCBieSBkZWZhdWx0LgorCis9b3ZlciA0CisKKz1jdXQKKwordXNlIHN0cmljdDsKK3VzZSB3YXJuaW5nczsKKworb3VyICRWRVJTSU9OID0gIjEuMDEiOworCit1c2UgRHBrZzo6VmVyc2lvbjsKK3VzZSBEcGtnOjpBcmNoIHF3KGdldF9ob3N0X2FyY2gpOwordXNlIERwa2c6OkVycm9ySGFuZGxpbmc7Cit1c2UgRHBrZzo6R2V0dGV4dDsKKwordXNlIGJhc2UgcXcoRXhwb3J0ZXIpOworb3VyIEBFWFBPUlQgPSBxdyhkZXBzX3BhcnNlIGRlcHNfZXZhbF9pbXBsaWNhdGlvbiBkZXBzX2NvbXBhcmUpOworCisjIFNvbWUgZmFjdG9yaXplZCBmdW5jdGlvbgorCisjIERwa2c6OkRlcHM6Ol9hcmNoX2lzX3N1cGVyc2V0KFxAcCwgXEBxKQorIworIyBSZXR1cm5zIHRydWUgaWYgdGhlIGFyY2ggbGlzdCBAcCBpcyBhIHN1cGVyc2V0IG9mIGFyY2ggbGlzdCBAcS4KKyMgVGhlIGFyZ3VtZW50cyBjYW4gYWxzbyBiZSB1bmRlZiBpbiBjYXNlIHRoZXJlJ3Mgbm8gZXhwbGljaXQgYXJjaGl0ZWN0dXJlCisjIHJlc3RyaWN0aW9uLgorCitzdWIgX2FyY2hfaXNfc3VwZXJzZXQgeworICAgIG15ICgkcCwgJHEpID0gQF87CisgICAgbXkgJHBfYXJjaF9uZWcgPSBkZWZpbmVkKCRwKSAmJiAkcC0+WzBdID1+IC9eIS87CisgICAgbXkgJHFfYXJjaF9uZWcgPSBkZWZpbmVkKCRxKSAmJiAkcS0+WzBdID1+IC9eIS87CisKKyAgICAjIElmICJwIiBoYXMgbm8gYXJjaGVzLCBpdCBpcyBhIHN1cGVyc2V0IG9mIHEgYW5kIHdlIHNob3VsZCBmYWxsIHRocm91Z2gKKyAgICAjIHRvIHRoZSB2ZXJzaW9uIGNoZWNrLgorICAgIGlmIChub3QgZGVmaW5lZCAkcCkgeworCXJldHVybiAxOworICAgIH0KKworICAgICMgSWYgcSBoYXMgbm8gYXJjaGVzLCBpdCBpcyBhIHN1cGVyc2V0IG9mIHAgYW5kIHRoZXJlIGFyZSBubyB1c2VmdWwKKyAgICAjIGltcGxpY2F0aW9ucy4KKyAgICBlbHNpZiAobm90IGRlZmluZWQgJHEpIHsKKwlyZXR1cm4gMDsKKyAgICB9CisKKyAgICAjIEJvdGggaGF2ZSBhcmNoZXMuICBJZiBuZWl0aGVyIGFyZSBuZWdhdGVkLCB3ZSBrbm93IG5vdGhpbmcgdXNlZnVsCisgICAgIyB1bmxlc3MgcSBpcyBhIHN1YnNldCBvZiBwLgorICAgIGVsc2lmIChub3QgJHBfYXJjaF9uZWcgYW5kIG5vdCAkcV9hcmNoX25lZykgeworCW15ICVwX2FyY2hlcyA9IG1hcCB7ICRfID0+IDEgfSBAeyRwfTsKKwlteSAkc3Vic2V0ID0gMTsKKwlmb3IgbXkgJGFyY2ggKEB7JHF9KSB7CisJICAgICRzdWJzZXQgPSAwIHVubGVzcyAkcF9hcmNoZXN7JGFyY2h9OworCX0KKwlyZXR1cm4gMCB1bmxlc3MgJHN1YnNldDsKKyAgICB9CisKKyAgICAjIElmIGJvdGggYXJlIG5lZ2F0ZWQsIHdlIGtub3cgbm90aGluZyB1c2VmdWwgdW5sZXNzIHAgaXMgYSBzdWJzZXQgb2YKKyAgICAjIHEgKGFuZCB0aGVyZWZvcmUgaGFzIGZld2VyIHRoaW5ncyBleGNsdWRlZCwgYW5kIHRoZXJlZm9yZSBpcyBtb3JlCisgICAgIyBnZW5lcmFsKS4KKyAgICBlbHNpZiAoJHBfYXJjaF9uZWcgYW5kICRxX2FyY2hfbmVnKSB7CisJbXkgJXFfYXJjaGVzID0gbWFwIHsgJF8gPT4gMSB9IEB7JHF9OworCW15ICRzdWJzZXQgPSAxOworCWZvciBteSAkYXJjaCAoQHskcH0pIHsKKwkgICAgJHN1YnNldCA9IDAgdW5sZXNzICRxX2FyY2hlc3skYXJjaH07CisJfQorCXJldHVybiAwIHVubGVzcyAkc3Vic2V0OworICAgIH0KKworICAgICMgSWYgcSBpcyBuZWdhdGVkIGFuZCBwIGlzbid0LCB3ZSdkIG5lZWQgdG8ga25vdyB0aGUgZnVsbCBsaXN0IG9mCisgICAgIyBhcmNoZXMgdG8ga25vdyBpZiB0aGVyZSdzIGFueSByZWxhdGlvbnNoaXAsIHNvIGJhaWwuCisgICAgZWxzaWYgKG5vdCAkcF9hcmNoX25lZyBhbmQgJHFfYXJjaF9uZWcpIHsKKwlyZXR1cm4gMDsKKyAgICB9CisKKyAgICAjIElmIHAgaXMgbmVnYXRlZCBhbmQgcSBpc24ndCwgcSBpcyBhIHN1YnNldCBvZiBwIGlmIG5vbmUgb2YgdGhlCisgICAgIyBuZWdhdGVkIGFyY2hlcyBpbiBwIGFyZSBwcmVzZW50IGluIHEuCisgICAgZWxzaWYgKCRwX2FyY2hfbmVnIGFuZCBub3QgJHFfYXJjaF9uZWcpIHsKKwlteSAlcV9hcmNoZXMgPSBtYXAgeyAkXyA9PiAxIH0gQHskcX07CisJbXkgJHN1YnNldCA9IDE7CisJZm9yIG15ICRhcmNoIChAeyRwfSkgeworCSAgICAkc3Vic2V0ID0gMCBpZiAkcV9hcmNoZXN7c3Vic3RyKCRhcmNoLCAxKX07CisJfQorCXJldHVybiAwIHVubGVzcyAkc3Vic2V0OworICAgIH0KKyAgICByZXR1cm4gMTsKK30KKworPWl0ZW0gZGVwc19ldmFsX2ltcGxpY2F0aW9uKCRyZWxfcCwgJHZfcCwgJHJlbF9xLCAkdl9xKQorCisoJHJlbF9wLCAkdl9wKSBhbmQgKCRyZWxfcSwgJHZfcSkgZXhwcmVzcyB0d28gZGVwZW5kZW5jaWVzIGFzIChyZWxhdGlvbiwKK3ZlcnNpb24pLiBUaGUgcmVsYXRpb24gdmFyaWFibGUgY2FuIGhhdmUgdGhlIGZvbGxvd2luZyB2YWx1ZXMgdGhhdCBhcmUKK2V4cG9ydGVkIGJ5IERwa2c6OlZlcnNpb246IFJFTF9FUSwgUkVMX0xULCBSRUxfTEUsIFJFTF9HVCwgUkVMX0dULgorCitUaGlzIGZ1bmN0aW9ucyByZXR1cm5zIDEgaWYgdGhlICJwIiBkZXBlbmRlbmN5IGltcGxpZXMgdGhlICJxIgorZGVwZW5kZW5jeS4gSXQgcmV0dXJucyAwIGlmIHRoZSAicCIgZGVwZW5kZW5jeSBpbXBsaWVzIHRoYXQgInEiIGlzCitub3Qgc2F0aXNmaWVkLiBJdCByZXR1cm5zIHVuZGVmIHdoZW4gdGhlcmUncyBubyBpbXBsaWNhdGlvbi4KKworVGhlICR2X3AgYW5kICR2X3EgcGFyYW1ldGVyIHNob3VsZCBiZSBEcGtnOjpWZXJzaW9uIG9iamVjdHMuCisKKz1jdXQKKworc3ViIGRlcHNfZXZhbF9pbXBsaWNhdGlvbiB7CisgICAgbXkgKCRyZWxfcCwgJHZfcCwgJHJlbF9xLCAkdl9xKSA9IEBfOworCisgICAgIyBJZiB2ZXJzaW9ucyBhcmUgbm90IHZhbGlkLCB3ZSBjYW4ndCBkZWNpZGUgb2YgYW55IGltcGxpY2F0aW9uCisgICAgcmV0dXJuIHVuZGVmIHVubGVzcyBkZWZpbmVkKCR2X3ApIGFuZCAkdl9wLT5pc192YWxpZCgpOworICAgIHJldHVybiB1bmRlZiB1bmxlc3MgZGVmaW5lZCgkdl9xKSBhbmQgJHZfcS0+aXNfdmFsaWQoKTsKKworICAgICMgcSB3YW50cyBhbiBleGFjdCB2ZXJzaW9uLCBzbyBwIG11c3QgcHJvdmlkZSB0aGF0IGV4YWN0IHZlcnNpb24uICBwCisgICAgIyBkaXNwcm92ZXMgcSBpZiBxJ3MgdmVyc2lvbiBpcyBvdXRzaWRlIHRoZSByYW5nZSBlbmZvcmNlZCBieSBwLgorICAgIGlmICgkcmVsX3EgZXEgUkVMX0VRKSB7CisgICAgICAgIGlmICgkcmVsX3AgZXEgUkVMX0xUKSB7CisgICAgICAgICAgICByZXR1cm4gKCR2X3AgPD0gJHZfcSkgPyAwIDogdW5kZWY7CisgICAgICAgIH0gZWxzaWYgKCRyZWxfcCBlcSBSRUxfTEUpIHsKKyAgICAgICAgICAgIHJldHVybiAoJHZfcCA8ICR2X3EpID8gMCA6IHVuZGVmOworICAgICAgICB9IGVsc2lmICgkcmVsX3AgZXEgUkVMX0dUKSB7CisgICAgICAgICAgICByZXR1cm4gKCR2X3AgPj0gJHZfcSkgPyAwIDogdW5kZWY7CisgICAgICAgIH0gZWxzaWYgKCRyZWxfcCBlcSBSRUxfR0UpIHsKKyAgICAgICAgICAgIHJldHVybiAoJHZfcCA+ICR2X3EpID8gMCA6IHVuZGVmOworICAgICAgICB9IGVsc2lmICgkcmVsX3AgZXEgUkVMX0VRKSB7CisgICAgICAgICAgICByZXR1cm4gKCR2X3AgPT0gJHZfcSk7CisgICAgICAgIH0KKyAgICB9CisKKyAgICAjIEEgZ3JlYXRlciB0aGFuIGNsYXVzZSBtYXkgZGlzcHJvdmUgYSBsZXNzIHRoYW4gY2xhdXNlLiBBbiBlcXVhbAorICAgICMgY2F1c2UgbWlnaHQgYXMgd2VsbC4gIE90aGVyd2lzZSwgaWYKKyAgICAjIHAncyBjbGF1c2UgaXMgPDwsIDw9LCBvciA9LCB0aGUgdmVyc2lvbiBtdXN0IGJlIDw9IHEncyB0byBpbXBseSBxLgorICAgIGlmICgkcmVsX3EgZXEgUkVMX0xFKSB7CisgICAgICAgIGlmICgkcmVsX3AgZXEgUkVMX0dUKSB7CisgICAgICAgICAgICByZXR1cm4gKCR2X3AgPj0gJHZfcSkgPyAwIDogdW5kZWY7CisgICAgICAgIH0gZWxzaWYgKCRyZWxfcCBlcSBSRUxfR0UpIHsKKyAgICAgICAgICAgIHJldHVybiAoJHZfcCA+ICR2X3EpID8gMCA6IHVuZGVmOworCX0gZWxzaWYgKCRyZWxfcCBlcSBSRUxfRVEpIHsKKyAgICAgICAgICAgIHJldHVybiAoJHZfcCA8PSAkdl9xKSA/IDEgOiAwOworICAgICAgICB9IGVsc2UgeyAjIDw8LCA8PQorICAgICAgICAgICAgcmV0dXJuICgkdl9wIDw9ICR2X3EpID8gMSA6IHVuZGVmOworICAgICAgICB9CisgICAgfQorCisgICAgIyBTaW1pbGFyLCBidXQgPDwgaXMgc3Ryb25nZXIgdGhhbiA8PSBzbyBwJ3MgdmVyc2lvbiBtdXN0IGJlIDw8IHEncworICAgICMgdmVyc2lvbiBpZiB0aGUgcCByZWxhdGlvbiBpcyA8PSBvciA9LgorICAgIGlmICgkcmVsX3EgZXEgUkVMX0xUKSB7CisgICAgICAgIGlmICgkcmVsX3AgZXEgUkVMX0dUIG9yICRyZWxfcCBlcSBSRUxfR0UpIHsKKyAgICAgICAgICAgIHJldHVybiAoJHZfcCA+PSAkdl9wKSA/IDAgOiB1bmRlZjsKKyAgICAgICAgfSBlbHNpZiAoJHJlbF9wIGVxIFJFTF9MVCkgeworICAgICAgICAgICAgcmV0dXJuICgkdl9wIDw9ICR2X3EpID8gMSA6IHVuZGVmOworCX0gZWxzaWYgKCRyZWxfcCBlcSBSRUxfRVEpIHsKKyAgICAgICAgICAgIHJldHVybiAoJHZfcCA8ICR2X3EpID8gMSA6IDA7CisgICAgICAgIH0gZWxzZSB7ICMgPDwsIDw9CisgICAgICAgICAgICByZXR1cm4gKCR2X3AgPCAkdl9xKSA/IDEgOiB1bmRlZjsKKyAgICAgICAgfQorICAgIH0KKworICAgICMgU2FtZSBsb2dpYyBhcyBhYm92ZSwgb25seSBpbnZlcnRlZC4KKyAgICBpZiAoJHJlbF9xIGVxIFJFTF9HRSkgeworICAgICAgICBpZiAoJHJlbF9wIGVxIFJFTF9MVCkgeworICAgICAgICAgICAgcmV0dXJuICgkdl9wIDw9ICR2X3EpID8gMCA6IHVuZGVmOworICAgICAgICB9IGVsc2lmICgkcmVsX3AgZXEgUkVMX0xFKSB7CisgICAgICAgICAgICByZXR1cm4gKCR2X3AgPCAkdl9xKSA/IDAgOiB1bmRlZjsKKwl9IGVsc2lmICgkcmVsX3AgZXEgUkVMX0VRKSB7CisgICAgICAgICAgICByZXR1cm4gKCR2X3AgPj0gJHZfcSkgPyAxIDogMDsKKyAgICAgICAgfSBlbHNlIHsgIyA+PiwgPj0KKyAgICAgICAgICAgIHJldHVybiAoJHZfcCA+PSAkdl9xKSA/IDEgOiB1bmRlZjsKKyAgICAgICAgfQorICAgIH0KKyAgICBpZiAoJHJlbF9xIGVxIFJFTF9HVCkgeworICAgICAgICBpZiAoJHJlbF9wIGVxIFJFTF9MVCBvciAkcmVsX3AgZXEgUkVMX0xFKSB7CisgICAgICAgICAgICByZXR1cm4gKCR2X3AgPD0gJHZfcSkgPyAwIDogdW5kZWY7CisgICAgICAgIH0gZWxzaWYgKCRyZWxfcCBlcSBSRUxfR1QpIHsKKyAgICAgICAgICAgIHJldHVybiAoJHZfcCA+PSAkdl9xKSA/IDEgOiB1bmRlZjsKKwl9IGVsc2lmICgkcmVsX3AgZXEgUkVMX0VRKSB7CisgICAgICAgICAgICByZXR1cm4gKCR2X3AgPiAkdl9xKSA/IDEgOiAwOworICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgcmV0dXJuICgkdl9wID4gJHZfcSkgPyAxIDogdW5kZWY7CisgICAgICAgIH0KKyAgICB9CisKKyAgICByZXR1cm4gdW5kZWY7Cit9CisKKz1pdGVtIG15ICRkZXAgPSBkZXBzX3BhcnNlKCRsaW5lLCAlb3B0aW9ucykKKworVGhpcyBmdW5jdGlvbiBwYXJzZXMgdGhlIGRlcGVuZGVuY3kgbGluZSBhbmQgcmV0dXJucyBhbiBvYmplY3QsIGVpdGhlciBhCitEcGtnOjpEZXBzOjpBTkQgb3IgYSBEcGtnOjpEZXBzOjpVbmlvbi4gVmFyaW91cyBvcHRpb25zIGNhbiBhbHRlciB0aGUKK2JlaGF2aW91ciBvZiB0aGF0IGZ1bmN0aW9uLgorCis9b3ZlciA0CisKKz1pdGVtIHVzZV9hcmNoIChkZWZhdWx0cyB0byAxKQorCitUYWtlIGludG8gYWNjb3VudCB0aGUgYXJjaGl0ZWN0dXJlIHJlc3RyaWN0aW9uIHBhcnQgb2YgdGhlIGRlcGVuZGVuY2llcy4KK1NldCB0byAwIHRvIGNvbXBsZXRlbHkgaWdub3JlIHRoYXQgaW5mb3JtYXRpb24uCisKKz1pdGVtIGhvc3RfYXJjaCAoZGVmYXVsdHMgdG8gdGhlIGN1cnJlbnQgYXJjaGl0ZWN0dXJlKQorCitEZWZpbmUgdGhlIGhvc3QgYXJjaGl0ZWN0dXJlLiBOZWVkZWQgb25seSBpZiB0aGUgcmVkdWNlX2FyY2ggb3B0aW9uIGlzCitzZXQgdG8gMS4gQnkgZGVmYXVsdCBpdCB1c2VzIERwa2c6OkFyY2g6OmdldF9ob3N0X2FyY2goKSB0byBpZGVudGlmeQordGhlIHByb3BlciBhcmNoaXRlY3R1cmUuCisKKz1pdGVtIHJlZHVjZV9hcmNoIChkZWZhdWx0cyB0byAwKQorCitJZiBzZXQgdG8gMSwgaWdub3JlIGRlcGVuZGVuY2llcyB0aGF0IGRvIG5vdCBjb25jZXJuIHRoZSBjdXJyZW50IGhvc3QKK2FyY2hpdGVjdHVyZS4gVGhpcyBpbXBsaWNpdGVseSBzdHJpcHMgb2ZmIHRoZSBhcmNoaXRlY3R1cmUgcmVzdHJpY3Rpb24KK2xpc3Qgc28gdGhhdCB0aGUgcmVzdWx0aW5nIGRlcGVuZGVuY2llcyBhcmUgZGlyZWN0bHkgYXBwbGljYWJsZSB0byB0aGUKK2N1cnJlbnQgYXJjaGl0ZWN0dXJlLgorCis9aXRlbSB1bmlvbiAoZGVmYXVsdHMgdG8gMCkKKworSWYgc2V0IHRvIDEsIHJldHVybnMgYSBEcGtnOjpEZXBzOjpVbmlvbiBpbnN0ZWFkIG9mIGEgRHBrZzo6RGVwczo6QU5ELiBVc2UKK3RoaXMgd2hlbiBwYXJzaW5nIG5vbi1kZXBlbmRlbmN5IGZpZWxkcyBsaWtlIENvbmZsaWN0cy4KKworPWJhY2sKKworPWN1dAorCitzdWIgZGVwc19wYXJzZSB7CisgICAgbXkgJGRlcF9saW5lID0gc2hpZnQ7CisgICAgbXkgJW9wdGlvbnMgPSAoQF8pOworICAgICRvcHRpb25ze3VzZV9hcmNofSA9IDEgaWYgbm90IGV4aXN0cyAkb3B0aW9uc3t1c2VfYXJjaH07CisgICAgJG9wdGlvbnN7cmVkdWNlX2FyY2h9ID0gMCBpZiBub3QgZXhpc3RzICRvcHRpb25ze3JlZHVjZV9hcmNofTsKKyAgICAkb3B0aW9uc3tob3N0X2FyY2h9ID0gZ2V0X2hvc3RfYXJjaCgpIGlmIG5vdCBleGlzdHMgJG9wdGlvbnN7aG9zdF9hcmNofTsKKyAgICAkb3B0aW9uc3t1bmlvbn0gPSAwIGlmIG5vdCBleGlzdHMgJG9wdGlvbnN7dW5pb259OworCisgICAgIyBTdHJpcCB0cmFpbGluZy9sZWFkaW5nIHNwYWNlcworICAgICRkZXBfbGluZSA9fiBzL15ccysvLzsKKyAgICAkZGVwX2xpbmUgPX4gcy9ccyskLy87CisKKyAgICBteSBAZGVwX2xpc3Q7CisgICAgZm9yZWFjaCBteSAkZGVwX2FuZCAoc3BsaXQoL1xzKixccyovbSwgJGRlcF9saW5lKSkgeworICAgICAgICBteSBAb3JfbGlzdCA9ICgpOworICAgICAgICBmb3JlYWNoIG15ICRkZXBfb3IgKHNwbGl0KC9ccypcfFxzKi9tLCAkZGVwX2FuZCkpIHsKKwkgICAgbXkgJGRlcF9zaW1wbGUgPSBEcGtnOjpEZXBzOjpTaW1wbGUtPm5ldygkZGVwX29yKTsKKwkgICAgaWYgKG5vdCBkZWZpbmVkICRkZXBfc2ltcGxlLT57cGFja2FnZX0pIHsKKwkJd2FybmluZyhfZygiY2FuJ3QgcGFyc2UgZGVwZW5kZW5jeSAlcyIpLCAkZGVwX29yKTsKKwkJcmV0dXJuIHVuZGVmOworCSAgICB9CisJICAgICRkZXBfc2ltcGxlLT57YXJjaGVzfSA9IHVuZGVmIGlmIG5vdCAkb3B0aW9uc3t1c2VfYXJjaH07CisgICAgICAgICAgICBpZiAoJG9wdGlvbnN7cmVkdWNlX2FyY2h9KSB7CisJCSRkZXBfc2ltcGxlLT5yZWR1Y2VfYXJjaCgkb3B0aW9uc3tob3N0X2FyY2h9KTsKKwkJbmV4dCBpZiBub3QgJGRlcF9zaW1wbGUtPmFyY2hfaXNfY29uY2VybmVkKCRvcHRpb25ze2hvc3RfYXJjaH0pOworCSAgICB9CisJICAgIHB1c2ggQG9yX2xpc3QsICRkZXBfc2ltcGxlOworICAgICAgICB9CisJbmV4dCBpZiBub3QgQG9yX2xpc3Q7CisJaWYgKHNjYWxhciBAb3JfbGlzdCA9PSAxKSB7CisJICAgIHB1c2ggQGRlcF9saXN0LCAkb3JfbGlzdFswXTsKKwl9IGVsc2UgeworCSAgICBteSAkZGVwX29yID0gRHBrZzo6RGVwczo6T1ItPm5ldygpOworCSAgICAkZGVwX29yLT5hZGQoJF8pIGZvcmVhY2ggKEBvcl9saXN0KTsKKwkgICAgcHVzaCBAZGVwX2xpc3QsICRkZXBfb3I7CisJfQorICAgIH0KKyAgICBteSAkZGVwX2FuZDsKKyAgICBpZiAoJG9wdGlvbnN7dW5pb259KSB7CisJJGRlcF9hbmQgPSBEcGtnOjpEZXBzOjpVbmlvbi0+bmV3KCk7CisgICAgfSBlbHNlIHsKKwkkZGVwX2FuZCA9IERwa2c6OkRlcHM6OkFORC0+bmV3KCk7CisgICAgfQorICAgIGZvcmVhY2ggbXkgJGRlcCAoQGRlcF9saXN0KSB7CisgICAgICAgIGlmICgkb3B0aW9uc3t1bmlvbn0gYW5kIG5vdCAkZGVwLT5pc2EoIkRwa2c6OkRlcHM6OlNpbXBsZSIpKSB7CisgICAgICAgICAgICB3YXJuaW5nKF9nKCJhbiB1bmlvbiBkZXBlbmRlbmN5IGNhbiBvbmx5IGNvbnRhaW4gc2ltcGxlIGRlcGVuZGVuY2llcyIpKTsKKyAgICAgICAgICAgIHJldHVybiB1bmRlZjsKKyAgICAgICAgfQorICAgICAgICAkZGVwX2FuZC0+YWRkKCRkZXApOworICAgIH0KKyAgICByZXR1cm4gJGRlcF9hbmQ7Cit9CisKKz1pdGVtIGRlcHNfY29tcGFyZSgkYSwgJGIpCisKK0ltcGxlbWVudHMgYSBjb21wYXJpc29uIG9wZXJhdG9yIGJldHdlZW4gdHdvIGRlcGVuZGVuY3kgb2JqZWN0cy4KK1RoaXMgZnVuY3Rpb24gaXMgbWFpbmx5IHVzZWQgdG8gaW1wbGVtZW50IHRoZSBzb3J0KCkgbWV0aG9kLgorCis9YmFjaworCis9Y3V0CisKK291ciAlcmVsYXRpb25fb3JkZXJpbmcgPSAoCisJJ3VuZGVmJyA9PiAwLAorCVJFTF9HRSgpID0+IDEsCisJUkVMX0dUKCkgPT4gMiwKKwlSRUxfRVEoKSA9PiAzLAorCVJFTF9MVCgpID0+IDQsCisJUkVMX0xFKCkgPT4gNSwKKyk7CisKK3N1YiBkZXBzX2NvbXBhcmUgeworICAgIG15ICgkYSwgJGIpID0gQF87CisgICAgcmV0dXJuIC0xIGlmICRhLT5pc19lbXB0eSgpOworICAgIHJldHVybiAxIGlmICRiLT5pc19lbXB0eSgpOworICAgIHdoaWxlICgkYS0+aXNhKCdEcGtnOjpEZXBzOjpNdWx0aXBsZScpKSB7CisJcmV0dXJuIC0xIGlmICRhLT5pc19lbXB0eSgpOworCW15IEBkZXBzID0gJGEtPmdldF9kZXBzKCk7CisJJGEgPSAkZGVwc1swXTsKKyAgICB9CisgICAgd2hpbGUgKCRiLT5pc2EoJ0Rwa2c6OkRlcHM6Ok11bHRpcGxlJykpIHsKKwlyZXR1cm4gMSBpZiAkYi0+aXNfZW1wdHkoKTsKKwlteSBAZGVwcyA9ICRiLT5nZXRfZGVwcygpOworCSRiID0gJGRlcHNbMF07CisgICAgfQorICAgIG15ICRhciA9IGRlZmluZWQoJGEtPntyZWxhdGlvbn0pID8gJGEtPntyZWxhdGlvbn0gOiAidW5kZWYiOworICAgIG15ICRiciA9IGRlZmluZWQoJGItPntyZWxhdGlvbn0pID8gJGItPntyZWxhdGlvbn0gOiAidW5kZWYiOworICAgIHJldHVybiAoKCRhLT57cGFja2FnZX0gY21wICRiLT57cGFja2FnZX0pIHx8CisJICAgICgkcmVsYXRpb25fb3JkZXJpbmd7JGFyfSA8PT4gJHJlbGF0aW9uX29yZGVyaW5neyRicn0pIHx8CisJICAgICgkYS0+e3ZlcnNpb259IGNtcCAkYi0+e3ZlcnNpb259KSk7Cit9CisKKworcGFja2FnZSBEcGtnOjpEZXBzOjpTaW1wbGU7CisKKz1oZWFkMSBPQkpFQ1RTIC0gRHBrZzo6RGVwczo6KgorCitUaGVyZSBhcmUgc2V2ZXJhbCBraW5kIG9mIGRlcGVuZGVuY2llcy4gQSBEcGtnOjpEZXBzOjpTaW1wbGUgZGVwZW5kZW5jeQorcmVwcmVzZW50cyBhIHNpbmdsZSBkZXBlbmRlbmN5IHN0YXRlbWVudCAoaXQgcmVsYXRlcyB0byBvbmUgcGFja2FnZSBvbmx5KS4KK0Rwa2c6OkRlcHM6Ok11bHRpcGxlIGRlcGVuZGVuY2llcyBhcmUgYnVpbHQgb24gdG9wIG9mIHRoaXMgb2JqZWN0CithbmQgY29tYmluZSBzZXZlcmFsIGRlcGVuZGVuY2llcyBpbiBhIGRpZmZlcmVudCBtYW5uZXJzLiBEcGtnOjpEZXBzOjpBTkQKK3JlcHJlc2VudHMgdGhlIGxvZ2ljYWwgIkFORCIgYmV0d2VlbiBkZXBlbmRlbmNpZXMgd2hpbGUgRHBrZzo6RGVwczo6T1IKK3JlcHJlc2VudHMgdGhlIGxvZ2ljYWwgIk9SIi4gRHBrZzo6RGVwczo6TXVsdGlwbGUgb2JqZWN0cyBjYW4gY29udGFpbgorRHBrZzo6RGVwczo6U2ltcGxlIG9iamVjdCBhcyB3ZWxsIGFzIG90aGVyIERwa2c6OkRlcHM6Ok11bHRpcGxlIG9iamVjdHMuCisKK0luIHByYWN0aWNlLCB0aGUgY29kZSBpcyBvbmx5IG1lYW50IHRvIGhhbmRsZSB0aGUgcmVhbGlzdGljIGNhc2VzIHdoaWNoLAorZ2l2ZW4gRGViaWFuJ3MgZGVwZW5kZW5jaWVzIHN0cnVjdHVyZSwgaW1wbHkgdGhvc2UgcmVzdHJpY3Rpb25zOiBBTkQgY2FuCitjb250YWluIFNpbXBsZSBvciBPUiBvYmplY3RzLCBPUiBjYW4gb25seSBjb250YWluIFNpbXBsZSBvYmplY3RzLgorCitEcGtnOjpEZXBzOjpLbm93bkZhY3RzIGlzIGEgc3BlY2lhbCBvYmplY3QgdGhhdCBpcyB1c2VkIHdoaWxlIGV2YWx1YXRpbmcKK2RlcGVuZGVuY2llcyBhbmQgd2hpbGUgdHJ5aW5nIHRvIHNpbXBsaWZ5IHRoZW0uIEl0IHJlcHJlc2VudHMgYSBzZXQgb2YKK2luc3RhbGxlZCBwYWNrYWdlcyBhbG9uZyB3aXRoIHRoZSB2aXJ0dWFsIHBhY2thZ2VzIHRoYXQgdGhleSBtaWdodAorcHJvdmlkZS4KKworPWhlYWQyIENvbW1vbiBmdW5jdGlvbnMKKworPW92ZXIgNAorCis9aXRlbSAkZGVwLT5pc19lbXB0eSgpCisKK1JldHVybnMgdHJ1ZSBpZiB0aGUgZGVwZW5kZW5jeSBpcyBlbXB0eSBhbmQgZG9lc24ndCBjb250YWluIGFueSB1c2VmdWwKK2luZm9ybWF0aW9uLiBUaGlzIGlzIHRydWUgd2hlbiBhIERwa2c6OkRlcHM6OlNpbXBsZSBvYmplY3QgaGFzIG5vdCB5ZXQKK2JlZW4gaW5pdGlhbGl6ZWQgb3Igd2hlbiBhIChkZXNjZW5kYW50IG9mKSBEcGtnOjpEZXBzOjpNdWx0aXBsZSBjb250YWlucworYW4gZW1wdHkgbGlzdCBvZiBkZXBlbmRlbmNpZXMuCisKKz1pdGVtICRkZXAtPmdldF9kZXBzKCkKKworUmV0dXJucyBhIGxpc3Qgb2Ygc3ViLWRlcGVuZGVuY2llcy4gRm9yIERwa2c6OkRlcHM6OlNpbXBsZSBpdCByZXR1cm5zCitpdHNlbGYuCisKKz1pdGVtICRkZXAtPm91dHB1dChbJGZoXSkKKworPWl0ZW0gIiRkZXAiCisKK1JldHVybnMgYSBzdHJpbmcgcmVwcmVzZW50aW5nIHRoZSBkZXBlbmRlbmN5LiBJZiAkZmggaXMgc2V0LCBpdCBwcmludHMKK3RoZSBzdHJpbmcgdG8gdGhlIGZpbGVoYW5kbGUuCisKKz1pdGVtICRkZXAtPmltcGxpZXMoJG90aGVyX2RlcCkKKworUmV0dXJucyAxIHdoZW4gJGRlcCBpbXBsaWVzICRvdGhlcl9kZXAuIFJldHVybnMgMCB3aGVuICRkZXAgaW1wbGllcworTk9UKCRvdGhlcl9kZXApLiBSZXR1cm5zIHVuZGVmIHdoZW4gdGhlcmUncyBubyBpbXBsaWNhdGlvbi4gJGRlcCBhbmQKKyRvdGhlcl9kZXAgZG8gbm90IG5lZWQgdG8gYmUgb2YgdGhlIHNhbWUgdHlwZS4KKworPWl0ZW0gJGRlcC0+c29ydCgpCisKK1NvcnRzIGFscGhhYmV0aWNhbGx5IHRoZSBpbnRlcm5hbCBsaXN0IG9mIGRlcGVuZGVuY2llcy4gSXQncyBhIG5vLW9wIGZvcgorRHBrZzo6RGVwczo6U2ltcGxlIG9iamVjdHMuCisKKz1pdGVtICRkZXAtPmFyY2hfaXNfY29uY2VybmVkKCRhcmNoKQorCitSZXR1cm5zIHRydWUgaWYgdGhlIGRlcGVuZGVuY3kgYXBwbGllcyB0byB0aGUgaW5kaWNhdGVkIGFyY2hpdGVjdHVyZS4gRm9yCittdWx0aXBsZSBkZXBlbmRlbmNpZXMsIGl0IHJldHVybnMgdHJ1ZSBpZiBhdCBsZWFzdCBvbmUgb2YgdGhlCitzdWItZGVwZW5kZW5jaWVzIGFwcGx5IHRvIHRoaXMgYXJjaGl0ZWN0dXJlLgorCis9aXRlbSAkZGVwLT5yZWR1Y2VfYXJjaCgkYXJjaCkKKworU2ltcGxpZmllcyB0aGUgZGVwZW5kZW5jeSB0byBjb250YWluIG9ubHkgaW5mb3JtYXRpb24gcmVsZXZhbnQgdG8gdGhlIGdpdmVuCithcmNoaXRlY3R1cmUuIEEgRHBrZzo6RGVwczo6U2ltcGxlIG9iamVjdCBjYW4gYmUgbGVmdCBlbXB0eSBhZnRlciB0aGlzCitvcGVyYXRpb24uIEZvciBEcGtnOjpEZXBzOjpNdWx0aXBsZSBvYmplY3RzLCB0aGUgbm9uLXJlbGV2YW50CitzdWItZGVwZW5kZW5jaWVzIGFyZSBzaW1wbHkgcmVtb3ZlZC4KKworVGhpcyB0cmltcyBvZmYgdGhlIGFyY2hpdGVjdHVyZSByZXN0cmljdGlvbiBsaXN0IG9mIERwa2c6OkRlcHM6OlNpbXBsZQorb2JqZWN0cy4KKworPWl0ZW0gJGRlcC0+Z2V0X2V2YWx1YXRpb24oJGZhY3RzKQorCitFdmFsdWF0ZXMgdGhlIGRlcGVuZGVuY3kgZ2l2ZW4gYSBsaXN0IG9mIGluc3RhbGxlZCBwYWNrYWdlcyBhbmQgYSBsaXN0IG9mCit2aXJ0dWFsIHBhY2thZ2VzIHByb3ZpZGVkLiBUaG9zZSBsaXN0cyBhcmUgcGFydCBvZiB0aGUKK0Rwa2c6OkRlcHM6Oktub3duRmFjdHMgb2JqZWN0IGdpdmVuIGFzIHBhcmFtZXRlcnMuCisKK1JldHVybnMgMSB3aGVuIGl0J3MgdHJ1ZSwgMCB3aGVuIGl0J3MgZmFsc2UsIHVuZGVmIHdoZW4gc29tZSBpbmZvcm1hdGlvbgoraXMgbGFja2luZyB0byBjb25jbHVkZS4KKworPWl0ZW0gJGRlcC0+c2ltcGxpZnlfZGVwcygkZmFjdHMsIEBhc3N1bWVkX2RlcHMpCisKK1NpbXBsaWZpZXMgdGhlIGRlcGVuZGVuY3kgYXMgbXVjaCBhcyBwb3NzaWJsZSBnaXZlbiB0aGUgbGlzdCBvZiBmYWN0cyAoc2VlCitvYmplY3QgRHBrZzo6RGVwczo6S25vd25GYWN0cykgYW5kIGEgbGlzdCBvZiBvdGhlciBkZXBlbmRlbmNpZXMgdGhhdCBhcmUKK2tub3duIHRvIGJlIHRydWUuCisKKz1pdGVtICRkZXAtPmhhc19hcmNoX3Jlc3RyaWN0aW9uKCkKKworRm9yIGEgc2ltcGxlIGRlcGVuZGVuY3ksIHJldHVybnMgdGhlIHBhY2thZ2UgbmFtZSBpZiB0aGUgZGVwZW5kZW5jeQorYXBwbGllcyBvbmx5IHRvIGEgc3Vic2V0IG9mIGFyY2hpdGVjdHVyZXMuICBGb3IgbXVsdGlwbGUgZGVwZW5kZW5jaWVzLCBpdAorcmV0dXJucyB0aGUgbGlzdCBvZiBwYWNrYWdlIG5hbWVzIHRoYXQgaGF2ZSBzdWNoIGEgcmVzdHJpY3Rpb24uCisKKz1pdGVtICRkZXAtPnJlc2V0KCkKKworQ2xlYXJzIGFueSBkZXBlbmRlbmN5IGluZm9ybWF0aW9uIHN0b3JlZCBpbiAkZGVwIHNvIHRoYXQgJGRlcC0+aXNfZW1wdHkoKQorcmV0dXJucyB0cnVlLgorCis9YmFjaworCis9aGVhZDIgRHBrZzo6RGVwczo6U2ltcGxlCisKK1N1Y2ggYW4gb2JqZWN0IGhhcyBmb3VyIGludGVyZXN0aW5nIHByb3BlcnRpZXM6CisKKz1vdmVyIDQKKworPWl0ZW0gcGFja2FnZQorCitUaGUgcGFja2FnZSBuYW1lIChjYW4gYmUgdW5kZWYgaWYgdGhlIGRlcGVuZGVuY3kgaGFzIG5vdCBiZWVuIGluaXRpYWxpemVkCitvciBpZiB0aGUgc2ltcGxpZmljYXRpb24gb2YgdGhlIGRlcGVuZGVuY3kgbGVhZCB0byBpdHMgcmVtb3ZhbCkuCisKKz1pdGVtIHJlbGF0aW9uCisKK1RoZSByZWxhdGlvbmFsIG9wZXJhdG9yOiAiPSIsICI8PCIsICI8PSIsICI+PSIgb3IgIj4+Ii4gSXQgY2FuIGJlCit1bmRlZmluZWQgaWYgdGhlIGRlcGVuZGVuY3kgaGFkIG5vIHZlcnNpb24gcmVzdHJpY3Rpb24uIEluIHRoYXQgY2FzZSB0aGUKK2ZvbGxvd2luZyBmaWVsZCBpcyBhbHNvIHVuZGVmaW5lZC4KKworPWl0ZW0gdmVyc2lvbgorCitUaGUgdmVyc2lvbi4KKworPWl0ZW0gYXJjaGVzCisKK1RoZSBsaXN0IG9mIGFyY2hpdGVjdHVyZXMgd2hlcmUgdGhpcyBkZXBlbmRlbmN5IGlzIGFwcGxpY2FibGUuIEl0J3MKK3VuZGVmaW5lZCB3aGVuIHRoZXJlJ3Mgbm8gcmVzdHJpY3Rpb24sIG90aGVyd2lzZSBpdCdzIGFuCithcnJheSByZWYuIEl0IGNhbiBjb250YWluIGFuIGV4Y2x1c2lvbiBsaXN0LCBpbiB0aGF0IGNhc2UgZWFjaAorYXJjaGl0ZWN0dXJlIGlzIHByZWZpeGVkIHdpdGggYW4gZXhjbGFtYXRpb24gbWFyay4KKworPWJhY2sKKworPWhlYWQzIE1ldGhvZHMKKworPW92ZXIgNAorCis9aXRlbSAkc2ltcGxlX2RlcC0+cGFyc2Vfc3RyaW5nKCJkcGtnLWRldiAoPj0gMS4xNC44KSBbIWh1cmQtaTM4Nl0iKQorCitQYXJzZXMgdGhlIGRlcGVuZGVuY3kgYW5kIG1vZGlmaWVzIGludGVybmFsIHByb3BlcnRpZXMgdG8gbWF0Y2ggdGhlIHBhcnNlZAorZGVwZW5kZW5jeS4KKworPWl0ZW0gJHNpbXBsZV9kZXAtPm1lcmdlX3VuaW9uKCRvdGhlcl9kZXApCisKK1JldHVybnMgdHJ1ZSBpZiAkc2ltcGxlX2RlcCBjb3VsZCBiZSBtb2RpZmllZCB0byByZXByZXNlbnQgdGhlIHVuaW9uIG9mCitib3RoIGRlcGVuZGVuY2llcy4gT3RoZXJ3aXNlIHJldHVybnMgZmFsc2UuCisKKz1iYWNrCisKKz1jdXQKKwordXNlIHN0cmljdDsKK3VzZSB3YXJuaW5nczsKKwordXNlIERwa2c6OkFyY2ggcXcoZGViYXJjaF9pcyk7Cit1c2UgRHBrZzo6VmVyc2lvbjsKK3VzZSBEcGtnOjpFcnJvckhhbmRsaW5nOwordXNlIERwa2c6OkdldHRleHQ7CisKK3VzZSBiYXNlIHF3KERwa2c6OkludGVyZmFjZTo6U3RvcmFibGUpOworCitzdWIgbmV3IHsKKyAgICBteSAoJHRoaXMsICRhcmcpID0gQF87CisgICAgbXkgJGNsYXNzID0gcmVmKCR0aGlzKSB8fCAkdGhpczsKKyAgICBteSAkc2VsZiA9IHt9OworICAgIGJsZXNzICRzZWxmLCAkY2xhc3M7CisgICAgJHNlbGYtPnJlc2V0KCk7CisgICAgJHNlbGYtPnBhcnNlX3N0cmluZygkYXJnKSBpZiBkZWZpbmVkKCRhcmcpOworICAgIHJldHVybiAkc2VsZjsKK30KKworc3ViIHJlc2V0IHsKKyAgICBteSAoJHNlbGYpID0gQF87CisgICAgJHNlbGYtPnsncGFja2FnZSd9ID0gdW5kZWY7CisgICAgJHNlbGYtPnsncmVsYXRpb24nfSA9IHVuZGVmOworICAgICRzZWxmLT57J3ZlcnNpb24nfSA9IHVuZGVmOworICAgICRzZWxmLT57J2FyY2hlcyd9ID0gdW5kZWY7Cit9CisKK3N1YiBwYXJzZSB7CisgICAgbXkgKCRzZWxmLCAkZmgsICRkZXNjKSA9IEBfOworICAgIG15ICRsaW5lID0gPCRmaD47CisgICAgY2hvbXAoJGxpbmUpOworICAgIHJldHVybiAkc2VsZi0+cGFyc2Vfc3RyaW5nKCRsaW5lKTsKK30KKworc3ViIHBhcnNlX3N0cmluZyB7CisgICAgbXkgKCRzZWxmLCAkZGVwKSA9IEBfOworICAgIHJldHVybiBpZiBub3QgJGRlcCA9fgorICAgICAgICAgICAgL15ccyogICAgICAgICAgICAgICAgICAgICAgICAgICAjIHNraXAgbGVhZGluZyB3aGl0ZXNwYWNlCisgICAgICAgICAgICAgIChbYS16QS1aMC05XVthLXpBLVowLTkrLi1dKikgICMgcGFja2FnZSBuYW1lCisgICAgICAgICAgICAgICg/OiAgICAgICAgICAgICAgICAgICAgICAgICAgICMgc3RhcnQgb2Ygb3B0aW9uYWwgcGFydAorICAgICAgICAgICAgICAgIFxzKiBcKCAgICAgICAgICAgICAgICAgICAgICAjIG9wZW4gcGFyZW50aGVzaXMgZm9yIHZlcnNpb24gcGFydAorICAgICAgICAgICAgICAgIFxzKiAoPDx8PD18PXw+PXw+Pnw8fD4pICAgICAjIHJlbGF0aW9uIHBhcnQKKyAgICAgICAgICAgICAgICBccyogKC4qPykgICAgICAgICAgICAgICAgICAgIyBkbyBub3QgYXR0ZW1wdCB0byBwYXJzZSB2ZXJzaW9uCisgICAgICAgICAgICAgICAgXHMqIFwpICAgICAgICAgICAgICAgICAgICAgICMgY2xvc2luZyBwYXJlbnRoZXNpcworICAgICAgICAgICAgICApPyAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIGVuZCBvZiBvcHRpb25hbCBwYXJ0CisgICAgICAgICAgICAgICg/OiAgICAgICAgICAgICAgICAgICAgICAgICAgICMgc3RhcnQgb2Ygb3B0aW9uYWwgYXJjaGl0ZWN0dXJlCisgICAgICAgICAgICAgICAgXHMqIFxbICAgICAgICAgICAgICAgICAgICAgICMgb3BlbiBicmFja2V0IGZvciBhcmNoaXRlY3R1cmUKKyAgICAgICAgICAgICAgICBccyogKC4qPykgICAgICAgICAgICAgICAgICAgIyBkb24ndCBwYXJzZSBhcmNoaXRlY3R1cmVzIG5vdworICAgICAgICAgICAgICAgIFxzKiBcXSAgICAgICAgICAgICAgICAgICAgICAjIGNsb3NpbmcgYnJhY2tldAorICAgICAgICAgICAgICApPyAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIGVuZCBvZiBvcHRpb25hbCBhcmNoaXRlY3R1cmUKKwkgICAgICBccyokCQkJICAgICMgdHJhaWxpbmcgc3BhY2VzIGF0IGVuZAorICAgICAgICAgICAgL3g7CisgICAgJHNlbGYtPntwYWNrYWdlfSA9ICQxOworICAgICRzZWxmLT57cmVsYXRpb259ID0gdmVyc2lvbl9ub3JtYWxpemVfcmVsYXRpb24oJDIpIGlmIGRlZmluZWQoJDIpOworICAgIGlmIChkZWZpbmVkKCQzKSkgeworICAgICAgICAkc2VsZi0+e3ZlcnNpb259ID0gRHBrZzo6VmVyc2lvbi0+bmV3KCQzKTsKKyAgICB9CisgICAgaWYgKGRlZmluZWQoJDQpKSB7CisJJHNlbGYtPnthcmNoZXN9ID0gWyBzcGxpdCgvXHMrLywgJDQpIF07CisgICAgfQorfQorCitzdWIgb3V0cHV0IHsKKyAgICBteSAoJHNlbGYsICRmaCkgPSBAXzsKKyAgICBteSAkcmVzID0gJHNlbGYtPntwYWNrYWdlfTsKKyAgICBpZiAoZGVmaW5lZCgkc2VsZi0+e3JlbGF0aW9ufSkpIHsKKwkkcmVzIC49ICIgKCIgLiAkc2VsZi0+e3JlbGF0aW9ufSAuICIgIiAuICRzZWxmLT57dmVyc2lvbn0gLiAgIikiOworICAgIH0KKyAgICBpZiAoZGVmaW5lZCgkc2VsZi0+eydhcmNoZXMnfSkpIHsKKwkkcmVzIC49ICIgWyIgLiBqb2luKCIgIiwgQHskc2VsZi0+e2FyY2hlc319KSAuICJdIjsKKyAgICB9CisgICAgaWYgKGRlZmluZWQoJGZoKSkgeworCXByaW50ICRmaCAkcmVzOworICAgIH0KKyAgICByZXR1cm4gJHJlczsKK30KKworIyBSZXR1cm5zIHRydWUgaWYgdGhlIGRlcGVuZGVuY3kgaW4gcGFyYW1ldGVyIGNhbiBkZWR1Y2VkIGZyb20gdGhlIGN1cnJlbnQKKyMgZGVwZW5kZW5jeS4gUmV0dXJucyBmYWxzZSBpZiBpdCBjYW4gYmUgbmVnYXRlZC4gUmV0dXJucyB1bmRlZiBpZiBub3RoaW5nCisjIGNhbiBiZSBjb25jbHVkZWQuCitzdWIgaW1wbGllcyB7CisgICAgbXkgKCRzZWxmLCAkbykgPSBAXzsKKyAgICBpZiAoJG8tPmlzYSgnRHBrZzo6RGVwczo6U2ltcGxlJykpIHsKKwkjIEFuIGltcGxpY2F0aW9uIGlzIG9ubHkgcG9zc2libGUgb24gdGhlIHNhbWUgcGFja2FnZQorCXJldHVybiB1bmRlZiBpZiAkc2VsZi0+e3BhY2thZ2V9IG5lICRvLT57cGFja2FnZX07CisKKwkjIE91ciBhcmNoaXRlY3R1cmUgc2V0IG11c3QgYmUgYSBzdXBlcnNldCBvZiB0aGUgYXJjaGl0ZWN0dXJlcyBmb3IKKwkjIG8sIG90aGVyd2lzZSB3ZSBjYW4ndCBjb25jbHVkZSBhbnl0aGluZy4KKwlyZXR1cm4gdW5kZWYgdW5sZXNzIERwa2c6OkRlcHM6Ol9hcmNoX2lzX3N1cGVyc2V0KCRzZWxmLT57YXJjaGVzfSwgJG8tPnthcmNoZXN9KTsKKworCSMgSWYgbyBoYXMgbm8gdmVyc2lvbiBjbGF1c2UsIHRoZW4gb3VyIGRlcGVuZGVuY3kgaXMgc3Ryb25nZXIKKwlyZXR1cm4gMSBpZiBub3QgZGVmaW5lZCAkby0+e3JlbGF0aW9ufTsKKwkjIElmIG8gaGFzIGEgdmVyc2lvbiBjbGF1c2UsIHdlIG11c3QgYWxzbyBoYXZlIG9uZSwgb3RoZXJ3aXNlIHRoZXJlCisJIyBjYW4ndCBiZSBhbiBpbXBsaWNhdGlvbgorCXJldHVybiB1bmRlZiBpZiBub3QgZGVmaW5lZCAkc2VsZi0+e3JlbGF0aW9ufTsKKworCXJldHVybiBEcGtnOjpEZXBzOjpkZXBzX2V2YWxfaW1wbGljYXRpb24oJHNlbGYtPntyZWxhdGlvbn0sCisJCSRzZWxmLT57dmVyc2lvbn0sICRvLT57cmVsYXRpb259LCAkby0+e3ZlcnNpb259KTsKKworICAgIH0gZWxzaWYgKCRvLT5pc2EoJ0Rwa2c6OkRlcHM6OkFORCcpKSB7CisJIyBUUlVFOiBOZWVkIHRvIGltcGx5IGFsbCBpbmRpdmlkdWFsIGVsZW1lbnRzCisJIyBGQUxTRTogTmVlZCB0byBOT1QgaW1wbHkgYXQgbGVhc3Qgb25lIGluZGl2aWR1YWwgZWxlbWVudAorCW15ICRyZXMgPSAxOworCWZvcmVhY2ggbXkgJGRlcCAoJG8tPmdldF9kZXBzKCkpIHsKKwkgICAgbXkgJGltcGxpY2F0aW9uID0gJHNlbGYtPmltcGxpZXMoJGRlcCk7CisJICAgIHVubGVzcyAoZGVmaW5lZCgkaW1wbGljYXRpb24pICYmICRpbXBsaWNhdGlvbiA9PSAxKSB7CisJCSRyZXMgPSAkaW1wbGljYXRpb247CisJCWxhc3QgaWYgZGVmaW5lZCAkcmVzOworCSAgICB9CisJfQorCXJldHVybiAkcmVzOworICAgIH0gZWxzaWYgKCRvLT5pc2EoJ0Rwa2c6OkRlcHM6Ok9SJykpIHsKKwkjIFRSVUU6IE5lZWQgdG8gaW1wbHkgYXQgbGVhc3Qgb25lIGluZGl2aWR1YWwgZWxlbWVudAorCSMgRkFMU0U6IE5lZWQgdG8gbm90IGFwcGx5IGFsbCBpbmRpdmlkdWFsIGVsZW1lbnRzCisJIyBVTkRFRjogVGhlIHJlc3QKKwlteSAkcmVzID0gdW5kZWY7CisJZm9yZWFjaCBteSAkZGVwICgkby0+Z2V0X2RlcHMoKSkgeworCSAgICBteSAkaW1wbGljYXRpb24gPSAkc2VsZi0+aW1wbGllcygkZGVwKTsKKwkgICAgaWYgKGRlZmluZWQoJGltcGxpY2F0aW9uKSkgeworCQlpZiAobm90IGRlZmluZWQgJHJlcykgeworCQkgICAgJHJlcyA9ICRpbXBsaWNhdGlvbjsKKwkJfSBlbHNlIHsKKwkJICAgIGlmICgkaW1wbGljYXRpb24pIHsKKwkJCSRyZXMgPSAxOworCQkgICAgfSBlbHNlIHsKKwkJCSRyZXMgPSAwOworCQkgICAgfQorCQl9CisJCWxhc3QgaWYgZGVmaW5lZCgkcmVzKSAmJiAkcmVzID09IDE7CisJICAgIH0KKwl9CisJcmV0dXJuICRyZXM7CisgICAgfSBlbHNlIHsKKwlpbnRlcm5lcnIoIkRwa2c6OkRlcHM6OlNpbXBsZSBjYW4ndCBldmFsdWF0ZSBpbXBsaWNhdGlvbiB3aXRoIGEgJXMhIiwKKwkgICAgICAgICAgcmVmKCRvKSk7CisgICAgfQorfQorCitzdWIgZ2V0X2RlcHMgeworICAgIG15ICRzZWxmID0gc2hpZnQ7CisgICAgcmV0dXJuICRzZWxmOworfQorCitzdWIgc29ydCB7CisgICAgIyBOb3RoaW5nIHRvIHNvcnQKK30KKworc3ViIGFyY2hfaXNfY29uY2VybmVkIHsKKyAgICBteSAoJHNlbGYsICRob3N0X2FyY2gpID0gQF87CisKKyAgICByZXR1cm4gMCBpZiBub3QgZGVmaW5lZCAkc2VsZi0+e3BhY2thZ2V9OyAjIEVtcHR5IGRlcAorICAgIHJldHVybiAxIGlmIG5vdCBkZWZpbmVkICRzZWxmLT57YXJjaGVzfTsgICMgRGVwIHdpdGhvdXQgYXJjaCBzcGVjCisKKyAgICBteSAkc2Vlbl9hcmNoID0gMDsKKyAgICBmb3JlYWNoIG15ICRhcmNoIChAeyRzZWxmLT57YXJjaGVzfX0pIHsKKwkkYXJjaD1sYygkYXJjaCk7CisKKwlpZiAoJGFyY2ggPX4gL14hLykgeworCSAgICBteSAkbm90X2FyY2ggPSAkYXJjaDsKKwkgICAgJG5vdF9hcmNoID1+IHMvXiEvLzsKKworCSAgICBpZiAoZGViYXJjaF9pcygkaG9zdF9hcmNoLCAkbm90X2FyY2gpKSB7CisJCSRzZWVuX2FyY2ggPSAwOworCQlsYXN0OworCSAgICB9IGVsc2UgeworCQkjICFhcmNoIGluY2x1ZGVzIGJ5IGRlZmF1bHQgYWxsIG90aGVyIGFyY2hlcworCQkjIHVubGVzcyB0aGV5IGFsc28gYXBwZWFyIGluIGEgIW90aGVyYXJjaAorCQkkc2Vlbl9hcmNoID0gMTsKKwkgICAgfQorCX0gZWxzaWYgKGRlYmFyY2hfaXMoJGhvc3RfYXJjaCwgJGFyY2gpKSB7CisJICAgICRzZWVuX2FyY2ggPSAxOworCSAgICBsYXN0OworCX0KKyAgICB9CisgICAgcmV0dXJuICRzZWVuX2FyY2g7Cit9CisKK3N1YiByZWR1Y2VfYXJjaCB7CisgICAgbXkgKCRzZWxmLCAkaG9zdF9hcmNoKSA9IEBfOworICAgIGlmIChub3QgJHNlbGYtPmFyY2hfaXNfY29uY2VybmVkKCRob3N0X2FyY2gpKSB7CisJJHNlbGYtPnJlc2V0KCk7CisgICAgfSBlbHNlIHsKKwkkc2VsZi0+e2FyY2hlc30gPSB1bmRlZjsKKyAgICB9Cit9CisKK3N1YiBoYXNfYXJjaF9yZXN0cmljdGlvbiB7CisgICAgbXkgKCRzZWxmKSA9IEBfOworICAgIGlmIChkZWZpbmVkICRzZWxmLT57YXJjaGVzfSkgeworCXJldHVybiAkc2VsZi0+e3BhY2thZ2V9OworICAgIH0gZWxzZSB7CisJcmV0dXJuICgpOworICAgIH0KK30KKworc3ViIGdldF9ldmFsdWF0aW9uIHsKKyAgICBteSAoJHNlbGYsICRmYWN0cykgPSBAXzsKKyAgICByZXR1cm4gdW5kZWYgaWYgbm90IGRlZmluZWQgJHNlbGYtPntwYWNrYWdlfTsKKyAgICBteSAoJGNoZWNrLCAkcGFyYW0pID0gJGZhY3RzLT5jaGVja19wYWNrYWdlKCRzZWxmLT57cGFja2FnZX0pOworICAgIGlmICgkY2hlY2spIHsKKwlpZiAoZGVmaW5lZCAkc2VsZi0+e3JlbGF0aW9ufSkgeworCSAgICBpZiAocmVmKCRwYXJhbSkpIHsKKwkJIyBQcm92aWRlZCBwYWNrYWdlcworCQkjIFhYWDogT25jZSBzdXBwb3J0IGZvciB2ZXJzaW9uZWQgcHJvdmlkZXMgaXMgaW4gcGxhY2UsCisJCSMgdGhpcyBwYXJ0IG11c3QgYmUgYWRhcHRlZAorCQlyZXR1cm4gMDsKKwkgICAgfSBlbHNlIHsKKwkJaWYgKGRlZmluZWQoJHBhcmFtKSkgeworCQkgICAgaWYgKHZlcnNpb25fY29tcGFyZV9yZWxhdGlvbigkcGFyYW0sICRzZWxmLT57cmVsYXRpb259LAorCQkJCQkJICRzZWxmLT57dmVyc2lvbn0pKSB7CisJCQlyZXR1cm4gMTsKKwkJICAgIH0gZWxzZSB7CisJCQlyZXR1cm4gMDsKKwkJICAgIH0KKwkJfSBlbHNlIHsKKwkJICAgIHJldHVybiB1bmRlZjsKKwkJfQorCSAgICB9CisJfSBlbHNlIHsKKwkgICAgcmV0dXJuIDE7CisJfQorICAgIH0KKyAgICByZXR1cm4gMDsKK30KKworc3ViIHNpbXBsaWZ5X2RlcHMgeworICAgIG15ICgkc2VsZiwgJGZhY3RzKSA9IEBfOworICAgIG15ICRldmFsID0gJHNlbGYtPmdldF9ldmFsdWF0aW9uKCRmYWN0cyk7CisgICAgJHNlbGYtPnJlc2V0KCkgaWYgZGVmaW5lZCAkZXZhbCBhbmQgJGV2YWwgPT0gMTsKK30KKworc3ViIGlzX2VtcHR5IHsKKyAgICBteSAkc2VsZiA9IHNoaWZ0OworICAgIHJldHVybiBub3QgZGVmaW5lZCAkc2VsZi0+e3BhY2thZ2V9OworfQorCitzdWIgbWVyZ2VfdW5pb24geworICAgIG15ICgkc2VsZiwgJG8pID0gQF87CisgICAgcmV0dXJuIDAgaWYgbm90ICRvLT5pc2EoJ0Rwa2c6OkRlcHM6OlNpbXBsZScpOworICAgIHJldHVybiAwIGlmICRzZWxmLT5pc19lbXB0eSgpIG9yICRvLT5pc19lbXB0eSgpOworICAgIHJldHVybiAwIGlmICRzZWxmLT57cGFja2FnZX0gbmUgJG8tPntwYWNrYWdlfTsKKyAgICByZXR1cm4gMCBpZiBkZWZpbmVkICRzZWxmLT57YXJjaGVzfSBvciBkZWZpbmVkICRvLT57YXJjaGVzfTsKKworICAgIGlmIChub3QgZGVmaW5lZCAkby0+e3JlbGF0aW9ufSBhbmQgZGVmaW5lZCAkc2VsZi0+e3JlbGF0aW9ufSkgeworCSMgVW5pb24gaXMgdGhlIG5vbi12ZXJzaW9uZWQgZGVwZW5kZW5jeQorCSRzZWxmLT57cmVsYXRpb259ID0gdW5kZWY7CisJJHNlbGYtPnt2ZXJzaW9ufSA9IHVuZGVmOworCXJldHVybiAxOworICAgIH0KKworICAgIG15ICRpbXBsaWNhdGlvbiA9ICRzZWxmLT5pbXBsaWVzKCRvKTsKKyAgICBteSAkcmV2X2ltcGxpY2F0aW9uID0gJG8tPmltcGxpZXMoJHNlbGYpOworICAgIGlmIChkZWZpbmVkKCRpbXBsaWNhdGlvbikpIHsKKwlpZiAoJGltcGxpY2F0aW9uKSB7CisJICAgICRzZWxmLT57cmVsYXRpb259ID0gJG8tPntyZWxhdGlvbn07CisJICAgICRzZWxmLT57dmVyc2lvbn0gPSAkby0+e3ZlcnNpb259OworCSAgICByZXR1cm4gMTsKKwl9IGVsc2UgeworCSAgICByZXR1cm4gMDsKKwl9CisgICAgfQorICAgIGlmIChkZWZpbmVkKCRyZXZfaW1wbGljYXRpb24pKSB7CisJaWYgKCRyZXZfaW1wbGljYXRpb24pIHsKKwkgICAgIyBBbHJlYWR5IG1lcmdlZC4uLgorCSAgICByZXR1cm4gMTsKKwl9IGVsc2UgeworCSAgICByZXR1cm4gMDsKKwl9CisgICAgfQorICAgIHJldHVybiAwOworfQorCitwYWNrYWdlIERwa2c6OkRlcHM6Ok11bHRpcGxlOworCis9aGVhZDIgRHBrZzo6RGVwczo6TXVsdGlwbGUKKworVGhpcyBpcyB0aGUgYmFzZSBjbGFzcyBmb3IgRHBrZzo6RGVwczo6e0FORCxPUixVbmlvbn0uIEl0IGltcGxlbWVudHMKK3RoZSBmb2xsb3dpbmcgbWV0aG9kczoKKworPW92ZXIgNAorCis9aXRlbSAkbXVsLT5hZGQoJGRlcCkKKworQWRkcyBhIG5ldyBkZXBlbmRlbmN5IG9iamVjdCBhdCB0aGUgZW5kIG9mIHRoZSBsaXN0LgorCis9YmFjaworCis9Y3V0CisKK3VzZSBzdHJpY3Q7Cit1c2Ugd2FybmluZ3M7CisKK3VzZSBEcGtnOjpFcnJvckhhbmRsaW5nOworCit1c2UgYmFzZSBxdyhEcGtnOjpJbnRlcmZhY2U6OlN0b3JhYmxlKTsKKworc3ViIG5ldyB7CisgICAgbXkgJHRoaXMgPSBzaGlmdDsKKyAgICBteSAkY2xhc3MgPSByZWYoJHRoaXMpIHx8ICR0aGlzOworICAgIG15ICRzZWxmID0geyAnbGlzdCcgPT4gWyBAXyBdIH07CisgICAgYmxlc3MgJHNlbGYsICRjbGFzczsKKyAgICByZXR1cm4gJHNlbGY7Cit9CisKK3N1YiByZXNldCB7CisgICAgbXkgKCRzZWxmKSA9IEBfOworICAgICRzZWxmLT57J2xpc3QnfSA9IFtdOworfQorCitzdWIgYWRkIHsKKyAgICBteSAkc2VsZiA9IHNoaWZ0OworICAgIHB1c2ggQHskc2VsZi0+e2xpc3R9fSwgQF87Cit9CisKK3N1YiBnZXRfZGVwcyB7CisgICAgbXkgJHNlbGYgPSBzaGlmdDsKKyAgICByZXR1cm4gZ3JlcCB7IG5vdCAkXy0+aXNfZW1wdHkoKSB9IEB7JHNlbGYtPntsaXN0fX07Cit9CisKK3N1YiBzb3J0IHsKKyAgICBteSAkc2VsZiA9IHNoaWZ0OworICAgIG15IEByZXMgPSAoKTsKKyAgICBAcmVzID0gc29ydCB7IERwa2c6OkRlcHM6OmRlcHNfY29tcGFyZSgkYSwgJGIpIH0gQHskc2VsZi0+e2xpc3R9fTsKKyAgICAkc2VsZi0+e2xpc3R9ID0gWyBAcmVzIF07Cit9CisKK3N1YiBhcmNoX2lzX2NvbmNlcm5lZCB7CisgICAgbXkgKCRzZWxmLCAkaG9zdF9hcmNoKSA9IEBfOworICAgIG15ICRyZXMgPSAwOworICAgIGZvcmVhY2ggbXkgJGRlcCAoQHskc2VsZi0+e2xpc3R9fSkgeworCSRyZXMgPSAxIGlmICRkZXAtPmFyY2hfaXNfY29uY2VybmVkKCRob3N0X2FyY2gpOworICAgIH0KKyAgICByZXR1cm4gJHJlczsKK30KKworc3ViIHJlZHVjZV9hcmNoIHsKKyAgICBteSAoJHNlbGYsICRob3N0X2FyY2gpID0gQF87CisgICAgbXkgQG5ldzsKKyAgICBmb3JlYWNoIG15ICRkZXAgKEB7JHNlbGYtPntsaXN0fX0pIHsKKwkkZGVwLT5yZWR1Y2VfYXJjaCgkaG9zdF9hcmNoKTsKKwlwdXNoIEBuZXcsICRkZXAgaWYgJGRlcC0+YXJjaF9pc19jb25jZXJuZWQoJGhvc3RfYXJjaCk7CisgICAgfQorICAgICRzZWxmLT57bGlzdH0gPSBbIEBuZXcgXTsKK30KKworc3ViIGhhc19hcmNoX3Jlc3RyaWN0aW9uIHsKKyAgICBteSAoJHNlbGYpID0gQF87CisgICAgbXkgQHJlczsKKyAgICBmb3JlYWNoIG15ICRkZXAgKEB7JHNlbGYtPntsaXN0fX0pIHsKKwlwdXNoIEByZXMsICRkZXAtPmhhc19hcmNoX3Jlc3RyaWN0aW9uKCk7CisgICAgfQorICAgIHJldHVybiBAcmVzOworfQorCisKK3N1YiBpc19lbXB0eSB7CisgICAgbXkgJHNlbGYgPSBzaGlmdDsKKyAgICByZXR1cm4gc2NhbGFyIEB7JHNlbGYtPntsaXN0fX0gPT0gMDsKK30KKworc3ViIG1lcmdlX3VuaW9uIHsKKyAgICBpbnRlcm5lcnIoIlRoZSBtZXRob2QgbWVyZ2VfdW5pb24oKSBpcyBvbmx5IHZhbGlkIGZvciBEcGtnOjpEZXBzOjpTaW1wbGUiKTsKK30KKworcGFja2FnZSBEcGtnOjpEZXBzOjpBTkQ7CisKKz1oZWFkMiBEcGtnOjpEZXBzOjpBTkQKKworVGhpcyBvYmplY3QgcmVwcmVzZW50cyBhIGxpc3Qgb2YgZGVwZW5kZW5jaWVzIHdobyBtdXN0IGJlIG1ldCBhdCB0aGUgc2FtZQordGltZS4KKworPW92ZXIgNAorCis9aXRlbSAkYW5kLT5vdXRwdXQoWyRmaF0pCisKK1RoZSBvdXRwdXQgbWV0aG9kIHVzZXMgIiwgIiB0byBqb2luIHRoZSBsaXN0IG9mIHN1Yi1kZXBlbmRlbmNpZXMuCisKKz1iYWNrCisKKz1jdXQKKwordXNlIHN0cmljdDsKK3VzZSB3YXJuaW5nczsKKwordXNlIGJhc2UgcXcoRHBrZzo6RGVwczo6TXVsdGlwbGUpOworCitzdWIgb3V0cHV0IHsKKyAgICBteSAoJHNlbGYsICRmaCkgPSBAXzsKKyAgICBteSAkcmVzID0gam9pbigiLCAiLCBtYXAgeyAkXy0+b3V0cHV0KCkgfSBncmVwIHsgbm90ICRfLT5pc19lbXB0eSgpIH0gJHNlbGYtPmdldF9kZXBzKCkpOworICAgIGlmIChkZWZpbmVkKCRmaCkpIHsKKwlwcmludCAkZmggJHJlczsKKyAgICB9CisgICAgcmV0dXJuICRyZXM7Cit9CisKK3N1YiBpbXBsaWVzIHsKKyAgICBteSAoJHNlbGYsICRvKSA9IEBfOworICAgICMgSWYgYW55IGluZGl2aWR1YWwgbWVtYmVyIGNhbiBpbXBseSAkbyBvciBOT1QgJG8sIHdlJ3JlIGZpbmUKKyAgICBmb3JlYWNoIG15ICRkZXAgKCRzZWxmLT5nZXRfZGVwcygpKSB7CisJbXkgJGltcGxpY2F0aW9uID0gJGRlcC0+aW1wbGllcygkbyk7CisJcmV0dXJuIDEgaWYgZGVmaW5lZCgkaW1wbGljYXRpb24pICYmICRpbXBsaWNhdGlvbiA9PSAxOworCXJldHVybiAwIGlmIGRlZmluZWQoJGltcGxpY2F0aW9uKSAmJiAkaW1wbGljYXRpb24gPT0gMDsKKyAgICB9CisgICAgIyBJZiBvIGlzIGFuIEFORCwgd2UgbWlnaHQgaGF2ZSBhbiBpbXBsaWNhdGlvbiwgaWYgd2UgZmluZCBhbgorICAgICMgaW1wbGljYXRpb24gd2l0aGluIHVzIGZvciBlYWNoIHByZWRpY2F0ZSBpbiBvCisgICAgaWYgKCRvLT5pc2EoJ0Rwa2c6OkRlcHM6OkFORCcpKSB7CisJbXkgJHN1YnNldCA9IDE7CisJZm9yZWFjaCBteSAkb2RlcCAoJG8tPmdldF9kZXBzKCkpIHsKKwkgICAgbXkgJGZvdW5kID0gMDsKKwkgICAgZm9yZWFjaCBteSAkZGVwICgkc2VsZi0+Z2V0X2RlcHMoKSkgeworCQkkZm91bmQgPSAxIGlmICRkZXAtPmltcGxpZXMoJG9kZXApOworCSAgICB9CisJICAgICRzdWJzZXQgPSAwIGlmIG5vdCAkZm91bmQ7CisJfQorCXJldHVybiAxIGlmICRzdWJzZXQ7CisgICAgfQorICAgIHJldHVybiB1bmRlZjsKK30KKworc3ViIGdldF9ldmFsdWF0aW9uIHsKKyAgICBteSAoJHNlbGYsICRmYWN0cykgPSBAXzsKKyAgICAjIFJldHVybiAxIG9ubHkgaWYgYWxsIG1lbWJlcnMgZXZhbHVhdGVzIHRvIHRydWUKKyAgICAjIFJldHVybiAwIGlmIGF0IGxlYXN0IG9uZSBtZW1iZXIgZXZhbHVhdGVzIHRvIGZhbHNlCisgICAgIyBSZXR1cm4gdW5kZWYgb3RoZXJ3aXNlCisgICAgbXkgJHJlc3VsdCA9IDE7CisgICAgZm9yZWFjaCBteSAkZGVwICgkc2VsZi0+Z2V0X2RlcHMoKSkgeworCW15ICRldmFsID0gJGRlcC0+Z2V0X2V2YWx1YXRpb24oJGZhY3RzKTsKKwlpZiAobm90IGRlZmluZWQgJGV2YWwpIHsKKwkgICAgJHJlc3VsdCA9IHVuZGVmOworCX0gZWxzaWYgKCRldmFsID09IDApIHsKKwkgICAgJHJlc3VsdCA9IDA7CisJICAgIGxhc3Q7CisJfSBlbHNpZiAoJGV2YWwgPT0gMSkgeworCSAgICAjIFN0aWxsIHBvc3NpYmxlCisJfQorICAgIH0KKyAgICByZXR1cm4gJHJlc3VsdDsKK30KKworc3ViIHNpbXBsaWZ5X2RlcHMgeworICAgIG15ICgkc2VsZiwgJGZhY3RzLCBAa25vd25kZXBzKSA9IEBfOworICAgIG15IEBuZXc7CisKK1dISUxFTE9PUDoKKyAgICB3aGlsZSAoQHskc2VsZi0+e2xpc3R9fSkgeworCW15ICRkZXAgPSBzaGlmdCBAeyRzZWxmLT57bGlzdH19OworCW15ICRldmFsID0gJGRlcC0+Z2V0X2V2YWx1YXRpb24oJGZhY3RzKTsKKwluZXh0IGlmIGRlZmluZWQoJGV2YWwpIGFuZCAkZXZhbCA9PSAxOworCWZvcmVhY2ggbXkgJG9kZXAgKEBrbm93bmRlcHMsIEBuZXcpIHsKKwkgICAgbmV4dCBXSElMRUxPT1AgaWYgJG9kZXAtPmltcGxpZXMoJGRlcCk7CisJfQorICAgICAgICAjIFdoZW4gYSBkZXBlbmRlbmN5IGlzIGltcGxpZWQgYnkgYW5vdGhlciBkZXBlbmRlbmN5IHRoYXQKKyAgICAgICAgIyBmb2xsb3dzLCB0aGVuIGludmVydCB0aGVtCisgICAgICAgICMgImEgfCBiLCBjLCBhIiAgYmVjb21lcyAiYSwgYyIgYW5kIG5vdCAiYywgYSIKKyAgICAgICAgbXkgJGkgPSAwOworCWZvcmVhY2ggbXkgJG9kZXAgKEB7JHNlbGYtPntsaXN0fX0pIHsKKyAgICAgICAgICAgIGlmIChkZWZpbmVkICRvZGVwIGFuZCAkb2RlcC0+aW1wbGllcygkZGVwKSkgeworICAgICAgICAgICAgICAgIHNwbGljZSBAeyRzZWxmLT57bGlzdH19LCAkaSwgMTsKKyAgICAgICAgICAgICAgICB1bnNoaWZ0IEB7JHNlbGYtPntsaXN0fX0sICRvZGVwOworICAgICAgICAgICAgICAgIG5leHQgV0hJTEVMT09QOworICAgICAgICAgICAgfQorICAgICAgICAgICAgJGkrKzsKKwl9CisJcHVzaCBAbmV3LCAkZGVwOworICAgIH0KKyAgICAkc2VsZi0+e2xpc3R9ID0gWyBAbmV3IF07Cit9CisKKworcGFja2FnZSBEcGtnOjpEZXBzOjpPUjsKKworPWhlYWQyIERwa2c6OkRlcHM6Ok9SCisKK1RoaXMgb2JqZWN0IHJlcHJlc2VudHMgYSBsaXN0IG9mIGRlcGVuZGVuY2llcyBvZiB3aGljaCBvbmx5IG9uZSBtdXN0IGJlIG1ldAorZm9yIHRoZSBkZXBlbmRlbmN5IHRvIGJlIHRydWUuCisKKz1vdmVyIDQKKworPWl0ZW0gJG9yLT5vdXRwdXQoWyRmaF0pCisKK1RoZSBvdXRwdXQgbWV0aG9kIHVzZXMgIiB8ICIgdG8gam9pbiB0aGUgbGlzdCBvZiBzdWItZGVwZW5kZW5jaWVzLgorCis9YmFjaworCis9Y3V0CisKK3VzZSBzdHJpY3Q7Cit1c2Ugd2FybmluZ3M7CisKK3VzZSBiYXNlIHF3KERwa2c6OkRlcHM6Ok11bHRpcGxlKTsKKworc3ViIG91dHB1dCB7CisgICAgbXkgKCRzZWxmLCAkZmgpID0gQF87CisgICAgbXkgJHJlcyA9IGpvaW4oIiB8ICIsIG1hcCB7ICRfLT5vdXRwdXQoKSB9IGdyZXAgeyBub3QgJF8tPmlzX2VtcHR5KCkgfSAkc2VsZi0+Z2V0X2RlcHMoKSk7CisgICAgaWYgKGRlZmluZWQoJGZoKSkgeworCXByaW50ICRmaCAkcmVzOworICAgIH0KKyAgICByZXR1cm4gJHJlczsKK30KKworc3ViIGltcGxpZXMgeworICAgIG15ICgkc2VsZiwgJG8pID0gQF87CisKKyAgICAjIFNwZWNpYWwgY2FzZSBmb3IgQU5EIHdpdGggYSBzaW5nbGUgbWVtYmVyLCByZXBsYWNlIGl0IGJ5IGl0cyBtZW1iZXIKKyAgICBpZiAoJG8tPmlzYSgnRHBrZzo6RGVwczo6QU5EJykpIHsKKwlteSBAc3ViZGVwcyA9ICRvLT5nZXRfZGVwcygpOworCWlmIChzY2FsYXIoQHN1YmRlcHMpID09IDEpIHsKKwkgICAgJG8gPSAkc3ViZGVwc1swXTsKKwl9CisgICAgfQorCisgICAgIyBJbiBnZW5lcmFsLCBhbiBPUiBkZXBlbmRlbmN5IGNhbid0IGltcGx5IGFueXRoaW5nIGV4Y2VwdCBpZiBlYWNoCisgICAgIyBvZiBpdHMgbWVtYmVyIGltcGxpZXMgYSBtZW1iZXIgaW4gdGhlIG90aGVyIE9SIGRlcGVuZGVuY3kKKyAgICBpZiAoJG8tPmlzYSgnRHBrZzo6RGVwczo6T1InKSkgeworCW15ICRzdWJzZXQgPSAxOworCWZvcmVhY2ggbXkgJGRlcCAoJHNlbGYtPmdldF9kZXBzKCkpIHsKKwkgICAgbXkgJGZvdW5kID0gMDsKKwkgICAgZm9yZWFjaCBteSAkb2RlcCAoJG8tPmdldF9kZXBzKCkpIHsKKwkJJGZvdW5kID0gMSBpZiAkZGVwLT5pbXBsaWVzKCRvZGVwKTsKKwkgICAgfQorCSAgICAkc3Vic2V0ID0gMCBpZiBub3QgJGZvdW5kOworCX0KKwlyZXR1cm4gMSBpZiAkc3Vic2V0OworICAgIH0KKyAgICByZXR1cm4gdW5kZWY7Cit9CisKK3N1YiBnZXRfZXZhbHVhdGlvbiB7CisgICAgbXkgKCRzZWxmLCAkZmFjdHMpID0gQF87CisgICAgIyBSZXR1cm5zIGZhbHNlIGlmIGFsbCBtZW1iZXJzIGV2YWx1YXRlcyB0byAwCisgICAgIyBSZXR1cm5zIHRydWUgaWYgYXQgbGVhc3Qgb25lIG1lbWJlciBldmFsdWF0ZXMgdG8gdHJ1ZQorICAgICMgUmV0dXJucyB1bmRlZiBvdGhlcndpc2UKKyAgICBteSAkcmVzdWx0ID0gMDsKKyAgICBmb3JlYWNoIG15ICRkZXAgKCRzZWxmLT5nZXRfZGVwcygpKSB7CisJbXkgJGV2YWwgPSAkZGVwLT5nZXRfZXZhbHVhdGlvbigkZmFjdHMpOworCWlmIChub3QgZGVmaW5lZCAkZXZhbCkgeworCSAgICAkcmVzdWx0ID0gdW5kZWY7CisJfSBlbHNpZiAoJGV2YWwgPT0gMSkgeworCSAgICAkcmVzdWx0ID0gMTsKKwkgICAgbGFzdDsKKwl9IGVsc2lmICgkZXZhbCA9PSAwKSB7CisJICAgICMgU3RpbGwgcG9zc2libGUgdG8gaGF2ZSBhIGZhbHNlIGV2YWx1YXRpb24KKwl9CisgICAgfQorICAgIHJldHVybiAkcmVzdWx0OworfQorCitzdWIgc2ltcGxpZnlfZGVwcyB7CisgICAgbXkgKCRzZWxmLCAkZmFjdHMpID0gQF87CisgICAgbXkgQG5ldzsKKworV0hJTEVMT09QOgorICAgIHdoaWxlIChAeyRzZWxmLT57bGlzdH19KSB7CisJbXkgJGRlcCA9IHNoaWZ0IEB7JHNlbGYtPntsaXN0fX07CisJbXkgJGV2YWwgPSAkZGVwLT5nZXRfZXZhbHVhdGlvbigkZmFjdHMpOworCWlmIChkZWZpbmVkKCRldmFsKSBhbmQgJGV2YWwgPT0gMSkgeworCSAgICAkc2VsZi0+e2xpc3R9ID0gW107CisJICAgIHJldHVybjsKKwl9CisJZm9yZWFjaCBteSAkb2RlcCAoQG5ldywgQHskc2VsZi0+e2xpc3R9fSkgeworCSAgICBuZXh0IFdISUxFTE9PUCBpZiAkb2RlcC0+aW1wbGllcygkZGVwKTsKKwl9CisJcHVzaCBAbmV3LCAkZGVwOworICAgIH0KKyAgICAkc2VsZi0+e2xpc3R9ID0gWyBAbmV3IF07Cit9CisKK3BhY2thZ2UgRHBrZzo6RGVwczo6VW5pb247CisKKz1oZWFkMiBEcGtnOjpEZXBzOjpVbmlvbgorCitUaGlzIG9iamVjdCByZXByZXNlbnRzIGEgbGlzdCBvZiByZWxhdGlvbnNoaXBzLgorCis9b3ZlciA0CisKKz1pdGVtICR1bmlvbi0+b3V0cHV0KFskZmhdKQorCitUaGUgb3V0cHV0IG1ldGhvZCB1c2VzICIsICIgdG8gam9pbiB0aGUgbGlzdCBvZiByZWxhdGlvbnNoaXBzLgorCis9aXRlbSAkdW5pb24tPmltcGxpZXMoJG90aGVyX2RlcCkKKworPWl0ZW0gJHVuaW9uLT5nZXRfZXZhbHVhdGlvbigkb3RoZXJfZGVwKQorCitUaG9zZSBtZXRob2RzIGFyZSBub3QgbWVhbmluZ2Z1bCBmb3IgdGhpcyBvYmplY3QgYW5kIGFsd2F5cyByZXR1cm4gdW5kZWYuCisKKz1pdGVtICR1bmlvbi0+c2ltcGxpZnlfZGVwcygkZmFjdHMpCisKK1RoZSBzaW1wbGljYXRpb24gaXMgZG9uZSB0byBnZW5lcmF0ZSBhbiB1bmlvbiBvZiBhbGwgdGhlIHJlbGF0aW9uc2hpcHMuCitJdCB1c2VzICRzaW1wbGVfZGVwLT5tZXJnZV91bmlvbigkb3RoZXJfZGVwKSB0byBnZXQgaXRzIGpvYiBkb25lLgorCis9YmFjaworCis9Y3V0CisKK3VzZSBzdHJpY3Q7Cit1c2Ugd2FybmluZ3M7CisKK3VzZSBiYXNlIHF3KERwa2c6OkRlcHM6Ok11bHRpcGxlKTsKKworc3ViIG91dHB1dCB7CisgICAgbXkgKCRzZWxmLCAkZmgpID0gQF87CisgICAgbXkgJHJlcyA9IGpvaW4oIiwgIiwgbWFwIHsgJF8tPm91dHB1dCgpIH0gZ3JlcCB7IG5vdCAkXy0+aXNfZW1wdHkoKSB9ICRzZWxmLT5nZXRfZGVwcygpKTsKKyAgICBpZiAoZGVmaW5lZCgkZmgpKSB7CisJcHJpbnQgJGZoICRyZXM7CisgICAgfQorICAgIHJldHVybiAkcmVzOworfQorCitzdWIgaW1wbGllcyB7CisgICAgIyBJbXBsaWNhdGlvbiB0ZXN0IGFyZSBub3QgdXNlZnVsIG9uIFVuaW9uCisgICAgcmV0dXJuIHVuZGVmOworfQorCitzdWIgZ2V0X2V2YWx1YXRpb24geworICAgICMgRXZhbHVhdGlvbiBhcmUgbm90IHVzZWZ1bCBvbiBVbmlvbgorICAgIHJldHVybiB1bmRlZjsKK30KKworc3ViIHNpbXBsaWZ5X2RlcHMgeworICAgIG15ICgkc2VsZiwgJGZhY3RzKSA9IEBfOworICAgIG15IEBuZXc7CisKK1dISUxFTE9PUDoKKyAgICB3aGlsZSAoQHskc2VsZi0+e2xpc3R9fSkgeworCW15ICRvZGVwID0gc2hpZnQgQHskc2VsZi0+e2xpc3R9fTsKKwlmb3JlYWNoIG15ICRkZXAgKEBuZXcpIHsKKwkgICAgbmV4dCBXSElMRUxPT1AgaWYgJGRlcC0+bWVyZ2VfdW5pb24oJG9kZXApOworCX0KKwlwdXNoIEBuZXcsICRvZGVwOworICAgIH0KKyAgICAkc2VsZi0+e2xpc3R9ID0gWyBAbmV3IF07Cit9CisKK3BhY2thZ2UgRHBrZzo6RGVwczo6S25vd25GYWN0czsKKworPWhlYWQyIERwa2c6OkRlcHM6Oktub3duRmFjdHMKKworVGhpcyBvYmplY3QgcmVwcmVzZW50cyBhIGxpc3Qgb2YgaW5zdGFsbGVkIHBhY2thZ2VzIGFuZCBhIGxpc3Qgb2YgdmlydHVhbAorcGFja2FnZXMgcHJvdmlkZWQgKGJ5IHRoZSBzZXQgb2YgaW5zdGFsbGVkIHBhY2thZ2VzKS4KKworPW92ZXIgNAorCis9aXRlbSBteSAkZmFjdHMgPSBEcGtnOjpEZXBzOjpLbm93bkZhY3RzLT5uZXcoKTsKKworQ3JlYXRlcyBhIG5ldyBvYmplY3QuCisKKz1jdXQKKwordXNlIHN0cmljdDsKK3VzZSB3YXJuaW5nczsKKworc3ViIG5ldyB7CisgICAgbXkgJHRoaXMgPSBzaGlmdDsKKyAgICBteSAkY2xhc3MgPSByZWYoJHRoaXMpIHx8ICR0aGlzOworICAgIG15ICRzZWxmID0geyAncGtnJyA9PiB7fSwgJ3ZpcnR1YWxwa2cnID0+IHt9IH07CisgICAgYmxlc3MgJHNlbGYsICRjbGFzczsKKyAgICByZXR1cm4gJHNlbGY7Cit9CisKKz1pdGVtICRmYWN0cy0+YWRkX2luc3RhbGxlZF9wYWNrYWdlKCRwYWNrYWdlLCAkdmVyc2lvbikKKworUmVjb3JkcyB0aGF0IHRoZSBnaXZlbiB2ZXJzaW9uIG9mIHRoZSBwYWNrYWdlIGlzIGluc3RhbGxlZC4gSWYgJHZlcnNpb24gaXMKK3VuZGVmaW5lZCB3ZSBrbm93IHRoYXQgdGhlIHBhY2thZ2UgaXMgaW5zdGFsbGVkIGJ1dCB3ZSBkb24ndCBrbm93IHdoaWNoCit2ZXJzaW9uIGl0IGlzLgorCis9Y3V0CisKK3N1YiBhZGRfaW5zdGFsbGVkX3BhY2thZ2UgeworICAgIG15ICgkc2VsZiwgJHBrZywgJHZlcikgPSBAXzsKKyAgICAkc2VsZi0+e3BrZ317JHBrZ30gPSAkdmVyOworfQorCis9aXRlbSAkZmFjdHMtPmFkZF9wcm92aWRlZF9wYWNrYWdlKCR2aXJ0dWFsLCAkcmVsYXRpb24sICR2ZXJzaW9uLCAkYnkpCisKK1JlY29yZHMgdGhhdCB0aGUgIiRieSIgcGFja2FnZSBwcm92aWRlcyB0aGUgJHZpcnR1YWwgcGFja2FnZS4gJHJlbGF0aW9uCithbmQgJHZlcnNpb24gY29ycmVzcG9uZCB0byB0aGUgYXNzb2NpYXRlZCByZWxhdGlvbiBnaXZlbiBpbiB0aGUgUHJvdmlkZXMKK2ZpZWxkLiBUaGlzIG1pZ2h0IGJlIHVzZWQgaW4gdGhlIGZ1dHVyZSBmb3IgdmVyc2lvbmVkIHByb3ZpZGVzLgorCis9Y3V0CisKK3N1YiBhZGRfcHJvdmlkZWRfcGFja2FnZSB7CisgICAgbXkgKCRzZWxmLCAkcGtnLCAkcmVsLCAkdmVyLCAkYnkpID0gQF87CisgICAgaWYgKG5vdCBleGlzdHMgJHNlbGYtPnt2aXJ0dWFscGtnfXskcGtnfSkgeworCSRzZWxmLT57dmlydHVhbHBrZ317JHBrZ30gPSBbXTsKKyAgICB9CisgICAgcHVzaCBAeyRzZWxmLT57dmlydHVhbHBrZ317JHBrZ319LCBbICRieSwgJHJlbCwgJHZlciBdOworfQorCis9aXRlbSBteSAoJGNoZWNrLCAkcGFyYW0pID0gJGZhY3RzLT5jaGVja19wYWNrYWdlKCRwYWNrYWdlKQorCiskY2hlY2sgaXMgb25lIHdoZW4gdGhlIHBhY2thZ2UgaXMgZm91bmQuIEZvciBhIHJlYWwgcGFja2FnZSwgJHBhcmFtCitjb250YWlucyB0aGUgdmVyc2lvbi4gRm9yIGEgdmlydHVhbCBwYWNrYWdlLCAkcGFyYW0gY29udGFpbnMgYW4gYXJyYXkKK3JlZmVyZW5jZSBjb250YWluaW5nIHRoZSBsaXN0IG9mIHBhY2thZ2VzIHRoYXQgcHJvdmlkZSBpdCAoZWFjaCBwYWNrYWdlIGlzCitsaXN0ZWQgYXMgWyAkcHJvdmlkZXIsICRyZWxhdGlvbiwgJHZlcnNpb24gXSkuCisKKz1iYWNrCisKKz1jdXQKKworc3ViIGNoZWNrX3BhY2thZ2UgeworICAgIG15ICgkc2VsZiwgJHBrZykgPSBAXzsKKyAgICBpZiAoZXhpc3RzICRzZWxmLT57cGtnfXskcGtnfSkgeworCXJldHVybiAoMSwgJHNlbGYtPntwa2d9eyRwa2d9KTsKKyAgICB9CisgICAgaWYgKGV4aXN0cyAkc2VsZi0+e3ZpcnR1YWxwa2d9eyRwa2d9KSB7CisJcmV0dXJuICgxLCAkc2VsZi0+e3ZpcnR1YWxwa2d9eyRwa2d9KTsKKyAgICB9CisgICAgcmV0dXJuICgwLCB1bmRlZik7Cit9CisKKz1oZWFkMSBDSEFOR0VTCisKKz1oZWFkMiBWZXJzaW9uIDEuMDEKKworPW92ZXIKKworPWl0ZW0gKiBBZGQgbmV3ICRkZXAtPnJlc2V0KCkgbWV0aG9kIHRoYXQgYWxsIGRlcGVuZGVuY3kgb2JqZWN0cyBzdXBwb3J0LgorCis9YmFjaworCis9Y3V0CisKKzE7CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvRHBrZy9FcnJvckhhbmRsaW5nLnBtIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL0Rwa2cvRXJyb3JIYW5kbGluZy5wbQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iZGIzZmUzCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL0Rwa2cvRXJyb3JIYW5kbGluZy5wbQpAQCAtMCwwICsxLDExOCBAQAorIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorIworIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorIworIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKworcGFja2FnZSBEcGtnOjpFcnJvckhhbmRsaW5nOworCit1c2Ugc3RyaWN0OwordXNlIHdhcm5pbmdzOworCitvdXIgJFZFUlNJT04gPSAiMC4wMSI7CisKK3VzZSBEcGtnOwordXNlIERwa2c6OkdldHRleHQ7CisKK3VzZSBiYXNlIHF3KEV4cG9ydGVyKTsKK291ciBARVhQT1JUID0gcXcocmVwb3J0X29wdGlvbnMgaW5mbyB3YXJuaW5nIGVycm9yIGVycm9ybXNnCisgICAgICAgICAgICAgICAgIHN5c2VyciBpbnRlcm5lcnIgc3VicHJvY2VyciB1c2FnZWVyciBzeW50YXhlcnIpOworb3VyIEBFWFBPUlRfT0sgPSBxdyhyZXBvcnQpOworCitteSAkcXVpZXRfd2FybmluZ3MgPSAwOworbXkgJGluZm9fZmggPSBcKlNURE9VVDsKKworc3ViIHJlcG9ydF9vcHRpb25zCit7CisgICAgbXkgKCVvcHRpb25zKSA9IEBfOworCisgICAgaWYgKGV4aXN0cyAkb3B0aW9uc3txdWlldF93YXJuaW5nc30pIHsKKyAgICAgICAgJHF1aWV0X3dhcm5pbmdzID0gJG9wdGlvbnN7cXVpZXRfd2FybmluZ3N9OworICAgIH0KKyAgICBpZiAoZXhpc3RzICRvcHRpb25ze2luZm9fZmh9KSB7CisgICAgICAgICRpbmZvX2ZoID0gJG9wdGlvbnN7aW5mb19maH07CisgICAgfQorfQorCitzdWIgcmVwb3J0KEApCit7CisgICAgbXkgKCR0eXBlLCAkbXNnKSA9IChzaGlmdCwgc2hpZnQpOworCisgICAgJG1zZyA9IHNwcmludGYoJG1zZywgQF8pIGlmIChAXyk7CisgICAgcmV0dXJuICIkcHJvZ25hbWU6ICR0eXBlOiAkbXNnXG4iOworfQorCitzdWIgaW5mbygkO0ApCit7CisgICAgcHJpbnQgJGluZm9fZmggcmVwb3J0KF9nKCJpbmZvIiksIEBfKSBpZiAoISRxdWlldF93YXJuaW5ncyk7Cit9CisKK3N1YiB3YXJuaW5nKCQ7QCkKK3sKKyAgICB3YXJuIHJlcG9ydChfZygid2FybmluZyIpLCBAXykgaWYgKCEkcXVpZXRfd2FybmluZ3MpOworfQorCitzdWIgc3lzZXJyKCQ7QCkKK3sKKyAgICBteSAkbXNnID0gc2hpZnQ7CisgICAgZGllIHJlcG9ydChfZygiZXJyb3IiKSwgIiRtc2c6ICQhIiwgQF8pOworfQorCitzdWIgZXJyb3IoJDtAKQoreworICAgIGRpZSByZXBvcnQoX2coImVycm9yIiksIEBfKTsKK30KKworc3ViIGVycm9ybXNnKCQ7QCkKK3sKKyAgICBwcmludCBTVERFUlIgcmVwb3J0KF9nKCJlcnJvciIpLCBAXyk7Cit9CisKK3N1YiBpbnRlcm5lcnIoJDtAKQoreworICAgIGRpZSByZXBvcnQoX2coImludGVybmFsIGVycm9yIiksIEBfKTsKK30KKworc3ViIHN1YnByb2NlcnIoQCkKK3sKKyAgICBteSAoJHApID0gKHNoaWZ0KTsKKworICAgICRwID0gc3ByaW50ZigkcCwgQF8pIGlmIChAXyk7CisKKyAgICByZXF1aXJlIFBPU0lYOworCisgICAgaWYgKFBPU0lYOjpXSUZFWElURUQoJD8pKSB7CisJZXJyb3IoX2coIiVzIGdhdmUgZXJyb3IgZXhpdCBzdGF0dXMgJXMiKSwgJHAsIFBPU0lYOjpXRVhJVFNUQVRVUygkPykpOworICAgIH0gZWxzaWYgKFBPU0lYOjpXSUZTSUdOQUxFRCgkPykpIHsKKwllcnJvcihfZygiJXMgZGllZCBmcm9tIHNpZ25hbCAlcyIpLCAkcCwgUE9TSVg6OldURVJNU0lHKCQ/KSk7CisgICAgfSBlbHNlIHsKKwllcnJvcihfZygiJXMgZmFpbGVkIHdpdGggdW5rbm93biBleGl0IGNvZGUgJWQiKSwgJHAsICQ/KTsKKyAgICB9Cit9CisKK3N1YiB1c2FnZWVycihAKQoreworICAgIG15ICgkbXNnKSA9IChzaGlmdCk7CisKKyAgICAkbXNnID0gc3ByaW50ZigkbXNnLCBAXykgaWYgKEBfKTsKKyAgICB3YXJuICIkcHJvZ25hbWU6ICRtc2dcblxuIjsKKyAgICAjIFhYWDogYWNjZXNzIHRvIG1haW4gbmFtZXNwYWNlCisgICAgbWFpbjo6dXNhZ2UoKTsKKyAgICBleGl0KDIpOworfQorCitzdWIgc3ludGF4ZXJyIHsKKyAgICBteSAoJGZpbGUsICRtc2cpID0gKHNoaWZ0LCBzaGlmdCk7CisKKyAgICAkbXNnID0gc3ByaW50ZigkbXNnLCBAXykgaWYgKEBfKTsKKyAgICBlcnJvcihfZygic3ludGF4IGVycm9yIGluICVzIGF0IGxpbmUgJWQ6ICVzIiksICRmaWxlLCAkLiwgJG1zZyk7Cit9CisKKzE7CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvRHBrZy9FeGl0LnBtIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL0Rwa2cvRXhpdC5wbQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42YmJmMGZlCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL0Rwa2cvRXhpdC5wbQpAQCAtMCwwICsxLDM0IEBACisjIENvcHlyaWdodCDCqSAyMDAyIEFkYW0gSGVhdGggPGRvb2dpZUBkZWJpYW4ub3JnPgorIworIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorIworIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorIworIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKworcGFja2FnZSBEcGtnOjpFeGl0OworCit1c2Ugc3RyaWN0OwordXNlIHdhcm5pbmdzOworCitvdXIgJFZFUlNJT04gPSAiMS4wMCI7CisKK291ciBAaGFuZGxlcnMgPSAoKTsKK3N1YiBleGl0X2hhbmRsZXIgeworICAgICYkXygpIGZvcmVhY2ggKHJldmVyc2UgQGhhbmRsZXJzKTsKKyAgICBleGl0KDEyNyk7Cit9CisKKyRTSUd7J0lOVCd9ID0gXCZleGl0X2hhbmRsZXI7CiskU0lHeydIVVAnfSA9IFwmZXhpdF9oYW5kbGVyOworJFNJR3snUVVJVCd9ID0gXCZleGl0X2hhbmRsZXI7CisKKyMgdmltOiBzZXQgZXQgc3c9NCB0cz04CisxOwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL0Rwa2cvR2V0dGV4dC5wbSBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9EcGtnL0dldHRleHQucG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjU4Njg2OQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9EcGtnL0dldHRleHQucG0KQEAgLTAsMCArMSw2NiBAQAorIyBDb3BpZWQgZnJvbSAvdXNyL3NoYXJlL3Blcmw1L0RlYmNvbmYvR2V0dGV4dC5wbQorIworIyBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyMgbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisjIGFyZSBtZXQ6CisjIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisjICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyMgMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyMgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorIyAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorIworIyBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFVVEhPUlMgQU5EIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECisjIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorIyBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQorIyBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBBVVRIT1JTIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUKKyMgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyMgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMKKyMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCisjIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCisjIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkKKyMgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgorIyBTVUNIIERBTUFHRS4KKworcGFja2FnZSBEcGtnOjpHZXR0ZXh0OworCit1c2Ugc3RyaWN0OwordXNlIHdhcm5pbmdzOworCitvdXIgJFZFUlNJT04gPSAiMS4wMCI7CisKK0JFR0lOIHsKKwlldmFsICd1c2UgTG9jYWxlOjpnZXR0ZXh0JzsKKwlpZiAoJEApIHsKKwkJZXZhbCBxeworCQkJc3ViIF9nIHsKKwkJCQlyZXR1cm4gc2hpZnQ7CisJCQl9CisJCQlzdWIgdGV4dGRvbWFpbiB7CisJCQl9CisJCQlzdWIgbmdldHRleHQgeworCQkJCWlmICgkX1syXSA9PSAxKSB7CisJCQkJCXJldHVybiAkX1swXTsKKwkJCQl9IGVsc2UgeworCQkJCQlyZXR1cm4gJF9bMV07CisJCQkJfQorCQkJfQorCQkJc3ViIFBfIHsKKwkJCQlyZXR1cm4gbmdldHRleHQoQF8pOworCQkJfQorCQl9OworCX0gZWxzZSB7CisJCWV2YWwgcXsKKwkJCXN1YiBfZyB7CisJCQkJcmV0dXJuIGdldHRleHQoc2hpZnQpOworCQkJfQorCQkJc3ViIFBfIHsKKwkJCQlyZXR1cm4gbmdldHRleHQoQF8pOworCQkJfQorCQl9OworCX0KK30KKwordXNlIGJhc2UgcXcoRXhwb3J0ZXIpOworb3VyIEBFWFBPUlQ9cXcoX2cgUF8gdGV4dGRvbWFpbiBuZ2V0dGV4dCk7CisKKzE7CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvRHBrZy9JUEMucG0gYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvRHBrZy9JUEMucG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjgzOTc3MQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9EcGtnL0lQQy5wbQpAQCAtMCwwICsxLDM3MSBAQAorIyBDb3B5cmlnaHQgwqkgMjAwOC0yMDA5IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KKyMgQ29weXJpZ2h0IMKpIDIwMDggRnJhbmsgTGljaHRlbmhlbGQgPGRqcGlnQGRlYmlhbi5vcmc+CisjCisjIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisjIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisjIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisjIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisjCisjIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisjIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisjCisjIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisjIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorCitwYWNrYWdlIERwa2c6OklQQzsKKwordXNlIHN0cmljdDsKK3VzZSB3YXJuaW5nczsKKworb3VyICRWRVJTSU9OID0gIjEuMDAiOworCit1c2UgRHBrZzo6RXJyb3JIYW5kbGluZzsKK3VzZSBEcGtnOjpHZXR0ZXh0OworCit1c2UgYmFzZSBxdyhFeHBvcnRlcik7CitvdXIgQEVYUE9SVCA9IHF3KHNwYXduIHdhaXRfY2hpbGQpOworCis9ZW5jb2RpbmcgdXRmOAorCis9aGVhZDEgTkFNRQorCitEcGtnOjpJUEMgLSBoZWxwZXIgZnVuY3Rpb25zIGZvciBJUEMKKworPWhlYWQxIERFU0NSSVBUSU9OCisKK0Rwa2c6OklQQyBvZmZlcnMgaGVscGVyIGZ1bmN0aW9ucyB0byBhbGxvdyB5b3UgdG8gZXhlY3V0ZQorb3RoZXIgcHJvZ3JhbXMgaW4gYW4gZWFzeSwgeWV0IGZsZXhpYmxlIHdheSwgd2hpbGUgaGlkaW5nCithbGwgdGhlIGdvcnkgZGV0YWlscyBvZiBJUEMgKEludGVyLVByb2Nlc3MgQ29tbXVuaWNhdGlvbikKK2Zyb20geW91LgorCis9aGVhZDEgTUVUSE9EUworCis9b3ZlciA0CisKKz1pdGVtIHNwYXduCisKK0NyZWF0ZXMgYSBjaGlsZCBwcm9jZXNzIGFuZCBleGVjdXRlcyBhbm90aGVyIHByb2dyYW0gaW4gaXQuCitUaGUgYXJndW1lbnRzIGFyZSBpbnRlcnByZXRlZCBhcyBhIGhhc2ggb2Ygb3B0aW9ucywgc3BlY2lmeWluZworaG93IHRvIGhhbmRsZSB0aGUgaW4gYW5kIG91dHB1dCBvZiB0aGUgcHJvZ3JhbSB0byBleGVjdXRlLgorUmV0dXJucyB0aGUgcGlkIG9mIHRoZSBjaGlsZCBwcm9jZXNzICh1bmxlc3MgdGhlIHdhaXRfY2hpbGQKK29wdGlvbiB3YXMgZ2l2ZW4pLgorCitBbnkgZXJyb3Igd2lsbCBjYXVzZSB0aGUgZnVuY3Rpb24gdG8gZXhpdCB3aXRoIG9uZSBvZiB0aGUKK0Rwa2c6OkVycm9ySGFuZGxpbmcgZnVuY3Rpb25zLgorCitPcHRpb25zOgorCis9b3ZlciA0CisKKz1pdGVtIGV4ZWMKKworQ2FuIGJlIGVpdGhlciBhIHNjYWxhciwgaS5lLiB0aGUgbmFtZSBvZiB0aGUgcHJvZ3JhbSB0byBiZQorZXhlY3V0ZWQsIG9yIGFuIGFycmF5IHJlZmVyZW5jZSwgaS5lLiB0aGUgbmFtZSBvZiB0aGUgcHJvZ3JhbQorcGx1cyBhZGRpdGlvbmFsIGFyZ3VtZW50cy4gTm90ZSB0aGF0IHRoZSBwcm9ncmFtIHdpbGwgbmV2ZXIgYmUKK2V4ZWN1dGVkIHZpYSB0aGUgc2hlbGwsIHNvIHlvdSBjYW4ndCBzcGVjaWZ5IGFkZGl0aW9uYWwgYXJndW1lbnRzCitpbiB0aGUgc2NhbGFyIHN0cmluZyBhbmQgeW91IGNhbid0IHVzZSBhbnkgc2hlbGwgZmFjaWxpdGllcyBsaWtlCitnbG9iYmluZy4KKworTWFuZGF0b3J5IE9wdGlvbi4KKworPWl0ZW0gZnJvbV9maWxlLCB0b19maWxlLCBlcnJvcl90b19maWxlCisKK0ZpbGVuYW1lIGFzIHNjYWxhci4gU3RhbmRhcmQgaW5wdXQvb3V0cHV0L2Vycm9yIG9mIHRoZQorY2hpbGQgcHJvY2VzcyB3aWxsIGJlIHJlZGlyZWN0ZWQgdG8gdGhlIGZpbGUgc3BlY2lmaWVkLgorCis9aXRlbSBmcm9tX2hhbmRsZSwgdG9faGFuZGxlLCBlcnJvcl90b19oYW5kbGUKKworRmlsZWhhbmRsZS4gU3RhbmRhcmQgaW5wdXQvb3V0cHV0L2Vycm9yIG9mIHRoZSBjaGlsZCBwcm9jZXNzIHdpbGwgYmUKK2R1cCdlZCBmcm9tIHRoZSBoYW5kbGUuCisKKz1pdGVtIGZyb21fcGlwZSwgdG9fcGlwZSwgZXJyb3JfdG9fcGlwZQorCitTY2FsYXIgcmVmZXJlbmNlIG9yIG9iamVjdCBiYXNlZCBvbiBJTzo6SGFuZGxlLiBBIHBpcGUgd2lsbCBiZSBvcGVuZWQgZm9yCitlYWNoIG9mIHRoZSB0d28gb3B0aW9ucyBhbmQgZWl0aGVyIHRoZSByZWFkaW5nIChDPHRvX3BpcGU+IGFuZAorQzxlcnJvcl90b19waXBlPikgb3IgdGhlIHdyaXRpbmcgZW5kIChDPGZyb21fcGlwZT4pIHdpbGwgYmUgcmV0dXJuZWQgaW4KK3RoZSByZWZlcmVuY2VkIHNjYWxhci4gU3RhbmRhcmQgaW5wdXQvb3V0cHV0L2Vycm9yIG9mIHRoZSBjaGlsZCBwcm9jZXNzCit3aWxsIGJlIGR1cCdlZCB0byB0aGUgb3RoZXIgZW5kcyBvZiB0aGUgcGlwZXMuCisKKz1pdGVtIGZyb21fc3RyaW5nLCB0b19zdHJpbmcsIGVycm9yX3RvX3N0cmluZworCitTY2FsYXIgcmVmZXJlbmNlLiBTdGFuZGFyZCBpbnB1dC9vdXRwdXQvZXJyb3Igb2YgdGhlIGNoaWxkCitwcm9jZXNzIHdpbGwgYmUgcmVkaXJlY3RlZCB0byB0aGUgc3RyaW5nIGdpdmVuIGFzIHJlZmVyZW5jZS4gTm90ZQordGhhdCBpdCB3b3VsZG4ndCBiZSBzdHJpY3RseSBuZWNlc3NhcnkgdG8gdXNlIGEgc2NhbGFyIHJlZmVyZW5jZQorZm9yIEM8ZnJvbV9zdHJpbmc+LCBhcyB0aGUgc3RyaW5nIGlzIG5vdCBtb2RpZmllZCBpbiBhbnkgd2F5LiBUaGlzIHdhcworY2hvc2VuIG9ubHkgZm9yIHJlYXNvbnMgb2Ygc3ltbWV0cnkgd2l0aCBDPHRvX3N0cmluZz4gYW5kCitDPGVycm9yX3RvX3N0cmluZz4uIEM8dG9fc3RyaW5nPiBhbmQgQzxlcnJvcl90b19zdHJpbmc+IGltcGx5IHRoZQorQzx3YWl0X2NoaWxkPiBvcHRpb24uCisKKz1pdGVtIHdhaXRfY2hpbGQKKworU2NhbGFyLiBJZiBjb250YWluaW5nIGEgdHJ1ZSB2YWx1ZSwgd2FpdF9jaGlsZCgpIHdpbGwgYmUgY2FsbGVkIGJlZm9yZQorcmV0dXJuaW5nLiBUaGUgcmV0dXJuIHZhbHVlIHdpbGwgb2Ygc3Bhd24oKSB3aWxsIGJlIGEgdHJ1ZSB2YWx1ZSwKK2J1dCBub3QgdGhlIHBpZC4KKworPWl0ZW0gbm9jaGVjaworCitTY2FsYXIuIE9wdGlvbiBvZiB0aGUgd2FpdF9jaGlsZCgpIGNhbGwuCisKKz1pdGVtIHRpbWVvdXQKKworU2NhbGFyLiBPcHRpb24gb2YgdGhlIHdhaXRfY2hpbGQoKSBjYWxsLgorCis9aXRlbSBjaGRpcgorCitTY2FsYXIuIFRoZSBjaGlsZCBwcm9jZXNzIHdpbGwgY2hkaXIgaW4gdGhlIGluZGljYXRlZCBkaXJlY3RvcnkgYmVmb3JlCitjYWxsaW5nIGV4ZWMuCisKKz1pdGVtIGVudgorCitIYXNoIHJlZmVyZW5jZS4gVGhlIGNoaWxkIHByb2Nlc3Mgd2lsbCBwb3B1bGF0ZSAlRU5WIHdpdGggdGhlIGl0ZW1zIG9mIHRoZQoraGFzaCBiZWZvcmUgY2FsbGluZyBleGVjLiBUaGlzIGFsbG93cyBleHBvcnRpbmcgZW52aXJvbm1lbnQgdmFyaWFibGVzLgorCis9aXRlbSBkZWxldGVfZW52CisKK0FycmF5IHJlZmVyZW5jZS4gVGhlIGNoaWxkIHByb2Nlc3Mgd2lsbCByZW1vdmUgYWxsIGVudmlyb25tZW50IHZhcmlhYmxlcworbGlzdGVkIGluIHRoZSBhcnJheSBiZWZvcmUgY2FsbGluZyBleGVjLgorCis9YmFjaworCis9Y3V0CisKK3N1YiBfc2FuaXR5X2NoZWNrX29wdHMgeworICAgIG15ICglb3B0cykgPSBAXzsKKworICAgIGludGVybmVycigiZXhlYyBwYXJhbWV0ZXIgaXMgbWFuZGF0b3J5IGluIHNwYXduKCkiKQorCXVubGVzcyAkb3B0c3siZXhlYyJ9OworCisgICAgbXkgJHRvID0gbXkgJGVycm9yX3RvID0gbXkgJGZyb20gPSAwOworICAgIGZvcmVhY2ggKHF3KGZpbGUgaGFuZGxlIHN0cmluZyBwaXBlKSkgeworCSR0bysrIGlmICRvcHRzeyJ0b18kXyJ9OworCSRlcnJvcl90bysrIGlmICRvcHRzeyJlcnJvcl90b18kXyJ9OworCSRmcm9tKysgaWYgJG9wdHN7ImZyb21fJF8ifTsKKyAgICB9CisgICAgaW50ZXJuZXJyKCJub3QgbW9yZSB0aGFuIG9uZSBvZiB0b18qIHBhcmFtZXRlcnMgaXMgYWxsb3dlZCIpCisJaWYgJHRvID4gMTsKKyAgICBpbnRlcm5lcnIoIm5vdCBtb3JlIHRoYW4gb25lIG9mIGVycm9yX3RvXyogcGFyYW1ldGVycyBpcyBhbGxvd2VkIikKKwlpZiAkZXJyb3JfdG8gPiAxOworICAgIGludGVybmVycigibm90IG1vcmUgdGhhbiBvbmUgb2YgZnJvbV8qIHBhcmFtZXRlcnMgaXMgYWxsb3dlZCIpCisJaWYgJGZyb20gPiAxOworCisgICAgZm9yZWFjaCAocXcodG9fc3RyaW5nIGVycm9yX3RvX3N0cmluZyBmcm9tX3N0cmluZykpIHsKKwlpZiAoZXhpc3RzICRvcHRzeyRffSBhbmQKKwkgICAgKCFyZWYoJG9wdHN7JF99KSBvciByZWYoJG9wdHN7JF99KSBuZSAnU0NBTEFSJykpIHsKKwkgICAgaW50ZXJuZXJyKCJwYXJhbWV0ZXIgJF8gbXVzdCBiZSBhIHNjYWxhciByZWZlcmVuY2UiKTsKKwl9CisgICAgfQorCisgICAgZm9yZWFjaCAocXcodG9fcGlwZSBlcnJvcl90b19waXBlIGZyb21fcGlwZSkpIHsKKwlpZiAoZXhpc3RzICRvcHRzeyRffSBhbmQKKwkgICAgKCFyZWYoJG9wdHN7JF99KSBvciAocmVmKCRvcHRzeyRffSkgbmUgJ1NDQUxBUicgYW5kCisJCQkJIG5vdCAkb3B0c3skX30tPmlzYSgiSU86OkhhbmRsZSIpKSkpIHsKKwkgICAgaW50ZXJuZXJyKCJwYXJhbWV0ZXIgJF8gbXVzdCBiZSBhIHNjYWxhciByZWZlcmVuY2Ugb3IgYW4gSU86OkhhbmRsZSBvYmplY3QiKTsKKwl9CisgICAgfQorCisgICAgaWYgKGV4aXN0cyAkb3B0c3sidGltZW91dCJ9IGFuZCBkZWZpbmVkKCRvcHRzeyJ0aW1lb3V0In0pIGFuZAorICAgICAgICAkb3B0c3sidGltZW91dCJ9ICF+IC9eXGQrJC8pIHsKKwlpbnRlcm5lcnIoInBhcmFtZXRlciB0aW1lb3V0IG11c3QgYmUgYW4gaW50ZWdlciIpOworICAgIH0KKworICAgIGlmIChleGlzdHMgJG9wdHN7ImVudiJ9IGFuZCByZWYoJG9wdHN7ImVudiJ9KSBuZSAnSEFTSCcpIHsKKwlpbnRlcm5lcnIoInBhcmFtZXRlciBlbnYgbXVzdCBiZSBhIGhhc2ggcmVmZXJlbmNlIik7CisgICAgfQorCisgICAgaWYgKGV4aXN0cyAkb3B0c3siZGVsZXRlX2VudiJ9IGFuZCByZWYoJG9wdHN7ImRlbGV0ZV9lbnYifSkgbmUgJ0FSUkFZJykgeworCWludGVybmVycigicGFyYW1ldGVyIGRlbGV0ZV9lbnYgbXVzdCBiZSBhbiBhcnJheSByZWZlcmVuY2UiKTsKKyAgICB9CisKKyAgICByZXR1cm4gJW9wdHM7Cit9CisKK3N1YiBzcGF3biB7CisgICAgbXkgKCVvcHRzKSA9IF9zYW5pdHlfY2hlY2tfb3B0cyhAXyk7CisgICAgJG9wdHN7ImNsb3NlX2luX2NoaWxkIn0gfHw9IFtdOworICAgIG15IEBwcm9nOworICAgIGlmIChyZWYoJG9wdHN7ImV4ZWMifSkgPX4gL0FSUkFZLykgeworCXB1c2ggQHByb2csIEB7JG9wdHN7ImV4ZWMifX07CisgICAgfSBlbHNpZiAobm90IHJlZigkb3B0c3siZXhlYyJ9KSkgeworCXB1c2ggQHByb2csICRvcHRzeyJleGVjIn07CisgICAgfSBlbHNlIHsKKwlpbnRlcm5lcnIoImludmFsaWQgZXhlYyBwYXJhbWV0ZXIgaW4gc3Bhd24oKSIpOworICAgIH0KKyAgICBteSAoJGZyb21fc3RyaW5nX3BpcGUsICR0b19zdHJpbmdfcGlwZSwgJGVycm9yX3RvX3N0cmluZ19waXBlKTsKKyAgICBpZiAoJG9wdHN7InRvX3N0cmluZyJ9KSB7CisJJG9wdHN7InRvX3BpcGUifSA9IFwkdG9fc3RyaW5nX3BpcGU7CisJJG9wdHN7IndhaXRfY2hpbGQifSA9IDE7CisgICAgfQorICAgIGlmICgkb3B0c3siZXJyb3JfdG9fc3RyaW5nIn0pIHsKKwkkb3B0c3siZXJyb3JfdG9fcGlwZSJ9ID0gXCRlcnJvcl90b19zdHJpbmdfcGlwZTsKKwkkb3B0c3sid2FpdF9jaGlsZCJ9ID0gMTsKKyAgICB9CisgICAgaWYgKCRvcHRzeyJmcm9tX3N0cmluZyJ9KSB7CisJJG9wdHN7ImZyb21fcGlwZSJ9ID0gXCRmcm9tX3N0cmluZ19waXBlOworICAgIH0KKyAgICAjIENyZWF0ZSBwaXBlcyBpZiBuZWVkZWQKKyAgICBteSAoJGlucHV0X3BpcGUsICRvdXRwdXRfcGlwZSwgJGVycm9yX3BpcGUpOworICAgIGlmICgkb3B0c3siZnJvbV9waXBlIn0pIHsKKwlwaXBlKCRvcHRzeyJmcm9tX2hhbmRsZSJ9LCAkaW5wdXRfcGlwZSkgfHwKKwkJc3lzZXJyKF9nKCJwaXBlIGZvciAlcyIpLCAiQHByb2ciKTsKKwkkeyRvcHRzeyJmcm9tX3BpcGUifX0gPSAkaW5wdXRfcGlwZTsKKwlwdXNoIEB7JG9wdHN7ImNsb3NlX2luX2NoaWxkIn19LCAkaW5wdXRfcGlwZTsKKyAgICB9CisgICAgaWYgKCRvcHRzeyJ0b19waXBlIn0pIHsKKwlwaXBlKCRvdXRwdXRfcGlwZSwgJG9wdHN7InRvX2hhbmRsZSJ9KSB8fAorCQlzeXNlcnIoX2coInBpcGUgZm9yICVzIiksICJAcHJvZyIpOworCSR7JG9wdHN7InRvX3BpcGUifX0gPSAkb3V0cHV0X3BpcGU7CisJcHVzaCBAeyRvcHRzeyJjbG9zZV9pbl9jaGlsZCJ9fSwgJG91dHB1dF9waXBlOworICAgIH0KKyAgICBpZiAoJG9wdHN7ImVycm9yX3RvX3BpcGUifSkgeworCXBpcGUoJGVycm9yX3BpcGUsICRvcHRzeyJlcnJvcl90b19oYW5kbGUifSkgfHwKKwkJc3lzZXJyKF9nKCJwaXBlIGZvciAlcyIpLCAiQHByb2ciKTsKKwkkeyRvcHRzeyJlcnJvcl90b19waXBlIn19ID0gJGVycm9yX3BpcGU7CisJcHVzaCBAeyRvcHRzeyJjbG9zZV9pbl9jaGlsZCJ9fSwgJGVycm9yX3BpcGU7CisgICAgfQorICAgICMgRm9yayBhbmQgZXhlYworICAgIG15ICRwaWQgPSBmb3JrKCk7CisgICAgc3lzZXJyKF9nKCJjYW5ub3QgZm9yayBmb3IgJXMiKSwgIkBwcm9nIikgdW5sZXNzIGRlZmluZWQgJHBpZDsKKyAgICBpZiAobm90ICRwaWQpIHsKKwkjIERlZmluZSBlbnZpcm9ubWVudCB2YXJpYWJsZXMKKwlpZiAoJG9wdHN7ImVudiJ9KSB7CisJICAgIGZvcmVhY2ggKGtleXMgJXskb3B0c3siZW52In19KSB7CisJCSRFTlZ7JF99ID0gJG9wdHN7ImVudiJ9eyRffTsKKwkgICAgfQorCX0KKwlpZiAoJG9wdHN7ImRlbGV0ZV9lbnYifSkgeworCSAgICBkZWxldGUgJEVOVnskX30gZm9yZWFjaCAoQHskb3B0c3siZGVsZXRlX2VudiJ9fSk7CisJfQorCSMgQ2hhbmdlIHRoZSBjdXJyZW50IGRpcmVjdG9yeQorCWlmICgkb3B0c3siY2hkaXIifSkgeworCSAgICBjaGRpcigkb3B0c3siY2hkaXIifSkgfHwgc3lzZXJyKF9nKCJjaGRpciB0byAlcyIpLCAkb3B0c3siY2hkaXIifSk7CisJfQorCSMgUmVkaXJlY3QgU1RESU4gaWYgbmVlZGVkCisJaWYgKCRvcHRzeyJmcm9tX2ZpbGUifSkgeworCSAgICBvcGVuKFNURElOLCAiPCIsICRvcHRzeyJmcm9tX2ZpbGUifSkgfHwKKwkJc3lzZXJyKF9nKCJjYW5ub3Qgb3BlbiAlcyIpLCAkb3B0c3siZnJvbV9maWxlIn0pOworCX0gZWxzaWYgKCRvcHRzeyJmcm9tX2hhbmRsZSJ9KSB7CisJICAgIG9wZW4oU1RESU4sICI8JiIsICRvcHRzeyJmcm9tX2hhbmRsZSJ9KSB8fCBzeXNlcnIoX2coInJlb3BlbiBzdGRpbiIpKTsKKwkgICAgY2xvc2UoJG9wdHN7ImZyb21faGFuZGxlIn0pOyAjIGhhcyBiZWVuIGR1cGVkLCBjYW4gYmUgY2xvc2VkCisJfQorCSMgUmVkaXJlY3QgU1RET1VUIGlmIG5lZWRlZAorCWlmICgkb3B0c3sidG9fZmlsZSJ9KSB7CisJICAgIG9wZW4oU1RET1VULCAiPiIsICRvcHRzeyJ0b19maWxlIn0pIHx8CisJCXN5c2VycihfZygiY2Fubm90IHdyaXRlICVzIiksICRvcHRzeyJ0b19maWxlIn0pOworCX0gZWxzaWYgKCRvcHRzeyJ0b19oYW5kbGUifSkgeworCSAgICBvcGVuKFNURE9VVCwgIj4mIiwgJG9wdHN7InRvX2hhbmRsZSJ9KSB8fCBzeXNlcnIoX2coInJlb3BlbiBzdGRvdXQiKSk7CisJICAgIGNsb3NlKCRvcHRzeyJ0b19oYW5kbGUifSk7ICMgaGFzIGJlZW4gZHVwZWQsIGNhbiBiZSBjbG9zZWQKKwl9CisJIyBSZWRpcmVjdCBTVERFUlIgaWYgbmVlZGVkCisJaWYgKCRvcHRzeyJlcnJvcl90b19maWxlIn0pIHsKKwkgICAgb3BlbihTVERFUlIsICI+IiwgJG9wdHN7ImVycm9yX3RvX2ZpbGUifSkgfHwKKwkJc3lzZXJyKF9nKCJjYW5ub3Qgd3JpdGUgJXMiKSwgJG9wdHN7ImVycm9yX3RvX2ZpbGUifSk7CisJfSBlbHNpZiAoJG9wdHN7ImVycm9yX3RvX2hhbmRsZSJ9KSB7CisJICAgIG9wZW4oU1RERVJSLCAiPiYiLCAkb3B0c3siZXJyb3JfdG9faGFuZGxlIn0pIHx8IHN5c2VycihfZygicmVvcGVuIHN0ZG91dCIpKTsKKwkgICAgY2xvc2UoJG9wdHN7ImVycm9yX3RvX2hhbmRsZSJ9KTsgIyBoYXMgYmVlbiBkdXBlZCwgY2FuIGJlIGNsb3NlZAorCX0KKwkjIENsb3NlIHNvbWUgaW5oZXJpdGVkIGZpbGVoYW5kbGVzCisJY2xvc2UoJF8pIGZvcmVhY2ggKEB7JG9wdHN7ImNsb3NlX2luX2NoaWxkIn19KTsKKwkjIEV4ZWN1dGUgdGhlIHByb2dyYW0KKwlleGVjKHsgJHByb2dbMF0gfSBAcHJvZykgb3Igc3lzZXJyKF9nKCJ1bmFibGUgdG8gZXhlY3V0ZSAlcyIpLCAiQHByb2ciKTsKKyAgICB9CisgICAgIyBDbG9zZSBoYW5kbGUgdGhhdCB3ZSBjYW4ndCB1c2UgYW55IG1vcmUKKyAgICBjbG9zZSgkb3B0c3siZnJvbV9oYW5kbGUifSkgaWYgZXhpc3RzICRvcHRzeyJmcm9tX2hhbmRsZSJ9OworICAgIGNsb3NlKCRvcHRzeyJ0b19oYW5kbGUifSkgaWYgZXhpc3RzICRvcHRzeyJ0b19oYW5kbGUifTsKKyAgICBjbG9zZSgkb3B0c3siZXJyb3JfdG9faGFuZGxlIn0pIGlmIGV4aXN0cyAkb3B0c3siZXJyb3JfdG9faGFuZGxlIn07CisKKyAgICBpZiAoJG9wdHN7ImZyb21fc3RyaW5nIn0pIHsKKwlwcmludCAkZnJvbV9zdHJpbmdfcGlwZSAkeyRvcHRzeyJmcm9tX3N0cmluZyJ9fTsKKwljbG9zZSgkZnJvbV9zdHJpbmdfcGlwZSk7CisgICAgfQorICAgIGlmICgkb3B0c3sidG9fc3RyaW5nIn0pIHsKKwlsb2NhbCAkLyA9IHVuZGVmOworCSR7JG9wdHN7InRvX3N0cmluZyJ9fSA9IHJlYWRsaW5lKCR0b19zdHJpbmdfcGlwZSk7CisgICAgfQorICAgIGlmICgkb3B0c3siZXJyb3JfdG9fc3RyaW5nIn0pIHsKKwlsb2NhbCAkLyA9IHVuZGVmOworCSR7JG9wdHN7ImVycm9yX3RvX3N0cmluZyJ9fSA9IHJlYWRsaW5lKCRlcnJvcl90b19zdHJpbmdfcGlwZSk7CisgICAgfQorICAgIGlmICgkb3B0c3sid2FpdF9jaGlsZCJ9KSB7CisJbXkgJGNtZGxpbmUgPSAiQHByb2ciOworCWlmICgkb3B0c3siZW52In0pIHsKKwkgICAgZm9yZWFjaCAoa2V5cyAleyRvcHRzeyJlbnYifX0pIHsKKwkJJGNtZGxpbmUgPSAiJF89XCIiIC4gJG9wdHN7ImVudiJ9eyRffSAuICJcIiAkY21kbGluZSI7CisJICAgIH0KKwl9CisJd2FpdF9jaGlsZCgkcGlkLCBub2NoZWNrID0+ICRvcHRzeyJub2NoZWNrIn0sCisgICAgICAgICAgICAgICAgICAgdGltZW91dCA9PiAkb3B0c3sidGltZW91dCJ9LCBjbWRsaW5lID0+ICRjbWRsaW5lKTsKKwlyZXR1cm4gMTsKKyAgICB9CisKKyAgICByZXR1cm4gJHBpZDsKK30KKworCis9aXRlbSB3YWl0X2NoaWxkCisKK1Rha2VzIGFzIGZpcnN0IGFyZ3VtZW50IHRoZSBwaWQgb2YgdGhlIHByb2Nlc3MgdG8gd2FpdCBmb3IuCitSZW1haW5pbmcgYXJndW1lbnRzIGFyZSB0YWtlbiBhcyBhIGhhc2ggb2Ygb3B0aW9ucy4gUmV0dXJucworbm90aGluZy4gRmFpbHMgaWYgdGhlIGNoaWxkIGhhcyBiZWVuIGVuZGVkIGJ5IGEgc2lnbmFsIG9yCitpZiBpdCBleGl0ZWQgbm9uLXplcm8uCisKK09wdGlvbnM6CisKKz1vdmVyIDQKKworPWl0ZW0gY21kbGluZQorCitTdHJpbmcgdG8gaWRlbnRpZnkgdGhlIGNoaWxkIHByb2Nlc3MgaW4gZXJyb3IgbWVzc2FnZXMuCitEZWZhdWx0cyB0byAiY2hpbGQgcHJvY2VzcyIuCisKKz1pdGVtIG5vY2hlY2sKKworSWYgdHJ1ZSBkbyBub3QgY2hlY2sgdGhlIHJldHVybiBzdGF0dXMgb2YgdGhlIGNoaWxkIChhbmQgdGh1cworZG8gbm90IGZhaWwgaXQgaXQgaGFzIGJlZW4ga2lsbGVkIG9yIGlmIGl0IGV4aXRlZCB3aXRoIGEKK25vbi16ZXJvIHJldHVybiBjb2RlKS4KKworPWl0ZW0gdGltZW91dAorCitTZXQgYSBtYXhpbXVtIHRpbWUgdG8gd2FpdCBmb3IgdGhlIHByb2Nlc3MsIGFmdGVyIHRoYXQgZmFpbAord2l0aCBhbiBlcnJvciBtZXNzYWdlLgorCis9YmFjaworCis9Y3V0CisKK3N1YiB3YWl0X2NoaWxkIHsKKyAgICBteSAoJHBpZCwgJW9wdHMpID0gQF87CisgICAgJG9wdHN7ImNtZGxpbmUifSB8fD0gX2coImNoaWxkIHByb2Nlc3MiKTsKKyAgICBpbnRlcm5lcnIoIm5vIFBJRCBzZXQsIGNhbm5vdCB3YWl0IGVuZCBvZiBwcm9jZXNzIikgdW5sZXNzICRwaWQ7CisgICAgZXZhbCB7CisgICAgICAgIGxvY2FsICRTSUd7QUxSTX0gPSBzdWIgeyBkaWUgImFsYXJtXG4iIH07CisgICAgICAgIGFsYXJtKCRvcHRzeyJ0aW1lb3V0In0pIGlmIGRlZmluZWQoJG9wdHN7InRpbWVvdXQifSk7CisgICAgICAgICRwaWQgPT0gd2FpdHBpZCgkcGlkLCAwKSBvciBzeXNlcnIoX2coIndhaXQgZm9yICVzIiksICRvcHRzeyJjbWRsaW5lIn0pOworICAgICAgICBhbGFybSgwKSBpZiBkZWZpbmVkKCRvcHRzeyJ0aW1lb3V0In0pOworICAgIH07CisgICAgaWYgKCRAKSB7CisgICAgICAgIGRpZSAkQCB1bmxlc3MgJEAgZXEgImFsYXJtXG4iOworICAgICAgICBlcnJvcihuZ2V0dGV4dCgiJXMgZGlkbid0IGNvbXBsZXRlIGluICVkIHNlY29uZCIsCisgICAgICAgICAgICAgICAgICAgICAgICIlcyBkaWRuJ3QgY29tcGxldGUgaW4gJWQgc2Vjb25kcyIsCisgICAgICAgICAgICAgICAgICAgICAgICRvcHRzeyJ0aW1lb3V0In0pLAorICAgICAgICAgICAgICAkb3B0c3siY21kbGluZSJ9LCAkb3B0c3sidGltZW91dCJ9KTsKKyAgICB9CisgICAgdW5sZXNzICgkb3B0c3sibm9jaGVjayJ9KSB7CisJc3VicHJvY2Vycigkb3B0c3siY21kbGluZSJ9KSBpZiAkPzsKKyAgICB9Cit9CisKKzE7CitfX0VORF9fCisKKz1iYWNrCisKKz1oZWFkMSBBVVRIT1JTCisKK1dyaXR0ZW4gYnkgUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPiBhbmQKK0ZyYW5rIExpY2h0ZW5oZWxkIDxkanBpZ0BkZWJpYW4ub3JnPi4KKworPWhlYWQxIFNFRSBBTFNPCisKK0Rwa2csIERwa2c6OkVycm9ySGFuZGxpbmcKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9EcGtnL0luZGV4LnBtIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL0Rwa2cvSW5kZXgucG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTJjYTFlOQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9EcGtnL0luZGV4LnBtCkBAIC0wLDAgKzEsMzUzIEBACisjIENvcHlyaWdodCDCqSAyMDA5IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KKyMKKyMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyMKKyMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisjIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisjIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyMKKyMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisKK3BhY2thZ2UgRHBrZzo6SW5kZXg7CisKK3VzZSBzdHJpY3Q7Cit1c2Ugd2FybmluZ3M7CisKK291ciAkVkVSU0lPTiA9ICIxLjAwIjsKKwordXNlIERwa2c6OkdldHRleHQ7Cit1c2UgRHBrZzo6RXJyb3JIYW5kbGluZzsKK3VzZSBEcGtnOjpDb250cm9sOwordXNlIERwa2c6OkNvbXByZXNzaW9uOjpGaWxlSGFuZGxlOworCit1c2UgYmFzZSBxdyhEcGtnOjpJbnRlcmZhY2U6OlN0b3JhYmxlKTsKKwordXNlIG92ZXJsb2FkCisgICAgJ0B7fScgPT4gc3ViIHsgcmV0dXJuICRfWzBdLT57J29yZGVyJ30gfSwKKyAgICBmYWxsYmFjayA9PiAxOworCis9ZW5jb2RpbmcgdXRmOAorCis9aGVhZDEgTkFNRQorCitEcGtnOjpJbmRleCAtIGdlbmVyaWMgaW5kZXggb2YgY29udHJvbCBpbmZvcm1hdGlvbgorCis9aGVhZDEgREVTQ1JJUFRJT04KKworVGhpcyBvYmplY3QgcmVwcmVzZW50IGEgc2V0IG9mIERwa2c6OkNvbnRyb2wgb2JqZWN0cy4KKworPWhlYWQxIEZVTkNUSU9OUworCis9b3ZlciA0CisKKz1pdGVtIG15ICRpbmRleCA9IERwa2c6OkluZGV4LT5uZXcoJW9wdHMpCisKK0NyZWF0ZXMgYSBuZXcgZW1wdHkgaW5kZXguIFNlZSBzZXRfb3B0aW9ucygpIGZvciBtb3JlIGRldGFpbHMuCisKKz1jdXQKKworc3ViIG5ldyB7CisgICAgbXkgKCR0aGlzLCAlb3B0cykgPSBAXzsKKyAgICBteSAkY2xhc3MgPSByZWYoJHRoaXMpIHx8ICR0aGlzOworCisgICAgbXkgJHNlbGYgPSB7CisJaXRlbXMgPT4ge30sCisJb3JkZXIgPT4gW10sCisJZ2V0X2tleV9mdW5jID0+IHN1YiB7IHJldHVybiAkX1swXS0+e1BhY2thZ2V9IH0sCisJdHlwZSA9PiBDVFJMX1VOS05PV04sCisgICAgfTsKKyAgICBibGVzcyAkc2VsZiwgJGNsYXNzOworICAgICRzZWxmLT5zZXRfb3B0aW9ucyglb3B0cyk7CisgICAgaWYgKGV4aXN0cyAkb3B0c3snbG9hZCd9KSB7CisJJHNlbGYtPmxvYWQoJG9wdHN7J2xvYWQnfSk7CisgICAgfQorCisgICAgcmV0dXJuICRzZWxmOworfQorCis9aXRlbSAkaW5kZXgtPnNldF9vcHRpb25zKCVvcHRzKQorCitUaGUgInR5cGUiIG9wdGlvbiBpcyBjaGVja2VkIGZpcnN0IHRvIGRlZmluZSBkZWZhdWx0IHZhbHVlcyBmb3Igb3RoZXIKK29wdGlvbnMuIEhlcmUgYXJlIHRoZSByZWxldmFudCBvcHRpb25zOiAiZ2V0X2tleV9mdW5jIiBpcyBhIGZ1bmN0aW9uCityZXR1cm5pbmcgYSBrZXkgZm9yIHRoZSBpdGVtIHBhc3NlZCBpbiBwYXJhbWV0ZXJzLiBUaGUgaW5kZXggY2FuIG9ubHkKK2NvbnRhaW4gb25lIGl0ZW0gd2l0aCBhIGdpdmVuIGtleS4gVGhlIGZ1bmN0aW9uIHVzZWQgZGVwZW5kIG9uIHRoZQordHlwZTogZm9yIENUUkxfSU5GT19QS0csIENUUkxfSU5ERVhfU1JDLCBDVFJMX0lOREVYX1BLRyBhbmQgQ1RSTF9QS0dfREVCCitpdCdzIHNpbXBseSB0aGUgUGFja2FnZSBmaWVsZDsgZm9yIENUUkxfUEtHX1NSQyBhbmQgQ1RSTF9JTkZPX1NSQywgaXQncwordGhlIFNvdXJjZSBmaWVsZDsgZm9yIENUUkxfQ0hBTkdFTE9HIGl0J3MgdGhlIFNvdXJjZSBhbmQgdGhlIFZlcnNpb24KK2ZpZWxkcyAoY29uY2F0ZW5hdGVkIHdpdGggYW4gaW50ZXJtZWRpYXJ5ICJfIik7IGZvciBDVFJMX0ZJTEVfQ0hBTkdFUyBpdCdzCit0aGUgU291cmNlLCBWZXJzaW9uIGFuZCBBcmNoaXRlY3R1cmUgZmllbGRzIChjb25jYXRlbmF0ZWQgd2l0aCAiXyIpOworZm9yIENUUkxfRklMRV9WRU5ET1IgaXQncyB0aGUgVmVuZG9yIGZpZWxkOyBmb3IgQ1RSTF9GSUxFX1NUQVRVUyBpdCdzIHRoZQorUGFja2FnZSBhbmQgQXJjaGl0ZWN0dXJlIGZpZWxkcyAoY29uY2F0ZW5hdGVkIHdpdGggIl8iKS4gT3RoZXJ3aXNlIGl0J3MKK3RoZSBQYWNrYWdlIGZpZWxkIGJ5IGRlZmF1bHQuCisKKz1jdXQKKworc3ViIHNldF9vcHRpb25zIHsKKyAgICBteSAoJHNlbGYsICVvcHRzKSA9IEBfOworCisgICAgIyBEZWZhdWx0IHZhbHVlcyBiYXNlZCBvbiB0eXBlCisgICAgaWYgKGV4aXN0cyAkb3B0c3sndHlwZSd9KSB7CisgICAgICAgIG15ICR0ID0gJG9wdHN7J3R5cGUnfTsKKyAgICAgICAgaWYgKCR0ID09IENUUkxfSU5GT19QS0cgb3IgJHQgPT0gQ1RSTF9JTkRFWF9TUkMgb3IKKwkgICAgICAgICAkdCA9PSBDVFJMX0lOREVYX1BLRyBvciAkdCA9PSBDVFJMX1BLR19ERUIpIHsKKwkgICAgJHNlbGYtPntnZXRfa2V5X2Z1bmN9ID0gc3ViIHsgcmV0dXJuICRfWzBdLT57UGFja2FnZX07IH07CisgICAgICAgIH0gZWxzaWYgKCR0ID09IENUUkxfUEtHX1NSQyBvciAkdCA9PSBDVFJMX0lORk9fU1JDKSB7CisJICAgICRzZWxmLT57Z2V0X2tleV9mdW5jfSA9IHN1YiB7IHJldHVybiAkX1swXS0+e1NvdXJjZX07IH07CisgICAgICAgIH0gZWxzaWYgKCR0ID09IENUUkxfQ0hBTkdFTE9HKSB7CisJICAgICRzZWxmLT57Z2V0X2tleV9mdW5jfSA9IHN1YiB7CisJCXJldHVybiAkX1swXS0+e1NvdXJjZX0gLiAiXyIgLiAkX1swXS0+e1ZlcnNpb259OworCSAgICB9OworICAgICAgICB9IGVsc2lmICgkdCA9PSBDVFJMX0ZJTEVfQ0hBTkdFUykgeworCSAgICAkc2VsZi0+e2dldF9rZXlfZnVuY30gPSBzdWIgeworCQlyZXR1cm4gJF9bMF0tPntTb3VyY2V9IC4gIl8iIC4gJF9bMF0tPntWZXJzaW9ufSAuICJfIiAuCisJCSAgICAgICAkX1swXS0+e0FyY2hpdGVjdHVyZX07CisJICAgIH07CisgICAgICAgIH0gZWxzaWYgKCR0ID09IENUUkxfRklMRV9WRU5ET1IpIHsKKwkgICAgJHNlbGYtPntnZXRfa2V5X2Z1bmN9ID0gc3ViIHsgcmV0dXJuICRfWzBdLT57VmVuZG9yfTsgfTsKKyAgICAgICAgfSBlbHNpZiAoJHQgPT0gQ1RSTF9GSUxFX1NUQVRVUykgeworCSAgICAkc2VsZi0+e2dldF9rZXlfZnVuY30gPSBzdWIgeworCQlyZXR1cm4gJF9bMF0tPntQYWNrYWdlfSAuICJfIiAuICRfWzBdLT57QXJjaGl0ZWN0dXJlfTsKKwkgICAgfTsKKyAgICAgICAgfQorICAgIH0KKworICAgICMgT3B0aW9ucyBzZXQgYnkgdGhlIHVzZXIgb3ZlcnJpZGUgZGVmYXVsdCB2YWx1ZXMKKyAgICAkc2VsZi0+eyRffSA9ICRvcHRzeyRffSBmb3JlYWNoIGtleXMgJW9wdHM7Cit9CisKKz1pdGVtICRpbmRleC0+Z2V0X3R5cGUoKQorCitSZXR1cm5zIHRoZSB0eXBlIG9mIGNvbnRyb2wgaW5mb3JtYXRpb24gc3RvcmVkLiBTZWUgdGhlIHR5cGUgcGFyYW1ldGVyCitzZXQgZHVyaW5nIG5ldygpLgorCis9Y3V0CisKK3N1YiBnZXRfdHlwZSB7CisgICAgbXkgKCRzZWxmKSA9IEBfOworICAgIHJldHVybiAkc2VsZi0+eyd0eXBlJ307Cit9CisKKz1pdGVtICRpbmRleC0+YWRkKCRpdGVtLCBbJGtleV0pCisKK0FkZCBhIG5ldyBpdGVtIGluIHRoZSBpbmRleC4gSWYgdGhlICRrZXkgcGFyYW1ldGVyIGlzIG9taXR0ZWQsIHRoZSBrZXkKK3dpbGwgYmUgZ2VuZXJhdGVkIHdpdGggdGhlIGdldF9rZXlfZnVuYyBmdW5jdGlvbiAoc2VlIHNldF9vcHRpb25zKCkgZm9yCitkZXRhaWxzKS4KKworPWN1dAorCitzdWIgYWRkIHsKKyAgICBteSAoJHNlbGYsICRpdGVtLCAka2V5KSA9IEBfOworICAgIHVubGVzcyAoZGVmaW5lZCAka2V5KSB7CisJJGtleSA9ICRzZWxmLT57J2dldF9rZXlfZnVuYyd9KCRpdGVtKTsKKyAgICB9CisgICAgaWYgKG5vdCBleGlzdHMgJHNlbGYtPnsnaXRlbXMnfXska2V5fSkgeworCXB1c2ggQHskc2VsZi0+eydvcmRlcid9fSwgJGtleTsKKyAgICB9CisgICAgJHNlbGYtPnsnaXRlbXMnfXska2V5fSA9ICRpdGVtOworfQorCis9aXRlbSAkaW5kZXgtPmxvYWQoJGZpbGUpCisKK1JlYWRzIHRoZSBmaWxlIGFuZCBjcmVhdGVzIGFsbCBpdGVtcyBwYXJzZWQuIFJldHVybnMgdGhlIG51bWJlciBvZiBpdGVtcworcGFyc2VkLiBIYW5kbGVzIGNvbXByZXNzZWQgZmlsZXMgdHJhbnNwYXJlbnRseSBiYXNlZCBvbiB0aGVpciBleHRlbnNpb25zLgorCis9aXRlbSAkaW5kZXgtPnBhcnNlKCRmaCwgJGRlc2MpCisKK1JlYWRzIHRoZSBmaWxlaGFuZGxlIGFuZCBjcmVhdGVzIGFsbCBpdGVtcyBwYXJzZWQuIFJldHVybnMgdGhlIG51bWJlciBvZgoraXRlbXMgcGFyc2VkLgorCis9Y3V0CisKK3N1YiBwYXJzZSB7CisgICAgbXkgKCRzZWxmLCAkZmgsICRkZXNjKSA9IEBfOworICAgIG15ICRpdGVtID0gJHNlbGYtPm5ld19pdGVtKCk7CisgICAgbXkgJGkgPSAwOworICAgIHdoaWxlICgkaXRlbS0+cGFyc2UoJGZoLCAkZGVzYykpIHsKKwkkc2VsZi0+YWRkKCRpdGVtKTsKKwkkaXRlbSA9ICRzZWxmLT5uZXdfaXRlbSgpOworCSRpKys7CisgICAgfQorICAgIHJldHVybiAkaTsKK30KKworPWl0ZW0gJGluZGV4LT5zYXZlKCRmaWxlKQorCitXcml0ZXMgdGhlIGNvbnRlbnQgb2YgdGhlIGluZGV4IGluIGEgZmlsZS4gQXV0by1jb21wcmVzc2VzIGZpbGVzCitiYXNlZCBvbiB0aGVpciBleHRlbnNpb25zLgorCis9aXRlbSBteSAkaXRlbSA9ICRpbmRleC0+bmV3X2l0ZW0oKQorCitDcmVhdGVzIGEgbmV3IGl0ZW0uIE1haW5seSB1c2VmdWwgZm9yIGRlcml2ZWQgb2JqZWN0cyB0aGF0IHdvdWxkIHdhbnQKK3RvIG92ZXJyaWRlIHRoaXMgbWV0aG9kIHRvIHJldHVybiBzb21ldGhpbmcgZWxzZSB0aGFuIGEgRHBrZzo6Q29udHJvbAorb2JqZWN0LgorCis9Y3V0CisKK3N1YiBuZXdfaXRlbSB7CisgICAgbXkgKCRzZWxmKSA9IEBfOworICAgIHJldHVybiBEcGtnOjpDb250cm9sLT5uZXcodHlwZSA9PiAkc2VsZi0+eyd0eXBlJ30pOworfQorCis9aXRlbSBteSAkaXRlbSA9ICRpbmRleC0+Z2V0X2J5X2tleSgka2V5KQorCitSZXR1cm5zIHRoZSBpdGVtIGlkZW50aWZpZWQgYnkgJGtleSBvciB1bmRlZi4KKworPWN1dAorCitzdWIgZ2V0X2J5X2tleSB7CisgICAgbXkgKCRzZWxmLCAka2V5KSA9IEBfOworICAgIHJldHVybiAkc2VsZi0+eydpdGVtcyd9eyRrZXl9IGlmIGV4aXN0cyAkc2VsZi0+eydpdGVtcyd9eyRrZXl9OworICAgIHJldHVybiB1bmRlZjsKK30KKworPWl0ZW0gbXkgQGtleXMgPSAkaW5kZXgtPmdldF9rZXlzKCVjcml0ZXJpYSkKKworUmV0dXJucyB0aGUga2V5cyBvZiBpdGVtcyB0aGF0IG1hdGNoZXMgYWxsIHRoZSBjcml0ZXJpYS4gVGhlIGtleSBvZiB0aGUKKyVjcml0ZXJpYSBoYXNoIGlzIGEgZmllbGQgbmFtZSBhbmQgdGhlIHZhbHVlIGlzIGVpdGhlciBhIHJlZ2V4cCB0aGF0IG5lZWRzCit0byBtYXRjaCB0aGUgZmllbGQgdmFsdWUsIG9yIGEgcmVmZXJlbmNlIHRvIGEgZnVuY3Rpb24gdGhhdCBtdXN0IHJldHVybgordHJ1ZSBhbmQgdGhhdCByZWNlaXZlcyB0aGUgZmllbGQgdmFsdWUgYXMgc2luZ2xlIHBhcmFtZXRlciwgb3IgYSBzY2FsYXIKK3RoYXQgbXVzdCBiZSBlcXVhbCB0byB0aGUgZmllbGQgdmFsdWUuCisKKz1jdXQKKworc3ViIGdldF9rZXlzIHsKKyAgICBteSAoJHNlbGYsICVjcml0KSA9IEBfOworICAgIG15IEBzZWxlY3RlZCA9IEB7JHNlbGYtPntvcmRlcn19OworICAgIGZvcmVhY2ggbXkgJHNfY3JpdCAoa2V5cyAlY3JpdCkgeyAjIHNlYXJjaCBjcml0ZXJpYQorCWlmIChyZWYoJGNyaXR7JHNfY3JpdH0pIGVxICJSZWdleHAiKSB7CisJICAgIEBzZWxlY3RlZCA9IGdyZXAgeworCQkkc2VsZi0+eydpdGVtcyd9eyRffXskc19jcml0fSA9fiAkY3JpdHskc19jcml0fQorCSAgICB9IEBzZWxlY3RlZDsKKwl9IGVsc2lmIChyZWYoJGNyaXR7JHNfY3JpdH0pIGVxICJDT0RFIikgeworCSAgICBAc2VsZWN0ZWQgPSBncmVwIHsKKwkJJnskY3JpdHskc19jcml0fX0oJHNlbGYtPnsnaXRlbXMnfXskX317JHNfY3JpdH0pOworCSAgICB9IEBzZWxlY3RlZDsKKwl9IGVsc2UgeworCSAgICBAc2VsZWN0ZWQgPSBncmVwIHsKKwkJJHNlbGYtPnsnaXRlbXMnfXskX317JHNfY3JpdH0gZXEgJGNyaXR7JHNfY3JpdH0KKwkgICAgfSBAc2VsZWN0ZWQ7CisJfQorICAgIH0KKyAgICByZXR1cm4gQHNlbGVjdGVkOworfQorCis9aXRlbSBteSBAaXRlbXMgPSAkaW5kZXgtPmdldCglY3JpdGVyaWEpCisKK1JldHVybnMgYWxsIHRoZSBpdGVtcyB0aGF0IG1hdGNoZXMgYWxsIHRoZSBjcml0ZXJpYS4KKworPWN1dAorCitzdWIgZ2V0IHsKKyAgICBteSAoJHNlbGYsICVjcml0KSA9IEBfOworICAgIHJldHVybiBtYXAgeyAkc2VsZi0+eydpdGVtcyd9eyRffSB9ICRzZWxmLT5nZXRfa2V5cyglY3JpdCk7Cit9CisKKz1pdGVtICRpbmRleC0+cmVtb3ZlX2J5X2tleSgka2V5KQorCitSZW1vdmUgdGhlIGl0ZW0gaWRlbnRpZmllZCBieSB0aGUgZ2l2ZW4ga2V5LgorCis9Y3V0CisKK3N1YiByZW1vdmVfYnlfa2V5IHsKKyAgICBteSAoJHNlbGYsICRrZXkpID0gQF87CisgICAgQHskc2VsZi0+eydvcmRlcid9fSA9IGdyZXAgeyAkXyBuZSAka2V5IH0gQHskc2VsZi0+eydvcmRlcid9fTsKKyAgICByZXR1cm4gZGVsZXRlICRzZWxmLT57J2l0ZW1zJ317JGtleX07Cit9CisKKz1pdGVtIG15IEBpdGVtcyA9ICRpbmRleC0+cmVtb3ZlKCVjcml0ZXJpYSkKKworUmV0dXJucyBhbmQgcmVtb3ZlcyBhbGwgdGhlIGl0ZW1zIHRoYXQgbWF0Y2hlcyBhbGwgdGhlIGNyaXRlcmlhLgorCis9Y3V0CisKK3N1YiByZW1vdmUgeworICAgIG15ICgkc2VsZiwgJWNyaXQpID0gQF87CisgICAgbXkgQGtleXMgPSAkc2VsZi0+Z2V0X2tleXMoJWNyaXQpOworICAgIG15ICgla2V5cywgQHJldCk7CisgICAgZm9yZWFjaCBteSAka2V5IChAa2V5cykgeworCSRrZXlzeyRrZXl9ID0gMTsKKwlwdXNoIEByZXQsICRzZWxmLT57J2l0ZW1zJ317JGtleX0gaWYgZGVmaW5lZCB3YW50YXJyYXk7CisJZGVsZXRlICRzZWxmLT57J2l0ZW1zJ317JGtleX07CisgICAgfQorICAgIEB7JHNlbGYtPnsnb3JkZXInfX0gPSBncmVwIHsgbm90IGV4aXN0cyAka2V5c3skX30gfSBAeyRzZWxmLT57J29yZGVyJ319OworICAgIHJldHVybiBAcmV0OworfQorCis9aXRlbSAkaW5kZXgtPm1lcmdlKCRvdGhlcl9pbmRleCwgJW9wdHMpCisKK01lcmdlIHRoZSBlbnRyaWVzIG9mIHRoZSBvdGhlciBpbmRleC4gV2hpbGUgbWVyZ2luZywgdGhlIGtleXMgb2YgdGhlIG1lcmdlZAoraW5kZXggYXJlIHVzZWQsIHRoZXkgYXJlIG5vdCByZS1jb21wdXRlZCAodW5sZXNzIHlvdSBoYXZlIHNldCB0aGUgb3B0aW9ucworImtlZXBfa2V5cyIgdG8gIjAiKS4gSXQncyB5b3VyIHJlc3BvbnNpYmlsaXR5IHRvIGVuc3VyZSB0aGF0IHRoZXkgaGF2ZSBiZWVuCitjb21wdXRlZCB3aXRoIHRoZSBzYW1lIGZ1bmN0aW9uLgorCis9Y3V0CisKK3N1YiBtZXJnZSB7CisgICAgbXkgKCRzZWxmLCAkb3RoZXIsICVvcHRzKSA9IEBfOworICAgICRvcHRzeydrZWVwX2tleXMnfSA9IDEgdW5sZXNzIGV4aXN0cyAkb3B0c3sna2VlcF9rZXlzJ307CisgICAgZm9yZWFjaCBteSAka2V5ICgkb3RoZXItPmdldF9rZXlzKCkpIHsKKwkkc2VsZi0+YWRkKCRvdGhlci0+Z2V0X2J5X2tleSgka2V5KSwgJG9wdHN7J2tlZXBfa2V5cyd9ID8gJGtleSA6IHVuZGVmKTsKKyAgICB9Cit9CisKKz1pdGVtICRpbmRleC0+c29ydChcJnNvcnRmdW5jKQorCitTb3J0IHRoZSBpbmRleCB3aXRoIHRoZSBnaXZlbiBzb3J0IGZ1bmN0aW9uLiBJZiBubyBmdW5jdGlvbiBpcyBnaXZlbiwgYW4KK2FscGhhYmV0aWMgc29ydCBpcyBkb25lIGJhc2VkIG9uIHRoZSBrZXlzLiBUaGUgc29ydCBmdW5jdGlvbiByZWNlaXZlcyB0aGUKK2l0ZW1zIHRoZW1zZWx2ZXMgYXMgcGFyYW1ldGVycyBhbmQgbm90IHRoZSBrZXlzLgorCis9Y3V0CisKK3N1YiBzb3J0IHsKKyAgICBteSAoJHNlbGYsICRmdW5jKSA9IEBfOworICAgIGlmIChkZWZpbmVkICRmdW5jKSB7CisJQHskc2VsZi0+eydvcmRlcid9fSA9IHNvcnQgeworCSAgICAmJGZ1bmMoJHNlbGYtPnsnaXRlbXMnfXskYX0sICRzZWxmLT57J2l0ZW1zJ317JGJ9KQorCX0gQHskc2VsZi0+eydvcmRlcid9fTsKKyAgICB9IGVsc2UgeworCUB7JHNlbGYtPnsnb3JkZXInfX0gPSBzb3J0IEB7JHNlbGYtPnsnb3JkZXInfX07CisgICAgfQorfQorCis9aXRlbSBteSAkc3RyID0gJGluZGV4LT5vdXRwdXQoKQorCis9aXRlbSAiJGluZGV4IgorCitHZXQgYSBzdHJpbmcgcmVwcmVzZW50YXRpb24gb2YgdGhlIGluZGV4LiBUaGUgRHBrZzo6Q29udHJvbCBvYmplY3RzIGFyZQorb3V0cHV0IGluIHRoZSBvcmRlciB3aGljaCB0aGV5IGhhdmUgYmVlbiByZWFkIG9yIGFkZGVkIGV4Y2VwdCBpZiB0aGUgb3JkZXIKK2hhZSBiZWVuIGNoYW5nZWQgd2l0aCBzb3J0KCkuCisKKz1pdGVtICRpbmRleC0+b3V0cHV0KCRmaCkKKworUHJpbnQgdGhlIHN0cmluZyByZXByZXNlbnRhdGlvbiBvZiB0aGUgaW5kZXggdG8gYSBmaWxlaGFuZGxlLgorCis9Y3V0CisKK3N1YiBvdXRwdXQgeworICAgIG15ICgkc2VsZiwgJGZoKSA9IEBfOworICAgIG15ICRzdHIgPSAiIjsKKyAgICBmb3JlYWNoIG15ICRrZXkgKCRzZWxmLT5nZXRfa2V5cygpKSB7CisJaWYgKGRlZmluZWQgJGZoKSB7CisJICAgIHByaW50ICRmaCAkc2VsZi0+Z2V0X2J5X2tleSgka2V5KSAuICJcbiI7CisJfQorCWlmIChkZWZpbmVkIHdhbnRhcnJheSkgeworCSAgICAkc3RyIC49ICRzZWxmLT5nZXRfYnlfa2V5KCRrZXkpIC4gIlxuIjsKKwl9CisgICAgfQorICAgIHJldHVybiAkc3RyOworfQorCis9YmFjaworCis9aGVhZDEgQVVUSE9SCisKK1JhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4uCisKKz1jdXQKKworMTsKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9EcGtnL0ludGVyZmFjZS9TdG9yYWJsZS5wbSBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9EcGtnL0ludGVyZmFjZS9TdG9yYWJsZS5wbQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mMGQzYjczCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL0Rwa2cvSW50ZXJmYWNlL1N0b3JhYmxlLnBtCkBAIC0wLDAgKzEsMTQ1IEBACisjIENvcHlyaWdodCDCqSAyMDEwIFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KKyMKKyMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyMKKyMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisjIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisjIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyMKKyMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisKK3BhY2thZ2UgRHBrZzo6SW50ZXJmYWNlOjpTdG9yYWJsZTsKKwordXNlIHN0cmljdDsKK3VzZSB3YXJuaW5nczsKKworb3VyICRWRVJTSU9OID0gIjEuMDAiOworCit1c2UgRHBrZzo6R2V0dGV4dDsKK3VzZSBEcGtnOjpFcnJvckhhbmRsaW5nOwordXNlIERwa2c6OkNvbXByZXNzaW9uOjpGaWxlSGFuZGxlOworCit1c2Ugb3ZlcmxvYWQKKyAgICAnIiInID0+IFwmX3N0cmluZ2lmeSwKKyAgICAnZmFsbGJhY2snID0+IDE7CisKKz1lbmNvZGluZyB1dGY4CisKKz1oZWFkMSBOQU1FCisKK0Rwa2c6OkludGVyZmFjZTo6U3RvcmFibGUgLSBjb21tb24gbWV0aG9kcyByZWxhdGVkIHRvIG9iamVjdCBzZXJpYWxpemF0aW9uCisKKz1oZWFkMSBERVNDUklQVElPTgorCitEcGtnOjpJbnRlcmZhY2U6OlN0b3JhYmxlIGlzIG9ubHkgbWVhbnQgdG8gYmUgdXNlZCBhcyBwYXJlbnQKK2NsYXNzIGZvciBvdGhlciBvYmplY3RzLiBJdCBwcm92aWRlcyBjb21tb24gbWV0aG9kcyB0aGF0IGFyZQorYWxsIGltcGxlbWVudGVkIG9uIHRvcCBvZiB0d28gYmFzaWMgbWV0aG9kcyBwYXJzZSgpIGFuZCBvdXRwdXQoKS4KKworPWhlYWQxIEJBU0UgTUVUSE9EUworCitUaG9zZSBtZXRob2RzIG11c3QgYmUgcHJvdmlkZWQgYnkgdGhlIG9iamVjdCB0aGF0IHdpc2ggdG8gaW5oZXJpdAorZnJvbSBEcGtnOjpJbnRlcmZhY2U6OlN0b3JhYmxlIHNvIHRoYXQgdGhlIG1ldGhvZHMgcHJvdmlkZWQgY2FuIHdvcmsuCisKKz1vdmVyIDQKKworPWl0ZW0gJG9iai0+cGFyc2UoJGZoLCAkZGVzYykKKworVGhpcyBtZXRob2RzIGluaXRpYWxpemUgdGhlIG9iamVjdCB3aXRoIHRoZSBkYXRhIHN0b3JlZCBpbiB0aGUKK2ZpbGVoYW5kbGUuICRkZXNjIGlzIG9wdGlvbmFsIGFuZCBpcyBhIHRleHR1YWwgZGVzY3JpcHRpb24gb2YKK3RoZSBmaWxlaGFuZGxlIHVzZWQgaW4gZXJyb3IgbWVzc2FnZXMuCisKKz1pdGVtICRzdHJpbmcgPSAkb2JqLT5vdXRwdXQoJGZoKQorCitUaGlzIG1ldGhvZCByZXR1cm5zIGEgc3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBvYmplY3QgaW4gJHN0cmluZworYW5kIGl0IHdyaXRlcyB0aGUgc2FtZSBzdHJpbmcgdG8gJGZoIChpZiBpdCdzIGRlZmluZWQpLgorCis9YmFjaworCis9aGVhZDEgUFJPVklERUQgTUVUSE9EUworCis9b3ZlciA0CisKKz1pdGVtICRvYmotPmxvYWQoJGZpbGVuYW1lKQorCitJbml0aWFsaXplIHRoZSBvYmplY3Qgd2l0aCB0aGUgZGF0YSBzdG9yZWQgaW4gdGhlIGZpbGUuIFRoZSBmaWxlIGNhbiBiZQorY29tcHJlc3NlZCwgaXQgd2lsbCBiZSB1bmNvbXByZXNzZWQgb24gdGhlIGZseSBieSB1c2luZyBhCitEcGtnOjpDb21wcmVzc2lvbjo6RmlsZUhhbmRsZSBvYmplY3QuIElmICRmaWxlbmFtZSBpcyAiLSIsIHRoZW4gdGhlCitzdGFuZGFyZCBpbnB1dCBpcyByZWFkIChubyBjb21wcmVzc2lvbiBpcyBhbGxvd2VkIGluIHRoYXQgY2FzZSkuCisKKz1jdXQKKworc3ViIGxvYWQgeworICAgIG15ICgkc2VsZiwgJGZpbGUsIEBvcHRpb25zKSA9IEBfOworICAgIHVubGVzcyAoJHNlbGYtPmNhbigicGFyc2UiKSkgeworCWludGVybmVycigiJXMgY2Fubm90IGJlIGxvYWRlZCwgaXQgbGFja3MgdGhlIHBhcnNlIG1ldGhvZCIsIHJlZigkc2VsZikpOworICAgIH0KKyAgICBteSAoJGRlc2MsICRmaCkgPSAoJGZpbGUsIHVuZGVmKTsKKyAgICBpZiAoJGZpbGUgZXEgIi0iKSB7CisJJGZoID0gXCpTVERJTjsKKwkkZGVzYyA9IF9nKCI8c3RhbmRhcmQgaW5wdXQ+Iik7CisgICAgfSBlbHNlIHsKKwkkZmggPSBEcGtnOjpDb21wcmVzc2lvbjo6RmlsZUhhbmRsZS0+bmV3KCk7CisJb3BlbigkZmgsICI8IiwgJGZpbGUpIHx8IHN5c2VycihfZygiY2Fubm90IHJlYWQgJXMiKSwgJGZpbGUpOworICAgIH0KKyAgICBteSAkcmVzID0gJHNlbGYtPnBhcnNlKCRmaCwgJGRlc2MsIEBvcHRpb25zKTsKKyAgICBpZiAoJGZpbGUgbmUgIi0iKSB7CisJY2xvc2UoJGZoKSB8fCBzeXNlcnIoX2coImNhbm5vdCBjbG9zZSAlcyIpLCAkZmlsZSk7CisgICAgfQorICAgIHJldHVybiAkcmVzOworfQorCis9aXRlbSAkb2JqLT5zYXZlKCRmaWxlbmFtZSkKKworU3RvcmUgdGhlIG9iamVjdCBpbiB0aGUgZmlsZS4gSWYgdGhlIGZpbGVuYW1lIGVuZHMgd2l0aCBhIGtub3duCitjb21wcmVzc2lvbiBleHRlbnNpb24sIGl0IHdpbGwgYmUgY29tcHJlc3NlZCBvbiB0aGUgZmx5IGJ5IHVzaW5nIGEKK0Rwa2c6OkNvbXByZXNzaW9uOjpGaWxlSGFuZGxlIG9iamVjdC4gSWYgJGZpbGVuYW1lIGlzICItIiwgdGhlbiB0aGUKK3N0YW5kYXJkIG91dHB1dCBpcyB1c2VkIChkYXRhIGFyZSB3cml0dGVuIHVuY29tcHJlc3NlZCBpbiB0aGF0IGNhc2UpLgorCis9Y3V0CisKK3N1YiBzYXZlIHsKKyAgICBteSAoJHNlbGYsICRmaWxlLCBAb3B0aW9ucykgPSBAXzsKKyAgICB1bmxlc3MgKCRzZWxmLT5jYW4oIm91dHB1dCIpKSB7CisJaW50ZXJuZXJyKCIlcyBjYW5ub3QgYmUgc2F2ZWQsIGl0IGxhY2tzIHRoZSBvdXRwdXQgbWV0aG9kIiwgcmVmKCRzZWxmKSk7CisgICAgfQorICAgIG15ICRmaDsKKyAgICBpZiAoJGZpbGUgZXEgIi0iKSB7CisJJGZoID0gXCpTVERPVVQ7CisgICAgfSBlbHNlIHsKKwkkZmggPSBEcGtnOjpDb21wcmVzc2lvbjo6RmlsZUhhbmRsZS0+bmV3KCk7CisJb3BlbigkZmgsICI+IiwgJGZpbGUpIHx8IHN5c2VycihfZygiY2Fubm90IHdyaXRlICVzIiksICRmaWxlKTsKKyAgICB9CisgICAgJHNlbGYtPm91dHB1dCgkZmgsIEBvcHRpb25zKTsKKyAgICBpZiAoJGZpbGUgbmUgIi0iKSB7CisJY2xvc2UoJGZoKSB8fCBzeXNlcnIoX2coImNhbm5vdCBjbG9zZSAlcyIpLCAkZmlsZSk7CisgICAgfQorfQorCis9aXRlbSAiJG9iaiIKKworUmV0dXJuIGEgc3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBvYmplY3QuCisKKz1jdXQKKworc3ViIF9zdHJpbmdpZnkgeworICAgIG15ICgkc2VsZikgPSBAXzsKKyAgICB1bmxlc3MgKCRzZWxmLT5jYW4oIm91dHB1dCIpKSB7CisJaW50ZXJuZXJyKCIlcyBjYW5ub3QgYmUgc3RyaW5naWZpZWQsIGl0IGxhY2tzIHRoZSBvdXRwdXQgbWV0aG9kIiwgcmVmKCRzZWxmKSk7CisgICAgfQorICAgIHJldHVybiAkc2VsZi0+b3V0cHV0KCk7Cit9CisKKz1iYWNrCisKKz1oZWFkMSBBVVRIT1IKKworUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPi4KKworPWN1dAorCisxOwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL0Rwa2cvUGF0aC5wbSBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9EcGtnL1BhdGgucG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzgzYmMwZAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9EcGtnL1BhdGgucG0KQEAgLTAsMCArMSwyOTUgQEAKKyMgQ29weXJpZ2h0IMKpIDIwMDctMjAxMSBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisjIENvcHlyaWdodCDCqSAyMDExIExpbmFybyBMaW1pdGVkCisjCisjIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisjIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisjIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisjIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisjCisjIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisjIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisjCisjIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisjIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorCitwYWNrYWdlIERwa2c6OlBhdGg7CisKK3VzZSBzdHJpY3Q7Cit1c2Ugd2FybmluZ3M7CisKK291ciAkVkVSU0lPTiA9ICIxLjAyIjsKKwordXNlIGJhc2UgcXcoRXhwb3J0ZXIpOwordXNlIEZpbGU6OlNwZWM7Cit1c2UgQ3dkIHF3KHJlYWxwYXRoKTsKKwordXNlIERwa2c6OkFyY2ggcXcoZ2V0X2hvc3RfYXJjaCBkZWJhcmNoX3RvX2RlYnRyaXBsZXQpOwordXNlIERwa2c6OklQQzsKKworb3VyIEBFWFBPUlRfT0sgPSBxdyhnZXRfcGtnX3Jvb3RfZGlyIHJlbGF0aXZlX3RvX3BrZ19yb290CisJCSAgICBndWVzc19wa2dfcm9vdF9kaXIgY2hlY2tfZmlsZXNfYXJlX3RoZV9zYW1lCisJCSAgICByZXNvbHZlX3N5bWxpbmsgY2Fub25wYXRoIGZpbmRfY29tbWFuZAorCQkgICAgZ2V0X2NvbnRyb2xfcGF0aCBmaW5kX2J1aWxkX2ZpbGUpOworCis9ZW5jb2RpbmcgdXRmOAorCis9aGVhZDEgTkFNRQorCitEcGtnOjpQYXRoIC0gc29tZSBjb21tb24gcGF0aCBoYW5kbGluZyBmdW5jdGlvbnMKKworPWhlYWQxIERFU0NSSVBUSU9OCisKK0l0IHByb3ZpZGVzIHNvbWUgZnVuY3Rpb25zIHRvIGhhbmRsZSB2YXJpb3VzIHBhdGguCisKKz1oZWFkMSBNRVRIT0RTCisKKz1vdmVyIDgKKworPWl0ZW0gZ2V0X3BrZ19yb290X2RpcigkZmlsZSkKKworVGhpcyBmdW5jdGlvbiB3aWxsIHNjYW4gdXB3YXJkcyB0aGUgaGllcmFyY2h5IG9mIGRpcmVjdG9yeSB0byBmaW5kIG91dAordGhlIGRpcmVjdG9yeSB3aGljaCBjb250YWlucyB0aGUgIkRFQklBTiIgc3ViLWRpcmVjdG9yeSBhbmQgaXQgd2lsbCByZXR1cm4KK2l0cyBwYXRoLiBUaGlzIGRpcmVjdG9yeSBpcyB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgYSBwYWNrYWdlIGJlaW5nIGJ1aWx0LgorCitJZiBubyBERUJJQU4gc3ViZGlyZWN0b3J5IGlzIGZvdW5kLCBpdCB3aWxsIHJldHVybiB1bmRlZi4KKworPWN1dAorCitzdWIgZ2V0X3BrZ19yb290X2RpcigkKSB7CisgICAgbXkgJGZpbGUgPSBzaGlmdDsKKyAgICAkZmlsZSA9fiBzey8rJH17fTsKKyAgICAkZmlsZSA9fiBzey8rW14vXSskfXt9IGlmIG5vdCAtZCAkZmlsZTsKKyAgICB3aGlsZSAoJGZpbGUpIHsKKwlyZXR1cm4gJGZpbGUgaWYgLWQgIiRmaWxlL0RFQklBTiI7CisJbGFzdCBpZiAkZmlsZSAhfiBtey99OworCSRmaWxlID1+IHN7LytbXi9dKyR9e307CisgICAgfQorICAgIHJldHVybiB1bmRlZjsKK30KKworPWl0ZW0gcmVsYXRpdmVfdG9fcGtnX3Jvb3QoJGZpbGUpCisKK1JldHVybnMgdGhlIGZpbGVuYW1lIHJlbGF0aXZlIHRvIGdldF9wa2dfcm9vdF9kaXIoJGZpbGUpLgorCis9Y3V0CisKK3N1YiByZWxhdGl2ZV90b19wa2dfcm9vdCgkKSB7CisgICAgbXkgJGZpbGUgPSBzaGlmdDsKKyAgICBteSAkcGtnX3Jvb3QgPSBnZXRfcGtnX3Jvb3RfZGlyKCRmaWxlKTsKKyAgICBpZiAoZGVmaW5lZCAkcGtnX3Jvb3QpIHsKKwkkcGtnX3Jvb3QgLj0gIi8iOworCXJldHVybiAkZmlsZSBpZiAoJGZpbGUgPX4gcy9eXFEkcGtnX3Jvb3RcRS8vKTsKKyAgICB9CisgICAgcmV0dXJuIHVuZGVmOworfQorCis9aXRlbSBndWVzc19wa2dfcm9vdF9kaXIoJGZpbGUpCisKK1RoaXMgZnVuY3Rpb24gdHJpZXMgdG8gZ3Vlc3MgdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoZSBwYWNrYWdlIGJ1aWxkIHRyZWUuCitJdCB3aWxsIGZpcnN0IHVzZSBnZXRfcGtnX3Jvb3RfZGlyKCksIGJ1dCBpdCB3aWxsIGZhbGxiYWNrIHRvIGEgbW9yZQoraW1wcmVjaXNlIGNoZWNrOiBuYW1lbHkgaXQgd2lsbCB1c2UgdGhlIHBhcmVudCBkaXJlY3RvcnkgdGhhdCBpcyBhCitzdWItZGlyZWN0b3J5IG9mIHRoZSBkZWJpYW4gZGlyZWN0b3J5LgorCitJdCBjYW4gc3RpbGwgcmV0dXJuIHVuZGVmIGlmIGEgZmlsZSBvdXRzaWRlIG9mIHRoZSBkZWJpYW4gc3ViLWRpcmVjdG9yeSBpcworcHJvdmlkZWQuCisKKz1jdXQKKworc3ViIGd1ZXNzX3BrZ19yb290X2RpcigkKSB7CisgICAgbXkgJGZpbGUgPSBzaGlmdDsKKyAgICBteSAkcm9vdCA9IGdldF9wa2dfcm9vdF9kaXIoJGZpbGUpOworICAgIHJldHVybiAkcm9vdCBpZiBkZWZpbmVkICRyb290OworCisgICAgJGZpbGUgPX4gc3svKyR9e307CisgICAgJGZpbGUgPX4gc3svK1teL10rJH17fSBpZiBub3QgLWQgJGZpbGU7CisgICAgbXkgJHBhcmVudCA9ICRmaWxlOworICAgIHdoaWxlICgkZmlsZSkgeworCSRwYXJlbnQgPX4gc3svK1teL10rJH17fTsKKwlsYXN0IGlmIG5vdCAtZCAkcGFyZW50OworCXJldHVybiAkZmlsZSBpZiBjaGVja19maWxlc19hcmVfdGhlX3NhbWUoImRlYmlhbiIsICRwYXJlbnQpOworCSRmaWxlID0gJHBhcmVudDsKKwlsYXN0IGlmICRmaWxlICF+IG17L307CisgICAgfQorICAgIHJldHVybiB1bmRlZjsKK30KKworPWl0ZW0gY2hlY2tfZmlsZXNfYXJlX3RoZV9zYW1lKCRmaWxlMSwgJGZpbGUyLCAkcmVzb2x2ZV9zeW1saW5rKQorCitUaGlzIGZ1bmN0aW9uIHZlcmlmaWVzIHRoYXQgYm90aCBmaWxlcyBhcmUgdGhlIHNhbWUgYnkgY2hlY2tpbmcgdGhhdCB0aGUgZGV2aWNlCitudW1iZXJzIGFuZCB0aGUgaW5vZGUgbnVtYmVycyByZXR1cm5lZCBieSBzdGF0KCkvbHN0YXQoKSBhcmUgdGhlIHNhbWUuIElmCiskcmVzb2x2ZV9zeW1saW5rIGlzIHRydWUgdGhlbiBzdGF0KCkgaXMgdXNlZCwgb3RoZXJ3aXNlIGxzdGF0KCkgaXMgdXNlZC4KKworPWN1dAorCitzdWIgY2hlY2tfZmlsZXNfYXJlX3RoZV9zYW1lKCQkOyQpIHsKKyAgICBteSAoJGZpbGUxLCAkZmlsZTIsICRyZXNvbHZlX3N5bWxpbmspID0gQF87CisgICAgcmV0dXJuIDAgaWYgKCghIC1lICRmaWxlMSkgfHwgKCEgLWUgJGZpbGUyKSk7CisgICAgbXkgKEBzdGF0MSwgQHN0YXQyKTsKKyAgICBpZiAoJHJlc29sdmVfc3ltbGluaykgeworICAgICAgICBAc3RhdDEgPSBzdGF0KCRmaWxlMSk7CisgICAgICAgIEBzdGF0MiA9IHN0YXQoJGZpbGUyKTsKKyAgICB9IGVsc2UgeworICAgICAgICBAc3RhdDEgPSBsc3RhdCgkZmlsZTEpOworICAgICAgICBAc3RhdDIgPSBsc3RhdCgkZmlsZTIpOworICAgIH0KKyAgICBteSAkcmVzdWx0ID0gKCRzdGF0MVswXSA9PSAkc3RhdDJbMF0pICYmICgkc3RhdDFbMV0gPT0gJHN0YXQyWzFdKTsKKyAgICByZXR1cm4gJHJlc3VsdDsKK30KKworCis9aXRlbSBjYW5vbnBhdGgoJGZpbGUpCisKK1RoaXMgZnVuY3Rpb24gcmV0dXJucyBhIGNsZWFuZWQgcGF0aC4gSXQgc2ltcGxpZmllcyBkb3VibGUgLy8sIGFuZCByZW1vdmUKKy8uLyBhbmQgLy4uLyBpbnRlbGxpZ2VudGx5LiBGb3IgLy4uLyBpdCBzaW1wbGlmaWVzIHRoZSBwYXRoIG9ubHkgaWYgdGhlCitwcmV2aW91cyBlbGVtZW50IGlzIG5vdCBhIHN5bWxpbmsuIFRodXMgaXQgc2hvdWxkIG9ubHkgYmUgdXNlZCBvbiByZWFsCitmaWxlbmFtZXMuCisKKz1jdXQKKworc3ViIGNhbm9ucGF0aCgkKSB7CisgICAgbXkgJHBhdGggPSBzaGlmdDsKKyAgICAkcGF0aCA9IEZpbGU6OlNwZWMtPmNhbm9ucGF0aCgkcGF0aCk7CisgICAgbXkgKCR2LCAkZGlycywgJGZpbGUpID0gRmlsZTo6U3BlYy0+c3BsaXRwYXRoKCRwYXRoKTsKKyAgICBteSBAZGlycyA9IEZpbGU6OlNwZWMtPnNwbGl0ZGlyKCRkaXJzKTsKKyAgICBteSBAbmV3OworICAgIGZvcmVhY2ggbXkgJGQgKEBkaXJzKSB7CisJaWYgKCRkIGVxICcuLicpIHsKKwkgICAgaWYgKHNjYWxhcihAbmV3KSA+IDAgYW5kICRuZXdbLTFdIG5lICIuLiIpIHsKKwkJbmV4dCBpZiAkbmV3Wy0xXSBlcSAiIjsgIyBSb290IGRpcmVjdG9yeSBoYXMgbm8gcGFyZW50CisJCW15ICRwYXJlbnQgPSBGaWxlOjpTcGVjLT5jYXRwYXRoKCR2LAorCQkJRmlsZTo6U3BlYy0+Y2F0ZGlyKEBuZXcpLCAnJyk7CisJCWlmIChub3QgLWwgJHBhcmVudCkgeworCQkgICAgcG9wIEBuZXc7CisJCX0gZWxzZSB7CisJCSAgICBwdXNoIEBuZXcsICRkOworCQl9CisJICAgIH0gZWxzZSB7CisJCXB1c2ggQG5ldywgJGQ7CisJICAgIH0KKwl9IGVsc2UgeworCSAgICBwdXNoIEBuZXcsICRkOworCX0KKyAgICB9CisgICAgcmV0dXJuIEZpbGU6OlNwZWMtPmNhdHBhdGgoJHYsIEZpbGU6OlNwZWMtPmNhdGRpcihAbmV3KSwgJGZpbGUpOworfQorCis9aXRlbSAkbmV3cGF0aCA9IHJlc29sdmVfc3ltbGluaygkc3ltbGluaykKKworUmV0dXJuIHRoZSBmaWxlbmFtZSBvZiB0aGUgZmlsZSBwb2ludGVkIGJ5IHRoZSBzeW1saW5rLiBUaGUgbmV3IG5hbWUgaXMKK2Nhbm9uaWNhbGl6ZWQgYnkgY2Fub25wYXRoKCkuCisKKz1jdXQKKworc3ViIHJlc29sdmVfc3ltbGluaygkKSB7CisgICAgbXkgJHN5bWxpbmsgPSBzaGlmdDsKKyAgICBteSAkY29udGVudCA9IHJlYWRsaW5rKCRzeW1saW5rKTsKKyAgICByZXR1cm4gdW5kZWYgdW5sZXNzIGRlZmluZWQgJGNvbnRlbnQ7CisgICAgaWYgKEZpbGU6OlNwZWMtPmZpbGVfbmFtZV9pc19hYnNvbHV0ZSgkY29udGVudCkpIHsKKwlyZXR1cm4gY2Fub25wYXRoKCRjb250ZW50KTsKKyAgICB9IGVsc2UgeworCW15ICgkbGlua192LCAkbGlua19kLCAkbGlua19mKSA9IEZpbGU6OlNwZWMtPnNwbGl0cGF0aCgkc3ltbGluayk7CisJbXkgKCRjb250X3YsICRjb250X2QsICRjb250X2YpID0gRmlsZTo6U3BlYy0+c3BsaXRwYXRoKCRjb250ZW50KTsKKwlteSAkbmV3ID0gRmlsZTo6U3BlYy0+Y2F0cGF0aCgkbGlua192LCAkbGlua19kIC4gIi8iIC4gJGNvbnRfZCwgJGNvbnRfZik7CisJcmV0dXJuIGNhbm9ucGF0aCgkbmV3KTsKKyAgICB9Cit9CisKKworPWl0ZW0gbXkgJGNtZHBhdGggPSBmaW5kX2NvbW1hbmQoJGNvbW1hbmQpCisKK1JldHVybiB0aGUgcGF0aCBvZiB0aGUgY29tbWFuZCBpZiBhdmFpbGFibGUgb24gYW4gYWJzb2x1dGUgb3IgcmVsYXRpdmUKK3BhdGggb3Igb24gdGhlICRQQVRILCB1bmRlZiBvdGhlcndpc2UuCisKKz1jdXQKKworc3ViIGZpbmRfY29tbWFuZCgkKSB7CisgICAgbXkgJGNtZCA9IHNoaWZ0OworCisgICAgaWYgKCRjbWQgPX4gbXsvfSkgeworCXJldHVybiAiJGNtZCIgaWYgLXggIiRjbWQiOworICAgIH0gZWxzZSB7CisJZm9yZWFjaCBteSAkZGlyIChzcGxpdCgvOi8sICRFTlZ7J1BBVEgnfSkpIHsKKwkgICAgcmV0dXJuICIkZGlyLyRjbWQiIGlmIC14ICIkZGlyLyRjbWQiOworCX0KKyAgICB9CisgICAgcmV0dXJuIHVuZGVmOworfQorCis9aXRlbSBteSAkY29udHJvbF9maWxlID0gZ2V0X2NvbnRyb2xfcGF0aCgkcGtnLCAkZmlsZXR5cGUpCisKK1JldHVybiB0aGUgcGF0aCBvZiB0aGUgY29udHJvbCBmaWxlIG9mIHR5cGUgJGZpbGV0eXBlIGZvciB0aGUgZ2l2ZW4KK3BhY2thZ2UuCisKKz1pdGVtIG15IEBjb250cm9sX2ZpbGVzID0gZ2V0X2NvbnRyb2xfcGF0aCgkcGtnKQorCitSZXR1cm4gdGhlIHBhdGggb2YgYWxsIGF2YWlsYWJsZSBjb250cm9sIGZpbGVzIGZvciB0aGUgZ2l2ZW4gcGFja2FnZS4KKworPWN1dAorCitzdWIgZ2V0X2NvbnRyb2xfcGF0aCgkOyQpIHsKKyAgICBteSAoJHBrZywgJGZpbGV0eXBlKSA9IEBfOworICAgIG15ICRjb250cm9sX2ZpbGU7CisgICAgbXkgQGV4ZWMgPSAoImRwa2ctcXVlcnkiLCAiLS1jb250cm9sLXBhdGgiLCAkcGtnKTsKKyAgICBwdXNoIEBleGVjLCAkZmlsZXR5cGUgaWYgZGVmaW5lZCAkZmlsZXR5cGU7CisgICAgc3Bhd24oZXhlYyA9PiBcQGV4ZWMsIHdhaXRfY2hpbGQgPT4gMSwgdG9fc3RyaW5nID0+IFwkY29udHJvbF9maWxlKTsKKyAgICBjaG9tcCgkY29udHJvbF9maWxlKTsKKyAgICBpZiAoZGVmaW5lZCAkZmlsZXR5cGUpIHsKKwlyZXR1cm4gdW5kZWYgaWYgJGNvbnRyb2xfZmlsZSBlcSAiIjsKKwlyZXR1cm4gJGNvbnRyb2xfZmlsZTsKKyAgICB9CisgICAgcmV0dXJuICgpIGlmICRjb250cm9sX2ZpbGUgZXEgIiI7CisgICAgcmV0dXJuIHNwbGl0KC9cbi8sICRjb250cm9sX2ZpbGUpOworfQorCis9aXRlbSBteSAkZmlsZSA9IGZpbmRfYnVpbGRfZmlsZSgkYmFzZW5hbWUpCisKK1NlbGVjdHMgdGhlIHJpZ2h0IHZhcmlhbnQgb2YgdGhlIGdpdmVuIGZpbGU6IHRoZSBhcmNoLXNwZWNpZmljIHZhcmlhbnQKKygiJGJhc2VuYW1lLiRhcmNoIikgaGFzIHByaW9yaXR5IG92ZXIgdGhlIE9TLXNwZWNpZmljIHZhcmlhbnQKKygiJGJhc2VuYW1lLiRvcyIpIHdoaWNoIGhhcyBwcmlvcml0eSBvdmVyIHRoZSBkZWZhdWx0IHZhcmlhbnQKKygiJGJhc2VuYW1lIikuIElmIG5vbmUgb2YgdGhlIGZpbGVzIGV4aXN0cywgdGhlbiBpdCByZXR1cm5zIHVuZGVmLgorCis9aXRlbSBteSBAZmlsZXMgPSBmaW5kX2J1aWxkX2ZpbGUoJGJhc2VuYW1lKQorCitSZXR1cm4gdGhlIGF2YWlsYWJsZSB2YXJpYW50cyBvZiB0aGUgZ2l2ZW4gZmlsZS4gUmV0dXJucyBhbiBlbXB0eQorbGlzdCBpZiBub25lIG9mIHRoZSBmaWxlcyBleGlzdHMuCisKKz1jdXQKKworc3ViIGZpbmRfYnVpbGRfZmlsZSgkKSB7CisgICAgbXkgJGJhc2UgPSBzaGlmdDsKKyAgICBteSAkaG9zdF9hcmNoID0gZ2V0X2hvc3RfYXJjaCgpOworICAgIG15ICgkYWJpLCAkaG9zdF9vcywgJGNwdSkgPSBkZWJhcmNoX3RvX2RlYnRyaXBsZXQoJGhvc3RfYXJjaCk7CisgICAgbXkgQGZpbGVzOworICAgIGZvcmVhY2ggbXkgJGYgKCIkYmFzZS4kaG9zdF9hcmNoIiwgIiRiYXNlLiRob3N0X29zIiwgIiRiYXNlIikgeworICAgICAgICBwdXNoIEBmaWxlcywgJGYgaWYgLWYgJGY7CisgICAgfQorICAgIHJldHVybiBAZmlsZXMgaWYgd2FudGFycmF5OworICAgIHJldHVybiAkZmlsZXNbMF0gaWYgc2NhbGFyIEBmaWxlczsKKyAgICByZXR1cm4gdW5kZWY7Cit9CisKKz1iYWNrCisKKz1oZWFkMSBDSEFOR0VTCisKKz1oZWFkMiBWZXJzaW9uIDEuMDMKKworTmV3IGZ1bmN0aW9uOiBmaW5kX2J1aWxkX2ZpbGUoKQorCis9aGVhZDIgVmVyc2lvbiAxLjAyCisKK05ldyBmdW5jdGlvbjogZ2V0X2NvbnRyb2xfcGF0aCgpCisKKz1oZWFkMiBWZXJzaW9uIDEuMDEKKworTmV3IGZ1bmN0aW9uOiBmaW5kX2NvbW1hbmQoKQorCis9aGVhZDEgQVVUSE9SCisKK1JhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4uCisKKz1jdXQKKworMTsKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9EcGtnL1NobGlicy5wbSBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9EcGtnL1NobGlicy5wbQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45NWVmNGZlCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL0Rwa2cvU2hsaWJzLnBtCkBAIC0wLDAgKzEsMTI4IEBACisjIENvcHlyaWdodCDCqSAyMDA3IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KKyMKKyMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyMKKyMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisjIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisjIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyMKKyMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisKK3BhY2thZ2UgRHBrZzo6U2hsaWJzOworCit1c2Ugc3RyaWN0OwordXNlIHdhcm5pbmdzOworCitvdXIgJFZFUlNJT04gPSAiMC4wMSI7CisKK3VzZSBiYXNlIHF3KEV4cG9ydGVyKTsKK291ciBARVhQT1JUX09LID0gcXcoQGxpYnJhcnlwYXRocyBmaW5kX2xpYnJhcnkpOworCit1c2UgRmlsZTo6U3BlYzsKKwordXNlIERwa2c6OkdldHRleHQ7Cit1c2UgRHBrZzo6RXJyb3JIYW5kbGluZzsKK3VzZSBEcGtnOjpTaGxpYnM6Ok9iamR1bXA7Cit1c2UgRHBrZzo6UGF0aCBxdyhyZXNvbHZlX3N5bWxpbmsgY2Fub25wYXRoKTsKK3VzZSBEcGtnOjpBcmNoIHF3KGRlYmFyY2hfdG9fZ251dHJpcGxldCBnZXRfYnVpbGRfYXJjaCBnZXRfaG9zdF9hcmNoKTsKKwordXNlIGNvbnN0YW50IERFRkFVTFRfTElCUkFSWV9QQVRIID0+CisgICAgcXcoL2xpYiAvdXNyL2xpYiAvbGliMzIgL3Vzci9saWIzMiAvbGliNjQgL3Vzci9saWI2NAorICAgICAgIC9lbXVsL2lhMzItbGludXgvbGliIC9lbXVsL2lhMzItbGludXgvdXNyL2xpYik7CisKKyMgQWRqdXN0IHNldCBvZiBkaXJlY3RvcmllcyB0byBjb25zaWRlciB3aGVuIHdlJ3JlIGluIGEgc2l0dWF0aW9uIG9mIGEKKyMgY3Jvc3MtYnVpbGQgb3IgYSBidWlsZCBvZiBhIGNyb3NzLWNvbXBpbGVyCitteSBAY3Jvc3NsaWJyYXJ5cGF0aHM7CitteSAkY3Jvc3NwcmVmaXg7CisjIERldGVjdCBjcm9zcyBjb21waWxlciBidWlsZHMKK2lmICgkRU5We0dDQ19UQVJHRVR9KSB7CisgICAgJGNyb3NzcHJlZml4ID0gZGViYXJjaF90b19nbnV0cmlwbGV0KCRFTlZ7R0NDX1RBUkdFVH0pOworfQoraWYgKCRFTlZ7REVCX1RBUkdFVF9HTlVfVFlQRX0gYW5kCisgICAgKCRFTlZ7REVCX1RBUkdFVF9HTlVfVFlQRX0gbmUgJEVOVntERUJfQlVJTERfR05VX1RZUEV9KSkKK3sKKyAgICAkY3Jvc3NwcmVmaXggPSAkRU5We0RFQl9UQVJHRVRfR05VX1RZUEV9OworfQorIyBob3N0IGZvciBub3JtYWwgY3Jvc3MgYnVpbGRzLgoraWYgKGdldF9idWlsZF9hcmNoKCkgbmUgZ2V0X2hvc3RfYXJjaCgpKSB7CisgICAgJGNyb3NzcHJlZml4ID0gZGViYXJjaF90b19nbnV0cmlwbGV0KGdldF9ob3N0X2FyY2goKSk7Cit9CisjIERlZmluZSBsaXN0IG9mIGRpcmVjdG9yaWVzIGNvbnRhaW5pbmcgY3Jvc3NidWlsdCBsaWJyYXJpZXMKK2lmICgkY3Jvc3NwcmVmaXgpIHsKKyAgICBwdXNoIEBjcm9zc2xpYnJhcnlwYXRocywgIi8kY3Jvc3NwcmVmaXgvbGliIiwgIi91c3IvJGNyb3NzcHJlZml4L2xpYiIsCisgICAgICAgICAgICAiLyRjcm9zc3ByZWZpeC9saWIzMiIsICIvdXNyLyRjcm9zc3ByZWZpeC9saWIzMiIsCisgICAgICAgICAgICAiLyRjcm9zc3ByZWZpeC9saWI2NCIsICIvdXNyLyRjcm9zc3ByZWZpeC9saWI2NCI7Cit9CisKK291ciBAbGlicmFyeXBhdGhzID0gKERFRkFVTFRfTElCUkFSWV9QQVRILCBAY3Jvc3NsaWJyYXJ5cGF0aHMpOworCisjIFVwZGF0ZSBsaWJyYXJ5IHBhdGhzIHdpdGggTERfTElCUkFSWV9QQVRICitpZiAoJEVOVntMRF9MSUJSQVJZX1BBVEh9KSB7CisgICAgZm9yZWFjaCBteSAkcGF0aCAocmV2ZXJzZSBzcGxpdCggLzovLCAkRU5We0xEX0xJQlJBUllfUEFUSH0gKSkgeworCSRwYXRoID1+IHN7LyskfXt9OworCXVuc2hpZnQgQGxpYnJhcnlwYXRocywgJHBhdGg7CisgICAgfQorfQorCisjIFVwZGF0ZSBsaWJyYXJ5IHBhdGhzIHdpdGggbGQuc28gY29uZmlnCitwYXJzZV9sZHNvX2NvbmYoIi9ldGMvbGQuc28uY29uZiIpIGlmIC1lICIvZXRjL2xkLnNvLmNvbmYiOworCitteSAldmlzaXRlZDsKK3N1YiBwYXJzZV9sZHNvX2NvbmYgeworICAgIG15ICRmaWxlID0gc2hpZnQ7CisgICAgb3BlbiBteSAkZmgsICI8IiwgJGZpbGUgb3Igc3lzZXJyKF9nKCJjYW5ub3Qgb3BlbiAlcyIpLCAkZmlsZSk7CisgICAgJHZpc2l0ZWR7JGZpbGV9Kys7CisgICAgd2hpbGUgKDwkZmg+KSB7CisJbmV4dCBpZiAvXlxzKiQvOworCWNob21wOworCXN7LyskfXt9OworCWlmICgvXmluY2x1ZGVccysoXFMuKlxTKVxzKiQvKSB7CisJICAgIGZvcmVhY2ggbXkgJGluY2x1ZGUgKGdsb2IoJDEpKSB7CisJCXBhcnNlX2xkc29fY29uZigkaW5jbHVkZSkgaWYgLWUgJGluY2x1ZGUKKwkJICAgICYmICEkdmlzaXRlZHskaW5jbHVkZX07CisJICAgIH0KKwl9IGVsc2lmIChte15ccyovfSkgeworCSAgICBzL15ccysvLzsKKwkgICAgbXkgJGxpYmRpciA9ICRfOworCSAgICB1bmxlc3MgKHNjYWxhciBncmVwIHsgJF8gZXEgJGxpYmRpciB9IEBsaWJyYXJ5cGF0aHMpIHsKKwkJcHVzaCBAbGlicmFyeXBhdGhzLCAkbGliZGlyOworCSAgICB9CisJfQorICAgIH0KKyAgICBjbG9zZSAkZmg7Cit9CisKKyMgZmluZF9saWJyYXJ5ICgkc29uYW1lLCBcQHJwYXRoLCAkZm9ybWF0LCAkcm9vdCkKK3N1YiBmaW5kX2xpYnJhcnkgeworICAgIG15ICgkbGliLCAkcnBhdGgsICRmb3JtYXQsICRyb290KSA9IEBfOworICAgICRyb290ID0gIiIgaWYgbm90IGRlZmluZWQoJHJvb3QpOworICAgICRyb290ID1+IHN7LyskfXt9OworICAgIG15IEBycGF0aCA9IEB7JHJwYXRofTsKKyAgICBmb3JlYWNoIG15ICRkaXIgKEBycGF0aCwgQGxpYnJhcnlwYXRocykgeworCW15ICRjaGVja2RpciA9ICIkcm9vdCRkaXIiOworCSMgSWYgdGhlIGRpcmVjdG9yeSBjaGVja2VkIGlzIGEgc3ltbGluaywgY2hlY2sgaWYgaXQgZG9lc24ndAorCSMgcmVzb2x2ZSB0byBhbm90aGVyIHB1YmxpYyBkaXJlY3RvcnkgKHdoaWNoIGlzIHRoZW4gdGhlIGNhbm9uaWNhbAorCSMgZGlyZWN0b3J5IHRvIHVzZSBpbnN0ZWFkIG9mIHRoaXMgb25lKS4gVHlwaWNhbCBleGFtcGxlCisJIyBpcyAvdXNyL2xpYjY0IC0+IC91c3IvbGliIG9uIGFtZDY0LgorCWlmICgtbCAkY2hlY2tkaXIpIHsKKwkgICAgbXkgJG5ld2RpciA9IHJlc29sdmVfc3ltbGluaygkY2hlY2tkaXIpOworCSAgICBpZiAoZ3JlcCB7ICIkcm9vdCRfIiBlcSAiJG5ld2RpciIgfSAoQHJwYXRoLCBAbGlicmFyeXBhdGhzKSkgeworCQkkY2hlY2tkaXIgPSAkbmV3ZGlyOworCSAgICB9CisJfQorCWlmICgtZSAiJGNoZWNrZGlyLyRsaWIiKSB7CisJICAgIG15ICRsaWJmb3JtYXQgPSBEcGtnOjpTaGxpYnM6Ok9iamR1bXA6OmdldF9mb3JtYXQoIiRjaGVja2Rpci8kbGliIik7CisJICAgIGlmICgkZm9ybWF0IGVxICRsaWJmb3JtYXQpIHsKKwkJcmV0dXJuIGNhbm9ucGF0aCgiJGNoZWNrZGlyLyRsaWIiKTsKKwkgICAgfQorCX0KKyAgICB9CisgICAgcmV0dXJuIHVuZGVmOworfQorCisxOwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL0Rwa2cvU2hsaWJzL0NwcGZpbHQucG0gYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvRHBrZy9TaGxpYnMvQ3BwZmlsdC5wbQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lZTQxMDdkCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL0Rwa2cvU2hsaWJzL0NwcGZpbHQucG0KQEAgLTAsMCArMSwxMTMgQEAKKyMgQ29weXJpZ2h0IMKpIDIwMDktMjAxMCBNb2Rlc3RhcyBWYWluaXVzIDxtb2RheEBkZWJpYW4ub3JnPgorIworIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorIworIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorIworIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKworcGFja2FnZSBEcGtnOjpTaGxpYnM6OkNwcGZpbHQ7CisKK3VzZSBzdHJpY3Q7Cit1c2Ugd2FybmluZ3M7CisKK291ciAkVkVSU0lPTiA9ICIwLjAxIjsKKwordXNlIGJhc2UgJ0V4cG9ydGVyJzsKKwordXNlIERwa2c6OkVycm9ySGFuZGxpbmc7Cit1c2UgRHBrZzo6SVBDOwordXNlIElPOjpIYW5kbGU7CisKK291ciBARVhQT1JUID0gcXcoY3BwZmlsdF9kZW1hbmdsZV9jcHApOworb3VyIEBFWFBPUlRfT0sgPSBxdyhjcHBmaWx0X2RlbWFuZ2xlKTsKKworIyBBIGhhc2ggb2YgJ29iamVjdHMnIHJlZmVycmluZyB0byBwcmVmb3JrZWQgYysrZmlsdCBwcm9jZXNzZXMgZm9yIHRoZSBkaXN0aW5jdAorIyBkZW1hbmdsaW5nIHR5cGVzLgorbXkgJWNwcGZpbHRzOworCitzdWIgZ2V0X2NwcGZpbHQgeworICAgIG15ICR0eXBlID0gc2hpZnQgfHwgImF1dG8iOworCisgICAgIyBGb3JrIGMrK2ZpbHQgcHJvY2VzcyBmb3IgZGVtYW5nbGluZyAkdHlwZSB1bmxlc3MgaXQgaXMgZm9ya2VkIGFscmVhZHkuCisgICAgIyBLZWVwaW5nIGMrK2ZpbHQgcnVubmluZyBpbXByb3ZlcyBwZXJmb3JtYW5jZSBhIGxvdC4KKyAgICBteSAkZmlsdDsKKyAgICBpZiAoZXhpc3RzICRjcHBmaWx0c3skdHlwZX0pIHsKKwkkZmlsdCA9ICRjcHBmaWx0c3skdHlwZX07CisgICAgfSBlbHNlIHsKKwkkZmlsdCA9IHsgZnJvbSA9PiB1bmRlZiwgdG8gPT4gdW5kZWYsCisJICAgICAgICAgICAgbGFzdF9zeW1ib2wgPT4gIiIsIGxhc3RfcmVzdWx0ID0+ICIiIH07CisJJGZpbHQtPntwaWR9ID0gc3Bhd24oZXhlYyA9PiBbICdjKytmaWx0JywgIi0tZm9ybWF0PSR0eXBlIiBdLAorCSAgICAgICAgICAgICAgICAgICAgIGZyb21fcGlwZSA9PiBcJGZpbHQtPntmcm9tfSwKKwkgICAgICAgICAgICAgICAgICAgICB0b19waXBlID0+IFwkZmlsdC0+e3RvfSk7CisJaW50ZXJuZXJyKF9nKCJ1bmFibGUgdG8gZXhlY3V0ZSAlcyIpLCAiYysrZmlsdCIpCisJICAgIHVubGVzcyBkZWZpbmVkICRmaWx0LT57ZnJvbX07CisJJGZpbHQtPntmcm9tfS0+YXV0b2ZsdXNoKDEpOworCisJJGNwcGZpbHRzeyR0eXBlfSA9ICRmaWx0OworICAgIH0KKyAgICByZXR1cm4gJGZpbHQ7Cit9CisKKyMgRGVtYW5nbGUgdGhlIGdpdmVuICRzeW1ib2wgdXNpbmcgZGVtYW5nbGVyIGZvciB0aGUgc3BlY2lmaWVkICR0eXBlIChkZWZhdWx0cworIyB0byAnYXV0bycpIC4gRXh0cmFuZW91cyBjaGFyYWN0ZXJzIHRyYWlsaW5nIGFmdGVyIGEgbWFuZ2xlZCBuYW1lIGFyZSBrZXB0CisjIGludGFjdC4gSWYgbmVpdGhlciB3aG9sZSAkc3ltYm9sIG5vciBwb3J0aW9uIG9mIGl0IGNvdWxkIGJlIGRlbWFuZ2xlZCwgdW5kZWYKKyMgaXMgcmV0dXJuZWQuCitzdWIgY3BwZmlsdF9kZW1hbmdsZSB7CisgICAgbXkgKCRzeW1ib2wsICR0eXBlKSA9IEBfOworCisgICAgIyBTdGFydCBvciBnZXQgYysrZmlsdCAnb2JqZWN0JyBmb3IgdGhlIHJlcXVlc3RlZCB0eXBlLgorICAgIG15ICRmaWx0ID0gZ2V0X2NwcGZpbHQoJHR5cGUpOworCisgICAgIyBSZW1lbWJlciB0aGUgbGFzdCByZXN1bHQuIFN1Y2ggYSBsb2NhbCBvcHRpbWl6YXRpb24gaXMgY2hlYXAgYW5kIHVzZWZ1bAorICAgICMgd2hlbiBzZXF1ZW50aWFsIHBhdHRlcm4gbWF0Y2hpbmcgaXMgcGVyZm9ybWVkLgorICAgIGlmICgkZmlsdC0+e2xhc3Rfc3ltYm9sfSBuZSAkc3ltYm9sKSB7CisJIyBUaGlzIHdyaXRlL3JlYWQgb3BlcmF0aW9uIHNob3VsZCBub3QgZGVhZGxvY2sgYmVjYXVzZSBjKytmaWx0IGZsdXNoZXMKKwkjIG91dHB1dCBidWZmZXIgb24gTEYgb3IgZWFjaCBpbnZhbGlkIGNoYXJhY3Rlci4KKwlwcmludCB7ICRmaWx0LT57ZnJvbX0gfSAkc3ltYm9sLCAiXG4iOworCW15ICRkZW1hbmdsZWQgPSByZWFkbGluZSgkZmlsdC0+e3RvfSk7CisJY2hvcCAkZGVtYW5nbGVkOworCisJIyBJZiB0aGUgc3ltYm9sIHdhcyBub3QgZGVtYW5nbGVkLCByZXR1cm4gdW5kZWYKKwkkZGVtYW5nbGVkID0gdW5kZWYgaWYgJHN5bWJvbCBlcSAkZGVtYW5nbGVkOworCisJIyBSZW1lbWJlciB0aGUgbGFzdCByZXN1bHQKKwkkZmlsdC0+e2xhc3Rfc3ltYm9sfSA9ICRzeW1ib2w7CisJJGZpbHQtPntsYXN0X3Jlc3VsdH0gPSAkZGVtYW5nbGVkOworICAgIH0KKyAgICByZXR1cm4gJGZpbHQtPntsYXN0X3Jlc3VsdH07Cit9CisKK3N1YiBjcHBmaWx0X2RlbWFuZ2xlX2NwcCB7CisgICAgbXkgJHN5bWJvbCA9IHNoaWZ0OworICAgIHJldHVybiBjcHBmaWx0X2RlbWFuZ2xlKCRzeW1ib2wsICdhdXRvJyk7Cit9CisKK3N1YiB0ZXJtaW5hdGVfY3BwZmlsdHMgeworICAgIGZvcmVhY2ggKGtleXMgJWNwcGZpbHRzKSB7CisJbmV4dCBpZiBub3QgZGVmaW5lZCAkY3BwZmlsdHN7JF99e3BpZH07CisJY2xvc2UgJGNwcGZpbHRzeyRffXtmcm9tfTsKKwljbG9zZSAkY3BwZmlsdHN7JF99e3RvfTsKKwl3YWl0X2NoaWxkKCRjcHBmaWx0c3skX317cGlkfSwgImNtZGxpbmUiID0+ICJjKytmaWx0IiwKKwkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm5vY2hlY2siID0+IDEsCisJICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0aW1lb3V0IiA9PiA1KTsKKwlkZWxldGUgJGNwcGZpbHRzeyRffTsKKyAgICB9Cit9CisKKyMgQ2xvc2UvdGVybWluYXRlIHJ1bm5pbmcgYysrZmlsdCBwcm9jZXNzKGVzKQorRU5EIHsKKyAgICAjIE1ha2Ugc3VyZSBleGl0Y29kZSBpcyBub3QgY2hhbmdlZCAoYnkgd2FpdF9jaGlsZCkKKyAgICBteSAkZXhpdGNvZGUgPSAkPzsKKyAgICB0ZXJtaW5hdGVfY3BwZmlsdHMoKTsKKyAgICAkPyA9ICRleGl0Y29kZTsKK30KKworMTsKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9EcGtnL1NobGlicy9PYmpkdW1wLnBtIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL0Rwa2cvU2hsaWJzL09iamR1bXAucG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTAzYjVlOAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9EcGtnL1NobGlicy9PYmpkdW1wLnBtCkBAIC0wLDAgKzEsNDEzIEBACisjIENvcHlyaWdodCDCqSAyMDA3LTIwMTAgUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorIworIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorIworIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorIworIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKworcGFja2FnZSBEcGtnOjpTaGxpYnM6Ok9iamR1bXA7CisKK3VzZSBzdHJpY3Q7Cit1c2Ugd2FybmluZ3M7CisKK3VzZSBEcGtnOjpHZXR0ZXh0OwordXNlIERwa2c6OkVycm9ySGFuZGxpbmc7Cit1c2UgRHBrZzo6UGF0aCBxdyhmaW5kX2NvbW1hbmQpOwordXNlIERwa2c6OkFyY2ggcXcoZGViYXJjaF90b19nbnV0cmlwbGV0IGdldF9idWlsZF9hcmNoIGdldF9ob3N0X2FyY2gpOwordXNlIERwa2c6OklQQzsKKworb3VyICRWRVJTSU9OID0gIjAuMDEiOworCisjIERlY2lkZSB3aGljaCBvYmpkdW1wIHRvIGNhbGwKK291ciAkT0JKRFVNUCA9ICJvYmpkdW1wIjsKK2lmIChnZXRfYnVpbGRfYXJjaCgpIG5lIGdldF9ob3N0X2FyY2goKSkgeworICAgIG15ICRvZCA9IGRlYmFyY2hfdG9fZ251dHJpcGxldChnZXRfaG9zdF9hcmNoKCkpIC4gIi1vYmpkdW1wIjsKKyAgICAkT0JKRFVNUCA9ICRvZCBpZiBmaW5kX2NvbW1hbmQoJG9kKTsKK30KKworCitzdWIgbmV3IHsKKyAgICBteSAkdGhpcyA9IHNoaWZ0OworICAgIG15ICRjbGFzcyA9IHJlZigkdGhpcykgfHwgJHRoaXM7CisgICAgbXkgJHNlbGYgPSB7ICdvYmplY3RzJyA9PiB7fSB9OworICAgIGJsZXNzICRzZWxmLCAkY2xhc3M7CisgICAgcmV0dXJuICRzZWxmOworfQorCitzdWIgYWRkX29iamVjdCB7CisgICAgbXkgKCRzZWxmLCAkb2JqKSA9IEBfOworICAgIG15ICRpZCA9ICRvYmotPmdldF9pZDsKKyAgICBpZiAoJGlkKSB7CisJJHNlbGYtPntvYmplY3RzfXskaWR9ID0gJG9iajsKKyAgICB9CisgICAgcmV0dXJuICRpZDsKK30KKworc3ViIGFuYWx5emUgeworICAgIG15ICgkc2VsZiwgJGZpbGUpID0gQF87CisgICAgbXkgJG9iaiA9IERwa2c6OlNobGliczo6T2JqZHVtcDo6T2JqZWN0LT5uZXcoJGZpbGUpOworCisgICAgcmV0dXJuICRzZWxmLT5hZGRfb2JqZWN0KCRvYmopOworfQorCitzdWIgbG9jYXRlX3N5bWJvbCB7CisgICAgbXkgKCRzZWxmLCAkbmFtZSkgPSBAXzsKKyAgICBmb3JlYWNoIG15ICRvYmogKHZhbHVlcyAleyRzZWxmLT57b2JqZWN0c319KSB7CisJbXkgJHN5bSA9ICRvYmotPmdldF9zeW1ib2woJG5hbWUpOworCWlmIChkZWZpbmVkKCRzeW0pICYmICRzeW0tPntkZWZpbmVkfSkgeworCSAgICByZXR1cm4gJHN5bTsKKwl9CisgICAgfQorICAgIHJldHVybiB1bmRlZjsKK30KKworc3ViIGdldF9vYmplY3QgeworICAgIG15ICgkc2VsZiwgJG9iamlkKSA9IEBfOworICAgIGlmICgkc2VsZi0+aGFzX29iamVjdCgkb2JqaWQpKSB7CisJcmV0dXJuICRzZWxmLT57b2JqZWN0c317JG9iamlkfTsKKyAgICB9CisgICAgcmV0dXJuIHVuZGVmOworfQorCitzdWIgaGFzX29iamVjdCB7CisgICAgbXkgKCRzZWxmLCAkb2JqaWQpID0gQF87CisgICAgcmV0dXJuIGV4aXN0cyAkc2VsZi0+e29iamVjdHN9eyRvYmppZH07Cit9CisKK3sKKyAgICBteSAlZm9ybWF0OyAjIENhY2hlIG9mIHJlc3VsdAorICAgIHN1YiBnZXRfZm9ybWF0IHsKKwlteSAoJGZpbGUpID0gQF87CisKKwlpZiAoZXhpc3RzICRmb3JtYXR7JGZpbGV9KSB7CisJICAgIHJldHVybiAkZm9ybWF0eyRmaWxlfTsKKwl9IGVsc2UgeworCSAgICBteSAoJG91dHB1dCwgJW9wdHMsICRwaWQsICRyZXMpOworCSAgICBpZiAoJE9CSkRVTVAgbmUgIm9iamR1bXAiKSB7CisJCSRvcHRzeyJlcnJvcl90b19maWxlIn0gPSAiL2Rldi9udWxsIjsKKwkgICAgfQorCSAgICAkcGlkID0gc3Bhd24oZXhlYyA9PiBbICRPQkpEVU1QLCAiLWEiLCAiLS0iLCAkZmlsZSBdLAorCQkJIGVudiA9PiB7ICJMQ19BTEwiID0+ICJDIiB9LAorCQkJIHRvX3BpcGUgPT4gXCRvdXRwdXQsICVvcHRzKTsKKwkgICAgd2hpbGUgKDwkb3V0cHV0PikgeworCQljaG9tcDsKKwkJaWYgKC9eXHMqXFMrOlxzKmZpbGVccytmb3JtYXRccysoXFMrKVxzKiQvKSB7CisJCSAgICAkZm9ybWF0eyRmaWxlfSA9ICQxOworCQkgICAgJHJlcyA9ICRmb3JtYXR7JGZpbGV9OworCQkgICAgbGFzdDsKKwkJfQorCSAgICB9CisJICAgIGNsb3NlKCRvdXRwdXQpOworCSAgICB3YWl0X2NoaWxkKCRwaWQsIG5vY2hlY2sgPT4gMSk7CisJICAgIGlmICgkPykgeworCQlzdWJwcm9jZXJyKCJvYmpkdW1wIikgaWYgJE9CSkRVTVAgZXEgIm9iamR1bXAiOworCQlsb2NhbCAkT0JKRFVNUCA9ICJvYmpkdW1wIjsKKwkJJHJlcyA9IGdldF9mb3JtYXQoJGZpbGUpOworCSAgICB9CisJICAgIHJldHVybiAkcmVzOworCX0KKyAgICB9Cit9CisKK3N1YiBpc19lbGYgeworICAgIG15ICgkZmlsZSkgPSBAXzsKKyAgICBvcGVuKEZJTEUsICI8IiwgJGZpbGUpIHx8IHN5c2VycihfZygiY2Fubm90IHJlYWQgJXMiKSwgJGZpbGUpOworICAgIG15ICgkaGVhZGVyLCAkcmVzdWx0KSA9ICgiIiwgMCk7CisgICAgaWYgKHJlYWQoRklMRSwgJGhlYWRlciwgNCkgPT0gNCkgeworCSRyZXN1bHQgPSAxIGlmICgkaGVhZGVyID1+IC9eXDE3N0VMRiQvKTsKKyAgICB9CisgICAgY2xvc2UoRklMRSk7CisgICAgcmV0dXJuICRyZXN1bHQ7Cit9CisKK3BhY2thZ2UgRHBrZzo6U2hsaWJzOjpPYmpkdW1wOjpPYmplY3Q7CisKK3VzZSBEcGtnOjpHZXR0ZXh0OwordXNlIERwa2c6OkVycm9ySGFuZGxpbmc7CisKK3N1YiBuZXcgeworICAgIG15ICR0aGlzID0gc2hpZnQ7CisgICAgbXkgJGZpbGUgPSBzaGlmdCB8fCAnJzsKKyAgICBteSAkY2xhc3MgPSByZWYoJHRoaXMpIHx8ICR0aGlzOworICAgIG15ICRzZWxmID0ge307CisgICAgYmxlc3MgJHNlbGYsICRjbGFzczsKKworICAgICRzZWxmLT5yZXNldDsKKyAgICBpZiAoJGZpbGUpIHsKKwkkc2VsZi0+YW5hbHl6ZSgkZmlsZSk7CisgICAgfQorCisgICAgcmV0dXJuICRzZWxmOworfQorCitzdWIgcmVzZXQgeworICAgIG15ICgkc2VsZikgPSBAXzsKKworICAgICRzZWxmLT57ZmlsZX0gPSAnJzsKKyAgICAkc2VsZi0+e2lkfSA9ICcnOworICAgICRzZWxmLT57U09OQU1FfSA9ICcnOworICAgICRzZWxmLT57SEFTSH0gPSAnJzsKKyAgICAkc2VsZi0+e0dOVV9IQVNIfSA9ICcnOworICAgICRzZWxmLT57U09OQU1FfSA9ICcnOworICAgICRzZWxmLT57TkVFREVEfSA9IFtdOworICAgICRzZWxmLT57UlBBVEh9ID0gW107CisgICAgJHNlbGYtPntkeW5zeW1zfSA9IHt9OworICAgICRzZWxmLT57ZmxhZ3N9ID0ge307CisgICAgJHNlbGYtPntkeW5yZWxvY3N9ID0ge307CisKKyAgICByZXR1cm4gJHNlbGY7Cit9CisKKworc3ViIGFuYWx5emUgeworICAgIG15ICgkc2VsZiwgJGZpbGUpID0gQF87CisKKyAgICAkZmlsZSB8fD0gJHNlbGYtPntmaWxlfTsKKyAgICByZXR1cm4gdW5sZXNzICRmaWxlOworCisgICAgJHNlbGYtPnJlc2V0OworICAgICRzZWxmLT57ZmlsZX0gPSAkZmlsZTsKKworICAgIGxvY2FsICRFTlZ7TENfQUxMfSA9ICdDJzsKKyAgICBvcGVuKG15ICRvYmpkdW1wLCAiLXwiLCAkT0JKRFVNUCwgIi13IiwgIi1mIiwgIi1wIiwgIi1UIiwgIi1SIiwgJGZpbGUpCisJfHwgc3lzZXJyKF9nKCJjYW5ub3QgZm9yayBmb3IgJXMiKSwgJE9CSkRVTVApOworICAgIG15ICRyZXQgPSAkc2VsZi0+cGFyc2Vfb2JqZHVtcF9vdXRwdXQoJG9iamR1bXApOworICAgIGNsb3NlKCRvYmpkdW1wKTsKKyAgICByZXR1cm4gJHJldDsKK30KKworc3ViIHBhcnNlX29iamR1bXBfb3V0cHV0IHsKKyAgICBteSAoJHNlbGYsICRmaCkgPSBAXzsKKworICAgIG15ICRzZWN0aW9uID0gIm5vbmUiOworICAgIHdoaWxlIChkZWZpbmVkKCRfID0gPCRmaD4pKSB7CisJY2hvbXA7CisJbmV4dCBpZiAvXlxzKiQvOworCisJaWYgKC9eRFlOQU1JQyBTWU1CT0wgVEFCTEU6LykgeworCSAgICAkc2VjdGlvbiA9ICJkeW5zeW0iOworCSAgICBuZXh0OworCX0gZWxzaWYgKC9eRFlOQU1JQyBSRUxPQ0FUSU9OIFJFQ09SRFMvKSB7CisJICAgICRzZWN0aW9uID0gImR5bnJlbG9jIjsKKwkgICAgJF8gPSA8JGZoPjsgIyBTa2lwIGhlYWRlcgorCSAgICBuZXh0OworCX0gZWxzaWYgKC9eRHluYW1pYyBTZWN0aW9uOi8pIHsKKwkgICAgJHNlY3Rpb24gPSAiZHluaW5mbyI7CisJICAgIG5leHQ7CisJfSBlbHNpZiAoL15Qcm9ncmFtIEhlYWRlcjovKSB7CisJICAgICRzZWN0aW9uID0gImhlYWRlciI7CisJICAgIG5leHQ7CisJfSBlbHNpZiAoL15WZXJzaW9uIGRlZmluaXRpb25zOi8pIHsKKwkgICAgJHNlY3Rpb24gPSAidmVyZGVmIjsKKwkgICAgbmV4dDsKKwl9IGVsc2lmICgvXlZlcnNpb24gUmVmZXJlbmNlczovKSB7CisJICAgICRzZWN0aW9uID0gInZlcnJlZiI7CisJICAgIG5leHQ7CisJfQorCisJaWYgKCRzZWN0aW9uIGVxICJkeW5zeW0iKSB7CisJICAgICRzZWxmLT5wYXJzZV9keW5hbWljX3N5bWJvbCgkXyk7CisJfSBlbHNpZiAoJHNlY3Rpb24gZXEgImR5bnJlbG9jIikgeworCSAgICBpZiAoL15cUytccysoXFMrKVxzKyhcUyspXHMqJC8pIHsKKwkJJHNlbGYtPntkeW5yZWxvY3N9eyQyfSA9ICQxOworCSAgICB9IGVsc2UgeworCQl3YXJuaW5nKF9nKCJDb3VsZG4ndCBwYXJzZSBkeW5hbWljIHJlbG9jYXRpb24gcmVjb3JkOiAlcyIpLCAkXyk7CisJICAgIH0KKwl9IGVsc2lmICgkc2VjdGlvbiBlcSAiZHluaW5mbyIpIHsKKwkgICAgaWYgKC9eXHMqTkVFREVEXHMrKFxTKykvKSB7CisJCXB1c2ggQHskc2VsZi0+e05FRURFRH19LCAkMTsKKwkgICAgfSBlbHNpZiAoL15ccypTT05BTUVccysoXFMrKS8pIHsKKwkJJHNlbGYtPntTT05BTUV9ID0gJDE7CisJICAgIH0gZWxzaWYgKC9eXHMqSEFTSFxzKyhcUyspLykgeworCQkkc2VsZi0+e0hBU0h9ID0gJDE7CisJICAgIH0gZWxzaWYgKC9eXHMqR05VX0hBU0hccysoXFMrKS8pIHsKKwkJJHNlbGYtPntHTlVfSEFTSH0gPSAkMTsKKwkgICAgfSBlbHNpZiAoL15ccypSVU5QQVRIXHMrKFxTKykvKSB7CisgICAgICAgICAgICAgICAgIyBSVU5QQVRIIHRha2VzIHByZWNlZGVuY2Ugb3ZlciBSUEFUSCBidXQgaXMKKyAgICAgICAgICAgICAgICAjIGNvbnNpZGVyZWQgYWZ0ZXIgTERfTElCUkFSWV9QQVRIIHdoaWxlIFJQQVRICisgICAgICAgICAgICAgICAgIyBpcyBjb25zaWRlcmVkIGJlZm9yZSAoaWYgUlVOUEFUSCBpcyBub3Qgc2V0KS4KKyAgICAgICAgICAgICAgICAkc2VsZi0+e1JQQVRIfSA9IFsgc3BsaXQgKC86LywgJDEpIF07CisJICAgIH0gZWxzaWYgKC9eXHMqUlBBVEhccysoXFMrKS8pIHsKKyAgICAgICAgICAgICAgICB1bmxlc3MgKHNjYWxhcihAeyRzZWxmLT57UlBBVEh9fSkpIHsKKyAgICAgICAgICAgICAgICAgICAgJHNlbGYtPntSUEFUSH0gPSBbIHNwbGl0ICgvOi8sICQxKSBdOworICAgICAgICAgICAgICAgIH0KKwkgICAgfQorCX0gZWxzaWYgKCRzZWN0aW9uIGVxICJub25lIikgeworCSAgICBpZiAoL15ccyouKzpccypmaWxlXHMrZm9ybWF0XHMrKFxTKylccyokLykgeworCQkkc2VsZi0+e2Zvcm1hdH0gPSAkMTsKKwkgICAgfSBlbHNpZiAoL15hcmNoaXRlY3R1cmU6XHMqXFMrLFxzKmZsYWdzXHMqXFMrOlxzKiQvKSB7CisJCSMgUGFyc2UgMiBsaW5lcyBvZiAiLWYiCisJCSMgYXJjaGl0ZWN0dXJlOiBpMzg2LCBmbGFncyAweDAwMDAwMTEyOgorCQkjIEVYRUNfUCwgSEFTX1NZTVMsIERfUEFHRUQKKwkJIyBzdGFydCBhZGRyZXNzIDB4MDgwNDliNTAKKwkJJF8gPSA8JGZoPjsKKwkJY2hvbXA7CisJCSRzZWxmLT57ZmxhZ3N9eyRffSA9IDEgZm9yZWFjaCAoc3BsaXQoLyxccyovKSk7CisJICAgIH0KKwl9CisgICAgfQorICAgICMgVXBkYXRlIHN0YXR1cyBvZiBkeW5hbWljIHN5bWJvbHMgZ2l2ZW4gdGhlIHJlbG9jYXRpb25zIHRoYXQgaGF2ZQorICAgICMgYmVlbiBwYXJzZWQgYWZ0ZXIgdGhlIHN5bWJvbHMuLi4KKyAgICAkc2VsZi0+YXBwbHlfcmVsb2NhdGlvbnMoKTsKKworICAgIHJldHVybiAkc2VjdGlvbiBuZSAibm9uZSI7Cit9CisKKyMgT3V0cHV0IGZvcm1hdCBvZiBvYmpkdW1wIC13IC1UCisjCisjIC9saWIvbGliYy5zby42OiAgICAgZmlsZSBmb3JtYXQgZWxmMzItaTM4NgorIworIyBEWU5BTUlDIFNZTUJPTCBUQUJMRToKKyMgMDAwNTZlZjAgZyAgICBERiAudGV4dCAgMDAwMDAwZGIgIEdMSUJDXzIuMiAgIGdldHdjaGFyCisjIDAwMDAwMDAwIGcgICAgRE8gKkFCUyogIDAwMDAwMDAwICBHQ0NfMy4wICAgICBHQ0NfMy4wCisjIDAwMDY5OTYwICB3ICAgREYgLnRleHQgIDAwMDAwMDFlICBHTElCQ18yLjAgICBiY21wCisjIDAwMDAwMDAwICB3ICAgRCAgKlVORCogIDAwMDAwMDAwICAgICAgICAgICAgICBfcHRocmVhZF9jbGVhbnVwX3BvcF9yZXN0b3JlCisjIDAwMDBiNzg4IGcgICAgREYgLnRleHQgIDAwMDAwMDhlICBCYXNlICAgICAgICAucHJvdGVjdGVkIHhpbmVfY2xvc2UKKyMgMDAwMGI3ODggZyAgICBERiAudGV4dCAgMDAwMDAwOGUgICAgICAgICAgICAgIC5oaWRkZW4gSUFfX2dfZnJlZQorIyB8ICAgICAgICB8fHx8fHx8IHwgICAgICB8ICAgICAgICAgfCAgICAgICAgICAgfAorIyB8ICAgICAgICB8fHx8fHx8IHwgICAgICB8ICAgICAgICAgVmVyc2lvbiBzdHIgKC52aXNpYmlsaXR5KSArIFN5bWJvbCBuYW1lCisjIHwgICAgICAgIHx8fHx8fHwgfCAgICAgIEFsaWdubWVudAorIyB8ICAgICAgICB8fHx8fHx8IFNlY3Rpb24gbmFtZSAob3IgKlVORCogZm9yIGFuIHVuZGVmaW5lZCBzeW1ib2wpCisjIHwgICAgICAgIHx8fHx8fEY9RnVuY3Rpb24sZj1maWxlLE89b2JqZWN0CisjIHwgICAgICAgIHx8fHx8ZD1kZWJ1Z2dpbmcsRD1keW5hbWljCisjIHwgICAgICAgIHx8fHxJPUluZGlyZWN0CisjIHwgICAgICAgIHx8fFc9d2FybmluZworIyB8ICAgICAgICB8fEM9Y29uc3RydWN0b3IKKyMgfCAgICAgICAgfHc9d2VhaworIyB8ICAgICAgICBnPWdsb2JhbCxsPWxvY2FsLCE9Ym90aCBnbG9iYWwvbG9jYWwKKyMgU2l6ZSBvZiB0aGUgc3ltYm9sCisjCisjIEdMSUJDXzIuMiBpcyB0aGUgdmVyc2lvbiBzdHJpbmcgYXNzb2NpYXRlZCB0byB0aGUgc3ltYm9sCisjIChHTElCQ18yLjIpIGlzIHRoZSBzYW1lIGJ1dCB0aGUgc3ltYm9sIGlzIGhpZGRlbiwgYSBuZXdlciB2ZXJzaW9uIG9mIHRoZQorIyBzeW1ib2wgZXhpc3QKKworc3ViIHBhcnNlX2R5bmFtaWNfc3ltYm9sIHsKKyAgICBteSAoJHNlbGYsICRsaW5lKSA9IEBfOworICAgIG15ICR2aXNfcmUgPSAnKFwucHJvdGVjdGVkfFwuaGlkZGVufFwuaW50ZXJuYWx8MHhcUyspJzsKKyAgICBpZiAoJGxpbmUgPX4gL15bMC05YS1mXSsgKC57N30pXHMrKFxTKylccytbMC05YS1mXSsoPzpccysoXFMrKSk/KD86XHMrJHZpc19yZSk/XHMrKFxTKykvKSB7CisKKwlteSAoJGZsYWdzLCAkc2VjdCwgJHZlciwgJHZpcywgJG5hbWUpID0gKCQxLCAkMiwgJDMsICQ0LCAkNSk7CisKKwkjIFNwZWNpYWwgY2FzZSBpZiB2ZXJzaW9uIGlzIG1pc3NpbmcgYnV0IGV4dHJhIHZpc2liaWxpdHkKKwkjIGF0dHJpYnV0ZSByZXBsYWNlcyBpdCBpbiB0aGUgbWF0Y2gKKwlpZiAoZGVmaW5lZCgkdmVyKSBhbmQgJHZlciA9fiAvXiR2aXNfcmUkLykgeworCSAgICAkdmlzID0gJHZlcjsKKwkgICAgJHZlciA9ICcnOworCX0KKworCSMgQ2xlYW51cCB2aXNpYmlsaXR5IGZpZWxkCisJJHZpcyA9fiBzL15cLi8vIGlmIGRlZmluZWQoJHZpcyk7CisKKwlteSAkc3ltYm9sID0geworCQluYW1lID0+ICRuYW1lLAorCQl2ZXJzaW9uID0+IGRlZmluZWQoJHZlcikgPyAkdmVyIDogJycsCisJCXNlY3Rpb24gPT4gJHNlY3QsCisJCWR5bmFtaWMgPT4gc3Vic3RyKCRmbGFncywgNSwgMSkgZXEgIkQiLAorCQlkZWJ1ZyA9PiBzdWJzdHIoJGZsYWdzLCA1LCAxKSBlcSAiZCIsCisJCXR5cGUgPT4gc3Vic3RyKCRmbGFncywgNiwgMSksCisJCXdlYWsgPT4gc3Vic3RyKCRmbGFncywgMSwgMSkgZXEgInciLAorCQlsb2NhbCA9PiBzdWJzdHIoJGZsYWdzLCAwLCAxKSBlcSAibCIsCisJCWdsb2JhbCA9PiBzdWJzdHIoJGZsYWdzLCAwLCAxKSBlcSAiZyIsCisJCXZpc2liaWxpdHkgPT4gZGVmaW5lZCgkdmlzKSA/ICR2aXMgOiAnJywKKwkJaGlkZGVuID0+ICcnLAorCQlkZWZpbmVkID0+ICRzZWN0IG5lICcqVU5EKicKKwkgICAgfTsKKworCSMgSGFuZGxlIGhpZGRlbiBzeW1ib2xzCisJaWYgKGRlZmluZWQoJHZlcikgYW5kICR2ZXIgPX4gL15cKCguKilcKSQvKSB7CisJICAgICR2ZXIgPSAkMTsKKwkgICAgJHN5bWJvbC0+e3ZlcnNpb259ID0gJDE7CisJICAgICRzeW1ib2wtPntoaWRkZW59ID0gMTsKKwl9CisKKwkjIFJlZ2lzdGVyIHN5bWJvbAorCSRzZWxmLT5hZGRfZHluYW1pY19zeW1ib2woJHN5bWJvbCk7CisgICAgfSBlbHNpZiAoJGxpbmUgPX4gL15bMC05YS1mXSsgKC57N30pXHMrKFxTKylccytbMC05YS1mXSsvKSB7CisJIyBTYW1lIHN0YXJ0IGJ1dCBubyB2ZXJzaW9uIGFuZCBubyBzeW1ib2wgLi4uIGp1c3QgaWdub3JlCisgICAgfSBlbHNpZiAoJGxpbmUgPX4gL15SRUdfR1xkK1xzKy8pIHsKKwkjIElnbm9yZSBzb21lIHMzOTAtc3BlY2lmaWMgb3V0cHV0IGxpa2UKKwkjIFJFR19HNiAgICAgICAgICAgZyAgICAgUiAqVU5EKiAgICAgIDAwMDAwMDAwMDAwMDAwMDAgICAgICAgICAgICAgICNzY3JhdGNoCisgICAgfSBlbHNlIHsKKwl3YXJuaW5nKF9nKCJDb3VsZG4ndCBwYXJzZSBkeW5hbWljIHN5bWJvbCBkZWZpbml0aW9uOiAlcyIpLCAkbGluZSk7CisgICAgfQorfQorCitzdWIgYXBwbHlfcmVsb2NhdGlvbnMgeworICAgIG15ICgkc2VsZikgPSBAXzsKKyAgICBmb3JlYWNoIG15ICRzeW0gKHZhbHVlcyAleyRzZWxmLT57ZHluc3ltc319KSB7CisJIyBXZSB3YW50IHRvIG1hcmsgYXMgdW5kZWZpbmVkIHN5bWJvbHMgdGhvc2Ugd2hpY2ggYXJlIGN1cnJlbnRseQorCSMgZGVmaW5lZCBidXQgdGhhdCBkZXBlbmQgb24gYSBjb3B5IHJlbG9jYXRpb24KKwluZXh0IGlmIG5vdCAkc3ltLT57J2RlZmluZWQnfTsKKwluZXh0IGlmIG5vdCBleGlzdHMgJHNlbGYtPntkeW5yZWxvY3N9eyRzeW0tPntuYW1lfX07CisJaWYgKCRzZWxmLT57ZHlucmVsb2NzfXskc3ltLT57bmFtZX19ID1+IC9eUl8uKl9DT1BZJC8pIHsKKwkgICAgJHN5bS0+eydkZWZpbmVkJ30gPSAwOworCX0KKyAgICB9Cit9CisKK3N1YiBhZGRfZHluYW1pY19zeW1ib2wgeworICAgIG15ICgkc2VsZiwgJHN5bWJvbCkgPSBAXzsKKyAgICAkc3ltYm9sLT57b2JqaWR9ID0gJHN5bWJvbC0+e3NvbmFtZX0gPSAkc2VsZi0+Z2V0X2lkKCk7CisgICAgJHN5bWJvbC0+e3NvbmFtZX0gPX4gc3teLiovfXt9IHVubGVzcyAkc2VsZi0+e1NPTkFNRX07CisgICAgaWYgKCRzeW1ib2wtPnt2ZXJzaW9ufSkgeworCSRzZWxmLT57ZHluc3ltc317JHN5bWJvbC0+e25hbWV9IC4gJ0AnIC4gJHN5bWJvbC0+e3ZlcnNpb259fSA9ICRzeW1ib2w7CisgICAgfSBlbHNlIHsKKwkkc2VsZi0+e2R5bnN5bXN9eyRzeW1ib2wtPntuYW1lfSAuICdAQmFzZSd9ID0gJHN5bWJvbDsKKyAgICB9Cit9CisKK3N1YiBnZXRfaWQgeworICAgIG15ICRzZWxmID0gc2hpZnQ7CisgICAgcmV0dXJuICRzZWxmLT57U09OQU1FfSB8fCAkc2VsZi0+e2ZpbGV9OworfQorCitzdWIgZ2V0X3N5bWJvbCB7CisgICAgbXkgKCRzZWxmLCAkbmFtZSkgPSBAXzsKKyAgICBpZiAoZXhpc3RzICRzZWxmLT57ZHluc3ltc317JG5hbWV9KSB7CisJcmV0dXJuICRzZWxmLT57ZHluc3ltc317JG5hbWV9OworICAgIH0KKyAgICBpZiAoJG5hbWUgIX4gL0AvKSB7CisgICAgICAgIGlmIChleGlzdHMgJHNlbGYtPntkeW5zeW1zfXskbmFtZSAuICdAQmFzZSd9KSB7CisgICAgICAgICAgICByZXR1cm4gJHNlbGYtPntkeW5zeW1zfXskbmFtZSAuICdAQmFzZSd9OworICAgICAgICB9CisgICAgfQorICAgIHJldHVybiB1bmRlZjsKK30KKworc3ViIGdldF9leHBvcnRlZF9keW5hbWljX3N5bWJvbHMgeworICAgIG15ICgkc2VsZikgPSBAXzsKKyAgICByZXR1cm4gZ3JlcCB7ICRfLT57ZGVmaW5lZH0gJiYgJF8tPntkeW5hbWljfSAmJiAhJF8tPntsb2NhbH0gfQorCSAgICB2YWx1ZXMgJXskc2VsZi0+e2R5bnN5bXN9fTsKK30KKworc3ViIGdldF91bmRlZmluZWRfZHluYW1pY19zeW1ib2xzIHsKKyAgICBteSAoJHNlbGYpID0gQF87CisgICAgcmV0dXJuIGdyZXAgeyAoISRfLT57ZGVmaW5lZH0pICYmICRfLT57ZHluYW1pY30gfQorCSAgICB2YWx1ZXMgJXskc2VsZi0+e2R5bnN5bXN9fTsKK30KKworc3ViIGdldF9uZWVkZWRfbGlicmFyaWVzIHsKKyAgICBteSAkc2VsZiA9IHNoaWZ0OworICAgIHJldHVybiBAeyRzZWxmLT57TkVFREVEfX07Cit9CisKK3N1YiBpc19leGVjdXRhYmxlIHsKKyAgICBteSAkc2VsZiA9IHNoaWZ0OworICAgIHJldHVybiBleGlzdHMgJHNlbGYtPntmbGFnc317RVhFQ19QfSAmJiAkc2VsZi0+e2ZsYWdzfXtFWEVDX1B9OworfQorCitzdWIgaXNfcHVibGljX2xpYnJhcnkgeworICAgIG15ICRzZWxmID0gc2hpZnQ7CisgICAgcmV0dXJuIGV4aXN0cyAkc2VsZi0+e2ZsYWdzfXtEWU5BTUlDfSAmJiAkc2VsZi0+e2ZsYWdzfXtEWU5BTUlDfQorCSYmIGV4aXN0cyAkc2VsZi0+e1NPTkFNRX0gJiYgJHNlbGYtPntTT05BTUV9OworfQorCisxOwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL0Rwa2cvU2hsaWJzL1N5bWJvbC5wbSBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9EcGtnL1NobGlicy9TeW1ib2wucG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTkzZWUxZQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9EcGtnL1NobGlicy9TeW1ib2wucG0KQEAgLTAsMCArMSw1MDYgQEAKKyMgQ29weXJpZ2h0IMKpIDIwMDcgUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorIyBDb3B5cmlnaHQgwqkgMjAwOS0yMDEwIE1vZGVzdGFzIFZhaW5pdXMgPG1vZGF4QGRlYmlhbi5vcmc+CisjCisjIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisjIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisjIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisjIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisjCisjIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisjIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisjCisjIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisjIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorCitwYWNrYWdlIERwa2c6OlNobGliczo6U3ltYm9sOworCit1c2Ugc3RyaWN0OwordXNlIHdhcm5pbmdzOworCitvdXIgJFZFUlNJT04gPSAiMC4wMSI7CisKK3VzZSBEcGtnOjpHZXR0ZXh0OwordXNlIERwa2c6OkRlcHM7Cit1c2UgRHBrZzo6RXJyb3JIYW5kbGluZzsKK3VzZSBEcGtnOjpWZXJzaW9uOwordXNlIFN0b3JhYmxlIHF3KCk7Cit1c2UgRHBrZzo6U2hsaWJzOjpDcHBmaWx0OworCisjIFN1cHBvcnRlZCBhbGlhcyB0eXBlcyBpbiB0aGUgb3JkZXIgb2YgbWF0Y2hpbmcgcHJlZmVyZW5jZQordXNlIGNvbnN0YW50ICdBTElBU19UWVBFUycgPT4gcXcoYysrIHN5bXZlcik7CisKK3N1YiBuZXcgeworICAgIG15ICR0aGlzID0gc2hpZnQ7CisgICAgbXkgJGNsYXNzID0gcmVmKCR0aGlzKSB8fCAkdGhpczsKKyAgICBteSAlYXJncyA9IEBfOworICAgIG15ICRzZWxmID0gYmxlc3MgeworCXN5bWJvbCA9PiB1bmRlZiwKKwlzeW1ib2xfdGVtcGwgPT4gdW5kZWYsCisJbWludmVyID0+IHVuZGVmLAorCWRlcF9pZCA9PiAwLAorCWRlcHJlY2F0ZWQgPT4gMCwKKwl0YWdzID0+IHt9LAorCXRhZ29yZGVyID0+IFtdLAorICAgIH0sICRjbGFzczsKKyAgICAkc2VsZi0+eyRffSA9ICRhcmdzeyRffSBmb3JlYWNoIGtleXMgJWFyZ3M7CisgICAgcmV0dXJuICRzZWxmOworfQorCisjIERlZXAgY2xvbmUKK3N1YiBjbG9uZSB7CisgICAgbXkgJHNlbGYgPSBzaGlmdDsKKyAgICBteSAkY2xvbmUgPSBTdG9yYWJsZTo6ZGNsb25lKCRzZWxmKTsKKyAgICBpZiAoQF8pIHsKKwlteSAlYXJncz1AXzsKKwkkY2xvbmUtPnskX30gPSAkYXJnc3skX30gZm9yZWFjaCBrZXlzICVhcmdzOworICAgIH0KKyAgICByZXR1cm4gJGNsb25lOworfQorCitzdWIgcGFyc2VfdGFnc3BlYyB7CisgICAgbXkgKCRzZWxmLCAkdGFnc3BlYykgPSBAXzsKKworICAgIGlmICgkdGFnc3BlYyA9fiAvXlxzKlwoKC4qPylcKSguKikkLyAmJiAkMSkgeworCSMgKHRhZzE9dDEgdmFsdWV8dGFnMnwuLi58dGFnTj10TnApCisJIyBTeW1ib2xzICgpfD0gY2Fubm90IGFwcGVhciBpbiB0aGUgdGFnIG5hbWVzIGFuZCB2YWx1ZXMKKwlteSAkdGFnc3BlYyA9ICQxOworCW15ICRyZXN0ID0gKCQyKSA/ICQyIDogIiI7CisJbXkgQHRhZ3MgPSBzcGxpdCgvXHwvLCAkdGFnc3BlYyk7CisKKwkjIFBhcnNlIGVhY2ggdGFnCisJZm9yIG15ICR0YWcgKEB0YWdzKSB7CisJICAgIGlmICgkdGFnID1+IC9eKC4qKT0oLiopJC8pIHsKKwkJIyBUYWcgd2l0aCB2YWx1ZQorCQkkc2VsZi0+YWRkX3RhZygkMSwgJDIpOworCSAgICB9IGVsc2UgeworCQkjIFRhZyB3aXRob3V0IHZhbHVlCisJCSRzZWxmLT5hZGRfdGFnKCR0YWcsIHVuZGVmKTsKKwkgICAgfQorCX0KKwlyZXR1cm4gJHJlc3Q7CisgICAgfQorICAgIHJldHVybiB1bmRlZjsKK30KKworc3ViIHBhcnNlX3N5bWJvbHNwZWMgeworICAgIG15ICgkc2VsZiwgJHN5bWJvbHNwZWMsICVvcHRzKSA9IEBfOworICAgIG15ICRzeW1ib2w7CisgICAgbXkgJHN5bWJvbF90ZW1wbDsKKyAgICBteSAkc3ltYm9sX3F1b3RlZDsKKyAgICBteSAkcmVzdDsKKworICAgIGlmIChkZWZpbmVkKCRzeW1ib2wgPSAkc2VsZi0+cGFyc2VfdGFnc3BlYygkc3ltYm9sc3BlYykpKSB7CisJIyAodGFnMT10MSB2YWx1ZXx0YWcyfC4uLnx0YWdOPXROcCkiRm9vOjpCYXI6OmZvb2JhcigpIkBCYXNlIDEuMCAxCisJIyBTeW1ib2xzICgpfD0gY2Fubm90IGFwcGVhciBpbiB0aGUgdGFnIG5hbWVzIGFuZCB2YWx1ZXMKKworCSMgSWYgdGhlIHRhZyBzcGVjaWZpY2F0aW9uIGV4aXN0cyBzeW1ib2wgbmFtZSB0ZW1wbGF0ZSBtaWdodCBiZSBxdW90ZWQgdG9vCisJaWYgKCRzeW1ib2wgPX4gL14oWyciXSkvICYmICRzeW1ib2wgPX4gL14oJDEpKC4qPykkMSguKikkLykgeworCSAgICAkc3ltYm9sX3F1b3RlZCA9ICQxOworCSAgICAkc3ltYm9sX3RlbXBsID0gJDI7CisJICAgICRzeW1ib2wgPSAkMjsKKwkgICAgJHJlc3QgPSAkMzsKKwl9IGVsc2UgeworCSAgICBpZiAoJHN5bWJvbCA9fiBtL14oXFMrKSguKikkLykgeworCQkkc3ltYm9sX3RlbXBsID0gJDE7CisJCSRzeW1ib2wgPSAkMTsKKwkJJHJlc3QgPSAkMjsKKwkgICAgfQorCX0KKwllcnJvcihfZygic3ltYm9sIG5hbWUgdW5zcGVjaWZpZWQ6ICVzIiksICRzeW1ib2xzcGVjKSBpZiAoISRzeW1ib2wpOworICAgIH0gZWxzZSB7CisJIyBObyB0YWcgc3BlY2lmaWNhdGlvbi4gU3ltYm9sIG5hbWUgaXMgdXAgdG8gdGhlIGZpcnN0IHNwYWNlCisJIyBmb29iYXJzeW1ib2xAQmFzZSAxLjAgMQorCWlmICgkc3ltYm9sc3BlYyA9fiBtL14oXFMrKSguKikkLykgeworCSAgICAkc3ltYm9sID0gJDE7CisJICAgICRyZXN0ID0gJDI7CisJfSBlbHNlIHsKKwkgICAgcmV0dXJuIDA7CisJfQorICAgIH0KKyAgICAkc2VsZi0+e3N5bWJvbH0gPSAkc3ltYm9sOworICAgICRzZWxmLT57c3ltYm9sX3RlbXBsfSA9ICRzeW1ib2xfdGVtcGw7CisgICAgJHNlbGYtPntzeW1ib2xfcXVvdGVkfSA9ICRzeW1ib2xfcXVvdGVkIGlmICgkc3ltYm9sX3F1b3RlZCk7CisKKyAgICAjIE5vdyBwYXJzZSAidGhlIHJlc3QiIChtaW52ZXIgYW5kIGRlcF9pZCkKKyAgICBpZiAoJHJlc3QgPX4gL15ccyhcUyspKD86XHMoXGQrKSk/LykgeworCSRzZWxmLT57bWludmVyfSA9ICQxOworCSRzZWxmLT57ZGVwX2lkfSA9IGRlZmluZWQoJDIpID8gJDIgOiAwOworICAgIH0gZWxzaWYgKGRlZmluZWQgJG9wdHN7ZGVmYXVsdF9taW52ZXJ9KSB7CisJJHNlbGYtPnttaW52ZXJ9ID0gJG9wdHN7ZGVmYXVsdF9taW52ZXJ9OworCSRzZWxmLT57ZGVwX2lkfSA9IDA7CisgICAgfSBlbHNlIHsKKwlyZXR1cm4gMDsKKyAgICB9CisgICAgcmV0dXJuIDE7Cit9CisKKyMgQSBob29rIGZvciBzeW1ib2wgaW5pdGlhbGl6YXRpb24gKHR5cGljYWxseSBwcm9jZXNzaW5nIG9mIHRhZ3MpLiBUaGUgY29kZQorIyBoZXJlIG1heSBldmVuIGNoYW5nZSBzeW1ib2wgbmFtZS4gQ2FsbGVkIGZyb20KKyMgRHBrZzo6U2hsaWJzOjpTeW1ib2xGaWxlOjpjcmVhdGVfc3ltYm9sKCkuCitzdWIgaW5pdGlhbGl6ZSB7CisgICAgbXkgJHNlbGYgPSBzaGlmdDsKKworICAgICMgTG9vayBmb3IgdGFncyBtYXJraW5nIHN5bWJvbCBwYXR0ZXJucy4gVGhlIHBhdHRlcm4gbWF5IG1hdGNoIG11bHRpcGxlCisgICAgIyByZWFsIHN5bWJvbHMuCisgICAgbXkgJHR5cGU7CisgICAgaWYgKCRzZWxmLT5oYXNfdGFnKCdjKysnKSkgeworCSMgUmF3IHN5bWJvbCBuYW1lIGlzIGFsd2F5cyBkZW1hbmdsZWQgdG8gdGhlIHNhbWUgYWxpYXMgd2hpbGUgZGVtYW5nbGVkCisJIyBzeW1ib2wgbmFtZSBjYW5ub3QgYmUgcmVsaWFibHkgY29udmVydGVkIGJhY2sgdG8gcmF3IHN5bWJvbCBuYW1lLgorCSMgVGhlcmVmb3JlLCB3ZSBjYW4gdXNlIGhhc2ggZm9yIG1hcHBpbmcuCisJJHR5cGUgPSAnYWxpYXMtYysrJzsKKyAgICB9CisKKyAgICAjIFN1cHBvcnQgb2xkIHN0eWxlIHdpbGRjYXJkIHN5bnRheC4gVGhhdCdzIGJhc2ljYWxseSBhIHN5bXZlcgorICAgICMgd2l0aCBhbiBvcHRpb25hbCB0YWcuCisgICAgaWYgKCRzZWxmLT5nZXRfc3ltYm9sbmFtZSgpID1+IC9eXCpAKC4qKSQvKSB7CisJJHNlbGYtPmFkZF90YWcoInN5bXZlciIpIHVubGVzcyAkc2VsZi0+aGFzX3RhZygic3ltdmVyIik7CisJJHNlbGYtPmFkZF90YWcoIm9wdGlvbmFsIikgdW5sZXNzICRzZWxmLT5oYXNfdGFnKCJvcHRpb25hbCIpOworCSRzZWxmLT57c3ltYm9sfSA9ICQxOworICAgIH0KKworICAgIGlmICgkc2VsZi0+aGFzX3RhZygnc3ltdmVyJykpIHsKKwkjIEVhY2ggc3ltYm9sIGlzIG1hdGNoZWQgYWdhaW5zdCBpdHMgdmVyc2lvbiByYXRoZXIgdGhhbiBmdWxsCisJIyBuYW1lQHZlcnNpb24gc3RyaW5nLgorCSR0eXBlID0gKGRlZmluZWQgJHR5cGUpID8gJ2dlbmVyaWMnIDogJ2FsaWFzLXN5bXZlcic7CisJaWYgKCRzZWxmLT5nZXRfc3ltYm9sbmFtZSgpIGVxICJCYXNlIikgeworCSAgICBlcnJvcihfZygieW91IGNhbid0IHVzZSBzeW12ZXIgdGFnIHRvIGNhdGNoIHVudmVyc2lvbmVkIHN5bWJvbHM6ICVzIiksCisJICAgICAgICAgICRzZWxmLT5nZXRfc3ltYm9sc3BlYygxKSk7CisJfQorICAgIH0KKworICAgICMgQXMgc29vbiBhcyByZWdleCBpcyBpbnZvbHZlZCwgd2UgbmVlZCB0byBtYXRjaCBlYWNoIHJlYWwKKyAgICAjIHN5bWJvbCBhZ2FpbnN0IGVhY2ggcGF0dGVybiAoYWthICdnZW5lcmljJyBwYXR0ZXJuKS4KKyAgICBpZiAoJHNlbGYtPmhhc190YWcoJ3JlZ2V4JykpIHsKKwkkdHlwZSA9ICdnZW5lcmljJzsKKwkjIFByZS1jb21waWxlIHJlZ3VsYXIgZXhwcmVzc2lvbiBmb3IgYmV0dGVyIHBlcmZvcm1hbmNlLgorCW15ICRyZWdleCA9ICRzZWxmLT5nZXRfc3ltYm9sbmFtZSgpOworCSRzZWxmLT57cGF0dGVybn17cmVnZXh9ID0gcXIvJHJlZ2V4LzsKKyAgICB9CisgICAgaWYgKGRlZmluZWQgJHR5cGUpIHsKKwkkc2VsZi0+aW5pdF9wYXR0ZXJuKCR0eXBlKTsKKyAgICB9Cit9CisKK3N1YiBnZXRfc3ltYm9sbmFtZSB7CisgICAgcmV0dXJuICRfWzBdLT57c3ltYm9sfTsKK30KKworc3ViIGdldF9zeW1ib2x0ZW1wbCB7CisgICAgcmV0dXJuICRfWzBdLT57c3ltYm9sX3RlbXBsfSB8fCAkX1swXS0+e3N5bWJvbH07Cit9CisKK3N1YiBzZXRfc3ltYm9sbmFtZSB7CisgICAgbXkgKCRzZWxmLCAkbmFtZSwgJHRlbXBsLCAkcXVvdGVkKSA9IEBfOworICAgIHVubGVzcyAoZGVmaW5lZCAkbmFtZSkgeworCSRuYW1lID0gJHNlbGYtPntzeW1ib2x9OworICAgIH0KKyAgICBpZiAoIWRlZmluZWQgJHRlbXBsICYmICRuYW1lID1+IC9ccy8pIHsKKwkkdGVtcGwgPSAkbmFtZTsKKyAgICB9CisgICAgaWYgKCFkZWZpbmVkICRxdW90ZWQgJiYgZGVmaW5lZCAkdGVtcGwgJiYgJHRlbXBsID1+IC9ccy8pIHsKKwkkcXVvdGVkID0gJyInOworICAgIH0KKyAgICAkc2VsZi0+e3N5bWJvbH0gPSAkbmFtZTsKKyAgICAkc2VsZi0+e3N5bWJvbF90ZW1wbH0gPSAkdGVtcGw7CisgICAgaWYgKCRxdW90ZWQpIHsKKwkkc2VsZi0+e3N5bWJvbF9xdW90ZWR9ID0gJHF1b3RlZDsKKyAgICB9IGVsc2UgeworCWRlbGV0ZSAkc2VsZi0+e3N5bWJvbF9xdW90ZWR9OworICAgIH0KK30KKworc3ViIGhhc190YWdzIHsKKyAgICBteSAkc2VsZiA9IHNoaWZ0OworICAgIHJldHVybiBzY2FsYXIgKEB7JHNlbGYtPnt0YWdvcmRlcn19KTsKK30KKworc3ViIGFkZF90YWcgeworICAgIG15ICgkc2VsZiwgJHRhZ25hbWUsICR0YWd2YWwpID0gQF87CisgICAgaWYgKGV4aXN0cyAkc2VsZi0+e3RhZ3N9eyR0YWduYW1lfSkgeworCSRzZWxmLT57dGFnc317JHRhZ25hbWV9ID0gJHRhZ3ZhbDsKKwlyZXR1cm4gMDsKKyAgICB9IGVsc2UgeworCSRzZWxmLT57dGFnc317JHRhZ25hbWV9ID0gJHRhZ3ZhbDsKKwlwdXNoIEB7JHNlbGYtPnt0YWdvcmRlcn19LCAkdGFnbmFtZTsKKyAgICB9CisgICAgcmV0dXJuIDE7Cit9CisKK3N1YiBkZWxldGVfdGFnIHsKKyAgICBteSAoJHNlbGYsICR0YWduYW1lKSA9IEBfOworICAgIGlmIChleGlzdHMgJHNlbGYtPnt0YWdzfXskdGFnbmFtZX0pIHsKKwlkZWxldGUgJHNlbGYtPnt0YWdzfXskdGFnbmFtZX07CisgICAgICAgICRzZWxmLT57dGFnb3JkZXJ9ID0gWyBncmVwIHsgJF8gbmUgJHRhZ25hbWUgfSBAeyRzZWxmLT57dGFnb3JkZXJ9fSBdOworCXJldHVybiAxOworICAgIH0KKyAgICByZXR1cm4gMDsKK30KKworc3ViIGhhc190YWcgeworICAgIG15ICgkc2VsZiwgJHRhZykgPSBAXzsKKyAgICByZXR1cm4gZXhpc3RzICRzZWxmLT57dGFnc317JHRhZ307Cit9CisKK3N1YiBnZXRfdGFnX3ZhbHVlIHsKKyAgICBteSAoJHNlbGYsICR0YWcpID0gQF87CisgICAgcmV0dXJuICRzZWxmLT57dGFnc317JHRhZ307Cit9CisKKyMgQ2hlY2tzIGlmIHRoZSBzeW1ib2wgaXMgZXF1YWwgdG8gYW5vdGhlciBvbmUgKGJ5IG5hbWUgYW5kIG9wdGlvbmFsbHksCisjIHRhZyBzZXRzLCB2ZXJzaW9uaW5nIGluZm8gKG1pbnZlciBhbmQgZGVwaWQpKQorc3ViIGVxdWFscyB7CisgICAgbXkgKCRzZWxmLCAkb3RoZXIsICVvcHRzKSA9IEBfOworICAgICRvcHRze3ZlcnNpb25pbmd9ID0gMSB1bmxlc3MgZXhpc3RzICRvcHRze3ZlcnNpb25pbmd9OworICAgICRvcHRze3RhZ3N9ID0gMSB1bmxlc3MgZXhpc3RzICRvcHRze3RhZ3N9OworCisgICAgcmV0dXJuIDAgaWYgJHNlbGYtPntzeW1ib2x9IG5lICRvdGhlci0+e3N5bWJvbH07CisKKyAgICBpZiAoJG9wdHN7dmVyc2lvbmluZ30pIHsKKwlyZXR1cm4gMCBpZiAkc2VsZi0+e21pbnZlcn0gbmUgJG90aGVyLT57bWludmVyfTsKKwlyZXR1cm4gMCBpZiAkc2VsZi0+e2RlcF9pZH0gbmUgJG90aGVyLT57ZGVwX2lkfTsKKyAgICB9CisKKyAgICBpZiAoJG9wdHN7dGFnc30pIHsKKwlyZXR1cm4gMCBpZiBzY2FsYXIoQHskc2VsZi0+e3RhZ29yZGVyfX0pICE9IHNjYWxhcihAeyRvdGhlci0+e3RhZ29yZGVyfX0pOworCisJZm9yIChteSAkaSA9IDA7ICRpIDwgc2NhbGFyKEB7JHNlbGYtPnt0YWdvcmRlcn19KTsgJGkrKykgeworCSAgICBteSAkdGFnID0gJHNlbGYtPnt0YWdvcmRlcn0tPlskaV07CisJICAgIHJldHVybiAwIGlmICR0YWcgbmUgJG90aGVyLT57dGFnb3JkZXJ9LT5bJGldOworCSAgICBpZiAoZGVmaW5lZCAkc2VsZi0+e3RhZ3N9eyR0YWd9ICYmIGRlZmluZWQgJG90aGVyLT57dGFnc317JHRhZ30pIHsKKwkJcmV0dXJuIDAgaWYgJHNlbGYtPnt0YWdzfXskdGFnfSBuZSAkb3RoZXItPnt0YWdzfXskdGFnfTsKKwkgICAgfSBlbHNpZiAoZGVmaW5lZCAkc2VsZi0+e3RhZ3N9eyR0YWd9IHx8IGRlZmluZWQgJG90aGVyLT57dGFnc317JHRhZ30pIHsKKwkJcmV0dXJuIDA7CisJICAgIH0KKwl9CisgICAgfQorCisgICAgcmV0dXJuIDE7Cit9CisKKworc3ViIGlzX29wdGlvbmFsIHsKKyAgICBteSAkc2VsZiA9IHNoaWZ0OworICAgIHJldHVybiAkc2VsZi0+aGFzX3RhZygib3B0aW9uYWwiKTsKK30KKworc3ViIGlzX2FyY2hfc3BlY2lmaWMgeworICAgIG15ICRzZWxmID0gc2hpZnQ7CisgICAgcmV0dXJuICRzZWxmLT5oYXNfdGFnKCJhcmNoIik7Cit9CisKK3N1YiBhcmNoX2lzX2NvbmNlcm5lZCB7CisgICAgbXkgKCRzZWxmLCAkYXJjaCkgPSBAXzsKKyAgICBteSAkYXJjaGVzID0gJHNlbGYtPnt0YWdzfXthcmNofTsKKworICAgIGlmIChkZWZpbmVkICRhcmNoICYmIGRlZmluZWQgJGFyY2hlcykgeworCW15ICRkZXAgPSBEcGtnOjpEZXBzOjpTaW1wbGUtPm5ldygpOworCW15IEBhcmNoZXMgPSBzcGxpdCgvW1xzLF0rLywgJGFyY2hlcyk7CisJJGRlcC0+e3BhY2thZ2V9ID0gImR1bW15IjsKKwkkZGVwLT57YXJjaGVzfSA9IFxAYXJjaGVzOworCXJldHVybiAkZGVwLT5hcmNoX2lzX2NvbmNlcm5lZCgkYXJjaCk7CisgICAgfQorCisgICAgcmV0dXJuIDE7Cit9CisKKyMgR2V0IHJlZmVyZW5jZSB0byB0aGUgcGF0dGVybiB0aGUgc3ltYm9sIG1hdGNoZXMgKGlmIGFueSkKK3N1YiBnZXRfcGF0dGVybiB7CisgICAgcmV0dXJuICRfWzBdLT57bWF0Y2hpbmdfcGF0dGVybn07Cit9CisKKyMjIyBOT1RFOiBzdWJyb3V0aW5lcyBiZWxvdyByZXF1aXJlIChvciBpbml0aWFsaXplKSAkc2VsZiB0byBiZSBhIHBhdHRlcm4gIyMjCisKKyMgSW5pdGlhbGl6ZXMgdGhpcyBzeW1ib2wgYXMgYSBwYXR0ZXJuIG9mIHRoZSBzcGVjaWZpZWQgdHlwZS4KK3N1YiBpbml0X3BhdHRlcm4geworICAgIG15ICgkc2VsZiwgJHR5cGUpID0gQF87CisKKyAgICAkc2VsZi0+e3BhdHRlcm59e3R5cGV9ID0gJHR5cGU7CisgICAgIyBUbyBiZSBmaWxsZWQgd2l0aCByZWZlcmVuY2VzIHRvIHN5bWJvbHMgbWF0Y2hpbmcgdGhpcyBwYXR0ZXJuLgorICAgICRzZWxmLT57cGF0dGVybn17bWF0Y2hlc30gPSBbXTsKK30KKworIyBJcyB0aGlzIHN5bWJvbCBhIHBhdHRlcm4gb3Igbm90Pworc3ViIGlzX3BhdHRlcm4geworICAgIHJldHVybiBleGlzdHMgJF9bMF0tPntwYXR0ZXJufTsKK30KKworIyBHZXQgcGF0dGVybiB0eXBlIGlmIHRoaXMgc3ltYm9sIGlzIGEgcGF0dGVybi4KK3N1YiBnZXRfcGF0dGVybl90eXBlIHsKKyAgICByZXR1cm4gJF9bMF0tPntwYXR0ZXJufXt0eXBlfSB8fCAiIjsKK30KKworIyBHZXQgKHN1Yil0eXBlIG9mIHRoZSBhbGlhcyBwYXR0ZXJuLiBSZXR1cm5zIGVtcHR5IHN0cmluZyBpZiBjdXJyZW50CisjIHBhdHRlcm4gaXMgbm90IGFsaWFzLgorc3ViIGdldF9hbGlhc190eXBlIHsKKyAgICByZXR1cm4gKCRfWzBdLT5nZXRfcGF0dGVybl90eXBlKCkgPX4gL15hbGlhcy0oLispLyAmJiAkMSkgfHwgIiI7Cit9CisKKyMgR2V0IGEgbGlzdCBvZiBzeW1ib2xzIG1hdGNoaW5nIHRoaXMgcGF0dGVybiBpZiB0aGlzIHN5bWJvbCBpcyBhIHBhdHRlcm4KK3N1YiBnZXRfcGF0dGVybl9tYXRjaGVzIHsKKyAgICByZXR1cm4gQHskX1swXS0+e3BhdHRlcm59e21hdGNoZXN9fTsKK30KKworIyBDcmVhdGUgYSBuZXcgc3ltYm9sIGJhc2VkIG9uIHRoZSBwYXR0ZXJuIChpLmUuICRzZWxmKQorIyBhbmQgYWRkIGl0IHRvIHRoZSBwYXR0ZXJuIG1hdGNoZXMgbGlzdC4KK3N1YiBjcmVhdGVfcGF0dGVybl9tYXRjaCB7CisgICAgbXkgJHNlbGYgPSBzaGlmdDsKKyAgICByZXR1cm4gdW5kZWYgdW5sZXNzICRzZWxmLT5pc19wYXR0ZXJuKCk7CisKKyAgICAjIExlYXZlIG91dCAncGF0dGVybicgc3ViZmllbGQgd2hpbGUgZGVlcC1jbG9uaW5nCisgICAgbXkgJHBhdHRlcm5fc3R1ZmYgPSAkc2VsZi0+e3BhdHRlcm59OworICAgIGRlbGV0ZSAkc2VsZi0+e3BhdHRlcm59OworICAgIG15ICRuZXdzeW0gPSAkc2VsZi0+Y2xvbmUoQF8pOworICAgICRzZWxmLT57cGF0dGVybn0gPSAkcGF0dGVybl9zdHVmZjsKKworICAgICMgQ2xlYW4gdXAgc3ltYm9sIG5hbWUgcmVsYXRlZCBpbnRlcm5hbCBmaWVsZHMKKyAgICAkbmV3c3ltLT5zZXRfc3ltYm9sbmFtZSgpOworCisgICAgIyBTZXQgbmV3c3ltIHBhdHRlcm4gcmVmZXJlbmNlLCBhZGQgdG8gcGF0dGVybiBtYXRjaGVzIGxpc3QKKyAgICAkbmV3c3ltLT57bWF0Y2hpbmdfcGF0dGVybn0gPSAkc2VsZjsKKyAgICBwdXNoIEB7JHNlbGYtPntwYXR0ZXJufXttYXRjaGVzfX0sICRuZXdzeW07CisgICAgcmV0dXJuICRuZXdzeW07Cit9CisKKyMjIyBFTkQgb2YgcGF0dGVybiBzdWJyb3V0aW5lcyAjIyMKKworIyBHaXZlbiBhIHJhdyBzeW1ib2wgbmFtZSB0aGUgY2FsbCByZXR1cm5zIGl0cyBhbGlhcyBhY2NvcmRpbmcgdG8gdGhlIHJ1bGVzIG9mCisjIHRoZSBjdXJyZW50IHBhdHRlcm4gKCRzZWxmKS4gUmV0dXJucyB1bmRlZiBpZiB0aGUgc3VwcGxpZWQgcmF3IG5hbWUgaXMgbm90CisjIHRyYW5zZm9ybWFibGUgdG8gYWxpYXMuCitzdWIgY29udmVydF90b19hbGlhcyB7CisgICAgbXkgKCRzZWxmLCAkcmF3bmFtZSwgJHR5cGUpID0gQF87CisgICAgJHR5cGUgPSAkc2VsZi0+Z2V0X2FsaWFzX3R5cGUoKSB1bmxlc3MgJHR5cGU7CisKKyAgICBpZiAoJHR5cGUpIHsKKwlpZiAoJHR5cGUgZXEgJ3N5bXZlcicpIHsKKwkgICAgIyBJbiBjYXNlIG9mIHN5bXZlciwgYWxpYXMgaXMgc3ltYm9sIHZlcnNpb24uIEV4dHJhY3QgaXQgZnJvbSB0aGUKKwkgICAgIyByYXduYW1lLgorCSAgICByZXR1cm4gIiQxIiBpZiAoJHJhd25hbWUgPX4gL1xAKFteQF0rKSQvKTsKKwl9IGVsc2lmICgkcmF3bmFtZSA9fiAvXl9aLyAmJiAkdHlwZSBlcSAiYysrIikgeworCSAgICByZXR1cm4gY3BwZmlsdF9kZW1hbmdsZV9jcHAoJHJhd25hbWUpOworCX0KKyAgICB9CisgICAgcmV0dXJuIHVuZGVmOworfQorCitzdWIgZ2V0X3RhZ3NwZWMgeworICAgIG15ICgkc2VsZikgPSBAXzsKKyAgICBpZiAoJHNlbGYtPmhhc190YWdzKCkpIHsKKwlteSBAdGFnczsKKwlmb3IgbXkgJHRhZ25hbWUgKEB7JHNlbGYtPnt0YWdvcmRlcn19KSB7CisJICAgIG15ICR0YWd2YWwgPSAkc2VsZi0+e3RhZ3N9eyR0YWduYW1lfTsKKwkgICAgaWYgKGRlZmluZWQgJHRhZ3ZhbCkgeworCQlwdXNoIEB0YWdzLCAkdGFnbmFtZSAuICI9IiAgLiAkdGFndmFsOworCSAgICB9IGVsc2UgeworCQlwdXNoIEB0YWdzLCAkdGFnbmFtZTsKKwkgICAgfQorCX0KKwlyZXR1cm4gIigiLiBqb2luKCJ8IiwgQHRhZ3MpIC4gIikiOworICAgIH0KKyAgICByZXR1cm4gIiI7Cit9CisKK3N1YiBnZXRfc3ltYm9sc3BlYyB7CisgICAgbXkgJHNlbGYgPSBzaGlmdDsKKyAgICBteSAkdGVtcGxhdGVfbW9kZSA9IHNoaWZ0OworICAgIG15ICRzcGVjID0gIiI7CisgICAgJHNwZWMgLj0gIiNNSVNTSU5HOiAkc2VsZi0+e2RlcHJlY2F0ZWR9IyIgaWYgJHNlbGYtPntkZXByZWNhdGVkfTsKKyAgICAkc3BlYyAuPSAiICI7CisgICAgaWYgKCR0ZW1wbGF0ZV9tb2RlKSB7CisJaWYgKCRzZWxmLT5oYXNfdGFncygpKSB7CisJICAgICRzcGVjIC49IHNwcmludGYoJyVzJTMkcyVzJTMkcycsICRzZWxmLT5nZXRfdGFnc3BlYygpLAorCQkkc2VsZi0+Z2V0X3N5bWJvbHRlbXBsKCksICRzZWxmLT57c3ltYm9sX3F1b3RlZH0gfHwgIiIpOworCX0gZWxzZSB7CisJICAgICRzcGVjIC49ICRzZWxmLT5nZXRfc3ltYm9sdGVtcGwoKTsKKwl9CisgICAgfSBlbHNlIHsKKwkkc3BlYyAuPSAkc2VsZi0+Z2V0X3N5bWJvbG5hbWUoKTsKKyAgICB9CisgICAgJHNwZWMgLj0gIiAkc2VsZi0+e21pbnZlcn0iOworICAgICRzcGVjIC49ICIgJHNlbGYtPntkZXBfaWR9IiBpZiAkc2VsZi0+e2RlcF9pZH07CisgICAgcmV0dXJuICRzcGVjOworfQorCisjIFNhbml0aXplIHRoZSBzeW1ib2wgd2hlbiBpdCBpcyBjb25maXJtZWQgdG8gYmUgZm91bmQgaW4KKyMgdGhlIHJlc3BlY3RpdmUgbGlicmFyeS4KK3N1YiBtYXJrX2ZvdW5kX2luX2xpYnJhcnkgeworICAgIG15ICgkc2VsZiwgJG1pbnZlciwgJGFyY2gpID0gQF87CisKKyAgICBpZiAoJHNlbGYtPntkZXByZWNhdGVkfSkgeworCSMgU3ltYm9sIHJlYXBwZWFyZWQgc29tZWhvdworCSRzZWxmLT57ZGVwcmVjYXRlZH0gPSAwOworCSRzZWxmLT57bWludmVyfSA9ICRtaW52ZXIgaWYgKG5vdCAkc2VsZi0+aXNfb3B0aW9uYWwoKSk7CisgICAgfSBlbHNlIHsKKwkjIFdlIGFzc3VtZSB0aGF0IHRoZSByaWdodCBkZXBlbmRlbmN5IGluZm9ybWF0aW9uIGlzIGFscmVhZHkKKwkjIHRoZXJlLgorCWlmICh2ZXJzaW9uX2NvbXBhcmUoJG1pbnZlciwgJHNlbGYtPnttaW52ZXJ9KSA8IDApIHsKKwkgICAgJHNlbGYtPnttaW52ZXJ9ID0gJG1pbnZlcjsKKwl9CisgICAgfQorICAgICMgTmV2ZXIgcmVtb3ZlIGFyY2ggdGFncyBmcm9tIHBhdHRlcm5zCisgICAgaWYgKG5vdCAkc2VsZi0+aXNfcGF0dGVybigpKSB7CisJaWYgKG5vdCAkc2VsZi0+YXJjaF9pc19jb25jZXJuZWQoJGFyY2gpKSB7CisJICAgICMgUmVtb3ZlIGFyY2ggdGFnIGJlY2F1c2UgaXQgaXMgaW5jb3JyZWN0LgorCSAgICAkc2VsZi0+ZGVsZXRlX3RhZygnYXJjaCcpOworCX0KKyAgICB9Cit9CisKKyMgU2FuaXRpemUgdGhlIHN5bWJvbCB3aGVuIGl0IGlzIGNvbmZpcm1lZCB0byBiZSBOT1QgZm91bmQgaW4KKyMgdGhlIHJlc3BlY3RpdmUgbGlicmFyeS4KKyMgTWFyayBhcyBkZXByZWNhdGVkIHRob3NlIHRoYXQgYXJlIG5vIG1vcmUgcHJvdmlkZWQgKG9ubHkgaWYgdGhlCisjIG1pbnZlciBpcyBsYXRlciB0aGFuIHRoZSB2ZXJzaW9uIHdoZXJlIHRoZSBzeW1ib2wgd2FzIGludHJvZHVjZWQpCitzdWIgbWFya19ub3RfZm91bmRfaW5fbGlicmFyeSB7CisgICAgbXkgKCRzZWxmLCAkbWludmVyLCAkYXJjaCkgPSBAXzsKKworICAgICMgSWdub3JlIHN5bWJvbHMgZnJvbSBmb3JlaWduIGFyY2gKKyAgICByZXR1cm4gaWYgbm90ICRzZWxmLT5hcmNoX2lzX2NvbmNlcm5lZCgkYXJjaCk7CisKKyAgICBpZiAoJHNlbGYtPntkZXByZWNhdGVkfSkgeworCSMgQnVtcCBkZXByZWNhdGVkIGlmIHRoZSBzeW1ib2wgaXMgb3B0aW9uYWwgc28gdGhhdCBpdAorCSMga2VlcHMgcmVhcHBlcmluZyBpbiB0aGUgZGlmZiB3aGlsZSBpdCdzIG1pc3NpbmcKKwkkc2VsZi0+e2RlcHJlY2F0ZWR9ID0gJG1pbnZlciBpZiAkc2VsZi0+aXNfb3B0aW9uYWwoKTsKKyAgICB9IGVsc2lmICh2ZXJzaW9uX2NvbXBhcmUoJG1pbnZlciwgJHNlbGYtPnttaW52ZXJ9KSA+IDApIHsKKwkkc2VsZi0+e2RlcHJlY2F0ZWR9ID0gJG1pbnZlcjsKKyAgICB9Cit9CisKKyMgQ2hlY2tzIGlmIHRoZSBzeW1ib2wgKG9yIHBhdHRlcm4pIGlzIGxlZ2l0aW1hdGUgYXMgYSByZWFsIHN5bWJvbCBmb3IgdGhlCisjIHNwZWNpZmllZCBhcmNoaXRlY3R1cmUuCitzdWIgaXNfbGVnaXRpbWF0ZSB7CisgICAgbXkgKCRzZWxmLCAkYXJjaCkgPSBAXzsKKyAgICByZXR1cm4gISAkc2VsZi0+e2RlcHJlY2F0ZWR9ICYmCisgICAgICAgICAgICRzZWxmLT5hcmNoX2lzX2NvbmNlcm5lZCgkYXJjaCk7Cit9CisKKyMgRGV0ZXJtaW5lIHdoZXRoZXIgYSBzdXBwbGllZCByYXcgc3ltYm9sIG5hbWUgbWF0Y2hlcyBhZ2FpbnN0IGN1cnJlbnQgKCRzZWxmKQorIyBzeW1ib2wgb3IgcGF0dGVybi4KK3N1YiBtYXRjaGVzX3Jhd25hbWUgeworICAgIG15ICgkc2VsZiwgJHJhd25hbWUpID0gQF87CisgICAgbXkgJHRhcmdldCA9ICRyYXduYW1lOworICAgIG15ICRvayA9IDE7CisgICAgbXkgJGRvX2VxX21hdGNoID0gMTsKKworICAgIGlmICgkc2VsZi0+aXNfcGF0dGVybigpKSB7CisJIyBQcm9jZXNzIHBhdHRlcm4gdGFncyBpbiB0aGUgb3JkZXIgdGhleSB3ZXJlIHNwZWNpZmllZC4KKwlmb3IgbXkgJHRhZyAoQHskc2VsZi0+e3RhZ29yZGVyfX0pIHsKKwkgICAgaWYgKGdyZXAgeyAkdGFnIGVxICRfIH0gQUxJQVNfVFlQRVMpIHsKKwkJJG9rID0gbm90IG5vdCAoJHRhcmdldCA9ICRzZWxmLT5jb252ZXJ0X3RvX2FsaWFzKCR0YXJnZXQsICR0YWcpKTsKKwkgICAgfSBlbHNpZiAoJHRhZyBlcSAicmVnZXgiKSB7CisJCSMgU3ltYm9sIG5hbWUgaXMgYSByZWdleC4gTWF0Y2ggaXQgYWdhaW5zdCB0aGUgdGFyZ2V0CisJCSRkb19lcV9tYXRjaCA9IDA7CisJCSRvayA9ICgkdGFyZ2V0ID1+ICRzZWxmLT57cGF0dGVybn17cmVnZXh9KTsKKwkgICAgfQorCSAgICBsYXN0IGlmIG5vdCAkb2s7CisJfQorICAgIH0KKworICAgICMgRXF1YWxpdHkgbWF0Y2ggYnkgZGVmYXVsdAorICAgIGlmICgkb2sgJiYgJGRvX2VxX21hdGNoKSB7CisJJG9rID0gJHRhcmdldCBlcSAkc2VsZi0+Z2V0X3N5bWJvbG5hbWUoKTsKKyAgICB9CisgICAgcmV0dXJuICRvazsKK30KKworMTsKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9EcGtnL1NobGlicy9TeW1ib2xGaWxlLnBtIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL0Rwa2cvU2hsaWJzL1N5bWJvbEZpbGUucG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTA4ZmMwNwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9EcGtnL1NobGlicy9TeW1ib2xGaWxlLnBtCkBAIC0wLDAgKzEsNjQ4IEBACisjIENvcHlyaWdodCDCqSAyMDA3IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KKyMgQ29weXJpZ2h0IMKpIDIwMDktMjAxMCBNb2Rlc3RhcyBWYWluaXVzIDxtb2RheEBkZWJpYW4ub3JnPgorIworIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorIworIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorIworIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKworcGFja2FnZSBEcGtnOjpTaGxpYnM6OlN5bWJvbEZpbGU7CisKK3VzZSBzdHJpY3Q7Cit1c2Ugd2FybmluZ3M7CisKK291ciAkVkVSU0lPTiA9ICIwLjAxIjsKKwordXNlIERwa2c6OkdldHRleHQ7Cit1c2UgRHBrZzo6RXJyb3JIYW5kbGluZzsKK3VzZSBEcGtnOjpWZXJzaW9uOwordXNlIERwa2c6OkNvbnRyb2w6OkZpZWxkczsKK3VzZSBEcGtnOjpTaGxpYnM6OlN5bWJvbDsKK3VzZSBEcGtnOjpBcmNoIHF3KGdldF9ob3N0X2FyY2gpOworCit1c2UgYmFzZSBxdyhEcGtnOjpJbnRlcmZhY2U6OlN0b3JhYmxlKTsKKworbXkgJWJsYWNrbGlzdCA9ICgKKyAgICAnX19ic3NfZW5kX18nID0+IDEsCQkjIGFybQorICAgICdfX2Jzc19lbmQnID0+IDEsCQkjIGFybQorICAgICdfYnNzX2VuZF9fJyA9PiAxLAkJIyBhcm0KKyAgICAnX19ic3Nfc3RhcnQnID0+IDEsCQkjIEFMTAorICAgICdfX2Jzc19zdGFydF9fJyA9PiAxLAkjIGFybQorICAgICdfX2RhdGFfc3RhcnQnID0+IDEsCSMgYXJtCisgICAgJ19fZG9fZ2xvYmFsX2N0b3JzX2F1eCcgPT4gMSwgICAjIGlhNjQKKyAgICAnX19kb19nbG9iYWxfZHRvcnNfYXV4JyA9PiAxLCAgICMgaWE2NAorICAgICdfX2RvX2p2X3JlZ2lzdGVyX2NsYXNzZXMnID0+IDEsIyBpYTY0CisgICAgJ19EWU5BTUlDJyA9PiAxLAkJIyBBTEwKKyAgICAnX2VkYXRhJyA9PiAxLAkJIyBBTEwKKyAgICAnX2VuZCcgPT4gMSwJCSMgQUxMCisgICAgJ19fZW5kX18nID0+IDEsCQkjIGFybQorICAgICdfX2V4aWR4X2VuZCcgPT4gMSwJCSMgYXJtZWwKKyAgICAnX19leGlkeF9zdGFydCcgPT4gMSwJIyBhcm1lbAorICAgICdfZmJzcycgPT4gMSwJCSMgbWlwcywgbWlwc2VsCisgICAgJ19mZGF0YScgPT4gMSwJCSMgbWlwcywgbWlwc2VsCisgICAgJ19maW5pJyA9PiAxLAkJIyBBTEwKKyAgICAnX2Z0ZXh0JyA9PiAxLAkJIyBtaXBzLCBtaXBzZWwKKyAgICAnX0dMT0JBTF9PRkZTRVRfVEFCTEVfJyA9PiAxLCAgICMgaHBwYSwgbWlwcywgbWlwc2VsCisgICAgJ19fZ21vbl9zdGFydF9fJyA9PiAxLAkjIGhwcGEKKyAgICAnX19nbnVfbG9jYWxfZ3AnID0+IDEsICAgICAgIyBtaXBzLCBtaXBzZWwKKyAgICAnX2dwJyA9PiAxLAkJCSMgbWlwcywgbWlwc2VsCisgICAgJ19pbml0JyA9PiAxLAkJIyBBTEwKKyAgICAnX1BST0NFRFVSRV9MSU5LQUdFX1RBQkxFXycgPT4gMSwgIyBzcGFyYywgYWxwaGEKKyAgICAnX1NEQTJfQkFTRV8nID0+IDEsCQkjIHBvd2VycGMKKyAgICAnX1NEQV9CQVNFXycgPT4gMSwJCSMgcG93ZXJwYworKTsKKworZm9yIChteSAkaSA9IDE0OyAkaSA8PSAzMTsgJGkrKykgeworICAgICMgTWFueSBwb3dlcnBjIHNwZWNpZmljIHN5bWJvbHMKKyAgICAkYmxhY2tsaXN0eyJfcmVzdGZwcl8kaSJ9ID0gMTsKKyAgICAkYmxhY2tsaXN0eyJfcmVzdGZwcl8kaVxfeCJ9ID0gMTsKKyAgICAkYmxhY2tsaXN0eyJfcmVzdGdwcl8kaSJ9ID0gMTsKKyAgICAkYmxhY2tsaXN0eyJfcmVzdGdwcl8kaVxfeCJ9ID0gMTsKKyAgICAkYmxhY2tsaXN0eyJfc2F2ZWZwcl8kaSJ9ID0gMTsKKyAgICAkYmxhY2tsaXN0eyJfc2F2ZWdwcl8kaSJ9ID0gMTsKK30KKworIyBNYW55IGFybWVsLXNwZWNpZmljIHN5bWJvbHMKKyRibGFja2xpc3R7Il9fYWVhYmlfJF8ifSA9IDEgZm9yZWFjaCAocXcoY2RjbXBlcSBjZGNtcGxlIGNkcmNtcGxlIGNmY21wZXEKK2NmY21wbGUgY2ZyY21wbGUgZDJmIGQyaXogZDJseiBkMnVpeiBkMnVseiBkYWRkIGRjbXBlcSBkY21wZ2UgZGNtcGd0CitkY21wbGUgZGNtcGx0IGRjbXB1biBkZGl2IGRtdWwgZG5lZyBkcnN1YiBkc3ViIGYyZCBmMml6IGYybHogZjJ1aXogZjJ1bHoKK2ZhZGQgZmNtcGVxIGZjbXBnZSBmY21wZ3QgZmNtcGxlIGZjbXBsdCBmY21wdW4gZmRpdiBmbXVsIGZuZWcgZnJzdWIgZnN1YgoraTJkIGkyZiBpZGl2IGlkaXZtb2QgbDJkIGwyZiBsYXNyIGxjbXAgbGRpdm1vZCBsbHNsIGxsc3IgbG11bCB1aTJkIHVpMmYKK3VpZGl2IHVpZGl2bW9kIHVsMmQgdWwyZiB1bGNtcCB1bGRpdm1vZCB1bndpbmRfY3BwX3ByMCB1bndpbmRfY3BwX3ByMQordW53aW5kX2NwcF9wcjIgdXJlYWQ0IHVyZWFkOCB1d3JpdGU0IHV3cml0ZTgpKTsKKworc3ViIG5ldyB7CisgICAgbXkgJHRoaXMgPSBzaGlmdDsKKyAgICBteSAlb3B0cz1AXzsKKyAgICBteSAkY2xhc3MgPSByZWYoJHRoaXMpIHx8ICR0aGlzOworICAgIG15ICRzZWxmID0gXCVvcHRzOworICAgIGJsZXNzICRzZWxmLCAkY2xhc3M7CisgICAgJHNlbGYtPnthcmNofSA9IGdldF9ob3N0X2FyY2goKSB1bmxlc3MgZGVmaW5lZCAkc2VsZi0+e2FyY2h9OworICAgICRzZWxmLT5jbGVhcigpOworICAgIGlmIChleGlzdHMgJHNlbGYtPntmaWxlfSkgeworCSRzZWxmLT5sb2FkKCRzZWxmLT57ZmlsZX0pIGlmIC1lICRzZWxmLT57ZmlsZX07CisgICAgfQorICAgIHJldHVybiAkc2VsZjsKK30KKworc3ViIGdldF9hcmNoIHsKKyAgICBteSAoJHNlbGYpID0gQF87CisgICAgcmV0dXJuICRzZWxmLT57YXJjaH07Cit9CisKK3N1YiBjbGVhciB7CisgICAgbXkgKCRzZWxmKSA9IEBfOworICAgICRzZWxmLT57b2JqZWN0c30gPSB7fTsKK30KKworc3ViIGNsZWFyX2V4Y2VwdCB7CisgICAgbXkgKCRzZWxmLCBAaWRzKSA9IEBfOworICAgIG15ICVoYXM7CisgICAgJGhhc3skX30gPSAxIGZvcmVhY2ggKEBpZHMpOworICAgIGZvcmVhY2ggbXkgJG9iamlkIChrZXlzICV7JHNlbGYtPntvYmplY3RzfX0pIHsKKwlkZWxldGUgJHNlbGYtPntvYmplY3RzfXskb2JqaWR9IHVubGVzcyBleGlzdHMgJGhhc3skb2JqaWR9OworICAgIH0KK30KKworc3ViIGdldF9zb25hbWVzIHsKKyAgICBteSAoJHNlbGYpID0gQF87CisgICAgcmV0dXJuIGtleXMgJXskc2VsZi0+e29iamVjdHN9fTsKK30KKworc3ViIGdldF9zeW1ib2xzIHsKKyAgICBteSAoJHNlbGYsICRzb25hbWUpID0gQF87CisgICAgaWYgKGRlZmluZWQgJHNvbmFtZSkgeworCW15ICRvYmogPSAkc2VsZi0+Z2V0X29iamVjdCgkc29uYW1lKTsKKwlyZXR1cm4gKGRlZmluZWQgJG9iaikgPyB2YWx1ZXMgJXskb2JqLT57c3ltc319IDogKCk7CisgICAgfSBlbHNlIHsKKwlteSBAc3ltczsKKwlmb3JlYWNoIG15ICRzb25hbWUgKCRzZWxmLT5nZXRfc29uYW1lcygpKSB7CisJICAgIHB1c2ggQHN5bXMsICRzZWxmLT5nZXRfc3ltYm9scygkc29uYW1lKTsKKwl9CisJcmV0dXJuIEBzeW1zOworICAgIH0KK30KKworc3ViIGdldF9wYXR0ZXJucyB7CisgICAgbXkgKCRzZWxmLCAkc29uYW1lKSA9IEBfOworICAgIG15IEBwYXR0ZXJuczsKKyAgICBpZiAoZGVmaW5lZCAkc29uYW1lKSB7CisJbXkgJG9iaiA9ICRzZWxmLT5nZXRfb2JqZWN0KCRzb25hbWUpOworCWZvcmVhY2ggbXkgJGFsaWFzICh2YWx1ZXMgJXskb2JqLT57cGF0dGVybnN9e2FsaWFzZXN9fSkgeworCSAgICBwdXNoIEBwYXR0ZXJucywgdmFsdWVzICUkYWxpYXM7CisJfQorCXJldHVybiAoQHBhdHRlcm5zLCBAeyRvYmotPntwYXR0ZXJuc317Z2VuZXJpY319KTsKKyAgICB9IGVsc2UgeworCWZvcmVhY2ggbXkgJHNvbmFtZSAoJHNlbGYtPmdldF9zb25hbWVzKCkpIHsKKwkgICAgcHVzaCBAcGF0dGVybnMsICRzZWxmLT5nZXRfcGF0dGVybnMoJHNvbmFtZSk7CisJfQorCXJldHVybiBAcGF0dGVybnM7CisgICAgfQorfQorCisjIENyZWF0ZSBhIHN5bWJvbCBmcm9tIHRoZSBzdXBwbGllZCBzdHJpbmcgc3BlY2lmaWNhdGlvbi4KK3N1YiBjcmVhdGVfc3ltYm9sIHsKKyAgICBteSAoJHNlbGYsICRzcGVjLCAlb3B0cykgPSBAXzsKKyAgICBteSAkc3ltYm9sID0gKGV4aXN0cyAkb3B0c3tiYXNlfSkgPyAkb3B0c3tiYXNlfSA6CisJRHBrZzo6U2hsaWJzOjpTeW1ib2wtPm5ldygpOworCisgICAgbXkgJHJldCA9ICRvcHRze2R1bW15fSA/ICRzeW1ib2wtPnBhcnNlX3N5bWJvbHNwZWMoJHNwZWMsIGRlZmF1bHRfbWludmVyID0+IDApIDoKKwkkc3ltYm9sLT5wYXJzZV9zeW1ib2xzcGVjKCRzcGVjKTsKKyAgICBpZiAoJHJldCkgeworCSRzeW1ib2wtPmluaXRpYWxpemUoYXJjaCA9PiAkc2VsZi0+Z2V0X2FyY2goKSk7CisJcmV0dXJuICRzeW1ib2w7CisgICAgfQorICAgIHJldHVybiB1bmRlZjsKK30KKworc3ViIGFkZF9zeW1ib2wgeworICAgIG15ICgkc2VsZiwgJHN5bWJvbCwgJHNvbmFtZSkgPSBAXzsKKyAgICBteSAkb2JqZWN0ID0gJHNlbGYtPmdldF9vYmplY3QoJHNvbmFtZSk7CisKKyAgICBpZiAoJHN5bWJvbC0+aXNfcGF0dGVybigpKSB7CisJaWYgKG15ICRhbGlhc190eXBlID0gJHN5bWJvbC0+Z2V0X2FsaWFzX3R5cGUoKSkgeworCSAgICB1bmxlc3MgKGV4aXN0cyAkb2JqZWN0LT57cGF0dGVybnN9e2FsaWFzZXN9eyRhbGlhc190eXBlfSkgeworCQkkb2JqZWN0LT57cGF0dGVybnN9e2FsaWFzZXN9eyRhbGlhc190eXBlfSA9IHt9OworCSAgICB9CisJICAgICMgQWxpYXMgaGFzaCBmb3IgbWF0Y2hpbmcuCisJICAgIG15ICRhbGlhc2VzID0gJG9iamVjdC0+e3BhdHRlcm5zfXthbGlhc2VzfXskYWxpYXNfdHlwZX07CisJICAgICRhbGlhc2VzLT57JHN5bWJvbC0+Z2V0X3N5bWJvbG5hbWUoKX0gPSAkc3ltYm9sOworCX0gZWxzZSB7CisJICAgICMgT3RoZXJ3aXNlIGFzc3VtZSB0aGlzIGlzIGEgZ2VuZXJpYyBzZXF1ZW50aWFsIHBhdHRlcm4uIFRoaXMKKwkgICAgIyBzaG91bGQgYmUgYWx3YXlzIHNhZmUuCisJICAgIHB1c2ggQHskb2JqZWN0LT57cGF0dGVybnN9e2dlbmVyaWN9fSwgJHN5bWJvbDsKKwl9CisJcmV0dXJuICdwYXR0ZXJuJzsKKyAgICB9IGVsc2UgeworCSMgaW52YWxpZGF0ZSB0aGUgbWluaW11bSB2ZXJzaW9uIGNhY2hlCisgICAgICAgICRvYmplY3QtPnttaW52ZXJfY2FjaGV9ID0gW107CisJJG9iamVjdC0+e3N5bXN9eyRzeW1ib2wtPmdldF9zeW1ib2xuYW1lKCl9ID0gJHN5bWJvbDsKKwlyZXR1cm4gJ3N5bSc7CisgICAgfQorfQorCisjIFBhcmFtZXRlciBzZWVuIGlzIG9ubHkgdXNlZCBmb3IgcmVjdXJzaXZlIGNhbGxzCitzdWIgcGFyc2UgeworICAgIG15ICgkc2VsZiwgJGZoLCAkZmlsZSwgJHNlZW4sICRvYmpfcmVmLCAkYmFzZV9zeW1ib2wpID0gQF87CisKKyAgICBzdWIgbmV3X3N5bWJvbCB7CisgICAgICAgIG15ICRiYXNlID0gc2hpZnQgfHwgJ0Rwa2c6OlNobGliczo6U3ltYm9sJzsKKyAgICAgICAgcmV0dXJuIChyZWYgJGJhc2UpID8gJGJhc2UtPmNsb25lKEBfKSA6ICRiYXNlLT5uZXcoQF8pOworICAgIH0KKworICAgIGlmIChkZWZpbmVkKCRzZWVuKSkgeworCXJldHVybiBpZiBleGlzdHMgJHNlZW4tPnskZmlsZX07ICMgQXZvaWQgaW5jbHVkZSBsb29wcworICAgIH0gZWxzZSB7CisJJHNlbGYtPntmaWxlfSA9ICRmaWxlOworCSRzZWVuID0ge307CisgICAgfQorICAgICRzZWVuLT57JGZpbGV9ID0gMTsKKworICAgIGlmIChub3QgcmVmKCRvYmpfcmVmKSkgeyAjIEluaXQgcmVmIHRvIG5hbWUgb2YgY3VycmVudCBvYmplY3QvbGliCisgICAgICAgICQkb2JqX3JlZiA9IHVuZGVmOworICAgIH0KKworICAgIHdoaWxlIChkZWZpbmVkKCRfID0gPCRmaD4pKSB7CisJY2hvbXAoJF8pOworCisJaWYgKC9eKD86XHMrfCMoPzpERVBSRUNBVEVEfE1JU1NJTkcpOiAoW14jXSspI1xzKikoLiopLykgeworCSAgICBpZiAobm90IGRlZmluZWQgKCQkb2JqX3JlZikpIHsKKwkJZXJyb3IoX2coIlN5bWJvbCBpbmZvcm1hdGlvbiBtdXN0IGJlIHByZWNlZGVkIGJ5IGEgaGVhZGVyIChmaWxlICVzLCBsaW5lICVzKS4iKSwgJGZpbGUsICQuKTsKKwkgICAgfQorCSAgICAjIFN5bWJvbCBzcGVjaWZpY2F0aW9uCisJICAgIG15ICRkZXByZWNhdGVkID0gKCQxKSA/ICQxIDogMDsKKwkgICAgbXkgJHN5bSA9IG5ld19zeW1ib2woJGJhc2Vfc3ltYm9sLCBkZXByZWNhdGVkID0+ICRkZXByZWNhdGVkKTsKKwkgICAgaWYgKCRzZWxmLT5jcmVhdGVfc3ltYm9sKCQyLCBiYXNlID0+ICRzeW0pKSB7CisJCSRzZWxmLT5hZGRfc3ltYm9sKCRzeW0sICQkb2JqX3JlZik7CisJICAgIH0gZWxzZSB7CisJCXdhcm5pbmcoX2coIkZhaWxlZCB0byBwYXJzZSBsaW5lIGluICVzOiAlcyIpLCAkZmlsZSwgJF8pOworCSAgICB9CisJfSBlbHNpZiAoL14oXCguKlwpKT8jaW5jbHVkZVxzKyIoW14iXSspIi8pIHsKKwkgICAgbXkgJHRhZ3NwZWMgPSAkMTsKKwkgICAgbXkgJGZpbGVuYW1lID0gJDI7CisJICAgIG15ICRkaXIgPSAkZmlsZTsKKwkgICAgbXkgJG5ld19iYXNlX3N5bWJvbDsKKwkgICAgaWYgKGRlZmluZWQgJHRhZ3NwZWMpIHsKKyAgICAgICAgICAgICAgICAkbmV3X2Jhc2Vfc3ltYm9sID0gbmV3X3N5bWJvbCgkYmFzZV9zeW1ib2wpOworCQkkbmV3X2Jhc2Vfc3ltYm9sLT5wYXJzZV90YWdzcGVjKCR0YWdzcGVjKTsKKwkgICAgfQorCSAgICAkZGlyID1+IHN7W14vXSskfXt9OyAjIFN0cmlwIGZpbGVuYW1lCisJICAgICRzZWxmLT5sb2FkKCIkZGlyJGZpbGVuYW1lIiwgJHNlZW4sICRvYmpfcmVmLCAkbmV3X2Jhc2Vfc3ltYm9sKTsKKwl9IGVsc2lmICgvXiN8XiQvKSB7CisJICAgICMgU2tpcCBwb3NzaWJsZSBjb21tZW50cyBhbmQgZW1wdHkgbGluZXMKKwl9IGVsc2lmICgvXlx8XHMqKC4qKSQvKSB7CisJICAgICMgQWx0ZXJuYXRpdmUgZGVwZW5kZW5jeSB0ZW1wbGF0ZQorCSAgICBwdXNoIEB7JHNlbGYtPntvYmplY3RzfXskJG9ial9yZWZ9e2RlcHN9fSwgIiQxIjsKKwl9IGVsc2lmICgvXlwqXHMqKFteOl0rKTpccyooLipcUylccyokLykgeworCSAgICAjIEFkZCBtZXRhLWZpZWxkcworCSAgICAkc2VsZi0+e29iamVjdHN9eyQkb2JqX3JlZn17ZmllbGRzfXtmaWVsZF9jYXBpdGFsaXplKCQxKX0gPSAkMjsKKwl9IGVsc2lmICgvXihcUyspXHMrKC4qKSQvKSB7CisJICAgICMgTmV3IG9iamVjdCBhbmQgZGVwZW5kZW5jeSB0ZW1wbGF0ZQorCSAgICAkJG9ial9yZWYgPSAkMTsKKwkgICAgaWYgKGV4aXN0cyAkc2VsZi0+e29iamVjdHN9eyQkb2JqX3JlZn0pIHsKKwkJIyBVcGRhdGUvb3ZlcnJpZGUgaW5mb3Mgb25seQorCQkkc2VsZi0+e29iamVjdHN9eyQkb2JqX3JlZn17ZGVwc30gPSBbICIkMiIgXTsKKwkgICAgfSBlbHNlIHsKKwkJIyBDcmVhdGUgYSBuZXcgb2JqZWN0CisJCSRzZWxmLT5jcmVhdGVfb2JqZWN0KCQkb2JqX3JlZiwgIiQyIik7CisJICAgIH0KKwl9IGVsc2UgeworCSAgICB3YXJuaW5nKF9nKCJGYWlsZWQgdG8gcGFyc2UgYSBsaW5lIGluICVzOiAlcyIpLCAkZmlsZSwgJF8pOworCX0KKyAgICB9CisgICAgZGVsZXRlICRzZWVuLT57JGZpbGV9OworfQorCisjIEJld2FyZTogd2UgcmV1c2UgdGhlIGRhdGEgc3RydWN0dXJlIG9mIHRoZSBwcm92aWRlZCBzeW1maWxlIHNvIG1ha2UKKyMgc3VyZSB0byBub3QgbW9kaWZ5IHRoZW0gYWZ0ZXIgaGF2aW5nIGNhbGxlZCB0aGlzIGZ1bmN0aW9uCitzdWIgbWVyZ2Vfb2JqZWN0X2Zyb21fc3ltZmlsZSB7CisgICAgbXkgKCRzZWxmLCAkc3JjLCAkb2JqaWQpID0gQF87CisgICAgaWYgKG5vdCAkc2VsZi0+aGFzX29iamVjdCgkb2JqaWQpKSB7CisgICAgICAgICRzZWxmLT57b2JqZWN0c317JG9iamlkfSA9ICRzcmMtPmdldF9vYmplY3QoJG9iamlkKTsKKyAgICB9IGVsc2UgeworICAgICAgICB3YXJuaW5nKF9nKCJUcmllZCB0byBtZXJnZSB0aGUgc2FtZSBvYmplY3QgKCVzKSB0d2ljZSBpbiBhIHN5bWZpbGUuIiksICRvYmppZCk7CisgICAgfQorfQorCitzdWIgb3V0cHV0IHsKKyAgICBteSAoJHNlbGYsICRmaCwgJW9wdHMpID0gQF87CisgICAgJG9wdHN7dGVtcGxhdGVfbW9kZX0gPSAwIHVubGVzcyBleGlzdHMgJG9wdHN7dGVtcGxhdGVfbW9kZX07CisgICAgJG9wdHN7d2l0aF9kZXByZWNhdGVkfSA9IDEgdW5sZXNzIGV4aXN0cyAkb3B0c3t3aXRoX2RlcHJlY2F0ZWR9OworICAgICRvcHRze3dpdGhfcGF0dGVybl9tYXRjaGVzfSA9IDAgdW5sZXNzIGV4aXN0cyAkb3B0c3t3aXRoX3BhdHRlcm5fbWF0Y2hlc307CisgICAgbXkgJHJlcyA9ICIiOworICAgIGZvcmVhY2ggbXkgJHNvbmFtZSAoc29ydCAkc2VsZi0+Z2V0X3NvbmFtZXMoKSkgeworCW15IEBkZXBzID0gJHNlbGYtPmdldF9kZXBlbmRlbmNpZXMoJHNvbmFtZSk7CisJbXkgJGRlcCA9IHNoaWZ0IEBkZXBzOworCSRkZXAgPX4gcy8jUEFDS0FHRSMvJG9wdHN7cGFja2FnZX0vZyBpZiBleGlzdHMgJG9wdHN7cGFja2FnZX07CisJcHJpbnQgJGZoICIkc29uYW1lICRkZXBcbiIgaWYgZGVmaW5lZCAkZmg7CisJJHJlcyAuPSAiJHNvbmFtZSAkZGVwXG4iIGlmIGRlZmluZWQgd2FudGFycmF5OworCisJZm9yZWFjaCAkZGVwIChAZGVwcykgeworCSAgICAkZGVwID1+IHMvI1BBQ0tBR0UjLyRvcHRze3BhY2thZ2V9L2cgaWYgZXhpc3RzICRvcHRze3BhY2thZ2V9OworCSAgICBwcmludCAkZmggInwgJGRlcFxuIiBpZiBkZWZpbmVkICRmaDsKKwkgICAgJHJlcyAuPSAifCAkZGVwXG4iIGlmIGRlZmluZWQgd2FudGFycmF5OworCX0KKwlteSAkZiA9ICRzZWxmLT57b2JqZWN0c317JHNvbmFtZX17ZmllbGRzfTsKKwlmb3JlYWNoIG15ICRmaWVsZCAoc29ydCBrZXlzICV7JGZ9KSB7CisJICAgIG15ICR2YWx1ZSA9ICRmLT57JGZpZWxkfTsKKwkgICAgJHZhbHVlID1+IHMvI1BBQ0tBR0UjLyRvcHRze3BhY2thZ2V9L2cgaWYgZXhpc3RzICRvcHRze3BhY2thZ2V9OworCSAgICBwcmludCAkZmggIiogJGZpZWxkOiAkdmFsdWVcbiIgaWYgZGVmaW5lZCAkZmg7CisJICAgICRyZXMgLj0gIiogJGZpZWxkOiAkdmFsdWVcbiIgaWYgZGVmaW5lZCB3YW50YXJyYXk7CisJfQorCisJbXkgQHN5bWJvbHM7CisJaWYgKCRvcHRze3RlbXBsYXRlX21vZGV9KSB7CisJICAgICMgRXhjbHVkZSBzeW1ib2xzIG1hdGNoaW5nIGEgcGF0dGVybiwgYnV0IGluY2x1ZGUgcGF0dGVybnMgdGhlbXNlbHZlcworCSAgICBAc3ltYm9scyA9IGdyZXAgeyBub3QgJF8tPmdldF9wYXR0ZXJuKCkgfSAkc2VsZi0+Z2V0X3N5bWJvbHMoJHNvbmFtZSk7CisJICAgIHB1c2ggQHN5bWJvbHMsICRzZWxmLT5nZXRfcGF0dGVybnMoJHNvbmFtZSk7CisJfSBlbHNlIHsKKwkgICAgQHN5bWJvbHMgPSAkc2VsZi0+Z2V0X3N5bWJvbHMoJHNvbmFtZSk7CisJfQorCWZvcmVhY2ggbXkgJHN5bSAoc29ydCB7ICRhLT5nZXRfc3ltYm9sdGVtcGwoKSBjbXAKKwkgICAgICAgICAgICAgICAgICAgICAgICAkYi0+Z2V0X3N5bWJvbHRlbXBsKCkgfSBAc3ltYm9scykgeworCSAgICBuZXh0IGlmICRzeW0tPntkZXByZWNhdGVkfSBhbmQgbm90ICRvcHRze3dpdGhfZGVwcmVjYXRlZH07CisJICAgICMgRG8gbm90IGR1bXAgc3ltYm9scyBmcm9tIGZvcmVpZ24gYXJjaCB1bmxlc3MgZHVtcGluZyBhIHRlbXBsYXRlLgorCSAgICBuZXh0IGlmIG5vdCAkb3B0c3t0ZW1wbGF0ZV9tb2RlfSBhbmQKKwkgICAgICAgICAgICBub3QgJHN5bS0+YXJjaF9pc19jb25jZXJuZWQoJHNlbGYtPmdldF9hcmNoKCkpOworCSAgICAjIER1bXAgc3ltYm9sIHNwZWNpZmljYXRpb24uIER1bXAgc3ltYm9sIHRhZ3Mgb25seSBpbiB0ZW1wbGF0ZSBtb2RlLgorCSAgICBwcmludCAkZmggJHN5bS0+Z2V0X3N5bWJvbHNwZWMoJG9wdHN7dGVtcGxhdGVfbW9kZX0pLCAiXG4iIGlmIGRlZmluZWQgJGZoOworCSAgICAkcmVzIC49ICRzeW0tPmdldF9zeW1ib2xzcGVjKCRvcHRze3RlbXBsYXRlX21vZGV9KSAuICJcbiIgaWYgZGVmaW5lZCB3YW50YXJyYXk7CisJICAgICMgRHVtcCBwYXR0ZXJuIG1hdGNoZXMgYXMgY29tbWVudHMgKGlmIHJlcXVlc3RlZCkKKwkgICAgaWYgKCRvcHRze3dpdGhfcGF0dGVybl9tYXRjaGVzfSAmJiAkc3ltLT5pc19wYXR0ZXJuKCkpIHsKKwkJZm9yIG15ICRtYXRjaCAoc29ydCB7ICRhLT5nZXRfc3ltYm9sdGVtcGwoKSBjbXAKKwkJICAgICAgICAgICAgICAgICAgICAgICRiLT5nZXRfc3ltYm9sdGVtcGwoKSB9ICRzeW0tPmdldF9wYXR0ZXJuX21hdGNoZXMoKSkKKwkJeworCQkgICAgcHJpbnQgJGZoICIjTUFUQ0g6IiwgJG1hdGNoLT5nZXRfc3ltYm9sc3BlYygwKSwgIlxuIiBpZiBkZWZpbmVkICRmaDsKKwkJICAgICRyZXMgLj0gIiNNQVRDSDoiIC4gJG1hdGNoLT5nZXRfc3ltYm9sc3BlYygwKSAuICJcbiIgaWYgZGVmaW5lZCB3YW50YXJyYXk7CisJCX0KKwkgICAgfQorCX0KKyAgICB9CisgICAgcmV0dXJuICRyZXM7Cit9CisKKyMgVHJpZXMgdG8gbWF0Y2ggYSBzeW1ib2wgbmFtZSBhbmQvb3IgdmVyc2lvbiBhZ2FpbnN0IHRoZSBwYXR0ZXJucyBkZWZpbmVkLgorIyBSZXR1cm5zIGEgcGF0dGVybiB3aGljaCBtYXRjaGVzIChpZiBhbnkpLgorc3ViIGZpbmRfbWF0Y2hpbmdfcGF0dGVybiB7CisgICAgbXkgKCRzZWxmLCAkcmVmc3ltLCAkc29uYW1lcywgJGluY19kZXByZWNhdGVkKSA9IEBfOworICAgICRpbmNfZGVwcmVjYXRlZCA9IDAgdW5sZXNzIGRlZmluZWQgJGluY19kZXByZWNhdGVkOworICAgIG15ICRuYW1lID0gKHJlZiAkcmVmc3ltKSA/ICRyZWZzeW0tPmdldF9zeW1ib2xuYW1lKCkgOiAkcmVmc3ltOworCisgICAgbXkgJHBhdHRlcm5fb2sgPSBzdWIgeworCW15ICRwID0gc2hpZnQ7CisJcmV0dXJuIGRlZmluZWQgJHAgJiYgKCRpbmNfZGVwcmVjYXRlZCB8fCAhJHAtPntkZXByZWNhdGVkfSkgJiYKKwkgICAgICAgJHAtPmFyY2hfaXNfY29uY2VybmVkKCRzZWxmLT5nZXRfYXJjaCgpKTsKKyAgICB9OworCisgICAgZm9yZWFjaCBteSAkc29uYW1lICgocmVmKCRzb25hbWVzKSBlcSAnQVJSQVknKSA/IEAkc29uYW1lcyA6ICRzb25hbWVzKSB7CisJbXkgJG9iaiA9ICRzZWxmLT5nZXRfb2JqZWN0KCRzb25hbWUpOworCW15ICgkdHlwZSwgJHBhdHRlcm4pOworCW5leHQgdW5sZXNzIGRlZmluZWQgJG9iajsKKworCW15ICRhbGxfYWxpYXNlcyA9ICRvYmotPntwYXR0ZXJuc317YWxpYXNlc307CisJZm9yIG15ICR0eXBlIChEcGtnOjpTaGxpYnM6OlN5bWJvbDo6QUxJQVNfVFlQRVMpIHsKKwkgICAgaWYgKGV4aXN0cyAkYWxsX2FsaWFzZXMtPnskdHlwZX0gJiYga2V5cygleyRhbGxfYWxpYXNlcy0+eyR0eXBlfX0pKSB7CisJCW15ICRhbGlhc2VzID0gJGFsbF9hbGlhc2VzLT57JHR5cGV9OworCQlteSAkY29udmVydGVyID0gJGFsaWFzZXMtPnsoa2V5cyAlJGFsaWFzZXMpWzBdfTsKKwkJaWYgKG15ICRhbGlhcyA9ICRjb252ZXJ0ZXItPmNvbnZlcnRfdG9fYWxpYXMoJG5hbWUpKSB7CisJCSAgICBpZiAoJGFsaWFzICYmIGV4aXN0cyAkYWxpYXNlcy0+eyRhbGlhc30pIHsKKwkJCSRwYXR0ZXJuID0gJGFsaWFzZXMtPnskYWxpYXN9OworCQkJbGFzdCBpZiAmJHBhdHRlcm5fb2soJHBhdHRlcm4pOworCQkJJHBhdHRlcm4gPSB1bmRlZjsgIyBvdGhlcndpc2Ugbm90IGZvdW5kIHlldAorCQkgICAgfQorCQl9CisJICAgIH0KKwl9CisKKwkjIE5vdyB0cnkgZ2VuZXJpYyBwYXR0ZXJucyBhbmQgdXNlIHRoZSBmaXJzdCB0aGF0IG1hdGNoZXMKKwlpZiAobm90IGRlZmluZWQgJHBhdHRlcm4pIHsKKwkgICAgZm9yIG15ICRwIChAeyRvYmotPntwYXR0ZXJuc317Z2VuZXJpY319KSB7CisJCWlmICgmJHBhdHRlcm5fb2soJHApICYmICRwLT5tYXRjaGVzX3Jhd25hbWUoJG5hbWUpKSB7CisJCSAgICAkcGF0dGVybiA9ICRwOworCQkgICAgbGFzdDsKKwkJfQorCSAgICB9CisJfQorCWlmIChkZWZpbmVkICRwYXR0ZXJuKSB7CisJICAgIHJldHVybiAod2FudGFycmF5KSA/CisJCSggc3ltYm9sID0+ICRwYXR0ZXJuLCBzb25hbWUgPT4gJHNvbmFtZSApIDogJHBhdHRlcm47CisJfQorICAgIH0KKyAgICByZXR1cm4gKHdhbnRhcnJheSkgPyAoKSA6IHVuZGVmOworfQorCisjIG1lcmdlX3N5bWJvbHMoJG9iamVjdCwgJG1pbnZlcikKKyMgTmVlZHMgJE9iamR1bXAtPmdldF9vYmplY3QoJHNvbmFtZSkgYXMgcGFyYW1ldGVyCisjIERvbid0IG1lcmdlIGJsYWNrbGlzdGVkIHN5bWJvbHMgcmVsYXRlZCB0byB0aGUgaW50ZXJuYWwgKGFyY2gtc3BlY2lmaWMpCisjIG1hY2hpbmVyeQorc3ViIG1lcmdlX3N5bWJvbHMgeworICAgIG15ICgkc2VsZiwgJG9iamVjdCwgJG1pbnZlcikgPSBAXzsKKyAgICBteSAkc29uYW1lID0gJG9iamVjdC0+e1NPTkFNRX0gfHwgZXJyb3IoX2coIkNhbid0IG1lcmdlIHN5bWJvbHMgZnJvbSBvYmplY3RzIHdpdGhvdXQgU09OQU1FLiIpKTsKKyAgICBteSAlZHluc3ltczsKKyAgICBmb3JlYWNoIG15ICRzeW0gKCRvYmplY3QtPmdldF9leHBvcnRlZF9keW5hbWljX3N5bWJvbHMoKSkgeworICAgICAgICBteSAkbmFtZSA9ICRzeW0tPntuYW1lfSAuICdAJyAuCisgICAgICAgICAgICAgICAgICAgKCRzeW0tPnt2ZXJzaW9ufSA/ICRzeW0tPnt2ZXJzaW9ufSA6ICJCYXNlIik7CisgICAgICAgIG15ICRzeW1vYmogPSAkc2VsZi0+bG9va3VwX3N5bWJvbCgkbmFtZSwgJHNvbmFtZSk7CisgICAgICAgIGlmIChleGlzdHMgJGJsYWNrbGlzdHskc3ltLT57bmFtZX19KSB7CisgICAgICAgICAgICBuZXh0IHVubGVzcyAoZGVmaW5lZCAkc3ltb2JqIGFuZCAkc3ltb2JqLT5oYXNfdGFnKCJpZ25vcmUtYmxhY2tsaXN0IikpOworICAgICAgICB9CisgICAgICAgICRkeW5zeW1zeyRuYW1lfSA9ICRzeW07CisgICAgfQorCisgICAgdW5sZXNzICgkc2VsZi0+aGFzX29iamVjdCgkc29uYW1lKSkgeworCSRzZWxmLT5jcmVhdGVfb2JqZWN0KCRzb25hbWUsICcnKTsKKyAgICB9CisgICAgIyBTY2FuIGFsbCBzeW1ib2xzIHByb3ZpZGVkIGJ5IHRoZSBvYmplY3RzCisgICAgbXkgJG9iaiA9ICRzZWxmLT5nZXRfb2JqZWN0KCRzb25hbWUpOworICAgICMgaW52YWxpZGF0ZSB0aGUgbWluaW11bSB2ZXJzaW9uIGNhY2hlIC0gaXQgaXMgbm90IHN1ZmZpY2llbnQgdG8KKyAgICAjIGludmFsaWRhdGUgaW4gYWRkX3N5bWJvbCwgc2luY2Ugd2UgbWlnaHQgY2hhbmdlIGEgbWluaW11bQorICAgICMgdmVyc2lvbiBmb3IgYSBwYXJ0aWN1bGFyIHN5bWJvbCB3aXRob3V0IGFkZGluZyBpdAorICAgICRvYmotPnttaW52ZXJfY2FjaGV9ID0gW107CisgICAgZm9yZWFjaCBteSAkbmFtZSAoa2V5cyAlZHluc3ltcykgeworICAgICAgICBteSAkc3ltOworCWlmICgkc3ltID0gJHNlbGYtPmxvb2t1cF9zeW1ib2woJG5hbWUsICRvYmosIDEpKSB7CisJICAgICMgSWYgdGhlIHN5bWJvbCBpcyBhbHJlYWR5IGxpc3RlZCBpbiB0aGUgZmlsZQorCSAgICAkc3ltLT5tYXJrX2ZvdW5kX2luX2xpYnJhcnkoJG1pbnZlciwgJHNlbGYtPmdldF9hcmNoKCkpOworCX0gZWxzZSB7CisJICAgICMgVGhlIGV4YWN0IHN5bWJvbCBpcyBub3QgcHJlc2VudCBpbiB0aGUgZmlsZSwgYnV0IGl0IG1pZ2h0IG1hdGNoIGEgCisJICAgICMgcGF0dGVybi4KKwkgICAgbXkgJHBhdHRlcm4gPSAkc2VsZi0+ZmluZF9tYXRjaGluZ19wYXR0ZXJuKCRuYW1lLCAkb2JqLCAxKTsKKwkgICAgaWYgKGRlZmluZWQgJHBhdHRlcm4pIHsKKwkJJHBhdHRlcm4tPm1hcmtfZm91bmRfaW5fbGlicmFyeSgkbWludmVyLCAkc2VsZi0+Z2V0X2FyY2goKSk7CisJCSRzeW0gPSAkcGF0dGVybi0+Y3JlYXRlX3BhdHRlcm5fbWF0Y2goc3ltYm9sID0+ICRuYW1lKTsKKwkgICAgfSBlbHNlIHsKKwkJIyBTeW1ib2wgd2l0aG91dCBhbnkgc3BlY2lhbCBpbmZvIGFzIG5vIHBhdHRlcm4gbWF0Y2hlZAorCQkkc3ltID0gRHBrZzo6U2hsaWJzOjpTeW1ib2wtPm5ldyhzeW1ib2wgPT4gJG5hbWUsCisJCSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1pbnZlciA9PiAkbWludmVyKTsKKwkgICAgfQorCSAgICAkc2VsZi0+YWRkX3N5bWJvbCgkc3ltLCAkb2JqKTsKKwl9CisgICAgfQorCisgICAgIyBQcm9jZXNzIGFsbCBzeW1ib2xzIHdoaWNoIGNvdWxkIG5vdCBiZSBmb3VuZCBpbiB0aGUgbGlicmFyeS4KKyAgICBmb3JlYWNoIG15ICRzeW0gKCRzZWxmLT5nZXRfc3ltYm9scygkc29uYW1lKSkgeworCWlmIChub3QgZXhpc3RzICRkeW5zeW1zeyRzeW0tPmdldF9zeW1ib2xuYW1lKCl9KSB7CisJICAgICRzeW0tPm1hcmtfbm90X2ZvdW5kX2luX2xpYnJhcnkoJG1pbnZlciwgJHNlbGYtPmdldF9hcmNoKCkpOworCX0KKyAgICB9CisKKyAgICAjIERlcHJlY2F0ZSBwYXR0ZXJucyB3aGljaCBkaWRuJ3QgbWF0Y2ggYW55dGhpbmcKKyAgICBmb3IgbXkgJHBhdHRlcm4gKGdyZXAgeyAkXy0+Z2V0X3BhdHRlcm5fbWF0Y2hlcygpID09IDAgfQorICAgICAgICAgICAgICAgICAgICAgICAgICAkc2VsZi0+Z2V0X3BhdHRlcm5zKCRzb25hbWUpKSB7CisJJHBhdHRlcm4tPm1hcmtfbm90X2ZvdW5kX2luX2xpYnJhcnkoJG1pbnZlciwgJHNlbGYtPmdldF9hcmNoKCkpOworICAgIH0KK30KKworc3ViIGlzX2VtcHR5IHsKKyAgICBteSAoJHNlbGYpID0gQF87CisgICAgcmV0dXJuIHNjYWxhcihrZXlzICV7JHNlbGYtPntvYmplY3RzfX0pID8gMCA6IDE7Cit9CisKK3N1YiBoYXNfb2JqZWN0IHsKKyAgICBteSAoJHNlbGYsICRzb25hbWUpID0gQF87CisgICAgcmV0dXJuIGV4aXN0cyAkc2VsZi0+e29iamVjdHN9eyRzb25hbWV9OworfQorCitzdWIgZ2V0X29iamVjdCB7CisgICAgbXkgKCRzZWxmLCAkc29uYW1lKSA9IEBfOworICAgIHJldHVybiByZWYoJHNvbmFtZSkgPyAkc29uYW1lIDogJHNlbGYtPntvYmplY3RzfXskc29uYW1lfTsKK30KKworc3ViIGNyZWF0ZV9vYmplY3QgeworICAgIG15ICgkc2VsZiwgJHNvbmFtZSwgQGRlcHMpID0gQF87CisgICAgJHNlbGYtPntvYmplY3RzfXskc29uYW1lfSA9IHsKKwlzeW1zID0+IHt9LAorCWZpZWxkcyA9PiB7fSwKKwlwYXR0ZXJucyA9PiB7CisJICAgIGFsaWFzZXMgPT4ge30sCisJICAgIGdlbmVyaWMgPT4gW10sCisJfSwKKwlkZXBzID0+IFsgQGRlcHMgXSwKKyAgICAgICAgbWludmVyX2NhY2hlID0+IFtdCisgICAgfTsKK30KKworc3ViIGdldF9kZXBlbmRlbmN5IHsKKyAgICBteSAoJHNlbGYsICRzb25hbWUsICRkZXBfaWQpID0gQF87CisgICAgJGRlcF9pZCA9IDAgdW5sZXNzIGRlZmluZWQoJGRlcF9pZCk7CisgICAgcmV0dXJuICRzZWxmLT5nZXRfb2JqZWN0KCRzb25hbWUpLT57ZGVwc31bJGRlcF9pZF07Cit9CisKK3N1YiBnZXRfc21hbGxlc3RfdmVyc2lvbiB7CisgICAgbXkgKCRzZWxmLCAkc29uYW1lLCAkZGVwX2lkKSA9IEBfOworICAgICRkZXBfaWQgPSAwIHVubGVzcyBkZWZpbmVkKCRkZXBfaWQpOworICAgIG15ICRzb19vYmplY3QgPSAkc2VsZi0+Z2V0X29iamVjdCgkc29uYW1lKTsKKyAgICByZXR1cm4gJHNvX29iamVjdC0+e21pbnZlcl9jYWNoZX1bJGRlcF9pZF0gaWYoZGVmaW5lZCgkc29fb2JqZWN0LT57bWludmVyX2NhY2hlfVskZGVwX2lkXSkpOworICAgIG15ICRtaW52ZXI7CisgICAgZm9yZWFjaCBteSAkc3ltICgkc2VsZi0+Z2V0X3N5bWJvbHMoJHNvX29iamVjdCkpIHsKKyAgICAgICAgbmV4dCBpZiAkZGVwX2lkICE9ICRzeW0tPntkZXBfaWR9OworICAgICAgICAkbWludmVyID0gJHN5bS0+e21pbnZlcn0gdW5sZXNzIGRlZmluZWQoJG1pbnZlcik7CisgICAgICAgIGlmICh2ZXJzaW9uX2NvbXBhcmUoJG1pbnZlciwgJHN5bS0+e21pbnZlcn0pID4gMCkgeworICAgICAgICAgICAgJG1pbnZlciA9ICRzeW0tPnttaW52ZXJ9OworICAgICAgICB9CisgICAgfQorICAgICRzb19vYmplY3QtPnttaW52ZXJfY2FjaGV9WyRkZXBfaWRdID0gJG1pbnZlcjsKKyAgICByZXR1cm4gJG1pbnZlcjsKK30KKworc3ViIGdldF9kZXBlbmRlbmNpZXMgeworICAgIG15ICgkc2VsZiwgJHNvbmFtZSkgPSBAXzsKKyAgICByZXR1cm4gQHskc2VsZi0+Z2V0X29iamVjdCgkc29uYW1lKS0+e2RlcHN9fTsKK30KKworc3ViIGdldF9maWVsZCB7CisgICAgbXkgKCRzZWxmLCAkc29uYW1lLCAkbmFtZSkgPSBAXzsKKyAgICBpZiAobXkgJG9iaiA9ICRzZWxmLT5nZXRfb2JqZWN0KCRzb25hbWUpKSB7CisJaWYgKGV4aXN0cyAkb2JqLT57ZmllbGRzfXskbmFtZX0pIHsKKwkgICAgcmV0dXJuICRvYmotPntmaWVsZHN9eyRuYW1lfTsKKwl9CisgICAgfQorICAgIHJldHVybiB1bmRlZjsKK30KKworIyBUcmllcyB0byBmaW5kIGEgc3ltYm9sIGxpa2UgdGhlICRyZWZzeW0gYW5kIHJldHVybnMgaXRzIGRlc2NyaXB0b3IuCisjICRyZWZzeW0gbWF5IGFsc28gYmUgYSBzeW1ib2wgbmFtZS4KK3N1YiBsb29rdXBfc3ltYm9sIHsKKyAgICBteSAoJHNlbGYsICRyZWZzeW0sICRzb25hbWVzLCAkaW5jX2RlcHJlY2F0ZWQpID0gQF87CisgICAgJGluY19kZXByZWNhdGVkID0gMCB1bmxlc3MgZGVmaW5lZCgkaW5jX2RlcHJlY2F0ZWQpOworICAgIG15ICRuYW1lID0gKHJlZiAkcmVmc3ltKSA/ICRyZWZzeW0tPmdldF9zeW1ib2xuYW1lKCkgOiAkcmVmc3ltOworCisgICAgZm9yZWFjaCBteSAkc28gKChyZWYoJHNvbmFtZXMpIGVxICdBUlJBWScpID8gQCRzb25hbWVzIDogJHNvbmFtZXMpIHsKKwlpZiAobXkgJG9iaiA9ICRzZWxmLT5nZXRfb2JqZWN0KCRzbykpIHsKKwkgICAgbXkgJHN5bSA9ICRvYmotPntzeW1zfXskbmFtZX07CisJICAgIGlmICgkc3ltIGFuZCAoJGluY19kZXByZWNhdGVkIG9yIG5vdCAkc3ltLT57ZGVwcmVjYXRlZH0pKQorCSAgICB7CisJCXJldHVybiAod2FudGFycmF5KSA/CisJCSAgICAoIHN5bWJvbCA9PiAkc3ltLCBzb25hbWUgPT4gJHNvICkgOiAkc3ltOworCSAgICB9CisJfQorICAgIH0KKyAgICByZXR1cm4gKHdhbnRhcnJheSkgPyAoKSA6IHVuZGVmOworfQorCisjIFRyaWVzIHRvIGZpbmQgYSBwYXR0ZXJuIGxpa2UgdGhlICRyZWZwYXQgYW5kIHJldHVybnMgaXRzIGRlc2NyaXB0b3IuCisjICRyZWZwYXQgbWF5IGFsc28gYmUgYSBwYXR0ZXJuIHNwZWMuCitzdWIgbG9va3VwX3BhdHRlcm4geworICAgIG15ICgkc2VsZiwgJHJlZnBhdCwgJHNvbmFtZXMsICRpbmNfZGVwcmVjYXRlZCkgPSBAXzsKKyAgICAkaW5jX2RlcHJlY2F0ZWQgPSAwIHVubGVzcyBkZWZpbmVkKCRpbmNfZGVwcmVjYXRlZCk7CisgICAgIyBJZiAkcmVmc3ltIGlzIGEgc3RyaW5nLCB3ZSBuZWVkIHRvIGNyZWF0ZSBhIGR1bW15IHJlZiBzeW1ib2wuCisgICAgJHJlZnBhdCA9ICRzZWxmLT5jcmVhdGVfc3ltYm9sKCRyZWZwYXQsIGR1bW15ID0+IDEpIGlmICEgcmVmKCRyZWZwYXQpOworCisgICAgaWYgKCRyZWZwYXQgJiYgJHJlZnBhdC0+aXNfcGF0dGVybigpKSB7CisJZm9yZWFjaCBteSAkc29uYW1lICgocmVmKCRzb25hbWVzKSBlcSAnQVJSQVknKSA/IEAkc29uYW1lcyA6ICRzb25hbWVzKSB7CisJICAgIGlmIChteSAkb2JqID0gJHNlbGYtPmdldF9vYmplY3QoJHNvbmFtZSkpIHsKKwkJbXkgJHBhdDsKKwkJaWYgKG15ICR0eXBlID0gJHJlZnBhdC0+Z2V0X2FsaWFzX3R5cGUoKSkgeworCQkgICAgaWYgKGV4aXN0cyAkb2JqLT57cGF0dGVybnN9e2FsaWFzZXN9eyR0eXBlfSkgeworCQkJJHBhdCA9ICRvYmotPntwYXR0ZXJuc317YWxpYXNlc317JHR5cGV9eyRyZWZwYXQtPmdldF9zeW1ib2xuYW1lKCl9OworCQkgICAgfQorCQl9IGVsc2lmICgkcmVmcGF0LT5nZXRfcGF0dGVybl90eXBlKCkgZXEgImdlbmVyaWMiKSB7CisJCSAgICBmb3IgbXkgJHAgKEB7JG9iai0+e3BhdHRlcm5zfXtnZW5lcmljfX0pIHsKKwkJCWlmICgoJGluY19kZXByZWNhdGVkIHx8ICEkcC0+e2RlcHJlY2F0ZWR9KSAmJgorCQkJICAgICRwLT5lcXVhbHMoJHJlZnBhdCwgdmVyc2lvbmluZyA9PiAwKSkKKwkJCXsKKwkJCSAgICAkcGF0ID0gJHA7CisJCQkgICAgbGFzdDsKKwkJCX0KKwkJICAgIH0KKwkJfQorCQlpZiAoJHBhdCAmJiAoJGluY19kZXByZWNhdGVkIHx8ICEkcGF0LT57ZGVwcmVjYXRlZH0pKSB7CisJCSAgICByZXR1cm4gKHdhbnRhcnJheSkgPworCQkJKHN5bWJvbCA9PiAkcGF0LCBzb25hbWUgPT4gJHNvbmFtZSkgOiAkcGF0OworCQl9CisJICAgIH0KKwl9CisgICAgfQorICAgIHJldHVybiAod2FudGFycmF5KSA/ICgpIDogdW5kZWY7Cit9CisKKyMgR2V0IHN5bWJvbCBvYmplY3QgcmVmZXJlbmNlIGVpdGhlciBieSBzeW1ib2wgbmFtZSBvciBieSBhIHJlZmVyZW5jZSBvYmplY3QuCitzdWIgZ2V0X3N5bWJvbF9vYmplY3QgeworICAgIG15ICgkc2VsZiwgJHJlZnN5bSwgJHNvbmFtZSkgPSBAXzsKKyAgICBteSAkc3ltID0gJHNlbGYtPmxvb2t1cF9zeW1ib2woJHJlZnN5bSwgJHNvbmFtZSwgMSk7CisgICAgaWYgKCEgZGVmaW5lZCAkc3ltKSB7CisJJHN5bSA9ICRzZWxmLT5sb29rdXBfcGF0dGVybigkcmVmc3ltLCAkc29uYW1lLCAxKTsKKyAgICB9CisgICAgcmV0dXJuICRzeW07Cit9CisKK3N1YiBnZXRfbmV3X3N5bWJvbHMgeworICAgIG15ICgkc2VsZiwgJHJlZiwgJW9wdHMpID0gQF87CisgICAgbXkgJHdpdGhfb3B0aW9uYWwgPSAoZXhpc3RzICRvcHRze3dpdGhfb3B0aW9uYWx9KSA/CisJJG9wdHN7d2l0aF9vcHRpb25hbH0gOiAwOworICAgIG15IEByZXM7CisgICAgZm9yZWFjaCBteSAkc29uYW1lICgkc2VsZi0+Z2V0X3NvbmFtZXMoKSkgeworCW5leHQgaWYgbm90ICRyZWYtPmhhc19vYmplY3QoJHNvbmFtZSk7CisKKwkjIFNjYW4gcmF3IHN5bWJvbHMgZmlyc3QuCisJZm9yZWFjaCBteSAkc3ltIChncmVwIHsgKCR3aXRoX29wdGlvbmFsIHx8ICEgJF8tPmlzX29wdGlvbmFsKCkpCisJICAgICAgICAgICAgICAgICAgICAgICAgJiYgJF8tPmlzX2xlZ2l0aW1hdGUoJHNlbGYtPmdldF9hcmNoKCkpIH0KKwkgICAgICAgICAgICAgICAgICAgICAgJHNlbGYtPmdldF9zeW1ib2xzKCRzb25hbWUpKQorCXsKKwkgICAgbXkgJHJlZnN5bSA9ICRyZWYtPmxvb2t1cF9zeW1ib2woJHN5bSwgJHNvbmFtZSwgMSk7CisJICAgIG15ICRpc25ldzsKKwkgICAgaWYgKGRlZmluZWQgJHJlZnN5bSkgeworCQkjIElmIHRoZSBzeW1ib2wgZXhpc3RzIGluIHRoZSAkcmVmIHN5bWJvbCBmaWxlLCBpdCBtaWdodAorCQkjIHN0aWxsIGJlIG5ldyBpZiAkcmVmc3ltIGlzIG5vdCBsZWdpdGltYXRlLgorCQkkaXNuZXcgPSBub3QgJHJlZnN5bS0+aXNfbGVnaXRpbWF0ZSgkc2VsZi0+Z2V0X2FyY2goKSk7CisJICAgIH0gZWxzZSB7CisJCSMgSWYgdGhlIHN5bWJvbCBkb2VzIG5vdCBleGlzdCBpbiB0aGUgJHJlZiBzeW1ib2wgZmlsZSwgaXQgZG9lcworCQkjIG5vdCBtZWFuIHRoYXQgaXQncyBuZXcuIEl0IG1pZ2h0IHN0aWxsIG1hdGNoIGEgcGF0dGVybiBpbiB0aGUKKwkJIyBzeW1ib2wgZmlsZS4gSG93ZXZlciwgZHVlIHRvIHBlcmZvcm1hbmNlIHJlYXNvbnMsIGZpcnN0IGNoZWNrCisJCSMgaWYgdGhlIHBhdHRlcm4gdGhhdCB0aGUgc3ltYm9sIG1hdGNoZXMgKGlmIGFueSkgZXhpc3RzIGluIHRoZQorCQkjIHJlZiBzeW1ib2wgZmlsZSBhcyB3ZWxsLgorCQkkaXNuZXcgPSBub3QgKAorCQkgICAgKCRzeW0tPmdldF9wYXR0ZXJuKCkgYW5kICRyZWYtPmxvb2t1cF9wYXR0ZXJuKCRzeW0tPmdldF9wYXR0ZXJuKCksICRzb25hbWUsIDEpKSBvcgorCQkgICAgJHJlZi0+ZmluZF9tYXRjaGluZ19wYXR0ZXJuKCRzeW0sICRzb25hbWUsIDEpCisJCSk7CisJICAgIH0KKwkgICAgcHVzaCBAcmVzLCB7IHN5bWJvbCA9PiAkc3ltLCBzb25hbWUgPT4gJHNvbmFtZSB9IGlmICRpc25ldzsKKwl9CisKKwkjIE5vdyBzY2FuIHBhdHRlcm5zCisJZm9yZWFjaCBteSAkcCAoZ3JlcCB7ICgkd2l0aF9vcHRpb25hbCB8fCAhICRfLT5pc19vcHRpb25hbCgpKQorCSAgICAgICAgICAgICAgICAgICAgICAmJiAkXy0+aXNfbGVnaXRpbWF0ZSgkc2VsZi0+Z2V0X2FyY2goKSkgfQorCSAgICAgICAgICAgICAgICAgICAgJHNlbGYtPmdldF9wYXR0ZXJucygkc29uYW1lKSkKKwl7CisJICAgIG15ICRyZWZwYXQgPSAkcmVmLT5sb29rdXBfcGF0dGVybigkcCwgJHNvbmFtZSwgMCk7CisJICAgICMgSWYgcmVmZXJlbmNlIHBhdHRlcm4gd2FzIG5vdCBmb3VuZCBvciBpdCBpcyBub3QgbGVnaXRpbWF0ZSwKKwkgICAgIyBjb25zaWRlcmluZyBjdXJyZW50IG9uZSBhcyBuZXcuCisJICAgIGlmIChub3QgZGVmaW5lZCAkcmVmcGF0IG9yCisJICAgICAgICBub3QgJHJlZnBhdC0+aXNfbGVnaXRpbWF0ZSgkc2VsZi0+Z2V0X2FyY2goKSkpCisJICAgIHsKKwkJcHVzaCBAcmVzLCB7IHN5bWJvbCA9PiAkcCAsIHNvbmFtZSA9PiAkc29uYW1lIH07CisJICAgIH0KKwl9CisgICAgfQorICAgIHJldHVybiBAcmVzOworfQorCitzdWIgZ2V0X2xvc3Rfc3ltYm9scyB7CisgICAgbXkgKCRzZWxmLCAkcmVmLCAlb3B0cykgPSBAXzsKKyAgICByZXR1cm4gJHJlZi0+Z2V0X25ld19zeW1ib2xzKCRzZWxmLCAlb3B0cyk7Cit9CisKKworc3ViIGdldF9uZXdfbGlicyB7CisgICAgbXkgKCRzZWxmLCAkcmVmKSA9IEBfOworICAgIG15IEByZXM7CisgICAgZm9yZWFjaCBteSAkc29uYW1lICgkc2VsZi0+Z2V0X3NvbmFtZXMoKSkgeworCXB1c2ggQHJlcywgJHNvbmFtZSBpZiBub3QgJHJlZi0+Z2V0X29iamVjdCgkc29uYW1lKTsKKyAgICB9CisgICAgcmV0dXJuIEByZXM7Cit9CisKK3N1YiBnZXRfbG9zdF9saWJzIHsKKyAgICBteSAoJHNlbGYsICRyZWYpID0gQF87CisgICAgcmV0dXJuICRyZWYtPmdldF9uZXdfbGlicygkc2VsZik7Cit9CisKKzE7CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvRHBrZy9Tb3VyY2UvQXJjaGl2ZS5wbSBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9EcGtnL1NvdXJjZS9BcmNoaXZlLnBtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjVlMDQwY2EKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvRHBrZy9Tb3VyY2UvQXJjaGl2ZS5wbQpAQCAtMCwwICsxLDE2MSBAQAorIyBDb3B5cmlnaHQgwqkgMjAwOCBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisjCisjIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisjIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisjIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisjIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisjCisjIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisjIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisjCisjIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisjIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorCitwYWNrYWdlIERwa2c6OlNvdXJjZTo6QXJjaGl2ZTsKKwordXNlIHN0cmljdDsKK3VzZSB3YXJuaW5nczsKKworb3VyICRWRVJTSU9OID0gIjAuMDEiOworCit1c2UgRHBrZzo6U291cmNlOjpGdW5jdGlvbnMgcXcoZXJhc2VkaXIgZml4cGVybXMpOwordXNlIERwa2c6OkdldHRleHQ7Cit1c2UgRHBrZzo6SVBDOwordXNlIERwa2c6OkVycm9ySGFuZGxpbmc7CisKK3VzZSBQT1NJWDsKK3VzZSBGaWxlOjpUZW1wIHF3KHRlbXBkaXIpOwordXNlIEZpbGU6OkJhc2VuYW1lIHF3KGJhc2VuYW1lKTsKK3VzZSBGaWxlOjpTcGVjOwordXNlIEN3ZDsKKwordXNlIGJhc2UgJ0Rwa2c6OkNvbXByZXNzaW9uOjpGaWxlSGFuZGxlJzsKKworc3ViIGNyZWF0ZSB7CisgICAgbXkgKCRzZWxmLCAlb3B0cykgPSBAXzsKKyAgICAkb3B0c3sib3B0aW9ucyJ9IHx8PSBbXTsKKyAgICBteSAlc3Bhd25fb3B0czsKKyAgICAjIFBvc3NpYmx5IHJ1biB0YXIgZnJvbSBhbm90aGVyIGRpcmVjdG9yeQorICAgIGlmICgkb3B0c3siY2hkaXIifSkgeworICAgICAgICAkc3Bhd25fb3B0c3siY2hkaXIifSA9ICRvcHRzeyJjaGRpciJ9OworICAgICAgICAqJHNlbGYtPnsiY2hkaXIifSA9ICRvcHRzeyJjaGRpciJ9OworICAgIH0KKyAgICAjIFJlZGlyZWN0IGlucHV0L291dHB1dCBhcHByb3ByaWF0ZWx5CisgICAgJHNlbGYtPmVuc3VyZV9vcGVuKCJ3Iik7CisgICAgJHNwYXduX29wdHN7InRvX2hhbmRsZSJ9ID0gJHNlbGYtPmdldF9maWxlaGFuZGxlKCk7CisgICAgJHNwYXduX29wdHN7ImZyb21fcGlwZSJ9ID0gXCokc2VsZi0+eyd0YXJfaW5wdXQnfTsKKyAgICAjIENhbGwgdGFyIGNyZWF0aW9uIHByb2Nlc3MKKyAgICAkc3Bhd25fb3B0c3siZGVsZXRlX2VudiJ9ID0gWyAiVEFSX09QVElPTlMiIF07CisgICAgJHNwYXduX29wdHN7J2V4ZWMnfSA9IFsgJ3RhcicsICctLW51bGwnLCAnLVQnLCAnLScsICctLW51bWVyaWMtb3duZXInLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICctLW93bmVyJywgJzAnLCAnLS1ncm91cCcsICcwJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBAeyRvcHRzeyJvcHRpb25zIn19LCAnLWNmJywgJy0nIF07CisgICAgKiRzZWxmLT57InBpZCJ9ID0gc3Bhd24oJXNwYXduX29wdHMpOworICAgICokc2VsZi0+eyJjd2QifSA9IGdldGN3ZCgpOworfQorCitzdWIgX2FkZF9lbnRyeSB7CisgICAgbXkgKCRzZWxmLCAkZmlsZSkgPSBAXzsKKyAgICBteSAkY3dkID0gKiRzZWxmLT57J2N3ZCd9OworICAgIGludGVybmVycigiY2FsbCBjcmVhdGUoKSBmaXJzdCIpIHVubGVzcyAqJHNlbGYtPnsidGFyX2lucHV0In07CisgICAgJGZpbGUgPSAkMiBpZiAoJGZpbGUgPX4gL15cUSRjd2RcRVwvKC4rKSQvKTsgIyBSZWxhdGl2ZSBuYW1lcworICAgIHByaW50KHsgKiRzZWxmLT57J3Rhcl9pbnB1dCd9IH0gIiRmaWxlXDAiKSB8fAorCSAgICBzeXNlcnIoX2coIndyaXRlIG9uIHRhciBpbnB1dCIpKTsKK30KKworc3ViIGFkZF9maWxlIHsKKyAgICBteSAoJHNlbGYsICRmaWxlKSA9IEBfOworICAgIG15ICR0ZXN0ZmlsZSA9ICRmaWxlOworICAgIGlmICgqJHNlbGYtPnsiY2hkaXIifSkgeworICAgICAgICAkdGVzdGZpbGUgPSBGaWxlOjpTcGVjLT5jYXRmaWxlKCokc2VsZi0+eyJjaGRpciJ9LCAkZmlsZSk7CisgICAgfQorICAgIGludGVybmVycigiYWRkX2ZpbGUoKSBkb2Vzbid0IGhhbmRsZSBkaXJlY3RvcmllcyIpIGlmIG5vdCAtbCAkdGVzdGZpbGUgYW5kIC1kIF87CisgICAgJHNlbGYtPl9hZGRfZW50cnkoJGZpbGUpOworfQorCitzdWIgYWRkX2RpcmVjdG9yeSB7CisgICAgbXkgKCRzZWxmLCAkZmlsZSkgPSBAXzsKKyAgICBteSAkdGVzdGZpbGUgPSAkZmlsZTsKKyAgICBpZiAoKiRzZWxmLT57ImNoZGlyIn0pIHsKKyAgICAgICAgJHRlc3RmaWxlID0gRmlsZTo6U3BlYy0+Y2F0ZGlyKCokc2VsZi0+eyJjaGRpciJ9LCAkZmlsZSk7CisgICAgfQorICAgIGludGVybmVycigiYWRkX2RpcmVjdG9yeSgpIG9ubHkgaGFuZGxlcyBkaXJlY3RvcmllcyIpIHVubGVzcyBub3QgLWwgJHRlc3RmaWxlIGFuZCAtZCBfOworICAgICRzZWxmLT5fYWRkX2VudHJ5KCRmaWxlKTsKK30KKworc3ViIGZpbmlzaCB7CisgICAgbXkgKCRzZWxmKSA9IEBfOworICAgIGNsb3NlKCokc2VsZi0+eyd0YXJfaW5wdXQnfSkgb3Igc3lzZXJyKF9nKCJjbG9zZSBvbiB0YXIgaW5wdXQiKSk7CisgICAgd2FpdF9jaGlsZCgqJHNlbGYtPnsncGlkJ30sIGNtZGxpbmUgPT4gJ3RhciAtY2YgLScpOworICAgIGRlbGV0ZSAqJHNlbGYtPnsncGlkJ307CisgICAgZGVsZXRlICokc2VsZi0+eyd0YXJfaW5wdXQnfTsKKyAgICBkZWxldGUgKiRzZWxmLT57J2N3ZCd9OworICAgIGRlbGV0ZSAqJHNlbGYtPnsnY2hkaXInfTsKKyAgICAkc2VsZi0+Y2xvc2UoKTsKK30KKworc3ViIGV4dHJhY3QgeworICAgIG15ICgkc2VsZiwgJGRlc3QsICVvcHRzKSA9IEBfOworICAgICRvcHRzeyJvcHRpb25zIn0gfHw9IFtdOworICAgICRvcHRzeyJpbl9wbGFjZSJ9IHx8PSAwOworICAgICRvcHRzeyJub19maXhwZXJtcyJ9IHx8PSAwOworICAgIG15ICVzcGF3bl9vcHRzID0gKHdhaXRfY2hpbGQgPT4gMSk7CisKKyAgICAjIFByZXBhcmUgZGVzdGluYXRpb24KKyAgICBteSAkdG1wOworICAgIGlmICgkb3B0c3siaW5fcGxhY2UifSkgeworICAgICAgICAkc3Bhd25fb3B0c3siY2hkaXIifSA9ICRkZXN0OworICAgICAgICAkdG1wID0gJGRlc3Q7ICMgU28gdGhhdCBmaXhwZXJtcyBjYWxsIHdvcmtzCisgICAgfSBlbHNlIHsKKyAgICAgICAgbXkgJHRlbXBsYXRlID0gYmFzZW5hbWUoJHNlbGYtPmdldF9maWxlbmFtZSgpKSAuICAiLnRtcC1leHRyYWN0LlhYWFhYIjsKKyAgICAgICAgdW5sZXNzICgtZSAkZGVzdCkgeworICAgICAgICAgICAgIyBLbHVkZ2Ugc28gdGhhdCByZWFscGF0aCB3b3JrcworICAgICAgICAgICAgbWtkaXIoJGRlc3QpIHx8IHN5c2VycihfZygiY2Fubm90IGNyZWF0ZSBkaXJlY3RvcnkgJXMiKSwgJGRlc3QpOworICAgICAgICB9CisgICAgICAgICR0bXAgPSB0ZW1wZGlyKCR0ZW1wbGF0ZSwgRElSID0+IEN3ZDo6cmVhbHBhdGgoIiRkZXN0Ly4uIiksIENMRUFOVVAgPT4gMSk7CisgICAgICAgICRzcGF3bl9vcHRzeyJjaGRpciJ9ID0gJHRtcDsKKyAgICB9CisKKyAgICAjIFByZXBhcmUgc3R1ZmYgdGhhdCBoYW5kbGVzIHRoZSBpbnB1dCBvZiB0YXIKKyAgICAkc2VsZi0+ZW5zdXJlX29wZW4oInIiKTsKKyAgICAkc3Bhd25fb3B0c3siZnJvbV9oYW5kbGUifSA9ICRzZWxmLT5nZXRfZmlsZWhhbmRsZSgpOworCisgICAgIyBDYWxsIHRhciBleHRyYWN0aW9uIHByb2Nlc3MKKyAgICAkc3Bhd25fb3B0c3siZGVsZXRlX2VudiJ9ID0gWyAiVEFSX09QVElPTlMiIF07CisgICAgJHNwYXduX29wdHN7J2V4ZWMnfSA9IFsgJ3RhcicsICctLW5vLXNhbWUtb3duZXInLCAnLS1uby1zYW1lLXBlcm1pc3Npb25zJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBAeyRvcHRzeyJvcHRpb25zIn19LCAnLXhmJywgJy0nIF07CisgICAgc3Bhd24oJXNwYXduX29wdHMpOworICAgICRzZWxmLT5jbG9zZSgpOworCisgICAgIyBGaXggcGVybWlzc2lvbnMgb24gZXh0cmFjdGVkIGZpbGVzIGJlY2F1c2UgdGFyIGluc2lzdHMgb24gYXBwbHlpbmcKKyAgICAjIG91ciB1bWFzayBfdG8gdGhlIG9yaWdpbmFsIHBlcm1pc3Npb25zXyByYXRoZXIgdGhhbiBtb3N0bHktaWdub3JpbmcKKyAgICAjIHRoZSBvcmlnaW5hbCBwZXJtaXNzaW9ucy4KKyAgICAjIFdlIHN0aWxsIG5lZWQgLS1uby1zYW1lLXBlcm1pc3Npb25zIGJlY2F1c2Ugb3RoZXJ3aXNlIHRhciBtaWdodAorICAgICMgZXh0cmFjdCBkaXJlY3Rvcnkgc2V0Z2lkICh3aGljaCB3ZSB3YW50IGluaGVyaXRlZCwgbm90CisgICAgIyBleHRyYWN0ZWQpOyB3ZSBuZWVkIC0tbm8tc2FtZS1vd25lciBiZWNhdXNlIHB1dHRpbmcgdGhlIG93bmVyCisgICAgIyBiYWNrIGlzIHRlZGlvdXMgLSBpbiBwYXJ0aWN1bGFyLCBjb3JyZWN0IGdyb3VwIG93bmVyc2hpcCB3b3VsZAorICAgICMgaGF2ZSB0byBiZSBjYWxjdWxhdGVkIHVzaW5nIG1vdW50IG9wdGlvbnMgYW5kIG90aGVyIG1hZG5lc3MuCisgICAgZml4cGVybXMoJHRtcCkgdW5sZXNzICRvcHRzeyJub19maXhwZXJtcyJ9OworCisgICAgIyBTdG9wIGhlcmUgaWYgd2UgZXh0cmFjdGVkIGluLXBsYWNlIGFzIHRoZXJlJ3Mgbm90aGluZyB0byBtb3ZlIGFyb3VuZAorICAgIHJldHVybiBpZiAkb3B0c3siaW5fcGxhY2UifTsKKworICAgICMgUmVuYW1lIGV4dHJhY3RlZCBkaXJlY3RvcnkKKyAgICBvcGVuZGlyKEQsICR0bXApIHx8IHN5c2VycihfZygiY2Fubm90IG9wZW5kaXIgJXMiKSwgJHRtcCk7CisgICAgbXkgQGVudHJpZXMgPSBncmVwIHsgJF8gbmUgIi4iICYmICRfIG5lICIuLiIgfSByZWFkZGlyKEQpOworICAgIGNsb3NlZGlyKEQpOworICAgIG15ICRkb25lID0gMDsKKyAgICBlcmFzZWRpcigkZGVzdCk7CisgICAgaWYgKHNjYWxhcihAZW50cmllcykgPT0gMSAmJiAhIC1sICIkdG1wLyRlbnRyaWVzWzBdIiAmJiAtZCBfKSB7CisJcmVuYW1lKCIkdG1wLyRlbnRyaWVzWzBdIiwgJGRlc3QpIHx8CisJCXN5c2VycihfZygiVW5hYmxlIHRvIHJlbmFtZSAlcyB0byAlcyIpLAorCQkgICAgICAgIiR0bXAvJGVudHJpZXNbMF0iLCAkZGVzdCk7CisgICAgfSBlbHNlIHsKKwlyZW5hbWUoJHRtcCwgJGRlc3QpIHx8CisJCXN5c2VycihfZygiVW5hYmxlIHRvIHJlbmFtZSAlcyB0byAlcyIpLCAkdG1wLCAkZGVzdCk7CisgICAgfQorICAgIGVyYXNlZGlyKCR0bXApOworfQorCisxOwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL0Rwa2cvU291cmNlL0Z1bmN0aW9ucy5wbSBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9EcGtnL1NvdXJjZS9GdW5jdGlvbnMucG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTU0MjQyOQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9EcGtnL1NvdXJjZS9GdW5jdGlvbnMucG0KQEAgLTAsMCArMSwxMjAgQEAKKyMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyMKKyMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisjIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisjIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyMKKyMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisKK3BhY2thZ2UgRHBrZzo6U291cmNlOjpGdW5jdGlvbnM7CisKK3VzZSBzdHJpY3Q7Cit1c2Ugd2FybmluZ3M7CisKK291ciAkVkVSU0lPTiA9ICIwLjAxIjsKKwordXNlIGJhc2UgcXcoRXhwb3J0ZXIpOworb3VyIEBFWFBPUlRfT0sgPSBxdyhlcmFzZWRpciBmaXhwZXJtcyBmc190aW1lIGlzX2JpbmFyeSk7CisKK3VzZSBEcGtnOjpFcnJvckhhbmRsaW5nOwordXNlIERwa2c6OkdldHRleHQ7Cit1c2UgRHBrZzo6SVBDOworCit1c2UgUE9TSVg7CisKK3N1YiBlcmFzZWRpciB7CisgICAgbXkgKCRkaXIpID0gQF87CisgICAgaWYgKG5vdCBsc3RhdCgkZGlyKSkgeworICAgICAgICByZXR1cm4gaWYgJCEgPT0gRU5PRU5UOworICAgICAgICBzeXNlcnIoX2coImNhbm5vdCBzdGF0IGRpcmVjdG9yeSAlcyAoYmVmb3JlIHJlbW92YWwpIiksICRkaXIpOworICAgIH0KKyAgICBzeXN0ZW0gJ3JtJywnLXJmJywnLS0nLCRkaXI7CisgICAgc3VicHJvY2Vycigicm0gLXJmICRkaXIiKSBpZiAkPzsKKyAgICBpZiAobm90IHN0YXQoJGRpcikpIHsKKyAgICAgICAgcmV0dXJuIGlmICQhID09IEVOT0VOVDsKKyAgICAgICAgc3lzZXJyKF9nKCJ1bmFibGUgdG8gY2hlY2sgZm9yIHJlbW92YWwgb2YgZGlyIGAlcyciKSwgJGRpcik7CisgICAgfQorICAgIGVycm9yKF9nKCJybSAtcmYgZmFpbGVkIHRvIHJlbW92ZSBgJXMnIiksICRkaXIpOworfQorCitzdWIgZml4cGVybXMgeworICAgIG15ICgkZGlyKSA9IEBfOworICAgIG15ICgkbW9kZSwgJG1vZGVzX3NldCwgJGksICRqKTsKKyAgICAjIFVuZm9ydHVuYXRlbHkgdGFyIGluc2lzdHMgb24gYXBwbHlpbmcgb3VyIHVtYXNrIF90byB0aGUgb3JpZ2luYWwKKyAgICAjIHBlcm1pc3Npb25zXyByYXRoZXIgdGhhbiBtb3N0bHktaWdub3JpbmcgdGhlIG9yaWdpbmFsCisgICAgIyBwZXJtaXNzaW9ucy4gIFdlIGZpeCBpdCB1cCB3aXRoIGNobW9kIC1SICh3aGljaCBzYXZlcyB1cyBzb21lCisgICAgIyB3b3JrKSBidXQgd2UgaGF2ZSB0byBjb25zdHJ1Y3QgYSB1Ky8tIHN0cmluZyB3aGljaCBpcyBhIGJpdAorICAgICMgb2YgYSBwYWxhdmVyLiAgKE51bWVyaWMgZG9lc24ndCB3b3JrIGJlY2F1c2Ugd2UgbmVlZCBbdWdvXStYCisgICAgIyBhbmQgW3Vnb109PHN0dWZmPiBkb2Vzbid0IHdvcmsgYmVjYXVzZSB0aGF0IHVuc2V0cyBzZ2lkIG9uIGRpcnMuKQorICAgICRtb2RlID0gMDc3NyAmIH51bWFzazsKKyAgICBmb3IgKCRpID0gMDsgJGkgPCA5OyAkaSArPSAzKSB7CisgICAgICAgICRtb2Rlc19zZXQgLj0gJywnIGlmICRpOworICAgICAgICAkbW9kZXNfc2V0IC49IHF3KHUgZyBvKVskaS8zXTsKKyAgICAgICAgZm9yICgkaiA9IDA7ICRqIDwgMzsgJGorKykgeworICAgICAgICAgICAgJG1vZGVzX3NldCAuPSAkbW9kZSAmICgwNDAwID4+ICgkaSskaikpID8gJysnIDogJy0nOworICAgICAgICAgICAgJG1vZGVzX3NldCAuPSBxdyhyIHcgWClbJGpdOworICAgICAgICB9CisgICAgfQorICAgIHN5c3RlbSgnY2htb2QnLCAnLVInLCAnLS0nLCAkbW9kZXNfc2V0LCAkZGlyKTsKKyAgICBzdWJwcm9jZXJyKCJjaG1vZCAtUiAtLSAkbW9kZXNfc2V0ICRkaXIiKSBpZiAkPzsKK30KKworIyBUb3VjaCB0aGUgZmlsZSBhbmQgcmVhZCB0aGUgcmVzdWx0aW5nIG10aW1lLgorIworIyBJZiB0aGUgZmlsZSBkb2Vzbid0IGV4aXN0LCBjcmVhdGUgaXQsIHJlYWQgdGhlIG10aW1lIGFuZCB1bmxpbmsgaXQuCisjCisjIFVzZSB0aGlzIGluc3RlYWQgb2YgdGltZSgpIHdoZW4gdGhlIHRpbWVzdGFtcCBpcyBnb2luZyB0byBiZQorIyB1c2VkIHRvIHNldCBmaWxlIHRpbWVzdGFtcHMuIFRoaXMgYXZvaWRzIGNvbmZ1c2lvbiB3aGVuIGFuCisjIE5GUyBzZXJ2ZXIgYW5kIE5GUyBjbGllbnQgZGlzYWdyZWUgYWJvdXQgd2hhdCB0aW1lIGl0IGlzLgorc3ViIGZzX3RpbWUoJCkgeworICAgIG15ICgkZmlsZSkgPSBAXzsKKyAgICBteSAkaXNfdGVtcCA9IDA7CisgICAgaWYgKG5vdCAtZSAkZmlsZSkgeworCW9wZW4oVEVNUCwgIj4iLCAkZmlsZSkgb3Igc3lzZXJyKF9nKCJjYW5ub3Qgd3JpdGUgJXMiKSk7CisJY2xvc2UoVEVNUCk7CisJJGlzX3RlbXAgPSAxOworICAgIH0gZWxzZSB7CisJdXRpbWUodW5kZWYsIHVuZGVmLCAkZmlsZSkgb3IKKwkgICAgc3lzZXJyKF9nKCJjYW5ub3QgY2hhbmdlIHRpbWVzdGFtcCBmb3IgJXMiKSwgJGZpbGUpOworICAgIH0KKyAgICBzdGF0KCRmaWxlKSBvciBzeXNlcnIoX2coImNhbm5vdCByZWFkIHRpbWVzdGFtcCBmcm9tICVzIiksICRmaWxlKTsKKyAgICBteSAkbXRpbWUgPSAoc3RhdChfKSlbOV07CisgICAgdW5saW5rKCRmaWxlKSBpZiAkaXNfdGVtcDsKKyAgICByZXR1cm4gJG10aW1lOworfQorCitzdWIgaXNfYmluYXJ5KCQpIHsKKyAgICBteSAoJGZpbGUpID0gQF87CisKKyAgICAjIFRPRE86IG1pZ2h0IHdhbnQgdG8gcmVpbXBsZW1lbnQgd2hhdCBkaWZmIGRvZXMsIGFrYSBjaGVja2luZyBpZiB0aGUKKyAgICAjIGZpbGUgY29udGFpbnMgXDAgaW4gdGhlIGZpcnN0IDRLYiBvZiBkYXRhCisKKyAgICAjIFVzZSBkaWZmIHRvIGNoZWNrIGlmIGl0J3MgYSBiaW5hcnkgZmlsZQorICAgIG15ICRkaWZmZ2VuOworICAgIG15ICRkaWZmX3BpZCA9IHNwYXduKAorICAgICAgICAnZXhlYycgPT4gWyAnZGlmZicsICctdScsICctLScsICcvZGV2L251bGwnLCAkZmlsZSBdLAorICAgICAgICAnZW52JyA9PiB7IExDX0FMTCA9PiAnQycsIExBTkcgPT4gJ0MnLCBUWiA9PiAnVVRDMCcgfSwKKyAgICAgICAgJ3RvX3BpcGUnID0+IFwkZGlmZmdlbgorICAgICk7CisgICAgbXkgJHJlc3VsdCA9IDA7CisgICAgd2hpbGUgKDwkZGlmZmdlbj4pIHsKKyAgICAgICAgaWYgKG0vXig/OmJpbmFyeXxbXi0rXEAgXS4qXGJkaWZmZXJcYikvaSkgeworICAgICAgICAgICAgJHJlc3VsdCA9IDE7CisgICAgICAgICAgICBsYXN0OworICAgICAgICB9IGVsc2lmIChtL15bLStcQCBdLykgeworICAgICAgICAgICAgJHJlc3VsdCA9IDA7CisgICAgICAgICAgICBsYXN0OworICAgICAgICB9CisgICAgfQorICAgIGNsb3NlKCRkaWZmZ2VuKSBvciBzeXNlcnIoImNsb3NlIG9uIGRpZmYgcGlwZSIpOworICAgIHdhaXRfY2hpbGQoJGRpZmZfcGlkLCBub2NoZWNrID0+IDEsIGNtZGxpbmUgPT4gImRpZmYgLXUgLS0gL2Rldi9udWxsICRmaWxlIik7CisgICAgcmV0dXJuICRyZXN1bHQ7Cit9CisKKyMgdmltOiBzZXQgZXQgc3c9NCB0cz04CisxOwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG0gYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45NGU2YjhmCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG0KQEAgLTAsMCArMSw1NjUgQEAKKyMgQ29weXJpZ2h0IMKpIDIwMDgtMjAxMSBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisjCisjIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisjIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisjIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisjIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisjCisjIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisjIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisjCisjIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisjIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorCitwYWNrYWdlIERwa2c6OlNvdXJjZTo6UGFja2FnZTsKKworPWVuY29kaW5nIHV0ZjgKKworPWhlYWQxIE5BTUUKKworRHBrZzo6U291cmNlOjpQYWNrYWdlIC0gbWFuaXB1bGF0ZSBEZWJpYW4gc291cmNlIHBhY2thZ2VzCisKKz1oZWFkMSBERVNDUklQVElPTgorCitUaGlzIG1vZHVsZSBwcm92aWRlcyBhbiBvYmplY3QgdGhhdCBjYW4gbWFuaXB1bGF0ZSBEZWJpYW4gc291cmNlCitwYWNrYWdlcy4gV2hpbGUgaXQgc3VwcG9ydHMgYm90aCB0aGUgZXh0cmFjdGlvbiBhbmQgdGhlIGNyZWF0aW9uCitvZiBzb3VyY2UgcGFja2FnZXMsIHRoZSBvbmx5IEFQSSB0aGF0IGlzIG9mZmljaWFsbHkgc3VwcG9ydGVkCitpcyB0aGUgb25lIHRoYXQgc3VwcG9ydHMgdGhlIGV4dHJhY3Rpb24gb2YgdGhlIHNvdXJjZSBwYWNrYWdlLgorCis9aGVhZDEgRlVOQ1RJT05TCisKKz1jdXQKKwordXNlIHN0cmljdDsKK3VzZSB3YXJuaW5nczsKKworb3VyICRWRVJTSU9OID0gIjEuMCI7CisKK3VzZSBEcGtnOjpHZXR0ZXh0OwordXNlIERwa2c6OkVycm9ySGFuZGxpbmc7Cit1c2UgRHBrZzo6Q29udHJvbDsKK3VzZSBEcGtnOjpDaGVja3N1bXM7Cit1c2UgRHBrZzo6VmVyc2lvbjsKK3VzZSBEcGtnOjpDb21wcmVzc2lvbjsKK3VzZSBEcGtnOjpFeGl0OwordXNlIERwa2c6OlBhdGggcXcoY2hlY2tfZmlsZXNfYXJlX3RoZV9zYW1lKTsKK3VzZSBEcGtnOjpJUEM7Cit1c2UgRHBrZzo6VmVuZG9yIHF3KHJ1bl92ZW5kb3JfaG9vayk7CisKK3VzZSBQT1NJWDsKK3VzZSBGaWxlOjpCYXNlbmFtZTsKKworIyBQdWJsaWMgdmFyaWFibGVzCitvdXIgJGRpZmZfaWdub3JlX2RlZmF1bHRfcmVnZXhwID0gJworIyBJZ25vcmUgZ2VuZXJhbCBiYWNrdXAgZmlsZXMKKyg/Ol58LykuKn4kfAorIyBJZ25vcmUgZW1hY3MgcmVjb3ZlcnkgZmlsZXMKKyg/Ol58LylcLiMuKiR8CisjIElnbm9yZSB2aSBzd2FwIGZpbGVzCisoPzpefC8pXC4uKlwuc3cuJHwKKyMgSWdub3JlIGJhei1zdHlsZSBqdW5rIGZpbGVzIG9yIGRpcmVjdG9yaWVzCisoPzpefC8pLCwuKig/OiR8Ly4qJCl8CisjIEZpbGUtbmFtZXMgdGhhdCBzaG91bGQgYmUgaWdub3JlZCAobmV2ZXIgZGlyZWN0b3JpZXMpCisoPzpefC8pKD86REVBREpPRXxcLmFyY2gtaW52ZW50b3J5fFwuKD86YnpyfGN2c3xoZ3xnaXQpaWdub3JlKSR8CisjIEZpbGUgb3IgZGlyZWN0b3J5IG5hbWVzIHRoYXQgc2hvdWxkIGJlIGlnbm9yZWQKKyg/Ol58LykoPzpDVlN8UkNTfFwuZGVwc3xce2FyY2hcfXxcLmFyY2gtaWRzfFwuc3ZufAorXC5oZyg/OnRhZ3N8c2lncyk/fF9kYXJjc3xcLmdpdCg/OmF0dHJpYnV0ZXN8bW9kdWxlcyk/fAorXC5zaGVsZnxfTVROfFwuYmV8XC5ienIoPzpcLmJhY2t1cHx0YWdzKT8pKD86JHwvLiokKQorJzsKKyMgVGFrZSBvdXQgY29tbWVudHMgYW5kIG5ld2xpbmVzCiskZGlmZl9pZ25vcmVfZGVmYXVsdF9yZWdleHAgPX4gcy9eIy4qJC8vbWc7CiskZGlmZl9pZ25vcmVfZGVmYXVsdF9yZWdleHAgPX4gcy9cbi8vc2c7CitubyB3YXJuaW5ncyAncXcnOworb3VyIEB0YXJfaWdub3JlX2RlZmF1bHRfcGF0dGVybiA9IHF3KAorKi5hCisqLmxhCisqLm8KKyouc28KKy4qLnN3PworKi8qfgorLCwqCisuWyN+XSoKKy5hcmNoLWlkcworLmFyY2gtaW52ZW50b3J5CisuYmUKKy5ienIKKy5ienIuYmFja3VwCisuYnpyLnRhZ3MKKy5ienJpZ25vcmUKKy5jdnNpZ25vcmUKKy5kZXBzCisuZ2l0CisuZ2l0YXR0cmlidXRlcworLmdpdGlnbm9yZQorLmdpdG1vZHVsZXMKKy5oZworLmhnaWdub3JlCisuaGdzaWdzCisuaGd0YWdzCisuc2hlbGYKKy5zdm4KK0NWUworREVBREpPRQorUkNTCitfTVROCitfZGFyY3MKK3thcmNofQorKTsKKworPW92ZXIgNAorCis9aXRlbSAkcCA9IERwa2c6OlNvdXJjZTo6UGFja2FnZS0+bmV3KGZpbGVuYW1lID0+ICRkc2NmaWxlLCBvcHRpb25zID0+IHt9KQorCitDcmVhdGVzIGEgbmV3IG9iamVjdCBjb3JyZXNwb25kaW5nIHRvIHRoZSBzb3VyY2UgcGFja2FnZSBkZXNjcmliZWQKK2J5IHRoZSBmaWxlICRkc2NmaWxlLgorCitUaGUgb3B0aW9ucyBoYXNoIHN1cHBvcnRzIHRoZSBmb2xsb3dpbmcgb3B0aW9uczoKKworPW92ZXIgOAorCis9aXRlbSBza2lwX2RlYmlhbml6YXRpb24KKworSWYgc2V0IHRvIDEsIGRvIG5vdCBhcHBseSBEZWJpYW4gY2hhbmdlcyBvbiB0aGUgZXh0cmFjdGVkIHNvdXJjZSBwYWNrYWdlLgorCis9aXRlbSBza2lwX3BhdGNoZXMKKworSWYgc2V0IHRvIDEsIGRvIG5vdCBhcHBseSBEZWJpYW4tc3BlY2lmaWMgcGF0Y2hlcy4gVGhpcyBvcHRpb25zIGlzCitzcGVjaWZpYyBmb3Igc291cmNlIHBhY2thZ2VzIHVzaW5nIGZvcm1hdCAiMi4wIiBhbmQgIjMuMCAocXVpbHQpIi4KKworPWl0ZW0gcmVxdWlyZV92YWxpZF9zaWduYXR1cmUKKworSWYgc2V0IHRvIDEsIHRoZSBjaGVja19zaWduYXR1cmUoKSBtZXRob2Qgd2lsbCBiZSBzdHJpY3RlciBhbmQgd2lsbCBlcnJvcgorb3V0IGlmIHRoZSBzaWduYXR1cmUgY2FuJ3QgYmUgdmVyaWZpZWQuCisKKz1pdGVtIGNvcHlfb3JpZ190YXJiYWxscworCitJZiBzZXQgdG8gMSwgdGhlIGV4dHJhY3Rpb24gd2lsbCBjb3B5IHRoZSB1cHN0cmVhbSB0YXJiYWxscyBuZXh0IHRoZQordGFyZ2V0IGRpcmVjdG9yeS4gVGhpcyBpcyB1c2VmdWwgaWYgeW91IHdhbnQgdG8gYmUgYWJsZSB0byByZWJ1aWxkIHRoZQorc291cmNlIHBhY2thZ2UgYWZ0ZXIgaXRzIGV4dHJhY3Rpb24uCisKKz1iYWNrCisKKz1jdXQKKworIyBPYmplY3QgbWV0aG9kcworc3ViIG5ldyB7CisgICAgbXkgKCR0aGlzLCAlYXJncykgPSBAXzsKKyAgICBteSAkY2xhc3MgPSByZWYoJHRoaXMpIHx8ICR0aGlzOworICAgIG15ICRzZWxmID0geworICAgICAgICAnZmllbGRzJyA9PiBEcGtnOjpDb250cm9sLT5uZXcodHlwZSA9PiBDVFJMX1BLR19TUkMpLAorICAgICAgICAnb3B0aW9ucycgPT4ge30sCisJJ2NoZWNrc3VtcycgPT4gRHBrZzo6Q2hlY2tzdW1zLT5uZXcoKSwKKyAgICB9OworICAgIGJsZXNzICRzZWxmLCAkY2xhc3M7CisgICAgaWYgKGV4aXN0cyAkYXJnc3snb3B0aW9ucyd9KSB7CisgICAgICAgICRzZWxmLT57J29wdGlvbnMnfSA9ICRhcmdzeydvcHRpb25zJ307CisgICAgfQorICAgIGlmIChleGlzdHMgJGFyZ3N7ImZpbGVuYW1lIn0pIHsKKyAgICAgICAgJHNlbGYtPmluaXRpYWxpemUoJGFyZ3N7ImZpbGVuYW1lIn0pOworICAgICAgICAkc2VsZi0+aW5pdF9vcHRpb25zKCk7CisgICAgfQorICAgIHJldHVybiAkc2VsZjsKK30KKworc3ViIGluaXRfb3B0aW9ucyB7CisgICAgbXkgKCRzZWxmKSA9IEBfOworICAgICMgVXNlIGZ1bGwgaWdub3JlIGxpc3QgYnkgZGVmYXVsdAorICAgICMgbm90ZTogdGhpcyBmdW5jdGlvbiBpcyBub3QgY2FsbGVkIGJ5IFYxIHBhY2thZ2VzCisgICAgJHNlbGYtPnsnb3B0aW9ucyd9eydkaWZmX2lnbm9yZV9yZWdleHAnfSB8fD0gJGRpZmZfaWdub3JlX2RlZmF1bHRfcmVnZXhwOworICAgICRzZWxmLT57J29wdGlvbnMnfXsnZGlmZl9pZ25vcmVfcmVnZXhwJ30gLj0gJ3woPzpefC8pZGViaWFuL3NvdXJjZS9sb2NhbC0uKiQnOworICAgIGlmIChkZWZpbmVkICRzZWxmLT57J29wdGlvbnMnfXsndGFyX2lnbm9yZSd9KSB7CisgICAgICAgICRzZWxmLT57J29wdGlvbnMnfXsndGFyX2lnbm9yZSd9ID0gWyBAdGFyX2lnbm9yZV9kZWZhdWx0X3BhdHRlcm4gXQorICAgICAgICAgICAgdW5sZXNzIEB7JHNlbGYtPnsnb3B0aW9ucyd9eyd0YXJfaWdub3JlJ319OworICAgIH0gZWxzZSB7CisgICAgICAgICRzZWxmLT57J29wdGlvbnMnfXsndGFyX2lnbm9yZSd9ID0gWyBAdGFyX2lnbm9yZV9kZWZhdWx0X3BhdHRlcm4gXTsKKyAgICB9CisgICAgcHVzaCBAeyRzZWxmLT57J29wdGlvbnMnfXsndGFyX2lnbm9yZSd9fSwgImRlYmlhbi9zb3VyY2UvbG9jYWwtb3B0aW9ucyIsCisgICAgICAgICAiZGViaWFuL3NvdXJjZS9sb2NhbC1wYXRjaC1oZWFkZXIiOworICAgICMgU2tpcCBkZWJpYW5pemF0aW9uIHdoaWxlIHNwZWNpZmljIHRvIHNvbWUgZm9ybWF0cyBoYXMgYW4gaW1wYWN0CisgICAgIyBvbiBjb2RlIGNvbW1vbiB0byBhbGwgZm9ybWF0cworICAgICRzZWxmLT57J29wdGlvbnMnfXsnc2tpcF9kZWJpYW5pemF0aW9uJ30gfHw9IDA7Cit9CisKK3N1YiBpbml0aWFsaXplIHsKKyAgICBteSAoJHNlbGYsICRmaWxlbmFtZSkgPSBAXzsKKyAgICBteSAoJGZuLCAkZGlyKSA9IGZpbGVwYXJzZSgkZmlsZW5hbWUpOworICAgIGVycm9yKF9nKCIlcyBpcyBub3QgdGhlIG5hbWUgb2YgYSBmaWxlIiksICRmaWxlbmFtZSkgdW5sZXNzICRmbjsKKyAgICAkc2VsZi0+eydiYXNlZGlyJ30gPSAkZGlyIHx8ICIuLyI7CisgICAgJHNlbGYtPnsnZmlsZW5hbWUnfSA9ICRmbjsKKworICAgICMgQ2hlY2sgaWYgaXQgY29udGFpbnMgYSBzaWduYXR1cmUKKyAgICBvcGVuKERTQywgIjwiLCAkZmlsZW5hbWUpIHx8IHN5c2VycihfZygiY2Fubm90IG9wZW4gJXMiKSwgJGZpbGVuYW1lKTsKKyAgICAkc2VsZi0+eydpc19zaWduZWQnfSA9IDA7CisgICAgd2hpbGUgKDxEU0M+KSB7CisgICAgICAgIG5leHQgaWYgL15ccyokL287CisgICAgICAgICRzZWxmLT57J2lzX3NpZ25lZCd9ID0gMSBpZiAvXi0tLS0tQkVHSU4gUEdQIFNJR05FRCBNRVNTQUdFLS0tLS0kL287CisgICAgICAgIGxhc3Q7CisgICAgfQorICAgIGNsb3NlKERTQyk7CisgICAgIyBSZWFkIHRoZSBmaWVsZHMKKyAgICBteSAkZmllbGRzID0gRHBrZzo6Q29udHJvbC0+bmV3KHR5cGUgPT4gQ1RSTF9QS0dfU1JDKTsKKyAgICAkZmllbGRzLT5sb2FkKCRmaWxlbmFtZSk7CisgICAgJHNlbGYtPnsnZmllbGRzJ30gPSAkZmllbGRzOworCisgICAgZm9yZWFjaCBteSAkZiAocXcoU291cmNlIFZlcnNpb24gRmlsZXMpKSB7CisgICAgICAgIHVubGVzcyAoZGVmaW5lZCgkZmllbGRzLT57JGZ9KSkgeworICAgICAgICAgICAgZXJyb3IoX2coIm1pc3NpbmcgY3JpdGljYWwgc291cmNlIGNvbnRyb2wgZmllbGQgJXMiKSwgJGYpOworICAgICAgICB9CisgICAgfQorCisgICAgJHNlbGYtPnsnY2hlY2tzdW1zJ30tPmFkZF9mcm9tX2NvbnRyb2woJGZpZWxkcywgdXNlX2ZpbGVzX2Zvcl9tZDUgPT4gMSk7CisKKyAgICAkc2VsZi0+dXBncmFkZV9vYmplY3RfdHlwZSgwKTsKK30KKworc3ViIHVwZ3JhZGVfb2JqZWN0X3R5cGUgeworICAgIG15ICgkc2VsZiwgJHVwZGF0ZV9mb3JtYXQpID0gQF87CisgICAgJHVwZGF0ZV9mb3JtYXQgPSAxIHVubGVzcyBkZWZpbmVkICR1cGRhdGVfZm9ybWF0OworICAgICRzZWxmLT57J2ZpZWxkcyd9eydGb3JtYXQnfSA9ICcxLjAnCisgICAgICAgIHVubGVzcyBleGlzdHMgJHNlbGYtPnsnZmllbGRzJ317J0Zvcm1hdCd9OworICAgIG15ICRmb3JtYXQgPSAkc2VsZi0+eydmaWVsZHMnfXsnRm9ybWF0J307CisKKyAgICBpZiAoJGZvcm1hdCA9fiAvXihbXGRcLl0rKSg/OlxzK1woKC4qKVwpKT8kLykgeworICAgICAgICBteSAoJHZlcnNpb24sICR2YXJpYW50LCAkbWFqb3IsICRtaW5vcikgPSAoJDEsICQyLCAkMSwgdW5kZWYpOworICAgICAgICAkbWFqb3IgPX4gcy9cLltcZFwuXSskLy87CisgICAgICAgIG15ICRtb2R1bGUgPSAiRHBrZzo6U291cmNlOjpQYWNrYWdlOjpWJG1ham9yIjsKKyAgICAgICAgJG1vZHVsZSAuPSAiOjokdmFyaWFudCIgaWYgZGVmaW5lZCAkdmFyaWFudDsKKyAgICAgICAgZXZhbCAicmVxdWlyZSAkbW9kdWxlOyBcJG1pbm9yID0gXCQke21vZHVsZX06OkNVUlJFTlRfTUlOT1JfVkVSU0lPTjsiOworICAgICAgICAkbWlub3IgPSAwIHVubGVzcyBkZWZpbmVkICRtaW5vcjsKKyAgICAgICAgaWYgKCR1cGRhdGVfZm9ybWF0KSB7CisgICAgICAgICAgICAkc2VsZi0+eydmaWVsZHMnfXsnRm9ybWF0J30gPSAiJG1ham9yLiRtaW5vciI7CisgICAgICAgICAgICAkc2VsZi0+eydmaWVsZHMnfXsnRm9ybWF0J30gLj0gIiAoJHZhcmlhbnQpIiBpZiBkZWZpbmVkICR2YXJpYW50OworICAgICAgICB9CisgICAgICAgIGlmICgkQCkgeworCSAgICBlcnJvcihfZygic291cmNlIHBhY2thZ2UgZm9ybWF0IGAlcycgaXMgbm90IHN1cHBvcnRlZCAoUGVybCBtb2R1bGUgJXMgaXMgcmVxdWlyZWQpIiksICRmb3JtYXQsICRtb2R1bGUpOworICAgICAgICB9CisgICAgICAgIGJsZXNzICRzZWxmLCAkbW9kdWxlOworICAgIH0gZWxzZSB7CisgICAgICAgIGVycm9yKF9nKCJpbnZhbGlkIEZvcm1hdCBmaWVsZCBgJXMnIiksICRmb3JtYXQpOworICAgIH0KK30KKworPWl0ZW0gJHAtPmdldF9maWxlbmFtZSgpCisKK1JldHVybnMgdGhlIGZpbGVuYW1lIG9mIHRoZSBEU0MgZmlsZS4KKworPWN1dAorCitzdWIgZ2V0X2ZpbGVuYW1lIHsKKyAgICBteSAoJHNlbGYpID0gQF87CisgICAgcmV0dXJuICRzZWxmLT57J2Jhc2VkaXInfSAuICRzZWxmLT57J2ZpbGVuYW1lJ307Cit9CisKKz1pdGVtICRwLT5nZXRfZmlsZXMoKQorCitSZXR1cm5zIHRoZSBsaXN0IG9mIGZpbGVzIHJlZmVyZW5jZWQgYnkgdGhlIHNvdXJjZSBwYWNrYWdlLiBUaGUgZmlsZW5hbWVzCit1c3VhbGx5IGRvIG5vdCBoYXZlIGFueSBwYXRoIGluZm9ybWF0aW9uLgorCis9Y3V0CisKK3N1YiBnZXRfZmlsZXMgeworICAgIG15ICgkc2VsZikgPSBAXzsKKyAgICByZXR1cm4gJHNlbGYtPnsnY2hlY2tzdW1zJ30tPmdldF9maWxlcygpOworfQorCis9aXRlbSAkcC0+Y2hlY2tfY2hlY2tzdW1zKCkKKworVmVyaWZ5IHRoZSBjaGVja3N1bXMgZW1iZWRkZWQgaW4gdGhlIERTQyBmaWxlLiBJdCByZXF1aXJlcyB0aGUgcHJlc2VuY2Ugb2YKK3RoZSBvdGhlciBmaWxlcyBjb25zdGl0dXRpbmcgdGhlIHNvdXJjZSBwYWNrYWdlLiBJZiBhbnkgaW5jb25zaXN0ZW5jeSBpcworZGlzY292ZXJlZCwgaXQgaW1tZWRpYXRlbHkgZXJyb3JzIG91dC4KKworPWN1dAorCitzdWIgY2hlY2tfY2hlY2tzdW1zIHsKKyAgICBteSAoJHNlbGYpID0gQF87CisgICAgbXkgJGNoZWNrc3VtcyA9ICRzZWxmLT57J2NoZWNrc3Vtcyd9OworICAgICMgYWRkX2Zyb21fZmlsZSB2ZXJpZnkgdGhlIGNoZWNrc3VtcyBpZiB0aGV5IGFyZSBhbHJlYWR5IGV4aXN0aW5nCisgICAgZm9yZWFjaCBteSAkZmlsZSAoJGNoZWNrc3Vtcy0+Z2V0X2ZpbGVzKCkpIHsKKwkkY2hlY2tzdW1zLT5hZGRfZnJvbV9maWxlKCRzZWxmLT57J2Jhc2VkaXInfSAuICRmaWxlLCBrZXkgPT4gJGZpbGUpOworICAgIH0KK30KKworc3ViIGdldF9iYXNlbmFtZSB7CisgICAgbXkgKCRzZWxmLCAkd2l0aF9yZXZpc2lvbikgPSBAXzsKKyAgICBteSAkZiA9ICRzZWxmLT57J2ZpZWxkcyd9OworICAgIHVubGVzcyAoZXhpc3RzICRmLT57J1NvdXJjZSd9IGFuZCBleGlzdHMgJGYtPnsnVmVyc2lvbid9KSB7CisgICAgICAgIGVycm9yKF9nKCJzb3VyY2UgYW5kIHZlcnNpb24gYXJlIHJlcXVpcmVkIHRvIGNvbXB1dGUgdGhlIHNvdXJjZSBiYXNlbmFtZSIpKTsKKyAgICB9CisgICAgbXkgJHYgPSBEcGtnOjpWZXJzaW9uLT5uZXcoJGYtPnsnVmVyc2lvbid9KTsKKyAgICBteSAkYmFzZW5hbWUgPSAkZi0+eydTb3VyY2UnfSAuICJfIiAuICR2LT52ZXJzaW9uKCk7CisgICAgaWYgKCR3aXRoX3JldmlzaW9uIGFuZCAkZi0+eydWZXJzaW9uJ30gPX4gLy0vKSB7CisgICAgICAgICRiYXNlbmFtZSAuPSAiLSIgLiAkdi0+cmV2aXNpb24oKTsKKyAgICB9CisgICAgcmV0dXJuICRiYXNlbmFtZTsKK30KKworc3ViIGZpbmRfb3JpZ2luYWxfdGFyYmFsbHMgeworICAgIG15ICgkc2VsZiwgJW9wdHMpID0gQF87CisgICAgJG9wdHN7ZXh0ZW5zaW9ufSA9ICRjb21wcmVzc2lvbl9yZV9maWxlX2V4dCB1bmxlc3MgZXhpc3RzICRvcHRze2V4dGVuc2lvbn07CisgICAgJG9wdHN7aW5jbHVkZV9tYWlufSA9IDEgdW5sZXNzIGV4aXN0cyAkb3B0c3tpbmNsdWRlX21haW59OworICAgICRvcHRze2luY2x1ZGVfc3VwcGxlbWVudGFyeX0gPSAxIHVubGVzcyBleGlzdHMgJG9wdHN7aW5jbHVkZV9zdXBwbGVtZW50YXJ5fTsKKyAgICBteSAkYmFzZW5hbWUgPSAkc2VsZi0+Z2V0X2Jhc2VuYW1lKCk7CisgICAgbXkgQHRhcjsKKyAgICBmb3JlYWNoIG15ICRkaXIgKCIuIiwgJHNlbGYtPnsnYmFzZWRpcid9LCAkc2VsZi0+eydvcHRpb25zJ317J29yaWd0YXJkaXInfSkgeworICAgICAgICBuZXh0IHVubGVzcyBkZWZpbmVkKCRkaXIpIGFuZCAtZCAkZGlyOworICAgICAgICBvcGVuZGlyKERJUiwgJGRpcikgfHwgc3lzZXJyKF9nKCJjYW5ub3Qgb3BlbmRpciAlcyIpLCAkZGlyKTsKKyAgICAgICAgcHVzaCBAdGFyLCBtYXAgeyAiJGRpci8kXyIgfSBncmVwIHsKKwkJKCRvcHRze2luY2x1ZGVfbWFpbn0gYW5kCisJCSAvXlxRJGJhc2VuYW1lXEVcLm9yaWdcLnRhclwuJG9wdHN7ZXh0ZW5zaW9ufSQvKSBvcgorCQkoJG9wdHN7aW5jbHVkZV9zdXBwbGVtZW50YXJ5fSBhbmQKKwkJIC9eXFEkYmFzZW5hbWVcRVwub3JpZy1bWzphbG51bTpdLV0rXC50YXJcLiRvcHRze2V4dGVuc2lvbn0kLykKKwkgICAgfSByZWFkZGlyKERJUik7CisgICAgICAgIGNsb3NlZGlyKERJUik7CisgICAgfQorICAgIHJldHVybiBAdGFyOworfQorCis9aXRlbSAkYm9vbCA9ICRwLT5pc19zaWduZWQoKQorCitSZXR1cm5zIDEgaWYgdGhlIERTQyBmaWxlcyBjb250YWlucyBhbiBlbWJlZGRlZCBPcGVuUEdQIHNpZ25hdHVyZS4KK090aGVyd2lzZSByZXR1cm5zIDAuCisKKz1jdXQKKworc3ViIGlzX3NpZ25lZCB7CisgICAgbXkgJHNlbGYgPSBzaGlmdDsKKyAgICByZXR1cm4gJHNlbGYtPnsnaXNfc2lnbmVkJ307Cit9CisKKz1pdGVtICRwLT5jaGVja19zaWduYXR1cmUoKQorCitJbXBsZW1lbnQgdGhlIHNhbWUgT3BlblBHUCBzaWduYXR1cmUgY2hlY2sgdGhhdCBkcGtnLXNvdXJjZSBkb2VzLgorSW4gY2FzZSBvZiBwcm9ibGVtcywgaXQgcHJpbnRzIGEgd2FybmluZyBvciBlcnJvcnMgb3V0LgorCitJZiB0aGUgb2JqZWN0IGhhcyBiZWVuIGNyZWF0ZWQgd2l0aCB0aGUgInJlcXVpcmVfdmFsaWRfc2lnbmF0dXJlIiBvcHRpb24sCit0aGVuIGFueSBwcm9ibGVtIHdpbGwgcmVzdWx0IGluIGEgZmF0YWwgZXJyb3IuCisKKz1jdXQKKworc3ViIGNoZWNrX3NpZ25hdHVyZSB7CisgICAgbXkgKCRzZWxmKSA9IEBfOworICAgIG15ICRkc2MgPSAkc2VsZi0+Z2V0X2ZpbGVuYW1lKCk7CisgICAgbXkgQGV4ZWM7CisgICAgaWYgKC14ICcvdXNyL2Jpbi9ncGd2JykgeworICAgICAgICBwdXNoIEBleGVjLCAiZ3BndiI7CisgICAgfSBlbHNpZiAoLXggJy91c3IvYmluL2dwZycpIHsKKyAgICAgICAgcHVzaCBAZXhlYywgImdwZyIsICItLW5vLWRlZmF1bHQta2V5cmluZyIsICItcSIsICItLXZlcmlmeSI7CisgICAgfQorICAgIGlmIChzY2FsYXIoQGV4ZWMpKSB7CisgICAgICAgIGlmICgtciAiJEVOVnsnSE9NRSd9Ly5nbnVwZy90cnVzdGVka2V5cy5ncGciKSB7CisgICAgICAgICAgICBwdXNoIEBleGVjLCAiLS1rZXlyaW5nIiwgIiRFTlZ7J0hPTUUnfS8uZ251cGcvdHJ1c3RlZGtleXMuZ3BnIjsKKyAgICAgICAgfQorICAgICAgICBmb3JlYWNoIG15ICR2ZW5kb3Jfa2V5cmluZyAocnVuX3ZlbmRvcl9ob29rKCdrZXlyaW5ncycpKSB7CisgICAgICAgICAgICBpZiAoLXIgJHZlbmRvcl9rZXlyaW5nKSB7CisgICAgICAgICAgICAgICAgcHVzaCBAZXhlYywgIi0ta2V5cmluZyIsICR2ZW5kb3Jfa2V5cmluZzsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorICAgICAgICBwdXNoIEBleGVjLCAkZHNjOworCisgICAgICAgIG15ICgkc3Rkb3V0LCAkc3RkZXJyKTsKKyAgICAgICAgc3Bhd24oJ2V4ZWMnID0+IFxAZXhlYywgd2FpdF9jaGlsZCA9PiAxLCBub2NoZWNrID0+IDEsCisgICAgICAgICAgICAgIHRvX3N0cmluZyA9PiBcJHN0ZG91dCwgZXJyb3JfdG9fc3RyaW5nID0+IFwkc3RkZXJyLAorICAgICAgICAgICAgICB0aW1lb3V0ID0+IDEwKTsKKyAgICAgICAgaWYgKFdJRkVYSVRFRCgkPykpIHsKKyAgICAgICAgICAgIG15ICRncGdfc3RhdHVzID0gV0VYSVRTVEFUVVMoJD8pOworICAgICAgICAgICAgcHJpbnQgU1RERVJSICIkc3Rkb3V0JHN0ZGVyciIgaWYgJGdwZ19zdGF0dXM7CisgICAgICAgICAgICBpZiAoJGdwZ19zdGF0dXMgPT0gMSBvciAoJGdwZ19zdGF0dXMgJiYKKyAgICAgICAgICAgICAgICAkc2VsZi0+eydvcHRpb25zJ317J3JlcXVpcmVfdmFsaWRfc2lnbmF0dXJlJ30pKQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGVycm9yKF9nKCJmYWlsZWQgdG8gdmVyaWZ5IHNpZ25hdHVyZSBvbiAlcyIpLCAkZHNjKTsKKyAgICAgICAgICAgIH0gZWxzaWYgKCRncGdfc3RhdHVzKSB7CisgICAgICAgICAgICAgICAgd2FybmluZyhfZygiZmFpbGVkIHRvIHZlcmlmeSBzaWduYXR1cmUgb24gJXMiKSwgJGRzYyk7CisgICAgICAgICAgICB9CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICBzdWJwcm9jZXJyKCJAZXhlYyIpOworICAgICAgICB9CisgICAgfSBlbHNlIHsKKyAgICAgICAgaWYgKCRzZWxmLT57J29wdGlvbnMnfXsncmVxdWlyZV92YWxpZF9zaWduYXR1cmUnfSkgeworICAgICAgICAgICAgZXJyb3IoX2coImNvdWxkIG5vdCB2ZXJpZnkgc2lnbmF0dXJlIG9uICVzIHNpbmNlIGdwZyBpc24ndCBpbnN0YWxsZWQiKSwgJGRzYyk7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICB3YXJuaW5nKF9nKCJjb3VsZCBub3QgdmVyaWZ5IHNpZ25hdHVyZSBvbiAlcyBzaW5jZSBncGcgaXNuJ3QgaW5zdGFsbGVkIiksICRkc2MpOworICAgICAgICB9CisgICAgfQorfQorCitzdWIgcGFyc2VfY21kbGluZV9vcHRpb25zIHsKKyAgICBteSAoJHNlbGYsIEBvcHRzKSA9IEBfOworICAgIGZvcmVhY2ggKEBvcHRzKSB7CisgICAgICAgIGlmIChub3QgJHNlbGYtPnBhcnNlX2NtZGxpbmVfb3B0aW9uKCRfKSkgeworICAgICAgICAgICAgd2FybmluZyhfZygiJXMgaXMgbm90IGEgdmFsaWQgb3B0aW9uIGZvciAlcyIpLCAkXywgcmVmKCRzZWxmKSk7CisgICAgICAgIH0KKyAgICB9Cit9CisKK3N1YiBwYXJzZV9jbWRsaW5lX29wdGlvbiB7CisgICAgcmV0dXJuIDA7Cit9CisKKz1pdGVtICRwLT5leHRyYWN0KCR0YXJnZXRkaXIpCisKK0V4dHJhY3RzIHRoZSBzb3VyY2UgcGFja2FnZSBpbiB0aGUgdGFyZ2V0IGRpcmVjdG9yeSAkdGFyZ2V0ZGlyLiBCZXdhcmUKK3RoYXQgaWYgJHRhcmdldGRpciBhbHJlYWR5IGV4aXN0cywgaXQgd2lsbCBiZSBlcmFzZWQuCisKKz1jdXQKKworc3ViIGV4dHJhY3QgeworICAgIG15ICRzZWxmID0gc2hpZnQ7CisgICAgbXkgJG5ld2RpcmVjdG9yeSA9ICRfWzBdOworCisgICAgbXkgKCRvaywgJGVycm9yKSA9IHZlcnNpb25fY2hlY2soJHNlbGYtPnsnZmllbGRzJ317J1ZlcnNpb24nfSk7CisgICAgZXJyb3IoJGVycm9yKSB1bmxlc3MgJG9rOworCisgICAgIyBDb3B5IG9yaWcgdGFyYmFsbHMKKyAgICBpZiAoJHNlbGYtPnsnb3B0aW9ucyd9eydjb3B5X29yaWdfdGFyYmFsbHMnfSkgeworICAgICAgICBteSAkYmFzZW5hbWUgPSAkc2VsZi0+Z2V0X2Jhc2VuYW1lKCk7CisgICAgICAgIG15ICgkZGlybmFtZSwgJGRlc3RkaXIpID0gZmlsZXBhcnNlKCRuZXdkaXJlY3RvcnkpOworICAgICAgICAkZGVzdGRpciB8fD0gIi4vIjsKKwlteSAkZXh0ID0gJGNvbXByZXNzaW9uX3JlX2ZpbGVfZXh0OworICAgICAgICBmb3JlYWNoIG15ICRvcmlnIChncmVwIHsgL15cUSRiYXNlbmFtZVxFXC5vcmlnKC1bWzphbG51bTpdLV0rKT9cLnRhclwuJGV4dCQvIH0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgJHNlbGYtPmdldF9maWxlcygpKQorICAgICAgICB7CisgICAgICAgICAgICBteSAkc3JjID0gRmlsZTo6U3BlYy0+Y2F0ZmlsZSgkc2VsZi0+eydiYXNlZGlyJ30sICRvcmlnKTsKKyAgICAgICAgICAgIG15ICRkc3QgPSBGaWxlOjpTcGVjLT5jYXRmaWxlKCRkZXN0ZGlyLCAkb3JpZyk7CisgICAgICAgICAgICBpZiAobm90IGNoZWNrX2ZpbGVzX2FyZV90aGVfc2FtZSgkc3JjLCAkZHN0LCAxKSkgeworICAgICAgICAgICAgICAgIHN5c3RlbSgnY3AnLCAnLS0nLCAkc3JjLCAkZHN0KTsKKyAgICAgICAgICAgICAgICBzdWJwcm9jZXJyKCJjcCAkc3JjIHRvICRkc3QiKSBpZiAkPzsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorICAgIH0KKworICAgICMgVHJ5IGV4dHJhY3QKKyAgICBldmFsIHsgJHNlbGYtPmRvX2V4dHJhY3QoQF8pIH07CisgICAgaWYgKCRAKSB7CisgICAgICAgICYkXygpIGZvcmVhY2ggcmV2ZXJzZSBARHBrZzo6RXhpdDo6aGFuZGxlcnM7CisgICAgICAgIGRpZSAkQDsKKyAgICB9CisKKyAgICAjIFN0b3JlIGZvcm1hdCBpZiBub24tc3RhbmRhcmQgc28gdGhhdCBuZXh0IGJ1aWxkIGtlZXBzIHRoZSBzYW1lIGZvcm1hdAorICAgIGlmICgkc2VsZi0+eydmaWVsZHMnfXsnRm9ybWF0J30gbmUgIjEuMCIgYW5kCisgICAgICAgIG5vdCAkc2VsZi0+eydvcHRpb25zJ317J3NraXBfZGViaWFuaXphdGlvbid9KQorICAgIHsKKyAgICAgICAgbXkgJHNyY2RpciA9IEZpbGU6OlNwZWMtPmNhdGRpcigkbmV3ZGlyZWN0b3J5LCAiZGViaWFuIiwgInNvdXJjZSIpOworICAgICAgICBteSAkZm9ybWF0X2ZpbGUgPSBGaWxlOjpTcGVjLT5jYXRmaWxlKCRzcmNkaXIsICJmb3JtYXQiKTsKKwl1bmxlc3MgKC1lICRmb3JtYXRfZmlsZSkgeworCSAgICBta2Rpcigkc3JjZGlyKSB1bmxlc3MgLWUgJHNyY2RpcjsKKwkgICAgb3BlbihGT1JNQVQsICI+IiwgJGZvcm1hdF9maWxlKSB8fCBzeXNlcnIoX2coImNhbm5vdCB3cml0ZSAlcyIpLCAkZm9ybWF0X2ZpbGUpOworCSAgICBwcmludCBGT1JNQVQgJHNlbGYtPnsnZmllbGRzJ317J0Zvcm1hdCd9IC4gIlxuIjsKKwkgICAgY2xvc2UoRk9STUFUKTsKKwl9CisgICAgfQorCisgICAgIyBNYWtlIHN1cmUgZGViaWFuL3J1bGVzIGlzIGV4ZWN1dGFibGUKKyAgICBteSAkcnVsZXMgPSBGaWxlOjpTcGVjLT5jYXRmaWxlKCRuZXdkaXJlY3RvcnksICJkZWJpYW4iLCAicnVsZXMiKTsKKyAgICBteSBAcyA9IGxzdGF0KCRydWxlcyk7CisgICAgaWYgKG5vdCBzY2FsYXIoQHMpKSB7CisgICAgICAgIHVubGVzcyAoJCEgPT0gRU5PRU5UKSB7CisgICAgICAgICAgICBzeXNlcnIoX2coImNhbm5vdCBzdGF0ICVzIiksICRydWxlcyk7CisgICAgICAgIH0KKyAgICAgICAgd2FybmluZyhfZygiJXMgZG9lcyBub3QgZXhpc3QiKSwgJHJ1bGVzKQorICAgICAgICAgICAgdW5sZXNzICRzZWxmLT57J29wdGlvbnMnfXsnc2tpcF9kZWJpYW5pemF0aW9uJ307CisgICAgfSBlbHNpZiAoLWYgXykgeworICAgICAgICBjaG1vZCgkc1syXSB8IDAxMTEsICRydWxlcykgfHwKKyAgICAgICAgICAgIHN5c2VycihfZygiY2Fubm90IG1ha2UgJXMgZXhlY3V0YWJsZSIpLCAkcnVsZXMpOworICAgIH0gZWxzZSB7CisgICAgICAgIHdhcm5pbmcoX2coIiVzIGlzIG5vdCBhIHBsYWluIGZpbGUiKSwgJHJ1bGVzKTsKKyAgICB9Cit9CisKK3N1YiBkb19leHRyYWN0IHsKKyAgICBpbnRlcm5lcnIoIkRwa2c6OlNvdXJjZTo6UGFja2FnZSBkb2Vzbid0IGtub3cgaG93IHRvIHVucGFjayBhICIgLgorICAgICAgICAgICAgICAic291cmNlIHBhY2thZ2UuIFVzZSBvbmUgb2YgdGhlIHN1YmNsYXNzZXMuIik7Cit9CisKKyMgRnVuY3Rpb24gdXNlZCBzcGVjaWZpY2FsbHkgZHVyaW5nIGNyZWF0aW9uIG9mIGEgc291cmNlIHBhY2thZ2UKKworc3ViIGJlZm9yZV9idWlsZCB7CisgICAgbXkgKCRzZWxmLCAkZGlyKSA9IEBfOworfQorCitzdWIgYnVpbGQgeworICAgIG15ICRzZWxmID0gc2hpZnQ7CisgICAgZXZhbCB7ICRzZWxmLT5kb19idWlsZChAXykgfTsKKyAgICBpZiAoJEApIHsKKyAgICAgICAgJiRfKCkgZm9yZWFjaCByZXZlcnNlIEBEcGtnOjpFeGl0OjpoYW5kbGVyczsKKyAgICAgICAgZGllICRAOworICAgIH0KK30KKworc3ViIGFmdGVyX2J1aWxkIHsKKyAgICBteSAoJHNlbGYsICRkaXIpID0gQF87Cit9CisKK3N1YiBkb19idWlsZCB7CisgICAgaW50ZXJuZXJyKCJEcGtnOjpTb3VyY2U6OlBhY2thZ2UgZG9lc24ndCBrbm93IGhvdyB0byBidWlsZCBhICIgLgorICAgICAgICAgICAgICAic291cmNlIHBhY2thZ2UuIFVzZSBvbmUgb2YgdGhlIHN1YmNsYXNzZXMuIik7Cit9CisKK3N1YiBjYW5fYnVpbGQgeworICAgIG15ICgkc2VsZiwgJGRpcikgPSBAXzsKKyAgICByZXR1cm4gKDAsICJjYW5fYnVpbGQoKSBoYXMgbm90IGJlZW4gb3ZlcnJpZGVuIik7Cit9CisKK3N1YiBhZGRfZmlsZSB7CisgICAgbXkgKCRzZWxmLCAkZmlsZW5hbWUpID0gQF87CisgICAgbXkgKCRmbiwgJGRpcikgPSBmaWxlcGFyc2UoJGZpbGVuYW1lKTsKKyAgICBpZiAoJHNlbGYtPnsnY2hlY2tzdW1zJ30tPmhhc19maWxlKCRmbikpIHsKKyAgICAgICAgaW50ZXJuZXJyKCJ0cmllZCB0byBhZGQgZmlsZSAnJXMnIHR3aWNlIiwgJGZuKTsKKyAgICB9CisgICAgJHNlbGYtPnsnY2hlY2tzdW1zJ30tPmFkZF9mcm9tX2ZpbGUoJGZpbGVuYW1lLCBrZXkgPT4gJGZuKTsKKyAgICAkc2VsZi0+eydjaGVja3N1bXMnfS0+ZXhwb3J0X3RvX2NvbnRyb2woJHNlbGYtPnsnZmllbGRzJ30sCisJCQkJCSAgICB1c2VfZmlsZXNfZm9yX21kNSA9PiAxKTsKK30KKworc3ViIGNvbW1pdCB7CisgICAgbXkgKCRzZWxmLCAkZGlyKSA9IEBfOworICAgIGluZm8oX2coIiclcycgaXMgbm90IHN1cHBvcnRlZCBieSB0aGUgc291cmNlIGZvcm1hdCAnJXMnIiksCisgICAgICAgICAiZHBrZy1zb3VyY2UgLS1jb21taXQiLCAkc2VsZi0+eydmaWVsZHMnfXsnRm9ybWF0J30pOworfQorCitzdWIgd3JpdGVfZHNjIHsKKyAgICBteSAoJHNlbGYsICVvcHRzKSA9IEBfOworICAgIG15ICRmaWVsZHMgPSAkc2VsZi0+eydmaWVsZHMnfTsKKworICAgIGZvcmVhY2ggbXkgJGYgKGtleXMgJXskb3B0c3snb3ZlcnJpZGUnfX0pIHsKKwkkZmllbGRzLT57JGZ9ID0gJG9wdHN7J292ZXJyaWRlJ317JGZ9OworICAgIH0KKworICAgIHVubGVzcygkb3B0c3snbm9jaGVjayd9KSB7CisgICAgICAgIGZvcmVhY2ggbXkgJGYgKHF3KFNvdXJjZSBWZXJzaW9uKSkgeworICAgICAgICAgICAgdW5sZXNzIChkZWZpbmVkKCRmaWVsZHMtPnskZn0pKSB7CisgICAgICAgICAgICAgICAgZXJyb3IoX2coIm1pc3NpbmcgaW5mb3JtYXRpb24gZm9yIGNyaXRpY2FsIG91dHB1dCBmaWVsZCAlcyIpLCAkZik7CisgICAgICAgICAgICB9CisgICAgICAgIH0KKyAgICAgICAgZm9yZWFjaCBteSAkZiAocXcoTWFpbnRhaW5lciBBcmNoaXRlY3R1cmUgU3RhbmRhcmRzLVZlcnNpb24pKSB7CisgICAgICAgICAgICB1bmxlc3MgKGRlZmluZWQoJGZpZWxkcy0+eyRmfSkpIHsKKyAgICAgICAgICAgICAgICB3YXJuaW5nKF9nKCJtaXNzaW5nIGluZm9ybWF0aW9uIGZvciBvdXRwdXQgZmllbGQgJXMiKSwgJGYpOworICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgfQorCisgICAgZm9yZWFjaCBteSAkZiAoa2V5cyAleyRvcHRzeydyZW1vdmUnfX0pIHsKKwlkZWxldGUgJGZpZWxkcy0+eyRmfTsKKyAgICB9CisKKyAgICBteSAkZmlsZW5hbWUgPSAkb3B0c3snZmlsZW5hbWUnfTsKKyAgICB1bmxlc3MgKGRlZmluZWQgJGZpbGVuYW1lKSB7CisgICAgICAgICRmaWxlbmFtZSA9ICRzZWxmLT5nZXRfYmFzZW5hbWUoMSkgLiAiLmRzYyI7CisgICAgfQorICAgIG9wZW4oRFNDLCAiPiIsICRmaWxlbmFtZSkgfHwgc3lzZXJyKF9nKCJjYW5ub3Qgd3JpdGUgJXMiKSwgJGZpbGVuYW1lKTsKKyAgICAkZmllbGRzLT5hcHBseV9zdWJzdHZhcnMoJG9wdHN7J3N1YnN0dmFycyd9KTsKKyAgICAkZmllbGRzLT5vdXRwdXQoXCpEU0MpOworICAgIGNsb3NlKERTQyk7Cit9CisKKz1iYWNrCisKKz1oZWFkMSBBVVRIT1IKKworUmFwaGHDq2wgSGVydHpvZywgRTxsdD5oZXJ0em9nQGRlYmlhbi5vcmdFPGd0PgorCis9Y3V0CisKKyMgdmltOiBzZXQgZXQgc3c9NCB0cz04CisxOwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG0gYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zNTcwNGM1Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG0KQEAgLTAsMCArMSwzOTUgQEAKKyMgQ29weXJpZ2h0IMKpIDIwMDgtMjAwOSBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisjCisjIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisjIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisjIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisjIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisjCisjIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisjIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisjCisjIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisjIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorCitwYWNrYWdlIERwa2c6OlNvdXJjZTo6UGFja2FnZTo6VjE7CisKK3VzZSBzdHJpY3Q7Cit1c2Ugd2FybmluZ3M7CisKK291ciAkVkVSU0lPTiA9ICIwLjAxIjsKKwordXNlIGJhc2UgJ0Rwa2c6OlNvdXJjZTo6UGFja2FnZSc7CisKK3VzZSBEcGtnOwordXNlIERwa2c6OkdldHRleHQ7Cit1c2UgRHBrZzo6RXJyb3JIYW5kbGluZzsKK3VzZSBEcGtnOjpDb21wcmVzc2lvbjsKK3VzZSBEcGtnOjpTb3VyY2U6OkFyY2hpdmU7Cit1c2UgRHBrZzo6U291cmNlOjpQYXRjaDsKK3VzZSBEcGtnOjpFeGl0OwordXNlIERwa2c6OlNvdXJjZTo6RnVuY3Rpb25zIHF3KGVyYXNlZGlyKTsKK3VzZSBEcGtnOjpTb3VyY2U6OlBhY2thZ2U6OlYzOjpuYXRpdmU7CisKK3VzZSBQT1NJWDsKK3VzZSBGaWxlOjpCYXNlbmFtZTsKK3VzZSBGaWxlOjpUZW1wIHF3KHRlbXBmaWxlKTsKK3VzZSBGaWxlOjpTcGVjOworCitvdXIgJENVUlJFTlRfTUlOT1JfVkVSU0lPTiA9ICIwIjsKKworc3ViIGluaXRfb3B0aW9ucyB7CisgICAgbXkgKCRzZWxmKSA9IEBfOworICAgICMgRG9uJ3QgY2FsbCAkc2VsZi0+U1VQRVI6OmluaXRfb3B0aW9ucygpIG9uIHB1cnBvc2UsIFYxLjAgaGFzIG5vCisgICAgIyBpZ25vcmUgYnkgZGVmYXVsdAorICAgIGlmICgkc2VsZi0+eydvcHRpb25zJ317J2RpZmZfaWdub3JlX3JlZ2V4cCd9KSB7CisJJHNlbGYtPnsnb3B0aW9ucyd9eydkaWZmX2lnbm9yZV9yZWdleHAnfSAuPSAnfCg/Ol58LylkZWJpYW4vc291cmNlL2xvY2FsLS4qJCc7CisgICAgfSBlbHNlIHsKKwkkc2VsZi0+eydvcHRpb25zJ317J2RpZmZfaWdub3JlX3JlZ2V4cCd9ID0gJyg/Ol58LylkZWJpYW4vc291cmNlL2xvY2FsLS4qJCc7CisgICAgfQorICAgIHB1c2ggQHskc2VsZi0+eydvcHRpb25zJ317J3Rhcl9pZ25vcmUnfX0sICJkZWJpYW4vc291cmNlL2xvY2FsLW9wdGlvbnMiLAorICAgICAgICAgImRlYmlhbi9zb3VyY2UvbG9jYWwtcGF0Y2gtaGVhZGVyIjsKKyAgICAkc2VsZi0+eydvcHRpb25zJ317J3NvdXJjZXN0eWxlJ30gfHw9ICdYJzsKKyAgICAkc2VsZi0+eydvcHRpb25zJ317J3NraXBfZGViaWFuaXphdGlvbid9IHx8PSAwOworICAgICRzZWxmLT57J29wdGlvbnMnfXsnYWJvcnRfb25fdXBzdHJlYW1fY2hhbmdlcyd9IHx8PSAwOworfQorCitzdWIgcGFyc2VfY21kbGluZV9vcHRpb24geworICAgIG15ICgkc2VsZiwgJG9wdCkgPSBAXzsKKyAgICBteSAkbyA9ICRzZWxmLT57J29wdGlvbnMnfTsKKyAgICBpZiAoJG9wdCA9fiBtL14tcyhbYWtwdXJzbkFLUFVSXSkkLykgeworICAgICAgICB3YXJuaW5nKF9nKCItcyVzIG9wdGlvbiBvdmVycmlkZXMgZWFybGllciAtcyVzIG9wdGlvbiIpLCAkMSwKKyAgICAgICAgICAgICAgICAkby0+eydzb3VyY2VzdHlsZSd9KSBpZiAkby0+eydzb3VyY2VzdHlsZSd9IG5lICdYJzsKKyAgICAgICAgJG8tPnsnc291cmNlc3R5bGUnfSA9ICQxOworICAgICAgICAkby0+eydjb3B5X29yaWdfdGFyYmFsbHMnfSA9IDAgaWYgJDEgZXEgJ24nOyAjIEV4dHJhY3Qgb3B0aW9uIC1zbgorICAgICAgICByZXR1cm4gMTsKKyAgICB9IGVsc2lmICgkb3B0ID1+IG0vXi0tc2tpcC1kZWJpYW5pemF0aW9uJC8pIHsKKyAgICAgICAgJG8tPnsnc2tpcF9kZWJpYW5pemF0aW9uJ30gPSAxOworICAgICAgICByZXR1cm4gMTsKKyAgICB9IGVsc2lmICgkb3B0ID1+IG0vXi0tYWJvcnQtb24tdXBzdHJlYW0tY2hhbmdlcyQvKSB7CisgICAgICAgICRvLT57J2Fib3J0X29uX3Vwc3RyZWFtX2NoYW5nZXMnfSA9IDE7CisgICAgICAgIHJldHVybiAxOworICAgIH0KKyAgICByZXR1cm4gMDsKK30KKworc3ViIGRvX2V4dHJhY3QgeworICAgIG15ICgkc2VsZiwgJG5ld2RpcmVjdG9yeSkgPSBAXzsKKyAgICBteSAkc291cmNlc3R5bGUgPSAkc2VsZi0+eydvcHRpb25zJ317J3NvdXJjZXN0eWxlJ307CisgICAgbXkgJGZpZWxkcyA9ICRzZWxmLT57J2ZpZWxkcyd9OworCisgICAgJHNvdXJjZXN0eWxlID1+IHkvWC9wLzsKKyAgICAkc291cmNlc3R5bGUgPX4gbS9bcHVuXS8gfHwKKwl1c2FnZWVycihfZygic291cmNlIGhhbmRsaW5nIHN0eWxlIC1zJXMgbm90IGFsbG93ZWQgd2l0aCAteCIpLAorCSAgICAgICAgICRzb3VyY2VzdHlsZSk7CisKKyAgICBteSAkZHNjZGlyID0gJHNlbGYtPnsnYmFzZWRpcid9OworCisgICAgbXkgJGJhc2VuYW1lID0gJHNlbGYtPmdldF9iYXNlbmFtZSgpOworICAgIG15ICRiYXNlbmFtZXJldiA9ICRzZWxmLT5nZXRfYmFzZW5hbWUoMSk7CisKKyAgICAjIFYxLjAgb25seSBzdXBwb3J0cyBnemlwIGNvbXByZXNzaW9uCisgICAgbXkgKCR0YXJmaWxlLCAkZGlmZmZpbGUpOworICAgIGZvcmVhY2ggbXkgJGZpbGUgKCRzZWxmLT5nZXRfZmlsZXMoKSkgeworCWlmICgkZmlsZSA9fiAvXig/OlxRJGJhc2VuYW1lXEVcLm9yaWd8XFEkYmFzZW5hbWVyZXZcRSlcLnRhclwuZ3okLykgeworICAgICAgICAgICAgZXJyb3IoX2coIm11bHRpcGxlIHRhcmZpbGVzIGluIHYxLjAgc291cmNlIHBhY2thZ2UiKSkgaWYgJHRhcmZpbGU7CisgICAgICAgICAgICAkdGFyZmlsZSA9ICRmaWxlOworCX0gZWxzaWYgKCRmaWxlID1+IC9eXFEkYmFzZW5hbWVyZXZcRVwuZGlmZlwuZ3okLykgeworCSAgICAkZGlmZmZpbGUgPSAkZmlsZTsKKwl9IGVsc2UgeworCSAgICBlcnJvcihfZygidW5yZWNvZ25pemVkIGZpbGUgZm9yIGEgJXMgc291cmNlIHBhY2thZ2U6ICVzIiksCisgICAgICAgICAgICAgICAgICAidjEuMCIsICRmaWxlKTsKKwl9CisgICAgfQorCisgICAgZXJyb3IoX2coIm5vIHRhcmZpbGUgaW4gRmlsZXMgZmllbGQiKSkgdW5sZXNzICR0YXJmaWxlOworICAgIG15ICRuYXRpdmUgPSAkZGlmZmZpbGUgPyAwIDogMTsKKyAgICBpZiAoJG5hdGl2ZSBhbmQgKCR0YXJmaWxlID1+IC9cLm9yaWdcLnRhclwuZ3okLykpIHsKKyAgICAgICAgd2FybmluZyhfZygibmF0aXZlIHBhY2thZ2Ugd2l0aCAub3JpZy50YXIiKSk7CisgICAgICAgICRuYXRpdmUgPSAwOyAjIFYzOjpuYXRpdmUgZG9lc24ndCBoYW5kbGUgb3JpZy50YXIKKyAgICB9CisKKyAgICBpZiAoJG5hdGl2ZSkgeworICAgICAgICBEcGtnOjpTb3VyY2U6OlBhY2thZ2U6OlYzOjpuYXRpdmU6OmRvX2V4dHJhY3QoJHNlbGYsICRuZXdkaXJlY3RvcnkpOworICAgIH0gZWxzZSB7CisgICAgICAgIG15ICRleHBlY3RwcmVmaXggPSAkbmV3ZGlyZWN0b3J5OworICAgICAgICAkZXhwZWN0cHJlZml4IC49ICcub3JpZyc7CisKKyAgICAgICAgZXJhc2VkaXIoJG5ld2RpcmVjdG9yeSk7CisgICAgICAgIGlmICgtZSAkZXhwZWN0cHJlZml4KSB7CisgICAgICAgICAgICByZW5hbWUoJGV4cGVjdHByZWZpeCwgIiRuZXdkaXJlY3RvcnkudG1wLWtlZXAiKSB8fAorICAgICAgICAgICAgICAgICAgICBzeXNlcnIoX2coInVuYWJsZSB0byByZW5hbWUgYCVzJyB0byBgJXMnIiksICRleHBlY3RwcmVmaXgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAiJG5ld2RpcmVjdG9yeS50bXAta2VlcCIpOworICAgICAgICB9CisKKyAgICAgICAgaW5mbyhfZygidW5wYWNraW5nICVzIiksICR0YXJmaWxlKTsKKyAgICAgICAgbXkgJHRhciA9IERwa2c6OlNvdXJjZTo6QXJjaGl2ZS0+bmV3KGZpbGVuYW1lID0+ICIkZHNjZGlyJHRhcmZpbGUiKTsKKyAgICAgICAgJHRhci0+ZXh0cmFjdCgkZXhwZWN0cHJlZml4KTsKKworICAgICAgICBpZiAoJHNvdXJjZXN0eWxlID1+IC91LykgeworICAgICAgICAgICAgIyAtc3U6IGtlZXAgLm9yaWcgZGlyZWN0b3J5IHVucGFja2VkCisgICAgICAgICAgICBpZiAoLWUgIiRuZXdkaXJlY3RvcnkudG1wLWtlZXAiKSB7CisgICAgICAgICAgICAgICAgZXJyb3IoX2coInVuYWJsZSB0byBrZWVwIG9yaWcgZGlyZWN0b3J5IChhbHJlYWR5IGV4aXN0cykiKSk7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBzeXN0ZW0oJ2NwJywgJy1hcicsICctLScsICRleHBlY3RwcmVmaXgsICIkbmV3ZGlyZWN0b3J5LnRtcC1rZWVwIik7CisgICAgICAgICAgICBzdWJwcm9jZXJyKCJjcCAkZXhwZWN0cHJlZml4IHRvICRuZXdkaXJlY3RvcnkudG1wLWtlZXAiKSBpZiAkPzsKKyAgICAgICAgfQorCisJcmVuYW1lKCRleHBlY3RwcmVmaXgsICRuZXdkaXJlY3RvcnkpIHx8CisJICAgIHN5c2VycihfZygiZmFpbGVkIHRvIHJlbmFtZSBuZXdseS1leHRyYWN0ZWQgJXMgdG8gJXMiKSwKKwkgICAgICAgICAgICRleHBlY3RwcmVmaXgsICRuZXdkaXJlY3RvcnkpOworCisJIyByZW5hbWUgdGhlIGNvcGllZCAub3JpZyBkaXJlY3RvcnkKKwlpZiAoLWUgIiRuZXdkaXJlY3RvcnkudG1wLWtlZXAiKSB7CisJICAgIHJlbmFtZSgiJG5ld2RpcmVjdG9yeS50bXAta2VlcCIsICRleHBlY3RwcmVmaXgpIHx8CisgICAgICAgICAgICAgICAgICAgIHN5c2VycihfZygiZmFpbGVkIHRvIHJlbmFtZSBzYXZlZCAlcyB0byAlcyIpLAorCSAgICAgICAgICAgICAgICAgICAiJG5ld2RpcmVjdG9yeS50bXAta2VlcCIsICRleHBlY3RwcmVmaXgpOworICAgICAgICB9CisgICAgfQorCisgICAgaWYgKCRkaWZmZmlsZSBhbmQgbm90ICRzZWxmLT57J29wdGlvbnMnfXsnc2tpcF9kZWJpYW5pemF0aW9uJ30pIHsKKyAgICAgICAgbXkgJHBhdGNoID0gIiRkc2NkaXIkZGlmZmZpbGUiOworCWluZm8oX2coImFwcGx5aW5nICVzIiksICRkaWZmZmlsZSk7CisJbXkgJHBhdGNoX29iaiA9IERwa2c6OlNvdXJjZTo6UGF0Y2gtPm5ldyhmaWxlbmFtZSA9PiAkcGF0Y2gpOworCW15ICRhbmFseXNpcyA9ICRwYXRjaF9vYmotPmFwcGx5KCRuZXdkaXJlY3RvcnksIGZvcmNlX3RpbWVzdGFtcCA9PiAxKTsKKwlteSBAZmlsZXMgPSBncmVwIHsgISBte15cUSRuZXdkaXJlY3RvcnlcRS9kZWJpYW4vfSB9CisJCSAgICBzb3J0IGtleXMgJXskYW5hbHlzaXMtPnsnZmlsZXBhdGNoZWQnfX07CisJaW5mbyhfZygidXBzdHJlYW0gZmlsZXMgdGhhdCBoYXZlIGJlZW4gbW9kaWZpZWQ6ICVzIiksCisJICAgICAiXG4gIiAuIGpvaW4oIlxuICIsIEBmaWxlcykpIGlmIHNjYWxhciBAZmlsZXM7CisgICAgfQorfQorCitzdWIgY2FuX2J1aWxkIHsKKyAgICBteSAoJHNlbGYsICRkaXIpID0gQF87CisgICAgIyBBcyBsb25nIGFzIHdlIGNhbiB1c2UgZ3ppcCwgd2UgY2FuIGRvIGl0IGFzIHdlIGhhdmUKKyAgICAjIG5hdGl2ZSBwYWNrYWdlcyBhcyBmYWxsYmFjaworICAgIHJldHVybiAoJHNlbGYtPnsnb3B0aW9ucyd9eydjb21wcmVzc2lvbid9IGVxICJnemlwIiwKKyAgICAgICAgICAgIF9nKCJvbmx5IHN1cHBvcnRzIGd6aXAgY29tcHJlc3Npb24iKSk7Cit9CisKK3N1YiBkb19idWlsZCB7CisgICAgbXkgKCRzZWxmLCAkZGlyKSA9IEBfOworICAgIG15ICRzb3VyY2VzdHlsZSA9ICRzZWxmLT57J29wdGlvbnMnfXsnc291cmNlc3R5bGUnfTsKKyAgICBteSBAYXJndiA9IEB7JHNlbGYtPnsnb3B0aW9ucyd9eydBUkdWJ319OworICAgIG15IEB0YXJfaWdub3JlID0gbWFwIHsgIi0tZXhjbHVkZT0kXyIgfSBAeyRzZWxmLT57J29wdGlvbnMnfXsndGFyX2lnbm9yZSd9fTsKKyAgICBteSAkZGlmZl9pZ25vcmVfcmVnZXhwID0gJHNlbGYtPnsnb3B0aW9ucyd9eydkaWZmX2lnbm9yZV9yZWdleHAnfTsKKworICAgIGlmIChzY2FsYXIoQGFyZ3YpID4gMSkgeworICAgICAgICB1c2FnZWVycihfZygiLWIgdGFrZXMgYXQgbW9zdCBhIGRpcmVjdG9yeSBhbmQgYW4gb3JpZyBzb3VyY2UgIi4KKyAgICAgICAgICAgICAgICAgICAgImFyZ3VtZW50ICh3aXRoIHYxLjAgc291cmNlIHBhY2thZ2UpIikpOworICAgIH0KKworICAgICRzb3VyY2VzdHlsZSA9fiB5L1gvQS87CisgICAgdW5sZXNzICgkc291cmNlc3R5bGUgPX4gbS9bYWtwdXJzbkFLUFVSXS8pIHsKKyAgICAgICAgdXNhZ2VlcnIoX2coInNvdXJjZSBoYW5kbGluZyBzdHlsZSAtcyVzIG5vdCBhbGxvd2VkIHdpdGggLWIiKSwKKyAgICAgICAgICAgICAgICAgJHNvdXJjZXN0eWxlKTsKKyAgICB9CisKKyAgICBteSAkc291cmNlcGFja2FnZSA9ICRzZWxmLT57J2ZpZWxkcyd9eydTb3VyY2UnfTsKKyAgICBteSAkYmFzZW5hbWVyZXYgPSAkc2VsZi0+Z2V0X2Jhc2VuYW1lKDEpOworICAgIG15ICRiYXNlbmFtZSA9ICRzZWxmLT5nZXRfYmFzZW5hbWUoKTsKKyAgICBteSAkYmFzZWRpcm5hbWUgPSAkYmFzZW5hbWU7CisgICAgJGJhc2VkaXJuYW1lID1+IHMvXy8tLzsKKworICAgICMgVHJ5IHRvIGZpbmQgYSAub3JpZyB0YXJiYWxsIGZvciB0aGUgcGFja2FnZQorICAgIG15ICRvcmlnZGlyID0gIiRkaXIub3JpZyI7CisgICAgbXkgJG9yaWd0YXJneiA9ICRzZWxmLT5nZXRfYmFzZW5hbWUoKSAuICIub3JpZy50YXIuZ3oiOworICAgIGlmICgtZSAkb3JpZ3Rhcmd6KSB7CisgICAgICAgIHVubGVzcyAoLWYgJG9yaWd0YXJneikgeworICAgICAgICAgICAgZXJyb3IoX2coInBhY2tlZCBvcmlnIGAlcycgZXhpc3RzIGJ1dCBpcyBub3QgYSBwbGFpbiBmaWxlIiksICRvcmlndGFyZ3opOworICAgICAgICB9CisgICAgfSBlbHNlIHsKKyAgICAgICAgJG9yaWd0YXJneiA9IHVuZGVmOworICAgIH0KKworICAgIGlmIChAYXJndikgeworCSMgV2UgaGF2ZSBhIHNlY29uZC1hcmd1bWVudCA8b3JpZy1kaXI+IG9yIDxvcmlnLXRhcmd6PiwgY2hlY2sgd2hhdCBpdAorCSMgaXMgdG8gZGVjaWRlIHRoZSBtb2RlIHRvIHVzZQorICAgICAgICBteSAkb3JpZ2FyZyA9IHNoaWZ0KEBhcmd2KTsKKyAgICAgICAgaWYgKGxlbmd0aCgkb3JpZ2FyZykpIHsKKyAgICAgICAgICAgIHN0YXQoJG9yaWdhcmcpIHx8CisgICAgICAgICAgICAgICAgc3lzZXJyKF9nKCJjYW5ub3Qgc3RhdCBvcmlnIGFyZ3VtZW50ICVzIiksICRvcmlnYXJnKTsKKyAgICAgICAgICAgIGlmICgtZCBfKSB7CisgICAgICAgICAgICAgICAgJG9yaWdkaXIgPSBGaWxlOjpTcGVjLT5jYXRkaXIoJG9yaWdhcmcpOworCisgICAgICAgICAgICAgICAgJHNvdXJjZXN0eWxlID1+IHkvYUEvclIvOworICAgICAgICAgICAgICAgIHVubGVzcyAoJHNvdXJjZXN0eWxlID1+IG0vW3Vyc1VSU10vKSB7CisgICAgICAgICAgICAgICAgICAgIGVycm9yKF9nKCJvcmlnIGFyZ3VtZW50IGlzIHVucGFja2VkIGJ1dCBzb3VyY2UgaGFuZGxpbmcgIiAuCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzdHlsZSAtcyVzIGNhbGxzIGZvciBwYWNrZWQgKC5vcmlnLnRhci48ZXh0PikiKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgJHNvdXJjZXN0eWxlKTsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9IGVsc2lmICgtZiBfKSB7CisgICAgICAgICAgICAgICAgJG9yaWd0YXJneiA9ICRvcmlnYXJnOworICAgICAgICAgICAgICAgICRzb3VyY2VzdHlsZSA9fiB5L2FBL3BQLzsKKyAgICAgICAgICAgICAgICB1bmxlc3MgKCRzb3VyY2VzdHlsZSA9fiBtL1trcHNLUFNdLykgeworICAgICAgICAgICAgICAgICAgICBlcnJvcihfZygib3JpZyBhcmd1bWVudCBpcyBwYWNrZWQgYnV0IHNvdXJjZSBoYW5kbGluZyAiIC4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInN0eWxlIC1zJXMgY2FsbHMgZm9yIHVucGFja2VkICgub3JpZy8pIiksCisgICAgICAgICAgICAgICAgICAgICAgICAgICRzb3VyY2VzdHlsZSk7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICBlcnJvcihfZygib3JpZyBhcmd1bWVudCAlcyBpcyBub3QgYSBwbGFpbiBmaWxlIG9yIGRpcmVjdG9yeSIpLAorICAgICAgICAgICAgICAgICAgICAgICRvcmlnYXJnKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICRzb3VyY2VzdHlsZSA9fiB5L2FBL25uLzsKKyAgICAgICAgICAgICRzb3VyY2VzdHlsZSA9fiBtL24vIHx8CisgICAgICAgICAgICAgICAgZXJyb3IoX2coIm9yaWcgYXJndW1lbnQgaXMgZW1wdHkgKG1lYW5zIG5vIG9yaWcsIG5vIGRpZmYpICIgLgorICAgICAgICAgICAgICAgICAgICAgICAgICJidXQgc291cmNlIGhhbmRsaW5nIHN0eWxlIC1zJXMgd2FudHMgc29tZXRoaW5nIiksCisgICAgICAgICAgICAgICAgICAgICAgJHNvdXJjZXN0eWxlKTsKKyAgICAgICAgfQorICAgIH0gZWxzaWYgKCRzb3VyY2VzdHlsZSA9fiBtL1thQV0vKSB7CisJIyBXZSBoYXZlIG5vIGV4cGxpY2l0IDxvcmlnLWRpcj4gb3IgPG9yaWctdGFyZ3o+LCB0cnkgdG8gdXNlCisJIyBhIC5vcmlnIHRhcmJhbGwgZmlyc3QsIHRoZW4gYSAub3JpZyBkaXJlY3RvcnkgYW5kIGZhbGwgYmFjayB0bworCSMgY3JlYXRpbmcgYSBuYXRpdmUgLnRhci5negorCWlmICgkb3JpZ3Rhcmd6KSB7CisJICAgICRzb3VyY2VzdHlsZSA9fiB5L2FBL3BQLzsgIyAub3JpZy50YXIuPGV4dD4KKwl9IGVsc2UgeworCSAgICBpZiAoc3RhdCgkb3JpZ2RpcikpIHsKKwkJdW5sZXNzICgtZCBfKSB7CisgICAgICAgICAgICAgICAgICAgIGVycm9yKF9nKCJ1bnBhY2tlZCBvcmlnIGAlcycgZXhpc3RzIGJ1dCBpcyBub3QgYSBkaXJlY3RvcnkiKSwKKwkJICAgICAgICAgICRvcmlnZGlyKTsKKyAgICAgICAgICAgICAgICB9CisJCSRzb3VyY2VzdHlsZSA9fiB5L2FBL3JSLzsgIyAub3JpZyBkaXJlY3RvcnkKKwkgICAgfSBlbHNpZiAoJCEgIT0gRU5PRU5UKSB7CisJCXN5c2VycihfZygidW5hYmxlIHRvIHN0YXQgcHV0YXRpdmUgdW5wYWNrZWQgb3JpZyBgJXMnIiksICRvcmlnZGlyKTsKKwkgICAgfSBlbHNlIHsKKwkJJHNvdXJjZXN0eWxlID1+IHkvYUEvbm4vOyAjIE5hdGl2ZSB0YXIuZ3oKKwkgICAgfQorCX0KKyAgICB9CisKKyAgICBteSAoJGRpcm5hbWUsICRkaXJiYXNlKSA9IGZpbGVwYXJzZSgkZGlyKTsKKyAgICBpZiAoJGRpcm5hbWUgbmUgJGJhc2VkaXJuYW1lKSB7CisJd2FybmluZyhfZygic291cmNlIGRpcmVjdG9yeSAnJXMnIGlzIG5vdCA8c291cmNlcGFja2FnZT4iIC4KKwkgICAgICAgICAgICItPHVwc3RyZWFtdmVyc2lvbj4gJyVzJyIpLCAkZGlyLCAkYmFzZWRpcm5hbWUpOworICAgIH0KKworICAgIG15ICgkdGFybmFtZSwgJHRhcmRpcm5hbWUsICR0YXJkaXJiYXNlLCAkb3JpZ2Rpcm5hbWUpOworICAgIGlmICgkc291cmNlc3R5bGUgbmUgJ24nKSB7CisJbXkgKCRvcmlnZGlybmFtZSwgJG9yaWdkaXJiYXNlKSA9IGZpbGVwYXJzZSgkb3JpZ2Rpcik7CisKKyAgICAgICAgaWYgKCRvcmlnZGlybmFtZSBuZSAiJGJhc2VkaXJuYW1lLm9yaWciKSB7CisgICAgICAgICAgICB3YXJuaW5nKF9nKCIub3JpZyBkaXJlY3RvcnkgbmFtZSAlcyBpcyBub3QgPHBhY2thZ2U+IiAuCisJICAgICAgICAgICAgICAgIi08dXBzdHJlYW12ZXJzaW9uPiAod2FudGVkICVzKSIpLAorCSAgICAgICAgICAgICRvcmlnZGlybmFtZSwgIiRiYXNlZGlybmFtZS5vcmlnIik7CisgICAgICAgIH0KKyAgICAgICAgJHRhcmRpcmJhc2UgPSAkb3JpZ2RpcmJhc2U7CisgICAgICAgICR0YXJkaXJuYW1lID0gJG9yaWdkaXJuYW1lOworCisJJHRhcm5hbWUgPSAkb3JpZ3Rhcmd6IHx8ICIkYmFzZW5hbWUub3JpZy50YXIuZ3oiOworCXVubGVzcyAoJHRhcm5hbWUgPX4gL1xRJGJhc2VuYW1lXEVcLm9yaWdcLnRhclwuZ3ovKSB7CisJICAgIHdhcm5pbmcoX2coIi5vcmlnLnRhciBuYW1lICVzIGlzIG5vdCA8cGFja2FnZT5fPHVwc3RyZWFtdmVyc2lvbj4iIC4KKwkgICAgICAgICAgICAgICAiLm9yaWcudGFyICh3YW50ZWQgJXMpIiksCisJICAgICAgICAgICAgJHRhcm5hbWUsICIkYmFzZW5hbWUub3JpZy50YXIuZ3oiKTsKKwl9CisgICAgfQorCisgICAgaWYgKCRzb3VyY2VzdHlsZSBlcSAibiIpIHsKKyAgICAgICAgJHNlbGYtPnsnb3B0aW9ucyd9eydBUkdWJ30gPSBbXTsgIyBlbnN1cmUgd2UgaGF2ZSBubyBlcnJvcgorICAgICAgICBEcGtnOjpTb3VyY2U6OlBhY2thZ2U6OlYzOjpuYXRpdmU6OmRvX2J1aWxkKCRzZWxmLCAkZGlyKTsKKyAgICB9IGVsc2lmICgkc291cmNlc3R5bGUgPX4gbS9bbnVyVVJdLykgeworICAgICAgICBpZiAoc3RhdCgkdGFybmFtZSkpIHsKKyAgICAgICAgICAgIHVubGVzcyAoJHNvdXJjZXN0eWxlID1+IG0vW25VUl0vKSB7CisJCWVycm9yKF9nKCJ0YXJmaWxlIGAlcycgYWxyZWFkeSBleGlzdHMsIG5vdCBvdmVyd3JpdGluZywgIiAuCisJCSAgICAgICAgICJnaXZpbmcgdXA7IHVzZSAtc1Ugb3IgLXNSIHRvIG92ZXJyaWRlIiksICR0YXJuYW1lKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfSBlbHNpZiAoJCEgIT0gRU5PRU5UKSB7CisJICAgIHN5c2VycihfZygidW5hYmxlIHRvIGNoZWNrIGZvciBleGlzdGVuY2Ugb2YgYCVzJyIpLCAkdGFybmFtZSk7CisgICAgICAgIH0KKworCWluZm8oX2coImJ1aWxkaW5nICVzIGluICVzIiksCisJICAgICAkc291cmNlcGFja2FnZSwgJHRhcm5hbWUpOworCisJbXkgKCRudGZoLCAkbmV3dGFyKSA9IHRlbXBmaWxlKCIkdGFybmFtZS5uZXcuWFhYWFhYIiwKKwkJCQkgICAgICAgRElSID0+IGdldGN3ZCgpLCBVTkxJTksgPT4gMCk7CisJbXkgJHRhciA9IERwa2c6OlNvdXJjZTo6QXJjaGl2ZS0+bmV3KGZpbGVuYW1lID0+ICRuZXd0YXIsCisJCSAgICBjb21wcmVzc2lvbiA9PiBjb21wcmVzc2lvbl9ndWVzc19mcm9tX2ZpbGVuYW1lKCR0YXJuYW1lKSwKKwkJICAgIGNvbXByZXNzaW9uX2xldmVsID0+ICRzZWxmLT57J29wdGlvbnMnfXsnY29tcF9sZXZlbCd9KTsKKwkkdGFyLT5jcmVhdGUob3B0aW9ucyA9PiBcQHRhcl9pZ25vcmUsICdjaGRpcicgPT4gJHRhcmRpcmJhc2UpOworCSR0YXItPmFkZF9kaXJlY3RvcnkoJHRhcmRpcm5hbWUpOworCSR0YXItPmZpbmlzaCgpOworICAgICAgICByZW5hbWUoJG5ld3RhciwgJHRhcm5hbWUpIHx8CisgICAgICAgICAgICBzeXNlcnIoX2coInVuYWJsZSB0byByZW5hbWUgYCVzJyAobmV3bHkgY3JlYXRlZCkgdG8gYCVzJyIpLAorICAgICAgICAgICAgICAgICAgICRuZXd0YXIsICR0YXJuYW1lKTsKKwljaG1vZCgwNjY2ICZ+IHVtYXNrKCksICR0YXJuYW1lKSB8fAorCSAgICBzeXNlcnIoX2coInVuYWJsZSB0byBjaGFuZ2UgcGVybWlzc2lvbiBvZiBgJXMnIiksICR0YXJuYW1lKTsKKyAgICB9IGVsc2UgeworCWluZm8oX2coImJ1aWxkaW5nICVzIHVzaW5nIGV4aXN0aW5nICVzIiksCisJICAgICAkc291cmNlcGFja2FnZSwgJHRhcm5hbWUpOworICAgIH0KKworICAgICRzZWxmLT5hZGRfZmlsZSgkdGFybmFtZSkgaWYgJHRhcm5hbWU7CisKKyAgICBpZiAoJHNvdXJjZXN0eWxlID1+IG0vW2twS1BdLykgeworICAgICAgICBpZiAoc3RhdCgkb3JpZ2RpcikpIHsKKyAgICAgICAgICAgIHVubGVzcyAoJHNvdXJjZXN0eWxlID1+IG0vW0tQXS8pIHsKKyAgICAgICAgICAgICAgICBlcnJvcihfZygib3JpZyBkaXIgYCVzJyBhbHJlYWR5IGV4aXN0cywgbm90IG92ZXJ3cml0aW5nLCAiLgorICAgICAgICAgICAgICAgICAgICAgICAgICJnaXZpbmcgdXA7IHVzZSAtc0EsIC1zSyBvciAtc1AgdG8gb3ZlcnJpZGUiKSwKKyAgICAgICAgICAgICAgICAgICAgICAkb3JpZ2Rpcik7CisgICAgICAgICAgICB9CisJICAgIHB1c2ggQERwa2c6OkV4aXQ6OmhhbmRsZXJzLCBzdWIgeyBlcmFzZWRpcigkb3JpZ2RpcikgfTsKKyAgICAgICAgICAgIGVyYXNlZGlyKCRvcmlnZGlyKTsKKwkgICAgcG9wIEBEcGtnOjpFeGl0OjpoYW5kbGVyczsKKyAgICAgICAgfSBlbHNpZiAoJCEgIT0gRU5PRU5UKSB7CisgICAgICAgICAgICBzeXNlcnIoX2coInVuYWJsZSB0byBjaGVjayBmb3IgZXhpc3RlbmNlIG9mIG9yaWcgZGlyIGAlcyciKSwKKyAgICAgICAgICAgICAgICAgICAgJG9yaWdkaXIpOworICAgICAgICB9CisKKwlteSAkdGFyID0gRHBrZzo6U291cmNlOjpBcmNoaXZlLT5uZXcoZmlsZW5hbWUgPT4gJG9yaWd0YXJneik7CisJJHRhci0+ZXh0cmFjdCgkb3JpZ2Rpcik7CisgICAgfQorCisgICAgbXkgJHVyOyAjIFVucmVwcmVzZW50YWJsZSBjaGFuZ2VzCisgICAgaWYgKCRzb3VyY2VzdHlsZSA9fiBtL1trcHVyc0tQVVJdLykgeworCW15ICRkaWZmbmFtZSA9ICIkYmFzZW5hbWVyZXYuZGlmZi5neiI7CisJaW5mbyhfZygiYnVpbGRpbmcgJXMgaW4gJXMiKSwKKwkgICAgICRzb3VyY2VwYWNrYWdlLCAkZGlmZm5hbWUpOworCW15ICgkbmRmaCwgJG5ld2RpZmZneikgPSB0ZW1wZmlsZSgiJGRpZmZuYW1lLm5ldy5YWFhYWFgiLAorCQkJCQlESVIgPT4gZ2V0Y3dkKCksIFVOTElOSyA9PiAwKTsKKyAgICAgICAgcHVzaCBARHBrZzo6RXhpdDo6aGFuZGxlcnMsIHN1YiB7IHVubGluaygkbmV3ZGlmZmd6KSB9OworICAgICAgICBteSAkZGlmZiA9IERwa2c6OlNvdXJjZTo6UGF0Y2gtPm5ldyhmaWxlbmFtZSA9PiAkbmV3ZGlmZmd6LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb21wcmVzc2lvbiA9PiAiZ3ppcCIpOworICAgICAgICAkZGlmZi0+Y3JlYXRlKCk7CisgICAgICAgICRkaWZmLT5hZGRfZGlmZl9kaXJlY3RvcnkoJG9yaWdkaXIsICRkaXIsCisgICAgICAgICAgICAgICAgYmFzZWRpcm5hbWUgPT4gJGJhc2VkaXJuYW1lLAorICAgICAgICAgICAgICAgIGRpZmZfaWdub3JlX3JlZ2V4cCA9PiAkZGlmZl9pZ25vcmVfcmVnZXhwLAorICAgICAgICAgICAgICAgIG9wdGlvbnMgPT4gW10pOyAjIEZvcmNlIGVtcHR5IHNldCBvZiBvcHRpb25zIHRvIGRyb3AgdGhlCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgZGVmYXVsdCAtcCBvcHRpb24KKyAgICAgICAgJGRpZmYtPmZpbmlzaCgpIHx8ICR1cisrOworICAgICAgICBwb3AgQERwa2c6OkV4aXQ6OmhhbmRsZXJzOworCisJbXkgJGFuYWx5c2lzID0gJGRpZmYtPmFuYWx5emUoJG9yaWdkaXIpOworCW15IEBmaWxlcyA9IGdyZXAgeyAhIG17XmRlYmlhbi99IH0gbWFwIHsgc3teW14vXSsvK317fTsgJF8gfQorCQkgICAgc29ydCBrZXlzICV7JGFuYWx5c2lzLT57J2ZpbGVwYXRjaGVkJ319OworCWlmIChzY2FsYXIgQGZpbGVzKSB7CisJICAgIHdhcm5pbmcoX2coInRoZSBkaWZmIG1vZGlmaWVzIHRoZSBmb2xsb3dpbmcgdXBzdHJlYW0gZmlsZXM6ICVzIiksCisJICAgICAgICAgICAgIlxuICIgLiBqb2luKCJcbiAiLCBAZmlsZXMpKTsKKwkgICAgaW5mbyhfZygidXNlIHRoZSAnMy4wIChxdWlsdCknIGZvcm1hdCB0byBoYXZlIHNlcGFyYXRlIGFuZCAiIC4KKwkgICAgICAgICAgICAiZG9jdW1lbnRlZCBjaGFuZ2VzIHRvIHVwc3RyZWFtIGZpbGVzLCBzZWUgZHBrZy1zb3VyY2UoMSkiKSk7CisJICAgIGVycm9yKF9nKCJhYm9ydGluZyBkdWUgdG8gLS1hYm9ydC1vbi11cHN0cmVhbS1jaGFuZ2VzIikpCisJCWlmICRzZWxmLT57J29wdGlvbnMnfXsnYWJvcnRfb25fdXBzdHJlYW1fY2hhbmdlcyd9OworCX0KKworCXJlbmFtZSgkbmV3ZGlmZmd6LCAkZGlmZm5hbWUpIHx8CisJICAgIHN5c2VycihfZygidW5hYmxlIHRvIHJlbmFtZSBgJXMnIChuZXdseSBjcmVhdGVkKSB0byBgJXMnIiksCisJICAgICAgICAgICAkbmV3ZGlmZmd6LCAkZGlmZm5hbWUpOworCWNobW9kKDA2NjYgJn4gdW1hc2soKSwgJGRpZmZuYW1lKSB8fAorCSAgICBzeXNlcnIoX2coInVuYWJsZSB0byBjaGFuZ2UgcGVybWlzc2lvbiBvZiBgJXMnIiksICRkaWZmbmFtZSk7CisKKwkkc2VsZi0+YWRkX2ZpbGUoJGRpZmZuYW1lKTsKKyAgICB9CisKKyAgICBpZiAoJHNvdXJjZXN0eWxlID1+IG0vW3ByUFJdLykgeworICAgICAgICBlcmFzZWRpcigkb3JpZ2Rpcik7CisgICAgfQorCisgICAgaWYgKCR1cikgeworICAgICAgICBwcmludGYoU1RERVJSIF9nKCIlczogdW5yZXByZXNlbnRhYmxlIGNoYW5nZXMgdG8gc291cmNlIikuIlxuIiwKKyAgICAgICAgICAgICAgICRwcm9nbmFtZSk7CisgICAgICAgIGV4aXQoMSk7CisgICAgfQorfQorCisjIHZpbTogc2V0IGV0IHN3PTQgdHM9OAorMTsKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODkxMTU4ZAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtCkBAIC0wLDAgKzEsNjU3IEBACisjIENvcHlyaWdodCDCqSAyMDA4LTIwMTEgUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorIworIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorIworIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorIworIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKworcGFja2FnZSBEcGtnOjpTb3VyY2U6OlBhY2thZ2U6OlYyOworCit1c2Ugc3RyaWN0OwordXNlIHdhcm5pbmdzOworCitvdXIgJFZFUlNJT04gPSAiMC4wMSI7CisKK3VzZSBiYXNlICdEcGtnOjpTb3VyY2U6OlBhY2thZ2UnOworCit1c2UgRHBrZzsKK3VzZSBEcGtnOjpHZXR0ZXh0OwordXNlIERwa2c6OkVycm9ySGFuZGxpbmc7Cit1c2UgRHBrZzo6Q29tcHJlc3Npb247Cit1c2UgRHBrZzo6U291cmNlOjpBcmNoaXZlOwordXNlIERwa2c6OlNvdXJjZTo6UGF0Y2g7Cit1c2UgRHBrZzo6RXhpdDsKK3VzZSBEcGtnOjpTb3VyY2U6OkZ1bmN0aW9ucyBxdyhlcmFzZWRpciBpc19iaW5hcnkgZnNfdGltZSk7Cit1c2UgRHBrZzo6VmVuZG9yIHF3KHJ1bl92ZW5kb3JfaG9vayk7Cit1c2UgRHBrZzo6Q29udHJvbDsKK3VzZSBEcGtnOjpDaGFuZ2Vsb2c6OlBhcnNlOworCit1c2UgUE9TSVg7Cit1c2UgRmlsZTo6QmFzZW5hbWU7Cit1c2UgRmlsZTo6VGVtcCBxdyh0ZW1wZmlsZSB0ZW1wZGlyKTsKK3VzZSBGaWxlOjpQYXRoOwordXNlIEZpbGU6OlNwZWM7Cit1c2UgRmlsZTo6RmluZDsKK3VzZSBGaWxlOjpDb3B5OworCitvdXIgJENVUlJFTlRfTUlOT1JfVkVSU0lPTiA9ICIwIjsKKworc3ViIGluaXRfb3B0aW9ucyB7CisgICAgbXkgKCRzZWxmKSA9IEBfOworICAgICRzZWxmLT5TVVBFUjo6aW5pdF9vcHRpb25zKCk7CisgICAgJHNlbGYtPnsnb3B0aW9ucyd9eydpbmNsdWRlX3JlbW92YWwnfSA9IDAKKyAgICAgICAgdW5sZXNzIGV4aXN0cyAkc2VsZi0+eydvcHRpb25zJ317J2luY2x1ZGVfcmVtb3ZhbCd9OworICAgICRzZWxmLT57J29wdGlvbnMnfXsnaW5jbHVkZV90aW1lc3RhbXAnfSA9IDAKKyAgICAgICAgdW5sZXNzIGV4aXN0cyAkc2VsZi0+eydvcHRpb25zJ317J2luY2x1ZGVfdGltZXN0YW1wJ307CisgICAgJHNlbGYtPnsnb3B0aW9ucyd9eydpbmNsdWRlX2JpbmFyaWVzJ30gPSAwCisgICAgICAgIHVubGVzcyBleGlzdHMgJHNlbGYtPnsnb3B0aW9ucyd9eydpbmNsdWRlX2JpbmFyaWVzJ307CisgICAgJHNlbGYtPnsnb3B0aW9ucyd9eydwcmVwYXJhdGlvbid9ID0gMQorICAgICAgICB1bmxlc3MgZXhpc3RzICRzZWxmLT57J29wdGlvbnMnfXsncHJlcGFyYXRpb24nfTsKKyAgICAkc2VsZi0+eydvcHRpb25zJ317J3NraXBfcGF0Y2hlcyd9ID0gMAorICAgICAgICB1bmxlc3MgZXhpc3RzICRzZWxmLT57J29wdGlvbnMnfXsnc2tpcF9wYXRjaGVzJ307CisgICAgJHNlbGYtPnsnb3B0aW9ucyd9eyd1bmFwcGx5X3BhdGNoZXMnfSA9IDAKKyAgICAgICAgdW5sZXNzIGV4aXN0cyAkc2VsZi0+eydvcHRpb25zJ317J3VuYXBwbHlfcGF0Y2hlcyd9OworICAgICRzZWxmLT57J29wdGlvbnMnfXsnc2tpcF9kZWJpYW5pemF0aW9uJ30gPSAwCisgICAgICAgIHVubGVzcyBleGlzdHMgJHNlbGYtPnsnb3B0aW9ucyd9eydza2lwX2RlYmlhbml6YXRpb24nfTsKKyAgICAkc2VsZi0+eydvcHRpb25zJ317J2NyZWF0ZV9lbXB0eV9vcmlnJ30gPSAwCisgICAgICAgIHVubGVzcyBleGlzdHMgJHNlbGYtPnsnb3B0aW9ucyd9eydjcmVhdGVfZW1wdHlfb3JpZyd9OworICAgICRzZWxmLT57J29wdGlvbnMnfXsnYXV0b19jb21taXQnfSA9IDAKKyAgICAgICAgdW5sZXNzIGV4aXN0cyAkc2VsZi0+eydvcHRpb25zJ317J2F1dG9fY29tbWl0J307Cit9CisKK3N1YiBwYXJzZV9jbWRsaW5lX29wdGlvbiB7CisgICAgbXkgKCRzZWxmLCAkb3B0KSA9IEBfOworICAgIGlmICgkb3B0ID1+IC9eLS1pbmNsdWRlLXJlbW92YWwkLykgeworICAgICAgICAkc2VsZi0+eydvcHRpb25zJ317J2luY2x1ZGVfcmVtb3ZhbCd9ID0gMTsKKyAgICAgICAgcmV0dXJuIDE7CisgICAgfSBlbHNpZiAoJG9wdCA9fiAvXi0taW5jbHVkZS10aW1lc3RhbXAkLykgeworICAgICAgICAkc2VsZi0+eydvcHRpb25zJ317J2luY2x1ZGVfdGltZXN0YW1wJ30gPSAxOworICAgICAgICByZXR1cm4gMTsKKyAgICB9IGVsc2lmICgkb3B0ID1+IC9eLS1pbmNsdWRlLWJpbmFyaWVzJC8pIHsKKyAgICAgICAgJHNlbGYtPnsnb3B0aW9ucyd9eydpbmNsdWRlX2JpbmFyaWVzJ30gPSAxOworICAgICAgICByZXR1cm4gMTsKKyAgICB9IGVsc2lmICgkb3B0ID1+IC9eLS1uby1wcmVwYXJhdGlvbiQvKSB7CisgICAgICAgICRzZWxmLT57J29wdGlvbnMnfXsncHJlcGFyYXRpb24nfSA9IDA7CisgICAgICAgIHJldHVybiAxOworICAgIH0gZWxzaWYgKCRvcHQgPX4gL14tLXNraXAtcGF0Y2hlcyQvKSB7CisgICAgICAgICRzZWxmLT57J29wdGlvbnMnfXsnc2tpcF9wYXRjaGVzJ30gPSAxOworICAgICAgICByZXR1cm4gMTsKKyAgICB9IGVsc2lmICgkb3B0ID1+IC9eLS11bmFwcGx5LXBhdGNoZXMkLykgeworICAgICAgICAkc2VsZi0+eydvcHRpb25zJ317J3VuYXBwbHlfcGF0Y2hlcyd9ID0gMTsKKyAgICAgICAgcmV0dXJuIDE7CisgICAgfSBlbHNpZiAoJG9wdCA9fiAvXi0tc2tpcC1kZWJpYW5pemF0aW9uJC8pIHsKKyAgICAgICAgJHNlbGYtPnsnb3B0aW9ucyd9eydza2lwX2RlYmlhbml6YXRpb24nfSA9IDE7CisgICAgICAgIHJldHVybiAxOworICAgIH0gZWxzaWYgKCRvcHQgPX4gL14tLWNyZWF0ZS1lbXB0eS1vcmlnJC8pIHsKKyAgICAgICAgJHNlbGYtPnsnb3B0aW9ucyd9eydjcmVhdGVfZW1wdHlfb3JpZyd9ID0gMTsKKyAgICAgICAgcmV0dXJuIDE7CisgICAgfSBlbHNpZiAoJG9wdCA9fiAvXi0tYWJvcnQtb24tdXBzdHJlYW0tY2hhbmdlcyQvKSB7CisgICAgICAgICRzZWxmLT57J29wdGlvbnMnfXsnYXV0b19jb21taXQnfSA9IDA7CisgICAgICAgIHJldHVybiAxOworICAgIH0gZWxzaWYgKCRvcHQgPX4gL14tLWF1dG8tY29tbWl0JC8pIHsKKyAgICAgICAgJHNlbGYtPnsnb3B0aW9ucyd9eydhdXRvX2NvbW1pdCd9ID0gMTsKKyAgICAgICAgcmV0dXJuIDE7CisgICAgfQorICAgIHJldHVybiAwOworfQorCitzdWIgZG9fZXh0cmFjdCB7CisgICAgbXkgKCRzZWxmLCAkbmV3ZGlyZWN0b3J5KSA9IEBfOworICAgIG15ICRmaWVsZHMgPSAkc2VsZi0+eydmaWVsZHMnfTsKKworICAgIG15ICRkc2NkaXIgPSAkc2VsZi0+eydiYXNlZGlyJ307CisKKyAgICBteSAkYmFzZW5hbWUgPSAkc2VsZi0+Z2V0X2Jhc2VuYW1lKCk7CisgICAgbXkgJGJhc2VuYW1lcmV2ID0gJHNlbGYtPmdldF9iYXNlbmFtZSgxKTsKKworICAgIG15ICgkdGFyZmlsZSwgJGRlYmlhbmZpbGUsICVvcmlndGFyLCAlc2Vlbik7CisgICAgbXkgJHJlX2V4dCA9ICRjb21wcmVzc2lvbl9yZV9maWxlX2V4dDsKKyAgICBmb3JlYWNoIG15ICRmaWxlICgkc2VsZi0+Z2V0X2ZpbGVzKCkpIHsKKyAgICAgICAgKG15ICR1bmNvbXByZXNzZWQgPSAkZmlsZSkgPX4gcy9cLiRyZV9leHQkLy87CisgICAgICAgIGVycm9yKF9nKCJkdXBsaWNhdGUgZmlsZXMgaW4gJXMgc291cmNlIHBhY2thZ2U6ICVzLioiKSwgInYyLjAiLAorICAgICAgICAgICAgICAkdW5jb21wcmVzc2VkKSBpZiAkc2VlbnskdW5jb21wcmVzc2VkfTsKKyAgICAgICAgJHNlZW57JHVuY29tcHJlc3NlZH0gPSAxOworICAgICAgICBpZiAoJGZpbGUgPX4gL15cUSRiYXNlbmFtZVxFXC5vcmlnXC50YXJcLiRyZV9leHQkLykgeworICAgICAgICAgICAgJHRhcmZpbGUgPSAkZmlsZTsKKyAgICAgICAgfSBlbHNpZiAoJGZpbGUgPX4gL15cUSRiYXNlbmFtZVxFXC5vcmlnLShbWzphbG51bTpdLV0rKVwudGFyXC4kcmVfZXh0JC8pIHsKKyAgICAgICAgICAgICRvcmlndGFyeyQxfSA9ICRmaWxlOworICAgICAgICB9IGVsc2lmICgkZmlsZSA9fiAvXlxRJGJhc2VuYW1lcmV2XEVcLmRlYmlhblwudGFyXC4kcmVfZXh0JC8pIHsKKyAgICAgICAgICAgICRkZWJpYW5maWxlID0gJGZpbGU7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICBlcnJvcihfZygidW5yZWNvZ25pemVkIGZpbGUgZm9yIGEgJXMgc291cmNlIHBhY2thZ2U6ICVzIiksCisgICAgICAgICAgICAidjIuMCIsICRmaWxlKTsKKyAgICAgICAgfQorICAgIH0KKworICAgIHVubGVzcyAoJHRhcmZpbGUgYW5kICRkZWJpYW5maWxlKSB7CisgICAgICAgIGVycm9yKF9nKCJtaXNzaW5nIG9yaWcudGFyIG9yIGRlYmlhbi50YXIgZmlsZSBpbiB2Mi4wIHNvdXJjZSBwYWNrYWdlIikpOworICAgIH0KKworICAgIGVyYXNlZGlyKCRuZXdkaXJlY3RvcnkpOworCisgICAgIyBFeHRyYWN0IG1haW4gdGFyYmFsbAorICAgIGluZm8oX2coInVucGFja2luZyAlcyIpLCAkdGFyZmlsZSk7CisgICAgbXkgJHRhciA9IERwa2c6OlNvdXJjZTo6QXJjaGl2ZS0+bmV3KGZpbGVuYW1lID0+ICIkZHNjZGlyJHRhcmZpbGUiKTsKKyAgICAkdGFyLT5leHRyYWN0KCRuZXdkaXJlY3RvcnksIG5vX2ZpeHBlcm1zID0+IDEsCisgICAgICAgICAgICAgICAgICBvcHRpb25zID0+IFsgIi0tYW5jaG9yZWQiLCAiLS1uby13aWxkY2FyZHMtbWF0Y2gtc2xhc2giLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICItLWV4Y2x1ZGUiLCAiKi8ucGMiLCAiLS1leGNsdWRlIiwgIi5wYyIgXSk7CisgICAgIyBUaGUgLnBjIGV4Y2x1c2lvbiBpcyBvbmx5IG5lZWRlZCBmb3IgMy4wIChxdWlsdCkgYW5kIHRvIGF2b2lkCisgICAgIyBoYXZpbmcgYW4gdXBzdHJlYW0gdGFyYmFsbCBwcm92aWRlIGEgZGlyZWN0b3J5IHdpdGggc3ltbGlua3MKKyAgICAjIHRoYXQgd291bGQgYmUgYmxpbmRseSBmb2xsb3dlZCB3aGVuIGFwcGx5aW5nIHRoZSBwYXRjaGVzCisKKyAgICAjIEV4dHJhY3QgYWRkaXRpb25hbCBvcmlnIHRhcmJhbGxzCisgICAgZm9yZWFjaCBteSAkc3ViZGlyIChrZXlzICVvcmlndGFyKSB7CisgICAgICAgIG15ICRmaWxlID0gJG9yaWd0YXJ7JHN1YmRpcn07CisgICAgICAgIGluZm8oX2coInVucGFja2luZyAlcyIpLCAkZmlsZSk7CisgICAgICAgIGlmICgtZSAiJG5ld2RpcmVjdG9yeS8kc3ViZGlyIikgeworICAgICAgICAgICAgd2FybmluZyhfZygicmVxdWlyZWQgcmVtb3ZhbCBvZiBgJXMnIGluc3RhbGxlZCBieSBvcmlnaW5hbCB0YXJiYWxsIiksICRzdWJkaXIpOworICAgICAgICAgICAgZXJhc2VkaXIoIiRuZXdkaXJlY3RvcnkvJHN1YmRpciIpOworICAgICAgICB9CisgICAgICAgICR0YXIgPSBEcGtnOjpTb3VyY2U6OkFyY2hpdmUtPm5ldyhmaWxlbmFtZSA9PiAiJGRzY2RpciRmaWxlIik7CisgICAgICAgICR0YXItPmV4dHJhY3QoIiRuZXdkaXJlY3RvcnkvJHN1YmRpciIsIG5vX2ZpeHBlcm1zID0+IDEpOworICAgIH0KKworICAgICMgU3RvcCBoZXJlIGlmIGRlYmlhbml6YXRpb24gaXMgbm90IHdhbnRlZAorICAgIHJldHVybiBpZiAkc2VsZi0+eydvcHRpb25zJ317J3NraXBfZGViaWFuaXphdGlvbid9OworCisgICAgIyBFeHRyYWN0IGRlYmlhbiB0YXJiYWxsIGFmdGVyIHJlbW92aW5nIHRoZSBkZWJpYW4gZGlyZWN0b3J5CisgICAgaW5mbyhfZygidW5wYWNraW5nICVzIiksICRkZWJpYW5maWxlKTsKKyAgICBlcmFzZWRpcigiJG5ld2RpcmVjdG9yeS9kZWJpYW4iKTsKKyAgICAjIEV4Y2x1ZGUgZXhpc3Rpbmcgc3ltbGlua3MgZnJvbSBleHRyYWN0aW9uIG9mIGRlYmlhbi50YXIuZ3ogYXMgd2UKKyAgICAjIGRvbid0IHdhbnQgdG8gb3ZlcndyaXRlIHNvbWV0aGluZyBvdXRzaWRlIG9mICRuZXdkaXJlY3RvcnkgZHVlIHRvIGEKKyAgICAjIHN5bWxpbmsKKyAgICBteSBAZXhjbHVkZV9zeW1saW5rczsKKyAgICBteSAkd2FudGVkID0gc3ViIHsKKyAgICAgICAgcmV0dXJuIGlmIG5vdCAtbCAkXzsKKyAgICAgICAgbXkgJGZuID0gRmlsZTo6U3BlYy0+YWJzMnJlbCgkXywgJG5ld2RpcmVjdG9yeSk7CisgICAgICAgIHB1c2ggQGV4Y2x1ZGVfc3ltbGlua3MsICItLWV4Y2x1ZGUiLCAkZm47CisgICAgfTsKKyAgICBmaW5kKHsgd2FudGVkID0+ICR3YW50ZWQsIG5vX2NoZGlyID0+IDEgfSwgJG5ld2RpcmVjdG9yeSk7CisgICAgJHRhciA9IERwa2c6OlNvdXJjZTo6QXJjaGl2ZS0+bmV3KGZpbGVuYW1lID0+ICIkZHNjZGlyJGRlYmlhbmZpbGUiKTsKKyAgICAkdGFyLT5leHRyYWN0KCRuZXdkaXJlY3RvcnksIGluX3BsYWNlID0+IDEsCisgICAgICAgICAgICAgICAgICBvcHRpb25zID0+IFsgJy0tYW5jaG9yZWQnLCAnLS1uby13aWxkY2FyZHMnLAorICAgICAgICAgICAgICAgICAgQGV4Y2x1ZGVfc3ltbGlua3MgXSk7CisKKyAgICAjIEFwcGx5IHBhdGNoZXMgKGluIGEgc2VwYXJhdGUgbWV0aG9kIGFzIGl0IG1pZ2h0IGJlIG92ZXJyaWRlbikKKyAgICAkc2VsZi0+YXBwbHlfcGF0Y2hlcygkbmV3ZGlyZWN0b3J5LCB1c2FnZSA9PiAndW5wYWNrJykKKyAgICAgICAgdW5sZXNzICRzZWxmLT57J29wdGlvbnMnfXsnc2tpcF9wYXRjaGVzJ307Cit9CisKK3N1YiBnZXRfYXV0b3BhdGNoX25hbWUgeworICAgIHJldHVybiAienpfZGViaWFuLWRpZmYtYXV0byI7Cit9CisKK3N1YiBnZXRfcGF0Y2hlcyB7CisgICAgbXkgKCRzZWxmLCAkZGlyLCAlb3B0cykgPSBAXzsKKyAgICAkb3B0c3sic2tpcF9hdXRvIn0gPSAwIHVubGVzcyBkZWZpbmVkKCRvcHRzeyJza2lwX2F1dG8ifSk7CisgICAgbXkgQHBhdGNoZXM7CisgICAgbXkgJHBkID0gIiRkaXIvZGViaWFuL3BhdGNoZXMiOworICAgIG15ICRhdXRvX3BhdGNoID0gJHNlbGYtPmdldF9hdXRvcGF0Y2hfbmFtZSgpOworICAgIGlmICgtZCAkcGQpIHsKKyAgICAgICAgb3BlbmRpcihESVIsICRwZCkgfHwgc3lzZXJyKF9nKCJjYW5ub3Qgb3BlbmRpciAlcyIpLCAkcGQpOworICAgICAgICBmb3JlYWNoIG15ICRwYXRjaCAoc29ydCByZWFkZGlyKERJUikpIHsKKyAgICAgICAgICAgICMgcGF0Y2hlcyBtYXRjaCBzYW1lIHJ1bGVzIGFzIHJ1bi1wYXJ0cworICAgICAgICAgICAgbmV4dCB1bmxlc3MgJHBhdGNoID1+IC9eW1x3LV0rJC8gYW5kIC1mICIkcGQvJHBhdGNoIjsKKyAgICAgICAgICAgIG5leHQgaWYgJG9wdHN7InNraXBfYXV0byJ9IGFuZCAkcGF0Y2ggZXEgJGF1dG9fcGF0Y2g7CisgICAgICAgICAgICBwdXNoIEBwYXRjaGVzLCAkcGF0Y2g7CisgICAgICAgIH0KKyAgICAgICAgY2xvc2VkaXIoRElSKTsKKyAgICB9CisgICAgcmV0dXJuIEBwYXRjaGVzOworfQorCitzdWIgYXBwbHlfcGF0Y2hlcyB7CisgICAgbXkgKCRzZWxmLCAkZGlyLCAlb3B0cykgPSBAXzsKKyAgICAkb3B0c3sic2tpcF9hdXRvIn0gPSAwIHVubGVzcyBkZWZpbmVkKCRvcHRzeyJza2lwX2F1dG8ifSk7CisgICAgbXkgQHBhdGNoZXMgPSAkc2VsZi0+Z2V0X3BhdGNoZXMoJGRpciwgJW9wdHMpOworICAgIHJldHVybiB1bmxlc3Mgc2NhbGFyKEBwYXRjaGVzKTsKKyAgICBteSAkYXBwbGllZCA9IEZpbGU6OlNwZWMtPmNhdGZpbGUoJGRpciwgImRlYmlhbiIsICJwYXRjaGVzIiwgIi5kcGtnLXNvdXJjZS1hcHBsaWVkIik7CisgICAgb3BlbihBUFBMSUVELCAnPicsICRhcHBsaWVkKSB8fCBzeXNlcnIoX2coImNhbm5vdCB3cml0ZSAlcyIpLCAkYXBwbGllZCk7CisgICAgcHJpbnQgQVBQTElFRCAiIyBEdXJpbmcgJG9wdHN7J3VzYWdlJ31cbiI7CisgICAgbXkgJHRpbWVzdGFtcCA9IGZzX3RpbWUoJGFwcGxpZWQpOworICAgIGZvcmVhY2ggbXkgJHBhdGNoICgkc2VsZi0+Z2V0X3BhdGNoZXMoJGRpciwgJW9wdHMpKSB7CisgICAgICAgIG15ICRwYXRoID0gRmlsZTo6U3BlYy0+Y2F0ZmlsZSgkZGlyLCAiZGViaWFuIiwgInBhdGNoZXMiLCAkcGF0Y2gpOworICAgICAgICBpbmZvKF9nKCJhcHBseWluZyAlcyIpLCAkcGF0Y2gpIHVubGVzcyAkb3B0c3sic2tpcF9hdXRvIn07CisgICAgICAgIG15ICRwYXRjaF9vYmogPSBEcGtnOjpTb3VyY2U6OlBhdGNoLT5uZXcoZmlsZW5hbWUgPT4gJHBhdGgpOworICAgICAgICAkcGF0Y2hfb2JqLT5hcHBseSgkZGlyLCBmb3JjZV90aW1lc3RhbXAgPT4gMSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgdGltZXN0YW1wID0+ICR0aW1lc3RhbXAsCisgICAgICAgICAgICAgICAgICAgICAgICAgIGFkZF9vcHRpb25zID0+IFsgJy1FJyBdKTsKKyAgICAgICAgcHJpbnQgQVBQTElFRCAiJHBhdGNoXG4iOworICAgIH0KKyAgICBjbG9zZShBUFBMSUVEKTsKK30KKworc3ViIHVuYXBwbHlfcGF0Y2hlcyB7CisgICAgbXkgKCRzZWxmLCAkZGlyLCAlb3B0cykgPSBAXzsKKyAgICBteSBAcGF0Y2hlcyA9IHJldmVyc2UoJHNlbGYtPmdldF9wYXRjaGVzKCRkaXIsICVvcHRzKSk7CisgICAgcmV0dXJuIHVubGVzcyBzY2FsYXIoQHBhdGNoZXMpOworICAgIG15ICRhcHBsaWVkID0gRmlsZTo6U3BlYy0+Y2F0ZmlsZSgkZGlyLCAiZGViaWFuIiwgInBhdGNoZXMiLCAiLmRwa2ctc291cmNlLWFwcGxpZWQiKTsKKyAgICBteSAkdGltZXN0YW1wID0gZnNfdGltZSgkYXBwbGllZCk7CisgICAgZm9yZWFjaCBteSAkcGF0Y2ggKEBwYXRjaGVzKSB7CisgICAgICAgIG15ICRwYXRoID0gRmlsZTo6U3BlYy0+Y2F0ZmlsZSgkZGlyLCAiZGViaWFuIiwgInBhdGNoZXMiLCAkcGF0Y2gpOworICAgICAgICBpbmZvKF9nKCJ1bmFwcGx5aW5nICVzIiksICRwYXRjaCkgdW5sZXNzICRvcHRzeyJxdWlldCJ9OworICAgICAgICBteSAkcGF0Y2hfb2JqID0gRHBrZzo6U291cmNlOjpQYXRjaC0+bmV3KGZpbGVuYW1lID0+ICRwYXRoKTsKKyAgICAgICAgJHBhdGNoX29iai0+YXBwbHkoJGRpciwgZm9yY2VfdGltZXN0YW1wID0+IDEsIHZlcmJvc2UgPT4gMCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgdGltZXN0YW1wID0+ICR0aW1lc3RhbXAsCisgICAgICAgICAgICAgICAgICAgICAgICAgIGFkZF9vcHRpb25zID0+IFsgJy1FJywgJy1SJyBdKTsKKyAgICB9CisgICAgdW5saW5rKCRhcHBsaWVkKTsKK30KKworc3ViIHVwc3RyZWFtX3RhcmJhbGxfdGVtcGxhdGUgeworICAgIG15ICgkc2VsZikgPSBAXzsKKyAgICBteSAkZXh0ID0gInsiIC4gam9pbigiLCIsCisgICAgICAgIHNvcnQgbWFwIHsKKyAgICAgICAgICAgIGNvbXByZXNzaW9uX2dldF9wcm9wZXJ0eSgkXywgImZpbGVfZXh0IikKKyAgICAgICAgfSBjb21wcmVzc2lvbl9nZXRfbGlzdCgpKSAuICJ9IjsKKyAgICByZXR1cm4gIi4uLyIgLiAkc2VsZi0+Z2V0X2Jhc2VuYW1lKCkgLiAiLm9yaWcudGFyLiRleHQiOworfQorCitzdWIgY2FuX2J1aWxkIHsKKyAgICBteSAoJHNlbGYsICRkaXIpID0gQF87CisgICAgcmV0dXJuIDEgaWYgJHNlbGYtPmZpbmRfb3JpZ2luYWxfdGFyYmFsbHMoaW5jbHVkZV9zdXBwbGVtZW50YXJ5ID0+IDApOworICAgIHJldHVybiAxIGlmICRzZWxmLT57J29wdGlvbnMnfXsnY3JlYXRlX2VtcHR5X29yaWcnfSBhbmQKKyAgICAgICAgICAgICAgICAkc2VsZi0+ZmluZF9vcmlnaW5hbF90YXJiYWxscyhpbmNsdWRlX21haW4gPT4gMCk7CisgICAgcmV0dXJuICgwLCBzcHJpbnRmKF9nKCJubyB1cHN0cmVhbSB0YXJiYWxsIGZvdW5kIGF0ICVzIiksCisgICAgICAgICAgICAgICAgICAgICAgICRzZWxmLT51cHN0cmVhbV90YXJiYWxsX3RlbXBsYXRlKCkpKTsKK30KKworc3ViIGJlZm9yZV9idWlsZCB7CisgICAgbXkgKCRzZWxmLCAkZGlyKSA9IEBfOworICAgICRzZWxmLT5jaGVja19wYXRjaGVzX2FwcGxpZWQoJGRpcikgaWYgJHNlbGYtPnsnb3B0aW9ucyd9eydwcmVwYXJhdGlvbid9OworfQorCitzdWIgYWZ0ZXJfYnVpbGQgeworICAgIG15ICgkc2VsZiwgJGRpcikgPSBAXzsKKyAgICBteSAkYXBwbGllZCA9IEZpbGU6OlNwZWMtPmNhdGZpbGUoJGRpciwgImRlYmlhbiIsICJwYXRjaGVzIiwgIi5kcGtnLXNvdXJjZS1hcHBsaWVkIik7CisgICAgbXkgJHJlYXNvbiA9ICIiOworICAgIGlmICgtZSAkYXBwbGllZCkgeworICAgICAgICBvcGVuKEFQUExJRUQsICI8IiwgJGFwcGxpZWQpIHx8IHN5c2VycihfZygiY2Fubm90IHJlYWQgJXMiKSwgJGFwcGxpZWQpOworICAgICAgICAkcmVhc29uID0gPEFQUExJRUQ+OworICAgICAgICBjbG9zZShBUFBMSUVEKTsKKyAgICB9CisgICAgaWYgKCRyZWFzb24gPX4gL14jIER1cmluZyBwcmVwYXJhdGlvbi8gb3IKKyAgICAgICAgJHNlbGYtPnsnb3B0aW9ucyd9eyd1bmFwcGx5X3BhdGNoZXMnfSkgeworICAgICAgICAkc2VsZi0+dW5hcHBseV9wYXRjaGVzKCRkaXIpOworICAgIH0KK30KKworc3ViIHByZXBhcmVfYnVpbGQgeworICAgIG15ICgkc2VsZiwgJGRpcikgPSBAXzsKKyAgICAkc2VsZi0+eydkaWZmX29wdGlvbnMnfSA9IHsKKyAgICAgICAgZGlmZl9pZ25vcmVfcmVnZXhwID0+ICRzZWxmLT57J29wdGlvbnMnfXsnZGlmZl9pZ25vcmVfcmVnZXhwJ30gLgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3woXnwvKWRlYmlhbi9wYXRjaGVzLy5kcGtnLXNvdXJjZS1hcHBsaWVkJCcsCisgICAgICAgIGluY2x1ZGVfcmVtb3ZhbCA9PiAkc2VsZi0+eydvcHRpb25zJ317J2luY2x1ZGVfcmVtb3ZhbCd9LAorICAgICAgICBpbmNsdWRlX3RpbWVzdGFtcCA9PiAkc2VsZi0+eydvcHRpb25zJ317J2luY2x1ZGVfdGltZXN0YW1wJ30sCisgICAgICAgIHVzZV9kZXZfbnVsbCA9PiAxLAorICAgIH07CisgICAgcHVzaCBAeyRzZWxmLT57J29wdGlvbnMnfXsndGFyX2lnbm9yZSd9fSwgImRlYmlhbi9wYXRjaGVzLy5kcGtnLXNvdXJjZS1hcHBsaWVkIjsKKyAgICAkc2VsZi0+Y2hlY2tfcGF0Y2hlc19hcHBsaWVkKCRkaXIpIGlmICRzZWxmLT57J29wdGlvbnMnfXsncHJlcGFyYXRpb24nfTsKKyAgICBpZiAoJHNlbGYtPnsnb3B0aW9ucyd9eydjcmVhdGVfZW1wdHlfb3JpZyd9IGFuZAorICAgICAgICBub3QgJHNlbGYtPmZpbmRfb3JpZ2luYWxfdGFyYmFsbHMoaW5jbHVkZV9zdXBwbGVtZW50YXJ5ID0+IDApKQorICAgIHsKKyAgICAgICAgIyBObyBtYWluIG9yaWcudGFyLCBjcmVhdGUgYSBkdW1teSBvbmUKKyAgICAgICAgbXkgJGZpbGVuYW1lID0gJHNlbGYtPmdldF9iYXNlbmFtZSgpIC4gIi5vcmlnLnRhci4iIC4KKyAgICAgICAgICAgICAgICAgICAgICAgJHNlbGYtPnsnb3B0aW9ucyd9eydjb21wX2V4dCd9OworICAgICAgICBteSAkdGFyID0gRHBrZzo6U291cmNlOjpBcmNoaXZlLT5uZXcoZmlsZW5hbWUgPT4gJGZpbGVuYW1lKTsKKyAgICAgICAgJHRhci0+Y3JlYXRlKCk7CisgICAgICAgICR0YXItPmZpbmlzaCgpOworICAgIH0KK30KKworc3ViIGNoZWNrX3BhdGNoZXNfYXBwbGllZCB7CisgICAgbXkgKCRzZWxmLCAkZGlyKSA9IEBfOworICAgIG15ICRhcHBsaWVkID0gRmlsZTo6U3BlYy0+Y2F0ZmlsZSgkZGlyLCAiZGViaWFuIiwgInBhdGNoZXMiLCAiLmRwa2ctc291cmNlLWFwcGxpZWQiKTsKKyAgICB1bmxlc3MgKC1lICRhcHBsaWVkKSB7CisgICAgICAgIGluZm8oX2coInBhdGNoZXMgYXJlIG5vdCBhcHBsaWVkLCBhcHBseWluZyB0aGVtIG5vdyIpKTsKKyAgICAgICAgJHNlbGYtPmFwcGx5X3BhdGNoZXMoJGRpciwgdXNhZ2UgPT4gJ3ByZXBhcmF0aW9uJyk7CisgICAgfQorfQorCitzdWIgZ2VuZXJhdGVfcGF0Y2ggeworICAgIG15ICgkc2VsZiwgJGRpciwgJW9wdHMpID0gQF87CisgICAgbXkgKCRkaXJuYW1lLCAkdXBkaXIpID0gZmlsZXBhcnNlKCRkaXIpOworICAgIG15ICRiYXNlZGlybmFtZSA9ICRzZWxmLT5nZXRfYmFzZW5hbWUoKTsKKyAgICAkYmFzZWRpcm5hbWUgPX4gcy9fLy0vOworCisgICAgIyBJZGVudGlmeSBvcmlnaW5hbCB0YXJiYWxscworICAgIG15ICgkdGFyZmlsZSwgJW9yaWd0YXIpOworICAgIG15IEBvcmlndGFyYmFsbHM7CisgICAgZm9yZWFjaCAoc29ydCAkc2VsZi0+ZmluZF9vcmlnaW5hbF90YXJiYWxscygpKSB7CisgICAgICAgIGlmICgvXC5vcmlnXC50YXJcLiRjb21wcmVzc2lvbl9yZV9maWxlX2V4dCQvKSB7CisgICAgICAgICAgICBpZiAoZGVmaW5lZCgkdGFyZmlsZSkpIHsKKyAgICAgICAgICAgICAgICBlcnJvcihfZygic2V2ZXJhbCBvcmlnLnRhciBmaWxlcyBmb3VuZCAoJXMgYW5kICVzKSBidXQgb25seSAiIC4KKyAgICAgICAgICAgICAgICAgICAgICAgICAib25lIGlzIGFsbG93ZWQiKSwgJHRhcmZpbGUsICRfKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgICR0YXJmaWxlID0gJF87CisgICAgICAgICAgICBwdXNoIEBvcmlndGFyYmFsbHMsICRfOworICAgICAgICAgICAgJHNlbGYtPmFkZF9maWxlKCRfKTsKKyAgICAgICAgfSBlbHNpZiAoL1wub3JpZy0oW1s6YWxudW06XS1dKylcLnRhclwuJGNvbXByZXNzaW9uX3JlX2ZpbGVfZXh0JC8pIHsKKyAgICAgICAgICAgICRvcmlndGFyeyQxfSA9ICRfOworICAgICAgICAgICAgcHVzaCBAb3JpZ3RhcmJhbGxzLCAkXzsKKyAgICAgICAgICAgICRzZWxmLT5hZGRfZmlsZSgkXyk7CisgICAgICAgIH0KKyAgICB9CisKKyAgICBlcnJvcihfZygibm8gdXBzdHJlYW0gdGFyYmFsbCBmb3VuZCBhdCAlcyIpLAorICAgICAgICAgICRzZWxmLT51cHN0cmVhbV90YXJiYWxsX3RlbXBsYXRlKCkpIHVubGVzcyAkdGFyZmlsZTsKKworICAgIGlmICgkb3B0c3sndXNhZ2UnfSBlcSAiYnVpbGQiKSB7CisgICAgICAgIGluZm8oX2coImJ1aWxkaW5nICVzIHVzaW5nIGV4aXN0aW5nICVzIiksCisgICAgICAgICAgICAgJHNlbGYtPnsnZmllbGRzJ317J1NvdXJjZSd9LCAiQG9yaWd0YXJiYWxscyIpOworICAgIH0KKworICAgICMgVW5wYWNrIGEgc2Vjb25kIGNvcHkgZm9yIGNvbXBhcmlzb24KKyAgICBteSAkdG1wID0gdGVtcGRpcigiJGRpcm5hbWUub3JpZy5YWFhYWFgiLCBESVIgPT4gJHVwZGlyKTsKKyAgICBwdXNoIEBEcGtnOjpFeGl0OjpoYW5kbGVycywgc3ViIHsgZXJhc2VkaXIoJHRtcCkgfTsKKworICAgICMgRXh0cmFjdCBtYWluIHRhcmJhbGwKKyAgICBteSAkdGFyID0gRHBrZzo6U291cmNlOjpBcmNoaXZlLT5uZXcoZmlsZW5hbWUgPT4gJHRhcmZpbGUpOworICAgICR0YXItPmV4dHJhY3QoJHRtcCk7CisKKyAgICAjIEV4dHJhY3QgYWRkaXRpb25hbCBvcmlnIHRhcmJhbGxzCisgICAgZm9yZWFjaCBteSAkc3ViZGlyIChrZXlzICVvcmlndGFyKSB7CisgICAgICAgIG15ICRmaWxlID0gJG9yaWd0YXJ7JHN1YmRpcn07CisgICAgICAgICR0YXIgPSBEcGtnOjpTb3VyY2U6OkFyY2hpdmUtPm5ldyhmaWxlbmFtZSA9PiAkZmlsZSk7CisgICAgICAgICR0YXItPmV4dHJhY3QoIiR0bXAvJHN1YmRpciIpOworICAgIH0KKworICAgICMgQ29weSBvdmVyIHRoZSBkZWJpYW4gZGlyZWN0b3J5CisgICAgZXJhc2VkaXIoIiR0bXAvZGViaWFuIik7CisgICAgc3lzdGVtKCJjcCIsICItYSIsICItLSIsICIkZGlyL2RlYmlhbiIsICIkdG1wLyIpOworICAgIHN1YnByb2NlcnIoX2coImNvcHkgb2YgdGhlIGRlYmlhbiBkaXJlY3RvcnkiKSkgaWYgJD87CisKKyAgICAjIEFwcGx5IGFsbCBwYXRjaGVzIGV4Y2VwdCB0aGUgbGFzdCBhdXRvbWF0aWMgb25lCisgICAgJG9wdHN7J3NraXBfYXV0byd9IC8vPSAwOworICAgICRzZWxmLT5hcHBseV9wYXRjaGVzKCR0bXAsIHNraXBfYXV0byA9PiAkb3B0c3snc2tpcF9hdXRvJ30sIHVzYWdlID0+ICdidWlsZCcpOworCisgICAgIyBDcmVhdGUgYSBwYXRjaAorICAgIG15ICgkZGlmZmZoLCAkdG1wZGlmZikgPSB0ZW1wZmlsZSgkc2VsZi0+Z2V0X2Jhc2VuYW1lKDEpIC4gIi5kaWZmLlhYWFhYWCIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIERJUiA9PiBGaWxlOjpTcGVjLT50bXBkaXIoKSwgVU5MSU5LID0+IDApOworICAgIHB1c2ggQERwa2c6OkV4aXQ6OmhhbmRsZXJzLCBzdWIgeyB1bmxpbmsoJHRtcGRpZmYpIH07CisgICAgbXkgJGRpZmYgPSBEcGtnOjpTb3VyY2U6OlBhdGNoLT5uZXcoZmlsZW5hbWUgPT4gJHRtcGRpZmYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29tcHJlc3Npb24gPT4gIm5vbmUiKTsKKyAgICAkZGlmZi0+Y3JlYXRlKCk7CisgICAgJGRpZmYtPnNldF9oZWFkZXIoJHNlbGYtPmdldF9wYXRjaF9oZWFkZXIoJGRpcikpOworICAgICRkaWZmLT5hZGRfZGlmZl9kaXJlY3RvcnkoJHRtcCwgJGRpciwgYmFzZWRpcm5hbWUgPT4gJGJhc2VkaXJuYW1lLAorICAgICAgICAgICAgJXskc2VsZi0+eydkaWZmX29wdGlvbnMnfX0sCisgICAgICAgICAgICBoYW5kbGVfYmluYXJ5X2Z1bmMgPT4gJG9wdHN7J2hhbmRsZV9iaW5hcnknfSwKKyAgICAgICAgICAgIG9yZGVyX2Zyb20gPT4gJG9wdHN7J29yZGVyX2Zyb20nfSk7CisgICAgZXJyb3IoX2coInVucmVwcmVzZW50YWJsZSBjaGFuZ2VzIHRvIHNvdXJjZSIpKSBpZiBub3QgJGRpZmYtPmZpbmlzaCgpOworCisgICAgaWYgKC1zICR0bXBkaWZmKSB7CisgICAgICAgIGluZm8oX2coImxvY2FsIGNoYW5nZXMgZGV0ZWN0ZWQsIHRoZSBtb2RpZmllZCBmaWxlcyBhcmU6IikpOworICAgICAgICBteSAkYW5hbHlzaXMgPSAkZGlmZi0+YW5hbHl6ZSgkZGlyLCB2ZXJib3NlID0+IDApOworICAgICAgICBmb3JlYWNoIG15ICRmbiAoc29ydCBrZXlzICV7JGFuYWx5c2lzLT57J2ZpbGVwYXRjaGVkJ319KSB7CisgICAgICAgICAgICBwcmludCAiICRmblxuIjsKKyAgICAgICAgfQorICAgIH0KKworICAgICMgUmVtb3ZlIHRoZSB0ZW1wb3JhcnkgZGlyZWN0b3J5CisgICAgZXJhc2VkaXIoJHRtcCk7CisgICAgcG9wIEBEcGtnOjpFeGl0OjpoYW5kbGVyczsKKyAgICBwb3AgQERwa2c6OkV4aXQ6OmhhbmRsZXJzOworCisgICAgcmV0dXJuICR0bXBkaWZmOworfQorCitzdWIgZG9fYnVpbGQgeworICAgIG15ICgkc2VsZiwgJGRpcikgPSBAXzsKKyAgICBteSBAYXJndiA9IEB7JHNlbGYtPnsnb3B0aW9ucyd9eydBUkdWJ319OworICAgIGlmIChzY2FsYXIoQGFyZ3YpKSB7CisgICAgICAgIHVzYWdlZXJyKF9nKCItYiB0YWtlcyBvbmx5IG9uZSBwYXJhbWV0ZXIgd2l0aCBmb3JtYXQgYCVzJyIpLAorICAgICAgICAgICAgICAgICAkc2VsZi0+eydmaWVsZHMnfXsnRm9ybWF0J30pOworICAgIH0KKyAgICAkc2VsZi0+cHJlcGFyZV9idWlsZCgkZGlyKTsKKworICAgIG15ICRpbmNsdWRlX2JpbmFyaWVzID0gJHNlbGYtPnsnb3B0aW9ucyd9eydpbmNsdWRlX2JpbmFyaWVzJ307CisgICAgbXkgQHRhcl9pZ25vcmUgPSBtYXAgeyAiLS1leGNsdWRlPSRfIiB9IEB7JHNlbGYtPnsnb3B0aW9ucyd9eyd0YXJfaWdub3JlJ319OworCisgICAgbXkgJHNvdXJjZXBhY2thZ2UgPSAkc2VsZi0+eydmaWVsZHMnfXsnU291cmNlJ307CisgICAgbXkgJGJhc2VuYW1lcmV2ID0gJHNlbGYtPmdldF9iYXNlbmFtZSgxKTsKKworICAgICMgUHJlcGFyZSBoYW5kbGluZyBvZiBiaW5hcnkgZmlsZXMKKyAgICBteSAlYXV0aF9iaW5fZmlsZXM7CisgICAgbXkgJGluY2Jpbl9maWxlID0gRmlsZTo6U3BlYy0+Y2F0ZmlsZSgkZGlyLCAiZGViaWFuIiwgInNvdXJjZSIsICJpbmNsdWRlLWJpbmFyaWVzIik7CisgICAgaWYgKC1mICRpbmNiaW5fZmlsZSkgeworICAgICAgICBvcGVuKElOQywgIjwiLCAkaW5jYmluX2ZpbGUpIHx8IHN5c2VycihfZygiY2Fubm90IHJlYWQgJXMiKSwgJGluY2Jpbl9maWxlKTsKKyAgICAgICAgd2hpbGUoZGVmaW5lZCgkXyA9IDxJTkM+KSkgeworICAgICAgICAgICAgY2hvbXA7IHMvXlxzKi8vOyBzL1xzKiQvLzsKKyAgICAgICAgICAgIG5leHQgaWYgL14jLyBvciAvXiQvOworICAgICAgICAgICAgJGF1dGhfYmluX2ZpbGVzeyRffSA9IDE7CisgICAgICAgIH0KKyAgICAgICAgY2xvc2UoSU5DKTsKKyAgICB9CisgICAgbXkgQGJpbmFyeV9maWxlczsKKyAgICBteSAkaGFuZGxlX2JpbmFyeSA9IHN1YiB7CisgICAgICAgIG15ICgkc2VsZiwgJG9sZCwgJG5ldykgPSBAXzsKKyAgICAgICAgbXkgJHJlbGZuID0gRmlsZTo6U3BlYy0+YWJzMnJlbCgkbmV3LCAkZGlyKTsKKyAgICAgICAgIyBJbmNsdWRlIGJpbmFyaWVzIGlmIHRoZXkgYXJlIHdoaXRlbGlzdGVkIG9yIGlmCisgICAgICAgICMgLS1pbmNsdWRlLWJpbmFyaWVzIGhhcyBiZWVuIGdpdmVuCisgICAgICAgIGlmICgkaW5jbHVkZV9iaW5hcmllcyBvciAkYXV0aF9iaW5fZmlsZXN7JHJlbGZufSkgeworICAgICAgICAgICAgcHVzaCBAYmluYXJ5X2ZpbGVzLCAkcmVsZm47CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICBlcnJvcm1zZyhfZygiY2Fubm90IHJlcHJlc2VudCBjaGFuZ2UgdG8gJXM6ICVzIiksICRuZXcsCisgICAgICAgICAgICAgICAgICAgICBfZygiYmluYXJ5IGZpbGUgY29udGVudHMgY2hhbmdlZCIpKTsKKyAgICAgICAgICAgIGVycm9ybXNnKF9nKCJhZGQgJXMgaW4gZGViaWFuL3NvdXJjZS9pbmNsdWRlLWJpbmFyaWVzIGlmIHlvdSB3YW50IiAuCisgICAgICAgICAgICAgICAgICAgICAiIHRvIHN0b3JlIHRoZSBtb2RpZmllZCBiaW5hcnkgaW4gdGhlIGRlYmlhbiB0YXJiYWxsIiksCisgICAgICAgICAgICAgICAgICAgICAkcmVsZm4pOworICAgICAgICAgICAgJHNlbGYtPnJlZ2lzdGVyX2Vycm9yKCk7CisgICAgICAgIH0KKyAgICB9OworICAgICMgQ2hlY2sgaWYgdGhlIGRlYmlhbiBkaXJlY3RvcnkgY29udGFpbnMgdW53YW50ZWQgYmluYXJ5IGZpbGVzCisgICAgbXkgJHVud2FudGVkX2JpbmFyaWVzID0gMDsKKyAgICBteSAkY2hlY2tfYmluYXJ5ID0gc3ViIHsKKyAgICAgICAgbXkgJGZuID0gRmlsZTo6U3BlYy0+YWJzMnJlbCgkXywgJGRpcik7CisgICAgICAgIGlmICgtZiAkXyBhbmQgaXNfYmluYXJ5KCRfKSkgeworICAgICAgICAgICAgaWYgKCRpbmNsdWRlX2JpbmFyaWVzIG9yICRhdXRoX2Jpbl9maWxlc3skZm59KSB7CisgICAgICAgICAgICAgICAgcHVzaCBAYmluYXJ5X2ZpbGVzLCAkZm47CisgICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgICAgIGVycm9ybXNnKF9nKCJ1bndhbnRlZCBiaW5hcnkgZmlsZTogJXMiKSwgJGZuKTsKKyAgICAgICAgICAgICAgICAkdW53YW50ZWRfYmluYXJpZXMrKzsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorICAgIH07CisgICAgbXkgJHRhcl9pZ25vcmVfZ2xvYiA9ICJ7IiAuIGpvaW4oIiwiLAorICAgICAgICBtYXAgeworICAgICAgICAgICAgbXkgJGNvcHkgPSAkXzsKKyAgICAgICAgICAgICRjb3B5ID1+IHMvLC9cXCwvZzsKKyAgICAgICAgICAgICRjb3B5OworICAgICAgICB9IEB7JHNlbGYtPnsnb3B0aW9ucyd9eyd0YXJfaWdub3JlJ319KSAuICJ9IjsKKyAgICBteSAkZmlsdGVyX2lnbm9yZSA9IHN1YiB7CisgICAgICAgICMgRmlsdGVyIG91dCBmaWxlcyB0aGF0IGFyZSBub3QgZ29pbmcgdG8gYmUgaW5jbHVkZWQgaW4gdGhlIGRlYmlhbgorICAgICAgICAjIHRhcmJhbGwgZHVlIHRvIGlnbm9yZXMuCisgICAgICAgIG15ICVleGNsdWRlOworICAgICAgICBteSAkcmVsZGlyID0gRmlsZTo6U3BlYy0+YWJzMnJlbCgkRmlsZTo6RmluZDo6ZGlyLCAkZGlyKTsKKyAgICAgICAgbXkgJGN3ZCA9IGdldGN3ZCgpOworICAgICAgICAjIEFwcGx5IHRoZSBwYXR0ZXJuIGJvdGggZnJvbSB0aGUgdG9wIGRpciBhbmQgZnJvbSB0aGUgaW5zcGVjdGVkIGRpcgorICAgICAgICBjaGRpcigkZGlyKSB8fCBzeXNlcnIoX2coInVuYWJsZSB0byBjaGRpciB0byBgJXMnIiksICRkaXIpOworICAgICAgICAkZXhjbHVkZXskX30gPSAxIGZvcmVhY2ggZ2xvYigkdGFyX2lnbm9yZV9nbG9iKTsKKyAgICAgICAgY2hkaXIoJGN3ZCkgfHwgc3lzZXJyKF9nKCJ1bmFibGUgdG8gY2hkaXIgdG8gYCVzJyIpLCAkY3dkKTsKKyAgICAgICAgY2hkaXIoJEZpbGU6OkZpbmQ6OmRpcikgfHwKKyAgICAgICAgICAgIHN5c2VycihfZygidW5hYmxlIHRvIGNoZGlyIHRvIGAlcyciKSwgJEZpbGU6OkZpbmQ6OmRpcik7CisgICAgICAgICRleGNsdWRleyRffSA9IDEgZm9yZWFjaCBnbG9iKCR0YXJfaWdub3JlX2dsb2IpOworICAgICAgICBjaGRpcigkY3dkKSB8fCBzeXNlcnIoX2coInVuYWJsZSB0byBjaGRpciB0byBgJXMnIiksICRjd2QpOworICAgICAgICBteSBAcmVzdWx0OworICAgICAgICBmb3JlYWNoIG15ICRmbiAoQF8pIHsKKyAgICAgICAgICAgIHVubGVzcyAoZXhpc3RzICRleGNsdWRleyRmbn0gb3IgZXhpc3RzICRleGNsdWRleyIkcmVsZGlyLyRmbiJ9KSB7CisgICAgICAgICAgICAgICAgcHVzaCBAcmVzdWx0LCAkZm47CisgICAgICAgICAgICB9CisgICAgICAgIH0KKyAgICAgICAgcmV0dXJuIEByZXN1bHQ7CisgICAgfTsKKyAgICBmaW5kKHsgd2FudGVkID0+ICRjaGVja19iaW5hcnksIHByZXByb2Nlc3MgPT4gJGZpbHRlcl9pZ25vcmUsCisgICAgICAgICAgIG5vX2NoZGlyID0+IDEgfSwgRmlsZTo6U3BlYy0+Y2F0ZGlyKCRkaXIsICJkZWJpYW4iKSk7CisgICAgZXJyb3IoUF8oImRldGVjdGVkICVkIHVud2FudGVkIGJpbmFyeSBmaWxlIChhZGQgaXQgaW4gIiAuCisgICAgICAgICAgICAgImRlYmlhbi9zb3VyY2UvaW5jbHVkZS1iaW5hcmllcyB0byBhbGxvdyBpdHMgaW5jbHVzaW9uKS4iLAorICAgICAgICAgICAgICJkZXRlY3RlZCAlZCB1bndhbnRlZCBiaW5hcnkgZmlsZXMgKGFkZCB0aGVtIGluICIgLgorICAgICAgICAgICAgICJkZWJpYW4vc291cmNlL2luY2x1ZGUtYmluYXJpZXMgdG8gYWxsb3cgdGhlaXIgaW5jbHVzaW9uKS4iLAorICAgICAgICAgICAgICR1bndhbnRlZF9iaW5hcmllcyksICR1bndhbnRlZF9iaW5hcmllcykKKyAgICAgICAgIGlmICR1bndhbnRlZF9iaW5hcmllczsKKworICAgICMgQ3JlYXRlIGEgcGF0Y2gKKyAgICBteSAkYXV0b3BhdGNoID0gRmlsZTo6U3BlYy0+Y2F0ZmlsZSgkZGlyLCAiZGViaWFuIiwgInBhdGNoZXMiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRzZWxmLT5nZXRfYXV0b3BhdGNoX25hbWUoKSk7CisgICAgbXkgJHRtcGRpZmYgPSAkc2VsZi0+Z2VuZXJhdGVfcGF0Y2goJGRpciwgb3JkZXJfZnJvbSA9PiAkYXV0b3BhdGNoLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhbmRsZV9iaW5hcnkgPT4gJGhhbmRsZV9iaW5hcnksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2tpcF9hdXRvID0+ICRzZWxmLT57J29wdGlvbnMnfXsnYXV0b19jb21taXQnfSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2FnZSA9PiAnYnVpbGQnKTsKKyAgICB1bmxlc3MgKC16ICR0bXBkaWZmIG9yICRzZWxmLT57J29wdGlvbnMnfXsnYXV0b19jb21taXQnfSkgeworICAgICAgICBpbmZvKF9nKCJ5b3UgY2FuIGludGVncmF0ZSB0aGUgbG9jYWwgY2hhbmdlcyB3aXRoICVzIiksCisgICAgICAgICAgICAgImRwa2ctc291cmNlIC0tY29tbWl0Iik7CisgICAgICAgIGVycm9yKF9nKCJhYm9ydGluZyBkdWUgdG8gdW5leHBlY3RlZCB1cHN0cmVhbSBjaGFuZ2VzLCBzZWUgJXMiKSwKKyAgICAgICAgICAgICAgJHRtcGRpZmYpOworICAgIH0KKyAgICBwdXNoIEBEcGtnOjpFeGl0OjpoYW5kbGVycywgc3ViIHsgdW5saW5rKCR0bXBkaWZmKSB9OworCisgICAgIyBJbnN0YWxsIHRoZSBkaWZmIGFzIHRoZSBuZXcgYXV0b3BhdGNoCisgICAgaWYgKCRzZWxmLT57J29wdGlvbnMnfXsnYXV0b19jb21taXQnfSkgeworICAgICAgICBta3BhdGgoRmlsZTo6U3BlYy0+Y2F0ZGlyKCRkaXIsICJkZWJpYW4iLCAicGF0Y2hlcyIpKTsKKyAgICAgICAgJGF1dG9wYXRjaCA9ICRzZWxmLT5yZWdpc3Rlcl9wYXRjaCgkZGlyLCAkdG1wZGlmZiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkc2VsZi0+Z2V0X2F1dG9wYXRjaF9uYW1lKCkpOworICAgICAgICBpbmZvKF9nKCJsb2NhbCBjaGFuZ2VzIGhhdmUgYmVlbiByZWNvcmRlZCBpbiBhIG5ldyBwYXRjaDogJXMiKSwKKyAgICAgICAgICAgICAkYXV0b3BhdGNoKSBpZiAtZSAkYXV0b3BhdGNoOworICAgICAgICBybWRpcihGaWxlOjpTcGVjLT5jYXRkaXIoJGRpciwgImRlYmlhbiIsICJwYXRjaGVzIikpOyAjIE5vIGNoZWNrIG9uIHB1cnBvc2UKKyAgICB9CisgICAgdW5saW5rKCR0bXBkaWZmKSB8fCBzeXNlcnIoX2coImNhbm5vdCByZW1vdmUgJXMiKSwgJHRtcGRpZmYpOworICAgIHBvcCBARHBrZzo6RXhpdDo6aGFuZGxlcnM7CisKKyAgICAjIFVwZGF0ZSBkZWJpYW4vc291cmNlL2luY2x1ZGUtYmluYXJpZXMgaWYgbmVlZGVkCisgICAgaWYgKHNjYWxhcihAYmluYXJ5X2ZpbGVzKSBhbmQgJGluY2x1ZGVfYmluYXJpZXMpIHsKKyAgICAgICAgbWtwYXRoKEZpbGU6OlNwZWMtPmNhdGRpcigkZGlyLCAiZGViaWFuIiwgInNvdXJjZSIpKTsKKyAgICAgICAgb3BlbihJTkMsICI+PiIsICRpbmNiaW5fZmlsZSkgfHwgc3lzZXJyKF9nKCJjYW5ub3Qgd3JpdGUgJXMiKSwgJGluY2Jpbl9maWxlKTsKKyAgICAgICAgZm9yZWFjaCBteSAkYmluYXJ5IChAYmluYXJ5X2ZpbGVzKSB7CisgICAgICAgICAgICB1bmxlc3MgKCRhdXRoX2Jpbl9maWxlc3skYmluYXJ5fSkgeworICAgICAgICAgICAgICAgIHByaW50IElOQyAiJGJpbmFyeVxuIjsKKyAgICAgICAgICAgICAgICBpbmZvKF9nKCJhZGRpbmcgJXMgdG8gJXMiKSwgJGJpbmFyeSwgImRlYmlhbi9zb3VyY2UvaW5jbHVkZS1iaW5hcmllcyIpOworICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgICAgIGNsb3NlKElOQyk7CisgICAgfQorICAgICMgQ3JlYXRlIHRoZSBkZWJpYW4udGFyCisgICAgbXkgJGRlYmlhbmZpbGUgPSAiJGJhc2VuYW1lcmV2LmRlYmlhbi50YXIuIiAuICRzZWxmLT57J29wdGlvbnMnfXsnY29tcF9leHQnfTsKKyAgICBpbmZvKF9nKCJidWlsZGluZyAlcyBpbiAlcyIpLCAkc291cmNlcGFja2FnZSwgJGRlYmlhbmZpbGUpOworICAgIG15ICR0YXIgPSBEcGtnOjpTb3VyY2U6OkFyY2hpdmUtPm5ldyhmaWxlbmFtZSA9PiAkZGViaWFuZmlsZSk7CisgICAgJHRhci0+Y3JlYXRlKG9wdGlvbnMgPT4gXEB0YXJfaWdub3JlLCAnY2hkaXInID0+ICRkaXIpOworICAgICR0YXItPmFkZF9kaXJlY3RvcnkoImRlYmlhbiIpOworICAgIGZvcmVhY2ggbXkgJGJpbmFyeSAoQGJpbmFyeV9maWxlcykgeworICAgICAgICAkdGFyLT5hZGRfZmlsZSgkYmluYXJ5KSB1bmxlc3MgJGJpbmFyeSA9fiBte15kZWJpYW4vfTsKKyAgICB9CisgICAgJHRhci0+ZmluaXNoKCk7CisKKyAgICAkc2VsZi0+YWRkX2ZpbGUoJGRlYmlhbmZpbGUpOworfQorCitzdWIgZ2V0X3BhdGNoX2hlYWRlciB7CisgICAgbXkgKCRzZWxmLCAkZGlyKSA9IEBfOworICAgIG15ICRwaCA9IEZpbGU6OlNwZWMtPmNhdGZpbGUoJGRpciwgImRlYmlhbiIsICJzb3VyY2UiLCAibG9jYWwtcGF0Y2gtaGVhZGVyIik7CisgICAgdW5sZXNzICgtZiAkcGgpIHsKKyAgICAgICAgJHBoID0gRmlsZTo6U3BlYy0+Y2F0ZmlsZSgkZGlyLCAiZGViaWFuIiwgInNvdXJjZSIsICJwYXRjaC1oZWFkZXIiKTsKKyAgICB9CisgICAgbXkgJHRleHQ7CisgICAgaWYgKC1mICRwaCkgeworICAgICAgICBvcGVuKFBILCAiPCIsICRwaCkgfHwgc3lzZXJyKF9nKCJjYW5ub3QgcmVhZCAlcyIpLCAkcGgpOworICAgICAgICAkdGV4dCA9IGpvaW4oIiIsIDxQSD4pOworICAgICAgICBjbG9zZShQSCk7CisgICAgICAgIHJldHVybiAkdGV4dDsKKyAgICB9CisgICAgbXkgJGNoX2luZm8gPSBjaGFuZ2Vsb2dfcGFyc2Uob2Zmc2V0ID0+IDAsIGNvdW50ID0+IDEsCisgICAgICAgIGZpbGUgPT4gRmlsZTo6U3BlYy0+Y2F0ZmlsZSgkZGlyLCAiZGViaWFuIiwgImNoYW5nZWxvZyIpKTsKKyAgICByZXR1cm4gJycgaWYgbm90IGRlZmluZWQgJGNoX2luZm87CisgICAgbXkgJGhlYWRlciA9IERwa2c6OkNvbnRyb2wtPm5ldyh0eXBlID0+IENUUkxfVU5LTk9XTik7CisgICAgJGhlYWRlci0+eydEZXNjcmlwdGlvbid9ID0gIjxzaG9ydCBzdW1tYXJ5IG9mIHRoZSBwYXRjaD5cbiI7CisgICAgJGhlYWRlci0+eydEZXNjcmlwdGlvbid9IC49CisiVE9ETzogUHV0IGEgc2hvcnQgc3VtbWFyeSBvbiB0aGUgbGluZSBhYm92ZSBhbmQgcmVwbGFjZSB0aGlzIHBhcmFncmFwaAord2l0aCBhIGxvbmdlciBleHBsYW5hdGlvbiBvZiB0aGlzIGNoYW5nZS4gQ29tcGxldGUgdGhlIG1ldGEtaW5mb3JtYXRpb24KK3dpdGggb3RoZXIgcmVsZXZhbnQgZmllbGRzIChzZWUgYmVsb3cgZm9yIGRldGFpbHMpLiBUbyBtYWtlIGl0IGVhc2llciwgdGhlCitpbmZvcm1hdGlvbiBiZWxvdyBoYXMgYmVlbiBleHRyYWN0ZWQgZnJvbSB0aGUgY2hhbmdlbG9nLiBBZGp1c3QgaXQgb3IgZHJvcAoraXQuXG4iOworICAgICRoZWFkZXItPnsnRGVzY3JpcHRpb24nfSAuPSAkY2hfaW5mby0+eydDaGFuZ2VzJ30gLiAiXG4iOworICAgICRoZWFkZXItPnsnQXV0aG9yJ30gPSAkY2hfaW5mby0+eydNYWludGFpbmVyJ307CisgICAgJHRleHQgPSAiJGhlYWRlciI7CisgICAgcnVuX3ZlbmRvcl9ob29rKCJleHRlbmQtcGF0Y2gtaGVhZGVyIiwgXCR0ZXh0LCAkY2hfaW5mbyk7CisgICAgJHRleHQgLj0gIlxuLS0tCitUaGUgaW5mb3JtYXRpb24gYWJvdmUgc2hvdWxkIGZvbGxvdyB0aGUgUGF0Y2ggVGFnZ2luZyBHdWlkZWxpbmVzLCBwbGVhc2UKK2NoZWNrb3V0IGh0dHA6Ly9kZXAuZGViaWFuLm5ldC9kZXBzL2RlcDMvIHRvIGxlYXJuIGFib3V0IHRoZSBmb3JtYXQuIEhlcmUKK2FyZSB0ZW1wbGF0ZXMgZm9yIHN1cHBsZW1lbnRhcnkgZmllbGRzIHRoYXQgeW91IG1pZ2h0IHdhbnQgdG8gYWRkOgorCitPcmlnaW46IDx2ZW5kb3J8dXBzdHJlYW18b3RoZXI+LCA8dXJsIG9mIG9yaWdpbmFsIHBhdGNoPgorQnVnOiA8dXJsIGluIHVwc3RyZWFtIGJ1Z3RyYWNrZXI+CitCdWctRGViaWFuOiBodHRwOi8vYnVncy5kZWJpYW4ub3JnLzxidWdudW1iZXI+CitCdWctVWJ1bnR1OiBodHRwczovL2xhdW5jaHBhZC5uZXQvYnVncy88YnVnbnVtYmVyPgorRm9yd2FyZGVkOiA8bm98bm90LW5lZWRlZHx1cmwgcHJvdmluZyB0aGF0IGl0IGhhcyBiZWVuIGZvcndhcmRlZD4KK1Jldmlld2VkLUJ5OiA8bmFtZSBhbmQgZW1haWwgb2Ygc29tZW9uZSB3aG8gYXBwcm92ZWQgdGhlIHBhdGNoPgorTGFzdC1VcGRhdGU6IDxZWVlZLU1NLUREPlxuXG4iOworICAgIHJldHVybiAkdGV4dDsKK30KKworc3ViIHJlZ2lzdGVyX3BhdGNoIHsKKyAgICBteSAoJHNlbGYsICRkaXIsICRwYXRjaF9maWxlLCAkcGF0Y2hfbmFtZSkgPSBAXzsKKyAgICBteSAkcGF0Y2ggPSBGaWxlOjpTcGVjLT5jYXRmaWxlKCRkaXIsICJkZWJpYW4iLCAicGF0Y2hlcyIsICRwYXRjaF9uYW1lKTsKKyAgICBpZiAoLXMgJHBhdGNoX2ZpbGUpIHsKKyAgICAgICAgY29weSgkcGF0Y2hfZmlsZSwgJHBhdGNoKSB8fAorICAgICAgICAgICAgc3lzZXJyKF9nKCJmYWlsZWQgdG8gY29weSAlcyB0byAlcyIpLCAkcGF0Y2hfZmlsZSwgJHBhdGNoKTsKKyAgICAgICAgY2htb2QoMDY2NiAmIH4gdW1hc2soKSwgJHBhdGNoKSB8fAorICAgICAgICAgICAgICAgIHN5c2VycihfZygidW5hYmxlIHRvIGNoYW5nZSBwZXJtaXNzaW9uIG9mIGAlcyciKSwgJHBhdGNoKTsKKyAgICAgICAgbXkgJGFwcGxpZWQgPSBGaWxlOjpTcGVjLT5jYXRmaWxlKCRkaXIsICJkZWJpYW4iLCAicGF0Y2hlcyIsICIuZHBrZy1zb3VyY2UtYXBwbGllZCIpOworICAgICAgICBvcGVuKEFQUExJRUQsICc+PicsICRhcHBsaWVkKSB8fCBzeXNlcnIoX2coImNhbm5vdCB3cml0ZSAlcyIpLCAkYXBwbGllZCk7CisgICAgICAgIHByaW50IEFQUExJRUQgIiRwYXRjaFxuIjsKKyAgICAgICAgY2xvc2UoQVBQTElFRCkgfHwgc3lzZXJyKF9nKCJjYW5ub3QgY2xvc2UgJXMiKSwgJGFwcGxpZWQpOworICAgIH0gZWxzaWYgKC1lICRwYXRjaCkgeworICAgICAgICB1bmxpbmsoJHBhdGNoKSB8fCBzeXNlcnIoX2coImNhbm5vdCByZW1vdmUgJXMiKSwgJHBhdGNoKTsKKyAgICB9CisgICAgcmV0dXJuICRwYXRjaDsKK30KKworc3ViIGNvbW1pdCB7CisgICAgbXkgKCRzZWxmLCAkZGlyKSA9IEBfOworICAgIG15ICgkcGF0Y2hfbmFtZSwgJHRtcGRpZmYpID0gQHskc2VsZi0+eydvcHRpb25zJ317J0FSR1YnfX07CisKKyAgICBzdWIgYmFkX3BhdGNoX25hbWUgeworICAgICAgICBteSAoJGRpciwgJHBhdGNoX25hbWUpID0gQF87CisgICAgICAgIHJldHVybiAxIGlmIG5vdCBkZWZpbmVkKCRwYXRjaF9uYW1lKTsKKyAgICAgICAgcmV0dXJuIDEgaWYgbm90IGxlbmd0aCgkcGF0Y2hfbmFtZSk7CisgICAgICAgIG15ICRwYXRjaCA9IEZpbGU6OlNwZWMtPmNhdGZpbGUoJGRpciwgImRlYmlhbiIsICJwYXRjaGVzIiwgJHBhdGNoX25hbWUpOworICAgICAgICBpZiAoLWUgJHBhdGNoKSB7CisgICAgICAgICAgICB3YXJuaW5nKF9nKCJjYW5ub3QgcmVnaXN0ZXIgY2hhbmdlcyBpbiAlcywgdGhpcyBwYXRjaCBhbHJlYWR5IGV4aXN0cyIpLCAkcGF0Y2gpOworICAgICAgICAgICAgcmV0dXJuIDE7CisgICAgICAgIH0KKyAgICAgICAgcmV0dXJuIDA7CisgICAgfQorCisgICAgJHNlbGYtPnByZXBhcmVfYnVpbGQoJGRpcik7CisKKyAgICB1bmxlc3MgKCR0bXBkaWZmICYmIC1lICR0bXBkaWZmKSB7CisgICAgICAgICR0bXBkaWZmID0gJHNlbGYtPmdlbmVyYXRlX3BhdGNoKCRkaXIsIHVzYWdlID0+ICJjb21taXQiKTsKKyAgICB9CisgICAgcHVzaCBARHBrZzo6RXhpdDo6aGFuZGxlcnMsIHN1YiB7IHVubGluaygkdG1wZGlmZikgfTsKKyAgICB1bmxlc3MgKC1zICR0bXBkaWZmKSB7CisgICAgICAgIHVubGluaygkdG1wZGlmZikgfHwgc3lzZXJyKF9nKCJjYW5ub3QgcmVtb3ZlICVzIiksICR0bXBkaWZmKTsKKyAgICAgICAgaW5mbyhfZygidGhlcmUgYXJlIG5vIGxvY2FsIGNoYW5nZXMgdG8gcmVjb3JkIikpOworICAgICAgICByZXR1cm47CisgICAgfQorICAgIHdoaWxlIChiYWRfcGF0Y2hfbmFtZSgkZGlyLCAkcGF0Y2hfbmFtZSkpIHsKKyAgICAgICAgIyBBc2sgdGhlIHBhdGNoIG5hbWUgaW50ZXJhY3RpdmVseQorICAgICAgICBwcmludCBTVERPVVQgX2coIkVudGVyIHRoZSBkZXNpcmVkIHBhdGNoIG5hbWU6ICIpOworICAgICAgICBjaG9tcCgkcGF0Y2hfbmFtZSA9IDxTVERJTj4pOworICAgICAgICAkcGF0Y2hfbmFtZSA9fiBzL1xzKy8tL2c7CisgICAgICAgICRwYXRjaF9uYW1lID1+IHMvXC8vL2c7CisgICAgfQorICAgIG1rcGF0aChGaWxlOjpTcGVjLT5jYXRkaXIoJGRpciwgImRlYmlhbiIsICJwYXRjaGVzIikpOworICAgIG15ICRwYXRjaCA9ICRzZWxmLT5yZWdpc3Rlcl9wYXRjaCgkZGlyLCAkdG1wZGlmZiwgJHBhdGNoX25hbWUpOworICAgIHN5c3RlbSgic2Vuc2libGUtZWRpdG9yIiwgJHBhdGNoKTsKKyAgICB1bmxpbmsoJHRtcGRpZmYpIHx8IHN5c2VycihfZygiY2Fubm90IHJlbW92ZSAlcyIpLCAkdG1wZGlmZik7CisgICAgcG9wIEBEcGtnOjpFeGl0OjpoYW5kbGVyczsKKyAgICBpbmZvKF9nKCJsb2NhbCBjaGFuZ2VzIGhhdmUgYmVlbiByZWNvcmRlZCBpbiBhIG5ldyBwYXRjaDogJXMiKSwgJHBhdGNoKTsKK30KKworIyB2aW06ZXQ6c3c9NDp0cz04CisxOwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvYnpyLnBtIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvYnpyLnBtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjNjZGU1MmEKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9ienIucG0KQEAgLTAsMCArMSwyMDcgQEAKKyMKKyMgYnpyIHN1cHBvcnQgZm9yIGRwa2ctc291cmNlCisjCisjIENvcHlyaWdodCDCqSAyMDA3IENvbGluIFdhdHNvbiA8Y2p3YXRzb25AZGViaWFuLm9yZz4uCisjIEJhc2VkIG9uIERwa2c6OlNvdXJjZTo6UGFja2FnZTo6VjNfMDo6Z2l0LCB3aGljaCBpczoKKyMgQ29weXJpZ2h0IMKpIDIwMDcgSm9leSBIZXNzIDxqb2V5aEBkZWJpYW4ub3JnPi4KKyMgQ29weXJpZ2h0IMKpIDIwMDggRnJhbmsgTGljaHRlbmhlbGQgPGRqcGlnQGRlYmlhbi5vcmc+CisjCisjIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisjIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisjIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisjIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisjCisjIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisjIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisjCisjIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisjIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorCitwYWNrYWdlIERwa2c6OlNvdXJjZTo6UGFja2FnZTo6VjM6OmJ6cjsKKwordXNlIHN0cmljdDsKK3VzZSB3YXJuaW5nczsKKworb3VyICRWRVJTSU9OID0gIjAuMDEiOworCit1c2UgYmFzZSAnRHBrZzo6U291cmNlOjpQYWNrYWdlJzsKKwordXNlIEN3ZDsKK3VzZSBGaWxlOjpCYXNlbmFtZTsKK3VzZSBGaWxlOjpGaW5kOwordXNlIEZpbGU6OlRlbXAgcXcodGVtcGRpcik7CisKK3VzZSBEcGtnOwordXNlIERwa2c6OkdldHRleHQ7Cit1c2UgRHBrZzo6Q29tcHJlc3Npb247Cit1c2UgRHBrZzo6RXJyb3JIYW5kbGluZzsKK3VzZSBEcGtnOjpTb3VyY2U6OkFyY2hpdmU7Cit1c2UgRHBrZzo6RXhpdDsKK3VzZSBEcGtnOjpTb3VyY2U6OkZ1bmN0aW9ucyBxdyhlcmFzZWRpcik7CisKK291ciAkQ1VSUkVOVF9NSU5PUl9WRVJTSU9OID0gIjAiOworCitzdWIgaW1wb3J0IHsKKyAgICBmb3JlYWNoIG15ICRkaXIgKHNwbGl0KC86LywgJEVOVntQQVRIfSkpIHsKKyAgICAgICAgaWYgKC14ICIkZGlyL2J6ciIpIHsKKyAgICAgICAgICAgIHJldHVybiAxOworICAgICAgICB9CisgICAgfQorICAgIGVycm9yKF9nKCJUaGlzIHNvdXJjZSBwYWNrYWdlIGNhbiBvbmx5IGJlIG1hbmlwdWxhdGVkIHVzaW5nIGJ6ciwgd2hpY2ggaXMgbm90IGluIHRoZSBQQVRILiIpKTsKK30KKworc3ViIHNhbml0eV9jaGVjayB7CisgICAgbXkgJHNyY2RpciA9IHNoaWZ0OworCisgICAgaWYgKCEgLWQgIiRzcmNkaXIvLmJ6ciIpIHsKKyAgICAgICAgZXJyb3IoX2coInNvdXJjZSBkaXJlY3RvcnkgaXMgbm90IHRoZSB0b3AgZGlyZWN0b3J5IG9mIGEgYnpyIHJlcG9zaXRvcnkgKCVzLy5ienIgbm90IHByZXNlbnQpLCBidXQgRm9ybWF0IGJ6ciB3YXMgc3BlY2lmaWVkIiksCisgICAgICAgICAgICAgICRzcmNkaXIpOworICAgIH0KKworICAgICMgU3ltbGlua3MgZnJvbSAuYnpyIHRvIG91dHNpZGUgY291bGQgY2F1c2UgdW5wYWNrIGZhaWx1cmVzLCBvcgorICAgICMgcG9pbnQgdG8gZmlsZXMgdGhleSBzaG91bGRuJ3QsIHNvIGNoZWNrIGZvciBhbmQgZG9uJ3QgYWxsb3cuCisgICAgaWYgKC1sICIkc3JjZGlyLy5ienIiKSB7CisgICAgICAgIGVycm9yKF9nKCIlcyBpcyBhIHN5bWxpbmsiKSwgIiRzcmNkaXIvLmJ6ciIpOworICAgIH0KKyAgICBteSAkYWJzX3NyY2RpciA9IEN3ZDo6YWJzX3BhdGgoJHNyY2Rpcik7CisgICAgZmluZChzdWIgeworICAgICAgICBpZiAoLWwgJF8pIHsKKyAgICAgICAgICAgIGlmIChDd2Q6OmFic19wYXRoKHJlYWRsaW5rKCRfKSkgIX4gL15cUSRhYnNfc3JjZGlyXEUoXC98JCkvKSB7CisgICAgICAgICAgICAgICAgZXJyb3IoX2coIiVzIGlzIGEgc3ltbGluayB0byBvdXRzaWRlICVzIiksCisgICAgICAgICAgICAgICAgICAgICAgJEZpbGU6OkZpbmQ6Om5hbWUsICRzcmNkaXIpOworICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgfSwgIiRzcmNkaXIvLmJ6ciIpOworCisgICAgcmV0dXJuIDE7Cit9CisKK3N1YiBjYW5fYnVpbGQgeworICAgIG15ICgkc2VsZiwgJGRpcikgPSBAXzsKKyAgICByZXR1cm4gKC1kICIkZGlyLy5ienIiLCBfZygiZG9lc24ndCBjb250YWluIGEgYnpyIHJlcG9zaXRvcnkiKSk7Cit9CisKK3N1YiBkb19idWlsZCB7CisgICAgbXkgKCRzZWxmLCAkZGlyKSA9IEBfOworICAgIG15IEBhcmd2ID0gQHskc2VsZi0+eydvcHRpb25zJ317J0FSR1YnfX07CisgICAgIyBUT0RPOiB3YXJuIGhlcmU/CisgICAgI215IEB0YXJfaWdub3JlID0gbWFwIHsgIi0tZXhjbHVkZT0kXyIgfSBAeyRzZWxmLT57J29wdGlvbnMnfXsndGFyX2lnbm9yZSd9fTsKKyAgICBteSAkZGlmZl9pZ25vcmVfcmVnZXhwID0gJHNlbGYtPnsnb3B0aW9ucyd9eydkaWZmX2lnbm9yZV9yZWdleHAnfTsKKworICAgICRkaXIgPX4gc3svKyR9e307ICMgU3RyaXAgdHJhaWxpbmcgLworICAgIG15ICgkZGlybmFtZSwgJHVwZGlyKSA9IGZpbGVwYXJzZSgkZGlyKTsKKworICAgIGlmIChzY2FsYXIoQGFyZ3YpKSB7CisgICAgICAgIHVzYWdlZXJyKF9nKCItYiB0YWtlcyBvbmx5IG9uZSBwYXJhbWV0ZXIgd2l0aCBmb3JtYXQgYCVzJyIpLAorICAgICAgICAgICAgICAgICAkc2VsZi0+eydmaWVsZHMnfXsnRm9ybWF0J30pOworICAgIH0KKworICAgIG15ICRzb3VyY2VwYWNrYWdlID0gJHNlbGYtPnsnZmllbGRzJ317J1NvdXJjZSd9OworICAgIG15ICRiYXNlbmFtZXJldiA9ICRzZWxmLT5nZXRfYmFzZW5hbWUoMSk7CisgICAgbXkgJGJhc2VuYW1lID0gJHNlbGYtPmdldF9iYXNlbmFtZSgpOworICAgIG15ICRiYXNlZGlybmFtZSA9ICRiYXNlbmFtZTsKKyAgICAkYmFzZWRpcm5hbWUgPX4gcy9fLy0vOworCisgICAgc2FuaXR5X2NoZWNrKCRkaXIpOworCisgICAgbXkgJG9sZF9jd2QgPSBnZXRjd2QoKTsKKyAgICBjaGRpcigkZGlyKSB8fAorICAgICAgICAgICAgc3lzZXJyKF9nKCJ1bmFibGUgdG8gY2hkaXIgdG8gYCVzJyIpLCAkZGlyKTsKKworICAgICMgQ2hlY2sgZm9yIHVuY29tbWl0dGVkIGZpbGVzLgorICAgICMgVG8gc3VwcG9ydCBkcGtnLXNvdXJjZSAtaSwgcmVtb3ZlIGFueSBpZ25vcmVkIGZpbGVzIGZyb20gdGhlCisgICAgIyBvdXRwdXQgb2YgYnpyIHN0YXR1cy4KKyAgICBvcGVuKEJaUl9TVEFUVVMsICctfCcsICJienIiLCAic3RhdHVzIikgfHwKKyAgICAgICAgICAgIHN1YnByb2NlcnIoImJ6ciBzdGF0dXMiKTsKKyAgICBteSBAZmlsZXM7CisgICAgd2hpbGUgKDxCWlJfU1RBVFVTPikgeworICAgICAgICBjaG9tcDsKKyAgICAgICAgbmV4dCB1bmxlc3Mgcy9eICsvLzsKKyAgICAgICAgaWYgKCEgbGVuZ3RoICRkaWZmX2lnbm9yZV9yZWdleHAgfHwKKyAgICAgICAgICAgICEgbS8kZGlmZl9pZ25vcmVfcmVnZXhwL28pIHsKKyAgICAgICAgICAgIHB1c2ggQGZpbGVzLCAkXzsKKyAgICAgICAgfQorICAgIH0KKyAgICBjbG9zZShCWlJfU1RBVFVTKSB8fCBzeXNlcnIoX2coImJ6ciBzdGF0dXMgZXhpdGVkIG5vbnplcm8iKSk7CisgICAgaWYgKEBmaWxlcykgeworICAgICAgICBlcnJvcihfZygidW5jb21taXR0ZWQsIG5vdC1pZ25vcmVkIGNoYW5nZXMgaW4gd29ya2luZyBkaXJlY3Rvcnk6ICVzIiksCisgICAgICAgICAgICAgIGpvaW4oIiAiLCBAZmlsZXMpKTsKKyAgICB9CisKKyAgICBjaGRpcigkb2xkX2N3ZCkgfHwKKyAgICAgICAgICAgIHN5c2VycihfZygidW5hYmxlIHRvIGNoZGlyIHRvIGAlcyciKSwgJG9sZF9jd2QpOworCisgICAgbXkgJHRtcCA9IHRlbXBkaXIoIiRkaXJuYW1lLmJ6ci5YWFhYWFgiLCBESVIgPT4gJHVwZGlyKTsKKyAgICBwdXNoIEBEcGtnOjpFeGl0OjpoYW5kbGVycywgc3ViIHsgZXJhc2VkaXIoJHRtcCkgfTsKKyAgICBteSAkdGFyZGlyID0gIiR0bXAvJGRpcm5hbWUiOworCisgICAgc3lzdGVtKCJienIiLCAiYnJhbmNoIiwgJGRpciwgJHRhcmRpcik7CisgICAgJD8gJiYgc3VicHJvY2VycigiYnpyIGJyYW5jaCAkZGlyICR0YXJkaXIiKTsKKworICAgICMgUmVtb3ZlIHRoZSB3b3JraW5nIHRyZWUuCisgICAgc3lzdGVtKCJienIiLCAicmVtb3ZlLXRyZWUiLCAkdGFyZGlyKTsKKworICAgICMgU29tZSBicmFuY2ggbWV0YWRhdGEgZmlsZXMgYXJlIHVuaGVscGZ1bC4KKyAgICB1bmxpbmsoIiR0YXJkaXIvLmJ6ci9icmFuY2gvYnJhbmNoLW5hbWUiLAorICAgICAgICAgICAiJHRhcmRpci8uYnpyL2JyYW5jaC9wYXJlbnQiKTsKKworICAgICMgQ3JlYXRlIHRoZSB0YXIgZmlsZQorICAgIG15ICRkZWJpYW5maWxlID0gIiRiYXNlbmFtZXJldi5ienIudGFyLiIgLiAkc2VsZi0+eydvcHRpb25zJ317J2NvbXBfZXh0J307CisgICAgaW5mbyhfZygiYnVpbGRpbmcgJXMgaW4gJXMiKSwKKyAgICAgICAgICRzb3VyY2VwYWNrYWdlLCAkZGViaWFuZmlsZSk7CisgICAgbXkgJHRhciA9IERwa2c6OlNvdXJjZTo6QXJjaGl2ZS0+bmV3KGZpbGVuYW1lID0+ICRkZWJpYW5maWxlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb21wcmVzc2lvbiA9PiAkc2VsZi0+eydvcHRpb25zJ317J2NvbXByZXNzaW9uJ30sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbXByZXNzaW9uX2xldmVsID0+ICRzZWxmLT57J29wdGlvbnMnfXsnY29tcF9sZXZlbCd9KTsKKyAgICAkdGFyLT5jcmVhdGUoJ2NoZGlyJyA9PiAkdG1wKTsKKyAgICAkdGFyLT5hZGRfZGlyZWN0b3J5KCRkaXJuYW1lKTsKKyAgICAkdGFyLT5maW5pc2goKTsKKworICAgIGVyYXNlZGlyKCR0bXApOworICAgIHBvcCBARHBrZzo6RXhpdDo6aGFuZGxlcnM7CisKKyAgICAkc2VsZi0+YWRkX2ZpbGUoJGRlYmlhbmZpbGUpOworfQorCisjIENhbGxlZCBhZnRlciBhIHRhcmJhbGwgaXMgdW5wYWNrZWQsIHRvIGNoZWNrIG91dCB0aGUgd29ya2luZyBjb3B5Lgorc3ViIGRvX2V4dHJhY3QgeworICAgIG15ICgkc2VsZiwgJG5ld2RpcmVjdG9yeSkgPSBAXzsKKyAgICBteSAkZmllbGRzID0gJHNlbGYtPnsnZmllbGRzJ307CisKKyAgICBteSAkZHNjZGlyID0gJHNlbGYtPnsnYmFzZWRpcid9OworCisgICAgbXkgJGJhc2VuYW1lID0gJHNlbGYtPmdldF9iYXNlbmFtZSgpOworICAgIG15ICRiYXNlbmFtZXJldiA9ICRzZWxmLT5nZXRfYmFzZW5hbWUoMSk7CisKKyAgICBteSBAZmlsZXMgPSAkc2VsZi0+Z2V0X2ZpbGVzKCk7CisgICAgaWYgKEBmaWxlcyA+IDEpIHsKKyAgICAgICAgZXJyb3IoX2coImZvcm1hdCB2My4wIHVzZXMgb25seSBvbmUgc291cmNlIGZpbGUiKSk7CisgICAgfQorICAgIG15ICR0YXJmaWxlID0gJGZpbGVzWzBdOworICAgIGlmICgkdGFyZmlsZSAhfiAvXlxRJGJhc2VuYW1lcmV2XEVcLmJ6clwudGFyXC4kY29tcHJlc3Npb25fcmVfZmlsZV9leHQkLykgeworICAgICAgICBlcnJvcihfZygiZXhwZWN0ZWQgJXMsIGdvdCAlcyIpLAorICAgICAgICAgICAgICAiJGJhc2VuYW1lcmV2LmJ6ci50YXIuJGNvbXByZXNzaW9uX3JlX2ZpbGVfZXh0IiwgJHRhcmZpbGUpOworICAgIH0KKworICAgIGVyYXNlZGlyKCRuZXdkaXJlY3RvcnkpOworCisgICAgIyBFeHRyYWN0IG1haW4gdGFyYmFsbAorICAgIGluZm8oX2coInVucGFja2luZyAlcyIpLCAkdGFyZmlsZSk7CisgICAgbXkgJHRhciA9IERwa2c6OlNvdXJjZTo6QXJjaGl2ZS0+bmV3KGZpbGVuYW1lID0+ICIkZHNjZGlyJHRhcmZpbGUiKTsKKyAgICAkdGFyLT5leHRyYWN0KCRuZXdkaXJlY3RvcnkpOworCisgICAgc2FuaXR5X2NoZWNrKCRuZXdkaXJlY3RvcnkpOworCisgICAgbXkgJG9sZF9jd2QgPSBnZXRjd2QoKTsKKyAgICBjaGRpcigkbmV3ZGlyZWN0b3J5KSB8fAorICAgICAgICAgICAgc3lzZXJyKF9nKCJ1bmFibGUgdG8gY2hkaXIgdG8gYCVzJyIpLCAkbmV3ZGlyZWN0b3J5KTsKKworICAgICMgUmVjb25zdGl0dXRlIHRoZSB3b3JraW5nIHRyZWUuCisgICAgc3lzdGVtKCJienIiLCAiY2hlY2tvdXQiKTsKKworICAgIGNoZGlyKCRvbGRfY3dkKSB8fAorICAgICAgICAgICAgc3lzZXJyKF9nKCJ1bmFibGUgdG8gY2hkaXIgdG8gYCVzJyIpLCAkb2xkX2N3ZCk7Cit9CisKKzE7CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9jdXN0b20ucG0gYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9jdXN0b20ucG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTFhOWY5OQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2N1c3RvbS5wbQpAQCAtMCwwICsxLDYyIEBACisjIENvcHlyaWdodCDCqSAyMDA4IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KKyMKKyMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyMKKyMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisjIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisjIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyMKKyMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisKK3BhY2thZ2UgRHBrZzo6U291cmNlOjpQYWNrYWdlOjpWMzo6Y3VzdG9tOworCit1c2Ugc3RyaWN0OwordXNlIHdhcm5pbmdzOworCitvdXIgJFZFUlNJT04gPSAiMC4wMSI7CisKK3VzZSBiYXNlICdEcGtnOjpTb3VyY2U6OlBhY2thZ2UnOworCit1c2UgRHBrZzsKK3VzZSBEcGtnOjpHZXR0ZXh0OwordXNlIERwa2c6OkVycm9ySGFuZGxpbmc7CisKK291ciAkQ1VSUkVOVF9NSU5PUl9WRVJTSU9OID0gIjAiOworCitzdWIgcGFyc2VfY21kbGluZV9vcHRpb24geworICAgIG15ICgkc2VsZiwgJG9wdCkgPSBAXzsKKyAgICBpZiAoJG9wdCA9fiAvXi0tdGFyZ2V0LWZvcm1hdD0oLiopJC8pIHsKKyAgICAgICAgJHNlbGYtPnsnb3B0aW9ucyd9eyd0YXJnZXRfZm9ybWF0J30gPSAkMTsKKyAgICAgICAgcmV0dXJuIDE7CisgICAgfQorICAgIHJldHVybiAwOworfQorc3ViIGRvX2V4dHJhY3QgeworICAgIGVycm9yKF9nKCJGb3JtYXQgYDMuMCAoY3VzdG9tKScgaXMgb25seSB1c2VkIHRvIGNyZWF0ZSBzb3VyY2UgcGFja2FnZXMiKSk7Cit9CisKK3N1YiBjYW5fYnVpbGQgeworICAgIG15ICgkc2VsZiwgJGRpcikgPSBAXzsKKyAgICByZXR1cm4gKHNjYWxhcihAeyRzZWxmLT57J29wdGlvbnMnfXsnQVJHVid9fSksCisgICAgICAgICAgICBfZygibm8gZmlsZXMgaW5kaWNhdGVkIG9uIGNvbW1hbmQgbGluZSIpKTsKK30KKworc3ViIGRvX2J1aWxkIHsKKyAgICBteSAoJHNlbGYsICRkaXIpID0gQF87CisgICAgIyBVcGRhdGUgcmVhbCB0YXJnZXQgZm9ybWF0CisgICAgbXkgJGZvcm1hdCA9ICRzZWxmLT57J29wdGlvbnMnfXsndGFyZ2V0X2Zvcm1hdCd9OworICAgIGVycm9yKF9nKCItLXRhcmdldC1mb3JtYXQgb3B0aW9uIGlzIG1pc3NpbmciKSkgdW5sZXNzICRmb3JtYXQ7CisgICAgJHNlbGYtPnsnZmllbGRzJ317J0Zvcm1hdCd9ID0gJGZvcm1hdDsKKyAgICAjIEFkZCBhbGwgZmlsZXMKKyAgICBmb3JlYWNoIG15ICRmaWxlIChAeyRzZWxmLT57J29wdGlvbnMnfXsnQVJHVid9fSkgeworICAgICAgICAkc2VsZi0+YWRkX2ZpbGUoJGZpbGUpOworICAgIH0KK30KKworIyB2aW06ZXQ6c3c9NDp0cz04CisxOwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvZ2l0LnBtIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvZ2l0LnBtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmRlODBiNGUKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9naXQucG0KQEAgLTAsMCArMSwyMzUgQEAKKyMKKyMgZ2l0IHN1cHBvcnQgZm9yIGRwa2ctc291cmNlCisjCisjIENvcHlyaWdodCDCqSAyMDA3LDIwMTAgSm9leSBIZXNzIDxqb2V5aEBkZWJpYW4ub3JnPi4KKyMgQ29weXJpZ2h0IMKpIDIwMDggRnJhbmsgTGljaHRlbmhlbGQgPGRqcGlnQGRlYmlhbi5vcmc+CisjCisjIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisjIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisjIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisjIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisjCisjIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisjIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisjCisjIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisjIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorCitwYWNrYWdlIERwa2c6OlNvdXJjZTo6UGFja2FnZTo6VjM6OmdpdDsKKwordXNlIHN0cmljdDsKK3VzZSB3YXJuaW5nczsKKworb3VyICRWRVJTSU9OID0gIjAuMDIiOworCit1c2UgYmFzZSAnRHBrZzo6U291cmNlOjpQYWNrYWdlJzsKKwordXNlIEN3ZCBxdyhhYnNfcGF0aCBnZXRjd2QpOwordXNlIEZpbGU6OkJhc2VuYW1lOwordXNlIEZpbGU6OlRlbXAgcXcodGVtcGRpcik7CisKK3VzZSBEcGtnOwordXNlIERwa2c6OkdldHRleHQ7Cit1c2UgRHBrZzo6RXJyb3JIYW5kbGluZzsKK3VzZSBEcGtnOjpFeGl0OwordXNlIERwa2c6OlNvdXJjZTo6RnVuY3Rpb25zIHF3KGVyYXNlZGlyKTsKKworb3VyICRDVVJSRU5UX01JTk9SX1ZFUlNJT04gPSAiMCI7CisKKyMgUmVtb3ZlIHZhcmlhYmxlcyBmcm9tIHRoZSBlbnZpcm9ubWVudCB0aGF0IG1pZ2h0IGNhdXNlIGdpdCB0byBkbworIyBzb21ldGhpbmcgdW5leHBlY3RlZC4KK2RlbGV0ZSAkRU5We0dJVF9ESVJ9OworZGVsZXRlICRFTlZ7R0lUX0lOREVYX0ZJTEV9OworZGVsZXRlICRFTlZ7R0lUX09CSkVDVF9ESVJFQ1RPUll9OworZGVsZXRlICRFTlZ7R0lUX0FMVEVSTkFURV9PQkpFQ1RfRElSRUNUT1JJRVN9OworZGVsZXRlICRFTlZ7R0lUX1dPUktfVFJFRX07CisKK3N1YiBpbXBvcnQgeworICAgIGZvcmVhY2ggbXkgJGRpciAoc3BsaXQoLzovLCAkRU5We1BBVEh9KSkgeworICAgICAgICBpZiAoLXggIiRkaXIvZ2l0IikgeworICAgICAgICAgICAgcmV0dXJuIDE7CisgICAgICAgIH0KKyAgICB9CisgICAgZXJyb3IoX2coIlRoaXMgc291cmNlIHBhY2thZ2UgY2FuIG9ubHkgYmUgbWFuaXB1bGF0ZWQgdXNpbmcgZ2l0LCAiIC4KKyAgICAgICAgICAgICAid2hpY2ggaXMgbm90IGluIHRoZSBQQVRILiIpKTsKK30KKworc3ViIHNhbml0eV9jaGVjayB7CisgICAgbXkgJHNyY2RpciA9IHNoaWZ0OworCisgICAgaWYgKCEgLWQgIiRzcmNkaXIvLmdpdCIpIHsKKyAgICAgICAgZXJyb3IoX2coInNvdXJjZSBkaXJlY3RvcnkgaXMgbm90IHRoZSB0b3AgZGlyZWN0b3J5IG9mIGEgZ2l0ICIgLgorICAgICAgICAgICAgICAgICAicmVwb3NpdG9yeSAoJXMvLmdpdCBub3QgcHJlc2VudCksIGJ1dCBGb3JtYXQgZ2l0IHdhcyAiIC4KKyAgICAgICAgICAgICAgICAgInNwZWNpZmllZCIpLCAkc3JjZGlyKTsKKyAgICB9CisgICAgaWYgKC1zICIkc3JjZGlyLy5naXRtb2R1bGVzIikgeworICAgICAgICBlcnJvcihfZygiZ2l0IHJlcG9zaXRvcnkgJXMgdXNlcyBzdWJtb2R1bGVzLiBUaGlzIGlzIG5vdCB5ZXQgc3VwcG9ydGVkLiIpLAorICAgICAgICAgICAgICAkc3JjZGlyKTsKKyAgICB9CisKKyAgICByZXR1cm4gMTsKK30KKworc3ViIHBhcnNlX2NtZGxpbmVfb3B0aW9uIHsKKyAgICBteSAoJHNlbGYsICRvcHQpID0gQF87CisgICAgcmV0dXJuIDEgaWYgJHNlbGYtPlNVUEVSOjpwYXJzZV9jbWRsaW5lX29wdGlvbigkb3B0KTsKKyAgICBpZiAoJG9wdCA9fiAvXi0tZ2l0LXJlZj0oLiopJC8pIHsKKyAgICAgICAgcHVzaCBAeyRzZWxmLT57J29wdGlvbnMnfXsnZ2l0LXJlZid9fSwgJDE7CisgICAgICAgIHJldHVybiAxOworICAgIH0gZWxzaWYgKCRvcHQgPX4gL14tLWdpdC1kZXB0aD0oXGQrKSQvKSB7CisgICAgICAgICRzZWxmLT57J29wdGlvbnMnfXsnZ2l0LWRlcHRoJ30gPSAkMTsKKyAgICAgICAgcmV0dXJuIDE7CisgICAgfQorICAgIHJldHVybiAwOworfQorCitzdWIgY2FuX2J1aWxkIHsKKyAgICBteSAoJHNlbGYsICRkaXIpID0gQF87CisgICAgcmV0dXJuICgtZCAiJGRpci8uZ2l0IiwgX2coImRvZXNuJ3QgY29udGFpbiBhIGdpdCByZXBvc2l0b3J5IikpOworfQorCitzdWIgZG9fYnVpbGQgeworICAgIG15ICgkc2VsZiwgJGRpcikgPSBAXzsKKyAgICBteSAkZGlmZl9pZ25vcmVfcmVnZXhwID0gJHNlbGYtPnsnb3B0aW9ucyd9eydkaWZmX2lnbm9yZV9yZWdleHAnfTsKKworICAgICRkaXIgPX4gc3svKyR9e307ICMgU3RyaXAgdHJhaWxpbmcgLworICAgIG15ICgkZGlybmFtZSwgJHVwZGlyKSA9IGZpbGVwYXJzZSgkZGlyKTsKKyAgICBteSAkYmFzZW5hbWVyZXYgPSAkc2VsZi0+Z2V0X2Jhc2VuYW1lKDEpOworCisgICAgc2FuaXR5X2NoZWNrKCRkaXIpOworCisgICAgbXkgJG9sZF9jd2QgPSBnZXRjd2QoKTsKKyAgICBjaGRpcigkZGlyKSB8fCBzeXNlcnIoX2coInVuYWJsZSB0byBjaGRpciB0byBgJXMnIiksICRkaXIpOworCisgICAgIyBDaGVjayBmb3IgdW5jb21taXR0ZWQgZmlsZXMuCisgICAgIyBUbyBzdXBwb3J0IGRwa2ctc291cmNlIC1pLCBnZXQgYSBsaXN0IG9mIGZpbGVzCisgICAgIyBlcXVpdmFsZW50IHRvIHRoZSBvbmVzIGdpdCBzdGF0dXMgZmluZHMsIGFuZCByZW1vdmUgYW55CisgICAgIyBpZ25vcmVkIGZpbGVzIGZyb20gaXQuCisgICAgbXkgQGlnbm9yZXMgPSAiLS1leGNsdWRlLXBlci1kaXJlY3Rvcnk9LmdpdGlnbm9yZSI7CisgICAgbXkgJGNvcmVfZXhjbHVkZXNmaWxlID0gYGdpdCBjb25maWcgLS1nZXQgY29yZS5leGNsdWRlc2ZpbGVgOworICAgIGNob21wICRjb3JlX2V4Y2x1ZGVzZmlsZTsKKyAgICBpZiAobGVuZ3RoICRjb3JlX2V4Y2x1ZGVzZmlsZSAmJiAtZSAkY29yZV9leGNsdWRlc2ZpbGUpIHsKKyAgICAgICAgcHVzaCBAaWdub3JlcywgIi0tZXhjbHVkZS1mcm9tPSRjb3JlX2V4Y2x1ZGVzZmlsZSI7CisgICAgfQorICAgIGlmICgtZSAiLmdpdC9pbmZvL2V4Y2x1ZGUiKSB7CisgICAgICAgIHB1c2ggQGlnbm9yZXMsICItLWV4Y2x1ZGUtZnJvbT0uZ2l0L2luZm8vZXhjbHVkZSI7CisgICAgfQorICAgIG9wZW4oR0lUX0xTX0ZJTEVTLCAnLXwnLCAiZ2l0IiwgImxzLWZpbGVzIiwgIi0tbW9kaWZpZWQiLCAiLS1kZWxldGVkIiwKKyAgICAgICAgICIteiIsICItLW90aGVycyIsIEBpZ25vcmVzKSB8fCBzdWJwcm9jZXJyKCJnaXQgbHMtZmlsZXMiKTsKKyAgICBteSBAZmlsZXM7CisgICAgeyBsb2NhbCAkLyA9ICJcMCI7CisgICAgICB3aGlsZSAoPEdJVF9MU19GSUxFUz4pIHsKKyAgICAgICAgICBjaG9tcDsKKyAgICAgICAgICBpZiAoISBsZW5ndGggJGRpZmZfaWdub3JlX3JlZ2V4cCB8fAorICAgICAgICAgICAgICAhIG0vJGRpZmZfaWdub3JlX3JlZ2V4cC9vKSB7CisgICAgICAgICAgICAgIHB1c2ggQGZpbGVzLCAkXzsKKyAgICAgICAgICB9CisgICAgICB9CisgICAgfQorICAgIGNsb3NlKEdJVF9MU19GSUxFUykgfHwgc3lzZXJyKF9nKCJnaXQgbHMtZmlsZXMgZXhpdGVkIG5vbnplcm8iKSk7CisgICAgaWYgKEBmaWxlcykgeworICAgICAgICBlcnJvcihfZygidW5jb21taXR0ZWQsIG5vdC1pZ25vcmVkIGNoYW5nZXMgaW4gd29ya2luZyBkaXJlY3Rvcnk6ICVzIiksCisgICAgICAgICAgICAgIGpvaW4oIiAiLCBAZmlsZXMpKTsKKyAgICB9CisKKyAgICAjIElmIGEgZGVwdGggd2FzIHNwZWNpZmllZCwgbmVlZCB0byBjcmVhdGUgYSBzaGFsbG93IGNsb25lIGFuZAorICAgICMgYnVuZGxlIHRoYXQuCisgICAgbXkgJHRtcDsKKyAgICBteSAkc2hhbGxvd2ZpbGU7CisgICAgaWYgKCRzZWxmLT57J29wdGlvbnMnfXsnZ2l0LWRlcHRoJ30pIHsKKyAgICAgICAgY2hkaXIoJG9sZF9jd2QpIHx8CisgICAgICAgICAgICAgICAgc3lzZXJyKF9nKCJ1bmFibGUgdG8gY2hkaXIgdG8gYCVzJyIpLCAkb2xkX2N3ZCk7CisgICAgICAgICR0bXAgPSB0ZW1wZGlyKCIkZGlybmFtZS5naXQuWFhYWFhYIiwgRElSID0+ICR1cGRpcik7CisgICAgICAgIHB1c2ggQERwa2c6OkV4aXQ6OmhhbmRsZXJzLCBzdWIgeyBlcmFzZWRpcigkdG1wKSB9OworICAgICAgICBteSAkY2xvbmVfZGlyID0gIiR0bXAvcmVwby5naXQiOworICAgICAgICAjIGZpbGU6Ly8gaXMgbmVlZGVkIHRvIGF2b2lkIGxvY2FsIGNsb25pbmcsIHdoaWNoIGRvZXMgbm90CisgICAgICAgICMgY3JlYXRlIGEgc2hhbGxvdyBjbG9uZS4KKyAgICAgICAgaW5mbyhfZygiY3JlYXRpbmcgc2hhbGxvdyBjbG9uZSB3aXRoIGRlcHRoICVzIiksCisgICAgICAgICAgICAgICAgJHNlbGYtPnsnb3B0aW9ucyd9eydnaXQtZGVwdGgnfSk7CisgICAgICAgIHN5c3RlbSgiZ2l0IiwgImNsb25lIiwgIi0tZGVwdGg9Ii4kc2VsZi0+eydvcHRpb25zJ317J2dpdC1kZXB0aCd9LAorICAgICAgICAgICAgICAgICItLXF1aWV0IiwgIi0tYmFyZSIsICJmaWxlOi8vIiAuIGFic19wYXRoKCRkaXIpLCAkY2xvbmVfZGlyKTsKKyAgICAgICAgJD8gJiYgc3VicHJvY2VycigiZ2l0IGNsb25lIik7CisgICAgICAgIGNoZGlyKCRjbG9uZV9kaXIpIHx8CisgICAgICAgICAgICAgICAgc3lzZXJyKF9nKCJ1bmFibGUgdG8gY2hkaXIgdG8gYCVzJyIpLCAkY2xvbmVfZGlyKTsKKyAgICAgICAgJHNoYWxsb3dmaWxlID0gIiRiYXNlbmFtZXJldi5naXRzaGFsbG93IjsKKyAgICAgICAgc3lzdGVtKCJjcCIsICItZiIsICJzaGFsbG93IiwgIiRvbGRfY3dkLyRzaGFsbG93ZmlsZSIpOworICAgICAgICAkPyAmJiBzdWJwcm9jZXJyKCJjcCBzaGFsbG93Iik7CisgICAgfQorCisgICAgIyBDcmVhdGUgdGhlIGdpdCBidW5kbGUuCisgICAgbXkgJGJ1bmRsZWZpbGUgPSAiJGJhc2VuYW1lcmV2LmdpdCI7CisgICAgbXkgQGJ1bmRsZV9hcmc9JHNlbGYtPnsnb3B0aW9ucyd9eydnaXQtcmVmJ30gPworICAgICAgICAoQHskc2VsZi0+eydvcHRpb25zJ317J2dpdC1yZWYnfX0pIDogIi0tYWxsIjsKKyAgICBpbmZvKF9nKCJidW5kbGluZzogJXMiKSwgam9pbigiICIsIEBidW5kbGVfYXJnKSk7CisgICAgc3lzdGVtKCJnaXQiLCAiYnVuZGxlIiwgImNyZWF0ZSIsICIkb2xkX2N3ZC8kYnVuZGxlZmlsZSIsCisgICAgICAgICAgIEBidW5kbGVfYXJnLAorICAgICAgICAgICAiSEVBRCIsICMgZW5zdXJlIEhFQUQgaXMgaW5jbHVkZWQgbm8gbWF0dGVyIHdoYXQKKyAgICAgICAgICAgIi0tIiwgIyBhdm9pZHMgYW1iaWd1aXR5IGVycm9yIHdoZW4gcmVmZXJyaW5nIHRvIGVnLCBhIGRlYmlhbiBicmFuY2gKKyAgICApOworICAgICQ/ICYmIHN1YnByb2NlcnIoImdpdCBidW5kbGUiKTsKKworICAgIGNoZGlyKCRvbGRfY3dkKSB8fAorICAgICAgICBzeXNlcnIoX2coInVuYWJsZSB0byBjaGRpciB0byBgJXMnIiksICRvbGRfY3dkKTsKKworICAgIGlmIChkZWZpbmVkICR0bXApIHsKKyAgICAgICAgZXJhc2VkaXIoJHRtcCk7CisgICAgICAgIHBvcCBARHBrZzo6RXhpdDo6aGFuZGxlcnM7CisgICAgfQorCisgICAgJHNlbGYtPmFkZF9maWxlKCRidW5kbGVmaWxlKTsKKyAgICBpZiAoZGVmaW5lZCAkc2hhbGxvd2ZpbGUpIHsKKyAgICAgICAgJHNlbGYtPmFkZF9maWxlKCRzaGFsbG93ZmlsZSk7CisgICAgfQorfQorCitzdWIgZG9fZXh0cmFjdCB7CisgICAgbXkgKCRzZWxmLCAkbmV3ZGlyZWN0b3J5KSA9IEBfOworICAgIG15ICRmaWVsZHMgPSAkc2VsZi0+eydmaWVsZHMnfTsKKworICAgIG15ICRkc2NkaXIgPSAkc2VsZi0+eydiYXNlZGlyJ307CisgICAgbXkgJGJhc2VuYW1lcmV2ID0gJHNlbGYtPmdldF9iYXNlbmFtZSgxKTsKKworICAgIG15IEBmaWxlcyA9ICRzZWxmLT5nZXRfZmlsZXMoKTsKKyAgICBteSAoJGJ1bmRsZSwgJHNoYWxsb3cpOworICAgIGZvcmVhY2ggbXkgJGZpbGUgKEBmaWxlcykgeworICAgICAgICBpZiAoJGZpbGUgPX4gL15cUSRiYXNlbmFtZXJldlxFXC5naXQkLykgeworICAgICAgICAgICAgaWYgKCEgZGVmaW5lZCAkYnVuZGxlKSB7CisgICAgICAgICAgICAgICAgJGJ1bmRsZSA9ICRmaWxlOworICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICBlcnJvcihfZygiZm9ybWF0IHYzLjAgKGdpdCkgdXNlcyBvbmx5IG9uZSAuZ2l0IGZpbGUiKSk7CisgICAgICAgICAgICB9CisgICAgICAgIH0gZWxzaWYgKCRmaWxlID1+IC9eXFEkYmFzZW5hbWVyZXZcRVwuZ2l0c2hhbGxvdyQvKSB7CisgICAgICAgICAgICBpZiAoISBkZWZpbmVkICRzaGFsbG93KSB7CisgICAgICAgICAgICAgICAgJHNoYWxsb3cgPSAkZmlsZTsKKyAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgZXJyb3IoX2coImZvcm1hdCB2My4wIChnaXQpIHVzZXMgb25seSBvbmUgLmdpdHNoYWxsb3cgZmlsZSIpKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIGVycm9yKF9nKCJmb3JtYXQgdjMuMCAoZ2l0KSB1bmtub3duIGZpbGU6ICVzIiwgJGZpbGUpKTsKKyAgICAgICAgfQorICAgIH0KKyAgICBpZiAoISBkZWZpbmVkICRidW5kbGUpIHsKKyAgICAgICAgZXJyb3IoX2coImZvcm1hdCB2My4wIChnaXQpIGV4cGVjdGVkICVzIiksICIkYmFzZW5hbWVyZXYuZ2l0Iik7CisgICAgfQorCisgICAgZXJhc2VkaXIoJG5ld2RpcmVjdG9yeSk7CisKKyAgICAjIEV4dHJhY3QgZ2l0IGJ1bmRsZS4KKyAgICBpbmZvKF9nKCJjbG9uaW5nICVzIiksICRidW5kbGUpOworICAgIHN5c3RlbSgiZ2l0IiwgImNsb25lIiwgIi0tcXVpZXQiLCAkZHNjZGlyLiRidW5kbGUsICRuZXdkaXJlY3RvcnkpOworICAgICQ/ICYmIHN1YnByb2NlcnIoImdpdCBidW5kbGUiKTsKKworICAgIGlmIChkZWZpbmVkICRzaGFsbG93KSB7CisgICAgICAgICMgTW92ZSBzaGFsbG93IGluZm8gZmlsZSBpbnRvIHBsYWNlLCBzbyBnaXQgZG9lcyBub3QKKyAgICAgICAgIyB0cnkgdG8gZm9sbG93IHBhcmVudHMgb2Ygc2hhbGxvdyByZWZzLgorICAgICAgICBpbmZvKF9nKCJzZXR0aW5nIHVwIHNoYWxsb3cgY2xvbmUiKSk7CisgICAgICAgIHN5c3RlbSgiY3AiLCAiLWYiLCAgJGRzY2Rpci4kc2hhbGxvdywgIiRuZXdkaXJlY3RvcnkvLmdpdC9zaGFsbG93Iik7CisgICAgICAgICQ/ICYmIHN1YnByb2NlcnIoImNwIik7CisgICAgfQorCisgICAgc2FuaXR5X2NoZWNrKCRuZXdkaXJlY3RvcnkpOworfQorCisxOwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvbmF0aXZlLnBtIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvbmF0aXZlLnBtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmJhNjUzOWEKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9uYXRpdmUucG0KQEAgLTAsMCArMSwxMDggQEAKKyMgQ29weXJpZ2h0IMKpIDIwMDggUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorIworIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorIworIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorIworIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKworcGFja2FnZSBEcGtnOjpTb3VyY2U6OlBhY2thZ2U6OlYzOjpuYXRpdmU7CisKK3VzZSBzdHJpY3Q7Cit1c2Ugd2FybmluZ3M7CisKK291ciAkVkVSU0lPTiA9ICIwLjAxIjsKKwordXNlIGJhc2UgJ0Rwa2c6OlNvdXJjZTo6UGFja2FnZSc7CisKK3VzZSBEcGtnOwordXNlIERwa2c6OkdldHRleHQ7Cit1c2UgRHBrZzo6RXJyb3JIYW5kbGluZzsKK3VzZSBEcGtnOjpDb21wcmVzc2lvbjsKK3VzZSBEcGtnOjpFeGl0OwordXNlIERwa2c6OlNvdXJjZTo6QXJjaGl2ZTsKK3VzZSBEcGtnOjpTb3VyY2U6OkZ1bmN0aW9ucyBxdyhlcmFzZWRpcik7CisKK3VzZSBQT1NJWDsKK3VzZSBGaWxlOjpCYXNlbmFtZTsKK3VzZSBGaWxlOjpUZW1wIHF3KHRlbXBmaWxlKTsKKworb3VyICRDVVJSRU5UX01JTk9SX1ZFUlNJT04gPSAiMCI7CisKK3N1YiBkb19leHRyYWN0IHsKKyAgICBteSAoJHNlbGYsICRuZXdkaXJlY3RvcnkpID0gQF87CisgICAgbXkgJHNvdXJjZXN0eWxlID0gJHNlbGYtPnsnb3B0aW9ucyd9eydzb3VyY2VzdHlsZSd9OworICAgIG15ICRmaWVsZHMgPSAkc2VsZi0+eydmaWVsZHMnfTsKKworICAgIG15ICRkc2NkaXIgPSAkc2VsZi0+eydiYXNlZGlyJ307CisgICAgbXkgJGJhc2VuYW1lID0gJHNlbGYtPmdldF9iYXNlbmFtZSgpOworICAgIG15ICRiYXNlbmFtZXJldiA9ICRzZWxmLT5nZXRfYmFzZW5hbWUoMSk7CisKKyAgICBteSAkdGFyZmlsZTsKKyAgICBmb3JlYWNoIG15ICRmaWxlICgkc2VsZi0+Z2V0X2ZpbGVzKCkpIHsKKwlpZiAoJGZpbGUgPX4gL15cUSRiYXNlbmFtZXJldlxFXC50YXJcLiRjb21wcmVzc2lvbl9yZV9maWxlX2V4dCQvKSB7CisgICAgICAgICAgICBlcnJvcihfZygibXVsdGlwbGUgdGFyZmlsZXMgaW4gdjEuMCBzb3VyY2UgcGFja2FnZSIpKSBpZiAkdGFyZmlsZTsKKyAgICAgICAgICAgICR0YXJmaWxlID0gJGZpbGU7CisJfSBlbHNlIHsKKwkgICAgZXJyb3IoX2coInVucmVjb2duaXplZCBmaWxlIGZvciBhIG5hdGl2ZSBzb3VyY2UgcGFja2FnZTogJXMiKSwgJGZpbGUpOworCX0KKyAgICB9CisKKyAgICBlcnJvcihfZygibm8gdGFyZmlsZSBpbiBGaWxlcyBmaWVsZCIpKSB1bmxlc3MgJHRhcmZpbGU7CisKKyAgICBlcmFzZWRpcigkbmV3ZGlyZWN0b3J5KTsKKyAgICBpbmZvKF9nKCJ1bnBhY2tpbmcgJXMiKSwgJHRhcmZpbGUpOworICAgIG15ICR0YXIgPSBEcGtnOjpTb3VyY2U6OkFyY2hpdmUtPm5ldyhmaWxlbmFtZSA9PiAiJGRzY2RpciR0YXJmaWxlIik7CisgICAgJHRhci0+ZXh0cmFjdCgkbmV3ZGlyZWN0b3J5KTsKK30KKworc3ViIGNhbl9idWlsZCB7CisgICAgcmV0dXJuIDE7Cit9CisKK3N1YiBkb19idWlsZCB7CisgICAgbXkgKCRzZWxmLCAkZGlyKSA9IEBfOworICAgIG15IEB0YXJfaWdub3JlID0gbWFwIHsgIi0tZXhjbHVkZT0kXyIgfSBAeyRzZWxmLT57J29wdGlvbnMnfXsndGFyX2lnbm9yZSd9fTsKKyAgICBteSBAYXJndiA9IEB7JHNlbGYtPnsnb3B0aW9ucyd9eydBUkdWJ319OworCisgICAgaWYgKHNjYWxhcihAYXJndikpIHsKKyAgICAgICAgdXNhZ2VlcnIoX2coIi1iIHRha2VzIG9ubHkgb25lIHBhcmFtZXRlciB3aXRoIGZvcm1hdCBgJXMnIiksCisgICAgICAgICAgICAgICAgICRzZWxmLT57J2ZpZWxkcyd9eydGb3JtYXQnfSk7CisgICAgfQorCisgICAgbXkgJHNvdXJjZXBhY2thZ2UgPSAkc2VsZi0+eydmaWVsZHMnfXsnU291cmNlJ307CisgICAgbXkgJGJhc2VuYW1lcmV2ID0gJHNlbGYtPmdldF9iYXNlbmFtZSgxKTsKKyAgICBteSAkdGFybmFtZSA9ICIkYmFzZW5hbWVyZXYudGFyLiIgLiAkc2VsZi0+eydvcHRpb25zJ317J2NvbXBfZXh0J307CisKKyAgICBpbmZvKF9nKCJidWlsZGluZyAlcyBpbiAlcyIpLCAkc291cmNlcGFja2FnZSwgJHRhcm5hbWUpOworCisgICAgbXkgKCRudGZoLCAkbmV3dGFyKSA9IHRlbXBmaWxlKCIkdGFybmFtZS5uZXcuWFhYWFhYIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRElSID0+IGdldGN3ZCgpLCBVTkxJTksgPT4gMCk7CisgICAgcHVzaCBARHBrZzo6RXhpdDo6aGFuZGxlcnMsIHN1YiB7IHVubGluaygkbmV3dGFyKSB9OworCisgICAgbXkgKCRkaXJuYW1lLCAkZGlyYmFzZSkgPSBmaWxlcGFyc2UoJGRpcik7CisgICAgbXkgJHRhciA9IERwa2c6OlNvdXJjZTo6QXJjaGl2ZS0+bmV3KGZpbGVuYW1lID0+ICRuZXd0YXIsCisgICAgICAgICAgICAgICAgY29tcHJlc3Npb24gPT4gY29tcHJlc3Npb25fZ3Vlc3NfZnJvbV9maWxlbmFtZSgkdGFybmFtZSksCisgICAgICAgICAgICAgICAgY29tcHJlc3Npb25fbGV2ZWwgPT4gJHNlbGYtPnsnb3B0aW9ucyd9eydjb21wX2xldmVsJ30pOworICAgICR0YXItPmNyZWF0ZShvcHRpb25zID0+IFxAdGFyX2lnbm9yZSwgJ2NoZGlyJyA9PiAkZGlyYmFzZSk7CisgICAgJHRhci0+YWRkX2RpcmVjdG9yeSgkZGlybmFtZSk7CisgICAgJHRhci0+ZmluaXNoKCk7CisgICAgcmVuYW1lKCRuZXd0YXIsICR0YXJuYW1lKSB8fAorICAgICAgICBzeXNlcnIoX2coInVuYWJsZSB0byByZW5hbWUgYCVzJyAobmV3bHkgY3JlYXRlZCkgdG8gYCVzJyIpLAorICAgICAgICAgICAgICAgJG5ld3RhciwgJHRhcm5hbWUpOworICAgIHBvcCBARHBrZzo6RXhpdDo6aGFuZGxlcnM7CisgICAgY2htb2QoMDY2NiAmfiB1bWFzaygpLCAkdGFybmFtZSkgfHwKKyAgICAgICAgc3lzZXJyKF9nKCJ1bmFibGUgdG8gY2hhbmdlIHBlcm1pc3Npb24gb2YgYCVzJyIpLCAkdGFybmFtZSk7CisKKyAgICAkc2VsZi0+YWRkX2ZpbGUoJHRhcm5hbWUpOworfQorCisjIHZpbTogc2V0IGV0IHN3PTQgdHM9OAorMTsKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTQ1MDE2ZgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtCkBAIC0wLDAgKzEsNDAwIEBACisjIENvcHlyaWdodCDCqSAyMDA4LTIwMTEgUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPgorIworIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorIworIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorIworIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKworcGFja2FnZSBEcGtnOjpTb3VyY2U6OlBhY2thZ2U6OlYzOjpxdWlsdDsKKwordXNlIHN0cmljdDsKK3VzZSB3YXJuaW5nczsKKworb3VyICRWRVJTSU9OID0gIjAuMDEiOworCisjIEJhc2VkIG9uIHdpZyZwZW4gaW1wbGVtZW50YXRpb24KK3VzZSBiYXNlICdEcGtnOjpTb3VyY2U6OlBhY2thZ2U6OlYyJzsKKwordXNlIERwa2c7Cit1c2UgRHBrZzo6R2V0dGV4dDsKK3VzZSBEcGtnOjpFcnJvckhhbmRsaW5nOwordXNlIERwa2c6OlNvdXJjZTo6UGF0Y2g7Cit1c2UgRHBrZzo6U291cmNlOjpGdW5jdGlvbnMgcXcoZXJhc2VkaXIgZnNfdGltZSk7Cit1c2UgRHBrZzo6SVBDOwordXNlIERwa2c6OlZlbmRvciBxdyhnZXRfY3VycmVudF92ZW5kb3IpOworCit1c2UgUE9TSVg7Cit1c2UgRmlsZTo6QmFzZW5hbWU7Cit1c2UgRmlsZTo6U3BlYzsKK3VzZSBGaWxlOjpQYXRoOwordXNlIEZpbGU6OkNvcHk7CisKK291ciAkQ1VSUkVOVF9NSU5PUl9WRVJTSU9OID0gIjAiOworCitzdWIgaW5pdF9vcHRpb25zIHsKKyAgICBteSAoJHNlbGYpID0gQF87CisgICAgJHNlbGYtPnsnb3B0aW9ucyd9eydzaW5nbGUtZGViaWFuLXBhdGNoJ30gPSAwCisgICAgICAgIHVubGVzcyBleGlzdHMgJHNlbGYtPnsnb3B0aW9ucyd9eydzaW5nbGUtZGViaWFuLXBhdGNoJ307CisgICAgJHNlbGYtPnsnb3B0aW9ucyd9eydhbGxvdy12ZXJzaW9uLW9mLXF1aWx0LWRiJ30gPSBbXQorICAgICAgICB1bmxlc3MgZXhpc3RzICRzZWxmLT57J29wdGlvbnMnfXsnYWxsb3ctdmVyc2lvbi1vZi1xdWlsdC1kYid9OworCisgICAgJHNlbGYtPlNVUEVSOjppbml0X29wdGlvbnMoKTsKK30KKworc3ViIHBhcnNlX2NtZGxpbmVfb3B0aW9uIHsKKyAgICBteSAoJHNlbGYsICRvcHQpID0gQF87CisgICAgcmV0dXJuIDEgaWYgJHNlbGYtPlNVUEVSOjpwYXJzZV9jbWRsaW5lX29wdGlvbigkb3B0KTsKKyAgICBpZiAoJG9wdCA9fiAvXi0tc2luZ2xlLWRlYmlhbi1wYXRjaCQvKSB7CisgICAgICAgICRzZWxmLT57J29wdGlvbnMnfXsnc2luZ2xlLWRlYmlhbi1wYXRjaCd9ID0gMTsKKyAgICAgICAgIyBGb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHkuCisgICAgICAgICRzZWxmLT57J29wdGlvbnMnfXsnYXV0b19jb21taXQnfSA9IDE7CisgICAgICAgIHJldHVybiAxOworICAgIH0gZWxzaWYgKCRvcHQgPX4gL14tLWFsbG93LXZlcnNpb24tb2YtcXVpbHQtZGI9KC4qKSQvKSB7CisgICAgICAgIHB1c2ggQHskc2VsZi0+eydvcHRpb25zJ317J2FsbG93LXZlcnNpb24tb2YtcXVpbHQtZGInfX0sICQxOworICAgICAgICByZXR1cm4gMTsKKyAgICB9CisgICAgcmV0dXJuIDA7Cit9CisKK3N1YiBjYW5fYnVpbGQgeworICAgIG15ICgkc2VsZiwgJGRpcikgPSBAXzsKKyAgICBteSAoJGNvZGUsICRtc2cpID0gJHNlbGYtPlNVUEVSOjpjYW5fYnVpbGQoJGRpcik7CisgICAgcmV0dXJuICgkY29kZSwgJG1zZykgaWYgJGNvZGUgZXEgMDsKKyAgICBteSAkcGQgPSBGaWxlOjpTcGVjLT5jYXRkaXIoJGRpciwgImRlYmlhbiIsICJwYXRjaGVzIik7CisgICAgaWYgKC1lICRwZCBhbmQgbm90IC1kIF8pIHsKKyAgICAgICAgcmV0dXJuICgwLCBzcHJpbnRmKF9nKCIlcyBzaG91bGQgYmUgYSBkaXJlY3Rvcnkgb3Igbm9uLWV4aXN0aW5nIiksICRwZCkpOworICAgIH0KKyAgICBteSAkc2VyaWVzX3ZlbmRvciA9ICRzZWxmLT5nZXRfc2VyaWVzX2ZpbGUoJGRpcik7CisgICAgbXkgJHNlcmllc19tYWluID0gRmlsZTo6U3BlYy0+Y2F0ZmlsZSgkcGQsICJzZXJpZXMiKTsKKyAgICBmb3JlYWNoIG15ICRzZXJpZXMgKCRzZXJpZXNfdmVuZG9yLCAkc2VyaWVzX21haW4pIHsKKyAgICAgICAgaWYgKGRlZmluZWQoJHNlcmllcykgYW5kIC1lICRzZXJpZXMgYW5kIG5vdCAtZiBfKSB7CisgICAgICAgICAgICByZXR1cm4gKDAsIHNwcmludGYoX2coIiVzIHNob3VsZCBiZSBhIGZpbGUgb3Igbm9uLWV4aXN0aW5nIiksICRzZXJpZXMpKTsKKyAgICAgICAgfQorICAgIH0KKyAgICByZXR1cm4gKDEsICIiKTsKK30KKworc3ViIGdldF9hdXRvcGF0Y2hfbmFtZSB7CisgICAgbXkgKCRzZWxmKSA9IEBfOworICAgIGlmICgkc2VsZi0+eydvcHRpb25zJ317J3NpbmdsZS1kZWJpYW4tcGF0Y2gnfSkgeworICAgICAgICByZXR1cm4gImRlYmlhbi1jaGFuZ2VzIjsKKyAgICB9IGVsc2UgeworICAgICAgICByZXR1cm4gImRlYmlhbi1jaGFuZ2VzLSIgLiAkc2VsZi0+eydmaWVsZHMnfXsnVmVyc2lvbid9OworICAgIH0KK30KKworc3ViIGdldF9zZXJpZXNfZmlsZSB7CisgICAgbXkgKCRzZWxmLCAkZGlyKSA9IEBfOworICAgIG15ICRwZCA9IEZpbGU6OlNwZWMtPmNhdGRpcigkZGlyLCAiZGViaWFuIiwgInBhdGNoZXMiKTsKKyAgICBteSAkdmVuZG9yID0gbGMoZ2V0X2N1cnJlbnRfdmVuZG9yKCkgfHwgImRlYmlhbiIpOworICAgIGZvcmVhY2ggKEZpbGU6OlNwZWMtPmNhdGZpbGUoJHBkLCAiJHZlbmRvci5zZXJpZXMiKSwKKyAgICAgICAgICAgICBGaWxlOjpTcGVjLT5jYXRmaWxlKCRwZCwgInNlcmllcyIpKSB7CisgICAgICAgIHJldHVybiAkXyBpZiAtZSAkXzsKKyAgICB9CisgICAgcmV0dXJuIHVuZGVmOworfQorCitzdWIgcmVhZF9wYXRjaF9saXN0IHsKKyAgICBteSAoJHNlbGYsICRmaWxlLCAlb3B0cykgPSBAXzsKKyAgICByZXR1cm4gKCkgaWYgbm90IGRlZmluZWQgJGZpbGUgb3Igbm90IC1mICRmaWxlOworICAgICRvcHRzeyJ3YXJuX29wdGlvbnMifSA9IDAgdW5sZXNzIGRlZmluZWQoJG9wdHN7Indhcm5fb3B0aW9ucyJ9KTsKKyAgICAkb3B0c3sic2tpcF9hdXRvIn0gPSAwIHVubGVzcyBkZWZpbmVkKCRvcHRzeyJza2lwX2F1dG8ifSk7CisgICAgbXkgQHBhdGNoZXM7CisgICAgbXkgJGF1dG9fcGF0Y2ggPSAkc2VsZi0+Z2V0X2F1dG9wYXRjaF9uYW1lKCk7CisgICAgb3BlbihTRVJJRVMsICI8IiAsICRmaWxlKSB8fCBzeXNlcnIoX2coImNhbm5vdCByZWFkICVzIiksICRmaWxlKTsKKyAgICB3aGlsZShkZWZpbmVkKCRfID0gPFNFUklFUz4pKSB7CisgICAgICAgIGNob21wOyBzL15ccysvLzsgcy9ccyskLy87ICMgU3RyaXAgbGVhZGluZy90cmFpbGluZyBzcGFjZXMKKyAgICAgICAgcy8oXnxccyspIy4qJC8vOyAjIFN0cmlwIGNvbW1lbnQKKyAgICAgICAgbmV4dCB1bmxlc3MgJF87CisgICAgICAgIGlmICgvXihcUyspXHMrKC4qKSQvKSB7CisgICAgICAgICAgICAkXyA9ICQxOworICAgICAgICAgICAgaWYgKCQyIG5lICctcDEnKSB7CisgICAgICAgICAgICAgICAgd2FybmluZyhfZygidGhlIHNlcmllcyBmaWxlICglcykgY29udGFpbnMgdW5zdXBwb3J0ZWQgIiAuCisgICAgICAgICAgICAgICAgICAgICAgICAgICAib3B0aW9ucyAoJyVzJywgbGluZSAlcyksIGRwa2ctc291cmNlIG1pZ2h0ICIgLgorICAgICAgICAgICAgICAgICAgICAgICAgICAgImZhaWwgd2hlbiBhcHBseWluZyBwYXRjaGVzLiIpLAorICAgICAgICAgICAgICAgICAgICAgICAgJGZpbGUsICQyLCAkLikgaWYgJG9wdHN7Indhcm5fb3B0aW9ucyJ9OworICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgICAgIG5leHQgaWYgJG9wdHN7InNraXBfYXV0byJ9IGFuZCAkXyBlcSAkYXV0b19wYXRjaDsKKyAgICAgICAgZXJyb3IoX2coIiVzIGNvbnRhaW5zIGFuIGluc2VjdXJlIHBhdGg6ICVzIiksICRmaWxlLCAkXykgaWYgbXsoXnwvKVwuXC4vfTsKKyAgICAgICAgcHVzaCBAcGF0Y2hlcywgJF87CisgICAgfQorICAgIGNsb3NlKFNFUklFUyk7CisgICAgcmV0dXJuIEBwYXRjaGVzOworfQorCitzdWIgY3JlYXRlX3F1aWx0X2RiIHsKKyAgICBteSAoJHNlbGYsICRkaXIpID0gQF87CisgICAgbXkgJGRiX2RpciA9IEZpbGU6OlNwZWMtPmNhdGRpcigkZGlyLCAiLnBjIik7CisgICAgaWYgKG5vdCAtZCAkZGJfZGlyKSB7CisgICAgICAgIG1rZGlyICRkYl9kaXIgb3Igc3lzZXJyKF9nKCJjYW5ub3QgbWtkaXIgJXMiKSwgJGRiX2Rpcik7CisgICAgfQorICAgIG15ICRmaWxlID0gRmlsZTo6U3BlYy0+Y2F0ZmlsZSgkZGJfZGlyLCAiLnZlcnNpb24iKTsKKyAgICBpZiAobm90IC1lICRmaWxlKSB7CisgICAgICAgIG9wZW4oVkVSU0lPTiwgIj4iLCAkZmlsZSkgb3Igc3lzZXJyKF9nKCJjYW5ub3Qgd3JpdGUgJXMiKSwgJGZpbGUpOworICAgICAgICBwcmludCBWRVJTSU9OICIyXG4iOworICAgICAgICBjbG9zZShWRVJTSU9OKTsKKyAgICB9CisgICAgIyBUaGUgZmlsZXMgYmVsb3cgYXJlIHVzZWQgYnkgcXVpbHQgdG8ga25vdyB3aGVyZSBwYXRjaGVzIGFyZSBzdG9yZWQKKyAgICAjIGFuZCB3aGF0IGZpbGUgY29udGFpbnMgdGhlIHBhdGNoIGxpc3QgKHN1cHBvcnRlZCBieSBxdWlsdCA+PSAwLjQ4LTUKKyAgICAjIGluIERlYmlhbikuCisgICAgJGZpbGUgPSBGaWxlOjpTcGVjLT5jYXRmaWxlKCRkYl9kaXIsICIucXVpbHRfcGF0Y2hlcyIpOworICAgIGlmIChub3QgLWUgJGZpbGUpIHsKKyAgICAgICAgb3BlbihRUEFUQ0gsICI+IiwgJGZpbGUpIG9yIHN5c2VycihfZygiY2Fubm90IHdyaXRlICVzIiksICRmaWxlKTsKKyAgICAgICAgcHJpbnQgUVBBVENIICJkZWJpYW4vcGF0Y2hlc1xuIjsKKyAgICAgICAgY2xvc2UoUVBBVENIKTsKKyAgICB9CisgICAgJGZpbGUgPSBGaWxlOjpTcGVjLT5jYXRmaWxlKCRkYl9kaXIsICIucXVpbHRfc2VyaWVzIik7CisgICAgaWYgKG5vdCAtZSAkZmlsZSkgeworICAgICAgICBvcGVuKFFTRVJJRVMsICI+IiwgJGZpbGUpIG9yIHN5c2VycihfZygiY2Fubm90IHdyaXRlICVzIiksICRmaWxlKTsKKyAgICAgICAgbXkgJHNlcmllcyA9ICRzZWxmLT5nZXRfc2VyaWVzX2ZpbGUoJGRpcikgfHwgInNlcmllcyI7CisgICAgICAgICRzZXJpZXMgPSAoRmlsZTo6U3BlYy0+c3BsaXRwYXRoKCRzZXJpZXMpKVsyXTsKKyAgICAgICAgcHJpbnQgUVNFUklFUyAiJHNlcmllc1xuIjsKKyAgICAgICAgY2xvc2UoUVNFUklFUyk7CisgICAgfQorfQorCitzdWIgYXBwbHlfcXVpbHRfcGF0Y2ggeworICAgIG15ICgkc2VsZiwgJGRpciwgJHBhdGNoLCAlb3B0cykgPSBAXzsKKyAgICAkb3B0c3sidmVyYm9zZSJ9ID0gMCB1bmxlc3MgZGVmaW5lZCgkb3B0c3sidmVyYm9zZSJ9KTsKKyAgICAkb3B0c3sidGltZXN0YW1wIn0gPSBmc190aW1lKCRkaXIpIHVubGVzcyBkZWZpbmVkKCRvcHRzeyJ0aW1lc3RhbXAifSk7CisgICAgbXkgJHBhdGggPSBGaWxlOjpTcGVjLT5jYXRmaWxlKCRkaXIsICJkZWJpYW4iLCAicGF0Y2hlcyIsICRwYXRjaCk7CisgICAgbXkgJG9iaiA9IERwa2c6OlNvdXJjZTo6UGF0Y2gtPm5ldyhmaWxlbmFtZSA9PiAkcGF0aCk7CisKKyAgICBpbmZvKF9nKCJhcHBseWluZyAlcyIpLCAkcGF0Y2gpIGlmICRvcHRzeyJ2ZXJib3NlIn07CisgICAgJG9iai0+YXBwbHkoJGRpciwgdGltZXN0YW1wID0+ICRvcHRzeyJ0aW1lc3RhbXAifSwKKyAgICAgICAgICAgICAgICB2ZXJib3NlID0+ICRvcHRzeyJ2ZXJib3NlIn0sCisgICAgICAgICAgICAgICAgZm9yY2VfdGltZXN0YW1wID0+IDEsIGNyZWF0ZV9kaXJzID0+IDEsIHJlbW92ZV9iYWNrdXAgPT4gMCwKKyAgICAgICAgICAgICAgICBvcHRpb25zID0+IFsgJy10JywgJy1GJywgJzAnLCAnLU4nLCAnLXAxJywgJy11JywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJy1WJywgJ25ldmVyJywgJy1nMCcsICctRScsICctYicsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICctQicsICIucGMvJHBhdGNoLyIgXSk7Cit9CisKK3N1YiBnZXRfcGF0Y2hlcyB7CisgICAgbXkgKCRzZWxmLCAkZGlyLCAlb3B0cykgPSBAXzsKKyAgICBteSAkc2VyaWVzID0gJHNlbGYtPmdldF9zZXJpZXNfZmlsZSgkZGlyKTsKKyAgICByZXR1cm4gJHNlbGYtPnJlYWRfcGF0Y2hfbGlzdCgkc2VyaWVzLCAlb3B0cyk7Cit9CisKK3N1YiBhcHBseV9wYXRjaGVzIHsKKyAgICBteSAoJHNlbGYsICRkaXIsICVvcHRzKSA9IEBfOworCisgICAgaWYgKCRvcHRzeyd1c2FnZSd9IGVxICd1bnBhY2snKSB7CisgICAgICAgICRvcHRzeyd2ZXJib3NlJ30gPSAxOworICAgIH0gZWxzaWYgKCRvcHRzeyd1c2FnZSd9IGVxICdidWlsZCcpIHsKKyAgICAgICAgJG9wdHN7J3dhcm5fb3B0aW9ucyd9ID0gMTsKKyAgICAgICAgJG9wdHN7J3ZlcmJvc2UnfSA9IDA7CisgICAgfQorCisgICAgbXkgJHBhdGNoZXMgPSAkb3B0c3sicGF0Y2hlcyJ9OworCisgICAgIyBBbHdheXMgY3JlYXRlIHRoZSBxdWlsdCBkYiBzbyB0aGF0IGlmIHRoZSBtYWludGFpbmVyIGNhbGxzIHF1aWx0IHRvCisgICAgIyBjcmVhdGUgYSBwYXRjaCwgaXQncyBzdG9yZWQgaW4gdGhlIHJpZ2h0IGRpcmVjdG9yeQorICAgICRzZWxmLT5jcmVhdGVfcXVpbHRfZGIoJGRpcik7CisKKyAgICAjIFVwZGF0ZSBkZWJpYW4vcGF0Y2hlcy9zZXJpZXMgc3ltbGluayBpZiBuZWVkZWQgdG8gYWxsb3cgcXVpbHQgdXNhZ2UKKyAgICBteSAkc2VyaWVzID0gJHNlbGYtPmdldF9zZXJpZXNfZmlsZSgkZGlyKTsKKyAgICByZXR1cm4gdW5sZXNzICRzZXJpZXM7ICMgTm8gc2VyaWVzLCBubyBwYXRjaGVzCisgICAgbXkgJGJhc2VuYW1lID0gYmFzZW5hbWUoJHNlcmllcyk7CisgICAgaWYgKCRiYXNlbmFtZSBuZSAic2VyaWVzIikgeworICAgICAgICBteSAkZGVzdCA9IEZpbGU6OlNwZWMtPmNhdGZpbGUoJGRpciwgImRlYmlhbiIsICJwYXRjaGVzIiwgInNlcmllcyIpOworICAgICAgICB1bmxpbmsoJGRlc3QpIGlmIC1sICRkZXN0OworICAgICAgICB1bmxlc3MgKC1mIF8pIHsgIyBEb24ndCBvdmVyd3JpdGUgcmVhbCBmaWxlcworICAgICAgICAgICAgc3ltbGluaygkYmFzZW5hbWUsICRkZXN0KSB8fAorICAgICAgICAgICAgICAgIHN5c2VycihfZygiY2FuJ3QgY3JlYXRlIHN5bWxpbmsgJXMiKSwgJGRlc3QpOworICAgICAgICB9CisgICAgfQorCisgICAgdW5sZXNzIChkZWZpbmVkKCRwYXRjaGVzKSkgeworICAgICAgICAkcGF0Y2hlcyA9IFsgJHNlbGYtPmdldF9wYXRjaGVzKCRkaXIsICVvcHRzKSBdOworICAgIH0KKyAgICByZXR1cm4gdW5sZXNzIHNjYWxhcihAJHBhdGNoZXMpOworCisgICAgaWYgKCRvcHRzeyd1c2FnZSd9IGVxICJwcmVwYXJhdGlvbiIpIHsKKyAgICAgICAgIyBXZSdyZSBhcHBseWluZyB0aGUgcGF0Y2hlcyBpbiAtLWJlZm9yZS1idWlsZCwgcmVtZW1iZXIgdG8gdW5hcHBseQorICAgICAgICAjIHRoZW0gYWZ0ZXJ3YXJkcyBpbiAtLWFmdGVyLWJ1aWxkCisgICAgICAgIG15ICRwY191bmFwcGx5ID0gRmlsZTo6U3BlYy0+Y2F0ZmlsZSgkZGlyLCAiLnBjIiwgIi5kcGtnLXNvdXJjZS11bmFwcGx5Iik7CisgICAgICAgIG9wZW4oVU5BUFBMWSwgIj4iLCAkcGNfdW5hcHBseSkgfHwKKyAgICAgICAgICAgIHN5c2VycihfZygiY2Fubm90IHdyaXRlICVzIiksICRwY191bmFwcGx5KTsKKyAgICAgICAgY2xvc2UoVU5BUFBMWSk7CisgICAgfQorCisgICAgIyBBcHBseSBwYXRjaGVzCisgICAgbXkgJHBjX2FwcGxpZWQgPSBGaWxlOjpTcGVjLT5jYXRmaWxlKCRkaXIsICIucGMiLCAiYXBwbGllZC1wYXRjaGVzIik7CisgICAgbXkgQGFwcGxpZWQgPSAkc2VsZi0+cmVhZF9wYXRjaF9saXN0KCRwY19hcHBsaWVkKTsKKyAgICBteSBAcGF0Y2hlcyA9ICRzZWxmLT5yZWFkX3BhdGNoX2xpc3QoJHNlbGYtPmdldF9zZXJpZXNfZmlsZSgkZGlyKSk7CisgICAgb3BlbihBUFBMSUVELCAnPj4nLCAkcGNfYXBwbGllZCkgfHwgc3lzZXJyKF9nKCJjYW5ub3Qgd3JpdGUgJXMiKSwgJHBjX2FwcGxpZWQpOworICAgICRvcHRzeyJ0aW1lc3RhbXAifSA9IGZzX3RpbWUoJHBjX2FwcGxpZWQpOworICAgIGZvcmVhY2ggbXkgJHBhdGNoIChAJHBhdGNoZXMpIHsKKyAgICAgICAgJHNlbGYtPmFwcGx5X3F1aWx0X3BhdGNoKCRkaXIsICRwYXRjaCwgJW9wdHMpOworICAgICAgICBwcmludCBBUFBMSUVEICIkcGF0Y2hcbiI7CisgICAgfQorICAgIGNsb3NlKEFQUExJRUQpOworfQorCitzdWIgdW5hcHBseV9wYXRjaGVzIHsKKyAgICBteSAoJHNlbGYsICRkaXIsICVvcHRzKSA9IEBfOworCisgICAgJG9wdHN7J3ZlcmJvc2UnfSA9IDEgdW5sZXNzIGRlZmluZWQgJG9wdHN7J3ZlcmJvc2UnfTsKKworICAgIG15ICRwY19hcHBsaWVkID0gRmlsZTo6U3BlYy0+Y2F0ZmlsZSgkZGlyLCAiLnBjIiwgImFwcGxpZWQtcGF0Y2hlcyIpOworICAgIG15IEBhcHBsaWVkID0gJHNlbGYtPnJlYWRfcGF0Y2hfbGlzdCgkcGNfYXBwbGllZCk7CisgICAgJG9wdHN7InRpbWVzdGFtcCJ9ID0gZnNfdGltZSgkcGNfYXBwbGllZCkgaWYgQGFwcGxpZWQ7CisgICAgZm9yZWFjaCBteSAkcGF0Y2ggKHJldmVyc2UgQGFwcGxpZWQpIHsKKyAgICAgICAgbXkgJHBhdGggPSBGaWxlOjpTcGVjLT5jYXRmaWxlKCRkaXIsICJkZWJpYW4iLCAicGF0Y2hlcyIsICRwYXRjaCk7CisgICAgICAgIG15ICRvYmogPSBEcGtnOjpTb3VyY2U6OlBhdGNoLT5uZXcoZmlsZW5hbWUgPT4gJHBhdGgpOworCisgICAgICAgIGluZm8oX2coInVuYXBwbHlpbmcgJXMiKSwgJHBhdGNoKSBpZiAkb3B0c3sidmVyYm9zZSJ9OworICAgICAgICAkb2JqLT5hcHBseSgkZGlyLCB0aW1lc3RhbXAgPT4gJG9wdHN7InRpbWVzdGFtcCJ9LAorICAgICAgICAgICAgICAgICAgICB2ZXJib3NlID0+IDAsCisgICAgICAgICAgICAgICAgICAgIGZvcmNlX3RpbWVzdGFtcCA9PiAxLCByZW1vdmVfYmFja3VwID0+IDAsCisgICAgICAgICAgICAgICAgICAgIG9wdGlvbnMgPT4gWyAnLVInLCAnLXQnLCAnLU4nLCAnLXAxJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICctdScsICctVicsICduZXZlcicsICctZzAnLCAnLUUnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJy0tbm8tYmFja3VwLWlmLW1pc21hdGNoJyBdKTsKKyAgICAgICAgZXJhc2VkaXIoRmlsZTo6U3BlYy0+Y2F0ZGlyKCRkaXIsICIucGMiLCAkcGF0Y2gpKTsKKyAgICB9CisgICAgZXJhc2VkaXIoRmlsZTo6U3BlYy0+Y2F0ZGlyKCRkaXIsICIucGMiKSk7Cit9CisKK3N1YiBwcmVwYXJlX2J1aWxkIHsKKyAgICBteSAoJHNlbGYsICRkaXIpID0gQF87CisgICAgJHNlbGYtPlNVUEVSOjpwcmVwYXJlX2J1aWxkKCRkaXIpOworICAgICMgU2tpcCAucGMgZGlyZWN0b3JpZXMgb2YgcXVpbHQgYnkgZGVmYXVsdCBhbmQgaWdub3JlIGRpZmZlcmVuY2UKKyAgICAjIG9uIGRlYmlhbi9wYXRjaGVzL3NlcmllcyBzeW1saW5rcyBhbmQgZC9wLy5kcGtnLXNvdXJjZS1hcHBsaWVkCisgICAgIyBzdGFtcCBmaWxlIGNyZWF0ZWQgYnkgb3Vyc2VsdmVzCisgICAgbXkgJGZ1bmMgPSBzdWIgeworICAgICAgICByZXR1cm4gMSBpZiAkX1swXSA9fiBte15kZWJpYW4vcGF0Y2hlcy9zZXJpZXMkfSBhbmQgLWwgJF9bMF07CisgICAgICAgIHJldHVybiAxIGlmICRfWzBdID1+IC9eXC5wYyhcL3wkKS87CisgICAgICAgIHJldHVybiAxIGlmICRfWzBdID1+IC8kc2VsZi0+eydvcHRpb25zJ317J2RpZmZfaWdub3JlX3JlZ2V4cCd9LzsKKyAgICAgICAgcmV0dXJuIDA7CisgICAgfTsKKyAgICAkc2VsZi0+eydkaWZmX29wdGlvbnMnfXsnZGlmZl9pZ25vcmVfZnVuYyd9ID0gJGZ1bmM7Cit9CisKK3N1YiBkb19idWlsZCB7CisgICAgbXkgKCRzZWxmLCAkZGlyKSA9IEBfOworICAgIG15ICRwY192ZXIgPSBGaWxlOjpTcGVjLT5jYXRmaWxlKCRkaXIsICIucGMiLCAiLnZlcnNpb24iKTsKKyAgICBpZiAoLWYgJHBjX3ZlcikgeworICAgICAgICBvcGVuKFZFUiwgIjwiLCAkcGNfdmVyKSB8fCBzeXNlcnIoX2coImNhbm5vdCByZWFkICVzIiksICRwY192ZXIpOworICAgICAgICBteSAkdmVyc2lvbiA9IDxWRVI+OworICAgICAgICBjaG9tcCAkdmVyc2lvbjsKKyAgICAgICAgY2xvc2UoVkVSKTsKKyAgICAgICAgaWYgKCR2ZXJzaW9uICE9IDIpIHsKKyAgICAgICAgICAgIGlmIChzY2FsYXIgZ3JlcCB7ICR2ZXJzaW9uIGVxICRfIH0KKyAgICAgICAgICAgICAgICBAeyRzZWxmLT57J29wdGlvbnMnfXsnYWxsb3ctdmVyc2lvbi1vZi1xdWlsdC1kYid9fSkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICB3YXJuaW5nKF9nKCJ1bnN1cHBvcnRlZCB2ZXJzaW9uIG9mIHRoZSBxdWlsdCBtZXRhZGF0YTogJXMiKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICR2ZXJzaW9uKTsKKyAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgZXJyb3IoX2coInVuc3VwcG9ydGVkIHZlcnNpb24gb2YgdGhlIHF1aWx0IG1ldGFkYXRhOiAlcyIpLAorICAgICAgICAgICAgICAgICAgICAgICR2ZXJzaW9uKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorICAgIH0KKyAgICAkc2VsZi0+U1VQRVI6OmRvX2J1aWxkKCRkaXIpOworfQorCitzdWIgYWZ0ZXJfYnVpbGQgeworICAgIG15ICgkc2VsZiwgJGRpcikgPSBAXzsKKyAgICBteSAkcGNfdW5hcHBseSA9IEZpbGU6OlNwZWMtPmNhdGZpbGUoJGRpciwgIi5wYyIsICIuZHBrZy1zb3VyY2UtdW5hcHBseSIpOworICAgIGlmICgtZSAkcGNfdW5hcHBseSBvciAkc2VsZi0+eydvcHRpb25zJ317J3VuYXBwbHlfcGF0Y2hlcyd9KSB7CisgICAgICAgIHVubGluaygkcGNfdW5hcHBseSk7CisgICAgICAgICRzZWxmLT51bmFwcGx5X3BhdGNoZXMoJGRpcik7CisgICAgfQorfQorCitzdWIgY2hlY2tfcGF0Y2hlc19hcHBsaWVkIHsKKyAgICBteSAoJHNlbGYsICRkaXIpID0gQF87CisgICAgbXkgJHBjX2FwcGxpZWQgPSBGaWxlOjpTcGVjLT5jYXRmaWxlKCRkaXIsICIucGMiLCAiYXBwbGllZC1wYXRjaGVzIik7CisgICAgbXkgQGFwcGxpZWQgPSAkc2VsZi0+cmVhZF9wYXRjaF9saXN0KCRwY19hcHBsaWVkKTsKKyAgICBteSBAcGF0Y2hlcyA9ICRzZWxmLT5yZWFkX3BhdGNoX2xpc3QoJHNlbGYtPmdldF9zZXJpZXNfZmlsZSgkZGlyKSk7CisgICAgbXkgQHRvX2FwcGx5OworICAgIGZvcmVhY2ggbXkgJHBhdGNoIChAcGF0Y2hlcykgeworICAgICAgICBuZXh0IGlmIHNjYWxhciBncmVwIHsgJF8gZXEgJHBhdGNoIH0gQGFwcGxpZWQ7CisgICAgICAgIHB1c2ggQHRvX2FwcGx5LCAkcGF0Y2g7CisgICAgfQorICAgIGlmIChzY2FsYXIoQHRvX2FwcGx5KSkgeworICAgICAgICBteSAkZmlyc3RfcGF0Y2ggPSBGaWxlOjpTcGVjLT5jYXRmaWxlKCRkaXIsICJkZWJpYW4iLCAicGF0Y2hlcyIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHRvX2FwcGx5WzBdKTsKKyAgICAgICAgbXkgJHBhdGNoX29iaiA9IERwa2c6OlNvdXJjZTo6UGF0Y2gtPm5ldyhmaWxlbmFtZSA9PiAkZmlyc3RfcGF0Y2gpOworICAgICAgICBpZiAoJHBhdGNoX29iai0+Y2hlY2tfYXBwbHkoJGRpcikpIHsKKyAgICAgICAgICAgIGluZm8oX2coInBhdGNoZXMgYXJlIG5vdCBhcHBsaWVkLCBhcHBseWluZyB0aGVtIG5vdyIpKTsKKyAgICAgICAgICAgICRzZWxmLT5hcHBseV9wYXRjaGVzKCRkaXIsIHVzYWdlID0+ICdwcmVwYXJhdGlvbicsIHZlcmJvc2UgPT4gMSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhdGNoZXMgPT4gXEB0b19hcHBseSk7CisgICAgICAgIH0KKyAgICB9Cit9CisKK3N1YiByZWdpc3Rlcl9wYXRjaCB7CisgICAgbXkgKCRzZWxmLCAkZGlyLCAkdG1wZGlmZiwgJHBhdGNoX25hbWUpID0gQF87CisKKyAgICBzdWIgYWRkX2xpbmUgeworICAgICAgICBteSAoJGZpbGUsICRsaW5lKSA9IEBfOworICAgICAgICBvcGVuKEZJTEUsICI+PiIsICRmaWxlKSB8fCBzeXNlcnIoX2coImNhbm5vdCB3cml0ZSAlcyIpLCAkZmlsZSk7CisgICAgICAgIHByaW50IEZJTEUgIiRsaW5lXG4iOworICAgICAgICBjbG9zZShGSUxFKTsKKyAgICB9CisKKyAgICBzdWIgZHJvcF9saW5lIHsKKyAgICAgICAgbXkgKCRmaWxlLCAkcmUpID0gQF87CisgICAgICAgIG9wZW4oRklMRSwgIjwiLCAkZmlsZSkgfHwgc3lzZXJyKF9nKCJjYW5ub3QgcmVhZCAlcyIpLCAkZmlsZSk7CisgICAgICAgIG15IEBsaW5lcyA9IDxGSUxFPjsKKyAgICAgICAgY2xvc2UoRklMRSk7CisgICAgICAgIG9wZW4oRklMRSwgIj4iLCAkZmlsZSkgfHwgc3lzZXJyKF9nKCJjYW5ub3Qgd3JpdGUgJXMiKSwgJGZpbGUpOworICAgICAgICBwcmludChGSUxFICRfKSBmb3JlYWNoIGdyZXAgeyBub3QgL15cUSRyZVxFXHMqJC8gfSBAbGluZXM7CisgICAgICAgIGNsb3NlKEZJTEUpOworICAgIH0KKworICAgIG15IEBwYXRjaGVzID0gJHNlbGYtPmdldF9wYXRjaGVzKCRkaXIpOworICAgIG15ICRoYXNfcGF0Y2ggPSAoZ3JlcCB7ICRfIGVxICRwYXRjaF9uYW1lIH0gQHBhdGNoZXMpID8gMSA6IDA7CisgICAgbXkgJHNlcmllcyA9ICRzZWxmLT5nZXRfc2VyaWVzX2ZpbGUoJGRpcik7CisgICAgJHNlcmllcyB8fD0gRmlsZTo6U3BlYy0+Y2F0ZmlsZSgkZGlyLCAiZGViaWFuIiwgInBhdGNoZXMiLCAic2VyaWVzIik7CisgICAgbXkgJGFwcGxpZWQgPSBGaWxlOjpTcGVjLT5jYXRmaWxlKCRkaXIsICIucGMiLCAiYXBwbGllZC1wYXRjaGVzIik7CisgICAgbXkgJHBhdGNoID0gRmlsZTo6U3BlYy0+Y2F0ZmlsZSgkZGlyLCAiZGViaWFuIiwgInBhdGNoZXMiLCAkcGF0Y2hfbmFtZSk7CisKKyAgICBpZiAoLXMgJHRtcGRpZmYpIHsKKyAgICAgICAgY29weSgkdG1wZGlmZiwgJHBhdGNoKSB8fAorICAgICAgICAgICAgc3lzZXJyKF9nKCJmYWlsZWQgdG8gY29weSAlcyB0byAlcyIpLCAkdG1wZGlmZiwgJHBhdGNoKTsKKyAgICAgICAgY2htb2QoMDY2NiAmIH4gdW1hc2soKSwgJHBhdGNoKSB8fAorICAgICAgICAgICAgc3lzZXJyKF9nKCJ1bmFibGUgdG8gY2hhbmdlIHBlcm1pc3Npb24gb2YgYCVzJyIpLCAkcGF0Y2gpOworICAgIH0gZWxzaWYgKC1lICRwYXRjaCkgeworICAgICAgICB1bmxpbmsoJHBhdGNoKSB8fCBzeXNlcnIoX2coImNhbm5vdCByZW1vdmUgJXMiKSwgJHBhdGNoKTsKKyAgICB9CisKKyAgICBpZiAoLWUgJHBhdGNoKSB7CisgICAgICAgICRzZWxmLT5jcmVhdGVfcXVpbHRfZGIoJGRpcik7CisgICAgICAgICMgQWRkIHBhdGNoIHRvIHNlcmllcyBmaWxlCisgICAgICAgIGlmIChub3QgJGhhc19wYXRjaCkgeworICAgICAgICAgICAgYWRkX2xpbmUoJHNlcmllcywgJHBhdGNoX25hbWUpOworICAgICAgICAgICAgYWRkX2xpbmUoJGFwcGxpZWQsICRwYXRjaF9uYW1lKTsKKyAgICAgICAgfQorICAgICAgICAjIEVuc3VyZSBxdWlsdCBtZXRhLWRhdGEgYXJlIGNyZWF0ZWQgYW5kIGluIHN5bmMgd2l0aCBzb21lIHRyaWNrZXJ5OgorICAgICAgICAjIHJldmVyc2UtYXBwbHkgdGhlIHBhdGNoLCBkcm9wIC5wYy8kcGF0Y2gsIHJlLWFwcGx5IGl0CisgICAgICAgICMgd2l0aCB0aGUgY29ycmVjdCBvcHRpb25zIHRvIHJlY3JlYXRlIHRoZSBiYWNrdXAgZmlsZXMKKyAgICAgICAgbXkgJHBhdGNoX29iaiA9IERwa2c6OlNvdXJjZTo6UGF0Y2gtPm5ldyhmaWxlbmFtZSA9PiAkcGF0Y2gpOworICAgICAgICAkcGF0Y2hfb2JqLT5hcHBseSgkZGlyLCBhZGRfb3B0aW9ucyA9PiBbJy1SJywgJy1FJ10sIHZlcmJvc2UgPT4gMCk7CisgICAgICAgIGVyYXNlZGlyKEZpbGU6OlNwZWMtPmNhdGRpcigkZGlyLCAiLnBjIiwgJHBhdGNoX25hbWUpKTsKKyAgICAgICAgJHNlbGYtPmFwcGx5X3F1aWx0X3BhdGNoKCRkaXIsICRwYXRjaF9uYW1lKTsKKyAgICB9IGVsc2UgeworICAgICAgICAjIFJlbW92ZSBhdXRvX3BhdGNoIGZyb20gc2VyaWVzCisgICAgICAgIGlmICgkaGFzX3BhdGNoKSB7CisgICAgICAgICAgICBkcm9wX2xpbmUoJHNlcmllcywgJHBhdGNoX25hbWUpOworICAgICAgICAgICAgZHJvcF9saW5lKCRhcHBsaWVkLCAkcGF0Y2hfbmFtZSk7CisgICAgICAgICAgICBlcmFzZWRpcihGaWxlOjpTcGVjLT5jYXRkaXIoJGRpciwgIi5wYyIsICRwYXRjaF9uYW1lKSk7CisgICAgICAgIH0KKyAgICAgICAgIyBDbGVhbiB1cCBlbXB0eSBzZXJpZXMKKyAgICAgICAgdW5saW5rKCRzZXJpZXMpIGlmIC16ICRzZXJpZXM7CisgICAgfQorICAgIHJldHVybiAkcGF0Y2g7Cit9CisKKyMgdmltOmV0OnN3PTQ6dHM9OAorMTsKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbSBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40YjZkZmE4Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtCkBAIC0wLDAgKzEsNjA5IEBACisjIENvcHlyaWdodCDCqSAyMDA4IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KKyMKKyMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyMKKyMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisjIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisjIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyMKKyMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisKK3BhY2thZ2UgRHBrZzo6U291cmNlOjpQYXRjaDsKKwordXNlIHN0cmljdDsKK3VzZSB3YXJuaW5nczsKKworb3VyICRWRVJTSU9OID0gIjAuMDEiOworCit1c2UgRHBrZzsKK3VzZSBEcGtnOjpHZXR0ZXh0OwordXNlIERwa2c6OklQQzsKK3VzZSBEcGtnOjpFcnJvckhhbmRsaW5nOwordXNlIERwa2c6OlNvdXJjZTo6RnVuY3Rpb25zIHF3KGZzX3RpbWUpOworCit1c2UgUE9TSVg7Cit1c2UgRmlsZTo6RmluZDsKK3VzZSBGaWxlOjpCYXNlbmFtZTsKK3VzZSBGaWxlOjpTcGVjOwordXNlIEZpbGU6OlBhdGg7Cit1c2UgRmlsZTo6Q29tcGFyZTsKK3VzZSBGY250bCAnOm1vZGUnOworI1hYWDogTmVlZGVkIGZvciBzdWItc2Vjb25kIHRpbWVzdGFtcHMsIHJlcXVpcmUgcmVjZW50IHBlcmwKKyN1c2UgVGltZTo6SGlSZXMgcXcoc3RhdCk7CisKK3VzZSBiYXNlICdEcGtnOjpDb21wcmVzc2lvbjo6RmlsZUhhbmRsZSc7CisKK3N1YiBjcmVhdGUgeworICAgIG15ICgkc2VsZiwgJW9wdHMpID0gQF87CisgICAgJHNlbGYtPmVuc3VyZV9vcGVuKCJ3Iik7ICMgQ3JlYXRlcyB0aGUgZmlsZQorICAgICokc2VsZi0+eydlcnJvcnMnfSA9IDA7CisgICAgKiRzZWxmLT57J2VtcHR5J30gPSAxOworICAgIGlmICgkb3B0c3snb2xkJ30gYW5kICRvcHRzeyduZXcnfSkgeworICAgICAgICAkb3B0c3snb2xkJ30gPSAiL2Rldi9udWxsIiB1bmxlc3MgLWUgJG9wdHN7J29sZCd9OworICAgICAgICAkb3B0c3snbmV3J30gPSAiL2Rldi9udWxsIiB1bmxlc3MgLWUgJG9wdHN7J25ldyd9OworICAgICAgICBpZiAoLWQgJG9wdHN7J29sZCd9IGFuZCAtZCAkb3B0c3snbmV3J30pIHsKKyAgICAgICAgICAgICRzZWxmLT5hZGRfZGlmZl9kaXJlY3RvcnkoJG9wdHN7J29sZCd9LCAkb3B0c3snbmV3J30sICVvcHRzKTsKKyAgICAgICAgfSBlbHNpZiAoLWYgJG9wdHN7J29sZCd9IGFuZCAtZiAkb3B0c3snbmV3J30pIHsKKyAgICAgICAgICAgICRzZWxmLT5hZGRfZGlmZl9maWxlKCRvcHRzeydvbGQnfSwgJG9wdHN7J25ldyd9LCAlb3B0cyk7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAkc2VsZi0+X2ZhaWxfbm90X3NhbWVfdHlwZSgkb3B0c3snb2xkJ30sICRvcHRzeyduZXcnfSk7CisgICAgICAgIH0KKyAgICAgICAgJHNlbGYtPmZpbmlzaCgpIHVubGVzcyAkb3B0c3sibm9maW5pc2gifTsKKyAgICB9Cit9CisKK3N1YiBzZXRfaGVhZGVyIHsKKyAgICBteSAoJHNlbGYsICRoZWFkZXIpID0gQF87CisgICAgKiRzZWxmLT57J2hlYWRlcid9ID0gJGhlYWRlcjsKK30KKworc3ViIGFkZF9kaWZmX2ZpbGUgeworICAgIG15ICgkc2VsZiwgJG9sZCwgJG5ldywgJW9wdHMpID0gQF87CisgICAgJG9wdHN7ImluY2x1ZGVfdGltZXN0YW1wIn0gPSAwIHVubGVzcyBleGlzdHMgJG9wdHN7ImluY2x1ZGVfdGltZXN0YW1wIn07CisgICAgbXkgJGhhbmRsZV9iaW5hcnkgPSAkb3B0c3siaGFuZGxlX2JpbmFyeV9mdW5jIn0gfHwgc3ViIHsKKyAgICAgICAgbXkgKCRzZWxmLCAkb2xkLCAkbmV3KSA9IEBfOworICAgICAgICAkc2VsZi0+X2ZhaWxfd2l0aF9tc2coJG5ldywgX2coImJpbmFyeSBmaWxlIGNvbnRlbnRzIGNoYW5nZWQiKSk7CisgICAgfTsKKyAgICAjIE9wdGltaXphdGlvbiB0byBhdm9pZCBmb3JraW5nIGRpZmYgaWYgdW5uZWNlc3NhcnkKKyAgICByZXR1cm4gMSBpZiBjb21wYXJlKCRvbGQsICRuZXcsIDQwOTYpID09IDA7CisgICAgIyBEZWZhdWx0IGRpZmYgb3B0aW9ucworICAgIG15IEBvcHRpb25zOworICAgIGlmICgkb3B0c3sib3B0aW9ucyJ9KSB7CisgICAgICAgIHB1c2ggQG9wdGlvbnMsIEB7JG9wdHN7Im9wdGlvbnMifX07CisgICAgfSBlbHNlIHsKKyAgICAgICAgcHVzaCBAb3B0aW9ucywgJy1wJzsKKyAgICB9CisgICAgIyBBZGQgbGFiZWxzCisgICAgaWYgKCRvcHRzeyJsYWJlbF9vbGQifSBhbmQgJG9wdHN7ImxhYmVsX25ldyJ9KSB7CisJaWYgKCRvcHRzeyJpbmNsdWRlX3RpbWVzdGFtcCJ9KSB7CisJICAgIG15ICR0cyA9IChzdGF0KCRvbGQpKVs5XTsKKwkgICAgbXkgJHQgPSBQT1NJWDo6c3RyZnRpbWUoIiVZLSVtLSVkICVIOiVNOiVTIiwgZ210aW1lKCR0cykpOworCSAgICAkb3B0c3sibGFiZWxfb2xkIn0gLj0gc3ByaW50ZigiXHQlcy4lMDlkICswMDAwIiwgJHQsCisJCQkJCSAgICAoJHRzLWludCgkdHMpKSoxMDAwMDAwMDAwKTsKKwkgICAgJHRzID0gKHN0YXQoJG5ldykpWzldOworCSAgICAkdCA9IFBPU0lYOjpzdHJmdGltZSgiJVktJW0tJWQgJUg6JU06JVMiLCBnbXRpbWUoJHRzKSk7CisJICAgICRvcHRzeyJsYWJlbF9uZXcifSAuPSBzcHJpbnRmKCJcdCVzLiUwOWQgKzAwMDAiLCAkdCwKKwkJCQkJICAgICgkdHMtaW50KCR0cykpKjEwMDAwMDAwMDApOworCX0gZWxzZSB7CisJICAgICMgU3BhY2UgaW4gZmlsZW5hbWVzIG5lZWQgc3BlY2lhbCB0cmVhdG1lbnQKKwkgICAgJG9wdHN7ImxhYmVsX29sZCJ9IC49ICJcdCIgaWYgJG9wdHN7ImxhYmVsX29sZCJ9ID1+IC8gLzsKKwkgICAgJG9wdHN7ImxhYmVsX25ldyJ9IC49ICJcdCIgaWYgJG9wdHN7ImxhYmVsX25ldyJ9ID1+IC8gLzsKKwl9CisgICAgICAgIHB1c2ggQG9wdGlvbnMsICItTCIsICRvcHRzeyJsYWJlbF9vbGQifSwKKyAgICAgICAgICAgICAgICAgICAgICAgIi1MIiwgJG9wdHN7ImxhYmVsX25ldyJ9OworICAgIH0KKyAgICAjIEdlbmVyYXRlIGRpZmYKKyAgICBteSAkZGlmZmdlbjsKKyAgICBteSAkZGlmZl9waWQgPSBzcGF3bigKKyAgICAgICAgJ2V4ZWMnID0+IFsgJ2RpZmYnLCAnLXUnLCBAb3B0aW9ucywgJy0tJywgJG9sZCwgJG5ldyBdLAorICAgICAgICAnZW52JyA9PiB7IExDX0FMTCA9PiAnQycsIExBTkcgPT4gJ0MnLCBUWiA9PiAnVVRDMCcgfSwKKyAgICAgICAgJ3RvX3BpcGUnID0+IFwkZGlmZmdlbgorICAgICk7CisgICAgIyBDaGVjayBkaWZmIGFuZCB3cml0ZSBpdCBpbiBwYXRjaCBmaWxlCisgICAgbXkgJGRpZmZsaW5lZm91bmQgPSAwOworICAgIG15ICRiaW5hcnkgPSAwOworICAgIHdoaWxlICg8JGRpZmZnZW4+KSB7CisgICAgICAgIGlmIChtL14oPzpiaW5hcnl8W14tK1xAIF0uKlxiZGlmZmVyXGIpL2kpIHsKKyAgICAgICAgICAgICRiaW5hcnkgPSAxOworICAgICAgICAgICAgJiRoYW5kbGVfYmluYXJ5KCRzZWxmLCAkb2xkLCAkbmV3KTsKKyAgICAgICAgICAgIGxhc3Q7CisgICAgICAgIH0gZWxzaWYgKG0vXlstK1xAIF0vKSB7CisgICAgICAgICAgICAkZGlmZmxpbmVmb3VuZCsrOworICAgICAgICB9IGVsc2lmIChtL15cXCAvKSB7CisgICAgICAgICAgICB3YXJuaW5nKF9nKCJmaWxlICVzIGhhcyBubyBmaW5hbCBuZXdsaW5lIChlaXRoZXIgIiAuCisgICAgICAgICAgICAgICAgICAgICAgICJvcmlnaW5hbCBvciBtb2RpZmllZCB2ZXJzaW9uKSIpLCAkbmV3KTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIGNob21wOworICAgICAgICAgICAgZXJyb3IoX2coInVua25vd24gbGluZSBmcm9tIGRpZmYgLXUgb24gJXM6IGAlcyciKSwgJG5ldywgJF8pOworICAgICAgICB9CisJaWYgKCokc2VsZi0+eydlbXB0eSd9IGFuZCBkZWZpbmVkKCokc2VsZi0+eydoZWFkZXInfSkpIHsKKwkgICAgJHNlbGYtPnByaW50KCokc2VsZi0+eydoZWFkZXInfSkgb3Igc3lzZXJyKF9nKCJmYWlsZWQgdG8gd3JpdGUiKSk7CisJICAgICokc2VsZi0+eydlbXB0eSd9ID0gMDsKKwl9CisgICAgICAgIHByaW50ICRzZWxmICRfIHx8IHN5c2VycihfZygiZmFpbGVkIHRvIHdyaXRlIikpOworICAgIH0KKyAgICBjbG9zZSgkZGlmZmdlbikgb3Igc3lzZXJyKCJjbG9zZSBvbiBkaWZmIHBpcGUiKTsKKyAgICB3YWl0X2NoaWxkKCRkaWZmX3BpZCwgbm9jaGVjayA9PiAxLAorICAgICAgICAgICAgICAgY21kbGluZSA9PiAiZGlmZiAtdSBAb3B0aW9ucyAtLSAkb2xkICRuZXciKTsKKyAgICAjIFZlcmlmeSBkaWZmIHByb2Nlc3MgZW5kZWQgc3VjY2Vzc2Z1bGx5CisgICAgIyBFeGl0IGNvZGUgb2YgZGlmZjogMCA9PiBubyBkaWZmZXJlbmNlLCAxID0+IGRpZmYgb2ssIDIgPT4gZXJyb3IKKyAgICAjIElnbm9yZSBlcnJvciBpZiBiaW5hcnkgY29udGVudCBkZXRlY3RlZAorICAgIG15ICRleGl0ID0gV0VYSVRTVEFUVVMoJD8pOworICAgIHVubGVzcyAoV0lGRVhJVEVEKCQ/KSAmJiAoJGV4aXQgPT0gMCB8fCAkZXhpdCA9PSAxIHx8ICRiaW5hcnkpKSB7CisgICAgICAgIHN1YnByb2NlcnIoX2coImRpZmYgb24gJXMiKSwgJG5ldyk7CisgICAgfQorICAgIHJldHVybiAoJGV4aXQgPT0gMCB8fCAkZXhpdCA9PSAxKTsKK30KKworc3ViIGFkZF9kaWZmX2RpcmVjdG9yeSB7CisgICAgbXkgKCRzZWxmLCAkb2xkLCAkbmV3LCAlb3B0cykgPSBAXzsKKyAgICAjIFRPRE86IG1ha2UgdGhpcyBmdW5jdGlvbiBtb3JlIGNvbmZpZ3VyYWJsZQorICAgICMgLSBvZmZlciB0byBkaXNhYmxlIHNvbWUgY2hlY2tzCisgICAgbXkgJGJhc2VkaXIgPSAkb3B0c3siYmFzZWRpcm5hbWUifSB8fCBiYXNlbmFtZSgkbmV3KTsKKyAgICBteSAkaW5jX3JlbW92YWwgPSAkb3B0c3siaW5jbHVkZV9yZW1vdmFsIn0gfHwgMDsKKyAgICBteSAkZGlmZl9pZ25vcmU7CisgICAgaWYgKCRvcHRzeyJkaWZmX2lnbm9yZV9mdW5jIn0pIHsKKyAgICAgICAgJGRpZmZfaWdub3JlID0gJG9wdHN7ImRpZmZfaWdub3JlX2Z1bmMifTsKKyAgICB9IGVsc2lmICgkb3B0c3siZGlmZl9pZ25vcmVfcmVnZXhwIn0pIHsKKyAgICAgICAgJGRpZmZfaWdub3JlID0gc3ViIHsgcmV0dXJuICRfWzBdID1+IC8kb3B0c3siZGlmZl9pZ25vcmVfcmVnZXhwIn0vbyB9OworICAgIH0gZWxzZSB7CisgICAgICAgICRkaWZmX2lnbm9yZSA9IHN1YiB7IHJldHVybiAwIH07CisgICAgfQorCisgICAgbXkgQGRpZmZfZmlsZXM7CisgICAgbXkgJWZpbGVzX2luX25ldzsKKyAgICBteSAkc2Nhbl9uZXcgPSBzdWIgeworICAgICAgICBteSAkZm4gPSAobGVuZ3RoID4gbGVuZ3RoKCRuZXcpKSA/IHN1YnN0cigkXywgbGVuZ3RoKCRuZXcpICsgMSkgOiAnLic7CisgICAgICAgIHJldHVybiBpZiAmJGRpZmZfaWdub3JlKCRmbik7CisgICAgICAgICRmaWxlc19pbl9uZXd7JGZufSA9IDE7CisgICAgICAgIGxzdGF0KCIkbmV3LyRmbiIpIHx8IHN5c2VycihfZygiY2Fubm90IHN0YXQgZmlsZSAlcyIpLCAiJG5ldy8kZm4iKTsKKyAgICAgICAgbXkgJG1vZGUgPSBTX0lNT0RFKChsc3RhdChfKSlbMl0pOworICAgICAgICBteSAkc2l6ZSA9IChsc3RhdChfKSlbN107CisgICAgICAgIGlmICgtbCBfKSB7CisgICAgICAgICAgICB1bmxlc3MgKC1sICIkb2xkLyRmbiIpIHsKKyAgICAgICAgICAgICAgICAkc2VsZi0+X2ZhaWxfbm90X3NhbWVfdHlwZSgiJG9sZC8kZm4iLCAiJG5ldy8kZm4iKTsKKyAgICAgICAgICAgICAgICByZXR1cm47CisgICAgICAgICAgICB9CisgICAgICAgICAgICBkZWZpbmVkKG15ICRuID0gcmVhZGxpbmsoIiRuZXcvJGZuIikpIHx8CisgICAgICAgICAgICAgICAgc3lzZXJyKF9nKCJjYW5ub3QgcmVhZCBsaW5rICVzIiksICIkbmV3LyRmbiIpOworICAgICAgICAgICAgZGVmaW5lZChteSAkbjIgPSByZWFkbGluaygiJG9sZC8kZm4iKSkgfHwKKyAgICAgICAgICAgICAgICBzeXNlcnIoX2coImNhbm5vdCByZWFkIGxpbmsgJXMiKSwgIiRvbGQvJGZuIik7CisgICAgICAgICAgICB1bmxlc3MgKCRuIGVxICRuMikgeworICAgICAgICAgICAgICAgICRzZWxmLT5fZmFpbF9ub3Rfc2FtZV90eXBlKCIkb2xkLyRmbiIsICIkbmV3LyRmbiIpOworICAgICAgICAgICAgfQorICAgICAgICB9IGVsc2lmICgtZiBfKSB7CisgICAgICAgICAgICBteSAkb2xkX2ZpbGUgPSAiJG9sZC8kZm4iOworICAgICAgICAgICAgaWYgKG5vdCBsc3RhdCgiJG9sZC8kZm4iKSkgeworICAgICAgICAgICAgICAgICQhID09IEVOT0VOVCB8fAorICAgICAgICAgICAgICAgICAgICBzeXNlcnIoX2coImNhbm5vdCBzdGF0IGZpbGUgJXMiKSwgIiRvbGQvJGZuIik7CisgICAgICAgICAgICAgICAgJG9sZF9maWxlID0gJy9kZXYvbnVsbCc7CisgICAgICAgICAgICB9IGVsc2lmIChub3QgLWYgXykgeworICAgICAgICAgICAgICAgICRzZWxmLT5fZmFpbF9ub3Rfc2FtZV90eXBlKCIkb2xkLyRmbiIsICIkbmV3LyRmbiIpOworICAgICAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgbXkgJGxhYmVsX29sZCA9ICIkYmFzZWRpci5vcmlnLyRmbiI7CisgICAgICAgICAgICBpZiAoJG9wdHN7J3VzZV9kZXZfbnVsbCd9KSB7CisgICAgICAgICAgICAgICAgJGxhYmVsX29sZCA9ICRvbGRfZmlsZSBpZiAkb2xkX2ZpbGUgZXEgJy9kZXYvbnVsbCc7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBwdXNoIEBkaWZmX2ZpbGVzLCBbJGZuLCAkbW9kZSwgJHNpemUsICRvbGRfZmlsZSwgIiRuZXcvJGZuIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkbGFiZWxfb2xkLCAiJGJhc2VkaXIvJGZuIl07CisgICAgICAgIH0gZWxzaWYgKC1wIF8pIHsKKyAgICAgICAgICAgIHVubGVzcyAoLXAgIiRvbGQvJGZuIikgeworICAgICAgICAgICAgICAgICRzZWxmLT5fZmFpbF9ub3Rfc2FtZV90eXBlKCIkb2xkLyRmbiIsICIkbmV3LyRmbiIpOworICAgICAgICAgICAgfQorICAgICAgICB9IGVsc2lmICgtYiBfIHx8IC1jIF8gfHwgLVMgXykgeworICAgICAgICAgICAgJHNlbGYtPl9mYWlsX3dpdGhfbXNnKCIkbmV3LyRmbiIsCisgICAgICAgICAgICAgICAgX2coImRldmljZSBvciBzb2NrZXQgaXMgbm90IGFsbG93ZWQiKSk7CisgICAgICAgIH0gZWxzaWYgKC1kIF8pIHsKKyAgICAgICAgICAgIGlmIChub3QgbHN0YXQoIiRvbGQvJGZuIikpIHsKKyAgICAgICAgICAgICAgICAkISA9PSBFTk9FTlQgfHwKKyAgICAgICAgICAgICAgICAgICAgc3lzZXJyKF9nKCJjYW5ub3Qgc3RhdCBmaWxlICVzIiksICIkb2xkLyRmbiIpOworICAgICAgICAgICAgfSBlbHNpZiAobm90IC1kIF8pIHsKKyAgICAgICAgICAgICAgICAkc2VsZi0+X2ZhaWxfbm90X3NhbWVfdHlwZSgiJG9sZC8kZm4iLCAiJG5ldy8kZm4iKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICRzZWxmLT5fZmFpbF93aXRoX21zZygiJG5ldy8kZm4iLCBfZygidW5rbm93biBmaWxlIHR5cGUiKSk7CisgICAgICAgIH0KKyAgICB9OworICAgIG15ICRzY2FuX29sZCA9IHN1YiB7CisgICAgICAgIG15ICRmbiA9IChsZW5ndGggPiBsZW5ndGgoJG9sZCkpID8gc3Vic3RyKCRfLCBsZW5ndGgoJG9sZCkgKyAxKSA6ICcuJzsKKyAgICAgICAgcmV0dXJuIGlmICYkZGlmZl9pZ25vcmUoJGZuKTsKKyAgICAgICAgcmV0dXJuIGlmICRmaWxlc19pbl9uZXd7JGZufTsKKyAgICAgICAgbHN0YXQoIiRvbGQvJGZuIikgfHwgc3lzZXJyKF9nKCJjYW5ub3Qgc3RhdCBmaWxlICVzIiksICIkb2xkLyRmbiIpOworICAgICAgICBpZiAoLWYgXykgeworICAgICAgICAgICAgaWYgKCRpbmNfcmVtb3ZhbCkgeworICAgICAgICAgICAgICAgIHB1c2ggQGRpZmZfZmlsZXMsIFskZm4sIDAsIDAsICIkb2xkLyRmbiIsICIvZGV2L251bGwiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiJGJhc2VkaXIub3JpZy8kZm4iLCAiL2Rldi9udWxsIl07CisgICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgICAgIHdhcm5pbmcoX2coImlnbm9yaW5nIGRlbGV0aW9uIG9mIGZpbGUgJXMiKSwgJGZuKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfSBlbHNpZiAoLWQgXykgeworICAgICAgICAgICAgd2FybmluZyhfZygiaWdub3JpbmcgZGVsZXRpb24gb2YgZGlyZWN0b3J5ICVzIiksICRmbik7CisgICAgICAgIH0gZWxzaWYgKC1sIF8pIHsKKyAgICAgICAgICAgIHdhcm5pbmcoX2coImlnbm9yaW5nIGRlbGV0aW9uIG9mIHN5bWxpbmsgJXMiKSwgJGZuKTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICRzZWxmLT5fZmFpbF9ub3Rfc2FtZV90eXBlKCIkb2xkLyRmbiIsICIkbmV3LyRmbiIpOworICAgICAgICB9CisgICAgfTsKKworICAgIGZpbmQoeyB3YW50ZWQgPT4gJHNjYW5fbmV3LCBub19jaGRpciA9PiAxIH0sICRuZXcpOworICAgIGZpbmQoeyB3YW50ZWQgPT4gJHNjYW5fb2xkLCBub19jaGRpciA9PiAxIH0sICRvbGQpOworCisgICAgaWYgKCRvcHRzeyJvcmRlcl9mcm9tIn0gYW5kIC1lICRvcHRzeyJvcmRlcl9mcm9tIn0pIHsKKyAgICAgICAgbXkgJG9yZGVyX2Zyb20gPSBEcGtnOjpTb3VyY2U6OlBhdGNoLT5uZXcoCisgICAgICAgICAgICBmaWxlbmFtZSA9PiAkb3B0c3sib3JkZXJfZnJvbSJ9KTsKKyAgICAgICAgbXkgJGFuYWx5c2lzID0gJG9yZGVyX2Zyb20tPmFuYWx5emUoJGJhc2VkaXIsIHZlcmJvc2UgPT4gMCk7CisgICAgICAgIG15ICVwYXRjaG9yZGVyOworICAgICAgICBteSAkaSA9IDA7CisgICAgICAgIGZvcmVhY2ggbXkgJGZuIChAeyRhbmFseXNpcy0+eyJwYXRjaG9yZGVyIn19KSB7CisgICAgICAgICAgICAkZm4gPX4gc3teW14vXSsvfXt9OworICAgICAgICAgICAgJHBhdGNob3JkZXJ7JGZufSA9ICRpKys7CisgICAgICAgIH0KKyAgICAgICAgIyAncXVpbHQgcmVmcmVzaCcgc29ydHMgZmlsZXMgYXMgZm9sbG93czoKKyAgICAgICAgIyAgIC0gQW55IGZpbGVzIGluIHRoZSBleGlzdGluZyBwYXRjaCBjb21lIGZpcnN0LCBpbiB0aGUgb3JkZXIgaW4KKyAgICAgICAgIyAgICAgd2hpY2ggdGhleSBhcHBlYXIgaW4gdGhlIGV4aXN0aW5nIHBhdGNoLgorICAgICAgICAjICAgLSBOZXcgZmlsZXMgZm9sbG93LCBzb3J0ZWQgbGV4aWNvZ3JhcGhpY2FsbHkuCisgICAgICAgICMgVGhpcyBzZWVtcyBhIHJlYXNvbmFibGUgcG9saWN5IHRvIGZvbGxvdywgYW5kIGF2b2lkcyBhdXRvcGF0Y2hlcworICAgICAgICAjIGJlaW5nIHNodWZmbGVkIHdoZW4gdGhleSBhcmUgcmVnZW5lcmF0ZWQuCisgICAgICAgIGZvcmVhY2ggbXkgJGRpZmZfZmlsZSAoc29ydCB7ICRhLT5bMF0gY21wICRiLT5bMF0gfSBAZGlmZl9maWxlcykgeworICAgICAgICAgICAgbXkgJGZuID0gJGRpZmZfZmlsZS0+WzBdOworICAgICAgICAgICAgJHBhdGNob3JkZXJ7JGZufSA9ICRpKysgdW5sZXNzIGV4aXN0cyAkcGF0Y2hvcmRlcnskZm59OworICAgICAgICB9CisgICAgICAgIEBkaWZmX2ZpbGVzID0gc29ydCB7ICRwYXRjaG9yZGVyeyRhLT5bMF19IDw9PiAkcGF0Y2hvcmRlcnskYi0+WzBdfSB9CisgICAgICAgICAgICAgICAgICAgICAgQGRpZmZfZmlsZXM7CisgICAgfQorCisgICAgZm9yZWFjaCBteSAkZGlmZl9maWxlIChAZGlmZl9maWxlcykgeworICAgICAgICBteSAoJGZuLCAkbW9kZSwgJHNpemUsCisgICAgICAgICAgICAkb2xkX2ZpbGUsICRuZXdfZmlsZSwgJGxhYmVsX29sZCwgJGxhYmVsX25ldykgPSBAJGRpZmZfZmlsZTsKKyAgICAgICAgbXkgJHN1Y2Nlc3MgPSAkc2VsZi0+YWRkX2RpZmZfZmlsZSgkb2xkX2ZpbGUsICRuZXdfZmlsZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbF9vbGQgPT4gJGxhYmVsX29sZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbF9uZXcgPT4gJGxhYmVsX25ldywgJW9wdHMpOworICAgICAgICBpZiAoJHN1Y2Nlc3MgYW5kCisgICAgICAgICAgICAkb2xkX2ZpbGUgZXEgIi9kZXYvbnVsbCIgYW5kICRuZXdfZmlsZSBuZSAiL2Rldi9udWxsIikgeworICAgICAgICAgICAgaWYgKG5vdCAkc2l6ZSkgeworICAgICAgICAgICAgICAgIHdhcm5pbmcoX2coIm5ld2x5IGNyZWF0ZWQgZW1wdHkgZmlsZSAnJXMnIHdpbGwgbm90ICIgLgorICAgICAgICAgICAgICAgICAgICAgICAgICAgImJlIHJlcHJlc2VudGVkIGluIGRpZmYiKSwgJGZuKTsKKyAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgaWYgKCRtb2RlICYgKFNfSVhVU1IgfCBTX0lYR1JQIHwgU19JWE9USCkpIHsKKyAgICAgICAgICAgICAgICAgICAgd2FybmluZyhfZygiZXhlY3V0YWJsZSBtb2RlICUwNG8gb2YgJyVzJyB3aWxsICIgLgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJub3QgYmUgcmVwcmVzZW50ZWQgaW4gZGlmZiIpLCAkbW9kZSwgJGZuKQorICAgICAgICAgICAgICAgICAgICAgICAgdW5sZXNzICRmbiBlcSAnZGViaWFuL3J1bGVzJzsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgaWYgKCRtb2RlICYgKFNfSVNVSUQgfCBTX0lTR0lEIHwgU19JU1ZUWCkpIHsKKyAgICAgICAgICAgICAgICAgICAgd2FybmluZyhfZygic3BlY2lhbCBtb2RlICUwNG8gb2YgJyVzJyB3aWxsIG5vdCAiIC4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiYmUgcmVwcmVzZW50ZWQgaW4gZGlmZiIpLCAkbW9kZSwgJGZuKTsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CisgICAgICAgIH0KKyAgICB9Cit9CisKK3N1YiBmaW5pc2ggeworICAgIG15ICgkc2VsZikgPSBAXzsKKyAgICBjbG9zZSgkc2VsZikgfHwgc3lzZXJyKF9nKCJjYW5ub3QgY2xvc2UgJXMiKSwgJHNlbGYtPmdldF9maWxlbmFtZSgpKTsKKyAgICByZXR1cm4gbm90ICokc2VsZi0+eydlcnJvcnMnfTsKK30KKworc3ViIHJlZ2lzdGVyX2Vycm9yIHsKKyAgICBteSAoJHNlbGYpID0gQF87CisgICAgKiRzZWxmLT57J2Vycm9ycyd9Kys7Cit9CitzdWIgX2ZhaWxfd2l0aF9tc2cgeworICAgIG15ICgkc2VsZiwgJGZpbGUsICRtc2cpID0gQF87CisgICAgZXJyb3Jtc2coX2coImNhbm5vdCByZXByZXNlbnQgY2hhbmdlIHRvICVzOiAlcyIpLCAkZmlsZSwgJG1zZyk7CisgICAgJHNlbGYtPnJlZ2lzdGVyX2Vycm9yKCk7Cit9CitzdWIgX2ZhaWxfbm90X3NhbWVfdHlwZSB7CisgICAgbXkgKCRzZWxmLCAkb2xkLCAkbmV3KSA9IEBfOworICAgIG15ICRvbGRfdHlwZSA9IGdldF90eXBlKCRvbGQpOworICAgIG15ICRuZXdfdHlwZSA9IGdldF90eXBlKCRuZXcpOworICAgIGVycm9ybXNnKF9nKCJjYW5ub3QgcmVwcmVzZW50IGNoYW5nZSB0byAlczoiKSwgJG5ldyk7CisgICAgZXJyb3Jtc2coX2coIiAgbmV3IHZlcnNpb24gaXMgJXMiKSwgJG5ld190eXBlKTsKKyAgICBlcnJvcm1zZyhfZygiICBvbGQgdmVyc2lvbiBpcyAlcyIpLCAkb2xkX3R5cGUpOworICAgICRzZWxmLT5yZWdpc3Rlcl9lcnJvcigpOworfQorCisjIGNoZWNrIGRpZmYgZm9yIHNhbml0eSwgZmluZCBkaXJlY3RvcmllcyB0byBjcmVhdGUgYXMgYSBzaWRlIGVmZmVjdAorc3ViIGFuYWx5emUgeworICAgIG15ICgkc2VsZiwgJGRlc3RkaXIsICVvcHRzKSA9IEBfOworCisgICAgJG9wdHN7InZlcmJvc2UifSA9IDEgaWYgbm90IGRlZmluZWQgJG9wdHN7InZlcmJvc2UifTsKKyAgICBteSAkZGlmZiA9ICRzZWxmLT5nZXRfZmlsZW5hbWUoKTsKKyAgICBteSAlZmlsZXBhdGNoZWQ7CisgICAgbXkgJWRpcnRvY3JlYXRlOworICAgIG15IEBwYXRjaG9yZGVyOworICAgIG15ICRkaWZmX2NvdW50ID0gMDsKKworICAgIHN1YiBnZXRsaW5lIHsKKyAgICAgICAgbXkgJGhhbmRsZSA9IHNoaWZ0OworICAgICAgICBteSAkbGluZSA9IDwkaGFuZGxlPjsKKyAgICAgICAgaWYgKGRlZmluZWQgJGxpbmUpIHsKKyAgICAgICAgICAgICMgU3RyaXAgZW5kLW9mLWxpbmUgY2hhcnMKKyAgICAgICAgICAgIGNob21wKCRsaW5lKTsKKyAgICAgICAgICAgICRsaW5lID1+IHMvXHIkLy87CisgICAgICAgIH0KKyAgICAgICAgcmV0dXJuICRsaW5lOworICAgIH0KKyAgICBzdWIgc3RyaXBfdHMgeyAjIFN0cmlwIHRpbWVzdGFtcAorICAgICAgICBteSAkaGVhZGVyID0gc2hpZnQ7CisgICAgICAgICMgVGFiIGlzIHRoZSBvZmZpY2lhbCBzZXBhcmF0b3IsIGl0J3MgYWx3YXlzIHVzZWQgd2hlbgorICAgICAgICAjIGZpbGVuYW1lIGNvbnRhaW4gc3BhY2VzLiBUcnkgaXQgZmlyc3QsIG90aGVyd2lzZSBzdHJpcCBvbiBzcGFjZQorICAgICAgICAjIGlmIHRoZXJlJ3Mgbm8gdGFiCisgICAgICAgICRoZWFkZXIgPX4gcy9ccy4qLy8gdW5sZXNzICgkaGVhZGVyID1+IHMvXHQuKi8vKTsKKyAgICAgICAgcmV0dXJuICRoZWFkZXI7CisgICAgfQorICAgIHN1YiBpbnR1aXRfZmlsZV9wYXRjaGVkIHsKKwlteSAoJG9sZCwgJG5ldykgPSBAXzsKKwlyZXR1cm4gJG5ldyB1bmxlc3MgZGVmaW5lZCAkb2xkOworCXJldHVybiAkb2xkIHVubGVzcyBkZWZpbmVkICRuZXc7CisJcmV0dXJuICRuZXcgaWYgLWUgJG5ldyBhbmQgbm90IC1lICRvbGQ7CisJcmV0dXJuICRvbGQgaWYgLWUgJG9sZCBhbmQgbm90IC1lICRuZXc7CisJIyBXZSBkb24ndCBjb25zaWRlciB0aGUgY2FzZSB3aGVyZSBib3RoIGZpbGVzIGFyZSBub24tZXhpc3RlbnQgYW5kCisJIyB3aGVyZSBwYXRjaCBwaWNrcyB0aGUgb25lIHdpdGggdGhlIGZld2VzdCBkaXJlY3RvcmllcyB0byBjcmVhdGUKKwkjIHNpbmNlIGRwa2ctc291cmNlIHdpbGwgcHJlLWNyZWF0ZSB0aGUgcmVxdWlyZWQgZGlyZWN0b3JpZXMKKwkjCisJIyBQcmVjYWxjdWxhdGUgbWV0cmljcyB1c2VkIGJ5IHBhdGNoCisJbXkgKCR0bXBfbywgJHRtcF9uKSA9ICgkb2xkLCAkbmV3KTsKKwlteSAoJGxlbl9vLCAkbGVuX24pID0gKGxlbmd0aCgkb2xkKSwgbGVuZ3RoKCRuZXcpKTsKKwkkdG1wX28gPX4gc3tbL1xcXSt9ey99ZzsKKwkkdG1wX24gPX4gc3tbL1xcXSt9ey99ZzsKKwlteSAkbmJfY29tcF9vID0gKCR0bXBfbyA9fiB0cnsvfXsvfSk7CisJbXkgJG5iX2NvbXBfbiA9ICgkdG1wX24gPX4gdHJ7L317L30pOworCSR0bXBfbyA9fiBze14uKi99e307CisJJHRtcF9uID1+IHN7Xi4qL317fTsKKwlteSAoJGJsZW5fbywgJGJsZW5fbikgPSAobGVuZ3RoKCR0bXBfbyksIGxlbmd0aCgkdG1wX24pKTsKKwkjIERlY2lkZSBsaWtlIHBhdGNoIHdvdWxkCisJaWYgKCRuYl9jb21wX28gIT0gJG5iX2NvbXBfbikgeworCSAgICByZXR1cm4gKCRuYl9jb21wX28gPCAkbmJfY29tcF9uKSA/ICRvbGQgOiAkbmV3OworCX0gZWxzaWYgKCRibGVuX28gIT0gJGJsZW5fbikgeworCSAgICByZXR1cm4gKCRibGVuX28gPCAkYmxlbl9uKSA/ICRvbGQgOiAkbmV3OworCX0gZWxzaWYgKCRsZW5fbyAhPSAkbGVuX24pIHsKKwkgICAgcmV0dXJuICgkbGVuX28gPCAkbGVuX24pID8gJG9sZCA6ICRuZXc7CisJfQorCXJldHVybiAkb2xkOworICAgIH0KKyAgICAkXyA9IGdldGxpbmUoJHNlbGYpOworCisgIEhVTks6CisgICAgd2hpbGUgKGRlZmluZWQoJF8pIHx8IG5vdCBlb2YoJHNlbGYpKSB7CisJbXkgKCVwYXRoLCAlZm4pOworCSMgc2tpcCBjb21tZW50cyBsZWFkaW5nIHVwIHRvIHBhdGNoIChpZiBhbnkpCisJdW50aWwgKC9eLS0tIC8pIHsKKwkgICAgbGFzdCBIVU5LIGlmIG5vdCBkZWZpbmVkKCRfID0gZ2V0bGluZSgkc2VsZikpOworCX0KKwkkZGlmZl9jb3VudCsrOworCSMgcmVhZCBmaWxlIGhlYWRlciAoLS0tLysrKyBwYWlyKQorCXVubGVzcyhzL14tLS0gLy8pIHsKKwkgICAgZXJyb3IoX2coImV4cGVjdGVkIF4tLS0gaW4gbGluZSAlZCBvZiBkaWZmIGAlcyciKSwgJC4sICRkaWZmKTsKKwl9CisgICAgICAgICRwYXRoeydvbGQnfSA9ICRfID0gc3RyaXBfdHMoJF8pOworCSRmbnsnb2xkJ30gPSAkXyBpZiAkXyBuZSAnL2Rldi9udWxsJyBhbmQgc3teW14vXSovK317JGRlc3RkaXIvfTsKKwlpZiAoL1wuZHBrZy1vcmlnJC8pIHsKKwkgICAgZXJyb3IoX2coImRpZmYgYCVzJyBwYXRjaGVzIGZpbGUgd2l0aCBuYW1lIGVuZGluZyAuZHBrZy1vcmlnIiksICRkaWZmKTsKKwl9CisKKwl1bmxlc3MgKGRlZmluZWQoJF8gPSBnZXRsaW5lKCRzZWxmKSkpIHsKKwkgICAgZXJyb3IoX2coImRpZmYgYCVzJyBmaW5pc2hlcyBpbiBtaWRkbGUgb2YgLS0tLysrKyAobGluZSAlZCkiKSwgJGRpZmYsICQuKTsKKwl9CisJdW5sZXNzIChzL15cK1wrXCsgLy8pIHsKKwkgICAgZXJyb3IoX2coImxpbmUgYWZ0ZXIgLS0tIGlzbid0IGFzIGV4cGVjdGVkIGluIGRpZmYgYCVzJyAobGluZSAlZCkiKSwgJGRpZmYsICQuKTsKKwl9CisgICAgICAgICRwYXRoeyduZXcnfSA9ICRfID0gc3RyaXBfdHMoJF8pOworCSRmbnsnbmV3J30gPSAkXyBpZiAkXyBuZSAnL2Rldi9udWxsJyBhbmQgc3teW14vXSovK317JGRlc3RkaXIvfTsKKworCXVubGVzcyAoZGVmaW5lZCAkZm57J29sZCd9IG9yIGRlZmluZWQgJGZueyduZXcnfSkgeworCSAgICBlcnJvcihfZygibm9uZSBvZiB0aGUgZmlsZW5hbWVzIGluIC0tLS8rKysgYXJlIHZhbGlkIGluIGRpZmYgJyVzJyAobGluZSAlZCkiKSwKKwkJICAkZGlmZiwgJC4pOworCX0KKworCSMgU2FmZXR5IGNoZWNrcyBvbiBib3RoIGZpbGVuYW1lcyB0aGF0IHBhdGNoIGNvdWxkIHVzZQorCWZvcmVhY2ggbXkgJGtleSAoIm9sZCIsICJuZXciKSB7CisJICAgIG5leHQgdW5sZXNzIGRlZmluZWQgJGZueyRrZXl9OworCSAgICBpZiAoJHBhdGh7JGtleX0gPX4gbXsvXC5cLi99KSB7CisJCWVycm9yKF9nKCIlcyBjb250YWlucyBhbiBpbnNlY3VyZSBwYXRoOiAlcyIpLCAkZGlmZiwgJHBhdGh7JGtleX0pOworCSAgICB9CisJICAgIG15ICRwYXRoID0gJGZueyRrZXl9OworCSAgICB3aGlsZSAoMSkgeworCQlpZiAoLWwgJHBhdGgpIHsKKwkJICAgIGVycm9yKF9nKCJkaWZmICVzIG1vZGlmaWVzIGZpbGUgJXMgdGhyb3VnaCBhIHN5bWxpbms6ICVzIiksCisJCQkgICRkaWZmLCAkZm57JGtleX0sICRwYXRoKTsKKwkJfQorCQlsYXN0IHVubGVzcyAkcGF0aCA9fiBzey8rW14vXSokfXt9OworCQlsYXN0IGlmIGxlbmd0aCgkcGF0aCkgPD0gbGVuZ3RoKCRkZXN0ZGlyKTsgIyAkZGVzdGRpciBpcyBhc3N1bWVkIHNhZmUKKwkgICAgfQorCX0KKworICAgICAgICBpZiAoJHBhdGh7J29sZCd9IGVxICcvZGV2L251bGwnIGFuZCAkcGF0aHsnbmV3J30gZXEgJy9kZXYvbnVsbCcpIHsKKyAgICAgICAgICAgIGVycm9yKF9nKCJvcmlnaW5hbCBhbmQgbW9kaWZpZWQgZmlsZXMgYXJlIC9kZXYvbnVsbCBpbiBkaWZmIGAlcycgKGxpbmUgJWQpIiksCisgICAgICAgICAgICAgICAgICAkZGlmZiwgJC4pOworICAgICAgICB9IGVsc2lmICgkcGF0aHsnbmV3J30gZXEgJy9kZXYvbnVsbCcpIHsKKyAgICAgICAgICAgIGVycm9yKF9nKCJmaWxlIHJlbW92YWwgd2l0aG91dCBwcm9wZXIgZmlsZW5hbWUgaW4gZGlmZiBgJXMnIChsaW5lICVkKSIpLAorICAgICAgICAgICAgICAgICAgJGRpZmYsICQuIC0gMSkgdW5sZXNzIGRlZmluZWQgJGZueydvbGQnfTsKKyAgICAgICAgICAgIGlmICgkb3B0c3sidmVyYm9zZSJ9KSB7CisgICAgICAgICAgICAgICAgd2FybmluZyhfZygiZGlmZiAlcyByZW1vdmVzIGEgbm9uLWV4aXN0aW5nIGZpbGUgJXMgKGxpbmUgJWQpIiksCisgICAgICAgICAgICAgICAgICAgICAgICAkZGlmZiwgJGZueydvbGQnfSwgJC4pIHVubGVzcyAtZSAkZm57J29sZCd9OworICAgICAgICAgICAgfQorICAgICAgICB9CisJbXkgJGZuID0gaW50dWl0X2ZpbGVfcGF0Y2hlZCgkZm57J29sZCd9LCAkZm57J25ldyd9KTsKKworCW15ICRkaXJuYW1lID0gJGZuOworCWlmICgkZGlybmFtZSA9fiBzey9bXi9dKyR9e30gJiYgbm90IC1kICRkaXJuYW1lKSB7CisJICAgICRkaXJ0b2NyZWF0ZXskZGlybmFtZX0gPSAxOworCX0KKworCWlmICgtZSAkZm4gYW5kIG5vdCAtZiBfKSB7CisJICAgIGVycm9yKF9nKCJkaWZmIGAlcycgcGF0Y2hlcyBzb21ldGhpbmcgd2hpY2ggaXMgbm90IGEgcGxhaW4gZmlsZSIpLCAkZGlmZik7CisJfQorCisJaWYgKCRmaWxlcGF0Y2hlZHskZm59KSB7CisJICAgIHdhcm5pbmcoX2coImRpZmYgYCVzJyBwYXRjaGVzIGZpbGUgJXMgdHdpY2UiKSwgJGRpZmYsICRmbikKKwkJaWYgJG9wdHN7InZlcmJvc2UifTsKKwl9IGVsc2UgeworCSAgICAkZmlsZXBhdGNoZWR7JGZufSA9IDE7CisJICAgIHB1c2ggQHBhdGNob3JkZXIsICRmbjsKKwl9CisKKwkjIHJlYWQgaHVua3MKKwlteSAkaHVuayA9IDA7CisJd2hpbGUgKGRlZmluZWQoJF8gPSBnZXRsaW5lKCRzZWxmKSkpIHsKKwkgICAgIyByZWFkIGh1bmsgaGVhZGVyIChAQCkKKwkgICAgbmV4dCBpZiAvXlxcIC87CisJICAgIGxhc3QgdW5sZXNzICgvXkBAIC1cZCsoLChcZCspKT8gXCtcZCsoLChcZCspKT8gQFxAKCAuKik/JC8pOworCSAgICBteSAoJG9saW5lcywgJG5saW5lcykgPSAoJDEgPyAkMiA6IDEsICQzID8gJDQgOiAxKTsKKwkgICAgIyByZWFkIGh1bmsKKwkgICAgd2hpbGUgKCRvbGluZXMgfHwgJG5saW5lcykgeworCQl1bmxlc3MgKGRlZmluZWQoJF8gPSBnZXRsaW5lKCRzZWxmKSkpIHsKKyAgICAgICAgICAgICAgICAgICAgaWYgKCgkb2xpbmVzID09ICRubGluZXMpIGFuZCAoJG9saW5lcyA8IDMpKSB7CisgICAgICAgICAgICAgICAgICAgICAgICB3YXJuaW5nKF9nKCJ1bmV4cGVjdGVkIGVuZCBvZiBkaWZmIGAlcyciKSwgJGRpZmYpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgJG9wdHN7InZlcmJvc2UifTsKKyAgICAgICAgICAgICAgICAgICAgICAgIGxhc3Q7CisgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgICAgICAgICBlcnJvcihfZygidW5leHBlY3RlZCBlbmQgb2YgZGlmZiBgJXMnIiksICRkaWZmKTsKKyAgICAgICAgICAgICAgICAgICAgfQorCQl9CisJCW5leHQgaWYgL15cXCAvOworCQkjIENoZWNrIHN0YXRzCisJCWlmICAgICgvXiAvIHx8IC9eJC8pICB7IC0tJG9saW5lczsgLS0kbmxpbmVzOyB9CisJCWVsc2lmICgvXi0vKSAgeyAtLSRvbGluZXM7IH0KKwkJZWxzaWYgKC9eXCsvKSB7IC0tJG5saW5lczsgfQorCQllbHNlIHsKKwkJICAgIGVycm9yKF9nKCJleHBlY3RlZCBbICstXSBhdCBzdGFydCBvZiBsaW5lICVkIG9mIGRpZmYgYCVzJyIpLAorCQkgICAgICAgICAgJC4sICRkaWZmKTsKKwkJfQorCSAgICB9CisJICAgICRodW5rKys7CisJfQorCXVubGVzcygkaHVuaykgeworCSAgICBlcnJvcihfZygiZXhwZWN0ZWQgXlxAXEAgYXQgbGluZSAlZCBvZiBkaWZmIGAlcyciKSwgJC4sICRkaWZmKTsKKwl9CisgICAgfQorICAgIGNsb3NlKCRzZWxmKTsKKyAgICB1bmxlc3MgKCRkaWZmX2NvdW50KSB7CisJd2FybmluZyhfZygiZGlmZiBgJXMnIGRvZXNuJ3QgY29udGFpbiBhbnkgcGF0Y2giKSwgJGRpZmYpCisJICAgIGlmICRvcHRzeyJ2ZXJib3NlIn07CisgICAgfQorICAgICokc2VsZi0+eydhbmFseXNpcyd9eyRkZXN0ZGlyfXsiZGlydG9jcmVhdGUifSA9IFwlZGlydG9jcmVhdGU7CisgICAgKiRzZWxmLT57J2FuYWx5c2lzJ317JGRlc3RkaXJ9eyJmaWxlcGF0Y2hlZCJ9ID0gXCVmaWxlcGF0Y2hlZDsKKyAgICAqJHNlbGYtPnsnYW5hbHlzaXMnfXskZGVzdGRpcn17InBhdGNob3JkZXIifSA9IFxAcGF0Y2hvcmRlcjsKKyAgICByZXR1cm4gKiRzZWxmLT57J2FuYWx5c2lzJ317JGRlc3RkaXJ9OworfQorCitzdWIgcHJlcGFyZV9hcHBseSB7CisgICAgbXkgKCRzZWxmLCAkYW5hbHlzaXMsICVvcHRzKSA9IEBfOworICAgIGlmICgkb3B0c3siY3JlYXRlX2RpcnMifSkgeworCWZvcmVhY2ggbXkgJGRpciAoa2V5cyAleyRhbmFseXNpcy0+eydkaXJ0b2NyZWF0ZSd9fSkgeworCSAgICBldmFsIHsgbWtwYXRoKCRkaXIsIDAsIDA3NzcpOyB9OworCSAgICBzeXNlcnIoX2coImNhbm5vdCBjcmVhdGUgZGlyZWN0b3J5ICVzIiksICRkaXIpIGlmICRAOworCX0KKyAgICB9Cit9CisKK3N1YiBhcHBseSB7CisgICAgbXkgKCRzZWxmLCAkZGVzdGRpciwgJW9wdHMpID0gQF87CisgICAgIyBTZXQgZGVmYXVsdCB2YWx1ZXMgdG8gb3B0aW9ucworICAgICRvcHRzeyJmb3JjZV90aW1lc3RhbXAifSA9IDEgdW5sZXNzIGV4aXN0cyAkb3B0c3siZm9yY2VfdGltZXN0YW1wIn07CisgICAgJG9wdHN7InJlbW92ZV9iYWNrdXAifSA9IDEgdW5sZXNzIGV4aXN0cyAkb3B0c3sicmVtb3ZlX2JhY2t1cCJ9OworICAgICRvcHRzeyJjcmVhdGVfZGlycyJ9ID0gMSB1bmxlc3MgZXhpc3RzICRvcHRzeyJjcmVhdGVfZGlycyJ9OworICAgICRvcHRzeyJvcHRpb25zIn0gfHw9IFsgJy10JywgJy1GJywgJzAnLCAnLU4nLCAnLXAxJywgJy11JywKKyAgICAgICAgICAgICctVicsICduZXZlcicsICctZzAnLCAnLWInLCAnLXonLCAnLmRwa2ctb3JpZyddOworICAgICRvcHRzeyJhZGRfb3B0aW9ucyJ9IHx8PSBbXTsKKyAgICBwdXNoIEB7JG9wdHN7Im9wdGlvbnMifX0sIEB7JG9wdHN7ImFkZF9vcHRpb25zIn19OworICAgICMgQ2hlY2sgdGhlIGRpZmYgYW5kIGNyZWF0ZSBtaXNzaW5nIGRpcmVjdG9yaWVzCisgICAgbXkgJGFuYWx5c2lzID0gJHNlbGYtPmFuYWx5emUoJGRlc3RkaXIsICVvcHRzKTsKKyAgICAkc2VsZi0+cHJlcGFyZV9hcHBseSgkYW5hbHlzaXMsICVvcHRzKTsKKyAgICAjIEFwcGx5IHRoZSBwYXRjaAorICAgICRzZWxmLT5lbnN1cmVfb3BlbigiciIpOworICAgIG15ICgkc3Rkb3V0LCAkc3RkZXJyKSA9ICgnJywgJycpOworICAgIHNwYXduKAorCSdleGVjJyA9PiBbICdwYXRjaCcsIEB7JG9wdHN7Im9wdGlvbnMifX0gXSwKKwknY2hkaXInID0+ICRkZXN0ZGlyLAorCSdlbnYnID0+IHsgTENfQUxMID0+ICdDJywgTEFORyA9PiAnQycgfSwKKwknZGVsZXRlX2VudicgPT4gWyAnUE9TSVhMWV9DT1JSRUNUJyBdLCAjIGVuc3VyZSBleHBlY3RlZCBwYXRjaCBiZWhhdmlvdXIKKwknd2FpdF9jaGlsZCcgPT4gMSwKKwknbm9jaGVjaycgPT4gMSwKKwknZnJvbV9oYW5kbGUnID0+ICRzZWxmLT5nZXRfZmlsZWhhbmRsZSgpLAorCSd0b19zdHJpbmcnID0+IFwkc3Rkb3V0LAorCSdlcnJvcl90b19zdHJpbmcnID0+IFwkc3RkZXJyLAorICAgICk7CisgICAgaWYgKCQ/KSB7CisJcHJpbnQgU1RET1VUICRzdGRvdXQ7CisJcHJpbnQgU1RERVJSICRzdGRlcnI7CisJc3VicHJvY2VycigiTENfQUxMPUMgcGF0Y2ggIiAuIGpvaW4oIiAiLCBAeyRvcHRzeyJvcHRpb25zIn19KSAuCisJICAgICAgICAgICAiIDwgIiAuICRzZWxmLT5nZXRfZmlsZW5hbWUoKSk7CisgICAgfQorICAgICRzZWxmLT5jbG9zZSgpOworICAgICMgUmVzZXQgdGhlIHRpbWVzdGFtcCBvZiBhbGwgdGhlIHBhdGNoZWQgZmlsZXMKKyAgICAjIGFuZCByZW1vdmUgLmRwa2ctb3JpZyBmaWxlcworICAgIG15IEBmaWxlcyA9IGtleXMgJXskYW5hbHlzaXMtPnsnZmlsZXBhdGNoZWQnfX07CisgICAgbXkgJG5vdyA9ICRvcHRzeyJ0aW1lc3RhbXAifTsKKyAgICAkbm93IHx8PSBmc190aW1lKCRmaWxlc1swXSkgaWYgJG9wdHN7ImZvcmNlX3RpbWVzdGFtcCJ9IGFuZCBzY2FsYXIgQGZpbGVzOworICAgIGZvcmVhY2ggbXkgJGZuIChAZmlsZXMpIHsKKwlpZiAoJG9wdHN7ImZvcmNlX3RpbWVzdGFtcCJ9KSB7CisJICAgIHV0aW1lKCRub3csICRub3csICRmbikgfHwgJCEgPT0gRU5PRU5UIHx8CisJCXN5c2VycihfZygiY2Fubm90IGNoYW5nZSB0aW1lc3RhbXAgZm9yICVzIiksICRmbik7CisJfQorCWlmICgkb3B0c3sicmVtb3ZlX2JhY2t1cCJ9KSB7CisJICAgICRmbiAuPSAiLmRwa2ctb3JpZyI7CisJICAgIHVubGluaygkZm4pIHx8IHN5c2VycihfZygicmVtb3ZlIHBhdGNoIGJhY2t1cCBmaWxlICVzIiksICRmbik7CisJfQorICAgIH0KKyAgICByZXR1cm4gJGFuYWx5c2lzOworfQorCisjwqBWZXJpZnkgaWYgY2hlY2sgd2lsbCB3b3JrLi4uCitzdWIgY2hlY2tfYXBwbHkgeworICAgIG15ICgkc2VsZiwgJGRlc3RkaXIsICVvcHRzKSA9IEBfOworICAgICMgU2V0IGRlZmF1bHQgdmFsdWVzIHRvIG9wdGlvbnMKKyAgICAkb3B0c3siY3JlYXRlX2RpcnMifSA9IDEgdW5sZXNzIGV4aXN0cyAkb3B0c3siY3JlYXRlX2RpcnMifTsKKyAgICAkb3B0c3sib3B0aW9ucyJ9IHx8PSBbICctLWRyeS1ydW4nLCAnLXMnLCAnLXQnLCAnLUYnLCAnMCcsICctTicsICctcDEnLCAnLXUnLAorICAgICAgICAgICAgJy1WJywgJ25ldmVyJywgJy1nMCcsICctYicsICcteicsICcuZHBrZy1vcmlnJ107CisgICAgJG9wdHN7ImFkZF9vcHRpb25zIn0gfHw9IFtdOworICAgIHB1c2ggQHskb3B0c3sib3B0aW9ucyJ9fSwgQHskb3B0c3siYWRkX29wdGlvbnMifX07CisgICAgIyBDaGVjayB0aGUgZGlmZiBhbmQgY3JlYXRlIG1pc3NpbmcgZGlyZWN0b3JpZXMKKyAgICBteSAkYW5hbHlzaXMgPSAkc2VsZi0+YW5hbHl6ZSgkZGVzdGRpciwgJW9wdHMpOworICAgICRzZWxmLT5wcmVwYXJlX2FwcGx5KCRhbmFseXNpcywgJW9wdHMpOworICAgICMgQXBwbHkgdGhlIHBhdGNoCisgICAgJHNlbGYtPmVuc3VyZV9vcGVuKCJyIik7CisgICAgbXkgJGVycm9yOworICAgIG15ICRwYXRjaF9waWQgPSBzcGF3bigKKwknZXhlYycgPT4gWyAncGF0Y2gnLCBAeyRvcHRzeyJvcHRpb25zIn19IF0sCisJJ2NoZGlyJyA9PiAkZGVzdGRpciwKKwknZW52JyA9PiB7IExDX0FMTCA9PiAnQycsIExBTkcgPT4gJ0MnIH0sCisJJ2RlbGV0ZV9lbnYnID0+IFsgJ1BPU0lYTFlfQ09SUkVDVCcgXSwgIyBlbnN1cmUgZXhwZWN0ZWQgcGF0Y2ggYmVoYXZpb3VyCisJJ2Zyb21faGFuZGxlJyA9PiAkc2VsZi0+Z2V0X2ZpbGVoYW5kbGUoKSwKKyAgICAgICAgJ3RvX2ZpbGUnID0+ICcvZGV2L251bGwnLAorICAgICAgICAnZXJyb3JfdG9fZmlsZScgPT4gJy9kZXYvbnVsbCcsCisgICAgKTsKKyAgICB3YWl0X2NoaWxkKCRwYXRjaF9waWQsIG5vY2hlY2sgPT4gMSk7CisgICAgbXkgJGV4aXQgPSBXRVhJVFNUQVRVUygkPyk7CisgICAgc3VicHJvY2VycigicGF0Y2ggLS1kcnktcnVuIikgdW5sZXNzIFdJRkVYSVRFRCgkPyk7CisgICAgJHNlbGYtPmNsb3NlKCk7CisgICAgcmV0dXJuICgkZXhpdCA9PSAwKTsKK30KKworIyBIZWxwZXIgZnVuY3Rpb25zCitzdWIgZ2V0X3R5cGUgeworICAgIG15ICRmaWxlID0gc2hpZnQ7CisgICAgaWYgKG5vdCBsc3RhdCgkZmlsZSkpIHsKKyAgICAgICAgcmV0dXJuIF9nKCJub25leGlzdGVudCIpIGlmICQhID09IEVOT0VOVDsKKyAgICAgICAgc3lzZXJyKF9nKCJjYW5ub3Qgc3RhdCAlcyIpLCAkZmlsZSk7CisgICAgfSBlbHNlIHsKKyAgICAgICAgLWYgXyAmJiByZXR1cm4gX2coInBsYWluIGZpbGUiKTsKKyAgICAgICAgLWQgXyAmJiByZXR1cm4gX2coImRpcmVjdG9yeSIpOworICAgICAgICAtbCBfICYmIHJldHVybiBzcHJpbnRmKF9nKCJzeW1saW5rIHRvICVzIiksIHJlYWRsaW5rKCRmaWxlKSk7CisgICAgICAgIC1iIF8gJiYgcmV0dXJuIF9nKCJibG9jayBkZXZpY2UiKTsKKyAgICAgICAgLWMgXyAmJiByZXR1cm4gX2coImNoYXJhY3RlciBkZXZpY2UiKTsKKyAgICAgICAgLXAgXyAmJiByZXR1cm4gX2coIm5hbWVkIHBpcGUiKTsKKyAgICAgICAgLVMgXyAmJiByZXR1cm4gX2coIm5hbWVkIHNvY2tldCIpOworICAgIH0KK30KKworMTsKKyMgdmltOiBzZXQgZXQgc3c9NCB0cz04CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvRHBrZy9TdWJzdHZhcnMucG0gYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvRHBrZy9TdWJzdHZhcnMucG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjI5YTQxNQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9EcGtnL1N1YnN0dmFycy5wbQpAQCAtMCwwICsxLDMwMiBAQAorIyBDb3B5cmlnaHQgwqkgMjAwNy0yMDEwIFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KKyMKKyMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyMKKyMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisjIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisjIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyMKKyMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisKK3BhY2thZ2UgRHBrZzo6U3Vic3R2YXJzOworCit1c2Ugc3RyaWN0OwordXNlIHdhcm5pbmdzOworCitvdXIgJFZFUlNJT04gPSAiMS4wMCI7CisKK3VzZSBEcGtnIHF3KCR2ZXJzaW9uKTsKK3VzZSBEcGtnOjpBcmNoIHF3KGdldF9ob3N0X2FyY2gpOwordXNlIERwa2c6OkVycm9ySGFuZGxpbmc7Cit1c2UgRHBrZzo6R2V0dGV4dDsKKwordXNlIFBPU0lYIHF3KDplcnJub19oKTsKKwordXNlIGJhc2UgcXcoRHBrZzo6SW50ZXJmYWNlOjpTdG9yYWJsZSk7CisKK215ICRtYXhzdWJzdHMgPSA1MDsKKworPWVuY29kaW5nIHV0ZjgKKworPWhlYWQxIE5BTUUKKworRHBrZzo6U3Vic3R2YXJzIC0gaGFuZGxlIHZhcmlhYmxlIHN1YnN0aXR1dGlvbiBpbiBzdHJpbmdzCisKKz1oZWFkMSBERVNDUklQVElPTgorCitJdCBwcm92aWRlcyBzb21lIGFuIG9iamVjdCB3aGljaCBpcyBhYmxlIHRvIHN1YnN0aXR1dGUgdmFyaWFibGVzIGluCitzdHJpbmdzLgorCis9aGVhZDEgTUVUSE9EUworCis9b3ZlciA4CisKKz1pdGVtIG15ICRzID0gRHBrZzo6U3Vic3R2YXJzLT5uZXcoJGZpbGUpCisKK0NyZWF0ZSBhIG5ldyBvYmplY3QgdGhhdCBjYW4gZG8gc3Vic3RpdHV0aW9ucy4gQnkgZGVmYXVsdCBpdCBjb250YWlucworZ2VuZXJpYyBzdWJzdGl0dXRpb25zIGxpa2UgJHtOZXdsaW5lfSwgJHtTcGFjZX0sICR7VGFifSwgJHtkcGtnOlZlcnNpb259CithbmQgJHtkcGtnOlVwc3RyZWFtLVZlcnNpb259LgorCitBZGRpdGlvbmFsIHN1YnN0aXR1dGlvbnMgd2lsbCBiZSByZWFkIGZyb20gdGhlICRmaWxlIHBhc3NlZCBhcyBwYXJhbWV0ZXIuCisKK0l0IGtlZXBzIHRyYWNrIG9mIHdoaWNoIHN1YnN0aXR1dGlvbnMgd2VyZSBhY3R1YWxseSB1c2VkIChvbmx5IGNvdW50aW5nCitzdWJzdHZhcnMoKSwgbm90IGdldCgpKSwgYW5kIHdhcm5zIGFib3V0IHVudXNlZCBzdWJzdHZhcnMgd2hlbiBhc2tlZCB0by4gVGhlCitzdWJzdGl0dXRpb25zIHRoYXQgYXJlIGFsd2F5cyBwcmVzZW50IGFyZSBub3QgaW5jbHVkZWQgaW4gdGhlc2Ugd2FybmluZ3MuCisKKz1jdXQKKworc3ViIG5ldyB7CisgICAgbXkgKCR0aGlzLCAkYXJnKSA9IEBfOworICAgIG15ICRjbGFzcyA9IHJlZigkdGhpcykgfHwgJHRoaXM7CisgICAgbXkgJHNlbGYgPSB7CisgICAgICAgIHZhcnMgPT4geworICAgICAgICAgICAgIk5ld2xpbmUiID0+ICJcbiIsCisgICAgICAgICAgICAiU3BhY2UiID0+ICIgIiwKKyAgICAgICAgICAgICJUYWIiID0+ICJcdCIsCisgICAgICAgICAgICAiZHBrZzpWZXJzaW9uIiA9PiAkdmVyc2lvbiwKKyAgICAgICAgICAgICJkcGtnOlVwc3RyZWFtLVZlcnNpb24iID0+ICR2ZXJzaW9uLAorICAgICAgICAgICAgfSwKKyAgICAgICAgdXNlZCA9PiB7fSwKKwltc2dfcHJlZml4ID0+ICIiLAorICAgIH07CisgICAgJHNlbGYtPnsndmFycyd9eydkcGtnOlVwc3RyZWFtLVZlcnNpb24nfSA9fiBzLy1bXi1dKyQvLzsKKyAgICBibGVzcyAkc2VsZiwgJGNsYXNzOworICAgICRzZWxmLT5ub193YXJuKCRfKSBmb3JlYWNoIGtleXMgJXskc2VsZi0+eyd2YXJzJ319OworICAgIGlmICgkYXJnKSB7CisgICAgICAgICRzZWxmLT5sb2FkKCRhcmcpIGlmIC1lICRhcmc7CisgICAgfQorICAgIHJldHVybiAkc2VsZjsKK30KKworPWl0ZW0gJHMtPnNldCgka2V5LCAkdmFsdWUpCisKK0FkZC9yZXBsYWNlIGEgc3Vic3RpdHV0aW9uLgorCis9Y3V0CisKK3N1YiBzZXQgeworICAgIG15ICgkc2VsZiwgJGtleSwgJHZhbHVlKSA9IEBfOworICAgICRzZWxmLT57J3ZhcnMnfXska2V5fSA9ICR2YWx1ZTsKK30KKworPWl0ZW0gJHMtPmdldCgka2V5KQorCitHZXQgdGhlIHZhbHVlIG9mIGEgZ2l2ZW4gc3Vic3RpdHV0aW9uLgorCis9Y3V0CisKK3N1YiBnZXQgeworICAgIG15ICgkc2VsZiwgJGtleSkgPSBAXzsKKyAgICByZXR1cm4gJHNlbGYtPnsndmFycyd9eyRrZXl9OworfQorCis9aXRlbSAkcy0+ZGVsZXRlKCRrZXkpCisKK1JlbW92ZSBhIGdpdmVuIHN1YnN0aXR1dGlvbi4KKworPWN1dAorCitzdWIgZGVsZXRlIHsKKyAgICBteSAoJHNlbGYsICRrZXkpID0gQF87CisgICAgZGVsZXRlICRzZWxmLT57J3VzZWQnfXska2V5fTsKKyAgICByZXR1cm4gZGVsZXRlICRzZWxmLT57J3ZhcnMnfXska2V5fTsKK30KKworPWl0ZW0gJHMtPm5vX3dhcm4oJGtleSkKKworUHJldmVudHMgd2FybmluZ3MgYWJvdXQgYSB1bnVzZWQgc3Vic3RpdHV0aW9uLCBmb3IgZXhhbXBsZSBpZiBpdCBpcyBwcm92aWRlZCBieQorZGVmYXVsdC4KKworPWN1dAorCitzdWIgbm9fd2FybiB7CisgICAgbXkgKCRzZWxmLCAka2V5KSA9IEBfOworICAgICRzZWxmLT57J3VzZWQnfXska2V5fSsrOworfQorCis9aXRlbSAkcy0+bG9hZCgkZmlsZSkKKworQWRkIG5ldyBzdWJzdGl0dXRpb25zIHJlYWQgZnJvbSAkZmlsZS4KKworPWl0ZW0gJHMtPnBhcnNlKCRmaCwgJGRlc2MpCisKK0FkZCBuZXcgc3Vic3RpdHV0aW9ucyByZWFkIGZyb20gdGhlIGZpbGVoYW5kbGUuICRkZXNjIGlzIHVzZWQgdG8gaWRlbnRpZnkKK3RoZSBmaWxlaGFuZGxlIGluIGVycm9yIG1lc3NhZ2VzLgorCis9Y3V0CisKK3N1YiBwYXJzZSB7CisgICAgbXkgKCRzZWxmLCAkZmgsICR2YXJsaXN0ZmlsZSkgPSBAXzsKKyAgICBiaW5tb2RlKCRmaCk7CisgICAgd2hpbGUgKDwkZmg+KSB7CisJbmV4dCBpZiBtL15ccypcIy8gfHwgIW0vXFMvOworCXMvXHMqXG4kLy87CisJbS9eKFx3Wy06MC05QS1aYS16XSopXD0oLiopJC8gfHwKKwkgICAgZXJyb3IoX2coImJhZCBsaW5lIGluIHN1YnN0dmFycyBmaWxlICVzIGF0IGxpbmUgJWQiKSwKKwkJICAkdmFybGlzdGZpbGUsICQuKTsKKwkkc2VsZi0+eyd2YXJzJ317JDF9ID0gJDI7CisgICAgfQorfQorCis9aXRlbSAkcy0+c2V0X3ZlcnNpb25fc3Vic3R2YXJzKCR2ZXJzaW9uKQorCitEZWZpbmVzICR7YmluYXJ5OlZlcnNpb259LCAke3NvdXJjZTpWZXJzaW9ufSBhbmQKKyR7c291cmNlOlVwc3RyZWFtLVZlcnNpb259IGJhc2VkIG9uIHRoZSBnaXZlbiB2ZXJzaW9uIHN0cmluZy4KKworVGhlc2Ugd2lsbCBuZXZlciBiZSB3YXJuZWQgYWJvdXQgd2hlbiB1bnVzZWQuCisKKz1jdXQKKworc3ViIHNldF92ZXJzaW9uX3N1YnN0dmFycyB7CisgICAgbXkgKCRzZWxmLCAkdmVyc2lvbikgPSBAXzsKKworICAgICRzZWxmLT57J3ZhcnMnfXsnYmluYXJ5OlZlcnNpb24nfSA9ICR2ZXJzaW9uOworICAgICRzZWxmLT57J3ZhcnMnfXsnc291cmNlOlZlcnNpb24nfSA9ICR2ZXJzaW9uOworICAgICRzZWxmLT57J3ZhcnMnfXsnc291cmNlOlZlcnNpb24nfSA9fiBzL1wrYlswLTldKyQvLzsKKyAgICAkc2VsZi0+eyd2YXJzJ317J3NvdXJjZTpVcHN0cmVhbS1WZXJzaW9uJ30gPSAkdmVyc2lvbjsKKyAgICAkc2VsZi0+eyd2YXJzJ317J3NvdXJjZTpVcHN0cmVhbS1WZXJzaW9uJ30gPX4gcy8tW14tXSokLy87CisKKyAgICAjIFhYWDogU291cmNlLVZlcnNpb24gaXMgbm93IGRlcHJlY2F0ZWQsIHJlbW92ZSBpbiB0aGUgZnV0dXJlLgorICAgICRzZWxmLT57J3ZhcnMnfXsnU291cmNlLVZlcnNpb24nfSA9ICR2ZXJzaW9uOworCisgICAgJHNlbGYtPm5vX3dhcm4oJF8pIGZvcmVhY2ggcXcvYmluYXJ5OlZlcnNpb24gc291cmNlOlZlcnNpb24gc291cmNlOlVwc3RyZWFtLVZlcnNpb24gU291cmNlLVZlcnNpb24vOworfQorCis9aXRlbSAkcy0+c2V0X2FyY2hfc3Vic3R2YXJzKCkKKworRGVmaW5lcyBhcmNoaXRlY3R1cmUgdmFyaWFibGVzOiAke0FyY2h9LgorCitUaGlzIHdpbGwgbmV2ZXIgYmUgd2FybmVkIGFib3V0IHdoZW4gdW51c2VkLgorCis9Y3V0CisKK3N1YiBzZXRfYXJjaF9zdWJzdHZhcnMgeworICAgIG15ICgkc2VsZikgPSBAXzsKKworICAgICRzZWxmLT57J3ZhcnMnfXsnQXJjaCd9ID0gZ2V0X2hvc3RfYXJjaCgpOworICAgICRzZWxmLT5ub193YXJuKCdBcmNoJyk7Cit9CisKKz1pdGVtICRuZXdzdHJpbmcgPSAkcy0+c3Vic3R2YXJzKCRzdHJpbmcpCisKK1N1YnN0aXR1dGVzIHZhcmlhYmxlcyBpbiAkc3RyaW5nIGFuZCByZXR1cm4gdGhlIHJlc3VsdCBpbiAkbmV3c3RyaW5nLgorCis9Y3V0CisKK3N1YiBzdWJzdHZhcnMgeworICAgIG15ICgkc2VsZiwgJHYsICVvcHRzKSA9IEBfOworICAgIG15ICRsaHM7CisgICAgbXkgJHZuOworICAgIG15ICRyaHMgPSAnJzsKKyAgICBteSAkY291bnQgPSAwOworICAgICRvcHRze21zZ19wcmVmaXh9ID0gJHNlbGYtPnttc2dfcHJlZml4fSB1bmxlc3MgZXhpc3RzICRvcHRze21zZ19wcmVmaXh9OworICAgICRvcHRze25vX3dhcm59ID0gMCB1bmxlc3MgZXhpc3RzICRvcHRze25vX3dhcm59OworCisgICAgd2hpbGUgKCR2ID1+IG0vXiguKj8pXCRceyhbLTowLTlhLXpdKylcfSguKikkL3NpKSB7CisgICAgICAgICMgSWYgd2UgaGF2ZSBjb25zdW1lZCBtb3JlIGZyb20gdGhlIGxlZnRvdmVyIGRhdGEsIHRoZW4KKyAgICAgICAgIyByZXNldCB0aGUgcmVjdXJzaXZlIGNvdW50ZXIuCisgICAgICAgICRjb3VudCA9IDAgaWYgKGxlbmd0aCgkMykgPCBsZW5ndGgoJHJocykpOworCisgICAgICAgICRjb3VudCA8ICRtYXhzdWJzdHMgfHwKKyAgICAgICAgICAgIGVycm9yKCRvcHRze21zZ19wcmVmaXh9IC4KKwkgICAgICAgICAgX2coInRvbyBtYW55IHN1YnN0aXR1dGlvbnMgLSByZWN1cnNpdmUgPyAtIGluIFxgJXMnIiksICR2KTsKKyAgICAgICAgJGxocyA9ICQxOyAkdm4gPSAkMjsgJHJocyA9ICQzOworICAgICAgICBpZiAoZGVmaW5lZCgkc2VsZi0+eyd2YXJzJ317JHZufSkpIHsKKyAgICAgICAgICAgICR2ID0gJGxocyAuICRzZWxmLT57J3ZhcnMnfXskdm59IC4gJHJoczsKKwkgICAgJHNlbGYtPm5vX3dhcm4oJHZuKTsKKyAgICAgICAgICAgICRjb3VudCsrOworICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgd2FybmluZygkb3B0c3ttc2dfcHJlZml4fSAuIF9nKCJ1bmtub3duIHN1YnN0aXR1dGlvbiB2YXJpYWJsZSBcJHslc30iKSwKKwkgICAgICAgICAgICAkdm4pIHVubGVzcyAkb3B0c3tub193YXJufTsKKyAgICAgICAgICAgICR2ID0gJGxocyAuICRyaHM7CisgICAgICAgIH0KKyAgICB9CisgICAgcmV0dXJuICR2OworfQorCis9aXRlbSAkcy0+d2Fybl9hYm91dF91bnVzZWQoKQorCitJc3N1ZXMgd2FybmluZyBhYm91dCBhbnkgdmFyaWFibGVzIHRoYXQgd2VyZSBzZXQsIGJ1dCBub3QgdXNlZAorCis9Y3V0CisKK3N1YiB3YXJuX2Fib3V0X3VudXNlZCB7CisgICAgbXkgKCRzZWxmLCAlb3B0cykgPSBAXzsKKyAgICAkb3B0c3ttc2dfcHJlZml4fSA9ICRzZWxmLT57bXNnX3ByZWZpeH0gdW5sZXNzIGV4aXN0cyAkb3B0c3ttc2dfcHJlZml4fTsKKworICAgIGZvcmVhY2ggbXkgJHZuIChrZXlzICV7JHNlbGYtPnsndmFycyd9fSkgeworICAgICAgICBuZXh0IGlmICRzZWxmLT57J3VzZWQnfXskdm59OworICAgICAgICAjIEVtcHR5IHN1YnN0aXR1dGlvbnMgdmFyaWFibGVzIGFyZSBpZ25vcmVkIG9uIHRoZSBiYXNpcworICAgICAgICAjIHRoYXQgdGhleSBhcmUgbm90IHJlcXVpcmVkIGluIHRoZSBjdXJyZW50IHNpdHVhdGlvbgorICAgICAgICAjIChleGFtcGxlOiBkZWJoZWxwZXIncyBtaXNjOkRlcGVuZHMgaW4gbWFueSBjYXNlcykKKyAgICAgICAgbmV4dCBpZiAkc2VsZi0+eyd2YXJzJ317JHZufSBlcSAiIjsKKyAgICAgICAgd2FybmluZygkb3B0c3ttc2dfcHJlZml4fSAuIF9nKCJ1bnVzZWQgc3Vic3RpdHV0aW9uIHZhcmlhYmxlIFwkeyVzfSIpLCAkdm4pOworICAgIH0KK30KKworPWl0ZW0gJHMtPnNldF9tc2dfcHJlZml4KCRwcmVmaXgpCisKK0RlZmluZSBhIHByZWZpeCBkaXNwbGF5ZWQgYmVmb3JlIGFsbCB3YXJuaW5ncy9lcnJvciBtZXNzYWdlcyBvdXRwdXQKK2J5IHRoZSBtb2R1bGUuCisKKz1jdXQKKworc3ViIHNldF9tc2dfcHJlZml4IHsKKyAgICBteSAoJHNlbGYsICRwcmVmaXgpID0gQF87CisgICAgJHNlbGYtPnttc2dfcHJlZml4fSA9ICRwcmVmaXg7Cit9CisKKz1pdGVtICRzLT5zYXZlKCRmaWxlKQorCitTdG9yZSBhbGwgc3Vic3RpdHV0aW9ucyB2YXJpYWJsZXMgZXhjZXB0IHRoZSBhdXRvbWF0aWMgb25lcyBpbiB0aGUKK2luZGljYXRlZCBmaWxlLgorCis9aXRlbSAiJHMiCisKK1JldHVybiBhIHN0cmluZyByZXByZXNlbnRhdGlvbiBvZiBhbGwgc3Vic3RpdHV0aW9ucyB2YXJpYWJsZXMgZXhjZXB0IHRoZQorYXV0b21hdGljIG9uZXMuCisKKz1pdGVtICRzdHIgPSAkcy0+b3V0cHV0KCRmaCkKKworUHJpbnQgYWxsIHN1YnN0aXR1dGlvbnMgdmFyaWFibGVzIGV4Y2VwdCB0aGUgYXV0b21hdGljIG9uZXMgaW4gdGhlCitmaWxlaGFuZGxlIGFuZCByZXR1cm4gdGhlIGNvbnRlbnQgd3JpdHRlbi4KKworPWN1dAorCitzdWIgb3V0cHV0IHsKKyAgICBteSAoJHNlbGYsICRmaCkgPSBAXzsKKyAgICBteSAkc3RyID0gIiI7CisgICAgIyBTdG9yZSBhbGwgbm9uLWF1dG9tYXRpYyBzdWJzdGl0dXRpb25zIG9ubHkKKyAgICBmb3JlYWNoIG15ICR2biAoc29ydCBrZXlzICV7JHNlbGYtPnsndmFycyd9fSkgeworCW5leHQgaWYgL14oPzooPzpkcGtnfHNvdXJjZXxiaW5hcnkpOig/OlNvdXJjZS0pP1ZlcnNpb258U3BhY2V8VGFifE5ld2xpbmV8QXJjaHxTb3VyY2UtVmVyc2lvbnxGOi4rKSQvOworCW15ICRsaW5lID0gIiR2bj0iIC4gJHNlbGYtPnt2YXJzfXskdm59IC4gIlxuIjsKKwlwcmludCAkZmggJGxpbmUgaWYgZGVmaW5lZCAkZmg7CisJJHN0ciAuPSAkbGluZTsKKyAgICB9CisgICAgcmV0dXJuICRzdHI7Cit9CisKKz1iYWNrCisKKz1oZWFkMSBBVVRIT1IKKworUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPi4KKworPWN1dAorCisxOwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL0Rwa2cvVmFycy5wbSBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9EcGtnL1ZhcnMucG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNmY4MjEwMwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9EcGtnL1ZhcnMucG0KQEAgLTAsMCArMSw1MyBAQAorIyBDb3B5cmlnaHQgwqkgMjAwNyBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisjCisjIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisjIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisjIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisjIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisjCisjIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisjIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisjCisjIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisjIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorCitwYWNrYWdlIERwa2c6OlZhcnM7CisKK3VzZSBzdHJpY3Q7Cit1c2Ugd2FybmluZ3M7CisKK291ciAkVkVSU0lPTiA9ICIwLjAxIjsKKwordXNlIERwa2c6OkVycm9ySGFuZGxpbmc7Cit1c2UgRHBrZzo6R2V0dGV4dDsKKwordXNlIGJhc2UgcXcoRXhwb3J0ZXIpOworb3VyIEBFWFBPUlQgPSBxdygkc291cmNlcGFja2FnZSBzZXRfc291cmNlX3BhY2thZ2UpOworCitvdXIgJHNvdXJjZXBhY2thZ2U7CisKK3N1YiBjaGVja19wYWNrYWdlX25hbWUgeworICAgIG15ICRuYW1lID0gc2hpZnQgfHwgJyc7CisgICAgJG5hbWUgPX4gbS9bXi0rLjAtOWEtel0vbyAmJgorICAgICAgICBlcnJvcihfZygic291cmNlIHBhY2thZ2UgbmFtZSBgJXMnIGNvbnRhaW5zIGlsbGVnYWwgY2hhcmFjdGVyIGAlcyciKSwKKyAgICAgICAgICAgICAgJG5hbWUsICQmKTsKKyAgICAkbmFtZSA9fiBtL15bMC05YS16XS9vIHx8CisgICAgICAgIGVycm9yKF9nKCJzb3VyY2UgcGFja2FnZSBuYW1lIGAlcycgc3RhcnRzIHdpdGggbm9uLWFscGhhbnVtIiksICRuYW1lKTsKK30KKworc3ViIHNldF9zb3VyY2VfcGFja2FnZSB7CisgICAgbXkgJHYgPSBzaGlmdDsKKworICAgIGNoZWNrX3BhY2thZ2VfbmFtZSgkdik7CisgICAgaWYgKGRlZmluZWQoJHNvdXJjZXBhY2thZ2UpKSB7CisgICAgICAgICR2IGVxICRzb3VyY2VwYWNrYWdlIHx8CisgICAgICAgICAgICBlcnJvcihfZygic291cmNlIHBhY2thZ2UgaGFzIHR3byBjb25mbGljdGluZyB2YWx1ZXMgLSAlcyBhbmQgJXMiKSwKKyAgICAgICAgICAgICAgICAgICRzb3VyY2VwYWNrYWdlLCAkdik7CisgICAgfSBlbHNlIHsKKyAgICAgICAgJHNvdXJjZXBhY2thZ2UgPSAkdjsKKyAgICB9Cit9CisKKzE7CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvRHBrZy9WZW5kb3IucG0gYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvRHBrZy9WZW5kb3IucG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODYwMWY4OQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9EcGtnL1ZlbmRvci5wbQpAQCAtMCwwICsxLDE1OCBAQAorIyBDb3B5cmlnaHQgwqkgMjAwOC0yMDA5IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KKyMKKyMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyMKKyMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisjIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisjIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyMKKyMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisKK3BhY2thZ2UgRHBrZzo6VmVuZG9yOworCit1c2Ugc3RyaWN0OwordXNlIHdhcm5pbmdzOworCitvdXIgJFZFUlNJT04gPSAiMS4wMCI7CisKK3VzZSBEcGtnOjpFcnJvckhhbmRsaW5nOwordXNlIERwa2c6OkdldHRleHQ7Cit1c2UgRHBrZzo6Q29udHJvbDo6SGFzaDsKKwordXNlIGJhc2UgcXcoRXhwb3J0ZXIpOworb3VyIEBFWFBPUlRfT0sgPSBxdyhnZXRfdmVuZG9yX2luZm8gZ2V0X2N1cnJlbnRfdmVuZG9yIGdldF92ZW5kb3JfZmlsZQorICAgICAgICAgICAgICAgICAgICBnZXRfdmVuZG9yX29iamVjdCBydW5fdmVuZG9yX2hvb2spOworCitteSAkb3JpZ2lucyA9ICIvZXRjL2Rwa2cvb3JpZ2lucyI7Ciskb3JpZ2lucyA9ICRFTlZ7RFBLR19PUklHSU5TX0RJUn0gaWYgJEVOVntEUEtHX09SSUdJTlNfRElSfTsKKworPWVuY29kaW5nIHV0ZjgKKworPWhlYWQxIE5BTUUKKworRHBrZzo6VmVuZG9yIC0gZ2V0IGFjY2VzcyB0byBzb21lIHZlbmRvciBzcGVjaWZpYyBpbmZvcm1hdGlvbgorCis9aGVhZDEgREVTQ1JJUFRJT04KKworVGhlIGZpbGVzIGluIC9ldGMvZHBrZy9vcmlnaW5zLyBjYW4gcHJvdmlkZSBpbmZvcm1hdGlvbiBhYm91dCB2YXJpb3VzCit2ZW5kb3JzIHdobyBhcmUgcHJvdmlkaW5nIERlYmlhbiBwYWNrYWdlcy4gQ3VycmVudGx5IHRob3NlIGZpbGVzIGxvb2sgbGlrZQordGhpczoKKworICBWZW5kb3I6IERlYmlhbgorICBWZW5kb3ItVVJMOiBodHRwOi8vd3d3LmRlYmlhbi5vcmcvCisgIEJ1Z3M6IGRlYmJ1Z3M6Ly9idWdzLmRlYmlhbi5vcmcKKworVGhlIGZpbGUgc2hvdWxkIGJlIG5hbWVkIGFjY29yZGluZyB0byB0aGUgdmVuZG9yIG5hbWUuCisKKz1oZWFkMSBGVU5DVElPTlMKKworPW92ZXIgNAorCis9aXRlbSAkZmllbGRzID0gRHBrZzo6VmVuZG9yOjpnZXRfdmVuZG9yX2luZm8oJG5hbWUpCisKK1JldHVybnMgYSBEcGtnOjpDb250cm9sIG9iamVjdCB3aXRoIHRoZSBpbmZvcm1hdGlvbiBwYXJzZWQgZnJvbSB0aGUKK2NvcnJlc3BvbmRpbmcgdmVuZG9yIGZpbGUgaW4gL2V0Yy9kcGtnL29yaWdpbnMvLiBJZiAkbmFtZSBpcyBvbWl0dGVkLAoraXQgd2lsbCB1c2UgL2V0Yy9kcGtnL29yaWdpbnMvZGVmYXVsdCB3aGljaCBpcyBzdXBwb3NlZCB0byBiZSBhIHN5bWxpbmsKK3RvIHRoZSB2ZW5kb3Igb2YgdGhlIGN1cnJlbnRseSBpbnN0YWxsZWQgb3BlcmF0aW5nIHN5c3RlbS4gUmV0dXJucyB1bmRlZgoraWYgdGhlcmUncyBubyBmaWxlIGZvciB0aGUgZ2l2ZW4gdmVuZG9yLgorCis9Y3V0CisKK3N1YiBnZXRfdmVuZG9yX2luZm8oOyQpIHsKKyAgICBteSAkdmVuZG9yID0gc2hpZnQgfHwgImRlZmF1bHQiOworICAgIG15ICRmaWxlID0gZ2V0X3ZlbmRvcl9maWxlKCR2ZW5kb3IpOworICAgIHJldHVybiB1bmRlZiB1bmxlc3MgJGZpbGU7CisgICAgbXkgJGZpZWxkcyA9IERwa2c6OkNvbnRyb2w6Okhhc2gtPm5ldygpOworICAgICRmaWVsZHMtPmxvYWQoJGZpbGUpIHx8IGVycm9yKF9nKCIlcyBpcyBlbXB0eSIpLCAkZmlsZSk7CisgICAgcmV0dXJuICRmaWVsZHM7Cit9CisKKz1pdGVtICRuYW1lID0gRHBrZzo6VmVuZG9yOjpnZXRfdmVuZG9yX2ZpbGUoJG5hbWUpCisKK0NoZWNrIGlmIHRoZXJlJ3MgYSBmaWxlIGZvciB0aGUgZ2l2ZW4gdmVuZG9yIGFuZCByZXR1cm5zIGl0cworbmFtZS4KKworPWN1dAorCitzdWIgZ2V0X3ZlbmRvcl9maWxlKDskKSB7CisgICAgbXkgJHZlbmRvciA9IHNoaWZ0IHx8ICJkZWZhdWx0IjsKKyAgICBteSAkZmlsZTsKKyAgICBteSBAdHJpZXMgPSAoJHZlbmRvciwgbGMoJHZlbmRvciksIHVjZmlyc3QoJHZlbmRvciksIHVjZmlyc3QobGMoJHZlbmRvcikpKTsKKyAgICBpZiAoJHZlbmRvciA9fiBzL1xzKy8tLykgeworICAgICAgICBwdXNoIEB0cmllcywgJHZlbmRvciwgbGMoJHZlbmRvciksIHVjZmlyc3QoJHZlbmRvciksIHVjZmlyc3QobGMoJHZlbmRvcikpOworICAgIH0KKyAgICBmb3JlYWNoIG15ICRuYW1lIChAdHJpZXMpIHsKKyAgICAgICAgJGZpbGUgPSAiJG9yaWdpbnMvJG5hbWUiIGlmIC1lICIkb3JpZ2lucy8kbmFtZSI7CisgICAgfQorICAgIHJldHVybiAkZmlsZTsKK30KKworPWl0ZW0gJG5hbWUgPSBEcGtnOjpWZW5kb3I6OmdldF9jdXJyZW50X3ZlbmRvcigpCisKK1JldHVybnMgdGhlIG5hbWUgb2YgdGhlIGN1cnJlbnQgdmVuZG9yLiBJZiBERUJfVkVORE9SIGlzIHNldCwgaXQgdXNlcwordGhhdCBmaXJzdCwgb3RoZXJ3aXNlIGl0IGZhbGxzIGJhY2sgdG8gcGFyc2luZyAvZXRjL2Rwa2cvb3JpZ2lucy9kZWZhdWx0LgorSWYgdGhhdCBmaWxlIGRvZXNuJ3QgZXhpc3QsIGl0IHJldHVybnMgdW5kZWYuCisKKz1jdXQKKworc3ViIGdldF9jdXJyZW50X3ZlbmRvcigpIHsKKyAgICBteSAkZjsKKyAgICBpZiAoJEVOVnsnREVCX1ZFTkRPUid9KSB7CisgICAgICAgICRmID0gZ2V0X3ZlbmRvcl9pbmZvKCRFTlZ7J0RFQl9WRU5ET1InfSk7CisgICAgICAgIHJldHVybiAkZi0+eydWZW5kb3InfSBpZiBkZWZpbmVkICRmOworICAgIH0KKyAgICAkZiA9IGdldF92ZW5kb3JfaW5mbygpOworICAgIHJldHVybiAkZi0+eydWZW5kb3InfSBpZiBkZWZpbmVkICRmOworICAgIHJldHVybiB1bmRlZjsKK30KKworPWl0ZW0gJG9iamVjdCA9IERwa2c6OlZlbmRvcjo6Z2V0X3ZlbmRvcl9vYmplY3QoJG5hbWUpCisKK1JldHVybiB0aGUgRHBrZzo6VmVuZG9yOjoqIG9iamVjdCBvZiB0aGUgY29ycmVzcG9uZGluZyB2ZW5kb3IuCitJZiAkbmFtZSBpcyBvbWl0dGVkLCByZXR1cm4gdGhlIG9iamVjdCBvZiB0aGUgY3VycmVudCB2ZW5kb3IuCitJZiBubyB2ZW5kb3IgY2FuIGJlIGlkZW50aWZpZWQsIHRoZW4gcmV0dXJuIHRoZSBEcGtnOjpWZW5kb3I6OkRlZmF1bHQKK29iamVjdC4KKworPWN1dAorCitteSAlT0JKRUNUX0NBQ0hFOworc3ViIGdldF92ZW5kb3Jfb2JqZWN0IHsKKyAgICBteSAkdmVuZG9yID0gc2hpZnQgfHwgZ2V0X2N1cnJlbnRfdmVuZG9yKCkgfHwgIkRlZmF1bHQiOworICAgIHJldHVybiAkT0JKRUNUX0NBQ0hFeyR2ZW5kb3J9IGlmIGV4aXN0cyAkT0JKRUNUX0NBQ0hFeyR2ZW5kb3J9OworCisgICAgbXkgKCRvYmosIEBuYW1lcyk7CisgICAgaWYgKCR2ZW5kb3IgbmUgIkRlZmF1bHQiKSB7CisgICAgICAgIHB1c2ggQG5hbWVzLCAkdmVuZG9yLCBsYygkdmVuZG9yKSwgdWNmaXJzdCgkdmVuZG9yKSwgdWNmaXJzdChsYygkdmVuZG9yKSk7CisgICAgfQorICAgIGZvcmVhY2ggbXkgJG5hbWUgKEBuYW1lcywgIkRlZmF1bHQiKSB7CisgICAgICAgIGV2YWwgcXF7CisgICAgICAgICAgICByZXF1aXJlIERwa2c6OlZlbmRvcjo6JG5hbWU7CisgICAgICAgICAgICBcJG9iaiA9IERwa2c6OlZlbmRvcjo6JG5hbWUtPm5ldygpOworICAgICAgICB9OworICAgICAgICBsYXN0IHVubGVzcyAkQDsKKyAgICB9CisgICAgJE9CSkVDVF9DQUNIRXskdmVuZG9yfSA9ICRvYmo7CisgICAgcmV0dXJuICRvYmo7Cit9CisKKz1pdGVtIERwa2c6OlZlbmRvcjo6cnVuX3ZlbmRvcl9ob29rKCRob29raWQsIEBwYXJhbXMpCisKK1J1biBhIGhvb2sgaW1wbGVtZW50ZWQgYnkgdGhlIGN1cnJlbnQgdmVuZG9yIG9iamVjdC4KKworPWN1dAorCitzdWIgcnVuX3ZlbmRvcl9ob29rIHsKKyAgICBteSAkdmVuZG9yX29iaiA9IGdldF92ZW5kb3Jfb2JqZWN0KCk7CisgICAgJHZlbmRvcl9vYmotPnJ1bl9ob29rKEBfKTsKK30KKworPWJhY2sKKworPWN1dAorCisxOwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL0Rwa2cvVmVuZG9yL0RlYmlhbi5wbSBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9EcGtnL1ZlbmRvci9EZWJpYW4ucG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTgyNGQwZQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9EcGtnL1ZlbmRvci9EZWJpYW4ucG0KQEAgLTAsMCArMSwxNTggQEAKKyMgQ29weXJpZ2h0IMKpIDIwMDktMjAxMSBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisjCisjIEhhcmRlbmluZyBidWlsZCBmbGFncyBoYW5kbGluZyBkZXJpdmVkIGZyb20gd29yayBvZjoKKyMgQ29weXJpZ2h0IMKpIDIwMDktMjAxMSBLZWVzIENvb2sgPGtlZXNAZGViaWFuLm9yZz4KKyMgQ29weXJpZ2h0IMKpIDIwMDctMjAwOCBDYW5vbmljYWwsIEx0ZC4KKyMKKyMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyMKKyMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisjIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisjIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyMKKyMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisKK3BhY2thZ2UgRHBrZzo6VmVuZG9yOjpEZWJpYW47CisKK3VzZSBzdHJpY3Q7Cit1c2Ugd2FybmluZ3M7CisKK291ciAkVkVSU0lPTiA9ICIwLjAxIjsKKwordXNlIGJhc2UgcXcoRHBrZzo6VmVuZG9yOjpEZWZhdWx0KTsKKwordXNlIERwa2c6OkdldHRleHQ7Cit1c2UgRHBrZzo6RXJyb3JIYW5kbGluZzsKK3VzZSBEcGtnOjpDb250cm9sOjpUeXBlczsKK3VzZSBEcGtnOjpWZW5kb3I6OlVidW50dTsKK3VzZSBEcGtnOjpCdWlsZE9wdGlvbnM7Cit1c2UgRHBrZzo6QXJjaCBxdyhnZXRfaG9zdF9hcmNoIGRlYmFyY2hfdG9fZGVidHJpcGxldCk7CisKKz1lbmNvZGluZyB1dGY4CisKKz1oZWFkMSBOQU1FCisKK0Rwa2c6OlZlbmRvcjo6RGViaWFuIC0gRGViaWFuIHZlbmRvciBvYmplY3QKKworPWhlYWQxIERFU0NSSVBUSU9OCisKK1RoaXMgdmVuZG9yIG9iamVjdCBjdXN0b21pemUgdGhlIGJlaGF2aW91ciBvZiBkcGtnIHNjcmlwdHMKK2ZvciBEZWJpYW4gc3BlY2lmaWMgYWN0aW9ucy4KKworPWN1dAorCitzdWIgcnVuX2hvb2sgeworICAgIG15ICgkc2VsZiwgJGhvb2ssIEBwYXJhbXMpID0gQF87CisKKyAgICBpZiAoJGhvb2sgZXEgImtleXJpbmdzIikgeworICAgICAgICByZXR1cm4gKCcvdXNyL3NoYXJlL2tleXJpbmdzL2RlYmlhbi1rZXlyaW5nLmdwZycsCisgICAgICAgICAgICAgICAgJy91c3Ivc2hhcmUva2V5cmluZ3MvZGViaWFuLW1haW50YWluZXJzLmdwZycpOworICAgIH0gZWxzaWYgKCRob29rIGVxICJyZWdpc3Rlci1jdXN0b20tZmllbGRzIikgeworICAgICAgICByZXR1cm4gKAorICAgICAgICAgICAgWyAicmVnaXN0ZXIiLCAiRG0tVXBsb2FkLUFsbG93ZWQiLAorICAgICAgICAgICAgICBDVFJMX0lORk9fU1JDIHwgQ1RSTF9JTkRFWF9TUkMgfCBDVFJMX1BLR19TUkMgXSwKKyAgICAgICAgICAgIFsgImluc2VydF9hZnRlciIsIENUUkxfSU5ERVhfU1JDLCAiVXBsb2FkZXJzIiwgIkRtLVVwbG9hZC1BbGxvd2VkIiBdLAorICAgICAgICAgICAgWyAiaW5zZXJ0X2FmdGVyIiwgQ1RSTF9QS0dfU1JDLCAiVXBsb2FkZXJzIiwgIkRtLVVwbG9hZC1BbGxvd2VkIiBdLAorICAgICAgICApOworICAgIH0gZWxzaWYgKCRob29rIGVxICJleHRlbmQtcGF0Y2gtaGVhZGVyIikgeworICAgICAgICBteSAoJHRleHRyZWYsICRjaF9pbmZvKSA9IEBwYXJhbXM7CisJaWYgKCRjaF9pbmZvLT57J0Nsb3Nlcyd9KSB7CisJICAgIGZvcmVhY2ggbXkgJGJ1ZyAoc3BsaXQoL1xzKy8sICRjaF9pbmZvLT57J0Nsb3Nlcyd9KSkgeworCQkkJHRleHRyZWYgLj0gIkJ1Zy1EZWJpYW46IGh0dHA6Ly9idWdzLmRlYmlhbi5vcmcvJGJ1Z1xuIjsKKwkgICAgfQorCX0KKworCW15ICRiID0gRHBrZzo6VmVuZG9yOjpVYnVudHU6OmZpbmRfbGF1bmNocGFkX2Nsb3NlcygkY2hfaW5mby0+eydDaGFuZ2VzJ30pOworCWZvcmVhY2ggbXkgJGJ1ZyAoQCRiKSB7CisJICAgICQkdGV4dHJlZiAuPSAiQnVnLVVidW50dTogaHR0cHM6Ly9idWdzLmxhdW5jaHBhZC5uZXQvYnVncy8kYnVnXG4iOworCX0KKyAgICB9IGVsc2lmICgkaG9vayBlcSAidXBkYXRlLWJ1aWxkZmxhZ3MiKSB7CisJJHNlbGYtPmFkZF9oYXJkZW5pbmdfZmxhZ3MoQHBhcmFtcyk7CisgICAgfSBlbHNlIHsKKyAgICAgICAgcmV0dXJuICRzZWxmLT5TVVBFUjo6cnVuX2hvb2soJGhvb2ssIEBwYXJhbXMpOworICAgIH0KK30KKworc3ViIGFkZF9oYXJkZW5pbmdfZmxhZ3MgeworICAgIG15ICgkc2VsZiwgJGZsYWdzKSA9IEBfOworICAgIG15ICRhcmNoID0gZ2V0X2hvc3RfYXJjaCgpOworICAgIG15ICgkYWJpLCAkb3MsICRjcHUpID0gZGViYXJjaF90b19kZWJ0cmlwbGV0KCRhcmNoKTsKKworICAgICMgRGVjaWRlIHdoYXQncyBlbmFibGVkCisgICAgbXkgJXVzZV9mZWF0dXJlID0gKAorCSJwaWUiID0+IDAsCisJInN0YWNrcHJvdGVjdG9yIiA9PiAxLAorCSJmb3J0aWZ5IiA9PiAxLAorCSJmb3JtYXQiID0+IDEsCisJInJlbHJvIiA9PiAxLAorCSJiaW5kbm93IiA9PiAwCisgICAgKTsKKyAgICBteSAkb3B0cyA9IERwa2c6OkJ1aWxkT3B0aW9ucy0+bmV3KGVudnZhciA9PiAiREVCX0JVSUxEX01BSU5UX09QVElPTlMiKTsKKyAgICBmb3JlYWNoIG15ICRmZWF0dXJlIChzcGxpdCgiLCIsICRvcHRzLT5nZXQoImhhcmRlbmluZyIpIC8vICIiKSkgeworCSRmZWF0dXJlID0gbGMoJGZlYXR1cmUpOworCWlmICgkZmVhdHVyZSA9fiBzL14oWystXSkvLykgeworCSAgICBteSAkdmFsdWUgPSAoJDEgZXEgIisiKSA/IDEgOiAwOworCSAgICBpZiAoJGZlYXR1cmUgZXEgImFsbCIpIHsKKwkJJHVzZV9mZWF0dXJleyRffSA9ICR2YWx1ZSBmb3JlYWNoIGtleXMgJXVzZV9mZWF0dXJlOworCSAgICB9IGVsc2UgeworCQlpZiAoZXhpc3RzICR1c2VfZmVhdHVyZXskZmVhdHVyZX0pIHsKKwkJICAgICR1c2VfZmVhdHVyZXskZmVhdHVyZX0gPSAkdmFsdWU7CisJCX0gZWxzZSB7CisJCSAgICB3YXJuaW5nKF9nKCJ1bmtub3duIGhhcmRlbmluZyBmZWF0dXJlOiAlcyIpLCAkZmVhdHVyZSk7CisJCX0KKwkgICAgfQorCX0gZWxzZSB7CisJICAgIHdhcm5pbmcoX2coImluY29ycmVjdCB2YWx1ZSBpbiBoYXJkZW5pbmcgb3B0aW9uIG9mICIgLgorCSAgICAgICAgICAgICAgICJERUJfQlVJTERfTUFJTlRfT1BUSU9OUzogJXMiKSwgJGZlYXR1cmUpOworCX0KKyAgICB9CisKKyAgICAjIFBJRQorICAgIGlmICgkdXNlX2ZlYXR1cmV7InBpZSJ9IGFuZAorCSRvcyA9fiAvXihsaW51eHxrbmV0YnNkfGh1cmQpJC8gYW5kCisJJGNwdSAhfiAvXihocHBhfG02OGt8bWlwc3xtaXBzZWx8YXZyMzIpJC8pIHsKKwkjIE9ubHkgb24gbGludXgva25ldGJzZC9odXJkIChzZWUgIzQzMDQ1NSBhbmQgIzU4NjIxNSkKKwkjIERpc2FibGVkIG9uIGhwcGEsIG02OGsgKCM0NTExOTIpLCBtaXBzL21pcHNlbCAoIzUzMjgyMSksIGF2cjMyCisJIyAoIzU3NDcxNikKKwkkZmxhZ3MtPmFwcGVuZCgiQ0ZMQUdTIiwgIi1mUElFIik7CisJJGZsYWdzLT5hcHBlbmQoIkNYWEZMQUdTIiwgIi1mUElFIik7CisJJGZsYWdzLT5hcHBlbmQoIkxERkxBR1MiLCAiLWZQSUUgLXBpZSIpOworICAgIH0KKyAgICAjIFN0YWNrIHByb3RlY3RvcgorICAgIGlmICgkdXNlX2ZlYXR1cmV7InN0YWNrcHJvdGVjdG9yIn0gYW5kCisJJGNwdSAhfiAvXihpYTY0fGFscGhhfG1pcHN8bWlwc2VsfGhwcGEpJC8gYW5kICRhcmNoIG5lICJhcm0iKSB7CisJIyBTdGFjayBwcm90ZWN0b3IgZGlzYWJsZWQgb24gaWE2NCwgYWxwaGEsIG1pcHMsIG1pcHNlbCwgaHBwYS4KKwkjICAgIndhcm5pbmc6IC1mc3RhY2stcHJvdGVjdG9yIG5vdCBzdXBwb3J0ZWQgZm9yIHRoaXMgdGFyZ2V0IgorCSMgU3RhY2sgcHJvdGVjdG9yIGRpc2FibGVkIG9uIGFybSAob2sgb24gYXJtZWwpLgorCSMgICBjb21waWxlciBzdXBwb3J0cyBpdCBpbmNvcnJlY3RseSAobGVhZHMgdG8gU0VHVikKKwkkZmxhZ3MtPmFwcGVuZCgiQ0ZMQUdTIiwgIi1mc3RhY2stcHJvdGVjdG9yIC0tcGFyYW09c3NwLWJ1ZmZlci1zaXplPTQiKTsKKwkkZmxhZ3MtPmFwcGVuZCgiQ1hYRkxBR1MiLCAiLWZzdGFjay1wcm90ZWN0b3IgLS1wYXJhbT1zc3AtYnVmZmVyLXNpemU9NCIpOworICAgIH0KKyAgICAjIEZvcnRpZnkKKyAgICBpZiAoJHVzZV9mZWF0dXJleyJmb3J0aWZ5In0pIHsKKwkkZmxhZ3MtPmFwcGVuZCgiQ1BQRkxBR1MiLCAiLURfRk9SVElGWV9TT1VSQ0U9MiIpOworICAgIH0KKyAgICAjIEZvcm1hdAorICAgIGlmICgkdXNlX2ZlYXR1cmV7ImZvcm1hdCJ9KSB7CisJJGZsYWdzLT5hcHBlbmQoIkNGTEFHUyIsICItV2Zvcm1hdCAtV2Zvcm1hdC1zZWN1cml0eSAtV2Vycm9yPWZvcm1hdC1zZWN1cml0eSIpOworCSRmbGFncy0+YXBwZW5kKCJDWFhGTEFHUyIsICItV2Zvcm1hdCAtV2Zvcm1hdC1zZWN1cml0eSAtV2Vycm9yPWZvcm1hdC1zZWN1cml0eSIpOworICAgIH0KKyAgICAjIFJlbHJvCisgICAgaWYgKCR1c2VfZmVhdHVyZXsicmVscm8ifSBhbmQgJGNwdSAhfiAvXihpYTY0fGhwcGF8YXZyMzIpJC8pIHsKKwkkZmxhZ3MtPmFwcGVuZCgiTERGTEFHUyIsICItV2wsLXoscmVscm8iKTsKKyAgICB9IGVsc2UgeworCSMgRGlzYWJsZSBmdWxsIHJlbHJvIGlmIHJlbHJvIGlzIG5vdCBlbmFibGVkLgorCSR1c2VfZmVhdHVyZXsiYmluZG5vdyJ9ID0gMDsKKyAgICB9CisgICAgIyBCaW5kbm93CisgICAgaWYgKCR1c2VfZmVhdHVyZXsiYmluZG5vdyJ9KSB7CisJJGZsYWdzLT5hcHBlbmQoIkxERkxBR1MiLCAiLVdsLC16LG5vdyIpOworICAgIH0KK30KKworMTsKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9EcGtnL1ZlbmRvci9EZWZhdWx0LnBtIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL0Rwa2cvVmVuZG9yL0RlZmF1bHQucG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZWUyZDQ5NQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9EcGtnL1ZlbmRvci9EZWZhdWx0LnBtCkBAIC0wLDAgKzEsMTM3IEBACisjIENvcHlyaWdodCDCqSAyMDA5IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KKyMKKyMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyMKKyMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisjIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisjIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyMKKyMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisKK3BhY2thZ2UgRHBrZzo6VmVuZG9yOjpEZWZhdWx0OworCit1c2Ugc3RyaWN0OwordXNlIHdhcm5pbmdzOworCitvdXIgJFZFUlNJT04gPSAiMC4wMSI7CisKKyMgSWYgeW91IHVzZSB0aGlzIGZpbGUgYXMgdGVtcGxhdGUgdG8gY3JlYXRlIGEgbmV3IHZlbmRvciBvYmplY3QsIHBsZWFzZQorIyB1bmNvbW1lbnQgdGhlIGZvbGxvd2luZyBsaW5lcworI3VzZSBiYXNlIHF3KERwa2c6OlZlbmRvcjo6RGVmYXVsdCk7CisKKz1lbmNvZGluZyB1dGY4CisKKz1oZWFkMSBOQU1FCisKK0Rwa2c6OlZlbmRvcjo6RGVmYXVsdCAtIGRlZmF1bHQgdmVuZG9yIG9iamVjdAorCis9aGVhZDEgREVTQ1JJUFRJT04KKworQSB2ZW5kb3Igb2JqZWN0IGlzIHVzZWQgdG8gcHJvdmlkZSB2ZW5kb3Igc3BlY2lmaWMgYmVoYXZpb3VyCitpbiB2YXJpb3VzIHBsYWNlcy4gVGhpcyBpcyB0aGUgZGVmYXVsdCBvYmplY3QgdXNlZCBpbiBjYXNlCit0aGVyZSdzIG5vbmUgZm9yIHRoZSBjdXJyZW50IHZlbmRvciBvciBpbiBjYXNlIHRoZSB2ZW5kb3IgY291bGQKK25vdCBiZSBpZGVudGlmaWVkIChzZWUgRHBrZzo6VmVuZG9yIGRvY3VtZW50YXRpb24pLgorCitJdCBwcm92aWRlcyBzb21lIGhvb2tzIHRoYXQgYXJlIGNhbGxlZCBieSB2YXJpb3VzIGRwa2ctKiB0b29scy4KK0lmIHlvdSBuZWVkIGEgbmV3IGhvb2ssIHBsZWFzZSBmaWxlIGEgYnVnIGFnYWluc3QgZHBrZy1kZXYgYW5kIGV4cGxhaW4KK3lvdXIgbmVlZC4gTm90ZSB0aGF0IHRoZSBob29rIEFQSSBoYXMgbm8gZ3VhcmFudHkgdG8gYmUgc3RhYmxlIG92ZXIgYW4KK2V4dGVuZGVkIHBlcmlvZC4gSWYgeW91IHJ1biBhbiBpbXBvcnRhbnQgZGlzdHJpYnV0aW9uIHRoYXQgbWFrZXMgdXNlCitvZiB2ZW5kb3IgaG9va3MsIHlvdSdkIGJldHRlciBzdWJtaXQgdGhlbSBmb3IgaW50ZWdyYXRpb24gc28gdGhhdAord2UgYXZvaWQgYnJlYWtpbmcgeW91ciBjb2RlLgorCis9aGVhZDEgRlVOQ1RJT05TCisKKz1vdmVyIDQKKworPWl0ZW0gJHZlbmRvcl9vYmogPSBEcGtnOjpWZW5kb3I6OkRlZmF1bHQtPm5ldygpCisKK0NyZWF0ZXMgdGhlIGRlZmF1bHQgdmVuZG9yIG9iamVjdC4gQ2FuIGJlIGluaGVyaXRlZCBieSBhbGwgdmVuZG9yIG9iamVjdHMKK2lmIHRoZXkgZG9uJ3QgbmVlZCBhbnkgc3BlY2lmaWMgaW5pdGlhbGl6YXRpb24gYXQgb2JqZWN0IGNyZWF0aW9uIHRpbWUuCisKKz1jdXQKKworc3ViIG5ldyB7CisgICAgbXkgKCR0aGlzKSA9IEBfOworICAgIG15ICRjbGFzcyA9IHJlZigkdGhpcykgfHwgJHRoaXM7CisgICAgbXkgJHNlbGYgPSB7fTsKKyAgICBibGVzcyAkc2VsZiwgJGNsYXNzOworICAgIHJldHVybiAkc2VsZjsKK30KKworPWl0ZW0gJHZlbmRvcl9vYmotPnJ1bl9ob29rKCRpZCwgQHBhcmFtcykKKworUnVuIHRoZSBjb3JyZXNwb25kaW5nIGhvb2suIFRoZSBwYXJhbWV0ZXJzIGFyZSBob29rLXNwZWNpZmljLiBUaGUKK3N1cHBvcnRlZCBob29rcyBhcmU6CisKKz1vdmVyIDgKKworPWl0ZW0gYmVmb3JlLXNvdXJjZS1idWlsZCAoJHNyY3BrZykKKworVGhlIGZpcnN0IHBhcmFtZXRlciBpcyBhIERwa2c6OlNvdXJjZTo6UGFja2FnZSBvYmplY3QuIFRoZSBob29rIGlzIGNhbGxlZAoranVzdCBiZWZvcmUgdGhlIGV4ZWN1dGlvbiBvZiAkc3JjcGtnLT5idWlsZCgpLgorCis9aXRlbSBrZXlyaW5ncyAoKQorCitUaGUgaG9vayBpcyBjYWxsZWQgd2hlbiBkcGtnLXNvdXJjZSBpcyBjaGVja2luZyBhIHNpZ25hdHVyZSBvbiBhIHNvdXJjZQorcGFja2FnZS4gSXQgdGFrZXMgbm8gcGFyYW1ldGVycywgYnV0IHJldHVybnMgYSAocG9zc2libHkgZW1wdHkpIGxpc3Qgb2YKK3ZlbmRvci1zcGVjaWZpYyBrZXlyaW5ncy4KKworPWl0ZW0gcmVnaXN0ZXItY3VzdG9tLWZpZWxkcyAoKQorCitUaGUgaG9vayBpcyBjYWxsZWQgaW4gRHBrZzo6Q29udHJvbDo6RmllbGRzIHRvIHJlZ2lzdGVyIGN1c3RvbSBmaWVsZHMuCitZb3Ugc2hvdWxkIHJldHVybiBhIGxpc3Qgb2YgYXJyYXlzLiBFYWNoIGFycmF5IGlzIGFuIG9wZXJhdGlvbiB0byBwZXJmb3JtLgorVGhlIGZpcnN0IGl0ZW0gaXMgdGhlIG5hbWUgb2YgdGhlIG9wZXJhdGlvbiBhbmQgY29ycmVzcG9uZHMKK3RvIGEgZmllbGRfKiBmdW5jdGlvbiBwcm92aWRlZCBieSBEcGtnOjpDb250cm9sOjpGaWVsZHMuIFRoZSByZW1haW5pbmcKK2ZpZWxkcyBhcmUgdGhlIHBhcmFtZXRlcnMgdGhhdCBhcmUgcGFzc2VkIHVuY2hhbmdlZCB0byB0aGUgY29ycmVzcG9uZGluZworZnVuY3Rpb24uCisKK0tub3duIG9wZXJhdGlvbnMgYXJlICJyZWdpc3RlciIsICJpbnNlcnRfYWZ0ZXIiIGFuZCAiaW5zZXJ0X2JlZm9yZSIuCisKKz1pdGVtIHBvc3QtcHJvY2Vzcy1jaGFuZ2Vsb2ctZW50cnkgKCRmaWVsZHMpCisKK1RoZSBob29rIGlzIGNhbGxlZCBpbiBEcGtnOjpDaGFuZ2Vsb2cgdG8gcG9zdC1wcm9jZXNzIGEKK0Rwa2c6OkNoYW5nZWxvZzo6RW50cnkgYWZ0ZXIgaXQgaGFzIGJlZW4gY3JlYXRlZCBhbmQgZmlsbGVkIHdpdGggdGhlCithcHByb3ByaWF0ZSB2YWx1ZXMuCisKKz1pdGVtIHVwZGF0ZS1idWlsZGZsYWdzICgkZmxhZ3MpCisKK1RoZSBob29rIGlzIGNhbGxlZCBpbiBEcGtnOjpCdWlsZEZsYWdzIHRvIGFsbG93IHRoZSB2ZW5kb3IgdG8gb3ZlcnJpZGUKK3RoZSBkZWZhdWx0IHZhbHVlcyBzZXQgZm9yIHRoZSB2YXJpb3VzIGJ1aWxkIGZsYWdzLiAkZmxhZ3MgaXMgYQorRHBrZzo6QnVpbGRGbGFncyBvYmplY3QuCisKKz1iYWNrCisKKz1jdXQKKworc3ViIHJ1bl9ob29rIHsKKyAgICBteSAoJHNlbGYsICRob29rLCBAcGFyYW1zKSA9IEBfOworCisgICAgaWYgKCRob29rIGVxICJiZWZvcmUtc291cmNlLWJ1aWxkIikgeworICAgICAgICBteSAkc3JjcGtnID0gc2hpZnQgQHBhcmFtczsKKyAgICB9IGVsc2lmICgkaG9vayBlcSAia2V5cmluZ3MiKSB7CisgICAgICAgIHJldHVybiAoKTsKKyAgICB9IGVsc2lmICgkaG9vayBlcSAicmVnaXN0ZXItY3VzdG9tLWZpZWxkcyIpIHsKKyAgICAgICAgcmV0dXJuICgpOworICAgIH0gZWxzaWYgKCRob29rIGVxICJwb3N0LXByb2Nlc3MtY2hhbmdlbG9nLWVudHJ5IikgeworICAgICAgICBteSAkZmllbGRzID0gc2hpZnQgQHBhcmFtczsKKyAgICB9IGVsc2lmICgkaG9vayBlcSAiZXh0ZW5kLXBhdGNoLWhlYWRlciIpIHsKKwlteSAoJHRleHRyZWYsICRjaF9pbmZvKSA9IEBwYXJhbXM7CisgICAgfSBlbHNpZiAoJGhvb2sgZXEgInVwZGF0ZS1idWlsZGZsYWdzIikgeworCW15ICRmbGFncyA9IHNoaWZ0IEBwYXJhbXM7CisgICAgfQorCisgICAgIyBEZWZhdWx0IHJldHVybiB2YWx1ZSBmb3IgdW5rbm93bi91bmltcGxlbWVudGVkIGhvb2tzCisgICAgcmV0dXJuICgpIGlmIHdhbnRhcnJheTsKKyAgICByZXR1cm4gdW5kZWY7Cit9CisKKz1iYWNrCisKKz1jdXQKKworMTsKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9EcGtnL1ZlbmRvci9VYnVudHUucG0gYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvRHBrZy9WZW5kb3IvVWJ1bnR1LnBtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmYzZWFkMGEKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvRHBrZy9WZW5kb3IvVWJ1bnR1LnBtCkBAIC0wLDAgKzEsMTgzIEBACisjIENvcHlyaWdodCDCqSAyMDA4IElhbiBKYWNrc29uIDxpYW5AZGF2ZW5hbnQuZ3JlZW5lbmQub3JnLnVrPgorIyBDb3B5cmlnaHQgwqkgMjAwOCBDYW5vbmljYWwsIEx0ZC4KKyMgICB3cml0dGVuIGJ5IENvbGluIFdhdHNvbiA8Y2p3YXRzb25AdWJ1bnR1LmNvbT4KKyMgQ29weXJpZ2h0IMKpIDIwMDggSmFtZXMgV2VzdGJ5IDxqdytkZWJpYW5AamFtZXN3ZXN0YnkubmV0PgorIyBDb3B5cmlnaHQgwqkgMjAwOSBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisjCisjIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisjIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisjIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisjIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisjCisjIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisjIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisjCisjIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisjIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorCitwYWNrYWdlIERwa2c6OlZlbmRvcjo6VWJ1bnR1OworCit1c2Ugc3RyaWN0OwordXNlIHdhcm5pbmdzOworCitvdXIgJFZFUlNJT04gPSAiMC4wMSI7CisKK3VzZSBEcGtnOjpFcnJvckhhbmRsaW5nOwordXNlIERwa2c6OkdldHRleHQ7Cit1c2UgRHBrZzo6Q29udHJvbDo6VHlwZXM7Cit1c2UgRHBrZzo6QnVpbGRPcHRpb25zOwordXNlIERwa2c6OkFyY2ggcXcoZGViYXJjaF9lcSBnZXRfaG9zdF9hcmNoKTsKKwordXNlIGJhc2UgJ0Rwa2c6OlZlbmRvcjo6RGViaWFuJzsKKworPWVuY29kaW5nIHV0ZjgKKworPWhlYWQxIE5BTUUKKworRHBrZzo6VmVuZG9yOjpVYnVudHUgLSBVYnVudHUgdmVuZG9yIG9iamVjdAorCis9aGVhZDEgREVTQ1JJUFRJT04KKworVGhpcyB2ZW5kb3Igb2JqZWN0IGN1c3RvbWl6ZSB0aGUgYmVoYXZpb3VyIG9mIGRwa2ctc291cmNlCit0byBjaGVjayB0aGF0IE1haW50YWluZXJzIGhhdmUgYmVlbiBtb2RpZmllZCBpZiBuZWNlc3NhcnkuCisKKz1jdXQKKworc3ViIHJ1bl9ob29rIHsKKyAgICBteSAoJHNlbGYsICRob29rLCBAcGFyYW1zKSA9IEBfOworCisgICAgaWYgKCRob29rIGVxICJiZWZvcmUtc291cmNlLWJ1aWxkIikgeworICAgICAgICBteSAkc3JjID0gc2hpZnQgQHBhcmFtczsKKyAgICAgICAgbXkgJGZpZWxkcyA9ICRzcmMtPnsnZmllbGRzJ307CisKKyAgICAgICAgIyBjaGVjayB0aGF0IE1haW50YWluZXIvWFNCQy1PcmlnaW5hbC1NYWludGFpbmVyIGNvbXBseSB0bworICAgICAgICAjIGh0dHBzOi8vd2lraS51YnVudHUuY29tL0RlYmlhbk1haW50YWluZXJGaWVsZAorICAgICAgICBpZiAoZGVmaW5lZCgkZmllbGRzLT57J1ZlcnNpb24nfSkgYW5kIGRlZmluZWQoJGZpZWxkcy0+eydNYWludGFpbmVyJ30pIGFuZAorICAgICAgICAgICAkZmllbGRzLT57J1ZlcnNpb24nfSA9fiAvdWJ1bnR1LykgeworICAgICAgICAgICBpZiAoJGZpZWxkcy0+eydNYWludGFpbmVyJ30gIX4gL3VidW50dS9pKSB7CisgICAgICAgICAgICAgICBpZiAoZGVmaW5lZCAoJEVOVnsnREVCRU1BSUwnfSkgYW5kICRFTlZ7J0RFQkVNQUlMJ30gPX4gL1xAdWJ1bnR1XC5jb20vKSB7CisgICAgICAgICAgICAgICAgICAgZXJyb3IoX2coJ1ZlcnNpb24gbnVtYmVyIHN1Z2dlc3RzIFVidW50dSBjaGFuZ2VzLCBidXQgTWFpbnRhaW5lcjogZG9lcyBub3QgaGF2ZSBVYnVudHUgYWRkcmVzcycpKTsKKyAgICAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgICAgd2FybmluZyhfZygnVmVyc2lvbiBudW1iZXIgc3VnZ2VzdHMgVWJ1bnR1IGNoYW5nZXMsIGJ1dCBNYWludGFpbmVyOiBkb2VzIG5vdCBoYXZlIFVidW50dSBhZGRyZXNzJykpOworICAgICAgICAgICAgICAgfQorICAgICAgICAgICB9CisgICAgICAgICAgIHVubGVzcyAoJGZpZWxkcy0+eydPcmlnaW5hbC1NYWludGFpbmVyJ30pIHsKKyAgICAgICAgICAgICAgIHdhcm5pbmcoX2coJ1ZlcnNpb24gbnVtYmVyIHN1Z2dlc3RzIFVidW50dSBjaGFuZ2VzLCBidXQgdGhlcmUgaXMgbm8gWFNCQy1PcmlnaW5hbC1NYWludGFpbmVyIGZpZWxkJykpOworICAgICAgICAgICB9CisgICAgICAgIH0KKworICAgIH0gZWxzaWYgKCRob29rIGVxICJrZXlyaW5ncyIpIHsKKyAgICAgICAgbXkgQGtleXJpbmdzID0gJHNlbGYtPlNVUEVSOjpydW5faG9vaygkaG9vayk7CisKKyAgICAgICAgcHVzaChAa2V5cmluZ3MsICcvdXNyL3NoYXJlL2tleXJpbmdzL3VidW50dS1hcmNoaXZlLWtleXJpbmcuZ3BnJyk7CisgICAgICAgIHJldHVybiBAa2V5cmluZ3M7CisKKyAgICB9IGVsc2lmICgkaG9vayBlcSAicmVnaXN0ZXItY3VzdG9tLWZpZWxkcyIpIHsKKyAgICAgICAgbXkgQGZpZWxkX29wcyA9ICRzZWxmLT5TVVBFUjo6cnVuX2hvb2soJGhvb2spOworICAgICAgICBwdXNoIEBmaWVsZF9vcHMsCisgICAgICAgICAgICBbICJyZWdpc3RlciIsICJMYXVuY2hwYWQtQnVncy1GaXhlZCIsCisgICAgICAgICAgICAgIENUUkxfRklMRV9DSEFOR0VTIHwgQ1RSTF9DSEFOR0VMT0cgIF0sCisgICAgICAgICAgICBbICJpbnNlcnRfYWZ0ZXIiLCBDVFJMX0ZJTEVfQ0hBTkdFUywgIkNsb3NlcyIsICJMYXVuY2hwYWQtQnVncy1GaXhlZCIgXSwKKyAgICAgICAgICAgIFsgImluc2VydF9hZnRlciIsIENUUkxfQ0hBTkdFTE9HLCAiQ2xvc2VzIiwgIkxhdW5jaHBhZC1CdWdzLUZpeGVkIiBdOworICAgICAgICByZXR1cm4gQGZpZWxkX29wczsKKworICAgIH0gZWxzaWYgKCRob29rIGVxICJwb3N0LXByb2Nlc3MtY2hhbmdlbG9nLWVudHJ5IikgeworICAgICAgICBteSAkZmllbGRzID0gc2hpZnQgQHBhcmFtczsKKworICAgICAgICAjIEFkZCBMYXVuY2hwYWQtQnVncy1GaXhlZCBmaWVsZAorICAgICAgICBteSAkYnVncyA9IGZpbmRfbGF1bmNocGFkX2Nsb3NlcygkZmllbGRzLT57IkNoYW5nZXMifSB8fCAiIik7CisgICAgICAgIGlmIChzY2FsYXIoQCRidWdzKSkgeworICAgICAgICAgICAgJGZpZWxkcy0+eyJMYXVuY2hwYWQtQnVncy1GaXhlZCJ9ID0gam9pbigiICIsIEAkYnVncyk7CisgICAgICAgIH0KKworICAgIH0gZWxzaWYgKCRob29rIGVxICJ1cGRhdGUtYnVpbGRmbGFncyIpIHsKKwlteSAkZmxhZ3MgPSBzaGlmdCBAcGFyYW1zOworCisJaWYgKGRlYmFyY2hfZXEoZ2V0X2hvc3RfYXJjaCgpLCAncHBjNjQnKSkgeworCSAgICBmb3IgbXkgJGZsYWcgKHF3KENGTEFHUyBDWFhGTEFHUyBGRkxBR1MpKSB7CisJCSRmbGFncy0+c2V0KCRmbGFnLCAnLWcgLU8zJywgJ3ZlbmRvcicpOworCSAgICB9CisJfQorCSMgUGVyIGh0dHBzOi8vd2lraS51YnVudHUuY29tL0Rpc3RDb21waWxlckZsYWdzCisJJGZsYWdzLT5zZXQoJ0xERkxBR1MnLCAnLVdsLC1Cc3ltYm9saWMtZnVuY3Rpb25zJywgJ3ZlbmRvcicpOworCisJIyBSdW4gdGhlIERlYmlhbiBob29rIHRvIGFkZCBoYXJkZW5pbmcgZmxhZ3MKKwkkc2VsZi0+U1VQRVI6OnJ1bl9ob29rKCRob29rLCAkZmxhZ3MpOworCisJIyBBbGxvdyBjb250cm9sIG9mIGhhcmRlbmluZy13cmFwcGVyIHZpYSBkcGtnLWJ1aWxkcGFja2FnZSBERUJfQlVJTERfT1BUSU9OUworCW15ICRidWlsZF9vcHRzID0gRHBrZzo6QnVpbGRPcHRpb25zLT5uZXcoKTsKKwlteSAkaGFyZGVuaW5nOworCWlmICgkYnVpbGRfb3B0cy0+aGFzKCJoYXJkZW5pbmciKSkgeworCSAgICAkaGFyZGVuaW5nID0gJGJ1aWxkX29wdHMtPmdldCgiaGFyZGVuaW5nIik7CisJICAgICRoYXJkZW5pbmcgPSAxIHVubGVzcyBkZWZpbmVkICRoYXJkZW5pbmc7CisJfQorCWlmICgkYnVpbGRfb3B0cy0+aGFzKCJub2hhcmRlbmluZyIpKSB7CisJICAgICRoYXJkZW5pbmcgPSAwOworCX0KKwlpZiAoZGVmaW5lZCAkaGFyZGVuaW5nKSB7CisJICAgIG15ICRmbGFnID0gJ0RFQl9CVUlMRF9IQVJERU5JTkcnOworCSAgICBpZiAoJGhhcmRlbmluZyBuZSAiMCIpIHsKKwkJaWYgKCEgLXggJy91c3IvYmluL2hhcmRlbmVkLWNjJykgeworCQkgICAgc3lzZXJyKF9nKCInaGFyZGVuaW5nJyBmbGFnIGZvdW5kIGJ1dCAnaGFyZGVuaW5nLXdyYXBwZXInIG5vdCBpbnN0YWxsZWQiKSk7CisJCX0KKwkJaWYgKCRoYXJkZW5pbmcgbmUgIjEiKSB7CisJCSAgICBteSBAb3B0aW9ucyA9IHNwbGl0KC8sXHMqLywgJGhhcmRlbmluZyk7CisJCSAgICAkaGFyZGVuaW5nID0gMTsKKworCQkgICAgbXkgQGhhcmRvcHRzID0gKCdmb3JtYXQnLCAnZm9ydGlmeScsICdzdGFja3Byb3RlY3RvcicsCisJCQkJICAgICdwaWUnLCAncmVscm8nKTsKKwkJICAgIGZvcmVhY2ggbXkgJGl0ZW0gKEBoYXJkb3B0cykgeworCQkJbXkgJHVwaXRlbSA9IHVjKCRpdGVtKTsKKwkJCWZvcmVhY2ggbXkgJG9wdGlvbiAoQG9wdGlvbnMpIHsKKwkJCSAgICBpZiAoJG9wdGlvbiA9fiAvXihubyk/JGl0ZW0kLykgeworCQkJCSRmbGFncy0+c2V0KCRmbGFnLidfJy4kdXBpdGVtLCBub3QgZGVmaW5lZCAkMSBvciAkMSBlcSAiIiwgJ2VudicpOworCQkJICAgIH0KKwkJCX0KKwkJICAgIH0KKwkJfQorCSAgICB9CisJICAgIGlmIChkZWZpbmVkICRFTlZ7JGZsYWd9KSB7CisJCWluZm8oX2coIm92ZXJyaWRpbmcgJXMgaW4gZW52aXJvbm1lbnQ6ICVzIiksICRmbGFnLCAkaGFyZGVuaW5nKTsKKwkgICAgfQorCSAgICAkZmxhZ3MtPnNldCgkZmxhZywgJGhhcmRlbmluZywgJ2VudicpOworCX0KKworICAgIH0gZWxzZSB7CisgICAgICAgIHJldHVybiAkc2VsZi0+U1VQRVI6OnJ1bl9ob29rKCRob29rLCBAcGFyYW1zKTsKKyAgICB9CisKK30KKworPWhlYWQxIFBVQkxJQyBGVU5DVElPTlMKKworPW92ZXIKKworPWl0ZW0gJGJ1Z3MgPSBEcGtnOjpWZW5kb3I6OlVidW50dTo6ZmluZF9sYXVuY2hwYWRfY2xvc2VzKCRjaGFuZ2VzKQorCitUYWtlcyBvbmUgc3RyaW5nIGFzIGFyZ3VtZW50IGFuZCBmaW5kcyAiTFA6ICMxMjM0NTYsICM2NTQzMjEiIHN0YXRlbWVudHMsCit3aGljaCBhcmUgcmVmZXJlbmNlcyB0byBidWdzIG9uIExhdW5jaHBhZC4gUmV0dXJucyBhbGwgY2xvc2VkIGJ1ZworbnVtYmVycyBpbiBhbiBhcnJheSByZWZlcmVuY2UuCisKKz1jdXQKKworc3ViIGZpbmRfbGF1bmNocGFkX2Nsb3NlcyB7CisgICAgbXkgKCRjaGFuZ2VzKSA9IEBfOworICAgIG15ICVjbG9zZXM7CisKKyAgICB3aGlsZSAoJGNoYW5nZXMgJiYKKyAgICAgICAgICAoJGNoYW5nZXMgPX4gL2xwOlxzK1wjXGQrKD86LFxzKlwjXGQrKSovaWcpKSB7CisgICAgICAgICRjbG9zZXN7JF99ID0gMSBmb3JlYWNoKCQmID1+IC9cIz9ccz8oXGQrKS9nKTsKKyAgICB9CisKKyAgICBteSBAY2xvc2VzID0gc29ydCB7ICRhIDw9PiAkYiB9IGtleXMgJWNsb3NlczsKKworICAgIHJldHVybiBcQGNsb3NlczsKK30KKworPWJhY2sKKworPWN1dAorCisxOwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL0Rwa2cvVmVyc2lvbi5wbSBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9EcGtnL1ZlcnNpb24ucG0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOWYwZjNhMQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9EcGtnL1ZlcnNpb24ucG0KQEAgLTAsMCArMSw0MDUgQEAKKyMgQ29weXJpZ2h0IMKpIENvbGluIFdhdHNvbiA8Y2p3YXRzb25AZGViaWFuLm9yZz4KKyMgQ29weXJpZ2h0IMKpIElhbiBKYWNrc29uIDxpd2pAZGViaWFuLm9yZz4KKyMgQ29weXJpZ2h0IMKpIDIwMDcgRG9uIEFybXN0cm9uZyA8ZG9uQGRvbmFybXN0cm9uZy5jb20+LgorIyBDb3B5cmlnaHQgwqkgMjAwOSBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisjCisjIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisjIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisjIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisjIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisjCisjIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisjIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisjCisjIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisjIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorCitwYWNrYWdlIERwa2c6OlZlcnNpb247CisKK3VzZSBzdHJpY3Q7Cit1c2Ugd2FybmluZ3M7CisKK291ciAkVkVSU0lPTiA9ICIxLjAwIjsKKwordXNlIERwa2c6OkVycm9ySGFuZGxpbmc7Cit1c2UgRHBrZzo6R2V0dGV4dDsKKwordXNlIGJhc2UgcXcoRXhwb3J0ZXIpOworb3VyIEBFWFBPUlQgPSBxdyh2ZXJzaW9uX2NvbXBhcmUgdmVyc2lvbl9jb21wYXJlX3JlbGF0aW9uCisgICAgICAgICAgICAgICAgIHZlcnNpb25fbm9ybWFsaXplX3JlbGF0aW9uIHZlcnNpb25fY29tcGFyZV9zdHJpbmcKKyAgICAgICAgICAgICAgICAgdmVyc2lvbl9jb21wYXJlX3BhcnQgdmVyc2lvbl9zcGxpdF9kaWdpdHMgdmVyc2lvbl9jaGVjaworICAgICAgICAgICAgICAgICBSRUxfTFQgUkVMX0xFIFJFTF9FUSBSRUxfR0UgUkVMX0dUKTsKKwordXNlIGNvbnN0YW50IHsKKyAgICBSRUxfTFQgPT4gJzw8JywKKyAgICBSRUxfTEUgPT4gJzw9JywKKyAgICBSRUxfRVEgPT4gJz0nLAorICAgIFJFTF9HRSA9PiAnPj0nLAorICAgIFJFTF9HVCA9PiAnPj4nLAorfTsKKwordXNlIG92ZXJsb2FkCisgICAgJzw9PicgPT4gXCZjb21wYXJpc29uLAorICAgICdjbXAnID0+IFwmY29tcGFyaXNvbiwKKyAgICAnIiInICA9PiBcJmFzX3N0cmluZywKKyAgICAnYm9vbCcgPT4gc3ViIHsgcmV0dXJuICRfWzBdLT5hc19zdHJpbmcoKSBpZiAkX1swXS0+aXNfdmFsaWQoKTsgfSwKKyAgICAnZmFsbGJhY2snID0+IDE7CisKKz1lbmNvZGluZyB1dGY4CisKKz1oZWFkMSBOQU1FCisKK0Rwa2c6OlZlcnNpb24gLSBoYW5kbGluZyBhbmQgY29tcGFyaW5nIGRwa2ctc3R5bGUgdmVyc2lvbiBudW1iZXJzCisKKz1oZWFkMSBERVNDUklQVElPTgorCitUaGUgRHBrZzo6VmVyc2lvbiBtb2R1bGUgcHJvdmlkZXMgcHVyZS1QZXJsIHJvdXRpbmVzIHRvIGNvbXBhcmUKK2Rwa2ctc3R5bGUgdmVyc2lvbiBudW1iZXJzIChhcyB1c2VkIGluIERlYmlhbiBwYWNrYWdlcykgYW5kIGFsc28KK2FuIG9iamVjdCBvcmllbnRlZCBpbnRlcmZhY2Ugb3ZlcnJpZGluZyBwZXJsIG9wZXJhdG9ycwordG8gZG8gdGhlIHJpZ2h0IHRoaW5nIHdoZW4geW91IGNvbXBhcmUgRHBrZzo6VmVyc2lvbiBvYmplY3QgYmV0d2VlbgordGhlbS4KKworPWhlYWQxIE9CSkVDVCBJTlRFUkZBQ0UKKworPW92ZXIgNAorCis9aXRlbSBteSAkdiA9IERwa2c6OlZlcnNpb24tPm5ldygkdmVyc2lvbiwgJW9wdHMpCisKK0NyZWF0ZSBhIG5ldyBEcGtnOjpWZXJzaW9uIG9iamVjdCBjb3JyZXNwb25kaW5nIHRvIHRoZSB2ZXJzaW9uIGluZGljYXRlZCBpbgordGhlIHN0cmluZyAoc2NhbGFyKSAkdmVyc2lvbi4gQnkgZGVmYXVsdCBpdCB3aWxsIGFjY2VwdHMgYW55IHN0cmluZworYW5kIGNvbnNpZGVyIGl0IGFzIGEgdmFsaWQgdmVyc2lvbi4gSWYgeW91IHBhc3MgdGhlIG9wdGlvbiAiY2hlY2sgPT4gMSIsCitpdCB3aWxsIHJldHVybiB1bmRlZiBpZiB0aGUgdmVyc2lvbiBpcyBpbnZhbGlkIChzZWUgdmVyc2lvbl9jaGVjayBmb3IKK2RldGFpbHMpLgorCitZb3UgY2FuIGFsd2F5cyBjYWxsICR2LT5pc192YWxpZCgpIGxhdGVyIG9uIHRvIHZlcmlmeSB0aGF0IHRoZSB2ZXJzaW9uIGlzCit2YWxpZC4KKworPWN1dAorCitzdWIgbmV3IHsKKyAgICBteSAoJHRoaXMsICR2ZXIsICVvcHRzKSA9IEBfOworICAgIG15ICRjbGFzcyA9IHJlZigkdGhpcykgfHwgJHRoaXM7CisgICAgJHZlciA9ICIkdmVyIiBpZiByZWYoJHZlcik7ICMgVHJ5IHRvIHN0cmluZ2lmeSBvYmplY3RzCisKKyAgICBpZiAoJG9wdHN7J2NoZWNrJ30pIHsKKwlyZXR1cm4gdW5kZWYgdW5sZXNzIHZlcnNpb25fY2hlY2soJHZlcik7CisgICAgfQorCisgICAgbXkgJHNlbGYgPSB7fTsKKyAgICBpZiAoJHZlciA9fiAvXihbXjpdKik6KC4rKSQvKSB7CisJJHNlbGYtPnsnZXBvY2gnfSA9ICQxOworCSR2ZXIgPSAkMjsKKyAgICB9IGVsc2UgeworCSRzZWxmLT57J2Vwb2NoJ30gPSAwOworCSRzZWxmLT57J25vX2Vwb2NoJ30gPSAxOworICAgIH0KKyAgICBpZiAoJHZlciA9fiAvKC4qKS0oLiopJC8pIHsKKwkkc2VsZi0+eyd2ZXJzaW9uJ30gPSAkMTsKKwkkc2VsZi0+eydyZXZpc2lvbid9ID0gJDI7CisgICAgfSBlbHNlIHsKKwkkc2VsZi0+eyd2ZXJzaW9uJ30gPSAkdmVyOworCSRzZWxmLT57J3JldmlzaW9uJ30gPSAwOworCSRzZWxmLT57J25vX3JldmlzaW9uJ30gPSAxOworICAgIH0KKworICAgIHJldHVybiBibGVzcyAkc2VsZiwgJGNsYXNzOworfQorCis9aXRlbSBib29sZWFuIGV2YWx1YXRpb24KKworV2hlbiB0aGUgRHBrZzo6VmVyc2lvbiBvYmplY3QgaXMgdXNlZCBpbiBhIGJvb2xlYW4gZXZhbHVhdGlvbiAoZm9yIGV4YW1wbGUKK2luICJpZiAoJHYpIiBvciAiJHYgfHwgJ2RlZmF1bHQnIikgaXQgcmV0dXJucyBpdHMgc3RyaW5nIHJlcHJlc2VudGF0aW9uCitpZiB0aGUgdmVyc2lvbiBzdG9yZWQgaXMgdmFsaWQgKCR2LT5pc192YWxpZCgpKSBhbmQgdW5kZWYgb3RoZXJ3aXNlLgorCis9aXRlbSAkdi0+aXNfdmFsaWQoKQorCitSZXR1cm5zIHRydWUgaWYgdGhlIHZlcnNpb24gaXMgdmFsaWQsIGZhbHNlIG90aGVyd2lzZS4KKworPWN1dAorCitzdWIgaXNfdmFsaWQgeworICAgIG15ICgkc2VsZikgPSBAXzsKKyAgICByZXR1cm4gc2NhbGFyIHZlcnNpb25fY2hlY2soJHNlbGYpOworfQorCis9aXRlbSAkdi0+ZXBvY2goKSwgJHYtPnZlcnNpb24oKSwgJHYtPnJldmlzaW9uKCkKKworUmV0dXJucyB0aGUgY29ycmVzcG9uZGluZyBwYXJ0IG9mIHRoZSBmdWxsIHZlcnNpb24gc3RyaW5nLgorCis9Y3V0CisKK3N1YiBlcG9jaCB7CisgICAgbXkgJHNlbGYgPSBzaGlmdDsKKyAgICByZXR1cm4gJHNlbGYtPnsnZXBvY2gnfTsKK30KKworc3ViIHZlcnNpb24geworICAgIG15ICRzZWxmID0gc2hpZnQ7CisgICAgcmV0dXJuICRzZWxmLT57J3ZlcnNpb24nfTsKK30KKworc3ViIHJldmlzaW9uIHsKKyAgICBteSAkc2VsZiA9IHNoaWZ0OworICAgIHJldHVybiAkc2VsZi0+eydyZXZpc2lvbid9OworfQorCis9aXRlbSAkdjEgPD0+ICR2MiwgJHYxIDwgJHYyLCAkdjEgPD0gJHYyLCAkdjEgPiAkdjIsICR2MSA+PSAkdjIKKworTnVtZXJpY2FsIGNvbXBhcmlzb24gb2YgdmFyaW91cyB2ZXJzaW9ucyBudW1iZXJzLiBPbmUgb2YgdGhlIHR3byBvcGVyYW5kcworbmVlZHMgdG8gYmUgYSBEcGtnOjpWZXJzaW9uLCB0aGUgb3RoZXIgb25lIGNhbiBiZSBhbnl0aGluZyBwcm92aWRlZCB0aGF0CitpdHMgc3RyaW5nIHJlcHJlc2VudGF0aW9uIGlzIGEgdmVyc2lvbiBudW1iZXIuCisKKz1jdXQKKworc3ViIGNvbXBhcmlzb24geworICAgIG15ICgkYSwgJGIsICRpbnZlcnRlZCkgPSBAXzsKKyAgICBpZiAobm90IHJlZigkYikgb3Igbm90ICRiLT5pc2EoIkRwa2c6OlZlcnNpb24iKSkgeworICAgICAgICAkYiA9IERwa2c6OlZlcnNpb24tPm5ldygkYik7CisgICAgfQorICAgICgkYSwgJGIpID0gKCRiLCAkYSkgaWYgJGludmVydGVkOworICAgIG15ICRyID0gdmVyc2lvbl9jb21wYXJlX3BhcnQoJGEtPmVwb2NoKCksICRiLT5lcG9jaCgpKTsKKyAgICByZXR1cm4gJHIgaWYgJHI7CisgICAgJHIgPSB2ZXJzaW9uX2NvbXBhcmVfcGFydCgkYS0+dmVyc2lvbigpLCAkYi0+dmVyc2lvbigpKTsKKyAgICByZXR1cm4gJHIgaWYgJHI7CisgICAgcmV0dXJuIHZlcnNpb25fY29tcGFyZV9wYXJ0KCRhLT5yZXZpc2lvbigpLCAkYi0+cmV2aXNpb24oKSk7Cit9CisKKz1pdGVtICIkdiIsICR2LT5hc19zdHJpbmcoKQorCitSZXR1cm5zIHRoZSBzdHJpbmcgcmVwcmVzZW50YXRpb24gb2YgdGhlIHZlcnNpb24gbnVtYmVyLgorCis9Y3V0CisKK3N1YiBhc19zdHJpbmcgeworICAgIG15ICgkc2VsZikgPSBAXzsKKyAgICBteSAkc3RyID0gIiI7CisgICAgJHN0ciAuPSAkc2VsZi0+e2Vwb2NofSAuICI6IiB1bmxlc3MgJHNlbGYtPntub19lcG9jaH07CisgICAgJHN0ciAuPSAkc2VsZi0+e3ZlcnNpb259OworICAgICRzdHIgLj0gIi0iIC4gJHNlbGYtPntyZXZpc2lvbn0gdW5sZXNzICRzZWxmLT57bm9fcmV2aXNpb259OworICAgIHJldHVybiAkc3RyOworfQorCis9YmFjaworCis9aGVhZDEgRlVOQ1RJT05TCisKK0FsbCB0aGUgZnVuY3Rpb25zIGFyZSBleHBvcnRlZCBieSBkZWZhdWx0LgorCis9b3ZlciA0CisKKz1pdGVtIHZlcnNpb25fY29tcGFyZSgkYSwgJGIpCisKK1JldHVybnMgLTEgaWYgJGEgaXMgZWFybGllciB0aGFuICRiLCAwIGlmIHRoZXkgYXJlIGVxdWFsIGFuZCAxIGlmICRhCitpcyBsYXRlciB0aGFuICRiLgorCitJZiAkYSBvciAkYiBhcmUgbm90IHZhbGlkIHZlcnNpb24gbnVtYmVycywgaXQgZGllcyB3aXRoIGFuIGVycm9yLgorCis9Y3V0CisKK3N1YiB2ZXJzaW9uX2NvbXBhcmUoJCQpIHsKKyAgICBteSAoJGEsICRiKSA9IEBfOworICAgIG15ICR2YSA9IERwa2c6OlZlcnNpb24tPm5ldygkYSwgY2hlY2sgPT4gMSk7CisgICAgZGVmaW5lZCgkdmEpIHx8IGVycm9yKF9nKCIlcyBpcyBub3QgYSB2YWxpZCB2ZXJzaW9uIiksICIkYSIpOworICAgIG15ICR2YiA9IERwa2c6OlZlcnNpb24tPm5ldygkYiwgY2hlY2sgPT4gMSk7CisgICAgZGVmaW5lZCgkdmIpIHx8IGVycm9yKF9nKCIlcyBpcyBub3QgYSB2YWxpZCB2ZXJzaW9uIiksICIkYiIpOworICAgIHJldHVybiAkdmEgPD0+ICR2YjsKK30KKworPWl0ZW0gdmVyc2lvbl9jb21wYXJlX3JlbGF0aW9uKCRhLCAkcmVsLCAkYikKKworUmV0dXJucyB0aGUgcmVzdWx0ICgwIG9yIDEpIG9mIHRoZSBnaXZlbiBjb21wYXJpc29uIG9wZXJhdGlvbi4gVGhpcworZnVuY3Rpb24gaXMgaW1wbGVtZW50ZWQgb24gdG9wIG9mIHZlcnNpb25fY29tcGFyZSgpLgorCitBbGxvd2VkIHZhbHVlcyBmb3IgJHJlbCBhcmUgdGhlIGV4cG9ydGVkIGNvbnN0YW50cyBSRUxfR1QsIFJFTF9HRSwKK1JFTF9FUSwgUkVMX0xFLCBSRUxfTFQuIFVzZSB2ZXJzaW9uX25vcm1hbGl6ZV9yZWxhdGlvbigpIGlmIHlvdQoraGF2ZSBhbiBpbnB1dCBzdHJpbmcgY29udGFpbmluZyB0aGUgb3BlcmF0b3IuCisKKz1jdXQKKworc3ViIHZlcnNpb25fY29tcGFyZV9yZWxhdGlvbigkJCQpIHsKKyAgICBteSAoJGEsICRvcCwgJGIpID0gQF87CisgICAgbXkgJHJlcyA9IHZlcnNpb25fY29tcGFyZSgkYSwgJGIpOworCisgICAgaWYgKCRvcCBlcSBSRUxfR1QpIHsKKwlyZXR1cm4gJHJlcyA+IDA7CisgICAgfSBlbHNpZiAoJG9wIGVxIFJFTF9HRSkgeworCXJldHVybiAkcmVzID49IDA7CisgICAgfSBlbHNpZiAoJG9wIGVxIFJFTF9FUSkgeworCXJldHVybiAkcmVzID09IDA7CisgICAgfSBlbHNpZiAoJG9wIGVxIFJFTF9MRSkgeworCXJldHVybiAkcmVzIDw9IDA7CisgICAgfSBlbHNpZiAoJG9wIGVxIFJFTF9MVCkgeworCXJldHVybiAkcmVzIDwgMDsKKyAgICB9IGVsc2UgeworCWludGVybmVycigidW5zdXBwb3J0ZWQgcmVsYXRpb24gZm9yIHZlcnNpb25fY29tcGFyZV9yZWxhdGlvbigpOiAnJG9wJyIpOworICAgIH0KK30KKworPWl0ZW0gbXkgJHJlbCA9IHZlcnNpb25fbm9ybWFsaXplX3JlbGF0aW9uKCRyZWxfc3RyaW5nKQorCitSZXR1cm5zIHRoZSBub3JtYWxpemVkIGNvbnN0YW50IG9mIHRoZSByZWxhdGlvbiAkcmVsIChhIHZhbHVlCithbW9uZyBSRUxfR1QsIFJFTF9HRSwgUkVMX0VRLCBSRUxfTEUgYW5kIFJFTF9MVCkuIFN1cHBvcnRlZAorcmVsYXRpb25zIG5hbWVzIGluIGlucHV0IGFyZTogImd0IiwgImdlIiwgImVxIiwgImxlIiwgImx0IiwgIj4+IiwgIj49IiwKKyI9IiwgIjw9IiwgIjw8Ii4gIj4iIGFuZCAiPCIgYXJlIGFsc28gc3VwcG9ydGVkIGJ1dCBzaG91bGQgbm90IGJlIHVzZWQgYXMKK3RoZXkgYXJlIG9ic29sZXRlIGFsaWFzZXMgb2YgIj49IiBhbmQgIjw9Ii4KKworPWN1dAorCitzdWIgdmVyc2lvbl9ub3JtYWxpemVfcmVsYXRpb24oJCkgeworICAgIG15ICRvcCA9IHNoaWZ0OworCisgICAgd2FybmluZygicmVsYXRpb24gJXMgaXMgZGVwcmVjYXRlZDogdXNlICVzIG9yICVzIiwKKyAgICAgICAgICAgICRvcCwgIiRvcCRvcCIsICIkb3A9IikgaWYgKCRvcCBlcSAnPicgb3IgJG9wIGVxICc8Jyk7CisKKyAgICBpZiAoJG9wIGVxICc+Picgb3IgJG9wIGVxICdndCcpIHsKKwlyZXR1cm4gUkVMX0dUOworICAgIH0gZWxzaWYgKCRvcCBlcSAnPj0nIG9yICRvcCBlcSAnZ2UnIG9yICRvcCBlcSAnPicpIHsKKwlyZXR1cm4gUkVMX0dFOworICAgIH0gZWxzaWYgKCRvcCBlcSAnPScgb3IgJG9wIGVxICdlcScpIHsKKwlyZXR1cm4gUkVMX0VROworICAgIH0gZWxzaWYgKCRvcCBlcSAnPD0nIG9yICRvcCBlcSAnbGUnIG9yICRvcCBlcSAnPCcpIHsKKwlyZXR1cm4gUkVMX0xFOworICAgIH0gZWxzaWYgKCRvcCBlcSAnPDwnIG9yICRvcCBlcSAnbHQnKSB7CisJcmV0dXJuIFJFTF9MVDsKKyAgICB9IGVsc2UgeworCWludGVybmVycigiYmFkIHJlbGF0aW9uICckb3AnIik7CisgICAgfQorfQorCis9aXRlbSB2ZXJzaW9uX2NvbXBhcmVfc3RyaW5nKCRhLCAkYikKKworU3RyaW5nIGNvbXBhcmlzb24gZnVuY3Rpb24gdXNlZCBmb3IgY29tcGFyaW5nIG5vbi1udW1lcmljYWwgcGFydHMgb2YgdmVyc2lvbgorbnVtYmVycy4gUmV0dXJucyAtMSBpZiAkYSBpcyBlYXJsaWVyIHRoYW4gJGIsIDAgaWYgdGhleSBhcmUgZXF1YWwgYW5kIDEgaWYgJGEKK2lzIGxhdGVyIHRoYW4gJGIuCisKK1RoZSAifiIgY2hhcmFjdGVyIGFsd2F5cyBzb3J0IGxvd2VyIHRoYW4gYW55dGhpbmcgZWxzZS4gRGlnaXRzIHNvcnQgbG93ZXIKK3RoYW4gbm9uLWRpZ2l0cy4gQW1vbmcgcmVtYWluaW5nIGNoYXJhY3RlcnMgYWxwaGFiZXRpYyBjaGFyYWN0ZXJzIChBLVphLXopCitzb3J0IGxvd2VyIHRoYW4gdGhlIG90aGVyIG9uZXMuIFdpdGhpbiBlYWNoIHJhbmdlLCB0aGUgQVNDSUkgZGVjaW1hbCB2YWx1ZQorb2YgdGhlIGNoYXJhY3RlciBpcyB1c2VkIHRvIHNvcnQgYmV0d2VlbiBjaGFyYWN0ZXJzLgorCis9Y3V0CisKK3N1YiB2ZXJzaW9uX2NvbXBhcmVfc3RyaW5nKCQkKSB7CisgICAgc3ViIG9yZGVyIHsKKyAgICAgICAgbXkgKCR4KSA9IEBfOworCWlmICgkeCBlcSAnficpIHsKKwkgICAgcmV0dXJuIC0xOworCX0gZWxzaWYgKCR4ID1+IC9eXGQkLykgeworCSAgICByZXR1cm4gJHggKiAxICsgMTsKKwl9IGVsc2lmICgkeCA9fiAvXltBLVphLXpdJC8pIHsKKwkgICAgcmV0dXJuIG9yZCgkeCk7CisJfSBlbHNlIHsKKwkgICAgcmV0dXJuIG9yZCgkeCkgKyAyNTY7CisJfQorICAgIH0KKyAgICBteSBAYSA9IG1hcChvcmRlcigkXyksIHNwbGl0KC8vLCBzaGlmdCkpOworICAgIG15IEBiID0gbWFwKG9yZGVyKCRfKSwgc3BsaXQoLy8sIHNoaWZ0KSk7CisgICAgd2hpbGUgKDEpIHsKKyAgICAgICAgbXkgKCRhLCAkYikgPSAoc2hpZnQgQGEsIHNoaWZ0IEBiKTsKKyAgICAgICAgcmV0dXJuIDAgaWYgbm90IGRlZmluZWQoJGEpIGFuZCBub3QgZGVmaW5lZCgkYik7CisgICAgICAgICRhIHx8PSAwOyAjIERlZmF1bHQgb3JkZXIgZm9yICJubyBjaGFyYWN0ZXIiCisgICAgICAgICRiIHx8PSAwOworICAgICAgICByZXR1cm4gMSBpZiAkYSA+ICRiOworICAgICAgICByZXR1cm4gLTEgaWYgJGEgPCAkYjsKKyAgICB9Cit9CisKKz1pdGVtIHZlcnNpb25fY29tcGFyZV9wYXJ0KCRhLCAkYikKKworQ29tcGFyZSB0d28gY29ycmVzcG9uZGluZyBzdWItcGFydHMgb2YgYSB2ZXJzaW9uIG51bWJlciAoZWl0aGVyIHVwc3RyZWFtCit2ZXJzaW9uIG9yIGRlYmlhbiByZXZpc2lvbikuCisKK0VhY2ggcGFyYW1ldGVyIGlzIHNwbGl0IGJ5IHZlcnNpb25fc3BsaXRfZGlnaXRzKCkgYW5kIHJlc3VsdGluZyBpdGVtcworYXJlIGNvbXBhcmVkIHRvZ2V0aGVyLmluIGRpZ2l0cyBhbmQgbm9uLWRpZ2l0cyBpdGVtcyB0aGF0IGFyZSBjb21wYXJlZAordG9nZXRoZXIuIEFzIHNvb24gYXMgYSBkaWZmZXJlbmNlIGhhcHBlbnMsIGl0IHJldHVybnMgLTEgaWYgJGEgaXMgZWFybGllcgordGhhbiAkYiwgMCBpZiB0aGV5IGFyZSBlcXVhbCBhbmQgMSBpZiAkYSBpcyBsYXRlciB0aGFuICRiLgorCis9Y3V0CisKK3N1YiB2ZXJzaW9uX2NvbXBhcmVfcGFydCgkJCkgeworICAgIG15IEBhID0gdmVyc2lvbl9zcGxpdF9kaWdpdHMoc2hpZnQpOworICAgIG15IEBiID0gdmVyc2lvbl9zcGxpdF9kaWdpdHMoc2hpZnQpOworICAgIHdoaWxlICgxKSB7CisgICAgICAgIG15ICgkYSwgJGIpID0gKHNoaWZ0IEBhLCBzaGlmdCBAYik7CisgICAgICAgIHJldHVybiAwIGlmIG5vdCBkZWZpbmVkKCRhKSBhbmQgbm90IGRlZmluZWQoJGIpOworICAgICAgICAkYSB8fD0gMDsgIyBEZWZhdWx0IHZhbHVlIGZvciBsYWNrIG9mIHZlcnNpb24KKyAgICAgICAgJGIgfHw9IDA7CisgICAgICAgIGlmICgkYSA9fiAvXlxkKyQvIGFuZCAkYiA9fiAvXlxkKyQvKSB7CisgICAgICAgICAgICAjIE51bWVyaWNhbCBjb21wYXJpc29uCisgICAgICAgICAgICBteSAkY21wID0gJGEgPD0+ICRiOworICAgICAgICAgICAgcmV0dXJuICRjbXAgaWYgJGNtcDsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICMgU3RyaW5nIGNvbXBhcmlzb24KKyAgICAgICAgICAgIG15ICRjbXAgPSB2ZXJzaW9uX2NvbXBhcmVfc3RyaW5nKCRhLCAkYik7CisgICAgICAgICAgICByZXR1cm4gJGNtcCBpZiAkY21wOworICAgICAgICB9CisgICAgfQorfQorCis9aXRlbSBteSBAaXRlbXMgPSB2ZXJzaW9uX3NwbGl0X2RpZ2l0cygkdmVyc2lvbikKKworU3BsaXRzIGEgc3RyaW5nIGluIGl0ZW1zIHRoYXQgYXJlIGVhY2ggZW50aXJlbHkgY29tcG9zZWQgZWl0aGVyCitvZiBkaWdpdHMgb3Igb2Ygbm9uLWRpZ2l0cy4gRm9yIGluc3RhbmNlIGZvciAiMS4wMjR+YmV0YTErc3ZuMjM0IiBpdCB3b3VsZAorcmV0dXJuICgiMSIsICIuIiwgIjAyNCIsICJ+YmV0YSIsICIxIiwgIitzdm4iLCAiMjM0IikuCisKKz1jdXQKKworc3ViIHZlcnNpb25fc3BsaXRfZGlnaXRzKCQpIHsKKyAgICByZXR1cm4gc3BsaXQoLyg/PD1cZCkoPz1cRCl8KD88PVxEKSg/PVxkKS8sICRfWzBdKTsKK30KKworPWl0ZW0gbXkgKCRvaywgJG1zZykgPSB2ZXJzaW9uX2NoZWNrKCR2ZXJzaW9uKQorCis9aXRlbSBteSAkb2sgPSB2ZXJzaW9uX2NoZWNrKCR2ZXJzaW9uKQorCitDaGVja3MgdGhlIHZhbGlkaXR5IG9mICR2ZXJzaW9uIGFzIGEgdmVyc2lvbiBudW1iZXIuIFJldHVybnMgMSBpbiAkb2sKK2lmIHRoZSB2ZXJzaW9uIGlzIHZhbGlkLCAwIG90aGVyd2lzZS4gSW4gdGhlIGxhdHRlciBjYXNlLCAkbXNnCitjb250YWlucyBhIGRlc2NyaXB0aW9uIG9mIHRoZSBwcm9ibGVtIHdpdGggdGhlICR2ZXJzaW9uIHNjYWxhci4KKworPWN1dAorCitzdWIgdmVyc2lvbl9jaGVjaygkKSB7CisgICAgbXkgJHZlcnNpb24gPSBzaGlmdDsKKyAgICBteSAkc3RyOworICAgIGlmIChkZWZpbmVkICR2ZXJzaW9uKSB7CisgICAgICAgICRzdHIgPSAiJHZlcnNpb24iOworICAgICAgICAkdmVyc2lvbiA9IERwa2c6OlZlcnNpb24tPm5ldygkc3RyKSB1bmxlc3MgcmVmKCR2ZXJzaW9uKTsKKyAgICB9CisgICAgaWYgKG5vdCBkZWZpbmVkKCRzdHIpIG9yIG5vdCBsZW5ndGgoJHN0cikpIHsKKyAgICAgICAgbXkgJG1zZyA9IF9nKCJ2ZXJzaW9uIG51bWJlciBjYW5ub3QgYmUgZW1wdHkiKTsKKyAgICAgICAgcmV0dXJuICgwLCAkbXNnKSBpZiB3YW50YXJyYXk7CisgICAgICAgIHJldHVybiAwOworICAgIH0KKyAgICBpZiAoJHZlcnNpb24tPnZlcnNpb24oKSA9fiBtL15bXlxkXS8pIHsKKyAgICAgICAgbXkgJG1zZyA9IF9nKCJ2ZXJzaW9uIG51bWJlciBkb2VzIG5vdCBzdGFydCB3aXRoIGRpZ2l0Iik7CisgICAgICAgIHJldHVybiAoMCwgJG1zZykgaWYgd2FudGFycmF5OworICAgICAgICByZXR1cm4gMDsKKyAgICB9CisgICAgaWYgKCRzdHIgPX4gbS8oW14tKzouMC05YS16QS1afl0pL28pIHsKKyAgICAgICAgbXkgJG1zZyA9IHNwcmludGYoX2coInZlcnNpb24gbnVtYmVyIGNvbnRhaW5zIGlsbGVnYWwgY2hhcmFjdGVyIGAlcyciKSwgJDEpOworICAgICAgICByZXR1cm4gKDAsICRtc2cpIGlmIHdhbnRhcnJheTsKKyAgICAgICAgcmV0dXJuIDA7CisgICAgfQorICAgIGlmICgkdmVyc2lvbi0+ZXBvY2goKSAhfiAvXlxkKiQvKSB7CisgICAgICAgIG15ICRtc2cgPSBzcHJpbnRmKF9nKCJlcG9jaCBwYXJ0IG9mIHRoZSB2ZXJzaW9uIG51bWJlciAiIC4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImlzIG5vdCBhIG51bWJlcjogJyVzJyIpLCAkdmVyc2lvbi0+ZXBvY2goKSk7CisgICAgICAgIHJldHVybiAoMCwgJG1zZykgaWYgd2FudGFycmF5OworICAgICAgICByZXR1cm4gMDsKKyAgICB9CisgICAgcmV0dXJuICgxLCAiIikgaWYgd2FudGFycmF5OworICAgIHJldHVybiAxOworfQorCis9YmFjaworCis9aGVhZDEgQVVUSE9SCisKK0RvbiBBcm1zdHJvbmcgPGRvbkBkb25hcm1zdHJvbmcuY29tPiwgQ29saW4gV2F0c29uCis8Y2p3YXRzb25AZGViaWFuLm9yZz4gYW5kIFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4sIGJhc2VkIG9uCit0aGUgaW1wbGVtZW50YXRpb24gaW4gQzxkcGtnL2xpYi92ZXJjbXAuYz4gYnkgSWFuIEphY2tzb24gYW5kIG90aGVycy4KKworPWN1dAorCisxOwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL01ha2VmaWxlLmFtIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL01ha2VmaWxlLmFtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjM2NDkyZTQKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvTWFrZWZpbGUuYW0KQEAgLTAsMCArMSwyNjAgQEAKKyMjIFByb2Nlc3MgdGhpcyBmaWxlIHdpdGggYXV0b21ha2UgdG8gcHJvZHVjZSBNYWtlZmlsZS5pbgorCitTVUJESVJTID0gbWsgcG8KKworYmluX1NDUklQVFMgPSBcCisJZHBrZy1hcmNoaXRlY3R1cmUgXAorCWRwa2ctYnVpbGRmbGFncyBcCisJZHBrZy1idWlsZHBhY2thZ2UgXAorCWRwa2ctY2hlY2tidWlsZGRlcHMgXAorCWRwa2ctZGlzdGFkZGZpbGUgXAorCWRwa2ctZ2VuY2hhbmdlcyBcCisJZHBrZy1nZW5jb250cm9sIFwKKwlkcGtnLWdlbnN5bWJvbHMgXAorCWRwa2ctbWFpbnRzY3JpcHQtaGVscGVyIFwKKwlkcGtnLW1lcmdlY2hhbmdlbG9ncyBcCisJZHBrZy1uYW1lIFwKKwlkcGtnLXBhcnNlY2hhbmdlbG9nIFwKKwlkcGtnLXNjYW5wYWNrYWdlcyBcCisJZHBrZy1zY2Fuc291cmNlcyBcCisJZHBrZy1zaGxpYmRlcHMgXAorCWRwa2ctc291cmNlIFwKKwlkcGtnLXZlbmRvcgorCitjaGFuZ2Vsb2dkaXIgPSAkKHBrZ2xpYmRpcikvcGFyc2VjaGFuZ2Vsb2cKK2NoYW5nZWxvZ19TQ1JJUFRTID0gXAorCWNoYW5nZWxvZy9kZWJpYW4KKworRVhUUkFfRElTVCA9IFwKKwlkcGtnLWFyY2hpdGVjdHVyZS5wbCBcCisJZHBrZy1idWlsZGZsYWdzLnBsIFwKKwlkcGtnLWJ1aWxkcGFja2FnZS5wbCBcCisJZHBrZy1jaGVja2J1aWxkZGVwcy5wbCBcCisJZHBrZy1kaXN0YWRkZmlsZS5wbCBcCisJZHBrZy1nZW5jaGFuZ2VzLnBsIFwKKwlkcGtnLWdlbmNvbnRyb2wucGwgXAorCWRwa2ctZ2Vuc3ltYm9scy5wbCBcCisJZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuc2ggXAorCWRwa2ctbWVyZ2VjaGFuZ2Vsb2dzLnBsIFwKKwlkcGtnLW5hbWUucGwgXAorCWRwa2ctcGFyc2VjaGFuZ2Vsb2cucGwgXAorCWRwa2ctc2NhbnBhY2thZ2VzLnBsIFwKKwlkcGtnLXNjYW5zb3VyY2VzLnBsIFwKKwlkcGtnLXNobGliZGVwcy5wbCBcCisJZHBrZy1zb3VyY2UucGwgXAorCWRwa2ctdmVuZG9yLnBsIFwKKwljaGFuZ2Vsb2cvZGViaWFuLnBsIFwKKwkkKHRlc3RfY2FzZXMpIFwKKwkkKHRlc3RfZGF0YSkKKworCitDTEVBTkZJTEVTID0gXAorCSQoYmluX1NDUklQVFMpICQoY2hhbmdlbG9nX1NDUklQVFMpCisKK3BlcmxsaWJkaXIgPSAkKFBFUkxfTElCRElSKQorbm9iYXNlX2Rpc3RfcGVybGxpYl9EQVRBID0gXAorCURwa2cvQXJjaC5wbSBcCisJRHBrZy9CdWlsZEZsYWdzLnBtIFwKKwlEcGtnL0J1aWxkT3B0aW9ucy5wbSBcCisJRHBrZy9DaGFuZ2Vsb2cucG0gXAorCURwa2cvQ2hhbmdlbG9nL0RlYmlhbi5wbSBcCisJRHBrZy9DaGFuZ2Vsb2cvRW50cnkucG0gXAorCURwa2cvQ2hhbmdlbG9nL0VudHJ5L0RlYmlhbi5wbSBcCisJRHBrZy9DaGFuZ2Vsb2cvUGFyc2UucG0gXAorCURwa2cvQ2hlY2tzdW1zLnBtIFwKKwlEcGtnL0NvbXByZXNzaW9uLnBtIFwKKwlEcGtnL0NvbXByZXNzaW9uL0ZpbGVIYW5kbGUucG0gXAorCURwa2cvQ29tcHJlc3Npb24vUHJvY2Vzcy5wbSBcCisJRHBrZy9Db25mLnBtIFwKKwlEcGtnL0NvbnRyb2wucG0gXAorCURwa2cvQ29udHJvbC9DaGFuZ2Vsb2cucG0gXAorCURwa2cvQ29udHJvbC9GaWVsZHMucG0gXAorCURwa2cvQ29udHJvbC9JbmZvLnBtIFwKKwlEcGtnL0NvbnRyb2wvSGFzaC5wbSBcCisJRHBrZy9Db250cm9sL1R5cGVzLnBtIFwKKwlEcGtnL0RlcHMucG0gXAorCURwa2cvRXJyb3JIYW5kbGluZy5wbSBcCisJRHBrZy9FeGl0LnBtIFwKKwlEcGtnL0dldHRleHQucG0gXAorCURwa2cvSW5kZXgucG0gXAorCURwa2cvSW50ZXJmYWNlL1N0b3JhYmxlLnBtIFwKKwlEcGtnL0lQQy5wbSBcCisJRHBrZy9QYXRoLnBtIFwKKwlEcGtnL1NobGlicy5wbSBcCisJRHBrZy9TaGxpYnMvT2JqZHVtcC5wbSBcCisJRHBrZy9TaGxpYnMvU3ltYm9sLnBtIFwKKwlEcGtnL1NobGlicy9TeW1ib2xGaWxlLnBtIFwKKwlEcGtnL1NobGlicy9DcHBmaWx0LnBtIFwKKwlEcGtnL1NvdXJjZS9BcmNoaXZlLnBtIFwKKwlEcGtnL1NvdXJjZS9GdW5jdGlvbnMucG0gXAorCURwa2cvU291cmNlL1BhY2thZ2UucG0gXAorCURwa2cvU291cmNlL1BhY2thZ2UvVjEucG0gXAorCURwa2cvU291cmNlL1BhY2thZ2UvVjIucG0gXAorCURwa2cvU291cmNlL1BhY2thZ2UvVjMvYnpyLnBtIFwKKwlEcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2N1c3RvbS5wbSBcCisJRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9uYXRpdmUucG0gXAorCURwa2cvU291cmNlL1BhY2thZ2UvVjMvZ2l0LnBtIFwKKwlEcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtIFwKKwlEcGtnL1NvdXJjZS9QYXRjaC5wbSBcCisJRHBrZy9TdWJzdHZhcnMucG0gXAorCURwa2cvVmFycy5wbSBcCisJRHBrZy9WZW5kb3IucG0gXAorCURwa2cvVmVuZG9yL0RlYmlhbi5wbSBcCisJRHBrZy9WZW5kb3IvRGVmYXVsdC5wbSBcCisJRHBrZy9WZW5kb3IvVWJ1bnR1LnBtIFwKKwlEcGtnL1ZlcnNpb24ucG0gXAorCURwa2cucG0KKworIyBLZWVwIGl0IGV2ZW4gaWYgZW1wdHkgdG8gaGF2ZSBtYW4zZGlyIGNvcnJlY3RseSBzZXQKK21hbjNfTUFOUyA9CisKK2RvX3Blcmxfc3Vic3QgPSAkKEFNX1ZfR0VOKSBcCisJCXNlZCAtZSAiczpeXCMhWzpzcGFjZTpdKi91c3IvYmluL3Blcmw6XCMhJChQRVJMKToiIFwKKwkJICAgIC1lICJzOlwkJGRwa2dsaWJkaXJbWzpzcGFjZTpdXSo9W1s6c3BhY2U6XV0qWydcIl1bXidcIl0qWydcIl06XCQkZHBrZ2xpYmRpcj1cIiQocGtnbGliZGlyKVwiOiIgXAorCQkgICAgLWUgInM6XCQkcGtnZGF0YWRpcltbOnNwYWNlOl1dKj1bWzpzcGFjZTpdXSpbJ1wiXVteJ1wiXSpbJ1wiXTpcJCRwa2dkYXRhZGlyPVwiJChwa2dkYXRhZGlyKVwiOiIgXAorCQkgICAgLWUgInM6XCQkYWRtaW5kaXJbWzpzcGFjZTpdXSo9W1s6c3BhY2U6XV0qWydcIl1bXidcIl0qWydcIl06XCQkYWRtaW5kaXI9XCIkKGFkbWluZGlyKVwiOiIgXAorCQkgICAgLWUgInM6XCQkdmVyc2lvbltbOnNwYWNlOl1dKj1bWzpzcGFjZTpdXSpbJ1wiXVteJ1wiXSpbXCInXTpcJCR2ZXJzaW9uPVwiJChQQUNLQUdFX1ZFUlNJT04pXCI6IgorCitkb19zaGVsbF9zdWJzdCA9ICQoQU1fVl9HRU4pIFwKKwkJIHNlZCAtZSAiczpedmVyc2lvbltbOnNwYWNlOl1dKj1bWzpzcGFjZTpdXSpbJ1wiXVteJ1wiXSpbXCInXTp2ZXJzaW9uPVwiJChQQUNLQUdFX1ZFUlNJT04pXCI6IgorCislOiAlLnBsIE1ha2VmaWxlCisJQHRlc3QgLWQgYGRpcm5hbWUgJEBgIHx8ICQobWtkaXJfcCkgYGRpcm5hbWUgJEBgCisJJChkb19wZXJsX3N1YnN0KSA8JDwgPiRACisJJChBTV9WX2F0KSBjaG1vZCAreCAkQAorCislOiAlLnNoIE1ha2VmaWxlCisJQHRlc3QgLWQgYGRpcm5hbWUgJEBgIHx8ICQobWtkaXJfcCkgYGRpcm5hbWUgJEBgCisJJChkb19zaGVsbF9zdWJzdCkgPCQ8ID4kQAorCSQoQU1fVl9hdCkgY2htb2QgK3ggJEAKKworaW5zdGFsbC1kYXRhLWxvY2FsOgoraWYgQlVJTERfUE9EX0RPQworIyBJbnN0YWxsIG1hbnVhbCBwYWdlcyBmb3IgcGVybCBtb2R1bGVzIG1hbnVhbGx5IGFzIG1ha2UgY2FuJ3QgZGVhbAorIyBwcm9wZXJseSB3aXRoIGZpbGVuYW1lcyBjb250YWluaW5nIGNvbG9ucworIyBSZW1vdmUgZW1wdHkgbWFudWFsIHBhZ2VzIChwZXJsIG1vZHVsZXMgbm90IGRvY3VtZW50ZWQpCisJJChta2Rpcl9wKSAkKERFU1RESVIpJChtYW4zZGlyKQorCWZvciBtb2R1bGUgaW4gJChub2Jhc2VfZGlzdF9wZXJsbGliX0RBVEEpOyBkbyBcCisJICAgIG5hbWU9YGVjaG8gJCRtb2R1bGUgfCBzZWQgLWUgJ3N8L3w6OnxnJyAtZSAncy9cLnBtJCQvLydgOyBcCisJICAgIHBvZDJtYW4gLS11dGY4IC0tY2VudGVyPWxpYmRwa2ctcGVybCAtLXJlbGVhc2U9JChWRVJTSU9OKSBcCisJCS0tbmFtZT0iJCRuYW1lIgktLXNlY3Rpb249MyAkKHNyY2RpcikvJCRtb2R1bGUgXAorCQk+JChERVNURElSKSQobWFuM2RpcikvJCRuYW1lLjM7IFwKKwkgICAgdGVzdCAtcyAkKERFU1RESVIpJChtYW4zZGlyKS8kJG5hbWUuMyB8fCBcCisJCXJtIC1mICQoREVTVERJUikkKG1hbjNkaXIpLyQkbmFtZS4zOyBcCisJZG9uZQorZW5kaWYKKworIyBJZGVhbGx5IHdlJ2QgdXNlICdzZWQgLWknLCBidXQgdW5mb3J0dW5hdGVseSB0aGF0J3Mgbm90IHBvcnRhYmxlLgoraW5zdGFsbC1kYXRhLWhvb2s6CisJY3AgLXAgJChERVNURElSKSQocGVybGxpYmRpcikvRHBrZy5wbSBcCisJICAgICAgJChERVNURElSKSQocGVybGxpYmRpcikvRHBrZy5wbS50bXAKKwkkKGRvX3Blcmxfc3Vic3QpIDwkKERFU1RESVIpJChwZXJsbGliZGlyKS9EcGtnLnBtLnRtcCBcCisJICAgICAgICAgICAgICAgICA+JChERVNURElSKSQocGVybGxpYmRpcikvRHBrZy5wbQorCXJtICQoREVTVERJUikkKHBlcmxsaWJkaXIpL0Rwa2cucG0udG1wCisKK3VuaW5zdGFsbC1sb2NhbDoKK2lmIEJVSUxEX1BPRF9ET0MKKwlmb3IgbW9kdWxlIGluICQobm9iYXNlX2Rpc3RfcGVybGxpYl9EQVRBKTsgZG8gXAorCSAgICBybSAtZiAkKERFU1RESVIpJChtYW4zZGlyKS9gZWNobyAkJG1vZHVsZSB8IHNlZCAtZSAnc3wvfDo6fGcnIC1lICdzL1wucG0kJC8uMy8nYDsgXAorCWRvbmUKK2VuZGlmCisKK2NvdmVyYWdlOiBjaGVjaworCSQoUEVSTF9DT1ZFUikgLXNpbGVudCBcCisJICAtaWdub3JlX3JlICdedC8uKlwudCcgXAorCSAgLW91dHB1dGRpciAkKHRvcF9idWlsZGRpcikvZG9jL2NvdmVyYWdlL3NjcmlwdHMKKworY292ZXJhZ2UtY2xlYW46CisJcm0gLXJmIGNvdmVyX2RiCisKK1RFU1RfVkVSQk9TRT0gMAorVEVTVF9FTlZfVkFSUyA9IFwKKwlEUEtHX0RBVEFESVI9JChzcmNkaXIpLy4uIFwKKwlEUEtHX09SSUdJTlNfRElSPSQoc3JjZGlyKS90L29yaWdpbnMKK1RFU1RfQ09WRVJBR0UgPSAkKFBFUkxfQ09WRVJBR0UpCisKK3Rlc3RfdG1wZGlyID0gdC50bXAKKwordGVzdF9jYXNlcyA9IFwKKwl0LzAwMF9wb2QudCBcCisJdC8xMDBfRHBrZ19WZXJzaW9uLnQgXAorCXQvMTkwX0Rwa2dfU2hsaWJzX0NwcGZpbHQudCBcCisJdC8yMDBfRHBrZ19TaGxpYnMudCBcCisJdC8zMDBfRHBrZ19CdWlsZE9wdGlvbnMudCBcCisJdC80MDBfRHBrZ19EZXBzLnQgXAorCXQvNTAwX0Rwa2dfUGF0aC50IFwKKwl0LzYwMF9EcGtnX0NoYW5nZWxvZy50IFwKKwl0LzYwMF9EcGtnX0NoYW5nZWxvZ19VYnVudHUudCBcCisJdC83MDBfRHBrZ19Db250cm9sLnQgXAorCXQvNzUwX0Rwa2dfU3Vic3R2YXJzLnQgXAorCXQvODAwX0Rwa2dfSVBDLnQgXAorCXQvODUwX0Rwa2dfQ29tcHJlc3Npb24udCBcCisJdC85MTBfbWVyZ2VfY2hhbmdlbG9ncy50CisKK2NoZWNrX0RBVEEgPSBcCisJJCh0ZXN0X3RtcGRpcikvMjAwX0Rwa2dfU2hsaWJzL29iamR1bXAuYmFzaWN0YWdzLWFtZDY0IFwKKwkkKHRlc3RfdG1wZGlyKS8yMDBfRHBrZ19TaGxpYnMvb2JqZHVtcC5iYXNpY3RhZ3MtaTM4NiBcCisJJCh0ZXN0X3RtcGRpcikvMjAwX0Rwa2dfU2hsaWJzL29iamR1bXAucGF0dGVybnMKKwordGVzdF9kYXRhID0gXAorCXQvMjAwX0Rwa2dfU2hsaWJzL3N5bWJvbHMuZmFrZS0xIFwKKwl0LzIwMF9EcGtnX1NobGlicy9zeW1ib2xzLmZha2UtMiBcCisJdC8yMDBfRHBrZ19TaGxpYnMvc3ltYm9scy5mYWtlLTMgXAorCXQvMjAwX0Rwa2dfU2hsaWJzL3N5bWJvbHMuaW5jbHVkZS0xIFwKKwl0LzIwMF9EcGtnX1NobGlicy9zeW1ib2xzLmluY2x1ZGUtMiBcCisJdC8yMDBfRHBrZ19TaGxpYnMvc3ltYm9scy5pbmNsdWRlLTMgXAorCXQvMjAwX0Rwa2dfU2hsaWJzL2Jhc2ljdGFncy5zeW1ib2xzIFwKKwl0LzIwMF9EcGtnX1NobGlicy9iYXNpY3RhZ3MuYyBcCisJdC8yMDBfRHBrZ19TaGxpYnMvcGF0dGVybnMuc3ltYm9scyBcCisJdC8yMDBfRHBrZ19TaGxpYnMvcGF0dGVybnMuY3BwIFwKKwl0LzIwMF9EcGtnX1NobGlicy9wYXR0ZXJucy5tYXAgXAorCXQvMjAwX0Rwa2dfU2hsaWJzL2xkLnNvLmNvbmYgXAorCXQvMjAwX0Rwa2dfU2hsaWJzL2xkLnNvLmNvbmZfMiBcCisJdC8yMDBfRHBrZ19TaGxpYnMvbGQuc28uY29uZi5kL25vcm1hbC5jb25mIFwKKwl0LzIwMF9EcGtnX1NobGlicy9sZC5zby5jb25mLmQvaW5mX3JlY3Vyc2UuY29uZiBcCisJdC8yMDBfRHBrZ19TaGxpYnMvbGQuc28uY29uZi5kL3JlY3Vyc2l2ZS5jb25mIFwKKwl0LzIwMF9EcGtnX1NobGlicy9vYmpkdW1wLmdsaWItaWE2NCBcCisJdC8yMDBfRHBrZ19TaGxpYnMvb2JqZHVtcC5saWJjNi0yLjMgXAorCXQvMjAwX0Rwa2dfU2hsaWJzL29iamR1bXAubGliYzYtMi42IFwKKwl0LzIwMF9EcGtnX1NobGlicy9vYmpkdW1wLmRiZC1wZyBcCisJdC8yMDBfRHBrZ19TaGxpYnMvb2JqZHVtcC5scyBcCisJdC82MDBfRHBrZ19DaGFuZ2Vsb2cvY291bnRtZSBcCisJdC82MDBfRHBrZ19DaGFuZ2Vsb2cvZmllbGRzIFwKKwl0LzYwMF9EcGtnX0NoYW5nZWxvZy9taXNwbGFjZWQtdHogXAorCXQvNjAwX0Rwa2dfQ2hhbmdlbG9nL3JlZ3Jlc3Npb25zIFwKKwl0LzYwMF9EcGtnX0NoYW5nZWxvZy9zaGFkb3cgXAorCXQvNzAwX0Rwa2dfQ29udHJvbC9jb250cm9sLTEgXAorCXQvNzUwX0Rwa2dfU3Vic3R2YXJzL3N1YnN0dmFyczEgXAorCXQvOTEwX21lcmdlX2NoYW5nZWxvZ3MvY2gtb2xkIFwKKwl0LzkxMF9tZXJnZV9jaGFuZ2Vsb2dzL2NoLWEgXAorCXQvOTEwX21lcmdlX2NoYW5nZWxvZ3MvY2gtYiBcCisJdC85MTBfbWVyZ2VfY2hhbmdlbG9ncy9jaC1tZXJnZWQgXAorCXQvOTEwX21lcmdlX2NoYW5nZWxvZ3MvY2gtbWVyZ2VkLWJhc2ljIFwKKwl0LzkxMF9tZXJnZV9jaGFuZ2Vsb2dzL2NoLW1lcmdlZC1wciBcCisJdC85MTBfbWVyZ2VfY2hhbmdlbG9ncy9jaC1tZXJnZWQtcHItYmFzaWMgXAorCXQvb3JpZ2lucy9kZWJpYW4gXAorCXQvb3JpZ2lucy9kZWZhdWx0IFwKKwl0L29yaWdpbnMvdWJ1bnR1CisKK29iamR1bXBfbGliX25hbWUgPSBsaWJgYmFzZW5hbWUgJEBgLnNvCiskKHRlc3RfdG1wZGlyKS8yMDBfRHBrZ19TaGxpYnMvb2JqZHVtcC5iYXNpY3RhZ3MtYW1kNjQgJCh0ZXN0X3RtcGRpcikvMjAwX0Rwa2dfU2hsaWJzL29iamR1bXAuYmFzaWN0YWdzLWkzODY6ICQoc3JjZGlyKS90LzIwMF9EcGtnX1NobGlicy9iYXNpY3RhZ3MuYworCSQobWtkaXJfcCkgJCh0ZXN0X3RtcGRpcikvMjAwX0Rwa2dfU2hsaWJzCisJJChDQykgJChDRkxBR1MpIC1zaGFyZWQgLWZQSUMgLVdsLC1zb25hbWUgLVdsLGxpYmJhc2ljdGFncy5zby4xICQ8IFwKKwkgICQoaWYgJChmaW5kc3RyaW5nIGFtZDY0LCRAKSwtREFNRDY0LCkgLW8gJChvYmpkdW1wX2xpYl9uYW1lKQorCW9iamR1bXAgLXcgLWYgLXAgLVQgLVIgJChvYmpkdW1wX2xpYl9uYW1lKSB8IFwKKwkgIHNlZCAicy8kKG9iamR1bXBfbGliX25hbWUpL2xpYmJhc2ljdGFncy5zby4xL2ciID4gJEAKKwlybSAtZiAkKG9iamR1bXBfbGliX25hbWUpCisKKyQodGVzdF90bXBkaXIpLzIwMF9EcGtnX1NobGlicy9vYmpkdW1wLnBhdHRlcm5zOiAkKHNyY2RpcikvdC8yMDBfRHBrZ19TaGxpYnMvcGF0dGVybnMuY3BwICQoc3JjZGlyKS90LzIwMF9EcGtnX1NobGlicy9wYXR0ZXJucy5tYXAKKwkkKG1rZGlyX3ApICQodGVzdF90bXBkaXIpLzIwMF9EcGtnX1NobGlicworCSQoQ1hYKSAkKENYWEZMQUdTKSAtc2hhcmVkIC1mUElDIC1XbCwtc29uYW1lIC1XbCxsaWJwYXR0ZXJucy5zby4xIFwKKwkgICAgLVdsLC0tdmVyc2lvbi1zY3JpcHQ9JChzcmNkaXIpL3QvMjAwX0Rwa2dfU2hsaWJzL3BhdHRlcm5zLm1hcCAkPCBcCisJICAgIC1vICQob2JqZHVtcF9saWJfbmFtZSkKKwlvYmpkdW1wIC13IC1mIC1wIC1UIC1SICQob2JqZHVtcF9saWJfbmFtZSkgfCBcCisJICBzZWQgInMvJChvYmpkdW1wX2xpYl9uYW1lKS9saWJwYXR0ZXJucy5zby4xL2ciID4gJEAKKwlybSAtZiAkKG9iamR1bXBfbGliX25hbWUpCisKK2luY2x1ZGUgJCh0b3Bfc3JjZGlyKS9NYWtlY2hlY2suYW0KKworY2xlYW4tbG9jYWw6IGNoZWNrLWNsZWFuIGNvdmVyYWdlLWNsZWFuCisJcm0gLWZyIG1hbgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL01ha2VmaWxlLmluIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL01ha2VmaWxlLmluCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmZjYjJjMTcKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvTWFrZWZpbGUuaW4KQEAgLTAsMCArMSwxMDU0IEBACisjIE1ha2VmaWxlLmluIGdlbmVyYXRlZCBieSBhdXRvbWFrZSAxLjExLjEgZnJvbSBNYWtlZmlsZS5hbS4KKyMgQGNvbmZpZ3VyZV9pbnB1dEAKKworIyBDb3B5cmlnaHQgKEMpIDE5OTQsIDE5OTUsIDE5OTYsIDE5OTcsIDE5OTgsIDE5OTksIDIwMDAsIDIwMDEsIDIwMDIsCisjIDIwMDMsIDIwMDQsIDIwMDUsIDIwMDYsIDIwMDcsIDIwMDgsIDIwMDkgIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwKKyMgSW5jLgorIyBUaGlzIE1ha2VmaWxlLmluIGlzIGZyZWUgc29mdHdhcmU7IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24KKyMgZ2l2ZXMgdW5saW1pdGVkIHBlcm1pc3Npb24gdG8gY29weSBhbmQvb3IgZGlzdHJpYnV0ZSBpdCwKKyMgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbnMsIGFzIGxvbmcgYXMgdGhpcyBub3RpY2UgaXMgcHJlc2VydmVkLgorCisjIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFksIHRvIHRoZSBleHRlbnQgcGVybWl0dGVkIGJ5IGxhdzsgd2l0aG91dAorIyBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBCisjIFBBUlRJQ1VMQVIgUFVSUE9TRS4KKworQFNFVF9NQUtFQAorCisjIHZpbTpzZXQgc3luPWF1dG9tYWtlOgorCisjIFZhcmlhYmxlcyB0byBiZSBkZWZpbmVkOgorIworIyAgVEVTVF9WRVJCT1NFIC0gc2V0IHRvIDAgb3IgMSB0byBjb250cm9sIHRlc3Qgc3VpdGUgdmVyYm9zaXR5CisjICBURVNUX0VOVl9WQVJTIC0gZW52aXJvbm1lbnQgdmFyaWFibGVzIHRvIGJlIHNldCBmb3IgdGhlIHRlc3Qgc3VpdGUKKyMgIFRFU1RfQ09WRVJBR0UgLSBzZXQgdG8gdGhlIHBlcmwgbW9kdWxlIGluIGNoYXJnZSBvZiBnZXR0aW5nIHRlc3QgY292ZXJhZ2UKKyMgIHRlc3RfdG1wZGlyIC0gdGVzdCBzdWl0ZSB0ZW1wb3JhcnkgZGlyZWN0b3J5CisjICB0ZXN0X2Nhc2VzIC0gbGlzdCBvZiB0ZXN0IGNhc2UgZmlsZXMKKyMgIHRlc3RfZGF0YSAtIGxpc3Qgb2YgdGVzdCBkYXRhIGZpbGVzCisKKworVlBBVEggPSBAc3JjZGlyQAorcGtnZGF0YWRpciA9ICQoZGF0YWRpcikvQFBBQ0tBR0VACitwa2dpbmNsdWRlZGlyID0gJChpbmNsdWRlZGlyKS9AUEFDS0FHRUAKK3BrZ2xpYmRpciA9ICQobGliZGlyKS9AUEFDS0FHRUAKK3BrZ2xpYmV4ZWNkaXIgPSAkKGxpYmV4ZWNkaXIpL0BQQUNLQUdFQAorYW1fX2NkID0gQ0RQQVRIPSIkJHtaU0hfVkVSU0lPTisufSQoUEFUSF9TRVBBUkFUT1IpIiAmJiBjZAoraW5zdGFsbF9zaF9EQVRBID0gJChpbnN0YWxsX3NoKSAtYyAtbSA2NDQKK2luc3RhbGxfc2hfUFJPR1JBTSA9ICQoaW5zdGFsbF9zaCkgLWMKK2luc3RhbGxfc2hfU0NSSVBUID0gJChpbnN0YWxsX3NoKSAtYworSU5TVEFMTF9IRUFERVIgPSAkKElOU1RBTExfREFUQSkKK3RyYW5zZm9ybSA9ICQocHJvZ3JhbV90cmFuc2Zvcm1fbmFtZSkKK05PUk1BTF9JTlNUQUxMID0gOgorUFJFX0lOU1RBTEwgPSA6CitQT1NUX0lOU1RBTEwgPSA6CitOT1JNQUxfVU5JTlNUQUxMID0gOgorUFJFX1VOSU5TVEFMTCA9IDoKK1BPU1RfVU5JTlNUQUxMID0gOgorYnVpbGRfdHJpcGxldCA9IEBidWlsZEAKK2hvc3RfdHJpcGxldCA9IEBob3N0QAorRElTVF9DT01NT04gPSAkKG5vYmFzZV9kaXN0X3BlcmxsaWJfREFUQSkgJChzcmNkaXIpL01ha2VmaWxlLmFtIFwKKwkkKHNyY2RpcikvTWFrZWZpbGUuaW4gJCh0b3Bfc3JjZGlyKS9NYWtlY2hlY2suYW0KK3N1YmRpciA9IHNjcmlwdHMKK0FDTE9DQUxfTTQgPSAkKHRvcF9zcmNkaXIpL2FjbG9jYWwubTQKK2FtX19hY2xvY2FsX200X2RlcHMgPSAkKHRvcF9zcmNkaXIpL200L2Rwa2ctYXJjaC5tNCBcCisJJCh0b3Bfc3JjZGlyKS9tNC9kcGtnLWJ1aWxkLm00IFwKKwkkKHRvcF9zcmNkaXIpL200L2Rwa2ctY29tcGlsZXIubTQgXAorCSQodG9wX3NyY2RpcikvbTQvZHBrZy1jb3ZlcmFnZS5tNCBcCisJJCh0b3Bfc3JjZGlyKS9tNC9kcGtnLWZ1bmNzLm00ICQodG9wX3NyY2RpcikvbTQvZHBrZy1saWJzLm00IFwKKwkkKHRvcF9zcmNkaXIpL200L2Rwa2ctbGlua2VyLm00ICQodG9wX3NyY2RpcikvbTQvZHBrZy1wcm9ncy5tNCBcCisJJCh0b3Bfc3JjZGlyKS9tNC9kcGtnLXR5cGVzLm00IFwKKwkkKHRvcF9zcmNkaXIpL200L2Rwa2ctdW5pY29kZS5tNCAkKHRvcF9zcmNkaXIpL200L2dldHRleHQubTQgXAorCSQodG9wX3NyY2RpcikvbTQvaWNvbnYubTQgJCh0b3Bfc3JjZGlyKS9tNC9pbnRsbWFjb3N4Lm00IFwKKwkkKHRvcF9zcmNkaXIpL200L2xpYi1sZC5tNCAkKHRvcF9zcmNkaXIpL200L2xpYi1saW5rLm00IFwKKwkkKHRvcF9zcmNkaXIpL200L2xpYi1wcmVmaXgubTQgJCh0b3Bfc3JjZGlyKS9tNC9ubHMubTQgXAorCSQodG9wX3NyY2RpcikvbTQvcG8ubTQgJCh0b3Bfc3JjZGlyKS9tNC9wcm9ndGVzdC5tNCBcCisJJCh0b3Bfc3JjZGlyKS9jb25maWd1cmUuYWMKK2FtX19jb25maWd1cmVfZGVwcyA9ICQoYW1fX2FjbG9jYWxfbTRfZGVwcykgJChDT05GSUdVUkVfREVQRU5ERU5DSUVTKSBcCisJJChBQ0xPQ0FMX000KQorbWtpbnN0YWxsZGlycyA9ICQoaW5zdGFsbF9zaCkgLWQKK0NPTkZJR19IRUFERVIgPSAkKHRvcF9idWlsZGRpcikvY29uZmlnLmgKK0NPTkZJR19DTEVBTl9GSUxFUyA9CitDT05GSUdfQ0xFQU5fVlBBVEhfRklMRVMgPQorYW1fX3ZwYXRoX2Fkal9zZXR1cCA9IHNyY2RpcnN0cmlwPWBlY2hvICIkKHNyY2RpcikiIHwgc2VkICdzfC58LnxnJ2A7CithbV9fdnBhdGhfYWRqID0gY2FzZSAkJHAgaW4gXAorICAgICQoc3JjZGlyKS8qKSBmPWBlY2hvICIkJHAiIHwgc2VkICJzfF4kJHNyY2RpcnN0cmlwL3x8ImA7OyBcCisgICAgKikgZj0kJHA7OyBcCisgIGVzYWM7CithbV9fc3RyaXBfZGlyID0gZj1gZWNobyAkJHAgfCBzZWQgLWUgJ3N8Xi4qL3x8J2A7CithbV9faW5zdGFsbF9tYXggPSA0MAorYW1fX25vYmFzZV9zdHJpcF9zZXR1cCA9IFwKKyAgc3JjZGlyc3RyaXA9YGVjaG8gIiQoc3JjZGlyKSIgfCBzZWQgJ3MvW10uW14kJFxcKnxdL1xcXFwmL2cnYAorYW1fX25vYmFzZV9zdHJpcCA9IFwKKyAgZm9yIHAgaW4gJCRsaXN0OyBkbyBlY2hvICIkJHAiOyBkb25lIHwgc2VkIC1lICJzfCQkc3JjZGlyc3RyaXAvfHwiCithbV9fbm9iYXNlX2xpc3QgPSAkKGFtX19ub2Jhc2Vfc3RyaXBfc2V0dXApOyBcCisgIGZvciBwIGluICQkbGlzdDsgZG8gZWNobyAiJCRwICQkcCI7IGRvbmUgfCBcCisgIHNlZCAic3wgJCRzcmNkaXJzdHJpcC98IHw7IicgLyAuKlwvLyFzLyAuKi8gLi87IHMsXCggLipcKS9bXi9dKiQkLFwxLCcgfCBcCisgICQoQVdLKSAnQkVHSU4geyBmaWxlc1siLiJdID0gIiIgfSB7IGZpbGVzWyQkMl0gPSBmaWxlc1skJDJdICIgIiAkJDE7IFwKKyAgICBpZiAoKytuWyQkMl0gPT0gJChhbV9faW5zdGFsbF9tYXgpKSBcCisgICAgICB7IHByaW50ICQkMiwgZmlsZXNbJCQyXTsgblskJDJdID0gMDsgZmlsZXNbJCQyXSA9ICIiIH0gfSBcCisgICAgRU5EIHsgZm9yIChkaXIgaW4gZmlsZXMpIHByaW50IGRpciwgZmlsZXNbZGlyXSB9JworYW1fX2Jhc2VfbGlzdCA9IFwKKyAgc2VkICckJCFOOyQkIU47JCQhTjskJCFOOyQkIU47JCQhTjskJCFOO3MvXG4vIC9nJyB8IFwKKyAgc2VkICckJCFOOyQkIU47JCQhTjskJCFOO3MvXG4vIC9nJworYW1fX2luc3RhbGxkaXJzID0gIiQoREVTVERJUikkKGJpbmRpcikiICIkKERFU1RESVIpJChjaGFuZ2Vsb2dkaXIpIiBcCisJIiQoREVTVERJUikkKG1hbjNkaXIpIiAiJChERVNURElSKSQocGVybGxpYmRpcikiCitTQ1JJUFRTID0gJChiaW5fU0NSSVBUUykgJChjaGFuZ2Vsb2dfU0NSSVBUUykKK0FNX1ZfR0VOID0gJChhbV9fdl9HRU5fJChWKSkKK2FtX192X0dFTl8gPSAkKGFtX192X0dFTl8kKEFNX0RFRkFVTFRfVkVSQk9TSVRZKSkKK2FtX192X0dFTl8wID0gQGVjaG8gIiAgR0VOICAgIiAkQDsKK0FNX1ZfYXQgPSAkKGFtX192X2F0XyQoVikpCithbV9fdl9hdF8gPSAkKGFtX192X2F0XyQoQU1fREVGQVVMVF9WRVJCT1NJVFkpKQorYW1fX3ZfYXRfMCA9IEAKK1NPVVJDRVMgPQorRElTVF9TT1VSQ0VTID0KK1JFQ1VSU0lWRV9UQVJHRVRTID0gYWxsLXJlY3Vyc2l2ZSBjaGVjay1yZWN1cnNpdmUgZHZpLXJlY3Vyc2l2ZSBcCisJaHRtbC1yZWN1cnNpdmUgaW5mby1yZWN1cnNpdmUgaW5zdGFsbC1kYXRhLXJlY3Vyc2l2ZSBcCisJaW5zdGFsbC1kdmktcmVjdXJzaXZlIGluc3RhbGwtZXhlYy1yZWN1cnNpdmUgXAorCWluc3RhbGwtaHRtbC1yZWN1cnNpdmUgaW5zdGFsbC1pbmZvLXJlY3Vyc2l2ZSBcCisJaW5zdGFsbC1wZGYtcmVjdXJzaXZlIGluc3RhbGwtcHMtcmVjdXJzaXZlIGluc3RhbGwtcmVjdXJzaXZlIFwKKwlpbnN0YWxsY2hlY2stcmVjdXJzaXZlIGluc3RhbGxkaXJzLXJlY3Vyc2l2ZSBwZGYtcmVjdXJzaXZlIFwKKwlwcy1yZWN1cnNpdmUgdW5pbnN0YWxsLXJlY3Vyc2l2ZQorbWFuM2RpciA9ICQobWFuZGlyKS9tYW4zCitOUk9GRiA9IG5yb2ZmCitNQU5TID0gJChtYW4zX01BTlMpCitEQVRBID0gJChub2Jhc2VfZGlzdF9wZXJsbGliX0RBVEEpCitSRUNVUlNJVkVfQ0xFQU5fVEFSR0VUUyA9IG1vc3RseWNsZWFuLXJlY3Vyc2l2ZSBjbGVhbi1yZWN1cnNpdmUJXAorICBkaXN0Y2xlYW4tcmVjdXJzaXZlIG1haW50YWluZXItY2xlYW4tcmVjdXJzaXZlCitBTV9SRUNVUlNJVkVfVEFSR0VUUyA9ICQoUkVDVVJTSVZFX1RBUkdFVFM6LXJlY3Vyc2l2ZT0pIFwKKwkkKFJFQ1VSU0lWRV9DTEVBTl9UQVJHRVRTOi1yZWN1cnNpdmU9KSB0YWdzIFRBR1MgY3RhZ3MgQ1RBR1MgXAorCWRpc3RkaXIKK0VUQUdTID0gZXRhZ3MKK0NUQUdTID0gY3RhZ3MKK0RJU1RfU1VCRElSUyA9ICQoU1VCRElSUykKK0RJU1RGSUxFUyA9ICQoRElTVF9DT01NT04pICQoRElTVF9TT1VSQ0VTKSAkKFRFWElORk9TKSAkKEVYVFJBX0RJU1QpCithbV9fcmVsYXRpdml6ZSA9IFwKKyAgZGlyMD1gcHdkYDsgXAorICBzZWRfZmlyc3Q9J3MsXlwoW14vXSpcKS8uKiQkLFwxLCc7IFwKKyAgc2VkX3Jlc3Q9J3MsXlteL10qLyosLCc7IFwKKyAgc2VkX2xhc3Q9J3MsXi4qL1woW14vXSpcKSQkLFwxLCc7IFwKKyAgc2VkX2J1dGxhc3Q9J3MsLypbXi9dKiQkLCwnOyBcCisgIHdoaWxlIHRlc3QgLW4gIiQkZGlyMSI7IGRvIFwKKyAgICBmaXJzdD1gZWNobyAiJCRkaXIxIiB8IHNlZCAtZSAiJCRzZWRfZmlyc3QiYDsgXAorICAgIGlmIHRlc3QgIiQkZmlyc3QiICE9ICIuIjsgdGhlbiBcCisgICAgICBpZiB0ZXN0ICIkJGZpcnN0IiA9ICIuLiI7IHRoZW4gXAorICAgICAgICBkaXIyPWBlY2hvICIkJGRpcjAiIHwgc2VkIC1lICIkJHNlZF9sYXN0ImAvIiQkZGlyMiI7IFwKKyAgICAgICAgZGlyMD1gZWNobyAiJCRkaXIwIiB8IHNlZCAtZSAiJCRzZWRfYnV0bGFzdCJgOyBcCisgICAgICBlbHNlIFwKKyAgICAgICAgZmlyc3QyPWBlY2hvICIkJGRpcjIiIHwgc2VkIC1lICIkJHNlZF9maXJzdCJgOyBcCisgICAgICAgIGlmIHRlc3QgIiQkZmlyc3QyIiA9ICIkJGZpcnN0IjsgdGhlbiBcCisgICAgICAgICAgZGlyMj1gZWNobyAiJCRkaXIyIiB8IHNlZCAtZSAiJCRzZWRfcmVzdCJgOyBcCisgICAgICAgIGVsc2UgXAorICAgICAgICAgIGRpcjI9Ii4uLyQkZGlyMiI7IFwKKyAgICAgICAgZmk7IFwKKyAgICAgICAgZGlyMD0iJCRkaXIwIi8iJCRmaXJzdCI7IFwKKyAgICAgIGZpOyBcCisgICAgZmk7IFwKKyAgICBkaXIxPWBlY2hvICIkJGRpcjEiIHwgc2VkIC1lICIkJHNlZF9yZXN0ImA7IFwKKyAgZG9uZTsgXAorICByZWxkaXI9IiQkZGlyMiIKK0FDTE9DQUwgPSBAQUNMT0NBTEAKK0FNVEFSID0gQEFNVEFSQAorQU1fREVGQVVMVF9WRVJCT1NJVFkgPSBAQU1fREVGQVVMVF9WRVJCT1NJVFlACitBVVRPQ09ORiA9IEBBVVRPQ09ORkAKK0FVVE9IRUFERVIgPSBAQVVUT0hFQURFUkAKK0FVVE9NQUtFID0gQEFVVE9NQUtFQAorQVdLID0gQEFXS0AKK0JaMl9MSUJTID0gQEJaMl9MSUJTQAorQ0MgPSBAQ0NACitDQ0RFUE1PREUgPSBAQ0NERVBNT0RFQAorQ0ZMQUdTID0gQENGTEFHU0AKK0NQUCA9IEBDUFBACitDUFBGTEFHUyA9IEBDUFBGTEFHU0AKK0NVUlNFU19MSUJTID0gQENVUlNFU19MSUJTQAorQ1hYID0gQENYWEAKK0NYWERFUE1PREUgPSBAQ1hYREVQTU9ERUAKK0NYWEZMQUdTID0gQENYWEZMQUdTQAorQ1lHUEFUSF9XID0gQENZR1BBVEhfV0AKK0RFRlMgPSBAREVGU0AKK0RFUERJUiA9IEBERVBESVJACitET1hZR0VOID0gQERPWFlHRU5ACitFQ0hPX0MgPSBARUNIT19DQAorRUNIT19OID0gQEVDSE9fTkAKK0VDSE9fVCA9IEBFQ0hPX1RACitFR1JFUCA9IEBFR1JFUEAKK0VYRUVYVCA9IEBFWEVFWFRACitHQ09WID0gQEdDT1ZACitHRVRURVhUX01BQ1JPX1ZFUlNJT04gPSBAR0VUVEVYVF9NQUNST19WRVJTSU9OQAorR01TR0ZNVCA9IEBHTVNHRk1UQAorR01TR0ZNVF8wMTUgPSBAR01TR0ZNVF8wMTVACitHUkVQID0gQEdSRVBACitIQVZFX0RPVCA9IEBIQVZFX0RPVEAKK0lOU1RBTEwgPSBASU5TVEFMTEAKK0lOU1RBTExfREFUQSA9IEBJTlNUQUxMX0RBVEFACitJTlNUQUxMX1BST0dSQU0gPSBASU5TVEFMTF9QUk9HUkFNQAorSU5TVEFMTF9TQ1JJUFQgPSBASU5TVEFMTF9TQ1JJUFRACitJTlNUQUxMX1NUUklQX1BST0dSQU0gPSBASU5TVEFMTF9TVFJJUF9QUk9HUkFNQAorSU5UTExJQlMgPSBASU5UTExJQlNACitJTlRMX01BQ09TWF9MSUJTID0gQElOVExfTUFDT1NYX0xJQlNACitMQ09WID0gQExDT1ZACitMQ09WX0dFTkhUTUwgPSBATENPVl9HRU5IVE1MQAorTERGTEFHUyA9IEBMREZMQUdTQAorTEVYID0gQExFWEAKK0xFWExJQiA9IEBMRVhMSUJACitMRVhfT1VUUFVUX1JPT1QgPSBATEVYX09VVFBVVF9ST09UQAorTElCSUNPTlYgPSBATElCSUNPTlZACitMSUJJTlRMID0gQExJQklOVExACitMSUJPQkpTID0gQExJQk9CSlNACitMSUJTID0gQExJQlNACitMVExJQklDT05WID0gQExUTElCSUNPTlZACitMVExJQklOVEwgPSBATFRMSUJJTlRMQAorTFRMSUJPQkpTID0gQExUTElCT0JKU0AKK01BS0VJTkZPID0gQE1BS0VJTkZPQAorTUtESVJfUCA9IEBNS0RJUl9QQAorTVNHRk1UID0gQE1TR0ZNVEAKK01TR0ZNVF8wMTUgPSBATVNHRk1UXzAxNUAKK01TR01FUkdFID0gQE1TR01FUkdFQAorT0JKRVhUID0gQE9CSkVYVEAKK1BBQ0tBR0UgPSBAUEFDS0FHRUAKK1BBQ0tBR0VfQlVHUkVQT1JUID0gQFBBQ0tBR0VfQlVHUkVQT1JUQAorUEFDS0FHRV9OQU1FID0gQFBBQ0tBR0VfTkFNRUAKK1BBQ0tBR0VfU1RSSU5HID0gQFBBQ0tBR0VfU1RSSU5HQAorUEFDS0FHRV9UQVJOQU1FID0gQFBBQ0tBR0VfVEFSTkFNRUAKK1BBQ0tBR0VfVVJMID0gQFBBQ0tBR0VfVVJMQAorUEFDS0FHRV9WRVJTSU9OID0gQFBBQ0tBR0VfVkVSU0lPTkAKK1BBVEhfU0VQQVJBVE9SID0gQFBBVEhfU0VQQVJBVE9SQAorUEVSTCA9IEBQRVJMQAorUEVSTF9DT1ZFUiA9IEBQRVJMX0NPVkVSQAorUEVSTF9DT1ZFUkFHRSA9IEBQRVJMX0NPVkVSQUdFQAorUEVSTF9MSUJESVIgPSBAUEVSTF9MSUJESVJACitQS0dfQ09ORklHID0gQFBLR19DT05GSUdACitQS0dfQ09ORklHX0xJQkRJUiA9IEBQS0dfQ09ORklHX0xJQkRJUkAKK1BLR19DT05GSUdfUEFUSCA9IEBQS0dfQ09ORklHX1BBVEhACitQTzRBID0gQFBPNEFACitQT0QyTUFOID0gQFBPRDJNQU5ACitQT1NVQiA9IEBQT1NVQkAKK1JBTkxJQiA9IEBSQU5MSUJACitTRUxJTlVYX0xJQlMgPSBAU0VMSU5VWF9MSUJTQAorU0VUX01BS0UgPSBAU0VUX01BS0VACitTSEVMTCA9IEBTSEVMTEAKK1NTRF9MSUJTID0gQFNTRF9MSUJTQAorU1RSSVAgPSBAU1RSSVBACitVU0VfTkxTID0gQFVTRV9OTFNACitVU0VfUE80QSA9IEBVU0VfUE80QUAKK1VTRV9VTklDT0RFID0gQFVTRV9VTklDT0RFQAorVkVSU0lPTiA9IEBWRVJTSU9OQAorWEdFVFRFWFQgPSBAWEdFVFRFWFRACitYR0VUVEVYVF8wMTUgPSBAWEdFVFRFWFRfMDE1QAorWEdFVFRFWFRfRVhUUkFfT1BUSU9OUyA9IEBYR0VUVEVYVF9FWFRSQV9PUFRJT05TQAorWkxJQl9MSUJTID0gQFpMSUJfTElCU0AKK2Fic19idWlsZGRpciA9IEBhYnNfYnVpbGRkaXJACithYnNfc3JjZGlyID0gQGFic19zcmNkaXJACithYnNfdG9wX2J1aWxkZGlyID0gQGFic190b3BfYnVpbGRkaXJACithYnNfdG9wX3NyY2RpciA9IEBhYnNfdG9wX3NyY2RpckAKK2FjX2N0X0NDID0gQGFjX2N0X0NDQAorYWNfY3RfQ1hYID0gQGFjX2N0X0NYWEAKK2FkbWluZGlyID0gQGFkbWluZGlyQAorYW1fX2luY2x1ZGUgPSBAYW1fX2luY2x1ZGVACithbV9fbGVhZGluZ19kb3QgPSBAYW1fX2xlYWRpbmdfZG90QAorYW1fX3F1b3RlID0gQGFtX19xdW90ZUAKK2FtX190YXIgPSBAYW1fX3RhckAKK2FtX191bnRhciA9IEBhbV9fdW50YXJACitiaW5kaXIgPSBAYmluZGlyQAorYnVpbGQgPSBAYnVpbGRACitidWlsZF9hbGlhcyA9IEBidWlsZF9hbGlhc0AKK2J1aWxkX2NwdSA9IEBidWlsZF9jcHVACitidWlsZF9vcyA9IEBidWlsZF9vc0AKK2J1aWxkX3ZlbmRvciA9IEBidWlsZF92ZW5kb3JACitidWlsZGRpciA9IEBidWlsZGRpckAKK2RhdGFkaXIgPSBAZGF0YWRpckAKK2RhdGFyb290ZGlyID0gQGRhdGFyb290ZGlyQAorZG9jZGlyID0gQGRvY2RpckAKK2R2aWRpciA9IEBkdmlkaXJACitleGVjX3ByZWZpeCA9IEBleGVjX3ByZWZpeEAKK2hvc3QgPSBAaG9zdEAKK2hvc3RfYWxpYXMgPSBAaG9zdF9hbGlhc0AKK2hvc3RfY3B1ID0gQGhvc3RfY3B1QAoraG9zdF9vcyA9IEBob3N0X29zQAoraG9zdF92ZW5kb3IgPSBAaG9zdF92ZW5kb3JACitodG1sZGlyID0gQGh0bWxkaXJACitpbmNsdWRlZGlyID0gQGluY2x1ZGVkaXJACitpbmZvZGlyID0gQGluZm9kaXJACitpbnN0YWxsX3NoID0gQGluc3RhbGxfc2hACitsaWJkaXIgPSBAbGliZGlyQAorbGliZXhlY2RpciA9IEBsaWJleGVjZGlyQAorbG9jYWxlZGlyID0gQGxvY2FsZWRpckAKK2xvY2Fsc3RhdGVkaXIgPSBAbG9jYWxzdGF0ZWRpckAKK2xvZ2RpciA9IEBsb2dkaXJACittYW5kaXIgPSBAbWFuZGlyQAorbWtkaXJfcCA9IEBta2Rpcl9wQAorb2xkaW5jbHVkZWRpciA9IEBvbGRpbmNsdWRlZGlyQAorcGRmZGlyID0gQHBkZmRpckAKK3ByZWZpeCA9IEBwcmVmaXhACitwcm9ncmFtX3RyYW5zZm9ybV9uYW1lID0gQHByb2dyYW1fdHJhbnNmb3JtX25hbWVACitwc2RpciA9IEBwc2RpckAKK3NiaW5kaXIgPSBAc2JpbmRpckAKK3NoYXJlZHN0YXRlZGlyID0gQHNoYXJlZHN0YXRlZGlyQAorc3JjZGlyID0gQHNyY2RpckAKK3N5c2NvbmZkaXIgPSBAc3lzY29uZmRpckAKK3RhcmdldF9hbGlhcyA9IEB0YXJnZXRfYWxpYXNACit0b3BfYnVpbGRfcHJlZml4ID0gQHRvcF9idWlsZF9wcmVmaXhACit0b3BfYnVpbGRkaXIgPSBAdG9wX2J1aWxkZGlyQAordG9wX3NyY2RpciA9IEB0b3Bfc3JjZGlyQAorU1VCRElSUyA9IG1rIHBvCitiaW5fU0NSSVBUUyA9IFwKKwlkcGtnLWFyY2hpdGVjdHVyZSBcCisJZHBrZy1idWlsZGZsYWdzIFwKKwlkcGtnLWJ1aWxkcGFja2FnZSBcCisJZHBrZy1jaGVja2J1aWxkZGVwcyBcCisJZHBrZy1kaXN0YWRkZmlsZSBcCisJZHBrZy1nZW5jaGFuZ2VzIFwKKwlkcGtnLWdlbmNvbnRyb2wgXAorCWRwa2ctZ2Vuc3ltYm9scyBcCisJZHBrZy1tYWludHNjcmlwdC1oZWxwZXIgXAorCWRwa2ctbWVyZ2VjaGFuZ2Vsb2dzIFwKKwlkcGtnLW5hbWUgXAorCWRwa2ctcGFyc2VjaGFuZ2Vsb2cgXAorCWRwa2ctc2NhbnBhY2thZ2VzIFwKKwlkcGtnLXNjYW5zb3VyY2VzIFwKKwlkcGtnLXNobGliZGVwcyBcCisJZHBrZy1zb3VyY2UgXAorCWRwa2ctdmVuZG9yCisKK2NoYW5nZWxvZ2RpciA9ICQocGtnbGliZGlyKS9wYXJzZWNoYW5nZWxvZworY2hhbmdlbG9nX1NDUklQVFMgPSBcCisJY2hhbmdlbG9nL2RlYmlhbgorCitFWFRSQV9ESVNUID0gXAorCWRwa2ctYXJjaGl0ZWN0dXJlLnBsIFwKKwlkcGtnLWJ1aWxkZmxhZ3MucGwgXAorCWRwa2ctYnVpbGRwYWNrYWdlLnBsIFwKKwlkcGtnLWNoZWNrYnVpbGRkZXBzLnBsIFwKKwlkcGtnLWRpc3RhZGRmaWxlLnBsIFwKKwlkcGtnLWdlbmNoYW5nZXMucGwgXAorCWRwa2ctZ2VuY29udHJvbC5wbCBcCisJZHBrZy1nZW5zeW1ib2xzLnBsIFwKKwlkcGtnLW1haW50c2NyaXB0LWhlbHBlci5zaCBcCisJZHBrZy1tZXJnZWNoYW5nZWxvZ3MucGwgXAorCWRwa2ctbmFtZS5wbCBcCisJZHBrZy1wYXJzZWNoYW5nZWxvZy5wbCBcCisJZHBrZy1zY2FucGFja2FnZXMucGwgXAorCWRwa2ctc2NhbnNvdXJjZXMucGwgXAorCWRwa2ctc2hsaWJkZXBzLnBsIFwKKwlkcGtnLXNvdXJjZS5wbCBcCisJZHBrZy12ZW5kb3IucGwgXAorCWNoYW5nZWxvZy9kZWJpYW4ucGwgXAorCSQodGVzdF9jYXNlcykgXAorCSQodGVzdF9kYXRhKQorCitDTEVBTkZJTEVTID0gXAorCSQoYmluX1NDUklQVFMpICQoY2hhbmdlbG9nX1NDUklQVFMpCisKK3BlcmxsaWJkaXIgPSAkKFBFUkxfTElCRElSKQorbm9iYXNlX2Rpc3RfcGVybGxpYl9EQVRBID0gXAorCURwa2cvQXJjaC5wbSBcCisJRHBrZy9CdWlsZEZsYWdzLnBtIFwKKwlEcGtnL0J1aWxkT3B0aW9ucy5wbSBcCisJRHBrZy9DaGFuZ2Vsb2cucG0gXAorCURwa2cvQ2hhbmdlbG9nL0RlYmlhbi5wbSBcCisJRHBrZy9DaGFuZ2Vsb2cvRW50cnkucG0gXAorCURwa2cvQ2hhbmdlbG9nL0VudHJ5L0RlYmlhbi5wbSBcCisJRHBrZy9DaGFuZ2Vsb2cvUGFyc2UucG0gXAorCURwa2cvQ2hlY2tzdW1zLnBtIFwKKwlEcGtnL0NvbXByZXNzaW9uLnBtIFwKKwlEcGtnL0NvbXByZXNzaW9uL0ZpbGVIYW5kbGUucG0gXAorCURwa2cvQ29tcHJlc3Npb24vUHJvY2Vzcy5wbSBcCisJRHBrZy9Db25mLnBtIFwKKwlEcGtnL0NvbnRyb2wucG0gXAorCURwa2cvQ29udHJvbC9DaGFuZ2Vsb2cucG0gXAorCURwa2cvQ29udHJvbC9GaWVsZHMucG0gXAorCURwa2cvQ29udHJvbC9JbmZvLnBtIFwKKwlEcGtnL0NvbnRyb2wvSGFzaC5wbSBcCisJRHBrZy9Db250cm9sL1R5cGVzLnBtIFwKKwlEcGtnL0RlcHMucG0gXAorCURwa2cvRXJyb3JIYW5kbGluZy5wbSBcCisJRHBrZy9FeGl0LnBtIFwKKwlEcGtnL0dldHRleHQucG0gXAorCURwa2cvSW5kZXgucG0gXAorCURwa2cvSW50ZXJmYWNlL1N0b3JhYmxlLnBtIFwKKwlEcGtnL0lQQy5wbSBcCisJRHBrZy9QYXRoLnBtIFwKKwlEcGtnL1NobGlicy5wbSBcCisJRHBrZy9TaGxpYnMvT2JqZHVtcC5wbSBcCisJRHBrZy9TaGxpYnMvU3ltYm9sLnBtIFwKKwlEcGtnL1NobGlicy9TeW1ib2xGaWxlLnBtIFwKKwlEcGtnL1NobGlicy9DcHBmaWx0LnBtIFwKKwlEcGtnL1NvdXJjZS9BcmNoaXZlLnBtIFwKKwlEcGtnL1NvdXJjZS9GdW5jdGlvbnMucG0gXAorCURwa2cvU291cmNlL1BhY2thZ2UucG0gXAorCURwa2cvU291cmNlL1BhY2thZ2UvVjEucG0gXAorCURwa2cvU291cmNlL1BhY2thZ2UvVjIucG0gXAorCURwa2cvU291cmNlL1BhY2thZ2UvVjMvYnpyLnBtIFwKKwlEcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2N1c3RvbS5wbSBcCisJRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9uYXRpdmUucG0gXAorCURwa2cvU291cmNlL1BhY2thZ2UvVjMvZ2l0LnBtIFwKKwlEcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtIFwKKwlEcGtnL1NvdXJjZS9QYXRjaC5wbSBcCisJRHBrZy9TdWJzdHZhcnMucG0gXAorCURwa2cvVmFycy5wbSBcCisJRHBrZy9WZW5kb3IucG0gXAorCURwa2cvVmVuZG9yL0RlYmlhbi5wbSBcCisJRHBrZy9WZW5kb3IvRGVmYXVsdC5wbSBcCisJRHBrZy9WZW5kb3IvVWJ1bnR1LnBtIFwKKwlEcGtnL1ZlcnNpb24ucG0gXAorCURwa2cucG0KKworCisjIEtlZXAgaXQgZXZlbiBpZiBlbXB0eSB0byBoYXZlIG1hbjNkaXIgY29ycmVjdGx5IHNldAorbWFuM19NQU5TID0gCitkb19wZXJsX3N1YnN0ID0gJChBTV9WX0dFTikgXAorCQlzZWQgLWUgInM6XlwjIVs6c3BhY2U6XSovdXNyL2Jpbi9wZXJsOlwjISQoUEVSTCk6IiBcCisJCSAgICAtZSAiczpcJCRkcGtnbGliZGlyW1s6c3BhY2U6XV0qPVtbOnNwYWNlOl1dKlsnXCJdW14nXCJdKlsnXCJdOlwkJGRwa2dsaWJkaXI9XCIkKHBrZ2xpYmRpcilcIjoiIFwKKwkJICAgIC1lICJzOlwkJHBrZ2RhdGFkaXJbWzpzcGFjZTpdXSo9W1s6c3BhY2U6XV0qWydcIl1bXidcIl0qWydcIl06XCQkcGtnZGF0YWRpcj1cIiQocGtnZGF0YWRpcilcIjoiIFwKKwkJICAgIC1lICJzOlwkJGFkbWluZGlyW1s6c3BhY2U6XV0qPVtbOnNwYWNlOl1dKlsnXCJdW14nXCJdKlsnXCJdOlwkJGFkbWluZGlyPVwiJChhZG1pbmRpcilcIjoiIFwKKwkJICAgIC1lICJzOlwkJHZlcnNpb25bWzpzcGFjZTpdXSo9W1s6c3BhY2U6XV0qWydcIl1bXidcIl0qW1wiJ106XCQkdmVyc2lvbj1cIiQoUEFDS0FHRV9WRVJTSU9OKVwiOiIKKworZG9fc2hlbGxfc3Vic3QgPSAkKEFNX1ZfR0VOKSBcCisJCSBzZWQgLWUgInM6XnZlcnNpb25bWzpzcGFjZTpdXSo9W1s6c3BhY2U6XV0qWydcIl1bXidcIl0qW1wiJ106dmVyc2lvbj1cIiQoUEFDS0FHRV9WRVJTSU9OKVwiOiIKKworVEVTVF9WRVJCT1NFID0gMAorVEVTVF9FTlZfVkFSUyA9IFwKKwlEUEtHX0RBVEFESVI9JChzcmNkaXIpLy4uIFwKKwlEUEtHX09SSUdJTlNfRElSPSQoc3JjZGlyKS90L29yaWdpbnMKKworVEVTVF9DT1ZFUkFHRSA9ICQoUEVSTF9DT1ZFUkFHRSkKK3Rlc3RfdG1wZGlyID0gdC50bXAKK3Rlc3RfY2FzZXMgPSBcCisJdC8wMDBfcG9kLnQgXAorCXQvMTAwX0Rwa2dfVmVyc2lvbi50IFwKKwl0LzE5MF9EcGtnX1NobGlic19DcHBmaWx0LnQgXAorCXQvMjAwX0Rwa2dfU2hsaWJzLnQgXAorCXQvMzAwX0Rwa2dfQnVpbGRPcHRpb25zLnQgXAorCXQvNDAwX0Rwa2dfRGVwcy50IFwKKwl0LzUwMF9EcGtnX1BhdGgudCBcCisJdC82MDBfRHBrZ19DaGFuZ2Vsb2cudCBcCisJdC82MDBfRHBrZ19DaGFuZ2Vsb2dfVWJ1bnR1LnQgXAorCXQvNzAwX0Rwa2dfQ29udHJvbC50IFwKKwl0Lzc1MF9EcGtnX1N1YnN0dmFycy50IFwKKwl0LzgwMF9EcGtnX0lQQy50IFwKKwl0Lzg1MF9EcGtnX0NvbXByZXNzaW9uLnQgXAorCXQvOTEwX21lcmdlX2NoYW5nZWxvZ3MudAorCitjaGVja19EQVRBID0gXAorCSQodGVzdF90bXBkaXIpLzIwMF9EcGtnX1NobGlicy9vYmpkdW1wLmJhc2ljdGFncy1hbWQ2NCBcCisJJCh0ZXN0X3RtcGRpcikvMjAwX0Rwa2dfU2hsaWJzL29iamR1bXAuYmFzaWN0YWdzLWkzODYgXAorCSQodGVzdF90bXBkaXIpLzIwMF9EcGtnX1NobGlicy9vYmpkdW1wLnBhdHRlcm5zCisKK3Rlc3RfZGF0YSA9IFwKKwl0LzIwMF9EcGtnX1NobGlicy9zeW1ib2xzLmZha2UtMSBcCisJdC8yMDBfRHBrZ19TaGxpYnMvc3ltYm9scy5mYWtlLTIgXAorCXQvMjAwX0Rwa2dfU2hsaWJzL3N5bWJvbHMuZmFrZS0zIFwKKwl0LzIwMF9EcGtnX1NobGlicy9zeW1ib2xzLmluY2x1ZGUtMSBcCisJdC8yMDBfRHBrZ19TaGxpYnMvc3ltYm9scy5pbmNsdWRlLTIgXAorCXQvMjAwX0Rwa2dfU2hsaWJzL3N5bWJvbHMuaW5jbHVkZS0zIFwKKwl0LzIwMF9EcGtnX1NobGlicy9iYXNpY3RhZ3Muc3ltYm9scyBcCisJdC8yMDBfRHBrZ19TaGxpYnMvYmFzaWN0YWdzLmMgXAorCXQvMjAwX0Rwa2dfU2hsaWJzL3BhdHRlcm5zLnN5bWJvbHMgXAorCXQvMjAwX0Rwa2dfU2hsaWJzL3BhdHRlcm5zLmNwcCBcCisJdC8yMDBfRHBrZ19TaGxpYnMvcGF0dGVybnMubWFwIFwKKwl0LzIwMF9EcGtnX1NobGlicy9sZC5zby5jb25mIFwKKwl0LzIwMF9EcGtnX1NobGlicy9sZC5zby5jb25mXzIgXAorCXQvMjAwX0Rwa2dfU2hsaWJzL2xkLnNvLmNvbmYuZC9ub3JtYWwuY29uZiBcCisJdC8yMDBfRHBrZ19TaGxpYnMvbGQuc28uY29uZi5kL2luZl9yZWN1cnNlLmNvbmYgXAorCXQvMjAwX0Rwa2dfU2hsaWJzL2xkLnNvLmNvbmYuZC9yZWN1cnNpdmUuY29uZiBcCisJdC8yMDBfRHBrZ19TaGxpYnMvb2JqZHVtcC5nbGliLWlhNjQgXAorCXQvMjAwX0Rwa2dfU2hsaWJzL29iamR1bXAubGliYzYtMi4zIFwKKwl0LzIwMF9EcGtnX1NobGlicy9vYmpkdW1wLmxpYmM2LTIuNiBcCisJdC8yMDBfRHBrZ19TaGxpYnMvb2JqZHVtcC5kYmQtcGcgXAorCXQvMjAwX0Rwa2dfU2hsaWJzL29iamR1bXAubHMgXAorCXQvNjAwX0Rwa2dfQ2hhbmdlbG9nL2NvdW50bWUgXAorCXQvNjAwX0Rwa2dfQ2hhbmdlbG9nL2ZpZWxkcyBcCisJdC82MDBfRHBrZ19DaGFuZ2Vsb2cvbWlzcGxhY2VkLXR6IFwKKwl0LzYwMF9EcGtnX0NoYW5nZWxvZy9yZWdyZXNzaW9ucyBcCisJdC82MDBfRHBrZ19DaGFuZ2Vsb2cvc2hhZG93IFwKKwl0LzcwMF9EcGtnX0NvbnRyb2wvY29udHJvbC0xIFwKKwl0Lzc1MF9EcGtnX1N1YnN0dmFycy9zdWJzdHZhcnMxIFwKKwl0LzkxMF9tZXJnZV9jaGFuZ2Vsb2dzL2NoLW9sZCBcCisJdC85MTBfbWVyZ2VfY2hhbmdlbG9ncy9jaC1hIFwKKwl0LzkxMF9tZXJnZV9jaGFuZ2Vsb2dzL2NoLWIgXAorCXQvOTEwX21lcmdlX2NoYW5nZWxvZ3MvY2gtbWVyZ2VkIFwKKwl0LzkxMF9tZXJnZV9jaGFuZ2Vsb2dzL2NoLW1lcmdlZC1iYXNpYyBcCisJdC85MTBfbWVyZ2VfY2hhbmdlbG9ncy9jaC1tZXJnZWQtcHIgXAorCXQvOTEwX21lcmdlX2NoYW5nZWxvZ3MvY2gtbWVyZ2VkLXByLWJhc2ljIFwKKwl0L29yaWdpbnMvZGViaWFuIFwKKwl0L29yaWdpbnMvZGVmYXVsdCBcCisJdC9vcmlnaW5zL3VidW50dQorCitvYmpkdW1wX2xpYl9uYW1lID0gbGliYGJhc2VuYW1lICRAYC5zbworYWxsOiBhbGwtcmVjdXJzaXZlCisKKy5TVUZGSVhFUzoKKyQoc3JjZGlyKS9NYWtlZmlsZS5pbjogICQoc3JjZGlyKS9NYWtlZmlsZS5hbSAkKHRvcF9zcmNkaXIpL01ha2VjaGVjay5hbSAkKGFtX19jb25maWd1cmVfZGVwcykKKwlAZm9yIGRlcCBpbiAkPzsgZG8gXAorCSAgY2FzZSAnJChhbV9fY29uZmlndXJlX2RlcHMpJyBpbiBcCisJICAgICokJGRlcCopIFwKKwkgICAgICAoIGNkICQodG9wX2J1aWxkZGlyKSAmJiAkKE1BS0UpICQoQU1fTUFLRUZMQUdTKSBhbS0tcmVmcmVzaCApIFwKKwkgICAgICAgICYmIHsgaWYgdGVzdCAtZiAkQDsgdGhlbiBleGl0IDA7IGVsc2UgYnJlYWs7IGZpOyB9OyBcCisJICAgICAgZXhpdCAxOzsgXAorCSAgZXNhYzsgXAorCWRvbmU7IFwKKwllY2hvICcgY2QgJCh0b3Bfc3JjZGlyKSAmJiAkKEFVVE9NQUtFKSAtLWZvcmVpZ24gc2NyaXB0cy9NYWtlZmlsZSc7IFwKKwkkKGFtX19jZCkgJCh0b3Bfc3JjZGlyKSAmJiBcCisJICAkKEFVVE9NQUtFKSAtLWZvcmVpZ24gc2NyaXB0cy9NYWtlZmlsZQorLlBSRUNJT1VTOiBNYWtlZmlsZQorTWFrZWZpbGU6ICQoc3JjZGlyKS9NYWtlZmlsZS5pbiAkKHRvcF9idWlsZGRpcikvY29uZmlnLnN0YXR1cworCUBjYXNlICckPycgaW4gXAorCSAgKmNvbmZpZy5zdGF0dXMqKSBcCisJICAgIGNkICQodG9wX2J1aWxkZGlyKSAmJiAkKE1BS0UpICQoQU1fTUFLRUZMQUdTKSBhbS0tcmVmcmVzaDs7IFwKKwkgICopIFwKKwkgICAgZWNobyAnIGNkICQodG9wX2J1aWxkZGlyKSAmJiAkKFNIRUxMKSAuL2NvbmZpZy5zdGF0dXMgJChzdWJkaXIpLyRAICQoYW1fX2RlcGZpbGVzX21heWJlKSc7IFwKKwkgICAgY2QgJCh0b3BfYnVpbGRkaXIpICYmICQoU0hFTEwpIC4vY29uZmlnLnN0YXR1cyAkKHN1YmRpcikvJEAgJChhbV9fZGVwZmlsZXNfbWF5YmUpOzsgXAorCWVzYWM7CisKKyQodG9wX2J1aWxkZGlyKS9jb25maWcuc3RhdHVzOiAkKHRvcF9zcmNkaXIpL2NvbmZpZ3VyZSAkKENPTkZJR19TVEFUVVNfREVQRU5ERU5DSUVTKQorCWNkICQodG9wX2J1aWxkZGlyKSAmJiAkKE1BS0UpICQoQU1fTUFLRUZMQUdTKSBhbS0tcmVmcmVzaAorCiskKHRvcF9zcmNkaXIpL2NvbmZpZ3VyZTogICQoYW1fX2NvbmZpZ3VyZV9kZXBzKQorCWNkICQodG9wX2J1aWxkZGlyKSAmJiAkKE1BS0UpICQoQU1fTUFLRUZMQUdTKSBhbS0tcmVmcmVzaAorJChBQ0xPQ0FMX000KTogICQoYW1fX2FjbG9jYWxfbTRfZGVwcykKKwljZCAkKHRvcF9idWlsZGRpcikgJiYgJChNQUtFKSAkKEFNX01BS0VGTEFHUykgYW0tLXJlZnJlc2gKKyQoYW1fX2FjbG9jYWxfbTRfZGVwcyk6CitpbnN0YWxsLWJpblNDUklQVFM6ICQoYmluX1NDUklQVFMpCisJQCQoTk9STUFMX0lOU1RBTEwpCisJdGVzdCAteiAiJChiaW5kaXIpIiB8fCAkKE1LRElSX1ApICIkKERFU1RESVIpJChiaW5kaXIpIgorCUBsaXN0PSckKGJpbl9TQ1JJUFRTKSc7IHRlc3QgLW4gIiQoYmluZGlyKSIgfHwgbGlzdD07IFwKKwlmb3IgcCBpbiAkJGxpc3Q7IGRvIFwKKwkgIGlmIHRlc3QgLWYgIiQkcCI7IHRoZW4gZD07IGVsc2UgZD0iJChzcmNkaXIpLyI7IGZpOyBcCisJICBpZiB0ZXN0IC1mICIkJGQkJHAiOyB0aGVuIGVjaG8gIiQkZCQkcCI7IGVjaG8gIiQkcCI7IGVsc2UgOjsgZmk7IFwKKwlkb25lIHwgXAorCXNlZCAtZSAncDtzLC4qLywsO24nIFwKKwkgICAgLWUgJ2g7c3wuKnwufCcgXAorCSAgICAtZSAncDt4O3MsLiovLCw7JCh0cmFuc2Zvcm0pJyB8IHNlZCAnTjtOO047cyxcbiwgLGcnIHwgXAorCSQoQVdLKSAnQkVHSU4geyBmaWxlc1siLiJdID0gIiI7IGRpcnNbIi4iXSA9IDE7IH0gXAorCSAgeyBkPSQkMzsgaWYgKGRpcnNbZF0gIT0gMSkgeyBwcmludCAiZCIsIGQ7IGRpcnNbZF0gPSAxIH0gXAorCSAgICBpZiAoJCQyID09ICQkNCkgeyBmaWxlc1tkXSA9IGZpbGVzW2RdICIgIiAkJDE7IFwKKwkgICAgICBpZiAoKytuW2RdID09ICQoYW1fX2luc3RhbGxfbWF4KSkgeyBcCisJCXByaW50ICJmIiwgZCwgZmlsZXNbZF07IG5bZF0gPSAwOyBmaWxlc1tkXSA9ICIiIH0gfSBcCisJICAgIGVsc2UgeyBwcmludCAiZiIsIGQgIi8iICQkNCwgJCQxIH0gfSBcCisJICBFTkQgeyBmb3IgKGQgaW4gZmlsZXMpIHByaW50ICJmIiwgZCwgZmlsZXNbZF0gfScgfCBcCisJd2hpbGUgcmVhZCB0eXBlIGRpciBmaWxlczsgZG8gXAorCSAgICAgaWYgdGVzdCAiJCRkaXIiID0gLjsgdGhlbiBkaXI9OyBlbHNlIGRpcj0vJCRkaXI7IGZpOyBcCisJICAgICB0ZXN0IC16ICIkJGZpbGVzIiB8fCB7IFwKKwkgICAgICAgZWNobyAiICQoSU5TVEFMTF9TQ1JJUFQpICQkZmlsZXMgJyQoREVTVERJUikkKGJpbmRpcikkJGRpciciOyBcCisJICAgICAgICQoSU5TVEFMTF9TQ1JJUFQpICQkZmlsZXMgIiQoREVTVERJUikkKGJpbmRpcikkJGRpciIgfHwgZXhpdCAkJD87IFwKKwkgICAgIH0gXAorCTsgZG9uZQorCit1bmluc3RhbGwtYmluU0NSSVBUUzoKKwlAJChOT1JNQUxfVU5JTlNUQUxMKQorCUBsaXN0PSckKGJpbl9TQ1JJUFRTKSc7IHRlc3QgLW4gIiQoYmluZGlyKSIgfHwgZXhpdCAwOyBcCisJZmlsZXM9YGZvciBwIGluICQkbGlzdDsgZG8gZWNobyAiJCRwIjsgZG9uZSB8IFwKKwkgICAgICAgc2VkIC1lICdzLC4qLywsOyQodHJhbnNmb3JtKSdgOyBcCisJdGVzdCAtbiAiJCRsaXN0IiB8fCBleGl0IDA7IFwKKwllY2hvICIgKCBjZCAnJChERVNURElSKSQoYmluZGlyKScgJiYgcm0gLWYiICQkZmlsZXMgIikiOyBcCisJY2QgIiQoREVTVERJUikkKGJpbmRpcikiICYmIHJtIC1mICQkZmlsZXMKK2luc3RhbGwtY2hhbmdlbG9nU0NSSVBUUzogJChjaGFuZ2Vsb2dfU0NSSVBUUykKKwlAJChOT1JNQUxfSU5TVEFMTCkKKwl0ZXN0IC16ICIkKGNoYW5nZWxvZ2RpcikiIHx8ICQoTUtESVJfUCkgIiQoREVTVERJUikkKGNoYW5nZWxvZ2RpcikiCisJQGxpc3Q9JyQoY2hhbmdlbG9nX1NDUklQVFMpJzsgdGVzdCAtbiAiJChjaGFuZ2Vsb2dkaXIpIiB8fCBsaXN0PTsgXAorCWZvciBwIGluICQkbGlzdDsgZG8gXAorCSAgaWYgdGVzdCAtZiAiJCRwIjsgdGhlbiBkPTsgZWxzZSBkPSIkKHNyY2RpcikvIjsgZmk7IFwKKwkgIGlmIHRlc3QgLWYgIiQkZCQkcCI7IHRoZW4gZWNobyAiJCRkJCRwIjsgZWNobyAiJCRwIjsgZWxzZSA6OyBmaTsgXAorCWRvbmUgfCBcCisJc2VkIC1lICdwO3MsLiovLCw7bicgXAorCSAgICAtZSAnaDtzfC4qfC58JyBcCisJICAgIC1lICdwO3g7cywuKi8sLDskKHRyYW5zZm9ybSknIHwgc2VkICdOO047TjtzLFxuLCAsZycgfCBcCisJJChBV0spICdCRUdJTiB7IGZpbGVzWyIuIl0gPSAiIjsgZGlyc1siLiJdID0gMTsgfSBcCisJICB7IGQ9JCQzOyBpZiAoZGlyc1tkXSAhPSAxKSB7IHByaW50ICJkIiwgZDsgZGlyc1tkXSA9IDEgfSBcCisJICAgIGlmICgkJDIgPT0gJCQ0KSB7IGZpbGVzW2RdID0gZmlsZXNbZF0gIiAiICQkMTsgXAorCSAgICAgIGlmICgrK25bZF0gPT0gJChhbV9faW5zdGFsbF9tYXgpKSB7IFwKKwkJcHJpbnQgImYiLCBkLCBmaWxlc1tkXTsgbltkXSA9IDA7IGZpbGVzW2RdID0gIiIgfSB9IFwKKwkgICAgZWxzZSB7IHByaW50ICJmIiwgZCAiLyIgJCQ0LCAkJDEgfSB9IFwKKwkgIEVORCB7IGZvciAoZCBpbiBmaWxlcykgcHJpbnQgImYiLCBkLCBmaWxlc1tkXSB9JyB8IFwKKwl3aGlsZSByZWFkIHR5cGUgZGlyIGZpbGVzOyBkbyBcCisJICAgICBpZiB0ZXN0ICIkJGRpciIgPSAuOyB0aGVuIGRpcj07IGVsc2UgZGlyPS8kJGRpcjsgZmk7IFwKKwkgICAgIHRlc3QgLXogIiQkZmlsZXMiIHx8IHsgXAorCSAgICAgICBlY2hvICIgJChJTlNUQUxMX1NDUklQVCkgJCRmaWxlcyAnJChERVNURElSKSQoY2hhbmdlbG9nZGlyKSQkZGlyJyI7IFwKKwkgICAgICAgJChJTlNUQUxMX1NDUklQVCkgJCRmaWxlcyAiJChERVNURElSKSQoY2hhbmdlbG9nZGlyKSQkZGlyIiB8fCBleGl0ICQkPzsgXAorCSAgICAgfSBcCisJOyBkb25lCisKK3VuaW5zdGFsbC1jaGFuZ2Vsb2dTQ1JJUFRTOgorCUAkKE5PUk1BTF9VTklOU1RBTEwpCisJQGxpc3Q9JyQoY2hhbmdlbG9nX1NDUklQVFMpJzsgdGVzdCAtbiAiJChjaGFuZ2Vsb2dkaXIpIiB8fCBleGl0IDA7IFwKKwlmaWxlcz1gZm9yIHAgaW4gJCRsaXN0OyBkbyBlY2hvICIkJHAiOyBkb25lIHwgXAorCSAgICAgICBzZWQgLWUgJ3MsLiovLCw7JCh0cmFuc2Zvcm0pJ2A7IFwKKwl0ZXN0IC1uICIkJGxpc3QiIHx8IGV4aXQgMDsgXAorCWVjaG8gIiAoIGNkICckKERFU1RESVIpJChjaGFuZ2Vsb2dkaXIpJyAmJiBybSAtZiIgJCRmaWxlcyAiKSI7IFwKKwljZCAiJChERVNURElSKSQoY2hhbmdlbG9nZGlyKSIgJiYgcm0gLWYgJCRmaWxlcworaW5zdGFsbC1tYW4zOiAkKG1hbjNfTUFOUykKKwlAJChOT1JNQUxfSU5TVEFMTCkKKwl0ZXN0IC16ICIkKG1hbjNkaXIpIiB8fCAkKE1LRElSX1ApICIkKERFU1RESVIpJChtYW4zZGlyKSIKKwlAbGlzdD0nJChtYW4zX01BTlMpJzsgdGVzdCAtbiAiJChtYW4zZGlyKSIgfHwgZXhpdCAwOyBcCisJeyBmb3IgaSBpbiAkJGxpc3Q7IGRvIGVjaG8gIiQkaSI7IGRvbmU7IFwKKwl9IHwgd2hpbGUgcmVhZCBwOyBkbyBcCisJICBpZiB0ZXN0IC1mICQkcDsgdGhlbiBkPTsgZWxzZSBkPSIkKHNyY2RpcikvIjsgZmk7IFwKKwkgIGVjaG8gIiQkZCQkcCI7IGVjaG8gIiQkcCI7IFwKKwlkb25lIHwgXAorCXNlZCAtZSAnbjtzLC4qLywsO3A7aDtzLC4qXC4sLDtzLF5bXjNdWzAtOWEtel0qJCQsMyw7eCcgXAorCSAgICAgIC1lICdzLFwuWzAtOWEtel0qJCQsLDskKHRyYW5zZm9ybSk7RztzLFxuLC4sJyB8IFwKKwlzZWQgJ047TjtzLFxuLCAsZycgfCB7IFwKKwlsaXN0PTsgd2hpbGUgcmVhZCBmaWxlIGJhc2UgaW5zdDsgZG8gXAorCSAgaWYgdGVzdCAiJCRiYXNlIiA9ICIkJGluc3QiOyB0aGVuIGxpc3Q9IiQkbGlzdCAkJGZpbGUiOyBlbHNlIFwKKwkgICAgZWNobyAiICQoSU5TVEFMTF9EQVRBKSAnJCRmaWxlJyAnJChERVNURElSKSQobWFuM2RpcikvJCRpbnN0JyI7IFwKKwkgICAgJChJTlNUQUxMX0RBVEEpICIkJGZpbGUiICIkKERFU1RESVIpJChtYW4zZGlyKS8kJGluc3QiIHx8IGV4aXQgJCQ/OyBcCisJICBmaTsgXAorCWRvbmU7IFwKKwlmb3IgaSBpbiAkJGxpc3Q7IGRvIGVjaG8gIiQkaSI7IGRvbmUgfCAkKGFtX19iYXNlX2xpc3QpIHwgXAorCXdoaWxlIHJlYWQgZmlsZXM7IGRvIFwKKwkgIHRlc3QgLXogIiQkZmlsZXMiIHx8IHsgXAorCSAgICBlY2hvICIgJChJTlNUQUxMX0RBVEEpICQkZmlsZXMgJyQoREVTVERJUikkKG1hbjNkaXIpJyI7IFwKKwkgICAgJChJTlNUQUxMX0RBVEEpICQkZmlsZXMgIiQoREVTVERJUikkKG1hbjNkaXIpIiB8fCBleGl0ICQkPzsgfTsgXAorCWRvbmU7IH0KKwordW5pbnN0YWxsLW1hbjM6CisJQCQoTk9STUFMX1VOSU5TVEFMTCkKKwlAbGlzdD0nJChtYW4zX01BTlMpJzsgdGVzdCAtbiAiJChtYW4zZGlyKSIgfHwgZXhpdCAwOyBcCisJZmlsZXM9YHsgZm9yIGkgaW4gJCRsaXN0OyBkbyBlY2hvICIkJGkiOyBkb25lOyBcCisJfSB8IHNlZCAtZSAncywuKi8sLDtoO3MsLipcLiwsO3MsXlteM11bMC05YS16XSokJCwzLDt4JyBcCisJICAgICAgLWUgJ3MsXC5bMC05YS16XSokJCwsOyQodHJhbnNmb3JtKTtHO3MsXG4sLiwnYDsgXAorCXRlc3QgLXogIiQkZmlsZXMiIHx8IHsgXAorCSAgZWNobyAiICggY2QgJyQoREVTVERJUikkKG1hbjNkaXIpJyAmJiBybSAtZiIgJCRmaWxlcyAiKSI7IFwKKwkgIGNkICIkKERFU1RESVIpJChtYW4zZGlyKSIgJiYgcm0gLWYgJCRmaWxlczsgfQoraW5zdGFsbC1ub2Jhc2VfZGlzdF9wZXJsbGliREFUQTogJChub2Jhc2VfZGlzdF9wZXJsbGliX0RBVEEpCisJQCQoTk9STUFMX0lOU1RBTEwpCisJdGVzdCAteiAiJChwZXJsbGliZGlyKSIgfHwgJChNS0RJUl9QKSAiJChERVNURElSKSQocGVybGxpYmRpcikiCisJQGxpc3Q9JyQobm9iYXNlX2Rpc3RfcGVybGxpYl9EQVRBKSc7IHRlc3QgLW4gIiQocGVybGxpYmRpcikiIHx8IGxpc3Q9OyBcCisJJChhbV9fbm9iYXNlX2xpc3QpIHwgd2hpbGUgcmVhZCBkaXIgZmlsZXM7IGRvIFwKKwkgIHhmaWxlcz07IGZvciBmaWxlIGluICQkZmlsZXM7IGRvIFwKKwkgICAgaWYgdGVzdCAtZiAiJCRmaWxlIjsgdGhlbiB4ZmlsZXM9IiQkeGZpbGVzICQkZmlsZSI7IFwKKwkgICAgZWxzZSB4ZmlsZXM9IiQkeGZpbGVzICQoc3JjZGlyKS8kJGZpbGUiOyBmaTsgZG9uZTsgXAorCSAgdGVzdCAteiAiJCR4ZmlsZXMiIHx8IHsgXAorCSAgICB0ZXN0ICJ4JCRkaXIiID0geC4gfHwgeyBcCisJICAgICAgZWNobyAiJChNS0RJUl9QKSAnJChERVNURElSKSQocGVybGxpYmRpcikvJCRkaXInIjsgXAorCSAgICAgICQoTUtESVJfUCkgIiQoREVTVERJUikkKHBlcmxsaWJkaXIpLyQkZGlyIjsgfTsgXAorCSAgICBlY2hvICIgJChJTlNUQUxMX0RBVEEpICQkeGZpbGVzICckKERFU1RESVIpJChwZXJsbGliZGlyKS8kJGRpciciOyBcCisJICAgICQoSU5TVEFMTF9EQVRBKSAkJHhmaWxlcyAiJChERVNURElSKSQocGVybGxpYmRpcikvJCRkaXIiIHx8IGV4aXQgJCQ/OyB9OyBcCisJZG9uZQorCit1bmluc3RhbGwtbm9iYXNlX2Rpc3RfcGVybGxpYkRBVEE6CisJQCQoTk9STUFMX1VOSU5TVEFMTCkKKwlAbGlzdD0nJChub2Jhc2VfZGlzdF9wZXJsbGliX0RBVEEpJzsgdGVzdCAtbiAiJChwZXJsbGliZGlyKSIgfHwgbGlzdD07IFwKKwkkKGFtX19ub2Jhc2Vfc3RyaXBfc2V0dXApOyBmaWxlcz1gJChhbV9fbm9iYXNlX3N0cmlwKWA7IFwKKwl0ZXN0IC1uICIkJGZpbGVzIiB8fCBleGl0IDA7IFwKKwllY2hvICIgKCBjZCAnJChERVNURElSKSQocGVybGxpYmRpciknICYmIHJtIC1mIiAkJGZpbGVzICIpIjsgXAorCWNkICIkKERFU1RESVIpJChwZXJsbGliZGlyKSIgJiYgcm0gLWYgJCRmaWxlcworCisjIFRoaXMgZGlyZWN0b3J5J3Mgc3ViZGlyZWN0b3JpZXMgYXJlIG1vc3RseSBpbmRlcGVuZGVudDsgeW91IGNhbiBjZAorIyBpbnRvIHRoZW0gYW5kIHJ1biBgbWFrZScgd2l0aG91dCBnb2luZyB0aHJvdWdoIHRoaXMgTWFrZWZpbGUuCisjIFRvIGNoYW5nZSB0aGUgdmFsdWVzIG9mIGBtYWtlJyB2YXJpYWJsZXM6IGluc3RlYWQgb2YgZWRpdGluZyBNYWtlZmlsZXMsCisjICgxKSBpZiB0aGUgdmFyaWFibGUgaXMgc2V0IGluIGBjb25maWcuc3RhdHVzJywgZWRpdCBgY29uZmlnLnN0YXR1cycKKyMgICAgICh3aGljaCB3aWxsIGNhdXNlIHRoZSBNYWtlZmlsZXMgdG8gYmUgcmVnZW5lcmF0ZWQgd2hlbiB5b3UgcnVuIGBtYWtlJyk7CisjICgyKSBvdGhlcndpc2UsIHBhc3MgdGhlIGRlc2lyZWQgdmFsdWVzIG9uIHRoZSBgbWFrZScgY29tbWFuZCBsaW5lLgorJChSRUNVUlNJVkVfVEFSR0VUUyk6CisJQGZhaWw9IGZhaWxjb209J2V4aXQgMSc7IFwKKwlmb3IgZiBpbiB4ICQkTUFLRUZMQUdTOyBkbyBcCisJICBjYXNlICQkZiBpbiBcCisJICAgICo9KiB8IC0tWyFrXSopOzsgXAorCSAgICAqayopIGZhaWxjb209J2ZhaWw9eWVzJzs7IFwKKwkgIGVzYWM7IFwKKwlkb25lOyBcCisJZG90X3NlZW49bm87IFwKKwl0YXJnZXQ9YGVjaG8gJEAgfCBzZWQgcy8tcmVjdXJzaXZlLy9gOyBcCisJbGlzdD0nJChTVUJESVJTKSc7IGZvciBzdWJkaXIgaW4gJCRsaXN0OyBkbyBcCisJICBlY2hvICJNYWtpbmcgJCR0YXJnZXQgaW4gJCRzdWJkaXIiOyBcCisJICBpZiB0ZXN0ICIkJHN1YmRpciIgPSAiLiI7IHRoZW4gXAorCSAgICBkb3Rfc2Vlbj15ZXM7IFwKKwkgICAgbG9jYWxfdGFyZ2V0PSIkJHRhcmdldC1hbSI7IFwKKwkgIGVsc2UgXAorCSAgICBsb2NhbF90YXJnZXQ9IiQkdGFyZ2V0IjsgXAorCSAgZmk7IFwKKwkgICgkKGFtX19jZCkgJCRzdWJkaXIgJiYgJChNQUtFKSAkKEFNX01BS0VGTEFHUykgJCRsb2NhbF90YXJnZXQpIFwKKwkgIHx8IGV2YWwgJCRmYWlsY29tOyBcCisJZG9uZTsgXAorCWlmIHRlc3QgIiQkZG90X3NlZW4iID0gIm5vIjsgdGhlbiBcCisJICAkKE1BS0UpICQoQU1fTUFLRUZMQUdTKSAiJCR0YXJnZXQtYW0iIHx8IGV4aXQgMTsgXAorCWZpOyB0ZXN0IC16ICIkJGZhaWwiCisKKyQoUkVDVVJTSVZFX0NMRUFOX1RBUkdFVFMpOgorCUBmYWlsPSBmYWlsY29tPSdleGl0IDEnOyBcCisJZm9yIGYgaW4geCAkJE1BS0VGTEFHUzsgZG8gXAorCSAgY2FzZSAkJGYgaW4gXAorCSAgICAqPSogfCAtLVsha10qKTs7IFwKKwkgICAgKmsqKSBmYWlsY29tPSdmYWlsPXllcyc7OyBcCisJICBlc2FjOyBcCisJZG9uZTsgXAorCWRvdF9zZWVuPW5vOyBcCisJY2FzZSAiJEAiIGluIFwKKwkgIGRpc3RjbGVhbi0qIHwgbWFpbnRhaW5lci1jbGVhbi0qKSBsaXN0PSckKERJU1RfU1VCRElSUyknIDs7IFwKKwkgICopIGxpc3Q9JyQoU1VCRElSUyknIDs7IFwKKwllc2FjOyBcCisJcmV2PScnOyBmb3Igc3ViZGlyIGluICQkbGlzdDsgZG8gXAorCSAgaWYgdGVzdCAiJCRzdWJkaXIiID0gIi4iOyB0aGVuIDo7IGVsc2UgXAorCSAgICByZXY9IiQkc3ViZGlyICQkcmV2IjsgXAorCSAgZmk7IFwKKwlkb25lOyBcCisJcmV2PSIkJHJldiAuIjsgXAorCXRhcmdldD1gZWNobyAkQCB8IHNlZCBzLy1yZWN1cnNpdmUvL2A7IFwKKwlmb3Igc3ViZGlyIGluICQkcmV2OyBkbyBcCisJICBlY2hvICJNYWtpbmcgJCR0YXJnZXQgaW4gJCRzdWJkaXIiOyBcCisJICBpZiB0ZXN0ICIkJHN1YmRpciIgPSAiLiI7IHRoZW4gXAorCSAgICBsb2NhbF90YXJnZXQ9IiQkdGFyZ2V0LWFtIjsgXAorCSAgZWxzZSBcCisJICAgIGxvY2FsX3RhcmdldD0iJCR0YXJnZXQiOyBcCisJICBmaTsgXAorCSAgKCQoYW1fX2NkKSAkJHN1YmRpciAmJiAkKE1BS0UpICQoQU1fTUFLRUZMQUdTKSAkJGxvY2FsX3RhcmdldCkgXAorCSAgfHwgZXZhbCAkJGZhaWxjb207IFwKKwlkb25lICYmIHRlc3QgLXogIiQkZmFpbCIKK3RhZ3MtcmVjdXJzaXZlOgorCWxpc3Q9JyQoU1VCRElSUyknOyBmb3Igc3ViZGlyIGluICQkbGlzdDsgZG8gXAorCSAgdGVzdCAiJCRzdWJkaXIiID0gLiB8fCAoJChhbV9fY2QpICQkc3ViZGlyICYmICQoTUFLRSkgJChBTV9NQUtFRkxBR1MpIHRhZ3MpOyBcCisJZG9uZQorY3RhZ3MtcmVjdXJzaXZlOgorCWxpc3Q9JyQoU1VCRElSUyknOyBmb3Igc3ViZGlyIGluICQkbGlzdDsgZG8gXAorCSAgdGVzdCAiJCRzdWJkaXIiID0gLiB8fCAoJChhbV9fY2QpICQkc3ViZGlyICYmICQoTUFLRSkgJChBTV9NQUtFRkxBR1MpIGN0YWdzKTsgXAorCWRvbmUKKworSUQ6ICQoSEVBREVSUykgJChTT1VSQ0VTKSAkKExJU1ApICQoVEFHU19GSUxFUykKKwlsaXN0PSckKFNPVVJDRVMpICQoSEVBREVSUykgJChMSVNQKSAkKFRBR1NfRklMRVMpJzsgXAorCXVuaXF1ZT1gZm9yIGkgaW4gJCRsaXN0OyBkbyBcCisJICAgIGlmIHRlc3QgLWYgIiQkaSI7IHRoZW4gZWNobyAkJGk7IGVsc2UgZWNobyAkKHNyY2RpcikvJCRpOyBmaTsgXAorCSAgZG9uZSB8IFwKKwkgICQoQVdLKSAneyBmaWxlc1skJDBdID0gMTsgbm9uZW1wdHkgPSAxOyB9IFwKKwkgICAgICBFTkQgeyBpZiAobm9uZW1wdHkpIHsgZm9yIChpIGluIGZpbGVzKSBwcmludCBpOyB9OyB9J2A7IFwKKwlta2lkIC1mSUQgJCR1bmlxdWUKK3RhZ3M6IFRBR1MKKworVEFHUzogdGFncy1yZWN1cnNpdmUgJChIRUFERVJTKSAkKFNPVVJDRVMpICAkKFRBR1NfREVQRU5ERU5DSUVTKSBcCisJCSQoVEFHU19GSUxFUykgJChMSVNQKQorCXNldCB4OyBcCisJaGVyZT1gcHdkYDsgXAorCWlmICgkKEVUQUdTKSAtLWV0YWdzLWluY2x1ZGUgLS12ZXJzaW9uKSA+L2Rldi9udWxsIDI+JjE7IHRoZW4gXAorCSAgaW5jbHVkZV9vcHRpb249LS1ldGFncy1pbmNsdWRlOyBcCisJICBlbXB0eV9maXg9LjsgXAorCWVsc2UgXAorCSAgaW5jbHVkZV9vcHRpb249LS1pbmNsdWRlOyBcCisJICBlbXB0eV9maXg9OyBcCisJZmk7IFwKKwlsaXN0PSckKFNVQkRJUlMpJzsgZm9yIHN1YmRpciBpbiAkJGxpc3Q7IGRvIFwKKwkgIGlmIHRlc3QgIiQkc3ViZGlyIiA9IC47IHRoZW4gOjsgZWxzZSBcCisJICAgIHRlc3QgISAtZiAkJHN1YmRpci9UQUdTIHx8IFwKKwkgICAgICBzZXQgIiQkQCIgIiQkaW5jbHVkZV9vcHRpb249JCRoZXJlLyQkc3ViZGlyL1RBR1MiOyBcCisJICBmaTsgXAorCWRvbmU7IFwKKwlsaXN0PSckKFNPVVJDRVMpICQoSEVBREVSUykgICQoTElTUCkgJChUQUdTX0ZJTEVTKSc7IFwKKwl1bmlxdWU9YGZvciBpIGluICQkbGlzdDsgZG8gXAorCSAgICBpZiB0ZXN0IC1mICIkJGkiOyB0aGVuIGVjaG8gJCRpOyBlbHNlIGVjaG8gJChzcmNkaXIpLyQkaTsgZmk7IFwKKwkgIGRvbmUgfCBcCisJICAkKEFXSykgJ3sgZmlsZXNbJCQwXSA9IDE7IG5vbmVtcHR5ID0gMTsgfSBcCisJICAgICAgRU5EIHsgaWYgKG5vbmVtcHR5KSB7IGZvciAoaSBpbiBmaWxlcykgcHJpbnQgaTsgfTsgfSdgOyBcCisJc2hpZnQ7IFwKKwlpZiB0ZXN0IC16ICIkKEVUQUdTX0FSR1MpJCQqJCR1bmlxdWUiOyB0aGVuIDo7IGVsc2UgXAorCSAgdGVzdCAtbiAiJCR1bmlxdWUiIHx8IHVuaXF1ZT0kJGVtcHR5X2ZpeDsgXAorCSAgaWYgdGVzdCAkJCMgLWd0IDA7IHRoZW4gXAorCSAgICAkKEVUQUdTKSAkKEVUQUdTRkxBR1MpICQoQU1fRVRBR1NGTEFHUykgJChFVEFHU19BUkdTKSBcCisJICAgICAgIiQkQCIgJCR1bmlxdWU7IFwKKwkgIGVsc2UgXAorCSAgICAkKEVUQUdTKSAkKEVUQUdTRkxBR1MpICQoQU1fRVRBR1NGTEFHUykgJChFVEFHU19BUkdTKSBcCisJICAgICAgJCR1bmlxdWU7IFwKKwkgIGZpOyBcCisJZmkKK2N0YWdzOiBDVEFHUworQ1RBR1M6IGN0YWdzLXJlY3Vyc2l2ZSAkKEhFQURFUlMpICQoU09VUkNFUykgICQoVEFHU19ERVBFTkRFTkNJRVMpIFwKKwkJJChUQUdTX0ZJTEVTKSAkKExJU1ApCisJbGlzdD0nJChTT1VSQ0VTKSAkKEhFQURFUlMpICAkKExJU1ApICQoVEFHU19GSUxFUyknOyBcCisJdW5pcXVlPWBmb3IgaSBpbiAkJGxpc3Q7IGRvIFwKKwkgICAgaWYgdGVzdCAtZiAiJCRpIjsgdGhlbiBlY2hvICQkaTsgZWxzZSBlY2hvICQoc3JjZGlyKS8kJGk7IGZpOyBcCisJICBkb25lIHwgXAorCSAgJChBV0spICd7IGZpbGVzWyQkMF0gPSAxOyBub25lbXB0eSA9IDE7IH0gXAorCSAgICAgIEVORCB7IGlmIChub25lbXB0eSkgeyBmb3IgKGkgaW4gZmlsZXMpIHByaW50IGk7IH07IH0nYDsgXAorCXRlc3QgLXogIiQoQ1RBR1NfQVJHUykkJHVuaXF1ZSIgXAorCSAgfHwgJChDVEFHUykgJChDVEFHU0ZMQUdTKSAkKEFNX0NUQUdTRkxBR1MpICQoQ1RBR1NfQVJHUykgXAorCSAgICAgJCR1bmlxdWUKKworR1RBR1M6CisJaGVyZT1gJChhbV9fY2QpICQodG9wX2J1aWxkZGlyKSAmJiBwd2RgIFwKKwkgICYmICQoYW1fX2NkKSAkKHRvcF9zcmNkaXIpIFwKKwkgICYmIGd0YWdzIC1pICQoR1RBR1NfQVJHUykgIiQkaGVyZSIKKworZGlzdGNsZWFuLXRhZ3M6CisJLXJtIC1mIFRBR1MgSUQgR1RBR1MgR1JUQUdTIEdTWU1TIEdQQVRIIHRhZ3MKKworZGlzdGRpcjogJChESVNURklMRVMpCisJQGxpc3Q9JyQoTUFOUyknOyBpZiB0ZXN0IC1uICIkJGxpc3QiOyB0aGVuIFwKKwkgIGxpc3Q9YGZvciBwIGluICQkbGlzdDsgZG8gXAorCSAgICBpZiB0ZXN0IC1mICQkcDsgdGhlbiBkPTsgZWxzZSBkPSIkKHNyY2RpcikvIjsgZmk7IFwKKwkgICAgaWYgdGVzdCAtZiAiJCRkJCRwIjsgdGhlbiBlY2hvICIkJGQkJHAiOyBlbHNlIDo7IGZpOyBkb25lYDsgXAorCSAgaWYgdGVzdCAtbiAiJCRsaXN0IiAmJiBcCisJICAgIGdyZXAgJ2FiIGhlbHAybWFuIGlzIHJlcXVpcmVkIHRvIGdlbmVyYXRlIHRoaXMgcGFnZScgJCRsaXN0ID4vZGV2L251bGw7IHRoZW4gXAorCSAgICBlY2hvICJlcnJvcjogZm91bmQgbWFuIHBhZ2VzIGNvbnRhaW5pbmcgdGhlIFxgbWlzc2luZyBoZWxwMm1hbicgcmVwbGFjZW1lbnQgdGV4dDoiID4mMjsgXAorCSAgICBncmVwIC1sICdhYiBoZWxwMm1hbiBpcyByZXF1aXJlZCB0byBnZW5lcmF0ZSB0aGlzIHBhZ2UnICQkbGlzdCB8IHNlZCAncy9eLyAgICAgICAgIC8nID4mMjsgXAorCSAgICBlY2hvICIgICAgICAgdG8gZml4IHRoZW0sIGluc3RhbGwgaGVscDJtYW4sIHJlbW92ZSBhbmQgcmVnZW5lcmF0ZSB0aGUgbWFuIHBhZ2VzOyIgPiYyOyBcCisJICAgIGVjaG8gIiAgICAgICB0eXBpY2FsbHkgXGBtYWtlIG1haW50YWluZXItY2xlYW4nIHdpbGwgcmVtb3ZlIHRoZW0iID4mMjsgXAorCSAgICBleGl0IDE7IFwKKwkgIGVsc2UgOjsgZmk7IFwKKwllbHNlIDo7IGZpCisJQHNyY2RpcnN0cmlwPWBlY2hvICIkKHNyY2RpcikiIHwgc2VkICdzL1tdLlteJCRcXCpdL1xcXFwmL2cnYDsgXAorCXRvcHNyY2RpcnN0cmlwPWBlY2hvICIkKHRvcF9zcmNkaXIpIiB8IHNlZCAncy9bXS5bXiQkXFwqXS9cXFxcJi9nJ2A7IFwKKwlsaXN0PSckKERJU1RGSUxFUyknOyBcCisJICBkaXN0X2ZpbGVzPWBmb3IgZmlsZSBpbiAkJGxpc3Q7IGRvIGVjaG8gJCRmaWxlOyBkb25lIHwgXAorCSAgc2VkIC1lICJzfF4kJHNyY2RpcnN0cmlwL3x8O3QiIFwKKwkgICAgICAtZSAic3xeJCR0b3BzcmNkaXJzdHJpcC98JCh0b3BfYnVpbGRkaXIpL3w7dCJgOyBcCisJY2FzZSAkJGRpc3RfZmlsZXMgaW4gXAorCSAgKi8qKSAkKE1LRElSX1ApIGBlY2hvICIkJGRpc3RfZmlsZXMiIHwgXAorCQkJICAgc2VkICcvXC8vIWQ7c3xefCQoZGlzdGRpcikvfDtzLC9bXi9dKiQkLCwnIHwgXAorCQkJICAgc29ydCAtdWAgOzsgXAorCWVzYWM7IFwKKwlmb3IgZmlsZSBpbiAkJGRpc3RfZmlsZXM7IGRvIFwKKwkgIGlmIHRlc3QgLWYgJCRmaWxlIHx8IHRlc3QgLWQgJCRmaWxlOyB0aGVuIGQ9LjsgZWxzZSBkPSQoc3JjZGlyKTsgZmk7IFwKKwkgIGlmIHRlc3QgLWQgJCRkLyQkZmlsZTsgdGhlbiBcCisJICAgIGRpcj1gZWNobyAiLyQkZmlsZSIgfCBzZWQgLWUgJ3MsL1teL10qJCQsLCdgOyBcCisJICAgIGlmIHRlc3QgLWQgIiQoZGlzdGRpcikvJCRmaWxlIjsgdGhlbiBcCisJICAgICAgZmluZCAiJChkaXN0ZGlyKS8kJGZpbGUiIC10eXBlIGQgISAtcGVybSAtNzAwIC1leGVjIGNobW9kIHUrcnd4IHt9IFw7OyBcCisJICAgIGZpOyBcCisJICAgIGlmIHRlc3QgLWQgJChzcmNkaXIpLyQkZmlsZSAmJiB0ZXN0ICQkZCAhPSAkKHNyY2Rpcik7IHRoZW4gXAorCSAgICAgIGNwIC1mcFIgJChzcmNkaXIpLyQkZmlsZSAiJChkaXN0ZGlyKSQkZGlyIiB8fCBleGl0IDE7IFwKKwkgICAgICBmaW5kICIkKGRpc3RkaXIpLyQkZmlsZSIgLXR5cGUgZCAhIC1wZXJtIC03MDAgLWV4ZWMgY2htb2QgdStyd3gge30gXDs7IFwKKwkgICAgZmk7IFwKKwkgICAgY3AgLWZwUiAkJGQvJCRmaWxlICIkKGRpc3RkaXIpJCRkaXIiIHx8IGV4aXQgMTsgXAorCSAgZWxzZSBcCisJICAgIHRlc3QgLWYgIiQoZGlzdGRpcikvJCRmaWxlIiBcCisJICAgIHx8IGNwIC1wICQkZC8kJGZpbGUgIiQoZGlzdGRpcikvJCRmaWxlIiBcCisJICAgIHx8IGV4aXQgMTsgXAorCSAgZmk7IFwKKwlkb25lCisJQGxpc3Q9JyQoRElTVF9TVUJESVJTKSc7IGZvciBzdWJkaXIgaW4gJCRsaXN0OyBkbyBcCisJICBpZiB0ZXN0ICIkJHN1YmRpciIgPSAuOyB0aGVuIDo7IGVsc2UgXAorCSAgICB0ZXN0IC1kICIkKGRpc3RkaXIpLyQkc3ViZGlyIiBcCisJICAgIHx8ICQoTUtESVJfUCkgIiQoZGlzdGRpcikvJCRzdWJkaXIiIFwKKwkgICAgfHwgZXhpdCAxOyBcCisJICBmaTsgXAorCWRvbmUKKwlAbGlzdD0nJChESVNUX1NVQkRJUlMpJzsgZm9yIHN1YmRpciBpbiAkJGxpc3Q7IGRvIFwKKwkgIGlmIHRlc3QgIiQkc3ViZGlyIiA9IC47IHRoZW4gOjsgZWxzZSBcCisJICAgIGRpcjE9JCRzdWJkaXI7IGRpcjI9IiQoZGlzdGRpcikvJCRzdWJkaXIiOyBcCisJICAgICQoYW1fX3JlbGF0aXZpemUpOyBcCisJICAgIG5ld19kaXN0ZGlyPSQkcmVsZGlyOyBcCisJICAgIGRpcjE9JCRzdWJkaXI7IGRpcjI9IiQodG9wX2Rpc3RkaXIpIjsgXAorCSAgICAkKGFtX19yZWxhdGl2aXplKTsgXAorCSAgICBuZXdfdG9wX2Rpc3RkaXI9JCRyZWxkaXI7IFwKKwkgICAgZWNobyAiIChjZCAkJHN1YmRpciAmJiAkKE1BS0UpICQoQU1fTUFLRUZMQUdTKSB0b3BfZGlzdGRpcj0iJCRuZXdfdG9wX2Rpc3RkaXIiIGRpc3RkaXI9IiQkbmV3X2Rpc3RkaXIiIFxcIjsgXAorCSAgICBlY2hvICIgICAgIGFtX19yZW1vdmVfZGlzdGRpcj06IGFtX19za2lwX2xlbmd0aF9jaGVjaz06IGFtX19za2lwX21vZGVfZml4PTogZGlzdGRpcikiOyBcCisJICAgICgkKGFtX19jZCkgJCRzdWJkaXIgJiYgXAorCSAgICAgICQoTUFLRSkgJChBTV9NQUtFRkxBR1MpIFwKKwkgICAgICAgIHRvcF9kaXN0ZGlyPSIkJG5ld190b3BfZGlzdGRpciIgXAorCSAgICAgICAgZGlzdGRpcj0iJCRuZXdfZGlzdGRpciIgXAorCQlhbV9fcmVtb3ZlX2Rpc3RkaXI9OiBcCisJCWFtX19za2lwX2xlbmd0aF9jaGVjaz06IFwKKwkJYW1fX3NraXBfbW9kZV9maXg9OiBcCisJICAgICAgICBkaXN0ZGlyKSBcCisJICAgICAgfHwgZXhpdCAxOyBcCisJICBmaTsgXAorCWRvbmUKK2NoZWNrLWFtOiBhbGwtYW0KKwkkKE1BS0UpICQoQU1fTUFLRUZMQUdTKSAkKGNoZWNrX0RBVEEpCisJJChNQUtFKSAkKEFNX01BS0VGTEFHUykgY2hlY2stbG9jYWwKK2NoZWNrOiBjaGVjay1yZWN1cnNpdmUKK2FsbC1hbTogTWFrZWZpbGUgJChTQ1JJUFRTKSAkKE1BTlMpICQoREFUQSkKK2luc3RhbGxkaXJzOiBpbnN0YWxsZGlycy1yZWN1cnNpdmUKK2luc3RhbGxkaXJzLWFtOgorCWZvciBkaXIgaW4gIiQoREVTVERJUikkKGJpbmRpcikiICIkKERFU1RESVIpJChjaGFuZ2Vsb2dkaXIpIiAiJChERVNURElSKSQobWFuM2RpcikiICIkKERFU1RESVIpJChwZXJsbGliZGlyKSI7IGRvIFwKKwkgIHRlc3QgLXogIiQkZGlyIiB8fCAkKE1LRElSX1ApICIkJGRpciI7IFwKKwlkb25lCitpbnN0YWxsOiBpbnN0YWxsLXJlY3Vyc2l2ZQoraW5zdGFsbC1leGVjOiBpbnN0YWxsLWV4ZWMtcmVjdXJzaXZlCitpbnN0YWxsLWRhdGE6IGluc3RhbGwtZGF0YS1yZWN1cnNpdmUKK3VuaW5zdGFsbDogdW5pbnN0YWxsLXJlY3Vyc2l2ZQorCitpbnN0YWxsLWFtOiBhbGwtYW0KKwlAJChNQUtFKSAkKEFNX01BS0VGTEFHUykgaW5zdGFsbC1leGVjLWFtIGluc3RhbGwtZGF0YS1hbQorCitpbnN0YWxsY2hlY2s6IGluc3RhbGxjaGVjay1yZWN1cnNpdmUKK2luc3RhbGwtc3RyaXA6CisJJChNQUtFKSAkKEFNX01BS0VGTEFHUykgSU5TVEFMTF9QUk9HUkFNPSIkKElOU1RBTExfU1RSSVBfUFJPR1JBTSkiIFwKKwkgIGluc3RhbGxfc2hfUFJPR1JBTT0iJChJTlNUQUxMX1NUUklQX1BST0dSQU0pIiBJTlNUQUxMX1NUUklQX0ZMQUc9LXMgXAorCSAgYHRlc3QgLXogJyQoU1RSSVApJyB8fCBcCisJICAgIGVjaG8gIklOU1RBTExfUFJPR1JBTV9FTlY9U1RSSVBQUk9HPSckKFNUUklQKSciYCBpbnN0YWxsCittb3N0bHljbGVhbi1nZW5lcmljOgorCitjbGVhbi1nZW5lcmljOgorCS10ZXN0IC16ICIkKENMRUFORklMRVMpIiB8fCBybSAtZiAkKENMRUFORklMRVMpCisKK2Rpc3RjbGVhbi1nZW5lcmljOgorCS10ZXN0IC16ICIkKENPTkZJR19DTEVBTl9GSUxFUykiIHx8IHJtIC1mICQoQ09ORklHX0NMRUFOX0ZJTEVTKQorCS10ZXN0IC4gPSAiJChzcmNkaXIpIiB8fCB0ZXN0IC16ICIkKENPTkZJR19DTEVBTl9WUEFUSF9GSUxFUykiIHx8IHJtIC1mICQoQ09ORklHX0NMRUFOX1ZQQVRIX0ZJTEVTKQorCittYWludGFpbmVyLWNsZWFuLWdlbmVyaWM6CisJQGVjaG8gIlRoaXMgY29tbWFuZCBpcyBpbnRlbmRlZCBmb3IgbWFpbnRhaW5lcnMgdG8gdXNlIgorCUBlY2hvICJpdCBkZWxldGVzIGZpbGVzIHRoYXQgbWF5IHJlcXVpcmUgc3BlY2lhbCB0b29scyB0byByZWJ1aWxkLiIKK2NsZWFuOiBjbGVhbi1yZWN1cnNpdmUKKworY2xlYW4tYW06IGNsZWFuLWdlbmVyaWMgY2xlYW4tbG9jYWwgbW9zdGx5Y2xlYW4tYW0KKworZGlzdGNsZWFuOiBkaXN0Y2xlYW4tcmVjdXJzaXZlCisJLXJtIC1mIE1ha2VmaWxlCitkaXN0Y2xlYW4tYW06IGNsZWFuLWFtIGRpc3RjbGVhbi1nZW5lcmljIGRpc3RjbGVhbi10YWdzCisKK2R2aTogZHZpLXJlY3Vyc2l2ZQorCitkdmktYW06CisKK2h0bWw6IGh0bWwtcmVjdXJzaXZlCisKK2h0bWwtYW06CisKK2luZm86IGluZm8tcmVjdXJzaXZlCisKK2luZm8tYW06CisKK2luc3RhbGwtZGF0YS1hbTogaW5zdGFsbC1jaGFuZ2Vsb2dTQ1JJUFRTIGluc3RhbGwtZGF0YS1sb2NhbCBcCisJaW5zdGFsbC1tYW4gaW5zdGFsbC1ub2Jhc2VfZGlzdF9wZXJsbGliREFUQQorCUAkKE5PUk1BTF9JTlNUQUxMKQorCSQoTUFLRSkgJChBTV9NQUtFRkxBR1MpIGluc3RhbGwtZGF0YS1ob29rCitpbnN0YWxsLWR2aTogaW5zdGFsbC1kdmktcmVjdXJzaXZlCisKK2luc3RhbGwtZHZpLWFtOgorCitpbnN0YWxsLWV4ZWMtYW06IGluc3RhbGwtYmluU0NSSVBUUworCitpbnN0YWxsLWh0bWw6IGluc3RhbGwtaHRtbC1yZWN1cnNpdmUKKworaW5zdGFsbC1odG1sLWFtOgorCitpbnN0YWxsLWluZm86IGluc3RhbGwtaW5mby1yZWN1cnNpdmUKKworaW5zdGFsbC1pbmZvLWFtOgorCitpbnN0YWxsLW1hbjogaW5zdGFsbC1tYW4zCisKK2luc3RhbGwtcGRmOiBpbnN0YWxsLXBkZi1yZWN1cnNpdmUKKworaW5zdGFsbC1wZGYtYW06CisKK2luc3RhbGwtcHM6IGluc3RhbGwtcHMtcmVjdXJzaXZlCisKK2luc3RhbGwtcHMtYW06CisKK2luc3RhbGxjaGVjay1hbToKKworbWFpbnRhaW5lci1jbGVhbjogbWFpbnRhaW5lci1jbGVhbi1yZWN1cnNpdmUKKwktcm0gLWYgTWFrZWZpbGUKK21haW50YWluZXItY2xlYW4tYW06IGRpc3RjbGVhbi1hbSBtYWludGFpbmVyLWNsZWFuLWdlbmVyaWMKKworbW9zdGx5Y2xlYW46IG1vc3RseWNsZWFuLXJlY3Vyc2l2ZQorCittb3N0bHljbGVhbi1hbTogbW9zdGx5Y2xlYW4tZ2VuZXJpYworCitwZGY6IHBkZi1yZWN1cnNpdmUKKworcGRmLWFtOgorCitwczogcHMtcmVjdXJzaXZlCisKK3BzLWFtOgorCit1bmluc3RhbGwtYW06IHVuaW5zdGFsbC1iaW5TQ1JJUFRTIHVuaW5zdGFsbC1jaGFuZ2Vsb2dTQ1JJUFRTIFwKKwl1bmluc3RhbGwtbG9jYWwgdW5pbnN0YWxsLW1hbiBcCisJdW5pbnN0YWxsLW5vYmFzZV9kaXN0X3BlcmxsaWJEQVRBCisKK3VuaW5zdGFsbC1tYW46IHVuaW5zdGFsbC1tYW4zCisKKy5NQUtFOiAkKFJFQ1VSU0lWRV9DTEVBTl9UQVJHRVRTKSAkKFJFQ1VSU0lWRV9UQVJHRVRTKSBjaGVjay1hbSBcCisJY3RhZ3MtcmVjdXJzaXZlIGluc3RhbGwtYW0gaW5zdGFsbC1kYXRhLWFtIGluc3RhbGwtc3RyaXAgXAorCXRhZ3MtcmVjdXJzaXZlCisKKy5QSE9OWTogJChSRUNVUlNJVkVfQ0xFQU5fVEFSR0VUUykgJChSRUNVUlNJVkVfVEFSR0VUUykgQ1RBR1MgR1RBR1MgXAorCWFsbCBhbGwtYW0gY2hlY2sgY2hlY2stYW0gY2hlY2stbG9jYWwgY2xlYW4gY2xlYW4tZ2VuZXJpYyBcCisJY2xlYW4tbG9jYWwgY3RhZ3MgY3RhZ3MtcmVjdXJzaXZlIGRpc3RjbGVhbiBkaXN0Y2xlYW4tZ2VuZXJpYyBcCisJZGlzdGNsZWFuLXRhZ3MgZGlzdGRpciBkdmkgZHZpLWFtIGh0bWwgaHRtbC1hbSBpbmZvIGluZm8tYW0gXAorCWluc3RhbGwgaW5zdGFsbC1hbSBpbnN0YWxsLWJpblNDUklQVFMgaW5zdGFsbC1jaGFuZ2Vsb2dTQ1JJUFRTIFwKKwlpbnN0YWxsLWRhdGEgaW5zdGFsbC1kYXRhLWFtIGluc3RhbGwtZGF0YS1ob29rIFwKKwlpbnN0YWxsLWRhdGEtbG9jYWwgaW5zdGFsbC1kdmkgaW5zdGFsbC1kdmktYW0gaW5zdGFsbC1leGVjIFwKKwlpbnN0YWxsLWV4ZWMtYW0gaW5zdGFsbC1odG1sIGluc3RhbGwtaHRtbC1hbSBpbnN0YWxsLWluZm8gXAorCWluc3RhbGwtaW5mby1hbSBpbnN0YWxsLW1hbiBpbnN0YWxsLW1hbjMgXAorCWluc3RhbGwtbm9iYXNlX2Rpc3RfcGVybGxpYkRBVEEgaW5zdGFsbC1wZGYgaW5zdGFsbC1wZGYtYW0gXAorCWluc3RhbGwtcHMgaW5zdGFsbC1wcy1hbSBpbnN0YWxsLXN0cmlwIGluc3RhbGxjaGVjayBcCisJaW5zdGFsbGNoZWNrLWFtIGluc3RhbGxkaXJzIGluc3RhbGxkaXJzLWFtIG1haW50YWluZXItY2xlYW4gXAorCW1haW50YWluZXItY2xlYW4tZ2VuZXJpYyBtb3N0bHljbGVhbiBtb3N0bHljbGVhbi1nZW5lcmljIHBkZiBcCisJcGRmLWFtIHBzIHBzLWFtIHRhZ3MgdGFncy1yZWN1cnNpdmUgdW5pbnN0YWxsIHVuaW5zdGFsbC1hbSBcCisJdW5pbnN0YWxsLWJpblNDUklQVFMgdW5pbnN0YWxsLWNoYW5nZWxvZ1NDUklQVFMgXAorCXVuaW5zdGFsbC1sb2NhbCB1bmluc3RhbGwtbWFuIHVuaW5zdGFsbC1tYW4zIFwKKwl1bmluc3RhbGwtbm9iYXNlX2Rpc3RfcGVybGxpYkRBVEEKKworCislOiAlLnBsIE1ha2VmaWxlCisJQHRlc3QgLWQgYGRpcm5hbWUgJEBgIHx8ICQobWtkaXJfcCkgYGRpcm5hbWUgJEBgCisJJChkb19wZXJsX3N1YnN0KSA8JDwgPiRACisJJChBTV9WX2F0KSBjaG1vZCAreCAkQAorCislOiAlLnNoIE1ha2VmaWxlCisJQHRlc3QgLWQgYGRpcm5hbWUgJEBgIHx8ICQobWtkaXJfcCkgYGRpcm5hbWUgJEBgCisJJChkb19zaGVsbF9zdWJzdCkgPCQ8ID4kQAorCSQoQU1fVl9hdCkgY2htb2QgK3ggJEAKKworaW5zdGFsbC1kYXRhLWxvY2FsOgorIyBJbnN0YWxsIG1hbnVhbCBwYWdlcyBmb3IgcGVybCBtb2R1bGVzIG1hbnVhbGx5IGFzIG1ha2UgY2FuJ3QgZGVhbAorIyBwcm9wZXJseSB3aXRoIGZpbGVuYW1lcyBjb250YWluaW5nIGNvbG9ucworIyBSZW1vdmUgZW1wdHkgbWFudWFsIHBhZ2VzIChwZXJsIG1vZHVsZXMgbm90IGRvY3VtZW50ZWQpCitAQlVJTERfUE9EX0RPQ19UUlVFQAkkKG1rZGlyX3ApICQoREVTVERJUikkKG1hbjNkaXIpCitAQlVJTERfUE9EX0RPQ19UUlVFQAlmb3IgbW9kdWxlIGluICQobm9iYXNlX2Rpc3RfcGVybGxpYl9EQVRBKTsgZG8gXAorQEJVSUxEX1BPRF9ET0NfVFJVRUAJICAgIG5hbWU9YGVjaG8gJCRtb2R1bGUgfCBzZWQgLWUgJ3N8L3w6OnxnJyAtZSAncy9cLnBtJCQvLydgOyBcCitAQlVJTERfUE9EX0RPQ19UUlVFQAkgICAgcG9kMm1hbiAtLXV0ZjggLS1jZW50ZXI9bGliZHBrZy1wZXJsIC0tcmVsZWFzZT0kKFZFUlNJT04pIFwKK0BCVUlMRF9QT0RfRE9DX1RSVUVACQktLW5hbWU9IiQkbmFtZSIJLS1zZWN0aW9uPTMgJChzcmNkaXIpLyQkbW9kdWxlIFwKK0BCVUlMRF9QT0RfRE9DX1RSVUVACQk+JChERVNURElSKSQobWFuM2RpcikvJCRuYW1lLjM7IFwKK0BCVUlMRF9QT0RfRE9DX1RSVUVACSAgICB0ZXN0IC1zICQoREVTVERJUikkKG1hbjNkaXIpLyQkbmFtZS4zIHx8IFwKK0BCVUlMRF9QT0RfRE9DX1RSVUVACQlybSAtZiAkKERFU1RESVIpJChtYW4zZGlyKS8kJG5hbWUuMzsgXAorQEJVSUxEX1BPRF9ET0NfVFJVRUAJZG9uZQorCisjIElkZWFsbHkgd2UnZCB1c2UgJ3NlZCAtaScsIGJ1dCB1bmZvcnR1bmF0ZWx5IHRoYXQncyBub3QgcG9ydGFibGUuCitpbnN0YWxsLWRhdGEtaG9vazoKKwljcCAtcCAkKERFU1RESVIpJChwZXJsbGliZGlyKS9EcGtnLnBtIFwKKwkgICAgICAkKERFU1RESVIpJChwZXJsbGliZGlyKS9EcGtnLnBtLnRtcAorCSQoZG9fcGVybF9zdWJzdCkgPCQoREVTVERJUikkKHBlcmxsaWJkaXIpL0Rwa2cucG0udG1wIFwKKwkgICAgICAgICAgICAgICAgID4kKERFU1RESVIpJChwZXJsbGliZGlyKS9EcGtnLnBtCisJcm0gJChERVNURElSKSQocGVybGxpYmRpcikvRHBrZy5wbS50bXAKKwordW5pbnN0YWxsLWxvY2FsOgorQEJVSUxEX1BPRF9ET0NfVFJVRUAJZm9yIG1vZHVsZSBpbiAkKG5vYmFzZV9kaXN0X3BlcmxsaWJfREFUQSk7IGRvIFwKK0BCVUlMRF9QT0RfRE9DX1RSVUVACSAgICBybSAtZiAkKERFU1RESVIpJChtYW4zZGlyKS9gZWNobyAkJG1vZHVsZSB8IHNlZCAtZSAnc3wvfDo6fGcnIC1lICdzL1wucG0kJC8uMy8nYDsgXAorQEJVSUxEX1BPRF9ET0NfVFJVRUAJZG9uZQorCitjb3ZlcmFnZTogY2hlY2sKKwkkKFBFUkxfQ09WRVIpIC1zaWxlbnQgXAorCSAgLWlnbm9yZV9yZSAnXnQvLipcLnQnIFwKKwkgIC1vdXRwdXRkaXIgJCh0b3BfYnVpbGRkaXIpL2RvYy9jb3ZlcmFnZS9zY3JpcHRzCisKK2NvdmVyYWdlLWNsZWFuOgorCXJtIC1yZiBjb3Zlcl9kYgorJCh0ZXN0X3RtcGRpcikvMjAwX0Rwa2dfU2hsaWJzL29iamR1bXAuYmFzaWN0YWdzLWFtZDY0ICQodGVzdF90bXBkaXIpLzIwMF9EcGtnX1NobGlicy9vYmpkdW1wLmJhc2ljdGFncy1pMzg2OiAkKHNyY2RpcikvdC8yMDBfRHBrZ19TaGxpYnMvYmFzaWN0YWdzLmMKKwkkKG1rZGlyX3ApICQodGVzdF90bXBkaXIpLzIwMF9EcGtnX1NobGlicworCSQoQ0MpICQoQ0ZMQUdTKSAtc2hhcmVkIC1mUElDIC1XbCwtc29uYW1lIC1XbCxsaWJiYXNpY3RhZ3Muc28uMSAkPCBcCisJICAkKGlmICQoZmluZHN0cmluZyBhbWQ2NCwkQCksLURBTUQ2NCwpIC1vICQob2JqZHVtcF9saWJfbmFtZSkKKwlvYmpkdW1wIC13IC1mIC1wIC1UIC1SICQob2JqZHVtcF9saWJfbmFtZSkgfCBcCisJICBzZWQgInMvJChvYmpkdW1wX2xpYl9uYW1lKS9saWJiYXNpY3RhZ3Muc28uMS9nIiA+ICRACisJcm0gLWYgJChvYmpkdW1wX2xpYl9uYW1lKQorCiskKHRlc3RfdG1wZGlyKS8yMDBfRHBrZ19TaGxpYnMvb2JqZHVtcC5wYXR0ZXJuczogJChzcmNkaXIpL3QvMjAwX0Rwa2dfU2hsaWJzL3BhdHRlcm5zLmNwcCAkKHNyY2RpcikvdC8yMDBfRHBrZ19TaGxpYnMvcGF0dGVybnMubWFwCisJJChta2Rpcl9wKSAkKHRlc3RfdG1wZGlyKS8yMDBfRHBrZ19TaGxpYnMKKwkkKENYWCkgJChDWFhGTEFHUykgLXNoYXJlZCAtZlBJQyAtV2wsLXNvbmFtZSAtV2wsbGlicGF0dGVybnMuc28uMSBcCisJICAgIC1XbCwtLXZlcnNpb24tc2NyaXB0PSQoc3JjZGlyKS90LzIwMF9EcGtnX1NobGlicy9wYXR0ZXJucy5tYXAgJDwgXAorCSAgICAtbyAkKG9iamR1bXBfbGliX25hbWUpCisJb2JqZHVtcCAtdyAtZiAtcCAtVCAtUiAkKG9iamR1bXBfbGliX25hbWUpIHwgXAorCSAgc2VkICJzLyQob2JqZHVtcF9saWJfbmFtZSkvbGlicGF0dGVybnMuc28uMS9nIiA+ICRACisJcm0gLWYgJChvYmpkdW1wX2xpYl9uYW1lKQorCitjaGVjay1jbGVhbjoKKwlybSAtZnIgJCh0ZXN0X3RtcGRpcikKKworY2hlY2stbG9jYWw6ICQodGVzdF9kYXRhKSAkKHRlc3RfY2FzZXMpCisJJChta2Rpcl9wKSAkKHRlc3RfdG1wZGlyKQorCVBBVEg9IiQodG9wX2J1aWxkZGlyKS9zcmM6JCh0b3BfYnVpbGRkaXIpL3NjcmlwdHM6JCh0b3BfYnVpbGRkaXIpL3V0aWxzOiQoUEFUSCkiIFwKKwkgIExDX0FMTD1DIFwKKwkgICQoVEVTVF9FTlZfVkFSUykgXAorCSAgc3JjZGlyPSQoc3JjZGlyKSBidWlsZGRpcj0kKGJ1aWxkZGlyKSBcCisJICBQRVJMNUxJQj0kKHRvcF9zcmNkaXIpL3NjcmlwdHMgUEVSTF9ETF9OT05MQVpZPTEgXAorCSAgUEVSTDVPUFQ9JChURVNUX0NPVkVSQUdFKSBcCisJICAkKFBFUkwpIC1JJCh0b3Bfc3JjZGlyKS9zY3JpcHRzIFwKKwkgICAgLU1FeHRVdGlsczo6Q29tbWFuZDo6TU0gLWUgInRlc3RfaGFybmVzcygkKFRFU1RfVkVSQk9TRSksICcuJykiIFwKKwkgICAgJChhZGRwcmVmaXggJChzcmNkaXIpLywkKHRlc3RfY2FzZXMpKQorCitjbGVhbi1sb2NhbDogY2hlY2stY2xlYW4gY292ZXJhZ2UtY2xlYW4KKwlybSAtZnIgbWFuCisKKyMgVGVsbCB2ZXJzaW9ucyBbMy41OSwzLjYzKSBvZiBHTlUgbWFrZSB0byBub3QgZXhwb3J0IGFsbCB2YXJpYWJsZXMuCisjIE90aGVyd2lzZSBhIHN5c3RlbSBsaW1pdCAoZm9yIFN5c1YgYXQgbGVhc3QpIG1heSBiZSBleGNlZWRlZC4KKy5OT0VYUE9SVDoKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9jaGFuZ2Vsb2cvZGViaWFuLnBsIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL2NoYW5nZWxvZy9kZWJpYW4ucGwKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMC4uYzVmZTM3ZAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9jaGFuZ2Vsb2cvZGViaWFuLnBsCkBAIC0wLDAgKzEsMTQ4IEBACisjIS91c3IvYmluL3BlcmwKKyMKKyMgcGFyc2VjaGFuZ2Vsb2cvZGViaWFuCisjCisjIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisjIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisjIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisjIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisjCisjIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisjIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisjCisjIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisjIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorCit1c2Ugc3RyaWN0OwordXNlIHdhcm5pbmdzOworCit1c2UgR2V0b3B0OjpMb25nIHF3KDpjb25maWcgZ251X2dldG9wdCBhdXRvX2hlbHApOwordXNlIFBPU0lYOworCit1c2UgRHBrZzsKK3VzZSBEcGtnOjpHZXR0ZXh0OwordXNlIERwa2c6OkVycm9ySGFuZGxpbmc7Cit1c2UgRHBrZzo6Q2hhbmdlbG9nOjpEZWJpYW47CisKK3RleHRkb21haW4oImRwa2ctZGV2Iik7CisKKyRwcm9nbmFtZSA9ICJwYXJzZWNoYW5nZWxvZy8kcHJvZ25hbWUiOworCitzdWIgdmVyc2lvbiB7CisgICAgcHJpbnRmIF9nKCJEZWJpYW4gJXMgdmVyc2lvbiAlcy5cbiIpLCAkcHJvZ25hbWUsICR2ZXJzaW9uOworCisgICAgcHJpbnRmIF9nKCIKK0NvcHlyaWdodCAoQykgMTk5NiBJYW4gSmFja3Nvbi4KK0NvcHlyaWdodCAoQykgMjAwNSwyMDA3IEZyYW5rIExpY2h0ZW5oZWxkLiIpOworICAgIHByaW50ZiBfZygiCitUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAyIG9yCitsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS4KKyIpOworfQorCitzdWIgdXNhZ2UgeworICAgIHByaW50ZiBfZygKKyJVc2FnZTogJXMgWzxvcHRpb24+Li4uXSBbPGNoYW5nZWxvZ2ZpbGU+XQorCitPcHRpb25zOgorICAgIC0taGVscCwgLWggICAgICAgICAgICAgICAgICBwcmludCB1c2FnZSBpbmZvcm1hdGlvbgorICAgIC0tdmVyc2lvbiwgLVYgICAgICAgICAgICAgICBwcmludCB2ZXJzaW9uIGluZm9ybWF0aW9uCisgICAgLS1sYWJlbCwgLWwgPGZpbGU+ICAgICAgICAgIG5hbWUgb2YgdGhlIGNoYW5nZWxvZyBmaWxlIHRvCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzZSBpbiBlcnJvciBtZXNzYWdlcworICAgIC0tZmlsZSA8ZmlsZT4gICAgICAgICAgICAgICBjaGFuZ2Vsb2cgZmlsZSB0byBwYXJzZSwgZGVmYXVsdHMKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG8gJy0nIChzdGFuZGFyZCBpbnB1dCkKKyAgICAtLWZvcm1hdCA8b3V0cHV0Zm9ybWF0PiAgICAgc2VlIG1hbiBwYWdlIGZvciBsaXN0IG9mIGF2YWlsYWJsZQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdXRwdXQgZm9ybWF0cywgZGVmYXVsdHMgdG8gJ2Rwa2cnCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvciBjb21wYXRpYmlsaXR5IHdpdGggZHBrZy1kZXYKKyAgICAtLXNpbmNlLCAtcywgLXYgPHZlcnNpb24+ICAgaW5jbHVkZSBhbGwgY2hhbmdlcyBsYXRlciB0aGFuIHZlcnNpb24KKyAgICAtLXVudGlsLCAtdSA8dmVyc2lvbj4gICAgICAgaW5jbHVkZSBhbGwgY2hhbmdlcyBlYXJsaWVyIHRoYW4gdmVyc2lvbgorICAgIC0tZnJvbSwgLWYgPHZlcnNpb24+ICAgICAgICBpbmNsdWRlIGFsbCBjaGFuZ2VzIGVxdWFsIG9yIGxhdGVyCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoYW4gdmVyc2lvbgorICAgIC0tdG8sIC10IDx2ZXJzaW9uPiAgICAgICAgICBpbmNsdWRlIGFsbCBjaGFuZ2VzIHVwIHRvIG9yIGVxdWFsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoYW4gdmVyc2lvbgorICAgIC0tY291bnQsIC1jLCAtbiA8bnVtYmVyPiAgICBpbmNsdWRlIDxudW1iZXI+IGVudHJpZXMgZnJvbSB0aGUgdG9wCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChvciB0aGUgdGFpbCBpZiA8bnVtYmVyPiBpcyBsb3dlciB0aGFuIDApCisgICAgLS1vZmZzZXQsIC1vIDxudW1iZXI+ICAgICAgIGNoYW5nZSB0aGUgc3RhcnRpbmcgcG9pbnQgZm9yIC0tY291bnQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvdW50ZWQgZnJvbSB0aGUgdG9wIChvciB0aGUgdGFpbCBpZgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bnVtYmVyPiBpcyBsb3dlciB0aGFuIDApCisgICAgLS1hbGwgICAgICAgICAgICAgICAgICAgICAgIGluY2x1ZGUgYWxsIGNoYW5nZXMKKyIpLCAkcHJvZ25hbWU7Cit9CisKK215ICggJHNpbmNlLCAkdW50aWwsICRmcm9tLCAkdG8sICRhbGwsICRjb3VudCwgJG9mZnNldCwgJGZpbGUsICRsYWJlbCApOworbXkgJGRlZmF1bHRfZmlsZSA9ICctJzsKK215ICRmb3JtYXQgPSAnZHBrZyc7CitteSAlYWxsb3dlZF9mb3JtYXRzID0gKAorICAgIGRwa2cgPT4gMSwKKyAgICByZmM4MjIgPT4gMSwKKyAgICApOworCitzdWIgc2V0X2Zvcm1hdCB7CisgICAgbXkgKCRvcHQsICR2YWwpID0gQF87CisKKyAgICB1bmxlc3MgKCRhbGxvd2VkX2Zvcm1hdHN7JHZhbH0pIHsKKwl1c2FnZWVycihfZygnb3V0cHV0IGZvcm1hdCAlcyBub3Qgc3VwcG9ydGVkJyksICR2YWwgKTsKKyAgICB9CisKKyAgICAkZm9ybWF0ID0gJHZhbDsKK30KKworR2V0T3B0aW9ucyggImZpbGU9cyIgPT4gXCRmaWxlLAorCSAgICAibGFiZWx8bD1zIiA9PiBcJGxhYmVsLAorCSAgICAic2luY2V8dj1zIiA9PiBcJHNpbmNlLAorCSAgICAidW50aWx8dT1zIiA9PiBcJHVudGlsLAorCSAgICAiZnJvbXxmPXMiID0+IFwkZnJvbSwKKwkgICAgInRvfHQ9cyIgPT4gXCR0bywKKwkgICAgImNvdW50fGN8bj1pIiA9PiBcJGNvdW50LAorCSAgICAib2Zmc2V0fG89aSIgPT4gXCRvZmZzZXQsCisJICAgICJoZWxwfGgiID0+IHN1Ynt1c2FnZSgpO2V4aXQoMCl9LAorCSAgICAidmVyc2lvbnxWIiA9PiBzdWJ7dmVyc2lvbigpO2V4aXQoMCl9LAorCSAgICAiZm9ybWF0PXMiID0+IFwmc2V0X2Zvcm1hdCwKKwkgICAgImFsbHxhIiA9PiBcJGFsbCwKKwkgICAgKQorICAgIG9yIGRvIHsgdXNhZ2UoKTsgZXhpdCgyKSB9OworCit1c2FnZWVycigndG9vIG1hbnkgYXJndW1lbnRzJykgaWYgQEFSR1YgPiAxOworCitpZiAoQEFSR1YpIHsKKyAgICBpZiAoJGZpbGUgJiYgKCRmaWxlIG5lICRBUkdWWzBdKSkgeworCXVzYWdlZXJyKF9nKCdtb3JlIHRoYW4gb25lIGZpbGUgc3BlY2lmaWVkICglcyBhbmQgJXMpJyksCisJCSAkZmlsZSwgJEFSR1ZbMF0gKTsKKyAgICB9CisgICAgJGZpbGUgPSAkQVJHVlswXTsKK30KKworJGZpbGUgfHw9ICRkZWZhdWx0X2ZpbGU7CiskbGFiZWwgfHw9ICRmaWxlOwordW5sZXNzIChkZWZpbmVkKCRzaW5jZSkgb3IgZGVmaW5lZCgkdW50aWwpIG9yIGRlZmluZWQoJGZyb20pIG9yCisgICAgICAgIGRlZmluZWQoJHRvKSBvciBkZWZpbmVkKCRvZmZzZXQpIG9yIGRlZmluZWQoJGNvdW50KSBvcgorICAgICAgICBkZWZpbmVkKCRhbGwpKQoreworICAgICRjb3VudCA9IDE7Cit9CitteSAlYWxsID0gJGFsbCA/ICggYWxsID0+ICRhbGwgKSA6ICgpOworbXkgJHJhbmdlID0geworICAgIHNpbmNlID0+ICRzaW5jZSwgdW50aWwgPT4gJHVudGlsLCBmcm9tID0+ICRmcm9tLCB0byA9PiAkdG8sCisgICAgY291bnQgPT4gJGNvdW50LCBvZmZzZXQgPT4gJG9mZnNldCwKKyAgICAlYWxsCit9OworCitteSAkY2hhbmdlcyA9IERwa2c6OkNoYW5nZWxvZzo6RGViaWFuLT5uZXcocmVwb3J0ZmlsZSA9PiAkbGFiZWwsIHJhbmdlID0+ICRyYW5nZSk7CisKK2lmICgkZmlsZSBlcSAnLScpIHsKKyAgICAkY2hhbmdlcy0+cGFyc2UoXCpTVERJTiwgX2coIjxzdGFuZGFyZCBpbnB1dD4iKSkKKwlvciBlcnJvcihfZygnZmF0YWwgZXJyb3Igb2NjdXJyZWQgd2hpbGUgcGFyc2luZyBpbnB1dCcpKTsKK30gZWxzZSB7CisgICAgJGNoYW5nZXMtPmxvYWQoJGZpbGUpCisJb3IgZXJyb3IoX2coJ2ZhdGFsIGVycm9yIG9jY3VycmVkIHdoaWxlIHBhcnNpbmcgJXMnKSwgJGZpbGUpOworfQorCitldmFsIHFxeworICAgIG15IFwkb3V0cHV0ID0gXCRjaGFuZ2VzLT4kZm9ybWF0KFwkcmFuZ2UpOworICAgIHByaW50IFwkb3V0cHV0IGlmIGRlZmluZWQgXCRvdXRwdXQ7Cit9OworaWYgKCRAKSB7CisgICAgZXJyb3IoIiVzIiwgJEApOworfQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLnBsIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLnBsCm5ldyBmaWxlIG1vZGUgMTAwNzU1CmluZGV4IDAwMDAwMDAuLmUwMzA4MjcKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvZHBrZy1hcmNoaXRlY3R1cmUucGwKQEAgLTAsMCArMSwyMjcgQEAKKyMhL3Vzci9iaW4vcGVybAorIworIyBkcGtnLWFyY2hpdGVjdHVyZQorIworIyBDb3B5cmlnaHQgwqkgMjAwNC0yMDA1IFNjb3R0IEphbWVzIFJlbW5hbnQgPHNjb3R0QG5ldHNwbGl0LmNvbT4sCisjIENvcHlyaWdodCDCqSAxOTk5IE1hcmN1cyBCcmlua21hbm4gPGJyaW5rbWRAZGViaWFuLm9yZz4uCisjCisjIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisjIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisjIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisjIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisjCisjIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisjIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisjCisjIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisjIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorCit1c2Ugc3RyaWN0OwordXNlIHdhcm5pbmdzOworCit1c2UgRHBrZzsKK3VzZSBEcGtnOjpHZXR0ZXh0OwordXNlIERwa2c6OkVycm9ySGFuZGxpbmc7Cit1c2UgRHBrZzo6QXJjaCBxdyhnZXRfcmF3X2J1aWxkX2FyY2ggZ2V0X3Jhd19ob3N0X2FyY2ggZ2V0X2djY19ob3N0X2dudV90eXBlCisgICAgICAgICAgICAgICAgICBkZWJhcmNoX3RvX2NwdWF0dHJzCisgICAgICAgICAgICAgICAgICBnZXRfdmFsaWRfYXJjaGVzIGRlYmFyY2hfZXEgZGViYXJjaF9pcyBkZWJhcmNoX3RvX2RlYnRyaXBsZXQKKyAgICAgICAgICAgICAgICAgIGRlYmFyY2hfdG9fZ251dHJpcGxldCBnbnV0cmlwbGV0X3RvX2RlYmFyY2gKKyAgICAgICAgICAgICAgICAgIGRlYmFyY2hfdG9fbXVsdGlhcmNoKTsKKwordGV4dGRvbWFpbigiZHBrZy1kZXYiKTsKKworc3ViIHZlcnNpb24geworICAgIHByaW50ZiBfZygiRGViaWFuICVzIHZlcnNpb24gJXMuXG4iKSwgJHByb2duYW1lLCAkdmVyc2lvbjsKKworICAgIHByaW50ZiBfZygiCitDb3B5cmlnaHQgKEMpIDE5OTktMjAwMSBNYXJjdXMgQnJpbmttYW5uIDxicmlua21kXEBkZWJpYW4ub3JnPi4KK0NvcHlyaWdodCAoQykgMjAwNC0yMDA1IFNjb3R0IEphbWVzIFJlbW5hbnQgPHNjb3R0XEBuZXRzcGxpdC5jb20+LiIpOworCisgICAgcHJpbnRmIF9nKCIKK1RoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgb3IKK2xhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LgorIik7Cit9CisKK3N1YiB1c2FnZSB7CisgICAgcHJpbnRmIF9nKAorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSBbPGFjdGlvbj5dCisKK09wdGlvbnM6CisgIC1hPGRlYmlhbi1hcmNoPiAgICBzZXQgY3VycmVudCBEZWJpYW4gYXJjaGl0ZWN0dXJlLgorICAtdDxnbnUtc3lzdGVtPiAgICAgc2V0IGN1cnJlbnQgR05VIHN5c3RlbSB0eXBlLgorICAtTCAgICAgICAgICAgICAgICAgbGlzdCB2YWxpZCBhcmNoaXRlY3R1cmVzLgorICAtZiAgICAgICAgICAgICAgICAgZm9yY2UgZmxhZyAob3ZlcnJpZGUgdmFyaWFibGVzIHNldCBpbiBlbnZpcm9ubWVudCkuCisKK0FjdGlvbnM6CisgIC1sICAgICAgICAgICAgICAgICBsaXN0IHZhcmlhYmxlcyAoZGVmYXVsdCkuCisgIC1lPGRlYmlhbi1hcmNoPiAgICBjb21wYXJlIHdpdGggY3VycmVudCBEZWJpYW4gYXJjaGl0ZWN0dXJlLgorICAtaTxhcmNoLWFsaWFzPiAgICAgY2hlY2sgaWYgY3VycmVudCBEZWJpYW4gYXJjaGl0ZWN0dXJlIGlzIDxhcmNoLWFsaWFzPi4KKyAgLXE8dmFyaWFibGU+ICAgICAgIHByaW50cyBvbmx5IHRoZSB2YWx1ZSBvZiA8dmFyaWFibGU+LgorICAtcyAgICAgICAgICAgICAgICAgcHJpbnQgY29tbWFuZCB0byBzZXQgZW52aXJvbm1lbnQgdmFyaWFibGVzLgorICAtdSAgICAgICAgICAgICAgICAgcHJpbnQgY29tbWFuZCB0byB1bnNldCBlbnZpcm9ubWVudCB2YXJpYWJsZXMuCisgIC1jIDxjb21tYW5kPiAgICAgICBzZXQgZW52aXJvbm1lbnQgYW5kIHJ1biB0aGUgY29tbWFuZCBpbiBpdC4KKyAgLS1oZWxwICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuCisgIC0tdmVyc2lvbiAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLgorIiksICRwcm9nbmFtZTsKK30KKworc3ViIGxpc3RfYXJjaGVzKCkKK3sKKyAgICBmb3JlYWNoIG15ICRhcmNoIChnZXRfdmFsaWRfYXJjaGVzKCkpIHsKKwlwcmludCAiJGFyY2hcbiI7CisgICAgfQorfQorCisKK215ICRyZXFfaG9zdF9hcmNoID0gJyc7CitteSAkcmVxX2hvc3RfZ251X3R5cGUgPSAnJzsKK215ICRyZXFfZXFfYXJjaCA9ICcnOworbXkgJHJlcV9pc19hcmNoID0gJyc7CitteSAkcmVxX3ZhcmlhYmxlX3RvX3ByaW50OworbXkgJGFjdGlvbiA9ICdsJzsKK215ICRmb3JjZSA9IDA7CisKK3doaWxlIChAQVJHVikgeworICAgICRfPXNoaWZ0KEBBUkdWKTsKKyAgICBpZiAobS9eLWEvKSB7CisJJHJlcV9ob3N0X2FyY2ggPSAiJCciOworICAgIH0gZWxzaWYgKG0vXi10LykgeworCSRyZXFfaG9zdF9nbnVfdHlwZSA9ICIkJyI7CisgICAgfSBlbHNpZiAobS9eLWUvKSB7CisJJHJlcV9lcV9hcmNoID0gIiQnIjsKKwkkYWN0aW9uID0gJ2UnOworICAgIH0gZWxzaWYgKG0vXi1pLykgeworCSRyZXFfaXNfYXJjaCA9ICIkJyI7CisJJGFjdGlvbiA9ICdpJzsKKyAgICB9IGVsc2lmIChtL14tW2xzdV0kLykgeworCSRhY3Rpb24gPSAkXzsKKwkkYWN0aW9uID1+IHMvXi0vLzsKKyAgICB9IGVsc2lmIChtL14tZiQvKSB7CisgICAgICAgICRmb3JjZT0xOworICAgIH0gZWxzaWYgKG0vXi1xLykgeworICAgICAgICAkcmVxX3ZhcmlhYmxlX3RvX3ByaW50ID0gIiQnIjsKKyAgICAgICAgJGFjdGlvbiA9ICdxJzsKKyAgICB9IGVsc2lmIChtL14tYyQvKSB7CisgICAgICAgJGFjdGlvbiA9ICdjJzsKKyAgICAgICBsYXN0OworICAgIH0gZWxzaWYgKG0vXi1MJC8pIHsKKyAgICAgICAgbGlzdF9hcmNoZXMoKTsKKyAgICAgICAgZXhpdCB1bmxlc3MgQEFSR1Y7CisgICAgfSBlbHNpZiAobS9eLShofC1oZWxwKSQvKSB7CisgICAgICAgIHVzYWdlKCk7CisgICAgICAgZXhpdCAwOworICAgIH0gZWxzaWYgKG0vXi0tdmVyc2lvbiQvKSB7CisgICAgICAgIHZlcnNpb24oKTsKKyAgICAgICBleGl0IDA7CisgICAgfSBlbHNlIHsKKwl1c2FnZWVycihfZygidW5rbm93biBvcHRpb24gXGAlcyciKSwgJF8pOworICAgIH0KK30KKworIyBTZXQgZGVmYXVsdCB2YWx1ZXM6CisKK215ICV2OworCitteSBAb3JkZXJlZCA9IHF3KERFQl9CVUlMRF9BUkNIIERFQl9CVUlMRF9BUkNIX09TIERFQl9CVUlMRF9BUkNIX0NQVQorICAgICAgICAgICAgICAgICBERUJfQlVJTERfQVJDSF9CSVRTIERFQl9CVUlMRF9BUkNIX0VORElBTgorICAgICAgICAgICAgICAgICBERUJfQlVJTERfR05VX0NQVSBERUJfQlVJTERfR05VX1NZU1RFTSBERUJfQlVJTERfR05VX1RZUEUKKyAgICAgICAgICAgICAgICAgREVCX0JVSUxEX01VTFRJQVJDSAorICAgICAgICAgICAgICAgICBERUJfSE9TVF9BUkNIIERFQl9IT1NUX0FSQ0hfT1MgREVCX0hPU1RfQVJDSF9DUFUKKyAgICAgICAgICAgICAgICAgREVCX0hPU1RfQVJDSF9CSVRTIERFQl9IT1NUX0FSQ0hfRU5ESUFOCisgICAgICAgICAgICAgICAgIERFQl9IT1NUX0dOVV9DUFUgREVCX0hPU1RfR05VX1NZU1RFTSBERUJfSE9TVF9HTlVfVFlQRQorICAgICAgICAgICAgICAgICBERUJfSE9TVF9NVUxUSUFSQ0gpOworCiskdntERUJfQlVJTERfQVJDSH0gPSBnZXRfcmF3X2J1aWxkX2FyY2goKTsKKyR2e0RFQl9CVUlMRF9HTlVfVFlQRX0gPSBkZWJhcmNoX3RvX2dudXRyaXBsZXQoJHZ7REVCX0JVSUxEX0FSQ0h9KTsKKworIyBTZXQgdXNlciB2YWx1ZXM6CisKK2lmICgkcmVxX2hvc3RfYXJjaCBuZSAnJyAmJiAkcmVxX2hvc3RfZ251X3R5cGUgZXEgJycpIHsKKyAgICAkcmVxX2hvc3RfZ251X3R5cGUgPSBkZWJhcmNoX3RvX2dudXRyaXBsZXQoJHJlcV9ob3N0X2FyY2gpOworICAgIGRpZSAoc3ByaW50ZihfZygidW5rbm93biBEZWJpYW4gYXJjaGl0ZWN0dXJlICVzLCB5b3UgbXVzdCBzcGVjaWZ5ICIgLgorICAgICAgICAgICAgICAgICAgICAiR05VIHN5c3RlbSB0eXBlLCB0b28iKSwgJHJlcV9ob3N0X2FyY2gpKQorICAgICAgICB1bmxlc3MgZGVmaW5lZCAkcmVxX2hvc3RfZ251X3R5cGU7Cit9CisKK2lmICgkcmVxX2hvc3RfZ251X3R5cGUgbmUgJycgJiYgJHJlcV9ob3N0X2FyY2ggZXEgJycpIHsKKyAgICAkcmVxX2hvc3RfYXJjaCA9IGdudXRyaXBsZXRfdG9fZGViYXJjaCgkcmVxX2hvc3RfZ251X3R5cGUpOworICAgIGRpZSAoc3ByaW50ZihfZygidW5rbm93biBHTlUgc3lzdGVtIHR5cGUgJXMsIHlvdSBtdXN0IHNwZWNpZnkgIiAuCisgICAgICAgICAgICAgICAgICAgICJEZWJpYW4gYXJjaGl0ZWN0dXJlLCB0b28iKSwgJHJlcV9ob3N0X2dudV90eXBlKSkKKyAgICAgICAgdW5sZXNzIGRlZmluZWQgJHJlcV9ob3N0X2FyY2g7Cit9CisKK2lmICgkcmVxX2hvc3RfZ251X3R5cGUgbmUgJycgJiYgJHJlcV9ob3N0X2FyY2ggbmUgJycpIHsKKyAgICBteSAkZGZsX2hvc3RfZ251X3R5cGUgPSBkZWJhcmNoX3RvX2dudXRyaXBsZXQoJHJlcV9ob3N0X2FyY2gpOworICAgIGRpZSAoc3ByaW50ZihfZygidW5rbm93biBkZWZhdWx0IEdOVSBzeXN0ZW0gdHlwZSBmb3IgRGViaWFuIGFyY2hpdGVjdHVyZSAlcyIpLAorICAgICAgICAgICAgICAgICAkcmVxX2hvc3RfYXJjaCkpCisJdW5sZXNzIGRlZmluZWQgJGRmbF9ob3N0X2dudV90eXBlOworICAgIHdhcm5pbmcoX2coIkRlZmF1bHQgR05VIHN5c3RlbSB0eXBlICVzIGZvciBEZWJpYW4gYXJjaCAlcyBkb2VzIG5vdCAiIC4KKyAgICAgICAgICAgICAgICJtYXRjaCBzcGVjaWZpZWQgR05VIHN5c3RlbSB0eXBlICVzIiksICRkZmxfaG9zdF9nbnVfdHlwZSwKKyAgICAgICAgICAgICRyZXFfaG9zdF9hcmNoLCAkcmVxX2hvc3RfZ251X3R5cGUpCisgICAgICAgIGlmICRkZmxfaG9zdF9nbnVfdHlwZSBuZSAkcmVxX2hvc3RfZ251X3R5cGU7Cit9CisKK2lmICgkcmVxX2hvc3RfYXJjaCBlcSAnJykgeworICAgICR2e0RFQl9IT1NUX0FSQ0h9ID0gZ2V0X3Jhd19ob3N0X2FyY2goKTsKK30gZWxzZSB7CisgICAgJHZ7REVCX0hPU1RfQVJDSH0gPSAkcmVxX2hvc3RfYXJjaDsKK30KK2lmICgkcmVxX2hvc3RfZ251X3R5cGUgZXEgJycpIHsKKyAgICAkdntERUJfSE9TVF9HTlVfVFlQRX0gPSBkZWJhcmNoX3RvX2dudXRyaXBsZXQoJHZ7REVCX0hPU1RfQVJDSH0pOworfSBlbHNlIHsKKyAgICAkdntERUJfSE9TVF9HTlVfVFlQRX0gPSAkcmVxX2hvc3RfZ251X3R5cGU7Cit9CisKK215ICRnY2MgPSBnZXRfZ2NjX2hvc3RfZ251X3R5cGUoKTsKKword2FybmluZyhfZygiU3BlY2lmaWVkIEdOVSBzeXN0ZW0gdHlwZSAlcyBkb2VzIG5vdCBtYXRjaCBnY2Mgc3lzdGVtIHR5cGUgJXMuIiksCisgICAgICAgICR2e0RFQl9IT1NUX0dOVV9UWVBFfSwgJGdjYykKKyAgICBpZiAhKCRyZXFfaXNfYXJjaCBvciAkcmVxX2VxX2FyY2gpICYmCisgICAgICAgKCRnY2MgbmUgJycpICYmICgkZ2NjIG5lICR2e0RFQl9IT1NUX0dOVV9UWVBFfSk7CisKKyMgU3BsaXQgdGhlIERlYmlhbiBhbmQgR05VIG5hbWVzCitteSAkYWJpOworCisoJGFiaSwgJHZ7REVCX0hPU1RfQVJDSF9PU30sICR2e0RFQl9IT1NUX0FSQ0hfQ1BVfSkgPSBkZWJhcmNoX3RvX2RlYnRyaXBsZXQoJHZ7REVCX0hPU1RfQVJDSH0pOworKCRhYmksICR2e0RFQl9CVUlMRF9BUkNIX09TfSwgJHZ7REVCX0JVSUxEX0FSQ0hfQ1BVfSkgPSBkZWJhcmNoX3RvX2RlYnRyaXBsZXQoJHZ7REVCX0JVSUxEX0FSQ0h9KTsKKygkdntERUJfSE9TVF9HTlVfQ1BVfSwgJHZ7REVCX0hPU1RfR05VX1NZU1RFTX0pID0gc3BsaXQoLy0vLCAkdntERUJfSE9TVF9HTlVfVFlQRX0sIDIpOworKCR2e0RFQl9CVUlMRF9HTlVfQ1BVfSwgJHZ7REVCX0JVSUxEX0dOVV9TWVNURU19KSA9IHNwbGl0KC8tLywgJHZ7REVCX0JVSUxEX0dOVV9UWVBFfSwgMik7CisKKygkdntERUJfSE9TVF9BUkNIX0JJVFN9LCAkdntERUJfSE9TVF9BUkNIX0VORElBTn0pID0gZGViYXJjaF90b19jcHVhdHRycygkdntERUJfSE9TVF9BUkNIfSk7CisoJHZ7REVCX0JVSUxEX0FSQ0hfQklUU30sICR2e0RFQl9CVUlMRF9BUkNIX0VORElBTn0pID0gZGViYXJjaF90b19jcHVhdHRycygkdntERUJfQlVJTERfQVJDSH0pOworCiskdntERUJfQlVJTERfTVVMVElBUkNIfSA9IGRlYmFyY2hfdG9fbXVsdGlhcmNoKCR2e0RFQl9CVUlMRF9BUkNIfSk7CiskdntERUJfSE9TVF9NVUxUSUFSQ0h9ID0gZGViYXJjaF90b19tdWx0aWFyY2goJHZ7REVCX0hPU1RfQVJDSH0pOworCitmb3IgbXkgJGsgKEBvcmRlcmVkKSB7CisgICAgJHZ7JGt9ID0gJEVOVnska30gaWYgKGRlZmluZWQgKCRFTlZ7JGt9KSAmJiAhJGZvcmNlKTsKK30KKworaWYgKCRhY3Rpb24gZXEgJ2wnKSB7CisgICAgZm9yZWFjaCBteSAkayAoQG9yZGVyZWQpIHsKKwlwcmludCAiJGs9JHZ7JGt9XG4iOworICAgIH0KK30gZWxzaWYgKCRhY3Rpb24gZXEgJ3MnKSB7CisgICAgZm9yZWFjaCBteSAkayAoQG9yZGVyZWQpIHsKKwlwcmludCAiJGs9JHZ7JGt9OyAiOworICAgIH0KKyAgICBwcmludCAiZXhwb3J0ICIuam9pbigiICIsQG9yZGVyZWQpLiJcbiI7Cit9IGVsc2lmICgkYWN0aW9uIGVxICd1JykgeworICAgIHByaW50ICJ1bnNldCAiLmpvaW4oIiAiLEBvcmRlcmVkKS4iXG4iOworfSBlbHNpZiAoJGFjdGlvbiBlcSAnZScpIHsKKyAgICBleGl0ICFkZWJhcmNoX2VxKCR2e0RFQl9IT1NUX0FSQ0h9LCAkcmVxX2VxX2FyY2gpOworfSBlbHNpZiAoJGFjdGlvbiBlcSAnaScpIHsKKyAgICBleGl0ICFkZWJhcmNoX2lzKCR2e0RFQl9IT1NUX0FSQ0h9LCAkcmVxX2lzX2FyY2gpOworfSBlbHNpZiAoJGFjdGlvbiBlcSAnYycpIHsKKyAgICBARU5We2tleXMgJXZ9ID0gdmFsdWVzICV2OworICAgIGV4ZWMgQEFSR1Y7Cit9IGVsc2lmICgkYWN0aW9uIGVxICdxJykgeworICAgIGlmIChleGlzdHMgJHZ7JHJlcV92YXJpYWJsZV90b19wcmludH0pIHsKKyAgICAgICAgcHJpbnQgIiR2eyRyZXFfdmFyaWFibGVfdG9fcHJpbnR9XG4iOworICAgIH0gZWxzZSB7CisgICAgICAgIGRpZSBzcHJpbnRmKF9nKCIlcyBpcyBub3QgYSBzdXBwb3J0ZWQgdmFyaWFibGUgbmFtZSIpLCAkcmVxX3ZhcmlhYmxlX3RvX3ByaW50KTsKKyAgICB9Cit9CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvZHBrZy1idWlsZGZsYWdzLnBsIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL2Rwa2ctYnVpbGRmbGFncy5wbApuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwLi5lZTMzOTYxCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL2Rwa2ctYnVpbGRmbGFncy5wbApAQCAtMCwwICsxLDE0MiBAQAorIyEvdXNyL2Jpbi9wZXJsCisjCisjIGRwa2ctYnVpbGRmbGFncworIworIyBDb3B5cmlnaHQgwqkgMjAxMC0yMDExIFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KKyMKKyMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyMKKyMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisjIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisjIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyMKKyMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisKK3VzZSBzdHJpY3Q7Cit1c2Ugd2FybmluZ3M7CisKK3VzZSBEcGtnOwordXNlIERwa2c6OkdldHRleHQ7Cit1c2UgRHBrZzo6RXJyb3JIYW5kbGluZzsKK3VzZSBEcGtnOjpCdWlsZEZsYWdzOworCit0ZXh0ZG9tYWluKCJkcGtnLWRldiIpOworCitzdWIgdmVyc2lvbiB7CisgICAgcHJpbnRmIF9nKCJEZWJpYW4gJXMgdmVyc2lvbiAlcy5cbiIpLCAkcHJvZ25hbWUsICR2ZXJzaW9uOworCisgICAgcHJpbnRmIF9nKCIKK0NvcHlyaWdodCAoQykgMjAxMC0yMDExIFJhcGhhZWwgSGVydHpvZyA8aGVydHpvZ1xAZGViaWFuLm9yZz4uIik7CisKKyAgICBwcmludGYgX2coIgorVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvcgorbGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuCisiKTsKK30KKworc3ViIHVzYWdlIHsKKyAgICBwcmludGYgX2coCisiVXNhZ2U6ICVzIFs8YWN0aW9uPl0KKworQWN0aW9uczoKKyAgLS1nZXQgPGZsYWc+ICAgICAgIG91dHB1dCB0aGUgcmVxdWVzdGVkIGZsYWcgdG8gc3Rkb3V0LgorICAtLW9yaWdpbiA8ZmxhZz4gICAgb3V0cHV0IHRoZSBvcmlnaW4gb2YgdGhlIGZsYWcgdG8gc3Rkb3V0OgorICAgICAgICAgICAgICAgICAgICAgdmFsdWUgaXMgb25lIG9mIHZlbmRvciwgc3lzdGVtLCB1c2VyLCBlbnYuCisgIC0tbGlzdCAgICAgICAgICAgICBvdXRwdXQgYSBsaXN0IG9mIHRoZSBmbGFncyBzdXBwb3J0ZWQgYnkgdGhlIGN1cnJlbnQgdmVuZG9yLgorICAtLWV4cG9ydD0oc2h8bWFrZXxjb25maWd1cmUpCisgICAgICAgICAgICAgICAgICAgICBvdXRwdXQgc29tZXRoaW5nIGNvbnZlbmllbnQgdG8gaW1wb3J0IHRoZQorICAgICAgICAgICAgICAgICAgICAgY29tcGlsYXRpb24gZmxhZ3MgaW4gYSBzaGVsbCBzY3JpcHQsIGluIG1ha2UsCisgICAgICAgICAgICAgICAgICAgICBvciBvbiBhIC4vY29uZmlndXJlIGNvbW1hbmQgbGluZS4KKyAgLS1kdW1wICAgICAgICAgICAgIG91dHB1dCBhbGwgY29tcGlsYXRpb24gZmxhZ3Mgd2l0aCB0aGVpciB2YWx1ZXMKKyAgLS1oZWxwICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuCisgIC0tdmVyc2lvbiAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLgorIiksICRwcm9nbmFtZTsKK30KKworbXkgKCRwYXJhbSwgJGFjdGlvbik7CisKK3doaWxlIChAQVJHVikgeworICAgICRfID0gc2hpZnQoQEFSR1YpOworICAgIGlmIChtL14tLShnZXR8b3JpZ2luKSQvKSB7CisgICAgICAgIHVzYWdlZXJyKF9nKCJ0d28gY29tbWFuZHMgc3BlY2lmaWVkOiAtLSVzIGFuZCAtLSVzIiksICQxLCAkYWN0aW9uKQorICAgICAgICAgICAgaWYgZGVmaW5lZCgkYWN0aW9uKTsKKyAgICAgICAgJGFjdGlvbiA9ICQxOworICAgICAgICAkcGFyYW0gPSBzaGlmdChAQVJHVik7CisJdXNhZ2VlcnIoX2coIiVzIG5lZWRzIGEgcGFyYW1ldGVyIiksICRfKSB1bmxlc3MgZGVmaW5lZCAkcGFyYW07CisgICAgfSBlbHNpZiAobS9eLS1leHBvcnQoPzo9KHNofG1ha2V8Y29uZmlndXJlKSk/JC8pIHsKKyAgICAgICAgdXNhZ2VlcnIoX2coInR3byBjb21tYW5kcyBzcGVjaWZpZWQ6IC0tJXMgYW5kIC0tJXMiKSwgImV4cG9ydCIsICRhY3Rpb24pCisgICAgICAgICAgICBpZiBkZWZpbmVkKCRhY3Rpb24pOworICAgICAgICBteSAkdHlwZSA9ICQxIHx8ICJzaCI7CisgICAgICAgICRhY3Rpb24gPSAiZXhwb3J0LSR0eXBlIjsKKyAgICB9IGVsc2lmIChtL14tLWR1bXAkLykgeworICAgICAgICB1c2FnZWVycihfZygidHdvIGNvbW1hbmRzIHNwZWNpZmllZDogLS0lcyBhbmQgLS0lcyIpLCAiZHVtcCIsICRhY3Rpb24pCisgICAgICAgICAgICBpZiBkZWZpbmVkKCRhY3Rpb24pOworICAgICAgICAkYWN0aW9uID0gImR1bXAiOworICAgIH0gZWxzaWYgKG0vXi0tbGlzdCQvKSB7CisgICAgICAgIHVzYWdlZXJyKF9nKCJ0d28gY29tbWFuZHMgc3BlY2lmaWVkOiAtLSVzIGFuZCAtLSVzIiksICJsaXN0IiwgJGFjdGlvbikKKyAgICAgICAgICAgIGlmIGRlZmluZWQoJGFjdGlvbik7CisgICAgICAgICRhY3Rpb24gPSAibGlzdCI7CisgICAgfSBlbHNpZiAobS9eLShofC1oZWxwKSQvKSB7CisgICAgICAgIHVzYWdlKCk7CisgICAgICAgIGV4aXQgMDsKKyAgICB9IGVsc2lmIChtL14tLXZlcnNpb24kLykgeworICAgICAgICB2ZXJzaW9uKCk7CisgICAgICAgIGV4aXQgMDsKKyAgICB9IGVsc2UgeworCXVzYWdlZXJyKF9nKCJ1bmtub3duIG9wdGlvbiBcYCVzJyIpLCAkXyk7CisgICAgfQorfQorCiskYWN0aW9uID0gImR1bXAiIHVubGVzcyBkZWZpbmVkKCRhY3Rpb24pOworCitteSAkYnVpbGRfZmxhZ3MgPSBEcGtnOjpCdWlsZEZsYWdzLT5uZXcoKTsKKworaWYgKCRhY3Rpb24gZXEgImxpc3QiKSB7CisgICAgZm9yZWFjaCBteSAkZmxhZyAoJGJ1aWxkX2ZsYWdzLT5saXN0KCkpIHsKKwlwcmludCAiJGZsYWdcbiI7CisgICAgfQorICAgIGV4aXQoMCk7Cit9CisKKyRidWlsZF9mbGFncy0+bG9hZF9jb25maWcoKTsKKworaWYgKCRhY3Rpb24gZXEgImdldCIpIHsKKyAgICBpZiAoJGJ1aWxkX2ZsYWdzLT5oYXMoJHBhcmFtKSkgeworCXByaW50ICRidWlsZF9mbGFncy0+Z2V0KCRwYXJhbSkgLiAiXG4iOworCWV4aXQoMCk7CisgICAgfQorfSBlbHNpZiAoJGFjdGlvbiBlcSAib3JpZ2luIikgeworICAgIGlmICgkYnVpbGRfZmxhZ3MtPmhhcygkcGFyYW0pKSB7CisJcHJpbnQgJGJ1aWxkX2ZsYWdzLT5nZXRfb3JpZ2luKCRwYXJhbSkgLiAiXG4iOworCWV4aXQoMCk7CisgICAgfQorfSBlbHNpZiAoJGFjdGlvbiA9fiBtL15leHBvcnQtKC4qKSQvKSB7CisgICAgbXkgJGV4cG9ydF90eXBlID0gJDE7CisgICAgZm9yZWFjaCBteSAkZmxhZyAoJGJ1aWxkX2ZsYWdzLT5saXN0KCkpIHsKKwluZXh0IHVubGVzcyAkZmxhZyA9fiAvXltBLVpdLzsgIyBTa2lwIGZsYWdzIHN0YXJ0aW5nIHdpdGggbG93ZXJjYXNlCisJbXkgJHZhbHVlID0gJGJ1aWxkX2ZsYWdzLT5nZXQoJGZsYWcpOworCWlmICgkZXhwb3J0X3R5cGUgZXEgInNoIikgeworCSAgICAkdmFsdWUgPX4gcy8iL1wiL2c7CisJICAgIHByaW50ICJleHBvcnQgJGZsYWc9XCIkdmFsdWVcIlxuIjsKKwl9IGVsc2lmICgkZXhwb3J0X3R5cGUgZXEgIm1ha2UiKSB7CisJICAgICR2YWx1ZSA9fiBzL1wkL1wkXCQvZzsKKwkgICAgcHJpbnQgImV4cG9ydCAkZmxhZyA6PSAkdmFsdWVcbiI7CisJfSBlbHNpZiAoJGV4cG9ydF90eXBlIGVxICJjb25maWd1cmUiKSB7CisJICAgIHByaW50ICIkZmxhZz1cIiR2YWx1ZVwiICI7CisJfQorICAgIH0KKyAgICBleGl0KDApOworfSBlbHNpZiAoJGFjdGlvbiBlcSAiZHVtcCIpIHsKKyAgICBmb3JlYWNoIG15ICRmbGFnICgkYnVpbGRfZmxhZ3MtPmxpc3QoKSkgeworCW15ICR2YWx1ZSA9ICRidWlsZF9mbGFncy0+Z2V0KCRmbGFnKTsKKwlwcmludCAiJGZsYWc9JHZhbHVlXG4iOworICAgIH0KKyAgICBleGl0KDApOworfQorCitleGl0KDEpOwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsCm5ldyBmaWxlIG1vZGUgMTAwNzU1CmluZGV4IDAwMDAwMDAuLjUwZTYxNzAKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGwKQEAgLTAsMCArMSw1MjYgQEAKKyMhL3Vzci9iaW4vcGVybAorIworIyBkcGtnLWJ1aWxkcGFja2FnZQorIworIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorIworIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorIworIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKwordXNlIHN0cmljdDsKK3VzZSB3YXJuaW5nczsKKwordXNlIEN3ZDsKK3VzZSBGaWxlOjpCYXNlbmFtZTsKK3VzZSBQT1NJWDsKKwordXNlIERwa2c7Cit1c2UgRHBrZzo6R2V0dGV4dDsKK3VzZSBEcGtnOjpFcnJvckhhbmRsaW5nOwordXNlIERwa2c6OkJ1aWxkT3B0aW9uczsKK3VzZSBEcGtnOjpDb21wcmVzc2lvbjsKK3VzZSBEcGtnOjpWZXJzaW9uOwordXNlIERwa2c6OkNoYW5nZWxvZzo6UGFyc2U7Cit1c2UgRHBrZzo6UGF0aCBxdyhmaW5kX2NvbW1hbmQpOworCit0ZXh0ZG9tYWluKCJkcGtnLWRldiIpOworCitzdWIgc2hvd3ZlcnNpb24geworICAgIHByaW50ZiBfZygiRGViaWFuICVzIHZlcnNpb24gJXMuXG4iKSwgJHByb2duYW1lLCAkdmVyc2lvbjsKKworICAgIHByaW50IF9nKCIKK0NvcHlyaWdodCAoQykgMTk5NiBJYW4gSmFja3Nvbi4KK0NvcHlyaWdodCAoQykgMjAwMCBXaWNoZXJ0IEFra2VybWFuCitDb3B5cmlnaHQgKEMpIDIwMDcgRnJhbmsgTGljaHRlbmhlbGQiKTsKKworICAgIHByaW50IF9nKCIKK1RoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgb3IKK2xhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LgorIik7Cit9CisKK3N1YiB1c2FnZSB7CisJcHJpbnRmIF9nKCIKK1VzYWdlOiAlcyBbPG9wdGlvbnM+IC4uLl0KKworT3B0aW9uczoKKyAgLXI8Z2Fpbi1yb290LWNvbW1hbmQ+CisgICAgICAgICAgICAgICAgIGNvbW1hbmQgdG8gZ2FpbiByb290IHByaXZpbGVnZXMgKGRlZmF1bHQgaXMgZmFrZXJvb3QpLgorICAtUjxydWxlcz4gICAgICBydWxlcyBmaWxlIHRvIGV4ZWN1dGUgKGRlZmF1bHQgaXMgZGViaWFuL3J1bGVzKS4KKyAgLXA8c2lnbi1jb21tYW5kPgorICAtZCAgICAgICAgICAgICBkbyBub3QgY2hlY2sgYnVpbGQgZGVwZW5kZW5jaWVzIGFuZCBjb25mbGljdHMuCisgIC1EICAgICAgICAgICAgIGNoZWNrIGJ1aWxkIGRlcGVuZGVuY2llcyBhbmQgY29uZmxpY3RzLgorICAtVDx0YXJnZXQ+ICAgICBjYWxsIGRlYmlhbi9ydWxlcyA8dGFyZ2V0PiB3aXRoIHRoZSBwcm9wZXIgZW52aXJvbm1lbnQKKyAgLS1hcy1yb290ICAgICAgZW5zdXJlIC1UIGNhbGxzIHRoZSB0YXJnZXQgd2l0aCByb290IHJpZ2h0cworICAtals8bnVtYmVyPl0gICBzcGVjaWZ5IGpvYnMgdG8gcnVuIHNpbXVsdGFuZW91c2x5IH0gcGFzc2VkIHRvIGRlYmlhbi9ydWxlcworICAtazxrZXlpZD4gICAgICB0aGUga2V5IHRvIHVzZSBmb3Igc2lnbmluZy4KKyAgLXNncGcgICAgICAgICAgdGhlIHNpZ24tY29tbWFuZCBpcyBjYWxsZWQgbGlrZSBHUEcuCisgIC1zcGdwICAgICAgICAgIHRoZSBzaWduLWNvbW1hbmQgaXMgY2FsbGVkIGxpa2UgUEdQLgorICAtdXMgICAgICAgICAgICB1bnNpZ25lZCBzb3VyY2UuCisgIC11YyAgICAgICAgICAgIHVuc2lnbmVkIGNoYW5nZXMuCisgIC1hPGFyY2g+ICAgICAgIERlYmlhbiBhcmNoaXRlY3R1cmUgd2UgYnVpbGQgZm9yIChpbXBsaWVzIC1kKS4KKyAgLWIgICAgICAgICAgICAgYmluYXJ5LW9ubHksIGRvIG5vdCBidWlsZCBzb3VyY2UuICAgfSBhbHNvIHBhc3NlZCB0bworICAtQiAgICAgICAgICAgICBiaW5hcnktb25seSwgbm8gYXJjaC1pbmRlcCBmaWxlcy4gICB9IGRwa2ctZ2VuY2hhbmdlcworICAtQSAgICAgICAgICAgICBiaW5hcnktb25seSwgb25seSBhcmNoLWluZGVwIGZpbGVzLiB9CisgIC1TICAgICAgICAgICAgIHNvdXJjZSBvbmx5LCBubyBiaW5hcnkgZmlsZXMuICAgICB9CisgIC1GICAgICAgICAgICAgIG5vcm1hbCBmdWxsIGJ1aWxkIChiaW5hcmllcyBhbmQgc291cmNlcykuCisgIC10PHN5c3RlbT4gICAgIHNldCBHTlUgc3lzdGVtIHR5cGUuICAgICAgICAgICB9IHBhc3NlZCB0byBkcGtnLWFyY2hpdGVjdHVyZQorICAtdjx2ZXJzaW9uPiAgICBjaGFuZ2VzIHNpbmNlIHZlcnNpb24gPHZlcnNpb24+LiAgICAgIH0KKyAgLW08bWFpbnQ+ICAgICAgbWFpbnRhaW5lciBmb3IgcGFja2FnZSBpcyA8bWFpbnQ+LiAgICB9CisgIC1lPG1haW50PiAgICAgIG1haW50YWluZXIgZm9yIHJlbGVhc2UgaXMgPG1haW50Pi4gICAgfSBvbmx5IHBhc3NlZAorICAtQzxkZXNjZmlsZT4gICBjaGFuZ2VzIGFyZSBkZXNjcmliZWQgaW4gPGRlc2NmaWxlPi4gIH0gdG8gZHBrZy1nZW5jaGFuZ2VzCisgIC1zaSAoZGVmYXVsdCkgIHNyYyBpbmNsdWRlcyBvcmlnIGlmIG5ldyB1cHN0cmVhbS4gICAgfQorICAtc2EgICAgICAgICAgICB1cGxvYWRlZCBzcmMgYWx3YXlzIGluY2x1ZGVzIG9yaWcuICAgIH0KKyAgLXNkICAgICAgICAgICAgdXBsb2FkZWQgc3JjIGlzIGRpZmYgYW5kIC5kc2Mgb25seS4gICB9CisgIC1zbiAgICAgICAgICAgIGZvcmNlIERlYmlhbiBuYXRpdmUgc291cmNlIGZvcm1hdC4gICAgICB9CisgIC1zW3NBa3VyS1VSXSAgIHNlZSBkcGtnLXNvdXJjZSBmb3IgZXhwbGFuYXRpb24uICAgICAgICB9IG9ubHkgcGFzc2VkCisgIC16PGxldmVsPiAgICAgIGNvbXByZXNzaW9uIGxldmVsIG9mIHNvdXJjZSAgICAgICAgICAgICB9IHRvIGRwa2ctc291cmNlCisgIC1aPGNvbXByZXNzb3I+IGNvbXByZXNzaW9uIHRvIHVzZSBmb3Igc291cmNlICAgICAgICAgICB9CisgIC1uYyAgICAgICAgICAgIGRvIG5vdCBjbGVhbiBzb3VyY2UgdHJlZSAoaW1wbGllcyAtYikuCisgIC10YyAgICAgICAgICAgIGNsZWFuIHNvdXJjZSB0cmVlIHdoZW4gZmluaXNoZWQuCisgIC1hcCAgICAgICAgICAgIGFkZCBwYXVzZSBiZWZvcmUgc3RhcnRpbmcgc2lnbmF0dXJlIHByb2Nlc3MuCisgIC1pWzxyZWdleD5dICAgIGlnbm9yZSBkaWZmcyBvZiBmaWxlcyBtYXRjaGluZyByZWdleC4gICAgfSBvbmx5IHBhc3NlZAorICAtSVs8cGF0dGVybj5dICBmaWx0ZXIgb3V0IGZpbGVzIHdoZW4gYnVpbGRpbmcgdGFyYmFsbHMuIH0gdG8gZHBrZy1zb3VyY2UKKyAgLS1zb3VyY2Utb3B0aW9uPTxvcHQ+CisJCSBwYXNzIG9wdGlvbiA8b3B0PiB0byBkcGtnLXNvdXJjZQorICAtLWNoYW5nZXMtb3B0aW9uPTxvcHQ+CisJCSBwYXNzIG9wdGlvbiA8b3B0PiB0byBkcGtnLWdlbmNoYW5nZXMKKyAgLS1hZG1pbmRpcj08ZGlyZWN0b3J5PgorICAgICAgICAgICAgICAgICBjaGFuZ2UgdGhlIGFkbWluaXN0cmF0aXZlIGRpcmVjdG9yeS4KKyAgLWgsIC0taGVscCAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS4KKyAgICAgIC0tdmVyc2lvbiAgc2hvdyB0aGUgdmVyc2lvbi4KKyIpLCAkcHJvZ25hbWU7Cit9CisKK215IEBkZWJpYW5fcnVsZXMgPSAoImRlYmlhbi9ydWxlcyIpOworbXkgQHJvb3Rjb21tYW5kID0gKCk7CitteSAkc2lnbmNvbW1hbmQgPSAnJzsKK2lmICggKCAoJEVOVntHTlVQR0hPTUV9ICYmIC1lICRFTlZ7R05VUEdIT01FfSkKKyAgICAgICB8fCAoJEVOVntIT01FfSAmJiAtZSAiJEVOVntIT01FfS8uZ251cGciKSApCisgICAgICYmIGZpbmRfY29tbWFuZCgnZ3BnJykpIHsKKwkgJHNpZ25jb21tYW5kID0gJ2dwZyc7Cit9IGVsc2lmIChmaW5kX2NvbW1hbmQoJ3BncCcpKSB7CisJJHNpZ25jb21tYW5kID0gJ3BncCcKK30KKworbXkgKCRhZG1pbmRpciwgJHNpZ25rZXksICRmb3JjZXNpZ25pbnRlcmZhY2UsICR1c2VwYXVzZSwgJG5vY2xlYW4sCisgICAgJGNsZWFuc291cmNlLCAkc2luY2UsICRtYWludCwKKyAgICAkY2hhbmdlZGJ5LCAkZGVzYywgJHBhcmFsbGVsKTsKK215ICRjaGVja2J1aWxkZGVwID0gMTsKK215ICRzaWduc291cmNlID0gMTsKK215ICRzaWduY2hhbmdlcyA9IDE7CitteSAkYmluYXJ5dGFyZ2V0ID0gJ2JpbmFyeSc7CitteSAkdGFyZ2V0YXJjaCA9IG15ICR0YXJnZXRnbnVzeXN0ZW0gPSAnJzsKK215ICRjYWxsX3RhcmdldCA9ICcnOworbXkgJGNhbGxfdGFyZ2V0X2FzX3Jvb3QgPSAwOworbXkgKEBjaGVja2J1aWxkZGVwX29wdHMsIEBjaGFuZ2VzX29wdHMsIEBzb3VyY2Vfb3B0cyk7CisKK3VzZSBjb25zdGFudCBCVUlMRF9ERUZBVUxUICAgID0+IDE7Cit1c2UgY29uc3RhbnQgQlVJTERfU09VUkNFICAgICA9PiAyOwordXNlIGNvbnN0YW50IEJVSUxEX0FSQ0hfREVQICAgPT4gNDsKK3VzZSBjb25zdGFudCBCVUlMRF9BUkNIX0lOREVQID0+IDg7Cit1c2UgY29uc3RhbnQgQlVJTERfQklOQVJZICAgICA9PiBCVUlMRF9BUkNIX0RFUCB8IEJVSUxEX0FSQ0hfSU5ERVA7Cit1c2UgY29uc3RhbnQgQlVJTERfQUxMICAgICAgICA9PiBCVUlMRF9CSU5BUlkgfCBCVUlMRF9TT1VSQ0U7CitteSAkaW5jbHVkZSA9IEJVSUxEX0FMTCB8IEJVSUxEX0RFRkFVTFQ7CisKK3N1YiBidWlsZF9ub3JtYWwoKSB7IHJldHVybiAoJGluY2x1ZGUgJiBCVUlMRF9BTEwpID09IEJVSUxEX0FMTDsgfQorc3ViIGJ1aWxkX3NvdXJjZW9ubHkoKSB7IHJldHVybiAkaW5jbHVkZSA9PSBCVUlMRF9TT1VSQ0U7IH0KK3N1YiBidWlsZF9iaW5hcnlvbmx5KCkgeyByZXR1cm4gISgkaW5jbHVkZSAmIEJVSUxEX1NPVVJDRSk7IH0KK3N1YiBidWlsZF9vcHQoKSB7CisgICAgcmV0dXJuICgoJGluY2x1ZGUgPT0gQlVJTERfQklOQVJZKSA/ICctYicgOgorICAgICAgICAgICAgKCgkaW5jbHVkZSA9PSBCVUlMRF9BUkNIX0RFUCkgPyAnLUInIDoKKyAgICAgICAgICAgICAoKCRpbmNsdWRlID09IEJVSUxEX0FSQ0hfSU5ERVApID8gJy1BJyA6CisgICAgICAgICAgICAgICgoJGluY2x1ZGUgPT0gQlVJTERfU09VUkNFKSA/ICctUycgOgorICAgICAgICAgICAgICAgaW50ZXJuZXJyKCJidWlsZF9vcHQgY2FsbGVkIHdpdGggaW5jbHVkZT0kaW5jbHVkZSIpKSkpKTsKK30KKword2hpbGUgKEBBUkdWKSB7CisgICAgJF8gPSBzaGlmdCBAQVJHVjsKKworICAgIGlmICgvXigtLWhlbHB8LWgpJC8pIHsKKwl1c2FnZTsKKwlleGl0IDA7CisgICAgfSBlbHNpZiAoL14tLXZlcnNpb24kLykgeworCXNob3d2ZXJzaW9uOworCWV4aXQgMDsKKyAgICB9IGVsc2lmICgvXi0tYWRtaW5kaXIkLykgeworICAgICAgICAkYWRtaW5kaXIgPSBzaGlmdCBAQVJHVjsKKyAgICB9IGVsc2lmICgvXi0tYWRtaW5kaXI9KC4qKSQvKSB7CisJJGFkbWluZGlyID0gJDE7CisgICAgfSBlbHNpZiAoL14tLXNvdXJjZS1vcHRpb249KC4qKSQvKSB7CisJcHVzaCBAc291cmNlX29wdHMsICQxOworICAgIH0gZWxzaWYgKC9eLS1jaGFuZ2VzLW9wdGlvbj0oLiopJC8pIHsKKwlwdXNoIEBjaGFuZ2VzX29wdHMsICQxOworICAgIH0gZWxzaWYgKC9eLWooXGQqKSQvKSB7CisJJHBhcmFsbGVsID0gJDEgfHwgJyc7CisgICAgfSBlbHNpZiAoL14tciguKikkLykgeworCUByb290Y29tbWFuZCA9IHNwbGl0IC9ccysvLCAkMTsKKyAgICB9IGVsc2lmICgvXi1wKC4qKSQvKSB7CisJJHNpZ25jb21tYW5kID0gJDE7CisgICAgfSBlbHNpZiAoL14tayguKikkLykgeworCSRzaWdua2V5ID0gJDE7CisgICAgfSBlbHNpZiAoL14tKFtkRF0pJC8pIHsKKwkkY2hlY2tidWlsZGRlcCA9ICgkMSBlcSAnRCcpOworICAgIH0gZWxzaWYgKC9eLXMoZ3BnfHBncCkkLykgeworCSRmb3JjZXNpZ25pbnRlcmZhY2UgPSAkMTsKKyAgICB9IGVsc2lmICgvXi11cyQvKSB7CisJJHNpZ25zb3VyY2UgPSAwOworICAgIH0gZWxzaWYgKC9eLXVjJC8pIHsKKwkkc2lnbmNoYW5nZXMgPSAwOworICAgIH0gZWxzaWYgKC9eLWFwJC8pIHsKKwkkdXNlcGF1c2UgPSAxOworICAgIH0gZWxzaWYgKC9eLWEoLiopJC8pIHsKKwkkdGFyZ2V0YXJjaCA9ICQxOworCSRjaGVja2J1aWxkZGVwID0gMDsKKyAgICB9IGVsc2lmICgvXi1zW2lhZF0kLykgeworCXB1c2ggQGNoYW5nZXNfb3B0cywgJF87CisgICAgfSBlbHNpZiAoL14tKD86c1tpbnNBa3VyS1VSXXxbelpdLip8aS4qfEkuKikkLykgeworCXB1c2ggQHNvdXJjZV9vcHRzLCAkXzsgIyBwYXNzZWQgdG8gZHBrZy1zb3VyY2UKKyAgICB9IGVsc2lmICgvXi10YyQvKSB7CisJJGNsZWFuc291cmNlID0gMTsKKyAgICB9IGVsc2lmICgvXi10KC4qKSQvKSB7CisJJHRhcmdldGdudXN5c3RlbSA9ICQxOyAjIE9yZGVyIERPRVMgbWF0dGVyIQorICAgIH0gZWxzaWYgKC9eKC0tdGFyZ2V0fC1UKSQvKSB7CisgICAgICAgICRjYWxsX3RhcmdldCA9IHNoaWZ0IEBBUkdWOworICAgIH0gZWxzaWYgKC9eKC0tdGFyZ2V0PXwtVCkoLispJC8pIHsKKyAgICAgICAgJGNhbGxfdGFyZ2V0ID0gJDI7CisgICAgfSBlbHNpZiAoL14tLWFzLXJvb3QkLykgeworICAgICAgICAkY2FsbF90YXJnZXRfYXNfcm9vdCA9IDE7CisgICAgfSBlbHNpZiAoL14tbmMkLykgeworCSRub2NsZWFuID0gMTsKKyAgICB9IGVsc2lmICgvXi1iJC8pIHsKKwlidWlsZF9zb3VyY2Vvbmx5ICYmIHVzYWdlZXJyKF9nKCJjYW5ub3QgY29tYmluZSAlcyBhbmQgJXMiKSwgJF8sICItUyIpOworCSRpbmNsdWRlID0gQlVJTERfQklOQVJZOworCXB1c2ggQGNoYW5nZXNfb3B0cywgJy1iJzsKKwlAY2hlY2tidWlsZGRlcF9vcHRzID0gKCk7CisJJGJpbmFyeXRhcmdldCA9ICdiaW5hcnknOworICAgIH0gZWxzaWYgKC9eLUIkLykgeworCWJ1aWxkX3NvdXJjZW9ubHkgJiYgdXNhZ2VlcnIoX2coImNhbm5vdCBjb21iaW5lICVzIGFuZCAlcyIpLCAkXywgIi1TIik7CisJJGluY2x1ZGUgPSBCVUlMRF9BUkNIX0RFUDsKKwlwdXNoIEBjaGFuZ2VzX29wdHMsICctQic7CisJQGNoZWNrYnVpbGRkZXBfb3B0cyA9ICgnLUInKTsKKwkkYmluYXJ5dGFyZ2V0ID0gJ2JpbmFyeS1hcmNoJzsKKyAgICB9IGVsc2lmICgvXi1BJC8pIHsKKwlidWlsZF9zb3VyY2Vvbmx5ICYmIHVzYWdlZXJyKF9nKCJjYW5ub3QgY29tYmluZSAlcyBhbmQgJXMiKSwgJF8sICItUyIpOworCSRpbmNsdWRlID0gQlVJTERfQVJDSF9JTkRFUDsKKwlwdXNoIEBjaGFuZ2VzX29wdHMsICctQSc7CisJQGNoZWNrYnVpbGRkZXBfb3B0cyA9ICgpOworCSRiaW5hcnl0YXJnZXQgPSAnYmluYXJ5LWluZGVwJzsKKyAgICB9IGVsc2lmICgvXi1TJC8pIHsKKwlidWlsZF9iaW5hcnlvbmx5ICYmIHVzYWdlZXJyKF9nKCJjYW5ub3QgY29tYmluZSAlcyBhbmQgJXMiKSwgYnVpbGRfb3B0LCAiLVMiKTsKKwkkaW5jbHVkZSA9IEJVSUxEX1NPVVJDRTsKKwlwdXNoIEBjaGFuZ2VzX29wdHMsICctUyc7CisJQGNoZWNrYnVpbGRkZXBfb3B0cyA9ICgnLUInKTsKKyAgICB9IGVsc2lmICgvXi1GJC8pIHsKKwkhYnVpbGRfbm9ybWFsICYmIHVzYWdlZXJyKF9nKCJjYW5ub3QgY29tYmluZSAlcyBhbmQgJXMiKSwgJF8sIGJ1aWxkX29wdCk7CisJJGluY2x1ZGUgPSBCVUlMRF9BTEw7CisJQGNoZWNrYnVpbGRkZXBfb3B0cyA9ICgpOworICAgIH0gZWxzaWYgKC9eLXYoLiopJC8pIHsKKwkkc2luY2UgPSAkMTsKKyAgICB9IGVsc2lmICgvXi1tKC4qKSQvKSB7CisJJG1haW50ID0gJDE7CisgICAgfSBlbHNpZiAoL14tZSguKikkLykgeworCSRjaGFuZ2VkYnkgPSAkMTsKKyAgICB9IGVsc2lmICgvXi1DKC4qKSQvKSB7CisJJGRlc2MgPSAkMTsKKyAgICB9IGVsc2lmIChtL14tW0VXXSQvKSB7CisJIyBEZXByZWNhdGVkIG9wdGlvbgorCXdhcm5pbmcoX2coIi1FIGFuZCAtVyBhcmUgZGVwcmVjYXRlZCwgdGhleSBhcmUgd2l0aG91dCBlZmZlY3QiKSk7CisgICAgfSBlbHNpZiAoL14tUiguKikkLykgeworCUBkZWJpYW5fcnVsZXMgPSBzcGxpdCAvXHMrLywgJDE7CisgICAgfSBlbHNlIHsKKwl1c2FnZWVycihfZygidW5rbm93biBvcHRpb24gb3IgYXJndW1lbnQgJXMiKSwgJF8pOworICAgIH0KK30KKworaWYgKCRub2NsZWFuKSB7CisgICAgIyAtbmMgd2l0aG91dCAtYi8tQi8tQS8tUy8tRiBpbXBsaWVzIC1iCisgICAgJGluY2x1ZGUgPSBCVUlMRF9CSU5BUlkgaWYgKCRpbmNsdWRlICYgQlVJTERfREVGQVVMVCk7Cit9CisKK2lmICgkPCA9PSAwKSB7CisgICAgd2FybmluZyhfZygidXNpbmcgYSBnYWluLXJvb3QtY29tbWFuZCB3aGlsZSBiZWluZyByb290IikpIGlmIChAcm9vdGNvbW1hbmQpOworfSBlbHNlIHsKKyAgICBwdXNoIEByb290Y29tbWFuZCwgImZha2Vyb290IiB1bmxlc3MgQHJvb3Rjb21tYW5kOworCisgICAgaWYgKCFmaW5kX2NvbW1hbmQoJHJvb3Rjb21tYW5kWzBdKSkgeworCWlmICgkcm9vdGNvbW1hbmRbMF0gZXEgJ2Zha2Vyb290JykgeworCSAgICBlcnJvcihfZygiZmFrZXJvb3Qgbm90IGZvdW5kLCBlaXRoZXIgaW5zdGFsbCB0aGUgZmFrZXJvb3RcbiIgLgorCSAgICAgICAgICAgICAicGFja2FnZSwgc3BlY2lmeSBhIGNvbW1hbmQgd2l0aCB0aGUgLXIgb3B0aW9uLCAiIC4KKwkgICAgICAgICAgICAgIm9yIHJ1biB0aGlzIGFzIHJvb3QiKSk7CisJfSBlbHNlIHsKKwkgICAgZXJyb3IoX2coImdhaW4tcm9vdC1jb21tbWFuZCAnJXMnIG5vdCBmb3VuZCIpLCAkcm9vdGNvbW1hbmRbMF0pOworCX0KKyAgICB9Cit9CisKK3VubGVzcyAoJHNpZ25jb21tYW5kKSB7CisgICAgJHNpZ25zb3VyY2UgPSAwOworICAgICRzaWduY2hhbmdlcyA9IDA7Cit9CisKK215ICRzaWduaW50ZXJmYWNlOworaWYgKCRmb3JjZXNpZ25pbnRlcmZhY2UpIHsKKyAgICAkc2lnbmludGVyZmFjZSA9ICRmb3JjZXNpZ25pbnRlcmZhY2U7Cit9IGVsc2UgeworICAgICRzaWduaW50ZXJmYWNlID0gJHNpZ25jb21tYW5kOworfQorCitpZiAoJHNpZ25jb21tYW5kKSB7CisgICAgaWYgKCRzaWduaW50ZXJmYWNlICF+IC9eKGdwZ3xwZ3ApJC8pIHsKKwl3YXJuaW5nKF9nKCJ1bmtub3duIHNpZ24gY29tbWFuZCwgYXNzdW1pbmcgcGdwIHN0eWxlIGludGVyZmFjZSIpKTsKKyAgICB9IGVsc2lmICgkc2lnbmludGVyZmFjZSBlcSAncGdwJykgeworCWlmICgkc2lnbnNvdXJjZSBvciAkc2lnbmNoYW5nZXMpIHsKKwkgICAgd2FybmluZyhfZygiUEdQIHN1cHBvcnQgaXMgZGVwcmVjYXRlZCAoc2VlIFJFQURNRS5mZWF0dXJlLXJlbW92YWwtc2NoZWR1bGUpIikpOworCX0KKyAgICB9Cit9CisKK215ICRidWlsZF9vcHRzID0gRHBrZzo6QnVpbGRPcHRpb25zLT5uZXcoKTsKK2lmIChkZWZpbmVkICRwYXJhbGxlbCkgeworICAgICRwYXJhbGxlbCA9ICRidWlsZF9vcHRzLT5nZXQoInBhcmFsbGVsIikgaWYgJGJ1aWxkX29wdHMtPmhhcygicGFyYWxsZWwiKTsKKyAgICAkRU5We01BS0VGTEFHU30gfHw9ICcnOworICAgICRFTlZ7TUFLRUZMQUdTfSAuPSAiIC1qJHBhcmFsbGVsIjsKKyAgICAkYnVpbGRfb3B0cy0+c2V0KCJwYXJhbGxlbCIsICRwYXJhbGxlbCk7CisgICAgJGJ1aWxkX29wdHMtPmV4cG9ydCgpOworfQorCitteSAkY3dkID0gY3dkKCk7CitteSAkZGlyID0gYmFzZW5hbWUoJGN3ZCk7CisKK215ICRjaGFuZ2Vsb2cgPSBjaGFuZ2Vsb2dfcGFyc2UoKTsKKworbXkgJHBrZyA9IG11c3RzZXR2YXIoJGNoYW5nZWxvZy0+e3NvdXJjZX0sIF9nKCdzb3VyY2UgcGFja2FnZScpKTsKK215ICR2ZXJzaW9uID0gbXVzdHNldHZhcigkY2hhbmdlbG9nLT57dmVyc2lvbn0sIF9nKCdzb3VyY2UgdmVyc2lvbicpKTsKK215ICgkb2ssICRlcnJvcikgPSB2ZXJzaW9uX2NoZWNrKCR2ZXJzaW9uKTsKK2Vycm9yKCRlcnJvcikgdW5sZXNzICRvazsKKworbXkgJG1haW50YWluZXI7CitpZiAoJGNoYW5nZWRieSkgeworICAgICRtYWludGFpbmVyID0gJGNoYW5nZWRieTsKK30gZWxzaWYgKCRtYWludCkgeworICAgICRtYWludGFpbmVyID0gJG1haW50OworfSBlbHNlIHsKKyAgICAkbWFpbnRhaW5lciA9IG11c3RzZXR2YXIoJGNoYW5nZWxvZy0+e21haW50YWluZXJ9LCBfZygnc291cmNlIGNoYW5nZWQgYnknKSk7Cit9CisKK29wZW4gbXkgJGFyY2hfZW52LCAnLXwnLCAnZHBrZy1hcmNoaXRlY3R1cmUnLCAiLWEkdGFyZ2V0YXJjaCIsCisgICAgIi10JHRhcmdldGdudXN5c3RlbSIsICctcycsICctZicgb3Igc3VicHJvY2VycignZHBrZy1hcmNoaXRlY3R1cmUnKTsKK3doaWxlICgkXyA9IDwkYXJjaF9lbnY+KSB7CisgICAgY2hvbXA7CisgICAgbXkgQGNtZHMgPSBzcGxpdCAvXHMqO1xzKi87CisgICAgZm9yZWFjaCAoQGNtZHMpIHsKKwkvXlxzKihcdyspPShbXHctXSopXHMqJC8gJiYgZG8geworCSAgICAkRU5WeyQxfSA9ICQyOworCX07CisgICAgfQorfQorY2xvc2UgJGFyY2hfZW52IG9yIHN1YnByb2NlcnIoJ2Rwa2ctYXJjaGl0ZWN0dXJlJyk7CisKK215ICRhcmNoOwordW5sZXNzIChidWlsZF9zb3VyY2Vvbmx5KSB7CisgICAgJGFyY2ggPSBtdXN0c2V0dmFyKCRFTlZ7J0RFQl9IT1NUX0FSQ0gnfSwgX2coJ2hvc3QgYXJjaGl0ZWN0dXJlJykpOworfSBlbHNlIHsKKyAgICAkYXJjaCA9ICdzb3VyY2UnOworfQorCisjIFByZXBhcmF0aW9uIG9mIGVudmlyb25tZW50IHN0b3BzIGhlcmUKKworKG15ICRzdmVyc2lvbiA9ICR2ZXJzaW9uKSA9fiBzL15cZCs6Ly87CisKK215ICRwdiA9ICIke3BrZ31fJHN2ZXJzaW9uIjsKK215ICRwdmEgPSAiJHtwa2d9XyR7c3ZlcnNpb259XyRhcmNoIjsKKworaWYgKG5vdCAteCAiZGViaWFuL3J1bGVzIikgeworICAgIHdhcm5pbmcoX2coImRlYmlhbi9ydWxlcyBpcyBub3QgZXhlY3V0YWJsZTogZml4aW5nIHRoYXQuIikpOworICAgIGNobW9kKDA3NTUsICJkZWJpYW4vcnVsZXMiKTsgIyBObyBjaGVja3Mgb2YgZmFpbHVyZXMsIG5vbiBmYXRhbAorfQorCit1bmxlc3MgKCRjYWxsX3RhcmdldCkgeworICAgIGNoZGlyKCcuLicpIG9yIHN5c2VycignY2hkaXIgLi4nKTsKKyAgICB3aXRoZWNobygnZHBrZy1zb3VyY2UnLCBAc291cmNlX29wdHMsICctLWJlZm9yZS1idWlsZCcsICRkaXIpOworICAgIGNoZGlyKCRkaXIpIG9yIHN5c2VycigiY2hkaXIgJGRpciIpOworfQorCitpZiAoJGNoZWNrYnVpbGRkZXApIHsKKyAgICBpZiAoJGFkbWluZGlyKSB7CisJcHVzaCBAY2hlY2tidWlsZGRlcF9vcHRzLCAiLS1hZG1pbmRpcj0kYWRtaW5kaXIiOworICAgIH0KKworICAgIHN5c3RlbSgnZHBrZy1jaGVja2J1aWxkZGVwcycsIEBjaGVja2J1aWxkZGVwX29wdHMpOworICAgIGlmIChub3QgV0lGRVhJVEVEKCQ/KSkgeworICAgICAgICBzdWJwcm9jZXJyKCdkcGtnLWNoZWNrYnVpbGRkZXBzJyk7CisgICAgfSBlbHNpZiAoV0VYSVRTVEFUVVMoJD8pKSB7CisJd2FybmluZyhfZygiQnVpbGQgZGVwZW5kZW5jaWVzL2NvbmZsaWN0cyB1bnNhdGlzZmllZDsgYWJvcnRpbmcuIikpOworCXdhcm5pbmcoX2coIihVc2UgLWQgZmxhZyB0byBvdmVycmlkZS4pIikpOworCisJaWYgKGJ1aWxkX3NvdXJjZW9ubHkpIHsKKwkgICAgd2FybmluZyhfZygiVGhpcyBpcyBjdXJyZW50bHkgYSBub24tZmF0YWwgd2FybmluZyB3aXRoIC1TLCBidXQiKSk7CisJICAgIHdhcm5pbmcoX2coIndpbGwgcHJvYmFibHkgYmVjb21lIGZhdGFsIGluIHRoZSBmdXR1cmUuIikpOworCX0gZWxzZSB7CisJICAgIGV4aXQgMzsKKwl9CisgICAgfQorfQorCitpZiAoJGNhbGxfdGFyZ2V0KSB7CisgICAgaWYgKCRjYWxsX3RhcmdldF9hc19yb290IG9yCisgICAgICAgICRjYWxsX3RhcmdldCA9fiAvXihjbGVhbnxiaW5hcnkofC1hcmNofC1pbmRlcCkpJC8pCisgICAgeworICAgICAgICB3aXRoZWNobyhAcm9vdGNvbW1hbmQsIEBkZWJpYW5fcnVsZXMsICRjYWxsX3RhcmdldCk7CisgICAgfSBlbHNlIHsKKyAgICAgICAgd2l0aGVjaG8oQGRlYmlhbl9ydWxlcywgJGNhbGxfdGFyZ2V0KTsKKyAgICB9CisgICAgZXhpdCAwOworfQorCit1bmxlc3MgKCRub2NsZWFuKSB7CisgICAgd2l0aGVjaG8oQHJvb3Rjb21tYW5kLCBAZGViaWFuX3J1bGVzLCAnY2xlYW4nKTsKK30KK3VubGVzcyAoYnVpbGRfYmluYXJ5b25seSkgeworICAgIHdhcm5pbmcoX2coIml0IGlzIGEgYmFkIGlkZWEgdG8gZ2VuZXJhdGUgYSBzb3VyY2UgcGFja2FnZSAiIC4KKyAgICAgICAgICAgICAgICJ3aXRob3V0IGNsZWFuaW5nIHVwIGZpcnN0LCBpdCBtaWdodCBjb250YWluIHVuZGVzaXJlZCAiIC4KKyAgICAgICAgICAgICAgICJmaWxlcy4iKSkgaWYgJG5vY2xlYW47CisgICAgY2hkaXIoJy4uJykgb3Igc3lzZXJyKCdjaGRpciAuLicpOworICAgIHdpdGhlY2hvKCdkcGtnLXNvdXJjZScsIEBzb3VyY2Vfb3B0cywgJy1iJywgJGRpcik7CisgICAgY2hkaXIoJGRpcikgb3Igc3lzZXJyKCJjaGRpciAkZGlyIik7Cit9Cit1bmxlc3MgKGJ1aWxkX3NvdXJjZW9ubHkpIHsKKyAgICB3aXRoZWNobyhAZGViaWFuX3J1bGVzLCAnYnVpbGQnKTsKKyAgICB3aXRoZWNobyhAcm9vdGNvbW1hbmQsIEBkZWJpYW5fcnVsZXMsICRiaW5hcnl0YXJnZXQpOworfQoraWYgKCR1c2VwYXVzZSAmJgorICAgICgkc2lnbmNoYW5nZXMgfHwgKCFidWlsZF9iaW5hcnlvbmx5ICYmICRzaWduc291cmNlKSkpIHsKKyAgICBwcmludCBfZygiUHJlc3MgdGhlIHJldHVybiBrZXkgdG8gc3RhcnQgc2lnbmluZyBwcm9jZXNzXG4iKTsKKyAgICBnZXRjKCk7Cit9CisKK215ICRzaWduZXJyb3JzOwordW5sZXNzIChidWlsZF9iaW5hcnlvbmx5KSB7CisgICAgaWYgKCRzaWduc291cmNlICYmIHNpZ25maWxlKCIkcHYuZHNjIikpIHsKKwkkc2lnbmVycm9ycyA9IF9nKCJGYWlsZWQgdG8gc2lnbiAuZHNjIGFuZCAuY2hhbmdlcyBmaWxlIik7CisJJHNpZ25jaGFuZ2VzID0gMDsKKyAgICB9Cit9CisKK2lmIChkZWZpbmVkKCRtYWludCkpIHsgcHVzaCBAY2hhbmdlc19vcHRzLCAiLW0kbWFpbnQiIH0KK2lmIChkZWZpbmVkKCRjaGFuZ2VkYnkpKSB7IHB1c2ggQGNoYW5nZXNfb3B0cywgIi1lJGNoYW5nZWRieSIgfQoraWYgKGRlZmluZWQoJHNpbmNlKSkgeyBwdXNoIEBjaGFuZ2VzX29wdHMsICItdiRzaW5jZSIgfQoraWYgKGRlZmluZWQoJGRlc2MpKSB7IHB1c2ggQGNoYW5nZXNfb3B0cywgIi1DJGRlc2MiIH0KKworbXkgJGNoZyA9ICIuLi8kcHZhLmNoYW5nZXMiOworcHJpbnQgU1RERVJSICIgZHBrZy1nZW5jaGFuZ2VzIEBjaGFuZ2VzX29wdHMgPiRjaGdcbiI7CitvcGVuIENIQU5HRVMsICctfCcsICdkcGtnLWdlbmNoYW5nZXMnLCBAY2hhbmdlc19vcHRzCisgICAgb3Igc3VicHJvY2VycignZHBrZy1nZW5jaGFuZ2VzJyk7CisKK29wZW4gT1VULCAnPicsICRjaGcgb3Igc3lzZXJyKF9nKCd3cml0ZSBjaGFuZ2VzIGZpbGUnKSk7CisKK215ICRpbmZpbGVzID0gbXkgJGZpbGVzID0gJyc7Cit3aGlsZSAoJF8gPSA8Q0hBTkdFUz4pIHsKKyAgICBwcmludCBPVVQgJF8gb3Igc3lzZXJyKF9nKCd3cml0ZSBjaGFuZ2VzIGZpbGUnKSk7CisgICAgY2hvbXA7CisKKyAgICBpZiAoL15GaWxlczovaSkgeworCSRpbmZpbGVzID0gMTsKKyAgICB9IGVsc2lmICgkaW5maWxlcyAmJiAvXlxzKyguKikkLykgeworCSRmaWxlcyAuPSAiICQxICI7CisgICAgfSBlbHNpZiAoJGluZmlsZXMgJiYgL15cUy8pIHsKKwkkaW5maWxlcyA9IDA7CisgICAgfQorfQorCitjbG9zZSBDSEFOR0VTIG9yIHN1YnByb2NlcnIoX2coJ2Rwa2ctZ2VuY2hhbmdlcycpKTsKK2Nsb3NlIE9VVCBvciBzeXNlcnIoX2coJ3dyaXRlIGNoYW5nZXMgZmlsZScpKTsKKworbXkgJHNyY21zZzsKK3N1YiBmaWxlb21pdHRlZCgkKSB7IHJldHVybiAkZmlsZXMgIX4gLyRfWzBdLyB9CitteSAkZXh0ID0gJGNvbXByZXNzaW9uX3JlX2ZpbGVfZXh0OworaWYgKGZpbGVvbWl0dGVkICdcLmRlYicpIHsKKyAgICAjIHNvdXJjZSBvbmx5IHVwbG9hZAorICAgIGlmIChmaWxlb21pdHRlZCAiXC5kaWZmXC4kZXh0IiBhbmQgZmlsZW9taXR0ZWQgIlwuZGViaWFuXC50YXJcLiRleHQiKSB7CisJJHNyY21zZyA9IF9nKCdzb3VyY2Ugb25seSB1cGxvYWQ6IERlYmlhbi1uYXRpdmUgcGFja2FnZScpOworICAgIH0gZWxzaWYgKGZpbGVvbWl0dGVkICJcLm9yaWdcLnRhclwuJGV4dCIpIHsKKwkkc3JjbXNnID0gX2coJ3NvdXJjZSBvbmx5LCBkaWZmLW9ubHkgdXBsb2FkIChvcmlnaW5hbCBzb3VyY2UgTk9UIGluY2x1ZGVkKScpOworICAgIH0gZWxzZSB7CisJJHNyY21zZyA9IF9nKCdzb3VyY2Ugb25seSB1cGxvYWQgKG9yaWdpbmFsIHNvdXJjZSBpcyBpbmNsdWRlZCknKTsKKyAgICB9Cit9IGVsc2UgeworICAgICRzcmNtc2cgPSBfZygnZnVsbCB1cGxvYWQgKG9yaWdpbmFsIHNvdXJjZSBpcyBpbmNsdWRlZCknKTsKKyAgICBpZiAoZmlsZW9taXR0ZWQgJ1wuZHNjJykgeworCSRzcmNtc2cgPSBfZygnYmluYXJ5IG9ubHkgdXBsb2FkIChubyBzb3VyY2UgaW5jbHVkZWQpJyk7CisgICAgfSBlbHNpZiAoZmlsZW9taXR0ZWQgIlwuZGlmZlwuJGV4dCIgYW5kIGZpbGVvbWl0dGVkICJcLmRlYmlhblwudGFyXC4kZXh0IikgeworCSRzcmNtc2cgPSBfZygnZnVsbCB1cGxvYWQ7IERlYmlhbi1uYXRpdmUgcGFja2FnZSAoZnVsbCBzb3VyY2UgaXMgaW5jbHVkZWQpJyk7CisgICAgfSBlbHNpZiAoZmlsZW9taXR0ZWQgIlwub3JpZ1wudGFyXC4kZXh0IikgeworCSRzcmNtc2cgPSBfZygnYmluYXJ5IGFuZCBkaWZmIHVwbG9hZCAob3JpZ2luYWwgc291cmNlIE5PVCBpbmNsdWRlZCknKTsKKyAgICB9IGVsc2UgeworCSRzcmNtc2cgPSBfZygnZnVsbCB1cGxvYWQgKG9yaWdpbmFsIHNvdXJjZSBpcyBpbmNsdWRlZCknKTsKKyAgICB9Cit9CisKK2lmICgkc2lnbmNoYW5nZXMgJiYgc2lnbmZpbGUoIiRwdmEuY2hhbmdlcyIpKSB7CisgICAgJHNpZ25lcnJvcnMgPSBfZygiRmFpbGVkIHRvIHNpZ24gLmNoYW5nZXMgZmlsZSIpOworfQorCitpZiAoJGNsZWFuc291cmNlKSB7CisgICAgd2l0aGVjaG8oQHJvb3Rjb21tYW5kLCBAZGViaWFuX3J1bGVzLCAnY2xlYW4nKTsKK30KK2NoZGlyKCcuLicpIG9yIHN5c2VycignY2hkaXIgLi4nKTsKK3dpdGhlY2hvKCdkcGtnLXNvdXJjZScsIEBzb3VyY2Vfb3B0cywgJy0tYWZ0ZXItYnVpbGQnLCAkZGlyKTsKK2NoZGlyKCRkaXIpIG9yIHN5c2VycigiY2hkaXIgJGRpciIpOworCitwcmludCAiJHByb2duYW1lOiAkc3JjbXNnXG4iOworaWYgKCRzaWduZXJyb3JzKSB7CisgICAgd2FybmluZygkc2lnbmVycm9ycyk7CisgICAgZXhpdCAxOworfQorCitzdWIgbXVzdHNldHZhciB7CisgICAgbXkgKCR2YXIsICR0ZXh0KSA9IEBfOworCisgICAgZXJyb3IoX2coInVuYWJsZSB0byBkZXRlcm1pbmUgJXMiKSwgJHRleHQpCisJdW5sZXNzIGRlZmluZWQoJHZhcik7CisKKyAgICBwcmludCAiJHByb2duYW1lOiAkdGV4dCAkdmFyXG4iOworICAgIHJldHVybiAkdmFyOworfQorCitzdWIgd2l0aGVjaG8geworICAgIHNoaWZ0IHdoaWxlICEkX1swXTsKKyAgICBwcmludCBTVERFUlIgIiBAX1xuIjsKKyAgICBzeXN0ZW0oQF8pCisJYW5kIHN1YnByb2NlcnIoIkBfIik7Cit9CisKK3N1YiBzaWduZmlsZSB7CisgICAgbXkgKCRmaWxlKSA9IEBfOworICAgIHByaW50IFNUREVSUiAiIHNpZ25maWxlICRmaWxlXG4iOworICAgIG15ICRxZmlsZSA9IHF1b3RlbWV0YSgkZmlsZSk7CisKKyAgICBpZiAoJHNpZ25pbnRlcmZhY2UgZXEgJ2dwZycpIHsKKwlzeXN0ZW0oIihjYXQgLi4vJHFmaWxlIDsgZWNobyAnJykgfCAiLgorCSAgICAgICAiJHNpZ25jb21tYW5kIC0tdXRmOC1zdHJpbmdzIC0tbG9jYWwtdXNlciAiCisJICAgICAgIC5xdW90ZW1ldGEoJHNpZ25rZXl8fCRtYWludGFpbmVyKS4KKwkgICAgICAgIiAtLWNsZWFyc2lnbiAtLWFybW9yIC0tdGV4dG1vZGUgID4gLi4vJHFmaWxlLmFzYyIpOworICAgIH0gZWxzZSB7CisJc3lzdGVtKCIkc2lnbmNvbW1hbmQgLXUgIi5xdW90ZW1ldGEoJHNpZ25rZXl8fCRtYWludGFpbmVyKS4KKwkgICAgICAgIiArY2xlYXJzaWc9b24gLWZhc3QgPC4uLyRxZmlsZSA+Li4vJHFmaWxlLmFzYyIpOworICAgIH0KKyAgICBteSAkc3RhdHVzID0gJD87CisgICAgdW5sZXNzICgkc3RhdHVzKSB7CisJc3lzdGVtKCdtdicsICctLScsICIuLi8kZmlsZS5hc2MiLCAiLi4vJGZpbGUiKQorCSAgICBhbmQgc3VicHJvY2VycignbXYnKTsKKyAgICB9IGVsc2UgeworCXN5c3RlbSgncm0nLCAnLWYnLCAiLi4vJGZpbGUuYXNjIikKKwkgICAgYW5kIHN1YnByb2NlcnIoJ3JtIC1mJyk7CisgICAgfQorICAgIHByaW50ICJcbiI7CisgICAgcmV0dXJuICRzdGF0dXMKK30KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9kcGtnLWNoZWNrYnVpbGRkZXBzLnBsIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL2Rwa2ctY2hlY2tidWlsZGRlcHMucGwKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMC4uMzFiN2VlNgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9kcGtnLWNoZWNrYnVpbGRkZXBzLnBsCkBAIC0wLDAgKzEsMjAzIEBACisjIS91c3IvYmluL3BlcmwKKyMKKyMgZHBrZy1jaGVja2J1aWxkZGVwcworIworIyBDb3B5cmlnaHQgwqkgMjAwMSBKb2V5IEhlc3MgPGpvZXloQGRlYmlhbi5vcmc+CisjCisjIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisjIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisjIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisjIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisjCisjIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisjIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisjCisjIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisjIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorCit1c2Ugc3RyaWN0OwordXNlIHdhcm5pbmdzOworCit1c2UgR2V0b3B0OjpMb25nIHF3KDpjb25maWcgcG9zaXhfZGVmYXVsdCBidW5kbGluZyBub19pZ25vcmVjYXNlKTsKKwordXNlIERwa2c7Cit1c2UgRHBrZzo6R2V0dGV4dDsKK3VzZSBEcGtnOjpFcnJvckhhbmRsaW5nOwordXNlIERwa2c6OkFyY2ggcXcoZ2V0X2hvc3RfYXJjaCk7Cit1c2UgRHBrZzo6RGVwczsKK3VzZSBEcGtnOjpDb250cm9sOjpJbmZvOworCit0ZXh0ZG9tYWluKCJkcGtnLWRldiIpOworCitzdWIgdmVyc2lvbigpCit7CisJcHJpbnRmKF9nKCJEZWJpYW4gJXMgdmVyc2lvbiAlcy5cbiIpLCAkcHJvZ25hbWUsICR2ZXJzaW9uKTsKKwlleGl0KDApOworfQorCitzdWIgdXNhZ2UgeworCXByaW50ZiBfZygKKyJVc2FnZTogJXMgWzxvcHRpb24+Li4uXSBbPGNvbnRyb2wtZmlsZT5dIikKKwkuICJcblxuIiAuIF9nKAorIk9wdGlvbnM6CisgIC1CICAgICAgICAgICAgIGJpbmFyeS1vbmx5LCBpZ25vcmUgLUluZGVwLgorICAtZCBidWlsZC1kZXBzICB1c2UgZ2l2ZW4gc3RyaW5nIGFzIGJ1aWxkIGRlcGVuZGVuY2llcyBpbnN0ZWFkIG9mCisgICAgICAgICAgICAgICAgIHJldHJpZXZpbmcgdGhlbSBmcm9tIGNvbnRyb2wgZmlsZQorICAtYyBidWlsZC1jb25mICB1c2UgZ2l2ZW4gc3RyaW5nIGZvciBidWlsZCBjb25mbGljdHMgaW5zdGVhZCBvZgorICAgICAgICAgICAgICAgICByZXRyaWV2aW5nIHRoZW0gZnJvbSBjb250cm9sIGZpbGUKKyAgLS1hZG1pbmRpcj08ZGlyZWN0b3J5PgorICAgICAgICAgICAgICAgICBjaGFuZ2UgdGhlIGFkbWluaXN0cmF0aXZlIGRpcmVjdG9yeS4KKyAgLWgsIC0taGVscCAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS4KKyAgICAgIC0tdmVyc2lvbiAgc2hvdyB0aGUgdmVyc2lvbi4iKQorCS4gIlxuXG4iIC4gX2coCisiPGNvbnRyb2wtZmlsZT4gaXMgdGhlIGNvbnRyb2wgZmlsZSB0byBwcm9jZXNzIChkZWZhdWx0OiBkZWJpYW4vY29udHJvbCkuIikKKwkuICJcbiIsICRwcm9nbmFtZTsKK30KKworbXkgJGJpbmFyeV9vbmx5PTA7CitteSAoJGJkX3ZhbHVlLCAkYmNfdmFsdWUpOworaWYgKCFHZXRPcHRpb25zKCdCJyA9PiBcJGJpbmFyeV9vbmx5LAorICAgICAgICAgICAgICAgICdoZWxwfGgnID0+IHN1YiB7IHVzYWdlKCk7IGV4aXQoMCk7IH0sCisgICAgICAgICAgICAgICAgJ3ZlcnNpb24nID0+IFwmdmVyc2lvbiwKKyAgICAgICAgICAgICAgICAnZD1zJyA9PiBcJGJkX3ZhbHVlLAorICAgICAgICAgICAgICAgICdjPXMnID0+IFwkYmNfdmFsdWUsCisgICAgICAgICAgICAgICAgJ2FkbWluZGlyPXMnID0+IFwkYWRtaW5kaXIpKSB7CisJdXNhZ2UoKTsKKwlleGl0KDIpOworfQorCitteSAkY29udHJvbGZpbGUgPSBzaGlmdCB8fCAiZGViaWFuL2NvbnRyb2wiOworCitteSAkY29udHJvbCA9IERwa2c6OkNvbnRyb2w6OkluZm8tPm5ldygkY29udHJvbGZpbGUpOworbXkgJGZpZWxkcyA9ICRjb250cm9sLT5nZXRfc291cmNlKCk7CisKK215ICRmYWN0cyA9IHBhcnNlX3N0YXR1cygiJGFkbWluZGlyL3N0YXR1cyIpOworCit1bmxlc3MgKGRlZmluZWQoJGJkX3ZhbHVlKSBvciBkZWZpbmVkKCRiY192YWx1ZSkpIHsKKyAgICAkYmRfdmFsdWUgPSAnYnVpbGQtZXNzZW50aWFsJzsKKyAgICAkYmRfdmFsdWUgLj0gIiwgIiAuICRmaWVsZHMtPnsiQnVpbGQtRGVwZW5kcyJ9IGlmIGRlZmluZWQgJGZpZWxkcy0+eyJCdWlsZC1EZXBlbmRzIn07CisgICAgaWYgKG5vdCAkYmluYXJ5X29ubHkgYW5kIGRlZmluZWQgJGZpZWxkcy0+eyJCdWlsZC1EZXBlbmRzLUluZGVwIn0pIHsKKwkkYmRfdmFsdWUgLj0gIiwgIiAuICRmaWVsZHMtPnsiQnVpbGQtRGVwZW5kcy1JbmRlcCJ9OworICAgIH0KKyAgICAkYmNfdmFsdWUgPSAkZmllbGRzLT57IkJ1aWxkLUNvbmZsaWN0cyJ9IGlmIGRlZmluZWQgJGZpZWxkcy0+eyJCdWlsZC1Db25mbGljdHMifTsKKyAgICBpZiAobm90ICRiaW5hcnlfb25seSBhbmQgZGVmaW5lZCAkZmllbGRzLT57IkJ1aWxkLUNvbmZsaWN0cy1JbmRlcCJ9KSB7CisJaWYgKCRiY192YWx1ZSkgeworCSAgICAkYmNfdmFsdWUgLj0gIiwgIiAuICRmaWVsZHMtPnsiQnVpbGQtQ29uZmxpY3RzLUluZGVwIn07CisJfSBlbHNlIHsKKwkgICAgJGJjX3ZhbHVlID0gJGZpZWxkcy0+eyJCdWlsZC1Db25mbGljdHMtSW5kZXAifTsKKwl9CisgICAgfQorfQorbXkgKEB1bm1ldCwgQGNvbmZsaWN0cyk7CisKK2lmICgkYmRfdmFsdWUpIHsKKwlwdXNoIEB1bm1ldCwgYnVpbGRfZGVwZW5kcygnQnVpbGQtRGVwZW5kcy9CdWlsZC1EZXBlbmRzLUluZGVwKScsCisJCWRlcHNfcGFyc2UoJGJkX3ZhbHVlLCByZWR1Y2VfYXJjaCA9PiAxKSwgJGZhY3RzKTsKK30KK2lmICgkYmNfdmFsdWUpIHsKKwlwdXNoIEBjb25mbGljdHMsIGJ1aWxkX2NvbmZsaWN0cygnQnVpbGQtQ29uZmxpY3RzL0J1aWxkLUNvbmZsaWN0cy1JbmRlcCcsCisJCWRlcHNfcGFyc2UoJGJjX3ZhbHVlLCByZWR1Y2VfYXJjaCA9PiAxLCB1bmlvbiA9PiAxKSwgJGZhY3RzKTsKK30KKworaWYgKEB1bm1ldCkgeworCXByaW50ZiBTVERFUlIgX2coIiVzOiBVbm1ldCBidWlsZCBkZXBlbmRlbmNpZXM6ICIpLCAkcHJvZ25hbWU7CisJcHJpbnQgU1RERVJSIGpvaW4oIiAiLCBtYXAgeyAkXy0+b3V0cHV0KCkgfSBAdW5tZXQpLCAiXG4iOworfQoraWYgKEBjb25mbGljdHMpIHsKKwlwcmludGYgU1RERVJSIF9nKCIlczogQnVpbGQgY29uZmxpY3RzOiAiKSwgJHByb2duYW1lOworCXByaW50IFNUREVSUiBqb2luKCIgIiwgbWFwIHsgJF8tPm91dHB1dCgpIH0gQGNvbmZsaWN0cyksICJcbiI7Cit9CitleGl0IDEgaWYgQHVubWV0IHx8IEBjb25mbGljdHM7CisKKyMgU2lsbHkgbGl0dGxlIHN0YXR1cyBmaWxlIHBhcnNlciB0aGF0IHJldHVybnMgYSBEcGtnOjpEZXBzOjpLbm93bkZhY3RzCitzdWIgcGFyc2Vfc3RhdHVzIHsKKwlteSAkc3RhdHVzID0gc2hpZnQ7CisJCisJbXkgJGZhY3RzID0gRHBrZzo6RGVwczo6S25vd25GYWN0cy0+bmV3KCk7CisJbG9jYWwgJC8gPSAnJzsKKwlvcGVuKFNUQVRVUywgIjwkc3RhdHVzIikgfHwgZGllICIkc3RhdHVzOiAkIVxuIjsKKwl3aGlsZSAoPFNUQVRVUz4pIHsKKwkJbmV4dCB1bmxlc3MgL15TdGF0dXM6IC4qb2sgaW5zdGFsbGVkJC9tOworCQorCQlteSAoJHBhY2thZ2UpID0gL15QYWNrYWdlOiAoLiopJC9tOworCQlteSAoJHZlcnNpb24pID0gL15WZXJzaW9uOiAoLiopJC9tOworCQkkZmFjdHMtPmFkZF9pbnN0YWxsZWRfcGFja2FnZSgkcGFja2FnZSwgJHZlcnNpb24pOworCQorCQlpZiAoL15Qcm92aWRlczogKC4qKSQvbSkgeworCQkJbXkgJHByb3ZpZGVzID0gZGVwc19wYXJzZSgkMSwgcmVkdWNlX2FyY2ggPT4gMSwgdW5pb24gPT4gMSk7CisJCQluZXh0IGlmIG5vdCBkZWZpbmVkICRwcm92aWRlczsKKwkJCWZvcmVhY2ggKGdyZXAgeyAkXy0+aXNhKCdEcGtnOjpEZXBzOjpTaW1wbGUnKSB9CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkcHJvdmlkZXMtPmdldF9kZXBzKCkpCisJCQl7CisJCQkJJGZhY3RzLT5hZGRfcHJvdmlkZWRfcGFja2FnZSgkXy0+e3BhY2thZ2V9LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJF8tPntyZWxhdGlvbn0sICRfLT57dmVyc2lvbn0sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkcGFja2FnZSk7CisJCQl9CisJCX0KKwl9CisJY2xvc2UgU1RBVFVTOworCisJcmV0dXJuICRmYWN0czsKK30KKworIyBUaGlzIGZ1bmN0aW9uIGNoZWNrcyB0aGUgYnVpbGQgZGVwZW5kZW5jaWVzIHBhc3NlZCBpbiBhcyB0aGUgZmlyc3QKKyMgcGFyYW1ldGVyLiBJZiB0aGV5IGFyZSBzYXRpc2ZpZWQsIHJldHVybnMgZmFsc2UuIElmIHRoZXkgYXJlIHVuc2F0aXNmaWVkLAorIyBhbiBsaXN0IG9mIHRoZSB1bnNhdGlzZmllZCBkZXBlbmRzIGlzIHJldHVybmVkLgorIworIyBBZGRpdGlvbmFsIHBhcmFtZXRlcnMgdGhhdCBtdXN0IGJlIHBhc3NlZDoKKyMgKiBBIHJlZmVyZW5jZSB0byBhIGhhc2ggb2YgYWxsICJvayBpbnN0YWxsZWQiIHRoZSBwYWNrYWdlcyBvbiB0aGUgc3lzdGVtLAorIyAgIHdpdGggdGhlIGhhc2gga2V5IGJlaW5nIHRoZSBwYWNrYWdlIG5hbWUsIGFuZCB0aGUgdmFsdWUgYmVpbmcgdGhlIAorIyAgIGluc3RhbGxlZCB2ZXJzaW9uLgorIyAqIEEgcmVmZXJlbmNlIHRvIGEgaGFzaCwgd2hlcmUgdGhlIGtleXMgYXJlIHBhY2thZ2UgbmFtZXMsIGFuZCB0aGUKKyMgICB2YWx1ZSBpcyBhIHRydWUgdmFsdWUgaWZmIHNvbWUgcGFja2FnZSBpbnN0YWxsZWQgb24gdGhlIHN5c3RlbSBwcm92aWRlcworIyAgIHRoYXQgcGFja2FnZSAoYWxsIGluc3RhbGxlZCBwYWNrYWdlcyBwcm92aWRlIHRoZW1zZWx2ZXMpCisjCisjIE9wdGlvbmFsbHksIHRoZSBhcmNoaXRlY3R1cmUgdGhlIHBhY2thZ2UgaXMgdG8gYmUgYnVpbHQgZm9yIGNhbiBiZSBwYXNzZWQKKyMgaW4gYXMgdGhlIDR0aCBwYXJhbWV0ZXIuIElmIG5vdCBzZXQsIGRwa2cgd2lsbCBiZSBxdWVyaWVkIGZvciB0aGUgYnVpbGQKKyMgYXJjaGl0ZWN0dXJlLgorc3ViIGJ1aWxkX2RlcGVuZHMgeworCXJldHVybiBjaGVja19saW5lKDEsIEBfKTsKK30KKworIyBUaGlzIGZ1bmN0aW9uIGlzIGV4YWN0bHkgbGlrZSB1bm1ldF9idWlsZF9kZXBlbmRzLCBleGNlcHQgaXQKKyMgY2hlY2tzIGZvciBidWlsZCBjb25mbGljdHMsIGFuZCByZXR1cm5zIGEgbGlzdCBvZiB0aGUgcGFja2FnZXMKKyMgdGhhdCBhcmUgaW5zdGFsbGVkIGFuZCBhcmUgY29uZmxpY3RlZCB3aXRoLgorc3ViIGJ1aWxkX2NvbmZsaWN0cyB7CisJcmV0dXJuIGNoZWNrX2xpbmUoMCwgQF8pOworfQorCisjIFRoaXMgZnVuY3Rpb24gZG9lcyBhbGwgdGhlIHdvcmsuIFRoZSBmaXJzdCBwYXJhbWV0ZXIgaXMgMSB0byBjaGVjayBidWlsZAorIyBkZXBzLCBhbmQgMCB0byBjaGVjayBidWlsZCBjb25mbGljdHMuCitzdWIgY2hlY2tfbGluZSB7CisJbXkgJGJ1aWxkX2RlcGVuZHM9c2hpZnQ7CisJbXkgJGZpZWxkbmFtZT1zaGlmdDsKKwlteSAkZGVwX2xpc3Q9c2hpZnQ7CisJbXkgJGZhY3RzPXNoaWZ0OworCW15ICRob3N0X2FyY2ggPSBzaGlmdCB8fCBnZXRfaG9zdF9hcmNoKCk7CisJY2hvbXAgJGhvc3RfYXJjaDsKKworCW15IEB1bm1ldD0oKTsKKworCXVubGVzcyhkZWZpbmVkKCRkZXBfbGlzdCkpIHsKKwkgICAgZXJyb3IoX2coImVycm9yIG9jY3VycmVkIHdoaWxlIHBhcnNpbmcgJXMiKSwgJGZpZWxkbmFtZSk7CisJfQorCisJaWYgKCRidWlsZF9kZXBlbmRzKSB7CisJCSRkZXBfbGlzdC0+c2ltcGxpZnlfZGVwcygkZmFjdHMpOworCQlpZiAoJGRlcF9saXN0LT5pc19lbXB0eSgpKSB7CisJCQlyZXR1cm4gKCk7CisJCX0gZWxzZSB7CisJCQlyZXR1cm4gJGRlcF9saXN0LT5nZXRfZGVwcygpOworCQl9CisJfSBlbHNlIHsgIyBCdWlsZC1Db25mbGljdHMKKwkJbXkgQGNvbmZsaWN0cyA9ICgpOworCQlmb3JlYWNoIG15ICRkZXAgKCRkZXBfbGlzdC0+Z2V0X2RlcHMoKSkgeworCQkJaWYgKCRkZXAtPmdldF9ldmFsdWF0aW9uKCRmYWN0cykpIHsKKwkJCQlwdXNoIEBjb25mbGljdHMsICRkZXA7CisJCQl9CisJCX0KKwkJcmV0dXJuIEBjb25mbGljdHM7CisJfQorfQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL2Rwa2ctZGlzdGFkZGZpbGUucGwgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvZHBrZy1kaXN0YWRkZmlsZS5wbApuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwLi41NjY2OThlCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL2Rwa2ctZGlzdGFkZGZpbGUucGwKQEAgLTAsMCArMSw5MyBAQAorIyEvdXNyL2Jpbi9wZXJsCisjCisjIGRwa2ctZGlzdGFkZGZpbGUKKyMKKyMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyMKKyMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisjIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisjIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyMKKyMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisKK3VzZSBzdHJpY3Q7Cit1c2Ugd2FybmluZ3M7CisKK3VzZSBQT1NJWDsKK3VzZSBQT1NJWCBxdyg6ZXJybm9faCA6c2lnbmFsX2gpOwordXNlIERwa2c7Cit1c2UgRHBrZzo6R2V0dGV4dDsKK3VzZSBEcGtnOjpFcnJvckhhbmRsaW5nOworCit0ZXh0ZG9tYWluKCJkcGtnLWRldiIpOworCitteSAkZmlsZXNsaXN0ZmlsZSA9ICdkZWJpYW4vZmlsZXMnOworCisKK3N1YiB2ZXJzaW9uIHsKKyAgICBwcmludGYgX2coIkRlYmlhbiAlcyB2ZXJzaW9uICVzLlxuIiksICRwcm9nbmFtZSwgJHZlcnNpb247CisKKyAgICBwcmludGYgX2coIgorQ29weXJpZ2h0IChDKSAxOTk2IElhbiBKYWNrc29uLiIpOworCisgICAgcHJpbnRmIF9nKCIKK1RoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgb3IKK2xhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LgorIik7Cit9CisKK3N1YiB1c2FnZSB7CisgICAgcHJpbnRmIF9nKAorIlVzYWdlOiAlcyBbPG9wdGlvbj4uLi5dIDxmaWxlbmFtZT4gPHNlY3Rpb24+IDxwcmlvcml0eT4KKworT3B0aW9uczoKKyAgLWY8ZmlsZXNsaXN0ZmlsZT4gICAgICAgIHdyaXRlIGZpbGVzIGhlcmUgaW5zdGVhZCBvZiBkZWJpYW4vZmlsZXMuCisgIC1oLCAtLWhlbHAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLgorICAgICAgLS12ZXJzaW9uICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi4KKyIpLCAkcHJvZ25hbWU7Cit9CisKK3doaWxlIChAQVJHViAmJiAkQVJHVlswXSA9fiBtL14tLykgeworICAgICRfPXNoaWZ0KEBBUkdWKTsKKyAgICBpZiAobS9eLWYvKSB7CisgICAgICAgICRmaWxlc2xpc3RmaWxlPSAkJzsKKyAgICB9IGVsc2lmIChtL14tKGh8LWhlbHApJC8pIHsKKyAgICAgICAgdXNhZ2UoKTsKKyAgICAgICAgZXhpdCgwKTsKKyAgICB9IGVsc2lmIChtL14tLXZlcnNpb24kLykgeworICAgICAgICB2ZXJzaW9uKCk7CisgICAgICAgIGV4aXQoMCk7CisgICAgfSBlbHNpZiAobS9eLS0kLykgeworICAgICAgICBsYXN0OworICAgIH0gZWxzZSB7CisgICAgICAgIHVzYWdlZXJyKF9nKCJ1bmtub3duIG9wdGlvbiBcYCVzJyIpLCAkXyk7CisgICAgfQorfQorCitAQVJHViA9PSAzIHx8IHVzYWdlZXJyKF9nKCJuZWVkIGV4YWN0bHkgYSBmaWxlbmFtZSwgc2VjdGlvbiBhbmQgcHJpb3JpdHkiKSk7CitteSAoJGZpbGUsICRzZWN0aW9uLCAkcHJpb3JpdHkpID0gQEFSR1Y7CisKKygkZmlsZSA9fiBtL1xzLyB8fCAkc2VjdGlvbiA9fiBtL1xzLyB8fCAkcHJpb3JpdHkgPX4gbS9ccy8pICYmCisgICAgZXJyb3IoX2coImZpbGVuYW1lLCBzZWN0aW9uIGFuZCBwcmlvcml0eSBtYXkgY29udGFpbiBubyB3aGl0ZXNwYWNlIikpOworCiskZmlsZXNsaXN0ZmlsZT0iLi8kZmlsZXNsaXN0ZmlsZSIgaWYgJGZpbGVzbGlzdGZpbGUgPX4gbS9eXHMvOworb3BlbihZLCAiPiAkZmlsZXNsaXN0ZmlsZS5uZXciKSB8fCBzeXNlcnIoX2coIm9wZW4gbmV3IGZpbGVzIGxpc3QgZmlsZSIpKTsKK2lmIChvcGVuKFgsIjwgJGZpbGVzbGlzdGZpbGUiKSkgeworICAgIHdoaWxlICg8WD4pIHsKKyAgICAgICAgcy9cbiQvLzsKKyAgICAgICAgbmV4dCBpZiBtL14oXFMrKSAvICYmICQxIGVxICRmaWxlOworICAgICAgICBwcmludChZICIkX1xuIikgfHwgc3lzZXJyKF9nKCJjb3B5IG9sZCBlbnRyeSB0byBuZXcgZmlsZXMgbGlzdCBmaWxlIikpOworICAgIH0KK30gZWxzaWYgKCQhICE9IEVOT0VOVCkgeworICAgIHN5c2VycihfZygicmVhZCBvbGQgZmlsZXMgbGlzdCBmaWxlIikpOworfQorcHJpbnQoWSAiJGZpbGUgJHNlY3Rpb24gJHByaW9yaXR5XG4iKQorICAgIHx8IHN5c2VycihfZygid3JpdGUgbmV3IGVudHJ5IHRvIG5ldyBmaWxlcyBsaXN0IGZpbGUiKSk7CitjbG9zZShZKSB8fCBzeXNlcnIoX2coImNsb3NlIG5ldyBmaWxlcyBsaXN0IGZpbGUiKSk7CityZW5hbWUoIiRmaWxlc2xpc3RmaWxlLm5ldyIsICRmaWxlc2xpc3RmaWxlKSB8fAorICAgIHN5c2VycihfZygiaW5zdGFsbCBuZXcgZmlsZXMgbGlzdCBmaWxlIikpOwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbCBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGwKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMC4uMmQwYjc5ZAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGwKQEAgLTAsMCArMSw1MDkgQEAKKyMhL3Vzci9iaW4vcGVybAorIworIyBkcGtnLWdlbmNoYW5nZXMKKyMKKyMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyMKKyMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisjIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisjIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyMKKyMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisKK3VzZSBzdHJpY3Q7Cit1c2Ugd2FybmluZ3M7CisKK3VzZSBFbmNvZGU7Cit1c2UgUE9TSVg7Cit1c2UgUE9TSVggcXcoOmVycm5vX2ggOnNpZ25hbF9oKTsKK3VzZSBEcGtnOwordXNlIERwa2c6OkdldHRleHQ7Cit1c2UgRHBrZzo6Q2hlY2tzdW1zOwordXNlIERwa2c6OkVycm9ySGFuZGxpbmc7Cit1c2UgRHBrZzo6QXJjaCBxdyhnZXRfaG9zdF9hcmNoIGRlYmFyY2hfZXEgZGViYXJjaF9pcyk7Cit1c2UgRHBrZzo6Q29tcHJlc3Npb247Cit1c2UgRHBrZzo6Q29udHJvbDo6SW5mbzsKK3VzZSBEcGtnOjpDb250cm9sOjpGaWVsZHM7Cit1c2UgRHBrZzo6Q29udHJvbDsKK3VzZSBEcGtnOjpTdWJzdHZhcnM7Cit1c2UgRHBrZzo6VmFyczsKK3VzZSBEcGtnOjpDaGFuZ2Vsb2c6OlBhcnNlOwordXNlIERwa2c6OlZlcnNpb247CisKK3RleHRkb21haW4oImRwa2ctZGV2Iik7CisKK215ICRjb250cm9sZmlsZSA9ICdkZWJpYW4vY29udHJvbCc7CitteSAkY2hhbmdlbG9nZmlsZSA9ICdkZWJpYW4vY2hhbmdlbG9nJzsKK215ICRjaGFuZ2Vsb2dmb3JtYXQ7CitteSAkZmlsZXNsaXN0ZmlsZSA9ICdkZWJpYW4vZmlsZXMnOworbXkgJHVwbG9hZGZpbGVzZGlyID0gJy4uJzsKK215ICRzb3VyY2VzdHlsZSA9ICdpJzsKK215ICRxdWlldCA9IDA7CitteSAkaG9zdF9hcmNoID0gZ2V0X2hvc3RfYXJjaCgpOworbXkgJGNoYW5nZXNfZm9ybWF0ID0gIjEuOCI7CisKK215ICVmMnA7ICAgICAgICAgICAjIC0gZmlsZSB0byBwYWNrYWdlIG1hcAorbXkgJXAyZjsgICAgICAgICAgICMgLSBwYWNrYWdlIHRvIGZpbGUgbWFwLCBoYXMgZW50cmllcyBmb3IgInBhY2thZ2VuYW1lIgorbXkgJXBhMmY7ICAgICAgICAgICMgLSBsaWtld2lzZSwgaGFzIGVudHJpZXMgZm9yICJwYWNrYWdlbmFtZSBhcmNoaXRlY3R1cmUiCitteSAlcDJ2ZXI7ICAgICAgICAgIyAtIHBhY2thZ2UgdG8gdmVyc2lvbiBtYXAKK215ICVwMmFyY2g7ICAgICAgICAjIC0gcGFja2FnZSB0byBhcmNoIG1hcAorbXkgJWYyc2VjOyAgICAgICAgICMgLSBmaWxlIHRvIHNlY3Rpb24gbWFwCitteSAlZjJzZWNjZjsgICAgICAgIyAtIGxpa2V3aXNlLCBmcm9tIGNvbnRyb2wgZmlsZQorbXkgJWYycHJpOyAgICAgICAgICMgLSBmaWxlIHRvIHByaW9yaXR5IG1hcAorbXkgJWYycHJpY2Y7ICAgICAgICMgLSBsaWtld2lzZSwgZnJvbSBjb250cm9sIGZpbGUKK215ICVzb3VyY2VkZWZhdWx0OyAjIC0gZGVmYXVsdCB2YWx1ZXMgYXMgdGFrZW4gZnJvbSBzb3VyY2UgKHVzZWQgZm9yIFNlY3Rpb24sCisgICAgICAgICAgICAgICAgICAgIyAgIFByaW9yaXR5IGFuZCBNYWludGFpbmVyKQorCitteSBAZGVzY3JpcHRpb25zOworbXkgQGZpbGVzbGlzdGZpbGVzOworCitteSAkY2hlY2tzdW1zID0gRHBrZzo6Q2hlY2tzdW1zLT5uZXcoKTsKK215ICVyZW1vdmU7ICAgICAgICAjIC0gZmllbGRzIHRvIHJlbW92ZQorbXkgJW92ZXJyaWRlOworbXkgJWFyY2hhZGRlZDsKK215IEBhcmNodmFsdWVzOworbXkgJGRzYzsKK215ICRjaGFuZ2VzZGVzY3JpcHRpb247CitteSAkZm9yY2VtYWludDsKK215ICRmb3JjZWNoYW5nZWRieTsKK215ICRzaW5jZTsKKworbXkgJHN1YnN0dmFyc19sb2FkZWQgPSAwOworbXkgJHN1YnN0dmFycyA9IERwa2c6OlN1YnN0dmFycy0+bmV3KCk7Ciskc3Vic3R2YXJzLT5zZXQoIkZvcm1hdCIsICRjaGFuZ2VzX2Zvcm1hdCk7CisKK3VzZSBjb25zdGFudCBTT1VSQ0UgICAgID0+IDE7Cit1c2UgY29uc3RhbnQgQVJDSF9ERVAgICA9PiAyOwordXNlIGNvbnN0YW50IEFSQ0hfSU5ERVAgPT4gNDsKK3VzZSBjb25zdGFudCBCSU4gICAgICAgID0+IEFSQ0hfREVQIHwgQVJDSF9JTkRFUDsKK3VzZSBjb25zdGFudCBBTEwgICAgICAgID0+IEJJTiB8IFNPVVJDRTsKK215ICRpbmNsdWRlID0gQUxMOworCitzdWIgaXNfc291cmNlb25seSgpIHsgcmV0dXJuICRpbmNsdWRlID09IFNPVVJDRTsgfQorc3ViIGlzX2JpbmFyeW9ubHkoKSB7IHJldHVybiAhKCRpbmNsdWRlICYgU09VUkNFKTsgfQorc3ViIGJpbmFyeV9vcHQoKSB7IHJldHVybiAoKCRpbmNsdWRlID09IEJJTikgPyAnLWInIDoKKwkJCSAgICgoJGluY2x1ZGUgPT0gQVJDSF9ERVApID8gJy1CJyA6CisJCQkgICAgKCgkaW5jbHVkZSA9PSBBUkNIX0lOREVQKSA/ICctQScgOgorCQkJICAgICBpbnRlcm5lcnIoImJpbmFyeV9vcHQgY2FsbGVkIHdpdGggaW5jbHVkZT0kaW5jbHVkZSIpKSkpOworfQorCitzdWIgdmVyc2lvbiB7CisgICAgcHJpbnRmIF9nKCJEZWJpYW4gJXMgdmVyc2lvbiAlcy5cbiIpLCAkcHJvZ25hbWUsICR2ZXJzaW9uOworCisgICAgcHJpbnRmIF9nKCIKK0NvcHlyaWdodCAoQykgMTk5NiBJYW4gSmFja3Nvbi4KK0NvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uIik7CisKKyAgICBwcmludGYgX2coIgorVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvcgorbGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuCisiKTsKK30KKworc3ViIHVzYWdlIHsKKyAgICBwcmludGYgX2coCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dCisKK09wdGlvbnM6CisgIC1iICAgICAgICAgICAgICAgICAgICAgICBiaW5hcnktb25seSBidWlsZCAtIG5vIHNvdXJjZSBmaWxlcy4KKyAgLUIgICAgICAgICAgICAgICAgICAgICAgIGFyY2gtc3BlY2lmaWMgLSBubyBzb3VyY2Ugb3IgYXJjaC1pbmRlcCBmaWxlcy4KKyAgLUEgICAgICAgICAgICAgICAgICAgICAgIG9ubHkgYXJjaC1pbmRlcCAtIG5vIHNvdXJjZSBvciBhcmNoLXNwZWNpZmljIGZpbGVzLgorICAtUyAgICAgICAgICAgICAgICAgICAgICAgc291cmNlLW9ubHkgdXBsb2FkLgorICAtYzxjb250cm9sZmlsZT4gICAgICAgICAgZ2V0IGNvbnRyb2wgaW5mbyBmcm9tIHRoaXMgZmlsZS4KKyAgLWw8Y2hhbmdlbG9nZmlsZT4gICAgICAgIGdldCBwZXItdmVyc2lvbiBpbmZvIGZyb20gdGhpcyBmaWxlLgorICAtZjxmaWxlc2xpc3RmaWxlPiAgICAgICAgZ2V0IC5kZWIgZmlsZXMgbGlzdCBmcm9tIHRoaXMgZmlsZS4KKyAgLXY8c2luY2V2ZXJzaW9uPiAgICAgICAgIGluY2x1ZGUgYWxsIGNoYW5nZXMgbGF0ZXIgdGhhbiB2ZXJzaW9uLgorICAtQzxjaGFuZ2VzZGVzY3JpcHRpb24+ICAgdXNlIGNoYW5nZSBkZXNjcmlwdGlvbiBmcm9tIHRoaXMgZmlsZS4KKyAgLW08bWFpbnRhaW5lcj4gICAgICAgICAgIG92ZXJyaWRlIGNvbnRyb2wncyBtYWludGFpbmVyIHZhbHVlLgorICAtZTxtYWludGFpbmVyPiAgICAgICAgICAgb3ZlcnJpZGUgY2hhbmdlbG9nJ3MgbWFpbnRhaW5lciB2YWx1ZS4KKyAgLXU8dXBsb2FkZmlsZXNkaXI+ICAgICAgIGRpcmVjdG9yeSB3aXRoIGZpbGVzIChkZWZhdWx0IGlzIFxgLi4nKS4KKyAgLXNpIChkZWZhdWx0KSAgICAgICAgICAgIHNyYyBpbmNsdWRlcyBvcmlnIGlmIG5ldyB1cHN0cmVhbS4KKyAgLXNhICAgICAgICAgICAgICAgICAgICAgIHNvdXJjZSBpbmNsdWRlcyBvcmlnIHNyYy4KKyAgLXNkICAgICAgICAgICAgICAgICAgICAgIHNvdXJjZSBpcyBkaWZmIGFuZCAuZHNjIG9ubHkuCisgIC1xICAgICAgICAgICAgICAgICAgICAgICBxdWlldCAtIG5vIGluZm9ybWF0aW9uYWwgbWVzc2FnZXMgb24gc3RkZXJyLgorICAtRjxjaGFuZ2Vsb2dmb3JtYXQ+ICAgICAgZm9yY2UgY2hhbmdlIGxvZyBmb3JtYXQuCisgIC1WPG5hbWU+PTx2YWx1ZT4gICAgICAgICBzZXQgYSBzdWJzdGl0dXRpb24gdmFyaWFibGUuCisgIC1UPHZhcmxpc3RmaWxlPiAgICAgICAgICByZWFkIHZhcmlhYmxlcyBoZXJlLCBub3QgZGViaWFuL3N1YnN0dmFycy4KKyAgLUQ8ZmllbGQ+PTx2YWx1ZT4gICAgICAgIG92ZXJyaWRlIG9yIGFkZCBhIGZpZWxkIGFuZCB2YWx1ZS4KKyAgLVU8ZmllbGQ+ICAgICAgICAgICAgICAgIHJlbW92ZSBhIGZpZWxkLgorICAtaCwgLS1oZWxwICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS4KKyAgICAgIC0tdmVyc2lvbiAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uCisiKSwgJHByb2duYW1lOworfQorCisKK3doaWxlIChAQVJHVikgeworICAgICRfPXNoaWZ0KEBBUkdWKTsKKyAgICBpZiAobS9eLWIkLykgeworCWlzX3NvdXJjZW9ubHkgJiYgdXNhZ2VlcnIoX2coImNhbm5vdCBjb21iaW5lICVzIGFuZCAlcyIpLCAkXywgIi1TIik7CisJJGluY2x1ZGUgPSBCSU47CisgICAgfSBlbHNpZiAobS9eLUIkLykgeworCWlzX3NvdXJjZW9ubHkgJiYgdXNhZ2VlcnIoX2coImNhbm5vdCBjb21iaW5lICVzIGFuZCAlcyIpLCAkXywgIi1TIik7CisJJGluY2x1ZGUgPSBBUkNIX0RFUDsKKwlwcmludGYgU1RERVJSIF9nKCIlczogYXJjaC1zcGVjaWZpYyB1cGxvYWQgLSBub3QgaW5jbHVkaW5nIGFyY2gtaW5kZXBlbmRlbnQgcGFja2FnZXMiKS4iXG4iLCAkcHJvZ25hbWU7CisgICAgfSBlbHNpZiAobS9eLUEkLykgeworCWlzX3NvdXJjZW9ubHkgJiYgdXNhZ2VlcnIoX2coImNhbm5vdCBjb21iaW5lICVzIGFuZCAlcyIpLCAkXywgIi1TIik7CisJJGluY2x1ZGUgPSBBUkNIX0lOREVQOworCXByaW50ZiBTVERFUlIgX2coIiVzOiBhcmNoLWluZGVwIHVwbG9hZCAtIG5vdCBpbmNsdWRpbmcgYXJjaC1zcGVjaWZpYyBwYWNrYWdlcyIpLiJcbiIsICRwcm9nbmFtZTsKKyAgICB9IGVsc2lmIChtL14tUyQvKSB7CisJaXNfYmluYXJ5b25seSAmJiB1c2FnZWVycihfZygiY2Fubm90IGNvbWJpbmUgJXMgYW5kICVzIiksIGJpbmFyeV9vcHQsICItUyIpOworCSRpbmNsdWRlID0gU09VUkNFOworICAgIH0gZWxzaWYgKG0vXi1zKFtpYWRdKSQvKSB7CisgICAgICAgICRzb3VyY2VzdHlsZT0gJDE7CisgICAgfSBlbHNpZiAobS9eLXEkLykgeworICAgICAgICAkcXVpZXQ9IDE7CisgICAgfSBlbHNpZiAobS9eLWMoLiopJC8pIHsKKwkkY29udHJvbGZpbGUgPSAkMTsKKyAgICB9IGVsc2lmIChtL14tbCguKikkLykgeworCSRjaGFuZ2Vsb2dmaWxlID0gJDE7CisgICAgfSBlbHNpZiAobS9eLUMoLiopJC8pIHsKKwkkY2hhbmdlc2Rlc2NyaXB0aW9uID0gJDE7CisgICAgfSBlbHNpZiAobS9eLWYoLiopJC8pIHsKKwkkZmlsZXNsaXN0ZmlsZSA9ICQxOworICAgIH0gZWxzaWYgKG0vXi12KC4qKSQvKSB7CisJJHNpbmNlID0gJDE7CisgICAgfSBlbHNpZiAobS9eLVQoLiopJC8pIHsKKwkkc3Vic3R2YXJzLT5sb2FkKCQxKSBpZiAtZSAkMTsKKwkkc3Vic3R2YXJzX2xvYWRlZCA9IDE7CisgICAgfSBlbHNpZiAobS9eLW0oLiopJC9zKSB7CisJJGZvcmNlbWFpbnQgPSAkMTsKKyAgICB9IGVsc2lmIChtL14tZSguKikkL3MpIHsKKwkkZm9yY2VjaGFuZ2VkYnkgPSAkMTsKKyAgICB9IGVsc2lmIChtL14tRihbMC05YS16XSspJC8pIHsKKyAgICAgICAgJGNoYW5nZWxvZ2Zvcm1hdCA9ICQxOworICAgIH0gZWxzaWYgKG0vXi1EKFteXD06XSspWz06XSguKikkL3MpIHsKKwkkb3ZlcnJpZGV7JDF9ID0gJDI7CisgICAgfSBlbHNpZiAobS9eLXUoLiopJC8pIHsKKwkkdXBsb2FkZmlsZXNkaXIgPSAkMTsKKyAgICB9IGVsc2lmIChtL14tVShbXlw9Ol0rKSQvKSB7CisgICAgICAgICRyZW1vdmV7JDF9ID0gMTsKKyAgICB9IGVsc2lmIChtL14tVihcd1stOjAtOUEtWmEtel0qKVs9Ol0oLiopJC9zKSB7CisJJHN1YnN0dmFycy0+c2V0KCQxLCAkMik7CisgICAgfSBlbHNpZiAobS9eLShofC1oZWxwKSQvKSB7CisJdXNhZ2UoKTsKKwlleGl0KDApOworICAgIH0gZWxzaWYgKG0vXi0tdmVyc2lvbiQvKSB7CisJdmVyc2lvbigpOworCWV4aXQoMCk7CisgICAgfSBlbHNlIHsKKyAgICAgICAgdXNhZ2VlcnIoX2coInVua25vd24gb3B0aW9uIFxgJXMnIiksICRfKTsKKyAgICB9Cit9CisKKyMgUmV0cmlldmUgaW5mbyBmcm9tIHRoZSBjdXJyZW50IGNoYW5nZWxvZyBlbnRyeQorbXkgJW9wdGlvbnMgPSAoZmlsZSA9PiAkY2hhbmdlbG9nZmlsZSk7Ciskb3B0aW9uc3siY2hhbmdlbG9nZm9ybWF0In0gPSAkY2hhbmdlbG9nZm9ybWF0IGlmICRjaGFuZ2Vsb2dmb3JtYXQ7Ciskb3B0aW9uc3sic2luY2UifSA9ICRzaW5jZSBpZiBkZWZpbmVkKCRzaW5jZSk7CitteSAkY2hhbmdlbG9nID0gY2hhbmdlbG9nX3BhcnNlKCVvcHRpb25zKTsKKyMgQ2hhbmdlIG9wdGlvbnMgdG8gcmV0cmlldmUgaW5mbyBvZiB0aGUgZm9ybWVyIGNoYW5nZWxvZyBlbnRyeQorZGVsZXRlICRvcHRpb25zeyJzaW5jZSJ9OworJG9wdGlvbnN7ImNvdW50In0gPSAxOworJG9wdGlvbnN7Im9mZnNldCJ9ID0gMTsKK215ICRwcmV2X2NoYW5nZWxvZyA9IGNoYW5nZWxvZ19wYXJzZSglb3B0aW9ucyk7CisjIE90aGVyIGluaXRpYWxpemF0aW9ucworbXkgJGNvbnRyb2wgPSBEcGtnOjpDb250cm9sOjpJbmZvLT5uZXcoJGNvbnRyb2xmaWxlKTsKK215ICRmaWVsZHMgPSBEcGtnOjpDb250cm9sLT5uZXcodHlwZSA9PiBDVFJMX0ZJTEVfQ0hBTkdFUyk7Ciskc3Vic3R2YXJzLT5zZXRfdmVyc2lvbl9zdWJzdHZhcnMoJGNoYW5nZWxvZy0+eyJWZXJzaW9uIn0pOworJHN1YnN0dmFycy0+c2V0X2FyY2hfc3Vic3R2YXJzKCk7Ciskc3Vic3R2YXJzLT5sb2FkKCJkZWJpYW4vc3Vic3R2YXJzIikgaWYgLWUgImRlYmlhbi9zdWJzdHZhcnMiIGFuZCBub3QgJHN1YnN0dmFyc19sb2FkZWQ7CisKK2lmIChkZWZpbmVkKCRwcmV2X2NoYW5nZWxvZykgYW5kCisgICAgdmVyc2lvbl9jb21wYXJlX3JlbGF0aW9uKCRjaGFuZ2Vsb2ctPnsiVmVyc2lvbiJ9LCBSRUxfTFQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRwcmV2X2NoYW5nZWxvZy0+eyJWZXJzaW9uIn0pKQoreworICAgIHdhcm5pbmcoX2coInRoZSBjdXJyZW50IHZlcnNpb24gKCVzKSBpcyBlYXJsaWVyIHRoYW4gdGhlIHByZXZpb3VzIG9uZSAoJXMpIiksCisJJGNoYW5nZWxvZy0+eyJWZXJzaW9uIn0sICRwcmV2X2NoYW5nZWxvZy0+eyJWZXJzaW9uIn0pCisgICAgICAgICMgfmJwbyBhbmQgfnZvbGEgYXJlIGJhY2twb3J0cyBhbmQgaGF2ZSBsb3dlciB2ZXJzaW9uIG51bWJlciBieSBkZWZpbml0aW9uCisgICAgICAgIHVubGVzcyAkY2hhbmdlbG9nLT57IlZlcnNpb24ifSA9fiAvfig/OmJwb3x2b2xhKS87Cit9CisKK2lmIChub3QgaXNfc291cmNlb25seSkgeworICAgIG9wZW4oRkwsICI8IiwgJGZpbGVzbGlzdGZpbGUpIHx8IHN5c2VycihfZygiY2Fubm90IHJlYWQgZmlsZXMgbGlzdCBmaWxlIikpOworICAgIHdoaWxlKDxGTD4pIHsKKwlpZiAobS9eKChbLSsuMC05YS16XSspXyhbXl9dKylfKFstXHddKylcLnU/ZGViKSAoXFMrKSAoXFMrKSQvKSB7CisJICAgIGRlZmluZWQoJHAyZnsiJDIgJDQifSkgJiYKKwkJd2FybmluZyhfZygiZHVwbGljYXRlIGZpbGVzIGxpc3QgZW50cnkgZm9yIHBhY2thZ2UgJXMgKGxpbmUgJWQpIiksCisJCQkkMiwgJC4pOworCSAgICAkZjJweyQxfT0gJDI7CisJICAgICRwYTJmeyIkMiAkNCJ9PSAkMTsKKwkgICAgJHAyZnskMn0gfHw9IFtdOworCSAgICBwdXNoIEB7JHAyZnskMn19LCAkMTsKKwkgICAgJHAydmVyeyQyfT0gJDM7CisJICAgIGRlZmluZWQoJGYyc2VjeyQxfSkgJiYKKwkJd2FybmluZyhfZygiZHVwbGljYXRlIGZpbGVzIGxpc3QgZW50cnkgZm9yIGZpbGUgJXMgKGxpbmUgJWQpIiksCisJCQkkMSwgJC4pOworCSAgICAkZjJzZWN7JDF9PSAkNTsKKwkgICAgJGYycHJpeyQxfT0gJDY7CisJICAgIHB1c2goQGFyY2h2YWx1ZXMsJDQpIHVubGVzcyAhJDQgfHwgJGFyY2hhZGRlZHskNH0rKzsKKwkgICAgcHVzaChAZmlsZXNsaXN0ZmlsZXMsJDEpOworCX0gZWxzaWYgKG0vXihbLSsuMC05YS16XStfW15fXStfKFstXHddKylcLlthLXowLTkuXSspIChcUyspIChcUyspJC8pIHsKKwkgICAgIyBBIG5vbi1kZWIgcGFja2FnZQorCSAgICAkZjJzZWN7JDF9PSAkMzsKKwkgICAgJGYycHJpeyQxfT0gJDQ7CisJICAgIHB1c2goQGFyY2h2YWx1ZXMsJDIpIHVubGVzcyAhJDIgfHwgJGFyY2hhZGRlZHskMn0rKzsKKwkgICAgcHVzaChAZmlsZXNsaXN0ZmlsZXMsJDEpOworCX0gZWxzaWYgKG0vXihbLSsuLF8wLTlhLXpBLVpdKykgKFxTKykgKFxTKykkLykgeworCSAgICBkZWZpbmVkKCRmMnNlY3skMX0pICYmCisJCXdhcm5pbmcoX2coImR1cGxpY2F0ZSBmaWxlcyBsaXN0IGVudHJ5IGZvciBmaWxlICVzIChsaW5lICVkKSIpLAorCQkJJDEsICQuKTsKKwkgICAgJGYyc2VjeyQxfT0gJDI7CisJICAgICRmMnByaXskMX09ICQzOworCSAgICBwdXNoKEBmaWxlc2xpc3RmaWxlcywkMSk7CisJfSBlbHNlIHsKKwkgICAgZXJyb3IoX2coImJhZGx5IGZvcm1lZCBsaW5lIGluIGZpbGVzIGxpc3QgZmlsZSwgbGluZSAlZCIpLCAkLik7CisJfQorICAgIH0KKyAgICBjbG9zZShGTCk7Cit9CisKKyMgU2NhbiBjb250cm9sIGluZm8gb2Ygc291cmNlIHBhY2thZ2UKK215ICRzcmNfZmllbGRzID0gJGNvbnRyb2wtPmdldF9zb3VyY2UoKTsKK2ZvcmVhY2ggJF8gKGtleXMgJXskc3JjX2ZpZWxkc30pIHsKKyAgICBteSAkdiA9ICRzcmNfZmllbGRzLT57JF99OworICAgIGlmIChtL15Tb3VyY2UkLykgeworCXNldF9zb3VyY2VfcGFja2FnZSgkdik7CisgICAgfSBlbHNpZiAobS9eU2VjdGlvbiR8XlByaW9yaXR5JC9pKSB7CisJJHNvdXJjZWRlZmF1bHR7JF99ID0gJHY7CisgICAgfSBlbHNlIHsKKyAgICAgICAgZmllbGRfdHJhbnNmZXJfc2luZ2xlKCRzcmNfZmllbGRzLCAkZmllbGRzKTsKKyAgICB9Cit9CisKKyMgU2NhbiBjb250cm9sIGluZm8gb2YgYWxsIGJpbmFyeSBwYWNrYWdlcworZm9yZWFjaCBteSAkcGtnICgkY29udHJvbC0+Z2V0X3BhY2thZ2VzKCkpIHsKKyAgICBteSAkcCA9ICRwa2ctPnsiUGFja2FnZSJ9OworICAgIG15ICRhID0gJHBrZy0+eyJBcmNoaXRlY3R1cmUifSB8fCAiIjsKKyAgICBteSAkZCA9ICRwa2ctPnsiRGVzY3JpcHRpb24ifSB8fCAibm8gZGVzY3JpcHRpb24gYXZhaWxhYmxlIjsKKyAgICAkZCA9ICQxIGlmICRkID1+IC9eKC4qKVxuLzsKKyAgICBteSAkcGtnX3R5cGUgPSAkcGtnLT57IlBhY2thZ2UtVHlwZSJ9IHx8CisgICAgICAgICAgICAgICAgICAgJHBrZy0+Z2V0X2N1c3RvbV9maWVsZCgiUGFja2FnZS1UeXBlIikgfHwgImRlYiI7CisKKyAgICBteSBAZjsgIyBMaXN0IG9mIGZpbGVzIGZvciB0aGlzIGJpbmFyeSBwYWNrYWdlCisgICAgcHVzaCBAZiwgQHskcDJmeyRwfX0gaWYgZGVmaW5lZCAkcDJmeyRwfTsKKworICAgICMgQWRkIGRlc2NyaXB0aW9uIG9mIGFsbCBiaW5hcnkgcGFja2FnZXMKKyAgICBteSAkZGVzYyA9IGVuY29kZV91dGY4KHNwcmludGYoIiUtMTBzIC0gJS0uNjVzIiwgJHAsIGRlY29kZV91dGY4KCRkKSkpOworICAgICRkZXNjIC49ICIgKHVkZWIpIiBpZiAkcGtnX3R5cGUgZXEgInVkZWIiOworICAgIHB1c2ggQGRlc2NyaXB0aW9ucywgJGRlc2M7CisKKyAgICBpZiAobm90IGRlZmluZWQoJHAyZnskcH0pKSB7CisJIyBObyBmaWxlcyBmb3IgdGhpcyBwYWNrYWdlLi4uIHdhcm4gaWYgaXQncyB1bmV4cGVjdGVkCisJaWYgKChkZWJhcmNoX2VxKCdhbGwnLCAkYSkgYW5kICgkaW5jbHVkZSAmIEFSQ0hfSU5ERVApKSB8fAorCSAgICAoZ3JlcChkZWJhcmNoX2lzKCRob3N0X2FyY2gsICRfKSwgc3BsaXQoL1xzKy8sICRhKSkKKwkJICBhbmQgKCRpbmNsdWRlICYgQVJDSF9ERVApKSkgeworCSAgICB3YXJuaW5nKF9nKCJwYWNrYWdlICVzIGluIGNvbnRyb2wgZmlsZSBidXQgbm90IGluIGZpbGVzIGxpc3QiKSwKKwkJICAgICRwKTsKKwl9CisJbmV4dDsgIyBhbmQgc2tpcCBpdAorICAgIH0KKworICAgICRwMmFyY2h7JHB9ID0gJGE7CisKKyAgICBmb3JlYWNoICRfIChrZXlzICV7JHBrZ30pIHsKKwlteSAkdiA9ICRwa2ctPnskX307CisKKwlpZiAobS9eU2VjdGlvbiQvKSB7CisJICAgICRmMnNlY2NmeyRffSA9ICR2IGZvcmVhY2ggKEBmKTsKKwl9IGVsc2lmIChtL15Qcmlvcml0eSQvKSB7CisJICAgICRmMnByaWNmeyRffSA9ICR2IGZvcmVhY2ggKEBmKTsKKwl9IGVsc2lmIChtL15BcmNoaXRlY3R1cmUkLykgeworCSAgICBpZiAoZ3JlcChkZWJhcmNoX2lzKCRob3N0X2FyY2gsICRfKSwgc3BsaXQoL1xzKy8sICR2KSkKKwkJYW5kICgkaW5jbHVkZSAmIEFSQ0hfREVQKSkgeworCQkkdiA9ICRob3N0X2FyY2g7CisJICAgIH0gZWxzaWYgKCFkZWJhcmNoX2VxKCdhbGwnLCAkdikpIHsKKwkJJHYgPSAnJzsKKwkgICAgfQorCSAgICBwdXNoKEBhcmNodmFsdWVzLCR2KSB1bmxlc3MgISR2IHx8ICRhcmNoYWRkZWR7JHZ9Kys7CisgICAgICAgIH0gZWxzaWYgKG0vXkRlc2NyaXB0aW9uJC8pIHsKKyAgICAgICAgICAgICMgRGVzY3JpcHRpb24gaW4gY2hhbmdlcyBpcyBjb21wdXRlZCwgZG8gbm90IGNvcHkgdGhpcyBmaWVsZAorCX0gZWxzZSB7CisgICAgICAgICAgICBmaWVsZF90cmFuc2Zlcl9zaW5nbGUoJHBrZywgJGZpZWxkcyk7CisJfQorICAgIH0KK30KKworIyBTY2FuIGZpZWxkcyBvZiBkcGtnLXBhcnNlY2hhbmdlbG9nCitmb3JlYWNoICRfIChrZXlzICV7JGNoYW5nZWxvZ30pIHsKKyAgICBteSAkdiA9ICRjaGFuZ2Vsb2ctPnskX307CisgICAgaWYgKG0vXlNvdXJjZSQvaSkgeworCXNldF9zb3VyY2VfcGFja2FnZSgkdik7CisgICAgfSBlbHNpZiAobS9eTWFpbnRhaW5lciQvaSkgeworCSRmaWVsZHMtPnsiQ2hhbmdlZC1CeSJ9ID0gJHY7CisgICAgfSBlbHNlIHsKKyAgICAgICAgZmllbGRfdHJhbnNmZXJfc2luZ2xlKCRjaGFuZ2Vsb2csICRmaWVsZHMpOworICAgIH0KK30KKworaWYgKCRjaGFuZ2VzZGVzY3JpcHRpb24pIHsKKyAgICBvcGVuKFgsICI8IiwgJGNoYW5nZXNkZXNjcmlwdGlvbikgfHwgc3lzZXJyKF9nKCJyZWFkIGNoYW5nZXNkZXNjcmlwdGlvbiIpKTsKKyAgICAkZmllbGRzLT57J0NoYW5nZXMnfSA9ICJcbiIgLiBqb2luKCIiLCA8WD4pOworICAgIGNsb3NlKFgpOworfQorCitmb3IgbXkgJHBhIChrZXlzICVwYTJmKSB7CisgICAgbXkgKCRwcCwgJGFhKSA9IChzcGxpdCAvIC8sICRwYSk7CisgICAgZGVmaW5lZCgkY29udHJvbC0+Z2V0X3BrZ19ieV9uYW1lKCRwcCkpIHx8CisJd2FybmluZyhfZygicGFja2FnZSAlcyBsaXN0ZWQgaW4gZmlsZXMgbGlzdCBidXQgbm90IGluIGNvbnRyb2wgaW5mbyIpLAorCSAgICAgICAgJHBwKTsKK30KKworZm9yIG15ICRwIChrZXlzICVwMmYpIHsKKyAgICBteSBAZiA9IEB7JHAyZnskcH19OworCisgICAgZm9yZWFjaCBteSAkZiAoQGYpIHsKKwlteSAkc2VjID0gJGYyc2VjY2Z7JGZ9OworCSRzZWMgfHw9ICRzb3VyY2VkZWZhdWx0eydTZWN0aW9uJ307CisJaWYgKCFkZWZpbmVkKCRzZWMpKSB7CisJICAgICRzZWMgPSAnLSc7CisJICAgIHdhcm5pbmcoX2coIm1pc3NpbmcgU2VjdGlvbiBmb3IgYmluYXJ5IHBhY2thZ2UgJXM7IHVzaW5nICctJyIpLCAkcCk7CisJfQorCSRzZWMgZXEgJGYyc2VjeyRmfSB8fCBlcnJvcihfZygicGFja2FnZSAlcyBoYXMgc2VjdGlvbiAlcyBpbiAiIC4KKwkJCQkgICAgICAgImNvbnRyb2wgZmlsZSBidXQgJXMgaW4gZmlsZXMgbGlzdCIpLAorCQkJCSAgICAkcCwgJHNlYywgJGYyc2VjeyRmfSk7CisJbXkgJHByaSA9ICRmMnByaWNmeyRmfTsKKwkkcHJpIHx8PSAkc291cmNlZGVmYXVsdHsnUHJpb3JpdHknfTsKKwlpZiAoIWRlZmluZWQoJHByaSkpIHsKKwkgICAgJHByaSA9ICctJzsKKwkgICAgd2FybmluZyhfZygibWlzc2luZyBQcmlvcml0eSBmb3IgYmluYXJ5IHBhY2thZ2UgJXM7IHVzaW5nICctJyIpLCAkcCk7CisJfQorCSRwcmkgZXEgJGYycHJpeyRmfSB8fCBlcnJvcihfZygicGFja2FnZSAlcyBoYXMgcHJpb3JpdHkgJXMgaW4gIiAuCisJCQkJICAgICAgICJjb250cm9sIGZpbGUgYnV0ICVzIGluIGZpbGVzIGxpc3QiKSwKKwkJCQkgICAgJHAsICRwcmksICRmMnByaXskZn0pOworICAgIH0KK30KKworbXkgJG9yaWdzcmNtc2c7CisKK2lmICghaXNfYmluYXJ5b25seSkgeworICAgIG15ICRzZWMgPSAkc291cmNlZGVmYXVsdHsnU2VjdGlvbid9OworICAgIGlmICghZGVmaW5lZCgkc2VjKSkgeworCSRzZWMgPSAnLSc7CisJd2FybmluZyhfZygibWlzc2luZyBTZWN0aW9uIGZvciBzb3VyY2UgZmlsZXMiKSk7CisgICAgfQorICAgIG15ICRwcmkgPSAkc291cmNlZGVmYXVsdHsnUHJpb3JpdHknfTsKKyAgICBpZiAoIWRlZmluZWQoJHByaSkpIHsKKwkkcHJpID0gJy0nOworCXdhcm5pbmcoX2coIm1pc3NpbmcgUHJpb3JpdHkgZm9yIHNvdXJjZSBmaWxlcyIpKTsKKyAgICB9CisKKyAgICAobXkgJHN2ZXJzaW9uID0gJHN1YnN0dmFycy0+Z2V0KCdzb3VyY2U6VmVyc2lvbicpKSA9fiBzL15cZCs6Ly87CisgICAgJGRzYz0gIiR1cGxvYWRmaWxlc2Rpci8ke3NvdXJjZXBhY2thZ2V9XyR7c3ZlcnNpb259LmRzYyI7CisKKyAgICBteSAkZHNjX2ZpZWxkcyA9IERwa2c6OkNvbnRyb2wtPm5ldyh0eXBlID0+IENUUkxfUEtHX1NSQyk7CisgICAgJGRzY19maWVsZHMtPmxvYWQoJGRzYykgfHwgZXJyb3IoX2coIiVzIGlzIGVtcHR5IiwgJGRzYykpOworICAgICRjaGVja3N1bXMtPmFkZF9mcm9tX2ZpbGUoJGRzYywga2V5ID0+ICIkc291cmNlcGFja2FnZVxfJHN2ZXJzaW9uLmRzYyIpOworICAgICRjaGVja3N1bXMtPmFkZF9mcm9tX2NvbnRyb2woJGRzY19maWVsZHMsIHVzZV9maWxlc19mb3JfbWQ1ID0+IDEpOworCisgICAgZm9yIG15ICRmICgkY2hlY2tzdW1zLT5nZXRfZmlsZXMoKSkgeworCSRmMnNlY3skZn0gPSAkc2VjOworCSRmMnByaXskZn0gPSAkcHJpOworICAgIH0KKworICAgICMgQ29tcGFyZSB1cHN0cmVhbSB2ZXJzaW9uIHRvIHByZXZpb3VzIHVwc3RyZWFtIHZlcnNpb24gdG8gZGVjaWRlIGlmCisgICAgIyB0aGUgLm9yaWcgdGFyYmFsbHMgbXVzdCBiZSBpbmNsdWRlZAorICAgIG15ICRpbmNsdWRlX3RhcmJhbGw7CisgICAgaWYgKGRlZmluZWQoJHByZXZfY2hhbmdlbG9nKSkgeworCW15ICRjdXIgPSBEcGtnOjpWZXJzaW9uLT5uZXcoJGNoYW5nZWxvZy0+eyJWZXJzaW9uIn0pOworCW15ICRwcmV2ID0gRHBrZzo6VmVyc2lvbi0+bmV3KCRwcmV2X2NoYW5nZWxvZy0+eyJWZXJzaW9uIn0pOworCSRpbmNsdWRlX3RhcmJhbGwgPSAoJGN1ci0+dmVyc2lvbigpIG5lICRwcmV2LT52ZXJzaW9uKCkpID8gMSA6IDA7CisgICAgfSBlbHNlIHsKKwkjIE5vIHByZXZpb3VzIGVudHJ5IG1lYW5zIGZpcnN0IHVwbG9hZCwgdGFyYmFsbCByZXF1aXJlZAorCSRpbmNsdWRlX3RhcmJhbGwgPSAxOworICAgIH0KKworICAgIG15ICRleHQgPSAkY29tcHJlc3Npb25fcmVfZmlsZV9leHQ7CisgICAgaWYgKCgoJHNvdXJjZXN0eWxlID1+IG0vaS8gJiYgbm90KCRpbmNsdWRlX3RhcmJhbGwpKSB8fAorCSAkc291cmNlc3R5bGUgPX4gbS9kLykgJiYKKwlncmVwKG0vXC4oZGViaWFuXC50YXJ8ZGlmZilcLiRleHQkLywgJGNoZWNrc3Vtcy0+Z2V0X2ZpbGVzKCkpKQorICAgIHsKKwkkb3JpZ3NyY21zZz0gX2coIm5vdCBpbmNsdWRpbmcgb3JpZ2luYWwgc291cmNlIGNvZGUgaW4gdXBsb2FkIik7CisJZm9yZWFjaCBteSAkZiAoZ3JlcCBtL1wub3JpZygtLispP1wudGFyXC4kZXh0JC8sICRjaGVja3N1bXMtPmdldF9maWxlcygpKSB7CisJICAgICRjaGVja3N1bXMtPnJlbW92ZV9maWxlKCRmKTsKKwl9CisgICAgfSBlbHNlIHsKKwlpZiAoJHNvdXJjZXN0eWxlID1+IG0vZC8gJiYKKwkgICAgIWdyZXAobS9cLihkZWJpYW5cLnRhcnxkaWZmKVwuJGV4dCQvLCAkY2hlY2tzdW1zLT5nZXRfZmlsZXMoKSkpIHsKKwkgICAgd2FybmluZyhfZygiaWdub3JpbmcgLXNkIG9wdGlvbiBmb3IgbmF0aXZlIERlYmlhbiBwYWNrYWdlIikpOworCX0KKyAgICAgICAgJG9yaWdzcmNtc2c9IF9nKCJpbmNsdWRpbmcgZnVsbCBzb3VyY2UgY29kZSBpbiB1cGxvYWQiKTsKKyAgICB9Cit9IGVsc2UgeworICAgICRvcmlnc3JjbXNnPSBfZygiYmluYXJ5LW9ubHkgdXBsb2FkIC0gbm90IGluY2x1ZGluZyBhbnkgc291cmNlIGNvZGUiKTsKK30KKworcHJpbnQoU1RERVJSICIkcHJvZ25hbWU6ICRvcmlnc3JjbXNnXG4iKSB8fAorICAgIHN5c2VycihfZygid3JpdGUgb3JpZ2luYWwgc291cmNlIG1lc3NhZ2UiKSkgdW5sZXNzICRxdWlldDsKKworJGZpZWxkcy0+eydGb3JtYXQnfSA9ICRzdWJzdHZhcnMtPmdldCgiRm9ybWF0Iik7CisKK2lmICghZGVmaW5lZCgkZmllbGRzLT57J0RhdGUnfSkpIHsKKyAgICBjaG9tcChteSAkZGF0ZTgyMiA9IGBkYXRlIC1SYCk7CisgICAgJD8gJiYgc3VicHJvY2VycigiZGF0ZSAtUiIpOworICAgICRmaWVsZHMtPnsnRGF0ZSd9PSAkZGF0ZTgyMjsKK30KKworJGZpZWxkcy0+eydCaW5hcnknfSA9IGpvaW4oJyAnLCBtYXAgeyAkXy0+eydQYWNrYWdlJ30gfSAkY29udHJvbC0+Z2V0X3BhY2thZ2VzKCkpOworIyBBdm9pZCBvdmVybHkgbG9uZyBsaW5lIGJ5IHNwbGl0dGluZyBvdmVyIG11bHRpcGxlIGxpbmVzCitpZiAobGVuZ3RoKCRmaWVsZHMtPnsnQmluYXJ5J30pID4gOTgwKSB7CisgICAgJGZpZWxkcy0+eydCaW5hcnknfSA9fiBzLyguezAsOTgwfSkgLyQxXG4vZzsKK30KKwordW5zaGlmdChAYXJjaHZhbHVlcywnc291cmNlJykgdW5sZXNzIGlzX2JpbmFyeW9ubHk7CitAYXJjaHZhbHVlcyA9ICgnYWxsJykgaWYgJGluY2x1ZGUgPT0gQVJDSF9JTkRFUDsKK0BhcmNodmFsdWVzID0gZ3JlcCB7IWRlYmFyY2hfZXEoJ2FsbCcsJF8pfSBAYXJjaHZhbHVlcworICAgIHVubGVzcyAkaW5jbHVkZSAmIEFSQ0hfSU5ERVA7CiskZmllbGRzLT57J0FyY2hpdGVjdHVyZSd9ID0gam9pbignICcsQGFyY2h2YWx1ZXMpOworCiskZmllbGRzLT57J0Rlc2NyaXB0aW9uJ30gPSAiXG4iIC4gam9pbigiXG4iLCBzb3J0IEBkZXNjcmlwdGlvbnMpOworCiskZmllbGRzLT57J0ZpbGVzJ30gPSAnJzsKKworbXkgJWZpbGVkb25lOworCitmb3IgbXkgJGYgKCRjaGVja3N1bXMtPmdldF9maWxlcygpLCBAZmlsZXNsaXN0ZmlsZXMpIHsKKyAgICBteSAkYXJjaF9hbGwgPSBkZWJhcmNoX2VxKCdhbGwnLCAkcDJhcmNoeyRmMnB7JGZ9fSkgaWYgZGVmaW5lZCgkZjJweyRmfSk7CisKKyAgICBuZXh0IGlmIChkZWZpbmVkKCRhcmNoX2FsbCkgJiYgKCRpbmNsdWRlID09IEFSQ0hfREVQIGFuZCAkYXJjaF9hbGwpKTsKKyAgICBuZXh0IGlmIChkZWZpbmVkKCRhcmNoX2FsbCkgJiYgKCRpbmNsdWRlID09IEFSQ0hfSU5ERVAgYW5kIG5vdCAkYXJjaF9hbGwpKTsKKyAgICBuZXh0IGlmICRmaWxlZG9uZXskZn0rKzsKKyAgICBteSAkdWYgPSAiJHVwbG9hZGZpbGVzZGlyLyRmIjsKKyAgICAkY2hlY2tzdW1zLT5hZGRfZnJvbV9maWxlKCR1Ziwga2V5ID0+ICRmKTsKKyAgICAkZmllbGRzLT57J0ZpbGVzJ30gLj0gIlxuIiAuICRjaGVja3N1bXMtPmdldF9jaGVja3N1bSgkZiwgIm1kNSIpIC4KKwkJCSAgIiAiIC4gJGNoZWNrc3Vtcy0+Z2V0X3NpemUoJGYpIC4KKwkJCSAgIiAkZjJzZWN7JGZ9ICRmMnByaXskZn0gJGYiOworfQorJGNoZWNrc3Vtcy0+ZXhwb3J0X3RvX2NvbnRyb2woJGZpZWxkcyk7CisjIHJlZHVuZGFudCB3aXRoIHRoZSBGaWxlcyBmaWVsZAorZGVsZXRlICRmaWVsZHMtPnsiQ2hlY2tzdW1zLU1kNSJ9OworCiskZmllbGRzLT57J1NvdXJjZSd9PSAkc291cmNlcGFja2FnZTsKK2lmICgkZmllbGRzLT57J1ZlcnNpb24nfSBuZSAkc3Vic3R2YXJzLT5nZXQoJ3NvdXJjZTpWZXJzaW9uJykpIHsKKyAgICAkZmllbGRzLT57J1NvdXJjZSd9IC49ICIgKCIgLiAkc3Vic3R2YXJzLT5nZXQoJ3NvdXJjZTpWZXJzaW9uJykgLiAiKSI7Cit9CisKKyRmaWVsZHMtPnsnTWFpbnRhaW5lcid9ID0gJGZvcmNlbWFpbnQgaWYgZGVmaW5lZCgkZm9yY2VtYWludCk7CiskZmllbGRzLT57J0NoYW5nZWQtQnknfSA9ICRmb3JjZWNoYW5nZWRieSBpZiBkZWZpbmVkKCRmb3JjZWNoYW5nZWRieSk7CisKK2ZvciBteSAkZiAocXcoVmVyc2lvbiBEaXN0cmlidXRpb24gTWFpbnRhaW5lciBDaGFuZ2VzKSkgeworICAgIGRlZmluZWQoJGZpZWxkcy0+eyRmfSkgfHwKKyAgICAgICAgZXJyb3IoX2coIm1pc3NpbmcgaW5mb3JtYXRpb24gZm9yIGNyaXRpY2FsIG91dHB1dCBmaWVsZCAlcyIpLCAkZik7Cit9CisKK2ZvciBteSAkZiAocXcoVXJnZW5jeSkpIHsKKyAgICBkZWZpbmVkKCRmaWVsZHMtPnskZn0pIHx8CisgICAgICAgIHdhcm5pbmcoX2coIm1pc3NpbmcgaW5mb3JtYXRpb24gZm9yIG91dHB1dCBmaWVsZCAlcyIpLCAkZik7Cit9CisKK2ZvciBteSAkZiAoa2V5cyAlb3ZlcnJpZGUpIHsKKyAgICAkZmllbGRzLT57JGZ9ID0gJG92ZXJyaWRleyRmfTsKK30KK2ZvciBteSAkZiAoa2V5cyAlcmVtb3ZlKSB7CisgICAgZGVsZXRlICRmaWVsZHMtPnskZn07Cit9CisKKyRmaWVsZHMtPm91dHB1dChcKlNURE9VVCk7ICMgTm90ZTogbm8gc3Vic3RpdHV0aW9uIG9mIHZhcmlhYmxlcwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbCBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGwKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMC4uNjM3ZDVmNQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGwKQEAgLTAsMCArMSwzODMgQEAKKyMhL3Vzci9iaW4vcGVybAorIworIyBkcGtnLWdlbmNvbnRyb2wKKyMKKyMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyMKKyMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisjIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisjIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyMKKyMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisKK3VzZSBzdHJpY3Q7Cit1c2Ugd2FybmluZ3M7CisKK3VzZSBQT1NJWDsKK3VzZSBQT1NJWCBxdyg6ZXJybm9faCk7Cit1c2UgRHBrZzsKK3VzZSBEcGtnOjpHZXR0ZXh0OwordXNlIERwa2c6OkVycm9ySGFuZGxpbmc7Cit1c2UgRHBrZzo6QXJjaCBxdyhnZXRfaG9zdF9hcmNoIGRlYmFyY2hfZXEgZGViYXJjaF9pcyk7Cit1c2UgRHBrZzo6RGVwczsKK3VzZSBEcGtnOjpDb250cm9sOwordXNlIERwa2c6OkNvbnRyb2w6OkluZm87Cit1c2UgRHBrZzo6Q29udHJvbDo6RmllbGRzOwordXNlIERwa2c6OlN1YnN0dmFyczsKK3VzZSBEcGtnOjpWYXJzOwordXNlIERwa2c6OkNoYW5nZWxvZzo6UGFyc2U7CisKK3RleHRkb21haW4oImRwa2ctZGV2Iik7CisKKworbXkgJGNvbnRyb2xmaWxlID0gJ2RlYmlhbi9jb250cm9sJzsKK215ICRjaGFuZ2Vsb2dmaWxlID0gJ2RlYmlhbi9jaGFuZ2Vsb2cnOworbXkgJGNoYW5nZWxvZ2Zvcm1hdDsKK215ICRmaWxlc2xpc3RmaWxlID0gJ2RlYmlhbi9maWxlcyc7CitteSAkcGFja2FnZWJ1aWxkZGlyID0gJ2RlYmlhbi90bXAnOworCitteSAkc291cmNldmVyc2lvbjsKK215ICRmb3JjZXZlcnNpb247CitteSAkZm9yY2VmaWxlbmFtZTsKK215ICRzdGRvdXQ7CitteSAlcmVtb3ZlOworbXkgJW92ZXJyaWRlOworbXkgJG9wcGFja2FnZTsKK215ICRzdWJzdHZhcnMgPSBEcGtnOjpTdWJzdHZhcnMtPm5ldygpOworbXkgJHN1YnN0dmFyc19sb2FkZWQgPSAwOworCisKK3N1YiB2ZXJzaW9uIHsKKyAgICBwcmludGYgX2coIkRlYmlhbiAlcyB2ZXJzaW9uICVzLlxuIiksICRwcm9nbmFtZSwgJHZlcnNpb247CisKKyAgICBwcmludGYgX2coIgorQ29weXJpZ2h0IChDKSAxOTk2IElhbiBKYWNrc29uLgorQ29weXJpZ2h0IChDKSAyMDAwLDIwMDIgV2ljaGVydCBBa2tlcm1hbi4iKTsKKworICAgIHByaW50ZiBfZygiCitUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAyIG9yCitsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS4KKyIpOworfQorCitzdWIgdXNhZ2UgeworICAgIHByaW50ZiBfZygKKyJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0KKworT3B0aW9uczoKKyAgLXA8cGFja2FnZT4gICAgICAgICAgICAgIHByaW50IGNvbnRyb2wgZmlsZSBmb3IgcGFja2FnZS4KKyAgLWM8Y29udHJvbGZpbGU+ICAgICAgICAgIGdldCBjb250cm9sIGluZm8gZnJvbSB0aGlzIGZpbGUuCisgIC1sPGNoYW5nZWxvZ2ZpbGU+ICAgICAgICBnZXQgcGVyLXZlcnNpb24gaW5mbyBmcm9tIHRoaXMgZmlsZS4KKyAgLUY8Y2hhbmdlbG9nZm9ybWF0PiAgICAgIGZvcmNlIGNoYW5nZSBsb2cgZm9ybWF0LgorICAtdjxmb3JjZXZlcnNpb24+ICAgICAgICAgc2V0IHZlcnNpb24gb2YgYmluYXJ5IHBhY2thZ2UuCisgIC1mPGZpbGVzbGlzdGZpbGU+ICAgICAgICB3cml0ZSBmaWxlcyBoZXJlIGluc3RlYWQgb2YgZGViaWFuL2ZpbGVzLgorICAtUDxwYWNrYWdlYnVpbGRkaXI+ICAgICAgdGVtcG9yYXJ5IGJ1aWxkIGRpciBpbnN0ZWFkIG9mIGRlYmlhbi90bXAuCisgIC1uPGZpbGVuYW1lPiAgICAgICAgICAgICBhc3N1bWUgdGhlIHBhY2thZ2UgZmlsZW5hbWUgd2lsbCBiZSA8ZmlsZW5hbWU+LgorICAtTyAgICAgICAgICAgICAgICAgICAgICAgd3JpdGUgdG8gc3Rkb3V0LCBub3QgLi4uL0RFQklBTi9jb250cm9sLgorICAtaXMsIC1pcCwgLWlzcCwgLWlwcyAgICAgZGVwcmVjYXRlZCwgaWdub3JlZCBmb3IgY29tcGF0aWJpbGl0eS4KKyAgLUQ8ZmllbGQ+PTx2YWx1ZT4gICAgICAgIG92ZXJyaWRlIG9yIGFkZCBhIGZpZWxkIGFuZCB2YWx1ZS4KKyAgLVU8ZmllbGQ+ICAgICAgICAgICAgICAgIHJlbW92ZSBhIGZpZWxkLgorICAtVjxuYW1lPj08dmFsdWU+ICAgICAgICAgc2V0IGEgc3Vic3RpdHV0aW9uIHZhcmlhYmxlLgorICAtVDx2YXJsaXN0ZmlsZT4gICAgICAgICAgcmVhZCB2YXJpYWJsZXMgaGVyZSwgbm90IGRlYmlhbi9zdWJzdHZhcnMuCisgIC1oLCAtLWhlbHAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLgorICAgICAgLS12ZXJzaW9uICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi4KKyIpLCAkcHJvZ25hbWU7Cit9CisKK3doaWxlIChAQVJHVikgeworICAgICRfPXNoaWZ0KEBBUkdWKTsKKyAgICBpZiAobS9eLXAoWy0rMC05YS16Ll0rKSQvKSB7CisgICAgICAgICRvcHBhY2thZ2U9ICQxOworICAgIH0gZWxzaWYgKG0vXi1wKC4qKS8pIHsKKyAgICAgICAgZXJyb3IoX2coIklsbGVnYWwgcGFja2FnZSBuYW1lIFxgJXMnIiksICQxKTsKKyAgICB9IGVsc2lmIChtL14tYy8pIHsKKyAgICAgICAgJGNvbnRyb2xmaWxlPSAkJzsKKyAgICB9IGVsc2lmIChtL14tbC8pIHsKKyAgICAgICAgJGNoYW5nZWxvZ2ZpbGU9ICQnOworICAgIH0gZWxzaWYgKG0vXi1QLykgeworICAgICAgICAkcGFja2FnZWJ1aWxkZGlyPSAkJzsKKyAgICB9IGVsc2lmIChtL14tZi8pIHsKKyAgICAgICAgJGZpbGVzbGlzdGZpbGU9ICQnOworICAgIH0gZWxzaWYgKG0vXi12KC4rKSQvKSB7CisgICAgICAgICRmb3JjZXZlcnNpb249ICQxOworICAgIH0gZWxzaWYgKG0vXi1PJC8pIHsKKyAgICAgICAgJHN0ZG91dD0gMTsKKyAgICB9IGVsc2lmIChtL14taVtzcF1bc3BdPyQvKSB7CisJIyBpZ25vcmVkIGZvciBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eQorICAgIH0gZWxzaWYgKG0vXi1GKFswLTlhLXpdKykkLykgeworICAgICAgICAkY2hhbmdlbG9nZm9ybWF0PSQxOworICAgIH0gZWxzaWYgKG0vXi1EKFteXD06XSspWz06XS8pIHsKKyAgICAgICAgJG92ZXJyaWRleyQxfT0gJCc7CisgICAgfSBlbHNpZiAobS9eLVUoW15cPTpdKykkLykgeworICAgICAgICAkcmVtb3ZleyQxfT0gMTsKKyAgICB9IGVsc2lmIChtL14tVihcd1stOjAtOUEtWmEtel0qKVs9Ol0vKSB7CisgICAgICAgICRzdWJzdHZhcnMtPnNldCgkMSwgJCcpOworCSRzdWJzdHZhcnMtPm5vX3dhcm4oJDEpOworICAgIH0gZWxzaWYgKG0vXi1UKC4qKSQvKSB7CisJJHN1YnN0dmFycy0+bG9hZCgkMSkgaWYgLWUgJDE7CisJJHN1YnN0dmFyc19sb2FkZWQgPSAxOworICAgIH0gZWxzaWYgKG0vXi1uLykgeworICAgICAgICAkZm9yY2VmaWxlbmFtZT0gJCc7CisgICAgfSBlbHNpZiAobS9eLShofC1oZWxwKSQvKSB7CisgICAgICAgIHVzYWdlKCk7CisgICAgICAgIGV4aXQoMCk7CisgICAgfSBlbHNpZiAobS9eLS12ZXJzaW9uJC8pIHsKKyAgICAgICAgdmVyc2lvbigpOworICAgICAgICBleGl0KDApOworICAgIH0gZWxzZSB7CisgICAgICAgIHVzYWdlZXJyKF9nKCJ1bmtub3duIG9wdGlvbiBcYCVzJyIpLCAkXyk7CisgICAgfQorfQorCit1bWFzayAwMDIyOyAjIGVuc3VyZSBzYW5lIGRlZmF1bHQgcGVybWlzc2lvbnMgZm9yIGNyZWF0ZWQgZmlsZXMKK215ICVvcHRpb25zID0gKGZpbGUgPT4gJGNoYW5nZWxvZ2ZpbGUpOworJG9wdGlvbnN7ImNoYW5nZWxvZ2Zvcm1hdCJ9ID0gJGNoYW5nZWxvZ2Zvcm1hdCBpZiAkY2hhbmdlbG9nZm9ybWF0OworbXkgJGNoYW5nZWxvZyA9IGNoYW5nZWxvZ19wYXJzZSglb3B0aW9ucyk7Ciskc3Vic3R2YXJzLT5zZXRfdmVyc2lvbl9zdWJzdHZhcnMoJGNoYW5nZWxvZy0+eyJWZXJzaW9uIn0pOworJHN1YnN0dmFycy0+c2V0X2FyY2hfc3Vic3R2YXJzKCk7Ciskc3Vic3R2YXJzLT5sb2FkKCJkZWJpYW4vc3Vic3R2YXJzIikgaWYgLWUgImRlYmlhbi9zdWJzdHZhcnMiIGFuZCBub3QgJHN1YnN0dmFyc19sb2FkZWQ7Ciskc3Vic3R2YXJzLT5zZXQoImJpbmFyeTpWZXJzaW9uIiwgJGZvcmNldmVyc2lvbikgaWYgZGVmaW5lZCAkZm9yY2V2ZXJzaW9uOworbXkgJGNvbnRyb2wgPSBEcGtnOjpDb250cm9sOjpJbmZvLT5uZXcoJGNvbnRyb2xmaWxlKTsKK215ICRmaWVsZHMgPSBEcGtnOjpDb250cm9sLT5uZXcodHlwZSA9PiBDVFJMX1BLR19ERUIpOworCitteSAkcGtnOworCitpZiAoZGVmaW5lZCgkb3BwYWNrYWdlKSkgeworICAgICRwa2cgPSAkY29udHJvbC0+Z2V0X3BrZ19ieV9uYW1lKCRvcHBhY2thZ2UpOworICAgIGRlZmluZWQoJHBrZykgfHwgZXJyb3IoX2coInBhY2thZ2UgJXMgbm90IGluIGNvbnRyb2wgaW5mbyIpLCAkb3BwYWNrYWdlKTsKK30gZWxzZSB7CisgICAgbXkgQHBhY2thZ2VzID0gbWFwIHsgJF8tPnsnUGFja2FnZSd9IH0gJGNvbnRyb2wtPmdldF9wYWNrYWdlcygpOworICAgIEBwYWNrYWdlcz09MSB8fAorICAgICAgICBlcnJvcihfZygibXVzdCBzcGVjaWZ5IHBhY2thZ2Ugc2luY2UgY29udHJvbCBpbmZvIGhhcyBtYW55ICglcykiKSwKKyAgICAgICAgICAgICAgIkBwYWNrYWdlcyIpOworICAgICRwa2cgPSAkY29udHJvbC0+Z2V0X3BrZ19ieV9pZHgoMSk7Cit9Ciskc3Vic3R2YXJzLT5zZXRfbXNnX3ByZWZpeChzcHJpbnRmKF9nKCJwYWNrYWdlICVzOiAiKSwgJHBrZy0+e1BhY2thZ2V9KSk7CisKKyMgU2NhbiBzb3VyY2UgcGFja2FnZQorbXkgJHNyY19maWVsZHMgPSAkY29udHJvbC0+Z2V0X3NvdXJjZSgpOworZm9yZWFjaCAkXyAoa2V5cyAleyRzcmNfZmllbGRzfSkgeworICAgIGlmIChtL15Tb3VyY2UkLykgeworCXNldF9zb3VyY2VfcGFja2FnZSgkc3JjX2ZpZWxkcy0+eyRffSk7CisgICAgfSBlbHNlIHsKKyAgICAgICAgZmllbGRfdHJhbnNmZXJfc2luZ2xlKCRzcmNfZmllbGRzLCAkZmllbGRzKTsKKyAgICB9Cit9CisKKyMgU2NhbiBiaW5hcnkgcGFja2FnZQorZm9yZWFjaCAkXyAoa2V5cyAleyRwa2d9KSB7CisgICAgbXkgJHYgPSAkcGtnLT57JF99OworICAgIGlmIChmaWVsZF9nZXRfZGVwX3R5cGUoJF8pKSB7CisJIyBEZWxheSB0aGUgcGFyc2luZyB1bnRpbCBsYXRlcgorICAgIH0gZWxzaWYgKG0vXkFyY2hpdGVjdHVyZSQvKSB7CisJbXkgJGhvc3RfYXJjaCA9IGdldF9ob3N0X2FyY2goKTsKKworCWlmIChkZWJhcmNoX2VxKCdhbGwnLCAkdikpIHsKKwkgICAgJGZpZWxkcy0+eyRffSA9ICR2OworCX0gZWxzZSB7CisJICAgIG15IEBhcmNobGlzdCA9IHNwbGl0KC9ccysvLCAkdik7CisJICAgIG15IEBpbnZhbGlkX2FyY2hzID0gZ3JlcCBtL1teXHctXS8sIEBhcmNobGlzdDsKKwkgICAgd2FybmluZyhuZ2V0dGV4dCgiYCVzJyBpcyBub3QgYSBsZWdhbCBhcmNoaXRlY3R1cmUgc3RyaW5nLiIsCisJCQkgICAgICJgJXMnIGFyZSBub3QgbGVnYWwgYXJjaGl0ZWN0dXJlIHN0cmluZ3MuIiwKKwkJCSAgICAgc2NhbGFyKEBpbnZhbGlkX2FyY2hzKSksCisJCSAgICBqb2luKCInIGAiLCBAaW52YWxpZF9hcmNocykpCisJCWlmIEBpbnZhbGlkX2FyY2hzID49IDE7CisJICAgIGdyZXAoZGViYXJjaF9pcygkaG9zdF9hcmNoLCAkXyksIEBhcmNobGlzdCkgfHwKKwkJZXJyb3IoX2coImN1cnJlbnQgaG9zdCBhcmNoaXRlY3R1cmUgJyVzJyBkb2VzIG5vdCAiIC4KKwkJCSAiYXBwZWFyIGluIHBhY2thZ2UncyBhcmNoaXRlY3R1cmUgbGlzdCAoJXMpIiksCisJCSAgICAgICRob3N0X2FyY2gsICJAYXJjaGxpc3QiKTsKKwkgICAgJGZpZWxkcy0+eyRffSA9ICRob3N0X2FyY2g7CisJfQorICAgIH0gZWxzZSB7CisgICAgICAgIGZpZWxkX3RyYW5zZmVyX3NpbmdsZSgkcGtnLCAkZmllbGRzKTsKKyAgICB9Cit9CisKKyMgU2NhbiBmaWVsZHMgb2YgZHBrZy1wYXJzZWNoYW5nZWxvZworZm9yZWFjaCAkXyAoa2V5cyAleyRjaGFuZ2Vsb2d9KSB7CisgICAgbXkgJHYgPSAkY2hhbmdlbG9nLT57JF99OworCisgICAgaWYgKG0vXlNvdXJjZSQvKSB7CisJc2V0X3NvdXJjZV9wYWNrYWdlKCR2KTsKKyAgICB9IGVsc2lmIChtL15WZXJzaW9uJC8pIHsKKwkkc291cmNldmVyc2lvbiA9ICR2OworCSRmaWVsZHMtPnskX30gPSAkdiB1bmxlc3MgZGVmaW5lZCgkZm9yY2V2ZXJzaW9uKTsKKyAgICB9IGVsc2lmIChtL15NYWludGFpbmVyJC8pIHsKKyAgICAgICAgIyBUaGF0IGZpZWxkIG11c3Qgbm90IGJlIGNvcGllZCBmcm9tIGNoYW5nZWxvZyBldmVuIGlmIGl0J3MKKyAgICAgICAgIyBhbGxvd2VkIGluIHRoZSBiaW5hcnkgcGFja2FnZSBjb250cm9sIGluZm9ybWF0aW9uCisgICAgfSBlbHNlIHsKKyAgICAgICAgZmllbGRfdHJhbnNmZXJfc2luZ2xlKCRjaGFuZ2Vsb2csICRmaWVsZHMpOworICAgIH0KK30KKworJGZpZWxkcy0+eydWZXJzaW9uJ30gPSAkZm9yY2V2ZXJzaW9uIGlmIGRlZmluZWQoJGZvcmNldmVyc2lvbik7CisKKyMgUHJvY2VzcyBkZXBlbmRlbmN5IGZpZWxkcyBpbiBhIHNlY29uZCBwYXNzLCBub3cgdGhhdCBzdWJzdHZhcnMgaGF2ZSBiZWVuCisjIGluaXRpYWxpemVkLgorCitteSAkZmFjdHMgPSBEcGtnOjpEZXBzOjpLbm93bkZhY3RzLT5uZXcoKTsKKyRmYWN0cy0+YWRkX2luc3RhbGxlZF9wYWNrYWdlKCRmaWVsZHMtPnsnUGFja2FnZSd9LCAkZmllbGRzLT57J1ZlcnNpb24nfSk7CitpZiAoZXhpc3RzICRwa2ctPnsiUHJvdmlkZXMifSkgeworICAgIG15ICRwcm92aWRlcyA9IGRlcHNfcGFyc2UoJHN1YnN0dmFycy0+c3Vic3R2YXJzKCRwa2ctPnsiUHJvdmlkZXMifSwgbm9fd2FybiA9PiAxKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlZHVjZV9hcmNoID0+IDEsIHVuaW9uID0+IDEpOworICAgIGlmIChkZWZpbmVkICRwcm92aWRlcykgeworCWZvcmVhY2ggbXkgJHN1YmRlcCAoJHByb3ZpZGVzLT5nZXRfZGVwcygpKSB7CisJICAgIGlmICgkc3ViZGVwLT5pc2EoJ0Rwa2c6OkRlcHM6OlNpbXBsZScpKSB7CisJCSRmYWN0cy0+YWRkX3Byb3ZpZGVkX3BhY2thZ2UoJHN1YmRlcC0+e3BhY2thZ2V9LAorICAgICAgICAgICAgICAgICAgICAgICAgJHN1YmRlcC0+e3JlbGF0aW9ufSwgJHN1YmRlcC0+e3ZlcnNpb259LAorICAgICAgICAgICAgICAgICAgICAgICAgJGZpZWxkcy0+eydQYWNrYWdlJ30pOworCSAgICB9CisJfQorICAgIH0KK30KKworbXkgKEBzZWVuX2RlcHMpOworZm9yZWFjaCBteSAkZmllbGQgKGZpZWxkX2xpc3RfcGtnX2RlcCgpKSB7CisgICAgIyBBcmNoOiBhbGwgY2FuJ3QgYmUgc2ltcGxpZmllZCBhcyB0aGUgaG9zdCBhcmNoaXRlY3R1cmUgaXMgbm90IGtub3duCisgICAgbXkgJHJlZHVjZV9hcmNoID0gZGViYXJjaF9lcSgnYWxsJywgJHBrZy0+e0FyY2hpdGVjdHVyZX0gfHwgImFsbCIpID8gMCA6IDE7CisgICAgaWYgKGV4aXN0cyAkcGtnLT57JGZpZWxkfSkgeworCW15ICRkZXA7CisJbXkgJGZpZWxkX3ZhbHVlID0gJHN1YnN0dmFycy0+c3Vic3R2YXJzKCRwa2ctPnskZmllbGR9LAorCSAgICBtc2dfcHJlZml4ID0+IHNwcmludGYoX2coIiVzIGZpZWxkIG9mIHBhY2thZ2UgJXM6ICIpLCAkZmllbGQsICRwa2ctPntQYWNrYWdlfSkpOworCWlmIChmaWVsZF9nZXRfZGVwX3R5cGUoJGZpZWxkKSBlcSAnbm9ybWFsJykgeworCSAgICAkZGVwID0gZGVwc19wYXJzZSgkZmllbGRfdmFsdWUsIHVzZV9hcmNoID0+IDEsCisJCQkgICAgICByZWR1Y2VfYXJjaCA9PiAkcmVkdWNlX2FyY2gpOworCSAgICBlcnJvcihfZygiZXJyb3Igb2NjdXJyZWQgd2hpbGUgcGFyc2luZyAlcyBmaWVsZDogJXMiKSwgJGZpZWxkLAorICAgICAgICAgICAgICAgICAgJGZpZWxkX3ZhbHVlKSB1bmxlc3MgZGVmaW5lZCAkZGVwOworCSAgICAkZGVwLT5zaW1wbGlmeV9kZXBzKCRmYWN0cywgQHNlZW5fZGVwcyk7CisJICAgICMgUmVtZW1iZXIgbm9ybWFsIGRlcHMgdG8gc2ltcGxpZnkgZXZlbiBmdXJ0aGVyIHdlYWtlciBkZXBzCisJICAgIHB1c2ggQHNlZW5fZGVwcywgJGRlcDsKKwl9IGVsc2UgeworCSAgICAkZGVwID0gZGVwc19wYXJzZSgkZmllbGRfdmFsdWUsIHVzZV9hcmNoID0+IDEsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWR1Y2VfYXJjaCA9PiAkcmVkdWNlX2FyY2gsIHVuaW9uID0+IDEpOworCSAgICBlcnJvcihfZygiZXJyb3Igb2NjdXJyZWQgd2hpbGUgcGFyc2luZyAlcyBmaWVsZDogJXMiKSwgJGZpZWxkLAorICAgICAgICAgICAgICAgICAgJGZpZWxkX3ZhbHVlKSB1bmxlc3MgZGVmaW5lZCAkZGVwOworCSAgICAkZGVwLT5zaW1wbGlmeV9kZXBzKCRmYWN0cyk7CisgICAgICAgICAgICAkZGVwLT5zb3J0KCk7CisJfQorCWVycm9yKF9nKCJ0aGUgJXMgZmllbGQgY29udGFpbnMgYW4gYXJjaC1zcGVjaWZpYyBkZXBlbmRlbmN5IGJ1dCB0aGUgIiAuCisJICAgICAgICAgInBhY2thZ2UgaXMgYXJjaGl0ZWN0dXJlIGFsbCIpLCAkZmllbGQpCisJICAgIGlmICRkZXAtPmhhc19hcmNoX3Jlc3RyaWN0aW9uKCk7CisJJGZpZWxkcy0+eyRmaWVsZH0gPSAkZGVwLT5vdXRwdXQoKTsKKwlkZWxldGUgJGZpZWxkcy0+eyRmaWVsZH0gdW5sZXNzICRmaWVsZHMtPnskZmllbGR9OyAjIERlbGV0ZSBlbXB0eSBmaWVsZAorICAgIH0KK30KKworZm9yIG15ICRmIChxdyhQYWNrYWdlIFZlcnNpb24pKSB7CisgICAgZGVmaW5lZCgkZmllbGRzLT57JGZ9KSB8fCBlcnJvcihfZygibWlzc2luZyBpbmZvcm1hdGlvbiBmb3Igb3V0cHV0IGZpZWxkICVzIiksICRmKTsKK30KK2ZvciBteSAkZiAocXcoTWFpbnRhaW5lciBEZXNjcmlwdGlvbiBBcmNoaXRlY3R1cmUpKSB7CisgICAgZGVmaW5lZCgkZmllbGRzLT57JGZ9KSB8fCB3YXJuaW5nKF9nKCJtaXNzaW5nIGluZm9ybWF0aW9uIGZvciBvdXRwdXQgZmllbGQgJXMiKSwgJGYpOworfQorJG9wcGFja2FnZSA9ICRmaWVsZHMtPnsnUGFja2FnZSd9OworCitteSAkcGtnX3R5cGUgPSAkcGtnLT57J1BhY2thZ2UtVHlwZSd9IHx8CisgICAgICAgICAgICAgICAkcGtnLT5nZXRfY3VzdG9tX2ZpZWxkKCdQYWNrYWdlLVR5cGUnKSB8fCAnZGViJzsKKworaWYgKCRwa2dfdHlwZSBlcSAndWRlYicpIHsKKyAgICBkZWxldGUgJGZpZWxkcy0+eydQYWNrYWdlLVR5cGUnfTsKKyAgICBkZWxldGUgJGZpZWxkcy0+eydIb21lcGFnZSd9OworfSBlbHNlIHsKKyAgICBmb3IgbXkgJGYgKHF3KFN1YmFyY2hpdGVjdHVyZSBLZXJuZWwtVmVyc2lvbiBJbnN0YWxsZXItTWVudS1JdGVtKSkgeworICAgICAgICB3YXJuaW5nKF9nKCIlcyBwYWNrYWdlIHdpdGggdWRlYiBzcGVjaWZpYyBmaWVsZCAlcyIpLCAkcGtnX3R5cGUsICRmKQorICAgICAgICAgICAgaWYgZGVmaW5lZCgkZmllbGRzLT57JGZ9KTsKKyAgICB9Cit9CisKK215ICR2ZXJkaWZmID0gJGZpZWxkcy0+eydWZXJzaW9uJ30gbmUgJHN1YnN0dmFycy0+Z2V0KCdzb3VyY2U6VmVyc2lvbicpIHx8CisgICAgICAgICAgICAgICRmaWVsZHMtPnsnVmVyc2lvbid9IG5lICRzb3VyY2V2ZXJzaW9uOworaWYgKCRvcHBhY2thZ2UgbmUgJHNvdXJjZXBhY2thZ2UgfHwgJHZlcmRpZmYpIHsKKyAgICAkZmllbGRzLT57J1NvdXJjZSd9ID0gJHNvdXJjZXBhY2thZ2U7CisgICAgJGZpZWxkcy0+eydTb3VyY2UnfSAuPSAiICgiIC4gJHN1YnN0dmFycy0+Z2V0KCdzb3VyY2U6VmVyc2lvbicpIC4gIikiIGlmICR2ZXJkaWZmOworfQorCitpZiAoIWRlZmluZWQoJHN1YnN0dmFycy0+Z2V0KCdJbnN0YWxsZWQtU2l6ZScpKSkgeworICAgIGRlZmluZWQobXkgJGMgPSBvcGVuKERVLCAiLXwiKSkgfHwgc3lzZXJyKF9nKCJjYW5ub3QgZm9yayBmb3IgJXMiKSwgImR1Iik7CisgICAgaWYgKCEkYykgeworICAgICAgICBjaGRpcigiJHBhY2thZ2VidWlsZGRpciIpIHx8CisgICAgICAgICAgICBzeXNlcnIoX2coImNoZGlyIGZvciBkdSB0byBcYCVzJyIpLCAkcGFja2FnZWJ1aWxkZGlyKTsKKyAgICAgICAgZXhlYygiZHUiLCAiLWsiLCAiLXMiLCAiLS1hcHBhcmVudC1zaXplIiwgIi4iKSBvcgorICAgICAgICAgICAgc3lzZXJyKF9nKCJ1bmFibGUgdG8gZXhlY3V0ZSAlcyIpLCAiZHUiKTsKKyAgICB9CisgICAgbXkgJGR1byA9ICcnOworICAgIHdoaWxlICg8RFU+KSB7CisJJGR1byAuPSAkXzsKKyAgICB9CisgICAgY2xvc2UoRFUpOworICAgICQ/ICYmIHN1YnByb2NlcnIoX2coImR1IGluIFxgJXMnIiksICRwYWNrYWdlYnVpbGRkaXIpOworICAgICRkdW8gPX4gbS9eKFxkKylccytcLiQvIHx8CisgICAgICAgIGVycm9yKF9nKCJkdSBnYXZlIHVuZXhwZWN0ZWQgb3V0cHV0IFxgJXMnIiksICRkdW8pOworICAgICRzdWJzdHZhcnMtPnNldCgnSW5zdGFsbGVkLVNpemUnLCAkMSk7Cit9CitpZiAoZGVmaW5lZCgkc3Vic3R2YXJzLT5nZXQoJ0V4dHJhLVNpemUnKSkpIHsKKyAgICBteSAkc2l6ZSA9ICRzdWJzdHZhcnMtPmdldCgnRXh0cmEtU2l6ZScpICsgJHN1YnN0dmFycy0+Z2V0KCdJbnN0YWxsZWQtU2l6ZScpOworICAgICRzdWJzdHZhcnMtPnNldCgnSW5zdGFsbGVkLVNpemUnLCAkc2l6ZSk7Cit9CitpZiAoZGVmaW5lZCgkc3Vic3R2YXJzLT5nZXQoJ0luc3RhbGxlZC1TaXplJykpKSB7CisgICAgJGZpZWxkcy0+eydJbnN0YWxsZWQtU2l6ZSd9ID0gJHN1YnN0dmFycy0+Z2V0KCdJbnN0YWxsZWQtU2l6ZScpOworfQorJHN1YnN0dmFycy0+bm9fd2FybignSW5zdGFsbGVkLVNpemUnKTsKKworZm9yIG15ICRmIChrZXlzICVvdmVycmlkZSkgeworICAgICRmaWVsZHMtPnskZn0gPSAkb3ZlcnJpZGV7JGZ9OworfQorZm9yIG15ICRmIChrZXlzICVyZW1vdmUpIHsKKyAgICBkZWxldGUgJGZpZWxkcy0+eyRmfTsKK30KKworJGZpbGVzbGlzdGZpbGU9Ii4vJGZpbGVzbGlzdGZpbGUiIGlmICRmaWxlc2xpc3RmaWxlID1+IG0vXlxzLzsKK29wZW4oWSwgIj4iLCAiJGZpbGVzbGlzdGZpbGUubmV3IikgfHwgc3lzZXJyKF9nKCJvcGVuIG5ldyBmaWxlcyBsaXN0IGZpbGUiKSk7CitiaW5tb2RlKFkpOworaWYgKG9wZW4oWCwgIjwiLCAkZmlsZXNsaXN0ZmlsZSkpIHsKKyAgICBiaW5tb2RlKFgpOworICAgIHdoaWxlICg8WD4pIHsKKyAgICAgICAgY2hvbXA7CisgICAgICAgIG5leHQgaWYgbS9eKFstKzAtOWEtei5dKylfW15fXStfKFtcdy1dKylcLihhLXorKSAvCisgICAgICAgICAgICAgICAgJiYgKCQxIGVxICRvcHBhY2thZ2UpCisJICAgICAgICAmJiAoJDMgZXEgJHBrZ190eXBlKQorCSAgICAgICAgJiYgKGRlYmFyY2hfZXEoJDIsICRmaWVsZHMtPnsnQXJjaGl0ZWN0dXJlJ30gfHwgIiIpCisJCSAgICB8fCBkZWJhcmNoX2VxKCQyLCAnYWxsJykpOworICAgICAgICBwcmludChZICIkX1xuIikgfHwgc3lzZXJyKF9nKCJjb3B5IG9sZCBlbnRyeSB0byBuZXcgZmlsZXMgbGlzdCBmaWxlIikpOworICAgIH0KKyAgICBjbG9zZShYKSB8fCBzeXNlcnIoX2coImNsb3NlIG9sZCBmaWxlcyBsaXN0IGZpbGUiKSk7Cit9IGVsc2lmICgkISAhPSBFTk9FTlQpIHsKKyAgICBzeXNlcnIoX2coInJlYWQgb2xkIGZpbGVzIGxpc3QgZmlsZSIpKTsKK30KK215ICRzdmVyc2lvbiA9ICRmaWVsZHMtPnsnVmVyc2lvbid9OworJHN2ZXJzaW9uID1+IHMvXlxkKzovLzsKKyRmb3JjZWZpbGVuYW1lID0gc3ByaW50ZigiJXNfJXNfJXMuJXMiLCAkb3BwYWNrYWdlLCAkc3ZlcnNpb24sCisgICAgICAgICAgICAgICAgICAgICAgICAgJGZpZWxkcy0+eydBcmNoaXRlY3R1cmUnfSB8fCAiIiwgJHBrZ190eXBlKQorCSAgIHVubGVzcyAoJGZvcmNlZmlsZW5hbWUpOworcHJpbnQoWSAkc3Vic3R2YXJzLT5zdWJzdHZhcnMoc3ByaW50ZigiJXMgJXMgJXNcbiIsICRmb3JjZWZpbGVuYW1lLAorCQkJCSAgICAgICRmaWVsZHMtPnsnU2VjdGlvbid9IHx8ICctJywKKwkJCQkgICAgICAkZmllbGRzLT57J1ByaW9yaXR5J30gfHwgJy0nKSkpCisgICAgfHwgc3lzZXJyKF9nKCJ3cml0ZSBuZXcgZW50cnkgdG8gbmV3IGZpbGVzIGxpc3QgZmlsZSIpKTsKK2Nsb3NlKFkpIHx8IHN5c2VycihfZygiY2xvc2UgbmV3IGZpbGVzIGxpc3QgZmlsZSIpKTsKK3JlbmFtZSgiJGZpbGVzbGlzdGZpbGUubmV3IiwgJGZpbGVzbGlzdGZpbGUpIHx8IHN5c2VycihfZygiaW5zdGFsbCBuZXcgZmlsZXMgbGlzdCBmaWxlIikpOworCitteSAkY2Y7CitteSAkZmhfb3V0cHV0OworaWYgKCEkc3Rkb3V0KSB7CisgICAgJGNmPSAiJHBhY2thZ2VidWlsZGRpci9ERUJJQU4vY29udHJvbCI7CisgICAgJGNmPSAiLi8kY2YiIGlmICRjZiA9fiBtL15ccy87CisgICAgb3BlbigkZmhfb3V0cHV0LCAiPiIsICIkY2YubmV3IikgfHwKKyAgICAgICAgc3lzZXJyKF9nKCJjYW5ub3Qgb3BlbiBuZXcgb3V0cHV0IGNvbnRyb2wgZmlsZSBcYCVzJyIpLCAiJGNmLm5ldyIpOworfSBlbHNlIHsKKyAgICAkZmhfb3V0cHV0ID0gXCpTVERPVVQ7Cit9CisKKyRmaWVsZHMtPmFwcGx5X3N1YnN0dmFycygkc3Vic3R2YXJzKTsKKyRmaWVsZHMtPm91dHB1dCgkZmhfb3V0cHV0KTsKKworaWYgKCEkc3Rkb3V0KSB7CisgICAgY2xvc2UoJGZoX291dHB1dCkgfHwgc3lzZXJyKF9nKCJjYW5ub3QgY2xvc2UgJXMiKSwgIiRjZi5uZXciKTsKKyAgICByZW5hbWUoIiRjZi5uZXciLCAiJGNmIikgfHwKKyAgICAgICAgc3lzZXJyKF9nKCJjYW5ub3QgaW5zdGFsbCBvdXRwdXQgY29udHJvbCBmaWxlIFxgJXMnIiksICRjZik7Cit9CisKKyRzdWJzdHZhcnMtPndhcm5fYWJvdXRfdW51c2VkKCk7CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbApuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwLi5mYTE4OTE0Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbApAQCAtMCwwICsxLDMwNiBAQAorIyEvdXNyL2Jpbi9wZXJsCisjCisjIGRwa2ctZ2Vuc3ltYm9scworIworIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorIworIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorIworIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKwordXNlIHN0cmljdDsKK3VzZSB3YXJuaW5nczsKKwordXNlIERwa2c7Cit1c2UgRHBrZzo6QXJjaCBxdyhnZXRfaG9zdF9hcmNoKTsKK3VzZSBEcGtnOjpTaGxpYnMgcXcoQGxpYnJhcnlwYXRocyk7Cit1c2UgRHBrZzo6U2hsaWJzOjpPYmpkdW1wOwordXNlIERwa2c6OlNobGliczo6U3ltYm9sRmlsZTsKK3VzZSBEcGtnOjpHZXR0ZXh0OwordXNlIERwa2c6OkVycm9ySGFuZGxpbmc7Cit1c2UgRHBrZzo6Q29udHJvbDo6SW5mbzsKK3VzZSBEcGtnOjpDaGFuZ2Vsb2c6OlBhcnNlOwordXNlIERwa2c6OlBhdGggcXcoY2hlY2tfZmlsZXNfYXJlX3RoZV9zYW1lKTsKKwordGV4dGRvbWFpbigiZHBrZy1kZXYiKTsKKworbXkgJHBhY2thZ2VidWlsZGRpciA9ICdkZWJpYW4vdG1wJzsKKworbXkgJHNvdXJjZXZlcnNpb247CitteSAkc3Rkb3V0OworbXkgJG9wcGFja2FnZTsKK215ICRjb21wYXJlID0gMTsgIyBCYWlsIG9uIG1pc3Npbmcgc3ltYm9scyBieSBkZWZhdWx0CitteSAkcXVpZXQgPSAwOworbXkgJGlucHV0OworbXkgJG91dHB1dDsKK215ICR0ZW1wbGF0ZV9tb2RlID0gMDsgIyBub24tdGVtcGxhdGUgbW9kZSBieSBkZWZhdWx0CitteSAkdmVyYm9zZV9vdXRwdXQgPSAwOworbXkgJGRlYnVnID0gMDsKK215ICRob3N0X2FyY2ggPSBnZXRfaG9zdF9hcmNoKCk7CisKK3N1YiB2ZXJzaW9uIHsKKyAgICBwcmludGYgX2coIkRlYmlhbiAlcyB2ZXJzaW9uICVzLlxuIiksICRwcm9nbmFtZSwgJHZlcnNpb247CisKKyAgICBwcmludGYgX2coIgorQ29weXJpZ2h0IChDKSAyMDA3IFJhcGhhZWwgSGVydHpvZy4KKyIpOworCisgICAgcHJpbnRmIF9nKCIKK1RoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgb3IKK2xhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LgorIik7Cit9CisKK3N1YiB1c2FnZSB7CisgICAgcHJpbnRmIF9nKAorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXQorCitPcHRpb25zOgorICAtcDxwYWNrYWdlPiAgICAgICAgICAgICAgZ2VuZXJhdGUgc3ltYm9scyBmaWxlIGZvciBwYWNrYWdlLgorICAtUDxwYWNrYWdlYnVpbGRkaXI+ICAgICAgdGVtcG9yYXJ5IGJ1aWxkIGRpciBpbnN0ZWFkIG9mIGRlYmlhbi90bXAuCisgIC1lPGxpYnJhcnk+ICAgICAgICAgICAgICBleHBsaWNpdGx5IGxpc3QgbGlicmFyaWVzIHRvIHNjYW4uCisgIC12PHZlcnNpb24+ICAgICAgICAgICAgICB2ZXJzaW9uIG9mIHRoZSBwYWNrYWdlcyAoZGVmYXVsdHMgdG8KKyAgICAgICAgICAgICAgICAgICAgICAgICAgIHZlcnNpb24gZXh0cmFjdGVkIGZyb20gZGViaWFuL2NoYW5nZWxvZykuCisgIC1jPGxldmVsPiAgICAgICAgICAgICAgICBjb21wYXJlIGdlbmVyYXRlZCBzeW1ib2xzIGZpbGUgd2l0aCB0aGUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlZmVyZW5jZSB0ZW1wbGF0ZSBpbiB0aGUgZGViaWFuIGRpcmVjdG9yeQorICAgICAgICAgICAgICAgICAgICAgICAgICAgYW5kIGZhaWwgaWYgZGlmZmVyZW5jZSBpcyB0b28gaW1wb3J0YW50CisgICAgICAgICAgICAgICAgICAgICAgICAgICAobGV2ZWwgZ29lcyBmcm9tIDAgZm9yIG5vIGNoZWNrLCB0byA0CisgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgYWxsIGNoZWNrcykuIEJ5IGRlZmF1bHQgY2hlY2tzIGF0CisgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXZlbCAxLgorICAtcSAgICAgICAgICAgICAgICAgICAgICAga2VlcCBxdWlldCBhbmQgbmV2ZXIgZW1pdCBhbnkgd2FybmluZ3Mgb3IKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIGdlbmVyYXRlIGEgZGlmZiBiZXR3ZWVuIGdlbmVyYXRlZCBzeW1ib2xzCisgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxlIGFuZCB0aGUgcmVmZXJlbmNlIHRlbXBsYXRlLgorICAtSTxmaWxlPiAgICAgICAgICAgICAgICAgZm9yY2UgdXNhZ2Ugb2YgPGZpbGU+IGFzIHJlZmVyZW5jZSBzeW1ib2xzCisgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxlIGluc3RlYWQgb2YgdGhlIGRlZmF1bHQgZmlsZS4KKyAgLU88ZmlsZT4gICAgICAgICAgICAgICAgIHdyaXRlIHRvIDxmaWxlPiwgbm90IC4uLi9ERUJJQU4vc3ltYm9scy4KKyAgLU8gICAgICAgICAgICAgICAgICAgICAgIHdyaXRlIHRvIHN0ZG91dCwgbm90IC4uLi9ERUJJQU4vc3ltYm9scy4KKyAgLXQgICAgICAgICAgICAgICAgICAgICAgIHdyaXRlIGluIHRlbXBsYXRlIG1vZGUgKHRhZ3MgYXJlIG5vdAorICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvY2Vzc2VkIGFuZCBpbmNsdWRlZCBpbiBvdXRwdXQpLgorICAtViAgICAgICAgICAgICAgICAgICAgICAgdmVyYm9zZSBvdXRwdXQuIFdyaXRlIGRlcHJlY2F0ZWQgc3ltYm9scyBhbmQKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhdHRlcm4gbWF0Y2hpbmcgc3ltYm9scyBhcyBjb21tZW50cworICAgICAgICAgICAgICAgICAgICAgICAgICAgKGluIHRlbXBsYXRlIG1vZGUgb25seSkuCisgIC1hPGFyY2g+ICAgICAgICAgICAgICAgICBhc3N1bWUgPGFyY2g+IGFzIGhvc3QgYXJjaGl0ZWN0dXJlIHdoZW4gcHJvY2Vzc2luZworICAgICAgICAgICAgICAgICAgICAgICAgICAgc3ltYm9sIGZpbGVzLgorICAtZCAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheSBkZWJ1ZyBpbmZvcm1hdGlvbiBkdXJpbmcgd29yay4KKyAgLWgsIC0taGVscCAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuCisgICAgICAtLXZlcnNpb24gICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLgorIiksICRwcm9nbmFtZTsKK30KKworbXkgQGZpbGVzOword2hpbGUgKEBBUkdWKSB7CisgICAgJF8gPSBzaGlmdChAQVJHVik7CisgICAgaWYgKG0vXi1wKFstKzAtOWEtei5dKykkLykgeworCSRvcHBhY2thZ2UgPSAkMTsKKyAgICB9IGVsc2lmIChtL14tYyhcZCk/JC8pIHsKKwkkY29tcGFyZSA9IGRlZmluZWQoJDEpID8gJDEgOiAxOworICAgIH0gZWxzaWYgKG0vXi1xJC8pIHsKKwkkcXVpZXQgPSAxOworICAgIH0gZWxzaWYgKG0vXi1kJC8pIHsKKwkkZGVidWcgPSAxOworICAgIH0gZWxzaWYgKG0vXi12KC4rKSQvKSB7CisJJHNvdXJjZXZlcnNpb24gPSAkMTsKKyAgICB9IGVsc2lmIChtL14tZSguKykkLykgeworCW15ICRmaWxlID0gJDE7CisJaWYgKC1lICRmaWxlKSB7CisJICAgIHB1c2ggQGZpbGVzLCAkZmlsZTsKKwl9IGVsc2UgeworCSAgICBwdXNoIEBmaWxlcywgZ2xvYigkZmlsZSk7CisJfQorICAgIH0gZWxzaWYgKG0vXi1wKC4qKS8pIHsKKwllcnJvcihfZygiSWxsZWdhbCBwYWNrYWdlIG5hbWUgXGAlcyciKSwgJDEpOworICAgIH0gZWxzaWYgKG0vXi1QKC4rKSQvKSB7CisJJHBhY2thZ2VidWlsZGRpciA9ICQxOworCSRwYWNrYWdlYnVpbGRkaXIgPX4gc3svKyR9e307CisgICAgfSBlbHNpZiAobS9eLU8kLykgeworCSRzdGRvdXQgPSAxOworICAgIH0gZWxzaWYgKG0vXi1JKC4rKSQvKSB7CisJJGlucHV0ID0gJDE7CisgICAgfSBlbHNpZiAobS9eLU8oLispJC8pIHsKKwkkb3V0cHV0ID0gJDE7CisgICAgfSBlbHNpZiAobS9eLXQkLykgeworCSR0ZW1wbGF0ZV9tb2RlID0gMTsKKyAgICB9IGVsc2lmIChtL14tViQvKSB7CisJJHZlcmJvc2Vfb3V0cHV0ID0gMTsKKyAgICB9IGVsc2lmIChtL14tYSguKykkLykgeworCSRob3N0X2FyY2ggPSAkMTsKKyAgICB9IGVsc2lmIChtL14tKGh8LWhlbHApJC8pIHsKKwl1c2FnZSgpOworCWV4aXQoMCk7CisgICAgfSBlbHNpZiAobS9eLS12ZXJzaW9uJC8pIHsKKwl2ZXJzaW9uKCk7CisJZXhpdCgwKTsKKyAgICB9IGVsc2UgeworCXVzYWdlZXJyKF9nKCJ1bmtub3duIG9wdGlvbiBcYCVzJyIpLCAkXyk7CisgICAgfQorfQorCit1bWFzayAwMDIyOyAjIGVuc3VyZSBzYW5lIGRlZmF1bHQgcGVybWlzc2lvbnMgZm9yIGNyZWF0ZWQgZmlsZXMKKworaWYgKGV4aXN0cyAkRU5We0RQS0dfR0VOU1lNQk9MU19DSEVDS19MRVZFTH0pIHsKKyAgICAkY29tcGFyZSA9ICRFTlZ7RFBLR19HRU5TWU1CT0xTX0NIRUNLX0xFVkVMfTsKK30KKworaWYgKG5vdCBkZWZpbmVkKCRzb3VyY2V2ZXJzaW9uKSkgeworICAgIG15ICRjaGFuZ2Vsb2cgPSBjaGFuZ2Vsb2dfcGFyc2UoKTsKKyAgICAkc291cmNldmVyc2lvbiA9ICRjaGFuZ2Vsb2ctPnsiVmVyc2lvbiJ9OworfQoraWYgKG5vdCBkZWZpbmVkKCRvcHBhY2thZ2UpKSB7CisgICAgbXkgJGNvbnRyb2wgPSBEcGtnOjpDb250cm9sOjpJbmZvLT5uZXcoKTsKKyAgICBteSBAcGFja2FnZXMgPSBtYXAgeyAkXy0+eydQYWNrYWdlJ30gfSAkY29udHJvbC0+Z2V0X3BhY2thZ2VzKCk7CisgICAgQHBhY2thZ2VzID09IDEgfHwKKwllcnJvcihfZygibXVzdCBzcGVjaWZ5IHBhY2thZ2Ugc2luY2UgY29udHJvbCBpbmZvIGhhcyBtYW55ICglcykiKSwKKwkgICAgICAiQHBhY2thZ2VzIik7CisgICAgJG9wcGFja2FnZSA9ICRwYWNrYWdlc1swXTsKK30KKworbXkgJHN5bWZpbGUgPSBEcGtnOjpTaGxpYnM6OlN5bWJvbEZpbGUtPm5ldyhhcmNoID0+ICRob3N0X2FyY2gpOworbXkgJHJlZl9zeW1maWxlID0gRHBrZzo6U2hsaWJzOjpTeW1ib2xGaWxlLT5uZXcoYXJjaCA9PiAkaG9zdF9hcmNoKTsKKyMgTG9hZCBzb3VyY2UtcHJvdmlkZWQgc3ltYm9sIGluZm9ybWF0aW9uCitmb3JlYWNoIG15ICRmaWxlICgkaW5wdXQsICRvdXRwdXQsICJkZWJpYW4vJG9wcGFja2FnZS5zeW1ib2xzLiRob3N0X2FyY2giLAorICAgICJkZWJpYW4vc3ltYm9scy4kaG9zdF9hcmNoIiwgImRlYmlhbi8kb3BwYWNrYWdlLnN5bWJvbHMiLAorICAgICJkZWJpYW4vc3ltYm9scyIpCit7CisgICAgaWYgKGRlZmluZWQgJGZpbGUgYW5kIC1lICRmaWxlKSB7CisJcHJpbnQgIlVzaW5nIHJlZmVyZW5jZXMgc3ltYm9scyBmcm9tICRmaWxlXG4iIGlmICRkZWJ1ZzsKKwkkc3ltZmlsZS0+bG9hZCgkZmlsZSk7CisJJHJlZl9zeW1maWxlLT5sb2FkKCRmaWxlKSBpZiAkY29tcGFyZSB8fCAhICRxdWlldDsKKwlsYXN0OworICAgIH0KK30KKworIyBTY2FuIHBhY2thZ2UgYnVpbGQgZGlyIGxvb2tpbmcgZm9yIGxpYnJhcmllcworaWYgKG5vdCBzY2FsYXIgQGZpbGVzKSB7CisgICAgUEFUSDogZm9yZWFjaCBteSAkcGF0aCAoQGxpYnJhcnlwYXRocykgeworCW15ICRsaWJkaXIgPSAiJHBhY2thZ2VidWlsZGRpciRwYXRoIjsKKwkkbGliZGlyID1+IHN7Lyt9ey99ZzsKKwlsc3RhdCAkbGliZGlyOworCW5leHQgaWYgbm90IC1kIF87CisJbmV4dCBpZiAtbCBfOyAjIFNraXAgZGlyZWN0b3JpZXMgd2hpY2ggYXJlIHN5bWxpbmtzCisgICAgICAgICMgU2tpcCBhbnkgZGlyZWN0b3J5IF9iZWxvd18gYSBzeW1saW5rIGFzIHdlbGwKKyAgICAgICAgbXkgJHVwZGlyID0gJGxpYmRpcjsKKyAgICAgICAgd2hpbGUgKCgkdXBkaXIgPX4gc3svW14vXSokfXt9KSBhbmQKKyAgICAgICAgICAgICAgIG5vdCBjaGVja19maWxlc19hcmVfdGhlX3NhbWUoJHBhY2thZ2VidWlsZGRpciwgJHVwZGlyKSkgeworICAgICAgICAgICAgbmV4dCBQQVRIIGlmIC1sICR1cGRpcjsKKyAgICAgICAgfQorCW9wZW5kaXIoRElSLCAiJGxpYmRpciIpIHx8CisJICAgIHN5c2VycihfZygiQ2FuJ3QgcmVhZCBkaXJlY3RvcnkgJXM6ICVzIiksICRsaWJkaXIsICQhKTsKKwlwdXNoIEBmaWxlcywgZ3JlcCB7CisJICAgIC8oXC5zb1wufFwuc28kKS8gJiYgLWYgJF8gJiYKKwkgICAgRHBrZzo6U2hsaWJzOjpPYmpkdW1wOjppc19lbGYoJF8pOworCX0gbWFwIHsgIiRsaWJkaXIvJF8iIH0gcmVhZGRpcihESVIpOworCWNsb3NlKERJUik7CisgICAgfQorfQorCisjIE1lcmdlIHN5bWJvbCBpbmZvcm1hdGlvbgorbXkgJG9kID0gRHBrZzo6U2hsaWJzOjpPYmpkdW1wLT5uZXcoKTsKK2ZvcmVhY2ggbXkgJGZpbGUgKEBmaWxlcykgeworICAgIHByaW50ICJTY2FubmluZyAkZmlsZSBmb3Igc3ltYm9sIGluZm9ybWF0aW9uXG4iIGlmICRkZWJ1ZzsKKyAgICBteSAkb2JqaWQgPSAkb2QtPmFuYWx5emUoJGZpbGUpOworICAgIHVubGVzcyAoZGVmaW5lZCgkb2JqaWQpICYmICRvYmppZCkgeworCXdhcm5pbmcoX2coIk9iamR1bXAgY291bGRuJ3QgcGFyc2UgJXNcbiIpLCAkZmlsZSk7CisJbmV4dDsKKyAgICB9CisgICAgbXkgJG9iamVjdCA9ICRvZC0+Z2V0X29iamVjdCgkb2JqaWQpOworICAgIGlmICgkb2JqZWN0LT57U09OQU1FfSkgeyAjIE9iamVjdHMgd2l0aG91dCBzb25hbWUgYXJlIG9mIG5vIGludGVyZXN0CisJcHJpbnQgIk1lcmdpbmcgc3ltYm9scyBmcm9tICRmaWxlIGFzICRvYmplY3QtPntTT05BTUV9XG4iIGlmICRkZWJ1ZzsKKwlpZiAobm90ICRzeW1maWxlLT5oYXNfb2JqZWN0KCRvYmplY3QtPntTT05BTUV9KSkgeworCSAgICAkc3ltZmlsZS0+Y3JlYXRlX29iamVjdCgkb2JqZWN0LT57U09OQU1FfSwgIiRvcHBhY2thZ2UgI01JTlZFUiMiKTsKKwl9CisJJHN5bWZpbGUtPm1lcmdlX3N5bWJvbHMoJG9iamVjdCwgJHNvdXJjZXZlcnNpb24pOworICAgIH0gZWxzZSB7CisJcHJpbnQgIkZpbGUgJGZpbGUgZG9lc24ndCBoYXZlIGEgc29uYW1lLiBJZ25vcmluZy5cbiIgaWYgJGRlYnVnOworICAgIH0KK30KKyRzeW1maWxlLT5jbGVhcl9leGNlcHQoa2V5cyAleyRvZC0+e29iamVjdHN9fSk7CisKKyMgV3JpdGUgb3V0IHN5bWJvbHMgZmlsZXMKK2lmICgkc3Rkb3V0KSB7CisgICAgJG91dHB1dCA9IF9nKCI8c3RhbmRhcmQgb3V0cHV0PiIpOworICAgICRzeW1maWxlLT5vdXRwdXQoXCpTVERPVVQsIHBhY2thZ2UgPT4gJG9wcGFja2FnZSwKKyAgICAgICAgICAgICAgICAgICAgIHRlbXBsYXRlX21vZGUgPT4gJHRlbXBsYXRlX21vZGUsCisgICAgICAgICAgICAgICAgICAgICB3aXRoX3BhdHRlcm5fbWF0Y2hlcyA9PiAkdmVyYm9zZV9vdXRwdXQsCisgICAgICAgICAgICAgICAgICAgICB3aXRoX2RlcHJlY2F0ZWQgPT4gJHZlcmJvc2Vfb3V0cHV0KTsKK30gZWxzZSB7CisgICAgdW5sZXNzIChkZWZpbmVkKCRvdXRwdXQpKSB7CisJdW5sZXNzKCRzeW1maWxlLT5pc19lbXB0eSgpKSB7CisJICAgICRvdXRwdXQgPSAiJHBhY2thZ2VidWlsZGRpci9ERUJJQU4vc3ltYm9scyI7CisJICAgIG1rZGlyKCIkcGFja2FnZWJ1aWxkZGlyL0RFQklBTiIpIGlmIG5vdCAtZSAiJHBhY2thZ2VidWlsZGRpci9ERUJJQU4iOworCX0KKyAgICB9CisgICAgaWYgKGRlZmluZWQoJG91dHB1dCkpIHsKKwlwcmludCAiU3RvcmluZyBzeW1ib2xzIGluICRvdXRwdXQuXG4iIGlmICRkZWJ1ZzsKKwkkc3ltZmlsZS0+c2F2ZSgkb3V0cHV0LCBwYWNrYWdlID0+ICRvcHBhY2thZ2UsCisJICAgICAgICAgICAgICAgdGVtcGxhdGVfbW9kZSA9PiAkdGVtcGxhdGVfbW9kZSwKKwkgICAgICAgICAgICAgICB3aXRoX3BhdHRlcm5fbWF0Y2hlcyA9PiAkdmVyYm9zZV9vdXRwdXQsCisJICAgICAgICAgICAgICAgd2l0aF9kZXByZWNhdGVkID0+ICR2ZXJib3NlX291dHB1dCk7CisgICAgfSBlbHNlIHsKKwlwcmludCAiTm8gc3ltYm9sIGluZm9ybWF0aW9uIHRvIHN0b3JlLlxuIiBpZiAkZGVidWc7CisgICAgfQorfQorCisjIENoZWNrIGlmIGdlbmVyYXRlZCBmaWxlcyBkaWZmZXJzIGZyb20gcmVmZXJlbmNlIGZpbGUKK215ICRleGl0Y29kZSA9IDA7CitpZiAoJGNvbXBhcmUgfHwgISAkcXVpZXQpIHsKKyAgICAjIENvbXBhcmUKKyAgICBpZiAobXkgQGxpYnMgPSAkc3ltZmlsZS0+Z2V0X25ld19saWJzKCRyZWZfc3ltZmlsZSkpIHsKKwl3YXJuaW5nKF9nKCJuZXcgbGlicmFyaWVzIGFwcGVhcmVkIGluIHRoZSBzeW1ib2xzIGZpbGU6ICVzIiksICJAbGlicyIpCisJICAgIHVubGVzcyAkcXVpZXQ7CisJJGV4aXRjb2RlID0gNCBpZiAoJGNvbXBhcmUgPj0gNCk7CisgICAgfQorICAgIGlmIChteSBAbGlicyA9ICRzeW1maWxlLT5nZXRfbG9zdF9saWJzKCRyZWZfc3ltZmlsZSkpIHsKKwl3YXJuaW5nKF9nKCJzb21lIGxpYnJhcmllcyBkaXNhcHBlYXJlZCBpbiB0aGUgc3ltYm9scyBmaWxlOiAlcyIpLCAiQGxpYnMiKQorCSAgICB1bmxlc3MgJHF1aWV0OworCSRleGl0Y29kZSA9IDMgaWYgKCRjb21wYXJlID49IDMpOworICAgIH0KKyAgICBpZiAoJHN5bWZpbGUtPmdldF9uZXdfc3ltYm9scygkcmVmX3N5bWZpbGUpKSB7CisJd2FybmluZyhfZygic29tZSBuZXcgc3ltYm9scyBhcHBlYXJlZCBpbiB0aGUgc3ltYm9scyBmaWxlOiAlcyIpLAorCQlfZygic2VlIGRpZmYgb3V0cHV0IGJlbG93IikpIHVubGVzcyAkcXVpZXQ7CisJJGV4aXRjb2RlID0gMiBpZiAoJGNvbXBhcmUgPj0gMik7CisgICAgfQorICAgIGlmICgkc3ltZmlsZS0+Z2V0X2xvc3Rfc3ltYm9scygkcmVmX3N5bWZpbGUpKSB7CisJd2FybmluZyhfZygic29tZSBzeW1ib2xzIG9yIHBhdHRlcm5zIGRpc2FwcGVhcmVkIGluIHRoZSBzeW1ib2xzIGZpbGU6ICVzIiksCisJICAgICAgICBfZygic2VlIGRpZmYgb3V0cHV0IGJlbG93IikpIHVubGVzcyAkcXVpZXQ7CisJJGV4aXRjb2RlID0gMSBpZiAoJGNvbXBhcmUgPj0gMSk7CisgICAgfQorfQorCit1bmxlc3MgKCRxdWlldCkgeworICAgIHVzZSBGaWxlOjpUZW1wOworICAgIHVzZSBEaWdlc3Q6Ok1ENTsKKyAgICAjIENvbXBhcmUgdGVtcGxhdGUgc3ltYm9scyBmaWxlcyBiZWZvcmUgYW5kIGFmdGVyCisgICAgbXkgJGJlZm9yZSA9IEZpbGU6OlRlbXAtPm5ldyhURU1QTEFURT0+J2Rwa2ctZ2Vuc3ltYm9sc1hYWFhYWCcpOworICAgIG15ICRhZnRlciA9IEZpbGU6OlRlbXAtPm5ldyhURU1QTEFURT0+J2Rwa2ctZ2Vuc3ltYm9sc1hYWFhYWCcpOworICAgICRyZWZfc3ltZmlsZS0+b3V0cHV0KCRiZWZvcmUsIHBhY2thZ2UgPT4gJG9wcGFja2FnZSwgdGVtcGxhdGVfbW9kZSA9PiAxKTsKKyAgICAkc3ltZmlsZS0+b3V0cHV0KCRhZnRlciwgcGFja2FnZSA9PiAkb3BwYWNrYWdlLCB0ZW1wbGF0ZV9tb2RlID0+IDEpOworICAgIHNlZWsoJGJlZm9yZSwgMCwgMCk7IHNlZWsoJGFmdGVyLCAwLCAwKTsKKyAgICBteSAoJG1kNV9iZWZvcmUsICRtZDVfYWZ0ZXIpID0gKERpZ2VzdDo6TUQ1LT5uZXcoKSwgRGlnZXN0OjpNRDUtPm5ldygpKTsKKyAgICAkbWQ1X2JlZm9yZS0+YWRkZmlsZSgkYmVmb3JlKTsKKyAgICAkbWQ1X2FmdGVyLT5hZGRmaWxlKCRhZnRlcik7CisgICAgIyBPdXRwdXQgZGlmZnMgYmV0d2VlbiBzeW1ib2xzIGZpbGVzIGlmIGFueQorICAgIGlmICgkbWQ1X2JlZm9yZS0+aGV4ZGlnZXN0KCkgbmUgJG1kNV9hZnRlci0+aGV4ZGlnZXN0KCkpIHsKKwlpZiAobm90IGRlZmluZWQoJG91dHB1dCkpIHsKKwkgICAgd2FybmluZyhfZygidGhlIGdlbmVyYXRlZCBzeW1ib2xzIGZpbGUgaXMgZW1wdHkiKSk7CisJfSBlbHNpZiAoZGVmaW5lZCgkcmVmX3N5bWZpbGUtPntmaWxlfSkpIHsKKwkgICAgd2FybmluZyhfZygiJXMgZG9lc24ndCBtYXRjaCBjb21wbGV0ZWx5ICVzIiksCisJCSAgICAkb3V0cHV0LCAkcmVmX3N5bWZpbGUtPntmaWxlfSk7CisJfSBlbHNlIHsKKwkgICAgd2FybmluZyhfZygibm8gZGViaWFuL3N5bWJvbHMgZmlsZSB1c2VkIGFzIGJhc2lzIGZvciBnZW5lcmF0aW5nICVzIiksCisJCSAgICAkb3V0cHV0KTsKKwl9CisJbXkgKCRhLCAkYikgPSAoJGJlZm9yZS0+ZmlsZW5hbWUsICRhZnRlci0+ZmlsZW5hbWUpOworCW15ICRkaWZmX2xhYmVsID0gc3ByaW50ZigiJXMgKCVzXyVzXyVzKSIsCisJKCRyZWZfc3ltZmlsZS0+e2ZpbGV9KSA/ICRyZWZfc3ltZmlsZS0+e2ZpbGV9IDogIm5ld19zeW1ib2xfZmlsZSIsCisJJG9wcGFja2FnZSwgJHNvdXJjZXZlcnNpb24sICRob3N0X2FyY2gpOworCXN5c3RlbSgiZGlmZiIsICItdSIsICItTCIsICRkaWZmX2xhYmVsLCAkYSwgJGIpIGlmIC14ICIvdXNyL2Jpbi9kaWZmIjsKKyAgICB9Cit9CitleGl0KCRleGl0Y29kZSk7CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuc2ggYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvZHBrZy1tYWludHNjcmlwdC1oZWxwZXIuc2gKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMC4uOTIwODhhZQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9kcGtnLW1haW50c2NyaXB0LWhlbHBlci5zaApAQCAtMCwwICsxLDMxOCBAQAorIyEvYmluL3NoCisjCisjIENvcHlyaWdodCDCqSAyMDEwIFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KKyMgQ29weXJpZ2h0IMKpIDIwMDggSm9leSBIZXNzIDxqb2V5aEBkZWJpYW4ub3JnPgorIyBDb3B5cmlnaHQgwqkgMjAwNyBHdWlsbGVtIEpvdmVyIChtb2RpZmljYXRpb25zIG9uIHdpa2kuZGViaWFuLm9yZykKKyMgQ29weXJpZ2h0IMKpIDIwMDUgU2NvdHQgSmFtZXMgUmVtbmFudCAob3JpZ2luYWwgaW1wbGVtZW50YXRpb24gb24gd3d3LmRwa2cub3JnKQorIworIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorIworIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorIworIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKworIyBUaGUgY29uZmZpbGUgcmVsYXRlZCBmdW5jdGlvbnMgYXJlIGluc3BpcmVkIGJ5CisjIGh0dHA6Ly93aWtpLmRlYmlhbi5vcmcvRHBrZ0NvbmZmaWxlSGFuZGxpbmcKKworIyBUaGlzIHNjcmlwdCBpcyBkb2N1bWVudGVkIGluIGRwa2ctbWFpbnRzY3JpcHQtaGVscGVyKDEpCisKKyMjCisjIyBGdW5jdGlvbnMgdG8gcmVtb3ZlIGFuIG9ic29sZXRlIGNvbmZmaWxlIGR1cmluZyB1cGdyYWRlCisjIworcm1fY29uZmZpbGUoKSB7CisJbG9jYWwgQ09ORkZJTEU9IiQxIgorCWxvY2FsIExBU1RWRVJTSU9OPSIkMiIKKwlsb2NhbCBQQUNLQUdFPSIkMyIKKwlpZiBbICIkTEFTVFZFUlNJT04iID0gIi0tIiBdOyB0aGVuCisJCUxBU1RWRVJTSU9OPSIiCisJCVBBQ0tBR0U9IiREUEtHX01BSU5UU0NSSVBUX1BBQ0tBR0UiCisJZmkKKwlpZiBbICIkUEFDS0FHRSIgPSAiLS0iIC1vIC16ICIkUEFDS0FHRSIgXTsgdGhlbgorCQlQQUNLQUdFPSIkRFBLR19NQUlOVFNDUklQVF9QQUNLQUdFIgorCWZpCisJIyBTa2lwIHJlbWFpbmluZyBwYXJhbWV0ZXJzIHVwIHRvIC0tCisJd2hpbGUgWyAiJDEiICE9ICItLSIgLWEgJCMgLWd0IDAgXTsgZG8gc2hpZnQ7IGRvbmUKKwlbICQjIC1ndCAwIF0gfHwgYmFkdXNhZ2UKKwlzaGlmdAorCisJWyAtbiAiJFBBQ0tBR0UiIF0gfHwgZXJyb3IgImNvdWxkbid0IGlkZW50aWZ5IHRoZSBwYWNrYWdlIgorCVsgLW4gIiQxIiBdIHx8IGVycm9yICJtYWludGFpbmVyIHNjcmlwdCBwYXJhbWV0ZXJzIGFyZSBtaXNzaW5nIgorCVsgLW4gIiREUEtHX01BSU5UU0NSSVBUX05BTUUiIF0gfHwgXAorCQllcnJvciAiZW52aXJvbm1lbnQgdmFyaWFibGUgRFBLR19NQUlOVFNDUklQVF9OQU1FIGlzIHJlcXVpcmVkIgorCisJZGVidWcgIkV4ZWN1dGluZyAkMCBybV9jb25mZmlsZSBpbiAkRFBLR19NQUlOVFNDUklQVF9OQU1FICJcCisJICAgICAgIm9mICREUEtHX01BSU5UU0NSSVBUX1BBQ0tBR0UiCisJZGVidWcgIkNPTkZGSUxFPSRDT05GRklMRSBQQUNLQUdFPSRQQUNLQUdFICJcCisJICAgICAgIkxBU1RWRVJTSU9OPSRMQVNUVkVSU0lPTiBBQ1RJT049JDEgUEFSQU09JDIiCisJY2FzZSAiJERQS0dfTUFJTlRTQ1JJUFRfTkFNRSIgaW4KKwlwcmVpbnN0KQorCQlpZiBbICIkMSIgPSAiaW5zdGFsbCIgLW8gIiQxIiA9ICJ1cGdyYWRlIiBdICYmIFsgLW4gIiQyIiBdICYmCisJCSAgIGRwa2cgLS1jb21wYXJlLXZlcnNpb25zICIkMiIgbGUtbmwgIiRMQVNUVkVSU0lPTiI7IHRoZW4KKwkJCXByZXBhcmVfcm1fY29uZmZpbGUgIiRDT05GRklMRSIgIiRQQUNLQUdFIgorCQlmaQorCQk7OworCXBvc3RpbnN0KQorCQlpZiBbICIkMSIgPSAiY29uZmlndXJlIiBdICYmIFsgLW4gIiQyIiBdICYmCisJCSAgIGRwa2cgLS1jb21wYXJlLXZlcnNpb25zICIkMiIgbGUtbmwgIiRMQVNUVkVSU0lPTiI7IHRoZW4KKwkJCWZpbmlzaF9ybV9jb25mZmlsZSAkQ09ORkZJTEUKKwkJZmkKKwkJOzsKKwlwb3N0cm0pCisJCWlmIFsgIiQxIiA9ICJwdXJnZSIgXTsgdGhlbgorCQkJcm0gLWYgIiRDT05GRklMRS5kcGtnLWJhayIgIiRDT05GRklMRS5kcGtnLXJlbW92ZSIgXAorCQkJICAgICAgIiRDT05GRklMRS5kcGtnLWJhY2t1cCIKKwkJZmkKKwkJaWYgWyAiJDEiID0gImFib3J0LWluc3RhbGwiIC1vICIkMSIgPSAiYWJvcnQtdXBncmFkZSIgXSAmJgorCQkgICBbIC1uICIkMiIgXSAmJgorCQkgICBkcGtnIC0tY29tcGFyZS12ZXJzaW9ucyAiJDIiIGxlLW5sICIkTEFTVFZFUlNJT04iOyB0aGVuCisJCQlhYm9ydF9ybV9jb25mZmlsZSAiJENPTkZGSUxFIgorCQlmaQorCQk7OworCSopCisJCWRlYnVnICIkMCBybV9jb25mZmlsZSBub3QgcmVxdWlyZWQgaW4gJERQS0dfTUFJTlRTQ1JJUFRfTkFNRSIKKwkJOzsKKwllc2FjCit9CisKK3ByZXBhcmVfcm1fY29uZmZpbGUoKSB7CisJbG9jYWwgQ09ORkZJTEU9IiQxIgorCWxvY2FsIFBBQ0tBR0U9IiQyIgorCisJWyAtZSAiJENPTkZGSUxFIiBdIHx8IHJldHVybiAwCisKKwlsb2NhbCBtZDVzdW09IiQobWQ1c3VtICRDT05GRklMRSB8IHNlZCAtZSAncy8gLiovLycpIgorCWxvY2FsIG9sZF9tZDVzdW09IiQoZHBrZy1xdWVyeSAtVyAtZj0nJHtDb25mZmlsZXN9JyAkUEFDS0FHRSB8IFwKKwkJc2VkIC1uIC1lICJcJyAkQ09ORkZJTEUgJyB7IHMvIG9ic29sZXRlJC8vOyBzLy4qIC8vOyBwIH0iKSIKKwlpZiBbICIkbWQ1c3VtIiAhPSAiJG9sZF9tZDVzdW0iIF07IHRoZW4KKwkJZWNobyAiT2Jzb2xldGUgY29uZmZpbGUgJENPTkZGSUxFIGhhcyBiZWVuIG1vZGlmaWVkIGJ5IHlvdS4iCisJCWVjaG8gIlNhdmluZyBhcyAkQ09ORkZJTEUuZHBrZy1iYWsgLi4uIgorCQltdiAtZiAiJENPTkZGSUxFIiAiJENPTkZGSUxFLmRwa2ctYmFja3VwIgorCWVsc2UKKwkJZWNobyAiTW92aW5nIG9ic29sZXRlIGNvbmZmaWxlICRDT05GRklMRSBvdXQgb2YgdGhlIHdheS4uLiIKKwkJbXYgLWYgIiRDT05GRklMRSIgIiRDT05GRklMRS5kcGtnLXJlbW92ZSIKKwlmaQorfQorCitmaW5pc2hfcm1fY29uZmZpbGUoKSB7CisJbG9jYWwgQ09ORkZJTEU9IiQxIgorCisJaWYgWyAtZSAiJENPTkZGSUxFLmRwa2ctYmFja3VwIiBdOyB0aGVuCisJCW12IC1mICIkQ09ORkZJTEUuZHBrZy1iYWNrdXAiICIkQ09ORkZJTEUuZHBrZy1iYWsiCisJZmkKKwlpZiBbIC1lICIkQ09ORkZJTEUuZHBrZy1yZW1vdmUiIF07IHRoZW4KKwkJZWNobyAiUmVtb3Zpbmcgb2Jzb2xldGUgY29uZmZpbGUgJENPTkZGSUxFIC4uLiIKKwkJcm0gLWYgIiRDT05GRklMRS5kcGtnLXJlbW92ZSIKKwlmaQorfQorCithYm9ydF9ybV9jb25mZmlsZSgpIHsKKwlsb2NhbCBDT05GRklMRT0iJDEiCisKKwlpZiBbIC1lICIkQ09ORkZJTEUuZHBrZy1yZW1vdmUiIF07IHRoZW4KKwkJZWNobyAiUmVpbnN0YWxsaW5nICRDT05GRklMRSB0aGF0IHdhcyBtb3ZlZCBhd2F5IgorCQltdiAiJENPTkZGSUxFLmRwa2ctcmVtb3ZlIiAiJENPTkZGSUxFIgorCWZpCisJaWYgWyAtZSAiJENPTkZGSUxFLmRwa2ctYmFja3VwIiBdOyB0aGVuCisJCWVjaG8gIlJlaW5zdGFsbGluZyAkQ09ORkZJTEUgdGhhdCB3YXMgYmFja3VwcGVkIgorCQltdiAiJENPTkZGSUxFLmRwa2ctYmFja3VwIiAiJENPTkZGSUxFIgorCWZpCit9CisKKyMjCisjIyBGdW5jdGlvbnMgdG8gcmVuYW1lIGEgY29uZmZpbGUgZHVyaW5nIHVwZ3JhZGUKKyMjCittdl9jb25mZmlsZSgpIHsKKwlsb2NhbCBPTERDT05GRklMRT0iJDEiCisJbG9jYWwgTkVXQ09ORkZJTEU9IiQyIgorCWxvY2FsIExBU1RWRVJTSU9OPSIkMyIKKwlsb2NhbCBQQUNLQUdFPSIkNCIKKwlpZiBbICIkTEFTVFZFUlNJT04iID0gIi0tIiBdOyB0aGVuCisJCUxBU1RWRVJTSU9OPSIiCisJCVBBQ0tBR0U9IiREUEtHX01BSU5UU0NSSVBUX1BBQ0tBR0UiCisJZmkKKwlpZiBbICIkUEFDS0FHRSIgPSAiLS0iIC1vIC16ICIkUEFDS0FHRSIgXTsgdGhlbgorCQlQQUNLQUdFPSIkRFBLR19NQUlOVFNDUklQVF9QQUNLQUdFIgorCWZpCisJIyBTa2lwIHJlbWFpbmluZyBwYXJhbWV0ZXJzIHVwIHRvIC0tCisJd2hpbGUgWyAiJDEiICE9ICItLSIgLWEgJCMgLWd0IDAgXTsgZG8gc2hpZnQ7IGRvbmUKKwlbICQjIC1ndCAwIF0gfHwgYmFkdXNhZ2UKKwlzaGlmdAorCisJWyAtbiAiJFBBQ0tBR0UiIF0gfHwgZXJyb3IgImNvdWxkbid0IGlkZW50aWZ5IHRoZSBwYWNrYWdlIgorCVsgLW4gIiQxIiBdIHx8IGVycm9yICJtYWludGFpbmVyIHNjcmlwdCBwYXJhbWV0ZXJzIGFyZSBtaXNzaW5nIgorCVsgLW4gIiREUEtHX01BSU5UU0NSSVBUX05BTUUiIF0gfHwgXAorCQllcnJvciAiZW52aXJvbm1lbnQgdmFyaWFibGUgRFBLR19NQUlOVFNDUklQVF9OQU1FIGlzIHJlcXVpcmVkIgorCisJZGVidWcgIkV4ZWN1dGluZyAkMCBtdl9jb25mZmlsZSBpbiAkRFBLR19NQUlOVFNDUklQVF9OQU1FICJcCisJICAgICAgIm9mICREUEtHX01BSU5UU0NSSVBUX1BBQ0tBR0UiCisJZGVidWcgIkNPTkZGSUxFPSRPTERDT05GRklMRSAtPiAkTkVXQ09ORkZJTEUgUEFDS0FHRT0kUEFDS0FHRSAiXAorCSAgICAgICJMQVNUVkVSU0lPTj0kTEFTVFZFUlNJT04gQUNUSU9OPSQxIFBBUkFNPSQyIgorCWNhc2UgIiREUEtHX01BSU5UU0NSSVBUX05BTUUiIGluCisJcHJlaW5zdCkKKwkJaWYgWyAiJDEiID0gImluc3RhbGwiIC1vICIkMSIgPSAidXBncmFkZSIgXSAmJiBbIC1uICIkMiIgXSAmJgorCQkgICBkcGtnIC0tY29tcGFyZS12ZXJzaW9ucyAiJDIiIGxlLW5sICIkTEFTVFZFUlNJT04iOyB0aGVuCisJCQlwcmVwYXJlX212X2NvbmZmaWxlICIkT0xEQ09ORkZJTEUiICIkUEFDS0FHRSIKKwkJZmkKKwkJOzsKKwlwb3N0aW5zdCkKKwkJaWYgWyAiJDEiID0gImNvbmZpZ3VyZSIgXSAmJiBbIC1uICIkMiIgXSAmJgorCQkgICBkcGtnIC0tY29tcGFyZS12ZXJzaW9ucyAiJDIiIGxlLW5sICIkTEFTVFZFUlNJT04iOyB0aGVuCisJCQlmaW5pc2hfbXZfY29uZmZpbGUgIiRPTERDT05GRklMRSIgIiRORVdDT05GRklMRSIKKwkJZmkKKwkJOzsKKwlwb3N0cm0pCisJCWlmIFsgIiQxIiA9ICJhYm9ydC1pbnN0YWxsIiAtbyAiJDEiID0gImFib3J0LXVwZ3JhZGUiIF0gJiYKKwkJICAgWyAtbiAiJDIiIF0gJiYKKwkJICAgZHBrZyAtLWNvbXBhcmUtdmVyc2lvbnMgIiQyIiBsZS1ubCAiJExBU1RWRVJTSU9OIjsgdGhlbgorCQkJYWJvcnRfbXZfY29uZmZpbGUgIiRPTERDT05GRklMRSIKKwkJZmkKKwkJOzsKKwkqKQorCQlkZWJ1ZyAiJDAgbXZfY29uZmZpbGUgbm90IHJlcXVpcmVkIGluICREUEtHX01BSU5UU0NSSVBUX05BTUUiCisJCTs7CisJZXNhYworfQorCitwcmVwYXJlX212X2NvbmZmaWxlKCkgeworCWxvY2FsIENPTkZGSUxFPSIkMSIKKwlsb2NhbCBQQUNLQUdFPSIkMiIKKworCVsgLWUgIiRDT05GRklMRSIgXSB8fCByZXR1cm4gMAorCisJbG9jYWwgbWQ1c3VtPSIkKG1kNXN1bSAkQ09ORkZJTEUgfCBzZWQgLWUgJ3MvIC4qLy8nKSIKKwlsb2NhbCBvbGRfbWQ1c3VtPSIkKGRwa2ctcXVlcnkgLVcgLWY9JyR7Q29uZmZpbGVzfScgJFBBQ0tBR0UgfCBcCisJCXNlZCAtbiAtZSAiXCcgJENPTkZGSUxFICcgeyBzLyBvYnNvbGV0ZSQvLzsgcy8uKiAvLzsgcCB9IikiCisJaWYgWyAiJG1kNXN1bSIgPSAiJG9sZF9tZDVzdW0iIF07IHRoZW4KKwkJbXYgLWYgIiRDT05GRklMRSIgIiRDT05GRklMRS5kcGtnLXJlbW92ZSIKKwlmaQorfQorCitmaW5pc2hfbXZfY29uZmZpbGUoKSB7CisJbG9jYWwgT0xEQ09ORkZJTEU9IiQxIgorCWxvY2FsIE5FV0NPTkZGSUxFPSIkMiIKKworCXJtIC1mICRPTERDT05GRklMRS5kcGtnLXJlbW92ZQorCisJWyAtZSAiJE9MRENPTkZGSUxFIiBdIHx8IHJldHVybiAwCisKKwllY2hvICJQcmVzZXJ2aW5nIHVzZXIgY2hhbmdlcyB0byAkTkVXQ09ORkZJTEUgKHJlbmFtZWQgZnJvbSAkT0xEQ09ORkZJTEUpLi4uIgorCW12IC1mICIkTkVXQ09ORkZJTEUiICIkTkVXQ09ORkZJTEUuZHBrZy1uZXciCisJbXYgLWYgIiRPTERDT05GRklMRSIgIiRORVdDT05GRklMRSIKK30KKworYWJvcnRfbXZfY29uZmZpbGUoKSB7CisJbG9jYWwgQ09ORkZJTEU9IiQxIgorCisJaWYgWyAtZSAiJENPTkZGSUxFLmRwa2ctcmVtb3ZlIiBdOyB0aGVuCisJCWVjaG8gIlJlaW5zdGFsbGluZyAkQ09ORkZJTEUgdGhhdCB3YXMgbW92ZWQgYXdheSIKKwkJbXYgIiRDT05GRklMRS5kcGtnLXJlbW92ZSIgIiRDT05GRklMRSIKKwlmaQorfQorCisjIENvbW1vbiBmdW5jdGlvbnMKK2RlYnVnKCkgeworCWlmIFsgLW4gIiREUEtHX0RFQlVHIiBdOyB0aGVuCisJCWVjaG8gIkRFQlVHOiAkUFJPR05BTUU6ICQxIiA+JjIKKwlmaQorfQorCitlcnJvcigpIHsKKwllY2hvICIkUFJPR05BTUU6IGVycm9yOiAkMSIgPiYyCisJZXhpdCAxCit9CisKK3dhcm5pbmcoKSB7CisJZWNobyAiJFBST0dOQU1FOiB3YXJuaW5nOiAkMSIgPiYyCit9CisKK3VzYWdlKCkgeworCWNhdCA8PEVORAorVXNhZ2U6ICRQUk9HTkFNRSA8Y29tbWFuZD4gPHBhcmFtZXRlcj4uLi4gLS0gPG1haW50YWluZXItc2NyaXB0LXBhcmFtZXRlcj4uLi4KKworQ29tbWFuZHM6CisgIHN1cHBvcnRzIDxjb21tYW5kPgorCVJldHVybnMgMCAoc3VjY2VzcykgaWYgdGhlIGdpdmVuIGNvbW1hbmQgaXMgc3VwcG9ydGVkLCAxIG90aGVyd2lzZS4KKyAgcm1fY29uZmZpbGUgPGNvbmZmaWxlPiBbPGxhc3QtdmVyc2lvbj4gWzxwYWNrYWdlPl1dCisJUmVtb3ZlIG9ic29sZXRlIGNvbmZmaWxlLiBNdXN0IGJlIGNhbGxlZCBpbiBwcmVpbnN0LCBwb3N0aW5zdCBhbmQKKwlwb3N0cm0uCisgIG12X2NvbmZmaWxlIDxvbGQtY29uZj4gPG5ldy1jb25mPiBbPGxhc3QtdmVyc2lvbj4gWzxwYWNrYWdlPl1dCisJUmVuYW1lIGEgY29uZmZpbGUuIE11c3QgYmUgY2FsbGVkIGluIHByZWluc3QsIHBvc3RpbnN0IGFuZCBwb3N0cm0uCisgIGhlbHAKKwlEaXNwbGF5IHRoaXMgdXNhZ2UgaW5mb3JtYXRpb24uCitFTkQKK30KKworYmFkdXNhZ2UoKSB7CisJdXNhZ2UKKwlleGl0IDEKK30KKworIyBNYWluIGNvZGUKK3NldCAtZQorCitQUk9HTkFNRT0kKGJhc2VuYW1lICQwKQordmVyc2lvbj0idW5rbm93biIKK2NvbW1hbmQ9IiQxIgorWyAkIyAtZ3QgMCBdIHx8IGJhZHVzYWdlCitzaGlmdAorCitjYXNlICIkY29tbWFuZCIgaW4KK3N1cHBvcnRzKQorCWNhc2UgIiQxIiBpbgorCXJtX2NvbmZmaWxlfG12X2NvbmZmaWxlKQorCQljb2RlPTAKKwkJOzsKKwkqKQorCQljb2RlPTEKKwkJOzsKKwllc2FjCisJaWYgWyAteiAiJERQS0dfTUFJTlRTQ1JJUFRfTkFNRSIgXTsgdGhlbgorCQl3YXJuaW5nICJlbnZpcm9ubWVudCB2YXJpYWJsZSBEUEtHX01BSU5UU0NSSVBUX05BTUUgbWlzc2luZyIKKwkJY29kZT0xCisJZmkKKwlpZiBbIC16ICIkRFBLR19NQUlOVFNDUklQVF9QQUNLQUdFIiBdOyB0aGVuCisJCXdhcm5pbmcgImVudmlyb25tZW50IHZhcmlhYmxlIERQS0dfTUFJTlRTQ1JJUFRfUEFDS0FHRSBtaXNzaW5nIgorCQljb2RlPTEKKwlmaQorCWV4aXQgJGNvZGUKKwk7Oworcm1fY29uZmZpbGUpCisJcm1fY29uZmZpbGUgIiRAIgorCTs7Cittdl9jb25mZmlsZSkKKwltdl9jb25mZmlsZSAiJEAiCisJOzsKKy0taGVscHxoZWxwfC0/fC1oKQorCXVzYWdlCisJOzsKKy0tdmVyc2lvbikKKwljYXQgPDwtRU5ECisJRGViaWFuICRQUk9HTkFNRSB2ZXJzaW9uICR2ZXJzaW9uLgorCisJQ29weXJpZ2h0IChDKSAyMDEwIFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KKwlDb3B5cmlnaHQgKEMpIDIwMDggSm9leSBIZXNzIDxqb2V5aEBkZWJpYW4ub3JnPgorCUNvcHlyaWdodCAoQykgMjAwNyBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CisJQ29weXJpZ2h0IChDKSAyMDA1IFNjb3R0IEphbWVzIFJlbW5hbnQKKworCVRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgb3IKKwlsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS4KKwlFTkQKKwk7OworKikKKwljYXQgPiYyIDw8LUVORAorCSRQUk9HTkFNRTogZXJyb3I6IGNvbW1hbmQgJGNvbW1hbmQgaXMgdW5rbm93bgorCUhpbnQ6IHVwZ3JhZGluZyBkcGtnIHRvIGEgbmV3ZXIgdmVyc2lvbiBtaWdodCBoZWxwLgorCisJRU5ECisJdXNhZ2UKKwlleGl0IDEKK2VzYWMKKworZXhpdCAwCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvZHBrZy1tZXJnZWNoYW5nZWxvZ3MucGwgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvZHBrZy1tZXJnZWNoYW5nZWxvZ3MucGwKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMC4uYTNkZGVlYwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9kcGtnLW1lcmdlY2hhbmdlbG9ncy5wbApAQCAtMCwwICsxLDI5MCBAQAorIyEvdXNyL2Jpbi9wZXJsCisKKyMgQ29weXJpZ2h0IMKpIDIwMDktMjAxMCBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisjCisjIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisjIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisjIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisjIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisjCisjIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisjIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisjCisjIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisjIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorCit1c2Ugd2FybmluZ3M7Cit1c2Ugc3RyaWN0OworCit1c2UgRHBrZzsKK3VzZSBEcGtnOjpDaGFuZ2Vsb2c6OkRlYmlhbjsKK3VzZSBEcGtnOjpFcnJvckhhbmRsaW5nOwordXNlIERwa2c6OkdldHRleHQ7Cit1c2UgRHBrZzo6VmVyc2lvbjsKKwordXNlIEdldG9wdDo6TG9uZzsKK3VzZSBTY2FsYXI6OlV0aWwgcXcoYmxlc3NlZCk7CisKK3RleHRkb21haW4oImRwa2ctZGV2Iik7CisKK3N1YiBtZXJnZV9lbnRyaWVzKCQkJCk7CitzdWIgbWVyZ2VfYmxvY2soJCQkOyYpOworc3ViIG1lcmdlX2VudHJ5X2l0ZW0oJCQkJCk7CitzdWIgbWVyZ2VfY29uZmxpY3QoJCQpOworc3ViIGdldF9jb25mbGljdF9ibG9jaygkJCk7CitzdWIgam9pbl9saW5lcygkKTsKKworQkVHSU4geworICAgIGV2YWwgJ3VzZSBBbGdvcml0aG06Ok1lcmdlIHF3KG1lcmdlKTsnOworICAgIGlmICgkQCkgeworCWV2YWwgcXsKKwkgICAgc3ViIG1lcmdlIHsKKwkJbXkgKCRvLCAkYSwgJGIpID0gQF87CisJCXJldHVybiBAJGEgaWYgam9pbigiXG4iLCBAJGEpIGVxIGpvaW4oIlxuIiwgQCRiKTsKKwkJcmV0dXJuIGdldF9jb25mbGljdF9ibG9jaygkYSwgJGIpOworCSAgICB9CisJfTsKKyAgICB9Cit9CisKK3N1YiB2ZXJzaW9uIHsKKyAgICBwcmludGYgX2coIkRlYmlhbiAlcyB2ZXJzaW9uICVzLlxuIiksICRwcm9nbmFtZSwgJHZlcnNpb247CisKKyAgICBwcmludGYgIlxuIiAuIF9nKCJDb3B5cmlnaHQgKEMpIDIwMDktMjAxMCBSYXBoYWVsIEhlcnR6b2cuIik7CisKKyAgICBwcmludGYgIlxuIiAuIF9nKAorIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgb3IKK2xhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LgorIik7Cit9CisKK3N1YiB1c2FnZSB7CisgICAgcHJpbnRmKF9nKAorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSA8b2xkPiA8bmV3LWE+IDxuZXctYj4gWzxvdXQ+XQorCitPcHRpb25zOgorICAtLW1lcmdlLXByZXJlbGVhc2VzLCAtbSAgbWVyZ2UgcHJlLXJlbGVhc2VzIHRvZ2V0aGVyLCBpZ25vcmVzIGV2ZXJ5dGhpbmcKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIGFmdGVyIHRoZSBsYXN0ICd+JyBpbiB0aGUgdmVyc2lvbi4KKyAgLS1oZWxwLCAtaCwgLT8gICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuCisgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLgorIiksICRwcm9nbmFtZSk7Cit9CisKK215ICRtZXJnZV9wcmVyZWxlYXNlczsKK3VubGVzcyAoR2V0T3B0aW9ucygnaGVscHw/JyA9PiBzdWIgeyB1c2FnZSgpOyBleGl0KDApIH0sCisJCSAgICdtZXJnZS1wcmVyZWxlYXNlc3xtJyA9PiBcJG1lcmdlX3ByZXJlbGVhc2VzLAorCQkgICAndmVyc2lvbicgPT4gc3ViIHsgdmVyc2lvbigpOyBleGl0KDApIH0pKSB7CisgICAgdXNhZ2UoKTsKKyAgICBleGl0KDIpOworfQorbXkgKCRvbGQsICRuZXdfYSwgJG5ld19iLCAkb3V0X2ZpbGUpID0gQEFSR1Y7Cit1bmxlc3MgKGRlZmluZWQgJG9sZCBhbmQgZGVmaW5lZCAkbmV3X2EgYW5kIGRlZmluZWQgJG5ld19iIGFuZAorICAgICAgICAtZSAkb2xkIGFuZCAtZSAkbmV3X2EgYW5kIC1lICRuZXdfYikKK3sKKyAgICB1c2FnZSgpOworICAgIGV4aXQoMik7Cit9CisKK215ICgkY2hvLCAkY2hhLCAkY2hiLCAkcmVzKTsKKyRjaG8gPSBEcGtnOjpDaGFuZ2Vsb2c6OkRlYmlhbi0+bmV3KCk7CiskY2hvLT5sb2FkKCRvbGQpOworJGNoYSA9IERwa2c6OkNoYW5nZWxvZzo6RGViaWFuLT5uZXcoKTsKKyRjaGEtPmxvYWQoJG5ld19hKTsKKyRjaGIgPSBEcGtnOjpDaGFuZ2Vsb2c6OkRlYmlhbi0+bmV3KCk7CiskY2hiLT5sb2FkKCRuZXdfYik7CisKK215IEBvID0gcmV2ZXJzZSBAJGNobzsKK215IEBhID0gcmV2ZXJzZSBAJGNoYTsKK215IEBiID0gcmV2ZXJzZSBAJGNoYjsKKworbXkgQHJlc3VsdDsgIyBMaW5lcyB0byBvdXRwdXQKK215ICRleGl0Y29kZSA9IDA7ICMgMSBpZiBjb25mbGljdCBlbmNvdW50ZXJlZAorCit1bmxlc3MgKG1lcmdlX2Jsb2NrKCRjaG8sICRjaGEsICRjaGIsIHN1YiB7CisJCQlteSAkdGFpbCA9ICRfWzBdLT5nZXRfdW5wYXJzZWRfdGFpbCgpOworCQkJY2hvbXAgJHRhaWwgaWYgZGVmaW5lZCAkdGFpbDsKKwkJCXJldHVybiAkdGFpbDsKKwkJICAgIH0pKQoreworICAgIG1lcmdlX2NvbmZsaWN0KCRjaGEtPmdldF91bnBhcnNlZF90YWlsKCksICRjaGItPmdldF91bnBhcnNlZF90YWlsKCkpOworfQorCit3aGlsZSAoMSkgeworICAgIG15ICgkbywgJGEsICRiKSA9IGdldF9pdGVtc190b19tZXJnZSgpOworICAgIGxhc3QgdW5sZXNzIGRlZmluZWQgJG8gb3IgZGVmaW5lZCAkYSBvciBkZWZpbmVkICRiOworICAgIG5leHQgaWYgbWVyZ2VfYmxvY2soJG8sICRhLCAkYik7CisgICAgIyBXZSBvbmx5IGhhdmUgdGhlIHVzdWFsbHkgY29uZmxpY3RpbmcgY2FzZXMgbGVmdAorICAgIGlmIChkZWZpbmVkICRhIGFuZCBkZWZpbmVkICRiKSB7CisJIyBTYW1lIGVudHJ5LCBtZXJnZSBzdWItaXRlbXMgc2VwYXJhdGVseSBmb3IgYSBuaWNlciByZXN1bHQKKwltZXJnZV9lbnRyaWVzKCRvLCAkYSwgJGIpOworICAgIH0gZWxzZSB7CisJIyBOb24tZXhpc3Rpbmcgb24gb25lIHNpZGUsIGNoYW5nZWQgb24gdGhlIG90aGVyIHNpZGUKKwltZXJnZV9jb25mbGljdCgkYSwgJGIpOworICAgIH0KK30KKworaWYgKGRlZmluZWQoJG91dF9maWxlKSBhbmQgJG91dF9maWxlIG5lICItIikgeworICAgIG9wZW4oT1VULCAiPiIsICRvdXRfZmlsZSkgfHwgc3lzZXJyKF9nKCJjYW5ub3Qgd3JpdGUgJXMiKSwgJG91dF9maWxlKTsKKyAgICBwcmludCBPVVQgKChibGVzc2VkICRfKSA/ICIkXyIgOiAiJF9cbiIpIGZvcmVhY2ggQHJlc3VsdDsKKyAgICBjbG9zZShPVVQpIHx8IHN5c2VycihfZygiY2Fubm90IHdyaXRlICVzIiksICRvdXRfZmlsZSk7Cit9IGVsc2UgeworICAgIHByaW50ICgoYmxlc3NlZCAkXykgPyAiJF8iIDogIiRfXG4iKSBmb3JlYWNoIEByZXN1bHQ7Cit9CisKK2V4aXQgJGV4aXRjb2RlOworCisjIFJldHVybnMgdGhlIG5leHQgaXRlbXMgdG8gbWVyZ2UsIGFsbCBpdGVtcyByZXR1cm5lZCBjb3JyZXNwb25kIHRvIHRoZQorIyBzYW1lIG1pbmltYWwgdmVyc2lvbiBhbW9uZyB0aGUgMyBwb3NzaWJsZSBuZXh0IGl0ZW1zICh1bmRlZiBpcyByZXR1cm5lZAorIyBpZiB0aGUgbmV4dCBpdGVtIG9uIHRoZSBnaXZlbiBjaGFuZ2Vsb2cgaXMgc2tpcHBlZCkKK3N1YiBnZXRfaXRlbXNfdG9fbWVyZ2UgeworICAgIG15IEBpdGVtcyA9IChzaGlmdCBAbywgc2hpZnQgQGEsIHNoaWZ0IEBiKTsKKyAgICBteSBAYXJyYXlzID0gKFxAbywgXEBhLCBcQGIpOworICAgIG15ICRtaW52ZXI7CisgICAgZm9yZWFjaCBteSAkaSAoMCAuLiAyKSB7CisJaWYgKGRlZmluZWQgJG1pbnZlciBhbmQgZGVmaW5lZCAkaXRlbXNbJGldKSB7CisJICAgIG15ICRjbXAgPSBjb21wYXJlX3ZlcnNpb25zKCRtaW52ZXIsICRpdGVtc1skaV0tPmdldF92ZXJzaW9uKCkpOworCSAgICBpZiAoJGNtcCA+IDApIHsKKwkJJG1pbnZlciA9ICRpdGVtc1skaV0tPmdldF92ZXJzaW9uKCk7CisJCWZvcmVhY2ggbXkgJGogKDAgLi4gJGkgLSAxKSB7CisJCSAgICB1bnNoaWZ0IEB7JGFycmF5c1skal19LCAkaXRlbXNbJGpdOworCQkgICAgJGl0ZW1zWyRqXSA9IHVuZGVmOworCQl9CisJICAgIH0gZWxzaWYgKCRjbXAgPCAwKSB7CisJCXVuc2hpZnQgQHskYXJyYXlzWyRpXX0sICRpdGVtc1skaV07CisJCSRpdGVtc1skaV0gPSB1bmRlZjsKKwkgICAgfQorCX0gZWxzZSB7CisJICAgICRtaW52ZXIgPSAkaXRlbXNbJGldLT5nZXRfdmVyc2lvbigpIGlmIGRlZmluZWQgJGl0ZW1zWyRpXTsKKwl9CisgICAgfQorICAgIHJldHVybiBAaXRlbXM7Cit9CisKKyMgQ29tcGFyZXMgdGhlIHZlcnNpb25zIHRha2luZyBpbnRvIGFjY291bnQgc29tZSBvZGRpdGllcyBsaWtlIHRoZSBmYWN0CisjIHRoYXQgd2Ugd2FudCBiYWNrcG9ydC92b2xhdGlsZSB2ZXJzaW9ucyB0byBzb3J0IGhpZ2hlciB0aGFuIHRoZSB2ZXJzaW9uCisjIG9uIHdoaWNoIHRoZXkgYXJlIGJhc2VkLgorc3ViIGNvbXBhcmVfdmVyc2lvbnMgeworICAgIG15ICgkYSwgJGIpID0gQF87CisgICAgcmV0dXJuIDAgaWYgbm90IGRlZmluZWQgJGEgYW5kIG5vdCBkZWZpbmVkICRiOworICAgIHJldHVybiAxIGlmIG5vdCBkZWZpbmVkICRiOworICAgIHJldHVybiAtMSBpZiBub3QgZGVmaW5lZCAkYTsKKyAgICAkYSA9ICRhLT5nZXRfdmVyc2lvbigpIGlmIHJlZigkYSkgYW5kICRhLT5pc2EoIkRwa2c6OkNoYW5nZWxvZzo6RW50cnkiKTsKKyAgICAkYiA9ICRiLT5nZXRfdmVyc2lvbigpIGlmIHJlZigkYikgYW5kICRiLT5pc2EoIkRwa2c6OkNoYW5nZWxvZzo6RW50cnkiKTsKKyAgICAjIEJhY2twb3J0IGFuZCB2b2xhdGlsZSBhcmUgbm90IHJlYWwgcHJlcmVsZWFzZXMKKyAgICAkYSA9fiBzL34oYnBvfHZvbGEpLyskMS87CisgICAgJGIgPX4gcy9+KGJwb3x2b2xhKS8rJDEvOworICAgIGlmICgkbWVyZ2VfcHJlcmVsZWFzZXMpIHsKKwkkYSA9fiBzL35bXn5dKiQvLzsKKwkkYiA9fiBzL35bXn5dKiQvLzsKKyAgICB9CisgICAgcmV0dXJuIHZlcnNpb25fY29tcGFyZSgkYSwgJGIpOworfQorCisjIE1lcmdlIGNoYW5nZWxvZyBlbnRyaWVzIHNtYXJ0bHkgYnkgbWVyZ2luZyBpbmRpdmlkdWFsbHkgdGhlIGRpZmZlcmVudAorIyBwYXJ0cyBjb25zdGl0dXRpbmcgYW4gZW50cnkKK3N1YiBtZXJnZV9lbnRyaWVzKCQkJCkgeworICAgIG15ICgkbywgJGEsICRiKSA9IEBfOworICAgICMgTk9URTogT25seSAkbyBjYW4gYmUgdW5kZWYKKworICAgICMgTWVyZ2UgdGhlIHRyYWlsZXIgbGluZQorICAgIHVubGVzcyAobWVyZ2VfZW50cnlfaXRlbSgiYmxhbmtfYWZ0ZXJfdHJhaWxlciIsICRvLCAkYSwgJGIpKSB7CisJdW5zaGlmdCBAcmVzdWx0LCAiIjsKKyAgICB9CisgICAgdW5sZXNzIChtZXJnZV9lbnRyeV9pdGVtKCJ0cmFpbGVyIiwgJG8sICRhLCAkYikpIHsKKwltZXJnZV9jb25mbGljdCgkYS0+Z2V0X3BhcnQoJ3RyYWlsZXInKSwgJGItPmdldF9wYXJ0KCd0cmFpbGVyJykpOworICAgIH0KKworICAgICMgTWVyZ2UgdGhlIGNoYW5nZXMKKyAgICB1bmxlc3MgKG1lcmdlX2VudHJ5X2l0ZW0oImJsYW5rX2FmdGVyX2NoYW5nZXMiLCAkbywgJGEsICRiKSkgeworCXVuc2hpZnQgQHJlc3VsdCwgIiI7CisgICAgfQorICAgIG15IEBtZXJnZWQgPSBtZXJnZShkZWZpbmVkICRvID8gJG8tPmdldF9wYXJ0KCdjaGFuZ2VzJykgOiBbXSwKKwkJICAgICAgICRhLT5nZXRfcGFydCgnY2hhbmdlcycpLCAkYi0+Z2V0X3BhcnQoJ2NoYW5nZXMnKSwKKwkJICAgICAgIHsKKwkJCSAgIENPTkZMSUNUID0+IHN1YiB7CisJCQkJJGV4aXRjb2RlID0gMTsKKwkJCQlyZXR1cm4gZ2V0X2NvbmZsaWN0X2Jsb2NrKCRfWzBdLCAkX1sxXSk7CisJCQkgICB9CisJCSAgICAgICB9KTsKKyAgICB1bnNoaWZ0IEByZXN1bHQsIEBtZXJnZWQ7CisKKyAgICAjIE1lcmdlIHRoZSBoZWFkZXIgbGluZQorICAgIHVubGVzcyAobWVyZ2VfZW50cnlfaXRlbSgiYmxhbmtfYWZ0ZXJfaGVhZGVyIiwgJG8sICRhLCAkYikpIHsKKwl1bnNoaWZ0IEByZXN1bHQsICIiOworICAgIH0KKyAgICB1bmxlc3MgKG1lcmdlX2VudHJ5X2l0ZW0oImhlYWRlciIsICRvLCAkYSwgJGIpKSB7CisJbWVyZ2VfY29uZmxpY3QoJGEtPmdldF9wYXJ0KCdoZWFkZXInKSwgJGItPmdldF9wYXJ0KCdoZWFkZXInKSk7CisgICAgfQorfQorCitzdWIgam9pbl9saW5lcygkKSB7CisgICAgbXkgJGFycmF5ID0gc2hpZnQ7CisgICAgcmV0dXJuIGpvaW4oIlxuIiwgQCRhcnJheSkgaWYgcmVmKCRhcnJheSkgZXEgIkFSUkFZIjsKKyAgICByZXR1cm4gJGFycmF5OworfQorCisjIFRyeSB0byBtZXJnZSB0aGUgb2J2aW91cyBjYXNlcywgcmV0dXJuIDEgb24gc3VjY2VzcyBhbmQgMCBvbiBmYWlsdXJlCisjIE8gQSBCCisjIC0geCB4ID0+IHgKKyMgbyBvIGIgPT4gYgorIyAtIC0gYiA9PiBiCisjIG8gYSBvID0+IGEKKyMgLSBhIC0gPT4gYQorc3ViIG1lcmdlX2Jsb2NrKCQkJDsmKSB7CisgICAgbXkgKCRvLCAkYSwgJGIsICRwcmVwcm9jZXNzKSA9IEBfOworICAgICRwcmVwcm9jZXNzID0gXCZqb2luX2xpbmVzIHVubGVzcyBkZWZpbmVkICRwcmVwcm9jZXNzOworICAgICRvID0gJiRwcmVwcm9jZXNzKCRvKSBpZiBkZWZpbmVkKCRvKTsKKyAgICAkYSA9ICYkcHJlcHJvY2VzcygkYSkgaWYgZGVmaW5lZCgkYSk7CisgICAgJGIgPSAmJHByZXByb2Nlc3MoJGIpIGlmIGRlZmluZWQoJGIpOworICAgIHJldHVybiAxIGlmIG5vdCBkZWZpbmVkKCRhKSBhbmQgbm90IGRlZmluZWQoJGIpOworICAgIGlmIChkZWZpbmVkKCRhKSBhbmQgZGVmaW5lZCgkYikgYW5kICgkYSBlcSAkYikpIHsKKwl1bnNoaWZ0IEByZXN1bHQsICRhOworICAgIH0gZWxzaWYgKChkZWZpbmVkKCRhKSBhbmQgZGVmaW5lZCgkbykgYW5kICgkYSBlcSAkbykpIG9yCisJICAgICAobm90IGRlZmluZWQoJGEpIGFuZCBub3QgZGVmaW5lZCgkbykpKSB7CisJdW5zaGlmdCBAcmVzdWx0LCAkYiBpZiBkZWZpbmVkICRiOworICAgIH0gZWxzaWYgKChkZWZpbmVkKCRiKSBhbmQgZGVmaW5lZCgkbykgYW5kICgkYiBlcSAkbykpIG9yCisJICAgICAobm90IGRlZmluZWQoJGIpIGFuZCBub3QgZGVmaW5lZCgkbykpKSB7CisJdW5zaGlmdCBAcmVzdWx0LCAkYSBpZiBkZWZpbmVkICRhOworICAgIH0gZWxzZSB7CisJcmV0dXJuIDA7CisgICAgfQorICAgIHJldHVybiAxOworfQorCitzdWIgbWVyZ2VfZW50cnlfaXRlbSgkJCQkKSB7CisgICAgbXkgKCRpdGVtLCAkbywgJGEsICRiKSA9IEBfOworICAgIGlmIChibGVzc2VkKCRvKSBhbmQgJG8tPmlzYSgnRHBrZzo6Q2hhbmdlbG9nOjpFbnRyeScpKSB7CisJJG8gPSAkby0+Z2V0X3BhcnQoJGl0ZW0pOworICAgIH0gZWxzaWYgKHJlZiAkbykgeworCSRvID0gJG8tPnskaXRlbX07CisgICAgfQorICAgIGlmIChibGVzc2VkKCRhKSBhbmQgJGEtPmlzYSgnRHBrZzo6Q2hhbmdlbG9nOjpFbnRyeScpKSB7CisJJGEgPSAkYS0+Z2V0X3BhcnQoJGl0ZW0pOworICAgIH0gZWxzaWYgKHJlZiAkYSkgeworCSRhID0gJGEtPnskaXRlbX07CisgICAgfQorICAgIGlmIChibGVzc2VkKCRiKSBhbmQgJGItPmlzYSgnRHBrZzo6Q2hhbmdlbG9nOjpFbnRyeScpKSB7CisJJGIgPSAkYi0+Z2V0X3BhcnQoJGl0ZW0pOworICAgIH0gZWxzaWYgKHJlZiAkYikgeworCSRiID0gJGItPnskaXRlbX07CisgICAgfQorICAgIHJldHVybiBtZXJnZV9ibG9jaygkbywgJGEsICRiKTsKK30KKworc3ViIG1lcmdlX2NvbmZsaWN0KCQkKSB7CisgICAgbXkgKCRhLCAkYikgPSBAXzsKKyAgICB1bnNoaWZ0IEByZXN1bHQsIGdldF9jb25mbGljdF9ibG9jaygkYSwgJGIpOworICAgICRleGl0Y29kZSA9IDE7Cit9CisKK3N1YiBnZXRfY29uZmxpY3RfYmxvY2soJCQpIHsKKyAgICBteSAoJGEsICRiKSA9IEBfOworICAgIG15IChAYSwgQGIpOworICAgIHB1c2ggQGEsICRhIGlmIGRlZmluZWQgJGE7CisgICAgcHVzaCBAYiwgJGIgaWYgZGVmaW5lZCAkYjsKKyAgICBAYSA9IEB7JGF9IGlmIHJlZigkYSkgZXEgIkFSUkFZIjsKKyAgICBAYiA9IEB7JGJ9IGlmIHJlZigkYikgZXEgIkFSUkFZIjsKKyAgICByZXR1cm4gKCI8PDw8PDw8IiwgQGEsICI9PT09PT09IiwgQGIsICI+Pj4+Pj4+Iik7Cit9CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvZHBrZy1uYW1lLnBsIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL2Rwa2ctbmFtZS5wbApuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwLi42MDk5YWVmCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL2Rwa2ctbmFtZS5wbApAQCAtMCwwICsxLDI1MSBAQAorIyEvdXNyL2Jpbi9wZXJsCisjCisjIGRwa2ctbmFtZQorIworIyBDb3B5cmlnaHQgwqkgMTk5NSwxOTk2IEVyaWNrIEJyYW5kZXJob3JzdCA8YnJhbmRlcmhAZGViaWFuLm9yZz4uCisjIENvcHlyaWdodCDCqSAyMDA5IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4uCisjCisjIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisjIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisjIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisjIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisjCisjIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisjIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisjCisjIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisjIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorCit1c2Ugd2FybmluZ3M7Cit1c2Ugc3RyaWN0OworCit1c2UgRmlsZTo6QmFzZW5hbWU7Cit1c2UgRmlsZTo6UGF0aDsKKwordXNlIERwa2c7Cit1c2UgRHBrZzo6R2V0dGV4dDsKK3VzZSBEcGtnOjpFcnJvckhhbmRsaW5nOwordXNlIERwa2c6OkNvbnRyb2w7Cit1c2UgRHBrZzo6QXJjaCBxdyhnZXRfaG9zdF9hcmNoKTsKKwordGV4dGRvbWFpbigiZHBrZy1kZXYiKTsKKworbXkgJW9wdGlvbnMgPSAoCisgICAgc3ViZGlyID0+IDAsCisgICAgZGVzdGRpciA9PiAiIiwKKyAgICBjcmVhdGVkaXIgPT4gMCwKKyAgICBvdmVyd3JpdGUgPT4gMCwKKyAgICBzeW1saW5rID0+IDAsCisgICAgYXJjaGl0ZWN0dXJlID0+IDEsCispOworCitzdWIgdmVyc2lvbigpCit7CisgICAgcHJpbnRmKF9nKCJEZWJpYW4gJXMgdmVyc2lvbiAlcy5cbiIpLCAkcHJvZ25hbWUsICR2ZXJzaW9uKTsKK30KKworc3ViIHVzYWdlKCkKK3sKKyAgICBwcmludGYoX2coIlVzYWdlOiAlcyBbPG9wdGlvbj4uLi5dIDxmaWxlPi4uLlxuIiksICRwcm9nbmFtZSk7CisKKyAgICBwcmludChfZygiCitPcHRpb25zOgorICAtYSwgLS1uby1hcmNoaXRlY3R1cmUgICAgbm8gYXJjaGl0ZWN0dXJlIHBhcnQgaW4gZmlsZW5hbWUuCisgIC1vLCAtLW92ZXJ3cml0ZSAgICAgICAgICBvdmVyd3JpdGUgaWYgZmlsZSBleGlzdHMuCisgIC1rLCAtLXN5bWxpbmsgICAgICAgICAgICBkb24ndCBjcmVhdGUgYSBuZXcgZmlsZSwgYnV0IGEgc3ltbGluay4KKyAgLXMsIC0tc3ViZGlyIFtkaXJdICAgICAgIG1vdmUgZmlsZSBpbnRvIHN1YmRpciAodXNlIHdpdGggY2FyZSkuCisgIC1jLCAtLWNyZWF0ZS1kaXIgICAgICAgICBjcmVhdGUgdGFyZ2V0IGRpciBpZiBub3QgdGhlcmUgKHVzZSB3aXRoIGNhcmUpLgorICAtaCwgLS1oZWxwICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS4KKyAgLXYsIC0tdmVyc2lvbiAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uCisKK2ZpbGUuZGViIGNoYW5nZXMgdG8gPHBhY2thZ2U+Xzx2ZXJzaW9uPl88YXJjaGl0ZWN0dXJlPi48cGFja2FnZV90eXBlPgorYWNjb3JkaW5nIHRvIHRoZSAndW5kZXJzY29yZXMgY29udmVudGlvbicuCisiKSk7Cit9CisKK3N1YiBmaWxlZXhpc3RzKCQpCit7CisgICAgbXkgKCRmaWxlbmFtZSkgPSBAXzsKKworICAgIGlmICgtZiAkZmlsZW5hbWUpIHsKKyAgICAgICAgcmV0dXJuIDE7CisgICAgfSBlbHNlIHsKKyAgICAgICAgd2FybmluZyhfZygiY2Fubm90IGZpbmQgJyVzJyIpLCAkZmlsZW5hbWUpOworICAgICAgICByZXR1cm4gMDsKKyAgICB9Cit9CisKK3N1YiBmaWxlc2FtZSgkJCkKK3sKKyAgICBteSAoJGEsICRiKSA9IEBfOworICAgIG15IEBzdGEgPSBzdGF0KCRhKTsKKyAgICBteSBAc3RiID0gc3RhdCgkYik7CisKKyAgICAjIFNhbWUgZGV2aWNlIGFuZCBpbm9kZSBudW1iZXJzLgorICAgIHJldHVybiAoQHN0YSBhbmQgQHN0YiBhbmQgJHN0YVswXSA9PSAkc3RiWzBdIGFuZCAkc3RhWzFdID09ICRzdGJbMV0pOworfQorCitzdWIgZ2V0ZmllbGRzKCQpCit7CisgICAgbXkgKCRmaWxlbmFtZSkgPSBAXzsKKworICAgICMgUmVhZCB0aGUgZmllbGRzCisgICAgb3BlbihDREFUQSwgJy18JywgImRwa2ctZGViIiwgIi1mIiwgIi0tIiwgJGZpbGVuYW1lKSB8fAorICAgICAgICBzeXNlcnIoX2coImNhbm5vdCBvcGVuICVzIiksICRmaWxlbmFtZSk7CisgICAgbXkgJGZpZWxkcyA9IERwa2c6OkNvbnRyb2wtPm5ldyh0eXBlID0+IENUUkxfUEtHX0RFQik7CisgICAgJGZpZWxkcy0+cGFyc2UoXCpDREFUQSwgc3ByaW50ZihfZygiYmluYXJ5IGNvbnRyb2wgZmlsZSAlcyIpLCAkZmlsZW5hbWUpKTsKKyAgICBjbG9zZShDREFUQSk7CisKKyAgICByZXR1cm4gJGZpZWxkczsKK30KKworc3ViIGdldGFyY2goJCQpCit7CisgICAgbXkgKCRmaWxlbmFtZSwgJGZpZWxkcykgPSBAXzsKKworICAgIG15ICRhcmNoID0gJGZpZWxkcy0+e0FyY2hpdGVjdHVyZX07CisgICAgaWYgKCEkZmllbGRzLT57QXJjaGl0ZWN0dXJlfSBhbmQgJG9wdGlvbnN7YXJjaGl0ZWN0dXJlfSkgeworICAgICAgICAkYXJjaCA9IGdldF9ob3N0X2FyY2goKTsKKyAgICAgICAgd2FybmluZyhfZygiYXNzdW1pbmcgYXJjaGl0ZWN0dXJlICclcycgZm9yICclcyciKSwgJGFyY2gsICRmaWxlbmFtZSk7CisgICAgfQorCisgICAgcmV0dXJuICRhcmNoOworfQorCitzdWIgZ2V0bmFtZSgkJCQpCit7CisgICAgbXkgKCRmaWxlbmFtZSwgJGZpZWxkcywgJGFyY2gpID0gQF87CisKKyAgICBteSAkcGtnID0gJGZpZWxkcy0+e1BhY2thZ2V9OworICAgIChteSAkdmVyc2lvbiA9ICRmaWVsZHMtPntWZXJzaW9ufSkgPX4gcy8uKjovLzsKKyAgICBteSAkdHlwZSA9ICRmaWVsZHMtPnsnUGFja2FnZS1UeXBlJ30gfHwgJ2RlYic7CisKKyAgICBteSAkdG5hbWU7CisgICAgaWYgKCRvcHRpb25ze2FyY2hpdGVjdHVyZX0pIHsKKyAgICAgICAgJHRuYW1lID0gIiRwa2dcXyR2ZXJzaW9uXF8kYXJjaC4kdHlwZSI7CisgICAgfSBlbHNlIHsKKyAgICAgICAgJHRuYW1lID0gIiRwa2dcXyR2ZXJzaW9uLiR0eXBlIjsKKyAgICB9CisgICAgKG15ICRuYW1lID0gJHRuYW1lKSA9fiBzLyAvL2c7CisgICAgaWYgKCR0bmFtZSBuZSAkbmFtZSkgeyAjIGNvbnRyb2wgZmllbGRzIGhhdmUgc3BhY2VzCisgICAgICAgIHdhcm5pbmcoX2coImJhZCBwYWNrYWdlIGNvbnRyb2wgaW5mb3JtYXRpb24gZm9yICclcyciKSwgJGZpbGVuYW1lKTsKKyAgICB9CisgICAgcmV0dXJuICRuYW1lOworfQorCitzdWIgZ2V0ZGlyKCQkJCkKK3sKKyAgICBteSAoJGZpbGVuYW1lLCAkZmllbGRzLCAkYXJjaCkgPSBAXzsKKyAgICBteSAkZGlyOworCisgICAgaWYgKCEkb3B0aW9uc3tkZXN0ZGlyfSkgeworICAgICAgICAkZGlyID0gZGlybmFtZSgkZmlsZW5hbWUpOworICAgICAgICBpZiAoJG9wdGlvbnN7c3ViZGlyfSkgeworICAgICAgICAgICAgbXkgJHNlY3Rpb24gPSAkZmllbGRzLT57U2VjdGlvbn07CisgICAgICAgICAgICBpZiAoISRzZWN0aW9uKSB7CisgICAgICAgICAgICAgICAgJHNlY3Rpb24gPSAibm8tc2VjdGlvbiI7CisgICAgICAgICAgICAgICAgd2FybmluZyhfZygiYXNzdW1pbmcgc2VjdGlvbiAnJXMnIGZvciAnJXMnIiksICRzZWN0aW9uLAorICAgICAgICAgICAgICAgICAgICAgICAgJGZpbGVuYW1lKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGlmICgkc2VjdGlvbiBuZSAibm9uLWZyZWUiIGFuZCAkc2VjdGlvbiBuZSAiY29udHJpYiIgYW5kCisgICAgICAgICAgICAgICAgJHNlY3Rpb24gbmUgIm5vLXNlY3Rpb24iKSB7CisgICAgICAgICAgICAgICAgJGRpciA9ICJ1bnN0YWJsZS9iaW5hcnktJGFyY2gvJHNlY3Rpb24iOworICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICAkZGlyID0gIiRzZWN0aW9uL2JpbmFyeS0kYXJjaCI7CisgICAgICAgICAgICB9CisgICAgICAgIH0KKyAgICB9IGVsc2UgeworICAgICAgICAkZGlyID0gJG9wdGlvbnN7ZGVzdGRpcn07CisgICAgfQorCisgICAgcmV0dXJuICRkaXI7Cit9CisKK3N1YiBtb3ZlKCQpCit7CisgICAgbXkgKCRmaWxlbmFtZSkgPSBAXzsKKworICAgIGlmIChmaWxlZXhpc3RzKCRmaWxlbmFtZSkpIHsKKyAgICAgICAgbXkgJGZpZWxkcyA9IGdldGZpZWxkcygkZmlsZW5hbWUpOworCisgICAgICAgIHVubGVzcyAoZXhpc3RzICRmaWVsZHMtPntQYWNrYWdlfSkgeworICAgICAgICAgICAgd2FybmluZyhfZygibm8gUGFja2FnZSBmaWVsZCBmb3VuZCBpbiAnJXMnLCBza2lwcGluZyBpdCIpLAorICAgICAgICAgICAgICAgICAgICAkZmlsZW5hbWUpOworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CisKKyAgICAgICAgbXkgJGFyY2ggPSBnZXRhcmNoKCRmaWxlbmFtZSwgJGZpZWxkcyk7CisKKyAgICAgICAgbXkgJG5hbWUgPSBnZXRuYW1lKCRmaWxlbmFtZSwgJGZpZWxkcywgJGFyY2gpOworCisgICAgICAgIG15ICRkaXIgPSBnZXRkaXIoJGZpbGVuYW1lLCAkZmllbGRzLCAkYXJjaCk7CisgICAgICAgIGlmICghIC1kICRkaXIpIHsKKyAgICAgICAgICAgIGlmICgkb3B0aW9uc3tjcmVhdGVkaXJ9KSB7CisgICAgICAgICAgICAgICAgaWYgKG1rcGF0aCgkZGlyKSkgeworICAgICAgICAgICAgICAgICAgICBpbmZvKF9nKCJjcmVhdGVkIGRpcmVjdG9yeSAnJXMnIiksICRkaXIpOworICAgICAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgICAgIGVycm9yKF9nKCJjYW5ub3QgY3JlYXRlIGRpcmVjdG9yeSAnJXMnIiksICRkaXIpOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgZXJyb3IoX2coIm5vIHN1Y2ggZGlyZWN0b3J5ICclcycsIHRyeSAtLWNyZWF0ZS1kaXIgKC1jKSBvcHRpb24iKSwKKyAgICAgICAgICAgICAgICAgICAgICAkZGlyKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorCisgICAgICAgIG15ICRuZXduYW1lID0gIiRkaXIvJG5hbWUiOworCisgICAgICAgIG15IEBjb21tYW5kOworICAgICAgICBpZiAoJG9wdGlvbnN7c3ltbGlua30pIHsKKyAgICAgICAgICAgIEBjb21tYW5kID0gKCJsbiIsICItcyIsICItLSIpOworICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgQGNvbW1hbmQgPSAoIm12IiwgIi0tIik7CisgICAgICAgIH0KKworICAgICAgICBpZiAoZmlsZXNhbWUoJG5ld25hbWUsICRmaWxlbmFtZSkpIHsKKyAgICAgICAgICAgIHdhcm5pbmcoX2coInNraXBwaW5nICclcyciKSwgJGZpbGVuYW1lKTsKKyAgICAgICAgfSBlbHNpZiAoLWYgJG5ld25hbWUgYW5kICEkb3B0aW9uc3tvdmVyd3JpdGV9KSB7CisgICAgICAgICAgICB3YXJuaW5nKF9nKCJjYW5ub3QgbW92ZSAnJXMnIHRvIGV4aXN0aW5nIGZpbGUiKSwgJGZpbGVuYW1lKTsKKyAgICAgICAgfSBlbHNpZiAoc3lzdGVtKEBjb21tYW5kLCAkZmlsZW5hbWUsICRuZXduYW1lKSA9PSAwKSB7CisgICAgICAgICAgICBpbmZvKF9nKCJtb3ZlZCAnJXMnIHRvICclcyciKSwgYmFzZW5hbWUoJGZpbGVuYW1lKSwgJG5ld25hbWUpOworICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgZXJyb3IoX2coIm1rZGlyIGNhbiBiZSB1c2VkIHRvIGNyZWF0ZSBkaXJlY3RvcnkiKSk7CisgICAgICAgIH0KKyAgICB9Cit9CisKK0BBUkdWIHx8IHVzYWdlZXJyKF9nKCJuZWVkIGF0IGxlYXN0IGEgZmlsZW5hbWUiKSk7CisKK3doaWxlIChAQVJHVikgeworICAgICRfID0gc2hpZnQoQEFSR1YpOworICAgIGlmIChtL14tW2g/XXwtLWhlbHAkLykgeworICAgICAgICB1c2FnZSgpOworICAgICAgICBleGl0KDApOworICAgIH0gZWxzaWYgKG0vXi12fC0tdmVyc2lvbiQvKSB7CisgICAgICAgIHZlcnNpb24oKTsKKyAgICAgICAgZXhpdCgwKTsKKyAgICB9IGVsc2lmIChtL14tY3wtLWNyZWF0ZS1kaXIkLykgeworICAgICAgICAkb3B0aW9uc3tjcmVhdGVkaXJ9ID0gMTsKKyAgICB9IGVsc2lmIChtL14tc3wtLXN1YmRpciQvKSB7CisgICAgICAgICRvcHRpb25ze3N1YmRpcn0gPSAxOworICAgICAgICBpZiAoLWQgJEFSR1ZbMF0pIHsKKyAgICAgICAgICAgICRvcHRpb25ze2Rlc3RkaXJ9ID0gc2hpZnQoQEFSR1YpOworICAgICAgICB9CisgICAgfSBlbHNpZiAobS9eLW98LS1vdmVyd3JpdGUkLykgeworICAgICAgICAkb3B0aW9uc3tvdmVyd3JpdGV9ID0gMTsKKyAgICB9IGVsc2lmIChtL14ta3wtLXN5bWxpbmskLykgeworICAgICAgICAkb3B0aW9uc3tzeW1saW5rfSA9IDE7CisgICAgfSBlbHNpZiAobS9eLWF8LS1uby1hcmNoaXRlY3R1cmUkLykgeworICAgICAgICAkb3B0aW9uc3thcmNoaXRlY3R1cmV9ID0gMDsKKyAgICB9IGVsc2lmIChtL14tLSQvKSB7CisgICAgICAgIGZvcmVhY2ggKEBBUkdWKSB7CisgICAgICAgICAgICBtb3ZlKCRfKTsKKyAgICAgICAgfQorICAgICAgICBleGl0IDA7CisgICAgfSBlbHNlIHsKKyAgICAgICAgbW92ZSgkXyk7CisgICAgfQorfQorCiswOwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL2Rwa2ctcGFyc2VjaGFuZ2Vsb2cucGwgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvZHBrZy1wYXJzZWNoYW5nZWxvZy5wbApuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwLi4yYWI3NjA4Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL2Rwa2ctcGFyc2VjaGFuZ2Vsb2cucGwKQEAgLTAsMCArMSwxMjQgQEAKKyMhL3Vzci9iaW4vcGVybAorIworIyBkcGtnLXBhcnNlY2hhbmdlbG9nCisjCisjIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisjIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisjIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisjIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisjCisjIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisjIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisjCisjIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisjIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorCit1c2Ugc3RyaWN0OwordXNlIHdhcm5pbmdzOworCit1c2UgRHBrZzsKK3VzZSBEcGtnOjpHZXR0ZXh0OwordXNlIERwa2c6OkVycm9ySGFuZGxpbmc7Cit1c2UgRHBrZzo6Q2hhbmdlbG9nOjpQYXJzZTsKKwordGV4dGRvbWFpbigiZHBrZy1kZXYiKTsKKworbXkgJW9wdGlvbnM7CisKK3N1YiB2ZXJzaW9uIHsKKyAgICBwcmludGYgX2coIkRlYmlhbiAlcyB2ZXJzaW9uICVzLlxuIiksICRwcm9nbmFtZSwgJHZlcnNpb247CisKKyAgICBwcmludGYgX2coIgorQ29weXJpZ2h0IChDKSAxOTk2IElhbiBKYWNrc29uLgorQ29weXJpZ2h0IChDKSAyMDAxIFdpY2hlcnQgQWtrZXJtYW4iKTsKKworICAgIHByaW50ZiBfZygiCitUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAyIG9yCitsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS4KKyIpOworfQorCitzdWIgdXNhZ2UgeworICAgIHByaW50ZiBfZygKKyJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0KKworT3B0aW9uczoKKyAgLWw8Y2hhbmdlbG9nZmlsZT4gICAgICAgIGdldCBwZXItdmVyc2lvbiBpbmZvIGZyb20gdGhpcyBmaWxlLgorICAtRjxjaGFuZ2Vsb2dmb3JtYXQ+ICAgICAgZm9yY2UgY2hhbmdlIGxvZyBmb3JtYXQuCisgIC1MPGxpYmRpcj4gICAgICAgICAgICAgICBsb29rIGZvciBjaGFuZ2UgbG9nIHBhcnNlcnMgaW4gPGxpYmRpcj4uCisgIC1oLCAtLWhlbHAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLgorICAgICAgLS12ZXJzaW9uICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi4KKworcGFyc2VyIG9wdGlvbnM6CisgICAgLS1mb3JtYXQgPG91dHB1dGZvcm1hdD4gICAgIHNlZSBtYW4gcGFnZSBmb3IgbGlzdCBvZiBhdmFpbGFibGUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3V0cHV0IGZvcm1hdHMsIGRlZmF1bHRzIHRvICdkcGtnJworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIGRwa2ctZGV2CisgICAgLS1zaW5jZSA8dmVyc2lvbj4sICAgICAgICAgIGluY2x1ZGUgYWxsIGNoYW5nZXMgbGF0ZXIgdGhhbiB2ZXJzaW9uCisgICAgICAtczx2ZXJzaW9uPiwgLXY8dmVyc2lvbj4KKyAgICAtLXVudGlsIDx2ZXJzaW9uPiwgICAgICAgICAgaW5jbHVkZSBhbGwgY2hhbmdlcyBlYXJsaWVyIHRoYW4gdmVyc2lvbgorICAgICAgLXU8dmVyc2lvbj4KKyAgICAtLWZyb20gPHZlcnNpb24+LCAgICAgICAgICAgaW5jbHVkZSBhbGwgY2hhbmdlcyBlcXVhbCBvciBsYXRlcgorICAgICAgLWY8dmVyc2lvbj4gICAgICAgICAgICAgICB0aGFuIHZlcnNpb24KKyAgICAtLXRvIDx2ZXJzaW9uPiwgLXQ8dmVyc2lvbj4gaW5jbHVkZSBhbGwgY2hhbmdlcyB1cCB0byBvciBlcXVhbAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGFuIHZlcnNpb24KKyAgICAtLWNvdW50IDxudW1iZXI+LCAgICAgICAgICAgaW5jbHVkZSA8bnVtYmVyPiBlbnRyaWVzIGZyb20gdGhlIHRvcAorICAgICAgLWM8bnVtYmVyPiwgLW48bnVtYmVyPiAgICAob3IgdGhlIHRhaWwgaWYgPG51bWJlcj4gaXMgbG93ZXIgdGhhbiAwKQorICAgIC0tb2Zmc2V0IDxudW1iZXI+LCAgICAgICAgICBjaGFuZ2UgdGhlIHN0YXJ0aW5nIHBvaW50IGZvciAtLWNvdW50LAorICAgICAgLW88bnVtYmVyPiAgICAgICAgICAgICAgICBjb3VudGVkIGZyb20gdGhlIHRvcCAob3IgdGhlIHRhaWwgaWYKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG51bWJlcj4gaXMgbG93ZXIgdGhhbiAwKQorICAgIC0tYWxsICAgICAgICAgICAgICAgICAgICAgICBpbmNsdWRlIGFsbCBjaGFuZ2VzCisiKSwgJHByb2duYW1lOworfQorCit3aGlsZSAoQEFSR1YpIHsKKyAgICBsYXN0IHVubGVzcyAkQVJHVlswXSA9fiBtL14tLzsKKyAgICAkXyA9IHNoaWZ0KEBBUkdWKTsKKyAgICBpZiAobS9eLUwoLispJC8pIHsKKwkkb3B0aW9uc3sibGliZGlyIn0gPSAkMTsKKyAgICB9IGVsc2lmIChtL14tRihbMC05YS16XSspJC8pIHsKKwkkb3B0aW9uc3siY2hhbmdlbG9nZm9ybWF0In0gPSAkMTsKKyAgICB9IGVsc2lmIChtL14tbCguKykkLykgeworCSRvcHRpb25zeyJmaWxlIn0gPSAkMTsKKyAgICB9IGVsc2lmIChtL14tLSQvKSB7CisJbGFzdDsKKyAgICB9IGVsc2lmIChtL14tKFtjZm5vc3R1dl0pKC4qKSQvKSB7CisJaWYgKCgkMSBlcSAiYyIpIG9yICgkMSBlcSAibiIpKSB7CisJICAgICRvcHRpb25zeyJjb3VudCJ9ID0gJDI7CisJfSBlbHNpZiAoJDEgZXEgImYiKSB7CisJICAgICRvcHRpb25zeyJmcm9tIn0gPSAkMjsKKwl9IGVsc2lmICgkMSBlcSAibyIpIHsKKwkgICAgJG9wdGlvbnN7Im9mZnNldCJ9ID0gJDI7CisJfSBlbHNpZiAoKCQxIGVxICJzIikgb3IgKCQxIGVxICJ2IikpIHsKKwkgICAgJG9wdGlvbnN7InNpbmNlIn0gPSAkMjsKKwl9IGVsc2lmICgkMSBlcSAidCIpIHsKKwkgICAgJG9wdGlvbnN7InRvIn0gPSAkMjsKKwl9IGVsc2lmICgkMSBlcSAidSIpIHsKKwkgICAgJG9wdGlvbnN7InVudGlsIn0gPSAkMjsKKwl9CisgICAgfSBlbHNpZiAobS9eLS0oY291bnR8ZmlsZXxmb3JtYXR8ZnJvbXxvZmZzZXR8c2luY2V8dG98dW50aWwpKC4qKSQvKSB7CisJaWYgKCQyKSB7CisJICAgICRvcHRpb25zeyQxfSA9ICQyOworCX0gZWxzZSB7CisJICAgICRvcHRpb25zeyQxfSA9IHNoaWZ0KEBBUkdWKTsKKwl9CisgICAgfSBlbHNpZiAobS9eLS1hbGwkLykgeworCSRvcHRpb25zeyJhbGwifSA9IHVuZGVmOworICAgIH0gZWxzaWYgKG0vXi0oaHwtaGVscCkkLykgeworCXVzYWdlKCk7IGV4aXQoMCk7CisgICAgfSBlbHNpZiAobS9eLS12ZXJzaW9uJC8pIHsKKwl2ZXJzaW9uKCk7IGV4aXQoMCk7CisgICAgfSBlbHNlIHsKKwl1c2FnZWVycihfZygidW5rbm93biBvcHRpb24gXGAlcyciKSwgJF8pOworICAgIH0KK30KKworQEFSR1YgJiYgdXNhZ2VlcnIoX2coInRha2VzIG5vIG5vbi1vcHRpb24gYXJndW1lbnRzIikpOworCitteSAkY291bnQgPSAwOworbXkgQGZpZWxkcyA9IGNoYW5nZWxvZ19wYXJzZSglb3B0aW9ucyk7Citmb3JlYWNoIG15ICRmIChAZmllbGRzKSB7CisgICAgcHJpbnQgIlxuIiBpZiAkY291bnQrKzsKKyAgICBwcmludCAkZi0+b3V0cHV0KCk7Cit9CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGwgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGwKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMC4uMzVjMmQ4NgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbApAQCAtMCwwICsxLDI3OCBAQAorIyEvdXNyL2Jpbi9wZXJsCisjCisjIGRwa2ctc2NhbnBhY2thZ2VzCisjCisjIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisjIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisjIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisjIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisjCisjIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisjIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisjCisjIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisjIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorCit1c2Ugd2FybmluZ3M7Cit1c2Ugc3RyaWN0OworCit1c2UgSU86OkhhbmRsZTsKK3VzZSBJTzo6RmlsZTsKK3VzZSBHZXRvcHQ6OkxvbmcgcXcoOmNvbmZpZyBwb3NpeF9kZWZhdWx0IGJ1bmRsaW5nIG5vX2lnbm9yZWNhc2UpOworCit1c2UgRHBrZzsKK3VzZSBEcGtnOjpHZXR0ZXh0OwordXNlIERwa2c6OkVycm9ySGFuZGxpbmc7Cit1c2UgRHBrZzo6Q29udHJvbDsKK3VzZSBEcGtnOjpWZXJzaW9uOwordXNlIERwa2c6OkNoZWNrc3VtczsKK3VzZSBEcGtnOjpDb21wcmVzc2lvbjo6RmlsZUhhbmRsZTsKK3VzZSBEcGtnOjpJUEM7CisKK3RleHRkb21haW4oImRwa2ctZGV2Iik7CisKKyMgRG8gbm90IHBvbGx1dGUgU1RET1VUIHdpdGggaW5mbyBtZXNzYWdlcworcmVwb3J0X29wdGlvbnMoaW5mb19maCA9PiBcKlNUREVSUik7CisKK215IChAc2FtZW1haW50LCBAY2hhbmdlZG1haW50KTsKK215IEBzcHVyaW91c292ZXI7CitteSAlcGFja2FnZXM7CitteSAlb3ZlcnJpZGRlbjsKKworbXkgJW9wdGlvbnMgPSAoaGVscCAgICAgICAgICAgID0+IHN1YiB7IHVzYWdlKCk7IGV4aXQgMDsgfSwKKwkgICAgICAgdmVyc2lvbiAgICAgICAgID0+IFwmdmVyc2lvbiwKKwkgICAgICAgdHlwZSAgICAgICAgICAgID0+IHVuZGVmLAorCSAgICAgICB1ZGViICAgICAgICAgICAgPT4gXCZzZXRfdHlwZV91ZGViLAorCSAgICAgICBhcmNoICAgICAgICAgICAgPT4gdW5kZWYsCisJICAgICAgIG11bHRpdmVyc2lvbiAgICA9PiAwLAorCSAgICAgICAnZXh0cmEtb3ZlcnJpZGUnPT4gdW5kZWYsCisgICAgICAgICAgICAgICBtZWRpdW0gICAgICAgICAgPT4gdW5kZWYsCisJICAgICAgKTsKKworbXkgJHJlc3VsdCA9IEdldE9wdGlvbnMoXCVvcHRpb25zLAorICAgICAgICAgICAgICAgICAgICAgICAgJ2hlbHB8aHw/JywgJ3ZlcnNpb24nLCAndHlwZXx0PXMnLCAndWRlYnx1IScsCisgICAgICAgICAgICAgICAgICAgICAgICAnYXJjaHxhPXMnLCAnbXVsdGl2ZXJzaW9ufG0hJywgJ2V4dHJhLW92ZXJyaWRlfGU9cycsCisgICAgICAgICAgICAgICAgICAgICAgICAnbWVkaXVtfE09cycpOworCitzdWIgdmVyc2lvbiB7CisgICAgcHJpbnRmIF9nKCJEZWJpYW4gJXMgdmVyc2lvbiAlcy5cbiIpLCAkcHJvZ25hbWUsICR2ZXJzaW9uOworICAgIGV4aXQ7Cit9CisKK3N1YiB1c2FnZSB7CisgICAgcHJpbnRmIF9nKAorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSA8YmluYXJ5cGF0aD4gWzxvdmVycmlkZWZpbGU+IFs8cGF0aHByZWZpeD5dXSA+IFBhY2thZ2VzCisKK09wdGlvbnM6CisgIC10LCAtLXR5cGUgPHR5cGU+ICAgICAgICBzY2FuIGZvciA8dHlwZT4gcGFja2FnZXMgKGRlZmF1bHQgaXMgJ2RlYicpLgorICAtdSwgLS11ZGViICAgICAgICAgICAgICAgc2NhbiBmb3IgdWRlYnMgKG9ic29sZXRlIGFsaWFzIGZvciAtdHVkZWIpLgorICAtYSwgLS1hcmNoIDxhcmNoPiAgICAgICAgYXJjaGl0ZWN0dXJlIHRvIHNjYW4gZm9yLgorICAtbSwgLS1tdWx0aXZlcnNpb24gICAgICAgYWxsb3cgbXVsdGlwbGUgdmVyc2lvbnMgb2YgYSBzaW5nbGUgcGFja2FnZS4KKyAgLWUsIC0tZXh0cmEtb3ZlcnJpZGUgPGZpbGU+CisgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2UgZXh0cmEgb3ZlcnJpZGUgZmlsZS4KKyAgLU0sIC0tbWVkaXVtIDxtZWRpdW0+ICAgIGFkZCBYLU1lZGl1bSBmaWVsZCBmb3IgZHNlbGVjdCBtdWx0aWNkIGFjY2VzcyBtZXRob2QKKyAgLWgsIC0taGVscCAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuCisgICAgICAtLXZlcnNpb24gICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLgorIiksICRwcm9nbmFtZTsKK30KKworc3ViIHNldF90eXBlX3VkZWIoKQoreworICAgIHdhcm5pbmcoX2coIi11LCAtLXVkZWIgb3B0aW9uIGlzIGRlcHJlY2F0ZWQgKHNlZSBSRUFETUUuZmVhdHVyZS1yZW1vdmFsLXNjaGVkdWxlKSIpKTsKKyAgICAkb3B0aW9uc3t0eXBlfSA9ICd1ZGViJzsKK30KKworc3ViIGxvYWRfb3ZlcnJpZGUKK3sKKyAgICBteSAkb3ZlcnJpZGUgPSBzaGlmdDsKKyAgICBteSAkY29tcF9maWxlID0gRHBrZzo6Q29tcHJlc3Npb246OkZpbGVIYW5kbGUtPm5ldyhmaWxlbmFtZSA9PiAkb3ZlcnJpZGUpOworCisgICAgd2hpbGUgKDwkY29tcF9maWxlPikgeworCXMvXCMuKi8vOworCXMvXHMrJC8vOworCW5leHQgdW5sZXNzICRfOworCisJbXkgKCRwLCAkcHJpb3JpdHksICRzZWN0aW9uLCAkbWFpbnRhaW5lcikgPSBzcGxpdCgvXHMrLywgJF8sIDQpOworCisJaWYgKG5vdCBkZWZpbmVkKCRwYWNrYWdlc3skcH0pKSB7CisJICAgIHB1c2goQHNwdXJpb3Vzb3ZlciwgJHApOworCSAgICBuZXh0OworCX0KKworCWZvciBteSAkcGFja2FnZSAoQHskcGFja2FnZXN7JHB9fSkgeworCSAgICBpZiAoJG1haW50YWluZXIpIHsKKwkJaWYgKCRtYWludGFpbmVyID1+IG0vKC4rPylccyo9XD5ccyooLispLykgeworCQkgICAgbXkgJG9sZG1haW50ID0gJDE7CisJCSAgICBteSAkbmV3bWFpbnQgPSAkMjsKKwkJICAgIG15ICRkZWJtYWludCA9ICQkcGFja2FnZXtNYWludGFpbmVyfTsKKwkJICAgIGlmICghZ3JlcCgkZGVibWFpbnQgZXEgJF8sIHNwbGl0KG06XHMqLy9ccyo6LCAkb2xkbWFpbnQpKSkgeworCQkJcHVzaChAY2hhbmdlZG1haW50LAorCQkJICAgICBzcHJpbnRmKF9nKCIgICVzIChwYWNrYWdlIHNheXMgJXMsIG5vdCAlcykiKSwKKwkJCSAgICAgICAgICAgICAkcCwgJCRwYWNrYWdle01haW50YWluZXJ9LCAkb2xkbWFpbnQpKTsKKwkJICAgIH0gZWxzZSB7CisJCQkkJHBhY2thZ2V7TWFpbnRhaW5lcn0gPSAkbmV3bWFpbnQ7CisJCSAgICB9CisJCX0gZWxzaWYgKCQkcGFja2FnZXtNYWludGFpbmVyfSBlcSAkbWFpbnRhaW5lcikgeworCQkgICAgcHVzaChAc2FtZW1haW50LCAiICAkcCAoJG1haW50YWluZXIpIik7CisJCX0gZWxzZSB7CisJCSAgICB3YXJuaW5nKF9nKCJVbmNvbmRpdGlvbmFsIG1haW50YWluZXIgb3ZlcnJpZGUgZm9yICVzIiksICRwKTsKKwkJICAgICQkcGFja2FnZXtNYWludGFpbmVyfSA9ICRtYWludGFpbmVyOworCQl9CisJICAgIH0KKwkgICAgJCRwYWNrYWdle1ByaW9yaXR5fSA9ICRwcmlvcml0eTsKKwkgICAgJCRwYWNrYWdle1NlY3Rpb259ID0gJHNlY3Rpb247CisJfQorCSRvdmVycmlkZGVueyRwfSA9IDE7CisgICAgfQorCisgICAgY2xvc2UoJGNvbXBfZmlsZSk7Cit9CisKK3N1YiBsb2FkX292ZXJyaWRlX2V4dHJhCit7CisgICAgbXkgJGV4dHJhX292ZXJyaWRlID0gc2hpZnQ7CisgICAgbXkgJGNvbXBfZmlsZSA9IERwa2c6OkNvbXByZXNzaW9uOjpGaWxlSGFuZGxlLT5uZXcoZmlsZW5hbWUgPT4gJGV4dHJhX292ZXJyaWRlKTsKKworICAgIHdoaWxlICg8JGNvbXBfZmlsZT4pIHsKKwlzL1wjLiovLzsKKwlzL1xzKyQvLzsKKwluZXh0IHVubGVzcyAkXzsKKworCW15ICgkcCwgJGZpZWxkLCAkdmFsdWUpID0gc3BsaXQoL1xzKy8sICRfLCAzKTsKKworCW5leHQgdW5sZXNzIGRlZmluZWQoJHBhY2thZ2VzeyRwfSk7CisKKwlmb3IgbXkgJHBhY2thZ2UgKEB7JHBhY2thZ2VzeyRwfX0pIHsKKwkgICAgJCRwYWNrYWdleyRmaWVsZH0gPSAkdmFsdWU7CisJfQorICAgIH0KKworICAgIGNsb3NlKCRjb21wX2ZpbGUpOworfQorCit1c2FnZSgpIGFuZCBleGl0IDEgaWYgbm90ICRyZXN1bHQ7CisKK2lmIChub3QgQEFSR1YgPj0gMSAmJiBAQVJHViA8PSAzKSB7CisgICAgdXNhZ2VlcnIoX2coIm9uZSB0byB0aHJlZSBhcmd1bWVudHMgZXhwZWN0ZWQiKSk7Cit9CisKK215ICR0eXBlID0gZGVmaW5lZCgkb3B0aW9uc3t0eXBlfSkgPyAkb3B0aW9uc3t0eXBlfSA6ICdkZWInOworbXkgJGFyY2ggPSAkb3B0aW9uc3thcmNofTsKKworbXkgQGZpbmRfYXJnczsKK2lmICgkb3B0aW9uc3thcmNofSkgeworICAgICBAZmluZF9hcmdzID0gKCcoJywgJy1uYW1lJywgIipfYWxsLiR0eXBlIiwgJy1vJywKKwkJCSctbmFtZScsICIqXyR7YXJjaH0uJHR5cGUiLCAnKScpOworfQorZWxzZSB7CisgICAgIEBmaW5kX2FyZ3MgPSAoJy1uYW1lJywgIiouJHR5cGUiKTsKK30KKworbXkgKCRiaW5hcnlkaXIsICRvdmVycmlkZSwgJHBhdGhwcmVmaXgpID0gQEFSR1Y7CisKKy1kICRiaW5hcnlkaXIgb3IgZXJyb3IoX2coIkJpbmFyeSBkaXIgJXMgbm90IGZvdW5kIiksICRiaW5hcnlkaXIpOworZGVmaW5lZCgkb3ZlcnJpZGUpIGFuZCAoLWUgJG92ZXJyaWRlIG9yCisgICAgZXJyb3IoX2coIk92ZXJyaWRlIGZpbGUgJXMgbm90IGZvdW5kIiksICRvdmVycmlkZSkpOworCiskcGF0aHByZWZpeCA9ICcnIGlmIG5vdCBkZWZpbmVkICRwYXRocHJlZml4OworCitteSAkZmluZF9oID0gbmV3IElPOjpIYW5kbGU7CitvcGVuKCRmaW5kX2gsICctfCcsICdmaW5kJywgJy1MJywgIiRiaW5hcnlkaXIvIiwgQGZpbmRfYXJncywgJy1wcmludCcpCisgICAgIG9yIHN5c2VycihfZygiQ291bGRuJ3Qgb3BlbiAlcyBmb3IgcmVhZGluZyIpLCAkYmluYXJ5ZGlyKTsKK0ZJTEU6CisgICAgd2hpbGUgKDwkZmluZF9oPikgeworCWNob21wOworCW15ICRmbiA9ICRfOworCW15ICRvdXRwdXQ7CisJbXkgJHBpZCA9IHNwYXduKCdleGVjJyA9PiBbICJkcGtnLWRlYiIsICItSSIsICRmbiwgImNvbnRyb2wiIF0sCisJCQkndG9fcGlwZScgPT4gXCRvdXRwdXQpOworCW15ICRmaWVsZHMgPSBEcGtnOjpDb250cm9sLT5uZXcodHlwZSA9PiBDVFJMX0lOREVYX1BLRyk7CisJJGZpZWxkcy0+cGFyc2UoJG91dHB1dCwgJGZuKQorCSAgICBvciBlcnJvcihfZygiY291bGRuJ3QgcGFyc2UgY29udHJvbCBpbmZvcm1hdGlvbiBmcm9tICVzLiIpLCAkZm4pOworCXdhaXRfY2hpbGQoJHBpZCwgbm9fY2hlY2sgPT4gMSk7CisJaWYgKCQ/KSB7CisJICAgIHdhcm5pbmcoX2coIlxgZHBrZy1kZWIgLUkgJXMgY29udHJvbCcgZXhpdGVkIHdpdGggJWQsIHNraXBwaW5nIHBhY2thZ2UiKSwKKwkgICAgICAgICAgICAkZm4sICQ/KTsKKwkgICAgbmV4dDsKKwl9CisJCisJZGVmaW5lZCgkZmllbGRzLT57J1BhY2thZ2UnfSkKKwkgICAgb3IgZXJyb3IoX2coIk5vIFBhY2thZ2UgZmllbGQgaW4gY29udHJvbCBmaWxlIG9mICVzIiksICRmbik7CisJbXkgJHAgPSAkZmllbGRzLT57J1BhY2thZ2UnfTsKKwkKKwlpZiAoZGVmaW5lZCgkcGFja2FnZXN7JHB9KSBhbmQgbm90ICRvcHRpb25ze211bHRpdmVyc2lvbn0pIHsKKwkgICAgZm9yZWFjaCAoQHskcGFja2FnZXN7JHB9fSkgeworCQlpZiAodmVyc2lvbl9jb21wYXJlX3JlbGF0aW9uKCRmaWVsZHMtPnsnVmVyc2lvbid9LCBSRUxfR1QsCisJCQkJCSAgICAgJF8tPnsnVmVyc2lvbid9KSkKKyAgICAgICAgICAgICAgICB7CisJCSAgICB3YXJuaW5nKF9nKCJQYWNrYWdlICVzIChmaWxlbmFtZSAlcykgaXMgcmVwZWF0IGJ1dCBuZXdlciB2ZXJzaW9uOyIpLAorCQkgICAgICAgICAgICAkcCwgJGZuKTsKKwkJICAgIHdhcm5pbmcoX2coInVzZWQgdGhhdCBvbmUgYW5kIGlnbm9yZWQgZGF0YSBmcm9tICVzISIpLAorCQkgICAgICAgICAgICAkXy0+e0ZpbGVuYW1lfSk7CisJCSAgICAkcGFja2FnZXN7JHB9ID0gW107CisJCX0gZWxzZSB7CisJCSAgICB3YXJuaW5nKF9nKCJQYWNrYWdlICVzIChmaWxlbmFtZSAlcykgaXMgcmVwZWF0OyIpLCAkcCwgJGZuKTsKKwkJICAgIHdhcm5pbmcoX2coImlnbm9yZWQgdGhhdCBvbmUgYW5kIHVzaW5nIGRhdGEgZnJvbSAlcyEiKSwKKwkJICAgICAgICAgICAgJF8tPntGaWxlbmFtZX0pOworCQkgICAgbmV4dCBGSUxFOworCQl9CisJICAgIH0KKwl9CisJd2FybmluZyhfZygiUGFja2FnZSAlcyAoZmlsZW5hbWUgJXMpIGhhcyBGaWxlbmFtZSBmaWVsZCEiKSwgJHAsICRmbikKKwkgICAgaWYgZGVmaW5lZCgkZmllbGRzLT57J0ZpbGVuYW1lJ30pOworCQorCSRmaWVsZHMtPnsnRmlsZW5hbWUnfSA9ICIkcGF0aHByZWZpeCRmbiI7CisJCisgICAgICAgIG15ICRzdW1zID0gRHBrZzo6Q2hlY2tzdW1zLT5uZXcoKTsKKwkkc3Vtcy0+YWRkX2Zyb21fZmlsZSgkZm4pOworICAgICAgICBmb3JlYWNoIG15ICRhbGcgKGNoZWNrc3Vtc19nZXRfbGlzdCgpKSB7CisgICAgICAgICAgICBpZiAoJGFsZyBlcSAibWQ1IikgeworCSAgICAgICAgJGZpZWxkcy0+eydNRDVzdW0nfSA9ICRzdW1zLT5nZXRfY2hlY2tzdW0oJGZuLCAkYWxnKTsKKyAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgJGZpZWxkcy0+eyRhbGd9ID0gJHN1bXMtPmdldF9jaGVja3N1bSgkZm4sICRhbGcpOworICAgICAgICAgICAgfQorICAgICAgICB9CisJJGZpZWxkcy0+eydTaXplJ30gPSAkc3Vtcy0+Z2V0X3NpemUoJGZuKTsKKyAgICAgICAgJGZpZWxkcy0+eydYLU1lZGl1bSd9ID0gJG9wdGlvbnN7bWVkaXVtfSBpZiBkZWZpbmVkICRvcHRpb25ze21lZGl1bX07CisJCisJcHVzaCBAeyRwYWNrYWdlc3skcH19LCAkZmllbGRzOworICAgIH0KK2Nsb3NlKCRmaW5kX2gpOworCitsb2FkX292ZXJyaWRlKCRvdmVycmlkZSkgaWYgZGVmaW5lZCAkb3ZlcnJpZGU7Citsb2FkX292ZXJyaWRlX2V4dHJhKCRvcHRpb25zeydleHRyYS1vdmVycmlkZSd9KSBpZiBkZWZpbmVkICRvcHRpb25zeydleHRyYS1vdmVycmlkZSd9OworCitteSBAbWlzc2luZ292ZXI9KCk7CisKK215ICRyZWNvcmRzX3dyaXR0ZW4gPSAwOworZm9yIG15ICRwIChzb3J0IGtleXMgJXBhY2thZ2VzKSB7CisgICAgaWYgKGRlZmluZWQoJG92ZXJyaWRlKSBhbmQgbm90IGRlZmluZWQoJG92ZXJyaWRkZW57JHB9KSkgeworICAgICAgICBwdXNoKEBtaXNzaW5nb3ZlciwkcCk7CisgICAgfQorICAgIGZvciBteSAkcGFja2FnZSAoQHskcGFja2FnZXN7JHB9fSkgeworCSBwcmludChTVERPVVQgIiRwYWNrYWdlXG4iKSBvciBzeXNlcnIoX2coIkZhaWxlZCB3aGVuIHdyaXRpbmcgc3Rkb3V0IikpOworICAgICAgICAgJHJlY29yZHNfd3JpdHRlbisrOworICAgIH0KK30KK2Nsb3NlKFNURE9VVCkgb3Igc3lzZXJyKF9nKCJDb3VsZG4ndCBjbG9zZSBzdGRvdXQiKSk7CisKK2lmIChAY2hhbmdlZG1haW50KSB7CisgICAgd2FybmluZyhfZygiUGFja2FnZXMgaW4gb3ZlcnJpZGUgZmlsZSB3aXRoIGluY29ycmVjdCBvbGQgbWFpbnRhaW5lciB2YWx1ZToiKSk7CisgICAgd2FybmluZygkXykgZm9yZWFjaCAoQGNoYW5nZWRtYWludCk7Cit9CitpZiAoQHNhbWVtYWludCkgeworICAgIHdhcm5pbmcoX2coIlBhY2thZ2VzIHNwZWNpZnlpbmcgc2FtZSBtYWludGFpbmVyIGFzIG92ZXJyaWRlIGZpbGU6IikpOworICAgIHdhcm5pbmcoJF8pIGZvcmVhY2ggKEBzYW1lbWFpbnQpOworfQoraWYgKEBtaXNzaW5nb3ZlcikgeworICAgIHdhcm5pbmcoX2coIlBhY2thZ2VzIGluIGFyY2hpdmUgYnV0IG1pc3NpbmcgZnJvbSBvdmVycmlkZSBmaWxlOiIpKTsKKyAgICB3YXJuaW5nKCIgICVzIiwgam9pbignICcsIEBtaXNzaW5nb3ZlcikpOworfQoraWYgKEBzcHVyaW91c292ZXIpIHsKKyAgICB3YXJuaW5nKF9nKCJQYWNrYWdlcyBpbiBvdmVycmlkZSBmaWxlIGJ1dCBub3QgaW4gYXJjaGl2ZToiKSk7CisgICAgd2FybmluZygiICAlcyIsIGpvaW4oJyAnLCBAc3B1cmlvdXNvdmVyKSk7Cit9CisKK2luZm8oX2coIldyb3RlICVzIGVudHJpZXMgdG8gb3V0cHV0IFBhY2thZ2VzIGZpbGUuIiksICRyZWNvcmRzX3dyaXR0ZW4pOwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL2Rwa2ctc2NhbnNvdXJjZXMucGwgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvZHBrZy1zY2Fuc291cmNlcy5wbApuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwLi43NzdmZWMzCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL2Rwa2ctc2NhbnNvdXJjZXMucGwKQEAgLTAsMCArMSwzNTMgQEAKKyMhL3Vzci9iaW4vcGVybAorIworIyBDb3B5cmlnaHQgwqkgMTk5OSBSb2RlcmljayBTY2hlcnRsZXIKKyMgQ29weXJpZ2h0IMKpIDIwMDIgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKyMgQ29weXJpZ2h0IMKpIDIwMDYtMjAwOSBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CisjCisjIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisjIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisjIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yIChhdAorIyB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisjCisjIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisjIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisjCisjIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisjIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorCit1c2Ugc3RyaWN0OwordXNlIHdhcm5pbmdzOworCit1c2UgR2V0b3B0OjpMb25nIHF3KDpjb25maWcgcG9zaXhfZGVmYXVsdCBidW5kbGluZyBub19pZ25vcmVjYXNlKTsKKwordXNlIERwa2c7Cit1c2UgRHBrZzo6R2V0dGV4dDsKK3VzZSBEcGtnOjpFcnJvckhhbmRsaW5nOwordXNlIERwa2c6OkNvbnRyb2w7Cit1c2UgRHBrZzo6Q2hlY2tzdW1zOwordXNlIERwa2c6OkNvbXByZXNzaW9uOjpGaWxlSGFuZGxlOwordXNlIERwa2c6OkNvbXByZXNzaW9uOworCit0ZXh0ZG9tYWluKCJkcGtnLWRldiIpOworCisjIEVycm9ycyB3aXRoIGEgc2luZ2xlIHBhY2thZ2UgYXJlIHdhcm5lZCBhYm91dCBidXQgZG9uJ3QgYWZmZWN0IHRoZQorIyBleGl0IGNvZGUuIE9ubHkgZXJyb3JzIHdoaWNoIGFmZmVjdCBldmVyeXRoaW5nIGNhdXNlIGEgbm9uLXplcm8gZXhpdC4KK215ICRFeGl0ID0gMDsKKworIyAlT3ZlcnJpZGUgaXMgYSBoYXNoIG9mIGxpc3RzLiAgVGhlIHN1YnMgZm9sbG93aW5nIGRlc2NyaWJlIHdoYXQncyBpbgorIyB0aGUgbGlzdHMuCisKK215ICVPdmVycmlkZTsKK3N1YiBPX1BSSU9SSVRZCQkoKSB7IDAgfQorc3ViIE9fU0VDVElPTgkJKCkgeyAxIH0KK3N1YiBPX01BSU5UX0ZST00JKCkgeyAyIH0gIyB1bmRlZiBmb3Igbm9uLXNwZWNpZmljLCBlbHNlIGxpc3RyZWYKK3N1YiBPX01BSU5UX1RPCQkoKSB7IDMgfSAjIHVuZGVmIGlmIHRoZXJlJ3Mgbm8gbWFpbnQgb3ZlcnJpZGUKK215ICVFeHRyYV9PdmVycmlkZTsKKworbXkgJVByaW9yaXR5ID0gKAorICAgICAnZXh0cmEnCQk9PiAxLAorICAgICAnb3B0aW9uYWwnCQk9PiAyLAorICAgICAnc3RhbmRhcmQnCQk9PiAzLAorICAgICAnaW1wb3J0YW50Jwk9PiA0LAorICAgICAncmVxdWlyZWQnCQk9PiA1LAorKTsKKworIyBTd2l0Y2hlcworCitteSAkRGVidWcJPSAwOworbXkgJE5vX3NvcnQJPSAwOworbXkgJFNyY19vdmVycmlkZSA9IHVuZGVmOworbXkgJEV4dHJhX292ZXJyaWRlX2ZpbGUgPSB1bmRlZjsKKworbXkgQE9wdGlvbl9zcGVjID0gKAorICAgICdkZWJ1ZyEnCQk9PiBcJERlYnVnLAorICAgICdoZWxwIScJCT0+IFwmdXNhZ2UsCisgICAgJ25vLXNvcnR8bicJCT0+IFwkTm9fc29ydCwKKyAgICAnc291cmNlLW92ZXJyaWRlfHM9cycgPT4gXCRTcmNfb3ZlcnJpZGUsCisgICAgJ2V4dHJhLW92ZXJyaWRlfGU9cycgPT4gXCRFeHRyYV9vdmVycmlkZV9maWxlLAorICAgICd2ZXJzaW9uJwkJPT4gXCZ2ZXJzaW9uLAorKTsKKworc3ViIGRlYnVnIHsKKyAgICBwcmludCBAXywgIlxuIiBpZiAkRGVidWc7Cit9CisKK3N1YiB2ZXJzaW9uIHsKKyAgICBwcmludGYgX2coIkRlYmlhbiAlcyB2ZXJzaW9uICVzLlxuIiksICRwcm9nbmFtZSwgJHZlcnNpb247CisgICAgZXhpdDsKK30KKworc3ViIHVzYWdlIHsKKyAgICBwcmludGYgX2coCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIDxiaW5hcnlwYXRoPiBbPG92ZXJyaWRlZmlsZT4gWzxwYXRocHJlZml4Pl1dID4gU291cmNlcworCitPcHRpb25zOgorICAtbiwgLS1uby1zb3J0ICAgICAgICAgICAgZG9uJ3Qgc29ydCBieSBwYWNrYWdlIGJlZm9yZSBvdXRwdXR0aW5nLgorICAtZSwgLS1leHRyYS1vdmVycmlkZSA8ZmlsZT4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzZSBleHRyYSBvdmVycmlkZSBmaWxlLgorICAtcywgLS1zb3VyY2Utb3ZlcnJpZGUgPGZpbGU+CisgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2UgZmlsZSBmb3IgYWRkaXRpb25hbCBzb3VyY2Ugb3ZlcnJpZGVzLCBkZWZhdWx0CisgICAgICAgICAgICAgICAgICAgICAgICAgICBpcyByZWd1bGFyIG92ZXJyaWRlIGZpbGUgd2l0aCAuc3JjIGFwcGVuZGVkLgorICAgICAgLS1kZWJ1ZyAgICAgICAgICAgICAgdHVybiBkZWJ1Z2dpbmcgb24uCisgICAgICAtLWhlbHAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLgorICAgICAgLS12ZXJzaW9uICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi4KKworU2VlIHRoZSBtYW4gcGFnZSBmb3IgdGhlIGZ1bGwgZG9jdW1lbnRhdGlvbi4KKyIpLCAkcHJvZ25hbWU7CisKKyAgICBleGl0OworfQorCitzdWIgY2xvc2VfbXNnIHsKKyAgICBteSAkbmFtZSA9IHNoaWZ0OworICAgIHJldHVybiBzcHJpbnRmKF9nKCJlcnJvciBjbG9zaW5nICVzIChcJD8gJWQsIFwkISBgJXMnKSIpLAorICAgICAgICAgICAgICAgICAgICRuYW1lLCAkPywgJCEpLiJcbiI7Cit9CisKK3N1YiBsb2FkX292ZXJyaWRlIHsKKyAgICBteSAkZmlsZSA9IHNoaWZ0OworICAgIGxvY2FsICRfOworCisgICAgbXkgJGNvbXBfZmlsZSA9IERwa2c6OkNvbXByZXNzaW9uOjpGaWxlSGFuZGxlLT5uZXcoZmlsZW5hbWUgPT4gJGZpbGUpOworICAgIHdoaWxlICg8JGNvbXBfZmlsZT4pIHsKKyAgICAJcy8jLiovLzsKKwluZXh0IGlmIC9eXHMqJC87CisJcy9ccyskLy87CisKKwlteSBAZGF0YSA9IHNwbGl0ICcgJywgJF8sIDQ7CisJdW5sZXNzIChAZGF0YSA9PSAzIHx8IEBkYXRhID09IDQpIHsKKwkgICAgd2FybmluZyhfZygiaW52YWxpZCBvdmVycmlkZSBlbnRyeSBhdCBsaW5lICVkICglZCBmaWVsZHMpIiksCisJICAgICAgICAgICAgJC4sIDAgKyBAZGF0YSk7CisJICAgIG5leHQ7CisJfQorCW15ICgkcGFja2FnZSwgJHByaW9yaXR5LCAkc2VjdGlvbiwgJG1haW50YWluZXIpID0gQGRhdGE7CisJaWYgKGV4aXN0cyAkT3ZlcnJpZGV7JHBhY2thZ2V9KSB7CisJICAgIHdhcm5pbmcoX2coImlnbm9yaW5nIGR1cGxpY2F0ZSBvdmVycmlkZSBlbnRyeSBmb3IgJXMgYXQgbGluZSAlZCIpLAorCSAgICAgICAgICAgICRwYWNrYWdlLCAkLik7CisJICAgIG5leHQ7CisJfQorCWlmICghJFByaW9yaXR5eyRwcmlvcml0eX0pIHsKKwkgICAgd2FybmluZyhfZygiaWdub3Jpbmcgb3ZlcnJpZGUgZW50cnkgZm9yICVzLCBpbnZhbGlkIHByaW9yaXR5ICVzIiksCisJICAgICAgICAgICAgJHBhY2thZ2UsICRwcmlvcml0eSk7CisJICAgIG5leHQ7CisJfQorCisJJE92ZXJyaWRleyRwYWNrYWdlfSA9IFtdOworCSRPdmVycmlkZXskcGFja2FnZX1bT19QUklPUklUWV0gPSAkcHJpb3JpdHk7CisJJE92ZXJyaWRleyRwYWNrYWdlfVtPX1NFQ1RJT05dID0gJHNlY3Rpb247CisJaWYgKCFkZWZpbmVkICRtYWludGFpbmVyKSB7CisJICAgICMgZG8gbm90aGluZworCX0KKwllbHNpZiAoJG1haW50YWluZXIgPX4gL14oLipcUylccyo9PlxzKiguKikkLykgeworCSAgICAkT3ZlcnJpZGV7JHBhY2thZ2V9W09fTUFJTlRfRlJPTV0gPSBbc3BsaXQgbS1ccyovL1xzKi0sICQxXTsKKwkgICAgJE92ZXJyaWRleyRwYWNrYWdlfVtPX01BSU5UX1RPXSA9ICQyOworCX0KKwllbHNlIHsKKwkgICAgJE92ZXJyaWRleyRwYWNrYWdlfVtPX01BSU5UX1RPXSA9ICRtYWludGFpbmVyOworCX0KKyAgICB9CisgICAgY2xvc2UoJGNvbXBfZmlsZSk7Cit9CisKK3N1YiBsb2FkX3NyY19vdmVycmlkZSB7CisgICAgbXkgKCR1c2VyX2ZpbGUsICRyZWd1bGFyX2ZpbGUpID0gQF87CisgICAgbXkgKCRmaWxlKTsKKyAgICBsb2NhbCAkXzsKKworICAgIGlmIChkZWZpbmVkICR1c2VyX2ZpbGUpIHsKKwkkZmlsZSA9ICR1c2VyX2ZpbGU7CisgICAgfQorICAgIGVsc2lmIChkZWZpbmVkICRyZWd1bGFyX2ZpbGUpIHsKKyAgICAgICAgbXkgJGNvbXAgPSBjb21wcmVzc2lvbl9ndWVzc19mcm9tX2ZpbGVuYW1lKCRyZWd1bGFyX2ZpbGUpOworICAgICAgICBpZiAoZGVmaW5lZCgkY29tcCkpIHsKKwkgICAgJGZpbGUgPSAkcmVndWxhcl9maWxlOworCSAgICBteSAkZXh0ID0gY29tcHJlc3Npb25fZ2V0X3Byb3BlcnR5KCRjb21wLCAiZmlsZV9leHQiKTsKKyAgICAgICAgICAgICRmaWxlID1+IHMvXC4kZXh0JC8uc3JjLiRleHQvOworICAgICAgICB9IGVsc2UgeworCSAgICAkZmlsZSA9ICIkcmVndWxhcl9maWxlLnNyYyI7CisgICAgICAgIH0KKyAgICAgICAgcmV0dXJuIHVubGVzcyAtZSAkZmlsZTsKKyAgICB9CisgICAgZWxzZSB7CisJcmV0dXJuOworICAgIH0KKworICAgIGRlYnVnICJzb3VyY2Ugb3ZlcnJpZGUgZmlsZSAkZmlsZSI7CisgICAgbXkgJGNvbXBfZmlsZSA9IERwa2c6OkNvbXByZXNzaW9uOjpGaWxlSGFuZGxlLT5uZXcoZmlsZW5hbWUgPT4gJGZpbGUpOworICAgIHdoaWxlICg8JGNvbXBfZmlsZT4pIHsKKyAgICAJcy8jLiovLzsKKwluZXh0IGlmIC9eXHMqJC87CisJcy9ccyskLy87CisKKwlteSBAZGF0YSA9IHNwbGl0ICcgJywgJF87CisJdW5sZXNzIChAZGF0YSA9PSAyKSB7CisJICAgIHdhcm5pbmcoX2coImludmFsaWQgc291cmNlIG92ZXJyaWRlIGVudHJ5IGF0IGxpbmUgJWQgKCVkIGZpZWxkcykiKSwKKwkgICAgICAgICAgICAkLiwgMCArIEBkYXRhKTsKKwkgICAgbmV4dDsKKwl9CisKKwlteSAoJHBhY2thZ2UsICRzZWN0aW9uKSA9IEBkYXRhOworCW15ICRrZXkgPSAic291cmNlLyRwYWNrYWdlIjsKKwlpZiAoZXhpc3RzICRPdmVycmlkZXska2V5fSkgeworCSAgICB3YXJuaW5nKF9nKCJpZ25vcmluZyBkdXBsaWNhdGUgc291cmNlIG92ZXJyaWRlIGVudHJ5IGZvciAlcyBhdCBsaW5lICVkIiksCisJICAgICAgICAgICAgJHBhY2thZ2UsICQuKTsKKwkgICAgbmV4dDsKKwl9CisJJE92ZXJyaWRleyRrZXl9ID0gW107CisJJE92ZXJyaWRleyRrZXl9W09fU0VDVElPTl0gPSAkc2VjdGlvbjsKKyAgICB9CisgICAgY2xvc2UoJGNvbXBfZmlsZSk7Cit9CisKK3N1YiBsb2FkX292ZXJyaWRlX2V4dHJhCit7CisgICAgbXkgJGV4dHJhX292ZXJyaWRlID0gc2hpZnQ7CisgICAgbXkgJGNvbXBfZmlsZSA9IERwa2c6OkNvbXByZXNzaW9uOjpGaWxlSGFuZGxlLT5uZXcoZmlsZW5hbWUgPT4gJGV4dHJhX292ZXJyaWRlKTsKKworICAgIHdoaWxlICg8JGNvbXBfZmlsZT4pIHsKKwlzL1wjLiovLzsKKwlzL1xzKyQvLzsKKwluZXh0IHVubGVzcyAkXzsKKworCW15ICgkcCwgJGZpZWxkLCAkdmFsdWUpID0gc3BsaXQoL1xzKy8sICRfLCAzKTsKKyAgICAgICAgJEV4dHJhX092ZXJyaWRleyRwfXskZmllbGR9ID0gJHZhbHVlOworICAgIH0KKyAgICBjbG9zZSgkY29tcF9maWxlKTsKK30KKworIyBHaXZlbiBQUkVGSVggYW5kIERTQy1GSUxFLCBwcm9jZXNzIHRoZSBmaWxlIGFuZCByZXR1cm5zIHRoZSBmaWVsZHMuCisKK3N1YiBwcm9jZXNzX2RzYyB7CisgICAgbXkgKCRwcmVmaXgsICRmaWxlKSA9IEBfOworCisgICAgbXkgJGJhc2VuYW1lID0gJGZpbGU7CisgICAgbXkgJGRpciA9ICgkYmFzZW5hbWUgPX4gc3teKC4qKS99e30pID8gJDEgOiAnJzsKKyAgICAkZGlyID0gIiRwcmVmaXgkZGlyIjsKKyAgICAkZGlyID1+IHMtLyskLS07CisgICAgJGRpciA9ICcuJyBpZiAkZGlyIGVxICcnOworCisgICAgIyBQYXJzZSDigJguZHNj4oCZIGZpbGUuCisgICAgbXkgJGZpZWxkcyA9IERwa2c6OkNvbnRyb2wtPm5ldyh0eXBlID0+IENUUkxfUEtHX1NSQyk7CisgICAgJGZpZWxkcy0+bG9hZCgkZmlsZSk7CisgICAgJGZpZWxkcy0+c2V0X29wdGlvbnModHlwZSA9PiBDVFJMX0lOREVYX1NSQyk7CisKKyAgICAjIEdldCBjaGVja3N1bXMKKyAgICBteSAkY2hlY2tzdW1zID0gRHBrZzo6Q2hlY2tzdW1zLT5uZXcoKTsKKyAgICAkY2hlY2tzdW1zLT5hZGRfZnJvbV9maWxlKCRmaWxlLCBrZXkgPT4gJGJhc2VuYW1lKTsKKyAgICAkY2hlY2tzdW1zLT5hZGRfZnJvbV9jb250cm9sKCRmaWVsZHMsIHVzZV9maWxlc19mb3JfbWQ1ID0+IDEpOworCisgICAgbXkgJHNvdXJjZSA9ICRmaWVsZHMtPntTb3VyY2V9OworICAgIG15IEBiaW5hcnkgPSBzcGxpdCAvXHMqLFxzKi8sICRmaWVsZHMtPntCaW5hcnl9OworCisgICAgZXJyb3IoX2coIm5vIGJpbmFyeSBwYWNrYWdlcyBzcGVjaWZpZWQgaW4gJXMiKSwgJGZpbGUpIHVubGVzcyAoQGJpbmFyeSk7CisKKyAgICAjIFJlbmFtZSB0aGUgc291cmNlIGZpZWxkIHRvIHBhY2thZ2UuCisgICAgJGZpZWxkcy0+e1BhY2thZ2V9ID0gJGZpZWxkcy0+e1NvdXJjZX07CisgICAgZGVsZXRlICRmaWVsZHMtPntTb3VyY2V9OworCisgICAgIyBUaGUgcHJpb3JpdHkgZm9yIHRoZSBzb3VyY2UgcGFja2FnZSBpcyB0aGUgaGlnaGVzdCBwcmlvcml0eSBvZiB0aGUKKyAgICAjIGJpbmFyeSBwYWNrYWdlcyBpdCBwcm9kdWNlcy4KKyAgICBteSBAYmluYXJ5X2J5X3ByaW9yaXR5ID0gc29ydCB7CisJICAgICgkT3ZlcnJpZGV7JGF9ID8gJFByaW9yaXR5eyRPdmVycmlkZXskYX1bT19QUklPUklUWV19IDogMCkKKwkJPD0+CisJICAgICgkT3ZlcnJpZGV7JGJ9ID8gJFByaW9yaXR5eyRPdmVycmlkZXskYn1bT19QUklPUklUWV19IDogMCkKKwl9IEBiaW5hcnk7CisgICAgbXkgJHByaW9yaXR5X292ZXJyaWRlID0gJE92ZXJyaWRleyRiaW5hcnlfYnlfcHJpb3JpdHlbLTFdfTsKKyAgICBteSAkcHJpb3JpdHkgPSAkcHJpb3JpdHlfb3ZlcnJpZGUKKwkJCT8gJHByaW9yaXR5X292ZXJyaWRlLT5bT19QUklPUklUWV0KKwkJCTogdW5kZWY7CisgICAgJGZpZWxkcy0+e1ByaW9yaXR5fSA9ICRwcmlvcml0eSBpZiBkZWZpbmVkICRwcmlvcml0eTsKKworICAgICMgRm9yIHRoZSBzZWN0aW9uIG92ZXJyaWRlLCBmaXJzdCBjaGVjayBmb3IgYSByZWNvcmQgZnJvbSB0aGUgc291cmNlCisgICAgIyBvdmVycmlkZSBmaWxlLCBlbHNlIHVzZSB0aGUgcmVndWxhciBvdmVycmlkZSBmaWxlLgorICAgIG15ICRzZWN0aW9uX292ZXJyaWRlID0gJE92ZXJyaWRleyJzb3VyY2UvJHNvdXJjZSJ9IHx8ICRPdmVycmlkZXskc291cmNlfTsKKyAgICBteSAkc2VjdGlvbiA9ICRzZWN0aW9uX292ZXJyaWRlCisJCQk/ICRzZWN0aW9uX292ZXJyaWRlLT5bT19TRUNUSU9OXQorCQkJOiB1bmRlZjsKKyAgICAkZmllbGRzLT57U2VjdGlvbn0gPSAkc2VjdGlvbiBpZiBkZWZpbmVkICRzZWN0aW9uOworCisgICAgIyBGb3IgdGhlIG1haW50YWluZXIgb3ZlcnJpZGUsIHVzZSB0aGUgb3ZlcnJpZGUgcmVjb3JkIGZvciB0aGUgZmlyc3QKKyAgICAjIGJpbmFyeS4gTW9kaWZ5IHRoZSBtYWludGFpbmVyIGlmIG5lY2Vzc2FyeS4KKyAgICBteSAkbWFpbnRhaW5lcl9vdmVycmlkZSA9ICRPdmVycmlkZXskYmluYXJ5WzBdfTsKKyAgICBpZiAoJG1haW50YWluZXJfb3ZlcnJpZGUgJiYgZGVmaW5lZCAkbWFpbnRhaW5lcl9vdmVycmlkZS0+W09fTUFJTlRfVE9dKSB7CisgICAgICAgIGlmICghZGVmaW5lZCAkbWFpbnRhaW5lcl9vdmVycmlkZS0+W09fTUFJTlRfRlJPTV0gfHwKKyAgICAgICAgICAgIGdyZXAgeyAkZmllbGRzLT57TWFpbnRhaW5lcn0gZXEgJF8gfQorICAgICAgICAgICAgICAgIEB7ICRtYWludGFpbmVyX292ZXJyaWRlLT5bT19NQUlOVF9GUk9NXSB9KSB7CisgICAgICAgICAgICAkZmllbGRzLT57TWFpbnRhaW5lcn0gPSAkbWFpbnRhaW5lcl9vdmVycmlkZS0+W09fTUFJTlRfVE9dOworICAgICAgICB9CisgICAgfQorCisgICAgIyBQcm9jZXNzIGV4dHJhIG92ZXJyaWRlCisgICAgaWYgKGV4aXN0cyAkRXh0cmFfT3ZlcnJpZGV7JHNvdXJjZX0pIHsKKyAgICAgICAgbXkgKCRmaWVsZCwgJHZhbHVlKTsKKyAgICAgICAgd2hpbGUoKCRmaWVsZCwgJHZhbHVlKSA9IGVhY2ggJXskRXh0cmFfT3ZlcnJpZGV7JHNvdXJjZX19KSB7CisgICAgICAgICAgICAkZmllbGRzLT57JGZpZWxkfSA9ICR2YWx1ZTsKKyAgICAgICAgfQorICAgIH0KKworICAgICMgQSBkaXJlY3RvcnkgZmllbGQgd2lsbCBiZSBpbnNlcnRlZCBqdXN0IGJlZm9yZSB0aGUgZmlsZXMgZmllbGQuCisgICAgJGZpZWxkcy0+e0RpcmVjdG9yeX0gPSAkZGlyOworCisgICAgJGNoZWNrc3Vtcy0+ZXhwb3J0X3RvX2NvbnRyb2woJGZpZWxkcywgdXNlX2ZpbGVzX2Zvcl9tZDUgPT4gMSk7CisKKyAgICByZXR1cm4gJGZpZWxkczsKK30KKworc3ViIG1haW4geworICAgIG15IChAb3V0KTsKKworICAgIEdldE9wdGlvbnMoQE9wdGlvbl9zcGVjKSBvciB1c2FnZTsKKyAgICBAQVJHViA+PSAxICYmIEBBUkdWIDw9IDMgb3IgdXNhZ2VlcnIoX2coIm9uZSB0byB0aHJlZSBhcmd1bWVudHMgZXhwZWN0ZWQiKSk7CisKKyAgICBwdXNoIEBBUkdWLCB1bmRlZgkJaWYgQEFSR1YgPCAyOworICAgIHB1c2ggQEFSR1YsICcnCQlpZiBAQVJHViA8IDM7CisgICAgbXkgKCRkaXIsICRvdmVycmlkZSwgJHByZWZpeCkgPSBAQVJHVjsKKworICAgIGxvYWRfb3ZlcnJpZGUgJG92ZXJyaWRlIGlmIGRlZmluZWQgJG92ZXJyaWRlOworICAgIGxvYWRfc3JjX292ZXJyaWRlICRTcmNfb3ZlcnJpZGUsICRvdmVycmlkZTsKKyAgICBsb2FkX292ZXJyaWRlX2V4dHJhICRFeHRyYV9vdmVycmlkZV9maWxlIGlmIGRlZmluZWQgJEV4dHJhX292ZXJyaWRlX2ZpbGU7CisKKyAgICBvcGVuIEZJTkQsICJmaW5kIC1MIFxRJGRpclxFIC1uYW1lICcqLmRzYycgLXByaW50IHwiCisgICAgICAgIG9yIHN5c2VycihfZygiY2Fubm90IGZvcmsgZm9yICVzIiksICJmaW5kIik7CisgICAgd2hpbGUgKDxGSU5EPikgeworICAgIAljaG9tcDsKKwlzLV5cLi8rLS07CisKKyAgICAgICAgbXkgJGZpZWxkczsKKworICAgICAgICAjIEZJWE1FOiBGaXggaXQgaW5zdGVhZCB0byBub3QgZGllIG9uIHN5bnRheCBhbmQgZ2VuZXJhbCBlcnJvcnM/CisgICAgICAgIGV2YWwgeworICAgICAgICAgICAgJGZpZWxkcyA9IHByb2Nlc3NfZHNjKCRwcmVmaXgsICRfKTsKKyAgICAgICAgfTsKKyAgICAgICAgaWYgKCRAKSB7CisgICAgICAgICAgICB3YXJuICRAOworICAgICAgICAgICAgbmV4dDsKKyAgICAgICAgfQorCisJaWYgKCROb19zb3J0KSB7CisgICAgICAgICAgICAkZmllbGRzLT5vdXRwdXQoXCpTVERPVVQpOworICAgICAgICAgICAgcHJpbnQgIlxuIjsKKwl9CisJZWxzZSB7CisgICAgICAgICAgICBwdXNoIEBvdXQsICRmaWVsZHM7CisJfQorICAgIH0KKyAgICBjbG9zZSBGSU5EIG9yIGVycm9yKGNsb3NlX21zZywgJ2ZpbmQnKTsKKworICAgIGlmIChAb3V0KSB7CisgICAgICAgIG1hcCB7CisgICAgICAgICAgICAkXy0+b3V0cHV0KFwqU1RET1VUKTsKKyAgICAgICAgICAgIHByaW50ICJcbiI7CisgICAgICAgIH0gc29ydCB7CisgICAgICAgICAgICAkYS0+e1BhY2thZ2V9IGNtcCAkYi0+e1BhY2thZ2V9CisgICAgICAgIH0gQG91dDsKKyAgICB9CisKKyAgICByZXR1cm4gMDsKK30KKworJEV4aXQgPSBtYWluIHx8ICRFeGl0OworJEV4aXQgPSAxIGlmICRFeGl0IGFuZCBub3QgJEV4aXQgJSAyNTY7CitleGl0ICRFeGl0OwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsCm5ldyBmaWxlIG1vZGUgMTAwNzU1CmluZGV4IDAwMDAwMDAuLmM5MWRjOGMKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGwKQEAgLTAsMCArMSw4NTkgQEAKKyMhL3Vzci9iaW4vcGVybAorIworIyBkcGtnLXNobGliZGVwcworIworIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorIworIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorIworIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKwordXNlIHN0cmljdDsKK3VzZSB3YXJuaW5nczsKKwordXNlIFBPU0lYIHF3KDplcnJub19oIDpzaWduYWxfaCk7Cit1c2UgQ3dkIHF3KHJlYWxwYXRoKTsKK3VzZSBGaWxlOjpCYXNlbmFtZSBxdyhkaXJuYW1lKTsKKwordXNlIERwa2c7Cit1c2UgRHBrZzo6R2V0dGV4dDsKK3VzZSBEcGtnOjpFcnJvckhhbmRsaW5nOwordXNlIERwa2c6OlBhdGggcXcocmVsYXRpdmVfdG9fcGtnX3Jvb3QgZ3Vlc3NfcGtnX3Jvb3RfZGlyCisJCSAgY2hlY2tfZmlsZXNfYXJlX3RoZV9zYW1lIGdldF9jb250cm9sX3BhdGgpOwordXNlIERwa2c6OlZlcnNpb247Cit1c2UgRHBrZzo6U2hsaWJzIHF3KGZpbmRfbGlicmFyeSBAbGlicmFyeXBhdGhzKTsKK3VzZSBEcGtnOjpTaGxpYnM6Ok9iamR1bXA7Cit1c2UgRHBrZzo6U2hsaWJzOjpTeW1ib2xGaWxlOwordXNlIERwa2c6OkFyY2ggcXcoZ2V0X2hvc3RfYXJjaCk7Cit1c2UgRHBrZzo6RGVwczsKK3VzZSBEcGtnOjpDb250cm9sOjpJbmZvOwordXNlIERwa2c6OkNvbnRyb2w6OkZpZWxkczsKKworCit1c2UgY29uc3RhbnQgeworICAgIFdBUk5fU1lNX05PVF9GT1VORCA9PiAxLAorICAgIFdBUk5fREVQX0FWT0lEQUJMRSA9PiAyLAorICAgIFdBUk5fTk9UX05FRURFRCA9PiA0LAorfTsKKworIyBCeSBpbmNyZWFzaW5nIGltcG9ydGFuY2UKK215IEBkZXBmaWVsZHMgPSBxdyhTdWdnZXN0cyBSZWNvbW1lbmRzIERlcGVuZHMgUHJlLURlcGVuZHMpOworbXkgJGkgPSAwOyBteSAlZGVwc3RyZW5ndGggPSBtYXAgeyAkXyA9PiAkaSsrIH0gQGRlcGZpZWxkczsKKwordGV4dGRvbWFpbigiZHBrZy1kZXYiKTsKKworbXkgJHNobGlic292ZXJyaWRlID0gJy9ldGMvZHBrZy9zaGxpYnMub3ZlcnJpZGUnOworbXkgJHNobGlic2RlZmF1bHQgPSAnL2V0Yy9kcGtnL3NobGlicy5kZWZhdWx0JzsKK215ICRzaGxpYnNsb2NhbCA9ICdkZWJpYW4vc2hsaWJzLmxvY2FsJzsKK215ICRwYWNrYWdldHlwZSA9ICdkZWInOworbXkgJGRlcGVuZGVuY3lmaWVsZCA9ICdEZXBlbmRzJzsKK215ICR2YXJsaXN0ZmlsZSA9ICdkZWJpYW4vc3Vic3R2YXJzJzsKK215ICR2YXJuYW1lcHJlZml4ID0gJ3NobGlicyc7CitteSAkaWdub3JlX21pc3NpbmdfaW5mbyA9IDA7CitteSAkd2FybmluZ3MgPSAzOworbXkgJGRlYnVnID0gMDsKK215IEBleGNsdWRlID0gKCk7CitteSBAcGtnX2Rpcl90b19zZWFyY2ggPSAoKTsKK215ICRob3N0X2FyY2ggPSBnZXRfaG9zdF9hcmNoKCk7CisKK215IChAcGtnX3NobGlicywgQHBrZ19zeW1ib2xzLCBAcGtnX3Jvb3RfZGlycyk7CitpZiAoLWQgImRlYmlhbiIpIHsKKyAgICBwdXNoIEBwa2dfc3ltYm9scywgPGRlYmlhbi8qL0RFQklBTi9zeW1ib2xzPjsKKyAgICBwdXNoIEBwa2dfc2hsaWJzLCA8ZGViaWFuLyovREVCSUFOL3NobGlicz47CisgICAgbXkgJXVuaXEgPSBtYXAgeyBndWVzc19wa2dfcm9vdF9kaXIoJF8pID0+IDEgfSAoQHBrZ19zeW1ib2xzLCBAcGtnX3NobGlicyk7CisgICAgcHVzaCBAcGtnX3Jvb3RfZGlycywga2V5cyAldW5pcTsKK30KKworbXkgKCRzdGRvdXQsICVleGVjKTsKK2ZvcmVhY2ggKEBBUkdWKSB7CisgICAgaWYgKG0vXi1UKC4qKSQvKSB7CisJJHZhcmxpc3RmaWxlID0gJDE7CisgICAgfSBlbHNpZiAobS9eLXAoXHdbLTowLTlBLVphLXpdKikkLykgeworCSR2YXJuYW1lcHJlZml4ID0gJDE7CisgICAgfSBlbHNpZiAobS9eLUwoLiopJC8pIHsKKwkkc2hsaWJzbG9jYWwgPSAkMTsKKyAgICB9IGVsc2lmIChtL14tUyguKikkLykgeworCXB1c2ggQHBrZ19kaXJfdG9fc2VhcmNoLCAkMTsKKyAgICB9IGVsc2lmIChtL14tTyQvKSB7CisJJHN0ZG91dCA9IDE7CisgICAgfSBlbHNpZiAobS9eLShofC1oZWxwKSQvKSB7CisJdXNhZ2UoKTsgZXhpdCgwKTsKKyAgICB9IGVsc2lmIChtL14tLXZlcnNpb24kLykgeworCXZlcnNpb24oKTsgZXhpdCgwKTsKKyAgICB9IGVsc2lmIChtL14tLWFkbWluZGlyPSguKikkLykgeworCSRhZG1pbmRpciA9ICQxOworCS1kICRhZG1pbmRpciB8fAorCSAgICBlcnJvcihfZygiYWRtaW5pc3RyYXRpdmUgZGlyZWN0b3J5ICclcycgZG9lcyBub3QgZXhpc3QiKSwgJGFkbWluZGlyKTsKKwkkRU5WeydEUEtHX0FETUlORElSJ30gPSAkYWRtaW5kaXI7CisgICAgfSBlbHNpZiAobS9eLWQoLiopJC8pIHsKKwkkZGVwZW5kZW5jeWZpZWxkID0gZmllbGRfY2FwaXRhbGl6ZSgkMSk7CisJZGVmaW5lZCgkZGVwc3RyZW5ndGh7JGRlcGVuZGVuY3lmaWVsZH0pIHx8CisJICAgIHdhcm5pbmcoX2coInVucmVjb2duaXNlZCBkZXBlbmRlbmN5IGZpZWxkIFxgJXMnIiksICRkZXBlbmRlbmN5ZmllbGQpOworICAgIH0gZWxzaWYgKG0vXi1lKC4qKSQvKSB7CisJaWYgKGV4aXN0cyAkZXhlY3skMX0pIHsKKwkgICAgIyBBZmZlY3QgdGhlIGJpbmFyeSB0byB0aGUgbW9zdCBpbXBvcnRhbnQgZmllbGQKKwkgICAgaWYgKCRkZXBzdHJlbmd0aHskZGVwZW5kZW5jeWZpZWxkfSA+ICRkZXBzdHJlbmd0aHskZXhlY3skMX19KSB7CisJCSRleGVjeyQxfSA9ICRkZXBlbmRlbmN5ZmllbGQ7CisJICAgIH0KKwl9IGVsc2UgeworCSAgICAkZXhlY3skMX0gPSAkZGVwZW5kZW5jeWZpZWxkOworCX0KKyAgICB9IGVsc2lmIChtL14tLWlnbm9yZS1taXNzaW5nLWluZm8kLykgeworCSRpZ25vcmVfbWlzc2luZ19pbmZvID0gMTsKKyAgICB9IGVsc2lmIChtL14tLXdhcm5pbmdzPShcZCspJC8pIHsKKwkkd2FybmluZ3MgPSAkMTsKKyAgICB9IGVsc2lmIChtL14tdCguKikkLykgeworCSRwYWNrYWdldHlwZSA9ICQxOworICAgIH0gZWxzaWYgKG0vXi12JC8pIHsKKwkkZGVidWcrKzsKKyAgICB9IGVsc2lmIChtL14teCguKikkLykgeworCXB1c2ggQGV4Y2x1ZGUsICQxOworICAgIH0gZWxzaWYgKG0vXi0vKSB7CisJdXNhZ2VlcnIoX2coInVua25vd24gb3B0aW9uIFxgJXMnIiksICRfKTsKKyAgICB9IGVsc2UgeworCWlmIChleGlzdHMgJGV4ZWN7JF99KSB7CisJICAgICMgQWZmZWN0IHRoZSBiaW5hcnkgdG8gdGhlIG1vc3QgaW1wb3J0YW50IGZpZWxkCisJICAgIGlmICgkZGVwc3RyZW5ndGh7JGRlcGVuZGVuY3lmaWVsZH0gPiAkZGVwc3RyZW5ndGh7JGV4ZWN7JF99fSkgeworCQkkZXhlY3skX30gPSAkZGVwZW5kZW5jeWZpZWxkOworCSAgICB9CisJfSBlbHNlIHsKKwkgICAgJGV4ZWN7JF99ID0gJGRlcGVuZGVuY3lmaWVsZDsKKwl9CisgICAgfQorfQorCitzY2FsYXIga2V5cyAlZXhlYyB8fCB1c2FnZWVycihfZygibmVlZCBhdCBsZWFzdCBvbmUgZXhlY3V0YWJsZSIpKTsKKworbXkgJGNvbnRyb2wgPSBEcGtnOjpDb250cm9sOjpJbmZvLT5uZXcoKTsKK215ICRmaWVsZHMgPSAkY29udHJvbC0+Z2V0X3NvdXJjZSgpOworbXkgJGJ1aWxkX2RlcGVuZHMgPSBkZWZpbmVkKCRmaWVsZHMtPnsiQnVpbGQtRGVwZW5kcyJ9KSA/CisJCSAgICAkZmllbGRzLT57IkJ1aWxkLURlcGVuZHMifSA6ICIiOworbXkgJGJ1aWxkX2RlcHMgPSBkZXBzX3BhcnNlKCRidWlsZF9kZXBlbmRzLCByZWR1Y2VfYXJjaCA9PiAxKTsKKworbXkgJWRlcGVuZGVuY2llczsKK215ICVzaGxpYnM7CisKKyMgU3RhdGljdGljcyBvbiBzb25hbWUgc2VlbiBpbiB0aGUgd2hvbGUgcnVuICh3aXRoIG11bHRpcGxlIGFuYWx5c2lzIG9mCisjIGJpbmFyaWVzKQorbXkgJWdsb2JhbF9zb25hbWVfbm90Zm91bmQ7CitteSAlZ2xvYmFsX3NvbmFtZV91c2VkOworbXkgJWdsb2JhbF9zb25hbWVfbmVlZGVkOworCisjIFN5bWZpbGUgYW5kIG9iamR1bXAgY2FjaGVzCitteSAlc3ltZmlsZV9jYWNoZTsKK215ICVvYmpkdW1wX2NhY2hlOworbXkgJXN5bWZpbGVfaGFzX3NvbmFtZV9jYWNoZTsKKworIyBVc2VkIHRvIGNvdW50IGVycm9ycyBkdWUgdG8gbWlzc2luZyBsaWJyYXJpZXMKK215ICRlcnJvcl9jb3VudCA9IDA7CisKK215ICRjdXJfZmllbGQ7Citmb3JlYWNoIG15ICRmaWxlIChrZXlzICVleGVjKSB7CisgICAgJGN1cl9maWVsZCA9ICRleGVjeyRmaWxlfTsKKyAgICBwcmludCAiPj4gU2Nhbm5pbmcgJGZpbGUgKGZvciAkY3VyX2ZpZWxkIGZpZWxkKVxuIiBpZiAkZGVidWc7CisKKyAgICBteSAkb2JqID0gRHBrZzo6U2hsaWJzOjpPYmpkdW1wOjpPYmplY3QtPm5ldygkZmlsZSk7CisgICAgbXkgQHNvbmFtZXMgPSAkb2JqLT5nZXRfbmVlZGVkX2xpYnJhcmllczsKKworICAgICMgTG9hZCBzeW1ib2xzIGZpbGVzIGZvciBhbGwgbmVlZGVkIGxpYnJhcmllcyAoaWRlbnRpZmllZCBieSBTT05BTUUpCisgICAgbXkgJWxpYmZpbGVzOworICAgIG15ICVhbHRsaWJmaWxlczsKKyAgICBteSAlc29uYW1lX25vdGZvdW5kOworICAgIG15ICVhbHRfc29uYW1lOworICAgIGZvcmVhY2ggbXkgJHNvbmFtZSAoQHNvbmFtZXMpIHsKKwlteSAkbGliID0gbXlfZmluZF9saWJyYXJ5KCRzb25hbWUsICRvYmotPntSUEFUSH0sICRvYmotPntmb3JtYXR9LCAkZmlsZSk7CisJdW5sZXNzIChkZWZpbmVkICRsaWIpIHsKKwkgICAgJHNvbmFtZV9ub3Rmb3VuZHskc29uYW1lfSA9IDE7CisJICAgICRnbG9iYWxfc29uYW1lX25vdGZvdW5keyRzb25hbWV9ID0gMTsKKwkgICAgbXkgJG1zZyA9IF9nKCJjb3VsZG4ndCBmaW5kIGxpYnJhcnkgJXMgbmVlZGVkIGJ5ICVzIChFTEYgIiAuCisJCQkgImZvcm1hdDogJyVzJzsgUlBBVEg6ICclcycpLiIpOworCSAgICBpZiAoc2NhbGFyKHNwbGl0X3NvbmFtZSgkc29uYW1lKSkpIHsKKwkJZXJyb3Jtc2coJG1zZywgJHNvbmFtZSwgJGZpbGUsICRvYmotPntmb3JtYXR9LCBqb2luKCI6IiwgQHskb2JqLT57UlBBVEh9fSkpOworCQkkZXJyb3JfY291bnQrKzsKKwkgICAgfSBlbHNlIHsKKwkJd2FybmluZygkbXNnLCAkc29uYW1lLCAkZmlsZSwgJG9iai0+e2Zvcm1hdH0sIGpvaW4oIjoiLCBAeyRvYmotPntSUEFUSH19KSk7CisJICAgIH0KKwkgICAgbmV4dDsKKwl9CisJJGxpYmZpbGVzeyRsaWJ9ID0gJHNvbmFtZTsKKwlteSAkcmVhbGxpYiA9IHJlYWxwYXRoKCRsaWIpOworCWlmICgkcmVhbGxpYiBuZSAkbGliKSB7CisJICAgICRhbHRsaWJmaWxlc3skcmVhbGxpYn0gPSAkc29uYW1lOworCX0KKwlwcmludCAiTGlicmFyeSAkc29uYW1lIGZvdW5kIGluICRsaWJcbiIgaWYgJGRlYnVnOworICAgIH0KKyAgICBteSAkZmlsZTJwa2cgPSBmaW5kX3BhY2thZ2VzKGtleXMgJWxpYmZpbGVzLCBrZXlzICVhbHRsaWJmaWxlcyk7CisgICAgbXkgJHN5bWZpbGUgPSBEcGtnOjpTaGxpYnM6OlN5bWJvbEZpbGUtPm5ldygpOworICAgIG15ICRkdW1wbGlic193b19zeW1maWxlID0gRHBrZzo6U2hsaWJzOjpPYmpkdW1wLT5uZXcoKTsKKyAgICBteSBAc29uYW1lX3dvX3N5bWZpbGU7CisgICAgZm9yZWFjaCBteSAkbGliIChrZXlzICVsaWJmaWxlcykgeworCW15ICRzb25hbWUgPSAkbGliZmlsZXN7JGxpYn07CisJaWYgKG5vdCBzY2FsYXIoZ3JlcCB7ICRfIG5lICcnIH0gQHskZmlsZTJwa2ctPnskbGlifX0pKSB7CisJICAgICMgVGhlIHBhdGggb2YgdGhlIGxpYnJhcnkgYXMgY2FsY3VsYXRlZCBpcyBub3QgdGhlCisJICAgICMgb2ZmaWNpYWwgcGF0aCBvZiBhIHBhY2thZ2VkIGZpbGUsIHRyeSB0byBmYWxsYmFjayBvbgorCSAgICAjIG9uIHRoZSByZWFscGF0aCgpIGZpcnN0LCBtYXliZSB0aGlzIG9uZSBpcyBwYXJ0IG9mIGEgcGFja2FnZQorCSAgICBteSAkcmVhbGxpYiA9IHJlYWxwYXRoKCRsaWIpOworCSAgICBpZiAoZXhpc3RzICRmaWxlMnBrZy0+eyRyZWFsbGlifSkgeworCQkkZmlsZTJwa2ctPnskbGlifSA9ICRmaWxlMnBrZy0+eyRyZWFsbGlifTsKKwkgICAgfQorCX0KKwlpZiAobm90IHNjYWxhcihncmVwIHsgJF8gbmUgJycgfSBAeyRmaWxlMnBrZy0+eyRsaWJ9fSkpIHsKKwkgICAgIyBJZiB0aGUgbGlicmFyeSBpcyByZWFsbHkgbm90IGF2YWlsYWJsZSBpbiBhbiBpbnN0YWxsZWQgcGFja2FnZSwKKwkgICAgIyBpdCdzIGJlY2F1c2UgaXQncyBpbiB0aGUgcHJvY2VzcyBvZiBiZWluZyBidWlsdAorCSAgICAjIEVtcHR5IHBhY2thZ2UgbmFtZSB3aWxsIGxlYWQgdG8gY29uc2lkZXJhdGlvbiBvZiBzeW1ib2xzCisJICAgICMgZmlsZSBmcm9tIHRoZSBwYWNrYWdlIGJlaW5nIGJ1aWx0IG9ubHkKKwkgICAgJGZpbGUycGtnLT57JGxpYn0gPSBbIiJdOworCSAgICBwcmludCAiTm8gYXNzb2NpYXRlZCBwYWNrYWdlIGZvdW5kIGZvciAkbGliXG4iIGlmICRkZWJ1ZzsKKwl9CisKKwkjIExvYWQgc3ltYm9scy9zaGxpYnMgZmlsZXMgZnJvbSBwYWNrYWdlcyBwcm92aWRpbmcgbGlicmFyaWVzCisJZm9yZWFjaCBteSAkcGtnIChAeyRmaWxlMnBrZy0+eyRsaWJ9fSkgeworCSAgICBteSAkc3ltZmlsZV9wYXRoOworICAgICAgICAgICAgbXkgJGhhc2xvY2FsZGVwID0gMDsKKyAgICAgICAgICAgIGlmICgtZSAkc2hsaWJzbG9jYWwgYW5kCisgICAgICAgICAgICAgICAgZGVmaW5lZChleHRyYWN0X2Zyb21fc2hsaWJzKCRzb25hbWUsICRzaGxpYnNsb2NhbCkpKQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICRoYXNsb2NhbGRlcCA9IDE7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBpZiAoJHBhY2thZ2V0eXBlIGVxICJkZWIiIGFuZCBub3QgJGhhc2xvY2FsZGVwKSB7CisJCSMgVXNlIGZpbmUtZ3JhaW5lZCBkZXBlbmRlbmNpZXMgb25seSBvbiByZWFsIGRlYgorICAgICAgICAgICAgICAgICMgYW5kIG9ubHkgaWYgdGhlIGRlcGVuZGVuY3kgaXMgbm90IHByb3ZpZGVkIGJ5IHNobGlicy5sb2NhbAorCQkkc3ltZmlsZV9wYXRoID0gZmluZF9zeW1ib2xzX2ZpbGUoJHBrZywgJHNvbmFtZSwgJGxpYik7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBpZiAoZGVmaW5lZCgkc3ltZmlsZV9wYXRoKSkgeworICAgICAgICAgICAgICAgICMgTG9hZCBzeW1ib2wgaW5mb3JtYXRpb24KKyAgICAgICAgICAgICAgICBwcmludCAiVXNpbmcgc3ltYm9scyBmaWxlICRzeW1maWxlX3BhdGggZm9yICRzb25hbWVcbiIgaWYgJGRlYnVnOworICAgICAgICAgICAgICAgIHVubGVzcyAoZXhpc3RzICRzeW1maWxlX2NhY2hleyRzeW1maWxlX3BhdGh9KSB7CisgICAgICAgICAgICAgICAgICAgICRzeW1maWxlX2NhY2hleyRzeW1maWxlX3BhdGh9ID0KKyAgICAgICAgICAgICAgICAgICAgICAgIERwa2c6OlNobGliczo6U3ltYm9sRmlsZS0+bmV3KGZpbGUgPT4gJHN5bWZpbGVfcGF0aCk7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICRzeW1maWxlLT5tZXJnZV9vYmplY3RfZnJvbV9zeW1maWxlKCRzeW1maWxlX2NhY2hleyRzeW1maWxlX3BhdGh9LCAkc29uYW1lKTsKKyAgICAgICAgICAgIH0KKwkgICAgaWYgKGRlZmluZWQoJHN5bWZpbGVfcGF0aCkgJiYgJHN5bWZpbGUtPmhhc19vYmplY3QoJHNvbmFtZSkpIHsKKwkJIyBJbml0aWFsaXplIGRlcGVuZGVuY2llcyB3aXRoIHRoZSBzbWFsbGVzdCBtaW5pbWFsIHZlcnNpb24KKyAgICAgICAgICAgICAgICAjIG9mIGFsbCBzeW1ib2xzICh1bnZlcnNpb25lZCBkZXBlbmRlbmN5IGlzIG5vdCBvayBhcyB0aGUKKyAgICAgICAgICAgICAgICAjIGxpYnJhcnkgbWlnaHQgbm90IGhhdmUgYWx3YXlzIGJlZW4gYXZhaWxhYmxlIGluIHRoZQorICAgICAgICAgICAgICAgICMgcGFja2FnZSBhbmQgd2UgcmVhbGx5IG5lZWQgaXQpCisJCW15ICRkZXAgPSAkc3ltZmlsZS0+Z2V0X2RlcGVuZGVuY3koJHNvbmFtZSk7CisJCW15ICRtaW52ZXIgPSAkc3ltZmlsZS0+Z2V0X3NtYWxsZXN0X3ZlcnNpb24oJHNvbmFtZSkgfHwgJyc7CisJCWZvcmVhY2ggbXkgJHN1YmRlcCAoc3BsaXQgL1xzKixccyovLCAkZGVwKSB7CisJCSAgICBpZiAobm90IGV4aXN0cyAkZGVwZW5kZW5jaWVzeyRjdXJfZmllbGR9eyRzdWJkZXB9KSB7CisJCQkkZGVwZW5kZW5jaWVzeyRjdXJfZmllbGR9eyRzdWJkZXB9ID0gRHBrZzo6VmVyc2lvbi0+bmV3KCRtaW52ZXIpOworICAgICAgICAgICAgICAgICAgICAgICAgcHJpbnQgIiBJbml0aWFsaXplIGRlcGVuZGVuY3kgKCRzdWJkZXApIHdpdGggbWluaW1hbCAiIC4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2ZXJzaW9uICgkbWludmVyKVxuIiBpZiAkZGVidWcgPiAxOworCQkgICAgfQorCQl9CisJICAgIH0gZWxzZSB7CisJCSMgTm8gc3ltYm9sIGZpbGUgZm91bmQsIGZhbGwgYmFjayB0byBzdGFuZGFyZCBzaGxpYnMKKyAgICAgICAgICAgICAgICBwcmludCAiVXNpbmcgc2hsaWJzK29iamR1bXAgZm9yICRzb25hbWUgKGZpbGUgJGxpYilcbiIgaWYgJGRlYnVnOworICAgICAgICAgICAgICAgIHVubGVzcyAoZXhpc3RzICRvYmpkdW1wX2NhY2hleyRsaWJ9KSB7CisgICAgICAgICAgICAgICAgICAgICRvYmpkdW1wX2NhY2hleyRsaWJ9ID0gRHBrZzo6U2hsaWJzOjpPYmpkdW1wOjpPYmplY3QtPm5ldygkbGliKTsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgbXkgJGxpYm9iaiA9ICRvYmpkdW1wX2NhY2hleyRsaWJ9OworICAgICAgICAgICAgICAgIG15ICRpZCA9ICRkdW1wbGlic193b19zeW1maWxlLT5hZGRfb2JqZWN0KCRsaWJvYmopOworCQlpZiAoKCRpZCBuZSAkc29uYW1lKSBhbmQgKCRpZCBuZSAkbGliKSkgeworCQkgICAgd2FybmluZyhfZygiJXMgaGFzIGFuIHVuZXhwZWN0ZWQgU09OQU1FICglcykiKSwgJGxpYiwgJGlkKTsKKwkJICAgICRhbHRfc29uYW1leyRpZH0gPSAkc29uYW1lOworCQl9CisJCXB1c2ggQHNvbmFtZV93b19zeW1maWxlLCAkc29uYW1lOworCQkjIE9ubHkgdHJ5IHRvIGdlbmVyYXRlIGEgZGVwZW5kZW5jeSBmb3IgbGlicmFyaWVzIHdpdGggYSBTT05BTUUKKwkJaWYgKCRsaWJvYmotPmlzX3B1YmxpY19saWJyYXJ5KCkgYW5kIG5vdAorCQkgICAgYWRkX3NobGlic19kZXAoJHNvbmFtZSwgJHBrZywgJGxpYikpIHsKKwkJICAgICMgVGhpcyBmYWlsdXJlIGlzIGZhaXJseSBuZXcsIHRyeSB0byBiZSBraW5kIGJ5CisJCSAgICAjIGlnbm9yaW5nIGFzIG1hbnkgY2FzZXMgdGhhdCBjYW4gYmUgc2FmZWx5IGlnbm9yZWQKKwkJICAgIG15ICRpZ25vcmUgPSAwOworCQkgICAgIyAxLyB3aGVuIHRoZSBsaWIgYW5kIHRoZSBiaW5hcnkgYXJlIGluIHRoZSBzYW1lCisJCSAgICAjIHBhY2thZ2UKKwkJICAgIG15ICRyb290X2ZpbGUgPSBndWVzc19wa2dfcm9vdF9kaXIoJGZpbGUpOworCQkgICAgbXkgJHJvb3RfbGliID0gZ3Vlc3NfcGtnX3Jvb3RfZGlyKCRsaWIpOworCQkgICAgJGlnbm9yZSsrIGlmIGRlZmluZWQgJHJvb3RfZmlsZSBhbmQgZGVmaW5lZCAkcm9vdF9saWIKKwkJCWFuZCBjaGVja19maWxlc19hcmVfdGhlX3NhbWUoJHJvb3RfZmlsZSwgJHJvb3RfbGliKTsKKwkJICAgICMgMi8gd2hlbiB0aGUgbGliIGlzIG5vdCB2ZXJzaW9uZWQgYW5kIGNhbid0IGJlCisJCSAgICAjIGhhbmRsZWQgYnkgc2hsaWJzCisJCSAgICAkaWdub3JlKysgdW5sZXNzIHNjYWxhcihzcGxpdF9zb25hbWUoJHNvbmFtZSkpOworCQkgICAgIyAzLyB3aGVuIHdlIGhhdmUgYmVlbiBhc2tlZCB0byBkbyBzbworCQkgICAgJGlnbm9yZSsrIGlmICRpZ25vcmVfbWlzc2luZ19pbmZvOworCQkgICAgZXJyb3IoX2coIm5vIGRlcGVuZGVuY3kgaW5mb3JtYXRpb24gZm91bmQgZm9yICVzICIgLgorCQkgICAgICAgICAgICAgIih1c2VkIGJ5ICVzKS4iKSwgJGxpYiwgJGZpbGUpCisJCSAgICAgICAgdW5sZXNzICRpZ25vcmU7CisJCX0KKwkgICAgfQorCX0KKyAgICB9CisKKyAgICAjIFNjYW4gYWxsIHVuZGVmaW5lZCBzeW1ib2xzIG9mIHRoZSBiaW5hcnkgYW5kIHJlc29sdmUgdG8gYQorICAgICMgZGVwZW5kZW5jeQorICAgIG15ICVzb25hbWVfdXNlZDsKKyAgICBmb3JlYWNoIChAc29uYW1lcykgeworICAgICAgICAjIEluaXRpYWxpemUgc3RhdGlzdGljcworICAgICAgICAkc29uYW1lX3VzZWR7JF99ID0gMDsKKyAgICAgICAgJGdsb2JhbF9zb25hbWVfdXNlZHskX30gPSAwIHVubGVzcyBleGlzdHMgJGdsb2JhbF9zb25hbWVfdXNlZHskX307CisgICAgICAgIGlmIChleGlzdHMgJGdsb2JhbF9zb25hbWVfbmVlZGVkeyRffSkgeworICAgICAgICAgICAgcHVzaCBAeyRnbG9iYWxfc29uYW1lX25lZWRlZHskX319LCAkZmlsZTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICRnbG9iYWxfc29uYW1lX25lZWRlZHskX30gPSBbICRmaWxlIF07CisgICAgICAgIH0KKyAgICB9CisgICAgbXkgJG5iX3dhcm5pbmdzID0gMDsKKyAgICBteSAkbmJfc2tpcHBlZF93YXJuaW5ncyA9IDA7CisgICAgIyBEaXNhYmxlIHdhcm5pbmdzIGFib3V0IG1pc3Npbmcgc3ltYm9scyB3aGVuIHdlIGhhdmUgbm90IGJlZW4gYWJsZSB0bworICAgICMgZmluZCBhbGwgbGlicworICAgIG15ICRkaXNhYmxlX3dhcm5pbmdzID0gc2NhbGFyKGtleXMoJXNvbmFtZV9ub3Rmb3VuZCkpOworICAgIG15ICRpbl9wdWJsaWNfZGlyID0gMTsKKyAgICBpZiAobXkgJHJlbG5hbWUgPSByZWxhdGl2ZV90b19wa2dfcm9vdCgkZmlsZSkpIHsKKyAgICAgICAgbXkgJHBhcmVudF9kaXIgPSAiLyIgLiBkaXJuYW1lKCRyZWxuYW1lKTsKKyAgICAgICAgJGluX3B1YmxpY19kaXIgPSAoZ3JlcCB7ICRwYXJlbnRfZGlyIGVxICRfIH0gQGxpYnJhcnlwYXRocykgPyAxIDogMDsKKyAgICB9IGVsc2UgeworICAgICAgICB3YXJuaW5nKF9nKCJiaW5hcmllcyB0byBhbmFseXplIHNob3VsZCBhbHJlYWR5IGJlICIgLgorICAgICAgICAgICAgICAgICAgICJpbnN0YWxsZWQgaW4gdGhlaXIgcGFja2FnZSdzIGRpcmVjdG9yeS4iKSk7CisgICAgfQorICAgIHByaW50ICJBbmFseXppbmcgYWxsIHVuZGVmaW5lZCBzeW1ib2xzXG4iIGlmICRkZWJ1ZyA+IDE7CisgICAgZm9yZWFjaCBteSAkc3ltICgkb2JqLT5nZXRfdW5kZWZpbmVkX2R5bmFtaWNfc3ltYm9scygpKSB7CisJbXkgJG5hbWUgPSAkc3ltLT57bmFtZX07CisJaWYgKCRzeW0tPnt2ZXJzaW9ufSkgeworCSAgICAkbmFtZSAuPSAiXEAkc3ltLT57dmVyc2lvbn0iOworCX0gZWxzZSB7CisJICAgICRuYW1lIC49ICJcQEJhc2UiOworCX0KKyAgICAgICAgcHJpbnQgIiBMb29raW5nIHVwIHN5bWJvbCAkbmFtZVxuIiBpZiAkZGVidWcgPiAxOworCW15ICVzeW1kZXAgPSAkc3ltZmlsZS0+bG9va3VwX3N5bWJvbCgkbmFtZSwgXEBzb25hbWVzKTsKKwlpZiAoa2V5cyAlc3ltZGVwKSB7CisJICAgIG15ICRkZXBlbmRzID0gJHN5bWZpbGUtPmdldF9kZXBlbmRlbmN5KCRzeW1kZXB7c29uYW1lfSwKKwkJJHN5bWRlcHtzeW1ib2x9e2RlcF9pZH0pOworICAgICAgICAgICAgcHJpbnQgIiBGb3VuZCBpbiBzeW1ib2xzIGZpbGUgb2YgJHN5bWRlcHtzb25hbWV9IChtaW52ZXI6ICIgLgorICAgICAgICAgICAgICAgICAgIiRzeW1kZXB7c3ltYm9sfXttaW52ZXJ9LCBkZXA6ICRkZXBlbmRzKVxuIiBpZiAkZGVidWcgPiAxOworCSAgICAkc29uYW1lX3VzZWR7JHN5bWRlcHtzb25hbWV9fSsrOworCSAgICAkZ2xvYmFsX3NvbmFtZV91c2VkeyRzeW1kZXB7c29uYW1lfX0rKzsKKyAgICAgICAgICAgIGlmIChleGlzdHMgJGFsdF9zb25hbWV7JHN5bWRlcHtzb25hbWV9fSkgeworICAgICAgICAgICAgICAgICMgQWxzbyBjb3VudCB1c2FnZSBvbiBhbHRlcm5hdGUgc29uYW1lCisgICAgICAgICAgICAgICAgJHNvbmFtZV91c2VkeyRhbHRfc29uYW1leyRzeW1kZXB7c29uYW1lfX19Kys7CisgICAgICAgICAgICAgICAgJGdsb2JhbF9zb25hbWVfdXNlZHskYWx0X3NvbmFtZXskc3ltZGVwe3NvbmFtZX19fSsrOworICAgICAgICAgICAgfQorCSAgICB1cGRhdGVfZGVwZW5kZW5jeV92ZXJzaW9uKCRkZXBlbmRzLCAkc3ltZGVwe3N5bWJvbH17bWludmVyfSk7CisJfSBlbHNlIHsKKwkgICAgbXkgJHN5bWluZm8gPSAkZHVtcGxpYnNfd29fc3ltZmlsZS0+bG9jYXRlX3N5bWJvbCgkbmFtZSk7CisJICAgIGlmIChub3QgZGVmaW5lZCgkc3ltaW5mbykpIHsKKyAgICAgICAgICAgICAgICBwcmludCAiIE5vdCBmb3VuZFxuIiBpZiAkZGVidWcgPiAxOworICAgICAgICAgICAgICAgIG5leHQgdW5sZXNzICgkd2FybmluZ3MgJiBXQVJOX1NZTV9OT1RfRk9VTkQpOworCQluZXh0IGlmICRkaXNhYmxlX3dhcm5pbmdzOworCQkjIENvbXBsYWluIGFib3V0IG1pc3Npbmcgc3ltYm9scyBvbmx5IGZvciBleGVjdXRhYmxlcworCQkjIGFuZCBwdWJsaWMgbGlicmFyaWVzCisJCWlmICgkb2JqLT5pc19leGVjdXRhYmxlKCkgb3IgJG9iai0+aXNfcHVibGljX2xpYnJhcnkoKSkgeworCQkgICAgbXkgJHByaW50X25hbWUgPSAkbmFtZTsKKwkJICAgICMgRHJvcCB0aGUgZGVmYXVsdCBzdWZmaXggZm9yIHJlYWRhYmlsaXR5CisJCSAgICAkcHJpbnRfbmFtZSA9fiBzL1xAQmFzZSQvLzsKKwkJICAgIHVubGVzcyAoJHN5bS0+e3dlYWt9KSB7CisJCQlpZiAoJGRlYnVnIG9yICgkaW5fcHVibGljX2RpciBhbmQgJG5iX3dhcm5pbmdzIDwgMTApCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3IgKCEkaW5fcHVibGljX2RpciBhbmQgJG5iX3dhcm5pbmdzIDwgMSkpCisgICAgICAgICAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCRpbl9wdWJsaWNfZGlyKSB7CisJCQkgICAgICAgIHdhcm5pbmcoX2coInN5bWJvbCAlcyB1c2VkIGJ5ICVzIGZvdW5kIGluIG5vbmUgb2YgdGhlICIgLgorCQkJCSAgICAgICAgICAgImxpYnJhcmllcy4iKSwgJHByaW50X25hbWUsICRmaWxlKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2UgeworCQkJICAgICAgICB3YXJuaW5nKF9nKCIlcyBjb250YWlucyBhbiB1bnJlc29sdmFibGUgcmVmZXJlbmNlIHRvICIgLgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzeW1ib2wgJXM6IGl0J3MgcHJvYmFibHkgYSBwbHVnaW4uIiksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGZpbGUsICRwcmludF9uYW1lKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CisJCQkgICAgJG5iX3dhcm5pbmdzKys7CisJCQl9IGVsc2UgeworCQkJICAgICRuYl9za2lwcGVkX3dhcm5pbmdzKys7CisJCQl9CisJCSAgICB9CisJCX0KKwkgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICBwcmludCAiIEZvdW5kIGluICRzeW1pbmZvLT57c29uYW1lfSAoJHN5bWluZm8tPntvYmppZH0pXG4iIGlmICRkZWJ1ZyA+IDE7CisJCWlmIChleGlzdHMgJGFsdF9zb25hbWV7JHN5bWluZm8tPntzb25hbWV9fSkgeworCQkgICAgIyBBbHNvIGNvdW50IHVzYWdlIG9uIGFsdGVybmF0ZSBzb25hbWUKKwkJICAgICRzb25hbWVfdXNlZHskYWx0X3NvbmFtZXskc3ltaW5mby0+e3NvbmFtZX19fSsrOworCQkgICAgJGdsb2JhbF9zb25hbWVfdXNlZHskYWx0X3NvbmFtZXskc3ltaW5mby0+e3NvbmFtZX19fSsrOworCQl9CisJCSRzb25hbWVfdXNlZHskc3ltaW5mby0+e3NvbmFtZX19Kys7CisJCSRnbG9iYWxfc29uYW1lX3VzZWR7JHN5bWluZm8tPntzb25hbWV9fSsrOworCSAgICB9CisJfQorICAgIH0KKyAgICB3YXJuaW5nKFBfKCIlZCBzaW1pbGFyIHdhcm5pbmcgaGFzIGJlZW4gc2tpcHBlZCAodXNlIC12IHRvIHNlZSBpdCkuIiwKKyAgICAgICAgICAgICAgICIlZCBvdGhlciBzaW1pbGFyIHdhcm5pbmdzIGhhdmUgYmVlbiBza2lwcGVkICh1c2UgLXYgdG8gc2VlICIgLgorICAgICAgICAgICAgICAgInRoZW0gYWxsKS4iLCAkbmJfc2tpcHBlZF93YXJuaW5ncyksICRuYl9za2lwcGVkX3dhcm5pbmdzKQorICAgICAgICBpZiAkbmJfc2tpcHBlZF93YXJuaW5nczsKKyAgICBmb3JlYWNoIG15ICRzb25hbWUgKEBzb25hbWVzKSB7CisJIyBBZGp1c3QgbWluaW1hbCB2ZXJzaW9uIG9mIGRlcGVuZGVuY2llcyB3aXRoIGluZm9ybWF0aW9uCisJIyBleHRyYWN0ZWQgZnJvbSBidWlsZC1kZXBlbmRlbmNpZXMKKwlteSAkZGV2X3BrZyA9ICRzeW1maWxlLT5nZXRfZmllbGQoJHNvbmFtZSwgJ0J1aWxkLURlcGVuZHMtUGFja2FnZScpOworCWlmIChkZWZpbmVkICRkZXZfcGtnKSB7CisgICAgICAgICAgICBwcmludCAiVXBkYXRpbmcgZGVwZW5kZW5jaWVzIG9mICRzb25hbWUgd2l0aCBidWlsZC1kZXBlbmRlbmNpZXNcbiIgaWYgJGRlYnVnOworCSAgICBteSAkbWludmVyID0gZ2V0X21pbl92ZXJzaW9uX2Zyb21fZGVwcygkYnVpbGRfZGVwcywgJGRldl9wa2cpOworCSAgICBpZiAoZGVmaW5lZCAkbWludmVyKSB7CisJCWZvcmVhY2ggbXkgJGRlcCAoJHN5bWZpbGUtPmdldF9kZXBlbmRlbmNpZXMoJHNvbmFtZSkpIHsKKwkJICAgIHVwZGF0ZV9kZXBlbmRlbmN5X3ZlcnNpb24oJGRlcCwgJG1pbnZlciwgMSk7CisgICAgICAgICAgICAgICAgICAgIHByaW50ICIgTWluaW1hbCB2ZXJzaW9uIG9mICRkZXAgdXBkYXRlZCB3aXRoICRtaW52ZXJcbiIgaWYgJGRlYnVnOworCQl9CisJICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgcHJpbnQgIiBObyBtaW5pbWFsIHZlcnNpb24gZm91bmQgaW4gJGRldl9wa2cgYnVpbGQtZGVwZW5kZW5jeVxuIiBpZiAkZGVidWc7CisgICAgICAgICAgICB9CisJfQorCisJIyBXYXJuIGFib3V0IHVuLU5FRURFRCBsaWJyYXJpZXMKKwl1bmxlc3MgKCRzb25hbWVfbm90Zm91bmR7JHNvbmFtZX0gb3IgJHNvbmFtZV91c2VkeyRzb25hbWV9KSB7CisJICAgICMgSWdub3JlIHdhcm5pbmcgZm9yIGxpYm0uc28uNiBpZiBhbHNvIGxpbmtlZCBhZ2FpbnN0IGxpYnN0ZGMrKworCSAgICBuZXh0IGlmICgkc29uYW1lID1+IC9ebGlibVwuc29cLlxkKyQvIGFuZAorCQkgICAgIHNjYWxhciBncmVwKC9ebGlic3RkY1wrXCtcLnNvXC5cZCsvLCBAc29uYW1lcykpOworICAgICAgICAgICAgbmV4dCB1bmxlc3MgKCR3YXJuaW5ncyAmIFdBUk5fTk9UX05FRURFRCk7CisJICAgIHdhcm5pbmcoX2coIiVzIHNob3VsZG4ndCBiZSBsaW5rZWQgd2l0aCAlcyAoaXQgdXNlcyBub25lIG9mIGl0cyAiIC4KKwkgICAgICAgICAgICAgICAic3ltYm9scykuIiksICRmaWxlLCAkc29uYW1lKTsKKwl9CisgICAgfQorfQorCisjIFdhcm4gb2YgdW5uZWVkZWQgbGlicmFyaWVzIGF0IHRoZSAicGFja2FnZSIgbGV2ZWwgKGkuZS4gb3ZlciBhbGwKKyMgYmluYXJpZXMgdGhhdCB3ZSBoYXZlIGluc3BlY3RlZCkKK2ZvcmVhY2ggbXkgJHNvbmFtZSAoa2V5cyAlZ2xvYmFsX3NvbmFtZV9uZWVkZWQpIHsKKyAgICB1bmxlc3MgKCRnbG9iYWxfc29uYW1lX25vdGZvdW5keyRzb25hbWV9IG9yICRnbG9iYWxfc29uYW1lX3VzZWR7JHNvbmFtZX0pIHsKKyAgICAgICAgbmV4dCBpZiAoJHNvbmFtZSA9fiAvXmxpYm1cLnNvXC5cZCskLyBhbmQgc2NhbGFyKAorICAgICAgICAgICAgICAgICBncmVwKC9ebGlic3RkY1wrXCtcLnNvXC5cZCsvLCBrZXlzICVnbG9iYWxfc29uYW1lX25lZWRlZCkpKTsKKyAgICAgICAgbmV4dCB1bmxlc3MgKCR3YXJuaW5ncyAmIFdBUk5fREVQX0FWT0lEQUJMRSk7CisgICAgICAgIHdhcm5pbmcoX2coImRlcGVuZGVuY3kgb24gJXMgY291bGQgYmUgYXZvaWRlZCBpZiBcIiVzXCIgd2VyZSBub3QgIiAuCisgICAgICAgICAgICAgICAgICAgInVzZWxlc3NseSBsaW5rZWQgYWdhaW5zdCBpdCAodGhleSB1c2Ugbm9uZSBvZiBpdHMgIiAuCisgICAgICAgICAgICAgICAgICAgInN5bWJvbHMpLiIpLCAkc29uYW1lLAorICAgICAgICAgICAgICAgICAgIGpvaW4oIiAiLCBAeyRnbG9iYWxfc29uYW1lX25lZWRlZHskc29uYW1lfX0pKTsKKyAgICB9Cit9CisKKyMgUXVpdCBub3cgaWYgYW55IG1pc3NpbmcgbGlicmFyaWVzCitpZiAoJGVycm9yX2NvdW50ID49IDEpIHsKKyAgICBteSAkbm90ZSA9IF9nKCJOb3RlOiBsaWJyYXJpZXMgYXJlIG5vdCBzZWFyY2hlZCBpbiBvdGhlciBiaW5hcnkgcGFja2FnZXMgIiAuCisJInRoYXQgZG8gbm90IGhhdmUgYW55IHNobGlicyBvciBzeW1ib2xzIGZpbGUuXG5UbyBoZWxwIGRwa2ctc2hsaWJkZXBzICIgLgorCSJmaW5kIHByaXZhdGUgbGlicmFyaWVzLCB5b3UgbWlnaHQgbmVlZCB0byBzZXQgTERfTElCUkFSWV9QQVRILiIpOworICAgIGVycm9yKFBfKCJDYW5ub3QgY29udGludWUgZHVlIHRvIHRoZSBlcnJvciBhYm92ZS4iLAorICAgICAgICAgICAgICJDYW5ub3QgY29udGludWUgZHVlIHRvIHRoZSBlcnJvcnMgbGlzdGVkIGFib3ZlLiIsCisgICAgICAgICAgICAgJGVycm9yX2NvdW50KSAuICJcbiIgLiAkbm90ZSk7Cit9CisKKyMgT3BlbiBzdWJzdHZhcnMgZmlsZQorbXkgJGZoOworaWYgKCRzdGRvdXQpIHsKKyAgICAkZmggPSBcKlNURE9VVDsKK30gZWxzZSB7CisgICAgb3BlbihORVcsICI+IiwgIiR2YXJsaXN0ZmlsZS5uZXciKSB8fAorCXN5c2VycihfZygib3BlbiBuZXcgc3Vic3R2YXJzIGZpbGUgXGAlcyciKSwgIiR2YXJsaXN0ZmlsZS5uZXciKTsKKyAgICBpZiAoLWUgJHZhcmxpc3RmaWxlKSB7CisJb3BlbihPTEQsICI8IiwgJHZhcmxpc3RmaWxlKSB8fAorCSAgICBzeXNlcnIoX2coIm9wZW4gb2xkIHZhcmxpc3QgZmlsZSBcYCVzJyBmb3IgcmVhZGluZyIpLCAkdmFybGlzdGZpbGUpOworCWZvcmVhY2ggbXkgJGVudHJ5IChncmVwIHsgbm90IG0vXlxRJHZhcm5hbWVwcmVmaXhcRTovIH0gKDxPTEQ+KSkgeworCSAgICBwcmludChORVcgJGVudHJ5KSB8fAorCSAgICAgICAgc3lzZXJyKF9nKCJjb3B5IG9sZCBlbnRyeSB0byBuZXcgdmFybGlzdCBmaWxlIFxgJXMnIiksCisJICAgICAgICAgICAgICAgIiR2YXJsaXN0ZmlsZS5uZXciKTsKKwl9CisJY2xvc2UoT0xEKTsKKyAgICB9CisgICAgJGZoID0gXCpORVc7Cit9CisKKyMgV3JpdGUgb3V0IHRoZSBzaGxpYnMgc3Vic3R2YXJzCitteSAlZGVwc2VlbjsKKworc3ViIGZpbHRlcl9kZXBzIHsKKyAgICBteSAoJGRlcCwgJGZpZWxkKSA9IEBfOworICAgICMgU2tpcCBkZXBlbmRlbmNpZXMgb24gZXhjbHVkZWQgcGFja2FnZXMKKyAgICBmb3JlYWNoIG15ICRleGMgKEBleGNsdWRlKSB7CisJcmV0dXJuIDAgaWYgJGRlcCA9fiAvXlxzKlxRJGV4Y1xFXGIvOworICAgIH0KKyAgICAjIERvbid0IGluY2x1ZGUgZGVwZW5kZW5jaWVzIGlmIHRoZXkgYXJlIGFscmVhZHkKKyAgICAjIG1lbnRpb25uZWQgaW4gYSBoaWdoZXIgcHJpb3JpdHkgZmllbGQKKyAgICBpZiAobm90IGV4aXN0cygkZGVwc2VlbnskZGVwfSkpIHsKKwkkZGVwc2VlbnskZGVwfSA9ICRkZXBlbmRlbmNpZXN7JGZpZWxkfXskZGVwfTsKKwlyZXR1cm4gMTsKKyAgICB9IGVsc2UgeworCSMgU2luY2UgZGVwZW5kZW5jaWVzIGNhbiBiZSB2ZXJzaW9ubmVkLCB3ZSBoYXZlIHRvCisJIyB2ZXJpZnkgaWYgdGhlIGRlcGVuZGVuY3kgaXMgc3Ryb25nZXIgdGhhbiB0aGUKKwkjIHByZXZpb3VzbHkgc2VlbiBvbmUKKwlteSAkc3Ryb25nZXI7CisJaWYgKCRkZXBzZWVueyRkZXB9IGVxICRkZXBlbmRlbmNpZXN7JGZpZWxkfXskZGVwfSkgeworCSAgICAjIElmIGJvdGggdmVyc2lvbnMgYXJlIHRoZSBzYW1lIChwb3NzaWJseSB1bnZlcnNpb25uZWQpCisJICAgICRzdHJvbmdlciA9IDA7CisJfSBlbHNpZiAoJGRlcGVuZGVuY2llc3skZmllbGR9eyRkZXB9IGVxICcnKSB7CisJICAgICRzdHJvbmdlciA9IDA7ICMgSWYgdGhlIGRlcCBpcyB1bnZlcnNpb25uZWQKKwl9IGVsc2lmICgkZGVwc2VlbnskZGVwfSBlcSAnJykgeworCSAgICAkc3Ryb25nZXIgPSAxOyAjIElmIHRoZSBkZXAgc2VlbiBpcyB1bnZlcnNpb25uZWQKKwl9IGVsc2lmICh2ZXJzaW9uX2NvbXBhcmVfcmVsYXRpb24oJGRlcHNlZW57JGRlcH0sIFJFTF9HVCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRkZXBlbmRlbmNpZXN7JGZpZWxkfXskZGVwfSkpIHsKKwkgICAgIyBUaGUgdmVyc2lvbiBvZiB0aGUgZGVwIHNlZW4gaXMgc3Ryb25nZXIuLi4KKwkgICAgJHN0cm9uZ2VyID0gMDsKKwl9IGVsc2UgeworCSAgICAkc3Ryb25nZXIgPSAxOworCX0KKwkkZGVwc2VlbnskZGVwfSA9ICRkZXBlbmRlbmNpZXN7JGZpZWxkfXskZGVwfSBpZiAkc3Ryb25nZXI7CisJcmV0dXJuICRzdHJvbmdlcjsKKyAgICB9Cit9CisKK2ZvcmVhY2ggbXkgJGZpZWxkIChyZXZlcnNlIEBkZXBmaWVsZHMpIHsKKyAgICBteSAkZGVwID0gIiI7CisgICAgaWYgKGV4aXN0cyAkZGVwZW5kZW5jaWVzeyRmaWVsZH0gYW5kIHNjYWxhciBrZXlzICV7JGRlcGVuZGVuY2llc3skZmllbGR9fSkgeworCSRkZXAgPSBqb2luICIsICIsCisJICAgIG1hcCB7CisJCSMgVHJhbnNsYXRlIGRlcGVuZGVuY3kgdGVtcGxhdGVzIGludG8gcmVhbCBkZXBlbmRlbmNpZXMKKwkJaWYgKCRkZXBlbmRlbmNpZXN7JGZpZWxkfXskX30pIHsKKwkJICAgIHMvI01JTlZFUiMvKD49ICRkZXBlbmRlbmNpZXN7JGZpZWxkfXskX30pL2c7CisJCX0gZWxzZSB7CisJCSAgICBzLyNNSU5WRVIjLy9nOworCQl9CisJCXMvXHMrLyAvZzsKKwkJJF87CisJICAgIH0gZ3JlcCB7IGZpbHRlcl9kZXBzKCRfLCAkZmllbGQpIH0KKwkgICAga2V5cyAleyRkZXBlbmRlbmNpZXN7JGZpZWxkfX07CisgICAgfQorICAgIGlmICgkZGVwKSB7CisgICAgICAgIG15ICRvYmogPSBkZXBzX3BhcnNlKCRkZXApOworICAgICAgICBlcnJvcihfZygiaW52YWxpZCBkZXBlbmRlbmN5IGdvdCBnZW5lcmF0ZWQ6ICVzIiksICRkZXApIHVubGVzcyBkZWZpbmVkICRvYmo7CisgICAgICAgICRvYmotPnNvcnQoKTsKKwlwcmludCAkZmggIiR2YXJuYW1lcHJlZml4OiRmaWVsZD0kb2JqXG4iOworICAgIH0KK30KKworIyBSZXBsYWNlIG9sZCBmaWxlIGJ5IG5ldyBvbmUKK2lmICghJHN0ZG91dCkgeworICAgIGNsb3NlKCRmaCkgfHwgc3lzZXJyKF9nKCJjYW5ub3QgY2xvc2UgJXMiKSwgIiR2YXJsaXN0ZmlsZS5uZXciKTsKKyAgICByZW5hbWUoIiR2YXJsaXN0ZmlsZS5uZXciLCR2YXJsaXN0ZmlsZSkgfHwKKwlzeXNlcnIoX2coImluc3RhbGwgbmV3IHZhcmxpc3QgZmlsZSBcYCVzJyIpLCAkdmFybGlzdGZpbGUpOworfQorCisjIworIyMgRnVuY3Rpb25zCisjIworCitzdWIgdmVyc2lvbiB7CisgICAgcHJpbnRmIF9nKCJEZWJpYW4gJXMgdmVyc2lvbiAlcy5cbiIpLCAkcHJvZ25hbWUsICR2ZXJzaW9uOworCisgICAgcHJpbnRmIF9nKCIKK0NvcHlyaWdodCAoQykgMTk5NiBJYW4gSmFja3Nvbi4KK0NvcHlyaWdodCAoQykgMjAwMCBXaWNoZXJ0IEFra2VybWFuLgorQ29weXJpZ2h0IChDKSAyMDA2IEZyYW5rIExpY2h0ZW5oZWxkLgorQ29weXJpZ2h0IChDKSAyMDA3IFJhcGhhZWwgSGVydHpvZy4KKyIpOworCisgICAgcHJpbnRmIF9nKCIKK1RoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgb3IKK2xhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LgorIik7Cit9CisKK3N1YiB1c2FnZSB7CisgICAgcHJpbnRmIF9nKAorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSA8ZXhlY3V0YWJsZT58LWU8ZXhlY3V0YWJsZT4gWzxvcHRpb24+IC4uLl0KKworUG9zaXRpb25hbCBvcHRpb25zIChvcmRlciBpcyBzaWduaWZpY2FudCk6CisgIDxleGVjdXRhYmxlPiAgICAgICAgICAgICBpbmNsdWRlIGRlcGVuZGVuY2llcyBmb3IgPGV4ZWN1dGFibGU+LAorICAtZTxleGVjdXRhYmxlPiAgICAgICAgICAgKHVzZSAtZSBpZiA8ZXhlY3V0YWJsZT4gc3RhcnRzIHdpdGggXGAtJykKKyAgLWQ8ZGVwZW5kZW5jeWZpZWxkPiAgICAgIG5leHQgZXhlY3V0YWJsZShzKSBzZXQgc2hsaWJzOjxkZXBlbmRlbmN5ZmllbGQ+LgorCitPcHRpb25zOgorICAtcDx2YXJuYW1lcHJlZml4PiAgICAgICAgc2V0IDx2YXJuYW1lcHJlZml4PjoqIGluc3RlYWQgb2Ygc2hsaWJzOiouCisgIC1PICAgICAgICAgICAgICAgICAgICAgICBwcmludCB2YXJpYWJsZSBzZXR0aW5ncyB0byBzdGRvdXQuCisgIC1MPGxvY2Fsc2hsaWJzZmlsZT4gICAgICBzaGxpYnMgb3ZlcnJpZGUgZmlsZSwgbm90IGRlYmlhbi9zaGxpYnMubG9jYWwuCisgIC1UPHZhcmxpc3RmaWxlPiAgICAgICAgICB1cGRhdGUgdmFyaWFibGVzIGhlcmUsIG5vdCBkZWJpYW4vc3Vic3R2YXJzLgorICAtdDx0eXBlPiAgICAgICAgICAgICAgICAgc2V0IHBhY2thZ2UgdHlwZSAoZGVmYXVsdCBpcyBkZWIpLgorICAteDxwYWNrYWdlPiAgICAgICAgICAgICAgZXhjbHVkZSBwYWNrYWdlIGZyb20gdGhlIGdlbmVyYXRlZCBkZXBlbmRlbmNpZXMuCisgIC1TPHBrZ2J1aWxkZGlyPiAgICAgICAgICBzZWFyY2ggbmVlZGVkIGxpYnJhcmllcyBpbiB0aGUgZ2l2ZW4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhY2thZ2UgYnVpbGQgZGlyZWN0b3J5IGZpcnN0LgorICAtdiAgICAgICAgICAgICAgICAgICAgICAgZW5hYmxlIHZlcmJvc2UgbW9kZSAoY2FuIGJlIHVzZWQgbXVsdGlwbGUgdGltZXMpLgorICAtLWlnbm9yZS1taXNzaW5nLWluZm8gICAgZG9uJ3QgZmFpbCBpZiBkZXBlbmRlbmN5IGluZm9ybWF0aW9uIGNhbid0IGJlIGZvdW5kLgorICAtLXdhcm5pbmdzPTx2YWx1ZT4gICAgICAgZGVmaW5lIHNldCBvZiBhY3RpdmUgd2FybmluZ3MgKHNlZSBtYW51YWwgcGFnZSkuCisgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT4gICBjaGFuZ2UgdGhlIGFkbWluaXN0cmF0aXZlIGRpcmVjdG9yeS4KKyAgLWgsIC0taGVscCAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuCisgICAgICAtLXZlcnNpb24gICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLgorCitEZXBlbmRlbmN5IGZpZWxkcyByZWNvZ25pc2VkIGFyZToKKyAgJXMKKyIpLCAkcHJvZ25hbWUsIGpvaW4oIi8iLEBkZXBmaWVsZHMpOworfQorCitzdWIgZ2V0X21pbl92ZXJzaW9uX2Zyb21fZGVwcyB7CisgICAgbXkgKCRkZXAsICRwa2cpID0gQF87CisgICAgaWYgKCRkZXAtPmlzYSgnRHBrZzo6RGVwczo6U2ltcGxlJykpIHsKKwlpZiAoKCRkZXAtPntwYWNrYWdlfSBlcSAkcGtnKSAmJgorCSAgICBkZWZpbmVkKCRkZXAtPntyZWxhdGlvbn0pICYmCisJICAgICgoJGRlcC0+e3JlbGF0aW9ufSBlcSBSRUxfR0UpIHx8CisJICAgICAoJGRlcC0+e3JlbGF0aW9ufSBlcSBSRUxfR1QpKSkKKwl7CisJICAgIHJldHVybiAkZGVwLT57dmVyc2lvbn07CisJfQorCXJldHVybiB1bmRlZjsKKyAgICB9IGVsc2UgeworCW15ICRyZXM7CisJZm9yZWFjaCBteSAkc3ViZGVwICgkZGVwLT5nZXRfZGVwcygpKSB7CisJICAgIG15ICRtaW52ZXIgPSBnZXRfbWluX3ZlcnNpb25fZnJvbV9kZXBzKCRzdWJkZXAsICRwa2cpOworCSAgICBuZXh0IGlmIG5vdCBkZWZpbmVkICRtaW52ZXI7CisJICAgIGlmIChkZWZpbmVkICRyZXMpIHsKKwkJaWYgKHZlcnNpb25fY29tcGFyZV9yZWxhdGlvbigkbWludmVyLCBSRUxfR1QsICRyZXMpKSB7CisJCSAgICAkcmVzID0gJG1pbnZlcjsKKwkJfQorCSAgICB9IGVsc2UgeworCQkkcmVzID0gJG1pbnZlcjsKKwkgICAgfQorCX0KKwlyZXR1cm4gJHJlczsKKyAgICB9Cit9CisKK3N1YiB1cGRhdGVfZGVwZW5kZW5jeV92ZXJzaW9uIHsKKyAgICBteSAoJGRlcCwgJG1pbnZlciwgJGV4aXN0aW5nX29ubHkpID0gQF87CisgICAgcmV0dXJuIGlmIG5vdCBkZWZpbmVkKCRtaW52ZXIpOworICAgICRtaW52ZXIgPSBEcGtnOjpWZXJzaW9uLT5uZXcoJG1pbnZlcik7CisgICAgZm9yZWFjaCBteSAkc3ViZGVwIChzcGxpdCAvXHMqLFxzKi8sICRkZXApIHsKKwlpZiAoZXhpc3RzICRkZXBlbmRlbmNpZXN7JGN1cl9maWVsZH17JHN1YmRlcH0gYW5kCisJICAgIGRlZmluZWQoJGRlcGVuZGVuY2llc3skY3VyX2ZpZWxkfXskc3ViZGVwfSkpCisJeworCSAgICBpZiAoJGRlcGVuZGVuY2llc3skY3VyX2ZpZWxkfXskc3ViZGVwfSBlcSAnJyBvcgorCQl2ZXJzaW9uX2NvbXBhcmVfcmVsYXRpb24oJG1pbnZlciwgUkVMX0dULAorCQkJCSAgICAgICAgICRkZXBlbmRlbmNpZXN7JGN1cl9maWVsZH17JHN1YmRlcH0pKQorCSAgICB7CisJCSRkZXBlbmRlbmNpZXN7JGN1cl9maWVsZH17JHN1YmRlcH0gPSAkbWludmVyOworCSAgICB9CisJfSBlbHNpZiAoISRleGlzdGluZ19vbmx5KSB7CisJICAgICRkZXBlbmRlbmNpZXN7JGN1cl9maWVsZH17JHN1YmRlcH0gPSAkbWludmVyOworCX0KKyAgICB9Cit9CisKK3N1YiBhZGRfc2hsaWJzX2RlcCB7CisgICAgbXkgKCRzb25hbWUsICRwa2csICRsaWJmaWxlKSA9IEBfOworICAgIG15IEBzaGxpYnMgPSAoJHNobGlic2xvY2FsLCAkc2hsaWJzb3ZlcnJpZGUpOworICAgIGlmICgkcGtnIGVxICIiKSB7CisJI8KgSWYgdGhlIGZpbGUgaXMgbm90IHBhY2thZ2VkLCB0cnkgdG8gZmluZCBvdXQgdGhlIHNobGlicyBmaWxlIGluCisJIyB0aGUgcGFja2FnZSBiZWluZyBidWlsdCB3aGVyZSB0aGUgbGliIGhhcyBiZWVuIGZvdW5kCisJbXkgJHBrZ19yb290ID0gZ3Vlc3NfcGtnX3Jvb3RfZGlyKCRsaWJmaWxlKTsKKwlpZiAoZGVmaW5lZCAkcGtnX3Jvb3QpIHsKKwkgICAgcHVzaCBAc2hsaWJzLCAiJHBrZ19yb290L0RFQklBTi9zaGxpYnMiOworCX0KKwkjIEZhbGxiYWNrIHRvIG90aGVyIHNobGlicyBmaWxlcyBidXQgaXQgc2hvdWxkbid0IGJlIG5lY2Vzc2FyeQorCXB1c2ggQHNobGlicywgQHBrZ19zaGxpYnM7CisgICAgfSBlbHNlIHsKKwlteSAkY29udHJvbF9maWxlID0gZ2V0X2NvbnRyb2xfcGF0aCgkcGtnLCAic2hsaWJzIik7CisJcHVzaCBAc2hsaWJzLCAkY29udHJvbF9maWxlIGlmIGRlZmluZWQgJGNvbnRyb2xfZmlsZTsKKyAgICB9CisgICAgcHVzaCBAc2hsaWJzLCAkc2hsaWJzZGVmYXVsdDsKKyAgICBwcmludCAiIExvb2tpbmcgdXAgc2hsaWJzIGRlcGVuZGVuY3kgb2YgJHNvbmFtZSBwcm92aWRlZCBieSAnJHBrZydcbiIgaWYgJGRlYnVnOworICAgIGZvcmVhY2ggbXkgJGZpbGUgKEBzaGxpYnMpIHsKKwluZXh0IGlmIG5vdCAtZSAkZmlsZTsKKwlteSAkZGVwID0gZXh0cmFjdF9mcm9tX3NobGlicygkc29uYW1lLCAkZmlsZSk7CisJaWYgKGRlZmluZWQoJGRlcCkpIHsKKwkgICAgcHJpbnQgIiBGb3VuZCAkZGVwIGluICRmaWxlXG4iIGlmICRkZWJ1ZzsKKwkgICAgZm9yZWFjaCAoc3BsaXQoLyxccyovLCAkZGVwKSkgeworCQkjIE5vdGU6IHRoZSB2YWx1ZSBpcyBlbXB0eSBmb3Igc2hsaWJzIGJhc2VkIGRlcGVuZGVuY3kKKwkJIyBzeW1ib2wgYmFzZWQgZGVwZW5kZW5jeSB3aWxsIHB1dCBhIHZhbGlkIHZlcnNpb24gYXMgdmFsdWUKKwkJJGRlcGVuZGVuY2llc3skY3VyX2ZpZWxkfXskX30gPSBEcGtnOjpWZXJzaW9uLT5uZXcoJycpOworCSAgICB9CisJICAgIHJldHVybiAxOworCX0KKyAgICB9CisgICAgcHJpbnQgIiBGb3VuZCBub3RoaW5nXG4iIGlmICRkZWJ1ZzsKKyAgICByZXR1cm4gMDsKK30KKworc3ViIHNwbGl0X3NvbmFtZSB7CisgICAgbXkgJHNvbmFtZSA9IHNoaWZ0OworICAgIGlmICgkc29uYW1lID1+IC9eKC4qKVwuc29cLiguKikkLykgeworCXJldHVybiB3YW50YXJyYXkgPyAoJDEsICQyKSA6IDE7CisgICAgfSBlbHNpZiAoJHNvbmFtZSA9fiAvXiguKiktKFxkLiopXC5zbyQvKSB7CisJcmV0dXJuIHdhbnRhcnJheSA/ICgkMSwgJDIpIDogMTsKKyAgICB9IGVsc2UgeworCXJldHVybiB3YW50YXJyYXkgPyAoKSA6IDA7CisgICAgfQorfQorCitzdWIgZXh0cmFjdF9mcm9tX3NobGlicyB7CisgICAgbXkgKCRzb25hbWUsICRzaGxpYmZpbGUpID0gQF87CisgICAgIyBTcGxpdCBzb25hbWUgaW4gbmFtZS92ZXJzaW9uCisgICAgbXkgKCRsaWJuYW1lLCAkbGlidmVyc2lvbikgPSBzcGxpdF9zb25hbWUoJHNvbmFtZSk7CisgICAgdW5sZXNzIChkZWZpbmVkICRsaWJuYW1lKSB7CisJd2FybmluZyhfZygiQ2FuJ3QgZXh0cmFjdCBuYW1lIGFuZCB2ZXJzaW9uIGZyb20gbGlicmFyeSBuYW1lIFxgJXMnIiksCisJICAgICAgICAkc29uYW1lKTsKKwlyZXR1cm47CisgICAgfQorICAgICMgT3BlbiBzaGxpYnMgZmlsZQorICAgICRzaGxpYmZpbGUgPSAiLi8kc2hsaWJmaWxlIiBpZiAkc2hsaWJmaWxlID1+IG0vXlxzLzsKKyAgICBvcGVuKFNITElCUywgIjwiLCAkc2hsaWJmaWxlKSB8fAorICAgICAgICBzeXNlcnIoX2coInVuYWJsZSB0byBvcGVuIHNoYXJlZCBsaWJzIGluZm8gZmlsZSBcYCVzJyIpLCAkc2hsaWJmaWxlKTsKKyAgICBteSAkZGVwOworICAgIHdoaWxlICg8U0hMSUJTPikgeworCXMvXHMqXG4kLy87CisJbmV4dCBpZiBtL15cIy87CisJaWYgKCFtL15ccyooPzooXFMrKTpccyspPyhcUyspXHMrKFxTKykoPzpccysoXFMuKlxTKSk/XHMqJC8pIHsKKwkgICAgd2FybmluZyhfZygic2hhcmVkIGxpYnMgaW5mbyBmaWxlIFxgJXMnIGxpbmUgJWQ6IGJhZCBsaW5lIFxgJXMnIiksCisJICAgICAgICAgICAgJHNobGliZmlsZSwgJC4sICRfKTsKKwkgICAgbmV4dDsKKwl9CisJbXkgJGRlcHJlYWQgPSBkZWZpbmVkKCQ0KSA/ICQ0IDogJyc7CisJaWYgKCgkbGlibmFtZSBlcSAkMikgJiYgKCRsaWJ2ZXJzaW9uIGVxICQzKSkgeworCSAgICAjIERlZmluZSBkZXAgYW5kIGVuZCBoZXJlIGlmIHRoZSBwYWNrYWdlIHR5cGUgZXhwbGljaXRseQorCSAgICAjIG1hdGNoZXMuIE90aGVyd2lzZSBpZiB0aGUgcGFja2FnZXR5cGUgaXMgbm90IHNwZWNpZmllZCwgdXNlCisJICAgICMgdGhlIGRlcCBvbmx5IGFzIGEgZGVmYXVsdCB0aGF0IGNhbiBiZSBvdmVycmlkZW4gYnkgYSBsYXRlcgorCSAgICAjIGxpbmUKKwkgICAgaWYgKGRlZmluZWQoJDEpKSB7CisJCWlmICgkMSBlcSAkcGFja2FnZXR5cGUpIHsKKwkJICAgICRkZXAgPSAkZGVwcmVhZDsKKwkJICAgIGxhc3Q7CisJCX0KKwkgICAgfSBlbHNlIHsKKwkJJGRlcCA9ICRkZXByZWFkIHVubGVzcyBkZWZpbmVkICRkZXA7CisJICAgIH0KKwl9CisgICAgfQorICAgIGNsb3NlKFNITElCUyk7CisgICAgcmV0dXJuICRkZXA7Cit9CisKK3N1YiBmaW5kX3N5bWJvbHNfZmlsZSB7CisgICAgbXkgKCRwa2csICRzb25hbWUsICRsaWJmaWxlKSA9IEBfOworICAgIG15IEBmaWxlczsKKyAgICBpZiAoJHBrZyBlcSAiIikgeworCSPCoElmIHRoZSBmaWxlIGlzIG5vdCBwYWNrYWdlZCwgdHJ5IHRvIGZpbmQgb3V0IHRoZSBzeW1ib2xzIGZpbGUgaW4KKwkjIHRoZSBwYWNrYWdlIGJlaW5nIGJ1aWx0IHdoZXJlIHRoZSBsaWIgaGFzIGJlZW4gZm91bmQKKwlteSAkcGtnX3Jvb3QgPSBndWVzc19wa2dfcm9vdF9kaXIoJGxpYmZpbGUpOworCWlmIChkZWZpbmVkICRwa2dfcm9vdCkgeworCSAgICBwdXNoIEBmaWxlcywgIiRwa2dfcm9vdC9ERUJJQU4vc3ltYm9scyI7CisJfQorCSMgRmFsbGJhY2sgdG8gb3RoZXIgc3ltYm9scyBmaWxlcyBidXQgaXQgc2hvdWxkbid0IGJlIG5lY2Vzc2FyeQorCXB1c2ggQGZpbGVzLCBAcGtnX3N5bWJvbHM7CisgICAgfSBlbHNlIHsKKwlwdXNoIEBmaWxlcywgIi9ldGMvZHBrZy9zeW1ib2xzLyRwa2cuc3ltYm9scy4kaG9zdF9hcmNoIiwKKwkgICAgIi9ldGMvZHBrZy9zeW1ib2xzLyRwa2cuc3ltYm9scyI7CisJbXkgJGNvbnRyb2xfZmlsZSA9IGdldF9jb250cm9sX3BhdGgoJHBrZywgInN5bWJvbHMiKTsKKwlwdXNoIEBmaWxlcywgJGNvbnRyb2xfZmlsZSBpZiBkZWZpbmVkICRjb250cm9sX2ZpbGU7CisgICAgfQorCisgICAgZm9yZWFjaCBteSAkZmlsZSAoQGZpbGVzKSB7CisJaWYgKC1lICRmaWxlIGFuZCBzeW1maWxlX2hhc19zb25hbWUoJGZpbGUsICRzb25hbWUpKSB7CisJICAgIHJldHVybiAkZmlsZTsKKwl9CisgICAgfQorICAgIHJldHVybiB1bmRlZjsKK30KKworc3ViIHN5bWZpbGVfaGFzX3NvbmFtZSB7CisgICAgbXkgKCRmaWxlLCAkc29uYW1lKSA9IEBfOworCisgICAgaWYgKGV4aXN0cyAkc3ltZmlsZV9oYXNfc29uYW1lX2NhY2hleyRmaWxlfXskc29uYW1lfSkgeworICAgICAgICByZXR1cm4gJHN5bWZpbGVfaGFzX3NvbmFtZV9jYWNoZXskZmlsZX17JHNvbmFtZX07CisgICAgfQorCisgICAgb3BlbihTWU1fRklMRSwgIjwiLCAkZmlsZSkgfHwKKyAgICAgICAgc3lzZXJyKF9nKCJjYW5ub3Qgb3BlbiBmaWxlICVzIiksICRmaWxlKTsKKyAgICBteSAkcmVzdWx0ID0gMDsKKyAgICB3aGlsZSAoPFNZTV9GSUxFPikgeworCWlmICgvXlxRJHNvbmFtZVxFIC8pIHsKKwkgICAgJHJlc3VsdCA9IDE7CisJICAgIGxhc3Q7CisJfQorICAgIH0KKyAgICBjbG9zZShTWU1fRklMRSk7CisgICAgJHN5bWZpbGVfaGFzX3NvbmFtZV9jYWNoZXskZmlsZX17JHNvbmFtZX0gPSAkcmVzdWx0OworICAgIHJldHVybiAkcmVzdWx0OworfQorCisjIGZpbmRfbGlicmFyeSAoJHNvbmFtZSwgXEBycGF0aCwgJGZvcm1hdCkKK3N1YiBteV9maW5kX2xpYnJhcnkgeworICAgIG15ICgkbGliLCAkcnBhdGgsICRmb3JtYXQsICRleGVjZmlsZSkgPSBAXzsKKyAgICBteSAkZmlsZTsKKworICAgICMgQ3JlYXRlIHJlYWwgUlBBVEggaW4gY2FzZSAkT1JJR0lOIGlzIHVzZWQKKyAgICAjIE5vdGU6IGxkLnNvIGFsc28gc3VwcG9ydHMgJFBMQVRGT1JNIGFuZCAkTElCIGJ1dCB0aGV5IGFyZQorICAgICMgdXNlZCBpbiByZWFsIGNhc2UgKHlldCkKKyAgICBteSAkbGliZGlyID0gcmVsYXRpdmVfdG9fcGtnX3Jvb3QoJGV4ZWNmaWxlKTsKKyAgICBteSAkb3JpZ2luOworICAgIGlmIChkZWZpbmVkICRsaWJkaXIpIHsKKwkkb3JpZ2luID0gIi8kbGliZGlyIjsKKwkkb3JpZ2luID1+IHN7LytbXi9dKiR9e307CisgICAgfQorICAgIG15IEBSUEFUSCA9ICgpOworICAgIGZvcmVhY2ggbXkgJHBhdGggKEB7JHJwYXRofSkgeworCWlmICgkcGF0aCA9fiAvXCRPUklHSU58XCRce09SSUdJTlx9LykgeworCSAgICBpZiAoZGVmaW5lZCAkb3JpZ2luKSB7CisJCSRwYXRoID1+IHMvXCRPUklHSU4vJG9yaWdpbi9nOworCQkkcGF0aCA9fiBzL1wkXHtPUklHSU5cfS8kb3JpZ2luL2c7CisJICAgIH0gZWxzZSB7CisJCXdhcm5pbmcoX2coIlwkT1JJR0lOIGlzIHVzZWQgaW4gUlBBVEggb2YgJXMgYW5kIHRoZSBjb3JyZXNwb25kaW5nICIgLgorCQkiZGlyZWN0b3J5IGNvdWxkIG5vdCBiZSBpZGVudGlmaWVkIGR1ZSB0byBsYWNrIG9mIERFQklBTiAiIC4KKwkJInN1Yi1kaXJlY3RvcnkgaW4gdGhlIHJvb3Qgb2YgcGFja2FnZSdzIGJ1aWxkIHRyZWUiKSwgJGV4ZWNmaWxlKTsKKwkgICAgfQorCX0KKwlwdXNoIEBSUEFUSCwgJHBhdGg7CisgICAgfQorCisgICAgIyBMb29rIGludG8gdGhlIHBhY2thZ2VzIHdlJ3JlIGN1cnJlbnRseSBidWlsZGluZyBpbiB0aGUgZm9sbG93aW5nCisgICAgIyBvcmRlcjoKKyAgICAjIC0gcGFja2FnZSBidWlsZCB0cmVlIG9mIHRoZSBiaW5hcnkgd2hpY2ggaXMgYW5hbHl6ZWQKKyAgICAjIC0gcGFja2FnZSBidWlsZCB0cmVlIGdpdmVuIG9uIHRoZSBjb21tYW5kIGxpbmUgKG9wdGlvbiAtUykKKyAgICAjIC0gb3RoZXIgcGFja2FnZSBidWlsZCB0cmVlcyB0aGF0IGNvbnRhaW4gZWl0aGVyIGEgc2hsaWJzIG9yIGEKKyAgICAjIHN5bWJvbHMgZmlsZQorICAgIG15IEBidWlsZGRpcnM7CisgICAgbXkgJHBrZ19yb290ID0gZ3Vlc3NfcGtnX3Jvb3RfZGlyKCRleGVjZmlsZSk7CisgICAgcHVzaCBAYnVpbGRkaXJzLCAkcGtnX3Jvb3QgaWYgZGVmaW5lZCAkcGtnX3Jvb3Q7CisgICAgcHVzaCBAYnVpbGRkaXJzLCBAcGtnX2Rpcl90b19zZWFyY2g7CisgICAgcHVzaCBAYnVpbGRkaXJzLCBAcGtnX3Jvb3RfZGlyczsKKyAgICBteSAlZGlyX2NoZWNrZWQ7CisgICAgZm9yZWFjaCBteSAkYnVpbGRkaXIgKEBidWlsZGRpcnMpIHsKKwluZXh0IGlmIGRlZmluZWQoJGRpcl9jaGVja2VkeyRidWlsZGRpcn0pOworCSRmaWxlID0gZmluZF9saWJyYXJ5KCRsaWIsIFxAUlBBVEgsICRmb3JtYXQsICRidWlsZGRpcik7CisJcmV0dXJuICRmaWxlIGlmIGRlZmluZWQoJGZpbGUpOworCSRkaXJfY2hlY2tlZHskYnVpbGRkaXJ9ID0gMTsKKyAgICB9CisKKyAgICAjIEZhbGxiYWNrIGluIHRoZSByb290IGRpcmVjdG9yeSBpZiB3ZSBoYXZlIG5vdCBmb3VuZCB3aGF0IHdlIHdlcmUKKyAgICAjIGxvb2tpbmcgZm9yIGluIHRoZSBwYWNrYWdlcworICAgICRmaWxlID0gZmluZF9saWJyYXJ5KCRsaWIsIFxAUlBBVEgsICRmb3JtYXQsICIiKTsKKyAgICByZXR1cm4gJGZpbGUgaWYgZGVmaW5lZCgkZmlsZSk7CisKKyAgICByZXR1cm4gdW5kZWY7Cit9CisKK215ICVjYWNoZWRfcGtnbWF0Y2ggPSAoKTsKKworc3ViIGZpbmRfcGFja2FnZXMgeworICAgIG15IEBmaWxlczsKKyAgICBteSAkcGtnbWF0Y2ggPSB7fTsKKworICAgIGZvcmVhY2ggKEBfKSB7CisJaWYgKGV4aXN0cyAkY2FjaGVkX3BrZ21hdGNoeyRffSkgeworCSAgICAkcGtnbWF0Y2gtPnskX30gPSAkY2FjaGVkX3BrZ21hdGNoeyRffTsKKwl9IGVsc2UgeworCSAgICBwdXNoIEBmaWxlcywgJF87CisJICAgICRjYWNoZWRfcGtnbWF0Y2h7JF99ID0gWyIiXTsgIyBwbGFjZWhvbGRlciB0byBjYWNoZSBtaXNzZXMgdG9vLgorCSAgICAkcGtnbWF0Y2gtPnskX30gPSBbIiJdOyAgICAgICAgIyBtaWdodCBiZSByZXBsYWNlZCBsYXRlciBvbgorCX0KKyAgICB9CisgICAgcmV0dXJuICRwa2dtYXRjaCB1bmxlc3Mgc2NhbGFyKEBmaWxlcyk7CisKKyAgICBteSAkcGlkID0gb3BlbihEUEtHLCAiLXwiKTsKKyAgICBzeXNlcnIoX2coImNhbm5vdCBmb3JrIGZvciAlcyIpLCAiZHBrZyAtLXNlYXJjaCIpIHVubGVzcyBkZWZpbmVkKCRwaWQpOworICAgIGlmICghJHBpZCkgeworCSMgQ2hpbGQgcHJvY2VzcyBydW5uaW5nIGRwa2cgLS1zZWFyY2ggYW5kIGRpc2NhcmRpbmcgZXJyb3JzCisJY2xvc2UgU1RERVJSOworCW9wZW4gU1RERVJSLCAiPiIsICIvZGV2L251bGwiOworCSRFTlZ7TENfQUxMfSA9ICJDIjsKKwlleGVjKCJkcGtnIiwgIi0tc2VhcmNoIiwgIi0tIiwgQGZpbGVzKQorCSAgICB8fCBzeXNlcnIoX2coInVuYWJsZSB0byBleGVjdXRlICVzIiksICJkcGtnIik7CisgICAgfQorICAgIHdoaWxlKGRlZmluZWQoJF8gPSA8RFBLRz4pKSB7CisJY2hvbXAoJF8pOworCWlmIChtL15sb2NhbCBkaXZlcnNpb24gfF5kaXZlcnNpb24gYnkvKSB7CisJICAgIHdhcm5pbmcoX2coImRpdmVyc2lvbnMgaW52b2x2ZWQgLSBvdXRwdXQgbWF5IGJlIGluY29ycmVjdCIpKTsKKwkgICAgcHJpbnQoU1RERVJSICIgJF9cbiIpCisJCXx8IHN5c2VycihfZygid3JpdGUgZGl2ZXJzaW9uIGluZm8gdG8gc3RkZXJyIikpOworCX0gZWxzaWYgKG0vXihbLWEtejAtOSsuOiwgXSspOiAoXC8uKikkLykgeworCSAgICAkY2FjaGVkX3BrZ21hdGNoeyQyfSA9ICRwa2dtYXRjaC0+eyQyfSA9IFsgc3BsaXQoLywgLywgJDEpIF07CisJfSBlbHNlIHsKKwkgICAgd2FybmluZyhfZygidW5rbm93biBvdXRwdXQgZnJvbSBkcGtnIC0tc2VhcmNoOiAnJXMnIiksICRfKTsKKwl9CisgICAgfQorICAgIGNsb3NlKERQS0cpOworICAgIHJldHVybiAkcGtnbWF0Y2g7Cit9CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvZHBrZy1zb3VyY2UucGwgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvZHBrZy1zb3VyY2UucGwKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMC4uMWI5MDQ5MQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9kcGtnLXNvdXJjZS5wbApAQCAtMCwwICsxLDUxNiBAQAorIyEgL3Vzci9iaW4vcGVybAorIyB2aW06IHNldCBldCBzdz00IHRzPTgKKyMKKyMgZHBrZy1zb3VyY2UKKyMKKyMgQ29weXJpZ2h0IMKpIDE5OTYgSWFuIEphY2tzb24gPGlhbkBkYXZlbmFudC5ncmVlbmVuZC5vcmcudWs+CisjIENvcHlyaWdodCDCqSAxOTk3IEtsZWUgRGllbmVzIDxrbGVlQGRlYmlhbi5vcmc+CisjIENvcHlyaWdodCDCqSAxOTk5LTIwMDMgV2ljaGVydCBBa2tlcm1hbiA8d2Fra2VybWFAZGViaWFuLm9yZz4KKyMgQ29weXJpZ2h0IMKpIDE5OTkgQmVuIENvbGxpbnMgPGJjb2xsaW5zQGRlYmlhbi5vcmc+CisjIENvcHlyaWdodCDCqSAyMDAwLTIwMDMgQWRhbSBIZWF0aCA8ZG9vZ2llQGRlYmlhbi5vcmc+CisjIENvcHlyaWdodCDCqSAyMDA1IEJyZW5kYW4gTydEZWEgPGJvZEBkZWJpYW4ub3JnPgorIyBDb3B5cmlnaHQgwqkgMjAwNi0yMDA4IEZyYW5rIExpY2h0ZW5oZWxkIDxkanBpZ0BkZWJpYW4ub3JnPgorIyBDb3B5cmlnaHQgwqkgMjAwNi0yMDA5IEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KKyMgQ29weXJpZ2h0IMKpIDIwMDgtMjAxMSBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisjCisjIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisjIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisjIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisjIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisjCisjIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisjIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisjCisjIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisjIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorCit1c2Ugc3RyaWN0OwordXNlIHdhcm5pbmdzOworCit1c2UgRHBrZzsKK3VzZSBEcGtnOjpHZXR0ZXh0OwordXNlIERwa2c6OkVycm9ySGFuZGxpbmc7Cit1c2UgRHBrZzo6QXJjaCBxdyhkZWJhcmNoX2VxKTsKK3VzZSBEcGtnOjpEZXBzOwordXNlIERwa2c6OkNvbXByZXNzaW9uOwordXNlIERwa2c6OkNvbmY7Cit1c2UgRHBrZzo6Q29udHJvbDo6SW5mbzsKK3VzZSBEcGtnOjpDb250cm9sOjpGaWVsZHM7Cit1c2UgRHBrZzo6U3Vic3R2YXJzOwordXNlIERwa2c6OlZlcnNpb247Cit1c2UgRHBrZzo6VmFyczsKK3VzZSBEcGtnOjpDaGFuZ2Vsb2c6OlBhcnNlOwordXNlIERwa2c6OlNvdXJjZTo6UGFja2FnZTsKK3VzZSBEcGtnOjpWZW5kb3IgcXcocnVuX3ZlbmRvcl9ob29rKTsKKwordXNlIEN3ZDsKK3VzZSBGaWxlOjpCYXNlbmFtZTsKK3VzZSBGaWxlOjpTcGVjOworCit0ZXh0ZG9tYWluKCJkcGtnLWRldiIpOworCitteSAkY29udHJvbGZpbGU7CitteSAkY2hhbmdlbG9nZmlsZTsKK215ICRjaGFuZ2Vsb2dmb3JtYXQ7CisKK215ICRidWlsZF9mb3JtYXQ7CitteSAlb3B0aW9ucyA9ICgKKyAgICAjIENvbXByZXNzaW9uIHJlbGF0ZWQKKyAgICBjb21wcmVzc2lvbiA9PiBjb21wcmVzc2lvbl9nZXRfZGVmYXVsdCgpLAorICAgIGNvbXBfbGV2ZWwgPT4gY29tcHJlc3Npb25fZ2V0X2RlZmF1bHRfbGV2ZWwoKSwKKyAgICBjb21wX2V4dCA9PiBjb21wcmVzc2lvbl9nZXRfcHJvcGVydHkoY29tcHJlc3Npb25fZ2V0X2RlZmF1bHQoKSwgImZpbGVfZXh0IiksCisgICAgIyBJZ25vcmUgZmlsZXMKKyAgICB0YXJfaWdub3JlID0+IFtdLAorICAgIGRpZmZfaWdub3JlX3JlZ2V4cCA9PiAnJywKKyAgICAjIE1pc2Mgb3B0aW9ucworICAgIGNvcHlfb3JpZ190YXJiYWxscyA9PiAxLAorICAgIG5vX2NoZWNrID0+IDAsCisgICAgcmVxdWlyZV92YWxpZF9zaWduYXR1cmUgPT4gMCwKKyk7CisKKyMgRmllbGRzIHRvIHJlbW92ZS9vdmVycmlkZQorbXkgJXJlbW92ZTsKK215ICVvdmVycmlkZTsKKworbXkgJHN1YnN0dmFycyA9IERwa2c6OlN1YnN0dmFycy0+bmV3KCk7CitteSAkdGFyX2lnbm9yZV9kZWZhdWx0X3BhdHRlcm5fZG9uZTsKKworbXkgQG9wdGlvbnM7CitteSBAY21kbGluZV9vcHRpb25zOword2hpbGUgKEBBUkdWICYmICRBUkdWWzBdID1+IG0vXi0vKSB7CisgICAgJF8gPSBzaGlmdChAQVJHVik7CisgICAgaWYgKG0vXi1iJC8pIHsKKyAgICAgICAgc2V0b3Btb2RlKCctYicpOworICAgIH0gZWxzaWYgKG0vXi14JC8pIHsKKyAgICAgICAgc2V0b3Btb2RlKCcteCcpOworICAgIH0gZWxzaWYgKG0vXi0tKGJlZm9yZXxhZnRlciktYnVpbGQkLykgeworICAgICAgICBzZXRvcG1vZGUoJF8pOworICAgIH0gZWxzaWYgKG0vXi0tY29tbWl0JC8pIHsKKyAgICAgICAgc2V0b3Btb2RlKCRfKTsKKyAgICB9IGVsc2lmIChtL14tLXByaW50LWZvcm1hdCQvKSB7CisJc2V0b3Btb2RlKCctLXByaW50LWZvcm1hdCcpOworCXJlcG9ydF9vcHRpb25zKGluZm9fZmggPT4gXCpTVERFUlIpOyAjIEF2b2lkIGNsdXR0ZXIgb24gU1RET1VUCisgICAgfSBlbHNlIHsKKwlwdXNoIEBvcHRpb25zLCAkXzsKKyAgICB9Cit9CisKK215ICRkaXI7CitpZiAoZGVmaW5lZCgkb3B0aW9uc3snb3Btb2RlJ30pICYmCisgICAgJG9wdGlvbnN7J29wbW9kZSd9ID1+IC9eKC1ifC0tcHJpbnQtZm9ybWF0fC0tKGJlZm9yZXxhZnRlciktYnVpbGR8LS1jb21taXQpJC8pIHsKKyAgICBpZiAobm90IHNjYWxhcihAQVJHVikpIHsKKwl1c2FnZWVycihfZygiJXMgbmVlZHMgYSBkaXJlY3RvcnkiKSwgJG9wdGlvbnN7J29wbW9kZSd9KQorCSAgICB1bmxlc3MgJDEgZXEgIi0tY29tbWl0IjsKKwkkZGlyID0gIi4iOworICAgIH0gZWxzZSB7CisJJGRpciA9IEZpbGU6OlNwZWMtPmNhdGRpcihzaGlmdChAQVJHVikpOworICAgIH0KKyAgICBzdGF0KCRkaXIpIHx8IHN5c2VycihfZygiY2Fubm90IHN0YXQgZGlyZWN0b3J5ICVzIiksICRkaXIpOworICAgIGlmIChub3QgLWQgJGRpcikgeworCWVycm9yKF9nKCJkaXJlY3RvcnkgYXJndW1lbnQgJXMgaXMgbm90IGEgZGlyZWN0b3J5IiksICRkaXIpOworICAgIH0KKyAgICBpZiAoJGRpciBlcSAiLiIpIHsKKwkjIC4gaXMgbmV2ZXIgY29ycmVjdCwgYWRqdXN0IGF1dG9tYXRpY2FsbHkKKwkkZGlyID0gYmFzZW5hbWUoY3dkKCkpOworCWNoZGlyKCIuLiIpIHx8IHN5c2VycihfZygidW5hYmxlIHRvIGNoZGlyIHRvIGAlcyciKSwgIi4uIik7CisgICAgfQorICAgICMgLS1mb3JtYXQgb3B0aW9ucyBhcmUgbm90IGFsbG93ZWQsIHRoZXkgd291bGQgdGFrZSBwcmVjZWRlbmNlCisgICAgIyBvdmVyIHJlYWwgY29tbWFuZCBsaW5lIG9wdGlvbnMsIGRlYmlhbi9zb3VyY2UvZm9ybWF0IHNob3VsZCBiZSB1c2VkCisgICAgIyBpbnN0ZWFkCisgICAgIyAtLXVuYXBwbHktcGF0Y2hlcyBpcyBvbmx5IGFsbG93ZWQgaW4gbG9jYWwtb3B0aW9ucyBhcyBpdCdzIGEgbWF0dGVyCisgICAgIyBvZiBwZXJzb25hbCB0YXN0ZSBhbmQgdGhlIGRlZmF1bHQgc2hvdWxkIGJlIHRvIGtlZXAgcGF0Y2hlcyBhcHBsaWVkCisgICAgbXkgJGZvcmJpZGRlbl9vcHRzX3JlID0geworCSJvcHRpb25zIiA9PiBxci9eLS0oPzpmb3JtYXQ9fHVuYXBwbHktcGF0Y2hlcyR8YWJvcnQtb24tdXBzdHJlYW0tY2hhbmdlcyQpLywKKwkibG9jYWwtb3B0aW9ucyIgPT4gcXIvXi0tZm9ybWF0PS8sCisgICAgfTsKKyAgICBmb3JlYWNoIG15ICRmaWxlbmFtZSAoImxvY2FsLW9wdGlvbnMiLCAib3B0aW9ucyIpIHsKKwlteSAkY29uZiA9IERwa2c6OkNvbmYtPm5ldygpOworCW15ICRvcHRmaWxlID0gRmlsZTo6U3BlYy0+Y2F0ZmlsZSgkZGlyLCAiZGViaWFuIiwgInNvdXJjZSIsICRmaWxlbmFtZSk7CisJbmV4dCB1bmxlc3MgLWYgJG9wdGZpbGU7CisJJGNvbmYtPmxvYWQoJG9wdGZpbGUpOworCSRjb25mLT5maWx0ZXIocmVtb3ZlID0+IHN1YiB7ICRfWzBdID1+ICRmb3JiaWRkZW5fb3B0c19yZS0+eyRmaWxlbmFtZX0gfSk7CisJaWYgKEAkY29uZikgeworCSAgICBpbmZvKF9nKCJ1c2luZyBvcHRpb25zIGZyb20gJXM6ICVzIiksICRvcHRmaWxlLCBqb2luKCIgIiwgQCRjb25mKSkKKwkJdW5sZXNzICRvcHRpb25zeydvcG1vZGUnfSBlcSAiLS1wcmludC1mb3JtYXQiOworCSAgICB1bnNoaWZ0IEBvcHRpb25zLCBAJGNvbmY7CisJfQorICAgIH0KK30KKword2hpbGUgKEBvcHRpb25zKSB7CisgICAgJF8gPSBzaGlmdChAb3B0aW9ucyk7CisgICAgaWYgKG0vXi0tZm9ybWF0PSguKikkLykgeworCSRidWlsZF9mb3JtYXQgPSAkMSB1bmxlc3MgZGVmaW5lZCAkYnVpbGRfZm9ybWF0OworICAgIH0gZWxzaWYgKG0vXi0oPzpafC1jb21wcmVzc2lvbj0pKC4qKSQvKSB7CisJbXkgJGNvbXByZXNzaW9uID0gJDE7CisJJG9wdGlvbnN7J2NvbXByZXNzaW9uJ30gPSAkY29tcHJlc3Npb247CisJJG9wdGlvbnN7J2NvbXBfZXh0J30gPSBjb21wcmVzc2lvbl9nZXRfcHJvcGVydHkoJGNvbXByZXNzaW9uLCAiZmlsZV9leHQiKTsKKwl1c2FnZWVycihfZygiJXMgaXMgbm90IGEgc3VwcG9ydGVkIGNvbXByZXNzaW9uIiksICRjb21wcmVzc2lvbikKKwkgICAgdW5sZXNzIGNvbXByZXNzaW9uX2lzX3N1cHBvcnRlZCgkY29tcHJlc3Npb24pOworCWNvbXByZXNzaW9uX3NldF9kZWZhdWx0KCRjb21wcmVzc2lvbik7CisgICAgfSBlbHNpZiAobS9eLSg/Onp8LWNvbXByZXNzaW9uLWxldmVsPSkoLiopJC8pIHsKKwlteSAkY29tcF9sZXZlbCA9ICQxOworCSRvcHRpb25zeydjb21wX2xldmVsJ30gPSAkY29tcF9sZXZlbDsKKwl1c2FnZWVycihfZygiJXMgaXMgbm90IGEgY29tcHJlc3Npb24gbGV2ZWwiKSwgJGNvbXBfbGV2ZWwpCisJICAgIHVubGVzcyBjb21wcmVzc2lvbl9pc192YWxpZF9sZXZlbCgkY29tcF9sZXZlbCk7CisJY29tcHJlc3Npb25fc2V0X2RlZmF1bHRfbGV2ZWwoJGNvbXBfbGV2ZWwpOworICAgIH0gZWxzaWYgKG0vXi1jKC4qKSQvKSB7CisgICAgICAgICRjb250cm9sZmlsZSA9ICQxOworICAgIH0gZWxzaWYgKG0vXi1sKC4qKSQvKSB7CisgICAgICAgICRjaGFuZ2Vsb2dmaWxlID0gJDE7CisgICAgfSBlbHNpZiAobS9eLUYoWzAtOWEtel0rKSQvKSB7CisgICAgICAgICRjaGFuZ2Vsb2dmb3JtYXQgPSAkMTsKKyAgICB9IGVsc2lmIChtL14tRChbXlw9Ol0rKVs9Ol0oLiopJC9zKSB7CisgICAgICAgICRvdmVycmlkZXskMX0gPSAkMjsKKyAgICB9IGVsc2lmIChtL14tVShbXlw9Ol0rKSQvKSB7CisgICAgICAgICRyZW1vdmV7JDF9ID0gMTsKKyAgICB9IGVsc2lmIChtL14tKD86aXwtZGlmZi1pZ25vcmUoPzokfD0pKSguKikkLykgeworICAgICAgICAkb3B0aW9uc3snZGlmZl9pZ25vcmVfcmVnZXhwJ30gPSAkMSA/ICQxIDogJERwa2c6OlNvdXJjZTo6UGFja2FnZTo6ZGlmZl9pZ25vcmVfZGVmYXVsdF9yZWdleHA7CisgICAgfSBlbHNpZiAobS9eLS1leHRlbmQtZGlmZi1pZ25vcmU9KC4rKSQvKSB7CisJJERwa2c6OlNvdXJjZTo6UGFja2FnZTo6ZGlmZl9pZ25vcmVfZGVmYXVsdF9yZWdleHAgLj0gInwkMSI7CisJaWYgKCRvcHRpb25zeydkaWZmX2lnbm9yZV9yZWdleHAnfSkgeworCSAgICAkb3B0aW9uc3snZGlmZl9pZ25vcmVfcmVnZXhwJ30gLj0gInwkMSI7CisJfQorICAgIH0gZWxzaWYgKG0vXi0oPzpJfC10YXItaWdub3JlPSkoLispJC8pIHsKKyAgICAgICAgcHVzaCBAeyRvcHRpb25zeyd0YXJfaWdub3JlJ319LCAkMTsKKyAgICB9IGVsc2lmIChtL14tKD86SXwtdGFyLWlnbm9yZSkkLykgeworICAgICAgICB1bmxlc3MgKCR0YXJfaWdub3JlX2RlZmF1bHRfcGF0dGVybl9kb25lKSB7CisgICAgICAgICAgICBwdXNoIEB7JG9wdGlvbnN7J3Rhcl9pZ25vcmUnfX0sIEBEcGtnOjpTb3VyY2U6OlBhY2thZ2U6OnRhcl9pZ25vcmVfZGVmYXVsdF9wYXR0ZXJuOworICAgICAgICAgICAgIyBQcmV2ZW50IGFkZGluZyBtdWx0aXBsZSB0aW1lcworICAgICAgICAgICAgJHRhcl9pZ25vcmVfZGVmYXVsdF9wYXR0ZXJuX2RvbmUgPSAxOworICAgICAgICB9CisgICAgfSBlbHNpZiAobS9eLS1uby1jb3B5JC8pIHsKKyAgICAgICAgJG9wdGlvbnN7J2NvcHlfb3JpZ190YXJiYWxscyd9ID0gMDsKKyAgICB9IGVsc2lmIChtL14tLW5vLWNoZWNrJC8pIHsKKyAgICAgICAgJG9wdGlvbnN7J25vX2NoZWNrJ30gPSAxOworICAgIH0gZWxzaWYgKG0vXi0tcmVxdWlyZS12YWxpZC1zaWduYXR1cmUkLykgeworICAgICAgICAkb3B0aW9uc3sncmVxdWlyZV92YWxpZF9zaWduYXR1cmUnfSA9IDE7CisgICAgfSBlbHNpZiAobS9eLVYoXHdbLTowLTlBLVphLXpdKilbPTpdKC4qKSQvcykgeworICAgICAgICAkc3Vic3R2YXJzLT5zZXQoJDEsICQyKTsKKyAgICB9IGVsc2lmIChtL14tVCguKikkLykgeworCSRzdWJzdHZhcnMtPmxvYWQoJDEpIGlmIC1lICQxOworICAgIH0gZWxzaWYgKG0vXi0oaHwtaGVscCkkLykgeworICAgICAgICB1c2FnZSgpOworICAgICAgICBleGl0KDApOworICAgIH0gZWxzaWYgKG0vXi0tdmVyc2lvbiQvKSB7CisgICAgICAgIHZlcnNpb24oKTsKKyAgICAgICAgZXhpdCgwKTsKKyAgICB9IGVsc2lmIChtL14tW0VXXSQvKSB7CisgICAgICAgICMgRGVwcmVjYXRlZCBvcHRpb24KKyAgICAgICAgd2FybmluZyhfZygiLUUgYW5kIC1XIGFyZSBkZXByZWNhdGVkLCB0aGV5IGFyZSB3aXRob3V0IGVmZmVjdCIpKTsKKyAgICB9IGVsc2lmIChtL14tcSQvKSB7CisgICAgICAgIHJlcG9ydF9vcHRpb25zKHF1aWV0X3dhcm5pbmdzID0+IDEpOworICAgICAgICAkb3B0aW9uc3sncXVpZXQnfSA9IDE7CisgICAgfSBlbHNpZiAobS9eLS0kLykgeworICAgICAgICBsYXN0OworICAgIH0gZWxzZSB7CisgICAgICAgIHB1c2ggQGNtZGxpbmVfb3B0aW9ucywgJF87CisgICAgfQorfQorCit1bmxlc3MgKGRlZmluZWQoJG9wdGlvbnN7J29wbW9kZSd9KSkgeworICAgIHVzYWdlZXJyKF9nKCJuZWVkIGEgY29tbWFuZCAoLXgsIC1iLCAtLWJlZm9yZS1idWlsZCwgLS1hZnRlci1idWlsZCwgLS1wcmludC1mb3JtYXQsIC0tY29tbWl0KSIpKTsKK30KKworaWYgKCRvcHRpb25zeydvcG1vZGUnfSA9fiAvXigtYnwtLXByaW50LWZvcm1hdHwtLShiZWZvcmV8YWZ0ZXIpLWJ1aWxkfC0tY29tbWl0KSQvKSB7CisKKyAgICAkb3B0aW9uc3snQVJHVid9ID0gXEBBUkdWOworCisgICAgJGNoYW5nZWxvZ2ZpbGUgfHw9ICIkZGlyL2RlYmlhbi9jaGFuZ2Vsb2ciOworICAgICRjb250cm9sZmlsZSB8fD0gIiRkaXIvZGViaWFuL2NvbnRyb2wiOworICAgIAorICAgIG15ICVjaF9vcHRpb25zID0gKGZpbGUgPT4gJGNoYW5nZWxvZ2ZpbGUpOworICAgICRjaF9vcHRpb25zeyJjaGFuZ2Vsb2dmb3JtYXQifSA9ICRjaGFuZ2Vsb2dmb3JtYXQgaWYgJGNoYW5nZWxvZ2Zvcm1hdDsKKyAgICBteSAkY2hhbmdlbG9nID0gY2hhbmdlbG9nX3BhcnNlKCVjaF9vcHRpb25zKTsKKyAgICBteSAkY29udHJvbCA9IERwa2c6OkNvbnRyb2w6OkluZm8tPm5ldygkY29udHJvbGZpbGUpOworCisgICAgbXkgJHNyY3BrZyA9IERwa2c6OlNvdXJjZTo6UGFja2FnZS0+bmV3KG9wdGlvbnMgPT4gXCVvcHRpb25zKTsKKyAgICBteSAkZmllbGRzID0gJHNyY3BrZy0+eydmaWVsZHMnfTsKKworICAgIG15IEBzb3VyY2VhcmNoOworICAgIG15ICVhcmNoYWRkZWQ7CisgICAgbXkgQGJpbmFyeXBhY2thZ2VzOworCisgICAgIyBTY2FuIGNvbnRyb2wgaW5mbyBvZiBzb3VyY2UgcGFja2FnZQorICAgIG15ICRzcmNfZmllbGRzID0gJGNvbnRyb2wtPmdldF9zb3VyY2UoKTsKKyAgICBlcnJvcihfZygiJXMgZG9lc24ndCBjb250YWluIGFueSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgc291cmNlIHBhY2thZ2UiKSwKKyAgICAgICAgICAkY29udHJvbGZpbGUpIHVubGVzcyBkZWZpbmVkICRzcmNfZmllbGRzOworICAgIG15ICRzcmNfc2VjdCA9ICRzcmNfZmllbGRzLT57J1NlY3Rpb24nfSB8fCAidW5rbm93biI7CisgICAgbXkgJHNyY19wcmlvID0gJHNyY19maWVsZHMtPnsnUHJpb3JpdHknfSB8fCAidW5rbm93biI7CisgICAgZm9yZWFjaCAkXyAoa2V5cyAleyRzcmNfZmllbGRzfSkgeworCW15ICR2ID0gJHNyY19maWVsZHMtPnskX307CisJaWYgKG0vXlNvdXJjZSQvaSkgeworCSAgICBzZXRfc291cmNlX3BhY2thZ2UoJHYpOworCSAgICAkZmllbGRzLT57JF99ID0gJHY7CisJfSBlbHNpZiAobS9eVXBsb2FkZXJzJC9pKSB7CisJICAgICgkZmllbGRzLT57JF99ID0gJHYpID1+IHMvXHMqW1xyXG5dXHMqLyAvZzsgIyBNZXJnZSBpbiBhIHNpbmdsZS1saW5lCisJfSBlbHNpZiAobS9eQnVpbGQtKERlcGVuZHN8Q29uZmxpY3RzKSgtSW5kZXApPyQvaSkgeworCSAgICBteSAkZGVwOworCSAgICBteSAkdHlwZSA9IGZpZWxkX2dldF9kZXBfdHlwZSgkXyk7CisJICAgICRkZXAgPSBkZXBzX3BhcnNlKCR2LCB1bmlvbiA9PiAkdHlwZSBlcSAndW5pb24nKTsKKwkgICAgZXJyb3IoX2coImVycm9yIG9jY3VycmVkIHdoaWxlIHBhcnNpbmcgJXMiKSwgJF8pIHVubGVzcyBkZWZpbmVkICRkZXA7CisJICAgIG15ICRmYWN0cyA9IERwa2c6OkRlcHM6Oktub3duRmFjdHMtPm5ldygpOworCSAgICAkZGVwLT5zaW1wbGlmeV9kZXBzKCRmYWN0cyk7CisJICAgICRkZXAtPnNvcnQoKSBpZiAkdHlwZSBlcSAndW5pb24nOworCSAgICAkZmllbGRzLT57JF99ID0gJGRlcC0+b3V0cHV0KCk7CisJfSBlbHNlIHsKKyAgICAgICAgICAgIGZpZWxkX3RyYW5zZmVyX3NpbmdsZSgkc3JjX2ZpZWxkcywgJGZpZWxkcyk7CisJfQorICAgIH0KKworICAgICMgU2NhbiBjb250cm9sIGluZm8gb2YgYmluYXJ5IHBhY2thZ2VzCisgICAgbXkgQHBrZ2xpc3Q7CisgICAgZm9yZWFjaCBteSAkcGtnICgkY29udHJvbC0+Z2V0X3BhY2thZ2VzKCkpIHsKKwlteSAkcCA9ICRwa2ctPnsnUGFja2FnZSd9OworCW15ICRzZWN0ID0gJHBrZy0+eydTZWN0aW9uJ30gfHwgJHNyY19zZWN0OworCW15ICRwcmlvID0gJHBrZy0+eydQcmlvcml0eSd9IHx8ICRzcmNfcHJpbzsKKwlteSAkdHlwZSA9ICRwa2ctPnsnUGFja2FnZS1UeXBlJ30gfHwKKwkgICAgICAgICRwa2ctPmdldF9jdXN0b21fZmllbGQoJ1BhY2thZ2UtVHlwZScpIHx8ICdkZWInOworCXB1c2ggQHBrZ2xpc3QsIHNwcmludGYoIiVzICVzICVzICVzIiwgJHAsICR0eXBlLCAkc2VjdCwgJHByaW8pOworCXB1c2goQGJpbmFyeXBhY2thZ2VzLCRwKTsKKwlmb3JlYWNoICRfIChrZXlzICV7JHBrZ30pIHsKKwkgICAgbXkgJHYgPSAkcGtnLT57JF99OworICAgICAgICAgICAgaWYgKG0vXkFyY2hpdGVjdHVyZSQvKSB7CisgICAgICAgICAgICAgICAgIyBHYXRoZXIgYWxsIGJpbmFyeSBhcmNoaXRlY3R1cmVzIGluIG9uZSBzZXQuICdhbnknIGFuZCAnYWxsJworICAgICAgICAgICAgICAgICMgYXJlIHNwZWNpYWwtY2FzZWQgYXMgdGhleSBuZWVkIHRvIGJlIHRoZSBvbmx5IG9uZXMgaW4gdGhlCisgICAgICAgICAgICAgICAgIyBjdXJyZW50IHN0YW56YSBpZiBwcmVzZW50LgorICAgICAgICAgICAgICAgIGlmIChkZWJhcmNoX2VxKCR2LCAnYW55JykgfHwgZGViYXJjaF9lcSgkdiwgJ2FsbCcpKSB7CisgICAgICAgICAgICAgICAgICAgIHB1c2goQHNvdXJjZWFyY2gsICR2KSB1bmxlc3MgJGFyY2hhZGRlZHskdn0rKzsKKyAgICAgICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgICAgICAgICBmb3IgbXkgJGEgKHNwbGl0KC9ccysvLCAkdikpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGVycm9yKF9nKCJgJXMnIGlzIG5vdCBhIGxlZ2FsIGFyY2hpdGVjdHVyZSBzdHJpbmciKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRhKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVubGVzcyAkYSA9fiAvXltcdy1dKyQvOworICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3IoX2coImFyY2hpdGVjdHVyZSAlcyBvbmx5IGFsbG93ZWQgb24gaXRzICIgLgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm93biAobGlzdCBmb3IgcGFja2FnZSAlcyBpcyBgJXMnKSIpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGEsICRwLCAkYSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiBncmVwKCRhIGVxICRfLCAnYW55JywgJ2FsbCcpOworICAgICAgICAgICAgICAgICAgICAgICAgcHVzaChAc291cmNlYXJjaCwgJGEpIHVubGVzcyAkYXJjaGFkZGVkeyRhfSsrOworICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfSBlbHNpZiAobS9eSG9tZXBhZ2UkLykgeworICAgICAgICAgICAgICAgICMgRG8gbm90IG92ZXJ3cml0ZSB0aGUgc2FtZSBmaWVsZCBmcm9tIHRoZSBzb3VyY2UgZW50cnkKKyAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgZmllbGRfdHJhbnNmZXJfc2luZ2xlKCRwa2csICRmaWVsZHMpOworICAgICAgICAgICAgfQorCX0KKyAgICB9CisgICAgdW5sZXNzIChzY2FsYXIoQHBrZ2xpc3QpKSB7CisJZXJyb3IoX2coIiVzIGRvZXNuJ3QgbGlzdCBhbnkgYmluYXJ5IHBhY2thZ2UiKSwgJGNvbnRyb2xmaWxlKTsKKyAgICB9CisgICAgaWYgKGdyZXAoJF8gZXEgJ2FueScsIEBzb3VyY2VhcmNoKSkgeworICAgICAgICAjIElmIHdlIGVuY291bnRlciBvbmUgJ2FueScgdGhlbiB0aGUgb3RoZXIgYXJjaGVzIGJlY29tZSBpbnNpZ25pZmljYW50CisgICAgICAgICMgZXhjZXB0IGZvciAnYWxsJyB0aGF0IG11c3QgYWxzbyBiZSBrZXB0CisgICAgICAgIGlmIChncmVwKCRfIGVxICdhbGwnLCBAc291cmNlYXJjaCkpIHsKKyAgICAgICAgICAgIEBzb3VyY2VhcmNoID0gKCdhbnknLCAnYWxsJyk7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICBAc291cmNlYXJjaCA9ICgnYW55Jyk7CisgICAgICAgIH0KKyAgICB9CisgICAgJGZpZWxkcy0+eydBcmNoaXRlY3R1cmUnfSA9IGpvaW4oJyAnLCBAc291cmNlYXJjaCk7CisgICAgJGZpZWxkcy0+eydQYWNrYWdlLUxpc3QnfSA9ICJcbiIgLiBqb2luKCJcbiIsIHNvcnQgQHBrZ2xpc3QpOworCisgICAgIyBTY2FuIGZpZWxkcyBvZiBkcGtnLXBhcnNlY2hhbmdlbG9nCisgICAgZm9yZWFjaCAkXyAoa2V5cyAleyRjaGFuZ2Vsb2d9KSB7CisgICAgICAgIG15ICR2ID0gJGNoYW5nZWxvZy0+eyRffTsKKworCWlmIChtL15Tb3VyY2UkLykgeworCSAgICBzZXRfc291cmNlX3BhY2thZ2UoJHYpOworCSAgICAkZmllbGRzLT57JF99ID0gJHY7CisJfSBlbHNpZiAobS9eVmVyc2lvbiQvKSB7CisJICAgIG15ICgkb2ssICRlcnJvcikgPSB2ZXJzaW9uX2NoZWNrKCR2KTsKKyAgICAgICAgICAgIGVycm9yKCRlcnJvcikgdW5sZXNzICRvazsKKwkgICAgJGZpZWxkcy0+eyRffSA9ICR2OworCX0gZWxzaWYgKG0vXk1haW50YWluZXIkL2kpIHsKKyAgICAgICAgICAgICMgRG8gbm90IHJlcGxhY2UgdGhlIGZpZWxkIGNvbWluZyBmcm9tIHRoZSBzb3VyY2UgZW50cnkKKwl9IGVsc2UgeworICAgICAgICAgICAgZmllbGRfdHJhbnNmZXJfc2luZ2xlKCRjaGFuZ2Vsb2csICRmaWVsZHMpOworCX0KKyAgICB9CisgICAgCisgICAgJGZpZWxkcy0+eydCaW5hcnknfSA9IGpvaW4oJywgJywgQGJpbmFyeXBhY2thZ2VzKTsKKyAgICAjIEF2b2lkIG92ZXJseSBsb25nIGxpbmUgYnkgc3BsaXR0aW5nIG92ZXIgbXVsdGlwbGUgbGluZXMKKyAgICBpZiAobGVuZ3RoKCRmaWVsZHMtPnsnQmluYXJ5J30pID4gOTgwKSB7CisJJGZpZWxkcy0+eydCaW5hcnknfSA9fiBzLyguezAsOTgwfSksID8vJDEsXG4vZzsKKyAgICB9CisKKyAgICAjIFNlbGVjdCB0aGUgZm9ybWF0IHRvIHVzZQorICAgIGlmIChub3QgZGVmaW5lZCAkYnVpbGRfZm9ybWF0KSB7CisJaWYgKC1lICIkZGlyL2RlYmlhbi9zb3VyY2UvZm9ybWF0IikgeworCSAgICBvcGVuKEZPUk1BVCwgIjwiLCAiJGRpci9kZWJpYW4vc291cmNlL2Zvcm1hdCIpIHx8CisJCXN5c2VycihfZygiY2Fubm90IHJlYWQgJXMiKSwgIiRkaXIvZGViaWFuL3NvdXJjZS9mb3JtYXQiKTsKKwkgICAgJGJ1aWxkX2Zvcm1hdCA9IDxGT1JNQVQ+OworCSAgICBjaG9tcCgkYnVpbGRfZm9ybWF0KSBpZiBkZWZpbmVkICRidWlsZF9mb3JtYXQ7CisJICAgIGVycm9yKF9nKCIlcyBpcyBlbXB0eSIpLCAiJGRpci9kZWJpYW4vc291cmNlL2Zvcm1hdCIpCisJCXVubGVzcyBkZWZpbmVkICRidWlsZF9mb3JtYXQgYW5kIGxlbmd0aCAkYnVpbGRfZm9ybWF0OworCSAgICBjbG9zZShGT1JNQVQpOworCX0gZWxzZSB7CisJICAgIHdhcm5pbmcoX2coIm5vIHNvdXJjZSBmb3JtYXQgc3BlY2lmaWVkIGluICVzLCAiIC4KKwkgICAgICAgICAgICAgICAic2VlIGRwa2ctc291cmNlKDEpIiksICJkZWJpYW4vc291cmNlL2Zvcm1hdCIpCisJCWlmICRvcHRpb25zeydvcG1vZGUnfSBlcSAiLWIiOworCSAgICAkYnVpbGRfZm9ybWF0ID0gIjEuMCI7CisJfQorICAgIH0KKyAgICAkZmllbGRzLT57J0Zvcm1hdCd9ID0gJGJ1aWxkX2Zvcm1hdDsKKyAgICAkc3JjcGtnLT51cGdyYWRlX29iamVjdF90eXBlKCk7ICMgRmFpbHMgaWYgZm9ybWF0IGlzIHVuc3VwcG9ydGVkCisgICAgIyBQYXJzZSBjb21tYW5kIGxpbmUgb3B0aW9ucworICAgICRzcmNwa2ctPmluaXRfb3B0aW9ucygpOworICAgICRzcmNwa2ctPnBhcnNlX2NtZGxpbmVfb3B0aW9ucyhAY21kbGluZV9vcHRpb25zKTsKKworICAgIGlmICgkb3B0aW9uc3snb3Btb2RlJ30gZXEgIi0tcHJpbnQtZm9ybWF0IikgeworCXByaW50ICRmaWVsZHMtPnsnRm9ybWF0J30gLiAiXG4iOworCWV4aXQoMCk7CisgICAgfSBlbHNpZiAoJG9wdGlvbnN7J29wbW9kZSd9IGVxICItLWJlZm9yZS1idWlsZCIpIHsKKwkkc3JjcGtnLT5iZWZvcmVfYnVpbGQoJGRpcik7CisJZXhpdCgwKTsKKyAgICB9IGVsc2lmICgkb3B0aW9uc3snb3Btb2RlJ30gZXEgIi0tYWZ0ZXItYnVpbGQiKSB7CisJJHNyY3BrZy0+YWZ0ZXJfYnVpbGQoJGRpcik7CisJZXhpdCgwKTsKKyAgICB9IGVsc2lmICgkb3B0aW9uc3snb3Btb2RlJ30gZXEgIi0tY29tbWl0IikgeworCSRzcmNwa2ctPmNvbW1pdCgkZGlyKTsKKwlleGl0KDApOworICAgIH0KKworICAgICMgVmVyaWZ5IHByZS1yZXF1aXNpdGVzIGFyZSBtZXQKKyAgICBteSAoJHJlcywgJG1zZykgPSAkc3JjcGtnLT5jYW5fYnVpbGQoJGRpcik7CisgICAgZXJyb3IoX2coImNhbid0IGJ1aWxkIHdpdGggc291cmNlIGZvcm1hdCAnJXMnOiAlcyIpLCAkYnVpbGRfZm9ybWF0LCAkbXNnKSB1bmxlc3MgJHJlczsKKworICAgICMgT25seSAtYiBsZWZ0CisgICAgaW5mbyhfZygidXNpbmcgc291cmNlIGZvcm1hdCBgJXMnIiksICRmaWVsZHMtPnsnRm9ybWF0J30pOworICAgIHJ1bl92ZW5kb3JfaG9vaygiYmVmb3JlLXNvdXJjZS1idWlsZCIsICRzcmNwa2cpOworICAgICMgQnVpbGQgdGhlIGZpbGVzICgudGFyLmd6LCAuZGlmZi5neiwgZXRjKQorICAgICRzcmNwa2ctPmJ1aWxkKCRkaXIpOworCisgICAgIyBXcml0ZSB0aGUgLmRzYworICAgIG15ICRkc2NuYW1lID0gJHNyY3BrZy0+Z2V0X2Jhc2VuYW1lKDEpIC4gIi5kc2MiOworICAgIGluZm8oX2coImJ1aWxkaW5nICVzIGluICVzIiksICRzb3VyY2VwYWNrYWdlLCAkZHNjbmFtZSk7CisgICAgJHNyY3BrZy0+d3JpdGVfZHNjKGZpbGVuYW1lID0+ICRkc2NuYW1lLAorCQkgICAgICAgcmVtb3ZlID0+IFwlcmVtb3ZlLAorCQkgICAgICAgb3ZlcnJpZGUgPT4gXCVvdmVycmlkZSwKKwkJICAgICAgIHN1YnN0dmFycyA9PiAkc3Vic3R2YXJzKTsKKyAgICBleGl0KDApOworCit9IGVsc2lmICgkb3B0aW9uc3snb3Btb2RlJ30gZXEgJy14JykgeworCisgICAgIyBDaGVjayBjb21tYW5kIGxpbmUKKyAgICB1bmxlc3MgKHNjYWxhcihAQVJHVikpIHsKKwl1c2FnZWVycihfZygiLXggbmVlZHMgYXQgbGVhc3Qgb25lIGFyZ3VtZW50LCB0aGUgLmRzYyIpKTsKKyAgICB9CisgICAgaWYgKHNjYWxhcihAQVJHVikgPiAyKSB7CisJdXNhZ2VlcnIoX2coIi14IHRha2VzIG5vIG1vcmUgdGhhbiB0d28gYXJndW1lbnRzIikpOworICAgIH0KKyAgICBteSAkZHNjID0gc2hpZnQoQEFSR1YpOworICAgIGlmICgtZCAkZHNjKSB7CisJdXNhZ2VlcnIoX2coIi14IG5lZWRzIHRoZSAuZHNjIGZpbGUgYXMgZmlyc3QgYXJndW1lbnQsIG5vdCBhIGRpcmVjdG9yeSIpKTsKKyAgICB9CisKKyAgICAjIENyZWF0ZSB0aGUgb2JqZWN0IHRoYXQgZG9lcyBldmVyeXRoaW5nCisgICAgbXkgJHNyY3BrZyA9IERwa2c6OlNvdXJjZTo6UGFja2FnZS0+bmV3KGZpbGVuYW1lID0+ICRkc2MsCisJCQkJCSAgICBvcHRpb25zID0+IFwlb3B0aW9ucyk7CisKKyAgICAjIFBhcnNlIGNvbW1hbmQgbGluZSBvcHRpb25zCisgICAgJHNyY3BrZy0+cGFyc2VfY21kbGluZV9vcHRpb25zKEBjbWRsaW5lX29wdGlvbnMpOworCisgICAgIyBEZWNpZGUgd2hlcmUgdG8gdW5wYWNrCisgICAgbXkgJG5ld2RpcmVjdG9yeSA9ICRzcmNwa2ctPmdldF9iYXNlbmFtZSgpOworICAgICRuZXdkaXJlY3RvcnkgPX4gcy9fLy0vZzsKKyAgICBpZiAoQEFSR1YpIHsKKwkkbmV3ZGlyZWN0b3J5ID0gRmlsZTo6U3BlYy0+Y2F0ZGlyKHNoaWZ0KEBBUkdWKSk7CisJaWYgKC1lICRuZXdkaXJlY3RvcnkpIHsKKwkgICAgZXJyb3IoX2coInVucGFjayB0YXJnZXQgZXhpc3RzOiAlcyIpLCAkbmV3ZGlyZWN0b3J5KTsKKwl9CisgICAgfQorCisgICAgIyBWYXJpb3VzIGNoZWNrcyBiZWZvcmUgdW5wYWNraW5nCisgICAgdW5sZXNzICgkb3B0aW9uc3snbm9fY2hlY2snfSkgeworICAgICAgICBpZiAoJHNyY3BrZy0+aXNfc2lnbmVkKCkpIHsKKyAgICAgICAgICAgICRzcmNwa2ctPmNoZWNrX3NpZ25hdHVyZSgpOworICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgaWYgKCRvcHRpb25zeydyZXF1aXJlX3ZhbGlkX3NpZ25hdHVyZSd9KSB7CisgICAgICAgICAgICAgICAgZXJyb3IoX2coIiVzIGRvZXNuJ3QgY29udGFpbiBhIHZhbGlkIE9wZW5QR1Agc2lnbmF0dXJlIiksICRkc2MpOworICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICB3YXJuaW5nKF9nKCJleHRyYWN0aW5nIHVuc2lnbmVkIHNvdXJjZSBwYWNrYWdlICglcykiKSwgJGRzYyk7CisgICAgICAgICAgICB9CisgICAgICAgIH0KKyAgICAgICAgJHNyY3BrZy0+Y2hlY2tfY2hlY2tzdW1zKCk7CisgICAgfQorCisgICAgIyBVbnBhY2sgdGhlIHNvdXJjZSBwYWNrYWdlIChkZWxlZ2F0ZWQgdG8gRHBrZzo6U291cmNlOjpQYWNrYWdlOjoqKQorICAgIGluZm8oX2coImV4dHJhY3RpbmcgJXMgaW4gJXMiKSwgJHNyY3BrZy0+eydmaWVsZHMnfXsnU291cmNlJ30sICRuZXdkaXJlY3RvcnkpOworICAgICRzcmNwa2ctPmV4dHJhY3QoJG5ld2RpcmVjdG9yeSk7CisKKyAgICBleGl0KDApOworfQorCitzdWIgc2V0b3Btb2RlIHsKKyAgICBpZiAoZGVmaW5lZCgkb3B0aW9uc3snb3Btb2RlJ30pKSB7CisJdXNhZ2VlcnIoX2coIm9ubHkgb25lIG9mIC14LCAtYiBvciAtLXByaW50LWZvcm1hdCBhbGxvd2VkLCBhbmQgb25seSBvbmNlIikpOworICAgIH0KKyAgICAkb3B0aW9uc3snb3Btb2RlJ30gPSAkX1swXTsKK30KKworc3ViIHZlcnNpb24geworICAgIHByaW50ZiBfZygiRGViaWFuICVzIHZlcnNpb24gJXMuXG4iKSwgJHByb2duYW1lLCAkdmVyc2lvbjsKKworICAgIHByaW50IF9nKCIKK0NvcHlyaWdodCAoQykgMTk5NiBJYW4gSmFja3NvbgorQ29weXJpZ2h0IChDKSAxOTk3IEtsZWUgRGllbmVzCitDb3B5cmlnaHQgKEMpIDIwMDggUmFwaGFlbCBIZXJ0em9nIik7CisKKyAgICBwcmludCBfZygiCitUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAyIG9yCitsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS4KKyIpOworfQorCitzdWIgdXNhZ2UgeworICAgIHByaW50ZiBfZygKKyJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gPGNvbW1hbmQ+CisKK0NvbW1hbmRzOgorICAteCA8ZmlsZW5hbWU+LmRzYyBbPG91dHB1dC1kaXI+XQorICAgICAgICAgICAgICAgICAgICAgICAgICAgZXh0cmFjdCBzb3VyY2UgcGFja2FnZS4KKyAgLWIgPGRpcj4gICAgICAgICAgICAgICAgIGJ1aWxkIHNvdXJjZSBwYWNrYWdlLgorICAtLXByaW50LWZvcm1hdCA8ZGlyPiAgICAgcHJpbnQgdGhlIHNvdXJjZSBmb3JtYXQgdGhhdCB3b3VsZCBiZQorICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlZCB0byBidWlsZCB0aGUgc291cmNlIHBhY2thZ2UuCisgIC0tY29tbWl0IFs8ZGlyPiBbPHBhdGNoLW5hbWU+XV0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0b3JlIHVwc3RyZWFtIGNoYW5nZXMgaW4gYSBuZXcgcGF0Y2guIikKKyAgICAuICJcblxuIiAuIF9nKAorIkJ1aWxkIG9wdGlvbnM6CisgIC1jPGNvbnRyb2xmaWxlPiAgICAgICAgICBnZXQgY29udHJvbCBpbmZvIGZyb20gdGhpcyBmaWxlLgorICAtbDxjaGFuZ2Vsb2dmaWxlPiAgICAgICAgZ2V0IHBlci12ZXJzaW9uIGluZm8gZnJvbSB0aGlzIGZpbGUuCisgIC1GPGNoYW5nZWxvZ2Zvcm1hdD4gICAgICBmb3JjZSBjaGFuZ2UgbG9nIGZvcm1hdC4KKyAgLVY8bmFtZT49PHZhbHVlPiAgICAgICAgIHNldCBhIHN1YnN0aXR1dGlvbiB2YXJpYWJsZS4KKyAgLVQ8dmFybGlzdGZpbGU+ICAgICAgICAgIHJlYWQgdmFyaWFibGVzIGhlcmUuCisgIC1EPGZpZWxkPj08dmFsdWU+ICAgICAgICBvdmVycmlkZSBvciBhZGQgYSAuZHNjIGZpZWxkIGFuZCB2YWx1ZS4KKyAgLVU8ZmllbGQ+ICAgICAgICAgICAgICAgIHJlbW92ZSBhIGZpZWxkLgorICAtcSAgICAgICAgICAgICAgICAgICAgICAgcXVpZXQgbW9kZS4KKyAgLWlbPHJlZ2V4cD5dICAgICAgICAgICAgIGZpbHRlciBvdXQgZmlsZXMgdG8gaWdub3JlIGRpZmZzIG9mCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChkZWZhdWx0cyB0bzogJyVzJykuCisgIC1JWzxwYXR0ZXJuPl0gICAgICAgICAgICBmaWx0ZXIgb3V0IGZpbGVzIHdoZW4gYnVpbGRpbmcgdGFyYmFsbHMKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGRlZmF1bHRzIHRvOiAlcykuCisgIC1aPGNvbXByZXNzaW9uPiAgICAgICAgICBzZWxlY3QgY29tcHJlc3Npb24gdG8gdXNlIChkZWZhdWx0cyB0byAnJXMnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdXBwb3J0ZWQgYXJlOiAlcykuCisgIC16PGxldmVsPiAgICAgICAgICAgICAgICBjb21wcmVzc2lvbiBsZXZlbCB0byB1c2UgKGRlZmF1bHRzIHRvICclZCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN1cHBvcnRlZCBhcmU6ICcxJy0nOScsICdiZXN0JywgJ2Zhc3QnKSIpCisgICAgLiAiXG5cbiIgLiBfZygKKyJFeHRyYWN0IG9wdGlvbnM6CisgIC0tbm8tY29weSAgICAgICAgICAgICAgICBkb24ndCBjb3B5IC5vcmlnIHRhcmJhbGxzCisgIC0tbm8tY2hlY2sgICAgICAgICAgICAgICBkb24ndCBjaGVjayBzaWduYXR1cmUgYW5kIGNoZWNrc3VtcyBiZWZvcmUgdW5wYWNraW5nCisgIC0tcmVxdWlyZS12YWxpZC1zaWduYXR1cmUgYWJvcnQgaWYgdGhlIHBhY2thZ2UgZG9lc24ndCBoYXZlIGEgdmFsaWQgc2lnbmF0dXJlIikKKyAgICAuICJcblxuIiAuIF9nKAorIkdlbmVyYWwgb3B0aW9uczoKKyAgLWgsIC0taGVscCAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuCisgICAgICAtLXZlcnNpb24gICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLiIpCisgICAgLiAiXG5cbiIgLiBfZygKKyJNb3JlIG9wdGlvbnMgYXJlIGF2YWlsYWJsZSBidXQgdGhleSBkZXBlbmQgb24gdGhlIHNvdXJjZSBwYWNrYWdlIGZvcm1hdC4KK1NlZSBkcGtnLXNvdXJjZSgxKSBmb3IgbW9yZSBpbmZvLiIpIC4gIlxuIiwKKyAgICAkcHJvZ25hbWUsCisgICAgJERwa2c6OlNvdXJjZTo6UGFja2FnZTo6ZGlmZl9pZ25vcmVfZGVmYXVsdF9yZWdleHAsCisgICAgam9pbignICcsIG1hcCB7ICItSSRfIiB9IEBEcGtnOjpTb3VyY2U6OlBhY2thZ2U6OnRhcl9pZ25vcmVfZGVmYXVsdF9wYXR0ZXJuKSwKKyAgICBjb21wcmVzc2lvbl9nZXRfZGVmYXVsdCgpLAorICAgIGpvaW4oIiAiLCBjb21wcmVzc2lvbl9nZXRfbGlzdCgpKSwKKyAgICBjb21wcmVzc2lvbl9nZXRfZGVmYXVsdF9sZXZlbCgpOworfQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL2Rwa2ctdmVuZG9yLnBsIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL2Rwa2ctdmVuZG9yLnBsCm5ldyBmaWxlIG1vZGUgMTAwNzU1CmluZGV4IDAwMDAwMDAuLmYxZGFiZTMKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvZHBrZy12ZW5kb3IucGwKQEAgLTAsMCArMSwxMTYgQEAKKyMhL3Vzci9iaW4vcGVybAorIworIyBkcGtnLXZlbmRvcgorIworIyBDb3B5cmlnaHQgwqkgMjAwOSBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisjCisjIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisjIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisjIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisjIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisjCisjIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisjIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisjCisjIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisjIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorCit1c2Ugc3RyaWN0OwordXNlIHdhcm5pbmdzOworCit1c2UgRHBrZzsKK3VzZSBEcGtnOjpHZXR0ZXh0OwordXNlIERwa2c6OkVycm9ySGFuZGxpbmc7Cit1c2UgRHBrZzo6VmVuZG9yIHF3KGdldF92ZW5kb3JfaW5mbyBnZXRfY3VycmVudF92ZW5kb3IpOworCit0ZXh0ZG9tYWluKCJkcGtnLWRldiIpOworCitzdWIgdmVyc2lvbiB7CisgICAgcHJpbnRmIF9nKCJEZWJpYW4gJXMgdmVyc2lvbiAlcy5cbiIpLCAkcHJvZ25hbWUsICR2ZXJzaW9uOworCisgICAgcHJpbnRmIF9nKCIKK0NvcHlyaWdodCAoQykgMjAwOSBSYXBoYWVsIEhlcnR6b2cgPGhlcnR6b2dcQGRlYmlhbi5vcmc+LiIpOworCisgICAgcHJpbnRmIF9nKCIKK1RoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgb3IKK2xhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LgorIik7Cit9CisKK3N1YiB1c2FnZSB7CisgICAgcHJpbnRmIF9nKAorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSBbPGFjdGlvbj5dCisKK09wdGlvbnM6CisgIC0tdmVuZG9yIDx2ZW5kb3I+ICAgICAgIGFzc3VtZSA8dmVuZG9yPiBpcyB0aGUgY3VycmVudCB2ZW5kb3IKKworQWN0aW9uczoKKyAgLS1pcyA8dmVuZG9yPiAgICAgICAgICAgcmV0dXJucyB0cnVlIGlmIGN1cnJlbnQgdmVuZG9yIGlzIDx2ZW5kb3I+LgorICAtLWRlcml2ZXMtZnJvbSA8dmVuZG9yPiByZXR1cm5zIHRydWUgaWYgY3VycmVudCB2ZW5kb3IgZGVyaXZlcyBmcm9tIDx2ZW5kb3I+LgorICAtLXF1ZXJ5IDxmaWVsZD4gICAgICAgICBwcmludCB0aGUgY29udGVudCBvZiB0aGUgdmVuZG9yLXNwZWNpZmljIGZpZWxkLgorICAtLWhlbHAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLgorICAtLXZlcnNpb24gICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLgorIiksICRwcm9nbmFtZTsKK30KKworbXkgKCR2ZW5kb3IsICRwYXJhbSwgJGFjdGlvbik7CisKK3doaWxlIChAQVJHVikgeworICAgICRfID0gc2hpZnQoQEFSR1YpOworICAgIGlmIChtL14tLXZlbmRvciQvKSB7CisgICAgICAgICR2ZW5kb3IgPSBzaGlmdChAQVJHVik7CisgICAgICAgIHVzYWdlZXJyKF9nKCIlcyBuZWVkcyBhIHBhcmFtZXRlciIpLCAkXykgdW5sZXNzIGRlZmluZWQgJHZlbmRvcjsKKyAgICB9IGVsc2lmIChtL14tLShpc3xkZXJpdmVzLWZyb218cXVlcnkpJC8pIHsKKyAgICAgICAgdXNhZ2VlcnIoX2coInR3byBjb21tYW5kcyBzcGVjaWZpZWQ6IC0tJXMgYW5kIC0tJXMiKSwgJDEsICRhY3Rpb24pCisgICAgICAgICAgICBpZiBkZWZpbmVkKCRhY3Rpb24pOworICAgICAgICAkYWN0aW9uID0gJDE7CisgICAgICAgICRwYXJhbSA9IHNoaWZ0KEBBUkdWKTsKKyAgICAgICAgdXNhZ2VlcnIoX2coIiVzIG5lZWRzIGEgcGFyYW1ldGVyIiksICRfKSB1bmxlc3MgZGVmaW5lZCAkcGFyYW07CisgICAgfSBlbHNpZiAobS9eLShofC1oZWxwKSQvKSB7CisgICAgICAgIHVzYWdlKCk7CisgICAgICAgIGV4aXQgMDsKKyAgICB9IGVsc2lmIChtL14tLXZlcnNpb24kLykgeworICAgICAgICB2ZXJzaW9uKCk7CisgICAgICAgIGV4aXQgMDsKKyAgICB9IGVsc2UgeworCXVzYWdlZXJyKF9nKCJ1bmtub3duIG9wdGlvbiBcYCVzJyIpLCAkXyk7CisgICAgfQorfQorCit1c2FnZWVycihfZygibmVlZCBhbiBhY3Rpb24gb3B0aW9uIikpIHVubGVzcyBkZWZpbmVkKCRhY3Rpb24pOworCisjIFVzZXMgJEVOVntERUJfVkVORE9SfSBpZiBzZXQKKyR2ZW5kb3IgPSBnZXRfY3VycmVudF92ZW5kb3IoKSB1bmxlc3MgZGVmaW5lZCgkdmVuZG9yKTsKKworbXkgJGluZm8gPSBnZXRfdmVuZG9yX2luZm8oJHZlbmRvcik7Cit1bmxlc3MgKGRlZmluZWQoJGluZm8pKSB7CisgICAgZXJyb3IoX2coInZlbmRvciAlcyBkb2Vzbid0IGV4aXN0IGluIC9ldGMvZHBrZy9vcmlnaW5zLyIpLAorICAgICAgICAgICR2ZW5kb3IgfHwgImRlZmF1bHQiKTsKK30KKworaWYgKCRhY3Rpb24gZXEgJ2lzJykgeworCisgICAgZXhpdCgwKSBpZiBsYygkcGFyYW0pIGVxIGxjKCRpbmZvLT57J1ZlbmRvcid9KTsKKyAgICBleGl0KDEpOworCit9IGVsc2lmICgkYWN0aW9uIGVxICdkZXJpdmVzLWZyb20nKSB7CisKKyAgICBleGl0KDApIGlmIGxjKCRwYXJhbSkgZXEgbGMoJGluZm8tPnsnVmVuZG9yJ30pOworICAgIHdoaWxlIChkZWZpbmVkKCRpbmZvKSAmJiBleGlzdHMgJGluZm8tPnsnUGFyZW50J30pIHsKKyAgICAgICAgJGluZm8gPSBnZXRfdmVuZG9yX2luZm8oJGluZm8tPnsnUGFyZW50J30pOworICAgICAgICBleGl0KDApIGlmIGxjKCRwYXJhbSkgZXEgbGMoJGluZm8tPnsnVmVuZG9yJ30pOworICAgIH0KKyAgICBleGl0KDEpOworCit9IGVsc2lmICgkYWN0aW9uIGVxICdxdWVyeScpIHsKKworICAgIGlmIChleGlzdHMgJGluZm8tPnskcGFyYW19KSB7CisgICAgICAgIHByaW50ICRpbmZvLT57JHBhcmFtfSAuICJcbiI7CisgICAgICAgIGV4aXQoMCk7CisgICAgfSBlbHNlIHsKKyAgICAgICAgZXhpdCgxKTsKKyAgICB9CisKK30KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9tay9NYWtlZmlsZS5hbSBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9tay9NYWtlZmlsZS5hbQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43ODRhZGYxCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL21rL01ha2VmaWxlLmFtCkBAIC0wLDAgKzEsMTcgQEAKKyMjIFByb2Nlc3MgdGhpcyBmaWxlIHdpdGggYXV0b21ha2UgdG8gcHJvZHVjZSBNYWtlZmlsZS5pbgorCitkaXN0X3BrZ2RhdGFfREFUQSA9IFwKKwlhcmNoaXRlY3R1cmUubWsgXAorCWJ1aWxkZmxhZ3MubWsgXAorCWRlZmF1bHQubWsgXAorCXBrZy1pbmZvLm1rIFwKKwl2ZW5kb3IubWsKKworZG9fcGF0aF9zdWJzdCA9ICQoQU1fVl9HRU4pIFwKKyAgICAgICAgICAgICAgICBzZWQgLWUgInM6ZHBrZ19kYXRhZGlyW1s6c3BhY2U6XV0qPVtbOnNwYWNlOl1dKlteWzpzcGFjZTpdXSo6ZHBrZ19kYXRhZGlyID0gJChwa2dkYXRhZGlyKToiCisKK2luc3RhbGwtZGF0YS1ob29rOgorCWNwIC1wICQoREVTVERJUikkKHBrZ2RhdGFkaXIpL2RlZmF1bHQubWsgJChERVNURElSKSQocGtnZGF0YWRpcikvZGVmYXVsdC5tay50bXAKKwkkKGRvX3BhdGhfc3Vic3QpIDwkKERFU1RESVIpJChwa2dkYXRhZGlyKS9kZWZhdWx0Lm1rLnRtcCBcCisJCQkgPiQoREVTVERJUikkKHBrZ2RhdGFkaXIpL2RlZmF1bHQubWsKKwlybSAkKERFU1RESVIpJChwa2dkYXRhZGlyKS9kZWZhdWx0Lm1rLnRtcApkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL21rL01ha2VmaWxlLmluIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL21rL01ha2VmaWxlLmluCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmEyYjRmNzMKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvbWsvTWFrZWZpbGUuaW4KQEAgLTAsMCArMSw0NTcgQEAKKyMgTWFrZWZpbGUuaW4gZ2VuZXJhdGVkIGJ5IGF1dG9tYWtlIDEuMTEuMSBmcm9tIE1ha2VmaWxlLmFtLgorIyBAY29uZmlndXJlX2lucHV0QAorCisjIENvcHlyaWdodCAoQykgMTk5NCwgMTk5NSwgMTk5NiwgMTk5NywgMTk5OCwgMTk5OSwgMjAwMCwgMjAwMSwgMjAwMiwKKyMgMjAwMywgMjAwNCwgMjAwNSwgMjAwNiwgMjAwNywgMjAwOCwgMjAwOSAgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLAorIyBJbmMuCisjIFRoaXMgTWFrZWZpbGUuaW4gaXMgZnJlZSBzb2Z0d2FyZTsgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbgorIyBnaXZlcyB1bmxpbWl0ZWQgcGVybWlzc2lvbiB0byBjb3B5IGFuZC9vciBkaXN0cmlidXRlIGl0LAorIyB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9ucywgYXMgbG9uZyBhcyB0aGlzIG5vdGljZSBpcyBwcmVzZXJ2ZWQuCisKKyMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisjIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWSwgdG8gdGhlIGV4dGVudCBwZXJtaXR0ZWQgYnkgbGF3OyB3aXRob3V0CisjIGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEKKyMgUEFSVElDVUxBUiBQVVJQT1NFLgorCitAU0VUX01BS0VACisKK1ZQQVRIID0gQHNyY2RpckAKK3BrZ2RhdGFkaXIgPSAkKGRhdGFkaXIpL0BQQUNLQUdFQAorcGtnaW5jbHVkZWRpciA9ICQoaW5jbHVkZWRpcikvQFBBQ0tBR0VACitwa2dsaWJkaXIgPSAkKGxpYmRpcikvQFBBQ0tBR0VACitwa2dsaWJleGVjZGlyID0gJChsaWJleGVjZGlyKS9AUEFDS0FHRUAKK2FtX19jZCA9IENEUEFUSD0iJCR7WlNIX1ZFUlNJT04rLn0kKFBBVEhfU0VQQVJBVE9SKSIgJiYgY2QKK2luc3RhbGxfc2hfREFUQSA9ICQoaW5zdGFsbF9zaCkgLWMgLW0gNjQ0CitpbnN0YWxsX3NoX1BST0dSQU0gPSAkKGluc3RhbGxfc2gpIC1jCitpbnN0YWxsX3NoX1NDUklQVCA9ICQoaW5zdGFsbF9zaCkgLWMKK0lOU1RBTExfSEVBREVSID0gJChJTlNUQUxMX0RBVEEpCit0cmFuc2Zvcm0gPSAkKHByb2dyYW1fdHJhbnNmb3JtX25hbWUpCitOT1JNQUxfSU5TVEFMTCA9IDoKK1BSRV9JTlNUQUxMID0gOgorUE9TVF9JTlNUQUxMID0gOgorTk9STUFMX1VOSU5TVEFMTCA9IDoKK1BSRV9VTklOU1RBTEwgPSA6CitQT1NUX1VOSU5TVEFMTCA9IDoKK2J1aWxkX3RyaXBsZXQgPSBAYnVpbGRACitob3N0X3RyaXBsZXQgPSBAaG9zdEAKK3N1YmRpciA9IHNjcmlwdHMvbWsKK0RJU1RfQ09NTU9OID0gJChkaXN0X3BrZ2RhdGFfREFUQSkgJChzcmNkaXIpL01ha2VmaWxlLmFtIFwKKwkkKHNyY2RpcikvTWFrZWZpbGUuaW4KK0FDTE9DQUxfTTQgPSAkKHRvcF9zcmNkaXIpL2FjbG9jYWwubTQKK2FtX19hY2xvY2FsX200X2RlcHMgPSAkKHRvcF9zcmNkaXIpL200L2Rwa2ctYXJjaC5tNCBcCisJJCh0b3Bfc3JjZGlyKS9tNC9kcGtnLWJ1aWxkLm00IFwKKwkkKHRvcF9zcmNkaXIpL200L2Rwa2ctY29tcGlsZXIubTQgXAorCSQodG9wX3NyY2RpcikvbTQvZHBrZy1jb3ZlcmFnZS5tNCBcCisJJCh0b3Bfc3JjZGlyKS9tNC9kcGtnLWZ1bmNzLm00ICQodG9wX3NyY2RpcikvbTQvZHBrZy1saWJzLm00IFwKKwkkKHRvcF9zcmNkaXIpL200L2Rwa2ctbGlua2VyLm00ICQodG9wX3NyY2RpcikvbTQvZHBrZy1wcm9ncy5tNCBcCisJJCh0b3Bfc3JjZGlyKS9tNC9kcGtnLXR5cGVzLm00IFwKKwkkKHRvcF9zcmNkaXIpL200L2Rwa2ctdW5pY29kZS5tNCAkKHRvcF9zcmNkaXIpL200L2dldHRleHQubTQgXAorCSQodG9wX3NyY2RpcikvbTQvaWNvbnYubTQgJCh0b3Bfc3JjZGlyKS9tNC9pbnRsbWFjb3N4Lm00IFwKKwkkKHRvcF9zcmNkaXIpL200L2xpYi1sZC5tNCAkKHRvcF9zcmNkaXIpL200L2xpYi1saW5rLm00IFwKKwkkKHRvcF9zcmNkaXIpL200L2xpYi1wcmVmaXgubTQgJCh0b3Bfc3JjZGlyKS9tNC9ubHMubTQgXAorCSQodG9wX3NyY2RpcikvbTQvcG8ubTQgJCh0b3Bfc3JjZGlyKS9tNC9wcm9ndGVzdC5tNCBcCisJJCh0b3Bfc3JjZGlyKS9jb25maWd1cmUuYWMKK2FtX19jb25maWd1cmVfZGVwcyA9ICQoYW1fX2FjbG9jYWxfbTRfZGVwcykgJChDT05GSUdVUkVfREVQRU5ERU5DSUVTKSBcCisJJChBQ0xPQ0FMX000KQorbWtpbnN0YWxsZGlycyA9ICQoaW5zdGFsbF9zaCkgLWQKK0NPTkZJR19IRUFERVIgPSAkKHRvcF9idWlsZGRpcikvY29uZmlnLmgKK0NPTkZJR19DTEVBTl9GSUxFUyA9CitDT05GSUdfQ0xFQU5fVlBBVEhfRklMRVMgPQorQU1fVl9HRU4gPSAkKGFtX192X0dFTl8kKFYpKQorYW1fX3ZfR0VOXyA9ICQoYW1fX3ZfR0VOXyQoQU1fREVGQVVMVF9WRVJCT1NJVFkpKQorYW1fX3ZfR0VOXzAgPSBAZWNobyAiICBHRU4gICAiICRAOworQU1fVl9hdCA9ICQoYW1fX3ZfYXRfJChWKSkKK2FtX192X2F0XyA9ICQoYW1fX3ZfYXRfJChBTV9ERUZBVUxUX1ZFUkJPU0lUWSkpCithbV9fdl9hdF8wID0gQAorU09VUkNFUyA9CitESVNUX1NPVVJDRVMgPQorYW1fX3ZwYXRoX2Fkal9zZXR1cCA9IHNyY2RpcnN0cmlwPWBlY2hvICIkKHNyY2RpcikiIHwgc2VkICdzfC58LnxnJ2A7CithbV9fdnBhdGhfYWRqID0gY2FzZSAkJHAgaW4gXAorICAgICQoc3JjZGlyKS8qKSBmPWBlY2hvICIkJHAiIHwgc2VkICJzfF4kJHNyY2RpcnN0cmlwL3x8ImA7OyBcCisgICAgKikgZj0kJHA7OyBcCisgIGVzYWM7CithbV9fc3RyaXBfZGlyID0gZj1gZWNobyAkJHAgfCBzZWQgLWUgJ3N8Xi4qL3x8J2A7CithbV9faW5zdGFsbF9tYXggPSA0MAorYW1fX25vYmFzZV9zdHJpcF9zZXR1cCA9IFwKKyAgc3JjZGlyc3RyaXA9YGVjaG8gIiQoc3JjZGlyKSIgfCBzZWQgJ3MvW10uW14kJFxcKnxdL1xcXFwmL2cnYAorYW1fX25vYmFzZV9zdHJpcCA9IFwKKyAgZm9yIHAgaW4gJCRsaXN0OyBkbyBlY2hvICIkJHAiOyBkb25lIHwgc2VkIC1lICJzfCQkc3JjZGlyc3RyaXAvfHwiCithbV9fbm9iYXNlX2xpc3QgPSAkKGFtX19ub2Jhc2Vfc3RyaXBfc2V0dXApOyBcCisgIGZvciBwIGluICQkbGlzdDsgZG8gZWNobyAiJCRwICQkcCI7IGRvbmUgfCBcCisgIHNlZCAic3wgJCRzcmNkaXJzdHJpcC98IHw7IicgLyAuKlwvLyFzLyAuKi8gLi87IHMsXCggLipcKS9bXi9dKiQkLFwxLCcgfCBcCisgICQoQVdLKSAnQkVHSU4geyBmaWxlc1siLiJdID0gIiIgfSB7IGZpbGVzWyQkMl0gPSBmaWxlc1skJDJdICIgIiAkJDE7IFwKKyAgICBpZiAoKytuWyQkMl0gPT0gJChhbV9faW5zdGFsbF9tYXgpKSBcCisgICAgICB7IHByaW50ICQkMiwgZmlsZXNbJCQyXTsgblskJDJdID0gMDsgZmlsZXNbJCQyXSA9ICIiIH0gfSBcCisgICAgRU5EIHsgZm9yIChkaXIgaW4gZmlsZXMpIHByaW50IGRpciwgZmlsZXNbZGlyXSB9JworYW1fX2Jhc2VfbGlzdCA9IFwKKyAgc2VkICckJCFOOyQkIU47JCQhTjskJCFOOyQkIU47JCQhTjskJCFOO3MvXG4vIC9nJyB8IFwKKyAgc2VkICckJCFOOyQkIU47JCQhTjskJCFOO3MvXG4vIC9nJworYW1fX2luc3RhbGxkaXJzID0gIiQoREVTVERJUikkKHBrZ2RhdGFkaXIpIgorREFUQSA9ICQoZGlzdF9wa2dkYXRhX0RBVEEpCitESVNURklMRVMgPSAkKERJU1RfQ09NTU9OKSAkKERJU1RfU09VUkNFUykgJChURVhJTkZPUykgJChFWFRSQV9ESVNUKQorQUNMT0NBTCA9IEBBQ0xPQ0FMQAorQU1UQVIgPSBAQU1UQVJACitBTV9ERUZBVUxUX1ZFUkJPU0lUWSA9IEBBTV9ERUZBVUxUX1ZFUkJPU0lUWUAKK0FVVE9DT05GID0gQEFVVE9DT05GQAorQVVUT0hFQURFUiA9IEBBVVRPSEVBREVSQAorQVVUT01BS0UgPSBAQVVUT01BS0VACitBV0sgPSBAQVdLQAorQloyX0xJQlMgPSBAQloyX0xJQlNACitDQyA9IEBDQ0AKK0NDREVQTU9ERSA9IEBDQ0RFUE1PREVACitDRkxBR1MgPSBAQ0ZMQUdTQAorQ1BQID0gQENQUEAKK0NQUEZMQUdTID0gQENQUEZMQUdTQAorQ1VSU0VTX0xJQlMgPSBAQ1VSU0VTX0xJQlNACitDWFggPSBAQ1hYQAorQ1hYREVQTU9ERSA9IEBDWFhERVBNT0RFQAorQ1hYRkxBR1MgPSBAQ1hYRkxBR1NACitDWUdQQVRIX1cgPSBAQ1lHUEFUSF9XQAorREVGUyA9IEBERUZTQAorREVQRElSID0gQERFUERJUkAKK0RPWFlHRU4gPSBARE9YWUdFTkAKK0VDSE9fQyA9IEBFQ0hPX0NACitFQ0hPX04gPSBARUNIT19OQAorRUNIT19UID0gQEVDSE9fVEAKK0VHUkVQID0gQEVHUkVQQAorRVhFRVhUID0gQEVYRUVYVEAKK0dDT1YgPSBAR0NPVkAKK0dFVFRFWFRfTUFDUk9fVkVSU0lPTiA9IEBHRVRURVhUX01BQ1JPX1ZFUlNJT05ACitHTVNHRk1UID0gQEdNU0dGTVRACitHTVNHRk1UXzAxNSA9IEBHTVNHRk1UXzAxNUAKK0dSRVAgPSBAR1JFUEAKK0hBVkVfRE9UID0gQEhBVkVfRE9UQAorSU5TVEFMTCA9IEBJTlNUQUxMQAorSU5TVEFMTF9EQVRBID0gQElOU1RBTExfREFUQUAKK0lOU1RBTExfUFJPR1JBTSA9IEBJTlNUQUxMX1BST0dSQU1ACitJTlNUQUxMX1NDUklQVCA9IEBJTlNUQUxMX1NDUklQVEAKK0lOU1RBTExfU1RSSVBfUFJPR1JBTSA9IEBJTlNUQUxMX1NUUklQX1BST0dSQU1ACitJTlRMTElCUyA9IEBJTlRMTElCU0AKK0lOVExfTUFDT1NYX0xJQlMgPSBASU5UTF9NQUNPU1hfTElCU0AKK0xDT1YgPSBATENPVkAKK0xDT1ZfR0VOSFRNTCA9IEBMQ09WX0dFTkhUTUxACitMREZMQUdTID0gQExERkxBR1NACitMRVggPSBATEVYQAorTEVYTElCID0gQExFWExJQkAKK0xFWF9PVVRQVVRfUk9PVCA9IEBMRVhfT1VUUFVUX1JPT1RACitMSUJJQ09OViA9IEBMSUJJQ09OVkAKK0xJQklOVEwgPSBATElCSU5UTEAKK0xJQk9CSlMgPSBATElCT0JKU0AKK0xJQlMgPSBATElCU0AKK0xUTElCSUNPTlYgPSBATFRMSUJJQ09OVkAKK0xUTElCSU5UTCA9IEBMVExJQklOVExACitMVExJQk9CSlMgPSBATFRMSUJPQkpTQAorTUFLRUlORk8gPSBATUFLRUlORk9ACitNS0RJUl9QID0gQE1LRElSX1BACitNU0dGTVQgPSBATVNHRk1UQAorTVNHRk1UXzAxNSA9IEBNU0dGTVRfMDE1QAorTVNHTUVSR0UgPSBATVNHTUVSR0VACitPQkpFWFQgPSBAT0JKRVhUQAorUEFDS0FHRSA9IEBQQUNLQUdFQAorUEFDS0FHRV9CVUdSRVBPUlQgPSBAUEFDS0FHRV9CVUdSRVBPUlRACitQQUNLQUdFX05BTUUgPSBAUEFDS0FHRV9OQU1FQAorUEFDS0FHRV9TVFJJTkcgPSBAUEFDS0FHRV9TVFJJTkdACitQQUNLQUdFX1RBUk5BTUUgPSBAUEFDS0FHRV9UQVJOQU1FQAorUEFDS0FHRV9VUkwgPSBAUEFDS0FHRV9VUkxACitQQUNLQUdFX1ZFUlNJT04gPSBAUEFDS0FHRV9WRVJTSU9OQAorUEFUSF9TRVBBUkFUT1IgPSBAUEFUSF9TRVBBUkFUT1JACitQRVJMID0gQFBFUkxACitQRVJMX0NPVkVSID0gQFBFUkxfQ09WRVJACitQRVJMX0NPVkVSQUdFID0gQFBFUkxfQ09WRVJBR0VACitQRVJMX0xJQkRJUiA9IEBQRVJMX0xJQkRJUkAKK1BLR19DT05GSUcgPSBAUEtHX0NPTkZJR0AKK1BLR19DT05GSUdfTElCRElSID0gQFBLR19DT05GSUdfTElCRElSQAorUEtHX0NPTkZJR19QQVRIID0gQFBLR19DT05GSUdfUEFUSEAKK1BPNEEgPSBAUE80QUAKK1BPRDJNQU4gPSBAUE9EMk1BTkAKK1BPU1VCID0gQFBPU1VCQAorUkFOTElCID0gQFJBTkxJQkAKK1NFTElOVVhfTElCUyA9IEBTRUxJTlVYX0xJQlNACitTRVRfTUFLRSA9IEBTRVRfTUFLRUAKK1NIRUxMID0gQFNIRUxMQAorU1NEX0xJQlMgPSBAU1NEX0xJQlNACitTVFJJUCA9IEBTVFJJUEAKK1VTRV9OTFMgPSBAVVNFX05MU0AKK1VTRV9QTzRBID0gQFVTRV9QTzRBQAorVVNFX1VOSUNPREUgPSBAVVNFX1VOSUNPREVACitWRVJTSU9OID0gQFZFUlNJT05ACitYR0VUVEVYVCA9IEBYR0VUVEVYVEAKK1hHRVRURVhUXzAxNSA9IEBYR0VUVEVYVF8wMTVACitYR0VUVEVYVF9FWFRSQV9PUFRJT05TID0gQFhHRVRURVhUX0VYVFJBX09QVElPTlNACitaTElCX0xJQlMgPSBAWkxJQl9MSUJTQAorYWJzX2J1aWxkZGlyID0gQGFic19idWlsZGRpckAKK2Fic19zcmNkaXIgPSBAYWJzX3NyY2RpckAKK2Fic190b3BfYnVpbGRkaXIgPSBAYWJzX3RvcF9idWlsZGRpckAKK2Fic190b3Bfc3JjZGlyID0gQGFic190b3Bfc3JjZGlyQAorYWNfY3RfQ0MgPSBAYWNfY3RfQ0NACithY19jdF9DWFggPSBAYWNfY3RfQ1hYQAorYWRtaW5kaXIgPSBAYWRtaW5kaXJACithbV9faW5jbHVkZSA9IEBhbV9faW5jbHVkZUAKK2FtX19sZWFkaW5nX2RvdCA9IEBhbV9fbGVhZGluZ19kb3RACithbV9fcXVvdGUgPSBAYW1fX3F1b3RlQAorYW1fX3RhciA9IEBhbV9fdGFyQAorYW1fX3VudGFyID0gQGFtX191bnRhckAKK2JpbmRpciA9IEBiaW5kaXJACitidWlsZCA9IEBidWlsZEAKK2J1aWxkX2FsaWFzID0gQGJ1aWxkX2FsaWFzQAorYnVpbGRfY3B1ID0gQGJ1aWxkX2NwdUAKK2J1aWxkX29zID0gQGJ1aWxkX29zQAorYnVpbGRfdmVuZG9yID0gQGJ1aWxkX3ZlbmRvckAKK2J1aWxkZGlyID0gQGJ1aWxkZGlyQAorZGF0YWRpciA9IEBkYXRhZGlyQAorZGF0YXJvb3RkaXIgPSBAZGF0YXJvb3RkaXJACitkb2NkaXIgPSBAZG9jZGlyQAorZHZpZGlyID0gQGR2aWRpckAKK2V4ZWNfcHJlZml4ID0gQGV4ZWNfcHJlZml4QAoraG9zdCA9IEBob3N0QAoraG9zdF9hbGlhcyA9IEBob3N0X2FsaWFzQAoraG9zdF9jcHUgPSBAaG9zdF9jcHVACitob3N0X29zID0gQGhvc3Rfb3NACitob3N0X3ZlbmRvciA9IEBob3N0X3ZlbmRvckAKK2h0bWxkaXIgPSBAaHRtbGRpckAKK2luY2x1ZGVkaXIgPSBAaW5jbHVkZWRpckAKK2luZm9kaXIgPSBAaW5mb2RpckAKK2luc3RhbGxfc2ggPSBAaW5zdGFsbF9zaEAKK2xpYmRpciA9IEBsaWJkaXJACitsaWJleGVjZGlyID0gQGxpYmV4ZWNkaXJACitsb2NhbGVkaXIgPSBAbG9jYWxlZGlyQAorbG9jYWxzdGF0ZWRpciA9IEBsb2NhbHN0YXRlZGlyQAorbG9nZGlyID0gQGxvZ2RpckAKK21hbmRpciA9IEBtYW5kaXJACitta2Rpcl9wID0gQG1rZGlyX3BACitvbGRpbmNsdWRlZGlyID0gQG9sZGluY2x1ZGVkaXJACitwZGZkaXIgPSBAcGRmZGlyQAorcHJlZml4ID0gQHByZWZpeEAKK3Byb2dyYW1fdHJhbnNmb3JtX25hbWUgPSBAcHJvZ3JhbV90cmFuc2Zvcm1fbmFtZUAKK3BzZGlyID0gQHBzZGlyQAorc2JpbmRpciA9IEBzYmluZGlyQAorc2hhcmVkc3RhdGVkaXIgPSBAc2hhcmVkc3RhdGVkaXJACitzcmNkaXIgPSBAc3JjZGlyQAorc3lzY29uZmRpciA9IEBzeXNjb25mZGlyQAordGFyZ2V0X2FsaWFzID0gQHRhcmdldF9hbGlhc0AKK3RvcF9idWlsZF9wcmVmaXggPSBAdG9wX2J1aWxkX3ByZWZpeEAKK3RvcF9idWlsZGRpciA9IEB0b3BfYnVpbGRkaXJACit0b3Bfc3JjZGlyID0gQHRvcF9zcmNkaXJACitkaXN0X3BrZ2RhdGFfREFUQSA9IFwKKwlhcmNoaXRlY3R1cmUubWsgXAorCWJ1aWxkZmxhZ3MubWsgXAorCWRlZmF1bHQubWsgXAorCXBrZy1pbmZvLm1rIFwKKwl2ZW5kb3IubWsKKworZG9fcGF0aF9zdWJzdCA9ICQoQU1fVl9HRU4pIFwKKyAgICAgICAgICAgICAgICBzZWQgLWUgInM6ZHBrZ19kYXRhZGlyW1s6c3BhY2U6XV0qPVtbOnNwYWNlOl1dKlteWzpzcGFjZTpdXSo6ZHBrZ19kYXRhZGlyID0gJChwa2dkYXRhZGlyKToiCisKK2FsbDogYWxsLWFtCisKKy5TVUZGSVhFUzoKKyQoc3JjZGlyKS9NYWtlZmlsZS5pbjogICQoc3JjZGlyKS9NYWtlZmlsZS5hbSAgJChhbV9fY29uZmlndXJlX2RlcHMpCisJQGZvciBkZXAgaW4gJD87IGRvIFwKKwkgIGNhc2UgJyQoYW1fX2NvbmZpZ3VyZV9kZXBzKScgaW4gXAorCSAgICAqJCRkZXAqKSBcCisJICAgICAgKCBjZCAkKHRvcF9idWlsZGRpcikgJiYgJChNQUtFKSAkKEFNX01BS0VGTEFHUykgYW0tLXJlZnJlc2ggKSBcCisJICAgICAgICAmJiB7IGlmIHRlc3QgLWYgJEA7IHRoZW4gZXhpdCAwOyBlbHNlIGJyZWFrOyBmaTsgfTsgXAorCSAgICAgIGV4aXQgMTs7IFwKKwkgIGVzYWM7IFwKKwlkb25lOyBcCisJZWNobyAnIGNkICQodG9wX3NyY2RpcikgJiYgJChBVVRPTUFLRSkgLS1mb3JlaWduIHNjcmlwdHMvbWsvTWFrZWZpbGUnOyBcCisJJChhbV9fY2QpICQodG9wX3NyY2RpcikgJiYgXAorCSAgJChBVVRPTUFLRSkgLS1mb3JlaWduIHNjcmlwdHMvbWsvTWFrZWZpbGUKKy5QUkVDSU9VUzogTWFrZWZpbGUKK01ha2VmaWxlOiAkKHNyY2RpcikvTWFrZWZpbGUuaW4gJCh0b3BfYnVpbGRkaXIpL2NvbmZpZy5zdGF0dXMKKwlAY2FzZSAnJD8nIGluIFwKKwkgICpjb25maWcuc3RhdHVzKikgXAorCSAgICBjZCAkKHRvcF9idWlsZGRpcikgJiYgJChNQUtFKSAkKEFNX01BS0VGTEFHUykgYW0tLXJlZnJlc2g7OyBcCisJICAqKSBcCisJICAgIGVjaG8gJyBjZCAkKHRvcF9idWlsZGRpcikgJiYgJChTSEVMTCkgLi9jb25maWcuc3RhdHVzICQoc3ViZGlyKS8kQCAkKGFtX19kZXBmaWxlc19tYXliZSknOyBcCisJICAgIGNkICQodG9wX2J1aWxkZGlyKSAmJiAkKFNIRUxMKSAuL2NvbmZpZy5zdGF0dXMgJChzdWJkaXIpLyRAICQoYW1fX2RlcGZpbGVzX21heWJlKTs7IFwKKwllc2FjOworCiskKHRvcF9idWlsZGRpcikvY29uZmlnLnN0YXR1czogJCh0b3Bfc3JjZGlyKS9jb25maWd1cmUgJChDT05GSUdfU1RBVFVTX0RFUEVOREVOQ0lFUykKKwljZCAkKHRvcF9idWlsZGRpcikgJiYgJChNQUtFKSAkKEFNX01BS0VGTEFHUykgYW0tLXJlZnJlc2gKKworJCh0b3Bfc3JjZGlyKS9jb25maWd1cmU6ICAkKGFtX19jb25maWd1cmVfZGVwcykKKwljZCAkKHRvcF9idWlsZGRpcikgJiYgJChNQUtFKSAkKEFNX01BS0VGTEFHUykgYW0tLXJlZnJlc2gKKyQoQUNMT0NBTF9NNCk6ICAkKGFtX19hY2xvY2FsX200X2RlcHMpCisJY2QgJCh0b3BfYnVpbGRkaXIpICYmICQoTUFLRSkgJChBTV9NQUtFRkxBR1MpIGFtLS1yZWZyZXNoCiskKGFtX19hY2xvY2FsX200X2RlcHMpOgoraW5zdGFsbC1kaXN0X3BrZ2RhdGFEQVRBOiAkKGRpc3RfcGtnZGF0YV9EQVRBKQorCUAkKE5PUk1BTF9JTlNUQUxMKQorCXRlc3QgLXogIiQocGtnZGF0YWRpcikiIHx8ICQoTUtESVJfUCkgIiQoREVTVERJUikkKHBrZ2RhdGFkaXIpIgorCUBsaXN0PSckKGRpc3RfcGtnZGF0YV9EQVRBKSc7IHRlc3QgLW4gIiQocGtnZGF0YWRpcikiIHx8IGxpc3Q9OyBcCisJZm9yIHAgaW4gJCRsaXN0OyBkbyBcCisJICBpZiB0ZXN0IC1mICIkJHAiOyB0aGVuIGQ9OyBlbHNlIGQ9IiQoc3JjZGlyKS8iOyBmaTsgXAorCSAgZWNobyAiJCRkJCRwIjsgXAorCWRvbmUgfCAkKGFtX19iYXNlX2xpc3QpIHwgXAorCXdoaWxlIHJlYWQgZmlsZXM7IGRvIFwKKwkgIGVjaG8gIiAkKElOU1RBTExfREFUQSkgJCRmaWxlcyAnJChERVNURElSKSQocGtnZGF0YWRpciknIjsgXAorCSAgJChJTlNUQUxMX0RBVEEpICQkZmlsZXMgIiQoREVTVERJUikkKHBrZ2RhdGFkaXIpIiB8fCBleGl0ICQkPzsgXAorCWRvbmUKKwordW5pbnN0YWxsLWRpc3RfcGtnZGF0YURBVEE6CisJQCQoTk9STUFMX1VOSU5TVEFMTCkKKwlAbGlzdD0nJChkaXN0X3BrZ2RhdGFfREFUQSknOyB0ZXN0IC1uICIkKHBrZ2RhdGFkaXIpIiB8fCBsaXN0PTsgXAorCWZpbGVzPWBmb3IgcCBpbiAkJGxpc3Q7IGRvIGVjaG8gJCRwOyBkb25lIHwgc2VkIC1lICdzfF4uKi98fCdgOyBcCisJdGVzdCAtbiAiJCRmaWxlcyIgfHwgZXhpdCAwOyBcCisJZWNobyAiICggY2QgJyQoREVTVERJUikkKHBrZ2RhdGFkaXIpJyAmJiBybSAtZiIgJCRmaWxlcyAiKSI7IFwKKwljZCAiJChERVNURElSKSQocGtnZGF0YWRpcikiICYmIHJtIC1mICQkZmlsZXMKK3RhZ3M6IFRBR1MKK1RBR1M6CisKK2N0YWdzOiBDVEFHUworQ1RBR1M6CisKKworZGlzdGRpcjogJChESVNURklMRVMpCisJQHNyY2RpcnN0cmlwPWBlY2hvICIkKHNyY2RpcikiIHwgc2VkICdzL1tdLlteJCRcXCpdL1xcXFwmL2cnYDsgXAorCXRvcHNyY2RpcnN0cmlwPWBlY2hvICIkKHRvcF9zcmNkaXIpIiB8IHNlZCAncy9bXS5bXiQkXFwqXS9cXFxcJi9nJ2A7IFwKKwlsaXN0PSckKERJU1RGSUxFUyknOyBcCisJICBkaXN0X2ZpbGVzPWBmb3IgZmlsZSBpbiAkJGxpc3Q7IGRvIGVjaG8gJCRmaWxlOyBkb25lIHwgXAorCSAgc2VkIC1lICJzfF4kJHNyY2RpcnN0cmlwL3x8O3QiIFwKKwkgICAgICAtZSAic3xeJCR0b3BzcmNkaXJzdHJpcC98JCh0b3BfYnVpbGRkaXIpL3w7dCJgOyBcCisJY2FzZSAkJGRpc3RfZmlsZXMgaW4gXAorCSAgKi8qKSAkKE1LRElSX1ApIGBlY2hvICIkJGRpc3RfZmlsZXMiIHwgXAorCQkJICAgc2VkICcvXC8vIWQ7c3xefCQoZGlzdGRpcikvfDtzLC9bXi9dKiQkLCwnIHwgXAorCQkJICAgc29ydCAtdWAgOzsgXAorCWVzYWM7IFwKKwlmb3IgZmlsZSBpbiAkJGRpc3RfZmlsZXM7IGRvIFwKKwkgIGlmIHRlc3QgLWYgJCRmaWxlIHx8IHRlc3QgLWQgJCRmaWxlOyB0aGVuIGQ9LjsgZWxzZSBkPSQoc3JjZGlyKTsgZmk7IFwKKwkgIGlmIHRlc3QgLWQgJCRkLyQkZmlsZTsgdGhlbiBcCisJICAgIGRpcj1gZWNobyAiLyQkZmlsZSIgfCBzZWQgLWUgJ3MsL1teL10qJCQsLCdgOyBcCisJICAgIGlmIHRlc3QgLWQgIiQoZGlzdGRpcikvJCRmaWxlIjsgdGhlbiBcCisJICAgICAgZmluZCAiJChkaXN0ZGlyKS8kJGZpbGUiIC10eXBlIGQgISAtcGVybSAtNzAwIC1leGVjIGNobW9kIHUrcnd4IHt9IFw7OyBcCisJICAgIGZpOyBcCisJICAgIGlmIHRlc3QgLWQgJChzcmNkaXIpLyQkZmlsZSAmJiB0ZXN0ICQkZCAhPSAkKHNyY2Rpcik7IHRoZW4gXAorCSAgICAgIGNwIC1mcFIgJChzcmNkaXIpLyQkZmlsZSAiJChkaXN0ZGlyKSQkZGlyIiB8fCBleGl0IDE7IFwKKwkgICAgICBmaW5kICIkKGRpc3RkaXIpLyQkZmlsZSIgLXR5cGUgZCAhIC1wZXJtIC03MDAgLWV4ZWMgY2htb2QgdStyd3gge30gXDs7IFwKKwkgICAgZmk7IFwKKwkgICAgY3AgLWZwUiAkJGQvJCRmaWxlICIkKGRpc3RkaXIpJCRkaXIiIHx8IGV4aXQgMTsgXAorCSAgZWxzZSBcCisJICAgIHRlc3QgLWYgIiQoZGlzdGRpcikvJCRmaWxlIiBcCisJICAgIHx8IGNwIC1wICQkZC8kJGZpbGUgIiQoZGlzdGRpcikvJCRmaWxlIiBcCisJICAgIHx8IGV4aXQgMTsgXAorCSAgZmk7IFwKKwlkb25lCitjaGVjay1hbTogYWxsLWFtCitjaGVjazogY2hlY2stYW0KK2FsbC1hbTogTWFrZWZpbGUgJChEQVRBKQoraW5zdGFsbGRpcnM6CisJZm9yIGRpciBpbiAiJChERVNURElSKSQocGtnZGF0YWRpcikiOyBkbyBcCisJICB0ZXN0IC16ICIkJGRpciIgfHwgJChNS0RJUl9QKSAiJCRkaXIiOyBcCisJZG9uZQoraW5zdGFsbDogaW5zdGFsbC1hbQoraW5zdGFsbC1leGVjOiBpbnN0YWxsLWV4ZWMtYW0KK2luc3RhbGwtZGF0YTogaW5zdGFsbC1kYXRhLWFtCit1bmluc3RhbGw6IHVuaW5zdGFsbC1hbQorCitpbnN0YWxsLWFtOiBhbGwtYW0KKwlAJChNQUtFKSAkKEFNX01BS0VGTEFHUykgaW5zdGFsbC1leGVjLWFtIGluc3RhbGwtZGF0YS1hbQorCitpbnN0YWxsY2hlY2s6IGluc3RhbGxjaGVjay1hbQoraW5zdGFsbC1zdHJpcDoKKwkkKE1BS0UpICQoQU1fTUFLRUZMQUdTKSBJTlNUQUxMX1BST0dSQU09IiQoSU5TVEFMTF9TVFJJUF9QUk9HUkFNKSIgXAorCSAgaW5zdGFsbF9zaF9QUk9HUkFNPSIkKElOU1RBTExfU1RSSVBfUFJPR1JBTSkiIElOU1RBTExfU1RSSVBfRkxBRz0tcyBcCisJICBgdGVzdCAteiAnJChTVFJJUCknIHx8IFwKKwkgICAgZWNobyAiSU5TVEFMTF9QUk9HUkFNX0VOVj1TVFJJUFBST0c9JyQoU1RSSVApJyJgIGluc3RhbGwKK21vc3RseWNsZWFuLWdlbmVyaWM6CisKK2NsZWFuLWdlbmVyaWM6CisKK2Rpc3RjbGVhbi1nZW5lcmljOgorCS10ZXN0IC16ICIkKENPTkZJR19DTEVBTl9GSUxFUykiIHx8IHJtIC1mICQoQ09ORklHX0NMRUFOX0ZJTEVTKQorCS10ZXN0IC4gPSAiJChzcmNkaXIpIiB8fCB0ZXN0IC16ICIkKENPTkZJR19DTEVBTl9WUEFUSF9GSUxFUykiIHx8IHJtIC1mICQoQ09ORklHX0NMRUFOX1ZQQVRIX0ZJTEVTKQorCittYWludGFpbmVyLWNsZWFuLWdlbmVyaWM6CisJQGVjaG8gIlRoaXMgY29tbWFuZCBpcyBpbnRlbmRlZCBmb3IgbWFpbnRhaW5lcnMgdG8gdXNlIgorCUBlY2hvICJpdCBkZWxldGVzIGZpbGVzIHRoYXQgbWF5IHJlcXVpcmUgc3BlY2lhbCB0b29scyB0byByZWJ1aWxkLiIKK2NsZWFuOiBjbGVhbi1hbQorCitjbGVhbi1hbTogY2xlYW4tZ2VuZXJpYyBtb3N0bHljbGVhbi1hbQorCitkaXN0Y2xlYW46IGRpc3RjbGVhbi1hbQorCS1ybSAtZiBNYWtlZmlsZQorZGlzdGNsZWFuLWFtOiBjbGVhbi1hbSBkaXN0Y2xlYW4tZ2VuZXJpYworCitkdmk6IGR2aS1hbQorCitkdmktYW06CisKK2h0bWw6IGh0bWwtYW0KKworaHRtbC1hbToKKworaW5mbzogaW5mby1hbQorCitpbmZvLWFtOgorCitpbnN0YWxsLWRhdGEtYW06IGluc3RhbGwtZGlzdF9wa2dkYXRhREFUQQorCUAkKE5PUk1BTF9JTlNUQUxMKQorCSQoTUFLRSkgJChBTV9NQUtFRkxBR1MpIGluc3RhbGwtZGF0YS1ob29rCitpbnN0YWxsLWR2aTogaW5zdGFsbC1kdmktYW0KKworaW5zdGFsbC1kdmktYW06CisKK2luc3RhbGwtZXhlYy1hbToKKworaW5zdGFsbC1odG1sOiBpbnN0YWxsLWh0bWwtYW0KKworaW5zdGFsbC1odG1sLWFtOgorCitpbnN0YWxsLWluZm86IGluc3RhbGwtaW5mby1hbQorCitpbnN0YWxsLWluZm8tYW06CisKK2luc3RhbGwtbWFuOgorCitpbnN0YWxsLXBkZjogaW5zdGFsbC1wZGYtYW0KKworaW5zdGFsbC1wZGYtYW06CisKK2luc3RhbGwtcHM6IGluc3RhbGwtcHMtYW0KKworaW5zdGFsbC1wcy1hbToKKworaW5zdGFsbGNoZWNrLWFtOgorCittYWludGFpbmVyLWNsZWFuOiBtYWludGFpbmVyLWNsZWFuLWFtCisJLXJtIC1mIE1ha2VmaWxlCittYWludGFpbmVyLWNsZWFuLWFtOiBkaXN0Y2xlYW4tYW0gbWFpbnRhaW5lci1jbGVhbi1nZW5lcmljCisKK21vc3RseWNsZWFuOiBtb3N0bHljbGVhbi1hbQorCittb3N0bHljbGVhbi1hbTogbW9zdGx5Y2xlYW4tZ2VuZXJpYworCitwZGY6IHBkZi1hbQorCitwZGYtYW06CisKK3BzOiBwcy1hbQorCitwcy1hbToKKwordW5pbnN0YWxsLWFtOiB1bmluc3RhbGwtZGlzdF9wa2dkYXRhREFUQQorCisuTUFLRTogaW5zdGFsbC1hbSBpbnN0YWxsLWRhdGEtYW0gaW5zdGFsbC1zdHJpcAorCisuUEhPTlk6IGFsbCBhbGwtYW0gY2hlY2sgY2hlY2stYW0gY2xlYW4gY2xlYW4tZ2VuZXJpYyBkaXN0Y2xlYW4gXAorCWRpc3RjbGVhbi1nZW5lcmljIGRpc3RkaXIgZHZpIGR2aS1hbSBodG1sIGh0bWwtYW0gaW5mbyBpbmZvLWFtIFwKKwlpbnN0YWxsIGluc3RhbGwtYW0gaW5zdGFsbC1kYXRhIGluc3RhbGwtZGF0YS1hbSBcCisJaW5zdGFsbC1kYXRhLWhvb2sgaW5zdGFsbC1kaXN0X3BrZ2RhdGFEQVRBIGluc3RhbGwtZHZpIFwKKwlpbnN0YWxsLWR2aS1hbSBpbnN0YWxsLWV4ZWMgaW5zdGFsbC1leGVjLWFtIGluc3RhbGwtaHRtbCBcCisJaW5zdGFsbC1odG1sLWFtIGluc3RhbGwtaW5mbyBpbnN0YWxsLWluZm8tYW0gaW5zdGFsbC1tYW4gXAorCWluc3RhbGwtcGRmIGluc3RhbGwtcGRmLWFtIGluc3RhbGwtcHMgaW5zdGFsbC1wcy1hbSBcCisJaW5zdGFsbC1zdHJpcCBpbnN0YWxsY2hlY2sgaW5zdGFsbGNoZWNrLWFtIGluc3RhbGxkaXJzIFwKKwltYWludGFpbmVyLWNsZWFuIG1haW50YWluZXItY2xlYW4tZ2VuZXJpYyBtb3N0bHljbGVhbiBcCisJbW9zdGx5Y2xlYW4tZ2VuZXJpYyBwZGYgcGRmLWFtIHBzIHBzLWFtIHVuaW5zdGFsbCB1bmluc3RhbGwtYW0gXAorCXVuaW5zdGFsbC1kaXN0X3BrZ2RhdGFEQVRBCisKKworaW5zdGFsbC1kYXRhLWhvb2s6CisJY3AgLXAgJChERVNURElSKSQocGtnZGF0YWRpcikvZGVmYXVsdC5tayAkKERFU1RESVIpJChwa2dkYXRhZGlyKS9kZWZhdWx0Lm1rLnRtcAorCSQoZG9fcGF0aF9zdWJzdCkgPCQoREVTVERJUikkKHBrZ2RhdGFkaXIpL2RlZmF1bHQubWsudG1wIFwKKwkJCSA+JChERVNURElSKSQocGtnZGF0YWRpcikvZGVmYXVsdC5taworCXJtICQoREVTVERJUikkKHBrZ2RhdGFkaXIpL2RlZmF1bHQubWsudG1wCisKKyMgVGVsbCB2ZXJzaW9ucyBbMy41OSwzLjYzKSBvZiBHTlUgbWFrZSB0byBub3QgZXhwb3J0IGFsbCB2YXJpYWJsZXMuCisjIE90aGVyd2lzZSBhIHN5c3RlbSBsaW1pdCAoZm9yIFN5c1YgYXQgbGVhc3QpIG1heSBiZSBleGNlZWRlZC4KKy5OT0VYUE9SVDoKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9tay9hcmNoaXRlY3R1cmUubWsgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvbWsvYXJjaGl0ZWN0dXJlLm1rCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjU2ZWFhYmUKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvbWsvYXJjaGl0ZWN0dXJlLm1rCkBAIC0wLDAgKzEsMjUgQEAKKyMgVGhpcyBNYWtlZmlsZSBzbmlwcGV0IGRlZmluZXMgYWxsIHRoZSBERUJfSE9TVF8qIC8gREVCX0JVSUxEXyogdmFyaWFibGVzCisjIHRoYXQgZHBrZy1hcmNoaXRlY3R1cmUgY2FuIHJldHVybi4gRXhpc3RpbmcgdmFsdWVzIG9mIHRob3NlIHZhcmlhYmxlcworIyBhcmUgcHJlc2VydmVkIGFzIHBlciBwb2xpY3kuCisKK2Rwa2dfbGF0ZV9ldmFsID89ICQob3IgJCh2YWx1ZSBEUEtHX0NBQ0hFXyQoMSkpLCQoZXZhbCBEUEtHX0NBQ0hFXyQoMSkgOj0gJChzaGVsbCAkKDIpKSkkKHZhbHVlIERQS0dfQ0FDSEVfJCgxKSkpCisKK0RFQl9IT1NUX0FSQ0ggPz0gJChjYWxsIGRwa2dfbGF0ZV9ldmFsLERFQl9IT1NUX0FSQ0gsZHBrZy1hcmNoaXRlY3R1cmUgLXFERUJfSE9TVF9BUkNIKQorREVCX0hPU1RfQVJDSF9PUyA/PSAkKGNhbGwgZHBrZ19sYXRlX2V2YWwsREVCX0hPU1RfQVJDSF9PUyxkcGtnLWFyY2hpdGVjdHVyZSAtcURFQl9IT1NUX0FSQ0hfT1MpCitERUJfSE9TVF9BUkNIX0NQVSA/PSAkKGNhbGwgZHBrZ19sYXRlX2V2YWwsREVCX0hPU1RfQVJDSF9DUFUsZHBrZy1hcmNoaXRlY3R1cmUgLXFERUJfSE9TVF9BUkNIX0NQVSkKK0RFQl9IT1NUX0FSQ0hfQklUUyA/PSAkKGNhbGwgZHBrZ19sYXRlX2V2YWwsREVCX0hPU1RfQVJDSCxkcGtnLWFyY2hpdGVjdHVyZSAtcURFQl9IT1NUX0FSQ0hfQklUUykKK0RFQl9IT1NUX0FSQ0hfRU5ESUFOID89ICQoY2FsbCBkcGtnX2xhdGVfZXZhbCxERUJfSE9TVF9BUkNIX0VORElBTixkcGtnLWFyY2hpdGVjdHVyZSAtcURFQl9IT1NUX0FSQ0hfRU5ESUFOKQorREVCX0hPU1RfR05VX0NQVSA/PSAkKGNhbGwgZHBrZ19sYXRlX2V2YWwsREVCX0hPU1RfR05VX0NQVSxkcGtnLWFyY2hpdGVjdHVyZSAtcURFQl9IT1NUX0dOVV9DUFUpCitERUJfSE9TVF9HTlVfU1lTVEVNID89ICQoY2FsbCBkcGtnX2xhdGVfZXZhbCxERUJfSE9TVF9HTlVfU1lTVEVNLGRwa2ctYXJjaGl0ZWN0dXJlIC1xREVCX0hPU1RfR05VX1NZU1RFTSkKK0RFQl9IT1NUX0dOVV9UWVBFID89ICQoY2FsbCBkcGtnX2xhdGVfZXZhbCxERUJfSE9TVF9HTlVfVFlQRSxkcGtnLWFyY2hpdGVjdHVyZSAtcURFQl9IT1NUX0dOVV9UWVBFKQorREVCX0hPU1RfTVVMVElBUkNIID89ICQoY2FsbCBkcGtnX2xhdGVfZXZhbCxERUJfSE9TVF9NVUxUSUFSQ0gsZHBrZy1hcmNoaXRlY3R1cmUgLXFERUJfSE9TVF9NVUxUSUFSQ0gpCisKK0RFQl9CVUlMRF9BUkNIID89ICQoY2FsbCBkcGtnX2xhdGVfZXZhbCxERUJfQlVJTERfQVJDSCxkcGtnLWFyY2hpdGVjdHVyZSAtcURFQl9CVUlMRF9BUkNIKQorREVCX0JVSUxEX0FSQ0hfT1MgPz0gJChjYWxsIGRwa2dfbGF0ZV9ldmFsLERFQl9CVUlMRF9BUkNIX09TLGRwa2ctYXJjaGl0ZWN0dXJlIC1xREVCX0JVSUxEX0FSQ0hfT1MpCitERUJfQlVJTERfQVJDSF9DUFUgPz0gJChjYWxsIGRwa2dfbGF0ZV9ldmFsLERFQl9CVUlMRF9BUkNIX0NQVSxkcGtnLWFyY2hpdGVjdHVyZSAtcURFQl9CVUlMRF9BUkNIX0NQVSkKK0RFQl9CVUlMRF9BUkNIX0JJVFMgPz0gJChjYWxsIGRwa2dfbGF0ZV9ldmFsLERFQl9CVUlMRF9BUkNILGRwa2ctYXJjaGl0ZWN0dXJlIC1xREVCX0JVSUxEX0FSQ0hfQklUUykKK0RFQl9CVUlMRF9BUkNIX0VORElBTiA/PSAkKGNhbGwgZHBrZ19sYXRlX2V2YWwsREVCX0JVSUxEX0FSQ0hfRU5ESUFOLGRwa2ctYXJjaGl0ZWN0dXJlIC1xREVCX0JVSUxEX0FSQ0hfRU5ESUFOKQorREVCX0JVSUxEX0dOVV9DUFUgPz0gJChjYWxsIGRwa2dfbGF0ZV9ldmFsLERFQl9CVUlMRF9HTlVfQ1BVLGRwa2ctYXJjaGl0ZWN0dXJlIC1xREVCX0JVSUxEX0dOVV9DUFUpCitERUJfQlVJTERfR05VX1NZU1RFTSA/PSAkKGNhbGwgZHBrZ19sYXRlX2V2YWwsREVCX0JVSUxEX0dOVV9TWVNURU0sZHBrZy1hcmNoaXRlY3R1cmUgLXFERUJfQlVJTERfR05VX1NZU1RFTSkKK0RFQl9CVUlMRF9HTlVfVFlQRSA/PSAkKGNhbGwgZHBrZ19sYXRlX2V2YWwsREVCX0JVSUxEX0dOVV9UWVBFLGRwa2ctYXJjaGl0ZWN0dXJlIC1xREVCX0JVSUxEX0dOVV9UWVBFKQorREVCX0JVSUxEX01VTFRJQVJDSCA/PSAkKGNhbGwgZHBrZ19sYXRlX2V2YWwsREVCX0JVSUxEX01VTFRJQVJDSCxkcGtnLWFyY2hpdGVjdHVyZSAtcURFQl9CVUlMRF9NVUxUSUFSQ0gpCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvbWsvYnVpbGRmbGFncy5tayBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9tay9idWlsZGZsYWdzLm1rCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjhmMGYyMTUKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvbWsvYnVpbGRmbGFncy5tawpAQCAtMCwwICsxLDM3IEBACisjIFRoaXMgTWFrZWZpbGUgc25pcHBldCBkZWZpbmVzIHRoZSBmb2xsb3dpbmcgdmFyaWFibGVzOgorIworIyBDRkxBR1M6IGZsYWdzIGZvciB0aGUgQyBjb21waWxlcgorIyBDUFBGTEFHUzogZmxhZ3MgZm9yIHRoZSBDIHByZXByb2Nlc3NvcgorIyBDWFhGTEFHUzogZmxhZ3MgZm9yIHRoZSBDKysgY29tcGlsZXIKKyMgRkZMQUdTOiBmbGFncyBmb3IgdGhlIEZvcnRyYW4gY29tcGlsZXIKKyMgTERGTEFHUzogZmxhZ3MgZm9yIHRoZSBsaW5rZXIKKyMKKyMgWW91IGNhbiBhbHNvIGV4cG9ydCB0aGVtIGluIHRoZSBlbnZpcm9ubWVudCBieSBzZXR0aW5nCisjIERQS0dfRVhQT1JUX0JVSUxERkxBR1MgdG8gYSBub24tZW1wdHkgdmFsdWUuCisjCisjIFRoaXMgbGlzdCBpcyBrZXB0IGluIHN5bmMgd2l0aCB0aGUgZGVmYXVsdCBzZXQgb2YgZmxhZ3MgcmV0dXJuZWQKKyMgYnkgZHBrZy1idWlsZGZsYWdzLgorCitkcGtnX2xhdGVfZXZhbCA/PSAkKG9yICQodmFsdWUgRFBLR19DQUNIRV8kKDEpKSwkKGV2YWwgRFBLR19DQUNIRV8kKDEpIDo9ICQoc2hlbGwgJCgyKSkpJCh2YWx1ZSBEUEtHX0NBQ0hFXyQoMSkpKQorCitEUEtHX0JVSUxERkxBR1NfTElTVCA9IENGTEFHUyBDUFBGTEFHUyBDWFhGTEFHUyBGRkxBR1MgTERGTEFHUworCitkZWZpbmUgZHBrZ19idWlsZGZsYWdzX2V4cG9ydF9lbnZ2YXIKK2lmZGVmICQoMSkKK0RQS0dfQlVJTERGTEFHU19FWFBPUlRfRU5WVkFSICs9ICQoMSk9IiQodmFsdWUgJCgxKSkiCitlbmRpZgorZW5kZWYKKworJChldmFsICQoY2FsbCBkcGtnX2J1aWxkZmxhZ3NfZXhwb3J0X2VudnZhcixERUJfQlVJTERfTUFJTlRfT1BUSU9OUykpCiskKGZvcmVhY2ggZmxhZywkKERQS0dfQlVJTERGTEFHU19MSVNUKSxcCisgICQoZm9yZWFjaCBvcGVyYXRpb24sU0VUIFNUUklQIEFQUEVORCBQUkVQRU5ELFwKKyAgICAkKGV2YWwgJChjYWxsIGRwa2dfYnVpbGRmbGFnc19leHBvcnRfZW52dmFyLERFQl8kKGZsYWcpX01BSU5UXyQob3BlcmF0aW9uKSkpKSkKKworZHBrZ19idWlsZGZsYWdzX3NldHZhciA9ICQoMSkgPSAkKGNhbGwgZHBrZ19sYXRlX2V2YWwsJCgxKSwkKERQS0dfQlVJTERGTEFHU19FWFBPUlRfRU5WVkFSKSBkcGtnLWJ1aWxkZmxhZ3MgLS1nZXQgJCgxKSkKKworJChmb3JlYWNoIGZsYWcsJChEUEtHX0JVSUxERkxBR1NfTElTVCksXAorICAkKGV2YWwgJChjYWxsIGRwa2dfYnVpbGRmbGFnc19zZXR2YXIsJChmbGFnKSkpKQorCitpZmRlZiBEUEtHX0VYUE9SVF9CVUlMREZMQUdTCisgIGV4cG9ydCAkKERQS0dfQlVJTERGTEFHU19MSVNUKQorZW5kaWYKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9tay9kZWZhdWx0Lm1rIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL21rL2RlZmF1bHQubWsKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjRiMTIzYwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9tay9kZWZhdWx0Lm1rCkBAIC0wLDAgKzEsOCBAQAorIyBJbmNsdWRlIGFsbCB0aGUgTWFrZWZpbGVzIHRoYXQgZGVmaW5lIHZhcmlhYmxlcyB0aGF0IGNhbiBiZSB1c2VmdWwKKyMgd2l0aGluIGRlYmlhbi9ydWxlcworCitkcGtnX2RhdGFkaXIgPSAuCitpbmNsdWRlICQoZHBrZ19kYXRhZGlyKS9hcmNoaXRlY3R1cmUubWsKK2luY2x1ZGUgJChkcGtnX2RhdGFkaXIpL2J1aWxkZmxhZ3MubWsKK2luY2x1ZGUgJChkcGtnX2RhdGFkaXIpL3BrZy1pbmZvLm1rCitpbmNsdWRlICQoZHBrZ19kYXRhZGlyKS92ZW5kb3IubWsKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9tay9wa2ctaW5mby5tayBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9tay9wa2ctaW5mby5tawpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zMWY3Y2IyCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL21rL3BrZy1pbmZvLm1rCkBAIC0wLDAgKzEsMTcgQEAKKyMgTWFrZWZpbGUgc25pcHBldCBkZWZpbmluZyB0aGUgZm9sbG93aW5nIHZhcmlhYmxlczoKKyMKKyMgREVCX1NPVVJDRTogdGhlIHNvdXJjZSBwYWNrYWdlIG5hbWUKKyMgREVCX1ZFUlNJT046IHRoZSBmdWxsIHZlcnNpb24gb2YgdGhlIHBhY2thZ2UgKGVwb2NoICsgdXBzdHJlYW0gdmVycy4gKyByZXZpc2lvbikKKyMgREVCX1ZFUlNJT05fRVBPQ0hfVVBTVFJFQU06IHRoZSBwYWNrYWdlJ3MgdmVyc2lvbiB3aXRob3V0IHRoZSBEZWJpYW4gcmV2aXNpb24KKyMgREVCX1ZFUlNJT05fVVBTVFJFQU1fUkVWSVNJT046IHRoZSBwYWNrYWdlJ3MgdmVyc2lvbiB3aXRob3V0IHRoZSBEZWJpYW4gZXBvY2gKKyMgREVCX1ZFUlNJT05fVVBTVFJFQU06IHRoZSBwYWNrYWdlJ3MgdXBzdHJlYW0gdmVyc2lvbgorIyBERUJfRElTVFJJQlVUSU9OOiB0aGUgZGlzdHJpYnV0aW9uKHMpIGxpc3RlZCBpbiB0aGUgY3VycmVudCBlbnRyeSBvZiBkZWJpYW4vY2hhbmdlbG9nCisKK2Rwa2dfbGF0ZV9ldmFsID89ICQob3IgJCh2YWx1ZSBEUEtHX0NBQ0hFXyQoMSkpLCQoZXZhbCBEUEtHX0NBQ0hFXyQoMSkgOj0gJChzaGVsbCAkKDIpKSkkKHZhbHVlIERQS0dfQ0FDSEVfJCgxKSkpCisKK0RFQl9TT1VSQ0UgPSAkKGNhbGwgZHBrZ19sYXRlX2V2YWwsREVCX1NPVVJDRSxhd2sgJy9eU291cmNlOiAvIHsgcHJpbnQgJCQyIH0nIGRlYmlhbi9jb250cm9sKQorREVCX1ZFUlNJT04gPSAkKGNhbGwgZHBrZ19sYXRlX2V2YWwsREVCX1ZFUlNJT04sZHBrZy1wYXJzZWNoYW5nZWxvZyB8IGF3ayAnL15WZXJzaW9uOiAvIHsgcHJpbnQgJCQyIH0nKQorREVCX1ZFUlNJT05fRVBPQ0hfVVBTVFJFQU0gPSAkKGNhbGwgZHBrZ19sYXRlX2V2YWwsREVCX1ZFUlNJT05fRVBPQ0hfVVBTVFJFQU0sZWNobyAnJChERUJfVkVSU0lPTiknIHwgc2VkIC1lICdzLy1bXi1dKiQkLy8nKQorREVCX1ZFUlNJT05fVVBTVFJFQU1fUkVWSVNJT04gPSAkKGNhbGwgZHBrZ19sYXRlX2V2YWwsREVCX1ZFUlNJT05fVVBTVFJFQU1fUkVWSVNJT04sZWNobyAnJChERUJfVkVSU0lPTiknIHwgc2VkIC1lICdzL15bMC05XSo6Ly8nKQorREVCX1ZFUlNJT05fVVBTVFJFQU0gPSAkKGNhbGwgZHBrZ19sYXRlX2V2YWwsREVCX1ZFUlNJT05fVVBTVFJFQU0sZWNobyAnJChERUJfVkVSU0lPTl9FUE9DSF9VUFNUUkVBTSknIHwgc2VkIC1lICdzL15bMC05XSo6Ly8nKQorREVCX0RJU1RSSUJVVElPTiA9ICQoY2FsbCBkcGtnX2xhdGVfZXZhbCxERUJfRElTVFJJQlVUSU9OLGRwa2ctcGFyc2VjaGFuZ2Vsb2cgfCBzZWQgLW4gLWUgJ3MvXkRpc3RyaWJ1dGlvbjogLy9wJykKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9tay92ZW5kb3IubWsgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvbWsvdmVuZG9yLm1rCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmFhNzVjZDYKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvbWsvdmVuZG9yLm1rCkBAIC0wLDAgKzEsMTggQEAKKyMgTWFrZWZpbGUgc25pcHBldCBkZWZpbmluZyB0aGUgZm9sbG93aW5nIHZlbmRvci1yZWxhdGVkIHZhcmlhYmxlczoKKyMKKyMgREVCX1ZFTkRPUjogb3V0cHV0IG9mIGRwa2ctdmVuZG9yIC0tcXVlcnkgVmVuZG9yCisjIERFQl9QQVJFTlRfVkVORE9SOiBvdXRwdXQgb2YgZHBrZy12ZW5kb3IgLS1xdWVyeSBQYXJlbnQgKGNhbiBiZSBlbXB0eSkKKyMKKyMgVGhlIHNuaXBwZXQgYWxzbyBkZWZpbmVzIGEgbWFjcm8gImRwa2dfdmVuZG9yX2Rlcml2ZXNfZnJvbSIgdGhhdCB5b3UgY2FuCisjIHVzZSB0byB2ZXJpZnkgaWYgdGhlIGN1cnJlbnQgdmVuZG9yIGRlcml2ZXMgZnJvbSBhbm90aGVyIHZlbmRvciB3aXRoIGEKKyMgc2ltcGxlIHRlc3QgbGlrZSB0aGlzIG9uZToKKyMgaWZlcSAoJChjYWxsIGRwa2dfdmVuZG9yX2Rlcml2ZXNfZnJvbSB1YnVudHUpLHllcykKKyMgICAuLi4KKyMgZW5kaWYKKworZHBrZ19sYXRlX2V2YWwgPz0gJChvciAkKHZhbHVlIERQS0dfQ0FDSEVfJCgxKSksJChldmFsIERQS0dfQ0FDSEVfJCgxKSA6PSAkKHNoZWxsICQoMikpKSQodmFsdWUgRFBLR19DQUNIRV8kKDEpKSkKKworREVCX1ZFTkRPUiA9ICQoY2FsbCBkcGtnX2xhdGVfZXZhbCxERUJfVkVORE9SLGRwa2ctdmVuZG9yIC0tcXVlcnkgVmVuZG9yKQorREVCX1BBUkVOVF9WRU5ET1IgPSAkKGNhbGwgZHBrZ19sYXRlX2V2YWwsREVCX1BBUkVOVF9WRU5ET1IsZHBrZy12ZW5kb3IgLS1xdWVyeSBQYXJlbnQpCisKK2Rwa2dfdmVuZG9yX2Rlcml2ZXNfZnJvbSA9IGRwa2ctdmVuZG9yIC0tZGVyaXZlcy1mcm9tICQoMSkgJiYgZWNobyB5ZXMgfHwgZWNobyBubwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3BvL0NoYW5nZUxvZy5vbGQgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvcG8vQ2hhbmdlTG9nLm9sZApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45YzAyYmQyCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3BvL0NoYW5nZUxvZy5vbGQKQEAgLTAsMCArMSw0NDggQEAKKzIwMDktMDMtMDIgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGRwa2ctZGV2LnBvdDogUmVnZW5lcmF0ZWQuCisJKiAqLnBvOiBNZXJnZWQgd2l0aCBkcGtnLWRldi5wb3QuCisKKzIwMDktMDItMjEgIEZyYW5rIExpY2h0ZW5oZWxkICA8ZGpwaWdAZGViaWFuLm9yZz4KKworCSogZGUucG86IEZpeCB0eXBvLgorCisyMDA5LTAyLTA1ICBXaWt0b3IgV2FuZGFjaG93aWN6ICA8c2lyeWVzQGdtYWlsLmNvbT4KKworCSogcGwucG86IFVwZGF0ZWQgdG8gNDcydC4KKworMjAwOS0wMS0wMiAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogZnIucG86IE1lcmdlZCB3aXRoIGRwa2ctZGV2LnBvdC4KKworMjAwOC0wMS0wNSAgQ2hyaXN0aWFuIFBlcnJpZXIgIDxidWJ1bGxlQGRlYmlhbi5vcmc+CisKKwkqIGZyLnBvOiBNaXNzaW5nIHNwYWNlIGFkZGVkICgiZGV2cmlleiBkw6lmaW5pciIpLgorCisyMDA4LTEyLTI5ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBkcGtnLWRldi5wb3Q6IFJlZ2VuZXJhdGVkLgorCSogKi5wbzogTWVyZ2VkIHdpdGggZHBrZy1kZXYucG90LgorCisyMDA4LTEyLTI3ICBIZWxnZSBLcmV1dHptYW5uICA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CisKKwkqIGRlLnBvOiBDaGFuZ2UgdHJhbnNsYXRpb24gb2YgIlVzYWdlIi4KKworMjAwOC0xMS0xNSAgQ2hyaXN0aWFuIFBlcnJpZXIgIDxidWJ1bGxlQGRlYmlhbi5vcmc+CisKKwkqIGZyLnBvOiBVcGRhdGVkIHRvIDQ3M3QuCisKKzIwMDgtMTEtMTQgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGRwa2ctZGV2LnBvdDogUmVnZW5lcmF0ZWQuCisJKiAqLnBvOiBNZXJnZWQgd2l0aCBkcGtnLWRldi5wb3QuCisKKzIwMDgtMTEtMDEgIENocmlzdGlhbiBQZXJyaWVyICA8YnVidWxsZUBkZWJpYW4ub3JnPgorCisJKiBmci5wbzogRml4IHdyb25nIHRyYW5zbGF0aW9uICgjNTA0MTIzKS4KKworMjAwOC0wOS0yMyAgWXVyaSBLb3psb3YgIDxrb3psb3YueUBnbWFpbC5jb20+CisKKwkqIHJ1LnBvOiBGaXggdHlwbyAoIzQ5OTczNikuCisKKzIwMDgtMDgtMjkgIFBldGVyIEtyZWZ0aW5nICA8cGV0ZXJrQGRlYmlhbi5vcmc+CisKKwkqIHN2LnBvOiBVcGRhdGVkIHRvIDQ3M3QuCisKKzIwMDgtMDgtMTggIEhlbGdlIEtyZXV0em1hbm4gIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KKworCSogZGUucG86IFVwZGF0ZWQgdG8gNDczdC4KKworMjAwOC0wOC0xNyAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogZHBrZy1kZXYucG90OiBSZWdlbmVyYXRlZC4KKwkqICoucG86IE1lcmdlZCB3aXRoIGRwa2ctZGV2LnBvdC4KKworMjAwOC0wOC0wNCAgSGVsZ2UgS3JldXR6bWFubiAgPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorCisJKiBkZS5wbzogVXBkYXRlZCB0byA0NzN0LgorCisyMDA4LTA4LTA0ICBDeXJpbCBCcnVsZWJvaXMgIDxraWJpQGRlYmlhbi5vcmc+CisKKwkqIGZyLnBvOiBGaXhlZCBtaXMtdHJhbnNsYXRpb24uCisKKzIwMDgtMDctMjIgIEhlbGdlIEtyZXV0em1hbm4gIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KKworCSogZGUucG86IFVuaWZ5IHRyYW5zbGF0aW9uIG9mICJkaXZlcnNpb24iLgorCisyMDA4LTA3LTEwICBZdXJpIEtvemxvdiAgPGtvemxvdi55QGdtYWlsLmNvbT4KKworCSogcnUucG86IFVwZGF0ZWQgdG8gNDczdC4KKworMjAwOC0wNi0xMCAgV2lrdG9yIFdhbmRhY2hvd2ljeiAgPHNpcnllc0BnbWFpbC5jb20+CisKKwkqIHBsLnBvOiBVcGRhdGVkIHRvIDQ3M3QuCisKKzIwMDgtMDYtMDkgIENocmlzdGlhbiBwZXJyaWVyICA8YnVidWxsZUBkZWJpYW4ub3JnPgorCisJKiBmci5wbzogVXBkYXRlZCB0byA0NzN0CisKKzIwMDgtMDYtMDkgIEhlbGdlIEtyZXV0em1hbm4gIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KKworCSogZGUucG86IFVwZGF0ZWQgdG8gNDcxdDBmMnUuCisKKzIwMDgtMDYtMDkgIFBldGVyIEthcmxzc29uICA8cGV0ZXJrQGRlYmlhbi5vcmc+CisKKwkqIHN2LnBvOiBVcGRhdGVkIHRvIDQ3M3QuCisKKzIwMDgtMDYtMDkgIFJhcGhhw6tsIEhlcnR6b2cgIDxoZXJ0em9nQGRlYmlhbi5vcmc+CisKKwkqIGRwa2ctZGV2LnBvdDogUmVnZW5lcmF0ZWQuCisJKiAqLnBvOiBNZXJnZWQgd2l0aCBkcGtnLWRldi5wb3QgKDIgbmV3IHN0cmluZ3MpLgorCisyMDA4LTA2LTA3ICBDaHJpc3RpYW4gcGVycmllciAgPGJ1YnVsbGVAZGViaWFuLm9yZz4KKworCSogZnIucG86IFVwZGF0ZWQgdG8gNDcxdC4KKworMjAwOC0wNi0wNiAgV2lrdG9yIFdhbmRhY2hvd2ljeiAgPHNpcnllc0BnbWFpbC5jb20+CisKKwkqIHBsLnBvOiBVcGRhdGVkIHRvIDQ3MXQuCisKKzIwMDgtMDUtMTkgIFl1cmkgS296bG92ICA8a296bG92LnlAZ21haWwuY29tPgorCisJKiBydS5wbzogVXBkYXRlZCB0byA0Njl0LgorCisyMDA4LTA1LTE4ICBIZWxnZSBLcmV1dHptYW5uICA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CisKKwkqIGRlLnBvOiBVcGRhdGVkIHRvIDQ2OXQwZjJ1LgorCisyMDA4LTA1LTEzICBDaHJpc3RpYW4gcGVycmllciAgPGJ1YnVsbGVAZGViaWFuLm9yZz4KKworCSogZnIucG86IFVwZGF0ZWQgdG8gMzI2dDc4ZjY3dS4KKworMjAwOC0wNS0xMyAgUGV0ZXIgS2FybHNzb24gIDxwZXRlcmtAZGViaWFuLm9yZz4KKworCSogc3YucG86IFVwZGF0ZWQgdG8gNDcxdC4KKworMjAwOC0wNS0xMiAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogZHBrZy1kZXYucG90OiBSZWdlbmVyYXRlZC4KKwkqICoucG86IE1lcmdlZCB3aXRoIGRwa2ctZGV2LnBvdC4KKworMjAwOC0wNS0wNSAgV2lrdG9yIFdhbmRhY2hvd2ljeiAgPHNpcnllc0BnbWFpbC5jb20+CisKKwkqIHBsLnBvOiBVcGRhdGVkIHRvIDQ2OXQuCisKKzIwMDgtMDUtMDUgIEhlbGdlIEtyZXV0em1hbm4gIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KKworCSogZGUucG86IFVwZGF0ZWQgdG8gNDY3dDBmMnUuIC8gYSBtaW5vciBmaXguCisKKzIwMDgtMDUtMDMgIFl1cmkgS296bG92ICA8a296bG92LnlAZ21haWwuY29tPgorCisJKiBydS5wbzogVXBkYXRlZCB0byA0Njh0MWYuCisKKzIwMDgtMDQtMjkgIEhlbGdlIEtyZXV0em1hbm4gIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KKworCSogZGUucG86IFVwZGF0ZWQgdG8gNDU4dDBmMTF1LgorCisyMDA4LTA0LTI5ICBQZXRlciBLYXJsc3NvbiAgPHBldGVya0BkZWJpYW4ub3JnPgorCisJKiBzdi5wbzogVXBkYXRlZCB0byA0Njl0LgorCisyMDA4LTA0LTI5ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBkcGtnLWRldi5wb3Q6IFJlZ2VuZXJhdGVkLgorCSogKi5wbzogTWVyZ2VkIHdpdGggZHBrZy1kZXYucG90LgorCisyMDA4LTA0LTIyICBIZWxnZSBLcmV1dHptYW5uICA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CisKKwkqIGRlLnBvOiBGaXggYSB0cmFuc2xhdGlvbiBhZnRlciBzZWVpbmcgaXQgaW4gcHJhY3RpY2UuCisKKzIwMDgtMDQtMjIgIEhlbGdlIEtyZXV0em1hbm4gIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KKworCSogZGUucG86IFVwZGF0ZWQgdG8gNDQ4dDBmMjB1LgorCisyMDA4LTA0LTIwIFJvYmVydCBMdWJlcmRhICA8cm9iZXJ0QGRlYmlhbi5vcmc+CisKKwkqIHBsLnBvOiBVcGRhdGVkIHRvIDQ0OXQ2ZjEzdS4KKworMjAwOC0wNC0wOCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogZHBrZy1kZXYucG90OiBSZWdlbmVyYXRlZC4KKwkqICoucG86IE1lcmdlZCB3aXRoIGRwa2ctZGV2LnBvdC4KKworMjAwOC0wNC0wMyAgSGVsZ2UgS3JldXR6bWFubiAgPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorCisJKiBkZS5wbzogVXBkYXRlZCB0byAzODZ0MGY4MXUuCisKKzIwMDgtMDQtMDMgIFBldGVyIEthcmxzc29uICA8cGV0ZXJrQGRlYmlhbi5vcmc+CisKKwkqIHN2LnBvOiBVcGRhdGVkIHRvIDQ2OHQgYW5kIGZpeGVkIGEgdHlwby4KKworMjAwOC0wNC0wMSAgSGVsZ2UgS3JldXR6bWFubiAgPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorCisJKiBkZS5wbzogVXBkYXRlZCB0byAzNjh0M2Y5NnUuCisKKzIwMDgtMDMtMzAgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGRwa2ctZGV2LnBvdDogUmVnZW5lcmF0ZWQuCisJKiAqLnBvOiBNZXJnZWQgd2l0aCBkcGtnLWRldi5wb3QuCisKKzIwMDgtMDMtMTggIEhlbGdlIEtyZXV0em1hbm4gIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KKworCSogZGUucG86IFVwZGF0ZWQgdG8gMzU2dDBmMTI3dS4KKworMjAwOC0wMy0wOSBSb2JlcnQgTHViZXJkYSAgPHJvYmVydEBkZWJpYW4ub3JnPgorCisJKiBwbC5wbzogVXBkYXRlZCB0byA0OTB0LgorCSogcGwucG86IENvbnNpc3RlbnRseSB1c2UgUG9saXNoIHF1b3RhdGlvbiBtYXJrcyBpbiB0cmFuc2xhdGlvbnMuCisKKzIwMDgtMDItMjYgIFBldGVyIEthcmxzc29uICA8cGV0ZXJrQGRlYmlhbi5vcmc+CisKKwkqIHN2LnBvOiBVcGRhdGVkIHRvIDQ4OXQuCisKKzIwMDgtMDItMjQgIFJvYmVydCBMdWJlcmRhICA8cm9iZXJ0QGRlYmlhbi5vcmc+CisKKwkqIHBsLnBvOiBSZWNvZGVkIHRvIFVURi04LgorCSogcGwucG86IFVwZGF0ZWQgdG8gNDg0dDFmNHUuCisKKzIwMDgtMDEtMjIgIEhlbGdlIEtyZXV0em1hbm4gIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KKworCSogZGUucG86IFVwZGF0ZWQgdG8gMzM1dDBmMTQ4dS4KKworMjAwOC0wMS0yOCAgUmFwaGHDq2wgSGVydHpvZyAgPGhlcnR6b2dAZGViaWFuLm9yZz4KKworCSogKi5wbzogQXZvaWQgZnV6enkgdHJhbnNsYXRpb25zIG9uIGEgY29zbWV0aWMgc3RyaW5nIGNoYW5nZS4KKworMjAwOC0wMS0wNCAgUGV0ZXIgS2FybHNzb24gIDxwZXRlcmtAZGViaWFuLm9yZz4KKworCSogc3YucG86IFVwZGF0ZWQgdG8gNDgydDF1LgorCisyMDA4LTAxLTIyICBIZWxnZSBLcmV1dHptYW5uICA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CisKKwkqIGRlLnBvOiBVcGRhdGVkIHRvIDMxMXQwZjE3MnUuCisKKzIwMDgtMDEtMjEgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGRwa2ctZGV2LnBvdDogUmVnZW5lcmF0ZWQuCisJKiAqLnBvOiBNZXJnZWQgd2l0aCBkcGtnLWRldi5wb3QuCisKKzIwMDgtMDEtMjEgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIExJTkdVQVM6IEFkZCBSdXNzaWFuLgorCisyMDA4LTAxLTE5ICBGcmFuayBMaWNodGVuaGVsZCAgPGRqcGlnQGRlYmlhbi5vcmc+CisKKwkqIGRwa2ctZGV2LnBvdDogUmVnZW5lcmF0ZWQuCisJKiAqLnBvOiBNZXJnZWQgd2l0aCBkcGtnLWRldi5wb3QuCisKKzIwMDgtMDEtMDQgIFBldGVyIEthcmxzc29uICA8cGV0ZXJrQGRlYmlhbi5vcmc+CisKKwkqIHN2LnBvOiBVcGRhdGVkIHRvIDQ4M3QuCisKKzIwMDgtMDEtMTQgIEN5cmlsIEJydWxlYm9pcyAgPGN5cmlsLmJydWxlYm9pc0BlbnN0LWJyZXRhZ25lLmZyPgorCisJKiBmci5wbzogRml4IHNwZWxsaW5nIGVycm9yLgorCisyMDA4LTAxLTE0ICBZdXJpIEtvemxvdiAgPGtvemxvdi55QGdtYWlsLmNvbT4KKworCSogcnUucG86IFVwZGF0ZWQgdG8gNDgzdC4KKworMjAwOC0wMS0wNyAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogZHBrZy1kZXYucG90OiBSZWdlbmVyYXRlZC4KKwkqICoucG86IE1lcmdlZCB3aXRoIGRwa2ctZGV2LnBvdC4KKworMjAwOC0wMS0wNCAgUGV0ZXIgS2FybHNzb24gIDxwZXRlcmtAZGViaWFuLm9yZz4KKworCSogc3YucG86IFVwZGF0ZWQgdG8gNDgydC4KKworMjAwOC0wMS0wMiAgQ2hyaXN0aWFuIFBlcnJpZXIgIDxidWJ1bGxlQGRlYmlhbi5vcmc+CisKKwkqIGZyLnBvOiBVcGRhdGVkIHRvIDQ4MnQgYW5kIGNvbnZlcnRlZCB0byBVVEYtOC4KKworMjAwNy0xMi0yOSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogZHBrZy1kZXYucG90OiBSZWdlbmVyYXRlZC4KKwkqICoucG86IE1lcmdlZCB3aXRoIGRwa2ctZGV2LnBvdC4KKworMjAwNy0xMi0xNyAgSGVsZ2UgS3JldXR6bWFubiAgPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorCisJKiBkZS5wbzogVXBkYXRlZCB0byAyNTV0MGYyMjd1LgorCisyMDA3LTEyLTE5ICBQZXRlciBLYXJsc3NvbiAgPHBldGVya0BkZWJpYW4ub3JnPgorCisJKiBkcGtnLWRldi5wb3Q6IFJlZ2VuZXJhdGVkLgorCSogKi5wbzogTWVyZ2VkIHdpdGggZHBrZy1kZXYucG90LgorCSogc3YucG86IFVwZGF0ZWQgdG8gNDgydC4KKworMjAwNy0xMi0xNyAgSGVsZ2UgS3JldXR6bWFubiAgPGRlYmlhbkBoZWxnZWZqZWxsLmRlPgorCisJKiBkZS5wbzogVXBkYXRlZCB0byAyNTN0MGYyMjd1LgorCisyMDA3LTEyLTEwICBIZWxnZSBLcmV1dHptYW5uICA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CisKKwkqIGRlLnBvOiBVcGRhdGVkIHRvIDIyMXQwZjI1OXUuCisKKzIwMDctMTItMDkgIEhlbGdlIEtyZXV0em1hbm4gIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KKworCSogZGUucG86IFVwZGF0ZWQgdG8gMjA2dDBmMjc0dS4KKworMjAwNy0xMi0wNSAgRnLDqWTDqXJpYyBCb3RoYW15ICA8ZnJlZGVyaWMuYm90aGFteUBmcmVlLmZyPgorCisJKiBmci5wbzogVXBkYXRlZCB0byA0ODB0LgorCisyMDA3LTExLTIwICBQZXRlciBLYXJsc3NvbiAgPHBldGVya0BkZWJpYW4ub3JnPgorCisJKiBzdi5wbzogVXBkYXRlZCB0byA0ODB0LgorCisyMDA3LTExLTI5ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBkcGtnLWRldi5wb3Q6IFJlZ2VuZXJhdGVkLgorCSogKi5wbzogTWVyZ2VkIHdpdGggZHBrZy1kZXYucG90LgorCisyMDA3LTExLTIwICBQZXRlciBLYXJsc3NvbiAgPHBldGVya0BkZWJpYW4ub3JnPgorCisJKiBzdi5wbzogVXBkYXRlZCB0byA0ODB0LgorCisyMDA3LTExLTIwICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBkcGtnLWRldi5wb3Q6IFJlZ2VuZXJhdGVkLgorCSogKi5wbzogTWVyZ2VkIHdpdGggZHBrZy1kZXYucG90LgorCisyMDA3LTExLTE5ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBkcGtnLWRldi5wb3Q6IFJlZ2VuZXJhdGVkLgorCSogKi5wbzogTWVyZ2VkIHdpdGggZHBrZy1kZXYucG90LgorCisyMDA3LTExLTE1ICBHdWlsbGVtIEpvdmVyICA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorCisJKiBwbC5wbzogTWFyayB0d28gYm9ndXMgdHJhbnNsYXRpb25zIGFzIGZ1enp5LiBGaXggb25lIGZvcm1hdAorCXBhcmFtZXRlciBmcm9tICdzJyB0byAnJXMnIGFuZCBhbm90aGVyIGZyb20gJyVkJyB0byAnJXMnLgorCisyMDA3LTExLTExICBIZWxnZSBLcmV1dHptYW5uICA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CisKKwkqIGRlLnBvOiBVcGRhdGVkIHRvIDE3MnQwZjMwNnUuCisKKzIwMDctMTEtMDQgIFJvYmVydCBMdWJlcmRhICA8cm9iZXJ0QGRlYmlhbi5vcmc+CisKKwkqIHBsLnBvOiBVcGRhdGVkIHRvIDQ3OHQuCisKKzIwMDctMTEtMDQgIEhlbGdlIEtyZXV0em1hbm4gIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT4KKworCSogZGUucG86IFVwZGF0ZWQgdG8gMTQxdDBmMzM3dS4KKworMjAwNy0xMC0yNiAgUGV0ZXIgS2FybHNzb24gIDxwZXRlcmtAZGViaWFuLm9yZz4KKworCSogZHBrZy1kZXYucG90OiBSZWdlbmVyYXRlZC4KKwkqICoucG86IE1lcmdlZCB3aXRoIGRwa2ctZGV2LnBvdC4KKwkqIHN2LnBvOiBVcGRhdGVkIFN3ZWRpc2ggdG8gNDc4dC4KKworMjAwNy0xMC0wOCAgUm9iZXJ0IEx1YmVyZGEgIDxyb2JlcnRAZGViaWFuLm9yZz4KKworCSogTElOR1VBUzogQWRkIFBvbGlzaC4KKwkqIHBsLnBvOiBOZXcgZmlsZS4gSW5pdGlhbCB0cmFuc2xhdGlvbiB3aXRoIDMyMnQ2OWY3MXUuCisKKzIwMDctMDktMjggIFBldGVyIEthcmxzc29uICA8cGV0ZXJrQGRlYmlhbi5vcmc+CisKKwkqIHN2LnBvOiBVcGRhdGVkIHRvIDQ2MnQuCisKKzIwMDctMDktMjMgIEZyYW5rIExpY2h0ZW5oZWxkICA8ZGpwaWdAZGViaWFuLm9yZz4KKworCSogZHBrZy1kZXYucG90OiBSZWdlbmVyYXRlZC4KKwkqICoucG86IE1lcmdlZCB3aXRoIGRwa2ctZGV2LnBvdC4KKworMjAwNy0wOS0yMCAgQ2hyaXN0aWFuIFBlcnJpZXIgIDxidWJ1bGxlQGRlYmlhbi5vcmc+CisKKwkqIGZyLnBvOiBUeXBvIGNvcnJlY3Rpb24uCisKKzIwMDctMDgtMzAgIFBldGVyIEthcmxzc29uICA8cGV0ZXJrQGRlYmlhbi5vcmc+CisKKwkqIExJTkdVQVM6IEFkZGVkIFN3ZWRpc2guCisJKiBzdi5wbzogTmV3IGZpbGUuCisKKzIwMDctMDgtMTggIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGRwa2ctZGV2LnBvdDogUmVnZW5lcmF0ZWQuCisJKiAqLnBvOiBNZXJnZWQgd2l0aCBkcGtnLWRldi5wb3QuCisKKzIwMDctMDctMDggIEZyw6lkw6lyaWMgQm90aGFteSAgPGZyZWRlcmljLmJvdGhhbXlAZnJlZS5mcj4KKworCSogZnIucG86IFByb29mcmVhZC4KKworMjAwNy0wNy0wNiAgQ2hyaXN0aWFuIFBlcnJpZXIgIDxidWJ1bGxlQGRlYmlhbi5vcmc+CisKKwkqIGZyLnBvOiBSZS1yZS1yZS1yZS1jb21wbGV0ZWQgKDQzOHQpLgorCisyMDA3LTA3LTAyICBGcmFuayBMaWNodGVuaGVsZCAgPGRqcGlnQGRlYmlhbi5vcmc+CisKKwkqIGRwa2ctZGV2LnBvdDogUmVnZW5lcmF0ZWQuCisJKiAqLnBvOiBNZXJnZWQgd2l0aCBkcGtnLWRldi5wb3QuCisKKzIwMDctMDUtMjQgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGRwa2ctZGV2LnBvdDogUmVnZW5lcmF0ZWQuCisJKiAqLnBvOiBNZXJnZWQgd2l0aCBkcGtnLWRldi5wb3QuCisKKzIwMDctMDUtMTUgIEd1aWxsZW0gSm92ZXIgIDxndWlsbGVtQGRlYmlhbi5vcmc+CisKKwkqIGRwa2ctZGV2LnBvdDogUmVnZW5lcmF0ZWQuCisJKiAqLnBvOiBNZXJnZWQgd2l0aCBkcGtnLWRldi5wb3QuCisKKzIwMDctMDUtMTEgIEZyw6lkw6lyaWMgQm90aGFteSAgPGZyZWRlcmljLmJvdGhhbXlAZnJlZS5mcj4KKworCSogZnIucG86IFR5cG8gY29ycmVjdGVkIChzLy1PLy0wKS4KKworMjAwNy0wNS0wOCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogZHBrZy1kZXYucG90OiBSZWdlbmVyYXRlZC4KKwkqICoucG86IE1lcmdlZCB3aXRoIGRwa2ctZGV2LnBvdC4KKworMjAwNy0wMy0yMSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogTWFrZWZpbGUuaW4uaW46IFVwZGF0ZWQgZnJvbSBnZXR0ZXh0IDAuMTYuMS4KKworMjAwNy0wMy0yMSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogZHBrZy1kZXYucG90OiBSZWdlbmVyYXRlZC4KKworMjAwNi0xMi0wNCAgSm9yZGkgTWFsbGFjaCAgPGpvcmRpQGRlYmlhbi5vcmc+CisKKwkqIGNhLnBvOiBGaXggdHlwby4KKworMjAwNi0xMC0xMSAgTmljb2xhcyBGcmFuY29pcyAgPG5pY29sYXMuZnJhbmNvaXNAY2VudHJhbGllbnMubmV0PgorCisJKiBMSU5HVUFTOiBBY3RpdmF0ZSB0aGUgQ2F0YWxhbiB0cmFuc2xhdGlvbi4KKworMjAwNi0xMC0xMSAgSm9yZGkgTWFsbGFjaCAgPGpvcmRpQGRlYmlhbi5vcmc+CisKKwkqIGNhLnBvOiBOZXcgQ2F0YWxhbiB0cmFuc2xhdGlvbiAoMjR0NDA2dSkuCisKKzIwMDYtMDctMDggIFBoaWxpcHBlIEJhdGFpbGxlciAgPHBoaWxpcHBlLmJhdGFpbGxlckBmcmVlLmZyPgorCisJKiBmci5wbzogVHlwb3MgZml4ZWQuCisKKzIwMDYtMDctMDEgIFBoaWxpcHBlIEJhdGFpbGxlciAgPHBoaWxpcHBlLmJhdGFpbGxlckBmcmVlLmZyPgorCisJKiBmci5wbzogRmlyc3QgdHJhbnNsYXRpb24uCisJKiBMSU5HVUFTOiBOZXcgbGFuZ3VhZ2U6IEZyZW5jaC4KKworMjAwNi0wNi0yMSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogZHBrZy1kZXYucG90OiBSZWdlbmVyYXRlZC4KKworMjAwNi0wNi0wNCAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogZHBrZy1kZXYucG90OiBSZWdlbmVyYXRlZC4KKworMjAwNi0wNS0zMSAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogZHBrZy1kZXYucG90OiBSZWdlbmVyYXRlZC4KKworMjAwNi0wNS0yMyAgR3VpbGxlbSBKb3ZlciAgPGd1aWxsZW1AZGViaWFuLm9yZz4KKworCSogZHBrZy1kZXYucG90OiBSZWdlbmVyYXRlZC4KKworMjAwNi0wNS0xMyAgRnJhbmsgTGljaHRlbmhlbGQgIDxkanBpZ0BkZWJpYW4ub3JnPgorCisJKiBMSU5HVUFTOiBOZXcgZmlsZS4KKwkqIFBPVEZJTEVTLmluOiBMaWtld2lzZS4KKwkqIE1ha2VmaWxlLmluLmluOiBMaWtld2lzZS4KKwkqIE1ha2V2YXJzOiBMaWtld2lzZS4KKwkqIHJlbW92ZS1wb3RjZGF0ZS5zaW46IExpa2V3aXNlLgorCSogZHBrZy1kZXYucG90OiBMaWtld2lzZS4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9wby9MSU5HVUFTIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3BvL0xJTkdVQVMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzkzNjBjMwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9wby9MSU5HVUFTCkBAIC0wLDAgKzEsMjYgQEAKKyMgVGhpcyBmaWxlIGNvbnRhaW5zIHRoZSBsaXN0IG9mIGF2YWlsYWJsZSB0cmFuc2xhdGlvbnMuCisjCisjIEVhY2ggc2hvdWxkIGJlIHByZWZpeGVkIHdpdGggdGhlIEVuZ2xpc2ggbmFtZSBmb3IgdGhlIGxhbmd1YWdlIGFuZAorIyB0aGUgY3VycmVudCBtYWludGFpbmVyJ3MgbmFtZSBpbiB0aGVpciBwcmVmZXJyZWQgZm9ybSBhbmQgY29udGFjdAorIyBlLW1haWwgYWRkcmVzcy4KKworIyBDYXRhbGFuIC0gSm9yZGkgTWFsbGFjaCA8am9yZGlAZGViaWFuLm9yZz4KK2NhCisKKyMgR2VybWFuIC0gSGVsZ2UgS3JldXR6bWFubiA8ZGViaWFuQGhlbGdlZmplbGwuZGU+CitkZQorCisjIFNwYW5pc2ggLSBPbWFyIENhbXBhZ25lIDxvY2FtcGFnbmVAZ21haWwuY29tPgorZXMKKworIyBGcmVuY2ggLSBQaGlsaXBwZSBCYXRhaWxsZXIgPHBoaWxpcHBlLmJhdGFpbGxlckBmcmVlLmZyPgorZnIKKworIyBQb2xpc2ggLSBSb2JlcnQgTHViZXJkYSA8cm9iZXJ0QGRlYmlhbi5vcmc+CitwbAorCisjIFJ1c3NpYW4gLSBZdXJpIEtvemxvdiA8a296bG92LnlAZ21haWwuY29tPgorcnUKKworIyBTd2VkaXNoIC0gUGV0ZXIgS3JlZnRpbmcgPHBldGVya0BkZWJpYW4ub3JnPgorc3YKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9wby9NYWtlZmlsZS5pbi5pbiBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9wby9NYWtlZmlsZS5pbi5pbgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44M2Q4ODM4Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3BvL01ha2VmaWxlLmluLmluCkBAIC0wLDAgKzEsNDQ0IEBACisjIE1ha2VmaWxlIGZvciBQTyBkaXJlY3RvcnkgaW4gYW55IHBhY2thZ2UgdXNpbmcgR05VIGdldHRleHQuCisjIENvcHlyaWdodCAoQykgMTk5NS0xOTk3LCAyMDAwLTIwMDcsIDIwMDktMjAxMCBieSBVbHJpY2ggRHJlcHBlciA8ZHJlcHBlckBnbnUuYWkubWl0LmVkdT4KKyMKKyMgVGhpcyBmaWxlIGNhbiBiZSBjb3BpZWQgYW5kIHVzZWQgZnJlZWx5IHdpdGhvdXQgcmVzdHJpY3Rpb25zLiAgSXQgY2FuCisjIGJlIHVzZWQgaW4gcHJvamVjdHMgd2hpY2ggYXJlIG5vdCBhdmFpbGFibGUgdW5kZXIgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYworIyBMaWNlbnNlIGJ1dCB3aGljaCBzdGlsbCB3YW50IHRvIHByb3ZpZGUgc3VwcG9ydCBmb3IgdGhlIEdOVSBnZXR0ZXh0CisjIGZ1bmN0aW9uYWxpdHkuCisjIFBsZWFzZSBub3RlIHRoYXQgdGhlIGFjdHVhbCBjb2RlIG9mIEdOVSBnZXR0ZXh0IGlzIGNvdmVyZWQgYnkgdGhlIEdOVQorIyBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFuZCBpcyAqbm90KiBpbiB0aGUgcHVibGljIGRvbWFpbi4KKyMKKyMgT3JpZ2luOiBnZXR0ZXh0LTAuMTgKK0dFVFRFWFRfTUFDUk9fVkVSU0lPTiA9IDAuMTgKKworUEFDS0FHRSA9IEBQQUNLQUdFQAorVkVSU0lPTiA9IEBWRVJTSU9OQAorUEFDS0FHRV9CVUdSRVBPUlQgPSBAUEFDS0FHRV9CVUdSRVBPUlRACisKK1NIRUxMID0gL2Jpbi9zaAorQFNFVF9NQUtFQAorCitzcmNkaXIgPSBAc3JjZGlyQAordG9wX3NyY2RpciA9IEB0b3Bfc3JjZGlyQAorVlBBVEggPSBAc3JjZGlyQAorCitwcmVmaXggPSBAcHJlZml4QAorZXhlY19wcmVmaXggPSBAZXhlY19wcmVmaXhACitkYXRhcm9vdGRpciA9IEBkYXRhcm9vdGRpckAKK2RhdGFkaXIgPSBAZGF0YWRpckAKK2xvY2FsZWRpciA9IEBsb2NhbGVkaXJACitnZXR0ZXh0c3JjZGlyID0gJChkYXRhZGlyKS9nZXR0ZXh0L3BvCisKK0lOU1RBTEwgPSBASU5TVEFMTEAKK0lOU1RBTExfREFUQSA9IEBJTlNUQUxMX0RBVEFACisKKyMgV2UgdXNlICQobWtkaXJfcCkuCisjIEluIGF1dG9tYWtlIDw9IDEuOS54LCAkKG1rZGlyX3ApIGlzIGRlZmluZWQgZWl0aGVyIGFzICJta2RpciAtcCAtLSIgb3IgYXMKKyMgIiQobWtpbnN0YWxsZGlycykiIG9yIGFzICIkKGluc3RhbGxfc2gpIC1kIi4gRm9yIHRoZXNlIGF1dG9tYWtlIHZlcnNpb25zLAorIyBAaW5zdGFsbF9zaEAgZG9lcyBub3Qgc3RhcnQgd2l0aCAkKFNIRUxMKSwgc28gd2UgYWRkIGl0LgorIyBJbiBhdXRvbWFrZSA+PSAxLjEwLCBAbWtkaXJfcEAgaXMgZGVyaXZlZCBmcm9tICR7TUtESVJfUH0sIHdoaWNoIGlzIGRlZmluZWQKKyMgZWl0aGVyIGFzICIvcGF0aC90by9ta2RpciAtcCIgb3IgIi4uLi9pbnN0YWxsLXNoIC1jIC1kIi4gRm9yIHRoZXNlIGF1dG9tYWtlCisjIHZlcnNpb25zLCAkKG1raW5zdGFsbGRpcnMpIGFuZCAkKGluc3RhbGxfc2gpIGFyZSB1bnVzZWQuCitta2luc3RhbGxkaXJzID0gJChTSEVMTCkgQGluc3RhbGxfc2hAIC1kCitpbnN0YWxsX3NoID0gJChTSEVMTCkgQGluc3RhbGxfc2hACitNS0RJUl9QID0gQE1LRElSX1BACitta2Rpcl9wID0gQG1rZGlyX3BACisKK0dNU0dGTVRfID0gQEdNU0dGTVRACitHTVNHRk1UX25vID0gQEdNU0dGTVRACitHTVNHRk1UX3llcyA9IEBHTVNHRk1UXzAxNUAKK0dNU0dGTVQgPSAkKEdNU0dGTVRfJChVU0VfTVNHQ1RYVCkpCitNU0dGTVRfID0gQE1TR0ZNVEAKK01TR0ZNVF9ubyA9IEBNU0dGTVRACitNU0dGTVRfeWVzID0gQE1TR0ZNVF8wMTVACitNU0dGTVQgPSAkKE1TR0ZNVF8kKFVTRV9NU0dDVFhUKSkKK1hHRVRURVhUXyA9IEBYR0VUVEVYVEAKK1hHRVRURVhUX25vID0gQFhHRVRURVhUQAorWEdFVFRFWFRfeWVzID0gQFhHRVRURVhUXzAxNUAKK1hHRVRURVhUID0gJChYR0VUVEVYVF8kKFVTRV9NU0dDVFhUKSkKK01TR01FUkdFID0gbXNnbWVyZ2UKK01TR01FUkdFX1VQREFURSA9IEBNU0dNRVJHRUAgLS11cGRhdGUKK01TR0lOSVQgPSBtc2dpbml0CitNU0dDT05WID0gbXNnY29udgorTVNHRklMVEVSID0gbXNnZmlsdGVyCisKK1BPRklMRVMgPSBAUE9GSUxFU0AKK0dNT0ZJTEVTID0gQEdNT0ZJTEVTQAorVVBEQVRFUE9GSUxFUyA9IEBVUERBVEVQT0ZJTEVTQAorRFVNTVlQT0ZJTEVTID0gQERVTU1ZUE9GSUxFU0AKK0RJU1RGSUxFUy5jb21tb24gPSBNYWtlZmlsZS5pbi5pbiByZW1vdmUtcG90Y2RhdGUuc2luIFwKKyQoRElTVEZJTEVTLmNvbW1vbi5leHRyYTEpICQoRElTVEZJTEVTLmNvbW1vbi5leHRyYTIpICQoRElTVEZJTEVTLmNvbW1vbi5leHRyYTMpCitESVNURklMRVMgPSAkKERJU1RGSUxFUy5jb21tb24pIE1ha2V2YXJzIFBPVEZJTEVTLmluIFwKKyQoUE9GSUxFUykgJChHTU9GSUxFUykgXAorJChESVNURklMRVMuZXh0cmExKSAkKERJU1RGSUxFUy5leHRyYTIpICQoRElTVEZJTEVTLmV4dHJhMykKKworUE9URklMRVMgPSBcCisKK0NBVEFMT0dTID0gQENBVEFMT0dTQAorCisjIE1ha2V2YXJzIGdldHMgaW5zZXJ0ZWQgaGVyZS4gKERvbid0IHJlbW92ZSB0aGlzIGxpbmUhKQorCisuU1VGRklYRVM6CisuU1VGRklYRVM6IC5wbyAuZ21vIC5tbyAuc2VkIC5zaW4gLm5vcCAucG8tY3JlYXRlIC5wby11cGRhdGUKKworLnBvLm1vOgorCUBlY2hvICIkKE1TR0ZNVCkgLWMgLW8gJEAgJDwiOyBcCisJJChNU0dGTVQpIC1jIC1vIHQtJEAgJDwgJiYgbXYgdC0kQCAkQAorCisucG8uZ21vOgorCUBsYW5nPWBlY2hvICQqIHwgc2VkIC1lICdzLC4qLywsJ2A7IFwKKwl0ZXN0ICIkKHNyY2RpcikiID0gLiAmJiBjZGNtZD0iIiB8fCBjZGNtZD0iY2QgJChzcmNkaXIpICYmICI7IFwKKwllY2hvICIkJHtjZGNtZH1ybSAtZiAkJHtsYW5nfS5nbW8gJiYgJChHTVNHRk1UKSAtYyAtLXN0YXRpc3RpY3MgLS12ZXJib3NlIC1vICQke2xhbmd9LmdtbyAkJHtsYW5nfS5wbyI7IFwKKwljZCAkKHNyY2RpcikgJiYgcm0gLWYgJCR7bGFuZ30uZ21vICYmICQoR01TR0ZNVCkgLWMgLS1zdGF0aXN0aWNzIC0tdmVyYm9zZSAtbyB0LSQke2xhbmd9LmdtbyAkJHtsYW5nfS5wbyAmJiBtdiB0LSQke2xhbmd9LmdtbyAkJHtsYW5nfS5nbW8KKworLnNpbi5zZWQ6CisJc2VkIC1lICcvXiMvZCcgJDwgPiB0LSRACisJbXYgdC0kQCAkQAorCisKK2FsbDogY2hlY2stbWFjcm8tdmVyc2lvbiBhbGwtQFVTRV9OTFNACisKK2FsbC15ZXM6IHN0YW1wLXBvCithbGwtbm86CisKKyMgRW5zdXJlIHRoYXQgdGhlIGdldHRleHQgbWFjcm9zIGFuZCB0aGlzIE1ha2VmaWxlLmluLmluIGFyZSBpbiBzeW5jLgorY2hlY2stbWFjcm8tdmVyc2lvbjoKKwlAdGVzdCAiJChHRVRURVhUX01BQ1JPX1ZFUlNJT04pIiA9ICJAR0VUVEVYVF9NQUNST19WRVJTSU9OQCIgXAorCSAgfHwgeyBlY2hvICIqKiogZXJyb3I6IGdldHRleHQgaW5mcmFzdHJ1Y3R1cmUgbWlzbWF0Y2g6IHVzaW5nIGEgTWFrZWZpbGUuaW4uaW4gZnJvbSBnZXR0ZXh0IHZlcnNpb24gJChHRVRURVhUX01BQ1JPX1ZFUlNJT04pIGJ1dCB0aGUgYXV0b2NvbmYgbWFjcm9zIGFyZSBmcm9tIGdldHRleHQgdmVyc2lvbiBAR0VUVEVYVF9NQUNST19WRVJTSU9OQCIgMT4mMjsgXAorCSAgICAgICBleGl0IDE7IFwKKwkgICAgIH0KKworIyAkKHNyY2RpcikvJChET01BSU4pLnBvdCBpcyBvbmx5IGNyZWF0ZWQgd2hlbiBuZWVkZWQuIFdoZW4geGdldHRleHQgZmluZHMgbm8KKyMgaW50ZXJuYXRpb25hbGl6ZWQgbWVzc2FnZXMsIG5vICQoc3JjZGlyKS8kKERPTUFJTikucG90IGlzIGNyZWF0ZWQgKGJlY2F1c2UKKyMgd2UgZG9uJ3Qgd2FudCB0byBib3RoZXIgdHJhbnNsYXRvcnMgd2l0aCBlbXB0eSBQT1QgZmlsZXMpLiBXZSBhc3N1bWUgdGhhdAorIyBMSU5HVUFTIGlzIGVtcHR5IGluIHRoaXMgY2FzZSwgaS5lLiAkKFBPRklMRVMpIGFuZCAkKEdNT0ZJTEVTKSBhcmUgZW1wdHkuCisjIEluIHRoaXMgY2FzZSwgc3RhbXAtcG8gaXMgYSBub3AgKGkuZS4gYSBwaG9ueSB0YXJnZXQpLgorCisjIHN0YW1wLXBvIGlzIGEgdGltZXN0YW1wIGRlbm90aW5nIHRoZSBsYXN0IHRpbWUgYXQgd2hpY2ggdGhlIENBVEFMT0dTIGhhdmUKKyMgYmVlbiBsb29zZWx5IHVwZGF0ZWQuIEl0cyBwdXJwb3NlIGlzIHRoYXQgd2hlbiBhIGRldmVsb3BlciBvciB0cmFuc2xhdG9yCisjIGNoZWNrcyBvdXQgdGhlIHBhY2thZ2UgdmlhIENWUywgYW5kIHRoZSAkKERPTUFJTikucG90IGZpbGUgaXMgbm90IGluIENWUywKKyMgIm1ha2UiIHdpbGwgdXBkYXRlIHRoZSAkKERPTUFJTikucG90IGFuZCB0aGUgJChDQVRBTE9HUyksIGJ1dCBzdWJzZXF1ZW50CisjIGludm9jYXRpb25zIG9mICJtYWtlIiB3aWxsIGRvIG5vdGhpbmcuIFRoaXMgdGltZXN0YW1wIHdvdWxkIG5vdCBiZSBuZWNlc3NhcnkKKyMgaWYgdXBkYXRpbmcgdGhlICQoQ0FUQUxPR1MpIHdvdWxkIGFsd2F5cyB0b3VjaCB0aGVtOyBob3dldmVyLCB0aGUgcnVsZSBmb3IKKyMgJChQT0ZJTEVTKSBoYXMgYmVlbiBkZXNpZ25lZCB0byBub3QgdG91Y2ggZmlsZXMgdGhhdCBkb24ndCBuZWVkIHRvIGJlCisjIGNoYW5nZWQuCitzdGFtcC1wbzogJChzcmNkaXIpLyQoRE9NQUlOKS5wb3QKKwl0ZXN0ICEgLWYgJChzcmNkaXIpLyQoRE9NQUlOKS5wb3QgfHwgXAorCSAgdGVzdCAteiAiJChHTU9GSUxFUykiIHx8ICQoTUFLRSkgJChHTU9GSUxFUykKKwlAdGVzdCAhIC1mICQoc3JjZGlyKS8kKERPTUFJTikucG90IHx8IHsgXAorCSAgZWNobyAidG91Y2ggc3RhbXAtcG8iICYmIFwKKwkgIGVjaG8gdGltZXN0YW1wID4gc3RhbXAtcG9UICYmIFwKKwkgIG12IHN0YW1wLXBvVCBzdGFtcC1wbzsgXAorCX0KKworIyBOb3RlOiBUYXJnZXQgJ2FsbCcgbXVzdCBub3QgZGVwZW5kIG9uIHRhcmdldCAnJChET01BSU4pLnBvdC11cGRhdGUnLAorIyBvdGhlcndpc2UgcGFja2FnZXMgbGlrZSBHQ0MgY2FuIG5vdCBiZSBidWlsdCBpZiBvbmx5IHBhcnRzIG9mIHRoZSBzb3VyY2UKKyMgaGF2ZSBiZWVuIGRvd25sb2FkZWQuCisKKyMgVGhpcyB0YXJnZXQgcmVidWlsZHMgJChET01BSU4pLnBvdDsgaXQgaXMgYW4gZXhwZW5zaXZlIG9wZXJhdGlvbi4KKyMgTm90ZSB0aGF0ICQoRE9NQUlOKS5wb3QgaXMgbm90IHRvdWNoZWQgaWYgaXQgZG9lc24ndCBuZWVkIHRvIGJlIGNoYW5nZWQuCiskKERPTUFJTikucG90LXVwZGF0ZTogJChQT1RGSUxFUykgJChzcmNkaXIpL1BPVEZJTEVTLmluIHJlbW92ZS1wb3RjZGF0ZS5zZWQKKwlpZiBMQ19BTEw9QyBncmVwICdHTlUgQFBBQ0tBR0VAJyAkKHRvcF9zcmNkaXIpLyogMj4vZGV2L251bGwgfCBncmVwIC12ICdsaWJ0b29sOicgPi9kZXYvbnVsbDsgdGhlbiBcCisJICBwYWNrYWdlX2dudT0nR05VICc7IFwKKwllbHNlIFwKKwkgIHBhY2thZ2VfZ251PScnOyBcCisJZmk7IFwKKwlpZiB0ZXN0IC1uICckKE1TR0lEX0JVR1NfQUREUkVTUyknIHx8IHRlc3QgJyQoUEFDS0FHRV9CVUdSRVBPUlQpJyA9ICdAJ1BBQ0tBR0VfQlVHUkVQT1JUJ0AnOyB0aGVuIFwKKwkgIG1zZ2lkX2J1Z3NfYWRkcmVzcz0nJChNU0dJRF9CVUdTX0FERFJFU1MpJzsgXAorCWVsc2UgXAorCSAgbXNnaWRfYnVnc19hZGRyZXNzPSckKFBBQ0tBR0VfQlVHUkVQT1JUKSc7IFwKKwlmaTsgXAorCWNhc2UgYCQoWEdFVFRFWFQpIC0tdmVyc2lvbiB8IHNlZCAxcSB8IHNlZCAtZSAncyxeW14wLTldKiwsJ2AgaW4gXAorCSAgJycgfCAwLlswLTldIHwgMC5bMC05XS4qIHwgMC4xWzAtNV0gfCAwLjFbMC01XS4qIHwgMC4xNiB8IDAuMTYuWzAtMV0qKSBcCisJICAgICQoWEdFVFRFWFQpIC0tZGVmYXVsdC1kb21haW49JChET01BSU4pIC0tZGlyZWN0b3J5PSQodG9wX3NyY2RpcikgXAorCSAgICAgIC0tYWRkLWNvbW1lbnRzPVRSQU5TTEFUT1JTOiAkKFhHRVRURVhUX09QVElPTlMpIEBYR0VUVEVYVF9FWFRSQV9PUFRJT05TQCBcCisJICAgICAgLS1maWxlcy1mcm9tPSQoc3JjZGlyKS9QT1RGSUxFUy5pbiBcCisJICAgICAgLS1jb3B5cmlnaHQtaG9sZGVyPSckKENPUFlSSUdIVF9IT0xERVIpJyBcCisJICAgICAgLS1tc2dpZC1idWdzLWFkZHJlc3M9IiQkbXNnaWRfYnVnc19hZGRyZXNzIiBcCisJICAgIDs7IFwKKwkgICopIFwKKwkgICAgJChYR0VUVEVYVCkgLS1kZWZhdWx0LWRvbWFpbj0kKERPTUFJTikgLS1kaXJlY3Rvcnk9JCh0b3Bfc3JjZGlyKSBcCisJICAgICAgLS1hZGQtY29tbWVudHM9VFJBTlNMQVRPUlM6ICQoWEdFVFRFWFRfT1BUSU9OUykgQFhHRVRURVhUX0VYVFJBX09QVElPTlNAIFwKKwkgICAgICAtLWZpbGVzLWZyb209JChzcmNkaXIpL1BPVEZJTEVTLmluIFwKKwkgICAgICAtLWNvcHlyaWdodC1ob2xkZXI9JyQoQ09QWVJJR0hUX0hPTERFUiknIFwKKwkgICAgICAtLXBhY2thZ2UtbmFtZT0iJCR7cGFja2FnZV9nbnV9QFBBQ0tBR0VAIiBcCisJICAgICAgLS1wYWNrYWdlLXZlcnNpb249J0BWRVJTSU9OQCcgXAorCSAgICAgIC0tbXNnaWQtYnVncy1hZGRyZXNzPSIkJG1zZ2lkX2J1Z3NfYWRkcmVzcyIgXAorCSAgICA7OyBcCisJZXNhYworCXRlc3QgISAtZiAkKERPTUFJTikucG8gfHwgeyBcCisJICBpZiB0ZXN0IC1mICQoc3JjZGlyKS8kKERPTUFJTikucG90OyB0aGVuIFwKKwkgICAgc2VkIC1mIHJlbW92ZS1wb3RjZGF0ZS5zZWQgPCAkKHNyY2RpcikvJChET01BSU4pLnBvdCA+ICQoRE9NQUlOKS4xcG8gJiYgXAorCSAgICBzZWQgLWYgcmVtb3ZlLXBvdGNkYXRlLnNlZCA8ICQoRE9NQUlOKS5wbyA+ICQoRE9NQUlOKS4ycG8gJiYgXAorCSAgICBpZiBjbXAgJChET01BSU4pLjFwbyAkKERPTUFJTikuMnBvID4vZGV2L251bGwgMj4mMTsgdGhlbiBcCisJICAgICAgcm0gLWYgJChET01BSU4pLjFwbyAkKERPTUFJTikuMnBvICQoRE9NQUlOKS5wbzsgXAorCSAgICBlbHNlIFwKKwkgICAgICBybSAtZiAkKERPTUFJTikuMXBvICQoRE9NQUlOKS4ycG8gJChzcmNkaXIpLyQoRE9NQUlOKS5wb3QgJiYgXAorCSAgICAgIG12ICQoRE9NQUlOKS5wbyAkKHNyY2RpcikvJChET01BSU4pLnBvdDsgXAorCSAgICBmaTsgXAorCSAgZWxzZSBcCisJICAgIG12ICQoRE9NQUlOKS5wbyAkKHNyY2RpcikvJChET01BSU4pLnBvdDsgXAorCSAgZmk7IFwKKwl9CisKKyMgVGhpcyBydWxlIGhhcyBubyBkZXBlbmRlbmNpZXM6IHdlIGRvbid0IG5lZWQgdG8gdXBkYXRlICQoRE9NQUlOKS5wb3QgYXQKKyMgZXZlcnkgIm1ha2UiIGludm9jYXRpb24sIG9ubHkgY3JlYXRlIGl0IHdoZW4gaXQgaXMgbWlzc2luZy4KKyMgT25seSAibWFrZSAkKERPTUFJTikucG90LXVwZGF0ZSIgb3IgIm1ha2UgZGlzdCIgd2lsbCBmb3JjZSBhbiB1cGRhdGUuCiskKHNyY2RpcikvJChET01BSU4pLnBvdDoKKwkkKE1BS0UpICQoRE9NQUlOKS5wb3QtdXBkYXRlCisKKyMgVGhpcyB0YXJnZXQgcmVidWlsZHMgYSBQTyBmaWxlIGlmICQoRE9NQUlOKS5wb3QgaGFzIGNoYW5nZWQuCisjIE5vdGUgdGhhdCBhIFBPIGZpbGUgaXMgbm90IHRvdWNoZWQgaWYgaXQgZG9lc24ndCBuZWVkIHRvIGJlIGNoYW5nZWQuCiskKFBPRklMRVMpOiAkKHNyY2RpcikvJChET01BSU4pLnBvdAorCUBsYW5nPWBlY2hvICRAIHwgc2VkIC1lICdzLC4qLywsJyAtZSAncy9cLnBvJCQvLydgOyBcCisJaWYgdGVzdCAtZiAiJChzcmNkaXIpLyQke2xhbmd9LnBvIjsgdGhlbiBcCisJICB0ZXN0ICIkKHNyY2RpcikiID0gLiAmJiBjZGNtZD0iIiB8fCBjZGNtZD0iY2QgJChzcmNkaXIpICYmICI7IFwKKwkgIGVjaG8gIiQke2NkY21kfSQoTVNHTUVSR0VfVVBEQVRFKSAkKE1TR01FUkdFX09QVElPTlMpIC0tbGFuZz0kJHtsYW5nfSAkJHtsYW5nfS5wbyAkKERPTUFJTikucG90IjsgXAorCSAgY2QgJChzcmNkaXIpIFwKKwkgICAgJiYgeyBjYXNlIGAkKE1TR01FUkdFX1VQREFURSkgLS12ZXJzaW9uIHwgc2VkIDFxIHwgc2VkIC1lICdzLF5bXjAtOV0qLCwnYCBpbiBcCisJICAgICAgICAgICAnJyB8IDAuWzAtOV0gfCAwLlswLTldLiogfCAwLjFbMC03XSB8IDAuMVswLTddLiopIFwKKwkgICAgICAgICAgICAgJChNU0dNRVJHRV9VUERBVEUpICQoTVNHTUVSR0VfT1BUSU9OUykgJCR7bGFuZ30ucG8gJChET01BSU4pLnBvdDs7IFwKKwkgICAgICAgICAgICopIFwKKwkgICAgICAgICAgICAgJChNU0dNRVJHRV9VUERBVEUpICQoTVNHTUVSR0VfT1BUSU9OUykgLS1sYW5nPSQke2xhbmd9ICQke2xhbmd9LnBvICQoRE9NQUlOKS5wb3Q7OyBcCisJICAgICAgICAgZXNhYzsgXAorCSAgICAgICB9OyBcCisJZWxzZSBcCisJICAkKE1BS0UpICQke2xhbmd9LnBvLWNyZWF0ZTsgXAorCWZpCisKKworaW5zdGFsbDogaW5zdGFsbC1leGVjIGluc3RhbGwtZGF0YQoraW5zdGFsbC1leGVjOgoraW5zdGFsbC1kYXRhOiBpbnN0YWxsLWRhdGEtQFVTRV9OTFNACisJaWYgdGVzdCAiJChQQUNLQUdFKSIgPSAiZ2V0dGV4dC10b29scyI7IHRoZW4gXAorCSAgJChta2Rpcl9wKSAkKERFU1RESVIpJChnZXR0ZXh0c3JjZGlyKTsgXAorCSAgZm9yIGZpbGUgaW4gJChESVNURklMRVMuY29tbW9uKSBNYWtldmFycy50ZW1wbGF0ZTsgZG8gXAorCSAgICAkKElOU1RBTExfREFUQSkgJChzcmNkaXIpLyQkZmlsZSBcCisJCQkgICAgJChERVNURElSKSQoZ2V0dGV4dHNyY2RpcikvJCRmaWxlOyBcCisJICBkb25lOyBcCisJICBmb3IgZmlsZSBpbiBNYWtldmFyczsgZG8gXAorCSAgICBybSAtZiAkKERFU1RESVIpJChnZXR0ZXh0c3JjZGlyKS8kJGZpbGU7IFwKKwkgIGRvbmU7IFwKKwllbHNlIFwKKwkgIDogOyBcCisJZmkKK2luc3RhbGwtZGF0YS1ubzogYWxsCitpbnN0YWxsLWRhdGEteWVzOiBhbGwKKwlAY2F0YWxvZ3M9JyQoQ0FUQUxPR1MpJzsgXAorCWZvciBjYXQgaW4gJCRjYXRhbG9nczsgZG8gXAorCSAgY2F0PWBiYXNlbmFtZSAkJGNhdGA7IFwKKwkgIGxhbmc9YGVjaG8gJCRjYXQgfCBzZWQgLWUgJ3MvXC5nbW8kJC8vJ2A7IFwKKwkgIGRpcj0kKGxvY2FsZWRpcikvJCRsYW5nL0xDX01FU1NBR0VTOyBcCisJICAkKG1rZGlyX3ApICQoREVTVERJUikkJGRpcjsgXAorCSAgaWYgdGVzdCAtciAkJGNhdDsgdGhlbiByZWFsY2F0PSQkY2F0OyBlbHNlIHJlYWxjYXQ9JChzcmNkaXIpLyQkY2F0OyBmaTsgXAorCSAgJChJTlNUQUxMX0RBVEEpICQkcmVhbGNhdCAkKERFU1RESVIpJCRkaXIvJChET01BSU4pLm1vOyBcCisJICBlY2hvICJpbnN0YWxsaW5nICQkcmVhbGNhdCBhcyAkKERFU1RESVIpJCRkaXIvJChET01BSU4pLm1vIjsgXAorCSAgZm9yIGxjIGluICcnICQoRVhUUkFfTE9DQUxFX0NBVEVHT1JJRVMpOyBkbyBcCisJICAgIGlmIHRlc3QgLW4gIiQkbGMiOyB0aGVuIFwKKwkgICAgICBpZiAoY2QgJChERVNURElSKSQobG9jYWxlZGlyKS8kJGxhbmcgJiYgTENfQUxMPUMgbHMgLWwgLWQgJCRsYyAyPi9kZXYvbnVsbCkgfCBncmVwICcgLT4gJyA+L2Rldi9udWxsOyB0aGVuIFwKKwkgICAgICAgIGxpbms9YGNkICQoREVTVERJUikkKGxvY2FsZWRpcikvJCRsYW5nICYmIExDX0FMTD1DIGxzIC1sIC1kICQkbGMgfCBzZWQgLWUgJ3MvXi4qIC0+IC8vJ2A7IFwKKwkgICAgICAgIG12ICQoREVTVERJUikkKGxvY2FsZWRpcikvJCRsYW5nLyQkbGMgJChERVNURElSKSQobG9jYWxlZGlyKS8kJGxhbmcvJCRsYy5vbGQ7IFwKKwkgICAgICAgIG1rZGlyICQoREVTVERJUikkKGxvY2FsZWRpcikvJCRsYW5nLyQkbGM7IFwKKwkgICAgICAgIChjZCAkKERFU1RESVIpJChsb2NhbGVkaXIpLyQkbGFuZy8kJGxjLm9sZCAmJiBcCisJICAgICAgICAgZm9yIGZpbGUgaW4gKjsgZG8gXAorCSAgICAgICAgICAgaWYgdGVzdCAtZiAkJGZpbGU7IHRoZW4gXAorCSAgICAgICAgICAgICBsbiAtcyAuLi8kJGxpbmsvJCRmaWxlICQoREVTVERJUikkKGxvY2FsZWRpcikvJCRsYW5nLyQkbGMvJCRmaWxlOyBcCisJICAgICAgICAgICBmaTsgXAorCSAgICAgICAgIGRvbmUpOyBcCisJICAgICAgICBybSAtZiAkKERFU1RESVIpJChsb2NhbGVkaXIpLyQkbGFuZy8kJGxjLm9sZDsgXAorCSAgICAgIGVsc2UgXAorCSAgICAgICAgaWYgdGVzdCAtZCAkKERFU1RESVIpJChsb2NhbGVkaXIpLyQkbGFuZy8kJGxjOyB0aGVuIFwKKwkgICAgICAgICAgOjsgXAorCSAgICAgICAgZWxzZSBcCisJICAgICAgICAgIHJtIC1mICQoREVTVERJUikkKGxvY2FsZWRpcikvJCRsYW5nLyQkbGM7IFwKKwkgICAgICAgICAgbWtkaXIgJChERVNURElSKSQobG9jYWxlZGlyKS8kJGxhbmcvJCRsYzsgXAorCSAgICAgICAgZmk7IFwKKwkgICAgICBmaTsgXAorCSAgICAgIHJtIC1mICQoREVTVERJUikkKGxvY2FsZWRpcikvJCRsYW5nLyQkbGMvJChET01BSU4pLm1vOyBcCisJICAgICAgbG4gLXMgLi4vTENfTUVTU0FHRVMvJChET01BSU4pLm1vICQoREVTVERJUikkKGxvY2FsZWRpcikvJCRsYW5nLyQkbGMvJChET01BSU4pLm1vIDI+L2Rldi9udWxsIHx8IFwKKwkgICAgICBsbiAkKERFU1RESVIpJChsb2NhbGVkaXIpLyQkbGFuZy9MQ19NRVNTQUdFUy8kKERPTUFJTikubW8gJChERVNURElSKSQobG9jYWxlZGlyKS8kJGxhbmcvJCRsYy8kKERPTUFJTikubW8gMj4vZGV2L251bGwgfHwgXAorCSAgICAgIGNwIC1wICQoREVTVERJUikkKGxvY2FsZWRpcikvJCRsYW5nL0xDX01FU1NBR0VTLyQoRE9NQUlOKS5tbyAkKERFU1RESVIpJChsb2NhbGVkaXIpLyQkbGFuZy8kJGxjLyQoRE9NQUlOKS5tbzsgXAorCSAgICAgIGVjaG8gImluc3RhbGxpbmcgJCRyZWFsY2F0IGxpbmsgYXMgJChERVNURElSKSQobG9jYWxlZGlyKS8kJGxhbmcvJCRsYy8kKERPTUFJTikubW8iOyBcCisJICAgIGZpOyBcCisJICBkb25lOyBcCisJZG9uZQorCitpbnN0YWxsLXN0cmlwOiBpbnN0YWxsCisKK2luc3RhbGxkaXJzOiBpbnN0YWxsZGlycy1leGVjIGluc3RhbGxkaXJzLWRhdGEKK2luc3RhbGxkaXJzLWV4ZWM6CitpbnN0YWxsZGlycy1kYXRhOiBpbnN0YWxsZGlycy1kYXRhLUBVU0VfTkxTQAorCWlmIHRlc3QgIiQoUEFDS0FHRSkiID0gImdldHRleHQtdG9vbHMiOyB0aGVuIFwKKwkgICQobWtkaXJfcCkgJChERVNURElSKSQoZ2V0dGV4dHNyY2Rpcik7IFwKKwllbHNlIFwKKwkgIDogOyBcCisJZmkKK2luc3RhbGxkaXJzLWRhdGEtbm86CitpbnN0YWxsZGlycy1kYXRhLXllczoKKwlAY2F0YWxvZ3M9JyQoQ0FUQUxPR1MpJzsgXAorCWZvciBjYXQgaW4gJCRjYXRhbG9nczsgZG8gXAorCSAgY2F0PWBiYXNlbmFtZSAkJGNhdGA7IFwKKwkgIGxhbmc9YGVjaG8gJCRjYXQgfCBzZWQgLWUgJ3MvXC5nbW8kJC8vJ2A7IFwKKwkgIGRpcj0kKGxvY2FsZWRpcikvJCRsYW5nL0xDX01FU1NBR0VTOyBcCisJICAkKG1rZGlyX3ApICQoREVTVERJUikkJGRpcjsgXAorCSAgZm9yIGxjIGluICcnICQoRVhUUkFfTE9DQUxFX0NBVEVHT1JJRVMpOyBkbyBcCisJICAgIGlmIHRlc3QgLW4gIiQkbGMiOyB0aGVuIFwKKwkgICAgICBpZiAoY2QgJChERVNURElSKSQobG9jYWxlZGlyKS8kJGxhbmcgJiYgTENfQUxMPUMgbHMgLWwgLWQgJCRsYyAyPi9kZXYvbnVsbCkgfCBncmVwICcgLT4gJyA+L2Rldi9udWxsOyB0aGVuIFwKKwkgICAgICAgIGxpbms9YGNkICQoREVTVERJUikkKGxvY2FsZWRpcikvJCRsYW5nICYmIExDX0FMTD1DIGxzIC1sIC1kICQkbGMgfCBzZWQgLWUgJ3MvXi4qIC0+IC8vJ2A7IFwKKwkgICAgICAgIG12ICQoREVTVERJUikkKGxvY2FsZWRpcikvJCRsYW5nLyQkbGMgJChERVNURElSKSQobG9jYWxlZGlyKS8kJGxhbmcvJCRsYy5vbGQ7IFwKKwkgICAgICAgIG1rZGlyICQoREVTVERJUikkKGxvY2FsZWRpcikvJCRsYW5nLyQkbGM7IFwKKwkgICAgICAgIChjZCAkKERFU1RESVIpJChsb2NhbGVkaXIpLyQkbGFuZy8kJGxjLm9sZCAmJiBcCisJICAgICAgICAgZm9yIGZpbGUgaW4gKjsgZG8gXAorCSAgICAgICAgICAgaWYgdGVzdCAtZiAkJGZpbGU7IHRoZW4gXAorCSAgICAgICAgICAgICBsbiAtcyAuLi8kJGxpbmsvJCRmaWxlICQoREVTVERJUikkKGxvY2FsZWRpcikvJCRsYW5nLyQkbGMvJCRmaWxlOyBcCisJICAgICAgICAgICBmaTsgXAorCSAgICAgICAgIGRvbmUpOyBcCisJICAgICAgICBybSAtZiAkKERFU1RESVIpJChsb2NhbGVkaXIpLyQkbGFuZy8kJGxjLm9sZDsgXAorCSAgICAgIGVsc2UgXAorCSAgICAgICAgaWYgdGVzdCAtZCAkKERFU1RESVIpJChsb2NhbGVkaXIpLyQkbGFuZy8kJGxjOyB0aGVuIFwKKwkgICAgICAgICAgOjsgXAorCSAgICAgICAgZWxzZSBcCisJICAgICAgICAgIHJtIC1mICQoREVTVERJUikkKGxvY2FsZWRpcikvJCRsYW5nLyQkbGM7IFwKKwkgICAgICAgICAgbWtkaXIgJChERVNURElSKSQobG9jYWxlZGlyKS8kJGxhbmcvJCRsYzsgXAorCSAgICAgICAgZmk7IFwKKwkgICAgICBmaTsgXAorCSAgICBmaTsgXAorCSAgZG9uZTsgXAorCWRvbmUKKworIyBEZWZpbmUgdGhpcyBhcyBlbXB0eSB1bnRpbCBJIGZvdW5kIGEgdXNlZnVsIGFwcGxpY2F0aW9uLgoraW5zdGFsbGNoZWNrOgorCit1bmluc3RhbGw6IHVuaW5zdGFsbC1leGVjIHVuaW5zdGFsbC1kYXRhCit1bmluc3RhbGwtZXhlYzoKK3VuaW5zdGFsbC1kYXRhOiB1bmluc3RhbGwtZGF0YS1AVVNFX05MU0AKKwlpZiB0ZXN0ICIkKFBBQ0tBR0UpIiA9ICJnZXR0ZXh0LXRvb2xzIjsgdGhlbiBcCisJICBmb3IgZmlsZSBpbiAkKERJU1RGSUxFUy5jb21tb24pIE1ha2V2YXJzLnRlbXBsYXRlOyBkbyBcCisJICAgIHJtIC1mICQoREVTVERJUikkKGdldHRleHRzcmNkaXIpLyQkZmlsZTsgXAorCSAgZG9uZTsgXAorCWVsc2UgXAorCSAgOiA7IFwKKwlmaQordW5pbnN0YWxsLWRhdGEtbm86Cit1bmluc3RhbGwtZGF0YS15ZXM6CisJY2F0YWxvZ3M9JyQoQ0FUQUxPR1MpJzsgXAorCWZvciBjYXQgaW4gJCRjYXRhbG9nczsgZG8gXAorCSAgY2F0PWBiYXNlbmFtZSAkJGNhdGA7IFwKKwkgIGxhbmc9YGVjaG8gJCRjYXQgfCBzZWQgLWUgJ3MvXC5nbW8kJC8vJ2A7IFwKKwkgIGZvciBsYyBpbiBMQ19NRVNTQUdFUyAkKEVYVFJBX0xPQ0FMRV9DQVRFR09SSUVTKTsgZG8gXAorCSAgICBybSAtZiAkKERFU1RESVIpJChsb2NhbGVkaXIpLyQkbGFuZy8kJGxjLyQoRE9NQUlOKS5tbzsgXAorCSAgZG9uZTsgXAorCWRvbmUKKworY2hlY2s6IGFsbAorCitpbmZvIGR2aSBwcyBwZGYgaHRtbCB0YWdzIFRBR1MgY3RhZ3MgQ1RBR1MgSUQ6CisKK21vc3RseWNsZWFuOgorCXJtIC1mIHJlbW92ZS1wb3RjZGF0ZS5zZWQKKwlybSAtZiBzdGFtcC1wb1QKKwlybSAtZiBjb3JlIGNvcmUuKiAkKERPTUFJTikucG8gJChET01BSU4pLjFwbyAkKERPTUFJTikuMnBvICoubmV3LnBvCisJcm0gLWZyICoubworCitjbGVhbjogbW9zdGx5Y2xlYW4KKworZGlzdGNsZWFuOiBjbGVhbgorCXJtIC1mIE1ha2VmaWxlIE1ha2VmaWxlLmluIFBPVEZJTEVTICoubW8KKworbWFpbnRhaW5lci1jbGVhbjogZGlzdGNsZWFuCisJQGVjaG8gIlRoaXMgY29tbWFuZCBpcyBpbnRlbmRlZCBmb3IgbWFpbnRhaW5lcnMgdG8gdXNlOyIKKwlAZWNobyAiaXQgZGVsZXRlcyBmaWxlcyB0aGF0IG1heSByZXF1aXJlIHNwZWNpYWwgdG9vbHMgdG8gcmVidWlsZC4iCisJcm0gLWYgc3RhbXAtcG8gJChHTU9GSUxFUykKKworZGlzdGRpciA9ICQodG9wX2J1aWxkZGlyKS8kKFBBQ0tBR0UpLSQoVkVSU0lPTikvJChzdWJkaXIpCitkaXN0IGRpc3RkaXI6CisJJChNQUtFKSB1cGRhdGUtcG8KKwlAJChNQUtFKSBkaXN0MgorIyBUaGlzIGlzIGEgc2VwYXJhdGUgdGFyZ2V0IGJlY2F1c2UgJ3VwZGF0ZS1wbycgbXVzdCBiZSBleGVjdXRlZCBiZWZvcmUuCitkaXN0Mjogc3RhbXAtcG8gJChESVNURklMRVMpCisJZGlzdHM9IiQoRElTVEZJTEVTKSI7IFwKKwlpZiB0ZXN0ICIkKFBBQ0tBR0UpIiA9ICJnZXR0ZXh0LXRvb2xzIjsgdGhlbiBcCisJICBkaXN0cz0iJCRkaXN0cyBNYWtldmFycy50ZW1wbGF0ZSI7IFwKKwlmaTsgXAorCWlmIHRlc3QgLWYgJChzcmNkaXIpLyQoRE9NQUlOKS5wb3Q7IHRoZW4gXAorCSAgZGlzdHM9IiQkZGlzdHMgJChET01BSU4pLnBvdCBzdGFtcC1wbyI7IFwKKwlmaTsgXAorCWlmIHRlc3QgLWYgJChzcmNkaXIpL0NoYW5nZUxvZzsgdGhlbiBcCisJICBkaXN0cz0iJCRkaXN0cyBDaGFuZ2VMb2ciOyBcCisJZmk7IFwKKwlmb3IgaSBpbiAwIDEgMiAzIDQgNSA2IDcgOCA5OyBkbyBcCisJICBpZiB0ZXN0IC1mICQoc3JjZGlyKS9DaGFuZ2VMb2cuJCRpOyB0aGVuIFwKKwkgICAgZGlzdHM9IiQkZGlzdHMgQ2hhbmdlTG9nLiQkaSI7IFwKKwkgIGZpOyBcCisJZG9uZTsgXAorCWlmIHRlc3QgLWYgJChzcmNkaXIpL0xJTkdVQVM7IHRoZW4gZGlzdHM9IiQkZGlzdHMgTElOR1VBUyI7IGZpOyBcCisJZm9yIGZpbGUgaW4gJCRkaXN0czsgZG8gXAorCSAgaWYgdGVzdCAtZiAkJGZpbGU7IHRoZW4gXAorCSAgICBjcCAtcCAkJGZpbGUgJChkaXN0ZGlyKSB8fCBleGl0IDE7IFwKKwkgIGVsc2UgXAorCSAgICBjcCAtcCAkKHNyY2RpcikvJCRmaWxlICQoZGlzdGRpcikgfHwgZXhpdCAxOyBcCisJICBmaTsgXAorCWRvbmUKKwordXBkYXRlLXBvOiBNYWtlZmlsZQorCSQoTUFLRSkgJChET01BSU4pLnBvdC11cGRhdGUKKwl0ZXN0IC16ICIkKFVQREFURVBPRklMRVMpIiB8fCAkKE1BS0UpICQoVVBEQVRFUE9GSUxFUykKKwkkKE1BS0UpIHVwZGF0ZS1nbW8KKworIyBHZW5lcmFsIHJ1bGUgZm9yIGNyZWF0aW5nIFBPIGZpbGVzLgorCisubm9wLnBvLWNyZWF0ZToKKwlAbGFuZz1gZWNobyAkQCB8IHNlZCAtZSAncy9cLnBvLWNyZWF0ZSQkLy8nYDsgXAorCWVjaG8gIkZpbGUgJCRsYW5nLnBvIGRvZXMgbm90IGV4aXN0LiBJZiB5b3UgYXJlIGEgdHJhbnNsYXRvciwgeW91IGNhbiBjcmVhdGUgaXQgdGhyb3VnaCAnbXNnaW5pdCcuIiAxPiYyOyBcCisJZXhpdCAxCisKKyMgR2VuZXJhbCBydWxlIGZvciB1cGRhdGluZyBQTyBmaWxlcy4KKworLm5vcC5wby11cGRhdGU6CisJQGxhbmc9YGVjaG8gJEAgfCBzZWQgLWUgJ3MvXC5wby11cGRhdGUkJC8vJ2A7IFwKKwlpZiB0ZXN0ICIkKFBBQ0tBR0UpIiA9ICJnZXR0ZXh0LXRvb2xzIjsgdGhlbiBQQVRIPWBwd2RgLy4uL3NyYzokJFBBVEg7IGZpOyBcCisJdG1wZGlyPWBwd2RgOyBcCisJZWNobyAiJCRsYW5nOiI7IFwKKwl0ZXN0ICIkKHNyY2RpcikiID0gLiAmJiBjZGNtZD0iIiB8fCBjZGNtZD0iY2QgJChzcmNkaXIpICYmICI7IFwKKwllY2hvICIkJHtjZGNtZH0kKE1TR01FUkdFKSAkKE1TR01FUkdFX09QVElPTlMpIC0tbGFuZz0kJGxhbmcgJCRsYW5nLnBvICQoRE9NQUlOKS5wb3QgLW8gJCRsYW5nLm5ldy5wbyI7IFwKKwljZCAkKHNyY2Rpcik7IFwKKwlpZiB7IGNhc2UgYCQoTVNHTUVSR0UpIC0tdmVyc2lvbiB8IHNlZCAxcSB8IHNlZCAtZSAncyxeW14wLTldKiwsJ2AgaW4gXAorCSAgICAgICAnJyB8IDAuWzAtOV0gfCAwLlswLTldLiogfCAwLjFbMC03XSB8IDAuMVswLTddLiopIFwKKwkgICAgICAgICAkKE1TR01FUkdFKSAkKE1TR01FUkdFX09QVElPTlMpIC1vICQkdG1wZGlyLyQkbGFuZy5uZXcucG8gJCRsYW5nLnBvICQoRE9NQUlOKS5wb3Q7OyBcCisJICAgICAgICopIFwKKwkgICAgICAgICAkKE1TR01FUkdFKSAkKE1TR01FUkdFX09QVElPTlMpIC0tbGFuZz0kJGxhbmcgLW8gJCR0bXBkaXIvJCRsYW5nLm5ldy5wbyAkJGxhbmcucG8gJChET01BSU4pLnBvdDs7IFwKKwkgICAgIGVzYWM7IFwKKwkgICB9OyB0aGVuIFwKKwkgIGlmIGNtcCAkJGxhbmcucG8gJCR0bXBkaXIvJCRsYW5nLm5ldy5wbyA+L2Rldi9udWxsIDI+JjE7IHRoZW4gXAorCSAgICBybSAtZiAkJHRtcGRpci8kJGxhbmcubmV3LnBvOyBcCisJICBlbHNlIFwKKwkgICAgaWYgbXYgLWYgJCR0bXBkaXIvJCRsYW5nLm5ldy5wbyAkJGxhbmcucG87IHRoZW4gXAorCSAgICAgIDo7IFwKKwkgICAgZWxzZSBcCisJICAgICAgZWNobyAibXNnbWVyZ2UgZm9yICQkbGFuZy5wbyBmYWlsZWQ6IGNhbm5vdCBtb3ZlICQkdG1wZGlyLyQkbGFuZy5uZXcucG8gdG8gJCRsYW5nLnBvIiAxPiYyOyBcCisJICAgICAgZXhpdCAxOyBcCisJICAgIGZpOyBcCisJICBmaTsgXAorCWVsc2UgXAorCSAgZWNobyAibXNnbWVyZ2UgZm9yICQkbGFuZy5wbyBmYWlsZWQhIiAxPiYyOyBcCisJICBybSAtZiAkJHRtcGRpci8kJGxhbmcubmV3LnBvOyBcCisJZmkKKworJChEVU1NWVBPRklMRVMpOgorCit1cGRhdGUtZ21vOiBNYWtlZmlsZSAkKEdNT0ZJTEVTKQorCUA6CisKKyMgUmVjcmVhdGUgTWFrZWZpbGUgYnkgaW52b2tpbmcgY29uZmlnLnN0YXR1cy4gRXhwbGljaXRseSBpbnZva2UgdGhlIHNoZWxsLAorIyBiZWNhdXNlIGV4ZWN1dGlvbiBwZXJtaXNzaW9uIGJpdHMgbWF5IG5vdCB3b3JrIG9uIHRoZSBjdXJyZW50IGZpbGUgc3lzdGVtLgorIyBVc2UgQFNIRUxMQCwgd2hpY2ggaXMgdGhlIHNoZWxsIGRldGVybWluZWQgYnkgYXV0b2NvbmYgZm9yIHRoZSB1c2UgYnkgaXRzCisjIHNjcmlwdHMsIG5vdCAkKFNIRUxMKSB3aGljaCBpcyBoYXJkd2lyZWQgdG8gL2Jpbi9zaCBhbmQgbWF5IGJlIGRlZmljaWVudC4KK01ha2VmaWxlOiBNYWtlZmlsZS5pbi5pbiBNYWtldmFycyAkKHRvcF9idWlsZGRpcikvY29uZmlnLnN0YXR1cyBAUE9NQUtFRklMRURFUFNACisJY2QgJCh0b3BfYnVpbGRkaXIpIFwKKwkgICYmIEBTSEVMTEAgLi9jb25maWcuc3RhdHVzICQoc3ViZGlyKS8kQC5pbiBwby1kaXJlY3RvcmllcworCitmb3JjZToKKworIyBUZWxsIHZlcnNpb25zIFszLjU5LDMuNjMpIG9mIEdOVSBtYWtlIG5vdCB0byBleHBvcnQgYWxsIHZhcmlhYmxlcy4KKyMgT3RoZXJ3aXNlIGEgc3lzdGVtIGxpbWl0IChmb3IgU3lzViBhdCBsZWFzdCkgbWF5IGJlIGV4Y2VlZGVkLgorLk5PRVhQT1JUOgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3BvL01ha2V2YXJzIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3BvL01ha2V2YXJzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjkwZWQ3YmQKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvcG8vTWFrZXZhcnMKQEAgLTAsMCArMSw0NSBAQAorIyBNYWtlZmlsZSB2YXJpYWJsZXMgZm9yIFBPIGRpcmVjdG9yeSBpbiBhbnkgcGFja2FnZSB1c2luZyBHTlUgZ2V0dGV4dC4KKworIyBVc3VhbGx5IHRoZSBtZXNzYWdlIGRvbWFpbiBpcyB0aGUgc2FtZSBhcyB0aGUgcGFja2FnZSBuYW1lLgorRE9NQUlOID0gZHBrZy1kZXYKKworIyBUaGVzZSB0d28gdmFyaWFibGVzIGRlcGVuZCBvbiB0aGUgbG9jYXRpb24gb2YgdGhpcyBkaXJlY3RvcnkuCitzdWJkaXIgPSBzY3JpcHRzL3BvCit0b3BfYnVpbGRkaXIgPSAuLi8uLgorCisjIFRoZXNlIG9wdGlvbnMgZ2V0IHBhc3NlZCB0byB4Z2V0dGV4dC4KK1hHRVRURVhUX09QVElPTlMgPSAtLWZyb20tY29kZT1pc28tODg1OS0xIC0ta2V5d29yZD1fZyAtLWtleXdvcmQ9UF86MSwyCisKK01TR01FUkdFX09QVElPTlMgPSAtLXByZXZpb3VzCisKKyMgVGhpcyBpcyB0aGUgY29weXJpZ2h0IGhvbGRlciB0aGF0IGdldHMgaW5zZXJ0ZWQgaW50byB0aGUgaGVhZGVyIG9mIHRoZQorIyAkKERPTUFJTikucG90IGZpbGUuICBTZXQgdGhpcyB0byB0aGUgY29weXJpZ2h0IGhvbGRlciBvZiB0aGUgc3Vycm91bmRpbmcKKyMgcGFja2FnZS4gIChOb3RlIHRoYXQgdGhlIG1zZ3N0ciBzdHJpbmdzLCBleHRyYWN0ZWQgZnJvbSB0aGUgcGFja2FnZSdzCisjIHNvdXJjZXMsIGJlbG9uZyB0byB0aGUgY29weXJpZ2h0IGhvbGRlciBvZiB0aGUgcGFja2FnZS4pICBUcmFuc2xhdG9ycyBhcmUKKyMgZXhwZWN0ZWQgdG8gdHJhbnNmZXIgdGhlIGNvcHlyaWdodCBmb3IgdGhlaXIgdHJhbnNsYXRpb25zIHRvIHRoaXMgcGVyc29uCisjIG9yIGVudGl0eSwgb3IgdG8gZGlzY2xhaW0gdGhlaXIgY29weXJpZ2h0LiAgVGhlIGVtcHR5IHN0cmluZyBzdGFuZHMgZm9yCisjIHRoZSBwdWJsaWMgZG9tYWluOyBpbiB0aGlzIGNhc2UgdGhlIHRyYW5zbGF0b3JzIGFyZSBleHBlY3RlZCB0byBkaXNjbGFpbQorIyB0aGVpciBjb3B5cmlnaHQuCitDT1BZUklHSFRfSE9MREVSID0gU29mdHdhcmUgaW4gdGhlIFB1YmxpYyBJbnRlcmVzdCwgSW5jLgorCisjIFRoaXMgaXMgdGhlIGVtYWlsIGFkZHJlc3Mgb3IgVVJMIHRvIHdoaWNoIHRoZSB0cmFuc2xhdG9ycyBzaGFsbCByZXBvcnQKKyMgYnVncyBpbiB0aGUgdW50cmFuc2xhdGVkIHN0cmluZ3M6CisjIC0gU3RyaW5ncyB3aGljaCBhcmUgbm90IGVudGlyZSBzZW50ZW5jZXMsIHNlZSB0aGUgbWFpbnRhaW5lciBndWlkZWxpbmVzCisjICAgaW4gdGhlIEdOVSBnZXR0ZXh0IGRvY3VtZW50YXRpb24sIHNlY3Rpb24gJ1ByZXBhcmluZyBTdHJpbmdzJy4KKyMgLSBTdHJpbmdzIHdoaWNoIHVzZSB1bmNsZWFyIHRlcm1zIG9yIHJlcXVpcmUgYWRkaXRpb25hbCBjb250ZXh0IHRvIGJlCisjICAgdW5kZXJzdG9vZC4KKyMgLSBTdHJpbmdzIHdoaWNoIG1ha2UgaW52YWxpZCBhc3N1bXB0aW9ucyBhYm91dCBub3RhdGlvbiBvZiBkYXRlLCB0aW1lIG9yCisjICAgbW9uZXkuCisjIC0gUGx1cmFsaXNhdGlvbiBwcm9ibGVtcy4KKyMgLSBJbmNvcnJlY3QgRW5nbGlzaCBzcGVsbGluZy4KKyMgLSBJbmNvcnJlY3QgZm9ybWF0dGluZy4KKyMgSXQgY2FuIGJlIHlvdXIgZW1haWwgYWRkcmVzcywgb3IgYSBtYWlsaW5nIGxpc3QgYWRkcmVzcyB3aGVyZSB0cmFuc2xhdG9ycworIyBjYW4gd3JpdGUgdG8gd2l0aG91dCBiZWluZyBzdWJzY3JpYmVkLCBvciB0aGUgVVJMIG9mIGEgd2ViIHBhZ2UgdGhyb3VnaAorIyB3aGljaCB0aGUgdHJhbnNsYXRvcnMgY2FuIGNvbnRhY3QgeW91LgorTVNHSURfQlVHU19BRERSRVNTID0gZGViaWFuLWRwa2dAbGlzdHMuZGViaWFuLm9yZworCisjIFRoaXMgaXMgdGhlIGxpc3Qgb2YgbG9jYWxlIGNhdGVnb3JpZXMsIGJleW9uZCBMQ19NRVNTQUdFUywgZm9yIHdoaWNoIHRoZQorIyBtZXNzYWdlIGNhdGFsb2dzIHNoYWxsIGJlIHVzZWQuICBJdCBpcyB1c3VhbGx5IGVtcHR5LgorRVhUUkFfTE9DQUxFX0NBVEVHT1JJRVMgPQorCitESVNURklMRVMuZXh0cmExID0gQ2hhbmdlTG9nLm9sZApkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3BvL1BPVEZJTEVTLmluIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3BvL1BPVEZJTEVTLmluCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjg4ZGEzMTgKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvcG8vUE9URklMRVMuaW4KQEAgLTAsMCArMSw2NyBAQAorIyBUaGlzIGlzIHRoZSBsaXN0IG9mIGFsbCBzb3VyY2UgZmlsZXMgd2l0aCB0cmFuc2xhdGFibGUgc3RyaW5ncy4KKworc2NyaXB0cy9kcGtnLWFyY2hpdGVjdHVyZS5wbAorc2NyaXB0cy9kcGtnLWJ1aWxkZmxhZ3MucGwKK3NjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGwKK3NjcmlwdHMvZHBrZy1jaGVja2J1aWxkZGVwcy5wbAorc2NyaXB0cy9kcGtnLWRpc3RhZGRmaWxlLnBsCitzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbAorc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGwKK3NjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsCitzY3JpcHRzL2Rwa2ctbWVyZ2VjaGFuZ2Vsb2dzLnBsCitzY3JpcHRzL2Rwa2ctbmFtZS5wbAorc2NyaXB0cy9kcGtnLXBhcnNlY2hhbmdlbG9nLnBsCitzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsCitzY3JpcHRzL2Rwa2ctc2NhbnNvdXJjZXMucGwKK3NjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGwKK3NjcmlwdHMvZHBrZy1zb3VyY2UucGwKK3NjcmlwdHMvY2hhbmdlbG9nL2RlYmlhbi5wbAorc2NyaXB0cy9EcGtnL0FyY2gucG0KK3NjcmlwdHMvRHBrZy9CdWlsZEZsYWdzLnBtCitzY3JpcHRzL0Rwa2cvQnVpbGRPcHRpb25zLnBtCitzY3JpcHRzL0Rwa2cvQ29tcHJlc3Npb24ucG0KK3NjcmlwdHMvRHBrZy9Db21wcmVzc2lvbi9GaWxlSGFuZGxlLnBtCitzY3JpcHRzL0Rwa2cvQ29tcHJlc3Npb24vUHJvY2Vzcy5wbQorc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbQorc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9EZWJpYW4ucG0KK3NjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRW50cnkucG0KK3NjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRW50cnkvRGViaWFuLnBtCitzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL1BhcnNlLnBtCitzY3JpcHRzL0Rwa2cvQ2hlY2tzdW1zLnBtCitzY3JpcHRzL0Rwa2cvQ29uZi5wbQorc2NyaXB0cy9EcGtnL0NvbnRyb2wucG0KK3NjcmlwdHMvRHBrZy9Db250cm9sL0NoYW5nZWxvZy5wbQorc2NyaXB0cy9EcGtnL0NvbnRyb2wvRmllbGRzLnBtCitzY3JpcHRzL0Rwa2cvQ29udHJvbC9JbmZvLnBtCitzY3JpcHRzL0Rwa2cvQ29udHJvbC9IYXNoLnBtCitzY3JpcHRzL0Rwa2cvQ29udHJvbC9UeXBlcy5wbQorc2NyaXB0cy9EcGtnL0RlcHMucG0KK3NjcmlwdHMvRHBrZy9FcnJvckhhbmRsaW5nLnBtCitzY3JpcHRzL0Rwa2cvRXhpdC5wbQorc2NyaXB0cy9EcGtnL0luZGV4LnBtCitzY3JpcHRzL0Rwa2cvSW50ZXJmYWNlL1N0b3JhYmxlLnBtCitzY3JpcHRzL0Rwa2cvSVBDLnBtCitzY3JpcHRzL0Rwa2cvUGF0aC5wbQorc2NyaXB0cy9EcGtnL1NobGlicy5wbQorc2NyaXB0cy9EcGtnL1NobGlicy9DcHBmaWx0LnBtCitzY3JpcHRzL0Rwa2cvU2hsaWJzL09iamR1bXAucG0KK3NjcmlwdHMvRHBrZy9TaGxpYnMvU3ltYm9sLnBtCitzY3JpcHRzL0Rwa2cvU2hsaWJzL1N5bWJvbEZpbGUucG0KK3NjcmlwdHMvRHBrZy9Tb3VyY2UvQXJjaGl2ZS5wbQorc2NyaXB0cy9EcGtnL1NvdXJjZS9GdW5jdGlvbnMucG0KK3NjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG0KK3NjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbQorc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtCitzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG0KK3NjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9ienIucG0KK3NjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9jdXN0b20ucG0KK3NjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9uYXRpdmUucG0KK3NjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9naXQucG0KK3NjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbQorc2NyaXB0cy9EcGtnL1N1YnN0dmFycy5wbQorc2NyaXB0cy9EcGtnL1ZhcnMucG0KK3NjcmlwdHMvRHBrZy9WZW5kb3IucG0KK3NjcmlwdHMvRHBrZy9WZW5kb3IvRGViaWFuLnBtCitzY3JpcHRzL0Rwa2cvVmVuZG9yL0RlZmF1bHQucG0KK3NjcmlwdHMvRHBrZy9WZW5kb3IvVWJ1bnR1LnBtCitzY3JpcHRzL0Rwa2cvVmVyc2lvbi5wbQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3BvL1J1bGVzLXF1b3QgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvcG8vUnVsZXMtcXVvdApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hZjUyNDg3Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3BvL1J1bGVzLXF1b3QKQEAgLTAsMCArMSw0NyBAQAorIyBTcGVjaWFsIE1ha2VmaWxlIHJ1bGVzIGZvciBFbmdsaXNoIG1lc3NhZ2UgY2F0YWxvZ3Mgd2l0aCBxdW90YXRpb24gbWFya3MuCisKK0RJU1RGSUxFUy5jb21tb24uZXh0cmExID0gcXVvdC5zZWQgYm9sZHF1b3Quc2VkIGVuQHF1b3QuaGVhZGVyIGVuQGJvbGRxdW90LmhlYWRlciBpbnNlcnQtaGVhZGVyLnNpbiBSdWxlcy1xdW90CisKKy5TVUZGSVhFUzogLmluc2VydC1oZWFkZXIgLnBvLXVwZGF0ZS1lbgorCitlbkBxdW90LnBvLWNyZWF0ZToKKwkkKE1BS0UpIGVuQHF1b3QucG8tdXBkYXRlCitlbkBib2xkcXVvdC5wby1jcmVhdGU6CisJJChNQUtFKSBlbkBib2xkcXVvdC5wby11cGRhdGUKKworZW5AcXVvdC5wby11cGRhdGU6IGVuQHF1b3QucG8tdXBkYXRlLWVuCitlbkBib2xkcXVvdC5wby11cGRhdGU6IGVuQGJvbGRxdW90LnBvLXVwZGF0ZS1lbgorCisuaW5zZXJ0LWhlYWRlci5wby11cGRhdGUtZW46CisJQGxhbmc9YGVjaG8gJEAgfCBzZWQgLWUgJ3MvXC5wby11cGRhdGUtZW4kJC8vJ2A7IFwKKwlpZiB0ZXN0ICIkKFBBQ0tBR0UpIiA9ICJnZXR0ZXh0IjsgdGhlbiBQQVRIPWBwd2RgLy4uL3NyYzokJFBBVEg7IEdFVFRFWFRMSUJESVI9YGNkICQodG9wX3NyY2Rpcikvc3JjICYmIHB3ZGA7IGV4cG9ydCBHRVRURVhUTElCRElSOyBmaTsgXAorCXRtcGRpcj1gcHdkYDsgXAorCWVjaG8gIiQkbGFuZzoiOyBcCisJbGw9YGVjaG8gJCRsYW5nIHwgc2VkIC1lICdzL0AuKi8vJ2A7IFwKKwlMQ19BTEw9QzsgZXhwb3J0IExDX0FMTDsgXAorCWNkICQoc3JjZGlyKTsgXAorCWlmICQoTVNHSU5JVCkgLWkgJChET01BSU4pLnBvdCAtLW5vLXRyYW5zbGF0b3IgLWwgJCRsYW5nIC1vIC0gMj4vZGV2L251bGwgfCBzZWQgLWYgJCR0bXBkaXIvJCRsYW5nLmluc2VydC1oZWFkZXIgfCAkKE1TR0NPTlYpIC10IFVURi04IHwgJChNU0dGSUxURVIpIHNlZCAtZiBgZWNobyAkJGxhbmcgfCBzZWQgLWUgJ3MvLipALy8nYC5zZWQgMj4vZGV2L251bGwgPiAkJHRtcGRpci8kJGxhbmcubmV3LnBvOyB0aGVuIFwKKwkgIGlmIGNtcCAkJGxhbmcucG8gJCR0bXBkaXIvJCRsYW5nLm5ldy5wbyA+L2Rldi9udWxsIDI+JjE7IHRoZW4gXAorCSAgICBybSAtZiAkJHRtcGRpci8kJGxhbmcubmV3LnBvOyBcCisJICBlbHNlIFwKKwkgICAgaWYgbXYgLWYgJCR0bXBkaXIvJCRsYW5nLm5ldy5wbyAkJGxhbmcucG87IHRoZW4gXAorCSAgICAgIDo7IFwKKwkgICAgZWxzZSBcCisJICAgICAgZWNobyAiY3JlYXRpb24gb2YgJCRsYW5nLnBvIGZhaWxlZDogY2Fubm90IG1vdmUgJCR0bXBkaXIvJCRsYW5nLm5ldy5wbyB0byAkJGxhbmcucG8iIDE+JjI7IFwKKwkgICAgICBleGl0IDE7IFwKKwkgICAgZmk7IFwKKwkgIGZpOyBcCisJZWxzZSBcCisJICBlY2hvICJjcmVhdGlvbiBvZiAkJGxhbmcucG8gZmFpbGVkISIgMT4mMjsgXAorCSAgcm0gLWYgJCR0bXBkaXIvJCRsYW5nLm5ldy5wbzsgXAorCWZpCisKK2VuQHF1b3QuaW5zZXJ0LWhlYWRlcjogaW5zZXJ0LWhlYWRlci5zaW4KKwlzZWQgLWUgJy9eIy9kJyAtZSAncy9IRUFERVIvZW5AcXVvdC5oZWFkZXIvZycgJChzcmNkaXIpL2luc2VydC1oZWFkZXIuc2luID4gZW5AcXVvdC5pbnNlcnQtaGVhZGVyCisKK2VuQGJvbGRxdW90Lmluc2VydC1oZWFkZXI6IGluc2VydC1oZWFkZXIuc2luCisJc2VkIC1lICcvXiMvZCcgLWUgJ3MvSEVBREVSL2VuQGJvbGRxdW90LmhlYWRlci9nJyAkKHNyY2RpcikvaW5zZXJ0LWhlYWRlci5zaW4gPiBlbkBib2xkcXVvdC5pbnNlcnQtaGVhZGVyCisKK21vc3RseWNsZWFuOiBtb3N0bHljbGVhbi1xdW90Cittb3N0bHljbGVhbi1xdW90OgorCXJtIC1mICouaW5zZXJ0LWhlYWRlcgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3BvL2JvbGRxdW90LnNlZCBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9wby9ib2xkcXVvdC5zZWQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNGI5MzdhYQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9wby9ib2xkcXVvdC5zZWQKQEAgLTAsMCArMSwxMCBAQAorcy8iXChbXiJdKlwpIi/igJxcMeKAnS9nCitzL2BcKFteYCddKlwpJy/igJhcMeKAmS9nCitzLyAnXChbXmAnXSpcKScgLyDigJhcMeKAmSAvZworcy8gJ1woW15gJ10qXCknJC8g4oCYXDHigJkvZworcy9eJ1woW15gJ10qXCknIC/igJhcMeKAmSAvZworcy/igJzigJ0vIiIvZworcy/igJwv4oCcG1sxbS9nCitzL+KAnS8bWzBt4oCdL2cKK3Mv4oCYL+KAmBtbMW0vZworcy/igJkvG1swbeKAmS9nCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvcG8vY2EuZ21vIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3BvL2NhLmdtbwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41MzkxM2Q1Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3BvL2NhLmdtbwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvcG8vY2EucG8gYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvcG8vY2EucG8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzJlNzM4MwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9wby9jYS5wbwpAQCAtMCwwICsxLDMxNDYgQEAKKyMgQ2F0YWxhbiB0cmFuc2xhdGlvbiBvZiBkcGtnLWRldi4KKyMgQ29weXJpZ2h0IMKpIDIwMDYsIDIwMTAgU29mdHdhcmUgaW4gdGhlIFB1YmxpYyBJbnRlcmVzdCwgSW5jLgorIyBUaGlzIGZpbGUgaXMgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIHNhbWUgbGljZW5zZSBhcyB0aGUgZHBrZyBwYWNrYWdlLgorIyBKb3JkaSBNYWxsYWNoIDxqb3JkaUBkZWJpYW4ub3JnPiwgMjAwNiwgMjAxMC4KKyMKK21zZ2lkICIiCittc2dzdHIgIiIKKyJQcm9qZWN0LUlkLVZlcnNpb246IGRwa2cgMS4xNS44LjZcbiIKKyJSZXBvcnQtTXNnaWQtQnVncy1UbzogZGViaWFuLWRwa2dAbGlzdHMuZGViaWFuLm9yZ1xuIgorIlBPVC1DcmVhdGlvbi1EYXRlOiAyMDExLTEwLTE0IDA3OjExKzAyMDBcbiIKKyJQTy1SZXZpc2lvbi1EYXRlOiAyMDEwLTEwLTI0IDE4OjEwKzAyMDBcbiIKKyJMYXN0LVRyYW5zbGF0b3I6IEpvcmRpIE1hbGxhY2ggPGpvcmRpQGRlYmlhbi5vcmc+XG4iCisiTGFuZ3VhZ2UtVGVhbTogQ2F0YWxhbiA8ZGViaWFuLWwxMG4tY2F0YWxhbkBsaXN0cy5kZWJpYW4ub3JnPlxuIgorIkxhbmd1YWdlOiBjYVxuIgorIk1JTUUtVmVyc2lvbjogMS4wXG4iCisiQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PVVURi04XG4iCisiQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdFxuIgorIlBsdXJhbC1Gb3JtczogbnBsdXJhbHM9MjsgcGx1cmFsPW4hPTE7XG4iCisKKyM6IHNjcmlwdHMvZHBrZy1hcmNoaXRlY3R1cmUucGw6MzYgc2NyaXB0cy9kcGtnLWJ1aWxkZmxhZ3MucGw6MzEKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6Mzcgc2NyaXB0cy9kcGtnLWNoZWNrYnVpbGRkZXBzLnBsOjM2CisjOiBzY3JpcHRzL2Rwa2ctZGlzdGFkZGZpbGUucGw6MzMgc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6OTYKKyM6IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjU2IHNjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsOjQ5CisjOiBzY3JpcHRzL2Rwa2ctbWVyZ2VjaGFuZ2Vsb2dzLnBsOjUzIHNjcmlwdHMvZHBrZy1uYW1lLnBsOjQ2CisjOiBzY3JpcHRzL2Rwa2ctcGFyc2VjaGFuZ2Vsb2cucGw6MzEgc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDo2MAorIzogc2NyaXB0cy9kcGtnLXNjYW5zb3VyY2VzLnBsOjc4IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6NTMzCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjQ1NSBzY3JpcHRzL2NoYW5nZWxvZy9kZWJpYW4ucGw6MzQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiRGViaWFuICVzIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIkRlYmlhbiAlcyB2ZXJzacOzICVzLlxuIgorCisjOiBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLnBsOjM4Cittc2dpZCAiIgorIlxuIgorIkNvcHlyaWdodCAoQykgMTk5OS0yMDAxIE1hcmN1cyBCcmlua21hbm4gPGJyaW5rbWRAZGViaWFuLm9yZz4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDA0LTIwMDUgU2NvdHQgSmFtZXMgUmVtbmFudCA8c2NvdHRAbmV0c3BsaXQuY29tPi4iCittc2dzdHIgIiIKKyJcbiIKKyJDb3B5cmlnaHQgwqkgMTk5OS0yMDAxIE1hcmN1cyBCcmlua21hbm4gPGJyaW5rbWRAZGViaWFuLm9yZz4uXG4iCisiQ29weXJpZ2h0IMKpIDIwMDQtMjAwNSBTY290dCBKYW1lcyBSZW1uYW50IDxzY290dEBuZXRzcGxpdC5jb20+LiIKKworIzogc2NyaXB0cy9kcGtnLWFyY2hpdGVjdHVyZS5wbDo0MiBzY3JpcHRzL2Rwa2ctYnVpbGRmbGFncy5wbDozNgorIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDo0NCBzY3JpcHRzL2Rwa2ctZGlzdGFkZGZpbGUucGw6MzgKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjEwMiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDo2MgorIzogc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGw6NTUgc2NyaXB0cy9kcGtnLXBhcnNlY2hhbmdlbG9nLnBsOjM3CisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjU0MiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjQ2MgorIzogc2NyaXB0cy9jaGFuZ2Vsb2cvZGViaWFuLnBsOjM5Cittc2dpZCAiIgorIlxuIgorIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgb3JcbiIKKyJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKK21zZ3N0ciAiIgorIlxuIgorIkFxdWVzdCDDqXMgcHJvZ3JhbWFyaSBsbGl1cmU7IHZlZ2V1IGxhIExsaWPDqG5jaWEgUMO6YmxpY2EgR2VuZXJhbCBHTlUgdmVyc2nDsyAyICIKKyJvIHBvc3RlcmlvciBwZXIgYSBsZXMgY29uZGljaW9ucyBkZSBjw7JwaWEuIE5PIGhpIGhhIGdhcmFudGlhLlxuIgorCisjOiBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLnBsOjUwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gWzxhY3Rpb24+XVxuIgorIlxuIgorIk9wdGlvbnM6XG4iCisiICAtYTxkZWJpYW4tYXJjaD4gICAgc2V0IGN1cnJlbnQgRGViaWFuIGFyY2hpdGVjdHVyZS5cbiIKKyIgIC10PGdudS1zeXN0ZW0+ICAgICBzZXQgY3VycmVudCBHTlUgc3lzdGVtIHR5cGUuXG4iCisiICAtTCAgICAgICAgICAgICAgICAgbGlzdCB2YWxpZCBhcmNoaXRlY3R1cmVzLlxuIgorIiAgLWYgICAgICAgICAgICAgICAgIGZvcmNlIGZsYWcgKG92ZXJyaWRlIHZhcmlhYmxlcyBzZXQgaW4gZW52aXJvbm1lbnQpLlxuIgorIlxuIgorIkFjdGlvbnM6XG4iCisiICAtbCAgICAgICAgICAgICAgICAgbGlzdCB2YXJpYWJsZXMgKGRlZmF1bHQpLlxuIgorIiAgLWU8ZGViaWFuLWFyY2g+ICAgIGNvbXBhcmUgd2l0aCBjdXJyZW50IERlYmlhbiBhcmNoaXRlY3R1cmUuXG4iCisiICAtaTxhcmNoLWFsaWFzPiAgICAgY2hlY2sgaWYgY3VycmVudCBEZWJpYW4gYXJjaGl0ZWN0dXJlIGlzIDxhcmNoLWFsaWFzPi5cbiIKKyIgIC1xPHZhcmlhYmxlPiAgICAgICBwcmludHMgb25seSB0aGUgdmFsdWUgb2YgPHZhcmlhYmxlPi5cbiIKKyIgIC1zICAgICAgICAgICAgICAgICBwcmludCBjb21tYW5kIHRvIHNldCBlbnZpcm9ubWVudCB2YXJpYWJsZXMuXG4iCisiICAtdSAgICAgICAgICAgICAgICAgcHJpbnQgY29tbWFuZCB0byB1bnNldCBlbnZpcm9ubWVudCB2YXJpYWJsZXMuXG4iCisiICAtYyA8Y29tbWFuZD4gICAgICAgc2V0IGVudmlyb25tZW50IGFuZCBydW4gdGhlIGNvbW1hbmQgaW4gaXQuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1hcmNoaXRlY3R1cmUucGw6MTIwIHNjcmlwdHMvZHBrZy1idWlsZGZsYWdzLnBsOjkxCisjOiBzY3JpcHRzL2Rwa2ctZGlzdGFkZGZpbGUucGw6Njggc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6MTk0CisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDoxMzMgc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGw6MTQxCisjOiBzY3JpcHRzL2Rwa2ctcGFyc2VjaGFuZ2Vsb2cucGw6MTEzIHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6MTE5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVua25vd24gb3B0aW9uIGAlcyciCittc2dzdHIgImwnb3BjacOzIMKrJXPCuyDDqXMgZGVzY29uZWd1ZGEiCisKKyM6IHNjcmlwdHMvZHBrZy1hcmNoaXRlY3R1cmUucGw6MTQ0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVua25vd24gRGViaWFuIGFyY2hpdGVjdHVyZSAlcywgeW91IG11c3Qgc3BlY2lmeSBHTlUgc3lzdGVtIHR5cGUsIHRvbyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLnBsOjE1MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmtub3duIEdOVSBzeXN0ZW0gdHlwZSAlcywgeW91IG11c3Qgc3BlY2lmeSBEZWJpYW4gYXJjaGl0ZWN0dXJlLCB0b28iCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLWFyY2hpdGVjdHVyZS5wbDoxNTgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5rbm93biBkZWZhdWx0IEdOVSBzeXN0ZW0gdHlwZSBmb3IgRGViaWFuIGFyY2hpdGVjdHVyZSAlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLnBsOjE2MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiRGVmYXVsdCBHTlUgc3lzdGVtIHR5cGUgJXMgZm9yIERlYmlhbiBhcmNoICVzIGRvZXMgbm90IG1hdGNoIHNwZWNpZmllZCBHTlUgIgorInN5c3RlbSB0eXBlICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1hcmNoaXRlY3R1cmUucGw6MTgwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIlNwZWNpZmllZCBHTlUgc3lzdGVtIHR5cGUgJXMgZG9lcyBub3QgbWF0Y2ggZ2NjIHN5c3RlbSB0eXBlICVzLiIKK21zZ3N0ciAiIgorIkVsIHRpcHVzIGRlIHNpc3RlbWEgR05VICVzIGVzcGVjaWZpY2F0IG5vIGNvcnJlc3BvbiBhbWIgZWwgdGlwdXMgZGUgc2lzdGVtYSAiCisiZGVsIGdjYyAlcy4iCisKKyM6IHNjcmlwdHMvZHBrZy1hcmNoaXRlY3R1cmUucGw6MjI1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGlzIG5vdCBhIHN1cHBvcnRlZCB2YXJpYWJsZSBuYW1lIgorbXNnc3RyICIlcyBubyDDqXMgdW4gbm9tIGRlIHZhcmlhYmxlIGdlc3Rpb25hdCIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkZmxhZ3MucGw6MzMKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlxuIgorI3wgIkNvcHlyaWdodCAoQykgMjAxMCBSYXBoYWVsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4uIgorbXNnaWQgIiIKKyJcbiIKKyJDb3B5cmlnaHQgKEMpIDIwMTAtMjAxMSBSYXBoYWVsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4uIgorbXNnc3RyICIiCisiXG4iCisiQ29weXJpZ2h0IMKpIDIwMTAgUmFwaGFlbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+LiIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkZmxhZ3MucGw6NDQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPGFjdGlvbj5dXG4iCisiXG4iCisiQWN0aW9uczpcbiIKKyIgIC0tZ2V0IDxmbGFnPiAgICAgICBvdXRwdXQgdGhlIHJlcXVlc3RlZCBmbGFnIHRvIHN0ZG91dC5cbiIKKyIgIC0tb3JpZ2luIDxmbGFnPiAgICBvdXRwdXQgdGhlIG9yaWdpbiBvZiB0aGUgZmxhZyB0byBzdGRvdXQ6XG4iCisiICAgICAgICAgICAgICAgICAgICAgdmFsdWUgaXMgb25lIG9mIHZlbmRvciwgc3lzdGVtLCB1c2VyLCBlbnYuXG4iCisiICAtLWxpc3QgICAgICAgICAgICAgb3V0cHV0IGEgbGlzdCBvZiB0aGUgZmxhZ3Mgc3VwcG9ydGVkIGJ5IHRoZSBjdXJyZW50ICIKKyJ2ZW5kb3IuXG4iCisiICAtLWV4cG9ydD0oc2h8bWFrZXxjb25maWd1cmUpXG4iCisiICAgICAgICAgICAgICAgICAgICAgb3V0cHV0IHNvbWV0aGluZyBjb252ZW5pZW50IHRvIGltcG9ydCB0aGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICBjb21waWxhdGlvbiBmbGFncyBpbiBhIHNoZWxsIHNjcmlwdCwgaW4gbWFrZSxcbiIKKyIgICAgICAgICAgICAgICAgICAgICBvciBvbiBhIC4vY29uZmlndXJlIGNvbW1hbmQgbGluZS5cbiIKKyIgIC0tZHVtcCAgICAgICAgICAgICBvdXRwdXQgYWxsIGNvbXBpbGF0aW9uIGZsYWdzIHdpdGggdGhlaXIgdmFsdWVzXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZGZsYWdzLnBsOjY2IHNjcmlwdHMvZHBrZy1idWlsZGZsYWdzLnBsOjcyCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRmbGFncy5wbDo3NyBzY3JpcHRzL2Rwa2ctYnVpbGRmbGFncy5wbDo4MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ0d28gY29tbWFuZHMgc3BlY2lmaWVkOiAtLSVzIGFuZCAtLSVzIgorbXNnc3RyICJzJ2hhIGVzcGVjaWZpY2F0IGRvcyBvcmRyZXM6IC0tJXMgaSAtLSVzIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRmbGFncy5wbDo3MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBuZWVkcyBhIHBhcmFtZXRlciIKK21zZ3N0ciAiJXMgcmVxdWVyZWl4IHVuIHBhcsOgbWV0cmUiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6MzkKK21zZ2lkICIiCisiXG4iCisiQ29weXJpZ2h0IChDKSAxOTk2IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMCBXaWNoZXJ0IEFra2VybWFuXG4iCisiQ29weXJpZ2h0IChDKSAyMDA3IEZyYW5rIExpY2h0ZW5oZWxkIgorbXNnc3RyICIiCisiXG4iCisiQ29weXJpZ2h0IMKpIDE5OTYgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IMKpIDIwMDAgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgwqkgMjAwNyBGcmFuayBMaWNodGVuaGVsZCIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDo1MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiVXNhZ2U6ICVzIFs8b3B0aW9ucz4gLi4uXVxuIgorIlxuIgorIk9wdGlvbnM6XG4iCisiICAtcjxnYWluLXJvb3QtY29tbWFuZD5cbiIKKyIgICAgICAgICAgICAgICAgIGNvbW1hbmQgdG8gZ2FpbiByb290IHByaXZpbGVnZXMgKGRlZmF1bHQgaXMgZmFrZXJvb3QpLlxuIgorIiAgLVI8cnVsZXM+ICAgICAgcnVsZXMgZmlsZSB0byBleGVjdXRlIChkZWZhdWx0IGlzIGRlYmlhbi9ydWxlcykuXG4iCisiICAtcDxzaWduLWNvbW1hbmQ+XG4iCisiICAtZCAgICAgICAgICAgICBkbyBub3QgY2hlY2sgYnVpbGQgZGVwZW5kZW5jaWVzIGFuZCBjb25mbGljdHMuXG4iCisiICAtRCAgICAgICAgICAgICBjaGVjayBidWlsZCBkZXBlbmRlbmNpZXMgYW5kIGNvbmZsaWN0cy5cbiIKKyIgIC1UPHRhcmdldD4gICAgIGNhbGwgZGViaWFuL3J1bGVzIDx0YXJnZXQ+IHdpdGggdGhlIHByb3BlciBlbnZpcm9ubWVudFxuIgorIiAgLS1hcy1yb290ICAgICAgZW5zdXJlIC1UIGNhbGxzIHRoZSB0YXJnZXQgd2l0aCByb290IHJpZ2h0c1xuIgorIiAgLWpbPG51bWJlcj5dICAgc3BlY2lmeSBqb2JzIHRvIHJ1biBzaW11bHRhbmVvdXNseSB9IHBhc3NlZCB0byBkZWJpYW4vIgorInJ1bGVzXG4iCisiICAtazxrZXlpZD4gICAgICB0aGUga2V5IHRvIHVzZSBmb3Igc2lnbmluZy5cbiIKKyIgIC1zZ3BnICAgICAgICAgIHRoZSBzaWduLWNvbW1hbmQgaXMgY2FsbGVkIGxpa2UgR1BHLlxuIgorIiAgLXNwZ3AgICAgICAgICAgdGhlIHNpZ24tY29tbWFuZCBpcyBjYWxsZWQgbGlrZSBQR1AuXG4iCisiICAtdXMgICAgICAgICAgICB1bnNpZ25lZCBzb3VyY2UuXG4iCisiICAtdWMgICAgICAgICAgICB1bnNpZ25lZCBjaGFuZ2VzLlxuIgorIiAgLWE8YXJjaD4gICAgICAgRGViaWFuIGFyY2hpdGVjdHVyZSB3ZSBidWlsZCBmb3IgKGltcGxpZXMgLWQpLlxuIgorIiAgLWIgICAgICAgICAgICAgYmluYXJ5LW9ubHksIGRvIG5vdCBidWlsZCBzb3VyY2UuICAgfSBhbHNvIHBhc3NlZCB0b1xuIgorIiAgLUIgICAgICAgICAgICAgYmluYXJ5LW9ubHksIG5vIGFyY2gtaW5kZXAgZmlsZXMuICAgfSBkcGtnLWdlbmNoYW5nZXNcbiIKKyIgIC1BICAgICAgICAgICAgIGJpbmFyeS1vbmx5LCBvbmx5IGFyY2gtaW5kZXAgZmlsZXMuIH1cbiIKKyIgIC1TICAgICAgICAgICAgIHNvdXJjZSBvbmx5LCBubyBiaW5hcnkgZmlsZXMuICAgICB9XG4iCisiICAtRiAgICAgICAgICAgICBub3JtYWwgZnVsbCBidWlsZCAoYmluYXJpZXMgYW5kIHNvdXJjZXMpLlxuIgorIiAgLXQ8c3lzdGVtPiAgICAgc2V0IEdOVSBzeXN0ZW0gdHlwZS4gICAgICAgICAgIH0gcGFzc2VkIHRvIGRwa2ctIgorImFyY2hpdGVjdHVyZVxuIgorIiAgLXY8dmVyc2lvbj4gICAgY2hhbmdlcyBzaW5jZSB2ZXJzaW9uIDx2ZXJzaW9uPi4gICAgICB9XG4iCisiICAtbTxtYWludD4gICAgICBtYWludGFpbmVyIGZvciBwYWNrYWdlIGlzIDxtYWludD4uICAgIH1cbiIKKyIgIC1lPG1haW50PiAgICAgIG1haW50YWluZXIgZm9yIHJlbGVhc2UgaXMgPG1haW50Pi4gICAgfSBvbmx5IHBhc3NlZFxuIgorIiAgLUM8ZGVzY2ZpbGU+ICAgY2hhbmdlcyBhcmUgZGVzY3JpYmVkIGluIDxkZXNjZmlsZT4uICB9IHRvIGRwa2ctZ2VuY2hhbmdlc1xuIgorIiAgLXNpIChkZWZhdWx0KSAgc3JjIGluY2x1ZGVzIG9yaWcgaWYgbmV3IHVwc3RyZWFtLiAgICB9XG4iCisiICAtc2EgICAgICAgICAgICB1cGxvYWRlZCBzcmMgYWx3YXlzIGluY2x1ZGVzIG9yaWcuICAgIH1cbiIKKyIgIC1zZCAgICAgICAgICAgIHVwbG9hZGVkIHNyYyBpcyBkaWZmIGFuZCAuZHNjIG9ubHkuICAgfVxuIgorIiAgLXNuICAgICAgICAgICAgZm9yY2UgRGViaWFuIG5hdGl2ZSBzb3VyY2UgZm9ybWF0LiAgICAgIH1cbiIKKyIgIC1zW3NBa3VyS1VSXSAgIHNlZSBkcGtnLXNvdXJjZSBmb3IgZXhwbGFuYXRpb24uICAgICAgICB9IG9ubHkgcGFzc2VkXG4iCisiICAtejxsZXZlbD4gICAgICBjb21wcmVzc2lvbiBsZXZlbCBvZiBzb3VyY2UgICAgICAgICAgICAgfSB0byBkcGtnLXNvdXJjZVxuIgorIiAgLVo8Y29tcHJlc3Nvcj4gY29tcHJlc3Npb24gdG8gdXNlIGZvciBzb3VyY2UgICAgICAgICAgIH1cbiIKKyIgIC1uYyAgICAgICAgICAgIGRvIG5vdCBjbGVhbiBzb3VyY2UgdHJlZSAoaW1wbGllcyAtYikuXG4iCisiICAtdGMgICAgICAgICAgICBjbGVhbiBzb3VyY2UgdHJlZSB3aGVuIGZpbmlzaGVkLlxuIgorIiAgLWFwICAgICAgICAgICAgYWRkIHBhdXNlIGJlZm9yZSBzdGFydGluZyBzaWduYXR1cmUgcHJvY2Vzcy5cbiIKKyIgIC1pWzxyZWdleD5dICAgIGlnbm9yZSBkaWZmcyBvZiBmaWxlcyBtYXRjaGluZyByZWdleC4gICAgfSBvbmx5IHBhc3NlZFxuIgorIiAgLUlbPHBhdHRlcm4+XSAgZmlsdGVyIG91dCBmaWxlcyB3aGVuIGJ1aWxkaW5nIHRhcmJhbGxzLiB9IHRvIGRwa2ctc291cmNlXG4iCisiICAtLXNvdXJjZS1vcHRpb249PG9wdD5cbiIKKyJcdFx0IHBhc3Mgb3B0aW9uIDxvcHQ+IHRvIGRwa2ctc291cmNlXG4iCisiICAtLWNoYW5nZXMtb3B0aW9uPTxvcHQ+XG4iCisiXHRcdCBwYXNzIG9wdGlvbiA8b3B0PiB0byBkcGtnLWdlbmNoYW5nZXNcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT5cbiIKKyIgICAgICAgICAgICAgICAgIGNoYW5nZSB0aGUgYWRtaW5pc3RyYXRpdmUgZGlyZWN0b3J5LlxuIgorIiAgLWgsIC0taGVscCAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgICAgICAtLXZlcnNpb24gIHNob3cgdGhlIHZlcnNpb24uXG4iCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDoyMDAgc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDoyMDYKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6MjEyIHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6MjE4CisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjIyMyBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDoxNDMKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjE0NiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDoxNTAKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjE1NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3QgY29tYmluZSAlcyBhbmQgJXMiCittc2dzdHIgIm5vIGVzIHBvdCBjb21iaW5hciAlcyBhbWIgJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6MjM2IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6MjAyCittc2dpZCAiLUUgYW5kIC1XIGFyZSBkZXByZWNhdGVkLCB0aGV5IGFyZSB3aXRob3V0IGVmZmVjdCIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjI0MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiBvciBhcmd1bWVudCAlcyIKK21zZ3N0ciAibCdvcGNpw7MgbyBhcmd1bWVudCAlcyDDqXMgZGVzY29uZWd1ZGEiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6MjUwCittc2dpZCAidXNpbmcgYSBnYWluLXJvb3QtY29tbWFuZCB3aGlsZSBiZWluZyByb290IgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6MjU2Cittc2dpZCAiIgorImZha2Vyb290IG5vdCBmb3VuZCwgZWl0aGVyIGluc3RhbGwgdGhlIGZha2Vyb290XG4iCisicGFja2FnZSwgc3BlY2lmeSBhIGNvbW1hbmQgd2l0aCB0aGUgLXIgb3B0aW9uLCBvciBydW4gdGhpcyBhcyByb290IgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6MjYwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImdhaW4tcm9vdC1jb21tbWFuZCAnJXMnIG5vdCBmb3VuZCIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjI3OQorbXNnaWQgInVua25vd24gc2lnbiBjb21tYW5kLCBhc3N1bWluZyBwZ3Agc3R5bGUgaW50ZXJmYWNlIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6MjgyCittc2dpZCAiUEdQIHN1cHBvcnQgaXMgZGVwcmVjYXRlZCAoc2VlIFJFQURNRS5mZWF0dXJlLXJlbW92YWwtc2NoZWR1bGUpIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6MzAxCittc2dpZCAic291cmNlIHBhY2thZ2UiCittc2dzdHIgInBhcXVldCBmb250IgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjMwMgorbXNnaWQgInNvdXJjZSB2ZXJzaW9uIgorbXNnc3RyICJ2ZXJzacOzIGRlbCBmb250IgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjMxMgorbXNnaWQgInNvdXJjZSBjaGFuZ2VkIGJ5IgorbXNnc3RyICJmb250IGNhbnZpYXQgcGVyIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjMzMAorbXNnaWQgImhvc3QgYXJjaGl0ZWN0dXJlIgorbXNnc3RyICJhcnF1aXRlY3R1cmEgZGUgbCdhbWZpdHJpw7MiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6MzQzCittc2dpZCAiZGViaWFuL3J1bGVzIGlzIG5vdCBleGVjdXRhYmxlOiBmaXhpbmcgdGhhdC4iCittc2dzdHIgImRlYmlhbi9ydWxlcyBubyDDqXMgZXhlY3V0YWJsZTogcydlc3TDoCBjb3JyZWdpbnQgYWl4w7IuIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjM2MgorbXNnaWQgIkJ1aWxkIGRlcGVuZGVuY2llcy9jb25mbGljdHMgdW5zYXRpc2ZpZWQ7IGFib3J0aW5nLiIKK21zZ3N0ciAiRGVwZW5kw6huY2llcy9jb25mbGljdGVzIGRlIGNvbnN0cnVjY2nDsyBubyBzYXRpc2ZldGVzOyBzJ2VzdMOgIGF2b3J0YW50LiIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDozNjMKK21zZ2lkICIoVXNlIC1kIGZsYWcgdG8gb3ZlcnJpZGUuKSIKK21zZ3N0ciAiKEVtcHJldSBlbCBzZW55YWxhZG9yIC1kIGZsYWcgcGVyIGEgb21ldHJlLWhvLikiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6MzY2Cittc2dpZCAiVGhpcyBpcyBjdXJyZW50bHkgYSBub24tZmF0YWwgd2FybmluZyB3aXRoIC1TLCBidXQiCittc2dzdHIgIkHDp8OyIMOpcyBhY3R1YWxtZW50IG5vbcOpcyB1biBhdsOtcyBhbWIgLVMsIHBlcsOyIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjM2NworbXNnaWQgIndpbGwgcHJvYmFibHkgYmVjb21lIGZhdGFsIGluIHRoZSBmdXR1cmUuIgorbXNnc3RyICJwcm9iYWJsZW1lbnQgc2Vyw6AgZmF0YWwgZW4gZWwgZnV0dXIuIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjM4OQorbXNnaWQgIiIKKyJpdCBpcyBhIGJhZCBpZGVhIHRvIGdlbmVyYXRlIGEgc291cmNlIHBhY2thZ2Ugd2l0aG91dCBjbGVhbmluZyB1cCBmaXJzdCwgaXQgIgorIm1pZ2h0IGNvbnRhaW4gdW5kZXNpcmVkIGZpbGVzLiIKK21zZ3N0ciAiIgorIm5vIMOpcyBib25hIGlkZWEgZ2VuZXJhciB1biBwYXF1ZXQgZm9udCBzZW5zZSBuZXRlamFyLWxvIHByaW1lciwgcG9kcmlhICIKKyJjb250ZW5pciBmaXR4ZXJzIG5vIGRlc2l0amF0cy4iCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6NDAyCittc2dpZCAiUHJlc3MgdGhlIHJldHVybiBrZXkgdG8gc3RhcnQgc2lnbmluZyBwcm9jZXNzXG4iCittc2dzdHIgIlByZW1ldSBsYSB0ZWNsYSBkZSByZXRvcm4gcGVyIGEgY29tZW7Dp2FyIGVsIHByb2PDqXMgZGUgc2lnbmF0XG4iCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6NDA5Cittc2dpZCAiRmFpbGVkIHRvIHNpZ24gLmRzYyBhbmQgLmNoYW5nZXMgZmlsZSIKK21zZ3N0ciAiTm8gcydoYSBwb2d1dCBzaWduYXIgZWxzIGZpdHhlcnMgLmRzYyBpIC5jaGFuZ2VzIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjQyNCBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjQyOAorIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDo0NDEKK21zZ2lkICJ3cml0ZSBjaGFuZ2VzIGZpbGUiCittc2dzdHIgImVzY3JpdSB1biBmaXR4ZXIgZGUgY2FudmlzIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjQ0MAorbXNnaWQgImRwa2ctZ2VuY2hhbmdlcyIKK21zZ3N0ciAiZHBrZy1nZW5jaGFuZ2VzIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjQ0OQorbXNnaWQgInNvdXJjZSBvbmx5IHVwbG9hZDogRGViaWFuLW5hdGl2ZSBwYWNrYWdlIgorbXNnc3RyICJwdWphZGEgZGUgbm9tw6lzIGZvbnQ6IHBhcXVldCBuYWRpdSBkZSBEZWJpYW4iCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6NDUxCittc2dpZCAic291cmNlIG9ubHksIGRpZmYtb25seSB1cGxvYWQgKG9yaWdpbmFsIHNvdXJjZSBOT1QgaW5jbHVkZWQpIgorbXNnc3RyICJwdWphZGEgZGUgbm9tw6lzIGZvbnQsIG5vbcOpcyBkaWZmIChOTyBzJ2luY2xvdSBlbCBjb2RpIGZvbnQgb3JpZ2luYWwpIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjQ1MworbXNnaWQgInNvdXJjZSBvbmx5IHVwbG9hZCAob3JpZ2luYWwgc291cmNlIGlzIGluY2x1ZGVkKSIKK21zZ3N0ciAicHVqYWRhIGRlIG5vbcOpcyBmb250IChzJ2luY2xvdSBlbCBjb2RpIGZvbnQgb3JpZ2luYWwpIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjQ1NiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjQ2NAorbXNnaWQgImZ1bGwgdXBsb2FkIChvcmlnaW5hbCBzb3VyY2UgaXMgaW5jbHVkZWQpIgorbXNnc3RyICJwdWphZGEgc2VuY2VyYSAocydpbmNsb3UgZWwgY29kaSBmb250IG9yaWdpbmFsKSIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDo0NTgKK21zZ2lkICJiaW5hcnkgb25seSB1cGxvYWQgKG5vIHNvdXJjZSBpbmNsdWRlZCkiCittc2dzdHIgInB1amFkYSBkZSBub23DqXMgYmluYXJpcyAobm8gcydpbmNsb3UgZWwgY29kaSBmb250KSIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDo0NjAKK21zZ2lkICJmdWxsIHVwbG9hZDsgRGViaWFuLW5hdGl2ZSBwYWNrYWdlIChmdWxsIHNvdXJjZSBpcyBpbmNsdWRlZCkiCittc2dzdHIgInB1amFkYSBzZW5jZXJhOyBwYXF1ZXQgbmFkaXUgZGUgRGViaWFuIChzJ2luY2xvdSBlbCBjb2RpIGZvbnQgc2VuY2VyKSIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDo0NjIKK21zZ2lkICJiaW5hcnkgYW5kIGRpZmYgdXBsb2FkIChvcmlnaW5hbCBzb3VyY2UgTk9UIGluY2x1ZGVkKSIKK21zZ3N0ciAicHVqYWRhIGRlIGJpbmFyaXMgaSBkaWZmIChOTyBzJ2luY2xvdSBlbCBjb2RpIGZvbnQgb3JpZ2luYWwpIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjQ2OQorbXNnaWQgIkZhaWxlZCB0byBzaWduIC5jaGFuZ2VzIGZpbGUiCittc2dzdHIgIk5vIHMnaGEgcG9ndXQgc2lnbmFyIGVsIGZpdHhlciAuY2hhbmdlcyIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDo0ODgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRldGVybWluZSAlcyIKK21zZ3N0ciAibm8gZXMgcG90IGRldGVybWluYXIgJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1jaGVja2J1aWxkZGVwcy5wbDo0MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJVc2FnZTogJXMgWzxvcHRpb24+Li4uXSBbPGNvbnRyb2wtZmlsZT5dIgorbXNnc3RyICJGb3JtYSBkJ8O6czogJXMgWzxvcGNpw7M+4oCmXSBbPGZpdHhlci1jb250cm9sPl0iCisKKyM6IHNjcmlwdHMvZHBrZy1jaGVja2J1aWxkZGVwcy5wbDo0NAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLUIgICAgICAgICAgICAgYmluYXJ5LW9ubHksIGlnbm9yZSAtSW5kZXAuXG4iCisiICAtZCBidWlsZC1kZXBzICB1c2UgZ2l2ZW4gc3RyaW5nIGFzIGJ1aWxkIGRlcGVuZGVuY2llcyBpbnN0ZWFkIG9mXG4iCisiICAgICAgICAgICAgICAgICByZXRyaWV2aW5nIHRoZW0gZnJvbSBjb250cm9sIGZpbGVcbiIKKyIgIC1jIGJ1aWxkLWNvbmYgIHVzZSBnaXZlbiBzdHJpbmcgZm9yIGJ1aWxkIGNvbmZsaWN0cyBpbnN0ZWFkIG9mXG4iCisiICAgICAgICAgICAgICAgICByZXRyaWV2aW5nIHRoZW0gZnJvbSBjb250cm9sIGZpbGVcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT5cbiIKKyIgICAgICAgICAgICAgICAgIGNoYW5nZSB0aGUgYWRtaW5pc3RyYXRpdmUgZGlyZWN0b3J5LlxuIgorIiAgLWgsIC0taGVscCAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgICAgICAtLXZlcnNpb24gIHNob3cgdGhlIHZlcnNpb24uIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1jaGVja2J1aWxkZGVwcy5wbDo1NQorbXNnaWQgIiIKKyI8Y29udHJvbC1maWxlPiBpcyB0aGUgY29udHJvbCBmaWxlIHRvIHByb2Nlc3MgKGRlZmF1bHQ6IGRlYmlhbi9jb250cm9sKS4iCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLWNoZWNrYnVpbGRkZXBzLnBsOjEwNQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlczogVW5tZXQgYnVpbGQgZGVwZW5kZW5jaWVzOiAiCittc2dzdHIgIiVzOiBEZXBlbmTDqG5jaWVzIGRlIGNvbnN0cnVjY2nDsyBubyBzYXRpc2ZldGVzOiAiCisKKyM6IHNjcmlwdHMvZHBrZy1jaGVja2J1aWxkZGVwcy5wbDoxMDkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXM6IEJ1aWxkIGNvbmZsaWN0czogIgorbXNnc3RyICIlczogQ29uZmxpY3RlcyBkZSBjb25zdHJ1Y2Npw7M6ICIKKworIzogc2NyaXB0cy9kcGtnLWNoZWNrYnVpbGRkZXBzLnBsOjE4NCBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjI1MworIywgcGVybC1mb3JtYXQKK21zZ2lkICJlcnJvciBvY2N1cnJlZCB3aGlsZSBwYXJzaW5nICVzIgorbXNnc3RyICJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIGFuYWxpdHphciAlcyIKKworIzogc2NyaXB0cy9kcGtnLWRpc3RhZGRmaWxlLnBsOjM1Cittc2dpZCAiIgorIlxuIgorIkNvcHlyaWdodCAoQykgMTk5NiBJYW4gSmFja3Nvbi4iCittc2dzdHIgIiIKKyJcbiIKKyJDb3B5cmlnaHQgwqkgMTk5NiBJYW4gSmFja3Nvbi4iCisKKyM6IHNjcmlwdHMvZHBrZy1kaXN0YWRkZmlsZS5wbDo0NgorIywgZnV6enksIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4uLi5dIDxmaWxlbmFtZT4gPHNlY3Rpb24+IDxwcmlvcml0eT5cbiIKKyJcbiIKKyJPcHRpb25zOlxuIgorIiAgLWY8ZmlsZXNsaXN0ZmlsZT4gICAgICAgIHdyaXRlIGZpbGVzIGhlcmUgaW5zdGVhZCBvZiBkZWJpYW4vZmlsZXMuXG4iCisiICAtaCwgLS1oZWxwICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgICAgICAtLXZlcnNpb24gICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorbXNnc3RyICIiCisiRm9ybWEgZCfDunM6ICVzIFs8b3BjacOzPiDigKZdIFstLV0gWzxub20gZGlyZWN0b3JpPl1cbiIKKyJcbiIKKyJPcGNpb25zOlxuIgorIiAgLS11bnNhZmUgICAgIEVzdGFibGVpeCBhbGd1bmVzIG9wY2lvbnMgYWRkaWNpb25hbHMgcXVlIHBvZGVuIHNlciDDunRpbHMuXG4iCisiICAgICAgICAgICAgICAgQXbDrXM6IGFxdWVzdGEgb3BjacOzIHBvdCBlc3BhdGxsYXIgZml0eGVycyBlbiBib24gZXN0YXQuXG4iCisiICAtLWhlbHAgICAgICAgTW9zdHJhIGFxdWVzdCBtaXNzYXRnZSBkJ2FqdWRhLlxuIgorIiAgLS12ZXJzaW9uICAgIE1vc3RyYSBsYSB2ZXJzacOzLlxuIgorCisjOiBzY3JpcHRzL2Rwa2ctZGlzdGFkZGZpbGUucGw6NzIKK21zZ2lkICJuZWVkIGV4YWN0bHkgYSBmaWxlbmFtZSwgc2VjdGlvbiBhbmQgcHJpb3JpdHkiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLWRpc3RhZGRmaWxlLnBsOjc2Cittc2dpZCAiZmlsZW5hbWUsIHNlY3Rpb24gYW5kIHByaW9yaXR5IG1heSBjb250YWluIG5vIHdoaXRlc3BhY2UiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLWRpc3RhZGRmaWxlLnBsOjc5IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjMzNAorbXNnaWQgIm9wZW4gbmV3IGZpbGVzIGxpc3QgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctZGlzdGFkZGZpbGUucGw6ODQgc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MzQ1Cittc2dpZCAiY29weSBvbGQgZW50cnkgdG8gbmV3IGZpbGVzIGxpc3QgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctZGlzdGFkZGZpbGUucGw6ODcgc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MzQ5CisjLCBmdXp6eQorbXNnaWQgInJlYWQgb2xkIGZpbGVzIGxpc3QgZmlsZSIKK21zZ3N0ciAibm8gZXMgcG90IGVsaW1pbmFyIGxhIGxsaXN0YSBkZSBmaXR4ZXJzIGFudGlnYSIKKworIzogc2NyaXB0cy9kcGtnLWRpc3RhZGRmaWxlLnBsOjkwIHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjM1OQorbXNnaWQgIndyaXRlIG5ldyBlbnRyeSB0byBuZXcgZmlsZXMgbGlzdCBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1kaXN0YWRkZmlsZS5wbDo5MSBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDozNjAKKyMsIGZ1enp5Cittc2dpZCAiY2xvc2UgbmV3IGZpbGVzIGxpc3QgZmlsZSIKK21zZ3N0ciAibm8gZXMgcG90IHRhbmNhciBlbCBmaXR4ZXIgZCdhY3RpdmFkb3JzIGRlIGZpdHhlciBub3UgwqslLjI1MHPCuyIKKworIzogc2NyaXB0cy9kcGtnLWRpc3RhZGRmaWxlLnBsOjkzIHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjM2MQorIywgZnV6enkKK21zZ2lkICJpbnN0YWxsIG5ldyBmaWxlcyBsaXN0IGZpbGUiCittc2dzdHIgIiIKKyJubyBlcyBwb3QgaW5zdGHFgGxhciBlbCBmaXR4ZXIgZCdhY3RpdmFkb3JzIGRlIGZpdHhlciBub3UgY29tIGEgwqslLjI1MHPCuyIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6OTgKK21zZ2lkICIiCisiXG4iCisiQ29weXJpZ2h0IChDKSAxOTk2IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uIgorbXNnc3RyICIiCisiXG4iCisiQ29weXJpZ2h0IMKpIDE5OTYgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IMKpIDIwMDAsIDIwMDEgV2ljaGVydCBBa2tlcm1hbi4iCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjExMAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dXG4iCisiXG4iCisiT3B0aW9uczpcbiIKKyIgIC1iICAgICAgICAgICAgICAgICAgICAgICBiaW5hcnktb25seSBidWlsZCAtIG5vIHNvdXJjZSBmaWxlcy5cbiIKKyIgIC1CICAgICAgICAgICAgICAgICAgICAgICBhcmNoLXNwZWNpZmljIC0gbm8gc291cmNlIG9yIGFyY2gtaW5kZXAgZmlsZXMuXG4iCisiICAtQSAgICAgICAgICAgICAgICAgICAgICAgb25seSBhcmNoLWluZGVwIC0gbm8gc291cmNlIG9yIGFyY2gtc3BlY2lmaWMgIgorImZpbGVzLlxuIgorIiAgLVMgICAgICAgICAgICAgICAgICAgICAgIHNvdXJjZS1vbmx5IHVwbG9hZC5cbiIKKyIgIC1jPGNvbnRyb2xmaWxlPiAgICAgICAgICBnZXQgY29udHJvbCBpbmZvIGZyb20gdGhpcyBmaWxlLlxuIgorIiAgLWw8Y2hhbmdlbG9nZmlsZT4gICAgICAgIGdldCBwZXItdmVyc2lvbiBpbmZvIGZyb20gdGhpcyBmaWxlLlxuIgorIiAgLWY8ZmlsZXNsaXN0ZmlsZT4gICAgICAgIGdldCAuZGViIGZpbGVzIGxpc3QgZnJvbSB0aGlzIGZpbGUuXG4iCisiICAtdjxzaW5jZXZlcnNpb24+ICAgICAgICAgaW5jbHVkZSBhbGwgY2hhbmdlcyBsYXRlciB0aGFuIHZlcnNpb24uXG4iCisiICAtQzxjaGFuZ2VzZGVzY3JpcHRpb24+ICAgdXNlIGNoYW5nZSBkZXNjcmlwdGlvbiBmcm9tIHRoaXMgZmlsZS5cbiIKKyIgIC1tPG1haW50YWluZXI+ICAgICAgICAgICBvdmVycmlkZSBjb250cm9sJ3MgbWFpbnRhaW5lciB2YWx1ZS5cbiIKKyIgIC1lPG1haW50YWluZXI+ICAgICAgICAgICBvdmVycmlkZSBjaGFuZ2Vsb2cncyBtYWludGFpbmVyIHZhbHVlLlxuIgorIiAgLXU8dXBsb2FkZmlsZXNkaXI+ICAgICAgIGRpcmVjdG9yeSB3aXRoIGZpbGVzIChkZWZhdWx0IGlzIGAuLicpLlxuIgorIiAgLXNpIChkZWZhdWx0KSAgICAgICAgICAgIHNyYyBpbmNsdWRlcyBvcmlnIGlmIG5ldyB1cHN0cmVhbS5cbiIKKyIgIC1zYSAgICAgICAgICAgICAgICAgICAgICBzb3VyY2UgaW5jbHVkZXMgb3JpZyBzcmMuXG4iCisiICAtc2QgICAgICAgICAgICAgICAgICAgICAgc291cmNlIGlzIGRpZmYgYW5kIC5kc2Mgb25seS5cbiIKKyIgIC1xICAgICAgICAgICAgICAgICAgICAgICBxdWlldCAtIG5vIGluZm9ybWF0aW9uYWwgbWVzc2FnZXMgb24gc3RkZXJyLlxuIgorIiAgLUY8Y2hhbmdlbG9nZm9ybWF0PiAgICAgIGZvcmNlIGNoYW5nZSBsb2cgZm9ybWF0LlxuIgorIiAgLVY8bmFtZT49PHZhbHVlPiAgICAgICAgIHNldCBhIHN1YnN0aXR1dGlvbiB2YXJpYWJsZS5cbiIKKyIgIC1UPHZhcmxpc3RmaWxlPiAgICAgICAgICByZWFkIHZhcmlhYmxlcyBoZXJlLCBub3QgZGViaWFuL3N1YnN0dmFycy5cbiIKKyIgIC1EPGZpZWxkPj08dmFsdWU+ICAgICAgICBvdmVycmlkZSBvciBhZGQgYSBmaWVsZCBhbmQgdmFsdWUuXG4iCisiICAtVTxmaWVsZD4gICAgICAgICAgICAgICAgcmVtb3ZlIGEgZmllbGQuXG4iCisiICAtaCwgLS1oZWxwICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgICAgICAtLXZlcnNpb24gICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjE0OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlczogYXJjaC1zcGVjaWZpYyB1cGxvYWQgLSBub3QgaW5jbHVkaW5nIGFyY2gtaW5kZXBlbmRlbnQgcGFja2FnZXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6MTUyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzOiBhcmNoLWluZGVwIHVwbG9hZCAtIG5vdCBpbmNsdWRpbmcgYXJjaC1zcGVjaWZpYyBwYWNrYWdlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDoyMTkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidGhlIGN1cnJlbnQgdmVyc2lvbiAoJXMpIGlzIGVhcmxpZXIgdGhhbiB0aGUgcHJldmlvdXMgb25lICglcykiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6MjI2CisjLCBmdXp6eQorbXNnaWQgImNhbm5vdCByZWFkIGZpbGVzIGxpc3QgZmlsZSIKK21zZ3N0ciAibm8gZXMgcG90IGVsaW1pbmFyIGxhIGxsaXN0YSBkZSBmaXR4ZXJzIGFudGlnYSIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6MjMwCisjLCBmdXp6eSwgcGVybC1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgZmlsZXMgbGlzdCBlbnRyeSBmb3IgcGFja2FnZSAlcyAobGluZSAlZCkiCittc2dzdHIgIiIKKyJubyBlcyBwb3QgZmVyIMKrc3luY8K7IHNvYnJlIGVsIGZpdHhlciBkZSBubGlzdCBkZSBmaXR4ZXJzIGFjdHVhbGl0emF0cyBkZWwgIgorInBhcXVldCAlcyIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6MjM4IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjI1MgorIywgZnV6enksIHBlcmwtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIGZpbGVzIGxpc3QgZW50cnkgZm9yIGZpbGUgJXMgKGxpbmUgJWQpIgorbXNnc3RyICIiCisiaGkgaGEgdW4gZml0eGVyIGQnYWN0aXZhZG9ycyBpbnRlcmVzc2FudHMgZHVwbGljYXQgcGVyIGFsIGZpdHhlciDCqyUuMjUwc8K7IGkgIgorImVsIHBhcXVldCDCqyUuMjUwc8K7IgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDoyNTgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiYmFkbHkgZm9ybWVkIGxpbmUgaW4gZmlsZXMgbGlzdCBmaWxlLCBsaW5lICVkIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjI5OQorIywgZnV6enksIHBlcmwtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlcyBpbiBjb250cm9sIGZpbGUgYnV0IG5vdCBpbiBmaWxlcyBsaXN0IgorbXNnc3RyICJlbCBwYXF1ZXQgJXMgY29udMOpIMKrbGlzdMK7IGNvbSBhIGZpdHhlciBkJ2luZm9ybWFjacOzIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDozNDMKK21zZ2lkICJyZWFkIGNoYW5nZXNkZXNjcmlwdGlvbiIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDozNTEKKyMsIGZ1enp5LCBwZXJsLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgJXMgbGlzdGVkIGluIGZpbGVzIGxpc3QgYnV0IG5vdCBpbiBjb250cm9sIGluZm8iCittc2dzdHIgImVsIHBhcXVldCAlcyBubyDDqXMgYSBsYSBpbmZvcm1hY2nDsyBkZSBjb250cm9sIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDozNjMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibWlzc2luZyBTZWN0aW9uIGZvciBiaW5hcnkgcGFja2FnZSAlczsgdXNpbmcgJy0nIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjM2NQorIywgZnV6enksIHBlcmwtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlcyBoYXMgc2VjdGlvbiAlcyBpbiBjb250cm9sIGZpbGUgYnV0ICVzIGluIGZpbGVzIGxpc3QiCittc2dzdHIgImVsIHBhcXVldCAlcyBjb250w6kgwqtsaXN0wrsgY29tIGEgZml0eGVyIGQnaW5mb3JtYWNpw7MiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjM3MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJtaXNzaW5nIFByaW9yaXR5IGZvciBiaW5hcnkgcGFja2FnZSAlczsgdXNpbmcgJy0nIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjM3NAorIywgZnV6enksIHBlcmwtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlcyBoYXMgcHJpb3JpdHkgJXMgaW4gY29udHJvbCBmaWxlIGJ1dCAlcyBpbiBmaWxlcyBsaXN0IgorbXNnc3RyICJlbCBwYXF1ZXQgJXMgbm8gw6lzIGEgbGEgaW5mb3JtYWNpw7MgZGUgY29udHJvbCIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6Mzg2CisjLCBmdXp6eQorbXNnaWQgIm1pc3NpbmcgU2VjdGlvbiBmb3Igc291cmNlIGZpbGVzIgorbXNnc3RyICJtYW5jYSBpbmZvcm1hY2nDsyBwZXIgYWwgY2FtcCBkJ2VpeGlkYSAlcyIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6MzkxCisjLCBmdXp6eQorbXNnaWQgIm1pc3NpbmcgUHJpb3JpdHkgZm9yIHNvdXJjZSBmaWxlcyIKK21zZ3N0ciAibWFuY2EgaW5mb3JtYWNpw7MgcGVyIGFsIGNhbXAgZCdlaXhpZGEgJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjM5OCBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjM0NgorIzogc2NyaXB0cy9EcGtnL1ZlbmRvci5wbTo3MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBpcyBlbXB0eSIKK21zZ3N0ciAiJXMgw6lzIGJ1aXQiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjQyNAorbXNnaWQgIm5vdCBpbmNsdWRpbmcgb3JpZ2luYWwgc291cmNlIGNvZGUgaW4gdXBsb2FkIgorbXNnc3RyICJubyBzJ2VzdMOgIGluY2xvZW50IGVsIGNvZGkgZm9udCBvcmlnaW5hbCBhIGxhIHB1amFkYSIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6NDMxCittc2dpZCAiaWdub3JpbmcgLXNkIG9wdGlvbiBmb3IgbmF0aXZlIERlYmlhbiBwYWNrYWdlIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjQzMworbXNnaWQgImluY2x1ZGluZyBmdWxsIHNvdXJjZSBjb2RlIGluIHVwbG9hZCIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDo0MzYKKyMsIGZ1enp5Cittc2dpZCAiYmluYXJ5LW9ubHkgdXBsb2FkIC0gbm90IGluY2x1ZGluZyBhbnkgc291cmNlIGNvZGUiCittc2dzdHIgInB1amFkYSBkZSBub23DqXMgYmluYXJpcyAobm8gcydpbmNsb3UgZWwgY29kaSBmb250KSIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6NDQwCittc2dpZCAid3JpdGUgb3JpZ2luYWwgc291cmNlIG1lc3NhZ2UiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6NDk0IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbTo1MzIKKyMsIGZ1enp5LCBwZXJsLWZvcm1hdAorbXNnaWQgIm1pc3NpbmcgaW5mb3JtYXRpb24gZm9yIGNyaXRpY2FsIG91dHB1dCBmaWVsZCAlcyIKK21zZ3N0ciAibWFuY2EgaW5mb3JtYWNpw7MgcGVyIGFsIGNhbXAgZCdlaXhpZGEgJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjQ5OSBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDoyNzIKKyM6IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjI3NSBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG06NTM3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIm1pc3NpbmcgaW5mb3JtYXRpb24gZm9yIG91dHB1dCBmaWVsZCAlcyIKK21zZ3N0ciAibWFuY2EgaW5mb3JtYWNpw7MgcGVyIGFsIGNhbXAgZCdlaXhpZGEgJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjU4Cittc2dpZCAiIgorIlxuIgorIkNvcHlyaWdodCAoQykgMTk5NiBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMiBXaWNoZXJ0IEFra2VybWFuLiIKK21zZ3N0ciAiIgorIlxuIgorIkNvcHlyaWdodCDCqSAxOTk2IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCDCqSAyMDAwLCAyMDAyIFdpY2hlcnQgQWtrZXJtYW4uIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDo3MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dXG4iCisiXG4iCisiT3B0aW9uczpcbiIKKyIgIC1wPHBhY2thZ2U+ICAgICAgICAgICAgICBwcmludCBjb250cm9sIGZpbGUgZm9yIHBhY2thZ2UuXG4iCisiICAtYzxjb250cm9sZmlsZT4gICAgICAgICAgZ2V0IGNvbnRyb2wgaW5mbyBmcm9tIHRoaXMgZmlsZS5cbiIKKyIgIC1sPGNoYW5nZWxvZ2ZpbGU+ICAgICAgICBnZXQgcGVyLXZlcnNpb24gaW5mbyBmcm9tIHRoaXMgZmlsZS5cbiIKKyIgIC1GPGNoYW5nZWxvZ2Zvcm1hdD4gICAgICBmb3JjZSBjaGFuZ2UgbG9nIGZvcm1hdC5cbiIKKyIgIC12PGZvcmNldmVyc2lvbj4gICAgICAgICBzZXQgdmVyc2lvbiBvZiBiaW5hcnkgcGFja2FnZS5cbiIKKyIgIC1mPGZpbGVzbGlzdGZpbGU+ICAgICAgICB3cml0ZSBmaWxlcyBoZXJlIGluc3RlYWQgb2YgZGViaWFuL2ZpbGVzLlxuIgorIiAgLVA8cGFja2FnZWJ1aWxkZGlyPiAgICAgIHRlbXBvcmFyeSBidWlsZCBkaXIgaW5zdGVhZCBvZiBkZWJpYW4vdG1wLlxuIgorIiAgLW48ZmlsZW5hbWU+ICAgICAgICAgICAgIGFzc3VtZSB0aGUgcGFja2FnZSBmaWxlbmFtZSB3aWxsIGJlIDxmaWxlbmFtZT4uXG4iCisiICAtTyAgICAgICAgICAgICAgICAgICAgICAgd3JpdGUgdG8gc3Rkb3V0LCBub3QgLi4uL0RFQklBTi9jb250cm9sLlxuIgorIiAgLWlzLCAtaXAsIC1pc3AsIC1pcHMgICAgIGRlcHJlY2F0ZWQsIGlnbm9yZWQgZm9yIGNvbXBhdGliaWxpdHkuXG4iCisiICAtRDxmaWVsZD49PHZhbHVlPiAgICAgICAgb3ZlcnJpZGUgb3IgYWRkIGEgZmllbGQgYW5kIHZhbHVlLlxuIgorIiAgLVU8ZmllbGQ+ICAgICAgICAgICAgICAgIHJlbW92ZSBhIGZpZWxkLlxuIgorIiAgLVY8bmFtZT49PHZhbHVlPiAgICAgICAgIHNldCBhIHN1YnN0aXR1dGlvbiB2YXJpYWJsZS5cbiIKKyIgIC1UPHZhcmxpc3RmaWxlPiAgICAgICAgICByZWFkIHZhcmlhYmxlcyBoZXJlLCBub3QgZGViaWFuL3N1YnN0dmFycy5cbiIKKyIgIC1oLCAtLWhlbHAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgICAgIC0tdmVyc2lvbiAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6OTcgc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGw6MTE4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIklsbGVnYWwgcGFja2FnZSBuYW1lIGAlcyciCittc2dzdHIgIkVsIG5vbSBkZSBwYXF1ZXQgwqslc8K7IMOpcyBpbMK3bGVnYWwiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjE1MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJwYWNrYWdlICVzIG5vdCBpbiBjb250cm9sIGluZm8iCittc2dzdHIgImVsIHBhcXVldCAlcyBubyDDqXMgYSBsYSBpbmZvcm1hY2nDsyBkZSBjb250cm9sIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDoxNTYgc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGw6MTU5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIm11c3Qgc3BlY2lmeSBwYWNrYWdlIHNpbmNlIGNvbnRyb2wgaW5mbyBoYXMgbWFueSAoJXMpIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjE2MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJwYWNrYWdlICVzOiAiCittc2dzdHIgInBhcXVldCAlczogIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDoxODUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiYCVzJyBpcyBub3QgYSBsZWdhbCBhcmNoaXRlY3R1cmUgc3RyaW5nLiIKK21zZ2lkX3BsdXJhbCAiYCVzJyBhcmUgbm90IGxlZ2FsIGFyY2hpdGVjdHVyZSBzdHJpbmdzLiIKK21zZ3N0clswXSAiwqslc8K7IG5vIMOpcyB1bmEgY2FkZW5hIGQnYXJxdWl0ZWN0dXJhIHbDoGxpZGEuIgorbXNnc3RyWzFdICLCqyVzwrsgbm8gc8OzbiBjYWRlbmVzIGQnYXJxdWl0ZWN0dXJhIHbDoGxpZGVzIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDoxOTEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorImN1cnJlbnQgaG9zdCBhcmNoaXRlY3R1cmUgJyVzJyBkb2VzIG5vdCBhcHBlYXIgaW4gcGFja2FnZSdzIGFyY2hpdGVjdHVyZSAiCisibGlzdCAoJXMpIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjI0NgorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBmaWVsZCBvZiBwYWNrYWdlICVzOiAiCittc2dzdHIgImNhbXAgJXMgZGVsIHBhcXVldCAlczogIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDoyNTAgc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MjU4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImVycm9yIG9jY3VycmVkIHdoaWxlIHBhcnNpbmcgJXMgZmllbGQ6ICVzIgorbXNnc3RyICJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIGFuYWxpdHphciBlbCBjYW1wICVzOiAlcyIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MjYzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJ0aGUgJXMgZmllbGQgY29udGFpbnMgYW4gYXJjaC1zcGVjaWZpYyBkZXBlbmRlbmN5IGJ1dCB0aGUgcGFja2FnZSBpcyAiCisiYXJjaGl0ZWN0dXJlIGFsbCIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDoyODcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgcGFja2FnZSB3aXRoIHVkZWIgc3BlY2lmaWMgZmllbGQgJXMiCittc2dzdHIgInBhcXVldCAlcyBhbWIgY2FtcCBlc3BlY8OtZmljIGQndWRlYiAlcyIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MzAwIHNjcmlwdHMvZHBrZy1zY2Fuc291cmNlcy5wbDozMTMKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6ODM2IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvUGFyc2UucG06MTM4CisjOiBzY3JpcHRzL0Rwa2cvSVBDLnBtOjIyOSBzY3JpcHRzL0Rwa2cvU2hsaWJzL09iamR1bXAucG06MTgxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCBmb3JrIGZvciAlcyIKK21zZ3N0ciAibm8gZXMgcG90IGZlciDCq2ZvcmvCuyBwZXIgYSAlcyIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MzAzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNoZGlyIGZvciBkdSB0byBgJXMnIgorbXNnc3RyICLCq2NoZGlywrsgcGVyIGEgZHUgYSDCqyVzwrsiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjMwNSBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjg0MworIzogc2NyaXB0cy9EcGtnL0lQQy5wbToyNzEgc2NyaXB0cy9EcGtnL1NobGlicy9DcHBmaWx0LnBtOjUwCisjLCBmdXp6eSwgcGVybC1mb3JtYXQKKyN8IG1zZ2lkICJ1bmFibGUgdG8gZXhlY3V0ZSBjKytmaWx0IgorbXNnaWQgInVuYWJsZSB0byBleGVjdXRlICVzIgorbXNnc3RyICJubyBlcyBwb3QgZXhlY3V0YXIgZWwgYysrZmlsdCIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MzEyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImR1IGluIGAlcyciCittc2dzdHIgImR1IGVuIMKrJXPCuyIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MzE0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImR1IGdhdmUgdW5leHBlY3RlZCBvdXRwdXQgYCVzJyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDozNDcKKyMsIGZ1enp5Cittc2dpZCAiY2xvc2Ugb2xkIGZpbGVzIGxpc3QgZmlsZSIKK21zZ3N0ciAibm8gZXMgcG90IGVsaW1pbmFyIGxhIGxsaXN0YSBkZSBmaXR4ZXJzIGFudGlnYSIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MzY5CisjLCBmdXp6eSwgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgb3BlbiBuZXcgb3V0cHV0IGNvbnRyb2wgZmlsZSBgJXMnIgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IG9icmlyIGVsIG5vdSBmaXR4ZXIgZGUgc3RhdG92ZXJyaWRlIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDozNzggc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo1MjMKKyM6IHNjcmlwdHMvRHBrZy9JbnRlcmZhY2UvU3RvcmFibGUucG06OTEKKyM6IHNjcmlwdHMvRHBrZy9JbnRlcmZhY2UvU3RvcmFibGUucG06MTE5IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MjkwCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NjA3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCBjbG9zZSAlcyIKK21zZ3N0ciAibm8gZXMgcG90IHRhbmNhciAlcyIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MzgwCisjLCBmdXp6eSwgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3QgaW5zdGFsbCBvdXRwdXQgY29udHJvbCBmaWxlIGAlcyciCittc2dzdHIgImZpdHhlciBkZSBjb250cm9sIGJpbmFyaSAlcyIKKworIzogc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGw6NTEKK21zZ2lkICIiCisiXG4iCisiQ29weXJpZ2h0IChDKSAyMDA3IFJhcGhhZWwgSGVydHpvZy5cbiIKK21zZ3N0ciAiIgorIlxuIgorIkNvcHlyaWdodCDCqSAyMDA3IFJhcGhhZWwgSGVydHpvZy5cbiIKKworIzogc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGw6NjMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXVxuIgorIlxuIgorIk9wdGlvbnM6XG4iCisiICAtcDxwYWNrYWdlPiAgICAgICAgICAgICAgZ2VuZXJhdGUgc3ltYm9scyBmaWxlIGZvciBwYWNrYWdlLlxuIgorIiAgLVA8cGFja2FnZWJ1aWxkZGlyPiAgICAgIHRlbXBvcmFyeSBidWlsZCBkaXIgaW5zdGVhZCBvZiBkZWJpYW4vdG1wLlxuIgorIiAgLWU8bGlicmFyeT4gICAgICAgICAgICAgIGV4cGxpY2l0bHkgbGlzdCBsaWJyYXJpZXMgdG8gc2Nhbi5cbiIKKyIgIC12PHZlcnNpb24+ICAgICAgICAgICAgICB2ZXJzaW9uIG9mIHRoZSBwYWNrYWdlcyAoZGVmYXVsdHMgdG9cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICB2ZXJzaW9uIGV4dHJhY3RlZCBmcm9tIGRlYmlhbi9jaGFuZ2Vsb2cpLlxuIgorIiAgLWM8bGV2ZWw+ICAgICAgICAgICAgICAgIGNvbXBhcmUgZ2VuZXJhdGVkIHN5bWJvbHMgZmlsZSB3aXRoIHRoZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlZmVyZW5jZSB0ZW1wbGF0ZSBpbiB0aGUgZGViaWFuIGRpcmVjdG9yeVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGFuZCBmYWlsIGlmIGRpZmZlcmVuY2UgaXMgdG9vIGltcG9ydGFudFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIChsZXZlbCBnb2VzIGZyb20gMCBmb3Igbm8gY2hlY2ssIHRvIDRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgYWxsIGNoZWNrcykuIEJ5IGRlZmF1bHQgY2hlY2tzIGF0XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV2ZWwgMS5cbiIKKyIgIC1xICAgICAgICAgICAgICAgICAgICAgICBrZWVwIHF1aWV0IGFuZCBuZXZlciBlbWl0IGFueSB3YXJuaW5ncyBvclxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGdlbmVyYXRlIGEgZGlmZiBiZXR3ZWVuIGdlbmVyYXRlZCBzeW1ib2xzXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsZSBhbmQgdGhlIHJlZmVyZW5jZSB0ZW1wbGF0ZS5cbiIKKyIgIC1JPGZpbGU+ICAgICAgICAgICAgICAgICBmb3JjZSB1c2FnZSBvZiA8ZmlsZT4gYXMgcmVmZXJlbmNlIHN5bWJvbHNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxlIGluc3RlYWQgb2YgdGhlIGRlZmF1bHQgZmlsZS5cbiIKKyIgIC1PPGZpbGU+ICAgICAgICAgICAgICAgICB3cml0ZSB0byA8ZmlsZT4sIG5vdCAuLi4vREVCSUFOL3N5bWJvbHMuXG4iCisiICAtTyAgICAgICAgICAgICAgICAgICAgICAgd3JpdGUgdG8gc3Rkb3V0LCBub3QgLi4uL0RFQklBTi9zeW1ib2xzLlxuIgorIiAgLXQgICAgICAgICAgICAgICAgICAgICAgIHdyaXRlIGluIHRlbXBsYXRlIG1vZGUgKHRhZ3MgYXJlIG5vdFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHByb2Nlc3NlZCBhbmQgaW5jbHVkZWQgaW4gb3V0cHV0KS5cbiIKKyIgIC1WICAgICAgICAgICAgICAgICAgICAgICB2ZXJib3NlIG91dHB1dC4gV3JpdGUgZGVwcmVjYXRlZCBzeW1ib2xzIGFuZFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhdHRlcm4gbWF0Y2hpbmcgc3ltYm9scyBhcyBjb21tZW50c1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIChpbiB0ZW1wbGF0ZSBtb2RlIG9ubHkpLlxuIgorIiAgLWE8YXJjaD4gICAgICAgICAgICAgICAgIGFzc3VtZSA8YXJjaD4gYXMgaG9zdCBhcmNoaXRlY3R1cmUgd2hlbiAiCisicHJvY2Vzc2luZ1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHN5bWJvbCBmaWxlcy5cbiIKKyIgIC1kICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5IGRlYnVnIGluZm9ybWF0aW9uIGR1cmluZyB3b3JrLlxuIgorIiAgLWgsIC0taGVscCAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAgICAgLS12ZXJzaW9uICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbDoxOTQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiQ2FuJ3QgcmVhZCBkaXJlY3RvcnkgJXM6ICVzIgorbXNnc3RyICJObyBlcyBwb3QgbGxlZ2lyIGVsIGRpcmVjdG9yaSAlczogJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsOjIwOQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJPYmpkdW1wIGNvdWxkbid0IHBhcnNlICVzXG4iCittc2dzdHIgIk9iamR1bXAgbm8gaGEgcG9ndXQgYW5hbGl0emFyICVzXG4iCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsOjIyNworbXNnaWQgIjxzdGFuZGFyZCBvdXRwdXQ+IgorbXNnc3RyICI8ZWl4aWRhIGVzdMOgbmRhcmQ+IgorCisjOiBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbDoyNTUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibmV3IGxpYnJhcmllcyBhcHBlYXJlZCBpbiB0aGUgc3ltYm9scyBmaWxlOiAlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbDoyNjAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAic29tZSBsaWJyYXJpZXMgZGlzYXBwZWFyZWQgaW4gdGhlIHN5bWJvbHMgZmlsZTogJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGw6MjY1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInNvbWUgbmV3IHN5bWJvbHMgYXBwZWFyZWQgaW4gdGhlIHN5bWJvbHMgZmlsZTogJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGw6MjY2IHNjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsOjI3MQorbXNnaWQgInNlZSBkaWZmIG91dHB1dCBiZWxvdyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbDoyNzAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAic29tZSBzeW1ib2xzIG9yIHBhdHRlcm5zIGRpc2FwcGVhcmVkIGluIHRoZSBzeW1ib2xzIGZpbGU6ICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsOjI5MQorbXNnaWQgInRoZSBnZW5lcmF0ZWQgc3ltYm9scyBmaWxlIGlzIGVtcHR5IgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsOjI5MworIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBkb2Vzbid0IG1hdGNoIGNvbXBsZXRlbHkgJXMiCittc2dzdHIgIiVzIG5vIGNvbmNvcmRhIGNvbXBsZXRhbWVudCBhbWIgJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsOjI5NgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJubyBkZWJpYW4vc3ltYm9scyBmaWxlIHVzZWQgYXMgYmFzaXMgZm9yIGdlbmVyYXRpbmcgJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLW1lcmdlY2hhbmdlbG9ncy5wbDo1NQorbXNnaWQgIkNvcHlyaWdodCAoQykgMjAwOS0yMDEwIFJhcGhhZWwgSGVydHpvZy4iCittc2dzdHIgIkNvcHlyaWdodCDCqSAyMDA5LTIwMTAgUmFwaGFlbCBIZXJ0em9nLiIKKworIzogc2NyaXB0cy9kcGtnLW1lcmdlY2hhbmdlbG9ncy5wbDo1OAorbXNnaWQgIiIKKyJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAyIG9yXG4iCisibGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuXG4iCittc2dzdHIgIiIKKyJBcXVlc3Qgw6lzIHByb2dyYW1hcmkgbGxpdXJlOyB2ZWdldSBsYSBMbGljw6huY2lhIFDDumJsaWNhIEdlbmVyYWwgR05VIHZlcnNpw7MgMiAiCisibyBwb3N0ZXJpb3IgcGVyIGEgbGVzIGNvbmRpY2lvbnMgZGUgY8OycGlhLiBOTyBoaSBoYSBnYXJhbnRpYS5cbiIKKworIzogc2NyaXB0cy9kcGtnLW1lcmdlY2hhbmdlbG9ncy5wbDo2NQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIDxvbGQ+IDxuZXctYT4gPG5ldy1iPiBbPG91dD5dXG4iCisiXG4iCisiT3B0aW9uczpcbiIKKyIgIC0tbWVyZ2UtcHJlcmVsZWFzZXMsIC1tICBtZXJnZSBwcmUtcmVsZWFzZXMgdG9nZXRoZXIsIGlnbm9yZXMgZXZlcnl0aGluZ1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGFmdGVyIHRoZSBsYXN0ICd+JyBpbiB0aGUgdmVyc2lvbi5cbiIKKyIgIC0taGVscCwgLWgsIC0/ICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCittc2dzdHIgIiIKKyJGb3JtYSBkJ8O6czogJXMgWzxvcGNpw7M+IOKApl0gPGFudGljPiA8bm91LWE+IDxub3UtYj4gWzxlaXhpZGE+XVxuIgorIlxuIgorIk9wY2lvbnM6XG4iCisiICAtLW1lcmdlLXByZXJlbGVhc2VzLCAtbSAgZnVzaW9uYSBwcmVsbGFuw6dhbWVudHMsIG9tZXQgcXVhbHNldm9sIGNvc2FcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXNwcsOpcyBkZSBsJ8O6bHRpbSDCq37CuyBhIGxhIHZlcnNpw7MuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgbW9zdHJhIGFxdWVzdCBtaXNzYXRnZSBkJ2FqdWRhLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIG1vc3RyYSBsYSB2ZXJzacOzLlxuIgorCisjOiBzY3JpcHRzL2Rwa2ctbWVyZ2VjaGFuZ2Vsb2dzLnBsOjEyOSBzY3JpcHRzL2Rwa2ctbWVyZ2VjaGFuZ2Vsb2dzLnBsOjEzMQorIzogc2NyaXB0cy9EcGtnL0NvbXByZXNzaW9uL0ZpbGVIYW5kbGUucG06Mzg1CisjOiBzY3JpcHRzL0Rwa2cvSW50ZXJmYWNlL1N0b3JhYmxlLnBtOjExNSBzY3JpcHRzL0Rwa2cvSVBDLnBtOjI1NQorIzogc2NyaXB0cy9EcGtnL0lQQy5wbToyNjMgc2NyaXB0cy9EcGtnL1NvdXJjZS9GdW5jdGlvbnMucG06NzgKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbTo0NDcgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOjU1MAorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjIxNyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NTMwCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NjA1CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06MTQyCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06MTUxCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06MTU3CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06MjI2CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06MjM0CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06MzQxCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06MzUxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCB3cml0ZSAlcyIKK21zZ3N0ciAibm8gZXMgcG90IGVzY3JpdXJlICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctbmFtZS5wbDo1MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJVc2FnZTogJXMgWzxvcHRpb24+Li4uXSA8ZmlsZT4uLi5cbiIKK21zZ3N0ciAiRm9ybWEgZCfDunM6ICVzIFs8b3BjacOzPuKApl0gPGZpdHhlcj7igKZcbiIKKworIzogc2NyaXB0cy9kcGtnLW5hbWUucGw6NTMKK21zZ2lkICIiCisiXG4iCisiT3B0aW9uczpcbiIKKyIgIC1hLCAtLW5vLWFyY2hpdGVjdHVyZSAgICBubyBhcmNoaXRlY3R1cmUgcGFydCBpbiBmaWxlbmFtZS5cbiIKKyIgIC1vLCAtLW92ZXJ3cml0ZSAgICAgICAgICBvdmVyd3JpdGUgaWYgZmlsZSBleGlzdHMuXG4iCisiICAtaywgLS1zeW1saW5rICAgICAgICAgICAgZG9uJ3QgY3JlYXRlIGEgbmV3IGZpbGUsIGJ1dCBhIHN5bWxpbmsuXG4iCisiICAtcywgLS1zdWJkaXIgW2Rpcl0gICAgICAgbW92ZSBmaWxlIGludG8gc3ViZGlyICh1c2Ugd2l0aCBjYXJlKS5cbiIKKyIgIC1jLCAtLWNyZWF0ZS1kaXIgICAgICAgICBjcmVhdGUgdGFyZ2V0IGRpciBpZiBub3QgdGhlcmUgKHVzZSB3aXRoIGNhcmUpLlxuIgorIiAgLWgsIC0taGVscCAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtdiwgLS12ZXJzaW9uICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKKyJmaWxlLmRlYiBjaGFuZ2VzIHRvIDxwYWNrYWdlPl88dmVyc2lvbj5fPGFyY2hpdGVjdHVyZT4uPHBhY2thZ2VfdHlwZT5cbiIKKyJhY2NvcmRpbmcgdG8gdGhlICd1bmRlcnNjb3JlcyBjb252ZW50aW9uJy5cbiIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctbmFtZS5wbDo3NQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3QgZmluZCAnJXMnIgorbXNnc3RyICJubyBzJ2hhIHRyb2JhdCDCqyVzwrsiCisKKyM6IHNjcmlwdHMvZHBrZy1uYW1lLnBsOjk2IHNjcmlwdHMvRHBrZy9BcmNoLnBtOjEzOCBzY3JpcHRzL0Rwa2cvQXJjaC5wbToxNTcKKyM6IHNjcmlwdHMvRHBrZy9BcmNoLnBtOjE3NiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL1BhcnNlLnBtOjE0MgorIzogc2NyaXB0cy9EcGtnL0lQQy5wbToyNDcgc2NyaXB0cy9EcGtnL1NobGlicy5wbTo3OAorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOjE5MworIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgb3BlbiAlcyIKK21zZ3N0ciAibm8gZXMgcG90IG9icmlyICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctbmFtZS5wbDo5OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJiaW5hcnkgY29udHJvbCBmaWxlICVzIgorbXNnc3RyICJmaXR4ZXIgZGUgY29udHJvbCBiaW5hcmkgJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1uYW1lLnBsOjExMQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJhc3N1bWluZyBhcmNoaXRlY3R1cmUgJyVzJyBmb3IgJyVzJyIKK21zZ3N0ciAicydlc3TDoCBhc3N1bWludCBsJ2FycXVpdGVjdHVyYSDCqyVzwrsgcGVyIGEgwqslc8K7IgorCisjOiBzY3JpcHRzL2Rwa2ctbmFtZS5wbDoxMzMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiYmFkIHBhY2thZ2UgY29udHJvbCBpbmZvcm1hdGlvbiBmb3IgJyVzJyIKK21zZ3N0ciAiaW5mb3JtYWNpw7MgZGUgY29udHJvbCBkZWwgcGFxdWV0IGVycsOybmlhIHBlciBhIMKrJXPCuyIKKworIzogc2NyaXB0cy9kcGtnLW5hbWUucGw6MTQ5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImFzc3VtaW5nIHNlY3Rpb24gJyVzJyBmb3IgJyVzJyIKK21zZ3N0ciAicydlc3TDoCBhc3N1bWludCBsYSBzZWNjacOzIMKrJXPCuyBwZXIgYSDCqyVzwrsiCisKKyM6IHNjcmlwdHMvZHBrZy1uYW1lLnBsOjE3NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJubyBQYWNrYWdlIGZpZWxkIGZvdW5kIGluICclcycsIHNraXBwaW5nIGl0IgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1uYW1lLnBsOjE4NworIywgcGVybC1mb3JtYXQKK21zZ2lkICJjcmVhdGVkIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICJzJ2hhIGNyZWF0IGVsIGRpcmVjdG9yaSDCqyVzwrsiCisKKyM6IHNjcmlwdHMvZHBrZy1uYW1lLnBsOjE4OQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3QgY3JlYXRlIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICJubyBlcyBwb3QgY3JlYXIgZWwgZGlyZWN0b3JpIMKrJXPCuyIKKworIzogc2NyaXB0cy9kcGtnLW5hbWUucGw6MTkyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIm5vIHN1Y2ggZGlyZWN0b3J5ICclcycsIHRyeSAtLWNyZWF0ZS1kaXIgKC1jKSBvcHRpb24iCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLW5hbWUucGw6MjA3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInNraXBwaW5nICclcyciCittc2dzdHIgInMnZXN0w6Agb21ldGVudCDCqyVzwrsiCisKKyM6IHNjcmlwdHMvZHBrZy1uYW1lLnBsOjIwOQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3QgbW92ZSAnJXMnIHRvIGV4aXN0aW5nIGZpbGUiCittc2dzdHIgIm5vIGVzIHBvdCBtb3VyZSDCqyVzwrsgYSB1biBmaXR4ZXIgZXhpc3RlbnQiCisKKyM6IHNjcmlwdHMvZHBrZy1uYW1lLnBsOjIxMQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJtb3ZlZCAnJXMnIHRvICclcyciCittc2dzdHIgInMnaGEgbW9ndXQgwqslc8K7IGEgwqslc8K7IgorCisjOiBzY3JpcHRzL2Rwa2ctbmFtZS5wbDoyMTMKK21zZ2lkICJta2RpciBjYW4gYmUgdXNlZCB0byBjcmVhdGUgZGlyZWN0b3J5IgorbXNnc3RyICJlcyBwb3QgZW1wcmFyIG1rZGlyIHBlciBhIGNyZWFyIHVuIGRpcmVjdG9yaSIKKworIzogc2NyaXB0cy9kcGtnLW5hbWUucGw6MjE4Cittc2dpZCAibmVlZCBhdCBsZWFzdCBhIGZpbGVuYW1lIgorbXNnc3RyICJlcyBuZWNlc3NpdGEgYWxtZW55cyB1biBkaXJlY3RvcmkiCisKKyM6IHNjcmlwdHMvZHBrZy1wYXJzZWNoYW5nZWxvZy5wbDozMworbXNnaWQgIiIKKyJcbiIKKyJDb3B5cmlnaHQgKEMpIDE5OTYgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAxIFdpY2hlcnQgQWtrZXJtYW4iCittc2dzdHIgIiIKKyJcbiIKKyJDb3B5cmlnaHQgwqkgMTk5NiBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgwqkgMjAwMSBXaWNoZXJ0IEFra2VybWFuIgorCisjOiBzY3JpcHRzL2Rwa2ctcGFyc2VjaGFuZ2Vsb2cucGw6NDUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXVxuIgorIlxuIgorIk9wdGlvbnM6XG4iCisiICAtbDxjaGFuZ2Vsb2dmaWxlPiAgICAgICAgZ2V0IHBlci12ZXJzaW9uIGluZm8gZnJvbSB0aGlzIGZpbGUuXG4iCisiICAtRjxjaGFuZ2Vsb2dmb3JtYXQ+ICAgICAgZm9yY2UgY2hhbmdlIGxvZyBmb3JtYXQuXG4iCisiICAtTDxsaWJkaXI+ICAgICAgICAgICAgICAgbG9vayBmb3IgY2hhbmdlIGxvZyBwYXJzZXJzIGluIDxsaWJkaXI+LlxuIgorIiAgLWgsIC0taGVscCAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAgICAgLS12ZXJzaW9uICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKKyJwYXJzZXIgb3B0aW9uczpcbiIKKyIgICAgLS1mb3JtYXQgPG91dHB1dGZvcm1hdD4gICAgIHNlZSBtYW4gcGFnZSBmb3IgbGlzdCBvZiBhdmFpbGFibGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG91dHB1dCBmb3JtYXRzLCBkZWZhdWx0cyB0byAnZHBrZydcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvciBjb21wYXRpYmlsaXR5IHdpdGggZHBrZy1kZXZcbiIKKyIgICAgLS1zaW5jZSA8dmVyc2lvbj4sICAgICAgICAgIGluY2x1ZGUgYWxsIGNoYW5nZXMgbGF0ZXIgdGhhbiB2ZXJzaW9uXG4iCisiICAgICAgLXM8dmVyc2lvbj4sIC12PHZlcnNpb24+XG4iCisiICAgIC0tdW50aWwgPHZlcnNpb24+LCAgICAgICAgICBpbmNsdWRlIGFsbCBjaGFuZ2VzIGVhcmxpZXIgdGhhbiB2ZXJzaW9uXG4iCisiICAgICAgLXU8dmVyc2lvbj5cbiIKKyIgICAgLS1mcm9tIDx2ZXJzaW9uPiwgICAgICAgICAgIGluY2x1ZGUgYWxsIGNoYW5nZXMgZXF1YWwgb3IgbGF0ZXJcbiIKKyIgICAgICAtZjx2ZXJzaW9uPiAgICAgICAgICAgICAgIHRoYW4gdmVyc2lvblxuIgorIiAgICAtLXRvIDx2ZXJzaW9uPiwgLXQ8dmVyc2lvbj4gaW5jbHVkZSBhbGwgY2hhbmdlcyB1cCB0byBvciBlcXVhbFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhhbiB2ZXJzaW9uXG4iCisiICAgIC0tY291bnQgPG51bWJlcj4sICAgICAgICAgICBpbmNsdWRlIDxudW1iZXI+IGVudHJpZXMgZnJvbSB0aGUgdG9wXG4iCisiICAgICAgLWM8bnVtYmVyPiwgLW48bnVtYmVyPiAgICAob3IgdGhlIHRhaWwgaWYgPG51bWJlcj4gaXMgbG93ZXIgdGhhbiAwKVxuIgorIiAgICAtLW9mZnNldCA8bnVtYmVyPiwgICAgICAgICAgY2hhbmdlIHRoZSBzdGFydGluZyBwb2ludCBmb3IgLS1jb3VudCxcbiIKKyIgICAgICAtbzxudW1iZXI+ICAgICAgICAgICAgICAgIGNvdW50ZWQgZnJvbSB0aGUgdG9wIChvciB0aGUgdGFpbCBpZlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG51bWJlcj4gaXMgbG93ZXIgdGhhbiAwKVxuIgorIiAgICAtLWFsbCAgICAgICAgICAgICAgICAgICAgICAgaW5jbHVkZSBhbGwgY2hhbmdlc1xuIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1wYXJzZWNoYW5nZWxvZy5wbDoxMTcKKyMsIGZ1enp5CisjfCBtc2dpZCAiJXMgdGFrZXMgbm8gbm9uLW9wdGlvbiBhcmd1bWVudHMiCittc2dpZCAidGFrZXMgbm8gbm9uLW9wdGlvbiBhcmd1bWVudHMiCittc2dzdHIgIiVzIG5vIGFjY2VwdGEgY2FwIGFyZ3VtZW50IHF1ZSBubyBzaWd1ZW4gb3BjaW9ucyIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDo2NgorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIDxiaW5hcnlwYXRoPiBbPG92ZXJyaWRlZmlsZT4gWzxwYXRocHJlZml4Pl1dID4gIgorIlBhY2thZ2VzXG4iCisiXG4iCisiT3B0aW9uczpcbiIKKyIgIC10LCAtLXR5cGUgPHR5cGU+ICAgICAgICBzY2FuIGZvciA8dHlwZT4gcGFja2FnZXMgKGRlZmF1bHQgaXMgJ2RlYicpLlxuIgorIiAgLXUsIC0tdWRlYiAgICAgICAgICAgICAgIHNjYW4gZm9yIHVkZWJzIChvYnNvbGV0ZSBhbGlhcyBmb3IgLXR1ZGViKS5cbiIKKyIgIC1hLCAtLWFyY2ggPGFyY2g+ICAgICAgICBhcmNoaXRlY3R1cmUgdG8gc2NhbiBmb3IuXG4iCisiICAtbSwgLS1tdWx0aXZlcnNpb24gICAgICAgYWxsb3cgbXVsdGlwbGUgdmVyc2lvbnMgb2YgYSBzaW5nbGUgcGFja2FnZS5cbiIKKyIgIC1lLCAtLWV4dHJhLW92ZXJyaWRlIDxmaWxlPlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzZSBleHRyYSBvdmVycmlkZSBmaWxlLlxuIgorIiAgLU0sIC0tbWVkaXVtIDxtZWRpdW0+ICAgIGFkZCBYLU1lZGl1bSBmaWVsZCBmb3IgZHNlbGVjdCBtdWx0aWNkIGFjY2VzcyAiCisibWV0aG9kXG4iCisiICAtaCwgLS1oZWxwICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgICAgICAtLXZlcnNpb24gICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6ODMKK21zZ2lkICItdSwgLS11ZGViIG9wdGlvbiBpcyBkZXByZWNhdGVkIChzZWUgUkVBRE1FLmZlYXR1cmUtcmVtb3ZhbC1zY2hlZHVsZSkiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoxMTIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiICAlcyAocGFja2FnZSBzYXlzICVzLCBub3QgJXMpIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6MTIwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIlVuY29uZGl0aW9uYWwgbWFpbnRhaW5lciBvdmVycmlkZSBmb3IgJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoxNTggc2NyaXB0cy9kcGtnLXNjYW5zb3VyY2VzLnBsOjMwMgorbXNnaWQgIm9uZSB0byB0aHJlZSBhcmd1bWVudHMgZXhwZWN0ZWQiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoxNzUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiQmluYXJ5IGRpciAlcyBub3QgZm91bmQiCittc2dzdHIgIk5vIHMnaGEgdHJvYmF0IGVsIGRpciBiaW5hcmkgJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6MTc3CisjLCBmdXp6eSwgcGVybC1mb3JtYXQKK21zZ2lkICJPdmVycmlkZSBmaWxlICVzIG5vdCBmb3VuZCIKK21zZ3N0ciAiZHBrZzogJXMgbm8gdHJvYmF0LlxuIgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOjE4MworIywgZnV6enksIHBlcmwtZm9ybWF0Cittc2dpZCAiQ291bGRuJ3Qgb3BlbiAlcyBmb3IgcmVhZGluZyIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBvYnJpciDCqyVpwrsgcGVyIGEgdW4gZmx1eCIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoxOTMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY291bGRuJ3QgcGFyc2UgY29udHJvbCBpbmZvcm1hdGlvbiBmcm9tICVzLiIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBhbmFsaXR6YXIgbGEgaW5mb3JtYWNpw7MgZGUgY29udHJvbCBkZSAlcy4iCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6MTk2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImBkcGtnLWRlYiAtSSAlcyBjb250cm9sJyBleGl0ZWQgd2l0aCAlZCwgc2tpcHBpbmcgcGFja2FnZSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOjIwMgorIywgZnV6enksIHBlcmwtZm9ybWF0Cittc2dpZCAiTm8gUGFja2FnZSBmaWVsZCBpbiBjb250cm9sIGZpbGUgb2YgJXMiCittc2dzdHIgImZpdHhlciBkZSBjb250cm9sIGZvbnQgJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6MjEwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgJXMgKGZpbGVuYW1lICVzKSBpcyByZXBlYXQgYnV0IG5ld2VyIHZlcnNpb247IgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6MjEyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVzZWQgdGhhdCBvbmUgYW5kIGlnbm9yZWQgZGF0YSBmcm9tICVzISIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOjIxNgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJQYWNrYWdlICVzIChmaWxlbmFtZSAlcykgaXMgcmVwZWF0OyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOjIxNworIywgcGVybC1mb3JtYXQKK21zZ2lkICJpZ25vcmVkIHRoYXQgb25lIGFuZCB1c2luZyBkYXRhIGZyb20gJXMhIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6MjIzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgJXMgKGZpbGVuYW1lICVzKSBoYXMgRmlsZW5hbWUgZmllbGQhIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6MjU1CisjLCBmdXp6eQorbXNnaWQgIkZhaWxlZCB3aGVuIHdyaXRpbmcgc3Rkb3V0IgorbXNnc3RyICJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIGVzY3JpdXJlIGxhIHNvcnRpZGEgZXN0w6BuZGFyZDogJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6MjU5CisjLCBmdXp6eQorbXNnaWQgIkNvdWxkbid0IGNsb3NlIHN0ZG91dCIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBhbmFsaXR6YXIgbGEgZGF0YSAlcyIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoyNjIKK21zZ2lkICJQYWNrYWdlcyBpbiBvdmVycmlkZSBmaWxlIHdpdGggaW5jb3JyZWN0IG9sZCBtYWludGFpbmVyIHZhbHVlOiIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOjI2NgorbXNnaWQgIlBhY2thZ2VzIHNwZWNpZnlpbmcgc2FtZSBtYWludGFpbmVyIGFzIG92ZXJyaWRlIGZpbGU6IgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6MjcwCittc2dpZCAiUGFja2FnZXMgaW4gYXJjaGl2ZSBidXQgbWlzc2luZyBmcm9tIG92ZXJyaWRlIGZpbGU6IgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6Mjc0Cittc2dpZCAiUGFja2FnZXMgaW4gb3ZlcnJpZGUgZmlsZSBidXQgbm90IGluIGFyY2hpdmU6IgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6Mjc4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIldyb3RlICVzIGVudHJpZXMgdG8gb3V0cHV0IFBhY2thZ2VzIGZpbGUuIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2Fuc291cmNlcy5wbDo4NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIDxiaW5hcnlwYXRoPiBbPG92ZXJyaWRlZmlsZT4gWzxwYXRocHJlZml4Pl1dID4gIgorIlNvdXJjZXNcbiIKKyJcbiIKKyJPcHRpb25zOlxuIgorIiAgLW4sIC0tbm8tc29ydCAgICAgICAgICAgIGRvbid0IHNvcnQgYnkgcGFja2FnZSBiZWZvcmUgb3V0cHV0dGluZy5cbiIKKyIgIC1lLCAtLWV4dHJhLW92ZXJyaWRlIDxmaWxlPlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzZSBleHRyYSBvdmVycmlkZSBmaWxlLlxuIgorIiAgLXMsIC0tc291cmNlLW92ZXJyaWRlIDxmaWxlPlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzZSBmaWxlIGZvciBhZGRpdGlvbmFsIHNvdXJjZSBvdmVycmlkZXMsICIKKyJkZWZhdWx0XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgaXMgcmVndWxhciBvdmVycmlkZSBmaWxlIHdpdGggLnNyYyBhcHBlbmRlZC5cbiIKKyIgICAgICAtLWRlYnVnICAgICAgICAgICAgICB0dXJuIGRlYnVnZ2luZyBvbi5cbiIKKyIgICAgICAtLWhlbHAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgICAgIC0tdmVyc2lvbiAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCisiU2VlIHRoZSBtYW4gcGFnZSBmb3IgdGhlIGZ1bGwgZG9jdW1lbnRhdGlvbi5cbiIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnNvdXJjZXMucGw6MTA1CisjLCBmdXp6eSwgcGVybC1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nICVzICgkPyAlZCwgJCEgYCVzJykiCittc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZW4gdGFuY2FyICVzOiAoJD8gJWQsICQhIMKrJXPCuykiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2Fuc291cmNlcy5wbDoxMjEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBvdmVycmlkZSBlbnRyeSBhdCBsaW5lICVkICglZCBmaWVsZHMpIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2Fuc291cmNlcy5wbDoxMjcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgZHVwbGljYXRlIG92ZXJyaWRlIGVudHJ5IGZvciAlcyBhdCBsaW5lICVkIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2Fuc291cmNlcy5wbDoxMzIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiaWdub3Jpbmcgb3ZlcnJpZGUgZW50cnkgZm9yICVzLCBpbnZhbGlkIHByaW9yaXR5ICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2Fuc291cmNlcy5wbDoxODYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBzb3VyY2Ugb3ZlcnJpZGUgZW50cnkgYXQgbGluZSAlZCAoJWQgZmllbGRzKSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnNvdXJjZXMucGw6MTk0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nIGR1cGxpY2F0ZSBzb3VyY2Ugb3ZlcnJpZGUgZW50cnkgZm9yICVzIGF0IGxpbmUgJWQiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5zb3VyY2VzLnBsOjI0NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJubyBiaW5hcnkgcGFja2FnZXMgc3BlY2lmaWVkIGluICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6OTMKKyMsIGZ1enp5LCBwZXJsLWZvcm1hdAorbXNnaWQgImFkbWluaXN0cmF0aXZlIGRpcmVjdG9yeSAnJXMnIGRvZXMgbm90IGV4aXN0IgorbXNnc3RyICJlbCBjYW3DrSBkZSBsJ2FsdGVybmF0aXZhICVzIG5vIGV4aXN0ZWl4LiIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo5OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bnJlY29nbmlzZWQgZGVwZW5kZW5jeSBmaWVsZCBgJXMnIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6MTMyCisjLCBmdXp6eQorbXNnaWQgIm5lZWQgYXQgbGVhc3Qgb25lIGV4ZWN1dGFibGUiCittc2dzdHIgImVzIG5lY2Vzc2l0YSBhbG1lbnlzIHVuIGRpcmVjdG9yaSIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDoxNzUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY291bGRuJ3QgZmluZCBsaWJyYXJ5ICVzIG5lZWRlZCBieSAlcyAoRUxGIGZvcm1hdDogJyVzJzsgUlBBVEg6ICclcycpLiIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjI2MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBoYXMgYW4gdW5leHBlY3RlZCBTT05BTUUgKCVzKSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjI4MworIywgcGVybC1mb3JtYXQKK21zZ2lkICJubyBkZXBlbmRlbmN5IGluZm9ybWF0aW9uIGZvdW5kIGZvciAlcyAodXNlZCBieSAlcykuIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6MzE0Cittc2dpZCAiIgorImJpbmFyaWVzIHRvIGFuYWx5emUgc2hvdWxkIGFscmVhZHkgYmUgaW5zdGFsbGVkIGluIHRoZWlyIHBhY2thZ2UncyBkaXJlY3RvcnkuIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6MzU3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInN5bWJvbCAlcyB1c2VkIGJ5ICVzIGZvdW5kIGluIG5vbmUgb2YgdGhlIGxpYnJhcmllcy4iCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDozNjAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIiVzIGNvbnRhaW5zIGFuIHVucmVzb2x2YWJsZSByZWZlcmVuY2UgdG8gc3ltYm9sICVzOiBpdCdzIHByb2JhYmx5IGEgcGx1Z2luLiIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjM4MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlZCBzaW1pbGFyIHdhcm5pbmcgaGFzIGJlZW4gc2tpcHBlZCAodXNlIC12IHRvIHNlZSBpdCkuIgorbXNnaWRfcGx1cmFsICIiCisiJWQgb3RoZXIgc2ltaWxhciB3YXJuaW5ncyBoYXZlIGJlZW4gc2tpcHBlZCAodXNlIC12IHRvIHNlZSB0aGVtIGFsbCkuIgorbXNnc3RyWzBdICIiCittc2dzdHJbMV0gIiIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo0MDkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgc2hvdWxkbid0IGJlIGxpbmtlZCB3aXRoICVzIChpdCB1c2VzIG5vbmUgb2YgaXRzIHN5bWJvbHMpLiIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjQyMgorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiZGVwZW5kZW5jeSBvbiAlcyBjb3VsZCBiZSBhdm9pZGVkIGlmIFwiJXNcIiB3ZXJlIG5vdCB1c2VsZXNzbHkgbGlua2VkICIKKyJhZ2FpbnN0IGl0ICh0aGV5IHVzZSBub25lIG9mIGl0cyBzeW1ib2xzKS4iCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo0MzEKK21zZ2lkICIiCisiTm90ZTogbGlicmFyaWVzIGFyZSBub3Qgc2VhcmNoZWQgaW4gb3RoZXIgYmluYXJ5IHBhY2thZ2VzIHRoYXQgZG8gbm90IGhhdmUgIgorImFueSBzaGxpYnMgb3Igc3ltYm9scyBmaWxlLlxuIgorIlRvIGhlbHAgZHBrZy1zaGxpYmRlcHMgZmluZCBwcml2YXRlIGxpYnJhcmllcywgeW91IG1pZ2h0IG5lZWQgdG8gc2V0ICIKKyJMRF9MSUJSQVJZX1BBVEguIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6NDM0Cittc2dpZCAiQ2Fubm90IGNvbnRpbnVlIGR1ZSB0byB0aGUgZXJyb3IgYWJvdmUuIgorbXNnaWRfcGx1cmFsICJDYW5ub3QgY29udGludWUgZHVlIHRvIHRoZSBlcnJvcnMgbGlzdGVkIGFib3ZlLiIKK21zZ3N0clswXSAiIgorbXNnc3RyWzFdICIiCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6NDQ1CisjLCBmdXp6eSwgcGVybC1mb3JtYXQKK21zZ2lkICJvcGVuIG5ldyBzdWJzdHZhcnMgZmlsZSBgJXMnIgorbXNnc3RyICJubyBlcyBwb3Qgb2JyaXIgZWwgZml0eGVyIGRlIGRpcMOyc2l0IG5vdSDCqyUuMjUwc8K7IgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjQ0OAorIywgZnV6enksIHBlcmwtZm9ybWF0Cittc2dpZCAib3BlbiBvbGQgdmFybGlzdCBmaWxlIGAlcycgZm9yIHJlYWRpbmciCittc2dzdHIgIiIKKyJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIG9icmlyIHBlciBhIGxlY3R1cmEgZWwgZml0eGVyIGQnaW5mb3JtYWNpw7MgZGVsICIKKyJwYXF1ZXQgwqslLjI1NXPCuyIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo0NTEKKyMsIGZ1enp5LCBwZXJsLWZvcm1hdAorbXNnaWQgImNvcHkgb2xkIGVudHJ5IHRvIG5ldyB2YXJsaXN0IGZpbGUgYCVzJyIKK21zZ3N0ciAiJXM6IG5vIGhpIGhhIGNhcCBlbnRyYWRhIHBlciBhbCBmaXR4ZXIgwqslc8K7IgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjUxNQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGRlcGVuZGVuY3kgZ290IGdlbmVyYXRlZDogJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo1MjUKKyMsIGZ1enp5LCBwZXJsLWZvcm1hdAorbXNnaWQgImluc3RhbGwgbmV3IHZhcmxpc3QgZmlsZSBgJXMnIgorbXNnc3RyICJpbnN0YcWAbGEgZWwgbm91IGRpdmVyc2lvbnM6ICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjUzNQorbXNnaWQgIiIKKyJcbiIKKyJDb3B5cmlnaHQgKEMpIDE5OTYgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDA2IEZyYW5rIExpY2h0ZW5oZWxkLlxuIgorIkNvcHlyaWdodCAoQykgMjAwNyBSYXBoYWVsIEhlcnR6b2cuXG4iCittc2dzdHIgIiIKKyJcbiIKKyJDb3B5cmlnaHQgwqkgMTk5NiBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgwqkgMjAwMCBXaWNoZXJ0IEFra2VybWFuLlxuIgorIkNvcHlyaWdodCDCqSAyMDA2IEZyYW5rIExpY2h0ZW5oZWxkLlxuIgorIkNvcHlyaWdodCDCqSAyMDA3IFJhcGhhZWwgSGVydHpvZy5cbiIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo1NTAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSA8ZXhlY3V0YWJsZT58LWU8ZXhlY3V0YWJsZT4gWzxvcHRpb24+IC4uLl1cbiIKKyJcbiIKKyJQb3NpdGlvbmFsIG9wdGlvbnMgKG9yZGVyIGlzIHNpZ25pZmljYW50KTpcbiIKKyIgIDxleGVjdXRhYmxlPiAgICAgICAgICAgICBpbmNsdWRlIGRlcGVuZGVuY2llcyBmb3IgPGV4ZWN1dGFibGU+LFxuIgorIiAgLWU8ZXhlY3V0YWJsZT4gICAgICAgICAgICh1c2UgLWUgaWYgPGV4ZWN1dGFibGU+IHN0YXJ0cyB3aXRoIGAtJylcbiIKKyIgIC1kPGRlcGVuZGVuY3lmaWVsZD4gICAgICBuZXh0IGV4ZWN1dGFibGUocykgc2V0IHNobGliczo8ZGVwZW5kZW5jeWZpZWxkPi5cbiIKKyJcbiIKKyJPcHRpb25zOlxuIgorIiAgLXA8dmFybmFtZXByZWZpeD4gICAgICAgIHNldCA8dmFybmFtZXByZWZpeD46KiBpbnN0ZWFkIG9mIHNobGliczoqLlxuIgorIiAgLU8gICAgICAgICAgICAgICAgICAgICAgIHByaW50IHZhcmlhYmxlIHNldHRpbmdzIHRvIHN0ZG91dC5cbiIKKyIgIC1MPGxvY2Fsc2hsaWJzZmlsZT4gICAgICBzaGxpYnMgb3ZlcnJpZGUgZmlsZSwgbm90IGRlYmlhbi9zaGxpYnMubG9jYWwuXG4iCisiICAtVDx2YXJsaXN0ZmlsZT4gICAgICAgICAgdXBkYXRlIHZhcmlhYmxlcyBoZXJlLCBub3QgZGViaWFuL3N1YnN0dmFycy5cbiIKKyIgIC10PHR5cGU+ICAgICAgICAgICAgICAgICBzZXQgcGFja2FnZSB0eXBlIChkZWZhdWx0IGlzIGRlYikuXG4iCisiICAteDxwYWNrYWdlPiAgICAgICAgICAgICAgZXhjbHVkZSBwYWNrYWdlIGZyb20gdGhlIGdlbmVyYXRlZCBkZXBlbmRlbmNpZXMuXG4iCisiICAtUzxwa2didWlsZGRpcj4gICAgICAgICAgc2VhcmNoIG5lZWRlZCBsaWJyYXJpZXMgaW4gdGhlIGdpdmVuXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFja2FnZSBidWlsZCBkaXJlY3RvcnkgZmlyc3QuXG4iCisiICAtdiAgICAgICAgICAgICAgICAgICAgICAgZW5hYmxlIHZlcmJvc2UgbW9kZSAoY2FuIGJlIHVzZWQgbXVsdGlwbGUgIgorInRpbWVzKS5cbiIKKyIgIC0taWdub3JlLW1pc3NpbmctaW5mbyAgICBkb24ndCBmYWlsIGlmIGRlcGVuZGVuY3kgaW5mb3JtYXRpb24gY2FuJ3QgYmUgIgorImZvdW5kLlxuIgorIiAgLS13YXJuaW5ncz08dmFsdWU+ICAgICAgIGRlZmluZSBzZXQgb2YgYWN0aXZlIHdhcm5pbmdzIChzZWUgbWFudWFsIHBhZ2UpLlxuIgorIiAgLS1hZG1pbmRpcj08ZGlyZWN0b3J5PiAgIGNoYW5nZSB0aGUgYWRtaW5pc3RyYXRpdmUgZGlyZWN0b3J5LlxuIgorIiAgLWgsIC0taGVscCAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAgICAgLS12ZXJzaW9uICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKKyJEZXBlbmRlbmN5IGZpZWxkcyByZWNvZ25pc2VkIGFyZTpcbiIKKyIgICVzXG4iCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo2NzcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiQ2FuJ3QgZXh0cmFjdCBuYW1lIGFuZCB2ZXJzaW9uIGZyb20gbGlicmFyeSBuYW1lIGAlcyciCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo2ODQKKyMsIGZ1enp5LCBwZXJsLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIHNoYXJlZCBsaWJzIGluZm8gZmlsZSBgJXMnIgorbXNnc3RyICIiCisibm8gZXMgcG90IG9icmlyIGVsIGZpdHhlciBkJ2luZm9ybWFjacOzIGRlIGNvbnRyb2wgZGVscyBhY3RpdmFkb3JzIMKrJS4yNTBzwrsiCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6NjkwCisjLCBmdXp6eSwgcGVybC1mb3JtYXQKK21zZ2lkICJzaGFyZWQgbGlicyBpbmZvIGZpbGUgYCVzJyBsaW5lICVkOiBiYWQgbGluZSBgJXMnIgorbXNnc3RyICJlcnJvciBkJ2Fuw6BsaXNpLCBhbCBmaXR4ZXIgwqslLjI1NXPCuyBwcm9wIGRlIGxhIGzDrW5pYSAlZCIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo3NDkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IG9wZW4gZmlsZSAlcyIKK21zZ3N0ciAibm8gZXMgcG90IG9icmlyIGVsIGZpdHhlciAlcyIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo3ODMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIiRPUklHSU4gaXMgdXNlZCBpbiBSUEFUSCBvZiAlcyBhbmQgdGhlIGNvcnJlc3BvbmRpbmcgZGlyZWN0b3J5IGNvdWxkIG5vdCBiZSAiCisiaWRlbnRpZmllZCBkdWUgdG8gbGFjayBvZiBERUJJQU4gc3ViLWRpcmVjdG9yeSBpbiB0aGUgcm9vdCBvZiBwYWNrYWdlJ3MgIgorImJ1aWxkIHRyZWUiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo4NDgKK21zZ2lkICJkaXZlcnNpb25zIGludm9sdmVkIC0gb3V0cHV0IG1heSBiZSBpbmNvcnJlY3QiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo4NTAKKyMsIGZ1enp5Cittc2dpZCAid3JpdGUgZGl2ZXJzaW9uIGluZm8gdG8gc3RkZXJyIgorbXNnc3RyICJlc2NyaXUgZWwgZGl2ZXJzaW9ucy1uZXc6ICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjg1NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG91dHB1dCBmcm9tIGRwa2cgLS1zZWFyY2g6ICclcyciCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDoxMDQKKyMsIGZ1enp5LCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIG5lZWRzIGEgZGlyZWN0b3J5IgorbXNnc3RyICItLSVzIG5lY2Vzc2l0YSB1biA8ZGlyZWN0b3JpPiBjb20gYSBwYXLDoG1ldHJlIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjExMAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc3RhdCBkaXJlY3RvcnkgJXMiCittc2dzdHIgIm5vIGVzIHBvdCBmZXIgwqtzdGF0wrsgc29icmUgZWwgZml0eGVyICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjExMgorIywgZnV6enksIHBlcmwtZm9ybWF0Cittc2dpZCAiZGlyZWN0b3J5IGFyZ3VtZW50ICVzIGlzIG5vdCBhIGRpcmVjdG9yeSIKK21zZ3N0ciAiZWwgZGlyZWN0b3JpIGRlIGNvbnRyb2wgbm8gw6lzIHVuIGRpcmVjdG9yaSIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDoxMTcgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjQ3NgorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjQ3OCBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NDgwCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NDgyCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvYnpyLnBtOjExMQorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2J6ci5wbToxMzQKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9ienIucG06MTk4CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvYnpyLnBtOjIwNAorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2dpdC5wbToxMDQKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9naXQucG06MTQzCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvZ2l0LnBtOjE1NQorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2dpdC5wbToxNzQKKyMsIGZ1enp5LCBwZXJsLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGRpciB0byBgJXMnIgorbXNnc3RyICJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIGNhbnZpYXIgYWwgZGlyZWN0b3JpIMKrJS4yNTVzwrsiCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6MTM1CisjLCBmdXp6eSwgcGVybC1mb3JtYXQKK21zZ2lkICJ1c2luZyBvcHRpb25zIGZyb20gJXM6ICVzIgorbXNnc3RyICJTJ2VzdMOgIGNhbnZpYW50IGVsIG5vbSBkZSBsJ2VubGxhw6cgJXMgZGUgJXMgYSAlcy4iCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6MTUwIHNjcmlwdHMvRHBrZy9Db21wcmVzc2lvbi5wbToxNzMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgaXMgbm90IGEgc3VwcG9ydGVkIGNvbXByZXNzaW9uIgorbXNnc3RyICIlcyBubyBlcyB1bmEgY29tcHJlc3Npw7MgaW1wbGVtZW50YWRhIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjE1NiBzY3JpcHRzL0Rwa2cvQ29tcHJlc3Npb24ucG06MjAyCisjOiBzY3JpcHRzL0Rwa2cvQ29tcHJlc3Npb24vUHJvY2Vzcy5wbTo4NgorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgYSBjb21wcmVzc2lvbiBsZXZlbCIKK21zZ3N0ciAiJXMgbm8gw6lzIHVuIG5pdmVsbCBkZSBjb21wcmVzc2nDsyIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDoyMTQKK21zZ2lkICIiCisibmVlZCBhIGNvbW1hbmQgKC14LCAtYiwgLS1iZWZvcmUtYnVpbGQsIC0tYWZ0ZXItYnVpbGQsIC0tcHJpbnQtZm9ybWF0LCAtLSIKKyJjb21taXQpIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6MjM4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGRvZXNuJ3QgY29udGFpbiBhbnkgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHNvdXJjZSBwYWNrYWdlIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6MjgzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImAlcycgaXMgbm90IGEgbGVnYWwgYXJjaGl0ZWN0dXJlIHN0cmluZyIKK21zZ3N0ciAiwqslc8K7IG5vIMOpcyB1bmEgY2FkZW5hIGQnYXJxdWl0ZWN0dXJhIHbDoGxpZGEiCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6Mjg2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImFyY2hpdGVjdHVyZSAlcyBvbmx5IGFsbG93ZWQgb24gaXRzIG93biAobGlzdCBmb3IgcGFja2FnZSAlcyBpcyBgJXMnKSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjMwMQorIywgZnV6enksIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgZG9lc24ndCBsaXN0IGFueSBiaW5hcnkgcGFja2FnZSIKK21zZ3N0ciAiRWwgcGFxdWV0IMKrJXPCuyBubyBjb250w6kgY2FwIGZpdHhlciAoISlcbiIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDozNDMgc2NyaXB0cy9EcGtnL0J1aWxkRmxhZ3MucG06MjcwCisjOiBzY3JpcHRzL0Rwa2cvQ29tcHJlc3Npb24vRmlsZUhhbmRsZS5wbTo0MDEKKyM6IHNjcmlwdHMvRHBrZy9JbnRlcmZhY2UvU3RvcmFibGUucG06ODcgc2NyaXB0cy9EcGtnL1NobGlicy9PYmpkdW1wLnBtOjEyMgorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjI3NyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NDI1CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NTYxCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06MTEyCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06Mjg2CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06MzQ4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZWFkICVzIgorbXNnc3RyICJubyBlcyBwb3QgbGxlZ2lyICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjM1MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJubyBzb3VyY2UgZm9ybWF0IHNwZWNpZmllZCBpbiAlcywgc2VlIGRwa2ctc291cmNlKDEpIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6Mzc4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbid0IGJ1aWxkIHdpdGggc291cmNlIGZvcm1hdCAnJXMnOiAlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjM4MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1c2luZyBzb3VyY2UgZm9ybWF0IGAlcyciCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDozODggc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjMwMQorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjM0NiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NTQxCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvYnpyLnBtOjE1MgorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL25hdGl2ZS5wbTo4NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJidWlsZGluZyAlcyBpbiAlcyIKK21zZ3N0ciAicydlc3TDoCBjb25zdHJ1aW50ICVzIGEgJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6Mzk5Cittc2dpZCAiLXggbmVlZHMgYXQgbGVhc3Qgb25lIGFyZ3VtZW50LCB0aGUgLmRzYyIKK21zZ3N0ciAiLS14IG5lY2Vzc2l0YSBhbG1lbnlzIHVuIGFyZ3VtZW50LCBlbCAuZHNjIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjQwMgorbXNnaWQgIi14IHRha2VzIG5vIG1vcmUgdGhhbiB0d28gYXJndW1lbnRzIgorbXNnc3RyICIteCBubyBhY2NlcHRhIG3DqXMgZGUgZG9zIGFyZ3VtZW50cyIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDo0MDYKK21zZ2lkICIteCBuZWVkcyB0aGUgLmRzYyBmaWxlIGFzIGZpcnN0IGFyZ3VtZW50LCBub3QgYSBkaXJlY3RvcnkiCittc2dzdHIgIi0gbmVjZXNzaXRhIGVsIGZpdHhlciAuZHNjIGNvbSBhIHByaW1lciBhcmd1bWVudCwgbm8gdW4gZGlyZWN0b3JpIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjQyMgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bnBhY2sgdGFyZ2V0IGV4aXN0czogJXMiCittc2dzdHIgImxhIGRlc3RpbmFjacOzIGRlbCBkZXNlbXBhcXVldGFtZW50IGV4aXN0ZWl4OiAlcyIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDo0MzIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgZG9lc24ndCBjb250YWluIGEgdmFsaWQgT3BlblBHUCBzaWduYXR1cmUiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDo0MzQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZXh0cmFjdGluZyB1bnNpZ25lZCBzb3VyY2UgcGFja2FnZSAoJXMpIgorbXNnc3RyICJzJ2VzdMOgIGV4dHJhaWVudCBlbCBwYXF1ZXQgZm9udCBzZW5zZSBzaWduYXIgKCVzKSIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDo0NDEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZXh0cmFjdGluZyAlcyBpbiAlcyIKK21zZ3N0ciAicydlc3TDoCBleHRyYWllbnQgJXMgZGVzIGRlICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjQ0OQorbXNnaWQgIm9ubHkgb25lIG9mIC14LCAtYiBvciAtLXByaW50LWZvcm1hdCBhbGxvd2VkLCBhbmQgb25seSBvbmNlIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6NDU3Cittc2dpZCAiIgorIlxuIgorIkNvcHlyaWdodCAoQykgMTk5NiBJYW4gSmFja3NvblxuIgorIkNvcHlyaWdodCAoQykgMTk5NyBLbGVlIERpZW5lc1xuIgorIkNvcHlyaWdodCAoQykgMjAwOCBSYXBoYWVsIEhlcnR6b2ciCittc2dzdHIgIiIKKyJcbiIKKyJDb3B5cmlnaHQgwqkgMTk5NiBJYW4gSmFja3NvblxuIgorIkNvcHlyaWdodCDCqSAxOTk3IEtsZWUgRGllbmVzXG4iCisiQ29weXJpZ2h0IMKpIDIwMDggUmFwaGFlbCBIZXJ0em9nIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjQ3MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIDxjb21tYW5kPlxuIgorIlxuIgorIkNvbW1hbmRzOlxuIgorIiAgLXggPGZpbGVuYW1lPi5kc2MgWzxvdXRwdXQtZGlyPl1cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBleHRyYWN0IHNvdXJjZSBwYWNrYWdlLlxuIgorIiAgLWIgPGRpcj4gICAgICAgICAgICAgICAgIGJ1aWxkIHNvdXJjZSBwYWNrYWdlLlxuIgorIiAgLS1wcmludC1mb3JtYXQgPGRpcj4gICAgIHByaW50IHRoZSBzb3VyY2UgZm9ybWF0IHRoYXQgd291bGQgYmVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2VkIHRvIGJ1aWxkIHRoZSBzb3VyY2UgcGFja2FnZS5cbiIKKyIgIC0tY29tbWl0IFs8ZGlyPiBbPHBhdGNoLW5hbWU+XV1cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBzdG9yZSB1cHN0cmVhbSBjaGFuZ2VzIGluIGEgbmV3IHBhdGNoLiIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjQ4MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiQnVpbGQgb3B0aW9uczpcbiIKKyIgIC1jPGNvbnRyb2xmaWxlPiAgICAgICAgICBnZXQgY29udHJvbCBpbmZvIGZyb20gdGhpcyBmaWxlLlxuIgorIiAgLWw8Y2hhbmdlbG9nZmlsZT4gICAgICAgIGdldCBwZXItdmVyc2lvbiBpbmZvIGZyb20gdGhpcyBmaWxlLlxuIgorIiAgLUY8Y2hhbmdlbG9nZm9ybWF0PiAgICAgIGZvcmNlIGNoYW5nZSBsb2cgZm9ybWF0LlxuIgorIiAgLVY8bmFtZT49PHZhbHVlPiAgICAgICAgIHNldCBhIHN1YnN0aXR1dGlvbiB2YXJpYWJsZS5cbiIKKyIgIC1UPHZhcmxpc3RmaWxlPiAgICAgICAgICByZWFkIHZhcmlhYmxlcyBoZXJlLlxuIgorIiAgLUQ8ZmllbGQ+PTx2YWx1ZT4gICAgICAgIG92ZXJyaWRlIG9yIGFkZCBhIC5kc2MgZmllbGQgYW5kIHZhbHVlLlxuIgorIiAgLVU8ZmllbGQ+ICAgICAgICAgICAgICAgIHJlbW92ZSBhIGZpZWxkLlxuIgorIiAgLXEgICAgICAgICAgICAgICAgICAgICAgIHF1aWV0IG1vZGUuXG4iCisiICAtaVs8cmVnZXhwPl0gICAgICAgICAgICAgZmlsdGVyIG91dCBmaWxlcyB0byBpZ25vcmUgZGlmZnMgb2ZcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChkZWZhdWx0cyB0bzogJyVzJykuXG4iCisiICAtSVs8cGF0dGVybj5dICAgICAgICAgICAgZmlsdGVyIG91dCBmaWxlcyB3aGVuIGJ1aWxkaW5nIHRhcmJhbGxzXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZGVmYXVsdHMgdG86ICVzKS5cbiIKKyIgIC1aPGNvbXByZXNzaW9uPiAgICAgICAgICBzZWxlY3QgY29tcHJlc3Npb24gdG8gdXNlIChkZWZhdWx0cyB0byAnJXMnLFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3VwcG9ydGVkIGFyZTogJXMpLlxuIgorIiAgLXo8bGV2ZWw+ICAgICAgICAgICAgICAgIGNvbXByZXNzaW9uIGxldmVsIHRvIHVzZSAoZGVmYXVsdHMgdG8gJyVkJyxcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN1cHBvcnRlZCBhcmU6ICcxJy0nOScsICdiZXN0JywgJ2Zhc3QnKSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjQ5OQorbXNnaWQgIiIKKyJFeHRyYWN0IG9wdGlvbnM6XG4iCisiICAtLW5vLWNvcHkgICAgICAgICAgICAgICAgZG9uJ3QgY29weSAub3JpZyB0YXJiYWxsc1xuIgorIiAgLS1uby1jaGVjayAgICAgICAgICAgICAgIGRvbid0IGNoZWNrIHNpZ25hdHVyZSBhbmQgY2hlY2tzdW1zIGJlZm9yZSAiCisidW5wYWNraW5nXG4iCisiICAtLXJlcXVpcmUtdmFsaWQtc2lnbmF0dXJlIGFib3J0IGlmIHRoZSBwYWNrYWdlIGRvZXNuJ3QgaGF2ZSBhIHZhbGlkICIKKyJzaWduYXR1cmUiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDo1MDQKK21zZ2lkICIiCisiR2VuZXJhbCBvcHRpb25zOlxuIgorIiAgLWgsIC0taGVscCAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAgICAgLS12ZXJzaW9uICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi4iCittc2dzdHIgIiIKKyJPcGNpb25zIGdlbmVyYWxzOlxuIgorIiAgLWgsIC0taGVscCAgICAgICAgICAgICAgIG1vc3RyYSBhcXVlc3QgbWlzc2F0Z2UgZCdhanVkYS5cbiIKKyIgICAgICAtLXZlcnNpb24gICAgICAgICAgICBtb3N0cmEgbGEgdmVyc2nDsy4iCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6NTA4Cittc2dpZCAiIgorIk1vcmUgb3B0aW9ucyBhcmUgYXZhaWxhYmxlIGJ1dCB0aGV5IGRlcGVuZCBvbiB0aGUgc291cmNlIHBhY2thZ2UgZm9ybWF0LlxuIgorIlNlZSBkcGtnLXNvdXJjZSgxKSBmb3IgbW9yZSBpbmZvLiIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2NoYW5nZWxvZy9kZWJpYW4ucGw6MzYKK21zZ2lkICIiCisiXG4iCisiQ29weXJpZ2h0IChDKSAxOTk2IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwNSwyMDA3IEZyYW5rIExpY2h0ZW5oZWxkLiIKK21zZ3N0ciAiIgorIlxuIgorIkNvcHlyaWdodCDCqSAxOTk2IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCDCqSAyMDA1LDIwMDcgRnJhbmsgTGljaHRlbmhlbGQuIgorCisjOiBzY3JpcHRzL2NoYW5nZWxvZy9kZWJpYW4ucGw6NDcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4uLi5dIFs8Y2hhbmdlbG9nZmlsZT5dXG4iCisiXG4iCisiT3B0aW9uczpcbiIKKyIgICAgLS1oZWxwLCAtaCAgICAgICAgICAgICAgICAgIHByaW50IHVzYWdlIGluZm9ybWF0aW9uXG4iCisiICAgIC0tdmVyc2lvbiwgLVYgICAgICAgICAgICAgICBwcmludCB2ZXJzaW9uIGluZm9ybWF0aW9uXG4iCisiICAgIC0tbGFiZWwsIC1sIDxmaWxlPiAgICAgICAgICBuYW1lIG9mIHRoZSBjaGFuZ2Vsb2cgZmlsZSB0b1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlIGluIGVycm9yIG1lc3NhZ2VzXG4iCisiICAgIC0tZmlsZSA8ZmlsZT4gICAgICAgICAgICAgICBjaGFuZ2Vsb2cgZmlsZSB0byBwYXJzZSwgZGVmYXVsdHNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvICctJyAoc3RhbmRhcmQgaW5wdXQpXG4iCisiICAgIC0tZm9ybWF0IDxvdXRwdXRmb3JtYXQ+ICAgICBzZWUgbWFuIHBhZ2UgZm9yIGxpc3Qgb2YgYXZhaWxhYmxlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdXRwdXQgZm9ybWF0cywgZGVmYXVsdHMgdG8gJ2Rwa2cnXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIGRwa2ctZGV2XG4iCisiICAgIC0tc2luY2UsIC1zLCAtdiA8dmVyc2lvbj4gICBpbmNsdWRlIGFsbCBjaGFuZ2VzIGxhdGVyIHRoYW4gdmVyc2lvblxuIgorIiAgICAtLXVudGlsLCAtdSA8dmVyc2lvbj4gICAgICAgaW5jbHVkZSBhbGwgY2hhbmdlcyBlYXJsaWVyIHRoYW4gdmVyc2lvblxuIgorIiAgICAtLWZyb20sIC1mIDx2ZXJzaW9uPiAgICAgICAgaW5jbHVkZSBhbGwgY2hhbmdlcyBlcXVhbCBvciBsYXRlclxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhhbiB2ZXJzaW9uXG4iCisiICAgIC0tdG8sIC10IDx2ZXJzaW9uPiAgICAgICAgICBpbmNsdWRlIGFsbCBjaGFuZ2VzIHVwIHRvIG9yIGVxdWFsXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGFuIHZlcnNpb25cbiIKKyIgICAgLS1jb3VudCwgLWMsIC1uIDxudW1iZXI+ICAgIGluY2x1ZGUgPG51bWJlcj4gZW50cmllcyBmcm9tIHRoZSB0b3BcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChvciB0aGUgdGFpbCBpZiA8bnVtYmVyPiBpcyBsb3dlciB0aGFuIDApXG4iCisiICAgIC0tb2Zmc2V0LCAtbyA8bnVtYmVyPiAgICAgICBjaGFuZ2UgdGhlIHN0YXJ0aW5nIHBvaW50IGZvciAtLWNvdW50LFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY291bnRlZCBmcm9tIHRoZSB0b3AgKG9yIHRoZSB0YWlsIGlmXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bnVtYmVyPiBpcyBsb3dlciB0aGFuIDApXG4iCisiICAgIC0tYWxsICAgICAgICAgICAgICAgICAgICAgICBpbmNsdWRlIGFsbCBjaGFuZ2VzXG4iCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9jaGFuZ2Vsb2cvZGViaWFuLnBsOjg2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIm91dHB1dCBmb3JtYXQgJXMgbm90IHN1cHBvcnRlZCIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2NoYW5nZWxvZy9kZWJpYW4ucGw6MTExCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIm1vcmUgdGhhbiBvbmUgZmlsZSBzcGVjaWZpZWQgKCVzIGFuZCAlcykiCittc2dzdHIgInMnaGEgZXNwZWNpZmljYXQgbcOpcyBkJ3VuIGZpdHhlciAoJXMgaSAlcykiCisKKyM6IHNjcmlwdHMvY2hhbmdlbG9nL2RlYmlhbi5wbDoxMzUgc2NyaXB0cy9EcGtnL0ludGVyZmFjZS9TdG9yYWJsZS5wbTo4NAorbXNnaWQgIjxzdGFuZGFyZCBpbnB1dD4iCittc2dzdHIgIjxlbnRyYWRhIGVzdMOgbmRhcmQ+IgorCisjOiBzY3JpcHRzL2NoYW5nZWxvZy9kZWJpYW4ucGw6MTM2Cittc2dpZCAiZmF0YWwgZXJyb3Igb2NjdXJyZWQgd2hpbGUgcGFyc2luZyBpbnB1dCIKK21zZ3N0ciAicydoYSBwcm9kdcOvdCB1biBlcnJvciBmYXRhbCBlbiBhbmFsaXR6YXIgbCdlbnRyYWRhIgorCisjOiBzY3JpcHRzL2NoYW5nZWxvZy9kZWJpYW4ucGw6MTM5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImZhdGFsIGVycm9yIG9jY3VycmVkIHdoaWxlIHBhcnNpbmcgJXMiCittc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZmF0YWwgZW4gYW5hbGl0emFyICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvQXJjaC5wbTo4NgorbXNnaWQgIiIKKyJDb3VsZG4ndCBkZXRlcm1pbmUgZ2NjIHN5c3RlbSB0eXBlLCBmYWxsaW5nIGJhY2sgdG8gZGVmYXVsdCAobmF0aXZlICIKKyJjb21waWxhdGlvbikiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0FyY2gucG06OTUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIlVua25vd24gZ2NjIHN5c3RlbSB0eXBlICVzLCBmYWxsaW5nIGJhY2sgdG8gZGVmYXVsdCAobmF0aXZlIGNvbXBpbGF0aW9uKSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvQnVpbGRGbGFncy5wbToyNzgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibGluZSAlZCBvZiAlcyBtZW50aW9ucyB1bmtub3duIGZsYWcgJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0J1aWxkRmxhZ3MucG06MjkxCisjLCBmdXp6eSwgcGVybC1mb3JtYXQKK21zZ2lkICJsaW5lICVkIG9mICVzIGlzIGludmFsaWQsIGl0IGhhcyBiZWVuIGlnbm9yZWQuIgorbXNnc3RyICIgICUuMjUwcyBlc3TDoCBkZXNlbXBhcXVldGF0LCBwZXLDsiBubyBoYSBlc3RhdCBjb25maWd1cmF0LlxuIgorCisjOiBzY3JpcHRzL0Rwa2cvQnVpbGRPcHRpb25zLnBtOjk0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImludmFsaWQgZmxhZyBpbiAlczogJXMiCittc2dzdHIgInNlbnlhbGFkb3IgaW52w6BsaWQgYSAlczogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Db21wcmVzc2lvbi9Qcm9jZXNzLnBtOjcxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGlzIG5vdCBhIHN1cHBvcnRlZCBjb21wcmVzc2lvbiBtZXRob2QiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0NvbXByZXNzaW9uL1Byb2Nlc3MucG06MTIyCittc2dpZCAiRHBrZzo6Q29tcHJlc3Npb246OlByb2Nlc3MgY2FuIG9ubHkgc3RhcnQgb25lIHN1YnByb2Nlc3MgYXQgYSB0aW1lIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06MTcxIHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06MTczCisjOiBzY3JpcHRzL0Rwa2cvRXJyb3JIYW5kbGluZy5wbTo1OQorbXNnaWQgIndhcm5pbmciCittc2dzdHIgImF2w61zIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtOjE3MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiJXMobCVzKTogJXNcbiIKKyJMSU5FOiAlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtOjE3MworIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyhsJXMpOiAlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtOjIyMQorbXNnaWQgIidvZmZzZXQnIHdpdGhvdXQgJ2NvdW50JyBoYXMgbm8gZWZmZWN0IgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06MjI5Cittc2dpZCAieW91IGNhbid0IGNvbWJpbmUgJ2NvdW50JyBvciAnb2Zmc2V0JyB3aXRoIGFueSBvdGhlciByYW5nZSBvcHRpb24iCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbToyMzcKK21zZ2lkICJ5b3UgY2FuIG9ubHkgc3BlY2lmeSBvbmUgb2YgJ2Zyb20nIGFuZCAnc2luY2UnLCB1c2luZyAnc2luY2UnIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06MjQyCittc2dpZCAieW91IGNhbiBvbmx5IHNwZWNpZnkgb25lIG9mICd0bycgYW5kICd1bnRpbCcsIHVzaW5nICd1bnRpbCciCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbToyNTQgc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbToyNzAKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06Mjg2IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06MzAyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiclcycgb3B0aW9uIHNwZWNpZmllcyBub24tZXhpc3RpbmcgdmVyc2lvbiIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtOjI1NSBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtOjMwMworbXNnaWQgInVzZSBuZXdlc3QgZW50cnkgdGhhdCBpcyBlYXJsaWVyIHRoYW4gdGhlIG9uZSBzcGVjaWZpZWQiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbToyNjQKK21zZ2lkICJub25lIGZvdW5kLCBzdGFydGluZyBmcm9tIHRoZSBvbGRlc3QgZW50cnkiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbToyNzEgc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbToyODcKK21zZ2lkICJ1c2Ugb2xkZXN0IGVudHJ5IHRoYXQgaXMgbGF0ZXIgdGhhbiB0aGUgb25lIHNwZWNpZmllZCIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtOjI4MSBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtOjI5NworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbTozMTIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibm8gc3VjaCBlbnRyeSBmb3VuZCwgaWdub3JpbmcgJyVzJyBwYXJhbWV0ZXIiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbTozMTgKK21zZ2lkICInc2luY2UnIG9wdGlvbiBzcGVjaWZpZXMgbW9zdCByZWNlbnQgdmVyc2lvbiwgaWdub3JpbmciCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbTozMjIKK21zZ2lkICIndW50aWwnIG9wdGlvbiBzcGVjaWZpZXMgb2xkZXN0IHZlcnNpb24sIGlnbm9yaW5nIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRGViaWFuLnBtOjU0Cittc2dpZCAiZmlyc3QgaGVhZGluZyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0RlYmlhbi5wbTo1NQorbXNnaWQgIm5leHQgaGVhZGluZyBvciBlb2YiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9EZWJpYW4ucG06NTYKK21zZ2lkICJzdGFydCBvZiBjaGFuZ2UgZGF0YSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0RlYmlhbi5wbTo1NworbXNnaWQgIm1vcmUgY2hhbmdlIGRhdGEgb3IgdHJhaWxlciIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0RlYmlhbi5wbTo4OQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJmb3VuZCBzdGFydCBvZiBlbnRyeSB3aGVyZSBleHBlY3RlZCAlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0RlYmlhbi5wbToxMjYKK21zZ2lkICJiYWRseSBmb3JtYXR0ZWQgaGVhZGluZyBsaW5lIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRGViaWFuLnBtOjEzMAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJmb3VuZCB0cmFpbGVyIHdoZXJlIGV4cGVjdGVkICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRGViaWFuLnBtOjE0MAorIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9FbnRyeS9EZWJpYW4ucG06MTQ5Cittc2dpZCAiYmFkbHkgZm9ybWF0dGVkIHRyYWlsZXIgbGluZSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0RlYmlhbi5wbToxNDMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZm91bmQgY2hhbmdlIGRhdGEgd2hlcmUgZXhwZWN0ZWQgJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9EZWJpYW4ucG06MTY1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImZvdW5kIGJsYW5rIGxpbmUgd2hlcmUgZXhwZWN0ZWQgJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9EZWJpYW4ucG06MTY5Cittc2dpZCAidW5yZWNvZ25pc2VkIGxpbmUiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9EZWJpYW4ucG06MTgwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImZvdW5kIGVvZiB3aGVyZSBleHBlY3RlZCAlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0VudHJ5L0RlYmlhbi5wbToxMjIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiYmFkIGtleS12YWx1ZSBhZnRlciBgOyc6IGAlcyciCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9FbnRyeS9EZWJpYW4ucG06MTI3CisjLCBmdXp6eSwgcGVybC1mb3JtYXQKK21zZ2lkICJyZXBlYXRlZCBrZXktdmFsdWUgJXMiCittc2dzdHIgInZhbG9yIGJ1aXQgcGVyIGEgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRW50cnkvRGViaWFuLnBtOjEzMQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJiYWRseSBmb3JtYXR0ZWQgdXJnZW5jeSB2YWx1ZTogJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9FbnRyeS9EZWJpYW4ucG06MTM1CisjLCBmdXp6eSwgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGtleS12YWx1ZSAlcyIKK21zZ3N0ciAibCdhcmd1bWVudCDCqyVzwrsgw6lzIGRlc2NvbmVndXQiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRW50cnkvRGViaWFuLnBtOjEzOQorbXNnaWQgInRoZSBoZWFkZXIgZG9lc24ndCBtYXRjaCB0aGUgZXhwZWN0ZWQgcmVnZXgiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9FbnRyeS9EZWJpYW4ucG06MTUyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNvdWxkbid0IHBhcnNlIGRhdGUgJXMiCittc2dzdHIgIm5vIHMnaGEgcG9ndXQgYW5hbGl0emFyIGxhIGRhdGEgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRW50cnkvRGViaWFuLnBtOjE1NQorbXNnaWQgInRoZSB0cmFpbGVyIGRvZXNuJ3QgbWF0Y2ggdGhlIGV4cGVjdGVkIHJlZ2V4IgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvUGFyc2UucG06MTA2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInRhaWwgb2YgJXMiCittc2dzdHIgImN1YSBkZSAlcyIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9QYXJzZS5wbToxMTgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZm9ybWF0IHBhcnNlciAlcyBub3QgZXhlY3V0YWJsZSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL1BhcnNlLnBtOjEyMQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjaGFuZ2Vsb2cgZm9ybWF0ICVzIGlzIHVua25vd24iCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9QYXJzZS5wbToxNDQKKyMsIGZ1enp5LCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCBleGVjIGZvcm1hdCBwYXJzZXI6ICVzIgorbXNnc3RyICJubyBlcyBwb3QgY3JlYXIgZWwgZGlyZWN0b3JpICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL1BhcnNlLnBtOjE1MQorbXNnaWQgIm91dHB1dCBvZiBjaGFuZ2Vsb2cgcGFyc2VyIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvUGFyc2UucG06MTU0CisjLCBmdXp6eSwgcGVybC1mb3JtYXQKK21zZ2lkICJjaGFuZ2Vsb2cgcGFyc2VyICVzIgorbXNnc3RyICJubyBlcyBwb3Qgb2JyaXIgZWwgZGlyZWN0b3JpICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hlY2tzdW1zLnBtOjE3MAorIywgZnV6enksIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IGZzdGF0IGZpbGUgJXMiCittc2dzdHIgIm5vIGVzIHBvdCBmZXIgwqtzdGF0wrsgc29icmUgZWwgZml0eGVyIMKrJXPCuyIKKworIzogc2NyaXB0cy9EcGtnL0NoZWNrc3Vtcy5wbToxNzIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiRmlsZSAlcyBoYXMgc2l6ZSAldSBpbnN0ZWFkIG9mIGV4cGVjdGVkICV1IgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGVja3N1bXMucG06MTg2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIkZpbGUgJXMgaGFzIGNoZWNrc3VtICVzIGluc3RlYWQgb2YgZXhwZWN0ZWQgJXMgKGFsZ29yaXRobSAlcykiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0NoZWNrc3Vtcy5wbToxOTEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2hlY2tzdW0gcHJvZ3JhbSBnYXZlIGJvZ3VzIG91dHB1dCBgJXMnIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGVja3N1bXMucG06MjE5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImludmFsaWQgbGluZSBpbiAlcyBjaGVja3N1bXMgc3RyaW5nOiAlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hlY2tzdW1zLnBtOjIyNQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJDb25mbGljdGluZyBjaGVja3N1bXMgYCVzJyBhbmQgYCVzJyBmb3IgZmlsZSBgJXMnIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGVja3N1bXMucG06MjI5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIkNvbmZsaWN0aW5nIGZpbGUgc2l6ZXMgYCV1JyBhbmQgYCV1JyBmb3IgZmlsZSBgJXMnIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Db25mLnBtOjEwNQorIywgZnV6enksIHBlcmwtZm9ybWF0Cittc2dpZCAic2hvcnQgb3B0aW9uIG5vdCBhbGxvd2VkIGluICVzLCBsaW5lICVkIgorbXNnc3RyICJubyBzJ2FkbWV0ZW4gYWx0ZXJuYXRpdmVzICjCq3zCuykgZW4gZWwgY2FtcCAlcyIKKworIzogc2NyaXB0cy9EcGtnL0NvbmYucG06MTE5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImludmFsaWQgc3ludGF4IGZvciBvcHRpb24gaW4gJXMsIGxpbmUgJWQiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0NvbnRyb2wucG06MTUwCisjLCBmdXp6eQorbXNnaWQgImdlbmVyYWwgc2VjdGlvbiBvZiBjb250cm9sIGluZm8gZmlsZSIKK21zZ3N0ciAibm8gZXMgcG90IGVsaW1pbmFyIGVsIGZpdHhlciBkJ2luZm8uIGRlIGNvbnRyb2wgwqslLjI1MHPCuyIKKworIzogc2NyaXB0cy9EcGtnL0NvbnRyb2wucG06MTUyCisjLCBmdXp6eQorbXNnaWQgInBhY2thZ2UncyBzZWN0aW9uIG9mIGNvbnRyb2wgaW5mbyBmaWxlIgorbXNnc3RyICJlbCBwYXF1ZXQgJXMgbm8gw6lzIGEgbGEgaW5mb3JtYWNpw7MgZGUgY29udHJvbCIKKworIzogc2NyaXB0cy9EcGtnL0NvbnRyb2wucG06MTU0Cittc2dpZCAicGFyc2VkIHZlcnNpb24gb2YgY2hhbmdlbG9nIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Db250cm9sLnBtOjE1NiBzY3JpcHRzL0Rwa2cvQ29udHJvbC5wbToxNTgKKyMsIGZ1enp5LCBwZXJsLWZvcm1hdAorI3wgbXNnaWQgImVudHJ5IGluIGRwa2cncyBzdGF0dXMgZmlsZSIKK21zZ2lkICJlbnRyeSBpbiByZXBvc2l0b3J5J3MgJXMgZmlsZSIKK21zZ3N0ciAiZW50cmFkYSBhbCBmaXR4ZXIgZCdlc3RhdCBkZWwgZHBrZyIKKworIzogc2NyaXB0cy9EcGtnL0NvbnRyb2wucG06MTYwIHNjcmlwdHMvRHBrZy9Db250cm9sLnBtOjE2NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBmaWxlIgorbXNnc3RyICJmaXR4ZXIgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Db250cm9sLnBtOjE2MgorbXNnaWQgImNvbnRyb2wgaW5mbyBvZiBhIC5kZWIgcGFja2FnZSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29udHJvbC5wbToxNjYKK21zZ2lkICJ2ZW5kb3IgZmlsZSIKK21zZ3N0ciAiZml0eGVyIGRlIHZlbmVkb3IiCisKKyM6IHNjcmlwdHMvRHBrZy9Db250cm9sLnBtOjE2OAorbXNnaWQgImVudHJ5IGluIGRwa2cncyBzdGF0dXMgZmlsZSIKK21zZ3N0ciAiZW50cmFkYSBhbCBmaXR4ZXIgZCdlc3RhdCBkZWwgZHBrZyIKKworIzogc2NyaXB0cy9EcGtnL0NvbnRyb2wvRmllbGRzLnBtOjQ1NQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGluZm9ybWF0aW9uIGZpZWxkICclcycgaW4gaW5wdXQgZGF0YSBpbiAlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29udHJvbC9GaWVsZHMucG06NDU2Cittc2dpZCAiY29udHJvbCBpbmZvcm1hdGlvbiIKK21zZ3N0ciAiaW5mb3JtYWNpw7MgZGUgY29udHJvbCIKKworIzogc2NyaXB0cy9EcGtnL0NvbnRyb2wvSW5mby5wbToxMDMKK21zZ2lkICJmaXJzdCBibG9jayBsYWNrcyBhIHNvdXJjZSBmaWVsZCIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29udHJvbC9JbmZvLnBtOjExMCBzY3JpcHRzL0Rwa2cvQ29udHJvbC9JbmZvLnBtOjExMworIywgcGVybC1mb3JtYXQKK21zZ2lkICJibG9jayBsYWNrcyB0aGUgJyVzJyBmaWVsZCIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29udHJvbC9IYXNoLnBtOjE3MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgZmllbGQgJXMgZm91bmQiCittc2dzdHIgInMnaGEgdHJvYmF0IHVuIGNhbXAgJXMgZHVwbGljYXQiCisKKyM6IHNjcmlwdHMvRHBrZy9Db250cm9sL0hhc2gucG06MTgwCittc2dpZCAiY29udGludWVkIHZhbHVlIGxpbmUgbm90IGluIGZpZWxkIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Db250cm9sL0hhc2gucG06MTk0Cittc2dpZCAiUEdQIHNpZ25hdHVyZSBub3QgYWxsb3dlZCBoZXJlIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Db250cm9sL0hhc2gucG06MjAxCittc2dpZCAiZXhwZWN0ZWQgUEdQIHNpZ25hdHVyZSwgZm91bmQgRU9GIGFmdGVyIGJsYW5rIGxpbmUiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0NvbnRyb2wvSGFzaC5wbToyMDUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZXhwZWN0ZWQgUEdQIHNpZ25hdHVyZSwgZm91bmQgc29tZXRoaW5nIGVsc2UgYCVzJyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29udHJvbC9IYXNoLnBtOjIxMworbXNnaWQgInVuZmluaXNoZWQgUEdQIHNpZ25hdHVyZSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29udHJvbC9IYXNoLnBtOjIxOQorbXNnaWQgImxpbmUgd2l0aCB1bmtub3duIGZvcm1hdCAobm90IGZpZWxkLWNvbG9uLXZhbHVlKSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29udHJvbC9IYXNoLnBtOjMxNgorIywgZnV6enkKK21zZ2lkICJ3cml0ZSBlcnJvciBvbiBjb250cm9sIGRhdGEiCittc2dzdHIgInMnaGEgcHJvZHXDr3QgdW4gZXJyb3IgZCdlc2NyaXB0dXJhIGVuIHZzbnByaW50ZiIKKworIzogc2NyaXB0cy9EcGtnL0RlcHMucG06Mjc0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbid0IHBhcnNlIGRlcGVuZGVuY3kgJXMiCittc2dzdHIgIm5vIHMnaGEgcG9ndXQgYW5hbGl0emFyIGxhIGRlcGVuZMOobmNpYSAlcyIKKworIzogc2NyaXB0cy9EcGtnL0RlcHMucG06MzAxCittc2dpZCAiYW4gdW5pb24gZGVwZW5kZW5jeSBjYW4gb25seSBjb250YWluIHNpbXBsZSBkZXBlbmRlbmNpZXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0Vycm9ySGFuZGxpbmcucG06NTQKK21zZ2lkICJpbmZvIgorbXNnc3RyICJpbmZvIgorCisjOiBzY3JpcHRzL0Rwa2cvRXJyb3JIYW5kbGluZy5wbTo2NSBzY3JpcHRzL0Rwa2cvRXJyb3JIYW5kbGluZy5wbTo3MAorIzogc2NyaXB0cy9EcGtnL0Vycm9ySGFuZGxpbmcucG06NzUKK21zZ2lkICJlcnJvciIKK21zZ3N0ciAiZXJyb3IiCisKKyM6IHNjcmlwdHMvRHBrZy9FcnJvckhhbmRsaW5nLnBtOjgwCittc2dpZCAiaW50ZXJuYWwgZXJyb3IiCittc2dzdHIgImVycm9yIGludGVybiIKKworIzogc2NyaXB0cy9EcGtnL0Vycm9ySGFuZGxpbmcucG06OTIKKyMsIGZ1enp5LCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGdhdmUgZXJyb3IgZXhpdCBzdGF0dXMgJXMiCittc2dzdHIgImVsIHN1YnByb2PDqXMgJXMgcmV0b3Juw6AgZWwgY29kaSBkJ2VpeGlkYSBkJ2Vycm9yICVkIgorCisjOiBzY3JpcHRzL0Rwa2cvRXJyb3JIYW5kbGluZy5wbTo5NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBkaWVkIGZyb20gc2lnbmFsICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9FcnJvckhhbmRsaW5nLnBtOjk2CisjLCBmdXp6eSwgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBmYWlsZWQgd2l0aCB1bmtub3duIGV4aXQgY29kZSAlZCIKK21zZ3N0ciAiZWwgc3VicHJvY8OpcyAlcyBoYSBmYWxsYXQgYW1iIGNvZGkgZCdlc3RhdCBlbiBlc3BlcmEgJWQiCisKKyM6IHNjcmlwdHMvRHBrZy9FcnJvckhhbmRsaW5nLnBtOjExNQorIywgZnV6enksIHBlcmwtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yIGluICVzIGF0IGxpbmUgJWQ6ICVzIgorbXNnc3RyICJlcnJvciBkZSBzaW50YXhpIGFsIGZpdHhlciBkZSBzdGF0b3ZlcnJpZGUiCisKKyM6IHNjcmlwdHMvRHBrZy9JUEMucG06MjExIHNjcmlwdHMvRHBrZy9JUEMucG06MjE3IHNjcmlwdHMvRHBrZy9JUEMucG06MjIzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInBpcGUgZm9yICVzIgorbXNnc3RyICJjb25kdWN0ZSBwZXIgYSAlcyIKKworIzogc2NyaXB0cy9EcGtnL0lQQy5wbToyNDIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2hkaXIgdG8gJXMiCittc2dzdHIgIsKrY2hkaXLCuyBhICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvSVBDLnBtOjI0OQorbXNnaWQgInJlb3BlbiBzdGRpbiIKK21zZ3N0ciAidG9ybmEgYSBvYnJpciBzdGRpbiIKKworIzogc2NyaXB0cy9EcGtnL0lQQy5wbToyNTcgc2NyaXB0cy9EcGtnL0lQQy5wbToyNjUKK21zZ2lkICJyZW9wZW4gc3Rkb3V0IgorbXNnc3RyICJ0b3JuYSBhIG9icmlyIHN0ZG91dCIKKworIzogc2NyaXB0cy9EcGtnL0lQQy5wbTozMzkKK21zZ2lkICJjaGlsZCBwcm9jZXNzIgorbXNnc3RyICJwcm9jw6lzIGZpbGwiCisKKyM6IHNjcmlwdHMvRHBrZy9JUEMucG06MzQ0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIndhaXQgZm9yICVzIgorbXNnc3RyICJlc3BlcmEgZGUgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9JUEMucG06MzQ5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGRpZG4ndCBjb21wbGV0ZSBpbiAlZCBzZWNvbmQiCittc2dpZF9wbHVyYWwgIiVzIGRpZG4ndCBjb21wbGV0ZSBpbiAlZCBzZWNvbmRzIgorbXNnc3RyWzBdICIlcyBubyBzJ2hhIGNvbXBsZXRhdCBlbiAlZCBzZWdvbiIKK21zZ3N0clsxXSAiJXMgbm8gcydoYSBjb21wbGV0YXQgZW4gJWQgc2Vnb25zIgorCisjOiBzY3JpcHRzL0Rwa2cvU2hsaWJzL09iamR1bXAucG06MjIyCisjLCBmdXp6eSwgcGVybC1mb3JtYXQKK21zZ2lkICJDb3VsZG4ndCBwYXJzZSBkeW5hbWljIHJlbG9jYXRpb24gcmVjb3JkOiAlcyIKK21zZ3N0ciAibm8gcydoYSBwb2d1dCBhbmFsaXR6YXIgbGEgaW5mb3JtYWNpw7MgZGUgY29udHJvbCBkZSAlcy4iCisKKyM6IHNjcmlwdHMvRHBrZy9TaGxpYnMvT2JqZHVtcC5wbTozMzkKKyMsIGZ1enp5LCBwZXJsLWZvcm1hdAorbXNnaWQgIkNvdWxkbid0IHBhcnNlIGR5bmFtaWMgc3ltYm9sIGRlZmluaXRpb246ICVzIgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IGFuYWxpdHphciBsYSBpbmZvcm1hY2nDsyBkZSBjb250cm9sIGRlICVzLiIKKworIzogc2NyaXB0cy9EcGtnL1NobGlicy9TeW1ib2wucG06MTExCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInN5bWJvbCBuYW1lIHVuc3BlY2lmaWVkOiAlcyIKK21zZ3N0ciAibm8gcydoYSBlc3BlY2lmaWNhdCBlbCBub20gZGVsIHPDrW1ib2w6ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU2hsaWJzL1N5bWJvbC5wbToxNjgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAieW91IGNhbid0IHVzZSBzeW12ZXIgdGFnIHRvIGNhdGNoIHVudmVyc2lvbmVkIHN5bWJvbHM6ICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9TaGxpYnMvU3ltYm9sRmlsZS5wbToyMTgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiU3ltYm9sIGluZm9ybWF0aW9uIG11c3QgYmUgcHJlY2VkZWQgYnkgYSBoZWFkZXIgKGZpbGUgJXMsIGxpbmUgJXMpLiIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU2hsaWJzL1N5bWJvbEZpbGUucG06MjI2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIkZhaWxlZCB0byBwYXJzZSBsaW5lIGluICVzOiAlcyIKK21zZ3N0ciAiTm8gcydoYSBwb2d1dCBhbmFsaXR6YXIgbGEgbMOtbmlhIGVuICVzOiAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NobGlicy9TeW1ib2xGaWxlLnBtOjI1OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJGYWlsZWQgdG8gcGFyc2UgYSBsaW5lIGluICVzOiAlcyIKK21zZ3N0ciAiTm8gcydoYSBwb2d1dCBhbmFsaXR6YXIgdW5hIGzDrW5pYSBlbiAlczogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9TaGxpYnMvU3ltYm9sRmlsZS5wbToyNzEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiVHJpZWQgdG8gbWVyZ2UgdGhlIHNhbWUgb2JqZWN0ICglcykgdHdpY2UgaW4gYSBzeW1maWxlLiIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU2hsaWJzL1N5bWJvbEZpbGUucG06Mzg4Cittc2dpZCAiQ2FuJ3QgbWVyZ2Ugc3ltYm9scyBmcm9tIG9iamVjdHMgd2l0aG91dCBTT05BTUUuIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvQXJjaGl2ZS5wbTo2NAorIywgZnV6enkKK21zZ2lkICJ3cml0ZSBvbiB0YXIgaW5wdXQiCittc2dzdHIgImVycm9yIGRlIGxlY3R1cmEgZW4gbCdlbnRyYWRhIGVzdMOgbmRhcmQiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvQXJjaGl2ZS5wbTo4OQorIywgZnV6enkKK21zZ2lkICJjbG9zZSBvbiB0YXIgaW5wdXQiCittc2dzdHIgImVycm9yIGRlIGxlY3R1cmEgZW4gbCdlbnRyYWRhIGVzdMOgbmRhcmQiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvQXJjaGl2ZS5wbToxMTQgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo1MDMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IGNyZWF0ZSBkaXJlY3RvcnkgJXMiCittc2dzdHIgIm5vIGVzIHBvdCBjcmVhciBlbCBkaXJlY3RvcmkgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvQXJjaGl2ZS5wbToxNDUgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOjMwNworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjE5OQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgb3BlbmRpciAlcyIKK21zZ3N0ciAibm8gZXMgcG90IG9icmlyIGVsIGRpcmVjdG9yaSAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9BcmNoaXZlLnBtOjE1MiBzY3JpcHRzL0Rwa2cvU291cmNlL0FyY2hpdmUucG06MTU2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIlVuYWJsZSB0byByZW5hbWUgJXMgdG8gJXMiCittc2dzdHIgIm5vIGVzIHBvdCBjYW52aWFyIGVsIG5vbSBkZSAlcyBhICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL0Z1bmN0aW9ucy5wbTozNAorIywgZnV6enksIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IHN0YXQgZGlyZWN0b3J5ICVzIChiZWZvcmUgcmVtb3ZhbCkiCittc2dzdHIgIm5vIGVzIHBvdCBmZXIgwqtzdGF0wrsgc29icmUgZWwgZml0eGVyICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL0Z1bmN0aW9ucy5wbTo0MAorIywgZnV6enksIHBlcmwtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoZWNrIGZvciByZW1vdmFsIG9mIGRpciBgJXMnIgorbXNnc3RyICJubyBlcyBwb3QgY29tcHJvdmFyIGwnZXhpc3TDqG5jaWEgZGUgwqslLjI1MHPCuyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9GdW5jdGlvbnMucG06NDIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAicm0gLXJmIGZhaWxlZCB0byByZW1vdmUgYCVzJyIKK21zZ3N0ciAicm0gLXJmIG5vIGhhIHBvZ3V0IHN1cHJpbWlyIMKrJXPCuyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9GdW5jdGlvbnMucG06ODMgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo1NTAKKyMsIGZ1enp5LCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCBjaGFuZ2UgdGltZXN0YW1wIGZvciAlcyIKK21zZ3N0ciAibm8gZXMgcG90IGNyZWFyIGVsIGRpcmVjdG9yaSAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9GdW5jdGlvbnMucG06ODUKKyMsIGZ1enp5LCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZWFkIHRpbWVzdGFtcCBmcm9tICVzIgorbXNnc3RyICJubyBlcyBwb3QgY3JlYXIgZWwgZGlyZWN0b3JpICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjcwIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo0NDMKK21zZ2lkICJiaW5hcnkgZmlsZSBjb250ZW50cyBjaGFuZ2VkIgorbXNnc3RyICJoYSBjYW52aWF0IGVsIGNvbnRpbmd1dCBkJ3VuIGZpdHhlciBiaW5hcmkiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MTE4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImZpbGUgJXMgaGFzIG5vIGZpbmFsIG5ld2xpbmUgKGVpdGhlciBvcmlnaW5hbCBvciBtb2RpZmllZCB2ZXJzaW9uKSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjEyMgorIywgZnV6enksIHBlcmwtZm9ybWF0Cittc2dpZCAidW5rbm93biBsaW5lIGZyb20gZGlmZiAtdSBvbiAlczogYCVzJyIKK21zZ3N0ciAibCdvcGNpw7Mgwqslc8K7IMOpcyBkZXNjb25lZ3VkYSIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbToxMjUgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbToxMjgKK21zZ2lkICJmYWlsZWQgdG8gd3JpdGUiCittc2dzdHIgIm5vIHMnaGEgcG9ndXQgZXNjcml1cmUiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MTM4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImRpZmYgb24gJXMiCittc2dzdHIgImRpZmYgZGUgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MTY0IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MTgzCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjIwNiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjIxOAorIywgZnV6enksIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IHN0YXQgZmlsZSAlcyIKK21zZ3N0ciAibm8gZXMgcG90IGZlciDCq3N0YXTCuyBzb2JyZSBlbCBmaXR4ZXIgwqslc8K7IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjE3MyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjE3NQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVhZCBsaW5rICVzIgorbXNnc3RyICJubyBlcyBwb3QgbGxlZ2lyIGwnZW5sbGHDpyAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbToyMDIKK21zZ2lkICJkZXZpY2Ugb3Igc29ja2V0IGlzIG5vdCBhbGxvd2VkIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MjExCittc2dpZCAidW5rbm93biBmaWxlIHR5cGUiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbToyMjQKKyMsIGZ1enp5LCBwZXJsLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nIGRlbGV0aW9uIG9mIGZpbGUgJXMiCittc2dzdHIgInMnb21ldCBsYSBzdXByZXNzacOzIGRlbCBmaXR4ZXIgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MjI3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nIGRlbGV0aW9uIG9mIGRpcmVjdG9yeSAlcyIKK21zZ3N0ciAicydvbWV0IGxhIHN1cHJlc3Npw7MgZGVsIGRpcmVjdG9yaSAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbToyMjkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgZGVsZXRpb24gb2Ygc3ltbGluayAlcyIKK21zZ3N0ciAicydvbWV0IGxhIHN1cHJlc3Npw7MgZGUgbCdlbmxsYcOnIHNpbWLDsmxpYyAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbToyNzEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibmV3bHkgY3JlYXRlZCBlbXB0eSBmaWxlICclcycgd2lsbCBub3QgYmUgcmVwcmVzZW50ZWQgaW4gZGlmZiIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjI3NQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJleGVjdXRhYmxlIG1vZGUgJTA0byBvZiAnJXMnIHdpbGwgbm90IGJlIHJlcHJlc2VudGVkIGluIGRpZmYiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbToyODAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAic3BlY2lhbCBtb2RlICUwNG8gb2YgJyVzJyB3aWxsIG5vdCBiZSByZXByZXNlbnRlZCBpbiBkaWZmIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MzAwIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo0NDIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlcHJlc2VudCBjaGFuZ2UgdG8gJXM6ICVzIgorbXNnc3RyICJubyBlcyBwb3QgcmVwcmVzZW50YXIgZWwgY2FudmkgYSAlczogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MzA3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZXByZXNlbnQgY2hhbmdlIHRvICVzOiIKK21zZ3N0ciAibm8gZXMgcG90IHJlcHJlc2VudGFyIGVsIGNhbnZpIGEgJXM6IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjMwOAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIgIG5ldyB2ZXJzaW9uIGlzICVzIgorbXNnc3RyICIgIGxhIHZlcnNpw7Mgbm92YSDDqXMgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MzA5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiAgb2xkIHZlcnNpb24gaXMgJXMiCittc2dzdHIgIiAgbGEgdmVyc2nDsyBhbnRpZ2Egw6lzICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjM4NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJleHBlY3RlZCBeLS0tIGluIGxpbmUgJWQgb2YgZGlmZiBgJXMnIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06Mzg5CisjLCBmdXp6eSwgcGVybC1mb3JtYXQKK21zZ2lkICJkaWZmIGAlcycgcGF0Y2hlcyBmaWxlIHdpdGggbmFtZSBlbmRpbmcgLmRwa2ctb3JpZyIKK21zZ3N0ciAiZWwgZGlmZiDCqyVzwrsgYXBsaWNhIHBlZGHDp29zIGEgdW4gZml0eGVyIGFtYiBub20gYWNhYmF0IGVuIC5kcGtnLW9yaWciCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MzkzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImRpZmYgYCVzJyBmaW5pc2hlcyBpbiBtaWRkbGUgb2YgLS0tLysrKyAobGluZSAlZCkiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTozOTYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibGluZSBhZnRlciAtLS0gaXNuJ3QgYXMgZXhwZWN0ZWQgaW4gZGlmZiBgJXMnIChsaW5lICVkKSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjQwMgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJub25lIG9mIHRoZSBmaWxlbmFtZXMgaW4gLS0tLysrKyBhcmUgdmFsaWQgaW4gZGlmZiAnJXMnIChsaW5lICVkKSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjQxMAorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjEyNworIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBjb250YWlucyBhbiBpbnNlY3VyZSBwYXRoOiAlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjQxNQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJkaWZmICVzIG1vZGlmaWVzIGZpbGUgJXMgdGhyb3VnaCBhIHN5bWxpbms6ICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NDI0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIm9yaWdpbmFsIGFuZCBtb2RpZmllZCBmaWxlcyBhcmUgL2Rldi9udWxsIGluIGRpZmYgYCVzJyAobGluZSAlZCkiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo0MjcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZmlsZSByZW1vdmFsIHdpdGhvdXQgcHJvcGVyIGZpbGVuYW1lIGluIGRpZmYgYCVzJyAobGluZSAlZCkiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo0MzAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZGlmZiAlcyByZW1vdmVzIGEgbm9uLWV4aXN0aW5nIGZpbGUgJXMgKGxpbmUgJWQpIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NDQyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImRpZmYgYCVzJyBwYXRjaGVzIHNvbWV0aGluZyB3aGljaCBpcyBub3QgYSBwbGFpbiBmaWxlIgorbXNnc3RyICJlbCBkaWZmIMKrJXPCuyBhcGxpY2EgcGVkYcOnb3MgYSBhbGd1bmEgY29zYSBxdWUgbm8gw6lzIHVuIGZpdHhlciBwbGEiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NDQ2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImRpZmYgYCVzJyBwYXRjaGVzIGZpbGUgJXMgdHdpY2UiCittc2dzdHIgImVsIGRpZmYgwqslc8K7IGFwbGljYSBwZWRhw6dvcyBhbCBmaXR4ZXIgJXMgZHVlcyB2ZWdhZGVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjQ2NCBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjQ2OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBkaWZmIGAlcyciCittc2dzdHIgInMnaGEgdHJvYmF0IHVuIGZpIGluZXNwZXJhdCBkZWwgZGlmZiDCqyVzwrsiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NDc3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImV4cGVjdGVkIFsgKy1dIGF0IHN0YXJ0IG9mIGxpbmUgJWQgb2YgZGlmZiBgJXMnIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NDg0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImV4cGVjdGVkIF5AQCBhdCBsaW5lICVkIG9mIGRpZmYgYCVzJyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjQ4OQorIywgZnV6enksIHBlcmwtZm9ybWF0Cittc2dpZCAiZGlmZiBgJXMnIGRvZXNuJ3QgY29udGFpbiBhbnkgcGF0Y2giCittc2dzdHIgIkVsIHBhcXVldCDCqyVzwrsgbm8gY29udMOpIGNhcCBmaXR4ZXIgKCEpXG4iCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NTU0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInJlbW92ZSBwYXRjaCBiYWNrdXAgZmlsZSAlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjU5NQorbXNnaWQgIm5vbmV4aXN0ZW50IgorbXNnc3RyICJubyBleGlzdGVudCIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo1OTYgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOjQ1OAorIywgZnV6enksIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IHN0YXQgJXMiCittc2dzdHIgIm5vIGVzIHBvdCBmZXIgwqtzdGF0wrsgc29icmUgwqslc8K7OiAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo1OTgKK21zZ2lkICJwbGFpbiBmaWxlIgorbXNnc3RyICJmaXR4ZXIgcGxhIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjU5OQorbXNnaWQgImRpcmVjdG9yeSIKK21zZ3N0ciAiZGlyZWN0b3JpIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjYwMAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJzeW1saW5rIHRvICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NjAxCittc2dpZCAiYmxvY2sgZGV2aWNlIgorbXNnc3RyICJkaXNwb3NpdGl1IGRlIGJsb2MiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NjAyCittc2dpZCAiY2hhcmFjdGVyIGRldmljZSIKK21zZ3N0ciAiZGlzcG9zaXRpdSBkZSBjYXLDoGN0ZXIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NjAzCittc2dpZCAibmFtZWQgcGlwZSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjYwNAorbXNnaWQgIm5hbWVkIHNvY2tldCIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG06MTg4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGlzIG5vdCB0aGUgbmFtZSBvZiBhIGZpbGUiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOjIwOAorIywgZnV6enksIHBlcmwtZm9ybWF0Cittc2dpZCAibWlzc2luZyBjcml0aWNhbCBzb3VyY2UgY29udHJvbCBmaWVsZCAlcyIKK21zZ3N0ciAiZml0eGVyIGRlIGNvbnRyb2wgZm9udCAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOjIzNgorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisic291cmNlIHBhY2thZ2UgZm9ybWF0IGAlcycgaXMgbm90IHN1cHBvcnRlZCAoUGVybCBtb2R1bGUgJXMgaXMgcmVxdWlyZWQpIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbToyNDAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBGb3JtYXQgZmllbGQgYCVzJyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG06Mjg4Cittc2dpZCAic291cmNlIGFuZCB2ZXJzaW9uIGFyZSByZXF1aXJlZCB0byBjb21wdXRlIHRoZSBzb3VyY2UgYmFzZW5hbWUiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOjM3MSBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG06MzczCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB2ZXJpZnkgc2lnbmF0dXJlIG9uICVzIgorbXNnc3RyICJubyBzJ2hhIHBvZ3V0IHZlcmlmaWNhciBsYSBzaWduYXR1cmEgZGUgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbTozODAgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOjM4MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgdmVyaWZ5IHNpZ25hdHVyZSBvbiAlcyBzaW5jZSBncGcgaXNuJ3QgaW5zdGFsbGVkIgorbXNnc3RyICIiCisibm8gcydoYSBwb2d1dCB2ZXJpZmljYXIgbGEgc2lnbmF0dXJhIGRlICVzIHBlcnF1w6ggZ3BnIG5vIGVzdMOgIGluc3RhbMK3bGF0IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG06MzkxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGlzIG5vdCBhIHZhbGlkIG9wdGlvbiBmb3IgJXMiCittc2dzdHIgIiVzIG5vIMOpcyB1bmEgb3BjacOzIHbDoGxpZGEgcGVyIGEgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbTo0NjAKKyMsIGZ1enp5LCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGRvZXMgbm90IGV4aXN0IgorbXNnc3RyICJzJ2hhIGRvbmF0IC0tdXBkYXRlIHBlcsOyICVzIG5vIGV4aXN0ZWl4IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG06NDY0CisjLCBmdXp6eSwgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3QgbWFrZSAlcyBleGVjdXRhYmxlIgorbXNnc3RyICJubyBlcyBwb3QgbW91cmUgwqslc8K7IGEgdW4gZml0eGVyIGV4aXN0ZW50IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG06NDY2CisjLCBmdXp6eSwgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgYSBwbGFpbiBmaWxlIgorbXNnc3RyICIgJXMgKG5vIMOpcyB1biBmaXR4ZXIgbm9ybWFsKVxuIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG06NTE3CisjLCBmdXp6eSwgcGVybC1mb3JtYXQKKyN8IG1zZ2lkICIlcyBpcyBub3QgYSBzdXBwb3J0ZWQgY29tcHJlc3Npb24iCittc2dpZCAiJyVzJyBpcyBub3Qgc3VwcG9ydGVkIGJ5IHRoZSBzb3VyY2UgZm9ybWF0ICclcyciCittc2dzdHIgIiVzIG5vIGVzIHVuYSBjb21wcmVzc2nDsyBpbXBsZW1lbnRhZGEiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbTo2MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICItcyVzIG9wdGlvbiBvdmVycmlkZXMgZWFybGllciAtcyVzIG9wdGlvbiIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06ODQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAic291cmNlIGhhbmRsaW5nIHN0eWxlIC1zJXMgbm90IGFsbG93ZWQgd2l0aCAteCIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06OTYKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9uYXRpdmUucG06NTEKK21zZ2lkICJtdWx0aXBsZSB0YXJmaWxlcyBpbiB2MS4wIHNvdXJjZSBwYWNrYWdlIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToxMDEgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjEyOQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bnJlY29nbml6ZWQgZmlsZSBmb3IgYSAlcyBzb3VyY2UgcGFja2FnZTogJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjEwNgorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL25hdGl2ZS5wbTo1OAorbXNnaWQgIm5vIHRhcmZpbGUgaW4gRmlsZXMgZmllbGQiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjEwOQorbXNnaWQgIm5hdGl2ZSBwYWNrYWdlIHdpdGggLm9yaWcudGFyIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToxMjIKKyMsIGZ1enp5LCBwZXJsLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW5hbWUgYCVzJyB0byBgJXMnIgorbXNnc3RyICJubyBlcyBwb3QgY2FudmlhciBlbCBub20gZGUgJXMgYSAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjEyNiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06MTQxCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06MTUzIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbToxNjYKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9ienIucG06MTkwCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvbmF0aXZlLnBtOjYxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVucGFja2luZyAlcyIKK21zZ3N0ciAicydlc3TDoCBkZXNlbXBhcXVldGFudCAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjEzMworIywgZnV6enkKK21zZ2lkICJ1bmFibGUgdG8ga2VlcCBvcmlnIGRpcmVjdG9yeSAoYWxyZWFkeSBleGlzdHMpIgorbXNnc3RyICJubyBlcyBwb3Qgb2JyaXIgZWwgZGlyZWN0b3JpIGRlIGNvbnRyb2wgdGVtcG9yYWwiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToxNDAKKyMsIGZ1enp5LCBwZXJsLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZW5hbWUgbmV3bHktZXh0cmFjdGVkICVzIHRvICVzIgorbXNnc3RyICJubyBlcyBwb3Qgc3VwcmltaXIgbGEgdmVyc2nDsyBhY2FiYWRhIGQnZXh0cmF1cmUgZGUgwqslLjI1MHPCuyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjE0NgorIywgZnV6enksIHBlcmwtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlbmFtZSBzYXZlZCAlcyB0byAlcyIKK21zZ3N0ciAibm8gZXMgcG90IGNhbnZpYXIgZWwgbm9tIGRlICVzIGEgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToxNTMgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjIyMgorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjE3MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJhcHBseWluZyAlcyIKK21zZ3N0ciAicydlc3TDoCBhcGxpY2FudCAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjE1OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1cHN0cmVhbSBmaWxlcyB0aGF0IGhhdmUgYmVlbiBtb2RpZmllZDogJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjE2OAorbXNnaWQgIm9ubHkgc3VwcG9ydHMgZ3ppcCBjb21wcmVzc2lvbiIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MTc5Cittc2dpZCAiIgorIi1iIHRha2VzIGF0IG1vc3QgYSBkaXJlY3RvcnkgYW5kIGFuIG9yaWcgc291cmNlIGFyZ3VtZW50ICh3aXRoIHYxLjAgc291cmNlICIKKyJwYWNrYWdlKSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MTg1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInNvdXJjZSBoYW5kbGluZyBzdHlsZSAtcyVzIG5vdCBhbGxvd2VkIHdpdGggLWIiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjIwMAorIywgZnV6enksIHBlcmwtZm9ybWF0Cittc2dpZCAicGFja2VkIG9yaWcgYCVzJyBleGlzdHMgYnV0IGlzIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgImVsIGZpdHhlciBwYXJ0IMKrJS4yNTBzwrsgbm8gw6lzIHVuIGZpdHhlciBub3JtYWwiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToyMTIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IHN0YXQgb3JpZyBhcmd1bWVudCAlcyIKK21zZ3N0ciAibm8gZXMgcG90IGZlciDCq3N0YXTCuyBzb2JyZSBsJ2FyZ3VtZW50IG9yaWdpbmFsICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MjE4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJvcmlnIGFyZ3VtZW50IGlzIHVucGFja2VkIGJ1dCBzb3VyY2UgaGFuZGxpbmcgc3R5bGUgLXMlcyBjYWxscyBmb3IgcGFja2VkICguIgorIm9yaWcudGFyLjxleHQ+KSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MjI2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJvcmlnIGFyZ3VtZW50IGlzIHBhY2tlZCBidXQgc291cmNlIGhhbmRsaW5nIHN0eWxlIC1zJXMgY2FsbHMgZm9yIHVucGFja2VkICguIgorIm9yaWcvKSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MjMxCisjLCBmdXp6eSwgcGVybC1mb3JtYXQKK21zZ2lkICJvcmlnIGFyZ3VtZW50ICVzIGlzIG5vdCBhIHBsYWluIGZpbGUgb3IgZGlyZWN0b3J5IgorbXNnc3RyICJlbCBjb25mZmlsZSDCqyVzwrsgbm8gw6lzIHVuIGZpdHhlciBub3JtYWwiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToyMzcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIm9yaWcgYXJndW1lbnQgaXMgZW1wdHkgKG1lYW5zIG5vIG9yaWcsIG5vIGRpZmYpIGJ1dCBzb3VyY2UgaGFuZGxpbmcgc3R5bGUgLXMiCisiJXMgd2FudHMgc29tZXRoaW5nIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToyNTAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5wYWNrZWQgb3JpZyBgJXMnIGV4aXN0cyBidXQgaXMgbm90IGEgZGlyZWN0b3J5IgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToyNTUKKyMsIGZ1enp5LCBwZXJsLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IHB1dGF0aXZlIHVucGFja2VkIG9yaWcgYCVzJyIKK21zZ3N0ciAibm8gZXMgcG90IGZlciDCq3N0YXTCuyBzb2JyZSBlbCBmaXR4ZXIgbm91IMKrJS4yNTBzwrsiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToyNjQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAic291cmNlIGRpcmVjdG9yeSAnJXMnIGlzIG5vdCA8c291cmNlcGFja2FnZT4tPHVwc3RyZWFtdmVyc2lvbj4gJyVzJyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MjczCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIi5vcmlnIGRpcmVjdG9yeSBuYW1lICVzIGlzIG5vdCA8cGFja2FnZT4tPHVwc3RyZWFtdmVyc2lvbj4gKHdhbnRlZCAlcykiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjI4MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiLm9yaWcudGFyIG5hbWUgJXMgaXMgbm90IDxwYWNrYWdlPl88dXBzdHJlYW12ZXJzaW9uPi5vcmlnLnRhciAod2FudGVkICVzKSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06Mjk0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJ0YXJmaWxlIGAlcycgYWxyZWFkeSBleGlzdHMsIG5vdCBvdmVyd3JpdGluZywgZ2l2aW5nIHVwOyB1c2UgLXNVIG9yIC1zUiB0byAiCisib3ZlcnJpZGUiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjI5OAorIywgZnV6enksIHBlcmwtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoZWNrIGZvciBleGlzdGVuY2Ugb2YgYCVzJyIKK21zZ3N0ciAibm8gZXMgcG90IGNvbXByb3ZhciBsJ2V4aXN0w6huY2lhIGRlIMKrJS4yNTBzwrsiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbTozMTMgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjM3NQorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL25hdGl2ZS5wbTo5OAorIywgZnV6enksIHBlcmwtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbmFtZSBgJXMnIChuZXdseSBjcmVhdGVkKSB0byBgJXMnIgorbXNnc3RyICJubyBlcyBwb3QgY2FudmlhciBlbCBub20gZGUgJXMgYSAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjMxNiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06Mzc4CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NjAzCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvbmF0aXZlLnBtOjEwMgorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjM2NworIywgZnV6enksIHBlcmwtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoYW5nZSBwZXJtaXNzaW9uIG9mIGAlcyciCittc2dzdHIgIm5vIGVzIHBvZGVuIGVzdGFibGlyIGVscyBwZXJtaXNvcyBkJ2V4ZWN1Y2nDsyBlbiDCqyUuMjUwc8K7IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MzE4IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTozNDgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiYnVpbGRpbmcgJXMgdXNpbmcgZXhpc3RpbmcgJXMiCittc2dzdHIgInMnZXN0w6AgY29uc3RydWludCAlcyBlbXByYW50ICVzIGV4aXN0ZW50IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MzI3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJvcmlnIGRpciBgJXMnIGFscmVhZHkgZXhpc3RzLCBub3Qgb3ZlcndyaXRpbmcsIGdpdmluZyB1cDsgdXNlIC1zQSwgLXNLIG9yIC0iCisic1AgdG8gb3ZlcnJpZGUiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjMzNQorIywgZnV6enksIHBlcmwtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoZWNrIGZvciBleGlzdGVuY2Ugb2Ygb3JpZyBkaXIgYCVzJyIKK21zZ3N0ciAibm8gZXMgcG90IGNvbXByb3ZhciBsJ2V4aXN0w6huY2lhIGRlIMKrJS4yNTBzwrsiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbTozNjYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidGhlIGRpZmYgbW9kaWZpZXMgdGhlIGZvbGxvd2luZyB1cHN0cmVhbSBmaWxlczogJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjM2OAorbXNnaWQgIiIKKyJ1c2UgdGhlICczLjAgKHF1aWx0KScgZm9ybWF0IHRvIGhhdmUgc2VwYXJhdGUgYW5kIGRvY3VtZW50ZWQgY2hhbmdlcyB0byAiCisidXBzdHJlYW0gZmlsZXMsIHNlZSBkcGtnLXNvdXJjZSgxKSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MzcwCittc2dpZCAiYWJvcnRpbmcgZHVlIHRvIC0tYWJvcnQtb24tdXBzdHJlYW0tY2hhbmdlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06Mzg4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzOiB1bnJlcHJlc2VudGFibGUgY2hhbmdlcyB0byBzb3VyY2UiCittc2dzdHIgIiVzOiBoaSBoYSBjYW52aXMgbm8gcmVwcmVzZW50YWJsZXMgYWwgZm9udCIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjExOQorIywgZnV6enksIHBlcmwtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIGZpbGVzIGluICVzIHNvdXJjZSBwYWNrYWdlOiAlcy4qIgorbXNnc3RyICJTJ2VzdMOgIHJlZW1wbGHDp2FudCBmaXR4ZXJzIGRlbCBwYXF1ZXQgYW50aWMgJXMg4oCmXG4iCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbToxMzUKK21zZ2lkICJtaXNzaW5nIG9yaWcudGFyIG9yIGRlYmlhbi50YXIgZmlsZSBpbiB2Mi4wIHNvdXJjZSBwYWNrYWdlIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbToxNTUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAicmVxdWlyZWQgcmVtb3ZhbCBvZiBgJXMnIGluc3RhbGxlZCBieSBvcmlnaW5hbCB0YXJiYWxsIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbToyNDAKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbToyNTUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5hcHBseWluZyAlcyIKK21zZ3N0ciAicydlc3TDoCBkZXNhcGxpY2FudCAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjI2MyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06MzQ0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIm5vIHVwc3RyZWFtIHRhcmJhbGwgZm91bmQgYXQgJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjMxNAorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjMyOQorbXNnaWQgInBhdGNoZXMgYXJlIG5vdCBhcHBsaWVkLCBhcHBseWluZyB0aGVtIG5vdyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06MzMxCisjLCBmdXp6eSwgcGVybC1mb3JtYXQKK21zZ2lkICJzZXZlcmFsIG9yaWcudGFyIGZpbGVzIGZvdW5kICglcyBhbmQgJXMpIGJ1dCBvbmx5IG9uZSBpcyBhbGxvd2VkIgorbXNnc3RyICIiCisicydoYW4gdHJvYmF0IGRpdmVyc2VzIGVudHJhZGVzIGQnaW5mb3JtYWNpw7MgZGUgcGFxdWV0cywgbm9tw6lzIHNlJ24gcGVybWV0IHVuYSIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjM3MAorIywgZnV6enkKK21zZ2lkICJjb3B5IG9mIHRoZSBkZWJpYW4gZGlyZWN0b3J5IgorbXNnc3RyICJubyBlcyBwb3QgbGxlZ2lyIGVsIGRpcmVjdG9yaSDCq2luZm/CuyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjM4OAorbXNnaWQgInVucmVwcmVzZW50YWJsZSBjaGFuZ2VzIHRvIHNvdXJjZSIKK21zZ3N0ciAiaGkgaGEgY2FudmlzIG5vIHJlcHJlc2VudGFibGVzIGFsIGZvbnQiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTozOTEKKyMsIGZ1enp5CisjfCBtc2dpZCAibG9jYWwgY2hhbmdlcyBzdG9yZWQgaW4gJXMsIHRoZSBtb2RpZmllZCBmaWxlcyBhcmU6IgorbXNnaWQgImxvY2FsIGNoYW5nZXMgZGV0ZWN0ZWQsIHRoZSBtb2RpZmllZCBmaWxlcyBhcmU6IgorbXNnc3RyICJlbHMgY2FudmlzIGxvY2FscyBzJ2VtbWFnYXR6ZW1lbiBhICVzLCBlbHMgZml0eGVycyBtb2RpZmljYXRzIHPDs246IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NDEwCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvYnpyLnBtOjk3CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvbmF0aXZlLnBtOjc2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIi1iIHRha2VzIG9ubHkgb25lIHBhcmFtZXRlciB3aXRoIGZvcm1hdCBgJXMnIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo0NDQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorImFkZCAlcyBpbiBkZWJpYW4vc291cmNlL2luY2x1ZGUtYmluYXJpZXMgaWYgeW91IHdhbnQgdG8gc3RvcmUgdGhlIG1vZGlmaWVkICIKKyJiaW5hcnkgaW4gdGhlIGRlYmlhbiB0YXJiYWxsIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo0NTgKKyMsIGZ1enp5LCBwZXJsLWZvcm1hdAorbXNnaWQgInVud2FudGVkIGJpbmFyeSBmaWxlOiAlcyIKK21zZ3N0ciAiZml0eGVyIGRlIGNvbnRyb2wgYmluYXJpICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NDkzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJkZXRlY3RlZCAlZCB1bndhbnRlZCBiaW5hcnkgZmlsZSAoYWRkIGl0IGluIGRlYmlhbi9zb3VyY2UvaW5jbHVkZS1iaW5hcmllcyAiCisidG8gYWxsb3cgaXRzIGluY2x1c2lvbikuIgorbXNnaWRfcGx1cmFsICIiCisiZGV0ZWN0ZWQgJWQgdW53YW50ZWQgYmluYXJ5IGZpbGVzIChhZGQgdGhlbSBpbiBkZWJpYW4vc291cmNlL2luY2x1ZGUtIgorImJpbmFyaWVzIHRvIGFsbG93IHRoZWlyIGluY2x1c2lvbikuIgorbXNnc3RyWzBdICIiCittc2dzdHJbMV0gIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjUwOAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ5b3UgY2FuIGludGVncmF0ZSB0aGUgbG9jYWwgY2hhbmdlcyB3aXRoICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo1MTAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiYWJvcnRpbmcgZHVlIHRvIHVuZXhwZWN0ZWQgdXBzdHJlYW0gY2hhbmdlcywgc2VlICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo1MjAgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjY1MworIywgcGVybC1mb3JtYXQKK21zZ2lkICJsb2NhbCBjaGFuZ2VzIGhhdmUgYmVlbiByZWNvcmRlZCBpbiBhIG5ldyBwYXRjaDogJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjUyNCBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NjA5CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NjM3IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo2NTEKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbTozNjkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlbW92ZSAlcyIKK21zZ3N0ciAibm8gZXMgcG90IHN1cHJpbWlyICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NTM0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImFkZGluZyAlcyB0byAlcyIKK21zZ3N0ciAicydlc3TDoCBhZmVnaW50ICVzIGEgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo2MDEKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbTozNjUKKyMsIGZ1enp5LCBwZXJsLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byBjb3B5ICVzIHRvICVzIgorbXNnc3RyICJubyBlcyBwb3QgY2FudmlhciBlbCBub20gZGUgJXMgYSAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjYyNAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVnaXN0ZXIgY2hhbmdlcyBpbiAlcywgdGhpcyBwYXRjaCBhbHJlYWR5IGV4aXN0cyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NjM4CisjLCBmdXp6eQorI3wgbXNnaWQgInVucmVwcmVzZW50YWJsZSBjaGFuZ2VzIHRvIHNvdXJjZSIKK21zZ2lkICJ0aGVyZSBhcmUgbm8gbG9jYWwgY2hhbmdlcyB0byByZWNvcmQiCittc2dzdHIgImhpIGhhIGNhbnZpcyBubyByZXByZXNlbnRhYmxlcyBhbCBmb250IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NjQzCittc2dpZCAiRW50ZXIgdGhlIGRlc2lyZWQgcGF0Y2ggbmFtZTogIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9ienIucG06NTIKK21zZ2lkICIiCisiVGhpcyBzb3VyY2UgcGFja2FnZSBjYW4gb25seSBiZSBtYW5pcHVsYXRlZCB1c2luZyBienIsIHdoaWNoIGlzIG5vdCBpbiB0aGUgIgorIlBBVEguIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9ienIucG06NTkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorInNvdXJjZSBkaXJlY3RvcnkgaXMgbm90IHRoZSB0b3AgZGlyZWN0b3J5IG9mIGEgYnpyIHJlcG9zaXRvcnkgKCVzLy5ienIgbm90ICIKKyJwcmVzZW50KSwgYnV0IEZvcm1hdCBienIgd2FzIHNwZWNpZmllZCIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvYnpyLnBtOjY2CisjLCBmdXp6eSwgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBpcyBhIHN5bWxpbmsiCittc2dzdHIgIm1hbmNhICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvYnpyLnBtOjcyCisjLCBmdXp6eSwgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBpcyBhIHN5bWxpbmsgdG8gb3V0c2lkZSAlcyIKK21zZ3N0ciAibm8gZXMgcG90IGZlciBsJ2VubGxhw6cgc2ltYsOybGljIGRlICVzIGEgJXM6ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvYnpyLnBtOjgzCittc2dpZCAiZG9lc24ndCBjb250YWluIGEgYnpyIHJlcG9zaXRvcnkiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2J6ci5wbToxMjcKK21zZ2lkICJienIgc3RhdHVzIGV4aXRlZCBub256ZXJvIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9ienIucG06MTI5CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvZ2l0LnBtOjEzMworIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmNvbW1pdHRlZCwgbm90LWlnbm9yZWQgY2hhbmdlcyBpbiB3b3JraW5nIGRpcmVjdG9yeTogJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2J6ci5wbToxNzkKK21zZ2lkICJmb3JtYXQgdjMuMCB1c2VzIG9ubHkgb25lIHNvdXJjZSBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9ienIucG06MTgzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImV4cGVjdGVkICVzLCBnb3QgJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2N1c3RvbS5wbTo0MAorbXNnaWQgIkZvcm1hdCBgMy4wIChjdXN0b20pJyBpcyBvbmx5IHVzZWQgdG8gY3JlYXRlIHNvdXJjZSBwYWNrYWdlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvY3VzdG9tLnBtOjQ2Cittc2dpZCAibm8gZmlsZXMgaW5kaWNhdGVkIG9uIGNvbW1hbmQgbGluZSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvY3VzdG9tLnBtOjUzCittc2dpZCAiLS10YXJnZXQtZm9ybWF0IG9wdGlvbiBpcyBtaXNzaW5nIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9uYXRpdmUucG06NTQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5yZWNvZ25pemVkIGZpbGUgZm9yIGEgbmF0aXZlIHNvdXJjZSBwYWNrYWdlOiAlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvZ2l0LnBtOjU1Cittc2dpZCAiIgorIlRoaXMgc291cmNlIHBhY2thZ2UgY2FuIG9ubHkgYmUgbWFuaXB1bGF0ZWQgdXNpbmcgZ2l0LCB3aGljaCBpcyBub3QgaW4gdGhlICIKKyJQQVRILiIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvZ2l0LnBtOjYzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJzb3VyY2UgZGlyZWN0b3J5IGlzIG5vdCB0aGUgdG9wIGRpcmVjdG9yeSBvZiBhIGdpdCByZXBvc2l0b3J5ICglcy8uZ2l0IG5vdCAiCisicHJlc2VudCksIGJ1dCBGb3JtYXQgZ2l0IHdhcyBzcGVjaWZpZWQiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2dpdC5wbTo2OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJnaXQgcmVwb3NpdG9yeSAlcyB1c2VzIHN1Ym1vZHVsZXMuIFRoaXMgaXMgbm90IHlldCBzdXBwb3J0ZWQuIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9naXQucG06OTAKK21zZ2lkICJkb2Vzbid0IGNvbnRhaW4gYSBnaXQgcmVwb3NpdG9yeSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvZ2l0LnBtOjEzMQorbXNnaWQgImdpdCBscy1maWxlcyBleGl0ZWQgbm9uemVybyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvZ2l0LnBtOjE0OQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjcmVhdGluZyBzaGFsbG93IGNsb25lIHdpdGggZGVwdGggJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2dpdC5wbToxNjUKKyMsIGZ1enp5LCBwZXJsLWZvcm1hdAorbXNnaWQgImJ1bmRsaW5nOiAlcyIKK21zZ3N0ciAiZGJnOiAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2dpdC5wbToyMDEKK21zZ2lkICJmb3JtYXQgdjMuMCAoZ2l0KSB1c2VzIG9ubHkgb25lIC5naXQgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvZ2l0LnBtOjIwNworbXNnaWQgImZvcm1hdCB2My4wIChnaXQpIHVzZXMgb25seSBvbmUgLmdpdHNoYWxsb3cgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvZ2l0LnBtOjIxMAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJmb3JtYXQgdjMuMCAoZ2l0KSB1bmtub3duIGZpbGU6ICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9naXQucG06MjE0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImZvcm1hdCB2My4wIChnaXQpIGV4cGVjdGVkICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9naXQucG06MjIwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNsb25pbmcgJXMiCittc2dzdHIgInMnZXN0w6AgY2xvbmFudCAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2dpdC5wbToyMjcKK21zZ2lkICJzZXR0aW5nIHVwIHNoYWxsb3cgY2xvbmUiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjczCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIHNob3VsZCBiZSBhIGRpcmVjdG9yeSBvciBub24tZXhpc3RpbmciCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjc5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIHNob3VsZCBiZSBhIGZpbGUgb3Igbm9uLWV4aXN0aW5nIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbToxMjAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorInRoZSBzZXJpZXMgZmlsZSAoJXMpIGNvbnRhaW5zIHVuc3VwcG9ydGVkIG9wdGlvbnMgKCclcycsIGxpbmUgJXMpLCBkcGtnLSIKKyJzb3VyY2UgbWlnaHQgZmFpbCB3aGVuIGFwcGx5aW5nIHBhdGNoZXMuIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbToxMzgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IG1rZGlyICVzIgorbXNnc3RyICJubyBlcyBwb3QgZmVyIMKrbWtkaXIgJXPCuyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjIxMgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW4ndCBjcmVhdGUgc3ltbGluayAlcyIKK21zZ3N0ciAibm8gZXMgcG90IGNyZWFyIGwnZW5sbGHDpyBzaW1iw7JsaWMgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbToyOTQKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbToyOTcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5zdXBwb3J0ZWQgdmVyc2lvbiBvZiB0aGUgcXVpbHQgbWV0YWRhdGE6ICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9TdWJzdHZhcnMucG06MTUwCisjLCBmdXp6eSwgcGVybC1mb3JtYXQKK21zZ2lkICJiYWQgbGluZSBpbiBzdWJzdHZhcnMgZmlsZSAlcyBhdCBsaW5lICVkIgorbXNnc3RyICJzJ2hhIHByb2R1w690IHVuIGVycm9yIGVuIGxsZWdpciDCqyVzwrsgZW4gbGEgbMOtbmlhICVkIgorCisjOiBzY3JpcHRzL0Rwa2cvU3Vic3R2YXJzLnBtOjIxNworIywgcGVybC1mb3JtYXQKK21zZ2lkICJ0b28gbWFueSBzdWJzdGl0dXRpb25zIC0gcmVjdXJzaXZlID8gLSBpbiBgJXMnIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9TdWJzdHZhcnMucG06MjI0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVua25vd24gc3Vic3RpdHV0aW9uIHZhcmlhYmxlICR7JXN9IgorbXNnc3RyICJsYSB2YXJpYWJsZSBkZSBzdWJzdGl0dWNpw7MgJHslc30gw6lzIGRlc2NvbmVndWRhIgorCisjOiBzY3JpcHRzL0Rwa2cvU3Vic3R2YXJzLnBtOjI0OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bnVzZWQgc3Vic3RpdHV0aW9uIHZhcmlhYmxlICR7JXN9IgorbXNnc3RyICJsYSB2YXJpYWJsZSBkZSBzdWJzdGl0dWNpw7MgJHslc30gbm8gcyd1dGlsaXR6YSIKKworIzogc2NyaXB0cy9EcGtnL1ZhcnMucG06MzQKKyMsIGZ1enp5LCBwZXJsLWZvcm1hdAorbXNnaWQgInNvdXJjZSBwYWNrYWdlIG5hbWUgYCVzJyBjb250YWlucyBpbGxlZ2FsIGNoYXJhY3RlciBgJXMnIgorbXNnc3RyICJlbCBub20gZGUgbCdhY3RpdmFkb3IgY29udMOpIHVuIGNhcsOgY3RlciBpbnbDoGxpZCIKKworIzogc2NyaXB0cy9EcGtnL1ZhcnMucG06MzcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAic291cmNlIHBhY2thZ2UgbmFtZSBgJXMnIHN0YXJ0cyB3aXRoIG5vbi1hbHBoYW51bSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvVmFycy5wbTo0NgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJzb3VyY2UgcGFja2FnZSBoYXMgdHdvIGNvbmZsaWN0aW5nIHZhbHVlcyAtICVzIGFuZCAlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvVmVuZG9yL0RlYmlhbi5wbToxMDYKKyMsIGZ1enp5LCBwZXJsLWZvcm1hdAorbXNnaWQgInVua25vd24gaGFyZGVuaW5nIGZlYXR1cmU6ICVzIgorbXNnc3RyICJsJ2FyZ3VtZW50IMKrJXPCuyDDqXMgZGVzY29uZWd1dCIKKworIzogc2NyaXB0cy9EcGtnL1ZlbmRvci9EZWJpYW4ucG06MTEwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImluY29ycmVjdCB2YWx1ZSBpbiBoYXJkZW5pbmcgb3B0aW9uIG9mIERFQl9CVUlMRF9NQUlOVF9PUFRJT05TOiAlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvVmVuZG9yL1VidW50dS5wbTo2MSBzY3JpcHRzL0Rwa2cvVmVuZG9yL1VidW50dS5wbTo2MworbXNnaWQgIiIKKyJWZXJzaW9uIG51bWJlciBzdWdnZXN0cyBVYnVudHUgY2hhbmdlcywgYnV0IE1haW50YWluZXI6IGRvZXMgbm90IGhhdmUgVWJ1bnR1ICIKKyJhZGRyZXNzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9WZW5kb3IvVWJ1bnR1LnBtOjY3Cittc2dpZCAiIgorIlZlcnNpb24gbnVtYmVyIHN1Z2dlc3RzIFVidW50dSBjaGFuZ2VzLCBidXQgdGhlcmUgaXMgbm8gWFNCQy1PcmlnaW5hbC0iCisiTWFpbnRhaW5lciBmaWVsZCIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvVmVuZG9yL1VidW50dS5wbToxMjMKK21zZ2lkICInaGFyZGVuaW5nJyBmbGFnIGZvdW5kIGJ1dCAnaGFyZGVuaW5nLXdyYXBwZXInIG5vdCBpbnN0YWxsZWQiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1ZlbmRvci9VYnVudHUucG06MTQyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIm92ZXJyaWRpbmcgJXMgaW4gZW52aXJvbm1lbnQ6ICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9WZXJzaW9uLnBtOjIwNCBzY3JpcHRzL0Rwa2cvVmVyc2lvbi5wbToyMDYKKyMsIGZ1enp5LCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGlzIG5vdCBhIHZhbGlkIHZlcnNpb24iCittc2dzdHIgIiVzIG5vIMOpcyB1bmEgb3BjacOzIHbDoGxpZGEgcGVyIGEgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9WZXJzaW9uLnBtOjM3MQorIywgZnV6enkKK21zZ2lkICJ2ZXJzaW9uIG51bWJlciBjYW5ub3QgYmUgZW1wdHkiCittc2dzdHIgImxhIGNhZGVuYSBkZSB2ZXJzacOzIGVzdMOgIGJ1aWRhIgorCisjOiBzY3JpcHRzL0Rwa2cvVmVyc2lvbi5wbTozNzYKKyMsIGZ1enp5Cittc2dpZCAidmVyc2lvbiBudW1iZXIgZG9lcyBub3Qgc3RhcnQgd2l0aCBkaWdpdCIKK21zZ3N0ciAibGEgY2FkZW5hIGRlIHZlcnNpw7MgZXN0w6AgYnVpZGEiCisKKyM6IHNjcmlwdHMvRHBrZy9WZXJzaW9uLnBtOjM4MQorIywgZnV6enksIHBlcmwtZm9ybWF0Cittc2dpZCAidmVyc2lvbiBudW1iZXIgY29udGFpbnMgaWxsZWdhbCBjaGFyYWN0ZXIgYCVzJyIKK21zZ3N0ciAiZWwgbm9tIGRlIGwnYWN0aXZhZG9yIGNvbnTDqSB1biBjYXLDoGN0ZXIgaW52w6BsaWQiCisKKyM6IHNjcmlwdHMvRHBrZy9WZXJzaW9uLnBtOjM4NgorIywgZnV6enksIHBlcmwtZm9ybWF0Cittc2dpZCAiZXBvY2ggcGFydCBvZiB0aGUgdmVyc2lvbiBudW1iZXIgaXMgbm90IGEgbnVtYmVyOiAnJXMnIgorbXNnc3RyICJsJ8OocG9jYSBlbiBsYSB2ZXJzacOzIG5vIMOpcyB1biBuw7ptZXJvIgorCisjLCBmdXp6eQorI358IG1zZ2lkICIlczogZXhwb3J0ICVzIGZyb20gZHBrZy1idWlsZGZsYWdzIChvcmlnaW46ICVzKTogJXNcbiIKKyN+IG1zZ2lkICIlczogZHBrZy1idWlsZGZsYWdzIChvcmlnaW46ICVzKTogJXMgPSAlc1xuIgorI34gbXNnc3RyICIlczogcydlc3TDoCBleHBvcnRhbnQgJXMgZGUgZHBrZy1idWlsZGZsYWdzIChvcmlnZW46ICVzKTogJXNcbiIKKworI34gbXNnaWQgIm5lZWQgYW4gYWN0aW9uIG9wdGlvbiIKKyN+IG1zZ3N0ciAiZXMgcmVxdWVyZWl4IHVuYSBvcGNpw7MgZCdhY2Npw7MiCisKKyN+IG1zZ2lkICJubyBvcmlnLnRhciBmaWxlIGZvdW5kIgorI34gbXNnc3RyICJubyBzJ2hhIHRyb2JhdCBlbCBmaXR4ZXIgb3JpZy50YXIiCisKKyN+IG1zZ2lkICJjYW5ub3QgcmVuYW1lICVzIHRvICVzIgorI34gbXNnc3RyICJubyBlcyBwb3QgY2FudmlhciBlbCBub20gZGUgJXMgYSAlcyIKKworIywgZnV6enkKKyN+IG1zZ2lkICJjYW5ub3QgZXhlYyBkcGtnIgorI34gbXNnc3RyICJubyBlcyBwb3Qgc3VwcmltaXIgJXMiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gZ2V0IGxvZ2luIGluZm9ybWF0aW9uIGZvciB1c2VybmFtZSBcIiVzXCIiCisjfiBtc2dzdHIgIm5vIHMnaGEgcG9ndXQgb2J0ZW5pciBsYSBpbmZvcm1hY2nDsyBkJ2VudHJhZGEgcGVyIGEgbCd1c3Vhcmkgwqslc8K7IgorCisjfiBtc2dpZCAiIgorI34gIm5vIHV0bXAgZW50cnkgYXZhaWxhYmxlIGFuZCBMT0dOQU1FIG5vdCBkZWZpbmVkOyB1c2luZyB1aWQgb2YgcHJvY2VzcyAoJWQpIgorI34gbXNnc3RyICIiCisjfiAibm8gaGkgaGEgdW5hIGVudHJhZGEgdXRtcCBkaXNwb25pYmxlIGkgTE9HTkFNRSBubyBlc3TDoCBkZWZpbml0OyAiCisjfiAicyd1dGlsaXR6YXLDoCBsJ3VpZCBkZWwgcHJvY8OpcyAoJWQpIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGdldCBsb2dpbiBpbmZvcm1hdGlvbiBmb3IgdWlkICVkIgorI34gbXNnc3RyICJubyBlcyBwb3Qgb2J0ZW5pciBsYSBpbmZvcm1hY2nDsyBkJ2VudHJhZGEgcGVyIGEgbCd1aWQgJWQiCisKKyN+IG1zZ2lkICJjYW5ub3QgY29tYmluZSAtYiBvciAtQiBhbmQgLVMiCisjfiBtc2dzdHIgIm5vIGVzIHBvdCBjb21iaW5hciAtYiBvIC1CIGFtYiAtUyIKKworI34gbXNnaWQgIiVzOiBlcnJvcjogJXMiCisjfiBtc2dzdHIgIiVzOiBlcnJvcjogJXMiCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvcG8vZGUuZ21vIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3BvL2RlLmdtbwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zZDBlYzdmCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3BvL2RlLmdtbwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvcG8vZGUucG8gYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvcG8vZGUucG8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNTlhNGJmMgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9wby9kZS5wbwpAQCAtMCwwICsxLDQwOTUgQEAKKyMgR2VybWFuIHRyYW5zbGF0aW9uIG9mIHRoZSBzY3JpcHRzIGluIHRoZSBkcGtnIHBhY2thZ2UKKyMgVGhpcyBmaWxlIGlzIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBzYW1lIGxpY2Vuc2UgYXMgdGhlIGRwa2cgcGFja2FnZS4KKyMgKEMpIEhlbGdlIEtyZXV0em1hbm4gPGRlYmlhbkBoZWxnZWZqZWxsLmRlPiwgMjAwNy0yMDExLgorIworbXNnaWQgIiIKK21zZ3N0ciAiIgorIlByb2plY3QtSWQtVmVyc2lvbjogZHBrZy1zY3JpcHRzXG4iCisiUmVwb3J0LU1zZ2lkLUJ1Z3MtVG86IGRlYmlhbi1kcGtnQGxpc3RzLmRlYmlhbi5vcmdcbiIKKyJQT1QtQ3JlYXRpb24tRGF0ZTogMjAxMS0xMC0xNCAwNzoxMSswMjAwXG4iCisiUE8tUmV2aXNpb24tRGF0ZTogMjAxMS0wOS0xMCAxOToxMSswMjAwXG4iCisiTGFzdC1UcmFuc2xhdG9yOiBIZWxnZSBLcmV1dHptYW5uIDxkZWJpYW5AaGVsZ2VmamVsbC5kZT5cbiIKKyJMYW5ndWFnZS1UZWFtOiBkZSA8ZGViaWFuLWwxMG4tZ2VybWFuQGxpc3RzLmRlYmlhbi5vcmc+XG4iCisiTGFuZ3VhZ2U6IGRlXG4iCisiTUlNRS1WZXJzaW9uOiAxLjBcbiIKKyJDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9VVRGLThcbiIKKyJDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiA4Yml0XG4iCisiUGx1cmFsLUZvcm1zOiBucGx1cmFscz0yOyBwbHVyYWw9bj4xO1xuIgorCisjOiBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLnBsOjM2IHNjcmlwdHMvZHBrZy1idWlsZGZsYWdzLnBsOjMxCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjM3IHNjcmlwdHMvZHBrZy1jaGVja2J1aWxkZGVwcy5wbDozNgorIzogc2NyaXB0cy9kcGtnLWRpc3RhZGRmaWxlLnBsOjMzIHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjk2CisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDo1NiBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbDo0OQorIzogc2NyaXB0cy9kcGtnLW1lcmdlY2hhbmdlbG9ncy5wbDo1MyBzY3JpcHRzL2Rwa2ctbmFtZS5wbDo0NgorIzogc2NyaXB0cy9kcGtnLXBhcnNlY2hhbmdlbG9nLnBsOjMxIHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6NjAKKyM6IHNjcmlwdHMvZHBrZy1zY2Fuc291cmNlcy5wbDo3OCBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjUzMworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDo0NTUgc2NyaXB0cy9jaGFuZ2Vsb2cvZGViaWFuLnBsOjM0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIkRlYmlhbiAlcyB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICJEZWJpYW4gJXMgVmVyc2lvbiAlcy5cbiIKKworIzogc2NyaXB0cy9kcGtnLWFyY2hpdGVjdHVyZS5wbDozOAorbXNnaWQgIiIKKyJcbiIKKyJDb3B5cmlnaHQgKEMpIDE5OTktMjAwMSBNYXJjdXMgQnJpbmttYW5uIDxicmlua21kQGRlYmlhbi5vcmc+LlxuIgorIkNvcHlyaWdodCAoQykgMjAwNC0yMDA1IFNjb3R0IEphbWVzIFJlbW5hbnQgPHNjb3R0QG5ldHNwbGl0LmNvbT4uIgorbXNnc3RyICIiCisiXG4iCisiQ29weXJpZ2h0IChDKSAxOTk5LTIwMDEgTWFyY3VzIEJyaW5rbWFubiA8YnJpbmttZEBkZWJpYW4ub3JnPi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDQtMjAwNSBTY290dCBKYW1lcyBSZW1uYW50IDxzY290dEBuZXRzcGxpdC5jb20+LiIKKworIzogc2NyaXB0cy9kcGtnLWFyY2hpdGVjdHVyZS5wbDo0MiBzY3JpcHRzL2Rwa2ctYnVpbGRmbGFncy5wbDozNgorIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDo0NCBzY3JpcHRzL2Rwa2ctZGlzdGFkZGZpbGUucGw6MzgKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjEwMiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDo2MgorIzogc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGw6NTUgc2NyaXB0cy9kcGtnLXBhcnNlY2hhbmdlbG9nLnBsOjM3CisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjU0MiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjQ2MgorIzogc2NyaXB0cy9jaGFuZ2Vsb2cvZGViaWFuLnBsOjM5Cittc2dpZCAiIgorIlxuIgorIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgb3JcbiIKKyJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKK21zZ3N0ciAiIgorIlxuIgorIkRpZXMgaXN0IGZyZWllIFNvZnR3YXJlOyBsZXNlbiBTaWUgZGllIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIFZlcnNpb24gMlxuIgorIm9kZXIgbmV1ZXIgZsO8ciBkaWUgS29waWVyYmVkaW5ndW5nZW4uIEVzIGdpYnQgS0VJTkUgSGFmdHVuZy5cbiIKKworIzogc2NyaXB0cy9kcGtnLWFyY2hpdGVjdHVyZS5wbDo1MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIFs8YWN0aW9uPl1cbiIKKyJcbiIKKyJPcHRpb25zOlxuIgorIiAgLWE8ZGViaWFuLWFyY2g+ICAgIHNldCBjdXJyZW50IERlYmlhbiBhcmNoaXRlY3R1cmUuXG4iCisiICAtdDxnbnUtc3lzdGVtPiAgICAgc2V0IGN1cnJlbnQgR05VIHN5c3RlbSB0eXBlLlxuIgorIiAgLUwgICAgICAgICAgICAgICAgIGxpc3QgdmFsaWQgYXJjaGl0ZWN0dXJlcy5cbiIKKyIgIC1mICAgICAgICAgICAgICAgICBmb3JjZSBmbGFnIChvdmVycmlkZSB2YXJpYWJsZXMgc2V0IGluIGVudmlyb25tZW50KS5cbiIKKyJcbiIKKyJBY3Rpb25zOlxuIgorIiAgLWwgICAgICAgICAgICAgICAgIGxpc3QgdmFyaWFibGVzIChkZWZhdWx0KS5cbiIKKyIgIC1lPGRlYmlhbi1hcmNoPiAgICBjb21wYXJlIHdpdGggY3VycmVudCBEZWJpYW4gYXJjaGl0ZWN0dXJlLlxuIgorIiAgLWk8YXJjaC1hbGlhcz4gICAgIGNoZWNrIGlmIGN1cnJlbnQgRGViaWFuIGFyY2hpdGVjdHVyZSBpcyA8YXJjaC1hbGlhcz4uXG4iCisiICAtcTx2YXJpYWJsZT4gICAgICAgcHJpbnRzIG9ubHkgdGhlIHZhbHVlIG9mIDx2YXJpYWJsZT4uXG4iCisiICAtcyAgICAgICAgICAgICAgICAgcHJpbnQgY29tbWFuZCB0byBzZXQgZW52aXJvbm1lbnQgdmFyaWFibGVzLlxuIgorIiAgLXUgICAgICAgICAgICAgICAgIHByaW50IGNvbW1hbmQgdG8gdW5zZXQgZW52aXJvbm1lbnQgdmFyaWFibGVzLlxuIgorIiAgLWMgPGNvbW1hbmQ+ICAgICAgIHNldCBlbnZpcm9ubWVudCBhbmQgcnVuIHRoZSBjb21tYW5kIGluIGl0LlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIgorIkF1ZnJ1ZjogJXMgWzxPcHRpb24+IC4uLl0gWzxBa3Rpb24+XVxuIgorIlxuIgorIk9wdGlvbmVuOlxuIgorIiAgLWE8RGViaWFuLUFyY2g+ICAgIGRpZSBha3R1ZWxsZSBEZWJpYW4tQXJjaGl0ZWt0dXIgc2V0emVuLlxuIgorIiAgLXQ8R05VLVN5c3RlbT4gICAgIGRlbiBha3R1ZWxsZW4gR05VLVN5c3RlbXR5cCBzZXR6ZW4uXG4iCisiICAtTCAgICAgICAgICAgICAgICAgZ8O8bHRpZ2UgQXJjaGl0ZWt0dXJlbiBhdWZsaXN0ZW4uXG4iCisiICAtZiAgICAgICAgICAgICAgICAgWndhbmdzLVNjaGFsdGVyIChpbiBkZXIgVW1nZWJ1bmcgZ2VzZXR6dGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICBWYXJpYWJsZW4gw7xiZXJzY2hyZWliZW4pLlxuIgorIlxuIgorIkFrdGlvbmVuOlxuIgorIiAgLWwgICAgICAgICAgICAgICAgIFZhcmlhYmxlbiBhdWZsaXN0ZW4gKHZvcmVpbmdlc3RlbGx0KS5cbiIKKyIgIC1lPERlYmlhbi1BcmNoPiAgICBtaXQgYWt0dWVsbGVyIERlYmlhbi1BcmNoaXRla3R1ciB2ZXJnbGVpY2hlbi5cbiIKKyIgIC1pPEFyY2gtQWxpYXM+ICAgICBwcsO8ZmVuLCBvYiBha3R1ZWxsZSBEZWJpYW4tQXJjaGl0ZWt0dXIgPEFyY2gtQWxpYXM+ICIKKyJpc3QuXG4iCisiICAtcTxWYXJpYWJsZT4gICAgICAgbnVyIGRlbiBXZXJ0IHZvbiA8VmFyaWFibGU+IGF1c2dlYmVuLlxuIgorIiAgLXMgICAgICAgICAgICAgICAgIGRlbiBCZWZlaGwgenVtIFNldHplbiB2b24gVW1nZWJ1bmdzdmFyaWFibGVuIGF1c2dlYmVuLlxuIgorIiAgLXUgICAgICAgICAgICAgICAgIGRlbiBCZWZlaGwgenVtIEzDtnNjaGVuIHZvbiBVbWdlYnVuZ3N2YXJpYWJsZW4gIgorImF1c2dlYmVuLlxuIgorIiAgLWMgPEJlZmVobD4gICAgICAgIFVtZ2VidW5nIHNldHplbiB1bmQgZGFyaW4gZGVuIEJlZmVobCBhdXNmw7xocmVuLlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgIGRpZXNlIEhpbGZlbWVsZHVuZyBhbnplaWdlbi5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICBkaWUgVmVyc2lvbiBhbnplaWdlbi5cbiIKKworIzogc2NyaXB0cy9kcGtnLWFyY2hpdGVjdHVyZS5wbDoxMjAgc2NyaXB0cy9kcGtnLWJ1aWxkZmxhZ3MucGw6OTEKKyM6IHNjcmlwdHMvZHBrZy1kaXN0YWRkZmlsZS5wbDo2OCBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDoxOTQKKyM6IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjEzMyBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbDoxNDEKKyM6IHNjcmlwdHMvZHBrZy1wYXJzZWNoYW5nZWxvZy5wbDoxMTMgc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDoxMTkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gYCVzJyIKK21zZ3N0ciAidW5iZWthbm50ZSBPcHRpb24gwrslc8KrIgorCisjOiBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLnBsOjE0NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmtub3duIERlYmlhbiBhcmNoaXRlY3R1cmUgJXMsIHlvdSBtdXN0IHNwZWNpZnkgR05VIHN5c3RlbSB0eXBlLCB0b28iCittc2dzdHIgIiIKKyJ1bmJla2FubnRlIERlYmlhbi1BcmNoaXRla3R1ciAlcywgU2llIG3DvHNzZW4gYXVjaCBkZW4gR05VLVN5c3RlbXR5cCBhbmdlYmVuIgorCisjOiBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLnBsOjE1MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmtub3duIEdOVSBzeXN0ZW0gdHlwZSAlcywgeW91IG11c3Qgc3BlY2lmeSBEZWJpYW4gYXJjaGl0ZWN0dXJlLCB0b28iCittc2dzdHIgIiIKKyJ1bmJla2FubnRlciBHTlUtU3lzdGVtdHlwICVzLCBTaWUgbcO8c3NlbiBhdWNoIGRpZSBEZWJpYW4tQXJjaGl0ZWt0dXIgYW5nZWJlbiIKKworIzogc2NyaXB0cy9kcGtnLWFyY2hpdGVjdHVyZS5wbDoxNTgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5rbm93biBkZWZhdWx0IEdOVSBzeXN0ZW0gdHlwZSBmb3IgRGViaWFuIGFyY2hpdGVjdHVyZSAlcyIKK21zZ3N0ciAidW5iZWthbm50ZXIgU3RhbmRhcmQtR05VLVN5c3RlbXR5cCBmw7xyIERlYmlhbi1BcmNoaXRla3R1ciAlcyIKKworIzogc2NyaXB0cy9kcGtnLWFyY2hpdGVjdHVyZS5wbDoxNjEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIkRlZmF1bHQgR05VIHN5c3RlbSB0eXBlICVzIGZvciBEZWJpYW4gYXJjaCAlcyBkb2VzIG5vdCBtYXRjaCBzcGVjaWZpZWQgR05VICIKKyJzeXN0ZW0gdHlwZSAlcyIKK21zZ3N0ciAiIgorIlN0YW5kYXJkIEdOVS1TeXN0ZW10eXAgJXMgZsO8ciBEZWJpYW4tQXJjaGl0ZWt0dXIgJXMgcGFzc3QgbmljaHQgenUgIgorImFuZ2VnZWJlbmVtIEdOVS1TeXN0ZW10eXAgJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1hcmNoaXRlY3R1cmUucGw6MTgwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIlNwZWNpZmllZCBHTlUgc3lzdGVtIHR5cGUgJXMgZG9lcyBub3QgbWF0Y2ggZ2NjIHN5c3RlbSB0eXBlICVzLiIKK21zZ3N0ciAiQW5nZWdlYmVuZXIgR05VLVN5c3RlbXR5cCAlcyBwYXNzdCBuaWNodCB6dSBnY2MtU3lzdGVtdHlwICVzLiIKKworIzogc2NyaXB0cy9kcGtnLWFyY2hpdGVjdHVyZS5wbDoyMjUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgaXMgbm90IGEgc3VwcG9ydGVkIHZhcmlhYmxlIG5hbWUiCittc2dzdHIgIiVzIGlzdCBrZWluIHVudGVyc3TDvHR6dGVyIFZhcmlhYmxlbm5hbWUiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZGZsYWdzLnBsOjMzCittc2dpZCAiIgorIlxuIgorIkNvcHlyaWdodCAoQykgMjAxMC0yMDExIFJhcGhhZWwgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPi4iCittc2dzdHIgIiIKKyJcbiIKKyJDb3B5cmlnaHQgKEMpIDIwMTAtMjAxMSBSYXBoYWVsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4uIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRmbGFncy5wbDo0NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8YWN0aW9uPl1cbiIKKyJcbiIKKyJBY3Rpb25zOlxuIgorIiAgLS1nZXQgPGZsYWc+ICAgICAgIG91dHB1dCB0aGUgcmVxdWVzdGVkIGZsYWcgdG8gc3Rkb3V0LlxuIgorIiAgLS1vcmlnaW4gPGZsYWc+ICAgIG91dHB1dCB0aGUgb3JpZ2luIG9mIHRoZSBmbGFnIHRvIHN0ZG91dDpcbiIKKyIgICAgICAgICAgICAgICAgICAgICB2YWx1ZSBpcyBvbmUgb2YgdmVuZG9yLCBzeXN0ZW0sIHVzZXIsIGVudi5cbiIKKyIgIC0tbGlzdCAgICAgICAgICAgICBvdXRwdXQgYSBsaXN0IG9mIHRoZSBmbGFncyBzdXBwb3J0ZWQgYnkgdGhlIGN1cnJlbnQgIgorInZlbmRvci5cbiIKKyIgIC0tZXhwb3J0PShzaHxtYWtlfGNvbmZpZ3VyZSlcbiIKKyIgICAgICAgICAgICAgICAgICAgICBvdXRwdXQgc29tZXRoaW5nIGNvbnZlbmllbnQgdG8gaW1wb3J0IHRoZVxuIgorIiAgICAgICAgICAgICAgICAgICAgIGNvbXBpbGF0aW9uIGZsYWdzIGluIGEgc2hlbGwgc2NyaXB0LCBpbiBtYWtlLFxuIgorIiAgICAgICAgICAgICAgICAgICAgIG9yIG9uIGEgLi9jb25maWd1cmUgY29tbWFuZCBsaW5lLlxuIgorIiAgLS1kdW1wICAgICAgICAgICAgIG91dHB1dCBhbGwgY29tcGlsYXRpb24gZmxhZ3Mgd2l0aCB0aGVpciB2YWx1ZXNcbiIKKyIgIC0taGVscCAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCittc2dzdHIgIiIKKyJBdWZydWY6ICVzIFs8QWt0aW9uPl1cbiIKKyJcbiIKKyJBa3Rpb25lbjpcbiIKKyIgIC0tZ2V0IDxTY2hhbHRlcj4gICAgZGVuIGFuZ2VnZWJlbmVuIFNjaGFsdGVyIG5hY2ggU3Rkb3V0IGF1c2dlYmVuXG4iCisiICAtLW9yaWdpbiA8U2NoYWx0ZXI+IGRpZSBRdWVsbGUgZGVzIFNjaGFsdGVycyBuYWNoIFN0ZG91dCBhdXNnZWJlbixcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgbcO2Z2xpY2hlIFdlcnRlOiB2ZW5kb3IsIHN5c3RlbSwgdXNlciwgZW52XG4iCisiICAtLWxpc3QgICAgICAgICAgICAgIGVpbmUgTGlzdGUgZGVyIHZvbSBha3R1ZWxsZW4gTGllZmVyYW50ZW4gKFZlbmRvcilcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgdW50ZXJzdMO8dHplbiBTY2hhbHRlciBhdXNnZWJlblxuIgorIiAgLS1leHBvcnQ9KHNofG1ha2V8Y29uZmlndXJlKVxuIgorIiAgICAgICAgICAgICAgICAgICAgICBldHdhcyBwcmFrdGlzY2hlcyBhdXNnZWJlbiwgdW0gZGllIEtvbXBpbGllcnNjaGFsdGVyXG4iCisiICAgICAgICAgICAgICAgICAgICAgIGluIGVpbmVtIFNoZWxsLVNrcmlwdCwgaW4gTWFrZSBvZGVyIGF1ZiBkZXJcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgS29tbWFuZG96ZWlsZSBmw7xyIC4vY29uZmlndXJlIHp1IGltcG9ydGllcmVuXG4iCisiICAtLWR1bXAgICAgICAgICAgICAgIGFsbGUgS29tcGlsaWVyc2NoYWx0ZXIgbWl0IGlocmVuIFdlcnRlbiBhdXNnZWJlblxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICBkaWVzZSBIaWxmZW1lbGR1bmcgYW56ZWlnZW5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgZGllIFZlcnNpb24gYW56ZWlnZW5cbiIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkZmxhZ3MucGw6NjYgc2NyaXB0cy9kcGtnLWJ1aWxkZmxhZ3MucGw6NzIKKyM6IHNjcmlwdHMvZHBrZy1idWlsZGZsYWdzLnBsOjc3IHNjcmlwdHMvZHBrZy1idWlsZGZsYWdzLnBsOjgxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInR3byBjb21tYW5kcyBzcGVjaWZpZWQ6IC0tJXMgYW5kIC0tJXMiCittc2dzdHIgInp3ZWkgQmVmZWhsZSBhbmdlZ2ViZW46IC0tJXMgdW5kIC0tJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZGZsYWdzLnBsOjcwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIG5lZWRzIGEgcGFyYW1ldGVyIgorbXNnc3RyICIlcyBiZW7DtnRpZ3QgZWluZW4gUGFyYW1ldGVyIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjM5Cittc2dpZCAiIgorIlxuIgorIkNvcHlyaWdodCAoQykgMTk5NiBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAgV2ljaGVydCBBa2tlcm1hblxuIgorIkNvcHlyaWdodCAoQykgMjAwNyBGcmFuayBMaWNodGVuaGVsZCIKK21zZ3N0ciAiIgorIlxuIgorIkNvcHlyaWdodCAoQykgMTk5NiBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDcgRnJhbmsgTGljaHRlbmhlbGQuIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjUxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJVc2FnZTogJXMgWzxvcHRpb25zPiAuLi5dXG4iCisiXG4iCisiT3B0aW9uczpcbiIKKyIgIC1yPGdhaW4tcm9vdC1jb21tYW5kPlxuIgorIiAgICAgICAgICAgICAgICAgY29tbWFuZCB0byBnYWluIHJvb3QgcHJpdmlsZWdlcyAoZGVmYXVsdCBpcyBmYWtlcm9vdCkuXG4iCisiICAtUjxydWxlcz4gICAgICBydWxlcyBmaWxlIHRvIGV4ZWN1dGUgKGRlZmF1bHQgaXMgZGViaWFuL3J1bGVzKS5cbiIKKyIgIC1wPHNpZ24tY29tbWFuZD5cbiIKKyIgIC1kICAgICAgICAgICAgIGRvIG5vdCBjaGVjayBidWlsZCBkZXBlbmRlbmNpZXMgYW5kIGNvbmZsaWN0cy5cbiIKKyIgIC1EICAgICAgICAgICAgIGNoZWNrIGJ1aWxkIGRlcGVuZGVuY2llcyBhbmQgY29uZmxpY3RzLlxuIgorIiAgLVQ8dGFyZ2V0PiAgICAgY2FsbCBkZWJpYW4vcnVsZXMgPHRhcmdldD4gd2l0aCB0aGUgcHJvcGVyIGVudmlyb25tZW50XG4iCisiICAtLWFzLXJvb3QgICAgICBlbnN1cmUgLVQgY2FsbHMgdGhlIHRhcmdldCB3aXRoIHJvb3QgcmlnaHRzXG4iCisiICAtals8bnVtYmVyPl0gICBzcGVjaWZ5IGpvYnMgdG8gcnVuIHNpbXVsdGFuZW91c2x5IH0gcGFzc2VkIHRvIGRlYmlhbi8iCisicnVsZXNcbiIKKyIgIC1rPGtleWlkPiAgICAgIHRoZSBrZXkgdG8gdXNlIGZvciBzaWduaW5nLlxuIgorIiAgLXNncGcgICAgICAgICAgdGhlIHNpZ24tY29tbWFuZCBpcyBjYWxsZWQgbGlrZSBHUEcuXG4iCisiICAtc3BncCAgICAgICAgICB0aGUgc2lnbi1jb21tYW5kIGlzIGNhbGxlZCBsaWtlIFBHUC5cbiIKKyIgIC11cyAgICAgICAgICAgIHVuc2lnbmVkIHNvdXJjZS5cbiIKKyIgIC11YyAgICAgICAgICAgIHVuc2lnbmVkIGNoYW5nZXMuXG4iCisiICAtYTxhcmNoPiAgICAgICBEZWJpYW4gYXJjaGl0ZWN0dXJlIHdlIGJ1aWxkIGZvciAoaW1wbGllcyAtZCkuXG4iCisiICAtYiAgICAgICAgICAgICBiaW5hcnktb25seSwgZG8gbm90IGJ1aWxkIHNvdXJjZS4gICB9IGFsc28gcGFzc2VkIHRvXG4iCisiICAtQiAgICAgICAgICAgICBiaW5hcnktb25seSwgbm8gYXJjaC1pbmRlcCBmaWxlcy4gICB9IGRwa2ctZ2VuY2hhbmdlc1xuIgorIiAgLUEgICAgICAgICAgICAgYmluYXJ5LW9ubHksIG9ubHkgYXJjaC1pbmRlcCBmaWxlcy4gfVxuIgorIiAgLVMgICAgICAgICAgICAgc291cmNlIG9ubHksIG5vIGJpbmFyeSBmaWxlcy4gICAgIH1cbiIKKyIgIC1GICAgICAgICAgICAgIG5vcm1hbCBmdWxsIGJ1aWxkIChiaW5hcmllcyBhbmQgc291cmNlcykuXG4iCisiICAtdDxzeXN0ZW0+ICAgICBzZXQgR05VIHN5c3RlbSB0eXBlLiAgICAgICAgICAgfSBwYXNzZWQgdG8gZHBrZy0iCisiYXJjaGl0ZWN0dXJlXG4iCisiICAtdjx2ZXJzaW9uPiAgICBjaGFuZ2VzIHNpbmNlIHZlcnNpb24gPHZlcnNpb24+LiAgICAgIH1cbiIKKyIgIC1tPG1haW50PiAgICAgIG1haW50YWluZXIgZm9yIHBhY2thZ2UgaXMgPG1haW50Pi4gICAgfVxuIgorIiAgLWU8bWFpbnQ+ICAgICAgbWFpbnRhaW5lciBmb3IgcmVsZWFzZSBpcyA8bWFpbnQ+LiAgICB9IG9ubHkgcGFzc2VkXG4iCisiICAtQzxkZXNjZmlsZT4gICBjaGFuZ2VzIGFyZSBkZXNjcmliZWQgaW4gPGRlc2NmaWxlPi4gIH0gdG8gZHBrZy1nZW5jaGFuZ2VzXG4iCisiICAtc2kgKGRlZmF1bHQpICBzcmMgaW5jbHVkZXMgb3JpZyBpZiBuZXcgdXBzdHJlYW0uICAgIH1cbiIKKyIgIC1zYSAgICAgICAgICAgIHVwbG9hZGVkIHNyYyBhbHdheXMgaW5jbHVkZXMgb3JpZy4gICAgfVxuIgorIiAgLXNkICAgICAgICAgICAgdXBsb2FkZWQgc3JjIGlzIGRpZmYgYW5kIC5kc2Mgb25seS4gICB9XG4iCisiICAtc24gICAgICAgICAgICBmb3JjZSBEZWJpYW4gbmF0aXZlIHNvdXJjZSBmb3JtYXQuICAgICAgfVxuIgorIiAgLXNbc0FrdXJLVVJdICAgc2VlIGRwa2ctc291cmNlIGZvciBleHBsYW5hdGlvbi4gICAgICAgIH0gb25seSBwYXNzZWRcbiIKKyIgIC16PGxldmVsPiAgICAgIGNvbXByZXNzaW9uIGxldmVsIG9mIHNvdXJjZSAgICAgICAgICAgICB9IHRvIGRwa2ctc291cmNlXG4iCisiICAtWjxjb21wcmVzc29yPiBjb21wcmVzc2lvbiB0byB1c2UgZm9yIHNvdXJjZSAgICAgICAgICAgfVxuIgorIiAgLW5jICAgICAgICAgICAgZG8gbm90IGNsZWFuIHNvdXJjZSB0cmVlIChpbXBsaWVzIC1iKS5cbiIKKyIgIC10YyAgICAgICAgICAgIGNsZWFuIHNvdXJjZSB0cmVlIHdoZW4gZmluaXNoZWQuXG4iCisiICAtYXAgICAgICAgICAgICBhZGQgcGF1c2UgYmVmb3JlIHN0YXJ0aW5nIHNpZ25hdHVyZSBwcm9jZXNzLlxuIgorIiAgLWlbPHJlZ2V4Pl0gICAgaWdub3JlIGRpZmZzIG9mIGZpbGVzIG1hdGNoaW5nIHJlZ2V4LiAgICB9IG9ubHkgcGFzc2VkXG4iCisiICAtSVs8cGF0dGVybj5dICBmaWx0ZXIgb3V0IGZpbGVzIHdoZW4gYnVpbGRpbmcgdGFyYmFsbHMuIH0gdG8gZHBrZy1zb3VyY2VcbiIKKyIgIC0tc291cmNlLW9wdGlvbj08b3B0PlxuIgorIlx0XHQgcGFzcyBvcHRpb24gPG9wdD4gdG8gZHBrZy1zb3VyY2VcbiIKKyIgIC0tY2hhbmdlcy1vcHRpb249PG9wdD5cbiIKKyJcdFx0IHBhc3Mgb3B0aW9uIDxvcHQ+IHRvIGRwa2ctZ2VuY2hhbmdlc1xuIgorIiAgLS1hZG1pbmRpcj08ZGlyZWN0b3J5PlxuIgorIiAgICAgICAgICAgICAgICAgY2hhbmdlIHRoZSBhZG1pbmlzdHJhdGl2ZSBkaXJlY3RvcnkuXG4iCisiICAtaCwgLS1oZWxwICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgICAgIC0tdmVyc2lvbiAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIgorIlxuIgorIkF1ZnJ1ZjogJXMgWzxPcHRpb25lbj4gLi4uXVxuIgorIlxuIgorIk9wdGlvbmVuOlxuIgorIiAgLXI8cm9vdC13ZXJkZS1CZWZlaGw+XG4iCisiICAgICAgICAgICAgICAgICBCZWZlaGwsIHVtIHJvb3QtUHJpdmlsZWdpZW4genUgZXJoYWx0ZW4gKHN0YW5kYXJkbcOkw59pZ1xuIgorIiAgICAgICAgICAgICAgICAgZmFrZXJvb3QpLlxuIgorIiAgLVI8cnVsZXM+ICAgICAgYXVzenVmw7xocmVuZGUgcnVsZXMtRGF0ZWkgKFZvcmdhYmU6IGRlYmlhbi9ydWxlcykuXG4iCisiICAtcDxzaWduaWVyLUJlZmVobD5cbiIKKyIgIC1kICAgICAgICAgICAgIEJhdWFiaMOkbmdpZ2tlaXRlbiB1bmQgLWtvbmZsaWt0ZSBuaWNodCBwcsO8ZmVuLlxuIgorIiAgLUQgICAgICAgICAgICAgQmF1YWJow6RuZ2lna2VpdGVuIHVuZCAta29uZmxpa3RlIHByw7xmZW4uXG4iCisiICAtVDxaaWVsPiAgICAgICBkZWJpYW4vcnVsZXMgPFppZWw+IG1pdCBkZXIga29ycmVrdGVuIFVtZ2VidW5nIGF1ZnJ1ZmVuLlxuIgorIiAgLS1hcy1yb290ICAgICAgc2ljaGVyc3RlbGxlbiwgZGFzcyAtVCBkYXMgWmllbCBtaXIgcm9vdC1SZWNodGVuIGF1ZnJ1ZnQuXG4iCisiICAtals8TnVtbWVyPl0gICBBbmdhYmUgZGVyIHNpbXVsdGFuZW4gSm9icyB9IGFuIGRlYmlhbi9ydWxlcyB3ZWl0ZXJnZWdlYmVuXG4iCisiICAtazxTY2hsw7xzc2VsLUlEPlxuIgorIiAgICAgICAgICAgICAgICAgRsO8ciBkaWUgU2lnbmllcnVuZyB6dSB2ZXJ3ZW5kZW5kZXIgU2NobMO8c3NlbC5cbiIKKyIgIC1zZ3BnICAgICAgICAgIGRlciBTaWduaWVyLUJlZmVobCB3aXJkIHdpZSBHUEcgYXVmZ2VydWZlbi5cbiIKKyIgIC1zcGdwICAgICAgICAgIGRlciBTaWduaWVyLUJlZmVobCB3aXJkIHdpZSBQR1AgYXVmZ2VydWZlbi5cbiIKKyIgIC11cyAgICAgICAgICAgIHVuc2lnbmllcnRlIFF1ZWxsZW4uXG4iCisiICAtdWMgICAgICAgICAgICB1bnNpZ25pZXJ0ZSBjaGFuZ2VzICjDhG5kZXJ1bmdlbikuXG4iCisiICAtYTxBcmNoPiAgICAgICBEZWJpYW4tQXJjaGl0ZWt0dXIsIGbDvHIgZGllIGdlYmF1dCB3aXJkIChpbXBsaXppZXJ0IC1kKS5cbiIKKyIgIC1iICAgICAgICAgICAgIG51ciBiaW7DpHIsIFF1ZWxsZW4gbmljaHQgYmF1ZW4uICAgICAgfSBhdWNoIHdlaXRlcmdlZ2ViZW4gIgorImFuXG4iCisiICAtQiAgICAgICAgICAgICBudXIgYmluw6RyLCBrZWluZSBhcmNoLWluZGVwLURhdGVpZW4uIH0gZHBrZy1nZW5jaGFuZ2VzXG4iCisiICAtQSAgICAgICAgICAgICBudXIgYmluw6RyLCBudXIgYXJjaC1pbmRlcC1EYXRlaWVuLiAgIH1cbiIKKyIgIC1TICAgICAgICAgICAgIG51ciBRdWVsbGVuLCBrZWluZSBCaW7DpHJkYXRlaWVuLiAgICAgfVxuIgorIiAgLUYgICAgICAgICAgICAgbm9ybWFsZXIga29tcGxldHRlciBCYXUgKEJpbsOkcmRhdGVpZW4gdW5kIFF1ZWxsZW4pLlxuIgorIiAgLXQ8U3lzdGVtPiAgICAgR05VLVN5c3RlbXR5cCBzZXR6ZW4uICAgICAgICAgICAgICAgIH0gd2VpdGVyZ2VnZWJlbiBhbiBcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRwa2ctYXJjaGl0ZWN0dXJlXG4iCisiICAtdjxWZXJzaW9uPiAgICDDhG5kZXJ1bmdlbiBzZWl0IFZlcnNpb24gPFZlcnNpb24+LiAgIH1cbiIKKyIgIC1tPEJldHI+ICAgICAgIDxCZXRyPiBpc3QgQmV0cmV1ZXIgZGVzIFBha2V0cy4gICAgICB9XG4iCisiICAtZTxCZXRyPiAgICAgICA8QmV0cj4gaXN0IEJldHJldWVyIGbDvHIgZGllIFZlcsO2ZmZlbnRsaWNodW5nLn0gbnVyIGFuXG4iCisiICAtQzxEYXRlaT4gICAgICDDhG5kZXJ1bmdlbiBzaW5kIGluIDxEYXRlaT4gYmVzY2hyaWViZW4uIH0gZHBrZy1nZW5jaGFuZ2VzXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSB3ZWl0ZXJnZWdlYmVuLlxuIgorIiAgLXNpIChTdGFuZGFyZCkgUXVlbGxlbiBlbnRoYWx0ZW4gT3JpZy4gZmFsbHMgbmV1ZXMgVXBzdHJlYW0uIH1cbiIKKyIgIC1zYSAgICAgICAgICAgIGhvY2hnZWxhZGVuZSBRdWVsbGVuIGVudGhhbHRlbiBpbW1lciBPcmlnLiAgIH1cbiIKKyIgIC1zZCAgICAgICAgICAgIGhvY2hnZWxhZGVuZSBRdWVsbGVuIHNpbmQgbnVyIGRpZmYgdW5kIC5kc2MuIH1cbiIKKyIgIC1zbiAgICAgICAgICAgIMK7RGViaWFuIG5hdGl2ZcKrLVF1ZWxsZm9ybWF0IGVyendpbmdlbi4gICAgICAgfVxuIgorIiAgLXNbc0FrdXJLVVJdICAgc2llaGUgZHBrZy1zb3VyY2UgZsO8ciBFcmtsw6RydW5nLiAgICAgICAgfSBudXIgIgorIndlaXRlcmdlZ2ViZW5cbiIKKyIgIC16PFN0dWZlPiAgICAgIEtvbXByZXNzaW9uc3N0dWZlIGRlciBRdWVsbGVuLiAgICAgICAgICB9IGFuIGRwa2ctc291cmNlXG4iCisiICAtWjxLb21wcmltaWVyZXI+IEbDvHIgUXVlbGxlbiB6dSB2ZXJ3ZW5kZW5kZSBLb21wcmVzc2lvbi4gfVxuIgorIiAgLW5jICAgICAgICAgICAgUXVlbGwtQmF1bSBuaWNodCBzw6R1YmVybiAoaW1wbGl6aWVydCAtYikuXG4iCisiICAtdGMgICAgICAgICAgICBuYWNoIEFic2NobHVzcyBRdWVsbC1CYXVtIHPDpHViZXJuLlxuIgorIiAgLWFwICAgICAgICAgICAgUGF1c2Ugdm9yIEJlZ2lubiBkZXMgU2lnbmF0dXJwcm96ZXNzZXMgZWluZsO8Z2VuLlxuIgorIiAgLWlbPFJlZ2F1cz5dICAgRGlmZnMgdm9uIGF1ZiBSZWdhdXMgcGFzc2VuZGVuIERhdGVpZW4gaWdub3JpZXJlbi59IG51ciBhblxuIgorIiAgLUlbPE11c3Rlcj5dICAgRGF0ZWllbiBiZWltIFRhcmJhbGwtQmF1ZW4gaGVyYXVzZmlsdGVybi4gICAgfSBkcGtnLXNvdXJjZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSAiCisid2VpdGVyZ2VnZWJlblxuIgorIiAgLS1zb3VyY2Utb3B0aW9uPTxPcHQ+XG4iCisiXHRcdCBPcHRpb24gPG9wdD4gYW4gZHBrZy1zb3VyY2Ugw7xiZXJnZWJlblxuIgorIiAgLS1jaGFuZ2VzLW9wdGlvbj08T3B0PlxuIgorIlx0XHQgT3B0aW9uIDxvcHQ+IGFuIGRwa2ctZ2VuY2hhbmdlcyDDvGJlcmdlYmVuXG4iCisiICAtLWFkbWluZGlyPTxWZXJ6PlxuIgorIiAgICAgICAgICAgICAgICAgZGFzIGFkbWluaXN0cmF0aXZlIFZlcnplaWNobmlzIMOkbmRlcm4uXG4iCisiICAtaCwgLS1oZWxwICAgICBkaWVzZSBIaWxmZW1lbGR1bmcgYW56ZWlnZW4uXG4iCisiICAgICAgLS12ZXJzaW9uICBkaWUgVmVyc2lvbiBhbnplaWdlbi5cbiIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDoyMDAgc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDoyMDYKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6MjEyIHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6MjE4CisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjIyMyBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDoxNDMKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjE0NiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDoxNTAKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjE1NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3QgY29tYmluZSAlcyBhbmQgJXMiCittc2dzdHIgIiVzIHVuZCAlcyBrw7ZubmVuIG5pY2h0IGtvbWJpbmllcnQgd2VyZGVuIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjIzNiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjIwMgorbXNnaWQgIi1FIGFuZCAtVyBhcmUgZGVwcmVjYXRlZCwgdGhleSBhcmUgd2l0aG91dCBlZmZlY3QiCittc2dzdHIgIi1FIHVuZCAtVyBzaW5kIHZlcmFsdGV0LCBzaWUgaGFiZW4ga2VpbmUgV2lya3VuZyIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDoyNDAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gb3IgYXJndW1lbnQgJXMiCittc2dzdHIgInVuYmVrYW5udGUgT3B0aW9uIG9kZXIgQXJndW1lbnQgJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6MjUwCittc2dpZCAidXNpbmcgYSBnYWluLXJvb3QtY29tbWFuZCB3aGlsZSBiZWluZyByb290IgorbXNnc3RyICJWZXJ3ZW5kdW5nIGVpbmVzIHJvb3Qtd2VyZGUtQmVmZWhscywgb2J3b2hsIGJlcmVpdHMgcm9vdCIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDoyNTYKK21zZ2lkICIiCisiZmFrZXJvb3Qgbm90IGZvdW5kLCBlaXRoZXIgaW5zdGFsbCB0aGUgZmFrZXJvb3RcbiIKKyJwYWNrYWdlLCBzcGVjaWZ5IGEgY29tbWFuZCB3aXRoIHRoZSAtciBvcHRpb24sIG9yIHJ1biB0aGlzIGFzIHJvb3QiCittc2dzdHIgIiIKKyJGYWtlcm9vdCBuaWNodCBnZWZ1bmRlbjsgaW5zdGFsbGllcmVuIFNpZSBlbnR3ZWRlciBkYXMgRmFrZXJvb3QtUGFrZXQsXG4iCisiZ2ViZW4gU2llIGVpbmVuIEJlZmVobCBtaXQgZGVyIE9wdGlvbiAtciBhbiBvZGVyIGbDvGhyZW4gU2llIGRpZXMgYWxzIHJvb3QgYXVzIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjI2MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJnYWluLXJvb3QtY29tbW1hbmQgJyVzJyBub3QgZm91bmQiCittc2dzdHIgInJvb3Qtd2VyZGUtQmVmZWhsIMK7JXPCqyBuaWNodCBnZWZ1bmRlbiIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDoyNzkKK21zZ2lkICJ1bmtub3duIHNpZ24gY29tbWFuZCwgYXNzdW1pbmcgcGdwIHN0eWxlIGludGVyZmFjZSIKK21zZ3N0ciAidW5iZWthbm50ZXIgU2lnbmllci1CZWZlaGwsIFBHUC1hcnRpZ2UgU2Nobml0dHN0ZWxsZSB3aXJkIHZlcm11dGV0IgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjI4MgorbXNnaWQgIlBHUCBzdXBwb3J0IGlzIGRlcHJlY2F0ZWQgKHNlZSBSRUFETUUuZmVhdHVyZS1yZW1vdmFsLXNjaGVkdWxlKSIKK21zZ3N0ciAiIgorIlBHUC1VbnRlcnN0w7x0enVuZyBpc3QgdmVyYWx0ZXQgKGxlc2VuIFNpZSBSRUFETUUuZmVhdHVyZS1yZW1vdmFsLXNjaGVkdWxlKSIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDozMDEKK21zZ2lkICJzb3VyY2UgcGFja2FnZSIKK21zZ3N0ciAiUXVlbGxwYWtldCIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDozMDIKK21zZ2lkICJzb3VyY2UgdmVyc2lvbiIKK21zZ3N0ciAiUXVlbGx2ZXJzaW9uIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjMxMgorbXNnaWQgInNvdXJjZSBjaGFuZ2VkIGJ5IgorbXNnc3RyICJRdWVsbGVuIGdlw6RuZGVydCBkdXJjaCIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDozMzAKK21zZ2lkICJob3N0IGFyY2hpdGVjdHVyZSIKK21zZ3N0ciAiSG9zdC1BcmNoaXRla3R1ciIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDozNDMKK21zZ2lkICJkZWJpYW4vcnVsZXMgaXMgbm90IGV4ZWN1dGFibGU6IGZpeGluZyB0aGF0LiIKK21zZ3N0ciAiZGViaWFuL3J1bGVzIGlzdCBuaWNodCBhdXNmw7xocmJhcjogd2lyZCBrb3JyaWdpZXJ0IgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjM2MgorbXNnaWQgIkJ1aWxkIGRlcGVuZGVuY2llcy9jb25mbGljdHMgdW5zYXRpc2ZpZWQ7IGFib3J0aW5nLiIKK21zZ3N0ciAiQmF1YWJow6RuZ2lna2VpdGVuLy1rb25mbGlrdGUgbmljaHQgZXJmw7xsbHQ7IEFiYnJ1Y2giCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6MzYzCittc2dpZCAiKFVzZSAtZCBmbGFnIHRvIG92ZXJyaWRlLikiCittc2dzdHIgIihWZXJ3ZW5kZW4gU2llIC1kLCB1bSBzaWNoIGRhcsO8YmVyIGhpbndlZ3p1c2V0emVuLikiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6MzY2Cittc2dpZCAiVGhpcyBpcyBjdXJyZW50bHkgYSBub24tZmF0YWwgd2FybmluZyB3aXRoIC1TLCBidXQiCittc2dzdHIgIkRpZXMgaXN0IGVpbmUgbWl0IC1TIG5pY2h0IGZhdGFsZSBXYXJudW5nLCBhbGxlcmRpbmdzIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjM2NworbXNnaWQgIndpbGwgcHJvYmFibHkgYmVjb21lIGZhdGFsIGluIHRoZSBmdXR1cmUuIgorbXNnc3RyICJ3aXJkIHNpZSB3YWhyc2NoZWlubGljaCBpbiBkZXIgWnVrdW5mdCBmYXRhbCB3ZXJkZW4uIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjM4OQorbXNnaWQgIiIKKyJpdCBpcyBhIGJhZCBpZGVhIHRvIGdlbmVyYXRlIGEgc291cmNlIHBhY2thZ2Ugd2l0aG91dCBjbGVhbmluZyB1cCBmaXJzdCwgaXQgIgorIm1pZ2h0IGNvbnRhaW4gdW5kZXNpcmVkIGZpbGVzLiIKK21zZ3N0ciAiIgorIkVzIGlzdCBrZWluZSBndXRlIElkZWUsIGVpbiBRdWVsbHBha2V0IHp1IGVyc3RlbGxlbiwgb2huZSB2b3JoZXIgIgorImF1Znp1csOkdW1lbjsgZXMga8O2bm50ZSBuaWNodCBnZXfDvG5zY2h0ZSBEYXRlaWVuIGVudGhhbHRlbi4iCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6NDAyCittc2dpZCAiUHJlc3MgdGhlIHJldHVybiBrZXkgdG8gc3RhcnQgc2lnbmluZyBwcm9jZXNzXG4iCittc2dzdHIgIkRyw7xja2VuIFNpZSBkaWUgRWluZ2FiZXRhc3RlLCB1bSBkZW4gU2lnbmllcnByb3plc3MgenUgc3RhcnRlblxuIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjQwOQorbXNnaWQgIkZhaWxlZCB0byBzaWduIC5kc2MgYW5kIC5jaGFuZ2VzIGZpbGUiCittc2dzdHIgIi5kc2MtIHVuZCAuY2hhbmdlcy1EYXRlaSBrb25udGUgbmljaHQgc2lnbmllcnQgd2VyZGVuIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjQyNCBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjQyOAorIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDo0NDEKK21zZ2lkICJ3cml0ZSBjaGFuZ2VzIGZpbGUiCittc2dzdHIgInNjaHJlaWJlbiBkZXIgY2hhbmdlcy1EYXRlaSIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDo0NDAKK21zZ2lkICJkcGtnLWdlbmNoYW5nZXMiCittc2dzdHIgImRwa2ctZ2VuY2hhbmdlcyIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDo0NDkKK21zZ2lkICJzb3VyY2Ugb25seSB1cGxvYWQ6IERlYmlhbi1uYXRpdmUgcGFja2FnZSIKK21zZ3N0ciAiTnVyIFF1ZWxsZW4gaG9jaHp1bGFkZW46IERlYmlhbi1uYXRpdmUtUGFrZXQiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6NDUxCittc2dpZCAic291cmNlIG9ubHksIGRpZmYtb25seSB1cGxvYWQgKG9yaWdpbmFsIHNvdXJjZSBOT1QgaW5jbHVkZWQpIgorbXNnc3RyICJOdXIgUXVlbGxlbiwgbnVyIERpZmYgaG9jaHp1bGFkZW4gKE9yaWdpbmFscXVlbGxlbiBOSUNIVCBlbnRoYWx0ZW4pIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjQ1MworbXNnaWQgInNvdXJjZSBvbmx5IHVwbG9hZCAob3JpZ2luYWwgc291cmNlIGlzIGluY2x1ZGVkKSIKK21zZ3N0ciAiTnVyIFF1ZWxsZW4gaG9jaHp1bGFkZW4gKE9yaWdpbmFscXVlbGxlbiBlbnRoYWx0ZW4pIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjQ1NiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjQ2NAorbXNnaWQgImZ1bGwgdXBsb2FkIChvcmlnaW5hbCBzb3VyY2UgaXMgaW5jbHVkZWQpIgorbXNnc3RyICJBbGxlcyBob2NoenVsYWRlbiAoT3JpZ2luYWxxdWVsbGVuIGVudGhhbHRlbikiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6NDU4Cittc2dpZCAiYmluYXJ5IG9ubHkgdXBsb2FkIChubyBzb3VyY2UgaW5jbHVkZWQpIgorbXNnc3RyICJCaW7DpHJwYWtldChlKSBob2NoenVsYWRlbiAoa2VpbmUgUXVlbGxlbiBlbnRoYWx0ZW4pIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjQ2MAorbXNnaWQgImZ1bGwgdXBsb2FkOyBEZWJpYW4tbmF0aXZlIHBhY2thZ2UgKGZ1bGwgc291cmNlIGlzIGluY2x1ZGVkKSIKK21zZ3N0ciAiQWxsZXMgaG9jaHp1bGFkZW47IERlYmlhbi1uYXRpdmUtUGFrZXQgKGtvbXBsZXR0ZSBRdWVsbGVuIGVudGhhbHRlbikiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6NDYyCittc2dpZCAiYmluYXJ5IGFuZCBkaWZmIHVwbG9hZCAob3JpZ2luYWwgc291cmNlIE5PVCBpbmNsdWRlZCkiCittc2dzdHIgIkJpbsOkcnBha2V0ZShlKSB1bmQgRGlmZiBob2NoenVsYWRlbiAoT3JpZ2luYWxxdWVsbGVuIE5JQ0hUIGVudGhhbHRlbikiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6NDY5Cittc2dpZCAiRmFpbGVkIHRvIHNpZ24gLmNoYW5nZXMgZmlsZSIKK21zZ3N0ciAiU2lnbmllcmVuIGRlciAuY2hhbmdlcy1EYXRlaSBmZWhsZ2VzY2hsYWdlbiIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDo0ODgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRldGVybWluZSAlcyIKK21zZ3N0ciAiJXMga2FubiBuaWNodCBiZXN0aW1tdCB3ZXJkZW4iCisKKyM6IHNjcmlwdHMvZHBrZy1jaGVja2J1aWxkZGVwcy5wbDo0MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJVc2FnZTogJXMgWzxvcHRpb24+Li4uXSBbPGNvbnRyb2wtZmlsZT5dIgorbXNnc3RyICJBdWZydWY6ICVzIFs8T3B0aW9uPi4uLl0gWzxTdGV1ZXJkYXRlaT5dIgorCisjOiBzY3JpcHRzL2Rwa2ctY2hlY2tidWlsZGRlcHMucGw6NDQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC1CICAgICAgICAgICAgIGJpbmFyeS1vbmx5LCBpZ25vcmUgLUluZGVwLlxuIgorIiAgLWQgYnVpbGQtZGVwcyAgdXNlIGdpdmVuIHN0cmluZyBhcyBidWlsZCBkZXBlbmRlbmNpZXMgaW5zdGVhZCBvZlxuIgorIiAgICAgICAgICAgICAgICAgcmV0cmlldmluZyB0aGVtIGZyb20gY29udHJvbCBmaWxlXG4iCisiICAtYyBidWlsZC1jb25mICB1c2UgZ2l2ZW4gc3RyaW5nIGZvciBidWlsZCBjb25mbGljdHMgaW5zdGVhZCBvZlxuIgorIiAgICAgICAgICAgICAgICAgcmV0cmlldmluZyB0aGVtIGZyb20gY29udHJvbCBmaWxlXG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+XG4iCisiICAgICAgICAgICAgICAgICBjaGFuZ2UgdGhlIGFkbWluaXN0cmF0aXZlIGRpcmVjdG9yeS5cbiIKKyIgIC1oLCAtLWhlbHAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAgICAgLS12ZXJzaW9uICBzaG93IHRoZSB2ZXJzaW9uLiIKK21zZ3N0ciAiIgorIk9wdGlvbmVuOlxuIgorIiAgLUIgICAgICAgICAgICBudXIgYmluw6RyLCBpZ25vcmllcmUgLUluZGVwLlxuIgorIiAgLWQgQmF1LUFiaCAgICBkaWUgw7xiZXJnZWJlbmUgWmVpY2hlbmtldHRlIGFscyBCYXVhYmjDpG5naWdrZWl0ZW4gdmVyd2VuZGVuXG4iCisiICAgICAgICAgICAgICAgIHN0YXR0IHNpZSBhdXMgZGVyIFN0ZXVlcmRhdGVpIGF1c3p1bGVzZW4uXG4iCisiICAtYyBCYXUtS29uZiAgIGRpZSDDvGJlcmdlYmVuZSBaZWljaGVua2V0dGUgYWxzIEJhdWtvbmZsaWt0ZSB2ZXJ3ZW5kZW4gIgorInN0YXR0XG4iCisiICAgICAgICAgICAgICAgIHNpZSBhdXMgZGVyIFN0ZXVlcmRhdGVpIGF1c3p1bGVzZW4uXG4iCisiICAtLWFkbWluZGlyPTxWZXJ6ZWljaG5pcz5cbiIKKyIgICAgICAgICAgICAgICAgZGFzIGFkbWluaXN0cmF0aXZlIFZlcnplaWNobmlzIMOkbmRlcm4uXG4iCisiICAtaCwgLS1oZWxwICAgIGRpZXNlIEhpbGZlbWVsZHVuZyBhbnplaWdlbi5cbiIKKyIgICAgICAtLXZlcnNpb24gZGllIFZlcnNpb24gYW56ZWlnZW4uIgorCisjOiBzY3JpcHRzL2Rwa2ctY2hlY2tidWlsZGRlcHMucGw6NTUKK21zZ2lkICIiCisiPGNvbnRyb2wtZmlsZT4gaXMgdGhlIGNvbnRyb2wgZmlsZSB0byBwcm9jZXNzIChkZWZhdWx0OiBkZWJpYW4vY29udHJvbCkuIgorbXNnc3RyICIiCisiPFN0ZXVlcmRhdGVpPiBpc3QgZGllIHp1IHZlcmFyYmVpdGVuZGUgU3RldWVyZGF0ZWkgKHN0YW5kYXJkbcOkw59pZyBkZWJpYW4vIgorImNvbnRyb2wpLiIKKworIzogc2NyaXB0cy9kcGtnLWNoZWNrYnVpbGRkZXBzLnBsOjEwNQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlczogVW5tZXQgYnVpbGQgZGVwZW5kZW5jaWVzOiAiCittc2dzdHIgIiVzOiBOaWNodCBlcmbDvGxsdGUgQmF1YWJow6RuZ2lna2VpdGVuOiAiCisKKyM6IHNjcmlwdHMvZHBrZy1jaGVja2J1aWxkZGVwcy5wbDoxMDkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXM6IEJ1aWxkIGNvbmZsaWN0czogIgorbXNnc3RyICIlczogQmF1a29uZmxpa3RlOiAiCisKKyM6IHNjcmlwdHMvZHBrZy1jaGVja2J1aWxkZGVwcy5wbDoxODQgc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDoyNTMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZXJyb3Igb2NjdXJyZWQgd2hpbGUgcGFyc2luZyAlcyIKK21zZ3N0ciAiRmVobGVyIGJlaW0gUGFyc2VuIHZvbiAlcyIKKworIzogc2NyaXB0cy9kcGtnLWRpc3RhZGRmaWxlLnBsOjM1Cittc2dpZCAiIgorIlxuIgorIkNvcHlyaWdodCAoQykgMTk5NiBJYW4gSmFja3Nvbi4iCittc2dzdHIgIiIKKyJcbiIKKyJDb3B5cmlnaHQgKEMpIDE5OTYgSWFuIEphY2tzb24uIgorCisjOiBzY3JpcHRzL2Rwa2ctZGlzdGFkZGZpbGUucGw6NDYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4uLi5dIDxmaWxlbmFtZT4gPHNlY3Rpb24+IDxwcmlvcml0eT5cbiIKKyJcbiIKKyJPcHRpb25zOlxuIgorIiAgLWY8ZmlsZXNsaXN0ZmlsZT4gICAgICAgIHdyaXRlIGZpbGVzIGhlcmUgaW5zdGVhZCBvZiBkZWJpYW4vZmlsZXMuXG4iCisiICAtaCwgLS1oZWxwICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgICAgICAtLXZlcnNpb24gICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorbXNnc3RyICIiCisiQXVmcnVmOiAlcyBbPE9wdGlvbj4uLi5dIDxEYXRlaW5hbWU+IDxCZXJlaWNoPiA8UHJpb3JpdMOkdD5cbiIKKyJcbiIKKyJPcHRpb25lbjpcbiIKKyIgIC1mPERhdGVpbGlzdGVkYXRlaT4gICAgICBEYXRlaWVuIGhpZXJpbiBzdGF0dCBpbiBkZWJpYW4vZmlsZXMgc2NocmVpYmVuLlxuIgorIiAgLWgsIC0taGVscCAgICAgICAgICAgICAgIGRpZXNlIEhpbGZlbWVsZHVuZyBhbnplaWdlbi5cbiIKKyIgICAgICAtLXZlcnNpb24gICAgICAgICAgICBkaWUgVmVyc2lvbiBhbnplaWdlbi5cbiIKKworIzogc2NyaXB0cy9kcGtnLWRpc3RhZGRmaWxlLnBsOjcyCittc2dpZCAibmVlZCBleGFjdGx5IGEgZmlsZW5hbWUsIHNlY3Rpb24gYW5kIHByaW9yaXR5IgorbXNnc3RyICJnZW5hdSBlaW4gRGF0ZWluYW1lLCBCZXJlaWNoIHVuZCBlaW5lIFByaW9yaXTDpHQgd2lyZCBiZW7DtnRpZ3QiCisKKyM6IHNjcmlwdHMvZHBrZy1kaXN0YWRkZmlsZS5wbDo3NgorbXNnaWQgImZpbGVuYW1lLCBzZWN0aW9uIGFuZCBwcmlvcml0eSBtYXkgY29udGFpbiBubyB3aGl0ZXNwYWNlIgorbXNnc3RyICJEYXRlaW5hbWUsIEJlcmVpY2ggdW5kIFByaW9yaXTDpHQgZMO8cmZlbiBrZWluZSBMZWVyemVpY2hlbiBlbnRoYWx0ZW4iCisKKyM6IHNjcmlwdHMvZHBrZy1kaXN0YWRkZmlsZS5wbDo3OSBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDozMzQKK21zZ2lkICJvcGVuIG5ldyBmaWxlcyBsaXN0IGZpbGUiCittc2dzdHIgIm5ldWUgRGF0ZWllbmxpc3RlLURhdGVpIMO2ZmZuZW4iCisKKyM6IHNjcmlwdHMvZHBrZy1kaXN0YWRkZmlsZS5wbDo4NCBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDozNDUKK21zZ2lkICJjb3B5IG9sZCBlbnRyeSB0byBuZXcgZmlsZXMgbGlzdCBmaWxlIgorbXNnc3RyICJhbHRlbiBFaW50cmFnIGluIG5ldWUgRGF0ZWllbmxpc3QtRGF0ZWkga29waWVyZW4iCisKKyM6IHNjcmlwdHMvZHBrZy1kaXN0YWRkZmlsZS5wbDo4NyBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDozNDkKK21zZ2lkICJyZWFkIG9sZCBmaWxlcyBsaXN0IGZpbGUiCittc2dzdHIgImFsdGUgRGF0ZWllbmxpc3RlLURhdGVpIGxlc2VuIgorCisjOiBzY3JpcHRzL2Rwa2ctZGlzdGFkZGZpbGUucGw6OTAgc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MzU5Cittc2dpZCAid3JpdGUgbmV3IGVudHJ5IHRvIG5ldyBmaWxlcyBsaXN0IGZpbGUiCittc2dzdHIgIm5ldWVuIEVpbnRyYWcgaW4gbmV1ZSBEYXRlaWVubGlzdGUtRGF0ZWkgc2NocmVpYmVuIgorCisjOiBzY3JpcHRzL2Rwa2ctZGlzdGFkZGZpbGUucGw6OTEgc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MzYwCittc2dpZCAiY2xvc2UgbmV3IGZpbGVzIGxpc3QgZmlsZSIKK21zZ3N0ciAibmV1ZSBEYXRlaWVubGlzdGUtRGF0ZWkgc2NobGllw59lbiIKKworIzogc2NyaXB0cy9kcGtnLWRpc3RhZGRmaWxlLnBsOjkzIHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjM2MQorbXNnaWQgImluc3RhbGwgbmV3IGZpbGVzIGxpc3QgZmlsZSIKK21zZ3N0ciAibmV1ZSBEYXRlaWVubGlzdGUtRGF0ZWkgaW5zdGFsbGllcmVuIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDo5OAorbXNnaWQgIiIKKyJcbiIKKyJDb3B5cmlnaHQgKEMpIDE5OTYgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi4iCittc2dzdHIgIiIKKyJcbiIKKyJDb3B5cmlnaHQgKEMpIDE5OTYgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi4iCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjExMAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dXG4iCisiXG4iCisiT3B0aW9uczpcbiIKKyIgIC1iICAgICAgICAgICAgICAgICAgICAgICBiaW5hcnktb25seSBidWlsZCAtIG5vIHNvdXJjZSBmaWxlcy5cbiIKKyIgIC1CICAgICAgICAgICAgICAgICAgICAgICBhcmNoLXNwZWNpZmljIC0gbm8gc291cmNlIG9yIGFyY2gtaW5kZXAgZmlsZXMuXG4iCisiICAtQSAgICAgICAgICAgICAgICAgICAgICAgb25seSBhcmNoLWluZGVwIC0gbm8gc291cmNlIG9yIGFyY2gtc3BlY2lmaWMgIgorImZpbGVzLlxuIgorIiAgLVMgICAgICAgICAgICAgICAgICAgICAgIHNvdXJjZS1vbmx5IHVwbG9hZC5cbiIKKyIgIC1jPGNvbnRyb2xmaWxlPiAgICAgICAgICBnZXQgY29udHJvbCBpbmZvIGZyb20gdGhpcyBmaWxlLlxuIgorIiAgLWw8Y2hhbmdlbG9nZmlsZT4gICAgICAgIGdldCBwZXItdmVyc2lvbiBpbmZvIGZyb20gdGhpcyBmaWxlLlxuIgorIiAgLWY8ZmlsZXNsaXN0ZmlsZT4gICAgICAgIGdldCAuZGViIGZpbGVzIGxpc3QgZnJvbSB0aGlzIGZpbGUuXG4iCisiICAtdjxzaW5jZXZlcnNpb24+ICAgICAgICAgaW5jbHVkZSBhbGwgY2hhbmdlcyBsYXRlciB0aGFuIHZlcnNpb24uXG4iCisiICAtQzxjaGFuZ2VzZGVzY3JpcHRpb24+ICAgdXNlIGNoYW5nZSBkZXNjcmlwdGlvbiBmcm9tIHRoaXMgZmlsZS5cbiIKKyIgIC1tPG1haW50YWluZXI+ICAgICAgICAgICBvdmVycmlkZSBjb250cm9sJ3MgbWFpbnRhaW5lciB2YWx1ZS5cbiIKKyIgIC1lPG1haW50YWluZXI+ICAgICAgICAgICBvdmVycmlkZSBjaGFuZ2Vsb2cncyBtYWludGFpbmVyIHZhbHVlLlxuIgorIiAgLXU8dXBsb2FkZmlsZXNkaXI+ICAgICAgIGRpcmVjdG9yeSB3aXRoIGZpbGVzIChkZWZhdWx0IGlzIGAuLicpLlxuIgorIiAgLXNpIChkZWZhdWx0KSAgICAgICAgICAgIHNyYyBpbmNsdWRlcyBvcmlnIGlmIG5ldyB1cHN0cmVhbS5cbiIKKyIgIC1zYSAgICAgICAgICAgICAgICAgICAgICBzb3VyY2UgaW5jbHVkZXMgb3JpZyBzcmMuXG4iCisiICAtc2QgICAgICAgICAgICAgICAgICAgICAgc291cmNlIGlzIGRpZmYgYW5kIC5kc2Mgb25seS5cbiIKKyIgIC1xICAgICAgICAgICAgICAgICAgICAgICBxdWlldCAtIG5vIGluZm9ybWF0aW9uYWwgbWVzc2FnZXMgb24gc3RkZXJyLlxuIgorIiAgLUY8Y2hhbmdlbG9nZm9ybWF0PiAgICAgIGZvcmNlIGNoYW5nZSBsb2cgZm9ybWF0LlxuIgorIiAgLVY8bmFtZT49PHZhbHVlPiAgICAgICAgIHNldCBhIHN1YnN0aXR1dGlvbiB2YXJpYWJsZS5cbiIKKyIgIC1UPHZhcmxpc3RmaWxlPiAgICAgICAgICByZWFkIHZhcmlhYmxlcyBoZXJlLCBub3QgZGViaWFuL3N1YnN0dmFycy5cbiIKKyIgIC1EPGZpZWxkPj08dmFsdWU+ICAgICAgICBvdmVycmlkZSBvciBhZGQgYSBmaWVsZCBhbmQgdmFsdWUuXG4iCisiICAtVTxmaWVsZD4gICAgICAgICAgICAgICAgcmVtb3ZlIGEgZmllbGQuXG4iCisiICAtaCwgLS1oZWxwICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgICAgICAtLXZlcnNpb24gICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorbXNnc3RyICIiCisiQXVmcnVmOiAlcyBbPE9wdGlvbj4gLi4uXVxuIgorIlxuIgorIk9wdGlvbmVuOlxuIgorIiAgLWIgICAgICAgICAgICAgICAgICAgICAgIHJlaW4gYmluw6RyZXIgQmF1IC0ga2VpbmUgUXVlbGxkYXRlaWVuLlxuIgorIiAgLUIgICAgICAgICAgICAgICAgICAgICAgIEFyY2hpdGVrdHVyLXNwZXppZmlzY2ggLSBrZWluZSBRdWVsbGVuIG9kZXJcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBBcmNoaXRla3R1ci11bmFiaMOkbmdpZ2VuIERhdGVpZW4uXG4iCisiICAtQSAgICAgICAgICAgICAgICAgICAgICAgbnVyIEFyY2hpdGVrdHVyLXVuYWJow6RuZ2lnZXMgLSBrZWluZSBRdWVsbGVuICIKKyJvZGVyXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgQXJjaGl0ZWt0dXItc3BlemlmaXNjaGVuIERhdGVpZW4uXG4iCisiICAtUyAgICAgICAgICAgICAgICAgICAgICAgbnVyLVF1ZWxsZW4tVXBsb2FkLlxuIgorIiAgLWM8U3RldWVyZGF0ZWk+ICAgICAgICAgIFN0ZXVlcmluZm9ybWF0aW9uZW4gYXVzIGRpZXNlciBEYXRlaSBiZXppZWhlbi5cbiIKKyIgIC1sPGNoYW5nZWxvZ2RhdGVpPiAgICAgICBwcm8tVmVyc2lvbi1JbmZvcm1hdGlvbmVuIGF1cyBkaWVzZXIgRGF0ZWkgIgorImJlemllaGVuLlxuIgorIiAgLWY8RGF0ZWlsaXN0LURhdGVpPiAgICAgIC5kZWItRGF0ZWlsaXN0ZSBhdXMgZGllc2VyIERhdGVpIGJlemllaGVuLlxuIgorIiAgLXY8c2VpdFZlcnNpb24+ICAgICAgICAgIGFsbGUgw4RuZGVydW5nZW4gbmV1ZXIgYWxzIFZlcnNpb24gZWluZsO8Z2VuLlxuIgorIiAgLUM8w4RuZGVydW5nc2Jlc2NocmVpYnVuZz4gw4RuZGVydW5nc2Jlc2NocmVpYnVuZyBhdXMgZGllc2VyIERhdGVpICIKKyJ2ZXJ3ZW5kZW4uXG4iCisiICAtbTxCZXRyZXVlcj4gICAgICAgICAgICAgZGVuIFdlcnQgdm9uIMK7bWFpbnRhaW5lcsKrIGRlciBTdGV1ZXJkYXRlaVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIMO8YmVyc2NocmVpYmVuLlxuIgorIiAgLWU8QmV0cmV1ZXI+ICAgICAgICAgICAgIGRlbiBXZXJ0IHZvbiDCu21haW50YWluZXLCqyBpbSBDaGFuZ2Vsb2dcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICDDvGJlcnNjaHJlaWJlbi5cbiIKKyIgIC11PHVwbG9hZERhdGVpVmVyej4gICAgICBWZXJ6ZWljaG5pcyBtaXQgRGF0ZWllbiAoc3RhbmRhcmRtw6TDn2lnIMK7Li7CqykuXG4iCisiICAtc2kgKHZvcmVpbmdlc3RlbGx0KSAgICAgUXVlbGxlbiBlbnRoYWx0ZW4gT3JpZy4gZmFsbHMgbmV1ZXMgVXBzdHJlYW0uXG4iCisiICAtc2EgICAgICAgICAgICAgICAgICAgICAgUXVlbGxlIGVudGjDpGx0IE9yaWdpbmFscXVlbGxlbi5cbiIKKyIgIC1zZCAgICAgICAgICAgICAgICAgICAgICBRdWVsbGUgaXN0IG51ciBEaWZmIHVuZCAuZHNjLlxuIgorIiAgLXEgICAgICAgICAgICAgICAgICAgICAgIHJ1aGlnIC0ga2VpbmUgSW5mb3JtYXRpb25zbWVsZHVuZ2VuIGF1ZiBTdGRlcnIuXG4iCisiICAtRjxjaGFuZ2Vsb2dmb3JtYXQ+ICAgICAgQ2hhbmdlbG9nLUZvcm1hdCBlcnp3aW5nZW4uXG4iCisiICAtVjxOYW1lPj08V2VydD4gICAgICAgICAgRXJzZXR6dW5nc3ZhcmlhYmxlIHNldHplbi5cbiIKKyIgIC1UPFZhcmxpc3REYXRlaT4gICAgICAgICBWYXJpYWJsZW4gdm9uIGhpZXIgbGVzZW4gc3RhdHQgYXVzIGRlYmlhbi8iCisic3Vic3R2YXJzLlxuIgorIiAgLUQ8RmVsZD49PFdlcnQ+ICAgICAgICAgIGVpbiBGZWxkIHVuZCBXZXJ0IMO8YmVyc2NocmVpYmVuIG9kZXIgZXJnw6RuemVuLlxuIgorIiAgLVU8RmVsZD4gICAgICAgICAgICAgICAgIGVpbiBGZWxkIGVudGZlcm5lbi5cbiIKKyIgIC1oLCAtLWhlbHAgICAgICAgICAgICAgICBkaWVzZSBIaWxmZW1lbGR1bmcgYW56ZWlnZW4uXG4iCisiICAgICAgLS12ZXJzaW9uICAgICAgICAgICAgZGllIFZlcnNpb24gYW56ZWlnZW4uXG4iCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjE0OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlczogYXJjaC1zcGVjaWZpYyB1cGxvYWQgLSBub3QgaW5jbHVkaW5nIGFyY2gtaW5kZXBlbmRlbnQgcGFja2FnZXMiCittc2dzdHIgIiIKKyIlczogYXJjaGl0ZWt0dXItc3BlemlmaXNjaGVyIFVwbG9hZCAtIGFyY2hpdGVrdHVyLXVuYWJow6RuZ2lnZSBQYWtldGUgbmljaHQgIgorImVpbnNjaGxpZcOfZW4iCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjE1MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlczogYXJjaC1pbmRlcCB1cGxvYWQgLSBub3QgaW5jbHVkaW5nIGFyY2gtc3BlY2lmaWMgcGFja2FnZXMiCittc2dzdHIgIiIKKyIlczogYXJjaGl0ZWt0dXItdW5hYmjDpG5naWdlciBVcGxvYWQgLSBhcmNoaXRla3R1ci1zcGV6aWZpc2NoZSBQYWtldGUgbmljaHQgIgorImVpbnNjaGxpZcOfZW4iCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjIxOQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ0aGUgY3VycmVudCB2ZXJzaW9uICglcykgaXMgZWFybGllciB0aGFuIHRoZSBwcmV2aW91cyBvbmUgKCVzKSIKK21zZ3N0ciAiZGllIGFrdHVlbGxlIFZlcnNpb24gKCVzKSBpc3Qgw6RsdGVyIGFscyBkaWUgdm9yaGVyZ2VoZW5kZSAoJXMpIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDoyMjYKK21zZ2lkICJjYW5ub3QgcmVhZCBmaWxlcyBsaXN0IGZpbGUiCittc2dzdHIgIkRhdGVpZW5saXN0ZS1EYXRlaSBrYW5uIG5pY2h0IGdlbGVzZW4gd2VyZGVuIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDoyMzAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIGZpbGVzIGxpc3QgZW50cnkgZm9yIHBhY2thZ2UgJXMgKGxpbmUgJWQpIgorbXNnc3RyICJkb3BwZWx0ZXIgRGF0ZWllbmxpc3RlLUVpbnRyYWcgZsO8ciBQYWtldCAlcyAoWmVpbGUgJWQpIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDoyMzggc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6MjUyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBmaWxlcyBsaXN0IGVudHJ5IGZvciBmaWxlICVzIChsaW5lICVkKSIKK21zZ3N0ciAiZG9wcGVsdGVyIERhdGVpZW5saXN0ZS1FaW50cmFnIGbDvHIgRGF0ZWkgJXMgKFplaWxlICVkKSIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6MjU4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImJhZGx5IGZvcm1lZCBsaW5lIGluIGZpbGVzIGxpc3QgZmlsZSwgbGluZSAlZCIKK21zZ3N0ciAidW5nw7xsdGlnZSBaZWlsZSBpbiBEYXRlaWVubGlzdGUtRGF0ZWksIFplaWxlICVkIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDoyOTkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlcyBpbiBjb250cm9sIGZpbGUgYnV0IG5vdCBpbiBmaWxlcyBsaXN0IgorbXNnc3RyICJQYWtldCAlcyBpbiBTdGV1ZXJkYXRlaSwgYWJlciBuaWNodCBpbiBEYXRlaWxpc3RlIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDozNDMKK21zZ2lkICJyZWFkIGNoYW5nZXNkZXNjcmlwdGlvbiIKK21zZ3N0ciAiw4RuZGVydW5nc2Jlc2NocmVpYnVuZyBsZXNlbiIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6MzUxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgJXMgbGlzdGVkIGluIGZpbGVzIGxpc3QgYnV0IG5vdCBpbiBjb250cm9sIGluZm8iCittc2dzdHIgIlBha2V0ICVzIGluIERhdGVpZW5saXN0ZSwgYWJlciBuaWNodCBpbiBkZXIgU3RldWVyLUluZm8gYXVmZ2Vmw7xocnQiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjM2MworIywgcGVybC1mb3JtYXQKK21zZ2lkICJtaXNzaW5nIFNlY3Rpb24gZm9yIGJpbmFyeSBwYWNrYWdlICVzOyB1c2luZyAnLSciCittc2dzdHIgImZlaGxlbmRlciBCZXJlaWNoIGbDvHIgQmluw6RycGFrZXQgJXM7IMK7LcKrIHdpcmQgdmVyd2VuZGV0IgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDozNjUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlcyBoYXMgc2VjdGlvbiAlcyBpbiBjb250cm9sIGZpbGUgYnV0ICVzIGluIGZpbGVzIGxpc3QiCittc2dzdHIgIlBha2V0ICVzIGhhdCBCZXJlaWNoICVzIGluIGRlciBTdGV1ZXJkYXRlaSwgYWJlciAlcyBpbiBkZXIgRGF0ZWlsaXN0ZSIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6MzcyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIm1pc3NpbmcgUHJpb3JpdHkgZm9yIGJpbmFyeSBwYWNrYWdlICVzOyB1c2luZyAnLSciCittc2dzdHIgImZlaGxlbmRlIFByaW9yaXTDpHQgZsO8ciBCaW7DpHJwYWtldCAlczsgwrstwqsgd2lyZCB2ZXJ3ZW5kZXQiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjM3NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJwYWNrYWdlICVzIGhhcyBwcmlvcml0eSAlcyBpbiBjb250cm9sIGZpbGUgYnV0ICVzIGluIGZpbGVzIGxpc3QiCittc2dzdHIgIlBha2V0ICVzIGhhdCBQcmlvcml0w6R0ICVzIGluIFN0ZXVlcmRhdGVpLCBhYmVyICVzIGluIERhdGVpZW5saXN0ZSIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6Mzg2Cittc2dpZCAibWlzc2luZyBTZWN0aW9uIGZvciBzb3VyY2UgZmlsZXMiCittc2dzdHIgImZlaGxlbmRlciBCZXJlaWNoIGbDvHIgUXVlbGxkYXRlaWVuIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDozOTEKK21zZ2lkICJtaXNzaW5nIFByaW9yaXR5IGZvciBzb3VyY2UgZmlsZXMiCittc2dzdHIgImZlaGxlbmRlIFByaW9yaXTDpHQgZsO8ciBRdWVsbGRhdGVpZW4iCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjM5OCBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjM0NgorIzogc2NyaXB0cy9EcGtnL1ZlbmRvci5wbTo3MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBpcyBlbXB0eSIKK21zZ3N0ciAiJXMgaXN0IGxlZXIiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjQyNAorbXNnaWQgIm5vdCBpbmNsdWRpbmcgb3JpZ2luYWwgc291cmNlIGNvZGUgaW4gdXBsb2FkIgorbXNnc3RyICJPcmlnaW5hbHF1ZWxsZW4gYmVpbSBIb2NobGFkZW4gbmljaHQgaGluenVmw7xnZW4iCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjQzMQorbXNnaWQgImlnbm9yaW5nIC1zZCBvcHRpb24gZm9yIG5hdGl2ZSBEZWJpYW4gcGFja2FnZSIKK21zZ3N0ciAiT3B0aW9uIMK7LXNkwqsgd2lyZCBiZWkgwrtEZWJpYW4gbmF0aXZlwqstUGFrZXRlbiBpZ25vcmllcnQiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjQzMworbXNnaWQgImluY2x1ZGluZyBmdWxsIHNvdXJjZSBjb2RlIGluIHVwbG9hZCIKK21zZ3N0ciAia29tcGxldHRlciBRdWVsbGNvZGUgYmVpbSBIb2NobGFkZW4gaGluenVmw7xnZW4iCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjQzNgorbXNnaWQgImJpbmFyeS1vbmx5IHVwbG9hZCAtIG5vdCBpbmNsdWRpbmcgYW55IHNvdXJjZSBjb2RlIgorbXNnc3RyICJyZWluIGJpbsOkcmVyIFVwbG9hZCAtIGVzIGlzdCBrZWluIFF1ZWxsY29kZSBoaW56dWdlZsO8Z3QiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjQ0MAorbXNnaWQgIndyaXRlIG9yaWdpbmFsIHNvdXJjZSBtZXNzYWdlIgorbXNnc3RyICJ1cnNwcsO8bmdsaWNoZSBRdWVsbC1OYWNocmljaHQgc2NocmVpYmVuIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDo0OTQgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOjUzMgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJtaXNzaW5nIGluZm9ybWF0aW9uIGZvciBjcml0aWNhbCBvdXRwdXQgZmllbGQgJXMiCittc2dzdHIgImZlaGxlbmRlIEluZm9ybWF0aW9uZW4gZsO8ciBrcml0aXNjaGVzIEF1c2dhYmVmZWxkICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDo0OTkgc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MjcyCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDoyNzUgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOjUzNworIywgcGVybC1mb3JtYXQKK21zZ2lkICJtaXNzaW5nIGluZm9ybWF0aW9uIGZvciBvdXRwdXQgZmllbGQgJXMiCittc2dzdHIgImZlaGxlbmRlIEluZm9ybWF0aW9uZW4gZsO8ciBBdXNnYWJlZmVsZCAlcyIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6NTgKK21zZ2lkICIiCisiXG4iCisiQ29weXJpZ2h0IChDKSAxOTk2IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMCwyMDAyIFdpY2hlcnQgQWtrZXJtYW4uIgorbXNnc3RyICIiCisiXG4iCisiQ29weXJpZ2h0IChDKSAxOTk2IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMCwyMDAyIFdpY2hlcnQgQWtrZXJtYW4uIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDo3MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dXG4iCisiXG4iCisiT3B0aW9uczpcbiIKKyIgIC1wPHBhY2thZ2U+ICAgICAgICAgICAgICBwcmludCBjb250cm9sIGZpbGUgZm9yIHBhY2thZ2UuXG4iCisiICAtYzxjb250cm9sZmlsZT4gICAgICAgICAgZ2V0IGNvbnRyb2wgaW5mbyBmcm9tIHRoaXMgZmlsZS5cbiIKKyIgIC1sPGNoYW5nZWxvZ2ZpbGU+ICAgICAgICBnZXQgcGVyLXZlcnNpb24gaW5mbyBmcm9tIHRoaXMgZmlsZS5cbiIKKyIgIC1GPGNoYW5nZWxvZ2Zvcm1hdD4gICAgICBmb3JjZSBjaGFuZ2UgbG9nIGZvcm1hdC5cbiIKKyIgIC12PGZvcmNldmVyc2lvbj4gICAgICAgICBzZXQgdmVyc2lvbiBvZiBiaW5hcnkgcGFja2FnZS5cbiIKKyIgIC1mPGZpbGVzbGlzdGZpbGU+ICAgICAgICB3cml0ZSBmaWxlcyBoZXJlIGluc3RlYWQgb2YgZGViaWFuL2ZpbGVzLlxuIgorIiAgLVA8cGFja2FnZWJ1aWxkZGlyPiAgICAgIHRlbXBvcmFyeSBidWlsZCBkaXIgaW5zdGVhZCBvZiBkZWJpYW4vdG1wLlxuIgorIiAgLW48ZmlsZW5hbWU+ICAgICAgICAgICAgIGFzc3VtZSB0aGUgcGFja2FnZSBmaWxlbmFtZSB3aWxsIGJlIDxmaWxlbmFtZT4uXG4iCisiICAtTyAgICAgICAgICAgICAgICAgICAgICAgd3JpdGUgdG8gc3Rkb3V0LCBub3QgLi4uL0RFQklBTi9jb250cm9sLlxuIgorIiAgLWlzLCAtaXAsIC1pc3AsIC1pcHMgICAgIGRlcHJlY2F0ZWQsIGlnbm9yZWQgZm9yIGNvbXBhdGliaWxpdHkuXG4iCisiICAtRDxmaWVsZD49PHZhbHVlPiAgICAgICAgb3ZlcnJpZGUgb3IgYWRkIGEgZmllbGQgYW5kIHZhbHVlLlxuIgorIiAgLVU8ZmllbGQ+ICAgICAgICAgICAgICAgIHJlbW92ZSBhIGZpZWxkLlxuIgorIiAgLVY8bmFtZT49PHZhbHVlPiAgICAgICAgIHNldCBhIHN1YnN0aXR1dGlvbiB2YXJpYWJsZS5cbiIKKyIgIC1UPHZhcmxpc3RmaWxlPiAgICAgICAgICByZWFkIHZhcmlhYmxlcyBoZXJlLCBub3QgZGViaWFuL3N1YnN0dmFycy5cbiIKKyIgIC1oLCAtLWhlbHAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgICAgIC0tdmVyc2lvbiAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCittc2dzdHIgIiIKKyJBdWZydWY6ICVzIFs8T3B0aW9uPiAuLi5dXG4iCisiXG4iCisiT3B0aW9uZW46XG4iCisiICAtcDxQYWtldD4gICAgICAgICAgICAgICBTdGV1ZXJkYXRlaSBmw7xyIFBha2V0IGF1c2dlYmVuLlxuIgorIiAgLWM8U3RldWVyZGF0ZWk+ICAgICAgICAgU3RldWVyaW5mb3JtYXRpb25lbiBhdXMgZGllc2VyIERhdGVpIGhvbGVuLlxuIgorIiAgLWw8Q2hhbmdlbG9nZGF0ZWk+ICAgICAgcHJvLVZlcnNpb25zLUluZm9ybWF0aW9uZW4gYXVzIGRpZXNlciBEYXRlaSAiCisiaG9sZW4uXG4iCisiICAtRjxDaGFuZ2Vsb2dmb3JtYXQ+ICAgICBDaGFuZ2Vsb2dmb3JtYXQgZXJ6d2luZ2VuLlxuIgorIiAgLXY8ZXJ6d2luZ2VfVmVyc2lvbj4gICAgVmVyc2lvbiBkZXMgQmluw6RycGFrZXRzIHNldHplbi5cbiIKKyIgIC1mPERhdGVpbGlzdGVkYXRlaT4gICAgIERhdGVpZW4gaGllcmhlciBzY2hyZWliZW4gc3RhdHQgaW4gZGViaWFuL2ZpbGVzLlxuIgorIiAgLVA8UGFrZXRiYXV2ZXJ6PiAgICAgICAgdGVtcG9yw6RyZXMgQmF1dmVyemVpY2huaXMgc3RhdHQgZGViaWFuL3RtcC5cbiIKKyIgIC1uPERhdGVpbmFtZT4gICAgICAgICAgIGFubmVobWVuLCBkYXNzIGRlciBQYWtldGRhdGVpbmFtZSA8RGF0ZWluYW1lPiAiCisiaXN0LlxuIgorIiAgLU8gICAgICAgICAgICAgICAgICAgICAgbmFjaCBTdGRvdXQgc2NocmVpYmVuLCBuaWNodCAuLi4vREVCSUFOL2NvbnRyb2wuXG4iCisiICAtaXMsIC1pcCwgLWlzcCwgLWlwcyAgICB2ZXJhbHRldCwgd2VnZW4gS29tcGF0aWJpbGl0w6R0IGlnbm9yaWVydC5cbiIKKyIgIC1EPEZlbGQ+PTxXZXJ0PiAgICAgICAgIGVpbiBGZWxkIHVuZCBXZXJ0IMO8YmVyc2NocmVpYmVuIG9kZXIgZXJnw6RuemVuLlxuIgorIiAgLVU8RmVsZD4gICAgICAgICAgICAgICAgZWluIEZlbGQgZW50ZmVybmVuLlxuIgorIiAgLVY8TmFtZT49PFdlcnQ+ICAgICAgICAgZWluZSBTdWJzdGl0dXRpb25zdmFyaWFibGUgc2V0emVuLlxuIgorIiAgLVQ8VmFybGlzdGRhdGVpPiAgICAgICAgVmFyaWFibGVuIHZvbiBoaWVyIGxlc2VuIHN0YXR0IGF1cyBkZWJpYW4vIgorInN1YnN0dmFycy5cbiIKKyIgIC1oLCAtLWhlbHAgICAgICAgICAgICAgIGRpZXNlIEhpbGZlbWVsZHVuZyBhbnplaWdlbi5cbiIKKyIgICAgICAtLXZlcnNpb24gICAgICAgICAgIGRpZSBWZXJzaW9uIGFuemVpZ2VuLlxuIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDo5NyBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbDoxMTgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiSWxsZWdhbCBwYWNrYWdlIG5hbWUgYCVzJyIKK21zZ3N0ciAiVW5nw7xsdGlnZXIgUGFrZXRuYW1lIMK7JXPCqyIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MTUyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgJXMgbm90IGluIGNvbnRyb2wgaW5mbyIKK21zZ3N0ciAiUGFrZXQgJXMgbmljaHQgaW4gU3RldWVyLUluZm8iCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjE1NiBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbDoxNTkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibXVzdCBzcGVjaWZ5IHBhY2thZ2Ugc2luY2UgY29udHJvbCBpbmZvIGhhcyBtYW55ICglcykiCittc2dzdHIgIlBha2V0IG11c3MgYW5nZWdlYmVuIHdlcmRlbiwgZGEgU3RldWVyLUluZm8gdmllbGUgKCVzKSBlbnRow6RsdCIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MTYwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgJXM6ICIKK21zZ3N0ciAiUGFrZXQgJXM6ICIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MTg1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImAlcycgaXMgbm90IGEgbGVnYWwgYXJjaGl0ZWN0dXJlIHN0cmluZy4iCittc2dpZF9wbHVyYWwgImAlcycgYXJlIG5vdCBsZWdhbCBhcmNoaXRlY3R1cmUgc3RyaW5ncy4iCittc2dzdHJbMF0gIsK7JXPCqyBpc3Qga2VpbmUgZ8O8bHRpZ2UgQXJjaGl0ZWt0dXItWmVpY2hlbmtldHRlLiIKK21zZ3N0clsxXSAiwrslc8KrIHNpbmQga2VpbmUgZ8O8bHRpZ2VuIEFyY2hpdGVrdHVyLVplaWNoZW5rZXR0ZW4uIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDoxOTEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorImN1cnJlbnQgaG9zdCBhcmNoaXRlY3R1cmUgJyVzJyBkb2VzIG5vdCBhcHBlYXIgaW4gcGFja2FnZSdzIGFyY2hpdGVjdHVyZSAiCisibGlzdCAoJXMpIgorbXNnc3RyICIiCisiYWt0dWVsbGUgSG9zdC1BcmNoaXRla3R1ciDCuyVzwqsgZXJzY2hlaW50IG5pY2h0IGluIGRlciBBcmNoaXRla3R1cmxpc3RlICglcykgIgorImRlcyBQYWtldHMiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjI0NgorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBmaWVsZCBvZiBwYWNrYWdlICVzOiAiCittc2dzdHIgIkZlbGQgJXMgdm9uIFBha2V0ICVzOiAiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjI1MCBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDoyNTgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZXJyb3Igb2NjdXJyZWQgd2hpbGUgcGFyc2luZyAlcyBmaWVsZDogJXMiCittc2dzdHIgIkZlaGxlciBiZWltIFBhcnNlbiB2b24gJXMgRmVsZDogJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjI2MworIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisidGhlICVzIGZpZWxkIGNvbnRhaW5zIGFuIGFyY2gtc3BlY2lmaWMgZGVwZW5kZW5jeSBidXQgdGhlIHBhY2thZ2UgaXMgIgorImFyY2hpdGVjdHVyZSBhbGwiCittc2dzdHIgIiIKKyJkYXMgRmVsZCAlcyBlbnRow6RsdCBlaW5lIGFyY2hpdGVrdHVyc3BlemlmaXNjaGUgQWJow6RuZ2lna2VpdCwgYWJlciBkYXMgUGFrZXQgIgorImlzdCDCu2FyY2hpdGVjdHVyZSBhbGzCqyIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6Mjg3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIHBhY2thZ2Ugd2l0aCB1ZGViIHNwZWNpZmljIGZpZWxkICVzIgorbXNnc3RyICIlcyBQYWtldCBtaXQgdWRlYi1zcGV6aWZpc2NoZW0gRmVsZCAlcyIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MzAwIHNjcmlwdHMvZHBrZy1zY2Fuc291cmNlcy5wbDozMTMKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6ODM2IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvUGFyc2UucG06MTM4CisjOiBzY3JpcHRzL0Rwa2cvSVBDLnBtOjIyOSBzY3JpcHRzL0Rwa2cvU2hsaWJzL09iamR1bXAucG06MTgxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCBmb3JrIGZvciAlcyIKK21zZ3N0ciAiZm9yayBrYW5uIGbDvHIgJXMgbmljaHQgYXVzZ2Vmw7xocnQgd2VyZGVuIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDozMDMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2hkaXIgZm9yIGR1IHRvIGAlcyciCittc2dzdHIgImNoZGlyIG5hY2ggwrslc8KrIGbDvHIgZHUiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjMwNSBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjg0MworIzogc2NyaXB0cy9EcGtnL0lQQy5wbToyNzEgc2NyaXB0cy9EcGtnL1NobGlicy9DcHBmaWx0LnBtOjUwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBleGVjdXRlICVzIgorbXNnc3RyICIlcyBrb25udGUgbmljaHQgYXVzZ2Vmw7xocnQgd2VyZGVuIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDozMTIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZHUgaW4gYCVzJyIKK21zZ3N0ciAiZHUgaW4gwrslc8KrIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDozMTQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZHUgZ2F2ZSB1bmV4cGVjdGVkIG91dHB1dCBgJXMnIgorbXNnc3RyICJkdSBsaWVmZXJ0ZSB1bmVyd2FydGV0ZSBBdXNnYWJlIMK7JXPCqyIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MzQ3Cittc2dpZCAiY2xvc2Ugb2xkIGZpbGVzIGxpc3QgZmlsZSIKK21zZ3N0ciAic2NobGllw59lbiBkZXIgYWx0ZW4gRGF0ZWllbmxpc3RlLURhdGVpIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDozNjkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IG9wZW4gbmV3IG91dHB1dCBjb250cm9sIGZpbGUgYCVzJyIKK21zZ3N0ciAibmV1ZSBBdXNnYWJlLVN0ZXVlcmRhdGVpIMK7JXPCqyBrYW5uIG5pY2h0IGdlw7ZmZm5ldCB3ZXJkZW4iCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjM3OCBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjUyMworIzogc2NyaXB0cy9EcGtnL0ludGVyZmFjZS9TdG9yYWJsZS5wbTo5MQorIzogc2NyaXB0cy9EcGtnL0ludGVyZmFjZS9TdG9yYWJsZS5wbToxMTkgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbToyOTAKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo2MDcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IGNsb3NlICVzIgorbXNnc3RyICIlcyBrYW5uIG5pY2h0IGdlc2NobG9zc2VuIHdlcmRlbiIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MzgwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCBpbnN0YWxsIG91dHB1dCBjb250cm9sIGZpbGUgYCVzJyIKK21zZ3N0ciAiQXVzZ2FiZS1TdGV1cmRhdGVpIMK7JXPCqyBrYW5uIG5pY2h0IGluc3RhbGxpZXJ0IHdlcmRlbiIKKworIzogc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGw6NTEKK21zZ2lkICIiCisiXG4iCisiQ29weXJpZ2h0IChDKSAyMDA3IFJhcGhhZWwgSGVydHpvZy5cbiIKK21zZ3N0ciAiIgorIlxuIgorIkNvcHlyaWdodCAoQykgMjAwNyBSYXBoYWVsIEhlcnR6b2cuXG4iCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsOjYzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl1cbiIKKyJcbiIKKyJPcHRpb25zOlxuIgorIiAgLXA8cGFja2FnZT4gICAgICAgICAgICAgIGdlbmVyYXRlIHN5bWJvbHMgZmlsZSBmb3IgcGFja2FnZS5cbiIKKyIgIC1QPHBhY2thZ2VidWlsZGRpcj4gICAgICB0ZW1wb3JhcnkgYnVpbGQgZGlyIGluc3RlYWQgb2YgZGViaWFuL3RtcC5cbiIKKyIgIC1lPGxpYnJhcnk+ICAgICAgICAgICAgICBleHBsaWNpdGx5IGxpc3QgbGlicmFyaWVzIHRvIHNjYW4uXG4iCisiICAtdjx2ZXJzaW9uPiAgICAgICAgICAgICAgdmVyc2lvbiBvZiB0aGUgcGFja2FnZXMgKGRlZmF1bHRzIHRvXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgdmVyc2lvbiBleHRyYWN0ZWQgZnJvbSBkZWJpYW4vY2hhbmdlbG9nKS5cbiIKKyIgIC1jPGxldmVsPiAgICAgICAgICAgICAgICBjb21wYXJlIGdlbmVyYXRlZCBzeW1ib2xzIGZpbGUgd2l0aCB0aGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICByZWZlcmVuY2UgdGVtcGxhdGUgaW4gdGhlIGRlYmlhbiBkaXJlY3RvcnlcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBhbmQgZmFpbCBpZiBkaWZmZXJlbmNlIGlzIHRvbyBpbXBvcnRhbnRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAobGV2ZWwgZ29lcyBmcm9tIDAgZm9yIG5vIGNoZWNrLCB0byA0XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yIGFsbCBjaGVja3MpLiBCeSBkZWZhdWx0IGNoZWNrcyBhdFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldmVsIDEuXG4iCisiICAtcSAgICAgICAgICAgICAgICAgICAgICAga2VlcCBxdWlldCBhbmQgbmV2ZXIgZW1pdCBhbnkgd2FybmluZ3Mgb3JcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBnZW5lcmF0ZSBhIGRpZmYgYmV0d2VlbiBnZW5lcmF0ZWQgc3ltYm9sc1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGUgYW5kIHRoZSByZWZlcmVuY2UgdGVtcGxhdGUuXG4iCisiICAtSTxmaWxlPiAgICAgICAgICAgICAgICAgZm9yY2UgdXNhZ2Ugb2YgPGZpbGU+IGFzIHJlZmVyZW5jZSBzeW1ib2xzXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsZSBpbnN0ZWFkIG9mIHRoZSBkZWZhdWx0IGZpbGUuXG4iCisiICAtTzxmaWxlPiAgICAgICAgICAgICAgICAgd3JpdGUgdG8gPGZpbGU+LCBub3QgLi4uL0RFQklBTi9zeW1ib2xzLlxuIgorIiAgLU8gICAgICAgICAgICAgICAgICAgICAgIHdyaXRlIHRvIHN0ZG91dCwgbm90IC4uLi9ERUJJQU4vc3ltYm9scy5cbiIKKyIgIC10ICAgICAgICAgICAgICAgICAgICAgICB3cml0ZSBpbiB0ZW1wbGF0ZSBtb2RlICh0YWdzIGFyZSBub3RcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBwcm9jZXNzZWQgYW5kIGluY2x1ZGVkIGluIG91dHB1dCkuXG4iCisiICAtViAgICAgICAgICAgICAgICAgICAgICAgdmVyYm9zZSBvdXRwdXQuIFdyaXRlIGRlcHJlY2F0ZWQgc3ltYm9scyBhbmRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXR0ZXJuIG1hdGNoaW5nIHN5bWJvbHMgYXMgY29tbWVudHNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAoaW4gdGVtcGxhdGUgbW9kZSBvbmx5KS5cbiIKKyIgIC1hPGFyY2g+ICAgICAgICAgICAgICAgICBhc3N1bWUgPGFyY2g+IGFzIGhvc3QgYXJjaGl0ZWN0dXJlIHdoZW4gIgorInByb2Nlc3NpbmdcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBzeW1ib2wgZmlsZXMuXG4iCisiICAtZCAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheSBkZWJ1ZyBpbmZvcm1hdGlvbiBkdXJpbmcgd29yay5cbiIKKyIgIC1oLCAtLWhlbHAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgICAgIC0tdmVyc2lvbiAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCittc2dzdHIgIiIKKyJBdWZydWY6ICVzIFs8T3B0aW9uPiAuLi5dXG4iCisiXG4iCisiT3B0aW9uZW46XG4iCisiICAtcDxQYWtldD4gICAgICAgICAgICAgICAgU3ltYm9sZGF0ZWkgZsO8ciBQYWtldCBlcnN0ZWxsZW4uXG4iCisiICAtUDxQYWtldGJhdXZlcno+ICAgICAgICAgdGVtcG9yw6RyZXMgQmF1dmVyemVpY2huaXMgKHN0YXR0IGRlYmlhbi90bXApLlxuIgorIiAgLWU8QmlibGlvdGhlaz4gICAgICAgICAgIGV4cGxpeml0ZSBMaXN0ZSB2b24genUgZHVyY2hzdWNoZW5kZW4gRGF0ZWllbi5cbiIKKyIgIC12PFZlcnNpb24+ICAgICAgICAgICAgICBWZXJzaW9uIGRlcyBQYWtldHMgKHN0YW5kYXJkbcOkw59pZ1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGF1cyBkZWJpYW4vY2hhbmdlbG9nIGV4dHJhaGllcnRlIFZlcnNpb24pLlxuIgorIiAgLWM8U3R1ZmU+ICAgICAgICAgICAgICAgIGVyc3RlbGx0ZSBTeW1ib2xkYXRlaSBtaXQgZGVyIFJlZmVyZW56dm9ybGFnZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGltIGRlYmlhbi1WZXJ6ZWljaG5pcyB2ZXJnbGVpY2hlbiB1bmRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBmZWhsc2NobGFnZW4sIGZhbGxzIGRpZSBVbnRlcnNjaGllZGUgenUgd2ljaHRpZ1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpbmQgKFN0dWZlIHJlaWNodCB2b24gMCBmw7xyIGtlaW5lIFByw7xmdW5nIGJpcyAiCisienVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICA0IGbDvHIgYWxsZSBQcsO8ZnVuZ2VuKS4gU3RhbmRhcmRtw6TDn2lnIHdpcmQgYXVmXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgU3R1ZmUgMSBnZXByw7xmdC5cbiIKKyIgLXEgICAgICAgICAgICAgICAgICAgICAgICBydWhpZyB2ZXJoYWx0ZW4gdW5kIG5pZSBpcmdlbmR3ZWxjaGUgV2FybnVuZ2VuXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgb2RlciBlaW4gRGlmZiB6d2lzY2hlbiBkZXIgZ2VuZXJpZXJ0ZW5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBTeW1ib2xkYXRlaSB1bmQgZGVyIFJlZmVyZW56dm9ybGFnZSBhdXNnZWJlbi5cbiIKKyIgIC1JPERhdGVpPiAgICAgICAgICAgICAgICBWZXJ3ZW5kdW5nIHZvbiA8RGF0ZWk+IGFscyBSZWZlcmVuei1TeW1ib2xkYXRlaVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGVyendpbmdlbiBzdGF0dCBkZXIgc3RhbmRhcmRtw6TDn2lnZW4gRGF0ZWkuXG4iCisiICAtTzxEYXRlaT4gICAgICAgICAgICAgICAgaW4gPERhdGVpPiBzY2hyZWliZW4sIG5pY2h0IC4uLi9ERUJJQU4vc3ltYm9scy5cbiIKKyIgIC1PICAgICAgICAgICAgICAgICAgICAgICBuYWNoIFN0ZG91dCBzY2hyZWliZW4sIG5pY2h0IC4uLi9ERUJJQU4vc3ltYm9scy5cbiIKKyIgIC10ICAgICAgICAgICAgICAgICAgICAgICBpbSBWb3JsYWdlbm1vZHVzIHNjaHJlaWJlbiAoTWFya2llcnVuZ2VuIHdlcmRlblxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIG5pY2h0IHZlcmFyYmVpdGV0IHVuZCBpbiBkaWUgQXVzZ2FiZSAiCisiYXVmZ2Vub21tZW4pLlxuIgorIiAgLVYgICAgICAgICAgICAgICAgICAgICAgIGdlc2Nod8OkdHppZ2UgQXVzZ2FiZS4gVmVyYWx0ZXRlIFN5bWJvbGUgdW5kXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgTXVzdGVyLCBkaWUgYXVmIFN5bWJvbGUgcGFzc2VuLCBhbHMgS29tbWVudGFyZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHNjaHJlaWJlbiAobnVyIGltIFZvcmxhZ2VuLU1vZHVzKS5cbiIKKyIgIC1hPEFyY2g+ICAgICAgICAgICAgICAgICA8QXJjaD4gYWxzIEhvc3QtQXJjaGl0ZWt0dXIgYmVpbSBWZXJhcmJlaXRlblxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlciBTeW1ib2xkYXRlaWVuIGFubmVobWVuLlxuIgorIiAgLWQgICAgICAgICAgICAgICAgICAgICAgIGJlaSBkZXIgQXJiZWl0IERlYnVnLUluZm9ybWF0aW9uZW4gYW56ZWlnZW4uXG4iCisiICAtaCwgLS1oZWxwICAgICAgICAgICAgICAgZGllc2UgSGlsZmVtZWxkdW5nIGFuemVpZ2VuLlxuIgorIiAgICAgIC0tdmVyc2lvbiAgICAgICAgICAgIGRpZSBWZXJzaW9uIGFuemVpZ2VuLlxuIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbDoxOTQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiQ2FuJ3QgcmVhZCBkaXJlY3RvcnkgJXM6ICVzIgorbXNnc3RyICJWZXJ6ZWljaG5pcyAlcyBrYW5uIG5pY2h0IGdlbGVzZW4gd2VyZGVuOiAlcyIKKworIzogc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGw6MjA5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIk9iamR1bXAgY291bGRuJ3QgcGFyc2UgJXNcbiIKK21zZ3N0ciAiT2JqZHVtcCBrb25udGUgJXMgbmljaHQgYXVzd2VydGVuXG4iCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsOjIyNworbXNnaWQgIjxzdGFuZGFyZCBvdXRwdXQ+IgorbXNnc3RyICI8U3RhbmRhcmRhdXNnYWJlPiIKKworIzogc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGw6MjU1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIm5ldyBsaWJyYXJpZXMgYXBwZWFyZWQgaW4gdGhlIHN5bWJvbHMgZmlsZTogJXMiCittc2dzdHIgIm5ldWUgQmlibGlvdGhla2VuIHNpbmQgaW4gZGVyIFN5bWJvbGRhdGVpIGF1ZmdldGF1Y2h0OiAlcyIKKworIzogc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGw6MjYwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInNvbWUgbGlicmFyaWVzIGRpc2FwcGVhcmVkIGluIHRoZSBzeW1ib2xzIGZpbGU6ICVzIgorbXNnc3RyICJlaW5pZ2UgQmlibGlvdGhla2VuIHNpbmQgaW4gZGVyIFN5bWJvbGRhdGVpIHZlcnNjaHd1bmRlbjogJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsOjI2NQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJzb21lIG5ldyBzeW1ib2xzIGFwcGVhcmVkIGluIHRoZSBzeW1ib2xzIGZpbGU6ICVzIgorbXNnc3RyICJlaW5pZ2UgbmV1ZSBTeW1ib2xlIHNpbmQgaW4gZGVyIFN5bWJvbGRhdGVpIGF1ZmdldGF1Y2h0OiAlcyIKKworIzogc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGw6MjY2IHNjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsOjI3MQorbXNnaWQgInNlZSBkaWZmIG91dHB1dCBiZWxvdyIKK21zZ3N0ciAibGVzZW4gU2llIGRpZSBmb2xnZW5kZSBEaWZmLUF1c2dhYmUiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsOjI3MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJzb21lIHN5bWJvbHMgb3IgcGF0dGVybnMgZGlzYXBwZWFyZWQgaW4gdGhlIHN5bWJvbHMgZmlsZTogJXMiCittc2dzdHIgImVpbmlnZSBTeW1ib2xlIG9kZXIgTXVzdGVyIHNpbmQgYXVzIGRlciBTeW1ib2xkYXRlaSB2ZXJzY2h3dW5kZW46ICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbDoyOTEKK21zZ2lkICJ0aGUgZ2VuZXJhdGVkIHN5bWJvbHMgZmlsZSBpcyBlbXB0eSIKK21zZ3N0ciAiZGllIGVyc3RlbGx0ZSBTeW1ib2xkYXRlaSBpc3QgbGVlciIKKworIzogc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGw6MjkzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGRvZXNuJ3QgbWF0Y2ggY29tcGxldGVseSAlcyIKK21zZ3N0ciAiJXMgcGFzc3QgbmljaHQga29tcGxldHQgenUgJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsOjI5NgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJubyBkZWJpYW4vc3ltYm9scyBmaWxlIHVzZWQgYXMgYmFzaXMgZm9yIGdlbmVyYXRpbmcgJXMiCittc2dzdHIgImtlaW5lIGRlYmlhbi9zeW1ib2xzLURhdGVpIGFscyBCYXNpcyB6dXIgRXJ6ZXVndW5nIHZvbiAlcyB2ZXJ3ZW5kZXQiCisKKyM6IHNjcmlwdHMvZHBrZy1tZXJnZWNoYW5nZWxvZ3MucGw6NTUKK21zZ2lkICJDb3B5cmlnaHQgKEMpIDIwMDktMjAxMCBSYXBoYWVsIEhlcnR6b2cuIgorbXNnc3RyICJDb3B5cmlnaHQgKEMpIDIwMDktMjAxMCBSYXBoYWVsIEhlcnR6b2cuIgorCisjOiBzY3JpcHRzL2Rwa2ctbWVyZ2VjaGFuZ2Vsb2dzLnBsOjU4Cittc2dpZCAiIgorIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgb3JcbiIKKyJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKK21zZ3N0ciAiIgorIkRpZXMgaXN0IGZyZWllIFNvZnR3YXJlOyBsZXNlbiBTaWUgZGllIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIFZlcnNpb24gMlxuIgorIm9kZXIgbmV1ZXIgZsO8ciBkaWUgS29waWVyYmVkaW5ndW5nZW4uIEVzIGdpYnQgS0VJTkUgSGFmdHVuZy5cbiIKKworIzogc2NyaXB0cy9kcGtnLW1lcmdlY2hhbmdlbG9ncy5wbDo2NQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIDxvbGQ+IDxuZXctYT4gPG5ldy1iPiBbPG91dD5dXG4iCisiXG4iCisiT3B0aW9uczpcbiIKKyIgIC0tbWVyZ2UtcHJlcmVsZWFzZXMsIC1tICBtZXJnZSBwcmUtcmVsZWFzZXMgdG9nZXRoZXIsIGlnbm9yZXMgZXZlcnl0aGluZ1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGFmdGVyIHRoZSBsYXN0ICd+JyBpbiB0aGUgdmVyc2lvbi5cbiIKKyIgIC0taGVscCwgLWgsIC0/ICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCittc2dzdHIgIiIKKyJBdWZydWY6ICVzIFs8T3B0aW9uPi4uLl0gPGFsdD4gPG5ldS1hPiA8bmV1LWI+IFs8QXVzZ2FiZT5dXG4iCisiXG4iCisiT3B0aW9uZW46XG4iCisiICAtLW1lcmdlLXByZXJlbGVhc2VzLCAtbSAgdm9yYWItVmVyw7ZmZmVudGxpY2h1bmdlbiB6dXNhbW1lbmbDvGhyZW4sXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgYWxsZXMgbmFjaCBkZW0gbGV0enRlbiDCu37CqyBpbiBkZXIgVmVyc2lvblxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGlnbm9yaWVyZW4uXG4iCisiICAtaCwgLS1oZWxwICAgICAgICAgICAgICAgZGllc2UgSGlsZmVtZWxkdW5nIGFuemVpZ2VuLlxuIgorIiAgICAgIC0tdmVyc2lvbiAgICAgICAgICAgIGRpZSBWZXJzaW9uIGFuemVpZ2VuLlxuIgorCisjOiBzY3JpcHRzL2Rwa2ctbWVyZ2VjaGFuZ2Vsb2dzLnBsOjEyOSBzY3JpcHRzL2Rwa2ctbWVyZ2VjaGFuZ2Vsb2dzLnBsOjEzMQorIzogc2NyaXB0cy9EcGtnL0NvbXByZXNzaW9uL0ZpbGVIYW5kbGUucG06Mzg1CisjOiBzY3JpcHRzL0Rwa2cvSW50ZXJmYWNlL1N0b3JhYmxlLnBtOjExNSBzY3JpcHRzL0Rwa2cvSVBDLnBtOjI1NQorIzogc2NyaXB0cy9EcGtnL0lQQy5wbToyNjMgc2NyaXB0cy9EcGtnL1NvdXJjZS9GdW5jdGlvbnMucG06NzgKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbTo0NDcgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOjU1MAorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjIxNyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NTMwCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NjA1CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06MTQyCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06MTUxCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06MTU3CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06MjI2CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06MjM0CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06MzQxCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06MzUxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCB3cml0ZSAlcyIKK21zZ3N0ciAiJXMga2FubiBuaWNodCBnZXNjaHJpZWJlbiB3ZXJkZW4iCisKKyM6IHNjcmlwdHMvZHBrZy1uYW1lLnBsOjUxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIlVzYWdlOiAlcyBbPG9wdGlvbj4uLi5dIDxmaWxlPi4uLlxuIgorbXNnc3RyICJBdWZydWY6ICVzIFs8T3B0aW9uPi4uLl0gPERhdGVpPi4uLlxuIgorCisjOiBzY3JpcHRzL2Rwa2ctbmFtZS5wbDo1MworbXNnaWQgIiIKKyJcbiIKKyJPcHRpb25zOlxuIgorIiAgLWEsIC0tbm8tYXJjaGl0ZWN0dXJlICAgIG5vIGFyY2hpdGVjdHVyZSBwYXJ0IGluIGZpbGVuYW1lLlxuIgorIiAgLW8sIC0tb3ZlcndyaXRlICAgICAgICAgIG92ZXJ3cml0ZSBpZiBmaWxlIGV4aXN0cy5cbiIKKyIgIC1rLCAtLXN5bWxpbmsgICAgICAgICAgICBkb24ndCBjcmVhdGUgYSBuZXcgZmlsZSwgYnV0IGEgc3ltbGluay5cbiIKKyIgIC1zLCAtLXN1YmRpciBbZGlyXSAgICAgICBtb3ZlIGZpbGUgaW50byBzdWJkaXIgKHVzZSB3aXRoIGNhcmUpLlxuIgorIiAgLWMsIC0tY3JlYXRlLWRpciAgICAgICAgIGNyZWF0ZSB0YXJnZXQgZGlyIGlmIG5vdCB0aGVyZSAodXNlIHdpdGggY2FyZSkuXG4iCisiICAtaCwgLS1oZWxwICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC12LCAtLXZlcnNpb24gICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorImZpbGUuZGViIGNoYW5nZXMgdG8gPHBhY2thZ2U+Xzx2ZXJzaW9uPl88YXJjaGl0ZWN0dXJlPi48cGFja2FnZV90eXBlPlxuIgorImFjY29yZGluZyB0byB0aGUgJ3VuZGVyc2NvcmVzIGNvbnZlbnRpb24nLlxuIgorbXNnc3RyICIiCisiXG4iCisiT3B0aW9uZW46XG4iCisiICAtYSwgLS1uby1hcmNoaXRlY3R1cmUgICAga2VpbiBBcmNoaXRla3R1cnRlaWwgaW0gRGF0ZWluYW1lbi5cbiIKKyIgIC1vLCAtLW92ZXJ3cml0ZSAgICAgICAgICDDvGJlcnNjaHJlaWJlbiwgZmFsbHMgRGF0ZWkgZXhpc3RpZXJ0LlxuIgorIiAgLWssIC0tc3ltbGluayAgICAgICAgICAgIGtlaW5lIG5ldWUgRGF0ZWkgZXJzdGVsbGVuLCBzb25kZXJuIGVpbmVuICIKKyJTeW1saW5rLlxuIgorIiAgLXMsIC0tc3ViZGlyIFtWZXJ6XSAgICAgIERhdGVpIGluIFVudGVydmVyemVpY2huaXMgdmVyc2NoaWViZW4gIgorIihWb3JzaWNodCEpLlxuIgorIiAgLWMsIC0tY3JlYXRlLWRpciAgICAgICAgIFppZWx2ZXJ6ZWljaG5pcyBlcnN0ZWxsZW4sIGZhbGxzIG5pY2h0XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgdm9yaGFuZGVuIChWb3JzaWNodCEpLlxuIgorIiAgLWgsIC0taGVscCAgICAgICAgICAgICAgIGRpZXNlIEhpbGZlbWVsZHVuZyBhbnplaWdlbi5cbiIKKyIgIC12LCAtLXZlcnNpb24gICAgICAgICAgICBkaWUgVmVyc2lvbiBhbnplaWdlbi5cbiIKKyJcbiIKKyJEYXRlaS5kZWIgw6RuZGVydCBzaWNoIGluIDxQYWtldD5fPFZlcnNpb24+XzxBcmNoaXRla3R1cj4uPFBha2V0dHlwPlxuIgorImdlbcOkw58gZGVyIMK7VW50ZXJzdHJpY2gtS29udmVudGlvbsKrLlxuIgorCisjOiBzY3JpcHRzL2Rwa2ctbmFtZS5wbDo3NQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3QgZmluZCAnJXMnIgorbXNnc3RyICLCuyVzwqsga2FubiBuaWNodCBnZWZ1bmRlbiB3ZXJkZW4iCisKKyM6IHNjcmlwdHMvZHBrZy1uYW1lLnBsOjk2IHNjcmlwdHMvRHBrZy9BcmNoLnBtOjEzOCBzY3JpcHRzL0Rwa2cvQXJjaC5wbToxNTcKKyM6IHNjcmlwdHMvRHBrZy9BcmNoLnBtOjE3NiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL1BhcnNlLnBtOjE0MgorIzogc2NyaXB0cy9EcGtnL0lQQy5wbToyNDcgc2NyaXB0cy9EcGtnL1NobGlicy5wbTo3OAorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOjE5MworIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgb3BlbiAlcyIKK21zZ3N0ciAiJXMga2FubiBuaWNodCBnZcO2ZmZuZXQgd2VyZGVuIgorCisjOiBzY3JpcHRzL2Rwa2ctbmFtZS5wbDo5OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJiaW5hcnkgY29udHJvbCBmaWxlICVzIgorbXNnc3RyICJiaW7DpHJlIFN0ZXVlcmRhdGVpICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctbmFtZS5wbDoxMTEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiYXNzdW1pbmcgYXJjaGl0ZWN0dXJlICclcycgZm9yICclcyciCittc2dzdHIgIkFyY2hpdGVrdHVyIMK7JXPCqyB3aXJkIGbDvHIgwrslc8KrIHZlcm11dGV0IgorCisjOiBzY3JpcHRzL2Rwa2ctbmFtZS5wbDoxMzMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiYmFkIHBhY2thZ2UgY29udHJvbCBpbmZvcm1hdGlvbiBmb3IgJyVzJyIKK21zZ3N0ciAidW5nw7xsdGlnZSBQYWtldHN0ZXVlcmluZm9ybWF0aW9uZW4gZsO8ciDCuyVzwqsiCisKKyM6IHNjcmlwdHMvZHBrZy1uYW1lLnBsOjE0OQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJhc3N1bWluZyBzZWN0aW9uICclcycgZm9yICclcyciCittc2dzdHIgIkJlcmVpY2ggwrslc8KrIHdpcmQgZsO8ciDCuyVzwqsgdmVybXV0ZXQiCisKKyM6IHNjcmlwdHMvZHBrZy1uYW1lLnBsOjE3NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJubyBQYWNrYWdlIGZpZWxkIGZvdW5kIGluICclcycsIHNraXBwaW5nIGl0IgorbXNnc3RyICJrZWluIEZlbGQgwrtQYWNrYWdlwqsgaW4gwrslc8KrIGdlZnVuZGVuLCDDvGJlcnNwcnVuZ2VuIgorCisjOiBzY3JpcHRzL2Rwa2ctbmFtZS5wbDoxODcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY3JlYXRlZCBkaXJlY3RvcnkgJyVzJyIKK21zZ3N0ciAiVmVyemVpY2huaXMgJXMgZXJzdGVsbHQiCisKKyM6IHNjcmlwdHMvZHBrZy1uYW1lLnBsOjE4OQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3QgY3JlYXRlIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICJWZXJ6ZWljaG5pcyDCuyVzwqsga2FubiBuaWNodCBhbmdlbGVndCB3ZXJkZW4iCisKKyM6IHNjcmlwdHMvZHBrZy1uYW1lLnBsOjE5MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJubyBzdWNoIGRpcmVjdG9yeSAnJXMnLCB0cnkgLS1jcmVhdGUtZGlyICgtYykgb3B0aW9uIgorbXNnc3RyICJrZWluIFZlcnplaWNobmlzIMK7JXPCqywgdmVyc3VjaGVuIFNpZSBkaWUgT3B0aW9uIC0tY3JlYXRlLWRpciAoLWMpIgorCisjOiBzY3JpcHRzL2Rwa2ctbmFtZS5wbDoyMDcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAic2tpcHBpbmcgJyVzJyIKK21zZ3N0ciAiwrslc8KrIHdpcmQgw7xiZXJzcHJ1bmdlbiIKKworIzogc2NyaXB0cy9kcGtnLW5hbWUucGw6MjA5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCBtb3ZlICclcycgdG8gZXhpc3RpbmcgZmlsZSIKK21zZ3N0ciAiwrslc8KrIGthbm4gbmljaHQgYXVmIGVpbmUgZXhpc3RpZXJlbmRlIERhdGVpIHZlcnNjaG9iZW4gd2VyZGVuIgorCisjOiBzY3JpcHRzL2Rwa2ctbmFtZS5wbDoyMTEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibW92ZWQgJyVzJyB0byAnJXMnIgorbXNnc3RyICLCuyVzwqsgbmFjaCDCuyVzwqsgdmVyc2Nob2JlbiIKKworIzogc2NyaXB0cy9kcGtnLW5hbWUucGw6MjEzCittc2dpZCAibWtkaXIgY2FuIGJlIHVzZWQgdG8gY3JlYXRlIGRpcmVjdG9yeSIKK21zZ3N0ciAibWtkaXIga2FubiB6dW0gRXJzdGVsbGVuIHZvbiBWZXJ6ZWljaG5pc3NlbiB2ZXJ3YW5kdCB3ZXJkZW4iCisKKyM6IHNjcmlwdHMvZHBrZy1uYW1lLnBsOjIxOAorbXNnaWQgIm5lZWQgYXQgbGVhc3QgYSBmaWxlbmFtZSIKK21zZ3N0ciAibWluZGVzdGVucyBlaW4gRGF0ZWluYW1lIHdpcmQgYmVuw7Z0aWd0IgorCisjOiBzY3JpcHRzL2Rwa2ctcGFyc2VjaGFuZ2Vsb2cucGw6MzMKK21zZ2lkICIiCisiXG4iCisiQ29weXJpZ2h0IChDKSAxOTk2IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMSBXaWNoZXJ0IEFra2VybWFuIgorbXNnc3RyICIiCisiXG4iCisiQ29weXJpZ2h0IChDKSAxOTk2IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMSBXaWNoZXJ0IEFra2VybWFuLiIKKworIzogc2NyaXB0cy9kcGtnLXBhcnNlY2hhbmdlbG9nLnBsOjQ1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl1cbiIKKyJcbiIKKyJPcHRpb25zOlxuIgorIiAgLWw8Y2hhbmdlbG9nZmlsZT4gICAgICAgIGdldCBwZXItdmVyc2lvbiBpbmZvIGZyb20gdGhpcyBmaWxlLlxuIgorIiAgLUY8Y2hhbmdlbG9nZm9ybWF0PiAgICAgIGZvcmNlIGNoYW5nZSBsb2cgZm9ybWF0LlxuIgorIiAgLUw8bGliZGlyPiAgICAgICAgICAgICAgIGxvb2sgZm9yIGNoYW5nZSBsb2cgcGFyc2VycyBpbiA8bGliZGlyPi5cbiIKKyIgIC1oLCAtLWhlbHAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgICAgIC0tdmVyc2lvbiAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCisicGFyc2VyIG9wdGlvbnM6XG4iCisiICAgIC0tZm9ybWF0IDxvdXRwdXRmb3JtYXQ+ICAgICBzZWUgbWFuIHBhZ2UgZm9yIGxpc3Qgb2YgYXZhaWxhYmxlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdXRwdXQgZm9ybWF0cywgZGVmYXVsdHMgdG8gJ2Rwa2cnXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIGRwa2ctZGV2XG4iCisiICAgIC0tc2luY2UgPHZlcnNpb24+LCAgICAgICAgICBpbmNsdWRlIGFsbCBjaGFuZ2VzIGxhdGVyIHRoYW4gdmVyc2lvblxuIgorIiAgICAgIC1zPHZlcnNpb24+LCAtdjx2ZXJzaW9uPlxuIgorIiAgICAtLXVudGlsIDx2ZXJzaW9uPiwgICAgICAgICAgaW5jbHVkZSBhbGwgY2hhbmdlcyBlYXJsaWVyIHRoYW4gdmVyc2lvblxuIgorIiAgICAgIC11PHZlcnNpb24+XG4iCisiICAgIC0tZnJvbSA8dmVyc2lvbj4sICAgICAgICAgICBpbmNsdWRlIGFsbCBjaGFuZ2VzIGVxdWFsIG9yIGxhdGVyXG4iCisiICAgICAgLWY8dmVyc2lvbj4gICAgICAgICAgICAgICB0aGFuIHZlcnNpb25cbiIKKyIgICAgLS10byA8dmVyc2lvbj4sIC10PHZlcnNpb24+IGluY2x1ZGUgYWxsIGNoYW5nZXMgdXAgdG8gb3IgZXF1YWxcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoYW4gdmVyc2lvblxuIgorIiAgICAtLWNvdW50IDxudW1iZXI+LCAgICAgICAgICAgaW5jbHVkZSA8bnVtYmVyPiBlbnRyaWVzIGZyb20gdGhlIHRvcFxuIgorIiAgICAgIC1jPG51bWJlcj4sIC1uPG51bWJlcj4gICAgKG9yIHRoZSB0YWlsIGlmIDxudW1iZXI+IGlzIGxvd2VyIHRoYW4gMClcbiIKKyIgICAgLS1vZmZzZXQgPG51bWJlcj4sICAgICAgICAgIGNoYW5nZSB0aGUgc3RhcnRpbmcgcG9pbnQgZm9yIC0tY291bnQsXG4iCisiICAgICAgLW88bnVtYmVyPiAgICAgICAgICAgICAgICBjb3VudGVkIGZyb20gdGhlIHRvcCAob3IgdGhlIHRhaWwgaWZcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxudW1iZXI+IGlzIGxvd2VyIHRoYW4gMClcbiIKKyIgICAgLS1hbGwgICAgICAgICAgICAgICAgICAgICAgIGluY2x1ZGUgYWxsIGNoYW5nZXNcbiIKK21zZ3N0ciAiIgorIkF1ZnJ1ZjogJXMgWzxPcHRpb24+IC4uLl1cbiIKKyJcbiIKKyJPcHRpb25lbjpcbiIKKyIgIC1sPGNoYW5nZWxvZ2RhdGVpPiAgICAgIHZlcnNpb25zYWJow6RuZ2lnZSBJbmZvIGF1cyBkaWVzZXIgRGF0ZWkgZXJoYWx0ZW4uXG4iCisiICAtRjxjaGFuZ2Vsb2dGb3JtYXQ+ICAgICBDaGFuZ2Vsb2ctRm9ybWF0IGVyendpbmdlbi5cbiIKKyIgIC1MPEJpYlZlcno+ICAgICAgICAgICAgIG5hY2ggUGFyc2VyIGbDvHIgQ2hhbmdlbG9ncyBpbiA8QmliVmVyej4gc3VjaGVuLlxuIgorIiAgLWgsIC0taGVscCAgICAgICAgICAgICAgZGllc2UgSGlsZmVtZWxkdW5nIGFuemVpZ2VuLlxuIgorIiAgICAgIC0tdmVyc2lvbiAgICAgICAgICAgZGllIFZlcnNpb24gYW56ZWlnZW4uXG4iCisiXG4iCisiUGFyc2VyLU9wdGlvbmVuOlxuIgorIiAgICAtLWZvcm1hdCA8QXVzZ2FiZWZvcm1hdD4gIHNpZWhlIEhhbmRidWNoc2VpdGUgZsO8ciB2ZXJmw7xnYmFyZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEF1c2dhYmVmb3JtYXRlLCBzdGFuZGFyZG3DpMOfaWcgwrtkcGtnwqsgenVyXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgS29tcGF0aWJpbGl0w6R0IG1pdCBkcGtnLWRldlxuIgorIiAgICAtLXNpbmNlIDxWZXJzaW9uPiwgICAgICAgIGFsbGUgw4RuZGVydW5nZW4gasO8bmdlciBhbHMgVmVyc2lvbiAiCisiaGluenVuZWhtZW5cbiIKKyIgICAgIC1zPFZlcnNpb24+LCAtdjxWZXJzaW9uPlxuIgorIiAgICAtLXVudGlsIDxWZXJzaW9uPiwgICAgICAgIGFsbGUgw4RuZGVydW5nZW4gw6RsdGVyIGFscyBWZXJzaW9uIGhpbnp1bmVobWVuXG4iCisiICAgICAgLXU8VmVyc2lvbj5cbiIKKyIgICAgLS1mcm9tIDxWZXJzaW9uPiwgICAgICAgICBhbGxlIMOEbmRlcnVuZ2VuIGrDvG5nZXIgYWxzIG9kZXIgaWRlbnRpc2NoIG1pdFxuIgorIiAgICAgIC1mPHZlcnNpb24+ICAgICAgICAgICAgIFZlcnNpb24gaGluenVuZWhtZW5cbiIKKyIgICAgLS10byA8VmVyc2lvbj4sICAgICAgICAgICBhbGxlIMOEbmRlcnVuZ2VuIMOkbHRlciBhbHMgb2RlciBpZGVudGlzY2ggbWl0XG4iCisiICAgICAgIC10PHZlcnNpb24+ICAgICAgICAgICAgVmVyc2lvbiBoaW56dW5laG1lblxuIgorIiAgICAtLWNvdW50IDxaYWhsPiwgICAgICAgICAgIDxaYWhsPiBFaW50csOkZ2Ugdm9uIG9iZW4gaGluenVmw7xnZW4gKG9kZXIgdm9uXG4iCisiICAgICAgLWM8WmFobD4sIC1uPFphaGw+ICAgICAgdW50ZW4sIGZhbGxzIDxaYWhsPiBrbGVpbmVyIGFscyBOdWxsIGlzdClcbiIKKyIgICAgLS1vZmZzZXQgPFphaGw+LCAgICAgICAgICBkZW4gU3RhcnRwdW5rdCBmw7xyIC0tY291bnQgw6RuZGVybiwgZ2V6w6RobHQgIgorInZvblxuIgorIiAgICAgIC1vPFphaGw+ICAgICAgICAgICAgICAgIG9iZW4gKG9kZXIgdm9uIHVudGVuLCBmYWxscyA8WmFobD4ga2xlaW5lciAiCisiYWxzXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTnVsbCBpc3QpXG4iCisiICAgIC0tYWxsICAgICAgICAgICAgICAgICAgICAgYWxsZSDDhG5kZXJ1bmdlbiBoaW56dWbDvGdlblxuIgorCisjOiBzY3JpcHRzL2Rwa2ctcGFyc2VjaGFuZ2Vsb2cucGw6MTE3Cittc2dpZCAidGFrZXMgbm8gbm9uLW9wdGlvbiBhcmd1bWVudHMiCittc2dzdHIgImFremVwdGllcnQga2VpbiBuaWNodC1PcHRpb25zLUFyZ3VtZW50IgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOjY2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gPGJpbmFyeXBhdGg+IFs8b3ZlcnJpZGVmaWxlPiBbPHBhdGhwcmVmaXg+XV0gPiAiCisiUGFja2FnZXNcbiIKKyJcbiIKKyJPcHRpb25zOlxuIgorIiAgLXQsIC0tdHlwZSA8dHlwZT4gICAgICAgIHNjYW4gZm9yIDx0eXBlPiBwYWNrYWdlcyAoZGVmYXVsdCBpcyAnZGViJykuXG4iCisiICAtdSwgLS11ZGViICAgICAgICAgICAgICAgc2NhbiBmb3IgdWRlYnMgKG9ic29sZXRlIGFsaWFzIGZvciAtdHVkZWIpLlxuIgorIiAgLWEsIC0tYXJjaCA8YXJjaD4gICAgICAgIGFyY2hpdGVjdHVyZSB0byBzY2FuIGZvci5cbiIKKyIgIC1tLCAtLW11bHRpdmVyc2lvbiAgICAgICBhbGxvdyBtdWx0aXBsZSB2ZXJzaW9ucyBvZiBhIHNpbmdsZSBwYWNrYWdlLlxuIgorIiAgLWUsIC0tZXh0cmEtb3ZlcnJpZGUgPGZpbGU+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlIGV4dHJhIG92ZXJyaWRlIGZpbGUuXG4iCisiICAtTSwgLS1tZWRpdW0gPG1lZGl1bT4gICAgYWRkIFgtTWVkaXVtIGZpZWxkIGZvciBkc2VsZWN0IG11bHRpY2QgYWNjZXNzICIKKyJtZXRob2RcbiIKKyIgIC1oLCAtLWhlbHAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgICAgIC0tdmVyc2lvbiAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCittc2dzdHIgIiIKKyJBdWZydWY6ICVzIFs8T3B0aW9uPiAuLi5dIDxCaW7DpHJwZmFkPiBbPE92ZXJyaWRlLURhdGVpPiBbPFBmYWRwcsOkZml4Pl1dID4gIgorIlBhY2thZ2VzXG4iCisiXG4iCisiT3B0aW9uZW46XG4iCisiICAtdCwgLS10eXBlIDxUeXA+ICAgICAgICAgbmFjaCA8VHlwPi1QYWtldGVuIHN1Y2hlbiAoc3RhbmRhcmRtw6TDn2lnIMK7ZGViwqspLlxuIgorIiAgLXUsIC0tdWRlYiAgICAgICAgICAgICAgIG5hY2ggdWRlYnMgc3VjaGVuICh2ZXJhbHRldGVyIEFsaWFzIGbDvHIgLXR1ZGViKS5cbiIKKyIgIC1hLCAtLWFyY2ggPEFyY2g+ICAgICAgICBBcmNoaXRla3R1ciwgbmFjaCBkZXIgZ2VzdWNodCB3ZXJkZW4gc29sbC5cbiIKKyIgIC1tLCAtLW11bHRpdmVyc2lvbiAgICAgICBtZWhyZXJlIFZlcnNpb25lbiBlaW5lcyBlaW56ZWxuZW4gUGFrZXRzICIKKyJlcmxhdWJlbi5cbiIKKyIgIC1lLCAtLWV4dHJhLW92ZXJyaWRlIDxEYXRlaT5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICB6dXPDpHR6bGljaGUgT3ZlcnJpZGUtRGF0ZWkgdmVyd2VuZGVuLlxuIgorIiAgLU0sIC0tbWVkaXVtIDxNZWRpdW0+ICAgIEZlbGQgWC1NZWRpdW0gZsO8ciBEc2VsZWN0cyBNdWx0aWNkLSIKKyJadWdyaWZmc21ldGhvZGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBoaW56dWbDvGdlbi5cbiIKKyIgIC1oLCAtLWhlbHAgICAgICAgICAgICAgICBkaWVzZSBIaWxmZW1lbGR1bmcgYW56ZWlnZW4uXG4iCisiICAgICAgLS12ZXJzaW9uICAgICAgICAgICAgZGllIFZlcnNpb24gYW56ZWlnZW4uXG4iCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6ODMKK21zZ2lkICItdSwgLS11ZGViIG9wdGlvbiBpcyBkZXByZWNhdGVkIChzZWUgUkVBRE1FLmZlYXR1cmUtcmVtb3ZhbC1zY2hlZHVsZSkiCittc2dzdHIgIiIKKyJPcHRpb24gLXUsIC0tdWRlYiBpc3QgdmVyYWx0ZXQgKGxlc2VuIFNpZSBSRUFETUUuZmVhdHVyZS1yZW1vdmFsLXNjaGVkdWxlKSIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoxMTIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiICAlcyAocGFja2FnZSBzYXlzICVzLCBub3QgJXMpIgorbXNnc3RyICIgICVzIChsYXV0IFBha2V0ICVzLCBuaWNodCAlcykiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6MTIwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIlVuY29uZGl0aW9uYWwgbWFpbnRhaW5lciBvdmVycmlkZSBmb3IgJXMiCittc2dzdHIgIkJlZGluZ3VuZ3Nsb3NlIMOcYmVyc3RldWVydW5nICjCu292ZXJyaWRlwqspIGRlcyBCZXRyZXVlcnMgZsO8ciAlcyIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoxNTggc2NyaXB0cy9kcGtnLXNjYW5zb3VyY2VzLnBsOjMwMgorbXNnaWQgIm9uZSB0byB0aHJlZSBhcmd1bWVudHMgZXhwZWN0ZWQiCittc2dzdHIgImVpbiBiaXMgZHJlaSBBcmd1bWVudGUgZXJ3YXJ0ZXQiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6MTc1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIkJpbmFyeSBkaXIgJXMgbm90IGZvdW5kIgorbXNnc3RyICJCaW7DpHJ2ZXJ6ZWljaG5pcyAlcyBuaWNodCBnZWZ1bmRlbiIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoxNzcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiT3ZlcnJpZGUgZmlsZSAlcyBub3QgZm91bmQiCittc2dzdHIgIk92ZXJyaWRlLURhdGVpICVzIG5pY2h0IGdlZnVuZGVuIgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOjE4MworIywgcGVybC1mb3JtYXQKK21zZ2lkICJDb3VsZG4ndCBvcGVuICVzIGZvciByZWFkaW5nIgorbXNnc3RyICIlcyBrb25udGUgbmljaHQgenVtIExlc2VuIGdlw7ZmZm5ldCB3ZXJkZW4iCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6MTkzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNvdWxkbid0IHBhcnNlIGNvbnRyb2wgaW5mb3JtYXRpb24gZnJvbSAlcy4iCittc2dzdHIgIlN0ZXVlcmluZm9ybWF0aW9uZW4gYXVzICVzIGtvbm50ZW4gbmljaHQgYXVzZ2V3ZXJ0ZXQgd2VyZGVuLiIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoxOTYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiYGRwa2ctZGViIC1JICVzIGNvbnRyb2wnIGV4aXRlZCB3aXRoICVkLCBza2lwcGluZyBwYWNrYWdlIgorbXNnc3RyICLCu2Rwa2ctZGViIC1JICVzIGNvbnRyb2zCqyB3dXJkZSBtaXQgJWQgYmVlbmRldCwgUGFrZXQgd2lyZCDDvGJlcnNwcnVuZ2VuIgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOjIwMgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJObyBQYWNrYWdlIGZpZWxkIGluIGNvbnRyb2wgZmlsZSBvZiAlcyIKK21zZ3N0ciAiS2VpbiDCu1BhY2thZ2XCqy1GZWxkIGluIFN0ZXVlcmRhdGVpIHZvbiAlcyIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoyMTAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiUGFja2FnZSAlcyAoZmlsZW5hbWUgJXMpIGlzIHJlcGVhdCBidXQgbmV3ZXIgdmVyc2lvbjsiCittc2dzdHIgIlBha2V0ICVzIChEYXRlaW5hbWUgJXMpIGlzdCB3aWVkZXJob2x0LCBhYmVyIG5ldWVyZSBWZXJzaW9uOyIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoyMTIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidXNlZCB0aGF0IG9uZSBhbmQgaWdub3JlZCBkYXRhIGZyb20gJXMhIgorbXNnc3RyICJkaWVzZXMgd3VyZGUgdmVyd2VuZGV0LCBEYXRlbiBhdXMgJXMgd3VyZGVuIGlnbm9yaWVydCEiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6MjE2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgJXMgKGZpbGVuYW1lICVzKSBpcyByZXBlYXQ7IgorbXNnc3RyICJQYWtldCAlcyAoRGF0ZWluYW1lICVzKSBpc3Qgd2llZGVyaG9sdDsiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6MjE3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImlnbm9yZWQgdGhhdCBvbmUgYW5kIHVzaW5nIGRhdGEgZnJvbSAlcyEiCittc2dzdHIgImRpZXNlcyB3dXJkZSBpZ25vcmllcnQsIERhdGVuIGF1cyAlcyB3ZXJkZW4gdmVyd2VuZGV0ISIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoyMjMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiUGFja2FnZSAlcyAoZmlsZW5hbWUgJXMpIGhhcyBGaWxlbmFtZSBmaWVsZCEiCittc2dzdHIgIlBha2V0ICVzIChEYXRlaW5hbWUgJXMpIGhhdCBGZWxkIEZpbGVuYW1lISIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoyNTUKK21zZ2lkICJGYWlsZWQgd2hlbiB3cml0aW5nIHN0ZG91dCIKK21zZ3N0ciAiRmVobGVyIGJlaW0gU2NocmVpYmVuIG5hY2ggU3Rkb3V0IgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOjI1OQorbXNnaWQgIkNvdWxkbid0IGNsb3NlIHN0ZG91dCIKK21zZ3N0ciAiU3Rkb3V0IGtvbm50ZSBuaWNodCBnZXNjaGxvc3NlbiB3ZXJkZW4iCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6MjYyCittc2dpZCAiUGFja2FnZXMgaW4gb3ZlcnJpZGUgZmlsZSB3aXRoIGluY29ycmVjdCBvbGQgbWFpbnRhaW5lciB2YWx1ZToiCittc2dzdHIgIlBha2V0ZSBpbiBPdmVycmlkZS1EYXRlaSBtaXQgdW5nw7xsdGlnZW0gYWx0ZW4gQmV0cmV1ZXItV2VydDoiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6MjY2Cittc2dpZCAiUGFja2FnZXMgc3BlY2lmeWluZyBzYW1lIG1haW50YWluZXIgYXMgb3ZlcnJpZGUgZmlsZToiCittc2dzdHIgIlBha2V0ZSwgZGllIGRpZSBnbGVpY2hlbiBCZXRyZXVlciB3aWUgZGllIE92ZXJyaWRlLURhdGVpIGFuZ2ViZW46IgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOjI3MAorbXNnaWQgIlBhY2thZ2VzIGluIGFyY2hpdmUgYnV0IG1pc3NpbmcgZnJvbSBvdmVycmlkZSBmaWxlOiIKK21zZ3N0ciAiUGFrZXRlIGltIEFyY2hpdiwgZGllIGFiZXIgaW4gT3ZlcnJpZGUtRGF0ZWkgZmVobGVuOiIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoyNzQKK21zZ2lkICJQYWNrYWdlcyBpbiBvdmVycmlkZSBmaWxlIGJ1dCBub3QgaW4gYXJjaGl2ZToiCittc2dzdHIgIlBha2V0ZSBpbiBPdmVycmlkZS1EYXRlaSwgYWJlciBuaWNodCBpbSBBcmNoaXY6IgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOjI3OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJXcm90ZSAlcyBlbnRyaWVzIHRvIG91dHB1dCBQYWNrYWdlcyBmaWxlLiIKK21zZ3N0ciAiJXMgRWludHLDpGdlIHd1cmRlbiBpbiBBdXNnYWJlLVBha2V0ZGF0ZWkgZ2VzY2hyaWViZW4uIgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnNvdXJjZXMucGw6ODQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSA8YmluYXJ5cGF0aD4gWzxvdmVycmlkZWZpbGU+IFs8cGF0aHByZWZpeD5dXSA+ICIKKyJTb3VyY2VzXG4iCisiXG4iCisiT3B0aW9uczpcbiIKKyIgIC1uLCAtLW5vLXNvcnQgICAgICAgICAgICBkb24ndCBzb3J0IGJ5IHBhY2thZ2UgYmVmb3JlIG91dHB1dHRpbmcuXG4iCisiICAtZSwgLS1leHRyYS1vdmVycmlkZSA8ZmlsZT5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2UgZXh0cmEgb3ZlcnJpZGUgZmlsZS5cbiIKKyIgIC1zLCAtLXNvdXJjZS1vdmVycmlkZSA8ZmlsZT5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2UgZmlsZSBmb3IgYWRkaXRpb25hbCBzb3VyY2Ugb3ZlcnJpZGVzLCAiCisiZGVmYXVsdFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzIHJlZ3VsYXIgb3ZlcnJpZGUgZmlsZSB3aXRoIC5zcmMgYXBwZW5kZWQuXG4iCisiICAgICAgLS1kZWJ1ZyAgICAgICAgICAgICAgdHVybiBkZWJ1Z2dpbmcgb24uXG4iCisiICAgICAgLS1oZWxwICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgICAgICAtLXZlcnNpb24gICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorIlNlZSB0aGUgbWFuIHBhZ2UgZm9yIHRoZSBmdWxsIGRvY3VtZW50YXRpb24uXG4iCittc2dzdHIgIiIKKyJBdWZydWY6ICVzIFs8T3B0aW9uPiAuLi5dIDxCaW7DpHJwZmFkPiBbPE92ZXJyaWRlLURhdGU+IFs8UGZhZHByw6RmaXg+XV0gPiAiCisiUXVlbGxlblxuIgorIlxuIgorIk9wdGlvbmVuOlxuIgorIiAgLW4sIC0tbm8tc29ydCAgICAgICAgICAgIHZvciBBdXNnYWJlIG5pY2h0IG5hY2ggUGFrZXRlbiBzb3J0aWVyZW4uXG4iCisiICAtZSwgLS1leHRyYS1vdmVycmlkZSA8RGF0ZWk+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgenVzw6R0emxpY2hlIE92ZXJyaWRlLURhdGVpIHZlcndlbmRlbi5cbiIKKyIgIC1zLCAtLXNvdXJjZS1vdmVycmlkZSA8RGF0ZWk+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgRGF0ZWkgZsO8ciB6dXPDpHR6bGljaGUgUXVlbGwtT3ZlcnJpZGVzIHZlcndlbmRlbixcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGFuZGFyZG3DpMOfaWcgd2lyZCBhbiBlaW5lIHJlZ3Vsw6RyZSBPdmVycmlkZS0iCisiRGF0ZWlcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICDCuy5zcmPCqyBhbmdlaMOkbmd0LlxuIgorIiAgICAgIC0tZGVidWcgICAgICAgICAgICAgIERlYnVnZ2luZyBlaW5zY2hhbHRlbi5cbiIKKyIgICAgICAtLWhlbHAgICAgICAgICAgICAgICBkaWVzZSBIaWxmZW1lbGR1bmcgYW56ZWlnZW4uXG4iCisiICAgICAgLS12ZXJzaW9uICAgICAgICAgICAgZGllIFZlcnNpb24gYW56ZWlnZW4uXG4iCisiXG4iCisiTGVzZW4gU2llIGRpZSBIYW5kYnVjaHNlaXRlIGbDvHIgZGllIGtvbXBsZXR0ZSBEb2t1bWVudGF0aW9uLlxuIgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnNvdXJjZXMucGw6MTA1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgJXMgKCQ/ICVkLCAkISBgJXMnKSIKK21zZ3N0ciAiRmVobGVyIGJlaW0gU2NobGllw59lbiB2b24gJXMgKCQ/ICVkLCAkISDCuyVzwqspIgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnNvdXJjZXMucGw6MTIxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImludmFsaWQgb3ZlcnJpZGUgZW50cnkgYXQgbGluZSAlZCAoJWQgZmllbGRzKSIKK21zZ3N0ciAidW5nw7xsdGlnZXIgT3ZlcnJpZGUtRWludHJhZyBpbiBaZWlsZSAlZCAoJWQgRmVsZGVyKSIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5zb3VyY2VzLnBsOjEyNworIywgcGVybC1mb3JtYXQKK21zZ2lkICJpZ25vcmluZyBkdXBsaWNhdGUgb3ZlcnJpZGUgZW50cnkgZm9yICVzIGF0IGxpbmUgJWQiCittc2dzdHIgImRvcHBlbHRlIE92ZXJyaWRlLUVpbnRyw6RnZSBmw7xyICVzIGluIFplaWxlICVkIHdlcmRlbiBpZ25vcmllcnQiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2Fuc291cmNlcy5wbDoxMzIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiaWdub3Jpbmcgb3ZlcnJpZGUgZW50cnkgZm9yICVzLCBpbnZhbGlkIHByaW9yaXR5ICVzIgorbXNnc3RyICJPdmVycmlkZS1FaW50cmFnIGbDvHIgJXMgd2lyZCBpZ25vcmllcnQsIHVuZ8O8bHRpZ2UgUHJpb3JpdMOkdCAlcyIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5zb3VyY2VzLnBsOjE4NgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHNvdXJjZSBvdmVycmlkZSBlbnRyeSBhdCBsaW5lICVkICglZCBmaWVsZHMpIgorbXNnc3RyICJ1bmfDvGx0aWdlciBRdWVsbC1PdmVycmlkZS1FaW50cmFnIGluIFplaWxlICVkICglZCBGZWxkZXIpIgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnNvdXJjZXMucGw6MTk0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nIGR1cGxpY2F0ZSBzb3VyY2Ugb3ZlcnJpZGUgZW50cnkgZm9yICVzIGF0IGxpbmUgJWQiCittc2dzdHIgImRvcHBlbHRlIFF1ZWxsLU92ZXJyaWRlLUVpbnRyw6RnZSBmw7xyICVzIGluIFplaWxlICVkIHdlcmRlbiBpZ25vcmllcnQiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2Fuc291cmNlcy5wbDoyNDQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibm8gYmluYXJ5IHBhY2thZ2VzIHNwZWNpZmllZCBpbiAlcyIKK21zZ3N0ciAia2VpbmUgQmluw6RycGFrZXRlIGluICVzIGFuZ2VnZWJlbiIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo5MworIywgcGVybC1mb3JtYXQKK21zZ2lkICJhZG1pbmlzdHJhdGl2ZSBkaXJlY3RvcnkgJyVzJyBkb2VzIG5vdCBleGlzdCIKK21zZ3N0ciAiYWRtaW5pc3RyYXRpdmVzIFZlcnplaWNobmlzIMK7JXPCqyBleGlzdGllcnQgbmljaHQiCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6OTgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5yZWNvZ25pc2VkIGRlcGVuZGVuY3kgZmllbGQgYCVzJyIKK21zZ3N0ciAiQWJow6RuZ2lna2VpdHNmZWxkIMK7JXPCqyBuaWNodCBlcmthbm50IgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjEzMgorbXNnaWQgIm5lZWQgYXQgbGVhc3Qgb25lIGV4ZWN1dGFibGUiCittc2dzdHIgIm1pbmRlc3RlbnMgZWluIGF1c2bDvGhyYmFyZXMgUHJvZ3JhbW0gd2lyZCBiZW7DtnRpZ3QiCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6MTc1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNvdWxkbid0IGZpbmQgbGlicmFyeSAlcyBuZWVkZWQgYnkgJXMgKEVMRiBmb3JtYXQ6ICclcyc7IFJQQVRIOiAnJXMnKS4iCittc2dzdHIgIiIKKyJCaWJsaW90aGVrICVzIGtvbm50ZSBuaWNodCBnZWZ1bmRlbiB3ZXJkZW4sIGJlbsO2dGlndCB2b24gJXMgKEVMRi1Gb3JtYXQ6ICIKKyLCuyVzwqs7IFJQQVRIOiDCuyVzwqspLiIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDoyNjIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgaGFzIGFuIHVuZXhwZWN0ZWQgU09OQU1FICglcykiCittc2dzdHIgIiVzIGhhdCBlaW5lbiB1bmVyd2FydGV0ZW4gU09OQU1FICglcykiCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6MjgzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIm5vIGRlcGVuZGVuY3kgaW5mb3JtYXRpb24gZm91bmQgZm9yICVzICh1c2VkIGJ5ICVzKS4iCittc2dzdHIgIktlaW5lIEFiaMOkbmdpZ2tlaXRzaW5mb3JtYXRpb25lbiBmw7xyICVzICh2ZXJ3ZW5kZXQgdm9uICVzKSBnZWZ1bmRlbi4iCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6MzE0Cittc2dpZCAiIgorImJpbmFyaWVzIHRvIGFuYWx5emUgc2hvdWxkIGFscmVhZHkgYmUgaW5zdGFsbGVkIGluIHRoZWlyIHBhY2thZ2UncyBkaXJlY3RvcnkuIgorbXNnc3RyICIiCisiWnUgYW5hbHlzaWVyZW5kZSBQcm9ncmFtbWUgc29sbHRlbiBiZXJlaXRzIGluIGlocmVtIFBha2V0dmVyemVpY2huaXMgIgorImluc3RhbGxpZXJ0IHNlaW4uIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjM1NworIywgcGVybC1mb3JtYXQKK21zZ2lkICJzeW1ib2wgJXMgdXNlZCBieSAlcyBmb3VuZCBpbiBub25lIG9mIHRoZSBsaWJyYXJpZXMuIgorbXNnc3RyICJTeW1ib2wgJXMsIHZlcndlbmRldCB2b24gJXMsIGluIGtlaW5lciBkZXIgQmlibGlvdGhla2VuIGdlZnVuZGVuLiIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDozNjAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIiVzIGNvbnRhaW5zIGFuIHVucmVzb2x2YWJsZSByZWZlcmVuY2UgdG8gc3ltYm9sICVzOiBpdCdzIHByb2JhYmx5IGEgcGx1Z2luLiIKK21zZ3N0ciAiIgorIiVzIGVudGjDpGx0IGVpbmUgbmljaHQgYXVmbMO2c2JhcmUgUmVmZXJlbnogYXVmIFN5bWJvbCAlczogd2FocnNjaGVpbmxpY2ggZWluZSAiCisiRXJ3ZWl0ZXJ1bmcuIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjM4MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlZCBzaW1pbGFyIHdhcm5pbmcgaGFzIGJlZW4gc2tpcHBlZCAodXNlIC12IHRvIHNlZSBpdCkuIgorbXNnaWRfcGx1cmFsICIiCisiJWQgb3RoZXIgc2ltaWxhciB3YXJuaW5ncyBoYXZlIGJlZW4gc2tpcHBlZCAodXNlIC12IHRvIHNlZSB0aGVtIGFsbCkuIgorbXNnc3RyWzBdICIiCisiJWQgYW5kZXJlLCDDpGhubGljaGUgV2FybnVuZyB3dXJkZSDDvGJlcnNwcnVuZ2VuICh2ZXJ3ZW5kZW4gU2llIC12LCB1bSBzaWUgenUgIgorInNlaGVuKS4iCittc2dzdHJbMV0gIiIKKyIlZCBhbmRlcmUsIMOkaG5saWNoZSBXYXJudW5nZW4gd3VyZGVuIMO8YmVyc3BydW5nZW4gKHZlcndlbmRlbiBTaWUgLXYsIHVtIGFsbGUgIgorInp1IHNlaGVuKS4iCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6NDA5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIHNob3VsZG4ndCBiZSBsaW5rZWQgd2l0aCAlcyAoaXQgdXNlcyBub25lIG9mIGl0cyBzeW1ib2xzKS4iCittc2dzdHIgIiIKKyIlcyBzb2xsdGUgbmljaHQgZ2VnZW4gJXMgZ2VsaW5rdCB3ZXJkZW4gKGVzIHZlcndlbmRldCBrZWluZXMgaWhyZXIgU3ltYm9sZSkuIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjQyMgorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiZGVwZW5kZW5jeSBvbiAlcyBjb3VsZCBiZSBhdm9pZGVkIGlmIFwiJXNcIiB3ZXJlIG5vdCB1c2VsZXNzbHkgbGlua2VkICIKKyJhZ2FpbnN0IGl0ICh0aGV5IHVzZSBub25lIG9mIGl0cyBzeW1ib2xzKS4iCittc2dzdHIgIiIKKyJBYmjDpG5naWdrZWl0IHZvbiAlcyBrw7ZubnRlIHZlcm1pZWRlbiB3ZXJkZW4sIGZhbGxzIMK7JXPCqyBuaWNodCB1bm7DtnRpZ2Vyd2Vpc2UgIgorImRhZ2VnZW4gZ2VsaW5rdCB3w6RyZSAoZXMgdmVyd2VuZGV0IGtlaW5lcyBpaHJlciBTeW1ib2xlKS4iCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6NDMxCittc2dpZCAiIgorIk5vdGU6IGxpYnJhcmllcyBhcmUgbm90IHNlYXJjaGVkIGluIG90aGVyIGJpbmFyeSBwYWNrYWdlcyB0aGF0IGRvIG5vdCBoYXZlICIKKyJhbnkgc2hsaWJzIG9yIHN5bWJvbHMgZmlsZS5cbiIKKyJUbyBoZWxwIGRwa2ctc2hsaWJkZXBzIGZpbmQgcHJpdmF0ZSBsaWJyYXJpZXMsIHlvdSBtaWdodCBuZWVkIHRvIHNldCAiCisiTERfTElCUkFSWV9QQVRILiIKK21zZ3N0ciAiIgorIkhpbndlaXM6IEJpYmxpb3RoZWtlbiB3ZXJkZW4gbmljaHQgaW4gYW5kZXJlbiBCaW7DpHJwYWtldGVuLCBkaWUga2VpbmUgU2hsaWJzLSIKKyJvZGVyIFN5bWJvbGRhdGVpIGhhYmVuLCBnZXN1Y2h0LlxuIgorIlVtIGRwa2ctc2hsaWJkZXBzIGRhYmVpIHp1IGhlbGZlbiwgcHJpdmF0ZSBCaWJsaW90aGVrZW4genUgZmluZGVuLCBrw7ZubnRlIGVzICIKKyJub3R3ZW5kaWcgc2VpbiwgTERfTElCUkFSWV9QQVRIIHp1IHNldHplbi4iCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6NDM0Cittc2dpZCAiQ2Fubm90IGNvbnRpbnVlIGR1ZSB0byB0aGUgZXJyb3IgYWJvdmUuIgorbXNnaWRfcGx1cmFsICJDYW5ub3QgY29udGludWUgZHVlIHRvIHRoZSBlcnJvcnMgbGlzdGVkIGFib3ZlLiIKK21zZ3N0clswXSAiS2FubiB3ZWdlbiBkZXMgdm9yYW5nZWdhbmdlbmVuIEZlaGxlcnMgbmljaHQgZm9ydGZhaHJlbi4iCittc2dzdHJbMV0gIkthbm4gd2VnZW4gZGVyIHZvcmFuZ2VnYW5nZW5lbiBGZWhsZXIgbmljaHQgZm9ydGZhaHJlbi4iCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6NDQ1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIm9wZW4gbmV3IHN1YnN0dmFycyBmaWxlIGAlcyciCittc2dzdHIgIm5ldWUgU3Vic3R2YXJzLURhdGVpIMK7JXPCqyDDtmZmbmVuIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjQ0OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJvcGVuIG9sZCB2YXJsaXN0IGZpbGUgYCVzJyBmb3IgcmVhZGluZyIKK21zZ3N0ciAiYWx0ZSBWYXJsaXN0LURhdGVpIMK7JXPCqyB6dW0gTGVzZW4gw7ZmZm5lbiIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo0NTEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY29weSBvbGQgZW50cnkgdG8gbmV3IHZhcmxpc3QgZmlsZSBgJXMnIgorbXNnc3RyICJhbHRlIEVpbnRyw6RnZSBpbiBkaWUgbmV1ZSBWYXJsaXN0LURhdGVpIMK7JXPCqyBrb3BpZXJlbiIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo1MTUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBkZXBlbmRlbmN5IGdvdCBnZW5lcmF0ZWQ6ICVzIgorbXNnc3RyICJ1bmfDvGx0aWdlIEFiaMOkbmdpZ2tlaXQgd3VyZGUgZXJzdGVsbHQ6ICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjUyNQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJpbnN0YWxsIG5ldyB2YXJsaXN0IGZpbGUgYCVzJyIKK21zZ3N0ciAibmV1ZSBWYXJsaXN0LURhdGVpIMK7JXPCqyBpbnN0YWxsaWVyZW4iCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6NTM1Cittc2dpZCAiIgorIlxuIgorIkNvcHlyaWdodCAoQykgMTk5NiBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDYgRnJhbmsgTGljaHRlbmhlbGQuXG4iCisiQ29weXJpZ2h0IChDKSAyMDA3IFJhcGhhZWwgSGVydHpvZy5cbiIKK21zZ3N0ciAiIgorIlxuIgorIkNvcHlyaWdodCAoQykgMTk5NiBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDYgRnJhbmsgTGljaHRlbmhlbGQuXG4iCisiQ29weXJpZ2h0IChDKSAyMDA3IFJhcGhhZWwgSGVydHpvZy5cbiIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo1NTAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSA8ZXhlY3V0YWJsZT58LWU8ZXhlY3V0YWJsZT4gWzxvcHRpb24+IC4uLl1cbiIKKyJcbiIKKyJQb3NpdGlvbmFsIG9wdGlvbnMgKG9yZGVyIGlzIHNpZ25pZmljYW50KTpcbiIKKyIgIDxleGVjdXRhYmxlPiAgICAgICAgICAgICBpbmNsdWRlIGRlcGVuZGVuY2llcyBmb3IgPGV4ZWN1dGFibGU+LFxuIgorIiAgLWU8ZXhlY3V0YWJsZT4gICAgICAgICAgICh1c2UgLWUgaWYgPGV4ZWN1dGFibGU+IHN0YXJ0cyB3aXRoIGAtJylcbiIKKyIgIC1kPGRlcGVuZGVuY3lmaWVsZD4gICAgICBuZXh0IGV4ZWN1dGFibGUocykgc2V0IHNobGliczo8ZGVwZW5kZW5jeWZpZWxkPi5cbiIKKyJcbiIKKyJPcHRpb25zOlxuIgorIiAgLXA8dmFybmFtZXByZWZpeD4gICAgICAgIHNldCA8dmFybmFtZXByZWZpeD46KiBpbnN0ZWFkIG9mIHNobGliczoqLlxuIgorIiAgLU8gICAgICAgICAgICAgICAgICAgICAgIHByaW50IHZhcmlhYmxlIHNldHRpbmdzIHRvIHN0ZG91dC5cbiIKKyIgIC1MPGxvY2Fsc2hsaWJzZmlsZT4gICAgICBzaGxpYnMgb3ZlcnJpZGUgZmlsZSwgbm90IGRlYmlhbi9zaGxpYnMubG9jYWwuXG4iCisiICAtVDx2YXJsaXN0ZmlsZT4gICAgICAgICAgdXBkYXRlIHZhcmlhYmxlcyBoZXJlLCBub3QgZGViaWFuL3N1YnN0dmFycy5cbiIKKyIgIC10PHR5cGU+ICAgICAgICAgICAgICAgICBzZXQgcGFja2FnZSB0eXBlIChkZWZhdWx0IGlzIGRlYikuXG4iCisiICAteDxwYWNrYWdlPiAgICAgICAgICAgICAgZXhjbHVkZSBwYWNrYWdlIGZyb20gdGhlIGdlbmVyYXRlZCBkZXBlbmRlbmNpZXMuXG4iCisiICAtUzxwa2didWlsZGRpcj4gICAgICAgICAgc2VhcmNoIG5lZWRlZCBsaWJyYXJpZXMgaW4gdGhlIGdpdmVuXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFja2FnZSBidWlsZCBkaXJlY3RvcnkgZmlyc3QuXG4iCisiICAtdiAgICAgICAgICAgICAgICAgICAgICAgZW5hYmxlIHZlcmJvc2UgbW9kZSAoY2FuIGJlIHVzZWQgbXVsdGlwbGUgIgorInRpbWVzKS5cbiIKKyIgIC0taWdub3JlLW1pc3NpbmctaW5mbyAgICBkb24ndCBmYWlsIGlmIGRlcGVuZGVuY3kgaW5mb3JtYXRpb24gY2FuJ3QgYmUgIgorImZvdW5kLlxuIgorIiAgLS13YXJuaW5ncz08dmFsdWU+ICAgICAgIGRlZmluZSBzZXQgb2YgYWN0aXZlIHdhcm5pbmdzIChzZWUgbWFudWFsIHBhZ2UpLlxuIgorIiAgLS1hZG1pbmRpcj08ZGlyZWN0b3J5PiAgIGNoYW5nZSB0aGUgYWRtaW5pc3RyYXRpdmUgZGlyZWN0b3J5LlxuIgorIiAgLWgsIC0taGVscCAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAgICAgLS12ZXJzaW9uICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKKyJEZXBlbmRlbmN5IGZpZWxkcyByZWNvZ25pc2VkIGFyZTpcbiIKKyIgICVzXG4iCittc2dzdHIgIiIKKyJBdWZydWY6ICVzIFs8T3B0aW9uPiAuLi5dIDxQcm9ncmFtbT58LWU8UHJvZ3JhbW0+IFs8T3B0aW9uPiAuLi5dXG4iCisiXG4iCisiUG9zaXRpb25zb3B0aW9uZW4gKFJlaWhlbmZvbGdlIGlzdCByZWxldmFudCk6XG4iCisiICA8UHJvZ3JhbW0+ICAgICAgICAgICAgICAgQWJow6RuZ2lna2VpdGVuIGbDvHIgPFByb2dyYW1tPiBoaW56dW5laG1lbixcbiIKKyIgIC1lPFByb2dyYW1tPiAgICAgICAgICAgICAoLWUgdmVyd2VuZGVuLCBmYWxscyA8UHJvZ3JhbW0+IG1pdCDCuy3CqyBiZWdpbm50KVxuIgorIiAgLWQ8QWJow6RuZ2lna2VpdHNmZWxkPiAgICBuw6RjaHN0ZShzKSBQcm9ncmFtbShlKSBzZXR6dC9zZXR6ZW5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBzaGxpYnM6PEFiw6RuZ2lna2VpdHNmZWxkPi5cbiIKKyJcbiIKKyJPcHRpb25lbjpcbiIKKyIgIC1wPFZhcm5hbWVwcsOkZml4PiAgICAgICAgPFZhcm5hbWVwcsOkZml4PjoqIHNldHplbiBzdGF0dCBzaGxpYnM6Ki5cbiIKKyIgIC1PICAgICAgICAgICAgICAgICAgICAgICBWYXJpYWJsZW5laW5zdGVsbHVuZ2VuIG5hY2ggU3Rkb3V0IGF1c2dlYmVuLlxuIgorIiAgLUw8bG9rYWxlc2hsaWJzZGF0ZWk+ICAgIHNobGlicy3DnGJlcnNjaHJlaWJlLURhdGVpLCBuaWNodFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlYmlhbi9zaGxpYnMubG9jYWwuXG4iCisiICAtVDx2YXJsaXN0ZGF0ZWk+ICAgICAgICAgVmFyaWFibGVuIGhpZXIgYWt0dWFsaXNpZXJlbiwgbmljaHQgaW5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWJpYW4vc3Vic3R2YXJzLlxuIgorIiAgLXQ8VHlwPiAgICAgICAgICAgICAgICAgIFBha2V0dHlwIHNldHplbiAoc3RhbmRhcmRtw6TDn2lnIGRlYikuXG4iCisiICAteDxQYWtldD4gICAgICAgICAgICAgICAgUGFrZXQgdm9uIGRlbiBlcnN0ZWxsdGVuIEFiaMOkbmdpZ2tlaXRlblxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGF1c3NjaGxpZcOfZW4uXG4iCisiICAtUzxQYWtldEJhdVZlcno+ICAgICAgICAgYmVuw7Z0aWd0ZSBCaWJsaW90aGVrZW4genVlcnN0IGltIMO8YmVyZ2ViZW5lblxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIFBha2V0YmF1dmVyemVpY2huaXMgc3VjaGVuLlxuIgorIiAgLXYgICAgICAgICAgICAgICAgICAgICAgIGdlc2Nod8OkdHppZ2VuIE1vZHVzIGFrdGl2aWVyZW4gKGthbm4gbWVocmZhY2hcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICB2ZXJ3YW5kdCB3ZXJkZW4pLlxuIgorIiAgLS1pZ25vcmUtbWlzc2luZy1pbmZvICAgIGtlaW4gRmVobHNjaGxhZywgZmFsbHMgZGllICIKKyJBYmjDpG5naWdrZWl0c2luZm9ybWF0aW9uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgbmljaHQgZ2VmdW5kZW4gd2VyZGVuIGthbm4uXG4iCisiICAtLXdhcm5pbmdzPTxXZXJ0PiAgICAgICAgU2F0eiB2b24gYWt0aXZlbiBXYXJudW5nZW4gZGVmaW5pZXJlbiAoc2llaGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBIYW5kYnVjaHNlaXRlKS5cbiIKKyItLWFkbWluZGlyPTxWZXJ6ZWljaG5pcz4gICBkYXMgYWRtaW5pc3RyYXRpdmUgVmVyemVpY2huaXMgw6RuZGVybi5cbiIKKyItaCwgLS1oZWxwICAgICAgICAgICAgICAgICBkaWVzZSBIaWxmZW1lbGR1bmcgYW56ZWlnZW4uXG4iCisiICAgIC0tdmVyc2lvbiAgICAgICAgICAgICAgZGllIFZlcnNpb24gYW56ZWlnZW4uXG4iCisiXG4iCisiVW50ZXJzdMO8dHp0ZSBBYmjDpG5naWdrZWl0c2ZlbGRlciBzaW5kOlxuIgorIiAgJXNcbiIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo2NzcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiQ2FuJ3QgZXh0cmFjdCBuYW1lIGFuZCB2ZXJzaW9uIGZyb20gbGlicmFyeSBuYW1lIGAlcyciCittc2dzdHIgIiIKKyJOYW1lIHVuZCBWZXJzaW9uIGvDtm5uZW4gbmljaHQgYXVzIEJpYmxpb3RoZWtzbmFtZW4gwrslc8KrIGVudG5vbW1lbiB3ZXJkZW4iCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6Njg0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIHNoYXJlZCBsaWJzIGluZm8gZmlsZSBgJXMnIgorbXNnc3RyICIiCisiSW5mb3JtYXRpb25zZGF0ZWkgZsO8ciBMYXVmemVpdGJpYmxpb3RoZWsgwrslc8KrIGthbm4gbmljaHQgZ2XDtmZmbmV0IHdlcmRlbiIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo2OTAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAic2hhcmVkIGxpYnMgaW5mbyBmaWxlIGAlcycgbGluZSAlZDogYmFkIGxpbmUgYCVzJyIKK21zZ3N0ciAiIgorIkluZm9ybWF0aW9uc2RhdGVpIMK7JXPCqyBkZXIgTGF1ZnplaXRiaWJsaW90aGVrLCBaZWlsZSAlZDogdW5nw7xsdGlnZSBaZWlsZSDCuyVzwqsiCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6NzQ5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCBvcGVuIGZpbGUgJXMiCittc2dzdHIgIkRhdGVpICVzIGthbm4gbmljaHQgZ2XDtmZmbmV0IHdlcmRlbiIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo3ODMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIiRPUklHSU4gaXMgdXNlZCBpbiBSUEFUSCBvZiAlcyBhbmQgdGhlIGNvcnJlc3BvbmRpbmcgZGlyZWN0b3J5IGNvdWxkIG5vdCBiZSAiCisiaWRlbnRpZmllZCBkdWUgdG8gbGFjayBvZiBERUJJQU4gc3ViLWRpcmVjdG9yeSBpbiB0aGUgcm9vdCBvZiBwYWNrYWdlJ3MgIgorImJ1aWxkIHRyZWUiCittc2dzdHIgIiIKKyIkT1JJR0lOIHdpcmQgaW4gUlBBVEggdm9uICVzIHZlcndlbmRldCB1bmQgZGFzIHp1Z2Vow7ZyaWdlIFZlcnplaWNobmlzIGtvbm50ZSAiCisibmljaHQgaWRlbnRpZml6aWVydCB3ZXJkZW4sIGRhIGRhcyBERUJJQU4tVW50ZXJ2ZXJ6ZWljaG5pcyBpbiBkZXIgV3VyemVsIGRlcyAiCisiUGFrZXRiYXViYXVtcyBmZWhsdC4iCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6ODQ4Cittc2dpZCAiZGl2ZXJzaW9ucyBpbnZvbHZlZCAtIG91dHB1dCBtYXkgYmUgaW5jb3JyZWN0IgorbXNnc3RyICJVbWxlaXR1bmdlbiBiZXRlaWxpZ3QgLSBBdXNnYWJlIGvDtm5udGUgbmljaHQga29ycmVrdCBzZWluIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjg1MAorbXNnaWQgIndyaXRlIGRpdmVyc2lvbiBpbmZvIHRvIHN0ZGVyciIKK21zZ3N0ciAiU2NocmVpYmVuIGRlciBJbmZvcm1hdGlvbmVuIHp1IFVtbGVpdHVuZ2VuIGF1ZiBTdGRlcnIiCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6ODU0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVua25vd24gb3V0cHV0IGZyb20gZHBrZyAtLXNlYXJjaDogJyVzJyIKK21zZ3N0ciAidW5iZWthbm50ZSBBdXNnYWJlIHZvbiDCu2Rwa2cgLS1zZWFyY2jCqzogwrslc8KrIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjEwNAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBuZWVkcyBhIGRpcmVjdG9yeSIKK21zZ3N0ciAiJXMgYmVuw7Z0aWd0IGVpbiBWZXJ6ZWljaG5pcyIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDoxMTAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IHN0YXQgZGlyZWN0b3J5ICVzIgorbXNnc3RyICJWZXJ6ZWljaG5pcyAlcyBrYW5uIG5pY2h0IG1pdCBzdGF0IGFiZ2VmcmFndCB3ZXJkZW4iCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6MTEyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImRpcmVjdG9yeSBhcmd1bWVudCAlcyBpcyBub3QgYSBkaXJlY3RvcnkiCittc2dzdHIgIlZlcnplaWNobmlzLUFyZ3VtZW50ICVzIGlzdCBrZWluIFZlcnplaWNobmlzIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjExNyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NDc2CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NDc4IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo0ODAKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo0ODIKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9ienIucG06MTExCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvYnpyLnBtOjEzNAorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2J6ci5wbToxOTgKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9ienIucG06MjA0CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvZ2l0LnBtOjEwNAorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2dpdC5wbToxNDMKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9naXQucG06MTU1CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvZ2l0LnBtOjE3NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hkaXIgdG8gYCVzJyIKK21zZ3N0ciAiV2VjaHNlbCBpbiBWZXJ6ZWljaG5pcyDCuyVzwqsgbmljaHQgbcO2Z2xpY2giCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6MTM1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVzaW5nIG9wdGlvbnMgZnJvbSAlczogJXMiCittc2dzdHIgIk9wdGlvbmVuIGF1cyAlcyB3ZXJkZW4gdmVyd2VuZGV0OiAlcyIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDoxNTAgc2NyaXB0cy9EcGtnL0NvbXByZXNzaW9uLnBtOjE3MworIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgYSBzdXBwb3J0ZWQgY29tcHJlc3Npb24iCittc2dzdHIgIiVzIGlzdCBrZWluZSB1bnRlcnN0w7x0enRlIEtvbXByZXNzaW9uIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjE1NiBzY3JpcHRzL0Rwa2cvQ29tcHJlc3Npb24ucG06MjAyCisjOiBzY3JpcHRzL0Rwa2cvQ29tcHJlc3Npb24vUHJvY2Vzcy5wbTo4NgorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgYSBjb21wcmVzc2lvbiBsZXZlbCIKK21zZ3N0ciAiJXMgaXN0IGtlaW5lIEtvbXByaW1pZXJ1bmdzc3R1ZmUiCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6MjE0Cittc2dpZCAiIgorIm5lZWQgYSBjb21tYW5kICgteCwgLWIsIC0tYmVmb3JlLWJ1aWxkLCAtLWFmdGVyLWJ1aWxkLCAtLXByaW50LWZvcm1hdCwgLS0iCisiY29tbWl0KSIKK21zZ3N0ciAiIgorImVpbiBCZWZlaGwgd2lyZCBiZW7DtnRpZ3QgKC14LCAtYiwgLS1iZWZvcmUtYnVpbGQsIC0tYWZ0ZXItYnVpbGQsIC0tcHJpbnQtIgorImZvcm1hdCwgLS1jb21taXQpIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjIzOAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBkb2Vzbid0IGNvbnRhaW4gYW55IGluZm9ybWF0aW9uIGFib3V0IHRoZSBzb3VyY2UgcGFja2FnZSIKK21zZ3N0ciAiJXMgZW50aMOkbHQga2VpbmUgSW5mb3JtYXRpb25lbiDDvGJlciBkYXMgUXVlbGxwYWtldCIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDoyODMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiYCVzJyBpcyBub3QgYSBsZWdhbCBhcmNoaXRlY3R1cmUgc3RyaW5nIgorbXNnc3RyICLCuyVzwqsgaXN0IGtlaW5lIGfDvGx0aWdlIEFyY2hpdGVrdHVyLVplaWNoZW5rZXR0ZSIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDoyODYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiYXJjaGl0ZWN0dXJlICVzIG9ubHkgYWxsb3dlZCBvbiBpdHMgb3duIChsaXN0IGZvciBwYWNrYWdlICVzIGlzIGAlcycpIgorbXNnc3RyICIiCisiQXJjaGl0ZWt0dXIgJXMgaXN0IG51ciBhbGxlaW5lIGVybGF1YnQgKExpc3RlIGbDvHIgUGFrZXQgJXMgbGF1dGV0IMK7JXPCqykiCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6MzAxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGRvZXNuJ3QgbGlzdCBhbnkgYmluYXJ5IHBhY2thZ2UiCittc2dzdHIgIiVzIGxpc3RldCBrZWluIGJpbsOkcmVzIFBha2V0IGF1ZiIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDozNDMgc2NyaXB0cy9EcGtnL0J1aWxkRmxhZ3MucG06MjcwCisjOiBzY3JpcHRzL0Rwa2cvQ29tcHJlc3Npb24vRmlsZUhhbmRsZS5wbTo0MDEKKyM6IHNjcmlwdHMvRHBrZy9JbnRlcmZhY2UvU3RvcmFibGUucG06ODcgc2NyaXB0cy9EcGtnL1NobGlicy9PYmpkdW1wLnBtOjEyMgorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjI3NyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NDI1CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NTYxCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06MTEyCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06Mjg2CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06MzQ4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZWFkICVzIgorbXNnc3RyICIlcyBrYW5uIG5pY2h0IGdlbGVzZW4gd2VyZGVuIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjM1MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJubyBzb3VyY2UgZm9ybWF0IHNwZWNpZmllZCBpbiAlcywgc2VlIGRwa2ctc291cmNlKDEpIgorbXNnc3RyICJrZWluIFF1ZWxsZm9ybWF0IGluICVzIGFuZ2VnZWJlbiwgbGVzZW4gU2llIGRwa2ctc291cmNlKDEpIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjM3OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW4ndCBidWlsZCB3aXRoIHNvdXJjZSBmb3JtYXQgJyVzJzogJXMiCittc2dzdHIgInVubcO2Z2xpY2gsIG1pdCBRdWVsbGZvcm1hdCDCuyVzwqsgenUgYmF1ZW46ICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjM4MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1c2luZyBzb3VyY2UgZm9ybWF0IGAlcyciCittc2dzdHIgIlF1ZWxsZm9ybWF0IMK7JXPCqyB3aXJkIHZlcndlbmRldCIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDozODggc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjMwMQorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjM0NiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NTQxCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvYnpyLnBtOjE1MgorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL25hdGl2ZS5wbTo4NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJidWlsZGluZyAlcyBpbiAlcyIKK21zZ3N0ciAiJXMgd2lyZCBpbiAlcyBnZWJhdXQiCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6Mzk5Cittc2dpZCAiLXggbmVlZHMgYXQgbGVhc3Qgb25lIGFyZ3VtZW50LCB0aGUgLmRzYyIKK21zZ3N0ciAiLXggYmVuw7Z0aWd0IG1pbmRlc3RlbnMgZWluIEFyZ3VtZW50LCBkaWUgLmRzYyIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDo0MDIKK21zZ2lkICIteCB0YWtlcyBubyBtb3JlIHRoYW4gdHdvIGFyZ3VtZW50cyIKK21zZ3N0ciAiLXggYWt6ZXB0aWVydCBuaWNodCBtZWhyIGFscyB6d2VpIEFyZ3VtZW50ZSIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDo0MDYKK21zZ2lkICIteCBuZWVkcyB0aGUgLmRzYyBmaWxlIGFzIGZpcnN0IGFyZ3VtZW50LCBub3QgYSBkaXJlY3RvcnkiCittc2dzdHIgIi14IGJlbsO2dGlndCBkaWUgLmRzYy1EYXRlaSBhbHMgZXJzdGVzIEFyZ3VtZW50LCBrZWluIFZlcnplaWNobmlzIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjQyMgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bnBhY2sgdGFyZ2V0IGV4aXN0czogJXMiCittc2dzdHIgIkVudHBhY2t6aWVsIGV4aXN0aWVydDogJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6NDMyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGRvZXNuJ3QgY29udGFpbiBhIHZhbGlkIE9wZW5QR1Agc2lnbmF0dXJlIgorbXNnc3RyICIlcyBlbnRow6RsdCBrZWluZSBnw7xsdGlnZSBPcGVuUEdQLVNpZ25hdHVyIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjQzNAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJleHRyYWN0aW5nIHVuc2lnbmVkIHNvdXJjZSBwYWNrYWdlICglcykiCittc2dzdHIgInVuc2lnbmllcnRlcyBRdWVsbHBha2V0IHdpcmQgZXh0cmFoaWVydCAoJXMpIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjQ0MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJleHRyYWN0aW5nICVzIGluICVzIgorbXNnc3RyICIlcyB3aXJkIG5hY2ggJXMgZXh0cmFoaWVydCIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDo0NDkKK21zZ2lkICJvbmx5IG9uZSBvZiAteCwgLWIgb3IgLS1wcmludC1mb3JtYXQgYWxsb3dlZCwgYW5kIG9ubHkgb25jZSIKK21zZ3N0ciAibnVyIGVudHdlZGVyIC14LCAtYiBvZGVyIC0tcHJpbnQtZm9ybWF0IGVybGF1YnQsIHVuZCBudXIgZWlubWFsIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjQ1NworbXNnaWQgIiIKKyJcbiIKKyJDb3B5cmlnaHQgKEMpIDE5OTYgSWFuIEphY2tzb25cbiIKKyJDb3B5cmlnaHQgKEMpIDE5OTcgS2xlZSBEaWVuZXNcbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDggUmFwaGFlbCBIZXJ0em9nIgorbXNnc3RyICIiCisiXG4iCisiQ29weXJpZ2h0IChDKSAxOTk2IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMTk5NyBLbGVlIERpZW5lcy5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDggUmFwaGFlbCBIZXJ0em9nLiIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDo0NzAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSA8Y29tbWFuZD5cbiIKKyJcbiIKKyJDb21tYW5kczpcbiIKKyIgIC14IDxmaWxlbmFtZT4uZHNjIFs8b3V0cHV0LWRpcj5dXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgZXh0cmFjdCBzb3VyY2UgcGFja2FnZS5cbiIKKyIgIC1iIDxkaXI+ICAgICAgICAgICAgICAgICBidWlsZCBzb3VyY2UgcGFja2FnZS5cbiIKKyIgIC0tcHJpbnQtZm9ybWF0IDxkaXI+ICAgICBwcmludCB0aGUgc291cmNlIGZvcm1hdCB0aGF0IHdvdWxkIGJlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlZCB0byBidWlsZCB0aGUgc291cmNlIHBhY2thZ2UuXG4iCisiICAtLWNvbW1pdCBbPGRpcj4gWzxwYXRjaC1uYW1lPl1dXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RvcmUgdXBzdHJlYW0gY2hhbmdlcyBpbiBhIG5ldyBwYXRjaC4iCittc2dzdHIgIiIKKyJBdWZydWY6ICVzIFs8T3B0aW9uPiAuLi5dIDxCZWZlaGw+XG4iCisiXG4iCisiQmVmZWhsZTpcbiIKKyIgIC14IDxEYXRlaW5hbWU+LmRzYyBbPEF1c2dhYmUtVmVyej5dXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgUXVlbGxwYWtldCBleHRyYWhpZXJlbi5cbiIKKyIgIC1iIDxWZXJ6PiAgICAgICAgICAgICAgICBRdWVsbHBha2V0IGJhdWVuLlxuIgorIiAgLS1wcmludC1mb3JtYXQgPFZlcno+ICAgIGRhcyBRdWVsbGZvcm1hdCBhdXNnZWJlbiwgZGFzIHp1bSBCYXUgZGVzXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgUXVlbGxwYWtldHMgdmVyd2FuZHQgd8O8cmRlLlxuIgorIiAgLS1jb21taXQgWzxWZXJ6PiBbPFBhdGNoLU5hbWU+XV1cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICDDhG5kZXJ1bmdlbiBkZXIgT3JpZ2luYWxhdXRvcmVuIGluIGVpbmVtIG5ldWVuXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgUGF0Y2ggc3BlaWNoZXJuLiIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDo0ODEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIkJ1aWxkIG9wdGlvbnM6XG4iCisiICAtYzxjb250cm9sZmlsZT4gICAgICAgICAgZ2V0IGNvbnRyb2wgaW5mbyBmcm9tIHRoaXMgZmlsZS5cbiIKKyIgIC1sPGNoYW5nZWxvZ2ZpbGU+ICAgICAgICBnZXQgcGVyLXZlcnNpb24gaW5mbyBmcm9tIHRoaXMgZmlsZS5cbiIKKyIgIC1GPGNoYW5nZWxvZ2Zvcm1hdD4gICAgICBmb3JjZSBjaGFuZ2UgbG9nIGZvcm1hdC5cbiIKKyIgIC1WPG5hbWU+PTx2YWx1ZT4gICAgICAgICBzZXQgYSBzdWJzdGl0dXRpb24gdmFyaWFibGUuXG4iCisiICAtVDx2YXJsaXN0ZmlsZT4gICAgICAgICAgcmVhZCB2YXJpYWJsZXMgaGVyZS5cbiIKKyIgIC1EPGZpZWxkPj08dmFsdWU+ICAgICAgICBvdmVycmlkZSBvciBhZGQgYSAuZHNjIGZpZWxkIGFuZCB2YWx1ZS5cbiIKKyIgIC1VPGZpZWxkPiAgICAgICAgICAgICAgICByZW1vdmUgYSBmaWVsZC5cbiIKKyIgIC1xICAgICAgICAgICAgICAgICAgICAgICBxdWlldCBtb2RlLlxuIgorIiAgLWlbPHJlZ2V4cD5dICAgICAgICAgICAgIGZpbHRlciBvdXQgZmlsZXMgdG8gaWdub3JlIGRpZmZzIG9mXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZGVmYXVsdHMgdG86ICclcycpLlxuIgorIiAgLUlbPHBhdHRlcm4+XSAgICAgICAgICAgIGZpbHRlciBvdXQgZmlsZXMgd2hlbiBidWlsZGluZyB0YXJiYWxsc1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGRlZmF1bHRzIHRvOiAlcykuXG4iCisiICAtWjxjb21wcmVzc2lvbj4gICAgICAgICAgc2VsZWN0IGNvbXByZXNzaW9uIHRvIHVzZSAoZGVmYXVsdHMgdG8gJyVzJyxcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN1cHBvcnRlZCBhcmU6ICVzKS5cbiIKKyIgIC16PGxldmVsPiAgICAgICAgICAgICAgICBjb21wcmVzc2lvbiBsZXZlbCB0byB1c2UgKGRlZmF1bHRzIHRvICclZCcsXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdXBwb3J0ZWQgYXJlOiAnMSctJzknLCAnYmVzdCcsICdmYXN0JykiCittc2dzdHIgIiIKKyJCYXVvcHRpb25lbjpcbiIKKyIgIC1jPFN0ZXVlcmRhdGVpPiAgICAgICAgICBTdGV1ZXJpbmZvcm1hdGlvbmVuIGF1cyBkaWVzZXIgRGF0ZWkgYmV6aWVoZW4uXG4iCisiICAtbDxDaGFuZ2Vsb2dfRGF0ZWk+ICAgICAgcHJvLVZlcnNpb24tSW5mb3JtYXRpb25lbiBhdXMgZGllc2VyIERhdGVpXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgYmV6aWVoZW4uXG4iCisiICAtRjxDaGFuZ2Vsb2dmb3JtYXQ+ICAgICAgQ2hhbmdlbG9nLUZvcm1hdCBlcnp3aW5nZW4uXG4iCisiICAtVjxOYW1lPj08V2VydD4gICAgICAgICAgZWluZSBTdWJ0aXR1dGlvbnN2YXJpYWJsZSBzZXR6ZW4uXG4iCisiICAtVDxWYXJsaXN0ZGF0ZWk+ICAgICAgICAgVmFyaWFibGVuIGhpZXIgbGVzZW4uXG4iCisiICAtRDxGZWxkPj08V2VydD4gICAgICAgICAgZWluIC5kc2MtRmVsZCB1bmQgV2VydCDDvGJlcnNjaHJlaWJlbiBvZGVyICIKKyJlcmfDpG56ZW4uXG4iCisiICAtVTxGZWxkPiAgICAgICAgICAgICAgICAgZWluIEZlbGQgZW50ZmVybmVuLlxuIgorIiAgLXEgICAgICAgICAgICAgICAgICAgICAgIHN0aWxsZXIgTW9kdXMuXG4iCisiICAtaVs8UmVnYXVzPl0gICAgICAgICAgICAgRGF0ZWllbiBoZXJhdXNmaWx0ZXJuLCBkZXJlbiBEaWZmcyBpZ25vcmllcnQgIgorIndlcmRlblxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKFZvcmdhYmU6IMK7JXPCqykuXG4iCisiICAtSVs8TXVzdGVyPl0gICAgICAgICAgICAgRGF0ZWllbiBiZWltIEJhdWVuIGRlcyBUYXJiYWxscyBoZXJhdXNmaWx0ZXJuLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKFZvcmdhYmU6ICVzKS5cbiIKKyIgIC1aPEtvbXByaW1pZXJ1bmc+ICAgICAgICB6dSB2ZXJ3ZW5kZW5lIEtvbXByZXNzaW9uIGF1c3fDpGhsZW4gKFZvcmdhYmU6XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICDCuyVzwqssIHVudGVyc3TDvHR6dCB3ZXJkZW46ICVzKVxuIgorIiAgLXo8U3R1ZmU+ICAgICAgICAgICAgICAgIHp1IHZlcndlbmRlbmRlIEtvbXByZXNzaW9uc3N0dWZlIHfDpGhsZW4gIgorIihWb3JnYWJlOlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgwrslZMKrLCB1bnRlcnN0w7x0enQgd2VyZGVuOiDCuzHCqy3CuznCqywgwrtiZXN0wqssICIKKyLCu2Zhc3TCqykiCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6NDk5Cittc2dpZCAiIgorIkV4dHJhY3Qgb3B0aW9uczpcbiIKKyIgIC0tbm8tY29weSAgICAgICAgICAgICAgICBkb24ndCBjb3B5IC5vcmlnIHRhcmJhbGxzXG4iCisiICAtLW5vLWNoZWNrICAgICAgICAgICAgICAgZG9uJ3QgY2hlY2sgc2lnbmF0dXJlIGFuZCBjaGVja3N1bXMgYmVmb3JlICIKKyJ1bnBhY2tpbmdcbiIKKyIgIC0tcmVxdWlyZS12YWxpZC1zaWduYXR1cmUgYWJvcnQgaWYgdGhlIHBhY2thZ2UgZG9lc24ndCBoYXZlIGEgdmFsaWQgIgorInNpZ25hdHVyZSIKK21zZ3N0ciAiIgorIkV4dHJhaGllcnVuZ3NvcHRpb25lbjpcbiIKKyIgIC0tbm8tY29weSAgICAgICAgICAgICAgICAub3JpZy1UYXJiw6RsbGUgbmljaHQga29waWVyZW4uXG4iCisiICAtLW5vLWNoZWNrICAgICAgICAgICAgICAgdm9yIGRlbSBFbnRwYWNrZW4gU2lnbmF0dXJlbiB1bmQgUHLDvGZzdW1tZW5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBuaWNodCDDvGJlcnByw7xmZW4uXG4iCisiICAtLXJlcXVpcmUtdmFsaWQtc2lnbmF0dXJlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgYWJicmVjaGVuLCBmYWxscyBkYXMgUGFrZXQga2VpbmUgZ8O8bHRpZ2VcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBTaWduYXR1ciBoYXQuIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjUwNAorbXNnaWQgIiIKKyJHZW5lcmFsIG9wdGlvbnM6XG4iCisiICAtaCwgLS1oZWxwICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgICAgICAtLXZlcnNpb24gICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLiIKK21zZ3N0ciAiIgorIkFsbGdlbWVpbmUgT3B0aW9uZW46XG4iCisiICAtaCwgLS1oZWxwICAgICAgICAgICAgICAgZGllc2UgSGlsZmVtZWxkdW5nIGFuemVpZ2VuLlxuIgorIiAgICAgIC0tdmVyc2lvbiAgICAgICAgICAgIGRpZSBWZXJzaW9uIGFuemVpZ2VuLiIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDo1MDgKK21zZ2lkICIiCisiTW9yZSBvcHRpb25zIGFyZSBhdmFpbGFibGUgYnV0IHRoZXkgZGVwZW5kIG9uIHRoZSBzb3VyY2UgcGFja2FnZSBmb3JtYXQuXG4iCisiU2VlIGRwa2ctc291cmNlKDEpIGZvciBtb3JlIGluZm8uIgorbXNnc3RyICIiCisiQWJow6RuZ2lnIHZvbSBRdWVsbHBha2V0Zm9ybWF0IHNpbmQgd2VpdGVyZSBPcHRpb25lbiB2ZXJmw7xnYmFyLlxuIgorIkxlc2VuIFNpZSBkcGtnLXNvdXJjZSgxKSBmw7xyIHdlaXRlcmUgSW5mb3JtYXRpb25lbi4iCisKKyM6IHNjcmlwdHMvY2hhbmdlbG9nL2RlYmlhbi5wbDozNgorbXNnaWQgIiIKKyJcbiIKKyJDb3B5cmlnaHQgKEMpIDE5OTYgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDA1LDIwMDcgRnJhbmsgTGljaHRlbmhlbGQuIgorbXNnc3RyICIiCisiXG4iCisiQ29weXJpZ2h0IChDKSAxOTk2IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwNSwyMDA3IEZyYW5rIExpY2h0ZW5oZWxkLiIKKworIzogc2NyaXB0cy9jaGFuZ2Vsb2cvZGViaWFuLnBsOjQ3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJVc2FnZTogJXMgWzxvcHRpb24+Li4uXSBbPGNoYW5nZWxvZ2ZpbGU+XVxuIgorIlxuIgorIk9wdGlvbnM6XG4iCisiICAgIC0taGVscCwgLWggICAgICAgICAgICAgICAgICBwcmludCB1c2FnZSBpbmZvcm1hdGlvblxuIgorIiAgICAtLXZlcnNpb24sIC1WICAgICAgICAgICAgICAgcHJpbnQgdmVyc2lvbiBpbmZvcm1hdGlvblxuIgorIiAgICAtLWxhYmVsLCAtbCA8ZmlsZT4gICAgICAgICAgbmFtZSBvZiB0aGUgY2hhbmdlbG9nIGZpbGUgdG9cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzZSBpbiBlcnJvciBtZXNzYWdlc1xuIgorIiAgICAtLWZpbGUgPGZpbGU+ICAgICAgICAgICAgICAgY2hhbmdlbG9nIGZpbGUgdG8gcGFyc2UsIGRlZmF1bHRzXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0byAnLScgKHN0YW5kYXJkIGlucHV0KVxuIgorIiAgICAtLWZvcm1hdCA8b3V0cHV0Zm9ybWF0PiAgICAgc2VlIG1hbiBwYWdlIGZvciBsaXN0IG9mIGF2YWlsYWJsZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3V0cHV0IGZvcm1hdHMsIGRlZmF1bHRzIHRvICdkcGtnJ1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBkcGtnLWRldlxuIgorIiAgICAtLXNpbmNlLCAtcywgLXYgPHZlcnNpb24+ICAgaW5jbHVkZSBhbGwgY2hhbmdlcyBsYXRlciB0aGFuIHZlcnNpb25cbiIKKyIgICAgLS11bnRpbCwgLXUgPHZlcnNpb24+ICAgICAgIGluY2x1ZGUgYWxsIGNoYW5nZXMgZWFybGllciB0aGFuIHZlcnNpb25cbiIKKyIgICAgLS1mcm9tLCAtZiA8dmVyc2lvbj4gICAgICAgIGluY2x1ZGUgYWxsIGNoYW5nZXMgZXF1YWwgb3IgbGF0ZXJcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoYW4gdmVyc2lvblxuIgorIiAgICAtLXRvLCAtdCA8dmVyc2lvbj4gICAgICAgICAgaW5jbHVkZSBhbGwgY2hhbmdlcyB1cCB0byBvciBlcXVhbFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhhbiB2ZXJzaW9uXG4iCisiICAgIC0tY291bnQsIC1jLCAtbiA8bnVtYmVyPiAgICBpbmNsdWRlIDxudW1iZXI+IGVudHJpZXMgZnJvbSB0aGUgdG9wXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAob3IgdGhlIHRhaWwgaWYgPG51bWJlcj4gaXMgbG93ZXIgdGhhbiAwKVxuIgorIiAgICAtLW9mZnNldCwgLW8gPG51bWJlcj4gICAgICAgY2hhbmdlIHRoZSBzdGFydGluZyBwb2ludCBmb3IgLS1jb3VudCxcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvdW50ZWQgZnJvbSB0aGUgdG9wIChvciB0aGUgdGFpbCBpZlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG51bWJlcj4gaXMgbG93ZXIgdGhhbiAwKVxuIgorIiAgICAtLWFsbCAgICAgICAgICAgICAgICAgICAgICAgaW5jbHVkZSBhbGwgY2hhbmdlc1xuIgorbXNnc3RyICIiCisiQXVmcnVmOiAlcyBbPE9wdGlvbj4uLi5dIFs8Q2hhbmdlbG9nZGF0ZWk+XVxuIgorIlxuIgorIk9wdGlvbmVuOlxuIgorIiAgICAtLWhlbHAsIC1oICAgICAgICAgICAgICAgICAgQmVudXR6dW5nc2luZm9ybWF0aW9uZW4gYXVzZ2ViZW4uXG4iCisiICAgIC0tdmVyc2lvbiwgLVYgICAgICAgICAgICAgICBWZXJzaW9uc2luZm9ybWF0aW9uIGF1c2dlYmVuLlxuIgorIiAgICAtLWxhYmVsLCAtbCA8RGF0ZWk+ICAgICAgICAgTmFtZSBkZXIgQ2hhbmdlbG9nZGF0ZWkgenVyIFZlcndlbmR1bmdcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluIEZlaGxlcm1lbGR1bmdlbi5cbiIKKyIgICAgLS1maWxlIDxEYXRlaT4gICAgICAgICAgICAgIGF1c3p1d2VydGVuZGUgQ2hhbmdlbG9nZGF0ZWksIHN0YW5kYXJkbcOkw59pZ1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgwrstwqsgKFN0YW5kYXJkZWluZ2FiZSkuXG4iCisiICAgIC0tZm9ybWF0IDxBdXNnYWJlZm9ybWF0PiAgICBzaWVoZSBIYW5kYnVjaHNlaXRlIGbDvHIgdmVyZsO8Z2JhcmVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEF1c2dhYmVmb3JtYXRlLCBzdGFuZGFyZG3DpMOfaWcgwrtkcGtnwqsgenVyXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBLb21wYXRpYmlsaXTDpHQgbWl0IGRwa2ctZGV2LlxuIgorIiAgICAtLXNpbmNlLCAtcywgLXYgPFZlcnNpb24+ICAgYWxsZSDDhG5kZXJ1bmdlbiBqw7xuZ2VyIGFscyBWZXJzaW9uIGhpbnp1LVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmVobWVuLlxuIgorIiAgICAtLXVudGlsLCAtdSA8VmVyc2lvbj4gICAgICAgYWxsZSDDhG5kZXJ1bmdlbiDDpGx0ZXIgYWxzIFZlcnNpb24gaGluenUtXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuZWhtZW4uXG4iCisiICAgIC0tZnJvbSwgLWYgPFZlcnNpb24+ICAgICAgICBhbGxlIMOEbmRlcnVuZ2VuIGrDvG5nZXIgYWxzIG9kZXIgaWRlbnRpc2NoXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtaXQgVmVyc2lvbiBoaW56dW5laG1lbi5cbiIKKyIgICAgLS10bywgLXQgPFZlcnNpb24+ICAgICAgICAgIGFsbGUgw4RuZGVydW5nZW4gw6RsdGVyIGFscyBvZGVyIGlkZW50aXNjaFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWl0IFZlcnNpb24gaGluenVuZWhtZW4uXG4iCisiICAgIC0tY291bnQsIC1jLCAtbiA8WmFobD4gICAgICA8WmFobD4gRWludHLDpGdlIHZvbiBvYmVuIGhpbnp1ZsO8Z2VuIChvZGVyICIKKyJ2b25cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVudGVuLCBmYWxscyA8WmFobD4ga2xlaW5lciBhbHMgTnVsbCBpc3QpXG4iCisiICAgIC0tb2Zmc2V0LCAtbyA8WmFobD4gICAgICAgICBTdGFydHB1bmt0IGbDvHIgLS1jb3VudCDDpG5kZXJuLCBnZXrDpGhsdFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdm9uIG9iZW4gKG9kZXIgdm9uIHVudGVuLCBmYWxscyA8WmFobD5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGtsZWluZXIgYWxzIE51bGwgaXN0KVxuIgorIiAgICAtLWFsbCAgICAgICAgICAgICAgICAgICAgICAgYWxsZSDDhG5kZXJ1bmdlbiBoaW56dWbDvGdlblxuIgorCisjOiBzY3JpcHRzL2NoYW5nZWxvZy9kZWJpYW4ucGw6ODYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAib3V0cHV0IGZvcm1hdCAlcyBub3Qgc3VwcG9ydGVkIgorbXNnc3RyICJBdXNnYWJlZm9ybWF0ICVzIG5pY2h0IHVudGVyc3TDvHR6dCIKKworIzogc2NyaXB0cy9jaGFuZ2Vsb2cvZGViaWFuLnBsOjExMQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJtb3JlIHRoYW4gb25lIGZpbGUgc3BlY2lmaWVkICglcyBhbmQgJXMpIgorbXNnc3RyICJtZWhyIGFscyBlaW5lIERhdGVpIGFuZ2VnZWJlbiAoJXMgdW5kICVzKSIKKworIzogc2NyaXB0cy9jaGFuZ2Vsb2cvZGViaWFuLnBsOjEzNSBzY3JpcHRzL0Rwa2cvSW50ZXJmYWNlL1N0b3JhYmxlLnBtOjg0Cittc2dpZCAiPHN0YW5kYXJkIGlucHV0PiIKK21zZ3N0ciAiPFN0YW5kYXJkZWluZ2FiZT4iCisKKyM6IHNjcmlwdHMvY2hhbmdlbG9nL2RlYmlhbi5wbDoxMzYKK21zZ2lkICJmYXRhbCBlcnJvciBvY2N1cnJlZCB3aGlsZSBwYXJzaW5nIGlucHV0IgorbXNnc3RyICJGYXRhbGVyIEZlaGxlciBiZWltIEF1c3dlcnRlbiBkZXIgRWluZ2FiZSIKKworIzogc2NyaXB0cy9jaGFuZ2Vsb2cvZGViaWFuLnBsOjEzOQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJmYXRhbCBlcnJvciBvY2N1cnJlZCB3aGlsZSBwYXJzaW5nICVzIgorbXNnc3RyICJGYXRhbGVyIEZlaGxlciBiZWltIEF1c3dlcnRlbiB2b24gJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9BcmNoLnBtOjg2Cittc2dpZCAiIgorIkNvdWxkbid0IGRldGVybWluZSBnY2Mgc3lzdGVtIHR5cGUsIGZhbGxpbmcgYmFjayB0byBkZWZhdWx0IChuYXRpdmUgIgorImNvbXBpbGF0aW9uKSIKK21zZ3N0ciAiIgorImdjYy1TeXN0ZW10eXAga29ubnRlIG5pY2h0IGVybWl0dGVsdCB3ZXJkZW4sIHp1csO8Y2sgYXVmIFN0YW5kYXJkZWluc3RlbGx1bmcgIgorIihuYXRpdmUgw5xiZXJzZXR6dW5nKSIKKworIzogc2NyaXB0cy9EcGtnL0FyY2gucG06OTUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIlVua25vd24gZ2NjIHN5c3RlbSB0eXBlICVzLCBmYWxsaW5nIGJhY2sgdG8gZGVmYXVsdCAobmF0aXZlIGNvbXBpbGF0aW9uKSIKK21zZ3N0ciAiIgorIlVuYmVrYW5udGVyIGdjYy1TeXN0ZW10eXAgJXMsIHp1csO8Y2sgYXVmIFN0YW5kYXJkZWluc3RlbGx1bmcgKG5hdGl2ZSAiCisiw5xiZXJzZXR6dW5nKSIKKworIzogc2NyaXB0cy9EcGtnL0J1aWxkRmxhZ3MucG06Mjc4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImxpbmUgJWQgb2YgJXMgbWVudGlvbnMgdW5rbm93biBmbGFnICVzIgorbXNnc3RyICJaZWlsZSAlZCB2b24gJXMgZXJ3w6RobnQgdW5iZWthbm50ZW4gU2NoYWx0ZXIgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9CdWlsZEZsYWdzLnBtOjI5MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJsaW5lICVkIG9mICVzIGlzIGludmFsaWQsIGl0IGhhcyBiZWVuIGlnbm9yZWQuIgorbXNnc3RyICJaZWlsZSAlZCB2b24gJXMgaXN0IHVuZ8O8bHRpZywgc2llIHd1cmRlIGlnbm9yaWVydC4iCisKKyM6IHNjcmlwdHMvRHBrZy9CdWlsZE9wdGlvbnMucG06OTQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBmbGFnIGluICVzOiAlcyIKK21zZ3N0ciAidW5nw7xsdGlnZXIgU2NoYWx0ZXIgaW4gJXM6ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29tcHJlc3Npb24vUHJvY2Vzcy5wbTo3MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgYSBzdXBwb3J0ZWQgY29tcHJlc3Npb24gbWV0aG9kIgorbXNnc3RyICIlcyBpc3Qga2VpbmUgdW50ZXJzdMO8dHp0ZSBLb21wcmVzc2lvbnNtZXRob2RlIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29tcHJlc3Npb24vUHJvY2Vzcy5wbToxMjIKK21zZ2lkICJEcGtnOjpDb21wcmVzc2lvbjo6UHJvY2VzcyBjYW4gb25seSBzdGFydCBvbmUgc3VicHJvY2VzcyBhdCBhIHRpbWUiCittc2dzdHIgIiIKKyJEcGtnOjpDb21wcmVzc2lvbjo6UHJvY2VzcyBrYW5uIG51ciBlaW5lbiBTdWJwcm96ZXNzIGF1ZiBlaW5tYWwgc3RhcnRlbiIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbToxNzEgc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbToxNzMKKyM6IHNjcmlwdHMvRHBrZy9FcnJvckhhbmRsaW5nLnBtOjU5Cittc2dpZCAid2FybmluZyIKK21zZ3N0ciAiV2FybnVuZyIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbToxNzEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIiVzKGwlcyk6ICVzXG4iCisiTElORTogJXMiCittc2dzdHIgIiIKKyIlcyhsJXMpOiAlc1xuIgorIlpFSUxFOiAlcyIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbToxNzMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMobCVzKTogJXMiCittc2dzdHIgIiVzKGwlcyk6ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtOjIyMQorbXNnaWQgIidvZmZzZXQnIHdpdGhvdXQgJ2NvdW50JyBoYXMgbm8gZWZmZWN0IgorbXNnc3RyICLCu29mZnNldMKrIG9obmUgwrtjb3VudMKrIGhhdCBrZWluZW4gRWZmZWt0IgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtOjIyOQorbXNnaWQgInlvdSBjYW4ndCBjb21iaW5lICdjb3VudCcgb3IgJ29mZnNldCcgd2l0aCBhbnkgb3RoZXIgcmFuZ2Ugb3B0aW9uIgorbXNnc3RyICIiCisiU2llIGvDtm5uZW4gwrtjb3VudMKrIG9kZXIgwrtvZmZzZXTCqyBuaWNodCBtaXQgZWluZXIgYW5kZXJlbiBCZXJlaWNoc29wdGlvbiAiCisia29tYmluaWVyZW4iCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06MjM3Cittc2dpZCAieW91IGNhbiBvbmx5IHNwZWNpZnkgb25lIG9mICdmcm9tJyBhbmQgJ3NpbmNlJywgdXNpbmcgJ3NpbmNlJyIKK21zZ3N0ciAiIgorIlNpZSBrw7ZubmVuIG51ciBlbnR3ZWRlciDCu2Zyb23CqyBvZGVyIMK7c2luY2XCqyBhbmdlYmVuLCDCu3NpbmNlwqsgd2lyZCB2ZXJ3ZW5kZXQiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06MjQyCittc2dpZCAieW91IGNhbiBvbmx5IHNwZWNpZnkgb25lIG9mICd0bycgYW5kICd1bnRpbCcsIHVzaW5nICd1bnRpbCciCittc2dzdHIgIiIKKyJTaWUga8O2bm5lbiBudXIgZW50d2VkZXIgwrt0b8KrIG9kZXIgwrt1bnRpbMKrIGFuZ2ViZW4sIMK7dW50aWzCqyB3aXJkIHZlcndlbmRldCIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbToyNTQgc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbToyNzAKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06Mjg2IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06MzAyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiclcycgb3B0aW9uIHNwZWNpZmllcyBub24tZXhpc3RpbmcgdmVyc2lvbiIKK21zZ3N0ciAiT3B0aW9uIMK7JXPCqyBnaWJ0IG5pY2h0IGV4aXN0aWVyZW5kZSBWZXJzaW9uIGFuIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtOjI1NSBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtOjMwMworbXNnaWQgInVzZSBuZXdlc3QgZW50cnkgdGhhdCBpcyBlYXJsaWVyIHRoYW4gdGhlIG9uZSBzcGVjaWZpZWQiCittc2dzdHIgIm5ldWVzdGVyIEVpbnRyYWcgd2lyZCB2ZXJ3ZW5kZXQsIGRlciDDpGx0ZXIgYWxzIGRlciBhbmdlZ2ViZW5lIGlzdCIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbToyNjQKK21zZ2lkICJub25lIGZvdW5kLCBzdGFydGluZyBmcm9tIHRoZSBvbGRlc3QgZW50cnkiCittc2dzdHIgImtlaW5lciBnZWZ1bmRlbiwgYmVpbSDDpGx0ZXN0ZW4gRWludHJhZyB3aXJkIGJlZ29ubmVuIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtOjI3MSBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtOjI4NworbXNnaWQgInVzZSBvbGRlc3QgZW50cnkgdGhhdCBpcyBsYXRlciB0aGFuIHRoZSBvbmUgc3BlY2lmaWVkIgorbXNnc3RyICLDpGx0ZXN0ZXIgRWludHJhZyB3aXJkIHZlcndlbmRldCwgZGVyIG5ldWVyIGFscyBkZXIgYW5nZWdlYmVuZSBpc3QiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06MjgxIHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06Mjk3CisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtOjMxMgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJubyBzdWNoIGVudHJ5IGZvdW5kLCBpZ25vcmluZyAnJXMnIHBhcmFtZXRlciIKK21zZ3N0ciAia2VpbiBzb2xjaGVyIEVpbnRyYWcgZ2VmdW5kZW4sIFBhcmFtZXRlciDCuyVzwqsgd2lyZCBpZ25vcmllcnQiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06MzE4Cittc2dpZCAiJ3NpbmNlJyBvcHRpb24gc3BlY2lmaWVzIG1vc3QgcmVjZW50IHZlcnNpb24sIGlnbm9yaW5nIgorbXNnc3RyICJPcHRpb24gwrtzaW5jZcKrIGdpYnQgZGllIG5ldXN0ZSBWZXJzaW9uIGFuLCB3aXJkIGlnbm9yaWVydCIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbTozMjIKK21zZ2lkICIndW50aWwnIG9wdGlvbiBzcGVjaWZpZXMgb2xkZXN0IHZlcnNpb24sIGlnbm9yaW5nIgorbXNnc3RyICJPcHRpb24gwrt1bnRpbMKrIGdpYnQgZGllIMOkbHRlc3RlIFZlcnNpb24gYW4sIHdpcmQgaWdub3JpZXJ0IgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0RlYmlhbi5wbTo1NAorbXNnaWQgImZpcnN0IGhlYWRpbmciCittc2dzdHIgImVyc3RlIMOcYmVyc2NocmlmdCIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9EZWJpYW4ucG06NTUKK21zZ2lkICJuZXh0IGhlYWRpbmcgb3IgZW9mIgorbXNnc3RyICJuw6RjaHN0ZSDDnGJlcnNjaHJpZnQgb2RlciBEYXRlaWVuZGUiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRGViaWFuLnBtOjU2Cittc2dpZCAic3RhcnQgb2YgY2hhbmdlIGRhdGEiCittc2dzdHIgIkJlZ2lubiBkZXIgwrtjaGFuZ2XCqy1EYXRlbiIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9EZWJpYW4ucG06NTcKK21zZ2lkICJtb3JlIGNoYW5nZSBkYXRhIG9yIHRyYWlsZXIiCittc2dzdHIgIndlaXRlcmUgwrtjaGFuZ2XCqy1EYXRlbiBvZGVyIEFic3Bhbm4iCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRGViaWFuLnBtOjg5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImZvdW5kIHN0YXJ0IG9mIGVudHJ5IHdoZXJlIGV4cGVjdGVkICVzIgorbXNnc3RyICJCZWdpbm4gZWluZXMgRWludHJhZ3MgZ2VmdW5kZW4sIHdvICVzIGVyd2FydGV0IHd1cmRlIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0RlYmlhbi5wbToxMjYKK21zZ2lkICJiYWRseSBmb3JtYXR0ZWQgaGVhZGluZyBsaW5lIgorbXNnc3RyICJ1bmfDvGx0aWcgZm9ybWF0aWVydGUgS29wZnplaWxlIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0RlYmlhbi5wbToxMzAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZm91bmQgdHJhaWxlciB3aGVyZSBleHBlY3RlZCAlcyIKK21zZ3N0ciAiTmFjaHNwYW5uIGdlZnVuZGVuLCBhYmVyICVzIGVyd2FydGV0IgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0RlYmlhbi5wbToxNDAKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRW50cnkvRGViaWFuLnBtOjE0OQorbXNnaWQgImJhZGx5IGZvcm1hdHRlZCB0cmFpbGVyIGxpbmUiCittc2dzdHIgInVuZ8O8bHRpZyBmb3JtYXRpZXJ0ZSBaZWlsZSBpbSBOYWNoc3Bhbm4iCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRGViaWFuLnBtOjE0MworIywgcGVybC1mb3JtYXQKK21zZ2lkICJmb3VuZCBjaGFuZ2UgZGF0YSB3aGVyZSBleHBlY3RlZCAlcyIKK21zZ3N0ciAiw4RuZGVydW5nc2RhdGVuIHN0YXR0IGRlcyBlcndhcnRldGVuICVzIGdlZnVuZGVuIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0RlYmlhbi5wbToxNjUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZm91bmQgYmxhbmsgbGluZSB3aGVyZSBleHBlY3RlZCAlcyIKK21zZ3N0ciAiTGVlcnplaWxlIHN0YXR0IGRlcyBlcndhcnRldGVuICVzIGdlZnVuZGVuIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0RlYmlhbi5wbToxNjkKK21zZ2lkICJ1bnJlY29nbmlzZWQgbGluZSIKK21zZ3N0ciAiWmVpbGUgbmljaHQgZXJrYW5udCIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9EZWJpYW4ucG06MTgwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImZvdW5kIGVvZiB3aGVyZSBleHBlY3RlZCAlcyIKK21zZ3N0ciAiRU9GIGdlZnVuZGVuLCB3byAlcyBlcndhcnRldCB3dXJkZSIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9FbnRyeS9EZWJpYW4ucG06MTIyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImJhZCBrZXktdmFsdWUgYWZ0ZXIgYDsnOiBgJXMnIgorbXNnc3RyICJ1bmfDvGx0aWdlciBTY2hsw7xzc2Vsd2VydCBuYWNoIMK7O8KrOiAlcyIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9FbnRyeS9EZWJpYW4ucG06MTI3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInJlcGVhdGVkIGtleS12YWx1ZSAlcyIKK21zZ3N0ciAid2llZGVyaG9sdGVyIFNjaGzDvHNzZWx3ZXJ0ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0VudHJ5L0RlYmlhbi5wbToxMzEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiYmFkbHkgZm9ybWF0dGVkIHVyZ2VuY3kgdmFsdWU6ICVzIgorbXNnc3RyICJmYWxzY2ggZm9ybWF0aWVydGVyIERyaW5nbGljaGtlaXRzd2VydDogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRW50cnkvRGViaWFuLnBtOjEzNQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGtleS12YWx1ZSAlcyIKK21zZ3N0ciAidW5iZWthbm50ZXIgU2NobMO8c3NlbHdlcnQgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRW50cnkvRGViaWFuLnBtOjEzOQorbXNnaWQgInRoZSBoZWFkZXIgZG9lc24ndCBtYXRjaCB0aGUgZXhwZWN0ZWQgcmVnZXgiCittc2dzdHIgImRpZSBLb3BmemVpbGUgcGFzc3RlIG5pY2h0IGF1ZiBkZW4gZXJ3YXJ0ZXRlbiByZWd1bMOkcmVuIEF1c2RydWNrIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0VudHJ5L0RlYmlhbi5wbToxNTIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY291bGRuJ3QgcGFyc2UgZGF0ZSAlcyIKK21zZ3N0ciAiRGF0dW0gJXMga29ubnRlIG5pY2h0IGF1c2dld2VydGV0IHdlcmRlbiIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9FbnRyeS9EZWJpYW4ucG06MTU1Cittc2dpZCAidGhlIHRyYWlsZXIgZG9lc24ndCBtYXRjaCB0aGUgZXhwZWN0ZWQgcmVnZXgiCittc2dzdHIgImRlciBBYnNwYW5uIHBhc3N0ZSBuaWNodCBhdWYgZGVuIGVyd2FydGV0ZW4gcmVndWzDpHJlbiBBdXNkcnVjayIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9QYXJzZS5wbToxMDYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidGFpbCBvZiAlcyIKK21zZ3N0ciAiRW5kZSB2b24gJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvUGFyc2UucG06MTE4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImZvcm1hdCBwYXJzZXIgJXMgbm90IGV4ZWN1dGFibGUiCittc2dzdHIgIkZvcm1hdHBhcnNlciAlcyBuaWNodCBhdXNmw7xocmJhciIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9QYXJzZS5wbToxMjEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2hhbmdlbG9nIGZvcm1hdCAlcyBpcyB1bmtub3duIgorbXNnc3RyICJ1bmJla2FubnRlcyBDaGFuZ2Vsb2ctRm9ybWF0ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL1BhcnNlLnBtOjE0NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3QgZXhlYyBmb3JtYXQgcGFyc2VyOiAlcyIKK21zZ3N0ciAiRm9ybWF0cGFyc2VyIGthbm4gbmljaHQgYXVzZ2Vmw7xocnQgd2VyZGVuOiAlcyIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9QYXJzZS5wbToxNTEKK21zZ2lkICJvdXRwdXQgb2YgY2hhbmdlbG9nIHBhcnNlciIKK21zZ3N0ciAiQXVzZ2FiZSBkZXMgQ2hhbmdlbG9nLVBhcnNlcnMiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvUGFyc2UucG06MTU0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNoYW5nZWxvZyBwYXJzZXIgJXMiCittc2dzdHIgIkNoYW5nZWxvZy1QYXJzZXIgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGVja3N1bXMucG06MTcwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCBmc3RhdCBmaWxlICVzIgorbXNnc3RyICJEYXRlaSAlcyBrYW5uIG5pY2h0IG1pdCBmc3RhdCBhYmdlZnJhZ3Qgd2VyZGVuIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hlY2tzdW1zLnBtOjE3MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJGaWxlICVzIGhhcyBzaXplICV1IGluc3RlYWQgb2YgZXhwZWN0ZWQgJXUiCittc2dzdHIgIkRhdGVpICVzIGhhdCBHcsO2w59lICV1IHN0YXR0IGVyd2FydGV0ZW4gJXUiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGVja3N1bXMucG06MTg2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIkZpbGUgJXMgaGFzIGNoZWNrc3VtICVzIGluc3RlYWQgb2YgZXhwZWN0ZWQgJXMgKGFsZ29yaXRobSAlcykiCittc2dzdHIgIkRhdGVpICVzIGhhdCBQcsO8ZnN1bW1lICVzIHN0YXR0IGRlciBlcndhcnRldGVuICVzIChBbGdvcml0aG11cyAlcykiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGVja3N1bXMucG06MTkxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNoZWNrc3VtIHByb2dyYW0gZ2F2ZSBib2d1cyBvdXRwdXQgYCVzJyIKK21zZ3N0ciAiZmFsc2NoZSBBdXNnYWJlIMK7JXPCqyB2b24gUHLDvGZzdW1tZW5wcm9ncmFtbSIKKworIzogc2NyaXB0cy9EcGtnL0NoZWNrc3Vtcy5wbToyMTkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBsaW5lIGluICVzIGNoZWNrc3VtcyBzdHJpbmc6ICVzIgorbXNnc3RyICJ1bmfDvGx0aWdlIFplaWxlIGluICVzIFByw7xmc3VtbWVuemVpY2hlbmtldHRlOiAlcyIKKworIzogc2NyaXB0cy9EcGtnL0NoZWNrc3Vtcy5wbToyMjUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiQ29uZmxpY3RpbmcgY2hlY2tzdW1zIGAlcycgYW5kIGAlcycgZm9yIGZpbGUgYCVzJyIKK21zZ3N0ciAiV2lkZXJzcHLDvGNobGljaGUgUHLDvGZzdW1tZW4gwrslc8KrIHVuZCDCuyVzwqsgZsO8ciBEYXRlaSDCuyVzwqsiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGVja3N1bXMucG06MjI5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIkNvbmZsaWN0aW5nIGZpbGUgc2l6ZXMgYCV1JyBhbmQgYCV1JyBmb3IgZmlsZSBgJXMnIgorbXNnc3RyICJXaWRlcnNwcsO8Y2hsaWNoZSBEYXRlaWdyw7bDn2VuIMK7JXXCqyB1bmQgwrsldcKrIGbDvHIgRGF0ZWkgwrslc8KrIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29uZi5wbToxMDUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAic2hvcnQgb3B0aW9uIG5vdCBhbGxvd2VkIGluICVzLCBsaW5lICVkIgorbXNnc3RyICJrdXJ6ZSBPcHRpb24gaW4gJXMgaW4gWmVpbGUgJWQgbmljaHQgZXJsYXVidCIKKworIzogc2NyaXB0cy9EcGtnL0NvbmYucG06MTE5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImludmFsaWQgc3ludGF4IGZvciBvcHRpb24gaW4gJXMsIGxpbmUgJWQiCittc2dzdHIgIlN5bnRheGZlaGxlciBmw7xyIE9wdGlvbiBpbiAlcyBpbiBaZWlsZSAlZCIKKworIzogc2NyaXB0cy9EcGtnL0NvbnRyb2wucG06MTUwCittc2dpZCAiZ2VuZXJhbCBzZWN0aW9uIG9mIGNvbnRyb2wgaW5mbyBmaWxlIgorbXNnc3RyICJhbGxnZW1laW5lciBBYnNjaG5pdHQgZGVyIFN0ZXVlci1JbmZvZGF0ZWkiCisKKyM6IHNjcmlwdHMvRHBrZy9Db250cm9sLnBtOjE1MgorbXNnaWQgInBhY2thZ2UncyBzZWN0aW9uIG9mIGNvbnRyb2wgaW5mbyBmaWxlIgorbXNnc3RyICJQYWtldGFic2Nobml0dCBkZXIgU3RldWVyLUluZm9kYXRlaSIKKworIzogc2NyaXB0cy9EcGtnL0NvbnRyb2wucG06MTU0Cittc2dpZCAicGFyc2VkIHZlcnNpb24gb2YgY2hhbmdlbG9nIgorbXNnc3RyICJhdXNnZXdlcnRldGUgVmVyc2lvbiBkZXMgY2hhbmdlbG9ncyIKKworIzogc2NyaXB0cy9EcGtnL0NvbnRyb2wucG06MTU2IHNjcmlwdHMvRHBrZy9Db250cm9sLnBtOjE1OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJlbnRyeSBpbiByZXBvc2l0b3J5J3MgJXMgZmlsZSIKK21zZ3N0ciAiRWludHJhZyBpbiBEYXRlaSAlcyBkZXMgRGVwb3RzIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29udHJvbC5wbToxNjAgc2NyaXB0cy9EcGtnL0NvbnRyb2wucG06MTY0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGZpbGUiCittc2dzdHIgIiVzLURhdGVpIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29udHJvbC5wbToxNjIKK21zZ2lkICJjb250cm9sIGluZm8gb2YgYSAuZGViIHBhY2thZ2UiCittc2dzdHIgIlN0ZXVlcmluZm8gZWluZXMgLmRlYi1QYWtldHMiCisKKyM6IHNjcmlwdHMvRHBrZy9Db250cm9sLnBtOjE2NgorbXNnaWQgInZlbmRvciBmaWxlIgorbXNnc3RyICJMaWVmZXJhbnRlbi0odmVuZG9yLSlEYXRlaSIKKworIzogc2NyaXB0cy9EcGtnL0NvbnRyb2wucG06MTY4Cittc2dpZCAiZW50cnkgaW4gZHBrZydzIHN0YXR1cyBmaWxlIgorbXNnc3RyICJFaW50cmFnIGluIERwa2dzIFN0YXR1c2RhdGVpIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29udHJvbC9GaWVsZHMucG06NDU1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVua25vd24gaW5mb3JtYXRpb24gZmllbGQgJyVzJyBpbiBpbnB1dCBkYXRhIGluICVzIgorbXNnc3RyICJ1bmJla2FubnRlcyBJbmZvcm1hdGlvbnNmZWxkIMK7JXPCqyBpbiBkZW4gRWluZ2FiZWRhdGVuIGluICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29udHJvbC9GaWVsZHMucG06NDU2Cittc2dpZCAiY29udHJvbCBpbmZvcm1hdGlvbiIKK21zZ3N0ciAiU3RldWVyaW5mb3JtYXRpb24iCisKKyM6IHNjcmlwdHMvRHBrZy9Db250cm9sL0luZm8ucG06MTAzCittc2dpZCAiZmlyc3QgYmxvY2sgbGFja3MgYSBzb3VyY2UgZmllbGQiCittc2dzdHIgImltIGVyc3RlbiBCbG9jayBmZWhsdCBlaW4gRmVsZCDCu3NvdXJjZcKrIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29udHJvbC9JbmZvLnBtOjExMCBzY3JpcHRzL0Rwa2cvQ29udHJvbC9JbmZvLnBtOjExMworIywgcGVybC1mb3JtYXQKK21zZ2lkICJibG9jayBsYWNrcyB0aGUgJyVzJyBmaWVsZCIKK21zZ3N0ciAiaW0gQmxvY2sgZmVobHQgZGFzIEZlbGQgwrslc8KrIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29udHJvbC9IYXNoLnBtOjE3MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgZmllbGQgJXMgZm91bmQiCittc2dzdHIgImRvcHBlbHRlcyBGZWxkICVzIGdlZnVuZGVuIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29udHJvbC9IYXNoLnBtOjE4MAorbXNnaWQgImNvbnRpbnVlZCB2YWx1ZSBsaW5lIG5vdCBpbiBmaWVsZCIKK21zZ3N0ciAiZm9ydGdlZsO8aHJ0ZSBXZXJ0emVpbGUgbmljaHQgaW0gRmVsZCIKKworIzogc2NyaXB0cy9EcGtnL0NvbnRyb2wvSGFzaC5wbToxOTQKK21zZ2lkICJQR1Agc2lnbmF0dXJlIG5vdCBhbGxvd2VkIGhlcmUiCittc2dzdHIgIlBHUC1TaWduYXR1ciBoaWVyIG5pY2h0IGVybGF1YnQiCisKKyM6IHNjcmlwdHMvRHBrZy9Db250cm9sL0hhc2gucG06MjAxCittc2dpZCAiZXhwZWN0ZWQgUEdQIHNpZ25hdHVyZSwgZm91bmQgRU9GIGFmdGVyIGJsYW5rIGxpbmUiCittc2dzdHIgIlBHUC1TaWduYXR1ciBlcndhcnRldCwgRU9GIG5hY2ggZWluZXIgTGVlcnplaWxlIGdlZnVuZGVuIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29udHJvbC9IYXNoLnBtOjIwNQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJleHBlY3RlZCBQR1Agc2lnbmF0dXJlLCBmb3VuZCBzb21ldGhpbmcgZWxzZSBgJXMnIgorbXNnc3RyICJQR1AtU2lnbmF0dXIgZXJ3YXJ0ZXQsIGV0d2FzIGFuZGVyZXMgZ2VmdW5kZW4gwrslc8KrIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29udHJvbC9IYXNoLnBtOjIxMworbXNnaWQgInVuZmluaXNoZWQgUEdQIHNpZ25hdHVyZSIKK21zZ3N0ciAidW52b2xsc3TDpG5kaWdlIFBHUC1TaWduYXR1ciIKKworIzogc2NyaXB0cy9EcGtnL0NvbnRyb2wvSGFzaC5wbToyMTkKK21zZ2lkICJsaW5lIHdpdGggdW5rbm93biBmb3JtYXQgKG5vdCBmaWVsZC1jb2xvbi12YWx1ZSkiCittc2dzdHIgIlplaWxlIG1pdCB1bmJla2FubnRlbSBGb3JtYXQgKG5pY2h0IEZlbGQtRG9wcGVscHVua3QtV2VydCkiCisKKyM6IHNjcmlwdHMvRHBrZy9Db250cm9sL0hhc2gucG06MzE2Cittc2dpZCAid3JpdGUgZXJyb3Igb24gY29udHJvbCBkYXRhIgorbXNnc3RyICJTY2hyZWliZmVobGVyIGJlaSBTdGV1ZXJkYXRlbiAowrtjb250cm9sIGRhdGHCqykiCisKKyM6IHNjcmlwdHMvRHBrZy9EZXBzLnBtOjI3NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW4ndCBwYXJzZSBkZXBlbmRlbmN5ICVzIgorbXNnc3RyICJBYmjDpG5naWdrZWl0ICVzIGthbm4gbmljaHQgYXVzZ2V3ZXJ0ZXQgd2VyZGVuIgorCisjOiBzY3JpcHRzL0Rwa2cvRGVwcy5wbTozMDEKK21zZ2lkICJhbiB1bmlvbiBkZXBlbmRlbmN5IGNhbiBvbmx5IGNvbnRhaW4gc2ltcGxlIGRlcGVuZGVuY2llcyIKK21zZ3N0ciAiIgorImVpbmUgVmVyZWluaWd1bmdzYWJow6RuZ2lna2VpdCBrYW5uIG51ciBlaW5mYWNoZSBBYmjDpG5naWdrZWl0ZW4gZW50aGFsdGVuIgorCisjOiBzY3JpcHRzL0Rwa2cvRXJyb3JIYW5kbGluZy5wbTo1NAorbXNnaWQgImluZm8iCittc2dzdHIgIkluZm9ybWF0aW9uIgorCisjOiBzY3JpcHRzL0Rwa2cvRXJyb3JIYW5kbGluZy5wbTo2NSBzY3JpcHRzL0Rwa2cvRXJyb3JIYW5kbGluZy5wbTo3MAorIzogc2NyaXB0cy9EcGtnL0Vycm9ySGFuZGxpbmcucG06NzUKK21zZ2lkICJlcnJvciIKK21zZ3N0ciAiRmVobGVyIgorCisjOiBzY3JpcHRzL0Rwa2cvRXJyb3JIYW5kbGluZy5wbTo4MAorbXNnaWQgImludGVybmFsIGVycm9yIgorbXNnc3RyICJpbnRlcm5lciBGZWhsZXIiCisKKyM6IHNjcmlwdHMvRHBrZy9FcnJvckhhbmRsaW5nLnBtOjkyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGdhdmUgZXJyb3IgZXhpdCBzdGF0dXMgJXMiCittc2dzdHIgIkZlaGxlci1FeGl0c3RhdHVzIHZvbiAlcyB3YXIgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9FcnJvckhhbmRsaW5nLnBtOjk0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGRpZWQgZnJvbSBzaWduYWwgJXMiCittc2dzdHIgIiVzIHd1cmRlIGR1cmNoIFNpZ25hbCAlcyBnZXTDtnRldCIKKworIzogc2NyaXB0cy9EcGtnL0Vycm9ySGFuZGxpbmcucG06OTYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgZmFpbGVkIHdpdGggdW5rbm93biBleGl0IGNvZGUgJWQiCittc2dzdHIgIiVzIGZlaGxnZXNjaGxhZ2VuIG1pdCB1bmJla2FubnRlbSBFeGl0LUNvZGUgJWQiCisKKyM6IHNjcmlwdHMvRHBrZy9FcnJvckhhbmRsaW5nLnBtOjExNQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gJXMgYXQgbGluZSAlZDogJXMiCittc2dzdHIgIlN5bnRheGZlaGxlciBpbiAlcyBpbiBaZWlsZSAlZDogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9JUEMucG06MjExIHNjcmlwdHMvRHBrZy9JUEMucG06MjE3IHNjcmlwdHMvRHBrZy9JUEMucG06MjIzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInBpcGUgZm9yICVzIgorbXNnc3RyICJQaXBlIGbDvHIgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9JUEMucG06MjQyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNoZGlyIHRvICVzIgorbXNnc3RyICJjaGRpciBuYWNoICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvSVBDLnBtOjI0OQorbXNnaWQgInJlb3BlbiBzdGRpbiIKK21zZ3N0ciAiU3RkaW4gZXJuZXV0IMO2ZmZuZW4iCisKKyM6IHNjcmlwdHMvRHBrZy9JUEMucG06MjU3IHNjcmlwdHMvRHBrZy9JUEMucG06MjY1Cittc2dpZCAicmVvcGVuIHN0ZG91dCIKK21zZ3N0ciAiU3Rkb3V0IGVybmV1dCDDtmZmbmVuIgorCisjOiBzY3JpcHRzL0Rwa2cvSVBDLnBtOjMzOQorbXNnaWQgImNoaWxkIHByb2Nlc3MiCittc2dzdHIgIktpbmRwcm96ZXNzIgorCisjOiBzY3JpcHRzL0Rwa2cvSVBDLnBtOjM0NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ3YWl0IGZvciAlcyIKK21zZ3N0ciAid2FydGVuIGF1ZiAlcyIKKworIzogc2NyaXB0cy9EcGtnL0lQQy5wbTozNDkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgZGlkbid0IGNvbXBsZXRlIGluICVkIHNlY29uZCIKK21zZ2lkX3BsdXJhbCAiJXMgZGlkbid0IGNvbXBsZXRlIGluICVkIHNlY29uZHMiCittc2dzdHJbMF0gIiVzIHdhciBuaWNodCBpbm5lcmhhbGIgdm9uICVkIFNla3VuZGUgYmVlbmRldCIKK21zZ3N0clsxXSAiJXMgd2FyIG5pY2h0IGlubmVyaGFsYiB2b24gJWQgU2VrdW5kZW4gYmVlbmRldCIKKworIzogc2NyaXB0cy9EcGtnL1NobGlicy9PYmpkdW1wLnBtOjIyMgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJDb3VsZG4ndCBwYXJzZSBkeW5hbWljIHJlbG9jYXRpb24gcmVjb3JkOiAlcyIKK21zZ3N0ciAiRHluYW1pc2NoZXIgUmVsb3ppZXJ1bmdzLUVpbnRyYWcga29ubnRlIG5pY2h0IGF1c2dld2VydGV0IHdlcmRlbjogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9TaGxpYnMvT2JqZHVtcC5wbTozMzkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiQ291bGRuJ3QgcGFyc2UgZHluYW1pYyBzeW1ib2wgZGVmaW5pdGlvbjogJXMiCittc2dzdHIgIkRlZmluaXRpb24gZGVyIGR5bmFtaXNjaGVuIFN5bWJvbGUga29ubnRlIG5pY2h0IGF1c2dld2VydGV0IHdlcmRlbjogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9TaGxpYnMvU3ltYm9sLnBtOjExMQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJzeW1ib2wgbmFtZSB1bnNwZWNpZmllZDogJXMiCittc2dzdHIgIlN5bWJvbG5hbWUgbmljaHQgYW5nZWdlYmVuOiAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NobGlicy9TeW1ib2wucG06MTY4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInlvdSBjYW4ndCB1c2Ugc3ltdmVyIHRhZyB0byBjYXRjaCB1bnZlcnNpb25lZCBzeW1ib2xzOiAlcyIKK21zZ3N0ciAiIgorIlNpZSBrw7ZubmVuIGRpZSBNYXJraWVydW5nIHN5bXZlciBuaWNodCB6dW0gQWJmYW5nZW4gdW52ZXJzaW9uaWVydGVyIFN5bWJvbGUgIgorInZlcndlbmRlbjogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9TaGxpYnMvU3ltYm9sRmlsZS5wbToyMTgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiU3ltYm9sIGluZm9ybWF0aW9uIG11c3QgYmUgcHJlY2VkZWQgYnkgYSBoZWFkZXIgKGZpbGUgJXMsIGxpbmUgJXMpLiIKK21zZ3N0ciAiIgorIlN5bWJvbC1JbmZvcm1hdGlvbmVuIG3DvHNzZW4gZHVyY2ggZWluZSBLb3BmemVpbGUgZWluZ2VsZWl0ZXQgd2VyZGVuIChEYXRlaSAiCisiJXMsIFplaWxlICVzKS4iCisKKyM6IHNjcmlwdHMvRHBrZy9TaGxpYnMvU3ltYm9sRmlsZS5wbToyMjYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiRmFpbGVkIHRvIHBhcnNlIGxpbmUgaW4gJXM6ICVzIgorbXNnc3RyICJaZWlsZSBpbiAlcyBrb25udGUgbmljaHQgYXVzZ2V3ZXJ0ZXQgd2VyZGVuOiAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NobGlicy9TeW1ib2xGaWxlLnBtOjI1OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJGYWlsZWQgdG8gcGFyc2UgYSBsaW5lIGluICVzOiAlcyIKK21zZ3N0ciAiRWluZSBaZWlsZSBpbiAlcyBrb25udGUgbmljaHQgYXVzZ2V3ZXJ0ZXQgd2VyZGVuOiAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NobGlicy9TeW1ib2xGaWxlLnBtOjI3MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJUcmllZCB0byBtZXJnZSB0aGUgc2FtZSBvYmplY3QgKCVzKSB0d2ljZSBpbiBhIHN5bWZpbGUuIgorbXNnc3RyICIiCisiRXMgd3VyZGUgdmVyc3VjaHQsIGRhcyBnbGVpY2hlIE9iamVrdCAoJXMpIHp3ZWltYWwgaW4gZWluZXIgU3ltLURhdGVpICIKKyJ6dXNhbW1lbnp1ZsO8aHJlbi4iCisKKyM6IHNjcmlwdHMvRHBrZy9TaGxpYnMvU3ltYm9sRmlsZS5wbTozODgKK21zZ2lkICJDYW4ndCBtZXJnZSBzeW1ib2xzIGZyb20gb2JqZWN0cyB3aXRob3V0IFNPTkFNRS4iCittc2dzdHIgIlN5bWJvbGUgdm9uIE9iamVrdGVuIG9obmUgU09OQU1FIGvDtm5uZW4gbmljaHQgenVzYW1tZW5nZWbDvGhydCB3ZXJkZW4uIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL0FyY2hpdmUucG06NjQKK21zZ2lkICJ3cml0ZSBvbiB0YXIgaW5wdXQiCittc2dzdHIgInNjaHJlaWJlbiBhdWYgVGFyLUVpbmdhYmUiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvQXJjaGl2ZS5wbTo4OQorbXNnaWQgImNsb3NlIG9uIHRhciBpbnB1dCIKK21zZ3N0ciAic2NobGllw59lbiBhdWYgVGFyLUVpbmdhYmUiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvQXJjaGl2ZS5wbToxMTQgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo1MDMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IGNyZWF0ZSBkaXJlY3RvcnkgJXMiCittc2dzdHIgIlZlcnplaWNobmlzICVzIGthbm4gbmljaHQgYW5nZWxlZ3Qgd2VyZGVuIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL0FyY2hpdmUucG06MTQ1IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbTozMDcKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbToxOTkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IG9wZW5kaXIgJXMiCittc2dzdHIgIlZlcnplaWNobmlzICVzIGthbm4gbmljaHQgZ2XDtmZmbmV0IHdlcmRlbiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9BcmNoaXZlLnBtOjE1MiBzY3JpcHRzL0Rwa2cvU291cmNlL0FyY2hpdmUucG06MTU2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIlVuYWJsZSB0byByZW5hbWUgJXMgdG8gJXMiCittc2dzdHIgIiVzIGthbm4gbmljaHQgaW4gJXMgdW1iZW5hbm50IHdlcmRlbiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9GdW5jdGlvbnMucG06MzQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IHN0YXQgZGlyZWN0b3J5ICVzIChiZWZvcmUgcmVtb3ZhbCkiCittc2dzdHIgIlZlcnplaWNobmlzICVzIGthbm4gbmljaHQgbWl0IHN0YXQgYWJnZWZyYWd0IHdlcmRlbiAodm9yIEVudGZlcm51bmcpIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL0Z1bmN0aW9ucy5wbTo0MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hlY2sgZm9yIHJlbW92YWwgb2YgZGlyIGAlcyciCittc2dzdHIgImVzIGthbm4gbmljaHQgYXVmIEVudGZlcm51bmcgZGVzIFZlcnplaWNobmlzc2VzIMK7JXPCqyDDvGJlcnByw7xmdCB3ZXJkZW4iCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvRnVuY3Rpb25zLnBtOjQyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInJtIC1yZiBmYWlsZWQgdG8gcmVtb3ZlIGAlcyciCittc2dzdHIgIkVudGZlcm5lbiB2b24gwrslc8KrIGR1cmNoIHJtIC1yZiBmZWhsZ2VzY2hsYWdlbiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9GdW5jdGlvbnMucG06ODMgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo1NTAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IGNoYW5nZSB0aW1lc3RhbXAgZm9yICVzIgorbXNnc3RyICJaZWl0c3RlbXBlbCBmw7xyICVzIGthbm4gbmljaHQgZ2XDpG5kZXJ0IHdlcmRlbiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9GdW5jdGlvbnMucG06ODUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlYWQgdGltZXN0YW1wIGZyb20gJXMiCittc2dzdHIgIlplaXRzdGVtcGVsIGbDvHIgJXMga2FubiBuaWNodCBnZWxlc2VuIHdlcmRlbiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo3MCBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NDQzCittc2dpZCAiYmluYXJ5IGZpbGUgY29udGVudHMgY2hhbmdlZCIKK21zZ3N0ciAiSW5oYWx0IGRlciBCaW7DpHJkYXRlaSBoYXQgc2ljaCBnZcOkbmRlcnQiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MTE4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImZpbGUgJXMgaGFzIG5vIGZpbmFsIG5ld2xpbmUgKGVpdGhlciBvcmlnaW5hbCBvciBtb2RpZmllZCB2ZXJzaW9uKSIKK21zZ3N0ciAiIgorIkRhdGVpICVzIGVudGjDpGx0IGtlaW5lbiBhYnNjaGxpZcOfZW5kZW4gWmVpbGVudW1icnVjaCAoZW50d2VkZXIgT3JpZ2luYWwgb2RlciAiCisibW9kaWZpemllcnRlIFZlcnNpb24pIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjEyMgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGxpbmUgZnJvbSBkaWZmIC11IG9uICVzOiBgJXMnIgorbXNnc3RyICJ1bmJla2FubnRlIFplaWxlIHZvbiBkaWZmIC11IGF1ZiAlczogwrslc8KrIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjEyNSBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjEyOAorbXNnaWQgImZhaWxlZCB0byB3cml0ZSIKK21zZ3N0ciAiU2NocmVpYmVuIGZlaGxnZXNjaGxhZ2VuIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjEzOAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJkaWZmIG9uICVzIgorbXNnc3RyICJEaWZmIGF1ZiAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbToxNjQgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbToxODMKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MjA2IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MjE4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzdGF0IGZpbGUgJXMiCittc2dzdHIgIkRhdGVpICVzIGthbm4gbmljaHQgbWl0IHN0YXQgYWJnZWZyYWd0IHdlcmRlbiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbToxNzMgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbToxNzUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlYWQgbGluayAlcyIKK21zZ3N0ciAiTGluayAlcyBrYW5uIG5pY2h0IGdlbGVzZW4gd2VyZGVuIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjIwMgorbXNnaWQgImRldmljZSBvciBzb2NrZXQgaXMgbm90IGFsbG93ZWQiCittc2dzdHIgIkdlcsOkdCBvZGVyIFNvY2tldCBpc3QgbmljaHQgZXJsYXVidCIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbToyMTEKK21zZ2lkICJ1bmtub3duIGZpbGUgdHlwZSIKK21zZ3N0ciAidW5iZWthbm50ZXIgRGF0ZWl0eXAiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MjI0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nIGRlbGV0aW9uIG9mIGZpbGUgJXMiCittc2dzdHIgIkzDtnNjaGVuIGRlciBEYXRlaSAlcyB3aXJkIGlnbm9yaWVydCIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbToyMjcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgZGVsZXRpb24gb2YgZGlyZWN0b3J5ICVzIgorbXNnc3RyICJMw7ZzY2hlbiBkZXMgVmVyemVpY2huaXNzZXMgJXMgd2lyZCBpZ25vcmllcnQiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MjI5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nIGRlbGV0aW9uIG9mIHN5bWxpbmsgJXMiCittc2dzdHIgIkzDtnNjaGVuIGRlcyBTeW1saW5rcyAlcyB3aXJkIGlnbm9yaWVydCIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbToyNzEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibmV3bHkgY3JlYXRlZCBlbXB0eSBmaWxlICclcycgd2lsbCBub3QgYmUgcmVwcmVzZW50ZWQgaW4gZGlmZiIKK21zZ3N0ciAibmV1IGFuZ2VsZWd0ZSBsZWVyZSBEYXRlaSDCuyVzwqsgd2lyZCBpbSBEaWZmIG5pY2h0IGRhcmdlc3RlbGx0IHdlcmRlbiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbToyNzUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZXhlY3V0YWJsZSBtb2RlICUwNG8gb2YgJyVzJyB3aWxsIG5vdCBiZSByZXByZXNlbnRlZCBpbiBkaWZmIgorbXNnc3RyICJhdXNmw7xocmJhcmVyIE1vZHVzICUwNG8gdm9uIMK7JXPCqyB3aXJkIGltIERpZmYgbmljaHQgZGFyZ2VzdGVsbHQgd2VyZGVuIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjI4MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJzcGVjaWFsIG1vZGUgJTA0byBvZiAnJXMnIHdpbGwgbm90IGJlIHJlcHJlc2VudGVkIGluIGRpZmYiCittc2dzdHIgImJlc29uZGVyZXIgTW9kdXMgJTA0byB2b24gwrslc8KrIHdpcmQgaW0gRGlmZiBuaWNodCBkYXJnZXN0ZWxsdCB3ZXJkZW4iCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MzAwIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo0NDIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlcHJlc2VudCBjaGFuZ2UgdG8gJXM6ICVzIgorbXNnc3RyICLDhG5kZXJ1bmcgaW4gJXMga2FubiBuaWNodCBkYXJnZXN0ZWxsdCB3ZXJkZW46ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjMwNworIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVwcmVzZW50IGNoYW5nZSB0byAlczoiCittc2dzdHIgIsOEbmRlcnVuZyBpbiAlcyBrYW5uIG5pY2h0IGRhcmdlc3RlbGx0IHdlcmRlbjoiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MzA4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiAgbmV3IHZlcnNpb24gaXMgJXMiCittc2dzdHIgIiAgbmV1ZSBWZXJzaW9uIGlzdCAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTozMDkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiICBvbGQgdmVyc2lvbiBpcyAlcyIKK21zZ3N0ciAiICBhbHRlIFZlcnNpb24gaXN0ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjM4NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJleHBlY3RlZCBeLS0tIGluIGxpbmUgJWQgb2YgZGlmZiBgJXMnIgorbXNnc3RyICJeLS0tIHd1cmRlIGluIFplaWxlICVkIGRlcyBEaWZmcyDCuyVzwqsgZXJ3YXJ0ZXQiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06Mzg5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImRpZmYgYCVzJyBwYXRjaGVzIGZpbGUgd2l0aCBuYW1lIGVuZGluZyAuZHBrZy1vcmlnIgorbXNnc3RyICJEaWZmIMK7JXPCqyBwYXRjaHQgRGF0ZWksIGRlcmVuIE5hbWVuIGF1ZiAuZHBrZy1vcmlnIGVuZGV0IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjM5MworIywgcGVybC1mb3JtYXQKK21zZ2lkICJkaWZmIGAlcycgZmluaXNoZXMgaW4gbWlkZGxlIG9mIC0tLS8rKysgKGxpbmUgJWQpIgorbXNnc3RyICJEaWZmIMK7JXPCqyBlbmRldCBpbiBkZXIgTWl0dGUgdm9uIC0tLS8rKysgKFplaWxlICVkKSIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTozOTYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibGluZSBhZnRlciAtLS0gaXNuJ3QgYXMgZXhwZWN0ZWQgaW4gZGlmZiBgJXMnIChsaW5lICVkKSIKK21zZ3N0ciAiWmVpbGUgbmFjaCAtLS0gaXN0IGltIERpZmYgwrslc8KrIChaZWlsZSAlZCkgbmljaHQgd2llIGVyd2FydGV0IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjQwMgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJub25lIG9mIHRoZSBmaWxlbmFtZXMgaW4gLS0tLysrKyBhcmUgdmFsaWQgaW4gZGlmZiAnJXMnIChsaW5lICVkKSIKK21zZ3N0ciAia2VpbmUgZGVyIERhdGVpbmFtZW4gaW4gLS0tLysrKyBpc3QgaW0gRGlmZiDCuyVzwqsgKFplaWxlICVkKSBnw7xsdGlnIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjQxMAorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjEyNworIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBjb250YWlucyBhbiBpbnNlY3VyZSBwYXRoOiAlcyIKK21zZ3N0ciAiJXMgZW50aMOkbHQgZWluZW4gdW5zaWNoZXJlbiBQZmFkOiAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo0MTUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZGlmZiAlcyBtb2RpZmllcyBmaWxlICVzIHRocm91Z2ggYSBzeW1saW5rOiAlcyIKK21zZ3N0ciAiRGlmZiAlcyB2ZXLDpG5kZXJ0IERhdGVpICVzIMO8YmVyIGVpbmVuIFN5bWxpbms6ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjQyNAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJvcmlnaW5hbCBhbmQgbW9kaWZpZWQgZmlsZXMgYXJlIC9kZXYvbnVsbCBpbiBkaWZmIGAlcycgKGxpbmUgJWQpIgorbXNnc3RyICIiCisidXJzcHLDvG5nbGljaGUgdW5kIGdlw6RuZGVydGUgRGF0ZWllbiBzaW5kIGltIERpZmYgwrslc8KrIC9kZXYvbnVsbCAoWmVpbGUgJWQpIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjQyNworIywgcGVybC1mb3JtYXQKK21zZ2lkICJmaWxlIHJlbW92YWwgd2l0aG91dCBwcm9wZXIgZmlsZW5hbWUgaW4gZGlmZiBgJXMnIChsaW5lICVkKSIKK21zZ3N0ciAiRGF0ZWktRW50ZmVybnVuZyBvaG5lIHBhc3NlbmRlbiBEYXRlaW5hbWVuIGltIERpZmYgwrslc8KrIChaZWlsZSAlZCkiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NDMwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImRpZmYgJXMgcmVtb3ZlcyBhIG5vbi1leGlzdGluZyBmaWxlICVzIChsaW5lICVkKSIKK21zZ3N0ciAiRGlmZiAlcyBlbnRmZXJudCBlaW5lIG5pY2h0IGV4aXN0aWVyZW5kZSBEYXRlaSAlcyAoWmVpbGUgJWQpIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjQ0MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJkaWZmIGAlcycgcGF0Y2hlcyBzb21ldGhpbmcgd2hpY2ggaXMgbm90IGEgcGxhaW4gZmlsZSIKK21zZ3N0ciAiRGlmZiDCuyVzwqsgcGF0Y2h0IGV0d2FzLCBkYXMga2VpbmUgZ2V3w7ZobmxpY2hlIERhdGVpIGlzdCIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo0NDYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZGlmZiBgJXMnIHBhdGNoZXMgZmlsZSAlcyB0d2ljZSIKK21zZ3N0ciAiRGlmZiDCuyVzwqsgcGF0Y2h0IERhdGVpICVzIHp3ZWlmYWNoIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjQ2NCBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjQ2OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBkaWZmIGAlcyciCittc2dzdHIgInVuZXJ3YXJ0ZXRlcyBFbmRlIGRlcyBEaWZmcyDCuyVzwqsiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NDc3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImV4cGVjdGVkIFsgKy1dIGF0IHN0YXJ0IG9mIGxpbmUgJWQgb2YgZGlmZiBgJXMnIgorbXNnc3RyICJbICstXSB3dXJkZSBhbSBBbmZhbmcgZGVyIFplaWxlICVkIGRlcyBEaWZmcyDCuyVzwqsgZXJ3YXJ0ZXQiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NDg0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImV4cGVjdGVkIF5AQCBhdCBsaW5lICVkIG9mIGRpZmYgYCVzJyIKK21zZ3N0ciAiXkBAIHd1cmRlIGluIFplaWxlICVkIGRlcyBEaWZmIMK7JXPCqyBlcndhcnRldCIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo0ODkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZGlmZiBgJXMnIGRvZXNuJ3QgY29udGFpbiBhbnkgcGF0Y2giCittc2dzdHIgIkRpZmYgwrslc8KrIGVudGjDpGx0IGtlaW5lbiBQYXRjaCIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo1NTQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAicmVtb3ZlIHBhdGNoIGJhY2t1cCBmaWxlICVzIgorbXNnc3RyICJQYXRjaC1TaWNoZXJ1bmdza29waWVkYXRlaSAlcyBlbnRmZXJuZW4iCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NTk1Cittc2dpZCAibm9uZXhpc3RlbnQiCittc2dzdHIgIm5pY2h0IGV4aXN0ZW50IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjU5NiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG06NDU4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzdGF0ICVzIgorbXNnc3RyICIlcyBrYW5uIG5pY2h0IG1pdCBzdGF0IGFiZ2VmcmFndCB3ZXJkZW4iCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NTk4Cittc2dpZCAicGxhaW4gZmlsZSIKK21zZ3N0ciAiZ2V3w7ZobmxpY2hlIERhdGVpIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjU5OQorbXNnaWQgImRpcmVjdG9yeSIKK21zZ3N0ciAiVmVyemVpY2huaXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NjAwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInN5bWxpbmsgdG8gJXMiCittc2dzdHIgIlN5bWxpbmsgYXVmICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjYwMQorbXNnaWQgImJsb2NrIGRldmljZSIKK21zZ3N0ciAiQmxvY2tnZXLDpHQiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NjAyCittc2dpZCAiY2hhcmFjdGVyIGRldmljZSIKK21zZ3N0ciAiWmVpY2hlbmdlcsOkdCIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo2MDMKK21zZ2lkICJuYW1lZCBwaXBlIgorbXNnc3RyICJiZW5hbm50ZSBQaXBlIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjYwNAorbXNnaWQgIm5hbWVkIHNvY2tldCIKK21zZ3N0ciAiYmVuYW5udGVyIFNvY2tldCIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOjE4OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgdGhlIG5hbWUgb2YgYSBmaWxlIgorbXNnc3RyICIlcyBpc3QgbmljaHQgZGVyIE5hbWUgZWluZXIgRGF0ZWkiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbToyMDgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibWlzc2luZyBjcml0aWNhbCBzb3VyY2UgY29udHJvbCBmaWVsZCAlcyIKK21zZ3N0ciAia3JpdGlzY2hlcyBRdWVsbHN0ZXVlcmZlbGQgJXMgZmVobHQiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbToyMzYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorInNvdXJjZSBwYWNrYWdlIGZvcm1hdCBgJXMnIGlzIG5vdCBzdXBwb3J0ZWQgKFBlcmwgbW9kdWxlICVzIGlzIHJlcXVpcmVkKSIKK21zZ3N0ciAiIgorIlF1ZWxscGFrZXRmb3JtYXQgwrslc8KrIHdpcmQgbmljaHQgdW50ZXJzdMO8dHp0IChQZXJsbW9kdWwgJXMgd2lyZCBiZW7DtnRpZ3QpIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG06MjQwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImludmFsaWQgRm9ybWF0IGZpZWxkIGAlcyciCittc2dzdHIgInVuZ8O8bHRpZ2VzIEZvcm1hdGZlbGQgwrslc8KrIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG06Mjg4Cittc2dpZCAic291cmNlIGFuZCB2ZXJzaW9uIGFyZSByZXF1aXJlZCB0byBjb21wdXRlIHRoZSBzb3VyY2UgYmFzZW5hbWUiCittc2dzdHIgIiIKKyJRdWVsbGUgdW5kIFZlcnNpb24gd2VyZGVuIGJlbsO2dGlndCwgdW0gZGVuIMK7YmFzZW5hbWXCqyBkZXIgUXVlbGxlIHp1IGVybWl0dGVsbiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOjM3MSBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG06MzczCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byB2ZXJpZnkgc2lnbmF0dXJlIG9uICVzIgorbXNnc3RyICJGZWhsZXIgYmVpbSDDnGJlcnByw7xmZW4gZGVyIFNpZ25hdHVyIHZvbiAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOjM4MCBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG06MzgyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCB2ZXJpZnkgc2lnbmF0dXJlIG9uICVzIHNpbmNlIGdwZyBpc24ndCBpbnN0YWxsZWQiCittc2dzdHIgIiIKKyJTaWduYXR1ciB2b24gJXMga29ubnRlIG5pY2h0IMO8YmVycHLDvGZ0IHdlcmRlbiwgZGEgR3BnIG5pY2h0IGluc3RhbGxpZXJ0IGlzdCIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOjM5MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgYSB2YWxpZCBvcHRpb24gZm9yICVzIgorbXNnc3RyICIlcyBpc3Qga2VpbmUgZ8O8bHRpZ2UgT3B0aW9uIGbDvHIgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbTo0NjAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgZG9lcyBub3QgZXhpc3QiCittc2dzdHIgIiVzIGV4aXN0aWVydCBuaWNodCIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOjQ2NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3QgbWFrZSAlcyBleGVjdXRhYmxlIgorbXNnc3RyICJQcm9ncmFtbSAlcyBrYW5uIG5pY2h0IGF1c2bDvGhyYmFyIGdlbWFjaHQgd2VyZGVuIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG06NDY2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGlzIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgIiVzIGlzdCBrZWluZSBnZXfDtmhubGljaGUgRGF0ZWkiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbTo1MTcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJyVzJyBpcyBub3Qgc3VwcG9ydGVkIGJ5IHRoZSBzb3VyY2UgZm9ybWF0ICclcyciCittc2dzdHIgIsK7JXPCqyB3aXJkIHZvbSBRdWVsbGZvcm1hdCDCuyVzwqsgbmljaHQgdW50ZXJzdMO8dHp0IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06NjIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiLXMlcyBvcHRpb24gb3ZlcnJpZGVzIGVhcmxpZXIgLXMlcyBvcHRpb24iCittc2dzdHIgIk9wdGlvbiAtcyVzIMO8YmVyc2NocmVpYnQgdm9yaGVyZ2VoZW5kZSBPcHRpb24gLXMlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjg0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInNvdXJjZSBoYW5kbGluZyBzdHlsZSAtcyVzIG5vdCBhbGxvd2VkIHdpdGggLXgiCittc2dzdHIgIlF1ZWxsYmVhcmJlaXR1bmdzc3RpbCAtcyVzIG1pdCAteCBuaWNodCBlcmxhdWJ0IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06OTYKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9uYXRpdmUucG06NTEKK21zZ2lkICJtdWx0aXBsZSB0YXJmaWxlcyBpbiB2MS4wIHNvdXJjZSBwYWNrYWdlIgorbXNnc3RyICJtZWhyZXJlIFRhcmRhdGVpZW4gaW4gdjEuMC1RdWVsbHBha2V0IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MTAxIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbToxMjkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5yZWNvZ25pemVkIGZpbGUgZm9yIGEgJXMgc291cmNlIHBhY2thZ2U6ICVzIgorbXNnc3RyICJ1bmVya2FubnRlIERhdGVpIGbDvHIgZWluICVzLVF1ZWxscGFrZXQ6ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MTA2CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvbmF0aXZlLnBtOjU4Cittc2dpZCAibm8gdGFyZmlsZSBpbiBGaWxlcyBmaWVsZCIKK21zZ3N0ciAia2VpbmUgVGFyZGF0ZWkgaW0gRmVsZCBGaWxlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjEwOQorbXNnaWQgIm5hdGl2ZSBwYWNrYWdlIHdpdGggLm9yaWcudGFyIgorbXNnc3RyICJuYXRpdmVzIFBha2V0IG1pdCAub3JpZy50YXIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToxMjIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbmFtZSBgJXMnIHRvIGAlcyciCittc2dzdHIgIsK7JXPCqyBrYW5uIG5pY2h0IGluIMK7JXPCqyB1bWJlbmFubnQgd2VyZGVuIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MTI2IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbToxNDEKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbToxNTMgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjE2NgorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2J6ci5wbToxOTAKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9uYXRpdmUucG06NjEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5wYWNraW5nICVzIgorbXNnc3RyICIlcyB3aXJkIGVudHBhY2t0IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MTMzCittc2dpZCAidW5hYmxlIHRvIGtlZXAgb3JpZyBkaXJlY3RvcnkgKGFscmVhZHkgZXhpc3RzKSIKK21zZ3N0ciAiT3JpZ2luYWx2ZXJ6ZWljaG5pcyBrYW5uIG5pY2h0IGJlaWJlaGFsdGVuIHdlcmRlbiAoZXhpc3RpZXJ0IGJlcmVpdHMpIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MTQwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZW5hbWUgbmV3bHktZXh0cmFjdGVkICVzIHRvICVzIgorbXNnc3RyICJGZWhsZXIgYmVpbSBVbWJlbmVubmVuIGRlcyBmcmlzY2ggZXh0cmFoaWVydGVuICVzIGluICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MTQ2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZW5hbWUgc2F2ZWQgJXMgdG8gJXMiCittc2dzdHIgIkZlaGxlciBiZWltIFVtYmVuZW5uZW4gZGVzIGdlc2ljaGVydGVuICVzIGluICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MTUzIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbToyMjIKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbToxNzIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiYXBwbHlpbmcgJXMiCittc2dzdHIgIiVzIHdpcmQgYW5nZXdhbmR0IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MTU4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVwc3RyZWFtIGZpbGVzIHRoYXQgaGF2ZSBiZWVuIG1vZGlmaWVkOiAlcyIKK21zZ3N0ciAiRGF0ZWllbiBkZXIgT3JpZ2luYWxhdXRvcmVuLCBkaWUgdmVyw6RuZGVydCB3dXJkZW46ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MTY4Cittc2dpZCAib25seSBzdXBwb3J0cyBnemlwIGNvbXByZXNzaW9uIgorbXNnc3RyICJudXIgR3ppcC1Lb21wcmltaWVydW5nIHdpcmQgdW50ZXJzdMO8dHp0IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MTc5Cittc2dpZCAiIgorIi1iIHRha2VzIGF0IG1vc3QgYSBkaXJlY3RvcnkgYW5kIGFuIG9yaWcgc291cmNlIGFyZ3VtZW50ICh3aXRoIHYxLjAgc291cmNlICIKKyJwYWNrYWdlKSIKK21zZ3N0ciAiIgorImjDtmNoc3RlbnMgZWluIFZlcnplaWNobmlzIHVuZCBlaW5lIE9yaWdpbmFscXVlbGxlIHdpcmQgYmVpIC1iIGFscyBBcmd1bWVudCAiCisiYWt6ZXB0aWVydCAobWl0IHYxLjAtUXVlbGxwYWtldCkiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToxODUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAic291cmNlIGhhbmRsaW5nIHN0eWxlIC1zJXMgbm90IGFsbG93ZWQgd2l0aCAtYiIKK21zZ3N0ciAiQmVhcmJlaXR1bmdzc3RpbCBkZXIgUXVlbGxlbiAtcyVzIG1pdCAtYiBuaWNodCBlcmxhdWJ0IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MjAwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInBhY2tlZCBvcmlnIGAlcycgZXhpc3RzIGJ1dCBpcyBub3QgYSBwbGFpbiBmaWxlIgorbXNnc3RyICJnZXBhY2t0ZSBvcmlnLiDCuyVzwqsgZXhpc3RpZXJ0LCBpc3QgYWJlciBrZWluZSBnZXfDtmhubGljaGUgRGF0ZWkiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToyMTIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IHN0YXQgb3JpZyBhcmd1bWVudCAlcyIKK21zZ3N0ciAiT3JpZ2luYWxhcmd1bWVudCAlcyBrYW5uIG5pY2h0IG1pdCBzdGF0IGFiZ2VmcmFndCB3ZXJkZW4iCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToyMTgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIm9yaWcgYXJndW1lbnQgaXMgdW5wYWNrZWQgYnV0IHNvdXJjZSBoYW5kbGluZyBzdHlsZSAtcyVzIGNhbGxzIGZvciBwYWNrZWQgKC4iCisib3JpZy50YXIuPGV4dD4pIgorbXNnc3RyICIiCisiT3JpZy4tQXJndW1lbnQgaXN0IHVuZ2VwYWNrdCwgYWJlciBiZWkgUXVlbGxlbmhhbmRoYWJ1bmdzc3RpbCAtcyVzIHdpcmQgZWluICIKKyJnZXBhY2t0ZXMgQXJndW1lbnQgdmVybGFuZ3QgKC5vcmlnLnRhci48ZW5kdW5nPikiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToyMjYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIm9yaWcgYXJndW1lbnQgaXMgcGFja2VkIGJ1dCBzb3VyY2UgaGFuZGxpbmcgc3R5bGUgLXMlcyBjYWxscyBmb3IgdW5wYWNrZWQgKC4iCisib3JpZy8pIgorbXNnc3RyICIiCisiT3JpZy4gQXJndW1lbnQgaXN0IGdlcGFja3QsIGFiZXIgYmVpIFF1ZWxsZW5oYW5kaGFidW5nc3N0aWwgLXMlcyB3aXJkIGVpbiAiCisidW5nZXBhY2t0ZXMgQXJndW1lbnQgdmVybGFuZ3QgKC5vcmlnLykiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToyMzEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAib3JpZyBhcmd1bWVudCAlcyBpcyBub3QgYSBwbGFpbiBmaWxlIG9yIGRpcmVjdG9yeSIKK21zZ3N0ciAiT3JpZy4gQXJndW1lbnQgJXMgaXN0IGtlaW5lIGdld8O2aG5saWNoZSBEYXRlaSBvZGVyIFZlcnplaWNobmlzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MjM3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJvcmlnIGFyZ3VtZW50IGlzIGVtcHR5IChtZWFucyBubyBvcmlnLCBubyBkaWZmKSBidXQgc291cmNlIGhhbmRsaW5nIHN0eWxlIC1zIgorIiVzIHdhbnRzIHNvbWV0aGluZyIKK21zZ3N0ciAiIgorIk9yaWcuIEFyZ3VtZW50IGlzdCBsZWVyIChiZWRldXRldCBrZWluIE9yaWcuLCBrZWluIERpZmYpLCBhYmVyIGJlaSAiCisiUXVlbGxlbmhhbmRoYWJ1bmdzc3RpbCAtcyVzIHdpcmQgZXR3YXMgdmVybGFuZ3QiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToyNTAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5wYWNrZWQgb3JpZyBgJXMnIGV4aXN0cyBidXQgaXMgbm90IGEgZGlyZWN0b3J5IgorbXNnc3RyICJlbnRwYWNrdGVzIE9yaWcuIMK7JXPCqyBleGlzdGllcnQsIGlzdCBhYmVyIGtlaW4gVmVyemVpY2huaXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToyNTUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgcHV0YXRpdmUgdW5wYWNrZWQgb3JpZyBgJXMnIgorbXNnc3RyICIiCisidW5tw7ZnbGljaCwgZGFzIHZlcm1laW50bGljaCBhdXNnZXBhY2t0ZSBPcmlnaW5hbCDCuyVzwqsgbWl0IHN0YXQgYWJ6dWZyYWdlbiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjI2NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJzb3VyY2UgZGlyZWN0b3J5ICclcycgaXMgbm90IDxzb3VyY2VwYWNrYWdlPi08dXBzdHJlYW12ZXJzaW9uPiAnJXMnIgorbXNnc3RyICJRdWVsbHZlcnplaWNobmlzIMK7JXPCqyBsYXV0ZXQgbmljaHQgPFF1ZWxscGFrZXQ+LTxVcHN0cmVhbVZlcnNpb24+IMK7JXPCqyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjI3MworIywgcGVybC1mb3JtYXQKK21zZ2lkICIub3JpZyBkaXJlY3RvcnkgbmFtZSAlcyBpcyBub3QgPHBhY2thZ2U+LTx1cHN0cmVhbXZlcnNpb24+ICh3YW50ZWQgJXMpIgorbXNnc3RyICIiCisiLm9yaWctVmVyemVpY2huaXNuYW1lICVzIGlzdCBuaWNodCA8UGFrZXQ+LTxVcnNwcnVuZ3N2ZXJzaW9uPiAoJXMgZXJ3w7xuc2NodCkiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToyODIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIi5vcmlnLnRhciBuYW1lICVzIGlzIG5vdCA8cGFja2FnZT5fPHVwc3RyZWFtdmVyc2lvbj4ub3JpZy50YXIgKHdhbnRlZCAlcykiCittc2dzdHIgIiIKKyIub3JpZy50YXItTmFtZSAlcyBsYXV0ZXQgbmljaHQgPFBha2V0Pl88VXBzdHJlYW1WZXJzaW9uPi5vcmlnLnRhciAoJXMgIgorImVyd8O8bnNjaHQpIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06Mjk0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJ0YXJmaWxlIGAlcycgYWxyZWFkeSBleGlzdHMsIG5vdCBvdmVyd3JpdGluZywgZ2l2aW5nIHVwOyB1c2UgLXNVIG9yIC1zUiB0byAiCisib3ZlcnJpZGUiCittc2dzdHIgIiIKKyJUYXJkYXRlaSDCuyVzwqsgZXhpc3RpZXJ0IGJlcmVpdHMsIHdpcmQgbmljaHQgw7xiZXJzY2hyaWViZW4sIEFiYnJ1Y2g7ICIKKyJ2ZXJ3ZW5kZW4gU2llIC1zVSBvZGVyIC1zUiB6dW0gRXJ6d2luZ2VuIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06Mjk4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGVjayBmb3IgZXhpc3RlbmNlIG9mIGAlcyciCittc2dzdHIgIkV4aXN0ZW56IHZvbiDCuyVzwqsga2FubiBuaWNodCDDvGJlcnByw7xmdCB3ZXJkZW4iCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbTozMTMgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjM3NQorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL25hdGl2ZS5wbTo5OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVuYW1lIGAlcycgKG5ld2x5IGNyZWF0ZWQpIHRvIGAlcyciCittc2dzdHIgIsK7JXPCqyAobmV1IGFuZ2VsZWd0KSBrb25udGUgbmljaHQgaW4gwrslc8KrIHVtYmVuYW5udCB3ZXJkZW4iCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbTozMTYgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjM3OAorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjYwMworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL25hdGl2ZS5wbToxMDIKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbTozNjcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoYW5nZSBwZXJtaXNzaW9uIG9mIGAlcyciCittc2dzdHIgIkJlcmVjaHRpZ3VuZyB2b24gwrslc8KrIGthbm4gbmljaHQgZ2XDpG5kZXJ0IHdlcmRlbiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjMxOCBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06MzQ4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImJ1aWxkaW5nICVzIHVzaW5nIGV4aXN0aW5nICVzIgorbXNnc3RyICIlcyB3aXJkIHVudGVyIEJlbnV0enVuZyBkZXMgZXhpc3RpZXJlbmRlbiAlcyBnZWJhdXQiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbTozMjcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIm9yaWcgZGlyIGAlcycgYWxyZWFkeSBleGlzdHMsIG5vdCBvdmVyd3JpdGluZywgZ2l2aW5nIHVwOyB1c2UgLXNBLCAtc0sgb3IgLSIKKyJzUCB0byBvdmVycmlkZSIKK21zZ3N0ciAiIgorIk9yaWdpbmFsdmVyemVpY2huaXMgwrslc8KrIGV4aXN0aWVydCBiZXJlaXRzLCB3aXJkIG5pY2h0IMO8YmVyc2NocmllYmVuLCAiCisiQWJicnVjaDsgdmVyd2VuZGVuIFNpZSAtc0EsIC1zSyBvZGVyIC1zUCB6dW0gRXJ6d2luZ2VuLiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjMzNQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hlY2sgZm9yIGV4aXN0ZW5jZSBvZiBvcmlnIGRpciBgJXMnIgorbXNnc3RyICJFeGlzdGVueiBkZXMgT3JpZ2luYWx2ZXJ6ZWljaG5pc3NlcyDCuyVzwqsga2FubiBuaWNodCDDvGJlcnByw7xmdCB3ZXJkZW4iCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbTozNjYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidGhlIGRpZmYgbW9kaWZpZXMgdGhlIGZvbGxvd2luZyB1cHN0cmVhbSBmaWxlczogJXMiCittc2dzdHIgIiIKKyJkdXJjaCBkZW4gRGlmZiB3ZXJkZW4gZGllIGZvbGdlbmRlbiBEYXRlaWVuIGRlciBPcmlnaW5hbGF1dG9yZW4gdmVyw6RuZGVydDogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbTozNjgKK21zZ2lkICIiCisidXNlIHRoZSAnMy4wIChxdWlsdCknIGZvcm1hdCB0byBoYXZlIHNlcGFyYXRlIGFuZCBkb2N1bWVudGVkIGNoYW5nZXMgdG8gIgorInVwc3RyZWFtIGZpbGVzLCBzZWUgZHBrZy1zb3VyY2UoMSkiCittc2dzdHIgIiIKKyJ2ZXJ3ZW5kZW4gU2llIGRhcyBGb3JtYXQgwrszLjAgKHF1aWx0KcKrLCB1bSBzZXBhcmF0ZSB1bmQgZG9rdW1lbnRpZXJ0ZSAiCisiw4RuZGVydW5nZW4gYW4gZGVuIERhdGVpZW4gZGVyIE9yaWdpbmFsYXV0b3JlbiB6dSBlcmhhbHRlbiwgc2llaGUgZHBrZy1zb3VyY2UiCisiKDEpIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MzcwCittc2dpZCAiYWJvcnRpbmcgZHVlIHRvIC0tYWJvcnQtb24tdXBzdHJlYW0tY2hhbmdlcyIKK21zZ3N0ciAiQWJicnVjaCBhdWZncnVuZCB2b24gLS1hYm9ydC1vbi11cHN0cmVhbS1jaGFuZ2VzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06Mzg4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzOiB1bnJlcHJlc2VudGFibGUgY2hhbmdlcyB0byBzb3VyY2UiCittc2dzdHIgIiVzOiBuaWNodCBkYXJzdGVsbGJhcmUgw4RuZGVydW5nZW4gYW4gZGVuIFF1ZWxsZW4iCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbToxMTkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIGZpbGVzIGluICVzIHNvdXJjZSBwYWNrYWdlOiAlcy4qIgorbXNnc3RyICJkb3BwZWx0ZSBEYXRlaWVuIGluIFF1ZWxscGFrZXQgJXM6ICVzLioiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbToxMzUKK21zZ2lkICJtaXNzaW5nIG9yaWcudGFyIG9yIGRlYmlhbi50YXIgZmlsZSBpbiB2Mi4wIHNvdXJjZSBwYWNrYWdlIgorbXNnc3RyICJmZWhsZW5kZSBvcmlnLnRhci0gb2RlciBkZWJpYW4udGFyLURhdGVpIGluIHYyLjAtUXVlbGxwYWtldCIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjE1NQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJyZXF1aXJlZCByZW1vdmFsIG9mIGAlcycgaW5zdGFsbGVkIGJ5IG9yaWdpbmFsIHRhcmJhbGwiCittc2dzdHIgImVyZm9yZGVybGljaGUgRW50ZmVybnVuZyB2b24gwrslc8KrLCBpbnN0YWxsaWVydCBkdXJjaCBPcmlnaW5hbC1UYXJiYWxsIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06MjQwCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06MjU1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVuYXBwbHlpbmcgJXMiCittc2dzdHIgIlBhdGNoICVzIHdpcmQgZW50ZmVybnQiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbToyNjMgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjM0NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJubyB1cHN0cmVhbSB0YXJiYWxsIGZvdW5kIGF0ICVzIgorbXNnc3RyICJ1bnRlciAlcyB3dXJkZSBrZWluIFRhcmJhbGwgZGVyIE9yaWdpbmFsYXV0b3JlbiBnZWZ1bmRlbiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjMxNAorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjMyOQorbXNnaWQgInBhdGNoZXMgYXJlIG5vdCBhcHBsaWVkLCBhcHBseWluZyB0aGVtIG5vdyIKK21zZ3N0ciAiUGF0Y2hlcyBzaW5kIG5pY2h0IGFuZ2V3YW5kdCwgd2VyZGVuIGpldHp0IGFuZ2V3ZW5kZXQiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTozMzEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAic2V2ZXJhbCBvcmlnLnRhciBmaWxlcyBmb3VuZCAoJXMgYW5kICVzKSBidXQgb25seSBvbmUgaXMgYWxsb3dlZCIKK21zZ3N0ciAiIgorIm1laHJlcmUgb3JpZy50YXItRGF0ZWllbiBnZWZ1bmRlbiAoJXMgdW5kICVzKSwgYWJlciBudXIgZWluZSBpc3QgZXJsYXVidCIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjM3MAorbXNnaWQgImNvcHkgb2YgdGhlIGRlYmlhbiBkaXJlY3RvcnkiCittc2dzdHIgIktvcGllIGRlcyBkZWJpYW4tVmVyemVpY2huaXNzZXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTozODgKK21zZ2lkICJ1bnJlcHJlc2VudGFibGUgY2hhbmdlcyB0byBzb3VyY2UiCittc2dzdHIgIm5pY2h0IGRhcnN0ZWxsYmFyZSDDhG5kZXJ1bmdlbiBhbiBkZW4gUXVlbGxlbiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjM5MQorbXNnaWQgImxvY2FsIGNoYW5nZXMgZGV0ZWN0ZWQsIHRoZSBtb2RpZmllZCBmaWxlcyBhcmU6IgorbXNnc3RyICJsb2thbGUgw4RuZGVydW5nZW4gZXJrYW5udCwgZGllIHZlcsOkbmRlcnRlbiBEYXRlaWVuIHNpbmQ6IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NDEwCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvYnpyLnBtOjk3CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvbmF0aXZlLnBtOjc2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIi1iIHRha2VzIG9ubHkgb25lIHBhcmFtZXRlciB3aXRoIGZvcm1hdCBgJXMnIgorbXNnc3RyICItYiBha3plcHRpZXJ0IG51ciBlaW5lbiBQYXJhbWV0ZXIgbWl0IGRlbSBGb3JtYXQgwrslc8KrIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NDQ0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJhZGQgJXMgaW4gZGViaWFuL3NvdXJjZS9pbmNsdWRlLWJpbmFyaWVzIGlmIHlvdSB3YW50IHRvIHN0b3JlIHRoZSBtb2RpZmllZCAiCisiYmluYXJ5IGluIHRoZSBkZWJpYW4gdGFyYmFsbCIKK21zZ3N0ciAiIgorImbDvGdlbiBTaWUgJXMgenUgZGViaWFuL3NvdXJjZS9pbmNsdWRlLWJpbmFyaWVzIGhpbnp1LCBmYWxscyBTaWUgZGFzICIKKyJ2ZXLDpG5kZXJ0ZSBQcm9ncmFtbSBpbSBEZWJpYW4tVGFyYmFsbCBzcGVpY2hlcm4gbcO2Y2h0ZW4uIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NDU4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVud2FudGVkIGJpbmFyeSBmaWxlOiAlcyIKK21zZ3N0ciAidW5lcnfDvG5zY2h0ZSBCaW7DpHJkYXRlaTogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo0OTMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorImRldGVjdGVkICVkIHVud2FudGVkIGJpbmFyeSBmaWxlIChhZGQgaXQgaW4gZGViaWFuL3NvdXJjZS9pbmNsdWRlLWJpbmFyaWVzICIKKyJ0byBhbGxvdyBpdHMgaW5jbHVzaW9uKS4iCittc2dpZF9wbHVyYWwgIiIKKyJkZXRlY3RlZCAlZCB1bndhbnRlZCBiaW5hcnkgZmlsZXMgKGFkZCB0aGVtIGluIGRlYmlhbi9zb3VyY2UvaW5jbHVkZS0iCisiYmluYXJpZXMgdG8gYWxsb3cgdGhlaXIgaW5jbHVzaW9uKS4iCittc2dzdHJbMF0gIiIKKyJlcmthbm50ZSAlZCB1bmVyd8O8bnNjaHRlIEJpbsOkcmRhdGVpIChmw7xnZW4gU2llIHNpZSB6dSBkZWJpYW4vc291cmNlL2luY2x1ZGUtIgorImJpbmFyaWVzIGhpbnp1LCB1bSBpaHJlIEF1Zm5haG1lIHp1IGVybGF1YmVuKS4iCittc2dzdHJbMV0gIiIKKyJlcmthbm50ZSAlZCB1bmVyd8O8bnNjaHRlIEJpbsOkcmRhdGVpZW4gKGbDvGdlbiBTaWUgc2llIHp1IGRlYmlhbi9zb3VyY2UvIgorImluY2x1ZGUtYmluYXJpZXMgaGluenUsIHVtIGlocmUgQXVmbmFobWUgenUgZXJsYXViZW4pLiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjUwOAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ5b3UgY2FuIGludGVncmF0ZSB0aGUgbG9jYWwgY2hhbmdlcyB3aXRoICVzIgorbXNnc3RyICJTaWUga8O2bm5lbiBkaWUgbG9rYWxlbiDDhG5kZXJ1bmdlbiBtaXQgJXMgaW50ZWdyaWVyZW4iCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo1MTAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiYWJvcnRpbmcgZHVlIHRvIHVuZXhwZWN0ZWQgdXBzdHJlYW0gY2hhbmdlcywgc2VlICVzIgorbXNnc3RyICIiCisiQWJicnVjaCBhdWZncnVuZCB1bmVyd2FydGV0ZXIgw4RuZGVydW5nZW4gaW4gZGVuIE9yaWdpbmFscXVlbGxlbiwgc2llaGUgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo1MjAgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjY1MworIywgcGVybC1mb3JtYXQKK21zZ2lkICJsb2NhbCBjaGFuZ2VzIGhhdmUgYmVlbiByZWNvcmRlZCBpbiBhIG5ldyBwYXRjaDogJXMiCittc2dzdHIgImxva2FsZSDDhG5kZXJ1bmdlbiB3dXJkZW4gaW4gZWluZW0gbmV1ZW4gUGF0Y2ggYXVmZ2V6ZWljaG5ldDogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo1MjQgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjYwOQorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjYzNyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NjUxCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06MzY5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZW1vdmUgJXMiCittc2dzdHIgIiVzIGthbm4gbmljaHQgZW50ZmVybnQgd2VyZGVuIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NTM0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImFkZGluZyAlcyB0byAlcyIKK21zZ3N0ciAiJXMgd2lyZCB6dSAlcyBoaW56dWdlZsO8Z3QiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo2MDEKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbTozNjUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNvcHkgJXMgdG8gJXMiCittc2dzdHIgIkZlaGxlciBiZWltIEtvcGllcmVuIHZvbiAlcyBuYWNoICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NjI0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZWdpc3RlciBjaGFuZ2VzIGluICVzLCB0aGlzIHBhdGNoIGFscmVhZHkgZXhpc3RzIgorbXNnc3RyICIiCisiw4RuZGVydW5nZW4gaW4gJXMga8O2bm5lbiBuaWNodCByZWdpc3RyaWVydCB3ZXJkZW4sIFBhdGNoIGV4aXN0aWVydCBiZXJlaXRzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NjM4Cittc2dpZCAidGhlcmUgYXJlIG5vIGxvY2FsIGNoYW5nZXMgdG8gcmVjb3JkIgorbXNnc3RyICJlcyBnaWJ0IGtlaW5lIGF1Znp1emVpY2huZW5kZW4gbG9rYWxlbiDDhG5kZXJ1bmdlbiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjY0MworbXNnaWQgIkVudGVyIHRoZSBkZXNpcmVkIHBhdGNoIG5hbWU6ICIKK21zZ3N0ciAiQml0dGUgZ2ViZW4gU2llIGRlbiBnZXfDvG5zY2h0ZW4gTmFtZW4gZsO8ciBkZW4gUGF0Y2ggZWluOiAiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9ienIucG06NTIKK21zZ2lkICIiCisiVGhpcyBzb3VyY2UgcGFja2FnZSBjYW4gb25seSBiZSBtYW5pcHVsYXRlZCB1c2luZyBienIsIHdoaWNoIGlzIG5vdCBpbiB0aGUgIgorIlBBVEguIgorbXNnc3RyICIiCisiRGllc2VzIFF1ZWxscGFrZXQga2FubiBudXIgbWl0IEJ6ciBiZWFyYmVpdGV0IHdlcmRlbiwgd2VsY2hlcyBzaWNoIG5pY2h0IGltICIKKyJQQVRIIGJlZmluZGV0LiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2J6ci5wbTo1OQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisic291cmNlIGRpcmVjdG9yeSBpcyBub3QgdGhlIHRvcCBkaXJlY3Rvcnkgb2YgYSBienIgcmVwb3NpdG9yeSAoJXMvLmJ6ciBub3QgIgorInByZXNlbnQpLCBidXQgRm9ybWF0IGJ6ciB3YXMgc3BlY2lmaWVkIgorbXNnc3RyICIiCisiUXVlbGx2ZXJ6ZWljaG5pcyBpc3QgbmljaHQgZGFzIG9iZXJzdGUgVmVyemVpY2huaXMgZWluZXMgYnpyLURlcG90cyAoJXMvLmJ6ciAiCisiaXN0IG5pY2h0IHZvcmhhbmRlbiksIGFiZXIgZGFzIEZvcm1hdCBienIgd3VyZGUgYW5nZWdlYmVuIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvYnpyLnBtOjY2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGlzIGEgc3ltbGluayIKK21zZ3N0ciAiJXMgaXN0IGVpbiBTeW1saW5rIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvYnpyLnBtOjcyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGlzIGEgc3ltbGluayB0byBvdXRzaWRlICVzIgorbXNnc3RyICIlcyBpc3QgZWluIFN5bWxpbmsgenVtIGF1w59lcmhhbGIgYmVmaW5kbGljaGVuICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvYnpyLnBtOjgzCittc2dpZCAiZG9lc24ndCBjb250YWluIGEgYnpyIHJlcG9zaXRvcnkiCittc2dzdHIgImtlaW4gYnpyLURlcG90IGVudGhhbHRlbiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2J6ci5wbToxMjcKK21zZ2lkICJienIgc3RhdHVzIGV4aXRlZCBub256ZXJvIgorbXNnc3RyICJienIgbWl0IG5pY2h0LU51bGwtU3RhdHVzIGJlZW5kZXQiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9ienIucG06MTI5CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvZ2l0LnBtOjEzMworIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmNvbW1pdHRlZCwgbm90LWlnbm9yZWQgY2hhbmdlcyBpbiB3b3JraW5nIGRpcmVjdG9yeTogJXMiCittc2dzdHIgIiIKKyJub2NoIG5pY2h0IMO8YmVyZ2ViZW5lLCBuaWNodCBpZ25vcmllcnRlIMOEbmRlcnVuZ2VuIGltIEFyYmVpdHN2ZXJ6ZWljaG5pczogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9ienIucG06MTc5Cittc2dpZCAiZm9ybWF0IHYzLjAgdXNlcyBvbmx5IG9uZSBzb3VyY2UgZmlsZSIKK21zZ3N0ciAiRm9ybWF0IHYzLjAgdmVyd2VuZGV0IG51ciBlaW5lIFF1ZWxsZGF0ZWkiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9ienIucG06MTgzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImV4cGVjdGVkICVzLCBnb3QgJXMiCittc2dzdHIgIiVzIGVyd2FydGV0LCAlcyBiZWtvbW1lbiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2N1c3RvbS5wbTo0MAorbXNnaWQgIkZvcm1hdCBgMy4wIChjdXN0b20pJyBpcyBvbmx5IHVzZWQgdG8gY3JlYXRlIHNvdXJjZSBwYWNrYWdlcyIKK21zZ3N0ciAiRm9ybWF0IMK7My4wIChjdXN0b20pwqsgd2lyZCBudXIgenVyIEFubGVndW5nIHZvbiBRdWVsbHBha2V0ZW4gdmVyd2FuZHQiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9jdXN0b20ucG06NDYKK21zZ2lkICJubyBmaWxlcyBpbmRpY2F0ZWQgb24gY29tbWFuZCBsaW5lIgorbXNnc3RyICJrZWluZSBEYXRlaWVuIGF1ZiBkZXIgS29tbWFuZG96ZWlsZSBhbmdlZ2ViZW4iCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9jdXN0b20ucG06NTMKK21zZ2lkICItLXRhcmdldC1mb3JtYXQgb3B0aW9uIGlzIG1pc3NpbmciCittc2dzdHIgIk9wdGlvbiAtLXRhcmdldC1mb3JtYXQgZmVobHQiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9uYXRpdmUucG06NTQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5yZWNvZ25pemVkIGZpbGUgZm9yIGEgbmF0aXZlIHNvdXJjZSBwYWNrYWdlOiAlcyIKK21zZ3N0ciAidW5lcmthbm50ZSBEYXRlaSBmw7xyIG5hdGl2ZXMgUXVlbGxwYWtldDogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9naXQucG06NTUKK21zZ2lkICIiCisiVGhpcyBzb3VyY2UgcGFja2FnZSBjYW4gb25seSBiZSBtYW5pcHVsYXRlZCB1c2luZyBnaXQsIHdoaWNoIGlzIG5vdCBpbiB0aGUgIgorIlBBVEguIgorbXNnc3RyICIiCisiRGllc2VzIFF1ZWxscGFrZXQga2FubiBudXIgbWl0IEdpdCBiZWFyYmVpdGV0IHdlcmRlbiwgd2VsY2hlcyBzaWNoIG5pY2h0IGltICIKKyJQQVRIIGJlZmluZGV0LiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2dpdC5wbTo2MworIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisic291cmNlIGRpcmVjdG9yeSBpcyBub3QgdGhlIHRvcCBkaXJlY3Rvcnkgb2YgYSBnaXQgcmVwb3NpdG9yeSAoJXMvLmdpdCBub3QgIgorInByZXNlbnQpLCBidXQgRm9ybWF0IGdpdCB3YXMgc3BlY2lmaWVkIgorbXNnc3RyICIiCisiUXVlbGx2ZXJ6ZWljaG5pcyBpc3QgbmljaHQgZGFzIG9iZXJzdGUgVmVyemVpY2huaXMgZWluZXMgR2l0LURlcG90cyAoJXMvLmdpdCAiCisiaXN0IG5pY2h0IHZvcmhhbmRlbiksIGFiZXIgZGFzIEZvcm1hdCBnaXQgd3VyZGUgYW5nZWdlYmVuIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvZ2l0LnBtOjY4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImdpdCByZXBvc2l0b3J5ICVzIHVzZXMgc3VibW9kdWxlcy4gVGhpcyBpcyBub3QgeWV0IHN1cHBvcnRlZC4iCittc2dzdHIgIkdpdC1EZXBvdCAlcyB2ZXJ3ZW5kZXQgU3VibW9kdWxlLiBEaWVzIHdpcmQgbm9jaCBuaWNodCB1bnRlcnN0w7x0enQuIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvZ2l0LnBtOjkwCittc2dpZCAiZG9lc24ndCBjb250YWluIGEgZ2l0IHJlcG9zaXRvcnkiCittc2dzdHIgImtlaW4gR2l0LURlcG90IGVudGhhbHRlbiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2dpdC5wbToxMzEKK21zZ2lkICJnaXQgbHMtZmlsZXMgZXhpdGVkIG5vbnplcm8iCittc2dzdHIgImdpdCBscy1maWxlcyBtaXQgbmljaHQtTnVsbC1TdGF0dXMgYmVlbmRldCIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2dpdC5wbToxNDkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY3JlYXRpbmcgc2hhbGxvdyBjbG9uZSB3aXRoIGRlcHRoICVzIgorbXNnc3RyICJlaW4gc2VpY2h0ZXIgS2xvbiBtaXQgVGllZmUgJXMgd2lyZCBlaW5nZXJpY2h0ZXQiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9naXQucG06MTY1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImJ1bmRsaW5nOiAlcyIKK21zZ3N0ciAiQsO8bmRlbG46ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvZ2l0LnBtOjIwMQorbXNnaWQgImZvcm1hdCB2My4wIChnaXQpIHVzZXMgb25seSBvbmUgLmdpdCBmaWxlIgorbXNnc3RyICJGb3JtYXQgdjMuMCAoZ2l0KSB2ZXJ3ZW5kZXQgbnVyIGVpbmUgLmdpdC1EYXRlaSIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2dpdC5wbToyMDcKK21zZ2lkICJmb3JtYXQgdjMuMCAoZ2l0KSB1c2VzIG9ubHkgb25lIC5naXRzaGFsbG93IGZpbGUiCittc2dzdHIgIkZvcm1hdCB2My4wIChnaXQpIHZlcndlbmRldCBudXIgZWluZSAuZ2l0c2hhbGxvdy1EYXRlaSIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2dpdC5wbToyMTAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZm9ybWF0IHYzLjAgKGdpdCkgdW5rbm93biBmaWxlOiAlcyIKK21zZ3N0ciAiRm9ybWF0IHYzLjAgKGdpdCkgdW5iZWthbm50ZSBEYXRlaTogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9naXQucG06MjE0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImZvcm1hdCB2My4wIChnaXQpIGV4cGVjdGVkICVzIgorbXNnc3RyICJGb3JtYXQgdjMuMCAoZ2l0KSBlcndhcnRldGUgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9naXQucG06MjIwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNsb25pbmcgJXMiCittc2dzdHIgIiVzIHdpcmQgZ2VrbG9udCIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2dpdC5wbToyMjcKK21zZ2lkICJzZXR0aW5nIHVwIHNoYWxsb3cgY2xvbmUiCittc2dzdHIgImVpbiBzZWljaHRlciBLbG9uIHdpcmQgZWluZ2VyaWNodGV0IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06NzMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgc2hvdWxkIGJlIGEgZGlyZWN0b3J5IG9yIG5vbi1leGlzdGluZyIKK21zZ3N0ciAiJXMgc29sbHRlIGVpbiBWZXJ6ZWljaG5pcyBzZWluIG9kZXIgbmljaHQgZXhpc3RpZXJlbiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjc5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIHNob3VsZCBiZSBhIGZpbGUgb3Igbm9uLWV4aXN0aW5nIgorbXNnc3RyICIlcyBzb2xsdGUgZWluZSBEYXRlaSBzZWluIG9kZXIgbmljaHQgZXhpc3RpZXJlbiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjEyMAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisidGhlIHNlcmllcyBmaWxlICglcykgY29udGFpbnMgdW5zdXBwb3J0ZWQgb3B0aW9ucyAoJyVzJywgbGluZSAlcyksIGRwa2ctIgorInNvdXJjZSBtaWdodCBmYWlsIHdoZW4gYXBwbHlpbmcgcGF0Y2hlcy4iCittc2dzdHIgIiIKKyJkaWUgU2VyaWVuZGF0ZWkgKCVzKSBlbnRow6RsdCBuaWNodCB1bnRlcnN0w7x0enRlIE9wdGlvbmVuICjCuyVzwqssIFplaWxlICVzKSwgIgorImRwa2ctc291cmNlIGvDtm5udGUgYmVpbSBBbndlbmRlbiBkZXIgUGF0Y2hlcyBzY2hlaXRlcm4uIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06MTM4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCBta2RpciAlcyIKK21zZ3N0ciAiVmVyemVpY2huaXMgJXMga2FubiBuaWNodCBhbmdlbGVndCB3ZXJkZW4iCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbToyMTIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2FuJ3QgY3JlYXRlIHN5bWxpbmsgJXMiCittc2dzdHIgIlN5bWxpbmsgJXMga2FubiBuaWNodCBhbmdlbGVndCB3ZXJkZW4iCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbToyOTQKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbToyOTcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5zdXBwb3J0ZWQgdmVyc2lvbiBvZiB0aGUgcXVpbHQgbWV0YWRhdGE6ICVzIgorbXNnc3RyICJuaWNodCB1bnRlcnN0w7x0enRlIFZlcnNpb24gZGVyIFF1aWx0LU1ldGFkYXRlbjogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9TdWJzdHZhcnMucG06MTUwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImJhZCBsaW5lIGluIHN1YnN0dmFycyBmaWxlICVzIGF0IGxpbmUgJWQiCittc2dzdHIgInVuZ8O8bHRpZ2UgWmVpbGUgaW4gZGVyIHN1YnN0dmFycy1EYXRlaSAlcyBpbiBaZWlsZSAlZCIKKworIzogc2NyaXB0cy9EcGtnL1N1YnN0dmFycy5wbToyMTcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidG9vIG1hbnkgc3Vic3RpdHV0aW9ucyAtIHJlY3Vyc2l2ZSA/IC0gaW4gYCVzJyIKK21zZ3N0ciAienUgdmllbGUgLSByZWt1cnNpdmU/IC0gU3Vic3RpdHV0aW9uZW4gaW4gwrslc8KrIgorCisjOiBzY3JpcHRzL0Rwa2cvU3Vic3R2YXJzLnBtOjIyNAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmtub3duIHN1YnN0aXR1dGlvbiB2YXJpYWJsZSAkeyVzfSIKK21zZ3N0ciAidW5iZWthbm50ZSBTdWJzdGl0dXRpb25zdmFyaWFibGUgJHslc30iCisKKyM6IHNjcmlwdHMvRHBrZy9TdWJzdHZhcnMucG06MjQ4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVudXNlZCBzdWJzdGl0dXRpb24gdmFyaWFibGUgJHslc30iCittc2dzdHIgInVuYmVudXR6dGUgU3Vic3RpdHV0aW9uc3ZhcmlhYmxlICR7JXN9IgorCisjOiBzY3JpcHRzL0Rwa2cvVmFycy5wbTozNAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJzb3VyY2UgcGFja2FnZSBuYW1lIGAlcycgY29udGFpbnMgaWxsZWdhbCBjaGFyYWN0ZXIgYCVzJyIKK21zZ3N0ciAiUXVlbGxwYWtldG5hbWUgwrslc8KrIGVudGjDpGx0IHVuZ8O8bHRpZ2VzIFplaWNoZW4gwrslc8KrIgorCisjOiBzY3JpcHRzL0Rwa2cvVmFycy5wbTozNworIywgcGVybC1mb3JtYXQKK21zZ2lkICJzb3VyY2UgcGFja2FnZSBuYW1lIGAlcycgc3RhcnRzIHdpdGggbm9uLWFscGhhbnVtIgorbXNnc3RyICJRdWVsbHBha2V0bmFtZSDCuyVzwqsgYmVnaW5udCBtaXQgZWluZW0gbmljaHQgYWxwaGFudW1lcmlzY2hlbiBaZWljaGVuIgorCisjOiBzY3JpcHRzL0Rwa2cvVmFycy5wbTo0NgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJzb3VyY2UgcGFja2FnZSBoYXMgdHdvIGNvbmZsaWN0aW5nIHZhbHVlcyAtICVzIGFuZCAlcyIKK21zZ3N0ciAiWndlaSB3aWRlcnNwcsO8Y2hsaWNoZSBXZXJ0ZSBmw7xyIFF1ZWxscGFrZXQgLSAlcyB1bmQgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9WZW5kb3IvRGViaWFuLnBtOjEwNgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGhhcmRlbmluZyBmZWF0dXJlOiAlcyIKK21zZ3N0ciAidW5iZWthbm50ZSBIw6RydHVuZ3NmdW5rdGlvbmFsaXTDpHQ6ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvVmVuZG9yL0RlYmlhbi5wbToxMTAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiaW5jb3JyZWN0IHZhbHVlIGluIGhhcmRlbmluZyBvcHRpb24gb2YgREVCX0JVSUxEX01BSU5UX09QVElPTlM6ICVzIgorbXNnc3RyICIiCisidW5nw7xsdGlnZXIgV2VydCBpbiBkZW4gSMOkcnR1bmdzb3B0aW9uZW4gdm9uIERFQl9CVUlMRF9NQUlOVF9PUFRJT05TOiAlcyIKKworIzogc2NyaXB0cy9EcGtnL1ZlbmRvci9VYnVudHUucG06NjEgc2NyaXB0cy9EcGtnL1ZlbmRvci9VYnVudHUucG06NjMKK21zZ2lkICIiCisiVmVyc2lvbiBudW1iZXIgc3VnZ2VzdHMgVWJ1bnR1IGNoYW5nZXMsIGJ1dCBNYWludGFpbmVyOiBkb2VzIG5vdCBoYXZlIFVidW50dSAiCisiYWRkcmVzcyIKK21zZ3N0ciAiIgorIlZlcnNpb25zbnVtbWVyIGzDpHNzdCBVYnVudHUtw4RuZGVydW5nZW4gdmVybXV0ZW4sIGFiZXIgTWFpbnRhaW5lcjogZW50aMOkbHQgIgorImtlaW5lIFVidW50dS1BZHJlc3NlIgorCisjOiBzY3JpcHRzL0Rwa2cvVmVuZG9yL1VidW50dS5wbTo2NworbXNnaWQgIiIKKyJWZXJzaW9uIG51bWJlciBzdWdnZXN0cyBVYnVudHUgY2hhbmdlcywgYnV0IHRoZXJlIGlzIG5vIFhTQkMtT3JpZ2luYWwtIgorIk1haW50YWluZXIgZmllbGQiCittc2dzdHIgIiIKKyJWZXJzaW9uc251bW1lciBsw6Rzc3QgVWJ1bnR1LcOEbmRlcnVuZ2VuIHZlcm11dGVuLCBhYmVyIGVzIGdpYnQga2VpbiBGZWxkIFhTQkMtIgorIk9yaWdpbmFsLU1haW50YWluZXIiCisKKyM6IHNjcmlwdHMvRHBrZy9WZW5kb3IvVWJ1bnR1LnBtOjEyMworbXNnaWQgIidoYXJkZW5pbmcnIGZsYWcgZm91bmQgYnV0ICdoYXJkZW5pbmctd3JhcHBlcicgbm90IGluc3RhbGxlZCIKK21zZ3N0ciAiIgorIlNjaGFsdGVyIMK7aGFyZGVuaW5nwqsgZ2VmdW5kZW4sIGFiZXIgwrtoYXJkZW5pbmctd3JhcHBlcsKrIG5pY2h0IGluc3RhbGxpZXJ0IgorCisjOiBzY3JpcHRzL0Rwa2cvVmVuZG9yL1VidW50dS5wbToxNDIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAib3ZlcnJpZGluZyAlcyBpbiBlbnZpcm9ubWVudDogJXMiCittc2dzdHIgIiVzIGluIFVtZ2VidW5nIHdpcmQgw7xiZXJzY2hyaWViZW46ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvVmVyc2lvbi5wbToyMDQgc2NyaXB0cy9EcGtnL1ZlcnNpb24ucG06MjA2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGlzIG5vdCBhIHZhbGlkIHZlcnNpb24iCittc2dzdHIgIiVzIGlzdCBrZWluZSBnw7xsdGlnZSBWZXJzaW9uIgorCisjOiBzY3JpcHRzL0Rwa2cvVmVyc2lvbi5wbTozNzEKK21zZ2lkICJ2ZXJzaW9uIG51bWJlciBjYW5ub3QgYmUgZW1wdHkiCittc2dzdHIgIlZlcnNpb25zbnVtbWVyIGRhcmYgbmljaHQgbGVlciBzZWluIgorCisjOiBzY3JpcHRzL0Rwa2cvVmVyc2lvbi5wbTozNzYKK21zZ2lkICJ2ZXJzaW9uIG51bWJlciBkb2VzIG5vdCBzdGFydCB3aXRoIGRpZ2l0IgorbXNnc3RyICJWZXJzaW9uc251bW1lciBiZWdpbm50IG5pY2h0IG1pdCBlaW5lciBaaWZmZXIiCisKKyM6IHNjcmlwdHMvRHBrZy9WZXJzaW9uLnBtOjM4MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ2ZXJzaW9uIG51bWJlciBjb250YWlucyBpbGxlZ2FsIGNoYXJhY3RlciBgJXMnIgorbXNnc3RyICJWZXJzaW9uc251bW1lciBlbnRow6RsdCB1bmfDvGx0aWdlcyBaZWljaGVuIMK7JXPCqyIKKworIzogc2NyaXB0cy9EcGtnL1ZlcnNpb24ucG06Mzg2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImVwb2NoIHBhcnQgb2YgdGhlIHZlcnNpb24gbnVtYmVyIGlzIG5vdCBhIG51bWJlcjogJyVzJyIKK21zZ3N0ciAiRXBvY2gtVGVpbCBkZXIgVmVyc2lvbnNudW1tZXIgaXN0IGtlaW5lIFphaGw6IMK7JXPCqyIKKworI34gbXNnaWQgIiVzOiBkcGtnLWJ1aWxkZmxhZ3MgKG9yaWdpbjogJXMpOiAlcyA9ICVzXG4iCisjfiBtc2dzdHIgIiVzOiBkcGtnLWJ1aWxkZmxhZ3MgKFF1ZWxsZTogJXMpOiAlcyA9ICVzXG4iCisKKyN+IG1zZ2lkICIxIHRvIDMgYXJncyBleHBlY3RlZFxuIgorI34gbXNnc3RyICIxIGJpcyAzIEFyZ3VtZW50ZSBlcndhcnRldFxuIgorCisjfiBtc2dpZCAiY2Fubm90IHJlbmFtZSAlcyB0byAlcyIKKyN+IG1zZ3N0ciAiJXMga2FubiBuaWNodCBpbiAlcyB1bWJlbmFubnQgd2VyZGVuIgorCisjfiBtc2dpZCAibm8gb3JpZy50YXIgZmlsZSBmb3VuZCIKKyN+IG1zZ3N0ciAia2VpbmUgb3JpZy50YXItRGF0ZWkgZ2VmdW5kZW4iCisKKyN+IG1zZ2lkICJuZWVkIGFuIGFjdGlvbiBvcHRpb24iCisjfiBtc2dzdHIgImVpbmUgQWt0aW9ucy1PcHRpb24gd2lyZCBiZW7DtnRpZ3QiCisKKyN+IG1zZ2lkICJlbnRyeSBvZiBBUFQncyAlcyBmaWxlIgorI34gbXNnc3RyICJFaW50cmFnIHZvbiBBUFRzICVzLURhdGVpIgorCisjfiBtc2dpZCAiZXhlYyAlcyIKKyN+IG1zZ3N0ciAiYXVzZsO8aHJlbiB2b24gJXMiCisKKyN+IG1zZ2lkICJjYW5ub3QgZXhlYyBkcGtnIgorI34gbXNnc3RyICJkcGtnIGthbm4gbmljaHQgYXVzZ2Vmw7xocnQgd2VyZGVuIgorCisjfiBtc2dpZCAiZ2l0IGNvbmZpZyBleGl0ZWQgbm9uemVybyIKKyN+IG1zZ3N0ciAiZ2l0IGNvbmZpZyBtaXQgbmljaHQtTnVsbC1TdGF0dXMgYmVlbmRldCIKKworI34gbXNnaWQgImV4ZWN1dGFibGUgYml0IHNldCBvbiAlczsgY2xlYXJpbmciCisjfiBtc2dzdHIgImJlaSAlcyBpc3QgZGFzIEF1c2bDvGhyYmFya2VpdHMtQml0IGdlc2V0enQ7IGRpZXMgd2lyZCBlbnRmZXJudCIKKworI34gbXNnaWQgInVuYWJsZSB0byByZW1vdmUgYCVzJyIKKyN+IG1zZ3N0ciAiwrslc8KrIGthbm4gbmljaHQgZW50ZmVybnQgd2VyZGVuIgorCisjfiBtc2dpZCAibW9kaWZ5aW5nIC5naXQvY29uZmlnIHRvIGNvbW1lbnQgb3V0IHNvbWUgc2V0dGluZ3MiCisjfiBtc2dzdHIgIiIKKyN+ICIuZ2l0L2NvbmZpZyB3aXJkIHZlcsOkbmRlcnQsIHVtIGVpbmlnZSBFaW5zdGVsbHVuZ2VuIGF1c3p1a29tbWVudGllcmVuIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGFwcGVuZCB0byAlcyIKKyN+IG1zZ3N0ciAiYW5ow6RuZ2VuIGFuICVzIG5pY2h0IG3DtmdsaWNoIgorCisjfiBtc2dpZCAiVGhlIGZvbGxvd2luZyBzZXR0aW5nKHMpIHdlcmUgZGlzYWJsZWQgYnkgZHBrZy1zb3VyY2UiCisjfiBtc2dzdHIgIkRpZSBmb2xnZW5kZShuKSBFaW5zdGVsbHVuZ2VuIHd1cmRlbiB2b24gZHBrZy1zb3VyY2UgZGVha3RpdmllcnQiCisKKyN+IG1zZ2lkICJvYmpkdW1wIG9uIGAlcyciCisjfiBtc2dzdHIgIm9iamR1bXAgYXVmIMK7JXPCqyIKKworI34gbXNnaWQgIiVzOiBzZXQgJXMgdG8gZGVmYXVsdCB2YWx1ZTogJXNcbiIKKyN+IG1zZ3N0ciAiJXM6IHNldHplICVzIGF1ZiBTdGFuZGFyZHdlcnQ6ICVzXG4iCisKKyN+IG1zZ2lkICJzb3VyY2UgZm9ybWF0IGAlcycgZGlzY2FyZGVkOiAlcyIKKyN+IG1zZ3N0ciAiUXVlbGxmb3JtYXQgwrslc8KrIHZlcndvcmZlbjogJXMiCisKKyN+IG1zZ2lkICJjYW5ub3Qgb3BlbiAuZHNjIGZpbGUgJXMiCisjfiBtc2dzdHIgImthbm4gLmRzYy1EYXRlaSAlcyBuaWNodCDDtmZmbmVuIgorCisjfiBtc2dpZCAic291cmNlIGNvbnRyb2wgZmlsZSAlcyIKKyN+IG1zZ3N0ciAiUXVlbGwtU3RldWVyZGF0ZWkgJXMiCisKKyN+IG1zZ2lkICJGaWxlcyBmaWVsZCBjb250YWlucyBiYWQgbGluZSBgJXMnIgorI34gbXNnc3RyICJGaWxlcy1GZWxkIGVudGjDpGx0IHVuZ8O8bHRpZ2UgWmVpbGUgwrslc8KrIgorCisjfiBtc2dpZCAiQ29uZmxpY3Rpbmcgc2l6ZXMgYCV1JyBhbmQgYCV1JyBmb3IgZmlsZSBgJXMnIgorI34gbXNnc3RyICJXaWRlcnNwcsO8Y2hsaWNoZSBHcsO2w59lbiDCuyV1wqsgdW5kIMK7JXXCqyBmw7xyIERhdGVpIMK7JXPCqyIKKworI34gbXNnaWQgImZvcmsgZm9yIGR1IgorI34gbXNnc3RyICJGb3JrIGbDvHIgZHUiCisKKyN+IG1zZ2lkICIiCisjfiAiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dXG4iCisjfiAiXG4iCisjfiAiT3B0aW9uczpcbiIKKyN+ICIgIC1wPHBhY2thZ2U+ICAgICAgICAgICAgICBnZW5lcmF0ZSBzeW1ib2xzIGZpbGUgZm9yIHBhY2thZ2UuXG4iCisjfiAiICAtUDxwYWNrYWdlYnVpbGRkaXI+ICAgICAgdGVtcG9yYXJ5IGJ1aWxkIGRpciBpbnN0ZWFkIG9mIGRlYmlhbi90bXAuXG4iCisjfiAiICAtZTxsaWJyYXJ5PiAgICAgICAgICAgICAgZXhwbGljaXRseSBsaXN0IGxpYnJhcmllcyB0byBzY2FuLlxuIgorI34gIiAgLXY8dmVyc2lvbj4gICAgICAgICAgICAgIHZlcnNpb24gb2YgdGhlIHBhY2thZ2VzIChkZWZhdWx0cyB0b1xuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHZlcnNpb24gZXh0cmFjdGVkIGZyb20gZGViaWFuL2NoYW5nZWxvZykuXG4iCisjfiAiICAtYzxsZXZlbD4gICAgICAgICAgICAgICAgY29tcGFyZSBnZW5lcmF0ZWQgc3ltYm9scyBmaWxlIHdpdGggdGhlXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVmZXJlbmNlIGZpbGUgaW4gdGhlIGRlYmlhbiBkaXJlY3RvcnkuXG4iCisjfiAiXHRcdFx0ICAgRmFpbHMgaWYgZGlmZmVyZW5jZSBhcmUgdG9vIGltcG9ydGFudFxuIgorI34gIlx0XHRcdCAgIChsZXZlbCBnb2VzIGZyb20gMCBmb3Igbm8gY2hlY2ssIHRvIDRcbiIKKyN+ICJcdFx0XHQgICBmb3IgYWxsIGNoZWNrcykuIEJ5IGRlZmF1bHQgY2hlY2tzIGF0XG4iCisjfiAiXHRcdFx0ICAgbGV2ZWwgMS5cbiIKKyN+ICIgIC1JPGZpbGU+ICAgICAgICAgICAgICAgICBmb3JjZSB1c2FnZSBvZiA8ZmlsZT4gYXMgcmVmZXJlbmNlIHN5bWJvbHNcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxlIGluc3RlYWQgb2YgdGhlIGRlZmF1bHQgZmlsZS5cbiIKKyN+ICIgIC1PPGZpbGU+ICAgICAgICAgICAgICAgICB3cml0ZSB0byA8ZmlsZT4sIG5vdCAuLi4vREVCSUFOL3N5bWJvbHMuXG4iCisjfiAiICAtTyAgICAgICAgICAgICAgICAgICAgICAgd3JpdGUgdG8gc3Rkb3V0LCBub3QgLi4uL0RFQklBTi9zeW1ib2xzLlxuIgorI34gIiAgLXQgICAgICAgICAgICAgICAgICAgICAgIHdyaXRlIGluIHRlbXBsYXRlIG1vZGUgKHRhZ3MgYXJlIG5vdFxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHByb2Nlc3NlZCBhbmQgaW5jbHVkZWQgaW4gb3V0cHV0KS5cbiIKKyN+ICIgIC1WICAgICAgICAgICAgICAgICAgICAgICB2ZXJib3NlIG91dHB1dC4gV3JpdGUgZGVwcmVjYXRlZCBzeW1ib2xzIGFuZFxuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhdHRlcm4gbWF0Y2hpbmcgc3ltYm9scyBhcyBjb21tZW50c1xuIgorI34gIiAgICAgICAgICAgICAgICAgICAgICAgICAgIChpbiB0ZW1wbGF0ZSBtb2RlIG9ubHkpLlxuIgorI34gIiAgLWQgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXkgZGVidWcgaW5mb3JtYXRpb24gZHVyaW5nIHdvcmsuXG4iCisjfiAiICAtaCwgLS1oZWxwICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyN+ICIgICAgICAtLXZlcnNpb24gICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorI34gbXNnc3RyICIiCisjfiAiQXVmcnVmOiAlcyBbPE9wdGlvbj4gLi4uXVxuIgorI34gIlxuIgorI34gIk9wdGlvbmVuOlxuIgorI34gIiAgLXA8UGFrZXQ+ICAgICAgICAgICAgICAgIGVyc3RlbGxlIFN5bWJvbGRhdGVpIGbDvHIgUGFrZXQuXG4iCisjfiAiICAtUDxQYWtldGJhdXZlcno+ICAgICAgICAgdGVtcG9yw6RyZXMgQmF1dmVyemVpY2huaXMgKHN0YXR0IGRlYmlhbi90bXApLlxuIgorI34gIiAgLWU8QmlibGlvdGhlaz4gICAgICAgICAgIGV4cGxpeml0ZSBMaXN0ZSB2b24genUgZHVyY2hzdWNoZW5kZW4gIgorI34gIkRhdGVpZW4uXG4iCisjfiAiICAtdjxWZXJzaW9uPiAgICAgICAgICAgICAgVmVyc2lvbiBkZXMgUGFrZXRzIChzdGFuZGFyZG3DpMOfaWdcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICBhdXMgZGViaWFuL2NoYW5nZWxvZyBleHRyYWhpZXJ0ZSBWZXJzaW9uKS5cbiIKKyN+ICIgIC1jPFN0dWZlPiAgICAgICAgICAgICAgICB2ZXJnbGVpY2hlIGVyc3RlbGx0ZSBTeW1ib2xkYXRlaSBtaXQgZGVyXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgUmVmZXJlbnpkYXRlaSBpbSBkZWJpYW4tVmVyemVpY2huaXMuXG4iCisjfiAiXHRcdFx0ICAgU2NobMOkZ3QgZmVobCwgZmFsbHMgZGllIFVudGVyc2NoaWVkZSB6dSB3aWNodGlnXG4iCisjfiAiXHRcdFx0ICAgc2luZCAoU3R1ZmUgbMOkdWZ0IHZvbiAwIGbDvHIga2VpbmUgUHLDvGZ1bmcgYmlzIHp1XG4iCisjfiAiXHRcdFx0ICAgNCBmw7xyIGFsbGUgUHLDvGZ1bmdlbikuIFN0YW5kYXJkbcOkw59pZyB3aXJkIGF1ZlxuIgorI34gIlx0XHRcdCAgIFN0dWZlIDEgZ2VwcsO8ZnQuXG4iCisjfiAiICAtSTxEYXRlaT4gICAgICAgICAgICAgICAgZXJ6d2luZ3QgVmVyd2VuZHVuZyB2b24gPERhdGVpPiBzdGF0dCBkZXJcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGFuZGFyZG3DpMOfaWdlbiBEYXRlaSBhbHMgUmVmZXJlbnotU3ltYm9sLSIKKyN+ICJEYXRlaS5cbiIKKyN+ICIgIC1PPERhdGVpPiAgICAgICAgICAgICAgICBzY2hyZWliZSBpbiA8RGF0ZWk+IG5pY2h0IC4uLi9ERUJJQU4vc3ltYm9scy5cbiIKKyN+ICIgIC1PICAgICAgICAgICAgICAgICAgICAgICBzY2hyZWliZSBuYWNoIFN0ZG91dCBuaWNodCAuLi4vREVCSUFOLyIKKyN+ICJzeW1ib2xzLlxuIgorI34gIiAgLXQgICAgICAgICAgICAgICAgICAgICAgIHNjaHJlaWJlIGltIFZvcmxhZ2VubW9kdXMgKE1hcmtpZXJ1bmdlbiAiCisjfiAid2VyZGVuXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgbmljaHQgdmVyYXJiZWl0ZXQgdW5kIGluIGRpZSBBdXNnYWJlICIKKyN+ICJhdWZnZW5vbW1lbikuXG4iCisjfiAiICAtViAgICAgICAgICAgICAgICAgICAgICAgZ2VzY2h3w6R0emlnZSBBdXNnYWJlLiBTY2hyZWliZSB2ZXJhbHRldGUgIgorI34gIlN5bWJvbGVcbiIKKyN+ICIgICAgICAgICAgICAgICAgICAgICAgICAgICB1bmQgTXVzdGVyLCBkaWUgYXVmIFN5bWJvbGUgcGFzc2VuLCBhbHMgIgorI34gIktvbW1tZW50YXJlXG4iCisjfiAiICAgICAgICAgICAgICAgICAgICAgICAgICAgKG51ciBpbSBWb3JsYWdlbi1Nb2R1cykuXG4iCisjfiAiICAtZCAgICAgICAgICAgICAgICAgICAgICAgemVpZ2UgYmVpIEFyYmVpdCBEZWJ1Zy1JbmZvcm1hdGlvbmVuIGFuLlxuIgorI34gIiAgLWgsIC0taGVscCAgICAgICAgICAgICAgIHplaWdlIGRpZXNlIEhpbGZlbWVsZHVuZy5cbiIKKyN+ICIgICAgICAtLXZlcnNpb24gICAgICAgICAgICB6ZWlnZSBkaWUgVmVyc2lvbi5cbiIKKworI34gbXNnaWQgInNvbWUgc3ltYm9scyBkaXNhcHBlYXJlZCBpbiB0aGUgc3ltYm9scyBmaWxlOiAlcyIKKyN+IG1zZ3N0ciAiZWluaWdlIFN5bWJvbGUgc2luZCBhdXMgZGVyIFN5bWJvbGRhdGVpIHZlcnNjaHd1bmRlbjogJXMiCisKKyN+IG1zZ2lkICJmb3JrIGZvciAlcyIKKyN+IG1zZ3N0ciAiRm9yayBmw7xyICVzIgorCisjfiBtc2dpZCAiVW5rbm93biBjaGVja3N1bSBhbGdvcml0aG0gYCVzJywgaWdub3JpbmciCisjfiBtc2dzdHIgIklnbm9yaWVyZSB1bmJla2FubnRlciBQcsO8ZnN1bW1lbmFsZ29yaXRobXVzIMK7JXPCqyIKKworI34gbXNnaWQgIkNoZWNrc3Vtcy0lcyBmaWVsZCBjb250YWlucyBiYWQgbGluZSBgJXMnIgorI34gbXNnc3RyICJQcsO8ZnN1bW1lbi0lcy1GZWxkIGVudGjDpGx0IHVuZ8O8bHRpZ2UgWmVpbGUgwrslc8KrIgorCisjfiBtc2dpZCAieW91IGNhbid0IHVzZSB3aWxkY2FyZHMgb24gdW52ZXJzaW9uZWQgc3ltYm9sczogJXMiCisjfiBtc2dzdHIgIiIKKyN+ICJTaWUga8O2bm5lbiBrZWluZSBKb2tlci1aZWljaGVuIGbDvHIgdW52ZXJzaW9uaWVydGUgU3ltYm9sZSB2ZXJ3ZW5kZW46ICVzIgorCisjfiBtc2dpZCAiRHBrZzo6U291cmNlOjpDb21wcmVzc29yIGNhbiBvbmx5IHN0YXJ0IG9uZSBzdWJwcm9jZXNzIGF0IGEgdGltZSIKKyN+IG1zZ3N0ciAiIgorI34gIkRwa2c6OlNvdXJjZTo6Q29tcHJlc3NvciBrYW5uIG51ciBlaW5lbiBTdWJwcm96ZXNzIGF1ZiBlaW5tYWwgc3RhcnRlbiIKKworI34gbXNnaWQgImZpbGUgYCVzJyBsaXN0ZWQgdHdpY2UgaW4gRmlsZXMgZmllbGQiCisjfiBtc2dzdHIgIkRhdGVpIMK7JXPCqyB6d2VpbWFsIGltIEZlbGQgRmlsZXMgYXVmZ2Vmw7xocnQiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gb3BlbiBzdWJzdHZhcnMgZmlsZSAlczogJXMiCisjfiBtc2dzdHIgImthbm4gc3Vic3R2YXJzLURhdGVpICVzIG5pY2h0IMO2ZmZuZW46ICVzIgorCisjfiBtc2dpZCAiYXBwbHlpbmcgYWxsIHBhdGNoZXMgd2l0aCAlcyIKKyN+IG1zZ3N0ciAid2VuZGUgYWxsZSBQYXRjaGVzIG1pdCAlcyBhbiIKKworI34gbXNnaWQgIkNvdWxkbid0IGNhbGwgZHBrZy1kZWIgb24gJXM6ICVzLCBza2lwcGluZyBwYWNrYWdlIgorI34gbXNnc3RyICJLb25udGUgZHBrZy1kZWIgYXVmICVzIG5pY2h0IGF1ZnJ1ZmVuOiAlcywgw7xiZXJzcHJpbmdlIFBha2V0IgorCisjfiBtc2dpZCAiIgorI34gIlVucHJvY2Vzc2VkIHRleHQgZnJvbSAlcyBjb250cm9sIGZpbGU7IGluZm86XG4iCisjfiAiJXMgLyAlcyIKKyN+IG1zZ3N0ciAiIgorI34gIlVuYmVhcmJlaXRldGVyIFRleHQgYXVzICVzIFN0ZXVlcmRhdGVpOyBJbmZvcm1hdGlvbjpcbiIKKyN+ICIlcyAvICVzIgorCisjfiBtc2dpZCAiZmF0YWwgZXJyb3IiCisjfiBtc2dzdHIgImZhdGFsZXIgRmVobGVyIgorCisjfiBtc2dpZCAiY2FuJ3Qgb3BlbiBmaWxlICVzOiAlcyIKKyN+IG1zZ3N0ciAia2FubiBEYXRlaSAlcyBuaWNodCDDtmZmbmVuOiAlcyIKKworI34gbXNnaWQgImNhbid0IGxvYWQgSU86OlN0cmluZzogJXMiCisjfiBtc2dzdHIgImthbm4gSU86OlN0cmluZyBuaWNodCBsYWRlbjogJXMiCisKKyN+IG1zZ2lkICJubyBjaGFuZ2Vsb2cgZmlsZSBzcGVjaWZpZWQiCisjfiBtc2dzdHIgImtlaW5lIENoYW5nZWxvZy1EYXRlaSBhbmdlZ2ViZW4iCisKKyN+IG1zZ2lkICJjYW4ndCBjbG9zZSBmaWxlICVzOiAlcyIKKyN+IG1zZ3N0ciAia2FubiBEYXRlaSAlcyBuaWNodCBzY2hsaWXDn2VuOiAlcyIKKworI34gbXNnaWQgIkNvdWxkbid0IG9wZW4gb3ZlcnJpZGUgZmlsZSAlcyIKKyN+IG1zZ3N0ciAia29ubnRlIG92ZXJyaWRlLURhdGVpICVzIG5pY2h0IMO2ZmZuZW4iCisKKyN+IG1zZ2lkICJjYW4ndCByZWFkIG92ZXJyaWRlIGZpbGUgJXMiCisjfiBtc2dzdHIgImthbm4gT3ZlcnJpZGUtRGF0ZWkgJXMgbmljaHQgbGVzZW4iCisKKyN+IG1zZ2lkICJlcnJvciBjbG9zaW5nIG92ZXJyaWRlIGZpbGUiCisjfiBtc2dzdHIgIkZlaGxlciBiZWltIFNjaGxpZcOfZW4gZGVyIE92ZXJyaWRlLURhdGVpIgorCisjfiBtc2dpZCAiY2FuJ3QgcmVhZCBzb3VyY2Ugb3ZlcnJpZGUgZmlsZSAlcyIKKyN+IG1zZ3N0ciAia2FubiBRdWVsbC1PdmVycmlkZS1EYXRlaSAlcyBuaWNodCBsZXNlbiIKKworI34gbXNnaWQgImVycm9yIGNsb3Npbmcgc291cmNlIG92ZXJyaWRlIGZpbGUiCisjfiBtc2dzdHIgIkZlaGxlciBiZWltIFNjaGxpZcOfZW4gZGVyIFF1ZWxsLU92ZXJyaWRlLURhdGVpIgorCisjfiBtc2dpZCAicGFyc2luZyBhbiBlbXB0eSBmaWxlICVzIgorI34gbXNnc3RyICJrYW5uIGxlZXJlIERhdGVpICVzIG5pY2h0IGF1c3dlcnRlbiIKKworI34gbXNnaWQgImV4ZWMgZHUiCisjfiBtc2dzdHIgImV4ZWMgZHUiCisKKyN+IG1zZ2lkICJjYW4ndCBmb3JrIgorI34gbXNnc3RyICJrYW5uIGtlaW5lbiBGb3JrIGR1cmNoZsO8aHJlbiIKKworI34gbXNnaWQgImNhbm5vdCBmb3JrIGZvciBkcGtnIC0tc2VhcmNoIgorI34gbXNnc3RyICJrYW5uIEZvcmsgZsO8ciDCu2Rwa2cgLS1zZWFyY2jCqyBuaWNodCBkdXJjaGbDvGhyZW4iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gb3BlbiBjcHV0YWJsZSIKKyN+IG1zZ3N0ciAia29ubnRlIGNwdXRhYmxlIG5pY2h0IMO2ZmZuZW4iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gb3BlbiBvc3RhYmxlIgorI34gbXNnc3RyICJrb25udGUgb3N0YWJsZSBuaWNodCDDtmZmbmVuIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIG9wZW4gdHJpcGxldHRhYmxlIgorI34gbXNnc3RyICJrb25udGUgdHJpcGxldHRhYmxlIG5pY2h0IMO2ZmZuZW4iCisKKyN+IG1zZ2lkICJjYW5ub3QgZm9yayBmb3Igb2JqZHVtcCIKKyN+IG1zZ3N0ciAia2FubiBrZWluZW4gRm9yayBmw7xyIE9iamR1bXAgYXVzZsO8aHJlbiIKKworI34gbXNnaWQgImNhbid0IHdyaXRlICVzIgorI34gbXNnc3RyICJrYW5uICVzIG5pY2h0IHNjaHJlaWJlbiIKKworI34gbXNnaWQgImNhbid0IHJlYWQgJXMiCisjfiBtc2dzdHIgImthbm4gJXMgbmljaHQgbGVzZW4iCisKKyN+IG1zZ2lkICIlcyBoYXMgUEdQIHN0YXJ0IHRva2VuIGJ1dCBub3QgZW5kIHRva2VuIgorI34gbXNnc3RyICIlcyBoYXQgUEdQIMK7c3RhcnTCqy1NYXJraWVydW5nIGFiZXIga2VpbmUgwrtlbmTCqy1NYXJraWVydW5nIgorCisjfiBtc2dpZCAiY2FuJ3QgcmVhZCAlczogJXMiCisjfiBtc2dzdHIgImthbm4gJXMgbmljaHQgbGVzZW46ICVzIgorCisjfiBtc2dpZCAiZXJyb3IgY2xvc2luZyAlczogJXMiCisjfiBtc2dzdHIgIkZlaGxlciBiZWltIFNjaGxpZcOfZW4gdm9uICVzOiAlcyIKKworI34gbXNnaWQgIiVzIGludmFsaWQgKGNvbnRhaW5zIGJsYW5rIGxpbmUpIgorI34gbXNnc3RyICIlcyB1bmfDvGx0aWcgKGVudGjDpGx0IExlZXJ6ZWlsZSkiCisKKyN+IG1zZ2lkICJkdXBsaWNhdGUgc291cmNlIGZpZWxkIGluICVzIgorI34gbXNnc3RyICJkb3BwZWx0ZXMgUXVlbGwtRmVsZCBpbiAlcyIKKworI34gbXNnaWQgImludmFsaWQgc291cmNlIGZpZWxkIGluICVzIgorI34gbXNnc3RyICJ1bmfDvGx0aWdlcyBRdWVsbC1GZWxkIGluICVzIgorCisjfiBtc2dpZCAiZHVwbGljYXRlIGJpbmFyeSBmaWVsZCBpbiAlcyIKKyN+IG1zZ3N0ciAiZG9wcGVsdGVzIEJpbsOkcmZlbGQgaW4gJXMiCisKKyN+IG1zZ2lkICJTdHJhbmdlIHRleHQgZnJvbSAnbWQ1c3VtIDwgJXMnOiAnJXMnIgorI34gbXNnc3RyICJNZXJrd8O8cmRpZ2VyIFRleHQgdm9uIMK7bWQ1c3VtIDwgJXPCqzogwrslc8KrIgorCisjfiBtc2dpZCAiQ291bGRuJ3Qgc3RhdCAlcyIKKyN+IG1zZ3N0ciAia29ubnRlIGtlaW4gU3RhdCBhdWYgJXMgYXVzZsO8aHJlbiIKKworI34gbXNnaWQgImVycm9yIGRvaW5nIGZzdGF0IG9uICVzOiAlcyIKKyN+IG1zZ3N0ciAiRmVobGVyIGJlaW0gRnN0YXQgYXVmICVzOiAlcyIKKworI34gbXNnaWQgImNhbid0IGZvcms6ICVzIgorI34gbXNnc3RyICJrYW5uIGtlaW5lbiBGb3JrIGR1cmNoZsO8aHJlbjogJXMiCisKKyN+IG1zZ2lkICJjYW4ndCBkdXAgJXMiCisjfiBtc2dzdHIgImthbm4gZHVwIHZvbiAlcyBuaWNodCBhdXNmw7xocmVuIgorCisjfiBtc2dpZCAiY2FuJ3QgcmV3aW5kICVzIgorI34gbXNnc3RyICJrYW5uICVzIG5pY2h0IHp1csO8Y2tzcHVsZW4iCisKKyN+IG1zZ2lkICJjYW4ndCBleGVjIG1kNXN1bSIKKyN+IG1zZ3N0ciAia2FubiBtZDVzdW0gbmljaHQgYXVzZsO8aHJlbiIKKworI34gbXNnaWQgImludmFsaWQgbWQ1IG91dHB1dCBmb3IgJXMgKCVzKSIKKyN+IG1zZ3N0ciAidW5nw7xsdGlnZSBtZDUtQXVzZ2FiZSBmw7xyICVzICglcykiCisKKyN+IG1zZ2lkICJVc2FnZTogODIyLWRhdGUiCisjfiBtc2dzdHIgIkF1ZnJ1ZjogODIyLWRhdGUiCisKKyN+IG1zZ2lkICJUaGlzIHByb2dyYW0gaXMgZGVwcmVjYXRlZC4gUGxlYXNlIHVzZSAnZGF0ZSAtUicgaW5zdGVhZC4iCisjfiBtc2dzdHIgIiIKKyN+ICJEaWVzZXMgUHJvZ3JhbW0gaXN0IHZlcmFsdGV0LiBCaXR0ZSB2ZXJ3ZW5kZW4gU2llIHN0YXR0ZGVzc2VuIMK7ZGF0ZSAtUsKrLiIKKworI34gbXNnaWQgImNhbm5vdCBjb21iaW5lICVzIGFuZCAtUyIKKyN+IG1zZ3N0ciAia2FubiAlcyB1bmQgLVMgbmljaHQga29tYmluaWVyZW4iCisKKyN+IG1zZ2lkICIiCisjfiAic3Vic3R2YXJzIHN1cHBvcnQgaXMgZGVwcmVjYXRlZCAoc2VlIFJFQURNRS5mZWF0dXJlLXJlbW92YWwtc2NoZWR1bGUpIgorI34gbXNnc3RyICIiCisjfiAiU3Vic3R2YXJzLVVudGVyc3TDvHR6dW5nIGlzdCB2ZXJhbHRldCAobGVzZW4gU2llIFJFQURNRS5mZWF0dXJlLXJlbW92YWwtIgorI34gInNjaGVkdWxlKSIKKworI34gbXNnaWQgIkRwa2c6OkRlcHM6OlNpbXBsZSBjYW4ndCBldmFsdWF0ZSBpbXBsaWNhdGlvbiB3aXRoIGEgJXMhIgorI34gbXNnc3RyICIiCisjfiAiRHBrZzo6RGVwczo6U2ltcGxlIGthbm4gZGllIEltcGxpa2F0aW9uIHZvbiBlaW5lbSAlcyBuaWNodCBldmFsdWllcmVuISIKKworI34gbXNnaWQgImZhaWx1cmUiCisjfiBtc2dzdHIgIkZlaGxzY2hsYWciCisKKyN+IG1zZ2lkICJmaWVsZCAlcyBoYXMgbmV3bGluZSB0aGVuIG5vbiB3aGl0ZXNwYWNlID4lczwiCisjfiBtc2dzdHIgIkZlbGQgJXMgaGF0IGVpbmVuIFplaWxlbnVtYnJ1Y2ggdW5kIGRhbm4gZWluIG5pY2h0LUxlZXJ6ZWljaGVuID4lczwiCisKKyN+IG1zZ2lkICJmaWVsZCAlcyBoYXMgYmxhbmsgbGluZXMgPiVzPCIKKyN+IG1zZ3N0ciAiRmVsZCAlcyBoYXQgTGVlcnplaWxlbiA+JXM8IgorCisjfiBtc2dpZCAiZmllbGQgJXMgaGFzIHRyYWlsaW5nIG5ld2xpbmUgPiVzPCIKKyN+IG1zZ3N0ciAiRmVsZCAlcyBoYXQgZWluIGFic2NobGllw59lbmRlbiBaZWlsZW51bWJydWNoID4lczwiCisKKyN+IG1zZ2lkICJpbnZhbGlkIGV4ZWMgcGFyYW1ldGVyIGluIGZvcmtfYW5kX2V4ZWMoKSIKKyN+IG1zZ3N0ciAidW5nw7xsdGlnZXIgQXVzZsO8aHJwYXJhbWV0ZXIgaW4gZm9ya19hbmRfZXhlYygpIgorCisjfiBtc2dpZCAibm8gUElEIHNldCwgY2Fubm90IHdhaXQgZW5kIG9mIHByb2Nlc3MiCisjfiBtc2dzdHIgImtlaW5lIFBJRCBnZXNldHp0LCBrYW5uIG5pY2h0IGF1ZiBQcm96ZXNzZW5kZSB3YXJ0ZW4iCisKKyN+IG1zZ2lkICJ0cmllZCB0byBhZGQgZmlsZSBgJXMnIHR3aWNlIgorI34gbXNnc3RyICJ2ZXJzdWNodGUgendlaW1hbCBEYXRlaSDCuyVzwqsgaGluenV6dWbDvGdlbiIKKworI34gbXNnaWQgImRpZmYgYCVzJyBwYXRjaGVzIGZpbGUgd2l0aCBubyBzdWJkaXJlY3RvcnkiCisjfiBtc2dzdHIgIkRpZmYgwrslc8KrIHBhdGNodCBEYXRlaSBvaG5lIFVudGVydmVyemVpY2huaXMiCisKKyN+IG1zZ2lkICJkaWZmIGAlcycgaXMgbWlzc2luZyB0cmFpbGluZyBuZXdsaW5lIgorI34gbXNnc3RyICJEaWZmIMK7JXPCqyBmZWhsdCBlaW4gYWJzY2hsaWXDn2VuZGVyIFplaWxlbnVtYnJ1Y2giCisKKyN+IG1zZ2lkICJjYW5ub3Qgb3BlbiB1cGxvYWQgZmlsZSAlcyBmb3IgcmVhZGluZyIKKyN+IG1zZ3N0ciAia2FubiBob2NoenVsYWRlbmUgRGF0ZWkgJXMgbmljaHQgenVtIExlc2VuIMO2ZmZuZW4iCisKKyN+IG1zZ2lkICJjYW5ub3QgZnN0YXQgdXBsb2FkIGZpbGUgJXMiCisjfiBtc2dzdHIgImthbm4ga2VpbmVuIMK7ZnN0YXTCqyBhdWYgaG9jaHp1bGFkZW5lIERhdGVpICVzIGR1cmNoZsO8aHJlbiIKKworI34gbXNnaWQgInVwbG9hZCBmaWxlICVzIGlzIGVtcHR5IgorI34gbXNnc3RyICJob2NoenVsYWRlbmUgRGF0ZWkgJXMgaXN0IGxlZXIiCisKKyN+IG1zZ2lkICJtZDVzdW0gdXBsb2FkIGZpbGUgJXMiCisjfiBtc2dzdHIgIm1kNXN1bSBkZXIgaG9jaHp1bGFkZW5lbiBEYXRlaSAlcyIKKworI34gbXNnaWQgIm1kNXN1bSB1cGxvYWQgZmlsZSAlcyBnYXZlIHN0cmFuZ2Ugb3V0cHV0IGAlcyciCisjfiBtc2dzdHIgIiIKKyN+ICJEaWUgQXVzZ2FiZSB2b24gbWQ1c3VtIGbDvHIgZGllIGhvY2h6dWxhZGVuZSBEYXRlaSAlcyB3YXIgbWVya3fDvHJkaWc6IMK7JXPCqyIKKworI34gbXNnaWQgIm1kNXN1bSBvZiBzb3VyY2UgZmlsZSAlcyAoJXMpIGlzIGRpZmZlcmVudCBmcm9tIG1kNXN1bSBpbiAlcyAoJXMpIgorI34gbXNnc3RyICIiCisjfiAibWQ1c3VtIGRlciBRdWVsbGRhdGVpICVzICglcykgdW50ZXJzY2hlaWRldCBzaWNoIHZvbiBtZDVzdW0gaW4gJXMgKCVzKSIKKworI34gbXNnaWQgIiIKKyN+ICJcbiIKKyN+ICJDb3B5cmlnaHQgKEMpIDE5OTYgSWFuIEphY2tzb24gYW5kIEtsZWUgRGllbmVzLiIKKyN+IG1zZ3N0ciAiIgorI34gIlxuIgorI34gIkNvcHlyaWdodCAoQykgMTk5NiBJYW4gSmFja3NvbiBhbmQgS2xlZSBEaWVuZXMuIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGRldGVybWluZSBzb3VyY2UgcGFja2FnZSBuYW1lICEiCisjfiBtc2dzdHIgImthbm4gUXVlbGxwYWtldG5hbWVuIG5pY2h0IGJlc3RpbW1lbiEiCisKKyN+IG1zZ2lkICJmb3JrIGZvciB0YXIiCisjfiBtc2dzdHIgIkZvcmsgZsO8ciBUYXIiCisKKyN+IG1zZ2lkICJjaGRpciB0byBhYm92ZSAob3JpZykgc291cmNlICVzIgorI34gbXNnc3RyICJDaGRpciB6dSBvYmlnZW4gKG9yaWdpbmFsLSlRdWVsbGVuICVzIgorCisjfiBtc2dpZCAiZXhlYyB0YXIiCisjfiBtc2dzdHIgImV4ZWMgdGFyIgorCisjfiBtc2dpZCAid3JpdGUgdXNpbmcgZXhpc3RpbmcgdGFyIG1lc3NhZ2UiCisjfiBtc2dzdHIgInNjaHJlaWJlIHVudGVyIEJlbnV0enVuZyBleGlzdGllcmVuZGVyIHRhci1NZWxkdW5nZW4iCisKKyN+IG1zZ2lkICJmb3JrIGZvciBmaW5kIgorI34gbXNnc3RyICJGb3JrIGbDvHIgRmluZCIKKworI34gbXNnaWQgImNoZGlyIHRvICVzIGZvciBmaW5kIgorI34gbXNnc3RyICJ3ZWNoc2xlIGbDvHIgZmluZCBWZXJ6ZWljaG5pcyBuYWNoICVzIgorCisjfiBtc2dpZCAiZXhlYyBmaW5kIgorI34gbXNnc3RyICJmw7xocmUgZmluZCBhdXMiCisKKyN+IG1zZ2lkICJjYW5ub3QgcmVhZCBvcmlnIGxpbmsgJXMiCisjfiBtc2dzdHIgImthbm4gT3JpZ2luYWxsaW5rICVzIG5pY2h0IGxlc2VuIgorCisjfiBtc2dpZCAic29tZXRoaW5nIGVsc2UiCisjfiBtc2dzdHIgImV0d2FzIGFuZGVyZXMiCisKKyN+IG1zZ2lkICJmb3JrIGZvciBkaWZmIgorI34gbXNnc3RyICJGb3JrIGbDvHIgRGlmZiIKKworI34gbXNnaWQgImRpZmYgZ2F2ZSAxIGJ1dCBubyBkaWZmIGxpbmVzIGZvdW5kIgorI34gbXNnc3RyICJEaWZmIGVyZ2FiIDEgYWJlciBrZWluZSBEaWZmemVpbGVuIGdlZnVuZGVuIgorCisjfiBtc2dpZCAiZm9yayBmb3IgMm5kIGZpbmQiCisjfiBtc2dzdHIgIkZvciBmw7xyIHp3ZWl0ZW4gRmluZCIKKworI34gbXNnaWQgImNyZWF0ZSAlcyIKKyN+IG1zZ3N0ciAibGVnZSAlcyBhbiIKKworI34gbXNnaWQgIndyaXRlIGVycm9yIG1zZzogJXMiCisjfiBtc2dzdHIgInNjaHJlaWJlIEZlaGxlcm1lbGR1bmc6ICVzIgorCisjfiBtc2dpZCAiY2Fubm90IG9wZW4gLmRzYyBmaWxlICVzOiAlcyIKKyN+IG1zZ3N0ciAia2FubiAuZHNjLURhdGVpICVzIG5pY2h0IMO2ZmZuZW46ICVzIgorCisjfiBtc2dpZCAiVW5zdXBwb3J0ZWQgZm9ybWF0IG9mIC5kc2MgZmlsZSAoJXMpIgorI34gbXNnc3RyICJOaWNodCB1bnRlcnN0w7x0enRlcyBGb3JtYXQgZGVyIC5kc2MtRGF0ZWkgKCVzKSIKKworI34gbXNnaWQgIkZpbGVzIGZpZWxkIGNvbnRhaW5zIGludmFsaWQgZmlsZW5hbWUgYCVzJyIKKyN+IG1zZ3N0ciAiRmVsZCDCu0ZpbGVzwqsgZW50aMOkbHQgdW5nw7xsdGlnZW4gRGF0ZWluYW1lbiDCuyVzwqsiCisKKyN+IG1zZ2lkICJyZXBlYXRlZCBmaWxlIHR5cGUgLSBmaWxlcyBgJXMnIGFuZCBgJXMnIgorI34gbXNnc3RyICJ3aWVkZXJob2x0ZXIgRGF0ZWl0eXAgLSBEYXRlaWVuIMK7JXPCqyB1bmQgwrslc8KrIgorCisjfiBtc2dpZCAidW5yZWNvZ25pc2VkIGZpbGUgdHlwZSAtIGAlcyciCisjfiBtc2dzdHIgInVuZXJrYW5udGVyIERhdGVpdHlwIC0gwrslc8KrIgorCisjfiBtc2dpZCAiZGViaWFuLnRhciBpbiAlcyBmb3JtYXQgZHNjIgorI34gbXNnc3RyICJkZWJpYW4udGFyIGltICVzLUZvcm1hdCBkc2MiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gY3JlYXRlICVzIHN1YmRpcmVjdG9yeSIKKyN+IG1zZ3N0ciAiRmVobGVyIGJlaW0gQW5sZWdlbiBkZXMgVW50ZXJ2ZXJ6ZWljaG5pc3NlcyAlcyIKKworI34gbXNnaWQgImZvcmsgZm9yIHBhdGNoIgorI34gbXNnc3RyICJGb3JrIGbDvHIgUGF0Y2giCisKKyN+IG1zZ2lkICJ3YWl0IGZvciBwYXRjaCIKKyN+IG1zZ3N0ciAiV2FydGUgYXVmIFBhdGNoIgorCisjfiBtc2dpZCAiZm9yayBmb3IgY3BpbyIKKyN+IG1zZ3N0ciAiRm9yayBmw7xyIENwaW8iCisKKyN+IG1zZ2lkICJmb3JrIGZvciB0YXIgLXQiCisjfiBtc2dzdHIgIkZvcmsgZsO8ciB0YXIgLXQiCisKKyN+IG1zZ2lkICJ0YXJmaWxlIGAlcycgY29udGFpbnMgZmlsZSB3aXRoIG5hbWUgZW5kaW5nIGluIC5kcGtnLW9yaWciCisjfiBtc2dzdHIgIlRhcmRhdGVpIMK7JXPCqyBlbnRow6RsdCBEYXRlaSBkZXJlbiBOYW1lbiBhdWYgwrsuZHBrZy1vcmlnwqsgZW5kZXQiCisKKyN+IG1zZ2lkICJ0YXJmaWxlIGAlcycgY29udGFpbnMgb2JqZWN0IGBkZWJpYW4nIHRoYXQgaXNuJ3QgYSBkaXJlY3RvcnkiCisjfiBtc2dzdHIgIlRhcmRhdGVpIMK7JXPCqyBlbnRow6RsdCBlaW4gT2JqZWt0IMK7ZGViaWFuwqsgZGFzIGtlaW4gVmVyemVpY2huaXMgaXN0IgorCisjfiBtc2dpZCAiRXhwZWN0ZWQgXkBAIGluIGxpbmUgJWQgb2YgZGlmZiBgJXMnIgorI34gbXNnc3RyICJFcndhcnRldGUgXkBAIGluIFplaWxlICVkIGRlcyBEaWZmcyDCuyVzwqsiCisKKyN+IG1zZ2lkICJmb3JrIGZvciB0YXIgLXhrZiAtIgorI34gbXNnc3RyICJGb3JrIGbDvHIgdGFyIC14a2YgLSIKKworI34gbXNnaWQgIndhaXQgZm9yIHRhciAteGtmIC0iCisjfiBtc2dzdHIgIldhcnRlIGF1ZiB0YXIgLXhrZiAtIgorCisjfiBtc2dpZCAiVW5hYmxlIHRvIGNsb3NlIGRpciAlcyIKKyN+IG1zZ3N0ciAiS2FubiBWZXJ6ZWljaG5pcyAlcyBuaWNodCBzY2hsaWXDn2VuIgorCisjfiBtc2dpZCAiVW5hYmxlIHRvIG1rZGlyICVzIgorI34gbXNnc3RyICJLYW5uICVzIG5pY2h0IGVyc3RlbGxlbiIKKworI34gbXNnaWQgImNyZWF0ZSBmaWxlICVzIgorI34gbXNnc3RyICJsZWdlIERhdGVpICVzIGFuIgorCisjfiBtc2dpZCAiZm9yayBmb3IgZ3ppcCIKKyN+IG1zZ3N0ciAiRm9yayBmw7xyIEd6aXAiCisKKyN+IG1zZ2lkICJleGVjIGd6aXAiCisjfiBtc2dzdHIgImV4ZWMgZ3ppcCIKKworI34gbXNnaWQgIndhaXQgZm9yIGd6aXAiCisjfiBtc2dzdHIgIldhcnRlIGF1ZiBnemlwIgorCisjfiBtc2dpZCAiY291bGQgbm90IHN0YXQgb3V0cHV0IGZpbGUgYCVzJyIKKyN+IG1zZ3N0ciAia29ubnRlIGtlaW5lbiBTdGF0IGF1ZiBBdXNnYWJlZGF0ZWkgwrslc8KrIGR1cmNoZsO8aHJlbiIKKworI34gbXNnaWQgImJvZ3VzIGNoYXJhY3RlciBgXFwlcycgaW4gYCVzJyIKKyN+IG1zZ3N0ciAiZmVobGVyaGFmdGVzIFplaWNoZW4gwrtcXCVzwqsgaW4gwrslc8KrIgorCisjfiBtc2dpZCAiY291bGRuJ3Qgb3BlbiAlcyIKKyN+IG1zZ3N0ciAia29ubnRlICVzIG5pY2h0IMO2ZmZuZW4iCisKKyN+IG1zZ2lkICJjb3VsZG4ndCBjbG9zZSAlcyIKKyN+IG1zZ3N0ciAia29ubnRlICVzIG5pY2h0IHNjaGxpZcOfZW4iCisKKyN+IG1zZ2lkICJDYW4ndCBvcGVuICVzIGZvciB0ZXN0OiAlcyIKKyN+IG1zZ3N0ciAiS2FubiAlcyBuaWNodCB6dW0gVGVzdGVuIMO2ZmZuZW46ICVzIgorCisjfiBtc2dpZCAiQ2FuJ3QgZXhlY3V0ZSBvYmpkdW1wOiAlcyIKKyN+IG1zZ3N0ciAiS2FubiBvYmpkdW1wIG5pY2h0IGF1c2bDvGhyZW46ICVzIgorCisjfiBtc2dpZCAiQ2FuJ3Qgb3BlbiAlczogJXMiCisjfiBtc2dzdHIgIkthbm4gJXMgbmljaHQgw7ZmZm5lbjogJXMiCisKKyN+IG1zZ2lkICJDYW4ndCBvcGVuICVzIGZvciB3cml0aW5nOiAlcyIKKyN+IG1zZ3N0ciAiS2FubiAlcyBuaWNodCB6dW0gU2NocmVpYmVuIMO2ZmZuZW46ICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGdldCBsb2dpbiBpbmZvcm1hdGlvbiBmb3IgdXNlcm5hbWUgXCIlc1wiIgorI34gbXNnc3RyICIiCisjfiAiS2FubiBBbm1lbGRlaW5mb3JtYXRpb25lbiBmw7xyIGRlbiBCZW51dHplcm5hbWVuIMK7JXPCqyBuaWNodCBlcm1pdHRlbG4iCisKKyN+IG1zZ2lkICIiCisjfiAibm8gdXRtcCBlbnRyeSBhdmFpbGFibGUgYW5kIExPR05BTUUgbm90IGRlZmluZWQ7IHVzaW5nIHVpZCBvZiBwcm9jZXNzICglZCkiCisjfiBtc2dzdHIgIiIKKyN+ICJrZWluIHV0bXAtRWludHJhZyB2ZXJmw7xnYmFyIHVuZCBMT0dOQU1FIG5pY2h0IGRlZmluaWVydDsgdmVyd2VuZGUgVUlEIHZvbiAiCisjfiAiUHJvemVzcyAoJWQpIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGdldCBsb2dpbiBpbmZvcm1hdGlvbiBmb3IgdWlkICVkIgorI34gbXNnc3RyICJrYW5uIEFubWVsZGVpbmZvcm1hdGlvbmVuIGbDvHIgVUlEICVkIG5pY2h0IGVybWl0dGVsbiIKKworI34gbXNnaWQgIndyaXRlIGVycm9yIG9uIGNsb3NlIGNvbnRyb2wgZGF0YSIKKyN+IG1zZ3N0ciAiU2NocmVpYmZlaGxlciBiZWltIFNjaGxpZcOfZW4gZGVyIFN0ZXVlcmRhdGVuICjCu2NvbnRyb2wgZGF0YcKrKSIKKworI34gbXNnaWQgImNvbnRyb2wgZmlsZSBtdXN0IGhhdmUgYXQgbGVhc3Qgb25lIGJpbmFyeSBwYWNrYWdlIHBhcnQiCisjfiBtc2dzdHIgIlN0ZXVlcmRhdGVpIG11c3MgbWluZGVzdGVucyBlaW5lbiBCaW7DpHJwYWtldC1BbnRlaWwgaGFiZW4iCisKKyN+IG1zZ2lkICIiCisjfiAicGVyLXBhY2thZ2UgcGFyYWdyYXBoICVkIGluIGNvbnRyb2wgaW5mbyBmaWxlIGlzIG1pc3NpbmcgUGFja2FnZSBsaW5lIgorI34gbXNnc3RyICIiCisjfiAiZGllIMK7UGFja2FnZcKrLVplaWxlIGltIHByby1QYWtldCBBYnNhdHogJWQgaW4gZGVyIFN0ZXVlcmluZm9ybWF0aW9uc2RhdGVpICIKKyN+ICJmZWhsdCIKKworI34gbXNnaWQgInNvdXJjZSBwYXJhZ3JhcGggaW4gY29udHJvbCBpbmZvIGZpbGUgaXMgbWlzc2luZyBTb3VyY2UgbGluZSIKKyN+IG1zZ3N0ciAiIgorI34gImRpZSDCu1NvdXJjZcKrLVplaWxlIGltIFF1ZWxsLUFic2F0eiBkZXIgU3RldWVyaW5mb3JtYXRpb25zZGF0ZWkgZmVobHQiCisKKyN+IG1zZ2lkICJmb3JrIGZvciBwYXJzZSBjaGFuZ2Vsb2ciCisjfiBtc2dzdHIgImZvcmtlIHp1bSBBdXN3ZXJ0ZW4gZGVzIGNoYW5nZWxvZ3MiCisKKyN+IG1zZ2lkICJwYXJzZSBjaGFuZ2Vsb2ciCisjfiBtc2dzdHIgIndlcnRlIGNoYW5nZWxvZyBhdXMiCisKKyN+IG1zZ2lkICJleHBlY3RlZCBibGFuayBsaW5lIGJlZm9yZSBQR1Agc2lnbmF0dXJlIgorI34gbXNnc3RyICJlcndhcnRldGUgTGVlcnplaWxlIHZvciBQR1AtU2lnbmF0dXIiCisKKyN+IG1zZ2lkICJmb3VuZCBzZXZlcmFsIGBwYXJhZ3JhcGhzJyB3aGVyZSBvbmx5IG9uZSBleHBlY3RlZCIKKyN+IG1zZ3N0ciAiZmFuZCBtZWhyZXJlIMK7QWJzw6R0emXCqyB3byBudXIgZWluZXIgZXJ3YXJ0ZXQgd3VyZGUiCisKKyN+IG1zZ2lkICJmb3VuZCBzdGFydCBvZiBQR1AgYm9keSBidXQgbm8gc2lnbmF0dXJlIgorI34gbXNnc3RyICJmYW5kIEFuZmFuZyBkZXMgUEdQLUvDtnJwZXJzIGFiZXIga2VpbmUgU2lnbmF0dXIiCisKKyN+IG1zZ2lkICJlbXB0eSBmaWxlIgorI34gbXNnc3RyICJsZWVyZSBEYXRlaSIKKworI34gbXNnaWQgImNob3duIG5ldyBmaWxlcyBsaXN0IGZpbGUiCisjfiBtc2dzdHIgImNob3duIG5ldWUgRGF0ZWllbmxpc3RlLURhdGVpIgorCisjfiBtc2dpZCAidmFsdWUgZnJvbSBub3doZXJlLCB3aXRoIGtleSA+JXM8IGFuZCB2YWx1ZSA+JXM8IgorI34gbXNnc3RyICJXZXJ0IHZvbiBuaXJnZW5kd28sIG1pdCBTY2hsw7xzc2VsID4lczwgdW5kIFdlcnQgPiVzPCIKKworI34gbXNnaWQgImNhbm5vdCBjb21iaW5lIC1iIG9yIC1CIGFuZCAtUyIKKyN+IG1zZ3N0ciAia2FubiAtYiBvZGVyIC1CIG5pY2h0IG1pdCAtUyBrb21iaW5pZXJlbiIKKworI34gbXNnaWQgIiIKKyN+ICJjb3VsZG4ndCBmaW5kIGxpYnJhcnkgJXMgKG5vdGU6IG9ubHkgcGFja2FnZXMgd2l0aCAnc2hsaWJzJyBmaWxlcyBhcmUgIgorI34gImxvb2tlZCBpbnRvKS4iCisjfiBtc2dzdHIgIiIKKyN+ICJrb25udGUgQmlibGlvdGhlayAlcyBuaWNodCBmaW5kZW4gKEhpbndlaXM6IG51ciBQYWtldGUgbWl0IMK7c2hsaWJzwqstIgorI34gIkRhdGVpZW4gd2VyZGVuIGJldHJhY2h0ZXQpLiIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9wby9kcGtnLWRldi5wb3QgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvcG8vZHBrZy1kZXYucG90Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjg5ZGFkMTcKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvcG8vZHBrZy1kZXYucG90CkBAIC0wLDAgKzEsMzAwNyBAQAorIyBTT01FIERFU0NSSVBUSVZFIFRJVExFLgorIyBDb3B5cmlnaHQgKEMpIFlFQVIgU29mdHdhcmUgaW4gdGhlIFB1YmxpYyBJbnRlcmVzdCwgSW5jLgorIyBUaGlzIGZpbGUgaXMgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIHNhbWUgbGljZW5zZSBhcyB0aGUgUEFDS0FHRSBwYWNrYWdlLgorIyBGSVJTVCBBVVRIT1IgPEVNQUlMQEFERFJFU1M+LCBZRUFSLgorIworIywgZnV6enkKK21zZ2lkICIiCittc2dzdHIgIiIKKyJQcm9qZWN0LUlkLVZlcnNpb246IGRwa2cgMS4xNi4xLjFcbiIKKyJSZXBvcnQtTXNnaWQtQnVncy1UbzogZGViaWFuLWRwa2dAbGlzdHMuZGViaWFuLm9yZ1xuIgorIlBPVC1DcmVhdGlvbi1EYXRlOiAyMDExLTEwLTE0IDA3OjExKzAyMDBcbiIKKyJQTy1SZXZpc2lvbi1EYXRlOiBZRUFSLU1PLURBIEhPOk1JK1pPTkVcbiIKKyJMYXN0LVRyYW5zbGF0b3I6IEZVTEwgTkFNRSA8RU1BSUxAQUREUkVTUz5cbiIKKyJMYW5ndWFnZS1UZWFtOiBMQU5HVUFHRSA8TExAbGkub3JnPlxuIgorIkxhbmd1YWdlOiBcbiIKKyJNSU1FLVZlcnNpb246IDEuMFxuIgorIkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD1DSEFSU0VUXG4iCisiQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdFxuIgorIlBsdXJhbC1Gb3JtczogbnBsdXJhbHM9SU5URUdFUjsgcGx1cmFsPUVYUFJFU1NJT047XG4iCisKKyM6IHNjcmlwdHMvZHBrZy1hcmNoaXRlY3R1cmUucGw6MzYgc2NyaXB0cy9kcGtnLWJ1aWxkZmxhZ3MucGw6MzEKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6Mzcgc2NyaXB0cy9kcGtnLWNoZWNrYnVpbGRkZXBzLnBsOjM2CisjOiBzY3JpcHRzL2Rwa2ctZGlzdGFkZGZpbGUucGw6MzMgc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6OTYKKyM6IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjU2IHNjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsOjQ5CisjOiBzY3JpcHRzL2Rwa2ctbWVyZ2VjaGFuZ2Vsb2dzLnBsOjUzIHNjcmlwdHMvZHBrZy1uYW1lLnBsOjQ2CisjOiBzY3JpcHRzL2Rwa2ctcGFyc2VjaGFuZ2Vsb2cucGw6MzEgc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDo2MAorIzogc2NyaXB0cy9kcGtnLXNjYW5zb3VyY2VzLnBsOjc4IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6NTMzCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjQ1NSBzY3JpcHRzL2NoYW5nZWxvZy9kZWJpYW4ucGw6MzQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiRGViaWFuICVzIHZlcnNpb24gJXMuXG4iCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLWFyY2hpdGVjdHVyZS5wbDozOAorbXNnaWQgIiIKKyJcbiIKKyJDb3B5cmlnaHQgKEMpIDE5OTktMjAwMSBNYXJjdXMgQnJpbmttYW5uIDxicmlua21kQGRlYmlhbi5vcmc+LlxuIgorIkNvcHlyaWdodCAoQykgMjAwNC0yMDA1IFNjb3R0IEphbWVzIFJlbW5hbnQgPHNjb3R0QG5ldHNwbGl0LmNvbT4uIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1hcmNoaXRlY3R1cmUucGw6NDIgc2NyaXB0cy9kcGtnLWJ1aWxkZmxhZ3MucGw6MzYKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6NDQgc2NyaXB0cy9kcGtnLWRpc3RhZGRmaWxlLnBsOjM4CisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDoxMDIgc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6NjIKKyM6IHNjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsOjU1IHNjcmlwdHMvZHBrZy1wYXJzZWNoYW5nZWxvZy5wbDozNworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo1NDIgc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDo0NjIKKyM6IHNjcmlwdHMvY2hhbmdlbG9nL2RlYmlhbi5wbDozOQorbXNnaWQgIiIKKyJcbiIKKyJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAyIG9yXG4iCisibGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuXG4iCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLWFyY2hpdGVjdHVyZS5wbDo1MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIFs8YWN0aW9uPl1cbiIKKyJcbiIKKyJPcHRpb25zOlxuIgorIiAgLWE8ZGViaWFuLWFyY2g+ICAgIHNldCBjdXJyZW50IERlYmlhbiBhcmNoaXRlY3R1cmUuXG4iCisiICAtdDxnbnUtc3lzdGVtPiAgICAgc2V0IGN1cnJlbnQgR05VIHN5c3RlbSB0eXBlLlxuIgorIiAgLUwgICAgICAgICAgICAgICAgIGxpc3QgdmFsaWQgYXJjaGl0ZWN0dXJlcy5cbiIKKyIgIC1mICAgICAgICAgICAgICAgICBmb3JjZSBmbGFnIChvdmVycmlkZSB2YXJpYWJsZXMgc2V0IGluIGVudmlyb25tZW50KS5cbiIKKyJcbiIKKyJBY3Rpb25zOlxuIgorIiAgLWwgICAgICAgICAgICAgICAgIGxpc3QgdmFyaWFibGVzIChkZWZhdWx0KS5cbiIKKyIgIC1lPGRlYmlhbi1hcmNoPiAgICBjb21wYXJlIHdpdGggY3VycmVudCBEZWJpYW4gYXJjaGl0ZWN0dXJlLlxuIgorIiAgLWk8YXJjaC1hbGlhcz4gICAgIGNoZWNrIGlmIGN1cnJlbnQgRGViaWFuIGFyY2hpdGVjdHVyZSBpcyA8YXJjaC1hbGlhcz4uXG4iCisiICAtcTx2YXJpYWJsZT4gICAgICAgcHJpbnRzIG9ubHkgdGhlIHZhbHVlIG9mIDx2YXJpYWJsZT4uXG4iCisiICAtcyAgICAgICAgICAgICAgICAgcHJpbnQgY29tbWFuZCB0byBzZXQgZW52aXJvbm1lbnQgdmFyaWFibGVzLlxuIgorIiAgLXUgICAgICAgICAgICAgICAgIHByaW50IGNvbW1hbmQgdG8gdW5zZXQgZW52aXJvbm1lbnQgdmFyaWFibGVzLlxuIgorIiAgLWMgPGNvbW1hbmQ+ICAgICAgIHNldCBlbnZpcm9ubWVudCBhbmQgcnVuIHRoZSBjb21tYW5kIGluIGl0LlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLnBsOjEyMCBzY3JpcHRzL2Rwa2ctYnVpbGRmbGFncy5wbDo5MQorIzogc2NyaXB0cy9kcGtnLWRpc3RhZGRmaWxlLnBsOjY4IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjE5NAorIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MTMzIHNjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsOjE0MQorIzogc2NyaXB0cy9kcGtnLXBhcnNlY2hhbmdlbG9nLnBsOjExMyBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjExOQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiBgJXMnIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1hcmNoaXRlY3R1cmUucGw6MTQ0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVua25vd24gRGViaWFuIGFyY2hpdGVjdHVyZSAlcywgeW91IG11c3Qgc3BlY2lmeSBHTlUgc3lzdGVtIHR5cGUsIHRvbyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLnBsOjE1MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmtub3duIEdOVSBzeXN0ZW0gdHlwZSAlcywgeW91IG11c3Qgc3BlY2lmeSBEZWJpYW4gYXJjaGl0ZWN0dXJlLCB0b28iCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLWFyY2hpdGVjdHVyZS5wbDoxNTgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5rbm93biBkZWZhdWx0IEdOVSBzeXN0ZW0gdHlwZSBmb3IgRGViaWFuIGFyY2hpdGVjdHVyZSAlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLnBsOjE2MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiRGVmYXVsdCBHTlUgc3lzdGVtIHR5cGUgJXMgZm9yIERlYmlhbiBhcmNoICVzIGRvZXMgbm90IG1hdGNoIHNwZWNpZmllZCBHTlUgIgorInN5c3RlbSB0eXBlICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1hcmNoaXRlY3R1cmUucGw6MTgwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIlNwZWNpZmllZCBHTlUgc3lzdGVtIHR5cGUgJXMgZG9lcyBub3QgbWF0Y2ggZ2NjIHN5c3RlbSB0eXBlICVzLiIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLnBsOjIyNQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgYSBzdXBwb3J0ZWQgdmFyaWFibGUgbmFtZSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRmbGFncy5wbDozMworbXNnaWQgIiIKKyJcbiIKKyJDb3B5cmlnaHQgKEMpIDIwMTAtMjAxMSBSYXBoYWVsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4uIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZGZsYWdzLnBsOjQ0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJVc2FnZTogJXMgWzxhY3Rpb24+XVxuIgorIlxuIgorIkFjdGlvbnM6XG4iCisiICAtLWdldCA8ZmxhZz4gICAgICAgb3V0cHV0IHRoZSByZXF1ZXN0ZWQgZmxhZyB0byBzdGRvdXQuXG4iCisiICAtLW9yaWdpbiA8ZmxhZz4gICAgb3V0cHV0IHRoZSBvcmlnaW4gb2YgdGhlIGZsYWcgdG8gc3Rkb3V0OlxuIgorIiAgICAgICAgICAgICAgICAgICAgIHZhbHVlIGlzIG9uZSBvZiB2ZW5kb3IsIHN5c3RlbSwgdXNlciwgZW52LlxuIgorIiAgLS1saXN0ICAgICAgICAgICAgIG91dHB1dCBhIGxpc3Qgb2YgdGhlIGZsYWdzIHN1cHBvcnRlZCBieSB0aGUgY3VycmVudCAiCisidmVuZG9yLlxuIgorIiAgLS1leHBvcnQ9KHNofG1ha2V8Y29uZmlndXJlKVxuIgorIiAgICAgICAgICAgICAgICAgICAgIG91dHB1dCBzb21ldGhpbmcgY29udmVuaWVudCB0byBpbXBvcnQgdGhlXG4iCisiICAgICAgICAgICAgICAgICAgICAgY29tcGlsYXRpb24gZmxhZ3MgaW4gYSBzaGVsbCBzY3JpcHQsIGluIG1ha2UsXG4iCisiICAgICAgICAgICAgICAgICAgICAgb3Igb24gYSAuL2NvbmZpZ3VyZSBjb21tYW5kIGxpbmUuXG4iCisiICAtLWR1bXAgICAgICAgICAgICAgb3V0cHV0IGFsbCBjb21waWxhdGlvbiBmbGFncyB3aXRoIHRoZWlyIHZhbHVlc1xuIgorIiAgLS1oZWxwICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRmbGFncy5wbDo2NiBzY3JpcHRzL2Rwa2ctYnVpbGRmbGFncy5wbDo3MgorIzogc2NyaXB0cy9kcGtnLWJ1aWxkZmxhZ3MucGw6Nzcgc2NyaXB0cy9kcGtnLWJ1aWxkZmxhZ3MucGw6ODEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidHdvIGNvbW1hbmRzIHNwZWNpZmllZDogLS0lcyBhbmQgLS0lcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRmbGFncy5wbDo3MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBuZWVkcyBhIHBhcmFtZXRlciIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjM5Cittc2dpZCAiIgorIlxuIgorIkNvcHlyaWdodCAoQykgMTk5NiBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAgV2ljaGVydCBBa2tlcm1hblxuIgorIkNvcHlyaWdodCAoQykgMjAwNyBGcmFuayBMaWNodGVuaGVsZCIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjUxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJcbiIKKyJVc2FnZTogJXMgWzxvcHRpb25zPiAuLi5dXG4iCisiXG4iCisiT3B0aW9uczpcbiIKKyIgIC1yPGdhaW4tcm9vdC1jb21tYW5kPlxuIgorIiAgICAgICAgICAgICAgICAgY29tbWFuZCB0byBnYWluIHJvb3QgcHJpdmlsZWdlcyAoZGVmYXVsdCBpcyBmYWtlcm9vdCkuXG4iCisiICAtUjxydWxlcz4gICAgICBydWxlcyBmaWxlIHRvIGV4ZWN1dGUgKGRlZmF1bHQgaXMgZGViaWFuL3J1bGVzKS5cbiIKKyIgIC1wPHNpZ24tY29tbWFuZD5cbiIKKyIgIC1kICAgICAgICAgICAgIGRvIG5vdCBjaGVjayBidWlsZCBkZXBlbmRlbmNpZXMgYW5kIGNvbmZsaWN0cy5cbiIKKyIgIC1EICAgICAgICAgICAgIGNoZWNrIGJ1aWxkIGRlcGVuZGVuY2llcyBhbmQgY29uZmxpY3RzLlxuIgorIiAgLVQ8dGFyZ2V0PiAgICAgY2FsbCBkZWJpYW4vcnVsZXMgPHRhcmdldD4gd2l0aCB0aGUgcHJvcGVyIGVudmlyb25tZW50XG4iCisiICAtLWFzLXJvb3QgICAgICBlbnN1cmUgLVQgY2FsbHMgdGhlIHRhcmdldCB3aXRoIHJvb3QgcmlnaHRzXG4iCisiICAtals8bnVtYmVyPl0gICBzcGVjaWZ5IGpvYnMgdG8gcnVuIHNpbXVsdGFuZW91c2x5IH0gcGFzc2VkIHRvIGRlYmlhbi8iCisicnVsZXNcbiIKKyIgIC1rPGtleWlkPiAgICAgIHRoZSBrZXkgdG8gdXNlIGZvciBzaWduaW5nLlxuIgorIiAgLXNncGcgICAgICAgICAgdGhlIHNpZ24tY29tbWFuZCBpcyBjYWxsZWQgbGlrZSBHUEcuXG4iCisiICAtc3BncCAgICAgICAgICB0aGUgc2lnbi1jb21tYW5kIGlzIGNhbGxlZCBsaWtlIFBHUC5cbiIKKyIgIC11cyAgICAgICAgICAgIHVuc2lnbmVkIHNvdXJjZS5cbiIKKyIgIC11YyAgICAgICAgICAgIHVuc2lnbmVkIGNoYW5nZXMuXG4iCisiICAtYTxhcmNoPiAgICAgICBEZWJpYW4gYXJjaGl0ZWN0dXJlIHdlIGJ1aWxkIGZvciAoaW1wbGllcyAtZCkuXG4iCisiICAtYiAgICAgICAgICAgICBiaW5hcnktb25seSwgZG8gbm90IGJ1aWxkIHNvdXJjZS4gICB9IGFsc28gcGFzc2VkIHRvXG4iCisiICAtQiAgICAgICAgICAgICBiaW5hcnktb25seSwgbm8gYXJjaC1pbmRlcCBmaWxlcy4gICB9IGRwa2ctZ2VuY2hhbmdlc1xuIgorIiAgLUEgICAgICAgICAgICAgYmluYXJ5LW9ubHksIG9ubHkgYXJjaC1pbmRlcCBmaWxlcy4gfVxuIgorIiAgLVMgICAgICAgICAgICAgc291cmNlIG9ubHksIG5vIGJpbmFyeSBmaWxlcy4gICAgIH1cbiIKKyIgIC1GICAgICAgICAgICAgIG5vcm1hbCBmdWxsIGJ1aWxkIChiaW5hcmllcyBhbmQgc291cmNlcykuXG4iCisiICAtdDxzeXN0ZW0+ICAgICBzZXQgR05VIHN5c3RlbSB0eXBlLiAgICAgICAgICAgfSBwYXNzZWQgdG8gZHBrZy0iCisiYXJjaGl0ZWN0dXJlXG4iCisiICAtdjx2ZXJzaW9uPiAgICBjaGFuZ2VzIHNpbmNlIHZlcnNpb24gPHZlcnNpb24+LiAgICAgIH1cbiIKKyIgIC1tPG1haW50PiAgICAgIG1haW50YWluZXIgZm9yIHBhY2thZ2UgaXMgPG1haW50Pi4gICAgfVxuIgorIiAgLWU8bWFpbnQ+ICAgICAgbWFpbnRhaW5lciBmb3IgcmVsZWFzZSBpcyA8bWFpbnQ+LiAgICB9IG9ubHkgcGFzc2VkXG4iCisiICAtQzxkZXNjZmlsZT4gICBjaGFuZ2VzIGFyZSBkZXNjcmliZWQgaW4gPGRlc2NmaWxlPi4gIH0gdG8gZHBrZy1nZW5jaGFuZ2VzXG4iCisiICAtc2kgKGRlZmF1bHQpICBzcmMgaW5jbHVkZXMgb3JpZyBpZiBuZXcgdXBzdHJlYW0uICAgIH1cbiIKKyIgIC1zYSAgICAgICAgICAgIHVwbG9hZGVkIHNyYyBhbHdheXMgaW5jbHVkZXMgb3JpZy4gICAgfVxuIgorIiAgLXNkICAgICAgICAgICAgdXBsb2FkZWQgc3JjIGlzIGRpZmYgYW5kIC5kc2Mgb25seS4gICB9XG4iCisiICAtc24gICAgICAgICAgICBmb3JjZSBEZWJpYW4gbmF0aXZlIHNvdXJjZSBmb3JtYXQuICAgICAgfVxuIgorIiAgLXNbc0FrdXJLVVJdICAgc2VlIGRwa2ctc291cmNlIGZvciBleHBsYW5hdGlvbi4gICAgICAgIH0gb25seSBwYXNzZWRcbiIKKyIgIC16PGxldmVsPiAgICAgIGNvbXByZXNzaW9uIGxldmVsIG9mIHNvdXJjZSAgICAgICAgICAgICB9IHRvIGRwa2ctc291cmNlXG4iCisiICAtWjxjb21wcmVzc29yPiBjb21wcmVzc2lvbiB0byB1c2UgZm9yIHNvdXJjZSAgICAgICAgICAgfVxuIgorIiAgLW5jICAgICAgICAgICAgZG8gbm90IGNsZWFuIHNvdXJjZSB0cmVlIChpbXBsaWVzIC1iKS5cbiIKKyIgIC10YyAgICAgICAgICAgIGNsZWFuIHNvdXJjZSB0cmVlIHdoZW4gZmluaXNoZWQuXG4iCisiICAtYXAgICAgICAgICAgICBhZGQgcGF1c2UgYmVmb3JlIHN0YXJ0aW5nIHNpZ25hdHVyZSBwcm9jZXNzLlxuIgorIiAgLWlbPHJlZ2V4Pl0gICAgaWdub3JlIGRpZmZzIG9mIGZpbGVzIG1hdGNoaW5nIHJlZ2V4LiAgICB9IG9ubHkgcGFzc2VkXG4iCisiICAtSVs8cGF0dGVybj5dICBmaWx0ZXIgb3V0IGZpbGVzIHdoZW4gYnVpbGRpbmcgdGFyYmFsbHMuIH0gdG8gZHBrZy1zb3VyY2VcbiIKKyIgIC0tc291cmNlLW9wdGlvbj08b3B0PlxuIgorIlx0XHQgcGFzcyBvcHRpb24gPG9wdD4gdG8gZHBrZy1zb3VyY2VcbiIKKyIgIC0tY2hhbmdlcy1vcHRpb249PG9wdD5cbiIKKyJcdFx0IHBhc3Mgb3B0aW9uIDxvcHQ+IHRvIGRwa2ctZ2VuY2hhbmdlc1xuIgorIiAgLS1hZG1pbmRpcj08ZGlyZWN0b3J5PlxuIgorIiAgICAgICAgICAgICAgICAgY2hhbmdlIHRoZSBhZG1pbmlzdHJhdGl2ZSBkaXJlY3RvcnkuXG4iCisiICAtaCwgLS1oZWxwICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgICAgIC0tdmVyc2lvbiAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjIwMCBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjIwNgorIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDoyMTIgc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDoyMTgKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6MjIzIHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjE0MworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6MTQ2IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjE1MAorIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6MTU0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCBjb21iaW5lICVzIGFuZCAlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjIzNiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjIwMgorbXNnaWQgIi1FIGFuZCAtVyBhcmUgZGVwcmVjYXRlZCwgdGhleSBhcmUgd2l0aG91dCBlZmZlY3QiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDoyNDAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gb3IgYXJndW1lbnQgJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDoyNTAKK21zZ2lkICJ1c2luZyBhIGdhaW4tcm9vdC1jb21tYW5kIHdoaWxlIGJlaW5nIHJvb3QiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDoyNTYKK21zZ2lkICIiCisiZmFrZXJvb3Qgbm90IGZvdW5kLCBlaXRoZXIgaW5zdGFsbCB0aGUgZmFrZXJvb3RcbiIKKyJwYWNrYWdlLCBzcGVjaWZ5IGEgY29tbWFuZCB3aXRoIHRoZSAtciBvcHRpb24sIG9yIHJ1biB0aGlzIGFzIHJvb3QiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDoyNjAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZ2Fpbi1yb290LWNvbW1tYW5kICclcycgbm90IGZvdW5kIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6Mjc5Cittc2dpZCAidW5rbm93biBzaWduIGNvbW1hbmQsIGFzc3VtaW5nIHBncCBzdHlsZSBpbnRlcmZhY2UiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDoyODIKK21zZ2lkICJQR1Agc3VwcG9ydCBpcyBkZXByZWNhdGVkIChzZWUgUkVBRE1FLmZlYXR1cmUtcmVtb3ZhbC1zY2hlZHVsZSkiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDozMDEKK21zZ2lkICJzb3VyY2UgcGFja2FnZSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjMwMgorbXNnaWQgInNvdXJjZSB2ZXJzaW9uIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6MzEyCittc2dpZCAic291cmNlIGNoYW5nZWQgYnkiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDozMzAKK21zZ2lkICJob3N0IGFyY2hpdGVjdHVyZSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjM0MworbXNnaWQgImRlYmlhbi9ydWxlcyBpcyBub3QgZXhlY3V0YWJsZTogZml4aW5nIHRoYXQuIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6MzYyCittc2dpZCAiQnVpbGQgZGVwZW5kZW5jaWVzL2NvbmZsaWN0cyB1bnNhdGlzZmllZDsgYWJvcnRpbmcuIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6MzYzCittc2dpZCAiKFVzZSAtZCBmbGFnIHRvIG92ZXJyaWRlLikiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDozNjYKK21zZ2lkICJUaGlzIGlzIGN1cnJlbnRseSBhIG5vbi1mYXRhbCB3YXJuaW5nIHdpdGggLVMsIGJ1dCIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjM2NworbXNnaWQgIndpbGwgcHJvYmFibHkgYmVjb21lIGZhdGFsIGluIHRoZSBmdXR1cmUuIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6Mzg5Cittc2dpZCAiIgorIml0IGlzIGEgYmFkIGlkZWEgdG8gZ2VuZXJhdGUgYSBzb3VyY2UgcGFja2FnZSB3aXRob3V0IGNsZWFuaW5nIHVwIGZpcnN0LCBpdCAiCisibWlnaHQgY29udGFpbiB1bmRlc2lyZWQgZmlsZXMuIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6NDAyCittc2dpZCAiUHJlc3MgdGhlIHJldHVybiBrZXkgdG8gc3RhcnQgc2lnbmluZyBwcm9jZXNzXG4iCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDo0MDkKK21zZ2lkICJGYWlsZWQgdG8gc2lnbiAuZHNjIGFuZCAuY2hhbmdlcyBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6NDI0IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6NDI4CisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjQ0MQorbXNnaWQgIndyaXRlIGNoYW5nZXMgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjQ0MAorbXNnaWQgImRwa2ctZ2VuY2hhbmdlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjQ0OQorbXNnaWQgInNvdXJjZSBvbmx5IHVwbG9hZDogRGViaWFuLW5hdGl2ZSBwYWNrYWdlIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6NDUxCittc2dpZCAic291cmNlIG9ubHksIGRpZmYtb25seSB1cGxvYWQgKG9yaWdpbmFsIHNvdXJjZSBOT1QgaW5jbHVkZWQpIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6NDUzCittc2dpZCAic291cmNlIG9ubHkgdXBsb2FkIChvcmlnaW5hbCBzb3VyY2UgaXMgaW5jbHVkZWQpIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6NDU2IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6NDY0Cittc2dpZCAiZnVsbCB1cGxvYWQgKG9yaWdpbmFsIHNvdXJjZSBpcyBpbmNsdWRlZCkiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDo0NTgKK21zZ2lkICJiaW5hcnkgb25seSB1cGxvYWQgKG5vIHNvdXJjZSBpbmNsdWRlZCkiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDo0NjAKK21zZ2lkICJmdWxsIHVwbG9hZDsgRGViaWFuLW5hdGl2ZSBwYWNrYWdlIChmdWxsIHNvdXJjZSBpcyBpbmNsdWRlZCkiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDo0NjIKK21zZ2lkICJiaW5hcnkgYW5kIGRpZmYgdXBsb2FkIChvcmlnaW5hbCBzb3VyY2UgTk9UIGluY2x1ZGVkKSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjQ2OQorbXNnaWQgIkZhaWxlZCB0byBzaWduIC5jaGFuZ2VzIGZpbGUiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDo0ODgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRldGVybWluZSAlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctY2hlY2tidWlsZGRlcHMucGw6NDIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiVXNhZ2U6ICVzIFs8b3B0aW9uPi4uLl0gWzxjb250cm9sLWZpbGU+XSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctY2hlY2tidWlsZGRlcHMucGw6NDQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC1CICAgICAgICAgICAgIGJpbmFyeS1vbmx5LCBpZ25vcmUgLUluZGVwLlxuIgorIiAgLWQgYnVpbGQtZGVwcyAgdXNlIGdpdmVuIHN0cmluZyBhcyBidWlsZCBkZXBlbmRlbmNpZXMgaW5zdGVhZCBvZlxuIgorIiAgICAgICAgICAgICAgICAgcmV0cmlldmluZyB0aGVtIGZyb20gY29udHJvbCBmaWxlXG4iCisiICAtYyBidWlsZC1jb25mICB1c2UgZ2l2ZW4gc3RyaW5nIGZvciBidWlsZCBjb25mbGljdHMgaW5zdGVhZCBvZlxuIgorIiAgICAgICAgICAgICAgICAgcmV0cmlldmluZyB0aGVtIGZyb20gY29udHJvbCBmaWxlXG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+XG4iCisiICAgICAgICAgICAgICAgICBjaGFuZ2UgdGhlIGFkbWluaXN0cmF0aXZlIGRpcmVjdG9yeS5cbiIKKyIgIC1oLCAtLWhlbHAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAgICAgLS12ZXJzaW9uICBzaG93IHRoZSB2ZXJzaW9uLiIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctY2hlY2tidWlsZGRlcHMucGw6NTUKK21zZ2lkICIiCisiPGNvbnRyb2wtZmlsZT4gaXMgdGhlIGNvbnRyb2wgZmlsZSB0byBwcm9jZXNzIChkZWZhdWx0OiBkZWJpYW4vY29udHJvbCkuIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1jaGVja2J1aWxkZGVwcy5wbDoxMDUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXM6IFVubWV0IGJ1aWxkIGRlcGVuZGVuY2llczogIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1jaGVja2J1aWxkZGVwcy5wbDoxMDkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXM6IEJ1aWxkIGNvbmZsaWN0czogIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1jaGVja2J1aWxkZGVwcy5wbDoxODQgc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDoyNTMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZXJyb3Igb2NjdXJyZWQgd2hpbGUgcGFyc2luZyAlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctZGlzdGFkZGZpbGUucGw6MzUKK21zZ2lkICIiCisiXG4iCisiQ29weXJpZ2h0IChDKSAxOTk2IElhbiBKYWNrc29uLiIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctZGlzdGFkZGZpbGUucGw6NDYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4uLi5dIDxmaWxlbmFtZT4gPHNlY3Rpb24+IDxwcmlvcml0eT5cbiIKKyJcbiIKKyJPcHRpb25zOlxuIgorIiAgLWY8ZmlsZXNsaXN0ZmlsZT4gICAgICAgIHdyaXRlIGZpbGVzIGhlcmUgaW5zdGVhZCBvZiBkZWJpYW4vZmlsZXMuXG4iCisiICAtaCwgLS1oZWxwICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgICAgICAtLXZlcnNpb24gICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1kaXN0YWRkZmlsZS5wbDo3MgorbXNnaWQgIm5lZWQgZXhhY3RseSBhIGZpbGVuYW1lLCBzZWN0aW9uIGFuZCBwcmlvcml0eSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctZGlzdGFkZGZpbGUucGw6NzYKK21zZ2lkICJmaWxlbmFtZSwgc2VjdGlvbiBhbmQgcHJpb3JpdHkgbWF5IGNvbnRhaW4gbm8gd2hpdGVzcGFjZSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctZGlzdGFkZGZpbGUucGw6Nzkgc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MzM0Cittc2dpZCAib3BlbiBuZXcgZmlsZXMgbGlzdCBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1kaXN0YWRkZmlsZS5wbDo4NCBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDozNDUKK21zZ2lkICJjb3B5IG9sZCBlbnRyeSB0byBuZXcgZmlsZXMgbGlzdCBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1kaXN0YWRkZmlsZS5wbDo4NyBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDozNDkKK21zZ2lkICJyZWFkIG9sZCBmaWxlcyBsaXN0IGZpbGUiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLWRpc3RhZGRmaWxlLnBsOjkwIHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjM1OQorbXNnaWQgIndyaXRlIG5ldyBlbnRyeSB0byBuZXcgZmlsZXMgbGlzdCBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1kaXN0YWRkZmlsZS5wbDo5MSBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDozNjAKK21zZ2lkICJjbG9zZSBuZXcgZmlsZXMgbGlzdCBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1kaXN0YWRkZmlsZS5wbDo5MyBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDozNjEKK21zZ2lkICJpbnN0YWxsIG5ldyBmaWxlcyBsaXN0IGZpbGUiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6OTgKK21zZ2lkICIiCisiXG4iCisiQ29weXJpZ2h0IChDKSAxOTk2IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjExMAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dXG4iCisiXG4iCisiT3B0aW9uczpcbiIKKyIgIC1iICAgICAgICAgICAgICAgICAgICAgICBiaW5hcnktb25seSBidWlsZCAtIG5vIHNvdXJjZSBmaWxlcy5cbiIKKyIgIC1CICAgICAgICAgICAgICAgICAgICAgICBhcmNoLXNwZWNpZmljIC0gbm8gc291cmNlIG9yIGFyY2gtaW5kZXAgZmlsZXMuXG4iCisiICAtQSAgICAgICAgICAgICAgICAgICAgICAgb25seSBhcmNoLWluZGVwIC0gbm8gc291cmNlIG9yIGFyY2gtc3BlY2lmaWMgIgorImZpbGVzLlxuIgorIiAgLVMgICAgICAgICAgICAgICAgICAgICAgIHNvdXJjZS1vbmx5IHVwbG9hZC5cbiIKKyIgIC1jPGNvbnRyb2xmaWxlPiAgICAgICAgICBnZXQgY29udHJvbCBpbmZvIGZyb20gdGhpcyBmaWxlLlxuIgorIiAgLWw8Y2hhbmdlbG9nZmlsZT4gICAgICAgIGdldCBwZXItdmVyc2lvbiBpbmZvIGZyb20gdGhpcyBmaWxlLlxuIgorIiAgLWY8ZmlsZXNsaXN0ZmlsZT4gICAgICAgIGdldCAuZGViIGZpbGVzIGxpc3QgZnJvbSB0aGlzIGZpbGUuXG4iCisiICAtdjxzaW5jZXZlcnNpb24+ICAgICAgICAgaW5jbHVkZSBhbGwgY2hhbmdlcyBsYXRlciB0aGFuIHZlcnNpb24uXG4iCisiICAtQzxjaGFuZ2VzZGVzY3JpcHRpb24+ICAgdXNlIGNoYW5nZSBkZXNjcmlwdGlvbiBmcm9tIHRoaXMgZmlsZS5cbiIKKyIgIC1tPG1haW50YWluZXI+ICAgICAgICAgICBvdmVycmlkZSBjb250cm9sJ3MgbWFpbnRhaW5lciB2YWx1ZS5cbiIKKyIgIC1lPG1haW50YWluZXI+ICAgICAgICAgICBvdmVycmlkZSBjaGFuZ2Vsb2cncyBtYWludGFpbmVyIHZhbHVlLlxuIgorIiAgLXU8dXBsb2FkZmlsZXNkaXI+ICAgICAgIGRpcmVjdG9yeSB3aXRoIGZpbGVzIChkZWZhdWx0IGlzIGAuLicpLlxuIgorIiAgLXNpIChkZWZhdWx0KSAgICAgICAgICAgIHNyYyBpbmNsdWRlcyBvcmlnIGlmIG5ldyB1cHN0cmVhbS5cbiIKKyIgIC1zYSAgICAgICAgICAgICAgICAgICAgICBzb3VyY2UgaW5jbHVkZXMgb3JpZyBzcmMuXG4iCisiICAtc2QgICAgICAgICAgICAgICAgICAgICAgc291cmNlIGlzIGRpZmYgYW5kIC5kc2Mgb25seS5cbiIKKyIgIC1xICAgICAgICAgICAgICAgICAgICAgICBxdWlldCAtIG5vIGluZm9ybWF0aW9uYWwgbWVzc2FnZXMgb24gc3RkZXJyLlxuIgorIiAgLUY8Y2hhbmdlbG9nZm9ybWF0PiAgICAgIGZvcmNlIGNoYW5nZSBsb2cgZm9ybWF0LlxuIgorIiAgLVY8bmFtZT49PHZhbHVlPiAgICAgICAgIHNldCBhIHN1YnN0aXR1dGlvbiB2YXJpYWJsZS5cbiIKKyIgIC1UPHZhcmxpc3RmaWxlPiAgICAgICAgICByZWFkIHZhcmlhYmxlcyBoZXJlLCBub3QgZGViaWFuL3N1YnN0dmFycy5cbiIKKyIgIC1EPGZpZWxkPj08dmFsdWU+ICAgICAgICBvdmVycmlkZSBvciBhZGQgYSBmaWVsZCBhbmQgdmFsdWUuXG4iCisiICAtVTxmaWVsZD4gICAgICAgICAgICAgICAgcmVtb3ZlIGEgZmllbGQuXG4iCisiICAtaCwgLS1oZWxwICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgICAgICAtLXZlcnNpb24gICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjE0OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlczogYXJjaC1zcGVjaWZpYyB1cGxvYWQgLSBub3QgaW5jbHVkaW5nIGFyY2gtaW5kZXBlbmRlbnQgcGFja2FnZXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6MTUyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzOiBhcmNoLWluZGVwIHVwbG9hZCAtIG5vdCBpbmNsdWRpbmcgYXJjaC1zcGVjaWZpYyBwYWNrYWdlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDoyMTkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidGhlIGN1cnJlbnQgdmVyc2lvbiAoJXMpIGlzIGVhcmxpZXIgdGhhbiB0aGUgcHJldmlvdXMgb25lICglcykiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6MjI2Cittc2dpZCAiY2Fubm90IHJlYWQgZmlsZXMgbGlzdCBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjIzMAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgZmlsZXMgbGlzdCBlbnRyeSBmb3IgcGFja2FnZSAlcyAobGluZSAlZCkiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6MjM4IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjI1MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgZmlsZXMgbGlzdCBlbnRyeSBmb3IgZmlsZSAlcyAobGluZSAlZCkiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6MjU4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImJhZGx5IGZvcm1lZCBsaW5lIGluIGZpbGVzIGxpc3QgZmlsZSwgbGluZSAlZCIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDoyOTkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlcyBpbiBjb250cm9sIGZpbGUgYnV0IG5vdCBpbiBmaWxlcyBsaXN0IgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjM0MworbXNnaWQgInJlYWQgY2hhbmdlc2Rlc2NyaXB0aW9uIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjM1MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJwYWNrYWdlICVzIGxpc3RlZCBpbiBmaWxlcyBsaXN0IGJ1dCBub3QgaW4gY29udHJvbCBpbmZvIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjM2MworIywgcGVybC1mb3JtYXQKK21zZ2lkICJtaXNzaW5nIFNlY3Rpb24gZm9yIGJpbmFyeSBwYWNrYWdlICVzOyB1c2luZyAnLSciCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6MzY1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgJXMgaGFzIHNlY3Rpb24gJXMgaW4gY29udHJvbCBmaWxlIGJ1dCAlcyBpbiBmaWxlcyBsaXN0IgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjM3MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJtaXNzaW5nIFByaW9yaXR5IGZvciBiaW5hcnkgcGFja2FnZSAlczsgdXNpbmcgJy0nIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjM3NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJwYWNrYWdlICVzIGhhcyBwcmlvcml0eSAlcyBpbiBjb250cm9sIGZpbGUgYnV0ICVzIGluIGZpbGVzIGxpc3QiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6Mzg2Cittc2dpZCAibWlzc2luZyBTZWN0aW9uIGZvciBzb3VyY2UgZmlsZXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6MzkxCittc2dpZCAibWlzc2luZyBQcmlvcml0eSBmb3Igc291cmNlIGZpbGVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjM5OCBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjM0NgorIzogc2NyaXB0cy9EcGtnL1ZlbmRvci5wbTo3MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBpcyBlbXB0eSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDo0MjQKK21zZ2lkICJub3QgaW5jbHVkaW5nIG9yaWdpbmFsIHNvdXJjZSBjb2RlIGluIHVwbG9hZCIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDo0MzEKK21zZ2lkICJpZ25vcmluZyAtc2Qgb3B0aW9uIGZvciBuYXRpdmUgRGViaWFuIHBhY2thZ2UiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6NDMzCittc2dpZCAiaW5jbHVkaW5nIGZ1bGwgc291cmNlIGNvZGUgaW4gdXBsb2FkIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjQzNgorbXNnaWQgImJpbmFyeS1vbmx5IHVwbG9hZCAtIG5vdCBpbmNsdWRpbmcgYW55IHNvdXJjZSBjb2RlIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjQ0MAorbXNnaWQgIndyaXRlIG9yaWdpbmFsIHNvdXJjZSBtZXNzYWdlIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjQ5NCBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG06NTMyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIm1pc3NpbmcgaW5mb3JtYXRpb24gZm9yIGNyaXRpY2FsIG91dHB1dCBmaWVsZCAlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDo0OTkgc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MjcyCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDoyNzUgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOjUzNworIywgcGVybC1mb3JtYXQKK21zZ2lkICJtaXNzaW5nIGluZm9ybWF0aW9uIGZvciBvdXRwdXQgZmllbGQgJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6NTgKK21zZ2lkICIiCisiXG4iCisiQ29weXJpZ2h0IChDKSAxOTk2IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMCwyMDAyIFdpY2hlcnQgQWtrZXJtYW4uIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjcwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl1cbiIKKyJcbiIKKyJPcHRpb25zOlxuIgorIiAgLXA8cGFja2FnZT4gICAgICAgICAgICAgIHByaW50IGNvbnRyb2wgZmlsZSBmb3IgcGFja2FnZS5cbiIKKyIgIC1jPGNvbnRyb2xmaWxlPiAgICAgICAgICBnZXQgY29udHJvbCBpbmZvIGZyb20gdGhpcyBmaWxlLlxuIgorIiAgLWw8Y2hhbmdlbG9nZmlsZT4gICAgICAgIGdldCBwZXItdmVyc2lvbiBpbmZvIGZyb20gdGhpcyBmaWxlLlxuIgorIiAgLUY8Y2hhbmdlbG9nZm9ybWF0PiAgICAgIGZvcmNlIGNoYW5nZSBsb2cgZm9ybWF0LlxuIgorIiAgLXY8Zm9yY2V2ZXJzaW9uPiAgICAgICAgIHNldCB2ZXJzaW9uIG9mIGJpbmFyeSBwYWNrYWdlLlxuIgorIiAgLWY8ZmlsZXNsaXN0ZmlsZT4gICAgICAgIHdyaXRlIGZpbGVzIGhlcmUgaW5zdGVhZCBvZiBkZWJpYW4vZmlsZXMuXG4iCisiICAtUDxwYWNrYWdlYnVpbGRkaXI+ICAgICAgdGVtcG9yYXJ5IGJ1aWxkIGRpciBpbnN0ZWFkIG9mIGRlYmlhbi90bXAuXG4iCisiICAtbjxmaWxlbmFtZT4gICAgICAgICAgICAgYXNzdW1lIHRoZSBwYWNrYWdlIGZpbGVuYW1lIHdpbGwgYmUgPGZpbGVuYW1lPi5cbiIKKyIgIC1PICAgICAgICAgICAgICAgICAgICAgICB3cml0ZSB0byBzdGRvdXQsIG5vdCAuLi4vREVCSUFOL2NvbnRyb2wuXG4iCisiICAtaXMsIC1pcCwgLWlzcCwgLWlwcyAgICAgZGVwcmVjYXRlZCwgaWdub3JlZCBmb3IgY29tcGF0aWJpbGl0eS5cbiIKKyIgIC1EPGZpZWxkPj08dmFsdWU+ICAgICAgICBvdmVycmlkZSBvciBhZGQgYSBmaWVsZCBhbmQgdmFsdWUuXG4iCisiICAtVTxmaWVsZD4gICAgICAgICAgICAgICAgcmVtb3ZlIGEgZmllbGQuXG4iCisiICAtVjxuYW1lPj08dmFsdWU+ICAgICAgICAgc2V0IGEgc3Vic3RpdHV0aW9uIHZhcmlhYmxlLlxuIgorIiAgLVQ8dmFybGlzdGZpbGU+ICAgICAgICAgIHJlYWQgdmFyaWFibGVzIGhlcmUsIG5vdCBkZWJpYW4vc3Vic3R2YXJzLlxuIgorIiAgLWgsIC0taGVscCAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAgICAgLS12ZXJzaW9uICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDo5NyBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbDoxMTgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiSWxsZWdhbCBwYWNrYWdlIG5hbWUgYCVzJyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDoxNTIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlcyBub3QgaW4gY29udHJvbCBpbmZvIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjE1NiBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbDoxNTkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibXVzdCBzcGVjaWZ5IHBhY2thZ2Ugc2luY2UgY29udHJvbCBpbmZvIGhhcyBtYW55ICglcykiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MTYwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgJXM6ICIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDoxODUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiYCVzJyBpcyBub3QgYSBsZWdhbCBhcmNoaXRlY3R1cmUgc3RyaW5nLiIKK21zZ2lkX3BsdXJhbCAiYCVzJyBhcmUgbm90IGxlZ2FsIGFyY2hpdGVjdHVyZSBzdHJpbmdzLiIKK21zZ3N0clswXSAiIgorbXNnc3RyWzFdICIiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjE5MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiY3VycmVudCBob3N0IGFyY2hpdGVjdHVyZSAnJXMnIGRvZXMgbm90IGFwcGVhciBpbiBwYWNrYWdlJ3MgYXJjaGl0ZWN0dXJlICIKKyJsaXN0ICglcykiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MjQ2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGZpZWxkIG9mIHBhY2thZ2UgJXM6ICIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDoyNTAgc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MjU4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImVycm9yIG9jY3VycmVkIHdoaWxlIHBhcnNpbmcgJXMgZmllbGQ6ICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjI2MworIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisidGhlICVzIGZpZWxkIGNvbnRhaW5zIGFuIGFyY2gtc3BlY2lmaWMgZGVwZW5kZW5jeSBidXQgdGhlIHBhY2thZ2UgaXMgIgorImFyY2hpdGVjdHVyZSBhbGwiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6Mjg3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIHBhY2thZ2Ugd2l0aCB1ZGViIHNwZWNpZmljIGZpZWxkICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjMwMCBzY3JpcHRzL2Rwa2ctc2NhbnNvdXJjZXMucGw6MzEzCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjgzNiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL1BhcnNlLnBtOjEzOAorIzogc2NyaXB0cy9EcGtnL0lQQy5wbToyMjkgc2NyaXB0cy9EcGtnL1NobGlicy9PYmpkdW1wLnBtOjE4MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3QgZm9yayBmb3IgJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MzAzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNoZGlyIGZvciBkdSB0byBgJXMnIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjMwNSBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjg0MworIzogc2NyaXB0cy9EcGtnL0lQQy5wbToyNzEgc2NyaXB0cy9EcGtnL1NobGlicy9DcHBmaWx0LnBtOjUwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBleGVjdXRlICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjMxMgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJkdSBpbiBgJXMnIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjMxNAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJkdSBnYXZlIHVuZXhwZWN0ZWQgb3V0cHV0IGAlcyciCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MzQ3Cittc2dpZCAiY2xvc2Ugb2xkIGZpbGVzIGxpc3QgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDozNjkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IG9wZW4gbmV3IG91dHB1dCBjb250cm9sIGZpbGUgYCVzJyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDozNzggc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo1MjMKKyM6IHNjcmlwdHMvRHBrZy9JbnRlcmZhY2UvU3RvcmFibGUucG06OTEKKyM6IHNjcmlwdHMvRHBrZy9JbnRlcmZhY2UvU3RvcmFibGUucG06MTE5IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MjkwCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NjA3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCBjbG9zZSAlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDozODAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IGluc3RhbGwgb3V0cHV0IGNvbnRyb2wgZmlsZSBgJXMnIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsOjUxCittc2dpZCAiIgorIlxuIgorIkNvcHlyaWdodCAoQykgMjAwNyBSYXBoYWVsIEhlcnR6b2cuXG4iCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGw6NjMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXVxuIgorIlxuIgorIk9wdGlvbnM6XG4iCisiICAtcDxwYWNrYWdlPiAgICAgICAgICAgICAgZ2VuZXJhdGUgc3ltYm9scyBmaWxlIGZvciBwYWNrYWdlLlxuIgorIiAgLVA8cGFja2FnZWJ1aWxkZGlyPiAgICAgIHRlbXBvcmFyeSBidWlsZCBkaXIgaW5zdGVhZCBvZiBkZWJpYW4vdG1wLlxuIgorIiAgLWU8bGlicmFyeT4gICAgICAgICAgICAgIGV4cGxpY2l0bHkgbGlzdCBsaWJyYXJpZXMgdG8gc2Nhbi5cbiIKKyIgIC12PHZlcnNpb24+ICAgICAgICAgICAgICB2ZXJzaW9uIG9mIHRoZSBwYWNrYWdlcyAoZGVmYXVsdHMgdG9cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICB2ZXJzaW9uIGV4dHJhY3RlZCBmcm9tIGRlYmlhbi9jaGFuZ2Vsb2cpLlxuIgorIiAgLWM8bGV2ZWw+ICAgICAgICAgICAgICAgIGNvbXBhcmUgZ2VuZXJhdGVkIHN5bWJvbHMgZmlsZSB3aXRoIHRoZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlZmVyZW5jZSB0ZW1wbGF0ZSBpbiB0aGUgZGViaWFuIGRpcmVjdG9yeVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGFuZCBmYWlsIGlmIGRpZmZlcmVuY2UgaXMgdG9vIGltcG9ydGFudFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIChsZXZlbCBnb2VzIGZyb20gMCBmb3Igbm8gY2hlY2ssIHRvIDRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgYWxsIGNoZWNrcykuIEJ5IGRlZmF1bHQgY2hlY2tzIGF0XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV2ZWwgMS5cbiIKKyIgIC1xICAgICAgICAgICAgICAgICAgICAgICBrZWVwIHF1aWV0IGFuZCBuZXZlciBlbWl0IGFueSB3YXJuaW5ncyBvclxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGdlbmVyYXRlIGEgZGlmZiBiZXR3ZWVuIGdlbmVyYXRlZCBzeW1ib2xzXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsZSBhbmQgdGhlIHJlZmVyZW5jZSB0ZW1wbGF0ZS5cbiIKKyIgIC1JPGZpbGU+ICAgICAgICAgICAgICAgICBmb3JjZSB1c2FnZSBvZiA8ZmlsZT4gYXMgcmVmZXJlbmNlIHN5bWJvbHNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxlIGluc3RlYWQgb2YgdGhlIGRlZmF1bHQgZmlsZS5cbiIKKyIgIC1PPGZpbGU+ICAgICAgICAgICAgICAgICB3cml0ZSB0byA8ZmlsZT4sIG5vdCAuLi4vREVCSUFOL3N5bWJvbHMuXG4iCisiICAtTyAgICAgICAgICAgICAgICAgICAgICAgd3JpdGUgdG8gc3Rkb3V0LCBub3QgLi4uL0RFQklBTi9zeW1ib2xzLlxuIgorIiAgLXQgICAgICAgICAgICAgICAgICAgICAgIHdyaXRlIGluIHRlbXBsYXRlIG1vZGUgKHRhZ3MgYXJlIG5vdFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHByb2Nlc3NlZCBhbmQgaW5jbHVkZWQgaW4gb3V0cHV0KS5cbiIKKyIgIC1WICAgICAgICAgICAgICAgICAgICAgICB2ZXJib3NlIG91dHB1dC4gV3JpdGUgZGVwcmVjYXRlZCBzeW1ib2xzIGFuZFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhdHRlcm4gbWF0Y2hpbmcgc3ltYm9scyBhcyBjb21tZW50c1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIChpbiB0ZW1wbGF0ZSBtb2RlIG9ubHkpLlxuIgorIiAgLWE8YXJjaD4gICAgICAgICAgICAgICAgIGFzc3VtZSA8YXJjaD4gYXMgaG9zdCBhcmNoaXRlY3R1cmUgd2hlbiAiCisicHJvY2Vzc2luZ1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHN5bWJvbCBmaWxlcy5cbiIKKyIgIC1kICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5IGRlYnVnIGluZm9ybWF0aW9uIGR1cmluZyB3b3JrLlxuIgorIiAgLWgsIC0taGVscCAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAgICAgLS12ZXJzaW9uICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbDoxOTQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiQ2FuJ3QgcmVhZCBkaXJlY3RvcnkgJXM6ICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsOjIwOQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJPYmpkdW1wIGNvdWxkbid0IHBhcnNlICVzXG4iCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGw6MjI3Cittc2dpZCAiPHN0YW5kYXJkIG91dHB1dD4iCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGw6MjU1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIm5ldyBsaWJyYXJpZXMgYXBwZWFyZWQgaW4gdGhlIHN5bWJvbHMgZmlsZTogJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGw6MjYwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInNvbWUgbGlicmFyaWVzIGRpc2FwcGVhcmVkIGluIHRoZSBzeW1ib2xzIGZpbGU6ICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsOjI2NQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJzb21lIG5ldyBzeW1ib2xzIGFwcGVhcmVkIGluIHRoZSBzeW1ib2xzIGZpbGU6ICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsOjI2NiBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbDoyNzEKK21zZ2lkICJzZWUgZGlmZiBvdXRwdXQgYmVsb3ciCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGw6MjcwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInNvbWUgc3ltYm9scyBvciBwYXR0ZXJucyBkaXNhcHBlYXJlZCBpbiB0aGUgc3ltYm9scyBmaWxlOiAlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbDoyOTEKK21zZ2lkICJ0aGUgZ2VuZXJhdGVkIHN5bWJvbHMgZmlsZSBpcyBlbXB0eSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbDoyOTMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgZG9lc24ndCBtYXRjaCBjb21wbGV0ZWx5ICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsOjI5NgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJubyBkZWJpYW4vc3ltYm9scyBmaWxlIHVzZWQgYXMgYmFzaXMgZm9yIGdlbmVyYXRpbmcgJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLW1lcmdlY2hhbmdlbG9ncy5wbDo1NQorbXNnaWQgIkNvcHlyaWdodCAoQykgMjAwOS0yMDEwIFJhcGhhZWwgSGVydHpvZy4iCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLW1lcmdlY2hhbmdlbG9ncy5wbDo1OAorbXNnaWQgIiIKKyJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAyIG9yXG4iCisibGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuXG4iCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLW1lcmdlY2hhbmdlbG9ncy5wbDo2NQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIDxvbGQ+IDxuZXctYT4gPG5ldy1iPiBbPG91dD5dXG4iCisiXG4iCisiT3B0aW9uczpcbiIKKyIgIC0tbWVyZ2UtcHJlcmVsZWFzZXMsIC1tICBtZXJnZSBwcmUtcmVsZWFzZXMgdG9nZXRoZXIsIGlnbm9yZXMgZXZlcnl0aGluZ1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGFmdGVyIHRoZSBsYXN0ICd+JyBpbiB0aGUgdmVyc2lvbi5cbiIKKyIgIC0taGVscCwgLWgsIC0/ICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLW1lcmdlY2hhbmdlbG9ncy5wbDoxMjkgc2NyaXB0cy9kcGtnLW1lcmdlY2hhbmdlbG9ncy5wbDoxMzEKKyM6IHNjcmlwdHMvRHBrZy9Db21wcmVzc2lvbi9GaWxlSGFuZGxlLnBtOjM4NQorIzogc2NyaXB0cy9EcGtnL0ludGVyZmFjZS9TdG9yYWJsZS5wbToxMTUgc2NyaXB0cy9EcGtnL0lQQy5wbToyNTUKKyM6IHNjcmlwdHMvRHBrZy9JUEMucG06MjYzIHNjcmlwdHMvRHBrZy9Tb3VyY2UvRnVuY3Rpb25zLnBtOjc4CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG06NDQ3IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbTo1NTAKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbToyMTcgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjUzMAorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjYwNQorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjE0MgorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjE1MQorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjE1NworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjIyNgorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjIzNAorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjM0MQorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjM1MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgd3JpdGUgJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLW5hbWUucGw6NTEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiVXNhZ2U6ICVzIFs8b3B0aW9uPi4uLl0gPGZpbGU+Li4uXG4iCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLW5hbWUucGw6NTMKK21zZ2lkICIiCisiXG4iCisiT3B0aW9uczpcbiIKKyIgIC1hLCAtLW5vLWFyY2hpdGVjdHVyZSAgICBubyBhcmNoaXRlY3R1cmUgcGFydCBpbiBmaWxlbmFtZS5cbiIKKyIgIC1vLCAtLW92ZXJ3cml0ZSAgICAgICAgICBvdmVyd3JpdGUgaWYgZmlsZSBleGlzdHMuXG4iCisiICAtaywgLS1zeW1saW5rICAgICAgICAgICAgZG9uJ3QgY3JlYXRlIGEgbmV3IGZpbGUsIGJ1dCBhIHN5bWxpbmsuXG4iCisiICAtcywgLS1zdWJkaXIgW2Rpcl0gICAgICAgbW92ZSBmaWxlIGludG8gc3ViZGlyICh1c2Ugd2l0aCBjYXJlKS5cbiIKKyIgIC1jLCAtLWNyZWF0ZS1kaXIgICAgICAgICBjcmVhdGUgdGFyZ2V0IGRpciBpZiBub3QgdGhlcmUgKHVzZSB3aXRoIGNhcmUpLlxuIgorIiAgLWgsIC0taGVscCAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtdiwgLS12ZXJzaW9uICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKKyJmaWxlLmRlYiBjaGFuZ2VzIHRvIDxwYWNrYWdlPl88dmVyc2lvbj5fPGFyY2hpdGVjdHVyZT4uPHBhY2thZ2VfdHlwZT5cbiIKKyJhY2NvcmRpbmcgdG8gdGhlICd1bmRlcnNjb3JlcyBjb252ZW50aW9uJy5cbiIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctbmFtZS5wbDo3NQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3QgZmluZCAnJXMnIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1uYW1lLnBsOjk2IHNjcmlwdHMvRHBrZy9BcmNoLnBtOjEzOCBzY3JpcHRzL0Rwa2cvQXJjaC5wbToxNTcKKyM6IHNjcmlwdHMvRHBrZy9BcmNoLnBtOjE3NiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL1BhcnNlLnBtOjE0MgorIzogc2NyaXB0cy9EcGtnL0lQQy5wbToyNDcgc2NyaXB0cy9EcGtnL1NobGlicy5wbTo3OAorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOjE5MworIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgb3BlbiAlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctbmFtZS5wbDo5OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJiaW5hcnkgY29udHJvbCBmaWxlICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1uYW1lLnBsOjExMQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJhc3N1bWluZyBhcmNoaXRlY3R1cmUgJyVzJyBmb3IgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctbmFtZS5wbDoxMzMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiYmFkIHBhY2thZ2UgY29udHJvbCBpbmZvcm1hdGlvbiBmb3IgJyVzJyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctbmFtZS5wbDoxNDkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiYXNzdW1pbmcgc2VjdGlvbiAnJXMnIGZvciAnJXMnIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1uYW1lLnBsOjE3NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJubyBQYWNrYWdlIGZpZWxkIGZvdW5kIGluICclcycsIHNraXBwaW5nIGl0IgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1uYW1lLnBsOjE4NworIywgcGVybC1mb3JtYXQKK21zZ2lkICJjcmVhdGVkIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1uYW1lLnBsOjE4OQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3QgY3JlYXRlIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1uYW1lLnBsOjE5MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJubyBzdWNoIGRpcmVjdG9yeSAnJXMnLCB0cnkgLS1jcmVhdGUtZGlyICgtYykgb3B0aW9uIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1uYW1lLnBsOjIwNworIywgcGVybC1mb3JtYXQKK21zZ2lkICJza2lwcGluZyAnJXMnIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1uYW1lLnBsOjIwOQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3QgbW92ZSAnJXMnIHRvIGV4aXN0aW5nIGZpbGUiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLW5hbWUucGw6MjExCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIm1vdmVkICclcycgdG8gJyVzJyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctbmFtZS5wbDoyMTMKK21zZ2lkICJta2RpciBjYW4gYmUgdXNlZCB0byBjcmVhdGUgZGlyZWN0b3J5IgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1uYW1lLnBsOjIxOAorbXNnaWQgIm5lZWQgYXQgbGVhc3QgYSBmaWxlbmFtZSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctcGFyc2VjaGFuZ2Vsb2cucGw6MzMKK21zZ2lkICIiCisiXG4iCisiQ29weXJpZ2h0IChDKSAxOTk2IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMSBXaWNoZXJ0IEFra2VybWFuIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1wYXJzZWNoYW5nZWxvZy5wbDo0NQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dXG4iCisiXG4iCisiT3B0aW9uczpcbiIKKyIgIC1sPGNoYW5nZWxvZ2ZpbGU+ICAgICAgICBnZXQgcGVyLXZlcnNpb24gaW5mbyBmcm9tIHRoaXMgZmlsZS5cbiIKKyIgIC1GPGNoYW5nZWxvZ2Zvcm1hdD4gICAgICBmb3JjZSBjaGFuZ2UgbG9nIGZvcm1hdC5cbiIKKyIgIC1MPGxpYmRpcj4gICAgICAgICAgICAgICBsb29rIGZvciBjaGFuZ2UgbG9nIHBhcnNlcnMgaW4gPGxpYmRpcj4uXG4iCisiICAtaCwgLS1oZWxwICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgICAgICAtLXZlcnNpb24gICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorInBhcnNlciBvcHRpb25zOlxuIgorIiAgICAtLWZvcm1hdCA8b3V0cHV0Zm9ybWF0PiAgICAgc2VlIG1hbiBwYWdlIGZvciBsaXN0IG9mIGF2YWlsYWJsZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3V0cHV0IGZvcm1hdHMsIGRlZmF1bHRzIHRvICdkcGtnJ1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBkcGtnLWRldlxuIgorIiAgICAtLXNpbmNlIDx2ZXJzaW9uPiwgICAgICAgICAgaW5jbHVkZSBhbGwgY2hhbmdlcyBsYXRlciB0aGFuIHZlcnNpb25cbiIKKyIgICAgICAtczx2ZXJzaW9uPiwgLXY8dmVyc2lvbj5cbiIKKyIgICAgLS11bnRpbCA8dmVyc2lvbj4sICAgICAgICAgIGluY2x1ZGUgYWxsIGNoYW5nZXMgZWFybGllciB0aGFuIHZlcnNpb25cbiIKKyIgICAgICAtdTx2ZXJzaW9uPlxuIgorIiAgICAtLWZyb20gPHZlcnNpb24+LCAgICAgICAgICAgaW5jbHVkZSBhbGwgY2hhbmdlcyBlcXVhbCBvciBsYXRlclxuIgorIiAgICAgIC1mPHZlcnNpb24+ICAgICAgICAgICAgICAgdGhhbiB2ZXJzaW9uXG4iCisiICAgIC0tdG8gPHZlcnNpb24+LCAtdDx2ZXJzaW9uPiBpbmNsdWRlIGFsbCBjaGFuZ2VzIHVwIHRvIG9yIGVxdWFsXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGFuIHZlcnNpb25cbiIKKyIgICAgLS1jb3VudCA8bnVtYmVyPiwgICAgICAgICAgIGluY2x1ZGUgPG51bWJlcj4gZW50cmllcyBmcm9tIHRoZSB0b3BcbiIKKyIgICAgICAtYzxudW1iZXI+LCAtbjxudW1iZXI+ICAgIChvciB0aGUgdGFpbCBpZiA8bnVtYmVyPiBpcyBsb3dlciB0aGFuIDApXG4iCisiICAgIC0tb2Zmc2V0IDxudW1iZXI+LCAgICAgICAgICBjaGFuZ2UgdGhlIHN0YXJ0aW5nIHBvaW50IGZvciAtLWNvdW50LFxuIgorIiAgICAgIC1vPG51bWJlcj4gICAgICAgICAgICAgICAgY291bnRlZCBmcm9tIHRoZSB0b3AgKG9yIHRoZSB0YWlsIGlmXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bnVtYmVyPiBpcyBsb3dlciB0aGFuIDApXG4iCisiICAgIC0tYWxsICAgICAgICAgICAgICAgICAgICAgICBpbmNsdWRlIGFsbCBjaGFuZ2VzXG4iCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLXBhcnNlY2hhbmdlbG9nLnBsOjExNworbXNnaWQgInRha2VzIG5vIG5vbi1vcHRpb24gYXJndW1lbnRzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6NjYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSA8YmluYXJ5cGF0aD4gWzxvdmVycmlkZWZpbGU+IFs8cGF0aHByZWZpeD5dXSA+ICIKKyJQYWNrYWdlc1xuIgorIlxuIgorIk9wdGlvbnM6XG4iCisiICAtdCwgLS10eXBlIDx0eXBlPiAgICAgICAgc2NhbiBmb3IgPHR5cGU+IHBhY2thZ2VzIChkZWZhdWx0IGlzICdkZWInKS5cbiIKKyIgIC11LCAtLXVkZWIgICAgICAgICAgICAgICBzY2FuIGZvciB1ZGVicyAob2Jzb2xldGUgYWxpYXMgZm9yIC10dWRlYikuXG4iCisiICAtYSwgLS1hcmNoIDxhcmNoPiAgICAgICAgYXJjaGl0ZWN0dXJlIHRvIHNjYW4gZm9yLlxuIgorIiAgLW0sIC0tbXVsdGl2ZXJzaW9uICAgICAgIGFsbG93IG11bHRpcGxlIHZlcnNpb25zIG9mIGEgc2luZ2xlIHBhY2thZ2UuXG4iCisiICAtZSwgLS1leHRyYS1vdmVycmlkZSA8ZmlsZT5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2UgZXh0cmEgb3ZlcnJpZGUgZmlsZS5cbiIKKyIgIC1NLCAtLW1lZGl1bSA8bWVkaXVtPiAgICBhZGQgWC1NZWRpdW0gZmllbGQgZm9yIGRzZWxlY3QgbXVsdGljZCBhY2Nlc3MgIgorIm1ldGhvZFxuIgorIiAgLWgsIC0taGVscCAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAgICAgLS12ZXJzaW9uICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOjgzCittc2dpZCAiLXUsIC0tdWRlYiBvcHRpb24gaXMgZGVwcmVjYXRlZCAoc2VlIFJFQURNRS5mZWF0dXJlLXJlbW92YWwtc2NoZWR1bGUpIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6MTEyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiAgJXMgKHBhY2thZ2Ugc2F5cyAlcywgbm90ICVzKSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOjEyMAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJVbmNvbmRpdGlvbmFsIG1haW50YWluZXIgb3ZlcnJpZGUgZm9yICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6MTU4IHNjcmlwdHMvZHBrZy1zY2Fuc291cmNlcy5wbDozMDIKK21zZ2lkICJvbmUgdG8gdGhyZWUgYXJndW1lbnRzIGV4cGVjdGVkIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6MTc1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIkJpbmFyeSBkaXIgJXMgbm90IGZvdW5kIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6MTc3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIk92ZXJyaWRlIGZpbGUgJXMgbm90IGZvdW5kIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6MTgzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIkNvdWxkbid0IG9wZW4gJXMgZm9yIHJlYWRpbmciCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoxOTMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY291bGRuJ3QgcGFyc2UgY29udHJvbCBpbmZvcm1hdGlvbiBmcm9tICVzLiIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOjE5NgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJgZHBrZy1kZWIgLUkgJXMgY29udHJvbCcgZXhpdGVkIHdpdGggJWQsIHNraXBwaW5nIHBhY2thZ2UiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoyMDIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiTm8gUGFja2FnZSBmaWVsZCBpbiBjb250cm9sIGZpbGUgb2YgJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoyMTAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiUGFja2FnZSAlcyAoZmlsZW5hbWUgJXMpIGlzIHJlcGVhdCBidXQgbmV3ZXIgdmVyc2lvbjsiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoyMTIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidXNlZCB0aGF0IG9uZSBhbmQgaWdub3JlZCBkYXRhIGZyb20gJXMhIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6MjE2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgJXMgKGZpbGVuYW1lICVzKSBpcyByZXBlYXQ7IgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6MjE3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImlnbm9yZWQgdGhhdCBvbmUgYW5kIHVzaW5nIGRhdGEgZnJvbSAlcyEiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoyMjMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiUGFja2FnZSAlcyAoZmlsZW5hbWUgJXMpIGhhcyBGaWxlbmFtZSBmaWVsZCEiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoyNTUKK21zZ2lkICJGYWlsZWQgd2hlbiB3cml0aW5nIHN0ZG91dCIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOjI1OQorbXNnaWQgIkNvdWxkbid0IGNsb3NlIHN0ZG91dCIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOjI2MgorbXNnaWQgIlBhY2thZ2VzIGluIG92ZXJyaWRlIGZpbGUgd2l0aCBpbmNvcnJlY3Qgb2xkIG1haW50YWluZXIgdmFsdWU6IgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6MjY2Cittc2dpZCAiUGFja2FnZXMgc3BlY2lmeWluZyBzYW1lIG1haW50YWluZXIgYXMgb3ZlcnJpZGUgZmlsZToiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoyNzAKK21zZ2lkICJQYWNrYWdlcyBpbiBhcmNoaXZlIGJ1dCBtaXNzaW5nIGZyb20gb3ZlcnJpZGUgZmlsZToiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoyNzQKK21zZ2lkICJQYWNrYWdlcyBpbiBvdmVycmlkZSBmaWxlIGJ1dCBub3QgaW4gYXJjaGl2ZToiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoyNzgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiV3JvdGUgJXMgZW50cmllcyB0byBvdXRwdXQgUGFja2FnZXMgZmlsZS4iCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5zb3VyY2VzLnBsOjg0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gPGJpbmFyeXBhdGg+IFs8b3ZlcnJpZGVmaWxlPiBbPHBhdGhwcmVmaXg+XV0gPiAiCisiU291cmNlc1xuIgorIlxuIgorIk9wdGlvbnM6XG4iCisiICAtbiwgLS1uby1zb3J0ICAgICAgICAgICAgZG9uJ3Qgc29ydCBieSBwYWNrYWdlIGJlZm9yZSBvdXRwdXR0aW5nLlxuIgorIiAgLWUsIC0tZXh0cmEtb3ZlcnJpZGUgPGZpbGU+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlIGV4dHJhIG92ZXJyaWRlIGZpbGUuXG4iCisiICAtcywgLS1zb3VyY2Utb3ZlcnJpZGUgPGZpbGU+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlIGZpbGUgZm9yIGFkZGl0aW9uYWwgc291cmNlIG92ZXJyaWRlcywgIgorImRlZmF1bHRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBpcyByZWd1bGFyIG92ZXJyaWRlIGZpbGUgd2l0aCAuc3JjIGFwcGVuZGVkLlxuIgorIiAgICAgIC0tZGVidWcgICAgICAgICAgICAgIHR1cm4gZGVidWdnaW5nIG9uLlxuIgorIiAgICAgIC0taGVscCAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAgICAgLS12ZXJzaW9uICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKKyJTZWUgdGhlIG1hbiBwYWdlIGZvciB0aGUgZnVsbCBkb2N1bWVudGF0aW9uLlxuIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2Fuc291cmNlcy5wbDoxMDUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyAlcyAoJD8gJWQsICQhIGAlcycpIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2Fuc291cmNlcy5wbDoxMjEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBvdmVycmlkZSBlbnRyeSBhdCBsaW5lICVkICglZCBmaWVsZHMpIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2Fuc291cmNlcy5wbDoxMjcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgZHVwbGljYXRlIG92ZXJyaWRlIGVudHJ5IGZvciAlcyBhdCBsaW5lICVkIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2Fuc291cmNlcy5wbDoxMzIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiaWdub3Jpbmcgb3ZlcnJpZGUgZW50cnkgZm9yICVzLCBpbnZhbGlkIHByaW9yaXR5ICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2Fuc291cmNlcy5wbDoxODYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBzb3VyY2Ugb3ZlcnJpZGUgZW50cnkgYXQgbGluZSAlZCAoJWQgZmllbGRzKSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnNvdXJjZXMucGw6MTk0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nIGR1cGxpY2F0ZSBzb3VyY2Ugb3ZlcnJpZGUgZW50cnkgZm9yICVzIGF0IGxpbmUgJWQiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5zb3VyY2VzLnBsOjI0NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJubyBiaW5hcnkgcGFja2FnZXMgc3BlY2lmaWVkIGluICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6OTMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiYWRtaW5pc3RyYXRpdmUgZGlyZWN0b3J5ICclcycgZG9lcyBub3QgZXhpc3QiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo5OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bnJlY29nbmlzZWQgZGVwZW5kZW5jeSBmaWVsZCBgJXMnIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6MTMyCittc2dpZCAibmVlZCBhdCBsZWFzdCBvbmUgZXhlY3V0YWJsZSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjE3NQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBmaW5kIGxpYnJhcnkgJXMgbmVlZGVkIGJ5ICVzIChFTEYgZm9ybWF0OiAnJXMnOyBSUEFUSDogJyVzJykuIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6MjYyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGhhcyBhbiB1bmV4cGVjdGVkIFNPTkFNRSAoJXMpIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6MjgzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIm5vIGRlcGVuZGVuY3kgaW5mb3JtYXRpb24gZm91bmQgZm9yICVzICh1c2VkIGJ5ICVzKS4iCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDozMTQKK21zZ2lkICIiCisiYmluYXJpZXMgdG8gYW5hbHl6ZSBzaG91bGQgYWxyZWFkeSBiZSBpbnN0YWxsZWQgaW4gdGhlaXIgcGFja2FnZSdzIGRpcmVjdG9yeS4iCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDozNTcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAic3ltYm9sICVzIHVzZWQgYnkgJXMgZm91bmQgaW4gbm9uZSBvZiB0aGUgbGlicmFyaWVzLiIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjM2MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiJXMgY29udGFpbnMgYW4gdW5yZXNvbHZhYmxlIHJlZmVyZW5jZSB0byBzeW1ib2wgJXM6IGl0J3MgcHJvYmFibHkgYSBwbHVnaW4uIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6MzgyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVkIHNpbWlsYXIgd2FybmluZyBoYXMgYmVlbiBza2lwcGVkICh1c2UgLXYgdG8gc2VlIGl0KS4iCittc2dpZF9wbHVyYWwgIiIKKyIlZCBvdGhlciBzaW1pbGFyIHdhcm5pbmdzIGhhdmUgYmVlbiBza2lwcGVkICh1c2UgLXYgdG8gc2VlIHRoZW0gYWxsKS4iCittc2dzdHJbMF0gIiIKK21zZ3N0clsxXSAiIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjQwOQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBzaG91bGRuJ3QgYmUgbGlua2VkIHdpdGggJXMgKGl0IHVzZXMgbm9uZSBvZiBpdHMgc3ltYm9scykuIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6NDIyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJkZXBlbmRlbmN5IG9uICVzIGNvdWxkIGJlIGF2b2lkZWQgaWYgXCIlc1wiIHdlcmUgbm90IHVzZWxlc3NseSBsaW5rZWQgIgorImFnYWluc3QgaXQgKHRoZXkgdXNlIG5vbmUgb2YgaXRzIHN5bWJvbHMpLiIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjQzMQorbXNnaWQgIiIKKyJOb3RlOiBsaWJyYXJpZXMgYXJlIG5vdCBzZWFyY2hlZCBpbiBvdGhlciBiaW5hcnkgcGFja2FnZXMgdGhhdCBkbyBub3QgaGF2ZSAiCisiYW55IHNobGlicyBvciBzeW1ib2xzIGZpbGUuXG4iCisiVG8gaGVscCBkcGtnLXNobGliZGVwcyBmaW5kIHByaXZhdGUgbGlicmFyaWVzLCB5b3UgbWlnaHQgbmVlZCB0byBzZXQgIgorIkxEX0xJQlJBUllfUEFUSC4iCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo0MzQKK21zZ2lkICJDYW5ub3QgY29udGludWUgZHVlIHRvIHRoZSBlcnJvciBhYm92ZS4iCittc2dpZF9wbHVyYWwgIkNhbm5vdCBjb250aW51ZSBkdWUgdG8gdGhlIGVycm9ycyBsaXN0ZWQgYWJvdmUuIgorbXNnc3RyWzBdICIiCittc2dzdHJbMV0gIiIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo0NDUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAib3BlbiBuZXcgc3Vic3R2YXJzIGZpbGUgYCVzJyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjQ0OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJvcGVuIG9sZCB2YXJsaXN0IGZpbGUgYCVzJyBmb3IgcmVhZGluZyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjQ1MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjb3B5IG9sZCBlbnRyeSB0byBuZXcgdmFybGlzdCBmaWxlIGAlcyciCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo1MTUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBkZXBlbmRlbmN5IGdvdCBnZW5lcmF0ZWQ6ICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6NTI1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImluc3RhbGwgbmV3IHZhcmxpc3QgZmlsZSBgJXMnIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6NTM1Cittc2dpZCAiIgorIlxuIgorIkNvcHlyaWdodCAoQykgMTk5NiBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDYgRnJhbmsgTGljaHRlbmhlbGQuXG4iCisiQ29weXJpZ2h0IChDKSAyMDA3IFJhcGhhZWwgSGVydHpvZy5cbiIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjU1MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIDxleGVjdXRhYmxlPnwtZTxleGVjdXRhYmxlPiBbPG9wdGlvbj4gLi4uXVxuIgorIlxuIgorIlBvc2l0aW9uYWwgb3B0aW9ucyAob3JkZXIgaXMgc2lnbmlmaWNhbnQpOlxuIgorIiAgPGV4ZWN1dGFibGU+ICAgICAgICAgICAgIGluY2x1ZGUgZGVwZW5kZW5jaWVzIGZvciA8ZXhlY3V0YWJsZT4sXG4iCisiICAtZTxleGVjdXRhYmxlPiAgICAgICAgICAgKHVzZSAtZSBpZiA8ZXhlY3V0YWJsZT4gc3RhcnRzIHdpdGggYC0nKVxuIgorIiAgLWQ8ZGVwZW5kZW5jeWZpZWxkPiAgICAgIG5leHQgZXhlY3V0YWJsZShzKSBzZXQgc2hsaWJzOjxkZXBlbmRlbmN5ZmllbGQ+LlxuIgorIlxuIgorIk9wdGlvbnM6XG4iCisiICAtcDx2YXJuYW1lcHJlZml4PiAgICAgICAgc2V0IDx2YXJuYW1lcHJlZml4PjoqIGluc3RlYWQgb2Ygc2hsaWJzOiouXG4iCisiICAtTyAgICAgICAgICAgICAgICAgICAgICAgcHJpbnQgdmFyaWFibGUgc2V0dGluZ3MgdG8gc3Rkb3V0LlxuIgorIiAgLUw8bG9jYWxzaGxpYnNmaWxlPiAgICAgIHNobGlicyBvdmVycmlkZSBmaWxlLCBub3QgZGViaWFuL3NobGlicy5sb2NhbC5cbiIKKyIgIC1UPHZhcmxpc3RmaWxlPiAgICAgICAgICB1cGRhdGUgdmFyaWFibGVzIGhlcmUsIG5vdCBkZWJpYW4vc3Vic3R2YXJzLlxuIgorIiAgLXQ8dHlwZT4gICAgICAgICAgICAgICAgIHNldCBwYWNrYWdlIHR5cGUgKGRlZmF1bHQgaXMgZGViKS5cbiIKKyIgIC14PHBhY2thZ2U+ICAgICAgICAgICAgICBleGNsdWRlIHBhY2thZ2UgZnJvbSB0aGUgZ2VuZXJhdGVkIGRlcGVuZGVuY2llcy5cbiIKKyIgIC1TPHBrZ2J1aWxkZGlyPiAgICAgICAgICBzZWFyY2ggbmVlZGVkIGxpYnJhcmllcyBpbiB0aGUgZ2l2ZW5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWNrYWdlIGJ1aWxkIGRpcmVjdG9yeSBmaXJzdC5cbiIKKyIgIC12ICAgICAgICAgICAgICAgICAgICAgICBlbmFibGUgdmVyYm9zZSBtb2RlIChjYW4gYmUgdXNlZCBtdWx0aXBsZSAiCisidGltZXMpLlxuIgorIiAgLS1pZ25vcmUtbWlzc2luZy1pbmZvICAgIGRvbid0IGZhaWwgaWYgZGVwZW5kZW5jeSBpbmZvcm1hdGlvbiBjYW4ndCBiZSAiCisiZm91bmQuXG4iCisiICAtLXdhcm5pbmdzPTx2YWx1ZT4gICAgICAgZGVmaW5lIHNldCBvZiBhY3RpdmUgd2FybmluZ3MgKHNlZSBtYW51YWwgcGFnZSkuXG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgY2hhbmdlIHRoZSBhZG1pbmlzdHJhdGl2ZSBkaXJlY3RvcnkuXG4iCisiICAtaCwgLS1oZWxwICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgICAgICAtLXZlcnNpb24gICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorIkRlcGVuZGVuY3kgZmllbGRzIHJlY29nbmlzZWQgYXJlOlxuIgorIiAgJXNcbiIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjY3NworIywgcGVybC1mb3JtYXQKK21zZ2lkICJDYW4ndCBleHRyYWN0IG5hbWUgYW5kIHZlcnNpb24gZnJvbSBsaWJyYXJ5IG5hbWUgYCVzJyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjY4NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBzaGFyZWQgbGlicyBpbmZvIGZpbGUgYCVzJyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjY5MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJzaGFyZWQgbGlicyBpbmZvIGZpbGUgYCVzJyBsaW5lICVkOiBiYWQgbGluZSBgJXMnIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6NzQ5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCBvcGVuIGZpbGUgJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo3ODMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIiRPUklHSU4gaXMgdXNlZCBpbiBSUEFUSCBvZiAlcyBhbmQgdGhlIGNvcnJlc3BvbmRpbmcgZGlyZWN0b3J5IGNvdWxkIG5vdCBiZSAiCisiaWRlbnRpZmllZCBkdWUgdG8gbGFjayBvZiBERUJJQU4gc3ViLWRpcmVjdG9yeSBpbiB0aGUgcm9vdCBvZiBwYWNrYWdlJ3MgIgorImJ1aWxkIHRyZWUiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo4NDgKK21zZ2lkICJkaXZlcnNpb25zIGludm9sdmVkIC0gb3V0cHV0IG1heSBiZSBpbmNvcnJlY3QiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo4NTAKK21zZ2lkICJ3cml0ZSBkaXZlcnNpb24gaW5mbyB0byBzdGRlcnIiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo4NTQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5rbm93biBvdXRwdXQgZnJvbSBkcGtnIC0tc2VhcmNoOiAnJXMnIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6MTA0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIG5lZWRzIGEgZGlyZWN0b3J5IgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6MTEwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzdGF0IGRpcmVjdG9yeSAlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjExMgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJkaXJlY3RvcnkgYXJndW1lbnQgJXMgaXMgbm90IGEgZGlyZWN0b3J5IgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6MTE3IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo0NzYKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo0Nzggc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjQ4MAorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjQ4MgorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2J6ci5wbToxMTEKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9ienIucG06MTM0CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvYnpyLnBtOjE5OAorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2J6ci5wbToyMDQKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9naXQucG06MTA0CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvZ2l0LnBtOjE0MworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2dpdC5wbToxNTUKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9naXQucG06MTc0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGRpciB0byBgJXMnIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6MTM1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVzaW5nIG9wdGlvbnMgZnJvbSAlczogJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDoxNTAgc2NyaXB0cy9EcGtnL0NvbXByZXNzaW9uLnBtOjE3MworIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgYSBzdXBwb3J0ZWQgY29tcHJlc3Npb24iCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDoxNTYgc2NyaXB0cy9EcGtnL0NvbXByZXNzaW9uLnBtOjIwMgorIzogc2NyaXB0cy9EcGtnL0NvbXByZXNzaW9uL1Byb2Nlc3MucG06ODYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgaXMgbm90IGEgY29tcHJlc3Npb24gbGV2ZWwiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDoyMTQKK21zZ2lkICIiCisibmVlZCBhIGNvbW1hbmQgKC14LCAtYiwgLS1iZWZvcmUtYnVpbGQsIC0tYWZ0ZXItYnVpbGQsIC0tcHJpbnQtZm9ybWF0LCAtLSIKKyJjb21taXQpIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6MjM4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGRvZXNuJ3QgY29udGFpbiBhbnkgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHNvdXJjZSBwYWNrYWdlIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6MjgzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImAlcycgaXMgbm90IGEgbGVnYWwgYXJjaGl0ZWN0dXJlIHN0cmluZyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjI4NgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJhcmNoaXRlY3R1cmUgJXMgb25seSBhbGxvd2VkIG9uIGl0cyBvd24gKGxpc3QgZm9yIHBhY2thZ2UgJXMgaXMgYCVzJykiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDozMDEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgZG9lc24ndCBsaXN0IGFueSBiaW5hcnkgcGFja2FnZSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjM0MyBzY3JpcHRzL0Rwa2cvQnVpbGRGbGFncy5wbToyNzAKKyM6IHNjcmlwdHMvRHBrZy9Db21wcmVzc2lvbi9GaWxlSGFuZGxlLnBtOjQwMQorIzogc2NyaXB0cy9EcGtnL0ludGVyZmFjZS9TdG9yYWJsZS5wbTo4NyBzY3JpcHRzL0Rwa2cvU2hsaWJzL09iamR1bXAucG06MTIyCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06Mjc3IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo0MjUKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo1NjEKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbToxMTIKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbToyODYKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbTozNDgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlYWQgJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDozNTAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibm8gc291cmNlIGZvcm1hdCBzcGVjaWZpZWQgaW4gJXMsIHNlZSBkcGtnLXNvdXJjZSgxKSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjM3OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW4ndCBidWlsZCB3aXRoIHNvdXJjZSBmb3JtYXQgJyVzJzogJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDozODEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidXNpbmcgc291cmNlIGZvcm1hdCBgJXMnIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6Mzg4IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbTozMDEKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbTozNDYgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjU0MQorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2J6ci5wbToxNTIKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9uYXRpdmUucG06ODQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiYnVpbGRpbmcgJXMgaW4gJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDozOTkKK21zZ2lkICIteCBuZWVkcyBhdCBsZWFzdCBvbmUgYXJndW1lbnQsIHRoZSAuZHNjIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6NDAyCittc2dpZCAiLXggdGFrZXMgbm8gbW9yZSB0aGFuIHR3byBhcmd1bWVudHMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDo0MDYKK21zZ2lkICIteCBuZWVkcyB0aGUgLmRzYyBmaWxlIGFzIGZpcnN0IGFyZ3VtZW50LCBub3QgYSBkaXJlY3RvcnkiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDo0MjIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5wYWNrIHRhcmdldCBleGlzdHM6ICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6NDMyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGRvZXNuJ3QgY29udGFpbiBhIHZhbGlkIE9wZW5QR1Agc2lnbmF0dXJlIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6NDM0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImV4dHJhY3RpbmcgdW5zaWduZWQgc291cmNlIHBhY2thZ2UgKCVzKSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjQ0MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJleHRyYWN0aW5nICVzIGluICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6NDQ5Cittc2dpZCAib25seSBvbmUgb2YgLXgsIC1iIG9yIC0tcHJpbnQtZm9ybWF0IGFsbG93ZWQsIGFuZCBvbmx5IG9uY2UiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDo0NTcKK21zZ2lkICIiCisiXG4iCisiQ29weXJpZ2h0IChDKSAxOTk2IElhbiBKYWNrc29uXG4iCisiQ29weXJpZ2h0IChDKSAxOTk3IEtsZWUgRGllbmVzXG4iCisiQ29weXJpZ2h0IChDKSAyMDA4IFJhcGhhZWwgSGVydHpvZyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjQ3MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIDxjb21tYW5kPlxuIgorIlxuIgorIkNvbW1hbmRzOlxuIgorIiAgLXggPGZpbGVuYW1lPi5kc2MgWzxvdXRwdXQtZGlyPl1cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBleHRyYWN0IHNvdXJjZSBwYWNrYWdlLlxuIgorIiAgLWIgPGRpcj4gICAgICAgICAgICAgICAgIGJ1aWxkIHNvdXJjZSBwYWNrYWdlLlxuIgorIiAgLS1wcmludC1mb3JtYXQgPGRpcj4gICAgIHByaW50IHRoZSBzb3VyY2UgZm9ybWF0IHRoYXQgd291bGQgYmVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2VkIHRvIGJ1aWxkIHRoZSBzb3VyY2UgcGFja2FnZS5cbiIKKyIgIC0tY29tbWl0IFs8ZGlyPiBbPHBhdGNoLW5hbWU+XV1cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBzdG9yZSB1cHN0cmVhbSBjaGFuZ2VzIGluIGEgbmV3IHBhdGNoLiIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjQ4MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiQnVpbGQgb3B0aW9uczpcbiIKKyIgIC1jPGNvbnRyb2xmaWxlPiAgICAgICAgICBnZXQgY29udHJvbCBpbmZvIGZyb20gdGhpcyBmaWxlLlxuIgorIiAgLWw8Y2hhbmdlbG9nZmlsZT4gICAgICAgIGdldCBwZXItdmVyc2lvbiBpbmZvIGZyb20gdGhpcyBmaWxlLlxuIgorIiAgLUY8Y2hhbmdlbG9nZm9ybWF0PiAgICAgIGZvcmNlIGNoYW5nZSBsb2cgZm9ybWF0LlxuIgorIiAgLVY8bmFtZT49PHZhbHVlPiAgICAgICAgIHNldCBhIHN1YnN0aXR1dGlvbiB2YXJpYWJsZS5cbiIKKyIgIC1UPHZhcmxpc3RmaWxlPiAgICAgICAgICByZWFkIHZhcmlhYmxlcyBoZXJlLlxuIgorIiAgLUQ8ZmllbGQ+PTx2YWx1ZT4gICAgICAgIG92ZXJyaWRlIG9yIGFkZCBhIC5kc2MgZmllbGQgYW5kIHZhbHVlLlxuIgorIiAgLVU8ZmllbGQ+ICAgICAgICAgICAgICAgIHJlbW92ZSBhIGZpZWxkLlxuIgorIiAgLXEgICAgICAgICAgICAgICAgICAgICAgIHF1aWV0IG1vZGUuXG4iCisiICAtaVs8cmVnZXhwPl0gICAgICAgICAgICAgZmlsdGVyIG91dCBmaWxlcyB0byBpZ25vcmUgZGlmZnMgb2ZcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChkZWZhdWx0cyB0bzogJyVzJykuXG4iCisiICAtSVs8cGF0dGVybj5dICAgICAgICAgICAgZmlsdGVyIG91dCBmaWxlcyB3aGVuIGJ1aWxkaW5nIHRhcmJhbGxzXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZGVmYXVsdHMgdG86ICVzKS5cbiIKKyIgIC1aPGNvbXByZXNzaW9uPiAgICAgICAgICBzZWxlY3QgY29tcHJlc3Npb24gdG8gdXNlIChkZWZhdWx0cyB0byAnJXMnLFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3VwcG9ydGVkIGFyZTogJXMpLlxuIgorIiAgLXo8bGV2ZWw+ICAgICAgICAgICAgICAgIGNvbXByZXNzaW9uIGxldmVsIHRvIHVzZSAoZGVmYXVsdHMgdG8gJyVkJyxcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN1cHBvcnRlZCBhcmU6ICcxJy0nOScsICdiZXN0JywgJ2Zhc3QnKSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjQ5OQorbXNnaWQgIiIKKyJFeHRyYWN0IG9wdGlvbnM6XG4iCisiICAtLW5vLWNvcHkgICAgICAgICAgICAgICAgZG9uJ3QgY29weSAub3JpZyB0YXJiYWxsc1xuIgorIiAgLS1uby1jaGVjayAgICAgICAgICAgICAgIGRvbid0IGNoZWNrIHNpZ25hdHVyZSBhbmQgY2hlY2tzdW1zIGJlZm9yZSAiCisidW5wYWNraW5nXG4iCisiICAtLXJlcXVpcmUtdmFsaWQtc2lnbmF0dXJlIGFib3J0IGlmIHRoZSBwYWNrYWdlIGRvZXNuJ3QgaGF2ZSBhIHZhbGlkICIKKyJzaWduYXR1cmUiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDo1MDQKK21zZ2lkICIiCisiR2VuZXJhbCBvcHRpb25zOlxuIgorIiAgLWgsIC0taGVscCAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAgICAgLS12ZXJzaW9uICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi4iCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDo1MDgKK21zZ2lkICIiCisiTW9yZSBvcHRpb25zIGFyZSBhdmFpbGFibGUgYnV0IHRoZXkgZGVwZW5kIG9uIHRoZSBzb3VyY2UgcGFja2FnZSBmb3JtYXQuXG4iCisiU2VlIGRwa2ctc291cmNlKDEpIGZvciBtb3JlIGluZm8uIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvY2hhbmdlbG9nL2RlYmlhbi5wbDozNgorbXNnaWQgIiIKKyJcbiIKKyJDb3B5cmlnaHQgKEMpIDE5OTYgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDA1LDIwMDcgRnJhbmsgTGljaHRlbmhlbGQuIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvY2hhbmdlbG9nL2RlYmlhbi5wbDo0NworIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPi4uLl0gWzxjaGFuZ2Vsb2dmaWxlPl1cbiIKKyJcbiIKKyJPcHRpb25zOlxuIgorIiAgICAtLWhlbHAsIC1oICAgICAgICAgICAgICAgICAgcHJpbnQgdXNhZ2UgaW5mb3JtYXRpb25cbiIKKyIgICAgLS12ZXJzaW9uLCAtViAgICAgICAgICAgICAgIHByaW50IHZlcnNpb24gaW5mb3JtYXRpb25cbiIKKyIgICAgLS1sYWJlbCwgLWwgPGZpbGU+ICAgICAgICAgIG5hbWUgb2YgdGhlIGNoYW5nZWxvZyBmaWxlIHRvXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2UgaW4gZXJyb3IgbWVzc2FnZXNcbiIKKyIgICAgLS1maWxlIDxmaWxlPiAgICAgICAgICAgICAgIGNoYW5nZWxvZyBmaWxlIHRvIHBhcnNlLCBkZWZhdWx0c1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG8gJy0nIChzdGFuZGFyZCBpbnB1dClcbiIKKyIgICAgLS1mb3JtYXQgPG91dHB1dGZvcm1hdD4gICAgIHNlZSBtYW4gcGFnZSBmb3IgbGlzdCBvZiBhdmFpbGFibGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG91dHB1dCBmb3JtYXRzLCBkZWZhdWx0cyB0byAnZHBrZydcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvciBjb21wYXRpYmlsaXR5IHdpdGggZHBrZy1kZXZcbiIKKyIgICAgLS1zaW5jZSwgLXMsIC12IDx2ZXJzaW9uPiAgIGluY2x1ZGUgYWxsIGNoYW5nZXMgbGF0ZXIgdGhhbiB2ZXJzaW9uXG4iCisiICAgIC0tdW50aWwsIC11IDx2ZXJzaW9uPiAgICAgICBpbmNsdWRlIGFsbCBjaGFuZ2VzIGVhcmxpZXIgdGhhbiB2ZXJzaW9uXG4iCisiICAgIC0tZnJvbSwgLWYgPHZlcnNpb24+ICAgICAgICBpbmNsdWRlIGFsbCBjaGFuZ2VzIGVxdWFsIG9yIGxhdGVyXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGFuIHZlcnNpb25cbiIKKyIgICAgLS10bywgLXQgPHZlcnNpb24+ICAgICAgICAgIGluY2x1ZGUgYWxsIGNoYW5nZXMgdXAgdG8gb3IgZXF1YWxcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoYW4gdmVyc2lvblxuIgorIiAgICAtLWNvdW50LCAtYywgLW4gPG51bWJlcj4gICAgaW5jbHVkZSA8bnVtYmVyPiBlbnRyaWVzIGZyb20gdGhlIHRvcFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG9yIHRoZSB0YWlsIGlmIDxudW1iZXI+IGlzIGxvd2VyIHRoYW4gMClcbiIKKyIgICAgLS1vZmZzZXQsIC1vIDxudW1iZXI+ICAgICAgIGNoYW5nZSB0aGUgc3RhcnRpbmcgcG9pbnQgZm9yIC0tY291bnQsXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb3VudGVkIGZyb20gdGhlIHRvcCAob3IgdGhlIHRhaWwgaWZcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxudW1iZXI+IGlzIGxvd2VyIHRoYW4gMClcbiIKKyIgICAgLS1hbGwgICAgICAgICAgICAgICAgICAgICAgIGluY2x1ZGUgYWxsIGNoYW5nZXNcbiIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2NoYW5nZWxvZy9kZWJpYW4ucGw6ODYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAib3V0cHV0IGZvcm1hdCAlcyBub3Qgc3VwcG9ydGVkIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvY2hhbmdlbG9nL2RlYmlhbi5wbDoxMTEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibW9yZSB0aGFuIG9uZSBmaWxlIHNwZWNpZmllZCAoJXMgYW5kICVzKSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2NoYW5nZWxvZy9kZWJpYW4ucGw6MTM1IHNjcmlwdHMvRHBrZy9JbnRlcmZhY2UvU3RvcmFibGUucG06ODQKK21zZ2lkICI8c3RhbmRhcmQgaW5wdXQ+IgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvY2hhbmdlbG9nL2RlYmlhbi5wbDoxMzYKK21zZ2lkICJmYXRhbCBlcnJvciBvY2N1cnJlZCB3aGlsZSBwYXJzaW5nIGlucHV0IgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvY2hhbmdlbG9nL2RlYmlhbi5wbDoxMzkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZmF0YWwgZXJyb3Igb2NjdXJyZWQgd2hpbGUgcGFyc2luZyAlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvQXJjaC5wbTo4NgorbXNnaWQgIiIKKyJDb3VsZG4ndCBkZXRlcm1pbmUgZ2NjIHN5c3RlbSB0eXBlLCBmYWxsaW5nIGJhY2sgdG8gZGVmYXVsdCAobmF0aXZlICIKKyJjb21waWxhdGlvbikiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0FyY2gucG06OTUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIlVua25vd24gZ2NjIHN5c3RlbSB0eXBlICVzLCBmYWxsaW5nIGJhY2sgdG8gZGVmYXVsdCAobmF0aXZlIGNvbXBpbGF0aW9uKSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvQnVpbGRGbGFncy5wbToyNzgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibGluZSAlZCBvZiAlcyBtZW50aW9ucyB1bmtub3duIGZsYWcgJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0J1aWxkRmxhZ3MucG06MjkxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImxpbmUgJWQgb2YgJXMgaXMgaW52YWxpZCwgaXQgaGFzIGJlZW4gaWdub3JlZC4iCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0J1aWxkT3B0aW9ucy5wbTo5NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGZsYWcgaW4gJXM6ICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Db21wcmVzc2lvbi9Qcm9jZXNzLnBtOjcxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGlzIG5vdCBhIHN1cHBvcnRlZCBjb21wcmVzc2lvbiBtZXRob2QiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0NvbXByZXNzaW9uL1Byb2Nlc3MucG06MTIyCittc2dpZCAiRHBrZzo6Q29tcHJlc3Npb246OlByb2Nlc3MgY2FuIG9ubHkgc3RhcnQgb25lIHN1YnByb2Nlc3MgYXQgYSB0aW1lIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06MTcxIHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06MTczCisjOiBzY3JpcHRzL0Rwa2cvRXJyb3JIYW5kbGluZy5wbTo1OQorbXNnaWQgIndhcm5pbmciCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbToxNzEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIiVzKGwlcyk6ICVzXG4iCisiTElORTogJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbToxNzMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMobCVzKTogJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbToyMjEKK21zZ2lkICInb2Zmc2V0JyB3aXRob3V0ICdjb3VudCcgaGFzIG5vIGVmZmVjdCIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtOjIyOQorbXNnaWQgInlvdSBjYW4ndCBjb21iaW5lICdjb3VudCcgb3IgJ29mZnNldCcgd2l0aCBhbnkgb3RoZXIgcmFuZ2Ugb3B0aW9uIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06MjM3Cittc2dpZCAieW91IGNhbiBvbmx5IHNwZWNpZnkgb25lIG9mICdmcm9tJyBhbmQgJ3NpbmNlJywgdXNpbmcgJ3NpbmNlJyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtOjI0MgorbXNnaWQgInlvdSBjYW4gb25seSBzcGVjaWZ5IG9uZSBvZiAndG8nIGFuZCAndW50aWwnLCB1c2luZyAndW50aWwnIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06MjU0IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06MjcwCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtOjI4NiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtOjMwMgorIywgcGVybC1mb3JtYXQKK21zZ2lkICInJXMnIG9wdGlvbiBzcGVjaWZpZXMgbm9uLWV4aXN0aW5nIHZlcnNpb24iCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbToyNTUgc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbTozMDMKK21zZ2lkICJ1c2UgbmV3ZXN0IGVudHJ5IHRoYXQgaXMgZWFybGllciB0aGFuIHRoZSBvbmUgc3BlY2lmaWVkIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06MjY0Cittc2dpZCAibm9uZSBmb3VuZCwgc3RhcnRpbmcgZnJvbSB0aGUgb2xkZXN0IGVudHJ5IgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06MjcxIHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06Mjg3Cittc2dpZCAidXNlIG9sZGVzdCBlbnRyeSB0aGF0IGlzIGxhdGVyIHRoYW4gdGhlIG9uZSBzcGVjaWZpZWQiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbToyODEgc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbToyOTcKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06MzEyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIm5vIHN1Y2ggZW50cnkgZm91bmQsIGlnbm9yaW5nICclcycgcGFyYW1ldGVyIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06MzE4Cittc2dpZCAiJ3NpbmNlJyBvcHRpb24gc3BlY2lmaWVzIG1vc3QgcmVjZW50IHZlcnNpb24sIGlnbm9yaW5nIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06MzIyCittc2dpZCAiJ3VudGlsJyBvcHRpb24gc3BlY2lmaWVzIG9sZGVzdCB2ZXJzaW9uLCBpZ25vcmluZyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0RlYmlhbi5wbTo1NAorbXNnaWQgImZpcnN0IGhlYWRpbmciCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9EZWJpYW4ucG06NTUKK21zZ2lkICJuZXh0IGhlYWRpbmcgb3IgZW9mIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRGViaWFuLnBtOjU2Cittc2dpZCAic3RhcnQgb2YgY2hhbmdlIGRhdGEiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9EZWJpYW4ucG06NTcKK21zZ2lkICJtb3JlIGNoYW5nZSBkYXRhIG9yIHRyYWlsZXIiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9EZWJpYW4ucG06ODkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZm91bmQgc3RhcnQgb2YgZW50cnkgd2hlcmUgZXhwZWN0ZWQgJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9EZWJpYW4ucG06MTI2Cittc2dpZCAiYmFkbHkgZm9ybWF0dGVkIGhlYWRpbmcgbGluZSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0RlYmlhbi5wbToxMzAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZm91bmQgdHJhaWxlciB3aGVyZSBleHBlY3RlZCAlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0RlYmlhbi5wbToxNDAKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRW50cnkvRGViaWFuLnBtOjE0OQorbXNnaWQgImJhZGx5IGZvcm1hdHRlZCB0cmFpbGVyIGxpbmUiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9EZWJpYW4ucG06MTQzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImZvdW5kIGNoYW5nZSBkYXRhIHdoZXJlIGV4cGVjdGVkICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRGViaWFuLnBtOjE2NQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJmb3VuZCBibGFuayBsaW5lIHdoZXJlIGV4cGVjdGVkICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRGViaWFuLnBtOjE2OQorbXNnaWQgInVucmVjb2duaXNlZCBsaW5lIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRGViaWFuLnBtOjE4MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJmb3VuZCBlb2Ygd2hlcmUgZXhwZWN0ZWQgJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9FbnRyeS9EZWJpYW4ucG06MTIyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImJhZCBrZXktdmFsdWUgYWZ0ZXIgYDsnOiBgJXMnIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRW50cnkvRGViaWFuLnBtOjEyNworIywgcGVybC1mb3JtYXQKK21zZ2lkICJyZXBlYXRlZCBrZXktdmFsdWUgJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9FbnRyeS9EZWJpYW4ucG06MTMxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImJhZGx5IGZvcm1hdHRlZCB1cmdlbmN5IHZhbHVlOiAlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0VudHJ5L0RlYmlhbi5wbToxMzUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5rbm93biBrZXktdmFsdWUgJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9FbnRyeS9EZWJpYW4ucG06MTM5Cittc2dpZCAidGhlIGhlYWRlciBkb2Vzbid0IG1hdGNoIHRoZSBleHBlY3RlZCByZWdleCIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0VudHJ5L0RlYmlhbi5wbToxNTIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY291bGRuJ3QgcGFyc2UgZGF0ZSAlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0VudHJ5L0RlYmlhbi5wbToxNTUKK21zZ2lkICJ0aGUgdHJhaWxlciBkb2Vzbid0IG1hdGNoIHRoZSBleHBlY3RlZCByZWdleCIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL1BhcnNlLnBtOjEwNgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ0YWlsIG9mICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvUGFyc2UucG06MTE4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImZvcm1hdCBwYXJzZXIgJXMgbm90IGV4ZWN1dGFibGUiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9QYXJzZS5wbToxMjEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2hhbmdlbG9nIGZvcm1hdCAlcyBpcyB1bmtub3duIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvUGFyc2UucG06MTQ0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCBleGVjIGZvcm1hdCBwYXJzZXI6ICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvUGFyc2UucG06MTUxCittc2dpZCAib3V0cHV0IG9mIGNoYW5nZWxvZyBwYXJzZXIiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9QYXJzZS5wbToxNTQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2hhbmdlbG9nIHBhcnNlciAlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hlY2tzdW1zLnBtOjE3MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3QgZnN0YXQgZmlsZSAlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hlY2tzdW1zLnBtOjE3MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJGaWxlICVzIGhhcyBzaXplICV1IGluc3RlYWQgb2YgZXhwZWN0ZWQgJXUiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0NoZWNrc3Vtcy5wbToxODYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiRmlsZSAlcyBoYXMgY2hlY2tzdW0gJXMgaW5zdGVhZCBvZiBleHBlY3RlZCAlcyAoYWxnb3JpdGhtICVzKSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hlY2tzdW1zLnBtOjE5MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjaGVja3N1bSBwcm9ncmFtIGdhdmUgYm9ndXMgb3V0cHV0IGAlcyciCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0NoZWNrc3Vtcy5wbToyMTkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBsaW5lIGluICVzIGNoZWNrc3VtcyBzdHJpbmc6ICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGVja3N1bXMucG06MjI1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIkNvbmZsaWN0aW5nIGNoZWNrc3VtcyBgJXMnIGFuZCBgJXMnIGZvciBmaWxlIGAlcyciCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0NoZWNrc3Vtcy5wbToyMjkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiQ29uZmxpY3RpbmcgZmlsZSBzaXplcyBgJXUnIGFuZCBgJXUnIGZvciBmaWxlIGAlcyciCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0NvbmYucG06MTA1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInNob3J0IG9wdGlvbiBub3QgYWxsb3dlZCBpbiAlcywgbGluZSAlZCIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29uZi5wbToxMTkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBzeW50YXggZm9yIG9wdGlvbiBpbiAlcywgbGluZSAlZCIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29udHJvbC5wbToxNTAKK21zZ2lkICJnZW5lcmFsIHNlY3Rpb24gb2YgY29udHJvbCBpbmZvIGZpbGUiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0NvbnRyb2wucG06MTUyCittc2dpZCAicGFja2FnZSdzIHNlY3Rpb24gb2YgY29udHJvbCBpbmZvIGZpbGUiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0NvbnRyb2wucG06MTU0Cittc2dpZCAicGFyc2VkIHZlcnNpb24gb2YgY2hhbmdlbG9nIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Db250cm9sLnBtOjE1NiBzY3JpcHRzL0Rwa2cvQ29udHJvbC5wbToxNTgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZW50cnkgaW4gcmVwb3NpdG9yeSdzICVzIGZpbGUiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0NvbnRyb2wucG06MTYwIHNjcmlwdHMvRHBrZy9Db250cm9sLnBtOjE2NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Db250cm9sLnBtOjE2MgorbXNnaWQgImNvbnRyb2wgaW5mbyBvZiBhIC5kZWIgcGFja2FnZSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29udHJvbC5wbToxNjYKK21zZ2lkICJ2ZW5kb3IgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29udHJvbC5wbToxNjgKK21zZ2lkICJlbnRyeSBpbiBkcGtnJ3Mgc3RhdHVzIGZpbGUiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0NvbnRyb2wvRmllbGRzLnBtOjQ1NQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGluZm9ybWF0aW9uIGZpZWxkICclcycgaW4gaW5wdXQgZGF0YSBpbiAlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29udHJvbC9GaWVsZHMucG06NDU2Cittc2dpZCAiY29udHJvbCBpbmZvcm1hdGlvbiIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29udHJvbC9JbmZvLnBtOjEwMworbXNnaWQgImZpcnN0IGJsb2NrIGxhY2tzIGEgc291cmNlIGZpZWxkIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Db250cm9sL0luZm8ucG06MTEwIHNjcmlwdHMvRHBrZy9Db250cm9sL0luZm8ucG06MTEzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImJsb2NrIGxhY2tzIHRoZSAnJXMnIGZpZWxkIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Db250cm9sL0hhc2gucG06MTcyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBmaWVsZCAlcyBmb3VuZCIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29udHJvbC9IYXNoLnBtOjE4MAorbXNnaWQgImNvbnRpbnVlZCB2YWx1ZSBsaW5lIG5vdCBpbiBmaWVsZCIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29udHJvbC9IYXNoLnBtOjE5NAorbXNnaWQgIlBHUCBzaWduYXR1cmUgbm90IGFsbG93ZWQgaGVyZSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29udHJvbC9IYXNoLnBtOjIwMQorbXNnaWQgImV4cGVjdGVkIFBHUCBzaWduYXR1cmUsIGZvdW5kIEVPRiBhZnRlciBibGFuayBsaW5lIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Db250cm9sL0hhc2gucG06MjA1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImV4cGVjdGVkIFBHUCBzaWduYXR1cmUsIGZvdW5kIHNvbWV0aGluZyBlbHNlIGAlcyciCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0NvbnRyb2wvSGFzaC5wbToyMTMKK21zZ2lkICJ1bmZpbmlzaGVkIFBHUCBzaWduYXR1cmUiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0NvbnRyb2wvSGFzaC5wbToyMTkKK21zZ2lkICJsaW5lIHdpdGggdW5rbm93biBmb3JtYXQgKG5vdCBmaWVsZC1jb2xvbi12YWx1ZSkiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0NvbnRyb2wvSGFzaC5wbTozMTYKK21zZ2lkICJ3cml0ZSBlcnJvciBvbiBjb250cm9sIGRhdGEiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0RlcHMucG06Mjc0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbid0IHBhcnNlIGRlcGVuZGVuY3kgJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0RlcHMucG06MzAxCittc2dpZCAiYW4gdW5pb24gZGVwZW5kZW5jeSBjYW4gb25seSBjb250YWluIHNpbXBsZSBkZXBlbmRlbmNpZXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0Vycm9ySGFuZGxpbmcucG06NTQKK21zZ2lkICJpbmZvIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9FcnJvckhhbmRsaW5nLnBtOjY1IHNjcmlwdHMvRHBrZy9FcnJvckhhbmRsaW5nLnBtOjcwCisjOiBzY3JpcHRzL0Rwa2cvRXJyb3JIYW5kbGluZy5wbTo3NQorbXNnaWQgImVycm9yIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9FcnJvckhhbmRsaW5nLnBtOjgwCittc2dpZCAiaW50ZXJuYWwgZXJyb3IiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0Vycm9ySGFuZGxpbmcucG06OTIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgZ2F2ZSBlcnJvciBleGl0IHN0YXR1cyAlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvRXJyb3JIYW5kbGluZy5wbTo5NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBkaWVkIGZyb20gc2lnbmFsICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9FcnJvckhhbmRsaW5nLnBtOjk2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGZhaWxlZCB3aXRoIHVua25vd24gZXhpdCBjb2RlICVkIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9FcnJvckhhbmRsaW5nLnBtOjExNQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gJXMgYXQgbGluZSAlZDogJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0lQQy5wbToyMTEgc2NyaXB0cy9EcGtnL0lQQy5wbToyMTcgc2NyaXB0cy9EcGtnL0lQQy5wbToyMjMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAicGlwZSBmb3IgJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0lQQy5wbToyNDIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2hkaXIgdG8gJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0lQQy5wbToyNDkKK21zZ2lkICJyZW9wZW4gc3RkaW4iCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0lQQy5wbToyNTcgc2NyaXB0cy9EcGtnL0lQQy5wbToyNjUKK21zZ2lkICJyZW9wZW4gc3Rkb3V0IgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9JUEMucG06MzM5Cittc2dpZCAiY2hpbGQgcHJvY2VzcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvSVBDLnBtOjM0NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ3YWl0IGZvciAlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvSVBDLnBtOjM0OQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBkaWRuJ3QgY29tcGxldGUgaW4gJWQgc2Vjb25kIgorbXNnaWRfcGx1cmFsICIlcyBkaWRuJ3QgY29tcGxldGUgaW4gJWQgc2Vjb25kcyIKK21zZ3N0clswXSAiIgorbXNnc3RyWzFdICIiCisKKyM6IHNjcmlwdHMvRHBrZy9TaGxpYnMvT2JqZHVtcC5wbToyMjIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiQ291bGRuJ3QgcGFyc2UgZHluYW1pYyByZWxvY2F0aW9uIHJlY29yZDogJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NobGlicy9PYmpkdW1wLnBtOjMzOQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJDb3VsZG4ndCBwYXJzZSBkeW5hbWljIHN5bWJvbCBkZWZpbml0aW9uOiAlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU2hsaWJzL1N5bWJvbC5wbToxMTEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAic3ltYm9sIG5hbWUgdW5zcGVjaWZpZWQ6ICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9TaGxpYnMvU3ltYm9sLnBtOjE2OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ5b3UgY2FuJ3QgdXNlIHN5bXZlciB0YWcgdG8gY2F0Y2ggdW52ZXJzaW9uZWQgc3ltYm9sczogJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NobGlicy9TeW1ib2xGaWxlLnBtOjIxOAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJTeW1ib2wgaW5mb3JtYXRpb24gbXVzdCBiZSBwcmVjZWRlZCBieSBhIGhlYWRlciAoZmlsZSAlcywgbGluZSAlcykuIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9TaGxpYnMvU3ltYm9sRmlsZS5wbToyMjYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiRmFpbGVkIHRvIHBhcnNlIGxpbmUgaW4gJXM6ICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9TaGxpYnMvU3ltYm9sRmlsZS5wbToyNTgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiRmFpbGVkIHRvIHBhcnNlIGEgbGluZSBpbiAlczogJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NobGlicy9TeW1ib2xGaWxlLnBtOjI3MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJUcmllZCB0byBtZXJnZSB0aGUgc2FtZSBvYmplY3QgKCVzKSB0d2ljZSBpbiBhIHN5bWZpbGUuIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9TaGxpYnMvU3ltYm9sRmlsZS5wbTozODgKK21zZ2lkICJDYW4ndCBtZXJnZSBzeW1ib2xzIGZyb20gb2JqZWN0cyB3aXRob3V0IFNPTkFNRS4iCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9BcmNoaXZlLnBtOjY0Cittc2dpZCAid3JpdGUgb24gdGFyIGlucHV0IgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvQXJjaGl2ZS5wbTo4OQorbXNnaWQgImNsb3NlIG9uIHRhciBpbnB1dCIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL0FyY2hpdmUucG06MTE0IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NTAzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCBjcmVhdGUgZGlyZWN0b3J5ICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvQXJjaGl2ZS5wbToxNDUgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOjMwNworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjE5OQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgb3BlbmRpciAlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL0FyY2hpdmUucG06MTUyIHNjcmlwdHMvRHBrZy9Tb3VyY2UvQXJjaGl2ZS5wbToxNTYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiVW5hYmxlIHRvIHJlbmFtZSAlcyB0byAlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL0Z1bmN0aW9ucy5wbTozNAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc3RhdCBkaXJlY3RvcnkgJXMgKGJlZm9yZSByZW1vdmFsKSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL0Z1bmN0aW9ucy5wbTo0MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hlY2sgZm9yIHJlbW92YWwgb2YgZGlyIGAlcyciCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9GdW5jdGlvbnMucG06NDIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAicm0gLXJmIGZhaWxlZCB0byByZW1vdmUgYCVzJyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL0Z1bmN0aW9ucy5wbTo4MyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjU1MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3QgY2hhbmdlIHRpbWVzdGFtcCBmb3IgJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9GdW5jdGlvbnMucG06ODUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlYWQgdGltZXN0YW1wIGZyb20gJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo3MCBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NDQzCittc2dpZCAiYmluYXJ5IGZpbGUgY29udGVudHMgY2hhbmdlZCIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjExOAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJmaWxlICVzIGhhcyBubyBmaW5hbCBuZXdsaW5lIChlaXRoZXIgb3JpZ2luYWwgb3IgbW9kaWZpZWQgdmVyc2lvbikiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbToxMjIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5rbm93biBsaW5lIGZyb20gZGlmZiAtdSBvbiAlczogYCVzJyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjEyNSBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjEyOAorbXNnaWQgImZhaWxlZCB0byB3cml0ZSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjEzOAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJkaWZmIG9uICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MTY0IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MTgzCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjIwNiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjIxOAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc3RhdCBmaWxlICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MTczIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MTc1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZWFkIGxpbmsgJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbToyMDIKK21zZ2lkICJkZXZpY2Ugb3Igc29ja2V0IGlzIG5vdCBhbGxvd2VkIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MjExCittc2dpZCAidW5rbm93biBmaWxlIHR5cGUiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbToyMjQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgZGVsZXRpb24gb2YgZmlsZSAlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjIyNworIywgcGVybC1mb3JtYXQKK21zZ2lkICJpZ25vcmluZyBkZWxldGlvbiBvZiBkaXJlY3RvcnkgJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbToyMjkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgZGVsZXRpb24gb2Ygc3ltbGluayAlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjI3MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJuZXdseSBjcmVhdGVkIGVtcHR5IGZpbGUgJyVzJyB3aWxsIG5vdCBiZSByZXByZXNlbnRlZCBpbiBkaWZmIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06Mjc1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImV4ZWN1dGFibGUgbW9kZSAlMDRvIG9mICclcycgd2lsbCBub3QgYmUgcmVwcmVzZW50ZWQgaW4gZGlmZiIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjI4MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJzcGVjaWFsIG1vZGUgJTA0byBvZiAnJXMnIHdpbGwgbm90IGJlIHJlcHJlc2VudGVkIGluIGRpZmYiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTozMDAgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjQ0MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVwcmVzZW50IGNoYW5nZSB0byAlczogJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTozMDcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlcHJlc2VudCBjaGFuZ2UgdG8gJXM6IgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MzA4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiAgbmV3IHZlcnNpb24gaXMgJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTozMDkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiICBvbGQgdmVyc2lvbiBpcyAlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjM4NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJleHBlY3RlZCBeLS0tIGluIGxpbmUgJWQgb2YgZGlmZiBgJXMnIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06Mzg5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImRpZmYgYCVzJyBwYXRjaGVzIGZpbGUgd2l0aCBuYW1lIGVuZGluZyAuZHBrZy1vcmlnIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MzkzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImRpZmYgYCVzJyBmaW5pc2hlcyBpbiBtaWRkbGUgb2YgLS0tLysrKyAobGluZSAlZCkiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTozOTYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibGluZSBhZnRlciAtLS0gaXNuJ3QgYXMgZXhwZWN0ZWQgaW4gZGlmZiBgJXMnIChsaW5lICVkKSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjQwMgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJub25lIG9mIHRoZSBmaWxlbmFtZXMgaW4gLS0tLysrKyBhcmUgdmFsaWQgaW4gZGlmZiAnJXMnIChsaW5lICVkKSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjQxMAorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjEyNworIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBjb250YWlucyBhbiBpbnNlY3VyZSBwYXRoOiAlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjQxNQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJkaWZmICVzIG1vZGlmaWVzIGZpbGUgJXMgdGhyb3VnaCBhIHN5bWxpbms6ICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NDI0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIm9yaWdpbmFsIGFuZCBtb2RpZmllZCBmaWxlcyBhcmUgL2Rldi9udWxsIGluIGRpZmYgYCVzJyAobGluZSAlZCkiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo0MjcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZmlsZSByZW1vdmFsIHdpdGhvdXQgcHJvcGVyIGZpbGVuYW1lIGluIGRpZmYgYCVzJyAobGluZSAlZCkiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo0MzAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZGlmZiAlcyByZW1vdmVzIGEgbm9uLWV4aXN0aW5nIGZpbGUgJXMgKGxpbmUgJWQpIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NDQyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImRpZmYgYCVzJyBwYXRjaGVzIHNvbWV0aGluZyB3aGljaCBpcyBub3QgYSBwbGFpbiBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NDQ2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImRpZmYgYCVzJyBwYXRjaGVzIGZpbGUgJXMgdHdpY2UiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo0NjQgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo0NjgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgZGlmZiBgJXMnIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NDc3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImV4cGVjdGVkIFsgKy1dIGF0IHN0YXJ0IG9mIGxpbmUgJWQgb2YgZGlmZiBgJXMnIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NDg0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImV4cGVjdGVkIF5AQCBhdCBsaW5lICVkIG9mIGRpZmYgYCVzJyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjQ4OQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJkaWZmIGAlcycgZG9lc24ndCBjb250YWluIGFueSBwYXRjaCIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjU1NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJyZW1vdmUgcGF0Y2ggYmFja3VwIGZpbGUgJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo1OTUKK21zZ2lkICJub25leGlzdGVudCIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjU5NiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG06NDU4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzdGF0ICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NTk4Cittc2dpZCAicGxhaW4gZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjU5OQorbXNnaWQgImRpcmVjdG9yeSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjYwMAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJzeW1saW5rIHRvICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NjAxCittc2dpZCAiYmxvY2sgZGV2aWNlIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NjAyCittc2dpZCAiY2hhcmFjdGVyIGRldmljZSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjYwMworbXNnaWQgIm5hbWVkIHBpcGUiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo2MDQKK21zZ2lkICJuYW1lZCBzb2NrZXQiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOjE4OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgdGhlIG5hbWUgb2YgYSBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbToyMDgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibWlzc2luZyBjcml0aWNhbCBzb3VyY2UgY29udHJvbCBmaWVsZCAlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG06MjM2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJzb3VyY2UgcGFja2FnZSBmb3JtYXQgYCVzJyBpcyBub3Qgc3VwcG9ydGVkIChQZXJsIG1vZHVsZSAlcyBpcyByZXF1aXJlZCkiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOjI0MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIEZvcm1hdCBmaWVsZCBgJXMnIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbToyODgKK21zZ2lkICJzb3VyY2UgYW5kIHZlcnNpb24gYXJlIHJlcXVpcmVkIHRvIGNvbXB1dGUgdGhlIHNvdXJjZSBiYXNlbmFtZSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG06MzcxIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbTozNzMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHZlcmlmeSBzaWduYXR1cmUgb24gJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOjM4MCBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG06MzgyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCB2ZXJpZnkgc2lnbmF0dXJlIG9uICVzIHNpbmNlIGdwZyBpc24ndCBpbnN0YWxsZWQiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOjM5MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgYSB2YWxpZCBvcHRpb24gZm9yICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbTo0NjAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgZG9lcyBub3QgZXhpc3QiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOjQ2NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3QgbWFrZSAlcyBleGVjdXRhYmxlIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbTo0NjYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgaXMgbm90IGEgcGxhaW4gZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG06NTE3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiclcycgaXMgbm90IHN1cHBvcnRlZCBieSB0aGUgc291cmNlIGZvcm1hdCAnJXMnIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbTo2MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICItcyVzIG9wdGlvbiBvdmVycmlkZXMgZWFybGllciAtcyVzIG9wdGlvbiIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06ODQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAic291cmNlIGhhbmRsaW5nIHN0eWxlIC1zJXMgbm90IGFsbG93ZWQgd2l0aCAteCIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06OTYKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9uYXRpdmUucG06NTEKK21zZ2lkICJtdWx0aXBsZSB0YXJmaWxlcyBpbiB2MS4wIHNvdXJjZSBwYWNrYWdlIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToxMDEgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjEyOQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bnJlY29nbml6ZWQgZmlsZSBmb3IgYSAlcyBzb3VyY2UgcGFja2FnZTogJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjEwNgorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL25hdGl2ZS5wbTo1OAorbXNnaWQgIm5vIHRhcmZpbGUgaW4gRmlsZXMgZmllbGQiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjEwOQorbXNnaWQgIm5hdGl2ZSBwYWNrYWdlIHdpdGggLm9yaWcudGFyIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToxMjIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbmFtZSBgJXMnIHRvIGAlcyciCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjEyNiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06MTQxCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06MTUzIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbToxNjYKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9ienIucG06MTkwCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvbmF0aXZlLnBtOjYxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVucGFja2luZyAlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MTMzCittc2dpZCAidW5hYmxlIHRvIGtlZXAgb3JpZyBkaXJlY3RvcnkgKGFscmVhZHkgZXhpc3RzKSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MTQwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZW5hbWUgbmV3bHktZXh0cmFjdGVkICVzIHRvICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToxNDYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlbmFtZSBzYXZlZCAlcyB0byAlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MTUzIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbToyMjIKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbToxNzIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiYXBwbHlpbmcgJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjE1OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1cHN0cmVhbSBmaWxlcyB0aGF0IGhhdmUgYmVlbiBtb2RpZmllZDogJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjE2OAorbXNnaWQgIm9ubHkgc3VwcG9ydHMgZ3ppcCBjb21wcmVzc2lvbiIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MTc5Cittc2dpZCAiIgorIi1iIHRha2VzIGF0IG1vc3QgYSBkaXJlY3RvcnkgYW5kIGFuIG9yaWcgc291cmNlIGFyZ3VtZW50ICh3aXRoIHYxLjAgc291cmNlICIKKyJwYWNrYWdlKSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MTg1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInNvdXJjZSBoYW5kbGluZyBzdHlsZSAtcyVzIG5vdCBhbGxvd2VkIHdpdGggLWIiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjIwMAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJwYWNrZWQgb3JpZyBgJXMnIGV4aXN0cyBidXQgaXMgbm90IGEgcGxhaW4gZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MjEyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzdGF0IG9yaWcgYXJndW1lbnQgJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjIxOAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisib3JpZyBhcmd1bWVudCBpcyB1bnBhY2tlZCBidXQgc291cmNlIGhhbmRsaW5nIHN0eWxlIC1zJXMgY2FsbHMgZm9yIHBhY2tlZCAoLiIKKyJvcmlnLnRhci48ZXh0PikiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjIyNgorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisib3JpZyBhcmd1bWVudCBpcyBwYWNrZWQgYnV0IHNvdXJjZSBoYW5kbGluZyBzdHlsZSAtcyVzIGNhbGxzIGZvciB1bnBhY2tlZCAoLiIKKyJvcmlnLykiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjIzMQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJvcmlnIGFyZ3VtZW50ICVzIGlzIG5vdCBhIHBsYWluIGZpbGUgb3IgZGlyZWN0b3J5IgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToyMzcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIm9yaWcgYXJndW1lbnQgaXMgZW1wdHkgKG1lYW5zIG5vIG9yaWcsIG5vIGRpZmYpIGJ1dCBzb3VyY2UgaGFuZGxpbmcgc3R5bGUgLXMiCisiJXMgd2FudHMgc29tZXRoaW5nIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToyNTAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5wYWNrZWQgb3JpZyBgJXMnIGV4aXN0cyBidXQgaXMgbm90IGEgZGlyZWN0b3J5IgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToyNTUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgcHV0YXRpdmUgdW5wYWNrZWQgb3JpZyBgJXMnIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToyNjQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAic291cmNlIGRpcmVjdG9yeSAnJXMnIGlzIG5vdCA8c291cmNlcGFja2FnZT4tPHVwc3RyZWFtdmVyc2lvbj4gJyVzJyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MjczCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIi5vcmlnIGRpcmVjdG9yeSBuYW1lICVzIGlzIG5vdCA8cGFja2FnZT4tPHVwc3RyZWFtdmVyc2lvbj4gKHdhbnRlZCAlcykiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjI4MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiLm9yaWcudGFyIG5hbWUgJXMgaXMgbm90IDxwYWNrYWdlPl88dXBzdHJlYW12ZXJzaW9uPi5vcmlnLnRhciAod2FudGVkICVzKSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06Mjk0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJ0YXJmaWxlIGAlcycgYWxyZWFkeSBleGlzdHMsIG5vdCBvdmVyd3JpdGluZywgZ2l2aW5nIHVwOyB1c2UgLXNVIG9yIC1zUiB0byAiCisib3ZlcnJpZGUiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjI5OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hlY2sgZm9yIGV4aXN0ZW5jZSBvZiBgJXMnIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbTozMTMgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjM3NQorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL25hdGl2ZS5wbTo5OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVuYW1lIGAlcycgKG5ld2x5IGNyZWF0ZWQpIHRvIGAlcyciCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjMxNiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06Mzc4CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NjAzCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvbmF0aXZlLnBtOjEwMgorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjM2NworIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hhbmdlIHBlcm1pc3Npb24gb2YgYCVzJyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MzE4IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTozNDgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiYnVpbGRpbmcgJXMgdXNpbmcgZXhpc3RpbmcgJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjMyNworIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisib3JpZyBkaXIgYCVzJyBhbHJlYWR5IGV4aXN0cywgbm90IG92ZXJ3cml0aW5nLCBnaXZpbmcgdXA7IHVzZSAtc0EsIC1zSyBvciAtIgorInNQIHRvIG92ZXJyaWRlIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbTozMzUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoZWNrIGZvciBleGlzdGVuY2Ugb2Ygb3JpZyBkaXIgYCVzJyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MzY2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInRoZSBkaWZmIG1vZGlmaWVzIHRoZSBmb2xsb3dpbmcgdXBzdHJlYW0gZmlsZXM6ICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbTozNjgKK21zZ2lkICIiCisidXNlIHRoZSAnMy4wIChxdWlsdCknIGZvcm1hdCB0byBoYXZlIHNlcGFyYXRlIGFuZCBkb2N1bWVudGVkIGNoYW5nZXMgdG8gIgorInVwc3RyZWFtIGZpbGVzLCBzZWUgZHBrZy1zb3VyY2UoMSkiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjM3MAorbXNnaWQgImFib3J0aW5nIGR1ZSB0byAtLWFib3J0LW9uLXVwc3RyZWFtLWNoYW5nZXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjM4OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlczogdW5yZXByZXNlbnRhYmxlIGNoYW5nZXMgdG8gc291cmNlIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbToxMTkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIGZpbGVzIGluICVzIHNvdXJjZSBwYWNrYWdlOiAlcy4qIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbToxMzUKK21zZ2lkICJtaXNzaW5nIG9yaWcudGFyIG9yIGRlYmlhbi50YXIgZmlsZSBpbiB2Mi4wIHNvdXJjZSBwYWNrYWdlIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbToxNTUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAicmVxdWlyZWQgcmVtb3ZhbCBvZiBgJXMnIGluc3RhbGxlZCBieSBvcmlnaW5hbCB0YXJiYWxsIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbToyNDAKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbToyNTUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5hcHBseWluZyAlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06MjYzIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTozNDQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibm8gdXBzdHJlYW0gdGFyYmFsbCBmb3VuZCBhdCAlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06MzE0CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06MzI5Cittc2dpZCAicGF0Y2hlcyBhcmUgbm90IGFwcGxpZWQsIGFwcGx5aW5nIHRoZW0gbm93IgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTozMzEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAic2V2ZXJhbCBvcmlnLnRhciBmaWxlcyBmb3VuZCAoJXMgYW5kICVzKSBidXQgb25seSBvbmUgaXMgYWxsb3dlZCIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06MzcwCittc2dpZCAiY29weSBvZiB0aGUgZGViaWFuIGRpcmVjdG9yeSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06Mzg4Cittc2dpZCAidW5yZXByZXNlbnRhYmxlIGNoYW5nZXMgdG8gc291cmNlIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTozOTEKK21zZ2lkICJsb2NhbCBjaGFuZ2VzIGRldGVjdGVkLCB0aGUgbW9kaWZpZWQgZmlsZXMgYXJlOiIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NDEwCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvYnpyLnBtOjk3CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvbmF0aXZlLnBtOjc2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIi1iIHRha2VzIG9ubHkgb25lIHBhcmFtZXRlciB3aXRoIGZvcm1hdCBgJXMnIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo0NDQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorImFkZCAlcyBpbiBkZWJpYW4vc291cmNlL2luY2x1ZGUtYmluYXJpZXMgaWYgeW91IHdhbnQgdG8gc3RvcmUgdGhlIG1vZGlmaWVkICIKKyJiaW5hcnkgaW4gdGhlIGRlYmlhbiB0YXJiYWxsIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo0NTgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW53YW50ZWQgYmluYXJ5IGZpbGU6ICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo0OTMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorImRldGVjdGVkICVkIHVud2FudGVkIGJpbmFyeSBmaWxlIChhZGQgaXQgaW4gZGViaWFuL3NvdXJjZS9pbmNsdWRlLWJpbmFyaWVzICIKKyJ0byBhbGxvdyBpdHMgaW5jbHVzaW9uKS4iCittc2dpZF9wbHVyYWwgIiIKKyJkZXRlY3RlZCAlZCB1bndhbnRlZCBiaW5hcnkgZmlsZXMgKGFkZCB0aGVtIGluIGRlYmlhbi9zb3VyY2UvaW5jbHVkZS0iCisiYmluYXJpZXMgdG8gYWxsb3cgdGhlaXIgaW5jbHVzaW9uKS4iCittc2dzdHJbMF0gIiIKK21zZ3N0clsxXSAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NTA4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInlvdSBjYW4gaW50ZWdyYXRlIHRoZSBsb2NhbCBjaGFuZ2VzIHdpdGggJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjUxMAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJhYm9ydGluZyBkdWUgdG8gdW5leHBlY3RlZCB1cHN0cmVhbSBjaGFuZ2VzLCBzZWUgJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjUyMCBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NjUzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImxvY2FsIGNoYW5nZXMgaGF2ZSBiZWVuIHJlY29yZGVkIGluIGEgbmV3IHBhdGNoOiAlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NTI0IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo2MDkKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo2Mzcgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjY1MQorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjM2OQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVtb3ZlICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo1MzQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiYWRkaW5nICVzIHRvICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo2MDEKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbTozNjUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNvcHkgJXMgdG8gJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjYyNAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVnaXN0ZXIgY2hhbmdlcyBpbiAlcywgdGhpcyBwYXRjaCBhbHJlYWR5IGV4aXN0cyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NjM4Cittc2dpZCAidGhlcmUgYXJlIG5vIGxvY2FsIGNoYW5nZXMgdG8gcmVjb3JkIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo2NDMKK21zZ2lkICJFbnRlciB0aGUgZGVzaXJlZCBwYXRjaCBuYW1lOiAiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2J6ci5wbTo1MgorbXNnaWQgIiIKKyJUaGlzIHNvdXJjZSBwYWNrYWdlIGNhbiBvbmx5IGJlIG1hbmlwdWxhdGVkIHVzaW5nIGJ6ciwgd2hpY2ggaXMgbm90IGluIHRoZSAiCisiUEFUSC4iCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2J6ci5wbTo1OQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisic291cmNlIGRpcmVjdG9yeSBpcyBub3QgdGhlIHRvcCBkaXJlY3Rvcnkgb2YgYSBienIgcmVwb3NpdG9yeSAoJXMvLmJ6ciBub3QgIgorInByZXNlbnQpLCBidXQgRm9ybWF0IGJ6ciB3YXMgc3BlY2lmaWVkIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9ienIucG06NjYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgaXMgYSBzeW1saW5rIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9ienIucG06NzIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgaXMgYSBzeW1saW5rIHRvIG91dHNpZGUgJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2J6ci5wbTo4MworbXNnaWQgImRvZXNuJ3QgY29udGFpbiBhIGJ6ciByZXBvc2l0b3J5IgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9ienIucG06MTI3Cittc2dpZCAiYnpyIHN0YXR1cyBleGl0ZWQgbm9uemVybyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvYnpyLnBtOjEyOQorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2dpdC5wbToxMzMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5jb21taXR0ZWQsIG5vdC1pZ25vcmVkIGNoYW5nZXMgaW4gd29ya2luZyBkaXJlY3Rvcnk6ICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9ienIucG06MTc5Cittc2dpZCAiZm9ybWF0IHYzLjAgdXNlcyBvbmx5IG9uZSBzb3VyY2UgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvYnpyLnBtOjE4MworIywgcGVybC1mb3JtYXQKK21zZ2lkICJleHBlY3RlZCAlcywgZ290ICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9jdXN0b20ucG06NDAKK21zZ2lkICJGb3JtYXQgYDMuMCAoY3VzdG9tKScgaXMgb25seSB1c2VkIHRvIGNyZWF0ZSBzb3VyY2UgcGFja2FnZXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2N1c3RvbS5wbTo0NgorbXNnaWQgIm5vIGZpbGVzIGluZGljYXRlZCBvbiBjb21tYW5kIGxpbmUiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2N1c3RvbS5wbTo1MworbXNnaWQgIi0tdGFyZ2V0LWZvcm1hdCBvcHRpb24gaXMgbWlzc2luZyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvbmF0aXZlLnBtOjU0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVucmVjb2duaXplZCBmaWxlIGZvciBhIG5hdGl2ZSBzb3VyY2UgcGFja2FnZTogJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2dpdC5wbTo1NQorbXNnaWQgIiIKKyJUaGlzIHNvdXJjZSBwYWNrYWdlIGNhbiBvbmx5IGJlIG1hbmlwdWxhdGVkIHVzaW5nIGdpdCwgd2hpY2ggaXMgbm90IGluIHRoZSAiCisiUEFUSC4iCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2dpdC5wbTo2MworIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisic291cmNlIGRpcmVjdG9yeSBpcyBub3QgdGhlIHRvcCBkaXJlY3Rvcnkgb2YgYSBnaXQgcmVwb3NpdG9yeSAoJXMvLmdpdCBub3QgIgorInByZXNlbnQpLCBidXQgRm9ybWF0IGdpdCB3YXMgc3BlY2lmaWVkIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9naXQucG06NjgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZ2l0IHJlcG9zaXRvcnkgJXMgdXNlcyBzdWJtb2R1bGVzLiBUaGlzIGlzIG5vdCB5ZXQgc3VwcG9ydGVkLiIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvZ2l0LnBtOjkwCittc2dpZCAiZG9lc24ndCBjb250YWluIGEgZ2l0IHJlcG9zaXRvcnkiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2dpdC5wbToxMzEKK21zZ2lkICJnaXQgbHMtZmlsZXMgZXhpdGVkIG5vbnplcm8iCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2dpdC5wbToxNDkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY3JlYXRpbmcgc2hhbGxvdyBjbG9uZSB3aXRoIGRlcHRoICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9naXQucG06MTY1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImJ1bmRsaW5nOiAlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvZ2l0LnBtOjIwMQorbXNnaWQgImZvcm1hdCB2My4wIChnaXQpIHVzZXMgb25seSBvbmUgLmdpdCBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9naXQucG06MjA3Cittc2dpZCAiZm9ybWF0IHYzLjAgKGdpdCkgdXNlcyBvbmx5IG9uZSAuZ2l0c2hhbGxvdyBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9naXQucG06MjEwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImZvcm1hdCB2My4wIChnaXQpIHVua25vd24gZmlsZTogJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2dpdC5wbToyMTQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZm9ybWF0IHYzLjAgKGdpdCkgZXhwZWN0ZWQgJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2dpdC5wbToyMjAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2xvbmluZyAlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvZ2l0LnBtOjIyNworbXNnaWQgInNldHRpbmcgdXAgc2hhbGxvdyBjbG9uZSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06NzMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgc2hvdWxkIGJlIGEgZGlyZWN0b3J5IG9yIG5vbi1leGlzdGluZyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06NzkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgc2hvdWxkIGJlIGEgZmlsZSBvciBub24tZXhpc3RpbmciCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjEyMAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisidGhlIHNlcmllcyBmaWxlICglcykgY29udGFpbnMgdW5zdXBwb3J0ZWQgb3B0aW9ucyAoJyVzJywgbGluZSAlcyksIGRwa2ctIgorInNvdXJjZSBtaWdodCBmYWlsIHdoZW4gYXBwbHlpbmcgcGF0Y2hlcy4iCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjEzOAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3QgbWtkaXIgJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjIxMgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW4ndCBjcmVhdGUgc3ltbGluayAlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06Mjk0CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06Mjk3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVuc3VwcG9ydGVkIHZlcnNpb24gb2YgdGhlIHF1aWx0IG1ldGFkYXRhOiAlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU3Vic3R2YXJzLnBtOjE1MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJiYWQgbGluZSBpbiBzdWJzdHZhcnMgZmlsZSAlcyBhdCBsaW5lICVkIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9TdWJzdHZhcnMucG06MjE3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInRvbyBtYW55IHN1YnN0aXR1dGlvbnMgLSByZWN1cnNpdmUgPyAtIGluIGAlcyciCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1N1YnN0dmFycy5wbToyMjQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5rbm93biBzdWJzdGl0dXRpb24gdmFyaWFibGUgJHslc30iCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1N1YnN0dmFycy5wbToyNDgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW51c2VkIHN1YnN0aXR1dGlvbiB2YXJpYWJsZSAkeyVzfSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvVmFycy5wbTozNAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJzb3VyY2UgcGFja2FnZSBuYW1lIGAlcycgY29udGFpbnMgaWxsZWdhbCBjaGFyYWN0ZXIgYCVzJyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvVmFycy5wbTozNworIywgcGVybC1mb3JtYXQKK21zZ2lkICJzb3VyY2UgcGFja2FnZSBuYW1lIGAlcycgc3RhcnRzIHdpdGggbm9uLWFscGhhbnVtIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9WYXJzLnBtOjQ2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInNvdXJjZSBwYWNrYWdlIGhhcyB0d28gY29uZmxpY3RpbmcgdmFsdWVzIC0gJXMgYW5kICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9WZW5kb3IvRGViaWFuLnBtOjEwNgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGhhcmRlbmluZyBmZWF0dXJlOiAlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvVmVuZG9yL0RlYmlhbi5wbToxMTAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiaW5jb3JyZWN0IHZhbHVlIGluIGhhcmRlbmluZyBvcHRpb24gb2YgREVCX0JVSUxEX01BSU5UX09QVElPTlM6ICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9WZW5kb3IvVWJ1bnR1LnBtOjYxIHNjcmlwdHMvRHBrZy9WZW5kb3IvVWJ1bnR1LnBtOjYzCittc2dpZCAiIgorIlZlcnNpb24gbnVtYmVyIHN1Z2dlc3RzIFVidW50dSBjaGFuZ2VzLCBidXQgTWFpbnRhaW5lcjogZG9lcyBub3QgaGF2ZSBVYnVudHUgIgorImFkZHJlc3MiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1ZlbmRvci9VYnVudHUucG06NjcKK21zZ2lkICIiCisiVmVyc2lvbiBudW1iZXIgc3VnZ2VzdHMgVWJ1bnR1IGNoYW5nZXMsIGJ1dCB0aGVyZSBpcyBubyBYU0JDLU9yaWdpbmFsLSIKKyJNYWludGFpbmVyIGZpZWxkIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9WZW5kb3IvVWJ1bnR1LnBtOjEyMworbXNnaWQgIidoYXJkZW5pbmcnIGZsYWcgZm91bmQgYnV0ICdoYXJkZW5pbmctd3JhcHBlcicgbm90IGluc3RhbGxlZCIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvVmVuZG9yL1VidW50dS5wbToxNDIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAib3ZlcnJpZGluZyAlcyBpbiBlbnZpcm9ubWVudDogJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1ZlcnNpb24ucG06MjA0IHNjcmlwdHMvRHBrZy9WZXJzaW9uLnBtOjIwNgorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgYSB2YWxpZCB2ZXJzaW9uIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9WZXJzaW9uLnBtOjM3MQorbXNnaWQgInZlcnNpb24gbnVtYmVyIGNhbm5vdCBiZSBlbXB0eSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvVmVyc2lvbi5wbTozNzYKK21zZ2lkICJ2ZXJzaW9uIG51bWJlciBkb2VzIG5vdCBzdGFydCB3aXRoIGRpZ2l0IgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9WZXJzaW9uLnBtOjM4MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ2ZXJzaW9uIG51bWJlciBjb250YWlucyBpbGxlZ2FsIGNoYXJhY3RlciBgJXMnIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9WZXJzaW9uLnBtOjM4NgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJlcG9jaCBwYXJ0IG9mIHRoZSB2ZXJzaW9uIG51bWJlciBpcyBub3QgYSBudW1iZXI6ICclcyciCittc2dzdHIgIiIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9wby9lbkBib2xkcXVvdC5oZWFkZXIgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvcG8vZW5AYm9sZHF1b3QuaGVhZGVyCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmZlZGI2YTAKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvcG8vZW5AYm9sZHF1b3QuaGVhZGVyCkBAIC0wLDAgKzEsMjUgQEAKKyMgQWxsIHRoaXMgY2F0YWxvZyAidHJhbnNsYXRlcyIgYXJlIHF1b3RhdGlvbiBjaGFyYWN0ZXJzLgorIyBUaGUgbXNnaWRzIG11c3QgYmUgQVNDSUkgYW5kIHRoZXJlZm9yZSBjYW5ub3QgY29udGFpbiByZWFsIHF1b3RhdGlvbgorIyBjaGFyYWN0ZXJzLCBvbmx5IHN1YnN0aXR1dGVzIGxpa2UgZ3JhdmUgYWNjZW50ICgweDYwKSwgYXBvc3Ryb3BoZSAoMHgyNykKKyMgYW5kIGRvdWJsZSBxdW90ZSAoMHgyMikuIFRoZXNlIHN1YnN0aXR1dGVzIGxvb2sgc3RyYW5nZTsgc2VlCisjIGh0dHA6Ly93d3cuY2wuY2FtLmFjLnVrL35tZ2syNS91Y3MvcXVvdGVzLmh0bWwKKyMKKyMgVGhpcyBjYXRhbG9nIHRyYW5zbGF0ZXMgZ3JhdmUgYWNjZW50ICgweDYwKSBhbmQgYXBvc3Ryb3BoZSAoMHgyNykgdG8KKyMgbGVmdCBzaW5nbGUgcXVvdGF0aW9uIG1hcmsgKFUrMjAxOCkgYW5kIHJpZ2h0IHNpbmdsZSBxdW90YXRpb24gbWFyayAoVSsyMDE5KS4KKyMgSXQgYWxzbyB0cmFuc2xhdGVzIHBhaXJzIG9mIGFwb3N0cm9waGUgKDB4MjcpIHRvCisjIGxlZnQgc2luZ2xlIHF1b3RhdGlvbiBtYXJrIChVKzIwMTgpIGFuZCByaWdodCBzaW5nbGUgcXVvdGF0aW9uIG1hcmsgKFUrMjAxOSkKKyMgYW5kIHBhaXJzIG9mIHF1b3RhdGlvbiBtYXJrICgweDIyKSB0bworIyBsZWZ0IGRvdWJsZSBxdW90YXRpb24gbWFyayAoVSsyMDFDKSBhbmQgcmlnaHQgZG91YmxlIHF1b3RhdGlvbiBtYXJrIChVKzIwMUQpLgorIworIyBXaGVuIG91dHB1dCB0byBhbiBVVEYtOCB0ZXJtaW5hbCwgdGhlIHF1b3RhdGlvbiBjaGFyYWN0ZXJzIGFwcGVhciBwZXJmZWN0bHkuCisjIFdoZW4gb3V0cHV0IHRvIGFuIElTTy04ODU5LTEgdGVybWluYWwsIHRoZSBzaW5nbGUgcXVvdGF0aW9uIG1hcmtzIGFyZQorIyB0cmFuc2xpdGVyYXRlZCB0byBhcG9zdHJvcGhlcyAoYnkgaWNvbnYgaW4gZ2xpYmMgMi4yIG9yIG5ld2VyKSBvciB0bworIyBncmF2ZS9hY3V0ZSBhY2NlbnQgKGJ5IGxpYmljb252KSwgYW5kIHRoZSBkb3VibGUgcXVvdGF0aW9uIG1hcmtzIGFyZQorIyB0cmFuc2xpdGVyYXRlZCB0byAweDIyLgorIyBXaGVuIG91dHB1dCB0byBhbiBBU0NJSSB0ZXJtaW5hbCwgdGhlIHNpbmdsZSBxdW90YXRpb24gbWFya3MgYXJlCisjIHRyYW5zbGl0ZXJhdGVkIHRvIGFwb3N0cm9waGVzLCBhbmQgdGhlIGRvdWJsZSBxdW90YXRpb24gbWFya3MgYXJlCisjIHRyYW5zbGl0ZXJhdGVkIHRvIDB4MjIuCisjCisjIFRoaXMgY2F0YWxvZyBmdXJ0aGVybW9yZSBkaXNwbGF5cyB0aGUgdGV4dCBiZXR3ZWVuIHRoZSBxdW90YXRpb24gbWFya3MgaW4KKyMgYm9sZCBmYWNlLCBhc3N1bWluZyB0aGUgVlQxMDAvWFRlcm0gZXNjYXBlIHNlcXVlbmNlcy4KKyMKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9wby9lbkBxdW90LmhlYWRlciBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9wby9lbkBxdW90LmhlYWRlcgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hOTY0N2ZjCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3BvL2VuQHF1b3QuaGVhZGVyCkBAIC0wLDAgKzEsMjIgQEAKKyMgQWxsIHRoaXMgY2F0YWxvZyAidHJhbnNsYXRlcyIgYXJlIHF1b3RhdGlvbiBjaGFyYWN0ZXJzLgorIyBUaGUgbXNnaWRzIG11c3QgYmUgQVNDSUkgYW5kIHRoZXJlZm9yZSBjYW5ub3QgY29udGFpbiByZWFsIHF1b3RhdGlvbgorIyBjaGFyYWN0ZXJzLCBvbmx5IHN1YnN0aXR1dGVzIGxpa2UgZ3JhdmUgYWNjZW50ICgweDYwKSwgYXBvc3Ryb3BoZSAoMHgyNykKKyMgYW5kIGRvdWJsZSBxdW90ZSAoMHgyMikuIFRoZXNlIHN1YnN0aXR1dGVzIGxvb2sgc3RyYW5nZTsgc2VlCisjIGh0dHA6Ly93d3cuY2wuY2FtLmFjLnVrL35tZ2syNS91Y3MvcXVvdGVzLmh0bWwKKyMKKyMgVGhpcyBjYXRhbG9nIHRyYW5zbGF0ZXMgZ3JhdmUgYWNjZW50ICgweDYwKSBhbmQgYXBvc3Ryb3BoZSAoMHgyNykgdG8KKyMgbGVmdCBzaW5nbGUgcXVvdGF0aW9uIG1hcmsgKFUrMjAxOCkgYW5kIHJpZ2h0IHNpbmdsZSBxdW90YXRpb24gbWFyayAoVSsyMDE5KS4KKyMgSXQgYWxzbyB0cmFuc2xhdGVzIHBhaXJzIG9mIGFwb3N0cm9waGUgKDB4MjcpIHRvCisjIGxlZnQgc2luZ2xlIHF1b3RhdGlvbiBtYXJrIChVKzIwMTgpIGFuZCByaWdodCBzaW5nbGUgcXVvdGF0aW9uIG1hcmsgKFUrMjAxOSkKKyMgYW5kIHBhaXJzIG9mIHF1b3RhdGlvbiBtYXJrICgweDIyKSB0bworIyBsZWZ0IGRvdWJsZSBxdW90YXRpb24gbWFyayAoVSsyMDFDKSBhbmQgcmlnaHQgZG91YmxlIHF1b3RhdGlvbiBtYXJrIChVKzIwMUQpLgorIworIyBXaGVuIG91dHB1dCB0byBhbiBVVEYtOCB0ZXJtaW5hbCwgdGhlIHF1b3RhdGlvbiBjaGFyYWN0ZXJzIGFwcGVhciBwZXJmZWN0bHkuCisjIFdoZW4gb3V0cHV0IHRvIGFuIElTTy04ODU5LTEgdGVybWluYWwsIHRoZSBzaW5nbGUgcXVvdGF0aW9uIG1hcmtzIGFyZQorIyB0cmFuc2xpdGVyYXRlZCB0byBhcG9zdHJvcGhlcyAoYnkgaWNvbnYgaW4gZ2xpYmMgMi4yIG9yIG5ld2VyKSBvciB0bworIyBncmF2ZS9hY3V0ZSBhY2NlbnQgKGJ5IGxpYmljb252KSwgYW5kIHRoZSBkb3VibGUgcXVvdGF0aW9uIG1hcmtzIGFyZQorIyB0cmFuc2xpdGVyYXRlZCB0byAweDIyLgorIyBXaGVuIG91dHB1dCB0byBhbiBBU0NJSSB0ZXJtaW5hbCwgdGhlIHNpbmdsZSBxdW90YXRpb24gbWFya3MgYXJlCisjIHRyYW5zbGl0ZXJhdGVkIHRvIGFwb3N0cm9waGVzLCBhbmQgdGhlIGRvdWJsZSBxdW90YXRpb24gbWFya3MgYXJlCisjIHRyYW5zbGl0ZXJhdGVkIHRvIDB4MjIuCisjCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvcG8vZXMuZ21vIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3BvL2VzLmdtbwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xNjlmMjZlCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3BvL2VzLmdtbwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvcG8vZXMucG8gYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvcG8vZXMucG8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNTQ5ZTBlZgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9wby9lcy5wbwpAQCAtMCwwICsxLDM4MDkgQEAKKyMgZHBrZy9zY3JpcHRzIHBvIHRyYW5zbGF0aW9uIHRvIFNwYW5pc2gKKyMgQ29weXJpZ2h0IChDKSAyMDEwIFNvZnR3YXJlIGluIHRoZSBQdWJsaWMgSW50ZXJlc3QKKyMgVGhpcyBmaWxlIGlzIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBzYW1lIGxpY2Vuc2UgYXMgdGhlIGRwa2cgcGFja2FnZS4KKyMKKyMgQ2hhbmdlczoKKyMgICAtIEluaXRpYWwgdHJhbnNsYXRpb24KKyMgICAgICAgT21hciBDYW1wYWduZSBQb2xhaW5vIDxvY2FtcGFnbmVAZ21haWwuY29tPiwgMjAxMAorIworIyAgIC0gVXBkYXRlcworIyAgICAgICBUUkFOU0xBVE9SCisjCisjIFRyYWR1Y3RvcmVzLCBzaSBubyBjb25vY2VuIGVsIGZvcm1hdG8gUE8sIG1lcmVjZSBsYSBwZW5hIGxlZXIgbGEKKyMgZG9jdW1lbnRhY2nDs24gZGUgZ2V0dGV4dCwgZXNwZWNpYWxtZW50ZSBsYXMgc2VjY2lvbmVzIGRlZGljYWRhcyBhIGVzdGUKKyMgZm9ybWF0bywgcG9yIGVqZW1wbG8gZWplY3V0YW5kbzoKKyMgICAgICAgaW5mbyAtbiAnKGdldHRleHQpUE8gRmlsZXMnCisjICAgICAgIGluZm8gLW4gJyhnZXR0ZXh0KUhlYWRlciBFbnRyeScKKyMKKyMgRXF1aXBvIGRlIHRyYWR1Y2Npw7NuIGFsIGVzcGHDsW9sLCBwb3IgZmF2b3IgbGVhbiBhbnRlcyBkZSB0cmFkdWNpcgorIyBsb3Mgc2lndWllbnRlcyBkb2N1bWVudG9zOgorIworIyAgIC0gRWwgcHJveWVjdG8gZGUgdHJhZHVjY2nDs24gZGUgRGViaWFuIGFsIGVzcGHDsW9sCisjICAgICBodHRwOi8vd3d3LmRlYmlhbi5vcmcvaW50bC9zcGFuaXNoLworIyAgICAgZXNwZWNpYWxtZW50ZSBsYXMgbm90YXMgeSBub3JtYXMgZGUgdHJhZHVjY2nDs24gZW4KKyMgICAgIGh0dHA6Ly93d3cuZGViaWFuLm9yZy9pbnRsL3NwYW5pc2gvbm90YXMKKyMKKyMgICAtIExhIGd1w61hIGRlIHRyYWR1Y2Npw7NuIGRlIHBvJ3MgZGUgZGViY29uZjoKKyMgICAgIC91c3Ivc2hhcmUvZG9jL3BvLWRlYmNvbmYvUkVBRE1FLXRyYW5zCisjICAgICBvIGh0dHA6Ly93d3cuZGViaWFuLm9yZy9pbnRsL2wxMG4vcG8tZGViY29uZi9SRUFETUUtdHJhbnMKKyMKK21zZ2lkICIiCittc2dzdHIgIiIKKyJQcm9qZWN0LUlkLVZlcnNpb246IGRwa2cgMS4xOC44LjVcbiIKKyJSZXBvcnQtTXNnaWQtQnVncy1UbzogZGViaWFuLWRwa2dAbGlzdHMuZGViaWFuLm9yZ1xuIgorIlBPVC1DcmVhdGlvbi1EYXRlOiAyMDExLTEwLTE0IDA3OjExKzAyMDBcbiIKKyJQTy1SZXZpc2lvbi1EYXRlOiAyMDEwLTEyLTIwIDAzOjE3KzAxMDBcbiIKKyJMYXN0LVRyYW5zbGF0b3I6IE9tYXIgQ2FtcGFnbmUgPG9jYW1wYWduZUBnbWFpbC5jb20+XG4iCisiTGFuZ3VhZ2UtVGVhbTogRGViaWFuIGwxMG4gU3BhbmlzaCA8ZGViaWFuLWwxMG4tc3BhbmlzaEBsaXN0cy5kZWJpYW4ub3JnPlxuIgorIkxhbmd1YWdlOiBlc1xuIgorIk1JTUUtVmVyc2lvbjogMS4wXG4iCisiQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PVVURi04XG4iCisiQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdFxuIgorIlBsdXJhbC1Gb3JtczogbnBsdXJhbHM9MjsgcGx1cmFsPShuICE9IDEpO1xuIgorIlgtR2VuZXJhdG9yOiBWaXJ0YWFsIDAuNi4xXG4iCisiWC1QT0ZpbGUtU3BlbGxFeHRyYTogbMOtbmVhZGVzcHXDqXMgYWxsIElhbiBoZWxwIEZpbGVuYW1lIHN5bWJvbHMgbWV0YWRhdG9zXG4iCisiWC1QT0ZpbGUtU3BlbGxFeHRyYTogdW5jb21taXRlZCBDb21wcmVzc2lvbiBXaWNoZXJ0IG11bHRpY2QgS2xlZSBjaGFyYWN0ZXJcbiIKKyJYLVBPRmlsZS1TcGVsbEV4dHJhOiByZW1vdmFsIHNvdXJjZSBTb2JyZWVzY3JpYmUgdmFsaWQgUlBBVEggb3ZlcnJpZGVcbiIKKyJYLVBPRmlsZS1TcGVsbEV4dHJhOiBpbmNsdWRlIHRjIFhTQkMgbXVsdGl2ZXJzaW9uIHZlbmRvciBQR1AgZ2V0IEhlcnR6b2dcbiIKKyJYLVBPRmlsZS1TcGVsbEV4dHJhOiBHUEcgdXBzdHJlYW0gc0FrdXJLVVIgcHJlcmVsZWFzZXMgaW5mbyBNYWludGFpbmVyXG4iCisiWC1QT0ZpbGUtU3BlbGxFeHRyYTogY2hhbmdlbG9nIGxpc3QgQVBUIE9iamR1bXAgbWVyZ2UgYXJjaGl0ZWN0dXJlIHN5bXZlclxuIgorIlgtUE9GaWxlLVNwZWxsRXh0cmE6IGRlYnVnIGRzZWxlY3QgcmVxdWlyZSBkaXIgaGFyZGVuaW5nIEphY2tzb24gcXVpbHRcbiIKKyJYLVBPRmlsZS1TcGVsbEV4dHJhOiBJbmRlcCBTZWN0aW9uIFBlcmwgUHJpb3JpdHkgZXhwb3J0IGRldiB0YXJvcmlnaW5hbFxuIgorIlgtUE9GaWxlLVNwZWxsRXh0cmE6IHVkZWIgb3ZlcndyaXRlIHRtcCBNZWRpdW0gRnJhbmsgYnVpbGRmbGFncyBiZXN0IGxhYmVsXG4iCisiWC1QT0ZpbGUtU3BlbGxFeHRyYTogVWJ1bnR1IHJmIHZlcnNpb24gc0sgc3ViZGlyIHByaW50IHJtIGJlZm9yZSBkc2MgRHBrZ1xuIgorIlgtUE9GaWxlLVNwZWxsRXh0cmE6IHNQIHNjaGVkdWxlIEJyaW5rbWFubiBzeW1saW5rIHR1ZGViIHN1YnN0dmFycyBPcGVuUEdQXG4iCisiWC1QT0ZpbGUtU3BlbGxFeHRyYTogT3B0aW9ucyBzcmMgc2VhcmNoIHNvY2tldCBnZW5jaGFuZ2VzIGlzcCBPUiBSZW1uYW50XG4iCisiWC1QT0ZpbGUtU3BlbGxFeHRyYTogdHJhaWxlciB3YXJuaW5ncyBzaWduYXR1cmUgYWRtaW5kaXIgY2hhbmdlcyBtaXNzaW5nXG4iCisiWC1QT0ZpbGUtU3BlbGxFeHRyYTogb3JpZ2luIHByZSBTT05BTUUgZm9ybWF0IGlwcyB3cmFwcGVyIHBncCBkaWZmIGN1c3RvbVxuIgorIlgtUE9GaWxlLVNwZWxsRXh0cmE6IG9yaWcgZ2l0IGZyb20gdG8gY3JlYXRlIGdwZyBta2RpciBzeXN0ZW0gZmFzdCBzaGxpYnNcbiIKKyJYLVBPRmlsZS1TcGVsbEV4dHJhOiBzb2JyZWVzY3JpYmlyIFJFQURNRSBQYWNrYWdlcyB0eXBlIHVudGlsIGxzIHNvcnRcbiIKKyJYLVBPRmlsZS1TcGVsbEV4dHJhOiBtZWRpdW0gb3B0aW9uIHNoYWxsb3cgRUxGIG5jIGRlc2NvbmZpZ3VyYXIgZmxhZyBnYWluXG4iCisiWC1QT0ZpbGUtU3BlbGxFeHRyYTogY29weSBTY290dCBkcGtnIGJ6ciBjb3VudCBjaGRpciB0YXJnZXQgZ2l0c2hhbGxvd1xuIgorIlgtUE9GaWxlLVNwZWxsRXh0cmE6IFByb2Nlc3MgRGllbmVzIHVzIHNobGliZGVwcyBwcmVwYXJhdGlvbiBJbnRybyBkZXBzXG4iCisiWC1QT0ZpbGUtU3BlbGxFeHRyYTogZGViIHJvb3QgdWMgT1JJR0lOIHRhciBmaWx0IGlwIGlzIGFwIGFib3J0IGNvbmYgUEFUSFxuIgorIlgtUE9GaWxlLVNwZWxsRXh0cmE6IG51bGwgY2hlY2sgc3BncCBnY2Mgc2luY2UgRm9ybWF0IG1ha2UgTGljaHRlbmhlbGRcbiIKKyJYLVBPRmlsZS1TcGVsbEV4dHJhOiBmZWF0dXJlIGVwb2NoIHNoIGJ1aWxkIGVudiBzdGF0dXMgTWFyY3VzIHN0YXQgZnN0YXRcbiIKKyJYLVBPRmlsZS1TcGVsbEV4dHJhOiBQYWNrYWdlIHNSIGFmdGVyIHNVIFJhcGhhZWwgQWtrZXJtYW4gdXNlciBkZXZpY2VcbiIKKyJYLVBPRmlsZS1TcGVsbEV4dHJhOiBMRExJQlJBUllQQVRIIHNBIG9uIGFyY2ggdmFsdWUgY2hhbmdlc2Rlc2NyaXB0aW9uXG4iCisiWC1QT0ZpbGUtU3BlbGxFeHRyYTogdXJnZW5jeSBTb3VyY2VzIGZha2Vyb290IGNvbW1hbmQgc24gZ3ppcCBzYSBiaW5hcmllc1xuIgorIlgtUE9GaWxlLVNwZWxsRXh0cmE6IHNncGcgdW5zZXQgc2RcbiIKKworIzogc2NyaXB0cy9kcGtnLWFyY2hpdGVjdHVyZS5wbDozNiBzY3JpcHRzL2Rwa2ctYnVpbGRmbGFncy5wbDozMQorIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDozNyBzY3JpcHRzL2Rwa2ctY2hlY2tidWlsZGRlcHMucGw6MzYKKyM6IHNjcmlwdHMvZHBrZy1kaXN0YWRkZmlsZS5wbDozMyBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDo5NgorIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6NTYgc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGw6NDkKKyM6IHNjcmlwdHMvZHBrZy1tZXJnZWNoYW5nZWxvZ3MucGw6NTMgc2NyaXB0cy9kcGtnLW5hbWUucGw6NDYKKyM6IHNjcmlwdHMvZHBrZy1wYXJzZWNoYW5nZWxvZy5wbDozMSBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOjYwCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnNvdXJjZXMucGw6Nzggc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo1MzMKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6NDU1IHNjcmlwdHMvY2hhbmdlbG9nL2RlYmlhbi5wbDozNAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJEZWJpYW4gJXMgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiRGViaWFuICVzIHZlcnNpw7NuICVzLlxuIgorCisjOiBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLnBsOjM4Cittc2dpZCAiIgorIlxuIgorIkNvcHlyaWdodCAoQykgMTk5OS0yMDAxIE1hcmN1cyBCcmlua21hbm4gPGJyaW5rbWRAZGViaWFuLm9yZz4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDA0LTIwMDUgU2NvdHQgSmFtZXMgUmVtbmFudCA8c2NvdHRAbmV0c3BsaXQuY29tPi4iCittc2dzdHIgIiIKKyJcbiIKKyJDb3B5cmlnaHQgKEMpIDE5OTktMjAwMSBNYXJjdXMgQnJpbmttYW5uIDxicmlua21kQGRlYmlhbi5vcmc+LlxuIgorIkNvcHlyaWdodCAoQykgMjAwNC0yMDA1IFNjb3R0IEphbWVzIFJlbW5hbnQgPHNjb3R0QG5ldHNwbGl0LmNvbT4uIgorCisjOiBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLnBsOjQyIHNjcmlwdHMvZHBrZy1idWlsZGZsYWdzLnBsOjM2CisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjQ0IHNjcmlwdHMvZHBrZy1kaXN0YWRkZmlsZS5wbDozOAorIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6MTAyIHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjYyCisjOiBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbDo1NSBzY3JpcHRzL2Rwa2ctcGFyc2VjaGFuZ2Vsb2cucGw6MzcKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6NTQyIHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6NDYyCisjOiBzY3JpcHRzL2NoYW5nZWxvZy9kZWJpYW4ucGw6MzkKK21zZ2lkICIiCisiXG4iCisiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvclxuIgorImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LlxuIgorbXNnc3RyICIiCisiXG4iCisiRXN0byBlcyBzb2Z0d2FyZSBsaWJyZTsgdmVhIGxhIHZlcnNpw7NuIDIgbyBwb3N0ZXJpb3IgZGUgbGEgTGljZW5jaWEgUMO6YmxpY2FcbiIKKyJHZW5lcmFsIEdOVSBwYXJhIGNvbmRpY2lvbmVzIGRlIGNvcGlhLiBOTyBoYXkgbmluZ3VuYSBnYXJhbnTDrWEuXG4iCisKKyM6IHNjcmlwdHMvZHBrZy1hcmNoaXRlY3R1cmUucGw6NTAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSBbPGFjdGlvbj5dXG4iCisiXG4iCisiT3B0aW9uczpcbiIKKyIgIC1hPGRlYmlhbi1hcmNoPiAgICBzZXQgY3VycmVudCBEZWJpYW4gYXJjaGl0ZWN0dXJlLlxuIgorIiAgLXQ8Z251LXN5c3RlbT4gICAgIHNldCBjdXJyZW50IEdOVSBzeXN0ZW0gdHlwZS5cbiIKKyIgIC1MICAgICAgICAgICAgICAgICBsaXN0IHZhbGlkIGFyY2hpdGVjdHVyZXMuXG4iCisiICAtZiAgICAgICAgICAgICAgICAgZm9yY2UgZmxhZyAob3ZlcnJpZGUgdmFyaWFibGVzIHNldCBpbiBlbnZpcm9ubWVudCkuXG4iCisiXG4iCisiQWN0aW9uczpcbiIKKyIgIC1sICAgICAgICAgICAgICAgICBsaXN0IHZhcmlhYmxlcyAoZGVmYXVsdCkuXG4iCisiICAtZTxkZWJpYW4tYXJjaD4gICAgY29tcGFyZSB3aXRoIGN1cnJlbnQgRGViaWFuIGFyY2hpdGVjdHVyZS5cbiIKKyIgIC1pPGFyY2gtYWxpYXM+ICAgICBjaGVjayBpZiBjdXJyZW50IERlYmlhbiBhcmNoaXRlY3R1cmUgaXMgPGFyY2gtYWxpYXM+LlxuIgorIiAgLXE8dmFyaWFibGU+ICAgICAgIHByaW50cyBvbmx5IHRoZSB2YWx1ZSBvZiA8dmFyaWFibGU+LlxuIgorIiAgLXMgICAgICAgICAgICAgICAgIHByaW50IGNvbW1hbmQgdG8gc2V0IGVudmlyb25tZW50IHZhcmlhYmxlcy5cbiIKKyIgIC11ICAgICAgICAgICAgICAgICBwcmludCBjb21tYW5kIHRvIHVuc2V0IGVudmlyb25tZW50IHZhcmlhYmxlcy5cbiIKKyIgIC1jIDxjb21tYW5kPiAgICAgICBzZXQgZW52aXJvbm1lbnQgYW5kIHJ1biB0aGUgY29tbWFuZCBpbiBpdC5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCittc2dzdHIgIiIKKyJVc286ICVzIFs8b3BjacOzbj4gLi4uXSBbPGFjY2nDs24+XVxuIgorIlxuIgorIk9wY2lvbmVzOlxuIgorIiAgLWE8YXJxdWl0ZWN0dXJhLWRlYmlhbj4gIERlZmluZSBsYSBhcnF1aXRlY3R1cmEgZGUgRGViaWFuIGRlbCBzaXN0ZW1hLlxuIgorIiAgLXQ8Z251LXN5c3RlbT4gICAgICAgICAgIERlZmluZSBlbCB0aXBvIGRlIHNpc3RlbWEgR05VIGRlbCBzaXN0ZW1hLlxuIgorIiAgLUwgICAgICAgICAgICAgICAgICAgICAgIExpc3RhIGxhcyBhcnF1aXRlY3R1cmFzIHbDoWxpZGFzLlxuIgorIiAgLWYgICAgICAgICAgICAgICAgICAgICAgIEZ1ZXJ6YSBsYSBvcGNpw7NuLCDCq2ZsYWfCuyAoc3VzdGl0dXllIHZhcmlhYmxlc1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlZmluaWRhcyBkZWwgZW50b3JubykuXG4iCisiXG4iCisiQWNjaW9uZXM6XG4iCisiICAtbCAgICAgICAgICAgICAgICAgICAgICAgTGlzdGEgdmFyaWFibGVzIChjb21wb3J0YW1pZW50byBwcmVkZWZpbmlkbykuXG4iCisiICAtZTxhcnF1aXRlY3R1cmEtZGViaWFuPiAgQ29tcGFyYSBjb24gbGEgYXJxdWl0ZWN0dXJhIGRlIERlYmlhbiBkZWwgIgorInNpc3RlbWEuXG4iCisiICAtaTxhbGlhcy1hcnF1aXRlY3R1cmE+ICAgQ29tcHJ1ZWJhIHNpIGxhIGFycXVpdGVjdHVyYSBkZSBEZWJpYW4gZGVsXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgc2lzdGVtYSBlcyA8YWxpYXMtYXJxdWl0ZWN0dXJhPi5cbiIKKyIgIC1xPHZhcmlhYmxlPiAgICAgICAgICAgICBNdWVzdHJhIHPDs2xvIGVsIHZhbG9yIGRlIDx2YXJpYWJsZT4uXG4iCisiICAtcyAgICAgICAgICAgICAgICAgICAgICAgTXVlc3RyYSBsYSBvcmRlbiBwYXJhIGRlZmluaXIgdmFyaWFibGVzIGRlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgZW50b3Juby5cbiIKKyIgIC11ICAgICAgICAgICAgICAgICAgICAgICBNdWVzdHJhIGxhIG9yZGVuIHBhcmEgZGVzY29uZmlndXJhciAowqt1bnNldMK7KVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhcmlhYmxlcyBkZSBlbnRvcm5vLlxuIgorIiAgLWMgPG9yZGVuPiAgICAgICAgICAgICAgIERlZmluZSBlbCBlbnRvcm5vIHkgZWplY3V0YSBsYSBvcmRlbiBlbiDDqWwuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgICAgICAgTXVlc3RyYSBlc3RlIG1lbnNhamUgZGUgYXl1ZGEuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgTXVlc3RyYSBsYSB2ZXJzacOzbi5cbiIKKworIzogc2NyaXB0cy9kcGtnLWFyY2hpdGVjdHVyZS5wbDoxMjAgc2NyaXB0cy9kcGtnLWJ1aWxkZmxhZ3MucGw6OTEKKyM6IHNjcmlwdHMvZHBrZy1kaXN0YWRkZmlsZS5wbDo2OCBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDoxOTQKKyM6IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjEzMyBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbDoxNDEKKyM6IHNjcmlwdHMvZHBrZy1wYXJzZWNoYW5nZWxvZy5wbDoxMTMgc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDoxMTkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gYCVzJyIKK21zZ3N0ciAibGEgb3BjacOzbiDCqyVzwrsgZXMgZGVzY29ub2NpZGEiCisKKyM6IHNjcmlwdHMvZHBrZy1hcmNoaXRlY3R1cmUucGw6MTQ0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVua25vd24gRGViaWFuIGFyY2hpdGVjdHVyZSAlcywgeW91IG11c3Qgc3BlY2lmeSBHTlUgc3lzdGVtIHR5cGUsIHRvbyIKK21zZ3N0ciAiIgorImxhIGFycXVpdGVjdHVyYSBkZSBEZWJpYW4gJXMgZXMgZGVzY29ub2NpZGEsIHRhbWJpw6luIGRlYmUgZXNwZWNpZmljYXIgZWwgIgorInRpcG8gZGUgc2lzdGVtYSBHTlUiCisKKyM6IHNjcmlwdHMvZHBrZy1hcmNoaXRlY3R1cmUucGw6MTUxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVua25vd24gR05VIHN5c3RlbSB0eXBlICVzLCB5b3UgbXVzdCBzcGVjaWZ5IERlYmlhbiBhcmNoaXRlY3R1cmUsIHRvbyIKK21zZ3N0ciAiIgorImVsIHRpcG8gZGUgc2lzdGVtYSBHTlUgJXMgZXMgZGVzY29ub2NpZG8sIHRhbWJpw6luIGRlYmUgZXNwZWNpZmljYXIgbGEgIgorImFycXVpdGVjdHVyYSBkZSBEZWJpYW4iCisKKyM6IHNjcmlwdHMvZHBrZy1hcmNoaXRlY3R1cmUucGw6MTU4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVua25vd24gZGVmYXVsdCBHTlUgc3lzdGVtIHR5cGUgZm9yIERlYmlhbiBhcmNoaXRlY3R1cmUgJXMiCittc2dzdHIgIiIKKyJlbCB0aXBvIGRlIHNpc3RlbWEgR05VIHBhcmEgbGEgYXJxdWl0ZWN0dXJhIGRlIERlYmlhbiAlcyBlcyBkZXNjb25vY2lkbyIKKworIzogc2NyaXB0cy9kcGtnLWFyY2hpdGVjdHVyZS5wbDoxNjEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIkRlZmF1bHQgR05VIHN5c3RlbSB0eXBlICVzIGZvciBEZWJpYW4gYXJjaCAlcyBkb2VzIG5vdCBtYXRjaCBzcGVjaWZpZWQgR05VICIKKyJzeXN0ZW0gdHlwZSAlcyIKK21zZ3N0ciAiIgorIkVsIHRpcG8gZGUgc2lzdGVtYSBHTlUgcHJlZGVmaW5pZG8gJXMgcGFyYSBsYSBhcnF1aXRlY3R1cmEgZGUgRGViaWFuICVzIG5vICIKKyJlbmNhamEgY29uIGVsIHRpcG8gZGUgc2lzdGVtYSBHTlUgZGVmaW5pZG8gJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1hcmNoaXRlY3R1cmUucGw6MTgwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIlNwZWNpZmllZCBHTlUgc3lzdGVtIHR5cGUgJXMgZG9lcyBub3QgbWF0Y2ggZ2NjIHN5c3RlbSB0eXBlICVzLiIKK21zZ3N0ciAiIgorIkVsIHRpcG8gZGUgc2lzdGVtYSBHTlUgZXNwZWNpZmljYWRvICVzIG5vIGNvaW5jaWRlIGNvbiBlbCB0aXBvIGRlIHNpc3RlbWEgIgorImdjYyAlcy4iCisKKyM6IHNjcmlwdHMvZHBrZy1hcmNoaXRlY3R1cmUucGw6MjI1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGlzIG5vdCBhIHN1cHBvcnRlZCB2YXJpYWJsZSBuYW1lIgorbXNnc3RyICIlcyBubyBlcyB1biBub21icmUgZGUgdmFyaWFibGUgYWNlcHRhZG8iCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZGZsYWdzLnBsOjMzCisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJcbiIKKyN8ICJDb3B5cmlnaHQgKEMpIDIwMTAgUmFwaGFlbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+LiIKK21zZ2lkICIiCisiXG4iCisiQ29weXJpZ2h0IChDKSAyMDEwLTIwMTEgUmFwaGFlbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+LiIKK21zZ3N0ciAiIgorIlxuIgorIkNvcHlyaWdodCAoQykgMjAxMCBSYXBoYWVsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4uIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRmbGFncy5wbDo0NAorIywgZnV6enksIHBlcmwtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgIlVzYWdlOiAlcyBbPGFjdGlvbj5dXG4iCisjfCAiXG4iCisjfCAiQWN0aW9uczpcbiIKKyN8ICIgIC0tZ2V0IDxmbGFnPiAgICAgICBvdXRwdXQgdGhlIHJlcXVlc3RlZCBmbGFnIHRvIHN0ZG91dC5cbiIKKyN8ICIgIC0tb3JpZ2luIDxmbGFnPiAgICBvdXRwdXQgdGhlIG9yaWdpbiBvZiB0aGUgZmxhZyB0byBzdGRvdXQ6XG4iCisjfCAiICAgICAgICAgICAgICAgICAgICAgdmFsdWUgaXMgb25lIG9mIHZlbmRvciwgc3lzdGVtLCB1c2VyLCBlbnYuXG4iCisjfCAiICAtLWxpc3QgICAgICAgICAgICAgb3V0cHV0IGEgbGlzdCBvZiB0aGUgZmxhZ3Mgc3VwcG9ydGVkIGJ5IHRoZSBjdXJyZW50ICIKKyN8ICJ2ZW5kb3IuXG4iCisjfCAiICAtLWV4cG9ydD0oc2h8bWFrZSkgb3V0cHV0IGNvbW1hbmRzIHRvIGJlIGV4ZWN1dGVkIGluIHNoZWxsIG9yIG1ha2UgdGhhdCAiCisjfCAiZXhwb3J0XG4iCisjfCAiICAgICAgICAgICAgICAgICAgICAgYWxsIHRoZSBjb21waWxhdGlvbiBmbGFncyBhcyBlbnZpcm9ubWVudCB2YXJpYWJsZXMuXG4iCisjfCAiICAtLWhlbHAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyN8ICIgIC0tdmVyc2lvbiAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorbXNnaWQgIiIKKyJVc2FnZTogJXMgWzxhY3Rpb24+XVxuIgorIlxuIgorIkFjdGlvbnM6XG4iCisiICAtLWdldCA8ZmxhZz4gICAgICAgb3V0cHV0IHRoZSByZXF1ZXN0ZWQgZmxhZyB0byBzdGRvdXQuXG4iCisiICAtLW9yaWdpbiA8ZmxhZz4gICAgb3V0cHV0IHRoZSBvcmlnaW4gb2YgdGhlIGZsYWcgdG8gc3Rkb3V0OlxuIgorIiAgICAgICAgICAgICAgICAgICAgIHZhbHVlIGlzIG9uZSBvZiB2ZW5kb3IsIHN5c3RlbSwgdXNlciwgZW52LlxuIgorIiAgLS1saXN0ICAgICAgICAgICAgIG91dHB1dCBhIGxpc3Qgb2YgdGhlIGZsYWdzIHN1cHBvcnRlZCBieSB0aGUgY3VycmVudCAiCisidmVuZG9yLlxuIgorIiAgLS1leHBvcnQ9KHNofG1ha2V8Y29uZmlndXJlKVxuIgorIiAgICAgICAgICAgICAgICAgICAgIG91dHB1dCBzb21ldGhpbmcgY29udmVuaWVudCB0byBpbXBvcnQgdGhlXG4iCisiICAgICAgICAgICAgICAgICAgICAgY29tcGlsYXRpb24gZmxhZ3MgaW4gYSBzaGVsbCBzY3JpcHQsIGluIG1ha2UsXG4iCisiICAgICAgICAgICAgICAgICAgICAgb3Igb24gYSAuL2NvbmZpZ3VyZSBjb21tYW5kIGxpbmUuXG4iCisiICAtLWR1bXAgICAgICAgICAgICAgb3V0cHV0IGFsbCBjb21waWxhdGlvbiBmbGFncyB3aXRoIHRoZWlyIHZhbHVlc1xuIgorIiAgLS1oZWxwICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIgorIlVzbzogJXMgWzxhY2Npw7NuPl1cbiIKKyJcbiIKKyJBY2Npb25lczpcbiIKKyIgIC0tZ2V0IDxmbGFnPiAgICAgTXVlc3RyYSBsYSBvcGNpw7NuIHJlcXVlcmlkYSBwb3IgbGEgc2FsaWRhIGVzdMOhbmRhci5cbiIKKyIgIC0tb3JpZ2luIDxmbGFnPiAgTXVlc3RyYSBlbCBvcmlnZW4gZGUgbGEgb3BjacOzbiBwb3IgbGEgc2FsaWRhIGVzdMOhbmRhcjpcbiIKKyIgICAgICAgICAgICAgICAgICAgZWwgdmFsb3IgcHVlZGUgc2VyIMKrdmVuZG9ywrssIMKrc3lzdGVtwrssIMKrdXNlcsK7LCDCq2VudsK7LlxuIgorIiAgLS1saXN0ICAgICAgICAgICBNdWVzdHJhIHVuYSBsaXN0YSBkZSBvcGNpb25lcyBhY2VwdGFkYXMgcG9yIGVsXG4iCisiICAgICAgICAgICAgICAgICAgIHByb3ZlZWRvciBhY3R1YWwuXG4iCisiICAtLWV4cG9ydD0oc2h8bWFrZSkgbXVlc3RyYSBwb3IgbGEgc2FsaWRhIMOzcmRlbmVzIGEgZWplY3V0YXIgZW4gbGEgY29uc29sYSAiCisibyBsbGV2YSBhIGNhYm8gZXNlIMKrZXhwb3J0wrtcbiIKKyIgIC0taGVscCAgICAgICAgICAgTXVlc3RyYSBlc3RlIG1lbnNhamUgZGUgYXl1ZGEuXG4iCisiICAtLXZlcnNpb24gICAgICAgIE11ZXN0cmEgbGEgdmVyc2nDs24uXG4iCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZGZsYWdzLnBsOjY2IHNjcmlwdHMvZHBrZy1idWlsZGZsYWdzLnBsOjcyCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRmbGFncy5wbDo3NyBzY3JpcHRzL2Rwa2ctYnVpbGRmbGFncy5wbDo4MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ0d28gY29tbWFuZHMgc3BlY2lmaWVkOiAtLSVzIGFuZCAtLSVzIgorbXNnc3RyICJzZSBoYW4gZGVmaW5pZG8gZG9zIMOzcmRlbmVzOiDCqy0tJXPCuyB5IMKrLS0lc8K7IgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRmbGFncy5wbDo3MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBuZWVkcyBhIHBhcmFtZXRlciIKK21zZ3N0ciAiJXMgcmVxdWllcmUgdW4gcGFyw6FtZXRybyIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDozOQorbXNnaWQgIiIKKyJcbiIKKyJDb3B5cmlnaHQgKEMpIDE5OTYgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwIFdpY2hlcnQgQWtrZXJtYW5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDcgRnJhbmsgTGljaHRlbmhlbGQiCittc2dzdHIgIiIKKyJcbiIKKyJDb3B5cmlnaHQgKEMpIDE5OTYgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwIFdpY2hlcnQgQWtrZXJtYW5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDcgRnJhbmsgTGljaHRlbmhlbGQiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6NTEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIlVzYWdlOiAlcyBbPG9wdGlvbnM+IC4uLl1cbiIKKyJcbiIKKyJPcHRpb25zOlxuIgorIiAgLXI8Z2Fpbi1yb290LWNvbW1hbmQ+XG4iCisiICAgICAgICAgICAgICAgICBjb21tYW5kIHRvIGdhaW4gcm9vdCBwcml2aWxlZ2VzIChkZWZhdWx0IGlzIGZha2Vyb290KS5cbiIKKyIgIC1SPHJ1bGVzPiAgICAgIHJ1bGVzIGZpbGUgdG8gZXhlY3V0ZSAoZGVmYXVsdCBpcyBkZWJpYW4vcnVsZXMpLlxuIgorIiAgLXA8c2lnbi1jb21tYW5kPlxuIgorIiAgLWQgICAgICAgICAgICAgZG8gbm90IGNoZWNrIGJ1aWxkIGRlcGVuZGVuY2llcyBhbmQgY29uZmxpY3RzLlxuIgorIiAgLUQgICAgICAgICAgICAgY2hlY2sgYnVpbGQgZGVwZW5kZW5jaWVzIGFuZCBjb25mbGljdHMuXG4iCisiICAtVDx0YXJnZXQ+ICAgICBjYWxsIGRlYmlhbi9ydWxlcyA8dGFyZ2V0PiB3aXRoIHRoZSBwcm9wZXIgZW52aXJvbm1lbnRcbiIKKyIgIC0tYXMtcm9vdCAgICAgIGVuc3VyZSAtVCBjYWxscyB0aGUgdGFyZ2V0IHdpdGggcm9vdCByaWdodHNcbiIKKyIgIC1qWzxudW1iZXI+XSAgIHNwZWNpZnkgam9icyB0byBydW4gc2ltdWx0YW5lb3VzbHkgfSBwYXNzZWQgdG8gZGViaWFuLyIKKyJydWxlc1xuIgorIiAgLWs8a2V5aWQ+ICAgICAgdGhlIGtleSB0byB1c2UgZm9yIHNpZ25pbmcuXG4iCisiICAtc2dwZyAgICAgICAgICB0aGUgc2lnbi1jb21tYW5kIGlzIGNhbGxlZCBsaWtlIEdQRy5cbiIKKyIgIC1zcGdwICAgICAgICAgIHRoZSBzaWduLWNvbW1hbmQgaXMgY2FsbGVkIGxpa2UgUEdQLlxuIgorIiAgLXVzICAgICAgICAgICAgdW5zaWduZWQgc291cmNlLlxuIgorIiAgLXVjICAgICAgICAgICAgdW5zaWduZWQgY2hhbmdlcy5cbiIKKyIgIC1hPGFyY2g+ICAgICAgIERlYmlhbiBhcmNoaXRlY3R1cmUgd2UgYnVpbGQgZm9yIChpbXBsaWVzIC1kKS5cbiIKKyIgIC1iICAgICAgICAgICAgIGJpbmFyeS1vbmx5LCBkbyBub3QgYnVpbGQgc291cmNlLiAgIH0gYWxzbyBwYXNzZWQgdG9cbiIKKyIgIC1CICAgICAgICAgICAgIGJpbmFyeS1vbmx5LCBubyBhcmNoLWluZGVwIGZpbGVzLiAgIH0gZHBrZy1nZW5jaGFuZ2VzXG4iCisiICAtQSAgICAgICAgICAgICBiaW5hcnktb25seSwgb25seSBhcmNoLWluZGVwIGZpbGVzLiB9XG4iCisiICAtUyAgICAgICAgICAgICBzb3VyY2Ugb25seSwgbm8gYmluYXJ5IGZpbGVzLiAgICAgfVxuIgorIiAgLUYgICAgICAgICAgICAgbm9ybWFsIGZ1bGwgYnVpbGQgKGJpbmFyaWVzIGFuZCBzb3VyY2VzKS5cbiIKKyIgIC10PHN5c3RlbT4gICAgIHNldCBHTlUgc3lzdGVtIHR5cGUuICAgICAgICAgICB9IHBhc3NlZCB0byBkcGtnLSIKKyJhcmNoaXRlY3R1cmVcbiIKKyIgIC12PHZlcnNpb24+ICAgIGNoYW5nZXMgc2luY2UgdmVyc2lvbiA8dmVyc2lvbj4uICAgICAgfVxuIgorIiAgLW08bWFpbnQ+ICAgICAgbWFpbnRhaW5lciBmb3IgcGFja2FnZSBpcyA8bWFpbnQ+LiAgICB9XG4iCisiICAtZTxtYWludD4gICAgICBtYWludGFpbmVyIGZvciByZWxlYXNlIGlzIDxtYWludD4uICAgIH0gb25seSBwYXNzZWRcbiIKKyIgIC1DPGRlc2NmaWxlPiAgIGNoYW5nZXMgYXJlIGRlc2NyaWJlZCBpbiA8ZGVzY2ZpbGU+LiAgfSB0byBkcGtnLWdlbmNoYW5nZXNcbiIKKyIgIC1zaSAoZGVmYXVsdCkgIHNyYyBpbmNsdWRlcyBvcmlnIGlmIG5ldyB1cHN0cmVhbS4gICAgfVxuIgorIiAgLXNhICAgICAgICAgICAgdXBsb2FkZWQgc3JjIGFsd2F5cyBpbmNsdWRlcyBvcmlnLiAgICB9XG4iCisiICAtc2QgICAgICAgICAgICB1cGxvYWRlZCBzcmMgaXMgZGlmZiBhbmQgLmRzYyBvbmx5LiAgIH1cbiIKKyIgIC1zbiAgICAgICAgICAgIGZvcmNlIERlYmlhbiBuYXRpdmUgc291cmNlIGZvcm1hdC4gICAgICB9XG4iCisiICAtc1tzQWt1cktVUl0gICBzZWUgZHBrZy1zb3VyY2UgZm9yIGV4cGxhbmF0aW9uLiAgICAgICAgfSBvbmx5IHBhc3NlZFxuIgorIiAgLXo8bGV2ZWw+ICAgICAgY29tcHJlc3Npb24gbGV2ZWwgb2Ygc291cmNlICAgICAgICAgICAgIH0gdG8gZHBrZy1zb3VyY2VcbiIKKyIgIC1aPGNvbXByZXNzb3I+IGNvbXByZXNzaW9uIHRvIHVzZSBmb3Igc291cmNlICAgICAgICAgICB9XG4iCisiICAtbmMgICAgICAgICAgICBkbyBub3QgY2xlYW4gc291cmNlIHRyZWUgKGltcGxpZXMgLWIpLlxuIgorIiAgLXRjICAgICAgICAgICAgY2xlYW4gc291cmNlIHRyZWUgd2hlbiBmaW5pc2hlZC5cbiIKKyIgIC1hcCAgICAgICAgICAgIGFkZCBwYXVzZSBiZWZvcmUgc3RhcnRpbmcgc2lnbmF0dXJlIHByb2Nlc3MuXG4iCisiICAtaVs8cmVnZXg+XSAgICBpZ25vcmUgZGlmZnMgb2YgZmlsZXMgbWF0Y2hpbmcgcmVnZXguICAgIH0gb25seSBwYXNzZWRcbiIKKyIgIC1JWzxwYXR0ZXJuPl0gIGZpbHRlciBvdXQgZmlsZXMgd2hlbiBidWlsZGluZyB0YXJiYWxscy4gfSB0byBkcGtnLXNvdXJjZVxuIgorIiAgLS1zb3VyY2Utb3B0aW9uPTxvcHQ+XG4iCisiXHRcdCBwYXNzIG9wdGlvbiA8b3B0PiB0byBkcGtnLXNvdXJjZVxuIgorIiAgLS1jaGFuZ2VzLW9wdGlvbj08b3B0PlxuIgorIlx0XHQgcGFzcyBvcHRpb24gPG9wdD4gdG8gZHBrZy1nZW5jaGFuZ2VzXG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+XG4iCisiICAgICAgICAgICAgICAgICBjaGFuZ2UgdGhlIGFkbWluaXN0cmF0aXZlIGRpcmVjdG9yeS5cbiIKKyIgIC1oLCAtLWhlbHAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAgICAgLS12ZXJzaW9uICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorbXNnc3RyICIiCisiXG4iCisiVXNvOiAlcyBbPG9wY2lvbmVzPiAuLi5dXG4iCisiXG4iCisiT3BjaW9uZXM6XG4iCisiICAtcjxnYWluLXJvb3QtY29tbWFuZD5cbiIKKyIgICAgICAgICAgICAgICAgIExhIG9yZGVuIHBhcmEgb2J0ZW5lciBwcml2aWxlZ2lvcyBkZSB1c3VhcmlvIMKrcm9vdMK7XG4iCisiICAgICAgICAgICAgICAgICAoZmFrZXJvb3QgcG9yIG9taXNpw7NuKS5cbiIKKyIgIC1SPHJ1bGVzPiAgICAgIEVsIGZpY2hlcm8gwqtydWxlc8K7IGEgZWplY3V0YXIgKMKrZGViaWFuL3J1bGVzwrsgcG9yICIKKyJvbWlzacOzbikuXG4iCisiICAtcDxvcmRlbi1wYXJhLWZpcm1hcj5cbiIKKyIgIC1kICAgICAgICAgICAgIE5vIHJldmlzYSBsYXMgZGVwZW5kZW5jaWFzIHkgY29uZmxpY3RvcyBkZSBjb25zdHJ1Y2Npw7NuLlxuIgorIiAgLUQgICAgICAgICAgICAgUmV2aXNhIGxhcyBkZXBlbmRlbmNpYXMgeSBjb25mbGljdG9zIGRlIGNvbnN0cnVjY2nDs24uXG4iCisiICAtVDxkZXN0aW5vPiAgICBJbnZvY2EgwqtkZWJpYW4vcnVsZXMgPGRlc3Rpbm8+wrsgY29uIGVsIGVudG9ybm8gYWRlY3VhZG8uXG4iCisiICAtLWFzLXJvb3QgICAgICBBc2VndXJhIHF1ZSDCqy1UwrsgaW52b2NhIGVsIGRlc3Rpbm8gY29uIHByaXZpbGVnaW9zIGRlXG4iCisiICAgICAgICAgICAgICAgICDCq3Jvb3TCu1xuIgorIiAgLWpbPG7Dum1lcm8+XSAgIERlZmluZSB0YXJlYXMgYSBlamVjdXRhciBzaW11bHTDoW5lYW1lbnRlIH0gaW50cm9kdWNpZG8gYVxuIgorIiAgICAgICAgICAgICAgICAgwqtkZWJpYW4vcnVsZXPCuy5cbiIKKyIgIC1rPGlkLWNsYXZlPiAgIExhIGNsYXZlIGEgdXNhciBwYXJhIGZpcm1hci5cbiIKKyIgIC1zZ3BnICAgICAgICAgIExhIG9yZGVuIHBhcmEgZmlybWFyIHNlIGludm9jYSBjb21vIEdQRy5cbiIKKyIgIC1zcGdwICAgICAgICAgIExhIG9yZGVuIHBhcmEgZmlybWFyIHNlIGludm9jYSBjb21vIFBHUC5cbiIKKyIgIC11cyAgICAgICAgICAgIE5vIGZpcm1hIGxhcyBmdWVudGVzLlxuIgorIiAgLXVjICAgICAgICAgICAgTm8gZmlybWEgZWwgZmljaGVybyBkZSBjYW1iaW9zLlxuIgorIiAgLWE8YXJxLj4gICAgICAgTGEgYXJxdWl0ZWN0dXJhIGRlIERlYmlhbiBwYXJhIGxhIHF1ZSBzZSBjb21waWxhXG4iCisiICAgICAgICAgICAgICAgICAoaW1wbGljYSDCqy1kwrspLlxuIgorIiAgLWIgICAgICAgICAgICAgU8OzbG8gYmluYXJpbywgbm8gY29uc3RydXllIGxhcyBmdWVudGVzLiAgfSBpbnRyb2R1Y2lkbyBcbiIKKyIgIC1CICAgICAgICAgICAgIFPDs2xvIGJpbmFyaW8sIHNpbiBmaWNoZXJvcyBpbmRlcGVuZGllbnRlc30gdGFtYmnDqW4gYVxuIgorIiAgICAgICAgICAgICAgICAgZGUgYXJxdWl0ZWN0dXJhLiAgICAgICAgICAgICAgICAgICAgICAgICB9IGRwa2ctZ2VuY2hhbmdlc1xuIgorIiAgLUEgICAgICAgICAgICAgU8OzbG8gYmluYXJpbywgc8OzbG8gZmljaGVyb3MgaW5kZXBlbmRpZW50ZXN9XG4iCisiICAgICAgICAgICAgICAgICBkZSBhcnF1aXRlY3R1cmEuXG4iCisiICAtUyAgICAgICAgICAgICBTw7NsbyBmdWVudGVzLCBzaW4gYmluYXJpb3MuICAgICB9XG4iCisiICAtRiAgICAgICAgICAgICBDb25zdHJ1Y2Npw7NuIG5vcm1hbCBjb21wbGV0YSAoYmluYXJpb3MgeSBmdWVudGVzKS5cbiIKKyIgIC10PHNpc3RlbWE+ICAgIERlZmluZSBlbCB0aXBvIGRlIHNpc3RlbWEgR05VLiAgfWludHJvZHVjaWRvICIKKyJhICAgICAgICAgICAgICAgICAgZHBrZy1hcmNoaXRlY3R1cmVcbiIKKyIgIC12PHZlcnNpw7NuPiAgICBDYW1iaW9zIGRlc2RlIGxhIHZlcnNpw7NuIDx2ZXJzacOzbj4uICAgICAgICAgICB9XG4iCisiICAtbTxlbmNhcmdhZG8+ICBFbCBlbmNhcmdhZG8gZGVsIHBhcXVldGUgZXMgPGVuY2FyZ2Fkbz4uICAgICAgfVxuIgorIiAgLWU8bWFpbnQ+ICAgICAgRWwgZW5jYXJnYWRvIGRlIGxhIHB1YmxpY2FjacOzbiBlcyA8ZW5jYXJnYWRvPi59IGludHJvZHUtXG4iCisiICAtQzxmaWNoZXJvLWRlc2M+IExvcyBjYW1iaW9zIHNlIGRlc2NyaWJlbiBlbiA8ZmljaGVyby1kZXNjPi4gICB9IGNpZG8gYVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gZHBrZy1nZW5jaGFuZ2VzXG4iCisiICAtc2kgKHByZWRlZmluaWRvKSAgTGEgZnVlbnRlIGluY2x1eWUgwqtvcmlnwrsgc2kgbGEgZnVlbnRlIG9yaWdpbmFsIGVzXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG51ZXZhLn1cbiIKKyIgIC1zYSAgICAgICAgICAgIFNpZW1wcmUgaW5jbHV5ZSBsYXMgwqtvcmlnwrsgZW4gbGFzIGZ1ZW50ZXMgYSBzdWJpci4gICB9XG4iCisiICAtc2QgICAgICAgICAgICBTw7NsbyBzZSBpbmNsdXllbiBlbCDCq2RpZmbCuyB5IMKrLmRzY8K7IGVuIGxhIHN1YmlkYSBkZSAgfVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZ1ZW50ZXMuICB9XG4iCisiICAtc24gICAgICAgICAgICBGdWVyemEgZWwgZm9ybWF0byBuYXRpdm8gZGUgRGViaWFuLiAgICAgICB9XG4iCisiICAtc1tzQWt1cktVUl0gICBDb25zdWx0ZSBkcGtnLXNvdXJjZSBwYXJhIHVuYSBleHBsaWNhY2nDs24ufSBpbnRyb2R1Y2lkbyBcbiIKKyIgIC16PG5pdmVsPiAgICAgIE5pdmVsIGRlIGNvbXByZXNpw7NuIGRlIGxhcyBmdWVudGVzLiAgICAgICB9IGEgZHBrZy1zb3VyY2VcbiIKKyIgIC1aPGNvbXByZXNzb3I+IENvbXByZXNpw7NuIGEgdXNhciBwYXJhIGxhcyBmdWVudGVzICAgICAgICB9XG4iCisiICAtbmMgICAgICAgICAgICBObyBsaW1waWEgZWwgw6FyYm9sIGRlIGZ1ZW50ZXMgKGltcGxpY2EgwqstYsK7KS5cbiIKKyIgIC10YyAgICAgICAgICAgIExpbXBpYSBlbCDDoXJib2wgZGUgZnVlbnRlcyBhbCBmaW5hbGl6YXIuXG4iCisiICAtYXAgICAgICAgICAgICBQYXVzYSBhbnRlcyBkZSBpbmljaWFyIGVsIHByb2Nlc28gZGUgZmlybWFkby5cbiIKKyIgIC1pWzxleHAtcmVnPl0gIElnbm9yYSBsb3MgwqtkaWZmwrsgZW50cmUgZmljaGVyb3MgcXVlIGVuY2FqYW4gY29uIGxhXG4iCisiICAgICAgICAgICAgICAgICBleHByZXNpw7NuIHJlZ3VsYXIuICAgICAgICAgICAgICAgICAgICAgICAgfSBpbnRyb2R1Y2lkbyBcbiIKKyIgIC1JWzxwYXR0ZXJuPl0gIE9taXRlIGZpY2hlcm9zIGFsIGNvbnN0cnVpciBhcmNoaXZvcyB0YXIuIH0gYSBkcGtnLXNvdXJjZVxuIgorIiAgLS1zb3VyY2Utb3B0aW9uPTxvcGNpw7NuPlxuIgorIlx0XHQgSW50cm9kdWNlIGxhIG9wY2nDs24gPG9wY2nDs24+IGEgZHBrZy1zb3VyY2UuXG4iCisiICAtLWNoYW5nZXMtb3B0aW9uPTxvcGNpw7NuPlxuIgorIlx0XHQgSW50cm9kdWNlIGxhIG9wY2nDs24gPG9wY2nDs24+IGEgZHBrZy1nZW5jaGFuZ2VzXG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3RvcmlvPlxuIgorIiAgICAgICAgICAgICAgICAgQ2FtYmlhIGVsIGRpcmVjdG9yaW8gYWRtaW5pc3RyYXRpdm8uXG4iCisiICAtaCwgLS1oZWxwICAgICBNdWVzdHJhIGVzdGUgbWVuc2FqZSBkZSBheXVkYS5cbiIKKyIgICAgICAtLXZlcnNpb24gIE11ZXN0cmEgbGEgdmVyc2nDs24uXG4iCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6MjAwIHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6MjA2CisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjIxMiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjIxOAorIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDoyMjMgc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6MTQzCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDoxNDYgc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6MTUwCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDoxNTQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IGNvbWJpbmUgJXMgYW5kICVzIgorbXNnc3RyICJubyBzZSBwdWVkZSBjb21iaW5hciDCqyVzwrsgY29uIMKrJXPCuyIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDoyMzYgc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDoyMDIKK21zZ2lkICItRSBhbmQgLVcgYXJlIGRlcHJlY2F0ZWQsIHRoZXkgYXJlIHdpdGhvdXQgZWZmZWN0IgorbXNnc3RyICLCqy1FwrsgeSDCqy1XwrsgZXN0w6FuIG9ic29sZXRhcyB5IG5vIHRpZW5lbiBlZmVjdG8iCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6MjQwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVua25vd24gb3B0aW9uIG9yIGFyZ3VtZW50ICVzIgorbXNnc3RyICJlbCBhcmd1bWVudG8gdSBvcGNpw7NuIMKrJXPCuyBlcyBkZXNjb25vY2lkbyIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDoyNTAKK21zZ2lkICJ1c2luZyBhIGdhaW4tcm9vdC1jb21tYW5kIHdoaWxlIGJlaW5nIHJvb3QiCittc2dzdHIgIiIKKyJlc3TDoSB1c2FuZG8gdW5hIG9yZGVuIHBhcmEgY29udmVydGlyc2UgZW4gYWRtaW5pc3RyYWRvciAowqtnYWluLXJvb3QtIgorImNvbW1hbmTCuyksIGEgcGVzYXIgZGUgcXVlIHlhIGVzIGVsIGFkbWluaXN0cmFkb3IiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6MjU2Cittc2dpZCAiIgorImZha2Vyb290IG5vdCBmb3VuZCwgZWl0aGVyIGluc3RhbGwgdGhlIGZha2Vyb290XG4iCisicGFja2FnZSwgc3BlY2lmeSBhIGNvbW1hbmQgd2l0aCB0aGUgLXIgb3B0aW9uLCBvciBydW4gdGhpcyBhcyByb290IgorbXNnc3RyICIiCisibm8gc2UgaGEgZW5jb250cmFkbyBmYWtlcm9vdDsgcHVlZGUgaW5zdGFsYXIgZWwgcGFxdWV0ZSBmYWtlcm9vdCxcbiIKKyJkZWZpbmlyIHVuYSBvcmRlbiBjb24gbGEgb3BjacOzbiDCqy1ywrssIG8gZWplY3V0YXIgZXN0byBjb21vIGFkbWluaXN0cmFkb3IiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6MjYwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImdhaW4tcm9vdC1jb21tbWFuZCAnJXMnIG5vdCBmb3VuZCIKK21zZ3N0ciAibm8gc2UgaGEgZW5jb250cmFkbyBsYSBvcmRlbiDCqyVzwrsgcGFyYSBjb252ZXJ0aXJzZSBlbiBhZG1pbmlzdHJhZG9yIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjI3OQorbXNnaWQgInVua25vd24gc2lnbiBjb21tYW5kLCBhc3N1bWluZyBwZ3Agc3R5bGUgaW50ZXJmYWNlIgorbXNnc3RyICJsYSBvcmRlbiBkZSBmaXJtYSBlcyBkZXNjb25vY2lkYSwgYWRvcHRhbmRvIHVuIGVzdGlsbyBkZSBpbnRlcmZheiBwZ3AiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6MjgyCittc2dpZCAiUEdQIHN1cHBvcnQgaXMgZGVwcmVjYXRlZCAoc2VlIFJFQURNRS5mZWF0dXJlLXJlbW92YWwtc2NoZWR1bGUpIgorbXNnc3RyICIiCisiTGEgY29tcGF0aWJpbGlkYWQgY29uIFBHUCBlc3TDoSBvYnNvbGV0YSAoY29uc3VsdGUgwqtSRUFETUUuZmVhdHVyZS1yZW1vdmFsLSIKKyJzY2hlZHVsZcK7KSIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDozMDEKK21zZ2lkICJzb3VyY2UgcGFja2FnZSIKK21zZ3N0ciAicGFxdWV0ZSBmdWVudGUiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6MzAyCittc2dpZCAic291cmNlIHZlcnNpb24iCittc2dzdHIgInZlcnNpw7NuIGRlIGxhcyBmdWVudGVzIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjMxMgorbXNnaWQgInNvdXJjZSBjaGFuZ2VkIGJ5IgorbXNnc3RyICJmdWVudGVzIG1vZGlmaWNhZGFzIHBvciIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDozMzAKK21zZ2lkICJob3N0IGFyY2hpdGVjdHVyZSIKK21zZ3N0ciAiYXJxdWl0ZWN0dXJhIGRlbCBzaXN0ZW1hIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjM0MworbXNnaWQgImRlYmlhbi9ydWxlcyBpcyBub3QgZXhlY3V0YWJsZTogZml4aW5nIHRoYXQuIgorbXNnc3RyICLCq2RlYmlhbi9ydWxlc8K7IG5vIGVzIHVuIGZpY2hlcm8gZWplY3V0YWJsZTogcmVwYXJhbmRvLiIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDozNjIKK21zZ2lkICJCdWlsZCBkZXBlbmRlbmNpZXMvY29uZmxpY3RzIHVuc2F0aXNmaWVkOyBhYm9ydGluZy4iCittc2dzdHIgIiIKKyJMYXMgZGVwZW5kZW5jaWFzIHkgY29uZmxpY3RvcyBkZSBjb25zdHJ1Y2Npw7NuIG5vIGVzdMOhbiBzYXRpc2ZlY2hhcywgIgorImNhbmNlbGFuZG8uIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjM2MworbXNnaWQgIihVc2UgLWQgZmxhZyB0byBvdmVycmlkZS4pIgorbXNnc3RyICIoVXNlIGxhIG9wY2nDs24gwqstZMK7IHBhcmEgYW51bGFybG8uKSIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDozNjYKK21zZ2lkICJUaGlzIGlzIGN1cnJlbnRseSBhIG5vbi1mYXRhbCB3YXJuaW5nIHdpdGggLVMsIGJ1dCIKK21zZ3N0ciAiQWN0dWFsbWVudGUsIGVzdGUgZXMgdW4gYXZpc28gbm8gZmF0YWwgY29uIMKrLVPCuywgcGVybyIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDozNjcKK21zZ2lkICJ3aWxsIHByb2JhYmx5IGJlY29tZSBmYXRhbCBpbiB0aGUgZnV0dXJlLiIKK21zZ3N0ciAicHJvYmFibGVtZW50ZSBzZWEgZmF0YWwgZW4gZWwgZnV0dXJvLiIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDozODkKK21zZ2lkICIiCisiaXQgaXMgYSBiYWQgaWRlYSB0byBnZW5lcmF0ZSBhIHNvdXJjZSBwYWNrYWdlIHdpdGhvdXQgY2xlYW5pbmcgdXAgZmlyc3QsIGl0ICIKKyJtaWdodCBjb250YWluIHVuZGVzaXJlZCBmaWxlcy4iCittc2dzdHIgIiIKKyJFcyB1bmEgbWFsYSBpZGVhIGdlbmVyYXIgdW4gcGFxdWV0ZSBmdWVudGUgc2luIGFudGVzIGxpbXBpYXIsIHlhIHF1ZSBwdWVkZSAiCisiY29udGVuZXIgZmljaGVyb3Mgbm8gZGVzZWFkb3MuIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjQwMgorbXNnaWQgIlByZXNzIHRoZSByZXR1cm4ga2V5IHRvIHN0YXJ0IHNpZ25pbmcgcHJvY2Vzc1xuIgorbXNnc3RyICJQdWxzZSBsYSB0ZWNsYSBJbnRybyBwYXJhIGluaWNpYXIgZWwgcHJvY2VzbyBkZSBmaXJtYWRvXG4iCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6NDA5Cittc2dpZCAiRmFpbGVkIHRvIHNpZ24gLmRzYyBhbmQgLmNoYW5nZXMgZmlsZSIKK21zZ3N0ciAiU2UgaGEgZGV0ZWN0YWRvIHVuIGZhbGxvIGFsIGZpcm1hciBsb3MgZmljaGVyb3MgwqsuZHNjwrsgeSDCqy5jaGFuZ2VzwrsiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6NDI0IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6NDI4CisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjQ0MQorbXNnaWQgIndyaXRlIGNoYW5nZXMgZmlsZSIKK21zZ3N0ciAiZXNjcmliaXIgZWwgZmljaGVybyBkZSBjYW1iaW9zIMKrY2hhbmdlc8K7IgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjQ0MAorbXNnaWQgImRwa2ctZ2VuY2hhbmdlcyIKK21zZ3N0ciAiZHBrZy1nZW5jaGFuZ2VzIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjQ0OQorbXNnaWQgInNvdXJjZSBvbmx5IHVwbG9hZDogRGViaWFuLW5hdGl2ZSBwYWNrYWdlIgorbXNnc3RyICJzdWJpZGEgc8OzbG8gZGUgZnVlbnRlczogcGFxdWV0ZXMgbmF0aXZvcyBkZSBEZWJpYW4iCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6NDUxCittc2dpZCAic291cmNlIG9ubHksIGRpZmYtb25seSB1cGxvYWQgKG9yaWdpbmFsIHNvdXJjZSBOT1QgaW5jbHVkZWQpIgorbXNnc3RyICIiCisic8OzbG8gZnVlbnRlcywgc3ViaWRhIHPDs2xvIGRlIGxhcyBkaWZlcmVuY2lhcywgKMKrZGlmZsK7LCBOTyBzZSBpbmNsdXllIGxhICIKKyJmdWVudGUgb3JpZ2luYWxlcykiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6NDUzCittc2dpZCAic291cmNlIG9ubHkgdXBsb2FkIChvcmlnaW5hbCBzb3VyY2UgaXMgaW5jbHVkZWQpIgorbXNnc3RyICJzdWJpZGEgc8OzbG8gZGUgZnVlbnRlcyAoc2UgaW5jbHV5ZSBsYSBmdWVudGUgb3JpZ2luYWwpIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjQ1NiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjQ2NAorbXNnaWQgImZ1bGwgdXBsb2FkIChvcmlnaW5hbCBzb3VyY2UgaXMgaW5jbHVkZWQpIgorbXNnc3RyICJzdWJpZGEgY29tcGxldGEgKHNlIGluY2x1eWUgbGEgZnVlbnRlIG9yaWdpbmFsKSIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDo0NTgKK21zZ2lkICJiaW5hcnkgb25seSB1cGxvYWQgKG5vIHNvdXJjZSBpbmNsdWRlZCkiCittc2dzdHIgInN1YmlkYSBzw7NsbyBkZSBiaW5hcmlvcyAobm8gc2UgaW5jbHV5ZSBuaW5ndW5hIGZ1ZW50ZSkiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6NDYwCittc2dpZCAiZnVsbCB1cGxvYWQ7IERlYmlhbi1uYXRpdmUgcGFja2FnZSAoZnVsbCBzb3VyY2UgaXMgaW5jbHVkZWQpIgorbXNnc3RyICIiCisic3ViaWRhIGNvbXBsZXRhOyBwYXF1ZXRlIG5hdGl2byBkZSBEZWJpYW4gKHNlIGluY2x1eWUgbGEgZnVlbnRlIGNvbXBsZXRhKSIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDo0NjIKK21zZ2lkICJiaW5hcnkgYW5kIGRpZmYgdXBsb2FkIChvcmlnaW5hbCBzb3VyY2UgTk9UIGluY2x1ZGVkKSIKK21zZ3N0ciAic3ViaWRhIGRlIGJpbmFyaW9zIHkgZGlmZXJlbmNpYXMgKE5PIHNlIGluY2x1eWUgbGEgZnVlbnRlIG9yaWdpbmFsKSIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDo0NjkKK21zZ2lkICJGYWlsZWQgdG8gc2lnbiAuY2hhbmdlcyBmaWxlIgorbXNnc3RyICJTZSBoYSBkZXRlY3RhZG8gdW4gZmFsbG8gYWwgZmlybWFyIGVsIGZpY2hlcm8gwqsuY2hhbmdlc8K7IgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjQ4OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGV0ZXJtaW5lICVzIgorbXNnc3RyICJubyBzZSBwdWRvIGRldGVybWluYXIgwqslc8K7IgorCisjOiBzY3JpcHRzL2Rwa2ctY2hlY2tidWlsZGRlcHMucGw6NDIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiVXNhZ2U6ICVzIFs8b3B0aW9uPi4uLl0gWzxjb250cm9sLWZpbGU+XSIKK21zZ3N0ciAiVXNvOiAlcyBbPG9wY2nDs24+Li4uXSBbPGZpY2hlcm8tY29udHJvbD5dIgorCisjOiBzY3JpcHRzL2Rwa2ctY2hlY2tidWlsZGRlcHMucGw6NDQKK21zZ2lkICIiCisiT3B0aW9uczpcbiIKKyIgIC1CICAgICAgICAgICAgIGJpbmFyeS1vbmx5LCBpZ25vcmUgLUluZGVwLlxuIgorIiAgLWQgYnVpbGQtZGVwcyAgdXNlIGdpdmVuIHN0cmluZyBhcyBidWlsZCBkZXBlbmRlbmNpZXMgaW5zdGVhZCBvZlxuIgorIiAgICAgICAgICAgICAgICAgcmV0cmlldmluZyB0aGVtIGZyb20gY29udHJvbCBmaWxlXG4iCisiICAtYyBidWlsZC1jb25mICB1c2UgZ2l2ZW4gc3RyaW5nIGZvciBidWlsZCBjb25mbGljdHMgaW5zdGVhZCBvZlxuIgorIiAgICAgICAgICAgICAgICAgcmV0cmlldmluZyB0aGVtIGZyb20gY29udHJvbCBmaWxlXG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+XG4iCisiICAgICAgICAgICAgICAgICBjaGFuZ2UgdGhlIGFkbWluaXN0cmF0aXZlIGRpcmVjdG9yeS5cbiIKKyIgIC1oLCAtLWhlbHAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAgICAgLS12ZXJzaW9uICBzaG93IHRoZSB2ZXJzaW9uLiIKK21zZ3N0ciAiIgorIk9wY2lvbmVzOlxuIgorIiAgLUIgICAgICAgICAgICAgU8OzbG8gYmluYXJpbywgaWdub3JhIMKrLUluZGVwwrsuXG4iCisiICAtZCBidWlsZC1kZXBzICBVc2EgbGEgY2FkZW5hIGRhZGEgY29tbyBkZXBlbmRlbmNpYXMgZGUgY29uc3RydWNjacOzblxuIgorIiAgICAgICAgICAgICAgICAgZW4gdmV6IGRlIG9idGVuZXJsb3MgcG9yIGVsIGZpY2hlcm8gZGUgY29udHJvbC5cbiIKKyIgIC1jIGJ1aWxkLWNvbmYgIFVzYSBsYSBjYWRlbmEgZGFkYSBjb21vIGNvbmZsaWN0b3MgZGUgY29uc3RydWNjacOzblxuIgorIiAgICAgICAgICAgICAgICAgZW4gdmV6IGRlIG9idGVuZXJsb3MgcG9yIGVsIGZpY2hlcm8gZGUgY29udHJvbC5cbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT5cbiIKKyIgICAgICAgICAgICAgICAgIENhbWJpYSBlbCBkaXJlY3RvcmlvIGFkbWluaXN0cmF0aXZvLlxuIgorIiAgLWgsIC0taGVscCAgICAgTXVlc3RyYSBlc3RlIG1lbnNhamUgZGUgYXl1ZGEuXG4iCisiICAgICAgLS12ZXJzaW9uICBNdWVzdHJhIGxhIHZlcnNpw7NuLiIKKworIzogc2NyaXB0cy9kcGtnLWNoZWNrYnVpbGRkZXBzLnBsOjU1Cittc2dpZCAiIgorIjxjb250cm9sLWZpbGU+IGlzIHRoZSBjb250cm9sIGZpbGUgdG8gcHJvY2VzcyAoZGVmYXVsdDogZGViaWFuL2NvbnRyb2wpLiIKK21zZ3N0ciAiIgorIjxmaWNoZXJvLWNvbnRyb2w+IGVzIGVsIGZpY2hlcm8gZGUgY29udHJvbCBhIHByb2Nlc2FyICjCq2RlYmlhbi9jb250cm9swrsgcG9yICIKKyJvbWlzacOzbikuIgorCisjOiBzY3JpcHRzL2Rwa2ctY2hlY2tidWlsZGRlcHMucGw6MTA1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzOiBVbm1ldCBidWlsZCBkZXBlbmRlbmNpZXM6ICIKK21zZ3N0ciAiJXM6IERlcGVuZGVuY2lhcyBkZSBjb25zdHJ1Y2Npw7NuIG5vIHNhdGlzZmVjaGFzOiAiCisKKyM6IHNjcmlwdHMvZHBrZy1jaGVja2J1aWxkZGVwcy5wbDoxMDkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXM6IEJ1aWxkIGNvbmZsaWN0czogIgorbXNnc3RyICIlczogQ29uZmxpY3RvcyBkZSBjb25zdHJ1Y2Npw7NuOiAiCisKKyM6IHNjcmlwdHMvZHBrZy1jaGVja2J1aWxkZGVwcy5wbDoxODQgc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDoyNTMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZXJyb3Igb2NjdXJyZWQgd2hpbGUgcGFyc2luZyAlcyIKK21zZ3N0ciAic2UgaGEgZGV0ZWN0YWRvIHVuIGZhbGxvIGFsIGFuYWxpemFyIMKrJXPCuyIKKworIzogc2NyaXB0cy9kcGtnLWRpc3RhZGRmaWxlLnBsOjM1Cittc2dpZCAiIgorIlxuIgorIkNvcHlyaWdodCAoQykgMTk5NiBJYW4gSmFja3Nvbi4iCittc2dzdHIgIiIKKyJcbiIKKyJDb3B5cmlnaHQgKEMpIDE5OTYgSWFuIEphY2tzb24uIgorCisjOiBzY3JpcHRzL2Rwa2ctZGlzdGFkZGZpbGUucGw6NDYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4uLi5dIDxmaWxlbmFtZT4gPHNlY3Rpb24+IDxwcmlvcml0eT5cbiIKKyJcbiIKKyJPcHRpb25zOlxuIgorIiAgLWY8ZmlsZXNsaXN0ZmlsZT4gICAgICAgIHdyaXRlIGZpbGVzIGhlcmUgaW5zdGVhZCBvZiBkZWJpYW4vZmlsZXMuXG4iCisiICAtaCwgLS1oZWxwICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgICAgICAtLXZlcnNpb24gICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorbXNnc3RyICIiCisiVXNvOiAlcyBbPG9wY2nDs24+Li4uXSA8bm9tYnJlLWZpY2hlcm8+IDxzZWNjacOzbj4gPHByaW9yaWRhZD5cbiIKKyJcbiIKKyJPcGNpb25lczpcbiIKKyIgIC1mPGxpc3RhLWZpY2hlcm9zPiAgICAgICAgRXNjcmliZSBsb3MgZmljaGVyb3MgYXF1w60gZW4gdmV6IGRlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgIMKrZGViaWFuL2ZpbGVzwrsuXG4iCisiICAtaCwgLS1oZWxwICAgICAgICAgICAgICAgIE11ZXN0cmEgZXN0ZSBtZW5zYWplIGRlIGF5dWRhLlxuIgorIiAgICAgIC0tdmVyc2lvbiAgICAgICAgICAgICBNdWVzdHJhIGxhIHZlcnNpw7NuLlxuIgorCisjOiBzY3JpcHRzL2Rwa2ctZGlzdGFkZGZpbGUucGw6NzIKK21zZ2lkICJuZWVkIGV4YWN0bHkgYSBmaWxlbmFtZSwgc2VjdGlvbiBhbmQgcHJpb3JpdHkiCittc2dzdHIgIlNlIG5lY2VzaXRhIGV4YWN0YW1lbnRlIHVuIG5vbWJyZSBkZSBmaWNoZXJvLCBzZWNjacOzbiB5IHByaW9yaWRhZCIKKworIzogc2NyaXB0cy9kcGtnLWRpc3RhZGRmaWxlLnBsOjc2Cittc2dpZCAiZmlsZW5hbWUsIHNlY3Rpb24gYW5kIHByaW9yaXR5IG1heSBjb250YWluIG5vIHdoaXRlc3BhY2UiCittc2dzdHIgIiIKKyJFbCBub21icmUgZGUgZmljaGVybywgc2VjY2nDs24geSBwcmlvcmlkYWQgbm8gcHVlZGVuIGNvbnRlbmVyIGVzcGFjaW9zIGVuICIKKyJibGFuY28iCisKKyM6IHNjcmlwdHMvZHBrZy1kaXN0YWRkZmlsZS5wbDo3OSBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDozMzQKK21zZ2lkICJvcGVuIG5ldyBmaWxlcyBsaXN0IGZpbGUiCittc2dzdHIgImFicmlyIGVsIG51ZXZvIGZpY2hlcm8gwqtmaWxlc8K7IGRlIGxpc3RhIGRlIGZpY2hlcm9zIgorCisjOiBzY3JpcHRzL2Rwa2ctZGlzdGFkZGZpbGUucGw6ODQgc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MzQ1Cittc2dpZCAiY29weSBvbGQgZW50cnkgdG8gbmV3IGZpbGVzIGxpc3QgZmlsZSIKK21zZ3N0ciAiIgorImNvcGlhciBsYSBlbnRyYWRhIGFudGlndWEgYWwgbnVldm8gZmljaGVybyDCq2ZpbGVzwrsgZGUgbGEgbGlzdGEgZGUgZmljaGVyb3MiCisKKyM6IHNjcmlwdHMvZHBrZy1kaXN0YWRkZmlsZS5wbDo4NyBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDozNDkKK21zZ2lkICJyZWFkIG9sZCBmaWxlcyBsaXN0IGZpbGUiCittc2dzdHIgImxlZXIgZWwgYW50aWd1byBmaWNoZXJvIMKrZmlsZXPCuyBkZSBsYSBsaXN0YSBkZSBmaWNoZXJvcyIKKworIzogc2NyaXB0cy9kcGtnLWRpc3RhZGRmaWxlLnBsOjkwIHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjM1OQorbXNnaWQgIndyaXRlIG5ldyBlbnRyeSB0byBuZXcgZmlsZXMgbGlzdCBmaWxlIgorbXNnc3RyICIiCisiZXNjcmliaXIgbGEgZW50cmFkYSBudWV2YSBhbCBudWV2byBmaWNoZXJvIMKrZmlsZXPCuyBkZSBsYSBsaXN0YSBkZSBmaWNoZXJvcyIKKworIzogc2NyaXB0cy9kcGtnLWRpc3RhZGRmaWxlLnBsOjkxIHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjM2MAorbXNnaWQgImNsb3NlIG5ldyBmaWxlcyBsaXN0IGZpbGUiCittc2dzdHIgImNlcnJhciBlbCBudWV2byBmaWNoZXJvIMKrZmlsZXPCuyBkZSBsYSBsaXN0YSBkZSBmaWNoZXJvcyIKKworIzogc2NyaXB0cy9kcGtnLWRpc3RhZGRmaWxlLnBsOjkzIHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjM2MQorbXNnaWQgImluc3RhbGwgbmV3IGZpbGVzIGxpc3QgZmlsZSIKK21zZ3N0ciAiaW5zdGFsYXIgZWwgbnVldm8gZmljaGVybyDCq2ZpbGVzwrsgZGUgbGEgbGlzdGEgZGUgZmljaGVyb3MiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjk4Cittc2dpZCAiIgorIlxuIgorIkNvcHlyaWdodCAoQykgMTk5NiBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLiIKK21zZ3N0ciAiIgorIlxuIgorIkNvcHlyaWdodCAoQykgMTk5NiBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuLiIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6MTEwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl1cbiIKKyJcbiIKKyJPcHRpb25zOlxuIgorIiAgLWIgICAgICAgICAgICAgICAgICAgICAgIGJpbmFyeS1vbmx5IGJ1aWxkIC0gbm8gc291cmNlIGZpbGVzLlxuIgorIiAgLUIgICAgICAgICAgICAgICAgICAgICAgIGFyY2gtc3BlY2lmaWMgLSBubyBzb3VyY2Ugb3IgYXJjaC1pbmRlcCBmaWxlcy5cbiIKKyIgIC1BICAgICAgICAgICAgICAgICAgICAgICBvbmx5IGFyY2gtaW5kZXAgLSBubyBzb3VyY2Ugb3IgYXJjaC1zcGVjaWZpYyAiCisiZmlsZXMuXG4iCisiICAtUyAgICAgICAgICAgICAgICAgICAgICAgc291cmNlLW9ubHkgdXBsb2FkLlxuIgorIiAgLWM8Y29udHJvbGZpbGU+ICAgICAgICAgIGdldCBjb250cm9sIGluZm8gZnJvbSB0aGlzIGZpbGUuXG4iCisiICAtbDxjaGFuZ2Vsb2dmaWxlPiAgICAgICAgZ2V0IHBlci12ZXJzaW9uIGluZm8gZnJvbSB0aGlzIGZpbGUuXG4iCisiICAtZjxmaWxlc2xpc3RmaWxlPiAgICAgICAgZ2V0IC5kZWIgZmlsZXMgbGlzdCBmcm9tIHRoaXMgZmlsZS5cbiIKKyIgIC12PHNpbmNldmVyc2lvbj4gICAgICAgICBpbmNsdWRlIGFsbCBjaGFuZ2VzIGxhdGVyIHRoYW4gdmVyc2lvbi5cbiIKKyIgIC1DPGNoYW5nZXNkZXNjcmlwdGlvbj4gICB1c2UgY2hhbmdlIGRlc2NyaXB0aW9uIGZyb20gdGhpcyBmaWxlLlxuIgorIiAgLW08bWFpbnRhaW5lcj4gICAgICAgICAgIG92ZXJyaWRlIGNvbnRyb2wncyBtYWludGFpbmVyIHZhbHVlLlxuIgorIiAgLWU8bWFpbnRhaW5lcj4gICAgICAgICAgIG92ZXJyaWRlIGNoYW5nZWxvZydzIG1haW50YWluZXIgdmFsdWUuXG4iCisiICAtdTx1cGxvYWRmaWxlc2Rpcj4gICAgICAgZGlyZWN0b3J5IHdpdGggZmlsZXMgKGRlZmF1bHQgaXMgYC4uJykuXG4iCisiICAtc2kgKGRlZmF1bHQpICAgICAgICAgICAgc3JjIGluY2x1ZGVzIG9yaWcgaWYgbmV3IHVwc3RyZWFtLlxuIgorIiAgLXNhICAgICAgICAgICAgICAgICAgICAgIHNvdXJjZSBpbmNsdWRlcyBvcmlnIHNyYy5cbiIKKyIgIC1zZCAgICAgICAgICAgICAgICAgICAgICBzb3VyY2UgaXMgZGlmZiBhbmQgLmRzYyBvbmx5LlxuIgorIiAgLXEgICAgICAgICAgICAgICAgICAgICAgIHF1aWV0IC0gbm8gaW5mb3JtYXRpb25hbCBtZXNzYWdlcyBvbiBzdGRlcnIuXG4iCisiICAtRjxjaGFuZ2Vsb2dmb3JtYXQ+ICAgICAgZm9yY2UgY2hhbmdlIGxvZyBmb3JtYXQuXG4iCisiICAtVjxuYW1lPj08dmFsdWU+ICAgICAgICAgc2V0IGEgc3Vic3RpdHV0aW9uIHZhcmlhYmxlLlxuIgorIiAgLVQ8dmFybGlzdGZpbGU+ICAgICAgICAgIHJlYWQgdmFyaWFibGVzIGhlcmUsIG5vdCBkZWJpYW4vc3Vic3R2YXJzLlxuIgorIiAgLUQ8ZmllbGQ+PTx2YWx1ZT4gICAgICAgIG92ZXJyaWRlIG9yIGFkZCBhIGZpZWxkIGFuZCB2YWx1ZS5cbiIKKyIgIC1VPGZpZWxkPiAgICAgICAgICAgICAgICByZW1vdmUgYSBmaWVsZC5cbiIKKyIgIC1oLCAtLWhlbHAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgICAgIC0tdmVyc2lvbiAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCittc2dzdHIgIiIKKyJVc286ICVzIFs8b3BjacOzbj4gLi4uXVxuIgorIlxuIgorIk9wY2lvbmVzOlxuIgorIiAgLWIgICAgICAgICAgICAgICAgICAgICAgIENvbnN0cnV5ZSBzw7NsbyBiaW5hcmlvcywgc2luIGZpY2hlcm9zIGRlICIKKyJmdWVudGVzLlxuIgorIiAgLUIgICAgICAgICAgICAgICAgICAgICAgIFPDs2xvIGVzcGVjw61maWNvIGEgbGEgYXJxdWl0ZWN0dXJhLCBzaW4gIgorImZpY2hlcm9zICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlIGZ1ZW50ZXMgbyBpbmRlcGVuZGllbnRlcyBkZSAiCisiYXJxdWl0ZWN0dXJhLlxuIgorIiAgLUEgICAgICAgICAgICAgICAgICAgICAgIFPDs2xvIGluZGVwZW5kaWVudGVzIGRlIGFycXVpdGVjdHVyYSwgc2luICIKKyJmaWNoZXJvc1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlIGZ1ZW50ZXMgbyBkZXBlbmRpZW50ZXMgZGUgYXJxdWl0ZWN0dXJhLlxuIgorIiAgLVMgICAgICAgICAgICAgICAgICAgICAgIFN1YmlkYSBzw7NsbyBkZSBmdWVudGVzLlxuIgorIiAgLWM8ZmljaGVyby1jb250cm9sPiAgICAgIE9idGllbmUgbGEgaW5mb3JtYWNpw7NuIGRlIGNvbnRyb2wgZGUgZXN0ZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpY2hlcm8uXG4iCisiICAtbDxmaWNoZXJvLWNoYW5nZWxvZz4gICAgT2J0aWVuZSBpbmZvcm1hY2nDs24gZGUgdW5hIHZlcnNpw7NuIGRlIGVzdGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWNoZXJvLlxuIgorIiAgLWY8bGlzdGEtZGUtZmljaGVyb3M+ICAgIE9idGllbmUgbGEgbGlzdGEgZGUgZmljaGVyb3MgZGVsIMKrLmRlYsK7IGRlIGVzdGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWNoZXJvLlxuIgorIiAgLXY8ZGVzZGUtdmVyc2lvbj4gICAgICAgIEluY2x1eWUgbG9zIGNhbWJpb3MgcG9zdGVyaW9yZXMgYSBsYSB2ZXJzacOzbi5cbiIKKyIgIC1DPGRlc2NyaXBjacOzbi1jYW1iaW9zPiAgVXNhIGxhIGRlc2NyaXBjacOzbiBkZSBjYW1iaW9zIGRlIGVzdGUgZmljaGVyby5cbiIKKyIgIC1tPGVuY2FyZ2Fkbz4gICAgICAgICAgICBTdXN0aXR1eWUgZWwgdmFsb3IgZGVsIGVuY2FyZ2FkbyBlbiBlbCBmaWNoZXJvXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgwqtjb250cm9swrsuXG4iCisiICAtZTxlbmNhcmdhZG8+ICAgICAgICAgICAgU3VzdGl0dXllIGVsIHZhbG9yIGRlbCBlbmNhcmdhZG8gZW4gZWwgcmVnaXN0cm9cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBkZSBjYW1iaW9zICjCq2NoYW5nZWxvZ8K7KS5cbiIKKyIgIC11PGRpci1zdWJpZGEtZmljaGVyb3M+ICBEaXJlY3RvcmlvIGNvbiBmaWNoZXJvcyAowqsuLsK7IHBvciBvbWlzacOzbikuXG4iCisiICAtc2kgKHBvciBvbWlzacOzbikgICAgICAgIEluY2x1eWUgwqtvcmlnwrsgZW4gbGEgZnVlbnRlIHNlIGhheSB1bmEgbnVldmFcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICB2ZXJzacOzbiBkZWwgZGVzYXJyb2xsYWRvciBvcmlnaW5hbC4gIC0iCisic2EgICAgICAgICAgICAgICAgICAgICAgSW5jbHV5ZSBsYSBmdWVudGUgb3JpZ2luYWwgZW4gbGEgZnVlbnRlLlxuIgorIiAgLXNkICAgICAgICAgICAgICAgICAgICAgIExhcyBmdWVudGVzIHNvbiBzw7NsbyDCq2RpZmbCuyB5IMKrZHNjwrsuXG4iCisiICAtcSAgICAgICAgICAgICAgICAgICAgICAgU2lsZW5jaW9zbyAtIHNpbiBtZW5zYWplcyBpbmZvcm1hdGl2b3MgcG9yICIKKyJsYSAgICAgICAgICAgICAgICAgICAgICAgICAgICBzYWxpZGEgZGUgZXJyb3IgZXN0w6FuZGFyLlxuIgorIiAgLUY8Zm9ybWF0by1jaGFuZ2Vsb2c+ICAgIEZ1ZXJ6YSBlbCBmb3JtYXRvIGRlbCByZWdpc3RybyBkZSBjYW1iaW9zLlxuIgorIiAgLVY8bm9tYnJlPj08dmFsb3I+ICAgICAgIERlZmluZSB1bmEgc3VzdGl0dWNpw7NuIGRlIHZhcmlhYmxlLlxuIgorIiAgLVQ8ZmljaGVyby1saXN0YS12YXI+ICAgIExlZSBsYXMgdmFyaWFibGVzIGFxdcOtLCBubyBlbiDCq2RlYmlhbi8iCisic3Vic3R2YXJzwrsuXG4iCisiICAtRDxjYW1wbz49PHZhbG9yPiAgICAgICAgU3VzdGl0dXllIG8gYcOxYWRlIHVuIGNhbXBvIHkgdW4gdmFsb3IuXG4iCisiICAtVTxjYW1wbz4gICAgICAgICAgICAgICAgRWxpbWluYSB1biBjYW1wby5cbiIKKyIgIC1oLCAtLWhlbHAgICAgICAgICAgICAgICBNdWVzdHJhIGVzdGUgbWVuc2FqZSBkZSBheXVkYS5cbiIKKyIgICAgICAtLXZlcnNpb24gICAgICAgICAgICBNdWVzdHJhIGxhIHZlcnNpw7NuLlxuIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDoxNDgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXM6IGFyY2gtc3BlY2lmaWMgdXBsb2FkIC0gbm90IGluY2x1ZGluZyBhcmNoLWluZGVwZW5kZW50IHBhY2thZ2VzIgorbXNnc3RyICIiCisiJXM6IHN1YmlkYSBkZSBkYXRvcyBlc3BlY8OtZmljb3MgYSBsYSBhcnF1aXRlY3R1cmEgLSAgbm8gc2UgaW5jbHV5ZW4gcGFxdWV0ZXMgIgorImluZGVwZW5kaWVudGVzIGRlIGxhIGFycXVpdGVjdHVyYSIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6MTUyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzOiBhcmNoLWluZGVwIHVwbG9hZCAtIG5vdCBpbmNsdWRpbmcgYXJjaC1zcGVjaWZpYyBwYWNrYWdlcyIKK21zZ3N0ciAiIgorIiVzOiBzdWJpZGEgZGUgZGF0b3MgaW5kZXBlbmRpZW50ZXMgZGUgbGEgYXJxdWl0ZWN0dXJhIC0gbm8gc2UgaW5jbHV5ZW4gIgorInBhcXVldGVzIGVzcGVjw61maWNvcyBhIGxhIGFycXVpdGVjdHVyYSIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6MjE5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInRoZSBjdXJyZW50IHZlcnNpb24gKCVzKSBpcyBlYXJsaWVyIHRoYW4gdGhlIHByZXZpb3VzIG9uZSAoJXMpIgorbXNnc3RyICJsYSB2ZXJzacOzbiBhY3R1YWwgKCVzKSBlcyBtw6FzIGFudGlndWEgcXVlIGxhIGFudGVyaW9yICglcykiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjIyNgorbXNnaWQgImNhbm5vdCByZWFkIGZpbGVzIGxpc3QgZmlsZSIKK21zZ3N0ciAibm8gc2UgcHVlZGUgbGVlciBlbCBmaWNoZXJvIGNvbiBsYSBsaXN0YSBkZSBmaWNoZXJvcyIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6MjMwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBmaWxlcyBsaXN0IGVudHJ5IGZvciBwYWNrYWdlICVzIChsaW5lICVkKSIKK21zZ3N0ciAiIgorImVudHJhZGEgZHVwbGljYWRhIGVuIGxhIGxpc3RhIGRlIGZpY2hlcm9zIHBhcmEgZWwgcGFxdWV0ZSAlcyAobMOtbmVhICVkKSIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6MjM4IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjI1MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgZmlsZXMgbGlzdCBlbnRyeSBmb3IgZmlsZSAlcyAobGluZSAlZCkiCittc2dzdHIgIiIKKyJlbnRyYWRhIGR1cGxpY2FkYSBlbiBsYSBsaXN0YSBkZSBmaWNoZXJvcyBwYXJhIGVsIGZpY2hlcm8gJXMgKGzDrW5lYSAlZCkiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjI1OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJiYWRseSBmb3JtZWQgbGluZSBpbiBmaWxlcyBsaXN0IGZpbGUsIGxpbmUgJWQiCittc2dzdHIgImzDrW5lYSBpbnbDoWxpZGEgZW4gZWwgZmljaGVybyBkZSBsaXN0YSBkZSBmaWNoZXJvcywgbMOtbmVhICVkIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDoyOTkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlcyBpbiBjb250cm9sIGZpbGUgYnV0IG5vdCBpbiBmaWxlcyBsaXN0IgorbXNnc3RyICIiCisiZWwgcGFxdWV0ZSAlcyBlc3TDoSBwcmVzZW50ZSBlbiBlbCBmaWNoZXJvIMKrY29udHJvbMK7IHBlcm8gbm8gZW4gbGEgbGlzdGEgZGUgIgorImZpY2hlcm9zIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDozNDMKK21zZ2lkICJyZWFkIGNoYW5nZXNkZXNjcmlwdGlvbiIKK21zZ3N0ciAibGVlciBsYSBkZXNjcmlwY2nDs24gZGUgY2FtYmlvcyAowqtjaGFuZ2VzZGVzY3JpcHRpb27CuykiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjM1MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJwYWNrYWdlICVzIGxpc3RlZCBpbiBmaWxlcyBsaXN0IGJ1dCBub3QgaW4gY29udHJvbCBpbmZvIgorbXNnc3RyICIiCisiZWwgcGFxdWV0ZSAlcyBlc3TDoSBwcmVzZW50ZSBlbiBsYSBsaXN0YSBkZSBmaWNoZXJvcyBwZXJvIG5vIGVuIGxhICIKKyJpbmZvcm1hY2nDs24gZGUgY29udHJvbCIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6MzYzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIm1pc3NpbmcgU2VjdGlvbiBmb3IgYmluYXJ5IHBhY2thZ2UgJXM7IHVzaW5nICctJyIKK21zZ3N0ciAiZmFsdGEgZWwgY2FtcG8gwqtTZWN0aW9uwrsgcGFyYSBlbCBwYXF1ZXRlIGJpbmFyaW8gJXMsIHVzYW5kbyAnLSciCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjM2NQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJwYWNrYWdlICVzIGhhcyBzZWN0aW9uICVzIGluIGNvbnRyb2wgZmlsZSBidXQgJXMgaW4gZmlsZXMgbGlzdCIKK21zZ3N0ciAiIgorImVsIHBhcXVldGUgJXMgdGllbmUgdW5hIHNlY2Npw7NuICVzIGVuIGVsIGZpY2hlcm8gZGUgY29udHJvbCBwZXJvICVzIGVuIGxhICIKKyJsaXN0YSBkZSBmaWNoZXJvcyIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6MzcyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIm1pc3NpbmcgUHJpb3JpdHkgZm9yIGJpbmFyeSBwYWNrYWdlICVzOyB1c2luZyAnLSciCittc2dzdHIgImZhbHRhIGVsIGNhbXBvIMKrUHJpb3JpdHnCuyBwYXJhIGVsIHBhcXVldGUgYmluYXJpbyAlczsgdXNhbmRvIMKrLcK7IgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDozNzQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlcyBoYXMgcHJpb3JpdHkgJXMgaW4gY29udHJvbCBmaWxlIGJ1dCAlcyBpbiBmaWxlcyBsaXN0IgorbXNnc3RyICIiCisiZWwgcGFxdWV0ZSAlcyB0aWVuZSB1biBwcmlvcmlkYWQgJXMgZW4gZWwgZmljaGVybyBkZSBjb250cm9sIHBlcm8gJXMgZW4gbGEgIgorImxpc3RhIGRlIGZpY2hlcm9zIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDozODYKK21zZ2lkICJtaXNzaW5nIFNlY3Rpb24gZm9yIHNvdXJjZSBmaWxlcyIKK21zZ3N0ciAiZmFsdGEgZWwgY2FtcG8gwqtTZWN0aW9uwrsgcGFyYSBsb3MgZmljaGVyb3MgZGUgZnVlbnRlcyIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6MzkxCittc2dpZCAibWlzc2luZyBQcmlvcml0eSBmb3Igc291cmNlIGZpbGVzIgorbXNnc3RyICJmYWx0YSBlbCBjYW1wbyDCq1ByaW9yaXR5wrsgcGFyYSBsb3MgZmljaGVyb3MgZGUgZnVlbnRlcyIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6Mzk4IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6MzQ2CisjOiBzY3JpcHRzL0Rwa2cvVmVuZG9yLnBtOjcxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGlzIGVtcHR5IgorbXNnc3RyICIlcyBlc3TDoSB2YWPDrW8iCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjQyNAorbXNnaWQgIm5vdCBpbmNsdWRpbmcgb3JpZ2luYWwgc291cmNlIGNvZGUgaW4gdXBsb2FkIgorbXNnc3RyICJubyBzZSBlc3TDoSBpbmNsdXllbmRvIGVsIGPDs2RpZ28gZnVlbnRlIG9yaWdpbmFsIGVuIGxhIHN1YmlkYSIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6NDMxCittc2dpZCAiaWdub3JpbmcgLXNkIG9wdGlvbiBmb3IgbmF0aXZlIERlYmlhbiBwYWNrYWdlIgorbXNnc3RyICJpZ25vcmFuZG8gbGEgb3BjacOzbiDCqy1zZMK7IHBhcmEgcGFxdWV0ZXMgbmF0aXZvcyBkZSBEZWJpYW4iCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjQzMworbXNnaWQgImluY2x1ZGluZyBmdWxsIHNvdXJjZSBjb2RlIGluIHVwbG9hZCIKK21zZ3N0ciAiaW5jbHV5ZW5kbyBlbCBjw7NkaWdvIGZ1ZW50ZSBjb21wbGV0byBlbiBsYSBzdWJpZGEiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjQzNgorbXNnaWQgImJpbmFyeS1vbmx5IHVwbG9hZCAtIG5vdCBpbmNsdWRpbmcgYW55IHNvdXJjZSBjb2RlIgorbXNnc3RyICJzdWJpZGEgc8OzbG8gZGUgYmluYXJpb3MgLSBubyBzZSBpbmNsdXllIG5pbmfDum4gY8OzZGlnbyBmdWVudGUiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjQ0MAorbXNnaWQgIndyaXRlIG9yaWdpbmFsIHNvdXJjZSBtZXNzYWdlIgorbXNnc3RyICJlc2NyaWJpciBlbCBtZW5zYWplIGRlIGxhIGZ1ZW50ZSBvcmlnaW5hbCIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6NDk0IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbTo1MzIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibWlzc2luZyBpbmZvcm1hdGlvbiBmb3IgY3JpdGljYWwgb3V0cHV0IGZpZWxkICVzIgorbXNnc3RyICJmYWx0YSBpbmZvcm1hY2nDs24gZW4gZWwgY2FtcG8gZGUgc2FsaWRhIGNyw610aWNvIMKrJXPCuyIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6NDk5IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjI3MgorIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6Mjc1IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbTo1MzcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibWlzc2luZyBpbmZvcm1hdGlvbiBmb3Igb3V0cHV0IGZpZWxkICVzIgorbXNnc3RyICJmYWx0YSBpbmZvcm1hY2nDs24gZW4gZWwgY2FtcG8gZGUgc2FsaWRhIMKrJXPCuyIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6NTgKK21zZ2lkICIiCisiXG4iCisiQ29weXJpZ2h0IChDKSAxOTk2IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMCwyMDAyIFdpY2hlcnQgQWtrZXJtYW4uIgorbXNnc3RyICIiCisiXG4iCisiQ29weXJpZ2h0IChDKSAxOTk2IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMCwyMDAyIFdpY2hlcnQgQWtrZXJtYW4uIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDo3MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dXG4iCisiXG4iCisiT3B0aW9uczpcbiIKKyIgIC1wPHBhY2thZ2U+ICAgICAgICAgICAgICBwcmludCBjb250cm9sIGZpbGUgZm9yIHBhY2thZ2UuXG4iCisiICAtYzxjb250cm9sZmlsZT4gICAgICAgICAgZ2V0IGNvbnRyb2wgaW5mbyBmcm9tIHRoaXMgZmlsZS5cbiIKKyIgIC1sPGNoYW5nZWxvZ2ZpbGU+ICAgICAgICBnZXQgcGVyLXZlcnNpb24gaW5mbyBmcm9tIHRoaXMgZmlsZS5cbiIKKyIgIC1GPGNoYW5nZWxvZ2Zvcm1hdD4gICAgICBmb3JjZSBjaGFuZ2UgbG9nIGZvcm1hdC5cbiIKKyIgIC12PGZvcmNldmVyc2lvbj4gICAgICAgICBzZXQgdmVyc2lvbiBvZiBiaW5hcnkgcGFja2FnZS5cbiIKKyIgIC1mPGZpbGVzbGlzdGZpbGU+ICAgICAgICB3cml0ZSBmaWxlcyBoZXJlIGluc3RlYWQgb2YgZGViaWFuL2ZpbGVzLlxuIgorIiAgLVA8cGFja2FnZWJ1aWxkZGlyPiAgICAgIHRlbXBvcmFyeSBidWlsZCBkaXIgaW5zdGVhZCBvZiBkZWJpYW4vdG1wLlxuIgorIiAgLW48ZmlsZW5hbWU+ICAgICAgICAgICAgIGFzc3VtZSB0aGUgcGFja2FnZSBmaWxlbmFtZSB3aWxsIGJlIDxmaWxlbmFtZT4uXG4iCisiICAtTyAgICAgICAgICAgICAgICAgICAgICAgd3JpdGUgdG8gc3Rkb3V0LCBub3QgLi4uL0RFQklBTi9jb250cm9sLlxuIgorIiAgLWlzLCAtaXAsIC1pc3AsIC1pcHMgICAgIGRlcHJlY2F0ZWQsIGlnbm9yZWQgZm9yIGNvbXBhdGliaWxpdHkuXG4iCisiICAtRDxmaWVsZD49PHZhbHVlPiAgICAgICAgb3ZlcnJpZGUgb3IgYWRkIGEgZmllbGQgYW5kIHZhbHVlLlxuIgorIiAgLVU8ZmllbGQ+ICAgICAgICAgICAgICAgIHJlbW92ZSBhIGZpZWxkLlxuIgorIiAgLVY8bmFtZT49PHZhbHVlPiAgICAgICAgIHNldCBhIHN1YnN0aXR1dGlvbiB2YXJpYWJsZS5cbiIKKyIgIC1UPHZhcmxpc3RmaWxlPiAgICAgICAgICByZWFkIHZhcmlhYmxlcyBoZXJlLCBub3QgZGViaWFuL3N1YnN0dmFycy5cbiIKKyIgIC1oLCAtLWhlbHAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgICAgIC0tdmVyc2lvbiAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCittc2dzdHIgIiIKKyJVc286ICVzIFs8b3BjacOzbj4gLi4uXVxuIgorIlxuIgorIk9wY2lvbmVzOlxuIgorIiAgLXA8cGFxdWV0ZT4gICAgICAgICAgICAgIE11ZXN0cmEgZWwgZmljaGVybyBkZSBjb250cm9sIGRlbCBwYXF1ZXRlLlxuIgorIiAgLWM8ZmljaGVyby1jb250cm9sPiAgICAgIE11ZXN0cmEgbGEgaW5mb3JtYWNpw7NuIGRlIGNvbnRyb2wgZGUgZXN0ZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpY2hlcm8uXG4iCisiICAtbDxmaWNoZXJvLWNoYW5nZWxvZz4gICAgT2J0aWVuZSBpbmZvcm1hY2nDs24gZGUgdmVyc2nDs24gZGUgZXN0ZSBmaWNoZXJvLlxuIgorIiAgLUY8Zm9ybWF0by1jaGFuZ2Vsb2c+ICAgIEZ1ZXJ6YSBlbCBmb3JtYXRvIGRlbCByZWdpc3RybyBkZSBjYW1iaW9zLlxuIgorIiAgLXY8Zm9yemFyLXZlcnNpw7NuPiAgICAgICBEZWZpbmUgbGEgdmVyc2nDs24gZGVsIHBhcXVldGUgYmluYXJpby5cbiIKKyIgIC1mPGxpc3RhLWZpY2hlcm9zPiAgICAgICBFc2NyaWJlIGFxdcOtIGxvcyBmaWNoZXJvcyBlbiB2ZXogZGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICDCq2RlYmlhbi9maWxlc8K7LlxuIgorIiAgLVA8ZGlyLWNvbnN0ci1wYXF1ZXRlPiAgIERpcmVjdG9yaW8gdGVtcG9yYWwgZGUgY29uc3RydWNjacOzbiBlbiB2ZXogZGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICDCq2RlYmlhbi90bXDCuy5cbiIKKyIgIC1uPG5vbWJyZS1maWNoZXJvPiAgICAgICBTdXBvbmUgcXVlIGVsIG5vbWJyZSBkZSBmaWNoZXJvIGRlbCBwYXF1ZXRlIGVzXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5vbWJyZS1maWNoZXJvPi5cbiIKKyIgIC1PICAgICAgICAgICAgICAgICAgICAgICBFc2NyaWJlIGVuIGxhIHNhbGlkYSBlc3TDoW5kYXIsIG5vXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgwqsuLi4vREVCSUFOL2NvbnRyb2zCuy5cbiIKKyIgIC1pcywgLWlwLCAtaXNwLCAtaXBzICAgICBPYnNvbGV0bywgaWdub3JhZG8gcG9yIGNvbXBhdGliaWxpZGFkLlxuIgorIiAgLUQ8Y2FtcG8+PTx2YWxvcj4gICAgICAgIFN1c3RpdHV5ZSBvIGHDsWFkZSB1biBjYW1wbyB5IHVuIHZhbG9yLlxuIgorIiAgLVU8Y2FtcG8+ICAgICAgICAgICAgICAgIEVsaW1pbmEgdW4gY2FtcG8uXG4iCisiICAtVjxub21icmU+PTx2YWxvcj4gICAgICAgRGVmaW5lIHVuYSBzdXN0aXR1Y2nDs24gZGUgdmFyaWFibGUuXG4iCisiICAtVDxsaXN0YS12YXJpYWJsZXM+ICAgICAgTGVlIGxhcyB2YXJpYWJsZXMgZGUgZXN0ZSBmaWNoZXJvLCBub1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIMKrZGViaWFuL3N1YnN0dmFyc8K7LlxuIgorIiAgLWgsIC0taGVscCAgICAgICAgICAgICAgIE11ZXN0cmEgZXN0ZSBtZW5zYWplIGRlIGF5dWRhLlxuIgorIiAgICAgIC0tdmVyc2lvbiAgICAgICAgICAgIE11ZXN0cmEgbGEgdmVyc2nDs24uXG4iCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjk3IHNjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsOjExOAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJJbGxlZ2FsIHBhY2thZ2UgbmFtZSBgJXMnIgorbXNnc3RyICJFbCBub21icmUgZGUgcGFxdWV0ZSDCqyVzwrsgZXMgaWxlZ2FsIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDoxNTIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlcyBub3QgaW4gY29udHJvbCBpbmZvIgorbXNnc3RyICJlbCBwYXF1ZXRlICVzIG5vIGVzdMOhIGVuIGxhIGluZm9ybWFjacOzbiBkZSBjb250cm9sIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDoxNTYgc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGw6MTU5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIm11c3Qgc3BlY2lmeSBwYWNrYWdlIHNpbmNlIGNvbnRyb2wgaW5mbyBoYXMgbWFueSAoJXMpIgorbXNnc3RyICIiCisiZGViZSBkZWZpbmlyIHVuIHBhcXVldGUgeWEgcXVlIGxhIGluZm9ybWFjacOzbiBkZSBjb250cm9sIHRpZW5lIHZhcmlvcyAoJXMpIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDoxNjAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlczogIgorbXNnc3RyICJwYXF1ZXRlICVzOiIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MTg1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImAlcycgaXMgbm90IGEgbGVnYWwgYXJjaGl0ZWN0dXJlIHN0cmluZy4iCittc2dpZF9wbHVyYWwgImAlcycgYXJlIG5vdCBsZWdhbCBhcmNoaXRlY3R1cmUgc3RyaW5ncy4iCittc2dzdHJbMF0gIsKrJXPCuyBubyBlcyB1bmEgY2FkZW5hIGRlIGFycXVpdGVjdHVyYSBsZWdhbC4iCittc2dzdHJbMV0gIsKrJXPCuyBubyBzb24gY2FkZW5hcyBkZSBhcnF1aXRlY3R1cmEgbGVnYWxlcy4iCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjE5MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiY3VycmVudCBob3N0IGFyY2hpdGVjdHVyZSAnJXMnIGRvZXMgbm90IGFwcGVhciBpbiBwYWNrYWdlJ3MgYXJjaGl0ZWN0dXJlICIKKyJsaXN0ICglcykiCittc2dzdHIgIiIKKyJsYSBhcnF1aXRlY3R1cmEgZGVsIHNpc3RlbWEgYWN0dWFsIMKrJXPCuyBubyBlc3TDoSBwcmVzZW50ZSBlbiBsYSBsaXN0YSBkZSAiCisiYXJxdWl0ZWN0dXJhcyBkZSBwYXF1ZXRlICglcykiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjI0NgorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBmaWVsZCBvZiBwYWNrYWdlICVzOiAiCittc2dzdHIgImNhbXBvIMKrJXPCuyBkZWwgcGFxdWV0ZSAlczoiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjI1MCBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDoyNTgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZXJyb3Igb2NjdXJyZWQgd2hpbGUgcGFyc2luZyAlcyBmaWVsZDogJXMiCittc2dzdHIgInNlIGhhIGRldGVjdGFkbyB1biBlcnJvciBhbCBhbmFsaXphciBlbCBjYW1wbyDCqyVzwrs6ICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDoyNjMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorInRoZSAlcyBmaWVsZCBjb250YWlucyBhbiBhcmNoLXNwZWNpZmljIGRlcGVuZGVuY3kgYnV0IHRoZSBwYWNrYWdlIGlzICIKKyJhcmNoaXRlY3R1cmUgYWxsIgorbXNnc3RyICIiCisiZWwgY2FtcG8gwqslc8K7IGNvbnRpZW5lIHVuYSBkZXBlbmRlbmNpYSBlc3BlY8OtZmljYSBhIGxhIGFycXVpdGVjdHVyYSwgcGVybyBlbCAiCisicGFxdWV0ZSB0aWVuZSBsYSBhcnF1aXRlY3R1cmEgwqthbGzCuyIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6Mjg3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIHBhY2thZ2Ugd2l0aCB1ZGViIHNwZWNpZmljIGZpZWxkICVzIgorbXNnc3RyICJwYXF1ZXRlICVzIGNvbiBjYW1wbyBlc3BlY8OtZmljbyBkZSB1ZGViIMKrJXPCuyIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MzAwIHNjcmlwdHMvZHBrZy1zY2Fuc291cmNlcy5wbDozMTMKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6ODM2IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvUGFyc2UucG06MTM4CisjOiBzY3JpcHRzL0Rwa2cvSVBDLnBtOjIyOSBzY3JpcHRzL0Rwa2cvU2hsaWJzL09iamR1bXAucG06MTgxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCBmb3JrIGZvciAlcyIKK21zZ3N0ciAibm8gc2UgcHVlZGUgY3JlYXIgdW4gcHJvY2VzbyBoaWpvIHBhcmEgJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjMwMworIywgcGVybC1mb3JtYXQKK21zZ2lkICJjaGRpciBmb3IgZHUgdG8gYCVzJyIKK21zZ3N0ciAiY2hkaXIgcGFyYSBkdSBhIMKrJXPCuyIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MzA1IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6ODQzCisjOiBzY3JpcHRzL0Rwa2cvSVBDLnBtOjI3MSBzY3JpcHRzL0Rwa2cvU2hsaWJzL0NwcGZpbHQucG06NTAKKyMsIGZ1enp5LCBwZXJsLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byBleGVjdXRlIGMrK2ZpbHQiCittc2dpZCAidW5hYmxlIHRvIGV4ZWN1dGUgJXMiCittc2dzdHIgIm5vIHNlIHB1ZG8gZWplY3V0YXIgwqtjKytmaWx0wrsiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjMxMgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJkdSBpbiBgJXMnIgorbXNnc3RyICJkdSBlbiDCqyVzwrsiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjMxNAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJkdSBnYXZlIHVuZXhwZWN0ZWQgb3V0cHV0IGAlcyciCittc2dzdHIgImR1IGRldm9sdmnDsyB1bmEgc2FsaWRhIG5vIGVzcGVyYWRhIMKrJXPCuyIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MzQ3Cittc2dpZCAiY2xvc2Ugb2xkIGZpbGVzIGxpc3QgZmlsZSIKK21zZ3N0ciAiY2VycmFyIGVsIGFudGlndW8gZmljaGVybyBkZSBsYSBsaXN0YSBkZSBmaWNoZXJvcyIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MzY5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCBvcGVuIG5ldyBvdXRwdXQgY29udHJvbCBmaWxlIGAlcyciCittc2dzdHIgIm5vIHNlIGhhIHBvZGlkbyBhYnJpciBlbCBmaWNoZXJvIGRlIGNvbnRyb2wgZGUgc2FsaWRhIG51ZXZvIMKrJXPCuyIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6Mzc4IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6NTIzCisjOiBzY3JpcHRzL0Rwa2cvSW50ZXJmYWNlL1N0b3JhYmxlLnBtOjkxCisjOiBzY3JpcHRzL0Rwa2cvSW50ZXJmYWNlL1N0b3JhYmxlLnBtOjExOSBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjI5MAorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjYwNworIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3QgY2xvc2UgJXMiCittc2dzdHIgIm5vIHNlIHB1ZWRlIGNlcnJhciDCqyVzwrsiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjM4MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3QgaW5zdGFsbCBvdXRwdXQgY29udHJvbCBmaWxlIGAlcyciCittc2dzdHIgIm5vIHNlIGhhIHBvZGlkbyBpbnN0YWxhciBlbCBmaWNoZXJvIGRlIGNvbnRyb2wgZGUgc2FsaWRhIMKrJXPCuyIKKworIzogc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGw6NTEKK21zZ2lkICIiCisiXG4iCisiQ29weXJpZ2h0IChDKSAyMDA3IFJhcGhhZWwgSGVydHpvZy5cbiIKK21zZ3N0ciAiIgorIlxuIgorIkNvcHlyaWdodCAoQykgMjAwNyBSYXBoYWVsIEhlcnR6b2cuXG4iCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsOjYzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl1cbiIKKyJcbiIKKyJPcHRpb25zOlxuIgorIiAgLXA8cGFja2FnZT4gICAgICAgICAgICAgIGdlbmVyYXRlIHN5bWJvbHMgZmlsZSBmb3IgcGFja2FnZS5cbiIKKyIgIC1QPHBhY2thZ2VidWlsZGRpcj4gICAgICB0ZW1wb3JhcnkgYnVpbGQgZGlyIGluc3RlYWQgb2YgZGViaWFuL3RtcC5cbiIKKyIgIC1lPGxpYnJhcnk+ICAgICAgICAgICAgICBleHBsaWNpdGx5IGxpc3QgbGlicmFyaWVzIHRvIHNjYW4uXG4iCisiICAtdjx2ZXJzaW9uPiAgICAgICAgICAgICAgdmVyc2lvbiBvZiB0aGUgcGFja2FnZXMgKGRlZmF1bHRzIHRvXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgdmVyc2lvbiBleHRyYWN0ZWQgZnJvbSBkZWJpYW4vY2hhbmdlbG9nKS5cbiIKKyIgIC1jPGxldmVsPiAgICAgICAgICAgICAgICBjb21wYXJlIGdlbmVyYXRlZCBzeW1ib2xzIGZpbGUgd2l0aCB0aGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICByZWZlcmVuY2UgdGVtcGxhdGUgaW4gdGhlIGRlYmlhbiBkaXJlY3RvcnlcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBhbmQgZmFpbCBpZiBkaWZmZXJlbmNlIGlzIHRvbyBpbXBvcnRhbnRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAobGV2ZWwgZ29lcyBmcm9tIDAgZm9yIG5vIGNoZWNrLCB0byA0XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yIGFsbCBjaGVja3MpLiBCeSBkZWZhdWx0IGNoZWNrcyBhdFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldmVsIDEuXG4iCisiICAtcSAgICAgICAgICAgICAgICAgICAgICAga2VlcCBxdWlldCBhbmQgbmV2ZXIgZW1pdCBhbnkgd2FybmluZ3Mgb3JcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBnZW5lcmF0ZSBhIGRpZmYgYmV0d2VlbiBnZW5lcmF0ZWQgc3ltYm9sc1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGUgYW5kIHRoZSByZWZlcmVuY2UgdGVtcGxhdGUuXG4iCisiICAtSTxmaWxlPiAgICAgICAgICAgICAgICAgZm9yY2UgdXNhZ2Ugb2YgPGZpbGU+IGFzIHJlZmVyZW5jZSBzeW1ib2xzXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsZSBpbnN0ZWFkIG9mIHRoZSBkZWZhdWx0IGZpbGUuXG4iCisiICAtTzxmaWxlPiAgICAgICAgICAgICAgICAgd3JpdGUgdG8gPGZpbGU+LCBub3QgLi4uL0RFQklBTi9zeW1ib2xzLlxuIgorIiAgLU8gICAgICAgICAgICAgICAgICAgICAgIHdyaXRlIHRvIHN0ZG91dCwgbm90IC4uLi9ERUJJQU4vc3ltYm9scy5cbiIKKyIgIC10ICAgICAgICAgICAgICAgICAgICAgICB3cml0ZSBpbiB0ZW1wbGF0ZSBtb2RlICh0YWdzIGFyZSBub3RcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBwcm9jZXNzZWQgYW5kIGluY2x1ZGVkIGluIG91dHB1dCkuXG4iCisiICAtViAgICAgICAgICAgICAgICAgICAgICAgdmVyYm9zZSBvdXRwdXQuIFdyaXRlIGRlcHJlY2F0ZWQgc3ltYm9scyBhbmRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXR0ZXJuIG1hdGNoaW5nIHN5bWJvbHMgYXMgY29tbWVudHNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAoaW4gdGVtcGxhdGUgbW9kZSBvbmx5KS5cbiIKKyIgIC1hPGFyY2g+ICAgICAgICAgICAgICAgICBhc3N1bWUgPGFyY2g+IGFzIGhvc3QgYXJjaGl0ZWN0dXJlIHdoZW4gIgorInByb2Nlc3NpbmdcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBzeW1ib2wgZmlsZXMuXG4iCisiICAtZCAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheSBkZWJ1ZyBpbmZvcm1hdGlvbiBkdXJpbmcgd29yay5cbiIKKyIgIC1oLCAtLWhlbHAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgICAgIC0tdmVyc2lvbiAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCittc2dzdHIgIiIKKyJVc286ICVzIFs8b3BjacOzbj4gLi4uXVxuIgorIlxuIgorIk9wY2lvbmVzOlxuIgorIiAgLXA8cGFxdWV0ZT4gICAgICAgICAgICAgIEdlbmVyYSBlbCBmaWNoZXJvIMKrc3ltYm9sc8K7IHBhcmEgZWwgcGFxdWV0ZS5cbiIKKyIgIC1QPGRpcmVjdG9yaW8tY29uc3RydWNjacOzbi1wYXF1ZXRlPlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIERpcmVjdG9yaW8gdGVtcG9yYWwgZGUgY29uc3RydWNjacOzbiBlbiB2ZXogZGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICDCq2RlYmlhbi90bXDCuy5cbiIKKyIgIC1lPGJpYmxpb3RlY2E+ICAgICAgICAgICBMaXN0YSBleHBsw61jaXRhbWVudGUgbGFzIGJpYmxpb3RlY2FzIGEgYW5hbGl6YXIuXG4iCisiICAtdjx2ZXJzacOzbj4gICAgICAgICAgICAgIFZlcnNpw7NuIGRlbCBwYXF1ZXRlIChkZSBmb3JtYSBwcmVkZWZpbmlkYSwgbGFcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICB2ZXJzacOzbiBleHRyYcOtZGEgZGUgwqtkZWJpYW4vY2hhbmdlbG9nwrspLlxuIgorIiAgLWM8bml2ZWw+ICAgICAgICAgICAgICAgIENvbXBhcmEgZWwgZmljaGVybyDCq3N5bWJvbHPCuyBnZW5lcmFkbyBjb24gbGFcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBwbGFudGlsbGEgZGUgcmVmZXJlbmNpYSBlbiBlbCBkaXJlY3RvcmlvXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgwqtkZWJpYW4vwrssIHkgZmFsbGEgc2kgbGEgZGlmZXJlbmNpYSBlcyAiCisiaW1wb3J0YW50ZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIChsb3MgdmFsb3JlcyB2YW4gZGUgY2Vybywgbm8gcmVhbGl6YSBuaW5ndW5hXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgY29tcHJvYmFjacOzbiwgYSA0LCBxdWUgcmVhbGl6YSB0b2RhcyBsYXNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBjb21wcm9iYWNpb25lcykuIFNlIGVqZWN1dGEgZW4gZWwgbml2ZWwgMSBwb3JcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBvbWlzacOzbi5cbiIKKyIgIC1xICAgICAgICAgICAgICAgICAgICAgICBNb2RvIHNpbGVuY2lvc28sIG5vIGVtaXRlIGF2aXNvcyBuaSBnZW5lcmEgdW5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBkaWZmIGVudHJlIGVsIGZpY2hlcm8gwqtzeW1ib2xzwrsgZ2VuZXJhZG8geSBsYVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHBsYW50aWxsYSBkZSByZWZlcmVuY2lhLlxuIgorIiAgLUk8ZmljaGVybz4gICAgICAgICAgICAgIEZ1ZXJ6YSBlbCB1c28gZGUgPGZpY2hlcm8+IGNvbW8gZWwgZmljaGVyb1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIMKrc3ltYm9sc8K7IGRlIHJlZmVyZW5jaWEgZW4gdmV6IGRlbCBwcmVkZWZpbmlkby5cbiIKKyIgIC1PPGZpY2hlcm8+ICAgICAgICAgICAgICBFc2NyaWJlIGVuIGVsIDxmaWNoZXJvPiwgbm8gwqsuLi4vREVCSUFOLyIKKyJzeW1ib2xzwrsuXG4iCisiICAtTyAgICAgICAgICAgICAgICAgICAgICAgRXNjcmliZSBlbiBsYSBzYWxpZGEgZXN0w6FuZGFyLCBub1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIMKrLi4uL0RFQklBTi9zeW1ib2xzwrsuXG4iCisiICAtdCAgICAgICAgICAgICAgICAgICAgICAgRXNjcmliZSBlbiBtb2RvIHBsYW50aWxsYSAobm8gc2UgcHJvY2VzYW4gbGFzXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgZXRpcXVldGFzIG5pIHNlIGluY2x1eWVuIGVuIGxhIHNhbGlkYSkuXG4iCisiICAtViAgICAgICAgICAgICAgICAgICAgICAgTW9kbyBpbmZvcm1hdGl2by4gRXNjcmliZSBzw61tYm9sb3Mgb2Jzb2xldG9zLCB5XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9zIHF1ZSBlbmNhamFuIGNvbiBlbCBwYXRyw7NuLCBjb21vIGNvbWVudGFyaW9zXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgKHNvbG8gZW4gbW9kbyBwbGFudGlsbGEpLlxuIgorIiAgLWE8YXJxdWl0ZWN0dXJhPiAgICAgICAgIFN1cG9uZSBxdWUgbGEgPGFycXVpdGVjdHVyYT4gZXMgbGEgbWlzbWEgZGVsXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgc2lzdGVtYSBhbCBwcm9jZXNhciBmaWNoZXJvcyBkZSBzw61tYm9sb3MuXG4iCisiICAtZCAgICAgICAgICAgICAgICAgICAgICAgTXVlc3RyYSBtZW5zYWplcyBkZSBkZXB1cmFjacOzbiBkdXJhbnRlIGxhIHRhcmVhLlxuIgorIiAgLWgsIC0taGVscCAgICAgICAgICAgICAgIE11ZXN0cmEgZXN0ZSBtZW5zYWplIGRlIGF5dWRhLlxuIgorIiAgICAgIC0tdmVyc2lvbiAgICAgICAgICAgIE11ZXN0cmEgbGEgdmVyc2nDs24uXG4iCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsOjE5NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJDYW4ndCByZWFkIGRpcmVjdG9yeSAlczogJXMiCittc2dzdHIgIk5vIHNlIHB1ZWRlIGxlZXIgZWwgZGlyZWN0b3JpbyDCqyVzwrs6ICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbDoyMDkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiT2JqZHVtcCBjb3VsZG4ndCBwYXJzZSAlc1xuIgorbXNnc3RyICJPYmpkdW1wIG5vIHB1ZG8gYW5hbGl6YXIgwqslc8K7XG4iCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsOjIyNworbXNnaWQgIjxzdGFuZGFyZCBvdXRwdXQ+IgorbXNnc3RyICI8c2FsaWRhIGVzdMOhbmRhcj4iCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsOjI1NQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJuZXcgbGlicmFyaWVzIGFwcGVhcmVkIGluIHRoZSBzeW1ib2xzIGZpbGU6ICVzIgorbXNnc3RyICJzZSBoYW4gZGV0ZWN0YWRvIG51ZXZhcyBiaWJsaW90ZWNhcyBlbiBlbCBmaWNoZXJvIMKrc3ltYm9sc8K7OiDCqyVzwrsiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsOjI2MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJzb21lIGxpYnJhcmllcyBkaXNhcHBlYXJlZCBpbiB0aGUgc3ltYm9scyBmaWxlOiAlcyIKK21zZ3N0ciAiaGFuIGRlc2FwYXJlY2lkbyBhbGd1bmFzIGJpYmxpb3RlY2FzIGVuIGVsIGZpY2hlcm8gwqtzeW1ib2xzwrs6IMKrJXPCuyIKKworIzogc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGw6MjY1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInNvbWUgbmV3IHN5bWJvbHMgYXBwZWFyZWQgaW4gdGhlIHN5bWJvbHMgZmlsZTogJXMiCittc2dzdHIgImhhbiBhcGFyZWNpZG8gYWxndW5vcyBzw61tYm9sb3MgbnVldm9zIGVuIGVsIGZpY2hlcm8gwqtzeW1ib2xzwrs6IMKrJXPCuyIKKworIzogc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGw6MjY2IHNjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsOjI3MQorbXNnaWQgInNlZSBkaWZmIG91dHB1dCBiZWxvdyIKK21zZ3N0ciAidmVhIGxhIHNhbGlkYSBkZWwgwqtkaWZmwrsgYSBjb250aW51YWNpw7NuIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbDoyNzAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAic29tZSBzeW1ib2xzIG9yIHBhdHRlcm5zIGRpc2FwcGVhcmVkIGluIHRoZSBzeW1ib2xzIGZpbGU6ICVzIgorbXNnc3RyICIiCisiaGFuIGRlc2FwYXJlY2lkbyBhbGd1bm9zIHPDrW1ib2xvcyBvIHBhdHJvbmVzIGVuIGVsIGZpY2hlcm8gwqtzeW1ib2xzwrs6IMKrJXPCuyIKKworIzogc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGw6MjkxCittc2dpZCAidGhlIGdlbmVyYXRlZCBzeW1ib2xzIGZpbGUgaXMgZW1wdHkiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGw6MjkzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGRvZXNuJ3QgbWF0Y2ggY29tcGxldGVseSAlcyIKK21zZ3N0ciAiwqslc8K7IG5vIGVuY2FqYSB0b3RhbG1lbnRlIGNvbiDCqyVzwrsiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsOjI5NgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJubyBkZWJpYW4vc3ltYm9scyBmaWxlIHVzZWQgYXMgYmFzaXMgZm9yIGdlbmVyYXRpbmcgJXMiCittc2dzdHIgIiIKKyJubyBzZSBoYSB1c2FkbyBuaW5nw7puIGZpY2hlcm8gwqtkZWJpYW4vc3ltYm9sc8K7IGNvbW8gYmFzZSBwYXJhIGdlbmVyYXIgwqslc8K7IgorCisjOiBzY3JpcHRzL2Rwa2ctbWVyZ2VjaGFuZ2Vsb2dzLnBsOjU1Cittc2dpZCAiQ29weXJpZ2h0IChDKSAyMDA5LTIwMTAgUmFwaGFlbCBIZXJ0em9nLiIKK21zZ3N0ciAiQ29weXJpZ2h0IChDKSAyMDA5LTIwMTAgUmFwaGFlbCBIZXJ0em9nLiIKKworIzogc2NyaXB0cy9kcGtnLW1lcmdlY2hhbmdlbG9ncy5wbDo1OAorbXNnaWQgIiIKKyJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAyIG9yXG4iCisibGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuXG4iCittc2dzdHIgIiIKKyJFc3RvIGVzIHNvZnR3YXJlIGxpYnJlOyB2ZWEgbGEgdmVyc2nDs24gMiBvIHBvc3RlcmlvciBkZSBsYSBMaWNlbmNpYSBQw7pibGljYVxuIgorIkdlbmVyYWwgR05VIHBhcmEgY29uZGljaW9uZXMgZGUgY29waWEuIE5PIGhheSBuaW5ndW5hIGdhcmFudMOtYS5cbiIKKworIzogc2NyaXB0cy9kcGtnLW1lcmdlY2hhbmdlbG9ncy5wbDo2NQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIDxvbGQ+IDxuZXctYT4gPG5ldy1iPiBbPG91dD5dXG4iCisiXG4iCisiT3B0aW9uczpcbiIKKyIgIC0tbWVyZ2UtcHJlcmVsZWFzZXMsIC1tICBtZXJnZSBwcmUtcmVsZWFzZXMgdG9nZXRoZXIsIGlnbm9yZXMgZXZlcnl0aGluZ1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGFmdGVyIHRoZSBsYXN0ICd+JyBpbiB0aGUgdmVyc2lvbi5cbiIKKyIgIC0taGVscCwgLWgsIC0/ICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCittc2dzdHIgIiIKKyJVc286ICVzIFs8b3BjacOzbj4gLi4uXSA8YW50aWd1bz4gPG51ZXZvLWE+IDxudWV2by1iPiBbPHNhbGlkYT5dXG4iCisiXG4iCisiT3B0aW9uczpcbiIKKyIgIC0tbWVyZ2UtcHJlcmVsZWFzZXMsIC1tICBGdXNpb25hIHByZS1wdWJsaWNhY2lvbmVzIGUgaWdub3JhIHRvZG9cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXNwdcOpcyBkZWwgw7psdGltbyDCq37CuyBlbiBsYSB2ZXJzacOzbi5cbiIKKyIgIC0taGVscCwgLWjCvywgLT8gICAgICAgICAgTXVlc3RyYSBlc3RlIG1lbnNhamUgZGUgYXl1ZGEuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgTXVlc3RyYSBsYSB2ZXJzacOzbi5cbiIKKworIzogc2NyaXB0cy9kcGtnLW1lcmdlY2hhbmdlbG9ncy5wbDoxMjkgc2NyaXB0cy9kcGtnLW1lcmdlY2hhbmdlbG9ncy5wbDoxMzEKKyM6IHNjcmlwdHMvRHBrZy9Db21wcmVzc2lvbi9GaWxlSGFuZGxlLnBtOjM4NQorIzogc2NyaXB0cy9EcGtnL0ludGVyZmFjZS9TdG9yYWJsZS5wbToxMTUgc2NyaXB0cy9EcGtnL0lQQy5wbToyNTUKKyM6IHNjcmlwdHMvRHBrZy9JUEMucG06MjYzIHNjcmlwdHMvRHBrZy9Tb3VyY2UvRnVuY3Rpb25zLnBtOjc4CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG06NDQ3IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbTo1NTAKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbToyMTcgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjUzMAorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjYwNQorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjE0MgorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjE1MQorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjE1NworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjIyNgorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjIzNAorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjM0MQorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjM1MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgd3JpdGUgJXMiCittc2dzdHIgIm5vIHNlIHB1ZG8gZXNjcmliaXIgwqslc8K7IgorCisjOiBzY3JpcHRzL2Rwa2ctbmFtZS5wbDo1MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJVc2FnZTogJXMgWzxvcHRpb24+Li4uXSA8ZmlsZT4uLi5cbiIKK21zZ3N0ciAiVXNvOiAlcyBbPG9wY2nDs24+Li4uXSA8ZmljaGVybz4uLi5cbiIKKworIzogc2NyaXB0cy9kcGtnLW5hbWUucGw6NTMKK21zZ2lkICIiCisiXG4iCisiT3B0aW9uczpcbiIKKyIgIC1hLCAtLW5vLWFyY2hpdGVjdHVyZSAgICBubyBhcmNoaXRlY3R1cmUgcGFydCBpbiBmaWxlbmFtZS5cbiIKKyIgIC1vLCAtLW92ZXJ3cml0ZSAgICAgICAgICBvdmVyd3JpdGUgaWYgZmlsZSBleGlzdHMuXG4iCisiICAtaywgLS1zeW1saW5rICAgICAgICAgICAgZG9uJ3QgY3JlYXRlIGEgbmV3IGZpbGUsIGJ1dCBhIHN5bWxpbmsuXG4iCisiICAtcywgLS1zdWJkaXIgW2Rpcl0gICAgICAgbW92ZSBmaWxlIGludG8gc3ViZGlyICh1c2Ugd2l0aCBjYXJlKS5cbiIKKyIgIC1jLCAtLWNyZWF0ZS1kaXIgICAgICAgICBjcmVhdGUgdGFyZ2V0IGRpciBpZiBub3QgdGhlcmUgKHVzZSB3aXRoIGNhcmUpLlxuIgorIiAgLWgsIC0taGVscCAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtdiwgLS12ZXJzaW9uICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKKyJmaWxlLmRlYiBjaGFuZ2VzIHRvIDxwYWNrYWdlPl88dmVyc2lvbj5fPGFyY2hpdGVjdHVyZT4uPHBhY2thZ2VfdHlwZT5cbiIKKyJhY2NvcmRpbmcgdG8gdGhlICd1bmRlcnNjb3JlcyBjb252ZW50aW9uJy5cbiIKK21zZ3N0ciAiIgorIlxuIgorIk9wY2lvbmVzOlxuIgorIiAgLWEsIC0tbm8tYXJjaGl0ZWN0dXJlICAgIFNpbiBpbmZvcm1hY2nDs24gZGUgYXJxdWl0ZWN0dXJhIGVuIGVsIG5vbWJyZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlbCBmaWNoZXJvLlxuIgorIiAgLW8sIC0tb3ZlcndyaXRlICAgICAgICAgIFNvYnJlZXNjcmliZSBlbCBmaWNoZXJvLCBkZSBleGlzdGlyLlxuIgorIiAgLWssIC0tc3ltbGluayAgICAgICAgICAgIENyZWEgdW4gZW5sYWNlIHNpbWLDs2xpY28gZW4gbHVnYXIgZGUgdW4gZmljaGVyby5cbiIKKyIgIC1zLCAtLXN1YmRpciBbZGlyXSAgICAgICBNdWV2ZSBlbCBmaWNoZXJvIGFsIHN1YmRpcmVjdG9yaW8gKHVzYXIgY29uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJlY2F1Y2nDs24pLlxuIgorIiAgLWMsIC0tY3JlYXRlLWRpciAgICAgICAgIENyZWEgZWwgZGlyZWN0b3JpbyBkZXN0aW5vIHNpIG5vIGV4aXN0ZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICh1c2FyIGNvbiBwcmVjYXVjacOzbikuXG4iCisiICAtaCwgLS1oZWxwICAgICAgICAgICAgICAgTXVlc3RyYSBlc3RlIG1lbnNhamUgZGUgYXl1ZGEuXG4iCisiICAtdiwgLS12ZXJzaW9uICAgICAgICAgICAgTXVlc3RyYSBsYSB2ZXJzacOzbi5cbiIKKyJcbiIKKyJFbCBmaWNoZXJvIMKrZmlsZS5kZWLCuyBwYXNhIGEgc2VyXG4iCisiPHBhcXVldGU+Xzx2ZXJzacOzbj5fPGFycXVpdGVjdHVyYT4uPHRpcG8tcGFxdWV0ZT5cbiIKKyJkZSBhY3VlcmRvIGEgbGEgY29udmVuY2nDs24gcGFyYSBlbCB1c28gZGUgZ3Vpb25lcyBiYWpvcy5cbiIKKworIzogc2NyaXB0cy9kcGtnLW5hbWUucGw6NzUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IGZpbmQgJyVzJyIKK21zZ3N0ciAibm8gc2UgcHVlZGUgZW5jb250cmFyIMKrJXPCuyIKKworIzogc2NyaXB0cy9kcGtnLW5hbWUucGw6OTYgc2NyaXB0cy9EcGtnL0FyY2gucG06MTM4IHNjcmlwdHMvRHBrZy9BcmNoLnBtOjE1NworIzogc2NyaXB0cy9EcGtnL0FyY2gucG06MTc2IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvUGFyc2UucG06MTQyCisjOiBzY3JpcHRzL0Rwa2cvSVBDLnBtOjI0NyBzY3JpcHRzL0Rwa2cvU2hsaWJzLnBtOjc4CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG06MTkzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCBvcGVuICVzIgorbXNnc3RyICJubyBzZSBwdWVkZSBhYnJpciDCqyVzwrsiCisKKyM6IHNjcmlwdHMvZHBrZy1uYW1lLnBsOjk4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImJpbmFyeSBjb250cm9sIGZpbGUgJXMiCittc2dzdHIgImZpY2hlcm8gYmluYXJpbyBkZSBjb250cm9sIMKrJXPCuyIKKworIzogc2NyaXB0cy9kcGtnLW5hbWUucGw6MTExCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImFzc3VtaW5nIGFyY2hpdGVjdHVyZSAnJXMnIGZvciAnJXMnIgorbXNnc3RyICJzdXBvbmllbmRvIGxhIGFycXVpdGVjdHVyYSDCqyVzwrsgcGFyYSDCqyVzwrsiCisKKyM6IHNjcmlwdHMvZHBrZy1uYW1lLnBsOjEzMworIywgcGVybC1mb3JtYXQKK21zZ2lkICJiYWQgcGFja2FnZSBjb250cm9sIGluZm9ybWF0aW9uIGZvciAnJXMnIgorbXNnc3RyICJsYSBpbmZvcm1hY2nDs24gZGUgY29udHJvbCBkZWwgcGFxdWV0ZSDCqyVzwrsgZXMgaW52w6FsaWRhIgorCisjOiBzY3JpcHRzL2Rwa2ctbmFtZS5wbDoxNDkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiYXNzdW1pbmcgc2VjdGlvbiAnJXMnIGZvciAnJXMnIgorbXNnc3RyICJzdXBvbmllbmRvIGxhIHNlY2Npw7NuIMKrJXPCuyBwYXJhIMKrJXPCuyIKKworIzogc2NyaXB0cy9kcGtnLW5hbWUucGw6MTc0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIm5vIFBhY2thZ2UgZmllbGQgZm91bmQgaW4gJyVzJywgc2tpcHBpbmcgaXQiCittc2dzdHIgIm5vIHNlIGhhIGVuY29udHJhZG8gbmluZ8O6biBjYW1wbyDCq1BhY2thZ2XCuyBlbiDCqyVzwrssIG9taXRpZW5kbyIKKworIzogc2NyaXB0cy9kcGtnLW5hbWUucGw6MTg3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNyZWF0ZWQgZGlyZWN0b3J5ICclcyciCittc2dzdHIgInNlIGhhIGNyZWFkbyBlbCBkaXJlY3RvcmlvIMKrJXPCuyIKKworIzogc2NyaXB0cy9kcGtnLW5hbWUucGw6MTg5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCBjcmVhdGUgZGlyZWN0b3J5ICclcyciCittc2dzdHIgIm5vIHNlIHB1ZWRlIGNyZWFyIGVsIGRpcmVjdG9yaW8gwqslc8K7IgorCisjOiBzY3JpcHRzL2Rwa2ctbmFtZS5wbDoxOTIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibm8gc3VjaCBkaXJlY3RvcnkgJyVzJywgdHJ5IC0tY3JlYXRlLWRpciAoLWMpIG9wdGlvbiIKK21zZ3N0ciAiZWwgZGlyZWN0b3JpbyDCqyVzwrsgbm8gZXhpc3RlLCBwcnVlYmUgbGEgb3BjacOzbiDCqy0tY3JlYXRlLWRpcsK7ICgtYykiCisKKyM6IHNjcmlwdHMvZHBrZy1uYW1lLnBsOjIwNworIywgcGVybC1mb3JtYXQKK21zZ2lkICJza2lwcGluZyAnJXMnIgorbXNnc3RyICJvbWl0aWVuZG8gwqslc8K7IgorCisjOiBzY3JpcHRzL2Rwa2ctbmFtZS5wbDoyMDkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IG1vdmUgJyVzJyB0byBleGlzdGluZyBmaWxlIgorbXNnc3RyICJubyBzZSBwdWVkZSBtb3ZlciDCqyVzwrsgYSB1biBmaWNoZXJvIGV4aXN0ZW50ZSIKKworIzogc2NyaXB0cy9kcGtnLW5hbWUucGw6MjExCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIm1vdmVkICclcycgdG8gJyVzJyIKK21zZ3N0ciAic2UgaGEgbW92aWRvIMKrJXPCuyBhIMKrJXPCuyIKKworIzogc2NyaXB0cy9kcGtnLW5hbWUucGw6MjEzCittc2dpZCAibWtkaXIgY2FuIGJlIHVzZWQgdG8gY3JlYXRlIGRpcmVjdG9yeSIKK21zZ3N0ciAic2UgcHVlZGUgdXNhciBta2RpciBwYXJhIGNyZWFyIHVuIGRpcmVjdG9yaW8iCisKKyM6IHNjcmlwdHMvZHBrZy1uYW1lLnBsOjIxOAorbXNnaWQgIm5lZWQgYXQgbGVhc3QgYSBmaWxlbmFtZSIKK21zZ3N0ciAic2UgcmVxdWllcmUgYWwgbWVub3MgdW4gbm9tYnJlIGRlIGZpY2hlcm8iCisKKyM6IHNjcmlwdHMvZHBrZy1wYXJzZWNoYW5nZWxvZy5wbDozMworbXNnaWQgIiIKKyJcbiIKKyJDb3B5cmlnaHQgKEMpIDE5OTYgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAxIFdpY2hlcnQgQWtrZXJtYW4iCittc2dzdHIgIiIKKyJcbiIKKyJDb3B5cmlnaHQgKEMpIDE5OTYgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAxIFdpY2hlcnQgQWtrZXJtYW4iCisKKyM6IHNjcmlwdHMvZHBrZy1wYXJzZWNoYW5nZWxvZy5wbDo0NQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dXG4iCisiXG4iCisiT3B0aW9uczpcbiIKKyIgIC1sPGNoYW5nZWxvZ2ZpbGU+ICAgICAgICBnZXQgcGVyLXZlcnNpb24gaW5mbyBmcm9tIHRoaXMgZmlsZS5cbiIKKyIgIC1GPGNoYW5nZWxvZ2Zvcm1hdD4gICAgICBmb3JjZSBjaGFuZ2UgbG9nIGZvcm1hdC5cbiIKKyIgIC1MPGxpYmRpcj4gICAgICAgICAgICAgICBsb29rIGZvciBjaGFuZ2UgbG9nIHBhcnNlcnMgaW4gPGxpYmRpcj4uXG4iCisiICAtaCwgLS1oZWxwICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgICAgICAtLXZlcnNpb24gICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorInBhcnNlciBvcHRpb25zOlxuIgorIiAgICAtLWZvcm1hdCA8b3V0cHV0Zm9ybWF0PiAgICAgc2VlIG1hbiBwYWdlIGZvciBsaXN0IG9mIGF2YWlsYWJsZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3V0cHV0IGZvcm1hdHMsIGRlZmF1bHRzIHRvICdkcGtnJ1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBkcGtnLWRldlxuIgorIiAgICAtLXNpbmNlIDx2ZXJzaW9uPiwgICAgICAgICAgaW5jbHVkZSBhbGwgY2hhbmdlcyBsYXRlciB0aGFuIHZlcnNpb25cbiIKKyIgICAgICAtczx2ZXJzaW9uPiwgLXY8dmVyc2lvbj5cbiIKKyIgICAgLS11bnRpbCA8dmVyc2lvbj4sICAgICAgICAgIGluY2x1ZGUgYWxsIGNoYW5nZXMgZWFybGllciB0aGFuIHZlcnNpb25cbiIKKyIgICAgICAtdTx2ZXJzaW9uPlxuIgorIiAgICAtLWZyb20gPHZlcnNpb24+LCAgICAgICAgICAgaW5jbHVkZSBhbGwgY2hhbmdlcyBlcXVhbCBvciBsYXRlclxuIgorIiAgICAgIC1mPHZlcnNpb24+ICAgICAgICAgICAgICAgdGhhbiB2ZXJzaW9uXG4iCisiICAgIC0tdG8gPHZlcnNpb24+LCAtdDx2ZXJzaW9uPiBpbmNsdWRlIGFsbCBjaGFuZ2VzIHVwIHRvIG9yIGVxdWFsXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGFuIHZlcnNpb25cbiIKKyIgICAgLS1jb3VudCA8bnVtYmVyPiwgICAgICAgICAgIGluY2x1ZGUgPG51bWJlcj4gZW50cmllcyBmcm9tIHRoZSB0b3BcbiIKKyIgICAgICAtYzxudW1iZXI+LCAtbjxudW1iZXI+ICAgIChvciB0aGUgdGFpbCBpZiA8bnVtYmVyPiBpcyBsb3dlciB0aGFuIDApXG4iCisiICAgIC0tb2Zmc2V0IDxudW1iZXI+LCAgICAgICAgICBjaGFuZ2UgdGhlIHN0YXJ0aW5nIHBvaW50IGZvciAtLWNvdW50LFxuIgorIiAgICAgIC1vPG51bWJlcj4gICAgICAgICAgICAgICAgY291bnRlZCBmcm9tIHRoZSB0b3AgKG9yIHRoZSB0YWlsIGlmXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bnVtYmVyPiBpcyBsb3dlciB0aGFuIDApXG4iCisiICAgIC0tYWxsICAgICAgICAgICAgICAgICAgICAgICBpbmNsdWRlIGFsbCBjaGFuZ2VzXG4iCittc2dzdHIgIiIKKyJVc286ICVzIFs8b3BjacOzbj4gLi4uXVxuIgorIlxuIgorIk9wY2lvbmVzOlxuIgorIiAgLWw8ZmljaGVyby1jaGFuZ2Vsb2c+ICAgIE9idGllbmUgaW5mb3JtYWNpw7NuIGRlIGxhIHZlcnNpw7NuIGRlIGVzdGUgIgorImZpY2hlcm8uXG4iCisiICAtRjxmb3JtYXRvLWNoYW5nZWxvZz4gICAgRnVlcnphIGVsIGNhbWJpbyBkZSBmb3JtYXRvIGRlIHJlZ2lzdHJvIGRlICIKKyJjYW1iaW9zLlxuIgorIiAgLUw8ZGlyZWMtYmlibGlvdGVjYT4gICAgIEJ1c2NhIGFuYWxpemFkb3JlcyBkZSByZWdpc3RybyBkZSBjYW1iaW9zIGVuXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpcmVjLWJpYmxpb3RlY2E+XG4iCisiICAtaCwgLS1oZWxwICAgICAgICAgICAgICAgTXVlc3RyYSBlc3RlIG1lbnNhamUgZGUgYXl1ZGEuXG4iCisiICAgICAgLS12ZXJzaW9uICAgICAgICAgICAgTXVlc3RyYSBsYSB2ZXJzacOzbi5cbiIKKyJcbiIKKyJPcGNpb25lcyBkZWwgYW5hbGl6YWRvcjpcbiIKKyIgICAgLS1mb3JtYXQgPGZvcm1hdG8tc2FsaWRhPiAgIENvbnN1bHRlIGxhIHDDoWdpbmEgZGUgbWFudWFsIHBhcmEgdW5hIGxpc3RhXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZSBsb3MgZm9ybWF0b3MgZGUgc2FsaWRhIGRpc3BvbmlibGUsICIKKyLCq2Rwa2fCu1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9yIG9taXNpw7NuLCBwYXJhIGxhIGNvbXBhdGliaWxpZGFkIGNvblxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgwqtkcGtnLWRldsK7LlxuIgorIiAgICAtLXNpbmNlIDx2ZXJzacOzbj4sICAgICAgICAgIEluY2x1eWUgdG9kb3MgbG9zIGNhbWJpb3MgcG9zdGVyaW9yZXMgYSBsYVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHZlcnNpw7NuPi5cbiIKKyIgICAgICAtczx2ZXJzacOzbj4sIC12PHZlcnNpw7NuPlxuIgorIiAgICAtLXVudGlsIDx2ZXJzacOzbj4sICAgICAgICAgIEluY2x1eWUgdG9kb3MgbG9zIGNhbWJpb3MgYW50ZXJpb3JlcyBhIGxhXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dmVyc2nDs24+LlxuIgorIiAgICAgIC11PHZlcnNpw7NuPlxuIgorIiAgICAtLWZyb20gPHZlcnNpw7NuPiwgICAgICAgICAgIEluY2x1eWUgdG9kb3MgbG9zIGNhbWJpb3MgZGUgZXNhIHZlcnNpw7NuIHlcbiIKKyIgICAgICAtZjx2ZXJzacOzbj4gICAgICAgICAgICAgICBwb3N0ZXJpb3Jlcy5cbiIKKyIgICAgLS10byA8dmVyc2nDs24+LCAtdDx2ZXJzacOzbj4gSW5jbHV5ZSB0b2RvcyBsb3MgY2FtYmlvcyBkZSBlc2EgdmVyc2nDs24geVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYW50ZXJpb3Jlcy5cbiIKKyIgICAgLS1jb3VudCA8bsO6bWVybz4sICAgICAgICAgICBJbmNsdXllIGVsIDxuw7ptZXJvPiBkZSBlbnRyYWRhcyBkZXNkZSBlbFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJpbmNpcGlvXG4iCisiICAgICAgLWM8bnVtYmVyPiwgLW48bnVtYmVyPiAgICAobyBmaW5hbCBzaSBlbCA8bsO6bWVybz4gZXMgbWVub3IgcXVlIGNlcm8pLlxuIgorIiAgICAtLW9mZnNldCA8bsO6bWVybz4sICAgICAgICAgIENhbWJpYSBlbCBwdW50byBkZSBpbmljaW8gZGUgwqstLWNvdW50wrssXG4iCisiICAgICAgLW88bsO6bWVybz4gICAgICAgICAgICAgICAgY29udGFuZG8gZGVzZGUgZWwgcHJpbmNpcGlvIChvIGZpbmFsIHNpIGVsXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bsO6bWVybz4gZXMgbWVub3IgcXVlIGNlcm8pLlxuIgorIiAgICAtLWFsbCAgICAgICAgICAgICAgICAgICAgICAgSW5jbHV5ZSB0b2RvcyBsb3MgY2FtYmlvcy5cbiIKKworIzogc2NyaXB0cy9kcGtnLXBhcnNlY2hhbmdlbG9nLnBsOjExNworIywgZnV6enkKKyN8IG1zZ2lkICIlcyB0YWtlcyBubyBub24tb3B0aW9uIGFyZ3VtZW50cyIKK21zZ2lkICJ0YWtlcyBubyBub24tb3B0aW9uIGFyZ3VtZW50cyIKK21zZ3N0ciAiJXMgbm8gYWNlcHRhIGFyZ3VtZW50b3MgcXVlIG5vIHNlYW4gdW5hIG9wY2nDs24iCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6NjYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSA8YmluYXJ5cGF0aD4gWzxvdmVycmlkZWZpbGU+IFs8cGF0aHByZWZpeD5dXSA+ICIKKyJQYWNrYWdlc1xuIgorIlxuIgorIk9wdGlvbnM6XG4iCisiICAtdCwgLS10eXBlIDx0eXBlPiAgICAgICAgc2NhbiBmb3IgPHR5cGU+IHBhY2thZ2VzIChkZWZhdWx0IGlzICdkZWInKS5cbiIKKyIgIC11LCAtLXVkZWIgICAgICAgICAgICAgICBzY2FuIGZvciB1ZGVicyAob2Jzb2xldGUgYWxpYXMgZm9yIC10dWRlYikuXG4iCisiICAtYSwgLS1hcmNoIDxhcmNoPiAgICAgICAgYXJjaGl0ZWN0dXJlIHRvIHNjYW4gZm9yLlxuIgorIiAgLW0sIC0tbXVsdGl2ZXJzaW9uICAgICAgIGFsbG93IG11bHRpcGxlIHZlcnNpb25zIG9mIGEgc2luZ2xlIHBhY2thZ2UuXG4iCisiICAtZSwgLS1leHRyYS1vdmVycmlkZSA8ZmlsZT5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2UgZXh0cmEgb3ZlcnJpZGUgZmlsZS5cbiIKKyIgIC1NLCAtLW1lZGl1bSA8bWVkaXVtPiAgICBhZGQgWC1NZWRpdW0gZmllbGQgZm9yIGRzZWxlY3QgbXVsdGljZCBhY2Nlc3MgIgorIm1ldGhvZFxuIgorIiAgLWgsIC0taGVscCAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAgICAgLS12ZXJzaW9uICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIgorIlVzbzogJXMgWzxvcGNpw7NuPiAuLi5dIDxydXRhLWJpbmFyaW8+IFs8ZmljaGVyby1vdmVycmlkZT4gWzxwcmVmaWpvLXJ1dGE+XV0gIgorIj4gUGFxdWV0ZXNcbiIKKyJcbiIKKyJPcGNpb25lczpcbiIKKyIgIC10LCAtLXR5cGUgPHRpcG8+ICAgICAgICBCdXNjYSBlbCA8dGlwbz4gZGUgcGFxdWV0ZSAowqtkZWLCuyBwb3Igb21pc2nDs24pLlxuIgorIiAgLXUsIC0tdWRlYiAgICAgICAgICAgICAgIEJ1c2NhIMKrdWRlYsK7IChhbGlhcyBvYnNvbGV0byBwYXJhIMKrLXR1ZGViwrspLlxuIgorIiAgLWEsIC0tYXJjaCA8YXJxdWl0ZWM+ICAgIEFycXVpdGVjdHVyYSBwYXJhIGxhIHF1ZSBhbmFsaXphci5cbiIKKyIgIC1tLCAtLW11bHRpdmVyc2lvbiAgICAgICBQZXJtaXRlIHZhcmlhcyB2ZXJzaW9uZXMgZGVsIG1pc21vIHBhcXVldGUuXG4iCisiICAtZSwgLS1leHRyYS1vdmVycmlkZSA8ZmljaGVybz5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBVc2EgdW4gZmljaGVybyDCq292ZXJyaWRlwrsgYWRpY2lvbmFsLlxuIgorIiAgLU0sIC0tbWVkaXVtIDxtZWRpbz4gICAgIEHDsWFkZSBlbCBjYW1wbyDCq1gtTWVkaXVtwrsgcGFyYSBlbCBtw6l0b2RvXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgbXVsdGljZCBkZSBkc2VsZWN0LlxuIgorIiAgLWgsIC0taGVscCAgICAgICAgICAgICAgIE11ZXN0cmEgZXN0ZSBtZW5zYWplIGRlIGF5dWRhLlxuIgorIiAgICAgIC0tdmVyc2lvbiAgICAgICAgICAgIE11ZXN0cmEgbGEgdmVyc2nDs24uXG4iCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6ODMKK21zZ2lkICItdSwgLS11ZGViIG9wdGlvbiBpcyBkZXByZWNhdGVkIChzZWUgUkVBRE1FLmZlYXR1cmUtcmVtb3ZhbC1zY2hlZHVsZSkiCittc2dzdHIgIiIKKyLCqy11wrssIGxhIG9wY2nDs24gwqstLXVkZWLCuyBlc3TDoSBvYnNvbGV0YSAoY29uc3VsdGUgwqtSRUFETUUuZmVhdHVyZS1yZW1vdmFsLSIKKyJzY2hlZHVsZcK7KSIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoxMTIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiICAlcyAocGFja2FnZSBzYXlzICVzLCBub3QgJXMpIgorbXNnc3RyICIgICVzIChlbCBwYXF1ZXRlIGRldnVlbHZlICVzLCBubyAlcykiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6MTIwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIlVuY29uZGl0aW9uYWwgbWFpbnRhaW5lciBvdmVycmlkZSBmb3IgJXMiCittc2dzdHIgIlN1c3RpdHVjacOzbiAowqtvdmVycmlkZcK7KSBpbmNvbmRpY2lvbmFsIGRlbCBlbmNhcmdhZG8gcGFyYSAlcyIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoxNTggc2NyaXB0cy9kcGtnLXNjYW5zb3VyY2VzLnBsOjMwMgorIywgZnV6enkKKyN8IG1zZ2lkICIxIHRvIDMgYXJncyBleHBlY3RlZCIKK21zZ2lkICJvbmUgdG8gdGhyZWUgYXJndW1lbnRzIGV4cGVjdGVkIgorbXNnc3RyICJTZSBlc3BlcmFuIGRlIHVubyBhIHRyZXMgYXJndW1lbnRvcyIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoxNzUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiQmluYXJ5IGRpciAlcyBub3QgZm91bmQiCittc2dzdHIgIk5vIHNlIGhhIGVuY29udHJhZG8gZWwgZGlyZWN0b3JpbyBiaW5hcmlvIMKrJXPCuyAiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6MTc3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIk92ZXJyaWRlIGZpbGUgJXMgbm90IGZvdW5kIgorbXNnc3RyICJObyBzZSBoYSBlbmNvbnRyYWRvIGVsIGZpY2hlcm8gZGUgc3VzdGl0dWNpb25lcyAowqtvdmVycmlkZcK7KSDCqyVzwrsiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6MTgzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIkNvdWxkbid0IG9wZW4gJXMgZm9yIHJlYWRpbmciCittc2dzdHIgIk5vIHNlIGhhIHBvZGlkbyBhYnJpciDCqyVzwrsgcGFyYSBzdSBsZWN0dXJhIgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOjE5MworIywgcGVybC1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBwYXJzZSBjb250cm9sIGluZm9ybWF0aW9uIGZyb20gJXMuIgorbXNnc3RyICJObyBzZSBoYSBwb2RpZG8gYW5hbGl6YXIgbGEgaW5mb3JtYWNpw7NuIGRlIGNvbnRyb2wgZGUgwqslc8K7LiIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoxOTYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiYGRwa2ctZGViIC1JICVzIGNvbnRyb2wnIGV4aXRlZCB3aXRoICVkLCBza2lwcGluZyBwYWNrYWdlIgorbXNnc3RyICLCq2Rwa2ctZGViIC1JICVzIGNvbnRyb2zCuyBmaW5hbGl6w7MgY29uICVkLCBvbWl0aWVuZG8gcGFxdWV0ZSIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoyMDIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiTm8gUGFja2FnZSBmaWVsZCBpbiBjb250cm9sIGZpbGUgb2YgJXMiCittc2dzdHIgIk5vIGV4aXN0ZSBlbCBjYW1wbyDCq1BhY2thZ2XCuyBlbiBlbCBmaWNoZXJvIGRlIGNvbnRyb2wgZGUgJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6MjEwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgJXMgKGZpbGVuYW1lICVzKSBpcyByZXBlYXQgYnV0IG5ld2VyIHZlcnNpb247IgorbXNnc3RyICIiCisiRWwgcGFxdWV0ZSAlcyAobm9tYnJlIGRlIGZpY2hlcm8gJXMpIGVzdMOhIHJlcGV0aWRvIGNvbiB1bmEgdmVyc2nDs24gbcOhcyAiCisicmVjaWVudGU7IgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOjIxMgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1c2VkIHRoYXQgb25lIGFuZCBpZ25vcmVkIGRhdGEgZnJvbSAlcyEiCittc2dzdHIgIsKhc2UgdXNhcsOhIGVzZSB5IHNlIGlnbm9yYXLDoW4gbG9zIGRhdG9zIGRlICVzISIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoyMTYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiUGFja2FnZSAlcyAoZmlsZW5hbWUgJXMpIGlzIHJlcGVhdDsiCittc2dzdHIgIkVsIHBhcXVldGUgJXMgKG5vbWJyZSBkZSBmaWNoZXJvICVzKSBlc3TDoSByZXBldGlkbyAiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6MjE3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImlnbm9yZWQgdGhhdCBvbmUgYW5kIHVzaW5nIGRhdGEgZnJvbSAlcyEiCittc2dzdHIgIsKhc2UgaGEgaWdub3JhZG8gZXNlIHkgc2UgdXNhcsOhbiBsb3MgZGF0b3MgZGUgJXMhIgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOjIyMworIywgcGVybC1mb3JtYXQKK21zZ2lkICJQYWNrYWdlICVzIChmaWxlbmFtZSAlcykgaGFzIEZpbGVuYW1lIGZpZWxkISIKK21zZ3N0ciAiwqFFbCBwYXF1ZXRlICVzIChmaWNoZXJvIMKrJXPCuykgdGllbmUgZWwgY2FtcG8gwqtGaWxlbmFtZcK7ISIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoyNTUKK21zZ2lkICJGYWlsZWQgd2hlbiB3cml0aW5nIHN0ZG91dCIKK21zZ3N0ciAiU2UgaGEgZGV0ZWN0YWRvIHVuIGZhbGxvIGFsIGVzY3JpYmlyIHBvciBsYSBzYWxpZGEgZXN0w6FuZGFyIgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOjI1OQorbXNnaWQgIkNvdWxkbid0IGNsb3NlIHN0ZG91dCIKK21zZ3N0ciAiTm8gc2UgaGEgcG9kaWRvIGNlcnJhciBsYSBzYWxpZGEgZXN0w6FuZGFyIgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOjI2MgorbXNnaWQgIlBhY2thZ2VzIGluIG92ZXJyaWRlIGZpbGUgd2l0aCBpbmNvcnJlY3Qgb2xkIG1haW50YWluZXIgdmFsdWU6IgorbXNnc3RyICIiCisiUGFxdWV0ZXMgZW4gZWwgZmljaGVybyBkZSBzdXN0aXR1Y2lvbmVzIMKrb3ZlcnJpZGXCuyBjb24gdW4gdmFsb3IgaW5jb3JyZWN0byAiCisiZGUgZW5jYXJnYWRvIGFudGlndW86IgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOjI2NgorbXNnaWQgIlBhY2thZ2VzIHNwZWNpZnlpbmcgc2FtZSBtYWludGFpbmVyIGFzIG92ZXJyaWRlIGZpbGU6IgorbXNnc3RyICJQYXF1ZXRlcyBxdWUgZGVmaW5lbiBlbCBtaXNtbyBlbmNhcmdhZG8gcXVlIGVsIGZpY2hlcm8gwqtvdmVycmlkZcK7OiIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoyNzAKK21zZ2lkICJQYWNrYWdlcyBpbiBhcmNoaXZlIGJ1dCBtaXNzaW5nIGZyb20gb3ZlcnJpZGUgZmlsZToiCittc2dzdHIgIlBhcXVldGVzIGVuIGVsIGFyY2hpdm8gcGVybyBubyBwcmVzZW50ZXMgZW4gZWwgZmljaGVybyDCq292ZXJyaWRlwrs6IgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOjI3NAorbXNnaWQgIlBhY2thZ2VzIGluIG92ZXJyaWRlIGZpbGUgYnV0IG5vdCBpbiBhcmNoaXZlOiIKK21zZ3N0ciAiUGFxdWV0ZXMgZW4gZWwgZmljaGVybyDCq292ZXJyaWRlwrsgcGVybyBubyBlbiBlbCBhcmNoaXZvOiIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoyNzgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiV3JvdGUgJXMgZW50cmllcyB0byBvdXRwdXQgUGFja2FnZXMgZmlsZS4iCittc2dzdHIgIlNlIGhhbiBlc2NyaXRvIMKrJXPCuyBlbnRyYWRhcyBlbiBlbCBmaWNoZXJvIMKrUGFja2FnZXPCuyBkZSBzYWxpZGEuIgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnNvdXJjZXMucGw6ODQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSA8YmluYXJ5cGF0aD4gWzxvdmVycmlkZWZpbGU+IFs8cGF0aHByZWZpeD5dXSA+ICIKKyJTb3VyY2VzXG4iCisiXG4iCisiT3B0aW9uczpcbiIKKyIgIC1uLCAtLW5vLXNvcnQgICAgICAgICAgICBkb24ndCBzb3J0IGJ5IHBhY2thZ2UgYmVmb3JlIG91dHB1dHRpbmcuXG4iCisiICAtZSwgLS1leHRyYS1vdmVycmlkZSA8ZmlsZT5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2UgZXh0cmEgb3ZlcnJpZGUgZmlsZS5cbiIKKyIgIC1zLCAtLXNvdXJjZS1vdmVycmlkZSA8ZmlsZT5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2UgZmlsZSBmb3IgYWRkaXRpb25hbCBzb3VyY2Ugb3ZlcnJpZGVzLCAiCisiZGVmYXVsdFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzIHJlZ3VsYXIgb3ZlcnJpZGUgZmlsZSB3aXRoIC5zcmMgYXBwZW5kZWQuXG4iCisiICAgICAgLS1kZWJ1ZyAgICAgICAgICAgICAgdHVybiBkZWJ1Z2dpbmcgb24uXG4iCisiICAgICAgLS1oZWxwICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgICAgICAtLXZlcnNpb24gICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorIlNlZSB0aGUgbWFuIHBhZ2UgZm9yIHRoZSBmdWxsIGRvY3VtZW50YXRpb24uXG4iCittc2dzdHIgIiIKKyJVc286ICVzIFs8b3BjacOzbj4gLi4uXSA8cnV0YS1iaW5hcmlvPiBbPGZpY2hlcm8tb3ZlcnJpZGU+IFs8cHJlZmlqby1ydXRhPl1dICIKKyI+IFNvdXJjZXNcbiIKKyJcbiIKKyJPcGNpb25lczpcbiIKKyIgIC1uLCAtLW5vLXNvcnQgICAgICAgICAgICBObyBvcmRlbmEgcG9yIHBhcXVldGUgYW50ZXMgZGUgZW52aWFyIGxhXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5mb3JtYWNpw7NuIGRlIHNhbGlkYS5cbiIKKyIgIC1lLCAtLWV4dHJhLW92ZXJyaWRlIDxmaWNoZXJvPlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIFVzYSB1biBmaWNoZXJvIMKrb3ZlcnJpZGXCuyBhZGljaW9uYWwuXG4iCisiICAtcywgLS1zb3VyY2Utb3ZlcnJpZGUgPGZpY2hlcm8+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgVXNhIGVsIGZpY2hlcm8gcGFyYSBzdXN0aXR1Y2lvbmVzICjCq292ZXJyaWRlwrspXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgYWRpY2lvbmFsZXMsIGVsIGNvbXBvcnRhbWllbnRvIHByZWRlZmluaWRvXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgZXMgdW4gZmljaGVybyDCq292ZXJyaWRlwrsgbm9ybWFsIGNvbiBsYVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4dGVuc2nDs24gwqsuc3JjwrsuXG4iCisiICAgICAgLS1kZWJ1ZyAgICAgICAgICAgICAgQWN0aXZhIGVsIG1vZG8gZGUgZGVwdXJhY2nDs24uXG4iCisiICAgICAgLS1oZWxwICAgICAgICAgICAgICAgTXVlc3RyYSBlc3RlIG1lbnNhamUgZGUgYXl1ZGEuXG4iCisiICAgICAgLS12ZXJzaW9uICAgICAgICAgICAgTXVlc3RyYSBsYSB2ZXJzacOzbi5cbiIKKyJcbiIKKyJDb25zdWx0ZSBsYSBww6FnaW5hIGRlIG1hbnVhbCBwYXJhIHVuYSBkb2N1bWVudGFjacOzbiBjb21wbGV0YS5cbiIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5zb3VyY2VzLnBsOjEwNQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nICVzICgkPyAlZCwgJCEgYCVzJykiCittc2dzdHIgInNlIGhhIGRldGVjdGFkbyB1biBmYWxsbyBhbCBjZXJyYXIgwqslc8K7ICgkPyAlZCwgJCEgYCVzJykiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2Fuc291cmNlcy5wbDoxMjEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBvdmVycmlkZSBlbnRyeSBhdCBsaW5lICVkICglZCBmaWVsZHMpIgorbXNnc3RyICIiCisiZW50cmFkYSBkZSBzdXN0aXR1Y2nDs24gKMKrb3ZlcnJpZGXCuykgaW52w6FsaWRhIGVuIGxhIGzDrW5lYSAlZCAoJWQgY2FtcG9zKSIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5zb3VyY2VzLnBsOjEyNworIywgcGVybC1mb3JtYXQKK21zZ2lkICJpZ25vcmluZyBkdXBsaWNhdGUgb3ZlcnJpZGUgZW50cnkgZm9yICVzIGF0IGxpbmUgJWQiCittc2dzdHIgIiIKKyJpZ25vcmFuZG8gdW5hIGVudHJhZGEgZHVwbGljYWRhIGRlIHN1c3RpdHVjacOzbiAowqtvdmVycmlkZcK7KSBwYXJhICVzIGVuIGxhICIKKyJsw61uZWEgJWQiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2Fuc291cmNlcy5wbDoxMzIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiaWdub3Jpbmcgb3ZlcnJpZGUgZW50cnkgZm9yICVzLCBpbnZhbGlkIHByaW9yaXR5ICVzIgorbXNnc3RyICIiCisiaWdub3JhbmRvIGxhIGVudHJhZGEgZGUgc3VzdGl0dWNpw7NuICjCq292ZXJyaWRlwrspIHBhcmEgJXMsIHByaW9yaWRhZCBpbnbDoWxpZGEgIgorIiVzIgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnNvdXJjZXMucGw6MTg2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImludmFsaWQgc291cmNlIG92ZXJyaWRlIGVudHJ5IGF0IGxpbmUgJWQgKCVkIGZpZWxkcykiCittc2dzdHIgIiIKKyJlbnRyYWRhIGRlIHN1c3RpdHVjacOzbiAowqtvdmVycmlkZcK7KSBkZSBmdWVudGUgaW52w6FsaWRhIGVuIGxhIGzDrW5lYSAlZCAoJWQgIgorImNhbXBvcykiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2Fuc291cmNlcy5wbDoxOTQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgZHVwbGljYXRlIHNvdXJjZSBvdmVycmlkZSBlbnRyeSBmb3IgJXMgYXQgbGluZSAlZCIKK21zZ3N0ciAiIgorImlnbm9yYW5kbyB1bmEgZW50cmFkYSBkdXBsaWNhZGEgZGUgc3VzdGl0dWNpw7NuICjCq292ZXJyaWRlwrspIGRlIGZ1ZW50ZXMgcGFyYSAiCisiJXMgZW4gbGEgbMOtbmVhICVkIgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnNvdXJjZXMucGw6MjQ0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIm5vIGJpbmFyeSBwYWNrYWdlcyBzcGVjaWZpZWQgaW4gJXMiCittc2dzdHIgIm5vIHNlIGhhbiBkZWZpbmlkbyBwYXF1ZXRlcyBiaW5hcmlvcyBlbiAlcyIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo5MworIywgcGVybC1mb3JtYXQKK21zZ2lkICJhZG1pbmlzdHJhdGl2ZSBkaXJlY3RvcnkgJyVzJyBkb2VzIG5vdCBleGlzdCIKK21zZ3N0ciAiZWwgZGlyZWN0b3JpbyBhZG1pbmlzdHJhdGl2byDCqyVzwrsgbm8gZXhpc3RlIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjk4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVucmVjb2duaXNlZCBkZXBlbmRlbmN5IGZpZWxkIGAlcyciCittc2dzdHIgImVsIGNhbXBvIGRlIGRlcGVuZGVuY2lhcyDCqyVzwrsgZXMgZGVzY29ub2NpZG8iCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6MTMyCittc2dpZCAibmVlZCBhdCBsZWFzdCBvbmUgZXhlY3V0YWJsZSIKK21zZ3N0ciAic2UgcmVxdWllcmUgYWwgbWVub3MgdW4gZWplY3V0YWJsZSIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDoxNzUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY291bGRuJ3QgZmluZCBsaWJyYXJ5ICVzIG5lZWRlZCBieSAlcyAoRUxGIGZvcm1hdDogJyVzJzsgUlBBVEg6ICclcycpLiIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjI2MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBoYXMgYW4gdW5leHBlY3RlZCBTT05BTUUgKCVzKSIKK21zZ3N0ciAiJXMgdGllbmUgdW4gU09OQU1FIGluZXNwZXJhZG8gKCVzKSIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDoyODMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibm8gZGVwZW5kZW5jeSBpbmZvcm1hdGlvbiBmb3VuZCBmb3IgJXMgKHVzZWQgYnkgJXMpLiIKK21zZ3N0ciAiTm8gc2UgZW5jb250csOzIGxhIGluZm9ybWFjacOzbiBkZSBkZXBlbmRlbmNpYSBwYXJhICVzICh1c2FkbyBwb3IgJXMpLiIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDozMTQKK21zZ2lkICIiCisiYmluYXJpZXMgdG8gYW5hbHl6ZSBzaG91bGQgYWxyZWFkeSBiZSBpbnN0YWxsZWQgaW4gdGhlaXIgcGFja2FnZSdzIGRpcmVjdG9yeS4iCittc2dzdHIgIiIKKyJMb3MgYmluYXJpb3MgYSBhbmFsaXphciB5YSBkZWJlcsOtYW4gZXN0YXIgaW5zdGFsYWRvcyBlbiBlbCBkaXJlY3RvcmlvIGRlIHN1ICIKKyJwYXF1ZXRlLiIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDozNTcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAic3ltYm9sICVzIHVzZWQgYnkgJXMgZm91bmQgaW4gbm9uZSBvZiB0aGUgbGlicmFyaWVzLiIKK21zZ3N0ciAiIgorIm5vIHNlIGhhIGVuY29udHJhZG8gZW4gbmluZ3VuYSBiaWJsaW90ZWNhIGVsIHPDrW1ib2xvIMKrJXPCuywgdXNhZG8gcG9yICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjM2MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiJXMgY29udGFpbnMgYW4gdW5yZXNvbHZhYmxlIHJlZmVyZW5jZSB0byBzeW1ib2wgJXM6IGl0J3MgcHJvYmFibHkgYSBwbHVnaW4uIgorbXNnc3RyICIiCisiJXMgY29udGllbmUgdW5hIHJlZmVyZW5jaWEgaXJyZXNvbHVibGUgYWwgc8OtbWJvbG8gJXM6IHBvc2libGVtZW50ZSBzZWEgdW5hICIKKyJleHRlbnNpw7NuLiIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDozODIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJWQgc2ltaWxhciB3YXJuaW5nIGhhcyBiZWVuIHNraXBwZWQgKHVzZSAtdiB0byBzZWUgaXQpLiIKK21zZ2lkX3BsdXJhbCAiIgorIiVkIG90aGVyIHNpbWlsYXIgd2FybmluZ3MgaGF2ZSBiZWVuIHNraXBwZWQgKHVzZSAtdiB0byBzZWUgdGhlbSBhbGwpLiIKK21zZ3N0clswXSAiIgorIlNlIGhhbiBvbWl0aWRvIG90cm9zICVkIGF2aXNvcyBzaW1pbGFyZXMgKHVzZSDCqy12wrsgcGFyYSB2ZXJsb3MgdG9kb3MpLiIKK21zZ3N0clsxXSAiIgorIlNlIGhhbiBvbWl0aWRvIG90cm9zICVkIGF2aXNvcyBzaW1pbGFyZXMgKHVzZSDCqy12wrsgcGFyYSB2ZXJsb3MgdG9kb3MpLiIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo0MDkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgc2hvdWxkbid0IGJlIGxpbmtlZCB3aXRoICVzIChpdCB1c2VzIG5vbmUgb2YgaXRzIHN5bWJvbHMpLiIKK21zZ3N0ciAiJXMgbm8gZGViZXLDrWEgZXN0YXIgZW5sYXphZG8gY29uICVzIChubyB1c2EgbmluZ3VubyBkZSBzdXMgc8OtbWJvbG9zKS4iCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6NDIyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJkZXBlbmRlbmN5IG9uICVzIGNvdWxkIGJlIGF2b2lkZWQgaWYgXCIlc1wiIHdlcmUgbm90IHVzZWxlc3NseSBsaW5rZWQgIgorImFnYWluc3QgaXQgKHRoZXkgdXNlIG5vbmUgb2YgaXRzIHN5bWJvbHMpLiIKK21zZ3N0ciAiIgorIlNlIHBvZHLDrWEgZXZpdGFyIGxhIGRlcGVuZGVuY2lhIHNvYnJlICVzIHNpIMKrJXPCuyBubyBlc3R1dmllc2UgZW5sYXphZG8gIgorImluw7p0aWxtZW50ZSBhIMOpbCAobm8gdXNhIG5pbmd1bm8gZGUgc3VzIHPDrW1ib2xvcykuIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjQzMQorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiY291bGRuJ3QgZmluZCBsaWJyYXJ5ICVzIG5lZWRlZCBieSAlcyAoRUxGIGZvcm1hdDogJyVzJzsgUlBBVEg6ICclcycpLlxuIgorI3wgIk5vdGU6IGxpYnJhcmllcyBhcmUgbm90IHNlYXJjaGVkIGluIG90aGVyIGJpbmFyeSBwYWNrYWdlcyB0aGF0IGRvIG5vdCAiCisjfCAiaGF2ZSBhbnkgc2hsaWJzIG9yIHN5bWJvbHMgZmlsZS5cbiIKKyN8ICJUbyBoZWxwIGRwa2ctc2hsaWJkZXBzIGZpbmQgcHJpdmF0ZSBsaWJyYXJpZXMsIHlvdSBtaWdodCBuZWVkIHRvIHNldCAiCisjfCAiTERfTElCUkFSWV9QQVRILiIKK21zZ2lkICIiCisiTm90ZTogbGlicmFyaWVzIGFyZSBub3Qgc2VhcmNoZWQgaW4gb3RoZXIgYmluYXJ5IHBhY2thZ2VzIHRoYXQgZG8gbm90IGhhdmUgIgorImFueSBzaGxpYnMgb3Igc3ltYm9scyBmaWxlLlxuIgorIlRvIGhlbHAgZHBrZy1zaGxpYmRlcHMgZmluZCBwcml2YXRlIGxpYnJhcmllcywgeW91IG1pZ2h0IG5lZWQgdG8gc2V0ICIKKyJMRF9MSUJSQVJZX1BBVEguIgorbXNnc3RyICIiCisiTm8gc2UgcHVkbyBlbmNvbnRyYXIgbGEgYmlibGlvdGVjYSAlcyByZXF1ZXJpZGEgcG9yICVzIChmb3JtYXRvIEVMRjogJyVzJzsgIgorIlJQQVRIOiAnJXMnKS5cbiIKKyJOb3RhOiBubyBzZSBidXNjYW4gYmlibGlvdGVjYXMgZW4gb3Ryb3MgcGFxdWV0ZXMgYmluYXJpb3MgcXVlIG5vIHRpZW5lblxuIgorIm5pbmfDum4gZmljaGVybyBkZSBzw61tYm9sb3MgKMKrc3ltYm9sc8K7KSBvIGRlIGJpYmxpb3RlY2FzIGNvbXBhcnRpZGFzXG4iCisiKMKrc2hsaWJzwrspLlxuIgorIlB1ZWRlIHF1ZSB0ZW5nYSBxdWUgZGVmaW5pciDCq0xEX0xJQlJBUllfUEFUSMK7IHBhcmEgYXl1ZGFyIGEgcXVlIGRwa2ctIgorInNobGliZGVwcyBlbmN1ZW50cmUgYmlibGlvdGVjYXMgcHJpdmFkYXMuIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjQzNAorbXNnaWQgIkNhbm5vdCBjb250aW51ZSBkdWUgdG8gdGhlIGVycm9yIGFib3ZlLiIKK21zZ2lkX3BsdXJhbCAiQ2Fubm90IGNvbnRpbnVlIGR1ZSB0byB0aGUgZXJyb3JzIGxpc3RlZCBhYm92ZS4iCittc2dzdHJbMF0gIiIKK21zZ3N0clsxXSAiIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjQ0NQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJvcGVuIG5ldyBzdWJzdHZhcnMgZmlsZSBgJXMnIgorbXNnc3RyICJhYnJpciBlbCBudWV2byBmaWNoZXJvIGRlIHN1c3RpdHVjacOzbiBkZSB2YXJpYWJsZXMgwqslc8K7IgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjQ0OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJvcGVuIG9sZCB2YXJsaXN0IGZpbGUgYCVzJyBmb3IgcmVhZGluZyIKK21zZ3N0ciAiYWJyaXIgZWwgYW50aWd1byBmaWNoZXJvIGRlIGxpc3RhIGRlIHZhcmlhYmxlcyAlcyBwYXJhIHN1IGxlY3R1cmEiCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6NDUxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNvcHkgb2xkIGVudHJ5IHRvIG5ldyB2YXJsaXN0IGZpbGUgYCVzJyIKK21zZ3N0ciAiY29waWFyIGxhIGVudHJhZGEgYW50aWd1YSBhbCBudWV2byBmaWNoZXJvIGRlIGxpc3RhIGRlIHZhcmlhYmxlcyDCqyVzwrsiCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6NTE1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImludmFsaWQgZGVwZW5kZW5jeSBnb3QgZ2VuZXJhdGVkOiAlcyIKK21zZ3N0ciAic2UgaGEgZ2VuZXJhZG8gdW5hIGRlcGVuZGVuY2lhIGludsOhbGlkYTogJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6NTI1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImluc3RhbGwgbmV3IHZhcmxpc3QgZmlsZSBgJXMnIgorbXNnc3RyICJpbnN0YWxhciBlbCBudWV2byBmaWNoZXJvIGRlIGxpc3RhIGRlIHZhcmlhYmxlcyDCqyVzwrsiCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6NTM1Cittc2dpZCAiIgorIlxuIgorIkNvcHlyaWdodCAoQykgMTk5NiBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDYgRnJhbmsgTGljaHRlbmhlbGQuXG4iCisiQ29weXJpZ2h0IChDKSAyMDA3IFJhcGhhZWwgSGVydHpvZy5cbiIKK21zZ3N0ciAiIgorIlxuIgorIkNvcHlyaWdodCAoQykgMTk5NiBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDYgRnJhbmsgTGljaHRlbmhlbGQuXG4iCisiQ29weXJpZ2h0IChDKSAyMDA3IFJhcGhhZWwgSGVydHpvZy5cbiIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo1NTAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSA8ZXhlY3V0YWJsZT58LWU8ZXhlY3V0YWJsZT4gWzxvcHRpb24+IC4uLl1cbiIKKyJcbiIKKyJQb3NpdGlvbmFsIG9wdGlvbnMgKG9yZGVyIGlzIHNpZ25pZmljYW50KTpcbiIKKyIgIDxleGVjdXRhYmxlPiAgICAgICAgICAgICBpbmNsdWRlIGRlcGVuZGVuY2llcyBmb3IgPGV4ZWN1dGFibGU+LFxuIgorIiAgLWU8ZXhlY3V0YWJsZT4gICAgICAgICAgICh1c2UgLWUgaWYgPGV4ZWN1dGFibGU+IHN0YXJ0cyB3aXRoIGAtJylcbiIKKyIgIC1kPGRlcGVuZGVuY3lmaWVsZD4gICAgICBuZXh0IGV4ZWN1dGFibGUocykgc2V0IHNobGliczo8ZGVwZW5kZW5jeWZpZWxkPi5cbiIKKyJcbiIKKyJPcHRpb25zOlxuIgorIiAgLXA8dmFybmFtZXByZWZpeD4gICAgICAgIHNldCA8dmFybmFtZXByZWZpeD46KiBpbnN0ZWFkIG9mIHNobGliczoqLlxuIgorIiAgLU8gICAgICAgICAgICAgICAgICAgICAgIHByaW50IHZhcmlhYmxlIHNldHRpbmdzIHRvIHN0ZG91dC5cbiIKKyIgIC1MPGxvY2Fsc2hsaWJzZmlsZT4gICAgICBzaGxpYnMgb3ZlcnJpZGUgZmlsZSwgbm90IGRlYmlhbi9zaGxpYnMubG9jYWwuXG4iCisiICAtVDx2YXJsaXN0ZmlsZT4gICAgICAgICAgdXBkYXRlIHZhcmlhYmxlcyBoZXJlLCBub3QgZGViaWFuL3N1YnN0dmFycy5cbiIKKyIgIC10PHR5cGU+ICAgICAgICAgICAgICAgICBzZXQgcGFja2FnZSB0eXBlIChkZWZhdWx0IGlzIGRlYikuXG4iCisiICAteDxwYWNrYWdlPiAgICAgICAgICAgICAgZXhjbHVkZSBwYWNrYWdlIGZyb20gdGhlIGdlbmVyYXRlZCBkZXBlbmRlbmNpZXMuXG4iCisiICAtUzxwa2didWlsZGRpcj4gICAgICAgICAgc2VhcmNoIG5lZWRlZCBsaWJyYXJpZXMgaW4gdGhlIGdpdmVuXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFja2FnZSBidWlsZCBkaXJlY3RvcnkgZmlyc3QuXG4iCisiICAtdiAgICAgICAgICAgICAgICAgICAgICAgZW5hYmxlIHZlcmJvc2UgbW9kZSAoY2FuIGJlIHVzZWQgbXVsdGlwbGUgIgorInRpbWVzKS5cbiIKKyIgIC0taWdub3JlLW1pc3NpbmctaW5mbyAgICBkb24ndCBmYWlsIGlmIGRlcGVuZGVuY3kgaW5mb3JtYXRpb24gY2FuJ3QgYmUgIgorImZvdW5kLlxuIgorIiAgLS13YXJuaW5ncz08dmFsdWU+ICAgICAgIGRlZmluZSBzZXQgb2YgYWN0aXZlIHdhcm5pbmdzIChzZWUgbWFudWFsIHBhZ2UpLlxuIgorIiAgLS1hZG1pbmRpcj08ZGlyZWN0b3J5PiAgIGNoYW5nZSB0aGUgYWRtaW5pc3RyYXRpdmUgZGlyZWN0b3J5LlxuIgorIiAgLWgsIC0taGVscCAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAgICAgLS12ZXJzaW9uICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKKyJEZXBlbmRlbmN5IGZpZWxkcyByZWNvZ25pc2VkIGFyZTpcbiIKKyIgICVzXG4iCittc2dzdHIgIiIKKyJVc286ICVzIFs8b3BjacOzbj4gLi4uXSA8ZWplY3V0YWJsZT58LWU8ZWplY3V0YWJsZT4gWzxvcGNpw7NuPiAuLi5dXG4iCisiXG4iCisiT3BjaW9uZXMgcG9zaWNpb25hbGVzIChlbCBvcmRlbiBlcyBpbXBvcnRhbnRlKTpcbiIKKyIgIDxlamVjdXRhYmxlPiAgICAgICAgICAgICBJbmNsdXllIGxhcyBkZXBlbmRlbmNpYXMgZGUgPGVqZWN1dGFibGU+LFxuIgorIiAgLWU8ZWplY3V0YWJsZT4gICAgICAgICAgIChVc2UgwqstZcK7IHNpIDxlamVjdXRhYmxlPiBlbXBpZXphIGNvbiDCqy3CuylcbiIKKyIgIC1kPGNhbXBvLWRlcGVuZGVuY2lhPiAgICBTaWd1aWVudGUgZWplY3V0YWJsZShzKSBkZWZpbmUgc2hsaWJzOlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjYW1wby1kZXBlbmRlbmNpYT4uXG4iCisiXG4iCisiT3BjaW9uZXM6XG4iCisiICAtcDxwcmVmaWpvLW5vbWJyZS12YXI+ICAgRGVmaW5lIDxwcmVmaWpvLW5vbWJyZS12YXI+OiplbiB2ZXogZGUgc2hsaWJzKi5cbiIKKyIgIC1PICAgICAgICAgICAgICAgICAgICAgICBNdWVzdHJhIGxhIGNvbmZpZ3VyYWNpw7NuIGRlIHZhcmlhYmxlcyBwb3IgbGFcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBzYWxpZGEgZXN0w6FuZGFyLlxuIgorIiAgLUw8ZmljaGVyby1sb2NhbC1zaGxpYnM+IEZpY2hlcm8gZGUgc3VzdGl0dWNpw7NuIGRlIGJpYmxpb3RlY2FzXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgY29tcGFydGlkYXMsIG5vIMKrZGViaWFuL3NobGlicy5sb2NhbMK7LlxuIgorIiAgLVQ8bGlzdGEtdmFyaWFibGVzPiAgICAgIEFjdHVhbGl6YSBhcXXDrSBsYXMgdmFyaWFibGVzLCB5IG5vIGVuXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgwqtkZWJpYW4vc3Vic3R2YXJzwrsuXG4iCisiICAtdDx0aXBvPiAgICAgICAgICAgICAgICAgRGVmaW5lIGVsIHRpcG8gZGUgcGFxdWV0ZSAocG9yIG9taXNpw7NuLCDCq2RlYsK7KS5cbiIKKyIgIC14PHBhcXVldGU+ICAgICAgICAgICAgICBFeGNsdXllIGVsIHBhcXVldGUgZGUgbGFzIGRlcGVuZGVuY2lhcyAiCisiZ2VuZXJhZGFzLlxuIgorIiAgLVM8ZGlyZWN0b3Jpby1jb25zdHJ1Y2Npw7NuLXBhcXVldGU+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgQnVzY2EgbGFzIGJpYmxpb3RlY2FzIHJlcXVlcmlkYXMsIGVtcGV6YW5kbyBwb3JcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBlbCBkaXJlY3RvcmlvIGRlIGNvbnN0cnVjY2nDs24gZGVsIHBhcXVldGUuXG4iCisiICAtdiAgICAgICAgICAgICAgICAgICAgICAgQWN0aXZhIGVsIG1vZG8gaW5mb3JtYXRpdm8gKHNlIHB1ZWRlIGludHJvZHVjaXJcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXJpYXMgdmVjZXMpLlxuIgorIiAgLS1pZ25vcmUtbWlzc2luZy1pbmZvICAgIE5vIGRldnVlbHZlIGZhbGxvIHNpIG5vIHNlIHB1ZWRlIGVuY29udHJhciBsYVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlIGRlcGVuZGVuY2lhcy5cbiIKKyIgIC0td2FybmluZ3M9PHZhbG9yPiAgICAgICBEZWZpbmUgZWwgY29uanVudG8gZGUgYWN0aXZvIGRlIGF2aXNvcyAoY29uc3VsdGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBsYSBww6FnaW5hIGRlIG1hbnVhbCkuXG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3RvcmlvPiAgQ2FtYmlhIGVsIGRpcmVjdG9yaW8gYWRtaW5pc3RyYXRpdm8uXG4iCisiICAtaCwgLS1oZWxwICAgICAgICAgICAgICAgTXVlc3RyYSBlc3RlIG1lbnNhamUgZGUgYXl1ZGEuXG4iCisiICAgICAgLS12ZXJzaW9uICAgICAgICAgICAgTXVlc3RyYSBsYSB2ZXJzacOzbi5cbiIKKyJcbiIKKyJTZSByZWNvbm9jZW4gbG9zIHNpZ3VpZW50ZXMgY2FtcG9zIGRlIGRlcGVuZGVuY2lhOlxuIgorIiAgJXNcbiIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo2NzcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiQ2FuJ3QgZXh0cmFjdCBuYW1lIGFuZCB2ZXJzaW9uIGZyb20gbGlicmFyeSBuYW1lIGAlcyciCittc2dzdHIgIiIKKyJObyBzZSBwdWVkZSBleHRyYWVyIGVsIG5vbWJyZSB5IGxhIHZlcnNpw7NuIGRlbCBub21icmUgZGUgbGEgYmlibGlvdGVjYSDCqyVzwrsiCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6Njg0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIHNoYXJlZCBsaWJzIGluZm8gZmlsZSBgJXMnIgorbXNnc3RyICIiCisiTm8gc2UgaGEgcG9kaWRvIGFicmlyIGVsIGZpY2hlcm8gZGUgaW5mb3JtYWNpw7NuIGRlIGJpYmxpb3RlY2FzIGNvbXBhcnRpZGFzICIKKyLCqyVzwrsiCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6NjkwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInNoYXJlZCBsaWJzIGluZm8gZmlsZSBgJXMnIGxpbmUgJWQ6IGJhZCBsaW5lIGAlcyciCittc2dzdHIgIiIKKyJmaWNoZXJvIGRlIGluZm9ybWFjacOzbiBkZSBiaWJsaW90ZWNhcyBjb21wYXJ0aWRhcyDCqyVzwrssIGzDrW5lYSAlZDogbMOtbmVhICIKKyJpbmNvcnJlY3RhIMKrJXPCuyIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo3NDkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IG9wZW4gZmlsZSAlcyIKK21zZ3N0ciAibm8gc2UgaGEgcG9kaWRvIGFicmlyIGVsIGZpY2hlcm8gwqslc8K7IgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjc4MworIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiJE9SSUdJTiBpcyB1c2VkIGluIFJQQVRIIG9mICVzIGFuZCB0aGUgY29ycmVzcG9uZGluZyBkaXJlY3RvcnkgY291bGQgbm90IGJlICIKKyJpZGVudGlmaWVkIGR1ZSB0byBsYWNrIG9mIERFQklBTiBzdWItZGlyZWN0b3J5IGluIHRoZSByb290IG9mIHBhY2thZ2UncyAiCisiYnVpbGQgdHJlZSIKK21zZ3N0ciAiIgorIsKrJE9SSUdJTsK7IHNlIHVzYSBlbiBsYSDCq1JQQVRIwrsgZGUgJXMsIHkgbm8gc2UgcHVkbyBpZGVudGlmaWNhciBlbCBkaXJlY3RvcmlvICIKKyJjb3JyZXNwb25kaWVudGUgZGViaWRvIGEgbGEgZmFsdGEgZGUgdW4gc3ViZGlyZWN0b3JpbyDCq0RFQklBTsK7IGVuIGxhIHJhw616IGRlICIKKyJkZWwgw6FyYm9sIGRlIGNvbnN0cnVjY2nDs24gZGVsIHBhcXVldGUiCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6ODQ4Cittc2dpZCAiZGl2ZXJzaW9ucyBpbnZvbHZlZCAtIG91dHB1dCBtYXkgYmUgaW5jb3JyZWN0IgorbXNnc3RyICJyZWRpcmVjY2lvbmVzIGltcGxpY2FkYXMgLSBwdWVkZSBxdWUgbGEgc2FsaWRhIHNlYSBpbmNvcnJlY3RhIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjg1MAorbXNnaWQgIndyaXRlIGRpdmVyc2lvbiBpbmZvIHRvIHN0ZGVyciIKK21zZ3N0ciAiZXNjcmliaXIgbGEgaW5mb3JtYWNpw7NuIGRlIHJlZGlyZWNjacOzbiBwb3IgbGEgc2FsaWRhIGRlIGVycm9yIGVzdMOhbmRhciIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo4NTQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5rbm93biBvdXRwdXQgZnJvbSBkcGtnIC0tc2VhcmNoOiAnJXMnIgorbXNnc3RyICJsYSBzYWxpZGEgZGUgwqtkcGtnIC0tc2VhcmNowrsgZXMgZGVzY29ub2NpZGE6IMKrJXPCuyIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDoxMDQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgbmVlZHMgYSBkaXJlY3RvcnkiCittc2dzdHIgIiVzIHJlcXVpZXJlIHVuIGRpcmVjdG9yaW8iCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6MTEwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzdGF0IGRpcmVjdG9yeSAlcyIKK21zZ3N0ciAibm8gc2UgcHVkbyBvYnRlbmVyIGVsIGVzdGFkbyAowqtzdGF0wrspIGRlbCBkaXJlY3RvcmlvIMKrJXPCuyIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDoxMTIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZGlyZWN0b3J5IGFyZ3VtZW50ICVzIGlzIG5vdCBhIGRpcmVjdG9yeSIKK21zZ3N0ciAiZWwgYXJndW1lbnRvIGRlIGRpcmVjdG9yaW8gwqslc8K7IG5vIGVzIHVuIGRpcmVjdG9yaW8iCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6MTE3IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo0NzYKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo0Nzggc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjQ4MAorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjQ4MgorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2J6ci5wbToxMTEKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9ienIucG06MTM0CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvYnpyLnBtOjE5OAorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2J6ci5wbToyMDQKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9naXQucG06MTA0CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvZ2l0LnBtOjE0MworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2dpdC5wbToxNTUKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9naXQucG06MTc0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGRpciB0byBgJXMnIgorbXNnc3RyICJubyBzZSBwdWVkZSBlamVjdXRhciBjaGRpciBhIMKrJXPCuyIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDoxMzUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidXNpbmcgb3B0aW9ucyBmcm9tICVzOiAlcyIKK21zZ3N0ciAidXNhbmRvIG9wY2lvbmVzIGRlICVzOiAlcyIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDoxNTAgc2NyaXB0cy9EcGtnL0NvbXByZXNzaW9uLnBtOjE3MworIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgYSBzdXBwb3J0ZWQgY29tcHJlc3Npb24iCittc2dzdHIgIiVzIG5vIGVzIHVuYSBjb21wcmVzacOzbiBjb21wYXRpYmxlIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjE1NiBzY3JpcHRzL0Rwa2cvQ29tcHJlc3Npb24ucG06MjAyCisjOiBzY3JpcHRzL0Rwa2cvQ29tcHJlc3Npb24vUHJvY2Vzcy5wbTo4NgorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgYSBjb21wcmVzc2lvbiBsZXZlbCIKK21zZ3N0ciAiJXMgbm8gZXMgdW4gbml2ZWwgZGUgY29tcHJlc2nDs24iCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6MjE0CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJuZWVkIGEgY29tbWFuZCAoLXgsIC1iLCAtLWJlZm9yZS1idWlsZCwgLS1hZnRlci1idWlsZCwgLS1wcmludC1mb3JtYXQpIgorbXNnaWQgIiIKKyJuZWVkIGEgY29tbWFuZCAoLXgsIC1iLCAtLWJlZm9yZS1idWlsZCwgLS1hZnRlci1idWlsZCwgLS1wcmludC1mb3JtYXQsIC0tIgorImNvbW1pdCkiCittc2dzdHIgIiIKKyJzZSByZXF1aWVyZSB1bmEgb3JkZW4gKC14LCAtYiwgLS1iZWZvcmUtYnVpbGQsIC0tYWZ0ZXItYnVpbGQsIC0tcHJpbnQtZm9ybWF0KSIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDoyMzgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgZG9lc24ndCBjb250YWluIGFueSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgc291cmNlIHBhY2thZ2UiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDoyODMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiYCVzJyBpcyBub3QgYSBsZWdhbCBhcmNoaXRlY3R1cmUgc3RyaW5nIgorbXNnc3RyICLCqyVzwrsgbm8gZXMgdW5hIGNhZGVuYSBkZSBhcnF1aXRlY3R1cmEgbGVnYWwiCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6Mjg2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImFyY2hpdGVjdHVyZSAlcyBvbmx5IGFsbG93ZWQgb24gaXRzIG93biAobGlzdCBmb3IgcGFja2FnZSAlcyBpcyBgJXMnKSIKK21zZ3N0ciAiIgorInPDs2xvIHNlIHBlcm1pdGUgbGEgYXJxdWl0ZWN0dXJhICVzIGN1YW5kbyBuaW5ndW5hIG90cmEgYXBhcmVjZSAobGEgbGlzdGEgZGVsICIKKyJwYXF1ZXRlICVzIGVzIMKrJXPCuykuIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjMwMQorIywgZnV6enksIHBlcmwtZm9ybWF0CisjfCBtc2dpZCAiZGlmZiBgJXMnIGRvZXNuJ3QgY29udGFpbiBhbnkgcGF0Y2giCittc2dpZCAiJXMgZG9lc24ndCBsaXN0IGFueSBiaW5hcnkgcGFja2FnZSIKK21zZ3N0ciAiZWwgZGlmZiDCqyVzwrsgbm8gY29udGllbmUgbmluZ8O6biBwYXJjaGUiCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6MzQzIHNjcmlwdHMvRHBrZy9CdWlsZEZsYWdzLnBtOjI3MAorIzogc2NyaXB0cy9EcGtnL0NvbXByZXNzaW9uL0ZpbGVIYW5kbGUucG06NDAxCisjOiBzY3JpcHRzL0Rwa2cvSW50ZXJmYWNlL1N0b3JhYmxlLnBtOjg3IHNjcmlwdHMvRHBrZy9TaGxpYnMvT2JqZHVtcC5wbToxMjIKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbToyNzcgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjQyNQorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjU2MQorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjExMgorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjI4NgorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjM0OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVhZCAlcyIKK21zZ3N0ciAibm8gc2UgcHVlZGUgbGVlciAlcyIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDozNTAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibm8gc291cmNlIGZvcm1hdCBzcGVjaWZpZWQgaW4gJXMsIHNlZSBkcGtnLXNvdXJjZSgxKSIKK21zZ3N0ciAiIgorIm5vIHNlIGhhIGRlZmluaWRvIHVuIGZvcm1hdG8gZGUgZnVlbnRlcyBlbiDCqyVzwrssIGNvbnN1bHRlIGRwa2ctc291cmNlKDEpIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjM3OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW4ndCBidWlsZCB3aXRoIHNvdXJjZSBmb3JtYXQgJyVzJzogJXMiCittc2dzdHIgIm5vIHNlIHB1ZWRlIGNvbnN0cnVpciBjb24gZWwgZm9ybWF0byBkZSBmdWVudGUgwqslc8K7OiAlcyIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDozODEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidXNpbmcgc291cmNlIGZvcm1hdCBgJXMnIgorbXNnc3RyICJ1c2FuZG8gZWwgZm9ybWF0byBkZSBmdWVudGUgwqslc8K7IgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjM4OCBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MzAxCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MzQ2IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo1NDEKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9ienIucG06MTUyCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvbmF0aXZlLnBtOjg0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImJ1aWxkaW5nICVzIGluICVzIgorbXNnc3RyICJjb25zdHJ1eWVuZG8gJXMgZW4gJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6Mzk5Cittc2dpZCAiLXggbmVlZHMgYXQgbGVhc3Qgb25lIGFyZ3VtZW50LCB0aGUgLmRzYyIKK21zZ3N0ciAiwqsteMK7IHJlcXVpZXJlIGFsIG1lbm9zIHVuIGFyZ3VtZW50bywgZWwgZmljaGVybyDCqy5kc2PCuyIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDo0MDIKK21zZ2lkICIteCB0YWtlcyBubyBtb3JlIHRoYW4gdHdvIGFyZ3VtZW50cyIKK21zZ3N0ciAiwqsteMK7IG5vIGFjZXB0YSBtw6FzIGRlIGRvcyBhcmd1bWVudG9zIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjQwNgorbXNnaWQgIi14IG5lZWRzIHRoZSAuZHNjIGZpbGUgYXMgZmlyc3QgYXJndW1lbnQsIG5vdCBhIGRpcmVjdG9yeSIKK21zZ3N0ciAiIgorIsKrLXjCuyByZXF1aWVyZSBlbCBmaWNoZXJvIMKrLmRzY8K7IGNvbW8gZWwgcHJpbWVyIGFyZ3VtZW50bywgbm8gdW4gZGlyZWN0b3JpbyIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDo0MjIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5wYWNrIHRhcmdldCBleGlzdHM6ICVzIgorbXNnc3RyICJlbCBkZXN0aW5vIGRlIGxvcyBkYXRvcyBkZXNlbXBhcXVldGFkb3MgeWEgZXhpc3RlOiAlcyIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDo0MzIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgZG9lc24ndCBjb250YWluIGEgdmFsaWQgT3BlblBHUCBzaWduYXR1cmUiCittc2dzdHIgIiVzIG5vIGNvbnRpZW5lIHVuYSBmaXJtYSBPcGVuUEdQIHbDoWxpZGEiCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6NDM0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImV4dHJhY3RpbmcgdW5zaWduZWQgc291cmNlIHBhY2thZ2UgKCVzKSIKK21zZ3N0ciAiZXh0cmF5ZW5kbyBlbCBwYXF1ZXRlIGZ1ZW50ZSBzaW4gZmlybWFyICglcykiCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6NDQxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImV4dHJhY3RpbmcgJXMgaW4gJXMiCittc2dzdHIgImV4dHJheWVuZG8gJXMgZW4gJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6NDQ5Cittc2dpZCAib25seSBvbmUgb2YgLXgsIC1iIG9yIC0tcHJpbnQtZm9ybWF0IGFsbG93ZWQsIGFuZCBvbmx5IG9uY2UiCittc2dzdHIgIiIKKyJzw7NsbyBzZSBwZXJtaXRlIHVubyBkZSBlbnRyZSDCqy14wrssIMKrLWLCuyBvIMKrLS1wcmludC1mb3JtYXTCuyBhIGxhIHZleiwgeSBzw7NsbyAiCisicHVlZGUgYXBhcmVjZXIgdW5hIHZleiIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDo0NTcKK21zZ2lkICIiCisiXG4iCisiQ29weXJpZ2h0IChDKSAxOTk2IElhbiBKYWNrc29uXG4iCisiQ29weXJpZ2h0IChDKSAxOTk3IEtsZWUgRGllbmVzXG4iCisiQ29weXJpZ2h0IChDKSAyMDA4IFJhcGhhZWwgSGVydHpvZyIKK21zZ3N0ciAiIgorIlxuIgorIkNvcHlyaWdodCAoQykgMTk5NiBJYW4gSmFja3NvblxuIgorIkNvcHlyaWdodCAoQykgMTk5NyBLbGVlIERpZW5lc1xuIgorIkNvcHlyaWdodCAoQykgMjAwOCBSYXBoYWVsIEhlcnR6b2ciCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6NDcwCisjLCBmdXp6eSwgcGVybC1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIDxjb21tYW5kPlxuIgorI3wgIlxuIgorI3wgIkNvbW1hbmRzOlxuIgorI3wgIiAgLXggPGZpbGVuYW1lPi5kc2MgWzxvdXRwdXQtZGlyPl1cbiIKKyN8ICIgICAgICAgICAgICAgICAgICAgICAgICAgICBleHRyYWN0IHNvdXJjZSBwYWNrYWdlLlxuIgorI3wgIiAgLWIgPGRpcj4gICAgICAgICAgICAgICAgIGJ1aWxkIHNvdXJjZSBwYWNrYWdlLlxuIgorI3wgIiAgLS1wcmludC1mb3JtYXQgPGRpcj4gICAgIHByaW50IHRoZSBzb3VyY2UgZm9ybWF0IHRoYXQgd291bGQgYmVcbiIKKyN8ICIgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2VkIHRvIGJ1aWxkIHRoZSBzb3VyY2UgcGFja2FnZS4iCittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSA8Y29tbWFuZD5cbiIKKyJcbiIKKyJDb21tYW5kczpcbiIKKyIgIC14IDxmaWxlbmFtZT4uZHNjIFs8b3V0cHV0LWRpcj5dXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgZXh0cmFjdCBzb3VyY2UgcGFja2FnZS5cbiIKKyIgIC1iIDxkaXI+ICAgICAgICAgICAgICAgICBidWlsZCBzb3VyY2UgcGFja2FnZS5cbiIKKyIgIC0tcHJpbnQtZm9ybWF0IDxkaXI+ICAgICBwcmludCB0aGUgc291cmNlIGZvcm1hdCB0aGF0IHdvdWxkIGJlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlZCB0byBidWlsZCB0aGUgc291cmNlIHBhY2thZ2UuXG4iCisiICAtLWNvbW1pdCBbPGRpcj4gWzxwYXRjaC1uYW1lPl1dXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RvcmUgdXBzdHJlYW0gY2hhbmdlcyBpbiBhIG5ldyBwYXRjaC4iCittc2dzdHIgIiIKKyJVc286ICVzIFs8b3BjacOzbj4gLi4uXSA8b3JkZW4+XG4iCisiXG4iCisiT3JkZW5lczpcbiIKKyIgIC14IDxmaWNoZXJvPi5kc2MgWzxkaXJlY3RvcmlvLWRlLXNhbGlkYT5dXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgRXh0cmFlIGVsIHBhcXVldGUgZnVlbnRlLlxuIgorIiAgLWIgPGRpcmVjdG9yaW8+ICAgICAgICAgIENvbnN0cnV5ZSBlbCBwYXF1ZXRlIGZ1ZW50ZS5cbiIKKyIgIC0tcHJpbnQtZm9ybWF0IDxkaXI+ICAgICBNdWVzdHJhIGVsIGZvcm1hdG8gZGUgZnVlbnRlIGEgdXNhclxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhcmEgY29uc3RydWlyIGVsIHBhcXVldGUgZnVlbnRlLiIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDo0ODEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIkJ1aWxkIG9wdGlvbnM6XG4iCisiICAtYzxjb250cm9sZmlsZT4gICAgICAgICAgZ2V0IGNvbnRyb2wgaW5mbyBmcm9tIHRoaXMgZmlsZS5cbiIKKyIgIC1sPGNoYW5nZWxvZ2ZpbGU+ICAgICAgICBnZXQgcGVyLXZlcnNpb24gaW5mbyBmcm9tIHRoaXMgZmlsZS5cbiIKKyIgIC1GPGNoYW5nZWxvZ2Zvcm1hdD4gICAgICBmb3JjZSBjaGFuZ2UgbG9nIGZvcm1hdC5cbiIKKyIgIC1WPG5hbWU+PTx2YWx1ZT4gICAgICAgICBzZXQgYSBzdWJzdGl0dXRpb24gdmFyaWFibGUuXG4iCisiICAtVDx2YXJsaXN0ZmlsZT4gICAgICAgICAgcmVhZCB2YXJpYWJsZXMgaGVyZS5cbiIKKyIgIC1EPGZpZWxkPj08dmFsdWU+ICAgICAgICBvdmVycmlkZSBvciBhZGQgYSAuZHNjIGZpZWxkIGFuZCB2YWx1ZS5cbiIKKyIgIC1VPGZpZWxkPiAgICAgICAgICAgICAgICByZW1vdmUgYSBmaWVsZC5cbiIKKyIgIC1xICAgICAgICAgICAgICAgICAgICAgICBxdWlldCBtb2RlLlxuIgorIiAgLWlbPHJlZ2V4cD5dICAgICAgICAgICAgIGZpbHRlciBvdXQgZmlsZXMgdG8gaWdub3JlIGRpZmZzIG9mXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZGVmYXVsdHMgdG86ICclcycpLlxuIgorIiAgLUlbPHBhdHRlcm4+XSAgICAgICAgICAgIGZpbHRlciBvdXQgZmlsZXMgd2hlbiBidWlsZGluZyB0YXJiYWxsc1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGRlZmF1bHRzIHRvOiAlcykuXG4iCisiICAtWjxjb21wcmVzc2lvbj4gICAgICAgICAgc2VsZWN0IGNvbXByZXNzaW9uIHRvIHVzZSAoZGVmYXVsdHMgdG8gJyVzJyxcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN1cHBvcnRlZCBhcmU6ICVzKS5cbiIKKyIgIC16PGxldmVsPiAgICAgICAgICAgICAgICBjb21wcmVzc2lvbiBsZXZlbCB0byB1c2UgKGRlZmF1bHRzIHRvICclZCcsXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdXBwb3J0ZWQgYXJlOiAnMSctJzknLCAnYmVzdCcsICdmYXN0JykiCittc2dzdHIgIiIKKyJPcGNpb25lcyBkZSBjb25zdHJ1Y2Npw7NuOlxuIgorIiAgLWM8ZmljaGVyby1jb250cm9sPiAgICAgIE9idGllbmUgbGEgaW5mb3JtYWNpw7NuIGRlIGNvbnRyb2wgZGUgZXN0ZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpY2hlcm8uXG4iCisiICAtbDxmaWNoZXJvLWNoYW5nZWxvZz4gICAgT2J0aWVuZSBsYSBpbmZvcm1hY2nDs24gZGUgbGEgdmVyc2nDs24gZGUgZXN0ZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpY2hlcm8uXG4iCisiICAtRjxmb3JtYXRvLXJlZ2lzdHJvPiAgICAgRnVlcnphIGVsIGZvcm1hdG8gZGVsIHJlZ2lzdHJvIGRlIGNhbWJpb3MuXG4iCisiICAtVjxub21icmU+PTx2YWxvcj4gICAgICAgRGVmaW5lIHVuYSB2YXJpYWJsZSBkZSBzdXN0aXR1Y2nDs24uXG4iCisiICAtVDxmaWNoZXJvLWxpc3RhLXZhcj4gICAgTGVlIGxhcyB2YXJpYWJsZXMgZGUgZXN0ZSBmaWNoZXJvLlxuIgorIiAgLUQ8Y2FtcG8+PTx2YWxvcj4gICAgICAgIFN1c3RpdHV5ZSBvIGHDsWFkZSB1biBjYW1wbyDCqy5kc2PCuyB5IGVsIHZhbG9yLlxuIgorIiAgLVU8Y2FtcG8+ICAgICAgICAgICAgICAgIEVsaW1pbmEgdW4gY2FtcG8uXG4iCisiICAtcSAgICAgICAgICAgICAgICAgICAgICAgTW9kbyBzaWxlbmNpb3NvLlxuIgorIiAgLWlbPGV4cHJlc2nDs24tcmVndWxhcj5dICBGaWx0cmEgZmljaGVyb3MgYSBpZ25vcmFyIGVuIGxvcyDCq2RpZmbCu1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHBvciBvbWlzacOzbjogwqslc8K7KS5cbiIKKyIgIC1JWzxwYXRyw7NuPl0gICAgICAgICAgICAgT21pdGUgZmljaGVyb3MgYWwgY29uc3RydWlyIGFyY2hpdm9zIHRhclxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHBvciBvbWlzacOzbjogJXMpLlxuIgorIiAgLVo8Y29tcHJlc2nDs24+ICAgICAgICAgIFNlbGVjY2lvbmEgbGEgY29tcHJlc2nDs24gYSB1c2FyIChwb3Igb21pc2nDs24gIgorIiclcycsXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhY2VwdGFkb3M6ICVzKS5cbiIKKyIgIC16PG5pdmVsPiAgICAgICAgICAgICAgICBOaXZlbCBkZSBjb21wcmVzacOzbiBhIHVzYXIgKHBvciBvbWlzacOzbiwgJyVkJyxcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFjZXB0YWRvczogJzEnLSc5JywgJ2Jlc3QnLCAnZmFzdCcpIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjQ5OQorbXNnaWQgIiIKKyJFeHRyYWN0IG9wdGlvbnM6XG4iCisiICAtLW5vLWNvcHkgICAgICAgICAgICAgICAgZG9uJ3QgY29weSAub3JpZyB0YXJiYWxsc1xuIgorIiAgLS1uby1jaGVjayAgICAgICAgICAgICAgIGRvbid0IGNoZWNrIHNpZ25hdHVyZSBhbmQgY2hlY2tzdW1zIGJlZm9yZSAiCisidW5wYWNraW5nXG4iCisiICAtLXJlcXVpcmUtdmFsaWQtc2lnbmF0dXJlIGFib3J0IGlmIHRoZSBwYWNrYWdlIGRvZXNuJ3QgaGF2ZSBhIHZhbGlkICIKKyJzaWduYXR1cmUiCittc2dzdHIgIiIKKyJPcGNpb25lcyBkZSBleHRyYWNjacOzbjpcbiIKKyIgIC0tbm8tY29weSAgICAgICAgICAgICAgICBObyBjb3BpYSBhcmNoaXZvcyB0YXIgwqsub3JpZ8K7LlxuIgorIiAgLS1uby1jaGVjayAgICAgICAgICAgICAgIE5vIGNvbXBydWViYSBsYSBmaXJtYSB5IGxhcyBzdW1hcyBkZSBjb250cm9sXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgYW50ZXMgZGUgZGVzZW1wYXF1ZXRhclxuIgorIiAgLS1yZXF1aXJlLXZhbGlkLXNpZ25hdHVyZSBDYW5jZWxhIHNpIGVsIHBhcXVldGUgbm8gdGllbmUgdW5hIGZpcm1hIHbDoWxpZGEuIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjUwNAorbXNnaWQgIiIKKyJHZW5lcmFsIG9wdGlvbnM6XG4iCisiICAtaCwgLS1oZWxwICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgICAgICAtLXZlcnNpb24gICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLiIKK21zZ3N0ciAiIgorIk9wY2lvbmVzIGdlbmVyYWxlczpcbiIKKyIgIC1oLCAtLWhlbHAgICAgICAgICAgICAgICBNdWVzdHJhIGVzdGUgbWVuc2FqZSBkZSBheXVkYS5cbiIKKyIgICAgICAtLXZlcnNpb24gICAgICAgICAgICBNdWVzdHJhIGxhIHZlcnNpw7NuLiIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDo1MDgKK21zZ2lkICIiCisiTW9yZSBvcHRpb25zIGFyZSBhdmFpbGFibGUgYnV0IHRoZXkgZGVwZW5kIG9uIHRoZSBzb3VyY2UgcGFja2FnZSBmb3JtYXQuXG4iCisiU2VlIGRwa2ctc291cmNlKDEpIGZvciBtb3JlIGluZm8uIgorbXNnc3RyICIiCisiRGlzcG9uZSBkZSBtw6FzIG9wY2lvbmVzLCBwZXJvIGRlcGVuZGVuIGRlbCBmb3JtYXRvIGRlIHBhcXVldGUgZnVlbnRlLlxuIgorIlBhcmEgbcOhcyBpbmZvcm1hY2nDs24gY29uc3VsdGUgZHBrZy1zb3VyY2UoMSkuIgorCisjOiBzY3JpcHRzL2NoYW5nZWxvZy9kZWJpYW4ucGw6MzYKK21zZ2lkICIiCisiXG4iCisiQ29weXJpZ2h0IChDKSAxOTk2IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwNSwyMDA3IEZyYW5rIExpY2h0ZW5oZWxkLiIKK21zZ3N0ciAiIgorIlxuIgorIkNvcHlyaWdodCAoQykgMTk5NiBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDUsMjAwNyBGcmFuayBMaWNodGVuaGVsZC4iCisKKyM6IHNjcmlwdHMvY2hhbmdlbG9nL2RlYmlhbi5wbDo0NworIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPi4uLl0gWzxjaGFuZ2Vsb2dmaWxlPl1cbiIKKyJcbiIKKyJPcHRpb25zOlxuIgorIiAgICAtLWhlbHAsIC1oICAgICAgICAgICAgICAgICAgcHJpbnQgdXNhZ2UgaW5mb3JtYXRpb25cbiIKKyIgICAgLS12ZXJzaW9uLCAtViAgICAgICAgICAgICAgIHByaW50IHZlcnNpb24gaW5mb3JtYXRpb25cbiIKKyIgICAgLS1sYWJlbCwgLWwgPGZpbGU+ICAgICAgICAgIG5hbWUgb2YgdGhlIGNoYW5nZWxvZyBmaWxlIHRvXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2UgaW4gZXJyb3IgbWVzc2FnZXNcbiIKKyIgICAgLS1maWxlIDxmaWxlPiAgICAgICAgICAgICAgIGNoYW5nZWxvZyBmaWxlIHRvIHBhcnNlLCBkZWZhdWx0c1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG8gJy0nIChzdGFuZGFyZCBpbnB1dClcbiIKKyIgICAgLS1mb3JtYXQgPG91dHB1dGZvcm1hdD4gICAgIHNlZSBtYW4gcGFnZSBmb3IgbGlzdCBvZiBhdmFpbGFibGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG91dHB1dCBmb3JtYXRzLCBkZWZhdWx0cyB0byAnZHBrZydcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvciBjb21wYXRpYmlsaXR5IHdpdGggZHBrZy1kZXZcbiIKKyIgICAgLS1zaW5jZSwgLXMsIC12IDx2ZXJzaW9uPiAgIGluY2x1ZGUgYWxsIGNoYW5nZXMgbGF0ZXIgdGhhbiB2ZXJzaW9uXG4iCisiICAgIC0tdW50aWwsIC11IDx2ZXJzaW9uPiAgICAgICBpbmNsdWRlIGFsbCBjaGFuZ2VzIGVhcmxpZXIgdGhhbiB2ZXJzaW9uXG4iCisiICAgIC0tZnJvbSwgLWYgPHZlcnNpb24+ICAgICAgICBpbmNsdWRlIGFsbCBjaGFuZ2VzIGVxdWFsIG9yIGxhdGVyXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGFuIHZlcnNpb25cbiIKKyIgICAgLS10bywgLXQgPHZlcnNpb24+ICAgICAgICAgIGluY2x1ZGUgYWxsIGNoYW5nZXMgdXAgdG8gb3IgZXF1YWxcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoYW4gdmVyc2lvblxuIgorIiAgICAtLWNvdW50LCAtYywgLW4gPG51bWJlcj4gICAgaW5jbHVkZSA8bnVtYmVyPiBlbnRyaWVzIGZyb20gdGhlIHRvcFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG9yIHRoZSB0YWlsIGlmIDxudW1iZXI+IGlzIGxvd2VyIHRoYW4gMClcbiIKKyIgICAgLS1vZmZzZXQsIC1vIDxudW1iZXI+ICAgICAgIGNoYW5nZSB0aGUgc3RhcnRpbmcgcG9pbnQgZm9yIC0tY291bnQsXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb3VudGVkIGZyb20gdGhlIHRvcCAob3IgdGhlIHRhaWwgaWZcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxudW1iZXI+IGlzIGxvd2VyIHRoYW4gMClcbiIKKyIgICAgLS1hbGwgICAgICAgICAgICAgICAgICAgICAgIGluY2x1ZGUgYWxsIGNoYW5nZXNcbiIKK21zZ3N0ciAiIgorIlVzbzogJXMgWzxvcGNpw7NuPi4uLl0gWzxmaWNoZXJvLXJlZ2lzdHJvLWRlLWNhbWJpb3M+XVxuIgorIlxuIgorIk9wY2lvbmVzOlxuIgorIiAgICAtLWhlbHAsIC1oICAgICAgICAgICAgICAgICAgTXVlc3RyYSBsYSBpbmZvcm1hY2nDs24gZGUgdXNvLlxuIgorIiAgICAtLXZlcnNpb24sIC1WICAgICAgICAgICAgICAgTXVlc3RyYSBsYSBpbmZvcm1hY2nDs24gZGUgbGEgdmVyc2nDs24uXG4iCisiICAgIC0tbGFiZWwsIC1sIDxmaWNoZXJvPiAgICAgICBOb21icmUgZGVsIGZpY2hlcm8gZGUgcmVnaXN0cm8gZGUgY2FtYmlvcyBhXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2FyIHBhcmEgbG9zIG1lbnNhamVzIGRlIGVycm9yLlxuIgorIiAgICAtLWZpbGUgPGZpY2hlcm8+ICAgICAgICAgICAgRmljaGVybyBkZSByZWdpc3RybyBkZSBjYW1iaW9zIGEgYW5hbGl6YXIsXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3Igb21pc2nDs24sIMKrLcK7IChlbnRyYWRhIGVzdMOhbmRhcikuXG4iCisiICAgIC0tZm9ybWF0IDxmb3JtYXRvLXNhbGlkYT4gICBDb25zdWx0ZSBsYSBww6FnaW5hIGRlIG1hbnVhbCBwYXJhIHVuYSBsaXN0YVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGUgbG9zIGZvcm1hdG9zIGRlIHNhbGlkYSwgcG9yIG9taXNpw7NuLFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2Rwa2cnLCBwYXJhIGxhIGNvbXBhdGliaWxpZGFkIGNvbiBkcGtnLSIKKyJkZXYuXG4iCisiICAgIC0tc2luY2UsIC1zLCAtdiA8dmVyc2nDs24+ICAgSW5jbHV5ZSB0b2RvcyBsb3MgY2FtYmlvcyBwb3N0ZXJpb3JlcyBhIGxhXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2ZXJzacOzbi5cbiIKKyIgICAgLS11bnRpbCwgLXUgPHZlcnNpw7NuPiAgICAgICBJbmNsdXllIHRvZG9zIGxvcyBjYW1iaW9zIGFudGVyaW9yZXMgYSBsYVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmVyc2nDs24uXG4iCisiICAgIC0tZnJvbSwgLWYgPHZlcnNpw7NuPiAgICAgICAgSW5jbHV5ZSBsb3MgY2FtYmlvcyBpZ3VhbGVzIHkgcG9zdGVyaW9yZXNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGEgbGEgdmVyc2nDs25cbiIKKyIgICAgLS10bywgLXQgPHZlcnNpw7NuPiAgICAgICAgICBJbmNsdXllIHRvZG9zIGxvcyBjYW1iaW9zIGhhc3RhIGxhIHZlcnNpw7NuLFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5jbHVzaXZlLlxuIgorIiAgICAtLWNvdW50LCAtYywgLW4gPG7Dum1lcm8+ICAgIEluY2x1eWUgdW4gPG7Dum1lcm8+IGRlIGVudHJhZGFzIGRlc2RlIGVsXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcmluY2lwaW8gKG8gZWwgZmluYWwsIHNpIGVsIDxuw7ptZXJvPiBlc1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWVub3IgcXVlIGNlcm8pLlxuIgorIiAgICAtLW9mZnNldCwgLW8gPG7Dum1lcm8+ICAgICAgIENhbWJpYSBlbCBwdW50byBpbmljaWFsIGRlIMKrLS1jb3VudMK7LFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGFuZG8gZGVzZGUgZWwgcHJpbmNpcGlvIChvIGVsIGZpbmFsIHNpXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbCA8bsO6bWVybz4gZXMgbWVub3IgcXVlIGNlcm8pLlxuIgorIiAgICAtLWFsbCAgICAgICAgICAgICAgICAgICAgICAgSW5jbHV5ZSB0b2RvcyBsb3MgY2FtYmlvcy5cbiIKKworIzogc2NyaXB0cy9jaGFuZ2Vsb2cvZGViaWFuLnBsOjg2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIm91dHB1dCBmb3JtYXQgJXMgbm90IHN1cHBvcnRlZCIKK21zZ3N0ciAiZWwgZm9ybWF0byBkZSBzYWxpZGEgwqslc8K7IG5vIGVzIGNvbXBhdGlibGUiCisKKyM6IHNjcmlwdHMvY2hhbmdlbG9nL2RlYmlhbi5wbDoxMTEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibW9yZSB0aGFuIG9uZSBmaWxlIHNwZWNpZmllZCAoJXMgYW5kICVzKSIKK21zZ3N0ciAic2UgaGEgZGVmaW5pZG8gbcOhcyBkZSB1biBmaWNoZXJvICglcyB5ICVzKSIKKworIzogc2NyaXB0cy9jaGFuZ2Vsb2cvZGViaWFuLnBsOjEzNSBzY3JpcHRzL0Rwa2cvSW50ZXJmYWNlL1N0b3JhYmxlLnBtOjg0Cittc2dpZCAiPHN0YW5kYXJkIGlucHV0PiIKK21zZ3N0ciAiPGVudHJhZGEgZXN0w6FuZGFyPiIKKworIzogc2NyaXB0cy9jaGFuZ2Vsb2cvZGViaWFuLnBsOjEzNgorbXNnaWQgImZhdGFsIGVycm9yIG9jY3VycmVkIHdoaWxlIHBhcnNpbmcgaW5wdXQiCittc2dzdHIgInNlIGhhIGRldGVjdGFkbyB1biBlcnJvciBmYXRhbCBhbCBhbmFsaXphciBsYSBlbnRyYWRhIgorCisjOiBzY3JpcHRzL2NoYW5nZWxvZy9kZWJpYW4ucGw6MTM5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImZhdGFsIGVycm9yIG9jY3VycmVkIHdoaWxlIHBhcnNpbmcgJXMiCittc2dzdHIgInNlIGhhIGRldGVjdGFkbyB1biBlcnJvciBmYXRhbCBhbCBhbmFsaXphciAlcyIKKworIzogc2NyaXB0cy9EcGtnL0FyY2gucG06ODYKK21zZ2lkICIiCisiQ291bGRuJ3QgZGV0ZXJtaW5lIGdjYyBzeXN0ZW0gdHlwZSwgZmFsbGluZyBiYWNrIHRvIGRlZmF1bHQgKG5hdGl2ZSAiCisiY29tcGlsYXRpb24pIgorbXNnc3RyICIiCisiTm8gc2UgaGEgcG9kaWRvIGRldGVybWluYXIgZWwgdGlwbyBkZSBzaXN0ZW1hIGRlIGdjYywgdXNhbmRvIGVsIHByZWRlZmluaWRvLCAiCisiKGNvbXBpbGFjacOzbiBuYXRpdmEpLiIKKworIzogc2NyaXB0cy9EcGtnL0FyY2gucG06OTUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIlVua25vd24gZ2NjIHN5c3RlbSB0eXBlICVzLCBmYWxsaW5nIGJhY2sgdG8gZGVmYXVsdCAobmF0aXZlIGNvbXBpbGF0aW9uKSIKK21zZ3N0ciAiIgorIkVsIHRpcG8gZGUgc2lzdGVtYSBnY2MgJXMgZXMgZGVzY29ub2NpZG8sIHVzYW5kbyBlbCBwcmVkZWZpbmlkbyAoY29tcGlsYWNpw7NuICIKKyJuYXRpdmEpIgorCisjOiBzY3JpcHRzL0Rwa2cvQnVpbGRGbGFncy5wbToyNzgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibGluZSAlZCBvZiAlcyBtZW50aW9ucyB1bmtub3duIGZsYWcgJXMiCittc2dzdHIgImxhIGzDrW5lYSAlZCBlbiAlcyBtZW5jaW9uYSB1bmEgb3BjacOzbiBkZXNjb25vY2lkYSAlcyIKKworIzogc2NyaXB0cy9EcGtnL0J1aWxkRmxhZ3MucG06MjkxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImxpbmUgJWQgb2YgJXMgaXMgaW52YWxpZCwgaXQgaGFzIGJlZW4gaWdub3JlZC4iCittc2dzdHIgImxhIGzDrW5lYSAlZCBkZSAlcyBlcyBpbnbDoWxpZGEsIHNlIGhhIGlnbm9yYWRvIgorCisjOiBzY3JpcHRzL0Rwa2cvQnVpbGRPcHRpb25zLnBtOjk0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImludmFsaWQgZmxhZyBpbiAlczogJXMiCittc2dzdHIgInNlIGhhIGRldGVjdGFkbyB1bmEgb3BjacOzbiBpbnbDoWxpZGEgZW4gJXM6ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29tcHJlc3Npb24vUHJvY2Vzcy5wbTo3MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgYSBzdXBwb3J0ZWQgY29tcHJlc3Npb24gbWV0aG9kIgorbXNnc3RyICIlcyBubyBlcyB1biBtw6l0b2RvIGRlIGNvbXByZXNpw7NuIGFjZXB0YWRvIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29tcHJlc3Npb24vUHJvY2Vzcy5wbToxMjIKK21zZ2lkICJEcGtnOjpDb21wcmVzc2lvbjo6UHJvY2VzcyBjYW4gb25seSBzdGFydCBvbmUgc3VicHJvY2VzcyBhdCBhIHRpbWUiCittc2dzdHIgIiIKKyLCq0Rwa2c6OkNvbXByZXNzaW9uOjpQcm9jZXNzwrsgc8OzbG8gcHVlZGUgaW5pY2lhciB1biAgcHJvY2VzbyBzZWN1bmRhcmlvIGEgbGEgIgorInZleiIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbToxNzEgc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbToxNzMKKyM6IHNjcmlwdHMvRHBrZy9FcnJvckhhbmRsaW5nLnBtOjU5Cittc2dpZCAid2FybmluZyIKK21zZ3N0ciAiYXZpc28iCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06MTcxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyIlcyhsJXMpOiAlc1xuIgorIkxJTkU6ICVzIgorbXNnc3RyICIiCisiJXMobCVzKTogJXNcbiIKKyJMw41ORUE6ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtOjE3MworIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyhsJXMpOiAlcyIKK21zZ3N0ciAiJXMobCVzKTogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06MjIxCittc2dpZCAiJ29mZnNldCcgd2l0aG91dCAnY291bnQnIGhhcyBubyBlZmZlY3QiCittc2dzdHIgIsKrb2Zmc2V0wrsgc2luIMKrY291bnTCuyBubyB0aWVuZSBlZmVjdG8iCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06MjI5Cittc2dpZCAieW91IGNhbid0IGNvbWJpbmUgJ2NvdW50JyBvciAnb2Zmc2V0JyB3aXRoIGFueSBvdGhlciByYW5nZSBvcHRpb24iCittc2dzdHIgIiIKKyJubyBzZSBwdWVkZSBjb21iaW5hciDCq2NvdW50wrsgdSDCq29mZnNldMK7IGNvbiBjdWFscXVpZXIgb3RyYSBvcGNpw7NuIGRlIHJhbmdvIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtOjIzNworbXNnaWQgInlvdSBjYW4gb25seSBzcGVjaWZ5IG9uZSBvZiAnZnJvbScgYW5kICdzaW5jZScsIHVzaW5nICdzaW5jZSciCittc2dzdHIgInPDs2xvIHB1ZWRlIGRlZmluaXIgbyBiaWVuIMKrZnJvbcK7IG8gwqtzaW5jZcK7LCB1c2FuZG8gwqtzaW5jZcK7IgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtOjI0MgorbXNnaWQgInlvdSBjYW4gb25seSBzcGVjaWZ5IG9uZSBvZiAndG8nIGFuZCAndW50aWwnLCB1c2luZyAndW50aWwnIgorbXNnc3RyICJzw7NsbyBwdWVkZSBkZWZpbmlyIG8gYmllbiDCq3RvwrsgbyDCq3VudGlswrssIHVzYW5kbyDCq3VudGlswrsiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06MjU0IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06MjcwCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtOjI4NiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtOjMwMgorIywgcGVybC1mb3JtYXQKK21zZ2lkICInJXMnIG9wdGlvbiBzcGVjaWZpZXMgbm9uLWV4aXN0aW5nIHZlcnNpb24iCittc2dzdHIgImxhIG9wY2nDs24gwqslc8K7IGRlZmluZSB1biB2ZXJzacOzbiBxdWUgbm8gZXhpc3RlIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtOjI1NSBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtOjMwMworbXNnaWQgInVzZSBuZXdlc3QgZW50cnkgdGhhdCBpcyBlYXJsaWVyIHRoYW4gdGhlIG9uZSBzcGVjaWZpZWQiCittc2dzdHIgInVzZSBsYSBlbnRyYWRhIG3DoXMgcmVjaWVudGUgcXVlIHNlYSBhbnRpZ3VhIHF1ZSBsYSBxdWUgc2UgaGEgZGVmaW5pZG8iCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06MjY0Cittc2dpZCAibm9uZSBmb3VuZCwgc3RhcnRpbmcgZnJvbSB0aGUgb2xkZXN0IGVudHJ5IgorbXNnc3RyICJubyBzZSBoYSBlbmNvbnRyYWRvIG5hZGEsIGluaWNpYW5kbyBkZXNkZSBsYSBlbnRyYWRhIG3DoXMgYW50aWd1YSIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbToyNzEgc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbToyODcKK21zZ2lkICJ1c2Ugb2xkZXN0IGVudHJ5IHRoYXQgaXMgbGF0ZXIgdGhhbiB0aGUgb25lIHNwZWNpZmllZCIKK21zZ3N0ciAidXNhciBsYSBlbnRyYWRhIG3DoXMgYW50aWd1YSBxdWUgZXMgcG9zdGVyaW9yIGEgbGEgcXVlIHNlIGhhIGRlZmluaWRvIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtOjI4MSBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtOjI5NworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbTozMTIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibm8gc3VjaCBlbnRyeSBmb3VuZCwgaWdub3JpbmcgJyVzJyBwYXJhbWV0ZXIiCittc2dzdHIgIm5vIHNlIGhhIGVuY29udHJhZG8gZXNhIGVudHJhZGEsIGlnbm9yYW5kbyBlbCBwYXLDoW1ldHJvIMKrJXPCuyIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbTozMTgKK21zZ2lkICInc2luY2UnIG9wdGlvbiBzcGVjaWZpZXMgbW9zdCByZWNlbnQgdmVyc2lvbiwgaWdub3JpbmciCittc2dzdHIgImxhIG9wY2nDs24gwqtzaW5jZcK7IGRlZmluZSBsYSB2ZXJzacOzbiBtw6FzIHJlY2llbnRlLCBvbWl0aWVuZG8iCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06MzIyCittc2dpZCAiJ3VudGlsJyBvcHRpb24gc3BlY2lmaWVzIG9sZGVzdCB2ZXJzaW9uLCBpZ25vcmluZyIKK21zZ3N0ciAibGEgb3BjacOzbiDCq3VudGlswrsgZGVmaW5lIGxhIHZlcnNpw7NuIG3DoXMgYW50aWd1YSwgb21pdGllbmRvIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0RlYmlhbi5wbTo1NAorbXNnaWQgImZpcnN0IGhlYWRpbmciCittc2dzdHIgInByaW1lcmEgY2FiZWNlcmEiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRGViaWFuLnBtOjU1Cittc2dpZCAibmV4dCBoZWFkaW5nIG9yIGVvZiIKK21zZ3N0ciAic2lndWllbnRlIGNhYmVjZXJhIG8gZmluIGRlIGzDrW5lYSIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9EZWJpYW4ucG06NTYKK21zZ2lkICJzdGFydCBvZiBjaGFuZ2UgZGF0YSIKK21zZ3N0ciAicHJpbmNpcGlvIGRlIGxvcyBkYXRvcyBkZSBjYW1iaW9zIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0RlYmlhbi5wbTo1NworbXNnaWQgIm1vcmUgY2hhbmdlIGRhdGEgb3IgdHJhaWxlciIKK21zZ3N0ciAibcOhcyBjYW1iaW9zIGRlIGRhdG9zIG8gbMOtbmVhIGRlIHNlcGFyYWNpw7NuICjCq3RyYWlsZXLCuykiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRGViaWFuLnBtOjg5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImZvdW5kIHN0YXJ0IG9mIGVudHJ5IHdoZXJlIGV4cGVjdGVkICVzIgorbXNnc3RyICJzZSBoYSBlbmNvbnRyYWRvIGVsIHByaW5jaXBpbyBkZSB1bmEgZW50cmFkYSBkb25kZSBzZSBlc3BlcmFiYSAlcyIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9EZWJpYW4ucG06MTI2Cittc2dpZCAiYmFkbHkgZm9ybWF0dGVkIGhlYWRpbmcgbGluZSIKK21zZ3N0ciAibGEgbMOtbmVhIGRlIGNhYmVjZXJhIHRpZW5lIHVuIGZvcm1hdG8gaW52w6FsaWRvIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0RlYmlhbi5wbToxMzAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZm91bmQgdHJhaWxlciB3aGVyZSBleHBlY3RlZCAlcyIKK21zZ3N0ciAic2UgZW5jb250csOzIHVuYSBsw61uZWEgZGUgc2VwYXJhY2nDs24gKMKrdHJhaWxlcsK7KSBkb25kZSBzZSBlc3BlcmFiYSAlcyIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9EZWJpYW4ucG06MTQwCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0VudHJ5L0RlYmlhbi5wbToxNDkKK21zZ2lkICJiYWRseSBmb3JtYXR0ZWQgdHJhaWxlciBsaW5lIgorbXNnc3RyICIiCisic2UgaGEgZGV0ZWN0YWRvIHVuYSBsw61uZWEgZGUgc2VwYXJhY2nDs24gKMKrdHJhaWxlcsK7KSBjb24gZm9ybWF0byBpbnbDoWxpZG8iCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRGViaWFuLnBtOjE0MworIywgcGVybC1mb3JtYXQKK21zZ2lkICJmb3VuZCBjaGFuZ2UgZGF0YSB3aGVyZSBleHBlY3RlZCAlcyIKK21zZ3N0ciAic2UgaGFuIGVuY29udHJhZG8gZGF0b3MgZGUgY2FtYmlvcyBkb25kZSBzZSBlc3BlcmFiYSAlcyIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9EZWJpYW4ucG06MTY1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImZvdW5kIGJsYW5rIGxpbmUgd2hlcmUgZXhwZWN0ZWQgJXMiCittc2dzdHIgInNlIGhhIGVuY29udHJhZG8gdW5hIGzDrW5lYSBlbiBibGFuY28gZG9uZGUgc2UgZXNwZXJhYmEgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRGViaWFuLnBtOjE2OQorbXNnaWQgInVucmVjb2duaXNlZCBsaW5lIgorbXNnc3RyICJsw61uZWEgbm8gcmVjb25vY2lkYSIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9EZWJpYW4ucG06MTgwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImZvdW5kIGVvZiB3aGVyZSBleHBlY3RlZCAlcyIKK21zZ3N0ciAic2UgaGEgZW5jb250cmFkbyB1biBmaW4gZGUgbMOtbmVhIGRvbmRlIHNlIGVzcGVyYWJhICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0VudHJ5L0RlYmlhbi5wbToxMjIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiYmFkIGtleS12YWx1ZSBhZnRlciBgOyc6IGAlcyciCittc2dzdHIgImVsIHZhbG9yIGRlIGxhIGNsYXZlIGRlc3B1w6lzIGRlIMKrO8K7IGVzIGludsOhbGlkYTogwqslc8K7IgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0VudHJ5L0RlYmlhbi5wbToxMjcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAicmVwZWF0ZWQga2V5LXZhbHVlICVzIgorbXNnc3RyICJlbCB2YWxvciBkZSBjbGF2ZSAlcyBlc3TDoSByZXBldGlkYSIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9FbnRyeS9EZWJpYW4ucG06MTMxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImJhZGx5IGZvcm1hdHRlZCB1cmdlbmN5IHZhbHVlOiAlcyIKK21zZ3N0ciAiIgorInNlIGhhIGRldGVjdGFkbyB1biB2YWxvciBkZSB1cmdlbmNpYSAowqt1cmdlbmN5IHZhbHVlwrspIGNvbiB1biBmb3JtYXRvIG5vICIKKyJ2w6FsaWRvOiAlcyIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9FbnRyeS9EZWJpYW4ucG06MTM1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVua25vd24ga2V5LXZhbHVlICVzIgorbXNnc3RyICJlbCB2YWxvciBkZSBjbGF2ZSAlcyBlcyBkZXNjb25vY2lkYSIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9FbnRyeS9EZWJpYW4ucG06MTM5Cittc2dpZCAidGhlIGhlYWRlciBkb2Vzbid0IG1hdGNoIHRoZSBleHBlY3RlZCByZWdleCIKK21zZ3N0ciAibGEgY2FiZWNlcmEgbm8gZW5jYWphIGNvbiBsYSBleHByZXNpw7NuIHJlZ3VsYXIgZXNwZXJhZGEiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRW50cnkvRGViaWFuLnBtOjE1MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBwYXJzZSBkYXRlICVzIgorbXNnc3RyICJubyBzZSBoYSBwb2RpZG8gYW5hbGl6YXIgbGEgZmVjaGEgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRW50cnkvRGViaWFuLnBtOjE1NQorbXNnaWQgInRoZSB0cmFpbGVyIGRvZXNuJ3QgbWF0Y2ggdGhlIGV4cGVjdGVkIHJlZ2V4IgorbXNnc3RyICIiCisibGEgbMOtbmVhIGRlIHNlcGFyYWNpw7NuICjCq3RyYWlsZXLCuykgbm8gZW5jYWphIGNvbiBsYSBleHByZXNpw7NuIHJlZ3VsYXIgIgorImVzcGVyYWRhIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL1BhcnNlLnBtOjEwNgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ0YWlsIG9mICVzIgorbXNnc3RyICJmaW5hbCBkZSDCqyVzwrsiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvUGFyc2UucG06MTE4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImZvcm1hdCBwYXJzZXIgJXMgbm90IGV4ZWN1dGFibGUiCittc2dzdHIgImVsIGZvcm1hdG8gZGUgYW5hbGl6YWRvciAlcyBubyBlcyBlamVjdXRhYmxlIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL1BhcnNlLnBtOjEyMQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjaGFuZ2Vsb2cgZm9ybWF0ICVzIGlzIHVua25vd24iCittc2dzdHIgImVsIGZvcm1hdG8gJXMgZGVsIHJlZ2lzdHJvIGRlIGNhbWJpb3MgZXMgZGVzY29ub2NpZG8iCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvUGFyc2UucG06MTQ0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCBleGVjIGZvcm1hdCBwYXJzZXI6ICVzIgorbXNnc3RyICJubyBzZSBwdWVkZSBlamVjdXRhciBlbCBhbmFsaXphZG9yIGRlIGZvcm1hdG86ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL1BhcnNlLnBtOjE1MQorbXNnaWQgIm91dHB1dCBvZiBjaGFuZ2Vsb2cgcGFyc2VyIgorbXNnc3RyICJzYWxpZGEgZGVsIGFuYWxpemFkb3IgZGUgcmVnaXN0cm8gZGUgY2FtYmlvcyIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9QYXJzZS5wbToxNTQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2hhbmdlbG9nIHBhcnNlciAlcyIKK21zZ3N0ciAiYW5hbGl6YWRvciBkZWwgcmVnaXN0cm8gZGUgY2FtYmlvcyAlcyIKKworIzogc2NyaXB0cy9EcGtnL0NoZWNrc3Vtcy5wbToxNzAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IGZzdGF0IGZpbGUgJXMiCittc2dzdHIgIm5vIHNlIHB1ZWRlIG9idGVuZXIgZWwgZXN0YWRvIChmc3RhdCkgZGVsIGZpY2hlcm8gwqslc8K7IgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hlY2tzdW1zLnBtOjE3MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJGaWxlICVzIGhhcyBzaXplICV1IGluc3RlYWQgb2YgZXhwZWN0ZWQgJXUiCittc2dzdHIgIkVsIGZpY2hlcm8gwqslc8K7IHRpZW5lIHVuIHRhbWHDsW8gZGUgJXUgZW4gbHVnYXIgZGVsIGVzcGVyYWRvLCAldSIKKworIzogc2NyaXB0cy9EcGtnL0NoZWNrc3Vtcy5wbToxODYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiRmlsZSAlcyBoYXMgY2hlY2tzdW0gJXMgaW5zdGVhZCBvZiBleHBlY3RlZCAlcyAoYWxnb3JpdGhtICVzKSIKK21zZ3N0ciAiIgorIkVsIGZpY2hlcm8gwqslc8K7IHRpZW5lIHVuYSBzdW1hIGRlIGNvbnRyb2wgJXMgZW4gbHVnYXIgZGVsIGVzcGVyYWRvLCAlcyIKKyIoYWxnb3JpdG1vICVzKSIKKworIzogc2NyaXB0cy9EcGtnL0NoZWNrc3Vtcy5wbToxOTEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2hlY2tzdW0gcHJvZ3JhbSBnYXZlIGJvZ3VzIG91dHB1dCBgJXMnIgorbXNnc3RyICJlbCBwcm9ncmFtYSBkZSBzdW1hIGRlIGNvbnRyb2wgZGV2b2x2acOzIHVuYSBzYWxpZGEgaW52w6FsaWRhIMKrJXPCuyIKKworIzogc2NyaXB0cy9EcGtnL0NoZWNrc3Vtcy5wbToyMTkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBsaW5lIGluICVzIGNoZWNrc3VtcyBzdHJpbmc6ICVzIgorbXNnc3RyICJsw61uZWEgaW52w6FsaWRhIGVuIGxhIGNhZGVuYSBkZSBzdW1hIGRlIGNvbnRyb2wgJXM6ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hlY2tzdW1zLnBtOjIyNQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJDb25mbGljdGluZyBjaGVja3N1bXMgYCVzJyBhbmQgYCVzJyBmb3IgZmlsZSBgJXMnIgorbXNnc3RyICIiCisiU2UgaGFuIGRldGVjdGFkbyBzdW1hcyBkZSBjb250cm9sIGNvbmZsaWN0aXZhcywgwqslc8K7IHkgwqslc8K7LCBkZWwgZmljaGVybyDCqyVzwrsiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGVja3N1bXMucG06MjI5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIkNvbmZsaWN0aW5nIGZpbGUgc2l6ZXMgYCV1JyBhbmQgYCV1JyBmb3IgZmlsZSBgJXMnIgorbXNnc3RyICIiCisiU2UgaGFuIGRldGVjdGFkbyB0YW1hw7FvcyBkZSBmaWNoZXJvIGNvbmZsaWN0aXZvcywgJXUgeSAldSwgZGVsIGZpY2hlcm8gwqslc8K7IgorCisjOiBzY3JpcHRzL0Rwa2cvQ29uZi5wbToxMDUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAic2hvcnQgb3B0aW9uIG5vdCBhbGxvd2VkIGluICVzLCBsaW5lICVkIgorbXNnc3RyICJubyBzZSBwZXJtaXRlIHVuYSBvcGNpw7NuIGNvcnRhIGVuICVzLCBsw61uZWEgJWQiCisKKyM6IHNjcmlwdHMvRHBrZy9Db25mLnBtOjExOQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHN5bnRheCBmb3Igb3B0aW9uIGluICVzLCBsaW5lICVkIgorbXNnc3RyICJzaW50YXhpcyBpbnbDoWxpZGEgcGFyYSBsYSBvcGNpw7NuIGVuICVzLCBsw61uZWEgJWQiCisKKyM6IHNjcmlwdHMvRHBrZy9Db250cm9sLnBtOjE1MAorbXNnaWQgImdlbmVyYWwgc2VjdGlvbiBvZiBjb250cm9sIGluZm8gZmlsZSIKK21zZ3N0ciAic2VjY2nDs24gZ2VuZXJhbCBkZWwgZmljaGVybyBkZSBpbmZvcm1hY2nDs24gZGUgY29udHJvbCIKKworIzogc2NyaXB0cy9EcGtnL0NvbnRyb2wucG06MTUyCittc2dpZCAicGFja2FnZSdzIHNlY3Rpb24gb2YgY29udHJvbCBpbmZvIGZpbGUiCittc2dzdHIgInNlY2Npw7NuIGRlbCBwYXF1ZXRlIGRlbCBmaWNoZXJvIGRlIGluZm9ybWFjacOzbiBkZSBjb250cm9sIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29udHJvbC5wbToxNTQKK21zZ2lkICJwYXJzZWQgdmVyc2lvbiBvZiBjaGFuZ2Vsb2ciCittc2dzdHIgInZlcnNpw7NuIGFuYWxpemFkYSBkZWwgcmVnaXN0cm8gZGUgY2FtYmlvcyIKKworIzogc2NyaXB0cy9EcGtnL0NvbnRyb2wucG06MTU2IHNjcmlwdHMvRHBrZy9Db250cm9sLnBtOjE1OAorIywgZnV6enksIHBlcmwtZm9ybWF0CisjfCBtc2dpZCAiZW50cnkgaW4gZHBrZydzIHN0YXR1cyBmaWxlIgorbXNnaWQgImVudHJ5IGluIHJlcG9zaXRvcnkncyAlcyBmaWxlIgorbXNnc3RyICJlbnRyYWRhIGVuIGVsIGZpY2hlcm8gZGUgZXN0YWRvIMKrc3RhdHVzwrsgZGUgZHBrZyAiCisKKyM6IHNjcmlwdHMvRHBrZy9Db250cm9sLnBtOjE2MCBzY3JpcHRzL0Rwa2cvQ29udHJvbC5wbToxNjQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgZmlsZSIKK21zZ3N0ciAiZmljaGVybyDCqyVzwrsiCisKKyM6IHNjcmlwdHMvRHBrZy9Db250cm9sLnBtOjE2MgorbXNnaWQgImNvbnRyb2wgaW5mbyBvZiBhIC5kZWIgcGFja2FnZSIKK21zZ3N0ciAiaW5mb3JtYWNpw7NuIGRlIGNvbnRyb2wgZGUgdW4gcGFxdWV0ZSDCqy5kZWLCuyIKKworIzogc2NyaXB0cy9EcGtnL0NvbnRyb2wucG06MTY2Cittc2dpZCAidmVuZG9yIGZpbGUiCittc2dzdHIgImZpY2hlcm8gZGVsIHByb3ZlZWRvciIKKworIzogc2NyaXB0cy9EcGtnL0NvbnRyb2wucG06MTY4Cittc2dpZCAiZW50cnkgaW4gZHBrZydzIHN0YXR1cyBmaWxlIgorbXNnc3RyICJlbnRyYWRhIGVuIGVsIGZpY2hlcm8gZGUgZXN0YWRvIMKrc3RhdHVzwrsgZGUgZHBrZyAiCisKKyM6IHNjcmlwdHMvRHBrZy9Db250cm9sL0ZpZWxkcy5wbTo0NTUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5rbm93biBpbmZvcm1hdGlvbiBmaWVsZCAnJXMnIGluIGlucHV0IGRhdGEgaW4gJXMiCittc2dzdHIgIiIKKyJlbCBjYW1wbyBkZSBpbmZvcm1hY2nDs24gwqslc8K7IGVuIGxvcyBkYXRvcyBkZSBlbnRyYWRhIGVuICVzIGVzIGRlc2Nvbm9jaWRvIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29udHJvbC9GaWVsZHMucG06NDU2Cittc2dpZCAiY29udHJvbCBpbmZvcm1hdGlvbiIKK21zZ3N0ciAiaW5mb3JtYWNpw7NuIGRlIGNvbnRyb2wiCisKKyM6IHNjcmlwdHMvRHBrZy9Db250cm9sL0luZm8ucG06MTAzCittc2dpZCAiZmlyc3QgYmxvY2sgbGFja3MgYSBzb3VyY2UgZmllbGQiCittc2dzdHIgImZhbHRhIHVuIGNhbXBvIGRlIGZ1ZW50ZSBlbiBlbCBwcmltZXIgYmxvcXVlIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29udHJvbC9JbmZvLnBtOjExMCBzY3JpcHRzL0Rwa2cvQ29udHJvbC9JbmZvLnBtOjExMworIywgZnV6enksIHBlcmwtZm9ybWF0CisjfCBtc2dpZCAiYmxvY2sgbGFja3MgYSBwYWNrYWdlIGZpZWxkIgorbXNnaWQgImJsb2NrIGxhY2tzIHRoZSAnJXMnIGZpZWxkIgorbXNnc3RyICJmYWx0YSB1biBjYW1wbyBkZSBwYXF1ZXRlIGVuIGVsIGJsb3F1ZSIKKworIzogc2NyaXB0cy9EcGtnL0NvbnRyb2wvSGFzaC5wbToxNzIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIGZpZWxkICVzIGZvdW5kIgorbXNnc3RyICJzZSBoYSBlbmNvbnRyYWRvIHVuIGNhbXBvIGR1cGxpY2FkbyDCqyVzwrsiCisKKyM6IHNjcmlwdHMvRHBrZy9Db250cm9sL0hhc2gucG06MTgwCittc2dpZCAiY29udGludWVkIHZhbHVlIGxpbmUgbm90IGluIGZpZWxkIgorbXNnc3RyICJsYSBjb250aW51YWNpw7NuIGRlIGxhIGzDrW5lYSBkZWwgdmFsb3Igbm8gZXN0w6EgZWwgY2FtcG8iCisKKyM6IHNjcmlwdHMvRHBrZy9Db250cm9sL0hhc2gucG06MTk0Cittc2dpZCAiUEdQIHNpZ25hdHVyZSBub3QgYWxsb3dlZCBoZXJlIgorbXNnc3RyICJObyBzZSBwZXJtaXRlIGxhIGZpcm1hIFBHUCBhcXXDrSIKKworIzogc2NyaXB0cy9EcGtnL0NvbnRyb2wvSGFzaC5wbToyMDEKK21zZ2lkICJleHBlY3RlZCBQR1Agc2lnbmF0dXJlLCBmb3VuZCBFT0YgYWZ0ZXIgYmxhbmsgbGluZSIKK21zZ3N0ciAiIgorInNlIGVzcGVyYWJhIGxhIGZpcm1hIFBHUCwgcGVybyBzZSBoYSBlbmNvbnRyYWRvIHVuIGZpbiBkZSBsw61uZWFkZXNwdcOpcyBkZSAiCisidW5hIGzDrW5lYSB2YWPDrWEiCisKKyM6IHNjcmlwdHMvRHBrZy9Db250cm9sL0hhc2gucG06MjA1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImV4cGVjdGVkIFBHUCBzaWduYXR1cmUsIGZvdW5kIHNvbWV0aGluZyBlbHNlIGAlcyciCittc2dzdHIgInNlIGVzcGVyYWJhIHVuYSBmaXJtYSBQR1AsIHBlcm8gc2UgaGEgZW5jb250cmFkbyBhbGdvIGRpc3RpbnRvIMKrJXPCuyIKKworIzogc2NyaXB0cy9EcGtnL0NvbnRyb2wvSGFzaC5wbToyMTMKK21zZ2lkICJ1bmZpbmlzaGVkIFBHUCBzaWduYXR1cmUiCittc2dzdHIgImZpcm1hIFBHUCBpbmFjYWJhZGEiCisKKyM6IHNjcmlwdHMvRHBrZy9Db250cm9sL0hhc2gucG06MjE5Cittc2dpZCAibGluZSB3aXRoIHVua25vd24gZm9ybWF0IChub3QgZmllbGQtY29sb24tdmFsdWUpIgorbXNnc3RyICIiCisic2UgaGEgZGV0ZWN0YWRvIHVuYSBsw61uZWEgY29uIGZvcm1hdG8gZGVzY29ub2NpZG8gKG5vIGVzIHVuIHZhbG9yIGRlIGNhbXBvICIKKyJzZXBhcmFkbyBwb3IgZG9zIHB1bnRvcykiCisKKyM6IHNjcmlwdHMvRHBrZy9Db250cm9sL0hhc2gucG06MzE2Cittc2dpZCAid3JpdGUgZXJyb3Igb24gY29udHJvbCBkYXRhIgorbXNnc3RyICJzZSBoYSBkZXRlY3RhZG8gdW4gZXJyb3IgZGUgZXNjcml0dXJhIGVuIGxvcyBkYXRvcyBkZSBjb250cm9sIgorCisjOiBzY3JpcHRzL0Rwa2cvRGVwcy5wbToyNzQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2FuJ3QgcGFyc2UgZGVwZW5kZW5jeSAlcyIKK21zZ3N0ciAibm8gc2UgcHVlZGUgYW5hbGl6YXIgbGEgZGVwZW5kZW5jaWEgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9EZXBzLnBtOjMwMQorbXNnaWQgImFuIHVuaW9uIGRlcGVuZGVuY3kgY2FuIG9ubHkgY29udGFpbiBzaW1wbGUgZGVwZW5kZW5jaWVzIgorbXNnc3RyICIiCisidW5hIGRlcGVuZGVuY2lhIGRlIHVuacOzbiAoT1IgLSDCq3zCuykgc8OzbG8gcHVlZGUgY29udGVuZXIgZGVwZW5kZW5jaWFzIHNpbXBsZXMiCisKKyM6IHNjcmlwdHMvRHBrZy9FcnJvckhhbmRsaW5nLnBtOjU0Cittc2dpZCAiaW5mbyIKK21zZ3N0ciAiaW5mb3JtYWNpw7NuIgorCisjOiBzY3JpcHRzL0Rwa2cvRXJyb3JIYW5kbGluZy5wbTo2NSBzY3JpcHRzL0Rwa2cvRXJyb3JIYW5kbGluZy5wbTo3MAorIzogc2NyaXB0cy9EcGtnL0Vycm9ySGFuZGxpbmcucG06NzUKK21zZ2lkICJlcnJvciIKK21zZ3N0ciAiZmFsbG8iCisKKyM6IHNjcmlwdHMvRHBrZy9FcnJvckhhbmRsaW5nLnBtOjgwCittc2dpZCAiaW50ZXJuYWwgZXJyb3IiCittc2dzdHIgImZhbGxvIGludGVybm8iCisKKyM6IHNjcmlwdHMvRHBrZy9FcnJvckhhbmRsaW5nLnBtOjkyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGdhdmUgZXJyb3IgZXhpdCBzdGF0dXMgJXMiCittc2dzdHIgIiVzIGRldm9sdmnDsyB1biBlc3RhZG8gZGUgc2FsaWRhIGRlIGVycm9yICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvRXJyb3JIYW5kbGluZy5wbTo5NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBkaWVkIGZyb20gc2lnbmFsICVzIgorbXNnc3RyICIlcyBtdXJpw7MgY29uIGxhIHNlw7FhbCAlcyIKKworIzogc2NyaXB0cy9EcGtnL0Vycm9ySGFuZGxpbmcucG06OTYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgZmFpbGVkIHdpdGggdW5rbm93biBleGl0IGNvZGUgJWQiCittc2dzdHIgIiVzIGZhbGzDsyBjb24gZWwgY8OzZGlnbyBkZSBzYWxpZGEgZGVzY29ub2NpZG8gJWQiCisKKyM6IHNjcmlwdHMvRHBrZy9FcnJvckhhbmRsaW5nLnBtOjExNQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gJXMgYXQgbGluZSAlZDogJXMiCittc2dzdHIgInNlIGhhIGVuY29udHJhZG8gdW4gZXJyb3IgZGUgc2ludGF4aXMgZW4gJXMgZW4gbGEgbMOtbmVhICVkOiAlcyIKKworIzogc2NyaXB0cy9EcGtnL0lQQy5wbToyMTEgc2NyaXB0cy9EcGtnL0lQQy5wbToyMTcgc2NyaXB0cy9EcGtnL0lQQy5wbToyMjMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAicGlwZSBmb3IgJXMiCittc2dzdHIgInR1YmVyw61hIHBhcmEgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9JUEMucG06MjQyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNoZGlyIHRvICVzIgorbXNnc3RyICJjaGRpciBhIMKrJXPCuyIKKworIzogc2NyaXB0cy9EcGtnL0lQQy5wbToyNDkKK21zZ2lkICJyZW9wZW4gc3RkaW4iCittc2dzdHIgInJlYWJyaXIgbGEgZW50cmFkYSBlc3TDoW5kYXIiCisKKyM6IHNjcmlwdHMvRHBrZy9JUEMucG06MjU3IHNjcmlwdHMvRHBrZy9JUEMucG06MjY1Cittc2dpZCAicmVvcGVuIHN0ZG91dCIKK21zZ3N0ciAicmVhYnJpciBsYSBzYWxpZGEgZXN0w6FuZGFyIgorCisjOiBzY3JpcHRzL0Rwa2cvSVBDLnBtOjMzOQorbXNnaWQgImNoaWxkIHByb2Nlc3MiCittc2dzdHIgInByb2Nlc28gc2VjdW5kYXJpbyBvIGhpam8iCisKKyM6IHNjcmlwdHMvRHBrZy9JUEMucG06MzQ0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIndhaXQgZm9yICVzIgorbXNnc3RyICJlc3BlcmFyIGEgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9JUEMucG06MzQ5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGRpZG4ndCBjb21wbGV0ZSBpbiAlZCBzZWNvbmQiCittc2dpZF9wbHVyYWwgIiVzIGRpZG4ndCBjb21wbGV0ZSBpbiAlZCBzZWNvbmRzIgorbXNnc3RyWzBdICIlcyBubyBzZSBjb21wbGV0w7MgZW4gJWQgc2VndW5kbyIKK21zZ3N0clsxXSAiJXMgbm8gc2UgY29tcGxldMOzIGVuICVkIHNlZ3VuZG9zIgorCisjOiBzY3JpcHRzL0Rwa2cvU2hsaWJzL09iamR1bXAucG06MjIyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIkNvdWxkbid0IHBhcnNlIGR5bmFtaWMgcmVsb2NhdGlvbiByZWNvcmQ6ICVzIgorbXNnc3RyICJObyBzZSBwdWRvIGFuYWxpemFyIGVsIHJlZ2lzdHJvIGRlIHJldWJpY2FjacOzbiBkaW7DoW1pY286ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU2hsaWJzL09iamR1bXAucG06MzM5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIkNvdWxkbid0IHBhcnNlIGR5bmFtaWMgc3ltYm9sIGRlZmluaXRpb246ICVzIgorbXNnc3RyICJObyBzZSBwdWRvIGFuYWxpemFyIGxhIGRlZmluaWNpw7NuIGRlIHPDrW1ib2xvIGRpbsOhbWljbzogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9TaGxpYnMvU3ltYm9sLnBtOjExMQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJzeW1ib2wgbmFtZSB1bnNwZWNpZmllZDogJXMiCittc2dzdHIgImVsIG5vbWJyZSBkZWwgc8OtbWJvbG8gbm8gZXN0w6EgZGVmaW5pZG86ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU2hsaWJzL1N5bWJvbC5wbToxNjgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAieW91IGNhbid0IHVzZSBzeW12ZXIgdGFnIHRvIGNhdGNoIHVudmVyc2lvbmVkIHN5bWJvbHM6ICVzIgorbXNnc3RyICIiCisibm8gcHVlZGUgdXNhciB1bmEgZXRpcXVldGEgwqtzeW12ZXLCuyBwYXJhIGVuY29udHJhciBzw61tYm9sb3Mgc2luIHNpbiAiCisidmVyc2lvbmFyOiAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NobGlicy9TeW1ib2xGaWxlLnBtOjIxOAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJTeW1ib2wgaW5mb3JtYXRpb24gbXVzdCBiZSBwcmVjZWRlZCBieSBhIGhlYWRlciAoZmlsZSAlcywgbGluZSAlcykuIgorbXNnc3RyICIiCisiTGEgaW5mb3JtYWNpw7NuIGRlbCBzw61tYm9sbyBzZSBkZWJlIHByZWNlZGVyIGNvbiB1bmEgY2FiZWNlcmEgKGZpY2hlcm8gwqslc8K7LCAiCisibMOtbmVhIMKrJXPCuykuIgorCisjOiBzY3JpcHRzL0Rwa2cvU2hsaWJzL1N5bWJvbEZpbGUucG06MjI2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIkZhaWxlZCB0byBwYXJzZSBsaW5lIGluICVzOiAlcyIKK21zZ3N0ciAiU2UgaGEgZGV0ZWN0YWRvIHVuIGZhbGxvIGFsIGFuYWxpemFyIGxhIGzDrW5lYSBlbiDCqyVzwrs6ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU2hsaWJzL1N5bWJvbEZpbGUucG06MjU4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIkZhaWxlZCB0byBwYXJzZSBhIGxpbmUgaW4gJXM6ICVzIgorbXNnc3RyICJTZSBoYSBkZXRlY3RhZG8gdW4gZmFsbG8gYWwgYW5hbGl6YXIgdW5hIGzDrW5lYSBlbiDCqyVzwrs6ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU2hsaWJzL1N5bWJvbEZpbGUucG06MjcxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIlRyaWVkIHRvIG1lcmdlIHRoZSBzYW1lIG9iamVjdCAoJXMpIHR3aWNlIGluIGEgc3ltZmlsZS4iCittc2dzdHIgIiIKKyJTZSBoYSBpbnRlbnRhZG8gZnVzaW9uYXIgKMKrbWVyZ2XCuykgZWwgbWlzbW8gb2JqZXRvICglcykgZG9zIHZlY2VzIGVuIHVuICIKKyJmaWNoZXJvIHNpbWLDs2xpY28uIgorCisjOiBzY3JpcHRzL0Rwa2cvU2hsaWJzL1N5bWJvbEZpbGUucG06Mzg4Cittc2dpZCAiQ2FuJ3QgbWVyZ2Ugc3ltYm9scyBmcm9tIG9iamVjdHMgd2l0aG91dCBTT05BTUUuIgorbXNnc3RyICJObyBzZSBwdWVkZSBmdXNpb25hciBzw61tYm9sb3MgZGUgb2JqZXRvcyBzaW4gwqtTT05BTUXCuyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9BcmNoaXZlLnBtOjY0Cittc2dpZCAid3JpdGUgb24gdGFyIGlucHV0IgorbXNnc3RyICJlc2NyaWJlIGVuIGxhIGVudHJhZGEgdGFyIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL0FyY2hpdmUucG06ODkKK21zZ2lkICJjbG9zZSBvbiB0YXIgaW5wdXQiCittc2dzdHIgImNpZXJyYSBjb24gbGEgZW50cmFkYSB0YXIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvQXJjaGl2ZS5wbToxMTQgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo1MDMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IGNyZWF0ZSBkaXJlY3RvcnkgJXMiCittc2dzdHIgIm5vIHNlIHB1ZWRlIGNyZWFyIGVsIGRpcmVjdG9yaW8gwqslc8K7IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL0FyY2hpdmUucG06MTQ1IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbTozMDcKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbToxOTkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IG9wZW5kaXIgJXMiCittc2dzdHIgIm5vIHNlIHB1ZWRlIGFicmlyIGVsIGRpcmVjdG9yaW8gwqslc8K7IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL0FyY2hpdmUucG06MTUyIHNjcmlwdHMvRHBrZy9Tb3VyY2UvQXJjaGl2ZS5wbToxNTYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiVW5hYmxlIHRvIHJlbmFtZSAlcyB0byAlcyIKK21zZ3N0ciAiTm8gc2UgcHVkbyByZW5vbWJyYXIgwqslc8K7IGEgwqslc8K7IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL0Z1bmN0aW9ucy5wbTozNAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc3RhdCBkaXJlY3RvcnkgJXMgKGJlZm9yZSByZW1vdmFsKSIKK21zZ3N0ciAiIgorIm5vIHNlIHB1ZWRlIG1vc3RyYXIgZWwgZXN0YWRvIChzdGF0KSBkZWwgZGlyZWN0b3JpbyAgwqslc8K7IChhbnRlcyBkZSBsYSAiCisiZWxpbWluYWNpw7NuKSIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9GdW5jdGlvbnMucG06NDAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoZWNrIGZvciByZW1vdmFsIG9mIGRpciBgJXMnIgorbXNnc3RyICJObyBzZSBwdWRvIGNvbXByb2JhciBsYSBlbGltaW5hY2nDs24gZGVsIGRpcmVjdG9yaW8gwqslc8K7IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL0Z1bmN0aW9ucy5wbTo0MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJybSAtcmYgZmFpbGVkIHRvIHJlbW92ZSBgJXMnIgorbXNnc3RyICLCq3JtIC1yZsK7IG5vIHB1ZG8gZWxpbWluYXIgwqslc8K7IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL0Z1bmN0aW9ucy5wbTo4MyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjU1MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3QgY2hhbmdlIHRpbWVzdGFtcCBmb3IgJXMiCittc2dzdHIgIm5vIHNlIHB1ZWRlIGNhbWJpYXIgbGEgbWFyY2EgZGUgdGllbXBvIGRlIMKrJXPCuyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9GdW5jdGlvbnMucG06ODUKKyMsIGZ1enp5LCBwZXJsLWZvcm1hdAorI3wgbXNnaWQgImNhbm5vdCBjaGFuZ2UgdGltZXN0YW1wIGZvciAlcyIKK21zZ2lkICJjYW5ub3QgcmVhZCB0aW1lc3RhbXAgZnJvbSAlcyIKK21zZ3N0ciAibm8gc2UgcHVlZGUgY2FtYmlhciBsYSBtYXJjYSBkZSB0aWVtcG8gZGUgwqslc8K7IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjcwIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo0NDMKK21zZ2lkICJiaW5hcnkgZmlsZSBjb250ZW50cyBjaGFuZ2VkIgorbXNnc3RyICJlbCBjb250ZW5pZG8gZGVsIGZpY2hlcm8gYmluYXJpbyBoYSBjYW1iaWFkbyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbToxMTgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZmlsZSAlcyBoYXMgbm8gZmluYWwgbmV3bGluZSAoZWl0aGVyIG9yaWdpbmFsIG9yIG1vZGlmaWVkIHZlcnNpb24pIgorbXNnc3RyICIiCisiZWwgZmljaGVybyDCqyVzwrsgbm8gdGllbmUgdW5hIG51ZXZhIGzDrW5lYSBhbCBmaW5hbCAodGFudG8gZW4gbGEgdmVyc2nDs24gIgorIm9yaWdpbmFsIGNvbW8gZW4gbGEgbW9kaWZpY2FkYSkiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MTIyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVua25vd24gbGluZSBmcm9tIGRpZmYgLXUgb24gJXM6IGAlcyciCittc2dzdHIgImzDrW5lYSBkZXNjb25vY2lkYSBkZSDCq2RpZmYgLXXCuyBlbiAlczogwqslc8K7IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjEyNSBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjEyOAorbXNnaWQgImZhaWxlZCB0byB3cml0ZSIKK21zZ3N0ciAic2UgaGEgZGV0ZWN0YWRvIHVuIGZhbGxvIGFsIGVzY3JpYmlyIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjEzOAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJkaWZmIG9uICVzIgorbXNnc3RyICJkaWZmIGRlIMKrJXPCuyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbToxNjQgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbToxODMKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MjA2IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MjE4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzdGF0IGZpbGUgJXMiCittc2dzdHIgIm5vIHNlIHB1ZWRlIG9idGVuZXIgZWwgZXN0YWRvIChzdGF0KSBkZWwgZmljaGVybyDCqyVzwrsiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MTczIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MTc1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZWFkIGxpbmsgJXMiCittc2dzdHIgIm5vIHNlIHB1ZWRlIGxlZXIgZWwgZW5sYWNlIMKrJXPCuyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbToyMDIKK21zZ2lkICJkZXZpY2Ugb3Igc29ja2V0IGlzIG5vdCBhbGxvd2VkIgorbXNnc3RyICJlbCBkaXNwb3NpdGl2byBvIHNvY2tldCBkZSBVbml4IG5vIGVzdMOhIHBlcm1pdGlkbyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbToyMTEKK21zZ2lkICJ1bmtub3duIGZpbGUgdHlwZSIKK21zZ3N0ciAiZWwgdGlwbyBkZSBmaWNoZXJvIGVzIGRlc2Nvbm9jaWRvIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjIyNAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJpZ25vcmluZyBkZWxldGlvbiBvZiBmaWxlICVzIgorbXNnc3RyICJpZ25vcmFuZG8gbGEgZWxpbWluYWNpw7NuIGRlbCBmaWNoZXJvIMKrJXPCuyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbToyMjcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgZGVsZXRpb24gb2YgZGlyZWN0b3J5ICVzIgorbXNnc3RyICJpZ25vcmFuZG8gbGEgZWxpbWluYWNpw7NuIGRlbCBkaXJlY3RvcmlvIMKrJXPCuyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbToyMjkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgZGVsZXRpb24gb2Ygc3ltbGluayAlcyIKK21zZ3N0ciAiaWdub3JhbmRvIGxhIGVsaW1pbmFjacOzbiBkZWwgZW5sYWNlIHNpbWLDs2xpY28gwqslc8K7IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjI3MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJuZXdseSBjcmVhdGVkIGVtcHR5IGZpbGUgJyVzJyB3aWxsIG5vdCBiZSByZXByZXNlbnRlZCBpbiBkaWZmIgorbXNnc3RyICJlbCBmaWNoZXJvIHZhY8OtbyByZWNpw6luIGNyZWFkbyDCqyVzwrsgbm8gc2UgcmVwcmVzZW50YXLDoSBlbiBlbCBkaWZmIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjI3NQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJleGVjdXRhYmxlIG1vZGUgJTA0byBvZiAnJXMnIHdpbGwgbm90IGJlIHJlcHJlc2VudGVkIGluIGRpZmYiCittc2dzdHIgImVsIG1vZG8gZGUgZWplY3VjacOzbiDCqyUwNG/CuyBkZSDCqyVzwrsgbm8gc2UgcmVwcmVzZW50YXLDoSBlbiBlbCBkaWZmIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjI4MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJzcGVjaWFsIG1vZGUgJTA0byBvZiAnJXMnIHdpbGwgbm90IGJlIHJlcHJlc2VudGVkIGluIGRpZmYiCittc2dzdHIgImVsIG1vZG8gZXNwZWNpYWwgwqslMDRvwrsgZGUgwqslc8K7IG5vIHNlIHJlcHJlc2VudGFyw6EgZW4gZWwgZGlmZiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTozMDAgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjQ0MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVwcmVzZW50IGNoYW5nZSB0byAlczogJXMiCittc2dzdHIgIm5vIHNlIHB1ZWRlIHJlcHJlc2VudGFyIGVsIGNhbWJpbyBkZSAlczogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MzA3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZXByZXNlbnQgY2hhbmdlIHRvICVzOiIKK21zZ3N0ciAibm8gc2UgcHVlZGUgcmVwcmVzZW50YXIgZWwgY2FtYmlvIGhlY2hvIGEgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MzA4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiAgbmV3IHZlcnNpb24gaXMgJXMiCittc2dzdHIgIiAgbGEgdmVyc2nDs24gbnVldmEgZXMgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MzA5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiAgb2xkIHZlcnNpb24gaXMgJXMiCittc2dzdHIgIiAgbGEgdmVyc2nDs24gYW50aWd1YSBlcyAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTozODQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZXhwZWN0ZWQgXi0tLSBpbiBsaW5lICVkIG9mIGRpZmYgYCVzJyIKK21zZ3N0ciAic2UgZXNwZXJhYmEgwqteLS0twrsgZW4gbGEgbMOtbmVhICVkIGRlbCBmaWNoZXJvIGRlIGRpZmVyZW5jaWFzIMKrJXPCuyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTozODkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZGlmZiBgJXMnIHBhdGNoZXMgZmlsZSB3aXRoIG5hbWUgZW5kaW5nIC5kcGtnLW9yaWciCittc2dzdHIgImVsIGRpZmYgwqslc8K7IHBhcmNoZWEgZWwgZmljaGVybyBjdXlvIG5vbWJyZSB0ZXJtaW5hIGNvbiDCqy5kcGtnLW9yaWfCuyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTozOTMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZGlmZiBgJXMnIGZpbmlzaGVzIGluIG1pZGRsZSBvZiAtLS0vKysrIChsaW5lICVkKSIKK21zZ3N0ciAiZWwgZGlmZiDCqyVzwrsgdGVybWluYSBlbiBsYSBtaXRhZCBkZSDCqy0tLS8rKyvCuyAobMOtbmVhICVkKSIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTozOTYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibGluZSBhZnRlciAtLS0gaXNuJ3QgYXMgZXhwZWN0ZWQgaW4gZGlmZiBgJXMnIChsaW5lICVkKSIKK21zZ3N0ciAiIgorImxhIGzDrW5lYSBkZXNwdcOpcyBkZSDCqy0tLcK7IG5vIGVzIGNvbW8gc2UgZXNwZXJhYmEgZW4gZWwgZGlmZiDCqyVzwrsgKGzDrW5lYSAlZCkiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NDAyCisjLCBmdXp6eSwgcGVybC1mb3JtYXQKKyN8IG1zZ2lkICJub25lIG9mIHRoZSBmaWxlbmFtZXMgaW4gLS0tLysrKyBhcmUgcmVsYXRpdmUgaW4gZGlmZiBgJXMnIChsaW5lICVkKSIKK21zZ2lkICJub25lIG9mIHRoZSBmaWxlbmFtZXMgaW4gLS0tLysrKyBhcmUgdmFsaWQgaW4gZGlmZiAnJXMnIChsaW5lICVkKSIKK21zZ3N0ciAiIgorIm5pbmd1bm8gZGUgbG9zIGZpY2hlcm9zIGVuIMKrLS0tLysrK8K7IHNvbiByZWxhdGl2b3MgZW4gZWwgZGlmZiDCqyVzwrsgKGzDrW5lYSAlZCkiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NDEwCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06MTI3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGNvbnRhaW5zIGFuIGluc2VjdXJlIHBhdGg6ICVzIgorbXNnc3RyICIlcyBjb250aWVuZSB1bmEgcnV0YSBubyBzZWd1cmE6IMKrJXPCuyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo0MTUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZGlmZiAlcyBtb2RpZmllcyBmaWxlICVzIHRocm91Z2ggYSBzeW1saW5rOiAlcyIKK21zZ3N0ciAiIgorImVsIGRpZmYgwqslc8K7IG1vZGlmaWNhIGVsIGZpY2hlcm8gwqslc8K7IGEgdHJhdsOpcyBkZSB1biBlbmxhY2Ugc2ltYsOzbGljbzogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NDI0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIm9yaWdpbmFsIGFuZCBtb2RpZmllZCBmaWxlcyBhcmUgL2Rldi9udWxsIGluIGRpZmYgYCVzJyAobGluZSAlZCkiCittc2dzdHIgIiIKKyJsb3MgZmljaGVyb3Mgb3JpZ2luYWxlcyB5IG1vZGlmaWNhZG9zIHNvbiBlc3TDoW4gZW4gwqsvZGV2L251bGzCuyBlbiBlbCBkaWZmICIKKyLCqyVzwrsgKGzDrW5lYSAlZCkiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NDI3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImZpbGUgcmVtb3ZhbCB3aXRob3V0IHByb3BlciBmaWxlbmFtZSBpbiBkaWZmIGAlcycgKGxpbmUgJWQpIgorbXNnc3RyICIiCisic2UgaGEgZGV0ZWN0YWRvIGxhIGVsaW1pbmFjacOzbiBkZSB1biBmaWNoZXJvIHNpbiB1biBub21icmUgYWRlY3VhZG8gZW4gZWwgIgorImRpZmYgwqslc8K7IChsw61uZWEgJWQpIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjQzMAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJkaWZmICVzIHJlbW92ZXMgYSBub24tZXhpc3RpbmcgZmlsZSAlcyAobGluZSAlZCkiCittc2dzdHIgImVsIGRpZmYgwqslc8K7IGVsaW1pbmEgZWwgZmljaGVybyBubyBleGlzdGVudGUgwqslc8K7IChsw61uZWEgJWQpIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjQ0MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJkaWZmIGAlcycgcGF0Y2hlcyBzb21ldGhpbmcgd2hpY2ggaXMgbm90IGEgcGxhaW4gZmlsZSIKK21zZ3N0ciAiZWwgZGlmZiDCqyVzwrsgcGFyY2hlYSBhbGdvIHF1ZSBubyBlcyB1biBmaWNoZXJvIHNpbXBsZSIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo0NDYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZGlmZiBgJXMnIHBhdGNoZXMgZmlsZSAlcyB0d2ljZSIKK21zZ3N0ciAiZWwgZGlmZiDCqyVzwrsgcGFyY2hlYSBlbCBmaWNoZXJvIMKrJXPCuyBkb3MgdmVjZXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NDY0IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NDY4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVuZXhwZWN0ZWQgZW5kIG9mIGRpZmYgYCVzJyIKK21zZ3N0ciAic2UgaGEgZGV0ZWN0YWRvIHVuIGZpbiBkZWwgZmljaGVybyBkZSBkaWZlcmVuY2lhcyDCqyVzwrsgaW5lc3BlcmFkbyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo0NzcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZXhwZWN0ZWQgWyArLV0gYXQgc3RhcnQgb2YgbGluZSAlZCBvZiBkaWZmIGAlcyciCittc2dzdHIgInNlIGVzcGVyYWJhIFsgKy1dIGFsIHByaW5jaXBpbyBkZSBsYSBsw61uZWEgJWQgZGVsIGRpZmYgwqslc8K7IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjQ4NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJleHBlY3RlZCBeQEAgYXQgbGluZSAlZCBvZiBkaWZmIGAlcyciCittc2dzdHIgInNlIGVzcGVyYWJhIF5AQCBlbiBsYSBsw61uZWEgJWQgZGVsIGRpZmYgwqslc8K7IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjQ4OQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJkaWZmIGAlcycgZG9lc24ndCBjb250YWluIGFueSBwYXRjaCIKK21zZ3N0ciAiZWwgZGlmZiDCqyVzwrsgbm8gY29udGllbmUgbmluZ8O6biBwYXJjaGUiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NTU0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInJlbW92ZSBwYXRjaCBiYWNrdXAgZmlsZSAlcyIKK21zZ3N0ciAiZWxpbWluYXIgZWwgZmljaGVybyBkZSByZXNwYWxkbyDCqyVzwrsgZGVsIHBhcmNoZSIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo1OTUKK21zZ2lkICJub25leGlzdGVudCIKK21zZ3N0ciAiaW5leGlzdGVudGUiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NTk2IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbTo0NTgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IHN0YXQgJXMiCittc2dzdHIgIm5vIHNlIHB1ZWRlIG9idGVuZXIgZWwgZXN0YWRvIChzdGF0KSBkZSDCqyVzwrsiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NTk4Cittc2dpZCAicGxhaW4gZmlsZSIKK21zZ3N0ciAiZmljaGVybyBzaW1wbGUiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NTk5Cittc2dpZCAiZGlyZWN0b3J5IgorbXNnc3RyICJkaXJlY3RvcmlvIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjYwMAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJzeW1saW5rIHRvICVzIgorbXNnc3RyICJlbmxhY2Ugc2ltYsOzbGljbyBhIMKrJXPCuyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo2MDEKK21zZ2lkICJibG9jayBkZXZpY2UiCittc2dzdHIgImRpc3Bvc2l0aXZvIGRlIGJsb3F1ZSIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo2MDIKK21zZ2lkICJjaGFyYWN0ZXIgZGV2aWNlIgorbXNnc3RyICJmaWNoZXJvIGRlIGRpc3Bvc2l0aXZvICjCq2NoYXJhY3RlciBkZXZpY2XCuykiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NjAzCittc2dpZCAibmFtZWQgcGlwZSIKK21zZ3N0ciAidHViZXLDrWEgbm9tYnJhZGEiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NjA0Cittc2dpZCAibmFtZWQgc29ja2V0IgorbXNnc3RyICJzb2NrZXQgZGUgVW5peCBub21icmFkbyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOjE4OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgdGhlIG5hbWUgb2YgYSBmaWxlIgorbXNnc3RyICLCqyVzwrsgbm8gZXMgZWwgbm9tYnJlIGRlIHVuIGZpY2hlcm8iCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbToyMDgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibWlzc2luZyBjcml0aWNhbCBzb3VyY2UgY29udHJvbCBmaWVsZCAlcyIKK21zZ3N0ciAiZmFsdGEgZWwgY2FtcG8gY3LDrXRpY28gZGUgY29udHJvbCBkZSBsYXMgZnVlbnRlcyDCqyVzwrsiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbToyMzYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorInNvdXJjZSBwYWNrYWdlIGZvcm1hdCBgJXMnIGlzIG5vdCBzdXBwb3J0ZWQgKFBlcmwgbW9kdWxlICVzIGlzIHJlcXVpcmVkKSIKK21zZ3N0ciAiIgorImVsIGZvcm1hdG8gZGUgcGFxdWV0ZSBmdWVudGUgwqslc8K7IG5vIGVzIGNvbXBhdGlibGUgKHNlIHJlcXVpZXJlIGVsIG3Ds2R1bG8gZGUgIgorImRlIFBlcmwgJXMpIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG06MjQwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImludmFsaWQgRm9ybWF0IGZpZWxkIGAlcyciCittc2dzdHIgInNlIGhhIGRldGVjdGFkbyB1biBjYW1wbyDCq0Zvcm1hdMK7IGludsOhbGlkbyDCqyVzwrsiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbToyODgKK21zZ2lkICJzb3VyY2UgYW5kIHZlcnNpb24gYXJlIHJlcXVpcmVkIHRvIGNvbXB1dGUgdGhlIHNvdXJjZSBiYXNlbmFtZSIKK21zZ3N0ciAiIgorInNlIHJlcXVpZXJlbiBsYSBmdWVudGUgeSBsYSB2ZXJzacOzbiBwYXJhIGNvbXBsZXRhciBlbCBub21icmUgYmFzZSBkZSBsYSAiCisiZnVlbnRlIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG06MzcxIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbTozNzMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHZlcmlmeSBzaWduYXR1cmUgb24gJXMiCittc2dzdHIgInNlIGhhIGRldGVjdGFkbyB1biBmYWxsbyBhbCB2ZXJpZmljYXIgbGEgZmlybWEgZGUgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbTozODAgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOjM4MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgdmVyaWZ5IHNpZ25hdHVyZSBvbiAlcyBzaW5jZSBncGcgaXNuJ3QgaW5zdGFsbGVkIgorbXNnc3RyICJubyBzZSBwdWRvIHZlcmlmaWNhciBsYSBmaXJtYSBkZSAlcyB5YSBxdWUgZ3BnIG5vIGVzdMOhIGluc3RhbGFkbyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOjM5MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgYSB2YWxpZCBvcHRpb24gZm9yICVzIgorbXNnc3RyICLCqyVzwrsgbm8gZXMgdW5hIG9wY2nDs24gdsOhbGlkYSBwYXJhICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG06NDYwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGRvZXMgbm90IGV4aXN0IgorbXNnc3RyICIlcyBubyBleGlzdGUiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbTo0NjQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IG1ha2UgJXMgZXhlY3V0YWJsZSIKK21zZ3N0ciAibm8gc2UgcHVlZGUgZGFyIHBlcm1pc29zIGRlIGVqZWN1Y2nDs24gYSDCqyVzwrsiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbTo0NjYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgaXMgbm90IGEgcGxhaW4gZmlsZSIKK21zZ3N0ciAiwqslc8K7IG5vIGVzIHVuIGZpY2hlcm8gc2ltcGxlIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG06NTE3CisjLCBmdXp6eSwgcGVybC1mb3JtYXQKKyN8IG1zZ2lkICJjYW4ndCBidWlsZCB3aXRoIHNvdXJjZSBmb3JtYXQgJyVzJzogJXMiCittc2dpZCAiJyVzJyBpcyBub3Qgc3VwcG9ydGVkIGJ5IHRoZSBzb3VyY2UgZm9ybWF0ICclcyciCittc2dzdHIgIm5vIHNlIHB1ZWRlIGNvbnN0cnVpciBjb24gZWwgZm9ybWF0byBkZSBmdWVudGUgwqslc8K7OiAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjYyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIi1zJXMgb3B0aW9uIG92ZXJyaWRlcyBlYXJsaWVyIC1zJXMgb3B0aW9uIgorbXNnc3RyICJsYSBvcGNpw7NuIMKrLXMlc8K7IGludmFsaWRhIGxhIG9wY2nDs24gwqstcyVzwrsgYW50ZXJpb3IiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbTo4NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJzb3VyY2UgaGFuZGxpbmcgc3R5bGUgLXMlcyBub3QgYWxsb3dlZCB3aXRoIC14IgorbXNnc3RyICJlbCB0aXBvIGRlIG1hbmlwdWxhY2nDs24gZGUgZnVlbnRlcyDCqy1zJXPCuyBubyBzZSBwZXJtaXRlIGNvbiDCqy14wrsiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbTo5NgorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL25hdGl2ZS5wbTo1MQorbXNnaWQgIm11bHRpcGxlIHRhcmZpbGVzIGluIHYxLjAgc291cmNlIHBhY2thZ2UiCittc2dzdHIgInZhcmlvcyBhcmNoaXZvcyB0YXIgZW4gdW4gcGFxdWV0ZSBmdWVudGUgdmVyc2nDs24gMS4wIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MTAxIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbToxMjkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5yZWNvZ25pemVkIGZpbGUgZm9yIGEgJXMgc291cmNlIHBhY2thZ2U6ICVzIgorbXNnc3RyICJmaWNoZXJvIG5vIHJlY29ub2NpZG8gZGUgdW4gcGFxdWV0ZSBmdWVudGUgJXM6ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MTA2CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvbmF0aXZlLnBtOjU4Cittc2dpZCAibm8gdGFyZmlsZSBpbiBGaWxlcyBmaWVsZCIKK21zZ3N0ciAibm8gZXhpc3RlIG5pbmfDum4gZmljaGVybyB0YXIgZW4gZWwgY2FtcG8gwqtGaWxlc8K7IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MTA5Cittc2dpZCAibmF0aXZlIHBhY2thZ2Ugd2l0aCAub3JpZy50YXIiCittc2dzdHIgInBhcXVldGUgbmF0aXZvIGNvbiDCqy5vcmlnLnRhcsK7IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MTIyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW5hbWUgYCVzJyB0byBgJXMnIgorbXNnc3RyICJubyBzZSBwdWRvIHJlbm9tYnJhciDCqyVzwrsgYSDCqyVzwrsiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToxMjYgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjE0MQorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjE1MyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06MTY2CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvYnpyLnBtOjE5MAorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL25hdGl2ZS5wbTo2MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bnBhY2tpbmcgJXMiCittc2dzdHIgImRlc2VtcGFxdWV0YW5kbyAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjEzMworbXNnaWQgInVuYWJsZSB0byBrZWVwIG9yaWcgZGlyZWN0b3J5IChhbHJlYWR5IGV4aXN0cykiCittc2dzdHIgIm5vIHNlIHB1ZG8gY29uc2VydmFyIGVsIGRpcmVjdG9yaW8gwqtvcmlnwrsgKHlhIGV4aXN0ZSkiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToxNDAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlbmFtZSBuZXdseS1leHRyYWN0ZWQgJXMgdG8gJXMiCittc2dzdHIgIiIKKyJzZSBoYSBkZXRlY3RhZG8gdW4gZmFsbG8gYWwgcmVub21icmFyIGVsIHJlY2nDqW4gZXh0cmHDrWRvIMKrJXPCuyBjb21vIMKrJXPCuyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjE0NgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVuYW1lIHNhdmVkICVzIHRvICVzIgorbXNnc3RyICJzZSBoYSBkZXRlY3RhZG8gdW4gZmFsbG8gYWwgcmVub21icmFyIMKrJXPCuywgZ3VhcmRhZG8sIGEgwqslc8K7IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MTUzIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbToyMjIKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbToxNzIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiYXBwbHlpbmcgJXMiCittc2dzdHIgImFwbGljYW5kbyDCqyVzwrsiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToxNTgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidXBzdHJlYW0gZmlsZXMgdGhhdCBoYXZlIGJlZW4gbW9kaWZpZWQ6ICVzIgorbXNnc3RyICJmaWNoZXJvcyBkZSBsYSBmdWVudGUgb3JpZ2luYWwgcXVlIHNlIGhhbiBtb2RpZmljYWRvOiAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjE2OAorbXNnaWQgIm9ubHkgc3VwcG9ydHMgZ3ppcCBjb21wcmVzc2lvbiIKK21zZ3N0ciAic8OzbG8gYWNlcHRhIGxhIGNvbXByZXNpw7NuIGd6aXAiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToxNzkKK21zZ2lkICIiCisiLWIgdGFrZXMgYXQgbW9zdCBhIGRpcmVjdG9yeSBhbmQgYW4gb3JpZyBzb3VyY2UgYXJndW1lbnQgKHdpdGggdjEuMCBzb3VyY2UgIgorInBhY2thZ2UpIgorbXNnc3RyICIiCisiwqstYsK7IGFjZXB0YSBjb21vIG3DoXhpbW8gdW4gZGlyZWN0b3JpbyB5IHVuIGFyZ3VtZW50byBkZSBmdWVudGVzIMKrb3JpZ8K7IChjb24gIgorImxhIHZlcnNpw7NuIDEuMCBkZSBmb3JtYXRvIGRlIHBhcXVldGUgZnVlbnRlKSIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjE4NQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJzb3VyY2UgaGFuZGxpbmcgc3R5bGUgLXMlcyBub3QgYWxsb3dlZCB3aXRoIC1iIgorbXNnc3RyICJlbCB0aXBvIGRlIG1hbmlwdWxhY2nDs24gZGUgZnVlbnRlcyDCqy1zJXPCuyBubyBzZSBwZXJtaXRlIGNvbiDCqy1iwrsiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToyMDAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAicGFja2VkIG9yaWcgYCVzJyBleGlzdHMgYnV0IGlzIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgInlhIGV4aXN0ZSB1biDCq29yaWfCuyDCqyVzwrsgZGVzZW1wYXF1ZXRhZG8sIHBlcm8gbm8gZXMgdW4gZmljaGVybyBzaW1wbGUiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToyMTIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IHN0YXQgb3JpZyBhcmd1bWVudCAlcyIKK21zZ3N0ciAiIgorIm5vIHNlIHB1ZWRlIGRlZmluaXIgZWwgZXN0YWRvICjCq3N0YXTCuykgZGVsIGZpY2hlcm8gYXJndW1lbnRvIMKrb3JpZ8K7IGRlICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MjE4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJvcmlnIGFyZ3VtZW50IGlzIHVucGFja2VkIGJ1dCBzb3VyY2UgaGFuZGxpbmcgc3R5bGUgLXMlcyBjYWxscyBmb3IgcGFja2VkICguIgorIm9yaWcudGFyLjxleHQ+KSIKK21zZ3N0ciAiIgorImVsIGFyZ3VtZW50byDCq29yaWfCuyBlc3TDoSBkZXNlbXBhcXVldGFkbywgcGVybyBlbCB0aXBvIGRlIG1hbmlwdWxhY2nDs24gZGUgIgorImZ1ZW50ZXMgwqstcyVzwrsgaW52b2NhIHVubyBlbXBhcXVldGFkbyAowqsub3JpZy50YXIuPGV4dD7CuykiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToyMjYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIm9yaWcgYXJndW1lbnQgaXMgcGFja2VkIGJ1dCBzb3VyY2UgaGFuZGxpbmcgc3R5bGUgLXMlcyBjYWxscyBmb3IgdW5wYWNrZWQgKC4iCisib3JpZy8pIgorbXNnc3RyICIiCisiZWwgYXJndW1lbnRvIMKrb3JpZ8K7IGVzdGEgZW1wYXF1ZXRhZG8sIHBlcm8gZWwgdGlwbyBkZSBtYW5pcHVsYWNpw7NuIGRlICIKKyJmdWVudGVzIMKrLXMlc8K7IGludm9jYSB1bm8gZGVzZW1wYXF1ZXRhZG8gKMKrLm9yaWcvwrspIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MjMxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIm9yaWcgYXJndW1lbnQgJXMgaXMgbm90IGEgcGxhaW4gZmlsZSBvciBkaXJlY3RvcnkiCittc2dzdHIgImVsIGFyZ3VtZW50byDCq29yaWfCuyAlcyBubyBlcyB1biBmaWNoZXJvIHNpbXBsZSBvIGRpcmVjdG9yaW8iCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToyMzcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIm9yaWcgYXJndW1lbnQgaXMgZW1wdHkgKG1lYW5zIG5vIG9yaWcsIG5vIGRpZmYpIGJ1dCBzb3VyY2UgaGFuZGxpbmcgc3R5bGUgLXMiCisiJXMgd2FudHMgc29tZXRoaW5nIgorbXNnc3RyICIiCisiZWwgYXJndW1lbnRvIMKrb3JpZ8K7IGVzdMOhIHZhY8OtbyAoZXN0byBlcywgc2luIMKrb3JpZ8K7IG5pIGRpZmYpIHBlcm8gZWwgdGlwbyBkZSAiCisibWFuaXB1bGFjacOzbiBkZSBmdWVudGVzIMKrLXMlc8K7IHJlcXVpZXJlIGFsZ28iCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToyNTAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5wYWNrZWQgb3JpZyBgJXMnIGV4aXN0cyBidXQgaXMgbm90IGEgZGlyZWN0b3J5IgorbXNnc3RyICJlbCDCq29yaWfCuyBkZXNlbXBhcXVldGFkbyDCqyVzwrsgZXhpc3RlLCBwZXJvIG5vIGVzIHVuIGRpcmVjdG9yaW8iCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToyNTUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgcHV0YXRpdmUgdW5wYWNrZWQgb3JpZyBgJXMnIgorbXNnc3RyICJubyBzZSBwdWRvIG9idGVuZXIgZWwgZXN0YWRvICjCq3N0YXTCuykgZGVsIGZpY2hlcm8gwqtvcmlnwrsgcHV0YXRpdm8gwqslc8K7IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MjY0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInNvdXJjZSBkaXJlY3RvcnkgJyVzJyBpcyBub3QgPHNvdXJjZXBhY2thZ2U+LTx1cHN0cmVhbXZlcnNpb24+ICclcyciCittc2dzdHIgIiIKKyJlbCBkaXJlY3RvcmlvIGRlIGZ1ZW50ZXMgwqslc8K7IG5vIGVzIDxwYXF1ZXRlLWZ1ZW50ZT4tPHZlcnNpw7NuLWRlc2Fycm9sbGFkb3ItIgorIm9yaWdpbmFsPiDCqyVzwrsiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToyNzMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiLm9yaWcgZGlyZWN0b3J5IG5hbWUgJXMgaXMgbm90IDxwYWNrYWdlPi08dXBzdHJlYW12ZXJzaW9uPiAod2FudGVkICVzKSIKK21zZ3N0ciAiIgorImVsIG5vbWJyZSBkZWwgZGlyZWN0b3JpbyDCqy5vcmlnwrsgJXMgbm8gZXMgPHBhcXVldGU+LTx2ZXJzacOzbi1kZXNhcnJvbGxhZG9yLSIKKyJvcmlnaW5hbD4gKHNlIGhhIHJlcXVlcmlkbyAlcykiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToyODIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIi5vcmlnLnRhciBuYW1lICVzIGlzIG5vdCA8cGFja2FnZT5fPHVwc3RyZWFtdmVyc2lvbj4ub3JpZy50YXIgKHdhbnRlZCAlcykiCittc2dzdHIgIiIKKyJlbCBub21icmUgZGUgwqsub3JpZy50YXLCuyAlcyBubyBlcyA8cGFxdWV0ZT5fPHZlcnNpw7NuLWRlc2Fyb2xsYWRvci1vcmlnaW5hbD4uIgorIm9yaWcudGFyIChzZSBoYSByZXF1ZXJpZG8gJXMpIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06Mjk0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJ0YXJmaWxlIGAlcycgYWxyZWFkeSBleGlzdHMsIG5vdCBvdmVyd3JpdGluZywgZ2l2aW5nIHVwOyB1c2UgLXNVIG9yIC1zUiB0byAiCisib3ZlcnJpZGUiCittc2dzdHIgIiIKKyJlbCBhcmNoaXZvIHRhciDCqyVzwrsgeWEgZXhpc3RlLCBubyBzZSB2YSBhIHNvYnJlZXNjcmliaXIsIGNhbmNlbGFuZG87IHVzZSDCqy0iCisic1XCuyDCqy1zUsK7IHBhcmEgaW52YWxpZGFyIGVzdGUgY29tcG9ydGFtaWVudG8iCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToyOTgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoZWNrIGZvciBleGlzdGVuY2Ugb2YgYCVzJyIKK21zZ3N0ciAibm8gc2UgcHVkbyBjb21wcm9iYXIgbGEgZXhpc3RlbmNpYSBkZSDCqyVzwrsiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbTozMTMgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjM3NQorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL25hdGl2ZS5wbTo5OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gcmVuYW1lIGAlcycgKG5ld2x5IGNyZWF0ZWQpIHRvIGAlcyciCittc2dzdHIgIm5vIHNlIHB1ZG8gcmVub21icmFyIMKrJXPCuyAocmVjacOpbiBjcmVhZG8pIGNvbW8gwqslc8K7IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MzE2IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbTozNzgKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo2MDMKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9uYXRpdmUucG06MTAyCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06MzY3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGFuZ2UgcGVybWlzc2lvbiBvZiBgJXMnIgorbXNnc3RyICJubyBzZSBoYW4gcG9kaWRvIGNhbWJpYXIgbG9zIHBlcm1pc29zIGRlIMKrJXPCuyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjMxOCBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06MzQ4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImJ1aWxkaW5nICVzIHVzaW5nIGV4aXN0aW5nICVzIgorbXNnc3RyICJjb25zdHJ1eWVuZG8gwqslc8K7IHVzYW5kbyDCqyVzwrssIHF1ZSBlc3TDoSBwcmVzZW50ZSBlbiBlbCBzaXN0ZW1hIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MzI3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJvcmlnIGRpciBgJXMnIGFscmVhZHkgZXhpc3RzLCBub3Qgb3ZlcndyaXRpbmcsIGdpdmluZyB1cDsgdXNlIC1zQSwgLXNLIG9yIC0iCisic1AgdG8gb3ZlcnJpZGUiCittc2dzdHIgIiIKKyJlbCBkaXJlY3RvcmlvIMKrb3JpZ8K7IMKrJXPCuyB5YSBleGlzdGUsIG5vIHNlIHZhIGEgc29icmVlc2NyaWJpciwgY2FuY2VsYW5kbzsgIgorInVzZSDCqy1zQcK7LCDCqy1zS8K7IG8gwqstc1DCuyBwYXJhIGludmFsaWRhciBlc3RlIGNvbXBvcnRhbWllbnRvIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MzM1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGVjayBmb3IgZXhpc3RlbmNlIG9mIG9yaWcgZGlyIGAlcyciCittc2dzdHIgIm5vIHNlIHB1ZG8gY29tcHJvYmFyIGxhIGV4aXN0ZW5jaWEgZGVsIGRpcmVjdG9yaW8gwqtvcmlnwrsgwqslc8K7IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MzY2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInRoZSBkaWZmIG1vZGlmaWVzIHRoZSBmb2xsb3dpbmcgdXBzdHJlYW0gZmlsZXM6ICVzIgorbXNnc3RyICIiCisiZWwgZGlmZiBtb2RpZmljYSBsb3Mgc2lndWllbnRlcyBmaWNoZXJvcyBkZWwgZGVzYXJyb2xsYWRvciBvcmlnaW5hbDogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbTozNjgKK21zZ2lkICIiCisidXNlIHRoZSAnMy4wIChxdWlsdCknIGZvcm1hdCB0byBoYXZlIHNlcGFyYXRlIGFuZCBkb2N1bWVudGVkIGNoYW5nZXMgdG8gIgorInVwc3RyZWFtIGZpbGVzLCBzZWUgZHBrZy1zb3VyY2UoMSkiCittc2dzdHIgIiIKKyJ1c2UgZWwgZm9ybWF0byDCqzMuMCAocXVpbHQpwrsgcGFyYSBxdWUgbG9zIGNhbWJpb3MgYSBsb3MgZmljaGVyb3Mgb3JpZ2luYWxlcyAiCisib2N1cnJhbiBwb3Igc2VwYXJhZG8geSBkZSBmb3JtYSBkb2N1bWVudGFkYSwgY29uc3VsdGUgZHBrZy1zb3VyY2UoMSkiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbTozNzAKK21zZ2lkICJhYm9ydGluZyBkdWUgdG8gLS1hYm9ydC1vbi11cHN0cmVhbS1jaGFuZ2VzIgorbXNnc3RyICIiCisiY2FuY2VsYW5kbyBkZWJpZG8gYSDCqy0tYWJvcnQtb24tdXBzdHJlYW0tY2hhbmdlc8K7IChjYW1iaW9zIGVuIGxhIGZ1ZW50ZSAiCisib3JpZ2luYWwpIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06Mzg4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzOiB1bnJlcHJlc2VudGFibGUgY2hhbmdlcyB0byBzb3VyY2UiCittc2dzdHIgIiVzOiBjYW1iaW9zIGlycmVwcmVzZW50YWJsZXMgZW4gbGFzIGZ1ZW50ZXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbToxMTkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIGZpbGVzIGluICVzIHNvdXJjZSBwYWNrYWdlOiAlcy4qIgorbXNnc3RyICJzZSBoYW4gZGV0ZWN0YWRvIGZpY2hlcm9zIGR1cGxpY2Fkb3MgZW4gZWwgcGFxdWV0ZSBmdWVudGUgJXM6ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06MTM1Cittc2dpZCAibWlzc2luZyBvcmlnLnRhciBvciBkZWJpYW4udGFyIGZpbGUgaW4gdjIuMCBzb3VyY2UgcGFja2FnZSIKK21zZ3N0ciAiIgorImZhbHRhIHVuIGZpY2hlcm8gwqtvcmlnLnRhcsK7IG8gwqtkZWJpYW4udGFywrsgZW4gZWwgcGFxdWV0ZSBmdWVudGUgdmVyc2nDs24gMi4wIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06MTU1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInJlcXVpcmVkIHJlbW92YWwgb2YgYCVzJyBpbnN0YWxsZWQgYnkgb3JpZ2luYWwgdGFyYmFsbCIKK21zZ3N0ciAiIgorInNlIHJlcXVpZXJlIGxhIGVsaW1pbmFjacOzbiBkZSDCqyVzwrssIGluc3RhbGFkbyBwb3IgZWwgYXJjaGl2byB0YXJvcmlnaW5hbCIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjI0MAorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjI1NQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmFwcGx5aW5nICVzIgorbXNnc3RyICJubyBzZSB2YSBhIGFwbGljYXIgwqslc8K7IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06MjYzIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTozNDQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibm8gdXBzdHJlYW0gdGFyYmFsbCBmb3VuZCBhdCAlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06MzE0CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06MzI5CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJwYXRjaGVzIGhhdmUgbm90IGJlZW4gYXBwbGllZCwgYXBwbHlpbmcgdGhlbSBub3cgKHVzZSAtLW5vLXByZXBhcmF0aW9uIHRvICIKKyN8ICJvdmVycmlkZSkiCittc2dpZCAicGF0Y2hlcyBhcmUgbm90IGFwcGxpZWQsIGFwcGx5aW5nIHRoZW0gbm93IgorbXNnc3RyICIiCisibm8gc2UgaGFuIGFwbGljYWRvIGxvcyBwYXJjaGVzLCBhcGxpY8OhbmRvbG9zIGVuIGVzdGUgbW9tZW50byAodXNlIMKrLS1uby0iCisicHJlcGFyYXRpb27CuyBwYXJhIGV2aXRhciBlc3RlIGNvbXBvcnRhbWllbnRvKSIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjMzMQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJzZXZlcmFsIG9yaWcudGFyIGZpbGVzIGZvdW5kICglcyBhbmQgJXMpIGJ1dCBvbmx5IG9uZSBpcyBhbGxvd2VkIgorbXNnc3RyICIiCisic2UgaGFuIGVuY29udHJhZG8gdmFyaW9zIGZpY2hlcm8gwqtvcmlnLnRhcsK7ICglcyB5ICVzKSwgcGVybyBzw7NsbyBzZSBhY2VwdGEgIgorInVubyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjM3MAorbXNnaWQgImNvcHkgb2YgdGhlIGRlYmlhbiBkaXJlY3RvcnkiCittc2dzdHIgImNvcGlhIGRlbCBkaXJlY3RvcmlvIMKrZGViaWFuwrsiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTozODgKK21zZ2lkICJ1bnJlcHJlc2VudGFibGUgY2hhbmdlcyB0byBzb3VyY2UiCittc2dzdHIgIm5vIHNlIHB1ZWRlbiByZXByZXNlbnRhciBsb3MgY2FtYmlvcyBoZWNob3MgYSBsYXMgZnVlbnRlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjM5MQorIywgZnV6enkKKyN8IG1zZ2lkICJsb2NhbCBjaGFuZ2VzIHN0b3JlZCBpbiAlcywgdGhlIG1vZGlmaWVkIGZpbGVzIGFyZToiCittc2dpZCAibG9jYWwgY2hhbmdlcyBkZXRlY3RlZCwgdGhlIG1vZGlmaWVkIGZpbGVzIGFyZToiCittc2dzdHIgIiIKKyJzZSBoYW4gZ3VhcmRhZG8gbG9zIGNhbWJpb3MgbG9jYWxlcyBlbiDCqyVzwrssIGxvcyBmaWNoZXJvcyBtb2RpZmljYWRvcyBzb246IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NDEwCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvYnpyLnBtOjk3CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvbmF0aXZlLnBtOjc2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIi1iIHRha2VzIG9ubHkgb25lIHBhcmFtZXRlciB3aXRoIGZvcm1hdCBgJXMnIgorbXNnc3RyICLCqy1iwrsgc8OzbG8gdG9tYSB1biBwYXLDoW1ldHJvIGNvbiBmb3JtYXRvIMKrJXPCuyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjQ0NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiYWRkICVzIGluIGRlYmlhbi9zb3VyY2UvaW5jbHVkZS1iaW5hcmllcyBpZiB5b3Ugd2FudCB0byBzdG9yZSB0aGUgbW9kaWZpZWQgIgorImJpbmFyeSBpbiB0aGUgZGViaWFuIHRhcmJhbGwiCittc2dzdHIgIiIKKyJhw7FhZGEgwqslc8K7IGVuIMKrZGViaWFuL3NvdXJjZS9pbmNsdWRlLWJpbmFyaWVzwrsgc2kgZGVzZWEgZ3VhcmRhciBlbCBiaW5hcmlvICIKKyJtb2RpZmljYWRvIGVuIGVsIGFyY2hpdm8gdGFyIGRlIERlYmlhbiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjQ1OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bndhbnRlZCBiaW5hcnkgZmlsZTogJXMiCittc2dzdHIgImZpY2hlcm8gYmluYXJpbyBubyBkZXNlYWRvOiAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjQ5MworIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiZGV0ZWN0ZWQgJWQgdW53YW50ZWQgYmluYXJ5IGZpbGUgKGFkZCBpdCBpbiBkZWJpYW4vc291cmNlL2luY2x1ZGUtYmluYXJpZXMgIgorInRvIGFsbG93IGl0cyBpbmNsdXNpb24pLiIKK21zZ2lkX3BsdXJhbCAiIgorImRldGVjdGVkICVkIHVud2FudGVkIGJpbmFyeSBmaWxlcyAoYWRkIHRoZW0gaW4gZGViaWFuL3NvdXJjZS9pbmNsdWRlLSIKKyJiaW5hcmllcyB0byBhbGxvdyB0aGVpciBpbmNsdXNpb24pLiIKK21zZ3N0clswXSAiIgorInNlIGhhIGRldGVjdGFkbyAlZCBmaWNoZXJvIGJpbmFyaW8gKGHDsWFkYSBlc3RlIGVuIMKrZGViaWFuL3NvdXJjZS9pbmNsdWRlLSIKKyJiaW5hcmllc8K7IHBhcmEgcGVybWl0aXIgc3UgaW5jbHVzacOzbikiCittc2dzdHJbMV0gIiIKKyJzZSBoYW4gZGV0ZWN0YWRvICVkIGZpY2hlcm9zIGJpbmFyaW9zIChhw7FhZGEgZXN0b3MgZW4gwqtkZWJpYW4vc291cmNlL2luY2x1ZGUtIgorImJpbmFyaWVzwrsgcGFyYSBwZXJtaXRpciBzdSBpbmNsdXNpw7NuKSIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjUwOAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ5b3UgY2FuIGludGVncmF0ZSB0aGUgbG9jYWwgY2hhbmdlcyB3aXRoICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo1MTAKKyMsIGZ1enp5LCBwZXJsLWZvcm1hdAorI3wgbXNnaWQgImFib3J0aW5nIGR1ZSB0byAtLWFib3J0LW9uLXVwc3RyZWFtLWNoYW5nZXMiCittc2dpZCAiYWJvcnRpbmcgZHVlIHRvIHVuZXhwZWN0ZWQgdXBzdHJlYW0gY2hhbmdlcywgc2VlICVzIgorbXNnc3RyICIiCisiY2FuY2VsYW5kbyBkZWJpZG8gYSDCqy0tYWJvcnQtb24tdXBzdHJlYW0tY2hhbmdlc8K7IChjYW1iaW9zIGVuIGxhIGZ1ZW50ZSAiCisib3JpZ2luYWwpIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NTIwIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo2NTMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibG9jYWwgY2hhbmdlcyBoYXZlIGJlZW4gcmVjb3JkZWQgaW4gYSBuZXcgcGF0Y2g6ICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo1MjQgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjYwOQorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjYzNyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NjUxCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06MzY5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZW1vdmUgJXMiCittc2dzdHIgIm5vIHNlIGhhIHBvZGlkbyBlbGltaW5hciDCqyVzwrsiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo1MzQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiYWRkaW5nICVzIHRvICVzIgorbXNnc3RyICJhw7FhZGllbmRvIMKrJXPCuyBhIMKrJXPCuyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjYwMQorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjM2NQorIywgZnV6enksIHBlcmwtZm9ybWF0CisjfCBtc2dpZCAiZmFpbGVkIHRvIHJlbmFtZSBzYXZlZCAlcyB0byAlcyIKK21zZ2lkICJmYWlsZWQgdG8gY29weSAlcyB0byAlcyIKK21zZ3N0ciAic2UgaGEgZGV0ZWN0YWRvIHVuIGZhbGxvIGFsIHJlbm9tYnJhciDCqyVzwrssIGd1YXJkYWRvLCBhIMKrJXPCuyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjYyNAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVnaXN0ZXIgY2hhbmdlcyBpbiAlcywgdGhpcyBwYXRjaCBhbHJlYWR5IGV4aXN0cyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NjM4CisjLCBmdXp6eQorI3wgbXNnaWQgInVucmVwcmVzZW50YWJsZSBjaGFuZ2VzIHRvIHNvdXJjZSIKK21zZ2lkICJ0aGVyZSBhcmUgbm8gbG9jYWwgY2hhbmdlcyB0byByZWNvcmQiCittc2dzdHIgIm5vIHNlIHB1ZWRlbiByZXByZXNlbnRhciBsb3MgY2FtYmlvcyBoZWNob3MgYSBsYXMgZnVlbnRlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjY0MworbXNnaWQgIkVudGVyIHRoZSBkZXNpcmVkIHBhdGNoIG5hbWU6ICIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvYnpyLnBtOjUyCittc2dpZCAiIgorIlRoaXMgc291cmNlIHBhY2thZ2UgY2FuIG9ubHkgYmUgbWFuaXB1bGF0ZWQgdXNpbmcgYnpyLCB3aGljaCBpcyBub3QgaW4gdGhlICIKKyJQQVRILiIKK21zZ3N0ciAiIgorIlPDs2xvIHNlIHB1ZWRlIG1hbmlwdWxhciBlc3RlIHBhcXVldGUgZnVlbnRlIG1lZGlhbnRlIGJ6ciwgcXVlIG5vIGVzdMOhICIKKyJwcmVzZW50ZSBlbiBsYSB2YXJpYWJsZSBkZSBlbnRvcm5vIMKrUEFUSMK7IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvYnpyLnBtOjU5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJzb3VyY2UgZGlyZWN0b3J5IGlzIG5vdCB0aGUgdG9wIGRpcmVjdG9yeSBvZiBhIGJ6ciByZXBvc2l0b3J5ICglcy8uYnpyIG5vdCAiCisicHJlc2VudCksIGJ1dCBGb3JtYXQgYnpyIHdhcyBzcGVjaWZpZWQiCittc2dzdHIgIiIKKyJFbCBkaXJlY3RvcmlvIGRlIGZ1ZW50ZXMgbm8gZXMgZWwgZGlyZWN0b3JpbyBzdXBlcmlvciBkZSB1biByZXBvc2l0b3JpbyBienIgIgorIiglcy8uYnpyIG5vIGVzdMOhIHByZXNlbnRlKSwgcGVybyBzZSBoYSBkZWZpbmlkbyDCq0Zvcm1hdCBienLCuyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2J6ci5wbTo2NgorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBpcyBhIHN5bWxpbmsiCittc2dzdHIgIsKrJXPCuyBlcyB1biBlbmxhY2Ugc2ltYsOzbGljbyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2J6ci5wbTo3MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBpcyBhIHN5bWxpbmsgdG8gb3V0c2lkZSAlcyIKK21zZ3N0ciAiwqslc8K7IGVzIHVuIGVubGFjZSBzaW1iw7NsaWNvIGFsIGV4dGVyaW9yIGRlIMKrJXPCuyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2J6ci5wbTo4MworbXNnaWQgImRvZXNuJ3QgY29udGFpbiBhIGJ6ciByZXBvc2l0b3J5IgorbXNnc3RyICJubyBjb250aWVuZSB1biByZXBvc2l0b3JpbyBienIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9ienIucG06MTI3Cittc2dpZCAiYnpyIHN0YXR1cyBleGl0ZWQgbm9uemVybyIKK21zZ3N0ciAiYnpyIGNlcnLDsyBjb24gdW4gZXN0YWRvIGRpc3RpbnRvIGRlIGNlcm8iCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9ienIucG06MTI5CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvZ2l0LnBtOjEzMworIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmNvbW1pdHRlZCwgbm90LWlnbm9yZWQgY2hhbmdlcyBpbiB3b3JraW5nIGRpcmVjdG9yeTogJXMiCittc2dzdHIgIiIKKyJzZSBoYW4gZGV0ZWN0YWRvIGNhbWJpb3Mgbm8gaWdub3JhZG9zIHNpbiBlbnZpYXIgKMKrdW5jb21taXRlZMK7KSBlbiBlbCAiCisiZGlyZWN0b3JpbyBhY3R1YWw6ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvYnpyLnBtOjE3OQorbXNnaWQgImZvcm1hdCB2My4wIHVzZXMgb25seSBvbmUgc291cmNlIGZpbGUiCittc2dzdHIgImVsIGZvcm1hdG8gdjMuMCBzw7NsbyB1c2EgdW4gZmljaGVybyBkZSBmdWVudGUiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9ienIucG06MTgzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImV4cGVjdGVkICVzLCBnb3QgJXMiCittc2dzdHIgInNlIGVzcGVyYWJhIMKrJXPCuywgc2Ugb2J0dXZvIMKrJXPCuyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2N1c3RvbS5wbTo0MAorbXNnaWQgIkZvcm1hdCBgMy4wIChjdXN0b20pJyBpcyBvbmx5IHVzZWQgdG8gY3JlYXRlIHNvdXJjZSBwYWNrYWdlcyIKK21zZ3N0ciAiRWwgZm9ybWF0byDCqzMuMCAoY3VzdG9tKcK7IHNlIHVzYSBzw7NsbyBwYXJhIGNyZWFyIHBhcXVldGVzIGZ1ZW50ZSIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2N1c3RvbS5wbTo0NgorbXNnaWQgIm5vIGZpbGVzIGluZGljYXRlZCBvbiBjb21tYW5kIGxpbmUiCittc2dzdHIgIm5vIHNlIGhhbiBpbmRpY2FkbyBmaWNoZXJvcyBlbiBsYSBsw61uZWEgZGUgw7NyZGVuZXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9jdXN0b20ucG06NTMKK21zZ2lkICItLXRhcmdldC1mb3JtYXQgb3B0aW9uIGlzIG1pc3NpbmciCittc2dzdHIgIlNlIGhhIGRldGVjdGFkbyBsYSBmYWx0YSBkZSBsYSBvcGNpw7NuIMKrLS10YXJnZXQtZm9ybWF0wrsiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9uYXRpdmUucG06NTQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5yZWNvZ25pemVkIGZpbGUgZm9yIGEgbmF0aXZlIHNvdXJjZSBwYWNrYWdlOiAlcyIKK21zZ3N0ciAiZmljaGVybyBubyByZWNvbm9jaWRvIHBhcmEgdW4gcGFxdWV0ZSBmdWVudGUgbmF0aXZvOiAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2dpdC5wbTo1NQorbXNnaWQgIiIKKyJUaGlzIHNvdXJjZSBwYWNrYWdlIGNhbiBvbmx5IGJlIG1hbmlwdWxhdGVkIHVzaW5nIGdpdCwgd2hpY2ggaXMgbm90IGluIHRoZSAiCisiUEFUSC4iCittc2dzdHIgIiIKKyJFc3RlIHBhcXVldGUgZnVlbnRlIHPDs2xvIHNlIHB1ZWRlIG1hbmlwdWxhciBjb24gZ2l0LCBxdWUgbm8gZXN0w6EgcHJlc2VudGUgZW4gIgorImxhIHZhcmlhYmxlIGRlIGVudG9ybm8gwqtQQVRIwrsiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9naXQucG06NjMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorInNvdXJjZSBkaXJlY3RvcnkgaXMgbm90IHRoZSB0b3AgZGlyZWN0b3J5IG9mIGEgZ2l0IHJlcG9zaXRvcnkgKCVzLy5naXQgbm90ICIKKyJwcmVzZW50KSwgYnV0IEZvcm1hdCBnaXQgd2FzIHNwZWNpZmllZCIKK21zZ3N0ciAiIgorIkVsIGRpcmVjdG9yaW8gZGUgZnVlbnRlcyBubyBlcyBlbCBkaXJlY3RvcmlvIHN1cGVyaW9yIGRlIHVuIHJlcG9zaXRvcmlvIGdpdCAiCisiKCVzLy5naXQgbm8gZXN0w6EgcHJlc2VudGUpLCBwZXJvIHNlIGhhIGRlZmluaWRvIGdpdCBwYXJhIMKrRm9ybWF0wrsiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9naXQucG06NjgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZ2l0IHJlcG9zaXRvcnkgJXMgdXNlcyBzdWJtb2R1bGVzLiBUaGlzIGlzIG5vdCB5ZXQgc3VwcG9ydGVkLiIKK21zZ3N0ciAiIgorImVsIHJlcG9zaXRvcmlvIGRlIGdpdCAlcyB1c2Egc3VibcOzZHVsb3MuIE5vIGVzIGNvbXBhdGlibGUgZW4gZWwgbW9tZW50byAiCisicHJlc2VudGUuIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvZ2l0LnBtOjkwCittc2dpZCAiZG9lc24ndCBjb250YWluIGEgZ2l0IHJlcG9zaXRvcnkiCittc2dzdHIgIm5vIGNvbnRpZW5lIHVuIHJlcG9zaXRvcmlvIGdpdCIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2dpdC5wbToxMzEKK21zZ2lkICJnaXQgbHMtZmlsZXMgZXhpdGVkIG5vbnplcm8iCittc2dzdHIgIsKrZ2l0IGxzLWZpbGVzwrsgY2VycsOzIGNvbiB1biB2YWxvciBkaXN0aW50byBkZSBjZXJvIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvZ2l0LnBtOjE0OQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjcmVhdGluZyBzaGFsbG93IGNsb25lIHdpdGggZGVwdGggJXMiCittc2dzdHIgImNyZWFuZG8gdW4gY2xvbiBzdXBlcmZpY2lhbCAowqtzaGFsbG93wrspIGNvbiBwcm9mdW5kaWRhZCAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2dpdC5wbToxNjUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiYnVuZGxpbmc6ICVzIgorbXNnc3RyICJhcmNoaXZhbmRvOiAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2dpdC5wbToyMDEKK21zZ2lkICJmb3JtYXQgdjMuMCAoZ2l0KSB1c2VzIG9ubHkgb25lIC5naXQgZmlsZSIKK21zZ3N0ciAiZWwgZm9ybWF0byB2My4wIChnaXQpIHPDs2xvIHVzYSB1biBmaWNoZXJvIMKrLmdpdMK7IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvZ2l0LnBtOjIwNworbXNnaWQgImZvcm1hdCB2My4wIChnaXQpIHVzZXMgb25seSBvbmUgLmdpdHNoYWxsb3cgZmlsZSIKK21zZ3N0ciAiZWwgZm9ybWF0byB2My4wIChnaXQpIHPDs2xvIHVzYSB1biBmaWNoZXJvIMKrLmdpdHNoYWxsb3fCuyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2dpdC5wbToyMTAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZm9ybWF0IHYzLjAgKGdpdCkgdW5rbm93biBmaWxlOiAlcyIKK21zZ3N0ciAiZmljaGVybyBkZXNjb25vY2lkbyBjb24gZm9ybWF0byB2My4wIChnaXQpOiAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2dpdC5wbToyMTQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZm9ybWF0IHYzLjAgKGdpdCkgZXhwZWN0ZWQgJXMiCittc2dzdHIgInNlIGVzcGVyYWJhIGVsIGZvcm1hdG8gdjMuMCAoZ2l0KSAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2dpdC5wbToyMjAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2xvbmluZyAlcyIKK21zZ3N0ciAiY2xvbmFuZG8gwqslc8K7IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvZ2l0LnBtOjIyNworbXNnaWQgInNldHRpbmcgdXAgc2hhbGxvdyBjbG9uZSIKK21zZ3N0ciAiY29uZmlndXJhbmRvIHVuIGNsb24gc3VwZXJmaWNpYWwgKMKrc2hhbGxvd8K7KSIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjczCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIHNob3VsZCBiZSBhIGRpcmVjdG9yeSBvciBub24tZXhpc3RpbmciCittc2dzdHIgIiVzIGRlYmVyw61hIHNlciB1biBkaXJlY3RvcmlvLCBvIG5vIGV4aXN0aXIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbTo3OQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBzaG91bGQgYmUgYSBmaWxlIG9yIG5vbi1leGlzdGluZyIKK21zZ3N0ciAiJXMgZGViZXLDrWEgc2VyIHVuIGZpY2hlcm8sIG8gbm8gZXhpc3RpciIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjEyMAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisidGhlIHNlcmllcyBmaWxlICglcykgY29udGFpbnMgdW5zdXBwb3J0ZWQgb3B0aW9ucyAoJyVzJywgbGluZSAlcyksIGRwa2ctIgorInNvdXJjZSBtaWdodCBmYWlsIHdoZW4gYXBwbHlpbmcgcGF0Y2hlcy4iCittc2dzdHIgIiIKKyJFbCBmaWNoZXJvIMKrc2VyaWVzwrsgKCVzKSBjb250aWVuZSBvcGNpb25lcyBpbmNvbXBhdGlibGVzICjCqyVzwrssIGzDrW5lYSAlcyksICIKKyJwdWVkZSBxdWUgZHBrZy1zb3VyY2UgZmFsbGUgYWwgYXBsaWNhciBwYXJjaGVzLiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjEzOAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3QgbWtkaXIgJXMiCittc2dzdHIgIm5vIHNlIHB1ZWRlIGNyZWFyIGVsIGRpcmVjdG9yaW8gwqslc8K7IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06MjEyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbid0IGNyZWF0ZSBzeW1saW5rICVzIgorbXNnc3RyICJubyBzZSBwdWVkZSBjcmVhciBlbCBlbmxhY2Ugc2ltYsOzbGljbyDCqyVzwrsiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbToyOTQKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbToyOTcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5zdXBwb3J0ZWQgdmVyc2lvbiBvZiB0aGUgcXVpbHQgbWV0YWRhdGE6ICVzIgorbXNnc3RyICJsYSB2ZXJzacOzbiBkZSBsb3MgbWV0YWRhdG9zIGRlIHF1aWx0IGVzIGluY29tcGF0aWJsZTogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9TdWJzdHZhcnMucG06MTUwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImJhZCBsaW5lIGluIHN1YnN0dmFycyBmaWxlICVzIGF0IGxpbmUgJWQiCittc2dzdHIgIiIKKyJsw61uZWEgaW5jb3JyZWN0YSBlbiBlbCBmaWNoZXJvIGRlIHN1c3RpdHVjacOzbiBkZSB2YXJpYWJsZXMgwqslc8K7IGVuIGxhIGzDrW5lYSAiCisiJWQiCisKKyM6IHNjcmlwdHMvRHBrZy9TdWJzdHZhcnMucG06MjE3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInRvbyBtYW55IHN1YnN0aXR1dGlvbnMgLSByZWN1cnNpdmUgPyAtIGluIGAlcyciCittc2dzdHIgImRlbWFzaWFkYXMgc3VzdGl0dWNpb25lcyAowr9yZWN1cnNpdm8/KSBlbiDCqyVzwrsiCisKKyM6IHNjcmlwdHMvRHBrZy9TdWJzdHZhcnMucG06MjI0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVua25vd24gc3Vic3RpdHV0aW9uIHZhcmlhYmxlICR7JXN9IgorbXNnc3RyICJsYSB2YXJpYWJsZSBkZSBzdXN0aXR1Y2nDs24gJHslc30gZXMgZGVzY29ub2NpZGEiCisKKyM6IHNjcmlwdHMvRHBrZy9TdWJzdHZhcnMucG06MjQ4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVudXNlZCBzdWJzdGl0dXRpb24gdmFyaWFibGUgJHslc30iCittc2dzdHIgImxhIHZhcmlhYmxlIGRlIHN1c3RpdHVjacOzbiAkeyVzfSBubyBlc3TDoSBlbiB1c28iCisKKyM6IHNjcmlwdHMvRHBrZy9WYXJzLnBtOjM0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInNvdXJjZSBwYWNrYWdlIG5hbWUgYCVzJyBjb250YWlucyBpbGxlZ2FsIGNoYXJhY3RlciBgJXMnIgorbXNnc3RyICJlbCBub21icmUgZGUgcGFxdWV0ZSBmdWVudGUgwqslc8K7IGNvbnRpZW5lIGVsIGNhcsOhY3RlciBpbGVnYWwgwqslc8K7IgorCisjOiBzY3JpcHRzL0Rwa2cvVmFycy5wbTozNworIywgcGVybC1mb3JtYXQKK21zZ2lkICJzb3VyY2UgcGFja2FnZSBuYW1lIGAlcycgc3RhcnRzIHdpdGggbm9uLWFscGhhbnVtIgorbXNnc3RyICIiCisiZWwgbm9tYnJlIGRlbCBwYXF1ZXRlIGZ1ZW50ZSDCqyVzwrsgZW1waWV6YSBjb24gdW4gY2Fyw6FjdGVyIHF1ZSBubyBlcyAiCisiYWxmYW51bcOpcmljbyIKKworIzogc2NyaXB0cy9EcGtnL1ZhcnMucG06NDYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAic291cmNlIHBhY2thZ2UgaGFzIHR3byBjb25mbGljdGluZyB2YWx1ZXMgLSAlcyBhbmQgJXMiCittc2dzdHIgImVsIHBhcXVldGUgZnVlbnRlIHRpZW5lIGRvcyB2YWxvcmVzIGVuIGNvbmZsaWN0bzogwqslc8K7IHkgwqslc8K7IgorCisjOiBzY3JpcHRzL0Rwa2cvVmVuZG9yL0RlYmlhbi5wbToxMDYKKyMsIGZ1enp5LCBwZXJsLWZvcm1hdAorI3wgbXNnaWQgInVua25vd24ga2V5LXZhbHVlICVzIgorbXNnaWQgInVua25vd24gaGFyZGVuaW5nIGZlYXR1cmU6ICVzIgorbXNnc3RyICJlbCB2YWxvciBkZSBjbGF2ZSAlcyBlcyBkZXNjb25vY2lkYSIKKworIzogc2NyaXB0cy9EcGtnL1ZlbmRvci9EZWJpYW4ucG06MTEwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImluY29ycmVjdCB2YWx1ZSBpbiBoYXJkZW5pbmcgb3B0aW9uIG9mIERFQl9CVUlMRF9NQUlOVF9PUFRJT05TOiAlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvVmVuZG9yL1VidW50dS5wbTo2MSBzY3JpcHRzL0Rwa2cvVmVuZG9yL1VidW50dS5wbTo2MworbXNnaWQgIiIKKyJWZXJzaW9uIG51bWJlciBzdWdnZXN0cyBVYnVudHUgY2hhbmdlcywgYnV0IE1haW50YWluZXI6IGRvZXMgbm90IGhhdmUgVWJ1bnR1ICIKKyJhZGRyZXNzIgorbXNnc3RyICIiCisiRWwgbsO6bWVybyBkZSB2ZXJzacOzbiBzdWdpZXJlIGNhbWJpb3MgcGFyYSBVYnVudHUsIHBlcm8gwqtNYWludGFpbmVyOsK7IG5vICIKKyJ0aWVuZSB1bmEgZGlyZWNjacOzbiBkZSBjb3JyZW8gZGUgVWJ1bnR1IgorCisjOiBzY3JpcHRzL0Rwa2cvVmVuZG9yL1VidW50dS5wbTo2NworbXNnaWQgIiIKKyJWZXJzaW9uIG51bWJlciBzdWdnZXN0cyBVYnVudHUgY2hhbmdlcywgYnV0IHRoZXJlIGlzIG5vIFhTQkMtT3JpZ2luYWwtIgorIk1haW50YWluZXIgZmllbGQiCittc2dzdHIgIiIKKyJFbCBuw7ptZXJvIGRlIHZlcnNpw7NuIHN1Z2llcmUgY2FtYmlvcyBwYXJhIFVidW50dSwgcGVybyBubyBoYXkgbmluZ8O6biBjYW1wbyAiCisiwqtYU0JDLU9yaWdpbmFsLU1haW50YWluZXLCuyIKKworIzogc2NyaXB0cy9EcGtnL1ZlbmRvci9VYnVudHUucG06MTIzCittc2dpZCAiJ2hhcmRlbmluZycgZmxhZyBmb3VuZCBidXQgJ2hhcmRlbmluZy13cmFwcGVyJyBub3QgaW5zdGFsbGVkIgorbXNnc3RyICIiCisic2UgaGEgZW5jb250cmFkbyBsYSBvcGNpw7NuIMKraGFyZGVuaW5nwrssIHBlcm8gaGFyZGVuaW5nLXdyYXBwZXIgbm8gZXN0w6EgIgorImluc3RhbGFkbyIKKworIzogc2NyaXB0cy9EcGtnL1ZlbmRvci9VYnVudHUucG06MTQyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIm92ZXJyaWRpbmcgJXMgaW4gZW52aXJvbm1lbnQ6ICVzIgorbXNnc3RyICJzdXN0aXR1eWVuZG8gwqslc8K7IGVuIGVsIGVudG9ybm86IMKrJXPCuyIKKworIzogc2NyaXB0cy9EcGtnL1ZlcnNpb24ucG06MjA0IHNjcmlwdHMvRHBrZy9WZXJzaW9uLnBtOjIwNgorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgYSB2YWxpZCB2ZXJzaW9uIgorbXNnc3RyICIlcyBubyBlcyB1bmEgdmVyc2nDs24gdsOhbGlkYSIKKworIzogc2NyaXB0cy9EcGtnL1ZlcnNpb24ucG06MzcxCittc2dpZCAidmVyc2lvbiBudW1iZXIgY2Fubm90IGJlIGVtcHR5IgorbXNnc3RyICJlbCBuw7ptZXJvIGRlIHZlcnNpw7NuIG5vIHB1ZWRlIGVzdGFyIHZhY8OtbyIKKworIzogc2NyaXB0cy9EcGtnL1ZlcnNpb24ucG06Mzc2CisjLCBmdXp6eQorI3wgbXNnaWQgInZlcnNpb24gbnVtYmVyIGNhbm5vdCBiZSBlbXB0eSIKK21zZ2lkICJ2ZXJzaW9uIG51bWJlciBkb2VzIG5vdCBzdGFydCB3aXRoIGRpZ2l0IgorbXNnc3RyICJlbCBuw7ptZXJvIGRlIHZlcnNpw7NuIG5vIHB1ZWRlIGVzdGFyIHZhY8OtbyIKKworIzogc2NyaXB0cy9EcGtnL1ZlcnNpb24ucG06MzgxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInZlcnNpb24gbnVtYmVyIGNvbnRhaW5zIGlsbGVnYWwgY2hhcmFjdGVyIGAlcyciCittc2dzdHIgImVsIG7Dum1lcm8gZGUgdmVyc2nDs24gY29udGllbmUgZWwgY2Fyw6FjdGVyIGlsZWdhbCDCqyVzwrsiCisKKyM6IHNjcmlwdHMvRHBrZy9WZXJzaW9uLnBtOjM4NgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJlcG9jaCBwYXJ0IG9mIHRoZSB2ZXJzaW9uIG51bWJlciBpcyBub3QgYSBudW1iZXI6ICclcyciCittc2dzdHIgImxhIHNlY2Npw7NuIMKrZXBvY2jCuyBkZWwgbsO6bWVybyBkZSB2ZXJzacOzbiBubyBlcyB1biBuw7ptZXJvOiDCqyVzwrsiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgIiVzOiBleHBvcnQgJXMgZnJvbSBkcGtnLWJ1aWxkZmxhZ3MgKG9yaWdpbjogJXMpOiAlc1xuIgorI34gbXNnaWQgIiVzOiBkcGtnLWJ1aWxkZmxhZ3MgKG9yaWdpbjogJXMpOiAlcyA9ICVzXG4iCisjfiBtc2dzdHIgIiVzOiBleHBvcnRhciDCqyVzwrsgZGUgZHBrZy1idWlsZGZsYWdzIChvcmlnZW46IMKrJXPCuyk6IMKrJXPCu1xuIgorCisjfiBtc2dpZCAiMSB0byAzIGFyZ3MgZXhwZWN0ZWRcbiIKKyN+IG1zZ3N0ciAiU2UgZXNwZXJhbiBkZSB1bm8gYSB0cmVzIGFyZ3VtZW50b3NcbiIKKworI34gbXNnaWQgIm5lZWQgYW4gYWN0aW9uIG9wdGlvbiIKKyN+IG1zZ3N0ciAicmVxdWllcmUgdW5hIG9wY2nDs24gZGUgYWNjacOzbiIKKworI34gbXNnaWQgImVudHJ5IG9mIEFQVCdzICVzIGZpbGUiCisjfiBtc2dzdHIgImVudHJhZGEgZGVsIGZpY2hlcm8gZGUgQVBUIMKrJXPCuyIKKworI34gbXNnaWQgIm5vIG9yaWcudGFyIGZpbGUgZm91bmQiCisjfiBtc2dzdHIgIm5vIHNlIGhhIGVuY29udHJhZG8gbmluZ8O6biBmaWNoZXJvIMKrb3JpZy50YXLCuyIKKworI34gbXNnaWQgImNhbm5vdCByZW5hbWUgJXMgdG8gJXMiCisjfiBtc2dzdHIgIm5vIHNlIHB1ZWRlIHJlbm9tYnJhciDCqyVzwrsgYSDCqyVzwrsiCisKKyN+IG1zZ2lkICJleGVjICVzIgorI34gbXNnc3RyICJlamVjdXRhciAlcyIKKworI34gbXNnaWQgImNhbm5vdCBleGVjIGRwa2ciCisjfiBtc2dzdHIgIm5vIHNlIHB1ZWRlIGVqZWN1dGFyIGRwa2ciCisKKyN+IG1zZ2lkICJnaXQgY29uZmlnIGV4aXRlZCBub256ZXJvIgorI34gbXNnc3RyICLCq2dpdCBjb25maWfCuyBjZXJyw7MgY29uIHVuIHZhbG9yIGRpc3RpbnRvIGRlIGNlcm8iCisKKyN+IG1zZ2lkICJleGVjdXRhYmxlIGJpdCBzZXQgb24gJXM7IGNsZWFyaW5nIgorI34gbXNnc3RyICJzZSBoYSBkZXRlY3RhZG8gdW4gYml0IHNldCBkZSBlamVjdWNpw7NuIGVuICVzOyBsaW1waWFuZG8iCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIGAlcyciCisjfiBtc2dzdHIgIm5vIHNlIHB1ZWRlIGVsaW1pbmFyIMKrJXPCuyIKKworI34gbXNnaWQgIm1vZGlmeWluZyAuZ2l0L2NvbmZpZyB0byBjb21tZW50IG91dCBzb21lIHNldHRpbmdzIgorI34gbXNnc3RyICJtb2RpZmljYW5kbyDCqy5naXQvY29uZmlnwrsgcGFyYSBjb21lbnRhciBhbGd1bmFzIG9wY2lvbmVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGFwcGVuZCB0byAlcyIKKyN+IG1zZ3N0ciAibm8gc2UgcHVlZGUgYcOxYWRpciBhICVzIgorCisjfiBtc2dpZCAiVGhlIGZvbGxvd2luZyBzZXR0aW5nKHMpIHdlcmUgZGlzYWJsZWQgYnkgZHBrZy1zb3VyY2UiCisjfiBtc2dzdHIgImRwa2ctc291cmNlIGhhIGRlc2FjdGl2YWRvIGxhcyBzaWd1aWVudGVzIG9wY2lvbmVzIgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3BvL2ZyLmdtbyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9wby9mci5nbW8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNWI5MjU2ZAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9wby9mci5nbW8KQmluYXJ5IGZpbGVzIGRpZmZlcgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3BvL2ZyLnBvIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3BvL2ZyLnBvCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmMwOTgxYjQKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvcG8vZnIucG8KQEAgLTAsMCArMSwzOTU3IEBACisjIFRyYW5zbGF0aW9uIG9mIGRwa2cgc2NyaXB0cyBtZXNzYWdlcyB0ZW1wbGF0ZXMgdG8gRnJlbmNoCisjIENvcHlyaWdodCAoQykgMjAwNy0yMDA5IERlYmlhbiBGcmVuY2ggbDEwbiB0ZWFtIDxkZWJpYW4tbDEwbi1mcmVuY2hAbGlzdHMuZGViaWFuLm9yZz4KKyMgVGhpcyBmaWxlIGlzIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBzYW1lIGxpY2Vuc2UgYXMgdGhlIGRwa2cgcGFja2FnZS4KKyMKKyMgVHJhbnNsYXRvcnM6CisjIEZyw6lkw6lyaWMgQm90aGFteSA8ZnJlZGVyaWMuYm90aGFteUBmcmVlLmZyPiwgMjAwNS0yMDA3LgorIyBDaHJpc3RpYW4gUGVycmllciA8YnVidWxsZUBkZWJpYW4ub3JnPiwgMjAwOCwgMjAwOSwgMjAxMCwgMjAxMS4KK21zZ2lkICIiCittc2dzdHIgIiIKKyJQcm9qZWN0LUlkLVZlcnNpb246IGZyXG4iCisiUmVwb3J0LU1zZ2lkLUJ1Z3MtVG86IGRlYmlhbi1kcGtnQGxpc3RzLmRlYmlhbi5vcmdcbiIKKyJQT1QtQ3JlYXRpb24tRGF0ZTogMjAxMS0xMC0xNCAwNzoxMSswMjAwXG4iCisiUE8tUmV2aXNpb24tRGF0ZTogMjAxMS0wNy0xOCAxOTo0MSswMjAwXG4iCisiTGFzdC1UcmFuc2xhdG9yOiBDaHJpc3RpYW4gUGVycmllciA8YnVidWxsZUBkZWJpYW4ub3JnPlxuIgorIkxhbmd1YWdlLVRlYW06IEZyZW5jaCA8ZGViaWFuLWwxMG4tZnJlbmNoQGxpc3RzLmRlYmlhbi5vcmc+XG4iCisiTGFuZ3VhZ2U6IGZyXG4iCisiTUlNRS1WZXJzaW9uOiAxLjBcbiIKKyJDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9VVRGLThcbiIKKyJDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiA4Yml0XG4iCisiUGx1cmFsLUZvcm1zOiBucGx1cmFscz0yOyBwbHVyYWw9bj4xO1xuIgorIlgtR2VuZXJhdG9yOiBMb2thbGl6ZSAxLjJcbiIKKworIzogc2NyaXB0cy9kcGtnLWFyY2hpdGVjdHVyZS5wbDozNiBzY3JpcHRzL2Rwa2ctYnVpbGRmbGFncy5wbDozMQorIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDozNyBzY3JpcHRzL2Rwa2ctY2hlY2tidWlsZGRlcHMucGw6MzYKKyM6IHNjcmlwdHMvZHBrZy1kaXN0YWRkZmlsZS5wbDozMyBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDo5NgorIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6NTYgc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGw6NDkKKyM6IHNjcmlwdHMvZHBrZy1tZXJnZWNoYW5nZWxvZ3MucGw6NTMgc2NyaXB0cy9kcGtnLW5hbWUucGw6NDYKKyM6IHNjcmlwdHMvZHBrZy1wYXJzZWNoYW5nZWxvZy5wbDozMSBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOjYwCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnNvdXJjZXMucGw6Nzggc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo1MzMKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6NDU1IHNjcmlwdHMvY2hhbmdlbG9nL2RlYmlhbi5wbDozNAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJEZWJpYW4gJXMgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiRGViaWFuICVzIHZlcnNpb24gJXMuXG4iCisKKyM6IHNjcmlwdHMvZHBrZy1hcmNoaXRlY3R1cmUucGw6MzgKK21zZ2lkICIiCisiXG4iCisiQ29weXJpZ2h0IChDKSAxOTk5LTIwMDEgTWFyY3VzIEJyaW5rbWFubiA8YnJpbmttZEBkZWJpYW4ub3JnPi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDQtMjAwNSBTY290dCBKYW1lcyBSZW1uYW50IDxzY290dEBuZXRzcGxpdC5jb20+LiIKK21zZ3N0ciAiIgorIlxuIgorIkNvcHlyaWdodCAoQykgMTk5OS0yMDAxIE1hcmN1cyBCcmlua21hbm4gPGJyaW5rbWRAZGViaWFuLm9yZz4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDA0LTIwMDUgU2NvdHQgSmFtZXMgUmVtbmFudCA8c2NvdHRAbmV0c3BsaXQuY29tPi4iCisKKyM6IHNjcmlwdHMvZHBrZy1hcmNoaXRlY3R1cmUucGw6NDIgc2NyaXB0cy9kcGtnLWJ1aWxkZmxhZ3MucGw6MzYKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6NDQgc2NyaXB0cy9kcGtnLWRpc3RhZGRmaWxlLnBsOjM4CisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDoxMDIgc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6NjIKKyM6IHNjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsOjU1IHNjcmlwdHMvZHBrZy1wYXJzZWNoYW5nZWxvZy5wbDozNworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo1NDIgc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDo0NjIKKyM6IHNjcmlwdHMvY2hhbmdlbG9nL2RlYmlhbi5wbDozOQorbXNnaWQgIiIKKyJcbiIKKyJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAyIG9yXG4iCisibGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuXG4iCittc2dzdHIgIiIKKyJcbiIKKyJDZSBsb2dpY2llbCBlc3QgdW4gbG9naWNpZWwgbGlicmUuIFZveWV6IGxhIGxpY2VuY2UgwqvCoEdOVSBHZW5lcmFsIFB1YmxpYyAiCisiTGljZW5zZcKgwrtcbiIKKyJkYW5zIGxhIHZlcnNpb24gMiBvdSB1bmUgdmVyc2lvbiBzdXDDqXJpZXVyZSBwb3VyIGxlcyBjb25kaXRpb25zIGRlIGNvcGllLiBJbCAiCisibid5IGEgUEFTIGRlIGdhcmFudGllLlxuIgorCisjOiBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLnBsOjUwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gWzxhY3Rpb24+XVxuIgorIlxuIgorIk9wdGlvbnM6XG4iCisiICAtYTxkZWJpYW4tYXJjaD4gICAgc2V0IGN1cnJlbnQgRGViaWFuIGFyY2hpdGVjdHVyZS5cbiIKKyIgIC10PGdudS1zeXN0ZW0+ICAgICBzZXQgY3VycmVudCBHTlUgc3lzdGVtIHR5cGUuXG4iCisiICAtTCAgICAgICAgICAgICAgICAgbGlzdCB2YWxpZCBhcmNoaXRlY3R1cmVzLlxuIgorIiAgLWYgICAgICAgICAgICAgICAgIGZvcmNlIGZsYWcgKG92ZXJyaWRlIHZhcmlhYmxlcyBzZXQgaW4gZW52aXJvbm1lbnQpLlxuIgorIlxuIgorIkFjdGlvbnM6XG4iCisiICAtbCAgICAgICAgICAgICAgICAgbGlzdCB2YXJpYWJsZXMgKGRlZmF1bHQpLlxuIgorIiAgLWU8ZGViaWFuLWFyY2g+ICAgIGNvbXBhcmUgd2l0aCBjdXJyZW50IERlYmlhbiBhcmNoaXRlY3R1cmUuXG4iCisiICAtaTxhcmNoLWFsaWFzPiAgICAgY2hlY2sgaWYgY3VycmVudCBEZWJpYW4gYXJjaGl0ZWN0dXJlIGlzIDxhcmNoLWFsaWFzPi5cbiIKKyIgIC1xPHZhcmlhYmxlPiAgICAgICBwcmludHMgb25seSB0aGUgdmFsdWUgb2YgPHZhcmlhYmxlPi5cbiIKKyIgIC1zICAgICAgICAgICAgICAgICBwcmludCBjb21tYW5kIHRvIHNldCBlbnZpcm9ubWVudCB2YXJpYWJsZXMuXG4iCisiICAtdSAgICAgICAgICAgICAgICAgcHJpbnQgY29tbWFuZCB0byB1bnNldCBlbnZpcm9ubWVudCB2YXJpYWJsZXMuXG4iCisiICAtYyA8Y29tbWFuZD4gICAgICAgc2V0IGVudmlyb25tZW50IGFuZCBydW4gdGhlIGNvbW1hbmQgaW4gaXQuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorbXNnc3RyICIiCisiU3ludGF4ZcKgOiAlcyBbPG9wdGlvbj4gLi4uXSBbPGFjdGlvbj5dXG4iCisiXG4iCisiT3B0aW9uc8KgOlxuIgorIiAgLWE8ZGViaWFuLWFyY2g+ICAgIGTDqWZpbmlyIGwnYXJjaGl0ZWN0dXJlIERlYmlhbiBlbiBjb3Vycy5cbiIKKyIgIC10PGdudS1zeXN0ZW0+ICAgICBkw6lmaW5pciBsZSB0eXBlIGR1IHN5c3TDqG1lIEdOVSBlbiBjb3Vycy5cbiIKKyIgIC1MICAgICAgICAgICAgICAgICBsaXN0ZXIgbGVzIGFyY2hpdGVjdHVyZXMgdmFsYWJsZXMuXG4iCisiICAtZiAgICAgICAgICAgICAgICAgZm9yw6dhZ2UsIGFubnVsZXIgbGVzIHZhcmlhYmxlcyBkw6lmaW5pZXMgcGFyICIKKyJsJ2Vudmlyb25uZW1lbnQuXG4iCisiXG4iCisiQWN0aW9uc8KgOlxuIgorIiAgLWwgICAgICAgICAgICAgICAgIGxpc3RlciBsZXMgdmFyaWFibGVzIChkw6lmYXV0KS5cbiIKKyIgIC1lPGRlYmlhbi1hcmNoPiAgICBjb21wYXJlciBhdmVjIGwnYXJjaGl0ZWN0dXJlIERlYmlhbiBlbiBjb3Vycy5cbiIKKyIgIC1pPGFyY2gtYWxpYXM+ICAgICB2w6lyaWZpZXIgcXVlIGwnYXJjaGl0ZWN0dXJlIERlYmlhbiBlbiBjb3VycyBlc3QgPGFyY2gtIgorImFsaWFzPi5cbiIKKyIgIC1xPHZhcmlhYmxlPiAgICAgICBuJ2FmZmljaGVyIHF1ZSBsYSB2YWxldXIgZGUgPHZhcmlhYmxlPi5cbiIKKyIgIC1zICAgICAgICAgICAgICAgICBhZmZpY2hlciBsYSBjb21tYW5kZSBwb3VyIGTDqWZpbmlyIGxlcyB2YXJpYWJsZXMgIgorImQnZW52aXJvbm5lbWVudC5cbiIKKyIgIC11ICAgICAgICAgICAgICAgICBhZmZpY2hlciBsYSBjb21tYW5kZSBwb3VyIGFubnVsZXIgbGVzIHZhcmlhYmxlcyAiCisiZCdlbnZpcm9ubmVtZW50LlxuIgorIiAgLWMgPGNvbW1hbmRlPiAgICAgIG1ldHRyZSBlbiBwbGFjZSBsJ2Vudmlyb25uZW1lbnQgZXQgZXjDqWN1dGVyIGxhICIKKyJjb21tYW5kZS5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICBhZmZpY2hlciBjZSBtZXNzYWdlIGQnYWlkZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICBhZmZpY2hlciBsYSB2ZXJzaW9uLlxuIgorCisjOiBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLnBsOjEyMCBzY3JpcHRzL2Rwa2ctYnVpbGRmbGFncy5wbDo5MQorIzogc2NyaXB0cy9kcGtnLWRpc3RhZGRmaWxlLnBsOjY4IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjE5NAorIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MTMzIHNjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsOjE0MQorIzogc2NyaXB0cy9kcGtnLXBhcnNlY2hhbmdlbG9nLnBsOjExMyBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjExOQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiBgJXMnIgorbXNnc3RyICJvcHRpb24gaW5jb25udWUgwqvCoCVzwqDCuyIKKworIzogc2NyaXB0cy9kcGtnLWFyY2hpdGVjdHVyZS5wbDoxNDQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5rbm93biBEZWJpYW4gYXJjaGl0ZWN0dXJlICVzLCB5b3UgbXVzdCBzcGVjaWZ5IEdOVSBzeXN0ZW0gdHlwZSwgdG9vIgorbXNnc3RyICIiCisiYXJjaGl0ZWN0dXJlIERlYmlhbiBpbmNvbm51ZSAlcywgdm91cyBkZXZleiBhdXNzaSBpbmRpcXVlciBsZSB0eXBlIGR1ICIKKyJzeXN0w6htZSBHTlUgIgorCisjOiBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLnBsOjE1MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmtub3duIEdOVSBzeXN0ZW0gdHlwZSAlcywgeW91IG11c3Qgc3BlY2lmeSBEZWJpYW4gYXJjaGl0ZWN0dXJlLCB0b28iCittc2dzdHIgIiIKKyJ0eXBlIGR1IHN5c3TDqG1lIEdOVSBpbmNvbm51ICVzLCB2b3VzIGRldmV6IGF1c3NpIGluZGlxdWVyIGwnYXJjaGl0ZWN0dXJlICIKKyJEZWJpYW4gIgorCisjOiBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLnBsOjE1OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGRlZmF1bHQgR05VIHN5c3RlbSB0eXBlIGZvciBEZWJpYW4gYXJjaGl0ZWN0dXJlICVzIgorbXNnc3RyICJ0eXBlIGR1IHN5c3TDqG1lIEdOVSBwYXIgZMOpZmF1dCBpbmNvbm51IHBvdXIgbCdhcmNoaXRlY3R1cmUgRGViaWFuICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLnBsOjE2MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiRGVmYXVsdCBHTlUgc3lzdGVtIHR5cGUgJXMgZm9yIERlYmlhbiBhcmNoICVzIGRvZXMgbm90IG1hdGNoIHNwZWNpZmllZCBHTlUgIgorInN5c3RlbSB0eXBlICVzIgorbXNnc3RyICIiCisiTGUgdHlwZSBwYXIgZMOpZmF1dCBkdSBzeXN0w6htZSBHTlUgJXMgcG91ciBsJ2FyY2hpdGVjdHVyZSBEZWJpYW4gJXMgbmUgIgorImNvcnJlc3BvbmQgcGFzIGF1IHR5cGUgZHUgc3lzdMOobWUgR05VIGluZGlxdcOpICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLnBsOjE4MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJTcGVjaWZpZWQgR05VIHN5c3RlbSB0eXBlICVzIGRvZXMgbm90IG1hdGNoIGdjYyBzeXN0ZW0gdHlwZSAlcy4iCittc2dzdHIgImxlIHR5cGUgZHUgc3lzdMOobWUgR05VIGluZGlxdcOpICVzIG5lIGNvcnJlc3BvbmQgcGFzIGF1IHR5cGUgZGUgZ2NjICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLnBsOjIyNQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgYSBzdXBwb3J0ZWQgdmFyaWFibGUgbmFtZSIKK21zZ3N0ciAiJXMgbidlc3QgcGFzIGxlIG5vbSBkJ3VuZSB2YXJpYWJsZSByZWNvbm51ZSIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkZmxhZ3MucGw6MzMKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIlxuIgorI3wgIkNvcHlyaWdodCAoQykgMjAxMCBSYXBoYWVsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4uIgorbXNnaWQgIiIKKyJcbiIKKyJDb3B5cmlnaHQgKEMpIDIwMTAtMjAxMSBSYXBoYWVsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4uIgorbXNnc3RyICIiCisiXG4iCisiQ29weXJpZ2h0IChDKSAyMDEwIFJhcGhhZWwgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPi4iCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZGZsYWdzLnBsOjQ0CisjLCBmdXp6eSwgcGVybC1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiVXNhZ2U6ICVzIFs8YWN0aW9uPl1cbiIKKyN8ICJcbiIKKyN8ICJBY3Rpb25zOlxuIgorI3wgIiAgLS1nZXQgPGZsYWc+ICAgICAgIG91dHB1dCB0aGUgcmVxdWVzdGVkIGZsYWcgdG8gc3Rkb3V0LlxuIgorI3wgIiAgLS1vcmlnaW4gPGZsYWc+ICAgIG91dHB1dCB0aGUgb3JpZ2luIG9mIHRoZSBmbGFnIHRvIHN0ZG91dDpcbiIKKyN8ICIgICAgICAgICAgICAgICAgICAgICB2YWx1ZSBpcyBvbmUgb2YgdmVuZG9yLCBzeXN0ZW0sIHVzZXIsIGVudi5cbiIKKyN8ICIgIC0tbGlzdCAgICAgICAgICAgICBvdXRwdXQgYSBsaXN0IG9mIHRoZSBmbGFncyBzdXBwb3J0ZWQgYnkgdGhlIGN1cnJlbnQgIgorI3wgInZlbmRvci5cbiIKKyN8ICIgIC0tZXhwb3J0PShzaHxtYWtlKSBvdXRwdXQgY29tbWFuZHMgdG8gYmUgZXhlY3V0ZWQgaW4gc2hlbGwgb3IgbWFrZSB0aGF0ICIKKyN8ICJleHBvcnRcbiIKKyN8ICIgICAgICAgICAgICAgICAgICAgICBhbGwgdGhlIGNvbXBpbGF0aW9uIGZsYWdzIGFzIGVudmlyb25tZW50IHZhcmlhYmxlcy5cbiIKKyN8ICIgIC0taGVscCAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorI3wgIiAgLS12ZXJzaW9uICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCittc2dpZCAiIgorIlVzYWdlOiAlcyBbPGFjdGlvbj5dXG4iCisiXG4iCisiQWN0aW9uczpcbiIKKyIgIC0tZ2V0IDxmbGFnPiAgICAgICBvdXRwdXQgdGhlIHJlcXVlc3RlZCBmbGFnIHRvIHN0ZG91dC5cbiIKKyIgIC0tb3JpZ2luIDxmbGFnPiAgICBvdXRwdXQgdGhlIG9yaWdpbiBvZiB0aGUgZmxhZyB0byBzdGRvdXQ6XG4iCisiICAgICAgICAgICAgICAgICAgICAgdmFsdWUgaXMgb25lIG9mIHZlbmRvciwgc3lzdGVtLCB1c2VyLCBlbnYuXG4iCisiICAtLWxpc3QgICAgICAgICAgICAgb3V0cHV0IGEgbGlzdCBvZiB0aGUgZmxhZ3Mgc3VwcG9ydGVkIGJ5IHRoZSBjdXJyZW50ICIKKyJ2ZW5kb3IuXG4iCisiICAtLWV4cG9ydD0oc2h8bWFrZXxjb25maWd1cmUpXG4iCisiICAgICAgICAgICAgICAgICAgICAgb3V0cHV0IHNvbWV0aGluZyBjb252ZW5pZW50IHRvIGltcG9ydCB0aGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICBjb21waWxhdGlvbiBmbGFncyBpbiBhIHNoZWxsIHNjcmlwdCwgaW4gbWFrZSxcbiIKKyIgICAgICAgICAgICAgICAgICAgICBvciBvbiBhIC4vY29uZmlndXJlIGNvbW1hbmQgbGluZS5cbiIKKyIgIC0tZHVtcCAgICAgICAgICAgICBvdXRwdXQgYWxsIGNvbXBpbGF0aW9uIGZsYWdzIHdpdGggdGhlaXIgdmFsdWVzXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorbXNnc3RyICIiCisiU3ludGF4ZcKgOiAlcyBbPGFjdGlvbj5dXG4iCisiXG4iCisiQWN0aW9uczpcbiIKKyIgIC0tZ2V0IDxkcmFwZWF1PiAgICBhZmZpY2hlIGxlIGRyYXBlYXUgY2hvaXNpLCBzdXIgc3Rkb3V0LlxuIgorIiAgLS1vcmlnaW4gPGRyYXBlYXU+IGFmZmljaGUgbCdvcmlnaW5lIGR1IGRyYXBlYXUsIHN1ciBzdGRvdXTCoDpcbiIKKyIgICAgICAgICAgICAgICAgICAgICBsZXMgdmFsZXVycyBwb3NzaWJsZXMgc29udCB2ZW5kb3IsIHN5c3RlbSwgdXNlciwgZW52LlxuIgorIiAgLS1saXN0ICAgICAgICAgICAgIGFmZmljaGUgdW5lIGxpc3RlIGRlcyBkcmFwZWF1eCBnw6lyw6lzIHBhciBsZVxuIgorIiAgICAgICAgICAgICAgICAgICAgIGRpc3RyaWJ1dGV1ciBhY3R1ZWwuXG4iCisiICAtLWV4cG9ydD0oc2h8bWFrZSkgYWZmaWNoZSBsZXMgY29tbWFuZGVzIMOgIGV4w6ljdXRlciBhdmVjIGxlIHNoZWxsIG91IGF2ZWNcbiIKKyIgICAgICAgICAgICAgICAgICAgICBtYWtlIHBvdXIgZXhwb3J0ZXIgdG91dGVzIGxlcyBvcHRpb25zIGRlIGNvbXBpbGF0aW9uXG4iCisiICAgICAgICAgICAgICAgICAgICAgc291cyBmb3JtZSBkZSB2YXJpYWJsZXMgZCdlbnZpcm9ubmVtZW50LlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgIGFmZmljaGUgY2UgbWVzc2FnZSBkJ2FpZGUuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgYWZmaWNoZSBsYSB2ZXJzaW9uLlxuIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRmbGFncy5wbDo2NiBzY3JpcHRzL2Rwa2ctYnVpbGRmbGFncy5wbDo3MgorIzogc2NyaXB0cy9kcGtnLWJ1aWxkZmxhZ3MucGw6Nzcgc2NyaXB0cy9kcGtnLWJ1aWxkZmxhZ3MucGw6ODEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidHdvIGNvbW1hbmRzIHNwZWNpZmllZDogLS0lcyBhbmQgLS0lcyIKK21zZ3N0ciAiZGV1eCBjb21tYW5kZXMgaW5kaXF1w6llc8KgOiAtLSVzIGV0IC0tJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZGZsYWdzLnBsOjcwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIG5lZWRzIGEgcGFyYW1ldGVyIgorbXNnc3RyICJwYXJhbcOodHJlIG7DqWNlc3NhaXJlIHBvdXIgJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6MzkKK21zZ2lkICIiCisiXG4iCisiQ29weXJpZ2h0IChDKSAxOTk2IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMCBXaWNoZXJ0IEFra2VybWFuXG4iCisiQ29weXJpZ2h0IChDKSAyMDA3IEZyYW5rIExpY2h0ZW5oZWxkIgorbXNnc3RyICIiCisiXG4iCisiQ29weXJpZ2h0IChDKSAxOTk2IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMCBXaWNoZXJ0IEFra2VybWFuLlxuIgorIkNvcHlyaWdodCAoQykgMjAwNyBGcmFuayBMaWNodGVuaGVsZC4iCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6NTEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIlVzYWdlOiAlcyBbPG9wdGlvbnM+IC4uLl1cbiIKKyJcbiIKKyJPcHRpb25zOlxuIgorIiAgLXI8Z2Fpbi1yb290LWNvbW1hbmQ+XG4iCisiICAgICAgICAgICAgICAgICBjb21tYW5kIHRvIGdhaW4gcm9vdCBwcml2aWxlZ2VzIChkZWZhdWx0IGlzIGZha2Vyb290KS5cbiIKKyIgIC1SPHJ1bGVzPiAgICAgIHJ1bGVzIGZpbGUgdG8gZXhlY3V0ZSAoZGVmYXVsdCBpcyBkZWJpYW4vcnVsZXMpLlxuIgorIiAgLXA8c2lnbi1jb21tYW5kPlxuIgorIiAgLWQgICAgICAgICAgICAgZG8gbm90IGNoZWNrIGJ1aWxkIGRlcGVuZGVuY2llcyBhbmQgY29uZmxpY3RzLlxuIgorIiAgLUQgICAgICAgICAgICAgY2hlY2sgYnVpbGQgZGVwZW5kZW5jaWVzIGFuZCBjb25mbGljdHMuXG4iCisiICAtVDx0YXJnZXQ+ICAgICBjYWxsIGRlYmlhbi9ydWxlcyA8dGFyZ2V0PiB3aXRoIHRoZSBwcm9wZXIgZW52aXJvbm1lbnRcbiIKKyIgIC0tYXMtcm9vdCAgICAgIGVuc3VyZSAtVCBjYWxscyB0aGUgdGFyZ2V0IHdpdGggcm9vdCByaWdodHNcbiIKKyIgIC1qWzxudW1iZXI+XSAgIHNwZWNpZnkgam9icyB0byBydW4gc2ltdWx0YW5lb3VzbHkgfSBwYXNzZWQgdG8gZGViaWFuLyIKKyJydWxlc1xuIgorIiAgLWs8a2V5aWQ+ICAgICAgdGhlIGtleSB0byB1c2UgZm9yIHNpZ25pbmcuXG4iCisiICAtc2dwZyAgICAgICAgICB0aGUgc2lnbi1jb21tYW5kIGlzIGNhbGxlZCBsaWtlIEdQRy5cbiIKKyIgIC1zcGdwICAgICAgICAgIHRoZSBzaWduLWNvbW1hbmQgaXMgY2FsbGVkIGxpa2UgUEdQLlxuIgorIiAgLXVzICAgICAgICAgICAgdW5zaWduZWQgc291cmNlLlxuIgorIiAgLXVjICAgICAgICAgICAgdW5zaWduZWQgY2hhbmdlcy5cbiIKKyIgIC1hPGFyY2g+ICAgICAgIERlYmlhbiBhcmNoaXRlY3R1cmUgd2UgYnVpbGQgZm9yIChpbXBsaWVzIC1kKS5cbiIKKyIgIC1iICAgICAgICAgICAgIGJpbmFyeS1vbmx5LCBkbyBub3QgYnVpbGQgc291cmNlLiAgIH0gYWxzbyBwYXNzZWQgdG9cbiIKKyIgIC1CICAgICAgICAgICAgIGJpbmFyeS1vbmx5LCBubyBhcmNoLWluZGVwIGZpbGVzLiAgIH0gZHBrZy1nZW5jaGFuZ2VzXG4iCisiICAtQSAgICAgICAgICAgICBiaW5hcnktb25seSwgb25seSBhcmNoLWluZGVwIGZpbGVzLiB9XG4iCisiICAtUyAgICAgICAgICAgICBzb3VyY2Ugb25seSwgbm8gYmluYXJ5IGZpbGVzLiAgICAgfVxuIgorIiAgLUYgICAgICAgICAgICAgbm9ybWFsIGZ1bGwgYnVpbGQgKGJpbmFyaWVzIGFuZCBzb3VyY2VzKS5cbiIKKyIgIC10PHN5c3RlbT4gICAgIHNldCBHTlUgc3lzdGVtIHR5cGUuICAgICAgICAgICB9IHBhc3NlZCB0byBkcGtnLSIKKyJhcmNoaXRlY3R1cmVcbiIKKyIgIC12PHZlcnNpb24+ICAgIGNoYW5nZXMgc2luY2UgdmVyc2lvbiA8dmVyc2lvbj4uICAgICAgfVxuIgorIiAgLW08bWFpbnQ+ICAgICAgbWFpbnRhaW5lciBmb3IgcGFja2FnZSBpcyA8bWFpbnQ+LiAgICB9XG4iCisiICAtZTxtYWludD4gICAgICBtYWludGFpbmVyIGZvciByZWxlYXNlIGlzIDxtYWludD4uICAgIH0gb25seSBwYXNzZWRcbiIKKyIgIC1DPGRlc2NmaWxlPiAgIGNoYW5nZXMgYXJlIGRlc2NyaWJlZCBpbiA8ZGVzY2ZpbGU+LiAgfSB0byBkcGtnLWdlbmNoYW5nZXNcbiIKKyIgIC1zaSAoZGVmYXVsdCkgIHNyYyBpbmNsdWRlcyBvcmlnIGlmIG5ldyB1cHN0cmVhbS4gICAgfVxuIgorIiAgLXNhICAgICAgICAgICAgdXBsb2FkZWQgc3JjIGFsd2F5cyBpbmNsdWRlcyBvcmlnLiAgICB9XG4iCisiICAtc2QgICAgICAgICAgICB1cGxvYWRlZCBzcmMgaXMgZGlmZiBhbmQgLmRzYyBvbmx5LiAgIH1cbiIKKyIgIC1zbiAgICAgICAgICAgIGZvcmNlIERlYmlhbiBuYXRpdmUgc291cmNlIGZvcm1hdC4gICAgICB9XG4iCisiICAtc1tzQWt1cktVUl0gICBzZWUgZHBrZy1zb3VyY2UgZm9yIGV4cGxhbmF0aW9uLiAgICAgICAgfSBvbmx5IHBhc3NlZFxuIgorIiAgLXo8bGV2ZWw+ICAgICAgY29tcHJlc3Npb24gbGV2ZWwgb2Ygc291cmNlICAgICAgICAgICAgIH0gdG8gZHBrZy1zb3VyY2VcbiIKKyIgIC1aPGNvbXByZXNzb3I+IGNvbXByZXNzaW9uIHRvIHVzZSBmb3Igc291cmNlICAgICAgICAgICB9XG4iCisiICAtbmMgICAgICAgICAgICBkbyBub3QgY2xlYW4gc291cmNlIHRyZWUgKGltcGxpZXMgLWIpLlxuIgorIiAgLXRjICAgICAgICAgICAgY2xlYW4gc291cmNlIHRyZWUgd2hlbiBmaW5pc2hlZC5cbiIKKyIgIC1hcCAgICAgICAgICAgIGFkZCBwYXVzZSBiZWZvcmUgc3RhcnRpbmcgc2lnbmF0dXJlIHByb2Nlc3MuXG4iCisiICAtaVs8cmVnZXg+XSAgICBpZ25vcmUgZGlmZnMgb2YgZmlsZXMgbWF0Y2hpbmcgcmVnZXguICAgIH0gb25seSBwYXNzZWRcbiIKKyIgIC1JWzxwYXR0ZXJuPl0gIGZpbHRlciBvdXQgZmlsZXMgd2hlbiBidWlsZGluZyB0YXJiYWxscy4gfSB0byBkcGtnLXNvdXJjZVxuIgorIiAgLS1zb3VyY2Utb3B0aW9uPTxvcHQ+XG4iCisiXHRcdCBwYXNzIG9wdGlvbiA8b3B0PiB0byBkcGtnLXNvdXJjZVxuIgorIiAgLS1jaGFuZ2VzLW9wdGlvbj08b3B0PlxuIgorIlx0XHQgcGFzcyBvcHRpb24gPG9wdD4gdG8gZHBrZy1nZW5jaGFuZ2VzXG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+XG4iCisiICAgICAgICAgICAgICAgICBjaGFuZ2UgdGhlIGFkbWluaXN0cmF0aXZlIGRpcmVjdG9yeS5cbiIKKyIgIC1oLCAtLWhlbHAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAgICAgLS12ZXJzaW9uICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorbXNnc3RyICIiCisiXG4iCisiU3ludGF4ZcKgOiAlcyBbPG9wdGlvbnM+IC4uLl1cbiIKKyJcbiIKKyJPcHRpb25zwqA6XG4iCisiICAtcjxjb21tYW5kZS1nYWluLXJvb3Q+XG4iCisiICAgICAgICAgICAgICAgICBjb21tYW5kZSBwb3VyIG9idGVuaXIgbGVzIHByaXZpbMOoZ2VzIGFkbWluaXN0cmF0ZXVyXG4iCisiICAgICAgICAgICAgICAgICAocGFyIGTDqWZhdXQsIGZha2Vyb290KS5cbiIKKyIgIC1SPHJ1bGVzPiAgICAgIGZpY2hpZXIgcnVsZXMgw6AgZXjDqWN1dGVyIChwYXIgZMOpZmF1dCwgZGViaWFuL3J1bGVzKS5cbiIKKyIgIC1wPGNvbW1hbmRlLXNpZ24+XG4iCisiICAtZCAgICAgICAgICAgICBuZSBwYXMgdsOpcmlmaWVyIGxlcyBkw6lwZW5kYW5jZXMgZGUgY29uc3RydWN0aW9uIGV0IGxlcyAiCisiY29uZmxpdHMuXG4iCisiICAtRCAgICAgICAgICAgICB2w6lyaWZpZXIgbGVzIGTDqXBlbmRhbmNlcyBkZSBjb25zdHJ1Y3Rpb24gZXQgbGVzIGNvbmZsaXRzLlxuIgorIiAgLVQ8Y2libGU+ICAgICAgbGFuY2VyIMKrwqBkZWJpYW4vcnVsZXMgPGNpYmxlPsKgwrsgYXZlYyBsJ2Vudmlyb25uZW1lbnRcbiIKKyIgICAgICAgICAgICAgICAgIGFkw6lxdWF0LlxuIgorIiAgLS1hcy1yb290ICAgICAgYXZlYyAtVCwgYXBwZWxlciBsYSBjaWJsZSBhdmVjIGxlcyBkcm9pdHMgZHVcbiIKKyIgICAgICAgICAgICAgICAgIHN1cGVydXRpbGlzYXRldXIuXG4iCisiICAtals8bm9tYnJlPl0gICBzcMOpY2lmaWVyIGxlIG5vbWJyZSBkZSB0w6JjaGVzIMOgIGV4w6ljdXRlciBzaW11bHRhbsOpbWVudCB9IFxuIgorIiAgICAgICAgICAgICAgICAgcGFzc8OpIMOgIGRlYmlhbi9ydWxlc1xuIgorIiAgLWs8aWQtY2zDqT4gICAgIGNsw6kgw6AgdXRpbGlzZXIgcG91ciBsYSBzaWduYXR1cmUuXG4iCisiICAtc2dwZyAgICAgICAgICBsYSBjb21tYW5kZSBkZSBzaWduYXR1cmUgZXN0IGFwcGVsw6llIGNvbW1lIEdQRy5cbiIKKyIgIC1zcGdwICAgICAgICAgIGxhIGNvbW1hbmRlIGRlIHNpZ25hdHVyZSBlc3QgYXBwZWzDqWUgY29tbWUgUEdQLlxuIgorIiAgLXVzICAgICAgICAgICAgZmljaGllciBzb3VyY2Ugbm9uIHNpZ27DqS5cbiIKKyIgIC11YyAgICAgICAgICAgIGZpY2hpZXIgY2hhbmdlcyBub24gc2lnbsOpLlxuIgorIiAgLWE8YXJjaD4gICAgICAgYXJjaGl0ZWN0dXJlIERlYmlhbiBkZSBjb25zdHJ1Y3Rpb24gKGltcGxpcXVlIC1kKS5cbiIKKyIgIC1iICAgICAgICAgICAgIGJpbmFpcmUgdW5pcXVlbWVudCwgbmUgcGFzIGNvbnN0cnVpcmUgICAgfSDDqWdhbGVtZW50XG4iCisiICAgICAgICAgICAgICAgICBsZXMgc291cmNlcy59ICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gcGFzc8OpXG4iCisiICAtQiAgICAgICAgICAgICBiaW5haXJlIHVuaXF1ZW1lbnQsIHBhcyBkZSBmaWNoaWVyICAgICAgIH0gw6BcbiIKKyIgICAgICAgICAgICAgICAgIMKrwqBhcmNoLWluZGVwwqDCuy4gICAgICAgICAgICAgICAgICAgICAgICAgIH0gZHBrZy1cbiIKKyIgIC1BICAgICAgICAgICAgIGJpbmFpcmUgdW5pcXVlbWVudCwgc2V1bGVtZW50IGxlcyAgICAgICAgfSBnZW5jaGFuZ2VzXG4iCisiICAgICAgICAgICAgICAgICBmaWNoaWVycyDCq8KgYXJjaC1pbmRlcMKgwrsgICAgICAgICAgICAgICAgICB9XG4iCisiICAtUyAgICAgICAgICAgICBzb3VyY2UgdW5pcXVlbWVudCwgcGFzIGRlIGZpY2hpZXIgICAgICAgIH1cbiIKKyIgICAgICAgICAgICAgICAgIGJpbmFpcmUuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuIgorIiAgLUYgICAgICAgICAgICAgY29uc3RydWN0aW9uIGNvbXBsw6h0ZSBub3JtYWxlIChiaW5haXJlcyBldCBzb3VyY2VzKS5cbiIKKyIgIC10PHN5c3TDqG1lPiAgICBkw6lmaW5pciBsZSB0eXBlIHN5c3TDqG1lIEdOVS4gICAgICAgICAgIH0gcGFzc8OpIMOgIGRwa2ctIgorImFyY2hpdGVjdHVyZVxuIgorIiAgLXY8dmVyc2lvbj4gICAgY2hhbmdlbWVudHMgZGVwdWlzIGxhIHZlcnNpb24gPHZlcnNpb24+LiAgICAgICAgICAgICB9XG4iCisiICAtbTxyZXNwPiAgICAgICBsZSByZXNwb25zYWJsZSBwb3VyIGxlIHBhcXVldCBlc3QgPHJlc3A+LiAgICAgICAgICAgIH1cbiIKKyIgIC1lPHJlc3A+ICAgICAgIGxlIHJlc3BvbnNhYmxlIHBvdXIgbGEgcHVibGljYXRpb24gZXN0IDxyZXNwPi4gICAgICAgfSAiCisidW5pcXVlbWVudCBwYXNzw6lcbiIKKyIgIC1DPGZpY2hpZXItZGVzYz4gbGVzIGNoYW5nZW1lbnRzIHNvbnQgZMOpY3JpdHMgZGFucyA8ZmljaGllci1kZXNjPi4gIH0gw6AgIgorImRwa2ctZ2VuY2hhbmdlc1xuIgorIiAgLXNpIChkw6lmYXV0KSAgIHNyYyBpbmNsdXQgbCdvcmlnIHNpIG5vdXZlbGxlIHZlcnNpb24gYW1vbnQuICAgICAgICAgfVxuIgorIiAgLXNhICAgICAgICAgICAgbGUgc291cmNlIGVudm95w6kgaW5jbHV0IHRvdWpvdXJzIGwnb3JpZy4gICAgICAgICAgICAgfVxuIgorIiAgLXNkICAgICAgICAgICAgbGUgc291cmNlIGVudm95w6kgbmUgY29tcHJlbmQgcXVlIGxlIGRpZmYgZXQgbGUgLmRzYy4gfVxuIgorIiAgLXNuICAgICAgICAgICAgZm9yY2UgbGUgZm9ybWF0IHNvdXJjZSBuYXRpZiBEZWJpYW4uICAgICAgfVxuIgorIiAgLXNbc0FrdXJLVVJdICAgdm9pciBkcGtnLXNvdXJjZSBwb3VyIGwnZXhwbGljYXRpb24uICAgICAgfSBzZXVsZW1lbnQgIgorInBhc3PDqVxuIgorIiAgLXo8bml2ZWF1PiAgICAgbml2ZWF1IGRlIGNvbXByZXNzaW9uIGRlcyBzb3VyY2VzICAgICAgICAgfSDDoCBkcGtnLXNvdXJjZVxuIgorIiAgLVo8Y29tcHJlc3Npb24+XG4iCisiICAgICAgICAgICAgICAgICB0eXBlIGRlIGNvbXByZXNzaW9uIMOgIHV0aWxpc2VyIHBvdXIgbGVzIHNvdXJjZXMgIH1cbiIKKyIgIC1uYyAgICAgICAgICAgIG5lIHBhcyBuZXR0b3llciBsJ2FyYm9yZXNjZW5jZSBkZXMgc291cmNlcyAoaW1wbGlxdWUgLWIpLlxuIgorIiAgLXRjICAgICAgICAgICAgbmV0dG95ZXIgbCdhcmJvcmVzY2VuY2UgZGVzIHNvdXJjZXMgw6AgbGEgZmluLlxuIgorIiAgLWFwICAgICAgICAgICAgYWpvdXRlciB1bmUgcGF1c2UgYXZhbnQgZGUgbGFuY2VyIGxlIHByb2Nlc3N1cyBkZSAiCisic2lnbmF0dXJlLlxuIgorIiAgLWlbPHJlZ2V4Pl0gICAgaWdub3JlciBsZXMgZGlmZsOpcmVuY2VzIGRlIGZpY2hpZXJzIGNvcnJlc3BvbmRhbnQgw6AgIgorInJlZ2V4LiB9IHVuaXF1ZW1lbnQgcGFzc8OpXG4iCisiICAtSVs8Zm9ybWF0Pl0gICBmaWx0cmVyIGxlcyBmaWNoaWVycyBsb3JzIGRlIGxhIGNvbnN0cnVjdGlvbiBkZXMgIgorInRhcmJhbGxzLiB9IMOgIGRwa2ctc291cmNlXG4iCisiICAtLXNvdXJjZS1vcHRpb249PG9wdD5cbiIKKyJcdFx0IHBhc3NlciBsJ29wdGlvbiA8b3B0PiDDoCBkcGtnLXNvdXJjZVxuIgorIiAgLS1jaGFuZ2VzLW9wdGlvbj08b3B0PlxuIgorIlx0XHQgcGFzc2VyIGwnb3B0aW9uIDxvcHQ+IMOgIGRwa2ctZ2VuY2hhbmdlc1xuIgorIiAgLS1hZG1pbmRpcj08csOpcGVydG9pcmU+XG4iCisiICAgICAgICAgICAgICAgICBjaGFuZ2VyIGxlIHLDqXBlcnRvaXJlIGQnYWRtaW5pc3RyYXRpb24uXG4iCisiICAtaCwgLS1oZWxwICAgICBhZmZpY2hlciBjZSBtZXNzYWdlIGQnYWlkZS5cbiIKKyIgICAgICAtLXZlcnNpb24gIGFmZmljaGVyIGxhIHZlcnNpb24uXG4iCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6MjAwIHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6MjA2CisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjIxMiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjIxOAorIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDoyMjMgc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6MTQzCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDoxNDYgc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6MTUwCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDoxNTQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IGNvbWJpbmUgJXMgYW5kICVzIgorbXNnc3RyICJpbXBvc3NpYmxlIGRlIGNvbWJpbmVyICVzIGV0ICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjIzNiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjIwMgorbXNnaWQgIi1FIGFuZCAtVyBhcmUgZGVwcmVjYXRlZCwgdGhleSBhcmUgd2l0aG91dCBlZmZlY3QiCittc2dzdHIgIkxhIGdlc3Rpb24gZGUgLUUgZXQgLVcgZXN0IG9ic29sw6h0ZSAoY2VzIHBhcmFtw6h0cmVzIHNvbnQgc2FucyBlZmZldCkiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6MjQwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVua25vd24gb3B0aW9uIG9yIGFyZ3VtZW50ICVzIgorbXNnc3RyICJvcHRpb24gb3UgcGFyYW3DqHRyZSBpbmNvbm51ICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjI1MAorbXNnaWQgInVzaW5nIGEgZ2Fpbi1yb290LWNvbW1hbmQgd2hpbGUgYmVpbmcgcm9vdCIKK21zZ3N0ciAiIgorInV0aWxpc2F0aW9uIGQndW5lIGNvbW1hbmRlIHBvdXIgb2J0ZW5pciBsZXMgcHJpdmlsw6hnZXMgYWRtaW5pc3RyYXRldXIgZW4gIgorInRhbnQgcXUnYWRtaW5pc3RyYXRldXIiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6MjU2Cittc2dpZCAiIgorImZha2Vyb290IG5vdCBmb3VuZCwgZWl0aGVyIGluc3RhbGwgdGhlIGZha2Vyb290XG4iCisicGFja2FnZSwgc3BlY2lmeSBhIGNvbW1hbmQgd2l0aCB0aGUgLXIgb3B0aW9uLCBvciBydW4gdGhpcyBhcyByb290IgorbXNnc3RyICIiCisiZmFrZXJvb3Qgbm9uIHRyb3V2w6ksIHZldWlsbGV6IHNvaXQgaW5zdGFsbGVyIGxlIHBhcXVldCBmYWtlcm9vdCxcbiIKKyJzb2l0IGluZGlxdWVyIHVuZSBjb21tYW5kZSBhdmVjIGwnb3B0aW9uIC1yIG91IGV4w6ljdXRlciBjZXR0ZVxuIgorImNvbW1hbmRlIGVuIHRhbnQgcXUnYWRtaW5pc3RyYXRldXIiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6MjYwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImdhaW4tcm9vdC1jb21tbWFuZCAnJXMnIG5vdCBmb3VuZCIKK21zZ3N0ciAiY29tbWFuZGUgcG91ciBvYnRlbmlyIGxlcyBwcml2aWzDqGdlcyBhZG1pbmlzdHJhdGV1ciDCq8KgJXPCoMK7IG5vbiB0cm91dsOpZSIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDoyNzkKK21zZ2lkICJ1bmtub3duIHNpZ24gY29tbWFuZCwgYXNzdW1pbmcgcGdwIHN0eWxlIGludGVyZmFjZSIKK21zZ3N0ciAiY29tbWFuZGUgZGUgc2lnbmF0dXJlIGluY29ubnVlLCBzdXBwb3NlIHVuZSBpbnRlcmZhY2UgZGUgc3R5bGUgcGdwIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjI4MgorbXNnaWQgIlBHUCBzdXBwb3J0IGlzIGRlcHJlY2F0ZWQgKHNlZSBSRUFETUUuZmVhdHVyZS1yZW1vdmFsLXNjaGVkdWxlKSIKK21zZ3N0ciAiIgorIkxhIGdlc3Rpb24gZGUgUEdQIGVzdCBvYnNvbMOodGUgKHZvaXIgbGUgZmljaGllciBSRUFETUUuZmVhdHVyZS1yZW1vdmFsLSIKKyJzY2hlZHVsZSkuIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjMwMQorbXNnaWQgInNvdXJjZSBwYWNrYWdlIgorbXNnc3RyICJwYXF1ZXQgc291cmNlIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjMwMgorbXNnaWQgInNvdXJjZSB2ZXJzaW9uIgorbXNnc3RyICJ2ZXJzaW9uIHNvdXJjZSIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDozMTIKK21zZ2lkICJzb3VyY2UgY2hhbmdlZCBieSIKK21zZ3N0ciAic291cmNlIGNoYW5nw6kgcGFyIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjMzMAorbXNnaWQgImhvc3QgYXJjaGl0ZWN0dXJlIgorbXNnc3RyICJhcmNoaXRlY3R1cmUgaMO0dGUiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6MzQzCittc2dpZCAiZGViaWFuL3J1bGVzIGlzIG5vdCBleGVjdXRhYmxlOiBmaXhpbmcgdGhhdC4iCittc2dzdHIgImRlYmlhbi9ydWxlcyBuJ2VzdCBwYXMgZXjDqWN1dGFibGU6IGNvcnJpZ8OpLiIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDozNjIKK21zZ2lkICJCdWlsZCBkZXBlbmRlbmNpZXMvY29uZmxpY3RzIHVuc2F0aXNmaWVkOyBhYm9ydGluZy4iCittc2dzdHIgIkTDqXBlbmRhbmNlcyBkZSBjb25zdHJ1Y3Rpb24gZXQgY29uZmxpdHMgbm9uIHNhdGlzZmFpdHPCoDsgw6ljaGVjLiIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDozNjMKK21zZ2lkICIoVXNlIC1kIGZsYWcgdG8gb3ZlcnJpZGUuKSIKK21zZ3N0ciAiKFV0aWxpc2V6IGwnb3B0aW9uIC1kIHBvdXIgZm9yY2VyLikiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6MzY2Cittc2dpZCAiVGhpcyBpcyBjdXJyZW50bHkgYSBub24tZmF0YWwgd2FybmluZyB3aXRoIC1TLCBidXQiCittc2dzdHIgIkNlY2kgZXN0IGFjdHVlbGxlbWVudCB1biBhdmVydGlzc2VtZW50IHNhbnMgY29uc8OpcXVlbmNlIGF2ZWMgLVMsIG1haXMiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6MzY3Cittc2dpZCAid2lsbCBwcm9iYWJseSBiZWNvbWUgZmF0YWwgaW4gdGhlIGZ1dHVyZS4iCittc2dzdHIgImRldmllbmRyYSBmYXRhbCBkYW5zIGxlIGZ1dHVyLiIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDozODkKK21zZ2lkICIiCisiaXQgaXMgYSBiYWQgaWRlYSB0byBnZW5lcmF0ZSBhIHNvdXJjZSBwYWNrYWdlIHdpdGhvdXQgY2xlYW5pbmcgdXAgZmlyc3QsIGl0ICIKKyJtaWdodCBjb250YWluIHVuZGVzaXJlZCBmaWxlcy4iCittc2dzdHIgIiIKKyJJbCBlc3QgZMOpY29uc2VpbGzDqSBkZSBjcsOpZXIgdW4gcGFxdWV0IHNvdXJjZSBzYW5zIGxlIG5ldHRveWVyIHByw6lhbGFibGVtZW50LiAiCisiSWwgcGV1dCBjb250ZW5pciBkZXMgZmljaGllcnMgbm9uIHNvdWhhaXTDqXMuIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjQwMgorbXNnaWQgIlByZXNzIHRoZSByZXR1cm4ga2V5IHRvIHN0YXJ0IHNpZ25pbmcgcHJvY2Vzc1xuIgorbXNnc3RyICJBcHB1eWV6IHN1ciBFbnRyw6llIHBvdXIgY29tbWVuY2VyIGxlIHByb2Nlc3N1cyBkZSBzaWduYXR1cmVcbiIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDo0MDkKK21zZ2lkICJGYWlsZWQgdG8gc2lnbiAuZHNjIGFuZCAuY2hhbmdlcyBmaWxlIgorbXNnc3RyICLDiWNoZWMgZGUgc2lnbmF0dXJlIGRlcyBmaWNoaWVycyAuZHNjIGV0IC5jaGFuZ2VzIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjQyNCBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjQyOAorIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDo0NDEKK21zZ2lkICJ3cml0ZSBjaGFuZ2VzIGZpbGUiCittc2dzdHIgIsOpY3JpdHVyZSBkdSBmaWNoaWVyIGNoYW5nZXMiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6NDQwCittc2dpZCAiZHBrZy1nZW5jaGFuZ2VzIgorbXNnc3RyICJkcGtnLWdlbmNoYW5nZXMiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6NDQ5Cittc2dpZCAic291cmNlIG9ubHkgdXBsb2FkOiBEZWJpYW4tbmF0aXZlIHBhY2thZ2UiCittc2dzdHIgImVudm9pIGRlIHNvdXJjZSB1bmlxdWVtZW50wqA6IHBhcXVldCBEZWJpYW4gbmF0aWYiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6NDUxCittc2dpZCAic291cmNlIG9ubHksIGRpZmYtb25seSB1cGxvYWQgKG9yaWdpbmFsIHNvdXJjZSBOT1QgaW5jbHVkZWQpIgorbXNnc3RyICIiCisic291cmNlIHVuaXF1ZW1lbnQsIGVudm9pIGR1IGZpY2hpZXIgZGUgZGlmZsOpcmVuY2VzIHVuaXF1ZW1lbnQgKGF1Y3VuZSAiCisiaW5jbHVzaW9uIGR1IGNvZGUgc291cmNlIGQnb3JpZ2luZSkiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6NDUzCittc2dpZCAic291cmNlIG9ubHkgdXBsb2FkIChvcmlnaW5hbCBzb3VyY2UgaXMgaW5jbHVkZWQpIgorbXNnc3RyICJlbnZvaSBkdSBzb3VyY2Ugc2V1bGVtZW50IChpbmNsdXNpb24gZHUgY29kZSBzb3VyY2UgZCdvcmlnaW5lKSIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDo0NTYgc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDo0NjQKK21zZ2lkICJmdWxsIHVwbG9hZCAob3JpZ2luYWwgc291cmNlIGlzIGluY2x1ZGVkKSIKK21zZ3N0ciAiZW52b2kgY29tcGxldCAoaW5jbHVzaW9uIGR1IGNvZGUgc291cmNlIGQnb3JpZ2luZSkiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6NDU4Cittc2dpZCAiYmluYXJ5IG9ubHkgdXBsb2FkIChubyBzb3VyY2UgaW5jbHVkZWQpIgorbXNnc3RyICJlbnZvaSBkJ3VuIGJpbmFpcmUgc2V1bGVtZW50IChhdWN1bmUgaW5jbHVzaW9uIGRlIGNvZGUgc291cmNlKSIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDo0NjAKK21zZ2lkICJmdWxsIHVwbG9hZDsgRGViaWFuLW5hdGl2ZSBwYWNrYWdlIChmdWxsIHNvdXJjZSBpcyBpbmNsdWRlZCkiCittc2dzdHIgImVudm9pIGNvbXBsZXTCoDsgcGFxdWV0IERlYmlhbiBuYXRpZiAoaW5jbHVzaW9uIGR1IGNvZGUgc291cmNlIGNvbXBsZXQpIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjQ2MgorbXNnaWQgImJpbmFyeSBhbmQgZGlmZiB1cGxvYWQgKG9yaWdpbmFsIHNvdXJjZSBOT1QgaW5jbHVkZWQpIgorbXNnc3RyICIiCisiZW52b2kgZCd1biBiaW5haXJlIGV0IGR1IGZpY2hpZXIgZGUgZGlmZsOpcmVuY2VzIChhdWN1bmUgaW5jbHVzaW9uIGR1IGNvZGUgIgorInNvdXJjZSBkJ29yaWdpbmUpIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjQ2OQorbXNnaWQgIkZhaWxlZCB0byBzaWduIC5jaGFuZ2VzIGZpbGUiCittc2dzdHIgIsOJY2hlYyBkZSBzaWduYXR1cmUgZHUgZmljaGllciAuY2hhbmdlcyIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDo0ODgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRldGVybWluZSAlcyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkZSBkw6l0ZXJtaW5lciAlcyIKKworIzogc2NyaXB0cy9kcGtnLWNoZWNrYnVpbGRkZXBzLnBsOjQyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIlVzYWdlOiAlcyBbPG9wdGlvbj4uLi5dIFs8Y29udHJvbC1maWxlPl0iCittc2dzdHIgIlV0aWxpc2F0aW9uwqA6ICVzIFs8b3B0aW9uPi4uLl0gPGZpY2hpZXIgZGUgY29udHLDtGxlPiIKKworIzogc2NyaXB0cy9kcGtnLWNoZWNrYnVpbGRkZXBzLnBsOjQ0Cittc2dpZCAiIgorIk9wdGlvbnM6XG4iCisiICAtQiAgICAgICAgICAgICBiaW5hcnktb25seSwgaWdub3JlIC1JbmRlcC5cbiIKKyIgIC1kIGJ1aWxkLWRlcHMgIHVzZSBnaXZlbiBzdHJpbmcgYXMgYnVpbGQgZGVwZW5kZW5jaWVzIGluc3RlYWQgb2ZcbiIKKyIgICAgICAgICAgICAgICAgIHJldHJpZXZpbmcgdGhlbSBmcm9tIGNvbnRyb2wgZmlsZVxuIgorIiAgLWMgYnVpbGQtY29uZiAgdXNlIGdpdmVuIHN0cmluZyBmb3IgYnVpbGQgY29uZmxpY3RzIGluc3RlYWQgb2ZcbiIKKyIgICAgICAgICAgICAgICAgIHJldHJpZXZpbmcgdGhlbSBmcm9tIGNvbnRyb2wgZmlsZVxuIgorIiAgLS1hZG1pbmRpcj08ZGlyZWN0b3J5PlxuIgorIiAgICAgICAgICAgICAgICAgY2hhbmdlIHRoZSBhZG1pbmlzdHJhdGl2ZSBkaXJlY3RvcnkuXG4iCisiICAtaCwgLS1oZWxwICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgICAgIC0tdmVyc2lvbiAgc2hvdyB0aGUgdmVyc2lvbi4iCittc2dzdHIgIiIKKyJPcHRpb25zwqA6XG4iCisiICAtQiAgICAgICAgICAgICAgICAgICAgYmluYWlyZSBzZXVsLCBpZ25vcmUgLUluZGVwLlxuIgorIiAgLWQgYnVpbGQtZGVwcyAgdXRpbGlzZXIgbGEgY2hhw65uZSBpbmRpcXXDqWUgY29tbWUgZMOpcGVuZGFuY2VzIGRlICIKKyJjb25zdHJ1Y3Rpb25cbiIKKyIgICAgICAgICAgICAgICAgICjCq8KgYnVpbGQgZGVwc8KgwrspIGF1IGxpZXUgZGUgY2VsbGVzIGR1IGZpY2hpZXIgY29udHJvbFxuIgorIiAgLWMgYnVpbGQtY29uZiAgdXRpbGlzZXIgbGEgY2hhw65uZSBpbmRpcXXDqWUgY29tbWUgY29uZmxpdCBkZSBjb25zdHJ1Y3Rpb25cbiIKKyIgICAgICAgICAgICAgICAgICjCq8KgYnVpbGQgY29uZmxpY3RzwqDCuykgYXUgbGlldSBkZSBjZWxsZXMgZHUgZmljaGllciBjb250cm9sXG4iCisiICAtLWFkbWluZGlyPTxyw6lwZXJ0b2lyZT5cbiIKKyIgICAgICAgICAgICAgICAgIGNoYW5nZXIgbGUgcsOpcGVydG9pcmUgZCdhZG1pbmlzdHJhdGlvbi5cbiIKKyIgIC1oLCAtLWhlbHAgICAgIGFmZmljaGVyIGNlIG1lc3NhZ2UgZCdhaWRlLlxuIgorIiAgICAgIC0tdmVyc2lvbiAgYWZmaWNoZXIgbGEgdmVyc2lvbi4iCisKKyM6IHNjcmlwdHMvZHBrZy1jaGVja2J1aWxkZGVwcy5wbDo1NQorbXNnaWQgIiIKKyI8Y29udHJvbC1maWxlPiBpcyB0aGUgY29udHJvbCBmaWxlIHRvIHByb2Nlc3MgKGRlZmF1bHQ6IGRlYmlhbi9jb250cm9sKS4iCittc2dzdHIgIiIKKyI8ZmljaGllciBkZSBjb250csO0bGU+IGVzdCBsZSBmaWNoaWVyIGRlIGNvbnRyw7RsZSDDoCB0cmFpdGVyIChwYXIgZMOpZmF1dCwgIgorImRlYmlhbi9jb250cm9sKS4iCisKKyM6IHNjcmlwdHMvZHBrZy1jaGVja2J1aWxkZGVwcy5wbDoxMDUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXM6IFVubWV0IGJ1aWxkIGRlcGVuZGVuY2llczogIgorbXNnc3RyICIlc8KgOiBkw6lwZW5kYW5jZXMgZGUgY29uc3RydWN0aW9uIG5vbiB0cm91dsOpZXPCoDogIgorCisjOiBzY3JpcHRzL2Rwa2ctY2hlY2tidWlsZGRlcHMucGw6MTA5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzOiBCdWlsZCBjb25mbGljdHM6ICIKK21zZ3N0ciAiJXPCoDogY29uZmxpdHMgZGUgY29uc3RydWN0aW9uIGR1IHBhcXVldMKgOiAiCisKKyM6IHNjcmlwdHMvZHBrZy1jaGVja2J1aWxkZGVwcy5wbDoxODQgc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDoyNTMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZXJyb3Igb2NjdXJyZWQgd2hpbGUgcGFyc2luZyAlcyIKK21zZ3N0ciAiZXJyZXVyIHJlbmNvbnRyw6llIGxvcnMgZGUgbCdhbmFseXNlIGRlICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctZGlzdGFkZGZpbGUucGw6MzUKK21zZ2lkICIiCisiXG4iCisiQ29weXJpZ2h0IChDKSAxOTk2IElhbiBKYWNrc29uLiIKK21zZ3N0ciAiIgorIlxuIgorIkNvcHlyaWdodCAoQykgMTk5NiBJYW4gSmFja3Nvbi4iCisKKyM6IHNjcmlwdHMvZHBrZy1kaXN0YWRkZmlsZS5wbDo0NgorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPi4uLl0gPGZpbGVuYW1lPiA8c2VjdGlvbj4gPHByaW9yaXR5PlxuIgorIlxuIgorIk9wdGlvbnM6XG4iCisiICAtZjxmaWxlc2xpc3RmaWxlPiAgICAgICAgd3JpdGUgZmlsZXMgaGVyZSBpbnN0ZWFkIG9mIGRlYmlhbi9maWxlcy5cbiIKKyIgIC1oLCAtLWhlbHAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgICAgIC0tdmVyc2lvbiAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCittc2dzdHIgIiIKKyJTeW50YXhlwqA6ICVzIFs8b3B0aW9uPi4uLl0gPGZpY2hpZXI+IDxzZWN0aW9uPiA8cHJpb3JpdMOpPlxuIgorIlxuIgorIk9wdGlvbnPCoDpcbiIKKyIgIC1mIDxmaWNoaWVyX2Rlc19maWNoaWVycz4gICAgbGlzdGVyIGxlcyBmaWNoaWVycyBkYW5zIGNlIGZpY2hpZXIgcGx1dMO0dCAiCisicXVlIGRlYmlhbi9maWxlcy5cbiIKKyIgIC1oLCAtLWhlbHAgICAgICAgICAgICAgICAgICAgYWZmaWNoZXIgY2UgbWVzc2FnZSBkJ2FpZGUuXG4iCisiICAgICAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIGFmZmljaGVyIGxhIHZlcnNpb24uXG4iCisKKyM6IHNjcmlwdHMvZHBrZy1kaXN0YWRkZmlsZS5wbDo3MgorbXNnaWQgIm5lZWQgZXhhY3RseSBhIGZpbGVuYW1lLCBzZWN0aW9uIGFuZCBwcmlvcml0eSIKK21zZ3N0ciAiSWwgZXN0IGRlbWFuZMOpIGV4YWN0ZW1lbnQgdW4gZmljaGllciwgdW5lIHNlY3Rpb24gZXQgdW5lIHByaW9yaXTDqSIKKworIzogc2NyaXB0cy9kcGtnLWRpc3RhZGRmaWxlLnBsOjc2Cittc2dpZCAiZmlsZW5hbWUsIHNlY3Rpb24gYW5kIHByaW9yaXR5IG1heSBjb250YWluIG5vIHdoaXRlc3BhY2UiCittc2dzdHIgImZpY2hpZXIsIHNlY3Rpb24gZXQgcHJpb3JpdMOpIG5lIHBldXZlbnQgY29udGVuaXIgZCdlc3BhY2UiCisKKyM6IHNjcmlwdHMvZHBrZy1kaXN0YWRkZmlsZS5wbDo3OSBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDozMzQKK21zZ2lkICJvcGVuIG5ldyBmaWxlcyBsaXN0IGZpbGUiCittc2dzdHIgIm91dmVydHVyZSBkdSBub3V2ZWF1IGZpY2hpZXIgZGUgbGlzdGUgZGVzIGZpY2hpZXJzIgorCisjOiBzY3JpcHRzL2Rwa2ctZGlzdGFkZGZpbGUucGw6ODQgc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MzQ1Cittc2dpZCAiY29weSBvbGQgZW50cnkgdG8gbmV3IGZpbGVzIGxpc3QgZmlsZSIKK21zZ3N0ciAiIgorImNvcGllIGRlIGwnYW5jaWVubmUgZW50csOpZSBkYW5zIGxlIG5vdXZlYXUgZmljaGllciBkZSBsaXN0ZSBkZXMgZmljaGllcnMiCisKKyM6IHNjcmlwdHMvZHBrZy1kaXN0YWRkZmlsZS5wbDo4NyBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDozNDkKK21zZ2lkICJyZWFkIG9sZCBmaWxlcyBsaXN0IGZpbGUiCittc2dzdHIgImxlY3R1cmUgZHUgbm91dmVhdSBmaWNoaWVyIGRlIGxpc3RlIGRlcyBmaWNoaWVycyIKKworIzogc2NyaXB0cy9kcGtnLWRpc3RhZGRmaWxlLnBsOjkwIHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjM1OQorbXNnaWQgIndyaXRlIG5ldyBlbnRyeSB0byBuZXcgZmlsZXMgbGlzdCBmaWxlIgorbXNnc3RyICIiCisiw6ljcml0dXJlIGRlIGxhIG5vdXZlbGxlIGVudHLDqWUgZGFucyBsZSBub3V2ZWF1IGZpY2hpZXIgZGUgbGlzdGUgZGVzIGZpY2hpZXJzIgorCisjOiBzY3JpcHRzL2Rwa2ctZGlzdGFkZGZpbGUucGw6OTEgc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MzYwCittc2dpZCAiY2xvc2UgbmV3IGZpbGVzIGxpc3QgZmlsZSIKK21zZ3N0ciAiZmVybWV0dXJlIGR1IG5vdXZlYXUgZmljaGllciBkZSBsaXN0ZSBkZXMgZmljaGllcnMiCisKKyM6IHNjcmlwdHMvZHBrZy1kaXN0YWRkZmlsZS5wbDo5MyBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDozNjEKK21zZ2lkICJpbnN0YWxsIG5ldyBmaWxlcyBsaXN0IGZpbGUiCittc2dzdHIgImluc3RhbGxhdGlvbiBkdSBub3V2ZWF1IGZpY2hpZXIgZGUgbGlzdGUgZGVzIGZpY2hpZXJzIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDo5OAorbXNnaWQgIiIKKyJcbiIKKyJDb3B5cmlnaHQgKEMpIDE5OTYgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi4iCittc2dzdHIgIiIKKyJcbiIKKyJDb3B5cmlnaHQgKEMpIDE5OTYgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi4iCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjExMAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dXG4iCisiXG4iCisiT3B0aW9uczpcbiIKKyIgIC1iICAgICAgICAgICAgICAgICAgICAgICBiaW5hcnktb25seSBidWlsZCAtIG5vIHNvdXJjZSBmaWxlcy5cbiIKKyIgIC1CICAgICAgICAgICAgICAgICAgICAgICBhcmNoLXNwZWNpZmljIC0gbm8gc291cmNlIG9yIGFyY2gtaW5kZXAgZmlsZXMuXG4iCisiICAtQSAgICAgICAgICAgICAgICAgICAgICAgb25seSBhcmNoLWluZGVwIC0gbm8gc291cmNlIG9yIGFyY2gtc3BlY2lmaWMgIgorImZpbGVzLlxuIgorIiAgLVMgICAgICAgICAgICAgICAgICAgICAgIHNvdXJjZS1vbmx5IHVwbG9hZC5cbiIKKyIgIC1jPGNvbnRyb2xmaWxlPiAgICAgICAgICBnZXQgY29udHJvbCBpbmZvIGZyb20gdGhpcyBmaWxlLlxuIgorIiAgLWw8Y2hhbmdlbG9nZmlsZT4gICAgICAgIGdldCBwZXItdmVyc2lvbiBpbmZvIGZyb20gdGhpcyBmaWxlLlxuIgorIiAgLWY8ZmlsZXNsaXN0ZmlsZT4gICAgICAgIGdldCAuZGViIGZpbGVzIGxpc3QgZnJvbSB0aGlzIGZpbGUuXG4iCisiICAtdjxzaW5jZXZlcnNpb24+ICAgICAgICAgaW5jbHVkZSBhbGwgY2hhbmdlcyBsYXRlciB0aGFuIHZlcnNpb24uXG4iCisiICAtQzxjaGFuZ2VzZGVzY3JpcHRpb24+ICAgdXNlIGNoYW5nZSBkZXNjcmlwdGlvbiBmcm9tIHRoaXMgZmlsZS5cbiIKKyIgIC1tPG1haW50YWluZXI+ICAgICAgICAgICBvdmVycmlkZSBjb250cm9sJ3MgbWFpbnRhaW5lciB2YWx1ZS5cbiIKKyIgIC1lPG1haW50YWluZXI+ICAgICAgICAgICBvdmVycmlkZSBjaGFuZ2Vsb2cncyBtYWludGFpbmVyIHZhbHVlLlxuIgorIiAgLXU8dXBsb2FkZmlsZXNkaXI+ICAgICAgIGRpcmVjdG9yeSB3aXRoIGZpbGVzIChkZWZhdWx0IGlzIGAuLicpLlxuIgorIiAgLXNpIChkZWZhdWx0KSAgICAgICAgICAgIHNyYyBpbmNsdWRlcyBvcmlnIGlmIG5ldyB1cHN0cmVhbS5cbiIKKyIgIC1zYSAgICAgICAgICAgICAgICAgICAgICBzb3VyY2UgaW5jbHVkZXMgb3JpZyBzcmMuXG4iCisiICAtc2QgICAgICAgICAgICAgICAgICAgICAgc291cmNlIGlzIGRpZmYgYW5kIC5kc2Mgb25seS5cbiIKKyIgIC1xICAgICAgICAgICAgICAgICAgICAgICBxdWlldCAtIG5vIGluZm9ybWF0aW9uYWwgbWVzc2FnZXMgb24gc3RkZXJyLlxuIgorIiAgLUY8Y2hhbmdlbG9nZm9ybWF0PiAgICAgIGZvcmNlIGNoYW5nZSBsb2cgZm9ybWF0LlxuIgorIiAgLVY8bmFtZT49PHZhbHVlPiAgICAgICAgIHNldCBhIHN1YnN0aXR1dGlvbiB2YXJpYWJsZS5cbiIKKyIgIC1UPHZhcmxpc3RmaWxlPiAgICAgICAgICByZWFkIHZhcmlhYmxlcyBoZXJlLCBub3QgZGViaWFuL3N1YnN0dmFycy5cbiIKKyIgIC1EPGZpZWxkPj08dmFsdWU+ICAgICAgICBvdmVycmlkZSBvciBhZGQgYSBmaWVsZCBhbmQgdmFsdWUuXG4iCisiICAtVTxmaWVsZD4gICAgICAgICAgICAgICAgcmVtb3ZlIGEgZmllbGQuXG4iCisiICAtaCwgLS1oZWxwICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgICAgICAtLXZlcnNpb24gICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorbXNnc3RyICIiCisiU3ludGF4ZcKgOiAlcyBbPG9wdGlvbj4gLi4uXVxuIgorIlxuIgorIk9wdGlvbnPCoDpcbiIKKyIgIC1iICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0cnVjdGlvbiBkdSBiaW5haXJlIHNldWwgLSBwYXMgZGUgZmljaGllclxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc291cmNlLlxuIgorIiAgLUIgICAgICAgICAgICAgICAgICAgICAgICAgc3DDqWNpZmlxdWUgw6AgdW5lIGFyY2guIC0gcGFzIGRlIGZpY2hpZXIgc291cmNlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdSBhcmNoLWluZGVwLlxuIgorIiAgLUEgICAgICAgICAgICAgICAgICAgICAgICAgaW5kw6lwZW5kYW50IGQndW5lIGFyY2guIC0gcGFzIGRlIGZpY2hpZXIgIgorInNvdXJjZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG91IGZpY2hpZXJzIGTDqXBlbmRhbnQgZGUgbCdhcmNoLlxuIgorIiAgLVMgICAgICAgICAgICAgICAgICAgICAgICAgZW52b2kgKMKrwqB1cGxvYWTCoMK7KSBkZSBzb3VyY2Ugc2V1bGVtZW50LlxuIgorIiAgLWM8ZmljaGllcl9kZV9jb250csO0bGU+ICAgIG9idGVuaXIgbGVzIGluZm9ybWF0aW9ucyBkZSBjb250csO0bGUgZGFucyBjZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmljaGllci5cbiIKKyIgIC1sPGZpY2hpZXJfY2hhbmdlbG9nPiAgICAgIG9idGVuaXIgbGVzIGluZm9ybWF0aW9ucyBkZSBjaGFuZ2Vsb2cgZGFucyBjZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmljaGllci5cbiIKKyIgIC1mPGZpY2hpZXJfZGVzX2ZpY2hpZXJzPiAgIG9idGVuaXIgbGEgbGlzdGUgZGVzIGZpY2hpZXJzIC5kZWIgZGFucyBjZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmljaGllci5cbiIKKyIgIC12PGRlcHVpc192ZXJzaW9uPiAgICAgICAgIGluY2x1cmUgdG91dGVzIGxlcyBtb2RpZmljYXRpb25zIGRlcHVpcyBjZXR0ZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmVyc2lvbi5cbiIKKyIgIC1DPGNoYW5nZXNkZXNjcmlwdGlvbj4gICAgIHV0aWxpc2VyIGxhIGRlc2NyaXB0aW9uIGRlcyBjaGFuZ2VtZW50cyBkYW5zICIKKyJjZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmljaGllci5cbiIKKyIgIC1tPHJlc3BvbnNhYmxlPiAgICAgICAgICAgIHJlbXBsYWNlciBsYSB2YWxldXIgcG91ciBsZSByZXNwb25zYWJsZSBkYW5zICIKKyJsZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmljaGllciBjb250cm9sLlxuIgorIiAgLWU8cmVzcG9uc2FibGU+ICAgICAgICAgICAgcmVtcGxhY2VyIGxhIHZhbGV1ciBwb3VyIGxlIHJlc3BvbnNhYmxlIGRhbnMgIgorImxlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWNoaWVyIGNoYW5nZWxvZy5cbiIKKyIgIC11PHVwbG9hZGZpbGVzZGlyPiAgICAgICAgIHLDqXBlcnRvaXJlIGF2ZWMgZmljaGllcnMgKHBhciBkw6lmYXV0IGMnZXN0XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICDCq8KgLi7CoMK7KS5cbiIKKyIgIC1zaSAoZMOpZmF1dCkgICAgICAgICAgICAgICBsZSBzb3VyY2UgaW5jbHV0IHVuIG9yaWcgcG91ciBkZWJpYW4tcmV2aXNpb24gIgorIjBcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG91IDEuXG4iCisiICAtc2EgICAgICAgICAgICAgICAgICAgICAgICBsZSBzb3VyY2UgaW5jbHV0IHVuIG9yaWcuXG4iCisiICAtc2QgICAgICAgICAgICAgICAgICAgICAgICBsZSBzb3VyY2UgaW5jbHV0IHNldWxlbWVudCB1biBkaWZmIGV0IHVuIC5kc2MuXG4iCisiICAtcSAgICAgICAgICAgICAgICAgICAgICAgICBzaWxlbmNlIC0gcGFzIGQnaW5mb3JtYXRpb24gc3VyIHN0ZGVyci5cbiIKKyIgIC1GPGNoYW5nZWxvZ2Zvcm1hdD4gICAgICAgIG1vZGlmaWVyIGxlIGZvcm1hdCBkdSBjaGFuZ2Vsb2cuXG4iCisiICAtVjxub20+PTx2YWxldXI+ICAgICAgICAgICBkw6lmaW5pciB1bmUgc3Vic3RpdHV0aW9uIGRlIHZhcmlhYmxlLlxuIgorIiAgLVQ8dmFybGlzdGZpbGU+ICAgICAgICAgICAgbGlyZSBsZXMgdmFyaWFibGVzIGRhbnMgY2UgZmljaGllciwgcGFzIGRhbnNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlYmlhbi9zdWJzdHZhcnMuXG4iCisiICAtRDxjaGFtcD49PHZhbGV1cj4gICAgICAgICByZW1wbGFjZXIgb3UgYWpvdXRlciB1bmUgcGFpcmUgY2hhbXAgLyB2YWxldXIuXG4iCisiICAtVTxjaGFtcD4gICAgICAgICAgICAgICAgICBzdXBwcmltZXIgdW4gY2hhbXAuXG4iCisiICAtaCwgLS1oZWxwICAgICAgICAgICAgICAgICBhZmZpY2hlciBjZSBtZXNzYWdlIGQnYWlkZS5cbiIKKyIgICAgICAtLXZlcnNpb24gICAgICAgICAgICAgIGFmZmljaGVyIGxhIHZlcnNpb24uXG4iCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjE0OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlczogYXJjaC1zcGVjaWZpYyB1cGxvYWQgLSBub3QgaW5jbHVkaW5nIGFyY2gtaW5kZXBlbmRlbnQgcGFja2FnZXMiCittc2dzdHIgIiIKKyIlc8KgOiBlbnZvaSBkJ3VuIHBhcXVldCBwb3VyIHVuZSBhcmNoaXRlY3R1cmUgLSBuJ2luY2x1dCBwYXMgZGUgcGFxdWV0ICIKKyJpbmTDqXBlbmRhbnQgZCd1bmUgYXJjaGl0ZWN0dXJlLiIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6MTUyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzOiBhcmNoLWluZGVwIHVwbG9hZCAtIG5vdCBpbmNsdWRpbmcgYXJjaC1zcGVjaWZpYyBwYWNrYWdlcyIKK21zZ3N0ciAiIgorIiVzwqA6IGVudm9pIGQndW4gcGFxdWV0IGluZMOpcGVuZGFudCBkZSBsJ2FyY2hpdGVjdHVyZSAtIG4naW5jbHV0IHBhcyBkZSAiCisicGFxdWV0IHNww6ljaWZpcXVlIGQndW5lIGFyY2hpdGVjdHVyZS4iCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjIxOQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ0aGUgY3VycmVudCB2ZXJzaW9uICglcykgaXMgZWFybGllciB0aGFuIHRoZSBwcmV2aW91cyBvbmUgKCVzKSIKK21zZ3N0ciAiTGEgdmVyc2lvbiBhY3R1ZWxsZSAoJXMpIGVzdCBpbmbDqXJpZXVyZSDDoCBsYSB2ZXJzaW9uIHByw6ljw6lkZW50ZSAoJXMpIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDoyMjYKK21zZ2lkICJjYW5ub3QgcmVhZCBmaWxlcyBsaXN0IGZpbGUiCittc2dzdHIgImltcG9zc2libGUgZGUgbGlyZSBsZSBmaWNoaWVyIGRlIGxpc3RlIGRlcyBmaWNoaWVycy4iCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjIzMAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgZmlsZXMgbGlzdCBlbnRyeSBmb3IgcGFja2FnZSAlcyAobGluZSAlZCkiCittc2dzdHIgIiIKKyJlbnRyw6llIGVuIGRvdWJsZSBkYW5zIGxlIGZpY2hpZXIgZGUgbGlzdGUgZGVzIGZpY2hpZXJzIHBvdXIgbGUgcGFxdWV0ICVzICIKKyIobGlnbmUgJWQpICIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6MjM4IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjI1MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgZmlsZXMgbGlzdCBlbnRyeSBmb3IgZmlsZSAlcyAobGluZSAlZCkiCittc2dzdHIgIiIKKyJlbnRyw6llIGVuIGRvdWJsZSBkYW5zIGxlIGZpY2hpZXIgZGUgbGlzdGUgZGVzIGZpY2hpZXJzIHBvdXIgbGUgZmljaGllciAlcyAiCisiKGxpZ25lICVkKSIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6MjU4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImJhZGx5IGZvcm1lZCBsaW5lIGluIGZpbGVzIGxpc3QgZmlsZSwgbGluZSAlZCIKK21zZ3N0ciAibGlnbmUgJWQgbWFsIGZvcm3DqWUgZGFucyBsZSBmaWNoaWVyIGRlIGxpc3RlIGRlcyBmaWNoaWVycyIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6Mjk5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgJXMgaW4gY29udHJvbCBmaWxlIGJ1dCBub3QgaW4gZmlsZXMgbGlzdCIKK21zZ3N0ciAiIgorInBhcXVldCAlcyBkYW5zIGxlIGZpY2hpZXIgZGUgY29udHLDtGxlIG1haXMgcGFzIGRhbnMgbGUgZmljaGllciBkZSBsaXN0ZSBkZXMgIgorImZpY2hpZXJzIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDozNDMKK21zZ2lkICJyZWFkIGNoYW5nZXNkZXNjcmlwdGlvbiIKK21zZ3N0ciAibGVjdHVyZSBkZSBjaGFuZ2VzZGVzY3JpcHRpb24iCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjM1MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJwYWNrYWdlICVzIGxpc3RlZCBpbiBmaWxlcyBsaXN0IGJ1dCBub3QgaW4gY29udHJvbCBpbmZvIgorbXNnc3RyICIiCisicGFxdWV0ICVzIGxpc3TDqSBkYW5zIGxlIGZpY2hpZXIgZGUgbGlzdGUgZGVzIGZpY2hpZXJzIG1haXMgcGFzIGRhbnMgbGUgIgorImZpY2hpZXIgaW5mbyIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6MzYzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIm1pc3NpbmcgU2VjdGlvbiBmb3IgYmluYXJ5IHBhY2thZ2UgJXM7IHVzaW5nICctJyIKK21zZ3N0ciAibGEgc2VjdGlvbiBkdSBwYXF1ZXQgYmluYWlyZSAlcyBtYW5xdWXCoDsgdXRpbGlzYXRpb24gZGUgwqvCoC3CoMK7IgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDozNjUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlcyBoYXMgc2VjdGlvbiAlcyBpbiBjb250cm9sIGZpbGUgYnV0ICVzIGluIGZpbGVzIGxpc3QiCittc2dzdHIgIiIKKyJsZSBwYXF1ZXQgJXMgYSB1bmUgc2VjdGlvbiAlcyBkYW5zIGxlIGZpY2hpZXIgZGUgY29udHLDtGxlIG1haXMgdW5lIHNlY3Rpb24gIgorIiVzIGRhbnMgbGUgZmljaGllciBkZSBsaXN0ZSBkZXMgZmljaGllcnMiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjM3MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJtaXNzaW5nIFByaW9yaXR5IGZvciBiaW5hcnkgcGFja2FnZSAlczsgdXNpbmcgJy0nIgorbXNnc3RyICIiCisibGUgY2hhbXAgwqvCoFByaW9yaXR5wqDCuyBkdSBwYXF1ZXQgYmluYWlyZSAlcyBtYW5xdWXCoDsgdXRpbGlzYXRpb24gZGUgwqvCoC3CoMK7IgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDozNzQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlcyBoYXMgcHJpb3JpdHkgJXMgaW4gY29udHJvbCBmaWxlIGJ1dCAlcyBpbiBmaWxlcyBsaXN0IgorbXNnc3RyICIiCisibGUgcGFxdWV0ICVzIGEgdW5lIHByaW9yaXTDqSAlcyBkYW5zIGxlIGZpY2hpZXIgZGUgY29udHLDtGxlIG1haXMgdW5lIHByaW9yaXTDqSAiCisiJXMgZGFucyBsZSBmaWNoaWVyIGRlIGxpc3RlIGRlcyBmaWNoaWVycyIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6Mzg2Cittc2dpZCAibWlzc2luZyBTZWN0aW9uIGZvciBzb3VyY2UgZmlsZXMiCittc2dzdHIgImlsIG1hbnF1ZSBsYSBzZWN0aW9uIGRlcyBmaWNoaWVycyBzb3VyY2UiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjM5MQorbXNnaWQgIm1pc3NpbmcgUHJpb3JpdHkgZm9yIHNvdXJjZSBmaWxlcyIKK21zZ3N0ciAiaWwgbWFucXVlIGxhIHByaW9yaXTDqSBkZXMgZmljaGllcnMgc291cmNlIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDozOTggc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDozNDYKKyM6IHNjcmlwdHMvRHBrZy9WZW5kb3IucG06NzEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgaXMgZW1wdHkiCittc2dzdHIgIiVzIGVzdCB2aWRlIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDo0MjQKK21zZ2lkICJub3QgaW5jbHVkaW5nIG9yaWdpbmFsIHNvdXJjZSBjb2RlIGluIHVwbG9hZCIKK21zZ3N0ciAicGFzIGQnaW5jbHVzaW9uIGR1IGNvZGUgc291cmNlIG9yaWdpbmFsIGRhbnMgbCdlbnZvaSAowqvCoHVwbG9hZMKgwrspIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDo0MzEKK21zZ2lkICJpZ25vcmluZyAtc2Qgb3B0aW9uIGZvciBuYXRpdmUgRGViaWFuIHBhY2thZ2UiCittc2dzdHIgIm9wdGlvbiAtc2QgaWdub3LDqWUgcG91ciBsZXMgcGFxdWV0cyBEZWJpYW4gcHVyZSBzb3VjaGUiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjQzMworbXNnaWQgImluY2x1ZGluZyBmdWxsIHNvdXJjZSBjb2RlIGluIHVwbG9hZCIKK21zZ3N0ciAiaW5jbHVzaW9uIGR1IGNvZGUgc291cmNlIG9yaWdpbmFsIGRhbnMgbCdlbnZvaSAowqvCoHVwbG9hZMKgwrspIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDo0MzYKK21zZ2lkICJiaW5hcnktb25seSB1cGxvYWQgLSBub3QgaW5jbHVkaW5nIGFueSBzb3VyY2UgY29kZSIKK21zZ3N0ciAiZW52b2kgZCd1biBiaW5haXJlIC0gYXVjdW5lIGluY2x1c2lvbiBkZSBjb2RlIHNvdXJjZSIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6NDQwCittc2dpZCAid3JpdGUgb3JpZ2luYWwgc291cmNlIG1lc3NhZ2UiCittc2dzdHIgIsOpY3JpdHVyZSBkdSBtZXNzYWdlIHNvdXJjZSBvcmlnaW5hbCIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6NDk0IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbTo1MzIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibWlzc2luZyBpbmZvcm1hdGlvbiBmb3IgY3JpdGljYWwgb3V0cHV0IGZpZWxkICVzIgorbXNnc3RyICJpbCBtYW5xdWUgbCdpbmZvcm1hdGlvbiBwb3VyIGwnaW1wb3J0YW50IGNoYW1wIGRlIHNvcnRpZSAlcyIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6NDk5IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjI3MgorIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6Mjc1IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbTo1MzcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibWlzc2luZyBpbmZvcm1hdGlvbiBmb3Igb3V0cHV0IGZpZWxkICVzIgorbXNnc3RyICJpbmZvcm1hdGlvbiBtYW5xdWFudGUgcG91ciBsZSBjaGFtcCBkZSBzb3J0aWUgJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjU4Cittc2dpZCAiIgorIlxuIgorIkNvcHlyaWdodCAoQykgMTk5NiBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMiBXaWNoZXJ0IEFra2VybWFuLiIKK21zZ3N0ciAiIgorIlxuIgorIkNvcHlyaWdodCAoQykgMTk5NiBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMiBXaWNoZXJ0IEFra2VybWFuLiIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6NzAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXVxuIgorIlxuIgorIk9wdGlvbnM6XG4iCisiICAtcDxwYWNrYWdlPiAgICAgICAgICAgICAgcHJpbnQgY29udHJvbCBmaWxlIGZvciBwYWNrYWdlLlxuIgorIiAgLWM8Y29udHJvbGZpbGU+ICAgICAgICAgIGdldCBjb250cm9sIGluZm8gZnJvbSB0aGlzIGZpbGUuXG4iCisiICAtbDxjaGFuZ2Vsb2dmaWxlPiAgICAgICAgZ2V0IHBlci12ZXJzaW9uIGluZm8gZnJvbSB0aGlzIGZpbGUuXG4iCisiICAtRjxjaGFuZ2Vsb2dmb3JtYXQ+ICAgICAgZm9yY2UgY2hhbmdlIGxvZyBmb3JtYXQuXG4iCisiICAtdjxmb3JjZXZlcnNpb24+ICAgICAgICAgc2V0IHZlcnNpb24gb2YgYmluYXJ5IHBhY2thZ2UuXG4iCisiICAtZjxmaWxlc2xpc3RmaWxlPiAgICAgICAgd3JpdGUgZmlsZXMgaGVyZSBpbnN0ZWFkIG9mIGRlYmlhbi9maWxlcy5cbiIKKyIgIC1QPHBhY2thZ2VidWlsZGRpcj4gICAgICB0ZW1wb3JhcnkgYnVpbGQgZGlyIGluc3RlYWQgb2YgZGViaWFuL3RtcC5cbiIKKyIgIC1uPGZpbGVuYW1lPiAgICAgICAgICAgICBhc3N1bWUgdGhlIHBhY2thZ2UgZmlsZW5hbWUgd2lsbCBiZSA8ZmlsZW5hbWU+LlxuIgorIiAgLU8gICAgICAgICAgICAgICAgICAgICAgIHdyaXRlIHRvIHN0ZG91dCwgbm90IC4uLi9ERUJJQU4vY29udHJvbC5cbiIKKyIgIC1pcywgLWlwLCAtaXNwLCAtaXBzICAgICBkZXByZWNhdGVkLCBpZ25vcmVkIGZvciBjb21wYXRpYmlsaXR5LlxuIgorIiAgLUQ8ZmllbGQ+PTx2YWx1ZT4gICAgICAgIG92ZXJyaWRlIG9yIGFkZCBhIGZpZWxkIGFuZCB2YWx1ZS5cbiIKKyIgIC1VPGZpZWxkPiAgICAgICAgICAgICAgICByZW1vdmUgYSBmaWVsZC5cbiIKKyIgIC1WPG5hbWU+PTx2YWx1ZT4gICAgICAgICBzZXQgYSBzdWJzdGl0dXRpb24gdmFyaWFibGUuXG4iCisiICAtVDx2YXJsaXN0ZmlsZT4gICAgICAgICAgcmVhZCB2YXJpYWJsZXMgaGVyZSwgbm90IGRlYmlhbi9zdWJzdHZhcnMuXG4iCisiICAtaCwgLS1oZWxwICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgICAgICAtLXZlcnNpb24gICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorbXNnc3RyICIiCisiU3ludGF4ZcKgOiAlcyBbPG9wdGlvbj4gLi4uXVxuIgorIlxuIgorIk9wdGlvbnPCoDpcbiIKKyIgIC1wPHBhcXVldD4gICAgICAgICAgICAgICAgIGFmZmljaGVyIGxlIGZpY2hpZXIgZGUgY29udHLDtGxlIGR1IHBhcXVldC5cbiIKKyIgIC1jPGZpY2hpZXJfZGVfY29udHLDtGxlPiAgICBvYnRlbmlyIGxlcyBpbmZvcm1hdGlvbnMgZGUgY29udHLDtGxlIGRhbnMgY2UgIgorImZpY2hpZXIuXG4iCisiICAtbDxmaWNoaWVyX2NoYW5nZWxvZz4gICAgICBvYnRlbmlyIGxlcyBpbmZvcm1hdGlvbnMgZGUgY2hhbmdlbG9nIGRhbnMgY2UgIgorImZpY2hpZXIuXG4iCisiICAtRjxjaGFuZ2Vsb2dmb3JtYXQ+ICAgICAgICBtb2RpZmllciBsZSBmb3JtYXQgZGUgY2hhbmdlbG9nLlxuIgorIiAgLXY8Zm9yY2V2ZXJzaW9uPiAgICAgICAgICAgZMOpZmluaXIgbGEgdmVyc2lvbiBkdSBwYXF1ZXQgYmluYWlyZS5cbiIKKyIgIC1mPGZpY2hpZXJfZGVzX2ZpY2hpZXJzPiAgIMOpY3JpcmUgbGEgbGlzdGUgZGVzIGZpY2hpZXJzIGRhbnMgY2UgZmljaGllciwgIgorIm5vbiBkYW5zIGRlYmlhbi9maWxlcy5cbiIKKyIgIC1QPHBhY2thZ2VidWlsZGRpcj4gICAgICAgIHLDqXBlcnRvaXJlIHRlbXBvcmFpcmUgZGUgY29uc3RydWN0aW9uLCBhdSBsaWV1ICIKKyJkZSBkZWJpYW4vdG1wLlxuIgorIiAgLW48ZmljaGllcj4gICAgICAgICAgICAgICAgc3VwcG9zZXIgcXVlIGxlIG5vbSBkdSBwYXF1ZXQgc2VyYSA8ZmljaGllcj4uXG4iCisiICAtTyAgICAgICAgICAgICAgICAgICAgICAgICDDqWNyaXJlIHN1ciBzdGRvdXQsIHBhcyAuLi4vREVCSUFOL2NvbnRyb2wuXG4iCisiICAtaXMsIC1pcCwgLWlzcCwgLWlwcyAgICAgICBvcHRpb25zIGTDqWNvbnNlaWxsw6llcywgaWdub3LDqWVzIHBvdXIgIgorImNvbXBhdGliaWxpdMOpLlxuIgorIiAgLUQ8Y2hhbXA+PTx2YWxldXI+ICAgICAgICAgcmVtcGxhY2VyIG91IGFqb3V0ZXIgdW5lIHBhaXJlIGNoYW1wIC8gdmFsZXVyLlxuIgorIiAgLVU8Y2hhbXA+ICAgICAgICAgICAgICAgICAgc3VwcHJpbWVyIHVuIGNoYW1wLlxuIgorIiAgLVY8bm9tPj08dmFsZXVyPiAgICAgICAgICAgZMOpZmluaXIgdW5lIHN1YnN0aXR1dGlvbiBkZSB2YXJpYWJsZS5cbiIKKyIgIC1UPHZhcmxpc3RmaWxlPiAgICAgICAgICAgIGxpcmUgbGVzIHZhcmlhYmxlcyBkYW5zIGNlIGZpY2hpZXIsIHBhcyBkYW5zICIKKyJkZWJpYW4vc3Vic3R2YXJzLlxuIgorIiAgLWgsIC0taGVscCAgICAgICAgICAgICAgICAgYWZmaWNoZXIgY2UgbWVzc2FnZSBkJ2FpZGUuXG4iCisiICAgICAgLS12ZXJzaW9uICAgICAgICAgICAgICBhZmZpY2hlciBsYSB2ZXJzaW9uLlxuIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDo5NyBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbDoxMTgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiSWxsZWdhbCBwYWNrYWdlIG5hbWUgYCVzJyIKK21zZ3N0ciAibm9tIGRlIHBhcXVldCAlcyBub24gYXV0b3Jpc8OpIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDoxNTIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlcyBub3QgaW4gY29udHJvbCBpbmZvIgorbXNnc3RyICJsZSBwYXF1ZXQgJXMgbidlc3QgcGFzIGRhbnMgbGUgZmljaGllciBkZSBjb250csO0bGUiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjE1NiBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbDoxNTkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibXVzdCBzcGVjaWZ5IHBhY2thZ2Ugc2luY2UgY29udHJvbCBpbmZvIGhhcyBtYW55ICglcykiCittc2dzdHIgIiIKKyJpbCBmYXV0IGluZGlxdWVyIHVuIHBhcXVldCBjYXIgbGUgZmljaGllciBkZSBjb250csO0bGUgY29udGllbnQgcGx1c2lldXJzICglcykiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjE2MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJwYWNrYWdlICVzOiAiCittc2dzdHIgInBhcXVldCAlc8KgOsKgIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDoxODUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiYCVzJyBpcyBub3QgYSBsZWdhbCBhcmNoaXRlY3R1cmUgc3RyaW5nLiIKK21zZ2lkX3BsdXJhbCAiYCVzJyBhcmUgbm90IGxlZ2FsIGFyY2hpdGVjdHVyZSBzdHJpbmdzLiIKK21zZ3N0clswXSAiwqvCoCVzwqDCuyBuJ2VzdCBwYXMgdW5lIGFyY2hpdGVjdHVyZSBhdXRvcmlzw6llLiIKK21zZ3N0clsxXSAiwqvCoCVzwqDCuyBuZSBzb250IHBhcyBkZXMgYXJjaGl0ZWN0dXJlcyBhdXRvcmlzw6llcy4iCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjE5MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiY3VycmVudCBob3N0IGFyY2hpdGVjdHVyZSAnJXMnIGRvZXMgbm90IGFwcGVhciBpbiBwYWNrYWdlJ3MgYXJjaGl0ZWN0dXJlICIKKyJsaXN0ICglcykiCittc2dzdHIgIiIKKyJsJ2FjdHVlbGxlIGFyY2hpdGVjdHVyZSBow7R0ZSDCq8KgJXPCoMK7IG4nYXBwYXJhw650IHBhcyBkYW5zIGxhIGxpc3RlICIKKyJkJ2FyY2hpdGVjdHVyZSBkdSBwYXF1ZXQgKCVzKSIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MjQ2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGZpZWxkIG9mIHBhY2thZ2UgJXM6ICIKK21zZ3N0ciAiY2hhbXAgJXMgZHUgcGFxdWV0ICVzwqA6ICIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MjUwIHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjI1OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJlcnJvciBvY2N1cnJlZCB3aGlsZSBwYXJzaW5nICVzIGZpZWxkOiAlcyIKK21zZ3N0ciAiZXJyZXVyIHJlbmNvbnRyw6llIGxvcnMgZGUgbCdhbmFseXNlIGR1IGNtYXAgJXPCoDrCoCVzIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDoyNjMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorInRoZSAlcyBmaWVsZCBjb250YWlucyBhbiBhcmNoLXNwZWNpZmljIGRlcGVuZGVuY3kgYnV0IHRoZSBwYWNrYWdlIGlzICIKKyJhcmNoaXRlY3R1cmUgYWxsIgorbXNnc3RyICIiCisibGUgY2hhbXAgJXMgY29udGllbnQgdW5lIGTDqXBlbmRhbmNlIHNww6ljaWZpcXVlIGQndW5lIGFyY2hpdGVjdHVyZSBtYWlzIGxlICIKKyJwYXF1ZXQgdXRpbGlzZSDCq8KgYXJjaGl0ZWN0dXJlOiBhbGzCoMK7LiIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6Mjg3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIHBhY2thZ2Ugd2l0aCB1ZGViIHNwZWNpZmljIGZpZWxkICVzIgorbXNnc3RyICJwYXF1ZXQgJXMgYXZlYyBjaGFtcCBzcMOpY2lmaXF1ZSB1ZGViICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDozMDAgc2NyaXB0cy9kcGtnLXNjYW5zb3VyY2VzLnBsOjMxMworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo4MzYgc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9QYXJzZS5wbToxMzgKKyM6IHNjcmlwdHMvRHBrZy9JUEMucG06MjI5IHNjcmlwdHMvRHBrZy9TaGxpYnMvT2JqZHVtcC5wbToxODEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IGZvcmsgZm9yICVzIgorbXNnc3RyICJmb3JrIGltcG9zc2libGUgcG91ciAlcyIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MzAzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNoZGlyIGZvciBkdSB0byBgJXMnIgorbXNnc3RyICJjaGRpciBwb3VyIGR1IHZlcnMgJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjMwNSBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjg0MworIzogc2NyaXB0cy9EcGtnL0lQQy5wbToyNzEgc2NyaXB0cy9EcGtnL1NobGlicy9DcHBmaWx0LnBtOjUwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBleGVjdXRlICVzIgorbXNnc3RyICJpbXBvc3NpYmxlIGQnZXjDqWN1dGVyICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDozMTIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZHUgaW4gYCVzJyIKK21zZ3N0ciAiZHUgZGFucyAlcyIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MzE0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImR1IGdhdmUgdW5leHBlY3RlZCBvdXRwdXQgYCVzJyIKK21zZ3N0ciAicsOpc3VsdGF0IGluYXR0ZW5kdSBkZSBkdSAlcyIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MzQ3Cittc2dpZCAiY2xvc2Ugb2xkIGZpbGVzIGxpc3QgZmlsZSIKK21zZ3N0ciAiZmVybWV0dXJlIGRlIGwnYW5jaWVuIGZpY2hpZXIgZGUgbGlzdGUgZGVzIGZpY2hpZXJzIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDozNjkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IG9wZW4gbmV3IG91dHB1dCBjb250cm9sIGZpbGUgYCVzJyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkJ291dnJpciBsZSBub3V2ZWF1IGZpY2hpZXIgZGUgY29udHLDtGxlIGVuIHNvcnRpZSAlcyIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6Mzc4IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6NTIzCisjOiBzY3JpcHRzL0Rwa2cvSW50ZXJmYWNlL1N0b3JhYmxlLnBtOjkxCisjOiBzY3JpcHRzL0Rwa2cvSW50ZXJmYWNlL1N0b3JhYmxlLnBtOjExOSBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjI5MAorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjYwNworIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3QgY2xvc2UgJXMiCittc2dzdHIgImltcG9zc2libGUgZGUgZmVybWVyICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDozODAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IGluc3RhbGwgb3V0cHV0IGNvbnRyb2wgZmlsZSBgJXMnIgorbXNnc3RyICJpbXBvc3NpYmxlIGQnaW5zdGFsbGVyIGxlIG5vdXZlYXUgZmljaGllciBkZSBjb250csO0bGUgZW4gc29ydGllICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbDo1MQorbXNnaWQgIiIKKyJcbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDcgUmFwaGFlbCBIZXJ0em9nLlxuIgorbXNnc3RyICIiCisiXG4iCisiQ29weXJpZ2h0IChDKSAyMDA3IFJhcGhhZWwgSGVydHpvZy5cbiIKKworIzogc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGw6NjMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXVxuIgorIlxuIgorIk9wdGlvbnM6XG4iCisiICAtcDxwYWNrYWdlPiAgICAgICAgICAgICAgZ2VuZXJhdGUgc3ltYm9scyBmaWxlIGZvciBwYWNrYWdlLlxuIgorIiAgLVA8cGFja2FnZWJ1aWxkZGlyPiAgICAgIHRlbXBvcmFyeSBidWlsZCBkaXIgaW5zdGVhZCBvZiBkZWJpYW4vdG1wLlxuIgorIiAgLWU8bGlicmFyeT4gICAgICAgICAgICAgIGV4cGxpY2l0bHkgbGlzdCBsaWJyYXJpZXMgdG8gc2Nhbi5cbiIKKyIgIC12PHZlcnNpb24+ICAgICAgICAgICAgICB2ZXJzaW9uIG9mIHRoZSBwYWNrYWdlcyAoZGVmYXVsdHMgdG9cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICB2ZXJzaW9uIGV4dHJhY3RlZCBmcm9tIGRlYmlhbi9jaGFuZ2Vsb2cpLlxuIgorIiAgLWM8bGV2ZWw+ICAgICAgICAgICAgICAgIGNvbXBhcmUgZ2VuZXJhdGVkIHN5bWJvbHMgZmlsZSB3aXRoIHRoZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlZmVyZW5jZSB0ZW1wbGF0ZSBpbiB0aGUgZGViaWFuIGRpcmVjdG9yeVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGFuZCBmYWlsIGlmIGRpZmZlcmVuY2UgaXMgdG9vIGltcG9ydGFudFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIChsZXZlbCBnb2VzIGZyb20gMCBmb3Igbm8gY2hlY2ssIHRvIDRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgYWxsIGNoZWNrcykuIEJ5IGRlZmF1bHQgY2hlY2tzIGF0XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV2ZWwgMS5cbiIKKyIgIC1xICAgICAgICAgICAgICAgICAgICAgICBrZWVwIHF1aWV0IGFuZCBuZXZlciBlbWl0IGFueSB3YXJuaW5ncyBvclxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGdlbmVyYXRlIGEgZGlmZiBiZXR3ZWVuIGdlbmVyYXRlZCBzeW1ib2xzXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsZSBhbmQgdGhlIHJlZmVyZW5jZSB0ZW1wbGF0ZS5cbiIKKyIgIC1JPGZpbGU+ICAgICAgICAgICAgICAgICBmb3JjZSB1c2FnZSBvZiA8ZmlsZT4gYXMgcmVmZXJlbmNlIHN5bWJvbHNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxlIGluc3RlYWQgb2YgdGhlIGRlZmF1bHQgZmlsZS5cbiIKKyIgIC1PPGZpbGU+ICAgICAgICAgICAgICAgICB3cml0ZSB0byA8ZmlsZT4sIG5vdCAuLi4vREVCSUFOL3N5bWJvbHMuXG4iCisiICAtTyAgICAgICAgICAgICAgICAgICAgICAgd3JpdGUgdG8gc3Rkb3V0LCBub3QgLi4uL0RFQklBTi9zeW1ib2xzLlxuIgorIiAgLXQgICAgICAgICAgICAgICAgICAgICAgIHdyaXRlIGluIHRlbXBsYXRlIG1vZGUgKHRhZ3MgYXJlIG5vdFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHByb2Nlc3NlZCBhbmQgaW5jbHVkZWQgaW4gb3V0cHV0KS5cbiIKKyIgIC1WICAgICAgICAgICAgICAgICAgICAgICB2ZXJib3NlIG91dHB1dC4gV3JpdGUgZGVwcmVjYXRlZCBzeW1ib2xzIGFuZFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhdHRlcm4gbWF0Y2hpbmcgc3ltYm9scyBhcyBjb21tZW50c1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIChpbiB0ZW1wbGF0ZSBtb2RlIG9ubHkpLlxuIgorIiAgLWE8YXJjaD4gICAgICAgICAgICAgICAgIGFzc3VtZSA8YXJjaD4gYXMgaG9zdCBhcmNoaXRlY3R1cmUgd2hlbiAiCisicHJvY2Vzc2luZ1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHN5bWJvbCBmaWxlcy5cbiIKKyIgIC1kICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5IGRlYnVnIGluZm9ybWF0aW9uIGR1cmluZyB3b3JrLlxuIgorIiAgLWgsIC0taGVscCAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAgICAgLS12ZXJzaW9uICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIgorIlN5bnRheGXCoDogJXMgWzxvcHRpb24+IC4uLl1cbiIKKyJcbiIKKyJPcHRpb25zwqA6XG4iCisiICAtcDxwYXF1ZXQ+ICAgICAgICAgICAgICAgZ8OpbsOpcmVyIGxlIGZpY2hpZXIgZGVzIHN5bWJvbGVzIHBvdXIgY2UgcGFxdWV0LlxuIgorIiAgLVA8csOpcGNvbnN0cnBhcXVldD4gICAgICByw6lwZXJ0b2lyZSBkZSBjb25zdHJ1Y3Rpb24gdGVtcG9yYWlyZSBhdSBsaWV1IGRlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgZGViaWFuL3RtcC5cbiIKKyIgIC1lPGJpYmxpb3Row6hxdWU+ICAgICAgICAgQWZmaWNoZXIgZXhwbGljaXRlbWVudCBsZXMgYmlibGlvdGjDqHF1ZXMgw6BcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICByZWNoZXJjaGVyLlxuIgorIiAgLXY8dmVyc2lvbj4gICAgICAgICAgICAgIHZlcnNpb24gZGVzIHBhcXVldHMgKHBhciBkw6lmYXV0LCBsYSB2ZXJzaW9uICIKKyJleHRyYWl0ZSBkZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlYmlhbi9jaGFuZ2Vsb2cpLlxuIgorIiAgLWM8bml2ZWF1PiAgICAgICAgICAgICAgIGNvbXBhcmVyIGxlcyBzeW1ib2xlcyBnw6luw6lyw6lzIGF2ZWMgbGUgZmljaGllciBkZSAiCisicsOpZsOpcmVuY2VcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBkYW5zIGxlIHLDqXBlcnRvaXJlIGRlYmlhbi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICDDiWNob3VlIHNpIGxlcyBkaWZmw6lyZW5jZXMgc29udCB0cm9wIGltcG9ydGFudGVzXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgKGxlIG5pdmVhdSB2YSBkZSAwIHBvdXIgYXVjdW4gY29udHLDtGxlIMOgIDQgcG91ciAiCisidG91c1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlcyBjb250csO0bGVzKS4gUGFyIGTDqWZhdXQsIGxlIG5pdmVhdSBkZSBjb250csO0bGUgIgorImVzdCAxLlxuIgorIiAgLXEgICAgICAgICAgICAgICAgICAgICAgIHJlc3RlciBzaWxlbmNpZXV4IGV0IG4nYWZmaWNoZXIgYXVjdW4gIgorImF2ZXJ0aXNzZW1lbnQgbmlcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBjcsOpZXIgZGUgZmljaGllciBkZSBkaWZmw6lyZW5jZXMgZW50cmUgbGVzICIKKyJzeW1ib2xlc1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGNyw6nDqXMgZXQgbGUgY2FuZXZhcyBkZSByw6lmw6lyZW5jZS5cbiIKKyIgIC1JPGZpY2hpZXI+ICAgICAgICAgICAgICBmb3JjZXIgbCd1dGlsaXNhdGlvbiBkZSA8ZmljaGllcj4gY29tbWUgZmljaGllciAiCisiZGUgc3ltYm9sZXNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBkZSByw6lmw6lyZW5jZSBhdSBsaWV1IGR1IGZpY2hpZXIgcGFyIGTDqWZhdXQuXG4iCisiICAtTzxmaWNoaWVyPiAgICAgICAgICAgICAgw6ljcmlyZSBkYW5zIDxmaWNoaWVyPiBhdSBsaWV1IGRlIC4uLi9ERUJJQU4vIgorInN5bWJvbHMuXG4iCisiICAtTyAgICAgICAgICAgICAgICAgICAgICAgw6ljcmlyZSBkYW5zIGxhIHNvcnRpZSBzdGFuZGFyZCBhdSBsaWV1IGRlIC4uLi8iCisiREVCSUFOL3N5bWJvbHMuXG4iCisiICAtdCAgICAgICAgICAgICAgICAgICAgICAgw6ljcmlyZSBlbiBtb2RlIG1vZMOobGUgKHRlbXBsYXRlKS4gTGVzIMOpdGlxdWV0dGVzXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgbmUgc29udCBwYXMgdHJhaXTDqWVzIGV0IHNvbnQgaW5jbHVzZXMgZGFucyBsYSAiCisic29ydGllLlxuIgorIiAgLVYgICAgICAgICAgICAgICAgICAgICAgIGRldmVuaXIgdmVyYmV1eC4gTidhZmZpY2hlciBsZXMgc3ltYm9sZXMgIgorIm9ic29sw6h0ZXNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBldCBsZXMgc3ltYm9sZXMgY29ycmVzcG9uZGFudCBhdSBtb3RpZiBxdWUgc291cyAiCisiZm9ybWVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBkZSBjb21tZW50YWlyZXMgKHVuaXF1ZW1lbnQgZW4gbW9kZSAiCisiwqvCoGNhbmV2YXPCoMK7KS4gXG4iCisiICAtYTxhcmNoPiAgICAgICAgICAgICAgICAgdXRpbGlzZSA8YXJjaD4gY29tbWUgYXJjaGl0ZWN0dXJlIHBlbmRhbnQgbGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFpdGVtZW50XG4iCisiICAtZCAgICAgICAgICAgICAgICAgICAgICAgYWZmaWNoZXIgbGVzIGluZm9ybWF0aW9ucyBkZSBkw6lib2d1YWdlIHBlbmRhbnQgbGUgIgorInRyYWl0ZW1lbnQuXG4iCisiICAtaCwgLS1oZWxwICAgICAgICAgICAgICAgYWZmaWNoZXIgY2UgbWVzc2FnZSBkJ2FpZGUuXG4iCisiICAgICAgLS12ZXJzaW9uICAgICAgICAgICAgYWZmaWNoZXIgbGEgdmVyc2lvbi5cbiIKKworIzogc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGw6MTk0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIkNhbid0IHJlYWQgZGlyZWN0b3J5ICVzOiAlcyIKK21zZ3N0ciAiSW1wb3NzaWJsZSBkZSBsaXJlIGxlIHLDqXBlcnRvaXJlICVzwqA6ICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbDoyMDkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiT2JqZHVtcCBjb3VsZG4ndCBwYXJzZSAlc1xuIgorbXNnc3RyICJPYmpkdW1wIG5lIHBldXQgYW5hbHlzZXIgJXNcbiIKKworIzogc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGw6MjI3Cittc2dpZCAiPHN0YW5kYXJkIG91dHB1dD4iCittc2dzdHIgIjxzb3J0aWUgc3RhbmRhcmQ+IgorCisjOiBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbDoyNTUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibmV3IGxpYnJhcmllcyBhcHBlYXJlZCBpbiB0aGUgc3ltYm9scyBmaWxlOiAlcyIKK21zZ3N0ciAibm91dmVsbGVzIGJpYmxpb3Row6hxdWVzIGFwcGFydWVzIGRhbnMgbGUgZmljaGllciBkZXMgc3ltYm9sZXPCoDrCoCVzIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbDoyNjAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAic29tZSBsaWJyYXJpZXMgZGlzYXBwZWFyZWQgaW4gdGhlIHN5bWJvbHMgZmlsZTogJXMiCittc2dzdHIgImNlcnRhaW5lcyBiaWJsaW90aMOocXVlcyBvbnQgZGlzcGFydSBkdSBmaWNoaWVyIGRlcyBzeW1ib2xlc8KgOsKgJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsOjI2NQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJzb21lIG5ldyBzeW1ib2xzIGFwcGVhcmVkIGluIHRoZSBzeW1ib2xzIGZpbGU6ICVzIgorbXNnc3RyICIiCisiY2VydGFpbnMgbm91dmVhdXggc3ltYm9sZXMgc29udCBhcHBhcnVzIGRhbnMgbGUgZmljaGllciBkZXMgc3ltYm9sZXPCoDrCoCVzIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbDoyNjYgc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGw6MjcxCittc2dpZCAic2VlIGRpZmYgb3V0cHV0IGJlbG93IgorbXNnc3RyICJWZXVpbGxleiBjb25zdWx0ZXIgbGUgZmljaGllciBkZSBkaWZmw6lyZW5jZXMgY2ktZGVzc291cyIKKworIzogc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGw6MjcwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInNvbWUgc3ltYm9scyBvciBwYXR0ZXJucyBkaXNhcHBlYXJlZCBpbiB0aGUgc3ltYm9scyBmaWxlOiAlcyIKK21zZ3N0ciAiY2VydGFpbnMgc3ltYm9sZXMgb3UgbW90aWZzIG9udCBkaXNwYXJ1IGR1IGZpY2hpZXIgZGVzIHN5bWJvbGVzwqA6wqAlcyIKKworIzogc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGw6MjkxCittc2dpZCAidGhlIGdlbmVyYXRlZCBzeW1ib2xzIGZpbGUgaXMgZW1wdHkiCittc2dzdHIgImxlIGZpY2hpZXIgZGVzIHN5bWJvbGVzIGfDqW7DqXLDqSBlc3QgdmlkZSIKKworIzogc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGw6MjkzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGRvZXNuJ3QgbWF0Y2ggY29tcGxldGVseSAlcyIKK21zZ3N0ciAiJXMgbmUgY29ycmVzcG9uZCBwYXMgY29tcGzDqHRlbWVudCDDoCAlcyIKKworIzogc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGw6Mjk2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIm5vIGRlYmlhbi9zeW1ib2xzIGZpbGUgdXNlZCBhcyBiYXNpcyBmb3IgZ2VuZXJhdGluZyAlcyIKK21zZ3N0ciAicGFzIGRlIGZpY2hpZXIgZGViaWFuL3N5bWJvbHMgdXRpbGlzw6kgY29tbWUgYmFzZSBwb3VyIGfDqW7DqXJlciAlcyIKKworIzogc2NyaXB0cy9kcGtnLW1lcmdlY2hhbmdlbG9ncy5wbDo1NQorbXNnaWQgIkNvcHlyaWdodCAoQykgMjAwOS0yMDEwIFJhcGhhZWwgSGVydHpvZy4iCittc2dzdHIgIkNvcHlyaWdodCAoQykgMjAwOS0yMDEwIFJhcGhhZWwgSGVydHpvZy4iCisKKyM6IHNjcmlwdHMvZHBrZy1tZXJnZWNoYW5nZWxvZ3MucGw6NTgKK21zZ2lkICIiCisiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvclxuIgorImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LlxuIgorbXNnc3RyICIiCisiQ2UgbG9naWNpZWwgZXN0IHVuIGxvZ2ljaWVsIGxpYnJlLiBWb3lleiBsYSBsaWNlbmNlIMKrwqBHTlUgR2VuZXJhbCBQdWJsaWMgIgorIkxpY2Vuc2XCoMK7XG4iCisiZGFucyBsYSB2ZXJzaW9uIDIgb3UgdW5lIHZlcnNpb24gc3Vww6lyaWV1cmUgcG91ciBsZXMgY29uZGl0aW9ucyBkZSBjb3BpZS4gSWwgIgorIm4neSBhIFBBUyBkZSBnYXJhbnRpZS5cbiIKKworIzogc2NyaXB0cy9kcGtnLW1lcmdlY2hhbmdlbG9ncy5wbDo2NQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIDxvbGQ+IDxuZXctYT4gPG5ldy1iPiBbPG91dD5dXG4iCisiXG4iCisiT3B0aW9uczpcbiIKKyIgIC0tbWVyZ2UtcHJlcmVsZWFzZXMsIC1tICBtZXJnZSBwcmUtcmVsZWFzZXMgdG9nZXRoZXIsIGlnbm9yZXMgZXZlcnl0aGluZ1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGFmdGVyIHRoZSBsYXN0ICd+JyBpbiB0aGUgdmVyc2lvbi5cbiIKKyIgIC0taGVscCwgLWgsIC0/ICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCittc2dzdHIgIiIKKyJTeW50YXhlwqA6ICVzIFs8b3B0aW9uPi4uLl0gPGFuY2llbj4gPG5vdXZlYXUtYT4gPG5vdXZlYXUtYj4gWzxzb3J0aWU+XVxuIgorIlxuIgorIk9wdGlvbnPCoDpcbiIKKyIgIC0tbWVyZ2UtcHJlcmVsZWFzZXMsIC1tICBmdXNpb25uZXIgbGVzIHZlcnNpb25zIHByw6lsaW1pbmFpcmVzIGVuXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgaWdub3JhbnQgY2UgcXVpIHN1aXQgbGUgZGVybmllciBjYXJhY3TDqHJlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgwqvCoH7CoMK7IGRhbnMgbGEgdmVyc2lvbi5cbiIKKyIgIC1oLCAtLWhlbHAsIC0/ICAgICAgICAgICBhZmZpY2hlciBjZSBtZXNzYWdlIGQnYWlkZS5cbiIKKyIgICAgICAtLXZlcnNpb24gICAgICAgICAgICBhZmZpY2hlciBsYSB2ZXJzaW9uLlxuIgorCisjOiBzY3JpcHRzL2Rwa2ctbWVyZ2VjaGFuZ2Vsb2dzLnBsOjEyOSBzY3JpcHRzL2Rwa2ctbWVyZ2VjaGFuZ2Vsb2dzLnBsOjEzMQorIzogc2NyaXB0cy9EcGtnL0NvbXByZXNzaW9uL0ZpbGVIYW5kbGUucG06Mzg1CisjOiBzY3JpcHRzL0Rwa2cvSW50ZXJmYWNlL1N0b3JhYmxlLnBtOjExNSBzY3JpcHRzL0Rwa2cvSVBDLnBtOjI1NQorIzogc2NyaXB0cy9EcGtnL0lQQy5wbToyNjMgc2NyaXB0cy9EcGtnL1NvdXJjZS9GdW5jdGlvbnMucG06NzgKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbTo0NDcgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOjU1MAorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjIxNyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NTMwCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NjA1CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06MTQyCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06MTUxCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06MTU3CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06MjI2CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06MjM0CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06MzQxCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06MzUxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCB3cml0ZSAlcyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkJ8OpY3JpcmUgJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1uYW1lLnBsOjUxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIlVzYWdlOiAlcyBbPG9wdGlvbj4uLi5dIDxmaWxlPi4uLlxuIgorbXNnc3RyICJVdGlsaXNhdGlvbsKgOiAlcyBbPG9wdGlvbj4uLi5dIDxmaWNoaWVyPi4uLlxuIgorCisjOiBzY3JpcHRzL2Rwa2ctbmFtZS5wbDo1MworbXNnaWQgIiIKKyJcbiIKKyJPcHRpb25zOlxuIgorIiAgLWEsIC0tbm8tYXJjaGl0ZWN0dXJlICAgIG5vIGFyY2hpdGVjdHVyZSBwYXJ0IGluIGZpbGVuYW1lLlxuIgorIiAgLW8sIC0tb3ZlcndyaXRlICAgICAgICAgIG92ZXJ3cml0ZSBpZiBmaWxlIGV4aXN0cy5cbiIKKyIgIC1rLCAtLXN5bWxpbmsgICAgICAgICAgICBkb24ndCBjcmVhdGUgYSBuZXcgZmlsZSwgYnV0IGEgc3ltbGluay5cbiIKKyIgIC1zLCAtLXN1YmRpciBbZGlyXSAgICAgICBtb3ZlIGZpbGUgaW50byBzdWJkaXIgKHVzZSB3aXRoIGNhcmUpLlxuIgorIiAgLWMsIC0tY3JlYXRlLWRpciAgICAgICAgIGNyZWF0ZSB0YXJnZXQgZGlyIGlmIG5vdCB0aGVyZSAodXNlIHdpdGggY2FyZSkuXG4iCisiICAtaCwgLS1oZWxwICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC12LCAtLXZlcnNpb24gICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorImZpbGUuZGViIGNoYW5nZXMgdG8gPHBhY2thZ2U+Xzx2ZXJzaW9uPl88YXJjaGl0ZWN0dXJlPi48cGFja2FnZV90eXBlPlxuIgorImFjY29yZGluZyB0byB0aGUgJ3VuZGVyc2NvcmVzIGNvbnZlbnRpb24nLlxuIgorbXNnc3RyICIiCisiXG4iCisiT3B0aW9uczpcbiIKKyIgIC1hLCAtLW5vLWFyY2hpdGVjdHVyZSAgICBwYXMgZGUgcGFydGllIGFyY2hpdGVjdHVyZSBkYW5zIGxlIG5vbSBkZSAiCisiZmljaGllci5cbiIKKyIgIC1vLCAtLW92ZXJ3cml0ZSAgICAgICAgICDDqWNyYXNlciBzaSBsZSBmaWNoaWVyIGV4aXN0ZS5cbiIKKyIgIC1rLCAtLXN5bWxpbmsgICAgICAgICAgICBuZSBwYXMgY3LDqWVyIGRlIG5vdXZlYXUgZmljaGllciBtYWlzIHVuIGxpZW4gIgorInN5bWJvbGlxdWUuXG4iCisiICAtcywgLS1zdWJkaXIgW2Rpcl0gICAgICAgZMOpcGxhY2VyIGxlIGZpY2hpZXIgZGFucyB1IHNvdXMtcsOpcGVydG9pcmUgIgorIih1dGlsaXNlciAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdmVjIHByw6ljYXV0aW9uKS5cbiIKKyIgIC1jLCAtLWNyZWF0ZS1kaXIgICAgICAgICBjcsOpZXIgbGUgcsOpcGVydG9pcmUgY2libGUgc2kgYWJzZW50ICh1dGlsaXNlciAiCisiYXZlYyAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcsOpY2F1dGlvbikuXG4iCisiICAtaCwgLS1oZWxwICAgICAgICAgICAgICAgYWZmaWNoZXIgY2UgbWVzc2FnZSBkJ2FpZGUuXG4iCisiICAtdiwgLS12ZXJzaW9uICAgICAgICAgICAgYWZmaWNoZXIgbGEgdmVyc2lvbi5cbiIKKyJcbiIKKyJtb2RpZmljYXRpb24gZGUgZmljaGllci5kZWIgZW4gPHBhcXVldD5fPHZlcnNpb24+XzxhcmNoaXRlY3R1cmU+LiIKKyI8dHlwZV9wYXF1ZXQ+XG4iCisic2Vsb24gbGEgwqsgY29udmVudGlvbiBkZXMgJ3VuZGVyc2NvcmVzJ8KgwrsuXG4iCisKKyM6IHNjcmlwdHMvZHBrZy1uYW1lLnBsOjc1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCBmaW5kICclcyciCittc2dzdHIgImltcG9zc2libGUgZGUgdHJvdXZlciAlcyIKKworIzogc2NyaXB0cy9kcGtnLW5hbWUucGw6OTYgc2NyaXB0cy9EcGtnL0FyY2gucG06MTM4IHNjcmlwdHMvRHBrZy9BcmNoLnBtOjE1NworIzogc2NyaXB0cy9EcGtnL0FyY2gucG06MTc2IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvUGFyc2UucG06MTQyCisjOiBzY3JpcHRzL0Rwa2cvSVBDLnBtOjI0NyBzY3JpcHRzL0Rwa2cvU2hsaWJzLnBtOjc4CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG06MTkzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCBvcGVuICVzIgorbXNnc3RyICJpbXBvc3NpYmxlIGQnb3V2cmlyICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctbmFtZS5wbDo5OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJiaW5hcnkgY29udHJvbCBmaWxlICVzIgorbXNnc3RyICJmaWNoaWVyIGRlIGNvbnRyw7RsZSBiaW5haXJlICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctbmFtZS5wbDoxMTEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiYXNzdW1pbmcgYXJjaGl0ZWN0dXJlICclcycgZm9yICclcyciCittc2dzdHIgImFyY2hpdGVjdHVyZSBzdXBwb3PDqWUgJyVzJyBwb3VyICclcyciCisKKyM6IHNjcmlwdHMvZHBrZy1uYW1lLnBsOjEzMworIywgcGVybC1mb3JtYXQKK21zZ2lkICJiYWQgcGFja2FnZSBjb250cm9sIGluZm9ybWF0aW9uIGZvciAnJXMnIgorbXNnc3RyICJpbmZvcm1hdGlvbnMgZGUgY29udHLDtGxlIGluY29ycmVjdGVzIHBvdXIgwqvCoCVzwqDCuyIKKworIzogc2NyaXB0cy9kcGtnLW5hbWUucGw6MTQ5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImFzc3VtaW5nIHNlY3Rpb24gJyVzJyBmb3IgJyVzJyIKK21zZ3N0ciAic2VjdGlvbiDCq8KgJXPCoMK7IHN1cHBvc8OpZSBwb3VyIMKrwqAlc8KgwrsiCisKKyM6IHNjcmlwdHMvZHBrZy1uYW1lLnBsOjE3NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJubyBQYWNrYWdlIGZpZWxkIGZvdW5kIGluICclcycsIHNraXBwaW5nIGl0IgorbXNnc3RyICJwYXMgZGUgY2hhbXAgUGFja2FnZSB0cm91dsOpIGRhbnMgwqvCoCVzwqDCuywgaWdub3LDqSIKKworIzogc2NyaXB0cy9kcGtnLW5hbWUucGw6MTg3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNyZWF0ZWQgZGlyZWN0b3J5ICclcyciCittc2dzdHIgInLDqXBlcnRvaXJlIMKrwqAlc8KgwrsgY3LDqcOpIgorCisjOiBzY3JpcHRzL2Rwa2ctbmFtZS5wbDoxODkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IGNyZWF0ZSBkaXJlY3RvcnkgJyVzJyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkZSBjcsOpZXIgbGUgcsOpcGVydG9pcmUgwqvCoCVzwqDCuyIKKworIzogc2NyaXB0cy9kcGtnLW5hbWUucGw6MTkyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIm5vIHN1Y2ggZGlyZWN0b3J5ICclcycsIHRyeSAtLWNyZWF0ZS1kaXIgKC1jKSBvcHRpb24iCittc2dzdHIgInLDqXBlcnRvaXJlICDCq8KgJXPCoMK7IGluZXhpc3RhbnQsIGVzc2F5ZXogbCdvcHRpb24gLS1jcmVhdGUtZGlyICgtYykiCisKKyM6IHNjcmlwdHMvZHBrZy1uYW1lLnBsOjIwNworIywgcGVybC1mb3JtYXQKK21zZ2lkICJza2lwcGluZyAnJXMnIgorbXNnc3RyICLCq8KgJXPCoMK7IGlnbm9yw6kiCisKKyM6IHNjcmlwdHMvZHBrZy1uYW1lLnBsOjIwOQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3QgbW92ZSAnJXMnIHRvIGV4aXN0aW5nIGZpbGUiCittc2dzdHIgImltcG9zc2libGUgZGUgZMOpcGxhY2VyIMKrwqAlc8KgwrsgdmVycyB1biBmaWNoaWVyIGV4aXN0YW50IgorCisjOiBzY3JpcHRzL2Rwa2ctbmFtZS5wbDoyMTEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibW92ZWQgJyVzJyB0byAnJXMnIgorbXNnc3RyICJkw6lwbGFjZW1lbnQgZGUgwqvCoCVzwqDCuyBlbiDCq8KgJXPCoMK7IgorCisjOiBzY3JpcHRzL2Rwa2ctbmFtZS5wbDoyMTMKK21zZ2lkICJta2RpciBjYW4gYmUgdXNlZCB0byBjcmVhdGUgZGlyZWN0b3J5IgorbXNnc3RyICJpbXBvc3NpYmxlIGQndXRpbGlzZXIgbWtkaXIgcG91ciBjcsOpZXIgbGUgcsOpcGVydG9pcmUiCisKKyM6IHNjcmlwdHMvZHBrZy1uYW1lLnBsOjIxOAorbXNnaWQgIm5lZWQgYXQgbGVhc3QgYSBmaWxlbmFtZSIKK21zZ3N0ciAiYXUgbW9pbnMgdW4gbm9tIGRlIGZpY2hpZXIgZXN0IG7DqWNlc3NhaXJlIgorCisjOiBzY3JpcHRzL2Rwa2ctcGFyc2VjaGFuZ2Vsb2cucGw6MzMKK21zZ2lkICIiCisiXG4iCisiQ29weXJpZ2h0IChDKSAxOTk2IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMSBXaWNoZXJ0IEFra2VybWFuIgorbXNnc3RyICIiCisiXG4iCisiQ29weXJpZ2h0IChDKSAxOTk2IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMSBXaWNoZXJ0IEFra2VybWFuIgorCisjOiBzY3JpcHRzL2Rwa2ctcGFyc2VjaGFuZ2Vsb2cucGw6NDUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXVxuIgorIlxuIgorIk9wdGlvbnM6XG4iCisiICAtbDxjaGFuZ2Vsb2dmaWxlPiAgICAgICAgZ2V0IHBlci12ZXJzaW9uIGluZm8gZnJvbSB0aGlzIGZpbGUuXG4iCisiICAtRjxjaGFuZ2Vsb2dmb3JtYXQ+ICAgICAgZm9yY2UgY2hhbmdlIGxvZyBmb3JtYXQuXG4iCisiICAtTDxsaWJkaXI+ICAgICAgICAgICAgICAgbG9vayBmb3IgY2hhbmdlIGxvZyBwYXJzZXJzIGluIDxsaWJkaXI+LlxuIgorIiAgLWgsIC0taGVscCAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAgICAgLS12ZXJzaW9uICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKKyJwYXJzZXIgb3B0aW9uczpcbiIKKyIgICAgLS1mb3JtYXQgPG91dHB1dGZvcm1hdD4gICAgIHNlZSBtYW4gcGFnZSBmb3IgbGlzdCBvZiBhdmFpbGFibGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG91dHB1dCBmb3JtYXRzLCBkZWZhdWx0cyB0byAnZHBrZydcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvciBjb21wYXRpYmlsaXR5IHdpdGggZHBrZy1kZXZcbiIKKyIgICAgLS1zaW5jZSA8dmVyc2lvbj4sICAgICAgICAgIGluY2x1ZGUgYWxsIGNoYW5nZXMgbGF0ZXIgdGhhbiB2ZXJzaW9uXG4iCisiICAgICAgLXM8dmVyc2lvbj4sIC12PHZlcnNpb24+XG4iCisiICAgIC0tdW50aWwgPHZlcnNpb24+LCAgICAgICAgICBpbmNsdWRlIGFsbCBjaGFuZ2VzIGVhcmxpZXIgdGhhbiB2ZXJzaW9uXG4iCisiICAgICAgLXU8dmVyc2lvbj5cbiIKKyIgICAgLS1mcm9tIDx2ZXJzaW9uPiwgICAgICAgICAgIGluY2x1ZGUgYWxsIGNoYW5nZXMgZXF1YWwgb3IgbGF0ZXJcbiIKKyIgICAgICAtZjx2ZXJzaW9uPiAgICAgICAgICAgICAgIHRoYW4gdmVyc2lvblxuIgorIiAgICAtLXRvIDx2ZXJzaW9uPiwgLXQ8dmVyc2lvbj4gaW5jbHVkZSBhbGwgY2hhbmdlcyB1cCB0byBvciBlcXVhbFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhhbiB2ZXJzaW9uXG4iCisiICAgIC0tY291bnQgPG51bWJlcj4sICAgICAgICAgICBpbmNsdWRlIDxudW1iZXI+IGVudHJpZXMgZnJvbSB0aGUgdG9wXG4iCisiICAgICAgLWM8bnVtYmVyPiwgLW48bnVtYmVyPiAgICAob3IgdGhlIHRhaWwgaWYgPG51bWJlcj4gaXMgbG93ZXIgdGhhbiAwKVxuIgorIiAgICAtLW9mZnNldCA8bnVtYmVyPiwgICAgICAgICAgY2hhbmdlIHRoZSBzdGFydGluZyBwb2ludCBmb3IgLS1jb3VudCxcbiIKKyIgICAgICAtbzxudW1iZXI+ICAgICAgICAgICAgICAgIGNvdW50ZWQgZnJvbSB0aGUgdG9wIChvciB0aGUgdGFpbCBpZlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG51bWJlcj4gaXMgbG93ZXIgdGhhbiAwKVxuIgorIiAgICAtLWFsbCAgICAgICAgICAgICAgICAgICAgICAgaW5jbHVkZSBhbGwgY2hhbmdlc1xuIgorbXNnc3RyICIiCisiU3ludGF4ZcKgOiAlcyBbPG9wdGlvbj4gLi4uXVxuIgorIlxuIgorIk9wdGlvbnM6XG4iCisiICAtbDxmaWNoaWVyX2NoYW5nZWxvZz4gICAgb2J0ZW5pciBkZSBsJ2luZm9ybWF0aW9uIHNlbG9uIGxhIHZlcnNpb24gZGFucyAiCisiY2VcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWNoaWVyLlxuIgorIiAgLUY8Zm9ybWF0X2NoYW5nZWxvZz4gICAgIGZvcmNlciBsZSBmb3JtYXQgZHUgam91cm5hbCBkZXMgY2hhbmdlbWVudHMuXG4iCisiICAtTDxsaWJkaXI+ICAgICAgICAgICAgICAgcmVjaGVyY2hlciBsZXMgYW5hbHlzZXVycyBkZSBjaGFuZ2VtZW50cyBkYW5zICIKKyI8bGliZGlyPi5cbiIKKyIgIC1oLCAtLWhlbHAgICAgICAgICAgICAgICBhZmZpY2hlciBjZSBtZXNzYWdlIGQnYWlkZS5cbiIKKyIgICAgICAtLXZlcnNpb24gICAgICAgICAgICBhZmZpY2hlciBsYSB2ZXJzaW9uLlxuIgorIlxuIgorIk9wdGlvbnMgZGUgbCdhbmFseXNldXLCoDpcbiIKKyIgICAgLS1mb3JtYXQgPGZvcm1hdF9zb3J0aWU+ICAgIGNvbnN1bHRlciBsYSBwYWdlIGRlIG1hbnVlbCBwb3VyXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2b2lyIGxhIGxpc3RlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXMgZm9ybWF0cyBkZSBzb3J0aWUgZGlzcG9uaWJsZXMuIFZhbGV1clxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFyIGTDqWZhdXTCoDrCoMKrwqBkcGtnwqDCuyBwb3VyIGNvbXBhdGliaWxpdMOpXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdmVjIMKrwqBkcGtnLWRldsKgwrtcbiIKKyIgICAgLS1zaW5jZSwgLXMsIC12IDx2ZXJzaW9uPiAgIGluY2x1cmUgdG91dGVzIGxlcyBtb2RpZmljYXRpb25zIGRlcHVpc1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2V0dGUgdmVyc2lvblxuIgorIiAgICAtLXVudGlsLCAtdSA8dmVyc2lvbj4gICAgICAgaW5jbHVyZSB0b3V0ZXMgbGVzIG1vZGlmaWNhdGlvbnMgIgorImFudMOpcmlldXJlc1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgw6AgY2V0dGUgdmVyc2lvblxuIgorIiAgICAtLWZyb20sIC1mIDx2ZXJzaW9uPiAgICAgICAgaW5jbHVyZSB0b3V0ZXMgbGVzIG1vZGlmaWNhdGlvbnMgZGVwdWlzXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjZXR0ZSB2ZXJzaW9uIGluY2x1c2VcbiIKKyIgICAgLS10bywgLXQgPHZlcnNpb24+ICAgICAgICAgIGluY2x1cmUgdG91dGVzIGxlcyBtb2RpZmljYXRpb25zICIKKyJhbnTDqXJpZXVyZXNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIMOgIGNldHRlIHZlcnNpb24gaW5jbHVzZVxuIgorIiAgICAtLWNvdW50LCAtYywgLW4gPG5vbWJyZT4gICAgaW5jbHVyZSA8bm9tYnJlPiBlbnRyw6llcyBkZXB1aXMgbGUgZMOpYnV0XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAob3UgYmllbiBsZXMgZGVybmnDqHJlcyBzaSA8bm9tYnJlPiBlc3QgIgorImluZsOpcmlldXIgw6AgMClcbiIKKyIgICAgLS1vZmZzZXQsIC1vIDxudW1iZXI+ICAgICAgIG1vZGlmaWVyIGxlIHBvaW50IGRlIGTDqW1hcnJhZ2UgZGUgLS1jb3VudCxcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIMOgIHBhcnRpciBkdSBkw6lidXQgKG91IGRlIGxhIGZpbiBzaVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5vbWJyZT4gZXN0IGluZsOpcmlldXIgw6AgMClcbiIKKyIgICAgLS1hbGwgICAgICAgICAgICAgICAgICAgICAgIGluY2x1cmUgdG91dGVzIGxlcyBtb2RpZmljYXRpb25zXG4iCisKKyM6IHNjcmlwdHMvZHBrZy1wYXJzZWNoYW5nZWxvZy5wbDoxMTcKKyMsIGZ1enp5CisjfCBtc2dpZCAiJXMgdGFrZXMgbm8gbm9uLW9wdGlvbiBhcmd1bWVudHMiCittc2dpZCAidGFrZXMgbm8gbm9uLW9wdGlvbiBhcmd1bWVudHMiCittc2dzdHIgIiVzIG5lIHByZW5kIHBhcyBkZSBwYXJhbcOodHJlIHNhbnMgb3B0aW9uIgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOjY2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gPGJpbmFyeXBhdGg+IFs8b3ZlcnJpZGVmaWxlPiBbPHBhdGhwcmVmaXg+XV0gPiAiCisiUGFja2FnZXNcbiIKKyJcbiIKKyJPcHRpb25zOlxuIgorIiAgLXQsIC0tdHlwZSA8dHlwZT4gICAgICAgIHNjYW4gZm9yIDx0eXBlPiBwYWNrYWdlcyAoZGVmYXVsdCBpcyAnZGViJykuXG4iCisiICAtdSwgLS11ZGViICAgICAgICAgICAgICAgc2NhbiBmb3IgdWRlYnMgKG9ic29sZXRlIGFsaWFzIGZvciAtdHVkZWIpLlxuIgorIiAgLWEsIC0tYXJjaCA8YXJjaD4gICAgICAgIGFyY2hpdGVjdHVyZSB0byBzY2FuIGZvci5cbiIKKyIgIC1tLCAtLW11bHRpdmVyc2lvbiAgICAgICBhbGxvdyBtdWx0aXBsZSB2ZXJzaW9ucyBvZiBhIHNpbmdsZSBwYWNrYWdlLlxuIgorIiAgLWUsIC0tZXh0cmEtb3ZlcnJpZGUgPGZpbGU+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlIGV4dHJhIG92ZXJyaWRlIGZpbGUuXG4iCisiICAtTSwgLS1tZWRpdW0gPG1lZGl1bT4gICAgYWRkIFgtTWVkaXVtIGZpZWxkIGZvciBkc2VsZWN0IG11bHRpY2QgYWNjZXNzICIKKyJtZXRob2RcbiIKKyIgIC1oLCAtLWhlbHAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgICAgIC0tdmVyc2lvbiAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCittc2dzdHIgIiIKKyJTeW50YXhlwqA6ICVzIFs8b3B0aW9uPiAuLi5dIDxyZXAtZGUtYmluYWlyZXM+IDxmaWNoaWVyLWQnb3ZlcnJpZGU+IFs8Y2hlbWluLSIKKyLDoC1wcsOpZml4ZXI+XSA+XG4iCisiUGFja2FnZXNcbiIKKyJcbiIKKyJPcHRpb25zwqA6XG4iCisiICAtdCwgLS10eXBlIDx0eXBlPiAgICAgcmVjaGVyY2hlciBsZXMgcGFxdWV0cyBkZSA8dHlwZT4gKHBhciBkw6lmYXV0LCAiCisiwqvCoGRlYsKgwrspLlxuIgorIiAgLXUsIC0tdWRlYiAgICAgICAgICAgIHJlY2hlcmNoZXIgbGVzIHVkZWJzIChhbGlhcyBvYnNvbMOodGUgcG91ciAtdHVkZWIpLlxuIgorIiAgLWEsIC0tYXJjaCA8YXJjaD4gICAgIGFyY2hpdGVjdHVyZSDDoCByZWNoZXJjaGVyLlxuIgorIiAgLW0sIC0tbXVsdGl2ZXJzaW9uICAgIHBlcm1ldHRyZSBwbHVzaWV1cnMgdmVyc2lvbnMgZCd1biBwYXF1ZXQuXG4iCisiICAtZSwgLS1leHRyYS1vdmVycmlkZSA8ZmljaGllclxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHV0aWxpc2VyIHVuIGZpY2hpZXIgc3VwcGzDqW1lbnRhaXJlICIKKyJkJ8KrwqBvdmVycmlkZcKgwrsuXG4iCisiICAtTSwgLS1tZWRpdW0gPG1lZGl1bT4gYWpvdXRlciBsZSBjaGFtcCBYLU1lZGl1bSBwb3VyIGxhIG3DqXRob2RlIGQnYWNjw6hzXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgbXVsdGljZCBkZSBkc2VsZWN0LlxuIgorIiAgLWgsIC0taGVscCAgICAgICAgICAgIGFmZmljaGVyIGNlIG1lc3NhZ2UgZCdhaWRlLlxuIgorIiAgICAgIC0tdmVyc2lvbiAgICAgICAgIGFmZmljaGVyIGxhIHZlcnNpb24uXG4iCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6ODMKK21zZ2lkICItdSwgLS11ZGViIG9wdGlvbiBpcyBkZXByZWNhdGVkIChzZWUgUkVBRE1FLmZlYXR1cmUtcmVtb3ZhbC1zY2hlZHVsZSkiCittc2dzdHIgIi11LCAtLXVkZWIgb3B0aW9uIG9ic29sw6h0ZSAodm9pciBSRUFETUUuZmVhdHVyZS1yZW1vdmFsLXNjaGVkdWxlKSIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoxMTIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiICAlcyAocGFja2FnZSBzYXlzICVzLCBub3QgJXMpIgorbXNnc3RyICIgICVzIChsZSBwYXF1ZXQgZGl0ICVzLCBwYXMgJXMpIgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOjEyMAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJVbmNvbmRpdGlvbmFsIG1haW50YWluZXIgb3ZlcnJpZGUgZm9yICVzIgorbXNnc3RyICJBbm51bGF0aW9uIGluY29uZGl0aW9ubmVsbGUgZHUgcmVzcG9uc2FibGUgcG91ciAlcyIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoxNTggc2NyaXB0cy9kcGtnLXNjYW5zb3VyY2VzLnBsOjMwMgorIywgZnV6enkKKyN8IG1zZ2lkICIxIHRvIDMgYXJncyBleHBlY3RlZCIKK21zZ2lkICJvbmUgdG8gdGhyZWUgYXJndW1lbnRzIGV4cGVjdGVkIgorbXNnc3RyICJkZSAxIMOgIDMgcGFyYW3DqHRyZXMgYXR0ZW5kdXMiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6MTc1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIkJpbmFyeSBkaXIgJXMgbm90IGZvdW5kIgorbXNnc3RyICJSw6lwZXJ0b2lyZSBkZSBiaW5haXJlcyAlcyBub24gdHJvdXbDqSIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoxNzcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiT3ZlcnJpZGUgZmlsZSAlcyBub3QgZm91bmQiCittc2dzdHIgIkZpY2hpZXIgb3ZlcnJpZGUgJXMgbm9uIHRyb3V2w6kiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6MTgzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIkNvdWxkbid0IG9wZW4gJXMgZm9yIHJlYWRpbmciCittc2dzdHIgIkltcG9zc2libGUgZGUgbGlyZSAlcyIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoxOTMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY291bGRuJ3QgcGFyc2UgY29udHJvbCBpbmZvcm1hdGlvbiBmcm9tICVzLiIKK21zZ3N0ciAiSW1wb3NzaWJsZSBkJ2FuYWx5c2VyIGxlcyBpbmZvcm1hdGlvbnMgZGUgY29udHLDtGxlIGRlICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOjE5NgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJgZHBrZy1kZWIgLUkgJXMgY29udHJvbCcgZXhpdGVkIHdpdGggJWQsIHNraXBwaW5nIHBhY2thZ2UiCittc2dzdHIgIsKrwqBkcGtnLWRlYiAtSSAlcyBjb250cm9swqDCuywgc29ydGllIGF2ZWMgJWQsIHBhcXVldCBzYXV0w6kiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6MjAyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIk5vIFBhY2thZ2UgZmllbGQgaW4gY29udHJvbCBmaWxlIG9mICVzIgorbXNnc3RyICJQYXMgZGUgY2hhbXAgUGFja2FnZSBkYW5zIGxlIGZpY2hpZXIgZGUgY29udHLDtGxlIGRlICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOjIxMAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJQYWNrYWdlICVzIChmaWxlbmFtZSAlcykgaXMgcmVwZWF0IGJ1dCBuZXdlciB2ZXJzaW9uOyIKK21zZ3N0ciAiTGUgcGFxdWV0ICVzIChub20gJXMpIHLDqXDDqXTDqSwgbWFpcyB2ZXJzaW9uIHBsdXMgcsOpY2VudGUiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6MjEyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVzZWQgdGhhdCBvbmUgYW5kIGlnbm9yZWQgZGF0YSBmcm9tICVzISIKK21zZ3N0ciAiY2VsdWktY2kgYSDDqXTDqSBpZ25vcsOpIGV0IGxlcyBkb25uw6llcyBkZSAlcyBvbnQgw6l0w6kgaWdub3LDqWVzICEiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6MjE2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgJXMgKGZpbGVuYW1lICVzKSBpcyByZXBlYXQ7IgorbXNnc3RyICJMZSBwYXF1ZXQgJXMgKG5vbSAlcykgZXN0IHLDqXDDqXTDqcKgOyIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoyMTcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiaWdub3JlZCB0aGF0IG9uZSBhbmQgdXNpbmcgZGF0YSBmcm9tICVzISIKK21zZ3N0ciAiY2VsdWktY2kgYSDDqXTDqSBpZ25vcsOpIGV0IGxlcyBkb25uw6llcyBkZSAlcyBvbnQgw6l0w6kgdXRpbGlzw6llc8KgISIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoyMjMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiUGFja2FnZSAlcyAoZmlsZW5hbWUgJXMpIGhhcyBGaWxlbmFtZSBmaWVsZCEiCittc2dzdHIgIkxlIHBhcXVldCAlcyAobm9tICVzKSBhIHVuIGNoYW1wIEZpbGVuYW1lwqAhIgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOjI1NQorbXNnaWQgIkZhaWxlZCB3aGVuIHdyaXRpbmcgc3Rkb3V0IgorbXNnc3RyICJJbXBvc3NpYmxlIGQnw6ljcmlyZSBzdXIgc3Rkb3V0IgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOjI1OQorbXNnaWQgIkNvdWxkbid0IGNsb3NlIHN0ZG91dCIKK21zZ3N0ciAiSW1wb3NzaWJsZSBkZSBmZXJtZXIgc3Rkb3V0IgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOjI2MgorbXNnaWQgIlBhY2thZ2VzIGluIG92ZXJyaWRlIGZpbGUgd2l0aCBpbmNvcnJlY3Qgb2xkIG1haW50YWluZXIgdmFsdWU6IgorbXNnc3RyICIiCisiUGFxdWV0cyBkYW5zIGxlIGZpY2hpZXIgZCdvdmVycmlkZSBhdmVjIHZhbGV1ciBpbmNvcnJlY3RlIHBvdXIgbCdhbmNpZW4gIgorInJlc3BvbnNhYmxlwqA6IgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOjI2NgorbXNnaWQgIlBhY2thZ2VzIHNwZWNpZnlpbmcgc2FtZSBtYWludGFpbmVyIGFzIG92ZXJyaWRlIGZpbGU6IgorbXNnc3RyICJQYXF1ZXRzIGluZGlxdWFudCBsZSBtw6ptZSByZXNwb25zYWJsZSBxdWUgbGUgZmljaGllciBkJ292ZXJyaWRlwqA6IgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOjI3MAorbXNnaWQgIlBhY2thZ2VzIGluIGFyY2hpdmUgYnV0IG1pc3NpbmcgZnJvbSBvdmVycmlkZSBmaWxlOiIKK21zZ3N0ciAiUGFxdWV0cyBkYW5zIGwnYXJjaGl2ZSBtYWlzIHBhcyBkYW5zIGxlIGZpY2hpZXIgZCdvdmVycmlkZcKgOiIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoyNzQKK21zZ2lkICJQYWNrYWdlcyBpbiBvdmVycmlkZSBmaWxlIGJ1dCBub3QgaW4gYXJjaGl2ZToiCittc2dzdHIgIlBhcXVldHMgZGFucyBsZSBmaWNoaWVyIGQnb3ZlcnJpZGUgbWFpcyBwYXMgZGFucyBsJ2FyY2hpdmXCoDoiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6Mjc4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIldyb3RlICVzIGVudHJpZXMgdG8gb3V0cHV0IFBhY2thZ2VzIGZpbGUuIgorbXNnc3RyICIlcyBlbnRyw6llcyDDqWNyaXRlcyBkYW5zIGxlIGZpY2hpZXIgUGFja2FnZXMuIgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnNvdXJjZXMucGw6ODQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSA8YmluYXJ5cGF0aD4gWzxvdmVycmlkZWZpbGU+IFs8cGF0aHByZWZpeD5dXSA+ICIKKyJTb3VyY2VzXG4iCisiXG4iCisiT3B0aW9uczpcbiIKKyIgIC1uLCAtLW5vLXNvcnQgICAgICAgICAgICBkb24ndCBzb3J0IGJ5IHBhY2thZ2UgYmVmb3JlIG91dHB1dHRpbmcuXG4iCisiICAtZSwgLS1leHRyYS1vdmVycmlkZSA8ZmlsZT5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2UgZXh0cmEgb3ZlcnJpZGUgZmlsZS5cbiIKKyIgIC1zLCAtLXNvdXJjZS1vdmVycmlkZSA8ZmlsZT5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2UgZmlsZSBmb3IgYWRkaXRpb25hbCBzb3VyY2Ugb3ZlcnJpZGVzLCAiCisiZGVmYXVsdFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzIHJlZ3VsYXIgb3ZlcnJpZGUgZmlsZSB3aXRoIC5zcmMgYXBwZW5kZWQuXG4iCisiICAgICAgLS1kZWJ1ZyAgICAgICAgICAgICAgdHVybiBkZWJ1Z2dpbmcgb24uXG4iCisiICAgICAgLS1oZWxwICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgICAgICAtLXZlcnNpb24gICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorIlNlZSB0aGUgbWFuIHBhZ2UgZm9yIHRoZSBmdWxsIGRvY3VtZW50YXRpb24uXG4iCittc2dzdHIgIiIKKyJTeW50YXhlwqA6ICVzIFs8b3B0aW9uPiAuLi5dIDxyZXAtZGUtYmluYWlyZXM+IDxmaWNoaWVyLWQnb3ZlcnJpZGU+IFs8Y2hlbWluLSIKKyLDoC1wcsOpZml4ZXI+XSA+XG4iCisiU291cmNlc1xuIgorIlxuIgorIk9wdGlvbnPCoDpcbiIKKyIgIC1uLCAtLW5vLXNvcnQgICAgICAgICAgbmUgcGFzIHRyaWVyIHBhciBwYXF1ZXQgYXZhbnQgYWZmaWNoYWdlXG4iCisiICAtZSwgLS1leHRyYS1vdmVycmlkZSA8ZmljaGllcj5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICB1dGlsaXNlciB1biBmaWNoaWVyIHN1cHBsw6ltZW50YWlyZSBkJ292ZXJyaWRlLlxuIgorIiAgLXMsIC0tc291cmNlLW92ZXJyaWRlIDxmaWNoaWVyPlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICB1dGlsaXNlciBmaWNoaWVyIHBvdXIgZCdhdXRyZXMgYW5udWxhdGlvbnMsXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgIHBhciBkw6lmYXV0IGMnZXN0IGxlIGZpY2hpZXIgZCdvdmVycmlkZSBub3JtYWxcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgcXVpIGVzdCB1dGlsaXPDqS5cbiIKKyIgICAgICAtLWRlYnVnICAgICAgICAgICAgYWN0aXZlciBsZSBkw6lib2dhZ2UuXG4iCisiICAgICAgLS1oZWxwICAgICAgICAgICAgIGFmZmljaGVyIGNlIG1lc3NhZ2UgZCdhaWRlLlxuIgorIiAgICAgIC0tdmVyc2lvbiAgICAgICAgICBhZmZpY2hlciBsYSB2ZXJzaW9uLlxuIgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnNvdXJjZXMucGw6MTA1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImVycm9yIGNsb3NpbmcgJXMgKCQ/ICVkLCAkISBgJXMnKSIKK21zZ3N0ciAiZXJyZXVyIGVuIGZlcm1hbnQgJXMgKCQ/ICVkLCAkISBgJXMnKSIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5zb3VyY2VzLnBsOjEyMQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIG92ZXJyaWRlIGVudHJ5IGF0IGxpbmUgJWQgKCVkIGZpZWxkcykiCittc2dzdHIgImVudHLDqWUgaW52YWxpZGUsIGxpZ25lICVkIChjaGFtcHMgJWQpIgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnNvdXJjZXMucGw6MTI3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nIGR1cGxpY2F0ZSBvdmVycmlkZSBlbnRyeSBmb3IgJXMgYXQgbGluZSAlZCIKK21zZ3N0ciAiZW50csOpZSBlbiBkb3VibGUgJXMgaWdub3LDqWUsIGxpZ25lICVkIgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnNvdXJjZXMucGw6MTMyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nIG92ZXJyaWRlIGVudHJ5IGZvciAlcywgaW52YWxpZCBwcmlvcml0eSAlcyIKK21zZ3N0ciAiZW50csOpZSBlbiBkb3VibGUgJXMgaWdub3LDqWUsIHByaW9yaXTDqSAlcyBub24gdmFsYWJsZSIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5zb3VyY2VzLnBsOjE4NgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHNvdXJjZSBvdmVycmlkZSBlbnRyeSBhdCBsaW5lICVkICglZCBmaWVsZHMpIgorbXNnc3RyICIiCisiZW50csOpZSBub24gdmFsYWJsZSBkYW5zIGxlIGZpY2hpZXIgZCdvdmVycmlkZSBwb3VyIGxlcyBzb3VyY2VzLCBsaWduZSAlZCAiCisiKGNoYW1wcyAlZCkiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2Fuc291cmNlcy5wbDoxOTQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgZHVwbGljYXRlIHNvdXJjZSBvdmVycmlkZSBlbnRyeSBmb3IgJXMgYXQgbGluZSAlZCIKK21zZ3N0ciAiIgorImVudHLDqWUgZW4gZG91YmxlICVzIGlnbm9yw6llIGRhbnMgbGUgZmljaGllciBkJ292ZXJyaWRlIHBvdXIgbGVzIHNvdXJjZXMsICIKKyJsaWduZSAlZCIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5zb3VyY2VzLnBsOjI0NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJubyBiaW5hcnkgcGFja2FnZXMgc3BlY2lmaWVkIGluICVzIgorbXNnc3RyICJwYXMgZGUgcGFxdWV0IGJpbmFpcmUgaW5kaXF1w6kgZGFucyAlcyIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo5MworIywgcGVybC1mb3JtYXQKK21zZ2lkICJhZG1pbmlzdHJhdGl2ZSBkaXJlY3RvcnkgJyVzJyBkb2VzIG5vdCBleGlzdCIKK21zZ3N0ciAicsOpcGVydG9pcmUgZCdhZG1pbmlzdHJhdGlvbiAlcyBuJ2V4aXN0ZSBwYXMiCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6OTgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5yZWNvZ25pc2VkIGRlcGVuZGVuY3kgZmllbGQgYCVzJyIKK21zZ3N0ciAiY2hhbXAgZGUgZMOpcGVuZGFuY2Ugbm9uIHJlY29ubnUgwqvCoCVzwqDCuyIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDoxMzIKK21zZ2lkICJuZWVkIGF0IGxlYXN0IG9uZSBleGVjdXRhYmxlIgorbXNnc3RyICJhdSBtb2lucyB1biBleMOpY3V0YWJsZSBlc3QgbsOpY2Vzc2FpcmUiCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6MTc1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNvdWxkbid0IGZpbmQgbGlicmFyeSAlcyBuZWVkZWQgYnkgJXMgKEVMRiBmb3JtYXQ6ICclcyc7IFJQQVRIOiAnJXMnKS4iCittc2dzdHIgIiIKKyJpbXBvc3NpYmxlIGRlIHRyb3V2ZXIgbGEgYmlibGlvdGjDqHF1ZSAlcyB1dGlsaXPDqWUgcGFyICVzIChmb3JtYXQgIgorIkVMRsKgOsKgwqvCoCVzwqDCuzsgUlBBVEjCoDrCoMKrwqAlc8KgwrspIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjI2MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBoYXMgYW4gdW5leHBlY3RlZCBTT05BTUUgKCVzKSIKK21zZ3N0ciAiJXMgdXRpbGlzZSB1biBTT05BTUUgaW5hdHRlbmR1ICglcykiCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6MjgzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIm5vIGRlcGVuZGVuY3kgaW5mb3JtYXRpb24gZm91bmQgZm9yICVzICh1c2VkIGJ5ICVzKS4iCittc2dzdHIgInBhcyBkJ2luZm9ybWF0aW9uIGRlIGTDqXBlbmRhbmNlIHRyb3V2w6llIHBvdXIgJXMgKHV0aWxpc8OpIHBhciAlcykuIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjMxNAorbXNnaWQgIiIKKyJiaW5hcmllcyB0byBhbmFseXplIHNob3VsZCBhbHJlYWR5IGJlIGluc3RhbGxlZCBpbiB0aGVpciBwYWNrYWdlJ3MgZGlyZWN0b3J5LiIKK21zZ3N0ciAiIgorImxlcyBiaW5haXJlcyDDoCBhbmFseXNlciBkZXZyYWllbnQgZMOpasOgIMOqdHJlIHByw6lzZW50cyBkYW5zIGxlIHLDqXBlcnRvaXJlIGRlICIKKyJsZXVyIHBhcXVldC4iCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6MzU3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInN5bWJvbCAlcyB1c2VkIGJ5ICVzIGZvdW5kIGluIG5vbmUgb2YgdGhlIGxpYnJhcmllcy4iCittc2dzdHIgInN5bWJvbGUgJXMgdXRpbGlzw6kgcGFyICVzIG5vbiB0cm91dsOpIGRhbnMgbGVzIGJpYmxpb3Row6hxdWVzLiIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDozNjAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIiVzIGNvbnRhaW5zIGFuIHVucmVzb2x2YWJsZSByZWZlcmVuY2UgdG8gc3ltYm9sICVzOiBpdCdzIHByb2JhYmx5IGEgcGx1Z2luLiIKK21zZ3N0ciAiIgorIiVzIGNvbnRpZW50IHVuZSByw6lmw6lyZW5jZSBhdSBzeW1ib2xlICVzIHF1aSBuZSBwZXV0IMOqdHJlIHLDqXNvbHVlwqA6wqBpbCBwZXV0ICIKKyJzJ2FnaXIgZCd1biBncmVmZm9uICjCq8KgcGx1Z2luwqDCuykuIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjM4MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlZCBzaW1pbGFyIHdhcm5pbmcgaGFzIGJlZW4gc2tpcHBlZCAodXNlIC12IHRvIHNlZSBpdCkuIgorbXNnaWRfcGx1cmFsICIiCisiJWQgb3RoZXIgc2ltaWxhciB3YXJuaW5ncyBoYXZlIGJlZW4gc2tpcHBlZCAodXNlIC12IHRvIHNlZSB0aGVtIGFsbCkuIgorbXNnc3RyWzBdICIiCisiJWQgYXV0cmUgYXZlcnRpc3NlbWVudCBzZW1ibGFibGUgYSDDqXTDqSBzYXV0w6kgKHV0aWxpc2VyIC12IHBvdXIgbGVzIHZvaXIgIgorInRvdXMpLiIKK21zZ3N0clsxXSAiIgorIiVkIGF1dHJlcyBhdmVydGlzc2VtZW50cyBzZW1ibGFibGVzIG9udCDDqXTDqSBzYXV0w6lzICh1dGlsaXNlciAtdiBwb3VyIGxlcyAiCisidm9pciB0b3VzKS4iCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6NDA5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIHNob3VsZG4ndCBiZSBsaW5rZWQgd2l0aCAlcyAoaXQgdXNlcyBub25lIG9mIGl0cyBzeW1ib2xzKS4iCittc2dzdHIgIiIKKyIlcyBuZSBkZXZyYWl0IHBhcyDDqnRyZSBsacOpIGF2ZWMgJXMgKGlsIG4ndXRpbGlzZSBhdWN1biBkZSBzZXMgc3ltYm9sZXMpLiIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo0MjIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorImRlcGVuZGVuY3kgb24gJXMgY291bGQgYmUgYXZvaWRlZCBpZiBcIiVzXCIgd2VyZSBub3QgdXNlbGVzc2x5IGxpbmtlZCAiCisiYWdhaW5zdCBpdCAodGhleSB1c2Ugbm9uZSBvZiBpdHMgc3ltYm9scykuIgorbXNnc3RyICIiCisibGEgZMOpcGVuZGFuY2Ugc3VyICVzIHBvdXJyYWl0IMOqdHJlIMOpdml0w6llIHNpIMKrwqAlc8Kgwrsgbid5IMOpdGFpdCBwYXMgbGnDqSBzYW5zICIKKyJuw6ljZXNzaXTDqSAoaWwgbid1dGlsaXNlIGF1Y3VuIGRlIHNlcyBzeW1ib2xlcykuIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjQzMQorbXNnaWQgIiIKKyJOb3RlOiBsaWJyYXJpZXMgYXJlIG5vdCBzZWFyY2hlZCBpbiBvdGhlciBiaW5hcnkgcGFja2FnZXMgdGhhdCBkbyBub3QgaGF2ZSAiCisiYW55IHNobGlicyBvciBzeW1ib2xzIGZpbGUuXG4iCisiVG8gaGVscCBkcGtnLXNobGliZGVwcyBmaW5kIHByaXZhdGUgbGlicmFyaWVzLCB5b3UgbWlnaHQgbmVlZCB0byBzZXQgIgorIkxEX0xJQlJBUllfUEFUSC4iCittc2dzdHIgIiIKKyJOb3RlwqA6IGxlcyBiaWJsaW90aMOocXVlcyBuZSBzb250IHBhcyByZWNoZXJjaMOpZXMgZGFucyBkJ2F1dHJlcyBwYXF1ZXRzICIKKyJiaW5haXJlcyBxdWkgbidvbnQgcGFzIGRlIGZpY2hpZXIgc2hsaWJzIG91IGRlIGZpY2hpZXIgZGUgc3ltYm9sZXMuXG4iCisiUG91ciBhaWRlciBkcGtnLXNobGliZGVwcyDDoCB0cm91dmVyIGRlcyBiaWJsaW90aMOocXVlcyBwcml2w6llcywgdm91cyBkZXZyaWV6ICIKKyJkw6lmaW5pciBMRF9MSUJSQVJZX1BBVEguIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjQzNAorbXNnaWQgIkNhbm5vdCBjb250aW51ZSBkdWUgdG8gdGhlIGVycm9yIGFib3ZlLiIKK21zZ2lkX3BsdXJhbCAiQ2Fubm90IGNvbnRpbnVlIGR1ZSB0byB0aGUgZXJyb3JzIGxpc3RlZCBhYm92ZS4iCittc2dzdHJbMF0gIkltcG9zc2libGUgZGUgY29udGludWVyIMOgIGNhdXNlciBkZSBsJ2VycmV1ciBjaS1kZXNzdXMuIgorbXNnc3RyWzFdICJJbXBvc3NpYmxlIGRlIGNvbnRpbnVlciDDoCBjYXVzZSBkZXMgZXJyZXVycyBjaS1kZXNzdXMuIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjQ0NQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJvcGVuIG5ldyBzdWJzdHZhcnMgZmlsZSBgJXMnIgorbXNnc3RyICJvdXZlcnR1cmUgZHUgbm91dmVhdSBmaWNoaWVyIHN1YnN0dmFycyAlcyIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo0NDgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAib3BlbiBvbGQgdmFybGlzdCBmaWxlIGAlcycgZm9yIHJlYWRpbmciCittc2dzdHIgImxlY3R1cmUgZGUgbCdhbmNpZW4gZmljaGllciB2YXJsaXN0ICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjQ1MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjb3B5IG9sZCBlbnRyeSB0byBuZXcgdmFybGlzdCBmaWxlIGAlcyciCittc2dzdHIgImNvcGllIGQndW5lIGFuY2llbm5lIGVudHLDqWUgZGFucyBsZSBub3V2ZWF1IGZpY2hpZXIgdmFybGlzdCAlcyIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo1MTUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBkZXBlbmRlbmN5IGdvdCBnZW5lcmF0ZWQ6ICVzIgorbXNnc3RyICJVbmUgZMOpcGVuZGFuY2Ugbm9uIHZhbGFibGUgYSDDqXTDqSBjcsOpw6llwqA6wqAlcyIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo1MjUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiaW5zdGFsbCBuZXcgdmFybGlzdCBmaWxlIGAlcyciCittc2dzdHIgImluc3RhbGxhdGlvbiBkdSBub3V2ZWF1IGZpY2hpZXIgdmFybGlzdCAlcyIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo1MzUKK21zZ2lkICIiCisiXG4iCisiQ29weXJpZ2h0IChDKSAxOTk2IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMCBXaWNoZXJ0IEFra2VybWFuLlxuIgorIkNvcHlyaWdodCAoQykgMjAwNiBGcmFuayBMaWNodGVuaGVsZC5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDcgUmFwaGFlbCBIZXJ0em9nLlxuIgorbXNnc3RyICIiCisiXG4iCisiQ29weXJpZ2h0IChDKSAxOTk2IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMCBXaWNoZXJ0IEFra2VybWFuLlxuIgorIkNvcHlyaWdodCAoQykgMjAwNiBGcmFuayBMaWNodGVuaGVsZC5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDcgUmFwaGFlbCBIZXJ0em9nLlxuIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjU1MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIDxleGVjdXRhYmxlPnwtZTxleGVjdXRhYmxlPiBbPG9wdGlvbj4gLi4uXVxuIgorIlxuIgorIlBvc2l0aW9uYWwgb3B0aW9ucyAob3JkZXIgaXMgc2lnbmlmaWNhbnQpOlxuIgorIiAgPGV4ZWN1dGFibGU+ICAgICAgICAgICAgIGluY2x1ZGUgZGVwZW5kZW5jaWVzIGZvciA8ZXhlY3V0YWJsZT4sXG4iCisiICAtZTxleGVjdXRhYmxlPiAgICAgICAgICAgKHVzZSAtZSBpZiA8ZXhlY3V0YWJsZT4gc3RhcnRzIHdpdGggYC0nKVxuIgorIiAgLWQ8ZGVwZW5kZW5jeWZpZWxkPiAgICAgIG5leHQgZXhlY3V0YWJsZShzKSBzZXQgc2hsaWJzOjxkZXBlbmRlbmN5ZmllbGQ+LlxuIgorIlxuIgorIk9wdGlvbnM6XG4iCisiICAtcDx2YXJuYW1lcHJlZml4PiAgICAgICAgc2V0IDx2YXJuYW1lcHJlZml4PjoqIGluc3RlYWQgb2Ygc2hsaWJzOiouXG4iCisiICAtTyAgICAgICAgICAgICAgICAgICAgICAgcHJpbnQgdmFyaWFibGUgc2V0dGluZ3MgdG8gc3Rkb3V0LlxuIgorIiAgLUw8bG9jYWxzaGxpYnNmaWxlPiAgICAgIHNobGlicyBvdmVycmlkZSBmaWxlLCBub3QgZGViaWFuL3NobGlicy5sb2NhbC5cbiIKKyIgIC1UPHZhcmxpc3RmaWxlPiAgICAgICAgICB1cGRhdGUgdmFyaWFibGVzIGhlcmUsIG5vdCBkZWJpYW4vc3Vic3R2YXJzLlxuIgorIiAgLXQ8dHlwZT4gICAgICAgICAgICAgICAgIHNldCBwYWNrYWdlIHR5cGUgKGRlZmF1bHQgaXMgZGViKS5cbiIKKyIgIC14PHBhY2thZ2U+ICAgICAgICAgICAgICBleGNsdWRlIHBhY2thZ2UgZnJvbSB0aGUgZ2VuZXJhdGVkIGRlcGVuZGVuY2llcy5cbiIKKyIgIC1TPHBrZ2J1aWxkZGlyPiAgICAgICAgICBzZWFyY2ggbmVlZGVkIGxpYnJhcmllcyBpbiB0aGUgZ2l2ZW5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWNrYWdlIGJ1aWxkIGRpcmVjdG9yeSBmaXJzdC5cbiIKKyIgIC12ICAgICAgICAgICAgICAgICAgICAgICBlbmFibGUgdmVyYm9zZSBtb2RlIChjYW4gYmUgdXNlZCBtdWx0aXBsZSAiCisidGltZXMpLlxuIgorIiAgLS1pZ25vcmUtbWlzc2luZy1pbmZvICAgIGRvbid0IGZhaWwgaWYgZGVwZW5kZW5jeSBpbmZvcm1hdGlvbiBjYW4ndCBiZSAiCisiZm91bmQuXG4iCisiICAtLXdhcm5pbmdzPTx2YWx1ZT4gICAgICAgZGVmaW5lIHNldCBvZiBhY3RpdmUgd2FybmluZ3MgKHNlZSBtYW51YWwgcGFnZSkuXG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgY2hhbmdlIHRoZSBhZG1pbmlzdHJhdGl2ZSBkaXJlY3RvcnkuXG4iCisiICAtaCwgLS1oZWxwICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgICAgICAtLXZlcnNpb24gICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorIkRlcGVuZGVuY3kgZmllbGRzIHJlY29nbmlzZWQgYXJlOlxuIgorIiAgJXNcbiIKK21zZ3N0ciAiIgorIlN5bnRheGXCoDogJXMgWzxvcHRpb24+IC4uLl0gPGV4w6ljdXRhYmxlPnwtZTxleMOpY3V0YWJsZT4gWzxvcHRpb24+IC4uLl1cbiIKKyJcbiIKKyJPcHRpb25zIMOgIHBvc2l0aW9uIChsJ29yZHJlIGVzdCBpbXBvcnRhbnQpwqA6XG4iCisiICA8ZXjDqWN1dGFibGU+ICAgICAgICAgICAgICAgIGluY2x1cmUgbGVzIGTDqXBlbmRhbmNlcyBwb3VyIDxleMOpY3V0YWJsZT4sXG4iCisiICAtZTxleMOpY3V0YWJsZT4gICAgICAgICAgICAgIG9wdGlvbiAtZSBzaSA8ZXjDqWN1dGFibGU+IGNvbW1lbmNlIHBhciDCq8KgLcKgwrtcbiIKKyIgIC1kPGNoYW1wX2TDqXBlbmRhbmNlPiAgICAgICAgbGUgcHJvY2hhaW4gZXjDqWN1dGFibGUgZMOpZmluaXQgc2hsaWJzOiIKKyI8Y2hhbXBfZMOpcGVuZGFuY2U+XG4iCisiXG4iCisiT3B0aW9uc8KgOlxuIgorIiAgLXA8dmFybmFtZXByZWZpeD4gICAgICAgICAgIGTDqWZpbmlyIDx2YXJuYW1lcHJlZml4PjoqIGF1IGxpZXUgZGUgc2hsaWJzOiIKKyIqLlxuIgorIiAgLU8gICAgICAgICAgICAgICAgICAgICAgICAgIGFmZmljaGVyIGxlcyB2YXJpYWJsZXMgZMOpZmluaWVzIHN1ciBzdGRvdXQuXG4iCisiICAtTDxsb2NhbHNobGlic2ZpbGU+ICAgICAgICAgZmljaGllciBkJ292ZXJyaWRlIHBvdXIgc2hsaWJzLCBwYXMgZGViaWFuLyIKKyJzaGxpYnMubG9jYWwuXG4iCisiICAtVDx2YXJsaXN0ZmlsZT4gICAgICAgICAgICAgbWV0dHJlIMOgIGpvdXIgbGVzIHZhcmlhYmxlcyBpY2ksIHBhcyBkZWJpYW4vIgorInN1YnN0dmFycy5cbiIKKyIgIC10PHR5cGU+ICAgICAgICAgICAgICAgICAgICBkw6lmaW5pciBsZSB0eXBlIGRlIHBhcXVldCAoLmRlYiBwYXIgZMOpZmF1dCkuXG4iCisiICAteDxwYXF1ZXQ+ICAgICAgICAgICAgICAgICAgZXhjbHVyZSBsZSBwYXF1ZXQgZGVzIGTDqXBlbmRhbmNlcyBnw6luw6lyw6llcy5cbiIKKyIgIC1TPHBrZ2J1aWxkZGlyPiAgICAgICAgICAgICByZWNoZXJjaGVyIGxlcyBiaWJsaW90aMOocXVlcyBuw6ljZXNzYWlyZXNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYW5zIGxlIHLDqXBlcnRvaXJlIGRlIGNvbnN0cnVjdGlvbiBpbmRpcXXDqVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVuIHByZW1pZXIgbGlldS5cbiIKKyIgIC12ICAgICAgICAgICAgICAgICAgICAgICAgICBhY3RpdmVyIGxlIG1vZGUgYmF2YXJkIChwZXV0IMOqdHJlIHV0aWxpc8OpXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGx1c2lldXJzIGZvaXMpLlxuIgorIiAgLS1pZ25vcmUtbWlzc2luZy1pbmZvICAgICAgIG5lIHBhcyDDqWNob3VlciBzaSBsZXMgaW5mb3JtYXRpb25zIGRlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZMOpcGVuZGFuY2UgbmUgc29udCBwYXMgdHJvdXbDqWVzLlxuIgorIiAgLS13YXJuaW5ncz08dmFsZXVyPiAgICAgICAgIGTDqWZpbmlyIGxlIGpldSBkJ2F2ZXJ0aXNzZW1lbnRzIGFjdGlmc1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICh2b2lyIGxhIHBhZ2UgZGUgbWFudWVsKS5cbiIKKyIgIC0tYWRtaW5kaXI9PHLDqXBlcnRvaXJlPiAgICAgY2hhbmdlciBkZSByw6lwZXJ0b2lyZSBkJ2FkbWluaXN0cmF0aW9uLlxuIgorIiAgLWgsIC0taGVscCAgICAgICAgICAgICAgICAgIGFmZmljaGVyIGNlIG1lc3NhZ2UgZCdhaWRlLlxuIgorIiAgICAgIC0tdmVyc2lvbiAgICAgICAgICAgICAgIGFmZmljaGVyIGxhIHZlcnNpb24uXG4iCisiXG4iCisiQ2hhbXBzIGRlIGTDqXBlbmRhbmNlIHJlY29ubnVzwqA6XG4iCisiICAlc1xuIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjY3NworIywgcGVybC1mb3JtYXQKK21zZ2lkICJDYW4ndCBleHRyYWN0IG5hbWUgYW5kIHZlcnNpb24gZnJvbSBsaWJyYXJ5IG5hbWUgYCVzJyIKK21zZ3N0ciAiIgorIkltcG9zc2libGUgZCdleHRyYWlyZSBsZSBub20gZXQgbGEgdmVyc2lvbiBkdSBub20gZGUgbGEgYmlibGlvdGjDqHF1ZSDCq8KgJXPCoMK7IgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjY4NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gb3BlbiBzaGFyZWQgbGlicyBpbmZvIGZpbGUgYCVzJyIKK21zZ3N0ciAiIgorImltcG9zc2libGUgZCdvdXZyaXIgbGUgZmljaGllciBkJ2luZm8gc3VyIGxlcyBiaWJsaW90aMOocXVlcyBwYXJ0YWfDqWVzICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjY5MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJzaGFyZWQgbGlicyBpbmZvIGZpbGUgYCVzJyBsaW5lICVkOiBiYWQgbGluZSBgJXMnIgorbXNnc3RyICIiCisiZmljaGllciBpbmZvIHN1ciBsZXMgYmlibGlvdGjDqHF1ZXMgcGFydGFnw6llcyDCq8KgJXPCoMK7LCBsaWduZSAlZMKgOiBsaWduZSBtYWwgIgorImZvcm3DqWUgwqvCoCVzwqDCuyIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo3NDkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IG9wZW4gZmlsZSAlcyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkJ291dnJpciBsZSBmaWNoaWVyICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjc4MworIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiJE9SSUdJTiBpcyB1c2VkIGluIFJQQVRIIG9mICVzIGFuZCB0aGUgY29ycmVzcG9uZGluZyBkaXJlY3RvcnkgY291bGQgbm90IGJlICIKKyJpZGVudGlmaWVkIGR1ZSB0byBsYWNrIG9mIERFQklBTiBzdWItZGlyZWN0b3J5IGluIHRoZSByb290IG9mIHBhY2thZ2UncyAiCisiYnVpbGQgdHJlZSIKK21zZ3N0ciAiIgorIiRPUklHSU4gZXN0IHV0aWxpc8OpIGRhbnMgbGUgUlBBVEggZGUgJXMgZXQgbGUgcsOpcGVydG9pcmUgY29ycmVzcG9uZGFudCBuJ2EgIgorInBhcyBwdSDDqnRyZSBpZGVudGlmacOpIGVuIHJhaXNvbiBkZSBsJ2Fic2VuY2UgZGUgc291cy1yw6lwZXJ0b2lyZSBERUJJQU4gZGFucyAiCisibGEgcmFjaW5lIGRlIGwnYXJib3Jlc2NlbmNlIGRlIGNvbnN0cnVjdGlvbiBkdSBwYXF1ZXQiCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6ODQ4Cittc2dpZCAiZGl2ZXJzaW9ucyBpbnZvbHZlZCAtIG91dHB1dCBtYXkgYmUgaW5jb3JyZWN0IgorbXNnc3RyICJkw6l0b3VybmVtZW50cyBlbiBqZXUsIGxhIHNvcnRpZSBwZXV0IMOqdHJlIGluY29ycmVjdGUiCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6ODUwCittc2dpZCAid3JpdGUgZGl2ZXJzaW9uIGluZm8gdG8gc3RkZXJyIgorbXNnc3RyICJpbmZvIHN1ciBsZSBkw6l0b3VybmVtZW50IGVudm95w6llIHN1ciBzdGRlcnIiCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6ODU0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVua25vd24gb3V0cHV0IGZyb20gZHBrZyAtLXNlYXJjaDogJyVzJyIKK21zZ3N0ciAicsOpc3VsdGF0IGRlIGRwa2cgLS1zZWFyY2ggaW5jb25udcKgOiAlcyIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDoxMDQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgbmVlZHMgYSBkaXJlY3RvcnkiCittc2dzdHIgInLDqXBlcnRvaXJlIG7DqWNlc3NhaXJlIHBvdXIgJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6MTEwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzdGF0IGRpcmVjdG9yeSAlcyIKK21zZ3N0ciAiwqvCoHN0YXTCoMK7IGR1IHLDqXBlcnRvaXJlICVzIGltcG9zc2libGUiCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6MTEyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImRpcmVjdG9yeSBhcmd1bWVudCAlcyBpcyBub3QgYSBkaXJlY3RvcnkiCittc2dzdHIgInBhcmFtw6h0cmUgcsOpcGVydG9pcmUgJXMgbidlc3QgcGFzIHVuIHLDqXBlcnRvaXJlIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjExNyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NDc2CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NDc4IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo0ODAKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo0ODIKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9ienIucG06MTExCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvYnpyLnBtOjEzNAorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2J6ci5wbToxOTgKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9ienIucG06MjA0CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvZ2l0LnBtOjEwNAorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2dpdC5wbToxNDMKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9naXQucG06MTU1CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvZ2l0LnBtOjE3NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hkaXIgdG8gYCVzJyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkZSBjaGFuZ2VyIGRlIHLDqXBlcnRvaXJlIHZlcnMgwqvCoCVzwqDCuyIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDoxMzUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidXNpbmcgb3B0aW9ucyBmcm9tICVzOiAlcyIKK21zZ3N0ciAidXRpbGlzYXRpb24gZGVzIG9wdGlvbnMgZGVwdWlzICVzwqA6ICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjE1MCBzY3JpcHRzL0Rwa2cvQ29tcHJlc3Npb24ucG06MTczCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGlzIG5vdCBhIHN1cHBvcnRlZCBjb21wcmVzc2lvbiIKK21zZ3N0ciAiJXMgbidlc3QgcGFzIHVuZSBjb21wcmVzc2lvbiBnw6lyw6llIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjE1NiBzY3JpcHRzL0Rwa2cvQ29tcHJlc3Npb24ucG06MjAyCisjOiBzY3JpcHRzL0Rwa2cvQ29tcHJlc3Npb24vUHJvY2Vzcy5wbTo4NgorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgYSBjb21wcmVzc2lvbiBsZXZlbCIKK21zZ3N0ciAiJXMgbidlc3QgcGFzIHVuIG5pdmVhdSBkZSBjb21wcmVzc2lvbiIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDoyMTQKKyMsIGZ1enp5CisjfCBtc2dpZCAiIgorI3wgIm5lZWQgYSBjb21tYW5kICgteCwgLWIsIC0tYmVmb3JlLWJ1aWxkLCAtLWFmdGVyLWJ1aWxkLCAtLXByaW50LWZvcm1hdCkiCittc2dpZCAiIgorIm5lZWQgYSBjb21tYW5kICgteCwgLWIsIC0tYmVmb3JlLWJ1aWxkLCAtLWFmdGVyLWJ1aWxkLCAtLXByaW50LWZvcm1hdCwgLS0iCisiY29tbWl0KSIKK21zZ3N0ciAiIgorImEgYmVzb2luIGQndW5lIGNvbW1hbmRlICgteCwgLWIsIC0tYmVmb3JlLWJ1aWxkLCAtLWFmdGVyLWJ1aWxkLCAtLXByaW50LSIKKyJmb3JtYXQpIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjIzOAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBkb2Vzbid0IGNvbnRhaW4gYW55IGluZm9ybWF0aW9uIGFib3V0IHRoZSBzb3VyY2UgcGFja2FnZSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjI4MworIywgcGVybC1mb3JtYXQKK21zZ2lkICJgJXMnIGlzIG5vdCBhIGxlZ2FsIGFyY2hpdGVjdHVyZSBzdHJpbmciCittc2dzdHIgIiVzIG4nZXN0IHBhcyB1bmUgYXJjaGl0ZWN0dXJlIGF1dG9yaXPDqWUiCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6Mjg2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImFyY2hpdGVjdHVyZSAlcyBvbmx5IGFsbG93ZWQgb24gaXRzIG93biAobGlzdCBmb3IgcGFja2FnZSAlcyBpcyBgJXMnKSIKK21zZ3N0ciAiIgorImFyY2hpdGVjdHVyZSAlcyBzZXVsZW1lbnQgYXV0b3Jpc8OpZSB0b3V0ZSBzZXVsZSAobGlzdGUgcG91ciBwYXF1ZXQgJXMgZXN0ICVzKSIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDozMDEKKyMsIGZ1enp5LCBwZXJsLWZvcm1hdAorI3wgbXNnaWQgImRpZmYgYCVzJyBkb2Vzbid0IGNvbnRhaW4gYW55IHBhdGNoIgorbXNnaWQgIiVzIGRvZXNuJ3QgbGlzdCBhbnkgYmluYXJ5IHBhY2thZ2UiCittc2dzdHIgImxlIGZpY2hpZXIgZGUgZGlmZsOpcmVuY2VzICVzIG5lIGNvbnRpZW50IHBhcyBkZSBjaGFuZ2VtZW50IgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjM0MyBzY3JpcHRzL0Rwa2cvQnVpbGRGbGFncy5wbToyNzAKKyM6IHNjcmlwdHMvRHBrZy9Db21wcmVzc2lvbi9GaWxlSGFuZGxlLnBtOjQwMQorIzogc2NyaXB0cy9EcGtnL0ludGVyZmFjZS9TdG9yYWJsZS5wbTo4NyBzY3JpcHRzL0Rwa2cvU2hsaWJzL09iamR1bXAucG06MTIyCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06Mjc3IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo0MjUKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo1NjEKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbToxMTIKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbToyODYKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbTozNDgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlYWQgJXMiCittc2dzdHIgImltcG9zc2libGUgZGUgbGlyZSAlcyIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDozNTAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibm8gc291cmNlIGZvcm1hdCBzcGVjaWZpZWQgaW4gJXMsIHNlZSBkcGtnLXNvdXJjZSgxKSIKK21zZ3N0ciAiYXVjdW4gZm9ybWF0IHNvdXJjZSBpbmRpcXXDqSBkYW5zICVzLCB2b2lyIGRwa2ctc291cmNlKDEpIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjM3OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW4ndCBidWlsZCB3aXRoIHNvdXJjZSBmb3JtYXQgJyVzJzogJXMiCittc2dzdHIgImltcG9zc2libGUgZGUgY29uc3RydWlyZSBhdmVjIGxlIGZvcm1hdCBzb3VyY2UgwqvCoCVzwqDCu8KgOsKgJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6MzgxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVzaW5nIHNvdXJjZSBmb3JtYXQgYCVzJyIKK21zZ3N0ciAidXRpbGlzYXRpb24gZHUgZm9ybWF0IHNvdXJjZSDCq8KgJXPCoMK7IgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjM4OCBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MzAxCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MzQ2IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo1NDEKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9ienIucG06MTUyCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvbmF0aXZlLnBtOjg0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImJ1aWxkaW5nICVzIGluICVzIgorbXNnc3RyICJjb25zdHJ1Y3Rpb24gZGUgJXMgZGFucyAlcyIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDozOTkKK21zZ2lkICIteCBuZWVkcyBhdCBsZWFzdCBvbmUgYXJndW1lbnQsIHRoZSAuZHNjIgorbXNnc3RyICIteCBkZW1hbmRlIGF1IG1vaW5zIHVuIHBhcmFtw6h0cmUsIGxlIGZpY2hpZXIgLmRzYyIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDo0MDIKK21zZ2lkICIteCB0YWtlcyBubyBtb3JlIHRoYW4gdHdvIGFyZ3VtZW50cyIKK21zZ3N0ciAiLXggbmUgcHJlbmQgcGFzIHBsdXMgZGUgZGV1eCBwYXJhbcOodHJlcyIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDo0MDYKK21zZ2lkICIteCBuZWVkcyB0aGUgLmRzYyBmaWxlIGFzIGZpcnN0IGFyZ3VtZW50LCBub3QgYSBkaXJlY3RvcnkiCittc2dzdHIgIi14IGRlbWFuZGUgbGUgZmljaGllciAuZHNjIGNvbW1lIHByZW1pZXIgcGFyYW3DqHRyZSwgcGFzIHVuIHLDqXBlcnRvaXJlIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjQyMgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bnBhY2sgdGFyZ2V0IGV4aXN0czogJXMiCittc2dzdHIgImNpYmxlIG5vbiBjb21wcmVzc8OpZSBleGlzdGXCoDogJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6NDMyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGRvZXNuJ3QgY29udGFpbiBhIHZhbGlkIE9wZW5QR1Agc2lnbmF0dXJlIgorbXNnc3RyICIlcyBuZSBjb250aWVudCBwYXMgZGUgc2lnbmF0dXJlIE9wZW5QR1AgdmFsYWJsZSIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDo0MzQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZXh0cmFjdGluZyB1bnNpZ25lZCBzb3VyY2UgcGFja2FnZSAoJXMpIgorbXNnc3RyICJleHRyYWN0aW9uIGQndW4gcGFxdWV0IHNvdXJjZSBub24gc2lnbsOpICglcykiCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6NDQxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImV4dHJhY3RpbmcgJXMgaW4gJXMiCittc2dzdHIgImV4dHJhY3Rpb24gZGUgJXMgZGFucyAlcyIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDo0NDkKK21zZ2lkICJvbmx5IG9uZSBvZiAteCwgLWIgb3IgLS1wcmludC1mb3JtYXQgYWxsb3dlZCwgYW5kIG9ubHkgb25jZSIKK21zZ3N0ciAiIgorInVuZSBzZXVsZSBvcHRpb24gLXgsIC1iIG91IC0tcHJpbnQtZm9ybWF0IGVzdCBhdXRvcmlzw6llLCBldCB1bmUgc2V1bGUgZm9pcyIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDo0NTcKK21zZ2lkICIiCisiXG4iCisiQ29weXJpZ2h0IChDKSAxOTk2IElhbiBKYWNrc29uXG4iCisiQ29weXJpZ2h0IChDKSAxOTk3IEtsZWUgRGllbmVzXG4iCisiQ29weXJpZ2h0IChDKSAyMDA4IFJhcGhhZWwgSGVydHpvZyIKK21zZ3N0ciAiIgorIlxuIgorIkNvcHlyaWdodCAoQykgMTk5NiBJYW4gSmFja3NvblxuIgorIkNvcHlyaWdodCAoQykgMTk5NyBLbGVlIERpZW5lc1xuIgorIkNvcHlyaWdodCAoQykgMjAwOCBSYXBoYWVsIEhlcnR6b2ciCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6NDcwCisjLCBmdXp6eSwgcGVybC1mb3JtYXQKKyN8IG1zZ2lkICIiCisjfCAiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIDxjb21tYW5kPlxuIgorI3wgIlxuIgorI3wgIkNvbW1hbmRzOlxuIgorI3wgIiAgLXggPGZpbGVuYW1lPi5kc2MgWzxvdXRwdXQtZGlyPl1cbiIKKyN8ICIgICAgICAgICAgICAgICAgICAgICAgICAgICBleHRyYWN0IHNvdXJjZSBwYWNrYWdlLlxuIgorI3wgIiAgLWIgPGRpcj4gICAgICAgICAgICAgICAgIGJ1aWxkIHNvdXJjZSBwYWNrYWdlLlxuIgorI3wgIiAgLS1wcmludC1mb3JtYXQgPGRpcj4gICAgIHByaW50IHRoZSBzb3VyY2UgZm9ybWF0IHRoYXQgd291bGQgYmVcbiIKKyN8ICIgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2VkIHRvIGJ1aWxkIHRoZSBzb3VyY2UgcGFja2FnZS4iCittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSA8Y29tbWFuZD5cbiIKKyJcbiIKKyJDb21tYW5kczpcbiIKKyIgIC14IDxmaWxlbmFtZT4uZHNjIFs8b3V0cHV0LWRpcj5dXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgZXh0cmFjdCBzb3VyY2UgcGFja2FnZS5cbiIKKyIgIC1iIDxkaXI+ICAgICAgICAgICAgICAgICBidWlsZCBzb3VyY2UgcGFja2FnZS5cbiIKKyIgIC0tcHJpbnQtZm9ybWF0IDxkaXI+ICAgICBwcmludCB0aGUgc291cmNlIGZvcm1hdCB0aGF0IHdvdWxkIGJlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlZCB0byBidWlsZCB0aGUgc291cmNlIHBhY2thZ2UuXG4iCisiICAtLWNvbW1pdCBbPGRpcj4gWzxwYXRjaC1uYW1lPl1dXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RvcmUgdXBzdHJlYW0gY2hhbmdlcyBpbiBhIG5ldyBwYXRjaC4iCittc2dzdHIgIiIKKyJTeW50YXhlwqA6ICVzIFs8b3B0aW9uPiAuLi5dIDxjb21tYW5kZT5cbiIKKyJcbiIKKyJDb21tYW5kZXPCoDpcbiIKKyIgIC14IDxmaWNoaWVyPi5kc2MgWzxyZXBfc29ydGllXVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXh0cmFpcmUgbGUgcGFxdWV0IHNvdXJjZS5cbiIKKyIgIC1iIDxyZXA+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdHJ1aXJlIGxlIHBhcXVldCBzb3VyY2UuICAgLS1wcmludC1mb3JtYXQgIgorIjxkaXI+ICAgICBhZmZpY2hlciBsZSBmb3JtYXQgc291cmNlIHF1aSBzZXJhaXRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICB1dGlsaXPDqSBwb3VyIGNvbnN0cnVpcmUgbGUgcGFxdWV0IHNvdXJjZS4iCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6NDgxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJCdWlsZCBvcHRpb25zOlxuIgorIiAgLWM8Y29udHJvbGZpbGU+ICAgICAgICAgIGdldCBjb250cm9sIGluZm8gZnJvbSB0aGlzIGZpbGUuXG4iCisiICAtbDxjaGFuZ2Vsb2dmaWxlPiAgICAgICAgZ2V0IHBlci12ZXJzaW9uIGluZm8gZnJvbSB0aGlzIGZpbGUuXG4iCisiICAtRjxjaGFuZ2Vsb2dmb3JtYXQ+ICAgICAgZm9yY2UgY2hhbmdlIGxvZyBmb3JtYXQuXG4iCisiICAtVjxuYW1lPj08dmFsdWU+ICAgICAgICAgc2V0IGEgc3Vic3RpdHV0aW9uIHZhcmlhYmxlLlxuIgorIiAgLVQ8dmFybGlzdGZpbGU+ICAgICAgICAgIHJlYWQgdmFyaWFibGVzIGhlcmUuXG4iCisiICAtRDxmaWVsZD49PHZhbHVlPiAgICAgICAgb3ZlcnJpZGUgb3IgYWRkIGEgLmRzYyBmaWVsZCBhbmQgdmFsdWUuXG4iCisiICAtVTxmaWVsZD4gICAgICAgICAgICAgICAgcmVtb3ZlIGEgZmllbGQuXG4iCisiICAtcSAgICAgICAgICAgICAgICAgICAgICAgcXVpZXQgbW9kZS5cbiIKKyIgIC1pWzxyZWdleHA+XSAgICAgICAgICAgICBmaWx0ZXIgb3V0IGZpbGVzIHRvIGlnbm9yZSBkaWZmcyBvZlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGRlZmF1bHRzIHRvOiAnJXMnKS5cbiIKKyIgIC1JWzxwYXR0ZXJuPl0gICAgICAgICAgICBmaWx0ZXIgb3V0IGZpbGVzIHdoZW4gYnVpbGRpbmcgdGFyYmFsbHNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChkZWZhdWx0cyB0bzogJXMpLlxuIgorIiAgLVo8Y29tcHJlc3Npb24+ICAgICAgICAgIHNlbGVjdCBjb21wcmVzc2lvbiB0byB1c2UgKGRlZmF1bHRzIHRvICclcycsXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdXBwb3J0ZWQgYXJlOiAlcykuXG4iCisiICAtejxsZXZlbD4gICAgICAgICAgICAgICAgY29tcHJlc3Npb24gbGV2ZWwgdG8gdXNlIChkZWZhdWx0cyB0byAnJWQnLFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3VwcG9ydGVkIGFyZTogJzEnLSc5JywgJ2Jlc3QnLCAnZmFzdCcpIgorbXNnc3RyICIiCisiT3B0aW9ucyBkZSBjb25zdHJ1Y3Rpb27CoDpcbiIKKyIgIC1jPGZpY2hpZXJfZGVfY29udHLDtGxlPiAgICBvYnRlbmlyIGxlcyBpbmZvcm1hdGlvbnMgZGUgY29udHLDtGxlIGRhbnMgY2UgIgorImZpY2hpZXIuXG4iCisiICAtbDxmaWNoaWVyX2NoYW5nZWxvZz4gICAgICBvYnRlbmlyIGxlcyBpbmZvcm1hdGlvbnMgZGUgY2hhbmdlbG9nIGRhbnMgY2UgIgorImZpY2hpZXIuXG4iCisiICAtRjxjaGFuZ2Vsb2dmb3JtYXQ+ICAgICAgICBtb2RpZmllciBsZSBmb3JtYXQgZHUgY2hhbmdlbG9nLlxuIgorIiAgLVY8bm9tPj08dmFsZXVyPiAgICAgICAgICAgZMOpZmluaXIgdW5lIHN1YnN0aXR1dGlvbiBkZSB2YXJpYWJsZS5cbiIKKyIgIC1UPHZhcmxpc3RmaWxlPiAgICAgICAgICAgIGxpcmUgbGVzIHZhcmlhYmxlcyBkYW5zIGNlIGZpY2hpZXIsIHBhcyBkYW5zICIKKyJkZWJpYW4vc3Vic3R2YXJzLlxuIgorIiAgLUQ8Y2hhbXA+PTx2YWxldXI+ICAgICAgICAgcmVtcGxhY2VyIG91IGFqb3V0ZXIgdW5lIHBhaXJlIGNoYW1wIC8gdmFsZXVyLlxuIgorIiAgLVU8Y2hhbXA+ICAgICAgICAgICAgICAgICAgc3VwcHJpbWVyIHVuIGNoYW1wLlxuIgorIiAgLXEgICAgICAgICAgICAgICAgICAgICAgICAgb3DDqXJhdGlvbiBtdWV0dGUsIG5lIHBhcyBhZmZpY2hlciAiCisiZCdhdmVydGlzc2VtZW50cy5cbiIKKyIgIC1pWzxyZWdleHA+XSAgICAgICAgICAgICAgIMOpbGltaW5lciBsZXMgZmljaGllcnMgw6AgaWdub3JlciwgZMOpZmF1dCAlcy5cbiIKKyIgIC1JWzxmb3JtYXQ+XSAgICAgICAgICAgICAgIMOpbGltaW5lciBkZXMgZmljaGllcnMgZW4gY29uc3RydWlzYW50IGxlcyAiCisidGFyYmFsbHNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChwYXIgZMOpZmF1dMKgOiAlcykuXG4iCisiICAtWjxjb21wcmVzc2lvbj4gICAgICAgICAgICBjaG9pc2lyIGxhIGNvbXByZXNzaW9uIMOgIHV0aWxpc2VyIChwYXIgZMOpZmF1dCwgIgorIiVzwqAsXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXMgdmFsZXVycyBnw6lyw6llcyBzb250wqA6ICVzKS5cbiIKKyIgIC16PG5pdmVhdT4gICAgICAgICAgICAgICAgIG5pdmVhdSBkZSBjb21wcmVzc2lvbiDDoCB1dGlsaXNlciAocGFyIGTDqWZhdXQsICIKKyIlZCxcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlcyB2YWxldXJzIGfDqXLDqWVzIHNvbnTCoDogwqvCoDHCoMK7IC0gwqvCoDnCoMK7LCAiCisiwqvCoGJlc3TCoMK7LCDCq8KgZmFzdMKgwrspIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjQ5OQorbXNnaWQgIiIKKyJFeHRyYWN0IG9wdGlvbnM6XG4iCisiICAtLW5vLWNvcHkgICAgICAgICAgICAgICAgZG9uJ3QgY29weSAub3JpZyB0YXJiYWxsc1xuIgorIiAgLS1uby1jaGVjayAgICAgICAgICAgICAgIGRvbid0IGNoZWNrIHNpZ25hdHVyZSBhbmQgY2hlY2tzdW1zIGJlZm9yZSAiCisidW5wYWNraW5nXG4iCisiICAtLXJlcXVpcmUtdmFsaWQtc2lnbmF0dXJlIGFib3J0IGlmIHRoZSBwYWNrYWdlIGRvZXNuJ3QgaGF2ZSBhIHZhbGlkICIKKyJzaWduYXR1cmUiCittc2dzdHIgIiIKKyJPcHRpb25zIGQnZXh0cmFjdGlvbsKgOlxuIgorIiAgLS1uby1jb3B5ICAgICAgICAgICAgICAgICAgbmUgcGFzIGNvcGllciBsJ2FyY2hpdmUgb3JpZ2luYWxlXG4iCisiICAtLW5vLWNoZWNrICAgICAgICAgICAgICAgICBuZSBwYXMgY29udHLDtGxlciBsYSBzaWduYXR1cmUgZXQgbGVzXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzb21tZXMgZGUgY29udHLDtGxlIGF2YW50IGRlIGTDqWNvbXBhY3Rlci5cbiIKKyIgLS0tcmVxdWlyZS12YWxpZC1zaWduYXR1cmUgIGltcG9zZXIgcXVlIGxlIHBhcXVldCBjb21wb3J0ZSB1bmVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpZ25hdHVyZSB2YWxhYmxlLiIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDo1MDQKK21zZ2lkICIiCisiR2VuZXJhbCBvcHRpb25zOlxuIgorIiAgLWgsIC0taGVscCAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAgICAgLS12ZXJzaW9uICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi4iCittc2dzdHIgIiIKKyJPcHRpb25zIGfDqW7DqXJhbGVzwqA6XG4iCisiICAtaCwgLS1oZWxwICAgICAgICAgICAgICAgICBhZmZpY2hlciBjZSBtZXNzYWdlIGQnYWlkZS5cbiIKKyIgICAgICAtLXZlcnNpb24gICAgICAgICAgICAgIGFmZmljaGVyIGxhIHZlcnNpb24uIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjUwOAorbXNnaWQgIiIKKyJNb3JlIG9wdGlvbnMgYXJlIGF2YWlsYWJsZSBidXQgdGhleSBkZXBlbmQgb24gdGhlIHNvdXJjZSBwYWNrYWdlIGZvcm1hdC5cbiIKKyJTZWUgZHBrZy1zb3VyY2UoMSkgZm9yIG1vcmUgaW5mby4iCittc2dzdHIgIiIKKyJEZXMgb3B0aW9ucyBzdXBwbMOpbWVudGFpcmVzIHNvbnQgZGlzcG9uaWJsZXMgbWFpcyBkw6lwZW5kZW50IGR1IGZvcm1hdCBkZSAiCisicGFxdWV0IHNvdXJjZSB1dGlsaXPDqS5cbiIKKyJWZXVpbGxleiBjb25zdWx0ZXIgbGEgcGFnZSBkZSBtYW51ZWwgZHBrZy1zb3VyY2UoMSkgcG91ciBwbHVzIGQnaW5mb3JtYXRpb25zLiIKKworIzogc2NyaXB0cy9jaGFuZ2Vsb2cvZGViaWFuLnBsOjM2Cittc2dpZCAiIgorIlxuIgorIkNvcHlyaWdodCAoQykgMTk5NiBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDUsMjAwNyBGcmFuayBMaWNodGVuaGVsZC4iCittc2dzdHIgIiIKKyJcbiIKKyJDb3B5cmlnaHQgKEMpIDE5OTYgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDA1LDIwMDcgRnJhbmsgTGljaHRlbmhlbGQuIgorCisjOiBzY3JpcHRzL2NoYW5nZWxvZy9kZWJpYW4ucGw6NDcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4uLi5dIFs8Y2hhbmdlbG9nZmlsZT5dXG4iCisiXG4iCisiT3B0aW9uczpcbiIKKyIgICAgLS1oZWxwLCAtaCAgICAgICAgICAgICAgICAgIHByaW50IHVzYWdlIGluZm9ybWF0aW9uXG4iCisiICAgIC0tdmVyc2lvbiwgLVYgICAgICAgICAgICAgICBwcmludCB2ZXJzaW9uIGluZm9ybWF0aW9uXG4iCisiICAgIC0tbGFiZWwsIC1sIDxmaWxlPiAgICAgICAgICBuYW1lIG9mIHRoZSBjaGFuZ2Vsb2cgZmlsZSB0b1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlIGluIGVycm9yIG1lc3NhZ2VzXG4iCisiICAgIC0tZmlsZSA8ZmlsZT4gICAgICAgICAgICAgICBjaGFuZ2Vsb2cgZmlsZSB0byBwYXJzZSwgZGVmYXVsdHNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvICctJyAoc3RhbmRhcmQgaW5wdXQpXG4iCisiICAgIC0tZm9ybWF0IDxvdXRwdXRmb3JtYXQ+ICAgICBzZWUgbWFuIHBhZ2UgZm9yIGxpc3Qgb2YgYXZhaWxhYmxlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdXRwdXQgZm9ybWF0cywgZGVmYXVsdHMgdG8gJ2Rwa2cnXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIGRwa2ctZGV2XG4iCisiICAgIC0tc2luY2UsIC1zLCAtdiA8dmVyc2lvbj4gICBpbmNsdWRlIGFsbCBjaGFuZ2VzIGxhdGVyIHRoYW4gdmVyc2lvblxuIgorIiAgICAtLXVudGlsLCAtdSA8dmVyc2lvbj4gICAgICAgaW5jbHVkZSBhbGwgY2hhbmdlcyBlYXJsaWVyIHRoYW4gdmVyc2lvblxuIgorIiAgICAtLWZyb20sIC1mIDx2ZXJzaW9uPiAgICAgICAgaW5jbHVkZSBhbGwgY2hhbmdlcyBlcXVhbCBvciBsYXRlclxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhhbiB2ZXJzaW9uXG4iCisiICAgIC0tdG8sIC10IDx2ZXJzaW9uPiAgICAgICAgICBpbmNsdWRlIGFsbCBjaGFuZ2VzIHVwIHRvIG9yIGVxdWFsXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGFuIHZlcnNpb25cbiIKKyIgICAgLS1jb3VudCwgLWMsIC1uIDxudW1iZXI+ICAgIGluY2x1ZGUgPG51bWJlcj4gZW50cmllcyBmcm9tIHRoZSB0b3BcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChvciB0aGUgdGFpbCBpZiA8bnVtYmVyPiBpcyBsb3dlciB0aGFuIDApXG4iCisiICAgIC0tb2Zmc2V0LCAtbyA8bnVtYmVyPiAgICAgICBjaGFuZ2UgdGhlIHN0YXJ0aW5nIHBvaW50IGZvciAtLWNvdW50LFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY291bnRlZCBmcm9tIHRoZSB0b3AgKG9yIHRoZSB0YWlsIGlmXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bnVtYmVyPiBpcyBsb3dlciB0aGFuIDApXG4iCisiICAgIC0tYWxsICAgICAgICAgICAgICAgICAgICAgICBpbmNsdWRlIGFsbCBjaGFuZ2VzXG4iCittc2dzdHIgIiIKKyJTeW50YXhlwqA6ICVzIFs8b3B0aW9uPi4uLl0gWzxmaWNoaWVyX2NoYW5nZWxvZz5dXG4iCisiXG4iCisiT3B0aW9uczpcbiIKKyIgICAgLS1oZWxwLCAtaCAgICAgICAgICAgICAgICAgIGFmZmljaGVyIGxlcyBpbmZvcm1hdGlvbnMgZCd1dGlsaXNhdGlvblxuIgorIiAgICAtLXZlcnNpb24sIC1WICAgICAgICAgICAgICAgYWZmaWNoZXIgbGEgdmVyc2lvblxuIgorIiAgICAtLWxhYmVsLCAtbCA8ZmljaGllcj4gICAgICAgbm9tIGR1IGZpY2hpZXIgZGUgY2hhbmdlbWVudHNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIMOgIHV0aWxpc2VyIGRhbnMgbGVzIG1lc3NhZ2VzIGQnZXJyZXVyXG4iCisiICAgIC0tZmlsZSA8ZmljaGllcj4gICAgICAgICAgICBmaWNoaWVyIGRlIGNoYW5nZW1lbnRzIMOgIGFuYWx5c2VyLiBMYVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsZXVyIHBhciBkw6lmYXV0IGVzdCDCq8KgLcKgwrsgKGVudHLDqWUgIgorInN0YW5kYXJkKVxuIgorIiAgICAtLWZvcm1hdCA8Zm9ybWF0X3NvcnRpZT4gICAgdm9pciBsYSBwYWdlIGRlIG1hbnVlbCBwb3VyIGxhIGxpc3RlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXMgZm9ybWF0cyBkZSBzb3J0aWUuIExhIHZhbGV1ciBwYXJcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGTDqWZhdXQgZXN0IMKrwqBkcGtnwqDCuyBwb3VyIGNvbXBhdGliaWxpdMOpXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdmVjIGRwa2ctZGV2XG4iCisiICAgIC0tc2luY2UsIC1zLCAtdiA8dmVyc2lvbj4gICBpbmNsdXJlIHRvdXRlcyBsZXMgbW9kaWZpY2F0aW9ucyBkZXB1aXNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNldHRlIHZlcnNpb25cbiIKKyIgICAgLS11bnRpbCwgLXUgPHZlcnNpb24+ICAgICAgIGluY2x1cmUgdG91dGVzIGxlcyBtb2RpZmljYXRpb25zICIKKyJhbnTDqXJpZXVyZXNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIMOgIGNldHRlIHZlcnNpb25cbiIKKyIgICAgLS1mcm9tLCAtZiA8dmVyc2lvbj4gICAgICAgIGluY2x1cmUgdG91dGVzIGxlcyBtb2RpZmljYXRpb25zIGRlcHVpc1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2V0dGUgdmVyc2lvbiBpbmNsdXNlXG4iCisiICAgIC0tdG8sIC10IDx2ZXJzaW9uPiAgICAgICAgICBpbmNsdXJlIHRvdXRlcyBsZXMgbW9kaWZpY2F0aW9ucyAiCisiYW50w6lyaWV1cmVzXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDDoCBjZXR0ZSB2ZXJzaW9uLCBpbmNsdXNlXG4iCisiICAgIC0tY291bnQsIC1jLCAtbiA8bm9tYnJlPiAgICBpbmNsdXJlIDxub21icmU+IGVudHLDqWVzIGRlcHVpcyBsZSBkw6lidXRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChvdSBiaWVuIGxlcyBkZXJuacOocmVzIHNpIDxub21icmU+IGVzdCAiCisiaW5mw6lyaWV1ciDDoCAwKVxuIgorIiAgICAtLW9mZnNldCwgLW8gPG51bWJlcj4gICAgICAgbW9kaWZpZXIgbGUgcG9pbnQgZGUgZMOpbWFycmFnZSBkZSAtLWNvdW50LFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgw6AgcGFydGlyIGR1IGTDqWJ1dCAob3UgZGUgbGEgZmluIHNpXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bm9tYnJlPiBlc3QgaW5mw6lyaWV1ciDDoCAwKVxuIgorIiAgICAtLWFsbCAgICAgICAgICAgICAgICAgICAgICAgaW5jbHVyZSB0b3V0ZXMgbGVzIG1vZGlmaWNhdGlvbnNcbiIKKworIzogc2NyaXB0cy9jaGFuZ2Vsb2cvZGViaWFuLnBsOjg2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIm91dHB1dCBmb3JtYXQgJXMgbm90IHN1cHBvcnRlZCIKK21zZ3N0ciAiZm9ybWF0IGRlIHNvcnRpZSAlcyBub24gZ8OpcsOpIgorCisjOiBzY3JpcHRzL2NoYW5nZWxvZy9kZWJpYW4ucGw6MTExCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIm1vcmUgdGhhbiBvbmUgZmlsZSBzcGVjaWZpZWQgKCVzIGFuZCAlcykiCittc2dzdHIgInBsdXMgZCd1biBmaWNoaWVyIGluZGlxdcOpICglcyBldCAlcykiCisKKyM6IHNjcmlwdHMvY2hhbmdlbG9nL2RlYmlhbi5wbDoxMzUgc2NyaXB0cy9EcGtnL0ludGVyZmFjZS9TdG9yYWJsZS5wbTo4NAorbXNnaWQgIjxzdGFuZGFyZCBpbnB1dD4iCittc2dzdHIgIjxlbnRyw6llIHN0YW5kYXJkPiIKKworIzogc2NyaXB0cy9jaGFuZ2Vsb2cvZGViaWFuLnBsOjEzNgorbXNnaWQgImZhdGFsIGVycm9yIG9jY3VycmVkIHdoaWxlIHBhcnNpbmcgaW5wdXQiCittc2dzdHIgImVycmV1ciBmYXRhbGUgcmVuY29udHLDqWUgbG9ycyBkZSBsJ2FuYWx5c2UgZGVzIGRvbm7DqWVzIgorCisjOiBzY3JpcHRzL2NoYW5nZWxvZy9kZWJpYW4ucGw6MTM5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImZhdGFsIGVycm9yIG9jY3VycmVkIHdoaWxlIHBhcnNpbmcgJXMiCittc2dzdHIgImVycmV1ciBmYXRhbGUgcmVuY29udHLDqWUgbG9ycyBkZSBsJ2FuYWx5c2UgZGUgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9BcmNoLnBtOjg2Cittc2dpZCAiIgorIkNvdWxkbid0IGRldGVybWluZSBnY2Mgc3lzdGVtIHR5cGUsIGZhbGxpbmcgYmFjayB0byBkZWZhdWx0IChuYXRpdmUgIgorImNvbXBpbGF0aW9uKSIKK21zZ3N0ciAiIgorImltcG9zc2libGUgZGUgZMOpdGVybWluZXIgbGUgdHlwZSBkZSBnY2MgdXRpbGlzw6ksIHJldG91ciBhdSBzeXN0w6htZSBwYXIgIgorImTDqWZhdXQgKGNvbXBpbGF0aW9uIG5hdGl2ZSkiCisKKyM6IHNjcmlwdHMvRHBrZy9BcmNoLnBtOjk1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJVbmtub3duIGdjYyBzeXN0ZW0gdHlwZSAlcywgZmFsbGluZyBiYWNrIHRvIGRlZmF1bHQgKG5hdGl2ZSBjb21waWxhdGlvbikiCittc2dzdHIgIiIKKyJ0eXBlIGRlIGdjYyAlcyBpbmNvbm51LCByZXRvdXIgYXUgc3lzdMOobWUgcGFyIGTDqWZhdXQgKGNvbXBpbGF0aW9uIG5hdGl2ZSkiCisKKyM6IHNjcmlwdHMvRHBrZy9CdWlsZEZsYWdzLnBtOjI3OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJsaW5lICVkIG9mICVzIG1lbnRpb25zIHVua25vd24gZmxhZyAlcyIKK21zZ3N0ciAiTGEgbGlnbmUgJWQgZGUgJXMgY29tcHJlbmQgdW4gZHJhcGVhdSAlcyBpbmNvbm51IgorCisjOiBzY3JpcHRzL0Rwa2cvQnVpbGRGbGFncy5wbToyOTEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibGluZSAlZCBvZiAlcyBpcyBpbnZhbGlkLCBpdCBoYXMgYmVlbiBpZ25vcmVkLiIKK21zZ3N0ciAibGEgbGlnbmUgJWQgZGUgJXMgbidlc3QgcGFzIHZhbGFibGUgZXQgYSDDqXTDqSBpZ25vcsOpZS4iCisKKyM6IHNjcmlwdHMvRHBrZy9CdWlsZE9wdGlvbnMucG06OTQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBmbGFnIGluICVzOiAlcyIKK21zZ3N0ciAiZHJhcGVhdSBub24gdmFsYWJsZSBkYW5zICVzwqA6ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29tcHJlc3Npb24vUHJvY2Vzcy5wbTo3MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgYSBzdXBwb3J0ZWQgY29tcHJlc3Npb24gbWV0aG9kIgorbXNnc3RyICIlcyBuJ2VzdCBwYXMgdW5lIG3DqXRob2RlIGNvbXByZXNzaW9uIGfDqXLDqWUiCisKKyM6IHNjcmlwdHMvRHBrZy9Db21wcmVzc2lvbi9Qcm9jZXNzLnBtOjEyMgorbXNnaWQgIkRwa2c6OkNvbXByZXNzaW9uOjpQcm9jZXNzIGNhbiBvbmx5IHN0YXJ0IG9uZSBzdWJwcm9jZXNzIGF0IGEgdGltZSIKK21zZ3N0ciAiIgorIkRwa2c6OmNvbXByZXNzaW9uOjpQcm9jZXNzIG5lIHBldXQgZMOpbWFycmVyIHF1J3VuIHNvdXMtcHJvY2Vzc3VzIMOgIGxhIGZvaXMiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06MTcxIHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06MTczCisjOiBzY3JpcHRzL0Rwa2cvRXJyb3JIYW5kbGluZy5wbTo1OQorbXNnaWQgIndhcm5pbmciCittc2dzdHIgImF2ZXJ0aXNzZW1lbnQiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06MTcxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyIlcyhsJXMpOiAlc1xuIgorIkxJTkU6ICVzIgorbXNnc3RyICIiCisiJXMobCVzKTogJXNcbiIKKyJMSUdORcKgOiAlcyIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbToxNzMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMobCVzKTogJXMiCittc2dzdHIgIiVzKGwlcynCoDogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06MjIxCittc2dpZCAiJ29mZnNldCcgd2l0aG91dCAnY291bnQnIGhhcyBubyBlZmZlY3QiCittc2dzdHIgIsKrwqBvZmZzZXTCoMK7IHNhbnMgwqvCoGNvdW50wqDCuyBuJ2EgYXVjdW4gZWZmZXQiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06MjI5Cittc2dpZCAieW91IGNhbid0IGNvbWJpbmUgJ2NvdW50JyBvciAnb2Zmc2V0JyB3aXRoIGFueSBvdGhlciByYW5nZSBvcHRpb24iCittc2dzdHIgIiIKKyJpbXBvc3NpYmxlIGRlIGNvbWJpbmVyIMKrwqBjb3VudMKgwrsgZXQgwqvCoG9mZnNldMKgwrsgYXZlYyB1bmUgYXV0cmUgb3B0aW9uIGRlICIKKyJsaW1pdGF0aW9uIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtOjIzNworbXNnaWQgInlvdSBjYW4gb25seSBzcGVjaWZ5IG9uZSBvZiAnZnJvbScgYW5kICdzaW5jZScsIHVzaW5nICdzaW5jZSciCittc2dzdHIgIiIKKyJpbXBvc3NpYmxlIGQnaW5kaXF1ZXIgwqvCoGZyb23CoMK7IGV0IMKrwqBzaW5jZcKgwrsgc2ltdWx0YW7DqW1lbnQuIMKrwqBzaW5jZcKgwrsgc2VyYSAiCisidXRpbGlzw6kiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06MjQyCittc2dpZCAieW91IGNhbiBvbmx5IHNwZWNpZnkgb25lIG9mICd0bycgYW5kICd1bnRpbCcsIHVzaW5nICd1bnRpbCciCittc2dzdHIgIiIKKyJpbXBvc3NpYmxlIGQnaW5kaXF1ZXIgwqvCoHRvwqDCuyBldCDCq8KgdW50aWzCoMK7IHNpbXVsdGFuw6ltZW50LiDCq8KgdW50aWzCoMK7IHNlcmEgIgorInV0aWxpc8OpIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtOjI1NCBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtOjI3MAorIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbToyODYgc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbTozMDIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJyVzJyBvcHRpb24gc3BlY2lmaWVzIG5vbi1leGlzdGluZyB2ZXJzaW9uIgorbXNnc3RyICJsJ29wdGlvbiDCq8KgJXPCoMK7IGluZGlxdWUgdW5lIHZlcnNpb24gaW5leGlzdGFudGUiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06MjU1IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06MzAzCittc2dpZCAidXNlIG5ld2VzdCBlbnRyeSB0aGF0IGlzIGVhcmxpZXIgdGhhbiB0aGUgb25lIHNwZWNpZmllZCIKK21zZ3N0ciAidXRpbGlzZXIgbCdlbnRyw6llIGxhIHBsdXMgcsOpY2VudGUgcXVpIGVzdCBpbmbDqXJpZXVyZSDDoCBjZWxsZSBpbmRpcXXDqWUiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06MjY0Cittc2dpZCAibm9uZSBmb3VuZCwgc3RhcnRpbmcgZnJvbSB0aGUgb2xkZXN0IGVudHJ5IgorbXNnc3RyICJhdWN1bmUgdHJvdXbDqWUsIGTDqW1hcnJhZ2UgZGVwdWlzIGxhIGRlcm5pw6hyZSBlbnRyw6llIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtOjI3MSBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtOjI4NworbXNnaWQgInVzZSBvbGRlc3QgZW50cnkgdGhhdCBpcyBsYXRlciB0aGFuIHRoZSBvbmUgc3BlY2lmaWVkIgorbXNnc3RyICJ1dGlsaXNlciBsJ2VudHLDqWUgbGEgcGx1cyBhbmNpZW5uZSBxdWkgZXN0IHN1cMOpcmlldXJlIMOgIGNlbGxlIGluZGlxdcOpZSIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbToyODEgc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbToyOTcKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06MzEyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIm5vIHN1Y2ggZW50cnkgZm91bmQsIGlnbm9yaW5nICclcycgcGFyYW1ldGVyIgorbXNnc3RyICJhdWN1bmUgdGVsbGUgZW50csOpZSBuJ2Egw6l0w6kgdHJvdXbDqWUsIHBhcmFtw6h0cmUgwqvCoCVzwqDCuyBpZ25vcsOpIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtOjMxOAorbXNnaWQgIidzaW5jZScgb3B0aW9uIHNwZWNpZmllcyBtb3N0IHJlY2VudCB2ZXJzaW9uLCBpZ25vcmluZyIKK21zZ3N0ciAibCdvcHRpb24gwqvCoHNpbmNlwqDCuyBpbmRpcXVlIGxhIHZlcnNpb24gbGEgcGx1cyByw6ljZW50ZSBldCBlc3QgaWdub3LDqWUiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06MzIyCittc2dpZCAiJ3VudGlsJyBvcHRpb24gc3BlY2lmaWVzIG9sZGVzdCB2ZXJzaW9uLCBpZ25vcmluZyIKK21zZ3N0ciAibCdvcHRpb24gwqvCoHVudGlswqDCuyBpbmRpcXVlIGxhIHZlcnNpb24gbGEgcGx1cyBhbmNpZW5uZSBldCBlc3QgaWdub3LDqWUiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRGViaWFuLnBtOjU0Cittc2dpZCAiZmlyc3QgaGVhZGluZyIKK21zZ3N0ciAicHJlbWllciBlbi10w6p0ZSIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9EZWJpYW4ucG06NTUKK21zZ2lkICJuZXh0IGhlYWRpbmcgb3IgZW9mIgorbXNnc3RyICJlbi10w6p0ZSBzdWl2YW50IG91IGZpbiBkZSBmaWNoaWVyIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0RlYmlhbi5wbTo1NgorbXNnaWQgInN0YXJ0IG9mIGNoYW5nZSBkYXRhIgorbXNnc3RyICJkw6lidXQgZGVzIGRvbm7DqWVzIGRlIG1vZGlmaWNhdGlvbnMiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRGViaWFuLnBtOjU3Cittc2dpZCAibW9yZSBjaGFuZ2UgZGF0YSBvciB0cmFpbGVyIgorbXNnc3RyICJkb25uw6llcyBkZSBtb2RpZmljYXRpb25zIHN1cHBsw6ltZW50YWlyZXMgb3UgZGUgZmluIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0RlYmlhbi5wbTo4OQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJmb3VuZCBzdGFydCBvZiBlbnRyeSB3aGVyZSBleHBlY3RlZCAlcyIKK21zZ3N0ciAiZMOpYnV0IGQndW5lIGVudHLDqWUgdHJvdXbDqSwgJXMgYXR0ZW5kdSIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9EZWJpYW4ucG06MTI2Cittc2dpZCAiYmFkbHkgZm9ybWF0dGVkIGhlYWRpbmcgbGluZSIKK21zZ3N0ciAibGlnbmUgZCdlbi10w6p0ZSBtYWwgZm9ybcOpZSIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9EZWJpYW4ucG06MTMwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImZvdW5kIHRyYWlsZXIgd2hlcmUgZXhwZWN0ZWQgJXMiCittc2dzdHIgImxpZ25lIGRlIGZpbiB0cm91dsOpZSwgJXMgYXR0ZW5kdSIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9EZWJpYW4ucG06MTQwCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0VudHJ5L0RlYmlhbi5wbToxNDkKK21zZ2lkICJiYWRseSBmb3JtYXR0ZWQgdHJhaWxlciBsaW5lIgorbXNnc3RyICJsaWduZSBkZSBmaW4gbWFsIGZvcm3DqWUiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRGViaWFuLnBtOjE0MworIywgcGVybC1mb3JtYXQKK21zZ2lkICJmb3VuZCBjaGFuZ2UgZGF0YSB3aGVyZSBleHBlY3RlZCAlcyIKK21zZ3N0ciAiY2hhbmdlbWVudHMgdHJvdXbDqXMsICVzIGF0dGVuZHUiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRGViaWFuLnBtOjE2NQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJmb3VuZCBibGFuayBsaW5lIHdoZXJlIGV4cGVjdGVkICVzIgorbXNnc3RyICJsaWduZSBibGFuY2hlIHRyb3V2w6llLCAlcyBhdHRlbmR1IgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0RlYmlhbi5wbToxNjkKK21zZ2lkICJ1bnJlY29nbmlzZWQgbGluZSIKK21zZ3N0ciAibGlnbmUgbm9uIHJlY29ubnVlIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0RlYmlhbi5wbToxODAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZm91bmQgZW9mIHdoZXJlIGV4cGVjdGVkICVzIgorbXNnc3RyICJmaW4gZGUgZmljaGllciB0cm91dsOpZSwgJXMgYXR0ZW5kdSIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9FbnRyeS9EZWJpYW4ucG06MTIyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImJhZCBrZXktdmFsdWUgYWZ0ZXIgYDsnOiBgJXMnIgorbXNnc3RyICJtYXV2YWlzZSBjbMOpLXZhbGV1ciBhcHLDqHMgwqvCoDvCoMK7wqA6ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0VudHJ5L0RlYmlhbi5wbToxMjcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAicmVwZWF0ZWQga2V5LXZhbHVlICVzIgorbXNnc3RyICJjbMOpLXZhbGV1ciByw6lww6l0w6kgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRW50cnkvRGViaWFuLnBtOjEzMQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJiYWRseSBmb3JtYXR0ZWQgdXJnZW5jeSB2YWx1ZTogJXMiCittc2dzdHIgInZhbGV1ciB1cmdlbmN5IG1hbCBmb3Jtw6llwqA6ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0VudHJ5L0RlYmlhbi5wbToxMzUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5rbm93biBrZXktdmFsdWUgJXMiCittc2dzdHIgImNsw6kgY2zDqS12YWxldXIgaW5jb25udWUgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRW50cnkvRGViaWFuLnBtOjEzOQorbXNnaWQgInRoZSBoZWFkZXIgZG9lc24ndCBtYXRjaCB0aGUgZXhwZWN0ZWQgcmVnZXgiCittc2dzdHIgImwnZW4tdMOqdGUgbmUgY29ycmVzcG9uZCBwYXMgw6AgbCdleHByZXNzaW9uIHLDqWd1bGnDqHJlIGF0dGVuZHVlIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0VudHJ5L0RlYmlhbi5wbToxNTIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY291bGRuJ3QgcGFyc2UgZGF0ZSAlcyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkJ2FuYWx5c2VyIGxhIGRhdGUgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRW50cnkvRGViaWFuLnBtOjE1NQorbXNnaWQgInRoZSB0cmFpbGVyIGRvZXNuJ3QgbWF0Y2ggdGhlIGV4cGVjdGVkIHJlZ2V4IgorbXNnc3RyICIiCisibGEgcGFydGllIGZpbmFsZSAowqvCoHRyYWlsZXLCoMK7KSBuZSBjb3JyZXNwb25kIHBhcyDDoCBsJ2V4cHJlc3Npb24gcsOpZ3VsacOocmUgIgorImF0dGVuZHVlIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL1BhcnNlLnBtOjEwNgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ0YWlsIG9mICVzIgorbXNnc3RyICJmaW4gZGUgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvUGFyc2UucG06MTE4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImZvcm1hdCBwYXJzZXIgJXMgbm90IGV4ZWN1dGFibGUiCittc2dzdHIgImwnYW5hbHlzZXVyIGRlIGZvcm1hdCAlcyBuJ2VzdCBwYXMgZXjDqWN1dGFibGUiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvUGFyc2UucG06MTIxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNoYW5nZWxvZyBmb3JtYXQgJXMgaXMgdW5rbm93biIKK21zZ3N0ciAiZm9ybWF0IGRlIGZpY2hpZXIgZGUgY2hhbmdlbWVudHMgJXMgaW5jb25udSIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9QYXJzZS5wbToxNDQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IGV4ZWMgZm9ybWF0IHBhcnNlcjogJXMiCittc2dzdHIgImltcG9zc2libGUgZCdleMOpY3V0ZXIgbCdhbmFseXNldXIgZGUgZm9ybWF0wqA6ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL1BhcnNlLnBtOjE1MQorbXNnaWQgIm91dHB1dCBvZiBjaGFuZ2Vsb2cgcGFyc2VyIgorbXNnc3RyICJhZmZpY2hhZ2UgZGUgbCdhbmFseXNldXIgZGUgZmljaGllciBkZSBjaGFuZ2VtZW50cyIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9QYXJzZS5wbToxNTQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2hhbmdlbG9nIHBhcnNlciAlcyIKK21zZ3N0ciAiYW5hbHlzZXVyIGRlIGZpY2hpZXIgZGUgY2hhbmdlbWVudHPCoDogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGVja3N1bXMucG06MTcwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCBmc3RhdCBmaWxlICVzIgorbXNnc3RyICJmc3RhdCBpbXBvc3NpYmxlIHBvdXIgbGUgZmljaGllciAlcyIKKworIzogc2NyaXB0cy9EcGtnL0NoZWNrc3Vtcy5wbToxNzIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiRmlsZSAlcyBoYXMgc2l6ZSAldSBpbnN0ZWFkIG9mIGV4cGVjdGVkICV1IgorbXNnc3RyICJsYSB0YWlsbGUgZHUgZmljaGllciAlcyBlc3QgJXUgYXUgbGlldSBkZSAldSBhdHRlbmR1IgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hlY2tzdW1zLnBtOjE4NgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJGaWxlICVzIGhhcyBjaGVja3N1bSAlcyBpbnN0ZWFkIG9mIGV4cGVjdGVkICVzIChhbGdvcml0aG0gJXMpIgorbXNnc3RyICIiCisibGEgc29tbWUgZGUgY29udHLDtGxlIGR1IGZpY2hpZXIgJXMgZXN0ICVzIGF1IGxpZXUgZGUgJXMgKGFsZ29yaXRobWUgJXMpIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hlY2tzdW1zLnBtOjE5MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjaGVja3N1bSBwcm9ncmFtIGdhdmUgYm9ndXMgb3V0cHV0IGAlcyciCittc2dzdHIgIiIKKyJsZSBwcm9ncmFtbWUgZGUgY2FsY3VsIGRlIHNvbW1lIGRlIGNvbnRyw7RsZSBhIGZvdXJuaSB1biByw6lzdWx0YXQgIgorImFub3JtYWzCoDrCoMKrwqAlc8KgwrsiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGVja3N1bXMucG06MjE5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImludmFsaWQgbGluZSBpbiAlcyBjaGVja3N1bXMgc3RyaW5nOiAlcyIKK21zZ3N0ciAibGlnbmUgbm9uIHZhbGFibGUgZGFucyBsYSBjaGHDrm5lIGRlIHNvbW1lIGRlIGNvbnRyw7RsZSAlc8KgOiAlcyIKKworIzogc2NyaXB0cy9EcGtnL0NoZWNrc3Vtcy5wbToyMjUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiQ29uZmxpY3RpbmcgY2hlY2tzdW1zIGAlcycgYW5kIGAlcycgZm9yIGZpbGUgYCVzJyIKK21zZ3N0ciAiIgorIlNvbW1lcyBkZSBjb250csO0bGUgZW4gY29uZmxpdMKgOiDCq8KgJXPCoMK7IGV0IMKrwqAlc8KgwrsgcG91ciBsZSBmaWNoaWVyIMKrwqAlc8KgwrsiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGVja3N1bXMucG06MjI5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIkNvbmZsaWN0aW5nIGZpbGUgc2l6ZXMgYCV1JyBhbmQgYCV1JyBmb3IgZmlsZSBgJXMnIgorbXNnc3RyICJDb25mbGl0IGRlIHRhaWxsZSBkZSBmaWNoaWVycyAldSBldCAldSBwb3VyIGxlIGZpY2hpZXIgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Db25mLnBtOjEwNQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJzaG9ydCBvcHRpb24gbm90IGFsbG93ZWQgaW4gJXMsIGxpbmUgJWQiCittc2dzdHIgIm9wdGlvbiBjb3VydGUgbm9uIGF1dG9yaXPDqWUgZGFucyAlcyDDoCBsYSBsaWduZSAlZCIKKworIzogc2NyaXB0cy9EcGtnL0NvbmYucG06MTE5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImludmFsaWQgc3ludGF4IGZvciBvcHRpb24gaW4gJXMsIGxpbmUgJWQiCittc2dzdHIgImVycmV1ciBkZSBzeW50YXhlIHBvdXIgbCdvcHRpb24gJXMgw6AgbGEgbGlnbmUgJWQiCisKKyM6IHNjcmlwdHMvRHBrZy9Db250cm9sLnBtOjE1MAorbXNnaWQgImdlbmVyYWwgc2VjdGlvbiBvZiBjb250cm9sIGluZm8gZmlsZSIKK21zZ3N0ciAic2VjdGlvbiBnw6luw6lyYWxlIGRhbnMgbGUgZmljaGllciBpbmZvIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29udHJvbC5wbToxNTIKK21zZ2lkICJwYWNrYWdlJ3Mgc2VjdGlvbiBvZiBjb250cm9sIGluZm8gZmlsZSIKK21zZ3N0ciAic2VjdGlvbiBkdSBwYXF1ZXQgZGFucyBsZSBmaWNoaWVyIGluZm8iCisKKyM6IHNjcmlwdHMvRHBrZy9Db250cm9sLnBtOjE1NAorbXNnaWQgInBhcnNlZCB2ZXJzaW9uIG9mIGNoYW5nZWxvZyIKK21zZ3N0ciAidmVyc2lvbiBhbmFseXPDqWUgZGUgY2hhbmdlbG9nIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29udHJvbC5wbToxNTYgc2NyaXB0cy9EcGtnL0NvbnRyb2wucG06MTU4CisjLCBmdXp6eSwgcGVybC1mb3JtYXQKKyN8IG1zZ2lkICJlbnRyeSBpbiBkcGtnJ3Mgc3RhdHVzIGZpbGUiCittc2dpZCAiZW50cnkgaW4gcmVwb3NpdG9yeSdzICVzIGZpbGUiCittc2dzdHIgImVudHLDqWUgZGFucyBsZSBmaWNoaWVyIGQnw6l0YXQgZGUgZHBrZyIKKworIzogc2NyaXB0cy9EcGtnL0NvbnRyb2wucG06MTYwIHNjcmlwdHMvRHBrZy9Db250cm9sLnBtOjE2NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBmaWxlIgorbXNnc3RyICJmaWNoaWVyICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29udHJvbC5wbToxNjIKK21zZ2lkICJjb250cm9sIGluZm8gb2YgYSAuZGViIHBhY2thZ2UiCittc2dzdHIgImluZm9ybWF0aW9uIGRlIGNvbnRyw7RsZSBkJ3VuIHBhcXVldCAuZGViIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29udHJvbC5wbToxNjYKK21zZ2lkICJ2ZW5kb3IgZmlsZSIKK21zZ3N0ciAiZmljaGllciBkdSBmb3Vybmlzc2V1ciAowqvCoHZlbmRvcsKgwrspIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29udHJvbC5wbToxNjgKK21zZ2lkICJlbnRyeSBpbiBkcGtnJ3Mgc3RhdHVzIGZpbGUiCittc2dzdHIgImVudHLDqWUgZGFucyBsZSBmaWNoaWVyIGQnw6l0YXQgZGUgZHBrZyIKKworIzogc2NyaXB0cy9EcGtnL0NvbnRyb2wvRmllbGRzLnBtOjQ1NQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGluZm9ybWF0aW9uIGZpZWxkICclcycgaW4gaW5wdXQgZGF0YSBpbiAlcyIKK21zZ3N0ciAiY2hhbXAgZCdpbmZvcm1hdGlvbiBpbmNvbm51IMKrwqAlc8KgwrsgZGFucyBsZXMgZG9ubsOpZXMgZCdlbnRyw6llIGRlICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29udHJvbC9GaWVsZHMucG06NDU2Cittc2dpZCAiY29udHJvbCBpbmZvcm1hdGlvbiIKK21zZ3N0ciAiaW5mb3JtYXRpb24gZGUgY29udHLDtGxlIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29udHJvbC9JbmZvLnBtOjEwMworbXNnaWQgImZpcnN0IGJsb2NrIGxhY2tzIGEgc291cmNlIGZpZWxkIgorbXNnc3RyICJsZSBwcmVtaWVyIGJsb2MgbmUgY29tcG9ydGUgcGFzIGRlIGNoYW1wIHNvdXJjZSIKKworIzogc2NyaXB0cy9EcGtnL0NvbnRyb2wvSW5mby5wbToxMTAgc2NyaXB0cy9EcGtnL0NvbnRyb2wvSW5mby5wbToxMTMKKyMsIGZ1enp5LCBwZXJsLWZvcm1hdAorI3wgbXNnaWQgImJsb2NrIGxhY2tzIGEgcGFja2FnZSBmaWVsZCIKK21zZ2lkICJibG9jayBsYWNrcyB0aGUgJyVzJyBmaWVsZCIKK21zZ3N0ciAibGUgYmxvYyBuZSBjb21wb3J0ZSBwYXMgZGUgY2hhbXAgZGUgcGFxdWV0IgorCisjOiBzY3JpcHRzL0Rwa2cvQ29udHJvbC9IYXNoLnBtOjE3MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgZmllbGQgJXMgZm91bmQiCittc2dzdHIgImNoYW1wICVzIGVuIGRvdWJsZSIKKworIzogc2NyaXB0cy9EcGtnL0NvbnRyb2wvSGFzaC5wbToxODAKK21zZ2lkICJjb250aW51ZWQgdmFsdWUgbGluZSBub3QgaW4gZmllbGQiCittc2dzdHIgImxhIGxpZ25lIGNvbnRpbnXDqWUgbidlc3QgcGFzIGRhbnMgbGUgY2hhbXAiCisKKyM6IHNjcmlwdHMvRHBrZy9Db250cm9sL0hhc2gucG06MTk0Cittc2dpZCAiUEdQIHNpZ25hdHVyZSBub3QgYWxsb3dlZCBoZXJlIgorbXNnc3RyICJzaWduYXR1cmUgUEdQIG5vbiBhdXRvcmlzw6llIGljaSIKKworIzogc2NyaXB0cy9EcGtnL0NvbnRyb2wvSGFzaC5wbToyMDEKK21zZ2lkICJleHBlY3RlZCBQR1Agc2lnbmF0dXJlLCBmb3VuZCBFT0YgYWZ0ZXIgYmxhbmsgbGluZSIKK21zZ3N0ciAic2lnbmF0dXJlIFBHUCBhdHRlbmR1ZSwgRU9GIGFwcsOocyBsaWduZSBibGFuY2hlIHRyb3V2w6kiCisKKyM6IHNjcmlwdHMvRHBrZy9Db250cm9sL0hhc2gucG06MjA1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImV4cGVjdGVkIFBHUCBzaWduYXR1cmUsIGZvdW5kIHNvbWV0aGluZyBlbHNlIGAlcyciCittc2dzdHIgInNpZ25hdHVyZSBQR1AgYXR0ZW5kdWUsIMKrwqAlc8KgwrsgdHJvdXbDqSIKKworIzogc2NyaXB0cy9EcGtnL0NvbnRyb2wvSGFzaC5wbToyMTMKK21zZ2lkICJ1bmZpbmlzaGVkIFBHUCBzaWduYXR1cmUiCittc2dzdHIgInNpZ25hdHVyZSBQR1Agbm9uIHRlcm1pbsOpZSIKKworIzogc2NyaXB0cy9EcGtnL0NvbnRyb2wvSGFzaC5wbToyMTkKK21zZ2lkICJsaW5lIHdpdGggdW5rbm93biBmb3JtYXQgKG5vdCBmaWVsZC1jb2xvbi12YWx1ZSkiCittc2dzdHIgIiIKKyJsaWduZSBkZSBmb3JtYXQgaW5jb25udSwgZm9ybWF0IGRpZmbDqXJlbnQgZGUgwqvCoGNoYW1wLWRldXggcG9pbnRzLXZhbGV1csKgwrsiCisKKyM6IHNjcmlwdHMvRHBrZy9Db250cm9sL0hhc2gucG06MzE2Cittc2dpZCAid3JpdGUgZXJyb3Igb24gY29udHJvbCBkYXRhIgorbXNnc3RyICJlcnJldXIgZCfDqWNyaXR1cmUgc3VyIGRlcyBkb25uw6llcyBkZSBjb250csO0bGUiCisKKyM6IHNjcmlwdHMvRHBrZy9EZXBzLnBtOjI3NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW4ndCBwYXJzZSBkZXBlbmRlbmN5ICVzIgorbXNnc3RyICJpbXBvc3NpYmxlIGQnYW5hbHlzZXIgbGEgZMOpcGVuZGFuY2UgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9EZXBzLnBtOjMwMQorbXNnaWQgImFuIHVuaW9uIGRlcGVuZGVuY3kgY2FuIG9ubHkgY29udGFpbiBzaW1wbGUgZGVwZW5kZW5jaWVzIgorbXNnc3RyICJVbmUgdW5pb24gZGUgZMOpcGVuZGFuY2VzIG5lIHBldXQgcGFzIGNvbnRlbmlyIGRlIHNpbXBsZSBkw6lwZW5kYW5jZXMiCisKKyM6IHNjcmlwdHMvRHBrZy9FcnJvckhhbmRsaW5nLnBtOjU0Cittc2dpZCAiaW5mbyIKK21zZ3N0ciAiaW5mbyIKKworIzogc2NyaXB0cy9EcGtnL0Vycm9ySGFuZGxpbmcucG06NjUgc2NyaXB0cy9EcGtnL0Vycm9ySGFuZGxpbmcucG06NzAKKyM6IHNjcmlwdHMvRHBrZy9FcnJvckhhbmRsaW5nLnBtOjc1Cittc2dpZCAiZXJyb3IiCittc2dzdHIgImVycmV1ciIKKworIzogc2NyaXB0cy9EcGtnL0Vycm9ySGFuZGxpbmcucG06ODAKK21zZ2lkICJpbnRlcm5hbCBlcnJvciIKK21zZ3N0ciAiZXJyZXVyIGludGVybmUiCisKKyM6IHNjcmlwdHMvRHBrZy9FcnJvckhhbmRsaW5nLnBtOjkyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGdhdmUgZXJyb3IgZXhpdCBzdGF0dXMgJXMiCittc2dzdHIgIiVzIGEgcHJvZHVpdCB1bmUgZXJyZXVyIGRlIHNvcnRpZSBkZSB0eXBlICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvRXJyb3JIYW5kbGluZy5wbTo5NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBkaWVkIGZyb20gc2lnbmFsICVzIgorbXNnc3RyICIlcyB0dcOpIHBhciBsZSBzaWduYWwgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9FcnJvckhhbmRsaW5nLnBtOjk2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGZhaWxlZCB3aXRoIHVua25vd24gZXhpdCBjb2RlICVkIgorbXNnc3RyICIlcyBhIMOpY2hvdcOpIGF2ZWMgdW5lIGVycmV1ciBkZSBzb3J0aWUgZGUgdHlwZSBpbmNvbm51ICVkIgorCisjOiBzY3JpcHRzL0Rwa2cvRXJyb3JIYW5kbGluZy5wbToxMTUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yIGluICVzIGF0IGxpbmUgJWQ6ICVzIgorbXNnc3RyICJlcnJldXIgZGUgc3ludGF4ZSBkYW5zICVzIMOgIGxhIGxpZ25lICVkwqA6ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvSVBDLnBtOjIxMSBzY3JpcHRzL0Rwa2cvSVBDLnBtOjIxNyBzY3JpcHRzL0Rwa2cvSVBDLnBtOjIyMworIywgcGVybC1mb3JtYXQKK21zZ2lkICJwaXBlIGZvciAlcyIKK21zZ3N0ciAicGlwZSBwb3VyICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvSVBDLnBtOjI0MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjaGRpciB0byAlcyIKK21zZ3N0ciAiY2hkaXIgdmVycyAlcyIKKworIzogc2NyaXB0cy9EcGtnL0lQQy5wbToyNDkKK21zZ2lkICJyZW9wZW4gc3RkaW4iCittc2dzdHIgInLDqW91dmVydHVyZSBzdGRpbiIKKworIzogc2NyaXB0cy9EcGtnL0lQQy5wbToyNTcgc2NyaXB0cy9EcGtnL0lQQy5wbToyNjUKK21zZ2lkICJyZW9wZW4gc3Rkb3V0IgorbXNnc3RyICJyw6lvdXZlcnR1cmUgc3Rkb3V0IgorCisjOiBzY3JpcHRzL0Rwa2cvSVBDLnBtOjMzOQorbXNnaWQgImNoaWxkIHByb2Nlc3MiCittc2dzdHIgInByb2Nlc3N1cyBmaWxzIgorCisjOiBzY3JpcHRzL0Rwa2cvSVBDLnBtOjM0NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ3YWl0IGZvciAlcyIKK21zZ3N0ciAiYXR0ZW50ZSBkZSAlcyIKKworIzogc2NyaXB0cy9EcGtnL0lQQy5wbTozNDkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgZGlkbid0IGNvbXBsZXRlIGluICVkIHNlY29uZCIKK21zZ2lkX3BsdXJhbCAiJXMgZGlkbid0IGNvbXBsZXRlIGluICVkIHNlY29uZHMiCittc2dzdHJbMF0gIiVzIG5lIHMnZXN0IHBhcyB0ZXJtaW7DqSBlbiAlZCBzZWNvbmRlIgorbXNnc3RyWzFdICIlcyBuZSBzJ2VzdCBwYXMgdGVybWluw6kgZW4gJWQgc2Vjb25kZXMiCisKKyM6IHNjcmlwdHMvRHBrZy9TaGxpYnMvT2JqZHVtcC5wbToyMjIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiQ291bGRuJ3QgcGFyc2UgZHluYW1pYyByZWxvY2F0aW9uIHJlY29yZDogJXMiCittc2dzdHIgIkltcG9zc2libGUgZCdhbmFseXNlciBsJ2VucmVnaXN0cmVtZW50IGQnYWxsb2NhdGlvbiBkeW5hbWlxdWXCoDogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9TaGxpYnMvT2JqZHVtcC5wbTozMzkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiQ291bGRuJ3QgcGFyc2UgZHluYW1pYyBzeW1ib2wgZGVmaW5pdGlvbjogJXMiCittc2dzdHIgIkltcG9zc2libGUgZCdhbmFseXNlciBsYSBkw6lmaW5pdGlvbiBkZSBzeW1ib2xlcyBkeW5hbWlxdWXCoDogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9TaGxpYnMvU3ltYm9sLnBtOjExMQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJzeW1ib2wgbmFtZSB1bnNwZWNpZmllZDogJXMiCittc2dzdHIgIm5vbSBkZSBzeW1ib2xlIG5vbiBwcsOpY2lzw6nCoDrCoCVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU2hsaWJzL1N5bWJvbC5wbToxNjgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAieW91IGNhbid0IHVzZSBzeW12ZXIgdGFnIHRvIGNhdGNoIHVudmVyc2lvbmVkIHN5bWJvbHM6ICVzIgorbXNnc3RyICIiCisiaW1wb3NzaWJsZSBkJ3V0aWxpc2VyIGwnw6l0aXF1ZXR0ZSBzeW12ZXIgcG91ciBpZGVudGlmaWVyIGxlcyBzeW1ib2xlcyBub24gIgorInZlcnNpb25uw6lzwqA6wqAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NobGlicy9TeW1ib2xGaWxlLnBtOjIxOAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJTeW1ib2wgaW5mb3JtYXRpb24gbXVzdCBiZSBwcmVjZWRlZCBieSBhIGhlYWRlciAoZmlsZSAlcywgbGluZSAlcykuIgorbXNnc3RyICIiCisiTGVzIGluZm9ybWF0aW9ucyBkZSBzeW1ib2xlcyBkb2l2ZW50IMOqdHJlIHByw6ljw6lkw6llcyBwYXIgdW4gZW4tdMOqdGUgKGZpY2hpZXIgIgorIiVzLCBsaWduZSAlcykuIgorCisjOiBzY3JpcHRzL0Rwa2cvU2hsaWJzL1N5bWJvbEZpbGUucG06MjI2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIkZhaWxlZCB0byBwYXJzZSBsaW5lIGluICVzOiAlcyIKK21zZ3N0ciAiSW1wb3NzaWJsZSBkJ2FuYWx5c2VyIHVuZSBsaWduZSBkYW5zICVzwqA6ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU2hsaWJzL1N5bWJvbEZpbGUucG06MjU4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIkZhaWxlZCB0byBwYXJzZSBhIGxpbmUgaW4gJXM6ICVzIgorbXNnc3RyICJJbXBvc3NpYmxlIGQnYW5hbHlzZXIgdW5lIGxpZ25lIGRhbnMgJXPCoDogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9TaGxpYnMvU3ltYm9sRmlsZS5wbToyNzEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiVHJpZWQgdG8gbWVyZ2UgdGhlIHNhbWUgb2JqZWN0ICglcykgdHdpY2UgaW4gYSBzeW1maWxlLiIKK21zZ3N0ciAiIgorIlRlbnRhdGl2ZSBkZSBmdXNpb24gZHUgbcOqbWUgb2JqZXQgKCVzKSBkZXV4IGZvaXMgZGFucyB1biBmaWNoaWVyIGRlIHN5bWJvbGVzLiIKKworIzogc2NyaXB0cy9EcGtnL1NobGlicy9TeW1ib2xGaWxlLnBtOjM4OAorbXNnaWQgIkNhbid0IG1lcmdlIHN5bWJvbHMgZnJvbSBvYmplY3RzIHdpdGhvdXQgU09OQU1FLiIKK21zZ3N0ciAiSW1wb3NzaWJsZSBkZSBmdXNpb25uZXIgbGVzIHN5bWJvbGVzIGRlcHVpcyBkZXMgb2JqZXRzIHNhbnMgU09OQU1FLiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9BcmNoaXZlLnBtOjY0Cittc2dpZCAid3JpdGUgb24gdGFyIGlucHV0IgorbXNnc3RyICLDqWNyaXR1cmUgc3VyIGwnZW50csOpZSBkZSB0YXIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvQXJjaGl2ZS5wbTo4OQorbXNnaWQgImNsb3NlIG9uIHRhciBpbnB1dCIKK21zZ3N0ciAiw6ljcml0dXJlIHN1ciBsYSBzb3J0aWUgZGUgdGFyIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL0FyY2hpdmUucG06MTE0IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NTAzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCBjcmVhdGUgZGlyZWN0b3J5ICVzIgorbXNnc3RyICJpbXBvc3NpYmxlIGRlIGNyw6llciBsZSByw6lwZXJ0b2lyZSAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9BcmNoaXZlLnBtOjE0NSBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG06MzA3CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06MTk5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCBvcGVuZGlyICVzIgorbXNnc3RyICJpbXBvc3NpYmxlIGQnb3V2cmlyIGxlIHLDqXBlcnRvaXJlICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL0FyY2hpdmUucG06MTUyIHNjcmlwdHMvRHBrZy9Tb3VyY2UvQXJjaGl2ZS5wbToxNTYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiVW5hYmxlIHRvIHJlbmFtZSAlcyB0byAlcyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkZSBtb2RpZmllciAlcyBlbiAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9GdW5jdGlvbnMucG06MzQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IHN0YXQgZGlyZWN0b3J5ICVzIChiZWZvcmUgcmVtb3ZhbCkiCittc2dzdHIgInN0YXQgZHUgcsOpcGVydG9pcmUgJXMgaW1wb3NzaWJsZSAoYXZhbnQgc3VwcHJlc3Npb24pIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL0Z1bmN0aW9ucy5wbTo0MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hlY2sgZm9yIHJlbW92YWwgb2YgZGlyIGAlcyciCittc2dzdHIgImltcG9zc2libGUgZGUgdsOpcmlmaWVyIGxhIHN1cHByZXNzaW9uIGR1IHLDqXBlcnRvaXJlICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL0Z1bmN0aW9ucy5wbTo0MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJybSAtcmYgZmFpbGVkIHRvIHJlbW92ZSBgJXMnIgorbXNnc3RyICJybSAtcmYgbidhIHBhcyBzdXBwcmltw6kgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvRnVuY3Rpb25zLnBtOjgzIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NTUwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCBjaGFuZ2UgdGltZXN0YW1wIGZvciAlcyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkZSBtb2RpZmllciBsYSBkYXRlIGRlICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL0Z1bmN0aW9ucy5wbTo4NQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVhZCB0aW1lc3RhbXAgZnJvbSAlcyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkZSBsaXJlIGxhIGRhdGUgZGUgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NzAgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjQ0MworbXNnaWQgImJpbmFyeSBmaWxlIGNvbnRlbnRzIGNoYW5nZWQiCittc2dzdHIgImNvbnRlbnUgZCd1biBmaWNoaWVyIGJpbmFpcmUgbW9kaWZpw6kiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MTE4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImZpbGUgJXMgaGFzIG5vIGZpbmFsIG5ld2xpbmUgKGVpdGhlciBvcmlnaW5hbCBvciBtb2RpZmllZCB2ZXJzaW9uKSIKK21zZ3N0ciAiIgorImZpY2hpZXIgJXMgc2FucyBjYXJhY3TDqHJlIG5vdXZlbGxlIGxpZ25lIHRlcm1pbmFsIChzb2l0IGwnb3JpZ2luYWwgc29pdCBsYSAiCisidmVyc2lvbiBtb2RpZmnDqWUpIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjEyMgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGxpbmUgZnJvbSBkaWZmIC11IG9uICVzOiBgJXMnIgorbXNnc3RyICJsaWduZSBpbmNvbm51ZSBkYW5zIGRpZmYgLXUgc3VyICVzwqA6IGAlcyciCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MTI1IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MTI4Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIgorbXNnc3RyICLDqWNoZWMgZCfDqWNyaXR1cmUiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MTM4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImRpZmYgb24gJXMiCittc2dzdHIgImRpZmYgc3VyICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjE2NCBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjE4MworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbToyMDYgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbToyMTgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IHN0YXQgZmlsZSAlcyIKK21zZ3N0ciAic3RhdCBpbXBvc3NpYmxlIHBvdXIgbGUgZmljaGllciAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbToxNzMgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbToxNzUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlYWQgbGluayAlcyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkZSBsaXJlIGxlIGxpZW4gJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MjAyCittc2dpZCAiZGV2aWNlIG9yIHNvY2tldCBpcyBub3QgYWxsb3dlZCIKK21zZ3N0ciAicMOpcmlwaMOpcmlxdWUgb3Ugc29ja2V0IG5vbiBhdXRvcmlzw6kiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MjExCittc2dpZCAidW5rbm93biBmaWxlIHR5cGUiCittc2dzdHIgInR5cGUgZGUgZmljaGllciBpbmNvbm51IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjIyNAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJpZ25vcmluZyBkZWxldGlvbiBvZiBmaWxlICVzIgorbXNnc3RyICJzdXBwcmVzc2lvbiBkdSBmaWNoaWVyICVzIGlnbm9yw6llIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjIyNworIywgcGVybC1mb3JtYXQKK21zZ2lkICJpZ25vcmluZyBkZWxldGlvbiBvZiBkaXJlY3RvcnkgJXMiCittc2dzdHIgInN1cHByZXNzaW9uIGR1IHLDqXBlcnRvaXJlICVzIGlnbm9yw6llIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjIyOQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJpZ25vcmluZyBkZWxldGlvbiBvZiBzeW1saW5rICVzIgorbXNnc3RyICJzdXBwcmVzc2lvbiBkdSBsaWVuIHN5bWJvbGlxdWUgJXMgaWdub3LDqWUiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MjcxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIm5ld2x5IGNyZWF0ZWQgZW1wdHkgZmlsZSAnJXMnIHdpbGwgbm90IGJlIHJlcHJlc2VudGVkIGluIGRpZmYiCittc2dzdHIgIiIKKyJsZSBmaWNoaWVyIMKrwqAlc8KgwrssIG5vdXZlbGxlbWVudCBjcsOpw6ksIG5lIHNlcmEgcGFzIHJlcHLDqXNlbnTDqSBkYW5zIGxlIGZpY2hpZXIgIgorImRlIGRpZmbDqXJlbmNlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbToyNzUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZXhlY3V0YWJsZSBtb2RlICUwNG8gb2YgJyVzJyB3aWxsIG5vdCBiZSByZXByZXNlbnRlZCBpbiBkaWZmIgorbXNnc3RyICIiCisibGUgbW9kZSBleMOpY3V0YWJsZSAlMDRvIGRlIMKrwqAlc8KgwrsgbmUgc2VyYSBwYXMgcmVwcsOpc2VudMOpIGRhbnMgbGUgZmljaGllciBkZSAiCisiZGlmZsOpcmVuY2VzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjI4MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJzcGVjaWFsIG1vZGUgJTA0byBvZiAnJXMnIHdpbGwgbm90IGJlIHJlcHJlc2VudGVkIGluIGRpZmYiCittc2dzdHIgIiIKKyJsZSBtb2RlIHNww6ljaWFsICUwNG8gZGUgwqvCoCVzwqDCuyBuZSBzZXJhIHBhcyByZXByw6lzZW50w6kgZGFucyBsZSBmaWNoaWVyIGRlICIKKyJkaWZmw6lyZW5jZXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MzAwIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo0NDIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlcHJlc2VudCBjaGFuZ2UgdG8gJXM6ICVzIgorbXNnc3RyICJpbXBvc3NpYmxlIGQnaWRlbnRpZmllciBsZXMgY2hhbmdlbWVudHMgZGUgJXPCoDogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MzA3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZXByZXNlbnQgY2hhbmdlIHRvICVzOiIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkJ2lkZW50aWZpZXIgbGVzIGNoYW5nZW1lbnRzIGRlICVzwqA6IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjMwOAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIgIG5ldyB2ZXJzaW9uIGlzICVzIgorbXNnc3RyICIgIGxhIG5vdXZlbGxlIHZlcnNpb24gZXN0ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjMwOQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIgIG9sZCB2ZXJzaW9uIGlzICVzIgorbXNnc3RyICIgIGwnYW5jaWVubmUgdmVyc2lvbiBlc3QgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06Mzg0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImV4cGVjdGVkIF4tLS0gaW4gbGluZSAlZCBvZiBkaWZmIGAlcyciCittc2dzdHIgImRhbnMgbGEgbGlnbmUgJWQgZHUgZmljaGllciBkZSBkaWZmw6lyZW5jZXMgJXMsIMKrwqBeLS0twqDCuyBhdHRlbmR1IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjM4OQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJkaWZmIGAlcycgcGF0Y2hlcyBmaWxlIHdpdGggbmFtZSBlbmRpbmcgLmRwa2ctb3JpZyIKK21zZ3N0ciAiZGlmZiAlcyBtb2RpZmllIHVuIGZpY2hpZXIgZG9udCBsZSBub20gZGUgdGVybWluZSBwYXIgLmRwa2ctb3JpZyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTozOTMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZGlmZiBgJXMnIGZpbmlzaGVzIGluIG1pZGRsZSBvZiAtLS0vKysrIChsaW5lICVkKSIKK21zZ3N0ciAiZGlmZiAlcyBzZSB0ZXJtaW5lIGF1IG1pbGlldSBkZSAtLS0vKysrIChsaWduZSAlZCkiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06Mzk2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImxpbmUgYWZ0ZXIgLS0tIGlzbid0IGFzIGV4cGVjdGVkIGluIGRpZmYgYCVzJyAobGluZSAlZCkiCittc2dzdHIgImxpZ25lIGFwcsOocyAtLS0gbidlc3QgcGFzIGNvbW1lIGF0dGVuZHUgZGFucyBkaWZmICVzIChsaWduZSAlZCkiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NDAyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIm5vbmUgb2YgdGhlIGZpbGVuYW1lcyBpbiAtLS0vKysrIGFyZSB2YWxpZCBpbiBkaWZmICclcycgKGxpbmUgJWQpIgorbXNnc3RyICIiCisiYXVjdW4gZGVzIGZpY2hpZXJzIGluZGlxdcOpcyBwYXIgwqvCoC0tLS8rKyvCoMK7IG4nZXN0IHZhbGFibGUgZGFucyBsZSBmaWNoaWVyIGRlICIKKyJkaWZmw6lyZW5jZXMgwqvCoCVzwqDCuyAobGlnbmUgJWQpIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjQxMAorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjEyNworIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBjb250YWlucyBhbiBpbnNlY3VyZSBwYXRoOiAlcyIKK21zZ3N0ciAiJXMgY29udGllbnQgdW4gY2hlbWluIGQnYWNjw6hzIG5vbiBzw7tywqA6wqAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo0MTUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZGlmZiAlcyBtb2RpZmllcyBmaWxlICVzIHRocm91Z2ggYSBzeW1saW5rOiAlcyIKK21zZ3N0ciAiIgorImwgZmljaGllciBkZSBkaWZmw6lyZW5jZXMgJXMgbW9kaWZpZSBsZSBmaWNoaWVyICVzIHZpYSB1biBsaWVuIHN5bWJvbGlxdWXCoDrCoCVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjQyNAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJvcmlnaW5hbCBhbmQgbW9kaWZpZWQgZmlsZXMgYXJlIC9kZXYvbnVsbCBpbiBkaWZmIGAlcycgKGxpbmUgJWQpIgorbXNnc3RyICIiCisibGVzIGZpY2hpZXJzIG9yaWdpbmFsIGV0IG1vZGlmacOpIHNvbnQgL2Rldi9udWxsIGRhbnMgbGUgZmljaGllciBkZSAiCisiZGlmZsOpcmVuY2VzICVzIChsaWduZSAlZCkiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NDI3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImZpbGUgcmVtb3ZhbCB3aXRob3V0IHByb3BlciBmaWxlbmFtZSBpbiBkaWZmIGAlcycgKGxpbmUgJWQpIgorbXNnc3RyICJsaWduZSBhcHLDqHMgLS0tIG4nZXN0IHBhcyBjb21tZSBhdHRlbmR1IGRhbnMgZGlmZiAlcyAobGlnbmUgJWQpIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjQzMAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJkaWZmICVzIHJlbW92ZXMgYSBub24tZXhpc3RpbmcgZmlsZSAlcyAobGluZSAlZCkiCittc2dzdHIgIiIKKyJsZSBmaWNoaWVyIGRlIGRpZmbDqXJlbmNlcyAlcyBzdXBwcmltZSB1biBmaWNoaWVyICglcykgcXVpIG4nZXhpc3RlIHBhcyAiCisiKGxpZ25lICVkKSIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo0NDIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZGlmZiBgJXMnIHBhdGNoZXMgc29tZXRoaW5nIHdoaWNoIGlzIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgImRpZmYgJXMgbW9kaWZpZSB1biBvYmpldCBxdWkgbidlc3QgcGFzIHVuIGZpY2hpZXIgbm9ybWFsIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjQ0NgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJkaWZmIGAlcycgcGF0Y2hlcyBmaWxlICVzIHR3aWNlIgorbXNnc3RyICJsZSBmaWNoaWVyIGRlIGRpZmbDqXJlbmNlcyAlcyBtb2RpZmllIGRldXggZm9pcyBsZSBmaWNoaWVyICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjQ2NCBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjQ2OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBkaWZmIGAlcyciCittc2dzdHIgImZpbiBpbmF0dGVuZHVlIGRlIGRpZmYgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NDc3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImV4cGVjdGVkIFsgKy1dIGF0IHN0YXJ0IG9mIGxpbmUgJWQgb2YgZGlmZiBgJXMnIgorbXNnc3RyICJbICstXSBhdHRlbmR1IGF1IGTDqWJ1dCBkZSBsYSBsaWduZSAlZCBkdSBmaWNoaWVyIGRlIGRpZmbDqXJlbmNlcyAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo0ODQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZXhwZWN0ZWQgXkBAIGF0IGxpbmUgJWQgb2YgZGlmZiBgJXMnIgorbXNnc3RyICJeQEAgYXR0ZW5kdSBsaWduZSAlZCBkdSBmaWNoaWVyIGRlIGRpZmbDqXJlbmNlcyAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo0ODkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZGlmZiBgJXMnIGRvZXNuJ3QgY29udGFpbiBhbnkgcGF0Y2giCittc2dzdHIgImxlIGZpY2hpZXIgZGUgZGlmZsOpcmVuY2VzICVzIG5lIGNvbnRpZW50IHBhcyBkZSBjaGFuZ2VtZW50IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjU1NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJyZW1vdmUgcGF0Y2ggYmFja3VwIGZpbGUgJXMiCittc2dzdHIgInN1cHByZXNzaW9uIGR1IGZpY2hpZXIgZGUgc2F1dmVnYXJkZSAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo1OTUKK21zZ2lkICJub25leGlzdGVudCIKK21zZ3N0ciAiaW5leGlzdGFudCIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo1OTYgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOjQ1OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc3RhdCAlcyIKK21zZ3N0ciAic3RhdCBkZSAlcyBpbXBvc3NpYmxlIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjU5OAorbXNnaWQgInBsYWluIGZpbGUiCittc2dzdHIgInNpbXBsZSBmaWNoaWVyIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjU5OQorbXNnaWQgImRpcmVjdG9yeSIKK21zZ3N0ciAicsOpcGVydG9pcmUiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NjAwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInN5bWxpbmsgdG8gJXMiCittc2dzdHIgImxpZW4gc3ltYm9saXF1ZSB2ZXJzICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjYwMQorbXNnaWQgImJsb2NrIGRldmljZSIKK21zZ3N0ciAicMOpcmlwaMOpcmlxdWUgYmxvYyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo2MDIKK21zZ2lkICJjaGFyYWN0ZXIgZGV2aWNlIgorbXNnc3RyICJww6lyaXBow6lyaXF1ZSBjYXJhY3TDqHJlIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjYwMworbXNnaWQgIm5hbWVkIHBpcGUiCittc2dzdHIgInR1YmUgbm9tbcOpIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjYwNAorbXNnaWQgIm5hbWVkIHNvY2tldCIKK21zZ3N0ciAiwqvCoHNvY2tldMKgwrsgbm9tbcOpIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG06MTg4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGlzIG5vdCB0aGUgbmFtZSBvZiBhIGZpbGUiCittc2dzdHIgIiVzIG4nZXN0IHBhcyB1biBub20gZGUgZmljaGllciIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOjIwOAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJtaXNzaW5nIGNyaXRpY2FsIHNvdXJjZSBjb250cm9sIGZpZWxkICVzIgorbXNnc3RyICJ1biBjaGFtcCBkZSBjb250csO0bGUgdml0YWwgbWFucXVlLCAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOjIzNgorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisic291cmNlIHBhY2thZ2UgZm9ybWF0IGAlcycgaXMgbm90IHN1cHBvcnRlZCAoUGVybCBtb2R1bGUgJXMgaXMgcmVxdWlyZWQpIgorbXNnc3RyICIiCisibGUgZm9ybWF0IGRlIHBhcXVldCBzb3VyY2UgwqvCoCVzwqDCuyBuJ2VzdCBwYXMgZ8OpcsOpIChsZSBtb2R1bGUgUGVybCAlcyBlc3QgIgorInJlcXVpcykiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbToyNDAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBGb3JtYXQgZmllbGQgYCVzJyIKK21zZ3N0ciAiY2hhbXAgRm9ybWF0IMKrwqAlc8Kgwrsgbm9uIHZhbGFibGUiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbToyODgKK21zZ2lkICJzb3VyY2UgYW5kIHZlcnNpb24gYXJlIHJlcXVpcmVkIHRvIGNvbXB1dGUgdGhlIHNvdXJjZSBiYXNlbmFtZSIKK21zZ3N0ciAiIgorImxhIHNvdXJjZSBldCBsYSB2ZXJzaW9uIHNvbnQgaW5kaXNwZW5zYWJsZXMgcG91ciBjYWxjdWxlciBsZSBub20gZGUgYmFzZSBkZSAiCisibGEgc291cmNlIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG06MzcxIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbTozNzMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHZlcmlmeSBzaWduYXR1cmUgb24gJXMiCittc2dzdHIgImltcG9zc2libGUgZGUgdsOpcmlmaWVyIGxhIHNpZ25hdHVyZSBzdXIgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbTozODAgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOjM4MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgdmVyaWZ5IHNpZ25hdHVyZSBvbiAlcyBzaW5jZSBncGcgaXNuJ3QgaW5zdGFsbGVkIgorbXNnc3RyICJpbXBvc3NpYmxlIGRlIHbDqXJpZmllciBsYSBzaWduYXR1cmUgc3VyICVzLCBncGcgbidlc3QgcGFzIGluc3RhbGzDqSIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOjM5MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgYSB2YWxpZCBvcHRpb24gZm9yICVzIgorbXNnc3RyICIlcyBuJ2VzdCBwYXMgdW5lIG9wdGlvbiB2YWxhYmxlIHBvdXIgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbTo0NjAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgZG9lcyBub3QgZXhpc3QiCittc2dzdHIgIiVzIG4nZXhpc3RlIHBhcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOjQ2NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3QgbWFrZSAlcyBleGVjdXRhYmxlIgorbXNnc3RyICJpbXBvc3NpYmxlIGRlIHJlbmRyZSAlcyBleMOpY3V0YWJsZSIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOjQ2NgorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgYSBwbGFpbiBmaWxlIgorbXNnc3RyICIlcyBuJ2VzdCBwYXMgdW4gZmljaGllciBub3JtYWwiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbTo1MTcKKyMsIGZ1enp5LCBwZXJsLWZvcm1hdAorI3wgbXNnaWQgImNhbid0IGJ1aWxkIHdpdGggc291cmNlIGZvcm1hdCAnJXMnOiAlcyIKK21zZ2lkICInJXMnIGlzIG5vdCBzdXBwb3J0ZWQgYnkgdGhlIHNvdXJjZSBmb3JtYXQgJyVzJyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkZSBjb25zdHJ1aXJlIGF2ZWMgbGUgZm9ybWF0IHNvdXJjZSDCq8KgJXPCoMK7wqA6wqAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjYyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIi1zJXMgb3B0aW9uIG92ZXJyaWRlcyBlYXJsaWVyIC1zJXMgb3B0aW9uIgorbXNnc3RyICJsJ29wdGlvbiAtcyVzIGFubnVsZSB1bmUgcHLDqWPDqWRlbnRlIG9wdGlvbiAtcyVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06ODQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAic291cmNlIGhhbmRsaW5nIHN0eWxlIC1zJXMgbm90IGFsbG93ZWQgd2l0aCAteCIKK21zZ3N0ciAiZ2VzdGlvbiBkZXMgc291cmNlcyBhdmVjIC1zJXMgbm9uIGF1dG9yaXPDqWUgYXZlYyAteCIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjk2CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvbmF0aXZlLnBtOjUxCittc2dpZCAibXVsdGlwbGUgdGFyZmlsZXMgaW4gdjEuMCBzb3VyY2UgcGFja2FnZSIKK21zZ3N0ciAicGx1c2lldXJzIGZpY2hpZXJzIHRhciBkYW5zIHVuIHBhcXVldCBzb3VyY2UgdjEuMCIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjEwMSBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06MTI5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVucmVjb2duaXplZCBmaWxlIGZvciBhICVzIHNvdXJjZSBwYWNrYWdlOiAlcyIKK21zZ3N0ciAidHlwZSBkZSBmaWNoaWVyIG5vbiByZWNvbm51IHBvdXIgdW4gZmljaGllciBzb3VyY2UgJXPCoDrCoCVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MTA2CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvbmF0aXZlLnBtOjU4Cittc2dpZCAibm8gdGFyZmlsZSBpbiBGaWxlcyBmaWVsZCIKK21zZ3N0ciAicGFzIGRlIGZpY2hpZXIgdGFyIGRhbnMgbGUgY2hhbXAgRmlsZXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToxMDkKK21zZ2lkICJuYXRpdmUgcGFja2FnZSB3aXRoIC5vcmlnLnRhciIKK21zZ3N0ciAicGFxdWV0IG5hdGlmIGF2ZWMgLm9yaWcudGFyIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MTIyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW5hbWUgYCVzJyB0byBgJXMnIgorbXNnc3RyICJpbXBvc3NpYmxlIGRlIG1vZGlmaWVyICVzIGVuICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MTI2IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbToxNDEKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbToxNTMgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjE2NgorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2J6ci5wbToxOTAKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9uYXRpdmUucG06NjEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5wYWNraW5nICVzIgorbXNnc3RyICJleHRyYWN0aW9uIGRlICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MTMzCittc2dpZCAidW5hYmxlIHRvIGtlZXAgb3JpZyBkaXJlY3RvcnkgKGFscmVhZHkgZXhpc3RzKSIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkZSBnYXJkZXIgcsOpcGVydG9pcmUgb3JpZywgaWwgZXhpc3RlIGTDqWrDoCIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjE0MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gcmVuYW1lIG5ld2x5LWV4dHJhY3RlZCAlcyB0byAlcyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkZSBtb2RpZmllciBsZSBmaWNoaWVyIGV4dHJhaXQgJXMgZW4gJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToxNDYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHJlbmFtZSBzYXZlZCAlcyB0byAlcyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkZSBtb2RpZmllciBsZSBmaWNoaWVyIHNhdXZlZ2FyZMOpICVzIGVuICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MTUzIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbToyMjIKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbToxNzIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiYXBwbHlpbmcgJXMiCittc2dzdHIgIm1pc2UgZW4gcGxhY2UgZGUgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToxNTgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidXBzdHJlYW0gZmlsZXMgdGhhdCBoYXZlIGJlZW4gbW9kaWZpZWQ6ICVzIgorbXNnc3RyICJmaWNoaWVycyBhbW9udCBtb2RpZmnDqXPCoDogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToxNjgKK21zZ2lkICJvbmx5IHN1cHBvcnRzIGd6aXAgY29tcHJlc3Npb24iCittc2dzdHIgIm5lIGfDqHJlIHF1ZSBsYSBjb21wcmVzc2lvbiBnemlwIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MTc5Cittc2dpZCAiIgorIi1iIHRha2VzIGF0IG1vc3QgYSBkaXJlY3RvcnkgYW5kIGFuIG9yaWcgc291cmNlIGFyZ3VtZW50ICh3aXRoIHYxLjAgc291cmNlICIKKyJwYWNrYWdlKSIKK21zZ3N0ciAiIgorImlsIGZhdXQgYXUgcGx1cyB1biBwYXJhbcOodHJlIHLDqXBlcnRvaXJlIGV0IHVuIHBhcmFtw6h0cmUgc291cmNlIGQnb3JpZ2luZSAiCisiYXZlYyAtYiAocG91ciBsZXMgcGFxdWV0cyBzb3VyY2UgdjEuMCkiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToxODUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAic291cmNlIGhhbmRsaW5nIHN0eWxlIC1zJXMgbm90IGFsbG93ZWQgd2l0aCAtYiIKK21zZ3N0ciAiZ2VzdGlvbiBkZXMgc291cmNlcyBhdmVjIC1zJXMgbm9uIGF1dG9yaXPDqWUgYXZlYyAtYiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjIwMAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJwYWNrZWQgb3JpZyBgJXMnIGV4aXN0cyBidXQgaXMgbm90IGEgcGxhaW4gZmlsZSIKK21zZ3N0ciAiIgorImxlIGZpY2hpZXIgb3JpZ2luYWwgY29tcHJlc3PDqSAlcyBleGlzdGUgbWFpcyBjZSBuJ2VzdCBwYXMgdW4gc2ltcGxlIGZpY2hpZXIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToyMTIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IHN0YXQgb3JpZyBhcmd1bWVudCAlcyIKK21zZ3N0ciAiwqvCoHN0YXTCoMK7IGR1IHBhcmFtw6h0cmUgb3JpZ2luZSAlcyBpbXBvc3NpYmxlIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MjE4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJvcmlnIGFyZ3VtZW50IGlzIHVucGFja2VkIGJ1dCBzb3VyY2UgaGFuZGxpbmcgc3R5bGUgLXMlcyBjYWxscyBmb3IgcGFja2VkICguIgorIm9yaWcudGFyLjxleHQ+KSIKK21zZ3N0ciAiIgorImxlIHBhcmFtw6h0cmUgc291cmNlIG4nZXN0IHBhcyBjb21wcmVzc8OpIG1haXMgbCdvcHRpb24gLXMlcyBkZW1hbmRlIGRlcyAiCisic291cmNlcyBjb21wcmVzc8OpZXMgKC5vcmlnLnRhci48ZXh0PikiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToyMjYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIm9yaWcgYXJndW1lbnQgaXMgcGFja2VkIGJ1dCBzb3VyY2UgaGFuZGxpbmcgc3R5bGUgLXMlcyBjYWxscyBmb3IgdW5wYWNrZWQgKC4iCisib3JpZy8pIgorbXNnc3RyICIiCisibGUgcGFyYW3DqHRyZSBzb3VyY2UgZXN0IGNvbXByZXNzw6kgbWFpcyBsJ29wdGlvbiAtcyVzIGRlbWFuZGUgZGVzIHNvdXJjZXMgbm9uICIKKyJjb21wcmVzc8OpZXMgKC5vcmlnLykiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToyMzEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAib3JpZyBhcmd1bWVudCAlcyBpcyBub3QgYSBwbGFpbiBmaWxlIG9yIGRpcmVjdG9yeSIKK21zZ3N0ciAibGUgcGFyYW3DqHRyZSBzb3VyY2UgJXMgbidlc3QgcGFzIHVuIGZpY2hpZXIgb3UgdW4gcsOpcGVydG9pcmUiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToyMzcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIm9yaWcgYXJndW1lbnQgaXMgZW1wdHkgKG1lYW5zIG5vIG9yaWcsIG5vIGRpZmYpIGJ1dCBzb3VyY2UgaGFuZGxpbmcgc3R5bGUgLXMiCisiJXMgd2FudHMgc29tZXRoaW5nIgorbXNnc3RyICIiCisibGUgcGFyYW3DqHRyZSBzb3VyY2UgZXN0IHZpZGUgKHBhcyBkJ29yaWcsIHBhcyBkZSBkaWZmKSBtYWlzIGwnb3B0aW9uIC1zJXMgIgorInZldXQgcXVlbHF1ZSBjaG9zZS4iCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToyNTAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5wYWNrZWQgb3JpZyBgJXMnIGV4aXN0cyBidXQgaXMgbm90IGEgZGlyZWN0b3J5IgorbXNnc3RyICIiCisiTGUgZmljaGllciBvcmlnaW5hbCBub24gY29tcHJlc3PDqSAlcyBleGlzdGUgbWFpcyBjZSBuJ2VzdCBwYXMgdW4gcsOpcGVydG9pcmUiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToyNTUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHN0YXQgcHV0YXRpdmUgdW5wYWNrZWQgb3JpZyBgJXMnIgorbXNnc3RyICJzdGF0IGltcG9zc2libGUgZHUgc3VwcG9zw6kgb3JpZyBub24gY29tcHJlc3PDqSAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjI2NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJzb3VyY2UgZGlyZWN0b3J5ICclcycgaXMgbm90IDxzb3VyY2VwYWNrYWdlPi08dXBzdHJlYW12ZXJzaW9uPiAnJXMnIgorbXNnc3RyICJyw6lwZXJ0b2lyZSBzb3VyY2UgJXMgbidlc3QgcGFzIDxwYXF1ZXRfc291cmNlPi08dmVyc2lvbl9hbW9udD4gJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToyNzMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiLm9yaWcgZGlyZWN0b3J5IG5hbWUgJXMgaXMgbm90IDxwYWNrYWdlPi08dXBzdHJlYW12ZXJzaW9uPiAod2FudGVkICVzKSIKK21zZ3N0ciAicsOpcGVydG9pcmUgLm9yaWcgJXMgbidlc3QgcGFzIDxwYXF1ZXQ+LTx2ZXJzaW9uX2Ftb250PiAoJXMgZGVtYW5kw6kpIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MjgyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyIub3JpZy50YXIgbmFtZSAlcyBpcyBub3QgPHBhY2thZ2U+Xzx1cHN0cmVhbXZlcnNpb24+Lm9yaWcudGFyICh3YW50ZWQgJXMpIgorbXNnc3RyICIub3JpZy50YXIgJXMgbidlc3QgcGFzIDxwYXF1ZXQ+Xzx2ZXJzaW9uX2Ftb250Pi5vcmlnLnRhciAoJXMgZGVtYW5kw6kpIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06Mjk0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJ0YXJmaWxlIGAlcycgYWxyZWFkeSBleGlzdHMsIG5vdCBvdmVyd3JpdGluZywgZ2l2aW5nIHVwOyB1c2UgLXNVIG9yIC1zUiB0byAiCisib3ZlcnJpZGUiCittc2dzdHIgIiIKKyJsZSBmaWNoaWVyIHRhciAlcyBleGlzdGUgZMOpasOgLCBwYXMgZGUgbW9kaWZpY2F0aW9uLCBhYmFuZG9uwqA7IHV0aWxpc2VyIC1zVSAiCisib3UgLXNSIHBvdXIgZm9yY2VyLiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjI5OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hlY2sgZm9yIGV4aXN0ZW5jZSBvZiBgJXMnIgorbXNnc3RyICJpbXBvc3NpYmxlIGRlIHbDqXJpZmllciBsJ2V4aXN0ZW5jZSBkZSAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjMxMyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06Mzc1CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvbmF0aXZlLnBtOjk4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW5hbWUgYCVzJyAobmV3bHkgY3JlYXRlZCkgdG8gYCVzJyIKK21zZ3N0ciAiaW1wb3NzaWJsZSBkZSBtb2RpZmllciAlcyAobm91dmVsbGVtZW50IGNyw6nDqSkgZW4gJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbTozMTYgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjM3OAorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjYwMworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL25hdGl2ZS5wbToxMDIKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbTozNjcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoYW5nZSBwZXJtaXNzaW9uIG9mIGAlcyciCittc2dzdHIgImltcG9zc2libGUgZGUgbW9kaWZpZXIgbGVzIHBlcm1pc3Npb25zIGRlICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MzE4IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTozNDgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiYnVpbGRpbmcgJXMgdXNpbmcgZXhpc3RpbmcgJXMiCittc2dzdHIgImNvbnN0cnVjdGlvbiBkZSAlcyDDoCBwYXJ0aXIgZGUgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbTozMjcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIm9yaWcgZGlyIGAlcycgYWxyZWFkeSBleGlzdHMsIG5vdCBvdmVyd3JpdGluZywgZ2l2aW5nIHVwOyB1c2UgLXNBLCAtc0sgb3IgLSIKKyJzUCB0byBvdmVycmlkZSIKK21zZ3N0ciAiIgorImxlIHLDqXBlcnRvaXJlIG9yaWcgJXMgZXhpc3RlIGTDqWrDoCwgcGFzIGRlIG1vZGlmaWNhdGlvbiwgYWJhbmRvbsKgOyB1dGlsaXNlciAtIgorInNBLCAtc0sgb3UgLXNQIHBvdXIgZm9yY2VyLiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjMzNQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hlY2sgZm9yIGV4aXN0ZW5jZSBvZiBvcmlnIGRpciBgJXMnIgorbXNnc3RyICJpbXBvc3NpYmxlIGRlIHbDqXJpZmllciBsJ2V4aXN0ZW5jZSBkdSByw6lwZXJ0b2lyZSBvcmlnICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MzY2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInRoZSBkaWZmIG1vZGlmaWVzIHRoZSBmb2xsb3dpbmcgdXBzdHJlYW0gZmlsZXM6ICVzIgorbXNnc3RyICJsZSBmaWNoaWVyIGRlIGRpZmbDqXJlbmNlcyBtb2RpZmllIGxlcyBmaWNoaWVycyBhbW9udCBzdWl2YW50c8KgOiAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjM2OAorbXNnaWQgIiIKKyJ1c2UgdGhlICczLjAgKHF1aWx0KScgZm9ybWF0IHRvIGhhdmUgc2VwYXJhdGUgYW5kIGRvY3VtZW50ZWQgY2hhbmdlcyB0byAiCisidXBzdHJlYW0gZmlsZXMsIHNlZSBkcGtnLXNvdXJjZSgxKSIKK21zZ3N0ciAiIgorImNob2lzaXNzZXogbGUgZm9ybWF0IMKrwqAzLjAgKHF1aWx0KcKgwrsgcG91ciB1dGlsaXNlciBkZXMgbW9kaWZpY2F0aW9ucyAiCisic8OpcGFyw6llcyBldCBkb2N1bWVudMOpZXMgZGFucyBsZXMgc291cmNlcyBhbW9udCwgdm9pciBkcGtnLXNvdXJjZSgxKSIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjM3MAorbXNnaWQgImFib3J0aW5nIGR1ZSB0byAtLWFib3J0LW9uLXVwc3RyZWFtLWNoYW5nZXMiCittc2dzdHIgImFiYW5kb24gc3VpdGUgw6AgLS1hYm9ydC1vbi11cHN0cmVhbS1jaGFuZ2VzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06Mzg4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzOiB1bnJlcHJlc2VudGFibGUgY2hhbmdlcyB0byBzb3VyY2UiCittc2dzdHIgIiVzwqA6IG1vZGlmaWNhdGlvbnMgbm9uIHJlcHLDqXNlbnRhYmxlcyBkZXMgc291cmNlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjExOQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgZmlsZXMgaW4gJXMgc291cmNlIHBhY2thZ2U6ICVzLioiCittc2dzdHIgImZpY2hpZXJzIG1lbnRpb25uw6lzIGRldXggZm9pcyBkYW5zIGxlIHBhcXVldCBzb3VyY2UgJXPCoDrCoCVzLioiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbToxMzUKK21zZ2lkICJtaXNzaW5nIG9yaWcudGFyIG9yIGRlYmlhbi50YXIgZmlsZSBpbiB2Mi4wIHNvdXJjZSBwYWNrYWdlIgorbXNnc3RyICJmaWNoaWVyIG9yaWcudGFyIG91IGRlYmlhbi50YXIgbWFucXVhbnQgZGFucyB1biBwYXF1ZXQgc291cmNlIHYyLjAiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbToxNTUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAicmVxdWlyZWQgcmVtb3ZhbCBvZiBgJXMnIGluc3RhbGxlZCBieSBvcmlnaW5hbCB0YXJiYWxsIgorbXNnc3RyICIiCisic3VwcHJlc3Npb24gaW5kaXNwZW5zYWJsZSBkZSDCq8KgJXPCoMK7IGluc3RhbGzDqSBwYXIgbCdhcmNoaXZlIHRhciBvcmlnaW5hbGUiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbToyNDAKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbToyNTUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5hcHBseWluZyAlcyIKK21zZ3N0ciAicmV0cmFpdCBkZSAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjI2MyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06MzQ0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIm5vIHVwc3RyZWFtIHRhcmJhbGwgZm91bmQgYXQgJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjMxNAorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjMyOQorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAicGF0Y2hlcyBoYXZlIG5vdCBiZWVuIGFwcGxpZWQsIGFwcGx5aW5nIHRoZW0gbm93ICh1c2UgLS1uby1wcmVwYXJhdGlvbiB0byAiCisjfCAib3ZlcnJpZGUpIgorbXNnaWQgInBhdGNoZXMgYXJlIG5vdCBhcHBsaWVkLCBhcHBseWluZyB0aGVtIG5vdyIKK21zZ3N0ciAiIgorImxlcyBjb3JyZWN0aWZzIG4nb250IHBhcyDDqXTDqSBhcHBsaXF1w6lzLCBpbHMgdm9udCBsJ8OqdHJlIG1haW50ZW5hbnQgKHV0aWxpc2V6ICIKKyItLW5vLXByZXBhcmF0aW9uIHBvdXIgc2F1dGVyIGNldHRlIMOpdGFwZSkiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTozMzEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAic2V2ZXJhbCBvcmlnLnRhciBmaWxlcyBmb3VuZCAoJXMgYW5kICVzKSBidXQgb25seSBvbmUgaXMgYWxsb3dlZCIKK21zZ3N0ciAiIgorInBsdXNpZXVycyBmaWNoaWVycyBvcmlnLnRhciBvbnQgw6l0w6kgdHJvdXbDqXMgKCVzIGV0ICVzKSBhbG9ycyBxdSd1biBzZXVsICIKKyJuJ2VzdCBhdXRvcmlzw6kiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTozNzAKK21zZ2lkICJjb3B5IG9mIHRoZSBkZWJpYW4gZGlyZWN0b3J5IgorbXNnc3RyICJjb3BpZSBkdSByw6lwZXJ0b2lyZSBkZWJpYW4iCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTozODgKK21zZ2lkICJ1bnJlcHJlc2VudGFibGUgY2hhbmdlcyB0byBzb3VyY2UiCittc2dzdHIgIm1vZGlmaWNhdGlvbnMgbm9uIHJlcHLDqXNlbnRhYmxlcyBkZXMgc291cmNlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjM5MQorIywgZnV6enkKKyN8IG1zZ2lkICJsb2NhbCBjaGFuZ2VzIHN0b3JlZCBpbiAlcywgdGhlIG1vZGlmaWVkIGZpbGVzIGFyZToiCittc2dpZCAibG9jYWwgY2hhbmdlcyBkZXRlY3RlZCwgdGhlIG1vZGlmaWVkIGZpbGVzIGFyZToiCittc2dzdHIgIiIKKyJtb2RpZmljYXRpb25zIGxvY2FsZXMgZW5yZWdpc3Ryw6llcyBkYW5zICVzLCBsZXMgZmljaGllcnMgbW9kaWZpw6lzIHNvbnTCoDoiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo0MTAKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9ienIucG06OTcKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9uYXRpdmUucG06NzYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiLWIgdGFrZXMgb25seSBvbmUgcGFyYW1ldGVyIHdpdGggZm9ybWF0IGAlcyciCittc2dzdHIgIi1iIG4ndXRpbGlzZSBxdSd1biBwYXJhbcOodHJlIGF2ZWMgbGUgZm9ybWF0IMKrwqAlc8KgwrsiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo0NDQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorImFkZCAlcyBpbiBkZWJpYW4vc291cmNlL2luY2x1ZGUtYmluYXJpZXMgaWYgeW91IHdhbnQgdG8gc3RvcmUgdGhlIG1vZGlmaWVkICIKKyJiaW5hcnkgaW4gdGhlIGRlYmlhbiB0YXJiYWxsIgorbXNnc3RyICIiCisiQWpvdXRleiAlcyBkYW5zIGRlYmlhbi9zb3VyY2UvaW5jbHVkZS1iaW5hcmllcyBzaSB2b3VzIHNvdWhhaXRleiBjb25zZXJ2ZXIgIgorImxlIGJpbmFpcmUgbW9kaWZpw6kgZGFucyBsZSBmaWNoZXIgdGFyIGRlYmlhbiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjQ1OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bndhbnRlZCBiaW5hcnkgZmlsZTogJXMiCittc2dzdHIgImZpY2hpZXIgYmluYWlyZSBub24gc291aGFpdMOpwqA6wqAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjQ5MworIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiZGV0ZWN0ZWQgJWQgdW53YW50ZWQgYmluYXJ5IGZpbGUgKGFkZCBpdCBpbiBkZWJpYW4vc291cmNlL2luY2x1ZGUtYmluYXJpZXMgIgorInRvIGFsbG93IGl0cyBpbmNsdXNpb24pLiIKK21zZ2lkX3BsdXJhbCAiIgorImRldGVjdGVkICVkIHVud2FudGVkIGJpbmFyeSBmaWxlcyAoYWRkIHRoZW0gaW4gZGViaWFuL3NvdXJjZS9pbmNsdWRlLSIKKyJiaW5hcmllcyB0byBhbGxvdyB0aGVpciBpbmNsdXNpb24pLiIKK21zZ3N0clswXSAiIgorIiVkIGZpY2hpZXIgYmluYWlyZSBub24gc291aGFpdMOpIGEgw6l0w6kgZMOpdGVjdMOpIChpbCBlc3QgbsOpY2Vzc2FpcmUgZGUgIgorImwnYWpvdXRlciBkYW5zIGRlYmlhbi9zb3VyY2UvaW5jbHVkZS1iaW5hcmllcyBwb3VyIGF1dG9yaXNlciBzb24gaW5jbHVzaW9uKS4iCittc2dzdHJbMV0gIiIKKyIlZCBmaWNoaWVycyBiaW5haXJlcyBub24gc291aGFpdMOpcyBvbnQgw6l0w6kgZMOpdGVjdMOpcyAoaWwgZXN0IG7DqWNlc3NhaXJlIGRlICIKKyJsZXMgYWpvdXRlciBkYW5zIGRlYmlhbi9zb3VyY2UvaW5jbHVkZS1iaW5hcmllcyBwb3VyIGF1dG9yaXNlciBsZXVyICIKKyJpbmNsdXNpb24pLiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjUwOAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ5b3UgY2FuIGludGVncmF0ZSB0aGUgbG9jYWwgY2hhbmdlcyB3aXRoICVzIgorbXNnc3RyICJ2b3VzIHBvdXZleiBpbnTDqWdyZXIgbGVzIG1vZGlmaWNhdGlvbnMgbG9jYWxlcyBkYW5zICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NTEwCisjLCBmdXp6eSwgcGVybC1mb3JtYXQKKyN8IG1zZ2lkICJhYm9ydGluZyBkdWUgdG8gLS1hYm9ydC1vbi11cHN0cmVhbS1jaGFuZ2VzIgorbXNnaWQgImFib3J0aW5nIGR1ZSB0byB1bmV4cGVjdGVkIHVwc3RyZWFtIGNoYW5nZXMsIHNlZSAlcyIKK21zZ3N0ciAiYWJhbmRvbiBzdWl0ZSDDoCAtLWFib3J0LW9uLXVwc3RyZWFtLWNoYW5nZXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo1MjAgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjY1MworIywgcGVybC1mb3JtYXQKK21zZ2lkICJsb2NhbCBjaGFuZ2VzIGhhdmUgYmVlbiByZWNvcmRlZCBpbiBhIG5ldyBwYXRjaDogJXMiCittc2dzdHIgIiIKKyJsZXMgbW9kaWZpY2F0aW9ucyBsb2NhbGVzIG9udCDDqXTDqSBlbnJlZ2lzdHLDqWVzIGRhbnMgdW4gbm91dmVhdSBwYXRjaDogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo1MjQgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjYwOQorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjYzNyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NjUxCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06MzY5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZW1vdmUgJXMiCittc2dzdHIgImltcG9zc2libGUgZGUgc3VwcHJpbWVyICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NTM0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImFkZGluZyAlcyB0byAlcyIKK21zZ3N0ciAiYWpvdXQgZGUgJXMgw6AgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo2MDEKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbTozNjUKKyMsIGZ1enp5LCBwZXJsLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byByZW5hbWUgc2F2ZWQgJXMgdG8gJXMiCittc2dpZCAiZmFpbGVkIHRvIGNvcHkgJXMgdG8gJXMiCittc2dzdHIgImltcG9zc2libGUgZGUgbW9kaWZpZXIgbGUgZmljaGllciBzYXV2ZWdhcmTDqSAlcyBlbiAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjYyNAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVnaXN0ZXIgY2hhbmdlcyBpbiAlcywgdGhpcyBwYXRjaCBhbHJlYWR5IGV4aXN0cyIKK21zZ3N0ciAiIgorImltcG9zc2libGUgZCdlbnJlZ2lzdHJlciBsZXMgY2hhbmdlbWVudHMgZGFucyAlcywgbGUgZmljaGllciBkZSBkaWZmw6lyZW5jZSAiCisiZXhpc3RlIGTDqWrDoCAiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo2MzgKKyMsIGZ1enp5CisjfCBtc2dpZCAidW5yZXByZXNlbnRhYmxlIGNoYW5nZXMgdG8gc291cmNlIgorbXNnaWQgInRoZXJlIGFyZSBubyBsb2NhbCBjaGFuZ2VzIHRvIHJlY29yZCIKK21zZ3N0ciAibW9kaWZpY2F0aW9ucyBub24gcmVwcsOpc2VudGFibGVzIGRlcyBzb3VyY2VzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NjQzCittc2dpZCAiRW50ZXIgdGhlIGRlc2lyZWQgcGF0Y2ggbmFtZTogIgorbXNnc3RyICJTYWlzaXNzZXogbGUgbm9tIGR1IGZpY2hpZXIgZGUgZGlmZsOpcmVuY2UgOiAiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9ienIucG06NTIKK21zZ2lkICIiCisiVGhpcyBzb3VyY2UgcGFja2FnZSBjYW4gb25seSBiZSBtYW5pcHVsYXRlZCB1c2luZyBienIsIHdoaWNoIGlzIG5vdCBpbiB0aGUgIgorIlBBVEguIgorbXNnc3RyICIiCisiQ2UgcGFxdWV0IHNvdXJjZSBuZSBwZXV0IMOqdHJlIG1hbmlwdWzDqSBxdSdhdmV6IGJ6ciwgcXVpIG4nZXN0IHBhcyBhY2Nlc3NpYmxlICIKKyJkYW5zIGxlIGNoZW1pbiBkZSByZWNoZXJjaGUgcGFyIGTDqWZhdXQgKFBBVEgpLiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2J6ci5wbTo1OQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisic291cmNlIGRpcmVjdG9yeSBpcyBub3QgdGhlIHRvcCBkaXJlY3Rvcnkgb2YgYSBienIgcmVwb3NpdG9yeSAoJXMvLmJ6ciBub3QgIgorInByZXNlbnQpLCBidXQgRm9ybWF0IGJ6ciB3YXMgc3BlY2lmaWVkIgorbXNnc3RyICIiCisibGUgcsOpcGVydG9pcmUgc291cmNlIG4nZXN0IHBhcyBsZSBzb21tZXQgZCd1biBkw6lww7R0IGJ6ciAoJXMvLmJ6ciBhYnNlbnQpICIKKyJiaWVuIHF1ZSBsZSBmb3JtYXQgYnpyIGFpdCDDqXTDqSBpbmRpcXXDqSIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2J6ci5wbTo2NgorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBpcyBhIHN5bWxpbmsiCittc2dzdHIgIiVzIGVzdCB1biBsaWVuIHN5bWJvbGlxdWUiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9ienIucG06NzIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgaXMgYSBzeW1saW5rIHRvIG91dHNpZGUgJXMiCittc2dzdHIgIiVzIGVzdCB1biBsaWVuIHN5bWJvbGlxdWUgdmVycyBsJ2V4dMOpcmlldXIgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9ienIucG06ODMKK21zZ2lkICJkb2Vzbid0IGNvbnRhaW4gYSBienIgcmVwb3NpdG9yeSIKK21zZ3N0ciAibmUgY29udGllbnQgcGFzIGRlIGTDqXDDtHQgYnpyIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvYnpyLnBtOjEyNworbXNnaWQgImJ6ciBzdGF0dXMgZXhpdGVkIG5vbnplcm8iCittc2dzdHIgIsOpdGF0IGRlIHNvcnRpZSBub24gbnVsIHBvdXIgYnpyIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvYnpyLnBtOjEyOQorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2dpdC5wbToxMzMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5jb21taXR0ZWQsIG5vdC1pZ25vcmVkIGNoYW5nZXMgaW4gd29ya2luZyBkaXJlY3Rvcnk6ICVzIgorbXNnc3RyICIiCisibm9uIMKrwqBjb21taXTDqcKgwrssIG1vZGlmaWNhdGlvbnMgbm9uIGlnbm9yw6llcyBkYW5zIGxlIHLDqXBlcnRvaXJlIGRlICIKKyJ0cmF2YWlswqA6wqAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2J6ci5wbToxNzkKK21zZ2lkICJmb3JtYXQgdjMuMCB1c2VzIG9ubHkgb25lIHNvdXJjZSBmaWxlIgorbXNnc3RyICJsZSBmb3JtYXQgdjMuMCBuJ3V0aWxpc2UgcXUndW4gZmljaGllciBzb3VyY2UiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9ienIucG06MTgzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImV4cGVjdGVkICVzLCBnb3QgJXMiCittc2dzdHIgIiVzIGF0dGVuZHUsICVzIHJlw6d1IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvY3VzdG9tLnBtOjQwCittc2dpZCAiRm9ybWF0IGAzLjAgKGN1c3RvbSknIGlzIG9ubHkgdXNlZCB0byBjcmVhdGUgc291cmNlIHBhY2thZ2VzIgorbXNnc3RyICIiCisiTGUgZm9ybWF0IMKrwqAzLjAgKHBlcnNvbm5hbGlzw6kpwqDCuyAowqvCoDMuMCAoY3VzdG9tKcKgwrspIG4nZXN0IHV0aWxpc8OpIHF1ZSBwb3VyICIKKyJjcsOpZXIgZGVzIHBhcXVldHMgc291cmNlIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvY3VzdG9tLnBtOjQ2Cittc2dpZCAibm8gZmlsZXMgaW5kaWNhdGVkIG9uIGNvbW1hbmQgbGluZSIKK21zZ3N0ciAicGFzIGRlIGZpY2hpZXIgaW5kaXF1w6kgw6AgbGEgbGlnbmUgZGUgY29tbWFuZGUiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9jdXN0b20ucG06NTMKK21zZ2lkICItLXRhcmdldC1mb3JtYXQgb3B0aW9uIGlzIG1pc3NpbmciCittc2dzdHIgIkwnb3B0aW9uIC0tdGFyZ2V0LWZvcm1hdCBlc3QgYWJzZW50ZSIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL25hdGl2ZS5wbTo1NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bnJlY29nbml6ZWQgZmlsZSBmb3IgYSBuYXRpdmUgc291cmNlIHBhY2thZ2U6ICVzIgorbXNnc3RyICJmaWNoaWVyIG5vbiByZWNvbm51IHBvdXIgdW4gcGFxdWV0IHNvdXJjZSBuYXRpZsKgOsKgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9naXQucG06NTUKK21zZ2lkICIiCisiVGhpcyBzb3VyY2UgcGFja2FnZSBjYW4gb25seSBiZSBtYW5pcHVsYXRlZCB1c2luZyBnaXQsIHdoaWNoIGlzIG5vdCBpbiB0aGUgIgorIlBBVEguIgorbXNnc3RyICIiCisiQ2UgcGFxdWV0IHNvdXJjZSBuZSBwZXV0IMOqdHJlIG1hbmlwdWzDqSBxdSdhdmVjIGdpdCwgcXVpIG4nZXN0IHBhcyBhY2Nlc3NpYmxlICIKKyJkYW5zIGxlIGNoZW1pbiBkZSByZWNoZXJjaGUgcGFyIGTDqWZhdXQgKFBBVEgpLiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2dpdC5wbTo2MworIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisic291cmNlIGRpcmVjdG9yeSBpcyBub3QgdGhlIHRvcCBkaXJlY3Rvcnkgb2YgYSBnaXQgcmVwb3NpdG9yeSAoJXMvLmdpdCBub3QgIgorInByZXNlbnQpLCBidXQgRm9ybWF0IGdpdCB3YXMgc3BlY2lmaWVkIgorbXNnc3RyICIiCisibGUgcsOpcGVydG9pcmUgc291cmNlIG4nZXN0IHBhcyBsZSBzb21tZXQgZCd1biBkw6lww7R0IGdpdCAoJXMvLmdpdCBhYnNlbnQpICIKKyJiaWVuIHF1ZSBsZSBmb3JtYXQgZ2l0IGFpdCDDqXTDqSBpbmRpcXXDqSIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2dpdC5wbTo2OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJnaXQgcmVwb3NpdG9yeSAlcyB1c2VzIHN1Ym1vZHVsZXMuIFRoaXMgaXMgbm90IHlldCBzdXBwb3J0ZWQuIgorbXNnc3RyICIiCisibGUgZMOpcMO0dCBnaXQgJXMgdXRpbGlzZSBkZXMgc291cy1tb2R1bGVzLiBDZWxhIG4nZXN0IGFjdHVlbGxlbWVudCBwYXMgZ8OpcsOpLiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2dpdC5wbTo5MAorbXNnaWQgImRvZXNuJ3QgY29udGFpbiBhIGdpdCByZXBvc2l0b3J5IgorbXNnc3RyICJuZSBjb250aWVudCBwYXMgZGUgZMOpcMO0dCBnaXQiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9naXQucG06MTMxCittc2dpZCAiZ2l0IGxzLWZpbGVzIGV4aXRlZCBub256ZXJvIgorbXNnc3RyICLDqXRhdCBkZSBzb3J0aWUgbm9uIG51bCBkZSBnaXQgbHMtZmlsZXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9naXQucG06MTQ5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNyZWF0aW5nIHNoYWxsb3cgY2xvbmUgd2l0aCBkZXB0aCAlcyIKK21zZ3N0ciAiIgorIkNyw6lhdGlvbiBkJ3VuIGNsb25lIHN1cGVyZmljaWVsICjCq8Kgc2hhbGxvdyBjbG9uZcKgwrspIGF2ZWMgbGEgcHJvZm9uZGV1ciAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2dpdC5wbToxNjUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiYnVuZGxpbmc6ICVzIgorbXNnc3RyICJqb25jdGlvbiAoYnVuZGxpbmcpwqA6wqAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2dpdC5wbToyMDEKK21zZ2lkICJmb3JtYXQgdjMuMCAoZ2l0KSB1c2VzIG9ubHkgb25lIC5naXQgZmlsZSIKK21zZ3N0ciAibGUgZm9ybWF0IHYzLjAgKGdpdCkgbid1dGlsaXNlIHF1J3VuIGZpY2hpZXIgLmdpdCIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2dpdC5wbToyMDcKK21zZ2lkICJmb3JtYXQgdjMuMCAoZ2l0KSB1c2VzIG9ubHkgb25lIC5naXRzaGFsbG93IGZpbGUiCittc2dzdHIgImxlIGZvcm1hdCB2My4wIChnaXQpIG4ndXRpbGlzZSBxdSd1biBmaWNoaWVyIC5naXRzaGFsbG93IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvZ2l0LnBtOjIxMAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJmb3JtYXQgdjMuMCAoZ2l0KSB1bmtub3duIGZpbGU6ICVzIgorbXNnc3RyICJmaWNoaWVyIGluY29ubnUgcG91ciBsZSBmb3JtYXQgdjMuMCAoZ2l0KcKgOsKgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9naXQucG06MjE0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImZvcm1hdCB2My4wIChnaXQpIGV4cGVjdGVkICVzIgorbXNnc3RyICJsZSBmb3JtYXQgdjMuMCAoZ2l0KSBhdHRlbmQgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9naXQucG06MjIwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNsb25pbmcgJXMiCittc2dzdHIgImNsb25hZ2UgZGUgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9naXQucG06MjI3Cittc2dpZCAic2V0dGluZyB1cCBzaGFsbG93IGNsb25lIgorbXNnc3RyICJjb25maWd1cmF0aW9uIGR1IGNsb25lIHN1cGVyZmljaWVsIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06NzMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgc2hvdWxkIGJlIGEgZGlyZWN0b3J5IG9yIG5vbi1leGlzdGluZyIKK21zZ3N0ciAiJXMgZGV2cmFpdCDDqnRyZSB1biByw6lwZXJ0b2lyZSBvdSBuZSBwYXMgZXhpc3RlciIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjc5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIHNob3VsZCBiZSBhIGZpbGUgb3Igbm9uLWV4aXN0aW5nIgorbXNnc3RyICIlcyBkZXZyYWl0IMOqdHJlIHVuIGZpY2hpZXIgb3UgbmUgcGFzIGV4aXN0ZXIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbToxMjAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorInRoZSBzZXJpZXMgZmlsZSAoJXMpIGNvbnRhaW5zIHVuc3VwcG9ydGVkIG9wdGlvbnMgKCclcycsIGxpbmUgJXMpLCBkcGtnLSIKKyJzb3VyY2UgbWlnaHQgZmFpbCB3aGVuIGFwcGx5aW5nIHBhdGNoZXMuIgorbXNnc3RyICIiCisibGUgZmljaGllciDCq8Kgc2VyaWVzwqDCuyAoJXMpIGNvbnRpZW50IGRlcyBvcHRpb25zIG5vbiBnw6lyw6llcyAowqvCoCVzwqDCuywgbGlnbmUgIgorIiVzKSwgZHBrZy1zb3VyY2UgcG91cnJhaXQgw6ljaG91ZXIgZGFucyBsJ2FwcGxpY2F0aW9uIGRlcyBjb3JyZWN0aWZzLiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjEzOAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3QgbWtkaXIgJXMiCittc2dzdHIgImltcG9zc2libGUgZGUgY3LDqWVyIGxlIHLDqXBlcnRvaXJlICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06MjEyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbid0IGNyZWF0ZSBzeW1saW5rICVzIgorbXNnc3RyICJpbXBvc3NpYmxlIGRlIGxpcmUgbGUgbGllbiBzeW1ib2xpcXVlICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06Mjk0CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06Mjk3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVuc3VwcG9ydGVkIHZlcnNpb24gb2YgdGhlIHF1aWx0IG1ldGFkYXRhOiAlcyIKK21zZ3N0ciAidmVyc2lvbiBpbmNvbm51ZSBkZXMgbcOpdGFkb25uw6llcyBkZSBxdWlsdMKgOsKgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9TdWJzdHZhcnMucG06MTUwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImJhZCBsaW5lIGluIHN1YnN0dmFycyBmaWxlICVzIGF0IGxpbmUgJWQiCittc2dzdHIgImZpY2hpZXIgc3Vic3R2YXJzICVzwqA6IGxpZ25lICVkIG1hbCBmb3Jtw6llIgorCisjOiBzY3JpcHRzL0Rwa2cvU3Vic3R2YXJzLnBtOjIxNworIywgcGVybC1mb3JtYXQKK21zZ2lkICJ0b28gbWFueSBzdWJzdGl0dXRpb25zIC0gcmVjdXJzaXZlID8gLSBpbiBgJXMnIgorbXNnc3RyICJ0cm9wIGRlIHN1YnN0aXR1dGlvbnMgLSBtb2RlIHLDqWN1cnNpZsKgPyAtIGRhbnMgwqvCoCVzwqDCuyIKKworIzogc2NyaXB0cy9EcGtnL1N1YnN0dmFycy5wbToyMjQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5rbm93biBzdWJzdGl0dXRpb24gdmFyaWFibGUgJHslc30iCittc2dzdHIgInZhcmlhYmxlIGRlIHN1YnN0aXR1dGlvbiBpbmNvbm51ZSAkeyVzfSIKKworIzogc2NyaXB0cy9EcGtnL1N1YnN0dmFycy5wbToyNDgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW51c2VkIHN1YnN0aXR1dGlvbiB2YXJpYWJsZSAkeyVzfSIKK21zZ3N0ciAidmFyaWFibGUgZGUgc3Vic3RpdHV0aW9uIGludXRpbGlzw6llICR7JXN9IgorCisjOiBzY3JpcHRzL0Rwa2cvVmFycy5wbTozNAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJzb3VyY2UgcGFja2FnZSBuYW1lIGAlcycgY29udGFpbnMgaWxsZWdhbCBjaGFyYWN0ZXIgYCVzJyIKK21zZ3N0ciAiIgorImxlIG5vbSBkdSBwYXF1ZXQgc291cmNlIMKrwqAlc8KgwrsgY29udGllbnQgdW4gY2FyYWN0w6hyZSDCq8KgJXPCoMK7IG5vbiBhdXRvcmlzw6kiCisKKyM6IHNjcmlwdHMvRHBrZy9WYXJzLnBtOjM3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInNvdXJjZSBwYWNrYWdlIG5hbWUgYCVzJyBzdGFydHMgd2l0aCBub24tYWxwaGFudW0iCittc2dzdHIgIiIKKyJsZSBub20gZHUgcGFxdWV0IHNvdXJjZSDCq8KgJXPCoMK7IG5lIGNvbW1lbmNlIG5pIHBhciB1bmUgbGV0dHJlIG5pIHBhciB1biAiCisiY2hpZmZyZSIKKworIzogc2NyaXB0cy9EcGtnL1ZhcnMucG06NDYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAic291cmNlIHBhY2thZ2UgaGFzIHR3byBjb25mbGljdGluZyB2YWx1ZXMgLSAlcyBhbmQgJXMiCittc2dzdHIgImxlIHBhcXVldCBzb3VyY2UgYSBkZXV4IHZhbGV1cnMgZW4gY29uZmxpdMKgOiAlcyBldCAlcyIKKworIzogc2NyaXB0cy9EcGtnL1ZlbmRvci9EZWJpYW4ucG06MTA2CisjLCBmdXp6eSwgcGVybC1mb3JtYXQKKyN8IG1zZ2lkICJ1bmtub3duIGtleS12YWx1ZSAlcyIKK21zZ2lkICJ1bmtub3duIGhhcmRlbmluZyBmZWF0dXJlOiAlcyIKK21zZ3N0ciAiY2zDqSBjbMOpLXZhbGV1ciBpbmNvbm51ZSAlcyIKKworIzogc2NyaXB0cy9EcGtnL1ZlbmRvci9EZWJpYW4ucG06MTEwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImluY29ycmVjdCB2YWx1ZSBpbiBoYXJkZW5pbmcgb3B0aW9uIG9mIERFQl9CVUlMRF9NQUlOVF9PUFRJT05TOiAlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvVmVuZG9yL1VidW50dS5wbTo2MSBzY3JpcHRzL0Rwa2cvVmVuZG9yL1VidW50dS5wbTo2MworbXNnaWQgIiIKKyJWZXJzaW9uIG51bWJlciBzdWdnZXN0cyBVYnVudHUgY2hhbmdlcywgYnV0IE1haW50YWluZXI6IGRvZXMgbm90IGhhdmUgVWJ1bnR1ICIKKyJhZGRyZXNzIgorbXNnc3RyICIiCisiTGUgbnVtw6lybyBkZSB2ZXJzaW9uIGluZGlxdWUgZGVzIG1vZGlmaWNhdGlvbnMgVWJ1bnR1IG1haXMgbGUgY2hhbXAgIgorIsKrwqBNYWludGFpbmVyOsKgwrsgbmUgY29tcG9ydGUgcGFzIGQnYWRyZXNzZSBVYnVudHUiCisKKyM6IHNjcmlwdHMvRHBrZy9WZW5kb3IvVWJ1bnR1LnBtOjY3Cittc2dpZCAiIgorIlZlcnNpb24gbnVtYmVyIHN1Z2dlc3RzIFVidW50dSBjaGFuZ2VzLCBidXQgdGhlcmUgaXMgbm8gWFNCQy1PcmlnaW5hbC0iCisiTWFpbnRhaW5lciBmaWVsZCIKK21zZ3N0ciAiIgorIkxlIG51bcOpcm8gZGUgdmVyc2lvbiBpbmRpcXVlIGRlcyBtb2RpZmljYXRpb25zIFVidW50dSBtYWlzIGlsIG4nZXhpc3RlIHBhcyAiCisiZGUgY2hhbXAgwqvCoFhTQkMtT3JpZ2luYWwtTWFpbnRhaW5lcjrCoMK7IgorCisjOiBzY3JpcHRzL0Rwa2cvVmVuZG9yL1VidW50dS5wbToxMjMKK21zZ2lkICInaGFyZGVuaW5nJyBmbGFnIGZvdW5kIGJ1dCAnaGFyZGVuaW5nLXdyYXBwZXInIG5vdCBpbnN0YWxsZWQiCittc2dzdHIgImRyYXBlYXUgwqvCoGhhcmRlbmluZ8KgwrsgbWFpcyDCq8KgaGFyZGVuaW5nLXdyYXBwZXLCoMK7IG4nZXN0IHBhcyBpbnN0YWxsw6kiCisKKyM6IHNjcmlwdHMvRHBrZy9WZW5kb3IvVWJ1bnR1LnBtOjE0MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJvdmVycmlkaW5nICVzIGluIGVudmlyb25tZW50OiAlcyIKK21zZ3N0ciAicmVtcGxhY2VtZW50IGRlICVzIGRhbnMgbCdlbnZpcm9ubmVtZW50wqA6ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvVmVyc2lvbi5wbToyMDQgc2NyaXB0cy9EcGtnL1ZlcnNpb24ucG06MjA2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGlzIG5vdCBhIHZhbGlkIHZlcnNpb24iCittc2dzdHIgIiVzIG4nZXN0IHBhcyB1bmUgdmVyc2lvbiB2YWxhYmxlIgorCisjOiBzY3JpcHRzL0Rwa2cvVmVyc2lvbi5wbTozNzEKK21zZ2lkICJ2ZXJzaW9uIG51bWJlciBjYW5ub3QgYmUgZW1wdHkiCittc2dzdHIgImxlIG51bcOpcm8gZGUgdmVyc2lvbiBuZSBwZXV0IHBhcyDDqnRyZSB2aWRlIgorCisjOiBzY3JpcHRzL0Rwa2cvVmVyc2lvbi5wbTozNzYKKyMsIGZ1enp5CisjfCBtc2dpZCAidmVyc2lvbiBudW1iZXIgY2Fubm90IGJlIGVtcHR5IgorbXNnaWQgInZlcnNpb24gbnVtYmVyIGRvZXMgbm90IHN0YXJ0IHdpdGggZGlnaXQiCittc2dzdHIgImxlIG51bcOpcm8gZGUgdmVyc2lvbiBuZSBwZXV0IHBhcyDDqnRyZSB2aWRlIgorCisjOiBzY3JpcHRzL0Rwa2cvVmVyc2lvbi5wbTozODEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidmVyc2lvbiBudW1iZXIgY29udGFpbnMgaWxsZWdhbCBjaGFyYWN0ZXIgYCVzJyIKK21zZ3N0ciAibGUgbnVtw6lybyBkZSB2ZXJzaW9uIGNvbnRpZW50IHVuIGNhcmFjdMOocmUgwqvCoCVzwqDCuyBub24gYXV0b3Jpc8OpIgorCisjOiBzY3JpcHRzL0Rwa2cvVmVyc2lvbi5wbTozODYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZXBvY2ggcGFydCBvZiB0aGUgdmVyc2lvbiBudW1iZXIgaXMgbm90IGEgbnVtYmVyOiAnJXMnIgorbXNnc3RyICIiCisibGEgcGFydGllIGQnw6hyZSAowqvCoGVwb2NowqDCuykgZHUgbnVtw6lybyBkZSB2ZXJzaW9uIG4nZXN0IHBhcyB1biBub21icmXCoDrCoMKrwqAlc8KgwrsiCisKKyMsIGZ1enp5CisjfnwgbXNnaWQgIiVzOiBleHBvcnQgJXMgZnJvbSBkcGtnLWJ1aWxkZmxhZ3MgKG9yaWdpbjogJXMpOiAlc1xuIgorI34gbXNnaWQgIiVzOiBkcGtnLWJ1aWxkZmxhZ3MgKG9yaWdpbjogJXMpOiAlcyA9ICVzXG4iCisjfiBtc2dzdHIgIiVzOiBleHBvcnQgZGUgJXMgZGVwdWlzIGRwa2ctYnVpbGRmbGFncyAob3JpZ2luZcKgOiAlcyk6ICVzXG4iCisKKyN+IG1zZ2lkICIxIHRvIDMgYXJncyBleHBlY3RlZFxuIgorI34gbXNnc3RyICJkZSAxIMOgIDMgcGFyYW3DqHRyZXMgYXR0ZW5kdXNcbiIKKworI34gbXNnaWQgIm5lZWQgYW4gYWN0aW9uIG9wdGlvbiIKKyN+IG1zZ3N0ciAib3B0aW9uIGQnYWN0aW9uIGluZGlzcGVuc2FibGUiCisKKyN+IG1zZ2lkICJlbnRyeSBvZiBBUFQncyAlcyBmaWxlIgorI34gbXNnc3RyICJlbnRyw6llIGR1IGZpY2hpZXIgJXMgZCdBUFQiCisKKyN+IG1zZ2lkICJubyBvcmlnLnRhciBmaWxlIGZvdW5kIgorI34gbXNnc3RyICJwYXMgZGUgZmljaGllciBvcmlnLnRhciB0cm91dsOpIgorCisjfiBtc2dpZCAiY2Fubm90IHJlbmFtZSAlcyB0byAlcyIKKyN+IG1zZ3N0ciAiaW1wb3NzaWJsZSBkZSByZW5vbW1lciAlcyBlbiAlcyIKKworI34gbXNnaWQgImV4ZWMgJXMiCisjfiBtc2dzdHIgImV4ZWMgJXMiCisKKyN+IG1zZ2lkICJjYW5ub3QgZXhlYyBkcGtnIgorI34gbXNnc3RyICJpbXBvc3NpYmxlIGQnZXjDqWN1dGVyIGRwa2ciCisKKyN+IG1zZ2lkICJnaXQgY29uZmlnIGV4aXRlZCBub256ZXJvIgorI34gbXNnc3RyICLDqXRhdCBub24gbnVsIGRlIHNvcnRpZSBwb3VyIGxhIGNvbmZpZ3VyYXRpb24gZGUgZ2l0IgorCisjfiBtc2dpZCAiZXhlY3V0YWJsZSBiaXQgc2V0IG9uICVzOyBjbGVhcmluZyIKKyN+IG1zZ3N0ciAiYml0IGV4w6ljdXRhYmxlIHBsYWPDqSBzdXIgJXMsIHN1cHByZXNzaW9uIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBgJXMnIgorI34gbXNnc3RyICJpbXBvc3NpYmxlIGRlIHN1cHByaW1lciAlcyIKKworI34gbXNnaWQgIm1vZGlmeWluZyAuZ2l0L2NvbmZpZyB0byBjb21tZW50IG91dCBzb21lIHNldHRpbmdzIgorI34gbXNnc3RyICJtb2RpZmljYXRpb24gZGUgLmdpdC9jb25maWcgcG91ciBhY3RpdmVyIGNlcnRhaW5zIHLDqWdsYWdlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byBhcHBlbmQgdG8gJXMiCisjfiBtc2dzdHIgImltcG9zc2libGUgZCdham91dGVyIMOgICVzIgorCisjfiBtc2dpZCAiVGhlIGZvbGxvd2luZyBzZXR0aW5nKHMpIHdlcmUgZGlzYWJsZWQgYnkgZHBrZy1zb3VyY2UiCisjfiBtc2dzdHIgIkxlKHMpIHLDqWdsYWdlKHMpIHN1aXZhbnQocykgZXN0KHNvbnQpIGTDqXNhY3RpdsOpKHMpIHBhciBkcGtnLXNvdXJjZSIKKworI34gbXNnaWQgIm5lZWQgLXggb3IgLWIiCisjfiBtc2dzdHIgIi14IG91IC1iIG7DqWNlc3NhaXJlIgorCisjfiBtc2dpZCAib2JqZHVtcCBvbiBgJXMnIgorI34gbXNnc3RyICJvYmpkdW1wIHN1ciAlcyIKKworI34gbXNnaWQgIiVzOiBzZXQgJXMgdG8gZGVmYXVsdCB2YWx1ZTogJXNcbiIKKyN+IG1zZ3N0ciAiJXPCoDogZMOpZmluaXIgJXMgw6AgbGEgdmFsZXVyIHBhciBkw6lmYXV0wqA6ICVzXG4iCisKKyN+IG1zZ2lkICJjYW5ub3Qgb3BlbiAuZHNjIGZpbGUgJXMiCisjfiBtc2dzdHIgImltcG9zc2libGUgZCdvdXZyaXIgbGUgZmljaGllciAuZHNjICVzIgorCisjfiBtc2dpZCAic291cmNlIGNvbnRyb2wgZmlsZSAlcyIKKyN+IG1zZ3N0ciAiZmljaGllciBkZSBjb250csO0bGUgZGVzIHNvdXJjZXMgJXMiCisKKyN+IG1zZ2lkICJGaWxlcyBmaWVsZCBjb250YWlucyBiYWQgbGluZSBgJXMnIgorI34gbXNnc3RyICJsZSBjaGFtcCBGaWxlcyBjb250aWVudCB1bmUgbGlnbmUgbWFsIGZvcm3DqWUgwqvCoCVzwqDCuyIKKworI34gbXNnaWQgIkNvbmZsaWN0aW5nIHNpemVzIGAldScgYW5kIGAldScgZm9yIGZpbGUgYCVzJyIKKyN+IG1zZ3N0ciAiVGFpbGxlcyBlbiBjb25mbGl0wqA6IMKrwqAldcKgwrsgZXQgwqvCoCV1wqDCuyBwb3VyIGxlIGZpY2hpZXIgwqvCoCVzwqDCuyIKKworI34gbXNnaWQgImZvcmsgZm9yIGR1IgorI34gbXNnc3RyICJmb3JrIHBvdXIgZHUiCisKKyN+IG1zZ2lkICJzb3VyY2UgZm9ybWF0IGAlcycgZGlzY2FyZGVkOiAlcyIKKyN+IG1zZ3N0ciAiZm9ybWF0IHNvdXJjZSDCq8KgJXPCoMK7IGFiYW5kb25uw6nCoDrCoCVzIgorCisjfiBtc2dpZCAiZm9yayBmb3IgJXMiCisjfiBtc2dzdHIgImZvcmsgZm9yICVzIgorCisjfiBtc2dpZCAiVW5rbm93biBjaGVja3N1bSBhbGdvcml0aG0gYCVzJywgaWdub3JpbmciCisjfiBtc2dzdHIgIkFsZ29yaXRobWUgZGUgY2FsY3VsIGRlIHNvbW1lIGRlIGNvbnRyw7RsZSAlcyBpbmNvbm51IGV0IGlnbm9yw6kiCisKKyN+IG1zZ2lkICJDaGVja3N1bXMtJXMgZmllbGQgY29udGFpbnMgYmFkIGxpbmUgYCVzJyIKKyN+IG1zZ3N0ciAiTGUgY2hhbXAgQ2hlY2tzdW1zLSVzIGNvbnRpZW50IHVuZSBsaWduZSBtYWwgZm9ybcOpZSDCq8KgJXPCoMK7IgorCisjfiBtc2dpZCAiZmlsZSBgJXMnIGxpc3RlZCB0d2ljZSBpbiBGaWxlcyBmaWVsZCIKKyN+IG1zZ3N0ciAibGUgZmljaGllciDCq8KgJXPCoMK7IGVzdCBtZW50aW9ubsOpIGRldXggZm9pcyBkYW5zIGxlIGNoYW1wIEZpbGVzIgorCisjfiBtc2dpZCAiYXBwbHlpbmcgYWxsIHBhdGNoZXMgd2l0aCAlcyIKKyN+IG1zZ3N0ciAiYXBwbGljYXRpb24gZGUgdG91dGVzIGxlcyBjb3JyZWN0aW9ucyBhdmVjICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIG9wZW4gc3Vic3R2YXJzIGZpbGUgJXM6ICVzIgorI34gbXNnc3RyICJpbXBvc3NpYmxlIGQnb3V2cmlyIGxlIGZpY2hpZXIgc3Vic3R2YXJzICVzwqA6ICVzIgorCisjfiBtc2dpZCAiQ291bGRuJ3QgY2FsbCBkcGtnLWRlYiBvbiAlczogJXMsIHNraXBwaW5nIHBhY2thZ2UiCisjfiBtc2dzdHIgIkltcG9zc2libGUgZCdhcHBlbGVyIGRwa2ctZGViIHN1ciAlc8KgOiAlcywgcGFxdWV0IHNhdXTDqSIKKworI34gbXNnaWQgIkNvdWxkbid0IG9wZW4gb3ZlcnJpZGUgZmlsZSAlcyIKKyN+IG1zZ3N0ciAiSW1wb3NzaWJsZSBkJ291dnJpciBsZSBmaWNoaWVyIGQnb3ZlcnJpZGUgJXMiCisKKyN+IG1zZ2lkICIiCisjfiAiVW5wcm9jZXNzZWQgdGV4dCBmcm9tICVzIGNvbnRyb2wgZmlsZTsgaW5mbzpcbiIKKyN+ICIlcyAvICVzIgorI34gbXNnc3RyICIiCisjfiAiVGV4dGUgbm9uIHRyYWl0w6kgZHUgZmljaGllciBkZSBjb250csO0bGUgJXPCoDsgaW5mb8KgOlxuIgorI34gIiVzIC8gJXMiCisKKyN+IG1zZ2lkICJjYW4ndCByZWFkIG92ZXJyaWRlIGZpbGUgJXMiCisjfiBtc2dzdHIgImltcG9zc2libGUgZGUgbGlyZSBsZSBmaWNoaWVyIGQnb3ZlcnJpZGUgJXMiCisKKyN+IG1zZ2lkICJlcnJvciBjbG9zaW5nIG92ZXJyaWRlIGZpbGUiCisjfiBtc2dzdHIgImVycmV1ciBlbiBmZXJtYW50IGxlIGZpY2hpZXIgZCdvdmVycmlkZSIKKworI34gbXNnaWQgImNhbid0IHJlYWQgc291cmNlIG92ZXJyaWRlIGZpbGUgJXMiCisjfiBtc2dzdHIgImltcG9zc2libGUgZGUgbGlyZSBsZSBmaWNoaWVyIGQnb3ZlcnJpZGUgcG91ciBsZXMgc291cmNlcyAlcyIKKworI34gbXNnaWQgImVycm9yIGNsb3Npbmcgc291cmNlIG92ZXJyaWRlIGZpbGUiCisjfiBtc2dzdHIgImVycmV1ciBlbiBmZXJtYW50IGxlIGZpY2hpZXIgZCdvdmVycmlkZSBwb3VyIGxlcyBzb3VyY2VzIgorCisjLCBmdXp6eQorI34gbXNnaWQgInBhcnNpbmcgYW4gZW1wdHkgZmlsZSAlcyIKKyN+IG1zZ3N0ciAiaW1wb3NzaWJsZSBkJ291dnJpciBsZSBmaWNoaWVyICVzIgorCisjfiBtc2dpZCAiZmF0YWwgZXJyb3IiCisjfiBtc2dzdHIgImVycmV1ciBmYXRhbGUiCisKKyN+IG1zZ2lkICJjYW4ndCBvcGVuIGZpbGUgJXM6ICVzIgorI34gbXNnc3RyICJpbXBvc3NpYmxlIGQnb3V2cmlyIGxlIGZpY2hpZXIgJXPCoDogJXMiCisKKyN+IG1zZ2lkICJjYW4ndCBsb2FkIElPOjpTdHJpbmc6ICVzIgorI34gbXNnc3RyICJpbXBvc3NpYmxlIGRlIGNoYXJnZXIgSU86OlN0cmluZzogJXMiCisKKyN+IG1zZ2lkICJubyBjaGFuZ2Vsb2cgZmlsZSBzcGVjaWZpZWQiCisjfiBtc2dzdHIgInBhcyBkZSBmaWNoaWVyIGRlIGNoYW5nZW1lbnRzIGluZGlxdcOpIgorCisjfiBtc2dpZCAiY2FuJ3QgY2xvc2UgZmlsZSAlczogJXMiCisjfiBtc2dzdHIgImltcG9zc2libGUgZGUgZmVybWVyIGxlIGZpY2hpZXIgJXPCoDogJXMiCisKKyN+IG1zZ2lkICJleGVjIGR1IgorI34gbXNnc3RyICJleGVjIGR1IgorCisjfiBtc2dpZCAiJXMgaGFzIFBHUCBzdGFydCB0b2tlbiBidXQgbm90IGVuZCB0b2tlbiIKKyN+IG1zZ3N0ciAiJXMgcG9zc8OoZGUgdW4gaW5kaWNhdGV1ciBkZSBkw6lidXQgZGUgUEdQIG1haXMgcGFzIGRlIGZpbiIKKworI34gbXNnaWQgImNhbid0IHJlYWQgJXM6ICVzIgorI34gbXNnc3RyICJpbXBvc3NpYmxlIGRlIGxpcmUgJXPCoDogJXMiCisKKyN+IG1zZ2lkICJlcnJvciBjbG9zaW5nICVzOiAlcyIKKyN+IG1zZ3N0ciAiZXJyZXVyIGVuIGZlcm1hbnQgJXPCoDogJXMiCisKKyN+IG1zZ2lkICIlcyBpbnZhbGlkIChjb250YWlucyBibGFuayBsaW5lKSIKKyN+IG1zZ3N0ciAiJXMgaW52YWxpZGUgKGNvbnRpZW50IHVuZSBsaWduZSBibGFuY2hlKSIKKworI34gbXNnaWQgImR1cGxpY2F0ZSBzb3VyY2UgZmllbGQgaW4gJXMiCisjfiBtc2dzdHIgImNoYW1wIHNvdXJjZSBlbiBkb3VibGUgZGFucyAlcyIKKworI34gbXNnaWQgImludmFsaWQgc291cmNlIGZpZWxkIGluICVzIgorI34gbXNnc3RyICJjaGFtcCBzb3VyY2UgaW52YWxpZGUgZGFucyAlcyIKKworI34gbXNnaWQgImR1cGxpY2F0ZSBiaW5hcnkgZmllbGQgaW4gJXMiCisjfiBtc2dzdHIgImNoYW1wIGJpbmFyeSBlbiBkb3VibGUgZGFucyAlcyIKKworI34gbXNnaWQgImNhbid0IGZvcmsiCisjfiBtc2dzdHIgImZvcmsgaW1wb3NzaWJsZSIKKworI34gbXNnaWQgImNhbm5vdCBmb3JrIGZvciBkcGtnIC0tc2VhcmNoIgorI34gbXNnc3RyICJmb3JrIGltcG9zc2libGUgcG91ciBkcGtnIC0tc2VhcmNoIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIG9wZW4gb3N0YWJsZSIKKyN+IG1zZ3N0ciAiaW1wb3NzaWJsZSBkJ291dnJpciDCq8Kgb3N0YWJsZcKgwrsiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gb3BlbiB0cmlwbGV0dGFibGUiCisjfiBtc2dzdHIgImltcG9zc2libGUgZCdvdXZyaXIgwqvCoHRyaXBsZXR0YWJsZcKgwrsiCisKKyN+IG1zZ2lkICJjYW5ub3QgZm9yayBmb3Igb2JqZHVtcCIKKyN+IG1zZ3N0ciAiZm9yayBpbXBvc3NpYmxlIHBvdXIgb2JqZHVtcCIKKworI34gbXNnaWQgImNhbid0IHdyaXRlICVzIgorI34gbXNnc3RyICJpbXBvc3NpYmxlIGQnw6ljcmlyZSBzdXIgJXMiCisKKyN+IG1zZ2lkICJjYW4ndCByZWFkICVzIgorI34gbXNnc3RyICJpbXBvc3NpYmxlIGRlIGxpcmUgJXMiCisKKyN+IG1zZ2lkICJTdHJhbmdlIHRleHQgZnJvbSAnbWQ1c3VtIDwgJXMnOiAnJXMnIgorI34gbXNnc3RyICJUZXh0ZSDDqXRyYW5nZSBwcm9kdWl0IHBhciDCq8KgbWQ1c3VtIDwgJXPCoMK7wqA6IMKrwqAlc8KgwrsiCisKKyN+IG1zZ2lkICJDb3VsZG4ndCBzdGF0ICVzIgorI34gbXNnc3RyICJzdGF0IGRlICVzIGltcG9zc2libGUiCisKKyN+IG1zZ2lkICJlcnJvciBkb2luZyBmc3RhdCBvbiAlczoiCisjfiBtc2dzdHIgImVycmV1ciBsb3JzIGRlIGZzdGF0ICVzwqA6IgorCisjfiBtc2dpZCAiY2FuJ3QgZHVwICVzOiIKKyN+IG1zZ3N0ciAiZHVwICVzIGltcG9zc2libGXCoDoiCisKKyN+IG1zZ2lkICJjYW4ndCByZXdpbmQgJXM6IgorI34gbXNnc3RyICJpbXBvc3NpYmxlIGRlIHJlbWJvYmluZXIgJXPCoDoiCisKKyN+IG1zZ2lkICJjYW4ndCBleGVjIG1kNXN1bToiCisjfiBtc2dzdHIgImV4ZWMgbWQ1c3VtIGltcG9zc2libGXCoDoiCisKKyN+IG1zZ2lkICJpbnZhbGlkIG1kNSBvdXRwdXQgZm9yICVzICglcykiCisjfiBtc2dzdHIgInLDqXN1bHRhdCBtZDUgbm9uIHZhbGFibGUgcG91ciAlcyAoJXMpIgorCisjfiBtc2dpZCAiVXNhZ2U6IDgyMi1kYXRlIgorI34gbXNnc3RyICJTeW50YXhlwqA6IDgyMi1kYXRlIgorCisjfiBtc2dpZCAiVGhpcyBwcm9ncmFtIGlzIGRlcHJlY2F0ZWQuIFBsZWFzZSB1c2UgJ2RhdGUgLVInIGluc3RlYWQuIgorI34gbXNnc3RyICIiCisjfiAiQ2UgcHJvZ3JhbW1lIGVzdCBvYnNvbMOodGUuIFZldWlsbGV6IHV0aWxpc2VyIMOgIGxhIHBsYWNlIMKrwqBkYXRlIC1SwqDCuy4iCisKKyN+IG1zZ2lkICJjYW5ub3QgY29tYmluZSAlcyBhbmQgLVMiCisjfiBtc2dzdHIgImltcG9zc2libGUgZGUgY29tYmluZXIgJXMgZXQgLVMiCisKKyN+IG1zZ2lkICIiCisjfiAic3Vic3R2YXJzIHN1cHBvcnQgaXMgZGVwcmVjYXRlZCAoc2VlIFJFQURNRS5mZWF0dXJlLXJlbW92YWwtc2NoZWR1bGUpIgorI34gbXNnc3RyICIiCisjfiAiTGEgZ2VzdGlvbiBkZSBzdWJzdHZhcnMgZXN0IG9ic29sw6h0ZSAodm9pciBsZSBmaWNoaWVyIFJFQURNRS5mZWF0dXJlLSIKKyN+ICJyZW1vdmFsLXNjaGVkdWxlKS4iCisKKyN+IG1zZ2lkICJEcGtnOjpEZXBzOjpTaW1wbGUgY2FuJ3QgZXZhbHVhdGUgaW1wbGljYXRpb24gd2l0aCBhICVzISIKKyN+IG1zZ3N0ciAiRHBrZzo6RGVwczo6U2ltcGxlIG5lIHBldXQgcGFzIMOpdmFsdWVyIGwnaW1wbGljYXRpb24gYXZlYyB1biAlcyEiCisKKyN+IG1zZ2lkICJmYWlsdXJlIgorI34gbXNnc3RyICLDqWNoZWMiCisKKyN+IG1zZ2lkICJmaWVsZCAlcyBoYXMgbmV3bGluZSB0aGVuIG5vbiB3aGl0ZXNwYWNlID4lczwiCisjfiBtc2dzdHIgIiIKKyN+ICJsZSBjaGFtcCAlcyBjb250aWVudCB1biBjYXJhY3TDqHJlIG5vdXZlbGxlIGxpZ25lIHB1aXMgdW4gY2FyYWN0w6hyZSA+JXM8IgorCisjfiBtc2dpZCAiZmllbGQgJXMgaGFzIGJsYW5rIGxpbmVzID4lczwiCisjfiBtc2dzdHIgImxlIGNoYW1wICVzIGNvbnRpZW50IGRlcyBsaWduZXMgYmxhbmNoZXMgPiVzPCIKKworI34gbXNnaWQgImZpZWxkICVzIGhhcyB0cmFpbGluZyBuZXdsaW5lID4lczwiCisjfiBtc2dzdHIgImxlIGNoYW1wICVzIHNlIHRlcm1pbmUgcGFyIHVuIGNhcmFjdMOocmUgbm91dmVsbGUgbGlnbmUgPiVzPCIKKworI34gbXNnaWQgImludmFsaWQgZXhlYyBwYXJhbWV0ZXIgaW4gZm9ya19hbmRfZXhlYygpIgorI34gbXNnc3RyICJwYXJhbcOodHJlIGV4ZWMgbm9uIHZhbGFibGUgZGFucyBmb3JrX2FuZF9leGVjKCkiCisKKyN+IG1zZ2lkICJubyBQSUQgc2V0LCBjYW5ub3Qgd2FpdCBlbmQgb2YgcHJvY2VzcyIKKyN+IG1zZ3N0ciAicGFzIGRlIFBJRCBkw6lmaW5pLCBpbXBvc3NpYmxlIGQnYXR0ZW5kcmUgbGEgZmluIGR1IHByb2Nlc3N1cyIKKworI34gbXNnaWQgInRyaWVkIHRvIGFkZCBmaWxlIGAlcycgdHdpY2UiCisjfiBtc2dzdHIgImZpY2hpZXIgJXMgYWpvdXTDqSBkZXV4IGZvaXMiCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvcG8vaW5zZXJ0LWhlYWRlci5zaW4gYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvcG8vaW5zZXJ0LWhlYWRlci5zaW4KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjI2ZGUwMQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9wby9pbnNlcnQtaGVhZGVyLnNpbgpAQCAtMCwwICsxLDIzIEBACisjIFNlZCBzY3JpcHQgdGhhdCBpbnNlcnRzIHRoZSBmaWxlIGNhbGxlZCBIRUFERVIgYmVmb3JlIHRoZSBoZWFkZXIgZW50cnkuCisjCisjIEF0IGVhY2ggb2NjdXJyZW5jZSBvZiBhIGxpbmUgc3RhcnRpbmcgd2l0aCAibXNnaWQgIiwgd2UgZXhlY3V0ZSB0aGUgZm9sbG93aW5nCisjIGNvbW1hbmRzLiBBdCB0aGUgZmlyc3Qgb2NjdXJyZW5jZSwgaW5zZXJ0IHRoZSBmaWxlLiBBdCB0aGUgZm9sbG93aW5nCisjIG9jY3VycmVuY2VzLCBkbyBub3RoaW5nLiBUaGUgZGlzdGluY3Rpb24gYmV0d2VlbiB0aGUgZmlyc3QgYW5kIHRoZSBmb2xsb3dpbmcKKyMgb2NjdXJyZW5jZXMgaXMgYWNoaWV2ZWQgYnkgbG9va2luZyBhdCB0aGUgaG9sZCBzcGFjZS4KKy9ebXNnaWQgL3sKK3gKKyMgVGVzdCBpZiB0aGUgaG9sZCBzcGFjZSBpcyBlbXB0eS4KK3MvbS9tLwordGEKKyMgWWVzIGl0IHdhcyBlbXB0eS4gRmlyc3Qgb2NjdXJyZW5jZS4gUmVhZCB0aGUgZmlsZS4KK3IgSEVBREVSCisjIE91dHB1dCB0aGUgZmlsZSdzIGNvbnRlbnRzIGJ5IHJlYWRpbmcgdGhlIG5leHQgbGluZS4gQnV0IGRvbid0IGxvc2UgdGhlCisjIGN1cnJlbnQgbGluZSB3aGlsZSBkb2luZyB0aGlzLgorZworTgorYmIKKzphCisjIFRoZSBob2xkIHNwYWNlIHdhcyBub25lbXB0eS4gRm9sbG93aW5nIG9jY3VycmVuY2VzLiBEbyBub3RoaW5nLgoreAorOmIKK30KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9wby9wbC5nbW8gYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvcG8vcGwuZ21vCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjZmMjIyZWQKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvcG8vcGwuZ21vCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9wby9wbC5wbyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9wby9wbC5wbwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mODkyMzY1Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3BvL3BsLnBvCkBAIC0wLDAgKzEsMzc5NCBAQAorIyBUcmFuc2xhdGlvbiBvZiBkcGtnIHNjcmlwdHMgbWVzc2FnZXMgdG8gUG9saXNoCisjIENvcHlyaWdodCAoQykgMTk5OSBTb2Z0d2FyZSBpbiB0aGUgUHVibGljIEludGVyZXN0LCBJbmMuCisjIFRoaXMgZmlsZSBpcyBkaXN0cmlidXRlZCB1bmRlciB0aGUgc2FtZSBsaWNlbnNlIGFzIHRoZSBkcGtnIHBhY2thZ2UuCisjCisjIFJvYmVydCBMdWJlcmRhIDxyb2JlcnRAZGViaWFuLm9yZz4sIDIwMDctMjAwOAorIyBXaWt0b3IgV2FuZGFjaG93aWN6IDxzaXJ5ZXNAZ21haWwuY29tPiwgMjAwOC0yMDA5Cittc2dpZCAiIgorbXNnc3RyICIiCisiUHJvamVjdC1JZC1WZXJzaW9uOiBkcGtnIDEuMTUuNFxuIgorIlJlcG9ydC1Nc2dpZC1CdWdzLVRvOiBkZWJpYW4tZHBrZ0BsaXN0cy5kZWJpYW4ub3JnXG4iCisiUE9ULUNyZWF0aW9uLURhdGU6IDIwMTEtMTAtMTQgMDc6MTErMDIwMFxuIgorIlBPLVJldmlzaW9uLURhdGU6IDIwMTAtMDEtMDMgMTY6NDIrMDEwMFxuIgorIkxhc3QtVHJhbnNsYXRvcjogV2lrdG9yIFdhbmRhY2hvd2ljeiA8c2lyeWVzQGdtYWlsLmNvbT5cbiIKKyJMYW5ndWFnZS1UZWFtOiBQb2xpc2ggPGRlYmlhbi1sMTBuLXBvbGlzaEBsaXN0cy5kZWJpYW4ub3JnPlxuIgorIkxhbmd1YWdlOiBwbFxuIgorIk1JTUUtVmVyc2lvbjogMS4wXG4iCisiQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PVVURi04XG4iCisiQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdFxuIgorIlBsdXJhbC1Gb3JtczogbnBsdXJhbHM9MzsgcGx1cmFsPW49PTEgPyAwIDogbiUxMD49MiAmJiBuJTEwPD00ICYmIChuJTEwMDwxMCAiCisifHwgbiUxMDA+PTIwKSA/IDEgOiAyO1xuIgorCisjOiBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLnBsOjM2IHNjcmlwdHMvZHBrZy1idWlsZGZsYWdzLnBsOjMxCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjM3IHNjcmlwdHMvZHBrZy1jaGVja2J1aWxkZGVwcy5wbDozNgorIzogc2NyaXB0cy9kcGtnLWRpc3RhZGRmaWxlLnBsOjMzIHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjk2CisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDo1NiBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbDo0OQorIzogc2NyaXB0cy9kcGtnLW1lcmdlY2hhbmdlbG9ncy5wbDo1MyBzY3JpcHRzL2Rwa2ctbmFtZS5wbDo0NgorIzogc2NyaXB0cy9kcGtnLXBhcnNlY2hhbmdlbG9nLnBsOjMxIHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6NjAKKyM6IHNjcmlwdHMvZHBrZy1zY2Fuc291cmNlcy5wbDo3OCBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjUzMworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDo0NTUgc2NyaXB0cy9jaGFuZ2Vsb2cvZGViaWFuLnBsOjM0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIkRlYmlhbiAlcyB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICJEZWJpYW4gJXMgdyB3ZXJzamkgJXMuXG4iCisKKyM6IHNjcmlwdHMvZHBrZy1hcmNoaXRlY3R1cmUucGw6MzgKK21zZ2lkICIiCisiXG4iCisiQ29weXJpZ2h0IChDKSAxOTk5LTIwMDEgTWFyY3VzIEJyaW5rbWFubiA8YnJpbmttZEBkZWJpYW4ub3JnPi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDQtMjAwNSBTY290dCBKYW1lcyBSZW1uYW50IDxzY290dEBuZXRzcGxpdC5jb20+LiIKK21zZ3N0ciAiIgorIlxuIgorIkNvcHlyaWdodCAoQykgMTk5OS0yMDAxIE1hcmN1cyBCcmlua21hbm4gPGJyaW5rbWRAZGViaWFuLm9yZz4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDA0LTIwMDUgU2NvdHQgSmFtZXMgUmVtbmFudCA8c2NvdHRAbmV0c3BsaXQuY29tPi4iCisKKyM6IHNjcmlwdHMvZHBrZy1hcmNoaXRlY3R1cmUucGw6NDIgc2NyaXB0cy9kcGtnLWJ1aWxkZmxhZ3MucGw6MzYKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6NDQgc2NyaXB0cy9kcGtnLWRpc3RhZGRmaWxlLnBsOjM4CisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDoxMDIgc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6NjIKKyM6IHNjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsOjU1IHNjcmlwdHMvZHBrZy1wYXJzZWNoYW5nZWxvZy5wbDozNworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo1NDIgc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDo0NjIKKyM6IHNjcmlwdHMvY2hhbmdlbG9nL2RlYmlhbi5wbDozOQorbXNnaWQgIiIKKyJcbiIKKyJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAyIG9yXG4iCisibGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuXG4iCittc2dzdHIgIiIKKyJcbiIKKyJUZW4gcHJvZ3JhbSBqZXN0IG9wcm9ncmFtb3dhbmllbSB3b2xueW0sIHJvenBvd3N6ZWNobmlhbnltIG5hIHdhcnVua2FjaFxuIgorImxpY2VuY2ppIEdOVSB3IHdlcnNqaSBkcnVnaWVqIGx1YiBww7PFum5pZWpzemVqLiBCcmFrIEpBS0lFSktPTFdJRUsgIgorImd3YXJhbmNqaS5cbiIKKworIzogc2NyaXB0cy9kcGtnLWFyY2hpdGVjdHVyZS5wbDo1MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIFs8YWN0aW9uPl1cbiIKKyJcbiIKKyJPcHRpb25zOlxuIgorIiAgLWE8ZGViaWFuLWFyY2g+ICAgIHNldCBjdXJyZW50IERlYmlhbiBhcmNoaXRlY3R1cmUuXG4iCisiICAtdDxnbnUtc3lzdGVtPiAgICAgc2V0IGN1cnJlbnQgR05VIHN5c3RlbSB0eXBlLlxuIgorIiAgLUwgICAgICAgICAgICAgICAgIGxpc3QgdmFsaWQgYXJjaGl0ZWN0dXJlcy5cbiIKKyIgIC1mICAgICAgICAgICAgICAgICBmb3JjZSBmbGFnIChvdmVycmlkZSB2YXJpYWJsZXMgc2V0IGluIGVudmlyb25tZW50KS5cbiIKKyJcbiIKKyJBY3Rpb25zOlxuIgorIiAgLWwgICAgICAgICAgICAgICAgIGxpc3QgdmFyaWFibGVzIChkZWZhdWx0KS5cbiIKKyIgIC1lPGRlYmlhbi1hcmNoPiAgICBjb21wYXJlIHdpdGggY3VycmVudCBEZWJpYW4gYXJjaGl0ZWN0dXJlLlxuIgorIiAgLWk8YXJjaC1hbGlhcz4gICAgIGNoZWNrIGlmIGN1cnJlbnQgRGViaWFuIGFyY2hpdGVjdHVyZSBpcyA8YXJjaC1hbGlhcz4uXG4iCisiICAtcTx2YXJpYWJsZT4gICAgICAgcHJpbnRzIG9ubHkgdGhlIHZhbHVlIG9mIDx2YXJpYWJsZT4uXG4iCisiICAtcyAgICAgICAgICAgICAgICAgcHJpbnQgY29tbWFuZCB0byBzZXQgZW52aXJvbm1lbnQgdmFyaWFibGVzLlxuIgorIiAgLXUgICAgICAgICAgICAgICAgIHByaW50IGNvbW1hbmQgdG8gdW5zZXQgZW52aXJvbm1lbnQgdmFyaWFibGVzLlxuIgorIiAgLWMgPGNvbW1hbmQ+ICAgICAgIHNldCBlbnZpcm9ubWVudCBhbmQgcnVuIHRoZSBjb21tYW5kIGluIGl0LlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIgorIlXFvHljaWU6ICVzIFs8b3BjamE+IC4uLl0gWzxha2NqYT5dXG4iCisiXG4iCisiT3BjamU6XG4iCisiICAtYTxkZWJpYW4tYXJjaD4gICAgdXN0YXdpYSBiaWXFvMSFY8SFIGFyY2hpdGVrdHVyxJkgRGViaWFuYS5cbiIKKyIgIC10PGdudS1zeXN0ZW0+ICAgICB1c3Rhd2lhIGJpZcW8xIVjeSB0eXAgc3lzdGVtdSBHTlUuXG4iCisiICAtTCAgICAgICAgICAgICAgICAgd3nFm3dpZXRsYSBsaXN0xJkgcG9wcmF3bnljaCBhcmNoaXRla3R1ci5cbiIKKyIgIC1mICAgICAgICAgICAgICAgICBmbGFnYSB3eW11c3phbmlhIChuYWRwaXN1amUgem1pZW5uZSB1c3Rhd2lvbmUgdyAiCisixZtyb2Rvd2lza3UpLlxuIgorIlxuIgorIkFrY2plOlxuIgorIiAgLWwgICAgICAgICAgICAgICAgIHd5xZt3aWV0bGEgbGlzdMSZIHptaWVubnljaCAoZG9tecWbbG5pZSkuXG4iCisiICAtZTxkZWJpYW4tYXJjaD4gICAgcG9yw7N3bnVqZSB6IGJpZcW8xIVjxIUgYXJjaGl0ZWt0dXLEhSBEZWJpYW5hLlxuIgorIiAgLWk8YWxpYXMtYXJjaD4gICAgIHNwcmF3ZHphLCBjenkgYmllxbzEhWNhIGFyY2guIERlYmlhbmEgamVzdCA8YXJjaC1hbGlhcz4uXG4iCisiICAtcTx6bWllbm5hPiAgICAgICAgd3nFm3dpZXRsYSB0eWxrbyB3YXJ0b8WbxIcgPHptaWVubmVqPi5cbiIKKyIgIC1zICAgICAgICAgICAgICAgICB3ecWbd2lldGxhIHBvbGVjZW5pZSB1c3Rhd2lhasSFY2Ugem1pZW5uZSDFm3JvZG93aXNrYS5cbiIKKyIgIC11ICAgICAgICAgICAgICAgICB3ecWbd2lldGxhIHBvbGVjZW5pZSB1c3V3YWrEhWNlIHptaWVubmUgxZtyb2Rvd2lza2EuXG4iCisiICAtYyA8cG9sZWNlbmllPiAgICAgdXN0YXdpYSDFm3JvZG93aXNrbyBpIHd5a29udWplIHcgbmltIHBvbGVjZW5pZS5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICB3ecWbd2lldGxhIHRlbiBrb211bmlrYXQgcG9tb2N5LlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgIHd5xZt3aWV0bGEgaW5mb3JtYWNqZSBvIHdlcnNqaSBwcm9ncmFtdS5cbiIKKworIzogc2NyaXB0cy9kcGtnLWFyY2hpdGVjdHVyZS5wbDoxMjAgc2NyaXB0cy9kcGtnLWJ1aWxkZmxhZ3MucGw6OTEKKyM6IHNjcmlwdHMvZHBrZy1kaXN0YWRkZmlsZS5wbDo2OCBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDoxOTQKKyM6IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjEzMyBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbDoxNDEKKyM6IHNjcmlwdHMvZHBrZy1wYXJzZWNoYW5nZWxvZy5wbDoxMTMgc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDoxMTkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gYCVzJyIKK21zZ3N0ciAibmllem5hbmEgb3BjamEgXCIlc1wiIgorCisjOiBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLnBsOjE0NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmtub3duIERlYmlhbiBhcmNoaXRlY3R1cmUgJXMsIHlvdSBtdXN0IHNwZWNpZnkgR05VIHN5c3RlbSB0eXBlLCB0b28iCittc2dzdHIgIm5pZXpuYW5hIGFyY2hpdGVrdHVyYSBEZWJpYW5hICVzLCBuYWxlxbx5IHBvZGHEhyByw7N3bmllxbwgdHlwIHN5c3RlbXUgR05VIgorCisjOiBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLnBsOjE1MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmtub3duIEdOVSBzeXN0ZW0gdHlwZSAlcywgeW91IG11c3Qgc3BlY2lmeSBEZWJpYW4gYXJjaGl0ZWN0dXJlLCB0b28iCittc2dzdHIgIm5pZXpuYW55IHR5cCBzeXN0ZW11IEdOVSAlcywgbmFsZcW8eSBwb2RhxIcgcsOzd25pZcW8IGFyY2hpdGVrdHVyxJkgRGViaWFuYSIKKworIzogc2NyaXB0cy9kcGtnLWFyY2hpdGVjdHVyZS5wbDoxNTgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5rbm93biBkZWZhdWx0IEdOVSBzeXN0ZW0gdHlwZSBmb3IgRGViaWFuIGFyY2hpdGVjdHVyZSAlcyIKK21zZ3N0ciAibmllem5hbnkgZG9tecWbbG55IHR5cCBzeXN0ZW11IEdOVSBkbGEgYXJjaGl0ZWt0dXJ5IERlYmlhbmEgJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1hcmNoaXRlY3R1cmUucGw6MTYxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJEZWZhdWx0IEdOVSBzeXN0ZW0gdHlwZSAlcyBmb3IgRGViaWFuIGFyY2ggJXMgZG9lcyBub3QgbWF0Y2ggc3BlY2lmaWVkIEdOVSAiCisic3lzdGVtIHR5cGUgJXMiCittc2dzdHIgIiIKKyJEb215xZtsbnkgdHlwIHN5c3RlbXUgR05VICVzIGRsYSBhcmNoLiBEZWJpYW5hICVzIG5pZSBwYXN1amUgZG8gcG9kYW5lZ28gdHlwdSAiCisic3lzdGVtdSBHTlUgJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1hcmNoaXRlY3R1cmUucGw6MTgwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIlNwZWNpZmllZCBHTlUgc3lzdGVtIHR5cGUgJXMgZG9lcyBub3QgbWF0Y2ggZ2NjIHN5c3RlbSB0eXBlICVzLiIKK21zZ3N0ciAiUG9kYW55IHR5cCBzeXN0ZW11IEdOVSAlcyBuaWUgb2Rwb3dpYWRhIHR5cG93aSBzeXN0ZW11IGdjYyAlcy4iCisKKyM6IHNjcmlwdHMvZHBrZy1hcmNoaXRlY3R1cmUucGw6MjI1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGlzIG5vdCBhIHN1cHBvcnRlZCB2YXJpYWJsZSBuYW1lIgorbXNnc3RyICIlcyBuaWUgamVzdCBvYnPFgnVnaXdhbsSFIG5henfEhSB6bWllbm5laiIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkZmxhZ3MucGw6MzMKKyMsIGZ1enp5Cittc2dpZCAiIgorIlxuIgorIkNvcHlyaWdodCAoQykgMjAxMC0yMDExIFJhcGhhZWwgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPi4iCittc2dzdHIgIiIKKyJcbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDcgUmFwaGFlbCBIZXJ0em9nLlxuIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRmbGFncy5wbDo0NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8YWN0aW9uPl1cbiIKKyJcbiIKKyJBY3Rpb25zOlxuIgorIiAgLS1nZXQgPGZsYWc+ICAgICAgIG91dHB1dCB0aGUgcmVxdWVzdGVkIGZsYWcgdG8gc3Rkb3V0LlxuIgorIiAgLS1vcmlnaW4gPGZsYWc+ICAgIG91dHB1dCB0aGUgb3JpZ2luIG9mIHRoZSBmbGFnIHRvIHN0ZG91dDpcbiIKKyIgICAgICAgICAgICAgICAgICAgICB2YWx1ZSBpcyBvbmUgb2YgdmVuZG9yLCBzeXN0ZW0sIHVzZXIsIGVudi5cbiIKKyIgIC0tbGlzdCAgICAgICAgICAgICBvdXRwdXQgYSBsaXN0IG9mIHRoZSBmbGFncyBzdXBwb3J0ZWQgYnkgdGhlIGN1cnJlbnQgIgorInZlbmRvci5cbiIKKyIgIC0tZXhwb3J0PShzaHxtYWtlfGNvbmZpZ3VyZSlcbiIKKyIgICAgICAgICAgICAgICAgICAgICBvdXRwdXQgc29tZXRoaW5nIGNvbnZlbmllbnQgdG8gaW1wb3J0IHRoZVxuIgorIiAgICAgICAgICAgICAgICAgICAgIGNvbXBpbGF0aW9uIGZsYWdzIGluIGEgc2hlbGwgc2NyaXB0LCBpbiBtYWtlLFxuIgorIiAgICAgICAgICAgICAgICAgICAgIG9yIG9uIGEgLi9jb25maWd1cmUgY29tbWFuZCBsaW5lLlxuIgorIiAgLS1kdW1wICAgICAgICAgICAgIG91dHB1dCBhbGwgY29tcGlsYXRpb24gZmxhZ3Mgd2l0aCB0aGVpciB2YWx1ZXNcbiIKKyIgIC0taGVscCAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkZmxhZ3MucGw6NjYgc2NyaXB0cy9kcGtnLWJ1aWxkZmxhZ3MucGw6NzIKKyM6IHNjcmlwdHMvZHBrZy1idWlsZGZsYWdzLnBsOjc3IHNjcmlwdHMvZHBrZy1idWlsZGZsYWdzLnBsOjgxCisjLCBmdXp6eSwgcGVybC1mb3JtYXQKK21zZ2lkICJ0d28gY29tbWFuZHMgc3BlY2lmaWVkOiAtLSVzIGFuZCAtLSVzIgorbXNnc3RyICJwb2Rhbm8gd2nEmWNlaiBuacW8IGplZGVuIHBsaWsgKCVzIGkgJXMpIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRmbGFncy5wbDo3MAorIywgZnV6enksIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgbmVlZHMgYSBwYXJhbWV0ZXIiCittc2dzdHIgIi1iIHd5bWFnYSBwb2RhbmlhIGthdGFsb2d1IgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjM5Cittc2dpZCAiIgorIlxuIgorIkNvcHlyaWdodCAoQykgMTk5NiBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAgV2ljaGVydCBBa2tlcm1hblxuIgorIkNvcHlyaWdodCAoQykgMjAwNyBGcmFuayBMaWNodGVuaGVsZCIKK21zZ3N0ciAiIgorIlxuIgorIkNvcHlyaWdodCAoQykgMTk5NiBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAgV2ljaGVydCBBa2tlcm1hblxuIgorIkNvcHlyaWdodCAoQykgMjAwNyBGcmFuayBMaWNodGVuaGVsZCIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDo1MQorIywgZnV6enksIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIlVzYWdlOiAlcyBbPG9wdGlvbnM+IC4uLl1cbiIKKyJcbiIKKyJPcHRpb25zOlxuIgorIiAgLXI8Z2Fpbi1yb290LWNvbW1hbmQ+XG4iCisiICAgICAgICAgICAgICAgICBjb21tYW5kIHRvIGdhaW4gcm9vdCBwcml2aWxlZ2VzIChkZWZhdWx0IGlzIGZha2Vyb290KS5cbiIKKyIgIC1SPHJ1bGVzPiAgICAgIHJ1bGVzIGZpbGUgdG8gZXhlY3V0ZSAoZGVmYXVsdCBpcyBkZWJpYW4vcnVsZXMpLlxuIgorIiAgLXA8c2lnbi1jb21tYW5kPlxuIgorIiAgLWQgICAgICAgICAgICAgZG8gbm90IGNoZWNrIGJ1aWxkIGRlcGVuZGVuY2llcyBhbmQgY29uZmxpY3RzLlxuIgorIiAgLUQgICAgICAgICAgICAgY2hlY2sgYnVpbGQgZGVwZW5kZW5jaWVzIGFuZCBjb25mbGljdHMuXG4iCisiICAtVDx0YXJnZXQ+ICAgICBjYWxsIGRlYmlhbi9ydWxlcyA8dGFyZ2V0PiB3aXRoIHRoZSBwcm9wZXIgZW52aXJvbm1lbnRcbiIKKyIgIC0tYXMtcm9vdCAgICAgIGVuc3VyZSAtVCBjYWxscyB0aGUgdGFyZ2V0IHdpdGggcm9vdCByaWdodHNcbiIKKyIgIC1qWzxudW1iZXI+XSAgIHNwZWNpZnkgam9icyB0byBydW4gc2ltdWx0YW5lb3VzbHkgfSBwYXNzZWQgdG8gZGViaWFuLyIKKyJydWxlc1xuIgorIiAgLWs8a2V5aWQ+ICAgICAgdGhlIGtleSB0byB1c2UgZm9yIHNpZ25pbmcuXG4iCisiICAtc2dwZyAgICAgICAgICB0aGUgc2lnbi1jb21tYW5kIGlzIGNhbGxlZCBsaWtlIEdQRy5cbiIKKyIgIC1zcGdwICAgICAgICAgIHRoZSBzaWduLWNvbW1hbmQgaXMgY2FsbGVkIGxpa2UgUEdQLlxuIgorIiAgLXVzICAgICAgICAgICAgdW5zaWduZWQgc291cmNlLlxuIgorIiAgLXVjICAgICAgICAgICAgdW5zaWduZWQgY2hhbmdlcy5cbiIKKyIgIC1hPGFyY2g+ICAgICAgIERlYmlhbiBhcmNoaXRlY3R1cmUgd2UgYnVpbGQgZm9yIChpbXBsaWVzIC1kKS5cbiIKKyIgIC1iICAgICAgICAgICAgIGJpbmFyeS1vbmx5LCBkbyBub3QgYnVpbGQgc291cmNlLiAgIH0gYWxzbyBwYXNzZWQgdG9cbiIKKyIgIC1CICAgICAgICAgICAgIGJpbmFyeS1vbmx5LCBubyBhcmNoLWluZGVwIGZpbGVzLiAgIH0gZHBrZy1nZW5jaGFuZ2VzXG4iCisiICAtQSAgICAgICAgICAgICBiaW5hcnktb25seSwgb25seSBhcmNoLWluZGVwIGZpbGVzLiB9XG4iCisiICAtUyAgICAgICAgICAgICBzb3VyY2Ugb25seSwgbm8gYmluYXJ5IGZpbGVzLiAgICAgfVxuIgorIiAgLUYgICAgICAgICAgICAgbm9ybWFsIGZ1bGwgYnVpbGQgKGJpbmFyaWVzIGFuZCBzb3VyY2VzKS5cbiIKKyIgIC10PHN5c3RlbT4gICAgIHNldCBHTlUgc3lzdGVtIHR5cGUuICAgICAgICAgICB9IHBhc3NlZCB0byBkcGtnLSIKKyJhcmNoaXRlY3R1cmVcbiIKKyIgIC12PHZlcnNpb24+ICAgIGNoYW5nZXMgc2luY2UgdmVyc2lvbiA8dmVyc2lvbj4uICAgICAgfVxuIgorIiAgLW08bWFpbnQ+ICAgICAgbWFpbnRhaW5lciBmb3IgcGFja2FnZSBpcyA8bWFpbnQ+LiAgICB9XG4iCisiICAtZTxtYWludD4gICAgICBtYWludGFpbmVyIGZvciByZWxlYXNlIGlzIDxtYWludD4uICAgIH0gb25seSBwYXNzZWRcbiIKKyIgIC1DPGRlc2NmaWxlPiAgIGNoYW5nZXMgYXJlIGRlc2NyaWJlZCBpbiA8ZGVzY2ZpbGU+LiAgfSB0byBkcGtnLWdlbmNoYW5nZXNcbiIKKyIgIC1zaSAoZGVmYXVsdCkgIHNyYyBpbmNsdWRlcyBvcmlnIGlmIG5ldyB1cHN0cmVhbS4gICAgfVxuIgorIiAgLXNhICAgICAgICAgICAgdXBsb2FkZWQgc3JjIGFsd2F5cyBpbmNsdWRlcyBvcmlnLiAgICB9XG4iCisiICAtc2QgICAgICAgICAgICB1cGxvYWRlZCBzcmMgaXMgZGlmZiBhbmQgLmRzYyBvbmx5LiAgIH1cbiIKKyIgIC1zbiAgICAgICAgICAgIGZvcmNlIERlYmlhbiBuYXRpdmUgc291cmNlIGZvcm1hdC4gICAgICB9XG4iCisiICAtc1tzQWt1cktVUl0gICBzZWUgZHBrZy1zb3VyY2UgZm9yIGV4cGxhbmF0aW9uLiAgICAgICAgfSBvbmx5IHBhc3NlZFxuIgorIiAgLXo8bGV2ZWw+ICAgICAgY29tcHJlc3Npb24gbGV2ZWwgb2Ygc291cmNlICAgICAgICAgICAgIH0gdG8gZHBrZy1zb3VyY2VcbiIKKyIgIC1aPGNvbXByZXNzb3I+IGNvbXByZXNzaW9uIHRvIHVzZSBmb3Igc291cmNlICAgICAgICAgICB9XG4iCisiICAtbmMgICAgICAgICAgICBkbyBub3QgY2xlYW4gc291cmNlIHRyZWUgKGltcGxpZXMgLWIpLlxuIgorIiAgLXRjICAgICAgICAgICAgY2xlYW4gc291cmNlIHRyZWUgd2hlbiBmaW5pc2hlZC5cbiIKKyIgIC1hcCAgICAgICAgICAgIGFkZCBwYXVzZSBiZWZvcmUgc3RhcnRpbmcgc2lnbmF0dXJlIHByb2Nlc3MuXG4iCisiICAtaVs8cmVnZXg+XSAgICBpZ25vcmUgZGlmZnMgb2YgZmlsZXMgbWF0Y2hpbmcgcmVnZXguICAgIH0gb25seSBwYXNzZWRcbiIKKyIgIC1JWzxwYXR0ZXJuPl0gIGZpbHRlciBvdXQgZmlsZXMgd2hlbiBidWlsZGluZyB0YXJiYWxscy4gfSB0byBkcGtnLXNvdXJjZVxuIgorIiAgLS1zb3VyY2Utb3B0aW9uPTxvcHQ+XG4iCisiXHRcdCBwYXNzIG9wdGlvbiA8b3B0PiB0byBkcGtnLXNvdXJjZVxuIgorIiAgLS1jaGFuZ2VzLW9wdGlvbj08b3B0PlxuIgorIlx0XHQgcGFzcyBvcHRpb24gPG9wdD4gdG8gZHBrZy1nZW5jaGFuZ2VzXG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+XG4iCisiICAgICAgICAgICAgICAgICBjaGFuZ2UgdGhlIGFkbWluaXN0cmF0aXZlIGRpcmVjdG9yeS5cbiIKKyIgIC1oLCAtLWhlbHAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAgICAgLS12ZXJzaW9uICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorbXNnc3RyICIiCisiXG4iCisiVcW8eWNpZTogJXMgWzxvcGNqZT4gLi4uXVxuIgorIlxuIgorIk9wY2plOlxuIgorIiAgLXI8cG9sZWNlbmllLXV6eXNrLXByYXctYWRtaW5pc3RyYXRvcmE+XG4iCisiICAgICAgICAgICAgICAgICBwb2xlY2VuaWUgdXp5c2tpd2FuaWEgcHJhdyBhZG1pbi4gKGRvbXnFm2xuaWUgZmFrZXJvb3QpLlxuIgorIiAgLVI8cnVsZXM+ICAgICAgcGxpayBydWxlcyBkbyB1cnVjaG9taWVuaWEgKGRvbXnFm2xuaWUgZGViaWFuL3J1bGVzKS5cbiIKKyIgIC1wPHBvbGVjZW5pZS1wb2RwaXN5d2FuaWE+XG4iCisiICAtZCAgICAgICAgICAgICBuaWUgc3ByYXdkemEgemFsZcW8bm/Fm2NpIGkga29uZmxpa3TDs3cgY3phc3UgYnVkb3dhbmlhLlxuIgorIiAgLUQgICAgICAgICAgICAgc3ByYXdkemEgemFsZcW8bm/Fm2NpIGkga29uZmxpa3R5IGN6YXN1IGJ1ZG93YW5pYS5cbiIKKyIgIC1UPGNlbD4gICAgICAgIHd5d2/FgmFuaWUgZGViaWFuL3J1bGVzIDxjZWw+IHogb2Rwb3dpZWRuaW0gxZtyb2Rvd2lza2llbVxuIgorIiAgLS1hcy1yb290ICAgICAgemFwZXduaWVuaWUsIMW8ZSAtVCB3eXdvxYJhIGNlbCB6IHByYXdhbWkgYWRtaW5pc3RyYXRvcmFcbiIKKyIgIC1qWzxsaWN6YmE+XSAgIGxpY3piYSB6YWRhxYQgd3lrb255d2FueWNoIGplZG5vY3plxZtuaWUgfSBwcnpla2F6eXdhbmUgZG9cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gZGViaWFuL3J1bGVzXG4iCisiICAtazxpZC1rbHVjemE+ICBrbHVjeiB1xbx5d2FueSBkbyBwb2RwaXN5d2FuaWEuXG4iCisiICAtc2dwZyAgICAgICAgICBwb2xlY2VuaWUtcG9kcGlzeXdhbmlhIGplc3Qgd3l3b8WCeXdhbmUgamFrIEdQRy5cbiIKKyIgIC1zcGdwICAgICAgICAgIHBvbGVjZW5pZS1wb2RwaXN5d2FuaWEgamVzdCB3eXdvxYJ5d2FuZSBqYWsgUEdQLlxuIgorIiAgLXVzICAgICAgICAgICAgbmllcG9kcGlzeXdhbmllIMW6csOzZGXFgi5cbiIKKyIgIC11YyAgICAgICAgICAgIG5pZXBvZHBpc3l3YW5pZSB6bWlhbi5cbiIKKyIgIC1hPGFyY2g+ICAgICAgIGFyY2hpdGVrdHVyYSBEZWJpYW5hLCBkbGEga3TDs3JlaiBidWR1amVteSAoaW1wbGlrdWplIC1kKS5cbiIKKyIgIC1iICAgICAgICAgICAgIHR5bGtvIGJpbmFybmUsIGJleiDFunLDs2RlxYIuICAgICAgICAgICB9IHByemVrYXp5d2FuZVxuIgorIiAgLUIgICAgICAgICAgICAgdHlsa28gYmluYXJuZSwgYmV6IG5pZXphbC4gb2QgYXJjaC4gIH0gcsOzd25pZcW8IGRvXG4iCisiICAtQSAgICAgICAgICAgICB0eWxrbyBiaW5hcm5lLCB0eWxrbyBuaWV6YWwuIG9kIGFyY2gufSBkcGtnLWdlbmNoYW5nZXNcbiIKKyIgIC1TICAgICAgICAgICAgIHR5bGtvIMW6csOzZMWCYSwgYmV6IGJpbmFyw7N3LiAgICAgICAgIH1cbiIKKyIgIC10PHN5c3RlbT4gICAgIHVzdGF3aWEgdHlwIHN5c3RlbXUgR05VLiB9IHByemVrYXp5d2FuZSBkbyBkcGtnLSIKKyJhcmNoaXRlY3R1cmVcbiIKKyIgIC12PHdlcnNqYT4gICAgIHptaWFueSBvZCB3ZXJzamkgPHdlcnNqYT4uICAgICAgICAgICAgIH1cbiIKKyIgIC1tPG9waWVrPiAgICAgIG9waWVrdW5lbSBwYWtpZXR1IGplc3QgPG9waWVrPi4gICAgICAgIH1cbiIKKyIgIC1lPG9waWVrPiAgICAgIG9waWVrdW5lbSB3eWRhbmlhIGplc3QgPG9waWVrPi4gICAgICAgIH0gdHlsa29cbiIKKyIgIC1DPHBsaWstZGVzYz4gIHptaWFueSBzxIUgb3Bpc2FuZSB3IDxwbGlrdS1kZXNjPi4gICAgICB9IHByemVrYXp5d2FuZSBkb1xuIgorIiAgLXNpIChkb215xZtsbmUpIMW6csOzZMWCYSB3xYLEhWN6YWrEhSBvcnlnLCBqZcWbbGkgbm93c3plICAgICB9IGRwa2ctZ2VuY2hhbmdlc1xuIgorIiAgLXNhICAgICAgICAgICAgxbpyw7NkxYJhIHphd3N6ZSB3xYLEhWN6YWrEhSBvcnlnLiAgICAgICAgICAgfVxuIgorIiAgLXNkICAgICAgICAgICAgd3lkYW5pZSBza8WCYWRhIHNpxJkgeiB0eWxrbyBkaWZmIGkgLmRzYy59XG4iCisiICAtc24gICAgICAgICAgICB3eW11c3phIGZvcm1hdCBuYXR5d255Y2ggxbpyw7NkZcWCIERlYmlhbmEuIH0gdHlsa29cbiIKKyIgIC1zW3NBa3VyS1VSXSAgIHBhdHJ6IG9waXMgdyBkcGtnLXNvdXJjZSAgICAgICAgICAgICAgICAgfSBwcnpla2F6eXdhbmUgZG9cbiIKKyIgIC16PHBvemlvbT4gICAgIHBvemlvbSBrb21wcmVzamkgxbpyw7NkZcWCICAgICAgICAgICAgICAgICAgfSBkcGtnLXNvdXJjZVxuIgorIiAgLVooZ3p8YnoyfGx6bWEpIHR5cCB1xbx5d2FuZWoga29tcHJlc2ppIMW6csOzZGXFgiAgICAgICAgICAgfVxuIgorIiAgLW5jICAgICAgICAgICAgbmllIGN6ecWbY2kgZHJ6ZXdhIMW6csOzZGXFgiAod3ltdXN6YSAtYikuXG4iCisiICAtdGMgICAgICAgICAgICBjennFm2NpIGRyemV3byDFunLDs2RlxYIgcG8gemFrb8WEY3plbml1LlxuIgorIiAgLWFwICAgICAgICAgICAgZG9kYWplIHBhdXrEmSBwcnpleiByb3pwb2N6xJljaWVtIHBvZHBpc3l3YW5pYS5cbiIKKyIgIC1pWzx3eXItcmVnPl0gIGlnbm9yb3dhbmllIHLDs8W8bmljIHBhc3VqxIVjeWNoIHBsaWvDs3cuICAgICB9IHR5bGtvIHByemVrLlxuIgorIiAgLUlbPHd6b3J6ZWM+XSAgb2RmaWx0cm93YW5pZSBwbGlrw7N3IHBvZGN6YXMgYnVkb3dhbmlhIHRhcn0gZG8gZHBrZy1zb3VyY2VcbiIKKyIgIC0tYWRtaW5kaXI9PGthdGFsb2c+XG4iCisiICAgICAgICAgICAgICAgICB6bWllbmlhIGthdGFsb2cgYWRtaW5pc3RyYWN5am55LlxuIgorIiAgLWgsIC0taGVscCAgICAgd3nFm3dpZXRsYSB0ZW4ga29tdW5pa2F0IHBvbW9jeS5cbiIKKyIgICAgICAtLXZlcnNpb24gIHd5xZt3aWV0bGEgaW5mb3JtYWNqZSBvIHdlcnNqaSBwcm9ncmFtdS5cbiIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDoyMDAgc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDoyMDYKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6MjEyIHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6MjE4CisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjIyMyBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDoxNDMKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjE0NiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDoxNTAKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjE1NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3QgY29tYmluZSAlcyBhbmQgJXMiCittc2dzdHIgIm5pZSBtb8W8bmEgxYLEhWN6ecSHICVzIGkgJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6MjM2IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6MjAyCittc2dpZCAiLUUgYW5kIC1XIGFyZSBkZXByZWNhdGVkLCB0aGV5IGFyZSB3aXRob3V0IGVmZmVjdCIKK21zZ3N0ciAiLUUgaSAtVyBzxIUgcHJ6ZXN0YXJ6YcWCZSwgbmllIG1hasSFIMW8YWRuZWdvIGVmZWt0dSIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDoyNDAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gb3IgYXJndW1lbnQgJXMiCittc2dzdHIgIm5pZXBvcHJhd25hIG9wY2phIGx1YiBhcmd1bWVudCAlcyIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDoyNTAKK21zZ2lkICJ1c2luZyBhIGdhaW4tcm9vdC1jb21tYW5kIHdoaWxlIGJlaW5nIHJvb3QiCittc2dzdHIgInXFvHl3YW5pZSBwb2xlY2VuaWEtdXp5c2stcHJhdy1hZG1pbiBwb2RjemFzIGJ5Y2lhIGFkbWluaXN0cmF0b3JlbSIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDoyNTYKK21zZ2lkICIiCisiZmFrZXJvb3Qgbm90IGZvdW5kLCBlaXRoZXIgaW5zdGFsbCB0aGUgZmFrZXJvb3RcbiIKKyJwYWNrYWdlLCBzcGVjaWZ5IGEgY29tbWFuZCB3aXRoIHRoZSAtciBvcHRpb24sIG9yIHJ1biB0aGlzIGFzIHJvb3QiCittc2dzdHIgIiIKKyJuaWUgem5hbGV6aW9ubyBmYWtlcm9vdCwgcHJvc3rEmSB6YWluc3RhbG93YcSHIHBha2lldCBmYWtlcm9vdCBsdWJcbiIKKyJwb2RhxIcgcG9sZWNlbmllIHcgb3BjamkgLXIsIGx1YiB1cnVjaG9tacSHIHRlbiBwcm9ncmFtIGpha28gcm9vdCIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDoyNjAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZ2Fpbi1yb290LWNvbW1tYW5kICclcycgbm90IGZvdW5kIgorbXNnc3RyICJuaWUgem5hbGV6aW9ubyBwb2xlY2VuaWEtdXp5c2stcHJhdy1hZG1pbiBcIiVzXCIiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6Mjc5Cittc2dpZCAidW5rbm93biBzaWduIGNvbW1hbmQsIGFzc3VtaW5nIHBncCBzdHlsZSBpbnRlcmZhY2UiCittc2dzdHIgIm5pZXpuYW5lIHBvbGVjZW5pZSBwb2RwaXN5d2FuaWEsIHByenlqbW93YW5pZSBpbnRlcmZlanN1IHcgc3R5bHUgcGdwIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjI4MgorbXNnaWQgIlBHUCBzdXBwb3J0IGlzIGRlcHJlY2F0ZWQgKHNlZSBSRUFETUUuZmVhdHVyZS1yZW1vdmFsLXNjaGVkdWxlKSIKK21zZ3N0ciAiIgorIldzcGFyY2llIGRsYSBQR1AgamVzdCBwcnplc3RhcnphxYJlIChwYXRyeiBSRUFETUUuZmVhdHVyZS1yZW1vdmFsLXNjaGVkdWxlKSIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDozMDEKK21zZ2lkICJzb3VyY2UgcGFja2FnZSIKK21zZ3N0ciAicGFraWV0IMW6csOzZMWCb3d5IgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjMwMgorbXNnaWQgInNvdXJjZSB2ZXJzaW9uIgorbXNnc3RyICJ3ZXJzamEgcGFraWV0dSDFunLDs2TFgm93ZWdvIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjMxMgorbXNnaWQgInNvdXJjZSBjaGFuZ2VkIGJ5IgorbXNnc3RyICLFunLDs2TFgmEgem1pZW5pb25lIHByemV6IgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjMzMAorbXNnaWQgImhvc3QgYXJjaGl0ZWN0dXJlIgorbXNnc3RyICJhcmNoaXRla3R1cmEgZ2/Fm2NpYSIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDozNDMKK21zZ2lkICJkZWJpYW4vcnVsZXMgaXMgbm90IGV4ZWN1dGFibGU6IGZpeGluZyB0aGF0LiIKK21zZ3N0ciAiZGViaWFuL3J1bGVzIG5pZSBqZXN0IHBsaWtpZW0gd3lrb255d2FsbnltOiBuYXByYXdpYW5pZS4iCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6MzYyCittc2dpZCAiQnVpbGQgZGVwZW5kZW5jaWVzL2NvbmZsaWN0cyB1bnNhdGlzZmllZDsgYWJvcnRpbmcuIgorbXNnc3RyICJOaWVzcGXFgm5pb25lIHphbGXFvG5vxZtjaS9rb25mbGlrdHkgY3phc3UgYnVkb3dhbmlhOyBwcnplcnl3YW5pZS4iCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6MzYzCittc2dpZCAiKFVzZSAtZCBmbGFnIHRvIG92ZXJyaWRlLikiCittc2dzdHIgIihVxbx5aiBvcGNqaSAtZCwgYWJ5IHRvIG9iZWrFm8SHKS4iCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6MzY2Cittc2dpZCAiVGhpcyBpcyBjdXJyZW50bHkgYSBub24tZmF0YWwgd2FybmluZyB3aXRoIC1TLCBidXQiCittc2dzdHIgIk9iZWNuaWUgamVzdCB0byB0eWxrbyBvc3RyemXFvGVuaWUgZ2VuZXJvd2FuZSwgZ2R5IHXFvHlqZSBzacSZIC1TLCIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDozNjcKK21zZ2lkICJ3aWxsIHByb2JhYmx5IGJlY29tZSBmYXRhbCBpbiB0aGUgZnV0dXJlLiIKK21zZ3N0ciAiamVkbmFrIHcgcHJ6eXN6xYJvxZtjaSB6b3N0YW5pZSBwcnpla3N6dGHFgmNvbmUgdyBixYLEhWQga3J5dHljem55LiIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDozODkKK21zZ2lkICIiCisiaXQgaXMgYSBiYWQgaWRlYSB0byBnZW5lcmF0ZSBhIHNvdXJjZSBwYWNrYWdlIHdpdGhvdXQgY2xlYW5pbmcgdXAgZmlyc3QsIGl0ICIKKyJtaWdodCBjb250YWluIHVuZGVzaXJlZCBmaWxlcy4iCittc2dzdHIgIiIKKyJnZW5lcm93YW5pZSBwYWtpZXR1IMW6csOzZMWCb3dlZ28gYmV6IHdjemXFm25pZWpzemVnbyBjenlzemN6ZW5pYSBqZXN0IHrFgnltICIKKyJwb215c8WCZW0sIG1vxbxlIG9uIHphd2llcmHEhyBuaWVwb3RyemVibmUgcGxpa2kuIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjQwMgorbXNnaWQgIlByZXNzIHRoZSByZXR1cm4ga2V5IHRvIHN0YXJ0IHNpZ25pbmcgcHJvY2Vzc1xuIgorbXNnc3RyICJOYWNpxZtuaWogPGVudGVyPiwgYnkgcm96cG9jesSFxIcgcHJvY2VzIHBvZHBpc3l3YW5pYVxuIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjQwOQorbXNnaWQgIkZhaWxlZCB0byBzaWduIC5kc2MgYW5kIC5jaGFuZ2VzIGZpbGUiCittc2dzdHIgIkLFgsSFZCBwb2RwaXN5d2FuaWEgcGxpa8OzdyAuZHNjIGkgLmNoYW5nZXMiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6NDI0IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6NDI4CisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjQ0MQorbXNnaWQgIndyaXRlIGNoYW5nZXMgZmlsZSIKK21zZ3N0ciAiemFwaXN5d2FuaWUgcGxpa3Ugem1pYW4iCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6NDQwCittc2dpZCAiZHBrZy1nZW5jaGFuZ2VzIgorbXNnc3RyICJkcGtnLWdlbmNoYW5nZXMiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6NDQ5Cittc2dpZCAic291cmNlIG9ubHkgdXBsb2FkOiBEZWJpYW4tbmF0aXZlIHBhY2thZ2UiCittc2dzdHIgInd5ZGFuaWUgdHlsa28gxbpyw7NkZcWCOiBuYXR5d255IHBha2lldCBEZWJpYW5hIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjQ1MQorbXNnaWQgInNvdXJjZSBvbmx5LCBkaWZmLW9ubHkgdXBsb2FkIChvcmlnaW5hbCBzb3VyY2UgTk9UIGluY2x1ZGVkKSIKK21zZ3N0ciAid3lkYW5pZSB0eWxrbyDFunLDs2RlxYIgaSByw7PFvG5pYyAob3J5Z2luYWxuZSDFunLDs2TFgmEgTklFIGRvxYLEhWN6b25lKSIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDo0NTMKK21zZ2lkICJzb3VyY2Ugb25seSB1cGxvYWQgKG9yaWdpbmFsIHNvdXJjZSBpcyBpbmNsdWRlZCkiCittc2dzdHIgInd5ZGFuaWUgdHlsa28gxbpyw7NkZcWCIChvcnlnaW5hbG5lIMW6csOzZMWCYSBkb8WCxIVjem9uZSkiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6NDU2IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6NDY0Cittc2dpZCAiZnVsbCB1cGxvYWQgKG9yaWdpbmFsIHNvdXJjZSBpcyBpbmNsdWRlZCkiCittc2dzdHIgInBlxYJuZSB3eWRhbmllIChvcnlnaW5hbG5lIMW6csOzZMWCYSBkb8WCxIVjem9uZSkiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6NDU4Cittc2dpZCAiYmluYXJ5IG9ubHkgdXBsb2FkIChubyBzb3VyY2UgaW5jbHVkZWQpIgorbXNnc3RyICJ3eWRhbmllIHR5bGtvIGJpbmFybmUgKGJleiDFvGFkbnljaCDFunLDs2RlxYIpIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjQ2MAorbXNnaWQgImZ1bGwgdXBsb2FkOyBEZWJpYW4tbmF0aXZlIHBhY2thZ2UgKGZ1bGwgc291cmNlIGlzIGluY2x1ZGVkKSIKK21zZ3N0ciAicGXFgm5lIHd5ZGFuaWU7IG5hdHl3bnkgcGFraWV0IERlYmlhbmEgKHBlxYJuZSDFunLDs2TFgmEgZG/FgsSFY3pvbmUpIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjQ2MgorbXNnaWQgImJpbmFyeSBhbmQgZGlmZiB1cGxvYWQgKG9yaWdpbmFsIHNvdXJjZSBOT1QgaW5jbHVkZWQpIgorbXNnc3RyICJ3eWRhbmllIGJpbmFybmUgaSBwbGlrdSByw7PFvG5pYyAob3J5Z2luYWxuZSDFunLDs2TFgmEgTklFIGRvxYLEhWN6b25lKSIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDo0NjkKK21zZ2lkICJGYWlsZWQgdG8gc2lnbiAuY2hhbmdlcyBmaWxlIgorbXNnc3RyICJCxYLEhWQgcG9kcGlzeXdhbmlhIHBsaWt1IC5jaGFuZ2VzLiIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDo0ODgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGRldGVybWluZSAlcyIKK21zZ3N0ciAibmllIG1vxbxuYSBva3JlxZtsacSHICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctY2hlY2tidWlsZGRlcHMucGw6NDIKKyMsIGZ1enp5LCBwZXJsLWZvcm1hdAorbXNnaWQgIlVzYWdlOiAlcyBbPG9wdGlvbj4uLi5dIFs8Y29udHJvbC1maWxlPl0iCittc2dzdHIgIlXFvHljaWU6ICVzIFs8b3BjamE+Li4uXSA8cGxpaz4uLi5cbiIKKworIzogc2NyaXB0cy9kcGtnLWNoZWNrYnVpbGRkZXBzLnBsOjQ0CisjLCBmdXp6eQorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLUIgICAgICAgICAgICAgYmluYXJ5LW9ubHksIGlnbm9yZSAtSW5kZXAuXG4iCisiICAtZCBidWlsZC1kZXBzICB1c2UgZ2l2ZW4gc3RyaW5nIGFzIGJ1aWxkIGRlcGVuZGVuY2llcyBpbnN0ZWFkIG9mXG4iCisiICAgICAgICAgICAgICAgICByZXRyaWV2aW5nIHRoZW0gZnJvbSBjb250cm9sIGZpbGVcbiIKKyIgIC1jIGJ1aWxkLWNvbmYgIHVzZSBnaXZlbiBzdHJpbmcgZm9yIGJ1aWxkIGNvbmZsaWN0cyBpbnN0ZWFkIG9mXG4iCisiICAgICAgICAgICAgICAgICByZXRyaWV2aW5nIHRoZW0gZnJvbSBjb250cm9sIGZpbGVcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT5cbiIKKyIgICAgICAgICAgICAgICAgIGNoYW5nZSB0aGUgYWRtaW5pc3RyYXRpdmUgZGlyZWN0b3J5LlxuIgorIiAgLWgsIC0taGVscCAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgICAgICAtLXZlcnNpb24gIHNob3cgdGhlIHZlcnNpb24uIgorbXNnc3RyICIiCisiVcW8eWNpZTogJXMgWzxvcGNqYT4gLi4uXSBbPHBsaWtfa29udHJvbG55Pl1cbiIKKyJcbiIKKyJPcGNqZTpcbiIKKyIgIHBsaWtfa29udHJvbG55IHBsaWsga29udHJvbG55IGRvIHByemV0d2FyemFuaWEgKGRvbXnFm2xueTogZGViaWFuLyIKKyJjb250cm9sKS5cbiIKKyIgIC1CICAgICAgICAgICAgIHR5bGtvLWJpbmFybmUsIGlnbm9ydWplIC1JbmRlcC5cbiIKKyIgIC1kIGJ1aWxkLXphbGXFvCB1xbx5d2EgcG9kYW55Y2ggemFsZcW8bm/Fm2NpIGN6YXN1IGJ1ZG93YW5pYSB6YW1pYXN0XG4iCisiICAgICAgICAgICAgICAgICBwb2JpZXJhxIcgamUgeiBwbGlrdSBrb250cm9sbmVnb1xuIgorIiAgLWMgYnVpbGQta29uZmwgdcW8eXdhIHBvZGFueWNoIGtvbmZsaWt0w7N3IGN6YXN1IGJ1ZG93YW5pYSB6YW1pYXN0XG4iCisiICAgICAgICAgICAgICAgICBwb2JpZXJhxIcgamUgeiBwbGlrdSBrb250cm9sbmVnb1xuIgorIiAgLS1hZG1pbmRpcj08a2F0YWxvZz5cbiIKKyIgICAgICAgICAgICAgICAgIHptaWVuaWEga2F0YWxvZyBhZG1pbmlzdHJhY3lqbnkuXG4iCisiICAtaCAgICAgICAgICAgICB3ecWbd2lldGxhIHRlbiBrb211bmlrYXQgcG9tb2N5LlxuIgorCisjOiBzY3JpcHRzL2Rwa2ctY2hlY2tidWlsZGRlcHMucGw6NTUKK21zZ2lkICIiCisiPGNvbnRyb2wtZmlsZT4gaXMgdGhlIGNvbnRyb2wgZmlsZSB0byBwcm9jZXNzIChkZWZhdWx0OiBkZWJpYW4vY29udHJvbCkuIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1jaGVja2J1aWxkZGVwcy5wbDoxMDUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXM6IFVubWV0IGJ1aWxkIGRlcGVuZGVuY2llczogIgorbXNnc3RyICIlczogTmllc3BlxYJuaW9uZSB6YWxlxbxub8WbY2kgYnVkb3dhbmlhIHBha2lldHU6IgorCisjOiBzY3JpcHRzL2Rwa2ctY2hlY2tidWlsZGRlcHMucGw6MTA5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzOiBCdWlsZCBjb25mbGljdHM6ICIKK21zZ3N0ciAiJXM6IEtvbmZsaWt0dSBidWRvd2FuaWEgcGFraWV0dToiCisKKyM6IHNjcmlwdHMvZHBrZy1jaGVja2J1aWxkZGVwcy5wbDoxODQgc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDoyNTMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZXJyb3Igb2NjdXJyZWQgd2hpbGUgcGFyc2luZyAlcyIKK21zZ3N0ciAid3lzdMSFcGnFgiBixYLEhWQgcG9kY3phcyBwcnpldHdhcnphbmlhICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctZGlzdGFkZGZpbGUucGw6MzUKK21zZ2lkICIiCisiXG4iCisiQ29weXJpZ2h0IChDKSAxOTk2IElhbiBKYWNrc29uLiIKK21zZ3N0ciAiIgorIlxuIgorIkNvcHlyaWdodCAoQykgMTk5NiBJYW4gSmFja3Nvbi4iCisKKyM6IHNjcmlwdHMvZHBrZy1kaXN0YWRkZmlsZS5wbDo0NgorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPi4uLl0gPGZpbGVuYW1lPiA8c2VjdGlvbj4gPHByaW9yaXR5PlxuIgorIlxuIgorIk9wdGlvbnM6XG4iCisiICAtZjxmaWxlc2xpc3RmaWxlPiAgICAgICAgd3JpdGUgZmlsZXMgaGVyZSBpbnN0ZWFkIG9mIGRlYmlhbi9maWxlcy5cbiIKKyIgIC1oLCAtLWhlbHAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgICAgIC0tdmVyc2lvbiAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCittc2dzdHIgIiIKKyJVxbx5Y2llOiAlcyBbPG9wY2phPiAuLi5dIDxuYXp3YV9wbGlrdT4gPHNla2NqYT4gPHByaW9yeXRldD5cbiIKKyJcbiIKKyJPcGNqZTpcbiIKKyIgIC1mPHBsaWt6bGlzdMSFcGxpa8Ozdz4gICAgICAgIHphcGlzdWplIHBsaWtpIGRvIHBvZGFuZWdvIHBsaWt1IHphbWlhc3QgIgorImRlYmlhbi9maWxlcy5cbiIKKyIgIC0taGVscCAgICAgICB3ecWbd2lldGxhIHRlbiBrb211bmlrYXQgcG9tb2N5LlxuIgorIiAgLS12ZXJzaW9uICAgIHd5xZt3aWV0bGEgaW5mb3JtYWNqZSBvIHdlcnNqaSBwcm9ncmFtdS5cbiIKKworIzogc2NyaXB0cy9kcGtnLWRpc3RhZGRmaWxlLnBsOjcyCittc2dpZCAibmVlZCBleGFjdGx5IGEgZmlsZW5hbWUsIHNlY3Rpb24gYW5kIHByaW9yaXR5IgorbXNnc3RyICJuYWxlxbx5IHBvZGHEhyBuYXp3xJkgcGxpa3UsIHNla2NqxJkgaSBwcmlvcnl0ZXQiCisKKyM6IHNjcmlwdHMvZHBrZy1kaXN0YWRkZmlsZS5wbDo3NgorbXNnaWQgImZpbGVuYW1lLCBzZWN0aW9uIGFuZCBwcmlvcml0eSBtYXkgY29udGFpbiBubyB3aGl0ZXNwYWNlIgorbXNnc3RyICJuYXp3YSBwbGlrdSwgc2VrY2phIGkgcHJpb3J5dGV0IG5pZSBtb2fEhSB6YXdpZXJhxIcgYmlhxYJ5Y2ggem5ha8OzdyIKKworIzogc2NyaXB0cy9kcGtnLWRpc3RhZGRmaWxlLnBsOjc5IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjMzNAorbXNnaWQgIm9wZW4gbmV3IGZpbGVzIGxpc3QgZmlsZSIKK21zZ3N0ciAib3R3aWVyYW5pZSBub3dlZ28gcGxpa3UgeiBsaXN0xIUgcGxpa8OzdyIKKworIzogc2NyaXB0cy9kcGtnLWRpc3RhZGRmaWxlLnBsOjg0IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjM0NQorbXNnaWQgImNvcHkgb2xkIGVudHJ5IHRvIG5ldyBmaWxlcyBsaXN0IGZpbGUiCittc2dzdHIgImtvcGlvd2FuaWUgc3RhcmVnbyBwbGlrdSBkbyBub3dlZ28gcGxpa3UgeiBsaXN0xIUgcGxpa8OzdyIKKworIzogc2NyaXB0cy9kcGtnLWRpc3RhZGRmaWxlLnBsOjg3IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjM0OQorbXNnaWQgInJlYWQgb2xkIGZpbGVzIGxpc3QgZmlsZSIKK21zZ3N0ciAiY3p5dGFuaWUgc3RhcmVnbyBwbGlrdSB6IGxpc3TEhSBwbGlrw7N3IgorCisjOiBzY3JpcHRzL2Rwa2ctZGlzdGFkZGZpbGUucGw6OTAgc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MzU5Cittc2dpZCAid3JpdGUgbmV3IGVudHJ5IHRvIG5ldyBmaWxlcyBsaXN0IGZpbGUiCittc2dzdHIgInphcGlzeXdhbmllIG5vd2VnbyB3cGlzdSBkbyBub3dlZ28gcGxpa3UgeiBsaXN0xIUgcGxpa8OzdyIKKworIzogc2NyaXB0cy9kcGtnLWRpc3RhZGRmaWxlLnBsOjkxIHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjM2MAorbXNnaWQgImNsb3NlIG5ldyBmaWxlcyBsaXN0IGZpbGUiCittc2dzdHIgInphbXlrYW5pZSBub3dlZ28gcGxpa3UgeiBsaXN0xIUgcGxpa8OzdyIKKworIzogc2NyaXB0cy9kcGtnLWRpc3RhZGRmaWxlLnBsOjkzIHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjM2MQorbXNnaWQgImluc3RhbGwgbmV3IGZpbGVzIGxpc3QgZmlsZSIKK21zZ3N0ciAiaW5zdGFsb3dhbmllIG5vd2VnbyBwbGlrdSB6IGxpc3TEhSBwbGlrw7N3IgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDo5OAorbXNnaWQgIiIKKyJcbiIKKyJDb3B5cmlnaHQgKEMpIDE5OTYgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi4iCittc2dzdHIgIiIKKyJcbiIKKyJDb3B5cmlnaHQgKEMpIDE5OTYgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi4iCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjExMAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dXG4iCisiXG4iCisiT3B0aW9uczpcbiIKKyIgIC1iICAgICAgICAgICAgICAgICAgICAgICBiaW5hcnktb25seSBidWlsZCAtIG5vIHNvdXJjZSBmaWxlcy5cbiIKKyIgIC1CICAgICAgICAgICAgICAgICAgICAgICBhcmNoLXNwZWNpZmljIC0gbm8gc291cmNlIG9yIGFyY2gtaW5kZXAgZmlsZXMuXG4iCisiICAtQSAgICAgICAgICAgICAgICAgICAgICAgb25seSBhcmNoLWluZGVwIC0gbm8gc291cmNlIG9yIGFyY2gtc3BlY2lmaWMgIgorImZpbGVzLlxuIgorIiAgLVMgICAgICAgICAgICAgICAgICAgICAgIHNvdXJjZS1vbmx5IHVwbG9hZC5cbiIKKyIgIC1jPGNvbnRyb2xmaWxlPiAgICAgICAgICBnZXQgY29udHJvbCBpbmZvIGZyb20gdGhpcyBmaWxlLlxuIgorIiAgLWw8Y2hhbmdlbG9nZmlsZT4gICAgICAgIGdldCBwZXItdmVyc2lvbiBpbmZvIGZyb20gdGhpcyBmaWxlLlxuIgorIiAgLWY8ZmlsZXNsaXN0ZmlsZT4gICAgICAgIGdldCAuZGViIGZpbGVzIGxpc3QgZnJvbSB0aGlzIGZpbGUuXG4iCisiICAtdjxzaW5jZXZlcnNpb24+ICAgICAgICAgaW5jbHVkZSBhbGwgY2hhbmdlcyBsYXRlciB0aGFuIHZlcnNpb24uXG4iCisiICAtQzxjaGFuZ2VzZGVzY3JpcHRpb24+ICAgdXNlIGNoYW5nZSBkZXNjcmlwdGlvbiBmcm9tIHRoaXMgZmlsZS5cbiIKKyIgIC1tPG1haW50YWluZXI+ICAgICAgICAgICBvdmVycmlkZSBjb250cm9sJ3MgbWFpbnRhaW5lciB2YWx1ZS5cbiIKKyIgIC1lPG1haW50YWluZXI+ICAgICAgICAgICBvdmVycmlkZSBjaGFuZ2Vsb2cncyBtYWludGFpbmVyIHZhbHVlLlxuIgorIiAgLXU8dXBsb2FkZmlsZXNkaXI+ICAgICAgIGRpcmVjdG9yeSB3aXRoIGZpbGVzIChkZWZhdWx0IGlzIGAuLicpLlxuIgorIiAgLXNpIChkZWZhdWx0KSAgICAgICAgICAgIHNyYyBpbmNsdWRlcyBvcmlnIGlmIG5ldyB1cHN0cmVhbS5cbiIKKyIgIC1zYSAgICAgICAgICAgICAgICAgICAgICBzb3VyY2UgaW5jbHVkZXMgb3JpZyBzcmMuXG4iCisiICAtc2QgICAgICAgICAgICAgICAgICAgICAgc291cmNlIGlzIGRpZmYgYW5kIC5kc2Mgb25seS5cbiIKKyIgIC1xICAgICAgICAgICAgICAgICAgICAgICBxdWlldCAtIG5vIGluZm9ybWF0aW9uYWwgbWVzc2FnZXMgb24gc3RkZXJyLlxuIgorIiAgLUY8Y2hhbmdlbG9nZm9ybWF0PiAgICAgIGZvcmNlIGNoYW5nZSBsb2cgZm9ybWF0LlxuIgorIiAgLVY8bmFtZT49PHZhbHVlPiAgICAgICAgIHNldCBhIHN1YnN0aXR1dGlvbiB2YXJpYWJsZS5cbiIKKyIgIC1UPHZhcmxpc3RmaWxlPiAgICAgICAgICByZWFkIHZhcmlhYmxlcyBoZXJlLCBub3QgZGViaWFuL3N1YnN0dmFycy5cbiIKKyIgIC1EPGZpZWxkPj08dmFsdWU+ICAgICAgICBvdmVycmlkZSBvciBhZGQgYSBmaWVsZCBhbmQgdmFsdWUuXG4iCisiICAtVTxmaWVsZD4gICAgICAgICAgICAgICAgcmVtb3ZlIGEgZmllbGQuXG4iCisiICAtaCwgLS1oZWxwICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgICAgICAtLXZlcnNpb24gICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorbXNnc3RyICIiCisiVcW8eWNpZTogJXMgWzxvcGNqYT4gLi4uXVxuIgorIlxuIgorIk9wY2plOlxuIgorIiAgLWIgICAgICAgICAgICAgICAgICAgICAgIGJ1ZG93YW5pZSB0eWxrbyBwYWtpZXTDs3cgYmluYXJueWNoIC0gYmV6ICIKKyLFunLDs2TFgm93eWNoLlxuIgorIiAgLUIgICAgICAgICAgICAgICAgICAgICAgIHNwZWN5Zmljem5lIGRsYSBhcmNoLiAtIGJleiBwbGlrw7N3IG5pZXphbGXFvG55Y2ggIgorIm9kIGFyY2guXG4iCisiICAtQSAgICAgICAgICAgICAgICAgICAgICAgdHlsa28gbmllemFsZcW8bmUgb2QgYXJjaCAtIGJleiBwbGlrw7N3IMW6csOzZMWCb3d5Y2ggIgorImx1YiB6YWxlxbxueWNoIG9kIGFyY2guXG4iCisiICAtUyAgICAgICAgICAgICAgICAgICAgICAgc291cmNlLW9ubHkgdXBsb2FkLlxuIgorIiAgLWM8cGxpa19rb250cm9sbnk+ICAgICAgIHBvYmllcmEgaW5mb3JtYWNqZSBrb250cm9sbmUgeiB0ZWdvIHBsaWt1LlxuIgorIiAgLWw8cGxpa196bWlhbj4gICAgICAgICAgIHBvYmllcmEgaW5mb3JtYWNqZSBvIHdlcnNqaSB6IHRlZ28gcGxpa3UuXG4iCisiICAtZjxwbGlrX3pfbGlzdMSFX3BsaWvDs3c+ICBwb2JpZXJhIGxpc3TEmSBwbGlrw7N3ICouZGViIHogdGVnbyBwbGlrdS5cbiIKKyIgIC12PG9kX3dlcnNqaT4gICAgICAgICAgICB3xYLEhWN6YSB3c3p5c3RraWUgem1pYW55IHDDs8W6bmllanN6ZSBuacW8IHdlcnNqYS5cbiIKKyIgIC1DPG9waXNfem1pYW4+ICAgICAgICAgICB1xbx5d2Egb3Bpc3Ugem1pYW4geiB0ZWdvIHBsaWt1LlxuIgorIiAgLW08b3BpZWt1bj4gICAgICAgICAgICAgIG5hZHBpc3VqZSB3YXJ0b8WbxIcgb3BpZWt1bmEgeiBwbGlrdSBrb250cm9sbmVnby5cbiIKKyIgIC1lPG9waWVrdW4+ICAgICAgICAgICAgICBuYWRwaXN1amUgd2FydG/Fm8SHIG9waWVrdW5hIHogcGxpa3Ugem1pYW4uXG4iCisiICAtdTxrYXRhbG9nX3VwbG9hZD4gICAgICAga2F0YWxvZyB6IHd5Z2VuZXJvd2FueW1pIHBsaWthbWkgKGRvbXnFm2xuaWUgXCIuLiIKKyJcIikuXG4iCisiICAtc2kgKGRvbXnFm2xuYSkgICAgICAgICAgIMW6csOzZMWCYSB3xYLEhWN6YWrEhSBvcnlnLiBqZcWbbGkgbm93YSB3ZXJzamEgYXV0b3JhICIKKyJwcm9nci5cbiIKKyIgIC1zYSAgICAgICAgICAgICAgICAgICAgICDFunLDs2TFgmEgd8WCxIVjemFqxIUgb3J5Zy4gxbpyw7NkxYJhLlxuIgorIiAgLXNkICAgICAgICAgICAgICAgICAgICAgIMW6csOzZMWCYSB0byB0eWxrbyBkaWZmIGkgLmRzYy5cbiIKKyIgIC1xICAgICAgICAgICAgICAgICAgICAgICB0cnliIGNpY2h5IC0gYmV6IGtvbXVuaWthdMOzdyBpbmZvcm1hY3lqbnljaCBuYSAiCisic3RkZXJyLlxuIgorIiAgLUY8Zm9ybWF0X3BsaWt1X3ptaWFuPiAgIHd5bXVzemEgZm9ybWF0IHBsaWt1IHptaWFuLlxuIgorIiAgLVY8bmF6d2E+PTx3YXJ0b8WbxIc+ICAgICAgdXN0YXdpYSB6bWllbm7EhSBwb2RzdGF3aWFuaWEuXG4iCisiICAtVDxwbGlrX3ptaWVubnljaD4gICAgICAgY3p5dGEgem1pZW5uZSB6IHRlZ28gcGxpa3UsIGEgbmllIHogZGViaWFuLyIKKyJzdWJzdHZhcnMuXG4iCisiICAtRDxwb2xlPj08d2FydG/Fm8SHPiAgICAgICBuYWRwaXN1amUgbHViIGRvZGFqZSBwb2xlIGRvIC5kc2Mgd3JheiB6ICIKKyJ3YXJ0b8WbY2nEhS5cbiIKKyIgIC1VPHBvbGU+ICAgICAgICAgICAgICAgICB1c3V3YSBwb2xlLlxuIgorIiAgLWgsIC0taGVscCAgICAgICAgICAgICAgIHd5xZt3aWV0bGEgdGVuIGtvbXVuaWthdCBwb21vY3kuXG4iCisiICAgICAgLS12ZXJzaW9uICAgICAgICAgICAgd3nFm3dpZXRsYSBpbmZvcm1hY2plIG8gd2Vyc2ppIHByb2dyYW11LlxuIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDoxNDgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXM6IGFyY2gtc3BlY2lmaWMgdXBsb2FkIC0gbm90IGluY2x1ZGluZyBhcmNoLWluZGVwZW5kZW50IHBhY2thZ2VzIgorbXNnc3RyICIiCisiJXM6IHd5ZGFuaWUgc3BlY3lmaWN6bmUgZGxhIGFyY2ggLSBuaWVkb8WCxIVjemFuaWUgcGFraWV0w7N3IG5pZXphbGXFvG55Y2ggb2QgIgorImFyY2giCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjE1MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlczogYXJjaC1pbmRlcCB1cGxvYWQgLSBub3QgaW5jbHVkaW5nIGFyY2gtc3BlY2lmaWMgcGFja2FnZXMiCittc2dzdHIgIiIKKyIlczogd3lkYW5pZSBuaWV6YWxlxbxuZSBvZCBhcmNoIC0gbmllZG/FgsSFY3phbmllIHBha2lldMOzdyB6YWxlxbxueWNoIG9kIGFyY2giCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjIxOQorIywgZnV6enksIHBlcmwtZm9ybWF0CisjfCBtc2dpZCAidGhlIGN1cnJlbnQgdmVyc2lvbiAoJXMpIGlzIHNtYWxsZXIgdGhhbiB0aGUgcHJldmlvdXMgb25lICglcykiCittc2dpZCAidGhlIGN1cnJlbnQgdmVyc2lvbiAoJXMpIGlzIGVhcmxpZXIgdGhhbiB0aGUgcHJldmlvdXMgb25lICglcykiCittc2dzdHIgImJpZcW8xIVjYSB3ZXJzamEgKCVzKSBqZXN0IG5pxbxzemEgb2QgcG9wcnplZG5pZWogKCVzKSIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6MjI2Cittc2dpZCAiY2Fubm90IHJlYWQgZmlsZXMgbGlzdCBmaWxlIgorbXNnc3RyICJuaWUgbW/FvG5hIG9kY3p5dGHEhyBwbGlrdSB6IGxpc3TEhSBwbGlrw7N3IgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDoyMzAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIGZpbGVzIGxpc3QgZW50cnkgZm9yIHBhY2thZ2UgJXMgKGxpbmUgJWQpIgorbXNnc3RyICJ6ZHVwbGlrb3dhbnkgd3BpcyBvIHBha2llY2llICVzIHcgbGnFm2NpZSBwbGlrw7N3IChsaW5pYSAlZCkiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjIzOCBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDoyNTIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIGZpbGVzIGxpc3QgZW50cnkgZm9yIGZpbGUgJXMgKGxpbmUgJWQpIgorbXNnc3RyICJ6ZHVwbGlrb3dhbnkgd3BpcyBvIHBsaWt1ICVzIHcgbGnFm2NpZSBwbGlrw7N3IChsaW5pYSAlZCkiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjI1OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJiYWRseSBmb3JtZWQgbGluZSBpbiBmaWxlcyBsaXN0IGZpbGUsIGxpbmUgJWQiCittc2dzdHIgIm5pZXBvcHJhd25hIGxpbmlhIHcgcGxpa3UgeiBsaXN0xIUgcGxpa8OzdyB3IGxpbmlpICVkIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDoyOTkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlcyBpbiBjb250cm9sIGZpbGUgYnV0IG5vdCBpbiBmaWxlcyBsaXN0IgorbXNnc3RyICJwYWtpZXQgJXMgdyBwbGlrdSBrb250cm9sbnltLCBhbGUgbmllIHcgbGnFm2NpZSBwbGlrw7N3IgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDozNDMKK21zZ2lkICJyZWFkIGNoYW5nZXNkZXNjcmlwdGlvbiIKK21zZ3N0ciAib2Rjenl0eXdhbmllIG9waXN1IHptaWFuIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDozNTEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlcyBsaXN0ZWQgaW4gZmlsZXMgbGlzdCBidXQgbm90IGluIGNvbnRyb2wgaW5mbyIKK21zZ3N0ciAiIgorInBha2lldCAlcyB3eW1pZW5pb255IHcgbGnFm2NpZSBwbGlrw7N3LCBhbGUgbmllIHcgaW5mb3JtYWNqYWNoIGtvbnRyb2xueWNoIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDozNjMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibWlzc2luZyBTZWN0aW9uIGZvciBiaW5hcnkgcGFja2FnZSAlczsgdXNpbmcgJy0nIgorbXNnc3RyICJicmFrIHBvbGEgU2VjdGlvbiBwYWtpZXR1IGJpbmFybmVnbyAlczsgdcW8eXdhbmllIFwiLVwiIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDozNjUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlcyBoYXMgc2VjdGlvbiAlcyBpbiBjb250cm9sIGZpbGUgYnV0ICVzIGluIGZpbGVzIGxpc3QiCittc2dzdHIgInBha2lldCAlcyBtYSB3IHBsaWt1IGtvbnRyb2xueW0gc2VrY2rEmSAlcyAsIGEgdyBsacWbY2llIHBsaWvDs3cgLSAlcyIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6MzcyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIm1pc3NpbmcgUHJpb3JpdHkgZm9yIGJpbmFyeSBwYWNrYWdlICVzOyB1c2luZyAnLSciCittc2dzdHIgImJyYWsgcG9sYSBQcmlvcml0eSBwYWtpZXR1IGJpbmFybmVnbyAlczsgdcW8eXdhbmllIFwiLVwiIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDozNzQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlcyBoYXMgcHJpb3JpdHkgJXMgaW4gY29udHJvbCBmaWxlIGJ1dCAlcyBpbiBmaWxlcyBsaXN0IgorbXNnc3RyICJwYWtpZXQgJXMgbWEgcHJpb3J5dGV0ICVzIHcgcGxpa3Uga29udHJvbG55bSwgYSAlcyAtIHcgbGnFm2NpZSBwbGlrw7N3IgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDozODYKK21zZ2lkICJtaXNzaW5nIFNlY3Rpb24gZm9yIHNvdXJjZSBmaWxlcyIKK21zZ3N0ciAiYnJhayBwb2xhIFNlY3Rpb24gcGxpa8OzdyDFunLDs2TFgm93eWNoIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDozOTEKK21zZ2lkICJtaXNzaW5nIFByaW9yaXR5IGZvciBzb3VyY2UgZmlsZXMiCittc2dzdHIgImJyYWsgcG9sYSBQcmlvcml0eSBwbGlrw7N3IMW6csOzZMWCb3d5Y2giCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjM5OCBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjM0NgorIzogc2NyaXB0cy9EcGtnL1ZlbmRvci5wbTo3MQorIywgZnV6enksIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgaXMgZW1wdHkiCittc2dzdHIgInBsaWsgJXMgamVzdCBwdXN0eSIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6NDI0Cittc2dpZCAibm90IGluY2x1ZGluZyBvcmlnaW5hbCBzb3VyY2UgY29kZSBpbiB1cGxvYWQiCittc2dzdHIgIm5pZWRvxYLEhWN6YW5pZSBvcnlnaW5hbG55Y2gga29kw7N3IMW6csOzZMWCb3d5Y2ggZG8gd3lkYW5pYSIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6NDMxCittc2dpZCAiaWdub3JpbmcgLXNkIG9wdGlvbiBmb3IgbmF0aXZlIERlYmlhbiBwYWNrYWdlIgorbXNnc3RyICJuYXR5d255IHBha2lldCBEZWJpYW5hIC0gaWdub3Jvd2FuaWUgb3BjamkgLXNkICIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6NDMzCittc2dpZCAiaW5jbHVkaW5nIGZ1bGwgc291cmNlIGNvZGUgaW4gdXBsb2FkIgorbXNnc3RyICJkb8WCxIVjemFuaWUgcGXFgm55Y2gga29kw7N3IMW6csOzZMWCb3d5Y2ggZG8gd3lkYW5pYSIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6NDM2Cittc2dpZCAiYmluYXJ5LW9ubHkgdXBsb2FkIC0gbm90IGluY2x1ZGluZyBhbnkgc291cmNlIGNvZGUiCittc2dzdHIgInd5ZGFuaWUgdHlsa28gYmluYXJuZSAtIG5pZWRvxYLEhWN6YW5pZSDFvGFkbnljaCBrb2TDs3cgxbpyw7NkxYJvd3ljaCIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6NDQwCittc2dpZCAid3JpdGUgb3JpZ2luYWwgc291cmNlIG1lc3NhZ2UiCittc2dzdHIgInd5cGlzeXdhbmllIG9yeWdpbmFsbmVnbyBrb211bmlrYXR1IMW6csOzZMWCb3dlZ28iCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjQ5NCBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG06NTMyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIm1pc3NpbmcgaW5mb3JtYXRpb24gZm9yIGNyaXRpY2FsIG91dHB1dCBmaWVsZCAlcyIKK21zZ3N0ciAiYnJhayBpbmZvcm1hY2ppIG8ga3J5dHljem55bSBwb2x1IHd5asWbY2lvd3ltICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDo0OTkgc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MjcyCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDoyNzUgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOjUzNworIywgcGVybC1mb3JtYXQKK21zZ2lkICJtaXNzaW5nIGluZm9ybWF0aW9uIGZvciBvdXRwdXQgZmllbGQgJXMiCittc2dzdHIgImJyYWsgaW5mb3JtYWNqaSBvIHBvbHUgd3lqxZtjaW93eW0gJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjU4Cittc2dpZCAiIgorIlxuIgorIkNvcHlyaWdodCAoQykgMTk5NiBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMiBXaWNoZXJ0IEFra2VybWFuLiIKK21zZ3N0ciAiIgorIlxuIgorIkNvcHlyaWdodCAoQykgMTk5NiBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMiBXaWNoZXJ0IEFra2VybWFuLiIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6NzAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXVxuIgorIlxuIgorIk9wdGlvbnM6XG4iCisiICAtcDxwYWNrYWdlPiAgICAgICAgICAgICAgcHJpbnQgY29udHJvbCBmaWxlIGZvciBwYWNrYWdlLlxuIgorIiAgLWM8Y29udHJvbGZpbGU+ICAgICAgICAgIGdldCBjb250cm9sIGluZm8gZnJvbSB0aGlzIGZpbGUuXG4iCisiICAtbDxjaGFuZ2Vsb2dmaWxlPiAgICAgICAgZ2V0IHBlci12ZXJzaW9uIGluZm8gZnJvbSB0aGlzIGZpbGUuXG4iCisiICAtRjxjaGFuZ2Vsb2dmb3JtYXQ+ICAgICAgZm9yY2UgY2hhbmdlIGxvZyBmb3JtYXQuXG4iCisiICAtdjxmb3JjZXZlcnNpb24+ICAgICAgICAgc2V0IHZlcnNpb24gb2YgYmluYXJ5IHBhY2thZ2UuXG4iCisiICAtZjxmaWxlc2xpc3RmaWxlPiAgICAgICAgd3JpdGUgZmlsZXMgaGVyZSBpbnN0ZWFkIG9mIGRlYmlhbi9maWxlcy5cbiIKKyIgIC1QPHBhY2thZ2VidWlsZGRpcj4gICAgICB0ZW1wb3JhcnkgYnVpbGQgZGlyIGluc3RlYWQgb2YgZGViaWFuL3RtcC5cbiIKKyIgIC1uPGZpbGVuYW1lPiAgICAgICAgICAgICBhc3N1bWUgdGhlIHBhY2thZ2UgZmlsZW5hbWUgd2lsbCBiZSA8ZmlsZW5hbWU+LlxuIgorIiAgLU8gICAgICAgICAgICAgICAgICAgICAgIHdyaXRlIHRvIHN0ZG91dCwgbm90IC4uLi9ERUJJQU4vY29udHJvbC5cbiIKKyIgIC1pcywgLWlwLCAtaXNwLCAtaXBzICAgICBkZXByZWNhdGVkLCBpZ25vcmVkIGZvciBjb21wYXRpYmlsaXR5LlxuIgorIiAgLUQ8ZmllbGQ+PTx2YWx1ZT4gICAgICAgIG92ZXJyaWRlIG9yIGFkZCBhIGZpZWxkIGFuZCB2YWx1ZS5cbiIKKyIgIC1VPGZpZWxkPiAgICAgICAgICAgICAgICByZW1vdmUgYSBmaWVsZC5cbiIKKyIgIC1WPG5hbWU+PTx2YWx1ZT4gICAgICAgICBzZXQgYSBzdWJzdGl0dXRpb24gdmFyaWFibGUuXG4iCisiICAtVDx2YXJsaXN0ZmlsZT4gICAgICAgICAgcmVhZCB2YXJpYWJsZXMgaGVyZSwgbm90IGRlYmlhbi9zdWJzdHZhcnMuXG4iCisiICAtaCwgLS1oZWxwICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgICAgICAtLXZlcnNpb24gICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorbXNnc3RyICIiCisiVcW8eWNpZTogJXMgWzxvcGNqYT4gLi4uXVxuIgorIlxuIgorIk9wY2plOlxuIgorIiAgLXA8cGFraWV0PiAgICAgICAgICAgICAgIHd5xZt3aWV0bGEgcGxpayBrb250cm9sbnkgcGFraWV0dS5cbiIKKyIgIC1jPHBsaWtfa29udHJvbG55PiAgICAgICBwb2JpZXJhIGluZm9ybWFjamUga29udHJvbG5lIHogdGVnbyBwbGlrdS5cbiIKKyIgIC1sPHBsaWtfem1pYW4+ICAgICAgICAgICBwb2JpZXJhIGluZm9ybWFjamUgbyB3ZXJzamkgeiB0ZWdvIHBsaWt1LlxuIgorIiAgLUY8Zm9ybWF0X3BsaWt1X3ptaWFuPiAgIHd5bXVzemEgZm9ybWF0IHBsaWt1IHptaWFuLlxuIgorIiAgLXY8d3ltdXN6b25hX3dlcnNqYT4gICAgIHVzdGF3aWEgd2Vyc2rEmSBwYWtpZXR1IGJpbmFybmVnby5cbiIKKyIgIC1mPHBsaWtfel9saXN0xIVfcGxpa8Ozdz4gIHphcGlzdWplIHBsaWtpIHRhbSB6YW1pYXN0IGRvIGRlYmlhbi9maWxlcy5cbiIKKyIgIC1QPGthdGFsX2J1ZG93X3Bha2VpdHU+ICB0eW1jemFzb3d5IGthdGFsb2cgYnVkb3dhbmlhIHphbWlhc3QgZGViaWFuL3RtcC5cbiIKKyIgIC1uPG5hendhX3BsaWt1PiAgICAgICAgICBwcnp5am11amUsIMW8ZSBwbGlraWVtIHBha2lldHUgYsSZZHppZSAiCisiPG5hendhX3BsaWt1Pi5cbiIKKyIgIC1PICAgICAgICAgICAgICAgICAgICAgICB6YXBpcyBuYSBzdGRvdXQsIHphbWlhc3QgZG8gLi4uL0RFQklBTi9jb250cm9sLlxuIgorIiAgLWlzLCAtaXAsIC1pc3AsIC1pcHMgICAgIHByemVzdGFyemHFgmUsIGlnbm9yb3dhbmUgZGxhIHphY2hvd2FuaWEgIgorImtvbXBhdHliaWxub8WbY2kuXG4iCisiICAtRDxwb2xlPj08d2FydG/Fm8SHPiAgICAgICBuYWRwaXN1amUgbHViIGRvZGFqZSBwb2xlIGRvIC5kc2Mgd3JheiB6ICIKKyJ3YXJ0b8WbY2nEhS5cbiIKKyIgIC1VPHBvbGU+ICAgICAgICAgICAgICAgICB1c3V3YSBwb2xlLlxuIgorIiAgLVY8bmF6d2E+PTx3YXJ0b8WbxIc+ICAgICAgdXN0YXdpYSB6bWllbm7EhSBwb2RzdGF3aWFuaWEuXG4iCisiICAtVDxwbGlrX3ptaWVubnljaD4gICAgICAgY3p5dGEgem1pZW5uZSB6IHRlZ28gcGxpa3UsIGEgbmllIHogZGViaWFuLyIKKyJzdWJzdHZhcnMuXG4iCisiICAtaCwgLS1oZWxwICAgICAgICAgICAgICAgd3nFm3dpZXRsYSB0ZW4ga29tdW5pa2F0IHBvbW9jeS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICB3ecWbd2lldGxhIGluZm9ybWFjamUgbyB3ZXJzamkgcHJvZ3JhbXUuXG4iCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjk3IHNjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsOjExOAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJJbGxlZ2FsIHBhY2thZ2UgbmFtZSBgJXMnIgorbXNnc3RyICJOaWVwcmF3aWTFgm93YSBuYXp3YSBwYWtpZXR1IFwiJXNcIiIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MTUyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgJXMgbm90IGluIGNvbnRyb2wgaW5mbyIKK21zZ3N0ciAiYnJhayBwYWtpZXR1ICVzIHcgcGxpa3Uga29udHJvbG55bSIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MTU2IHNjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsOjE1OQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJtdXN0IHNwZWNpZnkgcGFja2FnZSBzaW5jZSBjb250cm9sIGluZm8gaGFzIG1hbnkgKCVzKSIKK21zZ3N0ciAibmFsZcW8eSBwb2RhxIcgcGFraWV0LCBwb25pZXdhxbwgcGxpayBrb250cm9sbnkgemF3aWVyYSBpY2gga2lsa2EgKCVzKSIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MTYwCisjLCBmdXp6eSwgcGVybC1mb3JtYXQKK21zZ2lkICJwYWNrYWdlICVzOiAiCittc2dzdHIgInJvenBha293eXdhbmllICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDoxODUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiYCVzJyBpcyBub3QgYSBsZWdhbCBhcmNoaXRlY3R1cmUgc3RyaW5nLiIKK21zZ2lkX3BsdXJhbCAiYCVzJyBhcmUgbm90IGxlZ2FsIGFyY2hpdGVjdHVyZSBzdHJpbmdzLiIKK21zZ3N0clswXSAiXCIlc1wiIG5pZSBqZXN0IHBvcHJhd255bSDFgmHFhGN1Y2hlbSBva3JlxZtsYWrEhWN5bSBhcmNoaXRla3R1csSZLiIKK21zZ3N0clsxXSAiXCIlc1wiIG5pZSBzxIUgcG9wcmF3bnltaSDFgmHFhGN1Y2hhbWkgb2tyZcWbbGFqxIVjeW1pIGFyY2hpdGVrdHVyxJkuIgorbXNnc3RyWzJdICJcIiVzXCIgbmllIHPEhSBwb3ByYXdueW1pIMWCYcWEY3VjaGFtaSBva3JlxZtsYWrEhWN5bWkgYXJjaGl0ZWt0dXLEmS4iCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjE5MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiY3VycmVudCBob3N0IGFyY2hpdGVjdHVyZSAnJXMnIGRvZXMgbm90IGFwcGVhciBpbiBwYWNrYWdlJ3MgYXJjaGl0ZWN0dXJlICIKKyJsaXN0ICglcykiCittc2dzdHIgIiIKKyJiaWXFvMSFY2EgYXJjaGl0ZWt0dXJhIGdvxZtjaWEgJXMgbmllIGplc3Qgd3ltaWVuaW9uYSB3IGxpxZtjaWUgYXJjaGl0ZWt0dXIgIgorInBha2lldHUgKCVzKSIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MjQ2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGZpZWxkIG9mIHBhY2thZ2UgJXM6ICIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDoyNTAgc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MjU4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImVycm9yIG9jY3VycmVkIHdoaWxlIHBhcnNpbmcgJXMgZmllbGQ6ICVzIgorbXNnc3RyICJ3eXN0xIVwacWCIGLFgsSFZCBwb2RjemFzIHByemV0d2FyemFuaWEgcG9sYSAlczogJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjI2MworIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisidGhlICVzIGZpZWxkIGNvbnRhaW5zIGFuIGFyY2gtc3BlY2lmaWMgZGVwZW5kZW5jeSBidXQgdGhlIHBhY2thZ2UgaXMgIgorImFyY2hpdGVjdHVyZSBhbGwiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6Mjg3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIHBhY2thZ2Ugd2l0aCB1ZGViIHNwZWNpZmljIGZpZWxkICVzIgorbXNnc3RyICJwYWtpZXQgJXMgemF3aWVyYWrEhWN5IHBvbGUgJXMgc3BlY3lmaWN6bmUgZGxhIHVkZWIiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjMwMCBzY3JpcHRzL2Rwa2ctc2NhbnNvdXJjZXMucGw6MzEzCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjgzNiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL1BhcnNlLnBtOjEzOAorIzogc2NyaXB0cy9EcGtnL0lQQy5wbToyMjkgc2NyaXB0cy9EcGtnL1NobGlicy9PYmpkdW1wLnBtOjE4MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3QgZm9yayBmb3IgJXMiCittc2dzdHIgIm5pZSBtb8W8bmEgd3lrb25hxIcgZnVua2NqaSBmb3JrIGRsYSAlcyIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MzAzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNoZGlyIGZvciBkdSB0byBgJXMnIgorbXNnc3RyICJ6bWlhbmEga2F0YWxvZ3UgZGxhIGR1IG5hIFwiJXNcIiIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MzA1IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6ODQzCisjOiBzY3JpcHRzL0Rwa2cvSVBDLnBtOjI3MSBzY3JpcHRzL0Rwa2cvU2hsaWJzL0NwcGZpbHQucG06NTAKKyMsIGZ1enp5LCBwZXJsLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBleGVjdXRlICVzIgorbXNnc3RyICJuaWUgbW/FvG5hIG90d29yennEhyBjcHV0YWJsZSIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MzEyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImR1IGluIGAlcyciCittc2dzdHIgImR1IG5hIFwiJXNcIiIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MzE0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImR1IGdhdmUgdW5leHBlY3RlZCBvdXRwdXQgYCVzJyIKK21zZ3N0ciAiZHUgd3lwaXNhxYJvIGR6aXdueSBrb211bmlrYXQgIFwiJXNcIiIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MzQ3Cittc2dpZCAiY2xvc2Ugb2xkIGZpbGVzIGxpc3QgZmlsZSIKK21zZ3N0ciAiemFteWthbmllIHN0YXJlZ28gcGxpa3UgeiBsaXN0xIUgcGxpa8OzdyIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MzY5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCBvcGVuIG5ldyBvdXRwdXQgY29udHJvbCBmaWxlIGAlcyciCittc2dzdHIgIm5pZSBtb8W8bmEgb3R3b3J6ecSHIG5vd2VnbyBwbGlrdSBrb250cm9sbmVnbyBcIiVzXCIiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjM3OCBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjUyMworIzogc2NyaXB0cy9EcGtnL0ludGVyZmFjZS9TdG9yYWJsZS5wbTo5MQorIzogc2NyaXB0cy9EcGtnL0ludGVyZmFjZS9TdG9yYWJsZS5wbToxMTkgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbToyOTAKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo2MDcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IGNsb3NlICVzIgorbXNnc3RyICJuaWUgbW/FvG5hIHphbWtuxIXEhyAlcyIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MzgwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCBpbnN0YWxsIG91dHB1dCBjb250cm9sIGZpbGUgYCVzJyIKK21zZ3N0ciAibmllIG1vxbxuYSB6YWluc3RhbG93YcSHIHd5asWbY2lvd2VnbyBwbGlrdSBrb250cm9sbmVnbyBcIiVzXCIiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsOjUxCittc2dpZCAiIgorIlxuIgorIkNvcHlyaWdodCAoQykgMjAwNyBSYXBoYWVsIEhlcnR6b2cuXG4iCittc2dzdHIgIiIKKyJcbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDcgUmFwaGFlbCBIZXJ0em9nLlxuIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbDo2MworIywgZnV6enksIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXVxuIgorIlxuIgorIk9wdGlvbnM6XG4iCisiICAtcDxwYWNrYWdlPiAgICAgICAgICAgICAgZ2VuZXJhdGUgc3ltYm9scyBmaWxlIGZvciBwYWNrYWdlLlxuIgorIiAgLVA8cGFja2FnZWJ1aWxkZGlyPiAgICAgIHRlbXBvcmFyeSBidWlsZCBkaXIgaW5zdGVhZCBvZiBkZWJpYW4vdG1wLlxuIgorIiAgLWU8bGlicmFyeT4gICAgICAgICAgICAgIGV4cGxpY2l0bHkgbGlzdCBsaWJyYXJpZXMgdG8gc2Nhbi5cbiIKKyIgIC12PHZlcnNpb24+ICAgICAgICAgICAgICB2ZXJzaW9uIG9mIHRoZSBwYWNrYWdlcyAoZGVmYXVsdHMgdG9cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICB2ZXJzaW9uIGV4dHJhY3RlZCBmcm9tIGRlYmlhbi9jaGFuZ2Vsb2cpLlxuIgorIiAgLWM8bGV2ZWw+ICAgICAgICAgICAgICAgIGNvbXBhcmUgZ2VuZXJhdGVkIHN5bWJvbHMgZmlsZSB3aXRoIHRoZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlZmVyZW5jZSB0ZW1wbGF0ZSBpbiB0aGUgZGViaWFuIGRpcmVjdG9yeVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGFuZCBmYWlsIGlmIGRpZmZlcmVuY2UgaXMgdG9vIGltcG9ydGFudFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIChsZXZlbCBnb2VzIGZyb20gMCBmb3Igbm8gY2hlY2ssIHRvIDRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgYWxsIGNoZWNrcykuIEJ5IGRlZmF1bHQgY2hlY2tzIGF0XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV2ZWwgMS5cbiIKKyIgIC1xICAgICAgICAgICAgICAgICAgICAgICBrZWVwIHF1aWV0IGFuZCBuZXZlciBlbWl0IGFueSB3YXJuaW5ncyBvclxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGdlbmVyYXRlIGEgZGlmZiBiZXR3ZWVuIGdlbmVyYXRlZCBzeW1ib2xzXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsZSBhbmQgdGhlIHJlZmVyZW5jZSB0ZW1wbGF0ZS5cbiIKKyIgIC1JPGZpbGU+ICAgICAgICAgICAgICAgICBmb3JjZSB1c2FnZSBvZiA8ZmlsZT4gYXMgcmVmZXJlbmNlIHN5bWJvbHNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxlIGluc3RlYWQgb2YgdGhlIGRlZmF1bHQgZmlsZS5cbiIKKyIgIC1PPGZpbGU+ICAgICAgICAgICAgICAgICB3cml0ZSB0byA8ZmlsZT4sIG5vdCAuLi4vREVCSUFOL3N5bWJvbHMuXG4iCisiICAtTyAgICAgICAgICAgICAgICAgICAgICAgd3JpdGUgdG8gc3Rkb3V0LCBub3QgLi4uL0RFQklBTi9zeW1ib2xzLlxuIgorIiAgLXQgICAgICAgICAgICAgICAgICAgICAgIHdyaXRlIGluIHRlbXBsYXRlIG1vZGUgKHRhZ3MgYXJlIG5vdFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHByb2Nlc3NlZCBhbmQgaW5jbHVkZWQgaW4gb3V0cHV0KS5cbiIKKyIgIC1WICAgICAgICAgICAgICAgICAgICAgICB2ZXJib3NlIG91dHB1dC4gV3JpdGUgZGVwcmVjYXRlZCBzeW1ib2xzIGFuZFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhdHRlcm4gbWF0Y2hpbmcgc3ltYm9scyBhcyBjb21tZW50c1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIChpbiB0ZW1wbGF0ZSBtb2RlIG9ubHkpLlxuIgorIiAgLWE8YXJjaD4gICAgICAgICAgICAgICAgIGFzc3VtZSA8YXJjaD4gYXMgaG9zdCBhcmNoaXRlY3R1cmUgd2hlbiAiCisicHJvY2Vzc2luZ1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHN5bWJvbCBmaWxlcy5cbiIKKyIgIC1kICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5IGRlYnVnIGluZm9ybWF0aW9uIGR1cmluZyB3b3JrLlxuIgorIiAgLWgsIC0taGVscCAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAgICAgLS12ZXJzaW9uICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIgorIlXFvHljaWU6ICVzIFs8b3BjamE+IC4uLl1cbiIKKyJcbiIKKyJPcGNqZTpcbiIKKyIgIC1wPHBha2lldD4gICAgICAgICAgICAgICBnZW5lcnVqZSBwbGlrIHN5bWJvbGkgZGxhIHBha2lldHUuXG4iCisiICAtUDxrYXRidWRvd3Bha2lldHU+ICAgICAgdHltY3phc293eSBrYXRhbG9nIGJ1ZG93LiBwYWtpZXR1IHphbWlhc3QgZGViaWFuLyIKKyJ0bXAuXG4iCisiICAtZTxiaWJsaW90ZWthPiAgICAgICAgICAgYmV6cG/Fm3JlZG5pbyBwb2RhbmEgbGlzdGEgYmlibGlvdGVrIGRvICIKKyJza2Fub3dhbmlhLlxuIgorIiAgLXY8d2Vyc2phPiAgICAgICAgICAgICAgIHdlcnNqYSBwYWtpZXTDs3cgKGRvbXnFm2xuaWUgYnJhbmFcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICB3ZXJzamEgd3ljacSFZ25pxJl0YSB6IGRlYmlhbi9jaGFuZ2Vsb2cpLlxuIgorIiAgLWM8cG96aW9tPiAgICAgICAgICAgICAgIHBvcsOzd251amUgd3lnZW5lcm93YW55IHBsaWsgc3ltYm9saVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHogcGxpa2llbSByZWZlcmVuY2UgdyBrYXRhbG9ndSBkZWJpYW4uXG4iCisiXHRcdFx0ICAgS2/FhGN6eSBzacSZIGLFgsSZZGVtLCBqZcWbbGkgcsOzxbxuaWNlIHPEhSB6Ynl0IHdhxbxuZVxuIgorIlx0XHRcdCAgIChwb3ppb20gb2QgMCAtIMW8YWRueWNoIHNwcmF3ZHplxYQgZG8gNFxuIgorIlx0XHRcdCAgIC0gd3N6eXN0a2llIHNwcmF3ZHplbmlhKS4gRG9tecWbbG55IHBvemlvbVxuIgorIlx0XHRcdCAgIHRvIDEuXG4iCisiICAtSTxwbGlrPiAgICAgICAgICAgICAgICAgd3ltdXN6YSB1xbx5Y2llIDxwbGlrdT4gamFrbyBwbGlrdSBzeW1ib2xpXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgemFtaWFzdCB1xbx5d2HEhyBkb215xZtsbmVnbyBwbGlrdS5cbiIKKyIgIC1PPHBsaWs+ICAgICAgICAgICAgICAgICB6YXBpc3VqZSBkbyA8cGxpa3U+LCB6YW1pYXN0IC4uLi9ERUJJQU4vc3ltYm9scy5cbiIKKyIgIC1PICAgICAgICAgICAgICAgICAgICAgICB6YXBpc3VqZSBuYSBzdGRvdXQsIHphbWlhc3QgLi4uL0RFQklBTi9zeW1ib2xzLlxuIgorIiAgLXQgICAgICAgICAgICAgICAgICAgICAgIHphcGlzdWplIHcgdHJ5YmllIHN6YWJsb251ICh0YWdpIG5pZSBzxIVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBwcnpldHdhcnphbmUgaSB3xYLEhWN6b25lIG5hIHd5asWbY2l1KS5cbiIKKyIgIC1kICAgICAgICAgICAgICAgICAgICAgICBwb2RjemFzIHByYWN5IHd5xZt3aWV0bGEga29tdW5pa2F0eSBkZWJ1Z293YW5pYS5cbiIKKyIgIC1oLCAtLWhlbHAgICAgICAgICAgICAgICB3ecWbd2lldGxhIHRlbiBrb211bmlrYXQgcG9tb2N5LlxuIgorIiAgICAgIC0tdmVyc2lvbiAgICAgICAgICAgIHd5xZt3aWV0bGEgaW5mb3JtYWNqZSBvIHdlcnNqaS5cbiIKKworIzogc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGw6MTk0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIkNhbid0IHJlYWQgZGlyZWN0b3J5ICVzOiAlcyIKK21zZ3N0ciAiTmllIG1vxbxuYSBvZGN6eXRhxIcga2F0YWxvZ3UgJXM6ICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbDoyMDkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiT2JqZHVtcCBjb3VsZG4ndCBwYXJzZSAlc1xuIgorbXNnc3RyICJPYmpkdW1wIG5pZSBtb8W8ZSBwcnpldHdvcnp5xIcgJXNcbiIKKworIzogc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGw6MjI3CisjLCBmdXp6eQorbXNnaWQgIjxzdGFuZGFyZCBvdXRwdXQ+IgorbXNnc3RyICJzdGFuZGFyZG93ZSB3ZWrFm2NpZSIKKworIzogc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGw6MjU1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIm5ldyBsaWJyYXJpZXMgYXBwZWFyZWQgaW4gdGhlIHN5bWJvbHMgZmlsZTogJXMiCittc2dzdHIgIncgcGxpa3Ugc3ltYm9saSBwb2phd2nFgnkgc2nEmSBub3dlIGJpYmxpb3Rla2k6ICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbDoyNjAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAic29tZSBsaWJyYXJpZXMgZGlzYXBwZWFyZWQgaW4gdGhlIHN5bWJvbHMgZmlsZTogJXMiCittc2dzdHIgInBld25lIGJpYmxpb3Rla2kgem5pa27EmcWCeSB6IHBsaWt1IHN5bWJvbGk6ICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbDoyNjUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAic29tZSBuZXcgc3ltYm9scyBhcHBlYXJlZCBpbiB0aGUgc3ltYm9scyBmaWxlOiAlcyIKK21zZ3N0ciAicGV3bmUgbm93ZSBzeW1ib2xlIHBvamF3acWCeSBzacSZIHcgcGxpa3Ugc3ltYm9saTogJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsOjI2NiBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbDoyNzEKK21zZ2lkICJzZWUgZGlmZiBvdXRwdXQgYmVsb3ciCittc2dzdHIgInBhdHJ6IHBvbmnFvHN6ZSB3eWrFm2NpZSBkaWZmIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbDoyNzAKKyMsIGZ1enp5LCBwZXJsLWZvcm1hdAorbXNnaWQgInNvbWUgc3ltYm9scyBvciBwYXR0ZXJucyBkaXNhcHBlYXJlZCBpbiB0aGUgc3ltYm9scyBmaWxlOiAlcyIKK21zZ3N0ciAicGV3bmUgc3ltYm9sZSB6bmlrbsSZxYJ5IHogcGxpa3Ugc3ltYm9saTogJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsOjI5MQorbXNnaWQgInRoZSBnZW5lcmF0ZWQgc3ltYm9scyBmaWxlIGlzIGVtcHR5IgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsOjI5MworIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBkb2Vzbid0IG1hdGNoIGNvbXBsZXRlbHkgJXMiCittc2dzdHIgIiVzIGNhxYJrb3dpY2llIG5pZSBwYXN1amUgZG8gJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsOjI5NgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJubyBkZWJpYW4vc3ltYm9scyBmaWxlIHVzZWQgYXMgYmFzaXMgZm9yIGdlbmVyYXRpbmcgJXMiCittc2dzdHIgImRvIGdlbmVyb3dhbmlhICVzIG5pZSB1xbx5dG8gxbxhZG5lZ28gcGxpa3UgZGViaWFuL3N5bWJvbHMiCisKKyM6IHNjcmlwdHMvZHBrZy1tZXJnZWNoYW5nZWxvZ3MucGw6NTUKKyMsIGZ1enp5Cittc2dpZCAiQ29weXJpZ2h0IChDKSAyMDA5LTIwMTAgUmFwaGFlbCBIZXJ0em9nLiIKK21zZ3N0ciAiIgorIlxuIgorIkNvcHlyaWdodCAoQykgMjAwNyBSYXBoYWVsIEhlcnR6b2cuXG4iCisKKyM6IHNjcmlwdHMvZHBrZy1tZXJnZWNoYW5nZWxvZ3MucGw6NTgKKyMsIGZ1enp5Cittc2dpZCAiIgorIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgb3JcbiIKKyJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKK21zZ3N0ciAiIgorIlxuIgorIlRlbiBwcm9ncmFtIGplc3Qgb3Byb2dyYW1vd2FuaWVtIHdvbG55bSwgcm96cG93c3plY2huaWFueW0gbmEgd2FydW5rYWNoXG4iCisibGljZW5jamkgR05VIHcgd2Vyc2ppIGRydWdpZWogbHViIHDDs8W6bmllanN6ZWouIEJyYWsgSkFLSUVKS09MV0lFSyAiCisiZ3dhcmFuY2ppLlxuIgorCisjOiBzY3JpcHRzL2Rwa2ctbWVyZ2VjaGFuZ2Vsb2dzLnBsOjY1CisjLCBmdXp6eSwgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIDxvbGQ+IDxuZXctYT4gPG5ldy1iPiBbPG91dD5dXG4iCisiXG4iCisiT3B0aW9uczpcbiIKKyIgIC0tbWVyZ2UtcHJlcmVsZWFzZXMsIC1tICBtZXJnZSBwcmUtcmVsZWFzZXMgdG9nZXRoZXIsIGlnbm9yZXMgZXZlcnl0aGluZ1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGFmdGVyIHRoZSBsYXN0ICd+JyBpbiB0aGUgdmVyc2lvbi5cbiIKKyIgIC0taGVscCwgLWgsIC0/ICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCittc2dzdHIgIiIKKyJVxbx5Y2llOiAlcyBbPG9wY2phPiAuLi5dIDxuYXp3YV9wbGlrdT4gPHNla2NqYT4gPHByaW9yeXRldD5cbiIKKyJcbiIKKyJPcGNqZTpcbiIKKyIgIC1mPHBsaWt6bGlzdMSFcGxpa8Ozdz4gICAgICAgIHphcGlzdWplIHBsaWtpIGRvIHBvZGFuZWdvIHBsaWt1IHphbWlhc3QgIgorImRlYmlhbi9maWxlcy5cbiIKKyIgIC0taGVscCAgICAgICB3ecWbd2lldGxhIHRlbiBrb211bmlrYXQgcG9tb2N5LlxuIgorIiAgLS12ZXJzaW9uICAgIHd5xZt3aWV0bGEgaW5mb3JtYWNqZSBvIHdlcnNqaSBwcm9ncmFtdS5cbiIKKworIzogc2NyaXB0cy9kcGtnLW1lcmdlY2hhbmdlbG9ncy5wbDoxMjkgc2NyaXB0cy9kcGtnLW1lcmdlY2hhbmdlbG9ncy5wbDoxMzEKKyM6IHNjcmlwdHMvRHBrZy9Db21wcmVzc2lvbi9GaWxlSGFuZGxlLnBtOjM4NQorIzogc2NyaXB0cy9EcGtnL0ludGVyZmFjZS9TdG9yYWJsZS5wbToxMTUgc2NyaXB0cy9EcGtnL0lQQy5wbToyNTUKKyM6IHNjcmlwdHMvRHBrZy9JUEMucG06MjYzIHNjcmlwdHMvRHBrZy9Tb3VyY2UvRnVuY3Rpb25zLnBtOjc4CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG06NDQ3IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbTo1NTAKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbToyMTcgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjUzMAorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjYwNQorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjE0MgorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjE1MQorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjE1NworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjIyNgorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjIzNAorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjM0MQorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjM1MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgd3JpdGUgJXMiCittc2dzdHIgIm5pZSBtb8W8bmEgemFwaXNhxIcgJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1uYW1lLnBsOjUxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIlVzYWdlOiAlcyBbPG9wdGlvbj4uLi5dIDxmaWxlPi4uLlxuIgorbXNnc3RyICJVxbx5Y2llOiAlcyBbPG9wY2phPi4uLl0gPHBsaWs+Li4uXG4iCisKKyM6IHNjcmlwdHMvZHBrZy1uYW1lLnBsOjUzCittc2dpZCAiIgorIlxuIgorIk9wdGlvbnM6XG4iCisiICAtYSwgLS1uby1hcmNoaXRlY3R1cmUgICAgbm8gYXJjaGl0ZWN0dXJlIHBhcnQgaW4gZmlsZW5hbWUuXG4iCisiICAtbywgLS1vdmVyd3JpdGUgICAgICAgICAgb3ZlcndyaXRlIGlmIGZpbGUgZXhpc3RzLlxuIgorIiAgLWssIC0tc3ltbGluayAgICAgICAgICAgIGRvbid0IGNyZWF0ZSBhIG5ldyBmaWxlLCBidXQgYSBzeW1saW5rLlxuIgorIiAgLXMsIC0tc3ViZGlyIFtkaXJdICAgICAgIG1vdmUgZmlsZSBpbnRvIHN1YmRpciAodXNlIHdpdGggY2FyZSkuXG4iCisiICAtYywgLS1jcmVhdGUtZGlyICAgICAgICAgY3JlYXRlIHRhcmdldCBkaXIgaWYgbm90IHRoZXJlICh1c2Ugd2l0aCBjYXJlKS5cbiIKKyIgIC1oLCAtLWhlbHAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLXYsIC0tdmVyc2lvbiAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCisiZmlsZS5kZWIgY2hhbmdlcyB0byA8cGFja2FnZT5fPHZlcnNpb24+XzxhcmNoaXRlY3R1cmU+LjxwYWNrYWdlX3R5cGU+XG4iCisiYWNjb3JkaW5nIHRvIHRoZSAndW5kZXJzY29yZXMgY29udmVudGlvbicuXG4iCittc2dzdHIgIiIKKyJcbiIKKyJPcGNqZTpcbiIKKyIgIC1hLCAtLW5vLWFyY2hpdGVjdHVyZSAgICBiZXogb2tyZcWbbGVuaWEgYXJjaGl0ZWt0dXJ5IHcgbmF6d2llIHBsaWt1LlxuIgorIiAgLW8sIC0tb3ZlcndyaXRlICAgICAgICAgIG5hZHBpc3l3YW5pZSBqZcWbbGkgcGxpayBpc3RuaWVqZS5cbiIKKyIgIC1rLCAtLXN5bWxpbmsgICAgICAgICAgICB0d29yemVuaWUgZG93acSFemFuaWEgemFtaWFzdCBub3dlZ28gcGxpa3UuXG4iCisiICAtcywgLS1zdWJkaXIgW2thdGFsb2ddICAgcHJ6ZW5pZXNpZW5pZSBwbGlrdSBkbyBwb2RrYXRhbG9ndSAob3N0cm/FvG5pZSEpLlxuIgorIiAgLWMsIC0tY3JlYXRlLWRpciAgICAgICAgIHR3b3J6ZW5pZSBrYXQuZG9jZWxvd2VnbyBqZcWbbGkgYnJhayAiCisiKG9zdHJvxbxuaWUhKS5cbiIKKyIgIC1oLCAtLWhlbHAgICAgICAgICAgICAgICB3ecWbd2lldGxhIHRlbiBrb211bmlrYXQgcG9tb2N5LlxuIgorIiAgLXYsIC0tdmVyc2lvbiAgICAgICAgICAgIHd5xZt3aWV0bGEgaW5mb3JtYWNqZSBvIHdlcnNqaSBwcm9ncmFtdS5cbiIKKyJcbiIKKyJwbGlrLmRlYiBqZXN0IHptaWVuaWFueSBuYSA8cGFraWV0Pl88d2Vyc2phPl88YXJjaGl0ZWt0dXJhPi48dHlwX3Bha2lldHU+XG4iCisiemdvZG5pZSB6IFwicmVndcWCYW1pIHBvZGtyZcWbbGFuaWFcIi5cbiIKKworIzogc2NyaXB0cy9kcGtnLW5hbWUucGw6NzUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IGZpbmQgJyVzJyIKK21zZ3N0ciAibmllIG1vxbxuYSBvZG5hbGXFusSHIFwiJXNcIiIKKworIzogc2NyaXB0cy9kcGtnLW5hbWUucGw6OTYgc2NyaXB0cy9EcGtnL0FyY2gucG06MTM4IHNjcmlwdHMvRHBrZy9BcmNoLnBtOjE1NworIzogc2NyaXB0cy9EcGtnL0FyY2gucG06MTc2IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvUGFyc2UucG06MTQyCisjOiBzY3JpcHRzL0Rwa2cvSVBDLnBtOjI0NyBzY3JpcHRzL0Rwa2cvU2hsaWJzLnBtOjc4CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG06MTkzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCBvcGVuICVzIgorbXNnc3RyICJuaWUgbW/FvG5hIG90d29yennEhyAlcyIKKworIzogc2NyaXB0cy9kcGtnLW5hbWUucGw6OTgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiYmluYXJ5IGNvbnRyb2wgZmlsZSAlcyIKK21zZ3N0ciAiYmluYXJueSBwbGlrIGtvbnRyb2xueSAlcyIKKworIzogc2NyaXB0cy9kcGtnLW5hbWUucGw6MTExCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImFzc3VtaW5nIGFyY2hpdGVjdHVyZSAnJXMnIGZvciAnJXMnIgorbXNnc3RyICJwcnp5asSZY2llIGFyY2hpdGVrdHVyeSBcIiVzXCIgZGxhIFwiJXNcIiIKKworIzogc2NyaXB0cy9kcGtnLW5hbWUucGw6MTMzCisjLCBmdXp6eSwgcGVybC1mb3JtYXQKK21zZ2lkICJiYWQgcGFja2FnZSBjb250cm9sIGluZm9ybWF0aW9uIGZvciAnJXMnIgorbXNnc3RyICJOaWUgbW/FvG5hIHByemV0d29yennEhyByZWtvcmR1IGR5bmFtaWN6bmVqIHJlbG9rYWNqaTogJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1uYW1lLnBsOjE0OQorIywgZnV6enksIHBlcmwtZm9ybWF0Cittc2dpZCAiYXNzdW1pbmcgc2VjdGlvbiAnJXMnIGZvciAnJXMnIgorbXNnc3RyICJwcnp5asSZY2llIGFyY2hpdGVrdHVyeSBcIiVzXCIgZGxhIFwiJXNcIiIKKworIzogc2NyaXB0cy9kcGtnLW5hbWUucGw6MTc0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIm5vIFBhY2thZ2UgZmllbGQgZm91bmQgaW4gJyVzJywgc2tpcHBpbmcgaXQiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLW5hbWUucGw6MTg3CisjLCBmdXp6eSwgcGVybC1mb3JtYXQKK21zZ2lkICJjcmVhdGVkIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICJuaWUgbW/FvG5hIHV0d29yennEhyBrYXRhbG9ndSAlcyIKKworIzogc2NyaXB0cy9kcGtnLW5hbWUucGw6MTg5CisjLCBmdXp6eSwgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3QgY3JlYXRlIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICJuaWUgbW/FvG5hIHV0d29yennEhyBrYXRhbG9ndSAlcyIKKworIzogc2NyaXB0cy9kcGtnLW5hbWUucGw6MTkyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIm5vIHN1Y2ggZGlyZWN0b3J5ICclcycsIHRyeSAtLWNyZWF0ZS1kaXIgKC1jKSBvcHRpb24iCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLW5hbWUucGw6MjA3CisjLCBmdXp6eSwgcGVybC1mb3JtYXQKK21zZ2lkICJza2lwcGluZyAnJXMnIgorbXNnc3RyICJhcGxpa293YW5pZSAlcyIKKworIzogc2NyaXB0cy9kcGtnLW5hbWUucGw6MjA5CisjLCBmdXp6eSwgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3QgbW92ZSAnJXMnIHRvIGV4aXN0aW5nIGZpbGUiCittc2dzdHIgIm5pZSBtb8W8bmEgb2Rjenl0YcSHIHBsaWt1IHogbGlzdMSFIHBsaWvDs3ciCisKKyM6IHNjcmlwdHMvZHBrZy1uYW1lLnBsOjIxMQorIywgZnV6enksIHBlcmwtZm9ybWF0Cittc2dpZCAibW92ZWQgJyVzJyB0byAnJXMnIgorbXNnc3RyICJkb2Rhd2FuaWUgJXMgZG8gJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1uYW1lLnBsOjIxMworIywgZnV6enkKK21zZ2lkICJta2RpciBjYW4gYmUgdXNlZCB0byBjcmVhdGUgZGlyZWN0b3J5IgorbXNnc3RyICJuaWUgbW/FvG5hIHV0d29yennEhyBrYXRhbG9ndSAlcyIKKworIzogc2NyaXB0cy9kcGtnLW5hbWUucGw6MjE4Cittc2dpZCAibmVlZCBhdCBsZWFzdCBhIGZpbGVuYW1lIgorbXNnc3RyICJ3eW1hZ2EgY28gbmFqbW5pZWogamVkbmVnbyBhcmd1bWVudHUgYsSZZMSFY2VnbyBuYXp3xIUgcGxpa3UiCisKKyM6IHNjcmlwdHMvZHBrZy1wYXJzZWNoYW5nZWxvZy5wbDozMworbXNnaWQgIiIKKyJcbiIKKyJDb3B5cmlnaHQgKEMpIDE5OTYgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAxIFdpY2hlcnQgQWtrZXJtYW4iCittc2dzdHIgIiIKKyJcbiIKKyJDb3B5cmlnaHQgKEMpIDE5OTYgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAxIFdpY2hlcnQgQWtrZXJtYW4iCisKKyM6IHNjcmlwdHMvZHBrZy1wYXJzZWNoYW5nZWxvZy5wbDo0NQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dXG4iCisiXG4iCisiT3B0aW9uczpcbiIKKyIgIC1sPGNoYW5nZWxvZ2ZpbGU+ICAgICAgICBnZXQgcGVyLXZlcnNpb24gaW5mbyBmcm9tIHRoaXMgZmlsZS5cbiIKKyIgIC1GPGNoYW5nZWxvZ2Zvcm1hdD4gICAgICBmb3JjZSBjaGFuZ2UgbG9nIGZvcm1hdC5cbiIKKyIgIC1MPGxpYmRpcj4gICAgICAgICAgICAgICBsb29rIGZvciBjaGFuZ2UgbG9nIHBhcnNlcnMgaW4gPGxpYmRpcj4uXG4iCisiICAtaCwgLS1oZWxwICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgICAgICAtLXZlcnNpb24gICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorInBhcnNlciBvcHRpb25zOlxuIgorIiAgICAtLWZvcm1hdCA8b3V0cHV0Zm9ybWF0PiAgICAgc2VlIG1hbiBwYWdlIGZvciBsaXN0IG9mIGF2YWlsYWJsZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3V0cHV0IGZvcm1hdHMsIGRlZmF1bHRzIHRvICdkcGtnJ1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBkcGtnLWRldlxuIgorIiAgICAtLXNpbmNlIDx2ZXJzaW9uPiwgICAgICAgICAgaW5jbHVkZSBhbGwgY2hhbmdlcyBsYXRlciB0aGFuIHZlcnNpb25cbiIKKyIgICAgICAtczx2ZXJzaW9uPiwgLXY8dmVyc2lvbj5cbiIKKyIgICAgLS11bnRpbCA8dmVyc2lvbj4sICAgICAgICAgIGluY2x1ZGUgYWxsIGNoYW5nZXMgZWFybGllciB0aGFuIHZlcnNpb25cbiIKKyIgICAgICAtdTx2ZXJzaW9uPlxuIgorIiAgICAtLWZyb20gPHZlcnNpb24+LCAgICAgICAgICAgaW5jbHVkZSBhbGwgY2hhbmdlcyBlcXVhbCBvciBsYXRlclxuIgorIiAgICAgIC1mPHZlcnNpb24+ICAgICAgICAgICAgICAgdGhhbiB2ZXJzaW9uXG4iCisiICAgIC0tdG8gPHZlcnNpb24+LCAtdDx2ZXJzaW9uPiBpbmNsdWRlIGFsbCBjaGFuZ2VzIHVwIHRvIG9yIGVxdWFsXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGFuIHZlcnNpb25cbiIKKyIgICAgLS1jb3VudCA8bnVtYmVyPiwgICAgICAgICAgIGluY2x1ZGUgPG51bWJlcj4gZW50cmllcyBmcm9tIHRoZSB0b3BcbiIKKyIgICAgICAtYzxudW1iZXI+LCAtbjxudW1iZXI+ICAgIChvciB0aGUgdGFpbCBpZiA8bnVtYmVyPiBpcyBsb3dlciB0aGFuIDApXG4iCisiICAgIC0tb2Zmc2V0IDxudW1iZXI+LCAgICAgICAgICBjaGFuZ2UgdGhlIHN0YXJ0aW5nIHBvaW50IGZvciAtLWNvdW50LFxuIgorIiAgICAgIC1vPG51bWJlcj4gICAgICAgICAgICAgICAgY291bnRlZCBmcm9tIHRoZSB0b3AgKG9yIHRoZSB0YWlsIGlmXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bnVtYmVyPiBpcyBsb3dlciB0aGFuIDApXG4iCisiICAgIC0tYWxsICAgICAgICAgICAgICAgICAgICAgICBpbmNsdWRlIGFsbCBjaGFuZ2VzXG4iCittc2dzdHIgIiIKKyJVxbx5Y2llOiAlcyBbPG9wY2phPiAuLi5dXG4iCisiXG4iCisiT3BjamU6XG4iCisiICAtbDxwbGlrX2xvZ3Vfem1pYW4+ICAgICAgICBva3JlxZtsYSB1xbx5d2FueSBwbGlrIHptaWFuLlxuIgorIiAgLUY8Zm9ybWF0X2xvZ3Vfem1pYW4+ICAgICAgd3ltdXN6YSBmb3JtYXQgcGxpa3Ugem1pYW4uXG4iCisiICAtTDxrYXRhbG9nX2JpYmxpb3Rlaz4gICAgICBzenVrYSBwYXJzZXLDs3cgcGxpa3Ugem1pYW4gdyBwb2RhbnltIGthdGFsb2d1LlxuIgorIiAgLWgsIC0taGVscCAgICAgICAgICAgICAgICAgd3nFm3dpZXRsYSB0ZW4ga29tdW5pa2F0IHBvbW9jeS5cbiIKKyIgICAgICAtLXZlcnNpb24gICAgICAgICAgICAgIHd5xZt3aWV0bGEgaW5mb3JtYWNqZSBvIHdlcnNqaSBwcm9ncmFtdS5cbiIKKyJcbiIKKyJPcGNqZSBwYXJzZXJhOlxuIgorIiAgICAtLWZvcm1hdCA8Zm9ybWF0X3d5asWbY2lhPiAgIGxpc3TEmSBmb3JtYXTDs3cgd3lqxZtjaW93eWNoIG1vxbxuYSB6bmFsZcW6xIcgbmFcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9uaWUgcG9kcsSZY3puaWthLCBkb215xZtsbnltIGplc3QgXCJkcGtnIgorIlwiXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkbGEgemFjaG93YW5pYSBrb21wYXR5Ymlsbm/Fm2NpIHogZHBrZy1kZXZcbiIKKyIgICAgLS1zaW5jZSA8d2Vyc2phPiwgICAgICAgICAgIHfFgsSFY3phIHdzenlzdGtpZSB6bWlhbnkgcMOzxbpuaWVqc3plIG9kICIKKyJ3ZXJzamlcbiIKKyIgICAgICAtczx3ZXJzamE+LCAtdjx3ZXJzamE+XG4iCisiICAgIC0tdW50aWwgPHdlcnNqYT4sICAgICAgICAgICB3xYLEhWN6YSB3c3p5c3RraWUgem1pYW55IHdjemXFm25pZWpzemUgb2QgIgorIndlcnNqaVxuIgorIiAgICAgIC11PHdlcnNqYT5cbiIKKyIgICAgLS1mcm9tIDx3ZXJzamE+LCAgICAgICAgICAgIHfFgsSFY3phIHdzenlzdGtpZSB6bWlhbnkgcMOzxbpuaWVqc3plIG9kICIKKyJ3ZXJzamlcbiIKKyIgICAgICAtZjx3ZXJzamE+ICAgICAgICAgICAgICAgIGx1YiBqZWogcsOzd25lXG4iCisiICAgIC0tdG8gPHdlcnNqYT4sIC10PHdlcnNqYT4gICB3xYLEhWN6YSB3c3p5c3RraWUgem1pYW55IGHFvCBkbyBkYW5laiB3ZXJzamksXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDFgsSFY3puaWUgeiB0xIUgd2Vyc2rEhVxuIgorIiAgICAtLWNvdW50IDxsaWN6YmE+LCAgICAgICAgICAgd8WCxIVjemEgPGxpY3piYT4gcG9jesSFdGtvd3ljaCB3cGlzw7N3IChsdWJcbiIKKyIgICAgICAtYzxsaWN6YmE+LCAtbjxsaWN6YmE+ICAgIGtvxYRjb3d5Y2gsIGdkeSA8bGljemJhPiBqZXN0IG1uaWVqc3phIG9kIDApXG4iCisiICAgIC0tb2Zmc2V0IDxsaWN6YmE+LCAgICAgICAgICB6bWllbmlhIHB1bmt0IHBvY3rEhXRrb3d5IGRsYSAtLWNvdW50LFxuIgorIiAgICAgIC1vPGxpY3piYT4gICAgICAgICAgICAgICAgbGljesSFYyBvZCBwb2N6xIV0a3UgcGxpa3UgKGx1YiBrb8WEY2EsXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZHkgPGxpY3piYT4gamVzdCBtbmllanN6YSBvZCAwKVxuIgorIiAgICAtLWFsbCAgICAgICAgICAgICAgICAgICAgICAgd8WCxIVjemEgd3N6eXN0a2llIHptaWFueVxuIgorCisjOiBzY3JpcHRzL2Rwa2ctcGFyc2VjaGFuZ2Vsb2cucGw6MTE3CisjLCBmdXp6eQorI3wgbXNnaWQgIiVzIHRha2VzIG5vIG5vbi1vcHRpb24gYXJndW1lbnRzIgorbXNnaWQgInRha2VzIG5vIG5vbi1vcHRpb24gYXJndW1lbnRzIgorbXNnc3RyICIlcyB3eW1hZ2EgbmllcG9kYXdhbmlhIGFyZ3VtZW50dSBuaWUgYsSZZMSFY2VnbyBvcGNqxIUiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6NjYKKyMsIGZ1enp5LCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gPGJpbmFyeXBhdGg+IFs8b3ZlcnJpZGVmaWxlPiBbPHBhdGhwcmVmaXg+XV0gPiAiCisiUGFja2FnZXNcbiIKKyJcbiIKKyJPcHRpb25zOlxuIgorIiAgLXQsIC0tdHlwZSA8dHlwZT4gICAgICAgIHNjYW4gZm9yIDx0eXBlPiBwYWNrYWdlcyAoZGVmYXVsdCBpcyAnZGViJykuXG4iCisiICAtdSwgLS11ZGViICAgICAgICAgICAgICAgc2NhbiBmb3IgdWRlYnMgKG9ic29sZXRlIGFsaWFzIGZvciAtdHVkZWIpLlxuIgorIiAgLWEsIC0tYXJjaCA8YXJjaD4gICAgICAgIGFyY2hpdGVjdHVyZSB0byBzY2FuIGZvci5cbiIKKyIgIC1tLCAtLW11bHRpdmVyc2lvbiAgICAgICBhbGxvdyBtdWx0aXBsZSB2ZXJzaW9ucyBvZiBhIHNpbmdsZSBwYWNrYWdlLlxuIgorIiAgLWUsIC0tZXh0cmEtb3ZlcnJpZGUgPGZpbGU+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlIGV4dHJhIG92ZXJyaWRlIGZpbGUuXG4iCisiICAtTSwgLS1tZWRpdW0gPG1lZGl1bT4gICAgYWRkIFgtTWVkaXVtIGZpZWxkIGZvciBkc2VsZWN0IG11bHRpY2QgYWNjZXNzICIKKyJtZXRob2RcbiIKKyIgIC1oLCAtLWhlbHAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgICAgIC0tdmVyc2lvbiAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCittc2dzdHIgIiIKKyJVxbx5Y2llOiAlcyBbPG9wY2phPiAuLi5dIDzFm2NpZcW8a2FfYmluYXJpw7N3PiBbPHBsaWtfbmFkcGlzYcWEPiAiCisiWzxwcmVmaWtzX8WbY2llxbxraT5dXSA+IFBhY2thZ2VzXG4iCisiXG4iCisiT3BjamU6XG4iCisiICAtdCwgLS10eXBlIDx0eXA+ICAgICAgICAgc2thbnVqZSBwYWtpZXR5IG8gPHR5cGllPiAoZG9tecWbbG5pZSBcImRlYlwiKS5cbiIKKyIgIC11LCAtLXVkZWIgICAgICAgICAgICAgICBza2FudWplIHBha2lldHkgdWRlYiAoc3RhcnkgYWxpYXMgZGxhIC10dWRlYikuXG4iCisiICAtYSwgLS1hcmNoIDxhcmNoPiAgICAgICAgYXJjaGl0ZWt0dXJhLCBrdMOzcmEgYsSZZHppZSBza2Fub3dhbmEuXG4iCisiICAtbSwgLS1tdWx0aXZlcnNpb24gICAgICAgZG9wdXN6Y3phIHdpZWxlIHdlcnNqaSBwb2plZHluY3plZ28gcGFraWV0dS5cbiIKKyIgIC1lLCAtLWV4dHJhLW92ZXJyaWRlIDxwbGlrPlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHXFvHl3YSBkb2RhdGtvd2VnbyBwbGlrdSBuYWRwaXNhxYQuXG4iCisiICAtaCwtLWhlbHAgICAgICAgICAgICAgICAgd3nFm3dpZXRsYSB0ZW4ga29tdW5pa2F0IHBvbW9jeS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICB3ecWbd2lldGxhIGluZm9ybWFjamUgbyB3ZXJzamkgcHJvZ3JhbXUuXG4iCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6ODMKK21zZ2lkICItdSwgLS11ZGViIG9wdGlvbiBpcyBkZXByZWNhdGVkIChzZWUgUkVBRE1FLmZlYXR1cmUtcmVtb3ZhbC1zY2hlZHVsZSkiCittc2dzdHIgIiIKKyItdSwgLS11ZGViIHPEhSBvcGNqYW1pIHByemVzdGFyemHFgnltaSAocGF0cnogUkVBRE1FLmZlYXR1cmUtcmVtb3ZhbC1zY2hlZHVsZSkiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6MTEyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiAgJXMgKHBhY2thZ2Ugc2F5cyAlcywgbm90ICVzKSIKK21zZ3N0ciAiICAlcyAocGFraWV0IHphd2llcmEgJXMsIG5pZSAlcykiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6MTIwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIlVuY29uZGl0aW9uYWwgbWFpbnRhaW5lciBvdmVycmlkZSBmb3IgJXMiCittc2dzdHIgIkJlendhcnVua293ZSBuYWRwaXNhbmllIG9waWVrdW5hIGRsYSAlcyIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoxNTggc2NyaXB0cy9kcGtnLXNjYW5zb3VyY2VzLnBsOjMwMgorIywgZnV6enkKKyN8IG1zZ2lkICIxIHRvIDMgYXJncyBleHBlY3RlZCIKK21zZ2lkICJvbmUgdG8gdGhyZWUgYXJndW1lbnRzIGV4cGVjdGVkIgorbXNnc3RyICJPY3pla2l3YW5vIG9kIDEgZG8gMyBhcmd1bWVudMOzdyIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoxNzUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiQmluYXJ5IGRpciAlcyBub3QgZm91bmQiCittc2dzdHIgIk5pZSB6bmFsZXppb25vIGthdGFsb2d1IGJpbmFybmVnbyAlcyIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoxNzcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiT3ZlcnJpZGUgZmlsZSAlcyBub3QgZm91bmQiCittc2dzdHIgIk5pZSB6bmFsZXppb25vIHBsaWt1IG5hZHBpc2HFhCAlcyIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoxODMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiQ291bGRuJ3Qgb3BlbiAlcyBmb3IgcmVhZGluZyIKK21zZ3N0ciAiTmllIG1vxbxuYSBvdHdvcnp5xIcgJXMgZG8gb2Rjenl0dSIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoxOTMKKyMsIGZ1enp5LCBwZXJsLWZvcm1hdAorbXNnaWQgImNvdWxkbid0IHBhcnNlIGNvbnRyb2wgaW5mb3JtYXRpb24gZnJvbSAlcy4iCittc2dzdHIgIk5pZSBtb8W8bmEgcHJ6ZXR3b3J6ecSHIHJla29yZHUgZHluYW1pY3puZWogcmVsb2thY2ppOiAlcyIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoxOTYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiYGRwa2ctZGViIC1JICVzIGNvbnRyb2wnIGV4aXRlZCB3aXRoICVkLCBza2lwcGluZyBwYWNrYWdlIgorbXNnc3RyICIiCisiXCJkcGtnLWRlYiAtSSAlcyBjb250cm9sXCIgemFrb8WEY3p5xYIgZHppYcWCYW5pZSB6IGtvZGVtICVkLCBwb21pamFuaWUgcGFraWV0dSIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoyMDIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiTm8gUGFja2FnZSBmaWVsZCBpbiBjb250cm9sIGZpbGUgb2YgJXMiCittc2dzdHIgIkJyYWsgcG9sYSBQYWNrYWdlIHcgcGxpa3Uga29udHJvbG55bSAlcyIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoyMTAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiUGFja2FnZSAlcyAoZmlsZW5hbWUgJXMpIGlzIHJlcGVhdCBidXQgbmV3ZXIgdmVyc2lvbjsiCittc2dzdHIgIlBha2lldCAlcyAocGxpayAlcykgamVzdCBwb3d0w7Nyem9ueSwgYWxlIHcgbm93c3plaiB3ZXJzamk7IgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOjIxMgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1c2VkIHRoYXQgb25lIGFuZCBpZ25vcmVkIGRhdGEgZnJvbSAlcyEiCittc2dzdHIgInXFvHljaWUgdGVqIHdlcnNqaSBpIHXFvHl3YW5pZSBkYW55Y2ggeiAlcyEiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6MjE2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgJXMgKGZpbGVuYW1lICVzKSBpcyByZXBlYXQ7IgorbXNnc3RyICJQYWtpZXQgJXMgKHBsaWsgJXMpIGplc3QgcG93dMOzcnpvbnk7IgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOjIxNworIywgcGVybC1mb3JtYXQKK21zZ2lkICJpZ25vcmVkIHRoYXQgb25lIGFuZCB1c2luZyBkYXRhIGZyb20gJXMhIgorbXNnc3RyICJpZ25vcm93YW5pZSB0ZWogd2Vyc2ppIGkgdcW8eXdhbmllIGRhbnljaCB6ICVzISIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoyMjMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiUGFja2FnZSAlcyAoZmlsZW5hbWUgJXMpIGhhcyBGaWxlbmFtZSBmaWVsZCEiCittc2dzdHIgIlBha2lldCAlcyAocGxpayAlcykgemF3aWVyYSBwb2xlIEZpbGVuYW1lISIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoyNTUKK21zZ2lkICJGYWlsZWQgd2hlbiB3cml0aW5nIHN0ZG91dCIKK21zZ3N0ciAiQsWCxIVkIHBvZGN6YXMgd3lwaXN5d2FuaWEgbmEgc3RhbmRhcmRvd2Ugd3lqxZtjaWUiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6MjU5Cittc2dpZCAiQ291bGRuJ3QgY2xvc2Ugc3Rkb3V0IgorbXNnc3RyICJOaWUgbW/FvG5hIHphbWtuxIXEhyBzdGRvdXQiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6MjYyCittc2dpZCAiUGFja2FnZXMgaW4gb3ZlcnJpZGUgZmlsZSB3aXRoIGluY29ycmVjdCBvbGQgbWFpbnRhaW5lciB2YWx1ZToiCittc2dzdHIgIiIKKyJQYWtpZXR5IHcgcGxpa3UgbmFkcGlzYcWEIHogbmllcG9wcmF3bsSFIHdhcnRvxZtjacSFIHBvcHJ6ZWRuaWVnbyBvcGlla3VuYToiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6MjY2Cittc2dpZCAiUGFja2FnZXMgc3BlY2lmeWluZyBzYW1lIG1haW50YWluZXIgYXMgb3ZlcnJpZGUgZmlsZToiCittc2dzdHIgIlBha2lldHkgbWFqxIVjZSB0ZWdvIHNhbWVnbyBvcGlla3VuYSwgamFrIHd5bWllbmlvbnkgdyBwbGlrdSBuYWRwaXNhxYQ6IgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOjI3MAorbXNnaWQgIlBhY2thZ2VzIGluIGFyY2hpdmUgYnV0IG1pc3NpbmcgZnJvbSBvdmVycmlkZSBmaWxlOiIKK21zZ3N0ciAiUGFraWV0eSB3IGFyY2hpd3VtLCBrdMOzcnljaCBicmFrdWplIHcgcGxpa3UgbmFkcGlzYcWEOiIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoyNzQKK21zZ2lkICJQYWNrYWdlcyBpbiBvdmVycmlkZSBmaWxlIGJ1dCBub3QgaW4gYXJjaGl2ZToiCittc2dzdHIgIlBha2lldHkgdyBwbGlrdSBuYWRwaXNhxYQsIGFsZSBuaWUgdyBhcmNoaXd1bToiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6Mjc4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIldyb3RlICVzIGVudHJpZXMgdG8gb3V0cHV0IFBhY2thZ2VzIGZpbGUuIgorbXNnc3RyICJaYXBpc2FubyAlcyB3cGlzw7N3IGRvIHd5asWbY2lvd2VnbyBwbGlrdSBQYWNrYWdlcy4iCisKKyM6IHNjcmlwdHMvZHBrZy1zY2Fuc291cmNlcy5wbDo4NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIDxiaW5hcnlwYXRoPiBbPG92ZXJyaWRlZmlsZT4gWzxwYXRocHJlZml4Pl1dID4gIgorIlNvdXJjZXNcbiIKKyJcbiIKKyJPcHRpb25zOlxuIgorIiAgLW4sIC0tbm8tc29ydCAgICAgICAgICAgIGRvbid0IHNvcnQgYnkgcGFja2FnZSBiZWZvcmUgb3V0cHV0dGluZy5cbiIKKyIgIC1lLCAtLWV4dHJhLW92ZXJyaWRlIDxmaWxlPlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzZSBleHRyYSBvdmVycmlkZSBmaWxlLlxuIgorIiAgLXMsIC0tc291cmNlLW92ZXJyaWRlIDxmaWxlPlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzZSBmaWxlIGZvciBhZGRpdGlvbmFsIHNvdXJjZSBvdmVycmlkZXMsICIKKyJkZWZhdWx0XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgaXMgcmVndWxhciBvdmVycmlkZSBmaWxlIHdpdGggLnNyYyBhcHBlbmRlZC5cbiIKKyIgICAgICAtLWRlYnVnICAgICAgICAgICAgICB0dXJuIGRlYnVnZ2luZyBvbi5cbiIKKyIgICAgICAtLWhlbHAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgICAgIC0tdmVyc2lvbiAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCisiU2VlIHRoZSBtYW4gcGFnZSBmb3IgdGhlIGZ1bGwgZG9jdW1lbnRhdGlvbi5cbiIKK21zZ3N0ciAiIgorIlXFvHljaWU6ICVzIFs8b3BjamE+IC4uLl0gPMWbY2llxbxrYV9iaW5hcmnDs3c+IFtwbGlrX25hZHBpc2HFhD4gIgorIls8cHJlZmlrc1/Fm2NpZcW8a2k+XV0gPiBTb3VyY2VzXG4iCisiXG4iCisiT3BjamU6XG4iCisiICAtbiwgLS1uby1zb3J0ICAgICAgICAgICAgbmllIHNvcnR1amUgd3lqxZtjaWEgcG8gbmF6d2FjaCBwYWtpZXTDs3cuXG4iCisiICAtZSwgLS1leHRyYS1vdmVycmlkZSA8cGxpaz5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICB1xbx5d2EgZG9kYXRrb3dlZ28gcGxpa3UgbmFkcGlzYcWELlxuIgorIiAgLXMsIC0tc291cmNlLW92ZXJyaWRlIDxwbGlrPlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHXFvHl3YSBwbGlrdSBqYWtvIGRvZGF0a293eWNoIG5hZHBpc2HFhCDFunLDs2RlxYIsICIKKyJkb215xZtsbmllXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgamVzdCB0byB6d3lrxYJ5IHBsaWsgbmFkcGlzYcWEIHogZG/FgsSFY3pvbnltICIKKyJzdWZpa3NlbSAuc3JjIFxuIgorIiAgICAgIC0tZGVidWcgICAgICAgICAgICAgIHfFgsSFY3phIGRlYnVnb3dhbmllLlxuIgorIiAgICAgIC0taGVscCAgICAgICAgICAgICAgIHd5xZt3aWV0bGEgdGVuIGtvbXVuaWthdCBwb21vY3kuXG4iCisiICAgICAgLS12ZXJzaW9uICAgICAgICAgICAgd3nFm3dpZXRsYSBpbmZvcm1hY2plIG8gd2Vyc2ppIHByb2dyYW11LlxuIgorIlxuIgorIlBlxYJuxIUgZG9rdW1lbnRhY2rEmSBtb8W8bmEgem5hbGXFusSHIG5hIHN0cm9uYWNoIHBvZHLEmWN6bmlrYSBzeXN0ZW1vd2Vnby5cbiIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5zb3VyY2VzLnBsOjEwNQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nICVzICgkPyAlZCwgJCEgYCVzJykiCittc2dzdHIgIm5pZSBtb8W8bmEgemFta27EhcSHICVzICgkPyAlZCwgJCEgXCIlc1wiKSIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5zb3VyY2VzLnBsOjEyMQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIG92ZXJyaWRlIGVudHJ5IGF0IGxpbmUgJWQgKCVkIGZpZWxkcykiCittc2dzdHIgIm5pZXBvcHJhd255IHdwaXMgcGxpa3UgbmFkcGlzYcWEIHcgbGluaWkgJWQgKCVkIHDDs2wpIgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnNvdXJjZXMucGw6MTI3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nIGR1cGxpY2F0ZSBvdmVycmlkZSBlbnRyeSBmb3IgJXMgYXQgbGluZSAlZCIKK21zZ3N0ciAiaWdub3Jvd2FuaWUgemR1cGxpa293YW5lZ28gd3Bpc3UgbmFkcGlzYcWEIGRsYSAlcyB3IGxpbmlpICVkIgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnNvdXJjZXMucGw6MTMyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nIG92ZXJyaWRlIGVudHJ5IGZvciAlcywgaW52YWxpZCBwcmlvcml0eSAlcyIKK21zZ3N0ciAiaWdub3Jvd2FuaWUgd3Bpc3UgbmFkcGlzYW5pYSBkbGEgJXM7IG5pZXBvcHJhd255IHByaW9yeXRldCAlcyIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5zb3VyY2VzLnBsOjE4NgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHNvdXJjZSBvdmVycmlkZSBlbnRyeSBhdCBsaW5lICVkICglZCBmaWVsZHMpIgorbXNnc3RyICJuaWVwb3ByYXdueSB3cGlzIGRvdHljesSFY3kgbmFkcGlzYW5pYSDFunLDs2RlxYIgdyBsaW5paSAlZCAoJWQgcMOzbCkiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2Fuc291cmNlcy5wbDoxOTQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgZHVwbGljYXRlIHNvdXJjZSBvdmVycmlkZSBlbnRyeSBmb3IgJXMgYXQgbGluZSAlZCIKK21zZ3N0ciAiIgorImlnbm9yb3dhbmllIHpkdXBsaWtvd2FuZWdvIHdwaXN1IGRvdHljesSFY2VnbyBuYWRwaXNhbmlhIMW6csOzZGXFgiBkbGEgJXMgdyAiCisibGluaWkgJWQiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2Fuc291cmNlcy5wbDoyNDQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibm8gYmluYXJ5IHBhY2thZ2VzIHNwZWNpZmllZCBpbiAlcyIKK21zZ3N0ciAibmllIHBvZGFubyDFvGFkbnljaCBwYWtpZXTDs3cgYmluYXJueWNoIHcgJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6OTMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiYWRtaW5pc3RyYXRpdmUgZGlyZWN0b3J5ICclcycgZG9lcyBub3QgZXhpc3QiCittc2dzdHIgImthdGFsb2cgYWRtaW5pc3RyYWN5am55IFwiJXNcIiBuaWUgaXN0bmllamUiCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6OTgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5yZWNvZ25pc2VkIGRlcGVuZGVuY3kgZmllbGQgYCVzJyIKK21zZ3N0ciAibmllcm96cG96bmFuZSBwb2xlIHphbGXFvG5vxZtjaSBcIiVzXCIiCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6MTMyCittc2dpZCAibmVlZCBhdCBsZWFzdCBvbmUgZXhlY3V0YWJsZSIKK21zZ3N0ciAid3ltYWdhIGNvIG5ham1uaWVqIGplZG5lZ28gYXJndW1lbnR1IGLEmWTEhWNlZ28gcGxpa2llbSB3eWtvbnl3YWxueW0iCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6MTc1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNvdWxkbid0IGZpbmQgbGlicmFyeSAlcyBuZWVkZWQgYnkgJXMgKEVMRiBmb3JtYXQ6ICclcyc7IFJQQVRIOiAnJXMnKS4iCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDoyNjIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgaGFzIGFuIHVuZXhwZWN0ZWQgU09OQU1FICglcykiCittc2dzdHIgIiVzIG1hIG5pZW9jemVraXdhbmUgU09OQU1FICglcykiCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6MjgzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIm5vIGRlcGVuZGVuY3kgaW5mb3JtYXRpb24gZm91bmQgZm9yICVzICh1c2VkIGJ5ICVzKS4iCittc2dzdHIgIm5pZSB6bmFsZXppb25vIGluZm9ybWFjamkgbyB6YWxlxbxub8WbY2lhY2ggZGxhICVzICh1xbx5d2FuZWdvIHByemV6ICVzKS4iCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6MzE0Cittc2dpZCAiIgorImJpbmFyaWVzIHRvIGFuYWx5emUgc2hvdWxkIGFscmVhZHkgYmUgaW5zdGFsbGVkIGluIHRoZWlyIHBhY2thZ2UncyBkaXJlY3RvcnkuIgorbXNnc3RyICIiCisicGxpa2kgYmluYXJuZSBkbyBhbmFsaXp5IHBvd2lubnkganXFvCBiecSHIHphaW5zdGFsb3dhbmUgdyBrYXRhbG9ndSBpY2ggIgorInBha2lldHUuIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjM1NworIywgcGVybC1mb3JtYXQKK21zZ2lkICJzeW1ib2wgJXMgdXNlZCBieSAlcyBmb3VuZCBpbiBub25lIG9mIHRoZSBsaWJyYXJpZXMuIgorbXNnc3RyICJ3IMW8YWRuZWogeiBiaWJsaW90ZWsgbmllIHpuYWxlemlvbm8gc3ltYm9sdSAlcyB1xbx5d2FuZWdvIHByemV6ICVzLiIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDozNjAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIiVzIGNvbnRhaW5zIGFuIHVucmVzb2x2YWJsZSByZWZlcmVuY2UgdG8gc3ltYm9sICVzOiBpdCdzIHByb2JhYmx5IGEgcGx1Z2luLiIKK21zZ3N0ciAiIgorIiVzIHphd2llcmEgbmllcm96d2nEhXp5d2FsbmUgb2RuaWVzaWVuaWEgZG8gc3ltYm9sdSAlczogcHJhd2RvcG9kb2JuaWUgamVzdCAiCisidG8gcGx1Z2luLiIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDozODIKKyMsIGZ1enp5LCBwZXJsLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICIlZCBvdGhlciBzaW1pbGFyIHdhcm5pbmdzIGhhdmUgYmVlbiBza2lwcGVkICh1c2UgLXYgdG8gc2VlIHRoZW0gYWxsKS4iCittc2dpZCAiJWQgc2ltaWxhciB3YXJuaW5nIGhhcyBiZWVuIHNraXBwZWQgKHVzZSAtdiB0byBzZWUgaXQpLiIKK21zZ2lkX3BsdXJhbCAiIgorIiVkIG90aGVyIHNpbWlsYXIgd2FybmluZ3MgaGF2ZSBiZWVuIHNraXBwZWQgKHVzZSAtdiB0byBzZWUgdGhlbSBhbGwpLiIKK21zZ3N0clswXSAiIgorInBvbWluacSZdG8gJWQgcG9kb2JueWNoIG9zdHJ6ZcW8ZcWEICh1xbx5aiAtdiwgYWJ5IHpvYmFjennEhyBqZSB3c3p5c3RraWUpLiIKK21zZ3N0clsxXSAiIgorInBvbWluacSZdG8gJWQgcG9kb2JueWNoIG9zdHJ6ZcW8ZcWEICh1xbx5aiAtdiwgYWJ5IHpvYmFjennEhyBqZSB3c3p5c3RraWUpLiIKK21zZ3N0clsyXSAiIgorInBvbWluacSZdG8gJWQgcG9kb2JueWNoIG9zdHJ6ZcW8ZcWEICh1xbx5aiAtdiwgYWJ5IHpvYmFjennEhyBqZSB3c3p5c3RraWUpLiIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo0MDkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgc2hvdWxkbid0IGJlIGxpbmtlZCB3aXRoICVzIChpdCB1c2VzIG5vbmUgb2YgaXRzIHN5bWJvbHMpLiIKK21zZ3N0ciAiIgorIiVzIG5pZSBwb3dpbmllbiBiecSHIGxpbmtvd2FueSB6ICVzIChuaWUgc8SFIHXFvHl3YW5lIMW8YWRuZSB6IHRhbXRlanN6eWNoICIKKyJzeW1ib2xpKS4iCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6NDIyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJkZXBlbmRlbmN5IG9uICVzIGNvdWxkIGJlIGF2b2lkZWQgaWYgXCIlc1wiIHdlcmUgbm90IHVzZWxlc3NseSBsaW5rZWQgIgorImFnYWluc3QgaXQgKHRoZXkgdXNlIG5vbmUgb2YgaXRzIHN5bWJvbHMpLiIKK21zZ3N0ciAiIgorIm1vxbxuYSBieSB1bmlrbsSFxIcgemFsZcW8bm/Fm2NpIG9kIGJpYmxpb3Rla2kgJXMsIGplxbxlbGkgbmllIGJ5xYJvYnkgIgorIm5pZXBvdHJ6ZWJuZWdvIGxpbmtvd2FuaWEgXCIlc1wiIHogbmnEhSAobmllIHPEhSB1xbx5d2FuZSDFvGFkbmUgeiB0YW10ZWpzenljaCAiCisic3ltYm9saSkuIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjQzMQorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiY291bGRuJ3QgZmluZCBsaWJyYXJ5ICVzIG5lZWRlZCBieSAlcyAoRUxGIGZvcm1hdDogJyVzJzsgUlBBVEg6ICclcycpLlxuIgorI3wgIk5vdGU6IGxpYnJhcmllcyBhcmUgbm90IHNlYXJjaGVkIGluIG90aGVyIGJpbmFyeSBwYWNrYWdlcyB0aGF0IGRvIG5vdCAiCisjfCAiaGF2ZSBhbnkgc2hsaWJzIG9yIHN5bWJvbHMgZmlsZS5cbiIKKyN8ICJUbyBoZWxwIGRwa2ctc2hsaWJkZXBzIGZpbmQgcHJpdmF0ZSBsaWJyYXJpZXMsIHlvdSBtaWdodCBuZWVkIHRvIHNldCAiCisjfCAiTERfTElCUkFSWV9QQVRILiIKK21zZ2lkICIiCisiTm90ZTogbGlicmFyaWVzIGFyZSBub3Qgc2VhcmNoZWQgaW4gb3RoZXIgYmluYXJ5IHBhY2thZ2VzIHRoYXQgZG8gbm90IGhhdmUgIgorImFueSBzaGxpYnMgb3Igc3ltYm9scyBmaWxlLlxuIgorIlRvIGhlbHAgZHBrZy1zaGxpYmRlcHMgZmluZCBwcml2YXRlIGxpYnJhcmllcywgeW91IG1pZ2h0IG5lZWQgdG8gc2V0ICIKKyJMRF9MSUJSQVJZX1BBVEguIgorbXNnc3RyICIiCisibmllIG1vxbxuYSB6bmFsZcW6xIcgYmlibGlvdGVraSAlcyBwb3RyemVibmVqIGRsYSAlcyAoZm9ybWF0IEVMRjogXCIlc1wiOyAiCisiUlBBVEg6IFwiJXNcIikuXG4iCisiVXdhZ2E6IGJpYmxpb3RlayBuaWUgc3p1a2Egc2nEmSB3IGlubnljaCBwYWtpZXRhY2ggYmluYXJueWNoLCBrdMOzcmUgbmllIG1hasSFICIKKyLFvGFkbmVnbyBwbGlrdSBzaGxpYnMgbHViIHN5bWJvbHMuXG4iCisiQWJ5IHBvbcOzYyBkcGtnLXNobGliZGVwcyB3IHpuYWpkb3dhbml1IHByeXdhdG55Y2ggYmlibGlvdGVrLCBiecSHIG1vxbxlIG5hbGXFvHkgIgorInVzdGF3acSHIExEX0xJQlJBUllfUEFUSC4iCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6NDM0Cittc2dpZCAiQ2Fubm90IGNvbnRpbnVlIGR1ZSB0byB0aGUgZXJyb3IgYWJvdmUuIgorbXNnaWRfcGx1cmFsICJDYW5ub3QgY29udGludWUgZHVlIHRvIHRoZSBlcnJvcnMgbGlzdGVkIGFib3ZlLiIKK21zZ3N0clswXSAiIgorbXNnc3RyWzFdICIiCittc2dzdHJbMl0gIiIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo0NDUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAib3BlbiBuZXcgc3Vic3R2YXJzIGZpbGUgYCVzJyIKK21zZ3N0ciAib3R3aWVyYW5pZSBub3dlZ28gcGxpa3UgcG9kc3Rhd2llxYQgXCIlc1wiIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjQ0OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJvcGVuIG9sZCB2YXJsaXN0IGZpbGUgYCVzJyBmb3IgcmVhZGluZyIKK21zZ3N0ciAib3R3aWVyYW5pZSBkbyBvZGN6eXR1IHBsaWt1IGxpc3R5IHptaWVubnljaCBcIiVzXCIiCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6NDUxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNvcHkgb2xkIGVudHJ5IHRvIG5ldyB2YXJsaXN0IGZpbGUgYCVzJyIKK21zZ3N0ciAia29waW93YW5pZSBzdGFyZWdvIHdwaXN1IGRvIG5vd2VnbyBwbGlrdSB6IGxpc3TEhSB6bWllbm55Y2ggXCIlc1wiIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjUxNQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGRlcGVuZGVuY3kgZ290IGdlbmVyYXRlZDogJXMiCittc2dzdHIgInd5Z2VuZXJvd2FubyBuaWVwb3ByYXduxIUgemFsZcW8bm/Fm8SHOiAlcyIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo1MjUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiaW5zdGFsbCBuZXcgdmFybGlzdCBmaWxlIGAlcyciCittc2dzdHIgImluc3RhbG93YW5pZSBub3dlZ28gcGxpa3UgeiBsaXN0xIUgem1pZW5ueWNoIFwiJXNcIiIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo1MzUKK21zZ2lkICIiCisiXG4iCisiQ29weXJpZ2h0IChDKSAxOTk2IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMCBXaWNoZXJ0IEFra2VybWFuLlxuIgorIkNvcHlyaWdodCAoQykgMjAwNiBGcmFuayBMaWNodGVuaGVsZC5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDcgUmFwaGFlbCBIZXJ0em9nLlxuIgorbXNnc3RyICIiCisiXG4iCisiQ29weXJpZ2h0IChDKSAxOTk2IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMCBXaWNoZXJ0IEFra2VybWFuLlxuIgorIkNvcHlyaWdodCAoQykgMjAwNiBGcmFuayBMaWNodGVuaGVsZC5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDcgUmFwaGFlbCBIZXJ0em9nLlxuIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjU1MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIDxleGVjdXRhYmxlPnwtZTxleGVjdXRhYmxlPiBbPG9wdGlvbj4gLi4uXVxuIgorIlxuIgorIlBvc2l0aW9uYWwgb3B0aW9ucyAob3JkZXIgaXMgc2lnbmlmaWNhbnQpOlxuIgorIiAgPGV4ZWN1dGFibGU+ICAgICAgICAgICAgIGluY2x1ZGUgZGVwZW5kZW5jaWVzIGZvciA8ZXhlY3V0YWJsZT4sXG4iCisiICAtZTxleGVjdXRhYmxlPiAgICAgICAgICAgKHVzZSAtZSBpZiA8ZXhlY3V0YWJsZT4gc3RhcnRzIHdpdGggYC0nKVxuIgorIiAgLWQ8ZGVwZW5kZW5jeWZpZWxkPiAgICAgIG5leHQgZXhlY3V0YWJsZShzKSBzZXQgc2hsaWJzOjxkZXBlbmRlbmN5ZmllbGQ+LlxuIgorIlxuIgorIk9wdGlvbnM6XG4iCisiICAtcDx2YXJuYW1lcHJlZml4PiAgICAgICAgc2V0IDx2YXJuYW1lcHJlZml4PjoqIGluc3RlYWQgb2Ygc2hsaWJzOiouXG4iCisiICAtTyAgICAgICAgICAgICAgICAgICAgICAgcHJpbnQgdmFyaWFibGUgc2V0dGluZ3MgdG8gc3Rkb3V0LlxuIgorIiAgLUw8bG9jYWxzaGxpYnNmaWxlPiAgICAgIHNobGlicyBvdmVycmlkZSBmaWxlLCBub3QgZGViaWFuL3NobGlicy5sb2NhbC5cbiIKKyIgIC1UPHZhcmxpc3RmaWxlPiAgICAgICAgICB1cGRhdGUgdmFyaWFibGVzIGhlcmUsIG5vdCBkZWJpYW4vc3Vic3R2YXJzLlxuIgorIiAgLXQ8dHlwZT4gICAgICAgICAgICAgICAgIHNldCBwYWNrYWdlIHR5cGUgKGRlZmF1bHQgaXMgZGViKS5cbiIKKyIgIC14PHBhY2thZ2U+ICAgICAgICAgICAgICBleGNsdWRlIHBhY2thZ2UgZnJvbSB0aGUgZ2VuZXJhdGVkIGRlcGVuZGVuY2llcy5cbiIKKyIgIC1TPHBrZ2J1aWxkZGlyPiAgICAgICAgICBzZWFyY2ggbmVlZGVkIGxpYnJhcmllcyBpbiB0aGUgZ2l2ZW5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWNrYWdlIGJ1aWxkIGRpcmVjdG9yeSBmaXJzdC5cbiIKKyIgIC12ICAgICAgICAgICAgICAgICAgICAgICBlbmFibGUgdmVyYm9zZSBtb2RlIChjYW4gYmUgdXNlZCBtdWx0aXBsZSAiCisidGltZXMpLlxuIgorIiAgLS1pZ25vcmUtbWlzc2luZy1pbmZvICAgIGRvbid0IGZhaWwgaWYgZGVwZW5kZW5jeSBpbmZvcm1hdGlvbiBjYW4ndCBiZSAiCisiZm91bmQuXG4iCisiICAtLXdhcm5pbmdzPTx2YWx1ZT4gICAgICAgZGVmaW5lIHNldCBvZiBhY3RpdmUgd2FybmluZ3MgKHNlZSBtYW51YWwgcGFnZSkuXG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgY2hhbmdlIHRoZSBhZG1pbmlzdHJhdGl2ZSBkaXJlY3RvcnkuXG4iCisiICAtaCwgLS1oZWxwICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgICAgICAtLXZlcnNpb24gICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorIkRlcGVuZGVuY3kgZmllbGRzIHJlY29nbmlzZWQgYXJlOlxuIgorIiAgJXNcbiIKK21zZ3N0ciAiIgorIlXFvHljaWU6ICVzIFs8b3BjamE+IC4uLl0gPHBsaWtfd3lrb255dz58LWU8cGxpa193eWtvbnl3PiBbPG9wY2phPiAuLi5dXG4iCisiXG4iCisiT3BjamUgcG96eWN5am5lIChrb2xlam5vxZvEhyBtYSB6bmFjemVuaWUpOlxuIgorIiAgPHBsaWtfd3lrb255dz4gICAgICAgICBkb8WCxIVjemEgemFsZcW8bm/Fm2NpIGRsYSA8cGxpa3Vfd3lrb255dz4sXG4iCisiICAtZTxwbGlrX3d5a29ueXc+ICAgICAgICh1xbx5aiAtZSwgamXFm2xpIDxwbGlrX3d5a29ueXc+IHphY3p5bmEgc2nEmSBvZCBcIi0iCisiXCIpXG4iCisiICAtZDxwb2xlX3phbGXFvG5vxZtjaT4gICAgbmFzdMSZcG5lIHBsaWtpIHd5a29ueXcuIHVzdGF3aWFqxIUgc2hsaWJzOiIKKyI8cG9sZV96YWxlxbxub8WbY2k+LlxuIgorIlxuIgorIk9wY2plOlxuIgorIiAgLXA8bmF6d2FfcHJlZmlrc3U+ICAgICB1c3Rhd2lhIDxuYXp3YV9wcmVmaWtzdT46KiB6YW1pYXN0IHNobGliczoqLlxuIgorIiAgLU8gICAgICAgICAgICAgICAgICAgICB3ecWbd2lldGxhIHdhcnRvxZtjaSB6bWllbm55Y2ggbmEgc3RhbmRhcmRvd3ltICIKKyJ3eWrFm2NpdS5cbiIKKyIgIC1MPHBsaWtfbG9jYWxzaGxpYnM+ICAgcGxpayBuYWRwaXNhxYQgc2hsaWJzLCB6YW1pYXN0IGRlYmlhbi9zaGxpYnMubG9jYWwuXG4iCisiICAtVDxwbGlrX3Zhcmxpc3Q+ICAgICAgIHBsaWsgZG8gemFrdHVhbGl6b3dhbmlhLCB6YW1pYXN0IGRlYmlhbi9zdWJzdHZhcnMuXG4iCisiICAtdDx0eXA+ICAgICAgICAgICAgICAgIHVzdGF3aWEgdHlwIHBha2lldHUgKGRvbXnFm2xuaWU6IGRlYikuXG4iCisiICAteDxwYWtpZXQ+ICAgICAgICAgICAgIHd5xYLEhWN6YSBwYWtpZXQgeiBnZW5lcm93YW55Y2ggemFsZcW8bm/Fm2NpLlxuIgorIiAgLVM8a2F0X2J1ZF9wYWtpZXR1PiAgICBuYWpwaWVydyBzenVrYSBwb3RyemVibnljaCBiaWJsaW90ZWsgdyBwb2RhbnltXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgIGthdGFsb2d1IGJ1ZG93YW5pYSBwYWtpZXR1LlxuIgorIiAgLXYgICAgICAgICAgICAgICAgICAgICBkb2RhdGtvd2UgaW5mb3JtYWNqZSAobW/FvGUgYnnEhyB1xbx5dGUgd2llbGUgcmF6eSkuXG4iCisiICAtLWlnbm9yZS1taXNzaW5nLWluZm8gIGtvbnR5bnVhY2phIHBvbWltbyBicmFrdSBpbmZvcm1hY2ppIG8gIgorInphbGXFvG5vxZtjaWFjaC5cbiIKKyIgIC0td2FybmluZ3M9PHZhbHVlPiAgICAgZGVmaW5pdWplIHpiacOzciBha3R5d255Y2ggb3N0cnplxbxlxYQgKHBhdHJ6ICIKKyJtYW51YWwpLlxuIgorIiAgLS1hZG1pbmRpcj08a2F0YWxvZz4gICB6bWllbmlhIGthdGFsb2cgYWRtaW5pc3RyYWN5am55LlxuIgorIiAgLWgsIC0taGVscCAgICAgICAgICAgICB3ecWbd2lldGxhIHRlbiBrb211bmlrYXQgcG9tb2N5LlxuIgorIiAgICAgIC0tdmVyc2lvbiAgICAgICAgICB3ecWbd2lldGxhIHdlcnNqxJkuXG4iCisiXG4iCisiUm96cG96bmF3YW5lIHBvbGEgemFsZcW8bm/Fm2NpIHPEhSBuYXN0xJlwdWrEhWNlOlxuIgorIiAgJXNcbiIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo2NzcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiQ2FuJ3QgZXh0cmFjdCBuYW1lIGFuZCB2ZXJzaW9uIGZyb20gbGlicmFyeSBuYW1lIGAlcyciCittc2dzdHIgIk5pZSBtb8W8bmEgd3lkb2J5xIcgbmF6d3kgaSB3ZXJzamkgeiBuYXp3eSBwbGlrdSBiaWJsaW90ZWtpIFwiJXNcIiIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo2ODQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIG9wZW4gc2hhcmVkIGxpYnMgaW5mbyBmaWxlIGAlcyciCittc2dzdHIgIiIKKyJuaWUgbW/FvG5hIG90d29yennEhyBwbGlrdSBpbmZvcm1hY2ppIG8gYmlibGlvdGVrYWNoIHdzcMOzxYJkemllbG9ueWNoIFwiJXNcIiIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo2OTAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAic2hhcmVkIGxpYnMgaW5mbyBmaWxlIGAlcycgbGluZSAlZDogYmFkIGxpbmUgYCVzJyIKK21zZ3N0ciAicGxpayBiaWJsaW90ZWsgd3Nww7PFgmR6aWVsb255Y2ggJXMsIGxpbmlhICVkOiBuaWVwb3ByYXduYSBsaW5pYSBcIiVzXCIiCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6NzQ5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCBvcGVuIGZpbGUgJXMiCittc2dzdHIgIm5pZSBtb8W8bmEgb3R3b3J6ecSHIHBsaWt1ICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjc4MworIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiJE9SSUdJTiBpcyB1c2VkIGluIFJQQVRIIG9mICVzIGFuZCB0aGUgY29ycmVzcG9uZGluZyBkaXJlY3RvcnkgY291bGQgbm90IGJlICIKKyJpZGVudGlmaWVkIGR1ZSB0byBsYWNrIG9mIERFQklBTiBzdWItZGlyZWN0b3J5IGluIHRoZSByb290IG9mIHBhY2thZ2UncyAiCisiYnVpbGQgdHJlZSIKK21zZ3N0ciAiIgorIiRPUklHSU4gamVzdCB1xbx5dGUgUlBBVEggcGxpa3UgJXMsIGFsZSBuaWUgbW/FvG5hIHpuYWxlxbrEhyBvZHBvd2lhZGFqxIVjZWdvIG11ICIKKyJrYXRhbG9ndSB6IHBvd29kdSBicmFrdSBwb2RrYXRhbG9ndSBERUJJQU4gdyBnxYLDs3dueW0ga2F0YWxvZ3UgYnVkb3dhbmlhICIKKyJwYWtpZXR1IgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjg0OAorbXNnaWQgImRpdmVyc2lvbnMgaW52b2x2ZWQgLSBvdXRwdXQgbWF5IGJlIGluY29ycmVjdCIKK21zZ3N0ciAibmFkcGlzYW5pYSB1xbx5dGUgLSB3eWrFm2NpZSBtb8W8ZSBiecSHIG5pZXBvcHJhd25lIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjg1MAorbXNnaWQgIndyaXRlIGRpdmVyc2lvbiBpbmZvIHRvIHN0ZGVyciIKK21zZ3N0ciAid3lwaXN5d2FuaWUgaW5mb3JtYWNqaSBvIG9taW5pxJljaWFjaCBuYSBzdGRlcnIiCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6ODU0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVua25vd24gb3V0cHV0IGZyb20gZHBrZyAtLXNlYXJjaDogJyVzJyIKK21zZ3N0ciAibmllcm96cG96bmFuZSB3eWrFm2NpZSB6IGRwa2cgLS1zZWFyY2g6IFwiJXNcIiIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDoxMDQKKyMsIGZ1enp5LCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIG5lZWRzIGEgZGlyZWN0b3J5IgorbXNnc3RyICItYiB3eW1hZ2EgcG9kYW5pYSBrYXRhbG9ndSIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDoxMTAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IHN0YXQgZGlyZWN0b3J5ICVzIgorbXNnc3RyICJuaWUgbW/FvG5hIHVzdGFsacSHIHN0YW51IGthdGFsb2d1ICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjExMgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJkaXJlY3RvcnkgYXJndW1lbnQgJXMgaXMgbm90IGEgZGlyZWN0b3J5IgorbXNnc3RyICJhcmd1bWVudCAlcyBuaWUgamVzdCBrYXRhbG9naWVtIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjExNyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NDc2CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NDc4IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo0ODAKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo0ODIKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9ienIucG06MTExCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvYnpyLnBtOjEzNAorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2J6ci5wbToxOTgKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9ienIucG06MjA0CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvZ2l0LnBtOjEwNAorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2dpdC5wbToxNDMKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9naXQucG06MTU1CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvZ2l0LnBtOjE3NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hkaXIgdG8gYCVzJyIKK21zZ3N0ciAibmllIG1vxbxuYSB6bWllbmnEhyBrYXRhbG9ndSBuYSBcIiVzXCIiCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6MTM1CisjLCBmdXp6eSwgcGVybC1mb3JtYXQKK21zZ2lkICJ1c2luZyBvcHRpb25zIGZyb20gJXM6ICVzIgorbXNnc3RyICJixYLEhWQgY3p5dGFuaWEgeiAlczoiCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6MTUwIHNjcmlwdHMvRHBrZy9Db21wcmVzc2lvbi5wbToxNzMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgaXMgbm90IGEgc3VwcG9ydGVkIGNvbXByZXNzaW9uIgorbXNnc3RyICIlcyBuaWUgamVzdCBvYnPFgnVnaXdhbnltIHR5cGVtIGtvbXByZXNqaSIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDoxNTYgc2NyaXB0cy9EcGtnL0NvbXByZXNzaW9uLnBtOjIwMgorIzogc2NyaXB0cy9EcGtnL0NvbXByZXNzaW9uL1Byb2Nlc3MucG06ODYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgaXMgbm90IGEgY29tcHJlc3Npb24gbGV2ZWwiCittc2dzdHIgIiAlcyBuaWUgamVzdCBwb3ppb21lbSBrb21wcmVzamkiCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6MjE0Cittc2dpZCAiIgorIm5lZWQgYSBjb21tYW5kICgteCwgLWIsIC0tYmVmb3JlLWJ1aWxkLCAtLWFmdGVyLWJ1aWxkLCAtLXByaW50LWZvcm1hdCwgLS0iCisiY29tbWl0KSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjIzOAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBkb2Vzbid0IGNvbnRhaW4gYW55IGluZm9ybWF0aW9uIGFib3V0IHRoZSBzb3VyY2UgcGFja2FnZSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjI4MworIywgcGVybC1mb3JtYXQKK21zZ2lkICJgJXMnIGlzIG5vdCBhIGxlZ2FsIGFyY2hpdGVjdHVyZSBzdHJpbmciCittc2dzdHIgIlwiJXNcIiBuaWUgamVzdCBwb3ByYXduxIUgc3BlY3lmaWthY2rEhSBhcmNoaXRla3R1cnkiCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6Mjg2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImFyY2hpdGVjdHVyZSAlcyBvbmx5IGFsbG93ZWQgb24gaXRzIG93biAobGlzdCBmb3IgcGFja2FnZSAlcyBpcyBgJXMnKSIKK21zZ3N0ciAiIgorImFyY2hpdGVrdHVyYSAlcyBkb3B1c3pjemFsbmEgdHlsa28gc2FtYSAobGlzdMSFIGRsYSBwYWtpZXR1ICVzIGplc3QgXCIlc1wiKSIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDozMDEKKyMsIGZ1enp5LCBwZXJsLWZvcm1hdAorI3wgbXNnaWQgImRpZmYgYCVzJyBkb2Vzbid0IGNvbnRhaW4gYW55IHBhdGNoIgorbXNnaWQgIiVzIGRvZXNuJ3QgbGlzdCBhbnkgYmluYXJ5IHBhY2thZ2UiCittc2dzdHIgImRpZmYgXCIlc1wiIG5pZSB6YXdpZXJhIMW8YWRuZWogxYJhdGtpIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjM0MyBzY3JpcHRzL0Rwa2cvQnVpbGRGbGFncy5wbToyNzAKKyM6IHNjcmlwdHMvRHBrZy9Db21wcmVzc2lvbi9GaWxlSGFuZGxlLnBtOjQwMQorIzogc2NyaXB0cy9EcGtnL0ludGVyZmFjZS9TdG9yYWJsZS5wbTo4NyBzY3JpcHRzL0Rwa2cvU2hsaWJzL09iamR1bXAucG06MTIyCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06Mjc3IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo0MjUKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo1NjEKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbToxMTIKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbToyODYKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbTozNDgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlYWQgJXMiCittc2dzdHIgIm5pZSBtb8W8bmEgb2Rjenl0YcSHICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjM1MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJubyBzb3VyY2UgZm9ybWF0IHNwZWNpZmllZCBpbiAlcywgc2VlIGRwa2ctc291cmNlKDEpIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6Mzc4CisjLCBmdXp6eSwgcGVybC1mb3JtYXQKK21zZ2lkICJjYW4ndCBidWlsZCB3aXRoIHNvdXJjZSBmb3JtYXQgJyVzJzogJXMiCittc2dzdHIgInXFvHl3YW5pYSBmb3JtYXR1IMW6csOzZGXFgiBcIiVzXCIiCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6MzgxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVzaW5nIHNvdXJjZSBmb3JtYXQgYCVzJyIKK21zZ3N0ciAidcW8eXdhbmlhIGZvcm1hdHUgxbpyw7NkZcWCIFwiJXNcIiIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDozODggc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjMwMQorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjM0NiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NTQxCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvYnpyLnBtOjE1MgorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL25hdGl2ZS5wbTo4NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJidWlsZGluZyAlcyBpbiAlcyIKK21zZ3N0ciAiYnVkb3dhbmllICVzIHcgJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6Mzk5Cittc2dpZCAiLXggbmVlZHMgYXQgbGVhc3Qgb25lIGFyZ3VtZW50LCB0aGUgLmRzYyIKK21zZ3N0ciAiLXggd3ltYWdhIGNvIG5ham1uaWVqIGplZG5lZ28gYXJndW1lbnR1LCAuZHNjIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjQwMgorbXNnaWQgIi14IHRha2VzIG5vIG1vcmUgdGhhbiB0d28gYXJndW1lbnRzIgorbXNnc3RyICIteCBwb2JpZXJhIG5pZSB3acSZY2VqIG5pxbwgZHdhIGFyZ3VtZW50eSIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDo0MDYKK21zZ2lkICIteCBuZWVkcyB0aGUgLmRzYyBmaWxlIGFzIGZpcnN0IGFyZ3VtZW50LCBub3QgYSBkaXJlY3RvcnkiCittc2dzdHIgIi14IHd5bWFnYSBwbGlrdSAuZHNjLCBhIG5pZSBrYXRhbG9ndSwgamFrbyBwaWVyd3N6ZWdvIGFyZ3VtZW50dSIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDo0MjIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5wYWNrIHRhcmdldCBleGlzdHM6ICVzIgorbXNnc3RyICJjZWwgcm96cGFrb3dhbmlhIGlzdG5pZWplOiAlcyIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDo0MzIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgZG9lc24ndCBjb250YWluIGEgdmFsaWQgT3BlblBHUCBzaWduYXR1cmUiCittc2dzdHIgIiVzIG5pZSB6YXdpZXJhIHdhxbxuZWdvIHBvZHBpc3UgT3BlblBHUCIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDo0MzQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZXh0cmFjdGluZyB1bnNpZ25lZCBzb3VyY2UgcGFja2FnZSAoJXMpIgorbXNnc3RyICJ3eWRvYnl3YW5pZSBuaWVwb2RwaXNhbnljaCBwYWtpZXTDs3cgxbpyw7NkxYJvd3ljaCAoJXMpIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjQ0MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJleHRyYWN0aW5nICVzIGluICVzIgorbXNnc3RyICJyb3pwYWtvd3l3YW5pZSAlcyB3ICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjQ0OQorIywgZnV6enkKK21zZ2lkICJvbmx5IG9uZSBvZiAteCwgLWIgb3IgLS1wcmludC1mb3JtYXQgYWxsb3dlZCwgYW5kIG9ubHkgb25jZSIKK21zZ3N0ciAiZG96d29sb25hIHR5bGtvIGplZG5hIHogb3BjamkgLXggbHViIC1iLCBpIHR5bGtvIHJheiIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDo0NTcKKyMsIGZ1enp5Cittc2dpZCAiIgorIlxuIgorIkNvcHlyaWdodCAoQykgMTk5NiBJYW4gSmFja3NvblxuIgorIkNvcHlyaWdodCAoQykgMTk5NyBLbGVlIERpZW5lc1xuIgorIkNvcHlyaWdodCAoQykgMjAwOCBSYXBoYWVsIEhlcnR6b2ciCittc2dzdHIgIiIKKyJcbiIKKyJDb3B5cmlnaHQgKEMpIDE5OTYgSWFuIEphY2tzb24gYW5kIEtsZWUgRGllbmVzLlxuIgorIkNvcHlyaWdodCAoQykgMjAwOCBSYXBoYWVsIEhlcnR6b2ciCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6NDcwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gPGNvbW1hbmQ+XG4iCisiXG4iCisiQ29tbWFuZHM6XG4iCisiICAteCA8ZmlsZW5hbWU+LmRzYyBbPG91dHB1dC1kaXI+XVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4dHJhY3Qgc291cmNlIHBhY2thZ2UuXG4iCisiICAtYiA8ZGlyPiAgICAgICAgICAgICAgICAgYnVpbGQgc291cmNlIHBhY2thZ2UuXG4iCisiICAtLXByaW50LWZvcm1hdCA8ZGlyPiAgICAgcHJpbnQgdGhlIHNvdXJjZSBmb3JtYXQgdGhhdCB3b3VsZCBiZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzZWQgdG8gYnVpbGQgdGhlIHNvdXJjZSBwYWNrYWdlLlxuIgorIiAgLS1jb21taXQgWzxkaXI+IFs8cGF0Y2gtbmFtZT5dXVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0b3JlIHVwc3RyZWFtIGNoYW5nZXMgaW4gYSBuZXcgcGF0Y2guIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6NDgxCisjLCBmdXp6eSwgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiQnVpbGQgb3B0aW9uczpcbiIKKyIgIC1jPGNvbnRyb2xmaWxlPiAgICAgICAgICBnZXQgY29udHJvbCBpbmZvIGZyb20gdGhpcyBmaWxlLlxuIgorIiAgLWw8Y2hhbmdlbG9nZmlsZT4gICAgICAgIGdldCBwZXItdmVyc2lvbiBpbmZvIGZyb20gdGhpcyBmaWxlLlxuIgorIiAgLUY8Y2hhbmdlbG9nZm9ybWF0PiAgICAgIGZvcmNlIGNoYW5nZSBsb2cgZm9ybWF0LlxuIgorIiAgLVY8bmFtZT49PHZhbHVlPiAgICAgICAgIHNldCBhIHN1YnN0aXR1dGlvbiB2YXJpYWJsZS5cbiIKKyIgIC1UPHZhcmxpc3RmaWxlPiAgICAgICAgICByZWFkIHZhcmlhYmxlcyBoZXJlLlxuIgorIiAgLUQ8ZmllbGQ+PTx2YWx1ZT4gICAgICAgIG92ZXJyaWRlIG9yIGFkZCBhIC5kc2MgZmllbGQgYW5kIHZhbHVlLlxuIgorIiAgLVU8ZmllbGQ+ICAgICAgICAgICAgICAgIHJlbW92ZSBhIGZpZWxkLlxuIgorIiAgLXEgICAgICAgICAgICAgICAgICAgICAgIHF1aWV0IG1vZGUuXG4iCisiICAtaVs8cmVnZXhwPl0gICAgICAgICAgICAgZmlsdGVyIG91dCBmaWxlcyB0byBpZ25vcmUgZGlmZnMgb2ZcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChkZWZhdWx0cyB0bzogJyVzJykuXG4iCisiICAtSVs8cGF0dGVybj5dICAgICAgICAgICAgZmlsdGVyIG91dCBmaWxlcyB3aGVuIGJ1aWxkaW5nIHRhcmJhbGxzXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZGVmYXVsdHMgdG86ICVzKS5cbiIKKyIgIC1aPGNvbXByZXNzaW9uPiAgICAgICAgICBzZWxlY3QgY29tcHJlc3Npb24gdG8gdXNlIChkZWZhdWx0cyB0byAnJXMnLFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3VwcG9ydGVkIGFyZTogJXMpLlxuIgorIiAgLXo8bGV2ZWw+ICAgICAgICAgICAgICAgIGNvbXByZXNzaW9uIGxldmVsIHRvIHVzZSAoZGVmYXVsdHMgdG8gJyVkJyxcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN1cHBvcnRlZCBhcmU6ICcxJy0nOScsICdiZXN0JywgJ2Zhc3QnKSIKK21zZ3N0ciAiIgorIlXFvHljaWU6ICVzIFs8b3BjamE+IC4uLl0gPHBvbGVjZW5pZT5cbiIKKyJcbiIKKyJQb2xlY2VuaWE6XG4iCisiICAteCA8bmF6d2FfcGxpa3U+LmRzYyBbPGthdGFsb2dfd3lqxZtjaW93eT5dXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgcm96cGFrb3d1amUgcGFraWV0IMW6csOzZMWCb3d5LlxuIgorIiAgLWIgPGthdGFsb2c+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgYnVkdWplIHBha2lldCDFunLDs2TFgm93eS5cbiIKKyJcbiIKKyJPcGNqZSBidWRvd2FuaWE6XG4iCisiICAtYzxwbGlrX2tvbnRyb2xueT4gICAgICAgcG9iaWVyYSBpbmZvcm1hY2plIGtvbnRyb2xuZSB6IHRlZ28gcGxpa3UuXG4iCisiICAtbDxwbGlrX3ptaWFuPiAgICAgICAgICAgcG9iaWVyYSBpbmZvcm1hY2plIGRvdC4gd2Vyc2ppIHogdGVnbyBwbGlrdS5cbiIKKyIgIC1GPGZvcm1hdF9wbGlrdV96bWlhbj4gICB3eW11c3phIGZvcm1hdCBwbGlrdSB6bWlhbi5cbiIKKyIgIC1WPG5hendhPj08d2FydG/Fm8SHPiAgICAgIHVzdGF3aWEgem1pZW5uxIUgcG9kc3Rhd2lhbmlhLlxuIgorIiAgLVQ8cGxpa196bWllbm55Y2g+ICAgICAgIGN6eXRhIHptaWVubmUgeiB0ZWdvIHBsaWt1LlxuIgorIiAgLUQ8cG9sZT49PHdhcnRvxZvEhz4gICAgICAgbmFkcGlzdWplIGx1YiBkb2RhamUgcG9sZSBkbyAuZHNjIHdyYXogeiAiCisid2FydG/Fm2NpxIUuXG4iCisiICAtVTxwb2xlPiAgICAgICAgICAgICAgICAgdXN1d2EgcG9sZS5cbiIKKyIgIC1xICAgICAgICAgICAgICAgICAgICAgICB0cnliIGNpY2h5LCBwb21pamEgd3lwaXN5d2FuaWUgb3N0cnplxbxlxYQuXG4iCisiICAtaVs8d3lyYcW8X3JlZz5dICAgICAgICAgIHBvbWlqYW5pZSBwbGlrw7N3IHBvZGN6YXMgdHdvcnplbmlhIHBsaWt1IHLDs8W8bmljXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZG9tecWbbG5pZTogXCIlc1wiKS5cbiIKKyIgIC1JPHd6b3J6ZWM+ICAgICAgICAgICAgICBwb21pamFuaWUgcGxpa8OzdyBwb2RjemFzIHR3b3J6ZW5pYSBhcmNoaXd1bSB0YXIuXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZG9tecWbbG5pZTogJXMpXG4iCisiICAtWjxrb21wcmVzamE+ICAgICAgICAgICAgd3liw7NyIHXFvHl3YW5laiBrb21wcmVzamkgKGRvbXnFm2xuaWUgXCIlc1wiLFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb2JzxYJ1Z2l3YW5lOiAlcykuXG4iCisiICAtejxwb3ppb20+ICAgICAgICAgICAgICAgdcW8eXdhbnkgcG96aW9tIGtvbXByZXNqaSAoZG9tecWbbG5pZSBcIiVkXCIsXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvYnPFgnVnaXdhbmU6IFwiMVwiLVwiOVwiLCBcImJlc3RcIiwgXCJmYXN0XCIpXG4iCisiXG4iCisiT3BjamUgcm96cGFrb3d5d2FuaWE6XG4iCisiICAtLW5vLWNvcHkgICAgICAgICAgICAgICAgbmllIGtvcGl1amUgb3J5Zy4gc3Bha293YW55Y2ggxbpyw7NkZcWCXG4iCisiICAtLW5vLWNoZWNrICAgICAgICAgICAgICAgbmllIHNwcmF3ZHphIHBvZHBpc8OzdyBpIHN1bSBrb250cm9sbnljaCBwcnplZFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcm96cGFrb3dhbmllbVxuIgorIiAgLS1yZXF1aXJlLXZhbGlkLXNpZ25hdHVyZSBwcnplcndhbmllIGdkeSBwYWtpZXQgbmllIG1hIHdhxbxuZWdvIHBvZHBpc3VcbiIKKyJcbiIKKyJPcGNqZSBvZ8OzbG5lOlxuIgorIiAgLWgsIC0taGVscCAgICAgICAgICAgICAgIHd5xZt3aWV0bGEgdGVuIGtvbXVuaWthdCBwb21vY3kuXG4iCisiICAgICAgLS12ZXJzaW9uICAgICAgICAgICAgd3nFm3dpZXRsYSBpbmZvcm1hY2plIG8gd2Vyc2ppIHByb2dyYW11LlxuIgorIlxuIgorIkRvc3TEmXBuZSBzxIUgdGFrxbxlIGlubmUgb3BjamUsIGFsZSB6YWxlxbzEhSBvbmUgb2QgZm9ybWF0dSBwYWtpZXR1IMW6csOzZMWCb3dlZ28uXG4iCisiV2nEmWNlaiBpbmZvcm1hY2ppIG1vxbxuYSB6bmFsZcW6xIcgdyBkcGtnLXNvdXJjZSgxKS5cbiIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDo0OTkKK21zZ2lkICIiCisiRXh0cmFjdCBvcHRpb25zOlxuIgorIiAgLS1uby1jb3B5ICAgICAgICAgICAgICAgIGRvbid0IGNvcHkgLm9yaWcgdGFyYmFsbHNcbiIKKyIgIC0tbm8tY2hlY2sgICAgICAgICAgICAgICBkb24ndCBjaGVjayBzaWduYXR1cmUgYW5kIGNoZWNrc3VtcyBiZWZvcmUgIgorInVucGFja2luZ1xuIgorIiAgLS1yZXF1aXJlLXZhbGlkLXNpZ25hdHVyZSBhYm9ydCBpZiB0aGUgcGFja2FnZSBkb2Vzbid0IGhhdmUgYSB2YWxpZCAiCisic2lnbmF0dXJlIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6NTA0CisjLCBmdXp6eQorbXNnaWQgIiIKKyJHZW5lcmFsIG9wdGlvbnM6XG4iCisiICAtaCwgLS1oZWxwICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgICAgICAtLXZlcnNpb24gICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLiIKK21zZ3N0ciAiIgorIlXFvHljaWU6ICVzIFs8b3BjamE+IC4uLl0gPG5hendhX3BsaWt1PiA8c2VrY2phPiA8cHJpb3J5dGV0PlxuIgorIlxuIgorIk9wY2plOlxuIgorIiAgLWY8cGxpa3psaXN0xIVwbGlrw7N3PiAgICAgICAgemFwaXN1amUgcGxpa2kgZG8gcG9kYW5lZ28gcGxpa3UgemFtaWFzdCAiCisiZGViaWFuL2ZpbGVzLlxuIgorIiAgLS1oZWxwICAgICAgIHd5xZt3aWV0bGEgdGVuIGtvbXVuaWthdCBwb21vY3kuXG4iCisiICAtLXZlcnNpb24gICAgd3nFm3dpZXRsYSBpbmZvcm1hY2plIG8gd2Vyc2ppIHByb2dyYW11LlxuIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjUwOAorbXNnaWQgIiIKKyJNb3JlIG9wdGlvbnMgYXJlIGF2YWlsYWJsZSBidXQgdGhleSBkZXBlbmQgb24gdGhlIHNvdXJjZSBwYWNrYWdlIGZvcm1hdC5cbiIKKyJTZWUgZHBrZy1zb3VyY2UoMSkgZm9yIG1vcmUgaW5mby4iCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9jaGFuZ2Vsb2cvZGViaWFuLnBsOjM2Cittc2dpZCAiIgorIlxuIgorIkNvcHlyaWdodCAoQykgMTk5NiBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDUsMjAwNyBGcmFuayBMaWNodGVuaGVsZC4iCittc2dzdHIgIiIKKyJcbiIKKyJDb3B5cmlnaHQgKEMpIDE5OTYgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDA1LDIwMDcgRnJhbmsgTGljaHRlbmhlbGQuIgorCisjOiBzY3JpcHRzL2NoYW5nZWxvZy9kZWJpYW4ucGw6NDcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4uLi5dIFs8Y2hhbmdlbG9nZmlsZT5dXG4iCisiXG4iCisiT3B0aW9uczpcbiIKKyIgICAgLS1oZWxwLCAtaCAgICAgICAgICAgICAgICAgIHByaW50IHVzYWdlIGluZm9ybWF0aW9uXG4iCisiICAgIC0tdmVyc2lvbiwgLVYgICAgICAgICAgICAgICBwcmludCB2ZXJzaW9uIGluZm9ybWF0aW9uXG4iCisiICAgIC0tbGFiZWwsIC1sIDxmaWxlPiAgICAgICAgICBuYW1lIG9mIHRoZSBjaGFuZ2Vsb2cgZmlsZSB0b1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlIGluIGVycm9yIG1lc3NhZ2VzXG4iCisiICAgIC0tZmlsZSA8ZmlsZT4gICAgICAgICAgICAgICBjaGFuZ2Vsb2cgZmlsZSB0byBwYXJzZSwgZGVmYXVsdHNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvICctJyAoc3RhbmRhcmQgaW5wdXQpXG4iCisiICAgIC0tZm9ybWF0IDxvdXRwdXRmb3JtYXQ+ICAgICBzZWUgbWFuIHBhZ2UgZm9yIGxpc3Qgb2YgYXZhaWxhYmxlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdXRwdXQgZm9ybWF0cywgZGVmYXVsdHMgdG8gJ2Rwa2cnXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIGRwa2ctZGV2XG4iCisiICAgIC0tc2luY2UsIC1zLCAtdiA8dmVyc2lvbj4gICBpbmNsdWRlIGFsbCBjaGFuZ2VzIGxhdGVyIHRoYW4gdmVyc2lvblxuIgorIiAgICAtLXVudGlsLCAtdSA8dmVyc2lvbj4gICAgICAgaW5jbHVkZSBhbGwgY2hhbmdlcyBlYXJsaWVyIHRoYW4gdmVyc2lvblxuIgorIiAgICAtLWZyb20sIC1mIDx2ZXJzaW9uPiAgICAgICAgaW5jbHVkZSBhbGwgY2hhbmdlcyBlcXVhbCBvciBsYXRlclxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhhbiB2ZXJzaW9uXG4iCisiICAgIC0tdG8sIC10IDx2ZXJzaW9uPiAgICAgICAgICBpbmNsdWRlIGFsbCBjaGFuZ2VzIHVwIHRvIG9yIGVxdWFsXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGFuIHZlcnNpb25cbiIKKyIgICAgLS1jb3VudCwgLWMsIC1uIDxudW1iZXI+ICAgIGluY2x1ZGUgPG51bWJlcj4gZW50cmllcyBmcm9tIHRoZSB0b3BcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChvciB0aGUgdGFpbCBpZiA8bnVtYmVyPiBpcyBsb3dlciB0aGFuIDApXG4iCisiICAgIC0tb2Zmc2V0LCAtbyA8bnVtYmVyPiAgICAgICBjaGFuZ2UgdGhlIHN0YXJ0aW5nIHBvaW50IGZvciAtLWNvdW50LFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY291bnRlZCBmcm9tIHRoZSB0b3AgKG9yIHRoZSB0YWlsIGlmXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bnVtYmVyPiBpcyBsb3dlciB0aGFuIDApXG4iCisiICAgIC0tYWxsICAgICAgICAgICAgICAgICAgICAgICBpbmNsdWRlIGFsbCBjaGFuZ2VzXG4iCittc2dzdHIgIiIKKyJVxbx5Y2llOiAlcyBbPG9wY2phPi4uLl0gWzxwbGlrX3ptaWFuPl1cbiIKKyJcbiIKKyJPcGNqZTpcbiIKKyIgICAgLS1oZWxwLCAtaCAgICAgICAgICAgICAgICAgIHd5xZt3aWV0bGEgdGVuIGtvbXVuaWthdCBwb21vY3kuXG4iCisiICAgIC0tdmVyc2lvbiwgLXYgICAgICAgICAgICAgICB3ecWbd2lldGxhIGluZm9ybWFjamUgbyB3ZXJzamkgcHJvZ3JhbXUuXG4iCisiICAgIC0tbGFiZWwsIC1sIDxwbGlrPiAgICAgICAgICBuYXp3YSBwbGlrdSB6bWlhbiB1xbx5d2FuYSB3IGtvbXVuaWthdGFjaFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbyBixYLEmWRhY2hcbiIKKyIgICAgLS1maWxlIDxwbGlrPiAgICAgICAgICAgICAgIHBsaWsgem1pYW4gZG8gcHJ6ZXR3b3J6ZW5pYSwgZG9tecWbbG5pZSBqZXN0XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuaW0gXCItXCIgKHN0YW5kYXJkb3dlIHdlasWbY2llKVxuIgorIiAgICAtLWZvcm1hdCA8Zm9ybWF0X3d5asWbY2lhPiAgIGxpc3TEmSBmb3JtYXTDs3cgd3lqxZtjaW93eWNoIG1vxbxuYSB6bmFsZcW6xIcgbmFcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9uaWUgcG9kcsSZY3puaWthLCBkb215xZtsbnltIGplc3QgXCJkcGtnIgorIlwiXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkbGEgemFjaG93YW5pYSBrb21wYXR5Ymlsbm/Fm2NpIHogZHBrZy1kZXZcbiIKKyIgICAgLS1zaW5jZSwgLXMsIC12IDx3ZXJzamE+ICAgIHfFgsSFY3phIHdzenlzdGtpZSB6bWlhbnR5IHDDs8W6bmllanN6ZSBvZCAiCisid2Vyc2ppXG4iCisiICAgIC0tdW50aWwsIC11IDx3ZXJzamE+ICAgICAgICB3xYLEhWN6YSB3c3p5c3RraWUgem1pYW55IHdjemXFm25pZWpzemUgb2QgIgorIndlcnNqaVxuIgorIiAgICAtLWZyb20sIC1mIDx3ZXJzamE+ICAgICAgICAgd8WCxIVjemEgd3N6eXN0a2llIHptaWFueSBww7PFum5pZWpzemUgb2QgIgorIndlcnNqaVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbHViIGplaiByw7N3bmVcbiIKKyIgICAgLS10bywgLXQgPHdlcnNqYT4gICAgICAgICAgIHfFgsSFY3phIHdzenlzdGtpZSB6bWlhbnkgYcW8IGRvIGRhbmVqIHdlcnNqaSxcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIMWCxIVjem5pZSB6IHTEhSB3ZXJzasSFXG4iCisiICAgIC0tY291bnQsIC1jLCAtbiA8bGljemJhPiAgICB3xYLEhWN6YSA8bGljemJhPiBwb2N6xIV0a293eWNoIHdwaXPDs3cgKGx1YlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga2/FhGNvd3ljaCwgZ2R5IDxsaWN6YmE+IGplc3QgbW5pZWpzemEgb2QgMClcbiIKKyIgICAgLS1vZmZzZXQsIC1vIDxsaWN6YmE+ICAgICAgIHptaWVuaWEgcHVua3QgcG9jesSFdGtvd3kgZGxhIC0tY291bnQsXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaWN6xIVjIG9kIHBvY3rEhXRrdSBwbGlrdSAobHViIGtvxYRjYSxcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdkeSA8bGljemJhPiBqZXN0IG1uaWVqc3phIG9kIDApXG4iCisiICAgIC0tYWxsICAgICAgICAgICAgICAgICAgICAgICB3xYLEhWN6YSB3c3p5c3RraWUgem1pYW55XG4iCisKKyM6IHNjcmlwdHMvY2hhbmdlbG9nL2RlYmlhbi5wbDo4NgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJvdXRwdXQgZm9ybWF0ICVzIG5vdCBzdXBwb3J0ZWQiCittc2dzdHIgInd5asWbY2lvd3kgZm9ybWF0ICVzIG5pZSBqZXN0IHdzcGllcmFueSIKKworIzogc2NyaXB0cy9jaGFuZ2Vsb2cvZGViaWFuLnBsOjExMQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJtb3JlIHRoYW4gb25lIGZpbGUgc3BlY2lmaWVkICglcyBhbmQgJXMpIgorbXNnc3RyICJwb2Rhbm8gd2nEmWNlaiBuacW8IGplZGVuIHBsaWsgKCVzIGkgJXMpIgorCisjOiBzY3JpcHRzL2NoYW5nZWxvZy9kZWJpYW4ucGw6MTM1IHNjcmlwdHMvRHBrZy9JbnRlcmZhY2UvU3RvcmFibGUucG06ODQKKyMsIGZ1enp5Cittc2dpZCAiPHN0YW5kYXJkIGlucHV0PiIKK21zZ3N0ciAic3RhbmRhcmRvd2Ugd2VqxZtjaWUiCisKKyM6IHNjcmlwdHMvY2hhbmdlbG9nL2RlYmlhbi5wbDoxMzYKK21zZ2lkICJmYXRhbCBlcnJvciBvY2N1cnJlZCB3aGlsZSBwYXJzaW5nIGlucHV0IgorbXNnc3RyICJ3eXN0xIVwacWCIGZhdGFsbnkgYsWCxIVkIHBvZGN6YXMgcHJ6ZXR3YXJ6YW5pYSB3ZWrFm2NpYSIKKworIzogc2NyaXB0cy9jaGFuZ2Vsb2cvZGViaWFuLnBsOjEzOQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJmYXRhbCBlcnJvciBvY2N1cnJlZCB3aGlsZSBwYXJzaW5nICVzIgorbXNnc3RyICJ3eXN0xIVwacWCIGZhdGFsbnkgYsWCxIVkIHBvZGN6YXMgcHJ6ZXR3YXJ6YW5pYSAlcyIKKworIzogc2NyaXB0cy9EcGtnL0FyY2gucG06ODYKK21zZ2lkICIiCisiQ291bGRuJ3QgZGV0ZXJtaW5lIGdjYyBzeXN0ZW0gdHlwZSwgZmFsbGluZyBiYWNrIHRvIGRlZmF1bHQgKG5hdGl2ZSAiCisiY29tcGlsYXRpb24pIgorbXNnc3RyICIiCisiTmllIG1vxbxuYSBva3JlxZtsacSHIHR5cHUgc3lzdGVtdSBnY2MgJXMsIHXFvHl3YW5pZSBkb215xZtsbmVnbyAoa29tcGlsYWNqYSAiCisibmF0eXduYSkiCisKKyM6IHNjcmlwdHMvRHBrZy9BcmNoLnBtOjk1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJVbmtub3duIGdjYyBzeXN0ZW0gdHlwZSAlcywgZmFsbGluZyBiYWNrIHRvIGRlZmF1bHQgKG5hdGl2ZSBjb21waWxhdGlvbikiCittc2dzdHIgIk5pZXpuYW55IHR5cCBzeXN0ZW11IGdjYyAlcywgdcW8eXdhbmllIGRvbXnFm2xuZWdvIChrb21waWxhY2phIG5hdHl3bmEpIgorCisjOiBzY3JpcHRzL0Rwa2cvQnVpbGRGbGFncy5wbToyNzgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibGluZSAlZCBvZiAlcyBtZW50aW9ucyB1bmtub3duIGZsYWcgJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0J1aWxkRmxhZ3MucG06MjkxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImxpbmUgJWQgb2YgJXMgaXMgaW52YWxpZCwgaXQgaGFzIGJlZW4gaWdub3JlZC4iCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0J1aWxkT3B0aW9ucy5wbTo5NAorIywgZnV6enksIHBlcmwtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBmbGFnIGluICVzOiAlcyIKK21zZ3N0ciAibmllcG9wcmF3bmUgcG9sZSB3ICVzOiAlcyIKKworIzogc2NyaXB0cy9EcGtnL0NvbXByZXNzaW9uL1Byb2Nlc3MucG06NzEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgaXMgbm90IGEgc3VwcG9ydGVkIGNvbXByZXNzaW9uIG1ldGhvZCIKK21zZ3N0ciAiJXMgbmllIGplc3Qgb2JzxYJ1Z2l3YW7EhSBtZXRvZMSFIGtvbXByZXNqaSIKKworIzogc2NyaXB0cy9EcGtnL0NvbXByZXNzaW9uL1Byb2Nlc3MucG06MTIyCisjLCBmdXp6eQorbXNnaWQgIkRwa2c6OkNvbXByZXNzaW9uOjpQcm9jZXNzIGNhbiBvbmx5IHN0YXJ0IG9uZSBzdWJwcm9jZXNzIGF0IGEgdGltZSIKK21zZ3N0ciAiIgorIkRwa2c6OlNvdXJjZTo6Q29tcHJlc3NvciBtb8W8ZSBqZWRub2N6ZcWbbmllIHVydWNob21pxIcgdHlsa28gamVkZW4gcHJvY2VzIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtOjE3MSBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtOjE3MworIzogc2NyaXB0cy9EcGtnL0Vycm9ySGFuZGxpbmcucG06NTkKK21zZ2lkICJ3YXJuaW5nIgorbXNnc3RyICJvc3RyemXFvGVuaWUiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06MTcxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyIlcyhsJXMpOiAlc1xuIgorIkxJTkU6ICVzIgorbXNnc3RyICIiCisiJXMobCVzKTogJXNcbiIKKyJMSU5JQTogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06MTczCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzKGwlcyk6ICVzIgorbXNnc3RyICIlcyhsJXMpOiAlcyIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbToyMjEKK21zZ2lkICInb2Zmc2V0JyB3aXRob3V0ICdjb3VudCcgaGFzIG5vIGVmZmVjdCIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtOjIyOQorbXNnaWQgInlvdSBjYW4ndCBjb21iaW5lICdjb3VudCcgb3IgJ29mZnNldCcgd2l0aCBhbnkgb3RoZXIgcmFuZ2Ugb3B0aW9uIgorbXNnc3RyICIiCisibmllIG1vxbxuYSDFgsSFY3p5xIcgXCJjb3VudFwiIGx1YiBcIm9mZnNldFwiIHogamFrxIVrb2x3aWVrIGlubsSFIG9wY2rEhSB6YWtyZXN1IgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtOjIzNworbXNnaWQgInlvdSBjYW4gb25seSBzcGVjaWZ5IG9uZSBvZiAnZnJvbScgYW5kICdzaW5jZScsIHVzaW5nICdzaW5jZSciCittc2dzdHIgIm1vxbxuYSBwb2RhxIcgdHlsa28gamVkbm8geiBcImZyb21cIiBpIFwic2luY2VcIiwgdcW8eXdhbmllIFwic2luY2VcIiIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbToyNDIKK21zZ2lkICJ5b3UgY2FuIG9ubHkgc3BlY2lmeSBvbmUgb2YgJ3RvJyBhbmQgJ3VudGlsJywgdXNpbmcgJ3VudGlsJyIKK21zZ3N0ciAibW/FvG5hIHBvZGHEhyB0eWxrbyBqZWRubyB6IFwidG9cIiBpIFwidW50aWxcIiwgdcW8eXdhbmllIFwidW50aWxcIiIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbToyNTQgc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbToyNzAKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06Mjg2IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06MzAyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiclcycgb3B0aW9uIHNwZWNpZmllcyBub24tZXhpc3RpbmcgdmVyc2lvbiIKK21zZ3N0ciAib3BjamEgXCIlc1wiIG9rcmXFm2xhIG5pZWlzdG5pZWrEhWPEhSB3ZXJzasSZIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtOjI1NSBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtOjMwMworIywgZnV6enkKKyN8IG1zZ2lkICJ1c2UgbmV3ZXN0IGVudHJ5IHRoYXQgaXMgc21hbGxlciB0aGFuIHRoZSBvbmUgc3BlY2lmaWVkIgorbXNnaWQgInVzZSBuZXdlc3QgZW50cnkgdGhhdCBpcyBlYXJsaWVyIHRoYW4gdGhlIG9uZSBzcGVjaWZpZWQiCittc2dzdHIgInXFvHljaWUgbmFqbm93c3plZ28gd3Bpc3UsIGt0w7NyeSBqZXN0IG1uaWVqc3p5IG5pxbwgb2tyZcWbbG9ueSIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbToyNjQKK21zZ2lkICJub25lIGZvdW5kLCBzdGFydGluZyBmcm9tIHRoZSBvbGRlc3QgZW50cnkiCittc2dzdHIgIm5pZSB6bmFsZXppb25vLCByb3pwb2N6eW5hbmllIG9kIG5hanN0YXJzemVnbyB3cGlzdSIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbToyNzEgc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbToyODcKKyMsIGZ1enp5CisjfCBtc2dpZCAidXNlIG9sZGVzdCBlbnRyeSB0aGF0IGlzIGJpZ2dlciB0aGFuIHRoZSBvbmUgc3BlY2lmaWVkIgorbXNnaWQgInVzZSBvbGRlc3QgZW50cnkgdGhhdCBpcyBsYXRlciB0aGFuIHRoZSBvbmUgc3BlY2lmaWVkIgorbXNnc3RyICJ1xbx5Y2llIG5hanN0YXJzemVnbyB3cGlzdSwga3TDs3J5IGplc3Qgd2nEmWtzenkgbmnFvCBva3JlxZtsb255IgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtOjI4MSBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtOjI5NworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbTozMTIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibm8gc3VjaCBlbnRyeSBmb3VuZCwgaWdub3JpbmcgJyVzJyBwYXJhbWV0ZXIiCittc2dzdHIgIm5pZSB6bmFsZXppb25vIHRha2llZ28gd3Bpc3UsIGlnbm9yb3dhbmllIHBhcmFtZXRydSBcIiVzXCIiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06MzE4Cittc2dpZCAiJ3NpbmNlJyBvcHRpb24gc3BlY2lmaWVzIG1vc3QgcmVjZW50IHZlcnNpb24sIGlnbm9yaW5nIgorbXNnc3RyICJvcGNqYSBcInNpbmNlXCIgb2tyZcWbbGEganXFvCBuYWpub3dzesSFIHdlcnNqxJksIGlnbm9yb3dhbmllIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtOjMyMgorbXNnaWQgIid1bnRpbCcgb3B0aW9uIHNwZWNpZmllcyBvbGRlc3QgdmVyc2lvbiwgaWdub3JpbmciCittc2dzdHIgIm9wY2phIFwidW50aWxcIiBva3JlxZtsYSBqdcW8IG5hanN0YXJzesSFIHdlcnNqxJksIGlnbm9yb3dhbmllIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0RlYmlhbi5wbTo1NAorbXNnaWQgImZpcnN0IGhlYWRpbmciCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9EZWJpYW4ucG06NTUKK21zZ2lkICJuZXh0IGhlYWRpbmcgb3IgZW9mIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRGViaWFuLnBtOjU2CisjLCBmdXp6eQorbXNnaWQgInN0YXJ0IG9mIGNoYW5nZSBkYXRhIgorbXNnc3RyICJ3eWrFm2NpZSBwYXJzZXJhIHBsaWt1IHptaWFuIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0RlYmlhbi5wbTo1NworbXNnaWQgIm1vcmUgY2hhbmdlIGRhdGEgb3IgdHJhaWxlciIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0RlYmlhbi5wbTo4OQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJmb3VuZCBzdGFydCBvZiBlbnRyeSB3aGVyZSBleHBlY3RlZCAlcyIKK21zZ3N0ciAib2N6ZWtpd2FubyAlcywgYSB6bmFsZXppb25vIHBvY3rEhXRlayB3cGlzdSIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9EZWJpYW4ucG06MTI2Cittc2dpZCAiYmFkbHkgZm9ybWF0dGVkIGhlYWRpbmcgbGluZSIKK21zZ3N0ciAibmllcG9wcmF3bnkgZm9ybWF0IGxpbmlpIG5hZ8WCw7N3a2EiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRGViaWFuLnBtOjEzMAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJmb3VuZCB0cmFpbGVyIHdoZXJlIGV4cGVjdGVkICVzIgorbXNnc3RyICJvY3pla2l3YW5vICVzLCBhIHpuYWxlemlvbm8gdHJhaWxlciIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9EZWJpYW4ucG06MTQwCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0VudHJ5L0RlYmlhbi5wbToxNDkKK21zZ2lkICJiYWRseSBmb3JtYXR0ZWQgdHJhaWxlciBsaW5lIgorbXNnc3RyICJuaWVwb3ByYXdueSBmb3JtYXQgbGluaWkgc3RvcGtpIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0RlYmlhbi5wbToxNDMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZm91bmQgY2hhbmdlIGRhdGEgd2hlcmUgZXhwZWN0ZWQgJXMiCittc2dzdHIgIm9jemVraXdhbm8gJXMsIGEgem5hbGV6aW9ubyBkYW5lIGRvdHljesSFY2Ugem1pYW4iCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRGViaWFuLnBtOjE2NQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJmb3VuZCBibGFuayBsaW5lIHdoZXJlIGV4cGVjdGVkICVzIgorbXNnc3RyICJvY3pla2l3YW5vICVzLCBhIHpuYWxlemlvbm8gcHVzdMSFIGxpbmnEmSIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9EZWJpYW4ucG06MTY5Cittc2dpZCAidW5yZWNvZ25pc2VkIGxpbmUiCittc2dzdHIgIm5pZXJvenBvem5hbmEgIGxpbmlhIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0RlYmlhbi5wbToxODAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZm91bmQgZW9mIHdoZXJlIGV4cGVjdGVkICVzIgorbXNnc3RyICJvY3pla2l3YW5vICVzLCBhIHpuYWxlemlvbm8ga29uaWVjIHBsaWt1IgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0VudHJ5L0RlYmlhbi5wbToxMjIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiYmFkIGtleS12YWx1ZSBhZnRlciBgOyc6IGAlcyciCittc2dzdHIgImLFgsSZZG55IGtsdWN6LXdhcnRvxZvEhyBwbyBcIjtcIjogXCIlc1wiIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0VudHJ5L0RlYmlhbi5wbToxMjcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAicmVwZWF0ZWQga2V5LXZhbHVlICVzIgorbXNnc3RyICJwb3d0w7Nyem9uZSBrbHVjei13YXJ0b8WbxIcgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRW50cnkvRGViaWFuLnBtOjEzMQorIywgZnV6enksIHBlcmwtZm9ybWF0Cittc2dpZCAiYmFkbHkgZm9ybWF0dGVkIHVyZ2VuY3kgdmFsdWU6ICVzIgorbXNnc3RyICJuaWVwb3ByYXduaWUgc2Zvcm1hdG93YW5hIHdhcnRvxZvEhyBwb2xhIHVyZ2VuY3kiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRW50cnkvRGViaWFuLnBtOjEzNQorIywgZnV6enksIHBlcmwtZm9ybWF0Cittc2dpZCAidW5rbm93biBrZXktdmFsdWUgJXMiCittc2dzdHIgIm5pZXpuYW5lIGtsdWN6LXdhcnRvxZvEhyAlcyAtIGtvcGlvd2FuaWUgZG8gWFMtJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRW50cnkvRGViaWFuLnBtOjEzOQorbXNnaWQgInRoZSBoZWFkZXIgZG9lc24ndCBtYXRjaCB0aGUgZXhwZWN0ZWQgcmVnZXgiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9FbnRyeS9EZWJpYW4ucG06MTUyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNvdWxkbid0IHBhcnNlIGRhdGUgJXMiCittc2dzdHIgIm5pZSBtb8W8bmEgcHJ6ZXR3b3J6ecSHIGRhdHkgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRW50cnkvRGViaWFuLnBtOjE1NQorbXNnaWQgInRoZSB0cmFpbGVyIGRvZXNuJ3QgbWF0Y2ggdGhlIGV4cGVjdGVkIHJlZ2V4IgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvUGFyc2UucG06MTA2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInRhaWwgb2YgJXMiCittc2dzdHIgInRhaWwgbmEgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvUGFyc2UucG06MTE4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImZvcm1hdCBwYXJzZXIgJXMgbm90IGV4ZWN1dGFibGUiCittc2dzdHIgInBhcnNlcmEgZm9ybWF0dSAlcyBuaWUgamVzdCBwbGlraWVtIHd5a29ueXdhbG55bSIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9QYXJzZS5wbToxMjEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2hhbmdlbG9nIGZvcm1hdCAlcyBpcyB1bmtub3duIgorbXNnc3RyICJuaWV6bmFueSBmb3JtYXQgJXMgcGxpa3Ugem1pYW4iCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvUGFyc2UucG06MTQ0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCBleGVjIGZvcm1hdCBwYXJzZXI6ICVzIgorbXNnc3RyICJuaWUgbW/FvG5hIHVydWNob21pxIcgcGFyc2VyYSBmb3JtYXR1OiAlcyIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9QYXJzZS5wbToxNTEKK21zZ2lkICJvdXRwdXQgb2YgY2hhbmdlbG9nIHBhcnNlciIKK21zZ3N0ciAid3lqxZtjaWUgcGFyc2VyYSBwbGlrdSB6bWlhbiIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9QYXJzZS5wbToxNTQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2hhbmdlbG9nIHBhcnNlciAlcyIKK21zZ3N0ciAicGFyc2VyIHBsaWt1IHptaWFuICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hlY2tzdW1zLnBtOjE3MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3QgZnN0YXQgZmlsZSAlcyIKK21zZ3N0ciAibmllIG1vxbxuYSB1c3RhbGnEhyBzdGFudSAoZnN0YXQpIHBsaWt1ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hlY2tzdW1zLnBtOjE3MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJGaWxlICVzIGhhcyBzaXplICV1IGluc3RlYWQgb2YgZXhwZWN0ZWQgJXUiCittc2dzdHIgIlBsaWsgJXMgbWEgcm96bWlhciAldSB6YW1pYXN0IG9jemVraXdhbmVnbyAldSIKKworIzogc2NyaXB0cy9EcGtnL0NoZWNrc3Vtcy5wbToxODYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiRmlsZSAlcyBoYXMgY2hlY2tzdW0gJXMgaW5zdGVhZCBvZiBleHBlY3RlZCAlcyAoYWxnb3JpdGhtICVzKSIKK21zZ3N0ciAiUGxpayAlcyBtYSBzdW3EmSBrb250cm9sbsSFICVzIHphbWlhc3Qgb2N6ZWtpd2FuZWogJXMgKGFsZ29yeXRtICVzKSIKKworIzogc2NyaXB0cy9EcGtnL0NoZWNrc3Vtcy5wbToxOTEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2hlY2tzdW0gcHJvZ3JhbSBnYXZlIGJvZ3VzIG91dHB1dCBgJXMnIgorbXNnc3RyICJkeml3bmUgd3lqxZtjaWUgcHJvZ3JhbXUgc3ByYXdkemFuaWEgc3VtIGtvbnRyb2xueWNoOiBcIiVzXCIiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGVja3N1bXMucG06MjE5CisjLCBmdXp6eSwgcGVybC1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGxpbmUgaW4gJXMgY2hlY2tzdW1zIHN0cmluZzogJXMiCittc2dzdHIgIm5pZXBvcHJhd25lIHBvbGUgdyAlczogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGVja3N1bXMucG06MjI1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIkNvbmZsaWN0aW5nIGNoZWNrc3VtcyBgJXMnIGFuZCBgJXMnIGZvciBmaWxlIGAlcyciCittc2dzdHIgIktvbmZsaWt0IHN1bSBrb250cm9sbnljaCBwbGlrdSBcIiVzXCIgaSBcIiVzXCIgcGxpa3UgXCIlc1wiIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hlY2tzdW1zLnBtOjIyOQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJDb25mbGljdGluZyBmaWxlIHNpemVzIGAldScgYW5kIGAldScgZm9yIGZpbGUgYCVzJyIKK21zZ3N0ciAiS29uZmxpa3Qgcm96bWlhcsOzdyBcIiV1XCIgaSBcIiV1XCIgcGxpa3UgXCIlc1wiIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29uZi5wbToxMDUKKyMsIGZ1enp5LCBwZXJsLWZvcm1hdAorbXNnaWQgInNob3J0IG9wdGlvbiBub3QgYWxsb3dlZCBpbiAlcywgbGluZSAlZCIKK21zZ3N0ciAiYsWCxIVkIHNrxYJhZG5pIHcgJXMgdyBsaW5paSAlZDogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Db25mLnBtOjExOQorIywgZnV6enksIHBlcmwtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBzeW50YXggZm9yIG9wdGlvbiBpbiAlcywgbGluZSAlZCIKK21zZ3N0ciAiYsWCxIVkIHNrxYJhZG5pIHcgJXMgdyBsaW5paSAlZDogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Db250cm9sLnBtOjE1MAorbXNnaWQgImdlbmVyYWwgc2VjdGlvbiBvZiBjb250cm9sIGluZm8gZmlsZSIKK21zZ3N0ciAic2VrY2phIG9nw7NsbmEgcGxpa3UgeiBpbmZvcm1hY2phbWkga29udHJvbG55bWkiCisKKyM6IHNjcmlwdHMvRHBrZy9Db250cm9sLnBtOjE1MgorbXNnaWQgInBhY2thZ2UncyBzZWN0aW9uIG9mIGNvbnRyb2wgaW5mbyBmaWxlIgorbXNnc3RyICJzZWtjamEgcGFraWV0dSBwbGlrdSB6IGluZm9ybWFjamFtaSBrb250cm9sbnltaSIKKworIzogc2NyaXB0cy9EcGtnL0NvbnRyb2wucG06MTU0Cittc2dpZCAicGFyc2VkIHZlcnNpb24gb2YgY2hhbmdlbG9nIgorbXNnc3RyICJwcnpldHdvcnpvbmEgd2Vyc2phIHBsaWt1IHptaWFuIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29udHJvbC5wbToxNTYgc2NyaXB0cy9EcGtnL0NvbnRyb2wucG06MTU4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImVudHJ5IGluIHJlcG9zaXRvcnkncyAlcyBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Db250cm9sLnBtOjE2MCBzY3JpcHRzL0Rwa2cvQ29udHJvbC5wbToxNjQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgZmlsZSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29udHJvbC5wbToxNjIKK21zZ2lkICJjb250cm9sIGluZm8gb2YgYSAuZGViIHBhY2thZ2UiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0NvbnRyb2wucG06MTY2Cittc2dpZCAidmVuZG9yIGZpbGUiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL0NvbnRyb2wucG06MTY4Cittc2dpZCAiZW50cnkgaW4gZHBrZydzIHN0YXR1cyBmaWxlIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Db250cm9sL0ZpZWxkcy5wbTo0NTUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5rbm93biBpbmZvcm1hdGlvbiBmaWVsZCAnJXMnIGluIGlucHV0IGRhdGEgaW4gJXMiCittc2dzdHIgIm5pZXpuYW5lIHBvbGUgaW5mb3JtYWN5am5lIFwiJXNcIiB3IGRhbnljaCB3ZWrFm2Npb3d5Y2ggJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Db250cm9sL0ZpZWxkcy5wbTo0NTYKK21zZ2lkICJjb250cm9sIGluZm9ybWF0aW9uIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Db250cm9sL0luZm8ucG06MTAzCittc2dpZCAiZmlyc3QgYmxvY2sgbGFja3MgYSBzb3VyY2UgZmllbGQiCittc2dzdHIgInBpZXJ3c3p5IGJsb2sgbmllIHphd2llcmEgcG9sYSBTb3VyY2UiCisKKyM6IHNjcmlwdHMvRHBrZy9Db250cm9sL0luZm8ucG06MTEwIHNjcmlwdHMvRHBrZy9Db250cm9sL0luZm8ucG06MTEzCisjLCBmdXp6eSwgcGVybC1mb3JtYXQKKyN8IG1zZ2lkICJibG9jayBsYWNrcyBhIHBhY2thZ2UgZmllbGQiCittc2dpZCAiYmxvY2sgbGFja3MgdGhlICclcycgZmllbGQiCittc2dzdHIgImJsb2sgbmllIHphd2llcmEgcG9sYSBQYWNrYWdlIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29udHJvbC9IYXNoLnBtOjE3MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgZmllbGQgJXMgZm91bmQiCittc2dzdHIgInpuYWxlemlvbm8gcG93dMOzcnpvbmUgcG9sZSB3ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29udHJvbC9IYXNoLnBtOjE4MAorbXNnaWQgImNvbnRpbnVlZCB2YWx1ZSBsaW5lIG5vdCBpbiBmaWVsZCIKK21zZ3N0ciAibGluaWEga29udHludW93YW5laiB3YXJ0b8WbY2kgbmllIG5hbGXFvHkgZG8gcG9sYSIKKworIzogc2NyaXB0cy9EcGtnL0NvbnRyb2wvSGFzaC5wbToxOTQKK21zZ2lkICJQR1Agc2lnbmF0dXJlIG5vdCBhbGxvd2VkIGhlcmUiCittc2dzdHIgInN5Z25hdHVyYSBQR1AgbmllIG1vxbxlIHd5c3TEmXBvd2HEhyB3IHR5bSBtaWVqc2N1IgorCisjOiBzY3JpcHRzL0Rwa2cvQ29udHJvbC9IYXNoLnBtOjIwMQorbXNnaWQgImV4cGVjdGVkIFBHUCBzaWduYXR1cmUsIGZvdW5kIEVPRiBhZnRlciBibGFuayBsaW5lIgorbXNnc3RyICJwbyBwdXN0ZWogbGluaWkgb2N6ZWtpd2FubyBzeWduYXR1cnkgUEdQLCBhIG5hcG90a2FubyBrb25pZWMgcGxpa3UiCisKKyM6IHNjcmlwdHMvRHBrZy9Db250cm9sL0hhc2gucG06MjA1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImV4cGVjdGVkIFBHUCBzaWduYXR1cmUsIGZvdW5kIHNvbWV0aGluZyBlbHNlIGAlcyciCittc2dzdHIgIm9jemVraXdhbm8gc3lnbmF0dXJ5IFBHUCwgYSBuYXBvdGthbm8gY2/FmyBpbm5lZ28gXCIlc1wiIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29udHJvbC9IYXNoLnBtOjIxMworbXNnaWQgInVuZmluaXNoZWQgUEdQIHNpZ25hdHVyZSIKK21zZ3N0ciAibmllemFrb8WEY3pvbmEgc3lnbmF0dXJhIFBHUCIKKworIzogc2NyaXB0cy9EcGtnL0NvbnRyb2wvSGFzaC5wbToyMTkKK21zZ2lkICJsaW5lIHdpdGggdW5rbm93biBmb3JtYXQgKG5vdCBmaWVsZC1jb2xvbi12YWx1ZSkiCittc2dzdHIgIm5pZXpuYW55IGZvcm1hdCBsaW5paSAob2N6ZWtpd2FubzogcG9sZS1kd3Vrcm9wZWstd2FydG/Fm8SHKSIKKworIzogc2NyaXB0cy9EcGtnL0NvbnRyb2wvSGFzaC5wbTozMTYKK21zZ2lkICJ3cml0ZSBlcnJvciBvbiBjb250cm9sIGRhdGEiCittc2dzdHIgImLFgsSFZCB6YXBpc3UgZGFueWNoIGtvbnRyb2xueWNoIgorCisjOiBzY3JpcHRzL0Rwa2cvRGVwcy5wbToyNzQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2FuJ3QgcGFyc2UgZGVwZW5kZW5jeSAlcyIKK21zZ3N0ciAibmllIG1vxbxuYSBwcnpldHdvcnp5xIcgemFsZcW8bm/Fm2NpICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvRGVwcy5wbTozMDEKK21zZ2lkICJhbiB1bmlvbiBkZXBlbmRlbmN5IGNhbiBvbmx5IGNvbnRhaW4gc2ltcGxlIGRlcGVuZGVuY2llcyIKK21zZ3N0ciAic3VtYSB6YWxlxbxub8WbY2kgbW/FvGUgemF3aWVyYcSHIGplZHluaWUgcHJvc3RlIHphbGXFvG5vxZtjaSIKKworIzogc2NyaXB0cy9EcGtnL0Vycm9ySGFuZGxpbmcucG06NTQKK21zZ2lkICJpbmZvIgorbXNnc3RyICJpbmZvIgorCisjOiBzY3JpcHRzL0Rwa2cvRXJyb3JIYW5kbGluZy5wbTo2NSBzY3JpcHRzL0Rwa2cvRXJyb3JIYW5kbGluZy5wbTo3MAorIzogc2NyaXB0cy9EcGtnL0Vycm9ySGFuZGxpbmcucG06NzUKK21zZ2lkICJlcnJvciIKK21zZ3N0ciAiYsWCxIVkIgorCisjOiBzY3JpcHRzL0Rwa2cvRXJyb3JIYW5kbGluZy5wbTo4MAorbXNnaWQgImludGVybmFsIGVycm9yIgorbXNnc3RyICJixYLEhWQgd2V3bsSZdHJ6bnkiCisKKyM6IHNjcmlwdHMvRHBrZy9FcnJvckhhbmRsaW5nLnBtOjkyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGdhdmUgZXJyb3IgZXhpdCBzdGF0dXMgJXMiCittc2dzdHIgIiVzIHp3csOzY2nFgiBzdGF0dXMgYsWCxJlkdSAlcyIKKworIzogc2NyaXB0cy9EcGtnL0Vycm9ySGFuZGxpbmcucG06OTQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgZGllZCBmcm9tIHNpZ25hbCAlcyIKK21zZ3N0ciAiJXMgemFrb8WEY3pvbnkgeiBwb3dvZHUgc3lnbmHFgnUgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9FcnJvckhhbmRsaW5nLnBtOjk2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGZhaWxlZCB3aXRoIHVua25vd24gZXhpdCBjb2RlICVkIgorbXNnc3RyICIlcyB6d3LDs2NpxYIgbmllem5hbnkga29kIGLFgsSZZHUgJWQiCisKKyM6IHNjcmlwdHMvRHBrZy9FcnJvckhhbmRsaW5nLnBtOjExNQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJzeW50YXggZXJyb3IgaW4gJXMgYXQgbGluZSAlZDogJXMiCittc2dzdHIgImLFgsSFZCBza8WCYWRuaSB3ICVzIHcgbGluaWkgJWQ6ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvSVBDLnBtOjIxMSBzY3JpcHRzL0Rwa2cvSVBDLnBtOjIxNyBzY3JpcHRzL0Rwa2cvSVBDLnBtOjIyMworIywgcGVybC1mb3JtYXQKK21zZ2lkICJwaXBlIGZvciAlcyIKK21zZ3N0ciAicGlwZSBkbGEgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9JUEMucG06MjQyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNoZGlyIHRvICVzIgorbXNnc3RyICJ6bWlhbmEga2F0YWxvZ3UgbmEgXCIlc1wiIgorCisjOiBzY3JpcHRzL0Rwa2cvSVBDLnBtOjI0OQorbXNnaWQgInJlb3BlbiBzdGRpbiIKK21zZ3N0ciAicG9ub3duZSBvdHdpZXJhbmllIHN0ZGluIgorCisjOiBzY3JpcHRzL0Rwa2cvSVBDLnBtOjI1NyBzY3JpcHRzL0Rwa2cvSVBDLnBtOjI2NQorbXNnaWQgInJlb3BlbiBzdGRvdXQiCittc2dzdHIgInBvbm93bmUgb3R3aWVyYW5pZSBzdGRvdXQiCisKKyM6IHNjcmlwdHMvRHBrZy9JUEMucG06MzM5Cittc2dpZCAiY2hpbGQgcHJvY2VzcyIKK21zZ3N0ciAicHJvY2VzIHBvdG9tbnkiCisKKyM6IHNjcmlwdHMvRHBrZy9JUEMucG06MzQ0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIndhaXQgZm9yICVzIgorbXNnc3RyICJjemVrYW5pZSBuYSAlcyIKKworIzogc2NyaXB0cy9EcGtnL0lQQy5wbTozNDkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgZGlkbid0IGNvbXBsZXRlIGluICVkIHNlY29uZCIKK21zZ2lkX3BsdXJhbCAiJXMgZGlkbid0IGNvbXBsZXRlIGluICVkIHNlY29uZHMiCittc2dzdHJbMF0gIiVzIG5pZSB6YWtvxYRjennFgiBzacSZIHcgJWQgc2VrdW5kxJkiCittc2dzdHJbMV0gIiVzIG5pZSB6YWtvxYRjennFgiBzacSZIHcgJWQgc2VrdW5keSIKK21zZ3N0clsyXSAiJXMgbmllIHpha2/FhGN6ecWCIHNpxJkgdyAlZCBzZWt1bmQiCisKKyM6IHNjcmlwdHMvRHBrZy9TaGxpYnMvT2JqZHVtcC5wbToyMjIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiQ291bGRuJ3QgcGFyc2UgZHluYW1pYyByZWxvY2F0aW9uIHJlY29yZDogJXMiCittc2dzdHIgIk5pZSBtb8W8bmEgcHJ6ZXR3b3J6ecSHIHJla29yZHUgZHluYW1pY3puZWogcmVsb2thY2ppOiAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NobGlicy9PYmpkdW1wLnBtOjMzOQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJDb3VsZG4ndCBwYXJzZSBkeW5hbWljIHN5bWJvbCBkZWZpbml0aW9uOiAlcyIKK21zZ3N0ciAiTmllIG1vxbxuYSBwcnpldHdvcnp5xIcgZGVmaW5pY2ppIHN5bWJvbGkgZHluYW1pY3pueWNoOiAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NobGlicy9TeW1ib2wucG06MTExCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInN5bWJvbCBuYW1lIHVuc3BlY2lmaWVkOiAlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU2hsaWJzL1N5bWJvbC5wbToxNjgKKyMsIGZ1enp5LCBwZXJsLWZvcm1hdAorbXNnaWQgInlvdSBjYW4ndCB1c2Ugc3ltdmVyIHRhZyB0byBjYXRjaCB1bnZlcnNpb25lZCBzeW1ib2xzOiAlcyIKK21zZ3N0ciAibmllIG1vxbxuYSB1xbx5d2HEhyB6bmFrw7N3IGRvcGFzb3dhbmlhIG5hIG5pZXdlcnNqb25vd2FueWNoIHN5bWJvbGFjaDogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9TaGxpYnMvU3ltYm9sRmlsZS5wbToyMTgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiU3ltYm9sIGluZm9ybWF0aW9uIG11c3QgYmUgcHJlY2VkZWQgYnkgYSBoZWFkZXIgKGZpbGUgJXMsIGxpbmUgJXMpLiIKK21zZ3N0ciAiIgorIkluZm9ybWFjamUgbyBzeW1ib2xhY2ggbXVzesSFIGJ5xIcgcG9wcnplZHpvbmUgbmFnxYLDs3draWVtIChwbGlrICVzLCBsaW5pYSAlcykuIgorCisjOiBzY3JpcHRzL0Rwa2cvU2hsaWJzL1N5bWJvbEZpbGUucG06MjI2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIkZhaWxlZCB0byBwYXJzZSBsaW5lIGluICVzOiAlcyIKK21zZ3N0ciAiQsWCxIVkIHByemV0d2FyemFuaWEgbGluaWkgdyAlczogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9TaGxpYnMvU3ltYm9sRmlsZS5wbToyNTgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiRmFpbGVkIHRvIHBhcnNlIGEgbGluZSBpbiAlczogJXMiCittc2dzdHIgIkLFgsSFZCBwcnpldHdhcnphbmlhIGxpbmlpIHcgJXM6ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU2hsaWJzL1N5bWJvbEZpbGUucG06MjcxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIlRyaWVkIHRvIG1lcmdlIHRoZSBzYW1lIG9iamVjdCAoJXMpIHR3aWNlIGluIGEgc3ltZmlsZS4iCittc2dzdHIgIlByw7NiYSBkd3Vrcm90bmVnbyBwb8WCxIVjemVuaWEgdGVnbyBzYW1lZ28gb2JpZWt0dSAoJXMpIHcgcGxpa3Ugc3ltYm9saSIKKworIzogc2NyaXB0cy9EcGtnL1NobGlicy9TeW1ib2xGaWxlLnBtOjM4OAorbXNnaWQgIkNhbid0IG1lcmdlIHN5bWJvbHMgZnJvbSBvYmplY3RzIHdpdGhvdXQgU09OQU1FLiIKK21zZ3N0ciAiTmllIG1vxbxuYSBwb8WCxIVjennEhyBzeW1ib2xpIHogb2JpZWt0dSBiZXogU09OQU1FLiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9BcmNoaXZlLnBtOjY0Cittc2dpZCAid3JpdGUgb24gdGFyIGlucHV0IgorbXNnc3RyICJ6YXBpc3l3YW5pZSBuYSB3ZWrFm2NpdSB0YXIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvQXJjaGl2ZS5wbTo4OQorbXNnaWQgImNsb3NlIG9uIHRhciBpbnB1dCIKK21zZ3N0ciAiemFteWthbmllIHdlasWbY2lhIHRhciIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9BcmNoaXZlLnBtOjExNCBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjUwMworIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3QgY3JlYXRlIGRpcmVjdG9yeSAlcyIKK21zZ3N0ciAibmllIG1vxbxuYSB1dHdvcnp5xIcga2F0YWxvZ3UgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvQXJjaGl2ZS5wbToxNDUgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOjMwNworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjE5OQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgb3BlbmRpciAlcyIKK21zZ3N0ciAibmllIG1vxbxuYSBvdHdvcnp5xIcga2F0YWxvZ3UgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvQXJjaGl2ZS5wbToxNTIgc2NyaXB0cy9EcGtnL1NvdXJjZS9BcmNoaXZlLnBtOjE1NgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJVbmFibGUgdG8gcmVuYW1lICVzIHRvICVzIgorbXNnc3RyICJOaWUgbW/FvG5hIHptaWVuacSHIG5hend5ICVzIG5hICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL0Z1bmN0aW9ucy5wbTozNAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc3RhdCBkaXJlY3RvcnkgJXMgKGJlZm9yZSByZW1vdmFsKSIKK21zZ3N0ciAibmllIG1vxbxuYSB1c3RhbGnEhyBzdGFudSBrYXRhbG9ndSAlcyAocHJ6ZWQgdXN1bmnEmWNpZW0pIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL0Z1bmN0aW9ucy5wbTo0MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hlY2sgZm9yIHJlbW92YWwgb2YgZGlyIGAlcyciCittc2dzdHIgIm5pZSBtb8W8bmEgc3ByYXdkemnEhywgY3p5IHVzdW7EhcSHIGthdGFsb2cgXCIlc1wiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL0Z1bmN0aW9ucy5wbTo0MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJybSAtcmYgZmFpbGVkIHRvIHJlbW92ZSBgJXMnIgorbXNnc3RyICJuaWVwb3dvZHplbmllIHJtIC1yZiBwb2RjemFzIHVzdXdhbmlhIFwiJXNcIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9GdW5jdGlvbnMucG06ODMgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo1NTAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IGNoYW5nZSB0aW1lc3RhbXAgZm9yICVzIgorbXNnc3RyICJuaWUgbW/FvG5hIHptaWVuacSHIGN6YXN1IG1vZHlmaWthY2ppIGRsYSAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9GdW5jdGlvbnMucG06ODUKKyMsIGZ1enp5LCBwZXJsLWZvcm1hdAorI3wgbXNnaWQgImNhbm5vdCBjaGFuZ2UgdGltZXN0YW1wIGZvciAlcyIKK21zZ2lkICJjYW5ub3QgcmVhZCB0aW1lc3RhbXAgZnJvbSAlcyIKK21zZ3N0ciAibmllIG1vxbxuYSB6bWllbmnEhyBjemFzdSBtb2R5ZmlrYWNqaSBkbGEgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NzAgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjQ0MworbXNnaWQgImJpbmFyeSBmaWxlIGNvbnRlbnRzIGNoYW5nZWQiCittc2dzdHIgInphd2FydG/Fm8SHIHBsaWt1IGJpbmFybmVnbyB6bWllbmnFgmEgc2nEmSIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbToxMTgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZmlsZSAlcyBoYXMgbm8gZmluYWwgbmV3bGluZSAoZWl0aGVyIG9yaWdpbmFsIG9yIG1vZGlmaWVkIHZlcnNpb24pIgorbXNnc3RyICIiCisicGxpayAlcyBuaWUga2/FhGN6eSBzacSZIHpuYWtpZW0gbm93ZWogbGluaWkgKGFsYm8gb3J5Z2luYWxueSwgYWxibyAiCisiem1vZHlmaWtvd2FueSkiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MTIyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVua25vd24gbGluZSBmcm9tIGRpZmYgLXUgb24gJXM6IGAlcyciCittc2dzdHIgIm5pZXpuYW5hIGxpbmlhIHogZGlmZiAtdSB3ICVzOiBcIiVzXCIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MTI1IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MTI4Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIgorbXNnc3RyICJuaWUgbW/FvG5hIHphcGlzYcSHIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjEzOAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJkaWZmIG9uICVzIgorbXNnc3RyICJkaWZmIG5hICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjE2NCBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjE4MworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbToyMDYgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbToyMTgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IHN0YXQgZmlsZSAlcyIKK21zZ3N0ciAibmllIG1vxbxuYSB1c3RhbGnEhyBzdGFudSBwbGlrdSAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbToxNzMgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbToxNzUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlYWQgbGluayAlcyIKK21zZ3N0ciAibmllIG1vxbxuYSBvZGN6eXRhxIcgZG93acSFemFuaWEgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MjAyCittc2dpZCAiZGV2aWNlIG9yIHNvY2tldCBpcyBub3QgYWxsb3dlZCIKK21zZ3N0ciAidXJ6xIVkemVuaWUgbHViIGduaWF6ZG8gbmllIHPEhSBkb3p3b2xvbmUiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MjExCittc2dpZCAidW5rbm93biBmaWxlIHR5cGUiCittc2dzdHIgIm5pZXpuYW55IHR5cCBwbGlrdSIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbToyMjQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgZGVsZXRpb24gb2YgZmlsZSAlcyIKK21zZ3N0ciAiemlnbm9yb3dhbm8gdXN1bmnEmWNpZSBwbGlrdSAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbToyMjcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgZGVsZXRpb24gb2YgZGlyZWN0b3J5ICVzIgorbXNnc3RyICJ6aWdub3Jvd2FubyB1c3VuacSZY2llIGthdGFsb2d1ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjIyOQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJpZ25vcmluZyBkZWxldGlvbiBvZiBzeW1saW5rICVzIgorbXNnc3RyICJ6aWdub3Jvd2FubyB1c3VuacSZY2llIGRvd2nEhXphbmlhIHN5bWJvbGljem5lZ28gJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MjcxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIm5ld2x5IGNyZWF0ZWQgZW1wdHkgZmlsZSAnJXMnIHdpbGwgbm90IGJlIHJlcHJlc2VudGVkIGluIGRpZmYiCittc2dzdHIgIm5vd28gdXR3b3J6b255IHB1c3R5IHBsaWsgXCIlc1wiIG5pZSBixJlkemllIGRvxYLEhWN6b255IGRvIHBsaWt1IHLDs8W8bmljIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjI3NQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJleGVjdXRhYmxlIG1vZGUgJTA0byBvZiAnJXMnIHdpbGwgbm90IGJlIHJlcHJlc2VudGVkIGluIGRpZmYiCittc2dzdHIgIiIKKyJwcmF3YSBkb3N0xJlwdSAlMDRvIHd5a29ueXdhbG5lZ28gcGxpa3UgXCIlc1wiIG5pZSBixJlkxIUgZG/FgsSFY3pvbmUgZG8gcGxpa3UgIgorInLDs8W8bmljIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjI4MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJzcGVjaWFsIG1vZGUgJTA0byBvZiAnJXMnIHdpbGwgbm90IGJlIHJlcHJlc2VudGVkIGluIGRpZmYiCittc2dzdHIgIiIKKyJzcGVjamFsbmUgcHJhd2EgZG9zdMSZcHUgJTA0byBwbGlrdSBcIiVzXCIgbmllIGLEmWTEhSBkb8WCxIVjem9uZSBkbyBwbGlrdSByw7PFvG5pYyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTozMDAgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjQ0MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVwcmVzZW50IGNoYW5nZSB0byAlczogJXMiCittc2dzdHIgIm5pZXJlcHJlemVudG93YWxuZSB6bWlhbnkgdyAlczogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MzA3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZXByZXNlbnQgY2hhbmdlIHRvICVzOiIKK21zZ3N0ciAibmllcmVwcmV6ZW50b3dhbG5hIHptaWFuYSB3ICVzOiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTozMDgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiICBuZXcgdmVyc2lvbiBpcyAlcyIKK21zZ3N0ciAiICBub3fEhSB3ZXJzasSFIGplc3QgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MzA5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiAgb2xkIHZlcnNpb24gaXMgJXMiCittc2dzdHIgIiAgc3RhcsSFIHdlcnNqxIUgamVzdCAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTozODQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZXhwZWN0ZWQgXi0tLSBpbiBsaW5lICVkIG9mIGRpZmYgYCVzJyIKK21zZ3N0ciAib2N6ZWtpd2FubyBeLS0tIHcgbGluaWkgJWQgcGxpa3UgxYJhdGtpIFwiJXNcIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTozODkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZGlmZiBgJXMnIHBhdGNoZXMgZmlsZSB3aXRoIG5hbWUgZW5kaW5nIC5kcGtnLW9yaWciCittc2dzdHIgInBsaWsgxYJhdGtpIFwiJXNcIiDFgmF0YSBwbGlrIG8gbmF6d2llIGtvxYRjesSFY2VqIHNpxJkgbmEgLmRwa2ctb3JpZyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTozOTMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZGlmZiBgJXMnIGZpbmlzaGVzIGluIG1pZGRsZSBvZiAtLS0vKysrIChsaW5lICVkKSIKK21zZ3N0ciAicGxpayDFgmF0a2kgXCIlc1wiICBrb8WEY3p5IHNpxJkgdyDFm3JvZGt1IC0tLS8rKysgKGxpbmlhICVkKSIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTozOTYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibGluZSBhZnRlciAtLS0gaXNuJ3QgYXMgZXhwZWN0ZWQgaW4gZGlmZiBgJXMnIChsaW5lICVkKSIKK21zZ3N0ciAibGluaWEgcG8gLS0tIG5pZSBqZXN0IG9jemVraXdhbmEgdyBwbGlrdSDFgmF0a2kgXCIlc1wiIChsaW5pYSAlZCkiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NDAyCisjLCBmdXp6eSwgcGVybC1mb3JtYXQKKyN8IG1zZ2lkICJub25lIG9mIHRoZSBmaWxlbmFtZXMgaW4gLS0tLysrKyBhcmUgcmVsYXRpdmUgaW4gZGlmZiBgJXMnIChsaW5lICVkKSIKK21zZ2lkICJub25lIG9mIHRoZSBmaWxlbmFtZXMgaW4gLS0tLysrKyBhcmUgdmFsaWQgaW4gZGlmZiAnJXMnIChsaW5lICVkKSIKK21zZ3N0ciAiIgorIsW8YWRuYSB6IG5hencgcGxpa8OzdyB3IC0tLS8rKysgbmllIGplc3Qgd3pnbMSZZG5hIHcgcGxpa3UgxYJhdGtpIFwiJXNcIiAobGluaWEgIgorIiVkKSIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo0MTAKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbToxMjcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgY29udGFpbnMgYW4gaW5zZWN1cmUgcGF0aDogJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo0MTUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZGlmZiAlcyBtb2RpZmllcyBmaWxlICVzIHRocm91Z2ggYSBzeW1saW5rOiAlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjQyNAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJvcmlnaW5hbCBhbmQgbW9kaWZpZWQgZmlsZXMgYXJlIC9kZXYvbnVsbCBpbiBkaWZmIGAlcycgKGxpbmUgJWQpIgorbXNnc3RyICIiCisib3J5Z2luYWxueW0gaSB6bW9keWZpa293YW55bSBwbGlraWVtIGplc3QgL2Rldi9udWxsIHcgcGxpa3UgxYJhdGtpIFwiJXMiCisiXCIgKGxpbmlhICVkKSIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo0MjcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZmlsZSByZW1vdmFsIHdpdGhvdXQgcHJvcGVyIGZpbGVuYW1lIGluIGRpZmYgYCVzJyAobGluZSAlZCkiCittc2dzdHIgInVzdXdhbmllIHBsaWt1IGJleiB3xYJhxZtjaXdlaiBuYXp3eSB3IHBsaWt1IMWCYXRraSBcIiVzXCIgKGxpbmlhICVkKSIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo0MzAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZGlmZiAlcyByZW1vdmVzIGEgbm9uLWV4aXN0aW5nIGZpbGUgJXMgKGxpbmUgJWQpIgorbXNnc3RyICJwbGlrIMWCYXRraSBcIiVzXCIgdXN1d2EgbmllaXN0bmllasSFY3kgcGxpayAlcyAobGluaWEgJWQpIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjQ0MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJkaWZmIGAlcycgcGF0Y2hlcyBzb21ldGhpbmcgd2hpY2ggaXMgbm90IGEgcGxhaW4gZmlsZSIKK21zZ3N0ciAiZGlmZiBcIiVzXCIgxYJhdGEgY2/FmywgY28gbmllIGplc3Qgend5a8WCeW0gcGxpa2llbSIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo0NDYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZGlmZiBgJXMnIHBhdGNoZXMgZmlsZSAlcyB0d2ljZSIKK21zZ3N0ciAiZGlmZiBcIiVzXCIgZHd1a3JvdG5pZSDFgmF0YSBwbGlrICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjQ2NCBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjQ2OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmV4cGVjdGVkIGVuZCBvZiBkaWZmIGAlcyciCittc2dzdHIgIm5pZXNwb2R6aWV3YW55IGtvbmllYyDFgmF0a2kgXCIlc1wiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjQ3NworIywgcGVybC1mb3JtYXQKK21zZ2lkICJleHBlY3RlZCBbICstXSBhdCBzdGFydCBvZiBsaW5lICVkIG9mIGRpZmYgYCVzJyIKK21zZ3N0ciAib2N6ZWtpd2FubyBbKy1dIG5hIHBvY3rEhXRrdSBsaW5paSAlZCBwbGlrdSBkaWZmIFwiJXNcIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo0ODQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZXhwZWN0ZWQgXkBAIGF0IGxpbmUgJWQgb2YgZGlmZiBgJXMnIgorbXNnc3RyICJvY3pla2l3YW5vIF5AQCB3IGxpbmlpICVkIHBsaWt1IMWCYXRraSBcIiVzXCIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NDg5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImRpZmYgYCVzJyBkb2Vzbid0IGNvbnRhaW4gYW55IHBhdGNoIgorbXNnc3RyICJkaWZmIFwiJXNcIiBuaWUgemF3aWVyYSDFvGFkbmVqIMWCYXRraSIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo1NTQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAicmVtb3ZlIHBhdGNoIGJhY2t1cCBmaWxlICVzIgorbXNnc3RyICJ1c3V3YW5pZSBrb3BpaSB6YXBhc293ZWogcGxpa3UgxYJhdGtpICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjU5NQorbXNnaWQgIm5vbmV4aXN0ZW50IgorbXNnc3RyICJuaWVpc3RuaWVqxIVjZSIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo1OTYgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOjQ1OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc3RhdCAlcyIKK21zZ3N0ciAibmllIG1vxbxuYSB1c3RhbGnEhyBzdGFudSAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo1OTgKK21zZ2lkICJwbGFpbiBmaWxlIgorbXNnc3RyICJ6d3lrxYJ5IHBsaWsiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NTk5Cittc2dpZCAiZGlyZWN0b3J5IgorbXNnc3RyICJrYXRhbG9nIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjYwMAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJzeW1saW5rIHRvICVzIgorbXNnc3RyICJkb3dpxIV6YW5pZSBzeW1ib2xpY3puZSBkbyAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo2MDEKK21zZ2lkICJibG9jayBkZXZpY2UiCittc2dzdHIgInVyesSFZHplbmllIGJsb2tvd2UiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NjAyCittc2dpZCAiY2hhcmFjdGVyIGRldmljZSIKK21zZ3N0ciAidXJ6xIVkemVuaWUgem5ha293ZSIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo2MDMKK21zZ2lkICJuYW1lZCBwaXBlIgorbXNnc3RyICJuYXp3YW55IHBvdG9rIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjYwNAorbXNnaWQgIm5hbWVkIHNvY2tldCIKK21zZ3N0ciAibmF6d2FuZSBnbmlhemRvIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG06MTg4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGlzIG5vdCB0aGUgbmFtZSBvZiBhIGZpbGUiCittc2dzdHIgIiVzIG5pZSBqZXN0IG5henfEhSBwbGlrdSIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOjIwOAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJtaXNzaW5nIGNyaXRpY2FsIHNvdXJjZSBjb250cm9sIGZpZWxkICVzIgorbXNnc3RyICJicmFrIGtyeXR5Y3puZWdvIMW6csOzZMWCb3dlZ28gcG9sYSBrb250cm9sbmVnbyAlcyAiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbToyMzYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorInNvdXJjZSBwYWNrYWdlIGZvcm1hdCBgJXMnIGlzIG5vdCBzdXBwb3J0ZWQgKFBlcmwgbW9kdWxlICVzIGlzIHJlcXVpcmVkKSIKK21zZ3N0ciAiIgorImZvcm1hdCBcIiVzXCIgcGFraWV0dSDFunLDs2TFgm93ZWdvIG5pZSBqZXN0IG9ic8WCdWdpd2FueSAod3ltYWdhbnkgbW9kdcWCIFBlcmxhICIKKyIlcykiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbToyNDAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBGb3JtYXQgZmllbGQgYCVzJyIKK21zZ3N0ciAibmllcG9wcmF3bmUgcG9sZSBGb3JtYXQgXCIlc1wiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG06Mjg4Cittc2dpZCAic291cmNlIGFuZCB2ZXJzaW9uIGFyZSByZXF1aXJlZCB0byBjb21wdXRlIHRoZSBzb3VyY2UgYmFzZW5hbWUiCittc2dzdHIgIsW6csOzZMWCbyBpIHdlcnNqYSBzxIUgd3ltYWdhbmUgZG8gb2tyZcWbbGVuaWEgbmF6d3kgYmF6b3dlaiDFunLDs2RlxYIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbTozNzEgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOjM3MworIywgcGVybC1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gdmVyaWZ5IHNpZ25hdHVyZSBvbiAlcyIKK21zZ3N0ciAiYsWCxIVkIHdlcnlmaWtvd2FuaWEgc3lnbmF0dXJ5IHcgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbTozODAgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOjM4MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjb3VsZCBub3QgdmVyaWZ5IHNpZ25hdHVyZSBvbiAlcyBzaW5jZSBncGcgaXNuJ3QgaW5zdGFsbGVkIgorbXNnc3RyICJuaWUgbW/FvG5hIHp3ZXJ5Zmlrb3dhxIcgc3lnbmF0dXJ5IHcgJXMsIHBvbmlld2HFvCBuaWUgemFpbnN0YWxvd2FubyBncGciCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbTozOTEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgaXMgbm90IGEgdmFsaWQgb3B0aW9uIGZvciAlcyIKK21zZ3N0ciAiJXMgbmllIGplc3QgcHJhd2lkxYJvd8SFIG9wY2rEhSBkbGEgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbTo0NjAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgZG9lcyBub3QgZXhpc3QiCittc2dzdHIgIiVzIG5pZSBpc3RuaWVqZSIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOjQ2NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3QgbWFrZSAlcyBleGVjdXRhYmxlIgorbXNnc3RyICJuaWUgbW/FvG5hIHVjenluacSHICVzIHBsaWtpZW0gd3lrb255d2FsbnltIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG06NDY2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGlzIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgIiAlcyBuaWUgamVzdCB6d3lrxYJ5bSBwbGlraWVtIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG06NTE3CisjLCBmdXp6eSwgcGVybC1mb3JtYXQKK21zZ2lkICInJXMnIGlzIG5vdCBzdXBwb3J0ZWQgYnkgdGhlIHNvdXJjZSBmb3JtYXQgJyVzJyIKK21zZ3N0ciAidcW8eXdhbmlhIGZvcm1hdHUgxbpyw7NkZcWCIFwiJXNcIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjYyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIi1zJXMgb3B0aW9uIG92ZXJyaWRlcyBlYXJsaWVyIC1zJXMgb3B0aW9uIgorbXNnc3RyICJvcGNqYSAtcyVzIG5hZHBpc3VqZSB3Y3plxZtuaWVqc3rEhSBvcGNqxJkgLXMlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjg0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInNvdXJjZSBoYW5kbGluZyBzdHlsZSAtcyVzIG5vdCBhbGxvd2VkIHdpdGggLXgiCittc2dzdHIgIm9wY2phIHByemV0d2FyemFuaWEgxbpyw7NkZcWCIC1zJXMgbmllIGplc3QgZG9wdXN6Y3phbG5hIHogLXgiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbTo5NgorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL25hdGl2ZS5wbTo1MQorbXNnaWQgIm11bHRpcGxlIHRhcmZpbGVzIGluIHYxLjAgc291cmNlIHBhY2thZ2UiCittc2dzdHIgIndpZWxlIGFyY2hpd8OzdyB0YXIgdyBwYWtpZWNpZSDFunLDs2TFgm93eW0gd2Vyc2ppIDEuMCIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjEwMSBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06MTI5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVucmVjb2duaXplZCBmaWxlIGZvciBhICVzIHNvdXJjZSBwYWNrYWdlOiAlcyIKK21zZ3N0ciAibmllcm96cG96bmFueSBwbGlrIHcgcGFraWVjaWUgxbpyw7NkxYJvd3ltICVzOiAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjEwNgorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL25hdGl2ZS5wbTo1OAorbXNnaWQgIm5vIHRhcmZpbGUgaW4gRmlsZXMgZmllbGQiCittc2dzdHIgInBvbGUgRmlsZXMgbmllIHphd2llcmEgbmF6d3kgYXJjaGl3dW0gdGFyIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MTA5Cittc2dpZCAibmF0aXZlIHBhY2thZ2Ugd2l0aCAub3JpZy50YXIiCittc2dzdHIgInBha2lldCBuYXR5d255IHogcm96c3plcnplbmllbSAub3JpZy50YXIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToxMjIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbmFtZSBgJXMnIHRvIGAlcyciCittc2dzdHIgIm5pZSBtb8W8bmEgem1pZW5pxIcgbmF6d3kgXCIlc1wiIG5hIFwiJXNcIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjEyNiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06MTQxCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06MTUzIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbToxNjYKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9ienIucG06MTkwCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvbmF0aXZlLnBtOjYxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVucGFja2luZyAlcyIKK21zZ3N0ciAicm96cGFrb3d5d2FuaWUgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToxMzMKK21zZ2lkICJ1bmFibGUgdG8ga2VlcCBvcmlnIGRpcmVjdG9yeSAoYWxyZWFkeSBleGlzdHMpIgorbXNnc3RyICJuaWUgbW/FvG5hIHphY2hvd2HEhyBvcnlnaW5hbG5lZ28ga2F0YWxvZ3UgKGp1xbwgaXN0bmllamUpIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MTQwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZW5hbWUgbmV3bHktZXh0cmFjdGVkICVzIHRvICVzIgorbXNnc3RyICJuaWUgbW/FvG5hIHptaWVuacSHIG5vd28gd3lwYWtvd2FuZWdvICVzIG5hICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MTQ2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZW5hbWUgc2F2ZWQgJXMgdG8gJXMiCittc2dzdHIgIm5pZSBtb8W8bmEgem1pZW5pxIcgbmF6d3kgemFjaG93YW5lZ28gJXMgbmEgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToxNTMgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjIyMgorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjE3MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJhcHBseWluZyAlcyIKK21zZ3N0ciAiYXBsaWtvd2FuaWUgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToxNTgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidXBzdHJlYW0gZmlsZXMgdGhhdCBoYXZlIGJlZW4gbW9kaWZpZWQ6ICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToxNjgKK21zZ2lkICJvbmx5IHN1cHBvcnRzIGd6aXAgY29tcHJlc3Npb24iCittc2dzdHIgIm9ic8WCdWd1amUgdHlsa28ga29tcHJlc2rEmSBnemlwIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MTc5Cittc2dpZCAiIgorIi1iIHRha2VzIGF0IG1vc3QgYSBkaXJlY3RvcnkgYW5kIGFuIG9yaWcgc291cmNlIGFyZ3VtZW50ICh3aXRoIHYxLjAgc291cmNlICIKKyJwYWNrYWdlKSIKK21zZ3N0ciAiIgorIi1iIHBvYmllcmEgY28gbmFqd3nFvGVqIGR3YSBhcmd1bWVudHk6IGthdGFsb2cgaSBvcnlnaW5hbG5lIMW6csOzZMWCYSAoeiB3ZXJzasSFICIKKyIxLjAgcGFraWV0dSDFunLDs2TFgm93ZWdvKSIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjE4NQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJzb3VyY2UgaGFuZGxpbmcgc3R5bGUgLXMlcyBub3QgYWxsb3dlZCB3aXRoIC1iIgorbXNnc3RyICJuaWUgbW/FvG5hIMWCxIVjennEhyAtcyVzLCBvZG5vc3rEhWNlaiBzacSZIGRvIG9ic8WCdWdpIMW6csOzZGXFgiwgeiAtYiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjIwMAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJwYWNrZWQgb3JpZyBgJXMnIGV4aXN0cyBidXQgaXMgbm90IGEgcGxhaW4gZmlsZSIKK21zZ3N0ciAic3Bha293YW55IG9yeWcuIFwiJXNcIiBpc3RuaWVqZSwgYWxlIG5pZSBqZXN0IHp3eWvFgnltIHBsaWtpZW0iCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToyMTIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IHN0YXQgb3JpZyBhcmd1bWVudCAlcyIKK21zZ3N0ciAibmllIG1vxbxuYSB1c3RhbGnEhyBzdGFudSBkbGEgYXJndW1lbnR1IG9yaWcgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToyMTgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIm9yaWcgYXJndW1lbnQgaXMgdW5wYWNrZWQgYnV0IHNvdXJjZSBoYW5kbGluZyBzdHlsZSAtcyVzIGNhbGxzIGZvciBwYWNrZWQgKC4iCisib3JpZy50YXIuPGV4dD4pIgorbXNnc3RyICIiCisiYXJndW1lbnQgb3JpZyBqZXN0IG5pZXNwYWtvd2FueSwgYWxlIG9wY2phIHByemV0d2FyemFuaWEgxbpyw7NkZcWCIC1zJXMgIgorIm9jemVrdWplIHNwYWtvd2FuZWdvICgub3JpZy50YXIuPHJvenN6ZXJ6ZW5pZT4pIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MjI2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJvcmlnIGFyZ3VtZW50IGlzIHBhY2tlZCBidXQgc291cmNlIGhhbmRsaW5nIHN0eWxlIC1zJXMgY2FsbHMgZm9yIHVucGFja2VkICguIgorIm9yaWcvKSIKK21zZ3N0ciAiIgorImFyZ3VtZW50IG9yaWcgamVzdCBzcGFrb3dhbnksIGFsZSBvcGNqYSBwcnpldHdhcnphbmlhIMW6csOzZGXFgiAtcyVzIG9jemVrdWplICIKKyJuaWVzcGFrb3dhbmVnbyAoLm9yaWcvKSIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjIzMQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJvcmlnIGFyZ3VtZW50ICVzIGlzIG5vdCBhIHBsYWluIGZpbGUgb3IgZGlyZWN0b3J5IgorbXNnc3RyICJhcmd1bWVudCBvcnlnICVzIG5pZSBqZXN0IHp3eWvFgnltIHBsaWtpZW0gYW5pIGthdGFsb2dpZW0iCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToyMzcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIm9yaWcgYXJndW1lbnQgaXMgZW1wdHkgKG1lYW5zIG5vIG9yaWcsIG5vIGRpZmYpIGJ1dCBzb3VyY2UgaGFuZGxpbmcgc3R5bGUgLXMiCisiJXMgd2FudHMgc29tZXRoaW5nIgorbXNnc3RyICIiCisiYXJndW1lbnQgb3JpZyBqZXN0IHB1c3R5IChicmFrIG9yaWcgaSByw7PFvG5pYyksIGFsZSBvcGNqYSBwcnpldHdhcnphbmlhICIKKyLFunLDs2RlxYIgLXMlcyBvY3pla3VqZSBqYWtpZWdvxZsiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToyNTAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5wYWNrZWQgb3JpZyBgJXMnIGV4aXN0cyBidXQgaXMgbm90IGEgZGlyZWN0b3J5IgorbXNnc3RyICJyb3pwYWtvd2FueSBvcnlnLiBcIiVzXCIgaXN0bmllamUsIGFsZSBuaWUgamVzdCBrYXRhbG9naWVtIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MjU1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IHB1dGF0aXZlIHVucGFja2VkIG9yaWcgYCVzJyIKK21zZ3N0ciAibmllIG1vxbxuYSB1c3RhbGnEhyBzdGFudSBkb21uaWVtYW5lZ28gcm96cGFrb3dhbmVnbyBvcnlnaW5hbG5lZ28gXCIlc1wiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MjY0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInNvdXJjZSBkaXJlY3RvcnkgJyVzJyBpcyBub3QgPHNvdXJjZXBhY2thZ2U+LTx1cHN0cmVhbXZlcnNpb24+ICclcyciCittc2dzdHIgImthdGFsb2cgxbpyw7NkxYJvd3kgXCIlc1wiIG5pZSBqZXN0IHcgcG9zdGFjaSA8cGFraWV0X8W6csOzZMWCb3d5PiBcIiVzXCIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToyNzMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiLm9yaWcgZGlyZWN0b3J5IG5hbWUgJXMgaXMgbm90IDxwYWNrYWdlPi08dXBzdHJlYW12ZXJzaW9uPiAod2FudGVkICVzKSIKK21zZ3N0ciAiIgorIm5hendhIGthdGFsb2d1IC5vcmlnICVzIG5pZSBqZXN0IHcgcG9zdGFjaSA8cGFraWV0Pi08d2Vyc2phX2fFgsOzd25hPiAiCisiKG9jemVraXdhbm8gJXMpIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MjgyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyIub3JpZy50YXIgbmFtZSAlcyBpcyBub3QgPHBhY2thZ2U+Xzx1cHN0cmVhbXZlcnNpb24+Lm9yaWcudGFyICh3YW50ZWQgJXMpIgorbXNnc3RyICIiCisibmF6d2EgcGxpa3UgLm9yaWcudGFyICVzIG5pZSBqZXN0IHcgcG9zdGFjaSA8cGFraWV0Pi08d2Vyc2phX2fFgsOzd25hPi5vcmlnLiIKKyJ0YXIuIChvY3pla2l3YW5vICVzKSIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjI5NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisidGFyZmlsZSBgJXMnIGFscmVhZHkgZXhpc3RzLCBub3Qgb3ZlcndyaXRpbmcsIGdpdmluZyB1cDsgdXNlIC1zVSBvciAtc1IgdG8gIgorIm92ZXJyaWRlIgorbXNnc3RyICIiCisiYXJjaGl3dW0gdGFyIFwiJXNcIiBqdcW8IGlzdG5pZWplLCBuaWUgYsSZZHppZSBuYWRwaXNhbnksIHBvZGRhd2FuaWUgc2nEmSAsICIKKyJ1xbx5aiAtc1UgbHViIC1zUiwgYWJ5IG5hZHBpc2HEhyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjI5OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hlY2sgZm9yIGV4aXN0ZW5jZSBvZiBgJXMnIgorbXNnc3RyICJuaWUgbW/FvG5hIHNwcmF3ZHppxIcgaXN0bmllbmlhIFwiJXNcIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjMxMyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06Mzc1CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvbmF0aXZlLnBtOjk4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW5hbWUgYCVzJyAobmV3bHkgY3JlYXRlZCkgdG8gYCVzJyIKK21zZ3N0ciAibmllIG1vxbxuYSB6bWllbmnEhyBuYXp3eSAobm93byB1dHdvcnpvbmVnbykgXCIlc1wiIG5hIFwiJXNcIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjMxNiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06Mzc4CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NjAzCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvbmF0aXZlLnBtOjEwMgorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjM2NworIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hhbmdlIHBlcm1pc3Npb24gb2YgYCVzJyIKK21zZ3N0ciAibmllIG1vxbxuYSB6bWllbmnEhyBwcmF3IGRvc3TEmXB1IFwiJXNcIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjMxOCBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06MzQ4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImJ1aWxkaW5nICVzIHVzaW5nIGV4aXN0aW5nICVzIgorbXNnc3RyICJidWRvd2FuaWUgJXMsIHXFvHl3YWrEhWMgaXN0bmllasSFY2VnbyAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjMyNworIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisib3JpZyBkaXIgYCVzJyBhbHJlYWR5IGV4aXN0cywgbm90IG92ZXJ3cml0aW5nLCBnaXZpbmcgdXA7IHVzZSAtc0EsIC1zSyBvciAtIgorInNQIHRvIG92ZXJyaWRlIgorbXNnc3RyICIiCisib3J5Zy4ga2F0YWxvZyBcIiVzXCIganXFvCBpc3RuaWVqZSwgbmllIGLEmWR6aWUgbmFkcGlzYW55LCBwb2RkYXdhbmllIHNpxJk7ICIKKyJ1xbx5aiAtc0EsIC1zSyBsdWIgLXNQLCBhYnkgbmFkcGlzYcSHIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MzM1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGVjayBmb3IgZXhpc3RlbmNlIG9mIG9yaWcgZGlyIGAlcyciCittc2dzdHIgIm5pZSBtb8W8bmEgc3ByYXdkemnEhyBpc3RuaWVuaWEga2F0YWxvZ3Ugb3JpZyBcIiVzXCIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbTozNjYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidGhlIGRpZmYgbW9kaWZpZXMgdGhlIGZvbGxvd2luZyB1cHN0cmVhbSBmaWxlczogJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjM2OAorbXNnaWQgIiIKKyJ1c2UgdGhlICczLjAgKHF1aWx0KScgZm9ybWF0IHRvIGhhdmUgc2VwYXJhdGUgYW5kIGRvY3VtZW50ZWQgY2hhbmdlcyB0byAiCisidXBzdHJlYW0gZmlsZXMsIHNlZSBkcGtnLXNvdXJjZSgxKSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MzcwCittc2dpZCAiYWJvcnRpbmcgZHVlIHRvIC0tYWJvcnQtb24tdXBzdHJlYW0tY2hhbmdlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06Mzg4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzOiB1bnJlcHJlc2VudGFibGUgY2hhbmdlcyB0byBzb3VyY2UiCittc2dzdHIgIiVzOiBuaWVyZXByZXplbnRvd2FsbmUgem1pYW55IHcgxbpyw7NkbGUiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbToxMTkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIGZpbGVzIGluICVzIHNvdXJjZSBwYWNrYWdlOiAlcy4qIgorbXNnc3RyICJ6ZHVwbGlrb3dhbmUgcGxpa2kgdyBwYWtpZWNpZSDFunLDs2TFgm93eW0gJXM6ICVzLioiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbToxMzUKK21zZ2lkICJtaXNzaW5nIG9yaWcudGFyIG9yIGRlYmlhbi50YXIgZmlsZSBpbiB2Mi4wIHNvdXJjZSBwYWNrYWdlIgorbXNnc3RyICIiCisiYnJha3VqxIVjeSBwbGlrIG9yaWcudGFyIGxpYiBkZWJpYW4udGFyIGRsYSB3ZXJzamkgMi4wIHBha2lldHUgxbpyw7NkxYJvd2VnbyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjE1NQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJyZXF1aXJlZCByZW1vdmFsIG9mIGAlcycgaW5zdGFsbGVkIGJ5IG9yaWdpbmFsIHRhcmJhbGwiCittc2dzdHIgIiIKKyJ3eW1hZ2FuZSB1c3VuacSZY2llIFwiJXNcIiB6YWluc3RhbG93YW5lZ28gcHJ6ZXogb3J5Z2luYWxuZSBhcmNoaXd1bSB0YXIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbToyNDAKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbToyNTUKKyMsIGZ1enp5LCBwZXJsLWZvcm1hdAorI3wgbXNnaWQgImFwcGx5aW5nICVzIgorbXNnaWQgInVuYXBwbHlpbmcgJXMiCittc2dzdHIgImFwbGlrb3dhbmllICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06MjYzIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTozNDQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibm8gdXBzdHJlYW0gdGFyYmFsbCBmb3VuZCBhdCAlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06MzE0CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06MzI5CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJwYXRjaGVzIGhhdmUgbm90IGJlZW4gYXBwbGllZCwgYXBwbHlpbmcgdGhlbSBub3cgKHVzZSAtLW5vLXByZXBhcmF0aW9uIHRvICIKKyN8ICJvdmVycmlkZSkiCittc2dpZCAicGF0Y2hlcyBhcmUgbm90IGFwcGxpZWQsIGFwcGx5aW5nIHRoZW0gbm93IgorbXNnc3RyICIiCisibmllIHpvc3RhxYJ5IG5hxYJvxbxvbmUgxYJhdGtpLCBuYWvFgmFkYW5pZSBpY2ggdGVyYXogKHByb3N6xJkgdcW8ecSHIC0tbm8tIgorInByZXBhcmF0aW9uIGFieSB0byBwb21pbsSFxIcpIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06MzMxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInNldmVyYWwgb3JpZy50YXIgZmlsZXMgZm91bmQgKCVzIGFuZCAlcykgYnV0IG9ubHkgb25lIGlzIGFsbG93ZWQiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjM3MAorbXNnaWQgImNvcHkgb2YgdGhlIGRlYmlhbiBkaXJlY3RvcnkiCittc2dzdHIgImtvcGlhIGthdGFsb2d1IGRlYmlhbiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjM4OAorbXNnaWQgInVucmVwcmVzZW50YWJsZSBjaGFuZ2VzIHRvIHNvdXJjZSIKK21zZ3N0ciAibmllcmVwcmV6ZW50b3dhbG5lIHptaWFueSB3IMW6csOzZGxlIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06MzkxCisjLCBmdXp6eQorI3wgbXNnaWQgImxvY2FsIGNoYW5nZXMgc3RvcmVkIGluICVzLCB0aGUgbW9kaWZpZWQgZmlsZXMgYXJlOiIKK21zZ2lkICJsb2NhbCBjaGFuZ2VzIGRldGVjdGVkLCB0aGUgbW9kaWZpZWQgZmlsZXMgYXJlOiIKK21zZ3N0ciAibG9rYWxuZSB6bWlhbnkgemFjaG93YW5lIHcgJXMsIHptb2R5Zmlrb3dhbmUgcGxpa2kgdG86IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NDEwCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvYnpyLnBtOjk3CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvbmF0aXZlLnBtOjc2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIi1iIHRha2VzIG9ubHkgb25lIHBhcmFtZXRlciB3aXRoIGZvcm1hdCBgJXMnIgorbXNnc3RyICItYiBwcnp5am11amUgdHlsa28gamVkZW4gcGFyYW1ldHIgdyBmb3JtYWNpZSBcIiVzXCIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo0NDQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorImFkZCAlcyBpbiBkZWJpYW4vc291cmNlL2luY2x1ZGUtYmluYXJpZXMgaWYgeW91IHdhbnQgdG8gc3RvcmUgdGhlIG1vZGlmaWVkICIKKyJiaW5hcnkgaW4gdGhlIGRlYmlhbiB0YXJiYWxsIgorbXNnc3RyICIiCisicHJvc3rEmSBkb2RhxIcgJXMgdyBkZWJpYW4vc291cmNlL2luY2x1ZGUtYmluYXJpZXMgamXFm2xpIHptb2R5Zmlrb3dhbmUgYmluYXJpYSAiCisibWFqxIUgc2nEmSB6bmFsZcW6xIcgdyB3eW5pa293eW0gYXJjaGl3dW0gRGViaWFuYSIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjQ1OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bndhbnRlZCBiaW5hcnkgZmlsZTogJXMiCittc2dzdHIgIm5pZWNoY2lhbnkgcGxpayBiaW5hcm55OiAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjQ5MworIywgZnV6enksIHBlcmwtZm9ybWF0CisjfCBtc2dpZCAiIgorI3wgImRldGVjdGVkICVkIHVud2FudGVkIGJpbmFyeSBmaWxlKHMpIChhZGQgdGhlbSBpbiBkZWJpYW4vc291cmNlL2luY2x1ZGUtIgorI3wgImJpbmFyaWVzIHRvIGFsbG93IHRoZWlyIGluY2x1c2lvbikuIgorbXNnaWQgIiIKKyJkZXRlY3RlZCAlZCB1bndhbnRlZCBiaW5hcnkgZmlsZSAoYWRkIGl0IGluIGRlYmlhbi9zb3VyY2UvaW5jbHVkZS1iaW5hcmllcyAiCisidG8gYWxsb3cgaXRzIGluY2x1c2lvbikuIgorbXNnaWRfcGx1cmFsICIiCisiZGV0ZWN0ZWQgJWQgdW53YW50ZWQgYmluYXJ5IGZpbGVzIChhZGQgdGhlbSBpbiBkZWJpYW4vc291cmNlL2luY2x1ZGUtIgorImJpbmFyaWVzIHRvIGFsbG93IHRoZWlyIGluY2x1c2lvbikuIgorbXNnc3RyWzBdICIiCisid3lrcnl0byAlZCBuaWVjaGNpYW55KGNoKSBwbGlrKMOzdykgYmluYXJueShjaCkgKG5hbGXFvHkgamUgd3ltaWVuacSHIHcgZGViaWFuLyIKKyJzb3VyY2UvaW5jbHVkZS1iaW5hcmllcyBhYnkgdW1vxbxsaXdpxIcgaWNoIHfFgsSFY3plbmllKS4iCittc2dzdHJbMV0gIiIKKyJ3eWtyeXRvICVkIG5pZWNoY2lhbnkoY2gpIHBsaWsow7N3KSBiaW5hcm55KGNoKSAobmFsZcW8eSBqZSB3eW1pZW5pxIcgdyBkZWJpYW4vIgorInNvdXJjZS9pbmNsdWRlLWJpbmFyaWVzIGFieSB1bW/FvGxpd2nEhyBpY2ggd8WCxIVjemVuaWUpLiIKK21zZ3N0clsyXSAiIgorInd5a3J5dG8gJWQgbmllY2hjaWFueShjaCkgcGxpayjDs3cpIGJpbmFybnkoY2gpIChuYWxlxbx5IGplIHd5bWllbmnEhyB3IGRlYmlhbi8iCisic291cmNlL2luY2x1ZGUtYmluYXJpZXMgYWJ5IHVtb8W8bGl3acSHIGljaCB3xYLEhWN6ZW5pZSkuIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NTA4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInlvdSBjYW4gaW50ZWdyYXRlIHRoZSBsb2NhbCBjaGFuZ2VzIHdpdGggJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjUxMAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJhYm9ydGluZyBkdWUgdG8gdW5leHBlY3RlZCB1cHN0cmVhbSBjaGFuZ2VzLCBzZWUgJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjUyMCBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NjUzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImxvY2FsIGNoYW5nZXMgaGF2ZSBiZWVuIHJlY29yZGVkIGluIGEgbmV3IHBhdGNoOiAlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NTI0IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo2MDkKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo2Mzcgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjY1MQorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjM2OQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVtb3ZlICVzIgorbXNnc3RyICJuaWUgbW/FvG5hIHVzdW7EhcSHICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NTM0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImFkZGluZyAlcyB0byAlcyIKK21zZ3N0ciAiZG9kYXdhbmllICVzIGRvICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NjAxCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06MzY1CisjLCBmdXp6eSwgcGVybC1mb3JtYXQKKyN8IG1zZ2lkICJmYWlsZWQgdG8gcmVuYW1lIHNhdmVkICVzIHRvICVzIgorbXNnaWQgImZhaWxlZCB0byBjb3B5ICVzIHRvICVzIgorbXNnc3RyICJuaWUgbW/FvG5hIHptaWVuacSHIG5hend5IHphY2hvd2FuZWdvICVzIG5hICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NjI0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZWdpc3RlciBjaGFuZ2VzIGluICVzLCB0aGlzIHBhdGNoIGFscmVhZHkgZXhpc3RzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo2MzgKKyMsIGZ1enp5CisjfCBtc2dpZCAidW5yZXByZXNlbnRhYmxlIGNoYW5nZXMgdG8gc291cmNlIgorbXNnaWQgInRoZXJlIGFyZSBubyBsb2NhbCBjaGFuZ2VzIHRvIHJlY29yZCIKK21zZ3N0ciAibmllcmVwcmV6ZW50b3dhbG5lIHptaWFueSB3IMW6csOzZGxlIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NjQzCittc2dpZCAiRW50ZXIgdGhlIGRlc2lyZWQgcGF0Y2ggbmFtZTogIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9ienIucG06NTIKK21zZ2lkICIiCisiVGhpcyBzb3VyY2UgcGFja2FnZSBjYW4gb25seSBiZSBtYW5pcHVsYXRlZCB1c2luZyBienIsIHdoaWNoIGlzIG5vdCBpbiB0aGUgIgorIlBBVEguIgorbXNnc3RyICIiCisiVHltIHBha2lldGVtIMW6csOzZMWCb3d5bSBtb8W8bmEgemFyesSFZHphxIcgeiB1xbx5Y2llbSBienIsIGFsZSBuaWUgbWEgZ28gdyAiCisixZtjaWXFvGNlIHptaWVubmVqIFBBVEguIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvYnpyLnBtOjU5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJzb3VyY2UgZGlyZWN0b3J5IGlzIG5vdCB0aGUgdG9wIGRpcmVjdG9yeSBvZiBhIGJ6ciByZXBvc2l0b3J5ICglcy8uYnpyIG5vdCAiCisicHJlc2VudCksIGJ1dCBGb3JtYXQgYnpyIHdhcyBzcGVjaWZpZWQiCittc2dzdHIgIiIKKyJrYXRhbG9nIMW6csOzZMWCb3d5IG5pZSBqZXN0IGfFgsOzd255bSBrYXRhbG9naWVtIHJlcG96eXRvcml1bSBienIgKG5pZSBtYSAlcy8uIgorImJ6ciksIGFsZSB6b3N0YcWCIHdza2F6YW55IGZvcm1hdCBienIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9ienIucG06NjYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgaXMgYSBzeW1saW5rIgorbXNnc3RyICIlcyBqZXN0IGRvd2nEhXphbmllbSBzeW1ib2xpY3pueW0iCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9ienIucG06NzIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgaXMgYSBzeW1saW5rIHRvIG91dHNpZGUgJXMiCittc2dzdHIgIiVzIGplc3QgZG93acSFemFuaWVtIHN5bWJvbGljem55bSBkbyB6ZXduxJl0cnpuZWdvICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvYnpyLnBtOjgzCittc2dpZCAiZG9lc24ndCBjb250YWluIGEgYnpyIHJlcG9zaXRvcnkiCittc2dzdHIgIm5pZSB6YXdpZXJhIHJlcG96eXRvcml1bSBnaXQiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9ienIucG06MTI3Cittc2dpZCAiYnpyIHN0YXR1cyBleGl0ZWQgbm9uemVybyIKK21zZ3N0ciAiYnpyIHN0YXR1cyB6d3LDs2NpxYIgbmllemVyb3d5IGtvZCBixYLEmWR1IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvYnpyLnBtOjEyOQorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2dpdC5wbToxMzMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5jb21taXR0ZWQsIG5vdC1pZ25vcmVkIGNoYW5nZXMgaW4gd29ya2luZyBkaXJlY3Rvcnk6ICVzIgorbXNnc3RyICJuaWV6YXR3aWVyZHpvbmUsIG5pZSBpZ25vcm93YW5lIHptaWFueSB3IGthdGFsb2d1IHJvYm9jenltOiAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2J6ci5wbToxNzkKK21zZ2lkICJmb3JtYXQgdjMuMCB1c2VzIG9ubHkgb25lIHNvdXJjZSBmaWxlIgorbXNnc3RyICJmb3JtYXQgMy4wIHXFvHl3YSB0eWxrbyBqZWRuZWdvIHBsaWt1IMW6csOzZMWCb3dlZ28iCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9ienIucG06MTgzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImV4cGVjdGVkICVzLCBnb3QgJXMiCittc2dzdHIgIm9jemVraXdhbm8gJXMsIG90cnp5bWFubyAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2N1c3RvbS5wbTo0MAorbXNnaWQgIkZvcm1hdCBgMy4wIChjdXN0b20pJyBpcyBvbmx5IHVzZWQgdG8gY3JlYXRlIHNvdXJjZSBwYWNrYWdlcyIKK21zZ3N0ciAiIgorIkZvcm1hdCBcIjMuMCAoY3VzdG9tKVwiIGplc3QgdcW8eXdhbnkgamVkeW5pZSBkbyB0d29yemVuaWEgcGFraWV0w7N3IMW6csOzZMWCb3d5Y2giCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9jdXN0b20ucG06NDYKK21zZ2lkICJubyBmaWxlcyBpbmRpY2F0ZWQgb24gY29tbWFuZCBsaW5lIgorbXNnc3RyICJuaWUgcG9kYW5vIHBsaWvDs3cgdyB3eXdvxYJhbml1IHByb2dyYW11IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvY3VzdG9tLnBtOjUzCittc2dpZCAiLS10YXJnZXQtZm9ybWF0IG9wdGlvbiBpcyBtaXNzaW5nIgorbXNnc3RyICJuaWUgcG9kYW5vIG9wY2ppIC0tdGFyZ2V0LWZvcm1hdCIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL25hdGl2ZS5wbTo1NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bnJlY29nbml6ZWQgZmlsZSBmb3IgYSBuYXRpdmUgc291cmNlIHBhY2thZ2U6ICVzIgorbXNnc3RyICJuaWVyb3pwb3puYW55IHBsaWsgZGxhIG5hdHl3bmVnbyBwYWtpZXR1IMW6csOzZMWCb3dlZ286ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvZ2l0LnBtOjU1Cittc2dpZCAiIgorIlRoaXMgc291cmNlIHBhY2thZ2UgY2FuIG9ubHkgYmUgbWFuaXB1bGF0ZWQgdXNpbmcgZ2l0LCB3aGljaCBpcyBub3QgaW4gdGhlICIKKyJQQVRILiIKK21zZ3N0ciAiIgorIlR5bSBwYWtpZXRlbSDFunLDs2TFgm93eW0gbW/FvG5hIHphcnrEhWR6YcSHIHogdcW8eWNpZW0gZ2l0LCBhbGUgbmllIG1hIGdvIHcgIgorIsWbY2llxbxjZSB6bWllbm5laiBQQVRILiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2dpdC5wbTo2MworIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisic291cmNlIGRpcmVjdG9yeSBpcyBub3QgdGhlIHRvcCBkaXJlY3Rvcnkgb2YgYSBnaXQgcmVwb3NpdG9yeSAoJXMvLmdpdCBub3QgIgorInByZXNlbnQpLCBidXQgRm9ybWF0IGdpdCB3YXMgc3BlY2lmaWVkIgorbXNnc3RyICIiCisia2F0YWxvZyDFunLDs2TFgm93eSBuaWUgamVzdCBnxYLDs3dueW0ga2F0YWxvZ2llbSByZXBvenl0b3JpdW0gZ2l0IChuaWUgbWEgJXMvLiIKKyJnaXQpLCBhbGUgem9zdGHFgiB3c2themFueSBmb3JtYXQgZ2l0IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvZ2l0LnBtOjY4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImdpdCByZXBvc2l0b3J5ICVzIHVzZXMgc3VibW9kdWxlcy4gVGhpcyBpcyBub3QgeWV0IHN1cHBvcnRlZC4iCittc2dzdHIgIlJlcG96eXRvcml1bSBnaXQgJXMgdcW8eXdhIHBvZG1vZHXFgsOzdy4gVG8gamVzemN6ZSBuaWUgamVzdCBvYnPFgnVnaXdhbmUuIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvZ2l0LnBtOjkwCittc2dpZCAiZG9lc24ndCBjb250YWluIGEgZ2l0IHJlcG9zaXRvcnkiCittc2dzdHIgIm5pZSB6YXdpZXJhIHJlcG96eXRvcml1bSBnaXQiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9naXQucG06MTMxCittc2dpZCAiZ2l0IGxzLWZpbGVzIGV4aXRlZCBub256ZXJvIgorbXNnc3RyICJnaXQgbHMtZmlsZXMgendyw7NjacWCIG5pZXplcm93eSBrb2Qgd3lqxZtjaWEiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9naXQucG06MTQ5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNyZWF0aW5nIHNoYWxsb3cgY2xvbmUgd2l0aCBkZXB0aCAlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvZ2l0LnBtOjE2NQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJidW5kbGluZzogJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2dpdC5wbToyMDEKKyMsIGZ1enp5CisjfCBtc2dpZCAiZm9ybWF0IHYzLjAgdXNlcyBvbmx5IG9uZSBzb3VyY2UgZmlsZSIKK21zZ2lkICJmb3JtYXQgdjMuMCAoZ2l0KSB1c2VzIG9ubHkgb25lIC5naXQgZmlsZSIKK21zZ3N0ciAiZm9ybWF0IDMuMCB1xbx5d2EgdHlsa28gamVkbmVnbyBwbGlrdSDFunLDs2TFgm93ZWdvIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvZ2l0LnBtOjIwNworIywgZnV6enkKKyN8IG1zZ2lkICJmb3JtYXQgdjMuMCB1c2VzIG9ubHkgb25lIHNvdXJjZSBmaWxlIgorbXNnaWQgImZvcm1hdCB2My4wIChnaXQpIHVzZXMgb25seSBvbmUgLmdpdHNoYWxsb3cgZmlsZSIKK21zZ3N0ciAiZm9ybWF0IDMuMCB1xbx5d2EgdHlsa28gamVkbmVnbyBwbGlrdSDFunLDs2TFgm93ZWdvIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvZ2l0LnBtOjIxMAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJmb3JtYXQgdjMuMCAoZ2l0KSB1bmtub3duIGZpbGU6ICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9naXQucG06MjE0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImZvcm1hdCB2My4wIChnaXQpIGV4cGVjdGVkICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9naXQucG06MjIwCisjLCBmdXp6eSwgcGVybC1mb3JtYXQKKyN8IG1zZ2lkICJhcHBseWluZyAlcyIKK21zZ2lkICJjbG9uaW5nICVzIgorbXNnc3RyICJhcGxpa293YW5pZSAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2dpdC5wbToyMjcKK21zZ2lkICJzZXR0aW5nIHVwIHNoYWxsb3cgY2xvbmUiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjczCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIHNob3VsZCBiZSBhIGRpcmVjdG9yeSBvciBub24tZXhpc3RpbmciCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjc5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIHNob3VsZCBiZSBhIGZpbGUgb3Igbm9uLWV4aXN0aW5nIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbToxMjAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorInRoZSBzZXJpZXMgZmlsZSAoJXMpIGNvbnRhaW5zIHVuc3VwcG9ydGVkIG9wdGlvbnMgKCclcycsIGxpbmUgJXMpLCBkcGtnLSIKKyJzb3VyY2UgbWlnaHQgZmFpbCB3aGVuIGFwcGx5aW5nIHBhdGNoZXMuIgorbXNnc3RyICIiCisicGxpayB3eWRhbmlhICglcykgemF3aWVyYSBuaWVvYnPFgnVnaXdhbmUgb3BjamUgKFwiJXNcIiwgbGluaWEgJXMpLCBkcGtnLSIKKyJzb3VyY2UgbW/FvGUgemF3aWXFm8SHIHByenkgbmFrxYJhZGFuaXUgxYJhdGVrLiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjEzOAorIywgZnV6enksIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IG1rZGlyICVzIgorbXNnc3RyICJuaWUgbW/FvG5hIG90d29yennEhyBrYXRhbG9ndSAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjIxMgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW4ndCBjcmVhdGUgc3ltbGluayAlcyIKK21zZ3N0ciAibmllIG1vxbxuYSB1dHdvcnp5xIcgbGlua3Ugc3ltYm9saWN6bmVnbyBcIiVzXCIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbToyOTQKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbToyOTcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5zdXBwb3J0ZWQgdmVyc2lvbiBvZiB0aGUgcXVpbHQgbWV0YWRhdGE6ICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9TdWJzdHZhcnMucG06MTUwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImJhZCBsaW5lIGluIHN1YnN0dmFycyBmaWxlICVzIGF0IGxpbmUgJWQiCittc2dzdHIgImLFgsSZZG5hIGxpbmlhIHcgcGxpa3UgcG9kc3Rhd2llxYQgJXMsIHcgbGluaWkgJWQiCisKKyM6IHNjcmlwdHMvRHBrZy9TdWJzdHZhcnMucG06MjE3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInRvbyBtYW55IHN1YnN0aXR1dGlvbnMgLSByZWN1cnNpdmUgPyAtIGluIGAlcyciCittc2dzdHIgInphIGR1xbxvIHBvZHN0YXdpZcWEIC0gcmVrdXJzamE/IC0gdyBcIiVzXCIiCisKKyM6IHNjcmlwdHMvRHBrZy9TdWJzdHZhcnMucG06MjI0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVua25vd24gc3Vic3RpdHV0aW9uIHZhcmlhYmxlICR7JXN9IgorbXNnc3RyICJuaWV6bmFuYSB6bWllbm5hIHBvZHN0YXdpYW5pYSAkeyVzfSIKKworIzogc2NyaXB0cy9EcGtnL1N1YnN0dmFycy5wbToyNDgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW51c2VkIHN1YnN0aXR1dGlvbiB2YXJpYWJsZSAkeyVzfSIKK21zZ3N0ciAibmlldcW8eXdhbmEgem1pZW5uYSBwb2RzdGF3aWFuaWEgJHslc30iCisKKyM6IHNjcmlwdHMvRHBrZy9WYXJzLnBtOjM0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInNvdXJjZSBwYWNrYWdlIG5hbWUgYCVzJyBjb250YWlucyBpbGxlZ2FsIGNoYXJhY3RlciBgJXMnIgorbXNnc3RyICJuYXp3YSBwYWtpZXR1IMW6csOzZMWCb3dlZ28gXCIlc1wiIHphd2llcmEgbmllcG9wcmF3bnkgem5hayBcIiVzXCIiCisKKyM6IHNjcmlwdHMvRHBrZy9WYXJzLnBtOjM3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInNvdXJjZSBwYWNrYWdlIG5hbWUgYCVzJyBzdGFydHMgd2l0aCBub24tYWxwaGFudW0iCittc2dzdHIgIiIKKyJuYXp3YSBwYWtpZXR1IMW6csOzZMWCb3dlZ28gXCIlc1wibmllIHphY3p5bmEgc2nEmSBvZCB6bmFrdSBhbGZhbnVtZXJ5Y3puZWdvIgorCisjOiBzY3JpcHRzL0Rwa2cvVmFycy5wbTo0NgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJzb3VyY2UgcGFja2FnZSBoYXMgdHdvIGNvbmZsaWN0aW5nIHZhbHVlcyAtICVzIGFuZCAlcyIKK21zZ3N0ciAicGFraWV0IMW6csOzZMWCb3d5IG1hIGR3aWUgd2FydG/Fm2NpIGLEmWTEhWNlIHcga29uZmxpa2NpZSB6ZSBzb2LEhSAtICVzIGkgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9WZW5kb3IvRGViaWFuLnBtOjEwNgorIywgZnV6enksIHBlcmwtZm9ybWF0Cittc2dpZCAidW5rbm93biBoYXJkZW5pbmcgZmVhdHVyZTogJXMiCittc2dzdHIgIm5pZXpuYW5lIGtsdWN6LXdhcnRvxZvEhyAlcyAtIGtvcGlvd2FuaWUgZG8gWFMtJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9WZW5kb3IvRGViaWFuLnBtOjExMAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJpbmNvcnJlY3QgdmFsdWUgaW4gaGFyZGVuaW5nIG9wdGlvbiBvZiBERUJfQlVJTERfTUFJTlRfT1BUSU9OUzogJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1ZlbmRvci9VYnVudHUucG06NjEgc2NyaXB0cy9EcGtnL1ZlbmRvci9VYnVudHUucG06NjMKK21zZ2lkICIiCisiVmVyc2lvbiBudW1iZXIgc3VnZ2VzdHMgVWJ1bnR1IGNoYW5nZXMsIGJ1dCBNYWludGFpbmVyOiBkb2VzIG5vdCBoYXZlIFVidW50dSAiCisiYWRkcmVzcyIKK21zZ3N0ciAiIgorIk51bWVyIHdlcnNqaSBzdWdlcnVqZSB6bWlhbnkgeiBVYnVudHUsIGFsZSBNYWludGFpbmVyOiBuaWUgb2tyZcWbbGEgYWRyZXN1IHogIgorIlVidW50dSIKKworIzogc2NyaXB0cy9EcGtnL1ZlbmRvci9VYnVudHUucG06NjcKK21zZ2lkICIiCisiVmVyc2lvbiBudW1iZXIgc3VnZ2VzdHMgVWJ1bnR1IGNoYW5nZXMsIGJ1dCB0aGVyZSBpcyBubyBYU0JDLU9yaWdpbmFsLSIKKyJNYWludGFpbmVyIGZpZWxkIgorbXNnc3RyICIiCisiTnVtZXIgd2Vyc2ppIHN1Z2VydWplIHptaWFueSB6IFVidW50dSwgYWxlIGJyYWsgcG9sYSBYU0JDLU9yaWdpbmFsLU1haW50YWluZXIiCisKKyM6IHNjcmlwdHMvRHBrZy9WZW5kb3IvVWJ1bnR1LnBtOjEyMworbXNnaWQgIidoYXJkZW5pbmcnIGZsYWcgZm91bmQgYnV0ICdoYXJkZW5pbmctd3JhcHBlcicgbm90IGluc3RhbGxlZCIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvVmVuZG9yL1VidW50dS5wbToxNDIKKyMsIGZ1enp5LCBwZXJsLWZvcm1hdAorI3wgbXNnaWQgIiVzOiB1c2UgJXMgZnJvbSBlbnZpcm9ubWVudDogJXNcbiIKK21zZ2lkICJvdmVycmlkaW5nICVzIGluIGVudmlyb25tZW50OiAlcyIKK21zZ3N0ciAiJXM6IHXFvHljaWUgJXMgemUgxZtyb2Rvd2lza2E6ICVzXG4iCisKKyM6IHNjcmlwdHMvRHBrZy9WZXJzaW9uLnBtOjIwNCBzY3JpcHRzL0Rwa2cvVmVyc2lvbi5wbToyMDYKKyMsIGZ1enp5LCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGlzIG5vdCBhIHZhbGlkIHZlcnNpb24iCittc2dzdHIgIiVzIG5pZSBqZXN0IHByYXdpZMWCb3fEhSBvcGNqxIUgZGxhICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvVmVyc2lvbi5wbTozNzEKK21zZ2lkICJ2ZXJzaW9uIG51bWJlciBjYW5ub3QgYmUgZW1wdHkiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1ZlcnNpb24ucG06Mzc2Cittc2dpZCAidmVyc2lvbiBudW1iZXIgZG9lcyBub3Qgc3RhcnQgd2l0aCBkaWdpdCIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvVmVyc2lvbi5wbTozODEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidmVyc2lvbiBudW1iZXIgY29udGFpbnMgaWxsZWdhbCBjaGFyYWN0ZXIgYCVzJyIKK21zZ3N0ciAibnVtZXIgd2Vyc2ppIHphd2llcmEgbmllcG9wcmF3bnkgem5hayBcIiVzXCIiCisKKyM6IHNjcmlwdHMvRHBrZy9WZXJzaW9uLnBtOjM4NgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJlcG9jaCBwYXJ0IG9mIHRoZSB2ZXJzaW9uIG51bWJlciBpcyBub3QgYSBudW1iZXI6ICclcyciCittc2dzdHIgIiIKKworI34gbXNnaWQgIjEgdG8gMyBhcmdzIGV4cGVjdGVkXG4iCisjfiBtc2dzdHIgIk9jemVraXdhbm8gb2QgMSBkbyAzIGFyZ3VtZW50w7N3XG4iCisKKyN+IG1zZ2lkICJubyBvcmlnLnRhciBmaWxlIGZvdW5kIgorI34gbXNnc3RyICJuaWUgem5hbGV6aW9ubyBwbGlrdSBvcmlnLnRhciIKKworI34gbXNnaWQgImNhbm5vdCByZW5hbWUgJXMgdG8gJXMiCisjfiBtc2dzdHIgIm5pZSBtb8W8bmEgcHJ6ZW1pYW5vd2HEhyAlcyBuYSAlcyIKKworI34gbXNnaWQgImV4ZWMgJXMiCisjfiBtc2dzdHIgInVydWNoYW1pYW5pZSAlcyIKKworI34gbXNnaWQgImNhbm5vdCBleGVjIGRwa2ciCisjfiBtc2dzdHIgInVydWNoYW1pYW5pZSBkcGtnICBuaWUgcG93aW9kxYJvIHNpxJkiCisKKyN+IG1zZ2lkICJnaXQgY29uZmlnIGV4aXRlZCBub256ZXJvIgorI34gbXNnc3RyICJnaXQgY29uZmlnIHp3csOzY2nFgiBuaWV6ZXJvd3kga29kIHd5asWbY2lhIgorCisjfiBtc2dpZCAiZXhlY3V0YWJsZSBiaXQgc2V0IG9uICVzOyBjbGVhcmluZyIKKyN+IG1zZ3N0ciAiYml0IHd5a29ueXdhbmlhIHVzdGF3aW9ueSBkbGEgJXMsIHVzdXdhbmllIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBgJXMnIgorI34gbXNnc3RyICJuaWUgbW/FvG5hIHVzdW7EhcSHIFwiJXNcIiIKKworI34gbXNnaWQgIm1vZGlmeWluZyAuZ2l0L2NvbmZpZyB0byBjb21tZW50IG91dCBzb21lIHNldHRpbmdzIgorI34gbXNnc3RyICIiCisjfiAibW9keWZpa293YW5pZSAuZ2l0L2NvbmZpZyB3IGNlbHUgemFtaWFueSBuYSBrb21lbnRhcnogbmlla3TDs3J5Y2ggdXN0YXdpZcWEIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGFwcGVuZCB0byAlcyIKKyN+IG1zZ3N0ciAibmllIG1vxbxuYSBkb3Bpc2HEhyBkbyAlcyIKKworI34gbXNnaWQgIlRoZSBmb2xsb3dpbmcgc2V0dGluZyhzKSB3ZXJlIGRpc2FibGVkIGJ5IGRwa2ctc291cmNlIgorI34gbXNnc3RyICJkcGtnLXNvdXJjZSB3ecWCxIVjenkgbmFzdMSZcHVqxIVjZSB1c3Rhd2llbmlhIgorCisjfiBtc2dpZCAibmVlZCAteCBvciAtYiIKKyN+IG1zZ3N0ciAicG90cnplYmEgLXggbHViIC1iIgorCisjfiBtc2dpZCAib2JqZHVtcCBvbiBgJXMnIgorI34gbXNnc3RyICJvYmpkdW1wIG5hIFwiJXNcIiIKKworI34gbXNnaWQgIiVzOiBzZXQgJXMgdG8gZGVmYXVsdCB2YWx1ZTogJXNcbiIKKyN+IG1zZ3N0ciAiJXM6IHVzdGF3aWFuaWUgJXMgbmEgZG9tecWbbG7EhSB3YXJ0b8WbxIc6ICVzXG4iCisKKyN+IG1zZ2lkICJjYW5ub3Qgb3BlbiAuZHNjIGZpbGUgJXMiCisjfiBtc2dzdHIgIm5pZSBtb8W8bmEgb3R3b3J6ecSHIHBsaWt1IC5kc2MgJXMiCisKKyN+IG1zZ2lkICJzb3VyY2UgY29udHJvbCBmaWxlICVzIgorI34gbXNnc3RyICLFunLDs2TFgm93eSBwbGlrIGtvbnRyb2xueSAlcyIKKworI34gbXNnaWQgIkZpbGVzIGZpZWxkIGNvbnRhaW5zIGJhZCBsaW5lIGAlcyciCisjfiBtc2dzdHIgIlBvbGUgRmlsZXMgemF3aWVyYSBuaWVwb3ByYXduxIUgbGluacSZIFwiJXNcIiIKKworI34gbXNnaWQgIkNvbmZsaWN0aW5nIHNpemVzIGAldScgYW5kIGAldScgZm9yIGZpbGUgYCVzJyIKKyN+IG1zZ3N0ciAiS29uZmxpa3Qgcm96bWlhcsOzdyBcIiV1XCIgaSBcIiV1XCIgcGxpa3UgXCIlc1wiIgorCisjfiBtc2dpZCAiZm9yayBmb3IgZHUiCisjfiBtc2dzdHIgImZvcmsgZGxhIGR1IgorCisjfiBtc2dpZCAic291cmNlIGZvcm1hdCBgJXMnIGRpc2NhcmRlZDogJXMiCisjfiBtc2dzdHIgIm9kcnp1Y29ueSBmb3JtYXQgxbpyw7NkZcWCIFwiJXNcIjogJXMiCisKKyN+IG1zZ2lkICJmb3JrIGZvciAlcyIKKyN+IG1zZ3N0ciAiZm9yayBkbGEgJXMiCisKKyN+IG1zZ2lkICJVbmtub3duIGNoZWNrc3VtIGFsZ29yaXRobSBgJXMnLCBpZ25vcmluZyIKKyN+IG1zZ3N0ciAiTmllem5hbnkgYWxnb3J5dG0gc3ByYXdkemFuaWEgc3VtIGtvbnRyb2xueWNoIFwiJXNcIiwgaWdub3Jvd2FuaWUiCisKKyN+IG1zZ2lkICJDaGVja3N1bXMtJXMgZmllbGQgY29udGFpbnMgYmFkIGxpbmUgYCVzJyIKKyN+IG1zZ3N0ciAiUG9sZSBDaGVja3N1bXMtJXMgemF3aWVyYSBuaWVwb3ByYXduxIUgbGluacSZIFwiJXNcIiIKKworI34gbXNnaWQgImZpbGUgYCVzJyBsaXN0ZWQgdHdpY2UgaW4gRmlsZXMgZmllbGQiCisjfiBtc2dzdHIgInBsaWsgXCIlc1wiIGR3dWtyb3RuaWUgd3ltaWVuaW9ueSB3IHBvbHUgRmllbGRzIgorCisjfiBtc2dpZCAiYXBwbHlpbmcgYWxsIHBhdGNoZXMgd2l0aCAlcyIKKyN+IG1zZ3N0ciAibmFrxYJhZGFuaWUgd3N6eXN0a2ljaCDFgmF0ZWsgeiB1xbx5Y2llbSAlcyIKKworI34gbXNnaWQgInVuYWJsZSB0byBvcGVuIHN1YnN0dmFycyBmaWxlICVzOiAlcyIKKyN+IG1zZ3N0ciAibmllIG1vxbxuYSBvdHdvcnp5xIcgcGxpa3UgcG9kc3Rhd2llxYQgJXM6ICVzIgorCisjfiBtc2dpZCAiQ291bGRuJ3QgY2FsbCBkcGtnLWRlYiBvbiAlczogJXMsIHNraXBwaW5nIHBhY2thZ2UiCisjfiBtc2dzdHIgIk5pZSBtb8W8bmEgdXJ1Y2hvbWnEhyBkcGtnLWRlYiBuYSAlczogJXMsIHBvbWlqYW5pZSBwYWtpZXR1IgorCisjfiBtc2dpZCAiQ291bGRuJ3Qgb3BlbiBvdmVycmlkZSBmaWxlICVzIgorI34gbXNnc3RyICJOaWUgbW/FvG5hIG90d29yennEhyBwbGlrdSBuYWRwaXNhxYQgJXMiCisKKyN+IG1zZ2lkICIiCisjfiAiVW5wcm9jZXNzZWQgdGV4dCBmcm9tICVzIGNvbnRyb2wgZmlsZTsgaW5mbzpcbiIKKyN+ICIlcyAvICVzIgorI34gbXNnc3RyICIiCisjfiAiTmllcHJ6ZXR3b3J6b255IHRla3N0IHogcGxpa3Uga29udHJvbG5lZ28gJXM7IGluZm9ybWFjamU6XG4iCisjfiAiJXMgLyAlcyIKKworI34gbXNnaWQgImNhbid0IHJlYWQgb3ZlcnJpZGUgZmlsZSAlcyIKKyN+IG1zZ3N0ciAibmllIG1vxbxuYSBvZGN6eXRhxIcgcGxpa3UgbmFkcGlzYcWEICVzIgorCisjfiBtc2dpZCAiZXJyb3IgY2xvc2luZyBvdmVycmlkZSBmaWxlIgorI34gbXNnc3RyICJixYLEhWQgemFta25pxJljaWEgcGxpa3UgbmFkcGlzYcWEIgorCisjfiBtc2dpZCAiY2FuJ3QgcmVhZCBzb3VyY2Ugb3ZlcnJpZGUgZmlsZSAlcyIKKyN+IG1zZ3N0ciAibmllIG1vxbxuYSBjenl0YcSHIHBsaWt1IG5hZHBpc2HFhCDFunLDs2RlxYIgJXMiCisKKyN+IG1zZ2lkICJlcnJvciBjbG9zaW5nIHNvdXJjZSBvdmVycmlkZSBmaWxlIgorI34gbXNnc3RyICJixYLEhWQgemFwaXN5d2FuaWEgcGxpa3UgbmFkcGlzYcWEIMW6csOzZGXFgiIKKworI34gbXNnaWQgInBhcnNpbmcgYW4gZW1wdHkgZmlsZSAlcyIKKyN+IG1zZ3N0ciAicHJ6ZXR3YXJ6YW5pZSBwdXN0ZWdvIHBsaWt1ICVzIgorCisjfiBtc2dpZCAiZmF0YWwgZXJyb3IiCisjfiBtc2dzdHIgImZhdGFsbnkgYsWCxIVkIgorCisjfiBtc2dpZCAiY2FuJ3Qgb3BlbiBmaWxlICVzOiAlcyIKKyN+IG1zZ3N0ciAibmllIG1vxbxuYSBvdHdvcnp5xIcgcGxpa3UgJXM6ICVzIgorCisjfiBtc2dpZCAiY2FuJ3QgbG9hZCBJTzo6U3RyaW5nOiAlcyIKKyN+IG1zZ3N0ciAibmllIG1vxbxuYSB6YcWCYWRvd2HEhyBJTzo6U3RyaW5nOiAlcyIKKworI34gbXNnaWQgIm5vIGNoYW5nZWxvZyBmaWxlIHNwZWNpZmllZCIKKyN+IG1zZ3N0ciAibmllIHBvZGFubyDFvGFkbmVnbyBwbGlrdSB6bWlhbiIKKworI34gbXNnaWQgImNhbid0IGNsb3NlIGZpbGUgJXM6ICVzIgorI34gbXNnc3RyICJuaWUgbW/FvG5hIHphbWtuxIXEhyBwbGlrdSAlczogJXMiCisKKyN+IG1zZ2lkICJleGVjIGR1IgorI34gbXNnc3RyICJ1cnVjaGFtaWFuaWUgZHUiCisKKyN+IG1zZ2lkICIlcyBoYXMgUEdQIHN0YXJ0IHRva2VuIGJ1dCBub3QgZW5kIHRva2VuIgorI34gbXNnc3RyICIiCisjfiAiJXMgemF3aWVyYSBwb2N6xIV0a293eSB6bmFjem5payBQR1AsIGFsZSBuaWUgemF3aWVyYSB6bmFjem5pa2Ega2/FhGNvd2VnbyIKKworIywgZnV6enkKKyN+IG1zZ2lkICJjYW4ndCByZWFkICVzOiAlcyIKKyN+IG1zZ3N0ciAibmllIG1vxbxuYSBvZGN6eXRhxIcgJXM6IgorCisjLCBmdXp6eQorI34gbXNnaWQgImVycm9yIGNsb3NpbmcgJXM6ICVzIgorI34gbXNnc3RyICJixYLEhWQgemFteWthbmlhICVzOiIKKworI34gbXNnaWQgIiVzIGludmFsaWQgKGNvbnRhaW5zIGJsYW5rIGxpbmUpIgorI34gbXNnc3RyICJuaWVwb3ByYXdueSAlcyAoemF3aWVyYSBwdXN0xIUgbGluacSZKSIKKworI34gbXNnaWQgImR1cGxpY2F0ZSBzb3VyY2UgZmllbGQgaW4gJXMiCisjfiBtc2dzdHIgInpkdXBsaWtvd2FuZSBwb2xlIMW6csOzZMWCb3dlIHcgJXMiCisKKyN+IG1zZ2lkICJpbnZhbGlkIHNvdXJjZSBmaWVsZCBpbiAlcyIKKyN+IG1zZ3N0ciAibmllcG9wcmF3bmUgcG9sZSDFunLDs2TFgm93ZSB3ICVzIgorCisjfiBtc2dpZCAiZHVwbGljYXRlIGJpbmFyeSBmaWVsZCBpbiAlcyIKKyN+IG1zZ3N0ciAiemR1cGxpa293YW5lIHBvbGUgYmluYXJuZSB3ICVzIgorCisjLCBmdXp6eQorI34gbXNnaWQgImNhbid0IGZvcmsiCisjfiBtc2dzdHIgImLFgsSFZCBmb3JrOiIKKworI34gbXNnaWQgImNhbm5vdCBmb3JrIGZvciBkcGtnIC0tc2VhcmNoIgorI34gbXNnc3RyICJixYLEhWQgZm9yayBkbGEgZHBrZyAtLXNlYXJjaCIKKworI34gbXNnaWQgInVuYWJsZSB0byBvcGVuIG9zdGFibGUiCisjfiBtc2dzdHIgIm5pZSBtb8W8bmEgb3R3b3J6ecSHIG9zdGFibGUiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gb3BlbiB0cmlwbGV0dGFibGUiCisjfiBtc2dzdHIgIm5pZSBtb8W8bmEgb3R3b3J6ecSHIHRyaXBsZXR0YWJsZSIKKworI34gbXNnaWQgImNhbm5vdCBmb3JrIGZvciBvYmpkdW1wIgorI34gbXNnc3RyICJuaWVwb3dvZHplbmllIGZvcmsgZGxhIG9iamR1bXAiCisKKyN+IG1zZ2lkICJjYW4ndCB3cml0ZSAlcyIKKyN+IG1zZ3N0ciAibmllIG1vxbxuYSB6YXBpc2HEhyAlcyIKKworI34gbXNnaWQgImNhbid0IHJlYWQgJXMiCisjfiBtc2dzdHIgIm5pZSBtb8W8bmEgb2Rjenl0YcSHICVzIgorCisjfiBtc2dpZCAiU3RyYW5nZSB0ZXh0IGZyb20gJ21kNXN1bSA8ICVzJzogJyVzJyIKKyN+IG1zZ3N0ciAiRHppd255IHRla3N0IG9kIFwibWQ1c3VtIDwgJXNcIjogXCIlc1wiIgorCisjfiBtc2dpZCAiQ291bGRuJ3Qgc3RhdCAlcyIKKyN+IG1zZ3N0ciAiTmllIG1vxbxuYSB1c3RhbGnEhyBzdGFudSAlcyIKKworI34gbXNnaWQgImVycm9yIGRvaW5nIGZzdGF0IG9uICVzOiIKKyN+IG1zZ3N0ciAiYsWCxIVkIHByenkgdXN0YWxhbml1IHN0YW51IChmc3RhdCkgZGxhICVzOiIKKworI34gbXNnaWQgImNhbid0IGR1cCAlczoiCisjfiBtc2dzdHIgIm5pZSBtb8W8bmEgZHVwICVzOiIKKworI34gbXNnaWQgImNhbid0IHJld2luZCAlczoiCisjfiBtc2dzdHIgIm5pZSBtb8W8bmEgcHJ6ZXdpbsSFxIcgJXM6IgorCisjfiBtc2dpZCAiY2FuJ3QgZXhlYyBtZDVzdW06IgorI34gbXNnc3RyICJuaWUgbW/FvG5hIHVydWNob21pxIcgbWQ1c3VtOiIKKworI34gbXNnaWQgImludmFsaWQgbWQ1IG91dHB1dCBmb3IgJXMgKCVzKSIKKyN+IG1zZ3N0ciAibmllcG9wcmF3bnkgc2tyw7N0IG1kNSBkbGEgKCVzKSAlcyIKKworI34gbXNnaWQgIlVzYWdlOiA4MjItZGF0ZSIKKyN+IG1zZ3N0ciAiVcW8eWNpZTogODIyLWRhdGUiCisKKyN+IG1zZ2lkICJUaGlzIHByb2dyYW0gaXMgZGVwcmVjYXRlZC4gUGxlYXNlIHVzZSAnZGF0ZSAtUicgaW5zdGVhZC4iCisjfiBtc2dzdHIgIlRlbiBwcm9ncmFtIGplc3QgcHJ6ZXN0YXJ6YcWCeS4gUHJvc3rEmSB1xbx5d2HEhyBcImRhdGUgLVJcIi4iCisKKyN+IG1zZ2lkICJjYW5ub3QgY29tYmluZSAlcyBhbmQgLVMiCisjfiBtc2dzdHIgIm5pZSBtb8W8bmEgxYLEhWN6ecSHICVzIGkgLVMiCisKKyN+IG1zZ2lkICIiCisjfiAic3Vic3R2YXJzIHN1cHBvcnQgaXMgZGVwcmVjYXRlZCAoc2VlIFJFQURNRS5mZWF0dXJlLXJlbW92YWwtc2NoZWR1bGUpIgorI34gbXNnc3RyICIiCisjfiAid3NwYXJjaWUgZGxhIHN1YnN0dmFycyBqZXN0IHByemVzdGFyemHFgmUgKHBhdHJ6IFJFQURNRS5mZWF0dXJlLXJlbW92YWwtIgorI34gInNjaGVkdWxlKSIKKworI34gbXNnaWQgIkRwa2c6OkRlcHM6OlNpbXBsZSBjYW4ndCBldmFsdWF0ZSBpbXBsaWNhdGlvbiB3aXRoIGEgJXMhIgorI34gbXNnc3RyICJEcGtnOjpEZXBzOjpTaW1wbGUgbmllIG1vxbxlIHByemV0d29yennEhyB3eW5pa2FuaWEgemFsZcW8bm/Fm2NpIHogJXMhIgorCisjfiBtc2dpZCAiZmFpbHVyZSIKKyN+IG1zZ3N0ciAibmllcG93b2R6ZW5pZSIKKworI34gbXNnaWQgImZpZWxkICVzIGhhcyBuZXdsaW5lIHRoZW4gbm9uIHdoaXRlc3BhY2UgPiVzPCIKKyN+IG1zZ3N0ciAiIgorI34gInBvbGUgJXMgbWEgem5hayBub3dlaiBsaW5paSwgcG8ga3TDs3JlaiBuaWUgbmFzdMSZcHVqZSBiaWHFgnkgem5hayA+JXM8IgorCisjfiBtc2dpZCAiZmllbGQgJXMgaGFzIGJsYW5rIGxpbmVzID4lczwiCisjfiBtc2dzdHIgInBvbGUgJXMgbWEgcHVzdGUgbGluaWUgPiVzPCIKKworI34gbXNnaWQgImZpZWxkICVzIGhhcyB0cmFpbGluZyBuZXdsaW5lID4lczwiCisjfiBtc2dzdHIgInBvbGUgJXMga2/FhGN6eSBzacSZIHpuYWtpZW0gbm93ZWogbGluaWkgPiVzPCIKKworI34gbXNnaWQgImludmFsaWQgZXhlYyBwYXJhbWV0ZXIgaW4gZm9ya19hbmRfZXhlYygpIgorI34gbXNnc3RyICJuaWVwb3ByYXdueSBwYXJhbWV0ciBcImV4ZWNcIiB3IGZvcmtfYW5kX2V4ZWMoKSIKKworI34gbXNnaWQgIm5vIFBJRCBzZXQsIGNhbm5vdCB3YWl0IGVuZCBvZiBwcm9jZXNzIgorI34gbXNnc3RyICJuaWUgdXN0YXdpb25vIFBJRCwgbmllIG1vxbxuYSBvY3pla2l3YcSHIG5hIHpha2/FhGN6ZW5pZSBwcm9jZXN1IgorCisjfiBtc2dpZCAidHJpZWQgdG8gYWRkIGZpbGUgYCVzJyB0d2ljZSIKKyN+IG1zZ3N0ciAicHLDs2Jvd2FubyBkd3Vrcm90bmllIGRvZGHEhyBwbGlrIFwiJXNcIiIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9wby9xdW90LnNlZCBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9wby9xdW90LnNlZApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wMTIyYzQ2Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3BvL3F1b3Quc2VkCkBAIC0wLDAgKzEsNiBAQAorcy8iXChbXiJdKlwpIi/igJxcMeKAnS9nCitzL2BcKFteYCddKlwpJy/igJhcMeKAmS9nCitzLyAnXChbXmAnXSpcKScgLyDigJhcMeKAmSAvZworcy8gJ1woW15gJ10qXCknJC8g4oCYXDHigJkvZworcy9eJ1woW15gJ10qXCknIC/igJhcMeKAmSAvZworcy/igJzigJ0vIiIvZwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3BvL3JlbW92ZS1wb3RjZGF0ZS5zaW4gYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvcG8vcmVtb3ZlLXBvdGNkYXRlLnNpbgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yNDM2YzQ5Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3BvL3JlbW92ZS1wb3RjZGF0ZS5zaW4KQEAgLTAsMCArMSwxOSBAQAorIyBTZWQgc2NyaXB0IHRoYXQgcmVtb3ZlIHRoZSBQT1QtQ3JlYXRpb24tRGF0ZSBsaW5lIGluIHRoZSBoZWFkZXIgZW50cnkKKyMgZnJvbSBhIFBPVCBmaWxlLgorIworIyBUaGUgZGlzdGluY3Rpb24gYmV0d2VlbiB0aGUgZmlyc3QgYW5kIHRoZSBmb2xsb3dpbmcgb2NjdXJyZW5jZXMgb2YgdGhlCisjIHBhdHRlcm4gaXMgYWNoaWV2ZWQgYnkgbG9va2luZyBhdCB0aGUgaG9sZCBzcGFjZS4KKy9eIlBPVC1DcmVhdGlvbi1EYXRlOiAuKiIkL3sKK3gKKyMgVGVzdCBpZiB0aGUgaG9sZCBzcGFjZSBpcyBlbXB0eS4KK3MvUC9QLwordGEKKyMgWWVzIGl0IHdhcyBlbXB0eS4gRmlyc3Qgb2NjdXJyZW5jZS4gUmVtb3ZlIHRoZSBsaW5lLgorZworZAorYmIKKzphCisjIFRoZSBob2xkIHNwYWNlIHdhcyBub25lbXB0eS4gRm9sbG93aW5nIG9jY3VycmVuY2VzLiBEbyBub3RoaW5nLgoreAorOmIKK30KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9wby9ydS5nbW8gYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvcG8vcnUuZ21vCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjgyNDRmMWUKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvcG8vcnUuZ21vCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9wby9ydS5wbyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9wby9ydS5wbwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wZmViZTJlCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3BvL3J1LnBvCkBAIC0wLDAgKzEsMzY2MCBAQAorIyB0cmFuc2xhdGlvbiBvZiBzY3JpcHRzX3BvX3J1LnBvIHRvIFJ1c3NpYW4KKyMgTG9jYWxpemF0aW9uIGZpbGUgZm9yIGRwa2cgYW5kIG90aGVyIHByb2dyYW1zIGZyb20gZHBrZyBwYWNrYWdlLgorIworIyBZdXJpIEtvemxvdiA8a296bG92LnlAZ21haWwuY29tPiwgMjAwNywgMjAwOC4KKyMgWXVyaSBLb3psb3YgPHl1cmF5QGtvbXlha2luby5ydT4sIDIwMDksIDIwMTAuCittc2dpZCAiIgorbXNnc3RyICIiCisiUHJvamVjdC1JZC1WZXJzaW9uOiBkcGtnIDEuMTUuOC41XG4iCisiUmVwb3J0LU1zZ2lkLUJ1Z3MtVG86IGRlYmlhbi1kcGtnQGxpc3RzLmRlYmlhbi5vcmdcbiIKKyJQT1QtQ3JlYXRpb24tRGF0ZTogMjAxMS0xMC0xNCAwNzoxMSswMjAwXG4iCisiUE8tUmV2aXNpb24tRGF0ZTogMjAxMC0wOS0wMSAyMjoyMiswNDAwXG4iCisiTGFzdC1UcmFuc2xhdG9yOiBZdXJpIEtvemxvdiA8eXVyYXlAa29teWFraW5vLnJ1PlxuIgorIkxhbmd1YWdlLVRlYW06IFJ1c3NpYW4gPGRlYmlhbi1sMTBuLXJ1c3NpYW5AbGlzdHMuZGViaWFuLm9yZz5cbiIKKyJMYW5ndWFnZTogcnVcbiIKKyJNSU1FLVZlcnNpb246IDEuMFxuIgorIkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD1VVEYtOFxuIgorIkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXRcbiIKKyJYLUdlbmVyYXRvcjogTG9rYWxpemUgMS4wXG4iCisiUGx1cmFsLUZvcm1zOiAgbnBsdXJhbHM9MzsgcGx1cmFsPShuJTEwPT0xICYmIG4lMTAwIT0xMSA/IDAgOiBuJTEwPj0yICYmIG4iCisiJTEwPD00ICYmIChuJTEwMDwxMCB8fCBuJTEwMD49MjApID8gMSA6IDIpO1xuIgorCisjOiBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLnBsOjM2IHNjcmlwdHMvZHBrZy1idWlsZGZsYWdzLnBsOjMxCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjM3IHNjcmlwdHMvZHBrZy1jaGVja2J1aWxkZGVwcy5wbDozNgorIzogc2NyaXB0cy9kcGtnLWRpc3RhZGRmaWxlLnBsOjMzIHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjk2CisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDo1NiBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbDo0OQorIzogc2NyaXB0cy9kcGtnLW1lcmdlY2hhbmdlbG9ncy5wbDo1MyBzY3JpcHRzL2Rwa2ctbmFtZS5wbDo0NgorIzogc2NyaXB0cy9kcGtnLXBhcnNlY2hhbmdlbG9nLnBsOjMxIHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6NjAKKyM6IHNjcmlwdHMvZHBrZy1zY2Fuc291cmNlcy5wbDo3OCBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjUzMworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDo0NTUgc2NyaXB0cy9jaGFuZ2Vsb2cvZGViaWFuLnBsOjM0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIkRlYmlhbiAlcyB2ZXJzaW9uICVzLlxuIgorbXNnc3RyICJEZWJpYW4gJXMsINCy0LXRgNGB0LjRjyAlcy5cbiIKKworIzogc2NyaXB0cy9kcGtnLWFyY2hpdGVjdHVyZS5wbDozOAorbXNnaWQgIiIKKyJcbiIKKyJDb3B5cmlnaHQgKEMpIDE5OTktMjAwMSBNYXJjdXMgQnJpbmttYW5uIDxicmlua21kQGRlYmlhbi5vcmc+LlxuIgorIkNvcHlyaWdodCAoQykgMjAwNC0yMDA1IFNjb3R0IEphbWVzIFJlbW5hbnQgPHNjb3R0QG5ldHNwbGl0LmNvbT4uIgorbXNnc3RyICIiCisiXG4iCisiQ29weXJpZ2h0IChDKSAxOTk5LTIwMDEgTWFyY3VzIEJyaW5rbWFubiA8YnJpbmttZEBkZWJpYW4ub3JnPi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDQtMjAwNSBTY290dCBKYW1lcyBSZW1uYW50IDxzY290dEBuZXRzcGxpdC5jb20+LiIKKworIzogc2NyaXB0cy9kcGtnLWFyY2hpdGVjdHVyZS5wbDo0MiBzY3JpcHRzL2Rwa2ctYnVpbGRmbGFncy5wbDozNgorIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDo0NCBzY3JpcHRzL2Rwa2ctZGlzdGFkZGZpbGUucGw6MzgKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjEwMiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDo2MgorIzogc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGw6NTUgc2NyaXB0cy9kcGtnLXBhcnNlY2hhbmdlbG9nLnBsOjM3CisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjU0MiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjQ2MgorIzogc2NyaXB0cy9jaGFuZ2Vsb2cvZGViaWFuLnBsOjM5Cittc2dpZCAiIgorIlxuIgorIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgb3JcbiIKKyJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKK21zZ3N0ciAiIgorIlxuIgorItCt0YLQviDRgdCy0L7QsdC+0LTQvdC+0LUg0L/RgNC+0LPRgNCw0LzQvNC90L7QtSDQvtCx0LXRgdC/0LXRh9C10L3QuNC1LiDQodC8LiDRg9GB0LvQvtCy0LjRjyDRgNCw0YHQv9GA0L7RgdGC0YDQsNC90LXQvdC40Y8g0LJcbiIKKyLQo9C90LjQstC10YDRgdCw0LvRjNC90L7QuSDQvtCx0YnQtdGB0YLQstC10L3QvdC+0Lkg0LvQuNGG0LXQvdC30LjQuCBHTlUg0LLQtdGA0YHQuNC4IDIg0LjQu9C4INCx0L7Qu9C10LUg0L/QvtC30LTQvdC10LkuXG4iCisi0J3QmNCa0JDQmtCY0JUg0LPQsNGA0LDQvdGC0LjQuCDQvdC1INC/0YDQtdC00L7RgdGC0LDQstC70Y/RjtGC0YHRjy5cbiIKKworIzogc2NyaXB0cy9kcGtnLWFyY2hpdGVjdHVyZS5wbDo1MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIFs8YWN0aW9uPl1cbiIKKyJcbiIKKyJPcHRpb25zOlxuIgorIiAgLWE8ZGViaWFuLWFyY2g+ICAgIHNldCBjdXJyZW50IERlYmlhbiBhcmNoaXRlY3R1cmUuXG4iCisiICAtdDxnbnUtc3lzdGVtPiAgICAgc2V0IGN1cnJlbnQgR05VIHN5c3RlbSB0eXBlLlxuIgorIiAgLUwgICAgICAgICAgICAgICAgIGxpc3QgdmFsaWQgYXJjaGl0ZWN0dXJlcy5cbiIKKyIgIC1mICAgICAgICAgICAgICAgICBmb3JjZSBmbGFnIChvdmVycmlkZSB2YXJpYWJsZXMgc2V0IGluIGVudmlyb25tZW50KS5cbiIKKyJcbiIKKyJBY3Rpb25zOlxuIgorIiAgLWwgICAgICAgICAgICAgICAgIGxpc3QgdmFyaWFibGVzIChkZWZhdWx0KS5cbiIKKyIgIC1lPGRlYmlhbi1hcmNoPiAgICBjb21wYXJlIHdpdGggY3VycmVudCBEZWJpYW4gYXJjaGl0ZWN0dXJlLlxuIgorIiAgLWk8YXJjaC1hbGlhcz4gICAgIGNoZWNrIGlmIGN1cnJlbnQgRGViaWFuIGFyY2hpdGVjdHVyZSBpcyA8YXJjaC1hbGlhcz4uXG4iCisiICAtcTx2YXJpYWJsZT4gICAgICAgcHJpbnRzIG9ubHkgdGhlIHZhbHVlIG9mIDx2YXJpYWJsZT4uXG4iCisiICAtcyAgICAgICAgICAgICAgICAgcHJpbnQgY29tbWFuZCB0byBzZXQgZW52aXJvbm1lbnQgdmFyaWFibGVzLlxuIgorIiAgLXUgICAgICAgICAgICAgICAgIHByaW50IGNvbW1hbmQgdG8gdW5zZXQgZW52aXJvbm1lbnQgdmFyaWFibGVzLlxuIgorIiAgLWMgPGNvbW1hbmQ+ICAgICAgIHNldCBlbnZpcm9ubWVudCBhbmQgcnVuIHRoZSBjb21tYW5kIGluIGl0LlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIgorItCY0YHQv9C+0LvRjNC30L7QstCw0L3QuNC1OiAlcyBbPNC/0LDRgNCw0LzQtdGC0YA+IC4uLl0gWzzQutC+0LzQsNC90LTQsD5dXG4iCisiXG4iCisi0J/QsNGA0LDQvNC10YLRgNGLOlxuIgorIiAgLWE8ZGViaWFuLWFyY2g+ICAgINC30LDQtNCw0YLRjCDRgtC10LrRg9GJ0YPRjiDQsNGA0YXQuNGC0LXQutGC0YPRgNGDIERlYmlhbi5cbiIKKyIgIC10PGdudS1zeXN0ZW0+ICAgICDQt9Cw0LTQsNGC0YwgR05VINGC0LjQvyDRgdC40YHRgtC10LzRiy5cbiIKKyIgIC1MICAgICAgICAgICAgICAgICDQv9C+0LrQsNC30LDRgtGMINGB0L/QuNGB0L7QuiDQtNC+0L/Rg9GB0YLQuNC80YvRhSDQsNGA0YXQuNGC0LXQutGC0YPRgC5cbiIKKyIgIC1mICAgICAgICAgICAgICAgICDRhNC70LDQsyDQv9GA0LjQvdGD0LbQtNC10L3QuNGPICjQt9Cw0LzQtdC90LjRgtGMINC30L3QsNGH0LXQvdC40Y8g0L/QtdGA0LXQvNC10L3QvdGL0YUsXG4iCisiICAgICAgICAgICAgICAgICAgICAg0YPRgdGC0LDQvdC+0LLQu9C10L3QvdGL0YUg0LIg0L7QutGA0YPQttC10L3QuNC4KS5cbiIKKyJcbiIKKyLQmtC+0LzQsNC90LTRizpcbiIKKyIgIC1sICAgICAgICAgICAgICAgICDQstGL0LLQtdGB0YLQuCDRgdC/0LjRgdC+0Log0L/QtdGA0LXQvNC10L3QvdGL0YUgKNC00LXQudGB0YLQstC40LUg0L/QviDRg9C80L7Qu9GH0LDQvdC40Y4pLlxuIgorIiAgLWU8ZGViaWFuLWFyY2g+ICAgINGB0YDQsNCy0L3QuNGC0Ywg0YEg0YLQtdC60YPRidC10Lkg0LDRgNGF0LjRgtC10LrRgtGD0YDQvtC5IERlYmlhbi5cbiIKKyIgIC1pPGFyY2gtYWxpYXM+ICAgICDQv9GA0L7QstC10YDQuNGC0YwsINGB0L7QstC/0LDQtNCw0LXRgiDQu9C4INGC0LXQutGD0YnQsNGPINCw0YDRhdC40YLQtdC60YLRg9GA0LBcbiIKKyIgICAgICAgICAgICAgICAgICAgICBEZWJpYW4g0YEg0YjQsNCx0LvQvtC90L7QvCA8YXJjaC1hbGlhcz4uXG4iCisiICAtcTzQv9C10YDQtdC80LXQvdC90LDRjz4gICAgINC/0L7QutCw0LfQsNGC0Ywg0LfQvdCw0YfQtdC90LjQtSDRgtC+0LvRjNC60L4g0YPQutCw0LfQsNC90L3QvtC5IDzQv9C10YDQtdC80LXQvdC90L7QuT4uXG4iCisiICAtcyAgICAgICAgICAgICAgICAg0L/QvtC60LDQt9Cw0YLRjCDQutC+0LzQsNC90LTRgyDQtNC70Y8g0YPRgdGC0LDQvdC+0LLQutC4INC/0LXRgNC10LzQtdC90L3Ri9GFINC+0LrRgNGD0LbQtdC90LjRjy5cbiIKKyIgIC11ICAgICAgICAgICAgICAgICDQv9C+0LrQsNC30LDRgtGMINC60L7QvNCw0L3QtNGDINC00LvRjyDRgdCx0YDQvtGB0LAg0L/QtdGA0LXQvNC10L3QvdGL0YUg0L7QutGA0YPQttC10L3QuNGPLlxuIgorIiAgLWMgPNC60L7QvNCw0L3QtNCwPiAgICAgICDQvdCw0YHRgtGA0L7QuNGC0Ywg0L7QutGA0YPQttC10L3QuNC1INC4INC30LDQv9GD0YHRgtC40YLRjCDQsiDQvdGR0Lwg0LrQvtC80LDQvdC00YMuXG4iCisiICAtLWhlbHAgICAgICAgICAgICAg0L/QvtC60LDQt9Cw0YLRjCDRjdGC0L4g0YHQvtC+0LHRidC10L3QuNC1LlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgINC/0L7QutCw0LfQsNGC0Ywg0LLQtdGA0YHQuNGOLlxuIgorCisjOiBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLnBsOjEyMCBzY3JpcHRzL2Rwa2ctYnVpbGRmbGFncy5wbDo5MQorIzogc2NyaXB0cy9kcGtnLWRpc3RhZGRmaWxlLnBsOjY4IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjE5NAorIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MTMzIHNjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsOjE0MQorIzogc2NyaXB0cy9kcGtnLXBhcnNlY2hhbmdlbG9nLnBsOjExMyBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjExOQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG9wdGlvbiBgJXMnIgorbXNnc3RyICLQvdC10LjQt9Cy0LXRgdGC0L3Ri9C5INC/0LDRgNCw0LzQtdGC0YAgwqslc8K7IgorCisjOiBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLnBsOjE0NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmtub3duIERlYmlhbiBhcmNoaXRlY3R1cmUgJXMsIHlvdSBtdXN0IHNwZWNpZnkgR05VIHN5c3RlbSB0eXBlLCB0b28iCittc2dzdHIgIiIKKyLQvdC10LjQt9Cy0LXRgdGC0L3QsNGPINCw0YDRhdC40YLQtdC60YLRg9GA0LAgRGViaWFuICVzLCDRgtCw0LrQttC1INCy0Ysg0LTQvtC70LbQvdGLINGD0LrQsNC30LDRgtGMIEdOVSDRgtC40L8g0YHQuNGB0YLQtdC80YsiCisKKyM6IHNjcmlwdHMvZHBrZy1hcmNoaXRlY3R1cmUucGw6MTUxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVua25vd24gR05VIHN5c3RlbSB0eXBlICVzLCB5b3UgbXVzdCBzcGVjaWZ5IERlYmlhbiBhcmNoaXRlY3R1cmUsIHRvbyIKK21zZ3N0ciAiIgorItC90LXQuNC30LLQtdGB0YLQvdGL0LkgR05VINGC0LjQvyDRgdC40YHRgtC10LzRiyAlcywg0YLQsNC60LbQtSDQstGLINC00L7Qu9C20L3RiyDRg9C60LDQt9Cw0YLRjCDQsNGA0YXQuNGC0LXQutGC0YPRgNGDIERlYmlhbiIKKworIzogc2NyaXB0cy9kcGtnLWFyY2hpdGVjdHVyZS5wbDoxNTgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5rbm93biBkZWZhdWx0IEdOVSBzeXN0ZW0gdHlwZSBmb3IgRGViaWFuIGFyY2hpdGVjdHVyZSAlcyIKK21zZ3N0ciAi0L3QtdC40LfQstC10YHRgtC90YvQuSBHTlUg0YLQuNC/INGB0LjRgdGC0LXQvNGLINC/0L4g0YPQvNC+0LvRh9Cw0L3QuNGOINC00LvRjyDQsNGA0YXQuNGC0LXQutGC0YPRgNGLIERlYmlhbiAlcyIKKworIzogc2NyaXB0cy9kcGtnLWFyY2hpdGVjdHVyZS5wbDoxNjEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIkRlZmF1bHQgR05VIHN5c3RlbSB0eXBlICVzIGZvciBEZWJpYW4gYXJjaCAlcyBkb2VzIG5vdCBtYXRjaCBzcGVjaWZpZWQgR05VICIKKyJzeXN0ZW0gdHlwZSAlcyIKK21zZ3N0ciAiIgorIkdOVSDRgtC40L8g0YHQuNGB0YLQtdC80Ysg0L/QviDRg9C80L7Qu9GH0LDQvdC40Y4gJXMg0LTQu9GPINCw0YDRhdC40YLQtdC60YLRg9GA0YsgRGViaWFuICVzINC90LUg0YHQvtCy0L/QsNC00LDQtdGCINGBICIKKyLRg9C60LDQt9Cw0L3QvdGL0LwgR05VINGC0LjQv9C+0Lwg0YHQuNGB0YLQtdC80YsgJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1hcmNoaXRlY3R1cmUucGw6MTgwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIlNwZWNpZmllZCBHTlUgc3lzdGVtIHR5cGUgJXMgZG9lcyBub3QgbWF0Y2ggZ2NjIHN5c3RlbSB0eXBlICVzLiIKK21zZ3N0ciAi0KPQutCw0LfQsNC90L3Ri9C5IEdOVSDRgtC40L8g0YHQuNGB0YLQtdC80YsgJXMg0L3QtSDRgdC+0LLQv9Cw0LTQsNC10YIg0YEgZ2NjINGC0LjQv9C+0Lwg0YHQuNGB0YLQtdC80YsgJXMuIgorCisjOiBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLnBsOjIyNQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgYSBzdXBwb3J0ZWQgdmFyaWFibGUgbmFtZSIKK21zZ3N0ciAiJXMg0L3QtSDRj9Cy0LvRj9C10YLRgdGPINC/0L7QtNC00LXRgNC20LjQstCw0LXQvNGL0Lwg0LjQvNC10L3QtdC8INC/0LXRgNC10LzQtdC90L3QvtC5IgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRmbGFncy5wbDozMworIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiXG4iCisjfCAiQ29weXJpZ2h0IChDKSAyMDEwIFJhcGhhZWwgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPi4iCittc2dpZCAiIgorIlxuIgorIkNvcHlyaWdodCAoQykgMjAxMC0yMDExIFJhcGhhZWwgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPi4iCittc2dzdHIgIiIKKyJcbiIKKyJDb3B5cmlnaHQgKEMpIDIwMTAgUmFwaGFlbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+LiIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkZmxhZ3MucGw6NDQKKyMsIGZ1enp5LCBwZXJsLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJVc2FnZTogJXMgWzxhY3Rpb24+XVxuIgorI3wgIlxuIgorI3wgIkFjdGlvbnM6XG4iCisjfCAiICAtLWdldCA8ZmxhZz4gICAgICAgb3V0cHV0IHRoZSByZXF1ZXN0ZWQgZmxhZyB0byBzdGRvdXQuXG4iCisjfCAiICAtLW9yaWdpbiA8ZmxhZz4gICAgb3V0cHV0IHRoZSBvcmlnaW4gb2YgdGhlIGZsYWcgdG8gc3Rkb3V0OlxuIgorI3wgIiAgICAgICAgICAgICAgICAgICAgIHZhbHVlIGlzIG9uZSBvZiB2ZW5kb3IsIHN5c3RlbSwgdXNlciwgZW52LlxuIgorI3wgIiAgLS1saXN0ICAgICAgICAgICAgIG91dHB1dCBhIGxpc3Qgb2YgdGhlIGZsYWdzIHN1cHBvcnRlZCBieSB0aGUgY3VycmVudCAiCisjfCAidmVuZG9yLlxuIgorI3wgIiAgLS1leHBvcnQ9KHNofG1ha2UpIG91dHB1dCBjb21tYW5kcyB0byBiZSBleGVjdXRlZCBpbiBzaGVsbCBvciBtYWtlIHRoYXQgIgorI3wgImV4cG9ydFxuIgorI3wgIiAgICAgICAgICAgICAgICAgICAgIGFsbCB0aGUgY29tcGlsYXRpb24gZmxhZ3MgYXMgZW52aXJvbm1lbnQgdmFyaWFibGVzLlxuIgorI3wgIiAgLS1oZWxwICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisjfCAiICAtLXZlcnNpb24gICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8YWN0aW9uPl1cbiIKKyJcbiIKKyJBY3Rpb25zOlxuIgorIiAgLS1nZXQgPGZsYWc+ICAgICAgIG91dHB1dCB0aGUgcmVxdWVzdGVkIGZsYWcgdG8gc3Rkb3V0LlxuIgorIiAgLS1vcmlnaW4gPGZsYWc+ICAgIG91dHB1dCB0aGUgb3JpZ2luIG9mIHRoZSBmbGFnIHRvIHN0ZG91dDpcbiIKKyIgICAgICAgICAgICAgICAgICAgICB2YWx1ZSBpcyBvbmUgb2YgdmVuZG9yLCBzeXN0ZW0sIHVzZXIsIGVudi5cbiIKKyIgIC0tbGlzdCAgICAgICAgICAgICBvdXRwdXQgYSBsaXN0IG9mIHRoZSBmbGFncyBzdXBwb3J0ZWQgYnkgdGhlIGN1cnJlbnQgIgorInZlbmRvci5cbiIKKyIgIC0tZXhwb3J0PShzaHxtYWtlfGNvbmZpZ3VyZSlcbiIKKyIgICAgICAgICAgICAgICAgICAgICBvdXRwdXQgc29tZXRoaW5nIGNvbnZlbmllbnQgdG8gaW1wb3J0IHRoZVxuIgorIiAgICAgICAgICAgICAgICAgICAgIGNvbXBpbGF0aW9uIGZsYWdzIGluIGEgc2hlbGwgc2NyaXB0LCBpbiBtYWtlLFxuIgorIiAgICAgICAgICAgICAgICAgICAgIG9yIG9uIGEgLi9jb25maWd1cmUgY29tbWFuZCBsaW5lLlxuIgorIiAgLS1kdW1wICAgICAgICAgICAgIG91dHB1dCBhbGwgY29tcGlsYXRpb24gZmxhZ3Mgd2l0aCB0aGVpciB2YWx1ZXNcbiIKKyIgIC0taGVscCAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCittc2dzdHIgIiIKKyLQmNGB0L/QvtC70YzQt9C+0LLQsNC90LjQtTogJXMgWzzQtNC10LnRgdGC0LLQuNC1Pl1cbiIKKyJcbiIKKyLQlNC10LnRgdGC0LLQuNGPOlxuIgorIiAgLS1nZXQgPNGE0LvQsNCzPiAgICAg0LLRi9Cy0LXRgdGC0Lgg0LfQvdCw0YfQtdC90LjQtSDRhNC70LDQs9CwINC90LAg0YHRgtCw0L3QtNCw0YDRgtC90YvQuSDQstGL0LLQvtC0LlxuIgorIiAgLS1vcmlnaW4gPNGE0LvQsNCzPiAg0LLRi9Cy0LXRgdGC0Lgg0L/RgNC+0LjRgdGF0L7QttC00LXQvdC40LUg0YTQu9Cw0LPQsCDQvdCwINGB0YLQsNC90LTQsNGA0YLQvdGL0Lkg0LLRi9Cy0L7QtDpcbiIKKyIgICAgICAgICAgICAgICAgICAg0LfQvdCw0YfQtdC90LjRjzogdmVuZG9yLCBzeXN0ZW0sIHVzZXIsIGVudi5cbiIKKyIgIC0tbGlzdCAgICAgICAgICAg0LLRi9Cy0LXRgdGC0Lgg0YHQv9C40YHQvtC6INGE0LvQsNCz0L7Qsiwg0L/QvtC00LTQtdGA0LbQuNCy0LDQtdC80YvRhSDRgtC10LrRg9GJ0LjQvCAiCisi0L/QvtGB0YLQsNCy0YnQuNC60L7QvC5cbiIKKyIgIC0tZXhwb3J0PShzaHxtYWtlKSDQstGL0LLQtdGB0YLQuCDQutC+0LzQsNC90LTRiyDQtNC70Y8g0LfQsNC/0YPRgdC60LAg0LIg0L7QsdC+0LvQvtGH0LrQtSDQuNC70LggbWFrZSDQtNC70Y8gIgorItGN0LrRgdC/0L7RgNGC0LBcbiIKKyIgIC0taGVscCAgICAgICAgICAg0L/QvtC60LDQt9Cw0YLRjCDRjdGC0L4g0YHQvtC+0LHRidC10L3QuNC1LlxuIgorIiAgLS12ZXJzaW9uICAgICAgICDQv9C+0LrQsNC30LDRgtGMINCy0LXRgNGB0LjRji5cbiIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkZmxhZ3MucGw6NjYgc2NyaXB0cy9kcGtnLWJ1aWxkZmxhZ3MucGw6NzIKKyM6IHNjcmlwdHMvZHBrZy1idWlsZGZsYWdzLnBsOjc3IHNjcmlwdHMvZHBrZy1idWlsZGZsYWdzLnBsOjgxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInR3byBjb21tYW5kcyBzcGVjaWZpZWQ6IC0tJXMgYW5kIC0tJXMiCittc2dzdHIgItGD0LrQsNC30LDQvdGLINC00LLQtSDQutC+0LzQsNC90LTRizogLS0lcyDQuCAtLSVzIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRmbGFncy5wbDo3MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBuZWVkcyBhIHBhcmFtZXRlciIKK21zZ3N0ciAi0LTQu9GPICVzINGC0YDQtdCx0YPQtdGC0YHRjyDQv9Cw0YDQsNC80LXRgtGAIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjM5Cittc2dpZCAiIgorIlxuIgorIkNvcHlyaWdodCAoQykgMTk5NiBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAgV2ljaGVydCBBa2tlcm1hblxuIgorIkNvcHlyaWdodCAoQykgMjAwNyBGcmFuayBMaWNodGVuaGVsZCIKK21zZ3N0ciAiIgorIlxuIgorIkNvcHlyaWdodCAoQykgMTk5NiBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAgV2ljaGVydCBBa2tlcm1hblxuIgorIkNvcHlyaWdodCAoQykgMjAwNyBGcmFuayBMaWNodGVuaGVsZCIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDo1MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiXG4iCisiVXNhZ2U6ICVzIFs8b3B0aW9ucz4gLi4uXVxuIgorIlxuIgorIk9wdGlvbnM6XG4iCisiICAtcjxnYWluLXJvb3QtY29tbWFuZD5cbiIKKyIgICAgICAgICAgICAgICAgIGNvbW1hbmQgdG8gZ2FpbiByb290IHByaXZpbGVnZXMgKGRlZmF1bHQgaXMgZmFrZXJvb3QpLlxuIgorIiAgLVI8cnVsZXM+ICAgICAgcnVsZXMgZmlsZSB0byBleGVjdXRlIChkZWZhdWx0IGlzIGRlYmlhbi9ydWxlcykuXG4iCisiICAtcDxzaWduLWNvbW1hbmQ+XG4iCisiICAtZCAgICAgICAgICAgICBkbyBub3QgY2hlY2sgYnVpbGQgZGVwZW5kZW5jaWVzIGFuZCBjb25mbGljdHMuXG4iCisiICAtRCAgICAgICAgICAgICBjaGVjayBidWlsZCBkZXBlbmRlbmNpZXMgYW5kIGNvbmZsaWN0cy5cbiIKKyIgIC1UPHRhcmdldD4gICAgIGNhbGwgZGViaWFuL3J1bGVzIDx0YXJnZXQ+IHdpdGggdGhlIHByb3BlciBlbnZpcm9ubWVudFxuIgorIiAgLS1hcy1yb290ICAgICAgZW5zdXJlIC1UIGNhbGxzIHRoZSB0YXJnZXQgd2l0aCByb290IHJpZ2h0c1xuIgorIiAgLWpbPG51bWJlcj5dICAgc3BlY2lmeSBqb2JzIHRvIHJ1biBzaW11bHRhbmVvdXNseSB9IHBhc3NlZCB0byBkZWJpYW4vIgorInJ1bGVzXG4iCisiICAtazxrZXlpZD4gICAgICB0aGUga2V5IHRvIHVzZSBmb3Igc2lnbmluZy5cbiIKKyIgIC1zZ3BnICAgICAgICAgIHRoZSBzaWduLWNvbW1hbmQgaXMgY2FsbGVkIGxpa2UgR1BHLlxuIgorIiAgLXNwZ3AgICAgICAgICAgdGhlIHNpZ24tY29tbWFuZCBpcyBjYWxsZWQgbGlrZSBQR1AuXG4iCisiICAtdXMgICAgICAgICAgICB1bnNpZ25lZCBzb3VyY2UuXG4iCisiICAtdWMgICAgICAgICAgICB1bnNpZ25lZCBjaGFuZ2VzLlxuIgorIiAgLWE8YXJjaD4gICAgICAgRGViaWFuIGFyY2hpdGVjdHVyZSB3ZSBidWlsZCBmb3IgKGltcGxpZXMgLWQpLlxuIgorIiAgLWIgICAgICAgICAgICAgYmluYXJ5LW9ubHksIGRvIG5vdCBidWlsZCBzb3VyY2UuICAgfSBhbHNvIHBhc3NlZCB0b1xuIgorIiAgLUIgICAgICAgICAgICAgYmluYXJ5LW9ubHksIG5vIGFyY2gtaW5kZXAgZmlsZXMuICAgfSBkcGtnLWdlbmNoYW5nZXNcbiIKKyIgIC1BICAgICAgICAgICAgIGJpbmFyeS1vbmx5LCBvbmx5IGFyY2gtaW5kZXAgZmlsZXMuIH1cbiIKKyIgIC1TICAgICAgICAgICAgIHNvdXJjZSBvbmx5LCBubyBiaW5hcnkgZmlsZXMuICAgICB9XG4iCisiICAtRiAgICAgICAgICAgICBub3JtYWwgZnVsbCBidWlsZCAoYmluYXJpZXMgYW5kIHNvdXJjZXMpLlxuIgorIiAgLXQ8c3lzdGVtPiAgICAgc2V0IEdOVSBzeXN0ZW0gdHlwZS4gICAgICAgICAgIH0gcGFzc2VkIHRvIGRwa2ctIgorImFyY2hpdGVjdHVyZVxuIgorIiAgLXY8dmVyc2lvbj4gICAgY2hhbmdlcyBzaW5jZSB2ZXJzaW9uIDx2ZXJzaW9uPi4gICAgICB9XG4iCisiICAtbTxtYWludD4gICAgICBtYWludGFpbmVyIGZvciBwYWNrYWdlIGlzIDxtYWludD4uICAgIH1cbiIKKyIgIC1lPG1haW50PiAgICAgIG1haW50YWluZXIgZm9yIHJlbGVhc2UgaXMgPG1haW50Pi4gICAgfSBvbmx5IHBhc3NlZFxuIgorIiAgLUM8ZGVzY2ZpbGU+ICAgY2hhbmdlcyBhcmUgZGVzY3JpYmVkIGluIDxkZXNjZmlsZT4uICB9IHRvIGRwa2ctZ2VuY2hhbmdlc1xuIgorIiAgLXNpIChkZWZhdWx0KSAgc3JjIGluY2x1ZGVzIG9yaWcgaWYgbmV3IHVwc3RyZWFtLiAgICB9XG4iCisiICAtc2EgICAgICAgICAgICB1cGxvYWRlZCBzcmMgYWx3YXlzIGluY2x1ZGVzIG9yaWcuICAgIH1cbiIKKyIgIC1zZCAgICAgICAgICAgIHVwbG9hZGVkIHNyYyBpcyBkaWZmIGFuZCAuZHNjIG9ubHkuICAgfVxuIgorIiAgLXNuICAgICAgICAgICAgZm9yY2UgRGViaWFuIG5hdGl2ZSBzb3VyY2UgZm9ybWF0LiAgICAgIH1cbiIKKyIgIC1zW3NBa3VyS1VSXSAgIHNlZSBkcGtnLXNvdXJjZSBmb3IgZXhwbGFuYXRpb24uICAgICAgICB9IG9ubHkgcGFzc2VkXG4iCisiICAtejxsZXZlbD4gICAgICBjb21wcmVzc2lvbiBsZXZlbCBvZiBzb3VyY2UgICAgICAgICAgICAgfSB0byBkcGtnLXNvdXJjZVxuIgorIiAgLVo8Y29tcHJlc3Nvcj4gY29tcHJlc3Npb24gdG8gdXNlIGZvciBzb3VyY2UgICAgICAgICAgIH1cbiIKKyIgIC1uYyAgICAgICAgICAgIGRvIG5vdCBjbGVhbiBzb3VyY2UgdHJlZSAoaW1wbGllcyAtYikuXG4iCisiICAtdGMgICAgICAgICAgICBjbGVhbiBzb3VyY2UgdHJlZSB3aGVuIGZpbmlzaGVkLlxuIgorIiAgLWFwICAgICAgICAgICAgYWRkIHBhdXNlIGJlZm9yZSBzdGFydGluZyBzaWduYXR1cmUgcHJvY2Vzcy5cbiIKKyIgIC1pWzxyZWdleD5dICAgIGlnbm9yZSBkaWZmcyBvZiBmaWxlcyBtYXRjaGluZyByZWdleC4gICAgfSBvbmx5IHBhc3NlZFxuIgorIiAgLUlbPHBhdHRlcm4+XSAgZmlsdGVyIG91dCBmaWxlcyB3aGVuIGJ1aWxkaW5nIHRhcmJhbGxzLiB9IHRvIGRwa2ctc291cmNlXG4iCisiICAtLXNvdXJjZS1vcHRpb249PG9wdD5cbiIKKyJcdFx0IHBhc3Mgb3B0aW9uIDxvcHQ+IHRvIGRwa2ctc291cmNlXG4iCisiICAtLWNoYW5nZXMtb3B0aW9uPTxvcHQ+XG4iCisiXHRcdCBwYXNzIG9wdGlvbiA8b3B0PiB0byBkcGtnLWdlbmNoYW5nZXNcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT5cbiIKKyIgICAgICAgICAgICAgICAgIGNoYW5nZSB0aGUgYWRtaW5pc3RyYXRpdmUgZGlyZWN0b3J5LlxuIgorIiAgLWgsIC0taGVscCAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgICAgICAtLXZlcnNpb24gIHNob3cgdGhlIHZlcnNpb24uXG4iCittc2dzdHIgIiIKKyJcbiIKKyLQmNGB0L/QvtC70YzQt9C+0LLQsNC90LjQtTogJXMgWzzQv9Cw0YDQsNC80LXRgtGA0Ys+IC4uLl1cbiIKKyJcbiIKKyLQn9Cw0YDQsNC80LXRgtGA0Ys6XG4iCisiICAtcjzQutC+0LzQsNC90LTQsC3Qv9C+0LvRg9GH0LXQvdC40Y8tcm9vdD5cbiIKKyIgICAgICAgICAgICAgICAgINC60L7QvNCw0L3QtNCwINC00LvRjyDQv9C+0LvRg9GH0LXQvdC40Y8g0L/RgNCw0LIgcm9vdCAo0L/QviDRg9C80L7Qu9GH0LDQvdC40Y4gZmFrZXJvb3QpLlxuIgorIiAgLVI8cnVsZXM+ICAgICAg0YTQsNC50Lsg0L/RgNCw0LLQuNC7INC00LvRjyDQstGL0L/QvtC70L3QtdC90LjRjyAo0L/QviDRg9C80L7Qu9GH0LDQvdC40Y4gZGViaWFuL3J1bGVzKS5cbiIKKyIgIC1wPNC60L7QvNCw0L3QtNCwLdC/0L7QtNC/0LjRgdGL0LLQsNC90LjRjz5cbiIKKyIgIC1kICAgICAgICAgICAgINC90LUg0L/RgNC+0LLQtdGA0Y/RgtGMINGB0LHQvtGA0L7Rh9C90YvQtSDQt9Cw0LLQuNGB0LjQvNC+0YHRgtC4INC4INC60L7QvdGE0LvQuNC60YLRiy5cbiIKKyIgIC1EICAgICAgICAgICAgINC/0YDQvtCy0LXRgNGP0YLRjCDRgdCx0L7RgNC+0YfQvdGL0LUg0LfQsNCy0LjRgdC40LzQvtGB0YLQuCDQuCDQutC+0L3RhNC70LjQutGC0YsuXG4iCisiICAtVDzRhtC10LvRjD4gICAgICAg0LLRi9C30LLQsNGC0YwgZGViaWFuL3J1bGVzIDzRhtC10LvRjD4g0LIg0L3QsNGB0YLRgNC+0LXQvdC90L7QvCDQvtC60YDRg9C20LXQvdC40LhcbiIKKyIgIC0tYXMtcm9vdCAgICAgINC+0LHQtdGB0L/QtdGH0LjRgtGMINCy0YvQt9C+0LLRiyAtVCDQv9GA0LDQstCw0LzQuCByb290XG4iCisiICAtals80LrQvtC7LdCy0L4+XSAgINC30LDQtNCw0YLRjCDQutC+0LvQuNGH0LXRgdGC0LLQviDQvtC00L3QvtCy0YDQtdC80LXQvdC90L4gICB9XG4iCisiICAgICAgICAgICAgICAgICDQstGL0L/QvtC70L3Rj9C10LzRi9GFINGA0LDQsdC+0YIgICAgICAgICAgICAgICAgfSDQv9C10YDQtdC00LDRkdGC0YHRjyDQsiBkZWJpYW4vIgorInJ1bGVzXG4iCisiICAtazxpZC3QutC70Y7Rh9CwPiAgINC60LvRjtGHINC00LvRjyDQv9C+0LTQv9C40YHRi9Cy0LDQvdC40Y8uXG4iCisiICAtc2dwZyAgICAgICAgICDQutC+0LzQsNC90LTQsCDQv9C+0LTQv9C40YHRi9Cy0LDQvdC40Y8g0LLRi9C30YvQstCw0LXRgtGB0Y8g0LrQsNC6IEdQRy5cbiIKKyIgIC1zcGdwICAgICAgICAgINC60L7QvNCw0L3QtNCwINC/0L7QtNC/0LjRgdGL0LLQsNC90LjRjyDQstGL0LfRi9Cy0LDQtdGC0YHRjyDQutCw0LogUEdQLlxuIgorIiAgLXVzICAgICAgICAgICAg0L3QtSDQv9C+0LTQv9C40YHRi9Cy0LDRgtGMINC40YHRhdC+0LTQvdGL0Lkg0LrQvtC0LlxuIgorIiAgLXVjICAgICAgICAgICAg0L3QtSDQv9C+0LTQv9C40YHRi9Cy0LDRgtGMINC40LfQvNC10L3QtdC90LjRjy5cbiIKKyIgIC1hPNCw0YDRhT4gICAgICAgINCw0YDRhdC40YLQtdC60YLRg9GA0LAgRGViaWFuLCDQtNC70Y8g0LrQvtGC0L7RgNC+0Lkg0YHQvtCx0LjRgNCw0YLRjCAo0LLQvNC10YHRgtC1INGBIC1kKS5cbiIKKyIgIC1iICAgICAgICAgICAgINGC0L7Qu9GM0LrQviDQtNCy0L7QuNGH0L3Ri9C5INC/0LDQutC10YIsICAgICAgICAgICAgICAgfVxuIgorIiAgICAgICAgICAgICAgICAg0L3QtSDRgdC+0LHQuNGA0LDRgtGMINC/0LDQutC10YIg0YEg0LjRgdGF0L7QtNC90YvQvCDQutC+0LTQvtC8LiAgfSDRgtCw0LrQttC1INC/0LXRgNC10LTQsNGR0YLRgdGPINCyXG4iCisiICAtQiAgICAgICAgICAgICDRgtC+0LvRjNC60L4g0LTQstC+0LjRh9C90YvQuSDQv9Cw0LrQtdGCLCAgICAgICAgICAgICAgIH1cbiIKKyIgICAgICAgICAgICAgICAgINC90LUg0YHQvtCx0LjRgNCw0YLRjCDQvdC10LfQsNCy0LjRgdC40LzRi9C1INC+0YIgICAgICAgICAgIH1cbiIKKyIgICAgICAgICAgICAgICAgINCw0YDRhdC40YLQtdC60YLRg9GA0Ysg0L/QsNC60LXRgtGLICAgICAgICAgICAgICAgICAgIH0gZHBrZy1nZW5jaGFuZ2VzXG4iCisiICAtQSAgICAgICAgICAgICDRgtC+0LvRjNC60L4g0LTQstC+0LjRh9C90YvQuSDQv9Cw0LrQtdGCLCAgICAgICAgICAgICAgIH1cbiIKKyIgICAgICAgICAgICAgICAgINGB0L7QsdC40YDQsNGC0Ywg0L3QtdC30LDQstC40YHQuNC80YvQtSDQvtGCICAgICAgICAgICAgICB9XG4iCisiICAgICAgICAgICAgICAgICDQsNGA0YXQuNGC0LXQutGC0YPRgNGLINC/0LDQutC10YLRiyAgICAgICAgICAgICAgICAgICB9XG4iCisiICAtUyAgICAgICAgICAgICDRgtC+0LvRjNC60L4g0L/QsNC60LXRgiDRgSDQuNGB0YXQvtC00L3Ri9C8INC60L7QtNC+0LwgICAgICAgIH1cbiIKKyIgICAgICAgICAgICAgICAgINCx0LXQtyDQtNCy0L7QuNGH0L3QvtCz0L4g0L/QsNC60LXRgtCwLiAgICAgICAgICAgICAgICB9XG4iCisiICAtRiAgICAgICAgICAgICDQvtCx0YvRh9C90LDRjyDQv9C+0LvQvdCw0Y8g0YHQsdC+0YDQutCwICjQtNCy0L7QuNGH0L3Ri9C1INC4INGBINC40YHRhS7QutC+0LTQvtC8KS5cbiIKKyIgIC10PNGB0LjRgdGC0LXQvNCwPiAgICDQt9Cw0LTQsNGC0YwgR05VINGC0LjQvyDRgdC40YHRgtC10LzRiy4gICAgIH0g0L/QtdGA0LXQtNCw0ZHRgtGB0Y8g0LIgZHBrZy0iCisiYXJjaGl0ZWN0dXJlXG4iCisiICAtdjzQstC10YDRgdC40Y8+ICAgICDQuNC30LzQtdC90LXQvdC40Y8sINC90LDRh9C40L3QsNGPINGBIDzQstC10YDRgdC40Lg+LiAgICAgICAgfVxuIgorIiAgLW080YHQvtC/0YDQvtCyPiAgICAg0LfQsNC00LDRgtGMINGB0L7Qv9GA0L7QstC+0LbQtNCw0Y7RidC10LPQviDQv9Cw0LrQtdGC0LAuICAgICAgICB9XG4iCisiICAtZTzRgdC+0L/RgNC+0LI+ICAgICDQt9Cw0LTQsNGC0Ywg0YHQvtC/0YDQvtCy0L7QttC00LDRjtGJ0LXQs9C+INC00LvRjyDQstGL0L/Rg9GB0LrQsC4gICB9INGC0L7Qu9GM0LrQviDQslxuIgorIiAgLUM8ZGVzY2ZpbGU+ICAg0LjQt9C80LXQvdC10L3QuNGPINC00LDQvdGLINCyINGE0LDQudC70LUgPGRlc2NmaWxlPi4gICAgfSBkcGtnLWdlbmNoYW5nZXNcbiIKKyIgIC1zaSAo0YPQvNC+0LvRhy4pICAgc3JjINCy0LrQu9GO0YfQsNGO0YIgb3JpZywg0LXRgdC70Lgg0L3QvtCy0YvQuSDQsNCy0YLQvtGALiAgfVxuIgorIiAgLXNhICAgICAgICAgICAg0LfQsNC60LDRh9C40LLQsNC10LzRi9C1IHNyYyDQstGB0LXQs9C00LAg0YHQvtC00LXRgNC20LDRgiBvcmlnLn1cbiIKKyIgIC1zZCAgICAgICAgICAgINCyINC30LDQutCw0YfQuNCy0LDQtdC80YvRhSBzcmMg0YLQvtC70YzQutC+IGRpZmYg0LggLmRzYy59XG4iCisiICAtc24gICAgICAgICAgICDQuNGB0YXQvtC00L3Ri9C5INC60L7QtCDQsiDRgNC+0LTQvdC+0Lwg0YTQvtGA0LzQsNGC0LUgRGViaWFuLiAgIH1cbiIKKyIgIC1zW3NBa3VyS1VSXSAgINGB0LzQvtGC0YDQuNGC0LUg0L7Qv9C40YHQsNC90LjQtSDQv9C+IGRwa2ctc291cmNlLiAgICAgICB9INGC0L7Qu9GM0LrQviDQslxuIgorIiAgLXo80YHRgtC10L/QtdC90Yw+ICAgINGB0YLQtdC/0LXQvdGMINGB0LbQsNGC0LjRjyDQuNGB0YXQvtC00L3QvtCz0L4g0LrQvtC00LAgICAgICAgICAgIH0gZHBrZy1zb3VyY2VcbiIKKyIgIC1aPNCw0LvQs9C+0YDQuNGC0Lw+ICAg0LDQu9Cz0L7RgNC40YLQvCDRgdC20LDRgtC40Y8g0LjRgdGF0L7QtNC90L7Qs9C+INC60L7QtNCwICAgICAgICAgfVxuIgorIiAgLW5jICAgICAgICAgICAg0L3QtSDQvtGH0LjRidCw0YLRjCDQtNC10YDQtdCy0L4g0LjRgdGF0L7QtNC90L7Qs9C+INC60L7QtNCwICjQstC80LXRgdGC0LUg0YEgLWIpLlxuIgorIiAgLXRjICAgICAgICAgICAg0LIg0LrQvtC90YbQtSDQvtGH0LjRgdGC0LjRgtGMINC00LXRgNC10LLQviDQuNGB0YXQvtC00L3QvtCz0L4g0LrQvtC00LAuXG4iCisiICAtYXAgICAgICAgICAgICDRgdC00LXQu9Cw0YLRjCDQv9Cw0YPQt9GDINC/0LXRgNC10LQg0L3QsNGH0LDQu9C+0Lwg0L/QvtC00L/QuNGB0YvQstCw0L3QuNGPLlxuIgorIiAgLWlbPNGA0LXQsy7QstGL0YA+XSAg0LjQs9C90L7RgNC40YDQvtCy0LDRgtGMIGRpZmYt0Ysg0YTQsNC50LvQvtCyLCDRgdC+0LLQv9Cw0LTQsNGO0YnQuNGFICAgfVxuIgorIiAgICAgICAgICAgICAgICAg0YEg0YDQtdCzLtCy0YvRgC4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSDRgtC+0LvRjNC60L4g0LJcbiIKKyIgIC1JWzzRiNCw0LHQu9C+0L0+XSAgINC90LUg0LLQutC70Y7Rh9Cw0YLRjCDRhNCw0LnQu9GLLCDQv9C+0L/QsNCy0YjQuNC1ICAgICAgICAgICAgICAgfVxuIgorIiAgICAgICAgICAgICAgICAg0LIg0YjQsNCx0LvQvtC9INC/0YDQuCDRgdCx0L7RgNC60LUgdGFyYmFsbC3QsC4gICAgICAgICAgICB9IGRwa2ctc291cmNlXG4iCisiICAtLXNvdXJjZS1vcHRpb249PNC/0LDRgD5cbiIKKyIgICAgICAgICAgICAgICAgINC/0LXRgNC10LTQsNGC0Ywg0L/QsNGA0LDQvNC10YLRgCA80L/QsNGAPiDQsiBkcGtnLXNvdXJjZVxuIgorIiAgLS1jaGFuZ2VzLW9wdGlvbj080L/QsNGAPlxuIgorIiAgICAgICAgICAgICAgICAg0L/QtdGA0LXQtNCw0YLRjCDQv9Cw0YDQsNC80LXRgtGAIDzQv9Cw0YA+INCyIGRwa2ctZ2VuY2hhbmdlc1xuIgorIiAgLS1hZG1pbmRpcj080LrQsNGC0LDQu9C+0LM+XG4iCisiICAgICAgICAgICAgICAgICDQuNC30LzQtdC90LjRgtGMINCw0LTQvNC40L3QuNGB0YLRgNCw0YLQuNCy0L3Ri9C5INC60LDRgtCw0LvQvtCzLlxuIgorIiAgLWgsIC0taGVscCAgICAg0L/QvtC60LDQt9Cw0YLRjCDRjdGC0L4g0YHQvtC+0LHRidC10L3QuNC1LlxuIgorIiAgICAgIC0tdmVyc2lvbiAg0L/QvtC60LDQt9Cw0YLRjCDQstC10YDRgdC40Y4uXG4iCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6MjAwIHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6MjA2CisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjIxMiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjIxOAorIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDoyMjMgc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6MTQzCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDoxNDYgc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6MTUwCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDoxNTQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IGNvbWJpbmUgJXMgYW5kICVzIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC+0LHRitC10LTQuNC90LjRgtGMICVzINC4ICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjIzNiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjIwMgorbXNnaWQgIi1FIGFuZCAtVyBhcmUgZGVwcmVjYXRlZCwgdGhleSBhcmUgd2l0aG91dCBlZmZlY3QiCittc2dzdHIgIi1FINC4IC1XINGD0YHRgtCw0YDQtdC70LgsINC+0L3QuCDQvdC40YfQtdCz0L4g0L3QtSDQuNC30LzQtdC90Y/RgiIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDoyNDAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gb3IgYXJndW1lbnQgJXMiCittc2dzdHIgItC90LXQuNC30LLQtdGB0YLQvdGL0Lkg0L/QsNGA0LDQvNC10YLRgCDQuNC70Lgg0LDRgNCz0YPQvNC10L3RgiAlcyIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDoyNTAKK21zZ2lkICJ1c2luZyBhIGdhaW4tcm9vdC1jb21tYW5kIHdoaWxlIGJlaW5nIHJvb3QiCittc2dzdHIgItC40YHQv9C+0LvRjNC30YPQtdGC0YHRjyDQutC+0LzQsNC90LTQsCDQv9C+0LvRg9GH0LXQvdC40Y8g0L/RgNCw0LIgcm9vdCwg0L3QviDRg9C20LUg0LXRgdGC0Ywg0L/RgNCw0LLQsCByb290IgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjI1NgorbXNnaWQgIiIKKyJmYWtlcm9vdCBub3QgZm91bmQsIGVpdGhlciBpbnN0YWxsIHRoZSBmYWtlcm9vdFxuIgorInBhY2thZ2UsIHNwZWNpZnkgYSBjb21tYW5kIHdpdGggdGhlIC1yIG9wdGlvbiwgb3IgcnVuIHRoaXMgYXMgcm9vdCIKK21zZ3N0ciAiIgorImZha2Vyb290INC90LUg0L3QsNC50LTQtdC90LAsINGD0YHRgtCw0L3QvtCy0LjRgtC1INC/0LDQutC10YIgZmFrZXJvb3Qg0LhcbiIKKyLQt9Cw0L/Rg9GB0LrQsNC50YLQtSDQutC+0LzQsNC90LTRgyDRgSDQv9Cw0YDQsNC80LXRgtGA0L7QvCAtciwg0LjQu9C4INC30LDQv9GD0YHQutCw0LnRgtC1INC10ZEg0L7RgiByb290IgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjI2MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJnYWluLXJvb3QtY29tbW1hbmQgJyVzJyBub3QgZm91bmQiCittc2dzdHIgItC60L7QvNCw0L3QtNCwLdC/0L7Qu9GD0YfQtdC90LjRjy1yb290IMKrJXPCuyDQvdC1INC90LDQudC00LXQvdCwIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjI3OQorbXNnaWQgInVua25vd24gc2lnbiBjb21tYW5kLCBhc3N1bWluZyBwZ3Agc3R5bGUgaW50ZXJmYWNlIgorbXNnc3RyICLQvdC10LjQt9Cy0LXRgdGC0L3QsNGPINC60L7QvNCw0L3QtNCwINC/0L7QtNC/0LjRgdGL0LLQsNC90LjRjywg0LjRgdC/0L7Qu9GM0LfRg9C10YLRgdGPINC40L3RgtC10YDRhNC10LnRgSDQutCw0Log0YMgcGdwIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjI4MgorbXNnaWQgIlBHUCBzdXBwb3J0IGlzIGRlcHJlY2F0ZWQgKHNlZSBSRUFETUUuZmVhdHVyZS1yZW1vdmFsLXNjaGVkdWxlKSIKK21zZ3N0ciAiIgorItCf0L7QtNC00LXRgNC20LrQsCBQR1Ag0LHRg9C00LXRgiDQuNGB0LrQu9GO0YfQtdC90LAgKNGB0LzQvtGC0YDQuNGC0LUgUkVBRE1FLmZlYXR1cmUtcmVtb3ZhbC1zY2hlZHVsZSkiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6MzAxCittc2dpZCAic291cmNlIHBhY2thZ2UiCittc2dzdHIgItC/0LDQutC10YIg0LjRgdGF0L7QtNC90YvRhSDRgtC10LrRgdGC0L7QsiIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDozMDIKK21zZ2lkICJzb3VyY2UgdmVyc2lvbiIKK21zZ3N0ciAi0LLQtdGA0YHQuNGPINC40YHRhdC+0LTQvdGL0YUg0YLQtdC60YHRgtC+0LIiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6MzEyCittc2dpZCAic291cmNlIGNoYW5nZWQgYnkiCittc2dzdHIgItC40YHRhdC+0LTQvdGL0LUg0YLQtdC60YHRgtGLINC40LfQvNC10L3QtdC90YsiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6MzMwCittc2dpZCAiaG9zdCBhcmNoaXRlY3R1cmUiCittc2dzdHIgItCw0YDRhdC40YLQtdC60YLRg9GA0LAg0YPQt9C70LAiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6MzQzCittc2dpZCAiZGViaWFuL3J1bGVzIGlzIG5vdCBleGVjdXRhYmxlOiBmaXhpbmcgdGhhdC4iCittc2dzdHIgImRlYmlhbi9ydWxlcyDQvdC1INGP0LLQu9GP0LXRgtGB0Y8g0LjRgdC/0L7Qu9C90Y/QtdC80YvQvDog0LjRgdC/0YDQsNCy0LvRj9C10YLRgdGPLiIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDozNjIKK21zZ2lkICJCdWlsZCBkZXBlbmRlbmNpZXMvY29uZmxpY3RzIHVuc2F0aXNmaWVkOyBhYm9ydGluZy4iCittc2dzdHIgItCd0LXRg9C00L7QstC70LXRgtCy0L7RgNC40YLQtdC70YzQvdGL0LUg0LfQsNCy0LjRgdC40LzQvtGB0YLQuC/QutC+0L3RhNC70LjQutGC0Ysg0L/RgNC4INGB0LHQvtGA0LrQtSwg0L7RgdGC0LDQvdC+0LIuIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjM2MworbXNnaWQgIihVc2UgLWQgZmxhZyB0byBvdmVycmlkZS4pIgorbXNnc3RyICIo0JjRgdC/0L7Qu9GM0LfRg9C50YLQtSDQv9Cw0YDQsNC80LXRgtGAIC1kLCDRh9GC0L7QsdGLINC/0YDQvtC00L7Qu9C20LjRgtGMINGB0LHQvtGA0LrRgy4pIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjM2NgorbXNnaWQgIlRoaXMgaXMgY3VycmVudGx5IGEgbm9uLWZhdGFsIHdhcm5pbmcgd2l0aCAtUywgYnV0IgorbXNnc3RyICLQkiDQtNCw0L3QvdGL0Lkg0LzQvtC80LXQvdGCINGBIC1TINGN0YLQviDRgtC+0LvRjNC60L4g0L/RgNC10LTRg9C/0YDQtdC20LTQtdC90LjQtSwg0L3QviwiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6MzY3Cittc2dpZCAid2lsbCBwcm9iYWJseSBiZWNvbWUgZmF0YWwgaW4gdGhlIGZ1dHVyZS4iCittc2dzdHIgItCy0LXRgNC+0Y/RgtC90L4sINGB0YLQsNC90LXRgiDQvtGB0YLQsNC90LDQstC70LjQstCw0Y7RidC10Lkg0L7RiNC40LHQutC+0Lkg0LIg0LHRg9C00YPRidC10LwuIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjM4OQorbXNnaWQgIiIKKyJpdCBpcyBhIGJhZCBpZGVhIHRvIGdlbmVyYXRlIGEgc291cmNlIHBhY2thZ2Ugd2l0aG91dCBjbGVhbmluZyB1cCBmaXJzdCwgaXQgIgorIm1pZ2h0IGNvbnRhaW4gdW5kZXNpcmVkIGZpbGVzLiIKK21zZ3N0ciAiIgorItC90LUg0L7Rh9C10L3RjCDRhdC+0YDQvtGI0LDRjyDQvNGL0YHQu9GMINCz0LXQvdC10YDQuNGA0L7QstCw0YLRjCDQv9Cw0LrQtdGCINC40YHRhdC+0LTQvdC+0LPQviDQutC+0LTQsCDQsdC10Lcg0L/RgNC10LTQstCw0YDQuNGC0LXQu9GM0L3QvtC5ICIKKyLQvtGH0LjRgdGC0LrQuDsg0LzQvtCz0YPRgiDQtNC+0LHQsNCy0LjRgtGM0YHRjyDQvdC10LbQtdC70LDRgtC10LvRjNC90YvQtSDRhNCw0LnQu9GLLiIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDo0MDIKK21zZ2lkICJQcmVzcyB0aGUgcmV0dXJuIGtleSB0byBzdGFydCBzaWduaW5nIHByb2Nlc3NcbiIKK21zZ3N0ciAi0J3QsNC20LzQuNGC0LUg0LvRjtCx0YPRjiDQutC70LDQstC40YjRgyDQtNC70Y8g0LfQsNC/0YPRgdC60LAg0L/RgNC+0YbQtdGB0YEg0L/QvtC00L/QuNGB0YvQstCw0L3QuNGPXG4iCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6NDA5Cittc2dpZCAiRmFpbGVkIHRvIHNpZ24gLmRzYyBhbmQgLmNoYW5nZXMgZmlsZSIKK21zZ3N0ciAi0J7RgtC60LDQtyDQv9GA0Lgg0L/QvtC00L/QuNGB0YvQstCw0L3QuNC4INGE0LDQudC70L7QsiAuZHNjINC4IC5jaGFuZ2VzIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjQyNCBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjQyOAorIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDo0NDEKK21zZ2lkICJ3cml0ZSBjaGFuZ2VzIGZpbGUiCittc2dzdHIgItC30LDQv9C40YHRjCDRhNCw0LnQu9CwINC40LfQvNC10L3QtdC90LjQuSIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDo0NDAKK21zZ2lkICJkcGtnLWdlbmNoYW5nZXMiCittc2dzdHIgImRwa2ctZ2VuY2hhbmdlcyIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDo0NDkKK21zZ2lkICJzb3VyY2Ugb25seSB1cGxvYWQ6IERlYmlhbi1uYXRpdmUgcGFja2FnZSIKK21zZ3N0ciAi0LfQsNC60LDRh9C60LAg0YLQvtC70YzQutC+INC/0LDQutC10YLQvtCyINC40YHRhdC+0LTQvdC+0LPQviDQutC+0LTQsDog0YDQvtC00L3QvtC5INC/0LDQutC10YIgRGViaWFuIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjQ1MQorbXNnaWQgInNvdXJjZSBvbmx5LCBkaWZmLW9ubHkgdXBsb2FkIChvcmlnaW5hbCBzb3VyY2UgTk9UIGluY2x1ZGVkKSIKK21zZ3N0ciAiIgorItC30LDQutCw0YfQutCwINGC0L7Qu9GM0LrQviDQv9Cw0LrQtdGC0LAg0LjRgdGF0L7QtNC90L7Qs9C+INC60L7QtNCwINC4IGRpZmYgKNC/0LDQutC10YIg0L7RgNC40LPQuNC90LDQu9GM0L3QvtCz0L4g0LjRgdGF0L7QtNC90L7Qs9C+ICIKKyLQutC+0LTQsCDQndCVINCy0LrQu9GO0YfRkdC9KSIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDo0NTMKK21zZ2lkICJzb3VyY2Ugb25seSB1cGxvYWQgKG9yaWdpbmFsIHNvdXJjZSBpcyBpbmNsdWRlZCkiCittc2dzdHIgIiIKKyLQt9Cw0LrQsNGH0LrQsCDRgtC+0LvRjNC60L4g0L/QsNC60LXRgtCwINC40YHRhdC+0LTQvdC+0LPQviDQutC+0LTQsCDQuCBkaWZmICjRgSDQv9Cw0LrQtdGC0L7QvCDQvtGA0LjQs9C40L3QsNC70YzQvdC+0LPQviAiCisi0LjRgdGF0L7QtNC90L7Qs9C+INC60L7QtNCwKSIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDo0NTYgc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDo0NjQKK21zZ2lkICJmdWxsIHVwbG9hZCAob3JpZ2luYWwgc291cmNlIGlzIGluY2x1ZGVkKSIKK21zZ3N0ciAi0LfQsNC60LDRh9C60LAg0LLRgdC10LPQviAo0YEg0L/QsNC60LXRgtC+0Lwg0L7RgNC40LPQuNC90LDQu9GM0L3QvtCz0L4g0LjRgdGF0L7QtNC90L7Qs9C+INC60L7QtNCwKSIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDo0NTgKK21zZ2lkICJiaW5hcnkgb25seSB1cGxvYWQgKG5vIHNvdXJjZSBpbmNsdWRlZCkiCittc2dzdHIgItC30LDQutCw0YfQutCwINGC0L7Qu9GM0LrQviDQtNCy0L7QuNGH0L3Ri9GFINC/0LDQutC10YLQvtCyICjQsdC10Lcg0L/QsNC60LXRgtC+0LIg0LjRgdGF0L7QtNC90L7Qs9C+INC60L7QtNCwKSIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDo0NjAKK21zZ2lkICJmdWxsIHVwbG9hZDsgRGViaWFuLW5hdGl2ZSBwYWNrYWdlIChmdWxsIHNvdXJjZSBpcyBpbmNsdWRlZCkiCittc2dzdHIgIiIKKyLQt9Cw0LrQsNGH0LrQsCDQstGB0LXQs9C+OyDRgNC+0LTQvdC+0Lkg0L/QsNC60LXRgiBEZWJpYW4gKNCy0LrQu9GO0YfQtdC90Ysg0LLRgdC1INC/0LDQutC10YLRiyDQuNGB0YXQvtC00L3QvtCz0L4g0LrQvtC00LApIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjQ2MgorbXNnaWQgImJpbmFyeSBhbmQgZGlmZiB1cGxvYWQgKG9yaWdpbmFsIHNvdXJjZSBOT1QgaW5jbHVkZWQpIgorbXNnc3RyICIiCisi0LfQsNC60LDRh9C60LAg0YLQvtC70YzQutC+INC00LLQvtC40YfQvdGL0YUg0L/QsNC60LXRgtC+0LIg0LggZGlmZiAo0LHQtdC3INC/0LDQutC10YLQvtCyINC+0YDQuNCz0LjQvdCw0LvRjNC90L7Qs9C+INC40YHRhdC+0LTQvdC+0LPQviAiCisi0LrQvtC00LApIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjQ2OQorbXNnaWQgIkZhaWxlZCB0byBzaWduIC5jaGFuZ2VzIGZpbGUiCittc2dzdHIgItCe0YLQutCw0Lcg0L/RgNC4INC/0L7QtNC/0LjRgdGL0LLQsNC90LjQuCDRhNCw0LnQu9CwIC5jaGFuZ2VzIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjQ4OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGV0ZXJtaW5lICVzIgorbXNnc3RyICLQvdC10LLQvtC30LzQvtC20L3QviDQvtC/0YDQtdC00LXQu9C40YLRjCAlcyIKKworIzogc2NyaXB0cy9kcGtnLWNoZWNrYnVpbGRkZXBzLnBsOjQyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIlVzYWdlOiAlcyBbPG9wdGlvbj4uLi5dIFs8Y29udHJvbC1maWxlPl0iCittc2dzdHIgItCY0YHQv9C+0LvRjNC30L7QstCw0L3QuNC1OiAlcyBbPNC/0LDRgNCw0LzQtdGC0YA+Li4uXSA80YPQv9GA0LDQsi7RhNCw0LnQuz4iCisKKyM6IHNjcmlwdHMvZHBrZy1jaGVja2J1aWxkZGVwcy5wbDo0NAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLUIgICAgICAgICAgICAgYmluYXJ5LW9ubHksIGlnbm9yZSAtSW5kZXAuXG4iCisiICAtZCBidWlsZC1kZXBzICB1c2UgZ2l2ZW4gc3RyaW5nIGFzIGJ1aWxkIGRlcGVuZGVuY2llcyBpbnN0ZWFkIG9mXG4iCisiICAgICAgICAgICAgICAgICByZXRyaWV2aW5nIHRoZW0gZnJvbSBjb250cm9sIGZpbGVcbiIKKyIgIC1jIGJ1aWxkLWNvbmYgIHVzZSBnaXZlbiBzdHJpbmcgZm9yIGJ1aWxkIGNvbmZsaWN0cyBpbnN0ZWFkIG9mXG4iCisiICAgICAgICAgICAgICAgICByZXRyaWV2aW5nIHRoZW0gZnJvbSBjb250cm9sIGZpbGVcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT5cbiIKKyIgICAgICAgICAgICAgICAgIGNoYW5nZSB0aGUgYWRtaW5pc3RyYXRpdmUgZGlyZWN0b3J5LlxuIgorIiAgLWgsIC0taGVscCAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgICAgICAtLXZlcnNpb24gIHNob3cgdGhlIHZlcnNpb24uIgorbXNnc3RyICIiCisi0J/QsNGA0LDQvNC10YLRgNGLOlxuIgorIiAgLUIgICAgICAgICAgICAg0YLQvtC70YzQutC+INC00LLQvtC40YfQvdGL0Lkg0L/QsNC60LXRgiwg0LjQs9C90L7RgNC40YDQvtCy0LDRgtGMIC1JbmRlcC5cbiIKKyIgIC1kIGJ1aWxkLWRlcHMgINC40YHQv9C+0LvRjNC30L7QstCw0YLRjCDRg9C60LDQt9Cw0L3QvdGD0Y4g0YHRgtGA0L7QutGDINC60LDQuiDRgdCx0L7RgNC+0YfQvdGL0LUg0LfQsNCy0LjRgdC40LzQvtGB0YLQuCxcbiIKKyIgICAgICAgICAgICAgICAgINCwINC90LUg0LjQt9Cy0LvQtdC60LDRgtGMINC40YUg0LjQtyDRg9C/0YDQsNCy0LvRj9GO0YnQtdCz0L4g0YTQsNC50LvQsFxuIgorIiAgLWMgYnVpbGQtY29uZiAg0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMINGD0LrQsNC30LDQvdC90YPRjiDRgdGC0YDQvtC60YMg0LrQsNC6INGB0LHQvtGA0L7Rh9C90YvQtSDQutC+0L3RhNC70LjQutGC0YssXG4iCisiICAgICAgICAgICAgICAgICDQsCDQvdC1INC40LfQstC70LXQutCw0YLRjCDQuNGFINC40Lcg0YPQv9GA0LDQstC70Y/RjtGJ0LXQs9C+INGE0LDQudC70LBcbiIKKyIgIC0tYWRtaW5kaXI9PNC60LDRgtCw0LvQvtCzPlxuIgorIiAgICAgICAgICAgICAgICAg0LjQt9C80LXQvdC40YLRjCDQsNC00LzQuNC90LjRgdGC0YDQsNGC0LjQstC90YvQuSDQutCw0YLQsNC70L7Qsy5cbiIKKyIgIC1oICAgICAgICAgICAgINC/0L7QutCw0LfQsNGC0Ywg0Y3RgtC+INGB0L7QvtCx0YnQtdC90LjQtS5cbiIKKyIgICAgICAtLXZlcnNpb24gINC/0L7QutCw0LfQsNGC0Ywg0LLQtdGA0YHQuNGOLiIKKworIzogc2NyaXB0cy9kcGtnLWNoZWNrYnVpbGRkZXBzLnBsOjU1Cittc2dpZCAiIgorIjxjb250cm9sLWZpbGU+IGlzIHRoZSBjb250cm9sIGZpbGUgdG8gcHJvY2VzcyAoZGVmYXVsdDogZGViaWFuL2NvbnRyb2wpLiIKK21zZ3N0ciAiIgorIjzRg9C/0YDQsNCyLtGE0LDQudC7PiDRjdGC0L4g0YTQsNC50Lsg0YPQv9GA0LDQstC70LXQvdC40Y8g0YXQvtC00L7QvCDRgNCw0LHQvtGC0YsgKNC/0L4g0YPQvNC+0LvRh9Cw0L3QuNGOOiBkZWJpYW4vY29udHJvbCkuIgorCisjOiBzY3JpcHRzL2Rwa2ctY2hlY2tidWlsZGRlcHMucGw6MTA1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzOiBVbm1ldCBidWlsZCBkZXBlbmRlbmNpZXM6ICIKK21zZ3N0ciAiJXM6INCd0LXRg9C00L7QstC70LXRgtCy0L7RgNGR0L3QvdGL0LUg0YHQsdC+0YDQvtGH0L3Ri9C1INC30LDQstC40YHQuNC80L7RgdGC0Lg6ICIKKworIzogc2NyaXB0cy9kcGtnLWNoZWNrYnVpbGRkZXBzLnBsOjEwOQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlczogQnVpbGQgY29uZmxpY3RzOiAiCittc2dzdHIgIiVzOiDQodCx0L7RgNC+0YfQvdGL0LUg0LrQvtC90YTQu9C40LrRgtGLOiAiCisKKyM6IHNjcmlwdHMvZHBrZy1jaGVja2J1aWxkZGVwcy5wbDoxODQgc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDoyNTMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZXJyb3Igb2NjdXJyZWQgd2hpbGUgcGFyc2luZyAlcyIKK21zZ3N0ciAi0L7RiNC40LHQutCwINC/0YDQuCDQsNC90LDQu9C40LfQtSAlcyIKKworIzogc2NyaXB0cy9kcGtnLWRpc3RhZGRmaWxlLnBsOjM1Cittc2dpZCAiIgorIlxuIgorIkNvcHlyaWdodCAoQykgMTk5NiBJYW4gSmFja3Nvbi4iCittc2dzdHIgIiIKKyJcbiIKKyJDb3B5cmlnaHQgKEMpIDE5OTYgSWFuIEphY2tzb24uIgorCisjOiBzY3JpcHRzL2Rwa2ctZGlzdGFkZGZpbGUucGw6NDYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4uLi5dIDxmaWxlbmFtZT4gPHNlY3Rpb24+IDxwcmlvcml0eT5cbiIKKyJcbiIKKyJPcHRpb25zOlxuIgorIiAgLWY8ZmlsZXNsaXN0ZmlsZT4gICAgICAgIHdyaXRlIGZpbGVzIGhlcmUgaW5zdGVhZCBvZiBkZWJpYW4vZmlsZXMuXG4iCisiICAtaCwgLS1oZWxwICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgICAgICAtLXZlcnNpb24gICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorbXNnc3RyICIiCisi0JjRgdC/0L7Qu9GM0LfQvtCy0LDQvdC40LU6ICVzIFs80L/QsNGA0LDQvNC10YLRgD4uLi5dIDzQuNC80Y9f0YTQsNC50LvQsD4gPNGB0LXQutGG0LjRjz4gPNC/0YDQuNC+0YDQuNGC0LXRgj5cbiIKKyJcbiIKKyLQn9Cw0YDQsNC80LXRgtGA0Ys6XG4iCisiICAtZjzRhNCw0LnQuy3RgdC/0LjRgdC60LA+ICAgICAgICDQt9Cw0L/QuNGB0LDRgtGMINGE0LDQudC70Ysg0LIg0YPQui4g0YTQsNC50LssINCwINC90LUg0LIgZGViaWFuL2ZpbGVzLlxuIgorIiAgLWgsIC0taGVscCAgICAgICAgICAgICAgINC/0L7QutCw0LfQsNGC0Ywg0Y3RgtC+INGB0L7QvtCx0YnQtdC90LjQtS5cbiIKKyIgICAgICAtLXZlcnNpb24gICAgICAgICAgICDQv9C+0LrQsNC30LDRgtGMINCy0LXRgNGB0LjRji5cbiIKKworIzogc2NyaXB0cy9kcGtnLWRpc3RhZGRmaWxlLnBsOjcyCittc2dpZCAibmVlZCBleGFjdGx5IGEgZmlsZW5hbWUsIHNlY3Rpb24gYW5kIHByaW9yaXR5IgorbXNnc3RyICLQvdGD0LbQvdC+INGD0LrQsNC30LDRgtGMINC40LzRjyDRhNCw0LnQu9CwLCDRgdC10LrRhtC40Y4g0Lgg0L/RgNC40L7RgNC40YLQtdGCIgorCisjOiBzY3JpcHRzL2Rwa2ctZGlzdGFkZGZpbGUucGw6NzYKK21zZ2lkICJmaWxlbmFtZSwgc2VjdGlvbiBhbmQgcHJpb3JpdHkgbWF5IGNvbnRhaW4gbm8gd2hpdGVzcGFjZSIKK21zZ3N0ciAi0LjQvNGPINGE0LDQudC70LAsINGB0LXQutGG0LjRjyDQuCDQv9GA0LjQvtGA0LjRgtC10YIg0L3QtSDQvNC+0LPRg9GCINGB0L7QtNC10YDQttCw0YLRjCDQv9GA0L7QsdC10LvRjNC90YvRhSDRgdC40LzQstC+0LvQvtCyIgorCisjOiBzY3JpcHRzL2Rwa2ctZGlzdGFkZGZpbGUucGw6Nzkgc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MzM0Cittc2dpZCAib3BlbiBuZXcgZmlsZXMgbGlzdCBmaWxlIgorbXNnc3RyICLQvtGC0LrRgNGL0YLQuNC1INC90L7QstC+0LPQviDRhNCw0LnQu9CwINGB0L4g0YHQv9C40YHQutC+0Lwg0YTQsNC50LvQvtCyIgorCisjOiBzY3JpcHRzL2Rwa2ctZGlzdGFkZGZpbGUucGw6ODQgc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MzQ1Cittc2dpZCAiY29weSBvbGQgZW50cnkgdG8gbmV3IGZpbGVzIGxpc3QgZmlsZSIKK21zZ3N0ciAi0LrQvtC/0LjRgNC+0LLQsNC90LjQtSDRgdGC0LDRgNC+0Lkg0LfQsNC/0LjRgdC4INCyINC90L7QstGL0Lkg0YTQsNC50Lsg0YHQviDRgdC/0LjRgdC60L7QvCDRhNCw0LnQu9C+0LIiCisKKyM6IHNjcmlwdHMvZHBrZy1kaXN0YWRkZmlsZS5wbDo4NyBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDozNDkKK21zZ2lkICJyZWFkIG9sZCBmaWxlcyBsaXN0IGZpbGUiCittc2dzdHIgItGH0YLQtdC90LjQtSDRgdGC0LDRgNC+0LPQviDRhNCw0LnQu9CwINGB0L4g0YHQv9C40YHQutC+0Lwg0YTQsNC50LvQvtCyIgorCisjOiBzY3JpcHRzL2Rwa2ctZGlzdGFkZGZpbGUucGw6OTAgc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MzU5Cittc2dpZCAid3JpdGUgbmV3IGVudHJ5IHRvIG5ldyBmaWxlcyBsaXN0IGZpbGUiCittc2dzdHIgItC30LDQv9C40YHRjCDQvdC+0LLQvtC5INC30LDQv9C40YHQuCDQsiDQvdC+0LLRi9C5INGE0LDQudC7INGB0L4g0YHQv9C40YHQutC+0Lwg0YTQsNC50LvQvtCyIgorCisjOiBzY3JpcHRzL2Rwa2ctZGlzdGFkZGZpbGUucGw6OTEgc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MzYwCittc2dpZCAiY2xvc2UgbmV3IGZpbGVzIGxpc3QgZmlsZSIKK21zZ3N0ciAi0LfQsNC60YDRi9GC0LjQtSDQvdC+0LLQvtCz0L4g0YTQsNC50LvQsCDRgdC+INGB0L/QuNGB0LrQvtC8INGE0LDQudC70L7QsiIKKworIzogc2NyaXB0cy9kcGtnLWRpc3RhZGRmaWxlLnBsOjkzIHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjM2MQorbXNnaWQgImluc3RhbGwgbmV3IGZpbGVzIGxpc3QgZmlsZSIKK21zZ3N0ciAi0YPRgdGC0LDQvdC+0LLQutCwINC90L7QstC+0LPQviDRhNCw0LnQu9CwINGBINGB0L/QuNGB0LrQvtC8INGE0LDQudC70L7QsiIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6OTgKK21zZ2lkICIiCisiXG4iCisiQ29weXJpZ2h0IChDKSAxOTk2IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uIgorbXNnc3RyICIiCisiXG4iCisiQ29weXJpZ2h0IChDKSAxOTk2IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDoxMTAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXVxuIgorIlxuIgorIk9wdGlvbnM6XG4iCisiICAtYiAgICAgICAgICAgICAgICAgICAgICAgYmluYXJ5LW9ubHkgYnVpbGQgLSBubyBzb3VyY2UgZmlsZXMuXG4iCisiICAtQiAgICAgICAgICAgICAgICAgICAgICAgYXJjaC1zcGVjaWZpYyAtIG5vIHNvdXJjZSBvciBhcmNoLWluZGVwIGZpbGVzLlxuIgorIiAgLUEgICAgICAgICAgICAgICAgICAgICAgIG9ubHkgYXJjaC1pbmRlcCAtIG5vIHNvdXJjZSBvciBhcmNoLXNwZWNpZmljICIKKyJmaWxlcy5cbiIKKyIgIC1TICAgICAgICAgICAgICAgICAgICAgICBzb3VyY2Utb25seSB1cGxvYWQuXG4iCisiICAtYzxjb250cm9sZmlsZT4gICAgICAgICAgZ2V0IGNvbnRyb2wgaW5mbyBmcm9tIHRoaXMgZmlsZS5cbiIKKyIgIC1sPGNoYW5nZWxvZ2ZpbGU+ICAgICAgICBnZXQgcGVyLXZlcnNpb24gaW5mbyBmcm9tIHRoaXMgZmlsZS5cbiIKKyIgIC1mPGZpbGVzbGlzdGZpbGU+ICAgICAgICBnZXQgLmRlYiBmaWxlcyBsaXN0IGZyb20gdGhpcyBmaWxlLlxuIgorIiAgLXY8c2luY2V2ZXJzaW9uPiAgICAgICAgIGluY2x1ZGUgYWxsIGNoYW5nZXMgbGF0ZXIgdGhhbiB2ZXJzaW9uLlxuIgorIiAgLUM8Y2hhbmdlc2Rlc2NyaXB0aW9uPiAgIHVzZSBjaGFuZ2UgZGVzY3JpcHRpb24gZnJvbSB0aGlzIGZpbGUuXG4iCisiICAtbTxtYWludGFpbmVyPiAgICAgICAgICAgb3ZlcnJpZGUgY29udHJvbCdzIG1haW50YWluZXIgdmFsdWUuXG4iCisiICAtZTxtYWludGFpbmVyPiAgICAgICAgICAgb3ZlcnJpZGUgY2hhbmdlbG9nJ3MgbWFpbnRhaW5lciB2YWx1ZS5cbiIKKyIgIC11PHVwbG9hZGZpbGVzZGlyPiAgICAgICBkaXJlY3Rvcnkgd2l0aCBmaWxlcyAoZGVmYXVsdCBpcyBgLi4nKS5cbiIKKyIgIC1zaSAoZGVmYXVsdCkgICAgICAgICAgICBzcmMgaW5jbHVkZXMgb3JpZyBpZiBuZXcgdXBzdHJlYW0uXG4iCisiICAtc2EgICAgICAgICAgICAgICAgICAgICAgc291cmNlIGluY2x1ZGVzIG9yaWcgc3JjLlxuIgorIiAgLXNkICAgICAgICAgICAgICAgICAgICAgIHNvdXJjZSBpcyBkaWZmIGFuZCAuZHNjIG9ubHkuXG4iCisiICAtcSAgICAgICAgICAgICAgICAgICAgICAgcXVpZXQgLSBubyBpbmZvcm1hdGlvbmFsIG1lc3NhZ2VzIG9uIHN0ZGVyci5cbiIKKyIgIC1GPGNoYW5nZWxvZ2Zvcm1hdD4gICAgICBmb3JjZSBjaGFuZ2UgbG9nIGZvcm1hdC5cbiIKKyIgIC1WPG5hbWU+PTx2YWx1ZT4gICAgICAgICBzZXQgYSBzdWJzdGl0dXRpb24gdmFyaWFibGUuXG4iCisiICAtVDx2YXJsaXN0ZmlsZT4gICAgICAgICAgcmVhZCB2YXJpYWJsZXMgaGVyZSwgbm90IGRlYmlhbi9zdWJzdHZhcnMuXG4iCisiICAtRDxmaWVsZD49PHZhbHVlPiAgICAgICAgb3ZlcnJpZGUgb3IgYWRkIGEgZmllbGQgYW5kIHZhbHVlLlxuIgorIiAgLVU8ZmllbGQ+ICAgICAgICAgICAgICAgIHJlbW92ZSBhIGZpZWxkLlxuIgorIiAgLWgsIC0taGVscCAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAgICAgLS12ZXJzaW9uICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIgorItCY0YHQv9C+0LvRjNC30L7QstCw0L3QuNC1OiAlcyBbPNC/0LDRgNCw0LzQtdGC0YA+IC4uLl1cbiIKKyJcbiIKKyLQn9Cw0YDQsNC80LXRgtGA0Ys6XG4iCisiICAtYiAgICAgICAgICAgICAgICAgICAgICAg0YHQsdC+0YDQutCwINGC0L7Qu9GM0LrQviDQtNCy0L7QuNGH0L3QvtCz0L4g0L/QsNC60LXRgtCwIC0g0LHQtdC3INC40YHRhdC+0LTQvdC40LrQvtCyLlxuIgorIiAgLUIgICAgICAgICAgICAgICAgICAgICAgINGB0LHQvtGA0LrQsCDRgtC+0LvRjNC60L4g0LDRgNGFLdC90L7Qs9C+INC/0LDQutC10YLQsCAtINCx0LXQtyDQuNGB0YXQvtC00L3QuNC60L7QsiAiCisi0LjQu9C4XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAg0L3QtdC30LDQstC40YHQuNC80YvRhSDQvtGCINCw0YDRhS3RgNGLINC/0LDQutC10YLQvtCyLlxuIgorIiAgLUEgICAgICAgICAgICAgICAgICAgICAgINGB0LHQvtGA0LrQsCDRgtC+0LvRjNC60L4g0LDRgNGFLdC90L4g0L3QtdC30LDQstC40YHQuNC80L7Qs9C+INC/0LDQutC10YLQsFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICDQsdC10Lcg0LjRgdGF0L7QtNC90LjQutC+0LIg0LjQu9C4INC30LDQstC40YHQuNC80YvRhSDQvtGCINCw0YDRhS3RgNGLINC/0LDQutC10YLQvtCyLlxuIgorIiAgLVMgICAgICAgICAgICAgICAgICAgICAgINC30LDQutCw0YfQutCwINGC0L7Qu9GM0LrQviDQv9Cw0LrQtdGC0L7QsiDRgSDQuNGB0YXQvtC00L3QuNC60LDQvNC4LlxuIgorIiAgLWM80YPQv9GALtGE0LDQudC7PiAgICAgICAgICAgICDQsdGA0LDRgtGMINGD0L/RgNCw0LLQu9GP0Y7RidGD0Y4g0LjQvdGELdGOINC40Lcg0YPQutCw0LfQsNC90L3QvtCz0L4g0YTQsNC50LvQsC5cbiIKKyIgIC1sPNGE0LDQudC7LdC40LfQvNC10L3QtdC90LjQuT4gICAgICAg0LHRgNCw0YLRjCDRgdC/0LjRgdC+0Log0LjQt9C80LXQvdC10L3QuNC5INC40Lcg0YPQutCw0LfQsNC90L3QvtCz0L4g0YTQsNC50LvQsC5cbiIKKyIgIC1mPNGE0LDQudC7LdGB0L/QuNGB0LrQsD4gICAgICAgICAg0LHRgNCw0YLRjCDRgdC/0LjRgdC+0Log0YTQsNC50LvQvtCyIC5kZWIg0LjQtyDRg9C60LDQt9Cw0L3QvdC+0LPQviDRhNCw0LnQu9CwLlxuIgorIiAgLXY80YEt0LLQtdGA0YHQuNC4PiAgICAgICAgICAgICDQstC60LvRjtGH0LjRgtGMINCy0YHQtSDQuNC30LzQtdC90LXQvdC40Y8sINC90LDRh9C40L3QsNGPINGBINGD0LrQsNC30LDQvdC90L7QuSAiCisi0LLQtdGA0YHQuNC4LlxuIgorIiAgLUM80L7Qv9C40YHQsNC90LjQtS3QuNC30LzQtdC90LXQvdC40Lk+ICAg0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMINC+0L/QuNGB0LDQvdC40LUg0LjQt9C80LXQvdC10L3QuNC5INC40Lcg0YPQutCw0LfQsNC90L3QvtCz0L4gIgorItGE0LDQudC70LAuXG4iCisiICAtbTzRgdC+0L/RgNC+0LLQvtC2Lj4gICAgICAgICAgICDQt9Cw0LzQtdC90LjRgtGMINGB0L7Qv9GA0L7QstC+0LbQtNCw0Y7RidC10LPQviDQuNC3INGE0LDQudC70LAg0YPQv9GA0LDQstC70LXQvdC40Y8uXG4iCisiICAtZTzRgdC+0L/RgNC+0LLQvtC2Lj4gICAgICAgICAgICDQt9Cw0LzQtdC90LjRgtGMINGB0L7Qv9GA0L7QstC+0LbQtNCw0Y7RidC10LPQviDQuNC3INGE0LDQudC70LAg0LjQt9C80LXQvdC10L3QuNC5LlxuIgorIiAgLXU80LrQsNGCLtGBLtC30LDQutCw0Ycu0YTQsNC50LvQsNC80Lg+ICDQutCw0YLQsNC70L7QsyDRgSDRhNCw0LnQu9Cw0LzQuCAo0L/QviDRg9C80L7Qu9GH0LDQvdC40Y4gYC4uJykuXG4iCisiICAtc2kgKNC/0L4g0YPQvNC+0LvRhy4pICAgICAgICAgIHNyYyDQstC60LvRjtGH0LDRjtGCIG9yaWcsINC10YHQu9C4INC90L7QstGL0LkgdXBzdHJlYW0uXG4iCisiICAtc2EgICAgICAgICAgICAgICAgICAgICAg0LjRgdGF0L7QtNC90LjQutC4INCy0LrQu9GO0YfQsNGO0YIg0L7RgNC40LPQuNC90LDQu9GM0L3Ri9C5INC40YHRhdC+0LTQvdGL0Lkg0LrQvtC0LlxuIgorIiAgLXNkICAgICAgICAgICAgICAgICAgICAgINC40YHRhdC+0LTQvdC40LrQuCDRjdGC0L4g0YLQvtC70YzQutC+IGRpZmYg0LggLmRzYy5cbiIKKyIgIC1xICAgICAgICAgICAgICAgICAgICAgICDQvdC1INCy0YvQstC+0LTQuNGC0Ywg0LjQvdGE0L7RgNC80LDRhtC40L7QvdC90YvQtSDRgdC+0L7QsdGJ0LXQvdC40Y8g0LIg0L/QvtGC0L7QuiAiCisi0L7RiNC40LHQvtC6LlxuIgorIiAgLUY80YTQvtGA0LzQsNGCLdC40LfQvC4+ICAgICAgICAgINC40LfQvNC10L3QuNGC0Ywg0YTQvtGA0LzQsNGCINGE0LDQudC70LAg0LjQt9C80LXQvdC10L3QuNC5LlxuIgorIiAgLVY80LjQvNGPPj080LfQvdCw0YcuPiAgICAgICAgICDRg9GB0YLQsNC90L7QstC40YLRjCDQv9C10YDQtdC80LXQvdC90YPRjiDQv9C+0LTRgdGC0LDQvdC+0LLQutC4LlxuIgorIiAgLVQ80YTQsNC50Lst0L/QtdGA0LXQvC4+ICAgICAgICAgINGH0LjRgtCw0YLRjCDQv9C10YDQtdC80LXQvdC90YvQtSDQuNC3INGD0LrQsNC30LDQvdC90L7Qs9C+INGE0LDQudC70LAsXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAg0LAg0L3QtSDQuNC3IGRlYmlhbi9zdWJzdHZhcnMuXG4iCisiICAtRDzQv9C+0LvQtT49PNC30L3QsNGHLj4gICAgICAgICDQt9Cw0LzQtdC90LjRgtGMINC40LvQuCDQtNC+0LHQsNCy0LjRgtGMINC/0L7Qu9C1INC4INC30L3QsNGH0LXQvdC40LUuXG4iCisiICAtVTzQv9C+0LvQtT4gICAgICAgICAgICAgICAgINGD0LTQsNC70LjRgtGMINC/0L7Qu9C1LlxuIgorIiAgLWgsIC0taGVscCAgICAgICAgICAgICAgINC/0L7QutCw0LfQsNGC0Ywg0Y3RgtC+INGB0L7QvtCx0YnQtdC90LjQtS5cbiIKKyIgICAgICAtLXZlcnNpb24gICAgICAgICAgICDQv9C+0LrQsNC30LDRgtGMINCy0LXRgNGB0LjRji5cbiIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6MTQ4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzOiBhcmNoLXNwZWNpZmljIHVwbG9hZCAtIG5vdCBpbmNsdWRpbmcgYXJjaC1pbmRlcGVuZGVudCBwYWNrYWdlcyIKK21zZ3N0ciAiIgorIiVzOiDQsNGA0YXQuNGCLiDRgdC/0LXRhtC40YTQuNGH0L3QsNGPINC30LDQutCw0YfQutCwIC0g0L3QtSDQstC60LvRjtGH0LDRjtGC0YHRjyDQvdC10LfQsNCy0LjRgdC40LzRi9C1INC+0YIg0LDRgNGF0LjRgtC10LrRgtGD0YDRiyAiCisi0L/QsNC60LXRgtGLIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDoxNTIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXM6IGFyY2gtaW5kZXAgdXBsb2FkIC0gbm90IGluY2x1ZGluZyBhcmNoLXNwZWNpZmljIHBhY2thZ2VzIgorbXNnc3RyICIiCisiJXM6INC90LXQt9Cw0LLQuNGB0LjQvNCw0Y8g0L7RgiDQsNGA0YXQuNGC0LXQutGC0YPRgNGLINC30LDQutCw0YfQutCwIC0g0L3QtSDQstC60LvRjtGH0LDRjtGC0YHRjyDQt9Cw0LLQuNGB0LjQvNGL0LUg0L7RgiAiCisi0LDRgNGF0LjRgtC10LrRgtGD0YDRiyDQv9Cw0LrQtdGC0YsiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjIxOQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ0aGUgY3VycmVudCB2ZXJzaW9uICglcykgaXMgZWFybGllciB0aGFuIHRoZSBwcmV2aW91cyBvbmUgKCVzKSIKK21zZ3N0ciAi0YLQtdC60YPRidCw0Y8g0LLQtdGA0YHQuNGPICglcykg0LzQtdC90YzRiNC1INGH0LXQvCDQv9GA0LXQtNGL0LTRg9GJ0LDRjyAoJXMpIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDoyMjYKK21zZ2lkICJjYW5ub3QgcmVhZCBmaWxlcyBsaXN0IGZpbGUiCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L/RgNC+0YfQuNGC0LDRgtGMINGE0LDQudC7INGB0L4g0YHQv9C40YHQutC+0Lwg0YTQsNC50LvQvtCyIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDoyMzAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIGZpbGVzIGxpc3QgZW50cnkgZm9yIHBhY2thZ2UgJXMgKGxpbmUgJWQpIgorbXNnc3RyICLQv9C+0LLRgtC+0YDQvdCw0Y8g0LfQsNC/0LjRgdGMINCyINGB0L/QuNGB0LrQtSDRhNCw0LnQu9C+0LIg0LTQu9GPINC/0LDQutC10YLQsCAlcyAo0YHRgtGA0L7QutCwICVkKSIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6MjM4IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjI1MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgZmlsZXMgbGlzdCBlbnRyeSBmb3IgZmlsZSAlcyAobGluZSAlZCkiCittc2dzdHIgItC/0L7QstGC0L7RgNC90LDRjyDQt9Cw0L/QuNGB0Ywg0LIg0YHQv9C40YHQutC1INGE0LDQudC70L7QsiDQtNC70Y8g0YTQsNC50LvQsCAlcyAo0YHRgtGA0L7QutCwICVkKSIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6MjU4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImJhZGx5IGZvcm1lZCBsaW5lIGluIGZpbGVzIGxpc3QgZmlsZSwgbGluZSAlZCIKK21zZ3N0ciAi0L3QtdCy0LXRgNC90YvQuSDRhNC+0YDQvNCw0YIg0YHRgtGA0L7QutC4INCyINGE0LDQudC70LUg0YHQviDRgdC/0LjRgdC60L7QvCDRhNCw0LnQu9C+0LIsINGB0YLRgNC+0LrQsCAlZCIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6Mjk5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgJXMgaW4gY29udHJvbCBmaWxlIGJ1dCBub3QgaW4gZmlsZXMgbGlzdCIKK21zZ3N0ciAi0L/QsNC60LXRgiAlcyDQsiDRg9C/0YDQsNCy0LvRj9GO0YnQtdC8INGE0LDQudC70LUsINC90L4g0LXQs9C+INC90LXRgiDQsiDRhNCw0LnQu9C1INGB0L4g0YHQv9C40YHQutC+0Lwg0YTQsNC50LvQvtCyIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDozNDMKK21zZ2lkICJyZWFkIGNoYW5nZXNkZXNjcmlwdGlvbiIKK21zZ3N0ciAi0YfRgtC10L3QuNC1INC+0L/QuNGB0LDQvdC40Y8g0LjQt9C80LXQvdC10L3QuNC5IgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDozNTEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlcyBsaXN0ZWQgaW4gZmlsZXMgbGlzdCBidXQgbm90IGluIGNvbnRyb2wgaW5mbyIKK21zZ3N0ciAiIgorItC/0LDQutC10YIgJXMg0LXRgdGC0Ywg0LIg0YTQsNC50LvQtSDRgdC+INGB0L/QuNGB0LrQvtC8INGE0LDQudC70L7Qsiwg0L3QviDQtdCz0L4g0L3QtdGCINCyINGD0L/RgNCw0LLQu9GP0Y7RidC10Lkg0LjQvdGE0L7RgNC80LDRhtC40LgiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjM2MworIywgcGVybC1mb3JtYXQKK21zZ2lkICJtaXNzaW5nIFNlY3Rpb24gZm9yIGJpbmFyeSBwYWNrYWdlICVzOyB1c2luZyAnLSciCittc2dzdHIgItC+0YLRgdGD0YLRgdGC0LLRg9C10YIgU2VjdGlvbiDQtNC70Y8g0LTQstC+0LjRh9C90L7Qs9C+INC/0LDQutC10YLQsCAlczsg0LjRgdC/0L7Qu9GM0LfRg9C10YLRgdGPIMKrLcK7IgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDozNjUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlcyBoYXMgc2VjdGlvbiAlcyBpbiBjb250cm9sIGZpbGUgYnV0ICVzIGluIGZpbGVzIGxpc3QiCittc2dzdHIgItC/0LDQutC10YIgJXMg0LIg0YHQtdC60YbQuNC4ICVzINCyINGD0L/RgNCw0LLQu9GP0Y7RidC10Lwg0YTQsNC50LvQtSwg0L3QviDQsiAlcyDQsiDRgdC/0LjRgdC60LUg0YTQsNC50LvQvtCyIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDozNzIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibWlzc2luZyBQcmlvcml0eSBmb3IgYmluYXJ5IHBhY2thZ2UgJXM7IHVzaW5nICctJyIKK21zZ3N0ciAi0L7RgtGB0YPRgtGB0YLQstGD0LXRgiBQcmlvcml0eSDQtNC70Y8g0LTQstC+0LjRh9C90L7Qs9C+INC/0LDQutC10YLQsCAlczsg0LjRgdC/0L7Qu9GM0LfRg9C10YLRgdGPIMKrLcK7IgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDozNzQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlcyBoYXMgcHJpb3JpdHkgJXMgaW4gY29udHJvbCBmaWxlIGJ1dCAlcyBpbiBmaWxlcyBsaXN0IgorbXNnc3RyICLQv9Cw0LrQtdGCICVzINC40LzQtdC10YIg0L/RgNC40L7RgNC40YLQtdGCICVzINCyINGD0L/RgNCw0LLQu9GP0Y7RidC10Lwg0YTQsNC50LvQtSwg0L3QviAlcyDQsiDRgdC/0LjRgdC60LUg0YTQsNC50LvQvtCyIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDozODYKK21zZ2lkICJtaXNzaW5nIFNlY3Rpb24gZm9yIHNvdXJjZSBmaWxlcyIKK21zZ3N0ciAi0L7RgtGB0YPRgtGB0YLQstGD0LXRgiBTZWN0aW9uINC00LvRjyDRhNCw0LnQu9C+0LIg0YEg0LjRgdGF0L7QtNC90YvQvCDQutC+0LTQvtC8IgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDozOTEKK21zZ2lkICJtaXNzaW5nIFByaW9yaXR5IGZvciBzb3VyY2UgZmlsZXMiCittc2dzdHIgItC+0YLRgdGD0YLRgdGC0LLRg9C10YIgUHJpb3JpdHkg0LTQu9GPINGE0LDQudC70L7QsiDRgSDQuNGB0YXQvtC00L3Ri9C8INC60L7QtNC+0LwiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjM5OCBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjM0NgorIzogc2NyaXB0cy9EcGtnL1ZlbmRvci5wbTo3MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBpcyBlbXB0eSIKK21zZ3N0ciAiJXMg0L/Rg9GB0YIiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjQyNAorbXNnaWQgIm5vdCBpbmNsdWRpbmcgb3JpZ2luYWwgc291cmNlIGNvZGUgaW4gdXBsb2FkIgorbXNnc3RyICLQsiDQt9Cw0LrQsNGH0LrRgyDQvdC1INCy0LrQu9GO0YfRkdC9INC+0YDQuNCz0LjQvdCw0LvRjNC90YvQuSDQuNGB0YXQvtC00L3Ri9C5INC60L7QtCIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6NDMxCittc2dpZCAiaWdub3JpbmcgLXNkIG9wdGlvbiBmb3IgbmF0aXZlIERlYmlhbiBwYWNrYWdlIgorbXNnc3RyICLQuNCz0L3QvtGA0LjRgNGD0LXRgtGB0Y8g0L/QsNGA0LDQvNC10YLRgCAtc2Qg0LTQu9GPINGA0L7QtNC90L7Qs9C+INC/0LDQutC10YLQsCBEZWJpYW4iCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjQzMworbXNnaWQgImluY2x1ZGluZyBmdWxsIHNvdXJjZSBjb2RlIGluIHVwbG9hZCIKK21zZ3N0ciAi0LIg0LfQsNC60LDRh9C60YMg0LLQutC70Y7Rh9GR0L0g0LLQtdGB0Ywg0LjRgdGF0L7QtNC90YvQuSDQutC+0LQiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjQzNgorbXNnaWQgImJpbmFyeS1vbmx5IHVwbG9hZCAtIG5vdCBpbmNsdWRpbmcgYW55IHNvdXJjZSBjb2RlIgorbXNnc3RyICLQt9Cw0LrQsNGH0LrQsCDRgtC+0LvRjNC60L4g0LTQstC+0LjRh9C90YvRhSDQv9Cw0LrQtdGC0L7Qsiwg0LHQtdC3INC/0LDQutC10YLQvtCyINC40YHRhdC+0LTQvdGL0YUg0LrQvtC00L7QsiIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6NDQwCittc2dpZCAid3JpdGUgb3JpZ2luYWwgc291cmNlIG1lc3NhZ2UiCittc2dzdHIgItC30LDQv9C40YHRjCDQvtGA0LjQs9C40L3QsNC70YzQvdC+0LPQviDQuNGB0YXQvtC00L3QvtCz0L4g0YHQvtC+0LHRidC10L3QuNGPIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDo0OTQgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOjUzMgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJtaXNzaW5nIGluZm9ybWF0aW9uIGZvciBjcml0aWNhbCBvdXRwdXQgZmllbGQgJXMiCittc2dzdHIgItC+0YLRgdGD0YLRgdGC0LLRg9C10YIg0LjQvdGE0L7RgNC80LDRhtC40Y8g0L4g0LrRgNC40YLQuNGH0LXRgdC60L7QvCDQv9C+0LvQtSDQstGL0LLQvtC00LAgJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjQ5OSBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDoyNzIKKyM6IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjI3NSBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG06NTM3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIm1pc3NpbmcgaW5mb3JtYXRpb24gZm9yIG91dHB1dCBmaWVsZCAlcyIKK21zZ3N0ciAi0L7RgtGB0YPRgtGB0YLQstGD0LXRgiDQuNC90YTQvtGA0LzQsNGG0LjRjyDQviDQv9C+0LvQtSDQstGL0LLQvtC00LAgJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjU4Cittc2dpZCAiIgorIlxuIgorIkNvcHlyaWdodCAoQykgMTk5NiBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMiBXaWNoZXJ0IEFra2VybWFuLiIKK21zZ3N0ciAiIgorIlxuIgorIkNvcHlyaWdodCAoQykgMTk5NiBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAsMjAwMiBXaWNoZXJ0IEFra2VybWFuLiIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6NzAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXVxuIgorIlxuIgorIk9wdGlvbnM6XG4iCisiICAtcDxwYWNrYWdlPiAgICAgICAgICAgICAgcHJpbnQgY29udHJvbCBmaWxlIGZvciBwYWNrYWdlLlxuIgorIiAgLWM8Y29udHJvbGZpbGU+ICAgICAgICAgIGdldCBjb250cm9sIGluZm8gZnJvbSB0aGlzIGZpbGUuXG4iCisiICAtbDxjaGFuZ2Vsb2dmaWxlPiAgICAgICAgZ2V0IHBlci12ZXJzaW9uIGluZm8gZnJvbSB0aGlzIGZpbGUuXG4iCisiICAtRjxjaGFuZ2Vsb2dmb3JtYXQ+ICAgICAgZm9yY2UgY2hhbmdlIGxvZyBmb3JtYXQuXG4iCisiICAtdjxmb3JjZXZlcnNpb24+ICAgICAgICAgc2V0IHZlcnNpb24gb2YgYmluYXJ5IHBhY2thZ2UuXG4iCisiICAtZjxmaWxlc2xpc3RmaWxlPiAgICAgICAgd3JpdGUgZmlsZXMgaGVyZSBpbnN0ZWFkIG9mIGRlYmlhbi9maWxlcy5cbiIKKyIgIC1QPHBhY2thZ2VidWlsZGRpcj4gICAgICB0ZW1wb3JhcnkgYnVpbGQgZGlyIGluc3RlYWQgb2YgZGViaWFuL3RtcC5cbiIKKyIgIC1uPGZpbGVuYW1lPiAgICAgICAgICAgICBhc3N1bWUgdGhlIHBhY2thZ2UgZmlsZW5hbWUgd2lsbCBiZSA8ZmlsZW5hbWU+LlxuIgorIiAgLU8gICAgICAgICAgICAgICAgICAgICAgIHdyaXRlIHRvIHN0ZG91dCwgbm90IC4uLi9ERUJJQU4vY29udHJvbC5cbiIKKyIgIC1pcywgLWlwLCAtaXNwLCAtaXBzICAgICBkZXByZWNhdGVkLCBpZ25vcmVkIGZvciBjb21wYXRpYmlsaXR5LlxuIgorIiAgLUQ8ZmllbGQ+PTx2YWx1ZT4gICAgICAgIG92ZXJyaWRlIG9yIGFkZCBhIGZpZWxkIGFuZCB2YWx1ZS5cbiIKKyIgIC1VPGZpZWxkPiAgICAgICAgICAgICAgICByZW1vdmUgYSBmaWVsZC5cbiIKKyIgIC1WPG5hbWU+PTx2YWx1ZT4gICAgICAgICBzZXQgYSBzdWJzdGl0dXRpb24gdmFyaWFibGUuXG4iCisiICAtVDx2YXJsaXN0ZmlsZT4gICAgICAgICAgcmVhZCB2YXJpYWJsZXMgaGVyZSwgbm90IGRlYmlhbi9zdWJzdHZhcnMuXG4iCisiICAtaCwgLS1oZWxwICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgICAgICAtLXZlcnNpb24gICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorbXNnc3RyICIiCisi0JjRgdC/0L7Qu9GM0LfQvtCy0LDQvdC40LU6ICVzIFs80L/QsNGA0LDQvNC10YLRgD4gLi4uXVxuIgorIlxuIgorItCf0LDRgNCw0LzQtdGC0YDRizpcbiIKKyIgIC1wPNC/0LDQutC10YI+ICAgICAgICAgICAgICAgINC/0L7QutCw0LfQsNGC0Ywg0YPQv9GA0LDQstC70Y/RjtGJ0LjQuSDRhNCw0LnQuyDQv9Cw0LrQtdGC0LAuXG4iCisiICAtYzzRg9C/0YAu0YTQsNC50Ls+ICAgICAgICAgICAgINCx0YDQsNGC0Ywg0YPQv9GA0LDQstC70Y/RjtGJ0YPRjiDQuNC90YTQvtGA0LzQsNGG0LjRjiDQuNC3INGD0LrQsNC30LDQvdC90L7Qs9C+ICIKKyLRhNCw0LnQu9CwLlxuIgorIiAgLWw80YTQsNC50Lst0LjQt9C8Lj4gICAgICAgICAgICDQsdGA0LDRgtGMINGB0L/QuNGB0L7QuiDQuNC30LzQtdC90LXQvdC40Lkg0LjQtyDRg9C60LDQt9Cw0L3QvdC+0LPQviDRhNCw0LnQu9CwLlxuIgorIiAgLUY80YTQvtGA0LzQsNGCLdC40LfQvC4+ICAgICAgICAgINC40LfQvNC10L3QuNGC0Ywg0YTQvtGA0LzQsNGCINGE0LDQudC70LAg0LjQt9C80LXQvdC10L3QuNC5LlxuIgorIiAgLXY80LLQtdGA0YHQuNGPPiAgICAgICAgICAgICAgINC30LDQtNCw0YLRjCDQstC10YDRgdC40Y4g0LTQstC+0LjRh9C90L7Qs9C+INC/0LDQutC10YLQsC5cbiIKKyIgIC1mPNGE0LDQudC7LdGB0L/QuNGB0LrQsD4gICAgICAgICAg0LfQsNC/0LjRgdGL0LLQsNGC0Ywg0YTQsNC50LvRiyDQsiDRg9C60LDQt9Cw0L3QvdGL0Lkg0YTQsNC50LssINCwINC90LUg0LrQsNC6ICIKKyJkZWJpYW4vZmlsZXMuXG4iCisiICAtUDzQutCw0YIu0YHQsdC+0YDQutC4LdC/0LDQutC10YLQsD4gICAg0LLRgNC10LzQtdC90L3Ri9C5INC60LDRgtCw0LvQvtCzINGB0LHQvtGA0LrQuCDQstC80LXRgdGC0L4gZGViaWFuL3RtcC5cbiIKKyIgIC1uPNC40LzRjy3RhNCw0LnQu9CwPiAgICAgICAgICAgINGB0YfQuNGC0LDRgtGMINC40LzQtdC90LXQvCDRhNCw0LnQu9CwINC/0LDQutC10YLQsCA80LjQvNGPLdGE0LDQudC70LA+LlxuIgorIiAgLU8gICAgICAgICAgICAgICAgICAgICAgINC30LDQv9C40YHRi9Cy0LDRgtGMINCyINGB0YLQsNC90LTQsNGA0YLQvdGL0Lkg0LLRi9Cy0L7QtCwg0LAg0L3QtSDQsiAuLi4vREVCSUFOLyIKKyJjb250cm9sLlxuIgorIiAgLWlzLCAtaXAsIC1pc3AsIC1pcHMgICAgINC90LUg0YDQtdC60L7QvNC10L3QtNGD0LXRgtGB0Y8sINC40LPQvdC+0YDQuNGA0YPQtdGC0YHRjyDQtNC70Y8gIgorItGB0L7QstC80LXRgdGC0LjQvNC+0YHRgtC4LlxuIgorIiAgLUQ80L/QvtC70LU+PTzQt9C90LDRhy4+ICAgICAgICAg0LfQsNC80LXQvdC40YLRjCDQuNC70Lgg0LTQvtCx0LDQstC40YLRjCDQv9C+0LvQtSDQuCDQt9C90LDRh9C10L3QuNC1LlxuIgorIiAgLVU80L/QvtC70LU+ICAgICAgICAgICAgICAgICDRg9C00LDQu9C40YLRjCDQv9C+0LvQtS5cbiIKKyIgIC1WPNC40LzRjz49PNC30L3QsNGHLj4gICAgICAgICAg0YPRgdGC0LDQvdC+0LLQuNGC0Ywg0L/QtdGA0LXQvNC10L3QvdGD0Y4g0L/QvtC00YHRgtCw0L3QvtCy0LrQuC5cbiIKKyIgIC1UPNGE0LDQudC7LdC/0LXRgNC10LzQtdC9Lj4gICAgICAgINGH0LjRgtCw0YLRjCDQv9C10YDQtdC80LXQvdC90YvQtSDQuNC3INGD0LrQsNC30LDQvdC90L7Qs9C+INGE0LDQudC70LAsXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAg0LAg0L3QtSDQuNC3IGRlYmlhbi9zdWJzdHZhcnMuXG4iCisiICAtaCwgLS1oZWxwICAgICAgICAgICAgICAg0L/QvtC60LDQt9Cw0YLRjCDRjdGC0L4g0YHQvtC+0LHRidC10L3QuNC1LlxuIgorIiAgICAgIC0tdmVyc2lvbiAgICAgICAgICAgINC/0L7QutCw0LfQsNGC0Ywg0LLQtdGA0YHQuNGOLlxuIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDo5NyBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbDoxMTgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiSWxsZWdhbCBwYWNrYWdlIG5hbWUgYCVzJyIKK21zZ3N0ciAi0L3QtdC00L7Qv9GD0YHRgtC40LzQvtC1INC40LzRjyDQv9Cw0LrQtdGC0LAgwqslc8K7IgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDoxNTIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlcyBub3QgaW4gY29udHJvbCBpbmZvIgorbXNnc3RyICLQv9Cw0LrQtdGC0LAgJXMg0L3QtdGCINCyINGD0L/RgNCw0LLQu9GP0Y7RidC10Lkg0LjQvdGE0L7RgNC80LDRhtC40LgiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjE1NiBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbDoxNTkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibXVzdCBzcGVjaWZ5IHBhY2thZ2Ugc2luY2UgY29udHJvbCBpbmZvIGhhcyBtYW55ICglcykiCittc2dzdHIgIiIKKyLQtNC+0LvQttC10L0g0LHRi9GC0Ywg0YPQutCw0LfQsNC9INC/0LDQutC10YIsINGC0LDQuiDQutCw0Log0LIg0YPQv9GA0LDQstC70Y/RjtGJ0LXQuSDQuNC90YTQvtGA0LzQsNGG0LjQuCDQuNGFINC90LXRgdC60L7Qu9GM0LrQviAoJXMpIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDoxNjAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlczogIgorbXNnc3RyICLQv9Cw0LrQtdGCICVzOiAiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjE4NQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJgJXMnIGlzIG5vdCBhIGxlZ2FsIGFyY2hpdGVjdHVyZSBzdHJpbmcuIgorbXNnaWRfcGx1cmFsICJgJXMnIGFyZSBub3QgbGVnYWwgYXJjaGl0ZWN0dXJlIHN0cmluZ3MuIgorbXNnc3RyWzBdICLQndC10L/RgNCw0LLQuNC70YzQvdCw0Y8g0YHRgtGA0L7QutCwINCw0YDRhdC40YLQtdC60YLRg9GA0Ysgwqslc8K7LiIKK21zZ3N0clsxXSAi0J3QtdC/0YDQsNCy0LjQu9GM0L3Ri9C1INGB0YLRgNC+0LrQuCDQsNGA0YXQuNGC0LXQutGC0YPRgNGLIMKrJXPCuy4iCittc2dzdHJbMl0gItCd0LXQv9GA0LDQstC40LvRjNC90YvQtSDRgdGC0YDQvtC60Lgg0LDRgNGF0LjRgtC10LrRgtGD0YDRiyDCqyVzwrsuIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDoxOTEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorImN1cnJlbnQgaG9zdCBhcmNoaXRlY3R1cmUgJyVzJyBkb2VzIG5vdCBhcHBlYXIgaW4gcGFja2FnZSdzIGFyY2hpdGVjdHVyZSAiCisibGlzdCAoJXMpIgorbXNnc3RyICLRgtC10LrRg9GJ0LXQuSDQsNGA0YXQuNGC0LXQutGC0YPRgNGLINGD0LfQu9CwIMKrJXPCuyDQvdC10YIg0LIg0YHQv9C40YHQutC1INCw0YDRhdC40YLQtdC60YLRg9GAINC/0LDQutC10YLQsCAoJXMpIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDoyNDYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgZmllbGQgb2YgcGFja2FnZSAlczogIgorbXNnc3RyICIlcyDQv9C+0LvQtSDQuNC3INC/0LDQutC10YLQsCAlczogIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDoyNTAgc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MjU4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImVycm9yIG9jY3VycmVkIHdoaWxlIHBhcnNpbmcgJXMgZmllbGQ6ICVzIgorbXNnc3RyICLQvtGI0LjQsdC60LAg0L/RgNC4INCw0L3QsNC70LjQt9C1INC/0L7Qu9GPICVzOiAlcyIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MjYzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJ0aGUgJXMgZmllbGQgY29udGFpbnMgYW4gYXJjaC1zcGVjaWZpYyBkZXBlbmRlbmN5IGJ1dCB0aGUgcGFja2FnZSBpcyAiCisiYXJjaGl0ZWN0dXJlIGFsbCIKK21zZ3N0ciAiIgorItC/0L7Qu9C1ICVzINGB0L7QtNC10YDQttC40YIg0LfQsNCy0LjRgdC40LzQvtGB0YLRjCwg0LrQvtGC0L7RgNCw0Y8g0LXRgdGC0Ywg0YLQvtC70YzQutC+INCyINC+0L/RgNC10LTQtdC70ZHQvdC90L7QuSAiCisi0LDRgNGF0LjRgtC10LrRgtGD0YDQtSwg0L3QviDQv9Cw0LrQtdGCINC+0YLQvdC+0YHQuNGC0YHRjyDQutC+INCy0YHQtdC8INCw0YDRhdC40YLQtdC60YLRg9GA0LDQvCIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6Mjg3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIHBhY2thZ2Ugd2l0aCB1ZGViIHNwZWNpZmljIGZpZWxkICVzIgorbXNnc3RyICLQv9Cw0LrQtdGCICVzINGB0L4g0YHQv9C10YbQuNCw0LvRjNC90YvQvCB1ZGViLdC/0L7Qu9C10LwgJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjMwMCBzY3JpcHRzL2Rwa2ctc2NhbnNvdXJjZXMucGw6MzEzCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjgzNiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL1BhcnNlLnBtOjEzOAorIzogc2NyaXB0cy9EcGtnL0lQQy5wbToyMjkgc2NyaXB0cy9EcGtnL1NobGlicy9PYmpkdW1wLnBtOjE4MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3QgZm9yayBmb3IgJXMiCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LLRi9C/0L7Qu9C90LjRgtGMIGZvcmsg0LTQu9GPICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDozMDMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2hkaXIgZm9yIGR1IHRvIGAlcyciCittc2dzdHIgItCy0YvQt9C+0LIgY2hkaXIg0LTQu9GPIGR1INCyIMKrJXPCuyIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MzA1IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6ODQzCisjOiBzY3JpcHRzL0Rwa2cvSVBDLnBtOjI3MSBzY3JpcHRzL0Rwa2cvU2hsaWJzL0NwcGZpbHQucG06NTAKKyMsIGZ1enp5LCBwZXJsLWZvcm1hdAorI3wgbXNnaWQgInVuYWJsZSB0byBleGVjdXRlIGMrK2ZpbHQiCittc2dpZCAidW5hYmxlIHRvIGV4ZWN1dGUgJXMiCittc2dzdHIgItC90LXQstC+0LfQvNC+0LbQvdC+INCy0YvQv9C+0LvQvdC40YLRjCBjKytmaWx0IgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDozMTIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZHUgaW4gYCVzJyIKK21zZ3N0ciAi0LLRi9C30L7QsiBkdSDQsiDCqyVzwrsiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjMxNAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJkdSBnYXZlIHVuZXhwZWN0ZWQgb3V0cHV0IGAlcyciCittc2dzdHIgImR1INCy0YvQtNCw0LvQsCDQvdC10L7QttC40LTQsNC90L3Ri9C1INC00LDQvdC90YvQtSDCqyVzwrsiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjM0NworbXNnaWQgImNsb3NlIG9sZCBmaWxlcyBsaXN0IGZpbGUiCittc2dzdHIgItC30LDQutGA0YvRgtC40LUg0YHRgtCw0YDQvtCz0L4g0YTQsNC50LvQsCDRgSDRgdC/0LjRgdC60L7QvCDRhNCw0LnQu9C+0LIiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjM2OQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgb3BlbiBuZXcgb3V0cHV0IGNvbnRyb2wgZmlsZSBgJXMnIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC+0YLQutGA0YvRgtGMINC90L7QstGL0Lkg0LLRi9GF0L7QtNC90L7QuSDRg9C/0YDQsNCy0LvRj9GO0YnQuNC5INGE0LDQudC7ICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDozNzggc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo1MjMKKyM6IHNjcmlwdHMvRHBrZy9JbnRlcmZhY2UvU3RvcmFibGUucG06OTEKKyM6IHNjcmlwdHMvRHBrZy9JbnRlcmZhY2UvU3RvcmFibGUucG06MTE5IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MjkwCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NjA3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCBjbG9zZSAlcyIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQt9Cw0LrRgNGL0YLRjCAlcyIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MzgwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCBpbnN0YWxsIG91dHB1dCBjb250cm9sIGZpbGUgYCVzJyIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRg9GB0YLQsNC90L7QstC40YLRjCDQvdC+0LLRi9C5INCy0YvRhdC+0LTQvdC+0Lkg0YPQv9GA0LDQstC70Y/RjtGJ0LjQuSDRhNCw0LnQuyDCqyVzwrsiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsOjUxCittc2dpZCAiIgorIlxuIgorIkNvcHlyaWdodCAoQykgMjAwNyBSYXBoYWVsIEhlcnR6b2cuXG4iCittc2dzdHIgIiIKKyJcbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDcgUmFwaGFlbCBIZXJ0em9nLlxuIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbDo2MworIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dXG4iCisiXG4iCisiT3B0aW9uczpcbiIKKyIgIC1wPHBhY2thZ2U+ICAgICAgICAgICAgICBnZW5lcmF0ZSBzeW1ib2xzIGZpbGUgZm9yIHBhY2thZ2UuXG4iCisiICAtUDxwYWNrYWdlYnVpbGRkaXI+ICAgICAgdGVtcG9yYXJ5IGJ1aWxkIGRpciBpbnN0ZWFkIG9mIGRlYmlhbi90bXAuXG4iCisiICAtZTxsaWJyYXJ5PiAgICAgICAgICAgICAgZXhwbGljaXRseSBsaXN0IGxpYnJhcmllcyB0byBzY2FuLlxuIgorIiAgLXY8dmVyc2lvbj4gICAgICAgICAgICAgIHZlcnNpb24gb2YgdGhlIHBhY2thZ2VzIChkZWZhdWx0cyB0b1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHZlcnNpb24gZXh0cmFjdGVkIGZyb20gZGViaWFuL2NoYW5nZWxvZykuXG4iCisiICAtYzxsZXZlbD4gICAgICAgICAgICAgICAgY29tcGFyZSBnZW5lcmF0ZWQgc3ltYm9scyBmaWxlIHdpdGggdGhlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVmZXJlbmNlIHRlbXBsYXRlIGluIHRoZSBkZWJpYW4gZGlyZWN0b3J5XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgYW5kIGZhaWwgaWYgZGlmZmVyZW5jZSBpcyB0b28gaW1wb3J0YW50XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgKGxldmVsIGdvZXMgZnJvbSAwIGZvciBubyBjaGVjaywgdG8gNFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvciBhbGwgY2hlY2tzKS4gQnkgZGVmYXVsdCBjaGVja3MgYXRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXZlbCAxLlxuIgorIiAgLXEgICAgICAgICAgICAgICAgICAgICAgIGtlZXAgcXVpZXQgYW5kIG5ldmVyIGVtaXQgYW55IHdhcm5pbmdzIG9yXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2VuZXJhdGUgYSBkaWZmIGJldHdlZW4gZ2VuZXJhdGVkIHN5bWJvbHNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxlIGFuZCB0aGUgcmVmZXJlbmNlIHRlbXBsYXRlLlxuIgorIiAgLUk8ZmlsZT4gICAgICAgICAgICAgICAgIGZvcmNlIHVzYWdlIG9mIDxmaWxlPiBhcyByZWZlcmVuY2Ugc3ltYm9sc1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGUgaW5zdGVhZCBvZiB0aGUgZGVmYXVsdCBmaWxlLlxuIgorIiAgLU88ZmlsZT4gICAgICAgICAgICAgICAgIHdyaXRlIHRvIDxmaWxlPiwgbm90IC4uLi9ERUJJQU4vc3ltYm9scy5cbiIKKyIgIC1PICAgICAgICAgICAgICAgICAgICAgICB3cml0ZSB0byBzdGRvdXQsIG5vdCAuLi4vREVCSUFOL3N5bWJvbHMuXG4iCisiICAtdCAgICAgICAgICAgICAgICAgICAgICAgd3JpdGUgaW4gdGVtcGxhdGUgbW9kZSAodGFncyBhcmUgbm90XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvY2Vzc2VkIGFuZCBpbmNsdWRlZCBpbiBvdXRwdXQpLlxuIgorIiAgLVYgICAgICAgICAgICAgICAgICAgICAgIHZlcmJvc2Ugb3V0cHV0LiBXcml0ZSBkZXByZWNhdGVkIHN5bWJvbHMgYW5kXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgcGF0dGVybiBtYXRjaGluZyBzeW1ib2xzIGFzIGNvbW1lbnRzXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgKGluIHRlbXBsYXRlIG1vZGUgb25seSkuXG4iCisiICAtYTxhcmNoPiAgICAgICAgICAgICAgICAgYXNzdW1lIDxhcmNoPiBhcyBob3N0IGFyY2hpdGVjdHVyZSB3aGVuICIKKyJwcm9jZXNzaW5nXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgc3ltYm9sIGZpbGVzLlxuIgorIiAgLWQgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXkgZGVidWcgaW5mb3JtYXRpb24gZHVyaW5nIHdvcmsuXG4iCisiICAtaCwgLS1oZWxwICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgICAgICAtLXZlcnNpb24gICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorbXNnc3RyICIiCisi0JjRgdC/0L7Qu9GM0LfQvtCy0LDQvdC40LU6ICVzIFs80L/QsNGA0LDQvNC10YLRgD4gLi4uXVxuIgorIlxuIgorItCf0LDRgNCw0LzQtdGC0YDRizpcbiIKKyIgIC1wPNC/0LDQutC10YI+ICAgICAgICAgICAgICAgINCz0LXQvdC10YDQuNGA0L7QstCw0YLRjCDRhNCw0LnQuyBzeW1ib2xzINC00LvRjyDQt9Cw0LTQsNC90L3QvtCz0L4g0L/QsNC60LXRgtCwLlxuIgorIiAgLVA80LrQsNGCLtGB0LHQvtGA0LrQuC3Qv9Cw0LrQtdGC0LA+ICAgINCy0YDQtdC80LXQvdC90YvQuSDQutCw0YLQsNC70L7QsyDRgdCx0L7RgNC60Lgg0LLQvNC10YHRgtC+IGRlYmlhbi90bXAuXG4iCisiICAtZTzQsdC40LHQu9C40L7RgtC10LrQsD4gICAgICAgICAgINGP0LLQvdC+INC30LDQtNCw0YLRjCDRgdC60LDQvdC40YDRg9C10LzRi9C1INCx0LjQsdC70LjQvtGC0LXQutC4LlxuIgorIiAgLXY80LLQtdGA0YHQuNGPPiAgICAgICAgICAgICAgINCy0LXRgNGB0LjRjyDQv9Cw0LrQtdGC0L7QsiAo0L/QviDRg9C80L7Qu9GH0LDQvdC40Y5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICDQstC10YDRgdC40Y8g0LjQt9Cy0LvQtdC60LDQtdGC0YHRjyDQuNC3IGRlYmlhbi9jaGFuZ2Vsb2cpLlxuIgorIiAgLWM80YPRgNC+0LLQtdC90Yw+ICAgICAgICAgICAgICDRgdGA0LDQstC90LjRgtGMINGB0LPQtdC90LXRgNC40YDQvtCy0LDQvdC90YvQuSDRhNCw0LnQuyBzeW1ib2xzINGBXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAg0Y3RgtCw0LvQvtC90L3Ri9C8INGE0LDQudC70L7QvCDQsiDQutCw0YLQsNC70L7Qs9C1IGRlYmlhbi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICDQl9Cw0LLQtdGA0YjQsNC10YLRgdGPINGBINC+0YjQuNCx0LrQvtC5LCDQtdGB0LvQuCDRgNCw0LfQvdC40YbQsCDQvtGH0LXQvdGMINCy0LXQu9C40LrQsFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICjRg9GA0L7QstC90LXQvCDQt9Cw0LTQsNGR0YLRgdGPINGB0YLQtdC/0LXQvdGMINC/0YDQvtCy0LXRgNC60Lg6XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAg0L7RgiAwIC0tINC90LUg0LLRi9C/0L7Qu9C90Y/RgtGMINC/0YDQvtCy0LXRgNC60YMsINC00L4gNCAtLSDQstGB0LUgIgorItC/0YDQvtCy0LXRgNC60LgpLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgINCf0L4g0YPQvNC+0LvRh9Cw0L3QuNGOINGD0YDQvtCy0LXQvdGMINGA0LDQstC10L0gMS5cbiIKKyIgIC1xICAgICAgICAgICAgICAgICAgICAgICDQvdC1INC/0L7QutCw0LfRi9Cy0LDRgtGMINGB0L7QvtCx0YnQtdC90LjRjywg0L/RgNC10LTRg9C/0YDQtdC20LTQtdC90LjRjyDQuNC70LhcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICDQvtGC0LvQuNGH0LjRjyDQvNC10LbQtNGDINCz0LXQvdC10YDQuNGA0YPQtdC80YvQvNC4INGE0LDQudC70LDQvNC4INGB0LjQvNCy0L7Qu9C+0LJcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICDQuCDRjdGC0LDQu9C+0L3QvdGL0Lwg0YjQsNCx0LvQvtC90L7QvC5cbiIKKyIgIC1JPNGE0LDQudC7PiAgICAgICAgICAgICAgICAg0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMIDzRhNCw0LnQuz4g0LIg0LrQsNGH0LXRgdGC0LLQtSDRjdGC0LDQu9C+0L3QvdC+0LPQviDRhNCw0LnQu9CwXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAg0YHQuNC80LLQvtC70L7QsiDQstC80LXRgdGC0L4g0YTQsNC50LvQsCDQv9C+INGD0LzQvtC70YfQsNC90LjRji5cbiIKKyIgIC1PPNGE0LDQudC7PiAgICAgICAgICAgICAgICAg0LfQsNC/0LjRgdGL0LLQsNGC0Ywg0LIgPNGE0LDQudC7Piwg0LAg0L3QtSDQsiAuLi4vREVCSUFOL3N5bWJvbHMuXG4iCisiICAtTyAgICAgICAgICAgICAgICAgICAgICAg0LfQsNC/0LjRgdGL0LLQsNGC0Ywg0LIg0YHRgtCw0L3QtNCw0YDRgtC90YvQuSDQstGL0LLQvtC0LFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgINCwINC90LUg0LIgLi4uL0RFQklBTi9zeW1ib2xzLlxuIgorIiAgLXQgICAgICAgICAgICAgICAgICAgICAgINC30LDQv9C40YHRi9Cy0LDRgtGMINCyINGA0LXQttC40LzQtSDRiNCw0LHQu9C+0L3QsCAo0LzQtdGC0LrQuCDQvdC1XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAg0L7QsdGA0LDQsdCw0YLRi9Cy0LDRjtGC0YHRjyDQuCDQvdC1INCy0LrQu9GO0YfQsNGO0YLRgdGPINCyINCy0YvQstC+0LQpLlxuIgorIiAgLVYgICAgICAgICAgICAgICAgICAgICAgINC/0L7QtNGA0L7QsdC90YvQuSDQstGL0LLQvtC0LiDQl9Cw0L/QuNGB0YvQstCw0YLRjCDQvdC10LbQtdC70LDRgtC10LvRjNC90YvQtSAiCisi0YHQuNC80LLQvtC70YtcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICDQuCDRgdC40LzQstC+0LvRiyDRgdC+0LLQv9Cw0LTQsNGO0YnQuNC1INGBINGI0LDQsdC70L7QvdC+0Lwg0LrQsNC6INC60L7QvNC80LXQvdGC0LDRgNC40LhcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAo0YLQvtC70YzQutC+INCyINGA0LXQttC40LzQtSDRiNCw0LHQu9C+0L3QsCkuXG4iCisiICAtYTzQsNGA0YUuPiAgICAgICAgICAgICAgICAg0L/RgNC10LTQv9C+0LvQsNCz0LDRgtGMIDzQsNGA0YUuPiDQsiDQutCw0YfQtdGB0YLQstC1INCw0YDRhdC40YLQtdC60YLRg9GA0Ysg0YPQt9C70LBcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICDQv9GA0Lgg0L7QsdGA0LDQsdC+0YLQutC1INGB0LjQvNCy0L7Qu9GM0L3Ri9GFINGE0LDQudC70L7Qsi5cbiIKKyIgIC1kICAgICAgICAgICAgICAgICAgICAgICDQstGL0LLQvtC00LjRgtGMINC+0YLQu9Cw0LTQvtGH0L3Rg9GOINC40L3RhNC+0YDQvNCw0YbQuNGOINCy0L4g0LLRgNC10LzRjyDRgNCw0LHQvtGC0YsuXG4iCisiICAtaCwgLS1oZWxwICAgICAgICAgICAgICAg0L/QvtC60LDQt9Cw0YLRjCDRjdGC0L4g0YHQvtC+0LHRidC10L3QuNC1LlxuIgorIiAgICAgIC0tdmVyc2lvbiAgICAgICAgICAgINC/0L7QutCw0LfQsNGC0Ywg0LLQtdGA0YHQuNGOLlxuIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbDoxOTQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiQ2FuJ3QgcmVhZCBkaXJlY3RvcnkgJXM6ICVzIgorbXNnc3RyICLQndC1INGD0LTQsNC70L7RgdGMINC/0YDQvtGH0LjRgtCw0YLRjCDQutCw0YLQsNC70L7QsyAlczogJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsOjIwOQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJPYmpkdW1wIGNvdWxkbid0IHBhcnNlICVzXG4iCittc2dzdHIgItCd0LUg0YPQtNCw0LvQvtGB0Ywg0L/RgNC+0LDQvdCw0LvQuNC30LjRgNC+0LLQsNGC0Ywg0LLRi9Cy0L7QtCBPYmpkdW1wICVzXG4iCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsOjIyNworbXNnaWQgIjxzdGFuZGFyZCBvdXRwdXQ+IgorbXNnc3RyICI80YHRgtCw0L3QtNCw0YDRgtC90YvQuSDQstGL0LLQvtC0PiIKKworIzogc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGw6MjU1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIm5ldyBsaWJyYXJpZXMgYXBwZWFyZWQgaW4gdGhlIHN5bWJvbHMgZmlsZTogJXMiCittc2dzdHIgItC/0L7Rj9Cy0LjQu9C40YHRjCDQvdC+0LLRi9C1INCx0LjQsdC70LjQvtGC0LXQutC4INCyINGE0LDQudC70LUgc3ltYm9sczogJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsOjI2MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJzb21lIGxpYnJhcmllcyBkaXNhcHBlYXJlZCBpbiB0aGUgc3ltYm9scyBmaWxlOiAlcyIKK21zZ3N0ciAi0L3QtdC60L7RgtC+0YDRi9C1INCx0LjQsdC70LjQvtGC0LXQutC4INC40YHRh9C10LfQu9C4INC40Lcg0YTQsNC50LvQsCBzeW1ib2xzOiAlcyIKKworIzogc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGw6MjY1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInNvbWUgbmV3IHN5bWJvbHMgYXBwZWFyZWQgaW4gdGhlIHN5bWJvbHMgZmlsZTogJXMiCittc2dzdHIgItC/0L7Rj9Cy0LjQu9C+0YHRjCDQvdC10YHQutC+0LvRjNC60L4g0L3QvtCy0YvRhSDRgdC40LzQstC+0LvQvtCyINCyINGE0LDQudC70LUgc3ltYm9sczogJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsOjI2NiBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbDoyNzEKK21zZ2lkICJzZWUgZGlmZiBvdXRwdXQgYmVsb3ciCittc2dzdHIgItGB0LzQvtGC0YDQuNGC0LUg0LLRi9Cy0L7QtCBkaWZmINC90LjQttC1IgorCisjOiBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbDoyNzAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAic29tZSBzeW1ib2xzIG9yIHBhdHRlcm5zIGRpc2FwcGVhcmVkIGluIHRoZSBzeW1ib2xzIGZpbGU6ICVzIgorbXNnc3RyICLQvdC10LrQvtGC0L7RgNGL0LUg0YHQuNC80LLQvtC70Ysg0LjQu9C4INGI0LDQsdC70L7QvdGLINC40YHRh9C10LfQu9C4INC40Lcg0YTQsNC50LvQsCBzeW1ib2xzOiAlcyIKKworIzogc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGw6MjkxCittc2dpZCAidGhlIGdlbmVyYXRlZCBzeW1ib2xzIGZpbGUgaXMgZW1wdHkiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGw6MjkzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGRvZXNuJ3QgbWF0Y2ggY29tcGxldGVseSAlcyIKK21zZ3N0ciAiJXMg0YHQvtCy0L/QsNC00LDQtdGCINC90LUg0L/QvtC70L3QvtGB0YLRjNGOINGBICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbDoyOTYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibm8gZGViaWFuL3N5bWJvbHMgZmlsZSB1c2VkIGFzIGJhc2lzIGZvciBnZW5lcmF0aW5nICVzIgorbXNnc3RyICLRhNCw0LnQuyBkZWJpYW4vc3ltYm9scyDQvdC1INC40YHQv9C+0LvRjNC30YPQtdGC0YHRjyDQsiDQutCw0YfQtdGB0YLQstC1INC+0YHQvdC+0LLRiyDQtNC70Y8g0LPQtdC90LXRgNCw0YbQuNC4ICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctbWVyZ2VjaGFuZ2Vsb2dzLnBsOjU1Cittc2dpZCAiQ29weXJpZ2h0IChDKSAyMDA5LTIwMTAgUmFwaGFlbCBIZXJ0em9nLiIKK21zZ3N0ciAiQ29weXJpZ2h0IChDKSAyMDA5LTIwMTAgUmFwaGFlbCBIZXJ0em9nLiIKKworIzogc2NyaXB0cy9kcGtnLW1lcmdlY2hhbmdlbG9ncy5wbDo1OAorbXNnaWQgIiIKKyJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAyIG9yXG4iCisibGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuXG4iCittc2dzdHIgIiIKKyLQrdGC0L4g0YHQstC+0LHQvtC00L3QvtC1INC/0YDQvtCz0YDQsNC80LzQvdC+0LUg0L7QsdC10YHQv9C10YfQtdC90LjQtS4g0KHQvC4g0YPRgdC70L7QstC40Y8g0YDQsNGB0L/RgNC+0YHRgtGA0LDQvdC10L3QuNGPINCyXG4iCisi0KPQvdC40LLQtdGA0YHQsNC70YzQvdC+0Lkg0L7QsdGJ0LXRgdGC0LLQtdC90L3QvtC5INC70LjRhtC10L3Qt9C40LggR05VINCy0LXRgNGB0LjQuCAyINC40LvQuCDQsdC+0LvQtdC1INC/0L7Qt9C00L3QtdC5LlxuIgorItCd0JjQmtCQ0JrQmNCVINCz0LDRgNCw0L3RgtC40Lgg0L3QtSDQv9GA0LXQtNC+0YHRgtCw0LLQu9GP0Y7RgtGB0Y8uXG4iCisKKyM6IHNjcmlwdHMvZHBrZy1tZXJnZWNoYW5nZWxvZ3MucGw6NjUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSA8b2xkPiA8bmV3LWE+IDxuZXctYj4gWzxvdXQ+XVxuIgorIlxuIgorIk9wdGlvbnM6XG4iCisiICAtLW1lcmdlLXByZXJlbGVhc2VzLCAtbSAgbWVyZ2UgcHJlLXJlbGVhc2VzIHRvZ2V0aGVyLCBpZ25vcmVzIGV2ZXJ5dGhpbmdcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBhZnRlciB0aGUgbGFzdCAnficgaW4gdGhlIHZlcnNpb24uXG4iCisiICAtLWhlbHAsIC1oLCAtPyAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgIC0tdmVyc2lvbiAgICAgICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorbXNnc3RyICIiCisi0JjRgdC/0L7Qu9GM0LfQvtCy0LDQvdC40LU6ICVzIFs80L/QsNGA0LDQvNC10YLRgD4uLi5dIDzRgdGC0LDRgNGL0Lk+IDzQvdC+0LLRi9C5LdCwPiA80L3QvtCy0YvQuS3QsT4gWzzQstGL0LLQvtC0Pl1cbiIKKyJcbiIKKyLQn9Cw0YDQsNC80LXRgtGA0Ys6XG4iCisiICAtLW1lcmdlLXByZXJlbGVhc2VzLCAtbSAg0L7QsdGK0LXQtNC40L3QuNGC0Ywg0L/RgNC10LQt0LLRi9C/0YPRgdC60Lgg0LLQvNC10YHRgtC1LCDQuNCz0L3QvtGA0LjRgNC+0LLQsNGC0Ywg0LLRgdGRXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAg0L/QvtGB0LvQtSDQv9C+0YHQu9C10LTQvdC10LPQviDCq37CuyDQsiDQstC10YDRgdC40LguXG4iCisiICAtaCwgLS1oZWxwIC0/ICAgICAgICAgICAg0L/QvtC60LDQt9Cw0YLRjCDRjdGC0L4g0YHQvtC+0LHRidC10L3QuNC1LlxuIgorIiAgICAgIC0tdmVyc2lvbiAgICAgICAgICAgINC/0L7QutCw0LfQsNGC0Ywg0LLQtdGA0YHQuNGOLlxuIgorCisjOiBzY3JpcHRzL2Rwa2ctbWVyZ2VjaGFuZ2Vsb2dzLnBsOjEyOSBzY3JpcHRzL2Rwa2ctbWVyZ2VjaGFuZ2Vsb2dzLnBsOjEzMQorIzogc2NyaXB0cy9EcGtnL0NvbXByZXNzaW9uL0ZpbGVIYW5kbGUucG06Mzg1CisjOiBzY3JpcHRzL0Rwa2cvSW50ZXJmYWNlL1N0b3JhYmxlLnBtOjExNSBzY3JpcHRzL0Rwa2cvSVBDLnBtOjI1NQorIzogc2NyaXB0cy9EcGtnL0lQQy5wbToyNjMgc2NyaXB0cy9EcGtnL1NvdXJjZS9GdW5jdGlvbnMucG06NzgKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbTo0NDcgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOjU1MAorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjIxNyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NTMwCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NjA1CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06MTQyCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06MTUxCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06MTU3CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06MjI2CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06MjM0CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06MzQxCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06MzUxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCB3cml0ZSAlcyIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQt9Cw0L/QuNGB0LDRgtGMICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctbmFtZS5wbDo1MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJVc2FnZTogJXMgWzxvcHRpb24+Li4uXSA8ZmlsZT4uLi5cbiIKK21zZ3N0ciAi0JjRgdC/0L7Qu9GM0LfQvtCy0LDQvdC40LU6ICVzIFs80L/QsNGA0LDQvNC10YLRgD4uLi5dIDzRhNCw0LnQuz4uLi5cbiIKKworIzogc2NyaXB0cy9kcGtnLW5hbWUucGw6NTMKK21zZ2lkICIiCisiXG4iCisiT3B0aW9uczpcbiIKKyIgIC1hLCAtLW5vLWFyY2hpdGVjdHVyZSAgICBubyBhcmNoaXRlY3R1cmUgcGFydCBpbiBmaWxlbmFtZS5cbiIKKyIgIC1vLCAtLW92ZXJ3cml0ZSAgICAgICAgICBvdmVyd3JpdGUgaWYgZmlsZSBleGlzdHMuXG4iCisiICAtaywgLS1zeW1saW5rICAgICAgICAgICAgZG9uJ3QgY3JlYXRlIGEgbmV3IGZpbGUsIGJ1dCBhIHN5bWxpbmsuXG4iCisiICAtcywgLS1zdWJkaXIgW2Rpcl0gICAgICAgbW92ZSBmaWxlIGludG8gc3ViZGlyICh1c2Ugd2l0aCBjYXJlKS5cbiIKKyIgIC1jLCAtLWNyZWF0ZS1kaXIgICAgICAgICBjcmVhdGUgdGFyZ2V0IGRpciBpZiBub3QgdGhlcmUgKHVzZSB3aXRoIGNhcmUpLlxuIgorIiAgLWgsIC0taGVscCAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtdiwgLS12ZXJzaW9uICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKKyJmaWxlLmRlYiBjaGFuZ2VzIHRvIDxwYWNrYWdlPl88dmVyc2lvbj5fPGFyY2hpdGVjdHVyZT4uPHBhY2thZ2VfdHlwZT5cbiIKKyJhY2NvcmRpbmcgdG8gdGhlICd1bmRlcnNjb3JlcyBjb252ZW50aW9uJy5cbiIKK21zZ3N0ciAiIgorIlxuIgorItCf0LDRgNCw0LzQtdGC0YDRizpcbiIKKyIgIC1hLCAtLW5vLWFyY2hpdGVjdHVyZSAgINC40LzRjyDRhNCw0LnQu9CwINCx0LXQtyDQsNGA0YXQuNGC0LXQutGC0YPRgNC90L7QuSDRh9Cw0YHRgtC4LlxuIgorIiAgLW8sIC0tb3ZlcndyaXRlICAgICAgICAg0L/QtdGA0LXQt9Cw0L/QuNGB0YvQstCw0YLRjCDRgdGD0YnQtdGB0YLQstGD0Y7RidC40Lkg0YTQsNC50LsuXG4iCisiICAtaywgLS1zeW1saW5rICAgICAgICAgICDQvdC1INGB0L7Qt9C00LDQstCw0YLRjCDQvdC+0LLRi9C5INGE0LDQudC7LCDQsCDRgdC+0LfQtNCw0LLQsNGC0YxcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgINGB0LjQvNCy0L7Qu9GM0L3Rg9GOINGB0YHRi9C70LrRgy5cbiIKKyIgIC1zLCAtLXN1YmRpciBb0LrQsNGCXSAgICAgINC/0LXRgNC10LzQtdGB0YLQuNGC0Ywg0YTQsNC50Lsg0LIg0L/QvtC00LrQsNGC0LDQu9C+0LMgKNC40YHQvy4g0L7RgdGC0L7RgNC+0LbQvdC+KS5cbiIKKyIgIC1jLCAtLWNyZWF0ZS1kaXIgICAgICAgINGB0L7Qt9C00LDRgtGMINC60LDRgtCw0LvQvtCzINGG0LXQu9C4LCDQtdGB0LvQuCDQtdCz0L4g0L3QtdGCICjQuNGB0L8uICIKKyLQvtGB0YLQvtGA0L7QttC90L4pLlxuIgorIiAgLWgsIC0taGVscCAgICAgICAgICAgICAg0L/QvtC60LDQt9Cw0YLRjCDRjdGC0L4g0YHQvtC+0LHRidC10L3QuNC1LlxuIgorIiAgLXYsIC0tdmVyc2lvbiAgICAgICAgICAg0L/QvtC60LDQt9Cw0YLRjCDQstC10YDRgdC40Y4uXG4iCisiXG4iCisi0J3QsNC30LLQsNC90LjQtSDRhNCw0LnQuy5kZWIg0LjQt9C80LXQvdGP0LXRgtGB0Y8g0L3QsCA80L/QsNC60LXRgj5fPNCy0LXRgNGB0LjRjz5fPNCw0YDRhdC40YLQtdC60YLRg9GA0LA+LjzRgtC40L/QsMKtIgorIl/Qv9Cw0LrQtdGC0LA+XG4iCisi0YHQvtCz0LvQsNGB0L3QviDCq9GB0L7Qs9C70LDRiNC10L3QuNGOINC+INC/0L7QtNGH0ZHRgNC60LjQstCw0L3QuNGP0YXCuy5cbiIKKworIzogc2NyaXB0cy9kcGtnLW5hbWUucGw6NzUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IGZpbmQgJyVzJyIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQvdCw0LnRgtC4ICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctbmFtZS5wbDo5NiBzY3JpcHRzL0Rwa2cvQXJjaC5wbToxMzggc2NyaXB0cy9EcGtnL0FyY2gucG06MTU3CisjOiBzY3JpcHRzL0Rwa2cvQXJjaC5wbToxNzYgc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9QYXJzZS5wbToxNDIKKyM6IHNjcmlwdHMvRHBrZy9JUEMucG06MjQ3IHNjcmlwdHMvRHBrZy9TaGxpYnMucG06NzgKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbToxOTMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IG9wZW4gJXMiCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L7RgtC60YDRi9GC0YwgJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1uYW1lLnBsOjk4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImJpbmFyeSBjb250cm9sIGZpbGUgJXMiCittc2dzdHIgItC00LLQvtC40YfQvdGL0Lkg0YTQsNC50Lsg0YPQv9GA0LDQstC70LXQvdC40Y8gJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1uYW1lLnBsOjExMQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJhc3N1bWluZyBhcmNoaXRlY3R1cmUgJyVzJyBmb3IgJyVzJyIKK21zZ3N0ciAi0L/RgNC10LTQv9C+0LvQsNCz0LDQtdGC0YHRjyDQsNGA0YXQuNGC0LXQutGC0YPRgNCwIMKrJXPCuyDQtNC70Y8gwqslc8K7IgorCisjOiBzY3JpcHRzL2Rwa2ctbmFtZS5wbDoxMzMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiYmFkIHBhY2thZ2UgY29udHJvbCBpbmZvcm1hdGlvbiBmb3IgJyVzJyIKK21zZ3N0ciAi0L3QtdC/0YDQsNCy0LjQu9GM0L3QsNGPINGD0L/RgNCw0LLQu9GP0Y7RidCw0Y8g0LjQvdGE0L7RgNC80LDRhtC40Y8g0L/QsNC60LXRgtCwIMKrJXPCuyIKKworIzogc2NyaXB0cy9kcGtnLW5hbWUucGw6MTQ5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImFzc3VtaW5nIHNlY3Rpb24gJyVzJyBmb3IgJyVzJyIKK21zZ3N0ciAi0L/RgNC10LTQv9C+0LvQsNCz0LDQtdGC0YHRjyDRgNCw0LfQtNC10Lsgwqslc8K7INC00LvRjyDCqyVzwrsiCisKKyM6IHNjcmlwdHMvZHBrZy1uYW1lLnBsOjE3NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJubyBQYWNrYWdlIGZpZWxkIGZvdW5kIGluICclcycsIHNraXBwaW5nIGl0IgorbXNnc3RyICLQvdC10YIg0L/QvtC70Y8gUGFja2FnZSDQsiDCqyVzwrssINC/0YDQvtC/0YPRgdC60LDQtdGC0YHRjyIKKworIzogc2NyaXB0cy9kcGtnLW5hbWUucGw6MTg3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNyZWF0ZWQgZGlyZWN0b3J5ICclcyciCittc2dzdHIgItGB0L7Qt9C00LDQvSDQutCw0YLQsNC70L7QsyDCqyVzwrsiCisKKyM6IHNjcmlwdHMvZHBrZy1uYW1lLnBsOjE4OQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3QgY3JlYXRlIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINGB0L7Qt9C00LDRgtGMINC60LDRgtCw0LvQvtCzIMKrJXPCuyIKKworIzogc2NyaXB0cy9kcGtnLW5hbWUucGw6MTkyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIm5vIHN1Y2ggZGlyZWN0b3J5ICclcycsIHRyeSAtLWNyZWF0ZS1kaXIgKC1jKSBvcHRpb24iCittc2dzdHIgItC60LDRgtCw0LvQvtCzIMKrJXPCuyDQvdC1INGB0YPRidC10YHRgtCy0YPQtdGCLCDQv9C+0L/RgNC+0LHRg9C50YLQtSDQv9Cw0YDQsNC80LXRgtGAIC0tY3JlYXRlLWRpciAoLWMpIgorCisjOiBzY3JpcHRzL2Rwa2ctbmFtZS5wbDoyMDcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAic2tpcHBpbmcgJyVzJyIKK21zZ3N0ciAi0L/RgNC+0L/Rg9GB0LrQsNC10YLRgdGPIMKrJXPCuyIKKworIzogc2NyaXB0cy9kcGtnLW5hbWUucGw6MjA5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCBtb3ZlICclcycgdG8gZXhpc3RpbmcgZmlsZSIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQv9C10YDQtdC80LXRgdGC0LjRgtGMIMKrJXPCuyDQsiDRgdGD0YnQtdGB0YLQstGD0Y7RidC40Lkg0YTQsNC50LsiCisKKyM6IHNjcmlwdHMvZHBrZy1uYW1lLnBsOjIxMQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJtb3ZlZCAnJXMnIHRvICclcyciCittc2dzdHIgIsKrJXPCuyDQv9C10YDQtdC80LXRidGR0L0g0LIgwqslc8K7IgorCisjOiBzY3JpcHRzL2Rwa2ctbmFtZS5wbDoyMTMKK21zZ2lkICJta2RpciBjYW4gYmUgdXNlZCB0byBjcmVhdGUgZGlyZWN0b3J5IgorbXNnc3RyICLQtNC70Y8g0YHQvtC30LTQsNC90LjRjyDQutCw0YLQsNC70L7Qs9CwINC80L7QttC90L4g0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMIG1rZGlyIgorCisjOiBzY3JpcHRzL2Rwa2ctbmFtZS5wbDoyMTgKK21zZ2lkICJuZWVkIGF0IGxlYXN0IGEgZmlsZW5hbWUiCittc2dzdHIgItGC0YDQtdCx0YPQtdGC0YHRjyDRhdC+0YLRjyDQsdGLINC+0LTQvdC+INC40LzRjyDRhNCw0LnQu9CwIgorCisjOiBzY3JpcHRzL2Rwa2ctcGFyc2VjaGFuZ2Vsb2cucGw6MzMKK21zZ2lkICIiCisiXG4iCisiQ29weXJpZ2h0IChDKSAxOTk2IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMSBXaWNoZXJ0IEFra2VybWFuIgorbXNnc3RyICIiCisiXG4iCisiQ29weXJpZ2h0IChDKSAxOTk2IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMSBXaWNoZXJ0IEFra2VybWFuIgorCisjOiBzY3JpcHRzL2Rwa2ctcGFyc2VjaGFuZ2Vsb2cucGw6NDUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXVxuIgorIlxuIgorIk9wdGlvbnM6XG4iCisiICAtbDxjaGFuZ2Vsb2dmaWxlPiAgICAgICAgZ2V0IHBlci12ZXJzaW9uIGluZm8gZnJvbSB0aGlzIGZpbGUuXG4iCisiICAtRjxjaGFuZ2Vsb2dmb3JtYXQ+ICAgICAgZm9yY2UgY2hhbmdlIGxvZyBmb3JtYXQuXG4iCisiICAtTDxsaWJkaXI+ICAgICAgICAgICAgICAgbG9vayBmb3IgY2hhbmdlIGxvZyBwYXJzZXJzIGluIDxsaWJkaXI+LlxuIgorIiAgLWgsIC0taGVscCAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAgICAgLS12ZXJzaW9uICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKKyJwYXJzZXIgb3B0aW9uczpcbiIKKyIgICAgLS1mb3JtYXQgPG91dHB1dGZvcm1hdD4gICAgIHNlZSBtYW4gcGFnZSBmb3IgbGlzdCBvZiBhdmFpbGFibGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG91dHB1dCBmb3JtYXRzLCBkZWZhdWx0cyB0byAnZHBrZydcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvciBjb21wYXRpYmlsaXR5IHdpdGggZHBrZy1kZXZcbiIKKyIgICAgLS1zaW5jZSA8dmVyc2lvbj4sICAgICAgICAgIGluY2x1ZGUgYWxsIGNoYW5nZXMgbGF0ZXIgdGhhbiB2ZXJzaW9uXG4iCisiICAgICAgLXM8dmVyc2lvbj4sIC12PHZlcnNpb24+XG4iCisiICAgIC0tdW50aWwgPHZlcnNpb24+LCAgICAgICAgICBpbmNsdWRlIGFsbCBjaGFuZ2VzIGVhcmxpZXIgdGhhbiB2ZXJzaW9uXG4iCisiICAgICAgLXU8dmVyc2lvbj5cbiIKKyIgICAgLS1mcm9tIDx2ZXJzaW9uPiwgICAgICAgICAgIGluY2x1ZGUgYWxsIGNoYW5nZXMgZXF1YWwgb3IgbGF0ZXJcbiIKKyIgICAgICAtZjx2ZXJzaW9uPiAgICAgICAgICAgICAgIHRoYW4gdmVyc2lvblxuIgorIiAgICAtLXRvIDx2ZXJzaW9uPiwgLXQ8dmVyc2lvbj4gaW5jbHVkZSBhbGwgY2hhbmdlcyB1cCB0byBvciBlcXVhbFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhhbiB2ZXJzaW9uXG4iCisiICAgIC0tY291bnQgPG51bWJlcj4sICAgICAgICAgICBpbmNsdWRlIDxudW1iZXI+IGVudHJpZXMgZnJvbSB0aGUgdG9wXG4iCisiICAgICAgLWM8bnVtYmVyPiwgLW48bnVtYmVyPiAgICAob3IgdGhlIHRhaWwgaWYgPG51bWJlcj4gaXMgbG93ZXIgdGhhbiAwKVxuIgorIiAgICAtLW9mZnNldCA8bnVtYmVyPiwgICAgICAgICAgY2hhbmdlIHRoZSBzdGFydGluZyBwb2ludCBmb3IgLS1jb3VudCxcbiIKKyIgICAgICAtbzxudW1iZXI+ICAgICAgICAgICAgICAgIGNvdW50ZWQgZnJvbSB0aGUgdG9wIChvciB0aGUgdGFpbCBpZlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG51bWJlcj4gaXMgbG93ZXIgdGhhbiAwKVxuIgorIiAgICAtLWFsbCAgICAgICAgICAgICAgICAgICAgICAgaW5jbHVkZSBhbGwgY2hhbmdlc1xuIgorbXNnc3RyICIiCisi0JjRgdC/0L7Qu9GM0LfQvtCy0LDQvdC40LU6ICVzIFs80L/QsNGA0LDQvNC10YLRgD4gLi4uXVxuIgorIlxuIgorItCf0LDRgNCw0LzQtdGC0YDRizpcbiIKKyIgIC1sPNGE0LDQudC7LdC40LfQvNC10L3QtdC90LjQuT4gICAgICAg0LHRgNCw0YLRjCDRgdC/0LjRgdC+0Log0LjQt9C80LXQvdC10L3QuNC5INC40Lcg0YPQutCw0LfQsNC90L3QvtCz0L4g0YTQsNC50LvQsFxuIgorIiAgLUY80YTQvtGA0LzQsNGCLdC40LfQvC4+ICAgICAgICAgINC40LfQvNC10L3QuNGC0Ywg0YTQvtGA0LzQsNGCINGE0LDQudC70LAg0LjQt9C80LXQvdC10L3QuNC5XG4iCisiICAtTDzQutCw0YItbGliPiAgICAgICAgICAgICAg0LjRgdC60LDRgtGMINCw0L3QsNC70LjQt9Cw0YLQvtGA0Ysg0YTQsNC50LvQsCDQuNC30LzQtdC90LXQvdC40Lkg0LIgPNC60LDRgi1saWI+XG4iCisiICAtaCwgLS1oZWxwICAgICAgICAgICAgICAg0L/QvtC60LDQt9Cw0YLRjCDRjdGC0L4g0YHQvtC+0LHRidC10L3QuNC1XG4iCisiICAgICAgLS12ZXJzaW9uICAgICAgICAgICAg0L/QvtC60LDQt9Cw0YLRjCDQstC10YDRgdC40Y5cbiIKKyJcbiIKKyLQv9Cw0YDQsNC80LXRgtGA0Ysg0LDQvdCw0LvQuNC30LDRgtC+0YDQsDpcbiIKKyIgICAgLS1mb3JtYXQgPNGE0L7RgNC80LDRgi3QstGL0LLQvtC00LA+ICAgINCyINGB0L/RgNCw0LLQvtGH0L3QvtC5INGB0YLRgNCw0L3QuNGG0LUg0LXRgdGC0Ywg0YHQv9C40YHQvtC6INCy0L7Qt9C80L7QttC90YvRhVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg0LLRi9GF0L7QtNC90YvRhSDRhNC+0YDQvNCw0YLQvtCyLCDQv9C+INGD0LzQvtC70YfQsNC90LjRjiDQuNGB0L8uIMKrZHBrZ8K7XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDQtNC70Y8g0YHQvtCy0LzQtdGB0YLQuNC80L7RgdGC0Lgg0YEgZHBrZy1kZXZcbiIKKyIgICAgLS1zaW5jZSA80LLQtdGA0YHQuNGPPiAgICAgICDQstC60LvRjtGH0LjRgtGMINCy0YHQtSDQuNC30LzQtdC90LXQvdC40Y8g0L/QvtGB0LvQtSDRjdGC0L7QuSDQstC10YDRgdC40LhcbiIKKyIgICAgczzQstC10YDRgdC40Y8+LCAtdiA80LLQtdGA0YHQuNGPPlxuIgorIiAgICAtLXVudGlsIDzQstC10YDRgdC40Y8+ICAgICAgINCy0LrQu9GO0YfQuNGC0Ywg0LLRgdC1INC40LfQvNC10L3QtdC90LjRjyDQtNC+INGN0YLQvtC5INCy0LXRgNGB0LjQuFxuIgorIiAgICAtdTzQstC10YDRgdC40Y8+XG4iCisiICAgIC0tZnJvbSA80LLQtdGA0YHQuNGPPiAgICAgICAg0LLQutC70Y7Rh9C40YLRjCDQuNC30LzQtdC90LXQvdC40Y8g0Y3RgtC+0Lkg0Lgg0LLRgdC10YUg0L/QvtC30LTQvdC40YUg0LLQtdGA0YHQuNC5XG4iCisiICAgIC1mPNCy0LXRgNGB0LjRjz5cbiIKKyIgICAgLS10bzzQstC10YDRgdC40Y8+ICAgICAgICAgICDQstC60LvRjtGH0LjRgtGMINCy0YHQtSDQuNC30LzQtdC90LXQvdC40Y8g0LTQviDRjdGC0L7QuSDQstC10YDRgdC40LggIgorItCy0LrQu9GO0YfQuNGC0LXQu9GM0L3QvlxuIgorIiAgICAtdDzQstC10YDRgdC40Y8+XG4iCisiICAgIC0tY291bnQgPNGH0LjRgdC70L4+ICAgICAgICDQstC60LvRjtGH0LjRgtGMIDzRh9C40YHQu9C+PiDQt9Cw0L/QuNGB0LXQuSDQvtGCINC90LDRh9Cw0LvQsFxuIgorIiAgICAtYzzRh9C40YHQu9C+PiwgLW4gPNGH0LjRgdC70L4+ICAo0LjQu9C4INC60L7QvdGG0LAsINC10YHQu9C4IDzRh9C40YHQu9C+PiDQvtGC0YDQuNGG0LDRgtC10LvRjNC90L7QtSlcbiIKKyIgICAgLS1vZmZzZXQgPNGH0LjRgdC70L4+ICAgICAgINC40LfQvNC10L3QuNGC0Ywg0L3QsNGH0LDQu9GM0L3Rg9GOINGC0L7Rh9C60YMg0LTQu9GPIC0tY291bnQsXG4iCisiICAgIC1vPNGH0LjRgdC70L4+ICAgICAgICAgICAgICDQvtGC0YHRh9C40YLRi9Cy0LDRgtGMINC+0YIg0L3QsNGH0LDQu9CwICjQuNC70Lgg0LrQvtC90YbQsCwg0LXRgdC70LhcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICA80YfQuNGB0LvQvj4g0L7RgtGA0LjRhtCw0YLQtdC70YzQvdC+0LUpXG4iCisiICAgIC0tYWxsICAgICAgICAgICAgICAgICAg0LLQutC70Y7Rh9C40YLRjCDQstGB0LUg0LjQt9C80LXQvdC10L3QuNGPXG4iCisKKyM6IHNjcmlwdHMvZHBrZy1wYXJzZWNoYW5nZWxvZy5wbDoxMTcKKyMsIGZ1enp5CisjfCBtc2dpZCAiJXMgdGFrZXMgbm8gbm9uLW9wdGlvbiBhcmd1bWVudHMiCittc2dpZCAidGFrZXMgbm8gbm9uLW9wdGlvbiBhcmd1bWVudHMiCittc2dzdHIgIiVzINC90LUg0L/RgNC40L3QuNC80LDQtdGCINC90LXQvtCx0Y/Qt9Cw0YLQtdC70YzQvdGL0LUg0L/QsNGA0LDQvNC10YLRgNGLIgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOjY2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gPGJpbmFyeXBhdGg+IFs8b3ZlcnJpZGVmaWxlPiBbPHBhdGhwcmVmaXg+XV0gPiAiCisiUGFja2FnZXNcbiIKKyJcbiIKKyJPcHRpb25zOlxuIgorIiAgLXQsIC0tdHlwZSA8dHlwZT4gICAgICAgIHNjYW4gZm9yIDx0eXBlPiBwYWNrYWdlcyAoZGVmYXVsdCBpcyAnZGViJykuXG4iCisiICAtdSwgLS11ZGViICAgICAgICAgICAgICAgc2NhbiBmb3IgdWRlYnMgKG9ic29sZXRlIGFsaWFzIGZvciAtdHVkZWIpLlxuIgorIiAgLWEsIC0tYXJjaCA8YXJjaD4gICAgICAgIGFyY2hpdGVjdHVyZSB0byBzY2FuIGZvci5cbiIKKyIgIC1tLCAtLW11bHRpdmVyc2lvbiAgICAgICBhbGxvdyBtdWx0aXBsZSB2ZXJzaW9ucyBvZiBhIHNpbmdsZSBwYWNrYWdlLlxuIgorIiAgLWUsIC0tZXh0cmEtb3ZlcnJpZGUgPGZpbGU+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlIGV4dHJhIG92ZXJyaWRlIGZpbGUuXG4iCisiICAtTSwgLS1tZWRpdW0gPG1lZGl1bT4gICAgYWRkIFgtTWVkaXVtIGZpZWxkIGZvciBkc2VsZWN0IG11bHRpY2QgYWNjZXNzICIKKyJtZXRob2RcbiIKKyIgIC1oLCAtLWhlbHAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgICAgIC0tdmVyc2lvbiAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCittc2dzdHIgIiIKKyLQmNGB0L/QvtC70YzQt9C+0LLQsNC90LjQtTogJXMgWzzQv9Cw0YDQsNC80LXRgtGAPiAuLi5dIDzQutCw0YLQsNC70L7Qs1/QtNCy0L7QuNGH0L1f0L/QsNC60LXRgtC+0LI+XG4iCisiICAgICAgICAgICAgICAgICAgICBbPNGE0LDQudC7X9C/0LXRgNC10L3QsNC30L3QsNGH0LXQvdC40Lk+IFs80L/RgNC10YTQuNC60YFf0L/Rg9GC0Lg+XV0gPiBQYWNrYWdlc1xuIgorIlxuIgorItCf0LDRgNCw0LzQtdGC0YDRizpcbiIKKyIgIC10LCAtLXR5cGUgPNGC0LjQvz4gICAgICAg0LjRgdC60LDRgtGMINC/0LDQutC10YLRiyDRg9C60LDQt9Cw0L3QvdC+0LPQviA80YLQuNC/0LA+KNC/0L4g0YPQvNC+0LvRh9Cw0L3QuNGOICIKKyInZGViJykuXG4iCisiICAtdSwgLS11ZGViICAgICAgICAgICAgINC40YHQutCw0YLRjCDQv9Cw0LrQtdGC0YsgdWRlYiAo0YPRgdGC0LDRgNC10LLRiNC40Lkg0L/RgdC10LLQtNC+0L3QuNC8IC10dWRlYikuXG4iCisiICAtYSwgLS1hcmNoIDzQsNGA0YUuPiAgICAgINC/0L7QuNGB0Log0LTQu9GPINC30LDQtNCw0L3QvdC+0Lkg0LDRgNGF0LjRgtC10LrRgtGD0YDRiy5cbiIKKyIgIC1tLCAtLW11bHRpdmVyc2lvbiAgICAg0YDQsNC30YDQtdGI0LjRgtGMINC90LXRgdC60L7Qu9GM0LrQviDQstC10YDRgdC40Lkg0L7QtNC90L7Qs9C+INC/0LDQutC10YLQsC5cbiIKKyIgIC1lLCAtLWV4dHJhLW92ZXJyaWRlIDzRhNCw0LnQuz5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAg0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMINGE0LDQudC7INC00L7Qv9C+0LvQvdC40YLQtdC70YzQvdGL0Lkg0YTQsNC50LsgIgorItC/0LXRgNC10L3QsNC30L3QsNGH0LXQvdC40LkuXG4iCisiICAtTSwgLS1tZWRpdW0gPG1lZGl1bT4gINC00L7QsdCw0LLQuNGC0Ywg0L/QvtC70LUgWC1NZWRpdW0g0LTQu9GPINC80LXRgtC+0LTQsFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICDQtNC+0YHRgtGD0L/QsCBkc2VsZWN0IG11bHRpY2RcbiIKKyIgIC1oLCAtLWhlbHAgICAgICAgICAgICAg0L/QvtC60LDQt9Cw0YLRjCDRjdGC0L4g0YHQvtC+0LHRidC10L3QuNC1LlxuIgorIiAgICAgIC0tdmVyc2lvbiAgICAgICAgICDQv9C+0LrQsNC30LDRgtGMINCy0LXRgNGB0LjRji5cbiIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDo4MworbXNnaWQgIi11LCAtLXVkZWIgb3B0aW9uIGlzIGRlcHJlY2F0ZWQgKHNlZSBSRUFETUUuZmVhdHVyZS1yZW1vdmFsLXNjaGVkdWxlKSIKK21zZ3N0ciAiIgorItCf0LDRgNCw0LzQtdGC0YAgLXUsIC0tdWRlYiDQsdGD0LTQtdGCINC40YHQutC70Y7Rh9C10L0gKNGB0LwuIFJFQURNRS5mZWF0dXJlLXJlbW92YWwtc2NoZWR1bGUpIgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOjExMgorIywgcGVybC1mb3JtYXQKK21zZ2lkICIgICVzIChwYWNrYWdlIHNheXMgJXMsIG5vdCAlcykiCittc2dzdHIgIiAgJXMgKNCyINC/0LDQutC10YLQtSDRg9C60LDQt9Cw0L3QviAlcywg0LAg0L3QtSAlcykiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6MTIwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIlVuY29uZGl0aW9uYWwgbWFpbnRhaW5lciBvdmVycmlkZSBmb3IgJXMiCittc2dzdHIgItCR0LXQt9GD0YHQu9C+0LLQvdC+0LUg0L/QtdGA0LXQvdCw0LfQvdCw0YfQtdC90LjQtSDRgdC+0L/RgNC+0LLQvtC20LTQsNGO0YnQtdCz0L4g0LTQu9GPICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOjE1OCBzY3JpcHRzL2Rwa2ctc2NhbnNvdXJjZXMucGw6MzAyCisjLCBmdXp6eQorI3wgbXNnaWQgIjEgdG8gMyBhcmdzIGV4cGVjdGVkIgorbXNnaWQgIm9uZSB0byB0aHJlZSBhcmd1bWVudHMgZXhwZWN0ZWQiCittc2dzdHIgItC+0LbQuNC00LDQtdGC0YHRjyDQvtGCIDEg0LTQviAzINCw0YDQs9GD0LzQtdC90YLQvtCyIgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOjE3NQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJCaW5hcnkgZGlyICVzIG5vdCBmb3VuZCIKK21zZ3N0ciAi0JrQsNGC0LDQu9C+0LMg0LTQstC+0LjRh9C90YvRhSDQv9Cw0LrQtdGC0L7QsiAlcyDQvdC1INC90LDQudC00LXQvSIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoxNzcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiT3ZlcnJpZGUgZmlsZSAlcyBub3QgZm91bmQiCittc2dzdHIgItCk0LDQudC7INC/0LXRgNC10L3QsNC30L3QsNGH0LXQvdC40LkgJXMg0L3QtSDQvdCw0LnQtNC10L0iCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6MTgzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIkNvdWxkbid0IG9wZW4gJXMgZm9yIHJlYWRpbmciCittc2dzdHIgItCd0LUg0YPQtNCw0LvQvtGB0Ywg0L7RgtC60YDRi9GC0YwgJXMg0L3QsCDRh9GC0LXQvdC40LUiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6MTkzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNvdWxkbid0IHBhcnNlIGNvbnRyb2wgaW5mb3JtYXRpb24gZnJvbSAlcy4iCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L/RgNC+0LDQvdCw0LvQuNC30LjRgNC+0LLQsNGC0Ywg0YPQv9GA0LDQstC70Y/RjtGJ0YPRjiDQuNC90YTQvtGA0LzQsNGG0LjRjiDQuNC3ICVzLiIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoxOTYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiYGRwa2ctZGViIC1JICVzIGNvbnRyb2wnIGV4aXRlZCB3aXRoICVkLCBza2lwcGluZyBwYWNrYWdlIgorbXNnc3RyICLCq2Rwa2ctZGViIC1JICVzIGNvbnRyb2zCuyDQt9Cw0LLQtdGA0YjQuNC70LDRgdGMINGBINC60L7QtNC+0LwgJWQsINC/0LDQutC10YIg0L/RgNC+0L/Rg9GB0LrQsNC10YLRgdGPIgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOjIwMgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJObyBQYWNrYWdlIGZpZWxkIGluIGNvbnRyb2wgZmlsZSBvZiAlcyIKK21zZ3N0ciAi0J3QtdGCINC/0L7Qu9GPIFBhY2thZ2Ug0LIg0YPQv9GA0LDQstC70Y/RjtGJ0LXQvCDRhNCw0LnQu9C1ICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOjIxMAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJQYWNrYWdlICVzIChmaWxlbmFtZSAlcykgaXMgcmVwZWF0IGJ1dCBuZXdlciB2ZXJzaW9uOyIKK21zZ3N0ciAi0J/QvtCy0YLQvtGA0LXQvdC40LUg0L/QsNC60LXRgtCwICVzICjRhNCw0LnQuyAlcyksINC90L4g0YEg0LHQvtC70LXQtSDQvdC+0LLQvtC5INCy0LXRgNGB0LjQtdC5OyIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoyMTIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidXNlZCB0aGF0IG9uZSBhbmQgaWdub3JlZCBkYXRhIGZyb20gJXMhIgorbXNnc3RyICLQuNGB0L/QvtC70YzQt9GD0LXRgtGB0Y8g0LTQsNC90L3Ri9C5INGE0LDQudC7INC4INC40LPQvdC+0YDQuNGA0YPRjtGC0YHRjyDQtNCw0L3QvdGL0LUg0LjQtyAlcyEiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6MjE2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgJXMgKGZpbGVuYW1lICVzKSBpcyByZXBlYXQ7IgorbXNnc3RyICLQn9C+0LLRgtC+0YDQtdC90LjQtSDQv9Cw0LrQtdGC0LAgJXMgKNGE0LDQudC7ICVzKTsiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6MjE3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImlnbm9yZWQgdGhhdCBvbmUgYW5kIHVzaW5nIGRhdGEgZnJvbSAlcyEiCittc2dzdHIgItC00LDQvdC90YvQuSDRhNCw0LnQuyDQuNCz0L3QvtGA0LjRgNGD0LXRgtGB0Y8g0Lgg0LjRgdC/0L7Qu9GM0LfRg9GO0YLRgdGPINC00LDQvdC90YvQtSDQuNC3ICVzISIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoyMjMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiUGFja2FnZSAlcyAoZmlsZW5hbWUgJXMpIGhhcyBGaWxlbmFtZSBmaWVsZCEiCittc2dzdHIgItCf0LDQutC10YIgJXMgKNGE0LDQudC7ICVzKSDRgdC+0LTQtdGA0LbQuNGCINC/0L7Qu9C1IEZpbGVuYW1lISIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoyNTUKK21zZ2lkICJGYWlsZWQgd2hlbiB3cml0aW5nIHN0ZG91dCIKK21zZ3N0ciAi0KHQsdC+0Lkg0L/RgNC4INC30LDQv9C40YHQuCDQsiDRgdGC0LDQvdC00LDRgNGC0L3Ri9C5INCy0YvQstC+0LQiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6MjU5Cittc2dpZCAiQ291bGRuJ3QgY2xvc2Ugc3Rkb3V0IgorbXNnc3RyICLQndC1INGD0LTQsNC70L7RgdGMINC30LDQutGA0YvRgtGMINGB0YLQsNC90LTQsNGA0YLQvdGL0Lkg0LLRi9Cy0L7QtCIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoyNjIKK21zZ2lkICJQYWNrYWdlcyBpbiBvdmVycmlkZSBmaWxlIHdpdGggaW5jb3JyZWN0IG9sZCBtYWludGFpbmVyIHZhbHVlOiIKK21zZ3N0ciAiIgorItCf0LDQutC10YLRiyDQsiDRhNCw0LnQu9C1INC/0LXRgNC10L3QsNC30L3QsNGH0LXQvdC40Lkg0YEg0L3QtdC/0YDQsNCy0LjQu9GM0L3Ri9C8INGB0YLQsNGA0YvQvCDQt9C90LDRh9C10L3QuNC10LwgIgorItGB0L7Qv9GA0L7QstC+0LbQtNCw0Y7RidC10LPQvjoiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6MjY2Cittc2dpZCAiUGFja2FnZXMgc3BlY2lmeWluZyBzYW1lIG1haW50YWluZXIgYXMgb3ZlcnJpZGUgZmlsZToiCittc2dzdHIgItCf0LDQutC10YLRiyDRgSDRgtC10Lwg0LbQtSDRgdC+0L/RgNC+0LLQvtC20LTQsNGO0YnQuNC8INGH0YLQviDQuCDQsiDRhNCw0LnQu9C1INC/0LXRgNC10L3QsNC30L3QsNGH0LXQvdC40Lk6IgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOjI3MAorbXNnaWQgIlBhY2thZ2VzIGluIGFyY2hpdmUgYnV0IG1pc3NpbmcgZnJvbSBvdmVycmlkZSBmaWxlOiIKK21zZ3N0ciAi0J/QsNC60LXRgtGLINC10YHRgtGMINCyINCw0YDRhdC40LLQtSwg0L3QviDQvtGC0YHRg9GC0YHRgtCy0YPRjtGCINCyINGE0LDQudC70LUg0L/QtdGA0LXQvdCw0LfQvdCw0YfQtdC90LjQuToiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6Mjc0Cittc2dpZCAiUGFja2FnZXMgaW4gb3ZlcnJpZGUgZmlsZSBidXQgbm90IGluIGFyY2hpdmU6IgorbXNnc3RyICLQn9Cw0LrQtdGC0Ysg0LXRgdGC0Ywg0LIg0YTQsNC50LvQtSDQv9C10YDQtdC90LDQt9C90LDRh9C10L3QuNC5LCDQvdC+INC90LXRgiDQsiDQsNGA0YXQuNCy0LU6IgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOjI3OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJXcm90ZSAlcyBlbnRyaWVzIHRvIG91dHB1dCBQYWNrYWdlcyBmaWxlLiIKK21zZ3N0ciAi0JfQsNC/0LjRgdCw0L3QviAlcyDQt9Cw0L/QuNGB0LXQuSDQsiDQstGL0YXQvtC00L3QvtC5INGE0LDQudC7IFBhY2thZ2VzLiIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5zb3VyY2VzLnBsOjg0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gPGJpbmFyeXBhdGg+IFs8b3ZlcnJpZGVmaWxlPiBbPHBhdGhwcmVmaXg+XV0gPiAiCisiU291cmNlc1xuIgorIlxuIgorIk9wdGlvbnM6XG4iCisiICAtbiwgLS1uby1zb3J0ICAgICAgICAgICAgZG9uJ3Qgc29ydCBieSBwYWNrYWdlIGJlZm9yZSBvdXRwdXR0aW5nLlxuIgorIiAgLWUsIC0tZXh0cmEtb3ZlcnJpZGUgPGZpbGU+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlIGV4dHJhIG92ZXJyaWRlIGZpbGUuXG4iCisiICAtcywgLS1zb3VyY2Utb3ZlcnJpZGUgPGZpbGU+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlIGZpbGUgZm9yIGFkZGl0aW9uYWwgc291cmNlIG92ZXJyaWRlcywgIgorImRlZmF1bHRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBpcyByZWd1bGFyIG92ZXJyaWRlIGZpbGUgd2l0aCAuc3JjIGFwcGVuZGVkLlxuIgorIiAgICAgIC0tZGVidWcgICAgICAgICAgICAgIHR1cm4gZGVidWdnaW5nIG9uLlxuIgorIiAgICAgIC0taGVscCAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAgICAgLS12ZXJzaW9uICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIKKyJTZWUgdGhlIG1hbiBwYWdlIGZvciB0aGUgZnVsbCBkb2N1bWVudGF0aW9uLlxuIgorbXNnc3RyICIiCisi0JjRgdC/0L7Qu9GM0LfQvtCy0LDQvdC40LU6ICVzIFs80L/QsNGA0LDQvNC10YLRgD4gLi4uXSA80LrQsNGCLtC00LLQvtC40YfQvS7Qv9Cw0LrQtdGC0L7Qsj5cbiIKKyIgICAgICAgICAgICAgICBbPNGE0LDQudC7X9C/0LXRgNC10L3QsNC30L3QsNGH0LXQvdC40Lk+IFs80L/RgNC10YTQuNC60YFf0L/Rg9GC0Lg+XV0gPiBTb3VyY2VzXG4iCisiXG4iCisi0J/QsNGA0LDQvNC10YLRgNGLOlxuIgorIiAgLW4sIC0tbm8tc29ydCAgICAgICAgICDQvdC1INGB0L7RgNGC0LjRgNC+0LLQsNGC0Ywg0L/QviDQuNC80LXQvdC4INC/0LDQutC10YLQsCDQv9C10YDQtdC0INCy0YvQstC+0LTQvtC8LlxuIgorIiAgLWUsIC0tZXh0cmEtb3ZlcnJpZGUgPNGE0LDQudC7PlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICDQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0LTQvtC/0L7Qu9C90LjRgtC10LvRjNC90YvQuSDRhNCw0LnQuyDQv9C10YDQtdC90LDQt9C90LDRh9C10L3QuNC5LlxuIgorIiAgLXMsIC0tc291cmNlLW92ZXJyaWRlIDzRhNCw0LnQuz5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAg0LjRgdC/0L7Qu9GM0LfQvtCy0LDRgtGMINGE0LDQudC7INC00LvRjyDQtNC+0L/QvtC70L3QuNGC0LXQu9GM0L3Ri9GFXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgINC/0LXRgNC10L3QsNC30L3QsNGH0LXQvdC40Lkg0LjRgdGF0L7QtNC90LjQutC+0LIsINC/0L4g0YPQvNC+0LvRh9Cw0L3QuNGOXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgINGN0YLQviDQvtCx0YvRh9C90YvQuSDRhNCw0LnQuyDQv9C10YDQtdC90LDQt9C90LDRh9C10L3QuNC5INGBINC00L7QsdCw0LLQu9C10L3QvdGL0LwgLiIKKyJzcmMuXG4iCisiICAgICAgLS1kZWJ1ZyAgICAgICAgICAgINCy0LrQu9GO0YfQuNGC0Ywg0L7RgtC70LDQtNC60YMuXG4iCisiICAgICAgLS1oZWxwICAgICAgICAgICAgINC/0L7QutCw0LfQsNGC0Ywg0Y3RgtC+INGB0L7QvtCx0YnQtdC90LjQtS5cbiIKKyIgICAgICAtLXZlcnNpb24gICAgICAgICAg0L/QvtC60LDQt9Cw0YLRjCDQstC10YDRgdC40Y4uXG4iCisiXG4iCisi0J/QvtC70L3QsNGPINC00L7QutGD0LzQtdC90YLQsNGG0LjRjyDQtNCw0L3QsCDQvdCwINGB0YLRgNCw0L3QuNGG0LUg0YDRg9C60L7QstC+0LTRgdGC0LLQsC5cbiIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5zb3VyY2VzLnBsOjEwNQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJlcnJvciBjbG9zaW5nICVzICgkPyAlZCwgJCEgYCVzJykiCittc2dzdHIgItC+0YjQuNCx0LrQsCDQv9GA0Lgg0LfQsNC60YDRi9GC0LjQuCAlcyAoJD8gJWQsICQhIMKrJXPCuykiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2Fuc291cmNlcy5wbDoxMjEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBvdmVycmlkZSBlbnRyeSBhdCBsaW5lICVkICglZCBmaWVsZHMpIgorbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70YzQvdCw0Y8g0LfQsNC/0LjRgdGMINC/0LXRgNC10L3QsNC30L3QsNGH0LXQvdC40Y8g0LIg0YHRgtGA0L7QutC1ICVkICglZCDQv9C+0LvQtdC5KSIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5zb3VyY2VzLnBsOjEyNworIywgcGVybC1mb3JtYXQKK21zZ2lkICJpZ25vcmluZyBkdXBsaWNhdGUgb3ZlcnJpZGUgZW50cnkgZm9yICVzIGF0IGxpbmUgJWQiCittc2dzdHIgItC40LPQvdC+0YDQuNGA0YPQtdGC0YHRjyDQtNGD0LHQu9C40YDRg9GO0YnQsNGPINC30LDQv9C40YHRjCDQv9C10YDQtdC90LDQt9C90LDRh9C10L3QuNGPINC00LvRjyAlcyDQsiDRgdGC0YDQvtC60LUgJWQiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2Fuc291cmNlcy5wbDoxMzIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiaWdub3Jpbmcgb3ZlcnJpZGUgZW50cnkgZm9yICVzLCBpbnZhbGlkIHByaW9yaXR5ICVzIgorbXNnc3RyICLQuNCz0L3QvtGA0LjRgNGD0LXRgtGB0Y8g0LfQsNC/0LjRgdGMINC/0LXRgNC10L3QsNC30L3QsNGH0LXQvdC40Y8g0LTQu9GPICVzOyDQvdC10L/RgNCw0LLQuNC70YzQvdGL0Lkg0L/RgNC40L7RgNC40YLQtdGCICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnNvdXJjZXMucGw6MTg2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImludmFsaWQgc291cmNlIG92ZXJyaWRlIGVudHJ5IGF0IGxpbmUgJWQgKCVkIGZpZWxkcykiCittc2dzdHIgItC90LXQv9GA0LDQstC40LvRjNC90LDRjyDQt9Cw0L/QuNGB0Ywg0L/QtdGA0LXQvdCw0LfQvdCw0YfQtdC90LjRjyDQuNGB0YXQvtC00L3QuNC60LAg0LIg0YHRgtGA0L7QutC1ICVkICglZCDQv9C+0LvQtdC5KSIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5zb3VyY2VzLnBsOjE5NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJpZ25vcmluZyBkdXBsaWNhdGUgc291cmNlIG92ZXJyaWRlIGVudHJ5IGZvciAlcyBhdCBsaW5lICVkIgorbXNnc3RyICIiCisi0LjQs9C90L7RgNC40YDQvtCy0LDQvdC40LUg0LTRg9Cx0LvQuNGA0YPRjtGJ0LXQuSDQt9Cw0L/QuNGB0Lgg0L/QtdGA0LXQvdCw0LfQvdCw0YfQtdC90LjRjyDQuNGB0YXQvtC00L3QuNC60LAg0LTQu9GPICVzINCyINGB0YLRgNC+0LrQtSAlZCIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5zb3VyY2VzLnBsOjI0NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJubyBiaW5hcnkgcGFja2FnZXMgc3BlY2lmaWVkIGluICVzIgorbXNnc3RyICLQvdC1INC30LDQtNCw0L3QviDQtNCy0L7QuNGH0L3QvtC1INC/0L7Qu9C1INCyICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjkzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImFkbWluaXN0cmF0aXZlIGRpcmVjdG9yeSAnJXMnIGRvZXMgbm90IGV4aXN0IgorbXNnc3RyICLQsNC00LzQuNC90LjRgdGC0YDQsNGC0LjQstC90YvQuSDQutCw0YLQsNC70L7QsyDCqyVzwrsg0L3QtSDRgdGD0YnQtdGB0YLQstGD0LXRgiIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo5OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bnJlY29nbmlzZWQgZGVwZW5kZW5jeSBmaWVsZCBgJXMnIgorbXNnc3RyICLQvdC10YDQsNGB0L/QvtC30L3QsNC90L3QvtC1INC/0L7Qu9C1INC30LDQstC40YHQuNC80L7RgdGC0Lggwqslc8K7IgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjEzMgorbXNnaWQgIm5lZWQgYXQgbGVhc3Qgb25lIGV4ZWN1dGFibGUiCittc2dzdHIgItGC0YDQtdCx0YPQtdGC0YHRjyDRhdC+0YLRjyDQsdGLINC+0LTQuNC9INC40YHQv9C+0LvQvdGP0LXQvNGL0Lkg0YTQsNC50LsiCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6MTc1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNvdWxkbid0IGZpbmQgbGlicmFyeSAlcyBuZWVkZWQgYnkgJXMgKEVMRiBmb3JtYXQ6ICclcyc7IFJQQVRIOiAnJXMnKS4iCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDoyNjIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgaGFzIGFuIHVuZXhwZWN0ZWQgU09OQU1FICglcykiCittc2dzdHIgIiVzINC40LzQtdC10YIg0L3QtdC+0LbQuNC00LDQtdC80YvQuSBTT05BTUUgKCVzKSIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDoyODMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibm8gZGVwZW5kZW5jeSBpbmZvcm1hdGlvbiBmb3VuZCBmb3IgJXMgKHVzZWQgYnkgJXMpLiIKK21zZ3N0ciAi0LjQvdGE0L7RgNC80LDRhtC40Y8g0L4g0LfQsNCy0LjRgdC40LzQvtGB0YLRj9GFINC90LUg0L3QsNC50LTQtdC90LAg0LTQu9GPICVzICjQuNGB0L/QvtC70YzQt9GD0LXRgtGB0Y8gJXMpLiIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDozMTQKK21zZ2lkICIiCisiYmluYXJpZXMgdG8gYW5hbHl6ZSBzaG91bGQgYWxyZWFkeSBiZSBpbnN0YWxsZWQgaW4gdGhlaXIgcGFja2FnZSdzIGRpcmVjdG9yeS4iCittc2dzdHIgIiIKKyLQsNC90LDQu9C40LfQuNGA0YPQtdC80YvQtSDQtNCy0L7QuNGH0L3Ri9C1INGE0LDQudC70Ysg0LTQvtC70LbQvdGLINCx0YvRgtGMINGD0LbQtSDRg9GB0YLQsNC90L7QstC70LXQvdGLINCyINGB0LLQvtC4INC60LDRgtCw0LvQvtCz0LggIgorItC/0LDQutC10YLQvtCyLiIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDozNTcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAic3ltYm9sICVzIHVzZWQgYnkgJXMgZm91bmQgaW4gbm9uZSBvZiB0aGUgbGlicmFyaWVzLiIKK21zZ3N0ciAi0YHQuNC80LLQvtC7ICVzLCDQuNGB0L/QvtC70YzQt9GD0LXQvNGL0LkgJXMsINCyINCx0LjQsdC70LjQvtGC0LXQutCw0YUg0L3QtSDQvdCw0LnQtNC10L0uIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjM2MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiJXMgY29udGFpbnMgYW4gdW5yZXNvbHZhYmxlIHJlZmVyZW5jZSB0byBzeW1ib2wgJXM6IGl0J3MgcHJvYmFibHkgYSBwbHVnaW4uIgorbXNnc3RyICIlcyDRgdC+0LTQtdGA0LbQuNGCINC90LXRgNCw0LfRgNC10YjQuNC80YPRjiDRgdGB0YvQu9C60YMg0L3QsCDRgdC40LzQstC+0LsgJXM6INCy0LXRgNC+0Y/RgtC90L4sINGN0YLQviDQvNC+0LTRg9C70YwuIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjM4MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlZCBzaW1pbGFyIHdhcm5pbmcgaGFzIGJlZW4gc2tpcHBlZCAodXNlIC12IHRvIHNlZSBpdCkuIgorbXNnaWRfcGx1cmFsICIiCisiJWQgb3RoZXIgc2ltaWxhciB3YXJuaW5ncyBoYXZlIGJlZW4gc2tpcHBlZCAodXNlIC12IHRvIHNlZSB0aGVtIGFsbCkuIgorbXNnc3RyWzBdICIiCisiJWQg0L/QvtGF0L7QttC10LUg0L/RgNC10LTRg9C/0YDQtdC20LTQtdC90LjQtSDQsdGL0LvQviDQv9GA0L7Qv9GD0YnQtdC90L4gKNC40YHQv9C+0LvRjNC30YPQudGC0LUgLXYsINGH0YLQvtCx0Ysg0YPQstC40LTQtdGC0Ywg0LXQs9C+KS4iCittc2dzdHJbMV0gIiIKKyIlZCDQtNGA0YPQs9C40YUg0L/QvtGF0L7QttC40YUg0L/RgNC10LTRg9C/0YDQtdC20LTQtdC90LjRjyDQsdGL0LvQviDQv9GA0L7Qv9GD0YnQtdC90L4gKNC40YHQv9C+0LvRjNC30YPQudGC0LUgLXYsINGH0YLQvtCx0YsgIgorItGD0LLQuNC00LXRgtGMINC40YUpLiIKK21zZ3N0clsyXSAiIgorIiVkINC00YDRg9Cz0LjRhSDQv9C+0YXQvtC20LjRhSDQv9GA0LXQtNGD0L/RgNC10LbQtNC10L3QuNC5INCx0YvQu9C+INC/0YDQvtC/0YPRidC10L3QviAo0LjRgdC/0L7Qu9GM0LfRg9C50YLQtSAtdiwg0YfRgtC+0LHRiyAiCisi0YPQstC40LTQtdGC0Ywg0LjRhSkuIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjQwOQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBzaG91bGRuJ3QgYmUgbGlua2VkIHdpdGggJXMgKGl0IHVzZXMgbm9uZSBvZiBpdHMgc3ltYm9scykuIgorbXNnc3RyICIiCisiJXMg0L3QtSDQtNC+0LvQttC10L0g0LrQvtC80L/QvtC90L7QstCw0YLRjNGB0Y8g0YEgJXMgKNC90LUg0LjRgdC/0L7Qu9GM0LfRg9C10YLRgdGPINC90Lgg0L7QtNC40L0g0LjQtyDQtdGRINGB0LjQvNCy0L7Qu9C+0LIpLiIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo0MjIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorImRlcGVuZGVuY3kgb24gJXMgY291bGQgYmUgYXZvaWRlZCBpZiBcIiVzXCIgd2VyZSBub3QgdXNlbGVzc2x5IGxpbmtlZCAiCisiYWdhaW5zdCBpdCAodGhleSB1c2Ugbm9uZSBvZiBpdHMgc3ltYm9scykuIgorbXNnc3RyICIiCisi0LfQsNCy0LjRgdC40LzQvtGB0YLQuCDQvtGCICVzINC80L7QttC90L4g0LjQt9Cx0LXQttCw0YLRjCwg0LXRgdC70Lggwqslc8K7INC90LUg0LHRg9C00LXRgiDQsdC10YHQv9C+0LvQtdC30L3QviDRgdC60L7QvNC/0L7QvdC+0LLQsNC90LAgIgorItGBINC90LXQuSAo0L3QtSDQuNGB0L/QvtC70YzQt9GD0LXRgtGB0Y8g0L3QuCDQvtC00L3QvtCz0L4g0LXRkSDRgdC40LzQstC+0LvQsCkuIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjQzMQorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAiY291bGRuJ3QgZmluZCBsaWJyYXJ5ICVzIG5lZWRlZCBieSAlcyAoRUxGIGZvcm1hdDogJyVzJzsgUlBBVEg6ICclcycpLlxuIgorI3wgIk5vdGU6IGxpYnJhcmllcyBhcmUgbm90IHNlYXJjaGVkIGluIG90aGVyIGJpbmFyeSBwYWNrYWdlcyB0aGF0IGRvIG5vdCAiCisjfCAiaGF2ZSBhbnkgc2hsaWJzIG9yIHN5bWJvbHMgZmlsZS5cbiIKKyN8ICJUbyBoZWxwIGRwa2ctc2hsaWJkZXBzIGZpbmQgcHJpdmF0ZSBsaWJyYXJpZXMsIHlvdSBtaWdodCBuZWVkIHRvIHNldCAiCisjfCAiTERfTElCUkFSWV9QQVRILiIKK21zZ2lkICIiCisiTm90ZTogbGlicmFyaWVzIGFyZSBub3Qgc2VhcmNoZWQgaW4gb3RoZXIgYmluYXJ5IHBhY2thZ2VzIHRoYXQgZG8gbm90IGhhdmUgIgorImFueSBzaGxpYnMgb3Igc3ltYm9scyBmaWxlLlxuIgorIlRvIGhlbHAgZHBrZy1zaGxpYmRlcHMgZmluZCBwcml2YXRlIGxpYnJhcmllcywgeW91IG1pZ2h0IG5lZWQgdG8gc2V0ICIKKyJMRF9MSUJSQVJZX1BBVEguIgorbXNnc3RyICIiCisi0L3QtSDRg9C00LDQu9C+0YHRjCDQvdCw0LnRgtC4INCx0LjQsdC70LjQvtGC0LXQutGDICVzLCDQvdC10L7QsdGF0L7QtNC40LzRg9GOINC00LvRjyAlc1xuIgorIijRhNC+0YDQvNCw0YIgRUxGOiDCqyVzwrs7IFJQQVRIOiDCqyVzwrspLlxuIgorItCX0LDQvNC10YfQsNC90LjQtTog0LHQuNCx0LvQuNC+0YLQtdC60Lgg0L3QtSDQuNGJ0YPRgtGB0Y8g0LIg0LTRgNGD0LPQuNGFINC00LLQvtC40YfQvdGL0YUg0L/QsNC60LXRgtCw0YUsINCyINC60L7RgtC+0YDRi9GFINC90LXRgiAiCisi0YTQsNC50LvQsCBzaGxpYnMg0LjQu9C4IHN5bWJvbHMuXG4iCisi0KfRgtC+0LHRiyDQv9C+0LzQvtGH0YwgZHBrZy1zaGxpYmRlcHMg0L3QsNC50YLQuCDQv9C10YDRgdC+0L3QsNC70YzQvdGL0LUg0LHQuNCx0LvQuNC+0YLQtdC60LgsINCy0Ysg0LzQvtC20LXRgtC1ICIKKyLQvdCw0YHRgtGA0L7QuNGC0YwgTERfTElCUkFSWV9QQVRILiIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo0MzQKK21zZ2lkICJDYW5ub3QgY29udGludWUgZHVlIHRvIHRoZSBlcnJvciBhYm92ZS4iCittc2dpZF9wbHVyYWwgIkNhbm5vdCBjb250aW51ZSBkdWUgdG8gdGhlIGVycm9ycyBsaXN0ZWQgYWJvdmUuIgorbXNnc3RyWzBdICIiCittc2dzdHJbMV0gIiIKK21zZ3N0clsyXSAiIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjQ0NQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJvcGVuIG5ldyBzdWJzdHZhcnMgZmlsZSBgJXMnIgorbXNnc3RyICLQvtGC0LrRgNGL0YLQuNC1INC90L7QstC+0LPQviDRhNCw0LnQu9CwINC/0L7QtNGB0YLQsNC90L7QstC+0Logwqslc8K7IgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjQ0OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJvcGVuIG9sZCB2YXJsaXN0IGZpbGUgYCVzJyBmb3IgcmVhZGluZyIKK21zZ3N0ciAi0L7RgtC60YDRi9GC0LjQtSDRgdGC0LDRgNC+0LPQviDRhNCw0LnQu9CwINGB0L4g0YHQv9C40YHQutC+0Lwg0L/QtdGA0LXQvNC10L3QvdGL0YUgwqslc8K7INC90LAg0YfRgtC10L3QuNC1IgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjQ1MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjb3B5IG9sZCBlbnRyeSB0byBuZXcgdmFybGlzdCBmaWxlIGAlcyciCittc2dzdHIgItC60L7Qv9C40YDQvtCy0LDQvdC40LUg0YHRgtCw0YDQvtC5INC30LDQv9C40YHQuCDQsiDQvdC+0LLRi9C5INGE0LDQudC7INGB0L4g0YHQv9C40YHQutC+0Lwg0L/QtdGA0LXQvNC10L3QvdGL0YUgwqslc8K7IgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjUxNQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGRlcGVuZGVuY3kgZ290IGdlbmVyYXRlZDogJXMiCittc2dzdHIgItC/0YDQuCDQs9C10L3QtdGA0LDRhtC40Lgg0L/QvtC70YPRh9C10L3QsCDQvdC10LLQtdGA0L3QsNGPINC30LDQstC40YHQuNC80L7RgdGC0Yw6ICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjUyNQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJpbnN0YWxsIG5ldyB2YXJsaXN0IGZpbGUgYCVzJyIKK21zZ3N0ciAi0YPRgdGC0LDQvdC+0LLQutCwINC90L7QstC+0LPQviDRhNCw0LnQu9CwINGB0L4g0YHQv9C40YHQutC+0Lwg0L/QtdGA0LXQvNC10L3QvdGL0YUgwqslc8K7IgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjUzNQorbXNnaWQgIiIKKyJcbiIKKyJDb3B5cmlnaHQgKEMpIDE5OTYgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDA2IEZyYW5rIExpY2h0ZW5oZWxkLlxuIgorIkNvcHlyaWdodCAoQykgMjAwNyBSYXBoYWVsIEhlcnR6b2cuXG4iCittc2dzdHIgIiIKKyJcbiIKKyJDb3B5cmlnaHQgKEMpIDE5OTYgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDA2IEZyYW5rIExpY2h0ZW5oZWxkLlxuIgorIkNvcHlyaWdodCAoQykgMjAwNyBSYXBoYWVsIEhlcnR6b2cuXG4iCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6NTUwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gPGV4ZWN1dGFibGU+fC1lPGV4ZWN1dGFibGU+IFs8b3B0aW9uPiAuLi5dXG4iCisiXG4iCisiUG9zaXRpb25hbCBvcHRpb25zIChvcmRlciBpcyBzaWduaWZpY2FudCk6XG4iCisiICA8ZXhlY3V0YWJsZT4gICAgICAgICAgICAgaW5jbHVkZSBkZXBlbmRlbmNpZXMgZm9yIDxleGVjdXRhYmxlPixcbiIKKyIgIC1lPGV4ZWN1dGFibGU+ICAgICAgICAgICAodXNlIC1lIGlmIDxleGVjdXRhYmxlPiBzdGFydHMgd2l0aCBgLScpXG4iCisiICAtZDxkZXBlbmRlbmN5ZmllbGQ+ICAgICAgbmV4dCBleGVjdXRhYmxlKHMpIHNldCBzaGxpYnM6PGRlcGVuZGVuY3lmaWVsZD4uXG4iCisiXG4iCisiT3B0aW9uczpcbiIKKyIgIC1wPHZhcm5hbWVwcmVmaXg+ICAgICAgICBzZXQgPHZhcm5hbWVwcmVmaXg+OiogaW5zdGVhZCBvZiBzaGxpYnM6Ki5cbiIKKyIgIC1PICAgICAgICAgICAgICAgICAgICAgICBwcmludCB2YXJpYWJsZSBzZXR0aW5ncyB0byBzdGRvdXQuXG4iCisiICAtTDxsb2NhbHNobGlic2ZpbGU+ICAgICAgc2hsaWJzIG92ZXJyaWRlIGZpbGUsIG5vdCBkZWJpYW4vc2hsaWJzLmxvY2FsLlxuIgorIiAgLVQ8dmFybGlzdGZpbGU+ICAgICAgICAgIHVwZGF0ZSB2YXJpYWJsZXMgaGVyZSwgbm90IGRlYmlhbi9zdWJzdHZhcnMuXG4iCisiICAtdDx0eXBlPiAgICAgICAgICAgICAgICAgc2V0IHBhY2thZ2UgdHlwZSAoZGVmYXVsdCBpcyBkZWIpLlxuIgorIiAgLXg8cGFja2FnZT4gICAgICAgICAgICAgIGV4Y2x1ZGUgcGFja2FnZSBmcm9tIHRoZSBnZW5lcmF0ZWQgZGVwZW5kZW5jaWVzLlxuIgorIiAgLVM8cGtnYnVpbGRkaXI+ICAgICAgICAgIHNlYXJjaCBuZWVkZWQgbGlicmFyaWVzIGluIHRoZSBnaXZlblxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhY2thZ2UgYnVpbGQgZGlyZWN0b3J5IGZpcnN0LlxuIgorIiAgLXYgICAgICAgICAgICAgICAgICAgICAgIGVuYWJsZSB2ZXJib3NlIG1vZGUgKGNhbiBiZSB1c2VkIG11bHRpcGxlICIKKyJ0aW1lcykuXG4iCisiICAtLWlnbm9yZS1taXNzaW5nLWluZm8gICAgZG9uJ3QgZmFpbCBpZiBkZXBlbmRlbmN5IGluZm9ybWF0aW9uIGNhbid0IGJlICIKKyJmb3VuZC5cbiIKKyIgIC0td2FybmluZ3M9PHZhbHVlPiAgICAgICBkZWZpbmUgc2V0IG9mIGFjdGl2ZSB3YXJuaW5ncyAoc2VlIG1hbnVhbCBwYWdlKS5cbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT4gICBjaGFuZ2UgdGhlIGFkbWluaXN0cmF0aXZlIGRpcmVjdG9yeS5cbiIKKyIgIC1oLCAtLWhlbHAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgICAgIC0tdmVyc2lvbiAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCisiRGVwZW5kZW5jeSBmaWVsZHMgcmVjb2duaXNlZCBhcmU6XG4iCisiICAlc1xuIgorbXNnc3RyICIiCisi0JjRgdC/0L7Qu9GM0LfQvtCy0LDQvdC40LU6ICVzIFs80L/QsNGA0LDQvNC10YLRgD4gLi4uXSA80LjRgdC/LtGE0LDQudC7PnwtZTzQuNGB0L8u0YTQsNC50Ls+IFs80L/QsNGA0LDQvNC10YLRgD4gLi4uXVxuIgorIlxuIgorItCf0L7Qt9C40YbQuNC+0L3QvdGL0LUg0L/QsNGA0LDQvNC10YLRgNGLICjQv9C+0YDRj9C00L7QuiDQstCw0LbQtdC9KTpcbiIKKyIgIDzQuNGB0L8u0YTQsNC50Ls+ICAgICAgICAgICAgICAg0LLQutC70Y7Rh9C40YLRjCDQstGB0LUg0LfQsNCy0LjRgdC40LzQvtGB0YLQuCDQtNC70Y8gPNC40YHQvy7RhNCw0LnQu9CwPixcbiIKKyIgIC1lPNC40YHQvy7RhNCw0LnQuz4gICAgICAgICAgICAgKNC40YHQv9C+0LvRjNC30YPQudGC0LUgLWUsINC10YHQu9C4IDzQuNGB0L8u0YTQsNC50Ls+INC90LDRh9C40L3QsNC10YLRgdGPINGBICIKKyJgLScpXG4iCisiICAtZDzQv9C+0LvQtS3Qt9Cw0LLQuNGBLj4gICAgICAgICAg0LTQu9GPINC/0L7RgdC70LXQtNGD0Y7RidC40YUg0LjRgdC/LtGE0LDQudC70L7QslxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgINC30LDQtNCw0YLRjCDQsiBzaGxpYnM6PNC/0L7Qu9C1LdC30LDQstC40YEuPi5cbiIKKyJcbiIKKyLQn9Cw0YDQsNC80LXRgtGA0Ys6XG4iCisiICAtcDzQv9GA0LXRhC7QuNC80LXQvdC4LdC/0LXRgC4+ICAgICAg0LfQsNC00LDRgtGMIDzQv9GA0LXRhC7QuNC80LXQvdC4LdC/0LXRgC4+Oiog0LLQvNC10YHRgtC+IHNobGliczoqLlxuIgorIiAgLU8gICAgICAgICAgICAgICAgICAgICAgINCy0YvQstC10YHRgtC4INC30L3QsNGH0LXQvdC40Y8g0L/QtdGA0LXQvNC10L3QvdGL0YUg0LIg0YHRgtCw0L3QtNCw0YDRgtC90YvQuSDQstGL0LLQvtC0LlxuIgorIiAgLUw80LvQvtC6LnNobGlicy3RhNCw0LnQuz4gICAgICDRhNCw0LnQuyDQt9Cw0LzQtdC90Ysgc2hsaWJzINCy0LzQtdGB0YLQviBkZWJpYW4vc2hsaWJzLmxvY2FsLlxuIgorIiAgLVQ80YTQsNC50Lst0L/QtdGA0LXQvC4+ICAgICAgICAgINC+0LHQvdC+0LLQu9GP0YLRjCDQv9C10YDQtdC80LXQvdC90YvQtSDQsiDRjdGC0L7QvCDRhNCw0LnQu9C1LFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgINCwINC90LUg0LIgZGViaWFuL3N1YnN0dmFycy5cbiIKKyIgIC10PNGC0LjQvz4gICAgICAgICAgICAgICAgICDRg9C60LDQt9Cw0YLRjCDRgtC40L8g0L/QsNC60LXRgtCwICjQv9C+INGD0LzQvtC70YfQsNC90LjRjiBkZWIpLlxuIgorIiAgLXg80L/QsNC60LXRgj4gICAgICAgICAgICAgICAg0LjRgdC60LvRjtGH0LjRgtGMINC/0LDQutC10YIg0LjQtyDRgdC/0LjRgdC60LAg0LPQtdC90LXRgNC40YDRg9C10LzRi9GFICIKKyLQt9Cw0LLQuNGB0LjQvNC+0YHRgtC10LkuXG4iCisiICAtUzzQutCw0YIu0YHQsS7Qv9Cw0LouPiAgICAgICAgICDRgdC90LDRh9Cw0LvQsCDQuNGB0LrQsNGC0Ywg0L3QtdC+0LHRhdC+0LTQuNC80YvQtSDQsdC40LHQu9C40L7RgtC10LrQuFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgINCyINGD0LrQsNC30LDQvdC90L7QvCDQutCw0YLQsNC70L7Qs9C1INGB0LHQvtGA0LrQuCDQv9Cw0LrQtdGC0LAuXG4iCisiICAtdiAgICAgICAgICAgICAgICAgICAgICAg0LLQutC70Y7Rh9C40YLRjCDQv9C+0LrQsNC3INC/0L7QtNGA0L7QsdC90L7RgdGC0LXQuSDRgNCw0LHQvtGC0YsgKNC80L7QttC10YIg0LHRi9GC0YxcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICDRg9C60LDQt9Cw0L0g0L3QtdGB0LrQvtC70YzQutC+INGA0LDQtykuXG4iCisiICAtLWlnbm9yZS1taXNzaW5nLWluZm8gICAg0L3QtSDQvtGB0YLQsNC90LDQstC70LjQstCw0YLRjNGB0Y8sINC10YHQu9C4INC90LUg0L3QsNC50LTQtdC90LAg0LjQvdGE0L7RgNC80LDRhtC40Y9cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICDQviDQt9Cw0LLQuNGB0LjQvNC+0YHRgtGP0YUuXG4iCisiICAtLXdhcm5pbmdzPTzQt9C90LDRh9C10L3QuNC1PiAgICDQt9Cw0LTQsNGC0Ywg0L3QsNCx0L7RgCDQsNC60YLQuNCy0L3Ri9GFINC/0YDQtdC00YPQv9GA0LXQttC00LXQvdC40LlcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAo0YHQvNC+0YLRgNC40YLQtSDRgdC/0YDQsNCy0L7Rh9C90YPRjiDRgdGC0YDQsNC90LjRhtGDKS5cbiIKKyIgIC0tYWRtaW5kaXI9PNC60LDRgtCw0LvQvtCzPiAgICAg0LjQt9C80LXQvdC40YLRjCDQsNC00LzQuNC90LjRgdGC0YDQsNGC0LjQstC90YvQuSDQutCw0YLQsNC70L7Qsy5cbiIKKyIgIC1oLCAtLWhlbHAgICAgICAgICAgICAgICDQv9C+0LrQsNC30LDRgtGMINGN0YLQviDRgdC+0L7QsdGJ0LXQvdC40LUuXG4iCisiICAgICAgLS12ZXJzaW9uICAgICAgICAgICAg0L/QvtC60LDQt9Cw0YLRjCDQstC10YDRgdC40Y4uXG4iCisiXG4iCisi0KDQsNGB0L/QvtC30L3QsNCy0LDQtdC80YvQtSDQv9C+0LvRjyDQt9Cw0LLQuNGB0LjQvNC+0YHRgtC10Lk6XG4iCisiICAlc1xuIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjY3NworIywgcGVybC1mb3JtYXQKK21zZ2lkICJDYW4ndCBleHRyYWN0IG5hbWUgYW5kIHZlcnNpb24gZnJvbSBsaWJyYXJ5IG5hbWUgYCVzJyIKK21zZ3N0ciAi0J3QtSDRg9C00LDQu9C+0YHRjCDQstGL0LTQtdC70LjRgtGMINC40LzRjyDQuCDQstC10YDRgdC40Y4g0LjQtyDQsdC40LHQu9C40L7RgtC10LrQuCDCqyVzwrsiCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6Njg0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIHNoYXJlZCBsaWJzIGluZm8gZmlsZSBgJXMnIgorbXNnc3RyICLQvdC10LLQvtC30LzQvtC20L3QviDQvtGC0LrRgNGL0YLRjCDQuNC90YTQvtGA0LzQsNGG0LjQvtC90L3Ri9C5INGE0LDQudC7INGA0LDQt9C00LXQu9GP0LXQvNC+0Lkg0LHQuNCx0LvQuNC+0YLQtdC60Lggwqslc8K7IgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjY5MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJzaGFyZWQgbGlicyBpbmZvIGZpbGUgYCVzJyBsaW5lICVkOiBiYWQgbGluZSBgJXMnIgorbXNnc3RyICIiCisi0LjQvdGE0L7RgNC80LDRhtC40L7QvdC90YvQuSDRhNCw0LnQuyDRgNCw0LfQtNC10LvRj9C10LzQvtC5INCx0LjQsdC70LjQvtGC0LXQutC4IMKrJXPCuyDRgdGC0YDQvtC60LAgJWQ6INC90LXQv9GA0LDQstC40LvRjNC90LDRjyAiCisi0YHRgtGA0L7QutCwIMKrJXPCuyIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo3NDkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IG9wZW4gZmlsZSAlcyIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQvtGC0LrRgNGL0YLRjCDRhNCw0LnQuyAlcyIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo3ODMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIiRPUklHSU4gaXMgdXNlZCBpbiBSUEFUSCBvZiAlcyBhbmQgdGhlIGNvcnJlc3BvbmRpbmcgZGlyZWN0b3J5IGNvdWxkIG5vdCBiZSAiCisiaWRlbnRpZmllZCBkdWUgdG8gbGFjayBvZiBERUJJQU4gc3ViLWRpcmVjdG9yeSBpbiB0aGUgcm9vdCBvZiBwYWNrYWdlJ3MgIgorImJ1aWxkIHRyZWUiCittc2dzdHIgIiIKKyIkT1JJR0lOINC40YHQv9C+0LvRjNC30YPQtdGC0YHRjyDQsiBSUEFUSCAoJXMpINC4INGB0L7QvtGC0LLQtdGC0YHRgtCy0YPRjtGJ0LjQuSDQutCw0YLQsNC70L7QsyDQvdC10LLQvtC30LzQvtC20L3QviAiCisi0L7Qv9GA0LXQtNC10LvQuNGC0Ywg0LjQty3Qt9CwINC+0YLRgdGD0YLRgdGC0LLQuNGPINC/0L7QtNC60LDRgtCw0LvQvtCz0LAgREVCSUFOINCyINC60L7RgNC90LUg0LTQtdGA0LXQstCwINGB0LHQvtGA0LrQuCDQv9Cw0LrQtdGC0LAiCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6ODQ4Cittc2dpZCAiZGl2ZXJzaW9ucyBpbnZvbHZlZCAtIG91dHB1dCBtYXkgYmUgaW5jb3JyZWN0IgorbXNnc3RyICLQt9Cw0LTQtdC50YHRgtCy0L7QstCw0L3RiyDQvtGC0LrQu9C+0L3QtdC90LjRjyAtINGA0LXQt9GD0LvRjNGC0LDRgiDQvNC+0LbQtdGCINCx0YvRgtGMINC90LXQv9GA0LDQstC40LvRjNC90YvQvCIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo4NTAKK21zZ2lkICJ3cml0ZSBkaXZlcnNpb24gaW5mbyB0byBzdGRlcnIiCittc2dzdHIgItC30LDQv9C40YHRjCDQuNC90YTQvtGA0LzQsNGG0LjQuCDQvtCxINC+0YLQutC70L7QvdC10L3QuNGP0YUg0LIg0L/QvtGC0L7QuiDQvtGI0LjQsdC+0LoiCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6ODU0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVua25vd24gb3V0cHV0IGZyb20gZHBrZyAtLXNlYXJjaDogJyVzJyIKK21zZ3N0ciAi0L3QtdC40LfQstC10YHRgtC90YvQuSDQstGL0LLQvtC0INC+0YIgZHBrZyAtLXNlYXJjaDogwqslc8K7IgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjEwNAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBuZWVkcyBhIGRpcmVjdG9yeSIKK21zZ3N0ciAi0LTQu9GPICVzINGC0YDQtdCx0YPQtdGC0YHRjyDQutCw0YLQsNC70L7QsyIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDoxMTAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IHN0YXQgZGlyZWN0b3J5ICVzIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINCy0YvQv9C+0LvQvdC40YLRjCDRhNGD0L3QutGG0LjRjiBzdGF0INC00LvRjyDQutCw0YLQsNC70L7Qs9CwICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjExMgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJkaXJlY3RvcnkgYXJndW1lbnQgJXMgaXMgbm90IGEgZGlyZWN0b3J5IgorbXNnc3RyICLQt9C90LDRh9C10L3QuNC1INC/0LDRgNCw0LzQtdGC0YDQsCDQutCw0YLQsNC70L7Qs9CwICVzINC90LUg0Y/QstC70Y/QtdGC0YHRjyDQutCw0YLQsNC70L7Qs9C+0LwiCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6MTE3IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo0NzYKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo0Nzggc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjQ4MAorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjQ4MgorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2J6ci5wbToxMTEKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9ienIucG06MTM0CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvYnpyLnBtOjE5OAorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2J6ci5wbToyMDQKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9naXQucG06MTA0CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvZ2l0LnBtOjE0MworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2dpdC5wbToxNTUKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9naXQucG06MTc0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGRpciB0byBgJXMnIgorbXNnc3RyICLQvdC10LLQvtC30LzQvtC20L3QviDQstGL0L/QvtC70L3QuNGC0YwgY2hkaXIg0LIgwqslc8K7IgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjEzNQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1c2luZyBvcHRpb25zIGZyb20gJXM6ICVzIgorbXNnc3RyICLQuNGB0L/QvtC70YzQt9GD0Y7RgtGB0Y8g0L/QsNGA0LDQvNC10YLRgNGLINC40LcgJXM6ICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjE1MCBzY3JpcHRzL0Rwa2cvQ29tcHJlc3Npb24ucG06MTczCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGlzIG5vdCBhIHN1cHBvcnRlZCBjb21wcmVzc2lvbiIKK21zZ3N0ciAi0L3QtdC/0L7QtNC00LXRgNC20LjQstCw0LXQvNGL0Lkg0LzQtdGC0L7QtCDRgdC20LDRgtC40Y8gJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6MTU2IHNjcmlwdHMvRHBrZy9Db21wcmVzc2lvbi5wbToyMDIKKyM6IHNjcmlwdHMvRHBrZy9Db21wcmVzc2lvbi9Qcm9jZXNzLnBtOjg2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGlzIG5vdCBhIGNvbXByZXNzaW9uIGxldmVsIgorbXNnc3RyICIlcyDQvdC1INGP0LLQu9GP0LXRgtGB0Y8g0YHRgtC10L/QtdC90YzRjiDRgdC20LDRgtC40Y8iCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6MjE0CisjLCBmdXp6eQorI3wgbXNnaWQgIiIKKyN8ICJuZWVkIGEgY29tbWFuZCAoLXgsIC1iLCAtLWJlZm9yZS1idWlsZCwgLS1hZnRlci1idWlsZCwgLS1wcmludC1mb3JtYXQpIgorbXNnaWQgIiIKKyJuZWVkIGEgY29tbWFuZCAoLXgsIC1iLCAtLWJlZm9yZS1idWlsZCwgLS1hZnRlci1idWlsZCwgLS1wcmludC1mb3JtYXQsIC0tIgorImNvbW1pdCkiCittc2dzdHIgIiIKKyLQvdC10L7QsdGF0L7QtNC40LzQsCDQutC+0LzQsNC90LTQsCAoLXgsIC1iLCAtLWJlZm9yZS1idWlsZCwgLS1hZnRlci1idWlsZCwgLS1wcmludC1mb3JtYXQpIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjIzOAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBkb2Vzbid0IGNvbnRhaW4gYW55IGluZm9ybWF0aW9uIGFib3V0IHRoZSBzb3VyY2UgcGFja2FnZSIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjI4MworIywgcGVybC1mb3JtYXQKK21zZ2lkICJgJXMnIGlzIG5vdCBhIGxlZ2FsIGFyY2hpdGVjdHVyZSBzdHJpbmciCittc2dzdHIgIsKrJXPCuyDQvdC1INGP0LLQu9GP0LXRgtGB0Y8g0YDQsNC30YDQtdGI0ZHQvdC90L7QuSDRgdGC0YDQvtC60L7QuSDQsNGA0YXQuNGC0LXQutGC0YPRgNGLIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjI4NgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJhcmNoaXRlY3R1cmUgJXMgb25seSBhbGxvd2VkIG9uIGl0cyBvd24gKGxpc3QgZm9yIHBhY2thZ2UgJXMgaXMgYCVzJykiCittc2dzdHIgIiIKKyLQsNGA0YXQuNGC0LXQutGC0YPRgNCwICVzINC00L7Qu9C20L3QsCDQsdGL0YLRjCDRgtC+0LvRjNC60L4g0LjQtyDRg9C60LDQt9Cw0L3QvdGL0YUg0LIg0L/QsNC60LXRgtC1ICjRgdC/0LjRgdC+0Log0LTQu9GPINC/0LDQutC10YLQsCAiCisiJXM6IMKrJXPCuykiCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6MzAxCisjLCBmdXp6eSwgcGVybC1mb3JtYXQKKyN8IG1zZ2lkICJkaWZmIGAlcycgZG9lc24ndCBjb250YWluIGFueSBwYXRjaCIKK21zZ2lkICIlcyBkb2Vzbid0IGxpc3QgYW55IGJpbmFyeSBwYWNrYWdlIgorbXNnc3RyICJkaWZmIMKrJXPCuyDQvdC1INGB0L7QtNC10YDQttC40YIg0LfQsNC/0LvQsNGC0LrQuCIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDozNDMgc2NyaXB0cy9EcGtnL0J1aWxkRmxhZ3MucG06MjcwCisjOiBzY3JpcHRzL0Rwa2cvQ29tcHJlc3Npb24vRmlsZUhhbmRsZS5wbTo0MDEKKyM6IHNjcmlwdHMvRHBrZy9JbnRlcmZhY2UvU3RvcmFibGUucG06ODcgc2NyaXB0cy9EcGtnL1NobGlicy9PYmpkdW1wLnBtOjEyMgorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjI3NyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NDI1CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NTYxCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06MTEyCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06Mjg2CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06MzQ4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZWFkICVzIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC/0YDQvtGH0LjRgtCw0YLRjCAlcyIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDozNTAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibm8gc291cmNlIGZvcm1hdCBzcGVjaWZpZWQgaW4gJXMsIHNlZSBkcGtnLXNvdXJjZSgxKSIKK21zZ3N0ciAi0L3QtSDQt9Cw0LTQsNC9INGE0L7RgNC80LDRgiDQuNGB0YXQvtC00L3QuNC60L7QsiDQsiAlcywg0YHQvC4gZHBrZy1zb3VyY2UoMSkiCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6Mzc4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbid0IGJ1aWxkIHdpdGggc291cmNlIGZvcm1hdCAnJXMnOiAlcyIKK21zZ3N0ciAi0L3QtdCy0L7Qt9C80L7QttC90L4g0YHQvtCx0YDQsNGC0Ywg0YEg0YTQvtGA0LzQsNGC0L7QvCDQuNGB0YXQvtC00L3QuNC60LAgwqslc8K7OiAlcyIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDozODEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidXNpbmcgc291cmNlIGZvcm1hdCBgJXMnIgorbXNnc3RyICLQuNGB0L/QvtC70YzQt9GD0LXRgtGB0Y8g0YTQvtGA0LzQsNGCINC40YHRhdC+0LTQvdC40LrQsCDCqyVzwrsiCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6Mzg4IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbTozMDEKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbTozNDYgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjU0MQorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2J6ci5wbToxNTIKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9uYXRpdmUucG06ODQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiYnVpbGRpbmcgJXMgaW4gJXMiCittc2dzdHIgItGB0LHQvtGA0LrQsCAlcyDQsiAlcyIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDozOTkKK21zZ2lkICIteCBuZWVkcyBhdCBsZWFzdCBvbmUgYXJndW1lbnQsIHRoZSAuZHNjIgorbXNnc3RyICIteCDRgtGA0LXQsdGD0LXRgiDRg9C60LDQt9Cw0L3QuNGPINGF0L7RgtGPINCx0Ysg0L7QtNC90L7Qs9C+INC30L3QsNGH0LXQvdC40Y8gLmRzYyIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDo0MDIKK21zZ2lkICIteCB0YWtlcyBubyBtb3JlIHRoYW4gdHdvIGFyZ3VtZW50cyIKK21zZ3N0ciAiLXgg0LzQvtC20LXRgiDQuNC80LXRgtGMINC90LUg0LHQvtC70LXQtSDQtNCy0YPRhSDQt9C90LDRh9C10L3QuNC5IgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjQwNgorbXNnaWQgIi14IG5lZWRzIHRoZSAuZHNjIGZpbGUgYXMgZmlyc3QgYXJndW1lbnQsIG5vdCBhIGRpcmVjdG9yeSIKK21zZ3N0ciAiLXgg0L/RgNC40L3QuNC80LDQtdGCIC5kc2Mg0YTQsNC50Lsg0L/QtdGA0LLRi9C8INC30L3QsNGH0LXQvdC40LXQvCwg0LAg0L3QtSDQutCw0YLQsNC70L7QsyIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDo0MjIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5wYWNrIHRhcmdldCBleGlzdHM6ICVzIgorbXNnc3RyICLRhtC10LvRjCDRgNCw0YHQv9Cw0LrQvtCy0LrQuCDRgdGD0YnQtdGB0YLQstGD0LXRgjogJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6NDMyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGRvZXNuJ3QgY29udGFpbiBhIHZhbGlkIE9wZW5QR1Agc2lnbmF0dXJlIgorbXNnc3RyICIlcyDQvdC1INGB0L7QtNC10YDQttC40YIg0LrQvtGA0YDQtdC60YLQvdC+0Lkg0L/QvtC00L/QuNGB0LggT3BlblBHUCIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDo0MzQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZXh0cmFjdGluZyB1bnNpZ25lZCBzb3VyY2UgcGFja2FnZSAoJXMpIgorbXNnc3RyICLRgNCw0YHQv9Cw0LrQvtCy0LrQsCDQvdC10L/QvtC00L/QuNGB0LDQvdC90L7Qs9C+INC/0LDQutC10YLQsCDRgSDQuNGB0YXQvtC00L3Ri9C8INC60L7QtNC+0LwgKCVzKSIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDo0NDEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZXh0cmFjdGluZyAlcyBpbiAlcyIKK21zZ3N0ciAi0LjQt9Cy0LvQtdGH0LXQvdC40LUgJXMg0LIgJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6NDQ5Cittc2dpZCAib25seSBvbmUgb2YgLXgsIC1iIG9yIC0tcHJpbnQtZm9ybWF0IGFsbG93ZWQsIGFuZCBvbmx5IG9uY2UiCittc2dzdHIgItGA0LDQt9GA0LXRiNC10L3QviDRh9GC0L4t0YLQviDQvtC00L3QvjogLXgsIC1iINC40LvQuCAtLXByaW50LWZvcm1hdCDQuCDRgtC+0LvRjNC60L4g0L7QtNC40L0g0YDQsNC3IgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjQ1NworbXNnaWQgIiIKKyJcbiIKKyJDb3B5cmlnaHQgKEMpIDE5OTYgSWFuIEphY2tzb25cbiIKKyJDb3B5cmlnaHQgKEMpIDE5OTcgS2xlZSBEaWVuZXNcbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDggUmFwaGFlbCBIZXJ0em9nIgorbXNnc3RyICIiCisiXG4iCisiQ29weXJpZ2h0IChDKSAxOTk2IElhbiBKYWNrc29uXG4iCisiQ29weXJpZ2h0IChDKSAxOTk3IEtsZWUgRGllbmVzXG4iCisiQ29weXJpZ2h0IChDKSAyMDA4IFJhcGhhZWwgSGVydHpvZyIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDo0NzAKKyMsIGZ1enp5LCBwZXJsLWZvcm1hdAorI3wgbXNnaWQgIiIKKyN8ICJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gPGNvbW1hbmQ+XG4iCisjfCAiXG4iCisjfCAiQ29tbWFuZHM6XG4iCisjfCAiICAteCA8ZmlsZW5hbWU+LmRzYyBbPG91dHB1dC1kaXI+XVxuIgorI3wgIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4dHJhY3Qgc291cmNlIHBhY2thZ2UuXG4iCisjfCAiICAtYiA8ZGlyPiAgICAgICAgICAgICAgICAgYnVpbGQgc291cmNlIHBhY2thZ2UuXG4iCisjfCAiICAtLXByaW50LWZvcm1hdCA8ZGlyPiAgICAgcHJpbnQgdGhlIHNvdXJjZSBmb3JtYXQgdGhhdCB3b3VsZCBiZVxuIgorI3wgIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzZWQgdG8gYnVpbGQgdGhlIHNvdXJjZSBwYWNrYWdlLiIKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIDxjb21tYW5kPlxuIgorIlxuIgorIkNvbW1hbmRzOlxuIgorIiAgLXggPGZpbGVuYW1lPi5kc2MgWzxvdXRwdXQtZGlyPl1cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBleHRyYWN0IHNvdXJjZSBwYWNrYWdlLlxuIgorIiAgLWIgPGRpcj4gICAgICAgICAgICAgICAgIGJ1aWxkIHNvdXJjZSBwYWNrYWdlLlxuIgorIiAgLS1wcmludC1mb3JtYXQgPGRpcj4gICAgIHByaW50IHRoZSBzb3VyY2UgZm9ybWF0IHRoYXQgd291bGQgYmVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2VkIHRvIGJ1aWxkIHRoZSBzb3VyY2UgcGFja2FnZS5cbiIKKyIgIC0tY29tbWl0IFs8ZGlyPiBbPHBhdGNoLW5hbWU+XV1cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBzdG9yZSB1cHN0cmVhbSBjaGFuZ2VzIGluIGEgbmV3IHBhdGNoLiIKK21zZ3N0ciAiIgorItCY0YHQv9C+0LvRjNC30L7QstCw0L3QuNC1OiAlcyBbPNC/0LDRgNCw0LzQtdGC0YA+IC4uLl0gPNC60L7QvNCw0L3QtNCwPlxuIgorIlxuIgorItCa0L7QvNCw0L3QtNGLOlxuIgorIiAgLXggPNC40LzRj1/RhNCw0LnQu9CwPi5kc2MgWzzQstGL0YXQvtC00L0u0LrQsNGC0LDQu9C+0LM+XVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgINGA0LDRgdC/0LDQutC+0LLQsNGC0Ywg0L/QsNC60LXRgiDQuNGB0YXQvtC00L3QvtCz0L4g0LrQvtC00LAuXG4iCisiICAtYiA80LrQsNGCPiAgICAgICAgICAgICAgICAg0YHQvtCx0YDQsNGC0Ywg0L/QsNC60LXRgiDQuNGB0YXQvtC00L3QvtCz0L4g0LrQvtC00LAuXG4iCisiICAtLXByaW50LWZvcm1hdCA80LrQsNGCPiAgICAg0LLRi9Cy0LXRgdGC0Lgg0YTQvtGA0LzQsNGCINC40YHRhdC+0LTQvdC40LrQsCwg0LrQvtGC0L7RgNGL0LlcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICDQuNGB0L/QvtC70YzQt9C+0LLQsNC70YHRjyDQsdGLINC00LvRjyDRgdCx0L7RgNC60Lgg0L/QsNC60LXRgtCwINC40YHRhdC+0LTQvdC+0LPQviDQutC+0LTQsC4iCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6NDgxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJCdWlsZCBvcHRpb25zOlxuIgorIiAgLWM8Y29udHJvbGZpbGU+ICAgICAgICAgIGdldCBjb250cm9sIGluZm8gZnJvbSB0aGlzIGZpbGUuXG4iCisiICAtbDxjaGFuZ2Vsb2dmaWxlPiAgICAgICAgZ2V0IHBlci12ZXJzaW9uIGluZm8gZnJvbSB0aGlzIGZpbGUuXG4iCisiICAtRjxjaGFuZ2Vsb2dmb3JtYXQ+ICAgICAgZm9yY2UgY2hhbmdlIGxvZyBmb3JtYXQuXG4iCisiICAtVjxuYW1lPj08dmFsdWU+ICAgICAgICAgc2V0IGEgc3Vic3RpdHV0aW9uIHZhcmlhYmxlLlxuIgorIiAgLVQ8dmFybGlzdGZpbGU+ICAgICAgICAgIHJlYWQgdmFyaWFibGVzIGhlcmUuXG4iCisiICAtRDxmaWVsZD49PHZhbHVlPiAgICAgICAgb3ZlcnJpZGUgb3IgYWRkIGEgLmRzYyBmaWVsZCBhbmQgdmFsdWUuXG4iCisiICAtVTxmaWVsZD4gICAgICAgICAgICAgICAgcmVtb3ZlIGEgZmllbGQuXG4iCisiICAtcSAgICAgICAgICAgICAgICAgICAgICAgcXVpZXQgbW9kZS5cbiIKKyIgIC1pWzxyZWdleHA+XSAgICAgICAgICAgICBmaWx0ZXIgb3V0IGZpbGVzIHRvIGlnbm9yZSBkaWZmcyBvZlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGRlZmF1bHRzIHRvOiAnJXMnKS5cbiIKKyIgIC1JWzxwYXR0ZXJuPl0gICAgICAgICAgICBmaWx0ZXIgb3V0IGZpbGVzIHdoZW4gYnVpbGRpbmcgdGFyYmFsbHNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChkZWZhdWx0cyB0bzogJXMpLlxuIgorIiAgLVo8Y29tcHJlc3Npb24+ICAgICAgICAgIHNlbGVjdCBjb21wcmVzc2lvbiB0byB1c2UgKGRlZmF1bHRzIHRvICclcycsXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdXBwb3J0ZWQgYXJlOiAlcykuXG4iCisiICAtejxsZXZlbD4gICAgICAgICAgICAgICAgY29tcHJlc3Npb24gbGV2ZWwgdG8gdXNlIChkZWZhdWx0cyB0byAnJWQnLFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3VwcG9ydGVkIGFyZTogJzEnLSc5JywgJ2Jlc3QnLCAnZmFzdCcpIgorbXNnc3RyICIiCisi0J/QsNGA0LDQvNC10YLRgNGLINGB0LHQvtGA0LrQuDpcbiIKKyIgIC1jPNGD0L/RgC7RhNCw0LnQuz4gICAgICAgICAgICAg0LHRgNCw0YLRjCDRg9C/0YDQsNCy0LvRj9GO0YnRg9GOINC40L3RhNC+0YDQvNCw0YbQuNGOXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAg0LjQtyDRg9C60LDQt9Cw0L3QvdC+0LPQviDRhNCw0LnQu9CwLlxuIgorIiAgLWw80YTQsNC50Lst0LjQt9C80LXQvdC10L3QuNC5PiAgICAgICDQsdGA0LDRgtGMINGB0L/QuNGB0L7QuiDQuNC30LzQtdC90LXQvdC40Lkg0LjQtyDRg9C60LDQt9Cw0L3QvdC+0LPQviDRhNCw0LnQu9CwLlxuIgorIiAgLUY80YTQvtGA0LzQsNGCLdC40LfQvC4+ICAgICAgICAgINC30LDQtNCw0YLRjCDRhNC+0YDQvNCw0YIg0LbRg9GA0L3QsNC70LAg0LjQt9C80LXQvdC10L3QuNC5LlxuIgorIiAgLVY80LjQvNGPPj080LfQvdCw0YcuPiAgICAgICAgICDRg9GB0YLQsNC90L7QstC40YLRjCDQv9C10YDQtdC80LXQvdC90YPRjiDQv9C+0LTRgdGC0LDQvdC+0LLQutC4LlxuIgorIiAgLVQ80YTQsNC50Lst0L/QtdGA0LXQvC4+ICAgICAgICAgINGH0LjRgtCw0YLRjCDQv9C10YDQtdC80LXQvdC90YvQtSDQuNC3INGD0LrQsNC30LDQvdC90L7Qs9C+INGE0LDQudC70LAuXG4iCisiICAtRDzQv9C+0LvQtT49PNC30L3QsNGHLj4gICAgICAgICDQt9Cw0LzQtdC90LjRgtGMINC40LvQuCDQtNC+0LHQsNCy0LjRgtGMIC5kc2Mg0L/QvtC70LUg0Lgg0LfQvdCw0YfQtdC90LjQtS5cbiIKKyIgIC1VPNC/0L7Qu9C1PiAgICAgICAgICAgICAgICAg0YPQtNCw0LvQuNGC0Ywg0L/QvtC70LUuXG4iCisiICAtcSAgICAgICAgICAgICAgICAgICAgICAg0L3QtSDQstGL0LLQvtC00LjRgtGMINC/0YDQtdC00YPQv9GA0LXQttC00LXQvdC40Y8uXG4iCisiICAtaVs80YDQtdCzLtCy0YvRgC4+XSAgICAgICAgICAg0L3QtSDQstC60LvRjtGH0LDRgtGMINGB0L7QstC/0LDQtNCw0Y7RidC40LUg0YEg0YDQtdCz0YPQu9GP0YDQvdGL0Lwg0LLRi9GA0LDQttC10L3QuNC10LxcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICDRhNCw0LnQu9GLINCyIGRpZmYgKNC/0L4g0YPQvNC+0LvRh9Cw0L3QuNGOOiAlcykuXG4iCisiICAtSVs80YjQsNCx0LvQvtC9Pl0gICAgICAgICAgICAg0L3QtSDQstC60LvRjtGH0LDRgtGMINC/0L7QtNC/0LDQtNCw0Y7RidC40LUg0L/QvtC0INGI0LDQsdC70L7QvVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgINGE0LDQudC70Ysg0LIgdGFyYmFsbCAo0L/QviDRg9C80L7Qu9GH0LDQvdC40Y46ICVzKS5cbiIKKyIgIC1aPNCw0LvQs9C+0YDQuNGC0Lw+ICAgICAgICAgICAgINC30LDQtNCw0YLRjCDQuNGB0L/QvtC70YzQt9GD0LXQvNGL0Lkg0LzQtdGC0L7QtCDRgdC20LDRgtC40Y9cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICjQv9C+INGD0LzQvtC70YfQsNC90LjRjiAlcywg0L/QvtC00LTQtdGA0LbQuNCy0LDRjtGC0YHRjzogJXMpLlxuIgorIiAgLXo80YHRgtC10L/QtdC90Yw+ICAgICAgICAgICAgICDRgdGC0LXQv9C10L3RjCDRgdC20LDRgtC40Y8gKNC/0L4g0YPQvNC+0LvRh9Cw0L3QuNGOOiAlZCxcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgINC/0L7QtNC00LXRgNC20LjQstCw0Y7RgtGB0Y86IDEtOSwgYmVzdCwgZmFzdCkiCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6NDk5Cittc2dpZCAiIgorIkV4dHJhY3Qgb3B0aW9uczpcbiIKKyIgIC0tbm8tY29weSAgICAgICAgICAgICAgICBkb24ndCBjb3B5IC5vcmlnIHRhcmJhbGxzXG4iCisiICAtLW5vLWNoZWNrICAgICAgICAgICAgICAgZG9uJ3QgY2hlY2sgc2lnbmF0dXJlIGFuZCBjaGVja3N1bXMgYmVmb3JlICIKKyJ1bnBhY2tpbmdcbiIKKyIgIC0tcmVxdWlyZS12YWxpZC1zaWduYXR1cmUgYWJvcnQgaWYgdGhlIHBhY2thZ2UgZG9lc24ndCBoYXZlIGEgdmFsaWQgIgorInNpZ25hdHVyZSIKK21zZ3N0ciAiIgorItCf0LDRgNCw0LzQtdGC0YDRiyDRgNCw0YHQv9Cw0LrQvtCy0LrQuDpcbiIKKyIgIC0tbm8tY29weSAgICAgICAgICAgICAgICAgICDQvdC1INC60L7Qv9C40YDQvtCy0LDRgtGMIC5vcmlnIHRhcmJhbGwt0YtcbiIKKyIgIC0tbm8tY2hlY2sgICAgICAgICAgICAgICAgICDQvdC1INC/0YDQvtCy0LXRgNGP0YLRjCDQv9C+0LTQv9C40YHRjCDQuCDQutC+0L3RgtGA0L7Qu9GM0L3Ri9C1INGB0YPQvNC80YtcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDQv9C10YDQtdC0INGA0LDRgdC/0LDQutC+0LLQutC+0LlcbiIKKyIgIC0tcmVxdWlyZS12YWxpZC1zaWduYXR1cmUgICDQv9GA0LXRgNCy0LDRgtGM0YHRjywg0LXRgdC70Lgg0L3QtdGCINC60L7RgNGA0LXQutGC0L3QvtC5INC/0L7QtNC/0LjRgdC4IgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjUwNAorbXNnaWQgIiIKKyJHZW5lcmFsIG9wdGlvbnM6XG4iCisiICAtaCwgLS1oZWxwICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgICAgICAtLXZlcnNpb24gICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLiIKK21zZ3N0ciAiIgorItCe0LHRidC40LUg0L/QsNGA0LDQvNC10YLRgNGLOlxuIgorIiAgLWgsIC0taGVscCAgICAgICAgICAgICAgINC/0L7QutCw0LfQsNGC0Ywg0Y3RgtC+INGB0L7QvtCx0YnQtdC90LjQtS5cbiIKKyIgICAgICAtLXZlcnNpb24gICAgICAgICAgICDQv9C+0LrQsNC30LDRgtGMINCy0LXRgNGB0LjRji4iCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6NTA4Cittc2dpZCAiIgorIk1vcmUgb3B0aW9ucyBhcmUgYXZhaWxhYmxlIGJ1dCB0aGV5IGRlcGVuZCBvbiB0aGUgc291cmNlIHBhY2thZ2UgZm9ybWF0LlxuIgorIlNlZSBkcGtnLXNvdXJjZSgxKSBmb3IgbW9yZSBpbmZvLiIKK21zZ3N0ciAiIgorItCi0LDQutC20LUsINC10YHRgtGMINC10YnRkSDQv9Cw0YDQsNC80LXRgtGA0YssINC90L4g0L7QvdC4INC/0YDQuNCy0Y/Qt9Cw0L3RiyDQuiDRhNC+0YDQvNCw0YLRgyDQv9Cw0LrQtdGC0LBcbiIKKyLQuNGB0YXQvtC00L3QvtCz0L4g0LrQvtC00LAuINCf0L7QtNGA0L7QsdC90LXQuSDRgdC8LiDQsiBkcGtnLXNvdXJjZSgxKS4iCisKKyM6IHNjcmlwdHMvY2hhbmdlbG9nL2RlYmlhbi5wbDozNgorbXNnaWQgIiIKKyJcbiIKKyJDb3B5cmlnaHQgKEMpIDE5OTYgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDA1LDIwMDcgRnJhbmsgTGljaHRlbmhlbGQuIgorbXNnc3RyICIiCisiXG4iCisiQ29weXJpZ2h0IChDKSAxOTk2IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwNSwyMDA3IEZyYW5rIExpY2h0ZW5oZWxkLiIKKworIzogc2NyaXB0cy9jaGFuZ2Vsb2cvZGViaWFuLnBsOjQ3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJVc2FnZTogJXMgWzxvcHRpb24+Li4uXSBbPGNoYW5nZWxvZ2ZpbGU+XVxuIgorIlxuIgorIk9wdGlvbnM6XG4iCisiICAgIC0taGVscCwgLWggICAgICAgICAgICAgICAgICBwcmludCB1c2FnZSBpbmZvcm1hdGlvblxuIgorIiAgICAtLXZlcnNpb24sIC1WICAgICAgICAgICAgICAgcHJpbnQgdmVyc2lvbiBpbmZvcm1hdGlvblxuIgorIiAgICAtLWxhYmVsLCAtbCA8ZmlsZT4gICAgICAgICAgbmFtZSBvZiB0aGUgY2hhbmdlbG9nIGZpbGUgdG9cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzZSBpbiBlcnJvciBtZXNzYWdlc1xuIgorIiAgICAtLWZpbGUgPGZpbGU+ICAgICAgICAgICAgICAgY2hhbmdlbG9nIGZpbGUgdG8gcGFyc2UsIGRlZmF1bHRzXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0byAnLScgKHN0YW5kYXJkIGlucHV0KVxuIgorIiAgICAtLWZvcm1hdCA8b3V0cHV0Zm9ybWF0PiAgICAgc2VlIG1hbiBwYWdlIGZvciBsaXN0IG9mIGF2YWlsYWJsZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3V0cHV0IGZvcm1hdHMsIGRlZmF1bHRzIHRvICdkcGtnJ1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBkcGtnLWRldlxuIgorIiAgICAtLXNpbmNlLCAtcywgLXYgPHZlcnNpb24+ICAgaW5jbHVkZSBhbGwgY2hhbmdlcyBsYXRlciB0aGFuIHZlcnNpb25cbiIKKyIgICAgLS11bnRpbCwgLXUgPHZlcnNpb24+ICAgICAgIGluY2x1ZGUgYWxsIGNoYW5nZXMgZWFybGllciB0aGFuIHZlcnNpb25cbiIKKyIgICAgLS1mcm9tLCAtZiA8dmVyc2lvbj4gICAgICAgIGluY2x1ZGUgYWxsIGNoYW5nZXMgZXF1YWwgb3IgbGF0ZXJcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoYW4gdmVyc2lvblxuIgorIiAgICAtLXRvLCAtdCA8dmVyc2lvbj4gICAgICAgICAgaW5jbHVkZSBhbGwgY2hhbmdlcyB1cCB0byBvciBlcXVhbFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhhbiB2ZXJzaW9uXG4iCisiICAgIC0tY291bnQsIC1jLCAtbiA8bnVtYmVyPiAgICBpbmNsdWRlIDxudW1iZXI+IGVudHJpZXMgZnJvbSB0aGUgdG9wXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAob3IgdGhlIHRhaWwgaWYgPG51bWJlcj4gaXMgbG93ZXIgdGhhbiAwKVxuIgorIiAgICAtLW9mZnNldCwgLW8gPG51bWJlcj4gICAgICAgY2hhbmdlIHRoZSBzdGFydGluZyBwb2ludCBmb3IgLS1jb3VudCxcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvdW50ZWQgZnJvbSB0aGUgdG9wIChvciB0aGUgdGFpbCBpZlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG51bWJlcj4gaXMgbG93ZXIgdGhhbiAwKVxuIgorIiAgICAtLWFsbCAgICAgICAgICAgICAgICAgICAgICAgaW5jbHVkZSBhbGwgY2hhbmdlc1xuIgorbXNnc3RyICIiCisi0JjRgdC/0L7Qu9GM0LfQvtCy0LDQvdC40LU6ICVzIFs80L/QsNGA0LDQvNC10YLRgD4uLi5dIFs80YTQsNC50Lst0LjQt9C8Pl1cbiIKKyJcbiIKKyLQn9Cw0YDQsNC80LXRgtGA0Ys6XG4iCisiICAgIC0taGVscCwgLWggICAgICAgICAgICAgICAgICDQv9C+0LrQsNC30LDRgtGMINGN0YLQviDRgdC+0L7QsdGJ0LXQvdC40LVcbiIKKyIgICAgLS12ZXJzaW9uLCAtViAgICAgICAgICAgICAgINC/0L7QutCw0LfQsNGC0Ywg0LLQtdGA0YHQuNGOXG4iCisiICAgIC0tbGFiZWwsIC1sIDzRhNCw0LnQuz4gICAgICAgICAg0L3QsNC30LLQsNC90LjQtSDRhNCw0LnQu9CwINC40LfQvNC10L3QtdC90LjQuVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg0LTQu9GPINC/0L7QutCw0LfQsCDQsiDRgdC+0L7QsdGJ0LXQvdC40Y/RhSDQvtCxINC+0YjQuNCx0LrQtVxuIgorIiAgICAtLWZpbGUgPNGE0LDQudC7PiAgICAgICAgICAgICAgINCw0L3QsNC70LjQt9C40YDRg9C10LzRi9C5INGE0LDQudC7INC40LfQvNC10L3QtdC90LjQuSwg0L/QviDRg9C80L7Qu9GH0LDQvdC40Y5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgINC40YHQv9C+0LvRjNC30YPQtdGC0YHRjyDCqy3CuyAo0YHRgtCw0L3QtNCw0YDRgtC90YvQuSDQstGF0L7QtNC90L7QuSAiCisi0L/QvtGC0L7QuilcbiIKKyIgICAgLS1mb3JtYXQgPNGE0L7RgNC80LDRgi3QstGL0LLQvtC00LA+ICAgINCyINGB0L/RgNCw0LLQvtGH0L3QvtC5INGB0YLRgNCw0L3QuNGG0LUg0LXRgdGC0Ywg0YHQv9C40YHQvtC6INCy0L7Qt9C80L7QttC90YvRhVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg0LLRi9GF0L7QtNC90YvRhSDRhNC+0YDQvNCw0YLQvtCyLCDQv9C+INGD0LzQvtC70YfQsNC90LjRjiDQuNGB0L8uIMKrZHBrZ8K7XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDQtNC70Y8g0YHQvtCy0LzQtdGB0YLQuNC80L7RgdGC0Lgg0YEgZHBrZy1kZXZcbiIKKyIgICAgLS1zaW5jZSwgLXMsIC12IDzQstC10YDRgdC40Y8+ICAgINCy0LrQu9GO0YfQuNGC0Ywg0LLRgdC1INC40LfQvNC10L3QtdC90LjRjyDQv9C+0YHQu9C1INGN0YLQvtC5INCy0LXRgNGB0LjQuFxuIgorIiAgICAtLXVudGlsLCAtdSA80LLQtdGA0YHQuNGPPiAgICAgICAg0LLQutC70Y7Rh9C40YLRjCDQstGB0LUg0LjQt9C80LXQvdC10L3QuNGPINC00L4g0Y3RgtC+0Lkg0LLQtdGA0YHQuNC4XG4iCisiICAgIC0tZnJvbSwgLWYgPNCy0LXRgNGB0LjRjz4gICAgICAgICDQstC60LvRjtGH0LjRgtGMINC40LfQvNC10L3QtdC90LjRjyDRjdGC0L7QuSDQuCDQstGB0LXRhSDQv9C+0LfQtNC90LjRhVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg0LLQtdGA0YHQuNC5XG4iCisiICAgIC0tdG8sIC10IDzQstC10YDRgdC40Y8+ICAgICAgICAgICDQstC60LvRjtGH0LjRgtGMINCy0YHQtSDQuNC30LzQtdC90LXQvdC40Y8g0LTQviDRjdGC0L7QuSDQstC10YDRgdC40LhcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgINCy0LrQu9GO0YfQuNGC0LXQu9GM0L3QvlxuIgorIiAgICAtLWNvdW50LCAtYywgLW4gPNGH0LjRgdC70L4+ICAgICDQstC60LvRjtGH0LjRgtGMIDzRh9C40YHQu9C+PiDQt9Cw0L/QuNGB0LXQuSDQvtGCINC90LDRh9Cw0LvQsFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKNC40LvQuCDQutC+0L3RhtCwLCDQtdGB0LvQuCA80YfQuNGB0LvQvj4g0L7RgtGA0LjRhtCw0YLQtdC70YzQvdC+0LUpXG4iCisiICAgIC0tb2Zmc2V0LCAtbyA80YfQuNGB0LvQvj4gICAgICAgINC40LfQvNC10L3QuNGC0Ywg0L3QsNGH0LDQu9GM0L3Rg9GOINGC0L7Rh9C60YMg0LTQu9GPIC0tY291bnQsXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDQvtGC0YHRh9C40YLRi9Cy0LDRgtGMINC+0YIg0L3QsNGH0LDQu9CwICjQuNC70Lgg0LrQvtC90YbQsCwg0LXRgdC70LhcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDzRh9C40YHQu9C+PiDQvtGC0YDQuNGG0LDRgtC10LvRjNC90L7QtSlcbiIKKyIgICAgLS1hbGwgICAgICAgICAgICAgICAgICAgICAgINCy0LrQu9GO0YfQuNGC0Ywg0LLRgdC1INC40LfQvNC10L3QtdC90LjRj1xuIgorCisjOiBzY3JpcHRzL2NoYW5nZWxvZy9kZWJpYW4ucGw6ODYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAib3V0cHV0IGZvcm1hdCAlcyBub3Qgc3VwcG9ydGVkIgorbXNnc3RyICLQstGL0YXQvtC00L3QvtC5INGE0L7RgNC80LDRgiAlcyDQvdC1INC/0L7QtNC00LXRgNC20LjQstCw0LXRgtGB0Y8iCisKKyM6IHNjcmlwdHMvY2hhbmdlbG9nL2RlYmlhbi5wbDoxMTEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibW9yZSB0aGFuIG9uZSBmaWxlIHNwZWNpZmllZCAoJXMgYW5kICVzKSIKK21zZ3N0ciAi0YPQutCw0LfQsNC90L4g0LHQvtC70LXQtSDQvtC00L3QvtCz0L4g0YTQsNC50LvQsCAoJXMg0LggJXMpIgorCisjOiBzY3JpcHRzL2NoYW5nZWxvZy9kZWJpYW4ucGw6MTM1IHNjcmlwdHMvRHBrZy9JbnRlcmZhY2UvU3RvcmFibGUucG06ODQKK21zZ2lkICI8c3RhbmRhcmQgaW5wdXQ+IgorbXNnc3RyICI80YHRgtCw0L3QtNCw0YDRgtC90YvQuSDQstCy0L7QtD4iCisKKyM6IHNjcmlwdHMvY2hhbmdlbG9nL2RlYmlhbi5wbDoxMzYKK21zZ2lkICJmYXRhbCBlcnJvciBvY2N1cnJlZCB3aGlsZSBwYXJzaW5nIGlucHV0IgorbXNnc3RyICLQvdC10YPRgdGC0YDQsNC90LjQvNCw0Y8g0L7RiNC40LHQutCwINC/0YDQuCDQsNC90LDQu9C40LfQtSDQstGF0L7QtNC90YvRhSDQtNCw0L3QvdGL0YUiCisKKyM6IHNjcmlwdHMvY2hhbmdlbG9nL2RlYmlhbi5wbDoxMzkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZmF0YWwgZXJyb3Igb2NjdXJyZWQgd2hpbGUgcGFyc2luZyAlcyIKK21zZ3N0ciAi0L3QtdGD0YHRgtGA0LDQvdC40LzQsNGPINC+0YjQuNCx0LrQsCDQv9GA0Lgg0LDQvdCw0LvQuNC30LUgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9BcmNoLnBtOjg2Cittc2dpZCAiIgorIkNvdWxkbid0IGRldGVybWluZSBnY2Mgc3lzdGVtIHR5cGUsIGZhbGxpbmcgYmFjayB0byBkZWZhdWx0IChuYXRpdmUgIgorImNvbXBpbGF0aW9uKSIKK21zZ3N0ciAiIgorItCd0LUg0YPQtNCw0LvQvtGB0Ywg0L7Qv9GA0LXQtNC10LvQuNGC0YwgZ2NjINGC0LjQvyDRgdC40YHRgtC10LzRiywg0L/QtdGA0LXRhdC+0LQg0Log0LjRgdC/0L7Qu9GM0LfQvtCy0LDQvdC40Y4g0LfQvdCw0YfQtdC90LjRjyDQv9C+ICIKKyLRg9C80L7Qu9GH0LDQvdC40Y4gKNGA0L7QtNC90LDRjyDQutC+0LzQv9C40LvRj9GG0LjRjykiCisKKyM6IHNjcmlwdHMvRHBrZy9BcmNoLnBtOjk1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJVbmtub3duIGdjYyBzeXN0ZW0gdHlwZSAlcywgZmFsbGluZyBiYWNrIHRvIGRlZmF1bHQgKG5hdGl2ZSBjb21waWxhdGlvbikiCittc2dzdHIgIiIKKyLQndC10LjQt9Cy0LXRgdGC0L3Ri9C5IGdjYyDRgtC40L8g0YHQuNGB0YLQtdC80YsgJXMsINC/0LXRgNC10YXQvtC0INC6INC40YHQv9C+0LvRjNC30L7QstCw0L3QuNGOINC30L3QsNGH0LXQvdC40Y8g0L/QviAiCisi0YPQvNC+0LvRh9Cw0L3QuNGOICjRgNC+0LTQvdCw0Y8g0LrQvtC80L/QuNC70Y/RhtC40Y8pIgorCisjOiBzY3JpcHRzL0Rwa2cvQnVpbGRGbGFncy5wbToyNzgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibGluZSAlZCBvZiAlcyBtZW50aW9ucyB1bmtub3duIGZsYWcgJXMiCittc2dzdHIgItCyINGB0YLRgNC+0LrQtSAlZCDQuNC3ICVzINGD0L/QvtC80Y/QvdGD0YIg0L3QtdC40LfQstC10YHRgtC90YvQuSDRhNC70LDQsyAlcyIKKworIzogc2NyaXB0cy9EcGtnL0J1aWxkRmxhZ3MucG06MjkxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImxpbmUgJWQgb2YgJXMgaXMgaW52YWxpZCwgaXQgaGFzIGJlZW4gaWdub3JlZC4iCittc2dzdHIgItC90LXQv9GA0LDQstC40LvRjNC90LDRjyDRgdGC0YDQvtC60LAgJWQg0LjQtyAlcywg0L7QvdCwINCx0YPQtNC10YIg0L/RgNC+0LjQs9C90L7RgNC40YDQvtCy0LDQvdCwLiIKKworIzogc2NyaXB0cy9EcGtnL0J1aWxkT3B0aW9ucy5wbTo5NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGZsYWcgaW4gJXM6ICVzIgorbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70YzQvdGL0Lkg0YTQu9Cw0LMg0LIgJXM6ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29tcHJlc3Npb24vUHJvY2Vzcy5wbTo3MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgYSBzdXBwb3J0ZWQgY29tcHJlc3Npb24gbWV0aG9kIgorbXNnc3RyICLQvdC10L/QvtC00LTQtdGA0LbQuNCy0LDQtdC80YvQuSDQvNC10YLQvtC0INGB0LbQsNGC0LjRjyAlcyIKKworIzogc2NyaXB0cy9EcGtnL0NvbXByZXNzaW9uL1Byb2Nlc3MucG06MTIyCittc2dpZCAiRHBrZzo6Q29tcHJlc3Npb246OlByb2Nlc3MgY2FuIG9ubHkgc3RhcnQgb25lIHN1YnByb2Nlc3MgYXQgYSB0aW1lIgorbXNnc3RyICIiCisiRHBrZzo6Q29tcHJlc3Npb246OlByb2Nlc3Mg0LzQvtC20LXRgiDQt9Cw0L/Rg9GB0LrQsNGC0Ywg0YLQvtC70YzQutC+INC+0LTQuNC9INC/0L7QtNC/0YDQvtGG0LXRgdGBICIKKyLQvtC00L3QvtCy0YDQtdC80LXQvdC90L4iCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06MTcxIHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06MTczCisjOiBzY3JpcHRzL0Rwa2cvRXJyb3JIYW5kbGluZy5wbTo1OQorbXNnaWQgIndhcm5pbmciCittc2dzdHIgItC/0YDQtdC00YPQv9GA0LXQttC00LXQvdC40LUiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06MTcxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyIlcyhsJXMpOiAlc1xuIgorIkxJTkU6ICVzIgorbXNnc3RyICIiCisiJXMobCVzKTogJXNcbiIKKyLQodCi0KDQntCa0JA6ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtOjE3MworIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyhsJXMpOiAlcyIKK21zZ3N0ciAiJXMobCVzKTogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06MjIxCittc2dpZCAiJ29mZnNldCcgd2l0aG91dCAnY291bnQnIGhhcyBubyBlZmZlY3QiCittc2dzdHIgIsKrb2Zmc2V0wrsg0LHQtdC3IMKrY291bnTCuyDQsdC10YHQv9C+0LvQtdC30LXQvSIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbToyMjkKK21zZ2lkICJ5b3UgY2FuJ3QgY29tYmluZSAnY291bnQnIG9yICdvZmZzZXQnIHdpdGggYW55IG90aGVyIHJhbmdlIG9wdGlvbiIKK21zZ3N0ciAiIgorItC90LXQu9GM0LfRjyDQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywgwqtjb3VudMK7INC40LvQuCDCq29mZnNldMK7INC+0LTQvdC+0LLRgNC10LzQtdC90L3QviDRgSDQu9GO0LHRi9C80Lgg0LTRgNGD0LPQuNC80LggIgorItC/0LDRgNCw0LzQtdGC0YDQsNC80Lgg0LTQuNCw0L/QsNC30L7QvdCwIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtOjIzNworbXNnaWQgInlvdSBjYW4gb25seSBzcGVjaWZ5IG9uZSBvZiAnZnJvbScgYW5kICdzaW5jZScsIHVzaW5nICdzaW5jZSciCittc2dzdHIgItC80L7QttC90L4g0YPQutCw0LfQsNGC0Ywg0YLQvtC70YzQutC+INC+0LTQvdC+IMKrZnJvbcK7INC4IMKrc2luY2XCuywg0LjRgdC/0L7Qu9GM0LfRg9C10YLRgdGPIMKrc2luY2XCuyIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbToyNDIKK21zZ2lkICJ5b3UgY2FuIG9ubHkgc3BlY2lmeSBvbmUgb2YgJ3RvJyBhbmQgJ3VudGlsJywgdXNpbmcgJ3VudGlsJyIKK21zZ3N0ciAi0LzQvtC20L3QviDRg9C60LDQt9Cw0YLRjCDRgtC+0LvRjNC60L4g0L7QtNC90L4gwqt0b8K7INC4IMKrdW50aWzCuywg0LjRgdC/0L7Qu9GM0LfRg9C10YLRgdGPIMKrdW50aWzCuyIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbToyNTQgc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbToyNzAKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06Mjg2IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06MzAyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiclcycgb3B0aW9uIHNwZWNpZmllcyBub24tZXhpc3RpbmcgdmVyc2lvbiIKK21zZ3N0ciAi0LIg0L/QsNGA0LDQvNC10YLRgNC1IMKrJXPCuyDRg9C60LDQt9Cw0L3QsCDQvdC10YHRg9GJ0LXRgdGC0LLRg9GO0YnQsNGPINCy0LXRgNGB0LjRjyIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbToyNTUgc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbTozMDMKK21zZ2lkICJ1c2UgbmV3ZXN0IGVudHJ5IHRoYXQgaXMgZWFybGllciB0aGFuIHRoZSBvbmUgc3BlY2lmaWVkIgorbXNnc3RyICLQuNGB0L/QvtC70YzQt9GD0LXQvNGL0Lkg0YHQsNC80YvQuSDQvdC+0LLRi9C5INGN0LvQtdC80LXQvdGCINC80LXQvdGM0YjQtSDRh9C10Lwg0YPQutCw0LfQsNC90L3Ri9C5IgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtOjI2NAorbXNnaWQgIm5vbmUgZm91bmQsIHN0YXJ0aW5nIGZyb20gdGhlIG9sZGVzdCBlbnRyeSIKK21zZ3N0ciAi0L3QuNGH0LXQs9C+INC90LUg0L3QsNC50LTQtdC90L4sINC90LDRh9C40L3QsNC10Lwg0YEg0YHQsNC80L7Qs9C+INGB0YLQsNGA0L7Qs9C+INGN0LvQtdC80LXQvdGC0LAiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06MjcxIHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06Mjg3Cittc2dpZCAidXNlIG9sZGVzdCBlbnRyeSB0aGF0IGlzIGxhdGVyIHRoYW4gdGhlIG9uZSBzcGVjaWZpZWQiCittc2dzdHIgItC40YHQv9C+0LvRjNC30YPQtdC80YvQuSDRgdCw0LzRi9C5INGB0YLQsNGA0YvQuSDRjdC70LXQvNC10L3RgiDQsdC+0LvRjNGI0LUg0YfQtdC8INGD0LrQsNC30LDQvdC90YvQuSIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbToyODEgc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbToyOTcKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06MzEyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIm5vIHN1Y2ggZW50cnkgZm91bmQsIGlnbm9yaW5nICclcycgcGFyYW1ldGVyIgorbXNnc3RyICLRjdC70LXQvNC10L3RgiDQvdC1INC90LDQudC00LXQvSwg0L/QsNGA0LDQvNC10YLRgCDCqyVzwrsg0LjQs9C90L7RgNC40YDRg9C10YLRgdGPIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtOjMxOAorbXNnaWQgIidzaW5jZScgb3B0aW9uIHNwZWNpZmllcyBtb3N0IHJlY2VudCB2ZXJzaW9uLCBpZ25vcmluZyIKK21zZ3N0ciAi0LIg0L/QsNGA0LDQvNC10YLRgNC1IMKrc2luY2XCuyDQt9Cw0LTQsNC90LAg0LHQvtC70LXQtSDQvdC+0LLQsNGPINCy0LXRgNGB0LjRjywg0LjQs9C90L7RgNC40YDRg9C10YLRgdGPIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtOjMyMgorbXNnaWQgIid1bnRpbCcgb3B0aW9uIHNwZWNpZmllcyBvbGRlc3QgdmVyc2lvbiwgaWdub3JpbmciCittc2dzdHIgItCyINC/0LDRgNCw0LzQtdGC0YDQtSDCq3VudGlswrsg0LfQsNC00LDQvdCwINCx0L7Qu9C10LUg0L3QvtCy0LDRjyDQstC10YDRgdC40Y8sINC40LPQvdC+0YDQuNGA0YPQtdGC0YHRjyIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9EZWJpYW4ucG06NTQKK21zZ2lkICJmaXJzdCBoZWFkaW5nIgorbXNnc3RyICLQv9C10YDQstGL0Lkg0LfQsNCz0L7Qu9C+0LLQvtC6IgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0RlYmlhbi5wbTo1NQorbXNnaWQgIm5leHQgaGVhZGluZyBvciBlb2YiCittc2dzdHIgItGB0LvQtdC00YPRjtGJ0LjQuSDQt9Cw0LPQvtC70L7QstC+0Log0LjQu9C4IGVvZiIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9EZWJpYW4ucG06NTYKK21zZ2lkICJzdGFydCBvZiBjaGFuZ2UgZGF0YSIKK21zZ3N0ciAi0L3QsNGH0LDQu9C+INC00LDQvdC90YvRhSDQvtCxINC40LfQvNC10L3QtdC90LjRj9GFIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0RlYmlhbi5wbTo1NworbXNnaWQgIm1vcmUgY2hhbmdlIGRhdGEgb3IgdHJhaWxlciIKK21zZ3N0ciAi0L/RgNC+0LTQvtC70LbQtdC90LjQtSDQtNCw0L3QvdGL0YUg0L7QsSDQuNC30LzQtdC90LXQvdC40Y/RhSDQuNC70Lgg0LrQvtC90YbQtdCy0LjQuiIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9EZWJpYW4ucG06ODkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZm91bmQgc3RhcnQgb2YgZW50cnkgd2hlcmUgZXhwZWN0ZWQgJXMiCittc2dzdHIgItC90LDQudC00LXQvdC+INC90LDRh9Cw0LvQviDQt9Cw0L/QuNGB0Lgg0LPQtNC1INC+0LbQuNC00LDQu9C+0YHRjCAlcyIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9EZWJpYW4ucG06MTI2Cittc2dpZCAiYmFkbHkgZm9ybWF0dGVkIGhlYWRpbmcgbGluZSIKK21zZ3N0ciAi0L3QtdC/0YDQsNCy0LjQu9GM0L3Ri9C5INGE0L7RgNC80LDRgiDRgdGC0YDQvtC60Lgg0LfQsNCz0L7Qu9C+0LLQutCwIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0RlYmlhbi5wbToxMzAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZm91bmQgdHJhaWxlciB3aGVyZSBleHBlY3RlZCAlcyIKK21zZ3N0ciAi0L3QsNC50LTQtdC90L4g0LfQsNCy0LXRgNGI0LXQvdC40LUg0LPQtNC1INC+0LbQuNC00LDQu9C+0YHRjCAlcyIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9EZWJpYW4ucG06MTQwCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0VudHJ5L0RlYmlhbi5wbToxNDkKK21zZ2lkICJiYWRseSBmb3JtYXR0ZWQgdHJhaWxlciBsaW5lIgorbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70YzQvdGL0Lkg0YTQvtGA0LzQsNGCINGB0YLRgNC+0LrQuCDQt9Cw0LLQtdGA0YjQtdC90LjRjyIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9EZWJpYW4ucG06MTQzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImZvdW5kIGNoYW5nZSBkYXRhIHdoZXJlIGV4cGVjdGVkICVzIgorbXNnc3RyICLQvdCw0LnQtNC10L3RiyDQtNCw0L3QvdGL0LUg0LjQt9C80LXQvdC10L3QuNC5INCz0LTQtSDQvtC20LjQtNCw0LvQvtGB0YwgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRGViaWFuLnBtOjE2NQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJmb3VuZCBibGFuayBsaW5lIHdoZXJlIGV4cGVjdGVkICVzIgorbXNnc3RyICLQvdCw0LnQtNC10L3QsCDQv9GD0YHRgtCw0Y8g0YHRgtGA0L7QutCwINCz0LTQtSDQvtC20LjQtNCw0LvQvtGB0YwgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRGViaWFuLnBtOjE2OQorbXNnaWQgInVucmVjb2duaXNlZCBsaW5lIgorbXNnc3RyICLQvdC10YDQsNGB0L/QvtC30L3QsNC90L3QsNGPINGB0YLRgNC+0LrQsCIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9EZWJpYW4ucG06MTgwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImZvdW5kIGVvZiB3aGVyZSBleHBlY3RlZCAlcyIKK21zZ3N0ciAi0L3QsNC50LTQtdC9INGB0LjQvNCy0L7QuyBlb2Yg0LPQtNC1INC+0LbQuNC00LDQu9C+0YHRjCAlcyIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9FbnRyeS9EZWJpYW4ucG06MTIyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImJhZCBrZXktdmFsdWUgYWZ0ZXIgYDsnOiBgJXMnIgorbXNnc3RyICLQvdC10LLQtdGA0L3QsNGPINC/0LDRgNCwINC60LvRjtGHLdC30L3QsNGH0LXQvdC40LUg0L/QvtGB0LvQtSDCqzvCuzogwqslc8K7IgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0VudHJ5L0RlYmlhbi5wbToxMjcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAicmVwZWF0ZWQga2V5LXZhbHVlICVzIgorbXNnc3RyICLQv9C+0LLRgtC+0YDQtdC90LjQtSDQv9Cw0YDRiyDQutC70Y7Rhy3Qt9C90LDRh9C10L3QuNC1ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0VudHJ5L0RlYmlhbi5wbToxMzEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiYmFkbHkgZm9ybWF0dGVkIHVyZ2VuY3kgdmFsdWU6ICVzIgorbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70YzQvdGL0Lkg0YTQvtGA0LzQsNGCINC30L3QsNGH0LXQvdC40Y8g0LrRgNC40YLQuNGH0L3QvtGB0YLQuDogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRW50cnkvRGViaWFuLnBtOjEzNQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGtleS12YWx1ZSAlcyIKK21zZ3N0ciAi0L3QtdC40LfQstC10YHRgtC90YvQuSDQutC70Y7Rhy3Qt9C90LDRh9C10L3QuNC1ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0VudHJ5L0RlYmlhbi5wbToxMzkKK21zZ2lkICJ0aGUgaGVhZGVyIGRvZXNuJ3QgbWF0Y2ggdGhlIGV4cGVjdGVkIHJlZ2V4IgorbXNnc3RyICLQt9Cw0LPQvtC70L7QstC+0Log0L3QtSDQv9C+0LTRhdC+0LTQuNGCINC/0L7QtCDQvtC20LjQtNCw0LXQvNC+0LUg0YDQtdCz0YPQu9GP0YDQvdC+0LUg0LLRi9GA0LDQttC10L3QuNC1IgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0VudHJ5L0RlYmlhbi5wbToxNTIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY291bGRuJ3QgcGFyc2UgZGF0ZSAlcyIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQstGL0L/QvtC70L3QuNGC0Ywg0LDQvdCw0LvQuNC3INC00LDRgtGLICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0VudHJ5L0RlYmlhbi5wbToxNTUKK21zZ2lkICJ0aGUgdHJhaWxlciBkb2Vzbid0IG1hdGNoIHRoZSBleHBlY3RlZCByZWdleCIKK21zZ3N0ciAi0LrQvtC90YbQtdCy0LjQuiDQvdC1INC/0L7QtNGF0L7QtNC40YIg0L/QvtC0INC+0LbQuNC00LDQtdC80L7QtSDRgNC10LPRg9C70Y/RgNC90L7QtSDQstGL0YDQsNC20LXQvdC40LUiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvUGFyc2UucG06MTA2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInRhaWwgb2YgJXMiCittc2dzdHIgItC60L7QvdC10YYgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvUGFyc2UucG06MTE4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImZvcm1hdCBwYXJzZXIgJXMgbm90IGV4ZWN1dGFibGUiCittc2dzdHIgItCw0L3QsNC70LjQt9Cw0YLQvtGAINGE0L7RgNC80LDRgtCwICVzINC90LUg0Y/QstC70Y/QtdGC0YHRjyDQuNGB0L/QvtC70L3Rj9C10LzRi9C8INGE0LDQudC70L7QvCIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9QYXJzZS5wbToxMjEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2hhbmdlbG9nIGZvcm1hdCAlcyBpcyB1bmtub3duIgorbXNnc3RyICLQvdC10LjQt9Cy0LXRgdGC0L3Ri9C5INGE0L7RgNC80LDRgiDRhNCw0LnQu9CwINC40LfQvNC10L3QtdC90LjQuSAlcyIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9QYXJzZS5wbToxNDQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IGV4ZWMgZm9ybWF0IHBhcnNlcjogJXMiCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LfQsNC/0YPRgdGC0LjRgtGMINCw0L3QsNC70LjQt9Cw0YLQvtGAINGE0L7RgNC80LDRgtCwOiAlcyIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9QYXJzZS5wbToxNTEKK21zZ2lkICJvdXRwdXQgb2YgY2hhbmdlbG9nIHBhcnNlciIKK21zZ3N0ciAi0LLRi9Cy0L7QtCDQsNC90LDQu9C40LfQsNGC0L7RgNCwINGE0LDQudC70LAg0LjQt9C80LXQvdC10L3QuNC5IgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL1BhcnNlLnBtOjE1NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjaGFuZ2Vsb2cgcGFyc2VyICVzIgorbXNnc3RyICLQsNC90LDQu9C40LfQsNGC0L7RgCDRhNCw0LnQu9CwINC40LfQvNC10L3QtdC90LjQuSAlcyIKKworIzogc2NyaXB0cy9EcGtnL0NoZWNrc3Vtcy5wbToxNzAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IGZzdGF0IGZpbGUgJXMiCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LLRi9C/0L7Qu9C90LjRgtGMINGE0YPQvdC60YbQuNGOIGZzdGF0INC00LvRjyDRhNCw0LnQu9CwICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hlY2tzdW1zLnBtOjE3MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJGaWxlICVzIGhhcyBzaXplICV1IGluc3RlYWQgb2YgZXhwZWN0ZWQgJXUiCittc2dzdHIgItCk0LDQudC7ICVzINC40LzQtdC10YIg0YDQsNC30LzQtdGAICV1INCy0LzQtdGB0YLQviDQvtC20LjQtNCw0LXQvNC+0LPQviAldSIKKworIzogc2NyaXB0cy9EcGtnL0NoZWNrc3Vtcy5wbToxODYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiRmlsZSAlcyBoYXMgY2hlY2tzdW0gJXMgaW5zdGVhZCBvZiBleHBlY3RlZCAlcyAoYWxnb3JpdGhtICVzKSIKK21zZ3N0ciAi0KTQsNC50LsgJXMg0LjQvNC10LXRgiDQutC+0L3RgtGA0L7Qu9GM0L3Rg9GOINGB0YPQvNC80YMgJXMg0LLQvNC10YHRgtC+INC+0LbQuNC00LDQtdC80L7QuSAlcyAo0LDQu9Cz0L7RgNC40YLQvCAlcykiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGVja3N1bXMucG06MTkxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNoZWNrc3VtIHByb2dyYW0gZ2F2ZSBib2d1cyBvdXRwdXQgYCVzJyIKK21zZ3N0ciAi0L/RgNC+0LPRgNCw0LzQvNCwINC/0YDQvtCy0LXRgNC60Lgg0LrQvtC90YLRgNC+0LvRjNC90L7QuSDRgdGD0LzQvNGLINCy0YvQtNCw0LvQsCDRhNC40LrRgtC40LLQvdGL0Lkg0YDQtdC30YPQu9GM0YLQsNGCIMKrJXPCuyIKKworIzogc2NyaXB0cy9EcGtnL0NoZWNrc3Vtcy5wbToyMTkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBsaW5lIGluICVzIGNoZWNrc3VtcyBzdHJpbmc6ICVzIgorbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70YzQvdCw0Y8g0YHRgtGA0L7QutCwINCyINGB0YLRgNC+0LrQvtCy0L7QvCDQt9C90LDRh9C10L3QuNC4INC60L7QvdGC0YDQvtC70YzQvdC+0Lkg0YHRg9C80LzRiyAlczogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGVja3N1bXMucG06MjI1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIkNvbmZsaWN0aW5nIGNoZWNrc3VtcyBgJXMnIGFuZCBgJXMnIGZvciBmaWxlIGAlcyciCittc2dzdHIgItCd0LXRgdC+0LLQv9Cw0LTQtdC90LjQtSDQutC+0L3RgtGA0L7Qu9GM0L3Ri9GFINGB0YPQvNC8IMKrJXPCuyDQuCDCqyVzwrsg0LTQu9GPINGE0LDQudC70LAgwqslc8K7IgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hlY2tzdW1zLnBtOjIyOQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJDb25mbGljdGluZyBmaWxlIHNpemVzIGAldScgYW5kIGAldScgZm9yIGZpbGUgYCVzJyIKK21zZ3N0ciAi0J3QtdGB0L7QstC/0LDQtNC10L3QuNC1INGA0LDQt9C80LXRgNC+0LIgwqsldcK7INC4IMKrJXXCuyDQtNC70Y8g0YTQsNC50LvQsCDCqyVzwrsiCisKKyM6IHNjcmlwdHMvRHBrZy9Db25mLnBtOjEwNQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJzaG9ydCBvcHRpb24gbm90IGFsbG93ZWQgaW4gJXMsIGxpbmUgJWQiCittc2dzdHIgItC60L7RgNC+0YLQutC40Lkg0L/QsNGA0LDQvNC10YLRgCDQvdC1INGA0LDQt9GA0LXRiNGR0L0g0LIgJXMsINGB0YLRgNC+0LrQsCAlZCIKKworIzogc2NyaXB0cy9EcGtnL0NvbmYucG06MTE5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImludmFsaWQgc3ludGF4IGZvciBvcHRpb24gaW4gJXMsIGxpbmUgJWQiCittc2dzdHIgItGB0LjQvdGC0LDQutGB0LjRh9C10YHQutCw0Y8g0L7RiNC40LHQutCwINCyINC/0LDRgNCw0LzQtdGC0YDQtSDRgyAlcywg0YHRgtGA0L7QutCwICVkIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29udHJvbC5wbToxNTAKK21zZ2lkICJnZW5lcmFsIHNlY3Rpb24gb2YgY29udHJvbCBpbmZvIGZpbGUiCittc2dzdHIgItC+0LHRidCw0Y8g0YHQtdC60YbQuNGPINGD0L/RgNCw0LLQu9GP0Y7RidC10LPQviDQuNC90YTQvtGA0LzQsNGG0LjQvtC90L3QvtCz0L4g0YTQsNC50LvQsCIKKworIzogc2NyaXB0cy9EcGtnL0NvbnRyb2wucG06MTUyCittc2dpZCAicGFja2FnZSdzIHNlY3Rpb24gb2YgY29udHJvbCBpbmZvIGZpbGUiCittc2dzdHIgItGB0LXQutGG0LjRjyDQv9Cw0LrQtdGC0LAg0YPQv9GA0LDQstC70Y/RjtGJ0LXQs9C+INC40L3RhNC+0YDQvNCw0YbQuNC+0L3QvdC+0LPQviDRhNCw0LnQu9CwIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29udHJvbC5wbToxNTQKK21zZ2lkICJwYXJzZWQgdmVyc2lvbiBvZiBjaGFuZ2Vsb2ciCittc2dzdHIgItC/0L7Qu9GD0YfQtdC90LAg0LLQtdGA0YHQuNGPIGNoYW5nZWxvZyIKKworIzogc2NyaXB0cy9EcGtnL0NvbnRyb2wucG06MTU2IHNjcmlwdHMvRHBrZy9Db250cm9sLnBtOjE1OAorIywgZnV6enksIHBlcmwtZm9ybWF0CisjfCBtc2dpZCAiZW50cnkgaW4gZHBrZydzIHN0YXR1cyBmaWxlIgorbXNnaWQgImVudHJ5IGluIHJlcG9zaXRvcnkncyAlcyBmaWxlIgorbXNnc3RyICLRjdC70LXQvNC10L3RgiDQsiDRhNCw0LnQu9C1INGB0L7RgdGC0L7Rj9C90LjRjyBkcGtnIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29udHJvbC5wbToxNjAgc2NyaXB0cy9EcGtnL0NvbnRyb2wucG06MTY0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGZpbGUiCittc2dzdHIgItGE0LDQudC7ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29udHJvbC5wbToxNjIKK21zZ2lkICJjb250cm9sIGluZm8gb2YgYSAuZGViIHBhY2thZ2UiCittc2dzdHIgItGD0L/RgNCw0LLQu9GP0Y7RidCw0Y8g0LjQvdGE0L7RgNC80LDRhtC40Y8g0L/QsNC60LXRgtCwIC5kZWIiCisKKyM6IHNjcmlwdHMvRHBrZy9Db250cm9sLnBtOjE2NgorbXNnaWQgInZlbmRvciBmaWxlIgorbXNnc3RyICLRhNCw0LnQuyDQv9GA0L7QuNC30LLQvtC00LjRgtC10LvRjyIKKworIzogc2NyaXB0cy9EcGtnL0NvbnRyb2wucG06MTY4Cittc2dpZCAiZW50cnkgaW4gZHBrZydzIHN0YXR1cyBmaWxlIgorbXNnc3RyICLRjdC70LXQvNC10L3RgiDQsiDRhNCw0LnQu9C1INGB0L7RgdGC0L7Rj9C90LjRjyBkcGtnIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29udHJvbC9GaWVsZHMucG06NDU1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVua25vd24gaW5mb3JtYXRpb24gZmllbGQgJyVzJyBpbiBpbnB1dCBkYXRhIGluICVzIgorbXNnc3RyICLQvdC10LjQt9Cy0LXRgdGC0L3QvtC1INC40L3RhNC+0YDQvNCw0YbQuNC+0L3QvdC+0LUg0L/QvtC70LUgwqslc8K7INCy0L4g0LLRhdC+0LTQvdGL0YUg0LTQsNC90L3Ri9GFINCyICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29udHJvbC9GaWVsZHMucG06NDU2Cittc2dpZCAiY29udHJvbCBpbmZvcm1hdGlvbiIKK21zZ3N0ciAi0YPQv9GA0LDQstC70Y/RjtGJ0LDRjyDQuNC90YTQvtGA0LzQsNGG0LjRjyIKKworIzogc2NyaXB0cy9EcGtnL0NvbnRyb2wvSW5mby5wbToxMDMKK21zZ2lkICJmaXJzdCBibG9jayBsYWNrcyBhIHNvdXJjZSBmaWVsZCIKK21zZ3N0ciAi0LIg0L/QtdGA0LLQvtC8INCx0LvQvtC60LUg0L7RgtGB0YPRgtGB0YLQstGD0LXRgiDQv9C+0LvQtSDQuNGB0YXQvtC00L3QuNC60LAiCisKKyM6IHNjcmlwdHMvRHBrZy9Db250cm9sL0luZm8ucG06MTEwIHNjcmlwdHMvRHBrZy9Db250cm9sL0luZm8ucG06MTEzCisjLCBmdXp6eSwgcGVybC1mb3JtYXQKKyN8IG1zZ2lkICJibG9jayBsYWNrcyBhIHBhY2thZ2UgZmllbGQiCittc2dpZCAiYmxvY2sgbGFja3MgdGhlICclcycgZmllbGQiCittc2dzdHIgItCyINCx0LvQvtC60LUg0L7RgtGB0YPRgtGB0YLQstGD0LXRgiDQv9C+0LvQtSDQv9Cw0LrQtdGC0LAiCisKKyM6IHNjcmlwdHMvRHBrZy9Db250cm9sL0hhc2gucG06MTcyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBmaWVsZCAlcyBmb3VuZCIKK21zZ3N0ciAi0L7QsdC90LDRgNGD0LbQtdC90L4g0L/QvtCy0YLQvtGA0LXQvdC40LUg0L/QvtC70Y8gJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Db250cm9sL0hhc2gucG06MTgwCittc2dpZCAiY29udGludWVkIHZhbHVlIGxpbmUgbm90IGluIGZpZWxkIgorbXNnc3RyICLQv9GA0L7QtNC+0LvQttC10L3QuNC1INGB0YLRgNC+0LrQuCDQt9C90LDRh9C10L3QuNGPINC90LUg0LIg0L/QvtC70LUiCisKKyM6IHNjcmlwdHMvRHBrZy9Db250cm9sL0hhc2gucG06MTk0Cittc2dpZCAiUEdQIHNpZ25hdHVyZSBub3QgYWxsb3dlZCBoZXJlIgorbXNnc3RyICJQR1Ag0L/QvtC00L/QuNGB0Ywg0LfQtNC10YHRjCDQvdC1INGA0LDQt9GA0LXRiNC10L3QsCIKKworIzogc2NyaXB0cy9EcGtnL0NvbnRyb2wvSGFzaC5wbToyMDEKK21zZ2lkICJleHBlY3RlZCBQR1Agc2lnbmF0dXJlLCBmb3VuZCBFT0YgYWZ0ZXIgYmxhbmsgbGluZSIKK21zZ3N0ciAi0L7QttC40LTQsNC70LDRgdGMINC/0L7QtNC/0LjRgdGMIFBHUCwg0L3QsNC50LTQtdC9IEVPRiDQv9C+0YHQu9C1INC/0YPRgdGC0L7QuSDRgdGC0YDQvtC60LgiCisKKyM6IHNjcmlwdHMvRHBrZy9Db250cm9sL0hhc2gucG06MjA1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImV4cGVjdGVkIFBHUCBzaWduYXR1cmUsIGZvdW5kIHNvbWV0aGluZyBlbHNlIGAlcyciCittc2dzdHIgItC+0LbQuNC00LDQu9Cw0YHRjCDQv9C+0LTQv9C40YHRjCBQR1AsINC90LDQudC00LXQvdC+INGH0YLQvi3RgtC+INC00YDRg9Cz0L7QtSDCqyVzwrsiCisKKyM6IHNjcmlwdHMvRHBrZy9Db250cm9sL0hhc2gucG06MjEzCittc2dpZCAidW5maW5pc2hlZCBQR1Agc2lnbmF0dXJlIgorbXNnc3RyICLQvdC10LfQsNC60L7QvdGH0LXQvdC90LDRjyBQR1Ag0L/QvtC00L/QuNGB0YwiCisKKyM6IHNjcmlwdHMvRHBrZy9Db250cm9sL0hhc2gucG06MjE5Cittc2dpZCAibGluZSB3aXRoIHVua25vd24gZm9ybWF0IChub3QgZmllbGQtY29sb24tdmFsdWUpIgorbXNnc3RyICLRgdGC0YDQvtC60LAg0L3QtdC40LfQstC10YHRgtC90L7Qs9C+INGE0L7RgNC80LDRgtCwICjQvdC1INC/0L7Qu9C1LdC00LLQvtC10YLQvtGH0LjQtS3Qt9C90LDRh9C10L3QuNC1KSIKKworIzogc2NyaXB0cy9EcGtnL0NvbnRyb2wvSGFzaC5wbTozMTYKK21zZ2lkICJ3cml0ZSBlcnJvciBvbiBjb250cm9sIGRhdGEiCittc2dzdHIgItC+0YjQuNCx0LrQsCDQt9Cw0L/QuNGB0Lgg0YPQv9GA0LDQstC70Y/RjtGJ0LjRhSDQtNCw0L3QvdGL0YUiCisKKyM6IHNjcmlwdHMvRHBrZy9EZXBzLnBtOjI3NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW4ndCBwYXJzZSBkZXBlbmRlbmN5ICVzIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC/0YDQvtCw0L3QsNC70LjQt9C40YDQvtCy0LDRgtGMINC30LDQstC40YHQuNC80L7RgdGC0YwgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9EZXBzLnBtOjMwMQorbXNnaWQgImFuIHVuaW9uIGRlcGVuZGVuY3kgY2FuIG9ubHkgY29udGFpbiBzaW1wbGUgZGVwZW5kZW5jaWVzIgorbXNnc3RyICLQsiDQvtCx0YrQtdC00LjQvdGP0Y7RidC10Lkg0LfQsNCy0LjRgdC40LzQvtGB0YLQuCDQvNC+0LPRg9GCINCx0YvRgtGMINGC0L7Qu9GM0LrQviDQv9GA0L7RgdGC0YvQtSDQt9Cw0LLQuNGB0LjQvNC+0YHRgtC4IgorCisjOiBzY3JpcHRzL0Rwa2cvRXJyb3JIYW5kbGluZy5wbTo1NAorbXNnaWQgImluZm8iCittc2dzdHIgItC40L3RhNC+IgorCisjOiBzY3JpcHRzL0Rwa2cvRXJyb3JIYW5kbGluZy5wbTo2NSBzY3JpcHRzL0Rwa2cvRXJyb3JIYW5kbGluZy5wbTo3MAorIzogc2NyaXB0cy9EcGtnL0Vycm9ySGFuZGxpbmcucG06NzUKK21zZ2lkICJlcnJvciIKK21zZ3N0ciAi0L7RiNC40LHQutCwIgorCisjOiBzY3JpcHRzL0Rwa2cvRXJyb3JIYW5kbGluZy5wbTo4MAorbXNnaWQgImludGVybmFsIGVycm9yIgorbXNnc3RyICLQstC90YPRgtGA0LXQvdC90Y/RjyDQvtGI0LjQsdC60LAiCisKKyM6IHNjcmlwdHMvRHBrZy9FcnJvckhhbmRsaW5nLnBtOjkyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGdhdmUgZXJyb3IgZXhpdCBzdGF0dXMgJXMiCittc2dzdHIgIiVzINCy0L7Qt9Cy0YDQsNGC0LjQuyDQutC+0LQg0L7RiNC40LHQutC4ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvRXJyb3JIYW5kbGluZy5wbTo5NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBkaWVkIGZyb20gc2lnbmFsICVzIgorbXNnc3RyICIlcyDQt9Cw0LLQtdGA0YjQuNC70YHRjyDQv9C+INGB0LjQs9C90LDQu9GDICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvRXJyb3JIYW5kbGluZy5wbTo5NgorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBmYWlsZWQgd2l0aCB1bmtub3duIGV4aXQgY29kZSAlZCIKK21zZ3N0ciAiJXMg0LfQsNCy0LXRgNGI0LjQu9GB0Y8g0L3QtdGD0LTQsNGH0L3QviDRgSDQvdC10LjQt9Cy0LXRgdGC0L3Ri9C8INC60L7QtNC+0Lwg0LLRi9GF0L7QtNCwICVkIgorCisjOiBzY3JpcHRzL0Rwa2cvRXJyb3JIYW5kbGluZy5wbToxMTUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yIGluICVzIGF0IGxpbmUgJWQ6ICVzIgorbXNnc3RyICLRgdC40L3RgtCw0LrRgdC40YfQtdGB0LrQsNGPINC+0YjQuNCx0LrQsCDQsiAlcyDQsiDRgdGC0YDQvtC60LUgJWQ6ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvSVBDLnBtOjIxMSBzY3JpcHRzL0Rwa2cvSVBDLnBtOjIxNyBzY3JpcHRzL0Rwa2cvSVBDLnBtOjIyMworIywgcGVybC1mb3JtYXQKK21zZ2lkICJwaXBlIGZvciAlcyIKK21zZ3N0ciAi0LLRi9C30L7QsiBwaXBlINC00LvRjyAlcyIKKworIzogc2NyaXB0cy9EcGtnL0lQQy5wbToyNDIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2hkaXIgdG8gJXMiCittc2dzdHIgItCy0YvQt9C+0LIgY2hkaXIg0LIgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9JUEMucG06MjQ5Cittc2dpZCAicmVvcGVuIHN0ZGluIgorbXNnc3RyICLQv9C+0LLRgtC+0YDQvdC+0LUg0L7RgtC60YDRi9GC0LjQtSBzdGRpbiIKKworIzogc2NyaXB0cy9EcGtnL0lQQy5wbToyNTcgc2NyaXB0cy9EcGtnL0lQQy5wbToyNjUKK21zZ2lkICJyZW9wZW4gc3Rkb3V0IgorbXNnc3RyICLQv9C+0LLRgtC+0YDQvdC+0LUg0L7RgtC60YDRi9GC0LjQtSBzdGRvdXQiCisKKyM6IHNjcmlwdHMvRHBrZy9JUEMucG06MzM5Cittc2dpZCAiY2hpbGQgcHJvY2VzcyIKK21zZ3N0ciAi0LTQvtGH0LXRgNC90LjQuSDQv9GA0L7RhtC10YHRgSIKKworIzogc2NyaXB0cy9EcGtnL0lQQy5wbTozNDQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAid2FpdCBmb3IgJXMiCittc2dzdHIgItCy0YvQt9C+0LIgd2FpdCDQtNC70Y8gJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9JUEMucG06MzQ5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGRpZG4ndCBjb21wbGV0ZSBpbiAlZCBzZWNvbmQiCittc2dpZF9wbHVyYWwgIiVzIGRpZG4ndCBjb21wbGV0ZSBpbiAlZCBzZWNvbmRzIgorbXNnc3RyWzBdICIlcyDQvdC1INC30LDQstC10YDRiNC40YLRgdGPINC30LAgJWQg0YHQtdC60YPQvdC00YMiCittc2dzdHJbMV0gIiVzINC90LUg0LfQsNCy0LXRgNGI0LjRgtGB0Y8g0LfQsCAlZCDRgdC10LrRg9C90LTRiyIKK21zZ3N0clsyXSAiJXMg0L3QtSDQt9Cw0LLQtdGA0YjQuNGC0YHRjyDQt9CwICVkINGB0LXQutGD0L3QtCIKKworIzogc2NyaXB0cy9EcGtnL1NobGlicy9PYmpkdW1wLnBtOjIyMgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJDb3VsZG4ndCBwYXJzZSBkeW5hbWljIHJlbG9jYXRpb24gcmVjb3JkOiAlcyIKK21zZ3N0ciAi0J3QtSDRg9C00LDQu9C+0YHRjCDQv9GA0L7QsNC90LDQu9C40LfQuNGA0L7QstCw0YLRjCDQt9Cw0L/QuNGB0Ywg0LTQuNC90LDQvNC40YfQtdGB0LrQvtCz0L4g0L/QtdGA0LXRgNCw0YHQv9GA0LXQtNC10LvQtdC90LjRjzogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9TaGxpYnMvT2JqZHVtcC5wbTozMzkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiQ291bGRuJ3QgcGFyc2UgZHluYW1pYyBzeW1ib2wgZGVmaW5pdGlvbjogJXMiCittc2dzdHIgItCd0LUg0YPQtNCw0LvQvtGB0Ywg0L/RgNC+0LDQvdCw0LvQuNC30LjRgNC+0LLQsNGC0Ywg0L7Qv9GA0LXQtNC10LvQtdC90LjQtSDQtNC40L3QsNC80LjRh9C10YHQutC+0LPQviDRgdC40LzQstC+0LvQsDogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9TaGxpYnMvU3ltYm9sLnBtOjExMQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJzeW1ib2wgbmFtZSB1bnNwZWNpZmllZDogJXMiCittc2dzdHIgItC90LUg0LfQsNC00LDQvdC+INC40LzRjyDRgdC40LzQstC+0LvQsDogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9TaGxpYnMvU3ltYm9sLnBtOjE2OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ5b3UgY2FuJ3QgdXNlIHN5bXZlciB0YWcgdG8gY2F0Y2ggdW52ZXJzaW9uZWQgc3ltYm9sczogJXMiCittc2dzdHIgIiIKKyLQstGLINC90LUg0LzQvtC20LXRgtC1INC40YHQv9C+0LvRjNC30L7QstCw0YLRjCDQvNC10YLQutGDIHN5bXZlciDQtNC70Y8g0L7QsdC90LDRgNGD0LbQtdC90LjRjyDQvdC10LLQtdGA0YHQuNC+0L3QvdGL0YUgIgorItGB0LjQvNCy0L7Qu9C+0LI6ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU2hsaWJzL1N5bWJvbEZpbGUucG06MjE4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIlN5bWJvbCBpbmZvcm1hdGlvbiBtdXN0IGJlIHByZWNlZGVkIGJ5IGEgaGVhZGVyIChmaWxlICVzLCBsaW5lICVzKS4iCittc2dzdHIgIiIKKyLQodC40LzQstC+0LvRjNC90LDRjyDQuNC90YTQvtGA0LzQsNGG0LjRjyDQtNC+0LvQttC90LAg0L3QsNGH0LjQvdCw0YLRjNGB0Y8g0YEg0LfQsNCz0L7Qu9C+0LLQutCwICjRhNCw0LnQuyAlcywg0YHRgtGA0L7QutCwICVzKS4iCisKKyM6IHNjcmlwdHMvRHBrZy9TaGxpYnMvU3ltYm9sRmlsZS5wbToyMjYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiRmFpbGVkIHRvIHBhcnNlIGxpbmUgaW4gJXM6ICVzIgorbXNnc3RyICLQndC1INGD0LTQsNC70L7RgdGMINC/0YDQvtCw0L3QsNC70LjQt9C40YDQvtCy0LDRgtGMINGB0YLRgNC+0LrRgyDQsiAlczogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9TaGxpYnMvU3ltYm9sRmlsZS5wbToyNTgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiRmFpbGVkIHRvIHBhcnNlIGEgbGluZSBpbiAlczogJXMiCittc2dzdHIgItCd0LUg0YPQtNCw0LvQvtGB0Ywg0L/RgNC+0LDQvdCw0LvQuNC30LjRgNC+0LLQsNGC0Ywg0YHRgtGA0L7QutGDINCyICVzOiAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NobGlicy9TeW1ib2xGaWxlLnBtOjI3MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJUcmllZCB0byBtZXJnZSB0aGUgc2FtZSBvYmplY3QgKCVzKSB0d2ljZSBpbiBhIHN5bWZpbGUuIgorbXNnc3RyICLQn9C+0L/Ri9GC0LrQsCDQvtCx0YrQtdC00LjQvdC40YLRjCDQvtC00LjQvSDQvtCx0YrQtdC60YIgKCVzKSDQtNCy0LDQttC00Ysg0LIg0YTQsNC50LvQtSDRgdC40LzQstC+0LvQvtCyLiIKKworIzogc2NyaXB0cy9EcGtnL1NobGlicy9TeW1ib2xGaWxlLnBtOjM4OAorbXNnaWQgIkNhbid0IG1lcmdlIHN5bWJvbHMgZnJvbSBvYmplY3RzIHdpdGhvdXQgU09OQU1FLiIKK21zZ3N0ciAi0J3QtSDRg9C00LDQu9C+0YHRjCDQvtCx0YrQtdC00LjQvdC40YLRjCDRgdC40LzQstC+0LvRiyDQuNC3INC+0LHRitC10LrRgtC+0LIg0LHQtdC3IFNPTkFNRS4iCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvQXJjaGl2ZS5wbTo2NAorbXNnaWQgIndyaXRlIG9uIHRhciBpbnB1dCIKK21zZ3N0ciAi0LLRi9C30L7QsiB3cml0ZSDQtNC70Y8g0LLQstC+0LTQsCB0YXIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvQXJjaGl2ZS5wbTo4OQorbXNnaWQgImNsb3NlIG9uIHRhciBpbnB1dCIKK21zZ3N0ciAi0LfQsNC60YDRi9GC0LjQtSDQstCy0L7QtNCwIHRhciIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9BcmNoaXZlLnBtOjExNCBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjUwMworIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3QgY3JlYXRlIGRpcmVjdG9yeSAlcyIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRgdC+0LfQtNCw0YLRjCDQutCw0YLQsNC70L7QsyAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9BcmNoaXZlLnBtOjE0NSBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG06MzA3CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06MTk5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCBvcGVuZGlyICVzIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINCy0YvQv9C+0LvQvdC40YLRjCBvcGVuZGlyICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL0FyY2hpdmUucG06MTUyIHNjcmlwdHMvRHBrZy9Tb3VyY2UvQXJjaGl2ZS5wbToxNTYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiVW5hYmxlIHRvIHJlbmFtZSAlcyB0byAlcyIKK21zZ3N0ciAi0J3QtdCy0L7Qt9C80L7QttC90L4g0L/QtdGA0LXQuNC80LXQvdC+0LLQsNGC0YwgJXMg0LIgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvRnVuY3Rpb25zLnBtOjM0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzdGF0IGRpcmVjdG9yeSAlcyAoYmVmb3JlIHJlbW92YWwpIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINCy0YvQv9C+0LvQvdC40YLRjCDRhNGD0L3QutGG0LjRjiBzdGF0INC00LvRjyDQutCw0YLQsNC70L7Qs9CwICVzICjQv9C10YDQtdC0INGD0LTQsNC70LXQvdC40LXQvCkiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvRnVuY3Rpb25zLnBtOjQwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGVjayBmb3IgcmVtb3ZhbCBvZiBkaXIgYCVzJyIKK21zZ3N0ciAi0L3QtdCy0L7Qt9C80L7QttC90L4g0L/RgNC+0LLQtdGA0LjRgtGMINGD0LTQsNC70LXQvdC40LUg0LrQsNGC0LDQu9C+0LPQsCDCqyVzwrsiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvRnVuY3Rpb25zLnBtOjQyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInJtIC1yZiBmYWlsZWQgdG8gcmVtb3ZlIGAlcyciCittc2dzdHIgItC/0YDQuCDRg9C00LDQu9C10L3QuNC4IMKrJXPCuyDQutC+0LzQsNC90LTQsCBybSAtcmYg0LfQsNCy0LXRgNGI0LjQu9Cw0YHRjCDQvdC10YPQtNCw0YfQvdC+IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL0Z1bmN0aW9ucy5wbTo4MyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjU1MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3QgY2hhbmdlIHRpbWVzdGFtcCBmb3IgJXMiCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LjQt9C80LXQvdC40YLRjCDQvNC10YLQutGDINCy0YDQtdC80LXQvdC4INC00LvRjyAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9GdW5jdGlvbnMucG06ODUKKyMsIGZ1enp5LCBwZXJsLWZvcm1hdAorI3wgbXNnaWQgImNhbm5vdCBjaGFuZ2UgdGltZXN0YW1wIGZvciAlcyIKK21zZ2lkICJjYW5ub3QgcmVhZCB0aW1lc3RhbXAgZnJvbSAlcyIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQuNC30LzQtdC90LjRgtGMINC80LXRgtC60YMg0LLRgNC10LzQtdC90Lgg0LTQu9GPICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjcwIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo0NDMKK21zZ2lkICJiaW5hcnkgZmlsZSBjb250ZW50cyBjaGFuZ2VkIgorbXNnc3RyICLRgdC+0LTQtdGA0LbQuNC80L7QtSDQtNCy0L7QuNGH0L3QvtCz0L4g0YTQsNC50LvQsCDQuNC30LzQtdC90LXQvdC+IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjExOAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJmaWxlICVzIGhhcyBubyBmaW5hbCBuZXdsaW5lIChlaXRoZXIgb3JpZ2luYWwgb3IgbW9kaWZpZWQgdmVyc2lvbikiCittc2dzdHIgIiIKKyLRhNCw0LnQuyAlcyDQvdC1INC30LDQstC10YDRiNCw0LXRgtGB0Y8g0YHQuNC80LLQvtC70L7QvCDQvdC+0LLQvtC5INGB0YLRgNC+0LrQuCAo0L7RgNC40LPQuNC90LDQu9GM0L3QsNGPINC40LvQuCDQuNC30LzQtdC90ZHQvdC90LDRjyAiCisi0LLQtdGA0YHQuNGPKSIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbToxMjIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5rbm93biBsaW5lIGZyb20gZGlmZiAtdSBvbiAlczogYCVzJyIKK21zZ3N0ciAi0L3QtdC40LfQstC10YHRgtC90LDRjyDRgdGC0YDQvtC60LAg0LIg0LLRi9Cy0L7QtNC1IGRpZmYgLXUg0LTQu9GPICVzOiDCqyVzwrsiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MTI1IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MTI4Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC30LDQv9C40YHQsNGC0YwiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MTM4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImRpZmYgb24gJXMiCittc2dzdHIgItCy0YvQt9C+0LIgZGlmZiDQtNC70Y8gJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MTY0IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MTgzCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjIwNiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjIxOAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc3RhdCBmaWxlICVzIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINCy0YvQv9C+0LvQvdC40YLRjCDRhNGD0L3QutGG0LjRjiBzdGF0INC00LvRjyDRhNCw0LnQu9CwICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjE3MyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjE3NQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVhZCBsaW5rICVzIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINC/0YDQvtGH0LjRgtCw0YLRjCDRgdGB0YvQu9C60YMgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MjAyCittc2dpZCAiZGV2aWNlIG9yIHNvY2tldCBpcyBub3QgYWxsb3dlZCIKK21zZ3N0ciAi0YPRgdGC0YDQvtC50YHRgtCy0LAg0LjQu9C4INGB0L7QutC10YLRiyDQvdC1INGA0LDQt9GA0LXRiNC10L3RiyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbToyMTEKK21zZ2lkICJ1bmtub3duIGZpbGUgdHlwZSIKK21zZ3N0ciAi0L3QtdC40LfQstC10YHRgtC90YvQuSDRgtC40L8g0YTQsNC50LvQsCIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbToyMjQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgZGVsZXRpb24gb2YgZmlsZSAlcyIKK21zZ3N0ciAi0LjQs9C90L7RgNC40YDRg9C10YLRgdGPINGD0LTQsNC70LXQvdC40LUg0YTQsNC50LvQsCAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbToyMjcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgZGVsZXRpb24gb2YgZGlyZWN0b3J5ICVzIgorbXNnc3RyICLQuNCz0L3QvtGA0LjRgNGD0LXRgtGB0Y8g0YPQtNCw0LvQtdC90LjQtSDQutCw0YLQsNC70L7Qs9CwICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjIyOQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJpZ25vcmluZyBkZWxldGlvbiBvZiBzeW1saW5rICVzIgorbXNnc3RyICLQuNCz0L3QvtGA0LjRgNGD0LXRgtGB0Y8g0YPQtNCw0LvQtdC90LjQtSDRgdC40LzQstC+0LvRjNC90L7QuSDRgdGB0YvQu9C60LggJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MjcxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIm5ld2x5IGNyZWF0ZWQgZW1wdHkgZmlsZSAnJXMnIHdpbGwgbm90IGJlIHJlcHJlc2VudGVkIGluIGRpZmYiCittc2dzdHIgItC90LXQtNCw0LLQvdC+INGB0L7Qt9C00LDQvdC90YvQuSDQv9GD0YHRgtC+0Lkg0YTQsNC50Lsgwqslc8K7INC90LUg0LHRg9C00LXRgiDQstC60LvRjtGH0ZHQvSDQsiBkaWZmIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjI3NQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJleGVjdXRhYmxlIG1vZGUgJTA0byBvZiAnJXMnIHdpbGwgbm90IGJlIHJlcHJlc2VudGVkIGluIGRpZmYiCittc2dzdHIgItC/0YDQsNCy0LAg0LjRgdC/0L7Qu9C90LXQvdC40Y8gJTA0byDQtNC70Y8gwqslc8K7INC90LUg0LHRg9C00YPRgiDQstC60LvRjtGH0ZHQvdGLINCyIGRpZmYiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MjgwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInNwZWNpYWwgbW9kZSAlMDRvIG9mICclcycgd2lsbCBub3QgYmUgcmVwcmVzZW50ZWQgaW4gZGlmZiIKK21zZ3N0ciAi0YHQv9C10YbQuNCw0LvRjNC90YvQtSDQv9GA0LDQstCwICUwNG8g0LTQu9GPIMKrJXPCuyDQvdC1INCx0YPQtNGD0YIg0LLQutC70Y7Rh9GR0L3RiyDQsiBkaWZmIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjMwMCBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NDQyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZXByZXNlbnQgY2hhbmdlIHRvICVzOiAlcyIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQv9GA0LXQtNGB0YLQsNCy0LjRgtGMINC40LfQvNC10L3QtdC90LjQtSAlczogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MzA3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZXByZXNlbnQgY2hhbmdlIHRvICVzOiIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQv9GA0LXQtNGB0YLQsNCy0LjRgtGMINC40LfQvNC10L3QtdC90LjQtSAlczoiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MzA4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiAgbmV3IHZlcnNpb24gaXMgJXMiCittc2dzdHIgIiAg0L3QvtCy0LDRjyDQstC10YDRgdC40Y8gJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MzA5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiAgb2xkIHZlcnNpb24gaXMgJXMiCittc2dzdHIgIiAg0YHRgtCw0YDQsNGPINCy0LXRgNGB0LjRjyAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTozODQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZXhwZWN0ZWQgXi0tLSBpbiBsaW5lICVkIG9mIGRpZmYgYCVzJyIKK21zZ3N0ciAi0L7QttC40LTQsNC10YLRgdGPIF4tLS0g0LIg0YHRgtGA0L7QutC1ICVkINCyIGRpZmYgwqslc8K7IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjM4OQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJkaWZmIGAlcycgcGF0Y2hlcyBmaWxlIHdpdGggbmFtZSBlbmRpbmcgLmRwa2ctb3JpZyIKK21zZ3N0ciAi0YTQsNC50Lsg0LfQsNC/0LvQsNGC0L7QuiBkaWZmIMKrJXPCuyDRgSDQuNC80LXQvdC10LwsINC+0LrQsNC90YfQuNCy0LDRjtGJ0LjQvNGB0Y8g0L3QsCAuZHBrZy1vcmlnIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjM5MworIywgcGVybC1mb3JtYXQKK21zZ2lkICJkaWZmIGAlcycgZmluaXNoZXMgaW4gbWlkZGxlIG9mIC0tLS8rKysgKGxpbmUgJWQpIgorbXNnc3RyICJkaWZmIMKrJXPCuyDQt9Cw0LLQtdGA0YjQuNC70YHRjyDQsiDRgdC10YDQtdC00LjQvdC1IC0tLS8rKysgKNGB0YLRgNC+0LrQsCAlZCkiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06Mzk2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImxpbmUgYWZ0ZXIgLS0tIGlzbid0IGFzIGV4cGVjdGVkIGluIGRpZmYgYCVzJyAobGluZSAlZCkiCittc2dzdHIgItGB0YLRgNC+0LrQsCDQv9C+0YHQu9C1IC0tLSDQvdC1INGC0LAsINGH0YLQviDQvtC20LjQtNCw0LvQsNGB0Ywg0LIgZGlmZiDCqyVzwrsgKNGB0YLRgNC+0LrQsCAlZCkiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NDAyCisjLCBmdXp6eSwgcGVybC1mb3JtYXQKKyN8IG1zZ2lkICJub25lIG9mIHRoZSBmaWxlbmFtZXMgaW4gLS0tLysrKyBhcmUgcmVsYXRpdmUgaW4gZGlmZiBgJXMnIChsaW5lICVkKSIKK21zZ2lkICJub25lIG9mIHRoZSBmaWxlbmFtZXMgaW4gLS0tLysrKyBhcmUgdmFsaWQgaW4gZGlmZiAnJXMnIChsaW5lICVkKSIKK21zZ3N0ciAi0L3QuCDQvtC00LjQvSDQuNC3INC40LzRkdC9INGE0LDQudC70L7QsiDQsiAtLS0vKysrINC90LUg0YHQstGP0LfQsNC90Ysg0YEgZGlmZiDCqyVzwrsgKNGB0YLRgNC+0LrQsCAlZCkiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NDEwCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06MTI3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGNvbnRhaW5zIGFuIGluc2VjdXJlIHBhdGg6ICVzIgorbXNnc3RyICIlcyDRgdC+0LTQtdGA0LbQuNGCINC90LXQsdC10LfQvtC/0LDRgdC90YvQuSDQv9GD0YLRjDogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NDE1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImRpZmYgJXMgbW9kaWZpZXMgZmlsZSAlcyB0aHJvdWdoIGEgc3ltbGluazogJXMiCittc2dzdHIgImRpZmYgJXMg0LjQt9C80LXQvdGP0LXRgiDRhNCw0LnQuyAlcyDRh9C10YDQtdC3INGB0LjQvNCy0L7Qu9GM0L3Rg9GOINGB0YHRi9C70LrRgzogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NDI0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIm9yaWdpbmFsIGFuZCBtb2RpZmllZCBmaWxlcyBhcmUgL2Rldi9udWxsIGluIGRpZmYgYCVzJyAobGluZSAlZCkiCittc2dzdHIgIiIKKyLQvtGA0LjQs9C40L3QsNC70YzQvdGL0Lkg0Lgg0LjQt9C80LXQvdGR0L3QvdGL0Lkg0YTQsNC50LvRiyDRgNCw0LLQvdGLIC9kZXYvbnVsbCDQtNC70Y8gZGlmZiDCqyVzwrsgKNGB0YLRgNC+0LrQsCAlZCkiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NDI3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImZpbGUgcmVtb3ZhbCB3aXRob3V0IHByb3BlciBmaWxlbmFtZSBpbiBkaWZmIGAlcycgKGxpbmUgJWQpIgorbXNnc3RyICLRg9C00LDQu9C10L3QuNC1INGE0LDQudC70LAg0LHQtdC3INC/0YDQsNCy0LjQu9GM0L3QvtCz0L4g0LjQvNC10L3QuCDRhNCw0LnQu9CwINCyIGRpZmYgwqslc8K7ICjRgdGC0YDQvtC60LAgJWQpIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjQzMAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJkaWZmICVzIHJlbW92ZXMgYSBub24tZXhpc3RpbmcgZmlsZSAlcyAobGluZSAlZCkiCittc2dzdHIgImRpZmYgJXMg0YPQtNCw0LvRj9C10YIg0L3QtdGB0YPRidC10YHRgtCy0YPRjtGJ0LjQuSDRhNCw0LnQuyAlcyAo0YHRgtGA0L7QutCwICVkKSIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo0NDIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZGlmZiBgJXMnIHBhdGNoZXMgc29tZXRoaW5nIHdoaWNoIGlzIG5vdCBhIHBsYWluIGZpbGUiCittc2dzdHIgImRpZmYgwqslc8K7INC70LDRgtCw0LXRgiDRh9GC0L4t0YLQviDQvdC1INGP0LLQu9GP0Y7RidC10LXRgdGPINC/0YDQvtGB0YLRi9C8INGE0LDQudC70L7QvCIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo0NDYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZGlmZiBgJXMnIHBhdGNoZXMgZmlsZSAlcyB0d2ljZSIKK21zZ3N0ciAiZGlmZiDCqyVzwrsg0LvQsNGC0LDQtdGCINGE0LDQudC7ICVzINC00LLQsNC20LTRiyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo0NjQgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo0NjgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgZGlmZiBgJXMnIgorbXNnc3RyICLQvdC10L7QttC40LTQsNC90L3Ri9C5INC60L7QvdC10YYgZGlmZiDCqyVzwrsiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NDc3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImV4cGVjdGVkIFsgKy1dIGF0IHN0YXJ0IG9mIGxpbmUgJWQgb2YgZGlmZiBgJXMnIgorbXNnc3RyICLQvtC20LjQtNCw0LXRgtGB0Y8gWyArLV0g0LIg0L3QsNGH0LDQu9C1INGB0YLRgNC+0LrQuCAlZCDQsiBkaWZmIMKrJXPCuyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo0ODQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZXhwZWN0ZWQgXkBAIGF0IGxpbmUgJWQgb2YgZGlmZiBgJXMnIgorbXNnc3RyICLQvtC20LjQtNCw0LXRgtGB0Y8gXkBAINCyINGB0YLRgNC+0LrQtSAlZCDQsiBkaWZmIMKrJXPCuyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo0ODkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZGlmZiBgJXMnIGRvZXNuJ3QgY29udGFpbiBhbnkgcGF0Y2giCittc2dzdHIgImRpZmYgwqslc8K7INC90LUg0YHQvtC00LXRgNC20LjRgiDQt9Cw0L/Qu9Cw0YLQutC4IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjU1NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJyZW1vdmUgcGF0Y2ggYmFja3VwIGZpbGUgJXMiCittc2dzdHIgItGD0LTQsNC70LXQvdC40LUg0YDQtdC30LXRgNCy0L3QvtC5INC60L7Qv9C40Lgg0LfQsNC/0LvQsNGC0LrQuCAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo1OTUKK21zZ2lkICJub25leGlzdGVudCIKK21zZ3N0ciAi0L3QtdGB0YPRidC10YHRgtCy0YPRjtGJ0LjQuSIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo1OTYgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOjQ1OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc3RhdCAlcyIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQstGL0L/QvtC70L3QuNGC0Ywg0YTRg9C90LrRhtC40Y4gc3RhdCAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo1OTgKK21zZ2lkICJwbGFpbiBmaWxlIgorbXNnc3RyICLQv9GA0L7RgdGC0L7QuSDRhNCw0LnQuyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo1OTkKK21zZ2lkICJkaXJlY3RvcnkiCittc2dzdHIgItC60LDRgtCw0LvQvtCzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjYwMAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJzeW1saW5rIHRvICVzIgorbXNnc3RyICLRgdC40LzQstC+0LvRjNC90LDRjyDRgdGB0YvQu9C60LAg0L3QsCAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo2MDEKK21zZ2lkICJibG9jayBkZXZpY2UiCittc2dzdHIgItCx0LvQvtGH0L3QvtC1INGD0YHRgtGA0L7QudGB0YLQstC+IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjYwMgorbXNnaWQgImNoYXJhY3RlciBkZXZpY2UiCittc2dzdHIgItGB0LjQvNCy0L7Qu9GM0L3QvtC1INGD0YHRgtGA0L7QudGB0YLQstC+IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjYwMworbXNnaWQgIm5hbWVkIHBpcGUiCittc2dzdHIgItC40LzQtdC90L7QstCw0L3QvdGL0Lkg0LrQsNC90LDQuyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo2MDQKK21zZ2lkICJuYW1lZCBzb2NrZXQiCittc2dzdHIgItC40LzQtdC90L7QstCw0L3QvdGL0Lkg0YHQvtC60LXRgiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOjE4OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgdGhlIG5hbWUgb2YgYSBmaWxlIgorbXNnc3RyICIlcyDQvdC1INGP0LLQu9GP0LXRgtGB0Y8g0LjQvNC10L3QtdC8INGE0LDQudC70LAiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbToyMDgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibWlzc2luZyBjcml0aWNhbCBzb3VyY2UgY29udHJvbCBmaWVsZCAlcyIKK21zZ3N0ciAi0L7RgtGB0YPRgtGB0YLQstGD0LXRgiDQutGA0LjRgtC40YfQtdGB0LrQvtC1INGD0L/RgNCw0LLQu9GP0Y7RidC10LUg0L/QvtC70LUg0LjRgdGF0L7QtNC90LjQutC+0LIgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbToyMzYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorInNvdXJjZSBwYWNrYWdlIGZvcm1hdCBgJXMnIGlzIG5vdCBzdXBwb3J0ZWQgKFBlcmwgbW9kdWxlICVzIGlzIHJlcXVpcmVkKSIKK21zZ3N0ciAiIgorItGE0L7RgNC80LDRgiDQv9Cw0LrQtdGC0LAg0YEg0LjRgdGF0L7QtNC90YvQvCDQutC+0LTQvtC8IMKrJXPCuyDQvdC1INC/0L7QtNC00LXRgNC20LjQstCw0LXRgtGB0Y8gKNGC0YDQtdCx0YPQtdGC0YHRjyBQZXJsINC80L7QtNGD0LvRjCAiCisiJXMpIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG06MjQwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImludmFsaWQgRm9ybWF0IGZpZWxkIGAlcyciCittc2dzdHIgItC90LXQv9GA0LDQstC40LvRjNC90L7QtSDQv9C+0LvQtSBGb3JtYXQgwqslc8K7IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG06Mjg4Cittc2dpZCAic291cmNlIGFuZCB2ZXJzaW9uIGFyZSByZXF1aXJlZCB0byBjb21wdXRlIHRoZSBzb3VyY2UgYmFzZW5hbWUiCittc2dzdHIgItC00LvRjyDQvtC/0YDQtdC00LXQu9C10L3QuNGPINCx0LDQt9C+0LLQvtCz0L4g0LjQvNC10L3QuCDQuNGB0YXQvtC00L3QuNC60LAg0YLRgNC10LHRg9C10YLRgdGPINC40YHRhdC+0LTQvdC40Log0Lgg0LLQtdGA0YHQuNGPIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG06MzcxIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbTozNzMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIHZlcmlmeSBzaWduYXR1cmUgb24gJXMiCittc2dzdHIgItC/0YDQvtCy0LXRgNC60LAg0L/QvtC00L/QuNGB0Lgg0LTQu9GPICVzINC30LDQstC10YDRiNC40LvQsNGB0Ywg0L3QtdGD0LTQsNGH0L3QviIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOjM4MCBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG06MzgyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCB2ZXJpZnkgc2lnbmF0dXJlIG9uICVzIHNpbmNlIGdwZyBpc24ndCBpbnN0YWxsZWQiCittc2dzdHIgItC90LXQstC+0LfQvNC+0LbQvdC+INC/0YDQvtCy0LXRgNC40YLRjCDQv9C+0LTQv9C40YHRjCDQtNC70Y8gJXMsINGC0LDQuiDQutCw0LogZ3BnINC90LUg0YPRgdGC0LDQvdC+0LLQu9C10L3QsCIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOjM5MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgYSB2YWxpZCBvcHRpb24gZm9yICVzIgorbXNnc3RyICIlcyDQvdC1INGP0LLQu9GP0LXRgtGB0Y8g0LTQvtC/0YPRgdGC0LjQvNGL0Lwg0L/QsNGA0LDQvNC10YLRgNC+0Lwg0LTQu9GPICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG06NDYwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGRvZXMgbm90IGV4aXN0IgorbXNnc3RyICIlcyDQvdC1INGB0YPRidC10YHRgtCy0YPQtdGCIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG06NDY0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCBtYWtlICVzIGV4ZWN1dGFibGUiCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0YHQtNC10LvQsNGC0YwgJXMg0LjRgdC/0L7Qu9C90Y/QtdC80YvQvCIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOjQ2NgorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgYSBwbGFpbiBmaWxlIgorbXNnc3RyICIlcyDQvdC1INGP0LLQu9GP0LXRgtGB0Y8g0L/RgNC+0YHRgtGL0Lwg0YTQsNC50LvQvtC8IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG06NTE3CisjLCBmdXp6eSwgcGVybC1mb3JtYXQKKyN8IG1zZ2lkICJjYW4ndCBidWlsZCB3aXRoIHNvdXJjZSBmb3JtYXQgJyVzJzogJXMiCittc2dpZCAiJyVzJyBpcyBub3Qgc3VwcG9ydGVkIGJ5IHRoZSBzb3VyY2UgZm9ybWF0ICclcyciCittc2dzdHIgItC90LXQstC+0LfQvNC+0LbQvdC+INGB0L7QsdGA0LDRgtGMINGBINGE0L7RgNC80LDRgtC+0Lwg0LjRgdGF0L7QtNC90LjQutCwIMKrJXPCuzogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbTo2MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICItcyVzIG9wdGlvbiBvdmVycmlkZXMgZWFybGllciAtcyVzIG9wdGlvbiIKK21zZ3N0ciAi0L/QsNGA0LDQvNC10YLRgCAtcyVzINC30LDQvNC10L3QuNGCINGA0LDQvdC10LUg0YPQutCw0LfQsNC90L3Ri9C5INC/0LDRgNCw0LzQtdGC0YAgLXMlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjg0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInNvdXJjZSBoYW5kbGluZyBzdHlsZSAtcyVzIG5vdCBhbGxvd2VkIHdpdGggLXgiCittc2dzdHIgItGD0LrQsNC30YvQstCw0YLRjCDQvtCx0YDQsNCx0L7RgtGH0LjQuiDQuNGB0YXQvtC00L3QuNC60L7QsiAtcyVzINC90LUg0YDQsNC30YDQtdGI0LXQvdC+INCy0LzQtdGB0YLQtSDRgSAteCIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjk2CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvbmF0aXZlLnBtOjUxCittc2dpZCAibXVsdGlwbGUgdGFyZmlsZXMgaW4gdjEuMCBzb3VyY2UgcGFja2FnZSIKK21zZ3N0ciAi0L3QtdGB0LrQvtC70YzQutC+IHRhci3RhNCw0LnQu9C+0LIg0LIg0L/QsNC60LXRgtC1INGBINC40YHRhdC+0LTQvdGL0Lwg0LrQvtC00L7QvCDQstC10YDRgdC40LggdjEuMCIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjEwMSBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06MTI5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVucmVjb2duaXplZCBmaWxlIGZvciBhICVzIHNvdXJjZSBwYWNrYWdlOiAlcyIKK21zZ3N0ciAi0L3QtdGA0LDRgdC/0L7Qt9C90LDQvdC90YvQuSDRhNCw0LnQuyDQsiDQv9Cw0LrQtdGC0LUg0YEg0LjRgdGF0L7QtNC90YvQvCDQutC+0LTQvtC8ICVzOiAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjEwNgorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL25hdGl2ZS5wbTo1OAorbXNnaWQgIm5vIHRhcmZpbGUgaW4gRmlsZXMgZmllbGQiCittc2dzdHIgItC90LXRgiB0YXIt0YTQsNC50LvQsCDQsiDQv9C+0LvQtSBGaWxlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjEwOQorbXNnaWQgIm5hdGl2ZSBwYWNrYWdlIHdpdGggLm9yaWcudGFyIgorbXNnc3RyICLRgNC+0LTQvdC+0Lkg0L/QsNC60LXRgiDRgSAub3JpZy50YXIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToxMjIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbmFtZSBgJXMnIHRvIGAlcyciCittc2dzdHIgItC90LXQstC+0LfQvNC+0LbQvdC+INC/0LXRgNC10LjQvNC10L3QvtCy0LDRgtGMIMKrJXPCuyDQsiDCqyVzwrsiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToxMjYgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjE0MQorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjE1MyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06MTY2CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvYnpyLnBtOjE5MAorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL25hdGl2ZS5wbTo2MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bnBhY2tpbmcgJXMiCittc2dzdHIgItGA0LDRgdC/0LDQutC+0LLRi9Cy0LDQtdGC0YHRjyAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjEzMworbXNnaWQgInVuYWJsZSB0byBrZWVwIG9yaWcgZGlyZWN0b3J5IChhbHJlYWR5IGV4aXN0cykiCittc2dzdHIgItC90LXQstC+0LfQvNC+0LbQvdC+INGB0L7RhdGA0LDQvdC40YLRjCBvcmlnINC60LDRgtCw0LvQvtCzICjRg9C20LUg0YHRg9GJ0LXRgdGC0LLRg9C10YIpIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MTQwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZW5hbWUgbmV3bHktZXh0cmFjdGVkICVzIHRvICVzIgorbXNnc3RyICLQvtGC0LrQsNC3INC/0YDQuCDQv9C10YDQtdC40LzQtdC90L7QstCw0L3QuNC4INGC0L7Qu9GM0LrQviDRh9GC0L4g0LjQt9Cy0LvQtdGH0ZHQvdC90L7Qs9C+ICVzINCyICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MTQ2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZW5hbWUgc2F2ZWQgJXMgdG8gJXMiCittc2dzdHIgItC+0YLQutCw0Lcg0L/RgNC4INC/0LXRgNC10LjQvNC10L3QvtCy0LDQvdC40Lgg0YHQvtGF0YDQsNC90ZHQvdC90L7Qs9C+ICVzINCyICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MTUzIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbToyMjIKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbToxNzIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiYXBwbHlpbmcgJXMiCittc2dzdHIgItC90LDQutC70LDQtNGL0LLQsNC10YLRgdGPICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MTU4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVwc3RyZWFtIGZpbGVzIHRoYXQgaGF2ZSBiZWVuIG1vZGlmaWVkOiAlcyIKK21zZ3N0ciAi0LDQstGC0L7RgNGB0LrQuNC1INGE0LDQudC70Ysg0LHRi9C70Lgg0LjQt9C80LXQvdC10L3RizogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToxNjgKK21zZ2lkICJvbmx5IHN1cHBvcnRzIGd6aXAgY29tcHJlc3Npb24iCittc2dzdHIgItC/0L7QtNC00LXRgNC20LjQstCw0LXRgtGB0Y8g0YLQvtC70YzQutC+INC80LXRgtC+0LQg0YHQttCw0YLQuNGPIGd6aXAiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToxNzkKK21zZ2lkICIiCisiLWIgdGFrZXMgYXQgbW9zdCBhIGRpcmVjdG9yeSBhbmQgYW4gb3JpZyBzb3VyY2UgYXJndW1lbnQgKHdpdGggdjEuMCBzb3VyY2UgIgorInBhY2thZ2UpIgorbXNnc3RyICIiCisi0LfQvdCw0YfQtdC90LjQtdC8INC/0LDRgNCw0LzQtdGC0YDQsCAtYiDRj9Cy0LvRj9C10YLRgdGPINGC0L7Qu9GM0LrQviDQutCw0YLQsNC70L7QsyDQuCBvcmlnINC40YHRhdC+0LTQvdC40LogKNC00LvRjyAiCisi0LjRgdGF0L7QtNC90LjQutCwINC/0LDQutC10YLQsCB2MS4wKSIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjE4NQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJzb3VyY2UgaGFuZGxpbmcgc3R5bGUgLXMlcyBub3QgYWxsb3dlZCB3aXRoIC1iIgorbXNnc3RyICLRgtC40L8g0YDQsNCx0L7RgtGLINGBINC40YHRhdC+0LTQvdC40LrQsNC80LggLXMlcyDQvdC10LvRjNC30Y8g0YPQutCw0LfRi9Cy0LDRgtGMINCy0LzQtdGB0YLQtSDRgSAtYiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjIwMAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJwYWNrZWQgb3JpZyBgJXMnIGV4aXN0cyBidXQgaXMgbm90IGEgcGxhaW4gZmlsZSIKK21zZ3N0ciAi0YPQv9Cw0LrQvtCy0LDQvdC90YvQuSBvcmlnIMKrJXPCuyDRgdGD0YnQtdGB0YLQstGD0LXRgiwg0L3QviDQvdC1INGP0LLQu9GP0LXRgtGB0Y8g0L/RgNC+0YHRgtGL0Lwg0YTQsNC50LvQvtC8IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MjEyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzdGF0IG9yaWcgYXJndW1lbnQgJXMiCittc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0LLRi9C/0L7Qu9C90LjRgtGMINGE0YPQvdC60YbQuNGOIHN0YXQg0LTQu9GPIG9yaWcg0L/QsNGA0LDQvNC10YLRgNCwICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MjE4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJvcmlnIGFyZ3VtZW50IGlzIHVucGFja2VkIGJ1dCBzb3VyY2UgaGFuZGxpbmcgc3R5bGUgLXMlcyBjYWxscyBmb3IgcGFja2VkICguIgorIm9yaWcudGFyLjxleHQ+KSIKK21zZ3N0ciAiIgorIm9yaWcg0L/QsNGA0LDQvNC10YLRgCDRgNCw0YHQv9Cw0LrQvtCy0LDQvSwg0L3QviDQstGL0LfRi9Cy0LDRjtGC0YHRjyDQvNC10YLQvtC00YsgLXMlcyDQutCw0Log0LTQu9GPINGD0L/QsNC60L7QstCw0L3QvdGL0YUgIgorItC40YHRhdC+0LTQvdC40LrQvtCyICgub3JpZy50YXIuPNGA0LDRgdGIPikiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToyMjYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIm9yaWcgYXJndW1lbnQgaXMgcGFja2VkIGJ1dCBzb3VyY2UgaGFuZGxpbmcgc3R5bGUgLXMlcyBjYWxscyBmb3IgdW5wYWNrZWQgKC4iCisib3JpZy8pIgorbXNnc3RyICIiCisib3JpZyDQv9Cw0YDQsNC80LXRgtGAINGD0L/QsNC60L7QstCw0L0sINC90L4g0LLRi9C30YvQstCw0Y7RgtGB0Y8g0LzQtdGC0L7QtNGLIC1zJXMg0LrQsNC6INC00LvRjyDRgNCw0YHQv9Cw0LrQvtCy0LDQvdC90YvRhSAiCisi0LjRgdGF0L7QtNC90LjQutC+0LIgKC5vcmlnLykiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToyMzEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAib3JpZyBhcmd1bWVudCAlcyBpcyBub3QgYSBwbGFpbiBmaWxlIG9yIGRpcmVjdG9yeSIKK21zZ3N0ciAib3JpZyDQv9Cw0YDQsNC80LXRgtGAICVzINC90LUg0Y/QstC70Y/QtdGC0YHRjyDQvtCx0YvRh9C90YvQvCDRhNCw0LnQu9C+0Lwg0LjQu9C4INC60LDRgtCw0LvQvtCz0L7QvCIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjIzNworIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisib3JpZyBhcmd1bWVudCBpcyBlbXB0eSAobWVhbnMgbm8gb3JpZywgbm8gZGlmZikgYnV0IHNvdXJjZSBoYW5kbGluZyBzdHlsZSAtcyIKKyIlcyB3YW50cyBzb21ldGhpbmciCittc2dzdHIgIiIKKyJvcmlnINC/0LDRgNCw0LzQtdGC0YAg0L/Rg9GB0YIgKNGC0L4g0LXRgdGC0Ywg0L3QtSBvcmlnINC4INC90LUgZGlmZiksINC90L4g0YPQutCw0LfQsNC90LAg0LrQvtC80LDQvdC00LAg0YfRgtC+LdGC0L4gIgorItGB0LTQtdC70LDRgtGMIC1zJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToyNTAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5wYWNrZWQgb3JpZyBgJXMnIGV4aXN0cyBidXQgaXMgbm90IGEgZGlyZWN0b3J5IgorbXNnc3RyICLRgdGD0YnQtdGB0YLQstGD0LXRgiDRgNCw0YHQv9Cw0LrQvtCy0LDQvdC90YvQuSBvcmlnIMKrJXPCuywg0L3QviDQvdC1INGP0LLQu9GP0LXRgtGB0Y8g0LrQsNGC0LDQu9C+0LPQvtC8IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MjU1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IHB1dGF0aXZlIHVucGFja2VkIG9yaWcgYCVzJyIKK21zZ3N0ciAiIgorItC90LXQstC+0LfQvNC+0LbQvdC+INCy0YvQv9C+0LvQvdC40YLRjCDRhNGD0L3QutGG0LjRjiBzdGF0INC00LvRjyDQv9GA0LXQtNC/0L7Qu9Cw0LPQsNC10LzQvtCz0L4g0YDQsNGB0L/QsNC60L7QstCw0L3QvdC+0LPQviBvcmlnICIKKyLCqyVzwrsiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToyNjQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAic291cmNlIGRpcmVjdG9yeSAnJXMnIGlzIG5vdCA8c291cmNlcGFja2FnZT4tPHVwc3RyZWFtdmVyc2lvbj4gJyVzJyIKK21zZ3N0ciAiIgorItC60LDRgtCw0LvQvtCzINC40YHRhdC+0LTQvdC40LrQvtCyIMKrJXPCuyDQvdC1INCyINCy0LjQtNC1IDzQv9Cw0LrQtdGCINC40YHRhdC+0LTQvdC40LrQvtCyPi080L7RgNC40LPQuNC90LDQu9GM0L3QsNGPINCy0LXRgNGB0LjRjz4gIgorIsKrJXPCuyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjI3MworIywgcGVybC1mb3JtYXQKK21zZ2lkICIub3JpZyBkaXJlY3RvcnkgbmFtZSAlcyBpcyBub3QgPHBhY2thZ2U+LTx1cHN0cmVhbXZlcnNpb24+ICh3YW50ZWQgJXMpIgorbXNnc3RyICIiCisi0LjQvNGPINC60LDRgtCw0LvQvtCz0LAgLm9yaWcgJXMg0L3QtSDQsiDQstC40LTQtSA80L/QsNC60LXRgj4tPNC+0YDQuNCz0LjQvdCw0LvRjNC90LDRjyDQstC10YDRgdC40Y8+ICjRgtGA0LXQsdGD0LXRgtGB0Y8gJXMpIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MjgyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyIub3JpZy50YXIgbmFtZSAlcyBpcyBub3QgPHBhY2thZ2U+Xzx1cHN0cmVhbXZlcnNpb24+Lm9yaWcudGFyICh3YW50ZWQgJXMpIgorbXNnc3RyICIiCisi0LjQvNGPIC5vcmlnLnRhciAlcyDQvdC1INCyINCy0LjQtNC1IDzQv9Cw0LrQtdGCPl880L7RgNC40LPQuNC90LDQu9GM0L3QsNGPINCy0LXRgNGB0LjRjz4ub3JpZy50YXIgKNGC0YDQtdCx0YPQtdGC0YHRjyAiCisiJXMpIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06Mjk0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJ0YXJmaWxlIGAlcycgYWxyZWFkeSBleGlzdHMsIG5vdCBvdmVyd3JpdGluZywgZ2l2aW5nIHVwOyB1c2UgLXNVIG9yIC1zUiB0byAiCisib3ZlcnJpZGUiCittc2dzdHIgIiIKKyJ0YXIt0YTQsNC50Lsgwqslc8K7INGD0LbQtSDRgdGD0YnQtdGB0YLQstGD0LXRgiwg0L3QtSDQv9C10YDQtdC30LDQv9C40YHRi9Cy0LDQtdGC0YHRjywg0L7RgdGC0LDQvdC+0LI7INC40YHQv9C+0LvRjNC30YPQudGC0LUgLXNVICIKKyLQuNC70LggLXNSINC00LvRjyDQv9C10YDQtdC30LDQv9C40YHQuCIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjI5OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hlY2sgZm9yIGV4aXN0ZW5jZSBvZiBgJXMnIgorbXNnc3RyICLQvdC10LLQvtC30LzQvtC20L3QviDQv9GA0L7QstC10YDQuNGC0Ywg0YHRg9GJ0LXRgdGC0LLQvtCy0LDQvdC40LUgwqslc8K7IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MzEzIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbTozNzUKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9uYXRpdmUucG06OTgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbmFtZSBgJXMnIChuZXdseSBjcmVhdGVkKSB0byBgJXMnIgorbXNnc3RyICLQvdC10LLQvtC30LzQvtC20L3QviDQv9C10YDQtdC40LzQtdC90L7QstCw0YLRjCDCqyVzwrsgKNC90LXQtNCw0LLQvdC+INGB0L7Qt9C00LDQvdC90YvQuSkg0LIgwqslc8K7IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MzE2IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbTozNzgKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo2MDMKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9uYXRpdmUucG06MTAyCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06MzY3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGFuZ2UgcGVybWlzc2lvbiBvZiBgJXMnIgorbXNnc3RyICLQvdC10LLQvtC30LzQvtC20L3QviDQuNC30LzQtdC90LjRgtGMINC/0YDQsNCy0LAgwqslc8K7IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MzE4IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTozNDgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiYnVpbGRpbmcgJXMgdXNpbmcgZXhpc3RpbmcgJXMiCittc2dzdHIgItGB0LHQvtGA0LrQsCAlcyDRgSDQuNGB0L/QvtC70YzQt9C+0LLQsNC90LjQtdC8INGB0YPRidC10YHRgtCy0YPRjtGJ0LXQs9C+ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MzI3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJvcmlnIGRpciBgJXMnIGFscmVhZHkgZXhpc3RzLCBub3Qgb3ZlcndyaXRpbmcsIGdpdmluZyB1cDsgdXNlIC1zQSwgLXNLIG9yIC0iCisic1AgdG8gb3ZlcnJpZGUiCittc2dzdHIgIiIKKyLQutCw0YLQsNC70L7QsyBvcmlnIMKrJXPCuyDRg9C20LUg0YHRg9GJ0LXRgdGC0LLRg9C10YIsINC90LUg0L/QtdGA0LXQt9Cw0L/QuNGB0LDQvSwg0L7RgdGC0LDQvdC+0LI7INC40YHQv9C+0LvRjNC30YPQudGC0LUgLXNBLCAtIgorInNLINC40LvQuCAtc1Ag0LTQu9GPINC/0LXRgNC10LfQsNC/0LjRgdC4IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MzM1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGVjayBmb3IgZXhpc3RlbmNlIG9mIG9yaWcgZGlyIGAlcyciCittc2dzdHIgItC90LXQstC+0LfQvNC+0LbQvdC+INC/0YDQvtCy0LXRgNC40YLRjCDRgdGD0YnQtdGB0YLQstC+0LLQsNC90LjQtSBvcmlnINC60LDRgtCw0LvQvtCz0LAgwqslc8K7IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MzY2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInRoZSBkaWZmIG1vZGlmaWVzIHRoZSBmb2xsb3dpbmcgdXBzdHJlYW0gZmlsZXM6ICVzIgorbXNnc3RyICJkaWZmINC40LfQvNC10L3Rj9C10YIg0YHQu9C10LTRg9GO0YnQuNC1INCw0LLRgtC+0YDRgdC60LjQtSDRhNCw0LnQu9GLOiAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjM2OAorbXNnaWQgIiIKKyJ1c2UgdGhlICczLjAgKHF1aWx0KScgZm9ybWF0IHRvIGhhdmUgc2VwYXJhdGUgYW5kIGRvY3VtZW50ZWQgY2hhbmdlcyB0byAiCisidXBzdHJlYW0gZmlsZXMsIHNlZSBkcGtnLXNvdXJjZSgxKSIKK21zZ3N0ciAiIgorItC40YHQv9C+0LvRjNC30YPQtdGC0YHRjyDRhNC+0YDQvNCw0YIgwqszLjAgKHF1aWx0KcK7INC00LvRjyDRgNCw0LfQtNC10LvQtdC90LjRjyDQuCDQvtC/0LjRgdCw0L3QuNGPINC40LfQvNC10L3QtdC90LjQuSAiCisi0LDQstGC0L7RgNGB0LrQuNGFINGE0LDQudC70L7Qsiwg0YHQvCBkcGtnLXNvdXJjZSgxKSIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjM3MAorbXNnaWQgImFib3J0aW5nIGR1ZSB0byAtLWFib3J0LW9uLXVwc3RyZWFtLWNoYW5nZXMiCittc2dzdHIgItC/0YDQtdGA0YvQstCw0L3QuNC1INGA0LDQsdC+0YLRiyDQuNC3LdC30LAgLS1hYm9ydC1vbi11cHN0cmVhbS1jaGFuZ2VzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06Mzg4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzOiB1bnJlcHJlc2VudGFibGUgY2hhbmdlcyB0byBzb3VyY2UiCittc2dzdHIgIiVzOiDQvdC10YXQsNGA0LDQutGC0LXRgNC90YvQtSDQuNC30LzQtdC90LXQvdC40Y8g0LIg0LjRgdGF0L7QtNC90LjQutC1IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06MTE5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImR1cGxpY2F0ZSBmaWxlcyBpbiAlcyBzb3VyY2UgcGFja2FnZTogJXMuKiIKK21zZ3N0ciAi0L/QvtCy0YLQvtGA0LXQvdC40LUg0YTQsNC50LvQsCDQsiDQv9Cw0LrQtdGC0LUg0YEg0LjRgdGF0L7QtNC90YvQvCDQutC+0LTQvtC8ICVzOiAlcy4qIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06MTM1Cittc2dpZCAibWlzc2luZyBvcmlnLnRhciBvciBkZWJpYW4udGFyIGZpbGUgaW4gdjIuMCBzb3VyY2UgcGFja2FnZSIKK21zZ3N0ciAiIgorItC+0YLRgdGD0YLRgdGC0LLRg9C10YIg0YTQsNC50Lsgb3JpZy50YXIg0LjQu9C4IGRlYmlhbi50YXIg0LIg0L/QsNC60LXRgtC1INGBINC40YHRhdC+0LTQvdGL0Lwg0LrQvtC00L7QvCDQstC10YDRgdC40LggIgorInYyLjAiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbToxNTUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAicmVxdWlyZWQgcmVtb3ZhbCBvZiBgJXMnIGluc3RhbGxlZCBieSBvcmlnaW5hbCB0YXJiYWxsIgorbXNnc3RyICLRgtGA0LXQsdGD0LXRgtGB0Y8g0YPQtNCw0LvQtdC90LjQtSDCqyVzwrssINGD0YHRgtCw0L3QvtCy0LvQtdC90L3QvtCz0L4g0LjQtyDQvtGA0LjQs9C40L3QsNC70YzQvdC+0LPQviB0YXJiYWxsIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06MjQwCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06MjU1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVuYXBwbHlpbmcgJXMiCittc2dzdHIgItC+0YLQvNC10L3QsCDQvdCw0LvQvtC20LXQvdC40Lkg0L3QsCAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjI2MyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06MzQ0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIm5vIHVwc3RyZWFtIHRhcmJhbGwgZm91bmQgYXQgJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjMxNAorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjMyOQorIywgZnV6enkKKyN8IG1zZ2lkICIiCisjfCAicGF0Y2hlcyBoYXZlIG5vdCBiZWVuIGFwcGxpZWQsIGFwcGx5aW5nIHRoZW0gbm93ICh1c2UgLS1uby1wcmVwYXJhdGlvbiB0byAiCisjfCAib3ZlcnJpZGUpIgorbXNnaWQgInBhdGNoZXMgYXJlIG5vdCBhcHBsaWVkLCBhcHBseWluZyB0aGVtIG5vdyIKK21zZ3N0ciAiIgorItC30LDQv9C70LDRgtGLINC90LUg0LHRi9C70Lgg0L3QsNC70L7QttC10L3Riywg0LTQtdC70LDQtdC8INGN0YLQviDRgdC10LnRh9Cw0YEgKNC40YHQv9C+0LvRjNC30YPQudGC0LUgLS1uby1wcmVwYXJhdGlvbiwgIgorItGH0YLQvtCx0Ysg0L3QtSDQstGL0L/QvtC70L3Rj9GC0Ywg0Y3RgtC+0LPQvikiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTozMzEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAic2V2ZXJhbCBvcmlnLnRhciBmaWxlcyBmb3VuZCAoJXMgYW5kICVzKSBidXQgb25seSBvbmUgaXMgYWxsb3dlZCIKK21zZ3N0ciAi0L3QsNC50LTQtdC90L4g0L3QtdGB0LrQvtC70YzQutC+INGE0LDQudC70L7QsiBvcmlnLnRhciAoJXMg0LggJXMpLCDQvdC+INC80L7QttC10YIg0LHRi9GC0Ywg0YLQvtC70YzQutC+INC+0LTQuNC9IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06MzcwCittc2dpZCAiY29weSBvZiB0aGUgZGViaWFuIGRpcmVjdG9yeSIKK21zZ3N0ciAi0LrQvtC/0LjRgNC+0LLQsNC90LjQtSDQutCw0YLQsNC70L7Qs9CwIGRlYmlhbiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjM4OAorbXNnaWQgInVucmVwcmVzZW50YWJsZSBjaGFuZ2VzIHRvIHNvdXJjZSIKK21zZ3N0ciAi0L3QtdGF0LDRgNCw0LrRgtC10YDQvdGL0LUg0LjQt9C80LXQvdC10L3QuNGPINCyINC40YHRhdC+0LTQvdC40LrQtSIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjM5MQorIywgZnV6enkKKyN8IG1zZ2lkICJsb2NhbCBjaGFuZ2VzIHN0b3JlZCBpbiAlcywgdGhlIG1vZGlmaWVkIGZpbGVzIGFyZToiCittc2dpZCAibG9jYWwgY2hhbmdlcyBkZXRlY3RlZCwgdGhlIG1vZGlmaWVkIGZpbGVzIGFyZToiCittc2dzdHIgItC70L7QutCw0LvRjNC90YvQtSDQuNC30LzQtdC90LXQvdC40Y8g0YHQvtGF0YDQsNC90LXQvdGLINCyICVzLCDQuNC30LzQtdC90ZHQvdC90YvQtSDRhNCw0LnQu9GLOiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjQxMAorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2J6ci5wbTo5NworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL25hdGl2ZS5wbTo3NgorIywgcGVybC1mb3JtYXQKK21zZ2lkICItYiB0YWtlcyBvbmx5IG9uZSBwYXJhbWV0ZXIgd2l0aCBmb3JtYXQgYCVzJyIKK21zZ3N0ciAi0LfQvdCw0YfQtdC90LjQtdC8INC/0LDRgNCw0LzQtdGC0YDQsCAtYiDRj9Cy0LvRj9C10YLRgdGPINGC0L7Qu9GM0LrQviDQvtC00LjQvSDQsNGA0LPRg9C80LXQvdGCINCyINGE0L7RgNC80LDRgtC1IMKrJXPCuyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjQ0NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiYWRkICVzIGluIGRlYmlhbi9zb3VyY2UvaW5jbHVkZS1iaW5hcmllcyBpZiB5b3Ugd2FudCB0byBzdG9yZSB0aGUgbW9kaWZpZWQgIgorImJpbmFyeSBpbiB0aGUgZGViaWFuIHRhcmJhbGwiCittc2dzdHIgIiIKKyLQtNC+0LHQsNCy0YzRgtC1ICVzINCyIGRlYmlhbi9zb3VyY2UvaW5jbHVkZS1iaW5hcmllcywg0LXRgdC70Lgg0YXQvtGC0LjRgtC1INGF0YDQsNC90LjRgtGMINC40LfQvNC10L3RkdC90L3Ri9C5ICIKKyLQtNCy0L7QuNGH0L3Ri9C5INGE0LDQudC7INCyIGRlYmlhbiB0YXJiYWxsIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NDU4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVud2FudGVkIGJpbmFyeSBmaWxlOiAlcyIKK21zZ3N0ciAi0L3QtdC20LXQu9Cw0YLQtdC70YzQvdGL0Lkg0LTQstC+0LjRh9C90YvQuSDRhNCw0LnQuzogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo0OTMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorImRldGVjdGVkICVkIHVud2FudGVkIGJpbmFyeSBmaWxlIChhZGQgaXQgaW4gZGViaWFuL3NvdXJjZS9pbmNsdWRlLWJpbmFyaWVzICIKKyJ0byBhbGxvdyBpdHMgaW5jbHVzaW9uKS4iCittc2dpZF9wbHVyYWwgIiIKKyJkZXRlY3RlZCAlZCB1bndhbnRlZCBiaW5hcnkgZmlsZXMgKGFkZCB0aGVtIGluIGRlYmlhbi9zb3VyY2UvaW5jbHVkZS0iCisiYmluYXJpZXMgdG8gYWxsb3cgdGhlaXIgaW5jbHVzaW9uKS4iCittc2dzdHJbMF0gIiIKKyLQvtCx0L3QsNGA0YPQttC10L0gJWQg0L3QtdC20LXQu9Cw0YLQtdC70YzQvdGL0Lkg0LTQstC+0LjRh9C90YvQuSDRhNCw0LnQuyAo0YfRgtC+0LHRiyDRgNCw0LfRgNC10YjQuNGC0Ywg0LLQutC70Y7Rh9C10L3QuNC1LCAiCisi0LTQvtCx0LDQstGM0YLQtSDQtdCz0L4g0LIgZGViaWFuL3NvdXJjZS9pbmNsdWRlLWJpbmFyaWVzKS4iCittc2dzdHJbMV0gIiIKKyLQvtCx0L3QsNGA0YPQttC10L3QviAlZCDQvdC10LbQtdC70LDRgtC10LvRjNC90YvRhSDQtNCy0L7QuNGH0L3Ri9GFINGE0LDQudC70LAgKNGH0YLQvtCx0Ysg0YDQsNC30YDQtdGI0LjRgtGMINCy0LrQu9GO0YfQtdC90LjQtSwgIgorItC00L7QsdCw0LLRjNGC0LUg0LjRhSDQsiBkZWJpYW4vc291cmNlL2luY2x1ZGUtYmluYXJpZXMpLiIKK21zZ3N0clsyXSAiIgorItC+0LHQvdCw0YDRg9C20LXQvdC+ICVkINC90LXQttC10LvQsNGC0LXQu9GM0L3Ri9GFINC00LLQvtC40YfQvdGL0YUg0YTQsNC50LvQvtCyICjRh9GC0L7QsdGLINGA0LDQt9GA0LXRiNC40YLRjCDQstC60LvRjtGH0LXQvdC40LUsICIKKyLQtNC+0LHQsNCy0YzRgtC1INC40YUg0LIgZGViaWFuL3NvdXJjZS9pbmNsdWRlLWJpbmFyaWVzKS4iCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo1MDgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAieW91IGNhbiBpbnRlZ3JhdGUgdGhlIGxvY2FsIGNoYW5nZXMgd2l0aCAlcyIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NTEwCisjLCBmdXp6eSwgcGVybC1mb3JtYXQKKyN8IG1zZ2lkICJhYm9ydGluZyBkdWUgdG8gLS1hYm9ydC1vbi11cHN0cmVhbS1jaGFuZ2VzIgorbXNnaWQgImFib3J0aW5nIGR1ZSB0byB1bmV4cGVjdGVkIHVwc3RyZWFtIGNoYW5nZXMsIHNlZSAlcyIKK21zZ3N0ciAi0L/RgNC10YDRi9Cy0LDQvdC40LUg0YDQsNCx0L7RgtGLINC40Lct0LfQsCAtLWFib3J0LW9uLXVwc3RyZWFtLWNoYW5nZXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo1MjAgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjY1MworIywgcGVybC1mb3JtYXQKK21zZ2lkICJsb2NhbCBjaGFuZ2VzIGhhdmUgYmVlbiByZWNvcmRlZCBpbiBhIG5ldyBwYXRjaDogJXMiCittc2dzdHIgIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjUyNCBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NjA5CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NjM3IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo2NTEKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbTozNjkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlbW92ZSAlcyIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRg9C00LDQu9C40YLRjCAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjUzNAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJhZGRpbmcgJXMgdG8gJXMiCittc2dzdHIgItC00L7QsdCw0LLQu9GP0LXRgtGB0Y8gJXMg0LIgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo2MDEKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbTozNjUKKyMsIGZ1enp5LCBwZXJsLWZvcm1hdAorI3wgbXNnaWQgImZhaWxlZCB0byByZW5hbWUgc2F2ZWQgJXMgdG8gJXMiCittc2dpZCAiZmFpbGVkIHRvIGNvcHkgJXMgdG8gJXMiCittc2dzdHIgItC+0YLQutCw0Lcg0L/RgNC4INC/0LXRgNC10LjQvNC10L3QvtCy0LDQvdC40Lgg0YHQvtGF0YDQsNC90ZHQvdC90L7Qs9C+ICVzINCyICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NjI0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZWdpc3RlciBjaGFuZ2VzIGluICVzLCB0aGlzIHBhdGNoIGFscmVhZHkgZXhpc3RzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo2MzgKKyMsIGZ1enp5CisjfCBtc2dpZCAidW5yZXByZXNlbnRhYmxlIGNoYW5nZXMgdG8gc291cmNlIgorbXNnaWQgInRoZXJlIGFyZSBubyBsb2NhbCBjaGFuZ2VzIHRvIHJlY29yZCIKK21zZ3N0ciAi0L3QtdGF0LDRgNCw0LrRgtC10YDQvdGL0LUg0LjQt9C80LXQvdC10L3QuNGPINCyINC40YHRhdC+0LTQvdC40LrQtSIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjY0MworbXNnaWQgIkVudGVyIHRoZSBkZXNpcmVkIHBhdGNoIG5hbWU6ICIKK21zZ3N0ciAiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvYnpyLnBtOjUyCittc2dpZCAiIgorIlRoaXMgc291cmNlIHBhY2thZ2UgY2FuIG9ubHkgYmUgbWFuaXB1bGF0ZWQgdXNpbmcgYnpyLCB3aGljaCBpcyBub3QgaW4gdGhlICIKKyJQQVRILiIKK21zZ3N0ciAiIgorItCY0YHRhdC+0LTQvdGL0Lwg0L/QsNC60LXRgtC+0Lwg0LzQvtC20L3QviDRg9C/0YDQsNCy0LvRj9GC0Ywg0YLQvtC70YzQutC+INGBINC/0L7QvNC+0YnRjNGOIGJ6ciwg0LrQvtGC0L7RgNC+0LPQviDQvdC10YIg0LIgUEFUSC4iCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9ienIucG06NTkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorInNvdXJjZSBkaXJlY3RvcnkgaXMgbm90IHRoZSB0b3AgZGlyZWN0b3J5IG9mIGEgYnpyIHJlcG9zaXRvcnkgKCVzLy5ienIgbm90ICIKKyJwcmVzZW50KSwgYnV0IEZvcm1hdCBienIgd2FzIHNwZWNpZmllZCIKK21zZ3N0ciAiIgorItC40YHRhdC+0LTQvdGL0Lkg0LrQsNGC0LDQu9C+0LMg0L3QtSDRj9Cy0LvRj9C10YLRgdGPINC90LDRh9Cw0LvRjNC90YvQvCDQutCw0YLQsNC70L7Qs9C+0Lwg0YDQtdC/0L7Qt9C40YLQvtGA0LjRjyBienIgKNC90LXRgiAlcy8uIgorImJ6ciksINC90L4g0YPQutCw0LfQsNC9IEZvcm1hdCBienIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9ienIucG06NjYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgaXMgYSBzeW1saW5rIgorbXNnc3RyICIlcyDRj9Cy0LvRj9C10YLRgdGPINGB0LjQvNCy0L7Qu9GM0L3QvtC5INGB0YHRi9C70LrQvtC5IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvYnpyLnBtOjcyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGlzIGEgc3ltbGluayB0byBvdXRzaWRlICVzIgorbXNnc3RyICIlcyDRj9Cy0LvRj9C10YLRgdGPINGB0LjQvNCy0L7Qu9GM0L3QvtC5INGB0YHRi9C70LrQvtC5INCy0L7QstC90LUgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9ienIucG06ODMKK21zZ2lkICJkb2Vzbid0IGNvbnRhaW4gYSBienIgcmVwb3NpdG9yeSIKK21zZ3N0ciAi0L3QtSDRgdC+0LTQtdGA0LbQuNGCINGA0LXQv9C+0LfQuNGC0L7RgNC40Y8gYnpyIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvYnpyLnBtOjEyNworbXNnaWQgImJ6ciBzdGF0dXMgZXhpdGVkIG5vbnplcm8iCittc2dzdHIgItC60L7QvNCw0L3QtNCwIGJ6ciBzdGF0dXMg0LfQsNCy0LXRgNGI0LjQu9Cw0YHRjCDRgSDQvdC10L3Rg9C70LXQstGL0Lwg0LrQvtC00L7QvCDQstGL0YXQvtC00LAiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9ienIucG06MTI5CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvZ2l0LnBtOjEzMworIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmNvbW1pdHRlZCwgbm90LWlnbm9yZWQgY2hhbmdlcyBpbiB3b3JraW5nIGRpcmVjdG9yeTogJXMiCittc2dzdHIgIiIKKyLQvdC1INGB0L7RhdGA0LDQvdC10L3QviDQsiDQs9C70LDQstC90YvQuSDRgNC10L/QvtC30LjRgtC+0YDQuNC5LCDQvdC10LjQs9C90L7RgNC40YDRg9C10LzRi9C1INC40LfQvNC10L3QtdC90LjRjyDQsiDRgNCw0LHQvtGH0LXQvCAiCisi0LrQsNGC0LDQu9C+0LPQtTogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9ienIucG06MTc5Cittc2dpZCAiZm9ybWF0IHYzLjAgdXNlcyBvbmx5IG9uZSBzb3VyY2UgZmlsZSIKK21zZ3N0ciAi0YTQvtGA0LzQsNGCIHYzLjAg0LjRgdC/0L7Qu9GM0LfRg9C10YLRgdGPINGC0L7Qu9GM0LrQviDQsiDRhNCw0LnQu9C1INC40YHRhdC+0LTQvdC40LrQtSIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2J6ci5wbToxODMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZXhwZWN0ZWQgJXMsIGdvdCAlcyIKK21zZ3N0ciAi0L7QttC40LTQsNC70L7RgdGMICVzLCDQv9C+0LvRg9GH0LXQvdC+ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvY3VzdG9tLnBtOjQwCittc2dpZCAiRm9ybWF0IGAzLjAgKGN1c3RvbSknIGlzIG9ubHkgdXNlZCB0byBjcmVhdGUgc291cmNlIHBhY2thZ2VzIgorbXNnc3RyICIiCisi0KTQvtGA0LzQsNGCIMKrMy4wIChjdXN0b20pwrsg0LjRgdC/0L7Qu9GM0LfRg9C10YLRgdGPINGC0L7Qu9GM0LrQviDQtNC70Y8g0YHQvtC30LTQsNC90LjRjyDQv9Cw0LrQtdGC0L7QsiDRgSDQuNGB0YXQvtC00L3Ri9C8ICIKKyLQutC+0LTQvtC8IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvY3VzdG9tLnBtOjQ2Cittc2dpZCAibm8gZmlsZXMgaW5kaWNhdGVkIG9uIGNvbW1hbmQgbGluZSIKK21zZ3N0ciAi0L3QtdGCINGE0LDQudC70L7Qsiwg0YPQutCw0LfQsNC90L3Ri9GFINCyINC60L7QvNCw0L3QtNC90L7QuSDRgdGC0YDQvtC60LUiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9jdXN0b20ucG06NTMKK21zZ2lkICItLXRhcmdldC1mb3JtYXQgb3B0aW9uIGlzIG1pc3NpbmciCittc2dzdHIgItC+0YLRgdGD0YLRgdGC0LLRg9C10YIg0L/QsNGA0LDQvNC10YLRgCAtLXRhcmdldC1mb3JtYXQiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9uYXRpdmUucG06NTQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5yZWNvZ25pemVkIGZpbGUgZm9yIGEgbmF0aXZlIHNvdXJjZSBwYWNrYWdlOiAlcyIKK21zZ3N0ciAi0L3QtdGA0LDRgdC/0L7Qt9C90LDQvdC90YvQuSDRhNCw0LnQuyDQtNC70Y8g0YDQvtC00L3QvtCz0L4g0L/QsNC60LXRgtCwINGBINC40YHRhdC+0LTQvdGL0Lwg0LrQvtC00L7QvDogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9naXQucG06NTUKK21zZ2lkICIiCisiVGhpcyBzb3VyY2UgcGFja2FnZSBjYW4gb25seSBiZSBtYW5pcHVsYXRlZCB1c2luZyBnaXQsIHdoaWNoIGlzIG5vdCBpbiB0aGUgIgorIlBBVEguIgorbXNnc3RyICIiCisi0JjRgdGF0L7QtNC90YvQvCDQv9Cw0LrQtdGC0L7QvCDQvNC+0LbQvdC+INGD0L/RgNCw0LLQu9GP0YLRjCDRgtC+0LvRjNC60L4g0YEg0L/QvtC80L7RidGM0Y4gZ2l0LCDQutC+0YLQvtGA0L7Qs9C+INC90LXRgiDQsiBQQVRILiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2dpdC5wbTo2MworIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisic291cmNlIGRpcmVjdG9yeSBpcyBub3QgdGhlIHRvcCBkaXJlY3Rvcnkgb2YgYSBnaXQgcmVwb3NpdG9yeSAoJXMvLmdpdCBub3QgIgorInByZXNlbnQpLCBidXQgRm9ybWF0IGdpdCB3YXMgc3BlY2lmaWVkIgorbXNnc3RyICIiCisi0LjRgdGF0L7QtNC90YvQuSDQutCw0YLQsNC70L7QsyDQvdC1INGP0LLQu9GP0LXRgtGB0Y8g0L3QsNGH0LDQu9GM0L3Ri9C8INC60LDRgtCw0LvQvtCz0L7QvCDRgNC10L/QvtC30LjRgtC+0YDQuNGPIGdpdCAo0L3QtdGCICVzLy4iCisiZ2l0KSwg0L3QviDRg9C60LDQt9Cw0L0gRm9ybWF0IGdpdCIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2dpdC5wbTo2OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJnaXQgcmVwb3NpdG9yeSAlcyB1c2VzIHN1Ym1vZHVsZXMuIFRoaXMgaXMgbm90IHlldCBzdXBwb3J0ZWQuIgorbXNnc3RyICIiCisi0LIg0YDQtdC/0L7Qt9C40YLQvtGA0LjQuCBnaXQgJXMg0LjRgdC/0L7Qu9GM0LfRg9GO0YLRgdGPINGB0YPQsdC80L7QtNGD0LvQuC4g0K3RgtC+INC/0L7QutCwINC90LUg0L/QvtC00LTQtdGA0LbQuNCy0LDQtdGC0YHRjy4iCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9naXQucG06OTAKK21zZ2lkICJkb2Vzbid0IGNvbnRhaW4gYSBnaXQgcmVwb3NpdG9yeSIKK21zZ3N0ciAi0L3QtSDRgdC+0LTQtdGA0LbQuNGCINGA0LXQv9C+0LfQuNGC0L7RgNC40Y8gZ2l0IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvZ2l0LnBtOjEzMQorbXNnaWQgImdpdCBscy1maWxlcyBleGl0ZWQgbm9uemVybyIKK21zZ3N0ciAi0LrQvtC80LDQvdC00LAgZ2l0IGxzLWZpbGVzINC30LDQstC10YDRiNC40LvQsNGB0Ywg0YEg0L3QtdC90YPQu9C10LLRi9C8INC60L7QtNC+0Lwg0LLRi9GF0L7QtNCwIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvZ2l0LnBtOjE0OQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjcmVhdGluZyBzaGFsbG93IGNsb25lIHdpdGggZGVwdGggJXMiCittc2dzdHIgItGB0L7Qt9C00LDRkdGC0YHRjyDQv9C+0LLQtdGA0YXQvdC+0YHRgtC90YvQuSDQutC70L7QvSDRgSDQs9C70YPQsdC40L3QvtC5ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvZ2l0LnBtOjE2NQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJidW5kbGluZzogJXMiCittc2dzdHIgItGD0LLRj9C30YvQstCw0L3QuNC1OiAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2dpdC5wbToyMDEKK21zZ2lkICJmb3JtYXQgdjMuMCAoZ2l0KSB1c2VzIG9ubHkgb25lIC5naXQgZmlsZSIKK21zZ3N0ciAi0LIg0YTQvtGA0LzQsNGC0LUgdjMuMCAoZ2l0KSDQuNGB0L/QvtC70YzQt9GD0LXRgtGB0Y8g0YLQvtC70YzQutC+INGE0LDQudC7IC5naXQiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9naXQucG06MjA3Cittc2dpZCAiZm9ybWF0IHYzLjAgKGdpdCkgdXNlcyBvbmx5IG9uZSAuZ2l0c2hhbGxvdyBmaWxlIgorbXNnc3RyICLQsiDRhNC+0YDQvNCw0YLQtSB2My4wIChnaXQpINC40YHQv9C+0LvRjNC30YPQtdGC0YHRjyDRgtC+0LvRjNC60L4g0YTQsNC50LsgLmdpdHNoYWxsb3ciCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9naXQucG06MjEwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImZvcm1hdCB2My4wIChnaXQpIHVua25vd24gZmlsZTogJXMiCittc2dzdHIgItC90LXQuNC30LLQtdGB0YLQvdGL0Lkg0YTQsNC50Lsg0LTQu9GPINGE0L7RgNC80LDRgtCwIHYzLjAgKGdpdCk6ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvZ2l0LnBtOjIxNAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJmb3JtYXQgdjMuMCAoZ2l0KSBleHBlY3RlZCAlcyIKK21zZ3N0ciAi0YHQvtCz0LvQsNGB0L3QviDRhNC+0YDQvNCw0YLRgyB2My4wIChnaXQpINC+0LbQuNC00LDQtdGC0YHRjyAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2dpdC5wbToyMjAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2xvbmluZyAlcyIKK21zZ3N0ciAi0LrQu9C+0L3QuNGA0YPQtdGC0YHRjyAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2dpdC5wbToyMjcKK21zZ2lkICJzZXR0aW5nIHVwIHNoYWxsb3cgY2xvbmUiCittc2dzdHIgItC90LDRgdGC0YDQvtC50LrQsCDQv9C+0LLQtdGA0YXQvdC+0YHRgtC90L7Qs9C+INC60LvQvtC90LAiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbTo3MworIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBzaG91bGQgYmUgYSBkaXJlY3Rvcnkgb3Igbm9uLWV4aXN0aW5nIgorbXNnc3RyICIlcyDQtNC+0LvQttC10L0g0LHRi9GC0Ywg0LrQsNGC0LDQu9C+0LPQvtC8INC40LvQuCDQvdC1INGB0YPRidC10YHRgtCy0L7QstCw0YLRjCIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjc5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIHNob3VsZCBiZSBhIGZpbGUgb3Igbm9uLWV4aXN0aW5nIgorbXNnc3RyICIlcyDQtNC+0LvQttC10L0g0LHRi9GC0Ywg0YTQsNC50LvQvtC8INC40LvQuCDQvdC1INGB0YPRidC10YHRgtCy0L7QstCw0YLRjCIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjEyMAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisidGhlIHNlcmllcyBmaWxlICglcykgY29udGFpbnMgdW5zdXBwb3J0ZWQgb3B0aW9ucyAoJyVzJywgbGluZSAlcyksIGRwa2ctIgorInNvdXJjZSBtaWdodCBmYWlsIHdoZW4gYXBwbHlpbmcgcGF0Y2hlcy4iCittc2dzdHIgIiIKKyLRhNCw0LnQuyBzZXJpZXMgKCVzKSDRgdC+0LTQtdGA0LbQuNGCINC90LXQv9C+0LTQtNC10YDQttC40LLQsNC10LzRi9C1INC/0LDRgNCw0LzQtdGC0YDRiyAowqslc8K7LCDRgdGC0YDQvtC60LAgJXMpLCDRgyAiCisiZHBrZy1zb3VyY2Ug0LzQvtC20LXRgiDQvdC1INC/0L7Qu9GD0YfQuNGC0YzRgdGPINC90LDQu9C+0LbQuNGC0Ywg0LfQsNC/0LvQsNGC0LrQuC4iCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbToxMzgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IG1rZGlyICVzIgorbXNnc3RyICLQvdC1INGD0LTQsNC70L7RgdGMINCy0YvQv9C+0LvQvdC40YLRjCBta2RpciAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjIxMgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW4ndCBjcmVhdGUgc3ltbGluayAlcyIKK21zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDRgdC+0LfQtNCw0YLRjCDRgdC40LzQstC+0LvRjNC90YPRjiDRgdGB0YvQu9C60YMgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbToyOTQKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbToyOTcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5zdXBwb3J0ZWQgdmVyc2lvbiBvZiB0aGUgcXVpbHQgbWV0YWRhdGE6ICVzIgorbXNnc3RyICLQvdC10L/QvtC00LTQtdGA0LbQuNCy0LDQtdC80LDRjyDQstC10YDRgdC40Y8g0LzQtdGC0LDQtNCw0L3QvdGL0YUgcXVpbHQ6ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU3Vic3R2YXJzLnBtOjE1MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJiYWQgbGluZSBpbiBzdWJzdHZhcnMgZmlsZSAlcyBhdCBsaW5lICVkIgorbXNnc3RyICLQvdC10L/RgNCw0LLQuNC70YzQvdCw0Y8g0YHRgtGA0L7QutCwINCyINGE0LDQudC70LUg0L/QvtC00YHRgtCw0L3QvtCy0L7QuiAlcyDRgyDRgdGC0YDQvtC60LggJWQiCisKKyM6IHNjcmlwdHMvRHBrZy9TdWJzdHZhcnMucG06MjE3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInRvbyBtYW55IHN1YnN0aXR1dGlvbnMgLSByZWN1cnNpdmUgPyAtIGluIGAlcyciCittc2dzdHIgItGB0LvQuNGI0LrQvtC8INC80L3QvtCz0L4g0L/QvtC00YHRgtCw0L3QvtCy0L7QuiAo0YDQtdC60YPRgNGB0LjRjz8pINCyIMKrJXPCuyIKKworIzogc2NyaXB0cy9EcGtnL1N1YnN0dmFycy5wbToyMjQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5rbm93biBzdWJzdGl0dXRpb24gdmFyaWFibGUgJHslc30iCittc2dzdHIgItC90LXQuNC30LLQtdGB0YLQvdCw0Y8g0L/QvtC00YHRgtCw0L3QvtCy0L7Rh9C90LDRjyDQv9C10YDQtdC80LXQvdC90LDRjyAkeyVzfSIKKworIzogc2NyaXB0cy9EcGtnL1N1YnN0dmFycy5wbToyNDgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW51c2VkIHN1YnN0aXR1dGlvbiB2YXJpYWJsZSAkeyVzfSIKK21zZ3N0ciAi0L3QtdC40YHQv9C+0LvRjNC30YPQtdC80LDRjyDQv9C+0LTRgdGC0LDQvdC+0LLQvtGH0L3QsNGPINC/0LXRgNC10LzQtdC90L3QsNGPICR7JXN9IgorCisjOiBzY3JpcHRzL0Rwa2cvVmFycy5wbTozNAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJzb3VyY2UgcGFja2FnZSBuYW1lIGAlcycgY29udGFpbnMgaWxsZWdhbCBjaGFyYWN0ZXIgYCVzJyIKK21zZ3N0ciAi0LjQvNGPINC/0LDQutC10YLQsCDRgSDQuNGB0YXQvtC00L3Ri9C8INC60L7QtNC+0Lwgwqslc8K7INGB0L7QtNC10YDQttC40YIg0L3QtdC00L7Qv9GD0YHRgtC40LzRi9C5INGB0LjQvNCy0L7QuyDCqyVzwrsiCisKKyM6IHNjcmlwdHMvRHBrZy9WYXJzLnBtOjM3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInNvdXJjZSBwYWNrYWdlIG5hbWUgYCVzJyBzdGFydHMgd2l0aCBub24tYWxwaGFudW0iCittc2dzdHIgItC40LzRjyDQv9Cw0LrQtdGC0LAg0YEg0LjRgdGF0L7QtNC90YvQvCDQutC+0LTQvtC8IMKrJXPCuyDQvdCw0YfQuNC90LDQtdGC0YHRjyDQvdC1INGBINCx0YPQutCy0Ysg0LjQu9C4INGG0LjRhNGA0YsiCisKKyM6IHNjcmlwdHMvRHBrZy9WYXJzLnBtOjQ2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInNvdXJjZSBwYWNrYWdlIGhhcyB0d28gY29uZmxpY3RpbmcgdmFsdWVzIC0gJXMgYW5kICVzIgorbXNnc3RyICLQv9Cw0LrQtdGCINGBINC40YHRhdC+0LTQvdGL0Lwg0LrQvtC00L7QvCDRgdC+0LTQtdGA0LbQuNGCINC00LLQsCDQutC+0L3RhNC70LjQutGC0YPRjtGJ0LjRhSDQt9C90LDRh9C10L3QuNGPOiAlcyDQuCAlcyIKKworIzogc2NyaXB0cy9EcGtnL1ZlbmRvci9EZWJpYW4ucG06MTA2CisjLCBmdXp6eSwgcGVybC1mb3JtYXQKKyN8IG1zZ2lkICJ1bmtub3duIGtleS12YWx1ZSAlcyIKK21zZ2lkICJ1bmtub3duIGhhcmRlbmluZyBmZWF0dXJlOiAlcyIKK21zZ3N0ciAi0L3QtdC40LfQstC10YHRgtC90YvQuSDQutC70Y7Rhy3Qt9C90LDRh9C10L3QuNC1ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvVmVuZG9yL0RlYmlhbi5wbToxMTAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiaW5jb3JyZWN0IHZhbHVlIGluIGhhcmRlbmluZyBvcHRpb24gb2YgREVCX0JVSUxEX01BSU5UX09QVElPTlM6ICVzIgorbXNnc3RyICIiCisKKyM6IHNjcmlwdHMvRHBrZy9WZW5kb3IvVWJ1bnR1LnBtOjYxIHNjcmlwdHMvRHBrZy9WZW5kb3IvVWJ1bnR1LnBtOjYzCittc2dpZCAiIgorIlZlcnNpb24gbnVtYmVyIHN1Z2dlc3RzIFVidW50dSBjaGFuZ2VzLCBidXQgTWFpbnRhaW5lcjogZG9lcyBub3QgaGF2ZSBVYnVudHUgIgorImFkZHJlc3MiCittc2dzdHIgIiIKKyLQndC+0LzQtdGAIFZlcnNpb24g0L/RgNC10LTQv9C+0LvQsNCz0LDQtdGCINC40LfQvNC10L3QtdC90LjRjyBVYnVudHUsINC90L4g0LIgTWFpbnRhaW5lcjog0L3QtdGCINCw0LTRgNC10YHQsCAiCisiVWJ1bnR1IgorCisjOiBzY3JpcHRzL0Rwa2cvVmVuZG9yL1VidW50dS5wbTo2NworbXNnaWQgIiIKKyJWZXJzaW9uIG51bWJlciBzdWdnZXN0cyBVYnVudHUgY2hhbmdlcywgYnV0IHRoZXJlIGlzIG5vIFhTQkMtT3JpZ2luYWwtIgorIk1haW50YWluZXIgZmllbGQiCittc2dzdHIgIiIKKyLQndC+0LzQtdGAIFZlcnNpb24g0L/RgNC10LTQv9C+0LvQsNCz0LDQtdGCINC40LfQvNC10L3QtdC90LjRjyBVYnVudHUsINC90L4g0L3QtdGCINC/0L7Qu9GPIFhTQkMtT3JpZ2luYWwtIgorIk1haW50YWluZXIiCisKKyM6IHNjcmlwdHMvRHBrZy9WZW5kb3IvVWJ1bnR1LnBtOjEyMworbXNnaWQgIidoYXJkZW5pbmcnIGZsYWcgZm91bmQgYnV0ICdoYXJkZW5pbmctd3JhcHBlcicgbm90IGluc3RhbGxlZCIKK21zZ3N0ciAi0L3QsNC50LTQtdC9INGE0LvQsNCzIMKraGFyZGVuaW5nwrssINC90L4gwqtoYXJkZW5pbmctd3JhcHBlcsK7INC90LUg0YPRgdGC0LDQvdC+0LLQu9C10L0iCisKKyM6IHNjcmlwdHMvRHBrZy9WZW5kb3IvVWJ1bnR1LnBtOjE0MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJvdmVycmlkaW5nICVzIGluIGVudmlyb25tZW50OiAlcyIKK21zZ3N0ciAi0LIg0L7QutGA0YPQttC10L3QuNC4INC30LDQvNC10L3Rj9C10YLRgdGPICVzOiAlcyIKKworIzogc2NyaXB0cy9EcGtnL1ZlcnNpb24ucG06MjA0IHNjcmlwdHMvRHBrZy9WZXJzaW9uLnBtOjIwNgorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgYSB2YWxpZCB2ZXJzaW9uIgorbXNnc3RyICIlcyDQvdC1INGP0LLQu9GP0LXRgtGB0Y8g0LTQvtC/0YPRgdGC0LjQvNC+0Lkg0LLQtdGA0YHQuNC10LkiCisKKyM6IHNjcmlwdHMvRHBrZy9WZXJzaW9uLnBtOjM3MQorbXNnaWQgInZlcnNpb24gbnVtYmVyIGNhbm5vdCBiZSBlbXB0eSIKK21zZ3N0ciAi0L3QvtC80LXRgCDQstC10YDRgdC40Lgg0L3QtSDQvNC+0LbQtdGCINCx0YvRgtGMINC/0YPRgdGC0YvQvCIKKworIzogc2NyaXB0cy9EcGtnL1ZlcnNpb24ucG06Mzc2CisjLCBmdXp6eQorI3wgbXNnaWQgInZlcnNpb24gbnVtYmVyIGNhbm5vdCBiZSBlbXB0eSIKK21zZ2lkICJ2ZXJzaW9uIG51bWJlciBkb2VzIG5vdCBzdGFydCB3aXRoIGRpZ2l0IgorbXNnc3RyICLQvdC+0LzQtdGAINCy0LXRgNGB0LjQuCDQvdC1INC80L7QttC10YIg0LHRi9GC0Ywg0L/Rg9GB0YLRi9C8IgorCisjOiBzY3JpcHRzL0Rwa2cvVmVyc2lvbi5wbTozODEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidmVyc2lvbiBudW1iZXIgY29udGFpbnMgaWxsZWdhbCBjaGFyYWN0ZXIgYCVzJyIKK21zZ3N0ciAi0L3QvtC80LXRgCDQstC10YDRgdC40Lgg0YHQvtC00LXRgNC20LjRgiDQvdC10LTQvtC/0YPRgdGC0LjQvNGL0Lkg0YHQuNC80LLQvtC7IMKrJXPCuyIKKworIzogc2NyaXB0cy9EcGtnL1ZlcnNpb24ucG06Mzg2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImVwb2NoIHBhcnQgb2YgdGhlIHZlcnNpb24gbnVtYmVyIGlzIG5vdCBhIG51bWJlcjogJyVzJyIKK21zZ3N0ciAi0YfQsNGB0YLRjCDRjdC/0L7RhdC4INCyINC90L7QvNC10YDQtSDQstC10YDRgdC40Lgg0L3QtSDRj9Cy0LvRj9C10YLRgdGPINGH0LjRgdC70L7QvDogwqslc8K7IgorCisjLCBmdXp6eQorI358IG1zZ2lkICIlczogZXhwb3J0ICVzIGZyb20gZHBrZy1idWlsZGZsYWdzIChvcmlnaW46ICVzKTogJXNcbiIKKyN+IG1zZ2lkICIlczogZHBrZy1idWlsZGZsYWdzIChvcmlnaW46ICVzKTogJXMgPSAlc1xuIgorI34gbXNnc3RyICIlczog0Y3QutGB0L/QvtGA0YIgJXMg0LjQtyBkcGtnLWJ1aWxkZmxhZ3MgKNC/0YDQvtC40YHRhdC+0LbQtNC10L3QuNC1OiAlcyk6ICVzXG4iCisKKyN+IG1zZ2lkICIxIHRvIDMgYXJncyBleHBlY3RlZFxuIgorI34gbXNnc3RyICLQvtC20LjQtNCw0LXRgtGB0Y8g0L7RgiAxINC00L4gMyDQsNGA0LPRg9C80LXQvdGC0L7QslxuIgorCisjfiBtc2dpZCAibmVlZCBhbiBhY3Rpb24gb3B0aW9uIgorI34gbXNnc3RyICLQvdC10L7QsdGF0L7QtNC40Lwg0L/QsNGA0LDQvNC10YLRgCDQtNC10LnRgdGC0LLQuNGPIgorCisjfiBtc2dpZCAiZW50cnkgb2YgQVBUJ3MgJXMgZmlsZSIKKyN+IG1zZ3N0ciAi0Y3Qu9C10LzQtdC90YIgQVBUINGE0LDQudC70LAgJXMiCisKKyN+IG1zZ2lkICJubyBvcmlnLnRhciBmaWxlIGZvdW5kIgorI34gbXNnc3RyICLRhNCw0LnQuyBvcmlnLnRhciDQvdC1INC90LDQudC00LXQvSIKKworI34gbXNnaWQgImNhbm5vdCByZW5hbWUgJXMgdG8gJXMiCisjfiBtc2dzdHIgItC90LUg0YPQtNCw0LvQvtGB0Ywg0L/QtdGA0LXQuNC80LXQvdC+0LLQsNGC0YwgJXMg0LIgJXMiCisKKyN+IG1zZ2lkICJleGVjICVzIgorI34gbXNnc3RyICLQstGL0LfQvtCyIGV4ZWMg0LTQu9GPICVzIgorCisjfiBtc2dpZCAiY2Fubm90IGV4ZWMgZHBrZyIKKyN+IG1zZ3N0ciAi0L3QtSDRg9C00LDQu9C+0YHRjCDQt9Cw0L/Rg9GB0YLQuNGC0YwgZHBrZyIKKworI34gbXNnaWQgImdpdCBjb25maWcgZXhpdGVkIG5vbnplcm8iCisjfiBtc2dzdHIgItC60L7QvNCw0L3QtNCwIGdpdCBjb25maWcg0LfQsNCy0LXRgNGI0LjQu9Cw0YHRjCDRgSDQvdC10L3Rg9C70LXQstGL0Lwg0LrQvtC00L7QvCDQstGL0YXQvtC00LAiCisKKyN+IG1zZ2lkICJleGVjdXRhYmxlIGJpdCBzZXQgb24gJXM7IGNsZWFyaW5nIgorI34gbXNnc3RyICLQvdCwICVzINGD0YHRgtCw0L3QvtCy0LvQtdC9INCx0LjRgiDQuNGB0L/QvtC70L3QtdC90LjRjzsg0L7Rh9C40YnQsNC10YLRgdGPIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIHJlbW92ZSBgJXMnIgorI34gbXNnc3RyICLQvdC10LLQvtC30LzQvtC20L3QviDRg9C00LDQu9C40YLRjCAlcyIKKworI34gbXNnaWQgIm1vZGlmeWluZyAuZ2l0L2NvbmZpZyB0byBjb21tZW50IG91dCBzb21lIHNldHRpbmdzIgorI34gbXNnc3RyICLQuNC30LzQtdC90Y/QtdGC0YHRjyAuZ2l0L2NvbmZpZyDQtNC70Y8g0LrQvtC80LzQtdC90YLQuNGA0L7QstCw0L3QuNGPINC90LXQutC+0YLQvtGA0YvRhSDQvdCw0YHRgtGA0L7QtdC6IgorCisjfiBtc2dpZCAidW5hYmxlIHRvIGFwcGVuZCB0byAlcyIKKyN+IG1zZ3N0ciAi0L3QtdCy0L7Qt9C80L7QttC90L4g0LTQvtCx0LDQstC40YLRjCDQuiAlcyIKKworI34gbXNnaWQgIlRoZSBmb2xsb3dpbmcgc2V0dGluZyhzKSB3ZXJlIGRpc2FibGVkIGJ5IGRwa2ctc291cmNlIgorI34gbXNnc3RyICLQodC70LXQtNGD0Y7RidC40LUg0L3QsNGB0YLRgNC+0LnQutC4INCx0YvQu9C4INCy0YvQutC70Y7Rh9C10L3RiyBkcGtnLXNvdXJjZSIKKworI34gbXNnaWQgIm5lZWQgLXggb3IgLWIiCisjfiBtc2dzdHIgItGC0YDQtdCx0YPQtdGC0YHRjyDQv9Cw0YDQsNC80LXRgtGAIC14INC40LvQuCAtYiIKKworI34gbXNnaWQgIm9iamR1bXAgb24gYCVzJyIKKyN+IG1zZ3N0ciAi0LLRi9C30L7QsiBvYmpkdW1wINC00LvRjyBgJXMnIgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3BvL3N0YW1wLXBvIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3BvL3N0YW1wLXBvCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjk3ODhmNzAKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvcG8vc3RhbXAtcG8KQEAgLTAsMCArMSBAQAordGltZXN0YW1wCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvcG8vc3YuZ21vIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3BvL3N2LmdtbwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40OWM5ZmE3Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3BvL3N2LmdtbwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvcG8vc3YucG8gYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvcG8vc3YucG8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTMyOGZhNAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy9wby9zdi5wbwpAQCAtMCwwICsxLDQwMjEgQEAKKyMgU3dlZGlzaCB0cmFuc2xhdGlvbiBvZiBkcGtnCisjIENvcHlyaWdodCDCqSAyMDA3LTIwMTEgU29mdHdhcmUgaW4gdGhlIFB1YmxpYyBJbnRlcmVzdAorIyBUaGlzIGZpbGUgaXMgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIHNhbWUgbGljZW5zZSBhcyB0aGUgZHBrZyBwYWNrYWdlLgorIyBQZXRlciBLcmVmdGluZyA8cGV0ZXJrQGRlYmlhbi5vcmc+LCAyMDA3LTIwMTEsIDIwMTEuCisjCittc2dpZCAiIgorbXNnc3RyICIiCisiUHJvamVjdC1JZC1WZXJzaW9uOiBkcGtnIDEuMTYuMVxuIgorIlJlcG9ydC1Nc2dpZC1CdWdzLVRvOiBkZWJpYW4tZHBrZ0BsaXN0cy5kZWJpYW4ub3JnXG4iCisiUE9ULUNyZWF0aW9uLURhdGU6IDIwMTEtMTAtMTQgMDc6MTErMDIwMFxuIgorIlBPLVJldmlzaW9uLURhdGU6IDIwMTEtMDktMTEgMDk6NTQrMDEwMFxuIgorIkxhc3QtVHJhbnNsYXRvcjogUGV0ZXIgS3JlZnRpbmcgPHBldGVya0BkZWJpYW4ub3JnPlxuIgorIkxhbmd1YWdlLVRlYW06IFN3ZWRpc2ggPGRlYmlhbi1sMTBuLXN3ZWRpc2hAbGlzdHMuZGViaWFuLm9yZz5cbiIKKyJMYW5ndWFnZTogc3ZcbiIKKyJNSU1FLVZlcnNpb246IDEuMFxuIgorIkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD11dGYtOFxuIgorIkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXRcbiIKKyJQbHVyYWwtRm9ybXM6IG5wbHVyYWxzPTI7IHBsdXJhbD0obiAhPSAxKTtcbiIKKworIzogc2NyaXB0cy9kcGtnLWFyY2hpdGVjdHVyZS5wbDozNiBzY3JpcHRzL2Rwa2ctYnVpbGRmbGFncy5wbDozMQorIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDozNyBzY3JpcHRzL2Rwa2ctY2hlY2tidWlsZGRlcHMucGw6MzYKKyM6IHNjcmlwdHMvZHBrZy1kaXN0YWRkZmlsZS5wbDozMyBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDo5NgorIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6NTYgc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGw6NDkKKyM6IHNjcmlwdHMvZHBrZy1tZXJnZWNoYW5nZWxvZ3MucGw6NTMgc2NyaXB0cy9kcGtnLW5hbWUucGw6NDYKKyM6IHNjcmlwdHMvZHBrZy1wYXJzZWNoYW5nZWxvZy5wbDozMSBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOjYwCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnNvdXJjZXMucGw6Nzggc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo1MzMKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6NDU1IHNjcmlwdHMvY2hhbmdlbG9nL2RlYmlhbi5wbDozNAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJEZWJpYW4gJXMgdmVyc2lvbiAlcy5cbiIKK21zZ3N0ciAiRGViaWFuICVzIHZlcnNpb24gJXMuXG4iCisKKyM6IHNjcmlwdHMvZHBrZy1hcmNoaXRlY3R1cmUucGw6MzgKK21zZ2lkICIiCisiXG4iCisiQ29weXJpZ2h0IChDKSAxOTk5LTIwMDEgTWFyY3VzIEJyaW5rbWFubiA8YnJpbmttZEBkZWJpYW4ub3JnPi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDQtMjAwNSBTY290dCBKYW1lcyBSZW1uYW50IDxzY290dEBuZXRzcGxpdC5jb20+LiIKK21zZ3N0ciAiIgorIlxuIgorIkNvcHlyaWdodCDCqSAxOTk5LTIwMDEgTWFyY3VzIEJyaW5rbWFubiA8YnJpbmttZEBkZWJpYW4ub3JnPi5cbiIKKyJDb3B5cmlnaHQgwqkgMjAwNC0yMDA1IFNjb3R0IEphbWVzIFJlbW5hbnQgPHNjb3R0QG5ldHNwbGl0LmNvbT4uIgorCisjOiBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLnBsOjQyIHNjcmlwdHMvZHBrZy1idWlsZGZsYWdzLnBsOjM2CisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjQ0IHNjcmlwdHMvZHBrZy1kaXN0YWRkZmlsZS5wbDozOAorIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6MTAyIHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjYyCisjOiBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbDo1NSBzY3JpcHRzL2Rwa2ctcGFyc2VjaGFuZ2Vsb2cucGw6MzcKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6NTQyIHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6NDYyCisjOiBzY3JpcHRzL2NoYW5nZWxvZy9kZWJpYW4ucGw6MzkKK21zZ2lkICIiCisiXG4iCisiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvclxuIgorImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LlxuIgorbXNnc3RyICIiCisiXG4iCisiRGV0dGEgcHJvZ3JhbSDDpHIgZnJpIHByb2dyYW12YXJhLiBTZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDJcbiIKKyJlbGxlciBzZW5hcmUgZsO2ciBrb3BpZXJpbmdzdmlsbGtvci4gRGV0IGZpbm5zIElOR0VOIGdhcmFudGkuXG4iCisKKyM6IHNjcmlwdHMvZHBrZy1hcmNoaXRlY3R1cmUucGw6NTAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSBbPGFjdGlvbj5dXG4iCisiXG4iCisiT3B0aW9uczpcbiIKKyIgIC1hPGRlYmlhbi1hcmNoPiAgICBzZXQgY3VycmVudCBEZWJpYW4gYXJjaGl0ZWN0dXJlLlxuIgorIiAgLXQ8Z251LXN5c3RlbT4gICAgIHNldCBjdXJyZW50IEdOVSBzeXN0ZW0gdHlwZS5cbiIKKyIgIC1MICAgICAgICAgICAgICAgICBsaXN0IHZhbGlkIGFyY2hpdGVjdHVyZXMuXG4iCisiICAtZiAgICAgICAgICAgICAgICAgZm9yY2UgZmxhZyAob3ZlcnJpZGUgdmFyaWFibGVzIHNldCBpbiBlbnZpcm9ubWVudCkuXG4iCisiXG4iCisiQWN0aW9uczpcbiIKKyIgIC1sICAgICAgICAgICAgICAgICBsaXN0IHZhcmlhYmxlcyAoZGVmYXVsdCkuXG4iCisiICAtZTxkZWJpYW4tYXJjaD4gICAgY29tcGFyZSB3aXRoIGN1cnJlbnQgRGViaWFuIGFyY2hpdGVjdHVyZS5cbiIKKyIgIC1pPGFyY2gtYWxpYXM+ICAgICBjaGVjayBpZiBjdXJyZW50IERlYmlhbiBhcmNoaXRlY3R1cmUgaXMgPGFyY2gtYWxpYXM+LlxuIgorIiAgLXE8dmFyaWFibGU+ICAgICAgIHByaW50cyBvbmx5IHRoZSB2YWx1ZSBvZiA8dmFyaWFibGU+LlxuIgorIiAgLXMgICAgICAgICAgICAgICAgIHByaW50IGNvbW1hbmQgdG8gc2V0IGVudmlyb25tZW50IHZhcmlhYmxlcy5cbiIKKyIgIC11ICAgICAgICAgICAgICAgICBwcmludCBjb21tYW5kIHRvIHVuc2V0IGVudmlyb25tZW50IHZhcmlhYmxlcy5cbiIKKyIgIC1jIDxjb21tYW5kPiAgICAgICBzZXQgZW52aXJvbm1lbnQgYW5kIHJ1biB0aGUgY29tbWFuZCBpbiBpdC5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCittc2dzdHIgIiIKKyJBbnbDpG5kbmluZzogJXMgWzxmbGFnZ2E+IC4uLl0gWzzDpXRnw6RyZD5dXG4iCisiXG4iCisiRmxhZ2dvcjpcbiIKKyIgIC1hPGRlYmlhbi1hcms+ICAgICB2w6RsaiBha3R1ZWxsIERlYmlhbmFya2l0ZWt0dXIuXG4iCisiICAtdDxnbnUtc3lzdGVtPiAgICAgdsOkbGogYWt0dWVsbCBHTlUtc3lzdGVtdHlwLlxuIgorIiAgLUwgICAgICAgICAgICAgICAgIHZpc2EgZ2lsdGlnYSBhcmtpdGVrdHVyZXIuXG4iCisiICAtZiAgICAgICAgICAgICAgICAgdHZpbmdhbmRlIGZsYWdnYSAow7Z2ZXJzdHlyIHZhcmlhYmxlciBzYXR0YSBpIG1pbGrDtm4pLlxuIgorIlxuIgorIsOFdGfDpHJkZXI6XG4iCisiICAtbCAgICAgICAgICAgICAgICAgbGlzdGEgdmFyaWFibGVyIChzdGFuZGFyZGZ1bmt0aW9uKS5cbiIKKyIgIC1lPGRlYmlhbi1hcms+ICAgICBqw6RtZsO2ciBtZWQgbnV2YXJhbmRlIERlYmlhbmFya2l0ZWt0dXIuXG4iCisiICAtaTxhcmstYWxpYXM+ICAgICAga29udHJvbGxlcmEgb20gbnV2YXJhbmRlIERlYmlhbmFya2l0ZWt0dXIgw6RyIDxhcmstIgorImFsaWFzPi5cbiIKKyIgIC1xPHZhcmlhYmVsPiAgICAgICBza3JpdmVyIGJhcmEgdXQgdsOkcmRldCBww6UgPHZhcmlhYmVsPi5cbiIKKyIgIC1zICAgICAgICAgICAgICAgICBza3JpdiBrb21tYW5kb24gZsO2ciBhdHQgc8OkdHRhIG1pbGrDtnZhcmlhYmxlci5cbiIKKyIgIC11ICAgICAgICAgICAgICAgICBza3JpdiBrb21tYW5kb24gZsO2ciBhdHQgdGEgYm9ydCB2w6RyZGUgZnLDpW4gIgorIm1pbGrDtnZhcmlhYmxlci5cbiIKKyIgIC1jIDxrb21tYW5kbz4gICAgICBzdMOkbGwgaW4gbWlsasO2IG9jaCBrw7ZyIGtvbW1hbmRvdCBpIGRlbi5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICB2aXNhIGRldHRhIGhqw6RscG1lZGRlbGFuZGUuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgdmlzYSB2ZXJzaW9uc251bW1lci5cbiIKKworIzogc2NyaXB0cy9kcGtnLWFyY2hpdGVjdHVyZS5wbDoxMjAgc2NyaXB0cy9kcGtnLWJ1aWxkZmxhZ3MucGw6OTEKKyM6IHNjcmlwdHMvZHBrZy1kaXN0YWRkZmlsZS5wbDo2OCBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDoxOTQKKyM6IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjEzMyBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbDoxNDEKKyM6IHNjcmlwdHMvZHBrZy1wYXJzZWNoYW5nZWxvZy5wbDoxMTMgc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDoxMTkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gYCVzJyIKK21zZ3N0ciAib2vDpG5kIGZsYWdnYSBcIiVzXCIiCisKKyM6IHNjcmlwdHMvZHBrZy1hcmNoaXRlY3R1cmUucGw6MTQ0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVua25vd24gRGViaWFuIGFyY2hpdGVjdHVyZSAlcywgeW91IG11c3Qgc3BlY2lmeSBHTlUgc3lzdGVtIHR5cGUsIHRvbyIKK21zZ3N0ciAib2vDpG5kIERlYmlhbmFya2l0ZWt0dXIgJXMsIGR1IG3DpXN0ZSBvY2tzw6UgYW5nZSBlbiBHTlUtc3lzdGVtdHlwIgorCisjOiBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLnBsOjE1MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmtub3duIEdOVSBzeXN0ZW0gdHlwZSAlcywgeW91IG11c3Qgc3BlY2lmeSBEZWJpYW4gYXJjaGl0ZWN0dXJlLCB0b28iCittc2dzdHIgIm9rw6RuZCBHTlUtc3lzdGVtdHlwICVzLCBkdSBtw6VzdGUgb2Nrc8OlIGFuZ2UgZW4gRGViaWFuYXJraXRla3R1ciIKKworIzogc2NyaXB0cy9kcGtnLWFyY2hpdGVjdHVyZS5wbDoxNTgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5rbm93biBkZWZhdWx0IEdOVSBzeXN0ZW0gdHlwZSBmb3IgRGViaWFuIGFyY2hpdGVjdHVyZSAlcyIKK21zZ3N0ciAib2vDpG5kIGbDtnJ2YWxkIEdOVS1zeXN0ZW10eXAgZsO2ciBEZWJpYW5hcmtpdGVrdHVyICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLnBsOjE2MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiRGVmYXVsdCBHTlUgc3lzdGVtIHR5cGUgJXMgZm9yIERlYmlhbiBhcmNoICVzIGRvZXMgbm90IG1hdGNoIHNwZWNpZmllZCBHTlUgIgorInN5c3RlbSB0eXBlICVzIgorbXNnc3RyICIiCisiRsO2cnZhbGQgR05VLXN5c3RlbXR5cCAlcyBmw7ZyIERlYmlhbmFya2l0ZWt0dXJlbiAlcyBzdMOkbW1lciBpbnRlIG1lZCBkZW4gIgorImFuZ2l2bmEgR05VLXN5c3RlbXR5cGVuICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLnBsOjE4MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJTcGVjaWZpZWQgR05VIHN5c3RlbSB0eXBlICVzIGRvZXMgbm90IG1hdGNoIGdjYyBzeXN0ZW0gdHlwZSAlcy4iCittc2dzdHIgIkFuZ2l2ZW4gR05VLXN5c3RlbXR5cCAlcyBzdMOkbW1lciBpbnRlIG1lZCBnY2Mtc3lzdGVtdHlwZW4gJXMuIgorCisjOiBzY3JpcHRzL2Rwa2ctYXJjaGl0ZWN0dXJlLnBsOjIyNQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgYSBzdXBwb3J0ZWQgdmFyaWFibGUgbmFtZSIKK21zZ3N0ciAiJXMgw6RyIGludGUgZXR0IHZhcmlhYmVsbmFtbiBzb20gc3TDtmRzIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRmbGFncy5wbDozMworbXNnaWQgIiIKKyJcbiIKKyJDb3B5cmlnaHQgKEMpIDIwMTAtMjAxMSBSYXBoYWVsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4uIgorbXNnc3RyICIiCisiXG4iCisiQ29weXJpZ2h0IMKpIDIwMTAtMjAxMSBSYXBoYWVsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4uIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRmbGFncy5wbDo0NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8YWN0aW9uPl1cbiIKKyJcbiIKKyJBY3Rpb25zOlxuIgorIiAgLS1nZXQgPGZsYWc+ICAgICAgIG91dHB1dCB0aGUgcmVxdWVzdGVkIGZsYWcgdG8gc3Rkb3V0LlxuIgorIiAgLS1vcmlnaW4gPGZsYWc+ICAgIG91dHB1dCB0aGUgb3JpZ2luIG9mIHRoZSBmbGFnIHRvIHN0ZG91dDpcbiIKKyIgICAgICAgICAgICAgICAgICAgICB2YWx1ZSBpcyBvbmUgb2YgdmVuZG9yLCBzeXN0ZW0sIHVzZXIsIGVudi5cbiIKKyIgIC0tbGlzdCAgICAgICAgICAgICBvdXRwdXQgYSBsaXN0IG9mIHRoZSBmbGFncyBzdXBwb3J0ZWQgYnkgdGhlIGN1cnJlbnQgIgorInZlbmRvci5cbiIKKyIgIC0tZXhwb3J0PShzaHxtYWtlfGNvbmZpZ3VyZSlcbiIKKyIgICAgICAgICAgICAgICAgICAgICBvdXRwdXQgc29tZXRoaW5nIGNvbnZlbmllbnQgdG8gaW1wb3J0IHRoZVxuIgorIiAgICAgICAgICAgICAgICAgICAgIGNvbXBpbGF0aW9uIGZsYWdzIGluIGEgc2hlbGwgc2NyaXB0LCBpbiBtYWtlLFxuIgorIiAgICAgICAgICAgICAgICAgICAgIG9yIG9uIGEgLi9jb25maWd1cmUgY29tbWFuZCBsaW5lLlxuIgorIiAgLS1kdW1wICAgICAgICAgICAgIG91dHB1dCBhbGwgY29tcGlsYXRpb24gZmxhZ3Mgd2l0aCB0aGVpciB2YWx1ZXNcbiIKKyIgIC0taGVscCAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCittc2dzdHIgIiIKKyJBbnbDpG5kbmluZzogJXMgWzzDpXRnw6RyZD5dXG4iCisiXG4iCisiw4V0Z8OkcmRlcjpcbiIKKyIgIC0tZ2V0IDxmbGFnZ2E+ICAgICBza3JpdiB1dCBiZWfDpHJkIGZsYWdnYSBww6Ugc3RhbmRhcmQgdXQuXG4iCisiICAtLW9yaWdpbiA8ZmxhZ2dhPiAgc2tyaXYgdXQgdXJzcHJ1bmcgdGlsbCBmbGFnZ2FuIHDDpSBzdGFuZGFyZCB1dDpcbiIKKyIgICAgICAgICAgICAgICAgICAgICB2w6RyZGV0IMOkciBldHQgYXYgdmVuZG9yLCBzeXN0ZW0sIHVzZXIsIGVudi5cbiIKKyIgIC0tbGlzdCAgICAgICAgICAgICBza3JpdiB1dCBsaXN0YSBtZWQgZmxhZ2dvciBzb20gc3TDtmRzIGF2IGFrdHVlbGwgIgorImxldmVyYW50w7ZyLlxuIgorIiAgLS1leHBvcnQ9KHNofG1ha2V8Y29uZmlndXJlKVxuIgorIiAgICAgICAgICAgICAgICAgICAgIHNrcml2IHV0IG7DpWdvdCBzb20ga2FuIGFudsOkbmRhcyBmw7ZyIGF0dCBpbXBvcnRlcmFcbiIKKyIgICAgICAgICAgICAgICAgICAgICBrb21waWxlcmluZ3NmbGFnZ29yIGkgZXR0IHNrYWxza3JpcHQsIGkgbWFrZSxcbiIKKyIgICAgICAgICAgICAgICAgICAgICBlbGxlciBww6UgZW4gLi9jb25maWd1cmUta29tbWFuZG9yYWRcbiIKKyIgIC0tZHVtcCAgICAgICAgICAgICBza3JpdiB1dCBhbGxhIGtvbXBpbGVyaW5nc2ZsYWdnb3Igb2NoIGRlcmFzIHbDpHJkZW4uXG4iCisiICAtLWhlbHAgICAgICAgICAgICAgdmlzYSBkZXR0YSBoasOkbHBtZWRkZWxhbmRlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgIHZpc2EgdmVyc2lvbnNudW1tZXIuXG4iCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZGZsYWdzLnBsOjY2IHNjcmlwdHMvZHBrZy1idWlsZGZsYWdzLnBsOjcyCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRmbGFncy5wbDo3NyBzY3JpcHRzL2Rwa2ctYnVpbGRmbGFncy5wbDo4MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ0d28gY29tbWFuZHMgc3BlY2lmaWVkOiAtLSVzIGFuZCAtLSVzIgorbXNnc3RyICJ0dsOlIGtvbW1hbmRvbiBhbmdhdnM6IC0tJXMgb2NoIC0tJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZGZsYWdzLnBsOjcwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIG5lZWRzIGEgcGFyYW1ldGVyIgorbXNnc3RyICIlcyBiZWjDtnZlciBlbiBwYXJhbWV0ZXIiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6MzkKK21zZ2lkICIiCisiXG4iCisiQ29weXJpZ2h0IChDKSAxOTk2IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMCBXaWNoZXJ0IEFra2VybWFuXG4iCisiQ29weXJpZ2h0IChDKSAyMDA3IEZyYW5rIExpY2h0ZW5oZWxkIgorbXNnc3RyICIiCisiXG4iCisiQ29weXJpZ2h0IMKpIDE5OTYgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IMKpIDIwMDAgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgwqkgMjAwNyBGcmFuayBMaWNodGVuaGVsZC4iCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6NTEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIlxuIgorIlVzYWdlOiAlcyBbPG9wdGlvbnM+IC4uLl1cbiIKKyJcbiIKKyJPcHRpb25zOlxuIgorIiAgLXI8Z2Fpbi1yb290LWNvbW1hbmQ+XG4iCisiICAgICAgICAgICAgICAgICBjb21tYW5kIHRvIGdhaW4gcm9vdCBwcml2aWxlZ2VzIChkZWZhdWx0IGlzIGZha2Vyb290KS5cbiIKKyIgIC1SPHJ1bGVzPiAgICAgIHJ1bGVzIGZpbGUgdG8gZXhlY3V0ZSAoZGVmYXVsdCBpcyBkZWJpYW4vcnVsZXMpLlxuIgorIiAgLXA8c2lnbi1jb21tYW5kPlxuIgorIiAgLWQgICAgICAgICAgICAgZG8gbm90IGNoZWNrIGJ1aWxkIGRlcGVuZGVuY2llcyBhbmQgY29uZmxpY3RzLlxuIgorIiAgLUQgICAgICAgICAgICAgY2hlY2sgYnVpbGQgZGVwZW5kZW5jaWVzIGFuZCBjb25mbGljdHMuXG4iCisiICAtVDx0YXJnZXQ+ICAgICBjYWxsIGRlYmlhbi9ydWxlcyA8dGFyZ2V0PiB3aXRoIHRoZSBwcm9wZXIgZW52aXJvbm1lbnRcbiIKKyIgIC0tYXMtcm9vdCAgICAgIGVuc3VyZSAtVCBjYWxscyB0aGUgdGFyZ2V0IHdpdGggcm9vdCByaWdodHNcbiIKKyIgIC1qWzxudW1iZXI+XSAgIHNwZWNpZnkgam9icyB0byBydW4gc2ltdWx0YW5lb3VzbHkgfSBwYXNzZWQgdG8gZGViaWFuLyIKKyJydWxlc1xuIgorIiAgLWs8a2V5aWQ+ICAgICAgdGhlIGtleSB0byB1c2UgZm9yIHNpZ25pbmcuXG4iCisiICAtc2dwZyAgICAgICAgICB0aGUgc2lnbi1jb21tYW5kIGlzIGNhbGxlZCBsaWtlIEdQRy5cbiIKKyIgIC1zcGdwICAgICAgICAgIHRoZSBzaWduLWNvbW1hbmQgaXMgY2FsbGVkIGxpa2UgUEdQLlxuIgorIiAgLXVzICAgICAgICAgICAgdW5zaWduZWQgc291cmNlLlxuIgorIiAgLXVjICAgICAgICAgICAgdW5zaWduZWQgY2hhbmdlcy5cbiIKKyIgIC1hPGFyY2g+ICAgICAgIERlYmlhbiBhcmNoaXRlY3R1cmUgd2UgYnVpbGQgZm9yIChpbXBsaWVzIC1kKS5cbiIKKyIgIC1iICAgICAgICAgICAgIGJpbmFyeS1vbmx5LCBkbyBub3QgYnVpbGQgc291cmNlLiAgIH0gYWxzbyBwYXNzZWQgdG9cbiIKKyIgIC1CICAgICAgICAgICAgIGJpbmFyeS1vbmx5LCBubyBhcmNoLWluZGVwIGZpbGVzLiAgIH0gZHBrZy1nZW5jaGFuZ2VzXG4iCisiICAtQSAgICAgICAgICAgICBiaW5hcnktb25seSwgb25seSBhcmNoLWluZGVwIGZpbGVzLiB9XG4iCisiICAtUyAgICAgICAgICAgICBzb3VyY2Ugb25seSwgbm8gYmluYXJ5IGZpbGVzLiAgICAgfVxuIgorIiAgLUYgICAgICAgICAgICAgbm9ybWFsIGZ1bGwgYnVpbGQgKGJpbmFyaWVzIGFuZCBzb3VyY2VzKS5cbiIKKyIgIC10PHN5c3RlbT4gICAgIHNldCBHTlUgc3lzdGVtIHR5cGUuICAgICAgICAgICB9IHBhc3NlZCB0byBkcGtnLSIKKyJhcmNoaXRlY3R1cmVcbiIKKyIgIC12PHZlcnNpb24+ICAgIGNoYW5nZXMgc2luY2UgdmVyc2lvbiA8dmVyc2lvbj4uICAgICAgfVxuIgorIiAgLW08bWFpbnQ+ICAgICAgbWFpbnRhaW5lciBmb3IgcGFja2FnZSBpcyA8bWFpbnQ+LiAgICB9XG4iCisiICAtZTxtYWludD4gICAgICBtYWludGFpbmVyIGZvciByZWxlYXNlIGlzIDxtYWludD4uICAgIH0gb25seSBwYXNzZWRcbiIKKyIgIC1DPGRlc2NmaWxlPiAgIGNoYW5nZXMgYXJlIGRlc2NyaWJlZCBpbiA8ZGVzY2ZpbGU+LiAgfSB0byBkcGtnLWdlbmNoYW5nZXNcbiIKKyIgIC1zaSAoZGVmYXVsdCkgIHNyYyBpbmNsdWRlcyBvcmlnIGlmIG5ldyB1cHN0cmVhbS4gICAgfVxuIgorIiAgLXNhICAgICAgICAgICAgdXBsb2FkZWQgc3JjIGFsd2F5cyBpbmNsdWRlcyBvcmlnLiAgICB9XG4iCisiICAtc2QgICAgICAgICAgICB1cGxvYWRlZCBzcmMgaXMgZGlmZiBhbmQgLmRzYyBvbmx5LiAgIH1cbiIKKyIgIC1zbiAgICAgICAgICAgIGZvcmNlIERlYmlhbiBuYXRpdmUgc291cmNlIGZvcm1hdC4gICAgICB9XG4iCisiICAtc1tzQWt1cktVUl0gICBzZWUgZHBrZy1zb3VyY2UgZm9yIGV4cGxhbmF0aW9uLiAgICAgICAgfSBvbmx5IHBhc3NlZFxuIgorIiAgLXo8bGV2ZWw+ICAgICAgY29tcHJlc3Npb24gbGV2ZWwgb2Ygc291cmNlICAgICAgICAgICAgIH0gdG8gZHBrZy1zb3VyY2VcbiIKKyIgIC1aPGNvbXByZXNzb3I+IGNvbXByZXNzaW9uIHRvIHVzZSBmb3Igc291cmNlICAgICAgICAgICB9XG4iCisiICAtbmMgICAgICAgICAgICBkbyBub3QgY2xlYW4gc291cmNlIHRyZWUgKGltcGxpZXMgLWIpLlxuIgorIiAgLXRjICAgICAgICAgICAgY2xlYW4gc291cmNlIHRyZWUgd2hlbiBmaW5pc2hlZC5cbiIKKyIgIC1hcCAgICAgICAgICAgIGFkZCBwYXVzZSBiZWZvcmUgc3RhcnRpbmcgc2lnbmF0dXJlIHByb2Nlc3MuXG4iCisiICAtaVs8cmVnZXg+XSAgICBpZ25vcmUgZGlmZnMgb2YgZmlsZXMgbWF0Y2hpbmcgcmVnZXguICAgIH0gb25seSBwYXNzZWRcbiIKKyIgIC1JWzxwYXR0ZXJuPl0gIGZpbHRlciBvdXQgZmlsZXMgd2hlbiBidWlsZGluZyB0YXJiYWxscy4gfSB0byBkcGtnLXNvdXJjZVxuIgorIiAgLS1zb3VyY2Utb3B0aW9uPTxvcHQ+XG4iCisiXHRcdCBwYXNzIG9wdGlvbiA8b3B0PiB0byBkcGtnLXNvdXJjZVxuIgorIiAgLS1jaGFuZ2VzLW9wdGlvbj08b3B0PlxuIgorIlx0XHQgcGFzcyBvcHRpb24gPG9wdD4gdG8gZHBrZy1nZW5jaGFuZ2VzXG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+XG4iCisiICAgICAgICAgICAgICAgICBjaGFuZ2UgdGhlIGFkbWluaXN0cmF0aXZlIGRpcmVjdG9yeS5cbiIKKyIgIC1oLCAtLWhlbHAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAgICAgLS12ZXJzaW9uICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorbXNnc3RyICIiCisiXG4iCisiQW52w6RuZG5pbmc6ICVzIFs8ZmxhZ2dvcj4gLi4uXVxuIgorIlxuIgorIkZsYWdnb3I6XG4iCisiICAtcjxmw6Utcm9vdC1rb21tYW5kbz5cbiIKKyIgICAgICAgICAgICAgICAgIGtvbW1hbmRvIGbDtnIgYXR0IGbDpSByb290LWJlaMO2cmlnaGV0IChzdGFuZGFyZCDDpHIgIgorImZha2Vyb290KS5cbiIKKyIgIC1SPHJlZ2xlcj4gICAgIHJlZ2VsZmlsIGF0dCBleGVrdmVyYSAoc3RhbmRhcmQgw6RyIGRlYmlhbi9ydWxlcykuXG4iCisiICAtcDxzaWduZXJpbmdza29tbWFuZG8+XG4iCisiICAtZCAgICAgICAgICAgICBrb250cm9sbGVyYSBpbnRlIGJ5Z2diZXJvZW5kZW4gb2NoIC1rb25mbGlrdGVyLlxuIgorIiAgLUQgICAgICAgICAgICAga29udHJvbGxlcmEgYnlnZ2Jlcm9lbmRlbiBvY2ggLWtvbmZsaWt0ZXIuXG4iCisiICAtVDxtw6VsPiAgICAgICAgYW5yb3BhIGRlYmlhbi9ydWxlcyA8bcOlbD4gbWVkIGtvcnJla3QgbWlsasO2LlxuIgorIiAgLS1hcy1yb290ICAgICAgc2VyIHRpbGwgYXR0IC1UIGFucm9wYXIgbcOlbGV0IG1lZCByb290YmVow7ZyaWdoZXQuXG4iCisiICAtals8YW50YWw+XSAgICBhbmdlIGFudGFsIGpvYmIgYXR0IGvDtnJhIHNhbXRpZGlndCB9IHPDpG5kcyB0aWxsIGRlYmlhbi8iCisicnVsZXNcbiIKKyIgIC1rPG55Y2tlbGlkPiAgIG55Y2tlbG4gc29tIHNrYWxsIGFudsOkbmRhcyB2aWQgc2lnbmVyaW5nLlxuIgorIiAgLXNncGcgICAgICAgICAgc2lnbmVyaW5nc2tvbW1hbmRvdCBhbnJvcGFzIHNvbSBHUEcuXG4iCisiICAtc3BncCAgICAgICAgICBzaWduZXJpbmdza29tbWFuZG90IGFucm9wYXMgc29tIFBHUC5cbiIKKyIgIC11cyAgICAgICAgICAgIG9zaWduZXJhZCBrw6RsbGtvZC5cbiIKKyIgIC11YyAgICAgICAgICAgIG9zaWduZXJhZCBjaGFuZ2VzLWZpbC5cbiIKKyIgIC1hPGFyY2g+ICAgICAgIERlYmlhbmFya2l0ZWt0dXIgdmkgYnlnZ2VyIGbDtnIgKGltcGxpY2VyYXIgLWQpLlxuIgorIiAgLWIgICAgICAgICAgICAgZW5kYXN0IGJpbsOkciwgYnlnZ2VyIGludGUga8OkbGxrb2QuICAgIH1cbiIKKyIgIC1CICAgICAgICAgICAgIGVuZGFzdCBiaW7DpHIsIGluZ2EgYXJrLW9iZXIuIGZpbGVyLiAgIH0gc8OkbmRzIMOkdmVuIHRpbGxcbiIKKyIgIC1BICAgICAgICAgICAgIGVuZGFzdCBiaW7DpHIsIGVuZGFzdCBhcmstb2Jlci4gZmlsZXIuIH0gZHBrZy1nZW5jaGFuZ2VzXG4iCisiICAtUyAgICAgICAgICAgICBlbmRhc3Qga8OkbGxrb2QsIGluZ2EgYmluw6RyZmlsZXIgICAgICAgfVxuIgorIiAgLUYgICAgICAgICAgICAgbm9ybWFsdCBrb21wbGV0dCBieWdnZSAoYmluw6RyZXIgb2NoIGvDpGxsa29kKS5cbiIKKyIgIC10PHN5c3RlbT4gICAgIHbDpGxqIEdOVS1zeXN0ZW10eXAuICAgICAgICAgICB9IHPDpG5kcyB0aWxsIGRwa2ctIgorImFyY2hpdGVjdHVyZVxuIgorIiAgLXY8dmVyc2lvbj4gICAgw6RuZHJpbmdhciBzZWRhbiB2ZXJzaW9uIDx2ZXJzaW9uPi4gICAgIH1cbiIKKyIgIC1tPGFuc3ZhcmlnPiAgIGFuc3ZhcmlnIGbDtnIgcGFrZXRldCDDpHIgPGFuc3ZhcmlnPi4gICB9XG4iCisiICAtZTxhbnN2YXJpZz4gICBhbnN2YXJpZyBmw7ZyIHV0Z2l2bmluZ2VuIMOkciA8bWFpbnQ+LiAgfSBzw6RuZHMgYmFyYVxuIgorIiAgLUM8w6RuZHJmaWw+ICAgIMOkbmRyaW5nYXIgYmVza3JpdnMgaSA8w6RuZHJmaWw+LiAgICAgICB9IHRpbGwgZHBrZy0iCisiZ2VuY2hhbmdlc1xuIgorIiAgLXNpIChzdGFuZGFyZCkga8OkbGxrLiBpbm5laMOlbGxlciBvcmlnLiBmw7ZyIG55IHVwcHN0ci59XG4iCisiICAtc2EgICAgICAgICAgICBpbnPDpG5kIGvDpGxsa29kIGlubmVow6VsbGVyIGFsbHRpZCBvcmlnLn1cbiIKKyIgIC1zZCAgICAgICAgICAgIGluc8OkbmQga8OkbGxrb2Qgw6RyIGVuZGFzdCBkaWZmIG9jaCAuZHNjfVxuIgorIiAgLXNuICAgICAgICAgICAgdHZpbmdhIERlYmlhbmVnZXQga8OkbGxrb2RzZm9ybWF0LiAgICAgICB9XG4iCisiICAtc1tzQWt1cktVUl0gICBzZSBkcGtnLXNvdXJjZSBmw7ZyIGbDtnJrbGFyaW5nLiAgICAgICAgICB9IHPDpG5kcyBiYXJhXG4iCisiICAtejxuaXbDpT4gICAgICAga29tcHJpbWVyaW5nc25pdsOlIGbDtnIga8OkbGxrb2QuICAgICAgICAgIH0gdGlsbCBkcGtnLXNvdXJjZVxuIgorIiAgLVo8a29tcHJpbS4+ICAga29tcHJpbWVyaW5nIGF0dCBhbnbDpG5kYSBmw7ZyIGvDpGxsa29kLiAgIH1cbiIKKyIgIC1uYyAgICAgICAgICAgIHN0w6RkYSBpbnRlIGvDpGxsa29kc3Ryw6RkIChpbXBsaWNlcmFyIC1iKS5cbiIKKyIgIC10YyAgICAgICAgICAgIHN0w6RkYSBrw6RsbGtvZHN0csOkZCBuw6RyIGbDpHJkaWcuXG4iCisiICAtYXAgICAgICAgICAgICBsw6RnZyBpbiBwYXVzIGlubmFuIHNpZ25hdHVycHJvY2Vzc2VuIHN0YXJ0YXMuXG4iCisiICAtaVs8cmVnLnV0dHI+XSBpZ25vcmVyYXIgZGlmZiBww6UgZmlsZXIgc29tIG1vdHN2LiByZWcudXR0ci4gfSBzw6RuZHMgYmFyYVxuIgorIiAgLUk8bcO2bnN0ZXI+ICAgIGZpbHRyZXJhIHV0IGZpbGVyIG7DpHIgdGFyYm9sbCBieWdncy4gICAgICAgICB9IHQuIGRwa2ctIgorInNvdXJjZVxuIgorIiAgLS1zb3VyY2Utb3B0aW9uPTxmbGFnZ2E+XG4iCisiXHRcdCBzw6RuZCBmbGFnZ2FuIDxmbGFnZ2E+IHRpbGwgZHBrZy1zb3VyY2VcbiIKKyIgIC0tY2hhbmdlcy1vcHRpb249PGZsYWdnYT5cbiIKKyJcdFx0IHPDpG5kIGZsYWdnYW4gPGZsYWdnYT4gdGlsbCBkcGtnLWdlbmNoYW5nZXNcbiIKKyIgIC0tYWRtaW5kaXI9PGthdGFsb2c+XG4iCisiICAgICAgICAgICAgICAgICB2w6RsaiBhZG1pbmlzdHJhdGl2IGthdGFsb2cuXG4iCisiICAtaCwgLS1oZWxwICAgICB2aXNhIGRldHRhIGhqw6RscG1lZGRlbGFuZGUuXG4iCisiICAgICAgLS12ZXJzaW9uICB2aXNhIHZlcnNpb25zbnVtbWVyLlxuIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjIwMCBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjIwNgorIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDoyMTIgc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDoyMTgKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6MjIzIHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjE0MworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6MTQ2IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjE1MAorIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6MTU0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCBjb21iaW5lICVzIGFuZCAlcyIKK21zZ3N0ciAia2FuIGludGUga29tYmluZXJhICVzIG9jaCAlcyIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDoyMzYgc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDoyMDIKK21zZ2lkICItRSBhbmQgLVcgYXJlIGRlcHJlY2F0ZWQsIHRoZXkgYXJlIHdpdGhvdXQgZWZmZWN0IgorbXNnc3RyICItRSBvY2ggLVcgcmVrb21tZW5kZXJhcyBlaiwgZGUgaGFyIGluZ2VuIGVmZmVrdCIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDoyNDAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5rbm93biBvcHRpb24gb3IgYXJndW1lbnQgJXMiCittc2dzdHIgIm9rw6RuZCBmbGFnZ2EgZWxsZXIgYXJndW1lbnQgJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6MjUwCittc2dpZCAidXNpbmcgYSBnYWluLXJvb3QtY29tbWFuZCB3aGlsZSBiZWluZyByb290IgorbXNnc3RyICJhbnbDpG5kZXIgZXR0IGdhaW4tcm9vdC1jb21tYW5kIGZhc3QgamFnIHJlZGFuIMOkciByb290IgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjI1NgorbXNnaWQgIiIKKyJmYWtlcm9vdCBub3QgZm91bmQsIGVpdGhlciBpbnN0YWxsIHRoZSBmYWtlcm9vdFxuIgorInBhY2thZ2UsIHNwZWNpZnkgYSBjb21tYW5kIHdpdGggdGhlIC1yIG9wdGlvbiwgb3IgcnVuIHRoaXMgYXMgcm9vdCIKK21zZ3N0ciAiIgorImZha2Vyb290IGhpdHRhZGVzIGludGUsIGR1IGthbiBpbnN0YWxsZXJhIHBha2V0ZXQgZmFrZXJvb3QsXG4iCisiYW5nZSBldHQga29tbWFuZG8gbWVkIGZsYWdnYW4gLXIsIGVsbGVyIGvDtnJhIHNvbSByb290IgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjI2MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJnYWluLXJvb3QtY29tbW1hbmQgJyVzJyBub3QgZm91bmQiCittc2dzdHIgImbDpS1yb290LWtvbW1hbmRvdCBcIiVzXCIgaGl0dGFkZXMgaW50ZSIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDoyNzkKK21zZ2lkICJ1bmtub3duIHNpZ24gY29tbWFuZCwgYXNzdW1pbmcgcGdwIHN0eWxlIGludGVyZmFjZSIKK21zZ3N0ciAib2vDpG50IHNpZ25lcmluZ3Nrb21tYW5kbywgYW50YXIgcGdwLWdyw6Ruc3NuaXR0c3R5cCIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDoyODIKK21zZ2lkICJQR1Agc3VwcG9ydCBpcyBkZXByZWNhdGVkIChzZWUgUkVBRE1FLmZlYXR1cmUtcmVtb3ZhbC1zY2hlZHVsZSkiCittc2dzdHIgIlBHUC1zdMO2ZGV0IHVuZGFuYmVzIChzZSBSRUFETUUuZmVhdHVyZS1yZW1vdmFsLXNjaGVkdWxlKSIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDozMDEKK21zZ2lkICJzb3VyY2UgcGFja2FnZSIKK21zZ3N0ciAia8OkbGxrb2RzcGFrZXQiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6MzAyCittc2dpZCAic291cmNlIHZlcnNpb24iCittc2dzdHIgImvDpGxsa29kc3ZlcnNpb24iCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6MzEyCittc2dpZCAic291cmNlIGNoYW5nZWQgYnkiCittc2dzdHIgImvDpGxsa29kIMOkbmRyYWQgYXYiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6MzMwCittc2dpZCAiaG9zdCBhcmNoaXRlY3R1cmUiCittc2dzdHIgInbDpHJkYXJraXRla3R1ciIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDozNDMKK21zZ2lkICJkZWJpYW4vcnVsZXMgaXMgbm90IGV4ZWN1dGFibGU6IGZpeGluZyB0aGF0LiIKK21zZ3N0ciAiZGViaWFuL3J1bGVzIMOkciBpbnRlIGV4ZWt2ZXJiYXI6IHLDpHR0YXIuIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjM2MgorbXNnaWQgIkJ1aWxkIGRlcGVuZGVuY2llcy9jb25mbGljdHMgdW5zYXRpc2ZpZWQ7IGFib3J0aW5nLiIKK21zZ3N0ciAiQnlnZ2Jlcm9lbmRlbi8ta29uZmxpa3RlciBlaiB1cHBmeWxsZGE7IGF2YnJ5dGVyLiIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDozNjMKK21zZ2lkICIoVXNlIC1kIGZsYWcgdG8gb3ZlcnJpZGUuKSIKK21zZ3N0ciAiKEFudsOkbmQgZmxhZ2dhbiAtZCBmw7ZyIGF0dCDDtnZlcnN0eXJhLikiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6MzY2Cittc2dpZCAiVGhpcyBpcyBjdXJyZW50bHkgYSBub24tZmF0YWwgd2FybmluZyB3aXRoIC1TLCBidXQiCittc2dzdHIgIkRldHRhIMOkciBmw7ZyIG7DpHJ2YXJhbmRlIGVuIGlja2Utw7ZkZXNkaWdlciB2YXJuaW5nIG1lZCAtUywgbWVuIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjM2NworbXNnaWQgIndpbGwgcHJvYmFibHkgYmVjb21lIGZhdGFsIGluIHRoZSBmdXR1cmUuIgorbXNnc3RyICJkZW4ga29tbWVyIHRyb2xpZ2VuIGF0dCBibGkgw7ZkZXNkaWdlciBpIGZyYW10aWRlbi4iCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6Mzg5Cittc2dpZCAiIgorIml0IGlzIGEgYmFkIGlkZWEgdG8gZ2VuZXJhdGUgYSBzb3VyY2UgcGFja2FnZSB3aXRob3V0IGNsZWFuaW5nIHVwIGZpcnN0LCBpdCAiCisibWlnaHQgY29udGFpbiB1bmRlc2lyZWQgZmlsZXMuIgorbXNnc3RyICIiCisiZGV0IMOkciBpbnRlIG7DpWdvbiBicmEgaWTDqSBhdHQgZ2VuZXJlcmEgZXR0IGvDpGxsa29kc3Bha2V0IHV0YW4gYXR0IGbDtnJzdCAiCisic3TDpGRhIHVwcCBkZXQsIGRldCBrYW4gaW5uZWjDpWxsYSBvw7Zuc2thZGUgZmlsZXIuIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjQwMgorbXNnaWQgIlByZXNzIHRoZSByZXR1cm4ga2V5IHRvIHN0YXJ0IHNpZ25pbmcgcHJvY2Vzc1xuIgorbXNnc3RyICJUcnljayBww6UgRW50ZXIgZsO2ciBhdHQgaW5sZWRhIHNpZ25lcmluZ3Nwcm9jZWR1cmVuXG4iCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6NDA5Cittc2dpZCAiRmFpbGVkIHRvIHNpZ24gLmRzYyBhbmQgLmNoYW5nZXMgZmlsZSIKK21zZ3N0ciAiTWlzc2x5Y2thZGVzIGF0dCBzaWduZXJhIC5kc2MtIG9jaCAuY2hhbmdlcy1maWxlcm5hIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjQyNCBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjQyOAorIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDo0NDEKK21zZ2lkICJ3cml0ZSBjaGFuZ2VzIGZpbGUiCittc2dzdHIgInNrcml2IMOkbmRyaW5nc2ZpbCIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDo0NDAKK21zZ2lkICJkcGtnLWdlbmNoYW5nZXMiCittc2dzdHIgImRwa2ctZ2VuY2hhbmdlcyIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDo0NDkKK21zZ2lkICJzb3VyY2Ugb25seSB1cGxvYWQ6IERlYmlhbi1uYXRpdmUgcGFja2FnZSIKK21zZ3N0ciAiaW5zw6RuZG5pbmcgbWVkIGVuZGFzdCBrw6RsbGtvZDogRGViaWFuZWdldCBwYWtldCIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDo0NTEKK21zZ2lkICJzb3VyY2Ugb25seSwgZGlmZi1vbmx5IHVwbG9hZCAob3JpZ2luYWwgc291cmNlIE5PVCBpbmNsdWRlZCkiCittc2dzdHIgIiIKKyJpbnPDpG5kbmluZyBlbmJhcnQgbWVkIGvDpGxsa29kLCBlbmJhcnQgbWVkIGRpZmYgKG9yaWdpbmFsa8OkbGxrb2QgdGFzIEVKIG1lZCkiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6NDUzCittc2dpZCAic291cmNlIG9ubHkgdXBsb2FkIChvcmlnaW5hbCBzb3VyY2UgaXMgaW5jbHVkZWQpIgorbXNnc3RyICJpbnPDpG5kbmluZyBlbmJhcnQgbWVkIGvDpGxsa29kIChvcmlnaW5hbGvDpGxsa29kIHRhcyBtZWQpIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjQ1NiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjQ2NAorbXNnaWQgImZ1bGwgdXBsb2FkIChvcmlnaW5hbCBzb3VyY2UgaXMgaW5jbHVkZWQpIgorbXNnc3RyICJrb21wbGV0dCBpbnPDpG5kbmluZyAob3JpZ2luYWxrw6RsbGtvZCB0YXMgbWVkKSIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDo0NTgKK21zZ2lkICJiaW5hcnkgb25seSB1cGxvYWQgKG5vIHNvdXJjZSBpbmNsdWRlZCkiCittc2dzdHIgImVuZGFzdCBiaW7DpHIgaW5zw6RuZG5pbmcgKGluZ2VuIGvDpGxsa29kIHRhcyBtZWQpIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjQ2MAorbXNnaWQgImZ1bGwgdXBsb2FkOyBEZWJpYW4tbmF0aXZlIHBhY2thZ2UgKGZ1bGwgc291cmNlIGlzIGluY2x1ZGVkKSIKK21zZ3N0ciAia29tcGxldHQgaW5zw6RuZG5pZzsgRGViaWFuZWdldCBwYWtldCAoa29tcGxldHQga8OkbGxrb2QgdGFzIG1lZCkiCisKKyM6IHNjcmlwdHMvZHBrZy1idWlsZHBhY2thZ2UucGw6NDYyCittc2dpZCAiYmluYXJ5IGFuZCBkaWZmIHVwbG9hZCAob3JpZ2luYWwgc291cmNlIE5PVCBpbmNsdWRlZCkiCittc2dzdHIgImJpbsOkci0gb2NoIGRpZmZpbnPDpG5kbmluZyAob3JpZ2luYWxrw6RsbGtvZCB0YXMgRUogbWVkKSIKKworIzogc2NyaXB0cy9kcGtnLWJ1aWxkcGFja2FnZS5wbDo0NjkKK21zZ2lkICJGYWlsZWQgdG8gc2lnbiAuY2hhbmdlcyBmaWxlIgorbXNnc3RyICJNaXNzbHlja2FkZXMgYXR0IHNpZ25lcmEgLmNoYW5nZXMtZmlsIgorCisjOiBzY3JpcHRzL2Rwa2ctYnVpbGRwYWNrYWdlLnBsOjQ4OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZGV0ZXJtaW5lICVzIgorbXNnc3RyICJrYW4gaW50ZSBiZXN0w6RtbWEgJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1jaGVja2J1aWxkZGVwcy5wbDo0MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJVc2FnZTogJXMgWzxvcHRpb24+Li4uXSBbPGNvbnRyb2wtZmlsZT5dIgorbXNnc3RyICJBbnbDpG5kbmluZzogJXMgWzxmbGFnZ2E+Li4uXSBbPGNvbnRyb2wtZmlsPl0iCisKKyM6IHNjcmlwdHMvZHBrZy1jaGVja2J1aWxkZGVwcy5wbDo0NAorbXNnaWQgIiIKKyJPcHRpb25zOlxuIgorIiAgLUIgICAgICAgICAgICAgYmluYXJ5LW9ubHksIGlnbm9yZSAtSW5kZXAuXG4iCisiICAtZCBidWlsZC1kZXBzICB1c2UgZ2l2ZW4gc3RyaW5nIGFzIGJ1aWxkIGRlcGVuZGVuY2llcyBpbnN0ZWFkIG9mXG4iCisiICAgICAgICAgICAgICAgICByZXRyaWV2aW5nIHRoZW0gZnJvbSBjb250cm9sIGZpbGVcbiIKKyIgIC1jIGJ1aWxkLWNvbmYgIHVzZSBnaXZlbiBzdHJpbmcgZm9yIGJ1aWxkIGNvbmZsaWN0cyBpbnN0ZWFkIG9mXG4iCisiICAgICAgICAgICAgICAgICByZXRyaWV2aW5nIHRoZW0gZnJvbSBjb250cm9sIGZpbGVcbiIKKyIgIC0tYWRtaW5kaXI9PGRpcmVjdG9yeT5cbiIKKyIgICAgICAgICAgICAgICAgIGNoYW5nZSB0aGUgYWRtaW5pc3RyYXRpdmUgZGlyZWN0b3J5LlxuIgorIiAgLWgsIC0taGVscCAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgICAgICAtLXZlcnNpb24gIHNob3cgdGhlIHZlcnNpb24uIgorbXNnc3RyICIiCisiRmxhZ2dvcjpcbiIKKyIgIC1CICAgICAgICAgICAgIGVuZGFzdCBiaW7DpHJlciwgaWdub3JlcmEgLUluZGVwLlxuIgorIiAgLWQgYnlnZ2Jlci4gICAgYW52w6RuZCBkZW4gZ2l2bmEgc3Ryw6RuZ2VuIHNvbSBieWdnYmVyb2VuZGVuIGlzdMOkbGxldFxuIgorIiAgICAgICAgICAgICAgICAgZsO2ciBhdHQgaMOkbXRhIGRlbSBmcsOlbiBzdHlyZmlsZW5cbiIKKyIgIC1jIGJ5Z2drb25mbC4gIGFudsOkbmQgZGVuIGdpdm5hIHN0csOkbmdlbiBzb20gYnlnZ2tvbmZsaWt0ZXIgaXN0w6RsbGV0XG4iCisiICAgICAgICAgICAgICAgICBmw7ZyIGF0dCBow6RtdGEgZGVtIGZyw6VuIHN0eXJmaWxlblxuIgorIiAgLS1hZG1pbmRpcj08a2F0YWxvZz5cbiIKKyIgICAgICAgICAgICAgICAgIHbDpGxqIGFkbWluaXN0cmF0aXYga2F0YWxvZy5cbiIKKyIgIC1oLCAtLWhlbHAgICAgIHZpc2EgZGV0dGEgaGrDpGxwbWVkZGVsYW5kZS5cbiIKKyIgICAgICAtLXZlcmlzb24gIHZpc2EgdmVyaXNvbmVuLiIKKworIzogc2NyaXB0cy9kcGtnLWNoZWNrYnVpbGRkZXBzLnBsOjU1Cittc2dpZCAiIgorIjxjb250cm9sLWZpbGU+IGlzIHRoZSBjb250cm9sIGZpbGUgdG8gcHJvY2VzcyAoZGVmYXVsdDogZGViaWFuL2NvbnRyb2wpLiIKK21zZ3N0ciAiIgorIjxjb250cm9sLWZpbD4gw6RyIHN0eXJmaWxlbiBzb20gc2thbGwgaGFudGVyYXMgKHN0YW5kYXJkOiBkZWJpYW4vY29udHJvbCkuIgorCisjOiBzY3JpcHRzL2Rwa2ctY2hlY2tidWlsZGRlcHMucGw6MTA1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzOiBVbm1ldCBidWlsZCBkZXBlbmRlbmNpZXM6ICIKK21zZ3N0ciAiJXM6IEVqIHVwcGZ5bGxkYSBieWdnYmVyb2VuZGVuOiAiCisKKyM6IHNjcmlwdHMvZHBrZy1jaGVja2J1aWxkZGVwcy5wbDoxMDkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXM6IEJ1aWxkIGNvbmZsaWN0czogIgorbXNnc3RyICIlczogQnlnZ2tvbmZsaWt0ZXI6ICIKKworIzogc2NyaXB0cy9kcGtnLWNoZWNrYnVpbGRkZXBzLnBsOjE4NCBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjI1MworIywgcGVybC1mb3JtYXQKK21zZ2lkICJlcnJvciBvY2N1cnJlZCB3aGlsZSBwYXJzaW5nICVzIgorbXNnc3RyICJmZWwgdmlkIHRvbGtuaW5nIGF2ICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctZGlzdGFkZGZpbGUucGw6MzUKK21zZ2lkICIiCisiXG4iCisiQ29weXJpZ2h0IChDKSAxOTk2IElhbiBKYWNrc29uLiIKK21zZ3N0ciAiIgorIlxuIgorIkNvcHlyaWdodCDCqSAxOTk2IElhbiBKYWNrc29uLiIKKworIzogc2NyaXB0cy9kcGtnLWRpc3RhZGRmaWxlLnBsOjQ2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJVc2FnZTogJXMgWzxvcHRpb24+Li4uXSA8ZmlsZW5hbWU+IDxzZWN0aW9uPiA8cHJpb3JpdHk+XG4iCisiXG4iCisiT3B0aW9uczpcbiIKKyIgIC1mPGZpbGVzbGlzdGZpbGU+ICAgICAgICB3cml0ZSBmaWxlcyBoZXJlIGluc3RlYWQgb2YgZGViaWFuL2ZpbGVzLlxuIgorIiAgLWgsIC0taGVscCAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAgICAgLS12ZXJzaW9uICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIgorIkFudsOkbmRuaW5nOiAlcyBbPGZsYWdnYT4uLi5dIDxmaWxuYW1uPiA8c2VrdGlvbj4gPHByaW9yaXRldD5cbiIKKyJcbiIKKyJGbGFnZ29yOlxuIgorIiAgLWY8ZmlsbGlzdGZpbD4gICAgICAgICAgIHNrcml2ZXIgZmlsZXIgaMOkciBpc3TDpGxsZXQgZsO2ciBkZWJpYW4vZmlsZXMuXG4iCisiICAtaCwgLS1oZWxwICAgICAgICAgICAgICAgdmlzYSBkZXR0YSBoasOkbHBtZWRkZWxhbmRlLlxuIgorIiAgICAgIC0tdmVyc2lvbiAgICAgICAgICAgIHZpc2EgdmVyc2lvbnNudW1tZXIuXG4iCisKKyM6IHNjcmlwdHMvZHBrZy1kaXN0YWRkZmlsZS5wbDo3MgorbXNnaWQgIm5lZWQgZXhhY3RseSBhIGZpbGVuYW1lLCBzZWN0aW9uIGFuZCBwcmlvcml0eSIKK21zZ3N0ciAiYmVow7Z2ZXIgZXhha3QgZXR0IGZpbG5hbW4sIGVuIHNla3Rpb24gb2NoIGVuIHByaW9yaXRldCIKKworIzogc2NyaXB0cy9kcGtnLWRpc3RhZGRmaWxlLnBsOjc2Cittc2dpZCAiZmlsZW5hbWUsIHNlY3Rpb24gYW5kIHByaW9yaXR5IG1heSBjb250YWluIG5vIHdoaXRlc3BhY2UiCittc2dzdHIgImZpbG5hbW4sIHNla3Rpb24gb2NoIHByaW9yaXRldCBrYW4gaW50ZSBpbm5laMOlbGxhIGJsYW5rdGVja2VuIgorCisjOiBzY3JpcHRzL2Rwa2ctZGlzdGFkZGZpbGUucGw6Nzkgc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MzM0Cittc2dpZCAib3BlbiBuZXcgZmlsZXMgbGlzdCBmaWxlIgorbXNnc3RyICLDtnBwbmFyIG55IGZpbGxpc3RmaWwiCisKKyM6IHNjcmlwdHMvZHBrZy1kaXN0YWRkZmlsZS5wbDo4NCBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDozNDUKK21zZ2lkICJjb3B5IG9sZCBlbnRyeSB0byBuZXcgZmlsZXMgbGlzdCBmaWxlIgorbXNnc3RyICJrb3BpZXJhIGdhbW1hbCBwb3N0IHRpbGwgbnkgZmlsbGlzdGZpbCIKKworIzogc2NyaXB0cy9kcGtnLWRpc3RhZGRmaWxlLnBsOjg3IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjM0OQorbXNnaWQgInJlYWQgb2xkIGZpbGVzIGxpc3QgZmlsZSIKK21zZ3N0ciAibMOkcyBnYW1tYWwgZmlsbGlzdGZpbCIKKworIzogc2NyaXB0cy9kcGtnLWRpc3RhZGRmaWxlLnBsOjkwIHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjM1OQorbXNnaWQgIndyaXRlIG5ldyBlbnRyeSB0byBuZXcgZmlsZXMgbGlzdCBmaWxlIgorbXNnc3RyICJza3JpdiBueSBwb3N0IGkgbnkgZmlsbGlzdGZpbCIKKworIzogc2NyaXB0cy9kcGtnLWRpc3RhZGRmaWxlLnBsOjkxIHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjM2MAorbXNnaWQgImNsb3NlIG5ldyBmaWxlcyBsaXN0IGZpbGUiCittc2dzdHIgInN0w6RuZyBueSBmaWxsaXN0ZmlsIgorCisjOiBzY3JpcHRzL2Rwa2ctZGlzdGFkZGZpbGUucGw6OTMgc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MzYxCittc2dpZCAiaW5zdGFsbCBuZXcgZmlsZXMgbGlzdCBmaWxlIgorbXNnc3RyICJpbnN0YWxsZXJhciBueSBmaWxsaXN0ZmlsIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDo5OAorbXNnaWQgIiIKKyJcbiIKKyJDb3B5cmlnaHQgKEMpIDE5OTYgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi4iCittc2dzdHIgIiIKKyJcbiIKKyJDb3B5cmlnaHQgwqkgMTk5NiBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgwqkgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4uIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDoxMTAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXVxuIgorIlxuIgorIk9wdGlvbnM6XG4iCisiICAtYiAgICAgICAgICAgICAgICAgICAgICAgYmluYXJ5LW9ubHkgYnVpbGQgLSBubyBzb3VyY2UgZmlsZXMuXG4iCisiICAtQiAgICAgICAgICAgICAgICAgICAgICAgYXJjaC1zcGVjaWZpYyAtIG5vIHNvdXJjZSBvciBhcmNoLWluZGVwIGZpbGVzLlxuIgorIiAgLUEgICAgICAgICAgICAgICAgICAgICAgIG9ubHkgYXJjaC1pbmRlcCAtIG5vIHNvdXJjZSBvciBhcmNoLXNwZWNpZmljICIKKyJmaWxlcy5cbiIKKyIgIC1TICAgICAgICAgICAgICAgICAgICAgICBzb3VyY2Utb25seSB1cGxvYWQuXG4iCisiICAtYzxjb250cm9sZmlsZT4gICAgICAgICAgZ2V0IGNvbnRyb2wgaW5mbyBmcm9tIHRoaXMgZmlsZS5cbiIKKyIgIC1sPGNoYW5nZWxvZ2ZpbGU+ICAgICAgICBnZXQgcGVyLXZlcnNpb24gaW5mbyBmcm9tIHRoaXMgZmlsZS5cbiIKKyIgIC1mPGZpbGVzbGlzdGZpbGU+ICAgICAgICBnZXQgLmRlYiBmaWxlcyBsaXN0IGZyb20gdGhpcyBmaWxlLlxuIgorIiAgLXY8c2luY2V2ZXJzaW9uPiAgICAgICAgIGluY2x1ZGUgYWxsIGNoYW5nZXMgbGF0ZXIgdGhhbiB2ZXJzaW9uLlxuIgorIiAgLUM8Y2hhbmdlc2Rlc2NyaXB0aW9uPiAgIHVzZSBjaGFuZ2UgZGVzY3JpcHRpb24gZnJvbSB0aGlzIGZpbGUuXG4iCisiICAtbTxtYWludGFpbmVyPiAgICAgICAgICAgb3ZlcnJpZGUgY29udHJvbCdzIG1haW50YWluZXIgdmFsdWUuXG4iCisiICAtZTxtYWludGFpbmVyPiAgICAgICAgICAgb3ZlcnJpZGUgY2hhbmdlbG9nJ3MgbWFpbnRhaW5lciB2YWx1ZS5cbiIKKyIgIC11PHVwbG9hZGZpbGVzZGlyPiAgICAgICBkaXJlY3Rvcnkgd2l0aCBmaWxlcyAoZGVmYXVsdCBpcyBgLi4nKS5cbiIKKyIgIC1zaSAoZGVmYXVsdCkgICAgICAgICAgICBzcmMgaW5jbHVkZXMgb3JpZyBpZiBuZXcgdXBzdHJlYW0uXG4iCisiICAtc2EgICAgICAgICAgICAgICAgICAgICAgc291cmNlIGluY2x1ZGVzIG9yaWcgc3JjLlxuIgorIiAgLXNkICAgICAgICAgICAgICAgICAgICAgIHNvdXJjZSBpcyBkaWZmIGFuZCAuZHNjIG9ubHkuXG4iCisiICAtcSAgICAgICAgICAgICAgICAgICAgICAgcXVpZXQgLSBubyBpbmZvcm1hdGlvbmFsIG1lc3NhZ2VzIG9uIHN0ZGVyci5cbiIKKyIgIC1GPGNoYW5nZWxvZ2Zvcm1hdD4gICAgICBmb3JjZSBjaGFuZ2UgbG9nIGZvcm1hdC5cbiIKKyIgIC1WPG5hbWU+PTx2YWx1ZT4gICAgICAgICBzZXQgYSBzdWJzdGl0dXRpb24gdmFyaWFibGUuXG4iCisiICAtVDx2YXJsaXN0ZmlsZT4gICAgICAgICAgcmVhZCB2YXJpYWJsZXMgaGVyZSwgbm90IGRlYmlhbi9zdWJzdHZhcnMuXG4iCisiICAtRDxmaWVsZD49PHZhbHVlPiAgICAgICAgb3ZlcnJpZGUgb3IgYWRkIGEgZmllbGQgYW5kIHZhbHVlLlxuIgorIiAgLVU8ZmllbGQ+ICAgICAgICAgICAgICAgIHJlbW92ZSBhIGZpZWxkLlxuIgorIiAgLWgsIC0taGVscCAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAgICAgLS12ZXJzaW9uICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIgorIkFudsOkbmRuaW5nOiAlcyBbPGZsYWdnYT4gLi4uXVxuIgorIlxuIgorIkZsYWdnb3I6XG4iCisiICAtYiAgICAgICAgICAgICAgICAgICAgICAgYnlnZyBlbmRhc3QgYmluw6RyZXIgLSBpbmdhIGvDpGxsa29kc2ZpbGVyLlxuIgorIiAgLUIgICAgICAgICAgICAgICAgICAgICAgIGFya2l0ZWt0dXJzcGVjaWZpayAtIGluZ2VuIGvDpGxsa29kIGVsbGVyXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJraXRla3R1cm9iZXJvZW5kZSBmaWxlci5cbiIKKyIgIC1BICAgICAgICAgICAgICAgICAgICAgICBlbmRhc3QgYXJraXRla3R1cm9iZXJlb2RuZSAtIGluZ2VuIGvDpGxsa29kXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgZWxsZXIgYXJraXRla3R1cnNwZWNpZmlrYSBmaWxlci5cbiIKKyIgIC1TICAgICAgICAgICAgICAgICAgICAgICBlbmRhc3Qga8OkbGxrb2QuXG4iCisiICAtYzxjb250cm9sLWZpbD4gICAgICAgICAgaMOkbXRhIHN0eXJpbmZvcm1hdGlvbiBmcsOlbiBkZW5uYSBmaWwuXG4iCisiICAtbDzDpG5kcmluZ3Nsb2dnZmlsPiAgICAgIGjDpG10YSBwZXItdmVyc2lvbi1pbmZvcm1hdGlvbiBmcsOlbiBkZW5uYSBmaWwuXG4iCisiICAtZjxmaWxsaXN0ZmlsPiAgICAgICAgICAgaMOkbXRhIC5kZWItZmlsbGlzdGFuIGZyw6VuIGRlbm5hIGZpbC5cbiIKKyIgIC12PHNlZGFudmVyc2lvbj4gICAgICAgICB0YSBtZWQgYWxsYSDDpG5kcmluZ2FyIHNlbmFyZSDDpG4gZGVubmEgdmVyc2lvbi5cbiIKKyIgIC1DPMOkbmRyaW5nc2Jlc2tyaXZuaW5nPiAgYW52w6RuZCDDpG5kcmluZ3NiZXNrcml2bmluZyBmcsOlbiBkZW5uYSBmaWwuXG4iCisiICAtbTxhbnN2YXJpZz4gICAgICAgICAgICAgw7Z2ZXJzdHlyIGFuc3ZhcmlndsOkcmRlIGZyw6VuIHN0eXJmaWxlbi5cbiIKKyIgIC1lPGFuc3ZhcmlnPiAgICAgICAgICAgICDDtnZlcnN0eXIgYW5zdmFyaWd2w6RyZGUgZnLDpW4gw6RuZHJpbmdzbG9nZ2VuLlxuIgorIiAgLXU8aW5zw6RuZG5pbmdza2F0YWxvZz4gICBrYXRhbG9nIG1lZCBmaWxlciAoc3RhbmRhcmQgw6RyIFwiLi5cIikuXG4iCisiICAtc2kgKHN0YW5kYXJkKSAgICAgICAgICAga8OkbGxhIGhhciBvcmlnIG9tIG55IHVwcHN0csO2bXMuXG4iCisiICAtc2EgICAgICAgICAgICAgICAgICAgICAga8OkbGxhIGlubmVow6VsbGVyIG9yaWcta8OkbGxhLlxuIgorIiAgLXNkICAgICAgICAgICAgICAgICAgICAgIGvDpGxsYSDDpHIgZGlmZiBvY2ggZW5kYXN0IC5kc2MuXG4iCisiICAtcSAgICAgICAgICAgICAgICAgICAgICAgdHlzdCAtIGluZ2EgaW5mb3JtYXRpb25zbWVkZGVsYW5kZW4gcMOlIHN0ZCBmZWwuXG4iCisiICAtRjzDpG5kcmluZ3Nsb2dnZm9ybWF0PiAgIHR2aW5nYSDDpG5kcmluZ3Nsb2dnZm9ybWF0LlxuIgorIiAgLVY8bmFtbj49PHbDpHJkZT4gICAgICAgICBzdMOkbGwgaW4gZW4gc3Vic3RpdHVlcmluZ3N2YXJpYWJlbC5cbiIKKyIgIC1UPHZhcmxpc3RmaWw+ICAgICAgICAgICBsw6RzIHZhcmlhYmxlciBow6RyaWZyw6VuLCBpbnRlIGRlYmlhbi9zdWJzdHZhcnMuXG4iCisiICAtRDxmw6RsdD49PHbDpHJkZT4gICAgICAgICDDtnZlcnN0eXIgZWxsZXIgbMOkZ2cgdGlsbCBldHQgZsOkbHQgZWxsZXIgdsOkcmRlLlxuIgorIiAgLVU8ZsOkbHQ+ICAgICAgICAgICAgICAgICB0YSBib3J0IGV0dCBmw6RsdC5cbiIKKyIgIC1oLCAtLWhlbHAgICAgICAgICAgICAgICB2aXNhIGRldHRhIGhqw6RscG1lZGRlbGFuZGUuXG4iCisiICAgICAgLS12ZXJzaW9uICAgICAgICAgICAgdmlzYSB2ZXJzaW9uc251bW1lci5cbiIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6MTQ4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzOiBhcmNoLXNwZWNpZmljIHVwbG9hZCAtIG5vdCBpbmNsdWRpbmcgYXJjaC1pbmRlcGVuZGVudCBwYWNrYWdlcyIKK21zZ3N0ciAiIgorIiVzOiBhcmtpdGVrdHVyc3BlY2lmaWsgaW5zw6RuZG5pbmcgLSBpbmtsdWRlcmFyIGludGUgYXJrLi1vYmVyb2VuZGUgcGFrZXQiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjE1MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlczogYXJjaC1pbmRlcCB1cGxvYWQgLSBub3QgaW5jbHVkaW5nIGFyY2gtc3BlY2lmaWMgcGFja2FnZXMiCittc2dzdHIgIiIKKyIlczogYXJraXRla3R1cm9iZXJlb2VuZGUgaW5zw6RuZG5pbmcgLSBpbmtsdWRlcmFyIGludGUgYXJrLi1zcGVjaWZpayBwYWtldCIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6MjE5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInRoZSBjdXJyZW50IHZlcnNpb24gKCVzKSBpcyBlYXJsaWVyIHRoYW4gdGhlIHByZXZpb3VzIG9uZSAoJXMpIgorbXNnc3RyICJha3R1ZWxsIHZlcnNpb24gKCVzKSDDpHIgdGlkaWdhcmUgw6RuIGRlbiBmw7ZyZWfDpWVuZGUgKCVzKSIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6MjI2Cittc2dpZCAiY2Fubm90IHJlYWQgZmlsZXMgbGlzdCBmaWxlIgorbXNnc3RyICJrYW4gaW50ZSBsw6RzYSBmaWxsaXN0ZmlsIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDoyMzAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZHVwbGljYXRlIGZpbGVzIGxpc3QgZW50cnkgZm9yIHBhY2thZ2UgJXMgKGxpbmUgJWQpIgorbXNnc3RyICJkdXBsaWNlcmFkIGZpbGxpc3Rwb3N0IGbDtnIgcGFrZXRldCAlcyAocmFkICVkKSIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6MjM4IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjI1MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgZmlsZXMgbGlzdCBlbnRyeSBmb3IgZmlsZSAlcyAobGluZSAlZCkiCittc2dzdHIgImR1cGxpY2VyYWQgZmlsbGlzdHBvc3QgZsO2ciBmaWxlbiAlcyAocmFkICVkKSIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6MjU4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImJhZGx5IGZvcm1lZCBsaW5lIGluIGZpbGVzIGxpc3QgZmlsZSwgbGluZSAlZCIKK21zZ3N0ciAiZmVsZm9ybWF0ZXJhZCByYWQgaSBmaWxsaXN0ZmlsZW4sIHJhZCAlZCIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6Mjk5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgJXMgaW4gY29udHJvbCBmaWxlIGJ1dCBub3QgaW4gZmlsZXMgbGlzdCIKK21zZ3N0ciAicGFrZXRldCAlcyBpIHN0eXJpbmZvZmlsZW4gbWVuIGludGUgaSBmaWxsaXN0ZmlsZW4iCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjM0MworbXNnaWQgInJlYWQgY2hhbmdlc2Rlc2NyaXB0aW9uIgorbXNnc3RyICJsw6RzIMOkbmRyaW5nc2Jlc2tyaXZuaW5nIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDozNTEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlcyBsaXN0ZWQgaW4gZmlsZXMgbGlzdCBidXQgbm90IGluIGNvbnRyb2wgaW5mbyIKK21zZ3N0ciAicGFrZXRldCAlcyBsaXN0YXQgaSBmaWxsaXN0YSBtZW4gaW50ZSBpIHN0eXJpbmZvIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDozNjMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibWlzc2luZyBTZWN0aW9uIGZvciBiaW5hcnkgcGFja2FnZSAlczsgdXNpbmcgJy0nIgorbXNnc3RyICJcIlNlY3Rpb25cIiBzYWtuYXMgZsO2ciBiaW7DpHJwYWtldCAlczsgYW52w6RuZGVyIFwiLVwiIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDozNjUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAicGFja2FnZSAlcyBoYXMgc2VjdGlvbiAlcyBpbiBjb250cm9sIGZpbGUgYnV0ICVzIGluIGZpbGVzIGxpc3QiCittc2dzdHIgInBha2V0ZXQgJXMgaGFyIHNla3Rpb25lbiAlcyBpIHN0eXJpbmZvZmlsZW4gbWVuICVzIGkgZmlsbGlzdGFuIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDozNzIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibWlzc2luZyBQcmlvcml0eSBmb3IgYmluYXJ5IHBhY2thZ2UgJXM7IHVzaW5nICctJyIKK21zZ3N0ciAiXCJQcmlvcml0eVwiIHNha25hcyBmw7ZyIGJpbsOkcnBha2V0ZXQgJXM7IGFudsOkbmRlciBcIi1cIiIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6Mzc0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgJXMgaGFzIHByaW9yaXR5ICVzIGluIGNvbnRyb2wgZmlsZSBidXQgJXMgaW4gZmlsZXMgbGlzdCIKK21zZ3N0ciAicGFrZXRldCAlcyBoYXIgcHJpb3JpdGV0ICVzIGkgc3R5cmZpbGVuIG1lbiAlcyBpIGZpbGxpc3RhbiIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6Mzg2Cittc2dpZCAibWlzc2luZyBTZWN0aW9uIGZvciBzb3VyY2UgZmlsZXMiCittc2dzdHIgIlwiU2VjdGlvblwiIHNha25hcyBmw7ZyIGvDpGxsZmlsZXIiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjM5MQorbXNnaWQgIm1pc3NpbmcgUHJpb3JpdHkgZm9yIHNvdXJjZSBmaWxlcyIKK21zZ3N0ciAiXCJQcmlvcml0eVwiIHNha25hcyBmw7ZyIGvDpGxsZmlsZXIiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjM5OCBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjM0NgorIzogc2NyaXB0cy9EcGtnL1ZlbmRvci5wbTo3MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBpcyBlbXB0eSIKK21zZ3N0ciAiJXMgw6RyIHRvbSIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6NDI0Cittc2dpZCAibm90IGluY2x1ZGluZyBvcmlnaW5hbCBzb3VyY2UgY29kZSBpbiB1cGxvYWQiCittc2dzdHIgInRhciBpbnRlIG1lZCB1cnNwcnVuZ2xpZyBrw6RsbGtvZCBpIGRlbm5hIGluc8OkbmRuaW5nIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDo0MzEKK21zZ2lkICJpZ25vcmluZyAtc2Qgb3B0aW9uIGZvciBuYXRpdmUgRGViaWFuIHBhY2thZ2UiCittc2dzdHIgImlnbm9yZXJhciBmbGFnZ2FuIC1zZCBmw7ZyIERlYmlhbnNwZWNpZmlrdCBwYWtldCIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6NDMzCittc2dpZCAiaW5jbHVkaW5nIGZ1bGwgc291cmNlIGNvZGUgaW4gdXBsb2FkIgorbXNnc3RyICJzw6RuZGVyIG1lZCBrb21wbGV0dCBrw6RsbGtvZCBtZWQgZGVubmEgaW5zw6RuZG5pbmciCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jaGFuZ2VzLnBsOjQzNgorbXNnaWQgImJpbmFyeS1vbmx5IHVwbG9hZCAtIG5vdCBpbmNsdWRpbmcgYW55IHNvdXJjZSBjb2RlIgorbXNnc3RyICJlbmRhc3QgYmluw6RyIGluc8OkbmRuaW5nIC0gdGFyIGludGUgbWVkIG7DpWdvbiBrw6RsbGtvZCIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNoYW5nZXMucGw6NDQwCittc2dpZCAid3JpdGUgb3JpZ2luYWwgc291cmNlIG1lc3NhZ2UiCittc2dzdHIgInNrcml2ZXIgbWVkZGVsYW5kZSBvbSBvcmlnaW5hbGvDpGxsa29kIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDo0OTQgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOjUzMgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJtaXNzaW5nIGluZm9ybWF0aW9uIGZvciBjcml0aWNhbCBvdXRwdXQgZmllbGQgJXMiCittc2dzdHIgInNha25hciBpbmZvcm1hdGlvbiBmw7ZyIGtyaXRpc2t0IHV0ZGF0YWbDpGx0ICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY2hhbmdlcy5wbDo0OTkgc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MjcyCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDoyNzUgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOjUzNworIywgcGVybC1mb3JtYXQKK21zZ2lkICJtaXNzaW5nIGluZm9ybWF0aW9uIGZvciBvdXRwdXQgZmllbGQgJXMiCittc2dzdHIgInNha25hciBpbmZvcm1hdGlvbiBmw7ZyIHV0ZGF0YWbDpGx0ICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDo1OAorbXNnaWQgIiIKKyJcbiIKKyJDb3B5cmlnaHQgKEMpIDE5OTYgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDIgV2ljaGVydCBBa2tlcm1hbi4iCittc2dzdHIgIiIKKyJcbiIKKyJDb3B5cmlnaHQgwqkgMTk5NiBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgwqkgMjAwMCwyMDAyIFdpY2hlcnQgQWtrZXJtYW4uIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDo3MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dXG4iCisiXG4iCisiT3B0aW9uczpcbiIKKyIgIC1wPHBhY2thZ2U+ICAgICAgICAgICAgICBwcmludCBjb250cm9sIGZpbGUgZm9yIHBhY2thZ2UuXG4iCisiICAtYzxjb250cm9sZmlsZT4gICAgICAgICAgZ2V0IGNvbnRyb2wgaW5mbyBmcm9tIHRoaXMgZmlsZS5cbiIKKyIgIC1sPGNoYW5nZWxvZ2ZpbGU+ICAgICAgICBnZXQgcGVyLXZlcnNpb24gaW5mbyBmcm9tIHRoaXMgZmlsZS5cbiIKKyIgIC1GPGNoYW5nZWxvZ2Zvcm1hdD4gICAgICBmb3JjZSBjaGFuZ2UgbG9nIGZvcm1hdC5cbiIKKyIgIC12PGZvcmNldmVyc2lvbj4gICAgICAgICBzZXQgdmVyc2lvbiBvZiBiaW5hcnkgcGFja2FnZS5cbiIKKyIgIC1mPGZpbGVzbGlzdGZpbGU+ICAgICAgICB3cml0ZSBmaWxlcyBoZXJlIGluc3RlYWQgb2YgZGViaWFuL2ZpbGVzLlxuIgorIiAgLVA8cGFja2FnZWJ1aWxkZGlyPiAgICAgIHRlbXBvcmFyeSBidWlsZCBkaXIgaW5zdGVhZCBvZiBkZWJpYW4vdG1wLlxuIgorIiAgLW48ZmlsZW5hbWU+ICAgICAgICAgICAgIGFzc3VtZSB0aGUgcGFja2FnZSBmaWxlbmFtZSB3aWxsIGJlIDxmaWxlbmFtZT4uXG4iCisiICAtTyAgICAgICAgICAgICAgICAgICAgICAgd3JpdGUgdG8gc3Rkb3V0LCBub3QgLi4uL0RFQklBTi9jb250cm9sLlxuIgorIiAgLWlzLCAtaXAsIC1pc3AsIC1pcHMgICAgIGRlcHJlY2F0ZWQsIGlnbm9yZWQgZm9yIGNvbXBhdGliaWxpdHkuXG4iCisiICAtRDxmaWVsZD49PHZhbHVlPiAgICAgICAgb3ZlcnJpZGUgb3IgYWRkIGEgZmllbGQgYW5kIHZhbHVlLlxuIgorIiAgLVU8ZmllbGQ+ICAgICAgICAgICAgICAgIHJlbW92ZSBhIGZpZWxkLlxuIgorIiAgLVY8bmFtZT49PHZhbHVlPiAgICAgICAgIHNldCBhIHN1YnN0aXR1dGlvbiB2YXJpYWJsZS5cbiIKKyIgIC1UPHZhcmxpc3RmaWxlPiAgICAgICAgICByZWFkIHZhcmlhYmxlcyBoZXJlLCBub3QgZGViaWFuL3N1YnN0dmFycy5cbiIKKyIgIC1oLCAtLWhlbHAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgICAgIC0tdmVyc2lvbiAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCittc2dzdHIgIiIKKyJBbnbDpG5kbmluZzogJXMgWzxmbGFnZ2E+IC4uLl1cbiIKKyJcbiIKKyJGbGFnZ29yOlxuIgorIiAgLXA8cGFrZXQ+ICAgICAgICAgICAgICAgIHNrcml2IHN0eXJmaWwgZsO2ciBwYWtldC5cbiIKKyIgIC1jPHN0eXJmaWw+ICAgICAgICAgICAgICBow6RtdGEgc3R5cmluZm8gZnLDpW4gZmlsZW4uXG4iCisiICAtbDzDpG5kcmluZ3Nsb2dnZmlsPiAgICAgIGjDpG10YSBpbmZvIHBlciB2ZXJzaW9uIGZyw6VuIGZpbGVuLlxuIgorIiAgLUY8w6RuZHJpbmdzbG9nZ2Zvcm1hdD4gICB0dmluZ2Egw6RuZHJpbmdzbG9nZ2Zvcm1hdC5cbiIKKyIgIC12PHR2aW5nYXZlcnNpb24+ICAgICAgICBzw6R0dCB2ZXJzaW9uIHDDpSBiaW7DpHJwYWtldC5cbiIKKyIgIC1mPGZpbGxpc3RlZmlsPiAgICAgICAgICBza3JpdiBmaWxlciBow6RyIGlzdMOkbGxldCBmw7ZyIGRlYmlhbi9maWxlcy5cbiIKKyIgIC1QPHBha2V0YnlnZ2thdGFsb2c+ICAgICB0ZW1wb3LDpHIgYnlnZ2thdGFsb2cgaXN0w6RsbGV0IGbDtnIgZGViaWFuL3RtcC5cbiIKKyIgIC1uPGZpbG5hbW4+ICAgICAgICAgICAgICBhbnRhIGF0dCBwYWtldGZpbG5hbW5ldCBrb21tZXIgdmFyYSA8ZmlsbmFtbj4uXG4iCisiICAtTyAgICAgICAgICAgICAgICAgICAgICAgc2tyaXYgdGlsbCBzdGFuZGFyZCB1dCwgZWogLi4uL0RFQklBTi9jb250cm9sLlxuIgorIiAgLWlzLCAtaXAsIC1pc3AsIC1pcHMgICAgIGF2csOlZHMsIGlnbm9yZXJhcyBmw7ZyIGtvbXBhdGliaWxpdGV0LlxuIgorIiAgLUQ8ZsOkbHQ+PTx2w6RyZGU+ICAgICAgICAgw7Z2ZXJzdHlyIGVsbGVyIGzDpGdnIHRpbGwgZXR0IGbDpGx0IG9jaCB2w6RyZGUuXG4iCisiICAtVTxmw6RsdD4gICAgICAgICAgICAgICAgIHRhIGJvcnQgZXR0IGbDpGx0LlxuIgorIiAgLVY8bmFtbj49PHbDpHJkZT4gICAgICAgICBzw6R0dCBlbiBzdWJzdGl0dWVyaW5nc3ZhcmlhYmVsLlxuIgorIiAgLVQ8dmFybGlzdGZpbD4gICAgICAgICAgIGzDpHMgdmFyaWFibGVyIGjDpHIsIGludGUgZGViaWFuL3N1YnN0dmFycy5cbiIKKyIgIC1oLCAtLWhlbHAgICAgICAgICAgICAgICB2aXNhIGRldHRhIGhqw6RscG1lZGRlbGFuZGUuXG4iCisiICAgICAgLS12ZXJzaW9uICAgICAgICAgICAgdmlzYSB2ZXJzaW9uc251bW1lci5cbiIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6OTcgc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGw6MTE4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIklsbGVnYWwgcGFja2FnZSBuYW1lIGAlcyciCittc2dzdHIgIm9naWx0aWd0IHBha2V0bmFtbiBcIiVzXCIiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjE1MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJwYWNrYWdlICVzIG5vdCBpbiBjb250cm9sIGluZm8iCittc2dzdHIgInBha2V0ZXQgJXMgaW50ZSBpIHN0eXJpbmZvIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDoxNTYgc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGw6MTU5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIm11c3Qgc3BlY2lmeSBwYWNrYWdlIHNpbmNlIGNvbnRyb2wgaW5mbyBoYXMgbWFueSAoJXMpIgorbXNnc3RyICJtw6VzdGUgYW5nZSBwYWtldCBlZnRlcnNvbSBzdHlyaW5mbyBoYXIgZmxlcmEgKCVzKSIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MTYwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInBhY2thZ2UgJXM6ICIKK21zZ3N0ciAicGFrZXRldCAlczogIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDoxODUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiYCVzJyBpcyBub3QgYSBsZWdhbCBhcmNoaXRlY3R1cmUgc3RyaW5nLiIKK21zZ2lkX3BsdXJhbCAiYCVzJyBhcmUgbm90IGxlZ2FsIGFyY2hpdGVjdHVyZSBzdHJpbmdzLiIKK21zZ3N0clswXSAiXCIlc1wiIMOkciBpbnRlIGVuIGdpbHRpZyBhcmtpdGVrdHVyc3Ryw6RuZy4iCittc2dzdHJbMV0gIlwiJXNcIiDDpHIgaW50ZSBnaWx0aWdhIGFya2l0ZWt0dXJzdHLDpG5nYXIuIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDoxOTEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorImN1cnJlbnQgaG9zdCBhcmNoaXRlY3R1cmUgJyVzJyBkb2VzIG5vdCBhcHBlYXIgaW4gcGFja2FnZSdzIGFyY2hpdGVjdHVyZSAiCisibGlzdCAoJXMpIgorbXNnc3RyICIiCisiZGVuIGFrdHVlbGxhIHbDpHJkYXJraXRla3R1cmVuIFwiJXNcIiBmaW5ucyBpbnRlIGkgcGFrZXRldHMgYXJraXRla3R1cmxpc3RhICIKKyIoJXMpIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDoyNDYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgZmllbGQgb2YgcGFja2FnZSAlczogIgorbXNnc3RyICIlcy1mw6RsdGV0IGkgcGFrZXRldCAlczogIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDoyNTAgc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MjU4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImVycm9yIG9jY3VycmVkIHdoaWxlIHBhcnNpbmcgJXMgZmllbGQ6ICVzIgorbXNnc3RyICJmZWwgdmlkIHRvbGtuaW5nIGF2IGbDpGx0ZXQgJXM6ICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDoyNjMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorInRoZSAlcyBmaWVsZCBjb250YWlucyBhbiBhcmNoLXNwZWNpZmljIGRlcGVuZGVuY3kgYnV0IHRoZSBwYWNrYWdlIGlzICIKKyJhcmNoaXRlY3R1cmUgYWxsIgorbXNnc3RyICIiCisiRsOkbHRldCAlcyBpbm5laMOlbGxlciBldHQgYXJraXRla3R1cnNwZWNpZmlrdCBiZXJvZW5kZSwgbWVuIHBha2V0ZXQgw6RyIGbDtnIgIgorImFsbGEgYXJraXRla3R1cmVyIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDoyODcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgcGFja2FnZSB3aXRoIHVkZWIgc3BlY2lmaWMgZmllbGQgJXMiCittc2dzdHIgIiVzLXBha2V0IG1lZCB1ZGViLXNwZWNpZmlrdCBmw6RsdCAlcyIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MzAwIHNjcmlwdHMvZHBrZy1zY2Fuc291cmNlcy5wbDozMTMKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6ODM2IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvUGFyc2UucG06MTM4CisjOiBzY3JpcHRzL0Rwa2cvSVBDLnBtOjIyOSBzY3JpcHRzL0Rwa2cvU2hsaWJzL09iamR1bXAucG06MTgxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCBmb3JrIGZvciAlcyIKK21zZ3N0ciAia2FuIGludGUgZ3JlbmEgZsO2ciAlcyIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MzAzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNoZGlyIGZvciBkdSB0byBgJXMnIgorbXNnc3RyICJjaGRpciBmw7ZyIGR1IHRpbGwgXCIlc1wiIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDozMDUgc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo4NDMKKyM6IHNjcmlwdHMvRHBrZy9JUEMucG06MjcxIHNjcmlwdHMvRHBrZy9TaGxpYnMvQ3BwZmlsdC5wbTo1MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gZXhlY3V0ZSAlcyIKK21zZ3N0ciAia2FuIGludGUgZXhla3ZlcmEgJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5jb250cm9sLnBsOjMxMgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJkdSBpbiBgJXMnIgorbXNnc3RyICJkdSBpIFwiJXNcIiIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MzE0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImR1IGdhdmUgdW5leHBlY3RlZCBvdXRwdXQgYCVzJyIKK21zZ3N0ciAiZHUgZ2F2IG92w6RudGFkZSB1dGRhdGEgXCIlc1wiIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDozNDcKK21zZ2lkICJjbG9zZSBvbGQgZmlsZXMgbGlzdCBmaWxlIgorbXNnc3RyICJzdMOkbmdlciBnYW1tYWwgZmlsbGlzdGZpbCIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MzY5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCBvcGVuIG5ldyBvdXRwdXQgY29udHJvbCBmaWxlIGAlcyciCittc2dzdHIgImthbiBpbnRlIHNrYXBhIG55IHV0ZGF0YXN0eXJmaWwgXCIlc1wiIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2VuY29udHJvbC5wbDozNzggc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo1MjMKKyM6IHNjcmlwdHMvRHBrZy9JbnRlcmZhY2UvU3RvcmFibGUucG06OTEKKyM6IHNjcmlwdHMvRHBrZy9JbnRlcmZhY2UvU3RvcmFibGUucG06MTE5IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MjkwCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NjA3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCBjbG9zZSAlcyIKK21zZ3N0ciAia2FuIGludGUgc3TDpG5nYSAlcyIKKworIzogc2NyaXB0cy9kcGtnLWdlbmNvbnRyb2wucGw6MzgwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCBpbnN0YWxsIG91dHB1dCBjb250cm9sIGZpbGUgYCVzJyIKK21zZ3N0ciAia2FuIGludGUgaW5zdGFsbGVyYSB1dGRhdGFzdHlyZmlsIFwiJXNcIiIKKworIzogc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGw6NTEKK21zZ2lkICIiCisiXG4iCisiQ29weXJpZ2h0IChDKSAyMDA3IFJhcGhhZWwgSGVydHpvZy5cbiIKK21zZ3N0ciAiIgorIlxuIgorIkNvcHlyaWdodCDCqSAyMDA3IFJhcGhhZWwgSGVydHpvZy5cbiIKKworIzogc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGw6NjMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXVxuIgorIlxuIgorIk9wdGlvbnM6XG4iCisiICAtcDxwYWNrYWdlPiAgICAgICAgICAgICAgZ2VuZXJhdGUgc3ltYm9scyBmaWxlIGZvciBwYWNrYWdlLlxuIgorIiAgLVA8cGFja2FnZWJ1aWxkZGlyPiAgICAgIHRlbXBvcmFyeSBidWlsZCBkaXIgaW5zdGVhZCBvZiBkZWJpYW4vdG1wLlxuIgorIiAgLWU8bGlicmFyeT4gICAgICAgICAgICAgIGV4cGxpY2l0bHkgbGlzdCBsaWJyYXJpZXMgdG8gc2Nhbi5cbiIKKyIgIC12PHZlcnNpb24+ICAgICAgICAgICAgICB2ZXJzaW9uIG9mIHRoZSBwYWNrYWdlcyAoZGVmYXVsdHMgdG9cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICB2ZXJzaW9uIGV4dHJhY3RlZCBmcm9tIGRlYmlhbi9jaGFuZ2Vsb2cpLlxuIgorIiAgLWM8bGV2ZWw+ICAgICAgICAgICAgICAgIGNvbXBhcmUgZ2VuZXJhdGVkIHN5bWJvbHMgZmlsZSB3aXRoIHRoZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlZmVyZW5jZSB0ZW1wbGF0ZSBpbiB0aGUgZGViaWFuIGRpcmVjdG9yeVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGFuZCBmYWlsIGlmIGRpZmZlcmVuY2UgaXMgdG9vIGltcG9ydGFudFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIChsZXZlbCBnb2VzIGZyb20gMCBmb3Igbm8gY2hlY2ssIHRvIDRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgYWxsIGNoZWNrcykuIEJ5IGRlZmF1bHQgY2hlY2tzIGF0XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV2ZWwgMS5cbiIKKyIgIC1xICAgICAgICAgICAgICAgICAgICAgICBrZWVwIHF1aWV0IGFuZCBuZXZlciBlbWl0IGFueSB3YXJuaW5ncyBvclxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGdlbmVyYXRlIGEgZGlmZiBiZXR3ZWVuIGdlbmVyYXRlZCBzeW1ib2xzXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsZSBhbmQgdGhlIHJlZmVyZW5jZSB0ZW1wbGF0ZS5cbiIKKyIgIC1JPGZpbGU+ICAgICAgICAgICAgICAgICBmb3JjZSB1c2FnZSBvZiA8ZmlsZT4gYXMgcmVmZXJlbmNlIHN5bWJvbHNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxlIGluc3RlYWQgb2YgdGhlIGRlZmF1bHQgZmlsZS5cbiIKKyIgIC1PPGZpbGU+ICAgICAgICAgICAgICAgICB3cml0ZSB0byA8ZmlsZT4sIG5vdCAuLi4vREVCSUFOL3N5bWJvbHMuXG4iCisiICAtTyAgICAgICAgICAgICAgICAgICAgICAgd3JpdGUgdG8gc3Rkb3V0LCBub3QgLi4uL0RFQklBTi9zeW1ib2xzLlxuIgorIiAgLXQgICAgICAgICAgICAgICAgICAgICAgIHdyaXRlIGluIHRlbXBsYXRlIG1vZGUgKHRhZ3MgYXJlIG5vdFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHByb2Nlc3NlZCBhbmQgaW5jbHVkZWQgaW4gb3V0cHV0KS5cbiIKKyIgIC1WICAgICAgICAgICAgICAgICAgICAgICB2ZXJib3NlIG91dHB1dC4gV3JpdGUgZGVwcmVjYXRlZCBzeW1ib2xzIGFuZFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhdHRlcm4gbWF0Y2hpbmcgc3ltYm9scyBhcyBjb21tZW50c1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIChpbiB0ZW1wbGF0ZSBtb2RlIG9ubHkpLlxuIgorIiAgLWE8YXJjaD4gICAgICAgICAgICAgICAgIGFzc3VtZSA8YXJjaD4gYXMgaG9zdCBhcmNoaXRlY3R1cmUgd2hlbiAiCisicHJvY2Vzc2luZ1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHN5bWJvbCBmaWxlcy5cbiIKKyIgIC1kICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5IGRlYnVnIGluZm9ybWF0aW9uIGR1cmluZyB3b3JrLlxuIgorIiAgLWgsIC0taGVscCAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAgICAgLS12ZXJzaW9uICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIgorIkFudsOkbmRuaW5nOiAlcyBbPGZsYWdnb3I+IC4uLl1cbiIKKyJcbiIKKyJGbGFnZ29yOlxuIgorIiAgLXA8cGFrZXQ+ICAgICAgICAgICAgICAgIHNrYXBhciBzeW1ib2xmaWwgZsO2ciBwYWtldC5cbiIKKyIgIC1QPHBha2V0YnlnZ2thdGFsb2c+ICAgICB0ZW1wb3LDpHIgYnlnZ2thdGFsb2cgaXN0w6RsbGV0IGbDtnIgZGViaWFuL3RtcC5cbiIKKyIgIC1lPGJpYmxpb3Rlaz4gICAgICAgICAgICBleHBsaWNpdCBsaXN0YSDDtnZlciBiaWJsaW90ZWsgYXR0IHPDtmthIGkuXG4iCisiICAtdjx2ZXJzaW9uPiAgICAgICAgICAgICAgdmVyc2lvbiBww6UgcGFrZXRldCAoc3RhbmRhcmR2w6RyZGUgw6RyIHZlcnNpb25lblxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHNvbSB1dGzDpHNlcyB1ciBkZWJpYW4vY2hhbmdlbG9nKS5cbiIKKyItYzxuaXbDpT4gICAgICAgICAgICAgICAgIGrDpG1mw7ZyIGdlbmVyZXJhZGUgc3ltYm9sZmlsZXIgbWVkIHJlZmVyZW5zZmlsZW5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBpIGthdGFsb2dlbiBcImRlYmlhblwiIG9jaCBtaXNzbHlja2FzIG9tICIKKyJza2lsbG5hZGVybmFcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICDDpHIgZsO2ciBzdG9yYSAobml2w6UgZ8OlciBmcsOlbiAwIGbDtnIgaW5nZW4gdGVzdCwgIgorInRpbGxcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICA0IGbDtnIgYWxsYSB0ZXN0ZXIpLiBTdGFuZGFyZHbDpHJkZSDDpHIgdGVzdCBww6Ugbml2w6UgIgorIjEuXG4iCisiICAtSTxmaWw+ICAgICAgICAgICAgICAgICAgdHZpbmdhIGFudsOkbmRuaW5nIGF2IDxmaWw+IHNvbSBzeW1ib2xyZWZlcmVuc2ZpbFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzdMOkbGxldCBmw7ZyIHN0YW5kYXJkZmlsZW4uXG4iCisiICAtTzxmaWw+ICAgICAgICAgICAgICAgICAgc2tyaXYgdGlsbCA8ZmlsPiwgaW50ZSAuLi4vREVCSUFOL3N5bWJvbHMuXG4iCisiICAtTyAgICAgICAgICAgICAgICAgICAgICAgc2tyaXYgdGlsbCBzdGFuZGFyZCB1dCwgaW50ZSAuLi4vREVCSUFOL3N5bWJvbHMuXG4iCisiICAtdCAgICAgICAgICAgICAgICAgICAgICAgc2tyaXYgaSBtYWxsw6RnZSAodGFnZ2FyIGJlaGFuZGxhcyBpbnRlIG9jaFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHRhcyBtZWQgaSB1dGRhdGEpLlxuIgorIiAgLWQgICAgICAgICAgICAgICAgICAgICAgIHZpc2EgZmVsc8O2a25pbmdzaW5mb3JtYXRpb24gdW5kZXIga8O2cm5uZy5cbiIKKyIgIC1oLCAtLWhlbHAgICAgICAgICAgICAgICB2aXNhIGRldHRhIGhqw6RscG1lZGRlbGFuZGUuXG4iCisiICAgICAgLS12ZXJzaW9uICAgICAgICAgICAgdmlzYSB2ZXJzaW9uc251bW1lci5cbiIKKworIzogc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGw6MTk0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIkNhbid0IHJlYWQgZGlyZWN0b3J5ICVzOiAlcyIKK21zZ3N0ciAia2FuIGludGUgbMOkc2Ega2F0YWxvZ2VuICVzOiAlcyIKKworIzogc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGw6MjA5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIk9iamR1bXAgY291bGRuJ3QgcGFyc2UgJXNcbiIKK21zZ3N0ciAib2JqZHVtcCBrdW5kZSBpbnRlIHRvbGthICVzXG4iCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsOjIyNworbXNnaWQgIjxzdGFuZGFyZCBvdXRwdXQ+IgorbXNnc3RyICI8c3RhbmRhcmQgdXQ+IgorCisjOiBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbDoyNTUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibmV3IGxpYnJhcmllcyBhcHBlYXJlZCBpbiB0aGUgc3ltYm9scyBmaWxlOiAlcyIKK21zZ3N0ciAibnlhIGJpYmxpb3RlayBkw7ZrIHVwcCBpIHN5bWJvbGZpbGVuOiAlcyIKKworIzogc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGw6MjYwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInNvbWUgbGlicmFyaWVzIGRpc2FwcGVhcmVkIGluIHRoZSBzeW1ib2xzIGZpbGU6ICVzIgorbXNnc3RyICJuw6VncmEgYmlibGlvdGVrIGbDtnJzdmFubiB1ciBzeW1ib2xmaWxlbjogJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsOjI2NQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJzb21lIG5ldyBzeW1ib2xzIGFwcGVhcmVkIGluIHRoZSBzeW1ib2xzIGZpbGU6ICVzIgorbXNnc3RyICJuw6VncmEgbnlhIHN5bWJvbGVyIGTDtmsgdXBwIGkgc3ltYm9sZmlsZW46ICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbDoyNjYgc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGw6MjcxCittc2dpZCAic2VlIGRpZmYgb3V0cHV0IGJlbG93IgorbXNnc3RyICJzZSBkaWZmLXV0ZGF0YSBuZWRhbiIKKworIzogc2NyaXB0cy9kcGtnLWdlbnN5bWJvbHMucGw6MjcwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInNvbWUgc3ltYm9scyBvciBwYXR0ZXJucyBkaXNhcHBlYXJlZCBpbiB0aGUgc3ltYm9scyBmaWxlOiAlcyIKK21zZ3N0ciAibsOlZ3JhIHN5bWJvbGVyIGVsbGVyIG3Dtm5zdGVyIGbDtnJzdmFubiB1ciBzeW1ib2xmaWxlbjogJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1nZW5zeW1ib2xzLnBsOjI5MQorbXNnaWQgInRoZSBnZW5lcmF0ZWQgc3ltYm9scyBmaWxlIGlzIGVtcHR5IgorbXNnc3RyICJkZW4gZ2VuZXJlcmFkZSBcInN5bWJvbHNcIi1maWxlbiDDpHIgdG9tIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbDoyOTMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgZG9lc24ndCBtYXRjaCBjb21wbGV0ZWx5ICVzIgorbXNnc3RyICIlcyBzdMOkbW1lciBpbnRlIGhlbHQgw7Z2ZXJlbnMgbWVkICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctZ2Vuc3ltYm9scy5wbDoyOTYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibm8gZGViaWFuL3N5bWJvbHMgZmlsZSB1c2VkIGFzIGJhc2lzIGZvciBnZW5lcmF0aW5nICVzIgorbXNnc3RyICJhbnbDpG5kZSBpbmdlbiBkZWJpYW4vc3ltYm9scy1maWwgc29tIGdydW5kIGbDtnIgYXR0IGdlbmVyZXJhICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctbWVyZ2VjaGFuZ2Vsb2dzLnBsOjU1Cittc2dpZCAiQ29weXJpZ2h0IChDKSAyMDA5LTIwMTAgUmFwaGFlbCBIZXJ0em9nLiIKK21zZ3N0ciAiQ29weXJpZ2h0IMKpIDIwMDktMjAxMCBSYXBoYWVsIEhlcnR6b2cuIgorCisjOiBzY3JpcHRzL2Rwa2ctbWVyZ2VjaGFuZ2Vsb2dzLnBsOjU4Cittc2dpZCAiIgorIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgb3JcbiIKKyJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIKK21zZ3N0ciAiIgorIkRldHRhIHByb2dyYW0gw6RyIGZyaSBwcm9ncmFtdmFyYS4gU2UgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAyXG4iCisiZWxsZXIgc2VuYXJlIGbDtnIga29waWVyaW5nc3ZpbGxrb3IuIERldCBmaW5ucyBJTkdFTiBnYXJhbnRpLlxuIgorCisjOiBzY3JpcHRzL2Rwa2ctbWVyZ2VjaGFuZ2Vsb2dzLnBsOjY1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gPG9sZD4gPG5ldy1hPiA8bmV3LWI+IFs8b3V0Pl1cbiIKKyJcbiIKKyJPcHRpb25zOlxuIgorIiAgLS1tZXJnZS1wcmVyZWxlYXNlcywgLW0gIG1lcmdlIHByZS1yZWxlYXNlcyB0b2dldGhlciwgaWdub3JlcyBldmVyeXRoaW5nXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgYWZ0ZXIgdGhlIGxhc3QgJ34nIGluIHRoZSB2ZXJzaW9uLlxuIgorIiAgLS1oZWxwLCAtaCwgLT8gICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKK21zZ3N0ciAiIgorIkFudsOkbmRuaW5nOiAlcyBbPGZsYWdnYT4uLi5dIDxnYW1tYWw+IDxueS1hPiA8bnktYj4gWzx1dD5dXG4iCisiXG4iCisiRmxhZ2dvcjpcbiIKKyIgIC0tbWVyZ2UtcHJlcmVsZWFzZXMsIC1tICBzbMOlIGlob3AgZsO2cmhhbmRzdXRnw6V2b3IsIGlnbm9yZXJhciBhbGx0XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgZWZ0ZXIgc2lzdGEgXCJ+XCIgaSB2ZXJzaW9uc251bXJldC5cbiIKKyIgIC0taGVscCwgLWgsIC0/ICAgICAgICAgICB2aXNhIGRldHRhIGhqw6RscG1lZGRlbGFuZGUuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgdmlzYSB2ZXJzaW9uc251bW1lci5cbiIKKworIzogc2NyaXB0cy9kcGtnLW1lcmdlY2hhbmdlbG9ncy5wbDoxMjkgc2NyaXB0cy9kcGtnLW1lcmdlY2hhbmdlbG9ncy5wbDoxMzEKKyM6IHNjcmlwdHMvRHBrZy9Db21wcmVzc2lvbi9GaWxlSGFuZGxlLnBtOjM4NQorIzogc2NyaXB0cy9EcGtnL0ludGVyZmFjZS9TdG9yYWJsZS5wbToxMTUgc2NyaXB0cy9EcGtnL0lQQy5wbToyNTUKKyM6IHNjcmlwdHMvRHBrZy9JUEMucG06MjYzIHNjcmlwdHMvRHBrZy9Tb3VyY2UvRnVuY3Rpb25zLnBtOjc4CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG06NDQ3IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbTo1NTAKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbToyMTcgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjUzMAorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjYwNQorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjE0MgorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjE1MQorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjE1NworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjIyNgorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjIzNAorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjM0MQorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjM1MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgd3JpdGUgJXMiCittc2dzdHIgImthbiBpbnRlIHNrcml2YSAlcyIKKworIzogc2NyaXB0cy9kcGtnLW5hbWUucGw6NTEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiVXNhZ2U6ICVzIFs8b3B0aW9uPi4uLl0gPGZpbGU+Li4uXG4iCittc2dzdHIgIkFudsOkbmRuaW5nOiAlcyBbPGZsYWdnYT4uLi5dIDxmaWw+Li4uXG4iCisKKyM6IHNjcmlwdHMvZHBrZy1uYW1lLnBsOjUzCittc2dpZCAiIgorIlxuIgorIk9wdGlvbnM6XG4iCisiICAtYSwgLS1uby1hcmNoaXRlY3R1cmUgICAgbm8gYXJjaGl0ZWN0dXJlIHBhcnQgaW4gZmlsZW5hbWUuXG4iCisiICAtbywgLS1vdmVyd3JpdGUgICAgICAgICAgb3ZlcndyaXRlIGlmIGZpbGUgZXhpc3RzLlxuIgorIiAgLWssIC0tc3ltbGluayAgICAgICAgICAgIGRvbid0IGNyZWF0ZSBhIG5ldyBmaWxlLCBidXQgYSBzeW1saW5rLlxuIgorIiAgLXMsIC0tc3ViZGlyIFtkaXJdICAgICAgIG1vdmUgZmlsZSBpbnRvIHN1YmRpciAodXNlIHdpdGggY2FyZSkuXG4iCisiICAtYywgLS1jcmVhdGUtZGlyICAgICAgICAgY3JlYXRlIHRhcmdldCBkaXIgaWYgbm90IHRoZXJlICh1c2Ugd2l0aCBjYXJlKS5cbiIKKyIgIC1oLCAtLWhlbHAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLXYsIC0tdmVyc2lvbiAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCisiZmlsZS5kZWIgY2hhbmdlcyB0byA8cGFja2FnZT5fPHZlcnNpb24+XzxhcmNoaXRlY3R1cmU+LjxwYWNrYWdlX3R5cGU+XG4iCisiYWNjb3JkaW5nIHRvIHRoZSAndW5kZXJzY29yZXMgY29udmVudGlvbicuXG4iCittc2dzdHIgIiIKKyJcbiIKKyJGbGFnZ29yOlxuIgorIiAgLWEsIC0tbm8tYXJjaGl0ZWN0dXJlICAgIGluZ2VuIGFya2l0ZWt0dXJkZWwgaSBmaWxuYW1uLlxuIgorIiAgLW8sIC0tb3ZlcndyaXRlICAgICAgICAgIHNrcml2IMO2dmVyIG9tIGZpbCBmaW5ucy5cbiIKKyIgIC1rLCAtLXN5bWxpbmsgICAgICAgICAgICBza2FwYSBzeW1ib2xpc2sgbMOkbmssIGludGUgbnkgZmlsLlxuIgorIiAgLXMsIC0tc3ViZGlyIFtrYXRdICAgICAgIGZseXR0YSBmaWwgdGlsbCB1bmRlcmthdCAodmlzYSB2YXJzYW1oZXQpLlxuIgorIiAgLWMsIC0tY3JlYXRlLWRpciAgICAgICAgIHNrYXBhIG3DpWxrYXQgb20gZGVuIGludGUgZmlubnMgKHZpc2EgdmFyc2FtaGV0KS5cbiIKKyIgIC1oLCAtLWhlbHAgICAgICAgICAgICAgICB2aXNhIGRldHRhIGhqw6RscG1lZGRlbGFuZGUuXG4iCisiICAtdiwgLS12ZXJzaW9uICAgICAgICAgICAgdmlzYSB2ZXJzaW9uc251bW1lci5cbiIKKyJcbiIKKyJmaWwuZGViIMOkbmRyYXMgdGlsbCA8cGFrZXQ+Xzx2ZXJzaW9uPl88YXJraXRla3R1cj4uPHBha2V0dHlwPlxuIgorImVubGlndCBcInVuZGVyc3RyZWNrc2tvbnZlbnRpb25lblwiLlxuIgorCisjOiBzY3JpcHRzL2Rwa2ctbmFtZS5wbDo3NQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3QgZmluZCAnJXMnIgorbXNnc3RyICJrYW4gaW50ZSBoaXR0YSAlcyIKKworIzogc2NyaXB0cy9kcGtnLW5hbWUucGw6OTYgc2NyaXB0cy9EcGtnL0FyY2gucG06MTM4IHNjcmlwdHMvRHBrZy9BcmNoLnBtOjE1NworIzogc2NyaXB0cy9EcGtnL0FyY2gucG06MTc2IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvUGFyc2UucG06MTQyCisjOiBzY3JpcHRzL0Rwa2cvSVBDLnBtOjI0NyBzY3JpcHRzL0Rwa2cvU2hsaWJzLnBtOjc4CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG06MTkzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCBvcGVuICVzIgorbXNnc3RyICJrYW4gaW50ZSDDtnBwbmEgJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1uYW1lLnBsOjk4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImJpbmFyeSBjb250cm9sIGZpbGUgJXMiCittc2dzdHIgImJpbsOkciBzdHlyZmlsICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctbmFtZS5wbDoxMTEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiYXNzdW1pbmcgYXJjaGl0ZWN0dXJlICclcycgZm9yICclcyciCittc2dzdHIgImFudGFyIGFya2l0ZWt0dXJlbiBcIiVzXCIgZsO2ciBcIiVzXCIiCisKKyM6IHNjcmlwdHMvZHBrZy1uYW1lLnBsOjEzMworIywgcGVybC1mb3JtYXQKK21zZ2lkICJiYWQgcGFja2FnZSBjb250cm9sIGluZm9ybWF0aW9uIGZvciAnJXMnIgorbXNnc3RyICJmZWxha3RpZyBwYWtldHN0eXJpbmZvcm1hdGlvbiBmw7ZyICVzLiIKKworIzogc2NyaXB0cy9kcGtnLW5hbWUucGw6MTQ5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImFzc3VtaW5nIHNlY3Rpb24gJyVzJyBmb3IgJyVzJyIKK21zZ3N0ciAiYW50YXIgc2VrdGlvbmVuIFwiJXNcIiBmw7ZyIFwiJXNcIiIKKworIzogc2NyaXB0cy9kcGtnLW5hbWUucGw6MTc0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIm5vIFBhY2thZ2UgZmllbGQgZm91bmQgaW4gJyVzJywgc2tpcHBpbmcgaXQiCittc2dzdHIgIlBhY2thZ2UtZsOkbHRldCBoaXR0YWRlcyBpbnRlIGkgXCIlc1wiLCBob3BwYXIgw7Z2ZXIiCisKKyM6IHNjcmlwdHMvZHBrZy1uYW1lLnBsOjE4NworIywgcGVybC1mb3JtYXQKK21zZ2lkICJjcmVhdGVkIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICJza2FwYWRlIGthdGFsb2dlbiBcIiVzXCIiCisKKyM6IHNjcmlwdHMvZHBrZy1uYW1lLnBsOjE4OQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3QgY3JlYXRlIGRpcmVjdG9yeSAnJXMnIgorbXNnc3RyICJrYW4gaW50ZSBza2FwYSBrYXRhbG9nZW4gXCIlc1wiIgorCisjOiBzY3JpcHRzL2Rwa2ctbmFtZS5wbDoxOTIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibm8gc3VjaCBkaXJlY3RvcnkgJyVzJywgdHJ5IC0tY3JlYXRlLWRpciAoLWMpIG9wdGlvbiIKK21zZ3N0ciAia2F0YWxvZ2VuIFwiJXNcIiBmaW5ucyBpbnRlLCBmw7Zyc8O2ayBtZWQgZmxhZ2dhbiAtLWNyZWF0ZS1kaXIgKC1jKSIKKworIzogc2NyaXB0cy9kcGtnLW5hbWUucGw6MjA3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInNraXBwaW5nICclcyciCittc2dzdHIgImhvcHBhciDDtnZlciBcIiVzXCIiCisKKyM6IHNjcmlwdHMvZHBrZy1uYW1lLnBsOjIwOQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3QgbW92ZSAnJXMnIHRvIGV4aXN0aW5nIGZpbGUiCittc2dzdHIgImthbiBpbnRlIGZseXR0YSBcIiVzXCIgdGlsbCBiZWZpbnRsaWcgZmlsIgorCisjOiBzY3JpcHRzL2Rwa2ctbmFtZS5wbDoyMTEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibW92ZWQgJyVzJyB0byAnJXMnIgorbXNnc3RyICJmbHl0dGFkZSBcIiVzXCIgdGlsbCBcIiVzXCIiCisKKyM6IHNjcmlwdHMvZHBrZy1uYW1lLnBsOjIxMworbXNnaWQgIm1rZGlyIGNhbiBiZSB1c2VkIHRvIGNyZWF0ZSBkaXJlY3RvcnkiCittc2dzdHIgIm1rZGlyIGthbiBhbnbDpG5kYXMgZsO2ciBhdHQgc2thcGEga2F0YWxvZ2VuIgorCisjOiBzY3JpcHRzL2Rwa2ctbmFtZS5wbDoyMTgKK21zZ2lkICJuZWVkIGF0IGxlYXN0IGEgZmlsZW5hbWUiCittc2dzdHIgImJlaMO2dmVyIG1pbnN0IGV0dCBmaWxuYW1uIgorCisjOiBzY3JpcHRzL2Rwa2ctcGFyc2VjaGFuZ2Vsb2cucGw6MzMKK21zZ2lkICIiCisiXG4iCisiQ29weXJpZ2h0IChDKSAxOTk2IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMSBXaWNoZXJ0IEFra2VybWFuIgorbXNnc3RyICIiCisiXG4iCisiQ29weXJpZ2h0IMKpIDE5OTYgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IMKpIDIwMDEgV2ljaGVydCBBa2tlcm1hbiIKKworIzogc2NyaXB0cy9kcGtnLXBhcnNlY2hhbmdlbG9nLnBsOjQ1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl1cbiIKKyJcbiIKKyJPcHRpb25zOlxuIgorIiAgLWw8Y2hhbmdlbG9nZmlsZT4gICAgICAgIGdldCBwZXItdmVyc2lvbiBpbmZvIGZyb20gdGhpcyBmaWxlLlxuIgorIiAgLUY8Y2hhbmdlbG9nZm9ybWF0PiAgICAgIGZvcmNlIGNoYW5nZSBsb2cgZm9ybWF0LlxuIgorIiAgLUw8bGliZGlyPiAgICAgICAgICAgICAgIGxvb2sgZm9yIGNoYW5nZSBsb2cgcGFyc2VycyBpbiA8bGliZGlyPi5cbiIKKyIgIC1oLCAtLWhlbHAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgICAgIC0tdmVyc2lvbiAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iCisicGFyc2VyIG9wdGlvbnM6XG4iCisiICAgIC0tZm9ybWF0IDxvdXRwdXRmb3JtYXQ+ICAgICBzZWUgbWFuIHBhZ2UgZm9yIGxpc3Qgb2YgYXZhaWxhYmxlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdXRwdXQgZm9ybWF0cywgZGVmYXVsdHMgdG8gJ2Rwa2cnXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIGRwa2ctZGV2XG4iCisiICAgIC0tc2luY2UgPHZlcnNpb24+LCAgICAgICAgICBpbmNsdWRlIGFsbCBjaGFuZ2VzIGxhdGVyIHRoYW4gdmVyc2lvblxuIgorIiAgICAgIC1zPHZlcnNpb24+LCAtdjx2ZXJzaW9uPlxuIgorIiAgICAtLXVudGlsIDx2ZXJzaW9uPiwgICAgICAgICAgaW5jbHVkZSBhbGwgY2hhbmdlcyBlYXJsaWVyIHRoYW4gdmVyc2lvblxuIgorIiAgICAgIC11PHZlcnNpb24+XG4iCisiICAgIC0tZnJvbSA8dmVyc2lvbj4sICAgICAgICAgICBpbmNsdWRlIGFsbCBjaGFuZ2VzIGVxdWFsIG9yIGxhdGVyXG4iCisiICAgICAgLWY8dmVyc2lvbj4gICAgICAgICAgICAgICB0aGFuIHZlcnNpb25cbiIKKyIgICAgLS10byA8dmVyc2lvbj4sIC10PHZlcnNpb24+IGluY2x1ZGUgYWxsIGNoYW5nZXMgdXAgdG8gb3IgZXF1YWxcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoYW4gdmVyc2lvblxuIgorIiAgICAtLWNvdW50IDxudW1iZXI+LCAgICAgICAgICAgaW5jbHVkZSA8bnVtYmVyPiBlbnRyaWVzIGZyb20gdGhlIHRvcFxuIgorIiAgICAgIC1jPG51bWJlcj4sIC1uPG51bWJlcj4gICAgKG9yIHRoZSB0YWlsIGlmIDxudW1iZXI+IGlzIGxvd2VyIHRoYW4gMClcbiIKKyIgICAgLS1vZmZzZXQgPG51bWJlcj4sICAgICAgICAgIGNoYW5nZSB0aGUgc3RhcnRpbmcgcG9pbnQgZm9yIC0tY291bnQsXG4iCisiICAgICAgLW88bnVtYmVyPiAgICAgICAgICAgICAgICBjb3VudGVkIGZyb20gdGhlIHRvcCAob3IgdGhlIHRhaWwgaWZcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxudW1iZXI+IGlzIGxvd2VyIHRoYW4gMClcbiIKKyIgICAgLS1hbGwgICAgICAgICAgICAgICAgICAgICAgIGluY2x1ZGUgYWxsIGNoYW5nZXNcbiIKK21zZ3N0ciAiIgorIkFudsOkbmRuaW5nOiAlcyBbPGZsYWdnYT4gLi4uXVxuIgorIlxuIgorIkZsYWdnb3I6XG4iCisiICAtbDzDpG5kcmluZ3Nsb2dnZmlsPiAgICAgIGjDpG10YSBpbmZvcm1hdGlvbiBwZXIgdmVyc2lvbiBmcsOlbiBmaWwuXG4iCisiICAtRjzDpG5kaXJuZ3Nsb2dnZm9ybWF0PiAgIHR2aW5nYSDDpG5kcmluZ3Nsb2dnZm9ybWF0LlxuIgorIiAgLUw8YmlibGlvdGVrc2thdGFsb2c+ICAgIHNlIGVmdGVyIMOkbmRyaW5nc2xvZ2dwYXJzcmFyIGkgPGthdGFsb2c+LlxuIgorIiAgLWgsIC0taGVscCAgICAgICAgICAgICAgIHZpc2EgZGV0dGEgaGrDpGxwbWVkZGVsYW5kZS5cbiIKKyIgICAgICAtLXZlcnNpb24gICAgICAgICAgICB2aXNhIHZlcnNpb25zbnVtcmV0LlxuIgorIlxuIgorInBhcnNlcmZsYWdnb3I6XG4iCisiICAgIC0tZm9ybWF0IDx1dGRhdGFmb3JtYXQ+ICAgICBzZSBtYW51YWxzaWRhbiBmw7ZyIGVuIGxpc3RhIMO2dmVyICIKKyJ0aWxsZ8OkbmdsaWdhXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1dGRhdGFmb3JtYXQsIHN0YW5kYXJkIMOkciBcImRwa2dcIiBmw7ZyXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBrb21wYXRpYmlsaXRldCBtZWQgZHBrZy1kZXZcbiIKKyIgICAgLS1zaW5jZSA8dmVyc2lvbj4sICAgICAgICAgIHRhIG1lZCBhbGxhIMOkbmRyaW5nYXIgZWZ0ZXIgdmVyc2lvblxuIgorIiAgICAgIC1zPHZlcnNpb24+LCAtdjx2ZXJzaW9uPlxuIgorIiAgICAtLXVudGlsIDx2ZXJzaW9uPiwgICAgICAgICAgdGEgbWVkIGFsbGEgw6RuZHJpbmdhciBmw7ZyZXZlcnNpb25cbiIKKyIgICAgICAtdTx2ZXJzaW9uPlxuIgorIiAgICAtLWZyb20gPHZlcnNpb24+LCAgICAgICAgICAgdGEgbWVkIGFsbGEgw6RuZHJpbmdhciBmcsOlbiBvY2ggbWVkXG4iCisiICAgICAgLWY8dmVyc2lvbj4gICAgICAgICAgICAgICB2ZXJzaW9uXG4iCisiICAgIC0tdG8gPHZlcnNpb24+LCAtdDx2ZXJzaW9uPiB0YSBtZWQgYWxsYSDDpG5kcmluZ2FyIHRpbGwgb2NoIG1lZFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmVyc2lvblxuIgorIiAgICAtLWNvdW50IDxhbnRhbD4sICAgICAgICAgICAgdGEgbWVkIDxhbnRhbD4gcG9zdGVyIGZyw6VuIGLDtnJqYW5cbiIKKyIgICAgICAtYzxhbnRhbD4sIC1uPGFudGFsPiAgICAgIChlbGxlciBzbHV0ZXQgb20gPGFudGFsPiDDpHIgbMOkZ3JlIMOkbiAwKVxuIgorIiAgICAtLW9mZnNldCA8YW50YWw+ICwgICAgICAgICAgYnl0IHN0YXJ0cHVua3QgZsO2ciAtLWNvdW50LCByw6RrbmF0XG4iCisiICAgICAgLW88YW50YWw+ICAgICAgICAgICAgICAgICBmcsOlbiBiw7ZyamFuIChlbGxlciBzbHV0ZXQgb20gPGFudGFsPlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgw6RyIGzDpGdyZSDDpG4gMClcbiIKKyIgICAgLS1hbGwgICAgICAgICAgICAgICAgICAgICAgIHRhIG1lZCBhbGxhIMOkbmRyaW5nYXJcbiIKKworIzogc2NyaXB0cy9kcGtnLXBhcnNlY2hhbmdlbG9nLnBsOjExNworbXNnaWQgInRha2VzIG5vIG5vbi1vcHRpb24gYXJndW1lbnRzIgorbXNnc3RyICJ0YXIgaW5nYSBhcmd1bWVudCBzb20gaW50ZSDDpHIgZmxhZ2dvciIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDo2NgorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIDxiaW5hcnlwYXRoPiBbPG92ZXJyaWRlZmlsZT4gWzxwYXRocHJlZml4Pl1dID4gIgorIlBhY2thZ2VzXG4iCisiXG4iCisiT3B0aW9uczpcbiIKKyIgIC10LCAtLXR5cGUgPHR5cGU+ICAgICAgICBzY2FuIGZvciA8dHlwZT4gcGFja2FnZXMgKGRlZmF1bHQgaXMgJ2RlYicpLlxuIgorIiAgLXUsIC0tdWRlYiAgICAgICAgICAgICAgIHNjYW4gZm9yIHVkZWJzIChvYnNvbGV0ZSBhbGlhcyBmb3IgLXR1ZGViKS5cbiIKKyIgIC1hLCAtLWFyY2ggPGFyY2g+ICAgICAgICBhcmNoaXRlY3R1cmUgdG8gc2NhbiBmb3IuXG4iCisiICAtbSwgLS1tdWx0aXZlcnNpb24gICAgICAgYWxsb3cgbXVsdGlwbGUgdmVyc2lvbnMgb2YgYSBzaW5nbGUgcGFja2FnZS5cbiIKKyIgIC1lLCAtLWV4dHJhLW92ZXJyaWRlIDxmaWxlPlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzZSBleHRyYSBvdmVycmlkZSBmaWxlLlxuIgorIiAgLU0sIC0tbWVkaXVtIDxtZWRpdW0+ICAgIGFkZCBYLU1lZGl1bSBmaWVsZCBmb3IgZHNlbGVjdCBtdWx0aWNkIGFjY2VzcyAiCisibWV0aG9kXG4iCisiICAtaCwgLS1oZWxwICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgICAgICAtLXZlcnNpb24gICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorbXNnc3RyICIiCisiQW52w6RuZG5pbmc6ICVzIFs8ZmxhZ2dhPiAuLi5dIDxiaW7DpHJrYXRhbG9nPiBbPMO2dmVyc3R5cmZpbD4gIgorIls8c8O2a3bDpGdwcmVmaXg+XV0gPiBQYWNrYWdlc1xuIgorIlxuIgorIkZsYWdnb3I6XG4iCisiICAtdCwgLS10eXBlIDx0eXA+ICAgICAgICAgc8O2ayBlZnRlciA8dHlwPi1wYWtldCAoc3RhbmRhcmQgw6RyIFwiZGViXCIpLlxuIgorIiAgLXUsIC0tdWRlYiAgICAgICAgICAgICAgIHPDtmsgZWZ0ZXIgdWRlYi1wYWtldCAoZsO2csOlbGRyYXQgYWxpYXMgdGlsbCAtIgorInR1ZGViKS5cbiIKKyIgIC1hLCAtLWFyY2ggPGFyaz4gICAgICAgICBhcmtpdGVrdHVyIGF0dCBzw7ZrYSBlZnRlci5cbiIKKyIgIC1tLCAtLW11bHRpdmVyc2lvbiAgICAgICB0aWxsw6V0IGZsZXJhIHZlcnNpb25lciBhdiBzYW1tYSBwYWtldC5cbiIKKyIgIC1lLCAtLWV4dHJhLW92ZXJyaWRlIDxmaWw+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgYW52w6RuZCBleHRyYSDDtnZlcnN0eXJuaW5nc2ZpbC5cbiIKKyIgIC1NLCAtLW1lZGl1bSA8bWVkaXVtPiAgICBsw6RnZyB0aWxsIFgtTWVkaXVtLWbDpGx0IGbDtnIgZHNlbGVjdHM6c1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIG11bHRpY2Qtw6V0a29tc3RtZXRvZFxuIgorIiAgLWgsIC0taGVscCAgICAgICAgICAgICAgIHZpc2EgZGV0dGEgaGrDpGxwbWVkZGVsYW5kZS5cbiIKKyIgICAgICAtLXZlcnNpb24gICAgICAgICAgICB2aXNhIHZlcnNpb25zbnVtbWVyLlxuIgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOjgzCittc2dpZCAiLXUsIC0tdWRlYiBvcHRpb24gaXMgZGVwcmVjYXRlZCAoc2VlIFJFQURNRS5mZWF0dXJlLXJlbW92YWwtc2NoZWR1bGUpIgorbXNnc3RyICJmbGFnZ29ybmEgLXUgb2NoIC0tdWRlYiB1bmRhbmJlcyAoc2UgUkVBRE1FLmZlYXR1cmUtcmVtb3ZhbC1zY2hlZHVsZSkiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6MTEyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiAgJXMgKHBhY2thZ2Ugc2F5cyAlcywgbm90ICVzKSIKK21zZ3N0ciAiICAlcyAocGFrZXRldCBzw6RnZXIgJXMsIGludGUgJXMpIgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOjEyMAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJVbmNvbmRpdGlvbmFsIG1haW50YWluZXIgb3ZlcnJpZGUgZm9yICVzIgorbXNnc3RyICJPdmlsbGtvcmxpZyDDtnZlcnN0eXJuaW5nIGZyw6VuIHBha2V0YW5zdmFyaWdhIGbDtnIgJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6MTU4IHNjcmlwdHMvZHBrZy1zY2Fuc291cmNlcy5wbDozMDIKK21zZ2lkICJvbmUgdG8gdGhyZWUgYXJndW1lbnRzIGV4cGVjdGVkIgorbXNnc3RyICJldHQgdGlsbCB0cmUgYXJndW1lbnQgZsO2cnbDpG50YWRlcyIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoxNzUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiQmluYXJ5IGRpciAlcyBub3QgZm91bmQiCittc2dzdHIgIkJpbsOkcmthdGFsb2dlbiAlcyBoaXR0YWRlcyBpbnRlIgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOjE3NworIywgcGVybC1mb3JtYXQKK21zZ2lkICJPdmVycmlkZSBmaWxlICVzIG5vdCBmb3VuZCIKK21zZ3N0ciAiw5Z2ZXJzdHlybmluZ3NmaWxlbiAlcyBoaXR0YWRlcyBpbnRlIgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOjE4MworIywgcGVybC1mb3JtYXQKK21zZ2lkICJDb3VsZG4ndCBvcGVuICVzIGZvciByZWFkaW5nIgorbXNnc3RyICJLdW5kZSBpbnRlIMO2cHBuYSAlcyBmw7ZyIGzDpHNuaW5nIgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOjE5MworIywgcGVybC1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBwYXJzZSBjb250cm9sIGluZm9ybWF0aW9uIGZyb20gJXMuIgorbXNnc3RyICJLdW5kZSBpbnRlIHRvbGthIHN0eXJpbmZvcm1hdGlvbiBmcsOlbiAlcy4iCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6MTk2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImBkcGtnLWRlYiAtSSAlcyBjb250cm9sJyBleGl0ZWQgd2l0aCAlZCwgc2tpcHBpbmcgcGFja2FnZSIKK21zZ3N0ciAiXCJkcGtnLWRlYiAtbCAlcyBjb250cm9sXCIgYXZzbHV0YWRlcyBtZWQgJWQsIGhvcHBhciDDtnZlciBwYWtldCIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoyMDIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiTm8gUGFja2FnZSBmaWVsZCBpbiBjb250cm9sIGZpbGUgb2YgJXMiCittc2dzdHIgIkluZ2V0IFBhY2thZ2UtZsOkbHQgaSBzdHlyZmlsZW4gZsO2ciAlcyIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoyMTAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiUGFja2FnZSAlcyAoZmlsZW5hbWUgJXMpIGlzIHJlcGVhdCBidXQgbmV3ZXIgdmVyc2lvbjsiCittc2dzdHIgIlBha2V0ZXQgKCVzKSAoZmlsbmFtbiAlcykgcmVwZXRlcmFkZXMgbWVuIG55YXJlIHZlcnNpb247IgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOjIxMgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1c2VkIHRoYXQgb25lIGFuZCBpZ25vcmVkIGRhdGEgZnJvbSAlcyEiCittc2dzdHIgImFudsOkbmRlIGRlbiBvY2ggaWdub3JlcmFkZSBkYXRhIGZyw6VuICVzISIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoyMTYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiUGFja2FnZSAlcyAoZmlsZW5hbWUgJXMpIGlzIHJlcGVhdDsiCittc2dzdHIgIlBha2V0ZXQgKCVzKSAoZmlsbmFtbiAlcykgcmVwZXRlcmFkZXM7IgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOjIxNworIywgcGVybC1mb3JtYXQKK21zZ2lkICJpZ25vcmVkIHRoYXQgb25lIGFuZCB1c2luZyBkYXRhIGZyb20gJXMhIgorbXNnc3RyICJpZ25vcmVyYWRlIGRlbiBvY2ggYW52w6RuZGUgZGF0YSBmcsOlbiAlcyEiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6MjIzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIlBhY2thZ2UgJXMgKGZpbGVuYW1lICVzKSBoYXMgRmlsZW5hbWUgZmllbGQhIgorbXNnc3RyICJQYWtldGV0ICVzIChmaWxuYW1uICVzKSBoYXIgRmlsZW5hbWUtZsOkbHQhIgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOjI1NQorbXNnaWQgIkZhaWxlZCB3aGVuIHdyaXRpbmcgc3Rkb3V0IgorbXNnc3RyICJNaXNzbHlja2FkZXMgdmlkIHNrcml2bmluZyBww6Ugc3RhbmRhcmQgdXQiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6MjU5Cittc2dpZCAiQ291bGRuJ3QgY2xvc2Ugc3Rkb3V0IgorbXNnc3RyICJLdW5kZSBpbnRlIHN0w6RuZ2Egc3RhbmRhcmQgdXQiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6MjYyCittc2dpZCAiUGFja2FnZXMgaW4gb3ZlcnJpZGUgZmlsZSB3aXRoIGluY29ycmVjdCBvbGQgbWFpbnRhaW5lciB2YWx1ZToiCittc2dzdHIgIlBha2V0IGkgw7Z2ZXJzdHlybmluZ3NmaWxlbiBtZWQgZmVsYWt0aWd0IHbDpHJkZSBww6UgZ2FtbWFsIGFuc3ZhcmlnOiIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoyNjYKK21zZ2lkICJQYWNrYWdlcyBzcGVjaWZ5aW5nIHNhbWUgbWFpbnRhaW5lciBhcyBvdmVycmlkZSBmaWxlOiIKK21zZ3N0ciAiUGFrZXQgc29tIGFuZ2VyIHNhbW1hIGFuc3ZhcmlnIGkgw7Z2ZXJzdHlybmluZ3NmaWxlbjoiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2FucGFja2FnZXMucGw6MjcwCittc2dpZCAiUGFja2FnZXMgaW4gYXJjaGl2ZSBidXQgbWlzc2luZyBmcm9tIG92ZXJyaWRlIGZpbGU6IgorbXNnc3RyICJQYWtldCBpIGFya2l2ZXQgbWVuIHNvbSBzYWtuYXMgaSDDtnZlcnN0eXJuaW5nc2ZpbGVuOiIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5wYWNrYWdlcy5wbDoyNzQKK21zZ2lkICJQYWNrYWdlcyBpbiBvdmVycmlkZSBmaWxlIGJ1dCBub3QgaW4gYXJjaGl2ZToiCittc2dzdHIgIlBha2V0IGkgw7Z2ZXJzdHlybmluZ3NmaWxlbiBtZW4gaW50ZSBpIGFya2l2ZXQ6IgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnBhY2thZ2VzLnBsOjI3OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJXcm90ZSAlcyBlbnRyaWVzIHRvIG91dHB1dCBQYWNrYWdlcyBmaWxlLiIKK21zZ3N0ciAiU2tyZXYgJXMgcG9zdGVyIHRpbGwgZGVuIHNrYXBhZGUgUGFja2FnZXMtZmlsZW4uIgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnNvdXJjZXMucGw6ODQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIlVzYWdlOiAlcyBbPG9wdGlvbj4gLi4uXSA8YmluYXJ5cGF0aD4gWzxvdmVycmlkZWZpbGU+IFs8cGF0aHByZWZpeD5dXSA+ICIKKyJTb3VyY2VzXG4iCisiXG4iCisiT3B0aW9uczpcbiIKKyIgIC1uLCAtLW5vLXNvcnQgICAgICAgICAgICBkb24ndCBzb3J0IGJ5IHBhY2thZ2UgYmVmb3JlIG91dHB1dHRpbmcuXG4iCisiICAtZSwgLS1leHRyYS1vdmVycmlkZSA8ZmlsZT5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2UgZXh0cmEgb3ZlcnJpZGUgZmlsZS5cbiIKKyIgIC1zLCAtLXNvdXJjZS1vdmVycmlkZSA8ZmlsZT5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2UgZmlsZSBmb3IgYWRkaXRpb25hbCBzb3VyY2Ugb3ZlcnJpZGVzLCAiCisiZGVmYXVsdFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzIHJlZ3VsYXIgb3ZlcnJpZGUgZmlsZSB3aXRoIC5zcmMgYXBwZW5kZWQuXG4iCisiICAgICAgLS1kZWJ1ZyAgICAgICAgICAgICAgdHVybiBkZWJ1Z2dpbmcgb24uXG4iCisiICAgICAgLS1oZWxwICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgICAgICAtLXZlcnNpb24gICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorIlNlZSB0aGUgbWFuIHBhZ2UgZm9yIHRoZSBmdWxsIGRvY3VtZW50YXRpb24uXG4iCittc2dzdHIgIiIKKyJBbnbDpG5kbmluZzogJXMgWzxmbGFnZ2E+IC4uLl0gPGJpbmFya2F0YWxvZz4gWzzDtnZlcnN0eXJmaWw+ICIKKyJbPHPDtmt2w6RncHJlZml4Pl1dID4gU291cmNlc1xuIgorIlxuIgorIkZsYWdnb3I6XG4iCisiICAtbiwgLS1uby1zb3J0ICAgICAgICAgICAgc29ydGVyYSBpbnRlIHBha2V0IGlubmFuIGRlIHNrcml2cyB1dC5cbiIKKyIgIC1lLCAtLWV4dHJhLW92ZXJyaWRlIDxmaWw+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgYW52w6RuZCBleHRyYSDDtnZlcnN0eXJuaW5nc2ZpbC5cbiIKKyIgIC1zLCAtLXNvdXJjZS1vdmVycmlkZSA8ZmlsPlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGFudsOkbmQgZmlsIGbDtnIgeXR0ZXJsaWdhcmUgIgorImvDpGxsa29kc8O2dmVyc3R5cm5pbmdhcixcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGFuZGFyZCDDpHIgdmFubGlnYSDDtnZlcnN0eXJuaW5nc2ZpbGVuIG1lZCAiCisidGlsbMOkZ2dcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAuc3JjLlxuIgorIiAgICAgIC0tZGVidWcgICAgICAgICAgICAgIHNsw6UgcMOlIGZlbHPDtmtuaW5nLlxuIgorIiAgICAgIC0taGVscCAgICAgICAgICAgICAgIHZpc2EgZGV0dGEgaGrDpGxwbWVkZGVsYW5kZS5cbiIKKyIgICAgICAtLXZlcnNpb24gICAgICAgICAgICB2aXNhIHZlcnNpb25zbnVtbWVyLlxuIgorIlxuIgorIlNlIG1hbnVhbHNpZGFuIGbDtnIgZnVsbHN0w6RuZGlnIGRva3VtZW50YXRpb24uXG4iCisKKyM6IHNjcmlwdHMvZHBrZy1zY2Fuc291cmNlcy5wbDoxMDUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZXJyb3IgY2xvc2luZyAlcyAoJD8gJWQsICQhIGAlcycpIgorbXNnc3RyICJmZWwgdmlkIHN0w6RuZ25pbmcgYXYgJXMgKCQ/ICVkLCAkISBcIiVzXCIpIgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnNvdXJjZXMucGw6MTIxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImludmFsaWQgb3ZlcnJpZGUgZW50cnkgYXQgbGluZSAlZCAoJWQgZmllbGRzKSIKK21zZ3N0ciAiZmVsYWt0aWcgw7Z2ZXJzdHlybmluZ3Nwb3N0IHDDpSByYWQgJWQgKCVkIGbDpGx0KSIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5zb3VyY2VzLnBsOjEyNworIywgcGVybC1mb3JtYXQKK21zZ2lkICJpZ25vcmluZyBkdXBsaWNhdGUgb3ZlcnJpZGUgZW50cnkgZm9yICVzIGF0IGxpbmUgJWQiCittc2dzdHIgImlnbm9yZXJhciBkdXBsaWNlcmFkIMO2dmVyc3R5cm5pbmdzcG9zdCBmw7ZyICVzIHDDpSByYWQgJWQiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2Fuc291cmNlcy5wbDoxMzIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiaWdub3Jpbmcgb3ZlcnJpZGUgZW50cnkgZm9yICVzLCBpbnZhbGlkIHByaW9yaXR5ICVzIgorbXNnc3RyICJpZ25vcmVyYXIgw7Z2ZXJzdHlybmluZ3Nwb3N0IGbDtnIgJXMsIG9naWx0aWcgcHJpb3JpdGV0ICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctc2NhbnNvdXJjZXMucGw6MTg2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImludmFsaWQgc291cmNlIG92ZXJyaWRlIGVudHJ5IGF0IGxpbmUgJWQgKCVkIGZpZWxkcykiCittc2dzdHIgImZlbGFrdGlnIGvDpGxsa29kc8O2dmVyc3R5cm5pbmdzcG9zdCBww6UgcmFkICVkICglZCBmw6RsdCkiCisKKyM6IHNjcmlwdHMvZHBrZy1zY2Fuc291cmNlcy5wbDoxOTQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgZHVwbGljYXRlIHNvdXJjZSBvdmVycmlkZSBlbnRyeSBmb3IgJXMgYXQgbGluZSAlZCIKK21zZ3N0ciAiaWdub3JlcmFyIGR1cGxpY2VyYWQga8OkbGxrb2Rzw7Z2ZXJzdHlybmluZ3Nwb3N0IGbDtnIgJXMgcMOlIHJhZCAlZCIKKworIzogc2NyaXB0cy9kcGtnLXNjYW5zb3VyY2VzLnBsOjI0NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJubyBiaW5hcnkgcGFja2FnZXMgc3BlY2lmaWVkIGluICVzIgorbXNnc3RyICJpbmdldCBiaW7DpHJwYWtldCBhbmdpdmV0IGkgJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6OTMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiYWRtaW5pc3RyYXRpdmUgZGlyZWN0b3J5ICclcycgZG9lcyBub3QgZXhpc3QiCittc2dzdHIgImFkbWluaXN0cmF0aXYga2F0YWxvZyBcIiVzXCIgZmlubnMgaW50ZSIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo5OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bnJlY29nbmlzZWQgZGVwZW5kZW5jeSBmaWVsZCBgJXMnIgorbXNnc3RyICJva8OkbnQgYmVyb2VuZGVmw6RsdCBcIiVzXCIiCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6MTMyCittc2dpZCAibmVlZCBhdCBsZWFzdCBvbmUgZXhlY3V0YWJsZSIKK21zZ3N0ciAiYmVow7Z2ZXIgbWluc3QgZW4gYmluw6RyIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjE3NQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBmaW5kIGxpYnJhcnkgJXMgbmVlZGVkIGJ5ICVzIChFTEYgZm9ybWF0OiAnJXMnOyBSUEFUSDogJyVzJykuIgorbXNnc3RyICIiCisiaGl0dGFkZSBpbnRlIGJpYmxpb3Rla2V0ICVzIHNvbSBiZWjDtnZzIGF2ICVzIChFTEYtZm9ybWF0LiBcIiVzXCI7IFJQQVRIOiBcIiVzIgorIlwiKS4iCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6MjYyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGhhcyBhbiB1bmV4cGVjdGVkIFNPTkFNRSAoJXMpIgorbXNnc3RyICIlcyBoYXIgZXR0IG92w6RudGF0IFNPTkFNTiAoJXMpIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjI4MworIywgcGVybC1mb3JtYXQKK21zZ2lkICJubyBkZXBlbmRlbmN5IGluZm9ybWF0aW9uIGZvdW5kIGZvciAlcyAodXNlZCBieSAlcykuIgorbXNnc3RyICJoaXR0YWRlIGluZ2VuIGJlcm9lbmRlaW5mb3JtYXRpb24gZsO2ciAlcyAoYW52w6RuZCBhdiAlcykuIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjMxNAorbXNnaWQgIiIKKyJiaW5hcmllcyB0byBhbmFseXplIHNob3VsZCBhbHJlYWR5IGJlIGluc3RhbGxlZCBpbiB0aGVpciBwYWNrYWdlJ3MgZGlyZWN0b3J5LiIKK21zZ3N0ciAiIgorImJpbsOkcmVyIHNvbSBza2FsbCBhbmFseXNlcmFzIG3DpXN0ZSByZWRhbiB2YXJhIGluc3RhbGxlcmFkZSBpIHNpdHQgcGFrZXRzICIKKyJrYXRhbG9nLiIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDozNTcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAic3ltYm9sICVzIHVzZWQgYnkgJXMgZm91bmQgaW4gbm9uZSBvZiB0aGUgbGlicmFyaWVzLiIKK21zZ3N0ciAic3ltYm9sZW4gJXMsIHNvbSBhbnbDpG5kcyBhdiAlcywgaGl0dGFkZXMgaW50ZSBpIG7DpWdvdCBhdiBiaWJsaW90ZWtlbi4iCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6MzYwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyIlcyBjb250YWlucyBhbiB1bnJlc29sdmFibGUgcmVmZXJlbmNlIHRvIHN5bWJvbCAlczogaXQncyBwcm9iYWJseSBhIHBsdWdpbi4iCittc2dzdHIgIiIKKyIlcyBpbm5laMOlbGxlciBlbiByZWZlcmVucyB0aWxsIHN5bWJvbGVuICVzIHNvbSBpbnRlIGthbiBrb3BwbGFzOyBkZXQgw6RyICIKKyJ0cm9saWdlbiBldHQgaW5zdGlja3Nwcm9ncmFtLiIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDozODIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJWQgc2ltaWxhciB3YXJuaW5nIGhhcyBiZWVuIHNraXBwZWQgKHVzZSAtdiB0byBzZWUgaXQpLiIKK21zZ2lkX3BsdXJhbCAiIgorIiVkIG90aGVyIHNpbWlsYXIgd2FybmluZ3MgaGF2ZSBiZWVuIHNraXBwZWQgKHVzZSAtdiB0byBzZWUgdGhlbSBhbGwpLiIKK21zZ3N0clswXSAiIgorIiVkIGFubmFuIGxpa25hbmRlIHZhcm5pbmcgaGFyIGhvcHBhdHMgw7Z2ZXIgKGFudsOkbmQgLXYgZsO2ciBhdHQgdmlzYSBkZW4pLiIKK21zZ3N0clsxXSAiIgorIiVkIGFuZHJhIGxpa25hbmRlIHZhcm5pbmdhciBoYXIgaG9wcGF0cyDDtnZlciAoYW52w6RuZCAtdiBmw7ZyIGF0dCB2aXNhIGFsbGEpLiIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo0MDkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgc2hvdWxkbid0IGJlIGxpbmtlZCB3aXRoICVzIChpdCB1c2VzIG5vbmUgb2YgaXRzIHN5bWJvbHMpLiIKK21zZ3N0ciAiJXMgYm9yZGUgaW50ZSB2YXJhIGzDpG5rYXQgbW90ICVzIChpbmdhIGF2IHN5bWJvbGVybmEgYW52w6RuZHMpLiIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo0MjIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorImRlcGVuZGVuY3kgb24gJXMgY291bGQgYmUgYXZvaWRlZCBpZiBcIiVzXCIgd2VyZSBub3QgdXNlbGVzc2x5IGxpbmtlZCAiCisiYWdhaW5zdCBpdCAodGhleSB1c2Ugbm9uZSBvZiBpdHMgc3ltYm9scykuIgorbXNnc3RyICIiCisiYmVyb2VuZGV0IHDDpSAlcyBrdW5kZSB1bmR2aWthcyBvbSBpbnRlIFwiJXNcIiBtZW5pbmdzbMO2c3QgbMOkbmthZGVzIG1vdCBkZXQgIgorIihkZSBhbnbDpG5kZXIgaW5nYSBhdiBkZXNzIHN5bWJvbGVyKS4iCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6NDMxCittc2dpZCAiIgorIk5vdGU6IGxpYnJhcmllcyBhcmUgbm90IHNlYXJjaGVkIGluIG90aGVyIGJpbmFyeSBwYWNrYWdlcyB0aGF0IGRvIG5vdCBoYXZlICIKKyJhbnkgc2hsaWJzIG9yIHN5bWJvbHMgZmlsZS5cbiIKKyJUbyBoZWxwIGRwa2ctc2hsaWJkZXBzIGZpbmQgcHJpdmF0ZSBsaWJyYXJpZXMsIHlvdSBtaWdodCBuZWVkIHRvIHNldCAiCisiTERfTElCUkFSWV9QQVRILiIKK21zZ3N0ciAiIgorIk9ic2VydmVyYTogYW5kcmEgYmluw6RycGFrZXQgc29tIGludGUgaGFyIHNobGlicy0gZWxsZXIgc3ltYm9scy1maWxlciBzw7ZrcyAiCisiaW50ZSBnZW5vbSBlZnRlciBiaWJsaW90ZWsuXG4iCisiRsO2ciBhdHQgaGrDpGxwYSBkcGtnLXNobGliZGVwcyBhdHQgaGl0dGEgcHJpdmF0YSBiaWJsaW90ZWsgbcOlc3RlIGR1IGthbnNrZSAiCisic8OkdHRhIExEX0xJQlJBUllfUEFUSC4iCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6NDM0Cittc2dpZCAiQ2Fubm90IGNvbnRpbnVlIGR1ZSB0byB0aGUgZXJyb3IgYWJvdmUuIgorbXNnaWRfcGx1cmFsICJDYW5ub3QgY29udGludWUgZHVlIHRvIHRoZSBlcnJvcnMgbGlzdGVkIGFib3ZlLiIKK21zZ3N0clswXSAiS2FuIGludGUgZm9ydHPDpHR0YSBww6UgZ3J1bmQgYXYgb3ZhbnN0w6VlbmRlIGZlbC4iCittc2dzdHJbMV0gIkthbiBpbnRlIGZvcnRzw6R0dGEgcMOlIGdydW5kIGF2IG92YW5zdMOlZW5kZSBmZWwuIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjQ0NQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJvcGVuIG5ldyBzdWJzdHZhcnMgZmlsZSBgJXMnIgorbXNnc3RyICLDtnBwbmEgbnkgc3Vic3R2YXItZmlsIFwiJXNcIiIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo0NDgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAib3BlbiBvbGQgdmFybGlzdCBmaWxlIGAlcycgZm9yIHJlYWRpbmciCittc2dzdHIgIsO2cHBuYSBnYW1tYWwgdmFybGlzdGVmaWwgXCIlc1wiIGbDtnIgbMOkc25pbmciCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6NDUxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNvcHkgb2xkIGVudHJ5IHRvIG5ldyB2YXJsaXN0IGZpbGUgYCVzJyIKK21zZ3N0ciAia29waWVyYSBnYW1tYWwgcG9zdCB0aWxsIG55IHZhcmxpc3RlZmlsIFwiJXNcIiIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo1MTUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBkZXBlbmRlbmN5IGdvdCBnZW5lcmF0ZWQ6ICVzIgorbXNnc3RyICJvZ2lsdGlndCBiZXJvZW5kZSBza2FwYWRlczogJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6NTI1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImluc3RhbGwgbmV3IHZhcmxpc3QgZmlsZSBgJXMnIgorbXNnc3RyICJpbnN0YWxsZXJhciBueSB2YXJsaXN0ZWZpbCBcIiVzXCIiCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6NTM1Cittc2dpZCAiIgorIlxuIgorIkNvcHlyaWdodCAoQykgMTk5NiBJYW4gSmFja3Nvbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDAgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMDYgRnJhbmsgTGljaHRlbmhlbGQuXG4iCisiQ29weXJpZ2h0IChDKSAyMDA3IFJhcGhhZWwgSGVydHpvZy5cbiIKK21zZ3N0ciAiIgorIlxuIgorIkNvcHlyaWdodCDCqSAxOTk2IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCDCqSAyMDAwIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IMKpIDIwMDYgRnJhbmsgTGljaHRlbmhlbGQuQ29weXJpZ2h0IMKpIDIwMDcgUmFwaGFlbCBIZXJ0em9nLlxuIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjU1MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIDxleGVjdXRhYmxlPnwtZTxleGVjdXRhYmxlPiBbPG9wdGlvbj4gLi4uXVxuIgorIlxuIgorIlBvc2l0aW9uYWwgb3B0aW9ucyAob3JkZXIgaXMgc2lnbmlmaWNhbnQpOlxuIgorIiAgPGV4ZWN1dGFibGU+ICAgICAgICAgICAgIGluY2x1ZGUgZGVwZW5kZW5jaWVzIGZvciA8ZXhlY3V0YWJsZT4sXG4iCisiICAtZTxleGVjdXRhYmxlPiAgICAgICAgICAgKHVzZSAtZSBpZiA8ZXhlY3V0YWJsZT4gc3RhcnRzIHdpdGggYC0nKVxuIgorIiAgLWQ8ZGVwZW5kZW5jeWZpZWxkPiAgICAgIG5leHQgZXhlY3V0YWJsZShzKSBzZXQgc2hsaWJzOjxkZXBlbmRlbmN5ZmllbGQ+LlxuIgorIlxuIgorIk9wdGlvbnM6XG4iCisiICAtcDx2YXJuYW1lcHJlZml4PiAgICAgICAgc2V0IDx2YXJuYW1lcHJlZml4PjoqIGluc3RlYWQgb2Ygc2hsaWJzOiouXG4iCisiICAtTyAgICAgICAgICAgICAgICAgICAgICAgcHJpbnQgdmFyaWFibGUgc2V0dGluZ3MgdG8gc3Rkb3V0LlxuIgorIiAgLUw8bG9jYWxzaGxpYnNmaWxlPiAgICAgIHNobGlicyBvdmVycmlkZSBmaWxlLCBub3QgZGViaWFuL3NobGlicy5sb2NhbC5cbiIKKyIgIC1UPHZhcmxpc3RmaWxlPiAgICAgICAgICB1cGRhdGUgdmFyaWFibGVzIGhlcmUsIG5vdCBkZWJpYW4vc3Vic3R2YXJzLlxuIgorIiAgLXQ8dHlwZT4gICAgICAgICAgICAgICAgIHNldCBwYWNrYWdlIHR5cGUgKGRlZmF1bHQgaXMgZGViKS5cbiIKKyIgIC14PHBhY2thZ2U+ICAgICAgICAgICAgICBleGNsdWRlIHBhY2thZ2UgZnJvbSB0aGUgZ2VuZXJhdGVkIGRlcGVuZGVuY2llcy5cbiIKKyIgIC1TPHBrZ2J1aWxkZGlyPiAgICAgICAgICBzZWFyY2ggbmVlZGVkIGxpYnJhcmllcyBpbiB0aGUgZ2l2ZW5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWNrYWdlIGJ1aWxkIGRpcmVjdG9yeSBmaXJzdC5cbiIKKyIgIC12ICAgICAgICAgICAgICAgICAgICAgICBlbmFibGUgdmVyYm9zZSBtb2RlIChjYW4gYmUgdXNlZCBtdWx0aXBsZSAiCisidGltZXMpLlxuIgorIiAgLS1pZ25vcmUtbWlzc2luZy1pbmZvICAgIGRvbid0IGZhaWwgaWYgZGVwZW5kZW5jeSBpbmZvcm1hdGlvbiBjYW4ndCBiZSAiCisiZm91bmQuXG4iCisiICAtLXdhcm5pbmdzPTx2YWx1ZT4gICAgICAgZGVmaW5lIHNldCBvZiBhY3RpdmUgd2FybmluZ3MgKHNlZSBtYW51YWwgcGFnZSkuXG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgY2hhbmdlIHRoZSBhZG1pbmlzdHJhdGl2ZSBkaXJlY3RvcnkuXG4iCisiICAtaCwgLS1oZWxwICAgICAgICAgICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZS5cbiIKKyIgICAgICAtLXZlcnNpb24gICAgICAgICAgICBzaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIgorIkRlcGVuZGVuY3kgZmllbGRzIHJlY29nbmlzZWQgYXJlOlxuIgorIiAgJXNcbiIKK21zZ3N0ciAiIgorIkFudsOkbmRuaW5nOiAlcyBbPGZsYWdnYT4gLi4uXSA8Ymluw6RyPnwtZTxiaW7DpHI+IFs8ZmxhZ2dhPiAuLi5dXG4iCisiXG4iCisiUG9zaXRpb25zYmVyb2VuZGUgZmxhZ2dvciAob3JkbmluZ2VuIGhhciBiZXR5ZGVsc2UpOlxuIgorIiAgPGJpbsOkcj4gICAgICAgICAgICAgICAgICB0YSBtZWQgYmVyb2VuZGVuIGbDtnIgPGJpbsOkcj4sXG4iCisiICAtZTxiaW7DpHI+ICAgICAgICAgICAgICAgIChhbnbDpG5kIC1lIG9tIDxiaW7DpHI+IGLDtnJqYXIgbWVkIFwiLVwiKVxuIgorIiAgLWQ8YmVyb2VuZGVmw6RsdD4gICAgICAgICBuw6RzdGEgYmluw6RyKGVyKSBzw6R0dGVyIHNobGliczo8YmVyb2VuZGVmw6RsdD4uXG4iCisiXG4iCisiRmxhZ2dvcjpcbiIKKyIgIC1wPHZhcm5hbW5wcmVmaXg+ICAgICAgICBzw6R0dCA8dmFybmFtbnByZWZpeD46KiBpc3TDpGxsZXQgZsO2ciBzaGxpYnM6Ki5cbiIKKyIgIC1PICAgICAgICAgICAgICAgICAgICAgICBza3JpdiB2YXJpYWJlbGluc3TDpGxsbmluZ2FyIHRpbGwgc3RhbmRhcmQgdXQuXG4iCisiICAtTDxsb2thbHNobGlic2ZpbD4gICAgICAgc2hsaWJzLcO2dmVyc3R5cm5pbmdzZmlsLCBpbnRlIGRlYmlhbi9zaGxpYnMuIgorImxvY2FsLlxuIgorIiAgLVQ8dmFybGlzdGZpbD4gICAgICAgICAgIHVwcGRhdGVyYSB2YXJpYWJsZXIgaMOkciwgaW50ZSBkZWJpYW4vc3Vic3R2YXJzLlxuIgorIiAgLXQ8dHlwPiAgICAgICAgICAgICAgICAgIHPDpHR0IHBha2V0dHlwIChzdGFuZGFyZCDDpHIgZGViKS5cbiIKKyIgIC14PHBha2V0PiAgICAgICAgICAgICAgICB1dGVzbHV0IGV0dCBwYWtldCBmcsOlbiBza2FwYWRlIGJlcm9lbmRlbi5cbiIKKyIgIC1TPHBrdGJ5Z2drYXQ+ICAgICAgICAgICBzw7ZrIGVmdGVyIG7DtmR2w6RuZGlnYSBiaWJsaW90ZWsgaSBkZW4gZ2l2bmFcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWtldGJ5Z2drYXRhbG9nZW4gZsO2cnN0LlxuIgorIiAgLXYgICAgICAgICAgICAgICAgICAgICAgIGFrdGl2ZXJhIHByYXRzYW10IGzDpGdlIChrYW4gYW5nZXMgZmxlcmEgZ8OlbmdlcikuXG4iCisiICAtLWlnbm9yZS1taXNzaW5nLWluZm8gICAgbWlzc2x5Y2thcyBpbnRlIG9tIGJlcm9lbmRlaW5mb3JtYXRpb25lbiBpbnRlICIKKyJoaXR0YXMuXG4iCisiICAtLXdhcm5pbmdzPTx2w6RyZGU+ICAgICAgIGFuZ2UgdXBwc8OkdG5pbmcgYWt0aXZhIHZhcm5pbmdhciAoc2UgIgorIm1hbnVhbHNpZGEpLlxuIgorIiAgLS1hZG1pbmRpcj08a2F0YWxvZz4gICAgIMOkbmRyYSBkZW4gYWRtaW5pc3RyYXRpdmEga2F0YWxvZ2VuLlxuIgorIiAgLWgsIC0taGVscCAgICAgICAgICAgICAgIHZpc2EgZGV0dGEgaGrDpGxwbWVkZGVsYW5kZS5cbiIKKyIgICAgICAtLXZlcnNpb24gICAgICAgICAgICB2aXNhIHZlcnNpb25zbnVtbWVyLlxuIgorIlxuIgorIkJlcm9lbmRlZsOkbHQgc29tIHN0w7ZkcyDDpHI6XG4iCisiICAlc1xuIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjY3NworIywgcGVybC1mb3JtYXQKK21zZ2lkICJDYW4ndCBleHRyYWN0IG5hbWUgYW5kIHZlcnNpb24gZnJvbSBsaWJyYXJ5IG5hbWUgYCVzJyIKK21zZ3N0ciAiS2FuIGludGUgZXh0cmFoZXJhIG5hbW4gb2NoIHZlcnNpb24gZnLDpW4gYmlibGlvdGVrc25hbW5ldCBcIiVzXCIiCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6Njg0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBvcGVuIHNoYXJlZCBsaWJzIGluZm8gZmlsZSBgJXMnIgorbXNnc3RyICJrdW5kZSBpbnRlIMO2cHBuYSBpbmZvcm1hdGlvbnNmaWwgZsO2ciBkZWxhZGUgYmlibGlvdGVrIFwiJXNcIiIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo2OTAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAic2hhcmVkIGxpYnMgaW5mbyBmaWxlIGAlcycgbGluZSAlZDogYmFkIGxpbmUgYCVzJyIKK21zZ3N0ciAiIgorImluZm9ybWF0aW9uc2ZpbGVuIGbDtnIgZGVsYWRlIGJpYmxpb3RlayBcIiVzXCIgcmFkICVkOiBmZWxha3RpZyByYWQgXCIlc1wiIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjc0OQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgb3BlbiBmaWxlICVzIgorbXNnc3RyICJrYW4gaW50ZSDDtnBwbmEgZmlsZW4gJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1zaGxpYmRlcHMucGw6NzgzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyIkT1JJR0lOIGlzIHVzZWQgaW4gUlBBVEggb2YgJXMgYW5kIHRoZSBjb3JyZXNwb25kaW5nIGRpcmVjdG9yeSBjb3VsZCBub3QgYmUgIgorImlkZW50aWZpZWQgZHVlIHRvIGxhY2sgb2YgREVCSUFOIHN1Yi1kaXJlY3RvcnkgaW4gdGhlIHJvb3Qgb2YgcGFja2FnZSdzICIKKyJidWlsZCB0cmVlIgorbXNnc3RyICIiCisiJE9SSUdJTiBhbnbDpG5kcyBpIFJQQVRIIGbDtnIgJXMgb2NoIG1vdHN2YXJhbmRlIGthdGFsb2cga3VuZGUgaW50ZSAiCisiaWRlbnRpZmllcmFzIHDDpSBncnVuZCBhdiBERUJJQU4tdW5kZXJrYXRhbG9nZW4gc2FrbmFzIGkgcm90ZW4gYXYgcGFrZXRldHMgIgorImJ5Z2d0csOkZCIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo4NDgKK21zZ2lkICJkaXZlcnNpb25zIGludm9sdmVkIC0gb3V0cHV0IG1heSBiZSBpbmNvcnJlY3QiCittc2dzdHIgIm9tZGlyaWdlcmluZ2FyIGZpbm5zIC0gdXRkYXRhIGthbiB2YXJhIGZlbGFrdGlnYSIKKworIzogc2NyaXB0cy9kcGtnLXNobGliZGVwcy5wbDo4NTAKK21zZ2lkICJ3cml0ZSBkaXZlcnNpb24gaW5mbyB0byBzdGRlcnIiCittc2dzdHIgInNrcml2IG9tZGlyaWdlcmluZ3NpbmZvcm1hdGlvbiBww6Ugc3RhbmRhcmQgZmVsIgorCisjOiBzY3JpcHRzL2Rwa2ctc2hsaWJkZXBzLnBsOjg1NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmtub3duIG91dHB1dCBmcm9tIGRwa2cgLS1zZWFyY2g6ICclcyciCittc2dzdHIgIm9rw6RuZGEgdXRkYXRhIGZyw6VuIGRwa2cgLS1zZWFyY2g6IFwiJXNcIiIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDoxMDQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgbmVlZHMgYSBkaXJlY3RvcnkiCittc2dzdHIgIiVzIGJlaMO2dmVyIGVuIGthdGFsb2ciCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6MTEwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzdGF0IGRpcmVjdG9yeSAlcyIKK21zZ3N0ciAia2FuIGludGUgdGEgc3RhdHVzIHDDpSBrYXRhbG9nZW4gJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6MTEyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImRpcmVjdG9yeSBhcmd1bWVudCAlcyBpcyBub3QgYSBkaXJlY3RvcnkiCittc2dzdHIgImthdGFsb2dhcmd1bWVudGV0ICVzIMOkciBpbnRlIGVuIGthdGFsb2ciCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6MTE3IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo0NzYKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo0Nzggc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjQ4MAorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjQ4MgorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2J6ci5wbToxMTEKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9ienIucG06MTM0CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvYnpyLnBtOjE5OAorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2J6ci5wbToyMDQKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9naXQucG06MTA0CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvZ2l0LnBtOjE0MworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2dpdC5wbToxNTUKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9naXQucG06MTc0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBjaGRpciB0byBgJXMnIgorbXNnc3RyICJrYW4gaW50ZSBieXRhIGthdGFsb2cgdGlsbCBcIiVzXCIiCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6MTM1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVzaW5nIG9wdGlvbnMgZnJvbSAlczogJXMiCittc2dzdHIgImFudsOkbmRlciBmbGFnZ29yIGZyw6VuICVzOiAlcyIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDoxNTAgc2NyaXB0cy9EcGtnL0NvbXByZXNzaW9uLnBtOjE3MworIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgYSBzdXBwb3J0ZWQgY29tcHJlc3Npb24iCittc2dzdHIgIiVzIMOkciBpbnRlIGVuIGtvbXByaW1lcmluZyBzb20gc3TDtmRzIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjE1NiBzY3JpcHRzL0Rwa2cvQ29tcHJlc3Npb24ucG06MjAyCisjOiBzY3JpcHRzL0Rwa2cvQ29tcHJlc3Npb24vUHJvY2Vzcy5wbTo4NgorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgYSBjb21wcmVzc2lvbiBsZXZlbCIKK21zZ3N0ciAiJXMgw6RyIGludGUgZW4ga29tcHJpbWVyaW5nc25pdsOlIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjIxNAorbXNnaWQgIiIKKyJuZWVkIGEgY29tbWFuZCAoLXgsIC1iLCAtLWJlZm9yZS1idWlsZCwgLS1hZnRlci1idWlsZCwgLS1wcmludC1mb3JtYXQsIC0tIgorImNvbW1pdCkiCittc2dzdHIgIiIKKyJiZWjDtnZlciBldHQga29tbWFuZG8gKC14LCAtYiwgLS1iZWZvcmUtYnVpbGQsIC0tYWZ0ZXItYnVpbGQsIC0tcHJpbnQtZm9ybWF0LCAiCisiLS1jb21taXQpIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjIzOAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBkb2Vzbid0IGNvbnRhaW4gYW55IGluZm9ybWF0aW9uIGFib3V0IHRoZSBzb3VyY2UgcGFja2FnZSIKK21zZ3N0ciAiJXMgaW5uZWjDpWxsZXIgaW50ZSBuw6Vnb24gaW5mb3JtYXRpb24gb20ga8OkbGxrb2RzcGFrZXRldCIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDoyODMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiYCVzJyBpcyBub3QgYSBsZWdhbCBhcmNoaXRlY3R1cmUgc3RyaW5nIgorbXNnc3RyICJcIiVzXCIgw6RyIGludGUgZW4gZ2lsdGlnIGFya2l0ZWt0dXJzdHLDpG5nIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjI4NgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJhcmNoaXRlY3R1cmUgJXMgb25seSBhbGxvd2VkIG9uIGl0cyBvd24gKGxpc3QgZm9yIHBhY2thZ2UgJXMgaXMgYCVzJykiCittc2dzdHIgImFya2l0ZWt0dXIgJXMgdGlsbMOldHMgaW50ZSBlbnNhbXQgKGxpc3RhbiBmw7ZyIHBha2V0ZXQgJXMgw6RyIFwiJXNcIikiCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6MzAxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGRvZXNuJ3QgbGlzdCBhbnkgYmluYXJ5IHBhY2thZ2UiCittc2dzdHIgIiVzIHLDpGtuYXIgaW50ZSB1cHAgbsOlZ3JhIGJpbsOkcnBha2V0IgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjM0MyBzY3JpcHRzL0Rwa2cvQnVpbGRGbGFncy5wbToyNzAKKyM6IHNjcmlwdHMvRHBrZy9Db21wcmVzc2lvbi9GaWxlSGFuZGxlLnBtOjQwMQorIzogc2NyaXB0cy9EcGtnL0ludGVyZmFjZS9TdG9yYWJsZS5wbTo4NyBzY3JpcHRzL0Rwa2cvU2hsaWJzL09iamR1bXAucG06MTIyCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06Mjc3IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo0MjUKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo1NjEKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbToxMTIKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbToyODYKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbTozNDgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IHJlYWQgJXMiCittc2dzdHIgImthbiBpbnRlIGzDpHNhICVzIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjM1MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJubyBzb3VyY2UgZm9ybWF0IHNwZWNpZmllZCBpbiAlcywgc2VlIGRwa2ctc291cmNlKDEpIgorbXNnc3RyICJrw6RsbGtvZHNmb3JtYXQgZWogYW5naXZldCBpICVzLCBzZSBkcGtnLXNvdXJjZSgxKSIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDozNzgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2FuJ3QgYnVpbGQgd2l0aCBzb3VyY2UgZm9ybWF0ICclcyc6ICVzIgorbXNnc3RyICJrYW4gaW50ZSBieWdnYSBtZWQga8OkbGxrb2RzZm9ybWF0ZXQgXCIlc1wiOiAlcyIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDozODEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidXNpbmcgc291cmNlIGZvcm1hdCBgJXMnIgorbXNnc3RyICJhbnbDpG5kZXIga8OkbGxrb2RzZm9ybWF0ZXQgXCIlc1wiIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjM4OCBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MzAxCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MzQ2IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo1NDEKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9ienIucG06MTUyCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvbmF0aXZlLnBtOjg0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImJ1aWxkaW5nICVzIGluICVzIgorbXNnc3RyICJieWdnZXIgJXMgaSAlcyIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDozOTkKK21zZ2lkICIteCBuZWVkcyBhdCBsZWFzdCBvbmUgYXJndW1lbnQsIHRoZSAuZHNjIgorbXNnc3RyICIteCBiZWjDtnZlciDDpXRtaW5zdG9uZSBldHQgYXJndW1lbnQsIC5kc2MtZmlsZW4iCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6NDAyCittc2dpZCAiLXggdGFrZXMgbm8gbW9yZSB0aGFuIHR3byBhcmd1bWVudHMiCittc2dzdHIgIi14IHRhciBtYXhpbWFsdCB0dsOlIGFyZ3VtZW50IgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjQwNgorbXNnaWQgIi14IG5lZWRzIHRoZSAuZHNjIGZpbGUgYXMgZmlyc3QgYXJndW1lbnQsIG5vdCBhIGRpcmVjdG9yeSIKK21zZ3N0ciAiLXggbcOlc3RlIGhhIC5kc2MtZmlsZW4gc29tIGbDtnJzdGEgYXJndW1lbnQsIGludGUgZW4ga2F0YWxvZyIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDo0MjIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5wYWNrIHRhcmdldCBleGlzdHM6ICVzIgorbXNnc3RyICJtw6VsIGbDtnIgdXBwYWNrbmluZyBmaW5ucyByZWRhbjogJXMiCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6NDMyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGRvZXNuJ3QgY29udGFpbiBhIHZhbGlkIE9wZW5QR1Agc2lnbmF0dXJlIgorbXNnc3RyICIlcyBpbm5laMOlbGxlciBpbnRlIGVuIGdpbHRpZyBPcGVuUEdQLXNpZ25hdHVyIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjQzNAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJleHRyYWN0aW5nIHVuc2lnbmVkIHNvdXJjZSBwYWNrYWdlICglcykiCittc2dzdHIgImV4dHJhaGVyYXIgb3NpZ25lcmF0IGvDpGxsa29kc3Bha2V0ICglcykiCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6NDQxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImV4dHJhY3RpbmcgJXMgaW4gJXMiCittc2dzdHIgImV4dHJhaGVyYXIgJXMgaSAlcyIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDo0NDkKK21zZ2lkICJvbmx5IG9uZSBvZiAteCwgLWIgb3IgLS1wcmludC1mb3JtYXQgYWxsb3dlZCwgYW5kIG9ubHkgb25jZSIKK21zZ3N0ciAiZW5kYXN0IGVuIGF2IC14LCAtYiBvY2ggLS1wcmludC1mb3JtYXQgdGlsbMOldHMsIG9jaCBlbmRhc3QgZW4gZ8OlbmciCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6NDU3Cittc2dpZCAiIgorIlxuIgorIkNvcHlyaWdodCAoQykgMTk5NiBJYW4gSmFja3NvblxuIgorIkNvcHlyaWdodCAoQykgMTk5NyBLbGVlIERpZW5lc1xuIgorIkNvcHlyaWdodCAoQykgMjAwOCBSYXBoYWVsIEhlcnR6b2ciCittc2dzdHIgIiIKKyJcbiIKKyJDb3B5cmlnaHQgwqkgMTk5NiBJYW4gSmFja3NvblxuIgorIkNvcHlyaWdodCDCqSAxOTk3IEtsZWUgRGllbmVzXG4iCisiQ29weXJpZ2h0IMKpIDIwMDggUmFwaGFlbCBIZXJ0em9nIgorCisjOiBzY3JpcHRzL2Rwa2ctc291cmNlLnBsOjQ3MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIDxjb21tYW5kPlxuIgorIlxuIgorIkNvbW1hbmRzOlxuIgorIiAgLXggPGZpbGVuYW1lPi5kc2MgWzxvdXRwdXQtZGlyPl1cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBleHRyYWN0IHNvdXJjZSBwYWNrYWdlLlxuIgorIiAgLWIgPGRpcj4gICAgICAgICAgICAgICAgIGJ1aWxkIHNvdXJjZSBwYWNrYWdlLlxuIgorIiAgLS1wcmludC1mb3JtYXQgPGRpcj4gICAgIHByaW50IHRoZSBzb3VyY2UgZm9ybWF0IHRoYXQgd291bGQgYmVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2VkIHRvIGJ1aWxkIHRoZSBzb3VyY2UgcGFja2FnZS5cbiIKKyIgIC0tY29tbWl0IFs8ZGlyPiBbPHBhdGNoLW5hbWU+XV1cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBzdG9yZSB1cHN0cmVhbSBjaGFuZ2VzIGluIGEgbmV3IHBhdGNoLiIKK21zZ3N0ciAiIgorIkFudsOkbmRuaW5nOiAlcyBbPGZsYWdnYT4gLi4uXSA8a29tbWFuZG8+XG4iCisiXG4iCisiS29tbWFuZG9uOlxuIgorIiAgLXggPGZpbG5hbW4+LmRzYyBbPHV0ZGF0YWthdGFsb2c+XVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4dHJhaGVyYSBrw6RsbGtvZHNwYWtldC5cbiIKKyIgIC1iIDxrYXQ+ICAgICAgICAgICAgICAgICBieWdnIGvDpGxsa29kc3Bha2V0LlxuIgorIiAgLS1wcmludC1mb3JtYXQgPGthdD4gICAgIHZpc2Ega8OkbGxrb2RzZm9ybWF0ZXQgc29tIHNrdWxsZSBhbnbDpG5kYXNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBmw7ZyIGF0dCBieWdnYSBrw6RsbGtvZHNwYWtldGV0LlxuIgorIiAgLS1jb21taXQgWzxrYXQ+IFs8cGF0Y2gtbmFtbj5dXVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHNwYXJhIHVwcHN0csO2bXPDpG5kcmluZ2FyIHNvbSBlbiBueSBwYXRjaC4iCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6NDgxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJCdWlsZCBvcHRpb25zOlxuIgorIiAgLWM8Y29udHJvbGZpbGU+ICAgICAgICAgIGdldCBjb250cm9sIGluZm8gZnJvbSB0aGlzIGZpbGUuXG4iCisiICAtbDxjaGFuZ2Vsb2dmaWxlPiAgICAgICAgZ2V0IHBlci12ZXJzaW9uIGluZm8gZnJvbSB0aGlzIGZpbGUuXG4iCisiICAtRjxjaGFuZ2Vsb2dmb3JtYXQ+ICAgICAgZm9yY2UgY2hhbmdlIGxvZyBmb3JtYXQuXG4iCisiICAtVjxuYW1lPj08dmFsdWU+ICAgICAgICAgc2V0IGEgc3Vic3RpdHV0aW9uIHZhcmlhYmxlLlxuIgorIiAgLVQ8dmFybGlzdGZpbGU+ICAgICAgICAgIHJlYWQgdmFyaWFibGVzIGhlcmUuXG4iCisiICAtRDxmaWVsZD49PHZhbHVlPiAgICAgICAgb3ZlcnJpZGUgb3IgYWRkIGEgLmRzYyBmaWVsZCBhbmQgdmFsdWUuXG4iCisiICAtVTxmaWVsZD4gICAgICAgICAgICAgICAgcmVtb3ZlIGEgZmllbGQuXG4iCisiICAtcSAgICAgICAgICAgICAgICAgICAgICAgcXVpZXQgbW9kZS5cbiIKKyIgIC1pWzxyZWdleHA+XSAgICAgICAgICAgICBmaWx0ZXIgb3V0IGZpbGVzIHRvIGlnbm9yZSBkaWZmcyBvZlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGRlZmF1bHRzIHRvOiAnJXMnKS5cbiIKKyIgIC1JWzxwYXR0ZXJuPl0gICAgICAgICAgICBmaWx0ZXIgb3V0IGZpbGVzIHdoZW4gYnVpbGRpbmcgdGFyYmFsbHNcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChkZWZhdWx0cyB0bzogJXMpLlxuIgorIiAgLVo8Y29tcHJlc3Npb24+ICAgICAgICAgIHNlbGVjdCBjb21wcmVzc2lvbiB0byB1c2UgKGRlZmF1bHRzIHRvICclcycsXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdXBwb3J0ZWQgYXJlOiAlcykuXG4iCisiICAtejxsZXZlbD4gICAgICAgICAgICAgICAgY29tcHJlc3Npb24gbGV2ZWwgdG8gdXNlIChkZWZhdWx0cyB0byAnJWQnLFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3VwcG9ydGVkIGFyZTogJzEnLSc5JywgJ2Jlc3QnLCAnZmFzdCcpIgorbXNnc3RyICIiCisiQnlnZ2ZsYWdnb3I6XG4iCisiICAtYzxzdHlyZmlsPiAgICAgICAgICAgICAgaMOkbXRhIHN0eXJpbmZvIGZyw6VuIGZpbGVuLlxuIgorIiAgLWw8w6RuZHJpbmdzbG9nZ2ZpbD4gICAgICBow6RtdGEgcGVyIHZlcnNpb24taW5mb3JtYXRpb24gZnLDpW4gZGVubmEgZmlsLlxuIgorIiAgLUY8w6RuZHJpbmdzbG9nZ2Zvcm1hdD4gICB0dmluZ2Egw6RuZHJpbmdzbG9nZ2Zvcm1hdC5cbiIKKyIgIC1WPG5hbW4+PTx2w6RyZGU+ICAgICAgICAgc8OkdHQgZW4gc3Vic3RpdHVlcmluZ3N2YXJpYWJlbC5cbiIKKyIgIC1UPHZhcmxpc3RmaWw+ICAgICAgICAgICBsw6RzIHZhcmlhYmxlciBow6RyLlxuIgorIiAgLUQ8ZsOkbHQ+PTx2w6RyZGU+ICAgICAgICAgw7Z2ZXJzdHlyIGVsbGVyIGzDpGdnIHRpbGwgZXR0IC5kc2MtZsOkbHQgb2NoICIKKyJ2w6RyZGUuXG4iCisiICAtVTxmw6RsdD4gICAgICAgICAgICAgICAgIHRhIGJvcnQgZXR0IGbDpGx0LlxuIgorIiAgLXEgICAgICAgICAgICAgICAgICAgICAgIHR5c3QgbMOkZ2UuXG4iCisiICAtaVs8cmVndXR0cj5dICAgICAgICAgICAgZmlsdHJlcmEgdXQgZmlsZXIgYXR0IGlnbm9yZXJhIGRpZmZhciBmcsOlblxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHN0YW5kYXJkdsOkcmRlOiBcIiVzXCIpLlxuIgorIiAgLUlbPG3Dtm5zdGVyPl0gICAgICAgICAgICBmaWx0cmVyYSB1dCBmaWxlciBuw6RyIHRhcmJvbGwgYnlnZ3MuXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoc3RhbmRhcmR2w6RyZGU6IFwiJXNcIikuXG4iCisiICAtWjxrb21wcmltZXJpbmc+ICAgICAgICAgdsOkbGoga29tcHJpbWVyaW5nIHNvbSBza2FsbCBhbnbDpG5kYXMgIgorIihzdGFuZGFyZHbDpHJkZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIMOkciBcIiVzXCIsIHbDpHJkZW4gc29tIHN0w7ZkcyDDpHI6XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgJXMpLlxuIgorIiAgLXo8bml2w6U+ICAgICAgICAgICAgICAgICBrb21wcmltZXJpbmdzbml2w6UgYXR0IGFudsOkbmRhIChzdGFuZGFyZHbDpHJkZSDDpHJcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICBcIiVkXCIsIHbDpHJkZW4gc29tIHN0w7ZkcyDDpHI6IFwiMVwiLVwiOVwiLCBcImJlc3QiCisiXCIsIFwiZmFzdFwiKSIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDo0OTkKK21zZ2lkICIiCisiRXh0cmFjdCBvcHRpb25zOlxuIgorIiAgLS1uby1jb3B5ICAgICAgICAgICAgICAgIGRvbid0IGNvcHkgLm9yaWcgdGFyYmFsbHNcbiIKKyIgIC0tbm8tY2hlY2sgICAgICAgICAgICAgICBkb24ndCBjaGVjayBzaWduYXR1cmUgYW5kIGNoZWNrc3VtcyBiZWZvcmUgIgorInVucGFja2luZ1xuIgorIiAgLS1yZXF1aXJlLXZhbGlkLXNpZ25hdHVyZSBhYm9ydCBpZiB0aGUgcGFja2FnZSBkb2Vzbid0IGhhdmUgYSB2YWxpZCAiCisic2lnbmF0dXJlIgorbXNnc3RyICIiCisiRmxhZ2dvciBmw7ZyIHVwcGFja25pbmc6XG4iCisiICAtLW5vLWNvcHkgICAgICAgICAgICAgICAga29waWVyYSBpbnRlIC5vcmlnLXRhcmJvbGxhclxuIgorIiAgLS1uby1jaGVjayAgICAgICAgICAgICAgIGtvbGxhIGludGUgc2lnbmF0dXIgb2NoIGtvbnRyb2xsc3VtbWEgZsO2cmUgIgorInVwcGFja25pbmdcbiIKKyIgIC0tcmVxdWlyZS12YWxpZC1zaWduYXR1cmUgYXZicnl0IG9tIHBha2V0ZXQgc2FrbmFyIGdpbHRpZyBzaWduYXR1ciIKKworIzogc2NyaXB0cy9kcGtnLXNvdXJjZS5wbDo1MDQKK21zZ2lkICIiCisiR2VuZXJhbCBvcHRpb25zOlxuIgorIiAgLWgsIC0taGVscCAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAgICAgLS12ZXJzaW9uICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi4iCittc2dzdHIgIiIKKyJBbGxtw6RubmEgZmxhZ2dvcjpcbiIKKyIgIC1oLCAtLWhlbHAgICAgICAgICAgICAgICB2aXNhIGRldHRhIGhqw6RscG1lZGRlbGFuZGUuXG4iCisiICAgICAgLS12ZXJzaW9uICAgICAgICAgICAgdmlzYSB2ZXJzaW9uc251bW1lci4iCisKKyM6IHNjcmlwdHMvZHBrZy1zb3VyY2UucGw6NTA4Cittc2dpZCAiIgorIk1vcmUgb3B0aW9ucyBhcmUgYXZhaWxhYmxlIGJ1dCB0aGV5IGRlcGVuZCBvbiB0aGUgc291cmNlIHBhY2thZ2UgZm9ybWF0LlxuIgorIlNlZSBkcGtnLXNvdXJjZSgxKSBmb3IgbW9yZSBpbmZvLiIKK21zZ3N0ciAiIgorIll0dGVybGlnYXJlIGZsYWdnb3IgZmlubnMsIG1lbiBkZSBiZXJvciBww6Uga8OkbGxrb2RzcGFrZXRmb3JtYXRldC5cbiIKKyJTZSBkcGtnLXNvdXJjZSgxKSBmw7ZyIHZpZGFyZSBpbmZvcm1hdGlvbi4iCisKKyM6IHNjcmlwdHMvY2hhbmdlbG9nL2RlYmlhbi5wbDozNgorbXNnaWQgIiIKKyJcbiIKKyJDb3B5cmlnaHQgKEMpIDE5OTYgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDA1LDIwMDcgRnJhbmsgTGljaHRlbmhlbGQuIgorbXNnc3RyICIiCisiXG4iCisiQ29weXJpZ2h0IMKpIDE5OTYgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IMKpIDIwMDUsMjAwNyBGcmFuayBMaWNodGVuaGVsZC4iCisKKyM6IHNjcmlwdHMvY2hhbmdlbG9nL2RlYmlhbi5wbDo0NworIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiVXNhZ2U6ICVzIFs8b3B0aW9uPi4uLl0gWzxjaGFuZ2Vsb2dmaWxlPl1cbiIKKyJcbiIKKyJPcHRpb25zOlxuIgorIiAgICAtLWhlbHAsIC1oICAgICAgICAgICAgICAgICAgcHJpbnQgdXNhZ2UgaW5mb3JtYXRpb25cbiIKKyIgICAgLS12ZXJzaW9uLCAtViAgICAgICAgICAgICAgIHByaW50IHZlcnNpb24gaW5mb3JtYXRpb25cbiIKKyIgICAgLS1sYWJlbCwgLWwgPGZpbGU+ICAgICAgICAgIG5hbWUgb2YgdGhlIGNoYW5nZWxvZyBmaWxlIHRvXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2UgaW4gZXJyb3IgbWVzc2FnZXNcbiIKKyIgICAgLS1maWxlIDxmaWxlPiAgICAgICAgICAgICAgIGNoYW5nZWxvZyBmaWxlIHRvIHBhcnNlLCBkZWZhdWx0c1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG8gJy0nIChzdGFuZGFyZCBpbnB1dClcbiIKKyIgICAgLS1mb3JtYXQgPG91dHB1dGZvcm1hdD4gICAgIHNlZSBtYW4gcGFnZSBmb3IgbGlzdCBvZiBhdmFpbGFibGVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG91dHB1dCBmb3JtYXRzLCBkZWZhdWx0cyB0byAnZHBrZydcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvciBjb21wYXRpYmlsaXR5IHdpdGggZHBrZy1kZXZcbiIKKyIgICAgLS1zaW5jZSwgLXMsIC12IDx2ZXJzaW9uPiAgIGluY2x1ZGUgYWxsIGNoYW5nZXMgbGF0ZXIgdGhhbiB2ZXJzaW9uXG4iCisiICAgIC0tdW50aWwsIC11IDx2ZXJzaW9uPiAgICAgICBpbmNsdWRlIGFsbCBjaGFuZ2VzIGVhcmxpZXIgdGhhbiB2ZXJzaW9uXG4iCisiICAgIC0tZnJvbSwgLWYgPHZlcnNpb24+ICAgICAgICBpbmNsdWRlIGFsbCBjaGFuZ2VzIGVxdWFsIG9yIGxhdGVyXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGFuIHZlcnNpb25cbiIKKyIgICAgLS10bywgLXQgPHZlcnNpb24+ICAgICAgICAgIGluY2x1ZGUgYWxsIGNoYW5nZXMgdXAgdG8gb3IgZXF1YWxcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoYW4gdmVyc2lvblxuIgorIiAgICAtLWNvdW50LCAtYywgLW4gPG51bWJlcj4gICAgaW5jbHVkZSA8bnVtYmVyPiBlbnRyaWVzIGZyb20gdGhlIHRvcFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG9yIHRoZSB0YWlsIGlmIDxudW1iZXI+IGlzIGxvd2VyIHRoYW4gMClcbiIKKyIgICAgLS1vZmZzZXQsIC1vIDxudW1iZXI+ICAgICAgIGNoYW5nZSB0aGUgc3RhcnRpbmcgcG9pbnQgZm9yIC0tY291bnQsXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb3VudGVkIGZyb20gdGhlIHRvcCAob3IgdGhlIHRhaWwgaWZcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxudW1iZXI+IGlzIGxvd2VyIHRoYW4gMClcbiIKKyIgICAgLS1hbGwgICAgICAgICAgICAgICAgICAgICAgIGluY2x1ZGUgYWxsIGNoYW5nZXNcbiIKK21zZ3N0ciAiIgorIkFudsOkbmRuaW5nOiAlcyBbPGZsYWdnYT4uLi5dIFs8w6RuZHJpbmdzbG9nZ2ZpbD5dXG4iCisiXG4iCisiRmxhZ2dvcjpcbiIKKyIgICAgLS1oZWxwLCAtaCAgICAgICAgICAgICAgICAgIHZpc2EgZGV0dGEgaGrDpGxwbWVkZGVsYW5kZW4gICAgLS12ZXJzaW9uLCAtIgorIlYgICAgICAgICAgICAgICB2aXNhIHZlcnNpb25zaW5mb3JtYXRpb25cbiIKKyIgICAgLS1sYWJlbCwgLWwgPGZpbD4gICAgICAgICAgIG5hbW4gcMOlIMOkbmRyaW5nc2xvZ2dmaWwgYXR0IGFudsOkbmRhXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpIGZlbG1lZGRlbGFuZGVuXG4iCisiICAgIC0tZmlsZSA8ZmlsPiAgICAgICAgICAgICAgICDDpG5kcmluZ3Nsb2dnZmlsIGF0dCB0b2xrYSwgc3RhbmRhcmRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIMOkciBcIi1cIiAoc3RhbmRhcmQgaW4pXG4iCisiICAgIC0tZm9ybWF0IDx1dGRhdGFmb3JtYXQ+ICAgICBzZSBtYW51YWxzaWRhbiBmw7ZyIHRpbGxnw6RuZ2xpZ2FcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHV0ZGF0YWZvcm1hdCwgc3RhbmRhcmQgw6RyIFwiZHBrZ1wiXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmw7ZyIGtvbXBhdGliaWxpdGV0IG1lZCBkcGtnLWRldlxuIgorIiAgICAtLXNpbmNlLCAtcywgLXYgPHZlcnNpb24+ICAgdGEgbWVkIGFsbGEgw6RuZHJpbmdhciBlZnRlciB2ZXJzaW9uXG4iCisiICAgIC0tdW50aWwsIC11IDx2ZXJzaW9uPiAgICAgICB0YSBtZWQgYWxsYSDDpG5kcmluZ2FyIGbDtnJlIHZlcnNpb25cbiIKKyIgICAgLS1mcm9tLCAtZiA8dmVyc2lvbj4gICAgICAgIHRhIG1lZCBhbGxhIMOkbmRyaW5nYXIgZnLDpW4gb2NoIG1lZFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmVyc2lvblxuIgorIiAgICAtLXRvLCAtdCA8dmVyc2lvbj4gICAgICAgICAgdGEgbWVkIGFsbGEgw6RuZHJpbmdhciB0aWxsIG9jaCBtZWRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZlcnNpb25cbiIKKyIgICAgLS1jb3VudCwgLWMsIC1uIDxhbnRhbD4gICAgIHRhIG1lZCA8YW50YWw+IHBvc3RlciBmcsOlbiBiw7ZyamFuXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZWxsZXIgc2x1dGV0IG9tIDxhbnRhbD4gw6RyIHVuZGVyIDApXG4iCisiICAgIC0tb2Zmc2V0LCAtbyA8YW50YWw+ICAgICAgICDDpG5kcmEgc3RhcnRwdW5rdCBmw7ZyIC0tY291bnQsIHLDpGtuYXRcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZyw6VuIGLDtnJqYW4gKGVsbGVyIHNsdXRldCBvbSA8YW50YWw+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDDpHIgdW5kZXIgMClcbiIKKyIgICAgLS1hbGwgICAgICAgICAgICAgICAgICAgICAgIHRhIG1lZCBhbGxhIMOkbmRyaW5nYXJcbiIKKworIzogc2NyaXB0cy9jaGFuZ2Vsb2cvZGViaWFuLnBsOjg2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIm91dHB1dCBmb3JtYXQgJXMgbm90IHN1cHBvcnRlZCIKK21zZ3N0ciAidXRkYXRhZm9ybWF0ZXQgJXMgc3TDtmRzIGludGUiCisKKyM6IHNjcmlwdHMvY2hhbmdlbG9nL2RlYmlhbi5wbDoxMTEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibW9yZSB0aGFuIG9uZSBmaWxlIHNwZWNpZmllZCAoJXMgYW5kICVzKSIKK21zZ3N0ciAibWVyIMOkbiBlbiBmaWwgYW5nYXZzICglcyBvY2ggJXMpIgorCisjOiBzY3JpcHRzL2NoYW5nZWxvZy9kZWJpYW4ucGw6MTM1IHNjcmlwdHMvRHBrZy9JbnRlcmZhY2UvU3RvcmFibGUucG06ODQKK21zZ2lkICI8c3RhbmRhcmQgaW5wdXQ+IgorbXNnc3RyICI8c3RhbmRhcmQgaW4+IgorCisjOiBzY3JpcHRzL2NoYW5nZWxvZy9kZWJpYW4ucGw6MTM2Cittc2dpZCAiZmF0YWwgZXJyb3Igb2NjdXJyZWQgd2hpbGUgcGFyc2luZyBpbnB1dCIKK21zZ3N0ciAiw7ZkZXNkaWdlcnQgZmVsIHZpZCB0b2xrbmluZyBhdiBpbmRhdGEiCisKKyM6IHNjcmlwdHMvY2hhbmdlbG9nL2RlYmlhbi5wbDoxMzkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZmF0YWwgZXJyb3Igb2NjdXJyZWQgd2hpbGUgcGFyc2luZyAlcyIKK21zZ3N0ciAiw7ZkZXNkaWdlcnQgZmVsIHZpZCB0b2xrbmluZyBhdiAlcyIKKworIzogc2NyaXB0cy9EcGtnL0FyY2gucG06ODYKK21zZ2lkICIiCisiQ291bGRuJ3QgZGV0ZXJtaW5lIGdjYyBzeXN0ZW0gdHlwZSwgZmFsbGluZyBiYWNrIHRvIGRlZmF1bHQgKG5hdGl2ZSAiCisiY29tcGlsYXRpb24pIgorbXNnc3RyICIiCisiS3VuZGUgaW50ZSBiZXN0w6RtbWEgZ2NjLXN5c3RlbXR5cCwgZmFsbGVyIHRpbGxiYWthIHDDpSBzdGFuZGFyZCAobG9rYWwgIgorImtvbXBpbGVyaW5nKSIKKworIzogc2NyaXB0cy9EcGtnL0FyY2gucG06OTUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIlVua25vd24gZ2NjIHN5c3RlbSB0eXBlICVzLCBmYWxsaW5nIGJhY2sgdG8gZGVmYXVsdCAobmF0aXZlIGNvbXBpbGF0aW9uKSIKK21zZ3N0ciAiIgorIk9rw6RuZCBnY2Mtc3lzdGVtdHlwICVzLCBmYWxsZXIgdGlsbGJha2EgcMOlIHN0YW5kYXJkIChsb2thbCBrb21waWxlcmluZykiCisKKyM6IHNjcmlwdHMvRHBrZy9CdWlsZEZsYWdzLnBtOjI3OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJsaW5lICVkIG9mICVzIG1lbnRpb25zIHVua25vd24gZmxhZyAlcyIKK21zZ3N0ciAicmFkICVkIGkgJXMgYW5nZXIgb2vDpG5kIGZsYWdnYSAlcyIKKworIzogc2NyaXB0cy9EcGtnL0J1aWxkRmxhZ3MucG06MjkxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImxpbmUgJWQgb2YgJXMgaXMgaW52YWxpZCwgaXQgaGFzIGJlZW4gaWdub3JlZC4iCittc2dzdHIgInJhZCAlZCBpICVzIMOkciBvZ2lsdGlnIG9jaCBoYXIgaWdub3JlcmF0cy4iCisKKyM6IHNjcmlwdHMvRHBrZy9CdWlsZE9wdGlvbnMucG06OTQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiaW52YWxpZCBmbGFnIGluICVzOiAlcyIKK21zZ3N0ciAiZmVsYWt0aWcgZmxhZ2dhIGkgJXM6ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29tcHJlc3Npb24vUHJvY2Vzcy5wbTo3MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgYSBzdXBwb3J0ZWQgY29tcHJlc3Npb24gbWV0aG9kIgorbXNnc3RyICIlcyDDpHIgaW50ZSBlbiBrb21wcmltZXJpbmdzbWV0b2Qgc29tIHN0w7ZkcyIKKworIzogc2NyaXB0cy9EcGtnL0NvbXByZXNzaW9uL1Byb2Nlc3MucG06MTIyCittc2dpZCAiRHBrZzo6Q29tcHJlc3Npb246OlByb2Nlc3MgY2FuIG9ubHkgc3RhcnQgb25lIHN1YnByb2Nlc3MgYXQgYSB0aW1lIgorbXNnc3RyICJEcGtnOjpDb21wcmVzc2lvbjo6UHJvY2VzcyBrYW4gYmFyYSBzdGFydGEgZW4gdW5kZXJwcm9jZXNzIMOldCBnw6VuZ2VuIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtOjE3MSBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtOjE3MworIzogc2NyaXB0cy9EcGtnL0Vycm9ySGFuZGxpbmcucG06NTkKK21zZ2lkICJ3YXJuaW5nIgorbXNnc3RyICJ2YXJuaW5nIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtOjE3MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiJXMobCVzKTogJXNcbiIKKyJMSU5FOiAlcyIKK21zZ3N0ciAiIgorIiVzKGwlcyk6ICVzXG4iCisiUkFEOiAlcyIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbToxNzMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMobCVzKTogJXMiCittc2dzdHIgIiVzKGwlcyk6ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtOjIyMQorbXNnaWQgIidvZmZzZXQnIHdpdGhvdXQgJ2NvdW50JyBoYXMgbm8gZWZmZWN0IgorbXNnc3RyICJcIm9mZnNldFwiIHV0YW4gXCJjb3VudFwiIGhhciBpbmdlbiBlZmZla3QiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06MjI5Cittc2dpZCAieW91IGNhbid0IGNvbWJpbmUgJ2NvdW50JyBvciAnb2Zmc2V0JyB3aXRoIGFueSBvdGhlciByYW5nZSBvcHRpb24iCittc2dzdHIgIiIKKyJkdSBrYW4gaW50ZSBrb21iaW5lcmEgXCJjb3VudFwiIGVsbGVyIFwib2Zmc2V0XCIgbWVkIGFuZHJhIGludGVydmFsbGZsYWdnb3IiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06MjM3Cittc2dpZCAieW91IGNhbiBvbmx5IHNwZWNpZnkgb25lIG9mICdmcm9tJyBhbmQgJ3NpbmNlJywgdXNpbmcgJ3NpbmNlJyIKK21zZ3N0ciAiZHUga2FuIGJhcmEgYW5nZSBlbiBhdiBcImZyb21cIiBvY2ggXCJzaW5jZVwiLCBhbnbDpG5kZXIgXCJzaW5jZVwiIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtOjI0MgorbXNnaWQgInlvdSBjYW4gb25seSBzcGVjaWZ5IG9uZSBvZiAndG8nIGFuZCAndW50aWwnLCB1c2luZyAndW50aWwnIgorbXNnc3RyICJkdSBrYW4gYmFyYSBhbmdlIGVuIGF2IFwidG9cIiBvY2ggXCJ1bnRpbFwiLCBhbnbDpG5kZXIgXCJ1bnRpbFwiIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtOjI1NCBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtOjI3MAorIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbToyODYgc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbTozMDIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJyVzJyBvcHRpb24gc3BlY2lmaWVzIG5vbi1leGlzdGluZyB2ZXJzaW9uIgorbXNnc3RyICJcIiVzXCItZmxhZ2dhbiBhbmdlciBlbiBpY2tlLWV4aXN0ZXJhbmRlIHZlcnNpb24iCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06MjU1IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06MzAzCittc2dpZCAidXNlIG5ld2VzdCBlbnRyeSB0aGF0IGlzIGVhcmxpZXIgdGhhbiB0aGUgb25lIHNwZWNpZmllZCIKK21zZ3N0ciAiYW52w6RuZCBkZW4gbnlhc3RlIHBvc3Qgc29tIMOkciB0aWRpZ2FyZSDDpG4gZGVuIGFuZ2l2bmEiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cucG06MjY0Cittc2dpZCAibm9uZSBmb3VuZCwgc3RhcnRpbmcgZnJvbSB0aGUgb2xkZXN0IGVudHJ5IgorbXNnc3RyICJoaXR0YWRlIGluZ2VuLCBiw7ZyamFyIGZyw6VuIGRlbiDDpGxkc3RhIHBvc3RlbiIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbToyNzEgc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbToyODcKK21zZ2lkICJ1c2Ugb2xkZXN0IGVudHJ5IHRoYXQgaXMgbGF0ZXIgdGhhbiB0aGUgb25lIHNwZWNpZmllZCIKK21zZ3N0ciAiYW52w6RuZCBkZW4gw6RsZHN0YSBwb3N0ZW4gc29tIMOkciBzZW5hcmUgw6RuIGRlbiBhbmdpdm5hIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtOjI4MSBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtOjI5NworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbTozMTIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibm8gc3VjaCBlbnRyeSBmb3VuZCwgaWdub3JpbmcgJyVzJyBwYXJhbWV0ZXIiCittc2dzdHIgImhpdHRhZGUgaW5nZW4gc8OlZGFuIHBvc3QsIGlnbm9yZXJhciBwYXJhbWV0ZXJuIFwiJXNcIiIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy5wbTozMTgKK21zZ2lkICInc2luY2UnIG9wdGlvbiBzcGVjaWZpZXMgbW9zdCByZWNlbnQgdmVyc2lvbiwgaWdub3JpbmciCittc2dzdHIgIlwic2luY2VcIi1mbGFnZ2FuIGFuZ2VyIGRlbiBzZW5hc3RlIHZlcnNpb25lbiwgaWdub3JlcmFyIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nLnBtOjMyMgorbXNnaWQgIid1bnRpbCcgb3B0aW9uIHNwZWNpZmllcyBvbGRlc3QgdmVyc2lvbiwgaWdub3JpbmciCittc2dzdHIgIlwidW50aWxcIi1mbGFnZ2FuIGFuZ2VyIGRlbiDDpGxkc3RhIHZlcnNpb25lbiwgaWdub3JlcmFyIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0RlYmlhbi5wbTo1NAorbXNnaWQgImZpcnN0IGhlYWRpbmciCittc2dzdHIgImbDtnJzdGEgcnVicmlrIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0RlYmlhbi5wbTo1NQorbXNnaWQgIm5leHQgaGVhZGluZyBvciBlb2YiCittc2dzdHIgIm7DpHN0YSBydWJyaWsgZWxsZXIgZmlsc2x1dCIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9EZWJpYW4ucG06NTYKK21zZ2lkICJzdGFydCBvZiBjaGFuZ2UgZGF0YSIKK21zZ3N0ciAiYsO2cmphbiBww6Ugw6RuZHJpbmdzZGF0YSIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9EZWJpYW4ucG06NTcKK21zZ2lkICJtb3JlIGNoYW5nZSBkYXRhIG9yIHRyYWlsZXIiCittc2dzdHIgIm1lciDDpG5kcmluZ3NkYXRhIGVsbGVyIGZvdCIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9EZWJpYW4ucG06ODkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZm91bmQgc3RhcnQgb2YgZW50cnkgd2hlcmUgZXhwZWN0ZWQgJXMiCittc2dzdHIgImhpdHRhZGUgYsO2cmphbiBww6UgcG9zdGVuIGTDpHIgJXMgZsO2cnbDpG50YWRlcyIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9EZWJpYW4ucG06MTI2Cittc2dpZCAiYmFkbHkgZm9ybWF0dGVkIGhlYWRpbmcgbGluZSIKK21zZ3N0ciAiZmVsYWt0aWd0IGZvcm1hdGVyYWQgcnVicmlrcmFkIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0RlYmlhbi5wbToxMzAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZm91bmQgdHJhaWxlciB3aGVyZSBleHBlY3RlZCAlcyIKK21zZ3N0ciAiaGl0dGFkZSBmb3QgZMOkciAlcyBmw7ZydsOkbnRhZGVzIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0RlYmlhbi5wbToxNDAKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRW50cnkvRGViaWFuLnBtOjE0OQorbXNnaWQgImJhZGx5IGZvcm1hdHRlZCB0cmFpbGVyIGxpbmUiCittc2dzdHIgImZlbGFrdGlndCBmb3JtYXRlcmFkIGZvdHJhZCIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9EZWJpYW4ucG06MTQzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImZvdW5kIGNoYW5nZSBkYXRhIHdoZXJlIGV4cGVjdGVkICVzIgorbXNnc3RyICJoaXR0YWRlIMOkbmRyaW5nc2RhdGEgZMOkciAlcyBmw7ZydsOkbnRhZGVzIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0RlYmlhbi5wbToxNjUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZm91bmQgYmxhbmsgbGluZSB3aGVyZSBleHBlY3RlZCAlcyIKK21zZ3N0ciAiaGl0dGFkZSBibGFuayByYWQgZMOkciAlcyBmw7ZydsOkbnRhZGVzIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0RlYmlhbi5wbToxNjkKK21zZ2lkICJ1bnJlY29nbmlzZWQgbGluZSIKK21zZ3N0ciAib2vDpG5kIHJhZCIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9EZWJpYW4ucG06MTgwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImZvdW5kIGVvZiB3aGVyZSBleHBlY3RlZCAlcyIKK21zZ3N0ciAiaGl0dGFkZSBmaWxzbHV0IGTDpHIgJXMgZsO2cnbDpG50YWRlcyIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9FbnRyeS9EZWJpYW4ucG06MTIyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImJhZCBrZXktdmFsdWUgYWZ0ZXIgYDsnOiBgJXMnIgorbXNnc3RyICJmZWxha3RpZ3Qgbnlja2VsdsOkcmRlIGVmdGVyIFwiO1wiOiBcIiVzXCIiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRW50cnkvRGViaWFuLnBtOjEyNworIywgcGVybC1mb3JtYXQKK21zZ2lkICJyZXBlYXRlZCBrZXktdmFsdWUgJXMiCittc2dzdHIgInJlcGV0ZXJhdCBueWNrZWx2w6RyZGUgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRW50cnkvRGViaWFuLnBtOjEzMQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJiYWRseSBmb3JtYXR0ZWQgdXJnZW5jeSB2YWx1ZTogJXMiCittc2dzdHIgImZlbGFrdGlndCBmb3JtYXRlcmF0IHbDpHJkZSBmw7ZyIFwidXJnZW5jeVwiOiAlcyIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9FbnRyeS9EZWJpYW4ucG06MTM1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVua25vd24ga2V5LXZhbHVlICVzIgorbXNnc3RyICJva8OkbnQgbnlja2VsdsOkcmRlICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL0VudHJ5L0RlYmlhbi5wbToxMzkKK21zZ2lkICJ0aGUgaGVhZGVyIGRvZXNuJ3QgbWF0Y2ggdGhlIGV4cGVjdGVkIHJlZ2V4IgorbXNnc3RyICJodXZ1ZGV0IG1vdHN2YXJhciBpbnRlIGRldCBmw7ZydsOkbnRhdCByZWd1bGrDpHJ0IHV0dHJ5Y2siCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRW50cnkvRGViaWFuLnBtOjE1MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjb3VsZG4ndCBwYXJzZSBkYXRlICVzIgorbXNnc3RyICJrdW5kZSBpbnRlIHRvbGthIGRhdHVtZXQgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvRW50cnkvRGViaWFuLnBtOjE1NQorbXNnaWQgInRoZSB0cmFpbGVyIGRvZXNuJ3QgbWF0Y2ggdGhlIGV4cGVjdGVkIHJlZ2V4IgorbXNnc3RyICJmaWxzbHV0ZXQgbW90c3ZhcmFyIGludGUgZGV0IGbDtnJ2w6RudGF0IHJlZ3VsasOkcnQgdXR0cnljayIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9QYXJzZS5wbToxMDYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidGFpbCBvZiAlcyIKK21zZ3N0ciAidGFpbCBmw7ZyICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL1BhcnNlLnBtOjExOAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJmb3JtYXQgcGFyc2VyICVzIG5vdCBleGVjdXRhYmxlIgorbXNnc3RyICJmb3JtYXR0b2xrICVzIGVqIGvDtnJiYXIiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGFuZ2Vsb2cvUGFyc2UucG06MTIxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNoYW5nZWxvZyBmb3JtYXQgJXMgaXMgdW5rbm93biIKK21zZ3N0ciAiw6RuZHJpbmdzbG9nZ2Zvcm1hdGV0ICVzIG9rw6RudCIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9QYXJzZS5wbToxNDQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IGV4ZWMgZm9ybWF0IHBhcnNlcjogJXMiCittc2dzdHIgImthbiBpbnRlIGV4ZWt2ZXJhIGZvcm1hdHRvbGs6ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hhbmdlbG9nL1BhcnNlLnBtOjE1MQorbXNnaWQgIm91dHB1dCBvZiBjaGFuZ2Vsb2cgcGFyc2VyIgorbXNnc3RyICJ1dGRhdGEgZnLDpW4gw6RuZHJpbmdzbG9nZ3BhcnNlciIKKworIzogc2NyaXB0cy9EcGtnL0NoYW5nZWxvZy9QYXJzZS5wbToxNTQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2hhbmdlbG9nIHBhcnNlciAlcyIKK21zZ3N0ciAiw6RuZHJpbmdzbG9nZ3BhcnNlciAlcyIKKworIzogc2NyaXB0cy9EcGtnL0NoZWNrc3Vtcy5wbToxNzAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IGZzdGF0IGZpbGUgJXMiCittc2dzdHIgImthbiBpbnRlIHRhIHN0YXR1cyAoZnN0YXQpIHDDpSBmaWxlbiAlcyIKKworIzogc2NyaXB0cy9EcGtnL0NoZWNrc3Vtcy5wbToxNzIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiRmlsZSAlcyBoYXMgc2l6ZSAldSBpbnN0ZWFkIG9mIGV4cGVjdGVkICV1IgorbXNnc3RyICJGaWxlbiAlcyBoYXIgc3Rvcmxla2VuICV1IGlzdMOkbGxldCBmw7ZyIGRlbiBmw7ZydsOkbnRhZGUgJXUiCisKKyM6IHNjcmlwdHMvRHBrZy9DaGVja3N1bXMucG06MTg2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIkZpbGUgJXMgaGFzIGNoZWNrc3VtICVzIGluc3RlYWQgb2YgZXhwZWN0ZWQgJXMgKGFsZ29yaXRobSAlcykiCittc2dzdHIgIiIKKyJGaWxlbiAlcyBoYXIga29udHJvbGxzdW1tYW4gJXMgaXN0w6RsbGV0IGbDtnIgZGVuIGbDtnJ2w6RudGFkZSAlcyAoYWxnb3JpdG0gJXMpIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hlY2tzdW1zLnBtOjE5MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjaGVja3N1bSBwcm9ncmFtIGdhdmUgYm9ndXMgb3V0cHV0IGAlcyciCittc2dzdHIgInByb2dyYW0gZsO2ciBrb250cm9sbHN1bW1hIGdhdiBmZWxha3RpZyB1dGRhdGEgXCIlc1wiIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hlY2tzdW1zLnBtOjIxOQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIGxpbmUgaW4gJXMgY2hlY2tzdW1zIHN0cmluZzogJXMiCittc2dzdHIgIm9naWx0aWd0cmFkIGkgJXMta29udHJvbGxzdW1tZXN0csOkbmc6ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvQ2hlY2tzdW1zLnBtOjIyNQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJDb25mbGljdGluZyBjaGVja3N1bXMgYCVzJyBhbmQgYCVzJyBmb3IgZmlsZSBgJXMnIgorbXNnc3RyICJNb3Rzw6RnYW5kZSBrb250cm9sbHN1bW1vciBcIiVzXCIgb2NoIFwiJXNcIiBmw7ZyIGZpbGVuIFwiJXNcIiIKKworIzogc2NyaXB0cy9EcGtnL0NoZWNrc3Vtcy5wbToyMjkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiQ29uZmxpY3RpbmcgZmlsZSBzaXplcyBgJXUnIGFuZCBgJXUnIGZvciBmaWxlIGAlcyciCittc2dzdHIgIk1vdHPDpGdhbmRlIGZpbHN0b3JsZWthciBcIiV1XCIgb2NoIFwiJXVcIiBmw7ZyIGZpbGVuIFwiJXNcIiIKKworIzogc2NyaXB0cy9EcGtnL0NvbmYucG06MTA1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInNob3J0IG9wdGlvbiBub3QgYWxsb3dlZCBpbiAlcywgbGluZSAlZCIKK21zZ3N0ciAia29ydCBmbGFnZ2EgdGlsbMOldHMgaW50ZSBpICVzLCByYWQgJWQiCisKKyM6IHNjcmlwdHMvRHBrZy9Db25mLnBtOjExOQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJpbnZhbGlkIHN5bnRheCBmb3Igb3B0aW9uIGluICVzLCBsaW5lICVkIgorbXNnc3RyICJzeW50YXhmZWwgZsO2ciBmbGFnZ2EgaSAlcywgcmFkICVkIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29udHJvbC5wbToxNTAKK21zZ2lkICJnZW5lcmFsIHNlY3Rpb24gb2YgY29udHJvbCBpbmZvIGZpbGUiCittc2dzdHIgImFsbG3DpG4gc2VrdGlvbiBpIHN0eXJpbmZvZmlsZW4iCisKKyM6IHNjcmlwdHMvRHBrZy9Db250cm9sLnBtOjE1MgorbXNnaWQgInBhY2thZ2UncyBzZWN0aW9uIG9mIGNvbnRyb2wgaW5mbyBmaWxlIgorbXNnc3RyICJwYWtldGV0cyBzZWt0aW9uIGF2IHN0eXJpbmZvZmlsZW4iCisKKyM6IHNjcmlwdHMvRHBrZy9Db250cm9sLnBtOjE1NAorbXNnaWQgInBhcnNlZCB2ZXJzaW9uIG9mIGNoYW5nZWxvZyIKK21zZ3N0ciAidG9sa2FkIHZlcnNpb24gYXYgw6RuZHJpbmdzbG9nZyIKKworIzogc2NyaXB0cy9EcGtnL0NvbnRyb2wucG06MTU2IHNjcmlwdHMvRHBrZy9Db250cm9sLnBtOjE1OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJlbnRyeSBpbiByZXBvc2l0b3J5J3MgJXMgZmlsZSIKK21zZ3N0ciAicG9zdCBpIGFya2l2ZXRzIGZpbCAlcyIKKworIzogc2NyaXB0cy9EcGtnL0NvbnRyb2wucG06MTYwIHNjcmlwdHMvRHBrZy9Db250cm9sLnBtOjE2NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBmaWxlIgorbXNnc3RyICJmaWxlbiAlcyIKKworIzogc2NyaXB0cy9EcGtnL0NvbnRyb2wucG06MTYyCittc2dpZCAiY29udHJvbCBpbmZvIG9mIGEgLmRlYiBwYWNrYWdlIgorbXNnc3RyICJzdHlyaW5mb3JtYXRpb25lbiBpIGV0dCAuZGViLXBha2V0IgorCisjOiBzY3JpcHRzL0Rwa2cvQ29udHJvbC5wbToxNjYKK21zZ2lkICJ2ZW5kb3IgZmlsZSIKK21zZ3N0ciAiZGlzdHJpYnV0w7Zyc2ZpbCIKKworIzogc2NyaXB0cy9EcGtnL0NvbnRyb2wucG06MTY4Cittc2dpZCAiZW50cnkgaW4gZHBrZydzIHN0YXR1cyBmaWxlIgorbXNnc3RyICJwb3N0IGkgZHBrZzpzIHN0YXR1c2ZpbCIKKworIzogc2NyaXB0cy9EcGtnL0NvbnRyb2wvRmllbGRzLnBtOjQ1NQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGluZm9ybWF0aW9uIGZpZWxkICclcycgaW4gaW5wdXQgZGF0YSBpbiAlcyIKK21zZ3N0ciAib2vDpG50IGluZm9ybWF0aW9uc2bDpGx0IFwiJXNcIiBpIGluZGF0YSBpICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29udHJvbC9GaWVsZHMucG06NDU2Cittc2dpZCAiY29udHJvbCBpbmZvcm1hdGlvbiIKK21zZ3N0ciAic3R5cmluZm9ybWF0aW9uIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29udHJvbC9JbmZvLnBtOjEwMworbXNnaWQgImZpcnN0IGJsb2NrIGxhY2tzIGEgc291cmNlIGZpZWxkIgorbXNnc3RyICJmw7Zyc3RhIGJsb2NrZXQgc2FrbmFyIHNvdXJjZS1mw6RsdCIKKworIzogc2NyaXB0cy9EcGtnL0NvbnRyb2wvSW5mby5wbToxMTAgc2NyaXB0cy9EcGtnL0NvbnRyb2wvSW5mby5wbToxMTMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiYmxvY2sgbGFja3MgdGhlICclcycgZmllbGQiCittc2dzdHIgImJsb2NrZXQgc2FrbmFyIGbDpGx0ZXQgXCIlc1wiIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29udHJvbC9IYXNoLnBtOjE3MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgZmllbGQgJXMgZm91bmQiCittc2dzdHIgImR1cGxpY2VyYXQgZsOkbHQgJXMgaGl0dGFkZXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Db250cm9sL0hhc2gucG06MTgwCittc2dpZCAiY29udGludWVkIHZhbHVlIGxpbmUgbm90IGluIGZpZWxkIgorbXNnc3RyICJmb3J0c2F0dCB2w6RyZGVyYWQgaW50ZSBpIGbDpGx0IgorCisjOiBzY3JpcHRzL0Rwa2cvQ29udHJvbC9IYXNoLnBtOjE5NAorbXNnaWQgIlBHUCBzaWduYXR1cmUgbm90IGFsbG93ZWQgaGVyZSIKK21zZ3N0ciAiUEdQLXNpZ25hdHVyIHRpbGzDpXRzIGludGUgaMOkciIKKworIzogc2NyaXB0cy9EcGtnL0NvbnRyb2wvSGFzaC5wbToyMDEKK21zZ2lkICJleHBlY3RlZCBQR1Agc2lnbmF0dXJlLCBmb3VuZCBFT0YgYWZ0ZXIgYmxhbmsgbGluZSIKK21zZ3N0ciAiZsO2cnbDpG50YWRlIFBHUC1zaWduYXR1ciwgaGl0dGFkZSBmaWxzbHV0IGVmdGVyIHRvbXJhZCIKKworIzogc2NyaXB0cy9EcGtnL0NvbnRyb2wvSGFzaC5wbToyMDUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZXhwZWN0ZWQgUEdQIHNpZ25hdHVyZSwgZm91bmQgc29tZXRoaW5nIGVsc2UgYCVzJyIKK21zZ3N0ciAiZsO2cnbDpG50YWRlIFBHUC1zaWduYXR1ciwgaGl0dGFkZSBuw6Vnb3QgYW5uYXQgXCIlc1wiIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29udHJvbC9IYXNoLnBtOjIxMworbXNnaWQgInVuZmluaXNoZWQgUEdQIHNpZ25hdHVyZSIKK21zZ3N0ciAib2F2c2x1dGFkIFBHUC1zaWduYXR1ciIKKworIzogc2NyaXB0cy9EcGtnL0NvbnRyb2wvSGFzaC5wbToyMTkKK21zZ2lkICJsaW5lIHdpdGggdW5rbm93biBmb3JtYXQgKG5vdCBmaWVsZC1jb2xvbi12YWx1ZSkiCittc2dzdHIgInJhZCBtZWQgb2vDpG50IGZvcm1hdCAoaW50ZSBmw6RsdC1rb2xvbi12w6RyZGUpIgorCisjOiBzY3JpcHRzL0Rwa2cvQ29udHJvbC9IYXNoLnBtOjMxNgorbXNnaWQgIndyaXRlIGVycm9yIG9uIGNvbnRyb2wgZGF0YSIKK21zZ3N0ciAic2tyaXZmZWwgaSBzdHlyZGF0YSIKKworIzogc2NyaXB0cy9EcGtnL0RlcHMucG06Mjc0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbid0IHBhcnNlIGRlcGVuZGVuY3kgJXMiCittc2dzdHIgImthbiBpbnRlIHRvbGthIGJlcm9lbmRldCAlczoiCisKKyM6IHNjcmlwdHMvRHBrZy9EZXBzLnBtOjMwMQorbXNnaWQgImFuIHVuaW9uIGRlcGVuZGVuY3kgY2FuIG9ubHkgY29udGFpbiBzaW1wbGUgZGVwZW5kZW5jaWVzIgorbXNnc3RyICJldHQgdW5pb25zYmVyb2VuZGUga2FuIGVuZGFzdCBpbm5laMOlbGxhIGVua2xhIGJlcm9lbmRlbiIKKworIzogc2NyaXB0cy9EcGtnL0Vycm9ySGFuZGxpbmcucG06NTQKK21zZ2lkICJpbmZvIgorbXNnc3RyICJpbmZvIgorCisjOiBzY3JpcHRzL0Rwa2cvRXJyb3JIYW5kbGluZy5wbTo2NSBzY3JpcHRzL0Rwa2cvRXJyb3JIYW5kbGluZy5wbTo3MAorIzogc2NyaXB0cy9EcGtnL0Vycm9ySGFuZGxpbmcucG06NzUKK21zZ2lkICJlcnJvciIKK21zZ3N0ciAiZmVsIgorCisjOiBzY3JpcHRzL0Rwa2cvRXJyb3JIYW5kbGluZy5wbTo4MAorbXNnaWQgImludGVybmFsIGVycm9yIgorbXNnc3RyICJpbnRlcm50IGZlbCIKKworIzogc2NyaXB0cy9EcGtnL0Vycm9ySGFuZGxpbmcucG06OTIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgZ2F2ZSBlcnJvciBleGl0IHN0YXR1cyAlcyIKK21zZ3N0ciAiJXMgcmV0dXJuZXJhZGUgZmVsa29kICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvRXJyb3JIYW5kbGluZy5wbTo5NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBkaWVkIGZyb20gc2lnbmFsICVzIgorbXNnc3RyICIlcyBkb2cgYXYgc2lnbmFsICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvRXJyb3JIYW5kbGluZy5wbTo5NgorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBmYWlsZWQgd2l0aCB1bmtub3duIGV4aXQgY29kZSAlZCIKK21zZ3N0ciAiJXMgbWlzc2x5Y2thZGVzIG1lZCBva8OkbmQgZmVsa29kICVkIgorCisjOiBzY3JpcHRzL0Rwa2cvRXJyb3JIYW5kbGluZy5wbToxMTUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAic3ludGF4IGVycm9yIGluICVzIGF0IGxpbmUgJWQ6ICVzIgorbXNnc3RyICJzeW50YXhmZWwgaSAlcyBww6UgcmFkICVkOiAlcyIKKworIzogc2NyaXB0cy9EcGtnL0lQQy5wbToyMTEgc2NyaXB0cy9EcGtnL0lQQy5wbToyMTcgc2NyaXB0cy9EcGtnL0lQQy5wbToyMjMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAicGlwZSBmb3IgJXMiCittc2dzdHIgInLDtnIgZsO2ciAlcyIKKworIzogc2NyaXB0cy9EcGtnL0lQQy5wbToyNDIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2hkaXIgdG8gJXMiCittc2dzdHIgImNoZGlyIHRpbGwgXCIlc1wiIgorCisjOiBzY3JpcHRzL0Rwa2cvSVBDLnBtOjI0OQorbXNnaWQgInJlb3BlbiBzdGRpbiIKK21zZ3N0ciAiw7ZwcG5hIHN0YW5kYXJkIGluIHDDpSBueXR0IgorCisjOiBzY3JpcHRzL0Rwa2cvSVBDLnBtOjI1NyBzY3JpcHRzL0Rwa2cvSVBDLnBtOjI2NQorbXNnaWQgInJlb3BlbiBzdGRvdXQiCittc2dzdHIgIsO2cHBuYSBzdGFuZGFyZCB1dCBww6Ugbnl0dCIKKworIzogc2NyaXB0cy9EcGtnL0lQQy5wbTozMzkKK21zZ2lkICJjaGlsZCBwcm9jZXNzIgorbXNnc3RyICJiYXJucHJvY2VzcyIKKworIzogc2NyaXB0cy9EcGtnL0lQQy5wbTozNDQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAid2FpdCBmb3IgJXMiCittc2dzdHIgInbDpG50YXIgcMOlICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvSVBDLnBtOjM0OQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBkaWRuJ3QgY29tcGxldGUgaW4gJWQgc2Vjb25kIgorbXNnaWRfcGx1cmFsICIlcyBkaWRuJ3QgY29tcGxldGUgaW4gJWQgc2Vjb25kcyIKK21zZ3N0clswXSAiJXMgYmxldiBpbnRlIGbDpHJkaWd0IHDDpSAlZCBzZWt1bmQiCittc2dzdHJbMV0gIiVzIGJsZXYgaW50ZSBmw6RyZGlndCBww6UgJWQgc2VrdW5kZXIiCisKKyM6IHNjcmlwdHMvRHBrZy9TaGxpYnMvT2JqZHVtcC5wbToyMjIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiQ291bGRuJ3QgcGFyc2UgZHluYW1pYyByZWxvY2F0aW9uIHJlY29yZDogJXMiCittc2dzdHIgIkt1bmRlIGludGUgdG9sa2EgZHluYW1pc2sgcmVsb2tlcmluZ3Nwb3N0OiAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NobGlicy9PYmpkdW1wLnBtOjMzOQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJDb3VsZG4ndCBwYXJzZSBkeW5hbWljIHN5bWJvbCBkZWZpbml0aW9uOiAlcyIKK21zZ3N0ciAiS3VuZGUgaW50ZSB0b2xrYSBkZWZpbml0aW9uIGF2IGR5bmFtaXNrIHN5bWJvbDogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9TaGxpYnMvU3ltYm9sLnBtOjExMQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJzeW1ib2wgbmFtZSB1bnNwZWNpZmllZDogJXMiCittc2dzdHIgInN5bWJvbG5hbW4gZWogYW5naXZldDogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9TaGxpYnMvU3ltYm9sLnBtOjE2OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ5b3UgY2FuJ3QgdXNlIHN5bXZlciB0YWcgdG8gY2F0Y2ggdW52ZXJzaW9uZWQgc3ltYm9sczogJXMiCittc2dzdHIgIiIKKyJkdSBrYW4gaW50ZSBhbnbDpG5kYSBzeW12ZXItdGFnZ2VuIGbDtnIgYXR0IGbDpW5nYSBzeW1ib2xlciBzb20gaW50ZSDDpHIgIgorInZlcnNpb25lcmFkZTogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9TaGxpYnMvU3ltYm9sRmlsZS5wbToyMTgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiU3ltYm9sIGluZm9ybWF0aW9uIG11c3QgYmUgcHJlY2VkZWQgYnkgYSBoZWFkZXIgKGZpbGUgJXMsIGxpbmUgJXMpLiIKK21zZ3N0ciAiU3ltYm9saW5mb3JtYXRpb24gbcOlc3RlIGbDtnJlZ8OlcyBhdiBldHQgaHV2dWQgKGZpbCAlcywgcmFkICVzKS4iCisKKyM6IHNjcmlwdHMvRHBrZy9TaGxpYnMvU3ltYm9sRmlsZS5wbToyMjYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiRmFpbGVkIHRvIHBhcnNlIGxpbmUgaW4gJXM6ICVzIgorbXNnc3RyICJNaXNzbHlja2FkZXMgYXR0IHRvbGthIGVuIHJhZCBpICVzOiAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NobGlicy9TeW1ib2xGaWxlLnBtOjI1OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJGYWlsZWQgdG8gcGFyc2UgYSBsaW5lIGluICVzOiAlcyIKK21zZ3N0ciAibWlzc2x5Y2thZGVzIGF0dCB0b2xrYSBlbiByYWQgaSAlczogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9TaGxpYnMvU3ltYm9sRmlsZS5wbToyNzEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiVHJpZWQgdG8gbWVyZ2UgdGhlIHNhbWUgb2JqZWN0ICglcykgdHdpY2UgaW4gYSBzeW1maWxlLiIKK21zZ3N0ciAiRsO2cnPDtmt0ZSBzbMOlIGlob3Agc2FtbWEgb2JqZWt0ICglcykgdHbDpSBnw6VuZ2VyIGkgZW4gc3ltZmlsLiIKKworIzogc2NyaXB0cy9EcGtnL1NobGlicy9TeW1ib2xGaWxlLnBtOjM4OAorbXNnaWQgIkNhbid0IG1lcmdlIHN5bWJvbHMgZnJvbSBvYmplY3RzIHdpdGhvdXQgU09OQU1FLiIKK21zZ3N0ciAiS2FuIGludGUgc2zDpSBpaG9wIHN5bWJvbGVyIGZyw6VuIG9iamVrdCB1dGFuIFNPTkFNTi4iCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvQXJjaGl2ZS5wbTo2NAorbXNnaWQgIndyaXRlIG9uIHRhciBpbnB1dCIKK21zZ3N0ciAic2tyaXYgcMOlIHRhci1pbmRhdGEiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvQXJjaGl2ZS5wbTo4OQorbXNnaWQgImNsb3NlIG9uIHRhciBpbnB1dCIKK21zZ3N0ciAic3TDpG5nbmluZyBhdiB0YXItaW5kYXRhIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL0FyY2hpdmUucG06MTE0IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NTAzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCBjcmVhdGUgZGlyZWN0b3J5ICVzIgorbXNnc3RyICJrYW4gaW50ZSBza2FwYSBrYXRhbG9nZW4gJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvQXJjaGl2ZS5wbToxNDUgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOjMwNworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjE5OQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgb3BlbmRpciAlcyIKK21zZ3N0ciAia2FuIGludGUgw7ZwcG5hIGthdGFsb2cgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvQXJjaGl2ZS5wbToxNTIgc2NyaXB0cy9EcGtnL1NvdXJjZS9BcmNoaXZlLnBtOjE1NgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJVbmFibGUgdG8gcmVuYW1lICVzIHRvICVzIgorbXNnc3RyICJLYW4gaW50ZSBieXRhIG5hbW4gcMOlICVzIHRpbGwgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvRnVuY3Rpb25zLnBtOjM0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCBzdGF0IGRpcmVjdG9yeSAlcyAoYmVmb3JlIHJlbW92YWwpIgorbXNnc3RyICJrYW4gaW50ZSB0YSBzdGF0dXMgcMOlIGthdGFsb2dlbiAlcyAoZsO2cmUgYm9ydHRhZ25pbmcpIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL0Z1bmN0aW9ucy5wbTo0MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hlY2sgZm9yIHJlbW92YWwgb2YgZGlyIGAlcyciCittc2dzdHIgImthbiBpbnRlIGtvbnRyb2xsZXJhIGbDtnIgYm9ydHRhZ25pbmcgYXYga2F0YWxvZ2VuIFwiJXNcIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9GdW5jdGlvbnMucG06NDIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAicm0gLXJmIGZhaWxlZCB0byByZW1vdmUgYCVzJyIKK21zZ3N0ciAicm0gLXJmIG1pc3NseWNrYWRlcyBhdHQgdGEgYm9ydCBcIiVzXCIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvRnVuY3Rpb25zLnBtOjgzIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NTUwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCBjaGFuZ2UgdGltZXN0YW1wIGZvciAlcyIKK21zZ3N0ciAia2FuIGludGUgw6RuZHJhIHRpZHNzdMOkbXBlbCBww6UgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvRnVuY3Rpb25zLnBtOjg1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZWFkIHRpbWVzdGFtcCBmcm9tICVzIgorbXNnc3RyICJrYW4gaW50ZSBsw6RzYSB0aWRzc3TDpG1wZWwgZnLDpW4gJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NzAgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjQ0MworbXNnaWQgImJpbmFyeSBmaWxlIGNvbnRlbnRzIGNoYW5nZWQiCittc2dzdHIgImlubmVow6VsbCBpIGJpbsOkciBmaWwgw6RuZHJhdCIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbToxMTgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZmlsZSAlcyBoYXMgbm8gZmluYWwgbmV3bGluZSAoZWl0aGVyIG9yaWdpbmFsIG9yIG1vZGlmaWVkIHZlcnNpb24pIgorbXNnc3RyICIiCisiZmlsZW4gJXMgaGFyIGluZ2V0IGF2c2x1dGFuZGUgbnlyYWRzdGVja2VuIChhbnRpbmdlbiBpIHVyc3BydW5nbGlnIGVsbGVyICIKKyJtb2RpZmllcmFkIHZlcnNpb24pIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjEyMgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmtub3duIGxpbmUgZnJvbSBkaWZmIC11IG9uICVzOiBgJXMnIgorbXNnc3RyICJva8OkbmQgcmFkIGZyw6VuIGRpZmYgLXUgcMOlICVzOiBcIiVzXCIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MTI1IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MTI4Cittc2dpZCAiZmFpbGVkIHRvIHdyaXRlIgorbXNnc3RyICJtaXNzbHlja2FkZXMgYXR0IHNrcml2YSIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbToxMzgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZGlmZiBvbiAlcyIKK21zZ3N0ciAiZGlmZiBww6UgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MTY0IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MTgzCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjIwNiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjIxOAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3Qgc3RhdCBmaWxlICVzIgorbXNnc3RyICJrYW4gaW50ZSB0YSBzdGF0dXMgcMOlIGZpbGVuICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjE3MyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjE3NQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVhZCBsaW5rICVzIgorbXNnc3RyICJrYW4gaW50ZSBsw6RzYSBsw6Rua2VuICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjIwMgorbXNnaWQgImRldmljZSBvciBzb2NrZXQgaXMgbm90IGFsbG93ZWQiCittc2dzdHIgImVuaGV0IGVsbGVyIHV0dGFnIGludGUgdGlsbMOldGV0IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjIxMQorbXNnaWQgInVua25vd24gZmlsZSB0eXBlIgorbXNnc3RyICJva8OkbmQgZmlsdHlwIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjIyNAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJpZ25vcmluZyBkZWxldGlvbiBvZiBmaWxlICVzIgorbXNnc3RyICJpZ25vcmVyYXIgYm9ydHRhZ25pbmcgYXYgZmlsZW4gJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MjI3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImlnbm9yaW5nIGRlbGV0aW9uIG9mIGRpcmVjdG9yeSAlcyIKK21zZ3N0ciAiaWdub3JlcmFyIGJvcnR0YWduaW5nIGF2IGthdGFsb2dlbiAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbToyMjkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiaWdub3JpbmcgZGVsZXRpb24gb2Ygc3ltbGluayAlcyIKK21zZ3N0ciAiaWdub3JlcmFyIGJvcnR0YWduaW5nIGF2IHN5bWJvbGlza2EgbMOkbmtlbiAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbToyNzEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibmV3bHkgY3JlYXRlZCBlbXB0eSBmaWxlICclcycgd2lsbCBub3QgYmUgcmVwcmVzZW50ZWQgaW4gZGlmZiIKK21zZ3N0ciAiIgorImRlbiB0b21tYSBmaWxlbiBcIiVzXCIgc29tIGp1c3Qgc2thcGF0cyBrb21tZXIgaW50ZSByZXByZXNlbnRlcmFzIGkgZGlmZmVuIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjI3NQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJleGVjdXRhYmxlIG1vZGUgJTA0byBvZiAnJXMnIHdpbGwgbm90IGJlIHJlcHJlc2VudGVkIGluIGRpZmYiCittc2dzdHIgImV4ZWt2ZXJpbmdzbMOkZ2UgJTA0byBww6UgXCIlc1wiIGtvbW1lciBpbnRlIHJlcHJlc2VudGVyYXMgaSBkaWZmZW4iCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MjgwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInNwZWNpYWwgbW9kZSAlMDRvIG9mICclcycgd2lsbCBub3QgYmUgcmVwcmVzZW50ZWQgaW4gZGlmZiIKK21zZ3N0ciAic3BlY2lhbGzDpGdldCAlMDRvIHDDpSBcIiVzXCIga29tbWVyIGludGUgcmVwcmVzZW50ZXJhcyBpIGRpZmZlbiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTozMDAgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjQ0MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVwcmVzZW50IGNoYW5nZSB0byAlczogJXMiCittc2dzdHIgImthbiBpbnRlIHJlcHJlc2VudGVyYSDDpG5kcmluZ2VuIGbDtnIgJXM6ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjMwNworIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW5ub3QgcmVwcmVzZW50IGNoYW5nZSB0byAlczoiCittc2dzdHIgImthbiBpbnRlIHJlcHJlc2VudGVyYSDDpG5kcmluZ2VuIGbDtnIgJXM6IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjMwOAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIgIG5ldyB2ZXJzaW9uIGlzICVzIgorbXNnc3RyICIgIG55IHZlcnNpb24gw6RyICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjMwOQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIgIG9sZCB2ZXJzaW9uIGlzICVzIgorbXNnc3RyICIgIGdhbW1hbCB2ZXJzaW9uIMOkciAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTozODQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZXhwZWN0ZWQgXi0tLSBpbiBsaW5lICVkIG9mIGRpZmYgYCVzJyIKK21zZ3N0ciAiZsO2cnbDpG50YWRlIF4tLS0gcMOlIHJhZCAlZCBpIGRpZmZlbiBcIiVzXCIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06Mzg5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImRpZmYgYCVzJyBwYXRjaGVzIGZpbGUgd2l0aCBuYW1lIGVuZGluZyAuZHBrZy1vcmlnIgorbXNnc3RyICJkaWZmZW4gXCIlc1wiIHBhdGNoYXIgZmlsIHZhcnMgbmFtbiBzbHV0YXIgcMOlIC5kcGtnLW9yaWciCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06MzkzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImRpZmYgYCVzJyBmaW5pc2hlcyBpbiBtaWRkbGUgb2YgLS0tLysrKyAobGluZSAlZCkiCittc2dzdHIgImRpZmZlbiBcIiVzXCIgc2x1dGFyIG1pdHQgaSBlbiAtLS0vKysrIChyYWQgJWQpIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjM5NgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJsaW5lIGFmdGVyIC0tLSBpc24ndCBhcyBleHBlY3RlZCBpbiBkaWZmIGAlcycgKGxpbmUgJWQpIgorbXNnc3RyICJyYWRlbiBlZnRlciAtLS0gw6RyIGludGUgc29tIGbDtnJ2w6RudGFkIGkgZGlmZmVuIFwiJXNcIiAocmFkICVkKSIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo0MDIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibm9uZSBvZiB0aGUgZmlsZW5hbWVzIGluIC0tLS8rKysgYXJlIHZhbGlkIGluIGRpZmYgJyVzJyAobGluZSAlZCkiCittc2dzdHIgImluZ2V0IGF2IGZpbG5hbW5lbiBpIC0tLS8rKysgw6RyIGdpbHRpZ2EgaSBkaWZmZW4gXCIlc1wiIChyYWQgJWQpIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjQxMAorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjEyNworIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBjb250YWlucyBhbiBpbnNlY3VyZSBwYXRoOiAlcyIKK21zZ3N0ciAiJXMgaW5uZWjDpWxsZXIgZW4gb3PDpGtlciBzw7ZrdsOkZzogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NDE1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImRpZmYgJXMgbW9kaWZpZXMgZmlsZSAlcyB0aHJvdWdoIGEgc3ltbGluazogJXMiCittc2dzdHIgImRpZmZlbiAlcyDDpG5kcmFyIGZpbGVuICVzIGdlbm9tIGVuIHN5bWJvbGlzayBsw6RuazogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NDI0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIm9yaWdpbmFsIGFuZCBtb2RpZmllZCBmaWxlcyBhcmUgL2Rldi9udWxsIGluIGRpZmYgYCVzJyAobGluZSAlZCkiCittc2dzdHIgIm9yaWdpbmFsIG9jaCDDpG5kcmFkIGZpbCDDpHIgL2Rldi9udWxsIGkgZGlmZmVuIFwiJXNcIiAocmFkICVkKSIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo0MjcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZmlsZSByZW1vdmFsIHdpdGhvdXQgcHJvcGVyIGZpbGVuYW1lIGluIGRpZmYgYCVzJyAobGluZSAlZCkiCittc2dzdHIgImJvcnR0YWdlbiBmaWwgc2FrbmFyIGtvcnJla3QgZmlsbmFtbiBpIGRpZmZlbiBcIiVzXCIgKHJhZCAlZCkiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NDMwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImRpZmYgJXMgcmVtb3ZlcyBhIG5vbi1leGlzdGluZyBmaWxlICVzIChsaW5lICVkKSIKK21zZ3N0ciAiZGlmZmVuICVzIHRhciBib3J0IGZpbGVuICVzIHNvbSBpbnRlIGZpbm5zIChyYWQgJWQpIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjQ0MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJkaWZmIGAlcycgcGF0Y2hlcyBzb21ldGhpbmcgd2hpY2ggaXMgbm90IGEgcGxhaW4gZmlsZSIKK21zZ3N0ciAiZGlmZmVuIFwiJXNcIiBwYXRjaGFyIG7DpWdvdCBzb20gaW50ZSDDpHIgZW4gdmFubGlnIGZpbCIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo0NDYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZGlmZiBgJXMnIHBhdGNoZXMgZmlsZSAlcyB0d2ljZSIKK21zZ3N0ciAiZGlmZmVuIFwiJXNcIiBwYXRjaGFyIGZpbGVuICVzIHR2w6UgZ8OlbmdlciIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo0NjQgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo0NjgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5leHBlY3RlZCBlbmQgb2YgZGlmZiBgJXMnIgorbXNnc3RyICJvdsOkbnRhZCBzbHV0IHDDpSBkaWZmZW4gXCIlc1wiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjQ3NworIywgcGVybC1mb3JtYXQKK21zZ2lkICJleHBlY3RlZCBbICstXSBhdCBzdGFydCBvZiBsaW5lICVkIG9mIGRpZmYgYCVzJyIKK21zZ3N0ciAiZsO2cnbDpG50YWRlIFsgKyBdIHZpZCBiw7ZyamFuIGF2IHJhZCAlZCBpIGRpZmZlbiBcIiVzXCIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NDg0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImV4cGVjdGVkIF5AQCBhdCBsaW5lICVkIG9mIGRpZmYgYCVzJyIKK21zZ3N0ciAiZsO2cnbDpG50YWRlIF5AQCBww6UgcmFkICVkIGkgZGlmZmVuIFwiJXNcIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo0ODkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZGlmZiBgJXMnIGRvZXNuJ3QgY29udGFpbiBhbnkgcGF0Y2giCittc2dzdHIgImRpZmZlbiBcIiVzXCIgaW5uZWjDpWxsZXIgaW50ZSBuw6Vnb24gcGF0Y2giCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NTU0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInJlbW92ZSBwYXRjaCBiYWNrdXAgZmlsZSAlcyIKK21zZ3N0ciAidGFyIGJvcnQgcGF0Y2hzw6RrZXJoZXRza29waWFuICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjU5NQorbXNnaWQgIm5vbmV4aXN0ZW50IgorbXNnc3RyICJzYWtuYXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NTk2IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbTo0NTgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IHN0YXQgJXMiCittc2dzdHIgImthbiBpbnRlIHRhIHN0YXR1cyBww6UgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NTk4Cittc2dpZCAicGxhaW4gZmlsZSIKK21zZ3N0ciAidmFubGlnIGZpbCIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo1OTkKK21zZ2lkICJkaXJlY3RvcnkiCittc2dzdHIgImthdGFsb2ciCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGF0Y2gucG06NjAwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInN5bWxpbmsgdG8gJXMiCittc2dzdHIgInN5bWJvbGlzayBsw6RuayB0aWxsICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhdGNoLnBtOjYwMQorbXNnaWQgImJsb2NrIGRldmljZSIKK21zZ3N0ciAiYmxvY2tlbmhldCIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo2MDIKK21zZ2lkICJjaGFyYWN0ZXIgZGV2aWNlIgorbXNnc3RyICJ0ZWNrZW5lbmhldCIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo2MDMKK21zZ2lkICJuYW1lZCBwaXBlIgorbXNnc3RyICJuYW1uZ2l2ZXQgcsO2ciIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYXRjaC5wbTo2MDQKK21zZ2lkICJuYW1lZCBzb2NrZXQiCittc2dzdHIgIm5hbW5naXZldCB1dHRhZyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOjE4OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgdGhlIG5hbWUgb2YgYSBmaWxlIgorbXNnc3RyICIlcyDDpHIgaW50ZSBuYW1uZXQgcMOlIGVuIGZpbCIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOjIwOAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJtaXNzaW5nIGNyaXRpY2FsIHNvdXJjZSBjb250cm9sIGZpZWxkICVzIgorbXNnc3RyICJzYWtuYXIga3JpdGlza2Ega8OkbGxrb2Rzc3R5cmbDpGx0ZXQgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbToyMzYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorInNvdXJjZSBwYWNrYWdlIGZvcm1hdCBgJXMnIGlzIG5vdCBzdXBwb3J0ZWQgKFBlcmwgbW9kdWxlICVzIGlzIHJlcXVpcmVkKSIKK21zZ3N0ciAia8OkbGxrb2RzZm9ybWF0ZXQgXCIlc1wiIHN0w7ZkcyBpbnRlIChQZXJsbW9kdWxlbiAlcyBrcsOkdnMpIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG06MjQwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImludmFsaWQgRm9ybWF0IGZpZWxkIGAlcyciCittc2dzdHIgIm9naWx0aWd0IEZvcm1hdC1mw6RsdCBcIiVzXCIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbToyODgKK21zZ2lkICJzb3VyY2UgYW5kIHZlcnNpb24gYXJlIHJlcXVpcmVkIHRvIGNvbXB1dGUgdGhlIHNvdXJjZSBiYXNlbmFtZSIKK21zZ3N0ciAia8OkbGxrb2Qgb2NoIHZlcnNpb24gYmVow7Z2cyBmw7ZyIGF0dCBiZXLDpGtuYSBiYXNuYW1uIGbDtnIga8OkbGxrb2QiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbTozNzEgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOjM3MworIywgcGVybC1mb3JtYXQKK21zZ2lkICJmYWlsZWQgdG8gdmVyaWZ5IHNpZ25hdHVyZSBvbiAlcyIKK21zZ3N0ciAibWlzc2x5Y2thZGVzIHZlcmlmaWVyYSBzaWduYXR1cmVuIHDDpSAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOjM4MCBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG06MzgyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNvdWxkIG5vdCB2ZXJpZnkgc2lnbmF0dXJlIG9uICVzIHNpbmNlIGdwZyBpc24ndCBpbnN0YWxsZWQiCittc2dzdHIgImt1bmRlIGludGUgdmVyaWZpZXJhIHNpZ25hdHVyZW4gcMOlICVzIGVmdGVyc29tIGdwZyBpbnRlIGluc3RhbGxlcmF0cyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOjM5MQorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgYSB2YWxpZCBvcHRpb24gZm9yICVzIgorbXNnc3RyICIlcyDDpHIgaW50ZSBlbiBnaWx0aWcgZmxhZ2dhIGbDtnIgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbTo0NjAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgZG9lcyBub3QgZXhpc3QiCittc2dzdHIgIiVzIGZpbm5zIGludGUiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS5wbTo0NjQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IG1ha2UgJXMgZXhlY3V0YWJsZSIKK21zZ3N0ciAia2FuIGludGUgZ8O2cmEgJXMgZXhla3ZlcmJhciIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlLnBtOjQ2NgorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgYSBwbGFpbiBmaWxlIgorbXNnc3RyICIlcyDDpHIgaW50ZSBlbiB2YW5saWcgZmlsIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UucG06NTE3CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiclcycgaXMgbm90IHN1cHBvcnRlZCBieSB0aGUgc291cmNlIGZvcm1hdCAnJXMnIgorbXNnc3RyICJcIiVzXCIgc3TDtmRzIGludGUgYXYga8OkbGxrb2RzZm9ybWF0ZXQgXCIlc1wiIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06NjIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiLXMlcyBvcHRpb24gb3ZlcnJpZGVzIGVhcmxpZXIgLXMlcyBvcHRpb24iCittc2dzdHIgImZsYWdnYW4gLXMlcyBlcnPDpHR0ZXIgdGlkaWdhcmUgZmxhZ2dhIC1zJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbTo4NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJzb3VyY2UgaGFuZGxpbmcgc3R5bGUgLXMlcyBub3QgYWxsb3dlZCB3aXRoIC14IgorbXNnc3RyICJrw6RsbGtvZHNoYW50ZXJpbmdzdHlwIC1zJXMgdGlsbMOldHMgaW50ZSBtZWQgLXgiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbTo5NgorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL25hdGl2ZS5wbTo1MQorbXNnaWQgIm11bHRpcGxlIHRhcmZpbGVzIGluIHYxLjAgc291cmNlIHBhY2thZ2UiCittc2dzdHIgImZsZXJhIHRhcmZpbGVyIGkgdjEuMC1rw6RsbGtvZHNwYWtldCIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjEwMSBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06MTI5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVucmVjb2duaXplZCBmaWxlIGZvciBhICVzIHNvdXJjZSBwYWNrYWdlOiAlcyIKK21zZ3N0ciAib2vDpG5kIGZpbCBmw7ZyIGV0dCAlcy1rw6RsbGtvZHNwYWtldDogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToxMDYKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9uYXRpdmUucG06NTgKK21zZ2lkICJubyB0YXJmaWxlIGluIEZpbGVzIGZpZWxkIgorbXNnc3RyICJlaiB0YXJmaWwgaSBGaWxlcy1mw6RsdGV0IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MTA5Cittc2dpZCAibmF0aXZlIHBhY2thZ2Ugd2l0aCAub3JpZy50YXIiCittc2dzdHIgIkRlYmlhbnNwZWNpZmlrdCBwYWtldCBtZWQgLm9yaWcudGFyIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MTIyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byByZW5hbWUgYCVzJyB0byBgJXMnIgorbXNnc3RyICJrYW4gaW50ZSBieXRhIG5hbW4gcMOlIFwiJXNcIiB0aWxsIFwiJXNcIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjEyNiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06MTQxCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06MTUzIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbToxNjYKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9ienIucG06MTkwCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvbmF0aXZlLnBtOjYxCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVucGFja2luZyAlcyIKK21zZ3N0ciAicGFja2FyIHVwcCAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjEzMworbXNnaWQgInVuYWJsZSB0byBrZWVwIG9yaWcgZGlyZWN0b3J5IChhbHJlYWR5IGV4aXN0cykiCittc2dzdHIgImthbiBpbnRlIGJlaMOlbGxhIG9yaWdpbmFsa2F0YWxvZyAoZmlubnMgcmVkYW4pIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MTQwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZW5hbWUgbmV3bHktZXh0cmFjdGVkICVzIHRvICVzIgorbXNnc3RyICJtaXNzbHlja2FkZXMgYXR0IHRhIGJvcnQgJXMsIHNvbSBqdXN0IGV4dHJhaGVyYXRzLCB0aWxsICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MTQ2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImZhaWxlZCB0byByZW5hbWUgc2F2ZWQgJXMgdG8gJXMiCittc2dzdHIgIm1pc3NseWNrYWRlcyBhdHQgYnl0YSBuYW1uIHDDpSBzcGFyYWQgJXMgdGlsbCAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjE1MyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06MjIyCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06MTcyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImFwcGx5aW5nICVzIgorbXNnc3RyICJ0aWxsw6RtcGFyICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MTU4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVwc3RyZWFtIGZpbGVzIHRoYXQgaGF2ZSBiZWVuIG1vZGlmaWVkOiAlcyIKK21zZ3N0ciAidXBwc3Ryw7Ztc2ZpbGVyIHNvbSBoYXIgw6RuZHJhdHM6ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MTY4Cittc2dpZCAib25seSBzdXBwb3J0cyBnemlwIGNvbXByZXNzaW9uIgorbXNnc3RyICJzdMO2ZGVyIGVuZGFzdCBnemlwLWtvbXByaW1lcmluZyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjE3OQorbXNnaWQgIiIKKyItYiB0YWtlcyBhdCBtb3N0IGEgZGlyZWN0b3J5IGFuZCBhbiBvcmlnIHNvdXJjZSBhcmd1bWVudCAod2l0aCB2MS4wIHNvdXJjZSAiCisicGFja2FnZSkiCittc2dzdHIgIiIKKyItYiB0YXIgc29tIG1lc3QgZW4ga2F0YWxvZyBvY2ggZW4gb3JpZ2luYWxrw6RsbGtvZCBzb20gYXJndW1lbnQgKG1lZCB2MS4wLSIKKyJrw6RsbGtvZHNwYWtldCkiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToxODUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAic291cmNlIGhhbmRsaW5nIHN0eWxlIC1zJXMgbm90IGFsbG93ZWQgd2l0aCAtYiIKK21zZ3N0ciAia8OkbGxrb2RzaGFudGVyaW5nc3R5cCAtcyVzIHRpbGzDpXRzIGludGUgbWVkIC1iIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MjAwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInBhY2tlZCBvcmlnIGAlcycgZXhpc3RzIGJ1dCBpcyBub3QgYSBwbGFpbiBmaWxlIgorbXNnc3RyICJwYWNrYWQgb3JpZyBcIiVzXCIgZmlubnMgbWVuIMOkciBpbnRlIGVuIHZhbmxpZyBmaWwiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToyMTIKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY2Fubm90IHN0YXQgb3JpZyBhcmd1bWVudCAlcyIKK21zZ3N0ciAia3VuZGUgaW50ZSB0YSBzdGF0dXMgcMOlIG9yaWdpbmFsYXJndW1lbnRldCAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjIxOAorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisib3JpZyBhcmd1bWVudCBpcyB1bnBhY2tlZCBidXQgc291cmNlIGhhbmRsaW5nIHN0eWxlIC1zJXMgY2FsbHMgZm9yIHBhY2tlZCAoLiIKKyJvcmlnLnRhci48ZXh0PikiCittc2dzdHIgIiIKKyJvcmlnaW5hbGFyZ3VtZW50IGhhciBwYWNrYXRzIHVwcCBtZW4ga8OkbGxrb2RzaGFudGVyaW5nc3R5cGVuIC1zJXMgYmVyIG9tIGVuICIKKyJwYWNrYWQgKC5vcmlnLnRhci48w6RuZGVsc2U+KSIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjIyNgorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisib3JpZyBhcmd1bWVudCBpcyBwYWNrZWQgYnV0IHNvdXJjZSBoYW5kbGluZyBzdHlsZSAtcyVzIGNhbGxzIGZvciB1bnBhY2tlZCAoLiIKKyJvcmlnLykiCittc2dzdHIgIiIKKyJvcmlnaW5hbGFyZ3VtZW50IGhhciBwYWNrYXRzIG1lbiBrw6RsbGtvZHNoYW50ZXJpbmdzdHlwZW4gLXMlcyBiZXIgb20gZW4gIgorInVwcGFja2FkIChvcmlnLykiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToyMzEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAib3JpZyBhcmd1bWVudCAlcyBpcyBub3QgYSBwbGFpbiBmaWxlIG9yIGRpcmVjdG9yeSIKK21zZ3N0ciAib3JpZy1wYXJhbWV0ZXJuICVzIMOkciBpbnRlIGVuIHZhbmxpZyBmaWwgZWxsZXIga2F0YWxvZyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjIzNworIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisib3JpZyBhcmd1bWVudCBpcyBlbXB0eSAobWVhbnMgbm8gb3JpZywgbm8gZGlmZikgYnV0IHNvdXJjZSBoYW5kbGluZyBzdHlsZSAtcyIKKyIlcyB3YW50cyBzb21ldGhpbmciCittc2dzdHIgIiIKKyJvcmlnaW5hbGFyZ3VtZW50IMOkciB0b210IChiZXR5ZGVyIGluZ2VuIG9yaWcsIGluZ2VuIGRpZmYpIG1lbiAiCisia8OkbGxrb2RzaGFudGVyaW5nc3R5cGVuIC1zJXMgYmVyIG9tIG7DpWdvdCIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjI1MAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bnBhY2tlZCBvcmlnIGAlcycgZXhpc3RzIGJ1dCBpcyBub3QgYSBkaXJlY3RvcnkiCittc2dzdHIgInVwcGFja2FkIG9yaWcgXCIlc1wiIGZpbm5zIG1lbiDDpHIgaW50ZSBlbiBrYXRhbG9nIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MjU1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVuYWJsZSB0byBzdGF0IHB1dGF0aXZlIHVucGFja2VkIG9yaWcgYCVzJyIKK21zZ3N0ciAia2FuIGludGUgdGEgc3RhdHVzIHDDpSBmw7ZybW9kYWQgdXBwYWNrYWQgb3JpZyBcIiVzXCIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToyNjQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAic291cmNlIGRpcmVjdG9yeSAnJXMnIGlzIG5vdCA8c291cmNlcGFja2FnZT4tPHVwc3RyZWFtdmVyc2lvbj4gJyVzJyIKK21zZ3N0ciAiIgorImvDpGxsa29kc2thdGFsb2cgXCIlc1wiIMOkciBpbnRlIDxrw6RsbGtvZHNwYWtldD4tPHVwcHN0csO2bXN2ZXJzaW9uPiBcIiVzXCIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToyNzMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiLm9yaWcgZGlyZWN0b3J5IG5hbWUgJXMgaXMgbm90IDxwYWNrYWdlPi08dXBzdHJlYW12ZXJzaW9uPiAod2FudGVkICVzKSIKK21zZ3N0ciAiLm9yaWcta2F0YWxvZ25hbW5ldCAlcyDDpHIgaW50ZSA8cGFrZXQ+LTx1cHBzdHLDtm1zdmVyc2lvbj4gKMO2bnNrYWRlICVzKSIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjI4MgorIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiLm9yaWcudGFyIG5hbWUgJXMgaXMgbm90IDxwYWNrYWdlPl88dXBzdHJlYW12ZXJzaW9uPi5vcmlnLnRhciAod2FudGVkICVzKSIKK21zZ3N0ciAiIgorIi5vcmlnLnRhci1uYW1uZXQgJXMgw6RyIGludGUgPHBha2V0Pl88dXBwc3Ryw7Ztc3ZlcnNpb24+Lm9yaWcudGFyICjDtm5za2FkZSAlcykiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToyOTQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorInRhcmZpbGUgYCVzJyBhbHJlYWR5IGV4aXN0cywgbm90IG92ZXJ3cml0aW5nLCBnaXZpbmcgdXA7IHVzZSAtc1Ugb3IgLXNSIHRvICIKKyJvdmVycmlkZSIKK21zZ3N0ciAiIgorInRhcmZpbGVuIFwiJXNcIiBmaW5ucyByZWRhbiwgc2tyaXZlciBpbnRlIMO2dmVyLCBnZXIgdXBwLCBhbnbDpG5kIC1zVSBlbGxlciAtIgorInNSIGbDtnIgYXR0IMO2dmVyc3R5cmEiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbToyOTgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoZWNrIGZvciBleGlzdGVuY2Ugb2YgYCVzJyIKK21zZ3N0ciAia3VuZGUgaW50ZSBzZSBvbSBcIiVzXCIgZXhpc3RlcmFyIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06MzEzIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbTozNzUKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9uYXRpdmUucG06OTgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIHJlbmFtZSBgJXMnIChuZXdseSBjcmVhdGVkKSB0byBgJXMnIgorbXNnc3RyICJrdW5kZSBpbnRlIGJ5dGEgbmFtbiBww6UgXCIlc1wiIChwcmVjaXMgc2thcGFkKSB0aWxsIFwiJXNcIiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjMxNiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjEucG06Mzc4CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NjAzCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvbmF0aXZlLnBtOjEwMgorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjM2NworIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmFibGUgdG8gY2hhbmdlIHBlcm1pc3Npb24gb2YgYCVzJyIKK21zZ3N0ciAia3VuZGUgaW50ZSDDpG5kcmEgYmVyb2VuZGVuIHDDpSBcIiVzXCIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbTozMTggc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjM0OAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJidWlsZGluZyAlcyB1c2luZyBleGlzdGluZyAlcyIKK21zZ3N0ciAiYnlnZ2VyICVzIG1lZCBiZWZpbnRsaWcgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbTozMjcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorIm9yaWcgZGlyIGAlcycgYWxyZWFkeSBleGlzdHMsIG5vdCBvdmVyd3JpdGluZywgZ2l2aW5nIHVwOyB1c2UgLXNBLCAtc0sgb3IgLSIKKyJzUCB0byBvdmVycmlkZSIKK21zZ3N0ciAiIgorIm9yaWdpbmFsa2F0YWxvZyBcIiVzXCIgZmlubnMgcmVkYW4sIHNrcml2ZXIgaW50ZSDDtnZlciwgZ2VyIHVwcDsgYW52w6RuZCAtc0EsIC0iCisic0sgZWxsZXIgLXNQIGbDtnIgYXR0IMO2dmVyc3R5cmEiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbTozMzUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW5hYmxlIHRvIGNoZWNrIGZvciBleGlzdGVuY2Ugb2Ygb3JpZyBkaXIgYCVzJyIKK21zZ3N0ciAia2FuIGludGUgc2Ugb20gZXhpc3RlcmFuZGUgb3JpZ2luYWxrYXRhbG9nIFwiJXNcIiBmaW5ucyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjM2NgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ0aGUgZGlmZiBtb2RpZmllcyB0aGUgZm9sbG93aW5nIHVwc3RyZWFtIGZpbGVzOiAlcyIKK21zZ3N0ciAiZGlmZmVuIG1vZGlmaWVyYXIgZsO2bGphbmRlIHVwcHN0csO2bXNmaWxlcjogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbTozNjgKK21zZ2lkICIiCisidXNlIHRoZSAnMy4wIChxdWlsdCknIGZvcm1hdCB0byBoYXZlIHNlcGFyYXRlIGFuZCBkb2N1bWVudGVkIGNoYW5nZXMgdG8gIgorInVwc3RyZWFtIGZpbGVzLCBzZWUgZHBrZy1zb3VyY2UoMSkiCittc2dzdHIgIiIKKyJhbnbDpG5kIGZvcm1hdGV0IFwiMy4wIChxdWlsdClcIiBmw7ZyIGF0dCBoYSBzZXBhcmF0YSBvY2ggZG9rdW1lbnRlcmFkZSAiCisiw6RuZHJpbmdhciBww6UgdXBwc3Ryw7Ztc2ZpbGVyLCBzZSBkcGtnLXNvdXJjZSgxKSIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YxLnBtOjM3MAorbXNnaWQgImFib3J0aW5nIGR1ZSB0byAtLWFib3J0LW9uLXVwc3RyZWFtLWNoYW5nZXMiCittc2dzdHIgImF2YnJ5dGVyIHDDpSBncnVuZCBhdiAtLWFib3J0LW9uLXVwc3RyZWFtLWNoYW5nZXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMS5wbTozODgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXM6IHVucmVwcmVzZW50YWJsZSBjaGFuZ2VzIHRvIHNvdXJjZSIKK21zZ3N0ciAiJXM6IMOkbmRyaW5nIGkga8OkbGxrb2Qga2FuIGludGUgcmVwcmVzZW50ZXJhcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjExOQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJkdXBsaWNhdGUgZmlsZXMgaW4gJXMgc291cmNlIHBhY2thZ2U6ICVzLioiCittc2dzdHIgImR1YmJsZXJhZGUgZmlsZXIgaSAlcy1rw6RsbGtvZHNwYWtldDogJXMuKiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjEzNQorbXNnaWQgIm1pc3Npbmcgb3JpZy50YXIgb3IgZGViaWFuLnRhciBmaWxlIGluIHYyLjAgc291cmNlIHBhY2thZ2UiCittc2dzdHIgInNha25hZCBvcmlnLnRhci0gZWxsZXIgZGViaWFuLnRhci1maWwgZsO2ciB2Mi4wLWvDpGxsa29kc3Bha2V0IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06MTU1CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInJlcXVpcmVkIHJlbW92YWwgb2YgYCVzJyBpbnN0YWxsZWQgYnkgb3JpZ2luYWwgdGFyYmFsbCIKK21zZ3N0ciAibsO2ZHbDpG5kaWcgYm9ydHRhZ25pbmcgYXYgXCIlc1wiIGluc3RhbGxlcmFkIGF2IG9yaWdpbmFsdGFyYm9sbCIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjI0MAorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjI1NQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmFwcGx5aW5nICVzIgorbXNnc3RyICJ0YXIgYm9ydCB0aWxsw6RtcG5pbmcgYXYgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbToyNjMgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjM0NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJubyB1cHN0cmVhbSB0YXJiYWxsIGZvdW5kIGF0ICVzIgorbXNnc3RyICJoaXR0YWRlIGluZ2VuIHVwcHN0csO2bXMtdGFyYm9sbCBww6UgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTozMTQKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbTozMjkKK21zZ2lkICJwYXRjaGVzIGFyZSBub3QgYXBwbGllZCwgYXBwbHlpbmcgdGhlbSBub3ciCittc2dzdHIgInBhdGNoYXJuYSBoYXIgaW50ZSB0aWxsw6RtcGF0cywgdGlsbMOkbXBhciBkZW0gbnUiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTozMzEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAic2V2ZXJhbCBvcmlnLnRhciBmaWxlcyBmb3VuZCAoJXMgYW5kICVzKSBidXQgb25seSBvbmUgaXMgYWxsb3dlZCIKK21zZ3N0ciAiZmxlcmEgb3JpZy50YXItZmlsZXIgaGl0dGFkZXMgKCVzIG9jaCAlcykgbWVuIGVuZGFzdCBlbiB0aWxsw6V0cyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjM3MAorbXNnaWQgImNvcHkgb2YgdGhlIGRlYmlhbiBkaXJlY3RvcnkiCittc2dzdHIgImtvcGlhIGF2IGRlYmlhbi1rYXRhbG9nZW4iCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTozODgKK21zZ2lkICJ1bnJlcHJlc2VudGFibGUgY2hhbmdlcyB0byBzb3VyY2UiCittc2dzdHIgIsOkbmRyaW5nIGkga8OkbGxrb2Qga2FuIGludGUgcmVwcmVzZW50ZXJhcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjM5MQorbXNnaWQgImxvY2FsIGNoYW5nZXMgZGV0ZWN0ZWQsIHRoZSBtb2RpZmllZCBmaWxlcyBhcmU6IgorbXNnc3RyICJsb2thbGEgw6RuZHJpbmdhciB1cHB0w6Rja3RlcywgZGUgw6RuZHJhZGUgZmlsZXJuYSDDpHI6IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NDEwCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvYnpyLnBtOjk3CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvbmF0aXZlLnBtOjc2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIi1iIHRha2VzIG9ubHkgb25lIHBhcmFtZXRlciB3aXRoIGZvcm1hdCBgJXMnIgorbXNnc3RyICItYiB0YXIgYmFyYSBlbiBwYXJhbWV0ZXIgZsO2ciBmb3JtYXRldCBcIiVzXCIiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo0NDQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiIgorImFkZCAlcyBpbiBkZWJpYW4vc291cmNlL2luY2x1ZGUtYmluYXJpZXMgaWYgeW91IHdhbnQgdG8gc3RvcmUgdGhlIG1vZGlmaWVkICIKKyJiaW5hcnkgaW4gdGhlIGRlYmlhbiB0YXJiYWxsIgorbXNnc3RyICIiCisibMOkZ2cgdGlsbCAlcyBpIGRlYmlhbi9zb3VyY2UvaW5jbHVkZS1iaW5hcmllcyBvbSBkdSB2aWxsIHNwYXJhIGRlbiAiCisibW9kaWZpZXJhZGUgYmluw6RyZW4gaSBkZWJpYW4tdGFyYm9sbGVuIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NDU4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVud2FudGVkIGJpbmFyeSBmaWxlOiAlcyIKK21zZ3N0ciAib8O2bnNrYWQgYmluw6RyZmlsOiAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjQ5MworIywgcGVybC1mb3JtYXQKK21zZ2lkICIiCisiZGV0ZWN0ZWQgJWQgdW53YW50ZWQgYmluYXJ5IGZpbGUgKGFkZCBpdCBpbiBkZWJpYW4vc291cmNlL2luY2x1ZGUtYmluYXJpZXMgIgorInRvIGFsbG93IGl0cyBpbmNsdXNpb24pLiIKK21zZ2lkX3BsdXJhbCAiIgorImRldGVjdGVkICVkIHVud2FudGVkIGJpbmFyeSBmaWxlcyAoYWRkIHRoZW0gaW4gZGViaWFuL3NvdXJjZS9pbmNsdWRlLSIKKyJiaW5hcmllcyB0byBhbGxvdyB0aGVpciBpbmNsdXNpb24pLiIKK21zZ3N0clswXSAiIgorInVwcHTDpGNrdGUgJWQgb8O2bnNrYWQgYmluw6RyZmlsIChsw6RnZyB0aWxsIGRlbiBpIGRlYmlhbi9zb3VyY2UvaW5jbHVkZS0iCisiYmluYXJpZXMgZsO2ciBhdHQgdGlsbMOldGEgYXR0IGRlbiB0YXMgbWVkKSIKK21zZ3N0clsxXSAiIgorInVwcHTDpGNrdGUgJWQgb8O2bnNrYWRlIGJpbsOkcmZpbGVyIChsw6RnZyB0aWxsIGRlbSBpIGRlYmlhbi9zb3VyY2UvaW5jbHVkZS0iCisiYmluYXJpZXMgZsO2ciBhdHQgdGlsbMOldGEgYXR0IGRlIHRhcyBtZWQpIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NTA4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInlvdSBjYW4gaW50ZWdyYXRlIHRoZSBsb2NhbCBjaGFuZ2VzIHdpdGggJXMiCittc2dzdHIgImR1IGthbiBpbnRlZ3JlcmEgZGUgbG9rYWxhIMOkbmRyaW5nYXJuYSBtZWQgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo1MTAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiYWJvcnRpbmcgZHVlIHRvIHVuZXhwZWN0ZWQgdXBzdHJlYW0gY2hhbmdlcywgc2VlICVzIgorbXNnc3RyICJhdmJyeXRlciBww6UgZ3J1bmQgYXYgb3bDpG50YWRlIHVwcHN0csO2bXPDpG5kcmluZ2FyLCBzZSAlcy1jaGFuZ2VzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NTIwIHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo2NTMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAibG9jYWwgY2hhbmdlcyBoYXZlIGJlZW4gcmVjb3JkZWQgaW4gYSBuZXcgcGF0Y2g6ICVzIgorbXNnc3RyICJsb2thbGEgw6RuZHJpbmdhciBoYXIgc2tyaXZpdHMgdGlsbCBlbiBueSBwYXRjaDogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo1MjQgc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjYwOQorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjYzNyBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NjUxCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06MzY5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZW1vdmUgJXMiCittc2dzdHIgImthbiBpbnRlIHRhIGJvcnQgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo1MzQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiYWRkaW5nICVzIHRvICVzIgorbXNnc3RyICJsw6RnZ2VyICVzIHRpbGwgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMi5wbTo2MDEKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9xdWlsdC5wbTozNjUKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZmFpbGVkIHRvIGNvcHkgJXMgdG8gJXMiCittc2dzdHIgIm1pc3NseWNrYWRlcyBhdHQga29waWVyYSAlcyB0aWxsICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjIucG06NjI0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCByZWdpc3RlciBjaGFuZ2VzIGluICVzLCB0aGlzIHBhdGNoIGFscmVhZHkgZXhpc3RzIgorbXNnc3RyICJrYW4gaW50ZSByZWdpc3RyZXJhIMOkbmRyaW5nYXIgaSAlcywgcGF0Y2hlbiBmaW5ucyByZWRhbiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjYzOAorbXNnaWQgInRoZXJlIGFyZSBubyBsb2NhbCBjaGFuZ2VzIHRvIHJlY29yZCIKK21zZ3N0ciAiZGV0IGZpbm5zIGludGUgbsOlZ3JhIGxva2FsYSDDpG5kcmluZ2FyIGF0dCBzcGFyYSIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YyLnBtOjY0MworbXNnaWQgIkVudGVyIHRoZSBkZXNpcmVkIHBhdGNoIG5hbWU6ICIKK21zZ3N0ciAiQW5nZSDDtm5za2F0IHBhdGNobmFtbjogIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvYnpyLnBtOjUyCittc2dpZCAiIgorIlRoaXMgc291cmNlIHBhY2thZ2UgY2FuIG9ubHkgYmUgbWFuaXB1bGF0ZWQgdXNpbmcgYnpyLCB3aGljaCBpcyBub3QgaW4gdGhlICIKKyJQQVRILiIKK21zZ3N0ciAiIgorIkvDpGxsa29kc3Bha2V0ZXQga2FuIGVuZGFzdCBtYW5pcHVsZXJhcyBtZWQgYnpyLCB2aWxrZXQgaW50ZSBmaW5ucyBpIFBBVEguIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvYnpyLnBtOjU5CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJzb3VyY2UgZGlyZWN0b3J5IGlzIG5vdCB0aGUgdG9wIGRpcmVjdG9yeSBvZiBhIGJ6ciByZXBvc2l0b3J5ICglcy8uYnpyIG5vdCAiCisicHJlc2VudCksIGJ1dCBGb3JtYXQgYnpyIHdhcyBzcGVjaWZpZWQiCittc2dzdHIgIiIKKyJrw6RsbGtvZHNrYXRhbG9nZW4gw6RyIGludGUgdG9wcGthdGFsb2dlbiBpIGJ6ci1hcmtpdmV0ICglcy8uYnpyIGZpbm5zIGludGUpLCAiCisibWVuIGZvcm1hdGV0IGJ6ciBhbmdhdnMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9ienIucG06NjYKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgaXMgYSBzeW1saW5rIgorbXNnc3RyICIlcyDDpHIgZW4gc3ltYm9saXNrIGzDpG5rIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvYnpyLnBtOjcyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiVzIGlzIGEgc3ltbGluayB0byBvdXRzaWRlICVzIgorbXNnc3RyICIlcyDDpHIgZW4gc3ltYm9saXNrIHRpbGwgbMOkbmsgdXRhbmbDtnIgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9ienIucG06ODMKK21zZ2lkICJkb2Vzbid0IGNvbnRhaW4gYSBienIgcmVwb3NpdG9yeSIKK21zZ3N0ciAiaW5uZWjDpWxsZXIgaW50ZSBldHQgYnpyLWFya2l2IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvYnpyLnBtOjEyNworbXNnaWQgImJ6ciBzdGF0dXMgZXhpdGVkIG5vbnplcm8iCittc2dzdHIgImJ6ciBzdGF0dXMgYXZzbHV0YWRlIG1lZCBlbiBhbm5hbiBzdGF0dXMgw6RuIG5vbGwiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9ienIucG06MTI5CisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvZ2l0LnBtOjEzMworIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bmNvbW1pdHRlZCwgbm90LWlnbm9yZWQgY2hhbmdlcyBpbiB3b3JraW5nIGRpcmVjdG9yeTogJXMiCittc2dzdHIgImVqIGluY2hlY2thZGUsIGVqIGlnbm9yZXJhZGUgw6RuZHJpbmdhciBpIGFyYmV0c2thdGFsb2dlbjogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9ienIucG06MTc5Cittc2dpZCAiZm9ybWF0IHYzLjAgdXNlcyBvbmx5IG9uZSBzb3VyY2UgZmlsZSIKK21zZ3N0ciAiZm9ybWF0ZXQgdjMuMCBpbm5laMOlbGxlciBlbmRhc3QgZW4ga8OkbGxrb2RzZmlsIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvYnpyLnBtOjE4MworIywgcGVybC1mb3JtYXQKK21zZ2lkICJleHBlY3RlZCAlcywgZ290ICVzIgorbXNnc3RyICJmw7ZydsOkbnRhZGUgJXMsIGZpY2sgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9jdXN0b20ucG06NDAKK21zZ2lkICJGb3JtYXQgYDMuMCAoY3VzdG9tKScgaXMgb25seSB1c2VkIHRvIGNyZWF0ZSBzb3VyY2UgcGFja2FnZXMiCittc2dzdHIgIkZvcm1hdCBcIjMuMCAoc2tyw6RkZGFyc3l0dClcIiBhbnbDpG5kcyBiYXJhIGbDtnIgYXR0IHNrYXBhIGvDpGxsa29kc3Bha2V0IgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvY3VzdG9tLnBtOjQ2Cittc2dpZCAibm8gZmlsZXMgaW5kaWNhdGVkIG9uIGNvbW1hbmQgbGluZSIKK21zZ3N0ciAiaW5nYSBmaWxlciBhbmdhdnMgcMOlIGtvbW1hbmRvcmFkZW4iCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9jdXN0b20ucG06NTMKK21zZ2lkICItLXRhcmdldC1mb3JtYXQgb3B0aW9uIGlzIG1pc3NpbmciCittc2dzdHIgImZsYWdnYW4gLS10YXJnZXQtZm9ybWF0IHNha25hcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL25hdGl2ZS5wbTo1NAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bnJlY29nbml6ZWQgZmlsZSBmb3IgYSBuYXRpdmUgc291cmNlIHBhY2thZ2U6ICVzIgorbXNnc3RyICJva8OkbmQgZmlsIGkgZXR0IERlYmlhbmVnZXQga8OkbGxrb2RzcGFrZXQ6ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvZ2l0LnBtOjU1Cittc2dpZCAiIgorIlRoaXMgc291cmNlIHBhY2thZ2UgY2FuIG9ubHkgYmUgbWFuaXB1bGF0ZWQgdXNpbmcgZ2l0LCB3aGljaCBpcyBub3QgaW4gdGhlICIKKyJQQVRILiIKK21zZ3N0ciAiIgorIkvDpGxsa29kc3Bha2V0ZXQga2FuIGVuZGFzdCBtYW5pcHVsZXJhcyBtZWQgZ2l0LCB2aWxrZXQgaW50ZSBmaW5ucyBpIFBBVEguIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvZ2l0LnBtOjYzCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJzb3VyY2UgZGlyZWN0b3J5IGlzIG5vdCB0aGUgdG9wIGRpcmVjdG9yeSBvZiBhIGdpdCByZXBvc2l0b3J5ICglcy8uZ2l0IG5vdCAiCisicHJlc2VudCksIGJ1dCBGb3JtYXQgZ2l0IHdhcyBzcGVjaWZpZWQiCittc2dzdHIgIiIKKyJrw6RsbGtvZHNrYXRhbG9nZW4gw6RyIGludGUgdG9wcGthdGFsb2dlbiBpIGdpdC1hcmtpdmV0ICglcy8uZ2l0IGZpbm5zIGludGUpLCAiCisibWVuIGZvcm1hdGV0IGdpdCBhbmdhdnMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9naXQucG06NjgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZ2l0IHJlcG9zaXRvcnkgJXMgdXNlcyBzdWJtb2R1bGVzLiBUaGlzIGlzIG5vdCB5ZXQgc3VwcG9ydGVkLiIKK21zZ3N0ciAiZ2l0LWFya2l2ZXQgJXMgYW52w6RuZGVyIHVuZGVybW9kdWxlci4gRGV0dGEgc3TDtmRzIGludGUgw6RubnUuIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvZ2l0LnBtOjkwCittc2dpZCAiZG9lc24ndCBjb250YWluIGEgZ2l0IHJlcG9zaXRvcnkiCittc2dzdHIgImlubmVow6VsbGVyIGludGUgbsOlZ290IGdpdC1hcmtpdiIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2dpdC5wbToxMzEKK21zZ2lkICJnaXQgbHMtZmlsZXMgZXhpdGVkIG5vbnplcm8iCittc2dzdHIgImdpdCBscy1maWxlcyBhdnNsdXRhZGUgbWVkIGVuIGFubmFuIHN0YXR1cyDDpG4gbm9sbCIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2dpdC5wbToxNDkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiY3JlYXRpbmcgc2hhbGxvdyBjbG9uZSB3aXRoIGRlcHRoICVzIgorbXNnc3RyICJza2FwYXIgZ3J1bmQga2xvbiBtZWQgZGp1cGV0ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvZ2l0LnBtOjE2NQorIywgcGVybC1mb3JtYXQKK21zZ2lkICJidW5kbGluZzogJXMiCittc2dzdHIgInNrYXBhciBwYWNrZTogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9naXQucG06MjAxCittc2dpZCAiZm9ybWF0IHYzLjAgKGdpdCkgdXNlcyBvbmx5IG9uZSAuZ2l0IGZpbGUiCittc2dzdHIgImZvcm1hdGV0IHYzLjAgKGdpdCkgYW52w6RuZGVyIGVuZGFzdCBlbiBcIi5naXRcIi1maWwiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9naXQucG06MjA3Cittc2dpZCAiZm9ybWF0IHYzLjAgKGdpdCkgdXNlcyBvbmx5IG9uZSAuZ2l0c2hhbGxvdyBmaWxlIgorbXNnc3RyICJmb3JtYXRldCB2My4wIChnaXQpIGFudsOkbmRlciBlbmRhc3QgZW4gXCIuZ2l0c2hhbGxvd1wiLWZpbCIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2dpdC5wbToyMTAKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZm9ybWF0IHYzLjAgKGdpdCkgdW5rbm93biBmaWxlOiAlcyIKK21zZ3N0ciAiZm9ybWF0ZXQgdjMuMCAoZ2l0KSBva8OkbmQgZmlsOiAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL2dpdC5wbToyMTQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiZm9ybWF0IHYzLjAgKGdpdCkgZXhwZWN0ZWQgJXMiCittc2dzdHIgImZvcm1hdGV0IHYzLjAgKGdpdCkgZsO2cnbDpG50YWRlICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvZ2l0LnBtOjIyMAorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjbG9uaW5nICVzIgorbXNnc3RyICJrbG9uYXIgJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9Tb3VyY2UvUGFja2FnZS9WMy9naXQucG06MjI3Cittc2dpZCAic2V0dGluZyB1cCBzaGFsbG93IGNsb25lIgorbXNnc3RyICJzdMOkbGxlciBpbiBncnVuZCBrbG9uIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06NzMKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgc2hvdWxkIGJlIGEgZGlyZWN0b3J5IG9yIG5vbi1leGlzdGluZyIKK21zZ3N0ciAiJXMgYm9yZGUgdmFyYSBlbiBrYXRhbG9nIGVsbGVyIGludGUgZmlubmFzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06NzkKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAiJXMgc2hvdWxkIGJlIGEgZmlsZSBvciBub24tZXhpc3RpbmciCittc2dzdHIgIiVzIGJvcmRlIHZhcmEgZW4gZmlsIGVsbGVyIGludGUgZmlubmFzIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06MTIwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIiIKKyJ0aGUgc2VyaWVzIGZpbGUgKCVzKSBjb250YWlucyB1bnN1cHBvcnRlZCBvcHRpb25zICgnJXMnLCBsaW5lICVzKSwgZHBrZy0iCisic291cmNlIG1pZ2h0IGZhaWwgd2hlbiBhcHBseWluZyBwYXRjaGVzLiIKK21zZ3N0ciAiIgorInNlcmllcy1maWxlbiAoJXMpIGlubmVow6VsbGVyIGZsYWdnb3Igc29tIGludGUgc3TDtmRzIChcIiVzXCIsIHJhZCAlcyksIGRwa2ctIgorInNvdXJjZSBrYW5za2Uga29tbWVyIGF0dCBtaXNzbHlja2FzIG1lZCBhdHQgdGlsbMOkbXBhIHBhdGNoYXIuIgorCisjOiBzY3JpcHRzL0Rwa2cvU291cmNlL1BhY2thZ2UvVjMvcXVpbHQucG06MTM4CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImNhbm5vdCBta2RpciAlcyIKK21zZ3N0ciAia2FuIGludGUgc2thcGEga2F0YWxvZyAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjIxMgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJjYW4ndCBjcmVhdGUgc3ltbGluayAlcyIKK21zZ3N0ciAia2FuIGludGUgc2thcGEgZGVuIHN5bWJvbGlza2EgbMOkbmtlbiAlcyIKKworIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjI5NAorIzogc2NyaXB0cy9EcGtnL1NvdXJjZS9QYWNrYWdlL1YzL3F1aWx0LnBtOjI5NworIywgcGVybC1mb3JtYXQKK21zZ2lkICJ1bnN1cHBvcnRlZCB2ZXJzaW9uIG9mIHRoZSBxdWlsdCBtZXRhZGF0YTogJXMiCittc2dzdHIgInZlcnNpb25lbiBhdiBxdWlsdC1tZXRhZGF0YSBzdMO2ZHMgaW50ZTogJXMiCisKKyM6IHNjcmlwdHMvRHBrZy9TdWJzdHZhcnMucG06MTUwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImJhZCBsaW5lIGluIHN1YnN0dmFycyBmaWxlICVzIGF0IGxpbmUgJWQiCittc2dzdHIgImZlbGFrdGlnIHJhZCBpIHN1YnN0dmFycy1maWxlbiAlcyBww6UgcmFkICVkIgorCisjOiBzY3JpcHRzL0Rwa2cvU3Vic3R2YXJzLnBtOjIxNworIywgcGVybC1mb3JtYXQKK21zZ2lkICJ0b28gbWFueSBzdWJzdGl0dXRpb25zIC0gcmVjdXJzaXZlID8gLSBpbiBgJXMnIgorbXNnc3RyICJmw7ZyIG3DpW5nYSBzdWJzdGl0dWVyaW5nYXIgLSByZWt1cnNpdnQ/IC0gaSBcIiVzXCIiCisKKyM6IHNjcmlwdHMvRHBrZy9TdWJzdHZhcnMucG06MjI0CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVua25vd24gc3Vic3RpdHV0aW9uIHZhcmlhYmxlICR7JXN9IgorbXNnc3RyICJva8OkbmQgc3Vic3RpdHVlcmluZ3N2YXJpYWJlbCAkeyVzfSIKKworIzogc2NyaXB0cy9EcGtnL1N1YnN0dmFycy5wbToyNDgKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidW51c2VkIHN1YnN0aXR1dGlvbiB2YXJpYWJsZSAkeyVzfSIKK21zZ3N0ciAib2FudsOkbmQgc3Vic3RpdHVlcmluZ3N2YXJpYWJlbCAkeyVzfSIKKworIzogc2NyaXB0cy9EcGtnL1ZhcnMucG06MzQKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAic291cmNlIHBhY2thZ2UgbmFtZSBgJXMnIGNvbnRhaW5zIGlsbGVnYWwgY2hhcmFjdGVyIGAlcyciCittc2dzdHIgIm5hbW5ldCBww6Uga8OkbGxrb2RzcGFrZXRldCBcIiVzXCIgaW5uZWjDpWxsZXIgb2dpbHRpZ3QgdGVja2VuIFwiJXNcIiIKKworIzogc2NyaXB0cy9EcGtnL1ZhcnMucG06MzcKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAic291cmNlIHBhY2thZ2UgbmFtZSBgJXMnIHN0YXJ0cyB3aXRoIG5vbi1hbHBoYW51bSIKK21zZ3N0ciAibmFtbmV0IHDDpSBrw6RsbGtvZHNwYWtldGV0IFwiJXNcIiBiw7ZyamFyIG1lZCBpY2tlLWFsZmFudW1lcmlza3QgdGVja2VuIgorCisjOiBzY3JpcHRzL0Rwa2cvVmFycy5wbTo0NgorIywgcGVybC1mb3JtYXQKK21zZ2lkICJzb3VyY2UgcGFja2FnZSBoYXMgdHdvIGNvbmZsaWN0aW5nIHZhbHVlcyAtICVzIGFuZCAlcyIKK21zZ3N0ciAia8OkbGxrb2RzcGFrZXRldCBoYXIgdHbDpSBlbW90c8OkZ2FuZGUgdsOkcmRlbiAtICVzIG9jaCAlcyIKKworIzogc2NyaXB0cy9EcGtnL1ZlbmRvci9EZWJpYW4ucG06MTA2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgInVua25vd24gaGFyZGVuaW5nIGZlYXR1cmU6ICVzIgorbXNnc3RyICJva8OkbmQgaMOkcmRuaW5nc2Z1bmt0aW9uOiAlcyIKKworIzogc2NyaXB0cy9EcGtnL1ZlbmRvci9EZWJpYW4ucG06MTEwCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImluY29ycmVjdCB2YWx1ZSBpbiBoYXJkZW5pbmcgb3B0aW9uIG9mIERFQl9CVUlMRF9NQUlOVF9PUFRJT05TOiAlcyIKK21zZ3N0ciAiZmVsYWt0aWd0IHbDpHJkZSBpIGjDpHJkbmluZ3NmbGFnZ2FuIGkgREVCX0JVSUxEX01BSU5UX09QVElPTlM6ICVzIgorCisjOiBzY3JpcHRzL0Rwa2cvVmVuZG9yL1VidW50dS5wbTo2MSBzY3JpcHRzL0Rwa2cvVmVuZG9yL1VidW50dS5wbTo2MworbXNnaWQgIiIKKyJWZXJzaW9uIG51bWJlciBzdWdnZXN0cyBVYnVudHUgY2hhbmdlcywgYnV0IE1haW50YWluZXI6IGRvZXMgbm90IGhhdmUgVWJ1bnR1ICIKKyJhZGRyZXNzIgorbXNnc3RyICIiCisiVmVyc2lvbnNudW1yZXQgaW5kaWtlcmFyIFVidW50dcOkbmRyaW5nYXIsIG1lbiBNYWludGFpbmVyOiBpbm5laMOlbGxlciBpbnRlIGVuICIKKyJVYnVudHVhZHJlc3MiCisKKyM6IHNjcmlwdHMvRHBrZy9WZW5kb3IvVWJ1bnR1LnBtOjY3Cittc2dpZCAiIgorIlZlcnNpb24gbnVtYmVyIHN1Z2dlc3RzIFVidW50dSBjaGFuZ2VzLCBidXQgdGhlcmUgaXMgbm8gWFNCQy1PcmlnaW5hbC0iCisiTWFpbnRhaW5lciBmaWVsZCIKK21zZ3N0ciAiIgorIlZlcnNpb25zbnVtcmV0IGluZGlrZXJhciBVYnVudHXDpG5kcmluZ2FyLCBtZW4gZsOkbHRldCBYU0JDLU9yaWdpbmFsLSIKKyJNYWludGFpbmVyIHNha25hcyIKKworIzogc2NyaXB0cy9EcGtnL1ZlbmRvci9VYnVudHUucG06MTIzCittc2dpZCAiJ2hhcmRlbmluZycgZmxhZyBmb3VuZCBidXQgJ2hhcmRlbmluZy13cmFwcGVyJyBub3QgaW5zdGFsbGVkIgorbXNnc3RyICIiCisiXCJoYXJkZW5pbmdcIi1mbGFnZ2FuIGhpdHRhZGVzIG1lbiBcImhhcmRlbmluZy13cmFwcGVyXCIgaGFyIGludGUgIgorImluc3RhbGxlcmF0cyIKKworIzogc2NyaXB0cy9EcGtnL1ZlbmRvci9VYnVudHUucG06MTQyCisjLCBwZXJsLWZvcm1hdAorbXNnaWQgIm92ZXJyaWRpbmcgJXMgaW4gZW52aXJvbm1lbnQ6ICVzIgorbXNnc3RyICLDtnZlcnN0eXIgJXMgaSBtaWxqw7ZuOiAlcyIKKworIzogc2NyaXB0cy9EcGtnL1ZlcnNpb24ucG06MjA0IHNjcmlwdHMvRHBrZy9WZXJzaW9uLnBtOjIwNgorIywgcGVybC1mb3JtYXQKK21zZ2lkICIlcyBpcyBub3QgYSB2YWxpZCB2ZXJzaW9uIgorbXNnc3RyICIlcyDDpHIgaW50ZSBlbiBnaWx0aWcgdmVyc2lvbiIKKworIzogc2NyaXB0cy9EcGtnL1ZlcnNpb24ucG06MzcxCittc2dpZCAidmVyc2lvbiBudW1iZXIgY2Fubm90IGJlIGVtcHR5IgorbXNnc3RyICJ2ZXJzaW9uc251bXJldCBrYW4gaW50ZSB2YXJhIHRvbXQiCisKKyM6IHNjcmlwdHMvRHBrZy9WZXJzaW9uLnBtOjM3NgorbXNnaWQgInZlcnNpb24gbnVtYmVyIGRvZXMgbm90IHN0YXJ0IHdpdGggZGlnaXQiCittc2dzdHIgInZlcnNpb25zbnVtcmV0IGLDtnJqYXIgaW50ZSBtZWQgZW4gc2lmZnJhIgorCisjOiBzY3JpcHRzL0Rwa2cvVmVyc2lvbi5wbTozODEKKyMsIHBlcmwtZm9ybWF0Cittc2dpZCAidmVyc2lvbiBudW1iZXIgY29udGFpbnMgaWxsZWdhbCBjaGFyYWN0ZXIgYCVzJyIKK21zZ3N0ciAidmVyc2lvbnNudW1tZXIgaW5uZWjDpWxsZXIgb2dpbHRpZ3QgdGVja2VuIFwiJXNcIiIKKworIzogc2NyaXB0cy9EcGtnL1ZlcnNpb24ucG06Mzg2CisjLCBwZXJsLWZvcm1hdAorbXNnaWQgImVwb2NoIHBhcnQgb2YgdGhlIHZlcnNpb24gbnVtYmVyIGlzIG5vdCBhIG51bWJlcjogJyVzJyIKK21zZ3N0ciAiZXBva2RlbGVuIGF2IHZlcnNpb25zbnVtcmV0IMOkciBpbnRlIGV0dCB0YWw6IFwiJXNcIiIKKworI34gbXNnaWQgIiVzOiBkcGtnLWJ1aWxkZmxhZ3MgKG9yaWdpbjogJXMpOiAlcyA9ICVzXG4iCisjfiBtc2dzdHIgIiVzOiBkcGtnLWJ1aWxkZmxhZ3MgKGvDpGxsYTogJXMpOiAlcyA9ICVzXG4iCisKKyN+IG1zZ2lkICIxIHRvIDMgYXJncyBleHBlY3RlZFxuIgorI34gbXNnc3RyICIxIHRpbGwgMyBhcmd1bWVudCBmw7ZydsOkbnRhZGVzXG4iCisKKyN+IG1zZ2lkICJuZWVkIGFuIGFjdGlvbiBvcHRpb24iCisjfiBtc2dzdHIgIsOldGfDpHJkIGtyw6R2cyIKKworI34gbXNnaWQgImVudHJ5IG9mIEFQVCdzICVzIGZpbGUiCisjfiBtc2dzdHIgInBvc3QgaSBBUFQtZmlsZW4gJXMiCisKKyN+IG1zZ2lkICJubyBvcmlnLnRhciBmaWxlIGZvdW5kIgorI34gbXNnc3RyICJpbmdlbiBvcmlnLnRhci1maWwgaGl0dGFkZXMiCisKKyN+IG1zZ2lkICJjYW5ub3QgcmVuYW1lICVzIHRvICVzIgorI34gbXNnc3RyICJrYW4gaW50ZSBieXRhIG5hbW4gcMOlICVzIHRpbGwgJXMiCisKKyN+IG1zZ2lkICJleGVjICVzIgorI34gbXNnc3RyICJleGVrdmVyYXIgJXMiCisKKyN+IG1zZ2lkICJjYW5ub3QgZXhlYyBkcGtnIgorI34gbXNnc3RyICJrdW5kZSBpbnRlIGV4ZWt2ZXJhIGRwa2ciCisKKyN+IG1zZ2lkICJnaXQgY29uZmlnIGV4aXRlZCBub256ZXJvIgorI34gbXNnc3RyICJnaXQgY29uZmlnIGF2c2x1dGFkZSBtZWQgZW4gYW5uYW4gc3RhdHVzIMOkbiBub2xsIgorCisjfiBtc2dpZCAiZXhlY3V0YWJsZSBiaXQgc2V0IG9uICVzOyBjbGVhcmluZyIKKyN+IG1zZ3N0ciAiZXhla3ZlcmJpdCBzYXR0IHDDpSAlczsgdGFyIGJvcnQiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gcmVtb3ZlIGAlcyciCisjfiBtc2dzdHIgImthbiBpbnRlIHRhIGJvcnQgXCIlc1wiIgorCisjfiBtc2dpZCAibW9kaWZ5aW5nIC5naXQvY29uZmlnIHRvIGNvbW1lbnQgb3V0IHNvbWUgc2V0dGluZ3MiCisjfiBtc2dzdHIgIm1vZGlmaWVyYXIgLmdpdC9jb25maWcgZsO2ciBhdHQga29tbWVudGVyYSB1dCBuw6VncmEgaW5zdMOkbGxuaW5nYXIiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gYXBwZW5kIHRvICVzIgorI34gbXNnc3RyICJrdW5kZSBpbnRlIGzDpGdnYSB0aWxsIHRpbGwgJXMiCisKKyN+IG1zZ2lkICJUaGUgZm9sbG93aW5nIHNldHRpbmcocykgd2VyZSBkaXNhYmxlZCBieSBkcGtnLXNvdXJjZSIKKyN+IG1zZ3N0ciAiZsO2bGphbmRlIGluc3TDpGxsbmluZyhhcikgc2xvZ3MgYXYgYXYgZHBrZy1zb3VyY2UiCisKKyN+IG1zZ2lkICJuZWVkIC14IG9yIC1iIgorI34gbXNnc3RyICJiZWjDtnZlciAteCBlbGxlciAtYiIKKworI34gbXNnaWQgIm9iamR1bXAgb24gYCVzJyIKKyN+IG1zZ3N0ciAib2JqZHVtcCBww6UgXCIlc1wiIgorCisjfiBtc2dpZCAiJXM6IHNldCAlcyB0byBkZWZhdWx0IHZhbHVlOiAlc1xuIgorI34gbXNnc3RyICIlczogc8OkdHQgJXMgdGlsbCBzdGFuZGFyZHbDpHJkZTogJXNcbiIKKworI34gbXNnaWQgInNvdXJjZSBmb3JtYXQgYCVzJyBkaXNjYXJkZWQ6ICVzIgorI34gbXNnc3RyICJrw6RsbGtvZHNmb3JtYXRldCBcIiVzXCIgZsO2cmthc3RhZGVzOiAlcyIKKworI34gbXNnaWQgImNhbm5vdCBvcGVuIC5kc2MgZmlsZSAlcyIKKyN+IG1zZ3N0ciAia2FuIGludGUgw7ZwcG5hIC5kc2MtZmlsZW4gJXMiCisKKyN+IG1zZ2lkICJzb3VyY2UgY29udHJvbCBmaWxlICVzIgorI34gbXNnc3RyICJrw6RsbHN0eXJmaWxlbiAlcyIKKworI34gbXNnaWQgIkZpbGVzIGZpZWxkIGNvbnRhaW5zIGJhZCBsaW5lIGAlcyciCisjfiBtc2dzdHIgIkZpbGVzLWbDpGx0ZXQgaW5uZWjDpWxsZXIgZmVsYWt0aWcgcmFkIFwiJXNcIiIKKworI34gbXNnaWQgIkNvbmZsaWN0aW5nIHNpemVzIGAldScgYW5kIGAldScgZm9yIGZpbGUgYCVzJyIKKyN+IG1zZ3N0ciAiTW90c8OkZ2FuZGUgc3Rvcmxla2FyIFwiJXVcIiBvY2ggXCIldVwiIGbDtnIgZmlsZW4gXCIlc1wiIgorCisjfiBtc2dpZCAiZm9yayBmb3IgZHUiCisjfiBtc2dzdHIgImdyZW5hciBmw7ZyIGR1IgorCisjfiBtc2dpZCAiZm9yayBmb3IgJXMiCisjfiBtc2dzdHIgImdyZW5hciBmw7ZyICVzIgorCisjfiBtc2dpZCAiVW5rbm93biBjaGVja3N1bSBhbGdvcml0aG0gYCVzJywgaWdub3JpbmciCisjfiBtc2dzdHIgIk9rw6RuZCBrb250cm9sbHN1bW1lYWxnb3JpdG0gXCIlc1wiLCBpZ25vcmVyYXIiCisKKyN+IG1zZ2lkICJDaGVja3N1bXMtJXMgZmllbGQgY29udGFpbnMgYmFkIGxpbmUgYCVzJyIKKyN+IG1zZ3N0ciAiRsOkbHRldCBDaGVja3N1bXMtJXMgaW5uZWjDpWxsZXIgZmVsYWt0aWcgcmFkIFwiJXNcIiIKKworI34gbXNnaWQgImZpbGUgYCVzJyBsaXN0ZWQgdHdpY2UgaW4gRmlsZXMgZmllbGQiCisjfiBtc2dzdHIgImZpbGVuIFwiJXNcIiBmw7ZyZWtvbW1lciB0dsOlIGfDpW5nZXIgaSBGaWxlcy1mw6RsdGV0IgorCisjfiBtc2dpZCAiYXBwbHlpbmcgYWxsIHBhdGNoZXMgd2l0aCAlcyIKKyN+IG1zZ3N0ciAidGlsbMOkbXBhciBhbGxhIHBhdGNoYXIgbWVkICVzIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIG9wZW4gc3Vic3R2YXJzIGZpbGUgJXM6ICVzIgorI34gbXNnc3RyICJrYW4gaW50ZSDDtnBwbmEgc3Vic3R2YXJzLWZpbCAlczogJXMiCisKKyN+IG1zZ2lkICJDb3VsZG4ndCBjYWxsIGRwa2ctZGViIG9uICVzOiAlcywgc2tpcHBpbmcgcGFja2FnZSIKKyN+IG1zZ3N0ciAiS3VuZGUgaW50ZSBhbnJvcGEgZHBrZy1kZWIgcMOlICVzOiAlcywgaG9wcGFyIMO2dmVyIHBha2V0IgorCisjfiBtc2dpZCAiIgorI34gIlVucHJvY2Vzc2VkIHRleHQgZnJvbSAlcyBjb250cm9sIGZpbGU7IGluZm86XG4iCisjfiAiJXMgLyAlcyIKKyN+IG1zZ3N0ciAiIgorI34gIk9oYW50ZXJhZCB0ZXh0IGZyw6VuIHN0eXJmaWxlbiAlcywgaW5mbzpcbiIKKyN+ICIlcyAvICVzIgorCisjfiBtc2dpZCAiZmF0YWwgZXJyb3IiCisjfiBtc2dzdHIgIsO2ZGVzZGlnZXJ0IGZlbCIKKworI34gbXNnaWQgImNhbid0IG9wZW4gZmlsZSAlczogJXMiCisjfiBtc2dzdHIgImthbiBpbnRlIMO2cHBuYSBmaWxlbiAlczogJXMiCisKKyN+IG1zZ2lkICJjYW4ndCBsb2FkIElPOjpTdHJpbmc6ICVzIgorI34gbXNnc3RyICJrYW4gaW50ZSBsw6RzYSBpbiBJTzo6U3RyaW5nOiAlcyIKKworI34gbXNnaWQgIm5vIGNoYW5nZWxvZyBmaWxlIHNwZWNpZmllZCIKKyN+IG1zZ3N0ciAiaW5nZW4gw6RuZHJpbmdzbG9nZ2ZpbCBhbmdhdnMiCisKKyN+IG1zZ2lkICJjYW4ndCBjbG9zZSBmaWxlICVzOiAlcyIKKyN+IG1zZ3N0ciAia2FuIGludGUgc3TDpG5nYSBmaWxlbiAlczogJXMiCisKKyN+IG1zZ2lkICJDb3VsZG4ndCBvcGVuIG92ZXJyaWRlIGZpbGUgJXMiCisjfiBtc2dzdHIgIkt1bmRlIGludGUgw7ZwcG5hIMO2dmVyc3R5cm5pbmdzZmlsZW4gJXMiCisKKyN+IG1zZ2lkICJjYW4ndCByZWFkIG92ZXJyaWRlIGZpbGUgJXMiCisjfiBtc2dzdHIgImthbiBpbnRlIGzDpHNhIMO2dmVyc3R5cm5pbmdzZmlsICVzIgorCisjfiBtc2dpZCAiZXJyb3IgY2xvc2luZyBvdmVycmlkZSBmaWxlIgorI34gbXNnc3RyICJmZWwgdmlkIHN0w6RuZ25pbmcgYXYgw7Z2ZXJzdHlybmluZ3NmaWwiCisKKyN+IG1zZ2lkICJjYW4ndCByZWFkIHNvdXJjZSBvdmVycmlkZSBmaWxlICVzIgorI34gbXNnc3RyICJrYW4gaW50ZSBsw6RzYSBrw6RsbGtvZHPDtnZlcnN0eXJuaW5nc2ZpbCAlcyIKKworI34gbXNnaWQgImVycm9yIGNsb3Npbmcgc291cmNlIG92ZXJyaWRlIGZpbGUiCisjfiBtc2dzdHIgImZlbCB2aWQgc3TDpG5nbmluZyBhdiBrw6RsbGtvZHPDtnZlcnN0eXJuaW5nc2ZpbCIKKworI34gbXNnaWQgInBhcnNpbmcgYW4gZW1wdHkgZmlsZSAlcyIKKyN+IG1zZ3N0ciAidG9sa2FyIGRlbiB0b21tYSBmaWxlbiAlcyIKKworI34gbXNnaWQgImV4ZWMgZHUiCisjfiBtc2dzdHIgImvDtnIgZHUiCisKKyN+IG1zZ2lkICJjYW4ndCBmb3JrIgorI34gbXNnc3RyICJrYW4gaW50ZSBncmVuYSIKKworI34gbXNnaWQgImNhbm5vdCBmb3JrIGZvciBkcGtnIC0tc2VhcmNoIgorI34gbXNnc3RyICJrdW5kZSBpbnRlIGdyZW5hIGbDtnIgZHBrZyAtLXNlYXJjaCIKKworI34gbXNnaWQgInVuYWJsZSB0byBvcGVuIG9zdGFibGUiCisjfiBtc2dzdHIgImthbiBpbnRlIMO2cHBuYSBvc3RhYmxlIgorCisjfiBtc2dpZCAidW5hYmxlIHRvIG9wZW4gdHJpcGxldHRhYmxlIgorI34gbXNnc3RyICJrYW4gaW50ZSDDtnBwbmEgdHJpcGxldHRhYmxlIgorCisjfiBtc2dpZCAiY2Fubm90IGZvcmsgZm9yIG9iamR1bXAiCisjfiBtc2dzdHIgImt1bmRlIGludGUgZ3JlbmEgZsO2ciBvYmpkdW1wIgorCisjfiBtc2dpZCAiY2FuJ3Qgd3JpdGUgJXMiCisjfiBtc2dzdHIgImthbiBpbnRlIHNrcml2YSAlcyIKKworI34gbXNnaWQgImNhbid0IHJlYWQgJXMiCisjfiBtc2dzdHIgImthbiBpbnRlIGzDpHNhICVzIgorCisjfiBtc2dpZCAiJXMgaGFzIFBHUCBzdGFydCB0b2tlbiBidXQgbm90IGVuZCB0b2tlbiIKKyN+IG1zZ3N0ciAiJXMgaGFyIGlubGVkYW5kZSBtZW4gaW50ZSBhdnNsdXRhbmRlIFBHUC1tw6Rya2UiCisKKyN+IG1zZ2lkICJjYW4ndCByZWFkICVzOiAlcyIKKyN+IG1zZ3N0ciAia2FuIGludGUgbMOkc2EgJXM6ICVzIgorCisjfiBtc2dpZCAiZXJyb3IgY2xvc2luZyAlczogJXMiCisjfiBtc2dzdHIgImZlbCB2aWQgc3TDpG5nbmluZyBhdiAlczogJXMiCisKKyN+IG1zZ2lkICIlcyBpbnZhbGlkIChjb250YWlucyBibGFuayBsaW5lKSIKKyN+IG1zZ3N0ciAiJXMgb2dpbHRpZyAoaW5uZWjDpWxsZXIgYmxhbmsgcmFkKSIKKworI34gbXNnaWQgImR1cGxpY2F0ZSBzb3VyY2UgZmllbGQgaW4gJXMiCisjfiBtc2dzdHIgImR1cGxpY2VyYXQga8OkbGxrb2RzZsOkbHQgaSAlcyIKKworI34gbXNnaWQgImludmFsaWQgc291cmNlIGZpZWxkIGluICVzIgorI34gbXNnc3RyICJvZ2lsdGlndCBrw6RsbGtvZHNmw6RsdCBpICVzIgorCisjfiBtc2dpZCAiZHVwbGljYXRlIGJpbmFyeSBmaWVsZCBpbiAlcyIKKyN+IG1zZ3N0ciAiZHVwbGljZXJhdCBiaW7DpHJmw6RsdCBpICVzIgorCisjfiBtc2dpZCAiU3RyYW5nZSB0ZXh0IGZyb20gJ21kNXN1bSA8ICVzJzogJyVzJyIKKyN+IG1zZ3N0ciAiVW5kZXJsaWcgdGV4dCBmcsOlbiBcIm1kNXN1bSA8ICVzXCI6IFwiJXNcIiIKKworI34gbXNnaWQgIkNvdWxkbid0IHN0YXQgJXMiCisjfiBtc2dzdHIgIkt1bmRlIGludGUgdGEgc3RhdHVzIHDDpSAlcyIKKworI34gbXNnaWQgImVycm9yIGRvaW5nIGZzdGF0IG9uICVzOiAlcyIKKyN+IG1zZ3N0ciAia2FuIGludGUgdGEgZmlsc3RhdHVzIChmc3RhdCkgcMOlICVzOiAlcyIKKworI34gbXNnaWQgImNhbid0IGZvcms6ICVzIgorI34gbXNnc3RyICJrYW4gaW50ZSBncmVuYTogJXMiCisKKyN+IG1zZ2lkICJjYW4ndCBkdXAgJXMiCisjfiBtc2dzdHIgImthbiBpbnRlIGR1cGxpY2VyYSAlcyIKKworI34gbXNnaWQgImNhbid0IHJld2luZCAlcyIKKyN+IG1zZ3N0ciAia2FuIGludGUgc3BvbGEgdGlsbGJha2EgJXMiCisKKyN+IG1zZ2lkICJjYW4ndCBleGVjIG1kNXN1bSIKKyN+IG1zZ3N0ciAia2FuIGludGUgZXhla3ZlcmEgbWQ1c3VtIgorCisjfiBtc2dpZCAiaW52YWxpZCBtZDUgb3V0cHV0IGZvciAlcyAoJXMpIgorI34gbXNnc3RyICJmZWxha3RpZ2EgbWQ1LXV0ZGF0YSBmw7ZyICVzICglcykiCisKKyN+IG1zZ2lkICJVc2FnZTogODIyLWRhdGUiCisjfiBtc2dzdHIgIkFudsOkbmRuaW5nOiA4MjItZGF0ZSIKKworI34gbXNnaWQgIlRoaXMgcHJvZ3JhbSBpcyBkZXByZWNhdGVkLiBQbGVhc2UgdXNlICdkYXRlIC1SJyBpbnN0ZWFkLiIKKyN+IG1zZ3N0ciAiRGV0dGEgcHJvZ3JhbSByZWtvbW1lbmRlcmFzIGVqLiBBbnbDpG5kIFwiZGF0ZSAtUlwiIGlzdMOkbGxldC4iCisKKyN+IG1zZ2lkICJjYW5ub3QgY29tYmluZSAlcyBhbmQgLVMiCisjfiBtc2dzdHIgImthbiBpbnRlIGtvbWJpbmVyYSAlcyBvY2ggLVMiCisKKyN+IG1zZ2lkICIiCisjfiAic3Vic3R2YXJzIHN1cHBvcnQgaXMgZGVwcmVjYXRlZCAoc2VlIFJFQURNRS5mZWF0dXJlLXJlbW92YWwtc2NoZWR1bGUpIgorI34gbXNnc3RyICJzdWJzdHZhcnMtc3TDtmRldCB1bmRhbmJlcyAoc2UgUkVBRE1FLmZlYXR1cmUtcmVtb3ZhbC1zY2hlZHVsZSkiCisKKyN+IG1zZ2lkICJEcGtnOjpEZXBzOjpTaW1wbGUgY2FuJ3QgZXZhbHVhdGUgaW1wbGljYXRpb24gd2l0aCBhICVzISIKKyN+IG1zZ3N0ciAiRHBrZzo6RGVwczo6U2ltcGxlIGthbiBpbnRlIHV0dsOkcmRlcmEgZW4gaW1wbGlrYXRpb24gbWVkIGV0dCAlcyEiCisKKyN+IG1zZ2lkICJmYWlsdXJlIgorI34gbXNnc3RyICJtaXNzbHlja2FkZXMiCisKKyN+IG1zZ2lkICJmaWVsZCAlcyBoYXMgbmV3bGluZSB0aGVuIG5vbiB3aGl0ZXNwYWNlID4lczwiCisjfiBtc2dzdHIgImbDpGx0ICVzIGhhciByYWRicnl0bmluZyBmw7ZsanQgYXYgaWNrZS1ibGFua3N0ZWcgXCIlc1wiIgorCisjfiBtc2dpZCAiZmllbGQgJXMgaGFzIGJsYW5rIGxpbmVzID4lczwiCisjfiBtc2dzdHIgImbDpGx0ICVzIGhhciBibGFua2EgcmFkZXIgXCIlc1wiIgorCisjfiBtc2dpZCAiZmllbGQgJXMgaGFzIHRyYWlsaW5nIG5ld2xpbmUgPiVzPCIKKyN+IG1zZ3N0ciAiZsOkbHQgJXMgaGFyIGF2c2x1dGFuZGUgcmFkYnJ5dG5pbmcgXCIlc1wiIgorCisjfiBtc2dpZCAiaW52YWxpZCBleGVjIHBhcmFtZXRlciBpbiBmb3JrX2FuZF9leGVjKCkiCisjfiBtc2dzdHIgIm9naWx0aWcgZXhlYy1wYXJhbWV0ZXIgaSBmb3JrX2FuZF9leGVjKCkiCisKKyN+IG1zZ2lkICJubyBQSUQgc2V0LCBjYW5ub3Qgd2FpdCBlbmQgb2YgcHJvY2VzcyIKKyN+IG1zZ3N0ciAiaW5nZW4gUElEIHNhdHRlcywga2FuIGludGUgdsOkbnRhIHDDpSBhdHQgcHJvY2Vzc2VuIGF2c2x1dGFzIgorCisjfiBtc2dpZCAidHJpZWQgdG8gYWRkIGZpbGUgYCVzJyB0d2ljZSIKKyN+IG1zZ3N0ciAiZsO2cnPDtmt0ZSBsw6RnZ2EgdGlsbCBmaWxlbiBcIiVzXCIgdHbDpSBnw6VuZ2VyIgorCisjfiBtc2dpZCAiZGlmZiBgJXMnIHBhdGNoZXMgZmlsZSB3aXRoIG5vIHN1YmRpcmVjdG9yeSIKKyN+IG1zZ3N0ciAiZGlmZmVuIFwiJXNcIiBwYXRjaGFyIGZpbCB1dGFuIHVuZGVya2F0YWxvZyIKKworI34gbXNnaWQgImRpZmYgYCVzJyBpcyBtaXNzaW5nIHRyYWlsaW5nIG5ld2xpbmUiCisjfiBtc2dzdHIgImRpZmZlbiBcIiVzXCIgc2FrbmFyIGF2c2x1dGFuZGUgbnlyYWRzdGVja2VuIgorCisjfiBtc2dpZCAiIgorI34gIlxuIgorI34gIkNvcHlyaWdodCAoQykgMTk5NiBJYW4gSmFja3NvbiBhbmQgS2xlZSBEaWVuZXMuIgorI34gbXNnc3RyICIiCisjfiAiXG4iCisjfiAiQ29weXJpZ2h0IMKpIDE5OTYgSWFuIEphY2tzb24gYW5kIEtsZWUgRGllbmVzLiIKKworI34gbXNnaWQgInVuYWJsZSB0byBkZXRlcm1pbmUgc291cmNlIHBhY2thZ2UgbmFtZSAhIgorI34gbXNnc3RyICJrdW5kZSBpbnRlIGJlc3TDpG1tYSBuYW1uIHDDpSBrw6RsbGtvZHNwYWtldCEiCisKKyN+IG1zZ2lkICJ1bmFibGUgdG8gc3RhdCBwdXRhdGl2ZSBwYWNrZWQgb3JpZyBgJXMnIgorI34gbXNnc3RyICJrYW4gaW50ZSB0YSBzdGF0dXMgcMOlIGbDtnJtb2RhZCBwYWNrYWQgb3JpZyBcIiVzXCIiCisKKyN+IG1zZ2lkICJ3cml0ZSBidWlsZGluZyB0YXIgbWVzc2FnZSIKKyN+IG1zZ3N0ciAic2tyaXZlciBieWdnLXRhci1tZWRkZWxhbmRlIgorCisjfiBtc2dpZCAiZm9yayBmb3IgdGFyIgorI34gbXNnc3RyICJncmVuYXIgZsO2ciB0YXIiCisKKyN+IG1zZ2lkICJjaGRpciB0byBhYm92ZSAob3JpZykgc291cmNlICVzIgorI34gbXNnc3RyICJieXRlciBrYXRhbG9nIHRpbGwgb3ZhbmbDtnIgKG9yaWctKWvDpGxsa29kICVzIgorCisjfiBtc2dpZCAicmVvcGVuIGd6aXAgZm9yIHRhciIKKyN+IG1zZ3N0ciAiw7ZwcG5hciBnemlwIGlnZW4gZsO2ciB0YXIiCisKKyN+IG1zZ2lkICJleGVjIHRhciIKKyN+IG1zZ3N0ciAiZXhla3ZlcmFyIHRhciIKKworI34gbXNnaWQgIndyaXRlIHVzaW5nIGV4aXN0aW5nIHRhciBtZXNzYWdlIgorI34gbXNnc3RyICJza3JpdmVyIG1lZCBleGlzdGVyYW5kZSB0YXItbWVkZGVsYW5kZSIKKworI34gbXNnaWQgIndyaXRlIGJ1aWxkaW5nIGRpZmYgbWVzc2FnZSIKKyN+IG1zZ3N0ciAic2tyaXZlciBieWdnZGlmZm1lZGRlbGFuZGUiCisKKyN+IG1zZ2lkICJmb3JrIGZvciBmaW5kIgorI34gbXNnc3RyICJncmVuYXIgZsO2ciBmaW5kIgorCisjfiBtc2dpZCAiY2hkaXIgdG8gJXMgZm9yIGZpbmQiCisjfiBtc2dzdHIgImJ5dGVyIGthdGFsb2cgdGlsbCAlcyBmw7ZyIGZpbmQiCisKKyN+IG1zZ2lkICJleGVjIGZpbmQiCisjfiBtc2dzdHIgImV4ZWt2ZXJhciBmaW5kIgorCisjfiBtc2dpZCAiY2Fubm90IHJlYWQgb3JpZyBsaW5rICVzIgorI34gbXNnc3RyICJrYW4gaW50ZSBsw6RzYSBvcmlnaW5hbGzDpG5rZW4gJXMiCisKKyN+IG1zZ2lkICJjYW5ub3Qgc3RhdCBvcmlnIGZpbGUgJXMiCisjfiBtc2dzdHIgImthbiBpbnRlIHRhIHN0YXR1cyBww6Ugb3JpZ2luYWxmaWxlbiAlcyIKKworI34gbXNnaWQgInNvbWV0aGluZyBlbHNlIgorI34gbXNnc3RyICJuw6Vnb3QgYW5uYXQiCisKKyN+IG1zZ2lkICJmb3JrIGZvciBkaWZmIgorI34gbXNnc3RyICJncmVuYXIgZsO2ciBkaWZmIgorCisjfiBtc2dpZCAiZXhlYyBkaWZmIgorI34gbXNnc3RyICJleGVrdmVyYXIgZGlmZiIKKworI34gbXNnaWQgImRpZmYgZ2F2ZSAxIGJ1dCBubyBkaWZmIGxpbmVzIGZvdW5kIgorI34gbXNnc3RyICJkaWZmIGdhdiAxIG1lbiBpbmdhIGRpZmYtcmFkZXIgaGl0dGFkZXMiCisKKyN+IG1zZ2lkICJmaW5pc2ggd3JpdGUgdG8gY29tcHJlc3Npb24gcGlwZSIKKyN+IG1zZ3N0ciAiYXZzbHV0YXIgc2tyaXZuaW5nIHRpbGwga29tcHJpbWVyaW5nc3LDtnIiCisKKyN+IG1zZ2lkICJmb3JrIGZvciAybmQgZmluZCIKKyN+IG1zZ3N0ciAiZ3JlbmFyIGbDtnIgYW5kcmEgZmluZCIKKworI34gbXNnaWQgImNoZGlyIHRvICVzIGZvciAybmQgZmluZCIKKyN+IG1zZ3N0ciAiY2hkaXIgdGlsbCAlcyBmw7ZyIGFuZHJhIGZpbmQiCisKKyN+IG1zZ2lkICJleGVjIDJuZCBmaW5kIgorI34gbXNnc3RyICJleGVrdmVyYXIgYW5kcmEgZmluZCIKKworI34gbXNnaWQgImNhbm5vdCBjaGVjayBvcmlnIGZpbGUgJXMiCisjfiBtc2dzdHIgImthbiBpbnRlIGtvbnRyb2xsZXJhIG9yaWdpbmFsZmlsZW4gJXMiCisKKyN+IG1zZ2lkICJ3cml0ZSBidWlsZGluZyBtZXNzYWdlIgorI34gbXNnc3RyICJza3JpdmVyIGJ5Z2dtZWRkZWxhbmRlIgorCisjfiBtc2dpZCAiY3JlYXRlICVzIgorI34gbXNnc3RyICJza2FwYXIgJXMiCisKKyN+IG1zZ2lkICJ3cml0ZSBlcnJvciBtc2c6ICVzIgorI34gbXNnc3RyICJza3JpdmVyIGZlbG1lZGRlbGFuZGU6ICVzIgorCisjfiBtc2dpZCAiY2Fubm90IG9wZW4gLmRzYyBmaWxlICVzOiAlcyIKKyN+IG1zZ3N0ciAia2FuIGludGUgw7ZwcG5hIC5kc2MtZmlsZW4gJXM6ICVzIgorCisjfiBtc2dpZCAiVW5zdXBwb3J0ZWQgZm9ybWF0IG9mIC5kc2MgZmlsZSAoJXMpIgorI34gbXNnc3RyICJGb3JtYXRldCBww6UgLmRzYy1maWxlbiBzdMO2ZHMgaW50ZSAoJXMpIgorCisjfiBtc2dpZCAiRmlsZXMgZmllbGQgY29udGFpbnMgaW52YWxpZCBmaWxlbmFtZSBgJXMnIgorI34gbXNnc3RyICJGaWxlcy1mw6RsdGV0IGlubmVow6VsbGVyIG9naWx0aWd0IGZpbG5hbW4gXCIlc1wiIgorCisjfiBtc2dpZCAicmVwZWF0ZWQgZmlsZSB0eXBlIC0gZmlsZXMgYCVzJyBhbmQgYCVzJyIKKyN+IG1zZ3N0ciAicmVwZXRlcmFkIGZpbHR5cCAtIGZpbGVybmEgXCIlc1wiIG9jaCBcIiVzXCIiCisKKyN+IG1zZ2lkICJ1bnJlY29nbmlzZWQgZmlsZSB0eXBlIC0gYCVzJyIKKyN+IG1zZ3N0ciAib2vDpG5kIGZpbHR5cCAtIFwiJXNcIiIKKworI34gbXNnaWQgImRlYmlhbi50YXIgaW4gJXMgZm9ybWF0IGRzYyIKKyN+IG1zZ3N0ciAiZGViaWFuLnRhciBpIGRzYyBww6UgJXMtZm9ybWF0IgorCisjfiBtc2dpZCAid3JpdGUgZXh0cmFjdGluZyBtZXNzYWdlIgorI34gbXNnc3RyICJza3JpdmVyIGV4dHJhaGVyaW5nc21lZGRlbGFuZGUiCisKKyN+IG1zZ2lkICJmYWlsZWQgdG8gc3RhdCBgJXMnIHRvIHNlZSBpZiBuZWVkIHRvIGNvcHkiCisjfiBtc2dzdHIgImt1bmRlIGludGUgdGEgc3RhdHVzIHDDpSBcIiVzXCIgZsO2ciBhdHQgc2Ugb20gZGV0IG3DpXN0ZSBrb3BpZXJhcyIKKworI34gbXNnaWQgImZhaWxlZCB0byBjaGVjayBkZXN0aW5hdGlvbiBgJXMnIHRvIHNlZSBpZiBuZWVkIHRvIGNvcHkiCisjfiBtc2dzdHIgIiIKKyN+ICJtaXNzbHlja2FkZXMga29udHJvbGxlcmEgZGVzdGluYXRpb25lbiBcIiVzXCIgZsO2ciBhdHQgc2Ugb20gZGV0IGJlaMO2dmVyICIKKyN+ICJrb3BpZXJhcyIKKworI34gbXNnaWQgImZhaWxlZCB0byBjcmVhdGUgJXMgc3ViZGlyZWN0b3J5IgorI34gbXNnc3RyICJtaXNzbHlja2FkZXMgYXR0IHNrYXBhIHVuZGVya2F0YWxvZ2VuICVzIgorCisjfiBtc2dpZCAiZGlmZiBwYXRjaGVzIGZpbGUgaW4gZGlyZWN0b3J5IGAlcycsIGJ1dCAlcyBpc24ndCBhIGRpcmVjdG9yeSAhIgorI34gbXNnc3RyICJkaWZmLXBhdGNoZmlsIGkga2F0YWxvZ2VuIFwiJXNcIiwgbWVuICVzIMOkciBpbnRlIGVuIGthdGFsb2chIgorCisjfiBtc2dpZCAiY2FuJ3Qgb3BlbiBkaWZmIGAlcyciCisjfiBtc2dzdHIgImthbiBpbnRlIMO2cHBuYSBkaWZmIFwiJXNcIiIKKworI34gbXNnaWQgImZvcmsgZm9yIHBhdGNoIgorI34gbXNnc3RyICJncmVuYXIgZsO2ciBwYXRjaCIKKworI34gbXNnaWQgInJlb3BlbiBnemlwIGZvciBwYXRjaCIKKyN+IG1zZ3N0ciAiw7ZwcG5hciBnemlwIHDDpSBueXR0IGbDtnIgcGF0Y2giCisKKyN+IG1zZ2lkICJjaGRpciB0byAlcyBmb3IgcGF0Y2giCisjfiBtc2dzdHIgImNoZGlyIHRpbGwgJXMgZsO2ciBwYXRjaCIKKworI34gbXNnaWQgImV4ZWMgcGF0Y2giCisjfiBtc2dzdHIgImV4ZWt2ZXJhciBwYXRjaCIKKworI34gbXNnaWQgIndhaXQgZm9yIHBhdGNoIgorI34gbXNnc3RyICJ2w6RudGFyIHDDpSBwYXRjaCIKKworI34gbXNnaWQgImNhbm5vdCBzdGF0IGAuJyIKKyN+IG1zZ3N0ciAia2FuIGludGUgdGEgc3RhdHVzIHDDpSBcIi5cIiIKKworI34gbXNnaWQgImNhbm5vdCBzdGF0IGV4dHJhY3RlZCBvYmplY3QgYCVzJyIKKyN+IG1zZ3N0ciAia2FuIGludGUgdGEgc3RhdHVzIHDDpSBleHRyYWhlcmF0IG9iamVrdCBcIiVzXCIiCisKKyN+IG1zZ2lkICJ1bmtub3duIG9iamVjdCBgJXMnIGFmdGVyIGV4dHJhY3QgKG1vZGUgMCVvKSIKKyN+IG1zZ3N0ciAib2vDpG50IG9iamVrdCBcIiVzXCIgZWZ0ZXIgZXh0cmFoZXJpbmcgKGzDpGdlIDAlbykiCisKKyN+IG1zZ2lkICJjYW5ub3QgY2hhbmdlIG1vZGUgb2YgYCVzJyB0byAwJW8gZnJvbSAwJW8iCisjfiBtc2dzdHIgImthbiBpbnRlIGJ5dGEgbMOkZ2UgcMOlIFwiJXNcIiB0aWxsIDAlbyBmcsOlbiAwJW8iCisKKyN+IG1zZ2lkICJmb3JrIGZvciBjcGlvIgorI34gbXNnc3RyICJncmVuYXIgZsO2ciBjcGlvIgorCisjfiBtc2dpZCAicmVvcGVuIGd6aXAgZm9yIGNwaW8iCisjfiBtc2dzdHIgIsO2cHBuYXIgZ3ppcCBww6Ugbnl0dCBmw7ZyIGNwaW8iCisKKyN+IG1zZ2lkICJleGVjIGNwaW8iCisjfiBtc2dzdHIgImV4ZWt2ZXJhciBjcGlvIgorCisjfiBtc2dpZCAidGFyZmlsZSBgJXMnIGNvbnRhaW5zIG9iamVjdCB3aXRoIG5ld2xpbmUgaW4gaXRzIG5hbWUgKCVzKSIKKyN+IG1zZ3N0ciAidGFyZmlsZW4gXCIlc1wiIGlubmVow6VsbGVyIG9iamVrdCBtZWQgbnlyYWQgaSBzaXR0IG5hbW4gKCVzKSIKKworI34gbXNnaWQgIiIKKyN+ICJmaXJzdCBvdXRwdXQgZnJvbSBjcGlvIC0wdCAoZnJvbSBgJXMnKSBjb250YWlucyBuZXdsaW5lIC0geW91IHByb2JhYmx5ICIKKyN+ICJoYXZlIGFuIG91dCBvZiBkYXRlIHZlcnNpb24gb2YgY3Bpby4gIEdOVSBjcGlvIDIuNC4yLTIgaXMga25vd24gdG8gd29yayIKKyN+IG1zZ3N0ciAiIgorI34gImbDtnJzdGEgdXRkYXRhIGZyw6VuIGNwaW8gLTB0IChmcsOlbiBcIiVzXCIpIGlubmVow6VsbGVyIG55cmFkIC0gZHUgaGFyICIKKyN+ICJhbnRhZ2xpZ2VuIGVuIGbDtnIgZ2FtbWFsIHZlcnNpb24gYXYgY3Bpby4gR05VIGNwaW8gMi40LjItMiB2ZXQgdmkgZnVuZ2VyYXIiCisKKyN+IG1zZ2lkICIiCisjfiAidGFyZmlsZSBgJXMnIGRvZXMgbm90IGV4dHJhY3QgaW50byBhIGRpcmVjdG9yeSBvZmYgdGhlIGN1cnJlbnQgZGlyZWN0b3J5ICIKKyN+ICIoJXMgZnJvbSAlcykiCisjfiBtc2dzdHIgIiIKKyN+ICJ0YXJmaWxlbiBcIiVzXCIgZXh0cmFoZXJhciBpbnRlIHRpbGwgZW4ga2F0YWxvZyBzb20ga29tbWVyIGZyw6VuIGRlbiAiCisjfiAiYWt0dWVsbGEga2F0YWxvZ2VuICglcyBmcsOlbiAlcykiCisKKyN+IG1zZ2lkICJ0YXJmaWxlIGAlcycgY29udGFpbnMgb2JqZWN0ICglcykgbm90IGluIGV4cGVjdGVkIGRpcmVjdG9yeSAoJXMpIgorI34gbXNnc3RyICJ0YXJmaWxlbiBcIiVzXCIgaW5uZWjDpWxsZXIgb2JqZWt0ICglcykgaSBlbiBvdsOkbnRhZCBrYXRhbG9nICglcykiCisKKyN+IG1zZ2lkICJ0YXJmaWxlIGAlcycgY29udGFpbnMgb2JqZWN0IHdpdGggLy4uLyBpbiBpdHMgbmFtZSAoJXMpIgorI34gbXNnc3RyICJ0YXJmaWxlbiBcIiVzXCIgaW5uZWjDpWxsZXIgb2JqZWt0IG1lZCAvLi4vIGkgbmFtbmV0ICglcykiCisKKyN+IG1zZ2lkICJmb3JrIGZvciB0YXIgLXQiCisjfiBtc2dzdHIgImdyZW5hciBmw7ZyIHRhciAtdCIKKworI34gbXNnaWQgInJlb3BlbiBnemlwIGZvciB0YXIgLXQiCisjfiBtc2dzdHIgIsO2cHBuYXIgZ3ppcCBww6Ugbnl0dCBmw7ZyIHRhciAtdCIKKworI34gbXNnaWQgImV4ZWMgdGFyIC12dnRmIC0iCisjfiBtc2dzdHIgImV4ZWt2ZXJhciB0YXIgLXZ2dGYgLSIKKworI34gbXNnaWQgInRhcmZpbGUgYCVzJyBjb250YWlucyB1bmtub3duIG9iamVjdCBsaXN0ZWQgYnkgdGFyIGFzIGAlcyciCisjfiBtc2dzdHIgInRhcmZpbGVuIFwiJXNcIiBpbm5laMOlbGxlciBva8OkbnQgb2JqZWt0IHNvbSB0YXIgdmlzYXIgc29tIFwiJXNcIiIKKworI34gbXNnaWQgIiIKKyN+ICJ0YXJmaWxlIGAlcycgY29udGFpbnMgb2JqZWN0IGAlcycgd2l0aCB1bmtub3duIG9yIGZvcmJpZGRlbiB0eXBlIGAlcyciCisjfiBtc2dzdHIgIiIKKyN+ICJ0YXJmaWxlbiBcIiVzXCIgaW5uZWjDpWxsZXIgb2JqZWt0ZXQgXCIlc1wiIG1lZCBva8OkbmQgZWxsZXIgZsO2cmJqdWRlbiB0eXAgIgorI34gIlwiJXNcIiIKKworI34gbXNnaWQgInRhcmZpbGUgYCVzJyBjb250YWlucyBpbmNvbXBsZXRlIGVudHJ5IGAlcydcbiIKKyN+IG1zZ3N0ciAidGFyZmlsZW4gXCIlc1wiIGlubmVow6VsbGVyIG9mdWxsc3TDpG5kaWcgcG9zdCBcIiVzXCJcbiIKKworI34gbXNnaWQgImZpbGVuYW1lICclcycgd2FzIHRydW5jYXRlZCBieSBjcGlvOyB1bmFibGUgdG8gY2hlY2sgZnVsbCBwYXRobmFtZSIKKyN+IG1zZ3N0ciAiIgorI34gImZpbG5hbW5ldCBcIiVzXCIgdHJ1bmtlcmFkZXMgYXYgY3Bpbzsga2FuIGludGUga29udHJvbGxlcmEga29tcGxldHQgc8O2a3bDpGciCisKKyN+IG1zZ2lkICIiCisjfiAidGFyZmlsZSBgJXMnIGNvbnRhaW5zIHVuZXhwZWN0ZWQgb2JqZWN0IGxpc3RlZCBieSB0YXIgYXMgYCVzJzsgZXhwZWN0ZWQgYCIKKyN+ICIlcyciCisjfiBtc2dzdHIgIiIKKyN+ICJ0YXJmaWxlbiBcIiVzXCIgaW5uZWjDpWxsZXIgb3bDpG50YXQgb2JqZWt0IHNvbSB0YXIgdmlzYXIgc29tIFwiJXNcIjsgIgorI34gImbDtnJ2w6RudGFkZSBcIiVzXCIiCisKKyN+IG1zZ2lkICJ0YXJmaWxlIGAlcycgY29udGFpbnMgZmlsZSB3aXRoIG5hbWUgZW5kaW5nIGluIC5kcGtnLW9yaWciCisjfiBtc2dzdHIgInRhcmZpbGVuIFwiJXNcIiBpbm5laMOlbGxlciBmaWxlciBtZWQgbmFtbiBzb20gc2x1dGFyIHDDpSAuZHBrZy1vcmlnIgorCisjfiBtc2dpZCAidGFyZmlsZSBgJXMnIGNvbnRhaW5zIHNldHVpZCwgc2V0Z2lkIG9yIHN0aWNreSBvYmplY3QgYCVzJyIKKyN+IG1zZ3N0ciAiIgorI34gInRhcmZpbGVuIFwiJXNcIiBpbm5laMOlbGxlciBzZXR1aWQtLCBzZXRnaWQtIGVsbGVyIGtsaXN0cmlndCBvYmpla3QgXCIlc1wiIgorCisjfiBtc2dpZCAidGFyZmlsZSBgJXMnIGNvbnRhaW5zIG9iamVjdCBgZGViaWFuJyB0aGF0IGlzbid0IGEgZGlyZWN0b3J5IgorI34gbXNnc3RyICIiCisjfiAidGFyZmlsZW4gXCIlc1wiIGlubmVow6VsbGVyIG9iamVrdGV0IFwiZGViaWFuXCIgc29tIGludGUgw6RyIGVuIGthdGFsb2ciCisKKyN+IG1zZ2lkICIiCisjfiAidGFyZmlsZSBgJXMnIGNvbnRhaW5zIG9iamVjdCBgJXMnIGJ1dCBpdHMgY29udGFpbmluZyBkaXJlY3RvcnkgYCVzJyBkb2VzICIKKyN+ICJub3QgcHJlY2VkZSBpdCIKKyN+IG1zZ3N0ciAiIgorI34gInRhcmZpbGVuIFwiJXNcIiBpbm5laMOlbGxlciBvYmpla3RldCBcIiVzXCIsIG1lbiBiZWjDpWxsYXJrYXRhbG9nZW4gXCIlc1wiICIKKyN+ICJmw7ZyZWfDpXIgZGV0IGludGUiCisKKyN+IG1zZ2lkICJFeHBlY3RlZCBeQEAgaW4gbGluZSAlZCBvZiBkaWZmIGAlcyciCisjfiBtc2dzdHIgIkbDtnJ2w6RudGFkZSBeQEAgcMOlIHJhZCAlZCBpIGRpZmZlbiBcIiVzXCIiCisKKyN+IG1zZ2lkICJmb3JrIGZvciB0YXIgLXhrZiAtIgorI34gbXNnc3RyICJncmVuYXIgZsO2ciB0YXIgLXhrZiAtIgorCisjfiBtc2dpZCAicmVvcGVuIGd6aXAgZm9yIHRhciAteGtmIC0iCisjfiBtc2dzdHIgIsO2cHBuYXIgZ3ppcCBww6Ugbnl0dCBmw7ZyIHRhciAteGtmIC0iCisKKyN+IG1zZ2lkICJjYW5ub3QgY2hkaXIgdG8gYCVzJyBmb3IgdGFyIGV4dHJhY3QiCisjfiBtc2dzdHIgImthbiBpbnRlIGNoZGlyIHRpbGwgXCIlc1wiIGbDtnIgdGFyLXVwcGFja25pbmciCisKKyN+IG1zZ2lkICJleGVjIHRhciAteGtmIC0iCisjfiBtc2dzdHIgImV4ZWt2ZXJhciB0YXIgLXhrZiAtIgorCisjfiBtc2dpZCAid2FpdCBmb3IgdGFyIC14a2YgLSIKKyN+IG1zZ3N0ciAidsOkbnRhciBww6UgdGFyIC14a2YgLSIKKworI34gbXNnaWQgIlVuYWJsZSB0byBjbG9zZSBkaXIgJXMiCisjfiBtc2dzdHIgIkthbiBpbnRlIHN0w6RuZ2Ega2F0YWxvZ2VuICVzIgorCisjfiBtc2dpZCAiVW5hYmxlIHRvIG1rZGlyICVzIgorI34gbXNnc3RyICJLYW4gaW50ZSBta2RpciAlcyIKKworI34gbXNnaWQgInJlb3BlbiBzdGRlcnIgZm9yIHRhciB0byBncmVwIG91dCBibG9ja3MgbWVzc2FnZSIKKyN+IG1zZ3N0ciAiw7ZwcG5hciBzdGRlcnIgcMOlIG55dHQgZsO2ciB0YXIgZsO2ciBhdHQgZ3JlcDphIHV0IGJsb2NrbWVkZGVsYW5kZSIKKworI34gbXNnaWQgImNoZWNrdHlwZSAlcyAoJXMpIgorI34gbXNnc3RyICJrb250cm9sbGVyYXIgdHlwICVzICglcykiCisKKyN+IG1zZ2lkICJ3cml0ZSBzeXNlcnIgdW5yZXAiCisjfiBtc2dzdHIgInNrcml2ZXIgc3lzdGVtZmVsIGkgdW5yZXAiCisKKyN+IG1zZ2lkICIiCisjfiAiJXM6IGNhbm5vdCByZXByZXNlbnQgY2hhbmdlIHRvICVzOlxuIgorI34gIiVzOiAgbmV3IHZlcnNpb24gaXMgJXNcbiIKKyN+ICIlczogIG9sZCB2ZXJzaW9uIGlzICVzXG4iCisjfiBtc2dzdHIgIiIKKyN+ICIlczoga2FuIGludGUgcmVwcmVzZW50ZXJhIMOkbmRyaW5nZW4gcMOlICVzOlxuIgorI34gIiVzOiAgbnkgdmVyc2lvbmVuIMOkciAlc1xuIgorI34gIiVzOiAgZ2FtbGEgdmVyc2lvbmVuIMOkciAlc1xuIgorCisjfiBtc2dpZCAidW5rbm93biBjb21wcmVzc2lvbiB0eXBlIG9uIGZpbGUgJXMiCisjfiBtc2dzdHIgIm9rw6RuZCBrb21wcmltZXJpbmdzdHlwIHDDpSBmaWxlbiAlcyIKKworI34gbXNnaWQgImNyZWF0ZSBmaWxlICVzIgorI34gbXNnc3RyICJza2FwYXIgZmlsZW4gJXMiCisKKyN+IG1zZ2lkICJwaXBlIGZvciBnemlwIgorI34gbXNnc3RyICJyw7ZyIGbDtnIgZ3ppcCIKKworI34gbXNnaWQgImZvcmsgZm9yIGd6aXAiCisjfiBtc2dzdHIgImdyZW5hciBmw7ZyIGd6aXAiCisKKyN+IG1zZ2lkICJyZW9wZW4gZ3ppcCBwaXBlIgorI34gbXNnc3RyICLDtnBwbmFyIGd6aXAtcsO2ciBww6Ugbnl0dCIKKworI34gbXNnaWQgImV4ZWMgZ3ppcCIKKyN+IG1zZ3N0ciAiZXhla3ZlcmFyIGd6aXAiCisKKyN+IG1zZ2lkICJyZW9wZW4gJXMgcGlwZSIKKyN+IG1zZ3N0ciAiw7ZwcG5hciAlcy1yw7ZyIHDDpSBueXR0IgorCisjfiBtc2dpZCAicmVvcGVuIGlucHV0IGZpbGUiCisjfiBtc2dzdHIgIsO2cHBuYXIgaW5kYXRhZmlsZW4gcMOlIG55dHQiCisKKyN+IG1zZ2lkICJ3YWl0IGZvciBnemlwIgorI34gbXNnc3RyICJ2w6RudGFyIHDDpSBnemlwIgorCisjfiBtc2dpZCAiYm9ndXMgY2hhcmFjdGVyIGBcXCVzJyBpbiBgJXMnIgorI34gbXNnc3RyICJza3LDpHB0ZWNrZW4gXCJcXCVzXCIgaSBcIiVzXCIiCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvdC8wMDBfcG9kLnQgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvdC8wMDBfcG9kLnQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYWFiMjhiOQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90LzAwMF9wb2QudApAQCAtMCwwICsxLDI0IEBACisjIC0qLSBtb2RlOiBjcGVybDstKi0KKyMKKyMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyMKKyMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisjIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisjIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyMKKyMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisKK3VzZSBUZXN0OjpNb3JlOworCit1c2Ugc3RyaWN0OwordXNlIHdhcm5pbmdzOworCitldmFsICJ1c2UgVGVzdDo6UG9kIDEuMDAiOworcGxhbiBza2lwX2FsbCA9PiAiVGVzdDo6UG9kIDEuMDAgcmVxdWlyZWQgZm9yIHRlc3RpbmcgUE9EIiBpZiAkQDsKK215IEBwb2RkaXJzID0gKCAkRU5We3NyY2Rpcn0gfHwgJy4nICk7CithbGxfcG9kX2ZpbGVzX29rKCBhbGxfcG9kX2ZpbGVzKCBAcG9kZGlycyApICk7CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvdC8xMDBfRHBrZ19WZXJzaW9uLnQgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvdC8xMDBfRHBrZ19WZXJzaW9uLnQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTdiYzdkMgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90LzEwMF9EcGtnX1ZlcnNpb24udApAQCAtMCwwICsxLDE3MCBAQAorIyAtKi0gbW9kZTogY3Blcmw7LSotCisjCisjIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisjIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisjIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisjIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisjCisjIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisjIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisjCisjIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisjIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorCit1c2UgVGVzdDo6TW9yZTsKK3VzZSBEcGtnOjpFcnJvckhhbmRsaW5nOworCit1c2Ugc3RyaWN0OwordXNlIHdhcm5pbmdzOworCityZXBvcnRfb3B0aW9ucyhxdWlldF93YXJuaW5ncyA9PiAxKTsKKworbXkgQHRlc3RzID0gPERBVEE+OworbXkgQG9wcyA9ICgiPCIsICI8PCIsICJsdCIsCisJICAgIjw9IiwgImxlIiwKKwkgICAiPSIsICJlcSIsCisJICAgIj49IiwgImdlIiwKKwkgICAiPiIsICI+PiIsICJndCIpOworCitwbGFuIHRlc3RzID0+IHNjYWxhcihAdGVzdHMpICogKDMgKiBzY2FsYXIoQG9wcykgKyA0KSArIDEzOworCitzdWIgZHBrZ192ZXJjbXAgeworICAgICBteSAoJGEsICRjbXAsICRiKSA9IEBfOworICAgICByZXR1cm4gc3lzdGVtKCdkcGtnJywgJy0tY29tcGFyZS12ZXJzaW9ucycsICctLScsICRhLCAkY21wLCAkYikgPT0gMDsKK30KKworc3ViIG9ial92ZXJjbXAgeworICAgICBteSAoJGEsICRjbXAsICRiKSA9IEBfOworICAgICByZXR1cm4gJGEgPCAkYiAgaWYgJGNtcCBlcSAiPDwiOworICAgICByZXR1cm4gJGEgbHQgJGIgaWYgJGNtcCBlcSAibHQiOworICAgICByZXR1cm4gJGEgPD0gJGIgaWYgJGNtcCBlcSAiPD0iIG9yICRjbXAgZXEgIjwiOworICAgICByZXR1cm4gJGEgbGUgJGIgaWYgJGNtcCBlcSAibGUiOworICAgICByZXR1cm4gJGEgPT0gJGIgaWYgJGNtcCBlcSAiPSI7CisgICAgIHJldHVybiAkYSBlcSAkYiBpZiAkY21wIGVxICJlcSI7CisgICAgIHJldHVybiAkYSA+PSAkYiBpZiAkY21wIGVxICI+PSIgb3IgJGNtcCBlcSAiPiI7CisgICAgIHJldHVybiAkYSBnZSAkYiBpZiAkY21wIGVxICJnZSI7CisgICAgIHJldHVybiAkYSA+ICRiICBpZiAkY21wIGVxICI+PiI7CisgICAgIHJldHVybiAkYSBndCAkYiBpZiAkY21wIGVxICJndCI7Cit9CisKK3VzZV9vaygnRHBrZzo6VmVyc2lvbicpOworCitteSAkdHJ1dGggPSB7CisgICAgIi0xIiA9PiB7CisJIjw8IiA9PiAxLCAibHQiID0+IDEsCisJIjw9IiA9PiAxLCAibGUiID0+IDEsICI8IiA9PiAxLAorCSI9IiA9PiAwLCAiZXEiID0+IDAsCisJIj49IiA9PiAwLCAiZ2UiID0+IDAsICI+IiA9PiAwLAorCSI+PiIgPT4gMCwgImd0IiA9PiAwLAorICAgIH0sCisgICAgIjAiID0+IHsKKwkiPDwiID0+IDAsICJsdCIgPT4gMCwKKwkiPD0iID0+IDEsICJsZSIgPT4gMSwgIjwiID0+IDEsCisJIj0iID0+IDEsICJlcSIgPT4gMSwKKwkiPj0iID0+IDEsICJnZSIgPT4gMSwgIj4iID0+IDEsCisJIj4+IiA9PiAwLCAiZ3QiID0+IDAsCisgICAgfSwKKyAgICAiMSIgPT4geworCSI8PCIgPT4gMCwgImx0IiA9PiAwLAorCSI8PSIgPT4gMCwgImxlIiA9PiAwLCAiPCIgPT4gMCwKKwkiPSIgPT4gMCwgImVxIiA9PiAwLAorCSI+PSIgPT4gMSwgImdlIiA9PiAxLCAiPiIgPT4gMSwKKwkiPj4iID0+IDEsICJndCIgPT4gMSwKKyAgICB9LAorfTsKKworIyBIYW5kbGluZyBvZiBlbXB0eS9pbnZhbGlkIHZlcnNpb25zCitteSAkZW1wdHkgPSBEcGtnOjpWZXJzaW9uLT5uZXcoIiIpOworb2soJGVtcHR5IGVxICIiLCAiRHBrZzo6VmVyc2lvbi0+bmV3KCcnKSBlcSAnJyIpOworb2soJGVtcHR5LT5hc19zdHJpbmcoKSBlcSAiIiwgIkRwa2c6OlZlcnNpb24tPm5ldygnJyktPmFzX3N0cmluZygpIGVxICcnIik7CitvayghJGVtcHR5LT5pc192YWxpZCgpLCAiZW1wdHkgdmVyc2lvbiBpcyBpbnZhbGlkIik7CitteSAkdmVyID0gRHBrZzo6VmVyc2lvbi0+bmV3KCIxMGE6NS4yIik7CitvayghJHZlci0+aXNfdmFsaWQoKSwgImJhZCBlcG9jaCBpcyBpbnZhbGlkIik7CitvayghJHZlciwgImJvb2wgZXZhbCBvZiBpbnZhbGlkIGxlYWRzIHRvIGZhbHNlIik7CitvaygkdmVyIGVxICcxMGE6NS4yJywgImludmFsaWQgc3RpbGwgc2FtZSBzdHJpbmcgMS8yIik7CiskdmVyID0gRHBrZzo6VmVyc2lvbi0+bmV3KCc1LjJAMy0yJyk7CitvaygkdmVyIGVxICc1LjJAMy0yJywgImludmFsaWQgc3RpbGwgc2FtZSBzdHJpbmcgMi8yIik7CitvayghJHZlci0+aXNfdmFsaWQoKSwgImlsbGVnYWwgY2hhcmFjdGVyIGlzIGludmFsaWQiKTsKKyR2ZXIgPSBEcGtnOjpWZXJzaW9uLT5uZXcoJ2ZvbzUuMicpOworb2soISR2ZXItPmlzX3ZhbGlkKCksICJ2ZXJzaW9uIGRvZXMgbm90IHN0YXJ0IHdpdGggZGlnaXQgMS8yIik7CiskdmVyID0gRHBrZzo6VmVyc2lvbi0+bmV3KCcwOmZvbzUuMicpOworb2soISR2ZXItPmlzX3ZhbGlkKCksICJ2ZXJzaW9uIGRvZXMgbm90IHN0YXJ0IHdpdGggZGlnaXQgMi8yIik7CisKKyMgT3RoZXIgdGVzdHMKKyR2ZXIgPSBEcGtnOjpWZXJzaW9uLT5uZXcoJzEuMi4zLTQnKTsKK2lzKCR2ZXIgfHwgJ2RlZmF1bHQnLCAnMS4yLjMtNCcsICJib29sIGV2YWwgcmV0dXJucyBzdHJpbmcgcmVwcmVzZW50YXRpb24iKTsKKyR2ZXIgPSBEcGtnOjpWZXJzaW9uLT5uZXcoJzAnKTsKK2lzKCR2ZXIgfHwgJ2RlZmF1bHQnLCAnZGVmYXVsdCcsICJib29sIGV2YWwgb2YgdmVyc2lvbiAwIGlzIHN0aWxsIGZhbHNlLi4uIik7CisKKyMgQ29tcGFyaXNvbnMKK2ZvcmVhY2ggbXkgJGNhc2UgKEB0ZXN0cykgeworICAgIG15ICgkYSwgJGIsICRyZXMpID0gc3BsaXQgIiAiLCAkY2FzZTsKKyAgICBteSAkdmEgPSBEcGtnOjpWZXJzaW9uLT5uZXcoJGEsIGNoZWNrID0+IDEpOworICAgIG15ICR2YiA9IERwa2c6OlZlcnNpb24tPm5ldygkYiwgY2hlY2sgPT4gMSk7CisKKyAgICBpcygiJHZhIiwgJGEsICJTdHJpbmcgcmVwcmVzZW50YXRpb24gb2YgRHBrZzo6VmVyc2lvbigkYSkgaXMgJGEiKTsKKyAgICBpcygiJHZiIiwgJGIsICJTdHJpbmcgcmVwcmVzZW50YXRpb24gb2YgRHBrZzo6VmVyc2lvbigkYikgaXMgJGIiKTsKKworICAgIGlzKHZlcnNpb25fY29tcGFyZSgkYSwgJGIpLCAkcmVzLCAiJGEgY21wICRiID0+ICRyZXMiKTsKKyAgICBpcygkdmEgPD0+ICR2YiwgJHJlcywgIkRwa2c6OlZlcnNpb24oJGEpIDw9PiBEcGtnOjpWZXJzaW9uKCRiKSA9PiAkcmVzIik7CisgICAgZm9yZWFjaCBteSAkb3AgKEBvcHMpIHsKKyAgICAgICAgbXkgJG5vcm1fb3AgPSB2ZXJzaW9uX25vcm1hbGl6ZV9yZWxhdGlvbigkb3ApOworCWlmICgkdHJ1dGgtPnskcmVzfXskb3B9KSB7CisJICAgIG9rKHZlcnNpb25fY29tcGFyZV9yZWxhdGlvbigkYSwgJG5vcm1fb3AsICRiKSwgIiRhICRvcCAkYiA9PiB0cnVlIik7CisJICAgIG9rKG9ial92ZXJjbXAoJHZhLCAkb3AsICR2YiksICJEcGtnOjpWZXJzaW9uKCRhKSAkb3AgRHBrZzo6VmVyc2lvbigkYikgPT4gdHJ1ZSIpOworCSAgICBvayhkcGtnX3ZlcmNtcCgkYSwgJG9wLCAkYiksICJkcGtnIC0tY29tcGFyZS12ZXJzaW9ucyAtLSAkYSAkb3AgJGIgPT4gdHJ1ZSIpOworCX0gZWxzZSB7CisJICAgIG9rKCF2ZXJzaW9uX2NvbXBhcmVfcmVsYXRpb24oJGEsICRub3JtX29wLCAkYiksICIkYSAkb3AgJGIgPT4gZmFsc2UiKTsKKwkgICAgb2soIW9ial92ZXJjbXAoJHZhLCAkb3AsICR2YiksICJEcGtnOjpWZXJzaW9uKCRhKSAkb3AgRHBrZzo6VmVyc2lvbigkYikgPT4gZmFsc2UiKTsKKwkgICAgb2soIWRwa2dfdmVyY21wKCRhLCAkb3AsICRiKSwgImRwa2cgLS1jb21wYXJlLXZlcnNpb25zIC0tICRhICRvcCAkYiA9PiBmYWxzZSIpOworCX0KKyAgICB9Cit9CisKK19fREFUQV9fCisxLjAtMSAyLjAtMiAtMQorMi4yfnJjLTQgMi4yLTEgLTEKKzIuMi0xIDIuMn5yYy00IDEKKzEuMDAwMC0xIDEuMC0xIDAKKzEgMDoxIDAKKzAgMDowLTAgMAorMjoyLjUgMTo3LjUgMQorMTowZm9vIDBmb28gMQorMDowZm9vIDBmb28gMAorMGZvbyAwZm9vIDAKKzBmb28tIDBmb28gMAorMGZvby0gMGZvby0wIDAKKzBmb28gMGZvIDEKKzBmb28tIDBmb28rIC0xCiswZm9vfjEgMGZvbyAtMQorMGZvb35mb28rQmFyIDBmb29+Zm9vK2JhciAtMQorMGZvb35+IDBmb29+IC0xCisxfiAxIC0xCisxMjM0NSt0aGF0LXJlYWxseS1pcy1zb21lLXZlci0wIDEyMzQ1K3RoYXQtcmVhbGx5LWlzLXNvbWUtdmVyLTEwIC0xCiswZm9vLTAgMGZvby0wMSAtMQorMGZvby5iYXIgMGZvb2JhciAxCiswZm9vLmJhciAwZm9vMWJhciAxCiswZm9vLmJhciAwZm9vMGJhciAxCiswZm9vMWJhci0xIDBmb29iYXItMSAtMQorMGZvbzIuMCAwZm9vMiAxCiswZm9vMi4wLjAgMGZvbzIuMTAuMCAtMQorMGZvbzIuMCAwZm9vMi4wLjAgLTEKKzBmb28yLjAgMGZvbzIuMTAgLTEKKzBmb28yLjEgMGZvbzIuMTAgLTEKKzEuMDkgMS45IDAKKzEuMC44K25tdTEgMS4wLjggMQorMy4xMSAzLjEwK25tdTEgMQorMC45ai0yMDA4MDMwNi00IDAuOWktMjAwNzAzMjQtMiAxCisxLjIuMH5iNy0xIDEuMi4wfmI2LTEgMQorMS4wMTEtMSAxLjA2LTIgMQorMC4wLjkrZGZzZzEtMSAwLjAuOCtkZnNnMS0zIDEKKzQuNi45OStzdm42NTgyLTEgNC42Ljk5K3N2bjY0OTYtMSAxCis1MyA1MiAxCiswLjkuOX5wcmUxMjItMSAwLjkuOX5wcmUxMTEtMSAxCisyOjIuMy4yLTIrbGVubnkyIDI6Mi4zLjItMiAxCisxOjMuOC4xLTEgMy44LkdBLTEgMQorMS4wLjErZ3BsLTEgMS4wLjEtMiAxCisxYSAxMDAwYSAtMQorLTAuNi41IDAuOS4xIC0xCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvdC8xOTBfRHBrZ19TaGxpYnNfQ3BwZmlsdC50IGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3QvMTkwX0Rwa2dfU2hsaWJzX0NwcGZpbHQudApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jOGZhNmYxCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3QvMTkwX0Rwa2dfU2hsaWJzX0NwcGZpbHQudApAQCAtMCwwICsxLDg1IEBACisjIC0qLSBtb2RlOiBjcGVybDstKi0KKyMKKyMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyMKKyMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisjIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisjIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyMKKyMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisKK3VzZSBUZXN0OjpNb3JlIHRlc3RzID0+IDEyNDsKKwordXNlIHN0cmljdDsKK3VzZSB3YXJuaW5nczsKKwordXNlX29rKCJEcGtnOjpTaGxpYnM6OkNwcGZpbHQiKTsKKworIyBTaW1wbGUgQysrIGRlbWFuZ2xpbmcgdGVzdHMKK2lzICggY3BwZmlsdF9kZW1hbmdsZV9jcHAoJ19aTlN0MTBpc3Ryc3RyZWFtQzFFUEtjbCcpLAorICAgICAgICAgICAgICAgICAgJ3N0ZDo6aXN0cnN0cmVhbTo6aXN0cnN0cmVhbShjaGFyIGNvbnN0KiwgbG9uZyknLAorICAgICdkZW1hbmdsZSBzeW1ib2wnICk7CitpcyAoIGNwcGZpbHRfZGVtYW5nbGVfY3BwKCdfWk5TdDEwaXN0cnN0cmVhbUMxRVBLY2xAQmFzZScpLAorICAgICAgICAgICAgICAgICAgJ3N0ZDo6aXN0cnN0cmVhbTo6aXN0cnN0cmVhbShjaGFyIGNvbnN0KiwgbG9uZylAQmFzZScsCisgICAgJ2RlbWFuZ2xlIHN5bWJvbCB3aXRoIGV4dHJhIHBvc3RmaXgnICk7CitpcyAoIGNwcGZpbHRfZGVtYW5nbGVfY3BwKCdmb29iYXIgX1pOU3QxMGlzdHJzdHJlYW1DMUVQS2NsQEJhc2UnKSwKKyAgICAgICAgICAgICAgICAgICdmb29iYXIgc3RkOjppc3Ryc3RyZWFtOjppc3Ryc3RyZWFtKGNoYXIgY29uc3QqLCBsb25nKUBCYXNlJywKKyAgICAnZGVtYW5nbGUgc3ltYm9sIHdpdGggZ2FyYmFnZSBhcm91bmQgaXQnICk7CitpcyAoIGNwcGZpbHRfZGVtYW5nbGVfY3BwKCdGb29iYXJJbnZhbGlkU3ltYm9sJyksIHVuZGVmLAorICAgICdub24tZGVtYW5nbGFibGUgc3RyaW5nJyApOworCisjIE1hc3MgQysrIGRlbWFuZ2xpbmcuIENoZWNraW5nIGlmIGMrK2ZpbHQgZG9lcyBub3QgaGFuZyBhbmQgY3BwZmlsdF9kZW1hbmdsZSgpCisjIGltbWVkaWF0ZWx5IHByb3ZpZGVzIGEgY29ycmVjdCBhbnN3ZXIgdG8gdGhlIGNhbGxlciAoaS5lLiBubyBidWZmZXJpbmcpLgorbXkgQG1hbmdsZWR0ZXh0ID0gc3BsaXQoL1xuKy9zLCA8PCdFTkQnKTsKKzAwMDAwMDAwMDAwMDAwMDAgICAgICBERiAqVU5EKiAgMDAwMDAwMDAwMDAwMDAwMCAgR0NDXzMuMCAgICAgX1Vud2luZF9TZXRJUAorMDAwMDAwMDAwMDAwMDAwMCAgICAgIERGICpVTkQqICAwMDAwMDAwMDAwMDAwMDAwICBHTElCQ18yLjIuNSBfX3Rvd2xvd2VyX2wKKzAwMDAwMDAwMDAwMDAwMDAgICAgICBETyAqVU5EKiAgMDAwMDAwMDAwMDAwMDAwMCAgR0xJQkNfMi4yLjUgc3Rkb3V0CiswMDAwMDAwMDAwMDAwMDAwICAgICAgREYgKlVORCogIDAwMDAwMDAwMDAwMDAwMDAgIEdMSUJDXzIuMi41IHdtZW1zZXQKKzAwMDAwMDAwMDAwMDAwMDAgICAgICBERiAqVU5EKiAgMDAwMDAwMDAwMDAwMDAwMCAgR0xJQkNfMi4yLjUgZmZsdXNoCiswMDAwMDAwMDAwMDAwMDAwICAgICAgREYgKlVORCogIDAwMDAwMDAwMDAwMDAwMDAgIEdMSUJDXzIuMi41IGdldGMKKzAwMDAwMDAwMDAwMDAwMDAgIHcgICBEICAqVU5EKiAgMDAwMDAwMDAwMDAwMDAwMCAgICAgICAgICAgICAgcHRocmVhZF9qb2luCiswMDAwMDAwMDAwMGNmYzIyIGcgICAgRE8gLnJvZGF0YSAgICAgICAgMDAwMDAwMDAwMDAwMDAwMSAgR0xJQkNYWF8zLjQgX1pOU3QxNG51bWVyaWNfbGltaXRzSXlFMTdoYXNfc2lnbmFsaW5nX05hTkUKKzAwMDAwMDAwMDAwODhkODAgIHcgICBERiAudGV4dCAgMDAwMDAwMDAwMDAwMDA2NCAgR0xJQkNYWF8zLjQgX1pOU3QxMV9fdGltZXB1bmN0SWNFQzJFbQorMDAwMDAwMDAwMDJmNDBhMCAgdyAgIERPIC5kYXRhLnJlbC5ybyAgIDAwMDAwMDAwMDAwMDAwMjAgIEdMSUJDWFhfMy40IF9aVFRTdDE0YmFzaWNfaWZzdHJlYW1Jd1N0MTFjaGFyX3RyYWl0c0l3RUUKKzAwMDAwMDAwMDAwNWE1ZjAgZyAgICBERiAudGV4dCAgMDAwMDAwMDAwMDAwMDA2MyAgR0xJQkNYWF8zLjQuMTEgX1pOVlN0OV9fYXRvbWljMDExYXRvbWljX2ZsYWc1Y2xlYXJFU3QxMm1lbW9yeV9vcmRlcgorMDAwMDAwMDAwMDBiZGMyMCAgdyAgIERGIC50ZXh0ICAwMDAwMDAwMDAwMDAwMDI0ICBHTElCQ1hYXzMuNCBfWk5TYkl3U3QxMWNoYXJfdHJhaXRzSXdFU2FJd0VFQzFFUEt3bVJLUzFfCiswMDAwMDAwMDAwMDYzODUwIGcgICAgREYgLnRleHQgIDAwMDAwMDAwMDAwMDAwNjIgIEdMSUJDWFhfMy40IF9aTlN0NWN0eXBlSXdFRDJFdgorMDAwMDAwMDAwMDA4OThiMCAgdyAgIERGIC50ZXh0ICAwMDAwMDAwMDAwMDAwMjU1ICBHTElCQ1hYXzMuNCBfWk5LU3Q4dGltZV9wdXRJY1N0MTlvc3RyZWFtYnVmX2l0ZXJhdG9ySWNTdDExY2hhcl90cmFpdHNJY0VFRTNwdXRFUzNfUlN0OGlvc19iYXNlY1BLMnRtUEtjU0JfCisKKzAwMDAwMDAwMDAwYmZmMzAgZyAgICBERiAudGV4dCAgMDAwMDAwMDAwMDAwMDAxOSAgX1pOU3QxOGNvbmRpdGlvbl92YXJpYWJsZTEwbm90aWZ5X29uZUV2QEdMSUJDWFhfMy40LjExCiswMDAwMDAwMDAwMDY2NmEwIGcgICAgREYgLnRleHQgIDAwMDAwMDAwMDAwMDAwM2YgIF9aTktTdDN0cjE0aGFzaElSS1NiSXdTdDExY2hhcl90cmFpdHNJd0VTYUl3RUVFY2xFUzZfQEdMSUJDWFhfMy40LjEwCiswMDAwMDAwMDAwMmY2MTYwICB3ICAgRE8gLmRhdGEucmVsLnJvICAgMDAwMDAwMDAwMDAwMDA1MCAgX1pUVFN0MThiYXNpY19zdHJpbmdzdHJlYW1JY1N0MTFjaGFyX3RyYWl0c0ljRVNhSWNFRUBHTElCQ1hYXzMuNAorRU5ECisKK215IEBkZW1hbmdsZWR0ZXh0ID0gc3BsaXQoL1xuKy9zLCA8PCdFTkQnKTsKKzAwMDAwMDAwMDAwMDAwMDAgICAgICBERiAqVU5EKiAgMDAwMDAwMDAwMDAwMDAwMCAgR0NDXzMuMCAgICAgX1Vud2luZF9TZXRJUAorMDAwMDAwMDAwMDAwMDAwMCAgICAgIERGICpVTkQqICAwMDAwMDAwMDAwMDAwMDAwICBHTElCQ18yLjIuNSBfX3Rvd2xvd2VyX2wKKzAwMDAwMDAwMDAwMDAwMDAgICAgICBETyAqVU5EKiAgMDAwMDAwMDAwMDAwMDAwMCAgR0xJQkNfMi4yLjUgc3Rkb3V0CiswMDAwMDAwMDAwMDAwMDAwICAgICAgREYgKlVORCogIDAwMDAwMDAwMDAwMDAwMDAgIEdMSUJDXzIuMi41IHdtZW1zZXQKKzAwMDAwMDAwMDAwMDAwMDAgICAgICBERiAqVU5EKiAgMDAwMDAwMDAwMDAwMDAwMCAgR0xJQkNfMi4yLjUgZmZsdXNoCiswMDAwMDAwMDAwMDAwMDAwICAgICAgREYgKlVORCogIDAwMDAwMDAwMDAwMDAwMDAgIEdMSUJDXzIuMi41IGdldGMKKzAwMDAwMDAwMDAwMDAwMDAgIHcgICBEICAqVU5EKiAgMDAwMDAwMDAwMDAwMDAwMCAgICAgICAgICAgICAgcHRocmVhZF9qb2luCiswMDAwMDAwMDAwMGNmYzIyIGcgICAgRE8gLnJvZGF0YSAgICAgICAgMDAwMDAwMDAwMDAwMDAwMSAgR0xJQkNYWF8zLjQgc3RkOjpudW1lcmljX2xpbWl0czx1bnNpZ25lZCBsb25nIGxvbmc+OjpoYXNfc2lnbmFsaW5nX05hTgorMDAwMDAwMDAwMDA4OGQ4MCAgdyAgIERGIC50ZXh0ICAwMDAwMDAwMDAwMDAwMDY0ICBHTElCQ1hYXzMuNCBzdGQ6Ol9fdGltZXB1bmN0PGNoYXI+OjpfX3RpbWVwdW5jdCh1bnNpZ25lZCBsb25nKQorMDAwMDAwMDAwMDJmNDBhMCAgdyAgIERPIC5kYXRhLnJlbC5ybyAgIDAwMDAwMDAwMDAwMDAwMjAgIEdMSUJDWFhfMy40IFZUVCBmb3Igc3RkOjpiYXNpY19pZnN0cmVhbTx3Y2hhcl90LCBzdGQ6OmNoYXJfdHJhaXRzPHdjaGFyX3Q+ID4KKzAwMDAwMDAwMDAwNWE1ZjAgZyAgICBERiAudGV4dCAgMDAwMDAwMDAwMDAwMDA2MyAgR0xJQkNYWF8zLjQuMTEgc3RkOjpfX2F0b21pYzA6OmF0b21pY19mbGFnOjpjbGVhcihzdGQ6Om1lbW9yeV9vcmRlcikgdm9sYXRpbGUKKzAwMDAwMDAwMDAwYmRjMjAgIHcgICBERiAudGV4dCAgMDAwMDAwMDAwMDAwMDAyNCAgR0xJQkNYWF8zLjQgc3RkOjpiYXNpY19zdHJpbmc8d2NoYXJfdCwgc3RkOjpjaGFyX3RyYWl0czx3Y2hhcl90Piwgc3RkOjphbGxvY2F0b3I8d2NoYXJfdD4gPjo6YmFzaWNfc3RyaW5nKHdjaGFyX3QgY29uc3QqLCB1bnNpZ25lZCBsb25nLCBzdGQ6OmFsbG9jYXRvcjx3Y2hhcl90PiBjb25zdCYpCiswMDAwMDAwMDAwMDYzODUwIGcgICAgREYgLnRleHQgIDAwMDAwMDAwMDAwMDAwNjIgIEdMSUJDWFhfMy40IHN0ZDo6Y3R5cGU8d2NoYXJfdD46On5jdHlwZSgpCiswMDAwMDAwMDAwMDg5OGIwICB3ICAgREYgLnRleHQgIDAwMDAwMDAwMDAwMDAyNTUgIEdMSUJDWFhfMy40IHN0ZDo6dGltZV9wdXQ8Y2hhciwgc3RkOjpvc3RyZWFtYnVmX2l0ZXJhdG9yPGNoYXIsIHN0ZDo6Y2hhcl90cmFpdHM8Y2hhcj4gPiA+OjpwdXQoc3RkOjpvc3RyZWFtYnVmX2l0ZXJhdG9yPGNoYXIsIHN0ZDo6Y2hhcl90cmFpdHM8Y2hhcj4gPiwgc3RkOjppb3NfYmFzZSYsIGNoYXIsIHRtIGNvbnN0KiwgY2hhciBjb25zdCosIGNoYXIgY29uc3QqKSBjb25zdAorCiswMDAwMDAwMDAwMGJmZjMwIGcgICAgREYgLnRleHQgIDAwMDAwMDAwMDAwMDAwMTkgIHN0ZDo6Y29uZGl0aW9uX3ZhcmlhYmxlOjpub3RpZnlfb25lKClAR0xJQkNYWF8zLjQuMTEKKzAwMDAwMDAwMDAwNjY2YTAgZyAgICBERiAudGV4dCAgMDAwMDAwMDAwMDAwMDAzZiAgc3RkOjp0cjE6Omhhc2g8c3RkOjpiYXNpY19zdHJpbmc8d2NoYXJfdCwgc3RkOjpjaGFyX3RyYWl0czx3Y2hhcl90Piwgc3RkOjphbGxvY2F0b3I8d2NoYXJfdD4gPiBjb25zdCY+OjpvcGVyYXRvcigpKHN0ZDo6YmFzaWNfc3RyaW5nPHdjaGFyX3QsIHN0ZDo6Y2hhcl90cmFpdHM8d2NoYXJfdD4sIHN0ZDo6YWxsb2NhdG9yPHdjaGFyX3Q+ID4gY29uc3QmKSBjb25zdEBHTElCQ1hYXzMuNC4xMAorMDAwMDAwMDAwMDJmNjE2MCAgdyAgIERPIC5kYXRhLnJlbC5ybyAgIDAwMDAwMDAwMDAwMDAwNTAgIFZUVCBmb3Igc3RkOjpiYXNpY19zdHJpbmdzdHJlYW08Y2hhciwgc3RkOjpjaGFyX3RyYWl0czxjaGFyPiwgc3RkOjphbGxvY2F0b3I8Y2hhcj4gPkBHTElCQ1hYXzMuNAorRU5ECisKK2ZvciAobXkgJHRyeSA9IDE7ICR0cnkgPD0gNzsgJHRyeSsrKSB7CisgICAgZm9yIChteSAkaSA9IDA7ICRpIDw9ICQjbWFuZ2xlZHRleHQ7ICRpKyspIHsKKwlteSAkZGVtYW5nbGVkID0gY3BwZmlsdF9kZW1hbmdsZV9jcHAoJG1hbmdsZWR0ZXh0WyRpXSkgfHwgJG1hbmdsZWR0ZXh0WyRpXTsKKwlpcyggJGRlbWFuZ2xlZCwgJGRlbWFuZ2xlZHRleHRbJGldLCAibWFzcyBjKysgZGVtYW5nbGluZyAoJHt0cnl9eCIuKCR7aX0rMSkuIikiKTsKKyAgICB9Cit9CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvdC8yMDBfRHBrZ19TaGxpYnMudCBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90LzIwMF9EcGtnX1NobGlicy50Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmNiODI3MjMKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvdC8yMDBfRHBrZ19TaGxpYnMudApAQCAtMCwwICsxLDU2OCBAQAorIyAtKi0gbW9kZTogY3Blcmw7LSotCisjCisjIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisjIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisjIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisjIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisjCisjIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisjIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisjCisjIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisjIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorCit1c2UgVGVzdDo6TW9yZSB0ZXN0cyA9PiAxMDY7Cit1c2UgQ3dkOwordXNlIElPOjpTdHJpbmc7CisKK3VzZSBzdHJpY3Q7Cit1c2Ugd2FybmluZ3M7CisKK3VzZV9vaygnRHBrZzo6U2hsaWJzJyk7CisKK215ICR0bXA7CitteSBAdG1wOworbXkgJXRtcDsKKworbXkgQHNhdmVfcGF0aHMgPSBARHBrZzo6U2hsaWJzOjpsaWJyYXJ5cGF0aHM7CitARHBrZzo6U2hsaWJzOjpsaWJyYXJ5cGF0aHMgPSAoKTsKKworbXkgJHNyY2RpciA9ICRFTlZ7c3JjZGlyfSB8fCAnLic7CitteSAkZGF0YWRpciA9ICRzcmNkaXIgLiAnL3QvMjAwX0Rwa2dfU2hsaWJzJzsKK215ICR0bXBkaXIgPSAndC50bXAvMjAwX0Rwa2dfU2hsaWJzJzsKKworIyBXZSB3YW50IHJlbGF0aXZlIHBhdGhzIGluc2lkZSB0aGUgbGQuc28uY29uZiBmcmFnbWVudHMgdG8gd29yaywgYW5kICRzcmNkaXIKKyMgaXMgdXN1YWxseSBhIHJlbGF0aXZlIHBhdGgsIHNvIGxldCdzIHRlbXBvcmFyaWx5IHN3aXRjaCBkaXJlY3RvcnkuCisjIFhYWDogQW4gYWx0ZXJuYXRpdmUgd291bGQgYmUgdG8gbWFrZSBwYXJzZV9sZHNvX2NvbmYgcmVsYXRpdmUgcGF0aCBhd2FyZS4KK215ICRjd2QgPSBjd2QoKTsKK2NoZGlyKCRzcmNkaXIpOworRHBrZzo6U2hsaWJzOjpwYXJzZV9sZHNvX2NvbmYoInQvMjAwX0Rwa2dfU2hsaWJzL2xkLnNvLmNvbmYiKTsKK2NoZGlyKCRjd2QpOworCit1c2UgRGF0YTo6RHVtcGVyOworaXNfZGVlcGx5KFtxdygvbm9uZXhpc3RhbnQzMiAvbm9uZXhpc3RhbnQvbGliNjQKKwkgICAgIC91c3IvbG9jYWwvbGliIC9ub25leGlzdGFudC9saWIxMjggKV0sCisJICBcQERwa2c6OlNobGliczo6bGlicmFyeXBhdGhzLCAicGFyc2VkIGxpYnJhcnkgcGF0aHMiKTsKKwordXNlX29rKCdEcGtnOjpTaGxpYnM6Ok9iamR1bXAnKTsKKworbXkgJG9iaiA9IERwa2c6OlNobGliczo6T2JqZHVtcDo6T2JqZWN0LT5uZXc7CisKK29wZW4gbXkgJG9iamR1bXAsICc8JywgIiRkYXRhZGlyL29iamR1bXAuZGJkLXBnIgorICBvciBkaWUgIiRkYXRhZGlyL29iamR1bXAuZGJkLXBnOiAkISI7Ciskb2JqLT5wYXJzZV9vYmpkdW1wX291dHB1dCgkb2JqZHVtcCk7CitjbG9zZSAkb2JqZHVtcDsKK29rKCEkb2JqLT5pc19wdWJsaWNfbGlicmFyeSgpLCAnUGcuc28gaXMgbm90IGEgcHVibGljIGxpYnJhcnknKTsKK29rKCEkb2JqLT5pc19leGVjdXRhYmxlKCksICdQZy5zbyBpcyBub3QgYW4gZXhlY3V0YWJsZScpOworCitvcGVuICRvYmpkdW1wLCAnPCcsICIkZGF0YWRpci9vYmpkdW1wLmxzIgorICBvciBkaWUgIiRkYXRhZGlyL29iamR1bXAubHM6ICQhIjsKKyRvYmotPnJlc2V0KCk7Ciskb2JqLT5wYXJzZV9vYmpkdW1wX291dHB1dCgkb2JqZHVtcCk7CitjbG9zZSAkb2JqZHVtcDsKK29rKCEkb2JqLT5pc19wdWJsaWNfbGlicmFyeSgpLCAnbHMgaXMgbm90IGEgcHVibGljIGxpYnJhcnknKTsKK29rKCRvYmotPmlzX2V4ZWN1dGFibGUoKSwgJ2xzIGlzIGFuIGV4ZWN1dGFibGUnKTsKKworbXkgJHN5bSA9ICRvYmotPmdldF9zeW1ib2woJ29wdGFyZ0BHTElCQ18yLjAnKTsKK29rKCRzeW0sICdvcHRhcmdAR0xJQkNfMi4wIGV4aXN0cycpOworb2soISRzeW0tPnsnZGVmaW5lZCd9LCAnUl8qX0NPUFkgcmVsb2NhdGlvbnMgYXJlIHRha2VuIGludG8gYWNjb3VudCcpOworCisjIE5vbi1yZWdyZXNzaW9uIHRlc3QgZm9yICM1MDYxMzkKKyRzeW0gPSAkb2JqLT5nZXRfc3ltYm9sKCdzaW5nbGVzcGFjZScpOworb2soJHN5bSwgJ3ZlcnNpb24gbGVzcyBzeW1ib2wgc2VwYXJhdGVkIGJ5IGEgc2luZ2xlIHNwYWNlIGFyZSBjb3JyZWN0bHkgcGFyc2VkJyk7CisKK29wZW4gJG9iamR1bXAsICc8JywgIiRkYXRhZGlyL29iamR1bXAubGliYzYtMi42IgorICBvciBkaWUgIiRkYXRhZGlyL29iamR1bXAubGliYzYtMi42OiAkISI7Ciskb2JqLT5yZXNldCgpOworJG9iai0+cGFyc2Vfb2JqZHVtcF9vdXRwdXQoJG9iamR1bXApOworY2xvc2UgJG9iamR1bXA7CisKK29rKCRvYmotPmlzX3B1YmxpY19saWJyYXJ5KCksICdsaWJjNiBpcyBhIHB1YmxpYyBsaWJyYXJ5Jyk7CitvayghJG9iai0+aXNfZXhlY3V0YWJsZSgpLCAnbGliYzYgaXMgbm90IGFuIGV4ZWN1dGFibGUnKTsKKworaXMoJG9iai0+e1NPTkFNRX0sICdsaWJjLnNvLjYnLCAnU09OQU1FJyk7Citpcygkb2JqLT57SEFTSH0sICcweDEzZDk5YycsICdIQVNIJyk7Citpcygkb2JqLT57R05VX0hBU0h9LCAnMHgxOTQnLCAnR05VX0hBU0gnKTsKK2lzKCRvYmotPntmb3JtYXR9LCAnZWxmMzItaTM4NicsICdmb3JtYXQnKTsKK2lzX2RlZXBseSgkb2JqLT57ZmxhZ3N9LCB7IERZTkFNSUMgPT4gMSwgSEFTX1NZTVMgPT4gMSwgRF9QQUdFRCA9PiAxIH0sICdmbGFncycpOworaXNfZGVlcGx5KCRvYmotPntORUVERUR9LCBbICdsZC1saW51eC5zby4yJyBdLCAnTkVFREVEJyk7Citpc19kZWVwbHkoWyAkb2JqLT5nZXRfbmVlZGVkX2xpYnJhcmllcyBdLCBbICdsZC1saW51eC5zby4yJyBdLCAnTkVFREVEJyk7CisKKyRzeW0gPSAkb2JqLT5nZXRfc3ltYm9sKCdfc3lzX25lcnJAR0xJQkNfMi4zJyk7Citpc19kZWVwbHkoICRzeW0sIHsgbmFtZSA9PiAnX3N5c19uZXJyJywgdmVyc2lvbiA9PiAnR0xJQkNfMi4zJywKKwkJICAgc29uYW1lID0+ICdsaWJjLnNvLjYnLCBvYmppZCA9PiAnbGliYy5zby42JywKKwkJICAgc2VjdGlvbiA9PiAnLnJvZGF0YScsIGR5bmFtaWMgPT4gMSwKKwkJICAgZGVidWcgPT4gJycsIHR5cGUgPT4gJ08nLCB3ZWFrID0+ICcnLAorCQkgICBsb2NhbCA9PiAnJywgZ2xvYmFsID0+IDEsIHZpc2liaWxpdHkgPT4gJycsCisJCSAgIGhpZGRlbiA9PiAxLCBkZWZpbmVkID0+IDEgfSwgJ1N5bWJvbCcgKTsKKyRzeW0gPSAkb2JqLT5nZXRfc3ltYm9sKCdfSU9fc3RkaW5fdXNlZCcpOworaXNfZGVlcGx5KCAkc3ltLCB7IG5hbWUgPT4gJ19JT19zdGRpbl91c2VkJywgdmVyc2lvbiA9PiAnJywKKwkJICAgc29uYW1lID0+ICdsaWJjLnNvLjYnLCBvYmppZCA9PiAnbGliYy5zby42JywKKwkJICAgc2VjdGlvbiA9PiAnKlVORConLCBkeW5hbWljID0+IDEsCisJCSAgIGRlYnVnID0+ICcnLCB0eXBlID0+ICcgJywgd2VhayA9PiAxLAorCQkgICBsb2NhbCA9PiAnJywgZ2xvYmFsID0+ICcnLCB2aXNpYmlsaXR5ID0+ICcnLAorCQkgICBoaWRkZW4gPT4gJycsIGRlZmluZWQgPT4gJycgfSwgJ1N5bWJvbCAyJyApOworCitteSBAc3ltcyA9ICRvYmotPmdldF9leHBvcnRlZF9keW5hbWljX3N5bWJvbHM7Citpcyggc2NhbGFyIEBzeW1zLCAyMjMxLCAnZGVmaW5lZCAmJiBkeW5hbWljJyApOworQHN5bXMgPSAkb2JqLT5nZXRfdW5kZWZpbmVkX2R5bmFtaWNfc3ltYm9sczsKK2lzKCBzY2FsYXIgQHN5bXMsIDksICd1bmRlZmluZWQgJiYgZHluYW1pYycgKTsKKworCitteSAkb2JqX29sZCA9IERwa2c6OlNobGliczo6T2JqZHVtcDo6T2JqZWN0LT5uZXc7CisKK29wZW4gJG9iamR1bXAsICc8JywgIiRkYXRhZGlyL29iamR1bXAubGliYzYtMi4zIgorICBvciBkaWUgIiRkYXRhZGlyL29iamR1bXAubGliYzYtMi4zOiAkISI7Ciskb2JqX29sZC0+cGFyc2Vfb2JqZHVtcF9vdXRwdXQoJG9iamR1bXApOworY2xvc2UgJG9iamR1bXA7CisKKwordXNlX29rKCdEcGtnOjpTaGxpYnM6OlN5bWJvbEZpbGUnKTsKK3VzZV9vaygnRHBrZzo6U2hsaWJzOjpTeW1ib2wnKTsKKworbXkgJHN5bV9maWxlID0gRHBrZzo6U2hsaWJzOjpTeW1ib2xGaWxlLT5uZXcoZmlsZSA9PiAiJGRhdGFkaXIvc3ltYm9sX2ZpbGUudG1wIik7CitteSAkc3ltX2ZpbGVfZHVwID0gRHBrZzo6U2hsaWJzOjpTeW1ib2xGaWxlLT5uZXcoZmlsZSA9PiAiJGRhdGFkaXIvc3ltYm9sX2ZpbGUudG1wIik7CitteSAkc3ltX2ZpbGVfb2xkID0gRHBrZzo6U2hsaWJzOjpTeW1ib2xGaWxlLT5uZXcoZmlsZSA9PiAiJGRhdGFkaXIvc3ltYm9sX2ZpbGUudG1wIik7CisKKyRzeW1fZmlsZS0+bWVyZ2Vfc3ltYm9scygkb2JqX29sZCwgIjIuMy42LmRzMS0xMyIpOworJHN5bV9maWxlX29sZC0+bWVyZ2Vfc3ltYm9scygkb2JqX29sZCwgIjIuMy42LmRzMS0xMyIpOworCitvayggJHN5bV9maWxlLT5oYXNfb2JqZWN0KCdsaWJjLnNvLjYnKSwgJ1NPTkFNRSBpbiBzeW0gZmlsZScgKTsKKworJHN5bV9maWxlLT5tZXJnZV9zeW1ib2xzKCRvYmosICIyLjYtMSIpOworCitvayggJHN5bV9maWxlLT5nZXRfbmV3X3N5bWJvbHMoJHN5bV9maWxlX29sZCksICdoYXMgbmV3IHN5bWJvbHMnICk7CitvayggJHN5bV9maWxlX29sZC0+Z2V0X2xvc3Rfc3ltYm9scygkc3ltX2ZpbGUpLCAnaGFzIGxvc3Qgc3ltYm9scycgKTsKKworaXMoICRzeW1fZmlsZV9vbGQtPmxvb2t1cF9zeW1ib2woJ19fYnNzX3N0YXJ0QEJhc2UnLCBbJ2xpYmMuc28uNiddKSwKKyAgICB1bmRlZiwgJ2ludGVybmFsIHN5bWJvbHMgYXJlIGJsYWNrbGlzdGVkJyApOworCisldG1wID0gJHN5bV9maWxlLT5sb29rdXBfc3ltYm9sKCdfZXJybm9AR0xJQkNfMi4wJywgWydsaWJjLnNvLjYnXSwgMSk7Citpc2Ffb2soJHRtcHtzeW1ib2x9LCAnRHBrZzo6U2hsaWJzOjpTeW1ib2wnKTsKK2lzX2RlZXBseShcJXRtcCwgeyBzeW1ib2wgPT4gRHBrZzo6U2hsaWJzOjpTeW1ib2wtPm5ldyggJ3N5bWJvbCcgPT4gJ19lcnJub0BHTElCQ18yLjAnLAorCQkgICdtaW52ZXInID0+ICcyLjMuNi5kczEtMTMnLCAnZGVwX2lkJyA9PiAwLAorCQkgICdkZXByZWNhdGVkJyA9PiAnMi42LTEnKSwgJ3NvbmFtZScgPT4gJ2xpYmMuc28uNicgfSwKKwkJICAnZGVwcmVjYXRlZCBzeW1ib2wnKTsKKworIyBXaWxkY2FyZCB0ZXN0CitteSAkcGF0ID0gJHN5bV9maWxlX29sZC0+Y3JlYXRlX3N5bWJvbCgnKkBHTElCQ19QUklWQVRFIDIuMy42LndpbGRjYXJkJyk7Ciskc3ltX2ZpbGVfb2xkLT5hZGRfc3ltYm9sKCRwYXQsICdsaWJjLnNvLjYnKTsKKyRzeW1fZmlsZV9vbGQtPm1lcmdlX3N5bWJvbHMoJG9iaiwgIjIuNi0xIik7Ciskc3ltID0gJHN5bV9maWxlX29sZC0+bG9va3VwX3N5bWJvbCgnX19uc3Nfc2VydmljZXNfbG9va3VwQEdMSUJDX1BSSVZBVEUnLCAnbGliYy5zby42Jyk7Citpc19kZWVwbHkoJHN5bSwgRHBrZzo6U2hsaWJzOjpTeW1ib2wtPm5ldyggJ3N5bWJvbCcgPT4gJ19fbnNzX3NlcnZpY2VzX2xvb2t1cEBHTElCQ19QUklWQVRFJywKKwkJICAnbWludmVyJyA9PiAnMi4zLjYud2lsZGNhcmQnLCAnZGVwX2lkJyA9PiAwLCAnZGVwcmVjYXRlZCcgPT4gMCwKKwkJICAndGFncycgPT4geyAnc3ltdmVyJyA9PiB1bmRlZiwgIG9wdGlvbmFsID0+IHVuZGVmIH0sICd0YWdvcmRlcicgPT4gWyAnc3ltdmVyJywgJ29wdGlvbmFsJyBdLAorCQkgICdtYXRjaGluZ19wYXR0ZXJuJyA9PiAkcGF0ICksICd3aWxkY2FyZGVkIHN5bWJvbCcpOworCisjIFNhdmUgLT4gTG9hZCB0ZXN0Cit1c2UgRmlsZTo6VGVtcDsKK3VzZSBGaWxlOjpCYXNlbmFtZSBxdyhiYXNlbmFtZSk7CisKK3N1YiBzYXZlX2xvYWRfdGVzdCB7CisgICAgbXkgKCRzeW1maWxlLCAkY29tbWVudCwgQG9wdHMpID0gQF87CisKKyAgICBteSAkc2F2ZV9maWxlID0gbmV3IEZpbGU6OlRlbXA7CisgICAgJHN5bWZpbGUtPnNhdmUoJHNhdmVfZmlsZS0+ZmlsZW5hbWUsIEBvcHRzKTsKKyAgICBteSAkZHVwID0gbmV3IERwa2c6OlNobGliczo6U3ltYm9sRmlsZShmaWxlID0+ICRzYXZlX2ZpbGUtPmZpbGVuYW1lKTsKKyAgICAjIEZvcmNlIHN5bmMgb2Ygbm9uLXN0b3JlZCBhdHRyaWJ1dGVzCisgICAgJGR1cC0+e2ZpbGV9ID0gJHN5bWZpbGUtPntmaWxlfTsKKyAgICAkZHVwLT57YXJjaH0gPSAkc3ltZmlsZS0+e2FyY2h9OworCisgICAgaXNfZGVlcGx5KCRkdXAsICRzeW1maWxlLCAkY29tbWVudCk7CisgICAgaWYgKC1mICRzeW1maWxlLT57ZmlsZX0pIHsKKwlpcyggc3lzdGVtKHNwcmludGYoImRpZmYgLXUgJyVzJyAnJXMnID4mMiIsICRzeW1maWxlLT57ZmlsZX0sICRzYXZlX2ZpbGUtPmZpbGVuYW1lKSksIDAsCisJICAgIGJhc2VuYW1lKCRzeW1maWxlLT57ZmlsZX0pIC4gIiBkdW1wZWQgaWRlbnRpY2FsIiApOworICAgIH0KK30KKworc2F2ZV9sb2FkX3Rlc3QoICRzeW1fZmlsZSwgJ3NhdmUgLT4gbG9hZCcgKTsKKworIyBUZXN0IGluY2x1ZGUgbWVjaGFuaXNtIG9mIFN5bWJvbEZpbGUKKyRzeW1fZmlsZSA9IERwa2c6OlNobGliczo6U3ltYm9sRmlsZS0+bmV3KGZpbGUgPT4gIiRkYXRhZGlyL3N5bWJvbHMuaW5jbHVkZS0xIik7CisKKyRzeW0gPSAkc3ltX2ZpbGUtPmxvb2t1cF9zeW1ib2woJ3N5bWJvbF9iZWZvcmVAQmFzZScsIFsnbGliZmFrZS5zby4xJ10pOworaXNfZGVlcGx5KCRzeW0sIERwa2c6OlNobGliczo6U3ltYm9sLT5uZXcoICdzeW1ib2wnID0+ICdzeW1ib2xfYmVmb3JlQEJhc2UnLAorCQkgICdtaW52ZXInID0+ICcwLjknLCAnZGVwX2lkJyA9PiAwLCAnZGVwcmVjYXRlZCcgPT4gMCApLAorCSAgICAnc3ltYm9sIGJlZm9yZSBpbmNsdWRlIG5vdCBsb3N0Jyk7CisKKyRzeW0gPSAkc3ltX2ZpbGUtPmxvb2t1cF9zeW1ib2woJ3N5bWJvbF9hZnRlckBCYXNlJywgWydsaWJmYWtlLnNvLjEnXSk7Citpc19kZWVwbHkoJHN5bSwgRHBrZzo6U2hsaWJzOjpTeW1ib2wtPm5ldyggJ3N5bWJvbCcgPT4gJ3N5bWJvbF9hZnRlckBCYXNlJywKKwkJICAnbWludmVyJyA9PiAnMS4xJywgJ2RlcF9pZCcgPT4gMCwgJ2RlcHJlY2F0ZWQnID0+IDAgKSwKKwkgICAgJ3N5bWJvbCBhZnRlciBpbmNsdWRlIG5vdCBsb3N0Jyk7CisKKyRzeW0gPSAkc3ltX2ZpbGUtPmxvb2t1cF9zeW1ib2woJ3N5bWJvbDFfZmFrZTFAQmFzZScsIFsnbGliZmFrZS5zby4xJ10pOworaXNfZGVlcGx5KCRzeW0sIERwa2c6OlNobGliczo6U3ltYm9sLT5uZXcoICdzeW1ib2wnID0+ICdzeW1ib2wxX2Zha2UxQEJhc2UnLAorCQkgICdtaW52ZXInID0+ICcxLjAnLCAnZGVwX2lkJyA9PiAwLCAnZGVwcmVjYXRlZCcgPT4gMCApLAorCSAgICAnb3ZlcnJpZGVzIG9yZGVyIHdpdGggI2luY2x1ZGUnKTsKKworJHN5bSA9ICRzeW1fZmlsZS0+bG9va3VwX3N5bWJvbCgnc3ltYm9sM19mYWtlMUBCYXNlJywgWydsaWJmYWtlLnNvLjEnXSk7Citpc19kZWVwbHkoJHN5bSwgRHBrZzo6U2hsaWJzOjpTeW1ib2wtPm5ldyAoICdzeW1ib2wnID0+ICdzeW1ib2wzX2Zha2UxQEJhc2UnLAorCQkgICdtaW52ZXInID0+ICcwJywgJ2RlcF9pZCcgPT4gMCwgJ2RlcHJlY2F0ZWQnID0+IDAgKSwKKwkgICAgJ292ZXJyaWRlcyBvcmRlciB3aXRoICNpbmNsdWRlJyk7CisKK2lzKCRzeW1fZmlsZS0+Z2V0X3NtYWxsZXN0X3ZlcnNpb24oJ2xpYmZha2Uuc28uMScpLCAiMCIsCisgICAnZ2V0X3NtYWxsZXN0X3ZlcnNpb24gd2l0aCBudWxsIHZlcnNpb24nKTsKKworJHN5bSA9ICRzeW1fZmlsZS0+bG9va3VwX3N5bWJvbCgnc3ltYm9sX2luX2xpYmRpdmVydEBCYXNlJywgWydsaWJkaXZlcnQuc28uMSddKTsKK2lzX2RlZXBseSgkc3ltLCBEcGtnOjpTaGxpYnM6OlN5bWJvbC0+bmV3ICggJ3N5bWJvbCcgPT4gJ3N5bWJvbF9pbl9saWJkaXZlcnRAQmFzZScsCisJCSAgJ21pbnZlcicgPT4gJzEuMH5iZXRhMScsICdkZXBfaWQnID0+IDAsICdkZXByZWNhdGVkJyA9PiAwICksCisJICAgICcjaW5jbHVkZSBjYW4gY2hhbmdlIGN1cnJlbnQgb2JqZWN0Jyk7CisKKyRzeW1fZmlsZSA9IERwa2c6OlNobGliczo6U3ltYm9sRmlsZS0+bmV3KGZpbGUgPT4gIiRkYXRhZGlyL3N5bWJvbHMuaW5jbHVkZS0yIik7CisKKyRzeW0gPSAkc3ltX2ZpbGUtPmxvb2t1cF9zeW1ib2woJ3N5bWJvbDFfZmFrZTJAQmFzZScsIFsnbGliZmFrZS5zby4xJ10pOworaXNfZGVlcGx5KCRzeW0sIERwa2c6OlNobGliczo6U3ltYm9sLT5uZXcgKCAnc3ltYm9sJyA9PiAnc3ltYm9sMV9mYWtlMkBCYXNlJywKKwkJICAnbWludmVyJyA9PiAnMS4wJywgJ2RlcF9pZCcgPT4gMSwgJ2RlcHJlY2F0ZWQnID0+IDAgKSwKKwkgICAgJ292ZXJyaWRlcyBvcmRlciB3aXRoIGNpcmN1bGFyICNpbmNsdWRlJyk7CisKK2lzKCRzeW1fZmlsZS0+Z2V0X3NtYWxsZXN0X3ZlcnNpb24oJ2xpYmZha2Uuc28uMScpLCAiMS4wIiwKKyAgICdnZXRfc21hbGxlc3RfdmVyc2lvbicpOworCisjIENoZWNrIGR1bXAgb3V0cHV0CitteSAkaW8gPSBJTzo6U3RyaW5nLT5uZXcoKTsKKyRzeW1fZmlsZS0+b3V0cHV0KCRpbywgcGFja2FnZSA9PiAibGliZmFrZTEiKTsKK2lzKCR7JGlvLT5zdHJpbmdfcmVmKCl9LAorJ2xpYmZha2Uuc28uMSBsaWJmYWtlMSAjTUlOVkVSIworfCBsaWJ2aXJ0dWFsZmFrZQorKiBCdWlsZC1EZXBlbmRzLVBhY2thZ2U6IGxpYmZha2UtZGV2Cisgc3ltYm9sMV9mYWtlMkBCYXNlIDEuMCAxCisgc3ltYm9sMl9mYWtlMkBCYXNlIDEuMAorIHN5bWJvbDNfZmFrZTJAQmFzZSAxLjEKKycsICJEdW1wIG9mICRkYXRhZGlyL3N5bWJvbHMuaW5jbHVkZS0yIik7CisKKworIyBDaGVjayBwYXJzaW5nIG9mIG9iamR1bXAgb3V0cHV0IG9uIGlhNjQgKGxvY2FsIHN5bWJvbHMKKyMgd2l0aG91dCB2ZXJzaW9ucyBhbmQgd2l0aCB2aXNpYmlsaXR5IGF0dHJpYnV0ZSkKKyRvYmogPSBEcGtnOjpTaGxpYnM6Ok9iamR1bXA6Ok9iamVjdC0+bmV3OworCitvcGVuICRvYmpkdW1wLCAnPCcsICIkZGF0YWRpci9vYmpkdW1wLmdsaWItaWE2NCIKKyAgb3IgZGllICIkZGF0YWRpci9vYmpkdW1wLmdsaWItaWE2NDogJCEiOworJG9iai0+cGFyc2Vfb2JqZHVtcF9vdXRwdXQoJG9iamR1bXApOworY2xvc2UgJG9iamR1bXA7CisKKyRzeW0gPSAkb2JqLT5nZXRfc3ltYm9sKCdJQV9fZ19mcmVlJyk7Citpc19kZWVwbHkoICRzeW0sIHsgbmFtZSA9PiAnSUFfX2dfZnJlZScsIHZlcnNpb24gPT4gJycsCisJCSAgIHNvbmFtZSA9PiAnbGliZ2xpYi0yLjAuc28uMCcsIG9iamlkID0+ICdsaWJnbGliLTIuMC5zby4wJywKKwkJICAgc2VjdGlvbiA9PiAnLnRleHQnLCBkeW5hbWljID0+IDEsCisJCSAgIGRlYnVnID0+ICcnLCB0eXBlID0+ICdGJywgd2VhayA9PiAnJywKKwkJICAgbG9jYWwgPT4gMSwgZ2xvYmFsID0+ICcnLCB2aXNpYmlsaXR5ID0+ICdoaWRkZW4nLAorCQkgICBoaWRkZW4gPT4gJycsIGRlZmluZWQgPT4gMSB9LAorCQkgICAnc3ltYm9sIHdpdGggdmlzaWJpbGl0eSB3aXRob3V0IHZlcnNpb24nICk7CisKKyMjIyMjIyMgVGVzdCBzeW1ib2wgdGFnZ2luZyBzdXBwb3J0ICAjIyMjIyMKKworIyBQYXJzaW5nL2R1bXBpbmcKKyMgVGVtcGxhdGUgbW9kZQorJHN5bV9maWxlID0gRHBrZzo6U2hsaWJzOjpTeW1ib2xGaWxlLT5uZXcoZmlsZSA9PiAiJGRhdGFkaXIvYmFzaWN0YWdzLnN5bWJvbHMiLCBhcmNoID0+ICdhbWQ2NCcpOworc2F2ZV9sb2FkX3Rlc3QoJHN5bV9maWxlLCAndGVtcGxhdGUgc2F2ZSAtPiBsb2FkJywgdGVtcGxhdGVfbW9kZSA9PiAxKTsKKworIyBEdW1waW5nIGluIG5vbi10ZW1wbGF0ZSBtb2RlIChhbWQ2NCkgKHRlc3QgZm9yIGFyY2ggdGFncykKKyRpbyA9IElPOjpTdHJpbmctPm5ldygpOworJHN5bV9maWxlLT5vdXRwdXQoJGlvKTsKK2lzKCR7JGlvLT5zdHJpbmdfcmVmKCl9LAorJ2xpYmJhc2ljdGFncy5zby4xIGxpYmJhc2ljdGFnczEgI01JTlZFUiMKK3wgbGliYmFzaWN0YWdzMSAoPj0gMS4xKQorIHN5bWJvbDExX29wdGlvbmFsQEJhc2UgMS4xIDEKKyBzeW1ib2wyMV9hbWQ2NEBCYXNlIDIuMQorIHN5bWJvbDMxX3JhbmRvbXRhZ0BCYXNlIDMuMQorIHN5bWJvbDUxX3VudGFnZ2VkQEJhc2UgNS4xCisnLCAidGVtcGxhdGUgdnMuIG5vbi10ZW1wbGF0ZSBvbiBhbWQ2NCIgKTsKKworIyBEdW1waW5nIGluIG5vbi10ZW1wbGF0ZSBtb2RlIChpMzg2KSAodGVzdCBmb3IgYXJjaCB0YWdzKQorJGlvID0gSU86OlN0cmluZy0+bmV3KCk7Ciskc3ltX2ZpbGUgPSBEcGtnOjpTaGxpYnM6OlN5bWJvbEZpbGUtPm5ldyhmaWxlID0+ICIkZGF0YWRpci9iYXNpY3RhZ3Muc3ltYm9scyIsIGFyY2ggPT4gJ2kzODYnKTsKKyRzeW1fZmlsZV9kdXAgPSBEcGtnOjpTaGxpYnM6OlN5bWJvbEZpbGUtPm5ldyhmaWxlID0+ICIkZGF0YWRpci9iYXNpY3RhZ3Muc3ltYm9scyIsIGFyY2ggPT4gJ2kzODYnKTsKKyRzeW1fZmlsZS0+b3V0cHV0KCRpbyk7CitpcygkeyRpby0+c3RyaW5nX3JlZigpfSwKKydsaWJiYXNpY3RhZ3Muc28uMSBsaWJiYXNpY3RhZ3MxICNNSU5WRVIjCit8IGxpYmJhc2ljdGFnczEgKD49IDEuMSkKKyBzeW1ib2wxMV9vcHRpb25hbEBCYXNlIDEuMSAxCisgc3ltYm9sMjJfaTM4NkBCYXNlIDIuMgorIHN5bWJvbDMxX3JhbmRvbXRhZ0BCYXNlIDMuMQorIHN5bWJvbDQxX2kzODZfYW5kX29wdGlvbmFsQEJhc2UgNC4xCisgc3ltYm9sNTFfdW50YWdnZWRAQmFzZSA1LjEKKycsICJ0ZW1wbGF0ZSB2cy4gbm9uLXRlbXBsYXRlIG9uIGkzODYiICk7CisKK29rIChkZWZpbmVkICRzeW1fZmlsZS0+e29iamVjdHN9eydsaWJiYXNpY3RhZ3Muc28uMSd9e3N5bXN9eydzeW1ib2wyMV9hbWQ2NEBCYXNlJ30sCisgICAgInN5bXMga2V5cyBhcmUgc3ltYm9sIG5hbWVzIHdpdGhvdXQgcXVvdGVzIik7CisKKyMgUHJlbG9hZCBvYmpkdW1wcworbXkgJHRhZ3Nfb2JqX2kzODYgPSBEcGtnOjpTaGxpYnM6Ok9iamR1bXA6Ok9iamVjdC0+bmV3KCk7CitvcGVuICRvYmpkdW1wLCAnPCcsICIkdG1wZGlyL29iamR1bXAuYmFzaWN0YWdzLWkzODYiCisgICAgb3IgZGllICIkdG1wZGlyL29iamR1bXAuYmFzaWN0YWdzLWkzODY6ICQhIjsKKyR0YWdzX29ial9pMzg2LT5wYXJzZV9vYmpkdW1wX291dHB1dCgkb2JqZHVtcCk7CitjbG9zZSAkb2JqZHVtcDsKKyRzeW1fZmlsZS0+bWVyZ2Vfc3ltYm9scygkdGFnc19vYmpfaTM4NiwgJzEwMC5NSVNTSU5HJyk7Citpc19kZWVwbHkoJHN5bV9maWxlLCAkc3ltX2ZpbGVfZHVwLCAiaXMgb2JqZHVtcC5iYXNpY3RhZ3MtaTM4NiBhbmQgYmFzaWN0YWdzLnN5bWJvbHMgaW4gc3luYyIpOworCitteSAkdGFnc19vYmpfYW1kNjQgPSBEcGtnOjpTaGxpYnM6Ok9iamR1bXA6Ok9iamVjdC0+bmV3KCk7CitvcGVuICRvYmpkdW1wLCAnPCcsICIkdG1wZGlyL29iamR1bXAuYmFzaWN0YWdzLWFtZDY0IgorICAgIG9yIGRpZSAiJHRtcGRpci9vYmpkdW1wLmJhc2ljdGFncy1hbWQ2NDogJCEiOworJHRhZ3Nfb2JqX2FtZDY0LT5wYXJzZV9vYmpkdW1wX291dHB1dCgkb2JqZHVtcCk7CitjbG9zZSAkb2JqZHVtcDsKKworIyBNZXJnZS9nZXRfe25ldyxsb3N0fSB0ZXN0cyBmb3Igb3B0aW9uYWwgdGFnOgorIyAgLSBkaXNhcHBlYXJlZAorbXkgJHN5bWJvbDExID0gJHRhZ3Nfb2JqX2kzODYtPmdldF9zeW1ib2woJ3N5bWJvbDExX29wdGlvbmFsQEJhc2UnKTsKK2RlbGV0ZSAkdGFnc19vYmpfaTM4Ni0+e2R5bnN5bXN9eydzeW1ib2wxMV9vcHRpb25hbEBCYXNlJ307Ciskc3ltX2ZpbGUtPm1lcmdlX3N5bWJvbHMoJHRhZ3Nfb2JqX2kzODYsICcxMDAuTUlTU0lORycpOworCiskc3ltID0gJHN5bV9maWxlLT5sb29rdXBfc3ltYm9sKCdzeW1ib2wxMV9vcHRpb25hbEBCYXNlJywgWydsaWJiYXNpY3RhZ3Muc28uMSddLCAxKTsKK2lzX2RlZXBseSgkc3ltLCBEcGtnOjpTaGxpYnM6OlN5bWJvbC0+bmV3KCAnc3ltYm9sJyA9PiAnc3ltYm9sMTFfb3B0aW9uYWxAQmFzZScsICdzeW1ib2xfdGVtcGwnID0+ICdzeW1ib2wxMV9vcHRpb25hbEBCYXNlJywKKwkJICAnbWludmVyJyA9PiAnMS4xJywgJ2RlcF9pZCcgPT4gMSwgJ2RlcHJlY2F0ZWQnID0+ICcxMDAuTUlTU0lORycsCisJCSAgJ3RhZ3MnID0+IHsgJ29wdGlvbmFsJyA9PiB1bmRlZiB9LCAndGFnb3JkZXInID0+IFsgJ29wdGlvbmFsJyBdICksCisJICAgICdkaXNhcHBlcmVkIG9wdGlvbmFsIHN5bWJvbCBnZXRzIGRlcHJlY2F0ZWQnKTsKKworJHN5bV9maWxlLT5tZXJnZV9zeW1ib2xzKCR0YWdzX29ial9pMzg2LCAnMTAxLk1JU1NJTkcnKTsKKyRzeW0gPSAkc3ltX2ZpbGUtPmxvb2t1cF9zeW1ib2woJ3N5bWJvbDExX29wdGlvbmFsQEJhc2UnLCBbJ2xpYmJhc2ljdGFncy5zby4xJ10sIDEpOworaXNfZGVlcGx5KCRzeW0sIERwa2c6OlNobGliczo6U3ltYm9sLT5uZXcoICdzeW1ib2wnID0+ICdzeW1ib2wxMV9vcHRpb25hbEBCYXNlJywgJ3N5bWJvbF90ZW1wbCcgPT4gJ3N5bWJvbDExX29wdGlvbmFsQEJhc2UnLAorCQkgICdtaW52ZXInID0+ICcxLjEnLCAnZGVwX2lkJyA9PiAxLCAnZGVwcmVjYXRlZCcgPT4gJzEwMS5NSVNTSU5HJywKKwkJICAndGFncycgPT4geyAnb3B0aW9uYWwnID0+IHVuZGVmIH0sICd0YWdvcmRlcicgPT4gWyAnb3B0aW9uYWwnIF0gKSwKKwkgICAgJ2RlcHJlY2F0ZWQgdGV4dCBvZiBNSVNTSU5HIG9wdGlvbmFsIHN5bWJvbCBnZXRzIHJlYnVtcGVkIGVhY2ggbWVyZ2UnKTsKKworaXMoIHNjYWxhcigkc3ltX2ZpbGUtPmdldF9sb3N0X3N5bWJvbHMoJHN5bV9maWxlX2R1cCkpLCAwLCAibWlzc2luZyBvcHRpb25hbCBzeW1ib2wgaXMgbm90IExPU1QiKTsKKworIyAtIHJlYXBwZWFyZWQgKHVuZGVwcmVjYXRlLCBtaW52ZXIgc2hvdWxkIGJlIDEuMSwgbm90IDEwMC5NSVNTRUQpCiskdGFnc19vYmpfaTM4Ni0+YWRkX2R5bmFtaWNfc3ltYm9sKCRzeW1ib2wxMSk7Ciskc3ltX2ZpbGUtPm1lcmdlX3N5bWJvbHMoJHRhZ3Nfb2JqX2kzODYsICcxMDAuTUlTU0lORycpOworJHN5bSA9ICRzeW1fZmlsZS0+bG9va3VwX3N5bWJvbCgnc3ltYm9sMTFfb3B0aW9uYWxAQmFzZScsIFsnbGliYmFzaWN0YWdzLnNvLjEnXSk7Citpc19kZWVwbHkoJHN5bSwgRHBrZzo6U2hsaWJzOjpTeW1ib2wtPm5ldyggJ3N5bWJvbCcgPT4gJ3N5bWJvbDExX29wdGlvbmFsQEJhc2UnLCAnc3ltYm9sX3RlbXBsJyA9PiAnc3ltYm9sMTFfb3B0aW9uYWxAQmFzZScsCisJCSAgJ21pbnZlcicgPT4gJzEuMScsICdkZXBfaWQnID0+IDEsICdkZXByZWNhdGVkJyA9PiAwLAorCQkgICd0YWdzJyA9PiB7ICdvcHRpb25hbCcgPT4gdW5kZWYgfSwgJ3RhZ29yZGVyJyA9PiBbICdvcHRpb25hbCcgXSApLAorCSAgICAncmVhcHBlcmVkIG9wdGlvbmFsIHN5bWJvbCBnZXRzIHVuZGVwcmVjYXRlZCArIG1pbnZlcicpOworaXMoIHNjYWxhcigkc3ltX2ZpbGUtPmdldF9sb3N0X3N5bWJvbHMoJHN5bV9maWxlX2R1cCkgKworICAgICAgICAgICAkc3ltX2ZpbGUtPmdldF9uZXdfc3ltYm9scygkc3ltX2ZpbGVfZHVwKSksIDAsICJyZWFwcGVhcmVkIG9wdGlvbmFsIHN5bWJvbDogbmVpdGhlciBORVcgbm9yIExPU1QiKTsKKworIyBNZXJnZS9nZXRfe25ldyxsb3N0fSB0ZXN0cyBmb3IgYXJjaCB0YWc6CisjIC0gYXJjaCBzcGVjaWZpYyBhcHBlYXJzIG9uIHdyb25nIGFyY2g6ICdhcmNoJyB0YWcgc2hvdWxkIGJlIHJlbW92ZWQKK215ICRzeW1ib2wyMSA9ICR0YWdzX29ial9hbWQ2NC0+Z2V0X3N5bWJvbCgnc3ltYm9sMjFfYW1kNjRAQmFzZScpOworJHRhZ3Nfb2JqX2kzODYtPmFkZF9keW5hbWljX3N5bWJvbCgkc3ltYm9sMjEpOworJHN5bV9maWxlLT5tZXJnZV9zeW1ib2xzKCR0YWdzX29ial9pMzg2LCAnMTAwLk1JU1NJTkcnKTsKKyRzeW0gPSAkc3ltX2ZpbGUtPmxvb2t1cF9zeW1ib2woJ3N5bWJvbDIxX2FtZDY0QEJhc2UnLCBbJ2xpYmJhc2ljdGFncy5zby4xJ10pOworaXNfZGVlcGx5KCRzeW0sIERwa2c6OlNobGliczo6U3ltYm9sLT5uZXcoICdzeW1ib2wnID0+ICdzeW1ib2wyMV9hbWQ2NEBCYXNlJywgJ3N5bWJvbF90ZW1wbCcgPT4gJ3N5bWJvbDIxX2FtZDY0QEJhc2UnLAorCQkgICdzeW1ib2xfcXVvdGVkJyA9PiAiJyIsICdtaW52ZXInID0+ICcyLjEnLCAnZGVwX2lkJyA9PiAwLCAnZGVwcmVjYXRlZCcgPT4gMCApLAorCSAgICAnc3ltYm9sIGFwcGVhcnMgb24gZm9yZWlnbiBhcmNoLCBhcmNoIHRhZyBzaG91bGQgYmUgcmVtb3ZlZCcpOworQHRtcCA9IG1hcCB7ICRfLT57c3ltYm9sfS0+Z2V0X3N5bWJvbG5hbWUoKSB9ICRzeW1fZmlsZS0+Z2V0X25ld19zeW1ib2xzKCRzeW1fZmlsZV9kdXApOworaXNfZGVlcGx5KCBcQHRtcCwgWyAnc3ltYm9sMjFfYW1kNjRAQmFzZScgXSwgInN5bWJvbCBmcm9tIGZvcmVpZ24gYXJjaCBpcyBORVciKTsKK2lzKCAkc3ltLT5nZXRfc3ltYm9sc3BlYygxKSwgJyBzeW1ib2wyMV9hbWQ2NEBCYXNlIDIuMScsICdubyB0YWdzID0+IG5vIHF1b3RlcyBpbiB0aGUgc3ltYm9sIG5hbWUnICk7CisKKyMgLSBhcmNoIHNwZWNpZmljIHN5bWJvbCBkaXNhcHBlYXJzCitkZWxldGUgJHRhZ3Nfb2JqX2kzODYtPntkeW5zeW1zfXsnc3ltYm9sMjJfaTM4NkBCYXNlJ307CitkZWxldGUgJHRhZ3Nfb2JqX2kzODYtPntkeW5zeW1zfXsnc3ltYm9sNDFfaTM4Nl9hbmRfb3B0aW9uYWxAQmFzZSd9OworJHN5bV9maWxlLT5tZXJnZV9zeW1ib2xzKCR0YWdzX29ial9pMzg2LCAnMTAwLk1JU1NJTkcnKTsKKworJHN5bSA9ICRzeW1fZmlsZS0+bG9va3VwX3N5bWJvbCgnc3ltYm9sMjJfaTM4NkBCYXNlJywgWydsaWJiYXNpY3RhZ3Muc28uMSddLCAxKTsKK2lzX2RlZXBseSgkc3ltLCBEcGtnOjpTaGxpYnM6OlN5bWJvbC0+bmV3KCAnc3ltYm9sJyA9PiAnc3ltYm9sMjJfaTM4NkBCYXNlJywgJ3N5bWJvbF90ZW1wbCcgPT4gJ3N5bWJvbDIyX2kzODZAQmFzZScsCisJCSAgJ21pbnZlcicgPT4gJzIuMicsICdkZXBfaWQnID0+IDAsICdkZXByZWNhdGVkJyA9PiAnMTAwLk1JU1NJTkcnLAorCQkgICd0YWdzJyA9PiB7ICdhcmNoJyA9PiAnIWFtZDY0ICFpYTY0ICFhbHBoYScgfSwgJ3RhZ29yZGVyJyA9PiBbICdhcmNoJyBdICksCisJICAgICdkaXNhcHBlYXJlZCBhcmNoIHNwZWNpZmljIHN5bWJvbCBnZXRzIGRlcHJlY2F0ZWQnKTsKKyRzeW0gPSAkc3ltX2ZpbGUtPmxvb2t1cF9zeW1ib2woJ3N5bWJvbDQxX2kzODZfYW5kX29wdGlvbmFsQEJhc2UnLCBbJ2xpYmJhc2ljdGFncy5zby4xJ10sIDEpOworaXNfZGVlcGx5KCRzeW0sIERwa2c6OlNobGliczo6U3ltYm9sLT5uZXcoICdzeW1ib2wnID0+ICdzeW1ib2w0MV9pMzg2X2FuZF9vcHRpb25hbEBCYXNlJywKKwkJICAnc3ltYm9sX3RlbXBsJyA9PiAnc3ltYm9sNDFfaTM4Nl9hbmRfb3B0aW9uYWxAQmFzZScsICdzeW1ib2xfcXVvdGVkJyA9PiAnIicsCisJCSAgJ21pbnZlcicgPT4gJzQuMScsICdkZXBfaWQnID0+IDAsICdkZXByZWNhdGVkJyA9PiAnMTAwLk1JU1NJTkcnLAorCQkgICd0YWdzJyA9PiB7ICdhcmNoJyA9PiAnaTM4NicsICdvcHRpb25hbCcgPT4gJ3JlYXNvbicgfSwgJ3RhZ29yZGVyJyA9PiBbICdhcmNoJywgJ29wdGlvbmFsJyBdICksCisJICAgICdkaXNhcHBlYXJlZCBvcHRpb25hbCBhcmNoIHNwZWNpZmljIHN5bWJvbCBnZXRzIGRlcHJlY2F0ZWQnKTsKK0B0bXAgPSBtYXAgeyAkXy0+e3N5bWJvbH0tPmdldF9zeW1ib2xuYW1lKCkgfSAkc3ltX2ZpbGUtPmdldF9sb3N0X3N5bWJvbHMoJHN5bV9maWxlX2R1cCk7Citpc19kZWVwbHkoIFxAdG1wLCBbICdzeW1ib2wyMl9pMzg2QEJhc2UnIF0sICJtaXNzaW5nIGFyY2ggc3BlY2lmaWMgaXMgTE9TVCwgYnV0IG9wdGlvbmFsIGFyY2ggc3BlY2lmaWMgaXNuJ3QiKTsKKworIyBUZXN0cyBmb3IgdGFnZ2VkICNpbmNsdWRlcworJHN5bV9maWxlID0gRHBrZzo6U2hsaWJzOjpTeW1ib2xGaWxlLT5uZXcoZmlsZSA9PiAiJGRhdGFkaXIvc3ltYm9scy5pbmNsdWRlLTMiLCBhcmNoID0+ICdpMzg2Jyk7Ciskc3ltID0gJHN5bV9maWxlLT5sb29rdXBfc3ltYm9sKCdzeW1ib2wyX2Zha2UxQEJhc2UnLCBbJ2xpYmJhc2ljdGFncy5zby4yJ10pOworaXNfZGVlcGx5KCRzeW0sIERwa2c6OlNobGliczo6U3ltYm9sLT5uZXcoICdzeW1ib2wnID0+ICdzeW1ib2wyX2Zha2UxQEJhc2UnLAorCQkgICdtaW52ZXInID0+ICcxLjAnLCAndGFncycgPT4geyAnb3B0aW9uYWwnID0+IHVuZGVmLCAncmFuZG9tIHRhZycgPT4gJ3JhbmRvbSB2YWx1ZScgfSwKKwkJICAndGFnb3JkZXInID0+IFsgJ29wdGlvbmFsJywgJ3JhbmRvbSB0YWcnIF0gKSwKKwkgICAgJ3N5bWJvbHMgZnJvbSAjaW5jbHVkZWQgZmlsZSBpbmhlcml0cyB0YWdzJyk7Ciskc3ltID0gJHN5bV9maWxlLT5sb29rdXBfc3ltYm9sKCdzeW1ib2w0MV9pMzg2X2FuZF9vcHRpb25hbEBCYXNlJywgWydsaWJiYXNpY3RhZ3Muc28uMSddKTsKK2lzX2RlZXBseSgkc3ltLCBEcGtnOjpTaGxpYnM6OlN5bWJvbC0+bmV3KCAnc3ltYm9sJyA9PiAnc3ltYm9sNDFfaTM4Nl9hbmRfb3B0aW9uYWxAQmFzZScsCisJCSAgJ3N5bWJvbF90ZW1wbCcgPT4gJ3N5bWJvbDQxX2kzODZfYW5kX29wdGlvbmFsQEJhc2UnLCBzeW1ib2xfcXVvdGVkID0+ICciJywKKwkJICAnbWludmVyJyA9PiAnNC4xJywgJ3RhZ3MnID0+IHsgJ29wdGlvbmFsJyA9PiAncmVhc29uJywgJ3QnID0+ICd2JywgJ2FyY2gnID0+ICdpMzg2JyB9LAorCQkgICd0YWdvcmRlcicgPT4gWyAnb3B0aW9uYWwnLCAndCcsICdhcmNoJyBdICksCisJICAgICdzeW1ib2xzIGluICNpbmNsdWRlZCBmaWxlIGNhbiBvdmVycmlkZSB0YWcgdmFsdWVzJyk7Ciskc3ltID0gJHN5bV9maWxlLT5sb29rdXBfc3ltYm9sKCdzeW1ib2w1MV91bnRhZ2dlZEBCYXNlJywgWydsaWJiYXNpY3RhZ3Muc28uMSddKTsKK2lzX2RlZXBseSgkc3ltLCBEcGtnOjpTaGxpYnM6OlN5bWJvbC0+bmV3KCAnc3ltYm9sJyA9PiAnc3ltYm9sNTFfdW50YWdnZWRAQmFzZScsCisJCSAgJ21pbnZlcicgPT4gJzUuMScsICd0YWdzJyA9PiB7ICdvcHRpb25hbCcgPT4gJ2Zyb20gcGFyZW50JywgJ3QnID0+ICd2JyB9LAorCQkgICd0YWdvcmRlcicgPT4gWyAnb3B0aW9uYWwnLCAndCcgXSApLAorCSAgICAnc3ltYm9scyBhcmUgcHJvcGVybHkgY2xvbmVkIHdoZW4gI2luY2x1ZGluZycpOworCisjIFRlc3QgU3ltYm9sOjpjbG9uZSgpCiskc3ltID0gRHBrZzo6U2hsaWJzOjpTeW1ib2wtPm5ldyhzeW1ib2wgPT4gJ2Zvb2JhcicsIHRlc3RmaWVsZCA9PiAxLCB0ZXN0c3RydWN0ID0+IHsgJ2ZvbycgPT4gMSB9KTsKKyR0bXAgPSAkc3ltLT5jbG9uZSgpOworJHRtcC0+e3Rlc3RzdHJ1Y3R9e2Zvb30gPSAzOworJHRtcC0+e3Rlc3RmaWVsZH0gPSAzOworaXMgKCAkc3ltLT57dGVzdHN0cnVjdH17Zm9vfSwgMSwgJ29yaWdpbmFsIGZpZWxkICJmb28iIG5vdCBjaGFuZ2VkJyApOworaXMgKCAkc3ltLT57dGVzdGZpZWxkfSwgMSwgJ29yaWdpbmFsIGZpZWxkICJ0ZXN0ZmllbGQiIG5vdCBjaGFuZ2VkJyApOworCisjIyMjIyMjIyMjIyMgVGVzdCBzeW1ib2wgcGF0dGVybnMgIyMjIyMjIyMjIyMKK3N1YiBsb2FkX3BhdHRlcm5zX29iaiB7CisgICAgJG9iaiA9IERwa2c6OlNobGliczo6T2JqZHVtcDo6T2JqZWN0LT5uZXcoKTsKKyAgICBvcGVuICRvYmpkdW1wLCAnPCcsICIkdG1wZGlyL29iamR1bXAucGF0dGVybnMiCisJb3IgZGllICIkdG1wZGlyL29iamR1bXAucGF0dGVybnM6ICQhIjsKKyAgICAkb2JqLT5wYXJzZV9vYmpkdW1wX291dHB1dCgkb2JqZHVtcCk7CisgICAgY2xvc2UgJG9iamR1bXA7CisgICAgcmV0dXJuICRvYmo7Cit9CisKK3N1YiBsb2FkX3BhdHRlcm5zX3N5bWJvbHMgeworICAgICRzeW1fZmlsZSA9IERwa2c6OlNobGliczo6U3ltYm9sRmlsZS0+bmV3KGZpbGUgPT4gIiRkYXRhZGlyL3BhdHRlcm5zLnN5bWJvbHMiKTsKKyAgICByZXR1cm4gJHN5bV9maWxlOworfQorCitsb2FkX3BhdHRlcm5zX29iaigpOworJHN5bV9maWxlX2R1cCA9IGxvYWRfcGF0dGVybnNfc3ltYm9scygpOworbG9hZF9wYXR0ZXJuc19zeW1ib2xzKCk7CisKK3NhdmVfbG9hZF90ZXN0KCRzeW1fZmlsZSwgJ3NhdmUgLT4gbG9hZCB0ZXN0IG9mIHBhdHRlcm5zIHRlbXBsYXRlJywgdGVtcGxhdGVfbW9kZSA9PiAxKTsKKworaXNudCggJHN5bV9maWxlLT5nZXRfcGF0dGVybnMoJ2xpYnBhdHRlcm5zLnNvLjEnKSAsIDAsCisgICAgInBhdHRlcm5zLnN5bWJvbHMgaGFzIHBhdHRlcm5zIiApOworCiskc3ltX2ZpbGUtPm1lcmdlX3N5bWJvbHMoJG9iaiwgJzEwMC5NSVNTSU5HJyk7CisKK0B0bXAgPSBtYXAgeyAkXy0+Z2V0X3N5bWJvbG5hbWUoKSB9ICRzeW1fZmlsZS0+Z2V0X2xvc3Rfc3ltYm9scygkc3ltX2ZpbGVfZHVwKTsKK2lzX2RlZXBseSggXEB0bXAsIFtdLCAibm8gTE9TVCBzeW1ib2xzIGlmIGFsbCBwYXR0ZXJucyBtYXRjaGVkLiIgKTsKK0B0bXAgPSBtYXAgeyAkXy0+Z2V0X3N5bWJvbG5hbWUoKSB9ICRzeW1fZmlsZS0+Z2V0X25ld19zeW1ib2xzKCRzeW1fZmlsZV9kdXApOworaXNfZGVlcGx5KCBcQHRtcCwgW10sICJubyBORVcgc3ltYm9scyBpZiBhbGwgcGF0dGVybnMgbWF0Y2hlZC4iICk7CisKKyMgUGF0dGVybiByZXNvbHV0aW9uIG9yZGVyOiBhbGlhc2VzIChjKyssIHN5bXZlciksIGdlbmVyaWMKKyRzeW0gPSAkc3ltX2ZpbGUtPmxvb2t1cF9zeW1ib2woJ1NZTVZFUl8xQFNZTVZFUl8xJywnbGlicGF0dGVybnMuc28uMScpOworaXMgKCAkc3ltLT57bWludmVyfSwgJzEnLCAic3BlY2lmaWMgU1lNVkVSXzEgc3ltYm9sIiApOworCiskc3ltID0gJHN5bV9maWxlLT5sb29rdXBfc3ltYm9sKCdfWk4zTlNCNlN5bXZlcjE0c3ltdmVyX21ldGhvZDFFdkBTWU1WRVJfMScsICdsaWJwYXR0ZXJucy5zby4xJyk7CitpcyAoICRzeW0tPnttaW52ZXJ9LCAnMS5tZXRob2QxJywgInNwZWNpZmljIHN5bWJvbCBwcmVmZXJyZWQgb3ZlciBwYXR0ZXJuIiApOworCiskc3ltID0gJHN5bV9maWxlLT5sb29rdXBfc3ltYm9sKCdfWk4zTlNCNlN5bXZlcjE0c3ltdmVyX21ldGhvZDJFdkBTWU1WRVJfMScsICdsaWJwYXR0ZXJucy5zby4xJyk7CitpcyAoICRzeW0tPnttaW52ZXJ9LCAnMS5tZXRob2QyJywgImMrKyBhbGlhcyBwYXR0ZXJuIHByZWZlcnJlZCBvdmVyIGdlbmVyaWMgcGF0dGVybiIgKTsKK2lzICggJHN5bS0+Z2V0X3BhdHRlcm4oKS0+Z2V0X3N5bWJvbG5hbWUoKSwgJ05TQjo6U3ltdmVyOjpzeW12ZXJfbWV0aG9kMigpQFNZTVZFUl8xJyApOworCiskc3ltID0gJHN5bV9maWxlLT5sb29rdXBfc3ltYm9sKCdfWk4zTlNCNlN5bXZlckQxRXZAU1lNVkVSXzEnLCAnbGlicGF0dGVybnMuc28uMScpOworaXMgKCAkc3ltLT57bWludmVyfSwgJzEuZ2VuZXJpYycsICdnZW5lcmljIChjKysgJiBzeW12ZXIpIHBhdHRlcm4gY292ZXJzIHRoZSByZXN0IChkZXN0cnVjdG9yKScgKTsKK29rICggJHN5bS0+Z2V0X3BhdHRlcm4oKS0+ZXF1YWxzKCRzeW1fZmlsZS0+Y3JlYXRlX3N5bWJvbCgnKGMrK3xzeW12ZXIpU1lNVkVSXzEgMS5nZW5lcmljJykpICk7CisKKyMgVGVzdCBvbGQgc3R5bGUgd2lsZGNhcmQgc3VwcG9ydAorbG9hZF9wYXR0ZXJuc19zeW1ib2xzKCk7Ciskc3ltID0gJHN5bV9maWxlLT5jcmVhdGVfc3ltYm9sKCcqQFNZTVZFUk9QVF8yIDInKTsKK29rICggJHN5bS0+aXNfb3B0aW9uYWwoKSwgIk9sZCBzdHlsZSB3aWxkY2FyZCBpcyBvcHRpb25hbCIpOworaXMgKCAkc3ltLT5nZXRfYWxpYXNfdHlwZSgpLCAic3ltdmVyIiwgIm9sZCBzdHlsZSB3aWxkY2FyZCBpcyBhIHN5bXZlciBwYXR0ZXJuIiApOworaXMgKCAkc3ltLT5nZXRfc3ltYm9sbmFtZSgpLCAnU1lNVkVST1BUXzInLCAid2lsZGNhcmQgcGF0dGVybiBnb3QgcmVuYW1lZCIgKTsKKworJHBhdCA9ICRzeW1fZmlsZS0+bG9va3VwX3BhdHRlcm4oJyhzeW12ZXJ8b3B0aW9uYWwpU1lNVkVST1BUXzInLCAnbGlicGF0dGVybnMuc28uMScpOworJHN5bS0+e3N5bWJvbF90ZW1wbH0gPSAkcGF0LT57c3ltYm9sX3RlbXBsfTsKK2lzX2RlZXBseSggJHBhdCwgJHN5bSwgIm9sZCBzdHlsZSB3aWxkY2FyZCBpcyB0aGUgc2FtZSBhcyAoc3ltdmVyfG9wdGlvbmFsKSIgKTsKKworIyBHZXQgcmlkIG9mIGFsbCBTeW12ZXJPcHRpb25hbCBzeW1ib2xzCitmb3JlYWNoIG15ICR0bXAgKGtleXMgJXskb2JqLT57ZHluc3ltc319KSB7CisgICAgZGVsZXRlICRvYmotPntkeW5zeW1zfXskdG1wfSBpZiAoJHRtcCA9fiAvU3ltdmVyT3B0aW9uYWwvKTsKK30KKyRzeW1fZmlsZS0+bWVyZ2Vfc3ltYm9scygkb2JqLCAnMTAwLk1JU1NJTkcnKTsKK2lzX2RlZXBseSAoIFsgbWFwIHsgJF8tPmdldF9zeW1ib2xuYW1lKCkgfSAkcGF0LT5nZXRfcGF0dGVybl9tYXRjaGVzKCkgXSwKKyAgICBbXSwgIm9sZCBzdHlsZSB3aWxkY2FyZCBtYXRjaGVzIG5vdGhpbmcuIik7CitpcyAoICRwYXQtPntkZXByZWNhdGVkfSwgJzEwMC5NSVNTSU5HJywgIm9sZCBzdHlsZSB3aWxkY2FyZCBnZXRzIGRlcHJlY2F0ZWQuIiApOworQHRtcCA9IG1hcCB7ICRfLT57c3ltYm9sfS0+Z2V0X3N5bWJvbG5hbWUoKSB9ICRzeW1fZmlsZS0+Z2V0X2xvc3Rfc3ltYm9scygkc3ltX2ZpbGVfZHVwKTsKK2lzX2RlZXBseSggXEB0bXAsIFtdLCAiYnV0IG9sZCBzdHlsZSB3aWxkY2FyZCBpcyBub3QgTE9TVC4iICk7CisKKyMgJ0ludGVybmFsJyBwYXR0ZXJuIGNvdmVycyBhbGwgaW50ZXJuYWwgc3ltYm9scworbG9hZF9wYXR0ZXJuc19vYmooKTsKK0B0bXAgPSBncmVwIHsgJF8tPmdldF9zeW1ib2xuYW1lKCkgPX4gL0ludGVybmFsLyB9ICRzeW1fZmlsZS0+Z2V0X3N5bWJvbHMoJ2xpYnBhdHRlcm5zLnNvLjEnKTsKKyRzeW0gPSAkc3ltX2ZpbGUtPmNyZWF0ZV9zeW1ib2woJyhyZWdleHxjKyspXl9aKFRbSVNWXSk/TjNOU0E2Q2xhc3NBOEludGVybmFsLipAQmFzZSQgMS5pbnRlcm5hbCcpLAorJHBhdCA9ICRzeW1fZmlsZS0+bG9va3VwX3BhdHRlcm4oJHN5bSwgJ2xpYnBhdHRlcm5zLnNvLjEnKTsKK2lzX2RlZXBseSAoWyBzb3J0ICRwYXQtPmdldF9wYXR0ZXJuX21hdGNoZXMoKSBdLCBbIHNvcnQgQHRtcCBdLAorICAgICJQYXR0ZXJuIGNvdmVycyBhbGwgaW50ZXJuYWwgc3ltYm9scyIpOworaXMgKCAkdG1wWzBdLT57bWludmVyfSwgJzEuaW50ZXJuYWwnICk7CisKKyMgTG9va3VwIHByaXZhdGUgcGF0dGVybgorbXkgQHByaXZhdGVfc3ltbmFtZXMgPSBzb3J0IHF3KAorICAgIF9aTjNOU0E2Q2xhc3NBN1ByaXZhdGUxMXByaXZtZXRob2QxRWlAQmFzZQorICAgIF9aTjNOU0E2Q2xhc3NBN1ByaXZhdGUxMXByaXZtZXRob2QyRWlAQmFzZQorICAgIF9aTjNOU0E2Q2xhc3NBN1ByaXZhdGVDMUV2QEJhc2UKKyAgICBfWk4zTlNBNkNsYXNzQTdQcml2YXRlQzJFdkBCYXNlCisgICAgX1pOM05TQTZDbGFzc0E3UHJpdmF0ZUQwRXZAQmFzZQorICAgIF9aTjNOU0E2Q2xhc3NBN1ByaXZhdGVEMUV2QEJhc2UKKyAgICBfWk4zTlNBNkNsYXNzQTdQcml2YXRlRDJFdkBCYXNlCisgICAgX1pUSU4zTlNBNkNsYXNzQTdQcml2YXRlRUBCYXNlCisgICAgX1pUU04zTlNBNkNsYXNzQTdQcml2YXRlRUBCYXNlCisgICAgX1pUVk4zTlNBNkNsYXNzQTdQcml2YXRlRUBCYXNlCispOworJHN5bSA9ICRzeW1fZmlsZS0+Y3JlYXRlX3N5bWJvbCgnKGMrK3xyZWdleHxvcHRpb25hbClOU0E6OkNsYXNzQTo6UHJpdmF0ZSg6Oi4qKT9AQmFzZSAxJyk7CiskcGF0ID0gJHN5bV9maWxlLT5sb29rdXBfcGF0dGVybigkc3ltLCAnbGlicGF0dGVybnMuc28uMScpOworaXNudCggJHBhdCwgdW5kZWYsICdwYXR0ZXJuIGZvciBwcml2YXRlIGNsYXNzIGhhcyBiZWVuIGZvdW5kJyApOworaXNfZGVlcGx5KCBbIHNvcnQgbWFwIHsgJF8tPmdldF9zeW1ib2xuYW1lKCkgfSAkcGF0LT5nZXRfcGF0dGVybl9tYXRjaGVzKCkgXSwKKyAgICBcQHByaXZhdGVfc3ltbmFtZXMsICJwcml2YXRlIHBhdHRlcm4gbWF0Y2hlZCBleHBlY3RlZCBzeW1ib2xzIiApOworb2soICgkcGF0LT5nZXRfcGF0dGVybl9tYXRjaGVzKCkpWzBdLT5pc19vcHRpb25hbCgpLAorICAgICJwcml2YXRlIHN5bWJvbCBpcyBvcHRpb25hbCBsaWtlIGl0cyBwYXR0ZXJuIiApOworb2soICRzeW1fZmlsZS0+bG9va3VwX3N5bWJvbCgoJHBhdC0+Z2V0X3BhdHRlcm5fbWF0Y2hlcygpKVswXSwgJ2xpYnBhdHRlcm5zLnNvLjEnKSwKKyAgICAibG9va3VwX3N5bWJvbCgpIGZpbmRzIHN5bWJvbHMgbWF0Y2hlZCBieSBwYXR0ZXJuIChhZnRlciBtZXJnZSkiKSwKKworIyBHZXQgcmlkIG9mIGEgcHJpdmF0ZSBzeW1ib2wsIGl0IHNob3VsZCBub3QgYmUgbG9zdAorZGVsZXRlICRvYmotPntkeW5zeW1zfXskcHJpdmF0ZV9zeW1uYW1lc1swXX07Citsb2FkX3BhdHRlcm5zX3N5bWJvbHMoKTsKKyRzeW1fZmlsZS0+bWVyZ2Vfc3ltYm9scygkb2JqLCAnMTAwLk1JU1NJTkcnKTsKKworJHBhdCA9ICRzeW1fZmlsZS0+bG9va3VwX3BhdHRlcm4oJHN5bSwgJ2xpYnBhdHRlcm5zLnNvLjEnKTsKK0B0bXAgPSBtYXAgeyAkXy0+e3N5bWJvbH0tPmdldF9zeW1ib2xuYW1lKCkgfSAkc3ltX2ZpbGUtPmdldF9sb3N0X3N5bWJvbHMoJHN5bV9maWxlX2R1cCk7Citpc19kZWVwbHkoIFxAdG1wLCBbXSwgIm5vIExPU1Qgc3ltYm9scyB3aGVuIGdvdCByaWQgb2YgcGF0dGVybmVkIG9wdGlvbmFsIHN5bWJvbC4iICk7CitvayggISAkcGF0LT57ZGVwcmVjYXRlZH0gLCAidGhlcmUgYXJlIHN0aWxsIG1hdGNoZXMsIHBhdHRlcm4gaXMgbm90IGRlcHJlY2F0ZWQuIiApOworCisjIEdldCByaWQgb2YgYWxsIHByaXZhdGUgc3ltYm9scywgdGhlIHBhdHRlcm4gc2hvdWxkIGJlIGRlcHJlY2F0ZWQuCitmb3JlYWNoIG15ICR0bXAgKEBwcml2YXRlX3N5bW5hbWVzKSB7CisgICAgZGVsZXRlICRvYmotPntkeW5zeW1zfXskdG1wfTsKK30KK2xvYWRfcGF0dGVybnNfc3ltYm9scygpOworJHN5bV9maWxlLT5tZXJnZV9zeW1ib2xzKCRvYmosICcxMDAuTUlTU0lORycpOworCiskcGF0ID0gJHN5bV9maWxlLT5sb29rdXBfcGF0dGVybigkc3ltLCAnbGlicGF0dGVybnMuc28uMScsIDEpOworQHRtcCA9ICRzeW1fZmlsZS0+Z2V0X2xvc3Rfc3ltYm9scygkc3ltX2ZpbGVfZHVwKTsKK2lzX2RlZXBseSggXEB0bXAsIFsgXSwKKyAgICAiQWxsIHByaXZhdGUgc3ltYm9scyBnb25lLCBidXQgcGF0dGVybiBpcyBub3QgTE9TVCBiZWNhdXNlIGl0IGlzIG9wdGlvbmFsLiIgKTsKK2lzKCAkcGF0LT57ZGVwcmVjYXRlZH0sICcxMDAuTUlTU0lORycsCisgICAgIkFsbCBwcml2YXRlIHN5bWJvbHMgZ29uZSAtIHBhdHRlcm4gZGVwcmVjYXRlZC4iICk7CisKKyMgSW50ZXJuYWwgc3ltYm9scy4gQWxsIGNvdmVyZWQgYnkgdGhlIHBhdHRlcm4/CitAdG1wID0gZ3JlcCB7ICRfLT5nZXRfc3ltYm9sbmFtZSgpID1+IC9JbnRlcm5hbC8gfSB2YWx1ZXMgJXskc3ltX2ZpbGUtPntvYmplY3RzfXsnbGlicGF0dGVybnMuc28uMSd9e3N5bXN9fTsKKyRzeW0gPSAkc3ltX2ZpbGUtPmNyZWF0ZV9zeW1ib2woJyhyZWdleHxjKyspXl9aKFRbSVNWXSk/TjNOU0E2Q2xhc3NBOEludGVybmFsLipAQmFzZSQgMS5pbnRlcm5hbCcpLAorJHBhdCA9ICRzeW1fZmlsZS0+bG9va3VwX3BhdHRlcm4oJHN5bSwgJ2xpYnBhdHRlcm5zLnNvLjEnKTsKK2lzX2RlZXBseSAoWyBzb3J0ICRwYXQtPmdldF9wYXR0ZXJuX21hdGNoZXMoKSBdLCBbIHNvcnQgQHRtcCBdLAorICAgICJQYXR0ZXJuIGNvdmVycyBhbGwgaW50ZXJuYWwgc3ltYm9scyIpOworaXMgKCAkdG1wWzBdLT57bWludmVyfSwgJzEuaW50ZXJuYWwnICk7CisKKyMgRGVsZXRlIG1hdGNoZXMgb2YgdGhlIG5vbi1vcHRpb25hbCBwYXR0ZXJuCiskc3ltID0gJHN5bV9maWxlLT5jcmVhdGVfc3ltYm9sKCcoYysrKSJub24tdmlydHVhbCB0aHVuayB0byBOU0I6OkNsYXNzRDo6Z2VuZXJhdGVfdnQoY2hhciBjb25zdCopIGNvbnN0QEJhc2UiIDEnKTsKKyRwYXQgPSAkc3ltX2ZpbGUtPmxvb2t1cF9wYXR0ZXJuKCRzeW0sICdsaWJwYXR0ZXJucy5zby4xJyk7Citpc250KCAkcGF0LCB1bmRlZiwgJ2xvb2t1cF9wYXR0ZXJuKCkgZmluZHMgYWxpYXMtYmFzZWQgcGF0dGVybicgKTsKKworaXMoIHNjYWxhcigkcGF0LT5nZXRfcGF0dGVybl9tYXRjaGVzKCkpLCAyLCAidHdvIG1hdGNoZXMgZm9yIHRoZSBnZW5lcmF0ZV92dCBwYXR0ZXJuIiApOworZm9yZWFjaCBteSAkdG1wICgkcGF0LT5nZXRfcGF0dGVybl9tYXRjaGVzKCkpIHsKKyAgICBkZWxldGUgJG9iai0+e2R5bnN5bXN9eyR0bXAtPmdldF9zeW1ib2xuYW1lKCl9OworfQorbG9hZF9wYXR0ZXJuc19zeW1ib2xzKCk7Ciskc3ltX2ZpbGUtPm1lcmdlX3N5bWJvbHMoJG9iaiwgJzEwMC5NSVNTSU5HJyk7CisKKyRwYXQgPSAkc3ltX2ZpbGUtPmxvb2t1cF9wYXR0ZXJuKCRzeW0sICdsaWJwYXR0ZXJucy5zby4xJywgMSk7CitAdG1wID0gbWFwIHsgc2NhbGFyICRzeW1fZmlsZS0+bG9va3VwX3BhdHRlcm4oJF8tPntzeW1ib2x9LCAnbGlicGF0dGVybnMuc28uMScsIDEpIH0KKyAgICAgICAgICAgICAkc3ltX2ZpbGUtPmdldF9sb3N0X3N5bWJvbHMoJHN5bV9maWxlX2R1cCk7Citpc19kZWVwbHkoIFxAdG1wLCBbICRwYXQgXSwgIk5vIG1hdGNoZXMgLSBnZW5lcmF0ZV92dCgpIHBhdHRlcm4gaXMgTE9TVC4iICk7CitpcyggJHBhdC0+e2RlcHJlY2F0ZWR9LCAnMTAwLk1JU1NJTkcnLAorICAgICJObyBtYXRjaGVzIC0gZ2VuZXJhdGVfdnQoKSBwYXR0ZXJuIGlzIGRlcHJlY2F0ZWQuIiApOworCisjIFBhdHRlcm4gdW5kZXByZWNhdGlvbiB3aGVuIG1hdGNoZXMgYXJlIGRpc2NvdmVyZWQKK2xvYWRfcGF0dGVybnNfb2JqKCk7Citsb2FkX3BhdHRlcm5zX3N5bWJvbHMoKTsKKworJHBhdCA9ICRzeW1fZmlsZV9kdXAtPmxvb2t1cF9wYXR0ZXJuKCRzeW0sICdsaWJwYXR0ZXJucy5zby4xJyk7CiskcGF0LT57ZGVwcmVjYXRlZH0gPSAnMC4xLTEnOworJHBhdCA9ICRzeW1fZmlsZS0+bG9va3VwX3BhdHRlcm4oJHN5bSwgJ2xpYnBhdHRlcm5zLnNvLjEnKTsKKyRwYXQtPntkZXByZWNhdGVkfSA9ICcwLjEtMSc7CisKKyRzeW1fZmlsZS0+bWVyZ2Vfc3ltYm9scygkb2JqLCAnMTAwLkZPVU5EJyk7CitvayggISAkcGF0LT57ZGVwcmVjYXRlZH0sCisgICAgIlByZXZpb3VzbHkgZGVwcmVjYXRlZCBwYXR0ZXJuIHdpdGggbWF0Y2hlcyBnb3QgdW5kZXByZWNhdGVkIiApOworaXMoICRwYXQtPnttaW52ZXJ9LCAnMTAwLkZPVU5EJywKKyAgICAiUHJldmlvdXNseSBkZXByZWNhdGVkIHBhdHRlcm4gd2l0aCBtYXRjaGVzIGdvdCBtaW52ZXIgYnVtcGVkIiApOworQHRtcCA9IG1hcCB7ICRfLT57c3ltYm9sfS0+Z2V0X3N5bWJvbHNwZWMoMSkgfSAkc3ltX2ZpbGUtPmdldF9uZXdfc3ltYm9scygkc3ltX2ZpbGVfZHVwKTsKK2lzX2RlZXBseSggXEB0bXAsIFsgJHBhdC0+Z2V0X3N5bWJvbHNwZWMoMSkgXSwKKyAgICAiUHJldmlvdXNseSBkZXByZWNhdGVkIHBhdHRlcm4gd2l0aCBtYXRjaGVzIGlzIE5FVy4gTWF0Y2hlcyB0aGVtc2VsdmVzIGFyZSBub3QgTkVXLiIgKTsKK2ZvcmVhY2ggbXkgJHN5bSAoJHBhdC0+Z2V0X3BhdHRlcm5fbWF0Y2hlcygpKSB7CisgICAgb2soICEgJHN5bS0+e2RlcHJlY2F0ZWR9LCAkc3ltLT5nZXRfc3ltYm9sbmFtZSgpLiI6IG5vdCBkZXByZWNhdGVkIiApOworICAgIGlzKCAkc3ltLT57bWludmVyfSwgJzEwMC5GT1VORCcsICRzeW0tPmdldF9zeW1ib2xuYW1lKCkuIjogdmVyc2lvbiBidW1wZWQiICk7Cit9CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvdC8yMDBfRHBrZ19TaGxpYnMvYmFzaWN0YWdzLmMgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvdC8yMDBfRHBrZ19TaGxpYnMvYmFzaWN0YWdzLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZjBhODM0OQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90LzIwMF9EcGtnX1NobGlicy9iYXNpY3RhZ3MuYwpAQCAtMCwwICsxLDMzIEBACisvKgorICogJCBnY2MgLXNoYXJlZCAtZlBJQyAtV2wsLXNvbmFtZSAtV2wsbGliYmFzaWN0YWdzLnNvLjEgXAorICogICAgIC1vIGxpYmJhc2ljdGFncy5zby4xIC1EQU1ENjQgYmFzaWN0YWdzLmMKKyAqICQgb2JqZHVtcCAtd2ZwVFIgbGliYmFzaWN0YWdzLnNvLjEgPiBvYmpkdW1wLmJhc2ljdGFncy1hbWQ2NAorICogJCBnY2MgLXNoYXJlZCAtZlBJQyAtV2wsLXNvbmFtZSAtV2wsbGliYmFzaWN0YWdzLnNvLjEgXAorICogICAgIC1vIGxpYmJhc2ljdGFncy5zby4xIGJhc2ljdGFncy5jCisgKiAkIG9iamR1bXAgLXdmcFRSIGxpYmJhc2ljdGFncy5zby4xID4gb2JqZHVtcC5iYXNpY3RhZ3MtaTM4NgorICovCisKK3ZvaWQgc3ltYm9sMTFfb3B0aW9uYWwodm9pZCk7Cit2b2lkIHN5bWJvbDExX29wdGlvbmFsKHZvaWQpIHt9CisKKyNpZmRlZiBBTUQ2NAordm9pZCBzeW1ib2wyMV9hbWQ2NCh2b2lkKTsKK3ZvaWQgc3ltYm9sMjFfYW1kNjQodm9pZCkge30KKyNlbmRpZgorCisjaWZuZGVmIEFNRDY0Cit2b2lkIHN5bWJvbDIyX2kzODYodm9pZCk7Cit2b2lkIHN5bWJvbDIyX2kzODYodm9pZCkge30KKyNlbmRpZgorCit2b2lkIHN5bWJvbDMxX3JhbmRvbXRhZyh2b2lkKTsKK3ZvaWQgc3ltYm9sMzFfcmFuZG9tdGFnKHZvaWQpIHt9CisKKy8qIChhcmNoPWkzODZ8b3B0aW9uYWwpc3ltYm9sNDFfaTM4Nl9hbmRfb3B0aW9uYWxAQmFzZSAqLworI2lmbmRlZiBBTUQ2NAordm9pZCBzeW1ib2w0MV9pMzg2X2FuZF9vcHRpb25hbCh2b2lkKTsKK3ZvaWQgc3ltYm9sNDFfaTM4Nl9hbmRfb3B0aW9uYWwodm9pZCkge30KKyNlbmRpZgorCit2b2lkIHN5bWJvbDUxX3VudGFnZ2VkKHZvaWQpOwordm9pZCBzeW1ib2w1MV91bnRhZ2dlZCh2b2lkKSB7fQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3QvMjAwX0Rwa2dfU2hsaWJzL2Jhc2ljdGFncy5zeW1ib2xzIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3QvMjAwX0Rwa2dfU2hsaWJzL2Jhc2ljdGFncy5zeW1ib2xzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjZkMjM0MTMKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvdC8yMDBfRHBrZ19TaGxpYnMvYmFzaWN0YWdzLnN5bWJvbHMKQEAgLTAsMCArMSw4IEBACitsaWJiYXNpY3RhZ3Muc28uMSBsaWJiYXNpY3RhZ3MxICNNSU5WRVIjCit8IGxpYmJhc2ljdGFnczEgKD49IDEuMSkKKyAob3B0aW9uYWwpc3ltYm9sMTFfb3B0aW9uYWxAQmFzZSAxLjEgMQorIChhcmNoPWFtZDY0IGlhNjQgYWxwaGEpJ3N5bWJvbDIxX2FtZDY0QEJhc2UnIDIuMQorIChhcmNoPSFhbWQ2NCAhaWE2NCAhYWxwaGEpc3ltYm9sMjJfaTM4NkBCYXNlIDIuMgorIChyYW5kb210YWduYW1lPXJhbmRvbXRhZ3ZhbHVlKXN5bWJvbDMxX3JhbmRvbXRhZ0BCYXNlIDMuMQorIChhcmNoPWkzODZ8b3B0aW9uYWw9cmVhc29uKSJzeW1ib2w0MV9pMzg2X2FuZF9vcHRpb25hbEBCYXNlIiA0LjEKKyBzeW1ib2w1MV91bnRhZ2dlZEBCYXNlIDUuMQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3QvMjAwX0Rwa2dfU2hsaWJzL2xkLnNvLmNvbmYgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvdC8yMDBfRHBrZ19TaGxpYnMvbGQuc28uY29uZgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jYmJmN2JkCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3QvMjAwX0Rwa2dfU2hsaWJzL2xkLnNvLmNvbmYKQEAgLTAsMCArMSw5IEBACisjIENvbW1lbnQgYW5kIGVtcHR5IGxpbmUKKworIyBQYXRocworL25vbmV4aXN0YW50MzIKKy9ub25leGlzdGFudC9saWI2NAorCitpbmNsdWRlIC9ub25leGlzdGFudC8qLmNvbmYKK2luY2x1ZGUgdC8yMDBfRHBrZ19TaGxpYnMvbGQuc28uY29uZi5kLyouY29uZgorCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvdC8yMDBfRHBrZ19TaGxpYnMvbGQuc28uY29uZi5kL2luZl9yZWN1cnNlLmNvbmYgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvdC8yMDBfRHBrZ19TaGxpYnMvbGQuc28uY29uZi5kL2luZl9yZWN1cnNlLmNvbmYKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYThlODhjMAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90LzIwMF9EcGtnX1NobGlicy9sZC5zby5jb25mLmQvaW5mX3JlY3Vyc2UuY29uZgpAQCAtMCwwICsxIEBACitpbmNsdWRlIHQvMjAwX0Rwa2dfU2hsaWJzL2xkLnNvLmNvbmYKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90LzIwMF9EcGtnX1NobGlicy9sZC5zby5jb25mLmQvbm9ybWFsLmNvbmYgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvdC8yMDBfRHBrZ19TaGxpYnMvbGQuc28uY29uZi5kL25vcm1hbC5jb25mCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjI2ZThiOTgKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvdC8yMDBfRHBrZ19TaGxpYnMvbGQuc28uY29uZi5kL25vcm1hbC5jb25mCkBAIC0wLDAgKzEgQEAKKy91c3IvbG9jYWwvbGliLwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3QvMjAwX0Rwa2dfU2hsaWJzL2xkLnNvLmNvbmYuZC9yZWN1cnNpdmUuY29uZiBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90LzIwMF9EcGtnX1NobGlicy9sZC5zby5jb25mLmQvcmVjdXJzaXZlLmNvbmYKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOGU2ZmUyNQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90LzIwMF9EcGtnX1NobGlicy9sZC5zby5jb25mLmQvcmVjdXJzaXZlLmNvbmYKQEAgLTAsMCArMSBAQAoraW5jbHVkZSB0LzIwMF9EcGtnX1NobGlicy9sZC5zby5jb25mXzIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90LzIwMF9EcGtnX1NobGlicy9sZC5zby5jb25mXzIgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvdC8yMDBfRHBrZ19TaGxpYnMvbGQuc28uY29uZl8yCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjRhMzZmZWEKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvdC8yMDBfRHBrZ19TaGxpYnMvbGQuc28uY29uZl8yCkBAIC0wLDAgKzEgQEAKKy9ub25leGlzdGFudC9saWIxMjgKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90LzIwMF9EcGtnX1NobGlicy9vYmpkdW1wLmRiZC1wZyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90LzIwMF9EcGtnX1NobGlicy9vYmpkdW1wLmRiZC1wZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jNTE1ZGZmCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3QvMjAwX0Rwa2dfU2hsaWJzL29iamR1bXAuZGJkLXBnCkBAIC0wLDAgKzEsMzA5IEBACisKKy91c3IvbGliL3Blcmw1L2F1dG8vREJEL1BnL1BnLnNvOiAgICAgZmlsZSBmb3JtYXQgZWxmMzItaTM4NgorYXJjaGl0ZWN0dXJlOiBpMzg2LCBmbGFncyAweDAwMDAwMTUwOgorSEFTX1NZTVMsIERZTkFNSUMsIERfUEFHRUQKK3N0YXJ0IGFkZHJlc3MgMHgwMDAwNDhmMAorCitQcm9ncmFtIEhlYWRlcjoKKyAgICBMT0FEIG9mZiAgICAweDAwMDAwMDAwIHZhZGRyIDB4MDAwMDAwMDAgcGFkZHIgMHgwMDAwMDAwMCBhbGlnbiAyKioxMgorICAgICAgICAgZmlsZXN6IDB4MDAwMjBjMTAgbWVtc3ogMHgwMDAyMGMxMCBmbGFncyByLXgKKyAgICBMT0FEIG9mZiAgICAweDAwMDIxMDAwIHZhZGRyIDB4MDAwMjEwMDAgcGFkZHIgMHgwMDAyMTAwMCBhbGlnbiAyKioxMgorICAgICAgICAgZmlsZXN6IDB4MDAwMDBjNzAgbWVtc3ogMHgwMDAwMGM3NCBmbGFncyBydy0KKyBEWU5BTUlDIG9mZiAgICAweDAwMDIxMDE0IHZhZGRyIDB4MDAwMjEwMTQgcGFkZHIgMHgwMDAyMTAxNCBhbGlnbiAyKioyCisgICAgICAgICBmaWxlc3ogMHgwMDAwMDBkMCBtZW1zeiAweDAwMDAwMGQwIGZsYWdzIHJ3LQorICAgU1RBQ0sgb2ZmICAgIDB4MDAwMDAwMDAgdmFkZHIgMHgwMDAwMDAwMCBwYWRkciAweDAwMDAwMDAwIGFsaWduIDIqKjIKKyAgICAgICAgIGZpbGVzeiAweDAwMDAwMDAwIG1lbXN6IDB4MDAwMDAwMDAgZmxhZ3MgcnctCisKK0R5bmFtaWMgU2VjdGlvbjoKKyAgTkVFREVEICAgICAgbGlicHEuc28uNQorICBORUVERUQgICAgICBsaWJjLnNvLjYKKyAgSU5JVCAgICAgICAgMHgzZDAwCisgIEZJTkkgICAgICAgIDB4MWQ4NTQKKyAgSEFTSCAgICAgICAgMHhiNAorICBHTlVfSEFTSCAgICAweDdlOAorICBTVFJUQUIgICAgICAweDFjMzAKKyAgU1lNVEFCICAgICAgMHhiZDAKKyAgU1RSU1ogICAgICAgMHhmYTQKKyAgU1lNRU5UICAgICAgMHgxMAorICBQTFRHT1QgICAgICAweDIxMWM4CisgIFBMVFJFTFNaICAgIDB4NWQ4CisgIFBMVFJFTCAgICAgIDB4MTEKKyAgSk1QUkVMICAgICAgMHgzNzI4CisgIFJFTCAgICAgICAgIDB4MmUyMAorICBSRUxTWiAgICAgICAweDkwOAorICBSRUxFTlQgICAgICAweDgKKyAgVkVSTkVFRCAgICAgMHgyZGUwCisgIFZFUk5FRUROVU0gIDB4MQorICBWRVJTWU0gICAgICAweDJiZDQKKyAgUkVMQ09VTlQgICAgMHg1MgorCitWZXJzaW9uIFJlZmVyZW5jZXM6CisgIHJlcXVpcmVkIGZyb20gbGliYy5zby42OgorICAgIDB4MDk2OTFmNzMgMHgwMCAwNCBHTElCQ18yLjEuMworICAgIDB4MGQ2OTY5MTEgMHgwMCAwMyBHTElCQ18yLjEKKyAgICAweDBkNjk2OTEwIDB4MDAgMDIgR0xJQkNfMi4wCisKK0RZTkFNSUMgU1lNQk9MIFRBQkxFOgorMDAwMDAwMDAgICAgICBEICAqVU5EKgkwMDAwMDAwMCAgICAgICAgICAgICAgUGVybF9Ub3BfcHRyCiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDM0ICBHTElCQ18yLjAgICBzcHJpbnRmCiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDE0ICAgICAgICAgICAgICBQUWNtZFN0YXR1cworMDAwMDAwMDAgICAgICBEICAqVU5EKgkwMDAwMDAwMCAgICAgICAgICAgICAgUGVybF9tZ19nZXQKKzAwMDAwMDAwICAgICAgRCAgKlVORCoJMDAwMDAwMDAgICAgICAgICAgICAgIFBlcmxfc3Zfc2V0aXYKKzAwMDAwMDAwICAgICAgRCAgKlVORCoJMDAwMDAwMDAgICAgICAgICAgICAgIFBlcmxfaXNfdXRmOF9zdHJpbmcKKzAwMDAwMDAwICAgICAgRCAgKlVORCoJMDAwMDAwMDAgICAgICAgICAgICAgIFBlcmxfc3ZfZnJlZQorMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAxMSAgICAgICAgICAgICAgUFFwYXNzCiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMTkxICAgICAgICAgICAgICBQUXB1dENvcHlFbmQKKzAwMDAwMDAwICAgICAgRCAgKlVORCoJMDAwMDAwMDAgICAgICAgICAgICAgIFBlcmxfYXZfbGVuCiswMDAwMDAwMCAgICAgIEQgICpVTkQqCTAwMDAwMDAwICAgICAgICAgICAgICBQZXJsX2dldF9zdgorMDAwMDAwMDAgICAgICBEICAqVU5EKgkwMDAwMDAwMCAgICAgICAgICAgICAgUGVybElPX3ByaW50ZgorMDAwMDAwMDAgICAgICBEICAqVU5EKgkwMDAwMDAwMCAgICAgICAgICAgICAgUGVybF9Uc3RhY2tfYmFzZV9wdHIKKzAwMDAwMDAwICAgICAgRCAgKlVORCoJMDAwMDAwMDAgICAgICAgICAgICAgIFBlcmxfbmV3UlZfbm9pbmMKKzAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwYmEgICAgICAgICAgICAgIGxvX3RlbGwKKzAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwNTggICAgICAgICAgICAgIFBRY29uc3VtZUlucHV0CiswMDAwMDAwMCAgdyAgIEQgICpVTkQqCTAwMDAwMDAwICAgICAgICAgICAgICBfX2dtb25fc3RhcnRfXworMDAwMDAwMDAgIHcgICBEICAqVU5EKgkwMDAwMDAwMCAgICAgICAgICAgICAgX0p2X1JlZ2lzdGVyQ2xhc3NlcworMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDE3NSAgICAgICAgICAgICAgUFFnZXRSZXN1bHQKKzAwMDAwMDAwICAgICAgRCAgKlVORCoJMDAwMDAwMDAgICAgICAgICAgICAgIFBlcmxfVHN0YWNrX21heF9wdHIKKzAwMDAwMDAwICAgICAgRCAgKlVORCoJMDAwMDAwMDAgICAgICAgICAgICAgIFBlcmxfYXZfbWFrZQorMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDA0ZCAgICAgICAgICAgICAgUFFmbW9kCiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDI0ICAgICAgICAgICAgICBQUXByb3RvY29sVmVyc2lvbgorMDAwMDAwMDAgICAgICBEICAqVU5EKgkwMDAwMDAwMCAgICAgICAgICAgICAgUGVybF9zdl8ydXYKKzAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwMjEgICAgICAgICAgICAgIFBRc2V0Tm90aWNlUHJvY2Vzc29yCiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMGM2ICBHTElCQ18yLjAgICBzdHJuY3B5CiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDE0ICAgICAgICAgICAgICBQUXN0YXR1cworMDAwMDAwMDAgICAgICBEICAqVU5EKgkwMDAwMDAwMCAgICAgICAgICAgICAgUGVybF9Jc3ZfeWVzX3B0cgorMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDA1OCAgR0xJQkNfMi4wICAgbWVtc2V0CiswMDAwMDAwMCAgICAgIEQgICpVTkQqCTAwMDAwMDAwICAgICAgICAgICAgICBQZXJsX3dhcm5fbm9jb250ZXh0CiswMDAwMDAwMCAgICAgIEQgICpVTkQqCTAwMDAwMDAwICAgICAgICAgICAgICBQZXJsX3N2XzJtb3J0YWwKKzAwMDAwMDAwICAgICAgRCAgKlVORCoJMDAwMDAwMDAgICAgICAgICAgICAgIFBlcmxfVHN0YWNrX3NwX3B0cgorMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAxNCAgICAgICAgICAgICAgUFFyZXN1bHRTdGF0dXMKKzAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwNDUgIEdMSUJDXzIuMCAgIF9fc3RydG9sX2ludGVybmFsCiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDE5ICAgICAgICAgICAgICBQUWhvc3QKKzAwMDAwMDAwICAgICAgRCAgKlVORCoJMDAwMDAwMDAgICAgICAgICAgICAgIFBlcmxfc3Zfc2V0cHYKKzAwMDAwMDAwICAgICAgRCAgKlVORCoJMDAwMDAwMDAgICAgICAgICAgICAgIFBlcmxfYXZfdW5kZWYKKzAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwZTIgICAgICAgICAgICAgIGxvX2xzZWVrCiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDRkICAgICAgICAgICAgICBQUWZ0YWJsZQorMDAwMDAwMDAgICAgICBEICAqVU5EKgkwMDAwMDAwMCAgICAgICAgICAgICAgUGVybF9mb3JtCiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDI0ICAgICAgICAgICAgICBQUWJhY2tlbmRQSUQKKzAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwMTAgICAgICAgICAgICAgIFBRbnR1cGxlcworMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDA5OSAgICAgICAgICAgICAgUFFvaWRWYWx1ZQorMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDA0MCAgICAgICAgICAgICAgUFFub3RpZmllcworMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDA0ZCAgICAgICAgICAgICAgUFFmdHlwZQorMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDA0OCAgICAgICAgICAgICAgUFFnZXRpc251bGwKKzAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwMzMgICAgICAgICAgICAgIFBRcmVzdWx0RXJyb3JGaWVsZAorMDAwMDAwMDAgICAgICBEICAqVU5EKgkwMDAwMDAwMCAgICAgICAgICAgICAgUGVybF9UbWFya3N0YWNrX21heF9wdHIKKzAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwYmIgICAgICAgICAgICAgIGxvX2NyZWF0CiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMjQ1ICAgICAgICAgICAgICBsb19leHBvcnQKKzAwMDAwMDAwICAgICAgRCAgKlVORCoJMDAwMDAwMDAgICAgICAgICAgICAgIHB0aHJlYWRfZ2V0c3BlY2lmaWMKKzAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwNWQgICAgICAgICAgICAgIFBRZXhlYworMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAyMCAgICAgICAgICAgICAgUFFzZXRFcnJvclZlcmJvc2l0eQorMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDA0MSAgICAgICAgICAgICAgUFFjb25uZWN0ZGIKKzAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwMWMgICAgICAgICAgICAgIFBRc2VydmVyVmVyc2lvbgorMDAwMDAwMDAgICAgICBEICAqVU5EKgkwMDAwMDAwMCAgICAgICAgICAgICAgUGVybF9zdl8yaXYKKzAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwM2UgICAgICAgICAgICAgIFBRdW50cmFjZQorMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAzNiAgICAgICAgICAgICAgUFF0cmFjZQorMDAwMDAwMDAgICAgICBEICAqVU5EKgkwMDAwMDAwMCAgICAgICAgICAgICAgUGVybElPX2ZpbmRGSUxFCiswMDAwMDAwMCAgICAgIEQgICpVTkQqCTAwMDAwMDAwICAgICAgICAgICAgICBQZXJsX2F2X2V4dGVuZAorMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDA0NiAgR0xJQkNfMi4wICAgbWVtY3B5CiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMGFmICBHTElCQ18yLjAgICBzdHJsZW4KKzAwMDAwMDAwICAgICAgRCAgKlVORCoJMDAwMDAwMDAgICAgICAgICAgICAgIFBlcmxfc3ZfdXBncmFkZQorMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDA0MSAgICAgICAgICAgICAgUFFlbmRjb3B5CiswMDAwMDAwMCAgICAgIEQgICpVTkQqCTAwMDAwMDAwICAgICAgICAgICAgICBQZXJsX2h2X3N0b3JlX2VudAorMDAwMDAwMDAgICAgICBEICAqVU5EKgkwMDAwMDAwMCAgICAgICAgICAgICAgUGVybF9hdl9zdG9yZQorMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDA5ZSAgICAgICAgICAgICAgUFFleGVjUHJlcGFyZWQKKzAwMDAwMDAwICAgICAgRCAgKlVORCoJMDAwMDAwMDAgICAgICAgICAgICAgIFBlcmxfc3Zfc2V0cHZuCiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMGNlICAgICAgICAgICAgICBsb19yZWFkCiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDI0ICBHTElCQ18yLjAgICBzdHJjcHkKKzAwMDAwMDAwICAgICAgRCAgKlVORCoJMDAwMDAwMDAgICAgICAgICAgICAgIFBlcmxfaHZfZmV0Y2gKKzAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwMTEgICAgICAgICAgICAgIFBRb3B0aW9ucworMDAwMDAwMDAgICAgICBEICAqVU5EKgkwMDAwMDAwMCAgICAgICAgICAgICAgUGVybF9zdGFja19ncm93CiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDExICAgICAgICAgICAgICBQUWRiCiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMWZhICAgICAgICAgICAgICBsb19pbXBvcnQKKzAwMDAwMDAwICAgICAgRCAgKlVORCoJMDAwMDAwMDAgICAgICAgICAgICAgIFBlcmxfVGN1cnBhZF9wdHIKKzAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwMTQgICAgICAgICAgICAgIFBRc29ja2V0CiswMDAwMDAwMCAgICAgIEQgICpVTkQqCTAwMDAwMDAwICAgICAgICAgICAgICBQZXJsX3N2X25ld21vcnRhbAorMDAwMDAwMDAgICAgICBEICAqVU5EKgkwMDAwMDAwMCAgICAgICAgICAgICAgUGVybF9hdl9mZXRjaAorMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAxMSAgICAgICAgICAgICAgUFF1c2VyCiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDg0ICAgICAgICAgICAgICBQUXByZXBhcmUKKzAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwMjMgICAgICAgICAgICAgIFBRZnJlZW1lbQorMDAwMDAwMDAgICAgICBEICAqVU5EKgkwMDAwMDAwMCAgICAgICAgICAgICAgUGVybF9UZGlydHlfcHRyCiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDYyICBHTElCQ18yLjAgICBzdHJjYXNlY21wCiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDRkICAgICAgICAgICAgICBQUWZ0YWJsZWNvbAorMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDBiYSAgICAgICAgICAgICAgbG9fdW5saW5rCiswMDAwMDAwMCAgICAgIEQgICpVTkQqCTAwMDAwMDAwICAgICAgICAgICAgICBQZXJsX2NhbGxfbWV0aG9kCiswMDAwMDAwMCAgICAgIEQgICpVTkQqCTAwMDAwMDAwICAgICAgICAgICAgICBQZXJsX1RtYXJrc3RhY2tfcHRyX3B0cgorMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAyOSAgICAgICAgICAgICAgUFF0cmFuc2FjdGlvblN0YXR1cworMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAyYyAgICAgICAgICAgICAgUFFmbmFtZQorMDAwMDAwMDAgICAgICBEICAqVU5EKgkwMDAwMDAwMCAgICAgICAgICAgICAgUGVybF9uZXdTVgorMDAwMDAwMDAgICAgICBEICAqVU5EKgkwMDAwMDAwMCAgICAgICAgICAgICAgUGVybF9tZ19zZXQKKzAwMDAwMDAwICAgICAgRCAgKlVORCoJMDAwMDAwMDAgICAgICAgICAgICAgIFBlcmxfc3ZfMmlvCiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMTJjICAgICAgICAgICAgICBQUXB1dENvcHlEYXRhCiswMDAwMDAwMCAgICAgIEQgICpVTkQqCTAwMDAwMDAwICAgICAgICAgICAgICBQZXJsX3NhZmVzeXNyZWFsbG9jCiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMGFiICAgICAgICAgICAgICBQUWV4ZWNQYXJhbXMKKzAwMDAwMDAwICAgICAgRCAgKlVORCoJMDAwMDAwMDAgICAgICAgICAgICAgIFBlcmxfbmV3U1ZpdgorMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDBhNCAgICAgICAgICAgICAgUFFnZXRDb3B5RGF0YQorMDAwMDAwMDAgICAgICBEICAqVU5EKgkwMDAwMDAwMCAgICAgICAgICAgICAgUGVybF9zdl91bnJlZgorMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAyNyAgICAgICAgICAgICAgUFFmaW5pc2gKKzAwMDAwMDAwICAgICAgRCAgKlVORCoJMDAwMDAwMDAgICAgICAgICAgICAgIFBlcmxfSXN2X25vX3B0cgorMDAwMDAwMDAgICAgICBEICAqVU5EKgkwMDAwMDAwMCAgICAgICAgICAgICAgUGVybF9tZ19maW5kCiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDM1ICAgICAgICAgICAgICBQUWVycm9yTWVzc2FnZQorMDAwMDAwMDAgICAgICBEICAqVU5EKgkwMDAwMDAwMCAgICAgICAgICAgICAgUGVybF9uZXdBVgorMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDFhYSAgR0xJQkNfMi4wICAgc3RyY2F0CiswMDAwMDAwMCAgICAgIEQgICpVTkQqCTAwMDAwMDAwICAgICAgICAgICAgICBQZXJsX2Nyb2FrX25vY29udGV4dAorMDAwMDAwMDAgICAgICBEICAqVU5EKgkwMDAwMDAwMCAgICAgICAgICAgICAgUGVybF9zdl9ncm93CiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMGM2ICBHTElCQ18yLjEgICBfX3Jhd21lbWNocgorMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAxMSAgICAgICAgICAgICAgUFFuZmllbGRzCiswMDAwMDAwMCAgICAgIEQgICpVTkQqCTAwMDAwMDAwICAgICAgICAgICAgICBQZXJsX2F2X3BvcAorMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDBjZCAgICAgICAgICAgICAgbG9fb3BlbgorMDAwMDAwMDAgICAgICBEICAqVU5EKgkwMDAwMDAwMCAgICAgICAgICAgICAgUGVybF9zYWZlc3lzbWFsbG9jCiswMDAwMDAwMCAgICAgIEQgICpVTkQqCTAwMDAwMDAwICAgICAgICAgICAgICBQZXJsX25ld1NWcHYKKzAwMDAwMDAwICAgICAgRCAgKlVORCoJMDAwMDAwMDAgICAgICAgICAgICAgIHBvdworMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAzNCAgR0xJQkNfMi4wICAgc3NjYW5mCiswMDAwMDAwMCAgICAgIEQgICpVTkQqCTAwMDAwMDAwICAgICAgICAgICAgICBQZXJsX21nX3NpemUKKzAwMDAwMDAwICAgICAgRCAgKlVORCoJMDAwMDAwMDAgICAgICAgICAgICAgIFBlcmxfYXZfcHVzaAorMDAwMDAwMDAgICAgICBEICAqVU5EKgkwMDAwMDAwMCAgICAgICAgICAgICAgUGVybF9UbmFfcHRyCiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMGYzICBHTElCQ18yLjAgICBzdHJuY21wCiswMDAwMDAwMCAgICAgIEQgICpVTkQqCTAwMDAwMDAwICAgICAgICAgICAgICBQTF9tZW1vcnlfd3JhcAorMDAwMDAwMDAgICAgICBEICAqVU5EKgkwMDAwMDAwMCAgICAgICAgICAgICAgUGVybF9jcm9haworMDAwMDAwMDAgICAgICBEICAqVU5EKgkwMDAwMDAwMCAgICAgICAgICAgICAgUGVybF9Jc3ZfdW5kZWZfcHRyCiswMDAwMDAwMCAgICAgIEQgICpVTkQqCTAwMDAwMDAwICAgICAgICAgICAgICBQZXJsX3NhZmVzeXNmcmVlCiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDExICAgICAgICAgICAgICBQUXBvcnQKKzAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwM2YgICAgICAgICAgICAgIFBRZ2V0dmFsdWUKKzAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwM2IgIEdMSUJDXzIuMCAgIHNucHJpbnRmCiswMDAwMDAwMCAgICAgIEQgICpVTkQqCTAwMDAwMDAwICAgICAgICAgICAgICBQZXJsX25ld1hTCiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMGJhICAgICAgICAgICAgICBsb19jbG9zZQorMDAwMDAwMDAgICAgICBEICAqVU5EKgkwMDAwMDAwMCAgICAgICAgICAgICAgUGVybF9uZXdTVnV2CiswMDAwMDAwMCAgICAgIEQgICpVTkQqCTAwMDAwMDAwICAgICAgICAgICAgICBQZXJsX3N2XzJib29sCiswMDAwMDAwMCAgICAgIEQgICpVTkQqCTAwMDAwMDAwICAgICAgICAgICAgICBQZXJsX25ld0hWCiswMDAwMDAwMCAgICAgIEQgICpVTkQqCTAwMDAwMDAwICAgICAgICAgICAgICBQZXJsX0d0aHJfa2V5X3B0cgorMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDA1NCAgR0xJQkNfMi4wICAgc3RyY21wCiswMDAwMDAwMCAgdyAgIERGICpVTkQqCTAwMDAwMTc2ICBHTElCQ18yLjEuMyBfX2N4YV9maW5hbGl6ZQorMDAwMDAwMDAgICAgICBEICAqVU5EKgkwMDAwMDAwMCAgICAgICAgICAgICAgUGVybF9uZXdTVnB2bgorMDAwMDAwMDAgICAgICBEICAqVU5EKgkwMDAwMDAwMCAgICAgICAgICAgICAgUGVybF9tYXJrc3RhY2tfZ3JvdworMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDBlYiAgICAgICAgICAgICAgbG9fd3JpdGUKKzAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAxNzUgICAgICAgICAgICAgIFBRY21kVHVwbGVzCiswMDAwMDAwMCAgICAgIEQgICpVTkQqCTAwMDAwMDAwICAgICAgICAgICAgICBQZXJsX25ld1JWCiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDRkICAgICAgICAgICAgICBQUWZzaXplCiswMDAwMDAwMCAgICAgIEQgICpVTkQqCTAwMDAwMDAwICAgICAgICAgICAgICBQZXJsX3N2X2JhY2tvZmYKKzAwMDAwMDAwICAgICAgRCAgKlVORCoJMDAwMDAwMDAgICAgICAgICAgICAgIFBlcmxfZG93YW50YXJyYXkKKzAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwNmUgICAgICAgICAgICAgIFBRY2xlYXIKKzAwMDAwMDAwICAgICAgRCAgKlVORCoJMDAwMDAwMDAgICAgICAgICAgICAgIFBlcmxfc3ZfMnB2X2ZsYWdzCiswMDAwYjBiMCBnICAgIERGIC50ZXh0CTAwMDAwMWE2ICBCYXNlICAgICAgICBYU19EQkRfX1BnX19kYl9fcGluZworMDAwMDZiYzAgZyAgICBERiAudGV4dAkwMDAwMDI1ZiAgQmFzZSAgICAgICAgWFNfREJEX19QZ19fZGJfX3BnX3R5cGVfaW5mbworMDAwMWNhYzAgZyAgICBERiAudGV4dAkwMDAwMDA1OSAgQmFzZSAgICAgICAgZGVxdW90ZV9ib29sCiswMDAwN2YwMCBnICAgIERGIC50ZXh0CTAwMDAwMjZiICBCYXNlICAgICAgICBYU19EQkRfX1BnX19kYl9wdXRsaW5lCiswMDAwNzEwMCBnICAgIERGIC50ZXh0CTAwMDAwMWEwICBCYXNlICAgICAgICBYU19EQkRfX1BnX19kYl9lbmRjb3B5CiswMDAwNmUyMCBnICAgIERGIC50ZXh0CTAwMDAwMTMzICBCYXNlICAgICAgICBYU19EQkRfX1BnX19kYl9wZ19zZXJ2ZXJfdW50cmFjZQorMDAwMGE3NTAgZyAgICBERiAudGV4dAkwMDAwMDJkMyAgQmFzZSAgICAgICAgWFNfREJEX19QZ19fZGJfcGdfcm9sbGJhY2tfdG8KKzAwMDEyZTAwIGcgICAgREYgLnRleHQJMDAwMDAyMTEgIEJhc2UgICAgICAgIHBnX2RiX3JlbGVhc2UKKzAwMDE4MTIwIGcgICAgREYgLnRleHQJMDAwMDE3MDcgIEJhc2UgICAgICAgIGRiZF9zdF9wcmVwYXJlCiswMDAxMzhhMCBnICAgIERGIC50ZXh0CTAwMDAwMjM0ICBCYXNlICAgICAgICBwZ19kYl9nZXRsaW5lCiswMDAxMDgwMCBnICAgIERGIC50ZXh0CTAwMDAwNjJhICBCYXNlICAgICAgICBYU19EQkRfX1BnX19kYl9zZWxlY3RhbGxfYXJyYXlyZWYKKzAwMDBhZDEwIGcgICAgREYgLnRleHQJMDAwMDAxYTYgIEJhc2UgICAgICAgIFhTX0RCRF9fUGdfX2RiX3BnX25vdGlmaWVzCiswMDAwNzk5MCBnICAgIERGIC50ZXh0CTAwMDAwNTZjICBCYXNlICAgICAgICBYU19EQkRfX1BnX19kYl9wZ19nZXRsaW5lCiswMDAxMzI3MCBnICAgIERGIC50ZXh0CTAwMDAwMjBhICBCYXNlICAgICAgICBwZ19kYl9zYXZlcG9pbnQKKzAwMDA5NjQwIGcgICAgREYgLnRleHQJMDAwMDA2MTkgIEJhc2UgICAgICAgIFhTX0RCRF9fUGdfX2RiX2xvX3JlYWQKKzAwMDEwZTMwIGcgICAgREYgLnRleHQJMDAwMDA0MTMgIEJhc2UgICAgICAgIFhTX0RCRF9fUGdfX2RiX19sb2dpbgorMDAwMWE4OTAgZyAgICBERiAudGV4dAkwMDAwMDAyMiAgQmFzZSAgICAgICAgZGJkX2RiX3JvbGxiYWNrCiswMDAxYjE1MCBnICAgIERGIC50ZXh0CTAwMDAwNmQ3ICBCYXNlICAgICAgICBkYmRfZGJfbG9naW4KKzAwMDE5YTYwIGcgICAgREYgLnRleHQJMDAwMDAwYWUgIEJhc2UgICAgICAgIGRiZF9kYl9nZXRmZAorMDAwMTllNjAgZyAgICBERiAudGV4dAkwMDAwMDY1NyAgQmFzZSAgICAgICAgZGJkX2RiX0ZFVENIX2F0dHJpYgorMDAwMWQwMjAgZyAgICBERiAudGV4dAkwMDAwMDBiMiAgQmFzZSAgICAgICAgcXVvdGVfYm9vbAorMDAwMTAwMjAgZyAgICBERiAudGV4dAkwMDAwMDIwZSAgQmFzZSAgICAgICAgWFNfREJEX19QZ19fZGJfY29tbWl0CiswMDAxY2E5MCBnICAgIERGIC50ZXh0CTAwMDAwMDI4ICBCYXNlICAgICAgICBkZXF1b3RlX2NoYXIKKzAwMDEyY2YwIGcgICAgREYgLnRleHQJMDAwMDAxMDQgIEJhc2UgICAgICAgIHBnX2RiX2xvX2NyZWF0CiswMDAwNzQ0MCBnICAgIERGIC50ZXh0CTAwMDAwNTQyICBCYXNlICAgICAgICBYU19EQkRfX1BnX19kYl9nZXRsaW5lCiswMDAwNmY2MCBnICAgIERGIC50ZXh0CTAwMDAwMTk0ICBCYXNlICAgICAgICBYU19EQkRfX1BnX19kYl9wZ19zZXJ2ZXJfdHJhY2UKKzAwMDEyYmUwIGcgICAgREYgLnRleHQJMDAwMDAxMDMgIEJhc2UgICAgICAgIHBnX2RiX2xvX3dyaXRlCiswMDAwZGIyMCBnICAgIERGIC50ZXh0CTAwMDAwNjA4ICBCYXNlICAgICAgICBYU19EQkRfX1BnX19zdF9ibG9iX3JlYWQKKzAwMDBhYTMwIGcgICAgREYgLnRleHQJMDAwMDAyZDMgIEJhc2UgICAgICAgIFhTX0RCRF9fUGdfX2RiX3BnX3NhdmVwb2ludAorMDAwMGJjYjAgZyAgICBERiAudGV4dAkwMDAwMDJkOCAgQmFzZSAgICAgICAgWFNfREJEX19QZ19fc3RfZXhlY3V0ZQorMDAwMWQwZTAgZyAgICBERiAudGV4dAkwMDAwMDE1NiAgQmFzZSAgICAgICAgcXVvdGVfYnl0ZWEKKzAwMDA4ZTcwIGcgICAgREYgLnRleHQJMDAwMDAzZGIgIEJhc2UgICAgICAgIFhTX0RCRF9fUGdfX2RiX2xvX2xzZWVrCiswMDAxY2IyMCBnICAgIERGIC50ZXh0CTAwMDAwMGMyICBCYXNlICAgICAgICBxdW90ZV9jaXJjbGUKKzAwMDBlOTUwIGcgICAgREYgLnRleHQJMDAwMDAyNjYgIEJhc2UgICAgICAgIFhTX0RCRF9fUGdfX3N0X2ZldGNoYWxsX2FycmF5cmVmCiswMDAxZDc4MCBnICAgIERGIC50ZXh0CTAwMDAwMDliICBCYXNlICAgICAgICBzcWxfdHlwZV9kYXRhCiswMDAyMWM3MCBnICAgIEQgICpBQlMqCTAwMDAwMDAwICBCYXNlICAgICAgICBfZWRhdGEKKzAwMDE1ZGYwIGcgICAgREYgLnRleHQJMDAwMDAxNTUgIEJhc2UgICAgICAgIGRiZF9zdF9maW5pc2gKKzAwMDBkMjIwIGcgICAgREYgLnRleHQJMDAwMDAzZjQgIEJhc2UgICAgICAgIFhTX0RCRF9fUGdfX3N0X0RFU1RST1kKKzAwMDBhZWMwIGcgICAgREYgLnRleHQJMDAwMDAxZTUgIEJhc2UgICAgICAgIFhTX0RCRF9fUGdfX2RiX2dldGZkCiswMDAxY2NjMCBnICAgIERGIC50ZXh0CTAwMDAwMGIyICBCYXNlICAgICAgICBxdW90ZV9nZW9tCiswMDAxZDJlMCBnICAgIERGIC50ZXh0CTAwMDAwNDk3ICBCYXNlICAgICAgICBwZ190eXBlX2RhdGEKKzAwMDE1YzMwIGcgICAgREYgLnRleHQJMDAwMDAxYjUgIEJhc2UgICAgICAgIGRiZF9kYl9waW5nCiswMDAxZDg1NCBnICAgIERGIC5maW5pCTAwMDAwMDAwICBCYXNlICAgICAgICBfZmluaQorMDAwMTM1NjAgZyAgICBERiAudGV4dAkwMDAwMDBlNyAgQmFzZSAgICAgICAgcGdfZGJfcGdfc2VydmVyX3RyYWNlCiswMDAxMjdiMCBnICAgIERGIC50ZXh0CTAwMDAwMTE4ICBCYXNlICAgICAgICBwZ19kYl9sb19vcGVuCiswMDAwM2QwMCBnICAgIERGIC5pbml0CTAwMDAwMDAwICBCYXNlICAgICAgICBfaW5pdAorMDAwMGUxMzAgZyAgICBERiAudGV4dAkwMDAwMDIyZiAgQmFzZSAgICAgICAgWFNfREJEX19QZ19fc3RfZmV0Y2hyb3dfYXJyYXkKKzAwMDFjYmYwIGcgICAgREYgLnRleHQJMDAwMDAwYzIgIEJhc2UgICAgICAgIHF1b3RlX3BhdGgKKzAwMDE1OTMwIGcgICAgREYgLnRleHQJMDAwMDAyZjkgIEJhc2UgICAgICAgIGRiZF9zdF9kZXN0cm95CiswMDAxMTQ1MCBnICAgIERGIC50ZXh0CTAwMDAwMzM2ICBCYXNlICAgICAgICBYU19EQkRfX1BnX2NvbnN0YW50CiswMDAxNGZiMCBnICAgIERGIC50ZXh0CTAwMDAwMjllICBCYXNlICAgICAgICBkYmRfc3RfU1RPUkVfYXR0cmliCiswMDAwY2FjMCBnICAgIERGIC50ZXh0CTAwMDAwNGJjICBCYXNlICAgICAgICBYU19EQkRfX1BnX19zdF9iaW5kX3BhcmFtCiswMDAwZjE5MCBnICAgIERGIC50ZXh0CTAwMDAwMjBlICBCYXNlICAgICAgICBYU19EQkRfX1BnX19kYl9yb2xsYmFjaworMDAwMDQ5OTAgZyAgICBERiAudGV4dAkwMDAwMWUwNyAgQmFzZSAgICAgICAgYm9vdF9EQkRfX1BnCiswMDAyMWM3MCBnICAgIEQgICpBQlMqCTAwMDAwMDAwICBCYXNlICAgICAgICBfX2Jzc19zdGFydAorMDAwMWNhNjAgZyAgICBERiAudGV4dAkwMDAwMDAyOCAgQmFzZSAgICAgICAgZGVxdW90ZV9zdHJpbmcKKzAwMDBkODQwIGcgICAgREYgLnRleHQJMDAwMDAyZDIgIEJhc2UgICAgICAgIFhTX0RCRF9fUGdfX3N0X1NUT1JFCiswMDAwODE3MCBnICAgIERGIC50ZXh0CTAwMDAwMjZiICBCYXNlICAgICAgICBYU19EQkRfX1BnX19kYl9wZ19wdXRsaW5lCiswMDAxYzc5MCBnICAgIERGIC50ZXh0CTAwMDAwMjk1ICBCYXNlICAgICAgICBwZ19xdWlja2V4ZWMKKzAwMDA3MmEwIGcgICAgREYgLnRleHQJMDAwMDAxOWYgIEJhc2UgICAgICAgIFhTX0RCRF9fUGdfX2RiX3BnX2VuZGNvcHkKKzAwMDA4NzAwIGcgICAgREYgLnRleHQJMDAwMDAyOGIgIEJhc2UgICAgICAgIFhTX0RCRF9fUGdfX2RiX2xvX2ltcG9ydAorMDAwMTk4MzAgZyAgICBERiAudGV4dAkwMDAwMDIyYiAgQmFzZSAgICAgICAgZGJkX2RiX3BnX25vdGlmaWVzCiswMDAxMWFiMCBnICAgIERGIC50ZXh0CTAwMDAwMGVlICBCYXNlICAgICAgICBwZ19kYl9sb19jbG9zZQorMDAwMWFlNzAgZyAgICBERiAudGV4dAkwMDAwMDFjNiAgQmFzZSAgICAgICAgZGJkX2RiX2Rpc2Nvbm5lY3QKKzAwMDIxYzc0IGcgICAgRCAgKkFCUyoJMDAwMDAwMDAgIEJhc2UgICAgICAgIF9lbmQKKzAwMDBjZjgwIGcgICAgREYgLnRleHQJMDAwMDAyYTAgIEJhc2UgICAgICAgIFhTX0RCRF9fUGdfX3N0X2ZpbmlzaAorMDAwMTliMTAgZyAgICBERiAudGV4dAkwMDAwMDM0MyAgQmFzZSAgICAgICAgZGJkX2Rpc2Nvbl9hbGwKKzAwMDExNzkwIGcgICAgREYgLnRleHQJMDAwMDAwNTAgIEJhc2UgICAgICAgIGRiZF9pbml0CiswMDAxMTdlMCBnICAgIERGIC50ZXh0CTAwMDAwMGE5ICBCYXNlICAgICAgICBkYmRfc3Rfcm93cworMDAwMWE4YzAgZyAgICBERiAudGV4dAkwMDAwMDAyMiAgQmFzZSAgICAgICAgZGJkX2RiX2NvbW1pdAorMDAwMDllYzAgZyAgICBERiAudGV4dAkwMDAwMDMyYiAgQmFzZSAgICAgICAgWFNfREJEX19QZ19fZGJfbG9fb3BlbgorMDAwMWNlNzAgZyAgICBERiAudGV4dAkwMDAwMDBmZSAgQmFzZSAgICAgICAgZGVxdW90ZV9ieXRlYQorMDAwMGViYzAgZyAgICBERiAudGV4dAkwMDAwMDFmMCAgQmFzZSAgICAgICAgWFNfREJEX19QZ19fc3Rfcm93cworMDAwMGJmOTAgZyAgICBERiAudGV4dAkwMDAwMDU2ZCAgQmFzZSAgICAgICAgWFNfREJEX19QZ19fZGJfcXVvdGUKKzAwMDFjZmIwIGcgICAgREYgLnRleHQJMDAwMDAwNmMgIEJhc2UgICAgICAgIHF1b3RlX2ludGVnZXIKKzAwMDBkNjIwIGcgICAgREYgLnRleHQJMDAwMDAyMWIgIEJhc2UgICAgICAgIFhTX0RCRF9fUGdfX3N0X0ZFVENIX2F0dHJpYgorMDAwMTM0ODAgZyAgICBERiAudGV4dAkwMDAwMDBlMCAgQmFzZSAgICAgICAgcGdfZGJfcGdfc2VydmVyX3VudHJhY2UKKzAwMDBhMWYwIGcgICAgREYgLnRleHQJMDAwMDAyN2MgIEJhc2UgICAgICAgIFhTX0RCRF9fUGdfX2RiX2xvX2NyZWF0CiswMDAwOTI1MCBnICAgIERGIC50ZXh0CTAwMDAwM2ViICBCYXNlICAgICAgICBYU19EQkRfX1BnX19kYl9sb193cml0ZQorMDAwMDY3YTAgZyAgICBERiAudGV4dAkwMDAwMDIwOCAgQmFzZSAgICAgICAgWFNfREJEX19QZ19fc3Rfc3RhdGUKKzAwMDFjYTMwIGcgICAgREYgLnRleHQJMDAwMDAwMjggIEJhc2UgICAgICAgIG51bGxfZGVxdW90ZQorMDAwMTMwMjAgZyAgICBERiAudGV4dAkwMDAwMDI1MCAgQmFzZSAgICAgICAgcGdfZGJfcm9sbGJhY2tfdG8KKzAwMDEwMjMwIGcgICAgREYgLnRleHQJMDAwMDA1Y2IgIEJhc2UgICAgICAgIFhTX0RCRF9fUGdfX2RiX3NlbGVjdHJvd19hcnJheXJlZgorMDAwMDg5OTAgZyAgICBERiAudGV4dAkwMDAwMDI1YiAgQmFzZSAgICAgICAgWFNfREJEX19QZ19fZGJfbG9fdW5saW5rCiswMDAxMjhkMCBnICAgIERGIC50ZXh0CTAwMDAwMTA0ICBCYXNlICAgICAgICBwZ19kYl9sb19pbXBvcnQKKzAwMDBmYjMwIGcgICAgREYgLnRleHQJMDAwMDAyMGEgIEJhc2UgICAgICAgIFhTX0RCRF9fUGdfX2RiX0ZFVENICiswMDAxMmFmMCBnICAgIERGIC50ZXh0CTAwMDAwMGVlICBCYXNlICAgICAgICBwZ19kYl9sb190ZWxsCiswMDAwYTQ3MCBnICAgIERGIC50ZXh0CTAwMDAwMmQzICBCYXNlICAgICAgICBYU19EQkRfX1BnX19kYl9wZ19yZWxlYXNlCiswMDAxMTI1MCBnICAgIERGIC50ZXh0CTAwMDAwMWZhICBCYXNlICAgICAgICBYU19EQkRfX1BnX19kcl9kaXNjb25fYWxsXworMDAwMTNjZTAgZyAgICBERiAudGV4dAkwMDAwMTJjZCAgQmFzZSAgICAgICAgZGJkX3N0X0ZFVENIX2F0dHJpYgorMDAwMGI4NjAgZyAgICBERiAudGV4dAkwMDAwMDQ1MCAgQmFzZSAgICAgICAgWFNfREJEX19QZ19fZGJfZG8KKzAwMDBlZGIwIGcgICAgREYgLnRleHQJMDAwMDAzZDYgIEJhc2UgICAgICAgIFhTX0RCRF9fUGdfX3N0X19wcmVwYXJlCiswMDAxZDI0MCBnICAgIERGIC50ZXh0CTAwMDAwMDNmICBCYXNlICAgICAgICBxdW90ZV9zcWxfYmluYXJ5CiswMDAwZmQ0MCBnICAgIERGIC50ZXh0CTAwMDAwMmQyICBCYXNlICAgICAgICBYU19EQkRfX1BnX19kYl9TVE9SRQorMDAwMDgzZTAgZyAgICBERiAudGV4dAkwMDAwMDMxYiAgQmFzZSAgICAgICAgWFNfREJEX19QZ19fZGJfbG9fZXhwb3J0CiswMDAxY2Q4MCBnICAgIERGIC50ZXh0CTAwMDAwMGU0ICBCYXNlICAgICAgICBxdW90ZV9zdHJpbmcKKzAwMDBmM2EwIGcgICAgREYgLnRleHQJMDAwMDAzNzggIEJhc2UgICAgICAgIFhTX0RCRF9fUGdfX2RiX2Rpc2Nvbm5lY3QKKzAwMDBjNTAwIGcgICAgREYgLnRleHQJMDAwMDA1YmUgIEJhc2UgICAgICAgIFhTX0RCRF9fUGdfX3N0X2JpbmRfcGFyYW1faW5vdXQKKzAwMDBmNzIwIGcgICAgREYgLnRleHQJMDAwMDA0MGUgIEJhc2UgICAgICAgIFhTX0RCRF9fUGdfX2RiX0RFU1RST1kKKzAwMDEzYWUwIGcgICAgREYgLnRleHQJMDAwMDAxZjQgIEJhc2UgICAgICAgIHBnX2RiX3B1dGxpbmUKKzAwMDEzNjUwIGcgICAgREYgLnRleHQJMDAwMDAyNDQgIEJhc2UgICAgICAgIHBnX2RiX2VuZGNvcHkKKzAwMDE2YjQwIGcgICAgREYgLnRleHQJMDAwMDE1ZDEgIEJhc2UgICAgICAgIGRiZF9zdF9leGVjdXRlCiswMDAxMjllMCBnICAgIERGIC50ZXh0CTAwMDAwMTEwICBCYXNlICAgICAgICBwZ19kYl9sb191bmxpbmsKKzAwMDFjZjcwIGcgICAgREYgLnRleHQJMDAwMDAwMzggIEJhc2UgICAgICAgIGRlcXVvdGVfc3FsX2JpbmFyeQorMDAwMTE4OTAgZyAgICBERiAudGV4dAkwMDAwMDEwYSAgQmFzZSAgICAgICAgcGdfZGJfbG9fbHNlZWsKKzAwMDFkMjgwIGcgICAgREYgLnRleHQJMDAwMDAwNTUgIEJhc2UgICAgICAgIG51bGxfcXVvdGUKKzAwMDA4YmYwIGcgICAgREYgLnRleHQJMDAwMDAyN2MgIEJhc2UgICAgICAgIFhTX0RCRF9fUGdfX2RiX2xvX3RlbGwKKzAwMDFhOGYwIGcgICAgREYgLnRleHQJMDAwMDA1NzkgIEJhc2UgICAgICAgIGRiZF9kYl9TVE9SRV9hdHRyaWIKKzAwMDFiOWEwIGcgICAgREYgLnRleHQJMDAwMDBkZWYgIEJhc2UgICAgICAgIGRiZF9iaW5kX3BoCiswMDAxMTlhMCBnICAgIERGIC50ZXh0CTAwMDAwMTAzICBCYXNlICAgICAgICBwZ19kYl9sb19yZWFkCiswMDAxNWY1MCBnICAgIERGIC50ZXh0CTAwMDAwNmVkICBCYXNlICAgICAgICBkYmRfc3RfZmV0Y2gKKzAwMDBlMzYwIGcgICAgREYgLnRleHQJMDAwMDAyMjQgIEJhc2UgICAgICAgIFhTX0RCRF9fUGdfX3N0X2ZldGNocm93X2FycmF5cmVmCiswMDAwNjliMCBnICAgIERGIC50ZXh0CTAwMDAwMjA4ICBCYXNlICAgICAgICBYU19EQkRfX1BnX19kYl9zdGF0ZQorMDAwMTI2OTAgZyAgICBERiAudGV4dAkwMDAwMDExOCAgQmFzZSAgICAgICAgcGdfZGJfbG9fZXhwb3J0CiswMDAxYjA0MCBnICAgIERGIC50ZXh0CTAwMDAwMTBmICBCYXNlICAgICAgICBkYmRfZGJfZGVzdHJveQorMDAwMDljNjAgZyAgICBERiAudGV4dAkwMDAwMDI1YiAgQmFzZSAgICAgICAgWFNfREJEX19QZ19fZGJfbG9fY2xvc2UKKzAwMDExZWEwIGcgICAgREYgLnRleHQJMDAwMDAzNzkgIEJhc2UgICAgICAgIGRiZF9zdF9ibG9iX3JlYWQKKworCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvdC8yMDBfRHBrZ19TaGxpYnMvb2JqZHVtcC5nbGliLWlhNjQgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvdC8yMDBfRHBrZ19TaGxpYnMvb2JqZHVtcC5nbGliLWlhNjQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTNmZjRkOAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90LzIwMF9EcGtnX1NobGlicy9vYmpkdW1wLmdsaWItaWE2NApAQCAtMCwwICsxLDM1MCBAQAorCisvdXNyL2xpYi9saWJnbGliLTIuMC5zby4wOiAgICAgZmlsZSBmb3JtYXQgZWxmNjQtbGl0dGxlCithcmNoaXRlY3R1cmU6IGlhNjQtZWxmNjQsIGZsYWdzIDB4MDAwMDAxNTA6CitIQVNfU1lNUywgRFlOQU1JQywgRF9QQUdFRAorc3RhcnQgYWRkcmVzcyAweDAwMDAwMDAwMDAwMmRjNDAKKworUHJvZ3JhbSBIZWFkZXI6CisgICAgTE9BRCBvZmYgICAgMHgwMDAwMDAwMDAwMDAwMDAwIHZhZGRyIDB4MDAwMDAwMDAwMDAwMDAwMCBwYWRkciAweDAwMDAwMDAwMDAwMDAwMDAgYWxpZ24gMioqMTYKKyAgICAgICAgIGZpbGVzeiAweDAwMDAwMDAwMDAxNTg4MjAgbWVtc3ogMHgwMDAwMDAwMDAwMTU4ODIwIGZsYWdzIHIteAorICAgIExPQUQgb2ZmICAgIDB4MDAwMDAwMDAwMDE1ODgyMCB2YWRkciAweDAwMDAwMDAwMDAxNjg4MjAgcGFkZHIgMHgwMDAwMDAwMDAwMTY4ODIwIGFsaWduIDIqKjE2CisgICAgICAgICBmaWxlc3ogMHgwMDAwMDAwMDAwMDAxNDk4IG1lbXN6IDB4MDAwMDAwMDAwMDAwMWE5MCBmbGFncyBydy0KKyBEWU5BTUlDIG9mZiAgICAweDAwMDAwMDAwMDAxNTg5NDggdmFkZHIgMHgwMDAwMDAwMDAwMTY4OTQ4IHBhZGRyIDB4MDAwMDAwMDAwMDE2ODk0OCBhbGlnbiAyKiozCisgICAgICAgICBmaWxlc3ogMHgwMDAwMDAwMDAwMDAwMWYwIG1lbXN6IDB4MDAwMDAwMDAwMDAwMDFmMCBmbGFncyBydy0KKyAgIFNUQUNLIG9mZiAgICAweDAwMDAwMDAwMDAwMDAwMDAgdmFkZHIgMHgwMDAwMDAwMDAwMDAwMDAwIHBhZGRyIDB4MDAwMDAwMDAwMDAwMDAwMCBhbGlnbiAyKiozCisgICAgICAgICBmaWxlc3ogMHgwMDAwMDAwMDAwMDAwMDAwIG1lbXN6IDB4MDAwMDAwMDAwMDAwMDAwMCBmbGFncyBydy0KKzB4NzAwMDAwMDEgb2ZmICAgIDB4MDAwMDAwMDAwMDE1MGUyOCB2YWRkciAweDAwMDAwMDAwMDAxNTBlMjggcGFkZHIgMHgwMDAwMDAwMDAwMTUwZTI4IGFsaWduIDIqKjMKKyAgICAgICAgIGZpbGVzeiAweDAwMDAwMDAwMDAwMDc5ZjggbWVtc3ogMHgwMDAwMDAwMDAwMDA3OWY4IGZsYWdzIHItLQorCitEeW5hbWljIFNlY3Rpb246CisgIE5FRURFRCAgICAgIGxpYmMuc28uNi4xCisgIFNPTkFNRSAgICAgIGxpYmdsaWItMi4wLnNvLjAKKyAgSU5JVCAgICAgICAgMHgxNTA3MAorICBGSU5JICAgICAgICAweDEwNjM2MAorICBJTklUX0FSUkFZICAweDE2ODgyMAorICBJTklUX0FSUkFZU1ogMHgxOAorICBGSU5JX0FSUkFZICAweDE2ODgzOAorICBGSU5JX0FSUkFZU1ogMHg4CisgIEhBU0ggICAgICAgIDB4MTU4CisgIEdOVV9IQVNIICAgIDB4MjVjOAorICBTVFJUQUIgICAgICAweGM0YzAKKyAgU1lNVEFCICAgICAgMHg0YTM4CisgIFNUUlNaICAgICAgIDB4NWRlYgorICBTWU1FTlQgICAgICAweDE4CisgIDB4NzAwMDAwMDAgIDB4MTY4ZGQ4CisgIFBMVEdPVCAgICAgIDB4MTY4ZGQ4CisgIFBMVFJFTFNaICAgIDB4Y2Q4CisgIFBMVFJFTCAgICAgIDB4NworICBKTVBSRUwgICAgICAweDE0Mzk4CisgIFJFTEEgICAgICAgIDB4MTJkMTgKKyAgUkVMQVNaICAgICAgMHgxNjgwCisgIFJFTEFFTlQgICAgIDB4MTgKKyAgVkVSTkVFRCAgICAgMHgxMmNlOAorICBWRVJORUVETlVNICAweDEKKyAgVkVSU1lNICAgICAgMHgxMjJhYworICBSRUxBQ09VTlQgICAweDYwCisKK1ZlcnNpb24gUmVmZXJlbmNlczoKKyAgcmVxdWlyZWQgZnJvbSBsaWJjLnNvLjYuMToKKyAgICAweDBkNjk2OTEzIDB4MDAgMDMgR0xJQkNfMi4zCisgICAgMHgwZDY5NjkxMiAweDAwIDAyIEdMSUJDXzIuMgorCitEWU5BTUlDIFNZTUJPTCBUQUJMRToKKzAwMDAwMDAwMDAwYmJhYTAgbCAgICBERiAudGV4dAkwMDAwMDAwMDAwMDAwNmIwICAgICAgICAgICAgICAuaGlkZGVuIElBX19nX3RocmVhZF9wb29sX25ldworMDAwMDAwMDAwMDA3YjczMCBsICAgIERGIC50ZXh0CTAwMDAwMDAwMDAwMDAyMDAgICAgICAgICAgICAgIC5oaWRkZW4gSUFfX2dfb3B0aW9uX2dyb3VwX2ZyZWUKKzAwMDAwMDAwMDAwYjJmMzAgbCAgICBERiAudGV4dAkwMDAwMDAwMDAwMDAwMDYwICAgICAgICAgICAgICAuaGlkZGVuIElBX19nX3N0cl9lcXVhbAorMDAwMDAwMDAwMDBjZDBjMCBsICAgIERGIC50ZXh0CTAwMDAwMDAwMDAwMDAwMTAgICAgICAgICAgICAgIC5oaWRkZW4gSUFfX2dfZGlyZWN0X2hhc2gKKzAwMDAwMDAwMDAwOTU2NjAgbCAgICBERiAudGV4dAkwMDAwMDAwMDAwMDAwMWQwICAgICAgICAgICAgICAuaGlkZGVuIElBX19nX3NjYW5uZXJfd2FybgorMDAwMDAwMDAwMDEwNjJlMCBsICAgIERGIC50ZXh0CTAwMDAwMDAwMDAwMDAwODAgICAgICAgICAgICAgIC5oaWRkZW4gX19kb19nbG9iYWxfY3RvcnNfYXV4CiswMDAwMDAwMDAwMDcxZmUwIGwgICAgREYgLnRleHQJMDAwMDAwMDAwMDAwMDBmMCAgICAgICAgICAgICAgLmhpZGRlbiBJQV9fZ19mcmVlCiswMDAwMDAwMDAwMDc0YTMwIGwgICAgREYgLnRleHQJMDAwMDAwMDAwMDAwMDM3MCAgICAgICAgICAgICAgLmhpZGRlbiBfZ19sb2dfZmFsbGJhY2tfaGFuZGxlcgorMDAwMDAwMDAwMDA3NzA4MCBsICAgIERGIC50ZXh0CTAwMDAwMDAwMDAwMDBhMjAgICAgICAgICAgICAgIC5oaWRkZW4gSUFfX2dfbG9nX2RlZmF1bHRfaGFuZGxlcgorMDAwMDAwMDAwMDBhZmM5MCBsICAgIERGIC50ZXh0CTAwMDAwMDAwMDAwMDAwOTAgICAgICAgICAgICAgIC5oaWRkZW4gSUFfX2dfc3RyX2hhc2gKKzAwMDAwMDAwMDAwOTU4MzAgbCAgICBERiAudGV4dAkwMDAwMDAwMDAwMDAwMWYwICAgICAgICAgICAgICAuaGlkZGVuIElBX19nX3NjYW5uZXJfZXJyb3IKKzAwMDAwMDAwMDAwZDRkNjAgbCAgICBERiAudGV4dAkwMDAwMDAwMDAwMDAwMjkwICAgICAgICAgICAgICBnX2lvX3VuaXhfZ2V0X2ZsYWdzCiswMDAwMDAwMDAwMGQ0YTYwIGwgICAgREYgLnRleHQJMDAwMDAwMDAwMDAwMDEyMCAgICAgICAgICAgICAgZ19pb191bml4X3NldF9mbGFncworMDAwMDAwMDAwMDBkNGI4MCBsICAgIERGIC50ZXh0CTAwMDAwMDAwMDAwMDAwMjAgICAgICAgICAgICAgIGdfaW9fdW5peF9mcmVlCiswMDAwMDAwMDAwMGQ0YmEwIGwgICAgREYgLnRleHQJMDAwMDAwMDAwMDAwMDBjMCAgICAgICAgICAgICAgZ19pb191bml4X2NyZWF0ZV93YXRjaAorMDAwMDAwMDAwMDBkNGM2MCBsICAgIERGIC50ZXh0CTAwMDAwMDAwMDAwMDAxMDAgICAgICAgICAgICAgIGdfaW9fdW5peF9jbG9zZQorMDAwMDAwMDAwMDBkNGZmMCBsICAgIERGIC50ZXh0CTAwMDAwMDAwMDAwMDAxZjAgICAgICAgICAgICAgIGdfaW9fdW5peF9zZWVrCiswMDAwMDAwMDAwMGQ1MWUwIGwgICAgREYgLnRleHQJMDAwMDAwMDAwMDAwMDE1MCAgICAgICAgICAgICAgZ19pb191bml4X3dyaXRlCiswMDAwMDAwMDAwMGQ1MzMwIGwgICAgREYgLnRleHQJMDAwMDAwMDAwMDAwMDE4MCAgICAgICAgICAgICAgZ19pb191bml4X3JlYWQKKzAwMDAwMDAwMDAwZDQ4MjAgbCAgICBERiAudGV4dAkwMDAwMDAwMDAwMDAwMDMwICAgICAgICAgICAgICBnX2lvX3VuaXhfZmluYWxpemUKKzAwMDAwMDAwMDAwZDQ5NTAgbCAgICBERiAudGV4dAkwMDAwMDAwMDAwMDAwMTEwICAgICAgICAgICAgICBnX2lvX3VuaXhfZGlzcGF0Y2gKKzAwMDAwMDAwMDAwZDQ4NTAgbCAgICBERiAudGV4dAkwMDAwMDAwMDAwMDAwMDgwICAgICAgICAgICAgICBnX2lvX3VuaXhfY2hlY2sKKzAwMDAwMDAwMDAwZDQ4ZDAgbCAgICBERiAudGV4dAkwMDAwMDAwMDAwMDAwMDgwICAgICAgICAgICAgICBnX2lvX3VuaXhfcHJlcGFyZQorMDAwMDAwMDAwMDBjZDcyMCBsICAgIERGIC50ZXh0CTAwMDAwMDAwMDAwMDAwOTAgICAgICAgICAgICAgIGxhbmd1YWdlX25hbWVzX2NhY2hlX2ZyZWUKKzAwMDAwMDAwMDAwYzg5ZjAgbCAgICBERiAudGV4dAkwMDAwMDAwMDAwMDAwMDkwICAgICAgICAgICAgICBjaGFyc2V0X2NhY2hlX2ZyZWUKKzAwMDAwMDAwMDAwYzIwZjAgbCAgICBERiAudGV4dAkwMDAwMDAwMDAwMDAwMDUwICAgICAgICAgICAgICBpbnRlcnZhbF9jb21wYXJlCiswMDAwMDAwMDAwMGJiMjcwIGwgICAgREYgLnRleHQJMDAwMDAwMDAwMDAwMDgzMCAgICAgICAgICAgICAgZ190aHJlYWRfcG9vbF90aHJlYWRfcHJveHkKKzAwMDAwMDAwMDAwYjMzNjAgbCAgICBERiAudGV4dAkwMDAwMDAwMDAwMDAwMDUwICAgICAgICAgICAgICBnX3RocmVhZF9mYWlsCiswMDAwMDAwMDAwMGIzM2IwIGwgICAgREYgLnRleHQJMDAwMDAwMDAwMDAwMDBjMCAgICAgICAgICAgICAgZ2V0dGltZQorMDAwMDAwMDAwMDBiOGM3MCBsICAgIERGIC50ZXh0CTAwMDAwMDAwMDAwMDA0YTAgICAgICAgICAgICAgIGdfdGhyZWFkX2NsZWFudXAKKzAwMDAwMDAwMDAwYjY3OTAgbCAgICBERiAudGV4dAkwMDAwMDAwMDAwMDAwM2IwICAgICAgICAgICAgICBnX3RocmVhZF9jcmVhdGVfcHJveHkKKzAwMDAwMDAwMDAwYTM3YTAgbCAgICBERiAudGV4dAkwMDAwMDAwMDAwMDAwMzIwICAgICAgICAgICAgICBwcml2YXRlX3RocmVhZF9tZW1vcnlfY2xlYW51cAorMDAwMDAwMDAwMDA5YTdkMCBsICAgIERGIC50ZXh0CTAwMDAwMDAwMDAwMDAwZTAgICAgICAgICAgICAgIGl0ZXJfY29tcGFyZQorMDAwMDAwMDAwMDA5NGMxMCBsICAgIERGIC50ZXh0CTAwMDAwMDAwMDAwMDAwNjAgICAgICAgICAgICAgIGdfc2Nhbm5lcl9kZXN0cm95X3N5bWJvbF90YWJsZV9lbnRyeQorMDAwMDAwMDAwMDA5NWY1MCBsICAgIERGIC50ZXh0CTAwMDAwMDAwMDAwMDAxYjAgICAgICAgICAgICAgIGdfc2Nhbm5lcl9tc2dfaGFuZGxlcgorMDAwMDAwMDAwMDA5NjEwMCBsICAgIERGIC50ZXh0CTAwMDAwMDAwMDAwMDAwYTAgICAgICAgICAgICAgIGdfc2Nhbm5lcl9rZXlfZXF1YWwKKzAwMDAwMDAwMDAwOTMyMTAgbCAgICBERiAudGV4dAkwMDAwMDAwMDAwMDAwMDgwICAgICAgICAgICAgICBnX3NjYW5uZXJfa2V5X2hhc2gKKzAwMDAwMDAwMDAwOTMyOTAgbCAgICBERiAudGV4dAkwMDAwMDAwMDAwMDAwMGMwICAgICAgICAgICAgICBnX3NjYW5uZXJfZm9yZWFjaF9pbnRlcm5hbAorMDAwMDAwMDAwMDA5MjUxMCBsICAgIERGIC50ZXh0CTAwMDAwMDAwMDAwMDA0YTAgICAgICAgICAgICAgIGludGVycG9sYXRlX3JlcGxhY2VtZW50CiswMDAwMDAwMDAwMDhjZDYwIGwgICAgREYgLnRleHQJMDAwMDAwMDAwMDAwMDA1MCAgICAgICAgICAgICAgbGl0ZXJhbF9yZXBsYWNlbWVudAorMDAwMDAwMDAwMDA4Y2QwMCBsICAgIERGIC50ZXh0CTAwMDAwMDAwMDAwMDAwNjAgICAgICAgICAgICAgIGZyZWVfaW50ZXJwb2xhdGlvbl9kYXRhCiswMDAwMDAwMDAwMDg5MTkwIGwgICAgREYgLnRleHQJMDAwMDAwMDAwMDAwMDA0MCAgICAgICAgICAgICAgcmVsYXRpb25fZGVsZXRlX3ZhbHVlX3R1cGxlCiswMDAwMDAwMDAwMDg5YzIwIGwgICAgREYgLnRleHQJMDAwMDAwMDAwMDAwMDAzMCAgICAgICAgICAgICAgZ19yZWxhdGlvbl9mcmVlX2FycmF5CiswMDAwMDAwMDAwMDg5NjkwIGwgICAgREYgLnRleHQJMDAwMDAwMDAwMDAwMDIxMCAgICAgICAgICAgICAgZ19yZWxhdGlvbl9kZWxldGVfdHVwbGUKKzAwMDAwMDAwMDAwODk1YTAgbCAgICBERiAudGV4dAkwMDAwMDAwMDAwMDAwMGYwICAgICAgICAgICAgICBnX3JlbGF0aW9uX3NlbGVjdF90dXBsZQorMDAwMDAwMDAwMDA4OGMzMCBsICAgIERGIC50ZXh0CTAwMDAwMDAwMDAwMDAwYTAgICAgICAgICAgICAgIGdfcmVsYXRpb25fcHJpbnRfaW5kZXgKKzAwMDAwMDAwMDAwODhjZDAgbCAgICBERiAudGV4dAkwMDAwMDAwMDAwMDAwMTcwICAgICAgICAgICAgICBnX3JlbGF0aW9uX3ByaW50X29uZQorMDAwMDAwMDAwMDA4ODlhMCBsICAgIERGIC50ZXh0CTAwMDAwMDAwMDAwMDAwMjAgICAgICAgICAgICAgIHR1cGxlX2hhc2hfMgorMDAwMDAwMDAwMDA4ODk0MCBsICAgIERGIC50ZXh0CTAwMDAwMDAwMDAwMDAwNjAgICAgICAgICAgICAgIHR1cGxlX2VxdWFsXzIKKzAwMDAwMDAwMDAwN2JjNTAgbCAgICBERiAudGV4dAkwMDAwMDAwMDAwMDAwMDUwICAgICAgICAgICAgICBkZ2V0dGV4dF9zd2FwcGVkCiswMDAwMDAwMDAwMDc4N2IwIGwgICAgREYgLnRleHQJMDAwMDAwMDAwMDAwMDA0MCAgICAgICAgICAgICAgZ19ub2RlX2ZpbmRfZnVuYworMDAwMDAwMDAwMDA3MTU3MCBsICAgIERGIC50ZXh0CTAwMDAwMDAwMDAwMDAyMDAgICAgICAgICAgICAgIHByb2ZpbGVyX3RyeV9yZWFsbG9jCiswMDAwMDAwMDAwMDcxNzcwIGwgICAgREYgLnRleHQJMDAwMDAwMDAwMDAwMDE1MCAgICAgICAgICAgICAgcHJvZmlsZXJfdHJ5X21hbGxvYworMDAwMDAwMDAwMDA3MzQxMCBsICAgIERGIC50ZXh0CTAwMDAwMDAwMDAwMDAxOTAgICAgICAgICAgICAgIHByb2ZpbGVyX2NhbGxvYworMDAwMDAwMDAwMDA3MThjMCBsICAgIERGIC50ZXh0CTAwMDAwMDAwMDAwMDAxYzAgICAgICAgICAgICAgIHByb2ZpbGVyX2ZyZWUKKzAwMDAwMDAwMDAwNzMzODAgbCAgICBERiAudGV4dAkwMDAwMDAwMDAwMDAwMDkwICAgICAgICAgICAgICBwcm9maWxlcl9yZWFsbG9jCiswMDAwMDAwMDAwMDczNWEwIGwgICAgREYgLnRleHQJMDAwMDAwMDAwMDAwMDA5MCAgICAgICAgICAgICAgcHJvZmlsZXJfbWFsbG9jCiswMDAwMDAwMDAwMDcxYTgwIGwgICAgREYgLnRleHQJMDAwMDAwMDAwMDAwMDBkMCAgICAgICAgICAgICAgZmFsbGJhY2tfY2FsbG9jCiswMDAwMDAwMDAwMDVhMmIwIGwgICAgREYgLnRleHQJMDAwMDAwMDAwMDAwMDA0MCAgICAgICAgICAgICAgZ19zb3VyY2VfY2FsbGJhY2tfZ2V0CiswMDAwMDAwMDAwMDVkNjUwIGwgICAgREYgLnRleHQJMDAwMDAwMDAwMDAwMDBlMCAgICAgICAgICAgICAgZ19zb3VyY2VfY2FsbGJhY2tfdW5yZWYKKzAwMDAwMDAwMDAwNWEyOTAgbCAgICBERiAudGV4dAkwMDAwMDAwMDAwMDAwMDIwICAgICAgICAgICAgICBnX3NvdXJjZV9jYWxsYmFja19yZWYKKzAwMDAwMDAwMDAwNWEzNDAgbCAgICBERiAudGV4dAkwMDAwMDAwMDAwMDAwMGMwICAgICAgICAgICAgICBnX2lkbGVfZGlzcGF0Y2gKKzAwMDAwMDAwMDAwNWEzMzAgbCAgICBERiAudGV4dAkwMDAwMDAwMDAwMDAwMDEwICAgICAgICAgICAgICBnX2lkbGVfY2hlY2sKKzAwMDAwMDAwMDAwNWEzMTAgbCAgICBERiAudGV4dAkwMDAwMDAwMDAwMDAwMDIwICAgICAgICAgICAgICBnX2lkbGVfcHJlcGFyZQorMDAwMDAwMDAwMDA1YTQwMCBsICAgIERGIC50ZXh0CTAwMDAwMDAwMDAwMDAwYzAgICAgICAgICAgICAgIGdfY2hpbGRfd2F0Y2hfZGlzcGF0Y2gKKzAwMDAwMDAwMDAwNWE1YzAgbCAgICBERiAudGV4dAkwMDAwMDAwMDAwMDAwMDIwICAgICAgICAgICAgICBnX2NoaWxkX3dhdGNoX2NoZWNrCiswMDAwMDAwMDAwMDVhNWUwIGwgICAgREYgLnRleHQJMDAwMDAwMDAwMDAwMDAzMCAgICAgICAgICAgICAgZ19jaGlsZF93YXRjaF9wcmVwYXJlCiswMDAwMDAwMDAwMDYwMzkwIGwgICAgREYgLnRleHQJMDAwMDAwMDAwMDAwMDE2MCAgICAgICAgICAgICAgZ190aW1lb3V0X2Rpc3BhdGNoCiswMDAwMDAwMDAwMDYwNGYwIGwgICAgREYgLnRleHQJMDAwMDAwMDAwMDAwMDBmMCAgICAgICAgICAgICAgZ190aW1lb3V0X2NoZWNrCiswMDAwMDAwMDAwMDYwNWUwIGwgICAgREYgLnRleHQJMDAwMDAwMDAwMDAwMDMxMCAgICAgICAgICAgICAgZ190aW1lb3V0X3ByZXBhcmUKKzAwMDAwMDAwMDAwNWNjMjAgbCAgICBERiAudGV4dAkwMDAwMDAwMDAwMDAwMDMwICAgICAgICAgICAgICBnX21haW5fZGlzcGF0Y2hfZnJlZQorMDAwMDAwMDAwMDA1YjEzMCBsICAgIERGIC50ZXh0CTAwMDAwMDAwMDAwMDAwYjAgICAgICAgICAgICAgIGdfY2hpbGRfd2F0Y2hfc2lnbmFsX2hhbmRsZXIKKzAwMDAwMDAwMDAwNjE5ZjAgbCAgICBERiAudGV4dAkwMDAwMDAwMDAwMDAwMmUwICAgICAgICAgICAgICBjaGlsZF93YXRjaF9oZWxwZXJfdGhyZWFkCiswMDAwMDAwMDAwMDRkODMwIGwgICAgREYgLnRleHQJMDAwMDAwMDAwMDAwMDBiMCAgICAgICAgICAgICAgZ19rZXlfZmlsZV9rZXlfdmFsdWVfcGFpcl9mcmVlCiswMDAwMDAwMDAwMDQxODYwIGwgICAgREYgLnRleHQJMDAwMDAwMDAwMDAwMDA5MCAgICAgICAgICAgICAgZGVmYXVsdF9maW5hbGl6ZV9ob29rCiswMDAwMDAwMDAwMDJiMzcwIGwgICAgREYgLnRleHQJMDAwMDAwMDAwMDAwMDA5MCAgICAgICAgICAgICAgZmlsZW5hbWVfY2hhcnNldF9jYWNoZV9mcmVlCiswMDAwMDAwMDAwMDFmZTgwIGwgICAgREYgLnRleHQJMDAwMDAwMDAwMDAwMDQ0MCAgICAgICAgICAgICAgdGV4dF9yYXdfY2IKKzAwMDAwMDAwMDAwMjA2NjAgbCAgICBERiAudGV4dAkwMDAwMDAwMDAwMDAwNDgwICAgICAgICAgICAgICBlbmRfZWxlbWVudF9yYXdfY2IKKzAwMDAwMDAwMDAwMjYxMTAgbCAgICBERiAudGV4dAkwMDAwMDAwMDAwMDAxY2YwICAgICAgICAgICAgICBzdGFydF9lbGVtZW50X3Jhd19jYgorMDAwMDAwMDAwMDAxZTc5MCBsICAgIERGIC50ZXh0CTAwMDAwMDAwMDAwMDAwNjAgICAgICAgICAgICAgIHBhcnNlX2RhdGFfZnJlZQorMDAwMDAwMDAwMDAxZTZlMCBsICAgIERGIC50ZXh0CTAwMDAwMDAwMDAwMDAwYjAgICAgICAgICAgICAgIGJvb2ttYXJrX2FwcF9pbmZvX2ZyZWUKKzAwMDAwMDAwMDAwMWU5NjAgbCAgICBERiAudGV4dAkwMDAwMDAwMDAwMDAwMjYwICAgICAgICAgICAgICBib29rbWFya19pdGVtX2ZyZWUKKzAwMDAwMDAwMDAwMWMzMDAgbCAgICBERiAudGV4dAkwMDAwMDAwMDAwMDAwMDIwICAgICAgICAgICAgICBzdGFja190cmFjZV9zaWdjaGxkCiswMDAwMDAwMDAwMDE5YTAwIGwgICAgREYgLnRleHQJMDAwMDAwMDAwMDAwMDA3MCAgICAgICAgICAgICAgZ19hc3luY19xdWV1ZV9pbnZlcnRfY29tcGFyZQorMDAwMDAwMDAwMDAxNmJlMCBsICAgIERGIC50ZXh0CTAwMDAwMDAwMDAwMDAwODAgICAgICAgICAgICAgIF9fZG9fanZfcmVnaXN0ZXJfY2xhc3NlcworMDAwMDAwMDAwMDAxNmIyMCBsICAgIERGIC50ZXh0CTAwMDAwMDAwMDAwMDAwYjAgICAgICAgICAgICAgIF9fZG9fZ2xvYmFsX2R0b3JzX2F1eAorMDAwMDAwMDAwMDAxNmFhMCBsICAgIERGIC50ZXh0CTAwMDAwMDAwMDAwMDAwNzAgICAgICAgICAgICAgIGdtb25faW5pdGlhbGl6ZXIKKzAwMDAwMDAwMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAwMDAwMDAwMzcwICBHTElCQ18yLjIgICBnZXRwd3VpZAorMDAwMDAwMDAwMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDAwMDAwMDA1NTAgIEdMSUJDXzIuMiAgIGZyZW9wZW4KKzAwMDAwMDAwMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAwMDAwMDAwMDUwICBHTElCQ18yLjIgICBfX3N0cnRvZF9pbnRlcm5hbAorMDAwMDAwMDAwMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDAwMDAwMDAyNDAgIEdMSUJDXzIuMiAgIGZlb2YKKzAwMDAwMDAwMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAwMDAwMDAwNDUwICBHTElCQ18yLjIgICBsb2NhbGVjb252CiswMDAwMDAwMDAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwMDAwMDAwMDFlMCAgR0xJQkNfMi4yICAgc3RyY3B5CiswMDAwMDAwMDAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwMDAwMDAwMDIwMCAgR0xJQkNfMi4yICAgcmFpc2UKKzAwMDAwMDAwMDAwMDAwMDAgICAgICBETyAqVU5EKgkwMDAwMDAwMDAwMDAwMDA4ICBHTElCQ18yLjIgICBlbnZpcm9uCiswMDAwMDAwMDAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwMDAwMDAwMDAzMCAgR0xJQkNfMi4yICAgZ2V0dWlkCiswMDAwMDAwMDAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwMDAwMDAwMDE4MCAgR0xJQkNfMi4yICAgd2FpdHBpZAorMDAwMDAwMDAwMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDAwMDAwMDAxMDAgIEdMSUJDXzIuMiAgIHN0cmNhc2VjbXAKKzAwMDAwMDAwMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAwMDAwMDAwMDYwICBHTElCQ18yLjIgICBzZWxlY3QKKzAwMDAwMDAwMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAwMDAwMDAwMTEwICBHTElCQ18yLjIgICBjbG9zZWRpcgorMDAwMDAwMDAwMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDAwMDAwMDA0NDAgIEdMSUJDXzIuMiAgIGZ3cml0ZQorMDAwMDAwMDAwMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDAwMDAwMDAxZDAgIEdMSUJDXzIuMiAgIHJld2luZGRpcgorMDAwMDAwMDAwMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDAwMDAwMDAwNjAgIEdMSUJDXzIuMiAgIGNsb3NlCiswMDAwMDAwMDAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwMDAwMDAwMDI4MCAgR0xJQkNfMi4yICAgc3Ryc3RyCiswMDAwMDAwMDAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwMDAwMDAwMDA4MCAgR0xJQkNfMi4yICAgdGltZQorMDAwMDAwMDAwMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDAwMDAwMDA1MjAgIEdMSUJDXzIuMiAgIGZkb3BlbgorMDAwMDAwMDAwMDAwMDAwMCAgdyAgIEQgICpVTkQqCTAwMDAwMDAwMDAwMDAwMDAgICAgICAgICAgICAgIF9fZ21vbl9zdGFydF9fCiswMDAwMDAwMDAwMDAwMDAwICB3ICAgRCAgKlVORCoJMDAwMDAwMDAwMDAwMDAwMCAgICAgICAgICAgICAgX0p2X1JlZ2lzdGVyQ2xhc3NlcworMDAwMDAwMDAwMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDAwMDAwMDAwNTAgIEdMSUJDXzIuMiAgIHdjc3hmcm0KKzAwMDAwMDAwMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAwMDAwMDAwMGMwICBHTElCQ18yLjIgICBzdHJuY2FzZWNtcAorMDAwMDAwMDAwMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDAwMDAwMDAwZDAgIEdMSUJDXzIuMiAgIHJlbW92ZQorMDAwMDAwMDAwMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDAwMDAwMDA0ZjAgIEdMSUJDXzIuMiAgIG1hbGxvYworMDAwMDAwMDAwMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDAwMDAwMDAwODAgIEdMSUJDXzIuMiAgIGV4ZWN2ZQorMDAwMDAwMDAwMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDAwMDAwMDAwYjAgIEdMSUJDXzIuMiAgIGZwcmludGYKKzAwMDAwMDAwMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAwMDAwMDAwMjAwICBHTElCQ18yLjIgICBzZXRwd2VudAorMDAwMDAwMDAwMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDAwMDAwMDAxMDAgIEdMSUJDXzIuMiAgIG5sX2xhbmdpbmZvCiswMDAwMDAwMDAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwMDAwMDAwMDA0MCAgR0xJQkNfMi4yICAgY2hkaXIKKzAwMDAwMDAwMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAwMDAwMDAwMTAwICBHTElCQ18yLjIgICBnZXRob3N0bmFtZQorMDAwMDAwMDAwMDAwMDAwMCAgdyAgIERPICpVTkQqCTAwMDAwMDAwMDAwMDAwMDggIEdMSUJDXzIuMiAgIF9lbnZpcm9uCiswMDAwMDAwMDAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwMDAwMDAwMDA0MCAgR0xJQkNfMi4yICAgcm1kaXIKKzAwMDAwMDAwMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAwMDAwMDAwMzkwICBHTElCQ18yLjIgICBmcHV0YworMDAwMDAwMDAwMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDAwMDAwMDAxNzAgIEdMSUJDXzIuMiAgIHBvbGwKKzAwMDAwMDAwMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAwMDAwMDAwM2UwICBHTElCQ18yLjIgICBnZXRjd2QKKzAwMDAwMDAwMDAwMDAwMDAgICAgICBETyAqVU5EKgkwMDAwMDAwMDAwMDAwMDA4ICBHTElCQ18yLjIgICBzdGRpbgorMDAwMDAwMDAwMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDAwMDAwMDA0ZjAgIEdMSUJDXzIuMiAgIGdldHB3bmFtX3IKKzAwMDAwMDAwMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAwMDAwMDAwNTIwICBHTElCQ18yLjIgICBtZW1tb3ZlCiswMDAwMDAwMDAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwMDAwMDAwMDA1MCAgR0xJQkNfMi4yICAgX19zdHJ0b3VsX2ludGVybmFsCiswMDAwMDAwMDAwMDAwMDAwICAgICAgRE8gKlVORCoJMDAwMDAwMDAwMDAwMDAwOCAgR0xJQkNfMi4yICAgc3Rkb3V0CiswMDAwMDAwMDAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwMDAwMDAwMDA1MCAgR0xJQkNfMi4yICAgc3RybmNtcAorMDAwMDAwMDAwMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDAwMDAwMDAzMjAgIEdMSUJDXzIuMiAgIHZhc3ByaW50ZgorMDAwMDAwMDAwMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDAwMDAwMDAyMTAgIEdMSUJDXzIuMiAgIGVuZHB3ZW50CiswMDAwMDAwMDAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwMDAwMDAwMDFmMCAgR0xJQkNfMi4yICAgZmNudGwKKzAwMDAwMDAwMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAwMDAwMDAwMDQwICBHTElCQ18yLjIgICBkdXAyCiswMDAwMDAwMDAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwMDAwMDAwMDdlMCAgR0xJQkNfMi4yICAgZm9yaworMDAwMDAwMDAwMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDAwMDAwMDAwNTAgIEdMSUJDXzIuMiAgIGdtdGltZQorMDAwMDAwMDAwMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDAwMDAwMDAwNDAgIEdMSUJDXzIuMiAgIHJlYWRsaW5rCiswMDAwMDAwMDAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwMDAwMDAwMDA4MCAgR0xJQkNfMi4zICAgX19jdHlwZV90b3VwcGVyX2xvYworMDAwMDAwMDAwMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDAwMDAwMDAwNjAgIEdMSUJDXzIuMiAgIGxzZWVrCiswMDAwMDAwMDAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwMDAwMDAwMDBjMCAgR0xJQkNfMi4yICAgX19meHN0YXQKKzAwMDAwMDAwMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAwMDAwMDAwMGIwICBHTElCQ18yLjIgICBmc2NhbmYKKzAwMDAwMDAwMDAwMDAwMDAgICAgICBETyAqVU5EKgkwMDAwMDAwMDAwMDAwMDA4ICBHTElCQ18yLjIgICBfX2Vudmlyb24KKzAwMDAwMDAwMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAwMDAwMDAwMDQwICBHTElCQ18yLjIgICBtdW5tYXAKKzAwMDAwMDAwMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAwMDAwMDAwMDUwICBHTElCQ18yLjIgICBzdHJmdGltZQorMDAwMDAwMDAwMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDAwMDAwMDAzYTAgIEdMSUJDXzIuMiAgIGZyZWFkCiswMDAwMDAwMDAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwMDAwMDAwNzA5MCAgR0xJQkNfMi4yICAgdmZwcmludGYKKzAwMDAwMDAwMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAwMDAwMDAwMGIwICBHTElCQ18yLjIgICBzbnByaW50ZgorMDAwMDAwMDAwMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDAwMDAwMDAzMzAgIEdMSUJDXzIuMiAgIGljb252X29wZW4KKzAwMDAwMDAwMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAwMDAwMDAwMDgwICBHTElCQ18yLjMgICBfX2N0eXBlX2JfbG9jCiswMDAwMDAwMDAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwMDAwMDAwMDA2MCAgR0xJQkNfMi4yICAgbmFub3NsZWVwCiswMDAwMDAwMDAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwMDAwMDAwMDA1MCAgR0xJQkNfMi4yICAgcGlwZQorMDAwMDAwMDAwMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDAwMDAwMDAwOTAgIEdMSUJDXzIuMiAgIHN0cnBicmsKKzAwMDAwMDAwMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAwMDAwMDAwNjQwICBHTElCQ18yLjIgICByZWFsbG9jCiswMDAwMDAwMDAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwMDAwMDAwMDI0MCAgR0xJQkNfMi4yICAgZmVycm9yCiswMDAwMDAwMDAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwMDAwMDAwMDRmMCAgR0xJQkNfMi4yICAgZ2V0cHd1aWRfcgorMDAwMDAwMDAwMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDAwMDAwMDAwMzAgIEdMSUJDXzIuMiAgIHN0cmNtcAorMDAwMDAwMDAwMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDAwMDAwMDAwZTAgIEdMSUJDXzIuMiAgIHNldGVudgorMDAwMDAwMDAwMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDAwMDAwMDA2NTAgIEdMSUJDXzIuMiAgIGZjbG9zZQorMDAwMDAwMDAwMDAwMDAwMCAgdyAgIERGICpVTkQqCTAwMDAwMDAwMDAwMDAyMjAgIEdMSUJDXzIuMiAgIF9fY3hhX2ZpbmFsaXplCiswMDAwMDAwMDAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwMDAwMDAwMDAyMCAgR0xJQkNfMi4yICAgX19lcnJub19sb2NhdGlvbgorMDAwMDAwMDAwMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDAwMDAwMDAyYzAgIEdMSUJDXzIuMiAgIGV4aXQKKzAwMDAwMDAwMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAwMDAwMDAwMDYwICBHTElCQ18yLjIgICBvcGVuCiswMDAwMDAwMDAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwMDAwMDAwMDU5MCAgR0xJQkNfMi4yICAgYWJvcnQKKzAwMDAwMDAwMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAwMDAwMDAwNDAwICBHTElCQ18yLjIgICBmcHV0cworMDAwMDAwMDAwMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDAwMDAwMDAwYTAgIEdMSUJDXzIuMiAgIHNpZ2VtcHR5c2V0CiswMDAwMDAwMDAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwMDAwMDAwMDA1MCAgR0xJQkNfMi4yICAgbG9jYWx0aW1lX3IKKzAwMDAwMDAwMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAwMDAwMDAwMGIwICBHTElCQ18yLjIgICBzcHJpbnRmCiswMDAwMDAwMDAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwMDAwMDAwMDJjMCAgR0xJQkNfMi4yICAgdW5zZXRlbnYKKzAwMDAwMDAwMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAwMDAwMDAwMDQwICBHTElCQ18yLjIgICBtbWFwCiswMDAwMDAwMDAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwMDAwMDAwMDA0MCAgR0xJQkNfMi4yICAgbWtkaXIKKzAwMDAwMDAwMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAwMDAwMDAwMDYwICBHTElCQ18yLjIgICBjcmVhdAorMDAwMDAwMDAwMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDAwMDAwMDAwZDAgIEdMSUJDXzIuMiAgIGdldHBpZAorMDAwMDAwMDAwMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDAwMDAwMDAxNzAgIEdMSUJDXzIuMiAgIHN0cmVycm9yCiswMDAwMDAwMDAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwMDAwMDAwMDIyMCAgR0xJQkNfMi4yICAgbWVtY21wCiswMDAwMDAwMDAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwMDAwMDAwMDMyMCAgR0xJQkNfMi4yICAgcXNvcnQKKzAwMDAwMDAwMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAwMDAwMDAwYzcwICBHTElCQ18yLjIgICBzeXNjb25mCiswMDAwMDAwMDAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwMDAwMDAwMDE5MCAgR0xJQkNfMi4yICAgYnNlYXJjaAorMDAwMDAwMDAwMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDAwMDAwMDAxYjAgIEdMSUJDXzIuMiAgIHNpZ25hbAorMDAwMDAwMDAwMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDAwMDAwMDAwYzAgIEdMSUJDXzIuMiAgIF9feHN0YXQKKzAwMDAwMDAwMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAwMDAwMDAwMGMwICBHTElCQ18yLjIgICBfX2x4c3RhdAorMDAwMDAwMDAwMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDAwMDAwMDAwNTAgIEdMSUJDXzIuMiAgIHdjc2NvbGwKKzAwMDAwMDAwMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAwMDAwMDAwMTYwICBHTElCQ18yLjIgICB2c3ByaW50ZgorMDAwMDAwMDAwMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDAwMDAwMDAxMzAgIEdMSUJDXzIuMiAgIHZzbnByaW50ZgorMDAwMDAwMDAwMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDAwMDAwMDAzZTAgIEdMSUJDXzIuMiAgIHN0cm5jcHkKKzAwMDAwMDAwMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAwMDAwMDAwMmUwICBHTElCQ18yLjIgICBnZXRlbnYKKzAwMDAwMDAwMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAwMDAwMDAwMTIwICBHTElCQ18yLjIgICBzdHJjaHIKKzAwMDAwMDAwMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAwMDAwMDAwOGMwICBHTElCQ18yLjIgICBjYWxsb2MKKzAwMDAwMDAwMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAwMDAwMDAwMGEwICBHTElCQ18yLjIgICBfX2N4YV9hdGV4aXQKKzAwMDAwMDAwMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAwMDAwMDAwMDYwICBHTElCQ18yLjIgICB3cml0ZQorMDAwMDAwMDAwMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDAwMDAwMDAwNDAgIEdMSUJDXzIuMiAgIHN0cGNweQorMDAwMDAwMDAwMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDAwMDAwMDA0NTAgIEdMSUJDXzIuMiAgIGZnZXRzCiswMDAwMDAwMDAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwMDAwMDAwMDA0MCAgR0xJQkNfMi4yICAgcmVuYW1lCiswMDAwMDAwMDAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwMDAwMDAwMDMxMCAgR0xJQkNfMi4yICAgX191ZmxvdworMDAwMDAwMDAwMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDAwMDAwMDA0MTAgIEdMSUJDXzIuMiAgIG1lbXNldAorMDAwMDAwMDAwMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDAwMDAwMDAwNTAgIEdMSUJDXzIuMiAgIGZvcGVuCiswMDAwMDAwMDAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwMDAwMDAwMDA1MCAgR0xJQkNfMi4yICAgX19zdHJ0b2xfaW50ZXJuYWwKKzAwMDAwMDAwMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAwMDAwMDAwMDQwICBHTElCQ18yLjIgICB1bmxpbmsKKzAwMDAwMDAwMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAwMDAwMDAwNDMwICBHTElCQ18yLjIgICBpY29udgorMDAwMDAwMDAwMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDAwMDAwMDAxYjAgIEdMSUJDXzIuMiAgIHBlcnJvcgorMDAwMDAwMDAwMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDAwMDAwMDA4ODAgIEdMSUJDXzIuMiAgIGV4ZWN2cAorMDAwMDAwMDAwMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDAwMDAwMDAzMzAgIEdMSUJDXzIuMiAgIHVuZ2V0YworMDAwMDAwMDAwMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDAwMDAwMDAxNDAgIEdMSUJDXzIuMiAgIF9leGl0CiswMDAwMDAwMDAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwMDAwMDAwMDA4MCAgR0xJQkNfMi4zICAgX19jdHlwZV90b2xvd2VyX2xvYworMDAwMDAwMDAwMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDAwMDAwMDAwNzAgIEdMSUJDXzIuMiAgIGJpbmR0ZXh0ZG9tYWluCiswMDAwMDAwMDAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwMDAwMDAwMDA0MCAgR0xJQkNfMi4yICAgY2htb2QKKzAwMDAwMDAwMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAwMDAwMDAwMDYwICBHTElCQ18yLjIgICB0aW1lZ20KKzAwMDAwMDAwMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAwMDAwMDAwMDYwICBHTElCQ18yLjIgICByZWFkCiswMDAwMDAwMDAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwMDAwMDAwMDMwMCAgR0xJQkNfMi4yICAgcmVhZGRpcgorMDAwMDAwMDAwMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDAwMDAwMDAzMDAgIEdMSUJDXzIuMiAgIGZyZWUKKzAwMDAwMDAwMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAwMDAwMDAwMDYwICBHTElCQ18yLjIgICBkY2dldHRleHQKKzAwMDAwMDAwMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAwMDAwMDAwMGUwICBHTElCQ18yLjIgICBzdHJyY2hyCiswMDAwMDAwMDAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwMDAwMDAwMDA0MCAgR0xJQkNfMi4yICAgYWNjZXNzCiswMDAwMDAwMDAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwMDAwMDAwMDM5MCAgR0xJQkNfMi4yICAgZmZsdXNoCiswMDAwMDAwMDAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwMDAwMDAwMDA3MCAgR0xJQkNfMi4yICAgYmluZF90ZXh0ZG9tYWluX2NvZGVzZXQKKzAwMDAwMDAwMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAwMDAwMDAwMWMwICBHTElCQ18yLjIgICBvcGVuZGlyCiswMDAwMDAwMDAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwMDAwMDAwMDUzMCAgR0xJQkNfMi4yICAgc3Ryc2lnbmFsCiswMDAwMDAwMDAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwMDAwMDAwMDA3MCAgR0xJQkNfMi4yICAgaXNhdHR5CiswMDAwMDAwMDAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwMDAwMDAwMDEzMCAgR0xJQkNfMi4yICAgcG9zaXhfbWVtYWxpZ24KKzAwMDAwMDAwMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAwMDAwMDAwMDQwICBHTElCQ18yLjIgICBnZXR0aW1lb2ZkYXkKKzAwMDAwMDAwMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAwMDAwMDAwMGEwICBHTElCQ18yLjIgICBpY29udl9jbG9zZQorMDAwMDAwMDAwMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDAwMDAwMDAwNDAgIEdMSUJDXzIuMiAgIGR1cAorMDAwMDAwMDAwMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDAwMDAwMDA1NDAgIEdMSUJDXzIuMiAgIG1lbWNweQorMDAwMDAwMDAwMDAwMDAwMCAgICAgIERPICpVTkQqCTAwMDAwMDAwMDAwMDAwMDggIEdMSUJDXzIuMiAgIHN0ZGVycgorMDAwMDAwMDAwMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDAwMDAwMDAwMzAgIEdMSUJDXzIuMiAgIGdldHBwaWQKKzAwMDAwMDAwMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAwMDAwMDAwMTAwICBHTElCQ18yLjIgICBzdHJsZW4KKzAwMDAwMDAwMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAwMDAwMDAwMDYwICBHTElCQ18yLjIgICBleGVjdgorMDAwMDAwMDAwMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDAwMDAwMDBmNTAgIEdMSUJDXzIuMiAgIHNldGxvY2FsZQorMDAwMDAwMDAwMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDAwMDAwMDAwNjAgIEdMSUJDXzIuMiAgIHNpZ2FjdGlvbgorMDAwMDAwMDAwMDA5MDllMCBnICAgIERGIC50ZXh0CTAwMDAwMDAwMDAwMDAzMTAgIEJhc2UgICAgICAgIGdfcmVnZXhfbWF0Y2hfZnVsbAorMDAwMDAwMDAwMDAzODQwMCBnICAgIERGIC50ZXh0CTAwMDAwMDAwMDAwMDA2NjAgIEJhc2UgICAgICAgIGdfZGF0ZV9zdHJmdGltZQorMDAwMDAwMDAwMDAxNzUzMCBnICAgIERGIC50ZXh0CTAwMDAwMDAwMDAwMDAwZjAgIEJhc2UgICAgICAgIGdfcHRyX2FycmF5X2FkZAorMDAwMDAwMDAwMDBjNjkzMCBnICAgIERGIC50ZXh0CTAwMDAwMDAwMDAwMDAxZTAgIEJhc2UgICAgICAgIGdfdXRmOF9zdHJyZXZlcnNlCiswMDAwMDAwMDAwMDM5NjUwIGcgICAgREYgLnRleHQJMDAwMDAwMDAwMDAwMDAzMCAgQmFzZSAgICAgICAgZ19kYXRlX3NldF90aW1lCiswMDAwMDAwMDAwMGNhYjEwIGcgICAgREYgLnRleHQJMDAwMDAwMDAwMDAwMDcxMCAgQmFzZSAgICAgICAgZ191dGY4X2NvbGxhdGVfa2V5X2Zvcl9maWxlbmFtZQorMDAwMDAwMDAwMDBjMjZmMCBnICAgIERGIC50ZXh0CTAwMDAwMDAwMDAwMDAxNjAgIEJhc2UgICAgICAgIGdfdW5pY2hhcl90eXBlCiswMDAwMDAwMDAwMDJhOTMwIGcgICAgREYgLnRleHQJMDAwMDAwMDAwMDAwMDQzMCAgQmFzZSAgICAgICAgZ191cmlfbGlzdF9leHRyYWN0X3VyaXMKKzAwMDAwMDAwMDAwY2Y4NTAgZyAgICBERiAudGV4dAkwMDAwMDAwMDAwMDAwMzUwICBCYXNlICAgICAgICBnX2dldF9zeXN0ZW1fZGF0YV9kaXJzCiswMDAwMDAwMDAwMDhiNDUwIGcgICAgREYgLnRleHQJMDAwMDAwMDAwMDAwMDA3MCAgQmFzZSAgICAgICAgZ19yYW5kX25ld193aXRoX3NlZWRfYXJyYXkKKzAwMDAwMDAwMDAwYTc0MTAgZyAgICBERiAudGV4dAkwMDAwMDAwMDAwMDAwMDgwICBCYXNlICAgICAgICBnX3NsaXN0X2NvbmNhdAorMDAwMDAwMDAwMDAzM2M1MCBnICAgIERGIC50ZXh0CTAwMDAwMDAwMDAwMDAwMjAgIEJhc2UgICAgICAgIGdfZGF0ZV92YWxpZF93ZWVrZGF5CiswMDAwMDAwMDAwMDNmMDkwIGcgICAgREYgLnRleHQJMDAwMDAwMDAwMDAwMDE5MCAgQmFzZSAgICAgICAgZ19oYXNoX3RhYmxlX2dldF92YWx1ZXMKKzAwMDAwMDAwMDAwNTg3MTAgZyAgICBERiAudGV4dAkwMDAwMDAwMDAwMDAwMDEwICBCYXNlICAgICAgICBnX2xpc3RfcG9wX2FsbG9jYXRvcgorMDAwMDAwMDAwMDA4YzlhMCBnICAgIERGIC50ZXh0CTAwMDAwMDAwMDAwMDAwYjAgIEJhc2UgICAgICAgIGdfbWF0Y2hfaW5mb19pc19wYXJ0aWFsX21hdGNoCiswMDAwMDAwMDAwMGQzNjIwIGcgICAgREYgLnRleHQJMDAwMDAwMDAwMDAwMDI5MCAgQmFzZSAgICAgICAgZ19nZXRfdXNlcl9uYW1lCiswMDAwMDAwMDAwMGE4NGQwIGcgICAgREYgLnRleHQJMDAwMDAwMDAwMDAwMDAzMCAgQmFzZSAgICAgICAgZ19zbGlzdF9mcmVlXzEKKzAwMDAwMDAwMDAwY2NjYzAgZyAgICBERiAudGV4dAkwMDAwMDAwMDAwMDAwMmIwICBCYXNlICAgICAgICBnX3VuaWNvZGVfY2Fub25pY2FsX2RlY29tcG9zaXRpb24KKzAwMDAwMDAwMDAwNjU2ZTAgZyAgICBERiAudGV4dAkwMDAwMDAwMDAwMDAwNTUwICBCYXNlICAgICAgICBnX21haW5fY29udGV4dF91bnJlZgorMDAwMDAwMDAwMDBkNDJiMCBnICAgIERGIC50ZXh0CTAwMDAwMDAwMDAwMDAxMDAgIEJhc2UgICAgICAgIGdfdnNwcmludGYKKzAwMDAwMDAwMDAwNzlmOTAgZyAgICBERiAudGV4dAkwMDAwMDAwMDAwMDAwMGUwICBCYXNlICAgICAgICBnX25vZGVfZ2V0X3Jvb3QKKzAwMDAwMDAwMDAwMTZkZjAgZyAgICBERiAudGV4dAkwMDAwMDAwMDAwMDAwMTMwICBCYXNlICAgICAgICBnX3B0cl9hcnJheV9yZW1vdmVfaW5kZXhfZmFzdAorMDAwMDAwMDAwMDA3YjNiMCBnICAgIERGIC50ZXh0CTAwMDAwMDAwMDAwMDAwODAgIEJhc2UgICAgICAgIGdfb3B0aW9uX2dyb3VwX3NldF9wYXJzZV9ob29rcworMDAwMDAwMDAwMDBiMmM4MCBnICAgIERGIC50ZXh0CTAwMDAwMDAwMDAwMDAxNzAgIEJhc2UgICAgICAgIGdfc3RyaW5nX2NodW5rX2NsZWFyCiswMDAwMDAwMDAwMDIxNjIwIGcgICAgREYgLnRleHQJMDAwMDAwMDAwMDAwMDA0MCAgQmFzZSAgICAgICAgZ19ib29rbWFya19maWxlX2Vycm9yX3F1YXJrCiswMDAwMDAwMDAwMDg4NDkwIGcgICAgREYgLnRleHQJMDAwMDAwMDAwMDAwMDExMCAgQmFzZSAgICAgICAgZ19xdWV1ZV9zb3J0CiswMDAwMDAwMDAwMGM3YzAwIGcgICAgREYgLnRleHQJMDAwMDAwMDAwMDAwMDUzMCAgQmFzZSAgICAgICAgZ191dGYxNl90b191dGY4CiswMDAwMDAwMDAwMDE5N2UwIGcgICAgREYgLnRleHQJMDAwMDAwMDAwMDAwMDA1MCAgQmFzZSAgICAgICAgZ19ieXRlX2FycmF5X3ByZXBlbmQKKzAwMDAwMDAwMDAwNTM1MTAgZyAgICBERiAudGV4dAkwMDAwMDAwMDAwMDAwNTgwICBCYXNlICAgICAgICBnX2tleV9maWxlX2dldF9zdHJpbmdfbGlzdAorMDAwMDAwMDAwMDE2OWE0MCBnICAgIERPIC5zZGF0YQkwMDAwMDAwMDAwMDAwMDA4ICBCYXNlICAgICAgICBnbGliX21lbV9wcm9maWxlcl90YWJsZQorMDAwMDAwMDAwMDBhODc2MCBnICAgIERGIC50ZXh0CTAwMDAwMDAwMDAwMDAwZDAgIEJhc2UgICAgICAgIGdfc2xpc3RfcmVtb3ZlX2xpbmsKKzAwMDAwMDAwMDAwYTgxMzAgZyAgICBERiAudGV4dAkwMDAwMDAwMDAwMDAwMDYwICBCYXNlICAgICAgICBnX3NsaXN0X3ByZXBlbmQKKzAwMDAwMDAwMDAwNjNiZjAgZyAgICBERiAudGV4dAkwMDAwMDAwMDAwMDAwMzkwICBCYXNlICAgICAgICBnX21haW5fY29udGV4dF9maW5kX3NvdXJjZV9ieV91c2VyX2RhdGEKKzAwMDAwMDAwMDAwNWM1NDAgZyAgICBERiAudGV4dAkwMDAwMDAwMDAwMDAwMGQwICBCYXNlICAgICAgICBnX21haW5fbG9vcF9pc19ydW5uaW5nCiswMDAwMDAwMDAwMDNjNWUwIGcgICAgREYgLnRleHQJMDAwMDAwMDAwMDAwMDAzMCAgQmFzZSAgICAgICAgZ19ta3N0ZW1wCiswMDAwMDAwMDAwMGIwNDQwIGcgICAgREYgLnRleHQJMDAwMDAwMDAwMDAwMDE0MCAgQmFzZSAgICAgICAgZ19zdHJpbmdfc2V0X3NpemUKKzAwMDAwMDAwMDAwODgxNjAgZyAgICBERiAudGV4dAkwMDAwMDAwMDAwMDAwMTEwICBCYXNlICAgICAgICBnX3F1ZXVlX2luc2VydF9hZnRlcgorMDAwMDAwMDAwMDA3MzhhMCBnICAgIERGIC50ZXh0CTAwMDAwMDAwMDAwMDAxNTAgIEJhc2UgICAgICAgIGdfbG9nX3NldF9kZWZhdWx0X2hhbmRsZXIKKzAwMDAwMDAwMDAwNTljMzAgZyAgICBERiAudGV4dAkwMDAwMDAwMDAwMDAwMGIwICBCYXNlICAgICAgICBnX2xpc3RfZGVsZXRlX2xpbmsKKzAwMDAwMDAwMDAwNThhMTAgZyAgICBERiAudGV4dAkwMDAwMDAwMDAwMDAwMDkwICBCYXNlICAgICAgICBnX2xpc3RfcG9zaXRpb24KKzAwMDAwMDAwMDAwNTkxMTAgZyAgICBERiAudGV4dAkwMDAwMDAwMDAwMDAwMTAwICBCYXNlICAgICAgICBnX2xpc3RfZmluZF9jdXN0b20KKzAwMDAwMDAwMDAwYjA5OTAgZyAgICBERiAudGV4dAkwMDAwMDAwMDAwMDAwMGYwICBCYXNlICAgICAgICBnX3N0cmluZ19hc2NpaV9kb3duCiswMDAwMDAwMDAwMDYyOWEwIGcgICAgREYgLnRleHQJMDAwMDAwMDAwMDAwMDEzMCAgQmFzZSAgICAgICAgZ19tYWluX2xvb3BfbmV3CiswMDAwMDAwMDAwMDVhY2IwIGcgICAgREYgLnRleHQJMDAwMDAwMDAwMDAwMDBiMCAgQmFzZSAgICAgICAgZ19zb3VyY2VfZ2V0X2NvbnRleHQKKzAwMDAwMDAwMDAwMzNjMDAgZyAgICBERiAudGV4dAkwMDAwMDAwMDAwMDAwMDIwICBCYXNlICAgICAgICBnX2RhdGVfdmFsaWRfeWVhcgorMDAwMDAwMDAwMDBhN2Q5MCBnICAgIERGIC50ZXh0CTAwMDAwMDAwMDAwMDAwMzAgIEJhc2UgICAgICAgIGdfc2xpc3RfaW5zZXJ0X3NvcnRlZAorMDAwMDAwMDAwMDA5ZjZhMCBnICAgIERGIC50ZXh0CTAwMDAwMDAwMDAwMDBmMjAgIEJhc2UgICAgICAgIGdfc2hlbGxfcGFyc2VfYXJndgorMDAwMDAwMDAwMDBiY2EzMCBnICAgIERGIC50ZXh0CTAwMDAwMDAwMDAwMDAwZjAgIEJhc2UgICAgICAgIGdfdGltZXJfc3RvcAorMDAwMDAwMDAwMDA5OWVjMCBnICAgIERGIC50ZXh0CTAwMDAwMDAwMDAwMDAxMjAgIEJhc2UgICAgICAgIGdfc2Nhbm5lcl9wZWVrX25leHRfdG9rZW4KKzAwMDAwMDAwMDAwMmQ1YTAgZyAgICBERiAudGV4dAkwMDAwMDAwMDAwMDAwMGYwICBCYXNlICAgICAgICBnX2ZpbGVuYW1lX2Rpc3BsYXlfYmFzZW5hbWUKKzAwMDAwMDAwMDAwMzA1YzAgZyAgICBERiAudGV4dAkwMDAwMDAwMDAwMDAwNTgwICBCYXNlICAgICAgICBnX2RhdGFzZXRfaWRfZ2V0X2RhdGEKKzAwMDAwMDAwMDAwNjRhNTAgZyAgICBERiAudGV4dAkwMDAwMDAwMDAwMDAwNDgwICBCYXNlICAgICAgICBnX3NvdXJjZV9hdHRhY2gKKzAwMDAwMDAwMDAwM2U1ZDAgZyAgICBERiAudGV4dAkwMDAwMDAwMDAwMDAwMzYwICBCYXNlICAgICAgICBnX21rZGlyX3dpdGhfcGFyZW50cworMDAwMDAwMDAwMDAxZGU1MCBnICAgIERGIC50ZXh0CTAwMDAwMDAwMDAwMDAxMTAgIEJhc2UgICAgICAgIGdfYm9va21hcmtfZmlsZV9oYXNfaXRlbQorMDAwMDAwMDAwMDA2NTA1MCBnICAgIERGIC50ZXh0CTAwMDAwMDAwMDAwMDAxYzAgIEJhc2UgICAgICAgIGdfY2hpbGRfd2F0Y2hfYWRkX2Z1bGwKKzAwMDAwMDAwMDAwYTg4MzAgZyAgICBERiAudGV4dAkwMDAwMDAwMDAwMDAwMDUwICBCYXNlICAgICAgICBnX2ZyZW9wZW4KKzAwMDAwMDAwMDAwYTg3MzAgZyAgICBERiAudGV4dAkwMDAwMDAwMDAwMDAwMDMwICBCYXNlICAgICAgICBnX3NsaXN0X2FsbG9jCiswMDAwMDAwMDAwMDU0YTYwIGcgICAgREYgLnRleHQJMDAwMDAwMDAwMDAwMDQ4MCAgQmFzZSAgICAgICAgZ19rZXlfZmlsZV9nZXRfbG9jYWxlX3N0cmluZworMDAwMDAwMDAwMDA5NGZkMCBnICAgIERGIC50ZXh0CTAwMDAwMDAwMDAwMDAxYjAgIEJhc2UgICAgICAgIGdfc2Nhbm5lcl9pbnB1dF9maWxlCiswMDAwMDAwMDAwMDkzNjYwIGcgICAgREYgLnRleHQJMDAwMDAwMDAwMDAwMDBhMCAgQmFzZSAgICAgICAgZ19zY2FubmVyX3NldF9zY29wZQorMDAwMDAwMDAwMDAyMjc4MCBnICAgIERGIC50ZXh0CTAwMDAwMDAwMDAwMDAxODAgIEJhc2UgICAgICAgIGdfYm9va21hcmtfZmlsZV9nZXRfdmlzaXRlZAorMDAwMDAwMDAwMDAyZjI4MCBnICAgIERGIC50ZXh0CTAwMDAwMDAwMDAwMDAzYTAgIEJhc2UgICAgICAgIGdfZGF0YWxpc3RfaWRfZ2V0X2RhdGEKKzAwMDAwMDAwMDAwNDAwMDAgZyAgICBERiAudGV4dAkwMDAwMDAwMDAwMDAwMGUwICBCYXNlICAgICAgICBnX2hhc2hfdGFibGVfbmV3X2Z1bGwKKzAwMDAwMDAwMDAwZDJmNDAgZyAgICBERiAudGV4dAkwMDAwMDAwMDAwMDAwMjYwICBCYXNlICAgICAgICBnX2dldF91c2VyX2NvbmZpZ19kaXIKKzAwMDAwMDAwMDAwNTk3MDAgZyAgICBERiAudGV4dAkwMDAwMDAwMDAwMDAwMjgwICBCYXNlICAgICAgICBnX2xpc3RfaW5zZXJ0X2JlZm9yZQorMDAwMDAwMDAwMDA3OTI3MCBnICAgIERGIC50ZXh0CTAwMDAwMDAwMDAwMDAwZjAgIEJhc2UgICAgICAgIGdfbm9kZV9uX2NoaWxkcmVuCiswMDAwMDAwMDAwMGQwNjgwIGcgICAgREYgLnRleHQJMDAwMDAwMDAwMDAwMDQ2MCAgQmFzZSAgICAgICAgZ19nZXRfdXNlcl9jYWNoZV9kaXIKKzAwMDAwMDAwMDAwNmE1YTAgZyAgICBERiAudGV4dAkwMDAwMDAwMDAwMDAwMGQwICBCYXNlICAgICAgICBnX21hcmt1cF9wYXJzZV9jb250ZXh0X2dldF9lbGVtZW50CiswMDAwMDAwMDAwMGFlZmUwIGcgICAgREYgLnRleHQJMDAwMDAwMDAwMDAwMDBhMCAgQmFzZSAgICAgICAgZ19zdHJuZHVwCisKKwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3QvMjAwX0Rwa2dfU2hsaWJzL29iamR1bXAubGliYzYtMi4zIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3QvMjAwX0Rwa2dfU2hsaWJzL29iamR1bXAubGliYzYtMi4zCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmU3NjEwNTEKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvdC8yMDBfRHBrZ19TaGxpYnMvb2JqZHVtcC5saWJjNi0yLjMKQEAgLTAsMCArMSwyMjc2IEBACisKKy9saWIvbGliYy5zby42OiAgICAgZmlsZSBmb3JtYXQgZWxmMzItaTM4NgorYXJjaGl0ZWN0dXJlOiBpMzg2LCBmbGFncyAweDAwMDAwMTUwOgorSEFTX1NZTVMsIERZTkFNSUMsIERfUEFHRUQKK3N0YXJ0IGFkZHJlc3MgMHgwMDAxNjFiMAorCitQcm9ncmFtIEhlYWRlcjoKKyAgICBQSERSIG9mZiAgICAweDAwMDAwMDM0IHZhZGRyIDB4MDAwMDAwMzQgcGFkZHIgMHgwMDAwMDAzNCBhbGlnbiAyKioyCisgICAgICAgICBmaWxlc3ogMHgwMDAwMDEyMCBtZW1zeiAweDAwMDAwMTIwIGZsYWdzIHIteAorICBJTlRFUlAgb2ZmICAgIDB4MDAxMGY0YTAgdmFkZHIgMHgwMDEwZjRhMCBwYWRkciAweDAwMTBmNGEwIGFsaWduIDIqKjAKKyAgICAgICAgIGZpbGVzeiAweDAwMDAwMDEzIG1lbXN6IDB4MDAwMDAwMTMgZmxhZ3Mgci0tCisgICAgTE9BRCBvZmYgICAgMHgwMDAwMDAwMCB2YWRkciAweDAwMDAwMDAwIHBhZGRyIDB4MDAwMDAwMDAgYWxpZ24gMioqMTIKKyAgICAgICAgIGZpbGVzeiAweDAwMTEwMjA4IG1lbXN6IDB4MDAxMTAyMDggZmxhZ3Mgci14CisgICAgTE9BRCBvZmYgICAgMHgwMDExMGMwYyB2YWRkciAweDAwMTExYzBjIHBhZGRyIDB4MDAxMTFjMGMgYWxpZ24gMioqMTIKKyAgICAgICAgIGZpbGVzeiAweDAwMDA2MzAwIG1lbXN6IDB4MDAwMDhkMjggZmxhZ3MgcnctCisgRFlOQU1JQyBvZmYgICAgMHgwMDExNWQzYyB2YWRkciAweDAwMTE2ZDNjIHBhZGRyIDB4MDAxMTZkM2MgYWxpZ24gMioqMgorICAgICAgICAgZmlsZXN6IDB4MDAwMDAwZTAgbWVtc3ogMHgwMDAwMDBlMCBmbGFncyBydy0KKyAgICBOT1RFIG9mZiAgICAweDAwMDAwMTU0IHZhZGRyIDB4MDAwMDAxNTQgcGFkZHIgMHgwMDAwMDE1NCBhbGlnbiAyKioyCisgICAgICAgICBmaWxlc3ogMHgwMDAwMDAyMCBtZW1zeiAweDAwMDAwMDIwIGZsYWdzIHItLQorRUhfRlJBTUUgb2ZmICAgIDB4MDAxMGY0YjQgdmFkZHIgMHgwMDEwZjRiNCBwYWRkciAweDAwMTBmNGI0IGFsaWduIDIqKjIKKyAgICAgICAgIGZpbGVzeiAweDAwMDAwZDU0IG1lbXN6IDB4MDAwMDBkNTQgZmxhZ3Mgci0tCisgICBTVEFDSyBvZmYgICAgMHgwMDAwMDAwMCB2YWRkciAweDAwMDAwMDAwIHBhZGRyIDB4MDAwMDAwMDAgYWxpZ24gMioqMgorICAgICAgICAgZmlsZXN6IDB4MDAwMDAwMDAgbWVtc3ogMHgwMDAwMDAwMCBmbGFncyBydy0KKyAgIFJFTFJPIG9mZiAgICAweDAwMTEwYzBjIHZhZGRyIDB4MDAxMTFjMGMgcGFkZHIgMHgwMDExMWMwYyBhbGlnbiAyKio1CisgICAgICAgICBmaWxlc3ogMHgwMDAwNTIwMCBtZW1zeiAweDAwMDA1MjAwIGZsYWdzIHItLQorCitEeW5hbWljIFNlY3Rpb246CisgIE5FRURFRCAgICAgIGxkLWxpbnV4LnNvLjIKKyAgU09OQU1FICAgICAgbGliYy5zby42CisgIElOSVQgICAgICAgIDB4MTUyODAKKyAgRklOSV9BUlJBWSAgMHgxMTUyZDQKKyAgRklOSV9BUlJBWVNaIDB4NAorICBIQVNIICAgICAgICAweDE3NAorICBTVFJUQUIgICAgICAweGJiYzgKKyAgU1lNVEFCICAgICAgMHgzMzg4CisgIFNUUlNaICAgICAgIDB4NTMwZgorICBTWU1FTlQgICAgICAweDEwCisgIFBMVEdPVCAgICAgIDB4MTE2ZmY0CisgIFBMVFJFTFNaICAgIDB4YTgKKyAgUExUUkVMICAgICAgMHgxMQorICBKTVBSRUwgICAgICAweDE0ZmU4CisgIFJFTCAgICAgICAgIDB4MTIyYTAKKyAgUkVMU1ogICAgICAgMHgyZDQ4CisgIFJFTEVOVCAgICAgIDB4OAorICBWRVJERUYgICAgICAweDExZmUwCisgIFZFUkRFRk5VTSAgIDB4MTIKKyAgVkVSTkVFRCAgICAgMHgxMjI1MAorICBWRVJORUVETlVNICAweDEKKyAgVkVSU1lNICAgICAgMHgxMGVkOAorICBSRUxDT1VOVCAgICAweDU0OAorCitWZXJzaW9uIGRlZmluaXRpb25zOgorMSAweDAxIDB4MDg2NWY0ZTYgbGliYy5zby42CisyIDB4MDAgMHgwZDY5NjkxMCBHTElCQ18yLjAKKzMgMHgwMCAweDBkNjk2OTExIEdMSUJDXzIuMQorCUdMSUJDXzIuMCAKKzQgMHgwMCAweDA5NjkxZjcxIEdMSUJDXzIuMS4xCisJR0xJQkNfMi4xIAorNSAweDAwIDB4MDk2OTFmNzIgR0xJQkNfMi4xLjIKKwlHTElCQ18yLjEuMSAKKzYgMHgwMCAweDA5NjkxZjczIEdMSUJDXzIuMS4zCisJR0xJQkNfMi4xLjIgCis3IDB4MDAgMHgwZDY5NjkxMiBHTElCQ18yLjIKKwlHTElCQ18yLjEuMyAKKzggMHgwMCAweDA5NjkxYTcxIEdMSUJDXzIuMi4xCisJR0xJQkNfMi4yIAorOSAweDAwIDB4MDk2OTFhNzIgR0xJQkNfMi4yLjIKKwlHTElCQ18yLjIuMSAKKzEwIDB4MDAgMHgwOTY5MWE3MyBHTElCQ18yLjIuMworCUdMSUJDXzIuMi4yIAorMTEgMHgwMCAweDA5NjkxYTc0IEdMSUJDXzIuMi40CisJR0xJQkNfMi4yLjMgCisxMiAweDAwIDB4MDk2OTFhNzYgR0xJQkNfMi4yLjYKKwlHTElCQ18yLjIuNCAKKzEzIDB4MDAgMHgwZDY5NjkxMyBHTElCQ18yLjMKKwlHTElCQ18yLjIuNiAKKzE0IDB4MDAgMHgwOTY5MTk3MiBHTElCQ18yLjMuMgorCUdMSUJDXzIuMyAKKzE1IDB4MDAgMHgwOTY5MTk3MyBHTElCQ18yLjMuMworCUdMSUJDXzIuMy4yIAorMTYgMHgwMCAweDA5NjkxOTc0IEdMSUJDXzIuMy40CisJR0xJQkNfMi4zLjMgCisxNyAweDAwIDB4MDk2M2NmODUgR0xJQkNfUFJJVkFURQorCUdMSUJDXzIuMy40IAorMTggMHgwMCAweDBiNzkyNjUwIEdDQ18zLjAKKworVmVyc2lvbiBSZWZlcmVuY2VzOgorICByZXF1aXJlZCBmcm9tIGxkLWxpbnV4LnNvLjI6CisgICAgMHgwZDY5NjkxMSAweDAwIDIyIEdMSUJDXzIuMQorICAgIDB4MGQ2OTY5MTMgMHgwMCAyMSBHTElCQ18yLjMKKyAgICAweDA5NjNjZjg1IDB4MDAgMjAgR0xJQkNfUFJJVkFURQorICAgIDB4MGQ2OTY5MTAgMHgwMCAxOSBHTElCQ18yLjAKKworRFlOQU1JQyBTWU1CT0wgVEFCTEU6CiswMDAxNTFmMCBsICAgIGQgIC50ZXh0CTAwMDAwMDAwICAgICAgICAgICAgICAudGV4dAorMDAwZjQ3YTAgbCAgICBkICBfX2xpYmNfZnJlZXJlc19mbgkwMDAwMDAwMCAgICAgICAgICAgICAgX19saWJjX2ZyZWVyZXNfZm4KKzAwMGY1NDgwIGwgICAgZCAgX19saWJjX3RocmVhZF9mcmVlcmVzX2ZuCTAwMDAwMDAwICAgICAgICAgICAgICBfX2xpYmNfdGhyZWFkX2ZyZWVyZXNfZm4KKzAwMGY1NjIwIGwgICAgZCAgLnJvZGF0YQkwMDAwMDAwMCAgICAgICAgICAgICAgLnJvZGF0YQorMDAxMGY0YTAgbCAgICBkICAuaW50ZXJwCTAwMDAwMDAwICAgICAgICAgICAgICAuaW50ZXJwCiswMDEwZjRiNCBsICAgIGQgIC5laF9mcmFtZV9oZHIJMDAwMDAwMDAgICAgICAgICAgICAgIC5laF9mcmFtZV9oZHIKKzAwMTExYzBjIGwgICAgZCAgLmVoX2ZyYW1lCTAwMDAwMDAwICAgICAgICAgICAgICAuZWhfZnJhbWUKKzAwMTE1MmQ4IGwgICAgZCAgLmN0b3JzCTAwMDAwMDAwICAgICAgICAgICAgICAuY3RvcnMKKzAwMTE1MmU4IGwgICAgZCAgLmR0b3JzCTAwMDAwMDAwICAgICAgICAgICAgICAuZHRvcnMKKzAwMTE1MmYwIGwgICAgZCAgX19saWJjX3N1YmZyZWVyZXMJMDAwMDAwMDAgICAgICAgICAgICAgIF9fbGliY19zdWJmcmVlcmVzCiswMDExNTM0NCBsICAgIGQgIF9fbGliY19hdGV4aXQJMDAwMDAwMDAgICAgICAgICAgICAgIF9fbGliY19hdGV4aXQKKzAwMTE1MzQ4IGwgICAgZCAgX19saWJjX3RocmVhZF9zdWJmcmVlcmVzCTAwMDAwMDAwICAgICAgICAgICAgICBfX2xpYmNfdGhyZWFkX3N1YmZyZWVyZXMKKzAwMTE1MzYwIGwgICAgZCAgLmRhdGEucmVsLnJvCTAwMDAwMDAwICAgICAgICAgICAgICAuZGF0YS5yZWwucm8KKzAwMTE3MDYwIGwgICAgZCAgLmRhdGEJMDAwMDAwMDAgICAgICAgICAgICAgIC5kYXRhCiswMDExN2YyMCBsICAgIGQgIC5ic3MJMDAwMDAwMDAgICAgICAgICAgICAgIC5ic3MKKzAwMDAzNmZjIGcgICAgRCAgKkFCUyoJMDAwMDAwMDAgIEJhc2UgICAgICAgIF9fYnNzX3N0YXJ0CiswMDA1NmVmMCBnICAgIERGIC50ZXh0CTAwMDAwMGRiICBHTElCQ18yLjIgICBnZXR3Y2hhcgorMDAwMmMxZTAgIHcgICBERiAudGV4dAkwMDAwMDA0OSAgR0xJQkNfMi4wICAgc2VlZDQ4X3IKKzAwMGUzZmMwIGcgICAgREYgLnRleHQJMDAwMDAwNjggIEdMSUJDXzIuMCAgIHhkcl9jcnlwdGtleXJlcworMDAwMjg2YTAgIHcgICBERiAudGV4dAkwMDAwMDA2MyAgR0xJQkNfMi4wICAgbG9uZ2ptcAorMDAwNTc5ZjAgZyAgICBERiAudGV4dAkwMDAwMDBmYSAgR0xJQkNfMi4wICAgcHV0Y2hhcgorMDAwNjljMjAgIHcgICBERiAudGV4dAkwMDAwMDA0MSAgR0xJQkNfMi4wICAgc3RwY3B5CiswMDBiODlmMCAgdyAgIERGIC50ZXh0CTAwMDAwMTI5ICBHTElCQ18yLjAgICB0c2VhcmNoCiswMDExN2ExMCBnICAgIERPIC5kYXRhCTAwMDAwMDA0ICBHTElCQ18yLjAgICBfX21vcmVjb3JlCiswMDEwNzhmOCBnICAgIERPIC5yb2RhdGEJMDAwMDAwMTAgIEdMSUJDXzIuMSAgIGluNmFkZHJfYW55CiswMDA4NTQ0MCBnICAgIERGIC50ZXh0CTAwMDAwMDU0ICBHTElCQ18yLjEgICBudHBfZ2V0dGltZQorMDAwODc0ZDAgZyAgICBERiAudGV4dAkwMDAwMDBhOCAgR0xJQkNfMi4wICAgc2V0Z3JlbnQKKzAwMDVmZWUwIGcgICAgREYgLnRleHQJMDAwMDAwMjggIEdMSUJDXzIuMCAgIF9JT19yZW1vdmVfbWFya2VyCiswMDBiZTBhMCAgdyAgIERGIC50ZXh0CTAwMDAwMDdkICBHTElCQ18yLjMgICBpc3dhbHBoYV9sCiswMDAyODkwMCBnICAgIERGIC50ZXh0CTAwMDAwMTNjICBHTElCQ19QUklWQVRFIF9fbGliY19zaWdhY3Rpb24KKzAwMDI4MWQwIGcgICAgREYgLnRleHQJMDAwMDAwNDggIEdMSUJDXzIuMCAgIF9faXNuYW5sCiswMDBjNjBkMCBnICAgIERGIC50ZXh0CTAwMDAwMDMzICBHTElCQ18yLjMuMiBwdGhyZWFkX2NvbmRfd2FpdAorMDAwMTU3MDAgZyAgICBERiAudGV4dAkwMDAwMDAzOCAoR0xJQkNfMi4wKSAgX19jbXBkaTIKKzAwMGJhNjcwIGcgICAgREYgLnRleHQJMDAwMDAwMzYgKEdMSUJDXzIuMCkgIHZtODYKKzAwMDM3OWUwIGcgICAgREYgLnRleHQJMDAwMDAwMjcgIEdMSUJDXzIuMSAgIHdjc3RvaW1heAorMDAwNTMxMTAgZyAgICBERiAudGV4dAkwMDAwMDA0MSAgR0xJQkNfMi4wICAgcHV0dworMDAwNmYxMTAgIHcgICBERiAudGV4dAkwMDAwMDA0OCAgR0xJQkNfMi4wICAgbWJybGVuCiswMDA2ODUwMCBnICAgIERGIC50ZXh0CTAwMDAwMDIwICBHTElCQ18yLjAgICBzdHJjcHkKKzAwMGIzYmUwIGcgICAgREYgLnRleHQJMDAwMDAwMzYgIEdMSUJDXzIuMCAgIGNocm9vdAorMDAwYjc5MTAgZyAgICBERiAudGV4dAkwMDAwMDA1ZSAgR0xJQkNfMi4wICAgcWdjdnQKKzAwMDU4OTAwIGcgICAgREYgLnRleHQJMDAwMDAwZGIgIEdMSUJDXzIuMiAgIF9JT193ZGVmYXVsdF94c2dldG4KKzAwMDdhZDcwIGcgICAgREYgLnRleHQJMDAwMDAwMmQgIEdMSUJDXzIuMCAgIGFzY3RpbWUKKzAwMGVlMmIwIGcgICAgREYgLnRleHQJMDAwMDAwZjAgIEdMSUJDX1BSSVZBVEUgX2RsX3ZzeW0KKzAwMDYwYTYwIGcgICAgREYgLnRleHQJMDAwMDAxMTUgIEdMSUJDXzIuMCAgIF9JT19saW5rX2luCiswMDBiYTJjMCBnICAgIERGIC50ZXh0CTAwMDAwMDY2ICBHTElCQ18yLjIgICBfX3N5c2N0bAorMDAwYzYxMTAgZyAgICBERiAudGV4dAkwMDAwMDAzYSAgR0xJQkNfMi4zLjIgcHRocmVhZF9jb25kX3RpbWVkd2FpdAorMDAxMThkNDAgZyAgICBETyAuYnNzCTAwMDAwMDA0ICBHTElCQ18yLjAgICBfX2RheWxpZ2h0CiswMDBiMmMwMCBnICAgIERGIC50ZXh0CTAwMDAwMDZhICBHTElCQ18yLjEgICBzZXRybGltaXQ2NAorMDAwZDMwYjAgZyAgICBERiAudGV4dAkwMDAwMDA0MCAgR0xJQkNfMi4wICAgcmNtZAorMDAwZWZiNDAgZyAgICBERiAudGV4dAkwMDAwMDA5NiAgR0NDXzMuMCAgICAgX1Vud2luZF9GaW5kX0ZERQorMDAwMmE5YTAgIHcgICBERiAudGV4dAkwMDAwMDExNSAgR0xJQkNfMi4wICAgdW5zZXRlbnYKKzAwMTE3ZDc4ICB3ICAgRE8gLmRhdGEJMDAwMDAwMDQgIEdMSUJDXzIuMCAgIF9fbWFsbG9jX2hvb2sKKzAwMTE3MzJjIGcgICAgRE8gLmRhdGEJMDAwMDAwMDQgIEdMSUJDXzIuMCAgIGhfbmVycgorMDAwZDhhMTAgZyAgICBERiAudGV4dAkwMDAwMDIyNiAgR0xJQkNfMi4wICAgYXV0aHVuaXhfY3JlYXRlCiswMDAyODg1MCAgdyAgIERGIC50ZXh0CTAwMDAwMDQ2ICBHTElCQ18yLjAgICBnc2lnbmFsCiswMDBjNWNmMCBnICAgIERGIC50ZXh0CTAwMDAwMDJhICBHTElCQ18yLjEgICBwdGhyZWFkX2F0dHJfaW5pdAorMDAwNWZkOTAgZyAgICBERiAudGV4dAkwMDAwMDA0OSAgR0xJQkNfMi4wICAgX0lPX3NwdXRiYWNrYworMDAwNjBjYzAgZyAgICBERiAudGV4dAkwMDAwMDBhNSAgR0xJQkNfMi4wICAgX0lPX2RlZmF1bHRfZmluaXNoCiswMDBiNDE3MCBnICAgIERGIC50ZXh0CTAwMDAwMDJjICBHTElCQ18yLjIgICBta3N0ZW1wNjQKKzAwMDI1YmMwICB3ICAgREYgLnRleHQJMDAwMDAwZjMgIEdMSUJDXzIuMCAgIHRleHRkb21haW4KKzAwMGRmZTcwIGcgICAgREYgLnRleHQJMDAwMDAwMmEgIEdMSUJDXzIuMS4xIHhkcl9sb25nbG9uZ190CiswMDBiOTAyMCBnICAgIERGIC50ZXh0CTAwMDAwMDFkICBHTElCQ18yLjAgICB3YXJueAorMDAwYTI4YzAgZyAgICBERiAudGV4dAkwMDAwMDBmMiAgR0xJQkNfMi4zLjQgcmVnZXhlYworMDAwNjk5NjAgIHcgICBERiAudGV4dAkwMDAwMDAxZSAgR0xJQkNfMi4wICAgYmNtcAorMDAwZjJhNjAgZyAgICBERiAudGV4dAkwMDAwMDA1ZiAoR0xJQkNfMi4wKSAgZ2V0Z3JnaWRfcgorMDAwMjg2MzAgZyAgICBERiAudGV4dAkwMDAwMDAzOCAgR0xJQkNfMi4wICAgc2V0am1wCiswMDAyMDg3MCBnICAgIERGIC50ZXh0CTAwMDAwNTBkIChHTElCQ18yLjApICBsb2NhbGVjb252CiswMDAyMjgwMCBnICAgIERGIC50ZXh0CTAwMDAwMDE3ICBHTElCQ18yLjEgICBfX2lzeGRpZ2l0X2wKKzAwMTE4NjQwICB3ICAgRE8gLmJzcwkwMDAwMDAwNCAgR0xJQkNfMi4wICAgX19tYWxsb2NfaW5pdGlhbGl6ZV9ob29rCiswMDA2NmMwMCBnICAgIERGIC50ZXh0CTAwMDAwMDIxICBHTElCQ18yLjAgICBfX2RlZmF1bHRfbW9yZWNvcmUKKzAwMGM2MDAwIGcgICAgREYgLnRleHQJMDAwMDAwMmEgKEdMSUJDXzIuMCkgIHB0aHJlYWRfY29uZF9icm9hZGNhc3QKKzAwMDg5MWEwICB3ICAgREYgLnRleHQJMDAwMDAwN2MgIEdMSUJDXzIuMCAgIHdhaXRwaWQKKzAwMDAwMDAwIGcgICAgRE8gKkFCUyoJMDAwMDAwMDAgIEdDQ18zLjAgICAgIEdDQ18zLjAKKzAwMTE1N2EwIGcgICAgRE8gLmRhdGEucmVsLnJvCTAwMDAwMTAwIChHTElCQ18yLjEpICBzeXNfc2lnYWJicmV2CiswMDBkNzZkMCBnICAgIERGIC50ZXh0CTAwMDAwMGUxICBHTElCQ18yLjMuMyBpbmV0Nl9vcHRpb25fYWxsb2MKKzAwMGUxMjEwIGcgICAgREYgLnRleHQJMDAwMDAxOTUgIEdMSUJDXzIuMCAgIHhkcnJlY19jcmVhdGUKKzAwMDAwMDAwIGcgICAgRE8gKkFCUyoJMDAwMDAwMDAgIEdMSUJDXzIuMi42IEdMSUJDXzIuMi42CiswMDBlOTcwMCBnICAgIERGIC50ZXh0CTAwMDAwMDE1ICBHTElCQ18yLjEgICBmZGV0YWNoCiswMDBkZGE0MCBnICAgIERGIC50ZXh0CTAwMDAwMGY3ICBHTElCQ18yLjAgICB4cHJ0X3JlZ2lzdGVyCiswMDBhYzAzMCBnICAgIERGIC50ZXh0CTAwMDAwMDMyIChHTElCQ18yLjEpICBfX2x4c3RhdDY0CiswMDA4OTg5MCAgdyAgIERGIC50ZXh0CTAwMDAwMDYxICBHTElCQ18yLjAgICBwYXVzZQorMDAwYjMxMzAgIHcgICBERiAudGV4dAkwMDAwMDAzYyAgR0xJQkNfMi4wICAgaW9jdGwKKzAwMGRiZTAwIGcgICAgREYgLnRleHQJMDAwMDA2NzUgIEdMSUJDXzIuMCAgIGNsbnRfYnJvYWRjYXN0CiswMDBiMzVjMCAgdyAgIERGIC50ZXh0CTAwMDAwMDcyICBHTElCQ18yLjAgICB3cml0ZXYKKzAwMDU2NDUwIGcgICAgREYgLnRleHQJMDAwMDAxMmYgIEdMSUJDXzIuMCAgIF9JT19zZXRidWZmZXIKKzAwMGJhOWUwIGcgICAgREYgLnRleHQJMDAwMDAwMzYgIEdMSUJDXzIuMCAgIGdldF9rZXJuZWxfc3ltcworMDAwMjkwYjAgZyAgICBERiAudGV4dAkwMDAwMDBiOSAgR0xJQkNfMi4wICAgc2lnaW50ZXJydXB0CiswMDAwMDAwMCAgICAgIERPICpVTkQqCTAwMDAwMDE0ICBHTElCQ18yLjAgICBfcl9kZWJ1ZworMDAwZWJkNDAgZyAgICBERiAudGV4dAkwMDAwMDAyMSAgR0xJQkNfMi4xICAgcHV0dXR4bGluZQorMDAwNWJhOTAgIHcgICBERiAudGV4dAkwMDAwMDAzYSAgR0xJQkNfMi4wICAgdnNjYW5mCiswMDBiZWNjMCBnICAgIERGIC50ZXh0CTAwMDAwM2I4ICBHTElCQ18yLjAgICBwdXRzcGVudAorMDAwY2ZmYjAgZyAgICBERiAudGV4dAkwMDAwMDBhMiAgR0xJQkNfMi4wICAgZ2V0c2VydmVudAorMDAwZDU4MTAgZyAgICBERiAudGV4dAkwMDAwMDA5YyAgR0xJQkNfMi4xICAgaWZfaW5kZXh0b25hbWUKKzAwMGFiZmIwIGcgICAgREYgLnRleHQJMDAwMDAwMzIgKEdMSUJDXzIuMSkgIF9feHN0YXQ2NAorMDAwODY1ZjAgZyAgICBERiAudGV4dAkwMDAwMDA3MSAgR0xJQkNfMi4yICAgZ2V0ZGlyZW50cmllczY0CiswMDAyODBkMCAgdyAgIERGIC50ZXh0CTAwMDAwMDgyICBHTElCQ18yLjAgICBsZGV4cGYKKzAwMDY5NjYwICB3ICAgREYgLnRleHQJMDAwMDAwZmUgIEdMSUJDXzIuMCAgIHN0cnRva19yCiswMDA1ODA0MCBnICAgIERGIC50ZXh0CTAwMDAwMDdjICBHTElCQ18yLjIgICBfSU9fd2RvYWxsb2NidWYKKzAwMGI3MjYwIGcgICAgREYgLnRleHQJMDAwMDAwMmUgIEdMSUJDXzIuMCAgIG11bmxvY2thbGwKKzAwMGNiNzQwIGcgICAgREYgLnRleHQJMDAwMDAwOGEgIEdMSUJDXzIuMCAgIF9fbnNzX2hvc3RzX2xvb2t1cAorMDAwZTlhYjAgIHcgICBERiAudGV4dAkwMDAwMDA2OCAgR0xJQkNfMi4wICAgZ2V0dXRpZAorMDAwYWQ0YTAgZyAgICBERiAudGV4dAkwMDAwMDAzNSAgR0xJQkNfMi4xICAgY2hvd24KKzAwMDZlOTAwIGcgICAgREYgLnRleHQJMDAwMDAwODQgIEdMSUJDXzIuMCAgIHdjc3RvaworMDAwOGE0NzAgIHcgICBERiAudGV4dAkwMDAwMDAwYyAgR0xJQkNfMi4wICAgZ2V0Z2lkCiswMDA4YTQzMCBnICAgIERGIC50ZXh0CTAwMDAwMDA4ICBHTElCQ18yLjAgICBfX2dldHBpZAorMDAwYjljYzAgZyAgICBERiAudGV4dAkwMDAwMDEzMiAgR0xJQkNfMi4yICAgZ2V0bG9hZGF2ZworMDAwY2M2ZjAgZyAgICBERiAudGV4dAkwMDAwMDA3MiAgR0xJQkNfMi4zLjQgX19zdHJjcHlfY2hrCiswMDA1NGNhMCBnICAgIERGIC50ZXh0CTAwMDAwMTEzICBHTElCQ18yLjAgICBfSU9fZnJlYWQKKzAwMDYwMTUwIGcgICAgREYgLnRleHQJMDAwMDAwMmQgIEdMSUJDXzIuMiAgIF9JT19saXN0X2xvY2sKKzAwMDg3NzYwIGcgICAgREYgLnRleHQJMDAwMDAxZGUgIEdMSUJDXzIuMS4yIGdldGdybmFtX3IKKzAwMDQzY2UwIGcgICAgREYgLnRleHQJMDAwMDAwMzkgIEdMSUJDXzIuMCAgIHByaW50ZgorMDAwOGIwZjAgIHcgICBERiAudGV4dAkwMDAwMDY3MyAgR0xJQkNfMi4wICAgc3lzY29uZgorMDAwMmRjYjAgZyAgICBERiAudGV4dAkwMDAwMDA1MiAgR0xJQkNfMi4wICAgX19zdHJ0b2RfaW50ZXJuYWwKKzAwMTE3OGUwIGcgICAgRE8gLmRhdGEJMDAwMDAwMDQgIEdMSUJDXzIuMCAgIHN0ZG91dAorMDAwNTY3ZjAgIHcgICBERiAudGV4dAkwMDAwMDBjNCAgR0xJQkNfMi4wICAgdnNwcmludGYKKzAwMDJiNzQwICB3ICAgREYgLnRleHQJMDAwMDAwNjIgIEdMSUJDXzIuMCAgIHJhbmRvbQorMDAwYjM5NzAgZyAgICBERiAudGV4dAkwMDAwMDA5NCAgR0xJQkNfMi4wICAgX19zZWxlY3QKKzAwMGI0NDYwIGcgICAgREYgLnRleHQJMDAwMDAwMTcgIEdMSUJDXzIuMCAgIHNldGZzZW50CiswMDBhYmNmMCBnICAgIERGIC50ZXh0CTAwMDAwMDNhICBHTElCQ18yLjAgICB1dGltZQorMDAwZjI5ZjAgZyAgICBERiAudGV4dAkwMDAwMDAyNCAoR0xJQkNfMi4xKSAgdmVyc2lvbnNvcnQ2NAorMDAwZGVlMzAgZyAgICBERiAudGV4dAkwMDAwMDI3ZSAgR0xJQkNfMi4wICAgc3ZjdWRwX2VuYWJsZWNhY2hlCiswMDA3MDY1MCAgdyAgIERGIC50ZXh0CTAwMDAwMDUyICBHTElCQ18yLjAgICB3Y3N0b2YKKzAwMTE4ZDQwICB3ICAgRE8gLmJzcwkwMDAwMDAwNCAgR0xJQkNfMi4wICAgZGF5bGlnaHQKKzAwMDYwZGUwIGcgICAgREYgLnRleHQJMDAwMDAwODEgIEdMSUJDXzIuMCAgIF9JT19kZWZhdWx0X2RvYWxsb2NhdGUKKzAwMGYxODMwIGcgICAgREYgLnRleHQJMDAwMDAxYmMgKEdMSUJDXzIuMCkgIF9JT19maWxlX3hzcHV0bgorMDAwNmQzZjAgZyAgICBERiAudGV4dAkwMDAwMDAzOCAgR0xJQkNfMi4xLjEgX19tZW1zZXRfZ2NuX2J5MgorMDAwMmMwODAgZyAgICBERiAudGV4dAkwMDAwMDAyZSAgR0xJQkNfMi4wICAgbHJhbmQ0OF9yCiswMDA1YzhkMCBnICAgIERGIC50ZXh0CTAwMDAwMDNiICBHTElCQ18yLjIgICBfX2ZzZXRsb2NraW5nCiswMDBiMzc5MCAgdyAgIERGIC50ZXh0CTAwMDAwMDM5ICBHTElCQ18yLjAgICBnZXRkdGFibGVzaXplCiswMDA2N2ZkMCBnICAgIERGIC50ZXh0CTAwMDAwMDIxICBHTElCQ18yLjAgICBfb2JzdGFja19tZW1vcnlfdXNlZAorMDAwMmRiYzAgIHcgICBERiAudGV4dAkwMDAwMDAyZSAgR0xJQkNfMi4xICAgX19zdHJ0b3VsbF9sCiswMDBiMjM5MCBnICAgIERGIC50ZXh0CTAwMDAwMDEwICBHTElCQ18yLjAgICBjZmdldG9zcGVlZAorMDAwZTQxMDAgZyAgICBERiAudGV4dAkwMDAwMDAzYiAgR0xJQkNfMi4xICAgeGRyX25ldG5hbWVzdHIKKzAwMDU3ZDEwICB3ICAgREYgLnRleHQJMDAwMDAwZjUgIEdMSUJDXzIuMiAgIHZzd3ByaW50ZgorMDAwY2U4MDAgZyAgICBERiAudGV4dAkwMDAwMDBiMiAgR0xJQkNfMi4wICAgc2V0aG9zdGVudAorMDAwYmUwMjAgIHcgICBERiAudGV4dAkwMDAwMDA3ZCAgR0xJQkNfMi4zICAgaXN3YWxudW1fbAorMDAwZDAyMDAgZyAgICBERiAudGV4dAkwMDAwMDBhZCAgR0xJQkNfMi4wICAgc2V0c2VydmVudAorMDAwZjI2NDAgZyAgICBERiAudGV4dAkwMDAwMDE4ZiAoR0xJQkNfMi4xKSAgcmVhZGRpcjY0X3IKKzAwMGQxYWIwIGcgICAgREYgLnRleHQJMDAwMDAwNjAgIEdMSUJDXzIuMCAgIF9faXZhbGlkdXNlcgorMDAwMjE1MjAgIHcgICBERiAudGV4dAkwMDAwMDE1OSAgR0xJQkNfMi4zICAgZHVwbG9jYWxlCiswMDBlOTU4MCBnICAgIERGIC50ZXh0CTAwMDAwMDFmICBHTElCQ18yLjEgICBpc2FzdHJlYW0KKzAwMDVkMGIwIGcgICAgREYgLnRleHQJMDAwMDAwM2IgIEdMSUJDXzIuMCAgIHB1dGNfdW5sb2NrZWQKKzAwMDhhODEwIGcgICAgREYgLnRleHQJMDAwMDAwZGQgIEdMSUJDXzIuMCAgIGdldGxvZ2luCiswMDA1N2Y2MCBnICAgIERGIC50ZXh0CTAwMDAwMDMzICBHTElCQ18yLjIgICBfSU9fbGVhc3Rfd21hcmtlcgorMDAwYzVjOTAgZyAgICBERiAudGV4dAkwMDAwMDAyYSAgR0xJQkNfMi4wICAgcHRocmVhZF9hdHRyX2Rlc3Ryb3kKKzAwMDU0MGMwIGcgICAgREYgLnRleHQJMDAwMDAyNTEgIEdMSUJDXzIuMSAgIF9JT19mZG9wZW4KKzAwMGJiMDYwICB3ICAgREYgLnRleHQJMDAwMDAwNzggIEdMSUJDXzIuMCAgIHJlY3YKKzAwMGJhMDMwIGcgICAgREYgLnRleHQJMDAwMDAwM2MgIEdMSUJDXzIuMyAgIGxsaXN0eGF0dHIKKzAwMGJhZWUwICB3ICAgREYgLnRleHQJMDAwMDAwNzggIEdMSUJDXzIuMCAgIGNvbm5lY3QKKzAwMGVlZGUwIGcgICAgREYgLnRleHQJMDAwMDAwNGUgIEdMSUJDXzIuMCAgIF9fcmVnaXN0ZXJfZnJhbWUKKzAwMDU1ZWMwIGcgICAgREYgLnRleHQJMDAwMDAwOGIgIEdMSUJDXzIuMSAgIF9JT19wb3BlbgorMDAwYWNmMDAgZyAgICBERiAudGV4dAkwMDAwMDEyNSAgR0xJQkNfMi4xICAgbG9ja2Y2NAorMDAwNTY3ZjAgZyAgICBERiAudGV4dAkwMDAwMDBjNCAgR0xJQkNfMi4wICAgX0lPX3ZzcHJpbnRmCiswMDA4NjA3MCBnICAgIERGIC50ZXh0CTAwMDAwMGNiICBHTElCQ18yLjIgICByZWFkZGlyNjQKKzAwMGJlM2EwICB3ICAgREYgLnRleHQJMDAwMDAwN2QgIEdMSUJDXzIuMyAgIGlzd3ByaW50X2wKKzAwMDU2NzEwICB3ICAgREYgLnRleHQJMDAwMDAwZDQgIEdMSUJDXzIuMCAgIHVuZ2V0YworMDAwMmM1YjAgZyAgICBERiAudGV4dAkwMDAwMDA1OSAgR0xJQkNfMi4wICAgX19zdHJ0b3VsbF9pbnRlcm5hbAorMDAwZWJkMTAgZyAgICBERiAudGV4dAkwMDAwMDAyMSAgR0xJQkNfMi4xICAgZ2V0dXR4bGluZQorMDAwZGQzMjAgZyAgICBERiAudGV4dAkwMDAwMDAzNiAgR0xJQkNfMi4wICAgc3ZjZXJyX2F1dGgKKzAwMGIyYTMwIGcgICAgREYgLnRleHQJMDAwMDAwYTkgIEdMSUJDXzIuMSAgIHRjZ2V0c2lkCiswMDBkNDU3MCBnICAgIERGIC50ZXh0CTAwMDAwMDUyICBHTElCQ18yLjAgICBlbmRuZXRncmVudAorMDAwODczNDAgZyAgICBERiAudGV4dAkwMDAwMDBkYiAgR0xJQkNfMi4xLjIgZ2V0Z3JlbnRfcgorMDAwMDAwMDAgIHcgICBEICAqVU5EKgkwMDAwMDAwMCAgICAgICAgICAgICAgX19wdGhyZWFkX29uY2UKKzAwMDIyNzAwIGcgICAgREYgLnRleHQJMDAwMDAwMTUgIEdMSUJDXzIuMSAgIF9faXNjbnRybF9sCiswMDA1NWE1MCBnICAgIERGIC50ZXh0CTAwMDAwMTdkICBHTElCQ18yLjEgICBfSU9fcHJvY19jbG9zZQorMDAwMmRiYzAgIHcgICBERiAudGV4dAkwMDAwMDAyZSAgR0xJQkNfMi4zICAgc3RydG91bGxfbAorMDAwODY1NjAgZyAgICBERiAudGV4dAkwMDAwMDAyNCAgR0xJQkNfMi4yICAgdmVyc2lvbnNvcnQ2NAorMDAwZDc5YTAgZyAgICBERiAudGV4dAkwMDAwMDE0ZCAgR0xJQkNfMi4zLjQgc2V0aXB2NHNvdXJjZWZpbHRlcgorMDAwZTliMjAgIHcgICBERiAudGV4dAkwMDAwMDA2OCAgR0xJQkNfMi4wICAgZ2V0dXRsaW5lCiswMDA1NDMyMCBnICAgIERGIC50ZXh0CTAwMDAwMGViICBHTElCQ18yLjAgICBfSU9fZmZsdXNoCiswMDA1ODJkMCBnICAgIERGIC50ZXh0CTAwMDAwMDgyICBHTElCQ18yLjIgICBfSU9fc2Vla3dtYXJrCiswMDBjYzZhMCBnICAgIERGIC50ZXh0CTAwMDAwMDQ3ICBHTElCQ18yLjMuNCBfX3N0cmNhdF9jaGsKKzAwMGQ0YjMwIGcgICAgREYgLnRleHQJMDAwMDAxNjUgIEdMSUJDXzIuMS4yIGdldGFsaWFzYnluYW1lX3IKKzAwMGQwOTgwIGcgICAgREYgLnRleHQJMDAwMDAxNjUgIEdMSUJDXzIuMS4yIGdldHJwY2J5bnVtYmVyX3IKKzAwMTE2ODQwIGcgICAgRE8gLmRhdGEucmVsLnJvCTAwMDAwMDU0ICBHTElCQ18yLjIgICBfSU9fd2ZpbGVfanVtcHMKKzAwMDI5MjAwIGcgICAgREYgLnRleHQJMDAwMDAwMzQgIEdMSUJDXzIuMCAgIHNpZ2VtcHR5c2V0CiswMDBiZTJhMCAgdyAgIERGIC50ZXh0CTAwMDAwMDdkICBHTElCQ18yLjMgICBpc3dsb3dlcl9sCiswMDAxNTQzMCAgdyAgIERGIC50ZXh0CTAwMDAwMDE2ICBHTElCQ18yLjEgICBnbnVfZ2V0X2xpYmNfdmVyc2lvbgorMDAwNWM3NzAgZyAgICBERiAudGV4dAkwMDAwMDAyYyAgR0xJQkNfMi4yICAgX19mYnVmc2l6ZQorMDAwYjUxOTAgIHcgICBERiAudGV4dAkwMDAwMDBjZSAgR0xJQkNfMi4wICAgdXRpbWVzCiswMDBiYTk5MCBnICAgIERGIC50ZXh0CTAwMDAwMDQyICBHTElCQ18yLjMuMiBlcG9sbF93YWl0CiswMDAyOTFkMCBnICAgIERGIC50ZXh0CTAwMDAwMDIyICBHTElCQ18yLjAgICBfX3NpZ2RlbHNldAorMDAwNTc5YTAgZyAgICBERiAudGV4dAkwMDAwMDA0ZiAgR0xJQkNfMi4yICAgcHV0d2NoYXJfdW5sb2NrZWQKKzAwMDVhZDAwIGcgICAgREYgLnRleHQJMDAwMDAwNjggIEdMSUJDXzIuMCAgIF9JT19mZXJyb3IKKzAwMDY4N2YwIGcgICAgREYgLnRleHQJMDAwMDAwYjIgIEdMSUJDXzIuMCAgIHN0cmVycm9yCiswMDA4Yjc3MCAgdyAgIERGIC50ZXh0CTAwMDAwMjAxICBHTElCQ18yLjAgICBmcGF0aGNvbmYKKzAwMGU5NjkwIGcgICAgREYgLnRleHQJMDAwMDAwNDggIEdMSUJDXzIuMSAgIHB1dHBtc2cKKzAwMDU0MGMwIGcgICAgREYgLnRleHQJMDAwMDAyNTEgIEdMSUJDXzIuMSAgIGZkb3BlbgorMDAwZGRmZDAgZyAgICBERiAudGV4dAkwMDAwMDA0MyAgR0xJQkNfMi4wICAgc3ZjX2V4aXQKKzAwMDZlMjcwICB3ICAgREYgLnRleHQJMDAwMDAwZGIgIEdMSUJDXzIuMiAgIG1lbXJjaHIKKzAwMDY4NzgwICB3ICAgREYgLnRleHQJMDAwMDAwNjQgIEdMSUJDXzIuMCAgIHN0cm5kdXAKKzAwMDhhNDYwICB3ICAgREYgLnRleHQJMDAwMDAwMGMgIEdMSUJDXzIuMCAgIGdldGV1aWQKKzAwMGJhMGIwIGcgICAgREYgLnRleHQJMDAwMDAwNDggIEdMSUJDXzIuMyAgIGxzZXR4YXR0cgorMDAwYzZlZDAgZyAgICBERiAudGV4dAkwMDAwMDJiNCAgR0xJQkNfMi4wICAgaW5ldF9wdG9uCiswMDBiYjk2MCBnICAgIERGIC50ZXh0CTAwMDAwMDU1ICBHTElCQ18yLjIgICBtc2djdGwKKzAwMGYxNTIwIGcgICAgREYgLnRleHQJMDAwMDAxMDEgKEdMSUJDXzIuMCkgIGZzZXRwb3MKKzAwMDZmMTEwIGcgICAgREYgLnRleHQJMDAwMDAwNDggIEdMSUJDXzIuMCAgIF9fbWJybGVuCiswMDA2NWVkMCAgdyAgIERGIC50ZXh0CTAwMDAwMTk5ICBHTElCQ18yLjAgICBtYWxsb2NfZ2V0X3N0YXRlCiswMDA2YWY0MCAgdyAgIERGIC50ZXh0CTAwMDAwMGE0ICBHTElCQ18yLjAgICBhcmd6X2FkZF9zZXAKKzAwMDZlMTIwIGcgICAgREYgLnRleHQJMDAwMDAwNzEgIEdMSUJDXzIuMS4xIF9fc3RybmNweV9ieTIKKzAwMGE0NDkwIGcgICAgREYgLnRleHQJMDAwMDAwMzYgIEdMSUJDXzIuMCAgIF9fc2NoZWRfZ2V0X3ByaW9yaXR5X21heAorMDAxMTU0ODAgZyAgICBETyAuZGF0YS5yZWwucm8JMDAwMDAxZjggIEdMSUJDXzIuMyAgIHN5c19lcnJsaXN0CiswMDA1NWJkMCBnICAgIERGIC50ZXh0CTAwMDAwMmU5ICBHTElCQ18yLjEgICBfSU9fcHJvY19vcGVuCiswMDBlM2Q1MCBnICAgIERGIC50ZXh0CTAwMDAwMDhmICBHTElCQ18yLjEgICBrZXlfc2VjcmV0a2V5X2lzX3NldAorMDAwZDQ3MTAgZyAgICBERiAudGV4dAkwMDAwMDBkYiAgR0xJQkNfMi4xLjIgZ2V0YWxpYXNlbnRfcgorMDAwMjk1OTAgZyAgICBERiAudGV4dAkwMDAwMDA2NyAgR0xJQkNfUFJJVkFURSBfX2xpYmNfYWxsb2NhdGVfcnRzaWdfcHJpdmF0ZQorMDAwMzZmODAgZyAgICBERiAudGV4dAkwMDAwMDBhNCAgR0xJQkNfMi4wICAgX194cGdfYmFzZW5hbWUKKzAwMDI4ZWMwICB3ICAgREYgLnRleHQJMDAwMDAwMTkgIEdMSUJDXzIuMCAgIHNpZ3BhdXNlCiswMDA2OTk4MCBnICAgIERGIC50ZXh0CTAwMDAwMDhkICBHTElCQ18yLjAgICBtZW1tb3ZlCiswMDBiOWUzMCBnICAgIERGIC50ZXh0CTAwMDAwMDQyICBHTElCQ18yLjMgICBmZ2V0eGF0dHIKKzAwMGI4MDAwIGcgICAgREYgLnRleHQJMDAwMDAwNDUgIEdMSUJDXzIuMCAgIGhzZWFyY2gKKzAwMDZkZGYwIGcgICAgREYgLnRleHQJMDAwMDAwM2IgIEdMSUJDXzIuMS4xIF9fc3RycGJya19jMgorMDAxMWE4MjAgZyAgICBETyAuYnNzCTAwMDAwMDA0ICBHTElCQ18yLjAgICBfX3JjbWRfZXJyc3RyCiswMDBjNjQwMCBnICAgIERGIC50ZXh0CTAwMDAwMDM0ICBHTElCQ18yLjAgICBwdGhyZWFkX2V4aXQKKzAwMGE0MzEwIGcgICAgREYgLnRleHQJMDAwMDAwNDUgIEdMSUJDXzIuMCAgIGdldG9wdF9sb25nCiswMDBlNGExMCBnICAgIERGIC50ZXh0CTAwMDAwMWM2ICBHTElCQ18yLjEgICBhdXRoZGVzX2dldHVjcmVkCiswMDA1YzhhMCBnICAgIERGIC50ZXh0CTAwMDAwMDJjICBHTElCQ18yLjIgICBfX2ZwZW5kaW5nCiswMDAyOTg4MCBnICAgIERGIC50ZXh0CTAwMDAwMDc0ICBHTElCQ18yLjEgICBzaWdob2xkCiswMDBjZWVkMCBnICAgIERGIC50ZXh0CTAwMDAwMGE5ICBHTElCQ18yLjAgICBlbmRuZXRlbnQKKzAwMDQzZDIwICB3ICAgREYgLnRleHQJMDAwMDAwM2IgIEdMSUJDXzIuMCAgIHNucHJpbnRmCiswMDBiNmQ0MCBnICAgIERGIC50ZXh0CTAwMDAwMDRkICBHTElCQ18yLjAgICBzeXNjYWxsCiswMDA2MTBmMCBnICAgIERGIC50ZXh0CTAwMDAwMGJlICBHTElCQ18yLjAgICBfSU9fZGVmYXVsdF94c2dldG4KKzAwMDhhY2QwICB3ICAgREYgLnRleHQJMDAwMDAxZWEgIEdMSUJDXzIuMCAgIHBhdGhjb25mCiswMDA2OTY2MCBnICAgIERGIC50ZXh0CTAwMDAwMGZlICBHTElCQ18yLjAgICBfX3N0cnRva19yCiswMDBiNGQ3MCBnICAgIERGIC50ZXh0CTAwMDAwMDJhICBHTElCQ18yLjIgICBfX2VuZG1udGVudAorMDAwZDFmNDAgZyAgICBERiAudGV4dAkwMDAwMDA5ZiAgR0xJQkNfMi4yICAgcnVzZXJva19hZgorMDAwZGI4MTAgZyAgICBERiAudGV4dAkwMDAwMDEzYyAgR0xJQkNfMi4wICAgcG1hcF9zZXQKKzAwMGI2ZmQwICB3ICAgREYgLnRleHQJMDAwMDAwM2EgIEdMSUJDXzIuMCAgIG11bm1hcAorMDAwMjI3MDAgIHcgICBERiAudGV4dAkwMDAwMDAxNSAgR0xJQkNfMi4zICAgaXNjbnRybF9sCiswMDBhNDNhMCBnICAgIERGIC50ZXh0CTAwMDAwMDNhICBHTElCQ18yLjAgICBfX3NjaGVkX2dldHBhcmFtCiswMDA1YWQ3MCAgdyAgIERGIC50ZXh0CTAwMDAwMDI3ICBHTElCQ18yLjAgICBmaWxlbm9fdW5sb2NrZWQKKzAwMGJmYWIwICB3ICAgREYgLnRleHQJMDAwMDAwN2EgIEdMSUJDXzIuMCAgIHVsY2twd2RmCiswMDBhNDNhMCAgdyAgIERGIC50ZXh0CTAwMDAwMDNhICBHTElCQ18yLjAgICBzY2hlZF9nZXRwYXJhbQorMDAwYWZlYTAgZyAgICBERiAudGV4dAkwMDAwMDAzMiAgR0xJQkNfMi4wICAgZnRzX3NldAorMDAwN2RiNDAgIHcgICBERiAudGV4dAkwMDAwMDU2YyAgR0xJQkNfMi4xICAgZ2V0ZGF0ZV9yCiswMDAyODZhMCAgdyAgIERGIC50ZXh0CTAwMDAwMDYzICBHTElCQ18yLjAgICBfbG9uZ2ptcAorMDAwYjU3YTAgZyAgICBERiAudGV4dAkwMDAwMDRiNyAgR0xJQkNfMi4wICAgZ2V0dHR5ZW50CiswMDA3MDNiMCBnICAgIERGIC50ZXh0CTAwMDAwMDU4ICBHTElCQ18yLjEgICB3Y3N0b3VsbAorMDAxMWE4MjQgZyAgICBETyAuYnNzCTAwMDAwMDA0ICBHTElCQ18yLjAgICByZXhlY29wdGlvbnMKKzAwMDVjNWYwIGcgICAgREYgLnRleHQJMDAwMDAxN2EgIEdMSUJDXzIuMSAgIGZ0ZWxsbzY0CiswMDBjYWY3MCBnICAgIERGIC50ZXh0CTAwMDAwNmE0ICBHTElCQ18yLjIuMiBfX25zc19ob3N0bmFtZV9kaWdpdHNfZG90cworMDAwZTcwMTAgZyAgICBERiAudGV4dAkwMDAwMDA2OCAgR0xJQkNfMi4xICAgeGRyX3VpbnQ4X3QKKzAwMGUwOGYwIGcgICAgREYgLnRleHQJMDAwMDAwMzIgIEdMSUJDXzIuMCAgIHhkcm1lbV9jcmVhdGUKKzAwMDY5YmEwIGcgICAgREYgLnRleHQJMDAwMDAwMTAgIEdMSUJDXzIuMCAgIF9fZmZzCiswMDAyOWJiMCBnICAgIERGIC50ZXh0CTAwMDAwMDI4ICBHTElCQ18yLjAgICBhdG9sCiswMDBiZGZiMCBnICAgIERGIC50ZXh0CTAwMDAwMDZkICBHTElCQ18yLjEgICBfX3Rvd3VwcGVyX2wKKzAwMDI3YmIwIGcgICAgREYgLnRleHQJMDAwMDAwMjcgIEdMSUJDXzIuMCAgIF9faXNuYW4KKzAwMGRjYWIwIGcgICAgREYgLnRleHQJMDAwMDAwMzMgIEdMSUJDXzIuMCAgIHhkcl9kZXNfYmxvY2sKKzAwMGYyM2MwIGcgICAgREYgLnRleHQJMDAwMDAwNmYgKEdMSUJDXzIuMCkgIF9JT19maWxlX2luaXQKKzAwMGQ0NGEwIGcgICAgREYgLnRleHQJMDAwMDAwMzQgIEdMSUJDX1BSSVZBVEUgX19pbnRlcm5hbF9zZXRuZXRncmVudAorMDAwZTI2NjAgZyAgICBERiAudGV4dAkwMDAwMDAyYSAgR0xJQkNfMi4xICAgZWNiX2NyeXB0CiswMDBhY2FhMCAgdyAgIERGIC50ZXh0CTAwMDAwMDdjICBHTElCQ18yLjAgICBfX3dyaXRlCiswMDBkY2FmMCBnICAgIERGIC50ZXh0CTAwMDAwMDYyICBHTElCQ18yLjAgICB4ZHJfb3BhcXVlX2F1dGgKKzAwMGYxMTAwIGcgICAgREYgLnRleHQJMDAwMDAwODggKEdMSUJDXzIuMCkgIHBvcGVuCiswMDA2NjFiMCAgdyAgIERGIC50ZXh0CTAwMDAwMjI1ICBHTElCQ18yLjAgICBtYWxsb2Nfc3RhdHMKKzAwMDVmYTkwIGcgICAgREYgLnRleHQJMDAwMDAwMmEgIEdMSUJDXzIuMCAgIF9JT19zZ2V0bgorMDAwNzA1MzAgZyAgICBERiAudGV4dAkwMDAwMDA1MiAgR0xJQkNfMi4wICAgX193Y3N0b2xkX2ludGVybmFsCiswMDBiNDM5MCBnICAgIERGIC50ZXh0CTAwMDAwMDMwICBHTElCQ18yLjAgICBlbmRmc2VudAorMDAwZDM4ZjAgZyAgICBERiAudGV4dAkwMDAwMDQ0NSAgR0xJQkNfMi4wICAgcnVzZXJwYXNzCiswMDA1ZDAwMCAgdyAgIERGIC50ZXh0CTAwMDAwMDI4ICBHTElCQ18yLjAgICBnZXRjX3VubG9ja2VkCiswMDExYTVhMCBnICAgIERPIC5ic3MJMDAwMDAwMDQgIEdMSUJDXzIuMCAgIF9ubF9kb21haW5fYmluZGluZ3MKKzAwMDg2ZjMwIGcgICAgREYgLnRleHQJMDAwMDAxMjUgIEdMSUJDXzIuMCAgIGdldGdyZ2lkCiswMDA4OTBiMCAgdyAgIERGIC50ZXh0CTAwMDAwMDM2ICBHTElCQ18yLjAgICB0aW1lcworMDAwZDkyNDAgZyAgICBERiAudGV4dAkwMDAwMDBkZCAgR0xJQkNfMi4wICAgY2xudF9zcGNyZWF0ZWVycm9yCiswMDBhYzBmMCAgdyAgIERGIC50ZXh0CTAwMDAwMTJmICBHTElCQ18yLjEgICBzdGF0ZnM2NAorMDAwMjdmYjAgIHcgICBERiAudGV4dAkwMDAwMDA5YSAgR0xJQkNfMi4wICAgbW9kZmYKKzAwMTFhNmI4IGcgICAgRE8gLmJzcwkwMDAwMDAwNCAgR0xJQkNfMi4wICAgcmVfc3ludGF4X29wdGlvbnMKKzAwMGFmZTcwIGcgICAgREYgLnRleHQJMDAwMDAwMjQgIEdMSUJDXzIuMSAgIGZ0dzY0CiswMDAyYmU1MCBnICAgIERGIC50ZXh0CTAwMDAwMDM3ICBHTElCQ18yLjAgICBucmFuZDQ4CiswMDBmM2I1MCBnICAgIERGIC50ZXh0CTAwMDAwMDMxIChHTElCQ18yLjApICBjaG93bgorMDAwMzc5ODAgZyAgICBERiAudGV4dAkwMDAwMDAyNyAgR0xJQkNfMi4xICAgc3RydG9pbWF4CiswMDExYTZlMCBnICAgIERPIC5ic3MJMDAwMDAwMDQgIEdMSUJDXzIuMSAgIGFyZ3BfcHJvZ3JhbV9idWdfYWRkcmVzcworMDAwY2YyMTAgZyAgICBERiAudGV4dAkwMDAwMDEyNSAgR0xJQkNfMi4wICAgZ2V0cHJvdG9ieW51bWJlcgorMDAwZDg1ZDAgZyAgICBERiAudGV4dAkwMDAwMDE2YyAgR0xJQkNfMi4wICAgYXV0aHVuaXhfY3JlYXRlX2RlZmF1bHQKKzAwMGQzZWQwIGcgICAgREYgLnRleHQJMDAwMDAxZDIgIEdMSUJDX1BSSVZBVEUgX19pbnRlcm5hbF9nZXRuZXRncmVudF9yCiswMDBkOTNiMCBnICAgIERGIC50ZXh0CTAwMDAwMDkwICBHTElCQ18yLjAgICBjbG50X3BlcnJubworMDAwMmE3ODAgZyAgICBERiAudGV4dAkwMDAwMDBlZiAgR0xJQkNfMi4wICAgZ2V0ZW52CiswMDA1ZDQ3MCBnICAgIERGIC50ZXh0CTAwMDAwMDNiICBHTElCQ18yLjAgICBfSU9fZmlsZV9zZWVrCiswMDA2ZTU4MCAgdyAgIERGIC50ZXh0CTAwMDAwMDY0ICBHTElCQ18yLjAgICB3Y3NsZW4KKzAwMGJkNGMwICB3ICAgREYgLnRleHQJMDAwMDAwZDUgIEdMSUJDXzIuMCAgIGlzd2NudHJsCiswMDBiZTVhMCAgdyAgIERGIC50ZXh0CTAwMDAwMDZkICBHTElCQ18yLjMgICB0b3dsb3dlcl9sCiswMDBjYzQ0MCBnICAgIERGIC50ZXh0CTAwMDAwMDA1ICBHTElCQ18yLjIgICBfX2N5Z19wcm9maWxlX2Z1bmNfZXhpdAorMDAwYWIwYTAgIHcgICBERiAudGV4dAkwMDAwMDA5NCAgR0xJQkNfMi4xICAgcHdyaXRlNjQKKzAwMGFjN2EwICB3ICAgREYgLnRleHQJMDAwMDAwM2EgIEdMSUJDXzIuMCAgIGZjaG1vZAorMDAwZjIxZTAgZyAgICBERiAudGV4dAkwMDAwMDA2MyAoR0xJQkNfMi4wKSAgX0lPX2ZpbGVfc2V0YnVmCiswMDA4NzE5MCBnICAgIERGIC50ZXh0CTAwMDAwMWFjICBHTElCQ18yLjEgICBwdXRncmVudAorMDAxMDRkNzggZyAgICBETyAucm9kYXRhCTAwMDAwMDA0IChHTElCQ18yLjEpICBfc3lzX25lcnIKKzAwMGJkOTIwICB3ICAgREYgLnRleHQJMDAwMDAwZDUgIEdMSUJDXzIuMCAgIGlzd3B1bmN0CiswMDA2NzRmMCBnICAgIERGIC50ZXh0CTAwMDAwMWU1ICBHTElCQ18yLjAgICBtdHJhY2UKKzAwMGI0ZTMwIGcgICAgREYgLnRleHQJMDAwMDAzNWYgIEdMSUJDXzIuMiAgIF9fZ2V0bW50ZW50X3IKKzAwMGJhNTMwIGcgICAgREYgLnRleHQJMDAwMDAwMTMgIEdMSUJDXzIuMCAgIHNldGZzdWlkCiswMDAyZGRkMCAgdyAgIERGIC50ZXh0CTAwMDAwMDUyICBHTElCQ18yLjAgICBzdHJ0b2xkCiswMDA4YTQ4MCAgdyAgIERGIC50ZXh0CTAwMDAwMDBjICBHTElCQ18yLjAgICBnZXRlZ2lkCiswMDAyMjY0MCBnICAgIERGIC50ZXh0CTAwMDAwMDdiICBHTElCQ18yLjAgICBpc2JsYW5rCiswMDExNTY4MCBnICAgIERPIC5kYXRhLnJlbC5ybwkwMDAwMDEwNCAgR0xJQkNfMi4zLjMgc3lzX3NpZ2xpc3QKKzAwMGViYzgwIGcgICAgREYgLnRleHQJMDAwMDAwMTcgIEdMSUJDXzIuMSAgIHNldHV0eGVudAorMDAwNWI3ZTAgZyAgICBERiAudGV4dAkwMDAwMDAzOCAgR0xJQkNfMi4wICAgc2V0bGluZWJ1ZgorMDAwNmE3ZDAgZyAgICBERiAudGV4dAkwMDAwMDBjNiAgR0xJQkNfMi4xICAgX19yYXdtZW1jaHIKKzAwMGIyZjgwIGcgICAgREYgLnRleHQJMDAwMDAwM2MgIEdMSUJDXzIuMCAgIHNldHByaW9yaXR5CiswMDAyYjJiMCBnICAgIERGIC50ZXh0CTAwMDAwMDBkICBHTElCQ18yLjAgICBsYWJzCiswMDA3MDJmMCBnICAgIERGIC50ZXh0CTAwMDAwMDU4ICBHTElCQ18yLjEgICB3Y3N0b2xsCiswMDA1NGE4MCBnICAgIERGIC50ZXh0CTAwMDAwMGNjICBHTElCQ18yLjIgICBmb3BlbmNvb2tpZQorMDAwYWIxNDAgZyAgICBERiAudGV4dAkwMDAwMDAzNCAgR0xJQkNfMi4yICAgcG9zaXhfc3Bhd25fZmlsZV9hY3Rpb25zX2luaXQKKzAwMGIyZjMwIGcgICAgREYgLnRleHQJMDAwMDAwNDIgIEdMSUJDXzIuMCAgIGdldHByaW9yaXR5CiswMDBiZDMwMCAgdyAgIERGIC50ZXh0CTAwMDAwMGQ1ICBHTElCQ18yLjAgICBpc3dhbHBoYQorMDAwNTU3ZDAgIHcgICBERiAudGV4dAkwMDAwMDE2ZiAgR0xJQkNfMi4wICAgZ2V0cworMDAwZjI1NzAgZyAgICBERiAudGV4dAkwMDAwMDBjYiAoR0xJQkNfMi4xKSAgcmVhZGRpcjY0CiswMDBjODVmMCBnICAgIERGIC50ZXh0CTAwMDAwMDI5ICBHTElCQ18yLjIgICBfX3Jlc19uaW5pdAorMDAwYmFiZTAgIHcgICBERiAudGV4dAkwMDAwMDAzNiAgR0xJQkNfMi4wICAgcGVyc29uYWxpdHkKKzAwMDAwMDAwICB3ICAgRCAgKlVORCoJMDAwMDAwMDAgICAgICAgICAgICAgIF9fcHRocmVhZF9rZXlfY3JlYXRlCiswMDBiZDNlMCAgdyAgIERGIC50ZXh0CTAwMDAwMGQ1ICBHTElCQ18yLjEgICBpc3dibGFuaworMDAwNWZlNzAgZyAgICBERiAudGV4dAkwMDAwMDA2YSAgR0xJQkNfMi4wICAgX0lPX2luaXRfbWFya2VyCiswMDA2YTc0MCBnICAgIERGIC50ZXh0CTAwMDAwMDgyICBHTElCQ18yLjAgICBtZW1tZW0KKzAwMDJjMzcwIGcgICAgREYgLnRleHQJMDAwMDAwNTkgIEdMSUJDXzIuMCAgIF9fc3RydG9sX2ludGVybmFsCiswMDA1ZjY3MCBnICAgIERGIC50ZXh0CTAwMDAwMDhmICBHTElCQ18yLjEgICBfSU9fZmlsZV9maW5pc2gKKzAwMDAwMDAwIGcgICAgRE8gKkFCUyoJMDAwMDAwMDAgIEdMSUJDXzIuMy40IEdMSUJDXzIuMy40CiswMDA4YTcxMCAgdyAgIERGIC50ZXh0CTAwMDAwMDM1ICBHTElCQ18yLjAgICBnZXRyZXN1aWQKKzAwMDI5ZTIwIGcgICAgREYgLnRleHQJMDAwMDAwNmMgIEdMSUJDXzIuMCAgIGJzZWFyY2gKKzAwMDI5OTAwIGcgICAgREYgLnRleHQJMDAwMDAwNzQgIEdMSUJDXzIuMSAgIHNpZ3JlbHNlCiswMDBiYzM1MCBnICAgIERGIC50ZXh0CTAwMDAwMWMxICBHTElCQ18yLjAgICBfX21vbnN0YXJ0dXAKKzAwMGI0MjUwIGcgICAgREYgLnRleHQJMDAwMDAwM2MgIEdMSUJDXzIuMCAgIHVzbGVlcAorMDAwZjNiOTAgZyAgICBERiAudGV4dAkwMDAwMDAyYiAoR0xJQkNfMi4xKSAgbmZ0dworMDAwZjI0OTAgZyAgICBERiAudGV4dAkwMDAwMDBkNSAoR0xJQkNfMi4wKSAgX0lPX2ZpbGVfY2xvc2VfaXQKKzAwMGNlNjcwIGcgICAgREYgLnRleHQJMDAwMDAwZGEgIEdMSUJDXzIuMS4yIGdldGhvc3RlbnRfcgorMDAwNmVkZDAgIHcgICBERiAudGV4dAkwMDAwMDAzNCAgR0xJQkNfMi4yICAgd21lbXBjcHkKKzAwMGNiZjUwICB3ICAgREYgLnRleHQJMDAwMDAyYmQgIEdMSUJDXzIuMSAgIGJhY2t0cmFjZV9zeW1ib2xzCiswMDExN2Q4OCBnICAgIERPIC5kYXRhCTAwMDAwMDA4ICBHTElCQ18yLjAgICBfX3R6bmFtZQorMDAwNTg0OTAgZyAgICBERiAudGV4dAkwMDAwMDA1NCAgR0xJQkNfMi4yICAgX193b3ZlcmZsb3cKKzAwMTE3OTYwIGcgICAgRE8gLmRhdGEJMDAwMDAwNTAgIEdMSUJDXzIuMCAgIF9JT19zdGRvdXRfCiswMDBlNDYxMCBnICAgIERGIC50ZXh0CTAwMDAwMDVkICBHTElCQ18yLjEgICBnZXRuZXRuYW1lCiswMDA4OWE0MCAgdyAgIERGIC50ZXh0CTAwMDAwMDY4ICBHTElCQ18yLjAgICBleGVjdmUKKzAwMTE3NTYwIGcgICAgRE8gLmRhdGEJMDAwMDAwOTggIEdMSUJDXzIuMSAgIF9JT18yXzFfc3Rkb3V0XworMDAwY2Y3YjAgZyAgICBERiAudGV4dAkwMDAwMDEyNSAgR0xJQkNfMi4wICAgZ2V0cHJvdG9ieW5hbWUKKzAwMDI5NTYwIGcgICAgREYgLnRleHQJMDAwMDAwMjcgIEdMSUJDXzIuMSAgIF9fbGliY19jdXJyZW50X3NpZ3J0bWF4CiswMDA3MDQxMCBnICAgIERGIC50ZXh0CTAwMDAwMDU5ICBHTElCQ18yLjAgICBfX3djc3RvdWxsX2ludGVybmFsCiswMDA1NjhjMCAgdyAgIERGIC50ZXh0CTAwMDAwMDkzICBHTElCQ18yLjAgICB2c3NjYW5mCiswMDBiYmExMCBnICAgIERGIC50ZXh0CTAwMDAwMDRmICBHTElCQ18yLjAgICBzZW1nZXQKKzAwMGM1ZmQwIGcgICAgREYgLnRleHQJMDAwMDAwMmEgIEdMSUJDXzIuMCAgIHB0aHJlYWRfY29uZGF0dHJfaW5pdAorMDAwZTZlYzAgZyAgICBERiAudGV4dAkwMDAwMDA2OSAgR0xJQkNfMi4xICAgeGRyX2ludDE2X3QKKzAwMDZhZGIwICB3ICAgREYgLnRleHQJMDAwMDAxMjIgIEdMSUJDXzIuMCAgIGFyZ3pfaW5zZXJ0CiswMDA4YTQzMCAgdyAgIERGIC50ZXh0CTAwMDAwMDA4ICBHTElCQ18yLjAgICBnZXRwaWQKKzAwMGIzNzYwICB3ICAgREYgLnRleHQJMDAwMDAwMjYgIEdMSUJDXzIuMCAgIGdldHBhZ2VzaXplCiswMDAwMDAwMCAgdyAgIEQgICpVTkQqCTAwMDAwMDAwICAgICAgICAgICAgICBfX3B0aHJlYWRfcndsb2NrX3dybG9jaworMDAwZDc0YjAgZyAgICBERiAudGV4dAkwMDAwMDAzMyAgR0xJQkNfMi4zLjMgaW5ldDZfb3B0aW9uX2luaXQKKzAwMDJiZmUwICB3ICAgREYgLnRleHQJMDAwMDAwOTkgIEdMSUJDXzIuMCAgIGVyYW5kNDhfcgorMDAwYmEwNzAgZyAgICBERiAudGV4dAkwMDAwMDAzYSAgR0xJQkNfMi4zICAgbHJlbW92ZXhhdHRyCiswMDBlYmRhMCBnICAgIERGIC50ZXh0CTAwMDAwMDJhICBHTElCQ18yLjEgICB1cGR3dG1weAorMDAwMzUwMDAgIHcgICBERiAudGV4dAkwMDAwMDAyNyAgR0xJQkNfMi4xICAgX19zdHJ0b2xkX2wKKzAwMGRmZGIwIGcgICAgREYgLnRleHQJMDAwMDAwYmQgIEdMSUJDXzIuMS4xIHhkcl91X2h5cGVyCiswMDA1NDQxMCBnICAgIERGIC50ZXh0CTAwMDAwMWI4ICBHTElCQ18yLjIgICBfSU9fZmdldHBvcworMDAwNmI0MTAgZyAgICBERiAudGV4dAkwMDAwMDA0MiAgR0xJQkNfMi4wICAgZW52el9nZXQKKzAwMGI4MDUwIGcgICAgREYgLnRleHQJMDAwMDAxZTAgIEdMSUJDXzIuMCAgIGhzZWFyY2hfcgorMDAwYWQwNzAgZyAgICBERiAudGV4dAkwMDAwMDAzYSAgR0xJQkNfMi4wICAgX19kdXAyCiswMDAyYTYzMCBnICAgIERGIC50ZXh0CTAwMDAwMTQ3ICBHTElCQ18yLjAgICBxc29ydAorMDAwZDQ0ZTAgIHcgICBERiAudGV4dAkwMDAwMDA4NiAgR0xJQkNfMi4wICAgZ2V0bmV0Z3JlbnRfcgorMDAwZDQ3ZjAgZyAgICBERiAudGV4dAkwMDAwMDBhNiAgR0xJQkNfMi4wICAgZW5kYWxpYXNlbnQKKzAwMDZlODcwIGcgICAgREYgLnRleHQJMDAwMDAwMzUgIEdMSUJDXzIuMCAgIHdjc3JjaHIKKzAwMGFkNGUwICB3ICAgREYgLnRleHQJMDAwMDAwMzUgIEdMSUJDXzIuMCAgIGZjaG93bgorMDAwYjU0MzAgIHcgICBERiAudGV4dAkwMDAwMDAzYSAgR0xJQkNfMi4wICAgdHJ1bmNhdGUKKzAwMDJiYWUwICB3ICAgREYgLnRleHQJMDAwMDAxMDMgIEdMSUJDXzIuMCAgIHNldHN0YXRlX3IKKzAwMDUyMjkwIGcgICAgREYgLnRleHQJMDAwMDAwMjQgIEdMSUJDXzIuMCAgIGZzY2FuZgorMDAwZTNhZTAgZyAgICBERiAudGV4dAkwMDAwMDA3MyAgR0xJQkNfMi4xICAga2V5X2RlY3J5cHRzZXNzaW9uCiswMDA1NDVkMCAgdyAgIERGIC50ZXh0CTAwMDAwMTUxICBHTElCQ18yLjAgICBmZ2V0cworMDAwNjA2NDAgZyAgICBERiAudGV4dAkwMDAwMDE3NyAgR0xJQkNfMi4wICAgX0lPX2ZsdXNoX2FsbF9saW5lYnVmZmVyZWQKKzAwMGI5YWYwIGcgICAgREYgLnRleHQJMDAwMDAwY2IgIEdMSUJDXzIuMCAgIGRpcm5hbWUKKzAwMGYyYzIwIGcgICAgREYgLnRleHQJMDAwMDBlNTggKEdMSUJDXzIuMSkgIGdsb2I2NAorMDAwNzNlYTAgIHcgICBERiAudGV4dAkwMDAwMDAzNyAgR0xJQkNfMi4xICAgX193Y3N0b2RfbAorMDAwNTdiZDAgZyAgICBERiAudGV4dAkwMDAwMDAzNiAgR0xJQkNfMi4yICAgdndwcmludGYKKzAwMGJmMmMwIGcgICAgREYgLnRleHQJMDAwMDAxNjUgIEdMSUJDXzIuMS4yIGdldHNwbmFtX3IKKzAwMGNlZDQwIGcgICAgREYgLnRleHQJMDAwMDAwYTQgIEdMSUJDXzIuMCAgIGdldG5ldGVudAorMDAwMmM0ZjAgZyAgICBERiAudGV4dAkwMDAwMDA1OSAgR0xJQkNfMi4wICAgX19zdHJ0b2xsX2ludGVybmFsCiswMDBmMmEyMCBnICAgIERGIC50ZXh0CTAwMDAwMDM3IChHTElCQ18yLjApICBnZXRncmVudF9yCiswMDBiYTI4MCBnICAgIERGIC50ZXh0CTAwMDAwMDNhICBHTElCQ18yLjMuNCB2bTg2CiswMDBiZDE0MCAgdyAgIERGIC50ZXh0CTAwMDAwMGQ1ICBHTElCQ18yLjAgICBpc3d4ZGlnaXQKKzAwMDVhNGYwIGcgICAgREYgLnRleHQJMDAwMDAxNGMgIEdMSUJDXzIuMiAgIF9JT193ZG9fd3JpdGUKKzAwMGIzYWYwIGcgICAgREYgLnRleHQJMDAwMDAwYTIgIEdMSUJDX1BSSVZBVEUgX19saWJjX3BzZWxlY3QKKzAwMDZlMzUwIGcgICAgREYgLnRleHQJMDAwMDAwYWMgIEdMSUJDXzIuMy40IF9feHBnX3N0cmVycm9yX3IKKzAwMGQ3NTkwIGcgICAgREYgLnRleHQJMDAwMDAwYzEgIEdMSUJDXzIuMy4zIGluZXQ2X29wdGlvbl9maW5kCiswMDA1NTM4MCAgdyAgIERGIC50ZXh0CTAwMDAwMjRlICBHTElCQ18yLjAgICBfX2dldGRlbGltCiswMDA2ZDY1MCBnICAgIERGIC50ZXh0CTAwMDAwMDNmICBHTElCQ18yLjEuMSBfX3N0cmNtcF9nZworMDAwYWNhMjAgIHcgICBERiAudGV4dAkwMDAwMDA3YyAgR0xJQkNfMi4wICAgX19yZWFkCiswMDBiOTM4MCAgdyAgIERGIC50ZXh0CTAwMDAwMTg1ICBHTElCQ18yLjAgICBlcnJvcl9hdF9saW5lCiswMDA2YjYyMCBnICAgIERGIC50ZXh0CTAwMDAwMGZiICBHTElCQ18yLjAgICBlbnZ6X2FkZAorMDAwYmViMjAgZyAgICBERiAudGV4dAkwMDAwMDE5NSAgR0xJQkNfMi4wICAgZmdldHNwZW50CiswMDBjZWEyMCBnICAgIERGIC50ZXh0CTAwMDAwMWQwICBHTElCQ18yLjEuMiBnZXRuZXRieWFkZHJfcgorMDAwYjdmZDAgZyAgICBERiAudGV4dAkwMDAwMDAyZCAgR0xJQkNfMi4wICAgaGNyZWF0ZQorMDAwODdmZTAgIHcgICBERiAudGV4dAkwMDAwMDBkMiAgR0xJQkNfMi4wICAgZ2V0cHcKKzAwMGUzYmUwIGcgICAgREYgLnRleHQJMDAwMDAwNWEgIEdMSUJDXzIuMSAgIGtleV9zZXRzZWNyZXQKKzAwMGFiZmYwIGcgICAgREYgLnRleHQJMDAwMDAwMzIgKEdMSUJDXzIuMSkgIF9fZnhzdGF0NjQKKzAwMGIxNjEwIGcgICAgREYgLnRleHQJMDAwMDAwNWYgIEdMSUJDXzIuMy4zIHBvc2l4X2ZhZHZpc2U2NAorMDAwY2NjYTAgZyAgICBERiAudGV4dAkwMDAwMDBmZiAgR0xJQkNfMi4zLjQgX19mcHJpbnRmX2NoaworMDAwNTMyNzAgZyAgICBERiAudGV4dAkwMDAwMDAyZCAgR0xJQkNfMi4wICAgX0lPX2Z1bmxvY2tmaWxlCiswMDBmM2U0MCBnICAgIERGIC50ZXh0CTAwMDAwMDVmIChHTElCQ18yLjApICBnZXRzcG5hbV9yCiswMDBlMzkwMCBnICAgIERGIC50ZXh0CTAwMDAwMDVmICBHTElCQ18yLjEgICBrZXlfZ2V0X2NvbnYKKzAwMGM3MjgwIGcgICAgREYgLnRleHQJMDAwMDAyODcgIEdMSUJDXzIuMCAgIGluZXRfbnNhcF9hZGRyCiswMDBiYTEwMCBnICAgIERGIC50ZXh0CTAwMDAwMDNhICBHTElCQ18yLjMgICByZW1vdmV4YXR0cgorMDAwNWIyMjAgIHcgICBERiAudGV4dAkwMDAwMDBjYyAgR0xJQkNfMi4wICAgZ2V0YworMDAwMjI3ZTAgIHcgICBERiAudGV4dAkwMDAwMDAxNyAgR0xJQkNfMi4zICAgaXN1cHBlcl9sCiswMDA1NzE3MCBnICAgIERGIC50ZXh0CTAwMDAwMGEyICBHTElCQ18yLjIgICBmZ2V0d3NfdW5sb2NrZWQKKzAwMGJhYzYwICB3ICAgREYgLnRleHQJMDAwMDAwNDggIEdMSUJDXzIuMCAgIHByY3RsCiswMDBmM2JjMCBnICAgIERGIC50ZXh0CTAwMDAwMDJiIChHTElCQ18yLjEpICBuZnR3NjQKKzAwMGJlNGEwIGcgICAgREYgLnRleHQJMDAwMDAwN2QgIEdMSUJDXzIuMSAgIF9faXN3c3BhY2VfbAorMDAwYWQxZTAgIHcgICBERiAudGV4dAkwMDAwMDAzNiAgR0xJQkNfMi4wICAgZmNoZGlyCiswMDA1ODBjMCBnICAgIERGIC50ZXh0CTAwMDAwMDc1ICBHTElCQ18yLjIgICBfSU9fc3dpdGNoX3RvX3dnZXRfbW9kZQorMDAwYmI4NDAgIHcgICBERiAudGV4dAkwMDAwMDBjNCAgR0xJQkNfMi4wICAgbXNncmN2CiswMDBiYmIyMCBnICAgIERGIC50ZXh0CTAwMDAwMDY2ICBHTElCQ18yLjAgICBzaG1hdAorMDAxMTdkN2MgIHcgICBETyAuZGF0YQkwMDAwMDAwNCAgR0xJQkNfMi4wICAgX19yZWFsbG9jX2hvb2sKKzAwMGJhNTcwIGcgICAgREYgLnRleHQJMDAwMDAwMjggIEdMSUJDXzIuMy4zIGdudV9kZXZfbWFqb3IKKzAwMGEyN2EwICB3ICAgREYgLnRleHQJMDAwMDAwNDggIEdMSUJDXzIuMCAgIHJlX3NlYXJjaF8yCiswMDA2OWVmMCBnICAgIERGIC50ZXh0CTAwMDAwMDQ2ICBHTElCQ18yLjAgICBtZW1jcHkKKzAwMDUyNzAwIGcgICAgREYgLnRleHQJMDAwMDAwOWQgIEdMSUJDXzIuMSAgIHRtcGZpbGUKKzAwMDdkOWEwICB3ICAgREYgLnRleHQJMDAwMDAwM2MgIEdMSUJDXzIuMCAgIHNldGl0aW1lcgorMDAwNmU5OTAgIHcgICBERiAudGV4dAkwMDAwMDEyYyAgR0xJQkNfMi4xICAgd2Nzd2NzCiswMDA2MDFlMCBnICAgIERGIC50ZXh0CTAwMDAwMGVlICBHTElCQ18yLjAgICBfSU9fZGVmYXVsdF94c3B1dG4KKzAwMTA0ZDc4IGcgICAgRE8gLnJvZGF0YQkwMDAwMDAwNCAoR0xJQkNfMi4xKSAgc3lzX25lcnIKKzAwMTE3OWMwIGcgICAgRE8gLmRhdGEJMDAwMDAwNTAgIEdMSUJDXzIuMCAgIF9JT19zdGRlcnJfCiswMDBmMmJjMCBnICAgIERGIC50ZXh0CTAwMDAwMDVmIChHTElCQ18yLjApICBnZXRwd3VpZF9yCiswMDAyOTU2MCBnICAgIERGIC50ZXh0CTAwMDAwMDI3ICBHTElCQ19QUklWQVRFIF9fbGliY19jdXJyZW50X3NpZ3J0bWF4X3ByaXZhdGUKKzAwMGRiYjEwIGcgICAgREYgLnRleHQJMDAwMDAxYWUgIEdMSUJDXzIuMCAgIHBtYXBfZ2V0cG9ydAorMDAwNTY1ODAgIHcgICBERiAudGV4dAkwMDAwMDE4ZiAgR0xJQkNfMi4wICAgc2V0dmJ1ZgorMDAwNmFhZDAgIHcgICBERiAudGV4dAkwMDAwMDAzZSAgR0xJQkNfMi4wICAgYXJnel9jb3VudAorMDAwODlkYTAgZyAgICBERiAudGV4dAkwMDAwMDE5NSAgR0xJQkNfMi4wICAgZXhlY2wKKzAwMDZkNTAwIGcgICAgREYgLnRleHQJMDAwMDAwMzEgIEdMSUJDXzIuMS4xIF9fbWVtcGNweV9ieW4KKzAwMDg1OTUwIGcgICAgREYgLnRleHQJMDAwMDAwN2EgIEdMSUJDXzIuMCAgIHNlZWtkaXIKKzAwMDU1MjEwIGcgICAgREYgLnRleHQJMDAwMDAxNjcgIEdMSUJDXzIuMCAgIF9JT19md3JpdGUKKzAwMGE0NTEwICB3ICAgREYgLnRleHQJMDAwMDAwM2EgIEdMSUJDXzIuMCAgIHNjaGVkX3JyX2dldF9pbnRlcnZhbAorMDAwNWI1YTAgZyAgICBERiAudGV4dAkwMDAwMDAyMSAgR0xJQkNfMi4xICAgcGNsb3NlCiswMDA1ZmRlMCBnICAgIERGIC50ZXh0CTAwMDAwMDRjICBHTElCQ18yLjAgICBfSU9fc3VuZ2V0YworMDAwYmI0NjAgZyAgICBERiAudGV4dAkwMDAwMDA1MCAgR0xJQkNfMi4wICAgaXNmZHR5cGUKKzAwMDIyODIwIGcgICAgREYgLnRleHQJMDAwMDAwMTEgIEdMSUJDXzIuMSAgIF9fdG9sb3dlcl9sCiswMDA4YzM1MCBnICAgIERGIC50ZXh0CTAwMDAwZTU4ICBHTElCQ18yLjAgICBnbG9iCiswMDBkZDFlMCBnICAgIERGIC50ZXh0CTAwMDAwMDRlICBHTElCQ18yLjAgICBzdmNfc2VuZHJlcGx5CiswMDBlYmNlMCBnICAgIERGIC50ZXh0CTAwMDAwMDIxICBHTElCQ18yLjEgICBnZXR1dHhpZAorMDAwNTI0MTAgZyAgICBERiAudGV4dAkwMDAwMDBjOCAgR0xJQkNfMi4wICAgcGVycm9yCiswMDAxZGM5MCBnICAgIERGIC50ZXh0CTAwMDAwMDE2ICBHTElCQ19QUklWQVRFIF9fZ2NvbnZfZ2V0X2NhY2hlCiswMDBkYjQ2MCBnICAgIERGIC50ZXh0CTAwMDAwMDJkICBHTElCQ18yLjAgICBfcnBjX2R0YWJsZXNpemUKKzAwMGUzYjYwIGcgICAgREYgLnRleHQJMDAwMDAwNzMgIEdMSUJDXzIuMSAgIGtleV9lbmNyeXB0c2Vzc2lvbgorMDAwMDAwMDAgZyAgICBETyAqQUJTKgkwMDAwMDAwMCAgR0xJQkNfMi4xLjEgR0xJQkNfMi4xLjEKKzAwMGM2MGEwIGcgICAgREYgLnRleHQJMDAwMDAwMmEgKEdMSUJDXzIuMCkgIHB0aHJlYWRfY29uZF9zaWduYWwKKzAwMDZhNjAwIGcgICAgREYgLnRleHQJMDAwMDAwM2UgIEdMSUJDXzIuMCAgIHN3YWIKKzAwMDIyNTgwIGcgICAgREYgLnRleHQJMDAwMDAwMTUgIEdMSUJDXzIuMSAgIF9faXNibGFua19sCiswMDAyZDVjMCAgdyAgIERGIC50ZXh0CTAwMDAwMDJlICBHTElCQ18yLjMgICBzdHJ0b2xsX2wKKzAwMGFkMGYwICB3ICAgREYgLnRleHQJMDAwMDAwNzggIEdMSUJDXzIuMCAgIGNyZWF0CiswMDA4ODk3MCBnICAgIERGIC50ZXh0CTAwMDAwMWRlICBHTElCQ18yLjEuMiBnZXRwd3VpZF9yCiswMDBhZGY1MCAgdyAgIERGIC50ZXh0CTAwMDAwMDNjICBHTElCQ18yLjAgICByZWFkbGluaworMDAwNjc0NDAgZyAgICBERiAudGV4dAkwMDAwMDAwNSAgR0xJQkNfMi4wICAgdHJfYnJlYWsKKzAwMGIyYjIwIGcgICAgREYgLnRleHQJMDAwMDAwMzIgIEdMSUJDXzIuMiAgIHNldHJsaW1pdAorMDAwNmRiYjAgZyAgICBERiAudGV4dAkwMDAwMDBiMiAgR0xJQkNfMi4xLjEgX19zdHBjcHlfc21hbGwKKzAwMDI3ZjIwICB3ICAgREYgLnRleHQJMDAwMDAwMjQgIEdMSUJDXzIuMCAgIGlzaW5mZgorMDAwYjM5NzAgIHcgICBERiAudGV4dAkwMDAwMDA5NCAgR0xJQkNfUFJJVkFURSBfX2xpYmNfc2VsZWN0CiswMDA1OWU0MCBnICAgIERGIC50ZXh0CTAwMDAwMjMzICBHTElCQ18yLjIgICBfSU9fd2ZpbGVfb3ZlcmZsb3cKKzAwMDY1OTYwIGcgICAgREYgLnRleHQJMDAwMDAyMjUgIEdMSUJDXzIuMCAgIF9fbGliY19tZW1hbGlnbgorMDAwYzYxNTAgZyAgICBERiAudGV4dAkwMDAwMDAzNiAgR0xJQkNfMi4wICAgcHRocmVhZF9lcXVhbAorMDAwNWM3ZjAgZyAgICBERiAudGV4dAkwMDAwMDAxMyAgR0xJQkNfMi4yICAgX19md3JpdGFibGUKKzAwMDU1ZjUwICB3ICAgREYgLnRleHQJMDAwMDAxN2YgIEdMSUJDXzIuMCAgIHB1dHMKKzAwMGQ0NjcwIGcgICAgREYgLnRleHQJMDAwMDAwOTggIEdMSUJDXzIuMCAgIGdldG5ldGdyZW50CiswMDAyYjFlMCBnICAgIERGIC50ZXh0CTAwMDAwMGI2ICBHTElCQ18yLjEuMyBfX2N4YV9maW5hbGl6ZQorMDAwNjExYjAgZyAgICBERiAudGV4dAkwMDAwMDA2NyAgR0xJQkNfMi4wICAgX19vdmVyZmxvdworMDAwNmQ0ODAgZyAgICBERiAudGV4dAkwMDAwMDAzMyAgR0xJQkNfMi4xLjEgX19tZW1wY3B5X2J5NAorMDAwYjhmZjAgZyAgICBERiAudGV4dAkwMDAwMDAyMiAgR0xJQkNfMi4wICAgZXJyeAorMDAwYWQwNzAgIHcgICBERiAudGV4dAkwMDAwMDAzYSAgR0xJQkNfMi4wICAgZHVwMgorMDAwZjA5YTAgZyAgICBERiAudGV4dAkwMDAwMDA5NSAoR0xJQkNfMi4wKSAgX0lPX2ZvcGVuCiswMDAyOTUzMCBnICAgIERGIC50ZXh0CTAwMDAwMDI3ICBHTElCQ18yLjEgICBfX2xpYmNfY3VycmVudF9zaWdydG1pbgorMDAwMjIyNTAgZyAgICBERiAudGV4dAkwMDAwMDA3ZCAgR0xJQkNfMi4wICAgaXNsb3dlcgorMDAwNzAzNTAgZyAgICBERiAudGV4dAkwMDAwMDA1OSAgR0xJQkNfMi4wICAgX193Y3N0b2xsX2ludGVybmFsCiswMDBiOTVkMCBnICAgIERGIC50ZXh0CTAwMDAwMDY4ICBHTElCQ18yLjAgICB1c3RhdAorMDAwNmYxNjAgIHcgICBERiAudGV4dAkwMDAwMDI0YiAgR0xJQkNfMi4wICAgbWJydG93YworMDAwYmI2NjAgZyAgICBERiAudGV4dAkwMDAwMDAyYyAgR0xJQkNfMi4yLjQgc29ja2F0bWFyaworMDAwMjNkOTAgIHcgICBERiAudGV4dAkwMDAwMDA0MSAgR0xJQkNfMi4yICAgZG5nZXR0ZXh0CiswMDBiMjk0MCBnICAgIERGIC50ZXh0CTAwMDAwMDMzICBHTElCQ18yLjAgICB0Y2ZsdXNoCiswMDA4OWJmMCBnICAgIERGIC50ZXh0CTAwMDAwMWFkICBHTElCQ18yLjAgICBleGVjbGUKKzAwMDU2OTYwIGcgICAgREYgLnRleHQJMDAwMDAxYTMgIEdMSUJDXzIuMiAgIGZnZXRwb3M2NAorMDAwNTMyMDAgZyAgICBERiAudGV4dAkwMDAwMDAyZCAgR0xJQkNfMi4wICAgX0lPX2Zsb2NrZmlsZQorMDAwNWM4MjAgZyAgICBERiAudGV4dAkwMDAwMDA3NiAgR0xJQkNfMi4yICAgX19mcHVyZ2UKKzAwMDIxZjYwIGcgICAgREYgLnRleHQJMDAwMDAwNjggIEdMSUJDXzIuMCAgIHRvbG93ZXIKKzAwMDhhNDUwICB3ICAgREYgLnRleHQJMDAwMDAwMGMgIEdMSUJDXzIuMCAgIGdldHVpZAorMDAwYjYwMTAgZyAgICBERiAudGV4dAkwMDAwMDJmNiAgR0xJQkNfMi4wICAgZ2V0cGFzcworMDAwNmFhODAgIHcgICBERiAudGV4dAkwMDAwMDA0NyAgR0xJQkNfMi4wICAgYXJnel9hZGQKKzAwMDIyZWMwICB3ICAgREYgLnRleHQJMDAwMDAwMjMgIEdMSUJDXzIuMCAgIGRnZXR0ZXh0CiswMDAyN2I4MCBnICAgIERGIC50ZXh0CTAwMDAwMDJkICBHTElCQ18yLjAgICBfX2lzaW5mCiswMDA4NThkMCBnICAgIERGIC50ZXh0CTAwMDAwMDc3ICBHTElCQ18yLjAgICByZXdpbmRkaXIKKzAwMGIyOTgwIGcgICAgREYgLnRleHQJMDAwMDAwNzcgIEdMSUJDXzIuMCAgIHRjc2VuZGJyZWFrCiswMDBiZDY4MCAgdyAgIERGIC50ZXh0CTAwMDAwMGQ1ICBHTElCQ18yLjAgICBpc3dsb3dlcgorMDAwNmRlZTAgZyAgICBERiAudGV4dAkwMDAwMDA2MyAgR0xJQkNfMi4xLjEgX19zdHJzZXBfMmMKKzAwMDJiZmIwIGcgICAgREYgLnRleHQJMDAwMDAwMmUgIEdMSUJDXzIuMCAgIGRyYW5kNDhfcgorMDAwMzU1NTAgIHcgICBERiAudGV4dAkwMDAwMDA3ZCAgR0xJQkNfMi4wICAgc3lzdGVtCiswMDA1YWM5MCAgdyAgIERGIC50ZXh0CTAwMDAwMDY4ICBHTElCQ18yLjAgICBmZW9mCiswMDA1NzAxMCBnICAgIERGIC50ZXh0CTAwMDAwMTUxICBHTElCQ18yLjIgICBmZ2V0d3MKKzAwMGI0ODcwICB3ICAgREYgLnRleHQJMDAwMDAwODMgIEdMSUJDXzIuMCAgIGhhc21udG9wdAorMDAwZGQwZjAgZyAgICBERiAudGV4dAkwMDAwMDAzOSAgR0xJQkNfMi4yLjMgX19ycGNfdGhyZWFkX3N2Y19tYXhfcG9sbGZkCiswMDA1ZTE5MCBnICAgIERGIC50ZXh0CTAwMDAwMDMyICBHTElCQ18yLjAgICBfSU9fZmlsZV9jbG9zZQorMDAwNmU4MjAgZyAgICBERiAudGV4dAkwMDAwMDA0MSAgR0xJQkNfMi4wICAgd2NzcGJyaworMDAwNmFlZTAgIHcgICBERiAudGV4dAkwMDAwMDA1NCAgR0xJQkNfMi4wICAgYXJnel9zdHJpbmdpZnkKKzAwMDcwMWQwIGcgICAgREYgLnRleHQJMDAwMDAwNTggIEdMSUJDXzIuMCAgIHdjc3RvbAorMDAwMjI4MjAgIHcgICBERiAudGV4dAkwMDAwMDAxMSAgR0xJQkNfMi4zICAgdG9sb3dlcl9sCiswMDA2N2Q0MCBnICAgIERGIC50ZXh0CTAwMDAwMGJhICBHTElCQ18yLjAgICBfb2JzdGFja19iZWdpbl8xCiswMDBkZGU0MCBnICAgIERGIC50ZXh0CTAwMDAwMDlkICBHTElCQ18yLjAgICBzdmNyYXdfY3JlYXRlCiswMDA2NTc4MCBnICAgIERGIC50ZXh0CTAwMDAwMWQ0ICBHTElCQ18yLjAgICBtYWxsb2MKKzAwMTFhNWE0IGcgICAgRE8gLmJzcwkwMDAwMDAwNCAgR0xJQkNfMi4wICAgX25sX21zZ19jYXRfY250cgorMDAwNTMxNjAgZyAgICBERiAudGV4dAkwMDAwMDA1NyAgR0xJQkNfMi4wICAgcmVtb3ZlCiswMDBhYzg0MCAgdyAgIERGIC50ZXh0CTAwMDAwMDdjICBHTElCQ18yLjAgICBfX29wZW4KKzAwMDVmZmYwIGcgICAgREYgLnRleHQJMDAwMDAwMzYgIEdMSUJDXzIuMCAgIF9JT191bnNhdmVfbWFya2VycworMDAwMTU1ZjAgZyAgICBERiAudGV4dAkwMDAwMDAyYSAoR0xJQkNfMi4wKSAgX19mbG9hdGRpZGYKKzAwMGFkZTkwICB3ICAgREYgLnRleHQJMDAwMDAwMzIgIEdMSUJDXzIuMCAgIGlzYXR0eQorMDAwYWI1MjAgZyAgICBERiAudGV4dAkwMDAwMDA0ZSAgR0xJQkNfMi4yICAgcG9zaXhfc3Bhd24KKzAwMGIyM2EwIGcgICAgREYgLnRleHQJMDAwMDAwMTggIEdMSUJDXzIuMCAgIGNmZ2V0aXNwZWVkCiswMDBiZGYzMCAgdyAgIERGIC50ZXh0CTAwMDAwMDdkICBHTElCQ18yLjMgICBpc3d4ZGlnaXRfbAorMDAwMjJlYzAgZyAgICBERiAudGV4dAkwMDAwMDAyMyAgR0xJQkNfMi4wICAgX19kZ2V0dGV4dAorMDAwYTJhMTAgZyAgICBERiAudGV4dAkwMDAwMDNhZiAgR0xJQkNfMi4wICAgY29uZnN0cgorMDAwNmUwMTAgZyAgICBERiAudGV4dAkwMDAwMDA0NSAgR0xJQkNfMi4xLjEgX19zdHJjYXRfYworMDAwYmRhMDAgIHcgICBERiAudGV4dAkwMDAwMDBkNSAgR0xJQkNfMi4wICAgaXN3c3BhY2UKKzAwMDAwMDAwIGcgICAgRE8gKkFCUyoJMDAwMDAwMDAgIEdMSUJDXzIuMSAgIEdMSUJDXzIuMQorMDAwODg2MzAgZyAgICBERiAudGV4dAkwMDAwMDBhNiAgR0xJQkNfMi4wICAgZW5kcHdlbnQKKzAwMDI4NmEwICB3ICAgREYgLnRleHQJMDAwMDAwNjMgIEdMSUJDXzIuMCAgIHNpZ2xvbmdqbXAKKzAwMDU0ZGMwIGcgICAgREYgLnRleHQJMDAwMDAxMzEgIEdMSUJDXzIuMiAgIGZzZXRwb3MKKzAwMGM1ZjIwIGcgICAgREYgLnRleHQJMDAwMDAwMzMgIEdMSUJDXzIuMCAgIHB0aHJlYWRfYXR0cl9nZXRzY29wZQorMDAwZGVhNTAgZyAgICBERiAudGV4dAkwMDAwMDJhNSAgR0xJQkNfMi4wICAgc3ZjdGNwX2NyZWF0ZQorMDAxMTc0YzAgZyAgICBETyAuZGF0YQkwMDAwMDA5OCAgR0xJQkNfMi4xICAgX0lPXzJfMV9zdGRpbl8KKzAwMDg5NjQwICB3ICAgREYgLnRleHQJMDAwMDAyNGUgIEdMSUJDXzIuMCAgIHNsZWVwCiswMDBmMGE0MCBnICAgIERGIC50ZXh0CTAwMDAwMWM3IChHTElCQ18yLjApICBmZG9wZW4KKzAwMTFhNmJjIGcgICAgRE8gLmJzcwkwMDAwMDAwNCAgR0xJQkNfMi4wICAgb3B0YXJnCiswMDAyMjc4MCBnICAgIERGIC50ZXh0CTAwMDAwMDE3ICBHTElCQ18yLjEgICBfX2lzcHJpbnRfbAorMDAwYTQzZTAgIHcgICBERiAudGV4dAkwMDAwMDAzYyAgR0xJQkNfMi4wICAgc2NoZWRfc2V0c2NoZWR1bGVyCiswMDA0M2RhMCBnICAgIERGIC50ZXh0CTAwMDAwMDM0ICBHTElCQ18yLjEgICBfX2FzcHJpbnRmCiswMDA2ODhiMCBnICAgIERGIC50ZXh0CTAwMDAwMTU0ICBHTElCQ18yLjAgICBfX3N0cmVycm9yX3IKKzAwMDY5YjYwIGcgICAgREYgLnRleHQJMDAwMDAwMzIgIEdMSUJDXzIuMCAgIF9fYnplcm8KKzAwMDZlZTEwICB3ICAgREYgLnRleHQJMDAwMDAxN2MgIEdMSUJDXzIuMCAgIGJ0b3djCiswMDBiYWRhMCBnICAgIERGIC50ZXh0CTAwMDAwMDM2ICBHTElCQ18yLjAgICBzeXNpbmZvCiswMDAyN2U4MCAgdyAgIERGIC50ZXh0CTAwMDAwMDgzICBHTElCQ18yLjAgICBsZGV4cAorMDAxMWE2ZDAgZyAgICBETyAuYnNzCTAwMDAwMDA0ICBHTElCQ18yLjAgICBsb2MyCiswMDAyYzU1MCBnICAgIERGIC50ZXh0CTAwMDAwMDU4ICBHTElCQ18yLjAgICBzdHJ0b2xsCiswMDA1YmI1MCAgdyAgIERGIC50ZXh0CTAwMDAwMGY1ICBHTElCQ18yLjAgICB2c25wcmludGYKKzAwMDgwYWEwIGcgICAgREYgLnRleHQJMDAwMDFlOGIgIEdMSUJDXzIuMyAgIF9fc3RyZnRpbWVfbAorMDAwZTNmMzAgZyAgICBERiAudGV4dAkwMDAwMDA4ZiAgR0xJQkNfMi4xICAgeGRyX3VuaXhjcmVkCiswMDAxNWJlMCBnICAgIERGIC50ZXh0CTAwMDAwMTEzICBHTElCQ18yLjEgICBpY29udl9vcGVuCiswMDExNTQ4MCBnICAgIERPIC5kYXRhLnJlbC5ybwkwMDAwMDFlYyAoR0xJQkNfMi4wKSAgc3lzX2Vycmxpc3QKKzAwMDJjNWIwIGcgICAgREYgLnRleHQJMDAwMDAwNTkgKEdMSUJDXzIuMCkgIF9fc3RydG91cV9pbnRlcm5hbAorMDAwZTI0MTAgZyAgICBERiAudGV4dAkwMDAwMDA2YiAgR0xJQkNfMi4xICAgYXV0aGRlc19jcmVhdGUKKzAwMDdhMDMwICB3ICAgREYgLnRleHQJMDAwMDAwNjMgIEdMSUJDXzIuMyAgIHdjc2Nhc2VjbXBfbAorMDAwY2UwYzAgZyAgICBERiAudGV4dAkwMDAwMDI3ZSAgR0xJQkNfMi4xLjIgZ2V0aG9zdGJ5bmFtZTJfcgorMDAwNmQ1ODAgZyAgICBERiAudGV4dAkwMDAwMDAzYyAgR0xJQkNfMi4xLjEgX19zdHJuY3B5X2dnCiswMDA1YjNkMCBnICAgIERGIC50ZXh0CTAwMDAwMGMyICBHTElCQ18yLjAgICBvcGVuX21lbXN0cmVhbQorMDAwZTQxODAgZyAgICBERiAudGV4dAkwMDAwMDAzMiAgR0xJQkNfMi4wICAgeGRyX2tleXN0YXR1cworMDAxMWE0Y2MgZyAgICBETyAuYnNzCTAwMDAwMDA0ICBHTElCQ19QUklWQVRFIF9kbF9vcGVuX2hvb2sKKzAwMGJiMGUwICB3ICAgREYgLnRleHQJMDAwMDAwNzggIEdMSUJDXzIuMCAgIHJlY3Zmcm9tCiswMDExN2RkNCBnICAgIERPIC5kYXRhCTAwMDAwMDE0ICBHTElCQ18yLjAgICBoX2Vycmxpc3QKKzAwMGIyODUwICB3ICAgREYgLnRleHQJMDAwMDAwYTggIEdMSUJDXzIuMCAgIHRjZHJhaW4KKzAwMGRkMjgwIGcgICAgREYgLnRleHQJMDAwMDAwNDIgIEdMSUJDXzIuMCAgIHN2Y2Vycl9kZWNvZGUKKzAwMGUwNDgwIGcgICAgREYgLnRleHQJMDAwMDAxNjYgIEdMSUJDXzIuMCAgIHhkcl9ieXRlcworMDAwZWRlNjAgZyAgICBERiAudGV4dAkwMDAwMDAzMyAgR0xJQkNfMi4xICAgX2RsX21jb3VudF93cmFwcGVyCiswMDAzNzliMCBnICAgIERGIC50ZXh0CTAwMDAwMDI3ICBHTElCQ18yLjEgICBzdHJ0b3VtYXgKKzAwMGYwYTQwIGcgICAgREYgLnRleHQJMDAwMDAxYzcgKEdMSUJDXzIuMCkgIF9JT19mZG9wZW4KKzAwMGFjMDcwICB3ICAgREYgLnRleHQJMDAwMDAwM2EgIEdMSUJDXzIuMCAgIHN0YXRmcworMDAwZTZjYTAgZyAgICBERiAudGV4dAkwMDAwMDBkMyAgR0xJQkNfMi4xLjEgeGRyX2ludDY0X3QKKzAwMDZlNmIwIGcgICAgREYgLnRleHQJMDAwMDAwYmYgIEdMSUJDXzIuMCAgIHdjc25jbXAKKzAwMDg5YWIwIGcgICAgREYgLnRleHQJMDAwMDAwZjEgIEdMSUJDXzIuMCAgIGZleGVjdmUKKzAwMGM5OTYwIGcgICAgREYgLnRleHQJMDAwMDAzNjAgIEdMSUJDX1BSSVZBVEUgX19uc3NfbG9va3VwX2Z1bmN0aW9uCiswMDBiYWMyMCBnICAgIERGIC50ZXh0CTAwMDAwMDNhICBHTElCQ18yLjIuMSBwaXZvdF9yb290CiswMDBlYmRkMCBnICAgIERGIC50ZXh0CTAwMDAwMDMzICBHTElCQ18yLjEuMSBnZXR1dG1weAorMDAwNmQ5YTAgZyAgICBERiAudGV4dAkwMDAwMDAzNiAgR0xJQkNfMi4xLjEgX19zdHJzdHJfY2cKKzAwMDAwMDAwICB3ICAgRCAgKlVORCoJMDAwMDAwMDAgICAgICAgICAgICAgIF9fcHRocmVhZF9yd2xvY2tfcmRsb2NrCiswMDAyMjVhMCBnICAgIERGIC50ZXh0CTAwMDAwMDQyICBHTElCQ18yLjAgICBfdG91cHBlcgorMDAwZTBjZjAgZyAgICBERiAudGV4dAkwMDAwMDA1ZCAgR0xJQkNfMi4wICAgeGRycmVjX2VuZG9mcmVjb3JkCiswMDAyODZhMCBnICAgIERGIC50ZXh0CTAwMDAwMDYzICBHTElCQ19QUklWQVRFIF9fbGliY19sb25nam1wCiswMDAyYjkxMCAgdyAgIERGIC50ZXh0CTAwMDAwMGI5ICBHTElCQ18yLjAgICByYW5kb21fcgorMDAwMmM0OTAgZyAgICBERiAudGV4dAkwMDAwMDA1OCAgR0xJQkNfMi4wICAgc3RydG91bAorMDAwNmM4MTAgIHcgICBERiAudGV4dAkwMDAwMGE4NSAgR0xJQkNfMi4zICAgc3RyeGZybV9sCiswMDBiY2I4MCAgdyAgIERGIC50ZXh0CTAwMDAwNGI4ICBHTElCQ18yLjIuMyBzcHJvZmlsCiswMDBlOTcyMCAgdyAgIERGIC50ZXh0CTAwMDAwMDY4ICBHTElCQ18yLjAgICBnZXR1dGVudAorMDAwNjFmNDAgZyAgICBERiAudGV4dAkwMDAwMDBhNSAgR0xJQkNfUFJJVkFURSBfX2xpYmNfbWFsbG9jX3B0aHJlYWRfc3RhcnR1cAorMDAwNzBlNTAgIHcgICBERiAudGV4dAkwMDAwMDAzZSAgR0xJQkNfMi4xICAgX193Y3N0b3VsX2wKKzAwMGE0NDIwICB3ICAgREYgLnRleHQJMDAwMDAwMzYgIEdMSUJDXzIuMCAgIHNjaGVkX2dldHNjaGVkdWxlcgorMDAwNmU5OTAgZyAgICBERiAudGV4dAkwMDAwMDEyYyAgR0xJQkNfMi4wICAgd2Nzc3RyCiswMDA1N2M1MCBnICAgIERGIC50ZXh0CTAwMDAwMDNmICBHTElCQ18yLjIgICB3c2NhbmYKKzAwMDg1NzQwICB3ICAgREYgLnRleHQJMDAwMDAxOGYgIEdMSUJDXzIuMCAgIHJlYWRkaXJfcgorMDAwZWJjYzAgZyAgICBERiAudGV4dAkwMDAwMDAxNyAgR0xJQkNfMi4xICAgZW5kdXR4ZW50CiswMDBiNDEwMCBnICAgIERGIC50ZXh0CTAwMDAwMDNlICBHTElCQ18yLjAgICBta3RlbXAKKzAwMDM1MDAwICB3ICAgREYgLnRleHQJMDAwMDAwMjcgIEdMSUJDXzIuMyAgIHN0cnRvbGRfbAorMDAwNTdmYTAgZyAgICBERiAudGV4dAkwMDAwMDAyYiAgR0xJQkNfMi4yICAgX0lPX3N3aXRjaF90b19tYWluX3dnZXRfYXJlYQorMDAwYmE2MzAgIHcgICBERiAudGV4dAkwMDAwMDAzYyAgR0xJQkNfMi4xICAgbW9kaWZ5X2xkdAorMDAwMjIzZDAgZyAgICBERiAudGV4dAkwMDAwMDA3YiAgR0xJQkNfMi4wICAgaXNwdW5jdAorMDAwYzY1MDAgZyAgICBERiAudGV4dAkwMDAwMDA0OCAgR0xJQkNfUFJJVkFURSBfX2xpYmNfcHRocmVhZF9pbml0CiswMDA3YjgzMCAgdyAgIERGIC50ZXh0CTAwMDAwMDNhICBHTElCQ18yLjAgICBzZXR0aW1lb2ZkYXkKKzAwMGNkOTIwIGcgICAgREYgLnRleHQJMDAwMDAxNjIgIEdMSUJDXzIuMCAgIGdldGhvc3RieWFkZHIKKzAwMDIyNzgwICB3ICAgREYgLnRleHQJMDAwMDAwMTcgIEdMSUJDXzIuMyAgIGlzcHJpbnRfbAorMDAwMjJlNzAgZyAgICBERiAudGV4dAkwMDAwMDA0MyAgR0xJQkNfMi4wICAgX19kY2dldHRleHQKKzAwMDJiNjkwIGcgICAgREYgLnRleHQJMDAwMDAwYTMgIEdMSUJDXzIuMCAgIHdjdG9tYgorMDAwMjdmNzAgIHcgICBERiAudGV4dAkwMDAwMDAxMSAgR0xJQkNfMi4wICAgZmluaXRlZgorMDAwNmE3MjAgZyAgICBERiAudGV4dAkwMDAwMDAxYiAgR0xJQkNfMi4wICAgbWVtZnJvYgorMDAwNjdlMDAgZyAgICBERiAudGV4dAkwMDAwMDE5OSAgR0xJQkNfMi4wICAgX29ic3RhY2tfbmV3Y2h1bmsKKzAwMDcwMmYwICB3ICAgREYgLnRleHQJMDAwMDAwNTggIEdMSUJDXzIuMCAgIHdjc3RvcQorMDAwNTRmMDAgZyAgICBERiAudGV4dAkwMDAwMDFkOCAgR0xJQkNfMi4wICAgX0lPX2Z0ZWxsCiswMDA4MGFhMCAgdyAgIERGIC50ZXh0CTAwMDAxZThiICBHTElCQ18yLjMgICBzdHJmdGltZV9sCiswMDExNzI4YyBnICAgIERPIC5kYXRhCTAwMDAwMDA0ICBHTElCQ18yLjAgICBvcHRlcnIKKzAwMGQ4ZTgwIGcgICAgREYgLnRleHQJMDAwMDAyZGMgIEdMSUJDXzIuMCAgIGNsbnRfY3JlYXRlCiswMDAyOTA3MCAgdyAgIERGIC50ZXh0CTAwMDAwMDNhICBHTElCQ18yLjAgICBzaWdhbHRzdGFjaworMDAwNjE2YzAgZyAgICBERiAudGV4dAkwMDAwMDA0ZSAgR0xJQkNfMi4wICAgX0lPX3N0cl9pbml0X3JlYWRvbmx5CiswMDBhZGZkMCAgdyAgIERGIC50ZXh0CTAwMDAwMDM2ICBHTElCQ18yLjAgICBybWRpcgorMDAwN2I4NzAgIHcgICBERiAudGV4dAkwMDAwMDExOSAgR0xJQkNfMi4wICAgYWRqdGltZQorMDAwYmE3ODAgZyAgICBERiAudGV4dAkwMDAwMDAzNiAgR0xJQkNfMi4wICAgX19hZGp0aW1leAorMDAwMmI2NDAgZyAgICBERiAudGV4dAkwMDAwMDA0NiAgR0xJQkNfMi4wICAgd2NzdG9tYnMKKzAwMDI3ZGYwICB3ICAgREYgLnRleHQJMDAwMDAwMGQgIEdMSUJDXzIuMSAgIHNjYWxibG4KKzAwMDZkOWUwIGcgICAgREYgLnRleHQJMDAwMDAwNDYgIEdMSUJDXzIuMS4xIF9fc3Ryc3RyX2cKKzAwMGJmODMwICB3ICAgREYgLnRleHQJMDAwMDAwODIgIEdMSUJDXzIuMCAgIHNnZXRzcGVudF9yCiswMDAyMjZjMCAgdyAgIERGIC50ZXh0CTAwMDAwMDE1ICBHTElCQ18yLjMgICBpc2FsbnVtX2wKKzAwMGJiM2UwICB3ICAgREYgLnRleHQJMDAwMDAwMzkgIEdMSUJDXzIuMCAgIHNvY2tldAorMDAwYjM5NzAgIHcgICBERiAudGV4dAkwMDAwMDA5NCAgR0xJQkNfMi4wICAgc2VsZWN0CiswMDBiYWEyMCBnICAgIERGIC50ZXh0CTAwMDAwMDQ4ICBHTElCQ18yLjAgICBpbml0X21vZHVsZQorMDAwZWZjODAgZyAgICBERiAudGV4dAkwMDAwMDA3YyAgR0xJQkNfMi4wICAgX19mcmFtZV9zdGF0ZV9mb3IKKzAwMDAwMDAwICB3ICAgRCAgKlVORCoJMDAwMDAwMDAgICAgICAgICAgICAgIF9wdGhyZWFkX2NsZWFudXBfcG9wX3Jlc3RvcmUKKzAwMDI3ZjcwIGcgICAgREYgLnRleHQJMDAwMDAwMTEgIEdMSUJDXzIuMCAgIF9fZmluaXRlZgorMDAwODU2NzAgIHcgICBERiAudGV4dAkwMDAwMDBjYiAgR0xJQkNfMi4wICAgcmVhZGRpcgorMDAwNWM4MTAgZyAgICBERiAudGV4dAkwMDAwMDAwZiAgR0xJQkNfMi4yICAgX19mbGJmCiswMDBhYzBiMCAgdyAgIERGIC50ZXh0CTAwMDAwMDNhICBHTElCQ18yLjAgICBmc3RhdGZzCiswMDA1ODFlMCBnICAgIERGIC50ZXh0CTAwMDAwMDNmICBHTElCQ18yLjIgICBfSU9fYWRqdXN0X3djb2x1bW4KKzAwMGFkNTIwICB3ICAgREYgLnRleHQJMDAwMDAwMzUgIEdMSUJDXzIuMCAgIGxjaG93bgorMDAwNmVkMDAgIHcgICBERiAudGV4dAkwMDAwMDBjOCAgR0xJQkNfMi4wICAgd2NwbmNweQorMDAwZTIxZTAgZyAgICBERiAudGV4dAkwMDAwMDIyOCAgR0xJQkNfMi4xICAgYXV0aGRlc19wa19jcmVhdGUKKzAwMGEyODgwICB3ICAgREYgLnRleHQJMDAwMDAwMzkgIEdMSUJDXzIuMCAgIHJlX21hdGNoCiswMDA4NmU0MCBnICAgIERGIC50ZXh0CTAwMDAwMDMyICBHTElCQ18yLjAgICBzZXRncm91cHMKKzAwMGRjNjEwIGcgICAgREYgLnRleHQJMDAwMDAxMDAgIEdMSUJDXzIuMCAgIHBtYXBfcm10Y2FsbAorMDAwMmIwNzAgZyAgICBERiAudGV4dAkwMDAwMDAzNiAgR0xJQkNfUFJJVkFURSBfX29uX2V4aXQKKzAwMDJjNDMwIGcgICAgREYgLnRleHQJMDAwMDAwNTkgIEdMSUJDXzIuMCAgIF9fc3RydG91bF9pbnRlcm5hbAorMDAwNjEyOTAgZyAgICBERiAudGV4dAkwMDAwMDE1YyAgR0xJQkNfMi4wICAgX0lPX3N0cl9zZWVrb2ZmCiswMDA2NTUyMCAgdyAgIERGIC50ZXh0CTAwMDAwMTQ3ICBHTElCQ18yLjAgICBwdmFsbG9jCiswMDBiYThjMCBnICAgIERGIC50ZXh0CTAwMDAwMDNjICBHTElCQ18yLjAgICBkZWxldGVfbW9kdWxlCiswMDA1ZTU2MCBnICAgIERGIC50ZXh0CTAwMDAwNTViICBHTElCQ18yLjEgICBfSU9fZmlsZV9zZWVrb2ZmCiswMDBkOTZmMCBnICAgIERGIC50ZXh0CTAwMDAwMDk0ICBHTElCQ18yLjAgICBjbG50X3BlcnJvcgorMDAwNWNmOTAgZyAgICBERiAudGV4dAkwMDAwMDAwYiAgR0xJQkNfMi4wICAgY2xlYXJlcnJfdW5sb2NrZWQKKzAwMGQwNWMwIGcgICAgREYgLnRleHQJMDAwMDAwZTIgIEdMSUJDXzIuMS4yIGdldHJwY2VudF9yCiswMDBkMWZlMCBnICAgIERGIC50ZXh0CTAwMDAwMDMxICBHTElCQ18yLjAgICBydXNlcm9rCiswMDExYTZjNCBnICAgIERPIC5ic3MJMDAwMDAwMDQgIEdMSUJDXzIuMCAgIGVycm9yX21lc3NhZ2VfY291bnQKKzAwMDIyNDUwIGcgICAgREYgLnRleHQJMDAwMDAwN2QgIEdMSUJDXzIuMCAgIGlzc3BhY2UKKzAwMDU3Y2QwIGcgICAgREYgLnRleHQJMDAwMDAwM2EgIEdMSUJDXzIuMiAgIHZ3c2NhbmYKKzAwMGM1ZGEwIGcgICAgREYgLnRleHQJMDAwMDAwMzMgIEdMSUJDXzIuMCAgIHB0aHJlYWRfYXR0cl9nZXRpbmhlcml0c2NoZWQKKzAwMTE5MTE4ICB3ICAgRE8gLmJzcwkwMDAwMDAwNCAgR0xJQkNfMi4wICAgX19fYnJrX2FkZHIKKzAwMGY0NDkwIGcgICAgREYgLnRleHQJMDAwMDAwMzcgKEdMSUJDXzIuMCkgIGdldGFsaWFzZW50X3IKKzAwMDAwMDAwICB3ICAgRCAgKlVORCoJMDAwMDAwMDAgICAgICAgICAgICAgIF9fcHRocmVhZF9yd2xvY2tfdW5sb2NrCiswMDBiODI4MCBnICAgIERGIC50ZXh0CTAwMDAwMGNlICBHTElCQ18yLjAgICBoY3JlYXRlX3IKKzAwMDIyODQwICB3ICAgREYgLnRleHQJMDAwMDAwMTEgIEdMSUJDXzIuMyAgIHRvdXBwZXJfbAorMDAwYmY4YzAgIHcgICBERiAudGV4dAkwMDAwMDFkNyAgR0xJQkNfMi4wICAgZmdldHNwZW50X3IKKzAwMDY5YTcwIGcgICAgREYgLnRleHQJMDAwMDAwNDQgIEdMSUJDXzIuMSAgIG1lbXBjcHkKKzAwMGIwZDcwIGcgICAgREYgLnRleHQJMDAwMDAyNzMgIEdMSUJDXzIuMCAgIGZ0c19vcGVuCiswMDA0M2NlMCBnICAgIERGIC50ZXh0CTAwMDAwMDM5ICBHTElCQ18yLjAgICBfSU9fcHJpbnRmCiswMDA2MmFhMCBnICAgIERGIC50ZXh0CTAwMDAwMDg3ICBHTElCQ18yLjAgICBfX2xpYmNfbWFsbGluZm8KKzAwMDE1NmMwIGcgICAgREYgLnRleHQJMDAwMDAwMzggKEdMSUJDXzIuMCkgIF9fdWNtcGRpMgorMDAwNTQzMjAgIHcgICBERiAudGV4dAkwMDAwMDBlYiAgR0xJQkNfMi4wICAgZmZsdXNoCiswMDExOTBmYyAgdyAgIERPIC5ic3MJMDAwMDAwMDQgIEdMSUJDXzIuMCAgIF9lbnZpcm9uCiswMDExYTZiNCBnICAgIERPIC5ic3MJMDAwMDAwMDQgIEdMSUJDXzIuMSAgIGdldGRhdGVfZXJyCiswMDA4YTY2MCBnICAgIERGIC50ZXh0CTAwMDAwMDEzICBHTElCQ18yLjAgICBfX2JzZF9nZXRwZ3JwCiswMDBhZDE3MCBnICAgIERGIC50ZXh0CTAwMDAwMDIzICBHTElCQ18yLjEgICBjcmVhdDY0CiswMDBkZmJhMCBnICAgIERGIC50ZXh0CTAwMDAwMDBhICBHTElCQ18yLjAgICB4ZHJfdm9pZAorMDAwZTQxNDAgZyAgICBERiAudGV4dAkwMDAwMDAzYiAgR0xJQkNfMi4wICAgeGRyX2tleWJ1ZgorMDAwZTZjYTAgZyAgICBERiAudGV4dAkwMDAwMDBkMyAgR0xJQkNfMi4zLjQgeGRyX3F1YWRfdAorMDAwMjJlMzAgIHcgICBERiAudGV4dAkwMDAwMDAxNSAgR0xJQkNfMi4yICAgYmluZF90ZXh0ZG9tYWluX2NvZGVzZXQKKzAwMGFiYzkwIGcgICAgREYgLnRleHQJMDAwMDAwMTggIEdMSUJDXzIuMiAgIHBvc2l4X21hZHZpc2UKKzAwMGM0NjAwICB3ICAgREYgLnRleHQJMDAwMDAxYjUgIEdMSUJDXzIuMSAgIGFyZ3BfZXJyb3IKKzAwMGFhZTkwIGcgICAgREYgLnRleHQJMDAwMDAwODIgIEdMSUJDX1BSSVZBVEUgX19saWJjX3B3cml0ZQorMDAwZjQ0MzAgZyAgICBERiAudGV4dAkwMDAwMDA1ZiAoR0xJQkNfMi4wKSAgZ2V0cnBjYnludW1iZXJfcgorMDAwZDA4MTAgZyAgICBERiAudGV4dAkwMDAwMDE2NSAgR0xJQkNfMi4xLjIgZ2V0cnBjYnluYW1lX3IKKzAwMGY0MmUwIGcgICAgREYgLnRleHQJMDAwMDAwNjYgKEdMSUJDXzIuMCkgIGdldHNlcnZieXBvcnRfcgorMDAwYjU0NzAgIHcgICBERiAudGV4dAkwMDAwMDAzYSAgR0xJQkNfMi4wICAgZnRydW5jYXRlCiswMDBkMTJhMCBnICAgIERGIC50ZXh0CTAwMDAwMTU4ICBHTElCQ18yLjAgICBldGhlcl9udG9ob3N0CiswMDAyN2Y1MCAgdyAgIERGIC50ZXh0CTAwMDAwMDE4ICBHTElCQ18yLjAgICBpc25hbmYKKzAwMGI0MmQwIGcgICAgREYgLnRleHQJMDAwMDAwMzIgIEdMSUJDXzIuMCAgIHN0dHkKKzAwMGRiY2MwIGcgICAgREYgLnRleHQJMDAwMDAwNzcgIEdMSUJDXzIuMCAgIHhkcl9wbWFwCiswMDA1ZWFjMCBnICAgIERGIC50ZXh0CTAwMDAwMGRhICBHTElCQ18yLjEgICBfSU9fZmlsZV9zeW5jCiswMDBmNDNkMCBnICAgIERGIC50ZXh0CTAwMDAwMDVmIChHTElCQ18yLjApICBnZXRycGNieW5hbWVfcgorMDAwYmFiYTAgZyAgICBERiAudGV4dAkwMDAwMDAzYyAgR0xJQkNfMi4wICAgbmZzc2VydmN0bAorMDAwZGQzZDAgZyAgICBERiAudGV4dAkwMDAwMDA0ZSAgR0xJQkNfMi4wICAgc3ZjZXJyX3Byb2d2ZXJzCiswMDA2ZDMyMCBnICAgIERGIC50ZXh0CTAwMDAwMDMxICBHTElCQ18yLjEuMSBfX21lbWNweV9nCiswMDAyODc3MCAgdyAgIERGIC50ZXh0CTAwMDAwMGRhICBHTElCQ18yLjAgICBzc2lnbmFsCiswMDBiZTcyMCBnICAgIERGIC50ZXh0CTAwMDAwMDcxICBHTElCQ18yLjIgICBfX3djdHJhbnNfbAorMDAwODY2NzAgZyAgICBERiAudGV4dAkwMDAwMDE4YSAgR0xJQkNfMi4wICAgZmdldGdyZW50CiswMDA4YjlmMCAgdyAgIERGIC50ZXh0CTAwMDAwMDgyICBHTElCQ18yLjAgICBnbG9iX3BhdHRlcm5fcAorMDAwYmEzMzAgZyAgICBERiAudGV4dAkwMDAwMDA4ZSAgR0xJQkNfMi4wICAgX19jbG9uZQorMDAwZGQyMzAgZyAgICBERiAudGV4dAkwMDAwMDA0MiAgR0xJQkNfMi4wICAgc3ZjZXJyX25vcHJvYworMDAwNTZlYzAgIHcgICBERiAudGV4dAkwMDAwMDAyYSAgR0xJQkNfMi4yICAgZ2V0d2NfdW5sb2NrZWQKKzAwMDZkYzcwIGcgICAgREYgLnRleHQJMDAwMDAwMzkgIEdMSUJDXzIuMS4xIF9fc3RyY3Nwbl9jMQorMDAwNTc4NzAgZyAgICBERiAudGV4dAkwMDAwMDAzOCAgR0xJQkNfMi4yICAgcHV0d2NfdW5sb2NrZWQKKzAwMDAwMDAwICB3ICAgRCAgKlVORCoJMDAwMDAwMDAgICAgICAgICAgICAgIF9fcHRocmVhZF9raWxsX290aGVyX3RocmVhZHNfbnAKKzAwMGYxMjYwIGcgICAgREYgLnRleHQJMDAwMDAxMjQgKEdMSUJDXzIuMCkgIF9JT19mZ2V0cG9zCiswMDAxNWFhMCBnICAgIERGIC50ZXh0CTAwMDAwMDM1IChHTElCQ18yLjApICBfX3VkaXZkaTMKKzAwMGYyOWMwIGcgICAgREYgLnRleHQJMDAwMDAwMjQgKEdMSUJDXzIuMSkgIGFscGhhc29ydDY0CiswMDBkMDM2MCBnICAgIERGIC50ZXh0CTAwMDAwMTI1ICBHTElCQ18yLjAgICBnZXRycGNieW5hbWUKKzAwMDJiNTIwIGcgICAgREYgLnRleHQJMDAwMDAwNDYgIEdMSUJDXzIuMCAgIG1ic3Rvd2NzCiswMDAyYTg3MCBnICAgIERGIC50ZXh0CTAwMDAwMDkxICBHTElCQ18yLjAgICBwdXRlbnYKKzAwMDZhYjEwICB3ICAgREYgLnRleHQJMDAwMDAwYTMgIEdMSUJDXzIuMCAgIGFyZ3pfY3JlYXRlCiswMDBhY2IyMCAgdyAgIERGIC50ZXh0CTAwMDAwMDNjICBHTElCQ18yLjAgICBsc2VlaworMDAwNjVjNjAgZyAgICBERiAudGV4dAkwMDAwMDIxYyAgR0xJQkNfMi4wICAgX19saWJjX3JlYWxsb2MKKzAwMDIwZTAwIGcgICAgREYgLnRleHQJMDAwMDAwNDkgIEdMSUJDXzIuMiAgIF9fbmxfbGFuZ2luZm9fbAorMDAwNmViZDAgIHcgICBERiAudGV4dAkwMDAwMDA1OCAgR0xJQkNfMi4wICAgd21lbWNweQorMDAwMjkyNzAgZyAgICBERiAudGV4dAkwMDAwMDA0MCAgR0xJQkNfMi4wICAgc2lnYWRkc2V0CiswMDBiYTVhMCBnICAgIERGIC50ZXh0CTAwMDAwMDFkICBHTElCQ18yLjMuMyBnbnVfZGV2X21pbm9yCiswMDAxNTllMCBnICAgIERGIC50ZXh0CTAwMDAwMGJhIChHTElCQ18yLjApICBfX21vZGRpMworMDAwMjhjMjAgZyAgICBERiAudGV4dAkwMDAwMDA2NiAgR0xJQkNfUFJJVkFURSBfX2xpYmNfc2lnd2FpdAorMDAwMmE5MTAgIHcgICBERiAudGV4dAkwMDAwMDA4MiAgR0xJQkNfMi4wICAgY2xlYXJlbnYKKzAwMTE5MGZjIGcgICAgRE8gLmJzcwkwMDAwMDAwNCAgR0xJQkNfMi4wICAgX19lbnZpcm9uCiswMDA1ZjcwMCBnICAgIERGIC50ZXh0CTAwMDAwMTliICBHTElCQ18yLjEgICBfSU9fZmlsZV9jbG9zZV9pdAorMDAwMjA4NzAgZyAgICBERiAudGV4dAkwMDAwMDUwZCAgR0xJQkNfMi4yICAgbG9jYWxlY29udgorMDAwODkwZjAgIHcgICBERiAudGV4dAkwMDAwMDBhOSAgR0xJQkNfMi4wICAgX193YWl0CiswMDBhYjRmMCBnICAgIERGIC50ZXh0CTAwMDAwMDEyICBHTElCQ18yLjIgICBwb3NpeF9zcGF3bmF0dHJfZ2V0cGdyb3VwCiswMDBiNmYwMCAgdyAgIERGIC50ZXh0CTAwMDAwMDVlICBHTElCQ18yLjAgICBtbWFwCiswMDA1N2U5MCBnICAgIERGIC50ZXh0CTAwMDAwMGEwICBHTElCQ18yLjIgICB2c3dzY2FuZgorMDAwZTE5NzAgZyAgICBERiAudGV4dAkwMDAwMDBlZiAgR0xJQkNfMi4wICAgZ2V0c2VjcmV0a2V5CiswMDA2OWQ4MCAgdyAgIERGIC50ZXh0CTAwMDAwMDg1ICBHTElCQ18yLjAgICBzdHJuY2FzZWNtcAorMDAwODlhMjggIHcgICBERiAudGV4dAkwMDAwMDAxMyAgR0xJQkNfMi4xLjEgX0V4aXQKKzAwMTE3MjgwIGcgICAgRE8gLmRhdGEJMDAwMDAwMDQgIEdMSUJDXzIuMCAgIG9ic3RhY2tfZXhpdF9mYWlsdXJlCiswMDBlMDVmMCBnICAgIERGIC50ZXh0CTAwMDAwMDUwICBHTElCQ18yLjAgICB4ZHJfdmVjdG9yCiswMDBkZDRkMCBnICAgIERGIC50ZXh0CTAwMDAwMWY3ICBHTElCQ18yLjIgICBzdmNfZ2V0cmVxX2NvbW1vbgorMDAwMmNhZjAgIHcgICBERiAudGV4dAkwMDAwMDAyZSAgR0xJQkNfMi4zICAgc3RydG9sX2wKKzAwMDZmZDcwICB3ICAgREYgLnRleHQJMDAwMDAzNGQgIEdMSUJDXzIuMCAgIHdjc25ydG9tYnMKKzAwMGRjNDgwIGcgICAgREYgLnRleHQJMDAwMDAwZmUgIEdMSUJDXzIuMCAgIHhkcl9ybXRjYWxsX2FyZ3MKKzAwMGNmNTYwIGcgICAgREYgLnRleHQJMDAwMDAwZTIgIEdMSUJDXzIuMS4yIGdldHByb3RvZW50X3IKKzAwMGQzMGYwIGcgICAgREYgLnRleHQJMDAwMDA1ZDMgIEdMSUJDXzIuMiAgIHJleGVjX2FmCiswMDA2OWI2MCAgdyAgIERGIC50ZXh0CTAwMDAwMDMyICBHTElCQ18yLjAgICBiemVybworMDAwNmRhMzAgZyAgICBERiAudGV4dAkwMDAwMDBkZiAgR0xJQkNfMi4xLjEgX19tZW1wY3B5X3NtYWxsCiswMDA1YzdkMCBnICAgIERGIC50ZXh0CTAwMDAwMDEzICBHTElCQ18yLjIgICBfX2ZyZWFkYWJsZQorMDAwOGE2MTAgIHcgICBERiAudGV4dAkwMDAwMDAzYSAgR0xJQkNfMi4wICAgc2V0cGdpZAorMDAwZWIyMzAgIHcgICBERiAudGV4dAkwMDAwMDBmMyAgR0xJQkNfMi4yLjEgcG9zaXhfb3BlbnB0CiswMDBiYjFlMCAgdyAgIERGIC50ZXh0CTAwMDAwMDc4ICBHTElCQ18yLjAgICBzZW5kCiswMDBiMzhiMCBnICAgIERGIC50ZXh0CTAwMDAwMDc0ICBHTElCQ18yLjAgICBnZXRkb21haW5uYW1lCiswMDEwNGQ3NCBnICAgIERPIC5yb2RhdGEJMDAwMDAwMDQgKEdMSUJDXzIuMCkgIF9zeXNfbmVycgorMDAwZGQ0MjAgZyAgICBERiAudGV4dAkwMDAwMDAzNiAgR0xJQkNfMi4wICAgc3ZjX2dldHJlcQorMDAwNTY0NTAgIHcgICBERiAudGV4dAkwMDAwMDEyZiAgR0xJQkNfMi4wICAgc2V0YnVmZmVyCiswMDBhNDcxMCBnICAgIERGIC50ZXh0CTAwMDAwMDQyICBHTElCQ18yLjAgICBmcmVlYWRkcmluZm8KKzAwMGU2NDAwIGcgICAgREYgLnRleHQJMDAwMDAwMTIgIEdMSUJDXzIuMSAgIHN2Y3VuaXhmZF9jcmVhdGUKKzAwMDI5YzEwIGcgICAgREYgLnRleHQJMDAwMDAyMTAgIEdMSUJDXzIuMCAgIGFib3J0CiswMDA3MTk0MCAgdyAgIERGIC50ZXh0CTAwMDAwMDNlICBHTElCQ18yLjEgICBfX3djc3RvdWxsX2wKKzAwMGNmNjUwIGcgICAgREYgLnRleHQJMDAwMDAwYTYgIEdMSUJDXzIuMCAgIGVuZHByb3RvZW50CiswMDBlYjMzMCAgdyAgIERGIC50ZXh0CTAwMDAwMDMxICBHTElCQ18yLjEgICBnZXRwdAorMDAwMjI4MDAgIHcgICBERiAudGV4dAkwMDAwMDAxNyAgR0xJQkNfMi4zICAgaXN4ZGlnaXRfbAorMDAwZTljNzAgIHcgICBERiAudGV4dAkwMDAwMDA3MiAgR0xJQkNfMi4wICAgZ2V0dXRsaW5lX3IKKzAwMDJjMGIwICB3ICAgREYgLnRleHQJMDAwMDAwNTQgIEdMSUJDXzIuMCAgIG5yYW5kNDhfcgorMDAwZGQ4ZTAgZyAgICBERiAudGV4dAkwMDAwMDBiNSAgR0xJQkNfMi4wICAgeHBydF91bnJlZ2lzdGVyCiswMDA2YjM4MCBnICAgIERGIC50ZXh0CTAwMDAwMDgxICBHTElCQ18yLjAgICBlbnZ6X2VudHJ5CiswMDBiYTk0MCBnICAgIERGIC50ZXh0CTAwMDAwMDQyICBHTElCQ18yLjMuMiBlcG9sbF9jdGwKKzAwMGM1ZWEwIGcgICAgREYgLnRleHQJMDAwMDAwMzMgIEdMSUJDXzIuMCAgIHB0aHJlYWRfYXR0cl9nZXRzY2hlZHBvbGljeQorMDAxMTU2ODAgZyAgICBETyAuZGF0YS5yZWwucm8JMDAwMDAxMDAgKEdMSUJDXzIuMSkgIHN5c19zaWdsaXN0CiswMDAwMDAwMCAgICAgIERPICpVTkQqCTAwMDAwNDM4ICBHTElCQ19QUklWQVRFIF9ydGxkX2dsb2JhbAorMDAwNjliYTAgIHcgICBERiAudGV4dAkwMDAwMDAxMCAgR0xJQkNfMi4xICAgZmZzbAorMDAwNzg1MjAgIHcgICBERiAudGV4dAkwMDAwMDA0YiAgR0xJQkNfMi4wICAgd2NzY29sbAorMDAwYmU2MTAgIHcgICBERiAudGV4dAkwMDAwMDA4YyAgR0xJQkNfMi4zICAgd2N0eXBlX2wKKzAwMGVjZjUwIGcgICAgREYgLnRleHQJMDAwMDBhOTAgIEdMSUJDX1BSSVZBVEUgX2RsX2Nsb3NlCiswMDAyMGU5MCBnICAgIERGIC50ZXh0CTAwMDAwNjhhICBHTElCQ18yLjEgICBfX25ld2xvY2FsZQorMDAwZWJkNzAgZyAgICBERiAudGV4dAkwMDAwMDAyMSAgR0xJQkNfMi4xICAgdXRtcHhuYW1lCiswMDA1NmVjMCAgdyAgIERGIC50ZXh0CTAwMDAwMDJhICBHTElCQ18yLjIgICBmZ2V0d2NfdW5sb2NrZWQKKzAwMDNmMmQwIGcgICAgREYgLnRleHQJMDAwMDI0ZTUgIEdMSUJDXzIuMCAgIF9fcHJpbnRmX2ZwCiswMDExN2Q4OCAgdyAgIERPIC5kYXRhCTAwMDAwMDA4ICBHTElCQ18yLjAgICB0em5hbWUKKzAwMDdhZWUwICB3ICAgREYgLnRleHQJMDAwMDAwMzAgIEdMSUJDXzIuMCAgIGdtdGltZV9yCiswMDAyYmY0MCBnICAgIERGIC50ZXh0CTAwMDAwMDM5ICBHTElCQ18yLjAgICBzZWVkNDgKKzAwMGFjNzYwICB3ICAgREYgLnRleHQJMDAwMDAwM2EgIEdMSUJDXzIuMCAgIGNobW9kCiswMDBkNGZiMCBnICAgIERGIC50ZXh0CTAwMDAwODVkICBHTElCQ18yLjEgICBnZXRuYW1laW5mbworMDAwNzk2NjAgIHcgICBERiAudGV4dAkwMDAwMDhmNiAgR0xJQkNfMi4zICAgd2NzeGZybV9sCiswMDA1MzIzMCAgdyAgIERGIC50ZXh0CTAwMDAwMDMyICBHTElCQ18yLjAgICBmdHJ5bG9ja2ZpbGUKKzAwMDJiOWQwICB3ICAgREYgLnRleHQJMDAwMDAxMGUgIEdMSUJDXzIuMCAgIHNyYW5kb21fcgorMDAwMjFmZDAgZyAgICBERiAudGV4dAkwMDAwMDA3ZCAgR0xJQkNfMi4wICAgaXN4ZGlnaXQKKzAwMGI4NjAwICB3ICAgREYgLnRleHQJMDAwMDAzZWIgIEdMSUJDXzIuMCAgIHRkZWxldGUKKzAwMGQ3N2MwIGcgICAgREYgLnRleHQJMDAwMDAwNzUgIEdMSUJDXzIuMy4zIGluZXQ2X29wdGlvbl9hcHBlbmQKKzAwMDU0YjUwIGcgICAgREYgLnRleHQJMDAwMDAxNDYgIEdMSUJDXzIuMCAgIF9JT19mcHV0cworMDAwOGE1ZDAgZyAgICBERiAudGV4dAkwMDAwMDAzNiAgR0xJQkNfMi4wICAgX19nZXRwZ2lkCiswMDBhYmJkMCBnICAgIERGIC50ZXh0CTAwMDAwMDNhICBHTElCQ18yLjIgICBwb3NpeF9zcGF3bmF0dHJfZ2V0c2NoZWRwYXJhbQorMDAxMWE2YzggZyAgICBETyAuYnNzCTAwMDAwMDA0ICBHTElCQ18yLjAgICBlcnJvcl9wcmludF9wcm9nbmFtZQorMDAwZGZmYjAgZyAgICBERiAudGV4dAkwMDAwMDA0ZSAgR0xJQkNfMi4wICAgeGRyX2NoYXIKKzAwMDZkN2YwIGcgICAgREYgLnRleHQJMDAwMDAwMzUgIEdMSUJDXzIuMS4xIF9fc3RyY3Nwbl9jZworMDAwNWY2MjAgZyAgICBERiAudGV4dAkwMDAwMDA0NyAgR0xJQkNfMi4xICAgX0lPX2ZpbGVfaW5pdAorMDAwODk2MDAgZyAgICBERiAudGV4dAkwMDAwMDAzNiAgR0xJQkNfMi4wICAgYWxhcm0KKzAwMDVjN2EwIGcgICAgREYgLnRleHQJMDAwMDAwMWEgIEdMSUJDXzIuMiAgIF9fZnJlYWRpbmcKKzAwMDYxNDQwIGcgICAgREYgLnRleHQJMDAwMDAwNDIgIEdMSUJDXzIuMCAgIF9JT19zdHJfcGJhY2tmYWlsCiswMDBkOTMyMCBnICAgIERGIC50ZXh0CTAwMDAwMDkwICBHTElCQ18yLjAgICBjbG50X3BjcmVhdGVlcnJvcgorMDAwNTVlYzAgZyAgICBERiAudGV4dAkwMDAwMDA4YiAgR0xJQkNfMi4xICAgcG9wZW4KKzAwMGY1NDgwIGcgICAgREYgX19saWJjX3RocmVhZF9mcmVlcmVzX2ZuCTAwMDAwMDQxICBHTElCQ19QUklWQVRFIF9fbGliY190aHJlYWRfZnJlZXJlcworMDAwNTk0MzAgZyAgICBERiAudGV4dAkwMDAwMDFjNiAgR0xJQkNfMi4yICAgX0lPX3dmaWxlX3hzcHV0bgorMDAwYjcxYTAgZyAgICBERiAudGV4dAkwMDAwMDAzYSAgR0xJQkNfMi4wICAgbWxvY2sKKzAwMGIzYmEwIGcgICAgREYgLnRleHQJMDAwMDAwMzYgIEdMSUJDXzIuMCAgIGFjY3QKKzAwMGYzZjgwIGcgICAgREYgLnRleHQJMDAwMDAwNjYgKEdMSUJDXzIuMCkgIGdldGhvc3RieW5hbWVfcgorMDAwNWViYTAgZyAgICBERiAudGV4dAkwMDAwMDFlYiAgR0xJQkNfMi4xICAgX0lPX2ZpbGVfb3ZlcmZsb3cKKzAwMGNhNTYwIGcgICAgREYgLnRleHQJMDAwMDAwYjAgIEdMSUJDXzIuMCAgIF9fbnNzX25leHQKKzAwMGU1NTkwIGcgICAgREYgLnRleHQJMDAwMDAwYmIgIEdMSUJDXzIuMSAgIHhkZWNyeXB0CiswMDA4MDhmMCAgdyAgIERGIC50ZXh0CTAwMDAwMDQ1ICBHTElCQ18yLjMuMiBzdHJwdGltZV9sCiswMDA4OTU3MCBnICAgIERGIC50ZXh0CTAwMDAwMDgyICBHTElCQ19QUklWQVRFIF9fbGliY193YWl0aWQKKzAwMGIzMTEwIGcgICAgREYgLnRleHQJMDAwMDAwMTUgIEdMSUJDXzIuMCAgIHNzdGsKKzAwMDdhMDMwIGcgICAgREYgLnRleHQJMDAwMDAwNjMgIEdMSUJDXzIuMSAgIF9fd2NzY2FzZWNtcF9sCiswMDAyMTY4MCBnICAgIERGIC50ZXh0CTAwMDAwMDg0ICBHTElCQ18yLjEgICBfX2ZyZWVsb2NhbGUKKzAwMDJjNTUwICB3ICAgREYgLnRleHQJMDAwMDAwNTggIEdMSUJDXzIuMCAgIHN0cnRvcQorMDAwMmMzZDAgZyAgICBERiAudGV4dAkwMDAwMDA1OCAgR0xJQkNfMi4wICAgc3RydG9sCiswMDAyODVhMCBnICAgIERGIC50ZXh0CTAwMDAwMDJmICBHTElCQ18yLjAgICBfX3NpZ3NldGptcAorMDAwYWZlMjAgZyAgICBERiAudGV4dAkwMDAwMDA0MSAgR0xJQkNfMi4zLjMgbmZ0dzY0CiswMDBhZDBiMCAgdyAgIERGIC50ZXh0CTAwMDAwMDM2ICBHTElCQ18yLjAgICBwaXBlCiswMDBjYzY3MCBnICAgIERGIC50ZXh0CTAwMDAwMDJkICBHTElCQ18yLjMuNCBfX3N0cGNweV9jaGsKKzAwMGRjNTgwIGcgICAgREYgLnRleHQJMDAwMDAwODcgIEdMSUJDXzIuMCAgIHhkcl9ybXRjYWxscmVzCiswMDBkMGQ2MCBnICAgIERGIC50ZXh0CTAwMDAwMTU3ICBHTElCQ18yLjAgICBldGhlcl9ob3N0dG9uCiswMDBjYzIxMCBnICAgIERGIC50ZXh0CTAwMDAwMjJlICBHTElCQ18yLjEgICBfX2JhY2t0cmFjZV9zeW1ib2xzX2ZkCiswMDBiMmQ5MCBnICAgIERGIC50ZXh0CTAwMDAwMDcyICBHTElCQ18yLjAgICB2bGltaXQKKzAwMDhhNjUwIGcgICAgREYgLnRleHQJMDAwMDAwMDggIEdMSUJDXzIuMCAgIGdldHBncnAKKzAwMDY4YWMwIGcgICAgREYgLnRleHQJMDAwMDAwYjcgIEdMSUJDXzIuMCAgIHN0cm5sZW4KKzAwMGJhNmIwIGcgICAgREYgLnRleHQJMDAwMDAwM2EgKEdMSUJDXzIuMCkgIGdldHJsaW1pdAorMDAwNmE3ZDAgIHcgICBERiAudGV4dAkwMDAwMDBjNiAgR0xJQkNfMi4xICAgcmF3bWVtY2hyCiswMDA3MDRkMCAgdyAgIERGIC50ZXh0CTAwMDAwMDUyICBHTElCQ18yLjAgICB3Y3N0b2QKKzAwMGNlOGMwIGcgICAgREYgLnRleHQJMDAwMDAxNTcgIEdMSUJDXzIuMCAgIGdldG5ldGJ5YWRkcgorMDAwZTA4NTAgZyAgICBERiAudGV4dAkwMDAwMDBhMCAgR0xJQkNfMi4wICAgeGRyX2RvdWJsZQorMDAwMjdmMTAgZyAgICBERiAudGV4dAkwMDAwMDAwZiAgR0xJQkNfMi4xICAgX19zaWduYml0CiswMDAyYjQ0MCBnICAgIERGIC50ZXh0CTAwMDAwMGQyICBHTElCQ18yLjAgICBtYmxlbgorMDAwMjI3NDAgIHcgICBERiAudGV4dAkwMDAwMDAxNyAgR0xJQkNfMi4zICAgaXNsb3dlcl9sCiswMDBiYTgwMCBnICAgIERGIC50ZXh0CTAwMDAwMDNhICBHTElCQ18yLjEgICBjYXBnZXQKKzAwMGFiM2UwIGcgICAgREYgLnRleHQJMDAwMDAwMzQgIEdMSUJDXzIuMiAgIHBvc2l4X3NwYXduYXR0cl9pbml0CiswMDBhYmU5MCBnICAgIERGIC50ZXh0CTAwMDAwMDhkICBHTElCQ18yLjAgICBfX2x4c3RhdAorMDAwODkwNzAgIHcgICBERiAudGV4dAkwMDAwMDAzNiAgR0xJQkNfMi4wICAgdW5hbWUKKzAwMGJkODQwICB3ICAgREYgLnRleHQJMDAwMDAwZDUgIEdMSUJDXzIuMCAgIGlzd3ByaW50CiswMDAyMGU5MCAgdyAgIERGIC50ZXh0CTAwMDAwNjhhICBHTElCQ18yLjMgICBuZXdsb2NhbGUKKzAwMDc5NjYwIGcgICAgREYgLnRleHQJMDAwMDA4ZjYgIEdMSUJDXzIuMSAgIF9fd2NzeGZybV9sCiswMDBiYWUyMCAgdyAgIERGIC50ZXh0CTAwMDAwMDc4ICBHTElCQ18yLjAgICBhY2NlcHQKKzAwMDI5NTkwIGcgICAgREYgLnRleHQJMDAwMDAwNjcgIEdMSUJDXzIuMSAgIF9fbGliY19hbGxvY2F0ZV9ydHNpZworMDAwYjhmYzAgZyAgICBERiAudGV4dAkwMDAwMDAyMyAgR0xJQkNfMi4wICAgdmVycngKKzAwMDM1YWUwIGcgICAgREYgLnRleHQJMDAwMDAwNjYgIEdMSUJDXzIuMCAgIGE2NGwKKzAwMGM2MTkwIGcgICAgREYgLnRleHQJMDAwMDAwM2EgIEdMSUJDXzIuMCAgIHB0aHJlYWRfZ2V0c2NoZWRwYXJhbQorMDAwZWVkYTAgZyAgICBERiAudGV4dAkwMDAwMDAzZiAgR0xJQkNfMi4wICAgX19yZWdpc3Rlcl9mcmFtZV90YWJsZQorMDAwYjIzYzAgZyAgICBERiAudGV4dAkwMDAwMDA1YyAgR0xJQkNfMi4wICAgY2ZzZXRpc3BlZWQKKzAwMGYxMzkwIGcgICAgREYgLnRleHQJMDAwMDAxODEgKEdMSUJDXzIuMSkgIF9JT19mZ2V0cG9zNjQKKzAwMGU2ZTQwIGcgICAgREYgLnRleHQJMDAwMDAwM2YgIEdMSUJDXzIuMSAgIHhkcl9pbnQzMl90CiswMDBlYWY2MCAgdyAgIERGIC50ZXh0CTAwMDAwMTAzICBHTElCQ18yLjAgICB1dG1wbmFtZQorMDAwNTZiNDAgZyAgICBERiAudGV4dAkwMDAwMDEzNyAgR0xJQkNfMi4yICAgX0lPX2ZzZXRwb3M2NAorMDAwNmE0ODAgZyAgICBERiAudGV4dAkwMDAwMDE3OSAgR0xJQkNfMi4xICAgX19zdHJjYXNlc3RyCiswMDBiODIzMCBnICAgIERGIC50ZXh0CTAwMDAwMDQ5ICBHTElCQ18yLjAgICBoZGVzdHJveV9yCiswMDA1MzFjMCBnICAgIERGIC50ZXh0CTAwMDAwMDNhICBHTElCQ18yLjAgICByZW5hbWUKKzAwMDIyODYwIGcgICAgREYgLnRleHQJMDAwMDAwNDggIEdMSUJDXzIuMyAgIF9faXNjdHlwZQorMDAwZjQzNTAgZyAgICBERiAudGV4dAkwMDAwMDAzNyAoR0xJQkNfMi4wKSAgZ2V0c2VydmVudF9yCiswMDBiZTZhMCBnICAgIERGIC50ZXh0CTAwMDAwMDcyICBHTElCQ18yLjEgICBfX2lzd2N0eXBlX2wKKzAwMDI5MWEwIGcgICAgREYgLnRleHQJMDAwMDAwMjIgIEdMSUJDXzIuMCAgIF9fc2lnYWRkc2V0CiswMDBmM2FkMCBnICAgIERGIC50ZXh0CTAwMDAwMDMzIChHTElCQ18yLjMuMykgc2NoZWRfZ2V0YWZmaW5pdHkKKzAwMGRjYjYwIGcgICAgREYgLnRleHQJMDAwMDA0MDYgIEdMSUJDXzIuMCAgIHhkcl9jYWxsbXNnCiswMDA2MDA5MCBnICAgIERGIC50ZXh0CTAwMDAwMDE2ICBHTElCQ18yLjIgICBfSU9faXRlcl9iZWdpbgorMDAwY2M3NzAgZyAgICBERiAudGV4dAkwMDAwMDBlYiAgR0xJQkNfMi4zLjQgX19zdHJuY2F0X2NoaworMDAwYzYzMDAgZyAgICBERiAudGV4dAkwMDAwMDAzMyAgR0xJQkNfMi4wICAgcHRocmVhZF9zZXRjYW5jZWxzdGF0ZQorMDAwZTAyMTAgZyAgICBERiAudGV4dAkwMDAwMDBhMyAgR0xJQkNfMi4wICAgeGRyX3VuaW9uCiswMDA3MDIzMCBnICAgIERGIC50ZXh0CTAwMDAwMDU5ICBHTElCQ18yLjAgICBfX3djc3RvdWxfaW50ZXJuYWwKKzAwMGI1NzIwIGcgICAgREYgLnRleHQJMDAwMDAwNzIgIEdMSUJDXzIuMCAgIHNldHR0eWVudAorMDAwMjkzOTAgZyAgICBERiAudGV4dAkwMDAwMDBhNyAgR0xJQkNfMi4wICAgX19zeXN2X3NpZ25hbAorMDAwNjhkZjAgZyAgICBERiAudGV4dAkwMDAwMDFiOSAgR0xJQkNfMi4wICAgc3RycmNocgorMDAwNmZhNDAgIHcgICBERiAudGV4dAkwMDAwMDMzMCAgR0xJQkNfMi4wICAgbWJzbnJ0b3djcworMDAwNmI3MjAgZyAgICBERiAudGV4dAkwMDAwMDAyYyAgR0xJQkNfMi4wICAgYmFzZW5hbWUKKzAwMDIyOGIwIGcgICAgREYgLnRleHQJMDAwMDAwNzEgIEdMSUJDXzIuMyAgIF9fY3R5cGVfdG9sb3dlcl9sb2MKKzAwMDY2ZGQwIGcgICAgREYgLnRleHQJMDAwMDAwMmIgIEdMSUJDXzIuMCAgIG1wcm9iZQorMDAwODk1NzAgIHcgICBERiAudGV4dAkwMDAwMDA4MiAgR0xJQkNfMi4xICAgd2FpdGlkCiswMDExODY0OCAgdyAgIERPIC5ic3MJMDAwMDAwMDQgIEdMSUJDXzIuMCAgIF9fYWZ0ZXJfbW9yZWNvcmVfaG9vaworMDAwODk5MDAgIHcgICBERiAudGV4dAkwMDAwMDA3OCAgR0xJQkNfMi4wICAgbmFub3NsZWVwCiswMDA2ZTRhMCBnICAgIERGIC50ZXh0CTAwMDAwMDMyICBHTElCQ18yLjAgICB3Y3NjcHkKKzAwMGUwMGQwIGcgICAgREYgLnRleHQJMDAwMDAwMmEgIEdMSUJDXzIuMCAgIHhkcl9lbnVtCiswMDA2N2M4MCBnICAgIERGIC50ZXh0CTAwMDAwMGJhICBHTElCQ18yLjAgICBfb2JzdGFja19iZWdpbgorMDAwYmU1YTAgZyAgICBERiAudGV4dAkwMDAwMDA2ZCAgR0xJQkNfMi4xICAgX190b3dsb3dlcl9sCiswMDA2Njg0MCAgdyAgIERGIC50ZXh0CTAwMDAwM2I3ICBHTElCQ18yLjAgICBjYWxsb2MKKzAwMDM5YzgwIGcgICAgREYgLnRleHQJMDAwMDAwOWIgIEdMSUJDXzIuMCAgIGN1c2VyaWQKKzAwMDI4MjUwICB3ICAgREYgLnRleHQJMDAwMDAxODcgIEdMSUJDXzIuMCAgIG1vZGZsCiswMDA2OWUxMCAgdyAgIERGIC50ZXh0CTAwMDAwMDQxICBHTElCQ18yLjMgICBzdHJjYXNlY21wX2wKKzAwMDE1YWUwIGcgICAgREYgLnRleHQJMDAwMDAwM2IgKEdMSUJDXzIuMCkgIF9fdW1vZGRpMworMDAwZTAwNTAgZyAgICBERiAudGV4dAkwMDAwMDA3OSAgR0xJQkNfMi4wICAgeGRyX2Jvb2wKKzAwMDVlNGQwIGcgICAgREYgLnRleHQJMDAwMDAwMjUgIEdMSUJDXzIuMCAgIF9JT19maWxlX3N0YXQKKzAwMDkzY2EwICB3ICAgREYgLnRleHQJMDAwMDAwNGIgIEdMSUJDXzIuMCAgIHJlX3NldF9yZWdpc3RlcnMKKzAwMGJjMjcwICB3ICAgREYgLnRleHQJMDAwMDAwOGIgIEdMSUJDXzIuMiAgIG1vbmNvbnRyb2wKKzAwMGU0MzYwIGcgICAgREYgLnRleHQJMDAwMDAxYTIgIEdMSUJDXzIuMSAgIGhvc3QybmV0bmFtZQorMDAwMmIyYzAgIHcgICBERiAudGV4dAkwMDAwMDAzMSAgR0xJQkNfMi4xLjEgaW1heGFicworMDAwNjE5YjAgIHcgICBERiAudGV4dAkwMDAwMDAzNCAgR0xJQkNfMi4wICAgbWFsbG9jX3VzYWJsZV9zaXplCiswMDAyZGQ3MCBnICAgIERGIC50ZXh0CTAwMDAwMDUyICBHTElCQ18yLjAgICBfX3N0cnRvbGRfaW50ZXJuYWwKKzAwMGJhNjMwIGcgICAgREYgLnRleHQJMDAwMDAwM2MgIEdMSUJDX1BSSVZBVEUgX19tb2RpZnlfbGR0CiswMDBiODVlMCAgdyAgIERGIC50ZXh0CTAwMDAwMDEyICBHTElCQ18yLjEgICB0ZGVzdHJveQorMDAwODkyNTAgIHcgICBERiAudGV4dAkwMDAwMDA0MiAgR0xJQkNfMi4wICAgd2FpdDQKKzAwMDdhMGEwICB3ICAgREYgLnRleHQJMDAwMDAwN2MgIEdMSUJDXzIuMyAgIHdjc25jYXNlY21wX2wKKzAwMGVlZDAwIGcgICAgREYgLnRleHQJMDAwMDAwOTUgIEdDQ18zLjAgICAgIF9fcmVnaXN0ZXJfZnJhbWVfaW5mb19iYXNlcworMDAwNTljZDAgZyAgICBERiAudGV4dAkwMDAwMDE2YSAgR0xJQkNfMi4yICAgX0lPX3dmaWxlX3N5bmMKKzAwMDY1NTIwIGcgICAgREYgLnRleHQJMDAwMDAxNDcgIEdMSUJDXzIuMCAgIF9fbGliY19wdmFsbG9jCiswMDAyZDVjMCAgdyAgIERGIC50ZXh0CTAwMDAwMDJlICBHTElCQ18yLjEgICBfX3N0cnRvbGxfbAorMDAwZjIyNTAgZyAgICBERiAudGV4dAkwMDAwMDE2YiAoR0xJQkNfMi4wKSAgX0lPX2ZpbGVfZm9wZW4KKzAwMGNkM2IwIGcgICAgREYgLnRleHQJMDAwMDAwMmQgIEdMSUJDXzIuMCAgIGluZXRfbG5hb2YKKzAwMGYxMjYwIGcgICAgREYgLnRleHQJMDAwMDAxMjQgKEdMSUJDXzIuMCkgIGZnZXRwb3MKKzAwMDJkZDEwICB3ICAgREYgLnRleHQJMDAwMDAwNTIgIEdMSUJDXzIuMCAgIHN0cnRvZAorMDAwMDAwMDAgZyAgICBETyAqQUJTKgkwMDAwMDAwMCAgR0xJQkNfMi4xLjIgR0xJQkNfMi4xLjIKKzAwMGUwMmMwIGcgICAgREYgLnRleHQJMDAwMDAwM2IgIEdMSUJDXzIuMCAgIHhkcl93cmFwc3RyaW5nCiswMDAyN2I4MCAgdyAgIERGIC50ZXh0CTAwMDAwMDJkICBHTElCQ18yLjAgICBpc2luZgorMDAwYTQ0MjAgZyAgICBERiAudGV4dAkwMDAwMDAzNiAgR0xJQkNfMi4wICAgX19zY2hlZF9nZXRzY2hlZHVsZXIKKzAwMGRjOGYwIGcgICAgREYgLnRleHQJMDAwMDAwODUgIEdMSUJDXzIuMCAgIHhkcl9yZWplY3RlZF9yZXBseQorMDAwNjhkZjAgIHcgICBERiAudGV4dAkwMDAwMDFiOSAgR0xJQkNfMi4wICAgcmluZGV4CiswMDA2ZGU4MCBnICAgIERGIC50ZXh0CTAwMDAwMDVmICBHTElCQ18yLjEuMSBfX3N0cnRva19yXzFjCiswMDBhNmQyMCBnICAgIERGIC50ZXh0CTAwMDAwMDdlICBHTElCQ18yLjEgICBnYWlfc3RyZXJyb3IKKzAwMGNkM2UwIGcgICAgREYgLnRleHQJMDAwMDAwNWMgIEdMSUJDXzIuMCAgIGluZXRfbWFrZWFkZHIKKzAwMTFhNmQ0IGcgICAgRE8gLmJzcwkwMDAwMDAwNCAgR0xJQkNfMi4wICAgbG9jcworMDAwY2Y3MDAgZyAgICBERiAudGV4dAkwMDAwMDBhZCAgR0xJQkNfMi4wICAgc2V0cHJvdG9lbnQKKzAwMGFjNDkwICB3ICAgREYgLnRleHQJMDAwMDAxNTMgIEdMSUJDXzIuMSAgIHN0YXR2ZnM2NAorMDAwYjFiMDAgZyAgICBERiAudGV4dAkwMDAwMDA0MiAgR0xJQkNfMi4xICAgc2VuZGZpbGUKKzAwMDVlMTYwIGcgICAgREYgLnRleHQJMDAwMDAwMmEgIEdMSUJDXzIuMSAgIF9JT19kb193cml0ZQorMDAwYmZiMzAgIHcgICBERiAudGV4dAkwMDAwMDJiNSAgR0xJQkNfMi4wICAgbGNrcHdkZgorMDAwMDAwMDAgIHcgICBEICAqVU5EKgkwMDAwMDAwMCAgICAgICAgICAgICAgX19wdGhyZWFkX2dldHNwZWNpZmljCiswMDBmNDIxMCBnICAgIERGIC50ZXh0CTAwMDAwMDVmIChHTElCQ18yLjApICBnZXRwcm90b2J5bmFtZV9yCiswMDBjNWZhMCBnICAgIERGIC50ZXh0CTAwMDAwMDJhICBHTElCQ18yLjAgICBwdGhyZWFkX2NvbmRhdHRyX2Rlc3Ryb3kKKzAwMGFjYWEwICB3ICAgREYgLnRleHQJMDAwMDAwN2MgIEdMSUJDXzIuMCAgIHdyaXRlCiswMDBjNWY2MCBnICAgIERGIC50ZXh0CTAwMDAwMDMzICBHTElCQ18yLjAgICBwdGhyZWFkX2F0dHJfc2V0c2NvcGUKKzAwMGIyYjYwIGcgICAgREYgLnRleHQJMDAwMDAwOTkgIEdMSUJDXzIuMiAgIGdldHJsaW1pdDY0CiswMDExNzQ4YyBnICAgIERPIC5kYXRhCTAwMDAwMDA0IChHTElCQ18yLjIpICBfX2N0eXBlMzJfdG91cHBlcgorMDAwZDIyMTAgZyAgICBERiAudGV4dAkwMDAwMGU5MyAgR0xJQkNfMi4yICAgcmNtZF9hZgorMDAwNjU2NzAgZyAgICBERiAudGV4dAkwMDAwMDEwNyAgR0xJQkNfMi4wICAgX19saWJjX3ZhbGxvYworMDAwNmVhYzAgZyAgICBERiAudGV4dAkwMDAwMDA2OSAgR0xJQkNfMi4wICAgd21lbWNocgorMDAwY2Q0NDAgZyAgICBERiAudGV4dAkwMDAwMDAyZiAgR0xJQkNfMi4wICAgaW5ldF9uZXRvZgorMDAwYmEyMDAgZyAgICBERiAudGV4dAkwMDAwMDAzYyAgR0xJQkNfMi4wICAgaW9wZXJtCiswMDBiMmNiMCAgdyAgIERGIC50ZXh0CTAwMDAwMGQyICBHTElCQ18yLjAgICB1bGltaXQKKzAwMDMyOGMwICB3ICAgREYgLnRleHQJMDAwMDAwMjcgIEdMSUJDXzIuMSAgIF9fc3RydG9kX2wKKzAwMTE1NDgwIGcgICAgRE8gLmRhdGEucmVsLnJvCTAwMDAwMWY0IChHTElCQ18yLjEpICBfc3lzX2Vycmxpc3QKKzAwMGNiZTMwICB3ICAgREYgLnRleHQJMDAwMDAxMWUgIEdMSUJDXzIuMSAgIGJhY2t0cmFjZQorMDAwMjBlNTAgIHcgICBERiAudGV4dAkwMDAwMDAzOCAgR0xJQkNfMi4wICAgX19jdHlwZV9nZXRfbWJfY3VyX21heAorMDAwMjliNjAgZyAgICBERiAudGV4dAkwMDAwMDAxZiAgR0xJQkNfMi4wICAgYXRvZgorMDAwY2JlMzAgZyAgICBERiAudGV4dAkwMDAwMDExZSAgR0xJQkNfMi4xICAgX19iYWNrdHJhY2UKKzAwMTE5MGZjICB3ICAgRE8gLmJzcwkwMDAwMDAwNCAgR0xJQkNfMi4wICAgZW52aXJvbgorMDAwY2JmNTAgZyAgICBERiAudGV4dAkwMDAwMDJiZCAgR0xJQkNfMi4xICAgX19iYWNrdHJhY2Vfc3ltYm9scworMDAwYmEyYzAgIHcgICBERiAudGV4dAkwMDAwMDA2NiAgR0xJQkNfMi4wICAgc3lzY3RsCiswMDBkZmI4MCBnICAgIERGIC50ZXh0CTAwMDAwMDFmICBHTElCQ18yLjAgICB4ZHJfZnJlZQorMDAwMDAwMDAgICAgICBETyAqVU5EKgkwMDAwMDFjYyAgR0xJQkNfUFJJVkFURSBfcnRsZF9nbG9iYWxfcm8KKzAwMGUwMWQwIGcgICAgREYgLnRleHQJMDAwMDAwM2EgIEdMSUJDXzIuMCAgIHhkcl9uZXRvYmoKKzAwMGIzY2QwIGcgICAgREYgLnRleHQJMDAwMDAwMzYgIEdMSUJDXzIuMCAgIGZkYXRhc3luYworMDAwNDNjYjAgZyAgICBERiAudGV4dAkwMDAwMDAyNCAgR0xJQkNfMi4wICAgZnByaW50ZgorMDAwZjE5ZjAgZyAgICBERiAudGV4dAkwMDAwMDAyYSAoR0xJQkNfMi4wKSAgX0lPX2RvX3dyaXRlCiswMDBiNzQxMCBnICAgIERGIC50ZXh0CTAwMDAwMmQ1ICBHTElCQ18yLjAgICBmY3Z0X3IKKzAwMTE3OTAwIGcgICAgRE8gLmRhdGEJMDAwMDAwNTAgIEdMSUJDXzIuMCAgIF9JT19zdGRpbl8KKzAwMDJjMTQwICB3ICAgREYgLnRleHQJMDAwMDAwNTIgIEdMSUJDXzIuMCAgIGpyYW5kNDhfcgorMDAwMjkwMDAgZyAgICBERiAudGV4dAkwMDAwMDA2ZSAgR0xJQkNfMi4wICAgc2lnc3RhY2sKKzAwMTFhOGU4IGcgICAgRE8gLmJzcwkwMDAwMDAwNCAgR0xJQkNfMi4xICAgX19rZXlfZW5jcnlwdHNlc3Npb25fcGtfTE9DQUwKKzAwMDI4YWYwICB3ICAgREYgLnRleHQJMDAwMDAwM2EgIEdMSUJDXzIuMCAgIGtpbGwKKzAwMDVkMzgwIGcgICAgREYgLnRleHQJMDAwMDAwOTggIEdMSUJDXzIuMSAgIGZwdXRzX3VubG9ja2VkCiswMDBiZDc2MCAgdyAgIERGIC50ZXh0CTAwMDAwMGQ1ICBHTElCQ18yLjAgICBpc3dncmFwaAorMDAwODg2ZTAgZyAgICBERiAudGV4dAkwMDAwMDBhOCAgR0xJQkNfMi4wICAgc2V0cHdlbnQKKzAwMGM0NTUwICB3ICAgREYgLnRleHQJMDAwMDAwYWYgIEdMSUJDXzIuMSAgIGFyZ3Bfc3RhdGVfaGVscAorMDAwZTNhNTAgZyAgICBERiAudGV4dAkwMDAwMDA4MSAgR0xJQkNfMi4xICAga2V5X2VuY3J5cHRzZXNzaW9uX3BrCiswMDA3YWUzMCBnICAgIERGIC50ZXh0CTAwMDAwMDFiICBHTElCQ18yLjAgICBjdGltZQorMDAwNjliYTAgZyAgICBERiAudGV4dAkwMDAwMDAxMCAgR0xJQkNfMi4wICAgZmZzCiswMDAyMTcxMCBnICAgIERGIC50ZXh0CTAwMDAwMTBlICBHTElCQ18yLjMgICBfX3VzZWxvY2FsZQorMDAwZWRhMTAgIHcgICBERiAudGV4dAkwMDAwMDE4OSAgR0xJQkNfMi4yLjQgZGxfaXRlcmF0ZV9waGRyCiswMDBjYjg2MCBnICAgIERGIC50ZXh0CTAwMDAwMDhhICBHTElCQ18yLjAgICBfX25zc19ncm91cF9sb29rdXAKKzAwMGRkODMwIGcgICAgREYgLnRleHQJMDAwMDAwYWYgIEdMSUJDXzIuMCAgIHN2Y19yZWdpc3RlcgorMDAwZTZmYTAgZyAgICBERiAudGV4dAkwMDAwMDA2OCAgR0xJQkNfMi4xICAgeGRyX2ludDhfdAorMDAwZGZiYjAgZyAgICBERiAudGV4dAkwMDAwMDA0MSAgR0xJQkNfMi4wICAgeGRyX2xvbmcKKzAwMDY4MTQwIGcgICAgREYgLnRleHQJMDAwMDAxYWEgIEdMSUJDXzIuMCAgIHN0cmNhdAorMDAwOWY1ZDAgIHcgICBERiAudGV4dAkwMDAwMDA4MSAgR0xJQkNfMi4wICAgcmVfY29tcGlsZV9wYXR0ZXJuCiswMDExYTZlNCBnICAgIERPIC5ic3MJMDAwMDAwMDQgIEdMSUJDXzIuMSAgIGFyZ3BfcHJvZ3JhbV92ZXJzaW9uCiswMDBkN2I5MCBnICAgIERGIC50ZXh0CTAwMDAwMWMxICBHTElCQ18yLjMuNCBnZXRzb3VyY2VmaWx0ZXIKKzAwMDU3NzgwIGcgICAgREYgLnRleHQJMDAwMDAwZTMgIEdMSUJDXzIuMiAgIHB1dHdjCiswMDBhYjQ3MCBnICAgIERGIC50ZXh0CTAwMDAwMDM4ICBHTElCQ18yLjIgICBwb3NpeF9zcGF3bmF0dHJfc2V0c2lnZGVmYXVsdAorMDAwMjJlNzAgIHcgICBERiAudGV4dAkwMDAwMDA0MyAgR0xJQkNfMi4wICAgZGNnZXR0ZXh0CiswMDBiYWVhMCBnICAgIERGIC50ZXh0CTAwMDAwMDM5ICBHTElCQ18yLjAgICBiaW5kCiswMDAzMDE1MCAgdyAgIERGIC50ZXh0CTAwMDAwMDI3ICBHTElCQ18yLjMgICBzdHJ0b2ZfbAorMDAwYmUxYTAgZyAgICBERiAudGV4dAkwMDAwMDA3ZCAgR0xJQkNfMi4xICAgX19pc3djbnRybF9sCiswMDAyYmQzMCBnICAgIERGIC50ZXh0CTAwMDAwMDUyICBHTElCQ18yLjAgICByYW5kX3IKKzAwMDhhNjEwIGcgICAgREYgLnRleHQJMDAwMDAwM2EgIEdMSUJDXzIuMCAgIF9fc2V0cGdpZAorMDAxMTc0ODQgZyAgICBETyAuZGF0YQkwMDAwMDAwNCAoR0xJQkNfMi4wKSAgX19jdHlwZV90b3VwcGVyCiswMDBiNGUzMCAgdyAgIERGIC50ZXh0CTAwMDAwMzVmICBHTElCQ18yLjAgICBnZXRtbnRlbnRfcgorMDAwY2Y0YjAgZyAgICBERiAudGV4dAkwMDAwMDBhMiAgR0xJQkNfMi4wICAgZ2V0cHJvdG9lbnQKKzAwMGQ3ZDYwIGcgICAgREYgLnRleHQJMDAwMDAxN2EgIEdMSUJDXzIuMy40IHNldHNvdXJjZWZpbHRlcgorMDAwZGQyZDAgZyAgICBERiAudGV4dAkwMDAwMDA0MiAgR0xJQkNfMi4wICAgc3ZjZXJyX3N5c3RlbWVycgorMDAwMjhlZTAgIHcgICBERiAudGV4dAkwMDAwMDExNCAgR0xJQkNfMi4wICAgc2lndmVjCiswMDBkNWJlMCBnICAgIERGIC50ZXh0CTAwMDAwMzI2ICBHTElCQ18yLjEgICBpZl9uYW1laW5kZXgKKzAwMGM2YjAwIGcgICAgREYgLnRleHQJMDAwMDAwMjggIEdMSUJDXzIuMCAgIGluZXRfYWRkcgorMDAwYjMzNTAgIHcgICBERiAudGV4dAkwMDAwMDA3MiAgR0xJQkNfMi4wICAgcmVhZHYKKzAwMGI3OWUwIGcgICAgREYgLnRleHQJMDAwMDAwYzMgIEdMSUJDXzIuMCAgIHFmY3Z0CiswMDBjZDM5MCAgdyAgIERGIC50ZXh0CTAwMDAwMDA3ICBHTElCQ18yLjAgICBudG9obAorMDAwYjU0YjAgZyAgICBERiAudGV4dAkwMDAwMDA1MCAgR0xJQkNfMi4xICAgdHJ1bmNhdGU2NAorMDAwYmQwNDAgZyAgICBERiAudGV4dAkwMDAwMDAxOSAgR0xJQkNfMi4wICAgX19wcm9maWxlX2ZyZXF1ZW5jeQorMDAwM2VlOTAgZyAgICBERiAudGV4dAkwMDAwMDAzNiAgR0xJQkNfMi4wICAgdnByaW50ZgorMDAwNmQ3MTAgZyAgICBERiAudGV4dAkwMDAwMDAyMyAgR0xJQkNfMi4xLjEgX19zdHJjaHJfZworMDAwYmE0ZDAgIHcgICBERiAudGV4dAkwMDAwMDA1NyAgR0xJQkNfMi4zICAgcmVhZGFoZWFkCiswMDBjNWNjMCBnICAgIERGIC50ZXh0CTAwMDAwMDJhIChHTElCQ18yLjApICBwdGhyZWFkX2F0dHJfaW5pdAorMDAwYmE0OTAgIHcgICBERiAudGV4dAkwMDAwMDAzYSAgR0xJQkNfMi4xICAgdW1vdW50MgorMDAwNjljMjAgZyAgICBERiAudGV4dAkwMDAwMDA0MSAgR0xJQkNfMi4wICAgX19zdHBjcHkKKzAwMGU0MDMwIGcgICAgREYgLnRleHQJMDAwMDAwNTcgIEdMSUJDXzIuMCAgIHhkcl9jcnlwdGtleWFyZworMDAwYjU1NTAgZyAgICBERiAudGV4dAkwMDAwMDAzMiAgR0xJQkNfMi4wICAgY2hmbGFncworMDAwYjc5NzAgZyAgICBERiAudGV4dAkwMDAwMDA2NCAgR0xJQkNfMi4wICAgcWVjdnQKKzAwMGFiZDMwIGcgICAgREYgLnRleHQJMDAwMDAwM2MgIEdMSUJDXzIuMCAgIG1rZmlmbworMDAwMjI3YzAgIHcgICBERiAudGV4dAkwMDAwMDAxNyAgR0xJQkNfMi4zICAgaXNzcGFjZV9sCiswMDA3YjdmMCBnICAgIERGIC50ZXh0CTAwMDAwMDNhICBHTElCQ18yLjAgICBfX2dldHRpbWVvZmRheQorMDAwMjgzZTAgIHcgICBERiAudGV4dAkwMDAwMDAwZCAgR0xJQkNfMi4wICAgc2NhbGJubAorMDAwZDU4YjAgZyAgICBERiAudGV4dAkwMDAwMDBhZSAgR0xJQkNfMi4xICAgaWZfbmFtZXRvaW5kZXgKKzAwMDYxNDkwIGcgICAgREYgLnRleHQJMDAwMDAxNzIgIEdMSUJDXzIuMCAgIF9JT19zdHJfb3ZlcmZsb3cKKzAwMGVlNDMwIGcgICAgREYgLnRleHQJMDAwMDAwMjEgIEdMSUJDXzIuMCAgIF9fZGVyZWdpc3Rlcl9mcmFtZV9pbmZvCiswMDA2ZDc5MCBnICAgIERGIC50ZXh0CTAwMDAwMDI0ICBHTElCQ18yLjEuMSBfX3N0cnJjaHJfYworMDAwYjcwZDAgZyAgICBERiAudGV4dAkwMDAwMDAzYyAgR0xJQkNfMi4wICAgbWFkdmlzZQorMDAxMTU0ODAgZyAgICBETyAuZGF0YS5yZWwucm8JMDAwMDAxZjQgKEdMSUJDXzIuMSkgIHN5c19lcnJsaXN0CiswMDA1YmQwMCAgdyAgIERGIC50ZXh0CTAwMDAwMWM4ICBHTElCQ18yLjAgICBvYnN0YWNrX3ZwcmludGYKKzAwMDcxM2QwICB3ICAgREYgLnRleHQJMDAwMDAwM2UgIEdMSUJDXzIuMyAgIHdjc3RvbGxfbAorMDAwYjNkMTAgZyAgICBERiAudGV4dAkwMDAwMDAzOSAgR0xJQkNfMi4wICAgcmVib290CiswMDBiYjFlMCAgdyAgIERGIC50ZXh0CTAwMDAwMDc4ICBHTElCQ18yLjAgICBfX3NlbmQKKzAwMGFkMWEwICB3ICAgREYgLnRleHQJMDAwMDAwMzYgIEdMSUJDXzIuMCAgIGNoZGlyCiswMDAyOTc3MCAgdyAgIERGIC50ZXh0CTAwMDAwMDY5ICBHTElCQ18yLjEgICBzaWd3YWl0aW5mbworMDAwNTdiOTAgZyAgICBERiAudGV4dAkwMDAwMDAzYiAgR0xJQkNfMi4yICAgc3dwcmludGYKKzAwMGM1ZGUwIGcgICAgREYgLnRleHQJMDAwMDAwMzMgIEdMSUJDXzIuMCAgIHB0aHJlYWRfYXR0cl9zZXRpbmhlcml0c2NoZWQKKzAwMDI3YmUwIGcgICAgREYgLnRleHQJMDAwMDAwMTEgIEdMSUJDXzIuMCAgIF9fZmluaXRlCiswMDA4NmM5MCBnICAgIERGIC50ZXh0CTAwMDAwMGJmICBHTElCQ18yLjAgICBpbml0Z3JvdXBzCiswMDA2ZTA5MCBnICAgIERGIC50ZXh0CTAwMDAwMDIyICBHTElCQ18yLjEuMSBfX21lbXNldF9jZworMDAwNzBlNTAgIHcgICBERiAudGV4dAkwMDAwMDAzZSAgR0xJQkNfMi4zICAgd2NzdG91bF9sCiswMDBhYzA3MCBnICAgIERGIC50ZXh0CTAwMDAwMDNhICBHTElCQ18yLjIgICBfX3N0YXRmcworMDAxMTdmZTAgZyAgICBETyAuYnNzCTAwMDAwMDA0IChHTElCQ18yLjApICBfZXJybm8KKzAwMGRiNzAwIGcgICAgREYgLnRleHQJMDAwMDAxMDUgIEdMSUJDXzIuMCAgIHBtYXBfdW5zZXQKKzAwMDViZmYwIGcgICAgREYgLnRleHQJMDAwMDAwZTEgIEdMSUJDXzIuMSAgIGZzZWVrbworMDAwYjM2ODAgIHcgICBERiAudGV4dAkwMDAwMDAzMiAgR0xJQkNfMi4wICAgc2V0cmVnaWQKKzAwMGIxNWMwIGcgICAgREYgLnRleHQJMDAwMDAwNDMgIEdMSUJDXzIuMiAgIHBvc2l4X2ZhZHZpc2UKKzAwMGI5ZmEwIGcgICAgREYgLnRleHQJMDAwMDAwM2MgIEdMSUJDXzIuMyAgIGxpc3R4YXR0cgorMDAwMjk5ODAgZyAgICBERiAudGV4dAkwMDAwMDA2ZSAgR0xJQkNfMi4xICAgc2lnaWdub3JlCiswMDBiYmI5MCBnICAgIERGIC50ZXh0CTAwMDAwMDRkICBHTElCQ18yLjAgICBzaG1kdAorMDAwMjdjMjAgIHcgICBERiAudGV4dAkwMDAwMDFjZiAgR0xJQkNfMi4wICAgbW9kZgorMDAwYWMzZjAgZyAgICBERiAudGV4dAkwMDAwMDA5NCAgR0xJQkNfMi4xICAgZnN0YXR2ZnMKKzAwMDg3NDIwIGcgICAgREYgLnRleHQJMDAwMDAwYTYgIEdMSUJDXzIuMCAgIGVuZGdyZW50CiswMDBiYjM2MCBnICAgIERGIC50ZXh0CTAwMDAwMDM5ICBHTElCQ18yLjAgICBzZXRzb2Nrb3B0CiswMDExNzBmOCBnICAgIERPIC5kYXRhCTAwMDAwMDAyICBHTElCQ18yLjAgICBfX2ZwdV9jb250cm9sCiswMDBiZTQyMCBnICAgIERGIC50ZXh0CTAwMDAwMDdkICBHTElCQ18yLjEgICBfX2lzd3B1bmN0X2wKKzAwMDI4NzcwICB3ICAgREYgLnRleHQJMDAwMDAwZGEgIEdMSUJDXzIuMCAgIGJzZF9zaWduYWwKKzAwMGRmZWQwIGcgICAgREYgLnRleHQJMDAwMDAwNjggIEdMSUJDXzIuMCAgIHhkcl9zaG9ydAorMDAwYmUyMjAgIHcgICBERiAudGV4dAkwMDAwMDA3ZCAgR0xJQkNfMi4zICAgaXN3ZGlnaXRfbAorMDAwY2NiODAgZyAgICBERiAudGV4dAkwMDAwMDExMyAgR0xJQkNfMi4zLjQgX19wcmludGZfY2hrCiswMDA1YjEzMCBnICAgIERGIC50ZXh0CTAwMDAwMGUxICBHTElCQ18yLjAgICBmc2VlaworMDAwNmFkNjAgIHcgICBERiAudGV4dAkwMDAwMDA0OSAgR0xJQkNfMi4wICAgYXJnel9leHRyYWN0CiswMDA1NjU4MCBnICAgIERGIC50ZXh0CTAwMDAwMThmICBHTElCQ18yLjAgICBfSU9fc2V0dmJ1ZgorMDAwYmFiNTAgIHcgICBERiAudGV4dAkwMDAwMDA0MiAgR0xJQkNfMi4wICAgbXJlbWFwCiswMDBjNjFkMCBnICAgIERGIC50ZXh0CTAwMDAwMDNhICBHTElCQ18yLjAgICBwdGhyZWFkX3NldHNjaGVkcGFyYW0KKzAwMDM5YzUwIGcgICAgREYgLnRleHQJMDAwMDAwMzAgIEdMSUJDXzIuMCAgIGN0ZXJtaWQKKzAwMGYwODcwIGcgICAgREYgLnRleHQJMDAwMDAwM2IgKEdMSUJDXzIuMCkgIGF0ZXhpdAorMDAwODkyMjAgIHcgICBERiAudGV4dAkwMDAwMDAyOSAgR0xJQkNfMi4wICAgd2FpdDMKKzAwMGJiNmQwIGcgICAgREYgLnRleHQJMDAwMDAwNTEgIEdMSUJDXzIuMSAgIF9fbGliY19zYV9sZW4KKzAwMDIzZGUwICB3ICAgREYgLnRleHQJMDAwMDAwNDIgIEdMSUJDXzIuMiAgIG5nZXR0ZXh0CiswMDA1MjkwMCBnICAgIERGIC50ZXh0CTAwMDAwMDdjICBHTElCQ18yLjAgICB0bXBuYW1fcgorMDAwZGQ2ZDAgZyAgICBERiAudGV4dAkwMDAwMDA4MiAgR0xJQkNfMi4wICAgc3ZjX2dldHJlcXNldAorMDAwMjBkODAgZyAgICBERiAudGV4dAkwMDAwMDA3YSAgR0xJQkNfMi4wICAgbmxfbGFuZ2luZm8KKzAwMGJiYmUwIGcgICAgREYgLnRleHQJMDAwMDAwNGYgIEdMSUJDXzIuMCAgIHNobWdldAorMDAwMjI1ZjAgZyAgICBERiAudGV4dAkwMDAwMDA0MiAgR0xJQkNfMi4wICAgX3RvbG93ZXIKKzAwMDU1MzgwICB3ICAgREYgLnRleHQJMDAwMDAyNGUgIEdMSUJDXzIuMCAgIGdldGRlbGltCiswMDBkNGEwMCBnICAgIERGIC50ZXh0CTAwMDAwMTI1ICBHTElCQ18yLjAgICBnZXRhbGlhc2J5bmFtZQorMDAwNDMzZDAgZyAgICBERiAudGV4dAkwMDAwMDAyZCAgR0xJQkNfMi4xICAgcHJpbnRmX3NpemVfaW5mbworMDAwYjdhYjAgZyAgICBERiAudGV4dAkwMDAwMDMxZSAgR0xJQkNfMi4wICAgcWZjdnRfcgorMDAwMmI3YjAgIHcgICBERiAudGV4dAkwMDAwMDA3YiAgR0xJQkNfMi4wICAgc2V0c3RhdGUKKzAwMGIyNDIwIGcgICAgREYgLnRleHQJMDAwMDAwNDIgIEdMSUJDXzIuMCAgIGNmc2V0b3NwZWVkCiswMDA2OWViMCAgdyAgIERGIC50ZXh0CTAwMDAwMDNlICBHTElCQ18yLjAgICBtZW1jY3B5CiswMDBiNTU5MCBnICAgIERGIC50ZXh0CTAwMDAwMDMyICBHTElCQ18yLjAgICBmY2hmbGFncworMDAwYmFkZTAgZyAgICBERiAudGV4dAkwMDAwMDAzNiAgR0xJQkNfMi4wICAgdXNlbGliCiswMDA2ZDM2MCBnICAgIERGIC50ZXh0CTAwMDAwMDFkICBHTElCQ18yLjEuMSBfX21lbXNldF9jY25fYnk0CiswMDA3MDU5MCAgdyAgIERGIC50ZXh0CTAwMDAwMDUyICBHTElCQ18yLjAgICB3Y3N0b2xkCiswMDExNzI4OCBnICAgIERPIC5kYXRhCTAwMDAwMDA0ICBHTElCQ18yLjAgICBvcHRpbmQKKzAwMDE1NDEwICB3ICAgREYgLnRleHQJMDAwMDAwMTYgIEdMSUJDXzIuMSAgIGdudV9nZXRfbGliY19yZWxlYXNlCiswMDBhYmM3MCBnICAgIERGIC50ZXh0CTAwMDAwMDE1ICBHTElCQ18yLjIgICBwb3NpeF9zcGF3bmF0dHJfc2V0c2NoZWRwYXJhbQorMDAwNTU5NDAgZyAgICBERiAudGV4dAkwMDAwMDBkMyAgR0xJQkNfMi4wICAgX0lPX3BhZG4KKzAwMDg5OTAwICB3ICAgREYgLnRleHQJMDAwMDAwNzggIEdMSUJDXzIuMi42IF9fbmFub3NsZWVwCiswMDBiZTMyMCBnICAgIERGIC50ZXh0CTAwMDAwMDdkICBHTElCQ18yLjEgICBfX2lzd2dyYXBoX2wKKzAwMDY5N2MwICB3ICAgREYgLnRleHQJMDAwMDAxOWIgIEdMSUJDXzIuMCAgIG1lbWNocgorMDAwNTU2MjAgZyAgICBERiAudGV4dAkwMDAwMDFhNCAgR0xJQkNfMi4xICAgX0lPX2dldGxpbmVfaW5mbworMDAwZTk2ZTAgZyAgICBERiAudGV4dAkwMDAwMDAxNSAgR0xJQkNfMi4xICAgZmF0dGFjaAorMDAwZGQ5YTAgZyAgICBERiAudGV4dAkwMDAwMDA5OCAgR0xJQkNfMi4yICAgc3ZjX2dldHJlcV9wb2xsCiswMDA4OGI1MCBnICAgIERGIC50ZXh0CTAwMDAwMzMyICBHTElCQ19QUklWQVRFIF9uc3NfZmlsZXNfcGFyc2VfcHdlbnQKKzAwMGI0MGMwICB3ICAgREYgLnRleHQJMDAwMDAwMzYgIEdMSUJDXzIuMCAgIHN3YXBvZmYKKzAwMGNkMTUwIGcgICAgREYgLnRleHQJMDAwMDAwNDYgIEdMSUJDXzIuMy40IF9fY2hrX2ZhaWwKKzAwMDAwMDAwIGcgICAgRE8gKkFCUyoJMDAwMDAwMDAgIEdMSUJDXzIuMy4yIEdMSUJDXzIuMy4yCiswMDExYTdjMCBnICAgIERPIC5ic3MJMDAwMDAwMzAgIEdMSUJDXzIuMiAgIF9yZXNfaGNvbmYKKzAwMDI3MzEwIGcgICAgREYgLnRleHQJMDAwMDA4NjYgIEdMSUJDX1BSSVZBVEUgX19vcGVuX2NhdGFsb2cKKzAwMTE3OGRjIGcgICAgRE8gLmRhdGEJMDAwMDAwMDQgIEdMSUJDXzIuMCAgIHN0ZGluCiswMDBiODQ1MCAgdyAgIERGIC50ZXh0CTAwMDAwMDViICBHTElCQ18yLjAgICB0ZmluZAorMDAwODkwZjAgIHcgICBERiAudGV4dAkwMDAwMDBhOSAgR0xJQkNfMi4wICAgd2FpdAorMDAwY2MyMTAgIHcgICBERiAudGV4dAkwMDAwMDIyZSAgR0xJQkNfMi4xICAgYmFja3RyYWNlX3N5bWJvbHNfZmQKKzAwMDI4ZWEwIGcgICAgREYgLnRleHQJMDAwMDAwMWMgIEdMSUJDX1BSSVZBVEUgX19saWJjX19feHBnX3NpZ3BhdXNlCiswMDA5MmVlMCBnICAgIERGIC50ZXh0CTAwMDAwMmVjICBHTElCQ18yLjIuMyBmbm1hdGNoCiswMDBiNzExMCBnICAgIERGIC50ZXh0CTAwMDAwMDNjICBHTElCQ18yLjIgICBtaW5jb3JlCiswMDBhMjdmMCAgdyAgIERGIC50ZXh0CTAwMDAwMDRhICBHTElCQ18yLjAgICByZV9tYXRjaF8yCiswMDBkYzk4MCBnICAgIERGIC50ZXh0CTAwMDAwMDllICBHTElCQ18yLjAgICB4ZHJfYWNjZXB0ZWRfcmVwbHkKKzAwMTA0ZDcwIGcgICAgRE8gLnJvZGF0YQkwMDAwMDAwNCAgR0xJQkNfMi4zICAgc3lzX25lcnIKKzAwMDYxNzEwIGcgICAgREYgLnRleHQJMDAwMDAwNDcgIEdMSUJDXzIuMCAgIF9JT19zdHJfaW5pdF9zdGF0aWMKKzAwMDg1OWUwIGcgICAgREYgLnRleHQJMDAwMDAxZWQgIEdMSUJDXzIuMCAgIHNjYW5kaXIKKzAwMGFjNzUwICB3ICAgREYgLnRleHQJMDAwMDAwMTAgIEdMSUJDXzIuMCAgIHVtYXNrCiswMDExOThlMCBnICAgIERPIC5ic3MJMDAwMDAyMDAgKEdMSUJDXzIuMCkgIF9yZXMKKzAwMDZiNzUwIGcgICAgREYgLnRleHQJMDAwMDEwM2MgIEdMSUJDXzIuMSAgIF9fc3RyY29sbF9sCiswMDBiOGIyMCBnICAgIERGIC50ZXh0CTAwMDAwMDQ4ICBHTElCQ18yLjAgICBsZmluZAorMDAwYmU2YTAgIHcgICBERiAudGV4dAkwMDAwMDA3MiAgR0xJQkNfMi4zICAgaXN3Y3R5cGVfbAorMDAwNTVmNTAgZyAgICBERiAudGV4dAkwMDAwMDE3ZiAgR0xJQkNfMi4wICAgX0lPX3B1dHMKKzAwMDY5YmIwIGcgICAgREYgLnRleHQJMDAwMDAwNjIgIEdMSUJDXzIuMSAgIGZmc2xsCiswMDAzNmRmMCAgdyAgIERGIC50ZXh0CTAwMDAwMDQyICBHTElCQ18yLjMgICBzdHJmbW9uX2wKKzAwMDQzZGUwIGcgICAgREYgLnRleHQJMDAwMDAwMzQgIEdMSUJDXzIuMCAgIGRwcmludGYKKzAwMGI5ZWMwIGcgICAgREYgLnRleHQJMDAwMDAwM2EgIEdMSUJDXzIuMyAgIGZyZW1vdmV4YXR0cgorMDAwZGQzNjAgZyAgICBERiAudGV4dAkwMDAwMDAxYyAgR0xJQkNfMi4wICAgc3ZjZXJyX3dlYWthdXRoCiswMDBkOGM0MCBnICAgIERGIC50ZXh0CTAwMDAwMGMxICBHTElCQ18yLjAgICB4ZHJfYXV0aHVuaXhfcGFybXMKKzAwMGYwYzEwIGcgICAgREYgLnRleHQJMDAwMDAxNmMgKEdMSUJDXzIuMCkgIGZjbG9zZQorMDAwNWVkOTAgZyAgICBERiAudGV4dAkwMDAwMDIwYiAgR0xJQkNfMi4xICAgX0lPX2ZpbGVfdW5kZXJmbG93CiswMDBkNDExMCBnICAgIERGIC50ZXh0CTAwMDAwMmU4ICBHTElCQ18yLjAgICBpbm5ldGdyCiswMDBkZTdhMCBnICAgIERGIC50ZXh0CTAwMDAwMDEyICBHTElCQ18yLjAgICBzdmNmZF9jcmVhdGUKKzAwMDAwMDAwIGcgICAgRE8gKkFCUyoJMDAwMDAwMDAgIEdMSUJDXzIuMi4xIEdMSUJDXzIuMi4xCiswMDA3YjdhMCBnICAgIERGIC50ZXh0CTAwMDAwMDNjICBHTElCQ18yLjAgICBta3RpbWUKKzAwMDg4ZTkwICB3ICAgREYgLnRleHQJMDAwMDAxZDcgIEdMSUJDXzIuMCAgIGZnZXRwd2VudF9yCiswMDExN2RiOCBnICAgIERPIC5kYXRhCTAwMDAwMDA0ICBHTElCQ18yLjAgICBfX3Byb2duYW1lCiswMDExOGQ0NCAgdyAgIERPIC5ic3MJMDAwMDAwMDQgIEdMSUJDXzIuMCAgIHRpbWV6b25lCiswMDAyOGVjMCBnICAgIERGIC50ZXh0CTAwMDAwMDE5ICBHTElCQ19QUklWQVRFIF9fbGliY19zaWdwYXVzZQorMDAwNmE0ODAgIHcgICBERiAudGV4dAkwMDAwMDE3OSAgR0xJQkNfMi4xICAgc3RyY2FzZXN0cgorMDAwMDAwMDAgZyAgICBETyAqQUJTKgkwMDAwMDAwMCAgR0xJQkNfMi4wICAgR0xJQkNfMi4wCiswMDBmM2ZmMCBnICAgIERGIC50ZXh0CTAwMDAwMDQxIChHTElCQ18yLjApICBnZXRob3N0ZW50X3IKKzAwMGVlZTYwIGcgICAgREYgLnRleHQJMDAwMDAwZjQgIEdDQ18zLjAgICAgIF9fZGVyZWdpc3Rlcl9mcmFtZV9pbmZvX2Jhc2VzCiswMDAyNzA4MCBnICAgIERGIC50ZXh0CTAwMDAwMDg2ICBHTElCQ18yLjAgICBjYXRnZXRzCiswMDA2NmNlMCBnICAgIERGIC50ZXh0CTAwMDAwMDRkICBHTElCQ18yLjIgICBtY2hlY2tfY2hlY2tfYWxsCiswMDA2MGEzMCBnICAgIERGIC50ZXh0CTAwMDAwMDIyICBHTElCQ18yLjAgICBfSU9fZmx1c2hfYWxsCiswMDA1YWQwMCAgdyAgIERGIC50ZXh0CTAwMDAwMDY4ICBHTElCQ18yLjAgICBmZXJyb3IKKzAwMDY5M2MwIGcgICAgREYgLnRleHQJMDAwMDAxODYgIEdMSUJDXzIuMCAgIHN0cnN0cgorMDAwN2EwYTAgZyAgICBERiAudGV4dAkwMDAwMDA3YyAgR0xJQkNfMi4xICAgX193Y3NuY2FzZWNtcF9sCiswMDBlYjgxMCBnICAgIERGIC50ZXh0CTAwMDAwMDZhICBHTElCQ18yLjEgICB1bmxvY2twdAorMDAwNTZmZDAgZyAgICBERiAudGV4dAkwMDAwMDAzYiAgR0xJQkNfMi4yICAgZ2V0d2NoYXJfdW5sb2NrZWQKKzAwMGRmZWEwIGcgICAgREYgLnRleHQJMDAwMDAwMmEgIEdMSUJDXzIuMS4xIHhkcl91X2xvbmdsb25nX3QKKzAwMDYwMGQwIGcgICAgREYgLnRleHQJMDAwMDAwMDggIEdMSUJDXzIuMiAgIF9JT19pdGVyX2ZpbGUKKzAwMGU0ODMwIGcgICAgREYgLnRleHQJMDAwMDAxZDkgIEdMSUJDXzIuMSAgIHJ0aW1lCiswMDA1ZmUzMCBnICAgIERGIC50ZXh0CTAwMDAwMDNiICBHTElCQ18yLjAgICBfSU9fYWRqdXN0X2NvbHVtbgorMDAwMmJkMTAgZyAgICBERiAudGV4dAkwMDAwMDAxNyAgR0xJQkNfMi4wICAgcmFuZAorMDAwZWJjYTAgZyAgICBERiAudGV4dAkwMDAwMDAxNyAgR0xJQkNfMi4xICAgZ2V0dXR4ZW50CiswMDExYTZkOCBnICAgIERPIC5ic3MJMDAwMDAwMDQgIEdMSUJDXzIuMCAgIGxvYzEKKzAwMDI4MjMwICB3ICAgREYgLnRleHQJMDAwMDAwMWUgIEdMSUJDXzIuMCAgIGNvcHlzaWdubAorMDAwZTZkODAgZyAgICBERiAudGV4dAkwMDAwMDBiYiAgR0xJQkNfMi4xLjEgeGRyX3VpbnQ2NF90CiswMDA1YzBlMCBnICAgIERGIC50ZXh0CTAwMDAwMWM4ICBHTElCQ18yLjEgICBmdGVsbG8KKzAwMGFjZGMwICB3ICAgREYgLnRleHQJMDAwMDAwM2EgIEdMSUJDXzIuMCAgIGZsb2NrCiswMDAyODIyMCAgdyAgIERGIC50ZXh0CTAwMDAwMDBlICBHTElCQ18yLjAgICBmaW5pdGVsCiswMDA2MmJkMCAgdyAgIERGIC50ZXh0CTAwMDAwM2RiICBHTElCQ18yLjAgICBtYWxsb2Nfc2V0X3N0YXRlCiswMDA4YTUwMCAgdyAgIERGIC50ZXh0CTAwMDAwMDJmICBHTElCQ18yLjAgICBzZXRnaWQKKzAwMDE1MjYwIGcgICAgREYgLnRleHQJMDAwMDAwMDUgIEdMSUJDXzIuMCAgIF9fbGliY19pbml0X2ZpcnN0CiswMDA2ZDc0MCBnICAgIERGIC50ZXh0CTAwMDAwMDIwICBHTElCQ18yLjEuMSBfX3N0cmNocm51bF9jCiswMDAyODc3MCAgdyAgIERGIC50ZXh0CTAwMDAwMGRhICBHTElCQ18yLjAgICBzaWduYWwKKzAwMDUyNGUwIGcgICAgREYgLnRleHQJMDAwMDAyMWIgIEdMSUJDXzIuMCAgIHBzaWduYWwKKzAwMGMyYjkwICB3ICAgREYgLnRleHQJMDAwMDAzMjcgIEdMSUJDXzIuMSAgIGFyZ3BfZmFpbHVyZQorMDAwYWNhMjAgIHcgICBERiAudGV4dAkwMDAwMDA3YyAgR0xJQkNfMi4wICAgcmVhZAorMDAxMTdmZTAgZyAgICBETyAuYnNzCTAwMDAwMDA0IChHTElCQ18yLjApICBlcnJubworMDAwODYwNjAgZyAgICBERiAudGV4dAkwMDAwMDAwYSAgR0xJQkNfMi4wICAgZGlyZmQKKzAwMGU5OTIwICB3ICAgREYgLnRleHQJMDAwMDAwNTkgIEdMSUJDXzIuMCAgIGVuZHV0ZW50CiswMDA2ZTA2MCBnICAgIERGIC50ZXh0CTAwMDAwMDIyICBHTElCQ18yLjEuMSBfX21lbXNldF9nZworMDAwYmYyMTAgZyAgICBERiAudGV4dAkwMDAwMDBhOCAgR0xJQkNfMi4wICAgc2V0c3BlbnQKKzAwMDZlMDkwIGcgICAgREYgLnRleHQJMDAwMDAwMjIgIEdMSUJDXzIuMS4xIF9fbWVtc2V0X2NjCiswMDBhZDNlMCBnICAgIERGIC50ZXh0CTAwMDAwMGJkICBHTElCQ18yLjAgICBnZXRfY3VycmVudF9kaXJfbmFtZQorMDAwYmU4YjAgZyAgICBERiAudGV4dAkwMDAwMDEyNSAgR0xJQkNfMi4wICAgZ2V0c3BuYW0KKzAwMDZkNTQwIGcgICAgREYgLnRleHQJMDAwMDAwMzEgIEdMSUJDXzIuMS4xIF9fc3RwY3B5X2cKKzAwMGI2NmMwIGcgICAgREYgLnRleHQJMDAwMDAwODAgIEdMSUJDXzIuMCAgIG9wZW5sb2cKKzAwMGFhZjkwICB3ICAgREYgLnRleHQJMDAwMDAwOTQgIEdMSUJDXzIuMSAgIHByZWFkNjQKKzAwMDI5NTMwIGcgICAgREYgLnRleHQJMDAwMDAwMjcgIEdMSUJDX1BSSVZBVEUgX19saWJjX2N1cnJlbnRfc2lncnRtaW5fcHJpdmF0ZQorMDAwZTAwMDAgZyAgICBERiAudGV4dAkwMDAwMDA0ZSAgR0xJQkNfMi4wICAgeGRyX3VfY2hhcgorMDAwYmIyNjAgIHcgICBERiAudGV4dAkwMDAwMDA3OCAgR0xJQkNfMi4wICAgc2VuZG1zZworMDAwYmU1MjAgZyAgICBERiAudGV4dAkwMDAwMDA3ZCAgR0xJQkNfMi4xICAgX19pc3d1cHBlcl9sCiswMDEwNzkwOCBnICAgIERPIC5yb2RhdGEJMDAwMDAwMTAgIEdMSUJDXzIuMSAgIGluNmFkZHJfbG9vcGJhY2sKKzAwMGJkZDcwICB3ICAgREYgLnRleHQJMDAwMDAwNzIgIEdMSUJDXzIuMCAgIGlzd2N0eXBlCiswMDA2ODRiMCBnICAgIERGIC50ZXh0CTAwMDAwMDRiICBHTElCQ18yLjAgICBzdHJjb2xsCiswMDBiNjQ5MCBnICAgIERGIC50ZXh0CTAwMDAwMDhhICBHTElCQ18yLjAgICBjbG9zZWxvZworMDAwZGE3YzAgZyAgICBERiAudGV4dAkwMDAwMDA0OCAgR0xJQkNfMi4wICAgY2xudHVkcF9jcmVhdGUKKzAwMDIyNGQwIGcgICAgREYgLnRleHQJMDAwMDAwN2QgIEdMSUJDXzIuMCAgIGlzdXBwZXIKKzAwMGUzOWMwIGcgICAgREYgLnRleHQJMDAwMDAwODEgIEdMSUJDXzIuMSAgIGtleV9kZWNyeXB0c2Vzc2lvbl9waworMDAwNmFhZDAgZyAgICBERiAudGV4dAkwMDAwMDAzZSAgR0xJQkNfMi4wICAgX19hcmd6X2NvdW50CiswMDAyMjg0MCBnICAgIERGIC50ZXh0CTAwMDAwMDExICBHTElCQ18yLjEgICBfX3RvdXBwZXJfbAorMDAwNjhjNDAgZyAgICBERiAudGV4dAkwMDAwMDBmMyAgR0xJQkNfMi4wICAgc3RybmNtcAorMDAwYWI1NzAgZyAgICBERiAudGV4dAkwMDAwMDA1MSAgR0xJQkNfMi4yICAgcG9zaXhfc3Bhd25wCiswMDA0M2NiMCAgdyAgIERGIC50ZXh0CTAwMDAwMDI0ICBHTElCQ18yLjAgICBfSU9fZnByaW50ZgorMDAxMWE2NjggZyAgICBETyAuYnNzCTAwMDAwMDA0IChHTElCQ18yLjApICBfb2JzdGFjaworMDAwYmFjYjAgZyAgICBERiAudGV4dAkwMDAwMDA0OCAgR0xJQkNfMi4wICAgcXVlcnlfbW9kdWxlCiswMDAyYWY1MCBnICAgIERGIC50ZXh0CTAwMDAwMDMzICBHTElCQ18yLjAgICBfX3NlY3VyZV9nZXRlbnYKKzAwMDM1YjUwIGcgICAgREYgLnRleHQJMDAwMDAwNGIgIEdMSUJDXzIuMCAgIGw2NGEKKzAwMTA0ZDcwIGcgICAgRE8gLnJvZGF0YQkwMDAwMDAwNCAgR0xJQkNfMi4zICAgX3N5c19uZXJyCiswMDA2ODVkMCBnICAgIERGIC50ZXh0CTAwMDAwMTQ2ICBHTElCQ18yLjEuMSBfX3N0cnZlcnNjbXAKKzAwMDU4NDAwIGcgICAgREYgLnRleHQJMDAwMDAwODEgIEdMSUJDXzIuMiAgIF9JT193ZGVmYXVsdF9kb2FsbG9jYXRlCiswMDAyMjZlMCBnICAgIERGIC50ZXh0CTAwMDAwMDE3ICBHTElCQ18yLjEgICBfX2lzYWxwaGFfbAorMDAwMjk0YjAgZyAgICBERiAudGV4dAkwMDAwMDAzNSAgR0xJQkNfMi4wICAgc2lnb3JzZXQKKzAwMDZmNmUwICB3ICAgREYgLnRleHQJMDAwMDAzNjAgIEdMSUJDXzIuMCAgIHdjc3J0b21icworMDAwZTFhNjAgZyAgICBERiAudGV4dAkwMDAwMDBlOCAgR0xJQkNfMi4wICAgZ2V0cHVibGlja2V5CiswMDA1NTdkMCBnICAgIERGIC50ZXh0CTAwMDAwMTZmICBHTElCQ18yLjAgICBfSU9fZ2V0cworMDAwNjU3ODAgZyAgICBERiAudGV4dAkwMDAwMDFkNCAgR0xJQkNfMi4wICAgX19saWJjX21hbGxvYworMDAwODVjNDAgZyAgICBERiAudGV4dAkwMDAwMDAyNCAgR0xJQkNfMi4wICAgYWxwaGFzb3J0CiswMDBhYWY5MCAgdyAgIERGIC50ZXh0CTAwMDAwMDk0ICBHTElCQ18yLjEgICBfX3ByZWFkNjQKKzAwMGI1ZmEwIGcgICAgREYgLnRleHQJMDAwMDAwNDAgIEdMSUJDXzIuMCAgIGdldHVzZXJzaGVsbAorMDAwYjM4NzAgZyAgICBERiAudGV4dAkwMDAwMDAzYSAgR0xJQkNfMi4wICAgc2V0aG9zdG5hbWUKKzAwMGJiNjkwIGcgICAgREYgLnRleHQJMDAwMDAwNDAgIEdMSUJDXzIuMCAgIF9fY21zZ19ueHRoZHIKKzAwMDUzMjMwIGcgICAgREYgLnRleHQJMDAwMDAwMzIgIEdMSUJDXzIuMCAgIF9JT19mdHJ5bG9ja2ZpbGUKKzAwMGJkMDYwICB3ICAgREYgLnRleHQJMDAwMDAwMTMgIEdMSUJDXzIuMCAgIG1jb3VudAorMDAwMjI3MjAgZyAgICBERiAudGV4dAkwMDAwMDAxNyAgR0xJQkNfMi4xICAgX19pc2RpZ2l0X2wKKzAwMDg1YzcwIGcgICAgREYgLnRleHQJMDAwMDAwMjQgIEdMSUJDXzIuMSAgIHZlcnNpb25zb3J0CiswMDA2ZWM2MCBnICAgIERGIC50ZXh0CTAwMDAwMDUxICBHTElCQ18yLjAgICB3bWVtc2V0CiswMDBiOThhMCAgdyAgIERGIC50ZXh0CTAwMDAwMDFhICBHTElCQ18yLjAgICBnZXRfYXZwaHlzX3BhZ2VzCiswMDAwMDAwMCBnICAgIERPICpBQlMqCTAwMDAwMDAwICBHTElCQ19QUklWQVRFIEdMSUJDX1BSSVZBVEUKKzAwMDhhNjgwIGcgICAgREYgLnRleHQJMDAwMDAwMWEgIEdMSUJDXzIuMCAgIHNldHBncnAKKzAwMGE5ZjYwIGcgICAgREYgLnRleHQJMDAwMDBkZjIgIEdMSUJDXzIuMSAgIHdvcmRleHAKKzAwMDVmZjMwIGcgICAgREYgLnRleHQJMDAwMDAwM2EgIEdMSUJDXzIuMCAgIF9JT19tYXJrZXJfZGVsdGEKKzAwMGQ0NDAwIGcgICAgREYgLnRleHQJMDAwMDAwOTcgIEdMSUJDX1BSSVZBVEUgX19pbnRlcm5hbF9lbmRuZXRncmVudAorMDAwNjM1YjAgZyAgICBERiAudGV4dAkwMDAwMDBiOCAgR0xJQkNfMi4wICAgX19saWJjX2ZyZWUKKzAwMDY4ZDQwIGcgICAgREYgLnRleHQJMDAwMDAwYTMgIEdMSUJDXzIuMCAgIHN0cm5jcHkKKzAwMGFkZjkwICB3ICAgREYgLnRleHQJMDAwMDAwMzYgIEdMSUJDXzIuMCAgIHVubGluaworMDAwMmFlZDAgIHcgICBERiAudGV4dAkwMDAwMDA3MyAgR0xJQkNfMi4wICAgc2V0ZW52CiswMDBiMmM3MCAgdyAgIERGIC50ZXh0CTAwMDAwMDNhICBHTElCQ18yLjAgICBnZXRydXNhZ2UKKzAwMGIzY2EwIGcgICAgREYgLnRleHQJMDAwMDAwMmUgIEdMSUJDXzIuMCAgIHN5bmMKKzAwMDVjMmIwIGcgICAgREYgLnRleHQJMDAwMDAyNGMgIEdMSUJDXzIuMSAgIGZyZW9wZW42NAorMDAwNmRlMzAgZyAgICBERiAudGV4dAkwMDAwMDA0NyAgR0xJQkNfMi4xLjEgX19zdHJwYnJrX2MzCiswMDA1ODE5MCBnICAgIERGIC50ZXh0CTAwMDAwMDRjICBHTElCQ18yLjIgICBfSU9fc3VuZ2V0d2MKKzAwMTE3ZGI4ICB3ICAgRE8gLmRhdGEJMDAwMDAwMDQgIEdMSUJDXzIuMCAgIHByb2dyYW1faW52b2NhdGlvbl9zaG9ydF9uYW1lCiswMDA2OWQxMCAgdyAgIERGIC50ZXh0CTAwMDAwMDY4ICBHTElCQ18yLjAgICBzdHJjYXNlY21wCiswMDBjZDM5MCBnICAgIERGIC50ZXh0CTAwMDAwMDA3ICBHTElCQ18yLjAgICBodG9ubAorMDAwYmIyZTAgIHcgICBERiAudGV4dAkwMDAwMDA3OCAgR0xJQkNfMi4wICAgc2VuZHRvCiswMDBhYzdlMCBnICAgIERGIC50ZXh0CTAwMDAwMDE1ICBHTElCQ18yLjMuMiBsY2htb2QKKzAwMGRmYzMwIGcgICAgREYgLnRleHQJMDAwMDAwNjUgIEdMSUJDXzIuMCAgIHhkcl91X2xvbmcKKzAwMDIyNmUwICB3ICAgREYgLnRleHQJMDAwMDAwMTcgIEdMSUJDXzIuMyAgIGlzYWxwaGFfbAorMDAwYTQ0OTAgIHcgICBERiAudGV4dAkwMDAwMDAzNiAgR0xJQkNfMi4wICAgc2NoZWRfZ2V0X3ByaW9yaXR5X21heAorMDAwYjQwMjAgZyAgICBERiAudGV4dAkwMDAwMDAxNSAgR0xJQkNfMi4wICAgcmV2b2tlCiswMDA1ZWZhMCBnICAgIERGIC50ZXh0CTAwMDAwMDYzICBHTElCQ18yLjEgICBfSU9fZmlsZV9zZXRidWYKKzAwMGFiYjcwIGcgICAgREYgLnRleHQJMDAwMDAwM2EgIEdMSUJDXzIuMiAgIHBvc2l4X3NwYXduYXR0cl9nZXRzaWdtYXNrCiswMDBkNDVkMCBnICAgIERGIC50ZXh0CTAwMDAwMDY4ICBHTElCQ18yLjAgICBzZXRuZXRncmVudAorMDAwNTMyNzAgIHcgICBERiAudGV4dAkwMDAwMDAyZCAgR0xJQkNfMi4wICAgZnVubG9ja2ZpbGUKKzAwMGViZTEwIGcgICAgREYgLnRleHQJMDAwMDAyNDggIEdMSUJDX1BSSVZBVEUgX2RsX29wZW4KKzAwMDc4NWQwIGcgICAgREYgLnRleHQJMDAwMDAwOTYgIEdMSUJDXzIuMCAgIHdjd2lkdGgKKzAwMDIyNTYwIGcgICAgREYgLnRleHQJMDAwMDAwMTEgIEdMSUJDXzIuMCAgIGlzYXNjaWkKKzAwMGY0MTAwIGcgICAgREYgLnRleHQJMDAwMDAwNjYgKEdMSUJDXzIuMCkgIGdldG5ldGJ5bmFtZV9yCiswMDBkY2EyMCBnICAgIERGIC50ZXh0CTAwMDAwMDgxICBHTElCQ18yLjAgICB4ZHJfcmVwbHltc2cKKzAwMDY1YzYwIGcgICAgREYgLnRleHQJMDAwMDAyMWMgIEdMSUJDXzIuMCAgIHJlYWxsb2MKKzAwMGI0OTAwICB3ICAgREYgLnRleHQJMDAwMDA0NmYgIEdMSUJDXzIuMCAgIGFkZG1udGVudAorMDAwMmIwNzAgIHcgICBERiAudGV4dAkwMDAwMDAzNiAgR0xJQkNfMi4wICAgb25fZXhpdAorMDAwYzY1NTAgZyAgICBERiAudGV4dAkwMDAwMDE1OCAgR0xJQkNfMi4zLjIgX19yZWdpc3Rlcl9hdGZvcmsKKzAwMDI4NmEwIGcgICAgREYgLnRleHQJMDAwMDAwNjMgIEdMSUJDX1BSSVZBVEUgX19saWJjX3NpZ2xvbmdqbXAKKzAwMDViZmQwICB3ICAgREYgLnRleHQJMDAwMDAwMTcgIEdMSUJDXzIuMCAgIGZjbG9zZWFsbAorMDAwYmQwODAgZyAgICBERiAudGV4dAkwMDAwMDBiZCAgR0xJQkNfMi4wICAgdG93dXBwZXIKKzAwMGJlMjIwIGcgICAgREYgLnRleHQJMDAwMDAwN2QgIEdMSUJDXzIuMSAgIF9faXN3ZGlnaXRfbAorMDAwZTNjNDAgZyAgICBERiAudGV4dAkwMDAwMDEwMyAgR0xJQkNfMi4xICAga2V5X2dlbmRlcworMDAwYmUyYTAgZyAgICBERiAudGV4dAkwMDAwMDA3ZCAgR0xJQkNfMi4xICAgX19pc3dsb3dlcl9sCiswMDBkMDJiMCBnICAgIERGIC50ZXh0CTAwMDAwMGEyICBHTElCQ18yLjAgICBnZXRycGNlbnQKKzAwMDY4NzIwIGcgICAgREYgLnRleHQJMDAwMDAwNTcgIEdMSUJDXzIuMCAgIF9fc3RyZHVwCiswMDAyYjFhMCBnICAgIERGIC50ZXh0CTAwMDAwMDNjICBHTElCQ18yLjEuMyBfX2N4YV9hdGV4aXQKKzAwMGJlMTIwICB3ICAgREYgLnRleHQJMDAwMDAwN2QgIEdMSUJDXzIuMyAgIGlzd2JsYW5rX2wKKzAwMTE3MzI4IGcgICAgRE8gLmRhdGEJMDAwMDAwMDQgIEdMSUJDXzIuMSAgIGFyZ3BfZXJyX2V4aXRfc3RhdHVzCiswMDBlYmRkMCBnICAgIERGIC50ZXh0CTAwMDAwMDMzICBHTElCQ18yLjEuMSBnZXR1dG1wCiswMDA1MjdhMCBnICAgIERGIC50ZXh0CTAwMDAwMGEyICBHTElCQ18yLjEgICB0bXBmaWxlNjQKKzAwMDM3YjMwICB3ICAgREYgLnRleHQJMDAwMDAwNjUgIEdMSUJDXzIuMSAgIG1ha2Vjb250ZXh0CiswMDAyN2Y1MCBnICAgIERGIC50ZXh0CTAwMDAwMDE4ICBHTElCQ18yLjAgICBfX2lzbmFuZgorMDAwMDAwMDAgZyAgICBETyAqQUJTKgkwMDAwMDAwMCAgR0xJQkNfMi4zLjMgR0xJQkNfMi4zLjMKKzAwMDZkNWMwIGcgICAgREYgLnRleHQJMDAwMDAwMzMgIEdMSUJDXzIuMS4xIF9fc3RyY2F0X2cKKzAwMTA0ZDc0IGcgICAgRE8gLnJvZGF0YQkwMDAwMDAwNCAoR0xJQkNfMi4wKSAgc3lzX25lcnIKKzAwMTE1NjgwIGcgICAgRE8gLmRhdGEucmVsLnJvCTAwMDAwMTAwIChHTElCQ18yLjEpICBfc3lzX3NpZ2xpc3QKKzAwMDU4MjkwIGcgICAgREYgLnRleHQJMDAwMDAwM2QgIEdMSUJDXzIuMiAgIF9JT193bWFya2VyX2RlbHRhCiswMDBiYTkwMCBnICAgIERGIC50ZXh0CTAwMDAwMDM2ICBHTElCQ18yLjMuMiBlcG9sbF9jcmVhdGUKKzAwMGYzZjEwIGcgICAgREYgLnRleHQJMDAwMDAwNjMgKEdMSUJDXzIuMCkgIGdldGhvc3RieW5hbWUyX3IKKzAwMGYwOWEwIGcgICAgREYgLnRleHQJMDAwMDAwOTUgKEdMSUJDXzIuMCkgIGZvcGVuCiswMDA2OWFjMCBnICAgIERGIC50ZXh0CTAwMDAwMDlkICBHTElCQ18yLjAgICBiY29weQorMDAwNzAwYzAgIHcgICBERiAudGV4dAkwMDAwMDA3NSAgR0xJQkNfMi4xICAgd2NzbmxlbgorMDAwYzk3MzAgIHcgICBERiAudGV4dAkwMDAwMDEwZSAoR0xJQkNfMi4wKSAgcmVzX2luaXQKKzAwMDViMjIwIGcgICAgREYgLnRleHQJMDAwMDAwY2MgIEdMSUJDXzIuMCAgIF9JT19nZXRjCiswMDA2MmE5MCBnICAgIERGIC50ZXh0CTAwMDAwMDBmICBHTElCQ18yLjAgICBfX2xpYmNfbWFsbG9wdAorMDAwYjU1ZjAgZyAgICBERiAudGV4dAkwMDAwMDAxYSAgR0xJQkNfMi4wICAgcmVtcXVlCiswMDA2OTU1MCBnICAgIERGIC50ZXh0CTAwMDAwMTBjICBHTElCQ18yLjAgICBzdHJ0b2sKKzAwMGJkZWQwICB3ICAgREYgLnRleHQJMDAwMDAwNWQgIEdMSUJDXzIuMCAgIHRvd2N0cmFucworMDAwNTY3MTAgZyAgICBERiAudGV4dAkwMDAwMDBkNCAgR0xJQkNfMi4wICAgX0lPX3VuZ2V0YworMDAwMjkyNDAgZyAgICBERiAudGV4dAkwMDAwMDAyNyAgR0xJQkNfMi4wICAgc2lnZmlsbHNldAorMDAwZTZmMzAgZyAgICBERiAudGV4dAkwMDAwMDA2OSAgR0xJQkNfMi4xICAgeGRyX3VpbnQxNl90CiswMDA2OTk2MCBnICAgIERGIC50ZXh0CTAwMDAwMDFlICBHTElCQ18yLjAgICBtZW1jbXAKKzAwMGE0M2UwIGcgICAgREYgLnRleHQJMDAwMDAwM2MgIEdMSUJDXzIuMCAgIF9fc2NoZWRfc2V0c2NoZWR1bGVyCiswMDBiYjAyMCBnICAgIERGIC50ZXh0CTAwMDAwMDM5ICBHTElCQ18yLjAgICBsaXN0ZW4KKzAwMGRkMzgwIGcgICAgREYgLnRleHQJMDAwMDAwNDIgIEdMSUJDXzIuMCAgIHN2Y2Vycl9ub3Byb2cKKzAwMGY0ZjIwIGcgICAgREYgX19saWJjX2ZyZWVyZXNfZm4JMDAwMDAwODcgIEdMSUJDXzIuMSAgIF9fbGliY19mcmVlcmVzCiswMDA3YWVlMCBnICAgIERGIC50ZXh0CTAwMDAwMDMwICBHTElCQ18yLjAgICBfX2dtdGltZV9yCiswMDBhNDRkMCAgdyAgIERGIC50ZXh0CTAwMDAwMDM2ICBHTElCQ18yLjAgICBzY2hlZF9nZXRfcHJpb3JpdHlfbWluCiswMDBiMTY3MCBnICAgIERGIC50ZXh0CTAwMDAwMWQ1ICBHTElCQ18yLjIgICBwb3NpeF9mYWxsb2NhdGUKKzAwMGRmMGIwIGcgICAgREYgLnRleHQJMDAwMDAzNDQgIEdMSUJDXzIuMCAgIHN2Y3VkcF9idWZjcmVhdGUKKzAwMGUwMTAwIGcgICAgREYgLnRleHQJMDAwMDAwY2QgIEdMSUJDXzIuMCAgIHhkcl9vcGFxdWUKKzAwMGE2ZGEwIGcgICAgREYgLnRleHQJMDAwMDAwNTkgIEdMSUJDXzIuMSAgIHdvcmRmcmVlCiswMDA2MmIzMCAgdyAgIERGIC50ZXh0CTAwMDAwMDkyICBHTElCQ18yLjAgICBtYWxsb2NfdHJpbQorMDAwZDc4NDAgZyAgICBERiAudGV4dAkwMDAwMDE1MiAgR0xJQkNfMi4zLjQgZ2V0aXB2NHNvdXJjZWZpbHRlcgorMDAxMTc0ODAgZyAgICBETyAuZGF0YQkwMDAwMDAwNCAoR0xJQkNfMi4wKSAgX19jdHlwZV90b2xvd2VyCiswMDBhYjQzMCBnICAgIERGIC50ZXh0CTAwMDAwMDM4ICBHTElCQ18yLjIgICBwb3NpeF9zcGF3bmF0dHJfZ2V0c2lnZGVmYXVsdAorMDAwMzdiYTAgIHcgICBERiAudGV4dAkwMDAwMDBhNiAgR0xJQkNfMi4xICAgc3dhcGNvbnRleHQKKzAwMDg5OTgwICB3ICAgREYgLnRleHQJMDAwMDAwNTkgIEdMSUJDXzIuMCAgIGZvcmsKKzAwMDI5OWYwIGcgICAgREYgLnRleHQJMDAwMDAxNmQgIEdMSUJDXzIuMSAgIHNpZ3NldAorMDAwNTIzMDAgZyAgICBERiAudGV4dAkwMDAwMDAzNCAgR0xJQkNfMi4wICAgc3NjYW5mCiswMDA3MTNkMCAgdyAgIERGIC50ZXh0CTAwMDAwMDNlICBHTElCQ18yLjEgICBfX3djc3RvbGxfbAorMDAwMjI3NDAgZyAgICBERiAudGV4dAkwMDAwMDAxNyAgR0xJQkNfMi4xICAgX19pc2xvd2VyX2wKKzAwMDZkOGMwIGcgICAgREYgLnRleHQJMDAwMDAwNDcgIEdMSUJDXzIuMS4xIF9fc3Ryc3BuX2cKKzAwMGM2MGEwIGcgICAgREYgLnRleHQJMDAwMDAwMmEgIEdMSUJDXzIuMy4yIHB0aHJlYWRfY29uZF9zaWduYWwKKzAwMDg5YmIwIGcgICAgREYgLnRleHQJMDAwMDAwMzQgIEdMSUJDXzIuMCAgIGV4ZWN2CiswMDBiNGRhMCAgdyAgIERGIC50ZXh0CTAwMDAwMDg0ICBHTElCQ18yLjAgICBzZXRtbnRlbnQKKzAwMGE0NDYwIGcgICAgREYgLnRleHQJMDAwMDAwMmUgIEdMSUJDXzIuMCAgIF9fc2NoZWRfeWllbGQKKzAwMDIyMGQwIGcgICAgREYgLnRleHQJMDAwMDAwN2QgIEdMSUJDXzIuMCAgIGlzYWxwaGEKKzAwMGFjMzUwIGcgICAgREYgLnRleHQJMDAwMDAwOTQgIEdMSUJDXzIuMSAgIHN0YXR2ZnMKKzAwMDg2ZTgwIGcgICAgREYgLnRleHQJMDAwMDAwYTIgIEdMSUJDXzIuMCAgIGdldGdyZW50CiswMDA2OWUxMCBnICAgIERGIC50ZXh0CTAwMDAwMDQxICBHTElCQ18yLjEgICBfX3N0cmNhc2VjbXBfbAorMDAwNmU0ZTAgZyAgICBERiAudGV4dAkwMDAwMDAzYyAgR0xJQkNfMi4wICAgd2NzY3NwbgorMDAwMDAwMDAgZyAgICBETyAqQUJTKgkwMDAwMDAwMCAgR0xJQkNfMi4yLjMgR0xJQkNfMi4yLjMKKzAwMDcwMjkwIGcgICAgREYgLnRleHQJMDAwMDAwNTggIEdMSUJDXzIuMCAgIHdjc3RvdWwKKzAwMGYxYTIwIGcgICAgREYgLnRleHQJMDAwMDAwNmQgKEdMSUJDXzIuMCkgIF9JT19maWxlX3dyaXRlCiswMDA1ZmYxMCBnICAgIERGIC50ZXh0CTAwMDAwMDEzICBHTElCQ18yLjAgICBfSU9fbWFya2VyX2RpZmZlcmVuY2UKKzAwMDY4YjgwIGcgICAgREYgLnRleHQJMDAwMDAwYjggIEdMSUJDXzIuMCAgIHN0cm5jYXQKKzAwMDhhNzkwICB3ICAgREYgLnRleHQJMDAwMDAwMzUgIEdMSUJDXzIuMCAgIHNldHJlc3VpZAorMDAwYjJlZjAgZyAgICBERiAudGV4dAkwMDAwMDAzMSAgR0xJQkNfMi4wICAgdnRpbWVzCiswMDA4YTJiMCBnICAgIERGIC50ZXh0CTAwMDAwMTdhICBHTElCQ18yLjAgICBleGVjbHAKKzAwMGFiMzQwIGcgICAgREYgLnRleHQJMDAwMDAwOTcgIEdMSUJDXzIuMiAgIHBvc2l4X3NwYXduX2ZpbGVfYWN0aW9uc19hZGRkdXAyCiswMDA1NzMzMCBnICAgIERGIC50ZXh0CTAwMDAwMDdiICBHTElCQ18yLjIgICBmcHV0d3NfdW5sb2NrZWQKKzAwMGJiNzgwICB3ICAgREYgLnRleHQJMDAwMDAwYjUgIEdMSUJDXzIuMCAgIG1zZ3NuZAorMDAwMjhhNDAgIHcgICBERiAudGV4dAkwMDAwMDA1MyAgR0xJQkNfMi4wICAgc2lnYWN0aW9uCiswMDAyYmY4MCBnICAgIERGIC50ZXh0CTAwMDAwMDJkICBHTElCQ18yLjAgICBsY29uZzQ4CiswMDBlNTdmMCBnICAgIERGIC50ZXh0CTAwMDAwMmRhICBHTElCQ18yLjEgICBjbG50dW5peF9jcmVhdGUKKzAwMDZlNDQwIGcgICAgREYgLnRleHQJMDAwMDAwMjEgIEdMSUJDXzIuMCAgIHdjc2NocgorMDAwNTgzYTAgZyAgICBERiAudGV4dAkwMDAwMDA1OCAgR0xJQkNfMi4yICAgX0lPX2ZyZWVfd2JhY2t1cF9hcmVhCiswMDBkYzg1MCBnICAgIERGIC50ZXh0CTAwMDAwMDlkICBHTElCQ18yLjAgICB4ZHJfY2FsbGhkcgorMDAwYjM5MzAgZyAgICBERiAudGV4dAkwMDAwMDAzYSAgR0xJQkNfMi4wICAgc2V0ZG9tYWlubmFtZQorMDAwOWY0OTAgIHcgICBERiAudGV4dAkwMDAwMDEzZiAgR0xJQkNfMi4wICAgcmVfY29tcAorMDAwYjRkNzAgIHcgICBERiAudGV4dAkwMDAwMDAyYSAgR0xJQkNfMi4wICAgZW5kbW50ZW50CiswMDAyYmYxMCBnICAgIERGIC50ZXh0CTAwMDAwMDJkICBHTElCQ18yLjAgICBzcmFuZDQ4CiswMDBjOTczMCBnICAgIERGIC50ZXh0CTAwMDAwMTBlICBHTElCQ18yLjIgICBfX3Jlc19pbml0CiswMDBkYjU0MCBnICAgIERGIC50ZXh0CTAwMDAwMGU3ICBHTElCQ18yLjAgICBnZXRycGNwb3J0CiswMDAyODhhMCBnICAgIERGIC50ZXh0CTAwMDAwMDQyICBHTElCQ18yLjAgICBraWxscGcKKzAwMGIxNTEwIGcgICAgREYgLnRleHQJMDAwMDAwYTIgIEdMSUJDXzIuMSAgIF9fcG9sbAorMDAwYjM3NjAgZyAgICBERiAudGV4dAkwMDAwMDAyNiAgR0xJQkNfMi4wICAgX19nZXRwYWdlc2l6ZQorMDAwY2YzNDAgZyAgICBERiAudGV4dAkwMDAwMDE2NSAgR0xJQkNfMi4xLjIgZ2V0cHJvdG9ieW51bWJlcl9yCiswMDA1NGNhMCAgdyAgIERGIC50ZXh0CTAwMDAwMTEzICBHTElCQ18yLjAgICBmcmVhZAorMDAxMTk2MmMgZyAgICBETyAuYnNzCTAwMDAwMDA0ICBHTElCQ19QUklWQVRFIF9fbGlicnRfbXVsdGlwbGVfdGhyZWFkcworMDAwY2NmYjAgZyAgICBERiAudGV4dAkwMDAwMDE5NSAgR0xJQkNfMi4zLjQgX19nZXRzX2NoaworMDAwNmYxNjAgZyAgICBERiAudGV4dAkwMDAwMDI0YiAgR0xJQkNfMi4wICAgX19tYnJ0b3djCiswMDA4YTUzMCAgdyAgIERGIC50ZXh0CTAwMDAwMDk3ICBHTElCQ18yLjAgICBncm91cF9tZW1iZXIKKzAwMGNkYTkwIGcgICAgREYgLnRleHQJMDAwMDAyZDIgIEdMSUJDXzIuMS4yIGdldGhvc3RieWFkZHJfcgorMDAwYWJjMTAgZyAgICBERiAudGV4dAkwMDAwMDAzYiAgR0xJQkNfMi4yICAgcG9zaXhfc3Bhd25hdHRyX3NldHNpZ21hc2sKKzAwMGI0MWYwIGcgICAgREYgLnRleHQJMDAwMDAwNTMgIEdMSUJDXzIuMCAgIHVhbGFybQorMDAwY2NkYTAgZyAgICBERiAudGV4dAkwMDAwMDExMCAgR0xJQkNfMi4zLjQgX192cHJpbnRmX2NoaworMDAwNjAxODAgZyAgICBERiAudGV4dAkwMDAwMDA1MiAgR0xJQkNfMi4wICAgX0lPX2ZyZWVfYmFja3VwX2FyZWEKKzAwMGFkYmQwICB3ICAgREYgLnRleHQJMDAwMDAyYjMgIEdMSUJDXzIuMCAgIHR0eW5hbWVfcgorMDAwMjkzNDAgIHcgICBERiAudGV4dAkwMDAwMDAxNSAgR0xJQkNfMi4wICAgc2lncmV0dXJuCiswMDBjZDYyMCBnICAgIERGIC50ZXh0CTAwMDAwMmM2ICBHTElCQ18yLjAgICBpbmV0X25ldHdvcmsKKzAwMGU5NWYwIGcgICAgREYgLnRleHQJMDAwMDAwNDggIEdMSUJDXzIuMSAgIGdldHBtc2cKKzAwMGJjMzUwICB3ICAgREYgLnRleHQJMDAwMDAxYzEgIEdMSUJDXzIuMCAgIG1vbnN0YXJ0dXAKKzAwMDAwMDAwIGcgICAgRE8gKkFCUyoJMDAwMDAwMDAgIEdMSUJDXzIuMiAgIEdMSUJDXzIuMgorMDAwNTdjOTAgZyAgICBERiAudGV4dAkwMDAwMDAzNCAgR0xJQkNfMi4yICAgZndzY2FuZgorMDAwYjMwOTAgIHcgICBERiAudGV4dAkwMDAwMDA3MyAgR0xJQkNfMi4wICAgc2JyaworMDAwOGE4ZjAgZyAgICBERiAudGV4dAkwMDAwMDE0OSAgR0xJQkNfMi4wICAgZ2V0bG9naW5fcgorMDAxMDNjNjAgZyAgICBETyAucm9kYXRhCTAwMDAwMDI0ICBHTElCQ19QUklWQVRFIF9pdG9hX2xvd2VyX2RpZ2l0cworMDAwNjg3MjAgIHcgICBERiAudGV4dAkwMDAwMDA1NyAgR0xJQkNfMi4wICAgc3RyZHVwCiswMDAyODA1MCAgdyAgIERGIC50ZXh0CTAwMDAwMDBkICBHTElCQ18yLjAgICBzY2FsYm5mCiswMDA2MGZiMCBnICAgIERGIC50ZXh0CTAwMDAwMTM4ICBHTElCQ18yLjAgICBfX3VuZGVyZmxvdworMDAwYzY5NTAgIHcgICBERiAudGV4dAkwMDAwMDFhOSAgR0xJQkNfMi4wICAgaW5ldF9hdG9uCiswMDAyMjc2MCBnICAgIERGIC50ZXh0CTAwMDAwMDE3ICBHTElCQ18yLjEgICBfX2lzZ3JhcGhfbAorMDAwYTQ1NTAgZyAgICBERiAudGV4dAkwMDAwMDA3YSAgR0xJQkNfMi4zLjQgc2NoZWRfZ2V0YWZmaW5pdHkKKzAwMGI0NmEwIGcgICAgREYgLnRleHQJMDAwMDAwMmIgIEdMSUJDXzIuMCAgIGdldGZzZW50CiswMDA3ZTBiMCBnICAgIERGIC50ZXh0CTAwMDAwMDUyICBHTElCQ18yLjEgICBnZXRkYXRlCiswMDA2ZTFhMCBnICAgIERGIC50ZXh0CTAwMDAwMDY5ICBHTElCQ18yLjEuMSBfX3N0cm5jcHlfYnk0CiswMDBiYTI0MCBnICAgIERGIC50ZXh0CTAwMDAwMDM2ICBHTElCQ18yLjAgICBpb3BsCiswMDBkMTIzMCBnICAgIERGIC50ZXh0CTAwMDAwMDZhICBHTElCQ18yLjAgICBldGhlcl9udG9hX3IKKzAwMDY3ZmEwIGcgICAgREYgLnRleHQJMDAwMDAwMmMgIEdMSUJDXzIuMCAgIF9vYnN0YWNrX2FsbG9jYXRlZF9wCiswMDBhYmZiMCBnICAgIERGIC50ZXh0CTAwMDAwMDMyICBHTElCQ18yLjIgICBfX3hzdGF0NjQKKzAwMDJjNjEwIGcgICAgREYgLnRleHQJMDAwMDAwNTggIEdMSUJDXzIuMCAgIHN0cnRvdWxsCiswMDBjZTc1MCBnICAgIERGIC50ZXh0CTAwMDAwMGE5ICBHTElCQ18yLjAgICBlbmRob3N0ZW50CiswMDAwMDAwMCAgdyAgIEQgICpVTkQqCTAwMDAwMDAwICAgICAgICAgICAgICBfcHRocmVhZF9jbGVhbnVwX3B1c2hfZGVmZXIKKzAwMDY4MmYwICB3ICAgREYgLnRleHQJMDAwMDAxNjcgIEdMSUJDXzIuMCAgIGluZGV4CiswMDA5ZmY1MCAgdyAgIERGIC50ZXh0CTAwMDAwMTI1ICBHTElCQ18yLjAgICByZWdjb21wCiswMDAyYzExMCBnICAgIERGIC50ZXh0CTAwMDAwMDJlICBHTElCQ18yLjAgICBtcmFuZDQ4X3IKKzAwMDI5MTcwIGcgICAgREYgLnRleHQJMDAwMDAwMjggIEdMSUJDXzIuMCAgIF9fc2lnaXNtZW1iZXIKKzAwMGFkZjEwICB3ICAgREYgLnRleHQJMDAwMDAwM2EgIEdMSUJDXzIuMCAgIHN5bWxpbmsKKzAwMDdiN2YwICB3ICAgREYgLnRleHQJMDAwMDAwM2EgIEdMSUJDXzIuMCAgIGdldHRpbWVvZmRheQorMDAwYjYzMTAgZyAgICBERiAudGV4dAkwMDAwMDBjMiAgR0xJQkNfMi4wICAgdHR5c2xvdAorMDAwMjhiNzAgZyAgICBERiAudGV4dAkwMDAwMDBhMiAgR0xJQkNfMi4xLjMgX19zaWdzdXNwZW5kCiswMDAzN2FjMCAgdyAgIERGIC50ZXh0CTAwMDAwMDY4ICBHTElCQ18yLjAgICBzZXRjb250ZXh0CiswMDBmNDA0MCBnICAgIERGIC50ZXh0CTAwMDAwMDYzIChHTElCQ18yLjApICBnZXRuZXRieWFkZHJfcgorMDAwZDQ5NTAgZyAgICBERiAudGV4dAkwMDAwMDBhMiAgR0xJQkNfMi4wICAgZ2V0YWxpYXNlbnQKKzAwMGY0MzkwIGcgICAgREYgLnRleHQJMDAwMDAwMzcgKEdMSUJDXzIuMCkgIGdldHJwY2VudF9yCiswMDAyMTcxMCAgdyAgIERGIC50ZXh0CTAwMDAwMTBlICBHTElCQ18yLjMgICB1c2Vsb2NhbGUKKzAwMDdhYzcwICB3ICAgREYgLnRleHQJMDAwMDAwZmEgIEdMSUJDXzIuMCAgIGFzY3RpbWVfcgorMDAwNmU1ZjAgZyAgICBERiAudGV4dAkwMDAwMDBiOCAgR0xJQkNfMi4wICAgd2NzbmNhdAorMDAwYWQwYjAgZyAgICBERiAudGV4dAkwMDAwMDAzNiAgR0xJQkNfMi4wICAgX19waXBlCiswMDBhNDFkMCBnICAgIERGIC50ZXh0CTAwMDAwMDQzICBHTElCQ18yLjAgICBnZXRvcHQKKzAwMGIzNjQwICB3ICAgREYgLnRleHQJMDAwMDAwMzIgIEdMSUJDXzIuMCAgIHNldHJldWlkCiswMDA2ZDM4MCBnICAgIERGIC50ZXh0CTAwMDAwMDJmICBHTElCQ18yLjEuMSBfX21lbXNldF9jY25fYnkyCiswMDA1ODRmMCBnICAgIERGIC50ZXh0CTAwMDAwMGZkICBHTElCQ18yLjIgICBfSU9fd2RlZmF1bHRfeHNwdXRuCiswMDA3YWYxMCBnICAgIERGIC50ZXh0CTAwMDAwMDM2ICBHTElCQ18yLjAgICBsb2NhbHRpbWUKKzAwMDVmYTUwIGcgICAgREYgLnRleHQJMDAwMDAwMzMgIEdMSUJDXzIuMCAgIF9JT19kZWZhdWx0X3VmbG93CiswMDA1NzhiMCBnICAgIERGIC50ZXh0CTAwMDAwMGVjICBHTElCQ18yLjIgICBwdXR3Y2hhcgorMDAwNjlhMTAgZyAgICBERiAudGV4dAkwMDAwMDA1NiAgR0xJQkNfMi4wICAgbWVtc2V0CiswMDBjYzQ0MCBnICAgIERGIC50ZXh0CTAwMDAwMDA1ICBHTElCQ18yLjIgICBfX2N5Z19wcm9maWxlX2Z1bmNfZW50ZXIKKzAwMDM3YTEwIGcgICAgREYgLnRleHQJMDAwMDAwMjcgIEdMSUJDXzIuMSAgIHdjc3RvdW1heAorMDAwZTQxYzAgZyAgICBERiAudGV4dAkwMDAwMDA5MSAgR0xJQkNfMi4xICAgbmV0bmFtZTJob3N0CiswMDBiOGU4MCBnICAgIERGIC50ZXh0CTAwMDAwMDIyICBHTElCQ18yLjAgICBlcnIKKzAwMGYzZDUwIGcgICAgREYgLnRleHQJMDAwMDAwNWMgKEdMSUJDXzIuMCkgIHNlbWN0bAorMDAwMTVlODAgZyAgICBERiAudGV4dAkwMDAwMDAzOCAgR0xJQkNfMi4xICAgaWNvbnZfY2xvc2UKKzAwMDJjYWYwICB3ICAgREYgLnRleHQJMDAwMDAwMmUgIEdMSUJDXzIuMSAgIF9fc3RydG9sX2wKKzAwMGYxZTgwIGcgICAgREYgLnRleHQJMDAwMDAwOWEgKEdMSUJDXzIuMCkgIF9JT19maWxlX3N5bmMKKzAwMGI3MzQwIGcgICAgREYgLnRleHQJMDAwMDAwYzMgIEdMSUJDXzIuMCAgIGZjdnQKKzAwMGIyYTAwIGcgICAgREYgLnRleHQJMDAwMDAwMzAgIEdMSUJDXzIuMCAgIGNmbWFrZXJhdworMDAwYWVmMDAgZyAgICBERiAudGV4dAkwMDAwMDAyNCAgR0xJQkNfMi4wICAgZnR3CiswMDAyOTM2MCBnICAgIERGIC50ZXh0CTAwMDAwMDIyICBHTElCQ18yLjAgICBzaWdnZXRtYXNrCiswMDBhY2UwMCBnICAgIERGIC50ZXh0CTAwMDAwMGY2ICBHTElCQ18yLjAgICBsb2NrZgorMDAwYzYwNjAgZyAgICBERiAudGV4dAkwMDAwMDAzMyAgR0xJQkNfMi4zLjIgcHRocmVhZF9jb25kX2luaXQKKzAwMGM2NDgwIGcgICAgREYgLnRleHQJMDAwMDAwMGIgIEdMSUJDX1BSSVZBVEUgX19saWJydF9kaXNhYmxlX2FzeW5jY2FuY2VsCiswMDA3NjNkMCAgdyAgIERGIC50ZXh0CTAwMDAwMDM3ICBHTElCQ18yLjMgICB3Y3N0b2xkX2wKKzAwMDZlOGIwIGcgICAgREYgLnRleHQJMDAwMDAwNGQgIEdMSUJDXzIuMCAgIHdjc3NwbgorMDAwZDFlMzAgZyAgICBERiAudGV4dAkwMDAwMDBjZiAgR0xJQkNfMi4yICAgaXJ1c2Vyb2tfYWYKKzAwMDhhNmEwIGcgICAgREYgLnRleHQJMDAwMDAwMzYgIEdMSUJDXzIuMCAgIGdldHNpZAorMDAwNTRmMDAgIHcgICBERiAudGV4dAkwMDAwMDFkOCAgR0xJQkNfMi4wICAgZnRlbGwKKzAwMDIyN2EwIGcgICAgREYgLnRleHQJMDAwMDAwMTUgIEdMSUJDXzIuMSAgIF9faXNwdW5jdF9sCiswMDBjYzRhMCBnICAgIERGIC50ZXh0CTAwMDAwMDllICBHTElCQ18yLjMuNCBfX21lbW1vdmVfY2hrCiswMDAyYjhiMCAgdyAgIERGIC50ZXh0CTAwMDAwMDViICBHTElCQ18yLjAgICBzcmFuZAorMDAwY2M5NzAgZyAgICBERiAudGV4dAkwMDAwMDBiZSAgR0xJQkNfMi4zLjQgX192c3ByaW50Zl9jaGsKKzAwMGIzZjUwIGcgICAgREYgLnRleHQJMDAwMDAwY2EgIEdMSUJDXzIuMCAgIHNldGhvc3RpZAorMDAwZGQxMzAgZyAgICBERiAudGV4dAkwMDAwMDAzOSAgR0xJQkNfMi4yLjMgX19ycGNfdGhyZWFkX3N2Y19wb2xsZmQKKzAwMGYzYzYwIGcgICAgREYgLnRleHQJMDAwMDAwOTkgKEdMSUJDXzIuMSkgIGdldHJsaW1pdDY0CiswMDBiZTYxMCBnICAgIERGIC50ZXh0CTAwMDAwMDhjICBHTElCQ18yLjEgICBfX3djdHlwZV9sCiswMDA2OTc2MCBnICAgIERGIC50ZXh0CTAwMDAwMDUyICBHTElCQ18yLjAgICBzdHJ4ZnJtCiswMDBiZTBhMCBnICAgIERGIC50ZXh0CTAwMDAwMDdkICBHTElCQ18yLjEgICBfX2lzd2FscGhhX2wKKzAwMDM1Y2UwIGcgICAgREYgLnRleHQJMDAwMDAwNjcgIEdMSUJDXzIuMCAgIHN0cmZtb24KKzAwMGYzYjEwIGcgICAgREYgLnRleHQJMDAwMDAwMzMgKEdMSUJDXzIuMy4zKSBzY2hlZF9zZXRhZmZpbml0eQorMDAwYjk4YzAgIHcgICBERiAudGV4dAkwMDAwMDAxYSAgR0xJQkNfMi4wICAgZ2V0X3BoeXNfcGFnZXMKKzAwMDQ0NWYwICB3ICAgREYgLnRleHQJMDAwMDNjMWUgIEdMSUJDXzIuMiAgIHZmd3ByaW50ZgorMDAwNmY2NzAgIHcgICBERiAudGV4dAkwMDAwMDA2NyAgR0xJQkNfMi4wICAgbWJzcnRvd2NzCiswMDBjY2EzMCBnICAgIERGIC50ZXh0CTAwMDAwMDM5ICBHTElCQ18yLjMuNCBfX3NucHJpbnRmX2NoaworMDAxMTU2ODAgZyAgICBETyAuZGF0YS5yZWwucm8JMDAwMDAwODAgKEdMSUJDXzIuMCkgIHN5c19zaWdsaXN0CiswMDBiZTFhMCAgdyAgIERGIC50ZXh0CTAwMDAwMDdkICBHTElCQ18yLjMgICBpc3djbnRybF9sCiswMDBmMmI2MCBnICAgIERGIC50ZXh0CTAwMDAwMDVmIChHTElCQ18yLjApICBnZXRwd25hbV9yCiswMDBiZGM3MCAgdyAgIERGIC50ZXh0CTAwMDAwMGZkICBHTElCQ18yLjAgICB3Y3R5cGUKKzAwMDVhYzMwIGcgICAgREYgLnRleHQJMDAwMDAwNWMgIEdMSUJDXzIuMCAgIGNsZWFyZXJyCiswMDBiOWZlMCBnICAgIERGIC50ZXh0CTAwMDAwMDQyICBHTElCQ18yLjMgICBsZ2V0eGF0dHIKKzAwMGM2MDAwIGcgICAgREYgLnRleHQJMDAwMDAwMmEgIEdMSUJDXzIuMy4yIHB0aHJlYWRfY29uZF9icm9hZGNhc3QKKzAwMGFiMmEwIGcgICAgREYgLnRleHQJMDAwMDAwOTQgIEdMSUJDXzIuMiAgIHBvc2l4X3NwYXduX2ZpbGVfYWN0aW9uc19hZGRvcGVuCiswMDAyYjgzMCAgdyAgIERGIC50ZXh0CTAwMDAwMDdiICBHTElCQ18yLjAgICBpbml0c3RhdGUKKzAwMDYyYTkwICB3ICAgREYgLnRleHQJMDAwMDAwMGYgIEdMSUJDXzIuMCAgIG1hbGxvcHQKKzAwMGNjZWIwIGcgICAgREYgLnRleHQJMDAwMDAwZmMgIEdMSUJDXzIuMy40IF9fdmZwcmludGZfY2hrCiswMDBlYjczMCBnICAgIERGIC50ZXh0CTAwMDAwMGQ3ICBHTElCQ18yLjEgICBncmFudHB0CiswMDBhYzhjMCAgdyAgIERGIC50ZXh0CTAwMDAwMGQ0ICBHTElCQ18yLjEgICBvcGVuNjQKKzAwMDViMmYwIGcgICAgREYgLnRleHQJMDAwMDAwZDkgIEdMSUJDXzIuMCAgIGdldGNoYXIKKzAwMGFiNGIwIGcgICAgREYgLnRleHQJMDAwMDAwMTIgIEdMSUJDXzIuMiAgIHBvc2l4X3NwYXduYXR0cl9nZXRmbGFncworMDAwZTAzMDAgZyAgICBERiAudGV4dAkwMDAwMDE3YSAgR0xJQkNfMi4wICAgeGRyX3N0cmluZworMDAwY2QzYTAgIHcgICBERiAudGV4dAkwMDAwMDAwZSAgR0xJQkNfMi4wICAgbnRvaHMKKzAwMDg3ZTQwIGcgICAgREYgLnRleHQJMDAwMDAxOTUgIEdMSUJDXzIuMCAgIGZnZXRwd2VudAorMDAwY2Q0YzAgZyAgICBERiAudGV4dAkwMDAwMDEwNSAgR0xJQkNfMi4wICAgaW5ldF9udG9hCiswMDA4YTQ0MCAgdyAgIERGIC50ZXh0CTAwMDAwMDA4ICBHTElCQ18yLjAgICBnZXRwcGlkCiswMDBiMjcwMCAgdyAgIERGIC50ZXh0CTAwMDAwMGJlICBHTElCQ18yLjAgICB0Y2dldGF0dHIKKzAwMGU0NTEwIGcgICAgREYgLnRleHQJMDAwMDAwZmMgIEdMSUJDXzIuMSAgIHVzZXIybmV0bmFtZQorMDAwY2ZkMDAgZyAgICBERiAudGV4dAkwMDAwMDEzNSAgR0xJQkNfMi4wICAgZ2V0c2VydmJ5cG9ydAorMDAwYjQzMTAgZyAgICBERiAudGV4dAkwMDAwMDA3YSAgR0xJQkNfMi4wICAgcHRyYWNlCiswMDBjYTRiMCBnICAgIERGIC50ZXh0CTAwMDAwMGFlICBHTElCQ18yLjAgICBfX25zc19jb25maWd1cmVfbG9va3VwCiswMDA3YjdlMCBnICAgIERGIC50ZXh0CTAwMDAwMDEwICBHTElCQ18yLjAgICB0aW1lCiswMDBmM2MyMCBnICAgIERGIC50ZXh0CTAwMDAwMDNlIChHTElCQ18yLjIpICBwb3NpeF9mYWxsb2NhdGU2NAorMDAwYjVjYjAgZyAgICBERiAudGV4dAkwMDAwMDA1MiAgR0xJQkNfMi4wICAgZW5kdXNlcnNoZWxsCiswMDA2ZDY5MCBnICAgIERGIC50ZXh0CTAwMDAwMDQyICBHTElCQ18yLjEuMSBfX3N0cm5jbXBfZworMDAwODU0YTAgIHcgICBERiAudGV4dAkwMDAwMDEzNCAgR0xJQkNfMi4wICAgb3BlbmRpcgorMDAwNTg4MTAgZyAgICBERiAudGV4dAkwMDAwMDBlNyAgR0xJQkNfMi4yICAgX193dW5kZXJmbG93CiswMDA2ZDJhMCBnICAgIERGIC50ZXh0CTAwMDAwMDMzICBHTElCQ18yLjEuMSBfX21lbWNweV9ieTQKKzAwMGNjNDUwIGcgICAgREYgLnRleHQJMDAwMDAwNTAgIEdMSUJDXzIuMy40IF9fbWVtY3B5X2NoaworMDAwY2VkZjAgZyAgICBERiAudGV4dAkwMDAwMDBkYSAgR0xJQkNfMi4xLjIgZ2V0bmV0ZW50X3IKKzAwMDYwZTcwIGcgICAgREYgLnRleHQJMDAwMDAxMzggIEdMSUJDXzIuMCAgIF9fdWZsb3cKKzAwMDhhNDkwICB3ICAgREYgLnRleHQJMDAwMDAwMzIgIEdMSUJDXzIuMCAgIGdldGdyb3VwcworMDAwZTE2OTAgZyAgICBERiAudGV4dAkwMDAwMDAzNSAgR0xJQkNfMi4wICAgeGRyc3RkaW9fY3JlYXRlCiswMDA2ZDg4MCBnICAgIERGIC50ZXh0CTAwMDAwMDM1ICBHTElCQ18yLjEuMSBfX3N0cnNwbl9jZworMDAwZjNlYTAgZyAgICBERiAudGV4dAkwMDAwMDA2YyAoR0xJQkNfMi4wKSAgZ2V0aG9zdGJ5YWRkcl9yCiswMDBlZWM3MCBnICAgIERGIC50ZXh0CTAwMDAwMDg3ICBHQ0NfMy4wICAgICBfX3JlZ2lzdGVyX2ZyYW1lX2luZm9fdGFibGVfYmFzZXMKKzAwMDM1NTUwIGcgICAgREYgLnRleHQJMDAwMDAwN2QgIEdMSUJDX1BSSVZBVEUgX19saWJjX3N5c3RlbQorMDAwZDIwMjAgZyAgICBERiAudGV4dAkwMDAwMDFjOSAgR0xJQkNfMi4yICAgcnJlc3Zwb3J0X2FmCiswMDAyMjJkMCBnICAgIERGIC50ZXh0CTAwMDAwMDdkICBHTElCQ18yLjAgICBpc2dyYXBoCiswMDA2ZTc3MCBnICAgIERGIC50ZXh0CTAwMDAwMGFiICBHTElCQ18yLjAgICB3Y3NuY3B5CiswMDAyMWJiMCBnICAgIERGIC50ZXh0CTAwMDAwMTYyICBHTElCQ18yLjAgICBfX2Fzc2VydF9mYWlsCiswMDA1MjMwMCBnICAgIERGIC50ZXh0CTAwMDAwMDM0ICBHTElCQ18yLjAgICBfSU9fc3NjYW5mCiswMDA2ZDc2MCBnICAgIERGIC50ZXh0CTAwMDAwMDIyICBHTElCQ18yLjEuMSBfX3N0cmNocm51bF9nCiswMDBiMTUxMCAgdyAgIERGIC50ZXh0CTAwMDAwMGEyICBHTElCQ18yLjAgICBwb2xsCiswMDAyOTY4MCAgdyAgIERGIC50ZXh0CTAwMDAwMDcyICBHTElCQ18yLjEgICBzaWd0aW1lZHdhaXQKKzAwMGJhN2MwIGcgICAgREYgLnRleHQJMDAwMDAwM2EgIEdMSUJDXzIuMCAgIGJkZmx1c2gKKzAwMGM2MGQwIGcgICAgREYgLnRleHQJMDAwMDAwMzMgKEdMSUJDXzIuMCkgIHB0aHJlYWRfY29uZF93YWl0CiswMDBkMDQ5MCBnICAgIERGIC50ZXh0CTAwMDAwMTI1ICBHTElCQ18yLjAgICBnZXRycGNieW51bWJlcgorMDAwYmI3MzAgZyAgICBERiAudGV4dAkwMDAwMDA0NyAgR0xJQkNfMi4wICAgZnRvaworMDAwZjJhYzAgZyAgICBERiAudGV4dAkwMDAwMDA1ZiAoR0xJQkNfMi4wKSAgZ2V0Z3JuYW1fcgorMDAwZjBjMTAgZyAgICBERiAudGV4dAkwMDAwMDE2YyAoR0xJQkNfMi4wKSAgX0lPX2ZjbG9zZQorMDAwYmRmMzAgZyAgICBERiAudGV4dAkwMDAwMDA3ZCAgR0xJQkNfMi4xICAgX19pc3d4ZGlnaXRfbAorMDAwYzYxMTAgZyAgICBERiAudGV4dAkwMDAwMDAzYSAoR0xJQkNfMi4wKSAgcHRocmVhZF9jb25kX3RpbWVkd2FpdAorMDAwODZkNTAgZyAgICBERiAudGV4dAkwMDAwMDBlZSAgR0xJQkNfMi4yLjQgZ2V0Z3JvdXBsaXN0CiswMDA1N2ZkMCBnICAgIERGIC50ZXh0CTAwMDAwMDJkICBHTElCQ18yLjIgICBfSU9fc3dpdGNoX3RvX3diYWNrdXBfYXJlYQorMDAwYjY3NDAgZyAgICBERiAudGV4dAkwMDAwMDAyNCAgR0xJQkNfMi4wICAgc3lzbG9nCiswMDAyMjA1MCBnICAgIERGIC50ZXh0CTAwMDAwMDdiICBHTElCQ18yLjAgICBpc2FsbnVtCiswMDA3ODRlMCAgdyAgIERGIC50ZXh0CTAwMDAwMDM3ICBHTElCQ18yLjEgICBfX3djc3RvZl9sCiswMDBlYmMyMCBnICAgIERGIC50ZXh0CTAwMDAwMDU1ICBHTElCQ18yLjEgICBwdHNuYW1lCiswMDAyODUwMCBnICAgIERGIC50ZXh0CTAwMDAwMDIzICBHTElCQ18yLjEgICBfX3NpZ25iaXRsCiswMDA2MDBlMCBnICAgIERGIC50ZXh0CTAwMDAwMDNiICBHTElCQ18yLjIgICBfSU9fbGlzdF9yZXNldGxvY2sKKzAwMDcwMTQwICB3ICAgREYgLnRleHQJMDAwMDAwMjQgIEdMSUJDXzIuMiAgIHdjc2Nocm51bAorMDAwODI5ZjAgIHcgICBERiAudGV4dAkwMDAwMjFiOCAgR0xJQkNfMi4zICAgd2NzZnRpbWVfbAorMDAwN2Q5NjAgIHcgICBERiAudGV4dAkwMDAwMDAzYSAgR0xJQkNfMi4wICAgZ2V0aXRpbWVyCiswMDBiN2ZhMCAgdyAgIERGIC50ZXh0CTAwMDAwMDI0ICBHTElCQ18yLjAgICBoZGVzdHJveQorMDAwNTI4NTAgZyAgICBERiAudGV4dAkwMDAwMDBhZiAgR0xJQkNfMi4wICAgdG1wbmFtCiswMDA1N2I1MCAgdyAgIERGIC50ZXh0CTAwMDAwMDM0ICBHTElCQ18yLjIgICBmd3ByaW50ZgorMDAwYWJmMjAgZyAgICBERiAudGV4dAkwMDAwMDA4MiAgR0xJQkNfMi4wICAgX194bWtub2QKKzAwMDIyMzUwIGcgICAgREYgLnRleHQJMDAwMDAwN2QgIEdMSUJDXzIuMCAgIGlzcHJpbnQKKzAwMGIzNmMwIGcgICAgREYgLnRleHQJMDAwMDAwNGQgIEdMSUJDXzIuMCAgIHNldGV1aWQKKzAwMDJiZTkwIGcgICAgREYgLnRleHQJMDAwMDAwMzQgIEdMSUJDXzIuMCAgIG1yYW5kNDgKKzAwMGRmY2EwIGcgICAgREYgLnRleHQJMDAwMDAwMmEgIEdMSUJDXzIuMCAgIHhkcl91X2ludAorMDAwZTBmNDAgZyAgICBERiAudGV4dAkwMDAwMDA1NiAgR0xJQkNfMi4wICAgeGRycmVjX3NraXByZWNvcmQKKzAwMDU2OGMwICB3ICAgREYgLnRleHQJMDAwMDAwOTMgIEdMSUJDXzIuMCAgIF9fdnNzY2FuZgorMDAwNWI1ZDAgIHcgICBERiAudGV4dAkwMDAwMDBlNyAgR0xJQkNfMi4wICAgcHV0YworMDAwNmM4MTAgZyAgICBERiAudGV4dAkwMDAwMGE4NSAgR0xJQkNfMi4xICAgX19zdHJ4ZnJtX2wKKzAwMGE0MmMwIGcgICAgREYgLnRleHQJMDAwMDAwNDggIEdMSUJDXzIuMCAgIGdldG9wdF9sb25nX29ubHkKKzAwMDZiNzUwICB3ICAgREYgLnRleHQJMDAwMDEwM2MgIEdMSUJDXzIuMyAgIHN0cmNvbGxfbAorMDAwYjU2ZTAgZyAgICBERiAudGV4dAkwMDAwMDAzYyAgR0xJQkNfMi4wICAgZW5kdHR5ZW50CiswMDBlNmNhMCBnICAgIERGIC50ZXh0CTAwMDAwMGQzICBHTElCQ18yLjMuNCB4ZHJfdV9xdWFkX3QKKzAwMGJlN2EwIGcgICAgREYgLnRleHQJMDAwMDAwNWQgIEdMSUJDXzIuMSAgIF9fdG93Y3RyYW5zX2wKKzAwMGRiZDQwIGcgICAgREYgLnRleHQJMDAwMDAwYjEgIEdMSUJDXzIuMCAgIHhkcl9wbWFwbGlzdAorMDAwYTQ1ZDAgZyAgICBERiAudGV4dAkwMDAwMDEzZiAgR0xJQkNfMi4zLjQgc2NoZWRfc2V0YWZmaW5pdHkKKzAwMDZiNDYwIGcgICAgREYgLnRleHQJMDAwMDAwODggIEdMSUJDXzIuMCAgIGVudnpfc3RyaXAKKzAwMGM1ZDIwIGcgICAgREYgLnRleHQJMDAwMDAwMzMgIEdMSUJDXzIuMCAgIHB0aHJlYWRfYXR0cl9nZXRkZXRhY2hzdGF0ZQorMDAwYzYwMzAgZyAgICBERiAudGV4dAkwMDAwMDAyYSAoR0xJQkNfMi4wKSAgcHRocmVhZF9jb25kX2Rlc3Ryb3kKKzAwMGJhM2MwICB3ICAgREYgLnRleHQJMDAwMDAwODcgIEdMSUJDXzIuMCAgIGxsc2VlaworMDAwNmRjYjAgZyAgICBERiAudGV4dAkwMDAwMDA0OCAgR0xJQkNfMi4xLjEgX19zdHJjc3BuX2MyCiswMDBhY2IyMCAgdyAgIERGIC50ZXh0CTAwMDAwMDNjICBHTElCQ18yLjAgICBfX2xzZWVrCiswMDEwMjM3NSBnICAgIERPIC5yb2RhdGEJMDAwMDAwMTIgIEdMSUJDXzIuMCAgIF9ubF9kZWZhdWx0X2Rpcm5hbWUKKzAwMGJhYjAwICB3ICAgREYgLnRleHQJMDAwMDAwNDggIEdMSUJDXzIuMCAgIG1vdW50CiswMDAyOGVhMCAgdyAgIERGIC50ZXh0CTAwMDAwMDFjICBHTElCQ18yLjIgICBfX3hwZ19zaWdwYXVzZQorMDAwZDA2YjAgZyAgICBERiAudGV4dAkwMDAwMDBhNiAgR0xJQkNfMi4wICAgZW5kcnBjZW50CiswMDBjNzFiMCBnICAgIERGIC50ZXh0CTAwMDAwMGM5ICBHTElCQ18yLjAgICBpbmV0X25zYXBfbnRvYQorMDAwMjdiZTAgIHcgICBERiAudGV4dAkwMDAwMDAxMSAgR0xJQkNfMi4wICAgZmluaXRlCiswMDBiMmZjMCBnICAgIERGIC50ZXh0CTAwMDAwMDdjICBHTElCQ18yLjAgICBuaWNlCiswMDA1NTVkMCBnICAgIERGIC50ZXh0CTAwMDAwMDQ1ICBHTElCQ18yLjAgICBfSU9fZ2V0bGluZQorMDAwYjRkYTAgZyAgICBERiAudGV4dAkwMDAwMDA4NCAgR0xJQkNfMi4yICAgX19zZXRtbnRlbnQKKzAwMDg3YzMwICB3ICAgREYgLnRleHQJMDAwMDAyMDggIEdMSUJDXzIuMCAgIGZnZXRncmVudF9yCiswMDBiNDI5MCBnICAgIERGIC50ZXh0CTAwMDAwMDMyICBHTElCQ18yLjAgICBndHR5CiswMDBkMjFmMCBnICAgIERGIC50ZXh0CTAwMDAwMDFjICBHTElCQ18yLjAgICBycmVzdnBvcnQKKzAwMGM2ODgwIGcgICAgREYgLnRleHQJMDAwMDAwZDAgIEdMSUJDXzIuMCAgIGhlcnJvcgorMDAwNWQxYzAgZyAgICBERiAudGV4dAkwMDAwMDA1YiAgR0xJQkNfMi4xICAgZnJlYWRfdW5sb2NrZWQKKzAwMDY4NDYwIGcgICAgREYgLnRleHQJMDAwMDAwNDMgIEdMSUJDXzIuMCAgIHN0cmNtcAorMDAwNTgwMDAgZyAgICBERiAudGV4dAkwMDAwMDAzNSAgR0xJQkNfMi4yICAgX0lPX3dkZWZhdWx0X3VmbG93CiswMDBiNzZmMCBnICAgIERGIC50ZXh0CTAwMDAwMjIwICBHTElCQ18yLjAgICBlY3Z0X3IKKzAwMTE3MzM0IGcgICAgRE8gLmRhdGEJMDAwMDAwMDQgIEdMSUJDXzIuMCAgIF9fY2hlY2tfcmhvc3RzX2ZpbGUKKzAwMTE1NjgwIGcgICAgRE8gLmRhdGEucmVsLnJvCTAwMDAwMDgwIChHTElCQ18yLjApICBfc3lzX3NpZ2xpc3QKKzAwMGJiM2EwICB3ICAgREYgLnRleHQJMDAwMDAwMzkgIEdMSUJDXzIuMCAgIHNodXRkb3duCiswMDBjNWExMCAgdyAgIERGIC50ZXh0CTAwMDAwMDM4ICBHTElCQ18yLjEgICBhcmdwX3VzYWdlCiswMDBjNDdjMCAgdyAgIERGIC50ZXh0CTAwMDAwMDFkICBHTElCQ18yLjEgICBhcmdwX2hlbHAKKzAwMGU0MjYwIGcgICAgREYgLnRleHQJMDAwMDAwZjggIEdMSUJDXzIuMSAgIG5ldG5hbWUydXNlcgorMDAwMTY5MTAgZyAgICBERiAudGV4dAkwMDAwMDAxNiAgR0xJQkNfUFJJVkFURSBfX2djb252X2dldF9hbGlhc19kYgorMDAwYzYyYjAgZyAgICBERiAudGV4dAkwMDAwMDAyYSAgR0xJQkNfMi4wICAgcHRocmVhZF9tdXRleF91bmxvY2sKKzAwMGQ5YjkwIGcgICAgREYgLnRleHQJMDAwMDAyYmEgIEdMSUJDXzIuMCAgIGNhbGxycGMKKzAwMGRjNzEwIGcgICAgREYgLnRleHQJMDAwMDAxMzUgIEdMSUJDXzIuMCAgIF9zZXRlcnJfcmVwbHkKKzAwMGRkMWIwIGcgICAgREYgLnRleHQJMDAwMDAwMzAgIEdMSUJDXzIuMi4zIF9fcnBjX3RocmVhZF9zdmNfZmRzZXQKKzAwMGRiOTUwIGcgICAgREYgLnRleHQJMDAwMDAxMTkgIEdMSUJDXzIuMCAgIHBtYXBfZ2V0bWFwcworMDAwMmJlMTAgZyAgICBERiAudGV4dAkwMDAwMDAzNCAgR0xJQkNfMi4wICAgbHJhbmQ0OAorMDAxMTdkODQgZyAgICBETyAuZGF0YQkwMDAwMDAwNCAgR0xJQkNfMi4wICAgb2JzdGFja19hbGxvY19mYWlsZWRfaGFuZGxlcgorMDAwYmU0MjAgIHcgICBERiAudGV4dAkwMDAwMDA3ZCAgR0xJQkNfMi4zICAgaXN3cHVuY3RfbAorMDAxMTU0ODAgZyAgICBETyAuZGF0YS5yZWwucm8JMDAwMDAxZjggIEdMSUJDXzIuMyAgIF9zeXNfZXJybGlzdAorMDAwYWQ3NzAgZyAgICBERiAudGV4dAkwMDAwMDI3NCAgR0xJQkNfMi4wICAgdHR5bmFtZQorMDAwNDE3YzAgIHcgICBERiAudGV4dAkwMDAwMDA5ZCAgR0xJQkNfMi4wICAgcmVnaXN0ZXJfcHJpbnRmX2Z1bmN0aW9uCiswMDA4ODQyMCBnICAgIERGIC50ZXh0CTAwMDAwMTI1ICBHTElCQ18yLjAgICBnZXRwd3VpZAorMDAwZjE2MzAgZyAgICBERiAudGV4dAkwMDAwMDEwMSAoR0xJQkNfMi4xKSAgX0lPX2ZzZXRwb3M2NAorMDAwZjBlYzAgZyAgICBERiAudGV4dAkwMDAwMDIzNSAoR0xJQkNfMi4wKSAgX0lPX3Byb2Nfb3BlbgorMDAwYWQwMzAgIHcgICBERiAudGV4dAkwMDAwMDAzNiAgR0xJQkNfMi4wICAgZHVwCiswMDBjZDhmMCBnICAgIERGIC50ZXh0CTAwMDAwMDI4ICBHTElCQ18yLjAgICBfX2hfZXJybm9fbG9jYXRpb24KKzAwMGM5OTIwIGcgICAgREYgLnRleHQJMDAwMDAwMzEgIEdMSUJDX1BSSVZBVEUgX19uc3NfZGlzYWJsZV9uc2NkCiswMDBhYjIxMCBnICAgIERGIC50ZXh0CTAwMDAwMDg0ICBHTElCQ18yLjIgICBwb3NpeF9zcGF3bl9maWxlX2FjdGlvbnNfYWRkY2xvc2UKKzAwMDJjZmEwICB3ICAgREYgLnRleHQJMDAwMDAwMmUgIEdMSUJDXzIuMyAgIHN0cnRvdWxfbAorMDAwYjE4NTAgZyAgICBERiAudGV4dAkwMDAwMDJhZCAgR0xJQkNfMi4zLjMgcG9zaXhfZmFsbG9jYXRlNjQKKzAwMGI0MDgwICB3ICAgREYgLnRleHQJMDAwMDAwM2EgIEdMSUJDXzIuMCAgIHN3YXBvbgorMDAwMjhjOTAgIHcgICBERiAudGV4dAkwMDAwMDA3YSAgR0xJQkNfMi4wICAgc2lnYmxvY2sKKzAwMDZkODMwIGcgICAgREYgLnRleHQJMDAwMDAwNDggIEdMSUJDXzIuMS4xIF9fc3RyY3Nwbl9nCiswMDAyN2MwMCAgdyAgIERGIC50ZXh0CTAwMDAwMDFlICBHTElCQ18yLjAgICBjb3B5c2lnbgorMDAwMjk3ZTAgIHcgICBERiAudGV4dAkwMDAwMDA5ZSAgR0xJQkNfMi4xICAgc2lncXVldWUKKzAwMDkyZWUwIGcgICAgREYgLnRleHQJMDAwMDAyZWMgKEdMSUJDXzIuMCkgIGZubWF0Y2gKKzAwMGFkMjIwICB3ICAgREYgLnRleHQJMDAwMDAxMzcgIEdMSUJDXzIuMCAgIGdldGN3ZAorMDAwYWNiYTAgIHcgICBERiAudGV4dAkwMDAwMDExNiAgR0xJQkNfMi4wICAgZXVpZGFjY2VzcworMDAwNmQyZTAgZyAgICBERiAudGV4dAkwMDAwMDAzYyAgR0xJQkNfMi4xLjEgX19tZW1jcHlfYnkyCiswMDBjOTg0MCBnICAgIERGIC50ZXh0CTAwMDAwMDI4ICBHTElCQ18yLjIgICBfX3Jlc19zdGF0ZQorMDAwY2RkNzAgZyAgICBERiAudGV4dAkwMDAwMDE5YSAgR0xJQkNfMi4wICAgZ2V0aG9zdGJ5bmFtZQorMDAwNjkwYzAgZyAgICBERiAudGV4dAkwMDAwMDFmMiAgR0xJQkNfMi4wICAgc3Ryc2lnbmFsCiswMDAwMDAwMCAgdyAgIEQgICpVTkQqCTAwMDAwMDAwICAgICAgICAgICAgICBfZGxfc3RhcnRpbmdfdXAKKzAwMDg4MmYwIGcgICAgREYgLnRleHQJMDAwMDAxMjUgIEdMSUJDXzIuMCAgIGdldHB3bmFtCiswMDA2MGQ3MCBnICAgIERGIC50ZXh0CTAwMDAwMDcwICBHTElCQ18yLjAgICBfSU9fc2V0YgorMDAwZWVlMzAgZyAgICBERiAudGV4dAkwMDAwMDAyZiAgR0xJQkNfMi4wICAgX19kZXJlZ2lzdGVyX2ZyYW1lCiswMDBiZjE2MCBnICAgIERGIC50ZXh0CTAwMDAwMGE2ICBHTElCQ18yLjAgICBlbmRzcGVudAorMDAwZDg0YzAgZyAgICBERiAudGV4dAkwMDAwMDA1YyAgR0xJQkNfMi4wICAgYXV0aG5vbmVfY3JlYXRlCiswMDAyMjg2MCAgdyAgIERGIC50ZXh0CTAwMDAwMDQ4ICBHTElCQ18yLjMgICBpc2N0eXBlCiswMDA4OTllMCBnICAgIERGIC50ZXh0CTAwMDAwMDQ4ICBHTElCQ18yLjEuMiBfX3Zmb3JrCiswMDAwMDAwMCBnICAgIERPICpBQlMqCTAwMDAwMDAwICBHTElCQ18yLjIuNCBHTElCQ18yLjIuNAorMDAwMjdmOTAgIHcgICBERiAudGV4dAkwMDAwMDAxZSAgR0xJQkNfMi4wICAgY29weXNpZ25mCiswMDA2ZGQ2MCBnICAgIERGIC50ZXh0CTAwMDAwMDJlICBHTElCQ18yLjEuMSBfX3N0cnNwbl9jMQorMDAwODg3OTAgZyAgICBERiAudGV4dAkwMDAwMDFkZSAgR0xJQkNfMi4xLjIgZ2V0cHduYW1fcgorMDAwY2ZhNTAgZyAgICBERiAudGV4dAkwMDAwMDEzNSAgR0xJQkNfMi4wICAgZ2V0c2VydmJ5bmFtZQorMDAwNWIyMjAgIHcgICBERiAudGV4dAkwMDAwMDBjYyAgR0xJQkNfMi4wICAgZmdldGMKKzAwMGIzN2QwICB3ICAgREYgLnRleHQJMDAwMDAwOTYgIEdMSUJDXzIuMCAgIGdldGhvc3RuYW1lCiswMDA2NTk2MCAgdyAgIERGIC50ZXh0CTAwMDAwMjI1ICBHTElCQ18yLjAgICBtZW1hbGlnbgorMDAwNDNkNjAgZyAgICBERiAudGV4dAkwMDAwMDAzNCAgR0xJQkNfMi4wICAgc3ByaW50ZgorMDAwZjIwZjAgZyAgICBERiAudGV4dAkwMDAwMDBlNiAoR0xJQkNfMi4wKSAgX0lPX2ZpbGVfdW5kZXJmbG93CiswMDBiOGQwMCBnICAgIERGIC50ZXh0CTAwMDAwMTRkICBHTElCQ18yLjAgICB2d2FybgorMDAwNjlhNzAgZyAgICBERiAudGV4dAkwMDAwMDA0NCAgR0xJQkNfMi4wICAgX19tZW1wY3B5CiswMDBkMGIyMCBnICAgIERGIC50ZXh0CTAwMDAwMjM0ICBHTElCQ18yLjAgICBldGhlcl9hdG9uX3IKKzAwMGRhMDMwIGcgICAgREYgLnRleHQJMDAwMDAzM2QgIEdMSUJDXzIuMCAgIGNsbnR0Y3BfY3JlYXRlCiswMDA0M2RhMCAgdyAgIERGIC50ZXh0CTAwMDAwMDM0ICBHTElCQ18yLjAgICBhc3ByaW50ZgorMDAwYjcwNTAgIHcgICBERiAudGV4dAkwMDAwMDA3YyAgR0xJQkNfMi4wICAgbXN5bmMKKzAwMDUzZWYwIGcgICAgREYgLnRleHQJMDAwMDAxY2EgIEdMSUJDXzIuMSAgIGZjbG9zZQorMDAwNjg4YjAgIHcgICBERiAudGV4dAkwMDAwMDE1NCAgR0xJQkNfMi4wICAgc3RyZXJyb3JfcgorMDAwNTk2MDAgZyAgICBERiAudGV4dAkwMDAwMDZjMiAgR0xJQkNfMi4yICAgX0lPX3dmaWxlX3NlZWtvZmYKKzAwMDdhZTkwIGcgICAgREYgLnRleHQJMDAwMDAwMGQgIEdMSUJDXzIuMCAgIGRpZmZ0aW1lCiswMDBiZTAyMCBnICAgIERGIC50ZXh0CTAwMDAwMDdkICBHTElCQ18yLjEgICBfX2lzd2FsbnVtX2wKKzAwMDM3YTQwICB3ICAgREYgLnRleHQJMDAwMDAwN2IgIEdMSUJDXzIuMSAgIGdldGNvbnRleHQKKzAwMDJkYzUwICB3ICAgREYgLnRleHQJMDAwMDAwNTIgIEdMSUJDXzIuMCAgIHN0cnRvZgorMDAwNWEwODAgZyAgICBERiAudGV4dAkwMDAwMDQ2OSAgR0xJQkNfMi4yICAgX0lPX3dmaWxlX3VuZGVyZmxvdworMDAwYjU1ZDAgZyAgICBERiAudGV4dAkwMDAwMDAxYiAgR0xJQkNfMi4wICAgaW5zcXVlCiswMDAzMjhjMCAgdyAgIERGIC50ZXh0CTAwMDAwMDI3ICBHTElCQ18yLjMgICBzdHJ0b2RfbAorMDAwMjI1NTAgIHcgICBERiAudGV4dAkwMDAwMDAwYiAgR0xJQkNfMi4xICAgX190b2FzY2lpX2wKKzAwMGIzYWYwICB3ICAgREYgLnRleHQJMDAwMDAwYTIgIEdMSUJDXzIuMCAgIHBzZWxlY3QKKzAwMDIyNTUwIGcgICAgREYgLnRleHQJMDAwMDAwMGIgIEdMSUJDXzIuMCAgIHRvYXNjaWkKKzAwMDUzZGIwIGcgICAgREYgLnRleHQJMDAwMDAxM2UgIEdMSUJDXzIuMCAgIF9JT19maWxlX2RvYWxsb2NhdGUKKzAwMDU0NWQwIGcgICAgREYgLnRleHQJMDAwMDAxNTEgIEdMSUJDXzIuMCAgIF9JT19mZ2V0cworMDAwNjg1MjAgZyAgICBERiAudGV4dAkwMDAwMDBhZSAgR0xJQkNfMi4wICAgc3RyY3NwbgorMDAxMDIyZmMgZyAgICBETyAucm9kYXRhCTAwMDAwMDA1ICBHTElCQ18yLjAgICBfbGliY19pbnRsX2RvbWFpbm5hbWUKKzAwMDY5ZTYwICB3ICAgREYgLnRleHQJMDAwMDAwNGUgIEdMSUJDXzIuMyAgIHN0cm5jYXNlY21wX2wKKzAwMGNmMDQwIGcgICAgREYgLnRleHQJMDAwMDAxYzcgIEdMSUJDXzIuMS4yIGdldG5ldGJ5bmFtZV9yCiswMDBiZTRhMCAgdyAgIERGIC50ZXh0CTAwMDAwMDdkICBHTElCQ18yLjMgICBpc3dzcGFjZV9sCiswMDBiZGZiMCAgdyAgIERGIC50ZXh0CTAwMDAwMDZkICBHTElCQ18yLjMgICB0b3d1cHBlcl9sCiswMDBiZTNhMCBnICAgIERGIC50ZXh0CTAwMDAwMDdkICBHTElCQ18yLjEgICBfX2lzd3ByaW50X2wKKzAwMGI3ZGQwIGcgICAgREYgLnRleHQJMDAwMDAxY2MgIEdMSUJDXzIuMCAgIHFlY3Z0X3IKKzAwMGUzZWMwIGcgICAgREYgLnRleHQJMDAwMDAwNjggIEdMSUJDXzIuMCAgIHhkcl9rZXlfbmV0c3RyZXMKKzAwMDU4MjIwIGcgICAgREYgLnRleHQJMDAwMDAwNzAgIEdMSUJDXzIuMiAgIF9JT19pbml0X3dtYXJrZXIKKzAwMDZkOTUwIGcgICAgREYgLnRleHQJMDAwMDAwNDUgIEdMSUJDXzIuMS4xIF9fc3RycGJya19nCiswMDA1MzIwMCAgdyAgIERGIC50ZXh0CTAwMDAwMDJkICBHTElCQ18yLjAgICBmbG9ja2ZpbGUKKzAwMDFlOWUwIGcgICAgREYgLnRleHQJMDAwMDA2NWUgIEdMSUJDXzIuMCAgIHNldGxvY2FsZQorMDAwYmFmNjAgIHcgICBERiAudGV4dAkwMDAwMDAzOSAgR0xJQkNfMi4wICAgZ2V0cGVlcm5hbWUKKzAwMDM2ZTQwIGcgICAgREYgLnRleHQJMDAwMDAxMzkgIEdMSUJDXzIuMCAgIGdldHN1Ym9wdAorMDAwYmQ1YTAgIHcgICBERiAudGV4dAkwMDAwMDBkNSAgR0xJQkNfMi4wICAgaXN3ZGlnaXQKKzAwMGIyNDcwIGcgICAgREYgLnRleHQJMDAwMDAwNzQgIEdMSUJDXzIuMCAgIGNmc2V0c3BlZWQKKzAwMDUyMmMwIGcgICAgREYgLnRleHQJMDAwMDAwM2YgIEdMSUJDXzIuMCAgIHNjYW5mCiswMDA5YzQxMCAgdyAgIERGIC50ZXh0CTAwMDAwMGE4ICBHTElCQ18yLjAgICByZWdlcnJvcgorMDAwZTM5NjAgZyAgICBERiAudGV4dAkwMDAwMDA1YSAgR0xJQkNfMi4xICAga2V5X3NldG5ldAorMDAwNWU1MDAgZyAgICBERiAudGV4dAkwMDAwMDA1NyAgR0xJQkNfMi4wICAgX0lPX2ZpbGVfcmVhZAorMDAwY2UzNDAgZyAgICBERiAudGV4dAkwMDAwMDI3MSAgR0xJQkNfMi4xLjIgZ2V0aG9zdGJ5bmFtZV9yCiswMDExNzhlNCBnICAgIERPIC5kYXRhCTAwMDAwMDA0ICBHTElCQ18yLjAgICBzdGRlcnIKKzAwMDdhZTUwIGcgICAgREYgLnRleHQJMDAwMDAwMzkgIEdMSUJDXzIuMCAgIGN0aW1lX3IKKzAwMGI1MjgwICB3ICAgREYgLnRleHQJMDAwMDAxYTYgIEdMSUJDXzIuMyAgIGZ1dGltZXMKKzAwMGJhNDUwICB3ICAgREYgLnRleHQJMDAwMDAwMzYgIEdMSUJDXzIuMCAgIHVtb3VudAorMDAwZTk5ODAgIHcgICBERiAudGV4dAkwMDAwMDA2MiAgR0xJQkNfMi4wICAgcHV0dXRsaW5lCiswMDBkNDhhMCBnICAgIERGIC50ZXh0CTAwMDAwMGE4ICBHTElCQ18yLjAgICBzZXRhbGlhc2VudAorMDAwYjZmNjAgIHcgICBERiAudGV4dAkwMDAwMDA3MCAgR0xJQkNfMi4xICAgbW1hcDY0CiswMDBiYmMzMCBnICAgIERGIC50ZXh0CTAwMDAwMDU1ICBHTElCQ18yLjIgICBzaG1jdGwKKzAwMDgyOWYwIGcgICAgREYgLnRleHQJMDAwMDIxYjggIEdMSUJDXzIuMyAgIF9fd2NzZnRpbWVfbAorMDAwYjQxNDAgZyAgICBERiAudGV4dAkwMDAwMDAyOSAgR0xJQkNfMi4wICAgbWtzdGVtcAorMDAwNmRkOTAgZyAgICBERiAudGV4dAkwMDAwMDAyMyAgR0xJQkNfMi4xLjEgX19zdHJzcG5fYzIKKzAwMGI1YzYwIGcgICAgREYgLnRleHQJMDAwMDAwNGMgIEdMSUJDXzIuMCAgIGdldHR0eW5hbQorMDAwYjk1MTAgIHcgICBERiAudGV4dAkwMDAwMDBiNSAgR0xJQkNfMi4wICAgZXJyb3IKKzAwMGJlMTIwIGcgICAgREYgLnRleHQJMDAwMDAwN2QgIEdMSUJDXzIuMSAgIF9faXN3YmxhbmtfbAorMDAwMmJkZDAgZyAgICBERiAudGV4dAkwMDAwMDAzNyAgR0xJQkNfMi4wICAgZXJhbmQ0OAorMDAwMjdkZjAgIHcgICBERiAudGV4dAkwMDAwMDAwZCAgR0xJQkNfMi4wICAgc2NhbGJuCiswMDBhYzVmMCAgdyAgIERGIC50ZXh0CTAwMDAwMTUzICBHTElCQ18yLjEgICBmc3RhdHZmczY0CiswMDA4OTllMCAgdyAgIERGIC50ZXh0CTAwMDAwMDQ4ICBHTElCQ18yLjAgICB2Zm9yaworMDAwZDA3NjAgZyAgICBERiAudGV4dAkwMDAwMDBhZCAgR0xJQkNfMi4wICAgc2V0cnBjZW50CiswMDAxNWQwMCBnICAgIERGIC50ZXh0CTAwMDAwMTdlICBHTElCQ18yLjEgICBpY29udgorMDAwYjYzZTAgZyAgICBERiAudGV4dAkwMDAwMDAyMyAgR0xJQkNfMi4wICAgc2V0bG9nbWFzaworMDAxMTZhODAgZyAgICBETyAuZGF0YS5yZWwucm8JMDAwMDAwNTQgIEdMSUJDXzIuMCAgIF9JT19maWxlX2p1bXBzCiswMDAyYjhiMCAgdyAgIERGIC50ZXh0CTAwMDAwMDViICBHTElCQ18yLjAgICBzcmFuZG9tCiswMDA2ODBjMCBnICAgIERGIC50ZXh0CTAwMDAwMDc4ICBHTElCQ18yLjAgICBvYnN0YWNrX2ZyZWUKKzAwMDZiMDkwICB3ICAgREYgLnRleHQJMDAwMDAyZTkgIEdMSUJDXzIuMCAgIGFyZ3pfcmVwbGFjZQorMDAwYmM2YzAgIHcgICBERiAudGV4dAkwMDAwMDFiYSAgR0xJQkNfMi4wICAgcHJvZmlsCiswMDA2YTNmMCAgdyAgIERGIC50ZXh0CTAwMDAwMDkwICBHTElCQ18yLjAgICBzdHJzZXAKKzAwMGU5NjQwIGcgICAgREYgLnRleHQJMDAwMDAwNTAgIEdMSUJDXzIuMSAgIHB1dG1zZworMDAwNjM1YjAgIHcgICBERiAudGV4dAkwMDAwMDBiOCAgR0xJQkNfMi4wICAgY2ZyZWUKKzAwMDMwMTUwICB3ICAgREYgLnRleHQJMDAwMDAwMjcgIEdMSUJDXzIuMSAgIF9fc3RydG9mX2wKKzAwMGJhMTQwIGcgICAgREYgLnRleHQJMDAwMDAwNDggIEdMSUJDXzIuMyAgIHNldHhhdHRyCiswMDBlMWJlMCBnICAgIERGIC50ZXh0CTAwMDAwMGIzICBHTElCQ18yLjEgICB4ZHJfc2l6ZW9mCiswMDAyMjU2MCAgdyAgIERGIC50ZXh0CTAwMDAwMDExICBHTElCQ18yLjEgICBfX2lzYXNjaWlfbAorMDAwNjc0NTAgZyAgICBERiAudGV4dAkwMDAwMDA5NCAgR0xJQkNfMi4wICAgbXVudHJhY2UKKzAwMDI3ZjIwIGcgICAgREYgLnRleHQJMDAwMDAwMjQgIEdMSUJDXzIuMCAgIF9faXNpbmZmCiswMDBhYzIyMCAgdyAgIERGIC50ZXh0CTAwMDAwMTJmICBHTElCQ18yLjEgICBmc3RhdGZzNjQKKzAwMDg5MWEwIGcgICAgREYgLnRleHQJMDAwMDAwN2MgIEdMSUJDXzIuMCAgIF9fd2FpdHBpZAorMDAwZjQxZDAgZyAgICBERiAudGV4dAkwMDAwMDAzNyAoR0xJQkNfMi4wKSAgZ2V0cHJvdG9lbnRfcgorMDAwMjdiYjAgIHcgICBERiAudGV4dAkwMDAwMDAyNyAgR0xJQkNfMi4wICAgaXNuYW4KKzAwMGYxNTIwIGcgICAgREYgLnRleHQJMDAwMDAxMDEgKEdMSUJDXzIuMCkgIF9JT19mc2V0cG9zCiswMDBkNjg5MCBnICAgIERGIC50ZXh0CTAwMDAwYmFlICBHTElCQ18yLjMgICBnZXRpZmFkZHJzCiswMDA4OTk4MCBnICAgIERGIC50ZXh0CTAwMDAwMDU5ICBHTElCQ19QUklWQVRFIF9fbGliY19mb3JrCiswMDA5ZmViMCAgdyAgIERGIC50ZXh0CTAwMDAwMDkyICBHTElCQ18yLjAgICByZV9jb21waWxlX2Zhc3RtYXAKKzAwMGUxNTQwIGcgICAgREYgLnRleHQJMDAwMDAxNDIgIEdMSUJDXzIuMCAgIHhkcl9yZWZlcmVuY2UKKzAwMGY0MjcwIGcgICAgREYgLnRleHQJMDAwMDAwNjYgKEdMSUJDXzIuMCkgIGdldHNlcnZieW5hbWVfcgorMDAwYjhlNTAgZyAgICBERiAudGV4dAkwMDAwMDAyMyAgR0xJQkNfMi4wICAgdmVycgorMDAwYmU1MjAgIHcgICBERiAudGV4dAkwMDAwMDA3ZCAgR0xJQkNfMi4zICAgaXN3dXBwZXJfbAorMDAwNTdhZjAgZyAgICBERiAudGV4dAkwMDAwMDA1OSAgR0xJQkNfMi4wICAgcHV0Y2hhcl91bmxvY2tlZAorMDAwYTQzNjAgIHcgICBERiAudGV4dAkwMDAwMDAzYSAgR0xJQkNfMi4wICAgc2NoZWRfc2V0cGFyYW0KKzAwMDJiMzUwIGcgICAgREYgLnRleHQJMDAwMDAwNDQgIEdMSUJDXzIuMCAgIGxkaXYKKzAwMGRlMTMwIGcgICAgREYgLnRleHQJMDAwMDAyMjIgIEdMSUJDXzIuMCAgIHJlZ2lzdGVycnBjCiswMDAyOTJmMCBnICAgIERGIC50ZXh0CTAwMDAwMDQ2ICBHTElCQ18yLjAgICBzaWdpc21lbWJlcgorMDAwNzA1ZjAgZyAgICBERiAudGV4dAkwMDAwMDA1MiAgR0xJQkNfMi4wICAgX193Y3N0b2ZfaW50ZXJuYWwKKzAwMDdiN2EwICB3ICAgREYgLnRleHQJMDAwMDAwM2MgIEdMSUJDXzIuMCAgIHRpbWVsb2NhbAorMDAwMTU2MjAgZyAgICBERiAudGV4dAkwMDAwMDAzMSAoR0xJQkNfMi4wKSAgX19maXh1bnN4ZmRpCiswMDBhYjUxMCBnICAgIERGIC50ZXh0CTAwMDAwMDEwICBHTElCQ18yLjIgICBwb3NpeF9zcGF3bmF0dHJfc2V0cGdyb3VwCiswMDBlMjY5MCBnICAgIERGIC50ZXh0CTAwMDAwMGEwICBHTElCQ18yLjEgICBjYmNfY3J5cHQKKzAwMGM5NjIwIGcgICAgREYgLnRleHQJMDAwMDAxMDYgIEdMSUJDX1BSSVZBVEUgX19yZXNfbWF5YmVfaW5pdAorMDAwNTZkZjAgIHcgICBERiAudGV4dAkwMDAwMDBjZCAgR0xJQkNfMi4yICAgZ2V0d2MKKzAwMTFhOGVjIGcgICAgRE8gLmJzcwkwMDAwMDAwNCAgR0xJQkNfMi4xICAgX19rZXlfZ2VuZGVzX0xPQ0FMCiswMDA0MzQwMCBnICAgIERGIC50ZXh0CTAwMDAwOGExICBHTElCQ18yLjEgICBwcmludGZfc2l6ZQorMDAwNzBhNjAgIHcgICBERiAudGV4dAkwMDAwMDAzZSAgR0xJQkNfMi4zICAgd2NzdG9sX2wKKzAwMGYxMTAwIGcgICAgREYgLnRleHQJMDAwMDAwODggKEdMSUJDXzIuMCkgIF9JT19wb3BlbgorMDAwYjNjMjAgIHcgICBERiAudGV4dAkwMDAwMDA3MSAgR0xJQkNfMi4wICAgZnN5bmMKKzAwMDZkN2MwIGcgICAgREYgLnRleHQJMDAwMDAwMjggIEdMSUJDXzIuMS4xIF9fc3RycmNocl9nCiswMDBhYzAzMCBnICAgIERGIC50ZXh0CTAwMDAwMDMyICBHTElCQ18yLjIgICBfX2x4c3RhdDY0CiswMDA2NTY3MCAgdyAgIERGIC50ZXh0CTAwMDAwMTA3ICBHTElCQ18yLjAgICB2YWxsb2MKKzAwMDZhM2YwIGcgICAgREYgLnRleHQJMDAwMDAwOTAgIEdMSUJDXzIuMS4xIF9fc3Ryc2VwX2cKKzAwMGYzZTAwIGcgICAgREYgLnRleHQJMDAwMDAwMzcgKEdMSUJDXzIuMCkgIGdldHNwZW50X3IKKzAwMDI4MTcwICB3ICAgREYgLnRleHQJMDAwMDAwNTUgIEdMSUJDXzIuMCAgIGlzaW5mbAorMDAwNWFkYTAgZyAgICBERiAudGV4dAkwMDAwMDBlNyAgR0xJQkNfMi4wICAgZnB1dGMKKzAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAzZGUgIEdMSUJDXzIuMyAgIF9fX3Rsc19nZXRfYWRkcgorMDAwY2E2MTAgZyAgICBERiAudGV4dAkwMDAwMDNjNCAgR0xJQkNfMi4wICAgX19uc3NfZGF0YWJhc2VfbG9va3VwCiswMDBkMWYwMCBnICAgIERGIC50ZXh0CTAwMDAwMDMxICBHTElCQ18yLjAgICBpcnVzZXJvaworMDAwNmI0ZjAgZyAgICBERiAudGV4dAkwMDAwMDBkZiAgR0xJQkNfMi4wICAgZW52el9tZXJnZQorMDAwYjcyZTAgZyAgICBERiAudGV4dAkwMDAwMDA1NiAgR0xJQkNfMi4wICAgZWN2dAorMDAwYmU4MDAgZyAgICBERiAudGV4dAkwMDAwMDBhMiAgR0xJQkNfMi4wICAgZ2V0c3BlbnQKKzAwMDc4NzcwIGcgICAgREYgLnRleHQJMDAwMDBlZTggIEdMSUJDXzIuMSAgIF9fd2NzY29sbF9sCiswMDBjYzg2MCBnICAgIERGIC50ZXh0CTAwMDAwMGI4ICBHTElCQ18yLjMuNCBfX3N0cm5jcHlfY2hrCiswMDAyODFkMCAgdyAgIERGIC50ZXh0CTAwMDAwMDQ4ICBHTElCQ18yLjAgICBpc25hbmwKKzAwMDVjZmEwIGcgICAgREYgLnRleHQJMDAwMDAwMTAgIEdMSUJDXzIuMCAgIGZlb2ZfdW5sb2NrZWQKKzAwMGM2NDkwIGcgICAgREYgLnRleHQJMDAwMDAwNjUgIEdMSUJDX1BSSVZBVEUgX19saWJydF9lbmFibGVfYXN5bmNjYW5jZWwKKzAwMGUwZWUwIGcgICAgREYgLnRleHQJMDAwMDAwNTkgIEdMSUJDXzIuMCAgIHhkcnJlY19lb2YKKzAwMDU4Y2UwIGcgICAgREYgLnRleHQJMDAwMDAwYWIgIEdMSUJDXzIuMiAgIF9JT193ZGVmYXVsdF9maW5pc2gKKzAwMGVkZTEwIGcgICAgREYgLnRleHQJMDAwMDAwNDMgIEdMSUJDXzIuMSAgIF9kbF9tY291bnRfd3JhcHBlcl9jaGVjaworMDAwN2RhODAgZyAgICBERiAudGV4dAkwMDAwMDAzZSAgR0xJQkNfMi4wICAgdGltZWdtCiswMDBiOWM0MCAgdyAgIERGIC50ZXh0CTAwMDAwMDczICBHTElCQ18yLjAgICBzdGVwCiswMDA2ZGY1MCBnICAgIERGIC50ZXh0CTAwMDAwMDczICBHTElCQ18yLjEuMSBfX3N0cnNlcF8zYworMDAwYjBmZjAgZyAgICBERiAudGV4dAkwMDAwMDUxNyAgR0xJQkNfMi4wICAgZnRzX3JlYWQKKzAwMDVkMGYwIGcgICAgREYgLnRleHQJMDAwMDAwZDAgIEdMSUJDXzIuMCAgIF9JT19wZWVrY19sb2NrZWQKKzAwMDIwZTAwICB3ICAgREYgLnRleHQJMDAwMDAwNDkgIEdMSUJDXzIuMyAgIG5sX2xhbmdpbmZvX2wKKzAwMDYyYWEwICB3ICAgREYgLnRleHQJMDAwMDAwODcgIEdMSUJDXzIuMCAgIG1hbGxpbmZvCiswMDBkOTQ0MCBnICAgIERGIC50ZXh0CTAwMDAwMmFjICBHTElCQ18yLjAgICBjbG50X3NwZXJyb3IKKzAwMGJjMzAwIGcgICAgREYgLnRleHQJMDAwMDAwNDIgIEdMSUJDXzIuMCAgIF9tY2xlYW51cAorMDAwNWFjOTAgZyAgICBERiAudGV4dAkwMDAwMDA2OCAgR0xJQkNfMi4wICAgX0lPX2Zlb2YKKzAwMDIyOWIwIGcgICAgREYgLnRleHQJMDAwMDAwNzEgIEdMSUJDXzIuMyAgIF9fY3R5cGVfYl9sb2MKKzAwMDZhNjQwIGcgICAgREYgLnRleHQJMDAwMDAwZGMgIEdMSUJDXzIuMCAgIHN0cmZyeQorMDAxMTcyOTAgZyAgICBETyAuZGF0YQkwMDAwMDAwNCAgR0xJQkNfMi4wICAgb3B0b3B0CiswMDA1ZDAzMCBnICAgIERGIC50ZXh0CTAwMDAwMDM5ICBHTElCQ18yLjAgICBnZXRjaGFyX3VubG9ja2VkCiswMDBiYWVlMCAgdyAgIERGIC50ZXh0CTAwMDAwMDc4ICBHTElCQ18yLjAgICBfX2Nvbm5lY3QKKzAwMGYzZGIwIGcgICAgREYgLnRleHQJMDAwMDAwNGYgKEdMSUJDXzIuMCkgIHNobWN0bAorMDAwNmRiMTAgZyAgICBERiAudGV4dAkwMDAwMDA5NCAgR0xJQkNfMi4xLjEgX19zdHJjcHlfc21hbGwKKzAwMDY4NzgwIGcgICAgREYgLnRleHQJMDAwMDAwNjQgIEdMSUJDXzIuMiAgIF9fc3RybmR1cAorMDAxMTliNTAgZyAgICBETyAuYnNzCTAwMDAwMDA0IChHTElCQ18yLjApICBoX2Vycm5vCiswMDA4ODU1MCBnICAgIERGIC50ZXh0CTAwMDAwMGRiICBHTElCQ18yLjEuMiBnZXRwd2VudF9yCiswMDBhYWRiMCAgdyAgIERGIC50ZXh0CTAwMDAwMDgyICBHTElCQ18yLjEgICBwcmVhZAorMDAwY2ZlNDAgZyAgICBERiAudGV4dAkwMDAwMDE2YyAgR0xJQkNfMi4xLjIgZ2V0c2VydmJ5cG9ydF9yCiswMDBjNjJlMCBnICAgIERGIC50ZXh0CTAwMDAwMDIwICBHTElCQ18yLjAgICBwdGhyZWFkX3NlbGYKKzAwMGYwZDgwIGcgICAgREYgLnRleHQJMDAwMDAxM2QgKEdMSUJDXzIuMCkgIF9JT19wcm9jX2Nsb3NlCiswMDBjNjM0MCBnICAgIERGIC50ZXh0CTAwMDAwMDMzICBHTElCQ18yLjAgICBwdGhyZWFkX3NldGNhbmNlbHR5cGUKKzAwMDVhYjIwIGcgICAgREYgLnRleHQJMDAwMDAxMGYgIEdMSUJDXzIuMiAgIGZ3aWRlCiswMDBiZGFlMCAgdyAgIERGIC50ZXh0CTAwMDAwMGQwICBHTElCQ18yLjAgICBpc3d1cHBlcgorMDAxMTU0ODAgZyAgICBETyAuZGF0YS5yZWwucm8JMDAwMDAxZWMgKEdMSUJDXzIuMCkgIF9zeXNfZXJybGlzdAorMDAwYmFmZTAgIHcgICBERiAudGV4dAkwMDAwMDAzOSAgR0xJQkNfMi4wICAgZ2V0c29ja29wdAorMDAwODc1ODAgZyAgICBERiAudGV4dAkwMDAwMDFkZSAgR0xJQkNfMi4xLjIgZ2V0Z3JnaWRfcgorMDAwYmYwODAgZyAgICBERiAudGV4dAkwMDAwMDBkYiAgR0xJQkNfMi4xLjIgZ2V0c3BlbnRfcgorMDAwOGJhODAgZyAgICBERiAudGV4dAkwMDAwMDA2YSAgR0xJQkNfMi4wICAgZ2xvYmZyZWUKKzAwMDdhZjUwICB3ICAgREYgLnRleHQJMDAwMDAwMzMgIEdMSUJDXzIuMCAgIGxvY2FsdGltZV9yCiswMDBjNjdlMCBnICAgIERGIC50ZXh0CTAwMDAwMDllICBHTElCQ18yLjAgICBoc3RyZXJyb3IKKzAwMGQ2MGMwIGcgICAgREYgLnRleHQJMDAwMDAwMjEgIEdMSUJDXzIuMyAgIGZyZWVpZmFkZHJzCiswMDBhNGE5MCBnICAgIERGIC50ZXh0CTAwMDAwNjI1ICBHTElCQ18yLjAgICBnZXRhZGRyaW5mbworMDAwMTY4ZjAgZyAgICBERiAudGV4dAkwMDAwMDAxNiAgR0xJQkNfUFJJVkFURSBfX2djb252X2dldF9tb2R1bGVzX2RiCiswMDA5Mzk4MCAgdyAgIERGIC50ZXh0CTAwMDAwMDFmICBHTElCQ18yLjAgICByZV9zZXRfc3ludGF4CiswMDBiYjQyMCAgdyAgIERGIC50ZXh0CTAwMDAwMDM5ICBHTElCQ18yLjAgICBzb2NrZXRwYWlyCiswMDA1ODE0MCBnICAgIERGIC50ZXh0CTAwMDAwMDQ5ICBHTElCQ18yLjIgICBfSU9fc3B1dGJhY2t3YworMDAwOGE3ZDAgIHcgICBERiAudGV4dAkwMDAwMDAzNSAgR0xJQkNfMi4wICAgc2V0cmVzZ2lkCiswMDA1ZDA3MCBnICAgIERGIC50ZXh0CTAwMDAwMDNlICBHTElCQ18yLjAgICBmZmx1c2hfdW5sb2NrZWQKKzAwMGI3MTUwICB3ICAgREYgLnRleHQJMDAwMDAwNDggIEdMSUJDXzIuMy4zIHJlbWFwX2ZpbGVfcGFnZXMKKzAwMGVkZjcwIGcgICAgREYgLnRleHQJMDAwMDAwMzcgIEdMSUJDX1BSSVZBVEUgX19saWJjX2RsY2xvc2UKKzAwMGI4NTUwICB3ICAgREYgLnRleHQJMDAwMDAwMjIgIEdMSUJDXzIuMCAgIHR3YWxrCiswMDBiNTI2MCAgdyAgIERGIC50ZXh0CTAwMDAwMDE1ICBHTElCQ18yLjMgICBsdXRpbWVzCiswMDBmMTE5MCBnICAgIERGIC50ZXh0CTAwMDAwMDIxIChHTElCQ18yLjApICBwY2xvc2UKKzAwMGUyNGYwIGcgICAgREYgLnRleHQJMDAwMDAwYmYgIEdMSUJDXzIuMSAgIHhkcl9hdXRoZGVzX2NyZWQKKzAwMDgwOTQwIGcgICAgREYgLnRleHQJMDAwMDAwNTkgIEdMSUJDXzIuMCAgIHN0cmZ0aW1lCiswMDA2YWJjMCAgdyAgIERGIC50ZXh0CTAwMDAwMGM3ICBHTElCQ18yLjAgICBhcmd6X2NyZWF0ZV9zZXAKKzAwMDI4MDUwICB3ICAgREYgLnRleHQJMDAwMDAwMGQgIEdMSUJDXzIuMSAgIHNjYWxibG5mCiswMDA1NzIyMCBnICAgIERGIC50ZXh0CTAwMDAwMTBmICBHTElCQ18yLjIgICBmcHV0d3MKKzAwMDcwYTYwICB3ICAgREYgLnRleHQJMDAwMDAwM2UgIEdMSUJDXzIuMSAgIF9fd2NzdG9sX2wKKzAwMGU5YjkwICB3ICAgREYgLnRleHQJMDAwMDAwZDIgIEdMSUJDXzIuMCAgIGdldHV0aWRfcgorMDAwNWQyMjAgZyAgICBERiAudGV4dAkwMDAwMDBhNiAgR0xJQkNfMi4xICAgZndyaXRlX3VubG9ja2VkCiswMDA1YmVkMCAgdyAgIERGIC50ZXh0CTAwMDAwMDM0ICBHTElCQ18yLjAgICBvYnN0YWNrX3ByaW50ZgorMDAxMThkNDQgZyAgICBETyAuYnNzCTAwMDAwMDA0ICBHTElCQ18yLjAgICBfX3RpbWV6b25lCiswMDA2ZWIzMCBnICAgIERGIC50ZXh0CTAwMDAwMDljICBHTElCQ18yLjAgICB3bWVtY21wCiswMDA3ZGFjMCBnICAgIERGIC50ZXh0CTAwMDAwMDdhICBHTElCQ18yLjAgICBmdGltZQorMDAwMmIzYTAgZyAgICBERiAudGV4dAkwMDAwMDA5NSAgR0xJQkNfMi4wICAgbGxkaXYKKzAwMDZkM2IwIGcgICAgREYgLnRleHQJMDAwMDAwMzUgIEdMSUJDXzIuMS4xIF9fbWVtc2V0X2djbl9ieTQKKzAwMDU4MzYwIGcgICAgREYgLnRleHQJMDAwMDAwMzYgIEdMSUJDXzIuMiAgIF9JT191bnNhdmVfd21hcmtlcnMKKzAwMDZlYzMwICB3ICAgREYgLnRleHQJMDAwMDAwMjQgIEdMSUJDXzIuMCAgIHdtZW1tb3ZlCiswMDBiMWI1MCBnICAgIERGIC50ZXh0CTAwMDAwMDQyICBHTElCQ18yLjMgICBzZW5kZmlsZTY0CiswMDA1ZjBhMCBnICAgIERGIC50ZXh0CTAwMDAwMTQ3ICBHTElCQ18yLjAgICBfSU9fZmlsZV9vcGVuCiswMDBhYjRkMCBnICAgIERGIC50ZXh0CTAwMDAwMDFlICBHTElCQ18yLjIgICBwb3NpeF9zcGF3bmF0dHJfc2V0ZmxhZ3MKKzAwMGM3NTgwIGcgICAgREYgLnRleHQJMDAwMDAwMzQgIEdMSUJDXzIuMCAgIF9fcmVzX3JhbmRvbWlkCiswMDA4NjU5MCBnICAgIERGIC50ZXh0CTAwMDAwMDVlICBHTElCQ18yLjAgICBnZXRkaXJlbnRyaWVzCiswMDAyMjFkMCBnICAgIERGIC50ZXh0CTAwMDAwMDdkICBHTElCQ18yLjAgICBpc2RpZ2l0CiswMDBmMWYyMCBnICAgIERGIC50ZXh0CTAwMDAwMTQzIChHTElCQ18yLjApICBfSU9fZmlsZV9vdmVyZmxvdworMDAwNTRkYzAgZyAgICBERiAudGV4dAkwMDAwMDEzMSAgR0xJQkNfMi4yICAgX0lPX2ZzZXRwb3MKKzAwMGY0NGQwIGcgICAgREYgLnRleHQJMDAwMDAwNWYgKEdMSUJDXzIuMCkgIGdldGFsaWFzYnluYW1lX3IKKzAwMDY5YzcwICB3ICAgREYgLnRleHQJMDAwMDAwOTEgIEdMSUJDXzIuMCAgIHN0cG5jcHkKKzAwMGI0MWEwIGcgICAgREYgLnRleHQJMDAwMDAwNDMgIEdMSUJDXzIuMiAgIG1rZHRlbXAKKzAwMGI0NzAwIGcgICAgREYgLnRleHQJMDAwMDAwODQgIEdMSUJDXzIuMCAgIGdldG1udGVudAorMDAwMjI2YzAgZyAgICBERiAudGV4dAkwMDAwMDAxNSAgR0xJQkNfMi4xICAgX19pc2FsbnVtX2wKKzAwMDU1MjEwICB3ICAgREYgLnRleHQJMDAwMDAxNjcgIEdMSUJDXzIuMCAgIGZ3cml0ZQorMDAwNjAxMjAgZyAgICBERiAudGV4dAkwMDAwMDAyZCAgR0xJQkNfMi4yICAgX0lPX2xpc3RfdW5sb2NrCiswMDBhYzlhMCAgdyAgIERGIC50ZXh0CTAwMDAwMDcxICBHTElCQ18yLjAgICBfX2Nsb3NlCiswMDBiYWQwMCBnICAgIERGIC50ZXh0CTAwMDAwMDQyICBHTElCQ18yLjAgICBxdW90YWN0bAorMDAwN2RhMjAgZyAgICBERiAudGV4dAkwMDAwMDA1OCAgR0xJQkNfMi4wICAgZHlzaXplCiswMDBmMTFjMCBnICAgIERGIC50ZXh0CTAwMDAwMDlkIChHTElCQ18yLjApICB0bXBmaWxlCiswMDExYThmNCBnICAgIERPIC5ic3MJMDAwMDAwMGMgIEdMSUJDXzIuMCAgIHN2Y2F1dGhkZXNfc3RhdHMKKzAwMDM3MzQwIGcgICAgREYgLnRleHQJMDAwMDA2MzEgIEdMSUJDXzIuMSAgIGZtdG1zZworMDAwYWNiNjAgIHcgICBERiAudGV4dAkwMDAwMDAzYSAgR0xJQkNfMi4wICAgYWNjZXNzCiswMDExYTY2NCBnICAgIERPIC5ic3MJMDAwMDAwMDQgIEdMSUJDXzIuMCAgIG1hbGx3YXRjaAorMDAwYmE1NTAgZyAgICBERiAudGV4dAkwMDAwMDAxMyAgR0xJQkNfMi4wICAgc2V0ZnNnaWQKKzAwMGFiZDcwIGcgICAgREYgLnRleHQJMDAwMDAwOGQgIEdMSUJDXzIuMCAgIF9feHN0YXQKKzAwMGE0NGQwIGcgICAgREYgLnRleHQJMDAwMDAwMzYgIEdMSUJDXzIuMCAgIF9fc2NoZWRfZ2V0X3ByaW9yaXR5X21pbgorMDAwYWVlYjAgZyAgICBERiAudGV4dAkwMDAwMDA0MSAgR0xJQkNfMi4zLjMgbmZ0dworMDAwMmM0ZjAgZyAgICBERiAudGV4dAkwMDAwMDA1OSAoR0xJQkNfMi4wKSAgX19zdHJ0b3FfaW50ZXJuYWwKKzAwMDVmOTQwIGcgICAgREYgLnRleHQJMDAwMDAwNzcgIEdMSUJDXzIuMCAgIF9JT19zd2l0Y2hfdG9fZ2V0X21vZGUKKzAwMDZkNjAwIGcgICAgREYgLnRleHQJMDAwMDAwNDIgIEdMSUJDXzIuMS4xIF9fc3RybmNhdF9nCiswMDBlNTUzMCBnICAgIERGIC50ZXh0CTAwMDAwMDVhICBHTElCQ18yLjEgICBwYXNzd2QyZGVzCiswMDBhYjFlMCBnICAgIERGIC50ZXh0CTAwMDAwMDI2ICBHTElCQ18yLjIgICBwb3NpeF9zcGF3bl9maWxlX2FjdGlvbnNfZGVzdHJveQorMDAwZTk1YTAgZyAgICBERiAudGV4dAkwMDAwMDA0ZCAgR0xJQkNfMi4xICAgZ2V0bXNnCiswMDA0ODQxMCBnICAgIERGIC50ZXh0CTAwMDA1NjE1ICBHTElCQ18yLjAgICBfSU9fdmZzY2FuZgorMDAwZDhkMTAgZyAgICBERiAudGV4dAkwMDAwMDE2YyAgR0xJQkNfMi4wICAgYmluZHJlc3Zwb3J0CiswMDA1Njk2MCBnICAgIERGIC50ZXh0CTAwMDAwMWEzICBHTElCQ18yLjIgICBfSU9fZmdldHBvczY0CiswMDBkMGFmMCBnICAgIERGIC50ZXh0CTAwMDAwMDJkICBHTElCQ18yLjAgICBldGhlcl9hdG9uCiswMDBjZDNhMCBnICAgIERGIC50ZXh0CTAwMDAwMDBlICBHTElCQ18yLjAgICBodG9ucworMDAwMzVhYjAgIHcgICBERiAudGV4dAkwMDAwMDAyOSAgR0xJQkNfMi4wICAgY2Fub25pY2FsaXplX2ZpbGVfbmFtZQorMDAwMmRiZjAgZyAgICBERiAudGV4dAkwMDAwMDA1MiAgR0xJQkNfMi4wICAgX19zdHJ0b2ZfaW50ZXJuYWwKKzAwMGM2MjEwIGcgICAgREYgLnRleHQJMDAwMDAwMmEgIEdMSUJDXzIuMCAgIHB0aHJlYWRfbXV0ZXhfZGVzdHJveQorMDAxMWE4NDAgZyAgICBETyAuYnNzCTAwMDAwMDgwICBHTElCQ18yLjAgICBzdmNfZmRzZXQKKzAwMDIxNjgwICB3ICAgREYgLnRleHQJMDAwMDAwODQgIEdMSUJDXzIuMyAgIGZyZWVsb2NhbGUKKzAwMDI3MTEwIGcgICAgREYgLnRleHQJMDAwMDAwNmQgIEdMSUJDXzIuMCAgIGNhdGNsb3NlCiswMDExNTdhMCBnICAgIERPIC5kYXRhLnJlbC5ybwkwMDAwMDA4MCAoR0xJQkNfMi4wKSAgc3lzX3NpZ2FiYnJldgorMDAwYjhiNzAgZyAgICBERiAudGV4dAkwMDAwMDA3NSAgR0xJQkNfMi4wICAgbHNlYXJjaAorMDAwNzlmNjAgIHcgICBERiAudGV4dAkwMDAwMDA1MyAgR0xJQkNfMi4xICAgd2NzY2FzZWNtcAorMDAwNDgzZDAgIHcgICBERiAudGV4dAkwMDAwMDAzNyAgR0xJQkNfMi4wICAgdmZzY2FuZgorMDAwZjE2MzAgZyAgICBERiAudGV4dAkwMDAwMDEwMSAoR0xJQkNfMi4xKSAgZnNldHBvczY0CiswMDA3ZTExMCBnICAgIERGIC50ZXh0CTAwMDAwMDYyICBHTElCQ18yLjAgICBzdHJwdGltZQorMDAwZGQxNzAgZyAgICBERiAudGV4dAkwMDAwMDAzOSAgR0xJQkNfMi4yLjMgX19ycGNfdGhyZWFkX2NyZWF0ZWVycgorMDAwNWI2YzAgZyAgICBERiAudGV4dAkwMDAwMDBkMiAgR0xJQkNfMi4wICAgcmV3aW5kCiswMDAyYzYxMCAgdyAgIERGIC50ZXh0CTAwMDAwMDU4ICBHTElCQ18yLjAgICBzdHJ0b3VxCiswMDExNzI4NCBnICAgIERPIC5kYXRhCTAwMDAwMDA0ICBHTElCQ18yLjAgICByZV9tYXhfZmFpbHVyZXMKKzAwMDVhZTkwIGcgICAgREYgLnRleHQJMDAwMDAyOTYgIEdMSUJDXzIuMCAgIGZyZW9wZW4KKzAwMDY2ZTAwIGcgICAgREYgLnRleHQJMDAwMDAwZjggIEdMSUJDXzIuMCAgIG1jaGVjaworMDAwNTg5ZTAgZyAgICBERiAudGV4dAkwMDAwMDBlNyAgR0xJQkNfMi4yICAgX193dWZsb3cKKzAwMGEyODQwICB3ICAgREYgLnRleHQJMDAwMDAwMzcgIEdMSUJDXzIuMCAgIHJlX3NlYXJjaAorMDAwNWQwMDAgIHcgICBERiAudGV4dAkwMDAwMDAyOCAgR0xJQkNfMi4xICAgZmdldGNfdW5sb2NrZWQKKzAwMDhiMGYwIGcgICAgREYgLnRleHQJMDAwMDA2NzMgIEdMSUJDXzIuMiAgIF9fc3lzY29uZgorMDAwYmI4NDAgZyAgICBERiAudGV4dAkwMDAwMDBjNCAgR0xJQkNfUFJJVkFURSBfX2xpYmNfbXNncmN2CiswMDAyYmJmMCAgdyAgIERGIC50ZXh0CTAwMDAwMTE3ICBHTElCQ18yLjAgICBpbml0c3RhdGVfcgorMDAwYzYyODAgZyAgICBERiAudGV4dAkwMDAwMDAyYSAgR0xJQkNfMi4wICAgcHRocmVhZF9tdXRleF9sb2NrCiswMDBmNDE3MCBnICAgIERGIC50ZXh0CTAwMDAwMDVmIChHTElCQ18yLjApICBnZXRwcm90b2J5bnVtYmVyX3IKKzAwMDJiZDkwIGcgICAgREYgLnRleHQJMDAwMDAwMzQgIEdMSUJDXzIuMCAgIGRyYW5kNDgKKzAwMGIyN2MwIGcgICAgREYgLnRleHQJMDAwMDAwNDEgIEdMSUJDXzIuMCAgIHRjZ2V0cGdycAorMDAwZDViOTAgZyAgICBERiAudGV4dAkwMDAwMDA0NiAgR0xJQkNfMi4xICAgaWZfZnJlZW5hbWVpbmRleAorMDAwMjhhNDAgIHcgICBERiAudGV4dAkwMDAwMDA1MyAgR0xJQkNfMi4wICAgX19zaWdhY3Rpb24KKzAwMGNjOTIwIGcgICAgREYgLnRleHQJMDAwMDAwMzIgIEdMSUJDXzIuMy40IF9fc3ByaW50Zl9jaGsKKzAwMDI5NDcwIGcgICAgREYgLnRleHQJMDAwMDAwMzUgIEdMSUJDXzIuMCAgIHNpZ2FuZHNldAorMDAwMjJlZjAgIHcgICBERiAudGV4dAkwMDAwMDAyNCAgR0xJQkNfMi4wICAgZ2V0dGV4dAorMDAwNjY4NDAgZyAgICBERiAudGV4dAkwMDAwMDNiNyAgR0xJQkNfMi4wICAgX19saWJjX2NhbGxvYworMDAwNmFlZTAgZyAgICBERiAudGV4dAkwMDAwMDA1NCAgR0xJQkNfMi4wICAgX19hcmd6X3N0cmluZ2lmeQorMDAwMjgxNzAgZyAgICBERiAudGV4dAkwMDAwMDA1NSAgR0xJQkNfMi4wICAgX19pc2luZmwKKzAwMDJjMjMwICB3ICAgREYgLnRleHQJMDAwMDAwNmEgIEdMSUJDXzIuMCAgIGxjb25nNDhfcgorMDAxMTkxMTggZyAgICBETyAuYnNzCTAwMDAwMDA0ICBHTElCQ18yLjAgICBfX2N1cmJyaworMDAwNTc2OTAgZyAgICBERiAudGV4dAkwMDAwMDBlMSAgR0xJQkNfMi4yICAgdW5nZXR3YworMDAwNzAxNzAgZyAgICBERiAudGV4dAkwMDAwMDA1OSAgR0xJQkNfMi4wICAgX193Y3N0b2xfaW50ZXJuYWwKKzAwMDE1NjkwIGcgICAgREYgLnRleHQJMDAwMDAwMjMgKEdMSUJDXzIuMCkgIF9fZml4dW5zZGZkaQorMDAwMDAwMDAgICAgICBETyAqVU5EKgkwMDAwMDAwNCAgR0xJQkNfUFJJVkFURSBfX2xpYmNfZW5hYmxlX3NlY3VyZQorMDAwNmQ0NTAgZyAgICBERiAudGV4dAkwMDAwMDAzMCAgR0xJQkNfMi4xLjEgX19zdHJjcHlfZworMDAwYjE1MTAgZyAgICBERiAudGV4dAkwMDAwMDBhMiAgR0xJQkNfUFJJVkFURSBfX2xpYmNfcG9sbAorMDAwZTA4MTAgZyAgICBERiAudGV4dAkwMDAwMDAzZSAgR0xJQkNfMi4wICAgeGRyX2Zsb2F0CiswMDA1ZjljMCBnICAgIERGIC50ZXh0CTAwMDAwMDc2ICBHTElCQ18yLjAgICBfSU9fZG9hbGxvY2J1ZgorMDAwNjllNjAgZyAgICBERiAudGV4dAkwMDAwMDA0ZSAgR0xJQkNfMi4xICAgX19zdHJuY2FzZWNtcF9sCiswMDAwMDAwMCBnICAgIERPICpBQlMqCTAwMDAwMDAwICBHTElCQ18yLjIuMiBHTElCQ18yLjIuMgorMDAwNjA2NDAgIHcgICBERiAudGV4dAkwMDAwMDE3NyAgR0xJQkNfMi4yICAgX2ZsdXNobGJmCiswMDBjZTVjMCBnICAgIERGIC50ZXh0CTAwMDAwMGE0ICBHTElCQ18yLjAgICBnZXRob3N0ZW50CiswMDA4MDlhMCBnICAgIERGIC50ZXh0CTAwMDAwMDU5ICBHTElCQ18yLjIgICB3Y3NmdGltZQorMDAwY2ViZjAgZyAgICBERiAudGV4dAkwMDAwMDE0YyAgR0xJQkNfMi4wICAgZ2V0bmV0YnluYW1lCiswMDBkZDc2MCBnICAgIERGIC50ZXh0CTAwMDAwMDc0ICBHTElCQ18yLjAgICBzdmNfdW5yZWdpc3RlcgorMDAwMTU1YzAgZyAgICBERiAudGV4dAkwMDAwMDAyOCAgR0xJQkNfMi4wICAgX19lcnJub19sb2NhdGlvbgorMDAwMTU5NjAgZyAgICBERiAudGV4dAkwMDAwMDA3YyAoR0xJQkNfMi4wKSAgX19kaXZkaTMKKzAwMDM2ZGYwIGcgICAgREYgLnRleHQJMDAwMDAwNDIgIEdMSUJDXzIuMSAgIF9fc3RyZm1vbl9sCiswMDBhZGVkMCAgdyAgIERGIC50ZXh0CTAwMDAwMDNhICBHTElCQ18yLjAgICBsaW5rCiswMDBiYmE2MCBnICAgIERGIC50ZXh0CTAwMDAwMDYyICBHTElCQ18yLjIgICBzZW1jdGwKKzAwMGI5OGUwICB3ICAgREYgLnRleHQJMDAwMDAyMTAgIEdMSUJDXzIuMCAgIGdldF9ucHJvY3MKKzAwMDZhYzkwIGcgICAgREYgLnRleHQJMDAwMDAwNDQgIEdMSUJDXzIuMCAgIF9fYXJnel9uZXh0CiswMDA4Nzk0MCBnICAgIERGIC50ZXh0CTAwMDAwMmU1ICBHTElCQ19QUklWQVRFIF9uc3NfZmlsZXNfcGFyc2VfZ3JlbnQKKzAwMTE3NDg4IGcgICAgRE8gLmRhdGEJMDAwMDAwMDQgKEdMSUJDXzIuMikgIF9fY3R5cGUzMl90b2xvd2VyCiswMDA1YmI1MCAgdyAgIERGIC50ZXh0CTAwMDAwMGY1ICBHTElCQ18yLjAgICBfX3ZzbnByaW50ZgorMDAwNmU1MjAgZyAgICBERiAudGV4dAkwMDAwMDA1YiAgR0xJQkNfMi4wICAgd2NzZHVwCiswMDBiZTdhMCAgdyAgIERGIC50ZXh0CTAwMDAwMDVkICBHTElCQ18yLjMgICB0b3djdHJhbnNfbAorMDAwNjgwYzAgZyAgICBERiAudGV4dAkwMDAwMDA3OCAgR0xJQkNfMi4wICAgX29ic3RhY2tfZnJlZQorMDAwYmI5YzAgZyAgICBERiAudGV4dAkwMDAwMDA0ZiAgR0xJQkNfMi4wICAgc2Vtb3AKKzAwMDJhZjkwIGcgICAgREYgLnRleHQJMDAwMDAwZGIgIEdMSUJDXzIuMCAgIGV4aXQKKzAwMGM2MDYwIGcgICAgREYgLnRleHQJMDAwMDAwMzMgKEdMSUJDXzIuMCkgIHB0aHJlYWRfY29uZF9pbml0CiswMDExODY0NCAgdyAgIERPIC5ic3MJMDAwMDAwMDQgIEdMSUJDXzIuMCAgIF9fZnJlZV9ob29rCiswMDBjNjAzMCBnICAgIERGIC50ZXh0CTAwMDAwMDJhICBHTElCQ18yLjMuMiBwdGhyZWFkX2NvbmRfZGVzdHJveQorMDAwNmQ0MzAgZyAgICBERiAudGV4dAkwMDAwMDAxNiAgR0xJQkNfMi4xLjEgX19zdHJsZW5fZworMDAwYmRiYjAgZyAgICBERiAudGV4dAkwMDAwMDBiZSAgR0xJQkNfMi4wICAgdG93bG93ZXIKKzAwMDAwMDAwICB3ICAgRCAgKlVORCoJMDAwMDAwMDAgICAgICAgICAgICAgIF9fcHRocmVhZF9zZXRzcGVjaWZpYworMDAwNjlkMTAgZyAgICBERiAudGV4dAkwMDAwMDA2OCAgR0xJQkNfMi4wICAgX19zdHJjYXNlY21wCiswMDBiYjc4MCBnICAgIERGIC50ZXh0CTAwMDAwMGI1ICBHTElCQ19QUklWQVRFIF9fbGliY19tc2dzbmQKKzAwMGFiZTAwIGcgICAgREYgLnRleHQJMDAwMDAwOGQgIEdMSUJDXzIuMCAgIF9fZnhzdGF0CiswMDBkMTIwMCBnICAgIERGIC50ZXh0CTAwMDAwMDJkICBHTElCQ18yLjAgICBldGhlcl9udG9hCiswMDAyY2ZhMCAgdyAgIERGIC50ZXh0CTAwMDAwMDJlICBHTElCQ18yLjEgICBfX3N0cnRvdWxfbAorMDAwMmIyYzAgZyAgICBERiAudGV4dAkwMDAwMDAzMSAgR0xJQkNfMi4wICAgbGxhYnMKKzAwMDQzZDYwIGcgICAgREYgLnRleHQJMDAwMDAwMzQgIEdMSUJDXzIuMCAgIF9JT19zcHJpbnRmCiswMDBkNzRmMCBnICAgIERGIC50ZXh0CTAwMDAwMDlkICBHTElCQ18yLjMuMyBpbmV0Nl9vcHRpb25fbmV4dAorMDAwYmUzMjAgIHcgICBERiAudGV4dAkwMDAwMDA3ZCAgR0xJQkNfMi4zICAgaXN3Z3JhcGhfbAorMDAwMjJlNTAgIHcgICBERiAudGV4dAkwMDAwMDAxNSAgR0xJQkNfMi4wICAgYmluZHRleHRkb21haW4KKzAwMDdkOWUwIGcgICAgREYgLnRleHQJMDAwMDAwMzYgIEdMSUJDXzIuMCAgIHN0aW1lCiswMDBiOWU4MCBnICAgIERGIC50ZXh0CTAwMDAwMDNjICBHTElCQ18yLjMgICBmbGlzdHhhdHRyCiswMDBiYWFjMCBnICAgIERGIC50ZXh0CTAwMDAwMDNjICBHTElCQ18yLjAgICBrbG9nY3RsCiswMDA1OGM1MCBnICAgIERGIC50ZXh0CTAwMDAwMDgzICBHTElCQ18yLjIgICBfSU9fd3NldGIKKzAwMDI5MmIwIGcgICAgREYgLnRleHQJMDAwMDAwNDAgIEdMSUJDXzIuMCAgIHNpZ2RlbHNldAorMDAwMzVjNjAgZyAgICBERiAudGV4dAkwMDAwMDA3YyAgR0xJQkNfMi4wICAgcnBtYXRjaAorMDAwNWI3YTAgZyAgICBERiAudGV4dAkwMDAwMDAzMyAgR0xJQkNfMi4wICAgc2V0YnVmCiswMDAyODA2MCAgdyAgIERGIC50ZXh0CTAwMDAwMDZiICBHTElCQ18yLjAgICBmcmV4cGYKKzAwMGU1NjUwIGcgICAgREYgLnRleHQJMDAwMDAwYmIgIEdMSUJDXzIuMCAgIHhlbmNyeXB0CiswMDAyOTM5MCAgdyAgIERGIC50ZXh0CTAwMDAwMGE3ICBHTElCQ18yLjEgICBzeXN2X3NpZ25hbAorMDAwYzZiYzAgZyAgICBERiAudGV4dAkwMDAwMDI1NSAgR0xJQkNfMi4wICAgaW5ldF9udG9wCiswMDAyODNmMCAgdyAgIERGIC50ZXh0CTAwMDAwMDcyICBHTElCQ18yLjAgICBmcmV4cGwKKzAwMDIyNzIwICB3ICAgREYgLnRleHQJMDAwMDAwMTcgIEdMSUJDXzIuMyAgIGlzZGlnaXRfbAorMDAwYjMwNDAgIHcgICBERiAudGV4dAkwMDAwMDA0MiAgR0xJQkNfMi4wICAgYnJrCiswMDBiZDIyMCAgdyAgIERGIC50ZXh0CTAwMDAwMGQ1ICBHTElCQ18yLjAgICBpc3dhbG51bQorMDAwZGI0OTAgZyAgICBERiAudGV4dAkwMDAwMDBhYyAgR0xJQkNfMi4wICAgZ2V0X215YWRkcmVzcworMDAwNTdmMzAgZyAgICBERiAudGV4dAkwMDAwMDAyNCAgR0xJQkNfMi4yICAgc3dzY2FuZgorMDAwOGE3NTAgIHcgICBERiAudGV4dAkwMDAwMDAzNSAgR0xJQkNfMi4wICAgZ2V0cmVzZ2lkCiswMDAyMWQyMCBnICAgIERGIC50ZXh0CTAwMDAwMTk1ICBHTElCQ18yLjAgICBfX2Fzc2VydF9wZXJyb3JfZmFpbAorMDAwM2FkNDAgZyAgICBERiAudGV4dAkwMDAwNDE0YSAgR0xJQkNfMi4wICAgX0lPX3ZmcHJpbnRmCiswMDA4NzA2MCBnICAgIERGIC50ZXh0CTAwMDAwMTI1ICBHTElCQ18yLjAgICBnZXRncm5hbQorMDAxMWE4YzAgZyAgICBETyAuYnNzCTAwMDAwMDBjICBHTElCQ18yLjAgICBfbnVsbF9hdXRoCiswMDA2ZTQ3MCBnICAgIERGIC50ZXh0CTAwMDAwMDJlICBHTElCQ18yLjAgICB3Y3NjbXAKKzAwMGUxNGMwIGcgICAgREYgLnRleHQJMDAwMDAwN2YgIEdMSUJDXzIuMCAgIHhkcl9wb2ludGVyCiswMDBjZGYxMCBnICAgIERGIC50ZXh0CTAwMDAwMWEyICBHTElCQ18yLjAgICBnZXRob3N0YnluYW1lMgorMDAwYWIwYTAgIHcgICBERiAudGV4dAkwMDAwMDA5NCAgR0xJQkNfMi4xICAgX19wd3JpdGU2NAorMDAwNTYxZTAgZyAgICBERiAudGV4dAkwMDAwMDBlYSAgR0xJQkNfMi4wICAgX0lPX3NlZWtvZmYKKzAwMGJhNWMwIGcgICAgREYgLnRleHQJMDAwMDAwNmIgIEdMSUJDXzIuMy4zIGdudV9kZXZfbWFrZWRldgorMDAwNTZiNDAgZyAgICBERiAudGV4dAkwMDAwMDEzNyAgR0xJQkNfMi4yICAgZnNldHBvczY0CiswMDExYTZjYyBnICAgIERPIC5ic3MJMDAwMDAwMDQgIEdMSUJDXzIuMCAgIGVycm9yX29uZV9wZXJfbGluZQorMDAwZGRiNDAgZyAgICBERiAudGV4dAkwMDAwMDA2MiAgR0xJQkNfMi4xICAgX2F1dGhlbnRpY2F0ZQorMDAwMDAwMDAgICAgICBETyAqVU5EKgkwMDAwMDAwNCAgR0xJQkNfUFJJVkFURSBfZGxfYXJndgorMDAwMjI3YTAgIHcgICBERiAudGV4dAkwMDAwMDAxNSAgR0xJQkNfMi4zICAgaXNwdW5jdF9sCiswMDBiNzI5MCBnICAgIERGIC50ZXh0CTAwMDAwMDUwICBHTElCQ18yLjAgICBnY3Z0CiswMDBiYTc4MCAgdyAgIERGIC50ZXh0CTAwMDAwMDM2ICBHTElCQ18yLjEgICBudHBfYWRqdGltZQorMDAwNTQ4NDAgZyAgICBERiAudGV4dAkwMDAwMDAzMyAgR0xJQkNfMi4xICAgZm9wZW4KKzAwMDI5YjgwIGcgICAgREYgLnRleHQJMDAwMDAwMjggIEdMSUJDXzIuMCAgIGF0b2kKKzAwMDhkNDUwIGcgICAgREYgLnRleHQJMDAwMDAwNmEgIEdMSUJDXzIuMSAgIGdsb2JmcmVlNjQKKzAwMDZkOTEwIGcgICAgREYgLnRleHQJMDAwMDAwMzIgIEdMSUJDXzIuMS4xIF9fc3RycGJya19jZworMDAwMjIxNTAgZyAgICBERiAudGV4dAkwMDAwMDA3YiAgR0xJQkNfMi4wICAgaXNjbnRybAorMDAwYWZmMjAgZyAgICBERiAudGV4dAkwMDAwMDBlZiAgR0xJQkNfMi4wICAgZnRzX2Nsb3NlCiswMDA1Y2ZiMCBnICAgIERGIC50ZXh0CTAwMDAwMDEwICBHTElCQ18yLjAgICBmZXJyb3JfdW5sb2NrZWQKKzAwMDI3MTgwIGcgICAgREYgLnRleHQJMDAwMDAxODIgIEdMSUJDXzIuMCAgIGNhdG9wZW4KKzAwMDViNWQwIGcgICAgREYgLnRleHQJMDAwMDAwZTcgIEdMSUJDXzIuMCAgIF9JT19wdXRjCiswMDBmM2QwMCBnICAgIERGIC50ZXh0CTAwMDAwMDRmIChHTElCQ18yLjApICBtc2djdGwKKzAwMGJhNmYwIGcgICAgREYgLnRleHQJMDAwMDAwM2EgKEdMSUJDXzIuMCkgIHNldHJsaW1pdAorMDAwY2NhNzAgZyAgICBERiAudGV4dAkwMDAwMDEwMiAgR0xJQkNfMi4zLjQgX192c25wcmludGZfY2hrCiswMDBlOTlmMCAgdyAgIERGIC50ZXh0CTAwMDAwMDY5ICBHTElCQ18yLjAgICBnZXR1dGVudF9yCiswMDBmMjdkMCBnICAgIERGIC50ZXh0CTAwMDAwMWVkIChHTElCQ18yLjEpICBzY2FuZGlyNjQKKzAwMDVhZDcwIGcgICAgREYgLnRleHQJMDAwMDAwMjcgIEdMSUJDXzIuMCAgIGZpbGVubworMDAwYzRkZTAgIHcgICBERiAudGV4dAkwMDAwMGI1MCAgR0xJQkNfMi4xICAgYXJncF9wYXJzZQorMDAwYjY3NzAgZyAgICBERiAudGV4dAkwMDAwMDVjNyAgR0xJQkNfMi4wICAgdnN5c2xvZworMDAwMzcwZTAgZyAgICBERiAudGV4dAkwMDAwMDA3MiAgR0xJQkNfMi4xICAgYWRkc2V2ZXJpdHkKKzAwMGM1ZWUwIGcgICAgREYgLnRleHQJMDAwMDAwMzMgIEdMSUJDXzIuMCAgIHB0aHJlYWRfYXR0cl9zZXRzY2hlZHBvbGljeQorMDAwNjEyMjAgZyAgICBERiAudGV4dAkwMDAwMDA0MiAgR0xJQkNfMi4wICAgX0lPX3N0cl91bmRlcmZsb3cKKzAwMGQzNmQwIGcgICAgREYgLnRleHQJMDAwMDAwM2YgIEdMSUJDXzIuMCAgIHJleGVjCiswMDAyODY3MCBnICAgIERGIC50ZXh0CTAwMDAwMDIyICBHTElCQ18yLjAgICBfc2V0am1wCiswMDA1ZDJkMCBnICAgIERGIC50ZXh0CTAwMDAwMGEyICBHTElCQ18yLjEgICBmZ2V0c191bmxvY2tlZAorMDAwMjI5MzAgZyAgICBERiAudGV4dAkwMDAwMDA3MSAgR0xJQkNfMi4zICAgX19jdHlwZV90b3VwcGVyX2xvYworMDAwNzE5NDAgIHcgICBERiAudGV4dAkwMDAwMDAzZSAgR0xJQkNfMi4zICAgd2NzdG91bGxfbAorMDAwMjgxNjAgZyAgICBERiAudGV4dAkwMDAwMDAwZCAgR0xJQkNfMi4xICAgX19zaWduYml0ZgorMDAwNTMwODAgIHcgICBERiAudGV4dAkwMDAwMDAzYSAgR0xJQkNfMi4wICAgZ2V0bGluZQorMDAwNzNlYTAgIHcgICBERiAudGV4dAkwMDAwMDAzNyAgR0xJQkNfMi4zICAgd2NzdG9kX2wKKzAwMDZlY2MwICB3ICAgREYgLnRleHQJMDAwMDAwMzggIEdMSUJDXzIuMCAgIHdjcGNweQorMDAwZDAxNTAgZyAgICBERiAudGV4dAkwMDAwMDBhNiAgR0xJQkNfMi4wICAgZW5kc2VydmVudAorMDAwMDAwMDAgIHcgICBEICAqVU5EKgkwMDAwMDAwMCAgICAgICAgICAgICAgX0lPX3N0ZGluX3VzZWQKKzAwMDg5YTI4IGcgICAgREYgLnRleHQJMDAwMDAwMTMgIEdMSUJDXzIuMCAgIF9leGl0CiswMDBlNjg0MCBnICAgIERGIC50ZXh0CTAwMDAwMmM4ICBHTElCQ18yLjEgICBzdmN1bml4X2NyZWF0ZQorMDAwNmU0MDAgIHcgICBERiAudGV4dAkwMDAwMDAzNCAgR0xJQkNfMi4wICAgd2NzY2F0CiswMDA1NjM2MCBnICAgIERGIC50ZXh0CTAwMDAwMGUzICBHTElCQ18yLjAgICBfSU9fc2Vla3BvcworMDAwZjFhOTAgZyAgICBERiAudGV4dAkwMDAwMDNmMCAoR0xJQkNfMi4wKSAgX0lPX2ZpbGVfc2Vla29mZgorMDAwNTQ0MTAgZyAgICBERiAudGV4dAkwMDAwMDFiOCAgR0xJQkNfMi4yICAgZmdldHBvcworMDAwNzg3NzAgIHcgICBERiAudGV4dAkwMDAwMGVlOCAgR0xJQkNfMi4zICAgd2NzY29sbF9sCiswMDA2ODVkMCAgdyAgIERGIC50ZXh0CTAwMDAwMTQ2ICBHTElCQ18yLjEgICBzdHJ2ZXJzY21wCiswMDA4ODI0MCBnICAgIERGIC50ZXh0CTAwMDAwMGEyICBHTElCQ18yLjAgICBnZXRwd2VudAorMDAwN2FlYTAgZyAgICBERiAudGV4dAkwMDAwMDAzMyAgR0xJQkNfMi4wICAgZ210aW1lCiswMDA2OTMxMCBnICAgIERGIC50ZXh0CTAwMDAwMGFlICBHTElCQ18yLjAgICBzdHJzcG4KKzAwMDZlZjkwIGcgICAgREYgLnRleHQJMDAwMDAxNTUgIEdMSUJDXzIuMCAgIHdjdG9iCiswMDA1ZGY5MCBnICAgIERGIC50ZXh0CTAwMDAwMWNjICBHTElCQ18yLjEgICBfSU9fZmlsZV94c3B1dG4KKzAwMDUzZWYwIGcgICAgREYgLnRleHQJMDAwMDAxY2EgIEdMSUJDXzIuMSAgIF9JT19mY2xvc2UKKzAwMGI3MWUwIGcgICAgREYgLnRleHQJMDAwMDAwM2EgIEdMSUJDXzIuMCAgIG11bmxvY2sKKzAwMDUyOTgwIGcgICAgREYgLnRleHQJMDAwMDAwNzcgIEdMSUJDXzIuMCAgIHRlbXBuYW0KKzAwMGI2ZDkwIGcgICAgREYgLnRleHQJMDAwMDAxNjggIEdMSUJDXzIuMCAgIGRhZW1vbgorMDAwYjhlZDAgZyAgICBERiAudGV4dAkwMDAwMDBlZiAgR0xJQkNfMi4wICAgdndhcm54CiswMDBjNjI0MCBnICAgIERGIC50ZXh0CTAwMDAwMDMzICBHTElCQ18yLjAgICBwdGhyZWFkX211dGV4X2luaXQKKzAwMDE1MzIwIGcgICAgREYgLnRleHQJMDAwMDAwZTcgIEdMSUJDXzIuMCAgIF9fbGliY19zdGFydF9tYWluCiswMDAyODNlMCAgdyAgIERGIC50ZXh0CTAwMDAwMDBkICBHTElCQ18yLjEgICBzY2FsYmxubAorMDAwYWQwZjAgZyAgICBERiAudGV4dAkwMDAwMDA3OCAgR0xJQkNfUFJJVkFURSBfX2xpYmNfY3JlYXQKKzAwMGQwMDYwIGcgICAgREYgLnRleHQJMDAwMDAwZTIgIEdMSUJDXzIuMS4yIGdldHNlcnZlbnRfcgorMDAwNjhhMTAgZyAgICBERiAudGV4dAkwMDAwMDBhZiAgR0xJQkNfMi4wICAgc3RybGVuCiswMDBiYTNjMCAgdyAgIERGIC50ZXh0CTAwMDAwMDg3ICBHTElCQ18yLjEgICBsc2VlazY0CiswMDA2YWEwMCAgdyAgIERGIC50ZXh0CTAwMDAwMDc4ICBHTElCQ18yLjAgICBhcmd6X2FwcGVuZAorMDAwMjhiMzAgZyAgICBERiAudGV4dAkwMDAwMDAzNCAgR0xJQkNfMi4wICAgc2lncGVuZGluZworMDAwYWM4NDAgIHcgICBERiAudGV4dAkwMDAwMDA3YyAgR0xJQkNfMi4wICAgb3BlbgorMDAwYjQwNDAgZyAgICBERiAudGV4dAkwMDAwMDAzNiAgR0xJQkNfMi4wICAgdmhhbmd1cAorMDAwODYxNDAgZyAgICBERiAudGV4dAkwMDAwMDE4ZiAgR0xJQkNfMi4yICAgcmVhZGRpcjY0X3IKKzAwMGYyYjIwIGcgICAgREYgLnRleHQJMDAwMDAwMzcgKEdMSUJDXzIuMCkgIGdldHB3ZW50X3IKKzAwMTE3ZGI0ICB3ICAgRE8gLmRhdGEJMDAwMDAwMDQgIEdMSUJDXzIuMCAgIHByb2dyYW1faW52b2NhdGlvbl9uYW1lCiswMDBlNmU4MCBnICAgIERGIC50ZXh0CTAwMDAwMDNmICBHTElCQ18yLjEgICB4ZHJfdWludDMyX3QKKzAwMGFiYmIwIGcgICAgREYgLnRleHQJMDAwMDAwMTUgIEdMSUJDXzIuMiAgIHBvc2l4X3NwYXduYXR0cl9nZXRzY2hlZHBvbGljeQorMDAwYmEzMzAgIHcgICBERiAudGV4dAkwMDAwMDA4ZSAgR0xJQkNfMi4wICAgY2xvbmUKKzAwMGVkZmIwIGcgICAgREYgLnRleHQJMDAwMDAwNjMgIEdMSUJDX1BSSVZBVEUgX19saWJjX2Rsc3ltCiswMDAyMWVmMCBnICAgIERGIC50ZXh0CTAwMDAwMDY4ICBHTElCQ18yLjAgICB0b3VwcGVyCiswMDBlMDY0MCBnICAgIERGIC50ZXh0CTAwMDAwMWM3ICBHTElCQ18yLjAgICB4ZHJfYXJyYXkKKzAwMDU3YzEwIGcgICAgREYgLnRleHQJMDAwMDAwMzkgIEdMSUJDXzIuMiAgIHdwcmludGYKKzAwMDQ4M2QwIGcgICAgREYgLnRleHQJMDAwMDAwMzcgIEdMSUJDXzIuMCAgIF9fdmZzY2FuZgorMDAwZTQwOTAgZyAgICBERiAudGV4dAkwMDAwMDA2YyAgR0xJQkNfMi4wICAgeGRyX2NyeXB0a2V5YXJnMgorMDAwYWNkMDAgIHcgICBERiAudGV4dAkwMDAwMDBiMyAgR0xJQkNfMi4wICAgX19mY250bAorMDAwYjJhZTAgZyAgICBERiAudGV4dAkwMDAwMDAzMiAgR0xJQkNfMi4yICAgZ2V0cmxpbWl0CiswMDBiOWYwMCBnICAgIERGIC50ZXh0CTAwMDAwMDQ4ICBHTElCQ18yLjMgICBmc2V0eGF0dHIKKzAwMDI5YmUwIGcgICAgREYgLnRleHQJMDAwMDAwMjggIEdMSUJDXzIuMCAgIGF0b2xsCiswMDBlMzQxMCBnICAgIERGIC50ZXh0CTAwMDAwMDM3ICBHTElCQ18yLjEgICBkZXNfc2V0cGFyaXR5CiswMDBmMTM5MCBnICAgIERGIC50ZXh0CTAwMDAwMTgxIChHTElCQ18yLjEpICBmZ2V0cG9zNjQKKzAwMDdhZGEwIGcgICAgREYgLnRleHQJMDAwMDAwODggIEdMSUJDXzIuMCAgIGNsb2NrCiswMDA1MzBjMCBnICAgIERGIC50ZXh0CTAwMDAwMDQ5ICBHTElCQ18yLjAgICBnZXR3CiswMDBlM2RlMCBnICAgIERGIC50ZXh0CTAwMDAwMDY4ICBHTElCQ18yLjEgICB4ZHJfZ2V0Y3JlZHJlcworMDAwNmQ2ZTAgZyAgICBERiAudGV4dAkwMDAwMDAyMSAgR0xJQkNfMi4xLjEgX19zdHJjaHJfYworMDAwNzg1NzAgZyAgICBERiAudGV4dAkwMDAwMDA1MiAgR0xJQkNfMi4wICAgd2NzeGZybQorMDAwNWI5YjAgIHcgICBERiAudGV4dAkwMDAwMDBkYSAgR0xJQkNfMi4wICAgdmRwcmludGYKKzAwMDIxZWMwIGcgICAgREYgLnRleHQJMDAwMDAwMjUgIEdMSUJDXzIuMiAgIF9fYXNzZXJ0CiswMDA1ZmQzMCBnICAgIERGIC50ZXh0CTAwMDAwMDNmICBHTElCQ18yLjAgICBfSU9faW5pdAorMDAwMjI3NjAgIHcgICBERiAudGV4dAkwMDAwMDAxNyAgR0xJQkNfMi4zICAgaXNncmFwaF9sCiswMDA3NjNkMCAgdyAgIERGIC50ZXh0CTAwMDAwMDM3ICBHTElCQ18yLjEgICBfX3djc3RvbGRfbAorMDAxMTc0NzggZyAgICBETyAuZGF0YQkwMDAwMDAwNCAoR0xJQkNfMi4wKSAgX19jdHlwZV9iCiswMDBlYjg4MCAgdyAgIERGIC50ZXh0CTAwMDAwMzk4ICBHTElCQ18yLjEgICBwdHNuYW1lX3IKKzAwMDIxNTIwIGcgICAgREYgLnRleHQJMDAwMDAxNTkgIEdMSUJDXzIuMSAgIF9fZHVwbG9jYWxlCiswMDA5NGMwMCAgdyAgIERGIC50ZXh0CTAwMDAwMDYwICBHTElCQ18yLjAgICByZWdmcmVlCiswMDA2YWM5MCAgdyAgIERGIC50ZXh0CTAwMDAwMDQ0ICBHTElCQ18yLjAgICBhcmd6X25leHQKKzAwMDZlMjEwIGcgICAgREYgLnRleHQJMDAwMDAwNTEgIEdMSUJDXzIuMS4xIF9fc3Ryc2VwXzFjCiswMDA4OTk4MCBnICAgIERGIC50ZXh0CTAwMDAwMDU5ICBHTElCQ18yLjAgICBfX2ZvcmsKKzAwMDJiMzAwIGcgICAgREYgLnRleHQJMDAwMDAwNDQgIEdMSUJDXzIuMCAgIGRpdgorMDAwZWIwNzAgIHcgICBERiAudGV4dAkwMDAwMDEwZCAgR0xJQkNfMi4wICAgdXBkd3RtcAorMDAwMjI1ODAgIHcgICBERiAudGV4dAkwMDAwMDAxNSAgR0xJQkNfMi4zICAgaXNibGFua19sCiswMDBmM2E4MCBnICAgIERGIC50ZXh0CTAwMDAwMDQyIChHTElCQ18yLjApICByZWdleGVjCiswMDAyYjJhMCBnICAgIERGIC50ZXh0CTAwMDAwMDBkICBHTElCQ18yLjAgICBhYnMKKzAwMDcwNDcwIGcgICAgREYgLnRleHQJMDAwMDAwNTIgIEdMSUJDXzIuMCAgIF9fd2NzdG9kX2ludGVybmFsCiswMDA2ODJmMCBnICAgIERGIC50ZXh0CTAwMDAwMTY3ICBHTElCQ18yLjAgICBzdHJjaHIKKzAwMGU5YTYwICB3ICAgREYgLnRleHQJMDAwMDAwNGMgIEdMSUJDXzIuMCAgIHNldHV0ZW50CiswMDBmMjA3MCBnICAgIERGIC50ZXh0CTAwMDAwMDcyIChHTElCQ18yLjApICBfSU9fZmlsZV9hdHRhY2gKKzAwMDYwMGIwIGcgICAgREYgLnRleHQJMDAwMDAwMDcgIEdMSUJDXzIuMiAgIF9JT19pdGVyX2VuZAorMDAwNzg2NzAgZyAgICBERiAudGV4dAkwMDAwMDBmNSAgR0xJQkNfMi4wICAgd2Nzd2lkdGgKKzAwMGNjNTQwIGcgICAgREYgLnRleHQJMDAwMDAwNGUgIEdMSUJDXzIuMy40IF9fbWVtcGNweV9jaGsKKzAwMGUyNDgwIGcgICAgREYgLnRleHQJMDAwMDAwNjkgIEdMSUJDXzIuMSAgIHhkcl9hdXRoZGVzX3ZlcmYKKzAwMDU0YjUwICB3ICAgREYgLnRleHQJMDAwMDAxNDYgIEdMSUJDXzIuMCAgIGZwdXRzCiswMDA2YWNlMCBnICAgIERGIC50ZXh0CTAwMDAwMDgwICBHTElCQ18yLjAgICBhcmd6X2RlbGV0ZQorMDAxMWE4Y2MgZyAgICBETyAuYnNzCTAwMDAwMDA0ICBHTElCQ18yLjIgICBzdmNfbWF4X3BvbGxmZAorMDAwYmE3ODAgIHcgICBERiAudGV4dAkwMDAwMDAzNiAgR0xJQkNfMi4wICAgYWRqdGltZXgKKzAwMDg5ZmQwIGcgICAgREYgLnRleHQJMDAwMDAyZGUgIEdMSUJDXzIuMCAgIGV4ZWN2cAorMDAwZDBlYzAgZyAgICBERiAudGV4dAkwMDAwMDMzNCAgR0xJQkNfMi4wICAgZXRoZXJfbGluZQorMDAwYzVlNjAgZyAgICBERiAudGV4dAkwMDAwMDAzMyAgR0xJQkNfMi4wICAgcHRocmVhZF9hdHRyX3NldHNjaGVkcGFyYW0KKzAwMDc5ZmMwICB3ICAgREYgLnRleHQJMDAwMDAwNmMgIEdMSUJDXzIuMSAgIHdjc25jYXNlY21wCiswMDExNTdhMCBnICAgIERPIC5kYXRhLnJlbC5ybwkwMDAwMDEwNCAgR0xJQkNfMi4zLjMgc3lzX3NpZ2FiYnJldgorMDAwOGE2ZTAgIHcgICBERiAudGV4dAkwMDAwMDAyZSAgR0xJQkNfMi4wICAgc2V0c2lkCiswMDBlZTI5MCBnICAgIERGIC50ZXh0CTAwMDAwMDFmICBHTElCQ19QUklWQVRFIF9kbF9zeW0KKzAwMDVjYjEwIGcgICAgREYgLnRleHQJMDAwMDAwMzYgIEdMSUJDX1BSSVZBVEUgX19saWJjX2ZhdGFsCiswMDAzNTVkMCBnICAgIERGIC50ZXh0CTAwMDAwNGQ3ICBHTElCQ18yLjMgICByZWFscGF0aAorMDAwODgwYzAgZyAgICBERiAudGV4dAkwMDAwMDE3NSAgR0xJQkNfMi4wICAgcHV0cHdlbnQKKzAwMGIzMDkwIGcgICAgREYgLnRleHQJMDAwMDAwNzMgIEdMSUJDXzIuMCAgIF9fc2JyaworMDAwYjM3MTAgZyAgICBERiAudGV4dAkwMDAwMDA0ZCAgR0xJQkNfMi4wICAgc2V0ZWdpZAorMDAwYjcwMTAgIHcgICBERiAudGV4dAkwMDAwMDAzYyAgR0xJQkNfMi4wICAgbXByb3RlY3QKKzAwMDVlMzkwIGcgICAgREYgLnRleHQJMDAwMDAwODIgIEdMSUJDXzIuMSAgIF9JT19maWxlX2F0dGFjaAorMDAwYmE4NDAgZyAgICBERiAudGV4dAkwMDAwMDAzYSAgR0xJQkNfMi4xICAgY2Fwc2V0CiswMDBiMGM0MCBnICAgIERGIC50ZXh0CTAwMDAwMTI0ICBHTElCQ18yLjAgICBmdHNfY2hpbGRyZW4KKzAwMTFhOGQwIGcgICAgRE8gLmJzcwkwMDAwMDAxMCAgR0xJQkNfMi4wICAgcnBjX2NyZWF0ZWVycgorMDAwYWJjNTAgZyAgICBERiAudGV4dAkwMDAwMDAxZCAgR0xJQkNfMi4yICAgcG9zaXhfc3Bhd25hdHRyX3NldHNjaGVkcG9saWN5CiswMDBmMDk0MCBnICAgIERGIC50ZXh0CTAwMDAwMDVhIChHTElCQ18yLjApICBmb3BlbmNvb2tpZQorMDAxMWE2ZTggZyAgICBETyAuYnNzCTAwMDAwMDA0ICBHTElCQ18yLjEgICBhcmdwX3Byb2dyYW1fdmVyc2lvbl9ob29rCiswMDAyOGUzMCBnICAgIERGIC50ZXh0CTAwMDAwMDY5ICBHTElCQ18yLjAgICBfX3NpZ3BhdXNlCiswMDA4NTVlMCAgdyAgIERGIC50ZXh0CTAwMDAwMDg1ICBHTElCQ18yLjAgICBjbG9zZWRpcgorMDAwNThhZDAgZyAgICBERiAudGV4dAkwMDAwMDE3NSAgR0xJQkNfMi4yICAgX0lPX3dkZWZhdWx0X3BiYWNrZmFpbAorMDAwMjk3NzAgZyAgICBERiAudGV4dAkwMDAwMDA2OSAgR0xJQkNfUFJJVkFURSBfX2xpYmNfc2lnd2FpdGluZm8KKzAwMGI4ZWIwIGcgICAgREYgLnRleHQJMDAwMDAwMWQgIEdMSUJDXzIuMCAgIHdhcm4KKzAwMGJmNDMwIGcgICAgREYgLnRleHQJMDAwMDAzZjUgIEdMSUJDX1BSSVZBVEUgX25zc19maWxlc19wYXJzZV9zcGVudAorMDAwNTZkZjAgIHcgICBERiAudGV4dAkwMDAwMDBjZCAgR0xJQkNfMi4yICAgZmdldHdjCiswMDBjZWY4MCBnICAgIERGIC50ZXh0CTAwMDAwMGIyICBHTElCQ18yLjAgICBzZXRuZXRlbnQKKzAwMDUyMjUwICB3ICAgREYgLnRleHQJMDAwMDAwMzcgIEdMSUJDXzIuMiAgIHZmd3NjYW5mCiswMDBiZTcyMCAgdyAgIERGIC50ZXh0CTAwMDAwMDcxICBHTElCQ18yLjMgICB3Y3RyYW5zX2wKKzAwMDZlMGMwIGcgICAgREYgLnRleHQJMDAwMDAwNWYgIEdMSUJDXzIuMS4xIF9fc3RybmNweV9ieW4KKzAwMDJiM2EwICB3ICAgREYgLnRleHQJMDAwMDAwOTUgIEdMSUJDXzIuMS4xIGltYXhkaXYKKzAwMTE3Njk4IGcgICAgRE8gLmRhdGEJMDAwMDAwMDQgIEdMSUJDXzIuMCAgIF9JT19saXN0X2FsbAorMDAwYjliYzAgIHcgICBERiAudGV4dAkwMDAwMDA3YyAgR0xJQkNfMi4wICAgYWR2YW5jZQorMDAwYmE4ODAgZyAgICBERiAudGV4dAkwMDAwMDAzYyAgR0xJQkNfMi4wICAgY3JlYXRlX21vZHVsZQorMDAwNzAzYjAgIHcgICBERiAudGV4dAkwMDAwMDA1OCAgR0xJQkNfMi4wICAgd2NzdG91cQorMDAwZWUwMjAgZyAgICBERiAudGV4dAkwMDAwMDA1NCAgR0xJQkNfUFJJVkFURSBfX2xpYmNfZGxvcGVuX21vZGUKKzAwMDZkZmQwIGcgICAgREYgLnRleHQJMDAwMDAwMzEgIEdMSUJDXzIuMS4xIF9fbWVtY3B5X2MKKzAwMGI1ZjgwIGcgICAgREYgLnRleHQJMDAwMDAwMWQgIEdMSUJDXzIuMCAgIHNldHVzZXJzaGVsbAorMDAwNmI1ZDAgZyAgICBERiAudGV4dAkwMDAwMDA0NyAgR0xJQkNfMi4wICAgZW52el9yZW1vdmUKKzAwMDViODIwICB3ICAgREYgLnRleHQJMDAwMDAxODEgIEdMSUJDXzIuMCAgIHZhc3ByaW50ZgorMDAwYjlmNTAgZyAgICBERiAudGV4dAkwMDAwMDA0MiAgR0xJQkNfMi4zICAgZ2V0eGF0dHIKKzAwMGRlZGEwIGcgICAgREYgLnRleHQJMDAwMDAwMjUgIEdMSUJDXzIuMCAgIHN2Y3VkcF9jcmVhdGUKKzAwMGM1ZDYwIGcgICAgREYgLnRleHQJMDAwMDAwMzMgIEdMSUJDXzIuMCAgIHB0aHJlYWRfYXR0cl9zZXRkZXRhY2hzdGF0ZQorMDAwYmIxNjAgIHcgICBERiAudGV4dAkwMDAwMDA3OCAgR0xJQkNfMi4wICAgcmVjdm1zZworMDAwNWNmYzAgZyAgICBERiAudGV4dAkwMDAwMDAzYiAgR0xJQkNfMi4wICAgZnB1dGNfdW5sb2NrZWQKKzAwMDZhOGEwICB3ICAgREYgLnRleHQJMDAwMDAxNWYgIEdMSUJDXzIuMS4xIHN0cmNocm51bAorMDAxMWE4ZTAgZyAgICBETyAuYnNzCTAwMDAwMDA0ICBHTElCQ18yLjIgICBzdmNfcG9sbGZkCiswMDBkZTAyMCBnICAgIERGIC50ZXh0CTAwMDAwMTA1ICBHTElCQ18yLjAgICBzdmNfcnVuCiswMDAwMDAwMCAgICAgIERPICpVTkQqCTAwMDAwMDBlICBHTElCQ19QUklWQVRFIF9kbF9vdXRfb2ZfbWVtb3J5CiswMDA4NjUzMCBnICAgIERGIC50ZXh0CTAwMDAwMDI0ICBHTElCQ18yLjIgICBhbHBoYXNvcnQ2NAorMDAwNWM3YzAgZyAgICBERiAudGV4dAkwMDAwMDAwZiAgR0xJQkNfMi4yICAgX19md3JpdGluZworMDAwMjI3ZTAgZyAgICBERiAudGV4dAkwMDAwMDAxNyAgR0xJQkNfMi4xICAgX19pc3VwcGVyX2wKKzAwMDI4YjcwIGcgICAgREYgLnRleHQJMDAwMDAwYTIgIEdMSUJDX1BSSVZBVEUgX19saWJjX3NpZ3N1c3BlbmQKKzAwMGYzYmYwIGcgICAgREYgLnRleHQJMDAwMDAwMjQgKEdMSUJDXzIuMikgIHBvc2l4X2ZhZHZpc2U2NAorMDAxMWE4ZjAgZyAgICBETyAuYnNzCTAwMDAwMDA0ICBHTElCQ18yLjEgICBfX2tleV9kZWNyeXB0c2Vzc2lvbl9wa19MT0NBTAorMDAwYWNkMDAgIHcgICBERiAudGV4dAkwMDAwMDBiMyAgR0xJQkNfMi4wICAgZmNudGwKKzAwMDAwMDAwIGcgICAgRE8gKkFCUyoJMDAwMDAwMDAgIEdMSUJDXzIuMS4zIEdMSUJDXzIuMS4zCiswMDA3Yzg3MCAgdyAgIERGIC50ZXh0CTAwMDAwMDc0ICBHTElCQ18yLjAgICB0enNldAorMDAwY2Y4ZTAgZyAgICBERiAudGV4dAkwMDAwMDE2NSAgR0xJQkNfMi4xLjIgZ2V0cHJvdG9ieW5hbWVfcgorMDAwYTQ0NjAgIHcgICBERiAudGV4dAkwMDAwMDAyZSAgR0xJQkNfMi4wICAgc2NoZWRfeWllbGQKKzAwMGNmYjkwIGcgICAgREYgLnRleHQJMDAwMDAxNmMgIEdMSUJDXzIuMS4yIGdldHNlcnZieW5hbWVfcgorMDAwYmRkNzAgZyAgICBERiAudGV4dAkwMDAwMDA3MiAgR0xJQkNfMi4wICAgX19pc3djdHlwZQorMDAwNmRkYzAgZyAgICBERiAudGV4dAkwMDAwMDAyOCAgR0xJQkNfMi4xLjEgX19zdHJzcG5fYzMKKzAwMGVkYmEwIGcgICAgREYgLnRleHQJMDAwMDAyNjkgIEdMSUJDX1BSSVZBVEUgX2RsX2FkZHIKKzAwMDY2ZjAwIGcgICAgREYgLnRleHQJMDAwMDAwMzAgIEdMSUJDXzIuMiAgIG1jaGVja19wZWRhbnRpYworMDAwYmQwNjAgZyAgICBERiAudGV4dAkwMDAwMDAxMyAgR0xJQkNfMi4wICAgX21jb3VudAorMDAwMjg0NzAgIHcgICBERiAudGV4dAkwMDAwMDA4NCAgR0xJQkNfMi4wICAgbGRleHBsCiswMDA1NmQ4MCBnICAgIERGIC50ZXh0CTAwMDAwMDZlICBHTElCQ18yLjIgICBmcHV0d2NfdW5sb2NrZWQKKzAwMDhhNGQwICB3ICAgREYgLnRleHQJMDAwMDAwMmYgIEdMSUJDXzIuMCAgIHNldHVpZAorMDAwOGE1ZDAgIHcgICBERiAudGV4dAkwMDAwMDAzNiAgR0xJQkNfMi4wICAgZ2V0cGdpZAorMDAwYWM4YzAgIHcgICBERiAudGV4dAkwMDAwMDBkNCAgR0xJQkNfMi4yICAgX19vcGVuNjQKKzAwMDVmMWYwIGcgICAgREYgLnRleHQJMDAwMDA0MmIgIEdMSUJDXzIuMSAgIF9JT19maWxlX2ZvcGVuCiswMDAyYmVkMCBnICAgIERGIC50ZXh0CTAwMDAwMDM3ICBHTElCQ18yLjAgICBqcmFuZDQ4CiswMDA2MGI4MCBnICAgIERGIC50ZXh0CTAwMDAwMTM1ICBHTElCQ18yLjAgICBfSU9fdW5fbGluaworMDAwZWUzZjAgZyAgICBERiAudGV4dAkwMDAwMDAzNiAgR0xJQkNfMi4wICAgX19yZWdpc3Rlcl9mcmFtZV9pbmZvX3RhYmxlCiswMDA4NjM0MCBnICAgIERGIC50ZXh0CTAwMDAwMWVkICBHTElCQ18yLjIgICBzY2FuZGlyNjQKKzAwMDVlNDIwIGcgICAgREYgLnRleHQJMDAwMDAwYTQgIEdMSUJDXzIuMSAgIF9JT19maWxlX3dyaXRlCiswMDBiM2Q1MCBnICAgIERGIC50ZXh0CTAwMDAwMWZhICBHTElCQ18yLjAgICBnZXRob3N0aWQKKzAwMGY0MGIwIGcgICAgREYgLnRleHQJMDAwMDAwNDEgKEdMSUJDXzIuMCkgIGdldG5ldGVudF9yCiswMDA1YzUwMCBnICAgIERGIC50ZXh0CTAwMDAwMGUzICBHTElCQ18yLjEgICBmc2Vla282NAorMDAwYjk4ZTAgIHcgICBERiAudGV4dAkwMDAwMDIxMCAgR0xJQkNfMi4wICAgZ2V0X25wcm9jc19jb25mCiswMDBhZDM2MCBnICAgIERGIC50ZXh0CTAwMDAwMDc0ICBHTElCQ18yLjAgICBnZXR3ZAorMDAwYTI5YzAgIHcgICBERiAudGV4dAkwMDAwMDA0NyAgR0xJQkNfMi4wICAgcmVfZXhlYworMDAwZDc0OTAgZyAgICBERiAudGV4dAkwMDAwMDAxMSAgR0xJQkNfMi4zLjMgaW5ldDZfb3B0aW9uX3NwYWNlCiswMDBkYTljMCBnICAgIERGIC50ZXh0CTAwMDAwMzQwICBHTElCQ18yLjAgICBjbG50dWRwX2J1ZmNyZWF0ZQorMDAwNjA0OTAgZyAgICBERiAudGV4dAkwMDAwMDE0MiAgR0xJQkNfMi4wICAgX0lPX2RlZmF1bHRfcGJhY2tmYWlsCiswMDBiMjRmMCBnICAgIERGIC50ZXh0CTAwMDAwMjBjICBHTElCQ18yLjAgICB0Y3NldGF0dHIKKzAwMTE5YjUwICB3ICAgRE8gLmJzcwkwMDAwMDAwNCAoR0xJQkNfMi4wKSAgX2hfZXJybm8KKzAwMDZkNGMwIGcgICAgREYgLnRleHQJMDAwMDAwNDAgIEdMSUJDXzIuMS4xIF9fbWVtcGNweV9ieTIKKzAwMDI5NDQwIGcgICAgREYgLnRleHQJMDAwMDAwMmMgIEdMSUJDXzIuMCAgIHNpZ2lzZW1wdHlzZXQKKzAwMGFjODAwICB3ICAgREYgLnRleHQJMDAwMDAwM2EgIEdMSUJDXzIuMCAgIG1rZGlyCiswMDAyOGQxMCAgdyAgIERGIC50ZXh0CTAwMDAwMDdhICBHTElCQ18yLjAgICBzaWdzZXRtYXNrCiswMDA2NWI5MCAgdyAgIERGIC50ZXh0CTAwMDAwMDhjICBHTElCQ18yLjIgICBwb3NpeF9tZW1hbGlnbgorMDAwZWUzYjAgZyAgICBERiAudGV4dAkwMDAwMDAzNiAgR0xJQkNfMi4wICAgX19yZWdpc3Rlcl9mcmFtZV9pbmZvCiswMDBiYjkxMCBnICAgIERGIC50ZXh0CTAwMDAwMDRlICBHTElCQ18yLjAgICBtc2dnZXQKKzAwMGQ5ODIwIGcgICAgREYgLnRleHQJMDAwMDAxMjkgIEdMSUJDXzIuMCAgIGNsbnRyYXdfY3JlYXRlCiswMDBiZTllMCBnICAgIERGIC50ZXh0CTAwMDAwMTNhICBHTElCQ18yLjAgICBzZ2V0c3BlbnQKKzAwMDI4YzIwICB3ICAgREYgLnRleHQJMDAwMDAwNjYgIEdMSUJDXzIuMCAgIHNpZ3dhaXQKKzAwMDZmM2IwICB3ICAgREYgLnRleHQJMDAwMDAyYmMgIEdMSUJDXzIuMCAgIHdjcnRvbWIKKzAwMDZkZDAwIGcgICAgREYgLnRleHQJMDAwMDAwNTggIEdMSUJDXzIuMS4xIF9fc3RyY3Nwbl9jMworMDAwYWFlOTAgIHcgICBERiAudGV4dAkwMDAwMDA4MiAgR0xJQkNfMi4xICAgcHdyaXRlCiswMDAyN2UwMCAgdyAgIERGIC50ZXh0CTAwMDAwMDczICBHTElCQ18yLjAgICBmcmV4cAorMDAwYWM5YTAgIHcgICBERiAudGV4dAkwMDAwMDA3MSAgR0xJQkNfMi4wICAgY2xvc2UKKzAwMDQxODYwIGcgICAgREYgLnRleHQJMDAwMDAxMDggIEdMSUJDXzIuMCAgIHBhcnNlX3ByaW50Zl9mb3JtYXQKKzAwMGI3MjIwIGcgICAgREYgLnRleHQJMDAwMDAwMzYgIEdMSUJDXzIuMCAgIG1sb2NrYWxsCiswMDA3ODRlMCAgdyAgIERGIC50ZXh0CTAwMDAwMDM3ICBHTElCQ18yLjMgICB3Y3N0b2ZfbAorMDAwOGFhNDAgZyAgICBERiAudGV4dAkwMDAwMDAxNSAgR0xJQkNfMi4wICAgc2V0bG9naW4KKzAwMTE3NDdjIGcgICAgRE8gLmRhdGEJMDAwMDAwMDQgKEdMSUJDXzIuMCkgIF9fY3R5cGUzMl9iCiswMDBjNWUyMCBnICAgIERGIC50ZXh0CTAwMDAwMDMzICBHTElCQ18yLjAgICBwdGhyZWFkX2F0dHJfZ2V0c2NoZWRwYXJhbQorMDAwNjAwYzAgZyAgICBERiAudGV4dAkwMDAwMDAwYiAgR0xJQkNfMi4yICAgX0lPX2l0ZXJfbmV4dAorMDAwYWJmZjAgZyAgICBERiAudGV4dAkwMDAwMDAzMiAgR0xJQkNfMi4yICAgX19meHN0YXQ2NAorMDAwYmJhZDAgZyAgICBERiAudGV4dAkwMDAwMDA0YiAgR0xJQkNfMi4zLjMgc2VtdGltZWRvcAorMDAwMmI1NzAgZyAgICBERiAudGV4dAkwMDAwMDBjNCAgR0xJQkNfMi4wICAgbWJ0b3djCiswMDAyYzFhMCAgdyAgIERGIC50ZXh0CTAwMDAwMDM5ICBHTElCQ18yLjAgICBzcmFuZDQ4X3IKKzAwMTE3ZDgwICB3ICAgRE8gLmRhdGEJMDAwMDAwMDQgIEdMSUJDXzIuMCAgIF9fbWVtYWxpZ25faG9vaworMDAwODU5ZDAgZyAgICBERiAudGV4dAkwMDAwMDAwYiAgR0xJQkNfMi4wICAgdGVsbGRpcgorMDAwMjNkNDAgIHcgICBERiAudGV4dAkwMDAwMDA0OCAgR0xJQkNfMi4yICAgZGNuZ2V0dGV4dAorMDAwYjQ2MzAgZyAgICBERiAudGV4dAkwMDAwMDA3MCAgR0xJQkNfMi4wICAgZ2V0ZnNzcGVjCiswMDA1Y2JmMCBnICAgIERGIC50ZXh0CTAwMDAwMTNiICBHTElCQ18yLjIgICBmbWVtb3BlbgorMDAwYWI0MjAgZyAgICBERiAudGV4dAkwMDAwMDAwNyAgR0xJQkNfMi4yICAgcG9zaXhfc3Bhd25hdHRyX2Rlc3Ryb3kKKzAwMDNhZDQwIGcgICAgREYgLnRleHQJMDAwMDQxNGEgIEdMSUJDXzIuMCAgIHZmcHJpbnRmCiswMDA2OWM3MCBnICAgIERGIC50ZXh0CTAwMDAwMDkxICBHTElCQ18yLjAgICBfX3N0cG5jcHkKKzAwMTE3NjAwIGcgICAgRE8gLmRhdGEJMDAwMDAwOTggIEdMSUJDXzIuMSAgIF9JT18yXzFfc3RkZXJyXworMDAxMTdkYjQgZyAgICBETyAuZGF0YQkwMDAwMDAwNCAgR0xJQkNfMi4wICAgX19wcm9nbmFtZV9mdWxsCiswMDBjYzU5MCBnICAgIERGIC50ZXh0CTAwMDAwMGRiICBHTElCQ18yLjMuNCBfX21lbXNldF9jaGsKKzAwMDI4MjIwIGcgICAgREYgLnRleHQJMDAwMDAwMGUgIEdMSUJDXzIuMCAgIF9fZmluaXRlbAorMDAxMTU2ODAgZyAgICBETyAuZGF0YS5yZWwucm8JMDAwMDAxMDQgIEdMSUJDXzIuMy4zIF9zeXNfc2lnbGlzdAorMDAwNjhmYjAgZyAgICBERiAudGV4dAkwMDAwMDBiMyAgR0xJQkNfMi4wICAgc3RycGJyaworMDAwYjI4MTAgZyAgICBERiAudGV4dAkwMDAwMDAzMyAgR0xJQkNfMi4wICAgdGNzZXRwZ3JwCiswMDAwMDAwMCBnICAgIERPICpBQlMqCTAwMDAwMDAwICBHTElCQ18yLjMgICBHTElCQ18yLjMKKzAwMDAwMDAwICAgICAgRE8gKlVORCoJMDAwMDAwMDQgIEdMSUJDXzIuMSAgIF9fbGliY19zdGFja19lbmQKKzAwMDhlMTAwIGcgICAgREYgLnRleHQJMDAwMDBlNTggIEdMSUJDXzIuMiAgIGdsb2I2NAorMDAwY2I4ZjAgZyAgICBERiAudGV4dAkwMDAwMDA4YSAgR0xJQkNfMi4wICAgX19uc3NfcGFzc3dkX2xvb2t1cAorMDAwZGZjMDAgZyAgICBERiAudGV4dAkwMDAwMDAyYSAgR0xJQkNfMi4wICAgeGRyX2ludAorMDAwZGZjZDAgZyAgICBERiAudGV4dAkwMDAwMDBkNiAgR0xJQkNfMi4xLjEgeGRyX2h5cGVyCiswMDAyOGI3MCAgdyAgIERGIC50ZXh0CTAwMDAwMGEyICBHTElCQ18yLjAgICBzaWdzdXNwZW5kCiswMDA1NmM4MCBnICAgIERGIC50ZXh0CTAwMDAwMGZjICBHTElCQ18yLjIgICBmcHV0d2MKKzAwMDI4ODUwIGcgICAgREYgLnRleHQJMDAwMDAwNDYgIEdMSUJDXzIuMCAgIHJhaXNlCiswMDBiNDViMCBnICAgIERGIC50ZXh0CTAwMDAwMDcxICBHTElCQ18yLjAgICBnZXRmc2ZpbGUKKzAwMGIyOTAwIGcgICAgREYgLnRleHQJMDAwMDAwMzMgIEdMSUJDXzIuMCAgIHRjZmxvdworMDAwZDkxYjAgZyAgICBERiAudGV4dAkwMDAwMDA4NCAgR0xJQkNfMi4wICAgY2xudF9zcGVycm5vCiswMDAyMjdjMCBnICAgIERGIC50ZXh0CTAwMDAwMDE3ICBHTElCQ18yLjEgICBfX2lzc3BhY2VfbAorMDAwNWZmNzAgZyAgICBERiAudGV4dAkwMDAwMDA3YyAgR0xJQkNfMi4wICAgX0lPX3NlZWttYXJrCiswMDA2MzViMCBnICAgIERGIC50ZXh0CTAwMDAwMGI4ICBHTElCQ18yLjAgICBmcmVlCiswMDBiZGVkMCBnICAgIERGIC50ZXh0CTAwMDAwMDVkICBHTElCQ18yLjEgICBfX3Rvd2N0cmFucworMDAwYzk4NzAgZyAgICBERiAudGV4dAkwMDAwMDBiMCAgR0xJQkNfUFJJVkFURSBfX2dhaV9zaWdxdWV1ZQorMDAwZGZmNDAgZyAgICBERiAudGV4dAkwMDAwMDA2OCAgR0xJQkNfMi4wICAgeGRyX3Vfc2hvcnQKKzAwMGYwOGIwIGcgICAgREYgLnRleHQJMDAwMDAwM2QgKEdMSUJDXzIuMCkgIHJlYWxwYXRoCiswMDAyOGFhMCAgdyAgIERGIC50ZXh0CTAwMDAwMDRiICBHTElCQ18yLjAgICBzaWdwcm9jbWFzaworMDAwNTQ4NDAgZyAgICBERiAudGV4dAkwMDAwMDAzMyAgR0xJQkNfMi4xICAgX0lPX2ZvcGVuCiswMDBjNzUxMCBnICAgIERGIC50ZXh0CTAwMDAwMDcwICBHTElCQ18yLjIgICBfX3Jlc19uY2xvc2UKKzAwMGUzZTUwIGcgICAgREYgLnRleHQJMDAwMDAwNmMgIEdMSUJDXzIuMCAgIHhkcl9rZXlfbmV0c3RhcmcKKzAwMDZmMGYwICB3ICAgREYgLnRleHQJMDAwMDAwMTkgIEdMSUJDXzIuMCAgIG1ic2luaXQKKzAwMGJhZmEwIGcgICAgREYgLnRleHQJMDAwMDAwMzkgIEdMSUJDXzIuMCAgIGdldHNvY2tuYW1lCiswMDA1NmIxMCAgdyAgIERGIC50ZXh0CTAwMDAwMDMwICBHTElCQ18yLjEgICBmb3BlbjY0CiswMDBiZGRmMCAgdyAgIERGIC50ZXh0CTAwMDAwMGQyICBHTElCQ18yLjAgICB3Y3RyYW5zCiswMDBiNTUwMCAgdyAgIERGIC50ZXh0CTAwMDAwMDUwICBHTElCQ18yLjEgICBmdHJ1bmNhdGU2NAorCisKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90LzIwMF9EcGtnX1NobGlicy9vYmpkdW1wLmxpYmM2LTIuNiBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90LzIwMF9EcGtnX1NobGlicy9vYmpkdW1wLmxpYmM2LTIuNgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iYTY4ZDFjCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3QvMjAwX0Rwa2dfU2hsaWJzL29iamR1bXAubGliYzYtMi42CkBAIC0wLDAgKzEsMjM0NSBAQAorCisvbGliL2xpYmMuc28uNjogICAgIGZpbGUgZm9ybWF0IGVsZjMyLWkzODYKK2FyY2hpdGVjdHVyZTogaTM4NiwgZmxhZ3MgMHgwMDAwMDE1MDoKK0hBU19TWU1TLCBEWU5BTUlDLCBEX1BBR0VECitzdGFydCBhZGRyZXNzIDB4MDAwMTYxYjAKKworUHJvZ3JhbSBIZWFkZXI6CisgICAgUEhEUiBvZmYgICAgMHgwMDAwMDAzNCB2YWRkciAweDAwMDAwMDM0IHBhZGRyIDB4MDAwMDAwMzQgYWxpZ24gMioqMgorICAgICAgICAgZmlsZXN6IDB4MDAwMDAxNDAgbWVtc3ogMHgwMDAwMDE0MCBmbGFncyByLXgKKyAgSU5URVJQIG9mZiAgICAweDAwMTJkNTUwIHZhZGRyIDB4MDAxMmQ1NTAgcGFkZHIgMHgwMDEyZDU1MCBhbGlnbiAyKiowCisgICAgICAgICBmaWxlc3ogMHgwMDAwMDAxMyBtZW1zeiAweDAwMDAwMDEzIGZsYWdzIHItLQorICAgIExPQUQgb2ZmICAgIDB4MDAwMDAwMDAgdmFkZHIgMHgwMDAwMDAwMCBwYWRkciAweDAwMDAwMDAwIGFsaWduIDIqKjEyCisgICAgICAgICBmaWxlc3ogMHgwMDE0MGNhNCBtZW1zeiAweDAwMTQwY2E0IGZsYWdzIHIteAorICAgIExPQUQgb2ZmICAgIDB4MDAxNDExZjAgdmFkZHIgMHgwMDE0MTFmMCBwYWRkciAweDAwMTQxMWYwIGFsaWduIDIqKjEyCisgICAgICAgICBmaWxlc3ogMHgwMDAwMjc4YyBtZW1zeiAweDAwMDA1NDAwIGZsYWdzIHJ3LQorIERZTkFNSUMgb2ZmICAgIDB4MDAxNDJkOWMgdmFkZHIgMHgwMDE0MmQ5YyBwYWRkciAweDAwMTQyZDljIGFsaWduIDIqKjIKKyAgICAgICAgIGZpbGVzeiAweDAwMDAwMGYwIG1lbXN6IDB4MDAwMDAwZjAgZmxhZ3MgcnctCisgICAgTk9URSBvZmYgICAgMHgwMDAwMDE3NCB2YWRkciAweDAwMDAwMTc0IHBhZGRyIDB4MDAwMDAxNzQgYWxpZ24gMioqMgorICAgICAgICAgZmlsZXN6IDB4MDAwMDAwMjAgbWVtc3ogMHgwMDAwMDAyMCBmbGFncyByLS0KKyAgICAgVExTIG9mZiAgICAweDAwMTQxMWYwIHZhZGRyIDB4MDAxNDExZjAgcGFkZHIgMHgwMDE0MTFmMCBhbGlnbiAyKioyCisgICAgICAgICBmaWxlc3ogMHgwMDAwMDAwOCBtZW1zeiAweDAwMDAwMDJjIGZsYWdzIHItLQorRUhfRlJBTUUgb2ZmICAgIDB4MDAxMmQ1NjQgdmFkZHIgMHgwMDEyZDU2NCBwYWRkciAweDAwMTJkNTY0IGFsaWduIDIqKjIKKyAgICAgICAgIGZpbGVzeiAweDAwMDAyYTJjIG1lbXN6IDB4MDAwMDJhMmMgZmxhZ3Mgci0tCisgICBTVEFDSyBvZmYgICAgMHgwMDAwMDAwMCB2YWRkciAweDAwMDAwMDAwIHBhZGRyIDB4MDAwMDAwMDAgYWxpZ24gMioqMgorICAgICAgICAgZmlsZXN6IDB4MDAwMDAwMDAgbWVtc3ogMHgwMDAwMDAwMCBmbGFncyBydy0KKyAgIFJFTFJPIG9mZiAgICAweDAwMTQxMWY4IHZhZGRyIDB4MDAxNDExZjAgcGFkZHIgMHgwMDE0MTFmMCBhbGlnbiAyKiowCisgICAgICAgICBmaWxlc3ogMHgwMDAwMWM5NCBtZW1zeiAweDAwMDAxYzgwIGZsYWdzIHItLQorCitEeW5hbWljIFNlY3Rpb246CisgIE5FRURFRCAgICAgIGxkLWxpbnV4LnNvLjIKKyAgU09OQU1FICAgICAgbGliYy5zby42CisgIElOSVQgICAgICAgIDB4MTVlYTAKKyAgRklOSV9BUlJBWSAgMHgxNDExZjgKKyAgRklOSV9BUlJBWVNaIDB4NAorICBIQVNIICAgICAgICAweDEzZDk5YworICBHTlVfSEFTSCAgICAweDE5NAorICBTVFJUQUIgICAgICAweGM4NWMKKyAgU1lNVEFCICAgICAgMHgzYzRjCisgIFNUUlNaICAgICAgIDB4NTY3YQorICBTWU1FTlQgICAgICAweDEwCisgIFBMVEdPVCAgICAgIDB4MTQyZmY0CisgIFBMVFJFTFNaICAgIDB4NDAKKyAgUExUUkVMICAgICAgMHgxMQorICBKTVBSRUwgICAgICAweDE1ZDNjCisgIFJFTCAgICAgICAgIDB4MTMzNzQKKyAgUkVMU1ogICAgICAgMHgyOWM4CisgIFJFTEVOVCAgICAgIDB4OAorICBWRVJERUYgICAgICAweDEzMDU4CisgIFZFUkRFRk5VTSAgIDB4MTUKKyAgRkxBR1MgICAgICAgMHgxMAorICBWRVJORUVEICAgICAweDEzMzM0CisgIFZFUk5FRUROVU0gIDB4MQorICBWRVJTWU0gICAgICAweDExZWQ2CisgIFJFTENPVU5UICAgIDB4NGRiCisKK1ZlcnNpb24gZGVmaW5pdGlvbnM6CisxIDB4MDEgMHgwODY1ZjRlNiBsaWJjLnNvLjYKKzIgMHgwMCAweDBkNjk2OTEwIEdMSUJDXzIuMAorMyAweDAwIDB4MGQ2OTY5MTEgR0xJQkNfMi4xCisJR0xJQkNfMi4wIAorNCAweDAwIDB4MDk2OTFmNzEgR0xJQkNfMi4xLjEKKwlHTElCQ18yLjEgCis1IDB4MDAgMHgwOTY5MWY3MiBHTElCQ18yLjEuMgorCUdMSUJDXzIuMS4xIAorNiAweDAwIDB4MDk2OTFmNzMgR0xJQkNfMi4xLjMKKwlHTElCQ18yLjEuMiAKKzcgMHgwMCAweDBkNjk2OTEyIEdMSUJDXzIuMgorCUdMSUJDXzIuMS4zIAorOCAweDAwIDB4MDk2OTFhNzEgR0xJQkNfMi4yLjEKKwlHTElCQ18yLjIgCis5IDB4MDAgMHgwOTY5MWE3MiBHTElCQ18yLjIuMgorCUdMSUJDXzIuMi4xIAorMTAgMHgwMCAweDA5NjkxYTczIEdMSUJDXzIuMi4zCisJR0xJQkNfMi4yLjIgCisxMSAweDAwIDB4MDk2OTFhNzQgR0xJQkNfMi4yLjQKKwlHTElCQ18yLjIuMyAKKzEyIDB4MDAgMHgwOTY5MWE3NiBHTElCQ18yLjIuNgorCUdMSUJDXzIuMi40IAorMTMgMHgwMCAweDBkNjk2OTEzIEdMSUJDXzIuMworCUdMSUJDXzIuMi42IAorMTQgMHgwMCAweDA5NjkxOTcyIEdMSUJDXzIuMy4yCisJR0xJQkNfMi4zIAorMTUgMHgwMCAweDA5NjkxOTczIEdMSUJDXzIuMy4zCisJR0xJQkNfMi4zLjIgCisxNiAweDAwIDB4MDk2OTE5NzQgR0xJQkNfMi4zLjQKKwlHTElCQ18yLjMuMyAKKzE3IDB4MDAgMHgwZDY5NjkxNCBHTElCQ18yLjQKKwlHTElCQ18yLjMuNCAKKzE4IDB4MDAgMHgwZDY5NjkxNSBHTElCQ18yLjUKKwlHTElCQ18yLjQgCisxOSAweDAwIDB4MGQ2OTY5MTYgR0xJQkNfMi42CisJR0xJQkNfMi41IAorMjAgMHgwMCAweDA5NjNjZjg1IEdMSUJDX1BSSVZBVEUKKwlHTElCQ18yLjYgCisyMSAweDAwIDB4MGI3OTI2NTAgR0NDXzMuMAorCitWZXJzaW9uIFJlZmVyZW5jZXM6CisgIHJlcXVpcmVkIGZyb20gbGQtbGludXguc28uMjoKKyAgICAweDA5NjNjZjg1IDB4MDAgMjQgR0xJQkNfUFJJVkFURQorICAgIDB4MGQ2OTY5MTMgMHgwMCAyMyBHTElCQ18yLjMKKyAgICAweDBkNjk2OTExIDB4MDAgMjIgR0xJQkNfMi4xCisKK0RZTkFNSUMgU1lNQk9MIFRBQkxFOgorMDAwMDAwMDAgIHcgICBEICAqVU5EKgkwMDAwMDAwMCAgICAgICAgICAgICAgX0lPX3N0ZGluX3VzZWQKKzAwMDAwMDAwICB3ICAgRCAgKlVORCoJMDAwMDAwMDAgICAgICAgICAgICAgIF9kbF9zdGFydGluZ191cAorMDAwMDAwMDAgICAgICBETyAqVU5EKgkwMDAwMDAwNCAgR0xJQkNfMi4xICAgX19saWJjX3N0YWNrX2VuZAorMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDEzNSAgR0xJQkNfMi4zICAgX19fdGxzX2dldF9hZGRyCiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDg1ICBHTElCQ19QUklWQVRFIF9kbF90bHNfZ2V0X2FkZHJfc29mdAorMDAwMDAwMDAgICAgICBETyAqVU5EKgkwMDAwMDFjMCAgR0xJQkNfUFJJVkFURSBfcnRsZF9nbG9iYWxfcm8KKzAwMDAwMDAwICAgICAgRE8gKlVORCoJMDAwMDAwMDQgIEdMSUJDX1BSSVZBVEUgX19saWJjX2VuYWJsZV9zZWN1cmUKKzAwMDAwMDAwICAgICAgRE8gKlVORCoJMDAwMDAwMDQgIEdMSUJDX1BSSVZBVEUgX2RsX2FyZ3YKKzAwMDAwMDAwICAgICAgRE8gKlVORCoJMDAwMDA1ODggIEdMSUJDX1BSSVZBVEUgX3J0bGRfZ2xvYmFsCiswMDA3NTZkMCBnICAgIERGIC50ZXh0CTAwMDAwMDIzICBHTElCQ18yLjEuMSBfX3N0cnNwbl9jMQorMDAwNWJjOTAgZyAgICBERiAudGV4dAkwMDAwMDEwMSAgR0xJQkNfMi4yICAgcHV0d2NoYXIKKzAwMGU4OTUwIGcgICAgREYgLnRleHQJMDAwMDAwMzQgIEdMSUJDXzIuNCAgIF9fZ2V0aG9zdG5hbWVfY2hrCiswMDA3NTcwMCBnICAgIERGIC50ZXh0CTAwMDAwMDI1ICBHTElCQ18yLjEuMSBfX3N0cnNwbl9jMgorMDAwZWM4ODAgZyAgICBERiAudGV4dAkwMDAwMDBhOCAgR0xJQkNfMi4wICAgc2V0cnBjZW50CiswMDA3Yjc2MCAgdyAgIERGIC50ZXh0CTAwMDAwMDM5ICBHTElCQ18yLjEgICBfX3djc3RvZF9sCiswMDA3NTczMCBnICAgIERGIC50ZXh0CTAwMDAwMDJhICBHTElCQ18yLjEuMSBfX3N0cnNwbl9jMworMDAwYjc2NDAgIHcgICBERiAudGV4dAkwMDAwMDAzNCAgR0xJQkNfMi4wICAgc2NoZWRfZ2V0X3ByaW9yaXR5X21pbgorMDAwZDMyYjAgZyAgICBERiAudGV4dAkwMDAwMDAzNCAgR0xJQkNfMi4zLjIgZXBvbGxfY3JlYXRlCiswMDBlODk5MCBnICAgIERGIC50ZXh0CTAwMDAwMDI0ICBHTElCQ18yLjQgICBfX2dldGRvbWFpbm5hbWVfY2hrCiswMDBkMzU5MCBnICAgIERGIC50ZXh0CTAwMDAwMDNhICBHTElCQ18yLjAgICBrbG9nY3RsCiswMDAyM2ViMCBnICAgIERGIC50ZXh0CTAwMDAwMDExICBHTElCQ18yLjEgICBfX3RvbG93ZXJfbAorMDAwNDY2MzAgZyAgICBERiAudGV4dAkwMDAwMDAzNCAgR0xJQkNfMi4wICAgZHByaW50ZgorMDAwODAwYjAgZyAgICBERiAudGV4dAkwMDAwMGVmMyAgR0xJQkNfMi4xICAgX193Y3Njb2xsX2wKKzAwMDkzNTkwICB3ICAgREYgLnRleHQJMDAwMDAwNzAgIEdMSUJDXzIuMCAgIHNldHVpZAorMDAwZDVmZTAgIHcgICBERiAudGV4dAkwMDAwMDBjYiAgR0xJQkNfMi4wICAgaXN3YWxwaGEKKzAwMDgzNWEwIGcgICAgREYgLnRleHQJMDAwMDAwMzggIEdMSUJDXzIuMCAgIF9fZ2V0dGltZW9mZGF5CiswMDBmMGNiMCBnICAgIERGIC50ZXh0CTAwMDAwMDdjICBHTElCQ19QUklWQVRFIF9faW50ZXJuYWxfZW5kbmV0Z3JlbnQKKzAwMGNiY2EwIGcgICAgREYgLnRleHQJMDAwMDAwMzQgIEdMSUJDXzIuMCAgIGNocm9vdAorMDAxNDQ3YzAgIHcgICBETyAuYnNzCTAwMDAwMDA0ICBHTElCQ18yLjAgICBkYXlsaWdodAorMDAxMGUyYjAgZyAgICBERiAudGV4dAkwMDAwMDA2MyAoR0xJQkNfMi4wKSAgX0lPX2ZpbGVfc2V0YnVmCiswMDA2M2IxMCBnICAgIERGIC50ZXh0CTAwMDAwMDYzICBHTElCQ18yLjEgICBfSU9fZmlsZV9zZXRidWYKKzAwMDg2MWYwIGcgICAgREYgLnRleHQJMDAwMDAwNTIgIEdMSUJDXzIuMSAgIGdldGRhdGUKKzAwMGU4MDkwIGcgICAgREYgLnRleHQJMDAwMDAxMDcgIEdMSUJDXzIuNCAgIF9fdnN3cHJpbnRmX2NoaworMDAxMGUzMjAgZyAgICBERiAudGV4dAkwMDAwMDE1ZCAoR0xJQkNfMi4wKSAgX0lPX2ZpbGVfZm9wZW4KKzAwMGRmNjQwIGcgICAgREYgLnRleHQJMDAwMDAwM2MgIEdMSUJDXzIuMy4yIHB0aHJlYWRfY29uZF9zaWduYWwKKzAwMTExMjQwIGcgICAgREYgLnRleHQJMDAwMDAwM2MgKEdMSUJDXzIuMCkgIHB0aHJlYWRfY29uZF9zaWduYWwKKzAwMDYzZDMwIGcgICAgREYgLnRleHQJMDAwMDA1ZTAgIEdMSUJDXzIuMSAgIF9JT19maWxlX2ZvcGVuCiswMDAyZmI3MCAgdyAgIERGIC50ZXh0CTAwMDAwMDMwICBHTElCQ18yLjMgICBzdHJ0b3VsbF9sCiswMDBmYzZiMCBnICAgIERGIC50ZXh0CTAwMDAwMDY4ICBHTElCQ18yLjAgICB4ZHJfc2hvcnQKKzAwMDU5YTMwIGcgICAgREYgLnRleHQJMDAwMDAwZTkgIEdMSUJDXzIuMCAgIF9JT19wYWRuCiswMDBkMTc0MCBnICAgIERGIC50ZXh0CTAwMDAwMDQ4ICBHTElCQ18yLjAgICBsZmluZAorMDAwNzFhMDAgIHcgICBERiAudGV4dAkwMDAwMDE1MSAgR0xJQkNfMi4xICAgc3RyY2FzZXN0cgorMDAwOTI3NDAgZyAgICBERiAudGV4dAkwMDAwMDJlMyAgR0xJQkNfUFJJVkFURSBfX2xpYmNfZm9yaworMDAxMDM1NzAgZyAgICBERiAudGV4dAkwMDAwMDBiYyAgR0xJQkNfMi4xLjEgeGRyX2ludDY0X3QKKzAwMDdiNzYwICB3ICAgREYgLnRleHQJMDAwMDAwMzkgIEdMSUJDXzIuMyAgIHdjc3RvZF9sCiswMDBkM2VlMCAgdyAgIERGIC50ZXh0CTAwMDAwMDM3ICBHTElCQ18yLjAgICBzb2NrZXQKKzAwMTAwMzYwIGcgICAgREYgLnRleHQJMDAwMDAwODEgIEdMSUJDXzIuMSAgIGtleV9lbmNyeXB0c2Vzc2lvbl9waworMDAwNzIwOTAgIHcgICBERiAudGV4dAkwMDAwMDA5NSAgR0xJQkNfMi4wICAgYXJnel9jcmVhdGUKKzAwMDc1MmQwIGcgICAgREYgLnRleHQJMDAwMDAwNDUgIEdMSUJDXzIuMS4xIF9fc3RycGJya19nCiswMDA1YmYyMCBnICAgIERGIC50ZXh0CTAwMDAwMDQ5ICBHTElCQ18yLjAgICBwdXRjaGFyX3VubG9ja2VkCiswMDBmODk2MCBnICAgIERGIC50ZXh0CTAwMDAwMGYzICBHTElCQ18yLjAgICB4ZHJfcG1hcGxpc3QKKzAwMGUzNzkwIGcgICAgREYgLnRleHQJMDAwMDAwZjcgIEdMSUJDXzIuMiAgIF9fcmVzX2luaXQKKzAwMDM5MzQwIGcgICAgREYgLnRleHQJMDAwMDAwOTUgIEdMSUJDXzIuMCAgIF9feHBnX2Jhc2VuYW1lCiswMDBlNjk4MCBnICAgIERGIC50ZXh0CTAwMDAwMDMzICBHTElCQ18yLjMuNCBfX3N0cGNweV9jaGsKKzAwMDVmYzYwICB3ICAgREYgLnRleHQJMDAwMDAwZTcgIEdMSUJDXzIuMCAgIGdldGMKKzAwMDVkMGEwIGcgICAgREYgLnRleHQJMDAwMDAxMzMgIEdMSUJDXzIuMiAgIF9JT193ZGVmYXVsdF94c3B1dG4KKzAwMDc2NzcwICB3ICAgREYgLnRleHQJMDAwMDAwYmMgIEdMSUJDXzIuMCAgIHdjcG5jcHkKKzAwMGNjMjEwIGcgICAgREYgLnRleHQJMDAwMDAwM2QgIEdMSUJDXzIuMiAgIG1rZHRlbXAKKzAwMDJlMTkwICB3ICAgREYgLnRleHQJMDAwMDAwMzkgIEdMSUJDXzIuMCAgIHNyYW5kNDhfcgorMDAwMmI1MjAgZyAgICBERiAudGV4dAkwMDAwMDA3OCAgR0xJQkNfMi4xICAgc2lnaG9sZAorMDAwNmRjNTAgZyAgICBERiAudGV4dAkwMDAwMDAyMiAgR0xJQkNfMi4wICAgX19kZWZhdWx0X21vcmVjb3JlCiswMDBiNzUxMCBnICAgIERGIC50ZXh0CTAwMDAwMDM4ICBHTElCQ18yLjAgICBfX3NjaGVkX2dldHBhcmFtCiswMDBlZjVlMCBnICAgIERGIC50ZXh0CTAwMDAwMDc2ICBHTElCQ18yLjAgICBpcnVzZXJvaworMDAwM2JmMzAgZyAgICBERiAudGV4dAkwMDAwMDA5YiAgR0xJQkNfMi4wICAgY3VzZXJpZAorMDAwMjk0NDAgIHcgICBERiAudGV4dAkwMDAwMDAyNyAgR0xJQkNfMi4wICAgaXNuYW4KKzAwMDJkOGUwICB3ICAgREYgLnRleHQJMDAwMDAxMDYgIEdMSUJDXzIuMCAgIHNldHN0YXRlX3IKKzAwMDc2NmUwIGcgICAgREYgLnRleHQJMDAwMDAwNDUgIEdMSUJDXzIuMCAgIHdtZW1zZXQKKzAwMTA5ZjYwIGcgICAgREYgLnRleHQJMDAwMDAwODYgIEdDQ18zLjAgICAgIF9fcmVnaXN0ZXJfZnJhbWVfaW5mb19iYXNlcworMDAwMDAwMDAgZyAgICBETyAqQUJTKgkwMDAwMDAwMCAgR0NDXzMuMCAgICAgR0NDXzMuMAorMDAwNjMyNzAgZyAgICBERiAudGV4dAkwMDAwMDAyNSAgR0xJQkNfMi4wICAgX0lPX2ZpbGVfc3RhdAorMDAwNzI1ODAgIHcgICBERiAudGV4dAkwMDAwMDM4ZiAgR0xJQkNfMi4wICAgYXJnel9yZXBsYWNlCiswMDA5NzMyMCBnICAgIERGIC50ZXh0CTAwMDAwMDZhICBHTElCQ18yLjEgICBnbG9iZnJlZTY0CiswMDBkZjAzMCAgdyAgIERGIC50ZXh0CTAwMDAwMDM3ICBHTElCQ18yLjEgICBhcmdwX3VzYWdlCiswMDEyZDUwOCBnICAgIERPIC5yb2RhdGEJMDAwMDAwMDQgKEdMSUJDXzIuMSkgIF9zeXNfbmVycgorMDAxMmQ1MGMgZyAgICBETyAucm9kYXRhCTAwMDAwMDA0IChHTElCQ18yLjMpICBfc3lzX25lcnIKKzAwMTJkNTAwIGcgICAgRE8gLnJvZGF0YQkwMDAwMDAwNCAgR0xJQkNfMi40ICAgX3N5c19uZXJyCiswMDEyZDUwNCBnICAgIERPIC5yb2RhdGEJMDAwMDAwMDQgKEdMSUJDXzIuMCkgIF9zeXNfbmVycgorMDAwNzIyMTAgIHcgICBERiAudGV4dAkwMDAwMDA0NiAgR0xJQkNfMi4wICAgYXJnel9uZXh0CiswMDE0NjMzNCBnICAgIERPIC5ic3MJMDAwMDAwMDQgIEdMSUJDXzIuMSAgIGdldGRhdGVfZXJyCiswMDExMTExMCBnICAgIERGIC50ZXh0CTAwMDAwMDVmIChHTElCQ18yLjApICBnZXRzcG5hbV9yCiswMDBkN2ViMCBnICAgIERGIC50ZXh0CTAwMDAwMTdkICBHTElCQ18yLjEuMiBnZXRzcG5hbV9yCiswMDA5Mjc0MCBnICAgIERGIC50ZXh0CTAwMDAwMmUzICBHTElCQ18yLjAgICBfX2ZvcmsKKzAwMGI3NWQwIGcgICAgREYgLnRleHQJMDAwMDAwMmMgIEdMSUJDXzIuMCAgIF9fc2NoZWRfeWllbGQKKzAwMGUzNzkwICB3ICAgREYgLnRleHQJMDAwMDAwZjcgKEdMSUJDXzIuMCkgIHJlc19pbml0CiswMDA4MmE3MCBnICAgIERGIC50ZXh0CTAwMDAwMDMyICBHTElCQ18yLjAgICBfX2dtdGltZV9yCiswMDAzN2UzMCBnICAgIERGIC50ZXh0CTAwMDAwMDRmICBHTElCQ18yLjAgICBsNjRhCiswMDA2MjEzMCBnICAgIERGIC50ZXh0CTAwMDAwMDk0ICBHTElCQ18yLjEgICBfSU9fZmlsZV9hdHRhY2gKKzAwMTBkYTMwIGcgICAgREYgLnRleHQJMDAwMDAwODUgKEdMSUJDXzIuMCkgIF9JT19maWxlX2F0dGFjaAorMDAwNzUzNjAgZyAgICBERiAudGV4dAkwMDAwMDA0NiAgR0xJQkNfMi4xLjEgX19zdHJzdHJfZworMDAwOGIwZDAgIHcgICBERiAudGV4dAkwMDAwMjUxNyAgR0xJQkNfMi4zICAgd2NzZnRpbWVfbAorMDAwNTk4OTAgIHcgICBERiAudGV4dAkwMDAwMDE4MCAgR0xJQkNfMi4wICAgZ2V0cworMDAwNjFkODAgZyAgICBERiAudGV4dAkwMDAwMDAzNiAgR0xJQkNfMi4wICAgcHV0Y191bmxvY2tlZAorMDAwZWM0NDAgZyAgICBERiAudGV4dAkwMDAwMDEyZCAgR0xJQkNfMi4wICAgZ2V0cnBjYnluYW1lCiswMDA1ODI4MCAgdyAgIERGIC50ZXh0CTAwMDAwMGY4ICBHTElCQ18yLjAgICBmZmx1c2gKKzAwMGZhNmUwIGcgICAgREYgLnRleHQJMDAwMDAwNjIgIEdMSUJDXzIuMSAgIF9hdXRoZW50aWNhdGUKKzAwMDM3ZDQwIGcgICAgREYgLnRleHQJMDAwMDAwZTQgIEdMSUJDXzIuMCAgIGE2NGwKKzAwMGQwYTIwIGcgICAgREYgLnRleHQJMDAwMDAwMmQgIEdMSUJDXzIuMCAgIGhjcmVhdGUKKzAwMDZmYTUwIGcgICAgREYgLnRleHQJMDAwMDAwMjIgIEdMSUJDXzIuMCAgIHN0cmNweQorMDAwMTVlODAgZyAgICBERiAudGV4dAkwMDAwMDAwNSAgR0xJQkNfMi4wICAgX19saWJjX2luaXRfZmlyc3QKKzAwMGZjM2IwIGcgICAgREYgLnRleHQJMDAwMDAwNDEgIEdMSUJDXzIuMCAgIHhkcl9sb25nCiswMDBkNDgwMCBnICAgIERGIC50ZXh0CTAwMDAwMDYyICBHTElCQ18yLjAgICBzaG1nZXQKKzAwMDJhNjQwICB3ICAgREYgLnRleHQJMDAwMDAwYTcgIEdMSUJDXzIuMCAgIHNpZ3N1c3BlbmQKKzAwMDVlNzAwIGcgICAgREYgLnRleHQJMDAwMDAxNzAgIEdMSUJDXzIuMiAgIF9JT193ZG9fd3JpdGUKKzAwMDU2OTkwIGcgICAgREYgLnRleHQJMDAwMDAwNDkgIEdMSUJDXzIuMCAgIGdldHcKKzAwMGNiZTUwIGcgICAgREYgLnRleHQJMDAwMDAxNzMgIEdMSUJDXzIuMCAgIGdldGhvc3RpZAorMDAwNTZlNzAgIHcgICBERiAudGV4dAkwMDAwMDA0YiAgR0xJQkNfMi4wICAgZmxvY2tmaWxlCiswMDA3MWQ0MCBnICAgIERGIC50ZXh0CTAwMDAwMGM2ICBHTElCQ18yLjEgICBfX3Jhd21lbWNocgorMDAwODFhMzAgIHcgICBERiAudGV4dAkwMDAwMDA3MyAgR0xJQkNfMi4zICAgd2NzbmNhc2VjbXBfbAorMDAwNzFmZjAgIHcgICBERiAudGV4dAkwMDAwMDA0OSAgR0xJQkNfMi4wICAgYXJnel9hZGQKKzAwMGU2MjYwIGcgICAgREYgLnRleHQJMDAwMDAyYmMgIEdMSUJDXzIuMSAgIF9fYmFja3RyYWNlX3N5bWJvbHMKKzAwMDc1YTYwIGcgICAgREYgLnRleHQJMDAwMDAwNWQgIEdMSUJDXzIuMS4xIF9fc3RybmNweV9ieW4KKzAwMDYwMzMwICB3ICAgREYgLnRleHQJMDAwMDAxN2YgIEdMSUJDXzIuMCAgIHZhc3ByaW50ZgorMDAwNjQ4NzAgZyAgICBERiAudGV4dAkwMDAwMDFkMCAgR0xJQkNfMi4wICAgX0lPX3VuX2xpbmsKKzAwMGU4YmEwIGcgICAgREYgLnRleHQJMDAwMDAwNTAgIEdMSUJDXzIuNCAgIF9fd2NzdG9tYnNfY2hrCiswMDBkNWM2MCBnICAgIERGIC50ZXh0CTAwMDAwMDEzICBHTElCQ18yLjAgICBfbWNvdW50CiswMDA3N2RkMCBnICAgIERGIC50ZXh0CTAwMDAwMDNlICBHTElCQ18yLjAgICBfX3djc3RvZF9pbnRlcm5hbAorMDAwZjU1ZDAgZyAgICBERiAudGV4dAkwMDAwMDFkMCAgR0xJQkNfMi4wICAgYXV0aHVuaXhfY3JlYXRlCiswMDA3NjVkMCBnICAgIERGIC50ZXh0CTAwMDAwMGEwICBHTElCQ18yLjAgICB3bWVtY21wCiswMDA4MmE3MCAgdyAgIERGIC50ZXh0CTAwMDAwMDMyICBHTElCQ18yLjAgICBnbXRpbWVfcgorMDAwYzJjZjAgIHcgICBERiAudGV4dAkwMDAwMDAzOCAgR0xJQkNfMi4wICAgZmNobW9kCiswMDBlNmY5MCBnICAgIERGIC50ZXh0CTAwMDAwMGQ0ICBHTElCQ18yLjMuNCBfX3ByaW50Zl9jaGsKKzAwMDYwODAwICB3ICAgREYgLnRleHQJMDAwMDAxYzUgIEdMSUJDXzIuMCAgIG9ic3RhY2tfdnByaW50ZgorMDAwNzUyMDAgZyAgICBERiAudGV4dAkwMDAwMDAzMyAgR0xJQkNfMi4xLjEgX19zdHJzcG5fY2cKKzAwMGU4NjQwIGcgICAgREYgLnRleHQJMDAwMDAxNTggIEdMSUJDXzIuNCAgIF9fZmdldHdzX2NoaworMDAwMTY2NTAgZyAgICBERiAudGV4dAkwMDAwMDAzOCAoR0xJQkNfMi4wKSAgX19jbXBkaTIKKzAwMGRmYjIwIGcgICAgREYgLnRleHQJMDAwMDAwZWIgIEdMSUJDXzIuMy4yIF9fcmVnaXN0ZXJfYXRmb3JrCiswMDA5MDA5MCBnICAgIERGIC50ZXh0CTAwMDAwMGE3ICBHTElCQ18yLjAgICBzZXRncmVudAorMDAwMmE3OTAgIHcgICBERiAudGV4dAkwMDAwMDA1NSAgR0xJQkNfMi4wICAgc2lnd2FpdAorMDAwZDcxYjAgIHcgICBERiAudGV4dAkwMDAwMDA2ZSAgR0xJQkNfMi4zICAgaXN3Y3R5cGVfbAorMDAwZDY4NDAgIHcgICBERiAudGV4dAkwMDAwMDA3YiAgR0xJQkNfMi4wICAgd2N0cmFucworMDAwM2QwNDAgZyAgICBERiAudGV4dAkwMDAwNDNlYyAgR0xJQkNfMi4wICAgX0lPX3ZmcHJpbnRmCiswMDBjYmM2MCBnICAgIERGIC50ZXh0CTAwMDAwMDM0ICBHTElCQ18yLjAgICBhY2N0CiswMDAyY2QzMCBnICAgIERGIC50ZXh0CTAwMDAwMGY5ICBHTElCQ18yLjAgICBleGl0CiswMDBlOGY0MCBnICAgIERGIC50ZXh0CTAwMDAwMDA3ICBHTElCQ18yLjAgICBodG9ubAorMDAwOTJkYzAgZyAgICBERiAudGV4dAkwMDAwMDE1ZCAgR0xJQkNfMi4wICAgZXhlY2wKKzAwMDlmMDMwICB3ICAgREYgLnRleHQJMDAwMDAwMWYgIEdMSUJDXzIuMCAgIHJlX3NldF9zeW50YXgKKzAwMGViNGMwIGcgICAgREYgLnRleHQJMDAwMDAwYjAgIEdMSUJDXzIuMCAgIGVuZHByb3RvZW50CiswMDBiZjk0MCBnICAgIERGIC50ZXh0CTAwMDAxNTBmICBHTElCQ18yLjEgICB3b3JkZXhwCiswMDBlYjE5MCBnICAgIERGIC50ZXh0CTAwMDAwMTdkICBHTElCQ18yLjEuMiBnZXRwcm90b2J5bnVtYmVyX3IKKzAwMTExN2MwIGcgICAgREYgLnRleHQJMDAwMDAwNWYgKEdMSUJDXzIuMCkgIGdldHByb3RvYnludW1iZXJfcgorMDAwMjM4MzAgZyAgICBERiAudGV4dAkwMDAwMDAyNyAgR0xJQkNfMi4yICAgX19hc3NlcnQKKzAwMDI5NDEwICB3ICAgREYgLnRleHQJMDAwMDAwMmQgIEdMSUJDXzIuMCAgIGlzaW5mCiswMDA2MWM1MCBnICAgIERGIC50ZXh0CTAwMDAwMDBiICBHTElCQ18yLjAgICBjbGVhcmVycl91bmxvY2tlZAorMDAxMDBhNjAgZyAgICBERiAudGV4dAkwMDAwMDAyYSAgR0xJQkNfMi4wICAgeGRyX2tleWJ1ZgorMDAwOWU0ZjAgZyAgICBERiAudGV4dAkwMDAwMDJlOSAgR0xJQkNfMi4yLjMgZm5tYXRjaAorMDAwOWU0ZjAgZyAgICBERiAudGV4dAkwMDAwMDJlOSAoR0xJQkNfMi4wKSAgZm5tYXRjaAorMDAwMjNkZDAgZyAgICBERiAudGV4dAkwMDAwMDAxNyAgR0xJQkNfMi4xICAgX19pc2xvd2VyX2wKKzAwMGQyZjcwIGcgICAgREYgLnRleHQJMDAwMDAwMjggIEdMSUJDXzIuMy4zIGdudV9kZXZfbWFqb3IKKzAwMGU4ZjUwIGcgICAgREYgLnRleHQJMDAwMDAwMGUgIEdMSUJDXzIuMCAgIGh0b25zCiswMDEwMzczMCBnICAgIERGIC50ZXh0CTAwMDAwMDNmICBHTElCQ18yLjEgICB4ZHJfdWludDMyX3QKKzAwMDhlMWEwICB3ICAgREYgLnRleHQJMDAwMDAwYWYgIEdMSUJDXzIuMCAgIHJlYWRkaXIKKzAwMDJlMWQwICB3ICAgREYgLnRleHQJMDAwMDAwNGEgIEdMSUJDXzIuMCAgIHNlZWQ0OF9yCiswMDAyYjVhMCBnICAgIERGIC50ZXh0CTAwMDAwMDc4ICBHTElCQ18yLjEgICBzaWdyZWxzZQorMDAwOTNlZjAgIHcgICBERiAudGV4dAkwMDAwMDFlMCAgR0xJQkNfMi4wICAgcGF0aGNvbmYKKzAwMGU1MjgwIGcgICAgREYgLnRleHQJMDAwMDA2NTIgIEdMSUJDXzIuMi4yIF9fbnNzX2hvc3RuYW1lX2RpZ2l0c19kb3RzCiswMDA5MmMwMCBnICAgIERGIC50ZXh0CTAwMDAwMDM0ICBHTElCQ18yLjAgICBleGVjdgorMDAwNDY1YjAgZyAgICBERiAudGV4dAkwMDAwMDAzNCAgR0xJQkNfMi4wICAgc3ByaW50ZgorMDAwNjAwNzAgZyAgICBERiAudGV4dAkwMDAwMDBmNiAgR0xJQkNfMi4wICAgX0lPX3B1dGMKKzAwMGQzNjcwIGcgICAgREYgLnRleHQJMDAwMDAwM2EgIEdMSUJDXzIuMCAgIG5mc3NlcnZjdGwKKzAwMDcyYTEwIGcgICAgREYgLnRleHQJMDAwMDAxM2UgIEdMSUJDXzIuMCAgIGVudnpfbWVyZ2UKKzAwMDIwNjcwIGcgICAgREYgLnRleHQJMDAwMDA2NWUgIEdMSUJDXzIuMCAgIHNldGxvY2FsZQorMDAwODhmNzAgIHcgICBERiAudGV4dAkwMDAwMjE1YyAgR0xJQkNfMi4zICAgc3RyZnRpbWVfbAorMDAwNzFjOTAgZyAgICBERiAudGV4dAkwMDAwMDAxZCAgR0xJQkNfMi4wICAgbWVtZnJvYgorMDAwNzZiZDAgIHcgICBERiAudGV4dAkwMDAwMDIxOCAgR0xJQkNfMi4wICAgbWJydG93YworMDAxMDZlNzAgIHcgICBERiAudGV4dAkwMDAwMDBjOSAgR0xJQkNfMi4wICAgZ2V0dXRpZF9yCiswMDAyZDgwMCAgdyAgIERGIC50ZXh0CTAwMDAwMDYwICBHTElCQ18yLjAgICBzcmFuZAorMDAwZDZiZTAgIHcgICBERiAudGV4dAkwMDAwMDA5MCAgR0xJQkNfMi4zICAgaXN3Y250cmxfbAorMDAwZGZkNzAgZyAgICBERiAudGV4dAkwMDAwMDA3MSAgR0xJQkNfUFJJVkFURSBfX2xpYmNfcHRocmVhZF9pbml0CiswMDBkNjBiMCAgdyAgIERGIC50ZXh0CTAwMDAwMGM5ICBHTElCQ18yLjEgICBpc3dibGFuaworMDAwNmU5MjAgZyAgICBERiAudGV4dAkwMDAwMDAwNSAgR0xJQkNfMi4wICAgdHJfYnJlYWsKKzAwMGMzNmYwICB3ICAgREYgLnRleHQJMDAwMDAwNzAgIEdMSUJDXzIuMCAgIF9fd3JpdGUKKzAwMGNiYTEwIGcgICAgREYgLnRleHQJMDAwMDAwODggIEdMSUJDXzIuMCAgIF9fc2VsZWN0CiswMDBkNWU4MCBnICAgIERGIC50ZXh0CTAwMDAwMDgxICBHTElCQ18yLjAgICB0b3dsb3dlcgorMDAwZTg1MjAgZyAgICBERiAudGV4dAkwMDAwMDBmOCAgR0xJQkNfMi40ICAgX192ZndwcmludGZfY2hrCiswMDA1YjRmMCBnICAgIERGIC50ZXh0CTAwMDAwMGFkICBHTElCQ18yLjIgICBmZ2V0d3NfdW5sb2NrZWQKKzAwMGM0OGMwICB3ICAgREYgLnRleHQJMDAwMDAyYzggIEdMSUJDXzIuMCAgIHR0eW5hbWVfcgorMDAwNTg4NjAgZyAgICBERiAudGV4dAkwMDAwMDAzMiAgR0xJQkNfMi4xICAgZm9wZW4KKzAwMTBjYWIwIGcgICAgREYgLnRleHQJMDAwMDAwOTcgKEdMSUJDXzIuMCkgIGZvcGVuCiswMDBiYjZiMCBnICAgIERGIC50ZXh0CTAwMDAwMTRmICBHTElCQ18yLjEgICBnYWlfc3RyZXJyb3IKKzAwMDc2MjEwICB3ICAgREYgLnRleHQJMDAwMDAwYTQgIEdMSUJDXzIuMCAgIHdjc25jcHkKKzAwMGQ3NjcwIGcgICAgREYgLnRleHQJMDAwMDAxOGUgIEdMSUJDXzIuMCAgIGZnZXRzcGVudAorMDAwNzA2MzAgZyAgICBERiAudGV4dAkwMDAwMDIyNiAgR0xJQkNfMi4wICAgc3Ryc2lnbmFsCiswMDA3MDE1MCBnICAgIERGIC50ZXh0CTAwMDAwMGY3ICBHTElCQ18yLjAgICBzdHJuY21wCiswMDBlYWU2MCBnICAgIERGIC50ZXh0CTAwMDAwMWQyICBHTElCQ18yLjEuMiBnZXRuZXRieW5hbWVfcgorMDAxMTE3NTAgZyAgICBERiAudGV4dAkwMDAwMDA2NiAoR0xJQkNfMi4wKSAgZ2V0bmV0YnluYW1lX3IKKzAwMGZiMjgwIGcgICAgREYgLnRleHQJMDAwMDAwMTIgIEdMSUJDXzIuMCAgIHN2Y2ZkX2NyZWF0ZQorMDAwZWIzZDAgZyAgICBERiAudGV4dAkwMDAwMDBlNCAgR0xJQkNfMi4xLjIgZ2V0cHJvdG9lbnRfcgorMDAwY2RiNDAgIHcgICBERiAudGV4dAkwMDAwMDAzOCAgR0xJQkNfMi4wICAgZnRydW5jYXRlCiswMDExMTgyMCBnICAgIERGIC50ZXh0CTAwMDAwMGU3IChHTElCQ18yLjApICBnZXRwcm90b2VudF9yCiswMDA3NGYzMCBnICAgIERGIC50ZXh0CTAwMDAwMDNjICBHTElCQ18yLjEuMSBfX3N0cm5jcHlfZ2cKKzAwMTAwODUwIGcgICAgREYgLnRleHQJMDAwMDAwOGQgIEdMSUJDXzIuMSAgIHhkcl91bml4Y3JlZAorMDAwMjU4ODAgIHcgICBERiAudGV4dAkwMDAwMDA0NyAgR0xJQkNfMi4yICAgZGNuZ2V0dGV4dAorMDAwZjkxZTAgZyAgICBERiAudGV4dAkwMDAwMDA4NyAgR0xJQkNfMi4wICAgeGRyX3JtdGNhbGxyZXMKKzAwMDVhMGEwIGcgICAgREYgLnRleHQJMDAwMDAxOTUgIEdMSUJDXzIuMCAgIF9JT19wdXRzCiswMDBlMTBmMCBnICAgIERGIC50ZXh0CTAwMDAwMWQ0ICBHTElCQ18yLjAgICBpbmV0X25zYXBfYWRkcgorMDAwZGZmZjAgIHcgICBERiAudGV4dAkwMDAwMDE2OSAgR0xJQkNfMi4wICAgaW5ldF9hdG9uCiswMDBiYjgwMCBnICAgIERGIC50ZXh0CTAwMDAwMDViICBHTElCQ18yLjEgICB3b3JkZnJlZQorMDAxNDY0ZTAgZyAgICBETyAuYnNzCTAwMDAwMDA0ICBHTElCQ18yLjAgICBfX3JjbWRfZXJyc3RyCiswMDBjZWJkMCBnICAgIERGIC50ZXh0CTAwMDAwMGU1ICBHTElCQ18yLjAgICB0dHlzbG90CiswMDBjMTI4MCBnICAgIERGIC50ZXh0CTAwMDAwMDg0ICBHTElCQ18yLjIgICBwb3NpeF9zcGF3bl9maWxlX2FjdGlvbnNfYWRkY2xvc2UKKzAwMDY1N2MwIGcgICAgREYgLnRleHQJMDAwMDAwMzggIEdMSUJDXzIuMCAgIF9JT191bnNhdmVfbWFya2VycworMDAwOGVmYjAgZyAgICBERiAudGV4dAkwMDAwMDA1ZiAgR0xJQkNfMi4wICAgZ2V0ZGlyZW50cmllcworMDAwNjRkYTAgZyAgICBERiAudGV4dAkwMDAwMDAzOSAgR0xJQkNfMi4wICAgX0lPX2RlZmF1bHRfdWZsb3cKKzAwMGU3ZTAwIGcgICAgREYgLnRleHQJMDAwMDAwNDEgIEdMSUJDXzIuNCAgIF9fd2NwY3B5X2NoaworMDAwMmZjYTAgZyAgICBERiAudGV4dAkwMDAwMDAzZSAgR0xJQkNfMi4wICAgX19zdHJ0b2xkX2ludGVybmFsCiswMDE0MzBkMCBnICAgIERPIC5kYXRhCTAwMDAwMDA0ICBHTElCQ18yLjAgICBvcHRpbmQKKzAwMDc1NDkwIGcgICAgREYgLnRleHQJMDAwMDAwODkgIEdMSUJDXzIuMS4xIF9fc3RyY3B5X3NtYWxsCiswMDAyZGRhMCBnICAgIERGIC50ZXh0CTAwMDAwMDM3ICBHTElCQ18yLjAgICBlcmFuZDQ4CiswMDE0NjM3MCBnICAgIERPIC5ic3MJMDAwMDAwMDQgIEdMSUJDXzIuMSAgIGFyZ3BfcHJvZ3JhbV92ZXJzaW9uCiswMDA3ODZlMCAgdyAgIERGIC50ZXh0CTAwMDAwMDQwICBHTElCQ18yLjMgICB3Y3N0b3VsX2wKKzAwMGQzMDMwICB3ICAgREYgLnRleHQJMDAwMDAwM2EgIEdMSUJDXzIuMSAgIG1vZGlmeV9sZHQKKzAwMDZiYTEwIGcgICAgREYgLnRleHQJMDAwMDAxYzUgIEdMSUJDXzIuMCAgIF9fbGliY19tZW1hbGlnbgorMDAwZDNmNjAgZyAgICBERiAudGV4dAkwMDAwMDA2MiAgR0xJQkNfMi4wICAgaXNmZHR5cGUKKzAwMDc1NWUwIGcgICAgREYgLnRleHQJMDAwMDAwM2IgIEdMSUJDXzIuMS4xIF9fc3RyY3Nwbl9jMQorMDAwY2M1ZjAgZyAgICBERiAudGV4dAkwMDAwMDBkNiAgR0xJQkNfMi4wICAgZ2V0ZnNmaWxlCiswMDA3NTYyMCBnICAgIERGIC50ZXh0CTAwMDAwMDQ4ICBHTElCQ18yLjEuMSBfX3N0cmNzcG5fYzIKKzAwMDJkZjUwIGcgICAgREYgLnRleHQJMDAwMDAwMmQgIEdMSUJDXzIuMCAgIGxjb25nNDgKKzAwMDkwZWUwIGcgICAgREYgLnRleHQJMDAwMDAwYTIgIEdMSUJDXzIuMCAgIGdldHB3ZW50CiswMDA3NTY3MCBnICAgIERGIC50ZXh0CTAwMDAwMDU4ICBHTElCQ18yLjEuMSBfX3N0cmNzcG5fYzMKKzAwMGI1OTIwICB3ICAgREYgLnRleHQJMDAwMDAwNGIgIEdMSUJDXzIuMCAgIHJlX21hdGNoXzIKKzAwMTQ0MTA0ICB3ICAgRE8gLmJzcwkwMDAwMDAwNCAgR0xJQkNfMi4wICAgX19mcmVlX2hvb2sKKzAwMDhmYzYwIGcgICAgREYgLnRleHQJMDAwMDAyNTcgIEdMSUJDXzIuMSAgIHB1dGdyZW50CiswMDA3MjQ3MCAgdyAgIERGIC50ZXh0CTAwMDAwMDU0ICBHTElCQ18yLjAgICBhcmd6X3N0cmluZ2lmeQorMDAwZWMwZDAgZyAgICBERiAudGV4dAkwMDAwMDBlNCAgR0xJQkNfMi4xLjIgZ2V0c2VydmVudF9yCiswMDExMWE3MCBnICAgIERGIC50ZXh0CTAwMDAwMGU3IChHTElCQ18yLjApICBnZXRzZXJ2ZW50X3IKKzAwMDVmMzYwIGcgICAgREYgLnRleHQJMDAwMDAwZWMgIEdMSUJDXzIuNCAgIG9wZW5fd21lbXN0cmVhbQorMDAwZjQ1ODAgZyAgICBERiAudGV4dAkwMDAwMDEwNiAgR0xJQkNfMi41ICAgaW5ldDZfb3B0X2FwcGVuZAorMDAwNzAzMDAgZyAgICBERiAudGV4dAkwMDAwMDFiOSAgR0xJQkNfMi4wICAgc3RycmNocgorMDAwZWMyNzAgZyAgICBERiAudGV4dAkwMDAwMDBhOCAgR0xJQkNfMi4wICAgc2V0c2VydmVudAorMDAxMDg0YTAgIHcgICBERiAudGV4dAkwMDAwMDBmMyAgR0xJQkNfMi4yLjEgcG9zaXhfb3BlbnB0CiswMDBmOWUzMCBnICAgIERGIC50ZXh0CTAwMDAwMDQyICBHTElCQ18yLjAgICBzdmNlcnJfc3lzdGVtZXJyCiswMDA2MWQzMCBnICAgIERGIC50ZXh0CTAwMDAwMDQyICBHTElCQ18yLjAgICBmZmx1c2hfdW5sb2NrZWQKKzAwMGU4MDUwIGcgICAgREYgLnRleHQJMDAwMDAwMzkgIEdMSUJDXzIuNCAgIF9fc3dwcmludGZfY2hrCiswMDAyM2RmMCBnICAgIERGIC50ZXh0CTAwMDAwMDE3ICBHTElCQ18yLjEgICBfX2lzZ3JhcGhfbAorMDAwYzFkMjAgZyAgICBERiAudGV4dAkwMDAwMDAxZCAgR0xJQkNfMi4yICAgcG9zaXhfc3Bhd25hdHRyX3NldHNjaGVkcG9saWN5CiswMDA1YTY4MCAgdyAgIERGIC50ZXh0CTAwMDAwMTI3ICBHTElCQ18yLjAgICBzZXRidWZmZXIKKzAwMDkxZWMwICB3ICAgREYgLnRleHQJMDAwMDAwYWMgIEdMSUJDXzIuMCAgIHdhaXQKKzAwMDViZmYwIGcgICAgREYgLnRleHQJMDAwMDAwMzYgIEdMSUJDXzIuMiAgIHZ3cHJpbnRmCiswMDA2YmJlMCAgdyAgIERGIC50ZXh0CTAwMDAwMDhjICBHTElCQ18yLjIgICBwb3NpeF9tZW1hbGlnbgorMDAwZjNiZDAgZyAgICBERiAudGV4dAkwMDAwMDExOCAgR0xJQkNfMi4zLjQgZ2V0aXB2NHNvdXJjZWZpbHRlcgorMDAwNzRlMDAgZyAgICBERiAudGV4dAkwMDAwMDAzMCAgR0xJQkNfMi4xLjEgX19zdHJjcHlfZworMDAwZTgzZjAgZyAgICBERiAudGV4dAkwMDAwMDEwOCAgR0xJQkNfMi40ICAgX192d3ByaW50Zl9jaGsKKzAwMDU2MmMwIGcgICAgREYgLnRleHQJMDAwMDAwNzQgIEdMSUJDXzIuMCAgIHRlbXBuYW0KKzAwMDIzOTgwIGcgICAgREYgLnRleHQJMDAwMDAwNDggIEdMSUJDXzIuMCAgIGlzYWxwaGEKKzAwMDMyMGQwICB3ICAgREYgLnRleHQJMDAwMDAwMjkgIEdMSUJDXzIuMyAgIHN0cnRvZl9sCiswMDExMDg5MCBnICAgIERGIC50ZXh0CTAwMDAwMDQyIChHTElCQ18yLjApICByZWdleGVjCiswMDBkMmQ5MCAgdyAgIERGIC50ZXh0CTAwMDAwMGE1ICBHTElCQ18yLjAgICBsbHNlZWsKKzAwMGI1OWYwIGcgICAgREYgLnRleHQJMDAwMDAwZTcgIEdMSUJDXzIuMy40IHJlZ2V4ZWMKKzAwMGNjMDgwIGcgICAgREYgLnRleHQJMDAwMDAwMjIgIEdMSUJDXzIuMCAgIHJldm9rZQorMDAwYjU5YjAgIHcgICBERiAudGV4dAkwMDAwMDAzYSAgR0xJQkNfMi4wICAgcmVfbWF0Y2gKKzAwMGQwZWQwICB3ICAgREYgLnRleHQJMDAwMDAzZjQgIEdMSUJDXzIuMCAgIHRkZWxldGUKKzAwMGM0ZjcwIGcgICAgREYgLnRleHQJMDAwMDAxMjggIEdMSUJDXzIuNCAgIHJlYWRsaW5rYXQKKzAwMGMzZmMwICB3ICAgREYgLnRleHQJMDAwMDAwMzQgIEdMSUJDXzIuMCAgIHBpcGUKKzAwMGU3Y2IwIGcgICAgREYgLnRleHQJMDAwMDAwNGMgIEdMSUJDXzIuNCAgIF9fd2N0b21iX2NoaworMDAwZDIzMDAgIHcgICBERiAudGV4dAkwMDAwMDAxYSAgR0xJQkNfMi4wICAgZ2V0X2F2cGh5c19wYWdlcworMDAwZjUxODAgZyAgICBERiAudGV4dAkwMDAwMDE3MCAgR0xJQkNfMi4wICAgYXV0aHVuaXhfY3JlYXRlX2RlZmF1bHQKKzAwMDVmNmEwIGcgICAgREYgLnRleHQJMDAwMDAwOWEgIEdMSUJDXzIuMCAgIF9JT19mZXJyb3IKKzAwMGVjNTkwIGcgICAgREYgLnRleHQJMDAwMDAxMmQgIEdMSUJDXzIuMCAgIGdldHJwY2J5bnVtYmVyCiswMDA3MjA0MCAgdyAgIERGIC50ZXh0CTAwMDAwMDQxICBHTElCQ18yLjAgICBhcmd6X2NvdW50CiswMDA2ZmM5MCBnICAgIERGIC50ZXh0CTAwMDAwMDU3ICBHTElCQ18yLjAgICBfX3N0cmR1cAorMDAwOTQ2NzAgZyAgICBERiAudGV4dAkwMDAwMDQxZCAgR0xJQkNfMi4yICAgX19zeXNjb25mCiswMDBlN2IwMCBnICAgIERGIC50ZXh0CTAwMDAwMDVkICBHTElCQ18yLjQgICBfX3JlYWRsaW5rX2NoaworMDAwY2I2MjAgIHcgICBERiAudGV4dAkwMDAwMDA3NiAgR0xJQkNfMi4wICAgc2V0cmVnaWQKKzAwMGUyNDQwIGcgICAgREYgLnRleHQJMDAwMDAwMmIgIEdMSUJDXzIuMiAgIF9fcmVzX25pbml0CiswMDBjYTc0MCAgdyAgIERGIC50ZXh0CTAwMDAwMGFjICBHTElCQ18yLjAgICB0Y2RyYWluCiswMDBmM2NmMCBnICAgIERGIC50ZXh0CTAwMDAwMTRhICBHTElCQ18yLjMuNCBzZXRpcHY0c291cmNlZmlsdGVyCiswMDBjYThmMCBnICAgIERGIC50ZXh0CTAwMDAwMDMwICBHTElCQ18yLjAgICBjZm1ha2VyYXcKKzAwMDc3ZTkwICB3ICAgREYgLnRleHQJMDAwMDAwM2YgIEdMSUJDXzIuMCAgIHdjc3RvbGQKKzAwMGNhZmMwIGcgICAgREYgLnRleHQJMDAwMDAwNzMgIEdMSUJDXzIuMCAgIF9fc2JyaworMDAwNTlkMjAgZyAgICBERiAudGV4dAkwMDAwMDI5OSAgR0xJQkNfMi4xICAgX0lPX3Byb2Nfb3BlbgorMDAwZDQ3MjAgZyAgICBERiAudGV4dAkwMDAwMDA3YiAgR0xJQkNfMi4wICAgc2htYXQKKzAwMDU1ZDUwIGcgICAgREYgLnRleHQJMDAwMDAxOTcgIEdMSUJDXzIuMCAgIHBlcnJvcgorMDAxMGQwNzAgZyAgICBERiAudGV4dAkwMDAwMDI5OSAoR0xJQkNfMi4wKSAgX0lPX3Byb2Nfb3BlbgorMDAwNjY2YzAgZyAgICBERiAudGV4dAkwMDAwMDA0MiAgR0xJQkNfMi4wICAgX0lPX3N0cl9wYmFja2ZhaWwKKzAwMTQzMzM4IGcgICAgRE8gLmRhdGEJMDAwMDAwMDggIEdMSUJDXzIuMCAgIF9fdHpuYW1lCiswMDAzN2U4MCBnICAgIERGIC50ZXh0CTAwMDAwMTUyICBHTElCQ18yLjAgICBycG1hdGNoCiswMDBjMmI1MCAgdyAgIERGIC50ZXh0CTAwMDAwMDk1ICBHTElCQ18yLjEgICBzdGF0dmZzNjQKKzAwMGU4OTIwIGcgICAgREYgLnRleHQJMDAwMDAwMjQgIEdMSUJDXzIuNCAgIF9fZ2V0bG9naW5fcl9jaGsKKzAwMTQzMzQ0IGcgICAgRE8gLmRhdGEJMDAwMDAwMDQgIEdMSUJDXzIuMCAgIF9fcHJvZ25hbWUKKzAwMDQ2NTAwICB3ICAgREYgLnRleHQJMDAwMDAwMjQgIEdMSUJDXzIuMCAgIF9JT19mcHJpbnRmCiswMDA2YWQzMCAgdyAgIERGIC50ZXh0CTAwMDAwMTA1ICBHTElCQ18yLjAgICBwdmFsbG9jCiswMDAyNDQyMCAgdyAgIERGIC50ZXh0CTAwMDAwMDQ5ICBHTElCQ18yLjAgICBkY2dldHRleHQKKzAwMGZhY2QwIGcgICAgREYgLnRleHQJMDAwMDAxZjIgIEdMSUJDXzIuMCAgIHJlZ2lzdGVycnBjCiswMDA1ZTRiMCBnICAgIERGIC50ZXh0CTAwMDAwMjRkICBHTElCQ18yLjIgICBfSU9fd2ZpbGVfb3ZlcmZsb3cKKzAwMDc3YzkwIGcgICAgREYgLnRleHQJMDAwMDAwNDYgIEdMSUJDXzIuMSAgIHdjc3RvbGwKKzAwMGMxNTgwIGcgICAgREYgLnRleHQJMDAwMDAwMTAgIEdMSUJDXzIuMiAgIHBvc2l4X3NwYXduYXR0cl9zZXRwZ3JvdXAKKzAwMTQ0YTk0ICB3ICAgRE8gLmJzcwkwMDAwMDAwNCAgR0xJQkNfMi4wICAgX2Vudmlyb24KKzAwMGQwODEwIGcgICAgREYgLnRleHQJMDAwMDAxZDEgIEdMSUJDXzIuMCAgIHFlY3Z0X3IKKzAwMTBlNGYwIGcgICAgREYgLnRleHQJMDAwMDAwZmUgKEdMSUJDXzIuMCkgIF9JT19kb193cml0ZQorMDAwZDAxNDAgZyAgICBERiAudGV4dAkwMDAwMDFmZiAgR0xJQkNfMi4wICAgZWN2dF9yCiswMDA2MzEyMCBnICAgIERGIC50ZXh0CTAwMDAwMDJhICBHTElCQ18yLjEgICBfSU9fZG9fd3JpdGUKKzAwMDY0YzkwIGcgICAgREYgLnRleHQJMDAwMDAwNzggIEdMSUJDXzIuMCAgIF9JT19zd2l0Y2hfdG9fZ2V0X21vZGUKKzAwMDc1ZWIwICB3ICAgREYgLnRleHQJMDAwMDAwMzQgIEdMSUJDXzIuMCAgIHdjc2NhdAorMDAxMDhmNTAgZyAgICBERiAudGV4dAkwMDAwMDAyMyAgR0xJQkNfMi4xICAgZ2V0dXR4aWQKKzAwMTQ2NWFjIGcgICAgRE8gLmJzcwkwMDAwMDAwNCAgR0xJQkNfMi4xICAgX19rZXlfZ2VuZGVzX0xPQ0FMCiswMDA3NmRmMCAgdyAgIERGIC50ZXh0CTAwMDAwMjQxICBHTElCQ18yLjAgICB3Y3J0b21iCiswMDAyOTlmMCBnICAgIERGIC50ZXh0CTAwMDAwMDBkICBHTElCQ18yLjEgICBfX3NpZ25iaXRmCiswMDBjYTFjMCBnICAgIERGIC50ZXh0CTAwMDAwMDRjICBHTElCQ18yLjYgICBzeW5jX2ZpbGVfcmFuZ2UKKzAwMTQ2MmYwIGcgICAgRE8gLmJzcwkwMDAwMDAwNCAoR0xJQkNfMi4wKSAgX29ic3RhY2sKKzAwMGVhNWYwIGcgICAgREYgLnRleHQJMDAwMDAxNjIgIEdMSUJDXzIuMCAgIGdldG5ldGJ5YWRkcgorMDAwZDNhNTAgIHcgICBERiAudGV4dAkwMDAwMDA2YyAgR0xJQkNfMi4wICAgY29ubmVjdAorMDAwNzYyYzAgZyAgICBERiAudGV4dAkwMDAwMDA0MSAgR0xJQkNfMi4wICAgd2NzcGJyaworMDAwMDAwMDggZyAgICBEICAudGJzcwkwMDAwMDAwNCAgR0xJQkNfUFJJVkFURSBlcnJubworMDAwMjk0NDAgZyAgICBERiAudGV4dAkwMDAwMDAyNyAgR0xJQkNfMi4wICAgX19pc25hbgorMDAwNzUxNzAgZyAgICBERiAudGV4dAkwMDAwMDAzMyAgR0xJQkNfMi4xLjEgX19zdHJjc3BuX2NnCiswMDA3MmI1MCBnICAgIERGIC50ZXh0CTAwMDAwMDk2ICBHTElCQ18yLjAgICBlbnZ6X3JlbW92ZQorMDAwMjlmNjAgIHcgICBERiAudGV4dAkwMDAwMDA2NCAgR0xJQkNfMi4wICAgX2xvbmdqbXAKKzAwMDI1OTEwICB3ICAgREYgLnRleHQJMDAwMDAwNDEgIEdMSUJDXzIuMiAgIG5nZXR0ZXh0CiswMDAyOTk2MCAgdyAgIERGIC50ZXh0CTAwMDAwMDkwICBHTElCQ18yLjAgICBsZGV4cGYKKzAwMDVmNzUwICB3ICAgREYgLnRleHQJMDAwMDAwMzQgIEdMSUJDXzIuMCAgIGZpbGVub191bmxvY2tlZAorMDAxNDYzNTAgZyAgICBETyAuYnNzCTAwMDAwMDA0ICBHTElCQ18yLjAgICBlcnJvcl9wcmludF9wcm9nbmFtZQorMDAwMjlkOTAgZyAgICBERiAudGV4dAkwMDAwMDAyMyAgR0xJQkNfMi4xICAgX19zaWduYml0bAorMDAxMjU1NzggZyAgICBETyAucm9kYXRhCTAwMDAwMDEwICBHTElCQ18yLjEgICBpbjZhZGRyX2FueQorMDAwY2Q4MDAgZyAgICBERiAudGV4dAkwMDAwMDAyMiAgR0xJQkNfMi4zICAgbHV0aW1lcworMDAxMDkwYjAgIHcgICBERiAudGV4dAkwMDAwMDE3NSAgR0xJQkNfMi4yLjQgZGxfaXRlcmF0ZV9waGRyCiswMDEwMDIxMCBnICAgIERGIC50ZXh0CTAwMDAwMDVmICBHTElCQ18yLjEgICBrZXlfZ2V0X2NvbnYKKzAwMGNmYzIwIGcgICAgREYgLnRleHQJMDAwMDAwMzggIEdMSUJDXzIuMCAgIG11bmxvY2sKKzAwMDkxMGYwIGcgICAgREYgLnRleHQJMDAwMDAxMmQgIEdMSUJDXzIuMCAgIGdldHB3dWlkCiswMDA3MTFjMCAgdyAgIERGIC50ZXh0CTAwMDAwMDkxICBHTElCQ18yLjAgICBzdHBuY3B5CiswMDBjZGJmMCAgdyAgIERGIC50ZXh0CTAwMDAwMDYzICBHTElCQ18yLjEgICBmdHJ1bmNhdGU2NAorMDAwYzk1ZjAgZyAgICBERiAudGV4dAkwMDAwMDA0MCAgR0xJQkNfMi4xICAgc2VuZGZpbGUKKzAwMGNmOWIwICB3ICAgREYgLnRleHQJMDAwMDAwNmUgIEdMSUJDXzIuMSAgIG1tYXA2NAorMDAwZTNhYTAgZyAgICBERiAudGV4dAkwMDAwMDAzOCAgR0xJQkNfUFJJVkFURSBfX25zc19kaXNhYmxlX25zY2QKKzAwMTBlZjYwIGcgICAgREYgLnRleHQJMDAwMDAwZTUgKEdMSUJDXzIuMCkgIGdldHB3ZW50X3IKKzAwMDkxMjQwIGcgICAgREYgLnRleHQJMDAwMDAwZTIgIEdMSUJDXzIuMS4yIGdldHB3ZW50X3IKKzAwMGY0ODcwIGcgICAgREYgLnRleHQJMDAwMDAwNmMgIEdMSUJDXzIuNSAgIGluZXQ2X3J0aF9pbml0CiswMDAyYjFkMCBnICAgIERGIC50ZXh0CTAwMDAwMDRmICBHTElCQ19QUklWQVRFIF9fbGliY19hbGxvY2F0ZV9ydHNpZ19wcml2YXRlCiswMDAyOWQwMCAgdyAgIERGIC50ZXh0CTAwMDAwMDg2ICBHTElCQ18yLjAgICBsZGV4cGwKKzAwMGY0MzEwIGcgICAgREYgLnRleHQJMDAwMDAwNzUgIEdMSUJDXzIuNSAgIGluZXQ2X29wdF9uZXh0CiswMDBmZWRjMCBnICAgIERGIC50ZXh0CTAwMDAwMGJjICBHTElCQ18yLjEgICBlY2JfY3J5cHQKKzAwMDViYTYwIGcgICAgREYgLnRleHQJMDAwMDAwYmIgIEdMSUJDXzIuMiAgIHVuZ2V0d2MKKzAwMDhlNzMwIGcgICAgREYgLnRleHQJMDAwMDAwMjQgIEdMSUJDXzIuMSAgIHZlcnNpb25zb3J0CiswMDBmYzY3MCBnICAgIERGIC50ZXh0CTAwMDAwMDFhICBHTElCQ18yLjEuMSB4ZHJfbG9uZ2xvbmdfdAorMDAwN2ZlNzAgIHcgICBERiAudGV4dAkwMDAwMDAzOSAgR0xJQkNfMi4xICAgX193Y3N0b2ZfbAorMDAwZDBkYTAgIHcgICBERiAudGV4dAkwMDAwMDA1YiAgR0xJQkNfMi4wICAgdGZpbmQKKzAwMDQ2NTMwIGcgICAgREYgLnRleHQJMDAwMDAwMzkgIEdMSUJDXzIuMCAgIF9JT19wcmludGYKKzAwMDcyMjEwIGcgICAgREYgLnRleHQJMDAwMDAwNDYgIEdMSUJDXzIuMCAgIF9fYXJnel9uZXh0CiswMDA3NjY3MCAgdyAgIERGIC50ZXh0CTAwMDAwMDM0ICBHTElCQ18yLjAgICB3bWVtY3B5CiswMDBjMTQ1MCBnICAgIERGIC50ZXh0CTAwMDAwMDM1ICBHTElCQ18yLjIgICBwb3NpeF9zcGF3bmF0dHJfaW5pdAorMDAwYzI1ZDAgZyAgICBERiAudGV4dAkwMDAwMDE1ZCAgR0xJQkNfMi40ICAgX19meHN0YXRhdDY0CiswMDAyYWNkMCBnICAgIERGIC50ZXh0CTAwMDAwMDJhICBHTElCQ18yLjAgICBfX3NpZ2lzbWVtYmVyCiswMDA3NGM5MCBnICAgIERGIC50ZXh0CTAwMDAwMDNkICBHTElCQ18yLjEuMSBfX21lbWNweV9ieTIKKzAwMGM0MmUwIGcgICAgREYgLnRleHQJMDAwMDAwYzIgIEdMSUJDXzIuMCAgIGdldF9jdXJyZW50X2Rpcl9uYW1lCiswMDBkNDY1MCBnICAgIERGIC50ZXh0CTAwMDAwMDc1ICBHTElCQ18yLjIgICBzZW1jdGwKKzAwMTEwZjIwIGcgICAgREYgLnRleHQJMDAwMDAwNmYgKEdMSUJDXzIuMCkgIHNlbWN0bAorMDAwNjFjODAgZyAgICBERiAudGV4dAkwMDAwMDAzNiAgR0xJQkNfMi4wICAgZnB1dGNfdW5sb2NrZWQKKzAwMDc3MDQwICB3ICAgREYgLnRleHQJMDAwMDAwNTggIEdMSUJDXzIuMCAgIG1ic3J0b3djcworMDAwNzRjNTAgZyAgICBERiAudGV4dAkwMDAwMDAzMyAgR0xJQkNfMi4xLjEgX19tZW1jcHlfYnk0CiswMDBkMWFhMCBnICAgIERGIC50ZXh0CTAwMDAwMDIzICBHTElCQ18yLjAgICB2ZXJyCiswMDBlYjA0MCBnICAgIERGIC50ZXh0CTAwMDAwMTJkICBHTElCQ18yLjAgICBnZXRwcm90b2J5bnVtYmVyCiswMDBjNTBlMCBnICAgIERGIC50ZXh0CTAwMDAwMTRiICBHTElCQ18yLjQgICB1bmxpbmthdAorMDAwMjNkNTAgIHcgICBERiAudGV4dAkwMDAwMDAxNSAgR0xJQkNfMi4zICAgaXNhbG51bV9sCiswMDBmZTE0MCBnICAgIERGIC50ZXh0CTAwMDAwMTAzICBHTElCQ18yLjAgICBnZXRzZWNyZXRrZXkKKzAwMTEzMTcwIGcgICAgREYgX19saWJjX3RocmVhZF9mcmVlcmVzX2ZuCTAwMDAwMDMxICBHTElCQ19QUklWQVRFIF9fbGliY190aHJlYWRfZnJlZXJlcworMDAwZmVjYjAgZyAgICBERiAudGV4dAkwMDAwMDA1NiAgR0xJQkNfMi4xICAgeGRyX2F1dGhkZXNfdmVyZgorMDAxNDM0MjAgZyAgICBETyAuZGF0YQkwMDAwMDA5OCAgR0xJQkNfMi4xICAgX0lPXzJfMV9zdGRpbl8KKzAwMDJmYmEwIGcgICAgREYgLnRleHQJMDAwMDAwM2UgIEdMSUJDXzIuMCAgIF9fc3RydG9mX2ludGVybmFsCiswMDA4ZTE1MCAgdyAgIERGIC50ZXh0CTAwMDAwMDRlICBHTElCQ18yLjAgICBjbG9zZWRpcgorMDAwOGY3NTAgZyAgICBERiAudGV4dAkwMDAwMDBiNCAgR0xJQkNfMi4wICAgaW5pdGdyb3VwcworMDAwZTkwZDAgZyAgICBERiAudGV4dAkwMDAwMDE1MiAgR0xJQkNfMi4wICAgaW5ldF9udG9hCiswMDA3ZmU3MCAgdyAgIERGIC50ZXh0CTAwMDAwMDM5ICBHTElCQ18yLjMgICB3Y3N0b2ZfbAorMDAwMjMyNTAgZyAgICBERiAudGV4dAkwMDAwMDA4OCAgR0xJQkNfMi4xICAgX19mcmVlbG9jYWxlCiswMDEwZjEzMCBnICAgIERGIC50ZXh0CTAwMDAxNzU1IChHTElCQ18yLjEpICBnbG9iNjQKKzAwMDk4MWYwIGcgICAgREYgLnRleHQJMDAwMDE3NTUgIEdMSUJDXzIuMiAgIGdsb2I2NAorMDAwZTgyZDAgZyAgICBERiAudGV4dAkwMDAwMDBmYiAgR0xJQkNfMi40ICAgX19md3ByaW50Zl9jaGsKKzAwMGY5MjcwIGcgICAgREYgLnRleHQJMDAwMDAwZmQgIEdMSUJDXzIuMCAgIHBtYXBfcm10Y2FsbAorMDAwNjAwNzAgIHcgICBERiAudGV4dAkwMDAwMDBmNiAgR0xJQkNfMi4wICAgcHV0YworMDAwOTI2ZDAgIHcgICBERiAudGV4dAkwMDAwMDA2YyAgR0xJQkNfMi4wICAgbmFub3NsZWVwCiswMDBjNDBlMCAgdyAgIERGIC50ZXh0CTAwMDAwMDM0ICBHTElCQ18yLjAgICBmY2hkaXIKKzAwMGZjNzkwIGcgICAgREYgLnRleHQJMDAwMDAwMzcgIEdMSUJDXzIuMCAgIHhkcl9jaGFyCiswMDBkN2RhMCBnICAgIERGIC50ZXh0CTAwMDAwMGE3ICBHTElCQ18yLjAgICBzZXRzcGVudAorMDAwNThhYzAgZyAgICBERiAudGV4dAkwMDAwMDBjYyAgR0xJQkNfMi4yICAgZm9wZW5jb29raWUKKzAwMTBjYTUwIGcgICAgREYgLnRleHQJMDAwMDAwNWEgKEdMSUJDXzIuMCkgIGZvcGVuY29va2llCiswMDAyOTQxMCBnICAgIERGIC50ZXh0CTAwMDAwMDJkICBHTElCQ18yLjAgICBfX2lzaW5mCiswMDBlNjg1MCBnICAgIERGIC50ZXh0CTAwMDAwMDRlICBHTElCQ18yLjMuNCBfX21lbXBjcHlfY2hrCiswMDA1Y2UxMCBnICAgIERGIC50ZXh0CTAwMDAwMTY1ICBHTElCQ18yLjIgICBfSU9fd2RlZmF1bHRfcGJhY2tmYWlsCiswMDBmMTBjMCBnICAgIERGIC50ZXh0CTAwMDAwMGIwICBHTElCQ18yLjAgICBlbmRhbGlhc2VudAorMDAwNTZlZDAgIHcgICBERiAudGV4dAkwMDAwMDA2OSAgR0xJQkNfMi4wICAgZnRyeWxvY2tmaWxlCiswMDA3OGM1MCAgdyAgIERGIC50ZXh0CTAwMDAwMDQwICBHTElCQ18yLjMgICB3Y3N0b2xsX2wKKzAwMDIzZDcwICB3ICAgREYgLnRleHQJMDAwMDAwMTcgIEdMSUJDXzIuMyAgIGlzYWxwaGFfbAorMDAwNjFjNjAgZyAgICBERiAudGV4dAkwMDAwMDAxMCAgR0xJQkNfMi4wICAgZmVvZl91bmxvY2tlZAorMDAwMjNkMDAgZyAgICBERiAudGV4dAkwMDAwMDA0NiAgR0xJQkNfMi4wICAgaXNibGFuaworMDAwYjU4ZDAgIHcgICBERiAudGV4dAkwMDAwMDA0YSAgR0xJQkNfMi4wICAgcmVfc2VhcmNoXzIKKzAwMGY5ZDQwIGcgICAgREYgLnRleHQJMDAwMDAwNGUgIEdMSUJDXzIuMCAgIHN2Y19zZW5kcmVwbHkKKzAwMDIzMzAwICB3ICAgREYgLnRleHQJMDAwMDAwODQgIEdMSUJDXzIuMyAgIHVzZWxvY2FsZQorMDAwY2U5MjAgZyAgICBERiAudGV4dAkwMDAwMDA0MCAgR0xJQkNfMi4wICAgZ2V0dXNlcnNoZWxsCiswMDAyYWMxMCBnICAgIERGIC50ZXh0CTAwMDAwMGI5ICBHTElCQ18yLjAgICBzaWdpbnRlcnJ1cHQKKzAwMDhmOWMwIGcgICAgREYgLnRleHQJMDAwMDAxMmQgIEdMSUJDXzIuMCAgIGdldGdyZ2lkCiswMDBkMzMzMCBnICAgIERGIC50ZXh0CTAwMDAwMDdjICBHTElCQ18yLjMuMiBlcG9sbF93YWl0CiswMDBkMjBhMCAgdyAgIERGIC50ZXh0CTAwMDAwMGQ3ICBHTElCQ18yLjAgICBlcnJvcgorMDAwNWFmMjAgZyAgICBERiAudGV4dAkwMDAwMDExMSAgR0xJQkNfMi4yICAgZnB1dHdjCiswMDBjMWY0MCBnICAgIERGIC50ZXh0CTAwMDAwMDQxICBHTElCQ18yLjQgICBta2ZpZm9hdAorMDAxMTFiODAgZyAgICBERiAudGV4dAkwMDAwMDBlNyAoR0xJQkNfMi4wKSAgZ2V0cnBjZW50X3IKKzAwMGQzNDUwIGcgICAgREYgLnRleHQJMDAwMDAwMzQgIEdMSUJDXzIuMCAgIGdldF9rZXJuZWxfc3ltcworMDAwZWM2ZTAgZyAgICBERiAudGV4dAkwMDAwMDBlNCAgR0xJQkNfMi4xLjIgZ2V0cnBjZW50X3IKKzAwMDU4ZmEwICB3ICAgREYgLnRleHQJMDAwMDAxZDEgIEdMSUJDXzIuMCAgIGZ0ZWxsCiswMDBlNzk4MCBnICAgIERGIC50ZXh0CTAwMDAwMDVkICBHTElCQ18yLjQgICBfX3JlYWRfY2hrCiswMDE0NTgwMCBnICAgIERPIC5ic3MJMDAwMDAyMDAgKEdMSUJDXzIuMCkgIF9yZXMKKzAwMGUwMmUwIGcgICAgREYgLnRleHQJMDAwMDA5NDcgIEdMSUJDXzIuMCAgIGluZXRfbnRvcAorMDAwNzAyNTAgZyAgICBERiAudGV4dAkwMDAwMDBhNyAgR0xJQkNfMi4wICAgc3RybmNweQorMDAwMmEwNjAgIHcgICBERiAudGV4dAkwMDAwMDBjZiAgR0xJQkNfMi4wICAgc2lnbmFsCiswMDBjYjk1MCBnICAgIERGIC50ZXh0CTAwMDAwMDc0ICBHTElCQ18yLjAgICBnZXRkb21haW5uYW1lCiswMDBlODdjMCBnICAgIERGIC50ZXh0CTAwMDAwMGE4ICBHTElCQ18yLjQgICBfX2ZnZXR3c191bmxvY2tlZF9jaGsKKzAwMGUyNDcwIGcgICAgREYgLnRleHQJMDAwMDAxMTIgIEdMSUJDXzIuMiAgIF9fcmVzX25jbG9zZQorMDAwZDM2YjAgIHcgICBERiAudGV4dAkwMDAwMDAzNCAgR0xJQkNfMi4wICAgcGVyc29uYWxpdHkKKzAwMDVhMGEwICB3ICAgREYgLnRleHQJMDAwMDAxOTUgIEdMSUJDXzIuMCAgIHB1dHMKKzAwMGQ3MDIwIGcgICAgREYgLnRleHQJMDAwMDAwOTIgIEdMSUJDXzIuMSAgIF9faXN3dXBwZXJfbAorMDAwZTZkNzAgZyAgICBERiAudGV4dAkwMDAwMDBjMiAgR0xJQkNfMi4zLjQgX192c3ByaW50Zl9jaGsKKzAwMDJkNDgwIGcgICAgREYgLnRleHQJMDAwMDAwNDYgIEdMSUJDXzIuMCAgIG1ic3Rvd2NzCiswMDAyMjhiMCBnICAgIERGIC50ZXh0CTAwMDAwN2ZhICBHTElCQ18yLjEgICBfX25ld2xvY2FsZQorMDAwY2FlMzAgZyAgICBERiAudGV4dAkwMDAwMDA0ZCAgR0xJQkNfMi4wICAgZ2V0cHJpb3JpdHkKKzAwMDM5MjEwIGcgICAgREYgLnRleHQJMDAwMDAxMzAgIEdMSUJDXzIuMCAgIGdldHN1Ym9wdAorMDAwY2E5MjAgZyAgICBERiAudGV4dAkwMDAwMDBhNyAgR0xJQkNfMi4xICAgdGNnZXRzaWQKKzAwMDkyNzQwICB3ICAgREYgLnRleHQJMDAwMDAyZTMgIEdMSUJDXzIuMCAgIGZvcmsKKzAwMDU2OWUwIGcgICAgREYgLnRleHQJMDAwMDAwM2YgIEdMSUJDXzIuMCAgIHB1dHcKKzAwMGQxYzEwIGcgICAgREYgLnRleHQJMDAwMDAwMWQgIEdMSUJDXzIuMCAgIHdhcm54CiswMDBkMmI2MCBnICAgIERGIC50ZXh0CTAwMDAwMDNhICBHTElCQ18yLjAgICBpb3Blcm0KKzAwMDVhN2QwIGcgICAgREYgLnRleHQJMDAwMDAxODkgIEdMSUJDXzIuMCAgIF9JT19zZXR2YnVmCiswMDBmODM0MCBnICAgIERGIC50ZXh0CTAwMDAwMTAwICBHTElCQ18yLjAgICBwbWFwX3Vuc2V0CiswMDEwOTU5MCBnICAgIERGIC50ZXh0CTAwMDAwMDQzICBHTElCQ18yLjEgICBfZGxfbWNvdW50X3dyYXBwZXJfY2hlY2sKKzAwMGQ2NTkwICB3ICAgREYgLnRleHQJMDAwMDAwY2IgIEdMSUJDXzIuMCAgIGlzd3NwYWNlCiswMDEwNjc4MCBnICAgIERGIC50ZXh0CTAwMDAwMDFlICBHTElCQ18yLjEgICBpc2FzdHJlYW0KKzAwMDVjMTAwIGcgICAgREYgLnRleHQJMDAwMDAwM2MgIEdMSUJDXzIuMiAgIHZ3c2NhbmYKKzAwMDJhNGMwICB3ICAgREYgLnRleHQJMDAwMDAwOWUgIEdMSUJDXzIuMCAgIHNpZ3Byb2NtYXNrCiswMDA2NTBlMCBnICAgIERGIC50ZXh0CTAwMDAwMDRiICBHTElCQ18yLjAgICBfSU9fc3B1dGJhY2tjCiswMDA1YjVhMCBnICAgIERGIC50ZXh0CTAwMDAwMTIyICBHTElCQ18yLjIgICBmcHV0d3MKKzAwMDJlZWEwICB3ICAgREYgLnRleHQJMDAwMDAwMzAgIEdMSUJDXzIuMyAgIHN0cnRvdWxfbAorMDAxMjU1ODggZyAgICBETyAucm9kYXRhCTAwMDAwMDEwICBHTElCQ18yLjEgICBpbjZhZGRyX2xvb3BiYWNrCiswMDBkMjkxMCBnICAgIERGIC50ZXh0CTAwMDAwMDNhICBHTElCQ18yLjMgICBsaXN0eGF0dHIKKzAwMDc1MDkwIGcgICAgREYgLnRleHQJMDAwMDAwMWMgIEdMSUJDXzIuMS4xIF9fc3RyY2hyX2MKKzAwMDJlMjIwICB3ICAgREYgLnRleHQJMDAwMDAwNmEgIEdMSUJDXzIuMCAgIGxjb25nNDhfcgorMDAwOWY1NTAgIHcgICBERiAudGV4dAkwMDAwMDA2MCAgR0xJQkNfMi4wICAgcmVnZnJlZQorMDAwZThmZjAgZyAgICBERiAudGV4dAkwMDAwMDAyZiAgR0xJQkNfMi4wICAgaW5ldF9uZXRvZgorMDAwYjc1MTAgIHcgICBERiAudGV4dAkwMDAwMDAzOCAgR0xJQkNfMi4wICAgc2NoZWRfZ2V0cGFyYW0KKzAwMDI0NGEwICB3ICAgREYgLnRleHQJMDAwMDAwMjMgIEdMSUJDXzIuMCAgIGdldHRleHQKKzAwMDkyMWYwICB3ICAgREYgLnRleHQJMDAwMDAxY2QgIEdMSUJDXzIuMSAgIHdhaXRpZAorMDAwMmFkYjAgZyAgICBERiAudGV4dAkwMDAwMDA2MCAgR0xJQkNfMi4wICAgc2lnZmlsbHNldAorMDAwNWM2NjAgZyAgICBERiAudGV4dAkwMDAwMDA2YyAgR0xJQkNfMi4yICAgX0lPX2luaXRfd21hcmtlcgorMDAwY2Q4MzAgIHcgICBERiAudGV4dAkwMDAwMDE1NyAgR0xJQkNfMi4zICAgZnV0aW1lcworMDAwZjY4NjAgZyAgICBERiAudGV4dAkwMDAwMDJkMyAgR0xJQkNfMi4wICAgY2FsbHJwYworMDAwNzUwYjAgZyAgICBERiAudGV4dAkwMDAwMDAxZSAgR0xJQkNfMi4xLjEgX19zdHJjaHJfZworMDAwY2MyZjAgZyAgICBERiAudGV4dAkwMDAwMDA0NCAgR0xJQkNfMi4wICAgZ3R0eQorMDAwODM1ODAgZyAgICBERiAudGV4dAkwMDAwMDAxYiAgR0xJQkNfMi4wICAgdGltZQorMDAwNmI4OTAgZyAgICBERiAudGV4dAkwMDAwMDE4MCAgR0xJQkNfMi4wICAgX19saWJjX21hbGxvYworMDAwOGY5MDAgZyAgICBERiAudGV4dAkwMDAwMDBhMiAgR0xJQkNfMi4wICAgZ2V0Z3JlbnQKKzAwMGQzMTMwICB3ICAgREYgLnRleHQJMDAwMDAwMzQgIEdMSUJDXzIuMSAgIG50cF9hZGp0aW1lCiswMDBlN2U1MCBnICAgIERGIC50ZXh0CTAwMDAwMDNiICBHTElCQ18yLjQgICBfX3djc25jcHlfY2hrCiswMDBjYjVhMCAgdyAgIERGIC50ZXh0CTAwMDAwMDc2ICBHTElCQ18yLjAgICBzZXRyZXVpZAorMDAwMmIxMzAgZyAgICBERiAudGV4dAkwMDAwMDA1ZiAgR0xJQkNfMi4wICAgc2lnb3JzZXQKKzAwMDY1NDIwIGcgICAgREYgLnRleHQJMDAwMDAwMjQgIEdMSUJDXzIuMCAgIF9JT19mbHVzaF9hbGwKKzAwMDhlMjcwICB3ICAgREYgLnRleHQJMDAwMDAxMTAgIEdMSUJDXzIuMCAgIHJlYWRkaXJfcgorMDAwMmRmODAgZyAgICBERiAudGV4dAkwMDAwMDAyZSAgR0xJQkNfMi4wICAgZHJhbmQ0OF9yCiswMDA2YmExMCAgdyAgIERGIC50ZXh0CTAwMDAwMWM1ICBHTElCQ18yLjAgICBtZW1hbGlnbgorMDAwNTBhNTAgIHcgICBERiAudGV4dAkwMDAwMDAzOSAgR0xJQkNfMi4wICAgdmZzY2FuZgorMDAwNWFkYzAgZyAgICBERiAudGV4dAkwMDAwMDEzYyAgR0xJQkNfMi4yICAgZnNldHBvczY0CiswMDEwZDkwMCBnICAgIERGIC50ZXh0CTAwMDAwMTBlIChHTElCQ18yLjEpICBmc2V0cG9zNjQKKzAwMGVhY2EwIGcgICAgREYgLnRleHQJMDAwMDAwYjAgIEdMSUJDXzIuMCAgIGVuZG5ldGVudAorMDAwZDBhYTAgZyAgICBERiAudGV4dAkwMDAwMDFjZCAgR0xJQkNfMi4wICAgaHNlYXJjaF9yCiswMDBlOGJmMCBnICAgIERGIC50ZXh0CTAwMDAwMDQ2ICBHTElCQ18yLjQgICBfX3N0YWNrX2Noa19mYWlsCiswMDA4MTkxMCAgdyAgIERGIC50ZXh0CTAwMDAwMDQ3ICBHTElCQ18yLjEgICB3Y3NjYXNlY21wCiswMDBjZjdlMCBnICAgIERGIC50ZXh0CTAwMDAwMTZmICBHTElCQ18yLjAgICBkYWVtb24KKzAwMDVmNWYwIGcgICAgREYgLnRleHQJMDAwMDAwOWEgIEdMSUJDXzIuMCAgIF9JT19mZW9mCiswMDEwMDRmMCBnICAgIERGIC50ZXh0CTAwMDAwMDVhICBHTElCQ18yLjEgICBrZXlfc2V0c2VjcmV0CiswMDBjMjBiMCBnICAgIERGIC50ZXh0CTAwMDAwMDhlICBHTElCQ18yLjAgICBfX2x4c3RhdAorMDAwZmFiNTAgZyAgICBERiAudGV4dAkwMDAwMDEyYSAgR0xJQkNfMi4wICAgc3ZjX3J1bgorMDAwNWQwMDAgZyAgICBERiAudGV4dAkwMDAwMDA5MyAgR0xJQkNfMi4yICAgX0lPX3dkZWZhdWx0X2ZpbmlzaAorMDAxMTBmOTAgZyAgICBERiAudGV4dAkwMDAwMDA2MiAoR0xJQkNfMi4wKSAgc2htY3RsCiswMDA3ODZlMCAgdyAgIERGIC50ZXh0CTAwMDAwMDQwICBHTElCQ18yLjEgICBfX3djc3RvdWxfbAorMDAwZDQ4NzAgZyAgICBERiAudGV4dAkwMDAwMDA2NSAgR0xJQkNfMi4yICAgc2htY3RsCiswMDBkMzU1MCBnICAgIERGIC50ZXh0CTAwMDAwMDM4ICBHTElCQ18yLjQgICBpbm90aWZ5X3JtX3dhdGNoCiswMDEwMzU3MCBnICAgIERGIC50ZXh0CTAwMDAwMGJjICBHTElCQ18yLjMuNCB4ZHJfcXVhZF90CiswMDA1ODI4MCBnICAgIERGIC50ZXh0CTAwMDAwMGY4ICBHTElCQ18yLjAgICBfSU9fZmZsdXNoCiswMDA3NmJkMCBnICAgIERGIC50ZXh0CTAwMDAwMjE4ICBHTElCQ18yLjAgICBfX21icnRvd2MKKzAwMGM1MGEwICB3ICAgREYgLnRleHQJMDAwMDAwMzQgIEdMSUJDXzIuMCAgIHVubGluaworMDAwNWJlMDAgZyAgICBERiAudGV4dAkwMDAwMDEwMSAgR0xJQkNfMi4wICAgcHV0Y2hhcgorMDAwZmNmNDAgZyAgICBERiAudGV4dAkwMDAwMDAzMiAgR0xJQkNfMi4wICAgeGRybWVtX2NyZWF0ZQorMDAwZGY4NTAgZyAgICBERiAudGV4dAkwMDAwMDAzYyAgR0xJQkNfMi4wICAgcHRocmVhZF9tdXRleF9sb2NrCiswMDA2MWZlMCBnICAgIERGIC50ZXh0CTAwMDAwMGE3ICBHTElCQ18yLjEgICBmZ2V0c191bmxvY2tlZAorMDAwZDc4MjAgZyAgICBERiAudGV4dAkwMDAwMDNjMyAgR0xJQkNfMi4wICAgcHV0c3BlbnQKKzAwMGQzYjgwIGcgICAgREYgLnRleHQJMDAwMDAwMzcgIEdMSUJDXzIuMCAgIGxpc3RlbgorMDAxMDM2ZjAgZyAgICBERiAudGV4dAkwMDAwMDAzZiAgR0xJQkNfMi4xICAgeGRyX2ludDMyX3QKKzAwMGQ0M2MwICB3ICAgREYgLnRleHQJMDAwMDAwYzUgIEdMSUJDXzIuMCAgIG1zZ3JjdgorMDAwZWUzNDAgZyAgICBERiAudGV4dAkwMDAwMDA2MCAgR0xJQkNfMi4wICAgX19pdmFsaWR1c2VyCiswMDBlYzM4MCBnICAgIERGIC50ZXh0CTAwMDAwMGEyICBHTElCQ18yLjAgICBnZXRycGNlbnQKKzAwMGNiYTEwICB3ICAgREYgLnRleHQJMDAwMDAwODggIEdMSUJDXzIuMCAgIHNlbGVjdAorMDAwZDNkMTAgIHcgICBERiAudGV4dAkwMDAwMDA2YyAgR0xJQkNfMi4wICAgX19zZW5kCiswMDBkNjNmMCAgdyAgIERGIC50ZXh0CTAwMDAwMGNiICBHTElCQ18yLjAgICBpc3dwcmludAorMDAwYzJlYzAgIHcgICBERiAudGV4dAkwMDAwMDAzOCAgR0xJQkNfMi4wICAgbWtkaXIKKzAwMGQ2YTIwIGcgICAgREYgLnRleHQJMDAwMDAwOTAgIEdMSUJDXzIuMSAgIF9faXN3YWxudW1fbAorMDAwMjNlMzAgIHcgICBERiAudGV4dAkwMDAwMDAxNSAgR0xJQkNfMi4zICAgaXNwdW5jdF9sCiswMDA2MTdjMCBnICAgIERGIC50ZXh0CTAwMDAwMDM2ICBHTElCQ19QUklWQVRFIF9fbGliY19mYXRhbAorMDAxNDYzNzQgZyAgICBETyAuYnNzCTAwMDAwMDA0ICBHTElCQ18yLjEgICBhcmdwX3Byb2dyYW1fdmVyc2lvbl9ob29rCiswMDBkNDdhMCBnICAgIERGIC50ZXh0CTAwMDAwMDYwICBHTElCQ18yLjAgICBzaG1kdAorMDAwNmNmZjAgZyAgICBERiAudGV4dAkwMDAwMDQ4NyAgR0xJQkNfMi4wICAgcmVhbGxvYworMDAwYzEwYzAgIHcgICBERiAudGV4dAkwMDAwMDBlZiAgR0xJQkNfMi4xICAgX19wd3JpdGU2NAorMDAwMmQ2ZjAgIHcgICBERiAudGV4dAkwMDAwMDA3ZiAgR0xJQkNfMi4wICAgc2V0c3RhdGUKKzAwMGMyNzcwICB3ICAgREYgLnRleHQJMDAwMDAwMzggIEdMSUJDXzIuMCAgIGZzdGF0ZnMKKzAwMTI3NTRlIGcgICAgRE8gLnJvZGF0YQkwMDAwMDAwNSAgR0xJQkNfMi4wICAgX2xpYmNfaW50bF9kb21haW5uYW1lCiswMDEyZDUxOCBnICAgIERPIC5yb2RhdGEJMDAwMDAwMDQgIEdMSUJDXzIuMCAgIGhfbmVycgorMDAwZjIzZDAgZyAgICBERiAudGV4dAkwMDAwMDMxYyAgR0xJQkNfMi4xICAgaWZfbmFtZWluZGV4CiswMDA3Njg3MCAgdyAgIERGIC50ZXh0CTAwMDAwMThlICBHTElCQ18yLjAgICBidG93YworMDAwNzI0NzAgZyAgICBERiAudGV4dAkwMDAwMDA1NCAgR0xJQkNfMi4wICAgX19hcmd6X3N0cmluZ2lmeQorMDAwNWE5ODAgZyAgICBERiAudGV4dAkwMDAwMDBhYyAgR0xJQkNfMi4wICAgX0lPX3VuZ2V0YworMDAwNzVhMzAgZyAgICBERiAudGV4dAkwMDAwMDAyMiAgR0xJQkNfMi4xLjEgX19tZW1zZXRfY2MKKzAwMDhlM2EwIGcgICAgREYgLnRleHQJMDAwMDAwNjggIEdMSUJDXzIuMCAgIHJld2luZGRpcgorMDAwNWM2MjAgZyAgICBERiAudGV4dAkwMDAwMDAzZiAgR0xJQkNfMi4yICAgX0lPX2FkanVzdF93Y29sdW1uCiswMDAyZmNlMCAgdyAgIERGIC50ZXh0CTAwMDAwMDNmICBHTElCQ18yLjAgICBzdHJ0b2xkCiswMDBkNmFiMCBnICAgIERGIC50ZXh0CTAwMDAwMDkyICBHTElCQ18yLjEgICBfX2lzd2FscGhhX2wKKzAwMTAwN2UwIGcgICAgREYgLnRleHQJMDAwMDAwNjggIEdMSUJDXzIuMCAgIHhkcl9rZXlfbmV0c3RyZXMKKzAwMTExZDUwIGcgICAgREYgLnRleHQJMDAwMDAwZTUgKEdMSUJDXzIuMCkgIGdldGFsaWFzZW50X3IKKzAwMGYwZmQwIGcgICAgREYgLnRleHQJMDAwMDAwZTIgIEdMSUJDXzIuMS4yIGdldGFsaWFzZW50X3IKKzAwMGNiY2UwICB3ICAgREYgLnRleHQJMDAwMDAwNjUgIEdMSUJDXzIuMCAgIGZzeW5jCiswMDA4MjkzMCBnICAgIERGIC50ZXh0CTAwMDAwMDhkICBHTElCQ18yLjAgICBjbG9jaworMDAwNzVhMzAgZyAgICBERiAudGV4dAkwMDAwMDAyMiAgR0xJQkNfMi4xLjEgX19tZW1zZXRfY2cKKzAwMTA2ODUwIGcgICAgREYgLnRleHQJMDAwMDAwNjMgIEdMSUJDXzIuMSAgIHB1dG1zZworMDAwZjk2NDAgZyAgICBERiAudGV4dAkwMDAwMDA4MyAgR0xJQkNfMi4wICAgeGRyX3JlcGx5bXNnCiswMDBkNDFjMCBnICAgIERGIC50ZXh0CTAwMDAwMDQxICBHTElCQ18yLjIuNCBzb2NrYXRtYXJrCiswMDBkNWM4MCBnICAgIERGIC50ZXh0CTAwMDAwMDc1ICBHTElCQ18yLjAgICB0b3d1cHBlcgorMDAwMmI5NTAgZyAgICBERiAudGV4dAkwMDAwMDI2NyAgR0xJQkNfMi4wICAgYWJvcnQKKzAwMTQzODNjIGcgICAgRE8gLmRhdGEJMDAwMDAwMDQgIEdMSUJDXzIuMCAgIHN0ZGluCiswMDBmYzcyMCBnICAgIERGIC50ZXh0CTAwMDAwMDY4ICBHTElCQ18yLjAgICB4ZHJfdV9zaG9ydAorMDAwNjU0NTAgZyAgICBERiAudGV4dAkwMDAwMDFmZCAgR0xJQkNfMi4wICAgX0lPX2ZsdXNoX2FsbF9saW5lYnVmZmVyZWQKKzAwMDJlNGUwIGcgICAgREYgLnRleHQJMDAwMDAwNDYgIEdMSUJDXzIuMCAgIHN0cnRvbGwKKzAwMDkyYTg0IGcgICAgREYgLnRleHQJMDAwMDAwMTMgIEdMSUJDXzIuMCAgIF9leGl0CiswMDAzOWQyMCBnICAgIERGIC50ZXh0CTAwMDAwMDI5ICBHTElCQ18yLjEgICB3Y3N0b3VtYXgKKzAwMGZhM2UwIGcgICAgREYgLnRleHQJMDAwMDAyOTUgIEdMSUJDXzIuMiAgIHN2Y19nZXRyZXFfY29tbW9uCiswMDA1YWE0MCAgdyAgIERGIC50ZXh0CTAwMDAwMGM5ICBHTElCQ18yLjAgICB2c3ByaW50ZgorMDAwMmI0MjAgIHcgICBERiAudGV4dAkwMDAwMDA1NSAgR0xJQkNfMi4xICAgc2lnd2FpdGluZm8KKzAwMGQ0ZTAwICB3ICAgREYgLnRleHQJMDAwMDAwOTIgIEdMSUJDXzIuMiAgIG1vbmNvbnRyb2wKKzAwMGQzZjIwICB3ICAgREYgLnRleHQJMDAwMDAwMzcgIEdMSUJDXzIuMCAgIHNvY2tldHBhaXIKKzAwMGUxMmQwIGcgICAgREYgLnRleHQJMDAwMDAxMzYgIEdMSUJDX1BSSVZBVEUgX19yZXNfaWNsb3NlCiswMDAyZDI3MCBnICAgIERGIC50ZXh0CTAwMDAwMDQ0ICBHTElCQ18yLjAgICBkaXYKKzAwMDcwZDIwICB3ICAgREYgLnRleHQJMDAwMDAxOWIgIEdMSUJDXzIuMCAgIG1lbWNocgorMDAwMzQ5MzAgIHcgICBERiAudGV4dAkwMDAwMDAyOSAgR0xJQkNfMi4xICAgX19zdHJ0b2RfbAorMDAwNzA0YzAgZyAgICBERiAudGV4dAkwMDAwMDBiMyAgR0xJQkNfMi4wICAgc3RycGJyaworMDAwZWNjOTAgZyAgICBERiAudGV4dAkwMDAwMDAyZCAgR0xJQkNfMi4wICAgZXRoZXJfYXRvbgorMDAwNzVjMTAgIHcgICBERiAudGV4dAkwMDAwMDBiYiAgR0xJQkNfMi4yICAgbWVtcmNocgorMDAwMjM4NjAgZyAgICBERiAudGV4dAkwMDAwMDAzNyAgR0xJQkNfMi4wICAgdG9sb3dlcgorMDAwYzM2ODAgIHcgICBERiAudGV4dAkwMDAwMDA3MCAgR0xJQkNfMi4wICAgX19yZWFkCiswMDBkMDlmMCAgdyAgIERGIC50ZXh0CTAwMDAwMDI2ICBHTElCQ18yLjAgICBoZGVzdHJveQorMDAxMGEwYzAgZyAgICBERiAudGV4dAkwMDAwMDAzYSAgR0xJQkNfMi4wICAgX19yZWdpc3Rlcl9mcmFtZV9pbmZvX3RhYmxlCiswMDA1OWZjMCBnICAgIERGIC50ZXh0CTAwMDAwMDhkICBHTElCQ18yLjEgICBwb3BlbgorMDAxMGQzMTAgZyAgICBERiAudGV4dAkwMDAwMDA4YSAoR0xJQkNfMi4wKSAgcG9wZW4KKzAwMDZjZTAwICB3ICAgREYgLnRleHQJMDAwMDAxZTUgIEdMSUJDXzIuMCAgIGNmcmVlCiswMDAyM2M1MCBnICAgIERGIC50ZXh0CTAwMDAwMDI4ICBHTElCQ18yLjAgICBfdG9sb3dlcgorMDAwZWU3ODAgZyAgICBERiAudGV4dAkwMDAwMDBhMSAgR0xJQkNfMi4yICAgcnVzZXJva19hZgorMDAwZDI2MzAgIHcgICBERiAudGV4dAkwMDAwMDA2ZiAgR0xJQkNfMi4wICAgc3RlcAorMDAwMjQ0MjAgZyAgICBERiAudGV4dAkwMDAwMDA0OSAgR0xJQkNfMi4wICAgX19kY2dldHRleHQKKzAwMGQ2OGMwICB3ICAgREYgLnRleHQJMDAwMDAwNWQgIEdMSUJDXzIuMCAgIHRvd2N0cmFucworMDAwZDJhMTAgZyAgICBERiAudGV4dAkwMDAwMDA0NiAgR0xJQkNfMi4zICAgbHNldHhhdHRyCiswMDBjZGRhMCBnICAgIERGIC50ZXh0CTAwMDAwMDcxICBHTElCQ18yLjAgICBzZXR0dHllbnQKKzAwMGMzMDYwICB3ICAgREYgLnRleHQJMDAwMDAwZTUgIEdMSUJDXzIuMiAgIF9fb3BlbjY0CiswMDA5Mzc5MCBnICAgIERGIC50ZXh0CTAwMDAwMDEzICBHTElCQ18yLjAgICBfX2JzZF9nZXRwZ3JwCiswMDA5MzRjMCBnICAgIERGIC50ZXh0CTAwMDAwMDMxICBHTElCQ18yLjAgICBnZXRwaWQKKzAwMDM5ZDUwICB3ICAgREYgLnRleHQJMDAwMDAwNzkgIEdMSUJDXzIuMSAgIGdldGNvbnRleHQKKzAwMDJhNTYwICB3ICAgREYgLnRleHQJMDAwMDAwMzggIEdMSUJDXzIuMCAgIGtpbGwKKzAwMDcwODYwIGcgICAgREYgLnRleHQJMDAwMDAwYWUgIEdMSUJDXzIuMCAgIHN0cnNwbgorMDAwZGY1MzAgZyAgICBERiAudGV4dAkwMDAwMDAzYyAgR0xJQkNfMi4wICAgcHRocmVhZF9jb25kYXR0cl9pbml0CiswMDE0MzM0MCAgdyAgIERPIC5kYXRhCTAwMDAwMDA0ICBHTElCQ18yLjAgICBwcm9ncmFtX2ludm9jYXRpb25fbmFtZQorMDAwMmQzMTAgIHcgICBERiAudGV4dAkwMDAwMDA5NSAgR0xJQkNfMi4xLjEgaW1heGRpdgorMDAxMTBkZTAgZyAgICBERiAudGV4dAkwMDAwMDA0MCAoR0xJQkNfMi4yKSAgcG9zaXhfZmFsbG9jYXRlNjQKKzAwMGM5MzUwIGcgICAgREYgLnRleHQJMDAwMDAyOTUgIEdMSUJDXzIuMy4zIHBvc2l4X2ZhbGxvY2F0ZTY0CiswMDBmYTljMCBnICAgIERGIC50ZXh0CTAwMDAwMDljICBHTElCQ18yLjAgICBzdmNyYXdfY3JlYXRlCiswMDBiNzYwMCBnICAgIERGIC50ZXh0CTAwMDAwMDM0ICBHTElCQ18yLjAgICBfX3NjaGVkX2dldF9wcmlvcml0eV9tYXgKKzAwMDcyMmYwICB3ICAgREYgLnRleHQJMDAwMDAwNDIgIEdMSUJDXzIuMCAgIGFyZ3pfZXh0cmFjdAorMDAwMjQzZTAgIHcgICBERiAudGV4dAkwMDAwMDAxNSAgR0xJQkNfMi4yICAgYmluZF90ZXh0ZG9tYWluX2NvZGVzZXQKKzAwMDU4M2EwIGcgICAgREYgLnRleHQJMDAwMDAxZGYgIEdMSUJDXzIuMiAgIGZnZXRwb3MKKzAwMDVhYmIwIGcgICAgREYgLnRleHQJMDAwMDAxYWYgIEdMSUJDXzIuMiAgIF9JT19mZ2V0cG9zNjQKKzAwMTBkNGMwIGcgICAgREYgLnRleHQJMDAwMDAxM2IgKEdMSUJDXzIuMCkgIGZnZXRwb3MKKzAwMTBkNjIwIGcgICAgREYgLnRleHQJMDAwMDAxODQgKEdMSUJDXzIuMSkgIF9JT19mZ2V0cG9zNjQKKzAwMDZmYzkwICB3ICAgREYgLnRleHQJMDAwMDAwNTcgIEdMSUJDXzIuMCAgIHN0cmR1cAorMDAwYzQwNzAgZyAgICBERiAudGV4dAkwMDAwMDAyMiAgR0xJQkNfMi4xICAgY3JlYXQ2NAorMDAwNjFjYzAgIHcgICBERiAudGV4dAkwMDAwMDAyYSAgR0xJQkNfMi4wICAgZ2V0Y191bmxvY2tlZAorMDAwZmFjODAgZyAgICBERiAudGV4dAkwMDAwMDA0MyAgR0xJQkNfMi4wICAgc3ZjX2V4aXQKKzAwMDg4ZWQwIGcgICAgREYgLnRleHQJMDAwMDAwNDUgIEdMSUJDXzIuMCAgIHN0cmZ0aW1lCiswMDBlMGMzMCBnICAgIERGIC50ZXh0CTAwMDAwM2U1ICBHTElCQ18yLjAgICBpbmV0X3B0b24KKzAwMDc0ZmIwIGcgICAgREYgLnRleHQJMDAwMDAwNDUgIEdMSUJDXzIuMS4xIF9fc3RybmNhdF9nCiswMDA2MTNhMCBnICAgIERGIC50ZXh0CTAwMDAwMDBmICBHTElCQ18yLjIgICBfX2ZsYmYKKzAwMGMzZTEwIGcgICAgREYgLnRleHQJMDAwMDAxMzAgIEdMSUJDXzIuMSAgIGxvY2tmNjQKKzAwMDVjM2UwIGcgICAgREYgLnRleHQJMDAwMDAwMmIgIEdMSUJDXzIuMiAgIF9JT19zd2l0Y2hfdG9fbWFpbl93Z2V0X2FyZWEKKzAwMTAxZWEwIGcgICAgREYgLnRleHQJMDAwMDAyM2IgIEdMSUJDXzIuMCAgIHhlbmNyeXB0CiswMDEwNjhjMCBnICAgIERGIC50ZXh0CTAwMDAwMDQ2ICBHTElCQ18yLjEgICBwdXRwbXNnCiswMDE0MzMzOCAgdyAgIERPIC5kYXRhCTAwMDAwMDA4ICBHTElCQ18yLjAgICB0em5hbWUKKzAwMDM3NzAwIGcgICAgREYgLnRleHQJMDAwMDAwN2QgIEdMSUJDX1BSSVZBVEUgX19saWJjX3N5c3RlbQorMDAxMDM3ZTAgZyAgICBERiAudGV4dAkwMDAwMDA2OSAgR0xJQkNfMi4xICAgeGRyX3VpbnQxNl90CiswMDA2OGVjMCBnICAgIERGIC50ZXh0CTAwMDAwMTRiICBHTElCQ18yLjAgICBfX2xpYmNfbWFsbG9wdAorMDAwMmFmYzAgIHcgICBERiAudGV4dAkwMDAwMDBhMiAgR0xJQkNfMi4xICAgc3lzdl9zaWduYWwKKzAwMDJmNTEwICB3ICAgREYgLnRleHQJMDAwMDAwMzAgIEdMSUJDXzIuMyAgIHN0cnRvbGxfbAorMDAwZGYzMTAgZyAgICBERiAudGV4dAkwMDAwMDA0MyAgR0xJQkNfMi4wICAgcHRocmVhZF9hdHRyX2dldHNjaGVkcGFyYW0KKzAwMGMzZjgwIGcgICAgREYgLnRleHQJMDAwMDAwMzggIEdMSUJDXzIuMCAgIF9fZHVwMgorMDAwZGY3YzAgZyAgICBERiAudGV4dAkwMDAwMDAzYyAgR0xJQkNfMi4wICAgcHRocmVhZF9tdXRleF9kZXN0cm95CiswMDA1YjBjMCAgdyAgIERGIC50ZXh0CTAwMDAwMGU3ICBHTElCQ18yLjIgICBmZ2V0d2MKKzAwMGNhYzYwIGcgICAgREYgLnRleHQJMDAwMDAwNzQgIEdMSUJDXzIuMCAgIHZsaW1pdAorMDAwYzJjYjAgIHcgICBERiAudGV4dAkwMDAwMDAzOCAgR0xJQkNfMi4wICAgY2htb2QKKzAwMGNhZmMwICB3ICAgREYgLnRleHQJMDAwMDAwNzMgIEdMSUJDXzIuMCAgIHNicmsKKzAwMDIzNTUwIGcgICAgREYgLnRleHQJMDAwMDAxNTAgIEdMSUJDXzIuMCAgIF9fYXNzZXJ0X2ZhaWwKKzAwMTAyMWMwIGcgICAgREYgLnRleHQJMDAwMDAyN2EgIEdMSUJDXzIuMSAgIGNsbnR1bml4X2NyZWF0ZQorMDAwNzUxMTAgZyAgICBERiAudGV4dAkwMDAwMDAyMCAgR0xJQkNfMi4xLjEgX19zdHJyY2hyX2MKKzAwMDIzY2IwICB3ICAgREYgLnRleHQJMDAwMDAwMGIgIEdMSUJDXzIuMSAgIF9fdG9hc2NpaV9sCiswMDBkNWYxMCAgdyAgIERGIC50ZXh0CTAwMDAwMGM5ICBHTElCQ18yLjAgICBpc3dhbG51bQorMDAwMjk0NzAgIHcgICBERiAudGV4dAkwMDAwMDAxMSAgR0xJQkNfMi4wICAgZmluaXRlCiswMDBlZGJjMCBnICAgIERGIC50ZXh0CTAwMDAwMDZhICBHTElCQ18yLjAgICBldGhlcl9udG9hX3IKKzAwMGNjZWMwIGcgICAgREYgLnRleHQJMDAwMDA4ZDUgIEdMSUJDXzIuMiAgIF9fZ2V0bW50ZW50X3IKKzAwMDQ2NTMwIGcgICAgREYgLnRleHQJMDAwMDAwMzkgIEdMSUJDXzIuMCAgIHByaW50ZgorMDAwMjNkNTAgZyAgICBERiAudGV4dAkwMDAwMDAxNSAgR0xJQkNfMi4xICAgX19pc2FsbnVtX2wKKzAwMGQzYTUwICB3ICAgREYgLnRleHQJMDAwMDAwNmMgIEdMSUJDXzIuMCAgIF9fY29ubmVjdAorMDAwZWE5NjAgZyAgICBERiAudGV4dAkwMDAwMDE1NiAgR0xJQkNfMi4wICAgZ2V0bmV0YnluYW1lCiswMDBjYzFiMCBnICAgIERGIC50ZXh0CTAwMDAwMDJiICBHTElCQ18yLjAgICBta3N0ZW1wCiswMDA3NTEzMCBnICAgIERGIC50ZXh0CTAwMDAwMDMzICBHTElCQ18yLjEuMSBfX3N0cnJjaHJfZworMDAwYzJhMTAgZyAgICBERiAudGV4dAkwMDAwMDA5NCAgR0xJQkNfMi4xICAgc3RhdHZmcworMDAwYzNjYzAgIHcgICBERiAudGV4dAkwMDAwMDAzOCAgR0xJQkNfMi4wICAgZmxvY2sKKzAwMGQxZjQwICB3ICAgREYgLnRleHQJMDAwMDAxNWMgIEdMSUJDXzIuMCAgIGVycm9yX2F0X2xpbmUKKzAwMDYwMTkwIGcgICAgREYgLnRleHQJMDAwMDAwZjYgIEdMSUJDXzIuMCAgIHJld2luZAorMDAwMmQyMzAgZyAgICBERiAudGV4dAkwMDAwMDAzMSAgR0xJQkNfMi4wICAgbGxhYnMKKzAwMDcyZTUwICB3ICAgREYgLnRleHQJMDAwMDEwOWYgIEdMSUJDXzIuMyAgIHN0cmNvbGxfbAorMDAxNDY1YTAgZyAgICBETyAuYnNzCTAwMDAwMDBjICBHTElCQ18yLjAgICBfbnVsbF9hdXRoCiswMDA4MmFmMCAgdyAgIERGIC50ZXh0CTAwMDAwMDMyICBHTElCQ18yLjAgICBsb2NhbHRpbWVfcgorMDAwNzVmODAgZyAgICBERiAudGV4dAkwMDAwMDAzZSAgR0xJQkNfMi4wICAgd2NzY3NwbgorMDAwY2FjZTAgZyAgICBERiAudGV4dAkwMDAwMDE1MCAgR0xJQkNfMi4wICAgdnRpbWVzCiswMDAyOTQ5MCAgdyAgIERGIC50ZXh0CTAwMDAwMDFlICBHTElCQ18yLjAgICBjb3B5c2lnbgorMDAwNzExYzAgZyAgICBERiAudGV4dAkwMDAwMDA5MSAgR0xJQkNfMi4wICAgX19zdHBuY3B5CiswMDBmNDRmMCBnICAgIERGIC50ZXh0CTAwMDAwMDkwICBHTElCQ18yLjUgICBpbmV0Nl9vcHRfZmluaXNoCiswMDA5MjZkMCAgdyAgIERGIC50ZXh0CTAwMDAwMDZjICBHTElCQ18yLjIuNiBfX25hbm9zbGVlcAorMDAwMjk4NDAgIHcgICBERiAudGV4dAkwMDAwMDA5YSAgR0xJQkNfMi4wICAgbW9kZmYKKzAwMGQ2MjUwICB3ICAgREYgLnRleHQJMDAwMDAwY2IgIEdMSUJDXzIuMCAgIGlzd2xvd2VyCiswMDAyZmM2MCAgdyAgIERGIC50ZXh0CTAwMDAwMDNmICBHTElCQ18yLjAgICBzdHJ0b2QKKzAwMDI5ZWUwIGcgICAgREYgLnRleHQJMDAwMDAwM2UgIEdMSUJDXzIuMCAgIHNldGptcAorMDAwYzhlNTAgZyAgICBERiAudGV4dAkwMDAwMDBhNCAgR0xJQkNfMi4xICAgX19wb2xsCiswMDAyM2JiMCBnICAgIERGIC50ZXh0CTAwMDAwMDQ4ICBHTElCQ18yLjAgICBpc3NwYWNlCiswMDBlODg3MCBnICAgIERGIC50ZXh0CTAwMDAwMDJiICBHTElCQ18yLjQgICBfX2NvbmZzdHJfY2hrCiswMDA1NjI0MCBnICAgIERGIC50ZXh0CTAwMDAwMDgwICBHTElCQ18yLjAgICB0bXBuYW1fcgorMDAwZDcxMjAgZyAgICBERiAudGV4dAkwMDAwMDA4YiAgR0xJQkNfMi4xICAgX193Y3R5cGVfbAorMDAwNWIzNTAgZyAgICBERiAudGV4dAkwMDAwMDE3OSAgR0xJQkNfMi4yICAgZmdldHdzCiswMDEwOGVmMCBnICAgIERGIC50ZXh0CTAwMDAwMDE3ICBHTElCQ18yLjEgICBzZXR1dHhlbnQKKzAwMDIzZDcwIGcgICAgREYgLnRleHQJMDAwMDAwMTcgIEdMSUJDXzIuMSAgIF9faXNhbHBoYV9sCiswMDAyZmJlMCAgdyAgIERGIC50ZXh0CTAwMDAwMDNmICBHTElCQ18yLjAgICBzdHJ0b2YKKzAwMDc4YzUwICB3ICAgREYgLnRleHQJMDAwMDAwNDAgIEdMSUJDXzIuMSAgIF9fd2NzdG9sbF9sCiswMDBkNmM3MCAgdyAgIERGIC50ZXh0CTAwMDAwMDkzICBHTElCQ18yLjMgICBpc3dkaWdpdF9sCiswMDBkNDMwMCBnICAgIERGIC50ZXh0CTAwMDAwMGI2ICBHTElCQ19QUklWQVRFIF9fbGliY19tc2dzbmQKKzAwMDgyYTMwIGcgICAgREYgLnRleHQJMDAwMDAwMzUgIEdMSUJDXzIuMCAgIGdtdGltZQorMDAwMjMzMDAgZyAgICBERiAudGV4dAkwMDAwMDA4NCAgR0xJQkNfMi4zICAgX191c2Vsb2NhbGUKKzAwMGU3ZWYwIGcgICAgREYgLnRleHQJMDAwMDAwZTUgIEdMSUJDXzIuNCAgIF9fd2NzbmNhdF9jaGsKKzAwMDcxMGYwIGcgICAgREYgLnRleHQJMDAwMDAwMTAgIEdMSUJDXzIuMCAgIGZmcworMDAwZjk3MDAgZyAgICBERiAudGV4dAkwMDAwMDA1MCAgR0xJQkNfMi4wICAgeGRyX29wYXF1ZV9hdXRoCiswMDAyMjg5MCAgdyAgIERGIC50ZXh0CTAwMDAwMDFlICBHTElCQ18yLjAgICBfX2N0eXBlX2dldF9tYl9jdXJfbWF4CiswMDBkNmQxMCBnICAgIERGIC50ZXh0CTAwMDAwMDkyICBHTElCQ18yLjEgICBfX2lzd2xvd2VyX2wKKzAwMDI5YWUwICB3ICAgREYgLnRleHQJMDAwMDAxODcgIEdMSUJDXzIuMCAgIG1vZGZsCiswMDA3MmNhMCBnICAgIERGIC50ZXh0CTAwMDAwMTdkICBHTElCQ18yLjAgICBlbnZ6X2FkZAorMDAwNzBhYjAgZyAgICBERiAudGV4dAkwMDAwMDExMiAgR0xJQkNfMi4wICAgc3RydG9rCiswMDEwODVhMCAgdyAgIERGIC50ZXh0CTAwMDAwMDNiICBHTElCQ18yLjEgICBnZXRwdAorMDAwMmI0ODAgIHcgICBERiAudGV4dAkwMDAwMDBhMCAgR0xJQkNfMi4xICAgc2lncXVldWUKKzAwMDJlM2EwIGcgICAgREYgLnRleHQJMDAwMDAwNDYgIEdMSUJDXzIuMCAgIHN0cnRvbAorMDAwOTEzMzAgZyAgICBERiAudGV4dAkwMDAwMDBiMCAgR0xJQkNfMi4wICAgZW5kcHdlbnQKKzAwMDU4ODYwIGcgICAgREYgLnRleHQJMDAwMDAwMzIgIEdMSUJDXzIuMSAgIF9JT19mb3BlbgorMDAxMGNhYjAgZyAgICBERiAudGV4dAkwMDAwMDA5NyAoR0xJQkNfMi4wKSAgX0lPX2ZvcGVuCiswMDA3NTMyMCBnICAgIERGIC50ZXh0CTAwMDAwMDM2ICBHTElCQ18yLjEuMSBfX3N0cnN0cl9jZworMDAwYzRiOTAgIHcgICBERiAudGV4dAkwMDAwMDAzMiAgR0xJQkNfMi4wICAgaXNhdHR5CiswMDBjNzQ0MCBnICAgIERGIC50ZXh0CTAwMDAwMGY5ICBHTElCQ18yLjAgICBmdHNfY2xvc2UKKzAwMGM0NDcwICB3ICAgREYgLnRleHQJMDAwMDAwNTMgIEdMSUJDXzIuMCAgIGxjaG93bgorMDAwY2NlMzAgIHcgICBERiAudGV4dAkwMDAwMDA4MyAgR0xJQkNfMi4wICAgc2V0bW50ZW50CiswMDBjZjk1MCAgdyAgIERGIC50ZXh0CTAwMDAwMDVjICBHTElCQ18yLjAgICBtbWFwCiswMDBmMGRiMCBnICAgIERGIC50ZXh0CTAwMDAwMGNhICBHTElCQ18yLjAgICBlbmRuZXRncmVudAorMDAwNjMyYTAgZyAgICBERiAudGV4dAkwMDAwMDAzZiAgR0xJQkNfMi4wICAgX0lPX2ZpbGVfcmVhZAorMDAwZjQxOTAgZyAgICBERiAudGV4dAkwMDAwMDE0MyAgR0xJQkNfMi4zLjQgc2V0c291cmNlZmlsdGVyCiswMDEwYTU3MCBnICAgIERGIC50ZXh0CTAwMDAwMDUyICBHTElCQ18yLjAgICBfX3JlZ2lzdGVyX2ZyYW1lCiswMDA5MGM4MCAgdyAgIERGIC50ZXh0CTAwMDAwMGQ0ICBHTElCQ18yLjAgICBnZXRwdworMDAwZDg0OTAgIHcgICBERiAudGV4dAkwMDAwMDIyNiAgR0xJQkNfMi4wICAgZmdldHNwZW50X3IKKzAwMGI3NWQwICB3ICAgREYgLnRleHQJMDAwMDAwMmMgIEdMSUJDXzIuMCAgIHNjaGVkX3lpZWxkCiswMDAwMDAwMCBnICAgIERPICpBQlMqCTAwMDAwMDAwICBHTElCQ19QUklWQVRFIEdMSUJDX1BSSVZBVEUKKzAwMDJlNGUwICB3ICAgREYgLnRleHQJMDAwMDAwNDYgIEdMSUJDXzIuMCAgIHN0cnRvcQorMDAwOTU4MTAgIHcgICBERiAudGV4dAkwMDAwMDBiNiAgR0xJQkNfMi4wICAgZ2xvYl9wYXR0ZXJuX3AKKzAwMDc1YmIwIGcgICAgREYgLnRleHQJMDAwMDAwNTMgIEdMSUJDXzIuMS4xIF9fc3Ryc2VwXzFjCiswMDA4MTk2MCAgdyAgIERGIC50ZXh0CTAwMDAwMDZjICBHTElCQ18yLjEgICB3Y3NuY2FzZWNtcAorMDAwOTAzOTAgZyAgICBERiAudGV4dAkwMDAwMDFlYyAgR0xJQkNfMi4xLjIgZ2V0Z3JuYW1fcgorMDAwODI5ZTAgZyAgICBERiAudGV4dAkwMDAwMDAzOSAgR0xJQkNfMi4wICAgY3RpbWVfcgorMDAxMGVmMDAgZyAgICBERiAudGV4dAkwMDAwMDA1ZiAoR0xJQkNfMi4wKSAgZ2V0Z3JuYW1fcgorMDAxMDM1NzAgZyAgICBERiAudGV4dAkwMDAwMDBiYyAgR0xJQkNfMi4zLjQgeGRyX3VfcXVhZF90CiswMDAyYzZiMCAgdyAgIERGIC50ZXh0CTAwMDAwMDg4ICBHTElCQ18yLjAgICBjbGVhcmVudgorMDAwZDcxMjAgIHcgICBERiAudGV4dAkwMDAwMDA4YiAgR0xJQkNfMi4zICAgd2N0eXBlX2wKKzAwMGMyYWIwIGcgICAgREYgLnRleHQJMDAwMDAwOTggIEdMSUJDXzIuMSAgIGZzdGF0dmZzCiswMDAyYTdmMCAgdyAgIERGIC50ZXh0CTAwMDAwMDYzICBHTElCQ18yLjAgICBzaWdibG9jaworMDAwZDQyNTAgZyAgICBERiAudGV4dAkwMDAwMDA1OCAgR0xJQkNfMi4xICAgX19saWJjX3NhX2xlbgorMDAwNWY1ZjAgIHcgICBERiAudGV4dAkwMDAwMDA5YSAgR0xJQkNfMi4wICAgZmVvZgorMDAxNDY1YjAgZyAgICBETyAuYnNzCTAwMDAwMDA0ICBHTElCQ18yLjEgICBfX2tleV9lbmNyeXB0c2Vzc2lvbl9wa19MT0NBTAorMDAwZmI4MjAgZyAgICBERiAudGV4dAkwMDAwMDAyMyAgR0xJQkNfMi4wICAgc3ZjdWRwX2NyZWF0ZQorMDAwZDY5MjAgIHcgICBERiAudGV4dAkwMDAwMDA5MiAgR0xJQkNfMi4zICAgaXN3eGRpZ2l0X2wKKzAwMGRmNGEwIGcgICAgREYgLnRleHQJMDAwMDAwNDMgIEdMSUJDXzIuMCAgIHB0aHJlYWRfYXR0cl9zZXRzY29wZQorMDAwNzFlMTAgIHcgICBERiAudGV4dAkwMDAwMDE1ZiAgR0xJQkNfMi4xLjEgc3RyY2hybnVsCiswMDBjYzEzMCAgdyAgIERGIC50ZXh0CTAwMDAwMDM0ICBHTElCQ18yLjAgICBzd2Fwb2ZmCiswMDE0MzNmYyBnICAgIERPIC5kYXRhCTAwMDAwMDA0IChHTElCQ18yLjApICBfX2N0eXBlX3RvbG93ZXIKKzAwMGNmNjYwIGcgICAgREYgLnRleHQJMDAwMDAwMmMgIEdMSUJDXzIuMCAgIHN5c2xvZworMDAwMmVlYTAgIHcgICBERiAudGV4dAkwMDAwMDAzMCAgR0xJQkNfMi4xICAgX19zdHJ0b3VsX2wKKzAwMGMxNDkwIGcgICAgREYgLnRleHQJMDAwMDAwMDcgIEdMSUJDXzIuMiAgIHBvc2l4X3NwYXduYXR0cl9kZXN0cm95CiswMDEwZDdkMCBnICAgIERGIC50ZXh0CTAwMDAwMTEwIChHTElCQ18yLjApICBmc2V0cG9zCiswMDA1OGU0MCBnICAgIERGIC50ZXh0CTAwMDAwMTNlICBHTElCQ18yLjIgICBmc2V0cG9zCiswMDBjMGZkMCAgdyAgIERGIC50ZXh0CTAwMDAwMGVmICBHTElCQ18yLjEgICBwcmVhZDY0CiswMDBjMzdlMCAgdyAgIERGIC50ZXh0CTAwMDAwMGY3ICBHTElCQ18yLjQgICBlYWNjZXNzCiswMDBmM2I0MCBnICAgIERGIC50ZXh0CTAwMDAwMDFhICBHTElCQ18yLjMuMyBpbmV0Nl9vcHRpb25fYWxsb2MKKzAwMDg1YjgwIGcgICAgREYgLnRleHQJMDAwMDAwNDggIEdMSUJDXzIuMCAgIGR5c2l6ZQorMDAwYzRkZTAgIHcgICBERiAudGV4dAkwMDAwMDAzOCAgR0xJQkNfMi4wICAgc3ltbGluaworMDAxNDM4YzAgZyAgICBETyAuZGF0YQkwMDAwMDA1MCAgR0xJQkNfMi4wICAgX0lPX3N0ZG91dF8KKzAwMDVjNDQwIGcgICAgREYgLnRleHQJMDAwMDAwMzkgIEdMSUJDXzIuMiAgIF9JT193ZGVmYXVsdF91ZmxvdworMDAwZDczMDAgZyAgICBERiAudGV4dAkwMDAwMDBhMiAgR0xJQkNfMi4wICAgZ2V0c3BlbnQKKzAwMGRmMjIwIGcgICAgREYgLnRleHQJMDAwMDAwNDMgIEdMSUJDXzIuMCAgIHB0aHJlYWRfYXR0cl9zZXRkZXRhY2hzdGF0ZQorMDAwZDI3YzAgZyAgICBERiAudGV4dAkwMDAwMDA0MCAgR0xJQkNfMi4zICAgZmdldHhhdHRyCiswMDAyZGFiMCAgdyAgIERGIC50ZXh0CTAwMDAwMTA0ICBHTElCQ18yLjAgICBzcmFuZG9tX3IKKzAwMGNkYjAwICB3ICAgREYgLnRleHQJMDAwMDAwMzggIEdMSUJDXzIuMCAgIHRydW5jYXRlCiswMDA2YjU5MCBnICAgIERGIC50ZXh0CTAwMDAwMmZkICBHTElCQ18yLjAgICBfX2xpYmNfY2FsbG9jCiswMDAyM2IxMCBnICAgIERGIC50ZXh0CTAwMDAwMDQ4ICBHTElCQ18yLjAgICBpc3ByaW50CiswMDBjOTEyMCBnICAgIERGIC50ZXh0CTAwMDAwMDQ2ICBHTElCQ18yLjIgICBwb3NpeF9mYWR2aXNlCiswMDA3MTQxMCAgdyAgIERGIC50ZXh0CTAwMDAwMDQ2ICBHTElCQ18yLjAgICBtZW1jY3B5CiswMDA5MmM0MCBnICAgIERGIC50ZXh0CTAwMDAwMTdjICBHTElCQ18yLjAgICBleGVjbGUKKzAwMGQyNmEwIGcgICAgREYgLnRleHQJMDAwMDAwZTggIEdMSUJDXzIuMiAgIGdldGxvYWRhdmcKKzAwMDg4ZjIwIGcgICAgREYgLnRleHQJMDAwMDAwNDUgIEdMSUJDXzIuMiAgIHdjc2Z0aW1lCiswMDBjYTJhMCBnICAgIERGIC50ZXh0CTAwMDAwMDZjICBHTElCQ18yLjAgICBjZnNldGlzcGVlZAorMDAwZTQ0MDAgZyAgICBERiAudGV4dAkwMDAwMDIyOCAgR0xJQkNfMi4wICAgX19uc3NfY29uZmlndXJlX2xvb2t1cAorMDAwMmQyYzAgZyAgICBERiAudGV4dAkwMDAwMDA0NCAgR0xJQkNfMi4wICAgbGRpdgorMDAwZmMzYTAgZyAgICBERiAudGV4dAkwMDAwMDAwYSAgR0xJQkNfMi4wICAgeGRyX3ZvaWQKKzAwMGVkYjkwIGcgICAgREYgLnRleHQJMDAwMDAwMmQgIEdMSUJDXzIuMCAgIGV0aGVyX250b2EKKzAwMDQ0MWIwIGcgICAgREYgLnRleHQJMDAwMDAwZmUgIEdMSUJDXzIuMCAgIHBhcnNlX3ByaW50Zl9mb3JtYXQKKzAwMDVmYzYwICB3ICAgREYgLnRleHQJMDAwMDAwZTcgIEdMSUJDXzIuMCAgIGZnZXRjCiswMDBkMzhhMCBnICAgIERGIC50ZXh0CTAwMDAwMDQwICBHTElCQ18yLjUgICB0ZWUKKzAwMTAwNzcwIGcgICAgREYgLnRleHQJMDAwMDAwNmMgIEdMSUJDXzIuMCAgIHhkcl9rZXlfbmV0c3RhcmcKKzAwMDcxYmEwIGcgICAgREYgLnRleHQJMDAwMDAwZTMgIEdMSUJDXzIuMCAgIHN0cmZyeQorMDAwNWFhNDAgZyAgICBERiAudGV4dAkwMDAwMDBjOSAgR0xJQkNfMi4wICAgX0lPX3ZzcHJpbnRmCiswMDBjYmRmMCBnICAgIERGIC50ZXh0CTAwMDAwMDU3ICBHTElCQ18yLjAgICByZWJvb3QKKzAwMTExZTYwIGcgICAgREYgLnRleHQJMDAwMDAwNWYgKEdMSUJDXzIuMCkgIGdldGFsaWFzYnluYW1lX3IKKzAwMGYxNDkwIGcgICAgREYgLnRleHQJMDAwMDAxN2QgIEdMSUJDXzIuMS4yIGdldGFsaWFzYnluYW1lX3IKKzAwMDJkZWEwIGcgICAgREYgLnRleHQJMDAwMDAwMzcgIEdMSUJDXzIuMCAgIGpyYW5kNDgKKzAwMTExNDUwIGcgICAgREYgLnRleHQJMDAwMDAwNjYgKEdMSUJDXzIuMCkgIGdldGhvc3RieW5hbWVfcgorMDAwZTlmZDAgZyAgICBERiAudGV4dAkwMDAwMDI5ZSAgR0xJQkNfMi4xLjIgZ2V0aG9zdGJ5bmFtZV9yCiswMDA5MzM3MCBnICAgIERGIC50ZXh0CTAwMDAwMTQ1ICBHTElCQ18yLjAgICBleGVjbHAKKzAwMDcxYjYwIGcgICAgREYgLnRleHQJMDAwMDAwM2YgIEdMSUJDXzIuMCAgIHN3YWIKKzAwMDU2ZjQwIGcgICAgREYgLnRleHQJMDAwMDAwMmYgIEdMSUJDXzIuMCAgIF9JT19mdW5sb2NrZmlsZQorMDAwNTZlNzAgZyAgICBERiAudGV4dAkwMDAwMDA0YiAgR0xJQkNfMi4wICAgX0lPX2Zsb2NrZmlsZQorMDAwNzU4NjAgZyAgICBERiAudGV4dAkwMDAwMDA3MiAgR0xJQkNfMi4xLjEgX19zdHJzZXBfMmMKKzAwMDhlNDIwIGcgICAgREYgLnRleHQJMDAwMDAwNmMgIEdMSUJDXzIuMCAgIHNlZWtkaXIKKzAwMDIzY2UwICB3ICAgREYgLnRleHQJMDAwMDAwMTUgIEdMSUJDXzIuMyAgIGlzYmxhbmtfbAorMDAwMjNjYzAgIHcgICBERiAudGV4dAkwMDAwMDAxMSAgR0xJQkNfMi4xICAgX19pc2FzY2lpX2wKKzAwMDhlZWEwIGcgICAgREYgLnRleHQJMDAwMDAwMjQgIEdMSUJDXzIuMiAgIGFscGhhc29ydDY0CiswMDBmODc0MCBnICAgIERGIC50ZXh0CTAwMDAwMWE2ICBHTElCQ18yLjAgICBwbWFwX2dldHBvcnQKKzAwMTBlZDMwIGcgICAgREYgLnRleHQJMDAwMDAwMjQgKEdMSUJDXzIuMSkgIGFscGhhc29ydDY0CiswMDAzOWU0MCAgdyAgIERGIC50ZXh0CTAwMDAwMDY1ICBHTElCQ18yLjEgICBtYWtlY29udGV4dAorMDAwY2JkODAgZyAgICBERiAudGV4dAkwMDAwMDA2NSAgR0xJQkNfMi4wICAgZmRhdGFzeW5jCiswMDEwMTMyMCBnICAgIERGIC50ZXh0CTAwMDAwMWJkICBHTElCQ18yLjEgICBhdXRoZGVzX2dldHVjcmVkCiswMDBjZGI4MCBnICAgIERGIC50ZXh0CTAwMDAwMDYzICBHTElCQ18yLjEgICB0cnVuY2F0ZTY0CiswMDBkNmRiMCBnICAgIERGIC50ZXh0CTAwMDAwMDkyICBHTElCQ18yLjEgICBfX2lzd2dyYXBoX2wKKzAwMDIzZTMwIGcgICAgREYgLnRleHQJMDAwMDAwMTUgIEdMSUJDXzIuMSAgIF9faXNwdW5jdF9sCiswMDAzOWNjMCBnICAgIERGIC50ZXh0CTAwMDAwMDI5ICBHTElCQ18yLjEgICBzdHJ0b3VtYXgKKzAwMGQ5NzQwICB3ICAgREYgLnRleHQJMDAwMDAxOGQgIEdMSUJDXzIuMSAgIGFyZ3BfZmFpbHVyZQorMDAwNzEyNjAgZyAgICBERiAudGV4dAkwMDAwMDA2MiAgR0xJQkNfMi4wICAgX19zdHJjYXNlY21wCiswMDA1MGE1MCBnICAgIERGIC50ZXh0CTAwMDAwMDM5ICBHTElCQ18yLjAgICBfX3Zmc2NhbmYKKzAwMDU4NWEwICB3ICAgREYgLnRleHQJMDAwMDAxNzEgIEdMSUJDXzIuMCAgIGZnZXRzCiswMDBkNjdkMCBnICAgIERGIC50ZXh0CTAwMDAwMDZlICBHTElCQ18yLjAgICBfX2lzd2N0eXBlCiswMDExMTY0MCBnICAgIERGIC50ZXh0CTAwMDAwMGU1IChHTElCQ18yLjApICBnZXRuZXRlbnRfcgorMDAwZWFiYjAgZyAgICBERiAudGV4dAkwMDAwMDBlZCAgR0xJQkNfMi4xLjIgZ2V0bmV0ZW50X3IKKzAwMGMxNTQwIGcgICAgREYgLnRleHQJMDAwMDAwMWMgIEdMSUJDXzIuMiAgIHBvc2l4X3NwYXduYXR0cl9zZXRmbGFncworMDAxMTA5MjAgZyAgICBERiAudGV4dAkwMDAwMDAzMiAoR0xJQkNfMi4zLjMpIHNjaGVkX3NldGFmZmluaXR5CiswMDBiNzc1MCBnICAgIERGIC50ZXh0CTAwMDAwMTQ0ICBHTElCQ18yLjMuNCBzY2hlZF9zZXRhZmZpbml0eQorMDAwNjA1OTAgIHcgICBERiAudGV4dAkwMDAwMDAzYyAgR0xJQkNfMi4wICAgdnNjYW5mCiswMDA5MGZhMCBnICAgIERGIC50ZXh0CTAwMDAwMTJkICBHTElCQ18yLjAgICBnZXRwd25hbQorMDAwZjNiNjAgZyAgICBERiAudGV4dAkwMDAwMDA2YiAgR0xJQkNfMi4zLjMgaW5ldDZfb3B0aW9uX2FwcGVuZAorMDAwNmI1OTAgIHcgICBERiAudGV4dAkwMDAwMDJmZCAgR0xJQkNfMi4wICAgY2FsbG9jCiswMDAyZTUzMCBnICAgIERGIC50ZXh0CTAwMDAwMDQ1IChHTElCQ18yLjApICBfX3N0cnRvdXFfaW50ZXJuYWwKKzAwMDkzNTAwICB3ICAgREYgLnRleHQJMDAwMDAwMDggIEdMSUJDXzIuMCAgIGdldHBwaWQKKzAwMTI3NWE1IGcgICAgRE8gLnJvZGF0YQkwMDAwMDAxMiAgR0xJQkNfMi4wICAgX25sX2RlZmF1bHRfZGlybmFtZQorMDAxMDY3YTAgZyAgICBERiAudGV4dAkwMDAwMDA2MCAgR0xJQkNfMi4xICAgZ2V0bXNnCiswMDA1YzdhMCBnICAgIERGIC50ZXh0CTAwMDAwMDM4ICBHTElCQ18yLjIgICBfSU9fdW5zYXZlX3dtYXJrZXJzCiswMDEwOTIzMCBnICAgIERGIC50ZXh0CTAwMDAwMzUzICBHTElCQ19QUklWQVRFIF9kbF9hZGRyCiswMDBjZmFhMCAgdyAgIERGIC50ZXh0CTAwMDAwMDcwICBHTElCQ18yLjAgICBtc3luYworMDAwNjUwNzAgZyAgICBERiAudGV4dAkwMDAwMDA0MiAgR0xJQkNfMi4wICAgX0lPX2luaXQKKzAwMDI5N2EwIGcgICAgREYgLnRleHQJMDAwMDAwMGYgIEdMSUJDXzIuMSAgIF9fc2lnbmJpdAorMDAwYzk2YzAgZyAgICBERiAudGV4dAkwMDAwMDAyMiAgR0xJQkNfMi42ICAgZnV0aW1lbnMKKzAwMDU2Y2UwIGcgICAgREYgLnRleHQJMDAwMDAxOGYgIEdMSUJDXzIuNCAgIHJlbmFtZWF0CiswMDA4MjgwMCAgdyAgIERGIC50ZXh0CTAwMDAwMTJkICBHTElCQ18yLjAgICBhc2N0aW1lX3IKKzAwMDIzMjUwICB3ICAgREYgLnRleHQJMDAwMDAwODggIEdMSUJDXzIuMyAgIGZyZWVsb2NhbGUKKzAwMDZmZjUwIGcgICAgREYgLnRleHQJMDAwMDAwYWYgIEdMSUJDXzIuMCAgIHN0cmxlbgorMDAwMmQ3NzAgIHcgICBERiAudGV4dAkwMDAwMDA4NiAgR0xJQkNfMi4wICAgaW5pdHN0YXRlCiswMDBlN2ZlMCBnICAgIERGIC50ZXh0CTAwMDAwMDJiICBHTElCQ18yLjQgICBfX3dtZW1zZXRfY2hrCiswMDA1YTk4MCAgdyAgIERGIC50ZXh0CTAwMDAwMGFjICBHTElCQ18yLjAgICB1bmdldGMKKzAwMDc1ZWYwIGcgICAgREYgLnRleHQJMDAwMDAwMjEgIEdMSUJDXzIuMCAgIHdjc2NocgorMDAwMjM4ZTAgZyAgICBERiAudGV4dAkwMDAwMDA0OCAgR0xJQkNfMi4wICAgaXN4ZGlnaXQKKzAwMGVkNDgwIGcgICAgREYgLnRleHQJMDAwMDA3MDUgIEdMSUJDXzIuMCAgIGV0aGVyX2xpbmUKKzAwMDY0MzEwIGcgICAgREYgLnRleHQJMDAwMDAwNDcgIEdMSUJDXzIuMSAgIF9JT19maWxlX2luaXQKKzAwMDVjZDIwIGcgICAgREYgLnRleHQJMDAwMDAwZTcgIEdMSUJDXzIuMiAgIF9fd3VmbG93CiswMDBjM2QwMCBnICAgIERGIC50ZXh0CTAwMDAwMTA4ICBHTElCQ18yLjAgICBsb2NrZgorMDAxNDMzZjQgZyAgICBETyAuZGF0YQkwMDAwMDAwNCAoR0xJQkNfMi4wKSAgX19jdHlwZV9iCiswMDEwZTQ4MCBnICAgIERGIC50ZXh0CTAwMDAwMDZmIChHTElCQ18yLjApICBfSU9fZmlsZV9pbml0CiswMDBmZWQxMCBnICAgIERGIC50ZXh0CTAwMDAwMGFlICBHTElCQ18yLjEgICB4ZHJfYXV0aGRlc19jcmVkCiswMDBkNjdkMCAgdyAgIERGIC50ZXh0CTAwMDAwMDZlICBHTElCQ18yLjAgICBpc3djdHlwZQorMDAwZDAzYTAgZyAgICBERiAudGV4dAkwMDAwMDA2MyAgR0xJQkNfMi4wICAgcWVjdnQKKzAwMDc1YTAwIGcgICAgREYgLnRleHQJMDAwMDAwMjIgIEdMSUJDXzIuMS4xIF9fbWVtc2V0X2dnCiswMDEwZDQxMCBnICAgIERGIC50ZXh0CTAwMDAwMGEyIChHTElCQ18yLjApICB0bXBmaWxlCiswMDBmMGQzMCBnICAgIERGIC50ZXh0CTAwMDAwMDcxICBHTElCQ19QUklWQVRFIF9faW50ZXJuYWxfc2V0bmV0Z3JlbnQKKzAwMDc2YjgwIGcgICAgREYgLnRleHQJMDAwMDAwNDggIEdMSUJDXzIuMCAgIF9fbWJybGVuCiswMDA1NjAyMCBnICAgIERGIC50ZXh0CTAwMDAwMGEyICBHTElCQ18yLjEgICB0bXBmaWxlCiswMDEwMzg1MCBnICAgIERGIC50ZXh0CTAwMDAwMDY4ICBHTElCQ18yLjEgICB4ZHJfaW50OF90CiswMDBkNjljMCBnICAgIERGIC50ZXh0CTAwMDAwMDVkICBHTElCQ18yLjEgICBfX3Rvd3VwcGVyX2wKKzAwMGQ1NjYwICB3ICAgREYgLnRleHQJMDAwMDA0ZWMgIEdMSUJDXzIuMi4zIHNwcm9maWwKKzAwMGQzNmYwIGcgICAgREYgLnRleHQJMDAwMDAwMzggIEdMSUJDXzIuMi4xIHBpdm90X3Jvb3QKKzAwMDcyOTEwIGcgICAgREYgLnRleHQJMDAwMDAwN2EgIEdMSUJDXzIuMCAgIGVudnpfZW50cnkKKzAwMGY1N2EwIGcgICAgREYgLnRleHQJMDAwMDAwYmUgIEdMSUJDXzIuMCAgIHhkcl9hdXRodW5peF9wYXJtcworMDAwZmEwYjAgZyAgICBERiAudGV4dAkwMDAwMDA5ZSAgR0xJQkNfMi4wICAgeHBydF91bnJlZ2lzdGVyCiswMDE0MzRjMCBnICAgIERPIC5kYXRhCTAwMDAwMDk4ICBHTElCQ18yLjEgICBfSU9fMl8xX3N0ZG91dF8KKzAwMDIyOGIwICB3ICAgREYgLnRleHQJMDAwMDA3ZmEgIEdMSUJDXzIuMyAgIG5ld2xvY2FsZQorMDAwZWY3MDAgZyAgICBERiAudGV4dAkwMDAwMDVmOSAgR0xJQkNfMi4yICAgcmV4ZWNfYWYKKzAwMGQxMmQwICB3ICAgREYgLnRleHQJMDAwMDAyYmYgIEdMSUJDXzIuMCAgIHRzZWFyY2gKKzAwMGYxMzQwIGcgICAgREYgLnRleHQJMDAwMDAxMmQgIEdMSUJDXzIuMCAgIGdldGFsaWFzYnluYW1lCiswMDBmOWYxMCBnICAgIERGIC50ZXh0CTAwMDAwMDRlICBHTElCQ18yLjAgICBzdmNlcnJfcHJvZ3ZlcnMKKzAwMDIzZTUwICB3ICAgREYgLnRleHQJMDAwMDAwMTcgIEdMSUJDXzIuMyAgIGlzc3BhY2VfbAorMDAwNzIzNDAgIHcgICBERiAudGV4dAkwMDAwMDEyNCAgR0xJQkNfMi4wICAgYXJnel9pbnNlcnQKKzAwMDc1OTcwIGcgICAgREYgLnRleHQJMDAwMDAwMzEgIEdMSUJDXzIuMS4xIF9fbWVtY3B5X2MKKzAwMDJhMTMwICB3ICAgREYgLnRleHQJMDAwMDAwOGEgIEdMSUJDXzIuMCAgIGdzaWduYWwKKzAwMGY0NDUwIGcgICAgREYgLnRleHQJMDAwMDAwNDggIEdMSUJDXzIuNSAgIGluZXQ2X29wdF9nZXRfdmFsCiswMDExMTNlMCBnICAgIERGIC50ZXh0CTAwMDAwMDYzIChHTElCQ18yLjApICBnZXRob3N0YnluYW1lMl9yCiswMDAyY2ZmMCBnICAgIERGIC50ZXh0CTAwMDAwMDU3ICBHTElCQ18yLjEuMyBfX2N4YV9hdGV4aXQKKzAwMGU5ZDIwIGcgICAgREYgLnRleHQJMDAwMDAyYWMgIEdMSUJDXzIuMS4yIGdldGhvc3RieW5hbWUyX3IKKzAwMGMxMWIwIGcgICAgREYgLnRleHQJMDAwMDAwMzUgIEdMSUJDXzIuMiAgIHBvc2l4X3NwYXduX2ZpbGVfYWN0aW9uc19pbml0CiswMDA2ODVkMCAgdyAgIERGIC50ZXh0CTAwMDAwMjc3ICBHTElCQ18yLjAgICBtYWxsb2Nfc3RhdHMKKzAwMGQzNzMwICB3ICAgREYgLnRleHQJMDAwMDAwNDYgIEdMSUJDXzIuMCAgIHByY3RsCiswMDA2MTM1MCBnICAgIERGIC50ZXh0CTAwMDAwMDBmICBHTElCQ18yLjIgICBfX2Z3cml0aW5nCiswMDBjZWNmMCBnICAgIERGIC50ZXh0CTAwMDAwMDIzICBHTElCQ18yLjAgICBzZXRsb2dtYXNrCiswMDA3NThlMCBnICAgIERGIC50ZXh0CTAwMDAwMDg2ICBHTElCQ18yLjEuMSBfX3N0cnNlcF8zYworMDAwZDcyYTAgZyAgICBERiAudGV4dAkwMDAwMDA1ZCAgR0xJQkNfMi4xICAgX190b3djdHJhbnNfbAorMDAwZmM4OTAgZyAgICBERiAudGV4dAkwMDAwMDAxYSAgR0xJQkNfMi4wICAgeGRyX2VudW0KKzAwMTQxOWIwIGcgICAgRE8gLmRhdGEucmVsLnJvCTAwMDAwMDE0ICBHTElCQ18yLjAgICBoX2Vycmxpc3QKKzAwMDYxZWQwIGcgICAgREYgLnRleHQJMDAwMDAwNWIgIEdMSUJDXzIuMSAgIGZyZWFkX3VubG9ja2VkCiswMDA3NGNkMCBnICAgIERGIC50ZXh0CTAwMDAwMDMzICBHTElCQ18yLjEuMSBfX21lbWNweV9nCiswMDBkMzhlMCBnICAgIERGIC50ZXh0CTAwMDAwMDM0ICBHTElCQ18yLjQgICB1bnNoYXJlCiswMDBjYWY3MCAgdyAgIERGIC50ZXh0CTAwMDAwMDQ0ICBHTElCQ18yLjAgICBicmsKKzAwMGQzZDEwICB3ICAgREYgLnRleHQJMDAwMDAwNmMgIEdMSUJDXzIuMCAgIHNlbmQKKzAwMDIzZTEwICB3ICAgREYgLnRleHQJMDAwMDAwMTcgIEdMSUJDXzIuMyAgIGlzcHJpbnRfbAorMDAwODViMDAgIHcgICBERiAudGV4dAkwMDAwMDAzYSAgR0xJQkNfMi4wICAgc2V0aXRpbWVyCiswMDBkNjhjMCBnICAgIERGIC50ZXh0CTAwMDAwMDVkICBHTElCQ18yLjEgICBfX3Rvd2N0cmFucworMDAxNDE2YTAgZyAgICBETyAuZGF0YS5yZWwucm8JMDAwMDAwODAgKEdMSUJDXzIuMCkgIHN5c19zaWdhYmJyZXYKKzAwMDM5ZGQwICB3ICAgREYgLnRleHQJMDAwMDAwNjYgIEdMSUJDXzIuMCAgIHNldGNvbnRleHQKKzAwMTQxNmEwIGcgICAgRE8gLmRhdGEucmVsLnJvCTAwMDAwMTAwIChHTElCQ18yLjEpICBzeXNfc2lnYWJicmV2CiswMDE0MTZhMCBnICAgIERPIC5kYXRhLnJlbC5ybwkwMDAwMDEwNCAgR0xJQkNfMi4zLjMgc3lzX3NpZ2FiYnJldgorMDAwZjM4MzAgZyAgICBERiAudGV4dAkwMDAwMDBhZCAgR0xJQkNfMi4zLjMgaW5ldDZfb3B0aW9uX25leHQKKzAwMDJhZDYwIGcgICAgREYgLnRleHQJMDAwMDAwNGQgIEdMSUJDXzIuMCAgIHNpZ2VtcHR5c2V0CiswMDBkNzAyMCAgdyAgIERGIC50ZXh0CTAwMDAwMDkyICBHTElCQ18yLjMgICBpc3d1cHBlcl9sCiswMDEwOWUzMCBnICAgIERGIC50ZXh0CTAwMDAwMDFmICBHTElCQ19QUklWQVRFIF9kbF9zeW0KKzAwMGNlZmQwIGcgICAgREYgLnRleHQJMDAwMDAwODUgIEdMSUJDXzIuMCAgIG9wZW5sb2cKKzAwMGI5ZDkwIGcgICAgREYgLnRleHQJMDAwMDA3N2YgIEdMSUJDXzIuMCAgIGdldGFkZHJpbmZvCiswMDA2NTY1MCBnICAgIERGIC50ZXh0CTAwMDAwMDZhICBHTElCQ18yLjAgICBfSU9faW5pdF9tYXJrZXIKKzAwMDYxY2YwIGcgICAgREYgLnRleHQJMDAwMDAwM2QgIEdMSUJDXzIuMCAgIGdldGNoYXJfdW5sb2NrZWQKKzAwMGUzODkwIGcgICAgREYgLnRleHQJMDAwMDAxMWIgIEdMSUJDX1BSSVZBVEUgX19yZXNfbWF5YmVfaW5pdAorMDAwZDI0ZTAgZyAgICBERiAudGV4dAkwMDAwMDBjYyAgR0xJQkNfMi4wICAgZGlybmFtZQorMDAwMTdiNTAgZyAgICBERiAudGV4dAkwMDAwMDAxNiAgR0xJQkNfUFJJVkFURSBfX2djb252X2dldF9hbGlhc19kYgorMDAwNzBmNzAgZyAgICBERiAudGV4dAkwMDAwMDA1NiAgR0xJQkNfMi4wICAgbWVtc2V0CiswMDAyMjYwMCBnICAgIERGIC50ZXh0CTAwMDAwMWEyICBHTElCQ18yLjIgICBsb2NhbGVjb252CiswMDAyMjYwMCBnICAgIERGIC50ZXh0CTAwMDAwMWEyIChHTElCQ18yLjApICBsb2NhbGVjb252CiswMDBjYTIxMCBnICAgIERGIC50ZXh0CTAwMDAwMDEwICBHTElCQ18yLjAgICBjZmdldG9zcGVlZAorMDAwNzRkMzAgZyAgICBERiAudGV4dAkwMDAwMDAyZiAgR0xJQkNfMi4xLjEgX19tZW1zZXRfY2NuX2J5MgorMDAwY2I0OTAgIHcgICBERiAudGV4dAkwMDAwMDEwMyAgR0xJQkNfMi4wICAgd3JpdGV2CiswMDA2NjM3MCBnICAgIERGIC50ZXh0CTAwMDAwMGUyICBHTElCQ18yLjAgICBfSU9fZGVmYXVsdF94c2dldG4KKzAwMDIzOTMwIGcgICAgREYgLnRleHQJMDAwMDAwNDYgIEdMSUJDXzIuMCAgIGlzYWxudW0KKzAwMDc0ZDEwIGcgICAgREYgLnRleHQJMDAwMDAwMWQgIEdMSUJDXzIuMS4xIF9fbWVtc2V0X2Njbl9ieTQKKzAwMTA2YTEwICB3ICAgREYgLnRleHQJMDAwMDAwNTEgIEdMSUJDXzIuMCAgIHNldHV0ZW50CiswMDBmOTM3MCBnICAgIERGIC50ZXh0CTAwMDAwMTI1ICBHTElCQ18yLjAgICBfc2V0ZXJyX3JlcGx5CiswMDA1YzUwMCBnICAgIERGIC50ZXh0CTAwMDAwMDc5ICBHTElCQ18yLjIgICBfSU9fc3dpdGNoX3RvX3dnZXRfbW9kZQorMDAwZjQ4MjAgZyAgICBERiAudGV4dAkwMDAwMDA0NyAgR0xJQkNfMi41ICAgaW5ldDZfcnRoX2FkZAorMDAwNjFjYzAgIHcgICBERiAudGV4dAkwMDAwMDAyYSAgR0xJQkNfMi4xICAgZmdldGNfdW5sb2NrZWQKKzAwMDViZmIwIGcgICAgREYgLnRleHQJMDAwMDAwM2IgIEdMSUJDXzIuMiAgIHN3cHJpbnRmCiswMDBkMWFkMCBnICAgIERGIC50ZXh0CTAwMDAwMDFkICBHTElCQ18yLjAgICB3YXJuCiswMDA1ZmQ3MCBnICAgIERGIC50ZXh0CTAwMDAwMGYyICBHTElCQ18yLjAgICBnZXRjaGFyCiswMDEwNmQ5MCAgdyAgIERGIC50ZXh0CTAwMDAwMDY4ICBHTElCQ18yLjAgICBnZXR1dGlkCiswMDAxZjZhMCBnICAgIERGIC50ZXh0CTAwMDAwMDE2ICBHTElCQ19QUklWQVRFIF9fZ2NvbnZfZ2V0X2NhY2hlCiswMDA5NThkMCBnICAgIERGIC50ZXh0CTAwMDAxODU5ICBHTElCQ18yLjAgICBnbG9iCiswMDA3MDkxMCBnICAgIERGIC50ZXh0CTAwMDAwMTkyICBHTElCQ18yLjAgICBzdHJzdHIKKzAwMGQ0NmQwIGcgICAgREYgLnRleHQJMDAwMDAwNDkgIEdMSUJDXzIuMy4zIHNlbXRpbWVkb3AKKzAwMDJjY2YwIGcgICAgREYgLnRleHQJMDAwMDAwMzUgIEdMSUJDXzIuMCAgIF9fc2VjdXJlX2dldGVudgorMDAwNzdhYTAgIHcgICBERiAudGV4dAkwMDAwMDA3NSAgR0xJQkNfMi4xICAgd2NzbmxlbgorMDAwNzdlZDAgZyAgICBERiAudGV4dAkwMDAwMDAzZSAgR0xJQkNfMi4wICAgX193Y3N0b2ZfaW50ZXJuYWwKKzAwMDZmYTgwIGcgICAgREYgLnRleHQJMDAwMDAwYWUgIEdMSUJDXzIuMCAgIHN0cmNzcG4KKzAwMGNhODcwIGcgICAgREYgLnRleHQJMDAwMDAwNzUgIEdMSUJDXzIuMCAgIHRjc2VuZGJyZWFrCiswMDA4ZTRhMCBnICAgIERGIC50ZXh0CTAwMDAwMDBiICBHTElCQ18yLjAgICB0ZWxsZGlyCiswMDAyM2E3MCBnICAgIERGIC50ZXh0CTAwMDAwMDQ4ICBHTElCQ18yLjAgICBpc2xvd2VyCiswMDBjOTY3MCBnICAgIERGIC50ZXh0CTAwMDAwMDQ0ICBHTElCQ18yLjYgICB1dGltZW5zYXQKKzAwMGNmZDgwIGcgICAgREYgLnRleHQJMDAwMDAwYzQgIEdMSUJDXzIuMCAgIGZjdnQKKzAwMDMyMGQwICB3ICAgREYgLnRleHQJMDAwMDAwMjkgIEdMSUJDXzIuMSAgIF9fc3RydG9mX2wKKzAwMDE2NTIwIGcgICAgREYgLnRleHQJMDAwMDAwMWQgIEdMSUJDXzIuMCAgIF9fZXJybm9fbG9jYXRpb24KKzAwMGM1MjMwICB3ICAgREYgLnRleHQJMDAwMDAwMzQgIEdMSUJDXzIuMCAgIHJtZGlyCiswMDA1YTY4MCBnICAgIERGIC50ZXh0CTAwMDAwMTI3ICBHTElCQ18yLjAgICBfSU9fc2V0YnVmZmVyCiswMDA2NThhMCBnICAgIERGIC50ZXh0CTAwMDAwMDA4ICBHTElCQ18yLjIgICBfSU9faXRlcl9maWxlCiswMDBkM2ExMCBnICAgIERGIC50ZXh0CTAwMDAwMDM3ICBHTElCQ18yLjAgICBiaW5kCiswMDAyZjUxMCAgdyAgIERGIC50ZXh0CTAwMDAwMDMwICBHTElCQ18yLjEgICBfX3N0cnRvbGxfbAorMDAwY2EzOTAgZyAgICBERiAudGV4dAkwMDAwMDI0MyAgR0xJQkNfMi4wICAgdGNzZXRhdHRyCiswMDA1ZmI0MCBnICAgIERGIC50ZXh0CTAwMDAwMGZhICBHTElCQ18yLjAgICBmc2VlaworMDAwZmNlNjAgZyAgICBERiAudGV4dAkwMDAwMDAzZSAgR0xJQkNfMi4wICAgeGRyX2Zsb2F0CiswMDBiNWI3MCBnICAgIERGIC50ZXh0CTAwMDAwM2JjICBHTElCQ18yLjAgICBjb25mc3RyCiswMDBjNDBhMCAgdyAgIERGIC50ZXh0CTAwMDAwMDM0ICBHTElCQ18yLjAgICBjaGRpcgorMDAwYzMwNjAgIHcgICBERiAudGV4dAkwMDAwMDBlNSAgR0xJQkNfMi4xICAgb3BlbjY0CiswMDBmNDZjMCBnICAgIERGIC50ZXh0CTAwMDAwMDE5ICBHTElCQ18yLjUgICBpbmV0Nl9ydGhfc2VnbWVudHMKKzAwMGMzNjgwICB3ICAgREYgLnRleHQJMDAwMDAwNzAgIEdMSUJDXzIuMCAgIHJlYWQKKzAwMDZlOTMwIGcgICAgREYgLnRleHQJMDAwMDAwOTQgIEdMSUJDXzIuMCAgIG11bnRyYWNlCiswMDA1YjIwMCBnICAgIERGIC50ZXh0CTAwMDAwMGYyICBHTElCQ18yLjIgICBnZXR3Y2hhcgorMDAwNzBlYzAgZyAgICBERiAudGV4dAkwMDAwMDAxZSAgR0xJQkNfMi4wICAgbWVtY21wCiswMDBmMThmMCBnICAgIERGIC50ZXh0CTAwMDAwOTEzICBHTElCQ18yLjEgICBnZXRuYW1laW5mbworMDAwY2I4MDAgIHcgICBERiAudGV4dAkwMDAwMDAyNiAgR0xJQkNfMi4wICAgZ2V0cGFnZXNpemUKKzAwMGZlM2UwIGcgICAgREYgLnRleHQJMDAwMDAwYjkgIEdMSUJDXzIuMSAgIHhkcl9zaXplb2YKKzAwMDE2NjkwIGcgICAgREYgLnRleHQJMDAwMDAxZmUgKEdMSUJDXzIuMCkgIF9fbW9kZGkzCiswMDAyNDQ3MCAgdyAgIERGIC50ZXh0CTAwMDAwMDIyICBHTElCQ18yLjAgICBkZ2V0dGV4dAorMDAwNzRkZTAgZyAgICBERiAudGV4dAkwMDAwMDAxOCAgR0xJQkNfMi4xLjEgX19zdHJsZW5fZworMDAwNThmYTAgZyAgICBERiAudGV4dAkwMDAwMDFkMSAgR0xJQkNfMi4wICAgX0lPX2Z0ZWxsCiswMDA1YmIzMCBnICAgIERGIC50ZXh0CTAwMDAwMGY2ICBHTElCQ18yLjIgICBwdXR3YworMDAwZjgxODAgZyAgICBERiAudGV4dAkwMDAwMDBlOSAgR0xJQkNfMi4wICAgZ2V0cnBjcG9ydAorMDAwNjU4YjAgZyAgICBERiAudGV4dAkwMDAwMDA0ZCAgR0xJQkNfMi4yICAgX0lPX2xpc3RfbG9jaworMDAwNDY1YjAgZyAgICBERiAudGV4dAkwMDAwMDAzNCAgR0xJQkNfMi4wICAgX0lPX3NwcmludGYKKzAwMGU3OWUwIGcgICAgREYgLnRleHQJMDAwMDAwNDIgIEdMSUJDXzIuNCAgIF9fcHJlYWRfY2hrCiswMDBjZmJlMCBnICAgIERGIC50ZXh0CTAwMDAwMDM4ICBHTElCQ18yLjAgICBtbG9jaworMDAwOGZmZTAgZyAgICBERiAudGV4dAkwMDAwMDBiMCAgR0xJQkNfMi4wICAgZW5kZ3JlbnQKKzAwMDZmY2YwICB3ICAgREYgLnRleHQJMDAwMDAwNjQgIEdMSUJDXzIuMCAgIHN0cm5kdXAKKzAwMGQzNDkwIGcgICAgREYgLnRleHQJMDAwMDAwNDYgIEdMSUJDXzIuMCAgIGluaXRfbW9kdWxlCiswMDBjZjYzMCBnICAgIERGIC50ZXh0CTAwMDAwMDJiICBHTElCQ18yLjQgICBfX3N5c2xvZ19jaGsKKzAwMDgyNmUwIGcgICAgREYgLnRleHQJMDAwMDAxMWIgIEdMSUJDXzIuMCAgIGFzY3RpbWUKKzAwMGY1ZDEwIGcgICAgREYgLnRleHQJMDAwMDAwODQgIEdMSUJDXzIuMCAgIGNsbnRfc3BlcnJubworMDAwZmQ5OTAgZyAgICBERiAudGV4dAkwMDAwMDE2YSAgR0xJQkNfMi4wICAgeGRycmVjX3NraXByZWNvcmQKKzAwMDc3NDAwICB3ICAgREYgLnRleHQJMDAwMDAzNjIgIEdMSUJDXzIuMCAgIG1ic25ydG93Y3MKKzAwMDcyZTUwIGcgICAgREYgLnRleHQJMDAwMDEwOWYgIEdMSUJDXzIuMSAgIF9fc3RyY29sbF9sCiswMDBlMzlmMCBnICAgIERGIC50ZXh0CTAwMDAwMGFlICBHTElCQ19QUklWQVRFIF9fZ2FpX3NpZ3F1ZXVlCiswMDAyMzhhMCBnICAgIERGIC50ZXh0CTAwMDAwMDM3ICBHTElCQ18yLjAgICB0b3VwcGVyCiswMDBlYjU3MCBnICAgIERGIC50ZXh0CTAwMDAwMGE4ICBHTElCQ18yLjAgICBzZXRwcm90b2VudAorMDAwOTM0YzAgZyAgICBERiAudGV4dAkwMDAwMDAzMSAgR0xJQkNfMi4wICAgX19nZXRwaWQKKzAwMDJkNGQwIGcgICAgREYgLnRleHQJMDAwMDAwYjkgIEdMSUJDXzIuMCAgIG1idG93YworMDAxMGEwMzAgZyAgICBERiAudGV4dAkwMDAwMDA4NCAgR0NDXzMuMCAgICAgX19yZWdpc3Rlcl9mcmFtZV9pbmZvX3RhYmxlX2Jhc2VzCiswMDEwMGI2MCBnICAgIERGIC50ZXh0CTAwMDAwMGY5ICBHTElCQ18yLjEgICBuZXRuYW1lMnVzZXIKKzAwMDIzYzgwIGcgICAgREYgLnRleHQJMDAwMDAwMjggIEdMSUJDXzIuMCAgIF90b3VwcGVyCiswMDBkM2I0MCAgdyAgIERGIC50ZXh0CTAwMDAwMDM3ICBHTElCQ18yLjAgICBnZXRzb2Nrb3B0CiswMDBmYjUyMCBnICAgIERGIC50ZXh0CTAwMDAwMjQ1ICBHTElCQ18yLjAgICBzdmN0Y3BfY3JlYXRlCiswMDA1Y2Y4MCBnICAgIERGIC50ZXh0CTAwMDAwMDgwICBHTElCQ18yLjIgICBfSU9fd3NldGIKKzAwMDU5M2YwICB3ICAgREYgLnRleHQJMDAwMDAyNzggIEdMSUJDXzIuMCAgIGdldGRlbGltCiswMDA4ZjhjMCBnICAgIERGIC50ZXh0CTAwMDAwMDNmICBHTElCQ18yLjAgICBzZXRncm91cHMKKzAwMGY1ZmUwIGcgICAgREYgLnRleHQJMDAwMDAwOWEgIEdMSUJDXzIuMCAgIGNsbnRfcGVycm5vCiswMDBkMmFhMCBnICAgIERGIC50ZXh0CTAwMDAwMDQ2ICBHTElCQ18yLjMgICBzZXR4YXR0cgorMDAxMGI5MzAgZyAgICBERiAudGV4dAkwMDAwMDA5NiAgR0NDXzMuMCAgICAgX1Vud2luZF9GaW5kX0ZERQorMDAwMmRmYjAgIHcgICBERiAudGV4dAkwMDAwMDBhMCAgR0xJQkNfMi4wICAgZXJhbmQ0OF9yCiswMDAyZGRlMCBnICAgIERGIC50ZXh0CTAwMDAwMDM0ICBHTElCQ18yLjAgICBscmFuZDQ4CiswMDA2NGQxMCBnICAgIERGIC50ZXh0CTAwMDAwMDdhICBHTElCQ18yLjAgICBfSU9fZG9hbGxvY2J1ZgorMDAwYzQ2NTAgZyAgICBERiAudGV4dAkwMDAwMDI2YSAgR0xJQkNfMi4wICAgdHR5bmFtZQorMDAxNDRhYTQgIHcgICBETyAuYnNzCTAwMDAwMDA0ICBHTElCQ18yLjAgICBfX19icmtfYWRkcgorMDAxMDg5YjAgZyAgICBERiAudGV4dAkwMDAwMDBkNSAgR0xJQkNfMi4xICAgZ3JhbnRwdAorMDAwZGYxOTAgZyAgICBERiAudGV4dAkwMDAwMDAzYyAgR0xJQkNfMi4xICAgcHRocmVhZF9hdHRyX2luaXQKKzAwMDcwZmQwIGcgICAgREYgLnRleHQJMDAwMDAwNDQgIEdMSUJDXzIuMSAgIG1lbXBjcHkKKzAwMGRmMTUwIGcgICAgREYgLnRleHQJMDAwMDAwM2MgKEdMSUJDXzIuMCkgIHB0aHJlYWRfYXR0cl9pbml0CiswMDBkZmU5MCBnICAgIERGIC50ZXh0CTAwMDAwMTU1ICBHTElCQ18yLjAgICBoZXJyb3IKKzAwMGI3MzQwIGcgICAgREYgLnRleHQJMDAwMDAwNDkgIEdMSUJDXzIuMCAgIGdldG9wdAorMDAwNzdjNDAgZyAgICBERiAudGV4dAkwMDAwMDA0NiAgR0xJQkNfMi4wICAgd2NzdG91bAorMDAwZTc4ZDAgZyAgICBERiAudGV4dAkwMDAwMDBhOCAgR0xJQkNfMi40ICAgX19mZ2V0c191bmxvY2tlZF9jaGsKKzAwMTA4MWIwICB3ICAgREYgLnRleHQJMDAwMDAwZjkgIEdMSUJDXzIuMCAgIHV0bXBuYW1lCiswMDA5M2IwMCBnICAgIERGIC50ZXh0CTAwMDAwMTQ5ICBHTElCQ18yLjAgICBnZXRsb2dpbl9yCiswMDAyM2RiMCAgdyAgIERGIC50ZXh0CTAwMDAwMDE3ICBHTElCQ18yLjMgICBpc2RpZ2l0X2wKKzAwMDQ2ZGQwICB3ICAgREYgLnRleHQJMDAwMDNlMTMgIEdMSUJDXzIuMiAgIHZmd3ByaW50ZgorMDAwY2NlMzAgZyAgICBERiAudGV4dAkwMDAwMDA4MyAgR0xJQkNfMi4yICAgX19zZXRtbnRlbnQKKzAwMDVhMzcwIGcgICAgREYgLnRleHQJMDAwMDAxMDAgIEdMSUJDXzIuMCAgIF9JT19zZWVrb2ZmCiswMDBjYTdmMCBnICAgIERGIC50ZXh0CTAwMDAwMDMyICBHTElCQ18yLjAgICB0Y2Zsb3cKKzAwMGQwY2MwIGcgICAgREYgLnRleHQJMDAwMDAwZDQgIEdMSUJDXzIuMCAgIGhjcmVhdGVfcgorMDAwNzdkMzAgIHcgICBERiAudGV4dAkwMDAwMDA0NiAgR0xJQkNfMi4wICAgd2NzdG91cQorMDAwNWM0ODAgZyAgICBERiAudGV4dAkwMDAwMDA3ZSAgR0xJQkNfMi4yICAgX0lPX3dkb2FsbG9jYnVmCiswMDBlZmQwMCBnICAgIERGIC50ZXh0CTAwMDAwMDNlICBHTElCQ18yLjAgICByZXhlYworMDAwZDQ0OTAgZyAgICBERiAudGV4dAkwMDAwMDA2MSAgR0xJQkNfMi4wICAgbXNnZ2V0CiswMDA1YzBjMCBnICAgIERGIC50ZXh0CTAwMDAwMDM0ICBHTElCQ18yLjIgICBmd3NjYW5mCiswMDEwMzc3MCBnICAgIERGIC50ZXh0CTAwMDAwMDY5ICBHTElCQ18yLjEgICB4ZHJfaW50MTZfdAorMDAwZTdiZjAgZyAgICBERiAudGV4dAkwMDAwMDAzNCAgR0xJQkNfMi40ICAgX19nZXRjd2RfY2hrCiswMDBjMmQ2MCBnICAgIERGIC50ZXh0CTAwMDAwMTVhICBHTElCQ18yLjQgICBmY2htb2RhdAorMDAwNzI5OTAgZyAgICBERiAudGV4dAkwMDAwMDA3YSAgR0xJQkNfMi4wICAgZW52el9zdHJpcAorMDAxNDYxYTggZyAgICBETyAuYnNzCTAwMDAwMDA0ICBHTElCQ19QUklWQVRFIF9kbF9vcGVuX2hvb2sKKzAwMGMzZjgwICB3ICAgREYgLnRleHQJMDAwMDAwMzggIEdMSUJDXzIuMCAgIGR1cDIKKzAwMDVmNTUwIGcgICAgREYgLnRleHQJMDAwMDAwODUgIEdMSUJDXzIuMCAgIGNsZWFyZXJyCiswMDE0NGE5NCAgdyAgIERPIC5ic3MJMDAwMDAwMDQgIEdMSUJDXzIuMCAgIGVudmlyb24KKzAwMGVlYTIwIGcgICAgREYgLnRleHQJMDAwMDBiN2IgIEdMSUJDXzIuMiAgIHJjbWRfYWYKKzAwMGY5YzUwIGcgICAgREYgLnRleHQJMDAwMDAwMzkgIEdMSUJDXzIuMi4zIF9fcnBjX3RocmVhZF9zdmNfbWF4X3BvbGxmZAorMDAwOTI2NzAgIHcgICBERiAudGV4dAkwMDAwMDA1NSAgR0xJQkNfMi4wICAgcGF1c2UKKzAwMDJjNzQwICB3ICAgREYgLnRleHQJMDAwMDAwZmUgIEdMSUJDXzIuMCAgIHVuc2V0ZW52CiswMDAyZGQwMCBnICAgIERGIC50ZXh0CTAwMDAwMDUyICBHTElCQ18yLjAgICByYW5kX3IKKzAwMTBjOTgwIGcgICAgREYgLnRleHQJMDAwMDAwM2QgKEdMSUJDXzIuMCkgIGF0ZXhpdAorMDAwNjZkMzAgZyAgICBERiAudGV4dAkwMDAwMDAzZiAgR0xJQkNfMi4wICAgX0lPX3N0cl9pbml0X3N0YXRpYworMDAwMjk0NzAgZyAgICBERiAudGV4dAkwMDAwMDAxMSAgR0xJQkNfMi4wICAgX19maW5pdGUKKzAwMDgzNTQwICB3ICAgREYgLnRleHQJMDAwMDAwM2MgIEdMSUJDXzIuMCAgIHRpbWVsb2NhbAorMDAwNzI0ZDAgIHcgICBERiAudGV4dAkwMDAwMDBhNSAgR0xJQkNfMi4wICAgYXJnel9hZGRfc2VwCiswMDBmZGQxMCBnICAgIERGIC50ZXh0CTAwMDAwMDZiICBHTElCQ18yLjAgICB4ZHJfcG9pbnRlcgorMDAwNzZhMDAgZyAgICBERiAudGV4dAkwMDAwMDE1ZSAgR0xJQkNfMi4wICAgd2N0b2IKKzAwMDI5ZjYwICB3ICAgREYgLnRleHQJMDAwMDAwNjQgIEdMSUJDXzIuMCAgIGxvbmdqbXAKKzAwMGMyMTgwIGcgICAgREYgLnRleHQJMDAwMDAwM2YgKEdMSUJDXzIuMSkgIF9fZnhzdGF0NjQKKzAwMDg2MjUwIGcgICAgREYgLnRleHQJMDAwMDAwNGEgIEdMSUJDXzIuMCAgIHN0cnB0aW1lCiswMDA2MmYzMCBnICAgIERGIC50ZXh0CTAwMDAwMWU0ICBHTElCQ18yLjEgICBfSU9fZmlsZV94c3B1dG4KKzAwMGMyMTgwIGcgICAgREYgLnRleHQJMDAwMDAwM2YgIEdMSUJDXzIuMiAgIF9fZnhzdGF0NjQKKzAwMTBkYWMwIGcgICAgREYgLnRleHQJMDAwMDAyYTUgKEdMSUJDXzIuMCkgIF9JT19maWxlX3hzcHV0bgorMDAwZjYwODAgZyAgICBERiAudGV4dAkwMDAwMDM5NSAgR0xJQkNfMi4wICAgY2xudF9zcGVycm9yCiswMDBlNzE0MCBnICAgIERGIC50ZXh0CTAwMDAwMGYyICBHTElCQ18yLjMuNCBfX3ZwcmludGZfY2hrCiswMDBkMzEzMCBnICAgIERGIC50ZXh0CTAwMDAwMDM0ICBHTElCQ18yLjAgICBfX2FkanRpbWV4CiswMDBkM2VhMCAgdyAgIERGIC50ZXh0CTAwMDAwMDM3ICBHTElCQ18yLjAgICBzaHV0ZG93bgorMDAxMDY5MTAgZyAgICBERiAudGV4dAkwMDAwMDAyMiAgR0xJQkNfMi4xICAgZmF0dGFjaAorMDAwMjlmMjAgZyAgICBERiAudGV4dAkwMDAwMDAzNiAgR0xJQkNfMi4wICAgX3NldGptcAorMDAwNjA2NTAgIHcgICBERiAudGV4dAkwMDAwMDBmNyAgR0xJQkNfMi4wICAgdnNucHJpbnRmCiswMDBjOGU1MCAgdyAgIERGIC50ZXh0CTAwMDAwMGE0ICBHTElCQ18yLjAgICBwb2xsCiswMDA2YmNiMCAgdyAgIERGIC50ZXh0CTAwMDAwMThjICBHTElCQ18yLjAgICBtYWxsb2NfZ2V0X3N0YXRlCiswMDEwNjgwMCBnICAgIERGIC50ZXh0CTAwMDAwMDQ2ICBHTElCQ18yLjEgICBnZXRwbXNnCiswMDA1OTY5MCBnICAgIERGIC50ZXh0CTAwMDAwMDQ3ICBHTElCQ18yLjAgICBfSU9fZ2V0bGluZQorMDAxMDhlYTAgZyAgICBERiAudGV4dAkwMDAwMDA0NSAgR0xJQkNfMi4xICAgcHRzbmFtZQorMDAwOTJiMDAgZyAgICBERiAudGV4dAkwMDAwMDBmNSAgR0xJQkNfMi4wICAgZmV4ZWN2ZQorMDAwYWZmZjAgIHcgICBERiAudGV4dAkwMDAwMDEzYSAgR0xJQkNfMi4wICAgcmVfY29tcAorMDAwZjY0MjAgZyAgICBERiAudGV4dAkwMDAwMDA0NCAgR0xJQkNfMi4wICAgY2xudF9wZXJyb3IKKzAwMGQwMzQwIGcgICAgREYgLnRleHQJMDAwMDAwNWUgIEdMSUJDXzIuMCAgIHFnY3Z0CiswMDBmOWQ5MCBnICAgIERGIC50ZXh0CTAwMDAwMDQyICBHTElCQ18yLjAgICBzdmNlcnJfbm9wcm9jCiswMDA3N2I1MCBnICAgIERGIC50ZXh0CTAwMDAwMDQ1ICBHTElCQ18yLjAgICBfX3djc3RvbF9pbnRlcm5hbAorMDAwNjU2ZjAgZyAgICBERiAudGV4dAkwMDAwMDAxMSAgR0xJQkNfMi4wICAgX0lPX21hcmtlcl9kaWZmZXJlbmNlCiswMDBlNzA4MCBnICAgIERGIC50ZXh0CTAwMDAwMGE4ICBHTElCQ18yLjMuNCBfX2ZwcmludGZfY2hrCiswMDA3MTNhMCBnICAgIERGIC50ZXh0CTAwMDAwMDY5ICBHTElCQ18yLjEgICBfX3N0cm5jYXNlY21wX2wKKzAwMDJhZTEwIGcgICAgREYgLnRleHQJMDAwMDAwNmEgIEdMSUJDXzIuMCAgIHNpZ2FkZHNldAorMDAwNTVkMTAgZyAgICBERiAudGV4dAkwMDAwMDAzNCAgR0xJQkNfMi4wICAgX0lPX3NzY2FuZgorMDAwODI5YzAgZyAgICBERiAudGV4dAkwMDAwMDAxYiAgR0xJQkNfMi4wICAgY3RpbWUKKzAwMTBiYzMwIGcgICAgREYgLnRleHQJMDAwMDAwN2IgIEdMSUJDXzIuMCAgIF9fZnJhbWVfc3RhdGVfZm9yCiswMDBkNjY2MCAgdyAgIERGIC50ZXh0CTAwMDAwMGNiICBHTElCQ18yLjAgICBpc3d1cHBlcgorMDAwZjllYzAgZyAgICBERiAudGV4dAkwMDAwMDA0MiAgR0xJQkNfMi4wICAgc3ZjZXJyX25vcHJvZworMDAwNjU4ODAgZyAgICBERiAudGV4dAkwMDAwMDAwNyAgR0xJQkNfMi4yICAgX0lPX2l0ZXJfZW5kCiswMDBlN2Q1MCBnICAgIERGIC50ZXh0CTAwMDAwMDNlICBHTElCQ18yLjQgICBfX3dtZW1jcHlfY2hrCiswMDA4ZmIxMCBnICAgIERGIC50ZXh0CTAwMDAwMTJkICBHTElCQ18yLjAgICBnZXRncm5hbQorMDAwZDMxMzAgIHcgICBERiAudGV4dAkwMDAwMDAzNCAgR0xJQkNfMi4wICAgYWRqdGltZXgKKzAwMGRmODkwIGcgICAgREYgLnRleHQJMDAwMDAwM2MgIEdMSUJDXzIuMCAgIHB0aHJlYWRfbXV0ZXhfdW5sb2NrCiswMDBjYjkxMCBnICAgIERGIC50ZXh0CTAwMDAwMDM4ICBHTElCQ18yLjAgICBzZXRob3N0bmFtZQorMDAwNjU5ODAgZyAgICBERiAudGV4dAkwMDAwMDA3MCAgR0xJQkNfMi4wICAgX0lPX3NldGIKKzAwMGMwZmQwICB3ICAgREYgLnRleHQJMDAwMDAwZWYgIEdMSUJDXzIuMSAgIF9fcHJlYWQ2NAorMDAwNmRjODAgZyAgICBERiAudGV4dAkwMDAwMDBmOCAgR0xJQkNfMi4wICAgbWNoZWNrCiswMDAyM2NlMCBnICAgIERGIC50ZXh0CTAwMDAwMDE1ICBHTElCQ18yLjEgICBfX2lzYmxhbmtfbAorMDAwZmRkODAgZyAgICBERiAudGV4dAkwMDAwMDBkZiAgR0xJQkNfMi4wICAgeGRyX3JlZmVyZW5jZQorMDAxMGYwZDAgZyAgICBERiAudGV4dAkwMDAwMDA1ZiAoR0xJQkNfMi4wKSAgZ2V0cHd1aWRfcgorMDAwOTE2ZTAgZyAgICBERiAudGV4dAkwMDAwMDFlYyAgR0xJQkNfMi4xLjIgZ2V0cHd1aWRfcgorMDAwZWM3ZDAgZyAgICBERiAudGV4dAkwMDAwMDBiMCAgR0xJQkNfMi4wICAgZW5kcnBjZW50CiswMDEwMGFjMCBnICAgIERGIC50ZXh0CTAwMDAwMDkxICBHTElCQ18yLjEgICBuZXRuYW1lMmhvc3QKKzAwMGU5MjMwIGcgICAgREYgLnRleHQJMDAwMDAyODIgIEdMSUJDXzIuMCAgIGluZXRfbmV0d29yaworMDAwMmM2MTAgZyAgICBERiAudGV4dAkwMDAwMDA5MSAgR0xJQkNfMi4wICAgcHV0ZW52CiswMDA3ZmZiMCBnICAgIERGIC50ZXh0CTAwMDAwMTAwICBHTElCQ18yLjAgICB3Y3N3aWR0aAorMDAwMjNlZjAgIHcgICBERiAudGV4dAkwMDAwMDAyYyAgR0xJQkNfMi4zICAgaXNjdHlwZQorMDAwZjg0NDAgZyAgICBERiAudGV4dAkwMDAwMDEzYSAgR0xJQkNfMi4wICAgcG1hcF9zZXQKKzAwMTExMTcwIGcgICAgREYgLnRleHQJMDAwMDAwM2MgKEdMSUJDXzIuMCkgIHB0aHJlYWRfY29uZF9icm9hZGNhc3QKKzAwMGM0NDEwICB3ICAgREYgLnRleHQJMDAwMDAwNTMgIEdMSUJDXzIuMCAgIGZjaG93bgorMDAwZGY1NzAgZyAgICBERiAudGV4dAkwMDAwMDAzYyAgR0xJQkNfMi4zLjIgcHRocmVhZF9jb25kX2Jyb2FkY2FzdAorMDAwMjhhYjAgZyAgICBERiAudGV4dAkwMDAwMDE3MiAgR0xJQkNfMi4wICAgY2F0b3BlbgorMDAwNzkxYTAgIHcgICBERiAudGV4dAkwMDAwMDA0MCAgR0xJQkNfMi4xICAgX193Y3N0b3VsbF9sCiswMDAwMDAwMCBnICAgIERPICpBQlMqCTAwMDAwMDAwICBHTElCQ18yLjAgICBHTElCQ18yLjAKKzAwMGZjOTgwIGcgICAgREYgLnRleHQJMDAwMDAwMjkgIEdMSUJDXzIuMCAgIHhkcl9uZXRvYmoKKzAwMGQ0MmIwIGcgICAgREYgLnRleHQJMDAwMDAwNDcgIEdMSUJDXzIuMCAgIGZ0b2sKKzAwMDY0YTQwIGcgICAgREYgLnRleHQJMDAwMDAxYjIgIEdMSUJDXzIuMCAgIF9JT19saW5rX2luCiswMDAwMDAwMCBnICAgIERPICpBQlMqCTAwMDAwMDAwICBHTElCQ18yLjEgICBHTElCQ18yLjEKKzAwMDQ0MTEwICB3ICAgREYgLnRleHQJMDAwMDAwOTcgIEdMSUJDXzIuMCAgIHJlZ2lzdGVyX3ByaW50Zl9mdW5jdGlvbgorMDAwMjllNDAgZyAgICBERiAudGV4dAkwMDAwMDAzNSAgR0xJQkNfMi4wICAgX19zaWdzZXRqbXAKKzAwMDAwMDAwIGcgICAgRE8gKkFCUyoJMDAwMDAwMDAgIEdMSUJDXzIuMiAgIEdMSUJDXzIuMgorMDAwNzEwZjAgZyAgICBERiAudGV4dAkwMDAwMDAxMCAgR0xJQkNfMi4wICAgX19mZnMKKzAwMTQzODQwIGcgICAgRE8gLmRhdGEJMDAwMDAwMDQgIEdMSUJDXzIuMCAgIHN0ZG91dAorMDAwY2RlMjAgZyAgICBERiAudGV4dAkwMDAwMDc4ZCAgR0xJQkNfMi4wICAgZ2V0dHR5ZW50CiswMDBlOGY5MCBnICAgIERGIC50ZXh0CTAwMDAwMDVjICBHTElCQ18yLjAgICBpbmV0X21ha2VhZGRyCiswMDAwMDAwMCBnICAgIERPICpBQlMqCTAwMDAwMDAwICBHTElCQ18yLjMgICBHTElCQ18yLjMKKzAwMTQ0YWE0IGcgICAgRE8gLmJzcwkwMDAwMDAwNCAgR0xJQkNfMi4wICAgX19jdXJicmsKKzAwMDAwMDAwIGcgICAgRE8gKkFCUyoJMDAwMDAwMDAgIEdMSUJDXzIuNCAgIEdMSUJDXzIuNAorMDAwMDAwMDAgZyAgICBETyAqQUJTKgkwMDAwMDAwMCAgR0xJQkNfMi41ICAgR0xJQkNfMi41CiswMDBlOTRlMCBnICAgIERGIC50ZXh0CTAwMDAwMTY5ICBHTElCQ18yLjAgICBnZXRob3N0YnlhZGRyCiswMDEwZDMxMCBnICAgIERGIC50ZXh0CTAwMDAwMDhhIChHTElCQ18yLjApICBfSU9fcG9wZW4KKzAwMDAwMDAwIGcgICAgRE8gKkFCUyoJMDAwMDAwMDAgIEdMSUJDXzIuNiAgIEdMSUJDXzIuNgorMDAwZDIzMjAgIHcgICBERiAudGV4dAkwMDAwMDAxYSAgR0xJQkNfMi4wICAgZ2V0X3BoeXNfcGFnZXMKKzAwMDU5ZmMwIGcgICAgREYgLnRleHQJMDAwMDAwOGQgIEdMSUJDXzIuMSAgIF9JT19wb3BlbgorMDAwZGQxZTAgIHcgICBERiAudGV4dAkwMDAwMDAxZCAgR0xJQkNfMi4xICAgYXJncF9oZWxwCiswMDA1Zjc5MCBnICAgIERGIC50ZXh0CTAwMDAwMGY2ICBHTElCQ18yLjAgICBmcHV0YworMDAxNDM0MDAgZyAgICBETyAuZGF0YQkwMDAwMDAwNCAoR0xJQkNfMi4wKSAgX19jdHlwZV90b3VwcGVyCiswMDExMTRjMCBnICAgIERGIC50ZXh0CTAwMDAwMGU1IChHTElCQ18yLjApICBnZXRob3N0ZW50X3IKKzAwMDY1NzQwIGcgICAgREYgLnRleHQJMDAwMDAwNzkgIEdMSUJDXzIuMCAgIF9JT19zZWVrbWFyaworMDAwZWEzNDAgZyAgICBERiAudGV4dAkwMDAwMDBlZCAgR0xJQkNfMi4xLjIgZ2V0aG9zdGVudF9yCiswMDBkNzBjMCBnICAgIERGIC50ZXh0CTAwMDAwMDVkICBHTElCQ18yLjEgICBfX3Rvd2xvd2VyX2wKKzAwMDI5NjkwICB3ICAgREYgLnRleHQJMDAwMDAwNzIgIEdMSUJDXzIuMCAgIGZyZXhwCiswMDA1NWVmMCBnICAgIERGIC50ZXh0CTAwMDAwMTJlICBHTElCQ18yLjAgICBwc2lnbmFsCiswMDBkMWJlMCBnICAgIERGIC50ZXh0CTAwMDAwMDIzICBHTElCQ18yLjAgICB2ZXJyeAorMDAwOTNjNzAgZyAgICBERiAudGV4dAkwMDAwMDAyMiAgR0xJQkNfMi4wICAgc2V0bG9naW4KKzAwMGYwNWYwIGcgICAgREYgLnRleHQJMDAwMDAxYjMgIEdMSUJDX1BSSVZBVEUgX19pbnRlcm5hbF9nZXRuZXRncmVudF9yCiswMDA2MTA0MCBnICAgIERGIC50ZXh0CTAwMDAwMGY4ICBHTElCQ18yLjEgICBmc2Vla282NAorMDAxNDJhMDAgZyAgICBETyAuZGF0YS5yZWwucm8JMDAwMDAwNTQgIEdMSUJDXzIuMCAgIF9JT19maWxlX2p1bXBzCiswMDEwZWQ2MCBnICAgIERGIC50ZXh0CTAwMDAwMDI0IChHTElCQ18yLjEpICB2ZXJzaW9uc29ydDY0CiswMDA4ZWVkMCBnICAgIERGIC50ZXh0CTAwMDAwMDI0ICBHTElCQ18yLjIgICB2ZXJzaW9uc29ydDY0CiswMDBkMjg0MCBnICAgIERGIC50ZXh0CTAwMDAwMDM4ICBHTElCQ18yLjMgICBmcmVtb3ZleGF0dHIKKzAwMGU3ZDAwIGcgICAgREYgLnRleHQJMDAwMDAwNDIgIEdMSUJDXzIuNCAgIF9fd2NzY3B5X2NoaworMDAwNmFlOTAgZyAgICBERiAudGV4dAkwMDAwMDBmYyAgR0xJQkNfMi4wICAgX19saWJjX3ZhbGxvYworMDAwNjUxMzAgZyAgICBERiAudGV4dAkwMDAwMDA0YiAgR0xJQkNfMi4wICAgX0lPX3N1bmdldGMKKzAwMGQzYmMwICB3ICAgREYgLnRleHQJMDAwMDAwNmMgIEdMSUJDXzIuMCAgIHJlY3YKKzAwMGY4MDUwIGcgICAgREYgLnRleHQJMDAwMDAwMmQgIEdMSUJDXzIuMCAgIF9ycGNfZHRhYmxlc2l6ZQorMDAwZDMyMzAgZyAgICBERiAudGV4dAkwMDAwMDAzYSAgR0xJQkNfMi4wICAgY3JlYXRlX21vZHVsZQorMDAwOTM3ZDAgZyAgICBERiAudGV4dAkwMDAwMDAzNCAgR0xJQkNfMi4wICAgZ2V0c2lkCiswMDBjYzE3MCBnICAgIERGIC50ZXh0CTAwMDAwMDNkICBHTElCQ18yLjAgICBta3RlbXAKKzAwMGUwMTYwIGcgICAgREYgLnRleHQJMDAwMDAxNzIgIEdMSUJDXzIuMCAgIGluZXRfYWRkcgorMDAwY2FiNTAgIHcgICBERiAudGV4dAkwMDAwMDAzOCAgR0xJQkNfMi4wICAgZ2V0cnVzYWdlCiswMDA2MWRjMCBnICAgIERGIC50ZXh0CTAwMDAwMGVjICBHTElCQ18yLjAgICBfSU9fcGVla2NfbG9ja2VkCiswMDA2NTZjMCBnICAgIERGIC50ZXh0CTAwMDAwMDI4ICBHTElCQ18yLjAgICBfSU9fcmVtb3ZlX21hcmtlcgorMDAwZThiNTAgZyAgICBERiAudGV4dAkwMDAwMDA1MCAgR0xJQkNfMi40ICAgX19tYnN0b3djc19jaGsKKzAwMTQzMzI4ICB3ICAgRE8gLmRhdGEJMDAwMDAwMDQgIEdMSUJDXzIuMCAgIF9fbWFsbG9jX2hvb2sKKzAwMDIzZTUwIGcgICAgREYgLnRleHQJMDAwMDAwMTcgIEdMSUJDXzIuMSAgIF9faXNzcGFjZV9sCiswMDBjODc0MCBnICAgIERGIC50ZXh0CTAwMDAwNzBkICBHTElCQ18yLjAgICBmdHNfcmVhZAorMDAwZDZkMTAgIHcgICBERiAudGV4dAkwMDAwMDA5MiAgR0xJQkNfMi4zICAgaXN3bG93ZXJfbAorMDAwZDYzMjAgIHcgICBERiAudGV4dAkwMDAwMDBjYiAgR0xJQkNfMi4wICAgaXN3Z3JhcGgKKzAwMGNjNmQwIGcgICAgREYgLnRleHQJMDAwMDAwZDUgIEdMSUJDXzIuMCAgIGdldGZzc3BlYworMDAwMmU0OTAgZyAgICBERiAudGV4dAkwMDAwMDA0NSAgR0xJQkNfMi4wICAgX19zdHJ0b2xsX2ludGVybmFsCiswMDBjYzI1MCBnICAgIERGIC50ZXh0CTAwMDAwMDUxICBHTElCQ18yLjAgICB1YWxhcm0KKzAwMDU4YjkwICB3ICAgREYgLnRleHQJMDAwMDAxNDkgIEdMSUJDXzIuMCAgIGZwdXRzCiswMDBkMzc4MCBnICAgIERGIC50ZXh0CTAwMDAwMDQ2ICBHTElCQ18yLjAgICBxdWVyeV9tb2R1bGUKKzAwMGMxMjUwIGcgICAgREYgLnRleHQJMDAwMDAwMjggIEdMSUJDXzIuMiAgIHBvc2l4X3NwYXduX2ZpbGVfYWN0aW9uc19kZXN0cm95CiswMDA3MGJkMCAgdyAgIERGIC50ZXh0CTAwMDAwMTA0ICBHTElCQ18yLjAgICBzdHJ0b2tfcgorMDAwZWE0MzAgZyAgICBERiAudGV4dAkwMDAwMDBiMCAgR0xJQkNfMi4wICAgZW5kaG9zdGVudAorMDAwMjNlMTAgZyAgICBERiAudGV4dAkwMDAwMDAxNyAgR0xJQkNfMi4xICAgX19pc3ByaW50X2wKKzAwMGRmNjgwIGcgICAgREYgLnRleHQJMDAwMDAwNDMgIEdMSUJDXzIuMy4yIHB0aHJlYWRfY29uZF93YWl0CiswMDExMTI4MCBnICAgIERGIC50ZXh0CTAwMDAwMDQzIChHTElCQ18yLjApICBwdGhyZWFkX2NvbmRfd2FpdAorMDAwNzIyNjAgZyAgICBERiAudGV4dAkwMDAwMDA4OCAgR0xJQkNfMi4wICAgYXJnel9kZWxldGUKKzAwMDVjOGMwIGcgICAgREYgLnRleHQJMDAwMDAwNTMgIEdMSUJDXzIuMiAgIF9fd292ZXJmbG93CiswMDBmYzQyMCBnICAgIERGIC50ZXh0CTAwMDAwMDY1ICBHTElCQ18yLjAgICB4ZHJfdV9sb25nCiswMDBlN2RjMCBnICAgIERGIC50ZXh0CTAwMDAwMDNlICBHTElCQ18yLjQgICBfX3dtZW1wY3B5X2NoaworMDAwOTRhOTAgIHcgICBERiAudGV4dAkwMDAwMDFmNSAgR0xJQkNfMi4wICAgZnBhdGhjb25mCiswMDAyM2Q5MCAgdyAgIERGIC50ZXh0CTAwMDAwMDE1ICBHTElCQ18yLjMgICBpc2NudHJsX2wKKzAwMGEyMjMwICB3ICAgREYgLnRleHQJMDAwMDAwYTcgIEdMSUJDXzIuMCAgIHJlZ2Vycm9yCiswMDA3MDAwMCBnICAgIERGIC50ZXh0CTAwMDAwMDlkICBHTElCQ18yLjAgICBzdHJubGVuCiswMDAyZGUyMCBnICAgIERGIC50ZXh0CTAwMDAwMDM3ICBHTElCQ18yLjAgICBucmFuZDQ4CiswMDExMTAwMCBnICAgIERGIC50ZXh0CTAwMDAwMGU1IChHTElCQ18yLjApICBnZXRzcGVudF9yCiswMDA3NjgzMCAgdyAgIERGIC50ZXh0CTAwMDAwMDM0ICBHTElCQ18yLjIgICB3bWVtcGNweQorMDAwZDdjMDAgZyAgICBERiAudGV4dAkwMDAwMDBlMiAgR0xJQkNfMi4xLjIgZ2V0c3BlbnRfcgorMDAxNDYzNmMgZyAgICBETyAuYnNzCTAwMDAwMDA0ICBHTElCQ18yLjEgICBhcmdwX3Byb2dyYW1fYnVnX2FkZHJlc3MKKzAwMGMzNzYwICB3ICAgREYgLnRleHQJMDAwMDAwM2EgIEdMSUJDXzIuMCAgIGxzZWVrCiswMDA5Mzk5MCAgdyAgIERGIC50ZXh0CTAwMDAwMDg1ICBHTElCQ18yLjAgICBzZXRyZXNnaWQKKzAwMDJhYmQwICB3ICAgREYgLnRleHQJMDAwMDAwMzggIEdMSUJDXzIuMCAgIHNpZ2FsdHN0YWNrCiswMDA3NTA0MCBnICAgIERGIC50ZXh0CTAwMDAwMDQyICBHTElCQ18yLjEuMSBfX3N0cm5jbXBfZworMDAwZmNhODAgZyAgICBERiAudGV4dAkwMDAwMDEyMyAgR0xJQkNfMi4wICAgeGRyX3N0cmluZworMDAwODVjMTAgZyAgICBERiAudGV4dAkwMDAwMDA3MiAgR0xJQkNfMi4wICAgZnRpbWUKKzAwMDcxNDYwIGcgICAgREYgLnRleHQJMDAwMDAwNDYgIEdMSUJDXzIuMCAgIG1lbWNweQorMDAwNWIwYzAgIHcgICBERiAudGV4dAkwMDAwMDBlNyAgR0xJQkNfMi4yICAgZ2V0d2MKKzAwMDc2YjgwICB3ICAgREYgLnRleHQJMDAwMDAwNDggIEdMSUJDXzIuMCAgIG1icmxlbgorMDAwY2U2NjAgZyAgICBERiAudGV4dAkwMDAwMDA1MiAgR0xJQkNfMi4wICAgZW5kdXNlcnNoZWxsCiswMDBjNDI1MCBnICAgIERGIC50ZXh0CTAwMDAwMDg5ICBHTElCQ18yLjAgICBnZXR3ZAorMDAwYjc2NDAgZyAgICBERiAudGV4dAkwMDAwMDAzNCAgR0xJQkNfMi4wICAgX19zY2hlZF9nZXRfcHJpb3JpdHlfbWluCiswMDA2MGRmMCBnICAgIERGIC50ZXh0CTAwMDAwMjI4ICBHTElCQ18yLjEgICBmcmVvcGVuNjQKKzAwMTBjZDEwIGcgICAgREYgLnRleHQJMDAwMDAxODMgKEdMSUJDXzIuMCkgIGZjbG9zZQorMDAwNTdkNzAgZyAgICBERiAudGV4dAkwMDAwMDFlOCAgR0xJQkNfMi4xICAgZmNsb3NlCiswMDA4NWM5MCAgdyAgIERGIC50ZXh0CTAwMDAwNTU4ICBHTElCQ18yLjEgICBnZXRkYXRlX3IKKzAwMGMxZDQwIGcgICAgREYgLnRleHQJMDAwMDAwMTUgIEdMSUJDXzIuMiAgIHBvc2l4X3NwYXduYXR0cl9zZXRzY2hlZHBhcmFtCiswMDA1YzcxMCBnICAgIERGIC50ZXh0CTAwMDAwMDgyICBHTElCQ18yLjIgICBfSU9fc2Vla3dtYXJrCiswMDA2NTE4MCBnICAgIERGIC50ZXh0CTAwMDAwMDNjICBHTElCQ18yLjAgICBfSU9fYWRqdXN0X2NvbHVtbgorMDAwYzM3ZTAgIHcgICBERiAudGV4dAkwMDAwMDBmNyAgR0xJQkNfMi4wICAgZXVpZGFjY2VzcworMDAwMmE4ZDAgZyAgICBERiAudGV4dAkwMDAwMDEyZSAgR0xJQkNfMi4wICAgX19zaWdwYXVzZQorMDAwYzRlMjAgZyAgICBERiAudGV4dAkwMDAwMDEwYyAgR0xJQkNfMi40ICAgc3ltbGlua2F0CiswMDAyZGNlMCBnICAgIERGIC50ZXh0CTAwMDAwMDE3ICBHTElCQ18yLjAgICByYW5kCiswMDBjYmFhMCAgdyAgIERGIC50ZXh0CTAwMDAwMWMwICBHTElCQ18yLjAgICBwc2VsZWN0CiswMDBkZjk1MCBnICAgIERGIC50ZXh0CTAwMDAwMDQzICBHTElCQ18yLjAgICBwdGhyZWFkX3NldGNhbmNlbHR5cGUKKzAwMGNhNzAwIGcgICAgREYgLnRleHQJMDAwMDAwMzIgIEdMSUJDXzIuMCAgIHRjc2V0cGdycAorMDAwNzVmMjAgZyAgICBERiAudGV4dAkwMDAwMDAyZSAgR0xJQkNfMi4wICAgd2NzY21wCiswMDBlNjdhMCBnICAgIERGIC50ZXh0CTAwMDAwMGEzICBHTElCQ18yLjMuNCBfX21lbW1vdmVfY2hrCiswMDBjNzFjMCBnICAgIERGIC50ZXh0CTAwMDAwMDUyICBHTElCQ18yLjMuMyBuZnR3NjQKKzAwMGNmYTYwICB3ICAgREYgLnRleHQJMDAwMDAwM2EgIEdMSUJDXzIuMCAgIG1wcm90ZWN0CiswMDExMGQ4MCBnICAgIERGIC50ZXh0CTAwMDAwMDJiIChHTElCQ18yLjEpICBuZnR3NjQKKzAwMGU3YmEwIGcgICAgREYgLnRleHQJMDAwMDAwNDMgIEdMSUJDXzIuNCAgIF9fZ2V0d2RfY2hrCiswMDA3NTliMCBnICAgIERGIC50ZXh0CTAwMDAwMDQ1ICBHTElCQ18yLjEuMSBfX3N0cmNhdF9jCiswMDBlM2FlMCBnICAgIERGIC50ZXh0CTAwMDAwMzU1ICBHTElCQ19QUklWQVRFIF9fbnNzX2xvb2t1cF9mdW5jdGlvbgorMDAwNzEwZjAgIHcgICBERiAudGV4dAkwMDAwMDAxMCAgR0xJQkNfMi4xICAgZmZzbAorMDAwY2M4OTAgZyAgICBERiAudGV4dAkwMDAwMDBhYSAgR0xJQkNfMi4wICAgZ2V0bW50ZW50CiswMDEwOWYzMCBnICAgIERGIC50ZXh0CTAwMDAwMDFkICBHTElCQ19QUklWQVRFIF9fbGliY19kbF9lcnJvcl90c2QKKzAwMDgxOWQwIGcgICAgREYgLnRleHQJMDAwMDAwNTUgIEdMSUJDXzIuMSAgIF9fd2NzY2FzZWNtcF9sCiswMDAyZTM1MCBnICAgIERGIC50ZXh0CTAwMDAwMDQ1ICBHTElCQ18yLjAgICBfX3N0cnRvbF9pbnRlcm5hbAorMDAwZTZlODAgZyAgICBERiAudGV4dAkwMDAwMDEwYyAgR0xJQkNfMi4zLjQgX192c25wcmludGZfY2hrCiswMDA3NGY3MCBnICAgIERGIC50ZXh0CTAwMDAwMDM2ICBHTElCQ18yLjEuMSBfX3N0cmNhdF9nCiswMDA4YjBkMCBnICAgIERGIC50ZXh0CTAwMDAyNTE3ICBHTElCQ18yLjMgICBfX3djc2Z0aW1lX2wKKzAwMDU3YzMwIGcgICAgREYgLnRleHQJMDAwMDAxM2MgIEdMSUJDXzIuMCAgIF9JT19maWxlX2RvYWxsb2NhdGUKKzAwMDJlNDQwIGcgICAgREYgLnRleHQJMDAwMDAwNDYgIEdMSUJDXzIuMCAgIHN0cnRvdWwKKzAwMDYxOGEwIGcgICAgREYgLnRleHQJMDAwMDAxNDQgIEdMSUJDXzIuMiAgIGZtZW1vcGVuCiswMDBkZjc3MCBnICAgIERGIC50ZXh0CTAwMDAwMDRhICBHTElCQ18yLjAgICBwdGhyZWFkX3NldHNjaGVkcGFyYW0KKzAwMGQwYzcwIGcgICAgREYgLnRleHQJMDAwMDAwNGYgIEdMSUJDXzIuMCAgIGhkZXN0cm95X3IKKzAwMGQ3Y2YwIGcgICAgREYgLnRleHQJMDAwMDAwYjAgIEdMSUJDXzIuMCAgIGVuZHNwZW50CiswMDBjZmNhMCBnICAgIERGIC50ZXh0CTAwMDAwMDJjICBHTElCQ18yLjAgICBtdW5sb2NrYWxsCiswMDAyYWEyMCAgdyAgIERGIC50ZXh0CTAwMDAwMDFiICBHTElCQ18yLjAgICBzaWdwYXVzZQorMDAwZmM0OTAgZyAgICBERiAudGV4dAkwMDAwMDAxYSAgR0xJQkNfMi4wICAgeGRyX3VfaW50CiswMDA0MTZhMCBnICAgIERGIC50ZXh0CTAwMDAwMDM2ICBHTElCQ18yLjAgICB2cHJpbnRmCiswMDEwOTA0MCBnICAgIERGIC50ZXh0CTAwMDAwMDMyICBHTElCQ18yLjEuMSBnZXR1dG1weAorMDAxMDkwNDAgZyAgICBERiAudGV4dAkwMDAwMDAzMiAgR0xJQkNfMi4xLjEgZ2V0dXRtcAorMDAwZDNlNjAgZyAgICBERiAudGV4dAkwMDAwMDAzNyAgR0xJQkNfMi4wICAgc2V0c29ja29wdAorMDAwNmI4OTAgZyAgICBERiAudGV4dAkwMDAwMDE4MCAgR0xJQkNfMi4wICAgbWFsbG9jCiswMDA2NWFlMCBnICAgIERGIC50ZXh0CTAwMDAwMTBlICBHTElCQ18yLjAgICBfSU9fZGVmYXVsdF94c3B1dG4KKzAwMGNmYjkwICB3ICAgREYgLnRleHQJMDAwMDAwNDYgIEdMSUJDXzIuMy4zIHJlbWFwX2ZpbGVfcGFnZXMKKzAwMDI5ZjYwICB3ICAgREYgLnRleHQJMDAwMDAwNjQgIEdMSUJDXzIuMCAgIHNpZ2xvbmdqbXAKKzAwMTQ2NWI4IGcgICAgRE8gLmJzcwkwMDAwMDAwYyAgR0xJQkNfMi4wICAgc3ZjYXV0aGRlc19zdGF0cworMDAwY2U5OTAgZyAgICBERiAudGV4dAkwMDAwMDI0MCAgR0xJQkNfMi4wICAgZ2V0cGFzcworMDAwMmU1ODAgIHcgICBERiAudGV4dAkwMDAwMDA0NiAgR0xJQkNfMi4wICAgc3RydG91cQorMDAxNDM0MDQgZyAgICBETyAuZGF0YQkwMDAwMDAwNCAoR0xJQkNfMi4yKSAgX19jdHlwZTMyX3RvbG93ZXIKKzAwMTAwYTkwIGcgICAgREYgLnRleHQJMDAwMDAwMjIgIEdMSUJDXzIuMCAgIHhkcl9rZXlzdGF0dXMKKzAwMGQzOTIwIGcgICAgREYgLnRleHQJMDAwMDAwMzQgIEdMSUJDXzIuMCAgIHVzZWxpYgorMDAwMmIwNzAgZyAgICBERiAudGV4dAkwMDAwMDA1MiAgR0xJQkNfMi4wICAgc2lnaXNlbXB0eXNldAorMDAwNzUyNDAgZyAgICBERiAudGV4dAkwMDAwMDA0NCAgR0xJQkNfMi4xLjEgX19zdHJzcG5fZworMDAwMmExYzAgZyAgICBERiAudGV4dAkwMDAwMDA0NCAgR0xJQkNfMi4wICAga2lsbHBnCiswMDAzN2ZlMCBnICAgIERGIC50ZXh0CTAwMDAwMDQ4ICBHTElCQ18yLjAgICBzdHJmbW9uCiswMDAyMzBlMCAgdyAgIERGIC50ZXh0CTAwMDAwMTRiICBHTElCQ18yLjMgICBkdXBsb2NhbGUKKzAwMDZmNjkwIGcgICAgREYgLnRleHQJMDAwMDAxYWEgIEdMSUJDXzIuMCAgIHN0cmNhdAorMDAwZmM0MDAgZyAgICBERiAudGV4dAkwMDAwMDAxYSAgR0xJQkNfMi4wICAgeGRyX2ludAorMDAwYzJjYTAgIHcgICBERiAudGV4dAkwMDAwMDAxMCAgR0xJQkNfMi4wICAgdW1hc2sKKzAwMDcxMjYwICB3ICAgREYgLnRleHQJMDAwMDAwNjIgIEdMSUJDXzIuMCAgIHN0cmNhc2VjbXAKKzAwMDhlZjAwICB3ICAgREYgLnRleHQJMDAwMDAwYTIgIEdMSUJDXzIuNCAgIGZkb3BlbmRpcgorMDAwNjExNjAgZyAgICBERiAudGV4dAkwMDAwMDE3OSAgR0xJQkNfMi4xICAgZnRlbGxvNjQKKzAwMGRmM2IwIGcgICAgREYgLnRleHQJMDAwMDAwNDMgIEdMSUJDXzIuMCAgIHB0aHJlYWRfYXR0cl9nZXRzY2hlZHBvbGljeQorMDAxMGM5YzAgZyAgICBERiAudGV4dAkwMDAwMDAzZiAoR0xJQkNfMi4wKSAgcmVhbHBhdGgKKzAwMDM3ODAwIGcgICAgREYgLnRleHQJMDAwMDA1MGUgIEdMSUJDXzIuMyAgIHJlYWxwYXRoCiswMDA4NWJkMCBnICAgIERGIC50ZXh0CTAwMDAwMDNlICBHTElCQ18yLjAgICB0aW1lZ20KKzAwMDYwYzEwIGcgICAgREYgLnRleHQJMDAwMDAxYmIgIEdMSUJDXzIuMSAgIGZ0ZWxsbworMDAwMjk0YjAgIHcgICBERiAudGV4dAkwMDAwMDFjZiAgR0xJQkNfMi4wICAgbW9kZgorMDAxMDk4NzAgZyAgICBERiAudGV4dAkwMDAwMDA4YiAgR0xJQkNfUFJJVkFURSBfX2xpYmNfZGxjbG9zZQorMDAwNjg4NTAgZyAgICBERiAudGV4dAkwMDAwMDE4YSAgR0xJQkNfMi4wICAgX19saWJjX21hbGxpbmZvCiswMDAyYTEzMCBnICAgIERGIC50ZXh0CTAwMDAwMDhhICBHTElCQ18yLjAgICByYWlzZQorMDAwY2I3NTAgZyAgICBERiAudGV4dAkwMDAwMDBhNyAgR0xJQkNfMi4wICAgc2V0ZWdpZAorMDAwNjcwZjAgIHcgICBERiAudGV4dAkwMDAwMDAzNCAgR0xJQkNfMi4wICAgbWFsbG9jX3VzYWJsZV9zaXplCiswMDAyM2RiMCBnICAgIERGIC50ZXh0CTAwMDAwMDE3ICBHTElCQ18yLjEgICBfX2lzZGlnaXRfbAorMDAwZDJmNTAgZyAgICBERiAudGV4dAkwMDAwMDAxMyAgR0xJQkNfMi4wICAgc2V0ZnNnaWQKKzAwMDVjODQwIGcgICAgREYgLnRleHQJMDAwMDAwN2UgIEdMSUJDXzIuMiAgIF9JT193ZGVmYXVsdF9kb2FsbG9jYXRlCiswMDA0YWU0MCBnICAgIERGIC50ZXh0CTAwMDA1YzA0ICBHTElCQ18yLjAgICBfSU9fdmZzY2FuZgorMDAwNTZhMjAgZyAgICBERiAudGV4dAkwMDAwMDA1YyAgR0xJQkNfMi4wICAgcmVtb3ZlCiswMDBiNzU1MCAgdyAgIERGIC50ZXh0CTAwMDAwMDNhICBHTElCQ18yLjAgICBzY2hlZF9zZXRzY2hlZHVsZXIKKzAwMDdkY2UwICB3ICAgREYgLnRleHQJMDAwMDAwMzkgIEdMSUJDXzIuMyAgIHdjc3RvbGRfbAorMDAwOTM3NDAgIHcgICBERiAudGV4dAkwMDAwMDAzOCAgR0xJQkNfMi4wICAgc2V0cGdpZAorMDAwZDNhYzAgIHcgICBERiAudGV4dAkwMDAwMDAzNyAgR0xJQkNfMi4wICAgZ2V0cGVlcm5hbWUKKzAwMDgxOWQwICB3ICAgREYgLnRleHQJMDAwMDAwNTUgIEdMSUJDXzIuMyAgIHdjc2Nhc2VjbXBfbAorMDAwNzRkYTAgZyAgICBERiAudGV4dAkwMDAwMDAzOCAgR0xJQkNfMi4xLjEgX19tZW1zZXRfZ2NuX2J5MgorMDAwZTc3NTAgZyAgICBERiAudGV4dAkwMDAwMDE1OCAgR0xJQkNfMi40ICAgX19mZ2V0c19jaGsKKzAwMDZmYjMwIGcgICAgREYgLnRleHQJMDAwMDAxNTQgIEdMSUJDXzIuMS4xIF9fc3RydmVyc2NtcAorMDAwZTM5ZDAgZyAgICBERiAudGV4dAkwMDAwMDAxOSAgR0xJQkNfMi4yICAgX19yZXNfc3RhdGUKKzAwMGY4NTgwIGcgICAgREYgLnRleHQJMDAwMDAxMTUgIEdMSUJDXzIuMCAgIHBtYXBfZ2V0bWFwcworMDAwMjk4ZjAgIHcgICBERiAudGV4dAkwMDAwMDA2YSAgR0xJQkNfMi4wICAgZnJleHBmCiswMDE0MTM2MCBnICAgIERPIC5kYXRhLnJlbC5ybwkwMDAwMDFmOCAoR0xJQkNfMi4zKSAgc3lzX2Vycmxpc3QKKzAwMDZmY2YwIGcgICAgREYgLnRleHQJMDAwMDAwNjQgIEdMSUJDXzIuMiAgIF9fc3RybmR1cAorMDAxNDEzNjAgZyAgICBETyAuZGF0YS5yZWwucm8JMDAwMDAxZWMgKEdMSUJDXzIuMCkgIHN5c19lcnJsaXN0CiswMDE0MTM2MCBnICAgIERPIC5kYXRhLnJlbC5ybwkwMDAwMDIxMCAgR0xJQkNfMi40ICAgc3lzX2Vycmxpc3QKKzAwMDc0ZDYwIGcgICAgREYgLnRleHQJMDAwMDAwMzUgIEdMSUJDXzIuMS4xIF9fbWVtc2V0X2djbl9ieTQKKzAwMTQxMzYwIGcgICAgRE8gLmRhdGEucmVsLnJvCTAwMDAwMWY0IChHTElCQ18yLjEpICBzeXNfZXJybGlzdAorMDAxNDYyZWMgZyAgICBETyAuYnNzCTAwMDAwMDA0ICBHTElCQ18yLjAgICBtYWxsd2F0Y2gKKzAwMDY1NDUwICB3ICAgREYgLnRleHQJMDAwMDAxZmQgIEdMSUJDXzIuMiAgIF9mbHVzaGxiZgorMDAwNzZiNjAgIHcgICBERiAudGV4dAkwMDAwMDAxOSAgR0xJQkNfMi4wICAgbWJzaW5pdAorMDAwZDY5YzAgIHcgICBERiAudGV4dAkwMDAwMDA1ZCAgR0xJQkNfMi4zICAgdG93dXBwZXJfbAorMDAwZTZiOTAgZyAgICBERiAudGV4dAkwMDAwMDBiYyAgR0xJQkNfMi4zLjQgX19zdHJuY3B5X2NoaworMDAwOTM1MzAgIHcgICBERiAudGV4dAkwMDAwMDAwYyAgR0xJQkNfMi4wICAgZ2V0Z2lkCiswMDEwYTUyMCBnICAgIERGIC50ZXh0CTAwMDAwMDQzICBHTElCQ18yLjAgICBfX3JlZ2lzdGVyX2ZyYW1lX3RhYmxlCiswMDBiMDI2MCAgdyAgIERGIC50ZXh0CTAwMDAwMDdjICBHTElCQ18yLjAgICByZV9jb21waWxlX3BhdHRlcm4KKzAwMDQ2NWYwICB3ICAgREYgLnRleHQJMDAwMDAwMzQgIEdMSUJDXzIuMCAgIGFzcHJpbnRmCiswMDA4NDYzMCAgdyAgIERGIC50ZXh0CTAwMDAwMDc5ICBHTElCQ18yLjAgICB0enNldAorMDAwYzBmMTAgZyAgICBERiAudGV4dAkwMDAwMDBiYyAgR0xJQkNfUFJJVkFURSBfX2xpYmNfcHdyaXRlCiswMDE0MzBjYyBnICAgIERPIC5kYXRhCTAwMDAwMDA0ICBHTElCQ18yLjAgICByZV9tYXhfZmFpbHVyZXMKKzAwMGMyMWMwIGcgICAgREYgLnRleHQJMDAwMDAwM2YgKEdMSUJDXzIuMSkgIF9fbHhzdGF0NjQKKzAwMTQzOTIwIGcgICAgRE8gLmRhdGEJMDAwMDAwNTAgIEdMSUJDXzIuMCAgIF9JT19zdGRlcnJfCiswMDBjMjFjMCBnICAgIERGIC50ZXh0CTAwMDAwMDNmICBHTElCQ18yLjIgICBfX2x4c3RhdDY0CiswMDAyOWM4MCAgdyAgIERGIC50ZXh0CTAwMDAwMDcxICBHTElCQ18yLjAgICBmcmV4cGwKKzAwMGZkODIwIGcgICAgREYgLnRleHQJMDAwMDAxNzAgIEdMSUJDXzIuMCAgIHhkcnJlY19lb2YKKzAwMDIzYzAwIGcgICAgREYgLnRleHQJMDAwMDAwNDggIEdMSUJDXzIuMCAgIGlzdXBwZXIKKzAwMGNmNjAwIGcgICAgREYgLnRleHQJMDAwMDAwMjkgIEdMSUJDXzIuMCAgIHZzeXNsb2cKKzAwMDE2YTEwIGcgICAgREYgLnRleHQJMDAwMDAxOWUgKEdMSUJDXzIuMCkgIF9fdW1vZGRpMworMDAwZmI5ZTAgZyAgICBERiAudGV4dAkwMDAwMDJlZSAgR0xJQkNfMi4wICAgc3ZjdWRwX2J1ZmNyZWF0ZQorMDAwNmZlMjAgZyAgICBERiAudGV4dAkwMDAwMDEyMSAgR0xJQkNfMi4wICAgX19zdHJlcnJvcl9yCiswMDAyOTgwMCAgdyAgIERGIC50ZXh0CTAwMDAwMDExICBHTElCQ18yLjAgICBmaW5pdGVmCiswMDBjMjhlMCAgdyAgIERGIC50ZXh0CTAwMDAwMTJiICBHTElCQ18yLjEgICBmc3RhdGZzNjQKKzAwMTA2ZTAwICB3ICAgREYgLnRleHQJMDAwMDAwNjggIEdMSUJDXzIuMCAgIGdldHV0bGluZQorMDAwZTU5NzAgZyAgICBERiAudGV4dAkwMDAwMDA4YSAgR0xJQkNfUFJJVkFURSBfX25zc19zZXJ2aWNlc19sb29rdXAKKzAwMDY2MTAwIGcgICAgREYgLnRleHQJMDAwMDAxMzggIEdMSUJDXzIuMCAgIF9fdWZsb3cKKzAwMDcwZmQwIGcgICAgREYgLnRleHQJMDAwMDAwNDQgIEdMSUJDXzIuMCAgIF9fbWVtcGNweQorMDAwMmVhMzAgIHcgICBERiAudGV4dAkwMDAwMDAzMCAgR0xJQkNfMi4zICAgc3RydG9sX2wKKzAwMDI5N2UwIGcgICAgREYgLnRleHQJMDAwMDAwMTggIEdMSUJDXzIuMCAgIF9faXNuYW5mCiswMDAyMjgyMCBnICAgIERGIC50ZXh0CTAwMDAwMDY3ICBHTElCQ18yLjIgICBfX25sX2xhbmdpbmZvX2wKKzAwMGZhMTUwIGcgICAgREYgLnRleHQJMDAwMDAwODcgIEdMSUJDXzIuMiAgIHN2Y19nZXRyZXFfcG9sbAorMDAwMjlhYjAgIHcgICBERiAudGV4dAkwMDAwMDAwZSAgR0xJQkNfMi4wICAgZmluaXRlbAorMDAwYzFkOTAgZyAgICBERiAudGV4dAkwMDAwMDA4MSAgR0xJQkNfMi42ICAgX19zY2hlZF9jcHVjb3VudAorMDAwZGYyYzAgZyAgICBERiAudGV4dAkwMDAwMDA0MyAgR0xJQkNfMi4wICAgcHRocmVhZF9hdHRyX3NldGluaGVyaXRzY2hlZAorMDAwMDAwMDAgZyAgICBETyAqQUJTKgkwMDAwMDAwMCAgR0xJQkNfMi4xLjEgR0xJQkNfMi4xLjEKKzAwMTQ2NTEwIGcgICAgRE8gLmJzcwkwMDAwMDAwNCAgR0xJQkNfMi4yICAgc3ZjX3BvbGxmZAorMDAwMDAwMDAgZyAgICBETyAqQUJTKgkwMDAwMDAwMCAgR0xJQkNfMi4xLjIgR0xJQkNfMi4xLjIKKzAwMDYwNjUwICB3ICAgREYgLnRleHQJMDAwMDAwZjcgIEdMSUJDXzIuMCAgIF9fdnNucHJpbnRmCiswMDAyMjdiMCBnICAgIERGIC50ZXh0CTAwMDAwMDcwICBHTElCQ18yLjAgICBubF9sYW5naW5mbworMDAwMDAwMDAgZyAgICBETyAqQUJTKgkwMDAwMDAwMCAgR0xJQkNfMi4xLjMgR0xJQkNfMi4xLjMKKzAwMGNjNDYwIGcgICAgREYgLnRleHQJMDAwMDAwODkgIEdMSUJDXzIuMCAgIHNldGZzZW50CiswMDBjYzk0MCAgdyAgIERGIC50ZXh0CTAwMDAwMDkyICBHTElCQ18yLjAgICBoYXNtbnRvcHQKKzAwMDI5YTYwIGcgICAgREYgLnRleHQJMDAwMDAwNDYgIEdMSUJDXzIuMCAgIF9faXNuYW5sCiswMDAyYjFiMCBnICAgIERGIC50ZXh0CTAwMDAwMDE2ICBHTElCQ18yLjEgICBfX2xpYmNfY3VycmVudF9zaWdydG1heAorMDAwOGUwYjAgIHcgICBERiAudGV4dAkwMDAwMDA5MiAgR0xJQkNfMi4wICAgb3BlbmRpcgorMDAwZWE3NzAgZyAgICBERiAudGV4dAkwMDAwMDFlMSAgR0xJQkNfMi4xLjIgZ2V0bmV0YnlhZGRyX3IKKzAwMTExNWQwIGcgICAgREYgLnRleHQJMDAwMDAwNjMgKEdMSUJDXzIuMCkgIGdldG5ldGJ5YWRkcl9yCiswMDA3NjA4MCBnICAgIERGIC50ZXh0CTAwMDAwMGExICBHTElCQ18yLjAgICB3Y3NuY2F0CiswMDAyOTY4MCAgdyAgIERGIC50ZXh0CTAwMDAwMDBkICBHTElCQ18yLjEgICBzY2FsYmxuCiswMDBlYTI3MCBnICAgIERGIC50ZXh0CTAwMDAwMGFiICBHTElCQ18yLjAgICBnZXRob3N0ZW50CiswMDBlOGFiMCBnICAgIERGIC50ZXh0CTAwMDAwMDQyICBHTElCQ18yLjQgICBfX21ic3J0b3djc19jaGsKKzAwMDU4NWEwIGcgICAgREYgLnRleHQJMDAwMDAxNzEgIEdMSUJDXzIuMCAgIF9JT19mZ2V0cworMDAxNDY1MDAgZyAgICBETyAuYnNzCTAwMDAwMDEwICBHTElCQ18yLjAgICBycGNfY3JlYXRlZXJyCiswMDA3MTBjMCAgdyAgIERGIC50ZXh0CTAwMDAwMDJlICBHTElCQ18yLjAgICBiemVybworMDAwZjhhNjAgZyAgICBERiAudGV4dAkwMDAwMDY4NSAgR0xJQkNfMi4wICAgY2xudF9icm9hZGNhc3QKKzAwMDJhZDAwIGcgICAgREYgLnRleHQJMDAwMDAwMjQgIEdMSUJDXzIuMCAgIF9fc2lnYWRkc2V0CiswMDAyOTdiMCBnICAgIERGIC50ZXh0CTAwMDAwMDI0ICBHTElCQ18yLjAgICBfX2lzaW5mZgorMDAwNmUyMjAgZyAgICBERiAudGV4dAkwMDAwMDBiZCAgR0xJQkNfMi4yICAgbWNoZWNrX2NoZWNrX2FsbAorMDAxNDMxNjQgZyAgICBETyAuZGF0YQkwMDAwMDAwNCAgR0xJQkNfMi4xICAgYXJncF9lcnJfZXhpdF9zdGF0dXMKKzAwMGQ3M2MwIGcgICAgREYgLnRleHQJMDAwMDAxMmQgIEdMSUJDXzIuMCAgIGdldHNwbmFtCiswMDBkZjRmMCBnICAgIERGIC50ZXh0CTAwMDAwMDNjICBHTElCQ18yLjAgICBwdGhyZWFkX2NvbmRhdHRyX2Rlc3Ryb3kKKzAwMGMyNzMwIGcgICAgREYgLnRleHQJMDAwMDAwMzggIEdMSUJDXzIuMiAgIF9fc3RhdGZzCiswMDE0NGE5NCBnICAgIERPIC5ic3MJMDAwMDAwMDQgIEdMSUJDXzIuMCAgIF9fZW52aXJvbgorMDAwZTdlOTAgZyAgICBERiAudGV4dAkwMDAwMDA1NiAgR0xJQkNfMi40ICAgX193Y3NjYXRfY2hrCiswMDBjMjE0MCBnICAgIERGIC50ZXh0CTAwMDAwMDNmICBHTElCQ18yLjIgICBfX3hzdGF0NjQKKzAwMDkwODUwICB3ICAgREYgLnRleHQJMDAwMDAyNGUgIEdMSUJDXzIuMCAgIGZnZXRncmVudF9yCiswMDBjMjE0MCBnICAgIERGIC50ZXh0CTAwMDAwMDNmIChHTElCQ18yLjEpICBfX3hzdGF0NjQKKzAwMGYzN2QwIGcgICAgREYgLnRleHQJMDAwMDAwMTEgIEdMSUJDXzIuMy4zIGluZXQ2X29wdGlvbl9zcGFjZQorMDAwZDJjZDAgIHcgICBERiAudGV4dAkwMDAwMDA5MCAgR0xJQkNfMi4wICAgY2xvbmUKKzAwMGQ2ZWYwIGcgICAgREYgLnRleHQJMDAwMDAwOTAgIEdMSUJDXzIuMSAgIF9faXN3cHVuY3RfbAorMDAwMmM1MjAgZyAgICBERiAudGV4dAkwMDAwMDBlZiAgR0xJQkNfMi4wICAgZ2V0ZW52CiswMDAyM2ZhMCBnICAgIERGIC50ZXh0CTAwMDAwMDNjICBHTElCQ18yLjMgICBfX2N0eXBlX2JfbG9jCiswMDAyOWEwMCBnICAgIERGIC50ZXh0CTAwMDAwMDU1ICBHTElCQ18yLjAgICBfX2lzaW5mbAorMDAxMTA4ZTAgZyAgICBERiAudGV4dAkwMDAwMDAzMiAoR0xJQkNfMi4zLjMpIHNjaGVkX2dldGFmZmluaXR5CiswMDBiNzZjMCBnICAgIERGIC50ZXh0CTAwMDAwMDg5ICBHTElCQ18yLjMuNCBzY2hlZF9nZXRhZmZpbml0eQorMDAwMmFhMDAgIHcgICBERiAudGV4dAkwMDAwMDAxYiAgR0xJQkNfMi4yICAgX194cGdfc2lncGF1c2UKKzAwMGQ1MjMwICB3ICAgREYgLnRleHQJMDAwMDAxY2QgIEdMSUJDXzIuMCAgIHByb2ZpbAorMDAwNTVkMTAgZyAgICBERiAudGV4dAkwMDAwMDAzNCAgR0xJQkNfMi4wICAgc3NjYW5mCiswMDEwYTEwMCBnICAgIERGIC50ZXh0CTAwMDAwMDIzICBHTElCQ18yLjAgICBfX2RlcmVnaXN0ZXJfZnJhbWVfaW5mbworMDAwOTM5MDAgIHcgICBERiAudGV4dAkwMDAwMDA4NSAgR0xJQkNfMi4wICAgc2V0cmVzdWlkCiswMDAyZTEzMCAgdyAgIERGIC50ZXh0CTAwMDAwMDUyICBHTElCQ18yLjAgICBqcmFuZDQ4X3IKKzAwMGQzYzMwICB3ICAgREYgLnRleHQJMDAwMDAwNmMgIEdMSUJDXzIuMCAgIHJlY3Zmcm9tCiswMDA3NGU3MCBnICAgIERGIC50ZXh0CTAwMDAwMDQwICBHTElCQ18yLjEuMSBfX21lbXBjcHlfYnkyCiswMDBkNWM0MCBnICAgIERGIC50ZXh0CTAwMDAwMDE5ICBHTElCQ18yLjAgICBfX3Byb2ZpbGVfZnJlcXVlbmN5CiswMDA3Nzc3MCAgdyAgIERGIC50ZXh0CTAwMDAwMzJmICBHTElCQ18yLjAgICB3Y3NucnRvbWJzCiswMDA3NGUzMCBnICAgIERGIC50ZXh0CTAwMDAwMDMzICBHTElCQ18yLjEuMSBfX21lbXBjcHlfYnk0CiswMDE0NjUyMCBnICAgIERPIC5ic3MJMDAwMDAwODAgIEdMSUJDXzIuMCAgIHN2Y19mZHNldAorMDAwZWY2NjAgZyAgICBERiAudGV4dAkwMDAwMDA5YyAgR0xJQkNfMi4wICAgcnVzZXJvaworMDAwNmY1NTAgZyAgICBERiAudGV4dAkwMDAwMDAyYyAgR0xJQkNfMi4wICAgX29ic3RhY2tfYWxsb2NhdGVkX3AKKzAwMGM3MjUwIGcgICAgREYgLnRleHQJMDAwMDAwM2IgIEdMSUJDXzIuMCAgIGZ0c19zZXQKKzAwMGZjNjkwIGcgICAgREYgLnRleHQJMDAwMDAwMWEgIEdMSUJDXzIuMS4xIHhkcl91X2xvbmdsb25nX3QKKzAwMGNhZWMwIGcgICAgREYgLnRleHQJMDAwMDAwYWIgIEdMSUJDXzIuMCAgIG5pY2UKKzAwMGIwMTMwICB3ICAgREYgLnRleHQJMDAwMDAxMjYgIEdMSUJDXzIuMCAgIHJlZ2NvbXAKKzAwMTAxYzYwIGcgICAgREYgLnRleHQJMDAwMDAyM2IgIEdMSUJDXzIuMSAgIHhkZWNyeXB0CiswMDBjMmZmMCAgdyAgIERGIC50ZXh0CTAwMDAwMDcwICBHTElCQ18yLjAgICBfX29wZW4KKzAwMDg1YWMwICB3ICAgREYgLnRleHQJMDAwMDAwMzggIEdMSUJDXzIuMCAgIGdldGl0aW1lcgorMDAwMjNhYzAgZyAgICBERiAudGV4dAkwMDAwMDA0OCAgR0xJQkNfMi4wICAgaXNncmFwaAorMDAxNDYzNDQgZyAgICBETyAuYnNzCTAwMDAwMDA0ICBHTElCQ18yLjAgICBvcHRhcmcKKzAwMDI4YTMwIGcgICAgREYgLnRleHQJMDAwMDAwODAgIEdMSUJDXzIuMCAgIGNhdGNsb3NlCiswMDBmNzYzMCBnICAgIERGIC50ZXh0CTAwMDAwMmRiICBHTElCQ18yLjAgICBjbG50dWRwX2J1ZmNyZWF0ZQorMDAwZWI5NTAgZyAgICBERiAudGV4dAkwMDAwMDEzZCAgR0xJQkNfMi4wICAgZ2V0c2VydmJ5bmFtZQorMDAwNjEzMzAgZyAgICBERiAudGV4dAkwMDAwMDAxYSAgR0xJQkNfMi4yICAgX19mcmVhZGluZworMDAwN2ZmMzAgZyAgICBERiAudGV4dAkwMDAwMDA3YiAgR0xJQkNfMi4wICAgd2N3aWR0aAorMDAxNDM4NDQgZyAgICBETyAuZGF0YQkwMDAwMDAwNCAgR0xJQkNfMi4wICAgc3RkZXJyCiswMDBkNDUwMCBnICAgIERGIC50ZXh0CTAwMDAwMDY1ICBHTElCQ18yLjIgICBtc2djdGwKKzAwMTEwZWIwIGcgICAgREYgLnRleHQJMDAwMDAwNjIgKEdMSUJDXzIuMCkgIG1zZ2N0bAorMDAwZThmNjAgZyAgICBERiAudGV4dAkwMDAwMDAyZCAgR0xJQkNfMi4wICAgaW5ldF9sbmFvZgorMDAwMmFlODAgZyAgICBERiAudGV4dAkwMDAwMDA2YSAgR0xJQkNfMi4wICAgc2lnZGVsc2V0CiswMDAxNjExMCAgdyAgIERGIC50ZXh0CTAwMDAwMDE2ICBHTElCQ18yLjEgICBnbnVfZ2V0X2xpYmNfcmVsZWFzZQorMDAwY2IwNzAgIHcgICBERiAudGV4dAkwMDAwMDAzYSAgR0xJQkNfMi4wICAgaW9jdGwKKzAwMGM0NGQwIGcgICAgREYgLnRleHQJMDAwMDAxNzggIEdMSUJDXzIuNCAgIGZjaG93bmF0CiswMDA5MjNjMCBnICAgIERGIC50ZXh0CTAwMDAwMDM0ICBHTElCQ18yLjAgICBhbGFybQorMDAxNDM1NjAgZyAgICBETyAuZGF0YQkwMDAwMDA5OCAgR0xJQkNfMi4xICAgX0lPXzJfMV9zdGRlcnJfCiswMDA1YzU4MCBnICAgIERGIC50ZXh0CTAwMDAwMDQ5ICBHTElCQ18yLjIgICBfSU9fc3B1dGJhY2t3YworMDAwNmFkMzAgZyAgICBERiAudGV4dAkwMDAwMDEwNSAgR0xJQkNfMi4wICAgX19saWJjX3B2YWxsb2MKKzAwMDM3NzAwICB3ICAgREYgLnRleHQJMDAwMDAwN2QgIEdMSUJDXzIuMCAgIHN5c3RlbQorMDAxMDA3MDAgZyAgICBERiAudGV4dAkwMDAwMDA2OCAgR0xJQkNfMi4xICAgeGRyX2dldGNyZWRyZXMKKzAwMDc4MmYwICB3ICAgREYgLnRleHQJMDAwMDAwNDAgIEdMSUJDXzIuMSAgIF9fd2NzdG9sX2wKKzAwMDU1YzMwICB3ICAgREYgLnRleHQJMDAwMDAwMzkgIEdMSUJDXzIuMiAgIHZmd3NjYW5mCiswMDBkMzUyMCBnICAgIERGIC50ZXh0CTAwMDAwMDJjICBHTElCQ18yLjQgICBpbm90aWZ5X2luaXQKKzAwMGNkYzYwIGcgICAgREYgLnRleHQJMDAwMDAwNDQgIEdMSUJDXzIuMCAgIGNoZmxhZ3MKKzAwMGQxYzYwIGcgICAgREYgLnRleHQJMDAwMDAwMjYgIEdMSUJDXzIuMCAgIGVycgorMDAwZWJhYjAgZyAgICBERiAudGV4dAkwMDAwMDFmYiAgR0xJQkNfMi4xLjIgZ2V0c2VydmJ5bmFtZV9yCiswMDExMTk5MCBnICAgIERGIC50ZXh0CTAwMDAwMDY2IChHTElCQ18yLjApICBnZXRzZXJ2YnluYW1lX3IKKzAwMGZjODEwIGcgICAgREYgLnRleHQJMDAwMDAwNzkgIEdMSUJDXzIuMCAgIHhkcl9ib29sCiswMDA3MTEwMCBnICAgIERGIC50ZXh0CTAwMDAwMDY0ICBHTElCQ18yLjEgICBmZnNsbAorMDAwMjNlZjAgZyAgICBERiAudGV4dAkwMDAwMDAyYyAgR0xJQkNfMi4zICAgX19pc2N0eXBlCiswMDBjYWFlMCBnICAgIERGIC50ZXh0CTAwMDAwMDZhICBHTElCQ18yLjEgICBzZXRybGltaXQ2NAorMDAwOTM2NzAgIHcgICBERiAudGV4dAkwMDAwMDA4OCAgR0xJQkNfMi4wICAgZ3JvdXBfbWVtYmVyCiswMDBjMWU2MCBnICAgIERGIC50ZXh0CTAwMDAwMDU2ICBHTElCQ18yLjYgICBzY2hlZF9nZXRjcHUKKzAwMDU4M2EwIGcgICAgREYgLnRleHQJMDAwMDAxZGYgIEdMSUJDXzIuMiAgIF9JT19mZ2V0cG9zCiswMDA2NWE4MCBnICAgIERGIC50ZXh0CTAwMDAwMDUyICBHTElCQ18yLjAgICBfSU9fZnJlZV9iYWNrdXBfYXJlYQorMDAwY2ZhMjAgIHcgICBERiAudGV4dAkwMDAwMDAzOCAgR0xJQkNfMi4wICAgbXVubWFwCiswMDEwZDRjMCBnICAgIERGIC50ZXh0CTAwMDAwMTNiIChHTElCQ18yLjApICBfSU9fZmdldHBvcworMDAwYzE0ZTAgZyAgICBERiAudGV4dAkwMDAwMDAzNyAgR0xJQkNfMi4yICAgcG9zaXhfc3Bhd25hdHRyX3NldHNpZ2RlZmF1bHQKKzAwMDZmMmUwIGcgICAgREYgLnRleHQJMDAwMDAwY2MgIEdMSUJDXzIuMCAgIF9vYnN0YWNrX2JlZ2luXzEKKzAwMDkxOGQwIGcgICAgREYgLnRleHQJMDAwMDAzMTkgIEdMSUJDX1BSSVZBVEUgX25zc19maWxlc19wYXJzZV9wd2VudAorMDAwZTg4YTAgZyAgICBERiAudGV4dAkwMDAwMDAzYiAgR0xJQkNfMi40ICAgX19nZXRncm91cHNfY2hrCiswMDA5MWZlMCAgdyAgIERGIC50ZXh0CTAwMDAwMDI5ICBHTElCQ18yLjAgICB3YWl0MworMDAwOTIwMTAgIHcgICBERiAudGV4dAkwMDAwMDA0MCAgR0xJQkNfMi4wICAgd2FpdDQKKzAwMDZmM2IwIGcgICAgREYgLnRleHQJMDAwMDAxOTUgIEdMSUJDXzIuMCAgIF9vYnN0YWNrX25ld2NodW5rCiswMDA3NGVmMCBnICAgIERGIC50ZXh0CTAwMDAwMDM0ICBHTElCQ18yLjEuMSBfX3N0cGNweV9nCiswMDBkMjViMCAgdyAgIERGIC50ZXh0CTAwMDAwMDdjICBHTElCQ18yLjAgICBhZHZhbmNlCiswMDBmNDJlMCBnICAgIERGIC50ZXh0CTAwMDAwMDJhICBHTElCQ18yLjUgICBpbmV0Nl9vcHRfaW5pdAorMDAxNDMwMjQgZyAgICBETyAuZGF0YQkwMDAwMDAwMiAgR0xJQkNfMi4wICAgX19mcHVfY29udHJvbAorMDAxMDlmZjAgZyAgICBERiAudGV4dAkwMDAwMDAzYSAgR0xJQkNfMi4wICAgX19yZWdpc3Rlcl9mcmFtZV9pbmZvCiswMDBlOTk4MCBnICAgIERGIC50ZXh0CTAwMDAwMWE1ICBHTElCQ18yLjAgICBnZXRob3N0YnluYW1lCiswMDBjMzc2MCAgdyAgIERGIC50ZXh0CTAwMDAwMDNhICBHTElCQ18yLjAgICBfX2xzZWVrCiswMDBlNmU0MCBnICAgIERGIC50ZXh0CTAwMDAwMDM5ICBHTElCQ18yLjMuNCBfX3NucHJpbnRmX2NoaworMDAxNDMwZDggZyAgICBETyAuZGF0YQkwMDAwMDAwNCAgR0xJQkNfMi4wICAgb3B0b3B0CiswMDBjMTNiMCBnICAgIERGIC50ZXh0CTAwMDAwMDk3ICBHTElCQ18yLjIgICBwb3NpeF9zcGF3bl9maWxlX2FjdGlvbnNfYWRkZHVwMgorMDAwNzgyZjAgIHcgICBERiAudGV4dAkwMDAwMDA0MCAgR0xJQkNfMi4zICAgd2NzdG9sX2wKKzAwMTQ2MzU0IGcgICAgRE8gLmJzcwkwMDAwMDAwNCAgR0xJQkNfMi4wICAgZXJyb3JfbWVzc2FnZV9jb3VudAorMDAwMjNkOTAgZyAgICBERiAudGV4dAkwMDAwMDAxNSAgR0xJQkNfMi4xICAgX19pc2NudHJsX2wKKzAwMGMyZjAwIGcgICAgREYgLnRleHQJMDAwMDAwZWQgIEdMSUJDXzIuNCAgIG1rZGlyYXQKKzAwMGNiNmEwIGcgICAgREYgLnRleHQJMDAwMDAwYTcgIEdMSUJDXzIuMCAgIHNldGV1aWQKKzAwMDc1ZjUwIGcgICAgREYgLnRleHQJMDAwMDAwMmMgIEdMSUJDXzIuMCAgIHdjc2NweQorMDAwMmUwZjAgZyAgICBERiAudGV4dAkwMDAwMDAzNyAgR0xJQkNfMi4wICAgbXJhbmQ0OF9yCiswMDBkMmYzMCBnICAgIERGIC50ZXh0CTAwMDAwMDEzICBHTElCQ18yLjAgICBzZXRmc3VpZAorMDAwYzNmNDAgIHcgICBERiAudGV4dAkwMDAwMDAzNCAgR0xJQkNfMi4wICAgZHVwCiswMDBlNjhhMCBnICAgIERGIC50ZXh0CTAwMDAwMGQ5ICBHTElCQ18yLjMuNCBfX21lbXNldF9jaGsKKzAwMTQzODYwIGcgICAgRE8gLmRhdGEJMDAwMDAwNTAgIEdMSUJDXzIuMCAgIF9JT19zdGRpbl8KKzAwMGRmOWEwIGcgICAgREYgLnRleHQJMDAwMDAwNDYgIEdMSUJDXzIuMCAgIHB0aHJlYWRfZXhpdAorMDAwZmM3ZDAgZyAgICBERiAudGV4dAkwMDAwMDAzNyAgR0xJQkNfMi4wICAgeGRyX3VfY2hhcgorMDAwNWIzMTAgZyAgICBERiAudGV4dAkwMDAwMDAzZCAgR0xJQkNfMi4yICAgZ2V0d2NoYXJfdW5sb2NrZWQKKzAwMTQ2MzQwIGcgICAgRE8gLmJzcwkwMDAwMDAwNCAgR0xJQkNfMi4wICAgcmVfc3ludGF4X29wdGlvbnMKKzAwMTA4ZmIwIGcgICAgREYgLnRleHQJMDAwMDAwMjMgIEdMSUJDXzIuMSAgIHB1dHV0eGxpbmUKKzAwMGQ0MzAwICB3ICAgREYgLnRleHQJMDAwMDAwYjYgIEdMSUJDXzIuMCAgIG1zZ3NuZAorMDAwOTNhMjAgZyAgICBERiAudGV4dAkwMDAwMDBkZCAgR0xJQkNfMi4wICAgZ2V0bG9naW4KKzAwMGNkY2IwIGcgICAgREYgLnRleHQJMDAwMDAwNDQgIEdMSUJDXzIuMCAgIGZjaGZsYWdzCiswMDAyYjBkMCBnICAgIERGIC50ZXh0CTAwMDAwMDVmICBHTElCQ18yLjAgICBzaWdhbmRzZXQKKzAwMDI5OGUwICB3ICAgREYgLnRleHQJMDAwMDAwMGQgIEdMSUJDXzIuMCAgIHNjYWxibmYKKzAwMGI3NjgwICB3ICAgREYgLnRleHQJMDAwMDAwMzggIEdMSUJDXzIuMCAgIHNjaGVkX3JyX2dldF9pbnRlcnZhbAorMDAwNjQzNjAgZyAgICBERiAudGV4dAkwMDAwMDA5MSAgR0xJQkNfMi4xICAgX0lPX2ZpbGVfZmluaXNoCiswMDBkMmM1MCBnICAgIERGIC50ZXh0CTAwMDAwMDc1ICBHTElCQ18yLjIgICBfX3N5c2N0bAorMDAwZmNlYTAgZyAgICBERiAudGV4dAkwMDAwMDBhMCAgR0xJQkNfMi4wICAgeGRyX2RvdWJsZQorMDAwOTM1NTAgIHcgICBERiAudGV4dAkwMDAwMDAzZiAgR0xJQkNfMi4wICAgZ2V0Z3JvdXBzCiswMDAyOWM3MCAgdyAgIERGIC50ZXh0CTAwMDAwMDBkICBHTElCQ18yLjAgICBzY2FsYm5sCiswMDBjYjIxMCAgdyAgIERGIC50ZXh0CTAwMDAwMTAzICBHTElCQ18yLjAgICByZWFkdgorMDAwOTM1MTAgIHcgICBERiAudGV4dAkwMDAwMDAwYyAgR0xJQkNfMi4wICAgZ2V0dWlkCiswMDBlZjVhMCBnICAgIERGIC50ZXh0CTAwMDAwMDNmICBHTElCQ18yLjAgICByY21kCiswMDBjNGYzMCAgdyAgIERGIC50ZXh0CTAwMDAwMDNhICBHTElCQ18yLjAgICByZWFkbGluaworMDAwZDE3OTAgZyAgICBERiAudGV4dAkwMDAwMDA4YiAgR0xJQkNfMi4wICAgbHNlYXJjaAorMDAwZWU2YjAgZyAgICBERiAudGV4dAkwMDAwMDBjYSAgR0xJQkNfMi4yICAgaXJ1c2Vyb2tfYWYKKzAwMDU1YzkwIGcgICAgREYgLnRleHQJMDAwMDAwMjQgIEdMSUJDXzIuMCAgIGZzY2FuZgorMDAwZWNjYzAgZyAgICBERiAudGV4dAkwMDAwMDY1NiAgR0xJQkNfMi4wICAgZXRoZXJfYXRvbl9yCiswMDA0MWFjMCBnICAgIERGIC50ZXh0CTAwMDAyNjRhICBHTElCQ18yLjAgICBfX3ByaW50Zl9mcAorMDAwZDM2MjAgIHcgICBERiAudGV4dAkwMDAwMDA0NiAgR0xJQkNfMi4wICAgbXJlbWFwCiswMDBkMmVjMCAgdyAgIERGIC50ZXh0CTAwMDAwMDZhICBHTElCQ18yLjMgICByZWFkYWhlYWQKKzAwMTAwYzYwIGcgICAgREYgLnRleHQJMDAwMDAxYTAgIEdMSUJDXzIuMSAgIGhvc3QybmV0bmFtZQorMDAwZDJhNjAgZyAgICBERiAudGV4dAkwMDAwMDAzOCAgR0xJQkNfMi4zICAgcmVtb3ZleGF0dHIKKzAwMDVjNDEwIGcgICAgREYgLnRleHQJMDAwMDAwMmQgIEdMSUJDXzIuMiAgIF9JT19zd2l0Y2hfdG9fd2JhY2t1cF9hcmVhCiswMDBmODhmMCBnICAgIERGIC50ZXh0CTAwMDAwMDZmICBHTElCQ18yLjAgICB4ZHJfcG1hcAorMDAwMDAwMDAgZyAgICBETyAqQUJTKgkwMDAwMDAwMCAgR0xJQkNfMi4yLjEgR0xJQkNfMi4yLjEKKzAwMDc0ZWIwIGcgICAgREYgLnRleHQJMDAwMDAwMzMgIEdMSUJDXzIuMS4xIF9fbWVtcGNweV9ieW4KKzAwMGViMzEwIGcgICAgREYgLnRleHQJMDAwMDAwYTIgIEdMSUJDXzIuMCAgIGdldHByb3RvZW50CiswMDA5MmFhMCAgdyAgIERGIC50ZXh0CTAwMDAwMDUzICBHTElCQ18yLjAgICBleGVjdmUKKzAwMDVlMzUwIGcgICAgREYgLnRleHQJMDAwMDAxNWYgIEdMSUJDXzIuMiAgIF9JT193ZmlsZV9zeW5jCiswMDAwMDAwMCBnICAgIERPICpBQlMqCTAwMDAwMDAwICBHTElCQ18yLjIuMiBHTElCQ18yLjIuMgorMDAwZmM4YjAgZyAgICBERiAudGV4dAkwMDAwMDBjZCAgR0xJQkNfMi4wICAgeGRyX29wYXF1ZQorMDAwOTM1NDAgIHcgICBERiAudGV4dAkwMDAwMDAwYyAgR0xJQkNfMi4wICAgZ2V0ZWdpZAorMDAwMDAwMDAgZyAgICBETyAqQUJTKgkwMDAwMDAwMCAgR0xJQkNfMi4yLjMgR0xJQkNfMi4yLjMKKzAwMDAwMDAwIGcgICAgRE8gKkFCUyoJMDAwMDAwMDAgIEdMSUJDXzIuMi40IEdMSUJDXzIuMi40CiswMDBjYWExMCBnICAgIERGIC50ZXh0CTAwMDAwMDNmICBHTElCQ18yLjIgICBzZXRybGltaXQKKzAwMGQzMGYwIGcgICAgREYgLnRleHQJMDAwMDAwMzggKEdMSUJDXzIuMCkgIHNldHJsaW1pdAorMDAwYjc0ODAgZyAgICBERiAudGV4dAkwMDAwMDA0NyAgR0xJQkNfMi4wICAgZ2V0b3B0X2xvbmcKKzAwMDYzYzEwIGcgICAgREYgLnRleHQJMDAwMDAxMWIgIEdMSUJDXzIuMCAgIF9JT19maWxlX29wZW4KKzAwMDAwMDAwIGcgICAgRE8gKkFCUyoJMDAwMDAwMDAgIEdMSUJDXzIuMi42IEdMSUJDXzIuMi42CiswMDA4MzVlMCAgdyAgIERGIC50ZXh0CTAwMDAwMDM4ICBHTElCQ18yLjAgICBzZXR0aW1lb2ZkYXkKKzAwMDVmZTgwIGcgICAgREYgLnRleHQJMDAwMDAwY2IgIEdMSUJDXzIuMCAgIG9wZW5fbWVtc3RyZWFtCiswMDBjYjA0MCBnICAgIERGIC50ZXh0CTAwMDAwMDIyICBHTElCQ18yLjAgICBzc3RrCiswMDEwOWU1MCBnICAgIERGIC50ZXh0CTAwMDAwMGQ3ICBHTElCQ19QUklWQVRFIF9kbF92c3ltCiswMDA2MTNiMCBnICAgIERGIC50ZXh0CTAwMDAwMDc2ICBHTElCQ18yLjIgICBfX2ZwdXJnZQorMDAxMDhmZTAgZyAgICBERiAudGV4dAkwMDAwMDAyMyAgR0xJQkNfMi4xICAgdXRtcHhuYW1lCiswMDA5MzcwMCAgdyAgIERGIC50ZXh0CTAwMDAwMDM0ICBHTElCQ18yLjAgICBnZXRwZ2lkCiswMDAyYjFiMCBnICAgIERGIC50ZXh0CTAwMDAwMDE2ICBHTElCQ19QUklWQVRFIF9fbGliY19jdXJyZW50X3NpZ3J0bWF4X3ByaXZhdGUKKzAwMDM3MTUwICB3ICAgREYgLnRleHQJMDAwMDAwMjkgIEdMSUJDXzIuMyAgIHN0cnRvbGRfbAorMDAwZTZhYTAgZyAgICBERiAudGV4dAkwMDAwMDBlNyAgR0xJQkNfMi4zLjQgX19zdHJuY2F0X2NoaworMDAwYzFkNjAgZyAgICBERiAudGV4dAkwMDAwMDAyNCAgR0xJQkNfMi4yICAgcG9zaXhfbWFkdmlzZQorMDAwYzE1NjAgZyAgICBERiAudGV4dAkwMDAwMDAxMiAgR0xJQkNfMi4yICAgcG9zaXhfc3Bhd25hdHRyX2dldHBncm91cAorMDAwZDFhZjAgZyAgICBERiAudGV4dAkwMDAwMDBlMyAgR0xJQkNfMi4wICAgdndhcm54CiswMDA3NTNiMCBnICAgIERGIC50ZXh0CTAwMDAwMGQzICBHTElCQ18yLjEuMSBfX21lbXBjcHlfc21hbGwKKzAwMTBkNjIwIGcgICAgREYgLnRleHQJMDAwMDAxODQgKEdMSUJDXzIuMSkgIGZnZXRwb3M2NAorMDAwNWFiYjAgZyAgICBERiAudGV4dAkwMDAwMDFhZiAgR0xJQkNfMi4yICAgZmdldHBvczY0CiswMDA2Zjg0MCAgdyAgIERGIC50ZXh0CTAwMDAwMTY3ICBHTElCQ18yLjAgICBpbmRleAorMDAxNDY0ZTQgZyAgICBETyAuYnNzCTAwMDAwMDA0ICBHTElCQ18yLjAgICByZXhlY29wdGlvbnMKKzAwMGRmMWQwIGcgICAgREYgLnRleHQJMDAwMDAwNDMgIEdMSUJDXzIuMCAgIHB0aHJlYWRfYXR0cl9nZXRkZXRhY2hzdGF0ZQorMDAwNWRhZjAgZyAgICBERiAudGV4dAkwMDAwMDE5ZiAgR0xJQkNfMi4yICAgX0lPX3dmaWxlX3hzcHV0bgorMDAwOTJmMjAgZyAgICBERiAudGV4dAkwMDAwMDQ0MSAgR0xJQkNfMi4wICAgZXhlY3ZwCiswMDBjZmI1MCBnICAgIERGIC50ZXh0CTAwMDAwMDNhICBHTElCQ18yLjIgICBtaW5jb3JlCiswMDA2ODg1MCAgdyAgIERGIC50ZXh0CTAwMDAwMThhICBHTElCQ18yLjAgICBtYWxsaW5mbworMDAwNjg5ZTAgIHcgICBERiAudGV4dAkwMDAwMDA3NyAgR0xJQkNfMi4wICAgbWFsbG9jX3RyaW0KKzAwMDY2NWYwIGcgICAgREYgLnRleHQJMDAwMDAwNDIgIEdMSUJDXzIuMCAgIF9JT19zdHJfdW5kZXJmbG93CiswMDBmMjcxMCBnICAgIERGIC50ZXh0CTAwMDAwMDIzICBHTElCQ18yLjMgICBmcmVlaWZhZGRycworMDAwZmI4YjAgZyAgICBERiAudGV4dAkwMDAwMDEyNiAgR0xJQkNfMi4wICAgc3ZjdWRwX2VuYWJsZWNhY2hlCiswMDAyMzBlMCBnICAgIERGIC50ZXh0CTAwMDAwMTRiICBHTElCQ18yLjEgICBfX2R1cGxvY2FsZQorMDAwODFhMzAgZyAgICBERiAudGV4dAkwMDAwMDA3MyAgR0xJQkNfMi4xICAgX193Y3NuY2FzZWNtcF9sCiswMDBjNGMxMCBnICAgIERGIC50ZXh0CTAwMDAwMWMxICBHTElCQ18yLjQgICBsaW5rYXQKKzAwMDY1ZDkwIGcgICAgREYgLnRleHQJMDAwMDAxMjkgIEdMSUJDXzIuMCAgIF9JT19kZWZhdWx0X3BiYWNrZmFpbAorMDAwZjQ2OTAgZyAgICBERiAudGV4dAkwMDAwMDAyNCAgR0xJQkNfMi41ICAgaW5ldDZfcnRoX3NwYWNlCiswMDA1YzdlMCBnICAgIERGIC50ZXh0CTAwMDAwMDU4ICBHTElCQ18yLjIgICBfSU9fZnJlZV93YmFja3VwX2FyZWEKKzAwMGRmNmQwIGcgICAgREYgLnRleHQJMDAwMDAwNGEgIEdMSUJDXzIuMy4yIHB0aHJlYWRfY29uZF90aW1lZHdhaXQKKzAwMTExMmQwIGcgICAgREYgLnRleHQJMDAwMDAwNGEgKEdMSUJDXzIuMCkgIHB0aHJlYWRfY29uZF90aW1lZHdhaXQKKzAwMDkxNGYwIGcgICAgREYgLnRleHQJMDAwMDAxZWMgIEdMSUJDXzIuMS4yIGdldHB3bmFtX3IKKzAwMTBkN2QwIGcgICAgREYgLnRleHQJMDAwMDAxMTAgKEdMSUJDXzIuMCkgIF9JT19mc2V0cG9zCiswMDEwZjA3MCBnICAgIERGIC50ZXh0CTAwMDAwMDVmIChHTElCQ18yLjApICBnZXRwd25hbV9yCiswMDA1OGU0MCBnICAgIERGIC50ZXh0CTAwMDAwMTNlICBHTElCQ18yLjIgICBfSU9fZnNldHBvcworMDAxNDMzMmMgIHcgICBETyAuZGF0YQkwMDAwMDAwNCAgR0xJQkNfMi4wICAgX19yZWFsbG9jX2hvb2sKKzAwMDVmOGIwIGcgICAgREYgLnRleHQJMDAwMDAyNmIgIEdMSUJDXzIuMCAgIGZyZW9wZW4KKzAwMGU2NTIwICB3ICAgREYgLnRleHQJMDAwMDAyMTcgIEdMSUJDXzIuMSAgIGJhY2t0cmFjZV9zeW1ib2xzX2ZkCiswMDA3MTJkMCAgdyAgIERGIC50ZXh0CTAwMDAwMDdhICBHTElCQ18yLjAgICBzdHJuY2FzZWNtcAorMDAwYzIyMDAgZyAgICBERiAudGV4dAkwMDAwMDA5NiAgR0xJQkNfMi4wICAgX194bWtub2QKKzAwMDVkYzkwIGcgICAgREYgLnRleHQJMDAwMDA2YjIgIEdMSUJDXzIuMiAgIF9JT193ZmlsZV9zZWVrb2ZmCiswMDBlN2E4MCBnICAgIERGIC50ZXh0CTAwMDAwMDMyICBHTElCQ18yLjQgICBfX3JlY3ZfY2hrCiswMDBjYzM5MCBnICAgIERGIC50ZXh0CTAwMDAwMDhiICBHTElCQ18yLjAgICBwdHJhY2UKKzAwMGY0NzEwIGcgICAgREYgLnRleHQJMDAwMDAxMDYgIEdMSUJDXzIuNSAgIGluZXQ2X3J0aF9yZXZlcnNlCiswMDBjZGQzMCBnICAgIERGIC50ZXh0CTAwMDAwMDFhICBHTElCQ18yLjAgICByZW1xdWUKKzAwMGYyYjQwIGcgICAgREYgLnRleHQJMDAwMDBjODcgIEdMSUJDXzIuMyAgIGdldGlmYWRkcnMKKzAwMGQ3MGMwICB3ICAgREYgLnRleHQJMDAwMDAwNWQgIEdMSUJDXzIuMyAgIHRvd2xvd2VyX2wKKzAwMDViYzUwIGcgICAgREYgLnRleHQJMDAwMDAwMzggIEdMSUJDXzIuMiAgIHB1dHdjX3VubG9ja2VkCiswMDA0NWJjMCBnICAgIERGIC50ZXh0CTAwMDAwMDJiICBHTElCQ18yLjEgICBwcmludGZfc2l6ZV9pbmZvCiswMDAwMDAyMCBnICAgIEQgIC50YnNzCTAwMDAwMDA0ICBHTElCQ19QUklWQVRFIGhfZXJybm8KKzAwMDI5NjgwICB3ICAgREYgLnRleHQJMDAwMDAwMGQgIEdMSUJDXzIuMCAgIHNjYWxibgorMDAwN2RjZTAgIHcgICBERiAudGV4dAkwMDAwMDAzOSAgR0xJQkNfMi4xICAgX193Y3N0b2xkX2wKKzAwMGYyMmQwIGcgICAgREYgLnRleHQJMDAwMDAwYTQgIEdMSUJDXzIuMSAgIGlmX25hbWV0b2luZGV4CiswMDAyOThlMCAgdyAgIERGIC50ZXh0CTAwMDAwMDBkICBHTElCQ18yLjEgICBzY2FsYmxuZgorMDAwNzdjZTAgZyAgICBERiAudGV4dAkwMDAwMDA0NSAgR0xJQkNfMi4wICAgX193Y3N0b2xsX2ludGVybmFsCiswMDE0NjQ4MCBnICAgIERPIC5ic3MJMDAwMDAwMzAgIEdMSUJDXzIuMiAgIF9yZXNfaGNvbmYKKzAwMGM0MDAwICB3ICAgREYgLnRleHQJMDAwMDAwNmMgIEdMSUJDXzIuMCAgIGNyZWF0CiswMDBjMjAyMCBnICAgIERGIC50ZXh0CTAwMDAwMDhlICBHTElCQ18yLjAgICBfX2Z4c3RhdAorMDAxMGU4NjAgZyAgICBERiAudGV4dAkwMDAwMDBkOCAoR0xJQkNfMi4wKSAgX0lPX2ZpbGVfY2xvc2VfaXQKKzAwMDY0NDAwIGcgICAgREYgLnRleHQJMDAwMDAxOWQgIEdMSUJDXzIuMSAgIF9JT19maWxlX2Nsb3NlX2l0CiswMDAyOWM3MCAgdyAgIERGIC50ZXh0CTAwMDAwMDBkICBHTElCQ18yLjEgICBzY2FsYmxubAorMDAwNjMxZjAgZyAgICBERiAudGV4dAkwMDAwMDAxNiAgR0xJQkNfMi4wICAgX0lPX2ZpbGVfY2xvc2UKKzAwMDcwMGEwIGcgICAgREYgLnRleHQJMDAwMDAwYWEgIEdMSUJDXzIuMCAgIHN0cm5jYXQKKzAwMTAwMmQwIGcgICAgREYgLnRleHQJMDAwMDAwODEgIEdMSUJDXzIuMSAgIGtleV9kZWNyeXB0c2Vzc2lvbl9waworMDAxNDMxNmMgZyAgICBETyAuZGF0YQkwMDAwMDAwNCAgR0xJQkNfMi4wICAgX19jaGVja19yaG9zdHNfZmlsZQorMDAwYzk2MzAgZyAgICBERiAudGV4dAkwMDAwMDA0MCAgR0xJQkNfMi4zICAgc2VuZGZpbGU2NAorMDAwZDNkODAgIHcgICBERiAudGV4dAkwMDAwMDA2YyAgR0xJQkNfMi4wICAgc2VuZG1zZworMDAwZTY1MjAgZyAgICBERiAudGV4dAkwMDAwMDIxNyAgR0xJQkNfMi4xICAgX19iYWNrdHJhY2Vfc3ltYm9sc19mZAorMDAwMzljZjAgZyAgICBERiAudGV4dAkwMDAwMDAyOSAgR0xJQkNfMi4xICAgd2NzdG9pbWF4CiswMDAyZTU4MCBnICAgIERGIC50ZXh0CTAwMDAwMDQ2ICBHTElCQ18yLjAgICBzdHJ0b3VsbAorMDAwNzE5NzAgZyAgICBERiAudGV4dAkwMDAwMDA5MCAgR0xJQkNfMi4xLjEgX19zdHJzZXBfZworMDAwNWNiMzAgZyAgICBERiAudGV4dAkwMDAwMDBlNyAgR0xJQkNfMi4yICAgX193dW5kZXJmbG93CiswMDAxNmJiMCBnICAgIERGIC50ZXh0CTAwMDAwMTMzIChHTElCQ18yLjApICBfX3VkaXZkaTMKKzAwMDU3ZDcwIGcgICAgREYgLnRleHQJMDAwMDAxZTggIEdMSUJDXzIuMSAgIF9JT19mY2xvc2UKKzAwMTBjZDEwIGcgICAgREYgLnRleHQJMDAwMDAxODMgKEdMSUJDXzIuMCkgIF9JT19mY2xvc2UKKzAwMDYxMzgwIGcgICAgREYgLnRleHQJMDAwMDAwMTMgIEdMSUJDXzIuMiAgIF9fZndyaXRhYmxlCiswMDBlN2MzMCBnICAgIERGIC50ZXh0CTAwMDAwMDM4ICBHTElCQ18yLjQgICBfX3JlYWxwYXRoX2NoaworMDAwMmFmYzAgZyAgICBERiAudGV4dAkwMDAwMDBhMiAgR0xJQkNfMi4wICAgX19zeXN2X3NpZ25hbAorMDAwY2FiOTAgIHcgICBERiAudGV4dAkwMDAwMDBjYiAgR0xJQkNfMi4wICAgdWxpbWl0CiswMDA2MDlkMCAgdyAgIERGIC50ZXh0CTAwMDAwMDM0ICBHTElCQ18yLjAgICBvYnN0YWNrX3ByaW50ZgorMDAwNWU4NzAgZyAgICBERiAudGV4dAkwMDAwMDQ3NSAgR0xJQkNfMi4yICAgX0lPX3dmaWxlX3VuZGVyZmxvdworMDAwNWIwNTAgZyAgICBERiAudGV4dAkwMDAwMDA2ZCAgR0xJQkNfMi4yICAgZnB1dHdjX3VubG9ja2VkCiswMDBjMWM0MCBnICAgIERGIC50ZXh0CTAwMDAwMDM5ICBHTElCQ18yLjIgICBwb3NpeF9zcGF3bmF0dHJfZ2V0c2lnbWFzaworMDAwZTViYjAgZyAgICBERiAudGV4dAkwMDAwMDA4YyAgR0xJQkNfMi4wICAgX19uc3NfcGFzc3dkX2xvb2t1cAorMDAwMmRkNjAgZyAgICBERiAudGV4dAkwMDAwMDAzNCAgR0xJQkNfMi4wICAgZHJhbmQ0OAorMDAwZmMzODAgZyAgICBERiAudGV4dAkwMDAwMDAxZiAgR0xJQkNfMi4wICAgeGRyX2ZyZWUKKzAwMDVmNzUwIGcgICAgREYgLnRleHQJMDAwMDAwMzQgIEdMSUJDXzIuMCAgIGZpbGVubworMDAxMGQzZTAgZyAgICBERiAudGV4dAkwMDAwMDAyMyAoR0xJQkNfMi4wKSAgcGNsb3NlCiswMDA3MTBjMCBnICAgIERGIC50ZXh0CTAwMDAwMDJlICBHTElCQ18yLjAgICBfX2J6ZXJvCiswMDBlYTRlMCBnICAgIERGIC50ZXh0CTAwMDAwMGE4ICBHTElCQ18yLjAgICBzZXRob3N0ZW50CiswMDAyM2U5MCBnICAgIERGIC50ZXh0CTAwMDAwMDE3ICBHTElCQ18yLjEgICBfX2lzeGRpZ2l0X2wKKzAwMDYwMDQwIGcgICAgREYgLnRleHQJMDAwMDAwMjMgIEdMSUJDXzIuMSAgIHBjbG9zZQorMDAwZjQ2ZTAgZyAgICBERiAudGV4dAkwMDAwMDAyNiAgR0xJQkNfMi41ICAgaW5ldDZfcnRoX2dldGFkZHIKKzAwMGI1OTcwICB3ICAgREYgLnRleHQJMDAwMDAwMzkgIEdMSUJDXzIuMCAgIHJlX3NlYXJjaAorMDAwOTM3NDAgZyAgICBERiAudGV4dAkwMDAwMDAzOCAgR0xJQkNfMi4wICAgX19zZXRwZ2lkCiswMDBjYjg3MCAgdyAgIERGIC50ZXh0CTAwMDAwMDk4ICBHTElCQ18yLjAgICBnZXRob3N0bmFtZQorMDAwMjQ0NzAgZyAgICBERiAudGV4dAkwMDAwMDAyMiAgR0xJQkNfMi4wICAgX19kZ2V0dGV4dAorMDAwZGYwYzAgZyAgICBERiAudGV4dAkwMDAwMDA0NiAgR0xJQkNfMi4wICAgcHRocmVhZF9lcXVhbAorMDAwZDg0MDAgIHcgICBERiAudGV4dAkwMDAwMDA4ZiAgR0xJQkNfMi4wICAgc2dldHNwZW50X3IKKzAwMGMyYmYwICB3ICAgREYgLnRleHQJMDAwMDAwYTMgIEdMSUJDXzIuMSAgIGZzdGF0dmZzNjQKKzAwMGNjMmIwIGcgICAgREYgLnRleHQJMDAwMDAwM2UgIEdMSUJDXzIuMCAgIHVzbGVlcAorMDAwZGY4MDAgZyAgICBERiAudGV4dAkwMDAwMDA0MyAgR0xJQkNfMi4wICAgcHRocmVhZF9tdXRleF9pbml0CiswMDBkMmNkMCBnICAgIERGIC50ZXh0CTAwMDAwMDkwICBHTElCQ18yLjAgICBfX2Nsb25lCiswMDBjZDdjMCAgdyAgIERGIC50ZXh0CTAwMDAwMDNmICBHTElCQ18yLjAgICB1dGltZXMKKzAwMTQzNDA4IGcgICAgRE8gLmRhdGEJMDAwMDAwMDQgKEdMSUJDXzIuMikgIF9fY3R5cGUzMl90b3VwcGVyCiswMDAyYjY5MCBnICAgIERGIC50ZXh0CTAwMDAwMWZkICBHTElCQ18yLjEgICBzaWdzZXQKKzAwMGQ0MjEwIGcgICAgREYgLnRleHQJMDAwMDAwM2UgIEdMSUJDXzIuMCAgIF9fY21zZ19ueHRoZHIKKzAwMDZmNTgwIGcgICAgREYgLnRleHQJMDAwMDAwMjEgIEdMSUJDXzIuMCAgIF9vYnN0YWNrX21lbW9yeV91c2VkCiswMDBkMjE4MCBnICAgIERGIC50ZXh0CTAwMDAwMDg2ICBHTElCQ18yLjAgICB1c3RhdAorMDAwYzQzYjAgZyAgICBERiAudGV4dAkwMDAwMDA1MyAgR0xJQkNfMi4xICAgY2hvd24KKzAwMTEwOTYwIGcgICAgREYgLnRleHQJMDAwMDAwMzEgKEdMSUJDXzIuMCkgIGNob3duCiswMDA2Y2ZmMCBnICAgIERGIC50ZXh0CTAwMDAwNDg3ICBHTElCQ18yLjAgICBfX2xpYmNfcmVhbGxvYworMDAwZDM4MTAgZyAgICBERiAudGV4dAkwMDAwMDA0YyAgR0xJQkNfMi41ICAgc3BsaWNlCiswMDBjMTU5MCBnICAgIERGIC50ZXh0CTAwMDAwMDUwICBHTElCQ18yLjIgICBwb3NpeF9zcGF3bgorMDAwZDZiNTAgZyAgICBERiAudGV4dAkwMDAwMDA5MCAgR0xJQkNfMi4xICAgX19pc3dibGFua19sCiswMDA1YzVkMCBnICAgIERGIC50ZXh0CTAwMDAwMDRiICBHTElCQ18yLjIgICBfSU9fc3VuZ2V0d2MKKzAwMTIxOTYwIGcgICAgRE8gLnJvZGF0YQkwMDAwMDAyNCAgR0xJQkNfUFJJVkFURSBfaXRvYV9sb3dlcl9kaWdpdHMKKzAwMGM0MTIwICB3ICAgREYgLnRleHQJMDAwMDAxMzAgIEdMSUJDXzIuMCAgIGdldGN3ZAorMDAwZmNjYjAgZyAgICBERiAudGV4dAkwMDAwMDA0ZiAgR0xJQkNfMi4wICAgeGRyX3ZlY3RvcgorMDAwNTkzZjAgIHcgICBERiAudGV4dAkwMDAwMDI3OCAgR0xJQkNfMi4wICAgX19nZXRkZWxpbQorMDAwMzllYjAgIHcgICBERiAudGV4dAkwMDAwMDBhNCAgR0xJQkNfMi4xICAgc3dhcGNvbnRleHQKKzAwMGY5ZDEwIGcgICAgREYgLnRleHQJMDAwMDAwMzAgIEdMSUJDXzIuMi4zIF9fcnBjX3RocmVhZF9zdmNfZmRzZXQKKzAwMTQzMzQwIGcgICAgRE8gLmRhdGEJMDAwMDAwMDQgIEdMSUJDXzIuMCAgIF9fcHJvZ25hbWVfZnVsbAorMDAwZDI5NTAgZyAgICBERiAudGV4dAkwMDAwMDA0MCAgR0xJQkNfMi4zICAgbGdldHhhdHRyCiswMDEwMzhjMCBnICAgIERGIC50ZXh0CTAwMDAwMDY4ICBHTElCQ18yLjEgICB4ZHJfdWludDhfdAorMDAwMjk4MDAgZyAgICBERiAudGV4dAkwMDAwMDAxMSAgR0xJQkNfMi4wICAgX19maW5pdGVmCiswMDE0NjM1OCBnICAgIERPIC5ic3MJMDAwMDAwMDQgIEdMSUJDXzIuMCAgIGVycm9yX29uZV9wZXJfbGluZQorMDAwODBmYjAgIHcgICBERiAudGV4dAkwMDAwMDk1NSAgR0xJQkNfMi4zICAgd2NzeGZybV9sCiswMDBmZTllMCBnICAgIERGIC50ZXh0CTAwMDAwMjJlICBHTElCQ18yLjEgICBhdXRoZGVzX3BrX2NyZWF0ZQorMDAwZjIyMzAgZyAgICBERiAudGV4dAkwMDAwMDA5YiAgR0xJQkNfMi4xICAgaWZfaW5kZXh0b25hbWUKKzAwMGQzOTYwIGcgICAgREYgLnRleHQJMDAwMDAwNDAgIEdMSUJDXzIuNSAgIHZtc3BsaWNlCiswMDA1YzM3MCBnICAgIERGIC50ZXh0CTAwMDAwMDI0ICBHTElCQ18yLjIgICBzd3NjYW5mCiswMDBmOWRlMCBnICAgIERGIC50ZXh0CTAwMDAwMDQyICBHTElCQ18yLjAgICBzdmNlcnJfZGVjb2RlCiswMDA1OTI3MCAgdyAgIERGIC50ZXh0CTAwMDAwMTVmICBHTElCQ18yLjAgICBmd3JpdGUKKzAwMTA5MDEwIGcgICAgREYgLnRleHQJMDAwMDAwMmEgIEdMSUJDXzIuMSAgIHVwZHd0bXB4CiswMDAxNjEzMCAgdyAgIERGIC50ZXh0CTAwMDAwMDE2ICBHTElCQ18yLjEgICBnbnVfZ2V0X2xpYmNfdmVyc2lvbgorMDAwMjlhYjAgZyAgICBERiAudGV4dAkwMDAwMDAwZSAgR0xJQkNfMi4wICAgX19maW5pdGVsCiswMDBmZmNjMCBnICAgIERGIC50ZXh0CTAwMDAwMDg5ICBHTElCQ18yLjEgICBkZXNfc2V0cGFyaXR5CiswMDAyOTgyMCAgdyAgIERGIC50ZXh0CTAwMDAwMDFlICBHTElCQ18yLjAgICBjb3B5c2lnbmYKKzAwMGU2NzQwIGcgICAgREYgLnRleHQJMDAwMDAwMDUgIEdMSUJDXzIuMiAgIF9fY3lnX3Byb2ZpbGVfZnVuY19lbnRlcgorMDAwNThkMDAgIHcgICBERiAudGV4dAkwMDAwMDExOCAgR0xJQkNfMi4wICAgZnJlYWQKKzAwMGY0MDAwIGcgICAgREYgLnRleHQJMDAwMDAxODQgIEdMSUJDXzIuMy40IGdldHNvdXJjZWZpbHRlcgorMDAwMjk3ZTAgIHcgICBERiAudGV4dAkwMDAwMDAxOCAgR0xJQkNfMi4wICAgaXNuYW5mCiswMDBkMDRlMCBnICAgIERGIC50ZXh0CTAwMDAwMzJhICBHTElCQ18yLjAgICBxZmN2dF9yCiswMDAyZTA1MCBnICAgIERGIC50ZXh0CTAwMDAwMDM3ICBHTElCQ18yLjAgICBscmFuZDQ4X3IKKzAwMGNmZTUwIGcgICAgREYgLnRleHQJMDAwMDAyZTEgIEdMSUJDXzIuMCAgIGZjdnRfcgorMDAwODM1YTAgIHcgICBERiAudGV4dAkwMDAwMDAzOCAgR0xJQkNfMi4wICAgZ2V0dGltZW9mZGF5CiswMDBkNmEyMCAgdyAgIERGIC50ZXh0CTAwMDAwMDkwICBHTElCQ18yLjMgICBpc3dhbG51bV9sCiswMDAxNzEwMCBnICAgIERGIC50ZXh0CTAwMDAwMDNhICBHTElCQ18yLjEgICBpY29udl9jbG9zZQorMDAwODM2MjAgIHcgICBERiAudGV4dAkwMDAwMDExYyAgR0xJQkNfMi4wICAgYWRqdGltZQorMDAwZjA3YjAgIHcgICBERiAudGV4dAkwMDAwMDA5NSAgR0xJQkNfMi4wICAgZ2V0bmV0Z3JlbnRfcgorMDAwMmEzNjAgIHcgICBERiAudGV4dAkwMDAwMDE1NyAgR0xJQkNfMi4wICAgc2lnYWN0aW9uCiswMDA1YzZkMCBnICAgIERGIC50ZXh0CTAwMDAwMDNkICBHTElCQ18yLjIgICBfSU9fd21hcmtlcl9kZWx0YQorMDAwNTZhODAgZyAgICBERiAudGV4dAkwMDAwMDAzOCAgR0xJQkNfMi4wICAgcmVuYW1lCiswMDAyOWFjMCAgdyAgIERGIC50ZXh0CTAwMDAwMDFlICBHTElCQ18yLjAgICBjb3B5c2lnbmwKKzAwMDJkZjEwIGcgICAgREYgLnRleHQJMDAwMDAwMzkgIEdMSUJDXzIuMCAgIHNlZWQ0OAorMDAwY2RkNTAgZyAgICBERiAudGV4dAkwMDAwMDA0MiAgR0xJQkNfMi4wICAgZW5kdHR5ZW50CiswMDAyOWE2MCAgdyAgIERGIC50ZXh0CTAwMDAwMDQ2ICBHTElCQ18yLjAgICBpc25hbmwKKzAwMDY1OWYwIGcgICAgREYgLnRleHQJMDAwMDAwOGQgIEdMSUJDXzIuMCAgIF9JT19kZWZhdWx0X2ZpbmlzaAorMDAxMDEwZjAgZyAgICBERiAudGV4dAkwMDAwMDIyNyAgR0xJQkNfMi4xICAgcnRpbWUKKzAwMGNjN2IwIGcgICAgREYgLnRleHQJMDAwMDAwYTkgIEdMSUJDXzIuMCAgIGdldGZzZW50CiswMDBkMzJmMCBnICAgIERGIC50ZXh0CTAwMDAwMDQwICBHTElCQ18yLjMuMiBlcG9sbF9jdGwKKzAwMGQ2OTIwIGcgICAgREYgLnRleHQJMDAwMDAwOTIgIEdMSUJDXzIuMSAgIF9faXN3eGRpZ2l0X2wKKzAwMDU4YjkwIGcgICAgREYgLnRleHQJMDAwMDAxNDkgIEdMSUJDXzIuMCAgIF9JT19mcHV0cworMDAwMDAwMDAgZyAgICBETyAqQUJTKgkwMDAwMDAwMCAgR0xJQkNfMi4zLjIgR0xJQkNfMi4zLjIKKzAwMGNmYjEwIGcgICAgREYgLnRleHQJMDAwMDAwM2EgIEdMSUJDXzIuMCAgIG1hZHZpc2UKKzAwMDkwNTgwIGcgICAgREYgLnRleHQJMDAwMDAyYzIgIEdMSUJDX1BSSVZBVEUgX25zc19maWxlc19wYXJzZV9ncmVudAorMDAxMDBmMDAgZyAgICBERiAudGV4dAkwMDAwMDA2MyAgR0xJQkNfMi4xICAgZ2V0bmV0bmFtZQorMDAxMDFiZjAgZyAgICBERiAudGV4dAkwMDAwMDA2MSAgR0xJQkNfMi4xICAgcGFzc3dkMmRlcworMDAwMDAwMDAgZyAgICBETyAqQUJTKgkwMDAwMDAwMCAgR0xJQkNfMi4zLjMgR0xJQkNfMi4zLjMKKzAwMTA5NWUwIGcgICAgREYgLnRleHQJMDAwMDAwMzMgIEdMSUJDXzIuMSAgIF9kbF9tY291bnRfd3JhcHBlcgorMDAwMmFkMzAgZyAgICBERiAudGV4dAkwMDAwMDAyNCAgR0xJQkNfMi4wICAgX19zaWdkZWxzZXQKKzAwMDAwMDAwIGcgICAgRE8gKkFCUyoJMDAwMDAwMDAgIEdMSUJDXzIuMy40IEdMSUJDXzIuMy40CiswMDA4ZTUxMCBnICAgIERGIC50ZXh0CTAwMDAwMWU0ICBHTElCQ18yLjAgICBzY2FuZGlyCiswMDA3NTUyMCBnICAgIERGIC50ZXh0CTAwMDAwMGIyICBHTElCQ18yLjEuMSBfX3N0cGNweV9zbWFsbAorMDAwZWFkNTAgZyAgICBERiAudGV4dAkwMDAwMDBhOCAgR0xJQkNfMi4wICAgc2V0bmV0ZW50CiswMDBjYzFlMCBnICAgIERGIC50ZXh0CTAwMDAwMDJiICBHTElCQ18yLjIgICBta3N0ZW1wNjQKKzAwMDJiMTkwIGcgICAgREYgLnRleHQJMDAwMDAwMTYgIEdMSUJDX1BSSVZBVEUgX19saWJjX2N1cnJlbnRfc2lncnRtaW5fcHJpdmF0ZQorMDAwZDJmYTAgZyAgICBERiAudGV4dAkwMDAwMDAxOSAgR0xJQkNfMi4zLjMgZ251X2Rldl9taW5vcgorMDAwMjk3YjAgIHcgICBERiAudGV4dAkwMDAwMDAyNCAgR0xJQkNfMi4wICAgaXNpbmZmCiswMDA5MzhhMCAgdyAgIERGIC50ZXh0CTAwMDAwMDUzICBHTElCQ18yLjAgICBnZXRyZXNnaWQKKzAwMDI5ZjYwIGcgICAgREYgLnRleHQJMDAwMDAwNjQgIEdMSUJDX1BSSVZBVEUgX19saWJjX3NpZ2xvbmdqbXAKKzAwMGMyNzMwICB3ICAgREYgLnRleHQJMDAwMDAwMzggIEdMSUJDXzIuMCAgIHN0YXRmcworMDAwOTM1MjAgIHcgICBERiAudGV4dAkwMDAwMDAwYyAgR0xJQkNfMi4wICAgZ2V0ZXVpZAorMDAwYjc0ZDAgIHcgICBERiAudGV4dAkwMDAwMDAzOCAgR0xJQkNfMi4wICAgc2NoZWRfc2V0cGFyYW0KKzAwMGU2NzUwIGcgICAgREYgLnRleHQJMDAwMDAwNTAgIEdMSUJDXzIuMy40IF9fbWVtY3B5X2NoaworMDAwZWQzMjAgZyAgICBERiAudGV4dAkwMDAwMDE1MyAgR0xJQkNfMi4wICAgZXRoZXJfaG9zdHRvbgorMDAwZDZhYjAgIHcgICBERiAudGV4dAkwMDAwMDA5MiAgR0xJQkNfMi4zICAgaXN3YWxwaGFfbAorMDAwZDM3ZDAgZyAgICBERiAudGV4dAkwMDAwMDA0MCAgR0xJQkNfMi4wICAgcXVvdGFjdGwKKzAwMDJkODAwICB3ICAgREYgLnRleHQJMDAwMDAwNjAgIEdMSUJDXzIuMCAgIHNyYW5kb20KKzAwMGQ2ZjgwIGcgICAgREYgLnRleHQJMDAwMDAwOTIgIEdMSUJDXzIuMSAgIF9faXN3c3BhY2VfbAorMDAwZWNiMTAgZyAgICBERiAudGV4dAkwMDAwMDE3ZCAgR0xJQkNfMi4xLjIgZ2V0cnBjYnludW1iZXJfcgorMDAxMTFjZjAgZyAgICBERiAudGV4dAkwMDAwMDA1ZiAoR0xJQkNfMi4wKSAgZ2V0cnBjYnludW1iZXJfcgorMDAwMjlhMDAgIHcgICBERiAudGV4dAkwMDAwMDA1NSAgR0xJQkNfMi4wICAgaXNpbmZsCiswMDAyYjg5MCBnICAgIERGIC50ZXh0CTAwMDAwMDIzICBHTElCQ18yLjAgICBhdG9mCiswMDBjZTViMCBnICAgIERGIC50ZXh0CTAwMDAwMGE3ICBHTElCQ18yLjAgICBnZXR0dHluYW0KKzAwMDlmMTYwICB3ICAgREYgLnRleHQJMDAwMDAwNGIgIEdMSUJDXzIuMCAgIHJlX3NldF9yZWdpc3RlcnMKKzAwMDI4YzMwIGcgICAgREYgLnRleHQJMDAwMDA3ZDIgIEdMSUJDX1BSSVZBVEUgX19vcGVuX2NhdGFsb2cKKzAwMDJhZWYwIGcgICAgREYgLnRleHQJMDAwMDAwNmUgIEdMSUJDXzIuMCAgIHNpZ2lzbWVtYmVyCiswMDBkZjM2MCBnICAgIERGIC50ZXh0CTAwMDAwMDQzICBHTElCQ18yLjAgICBwdGhyZWFkX2F0dHJfc2V0c2NoZWRwYXJhbQorMDAwNzEwMjAgZyAgICBERiAudGV4dAkwMDAwMDA5ZiAgR0xJQkNfMi4wICAgYmNvcHkKKzAwMDYwMmYwIGcgICAgREYgLnRleHQJMDAwMDAwM2IgIEdMSUJDXzIuMCAgIHNldGxpbmVidWYKKzAwMGU2YzUwIGcgICAgREYgLnRleHQJMDAwMDAwY2QgIEdMSUJDXzIuNCAgIF9fc3RwbmNweV9jaGsKKzAwMDc2NDMwICB3ICAgREYgLnRleHQJMDAwMDAxMWUgIEdMSUJDXzIuMSAgIHdjc3djcworMDAwMmI4YzAgZyAgICBERiAudGV4dAkwMDAwMDAyYiAgR0xJQkNfMi4wICAgYXRvaQorMDAwZDZlNTAgZyAgICBERiAudGV4dAkwMDAwMDA5MiAgR0xJQkNfMi4xICAgX19pc3dwcmludF9sCiswMDA3NTgwMCBnICAgIERGIC50ZXh0CTAwMDAwMDVlICBHTElCQ18yLjEuMSBfX3N0cnRva19yXzFjCiswMDBmYzRiMCBnICAgIERGIC50ZXh0CTAwMDAwMGNiICBHTElCQ18yLjEuMSB4ZHJfaHlwZXIKKzAwMDhmMDEwIGcgICAgREYgLnRleHQJMDAwMDAwNzQgIEdMSUJDXzIuMiAgIGdldGRpcmVudHJpZXM2NAorMDAwODViNDAgZyAgICBERiAudGV4dAkwMDAwMDAzNCAgR0xJQkNfMi4wICAgc3RpbWUKKzAwMDI3NDMwICB3ICAgREYgLnRleHQJMDAwMDAxMWQgIEdMSUJDXzIuMCAgIHRleHRkb21haW4KKzAwMGI3NjAwICB3ICAgREYgLnRleHQJMDAwMDAwMzQgIEdMSUJDXzIuMCAgIHNjaGVkX2dldF9wcmlvcml0eV9tYXgKKzAwMDJiOGYwIGcgICAgREYgLnRleHQJMDAwMDAwMmIgIEdMSUJDXzIuMCAgIGF0b2wKKzAwMGNhODMwIGcgICAgREYgLnRleHQJMDAwMDAwMzIgIEdMSUJDXzIuMCAgIHRjZmx1c2gKKzAwMGMxY2EwIGcgICAgREYgLnRleHQJMDAwMDAwMzkgIEdMSUJDXzIuMiAgIHBvc2l4X3NwYXduYXR0cl9nZXRzY2hlZHBhcmFtCiswMDBmNDM5MCBnICAgIERGIC50ZXh0CTAwMDAwMGI0ICBHTElCQ18yLjUgICBpbmV0Nl9vcHRfZmluZAorMDAwNzdkMzAgZyAgICBERiAudGV4dAkwMDAwMDA0NiAgR0xJQkNfMi4xICAgd2NzdG91bGwKKzAwMGVkYzMwIGcgICAgREYgLnRleHQJMDAwMDAxNTUgIEdMSUJDXzIuMCAgIGV0aGVyX250b2hvc3QKKzAwMTQxNTgwIGcgICAgRE8gLmRhdGEucmVsLnJvCTAwMDAwMTAwIChHTElCQ18yLjEpICBzeXNfc2lnbGlzdAorMDAxNDE1ODAgZyAgICBETyAuZGF0YS5yZWwucm8JMDAwMDAwODAgKEdMSUJDXzIuMCkgIHN5c19zaWdsaXN0CiswMDBjZmM2MCBnICAgIERGIC50ZXh0CTAwMDAwMDM0ICBHTElCQ18yLjAgICBtbG9ja2FsbAorMDAxNDE1ODAgZyAgICBETyAuZGF0YS5yZWwucm8JMDAwMDAxMDQgIEdMSUJDXzIuMy4zIHN5c19zaWdsaXN0CiswMDBjYzM0MCBnICAgIERGIC50ZXh0CTAwMDAwMDQ0ICBHTElCQ18yLjAgICBzdHR5CiswMDBkNWQwMCAgdyAgIERGIC50ZXh0CTAwMDAwMGNiICBHTElCQ18yLjAgICBpc3d4ZGlnaXQKKzAwMGM3MjIwIGcgICAgREYgLnRleHQJMDAwMDAwMjYgIEdMSUJDXzIuMSAgIGZ0dzY0CiswMDA5MWY3MCAgdyAgIERGIC50ZXh0CTAwMDAwMDcwICBHTElCQ18yLjAgICB3YWl0cGlkCiswMDBlOGExMCBnICAgIERGIC50ZXh0CTAwMDAwMDQ5ICBHTElCQ18yLjQgICBfX21ic25ydG93Y3NfY2hrCiswMDA2MTQzMCBnICAgIERGIC50ZXh0CTAwMDAwMDJhICBHTElCQ18yLjIgICBfX2ZwZW5kaW5nCiswMDBjMzYxMCAgdyAgIERGIC50ZXh0CTAwMDAwMDY1ICBHTElCQ18yLjAgICBjbG9zZQorMDAxMDhhOTAgZyAgICBERiAudGV4dAkwMDAwMDA2YiAgR0xJQkNfMi4xICAgdW5sb2NrcHQKKzAwMGZjOWIwIGcgICAgREYgLnRleHQJMDAwMDAwOTAgIEdMSUJDXzIuMCAgIHhkcl91bmlvbgorMDAwZTYxMDAgIHcgICBERiAudGV4dAkwMDAwMDE2MCAgR0xJQkNfMi4xICAgYmFja3RyYWNlCiswMDA2ZmIzMCAgdyAgIERGIC50ZXh0CTAwMDAwMTU0ICBHTElCQ18yLjEgICBzdHJ2ZXJzY21wCiswMDBjMWM4MCBnICAgIERGIC50ZXh0CTAwMDAwMDE1ICBHTElCQ18yLjIgICBwb3NpeF9zcGF3bmF0dHJfZ2V0c2NoZWRwb2xpY3kKKzAwMDI4OTgwIGcgICAgREYgLnRleHQJMDAwMDAwYWIgIEdMSUJDXzIuMCAgIGNhdGdldHMKKzAwMDJkMzEwIGcgICAgREYgLnRleHQJMDAwMDAwOTUgIEdMSUJDXzIuMCAgIGxsZGl2CiswMDEwNmI1MCAgdyAgIERGIC50ZXh0CTAwMDAwMDVlICBHTElCQ18yLjAgICBlbmR1dGVudAorMDAwZGY5MDAgIHcgICBERiAudGV4dAkwMDAwMDA0MyAgR0xJQkNfMi4wICAgcHRocmVhZF9zZXRjYW5jZWxzdGF0ZQorMDAwNTYxODAgZyAgICBERiAudGV4dAkwMDAwMDBiOCAgR0xJQkNfMi4wICAgdG1wbmFtCiswMDBlMTAyMCBnICAgIERGIC50ZXh0CTAwMDAwMGNmICBHTElCQ18yLjAgICBpbmV0X25zYXBfbnRvYQorMDAwNzVkODAgZyAgICBERiAudGV4dAkwMDAwMDEyNiAgR0xJQkNfMi42ICAgc3RyZXJyb3JfbAorMDAwYzJmZjAgIHcgICBERiAudGV4dAkwMDAwMDA3MCAgR0xJQkNfMi4wICAgb3BlbgorMDAwZDBlYTAgIHcgICBERiAudGV4dAkwMDAwMDAyMiAgR0xJQkNfMi4wICAgdHdhbGsKKzAwMDJkZWUwIGcgICAgREYgLnRleHQJMDAwMDAwMmQgIEdMSUJDXzIuMCAgIHNyYW5kNDgKKzAwMDIzZWQwICB3ICAgREYgLnRleHQJMDAwMDAwMTEgIEdMSUJDXzIuMyAgIHRvdXBwZXJfbAorMDAxMDJkMTAgZyAgICBERiAudGV4dAkwMDAwMDAxMiAgR0xJQkNfMi4xICAgc3ZjdW5peGZkX2NyZWF0ZQorMDAwZDJiYTAgZyAgICBERiAudGV4dAkwMDAwMDAzNCAgR0xJQkNfMi4wICAgaW9wbAorMDAwYzYyMDAgZyAgICBERiAudGV4dAkwMDAwMDAyNiAgR0xJQkNfMi4wICAgZnR3CiswMDA3N2Q4MCBnICAgIERGIC50ZXh0CTAwMDAwMDQ1ICBHTElCQ18yLjAgICBfX3djc3RvdWxsX2ludGVybmFsCiswMDBkNzUxMCBnICAgIERGIC50ZXh0CTAwMDAwMTQxICBHTElCQ18yLjAgICBzZ2V0c3BlbnQKKzAwMDZmZTIwICB3ICAgREYgLnRleHQJMDAwMDAxMjEgIEdMSUJDXzIuMCAgIHN0cmVycm9yX3IKKzAwMDY1ODYwIGcgICAgREYgLnRleHQJMDAwMDAwMTYgIEdMSUJDXzIuMiAgIF9JT19pdGVyX2JlZ2luCiswMDBkZjcyMCBnICAgIERGIC50ZXh0CTAwMDAwMDRhICBHTElCQ18yLjAgICBwdGhyZWFkX2dldHNjaGVkcGFyYW0KKzAwMDI1OGQwICB3ICAgREYgLnRleHQJMDAwMDAwNDAgIEdMSUJDXzIuMiAgIGRuZ2V0dGV4dAorMDAwZjljZDAgZyAgICBERiAudGV4dAkwMDAwMDAzOSAgR0xJQkNfMi4yLjMgX19ycGNfdGhyZWFkX2NyZWF0ZWVycgorMDAwY2MwYjAgZyAgICBERiAudGV4dAkwMDAwMDAzNCAgR0xJQkNfMi4wICAgdmhhbmd1cAorMDAwODJhYjAgZyAgICBERiAudGV4dAkwMDAwMDAzNSAgR0xJQkNfMi4wICAgbG9jYWx0aW1lCiswMDEwMDY1MCBnICAgIERGIC50ZXh0CTAwMDAwMDhmICBHTElCQ18yLjEgICBrZXlfc2VjcmV0a2V5X2lzX3NldAorMDAwODJhMjAgZyAgICBERiAudGV4dAkwMDAwMDAwZCAgR0xJQkNfMi4wICAgZGlmZnRpbWUKKzAwMGNjMGYwICB3ICAgREYgLnRleHQJMDAwMDAwMzggIEdMSUJDXzIuMCAgIHN3YXBvbgorMDAxMDhmMzAgZyAgICBERiAudGV4dAkwMDAwMDAxNyAgR0xJQkNfMi4xICAgZW5kdXR4ZW50CiswMDBkMmQ5MCAgdyAgIERGIC50ZXh0CTAwMDAwMGE1ICBHTElCQ18yLjEgICBsc2VlazY0CiswMDBlOGE2MCBnICAgIERGIC50ZXh0CTAwMDAwMDQ5ICBHTElCQ18yLjQgICBfX3djc25ydG9tYnNfY2hrCiswMDA2MWM3MCBnICAgIERGIC50ZXh0CTAwMDAwMDEwICBHTElCQ18yLjAgICBmZXJyb3JfdW5sb2NrZWQKKzAwMGQyZTQwICB3ICAgREYgLnRleHQJMDAwMDAwMzQgIEdMSUJDXzIuMCAgIHVtb3VudAorMDAwOTJhODQgIHcgICBERiAudGV4dAkwMDAwMDAxMyAgR0xJQkNfMi4xLjEgX0V4aXQKKzAwMGQzMWYwIGcgICAgREYgLnRleHQJMDAwMDAwMzggIEdMSUJDXzIuMSAgIGNhcHNldAorMDAwNmY4NDAgZyAgICBERiAudGV4dAkwMDAwMDE2NyAgR0xJQkNfMi4wICAgc3RyY2hyCiswMDBkNzIyMCAgdyAgIERGIC50ZXh0CTAwMDAwMDczICBHTElCQ18yLjMgICB3Y3RyYW5zX2wKKzAwMGQyODAwIGcgICAgREYgLnRleHQJMDAwMDAwM2EgIEdMSUJDXzIuMyAgIGZsaXN0eGF0dHIKKzAwMGY1ZGEwIGcgICAgREYgLnRleHQJMDAwMDAxZmQgIEdMSUJDXzIuMCAgIGNsbnRfc3BjcmVhdGVlcnJvcgorMDAwNmY2MTAgZyAgICBERiAudGV4dAkwMDAwMDA3OCAgR0xJQkNfMi4wICAgb2JzdGFja19mcmVlCiswMDBkZjQ1MCBnICAgIERGIC50ZXh0CTAwMDAwMDQzICBHTElCQ18yLjAgICBwdGhyZWFkX2F0dHJfZ2V0c2NvcGUKKzAwMGYxMjgwIGcgICAgREYgLnRleHQJMDAwMDAwYTIgIEdMSUJDXzIuMCAgIGdldGFsaWFzZW50CiswMDE0MTM2MCBnICAgIERPIC5kYXRhLnJlbC5ybwkwMDAwMDFmOCAoR0xJQkNfMi4zKSAgX3N5c19lcnJsaXN0CiswMDE0MTM2MCBnICAgIERPIC5kYXRhLnJlbC5ybwkwMDAwMDIxMCAgR0xJQkNfMi40ICAgX3N5c19lcnJsaXN0CiswMDE0MTM2MCBnICAgIERPIC5kYXRhLnJlbC5ybwkwMDAwMDFmNCAoR0xJQkNfMi4xKSAgX3N5c19lcnJsaXN0CiswMDE0MTM2MCBnICAgIERPIC5kYXRhLnJlbC5ybwkwMDAwMDFlYyAoR0xJQkNfMi4wKSAgX3N5c19lcnJsaXN0CiswMDAyYjYyMCBnICAgIERGIC50ZXh0CTAwMDAwMDcwICBHTElCQ18yLjEgICBzaWdpZ25vcmUKKzAwMDJhZjYwICB3ICAgREYgLnRleHQJMDAwMDAwMjIgIEdMSUJDXzIuMCAgIHNpZ3JldHVybgorMDAwZWU4MzAgZyAgICBERiAudGV4dAkwMDAwMDFjNyAgR0xJQkNfMi4yICAgcnJlc3Zwb3J0X2FmCiswMDBkNGVmMCBnICAgIERGIC50ZXh0CTAwMDAwMWEwICBHTElCQ18yLjAgICBfX21vbnN0YXJ0dXAKKzAwMGQ1ZGQwICB3ICAgREYgLnRleHQJMDAwMDAwYTQgIEdMSUJDXzIuMCAgIGlzd2RpZ2l0CiswMDBmYTNhMCBnICAgIERGIC50ZXh0CTAwMDAwMDM3ICBHTElCQ18yLjAgICBzdmNlcnJfd2Vha2F1dGgKKzAwMDYwYWQwICB3ICAgREYgLnRleHQJMDAwMDAwMTcgIEdMSUJDXzIuMCAgIGZjbG9zZWFsbAorMDAwZTgxYTAgZyAgICBERiAudGV4dAkwMDAwMDEwYiAgR0xJQkNfMi40ICAgX193cHJpbnRmX2NoaworMDAwZDYxODAgIHcgICBERiAudGV4dAkwMDAwMDBjOSAgR0xJQkNfMi4wICAgaXN3Y250cmwKKzAwMGNjZTAwICB3ICAgREYgLnRleHQJMDAwMDAwMmMgIEdMSUJDXzIuMCAgIGVuZG1udGVudAorMDAwNTZmNDAgIHcgICBERiAudGV4dAkwMDAwMDAyZiAgR0xJQkNfMi4wICAgZnVubG9ja2ZpbGUKKzAwMTQ0N2M0IGcgICAgRE8gLmJzcwkwMDAwMDAwNCAgR0xJQkNfMi4wICAgX190aW1lem9uZQorMDAwNDY1MDAgZyAgICBERiAudGV4dAkwMDAwMDAyNCAgR0xJQkNfMi4wICAgZnByaW50ZgorMDAwZDNiMDAgZyAgICBERiAudGV4dAkwMDAwMDAzNyAgR0xJQkNfMi4wICAgZ2V0c29ja25hbWUKKzAwMGMxZWMwIGcgICAgREYgLnRleHQJMDAwMDAwMzggIEdMSUJDXzIuMCAgIHV0aW1lCiswMDEwZWI0MCBnICAgIERGIC50ZXh0CTAwMDAwMWU0IChHTElCQ18yLjEpICBzY2FuZGlyNjQKKzAwMDhlY2IwIGcgICAgREYgLnRleHQJMDAwMDAxZTQgIEdMSUJDXzIuMiAgIHNjYW5kaXI2NAorMDAwZDBhNTAgZyAgICBERiAudGV4dAkwMDAwMDA0NSAgR0xJQkNfMi4wICAgaHNlYXJjaAorMDAwZGQxMDAgIHcgICBERiAudGV4dAkwMDAwMDBkZCAgR0xJQkNfMi4xICAgYXJncF9lcnJvcgorMDAxNDYyMzQgZyAgICBETyAuYnNzCTAwMDAwMDA0ICBHTElCQ18yLjAgICBfbmxfZG9tYWluX2JpbmRpbmdzCiswMDA3NTc2MCBnICAgIERGIC50ZXh0CTAwMDAwMDQxICBHTElCQ18yLjEuMSBfX3N0cnBicmtfYzIKKzAwMDJkMWYwIGcgICAgREYgLnRleHQJMDAwMDAwMTEgIEdMSUJDXzIuMCAgIGFicworMDAwZDNkZjAgIHcgICBERiAudGV4dAkwMDAwMDA2YyAgR0xJQkNfMi4wICAgc2VuZHRvCiswMDA3NTdiMCBnICAgIERGIC50ZXh0CTAwMDAwMDRjICBHTElCQ18yLjEuMSBfX3N0cnBicmtfYzMKKzAwMGNjOWUwICB3ICAgREYgLnRleHQJMDAwMDA0MWYgIEdMSUJDXzIuMCAgIGFkZG1udGVudAorMDAwZDZlZjAgIHcgICBERiAudGV4dAkwMDAwMDA5MCAgR0xJQkNfMi4zICAgaXN3cHVuY3RfbAorMDAwMzcxNTAgIHcgICBERiAudGV4dAkwMDAwMDAyOSAgR0xJQkNfMi4xICAgX19zdHJ0b2xkX2wKKzAwMTA4MmQwICB3ICAgREYgLnRleHQJMDAwMDAxMGYgIEdMSUJDXzIuMCAgIHVwZHd0bXAKKzAwMGU0NmUwIGcgICAgREYgLnRleHQJMDAwMDAzNzIgIEdMSUJDXzIuMCAgIF9fbnNzX2RhdGFiYXNlX2xvb2t1cAorMDAwNWMzYTAgZyAgICBERiAudGV4dAkwMDAwMDAzMyAgR0xJQkNfMi4yICAgX0lPX2xlYXN0X3dtYXJrZXIKKzAwMDcwMzAwICB3ICAgREYgLnRleHQJMDAwMDAxYjkgIEdMSUJDXzIuMCAgIHJpbmRleAorMDAwOTJhMzAgIHcgICBERiAudGV4dAkwMDAwMDA1MSAgR0xJQkNfMi4wICAgdmZvcmsKKzAwMTBlZDkwIGcgICAgREYgLnRleHQJMDAwMDAwZTUgKEdMSUJDXzIuMCkgIGdldGdyZW50X3IKKzAwMGZhMWUwIGcgICAgREYgLnRleHQJMDAwMDAwZmUgIEdMSUJDXzIuMCAgIHhwcnRfcmVnaXN0ZXIKKzAwMDM5M2UwIGcgICAgREYgLnRleHQJMDAwMDAwZjAgIEdMSUJDXzIuMSAgIGFkZHNldmVyaXR5CiswMDA4ZmVmMCBnICAgIERGIC50ZXh0CTAwMDAwMGUyICBHTElCQ18yLjEuMiBnZXRncmVudF9yCiswMDBlNzI1MCBnICAgIERGIC50ZXh0CTAwMDAwMGJjICBHTElCQ18yLjMuNCBfX3ZmcHJpbnRmX2NoaworMDAwODM1NDAgZyAgICBERiAudGV4dAkwMDAwMDAzYyAgR0xJQkNfMi4wICAgbWt0aW1lCiswMDEwMDU1MCBnICAgIERGIC50ZXh0CTAwMDAwMTAwICBHTElCQ18yLjEgICBrZXlfZ2VuZGVzCiswMDAyZDNiMCBnICAgIERGIC50ZXh0CTAwMDAwMGM1ICBHTElCQ18yLjAgICBtYmxlbgorMDAwZDE2ZTAgIHcgICBERiAudGV4dAkwMDAwMDA1YyAgR0xJQkNfMi4xICAgdGRlc3Ryb3kKKzAwMGQyYzUwICB3ICAgREYgLnRleHQJMDAwMDAwNzUgIEdMSUJDXzIuMCAgIHN5c2N0bAorMDAwZjVhMjAgZyAgICBERiAudGV4dAkwMDAwMDJlMiAgR0xJQkNfMi4wICAgY2xudF9jcmVhdGUKKzAwMDhlNzAwIGcgICAgREYgLnRleHQJMDAwMDAwMjQgIEdMSUJDXzIuMCAgIGFscGhhc29ydAorMDAxNDQ3YzQgIHcgICBETyAuYnNzCTAwMDAwMDA0ICBHTElCQ18yLjAgICB0aW1lem9uZQorMDAwZjkwZjAgZyAgICBERiAudGV4dAkwMDAwMDBlYyAgR0xJQkNfMi4wICAgeGRyX3JtdGNhbGxfYXJncworMDAwNzBiZDAgZyAgICBERiAudGV4dAkwMDAwMDEwNCAgR0xJQkNfMi4wICAgX19zdHJ0b2tfcgorMDAwNjhlYzAgIHcgICBERiAudGV4dAkwMDAwMDE0YiAgR0xJQkNfMi4wICAgbWFsbG9wdAorMDAwZmRlNjAgZyAgICBERiAudGV4dAkwMDAwMDAzNSAgR0xJQkNfMi4wICAgeGRyc3RkaW9fY3JlYXRlCiswMDAzOWM5MCBnICAgIERGIC50ZXh0CTAwMDAwMDI5ICBHTElCQ18yLjEgICBzdHJ0b2ltYXgKKzAwMDU2OTUwICB3ICAgREYgLnRleHQJMDAwMDAwMzkgIEdMSUJDXzIuMCAgIGdldGxpbmUKKzAwMTQ0MTAwICB3ICAgRE8gLmJzcwkwMDAwMDAwNCAgR0xJQkNfMi4wICAgX19tYWxsb2NfaW5pdGlhbGl6ZV9ob29rCiswMDBkNmM3MCBnICAgIERGIC50ZXh0CTAwMDAwMDkzICBHTElCQ18yLjEgICBfX2lzd2RpZ2l0X2wKKzAwMDcxMTcwIGcgICAgREYgLnRleHQJMDAwMDAwNDEgIEdMSUJDXzIuMCAgIF9fc3RwY3B5CiswMDAxNmY3MCBnICAgIERGIC50ZXh0CTAwMDAwMTg3ICBHTElCQ18yLjEgICBpY29udgorMDAwZjgwODAgZyAgICBERiAudGV4dAkwMDAwMDBmNSAgR0xJQkNfMi4wICAgZ2V0X215YWRkcmVzcworMDAwZWM5OTAgZyAgICBERiAudGV4dAkwMDAwMDE3ZCAgR0xJQkNfMi4xLjIgZ2V0cnBjYnluYW1lX3IKKzAwMTExYzkwIGcgICAgREYgLnRleHQJMDAwMDAwNWYgKEdMSUJDXzIuMCkgIGdldHJwY2J5bmFtZV9yCiswMDE0MzM0NCAgdyAgIERPIC5kYXRhCTAwMDAwMDA0ICBHTElCQ18yLjAgICBwcm9ncmFtX2ludm9jYXRpb25fc2hvcnRfbmFtZQorMDAwZDMxNzAgZyAgICBERiAudGV4dAkwMDAwMDAzOCAgR0xJQkNfMi4wICAgYmRmbHVzaAorMDAwMmQyMzAgIHcgICBERiAudGV4dAkwMDAwMDAzMSAgR0xJQkNfMi4xLjEgaW1heGFicworMDAwMTY1NDAgZyAgICBERiAudGV4dAkwMDAwMDAyYSAoR0xJQkNfMi4wKSAgX19mbG9hdGRpZGYKKzAwMGEyZjYwICB3ICAgREYgLnRleHQJMDAwMDAwOTMgIEdMSUJDXzIuMCAgIHJlX2NvbXBpbGVfZmFzdG1hcAorMDAwZDI5ZDAgZyAgICBERiAudGV4dAkwMDAwMDAzOCAgR0xJQkNfMi4zICAgbHJlbW92ZXhhdHRyCiswMDEwY2I1MCBnICAgIERGIC50ZXh0CTAwMDAwMWI2IChHTElCQ18yLjApICBmZG9wZW4KKzAwMDU3ZmEwIGcgICAgREYgLnRleHQJMDAwMDAyZGEgIEdMSUJDXzIuMSAgIGZkb3BlbgorMDAwNjY4ZTAgZyAgICBERiAudGV4dAkwMDAwMDFiOSAgR0xJQkNfMi4wICAgX0lPX3N0cl9zZWVrb2ZmCiswMDBjZTkwMCBnICAgIERGIC50ZXh0CTAwMDAwMDFkICBHTElCQ18yLjAgICBzZXR1c2Vyc2hlbGwKKzAwMTQyNzQwIGcgICAgRE8gLmRhdGEucmVsLnJvCTAwMDAwMDU0ICBHTElCQ18yLjIgICBfSU9fd2ZpbGVfanVtcHMKKzAwMDhlYTUwIGcgICAgREYgLnRleHQJMDAwMDAwYjAgIEdMSUJDXzIuMiAgIHJlYWRkaXI2NAorMDAxMGU5NDAgZyAgICBERiAudGV4dAkwMDAwMDBhZiAoR0xJQkNfMi4xKSAgcmVhZGRpcjY0CiswMDBmOTc1MCBnICAgIERGIC50ZXh0CTAwMDAwNDA2ICBHTElCQ18yLjAgICB4ZHJfY2FsbG1zZworMDAwZjllODAgZyAgICBERiAudGV4dAkwMDAwMDAzNiAgR0xJQkNfMi4wICAgc3ZjZXJyX2F1dGgKKzAwMDJjM2UwIGcgICAgREYgLnRleHQJMDAwMDAxM2UgIEdMSUJDXzIuMCAgIHFzb3J0CiswMDAzN2QxMCAgdyAgIERGIC50ZXh0CTAwMDAwMDJiICBHTElCQ18yLjAgICBjYW5vbmljYWxpemVfZmlsZV9uYW1lCiswMDA5MzcwMCBnICAgIERGIC50ZXh0CTAwMDAwMDM0ICBHTElCQ18yLjAgICBfX2dldHBnaWQKKzAwMDE2Y2YwIGcgICAgREYgLnRleHQJMDAwMDAyN2QgIEdMSUJDXzIuMSAgIGljb252X29wZW4KKzAwMDY0ZGUwIGcgICAgREYgLnRleHQJMDAwMDAwMmEgIEdMSUJDXzIuMCAgIF9JT19zZ2V0bgorMDAwMmZjMjAgZyAgICBERiAudGV4dAkwMDAwMDAzZSAgR0xJQkNfMi4wICAgX19zdHJ0b2RfaW50ZXJuYWwKKzAwMDVhZGMwIGcgICAgREYgLnRleHQJMDAwMDAxM2MgIEdMSUJDXzIuMiAgIF9JT19mc2V0cG9zNjQKKzAwMTBkOTAwIGcgICAgREYgLnRleHQJMDAwMDAxMGUgKEdMSUJDXzIuMSkgIF9JT19mc2V0cG9zNjQKKzAwMDM5MWMwICB3ICAgREYgLnRleHQJMDAwMDAwNDIgIEdMSUJDXzIuMyAgIHN0cmZtb25fbAorMDAwMmRlNjAgZyAgICBERiAudGV4dAkwMDAwMDAzNCAgR0xJQkNfMi4wICAgbXJhbmQ0OAorMDAwYzE1MjAgZyAgICBERiAudGV4dAkwMDAwMDAxMyAgR0xJQkNfMi4yICAgcG9zaXhfc3Bhd25hdHRyX2dldGZsYWdzCiswMDBkMzlhMCAgdyAgIERGIC50ZXh0CTAwMDAwMDZjICBHTElCQ18yLjAgICBhY2NlcHQKKzAwMDJkNTkwIGcgICAgREYgLnRleHQJMDAwMDAwNDYgIEdMSUJDXzIuMCAgIHdjc3RvbWJzCiswMDA2Y2UwMCBnICAgIERGIC50ZXh0CTAwMDAwMWU1ICBHTElCQ18yLjAgICBfX2xpYmNfZnJlZQorMDAwZTliNTAgZyAgICBERiAudGV4dAkwMDAwMDFhYiAgR0xJQkNfMi4wICAgZ2V0aG9zdGJ5bmFtZTIKKzAwMGZlZTgwIGcgICAgREYgLnRleHQJMDAwMDAxOTcgIEdMSUJDXzIuMSAgIGNiY19jcnlwdAorMDAwZTVhMDAgZyAgICBERiAudGV4dAkwMDAwMDA4YyAgR0xJQkNfMi4wICAgX19uc3NfaG9zdHNfbG9va3VwCiswMDAyZmI3MCAgdyAgIERGIC50ZXh0CTAwMDAwMDMwICBHTElCQ18yLjEgICBfX3N0cnRvdWxsX2wKKzAwMTAwYTIwIGcgICAgREYgLnRleHQJMDAwMDAwM2EgIEdMSUJDXzIuMSAgIHhkcl9uZXRuYW1lc3RyCiswMDA2NmFhMCBnICAgIERGIC50ZXh0CTAwMDAwMTg5ICBHTElCQ18yLjAgICBfSU9fc3RyX292ZXJmbG93CiswMDE0NDEwOCAgdyAgIERPIC5ic3MJMDAwMDAwMDQgIEdMSUJDXzIuMCAgIF9fYWZ0ZXJfbW9yZWNvcmVfaG9vaworMDAwZGUyNTAgIHcgICBERiAudGV4dAkwMDAwMGQ0MCAgR0xJQkNfMi4xICAgYXJncF9wYXJzZQorMDAwNWE1MjAgZyAgICBERiAudGV4dAkwMDAwMDE0MSAgR0xJQkNfMi4wICAgX0lPX3NlZWtwb3MKKzAwMDcyYmYwIGcgICAgREYgLnRleHQJMDAwMDAwYTIgIEdMSUJDXzIuMCAgIGVudnpfZ2V0CiswMDA3MWEwMCBnICAgIERGIC50ZXh0CTAwMDAwMTUxICBHTElCQ18yLjEgICBfX3N0cmNhc2VzdHIKKzAwMDkzODQwICB3ICAgREYgLnRleHQJMDAwMDAwNTMgIEdMSUJDXzIuMCAgIGdldHJlc3VpZAorMDAwYzFjZTAgZyAgICBERiAudGV4dAkwMDAwMDAzYSAgR0xJQkNfMi4yICAgcG9zaXhfc3Bhd25hdHRyX3NldHNpZ21hc2sKKzAwMGRmZGYwIGcgICAgREYgLnRleHQJMDAwMDAwOTYgIEdMSUJDXzIuMCAgIGhzdHJlcnJvcgorMDAwY2YwNjAgZyAgICBERiAudGV4dAkwMDAwMDU5ZCAgR0xJQkNfMi40ICAgX192c3lzbG9nX2NoaworMDAwZDM0ZTAgZyAgICBERiAudGV4dAkwMDAwMDAzYSAgR0xJQkNfMi40ICAgaW5vdGlmeV9hZGRfd2F0Y2gKKzAwMTBjZWMwIGcgICAgREYgLnRleHQJMDAwMDAxYTUgKEdMSUJDXzIuMCkgIF9JT19wcm9jX2Nsb3NlCiswMDBjYTVlMCAgdyAgIERGIC50ZXh0CTAwMDAwMGQ2ICBHTElCQ18yLjAgICB0Y2dldGF0dHIKKzAwMDIzY2IwIGcgICAgREYgLnRleHQJMDAwMDAwMGIgIEdMSUJDXzIuMCAgIHRvYXNjaWkKKzAwMDU5YjcwIGcgICAgREYgLnRleHQJMDAwMDAxYTUgIEdMSUJDXzIuMSAgIF9JT19wcm9jX2Nsb3NlCiswMDBjMjdiMCAgdyAgIERGIC50ZXh0CTAwMDAwMTJiICBHTElCQ18yLjEgICBzdGF0ZnM2NAorMDAwZjUwNDAgZyAgICBERiAudGV4dAkwMDAwMDA4MSAgR0xJQkNfMi4wICAgYXV0aG5vbmVfY3JlYXRlCiswMDA3NTAwMCBnICAgIERGIC50ZXh0CTAwMDAwMDNmICBHTElCQ18yLjEuMSBfX3N0cmNtcF9nZworMDAwMjNlNzAgIHcgICBERiAudGV4dAkwMDAwMDAxNyAgR0xJQkNfMi4zICAgaXN1cHBlcl9sCiswMDBjYmZkMCBnICAgIERGIC50ZXh0CTAwMDAwMGE1ICBHTElCQ18yLjAgICBzZXRob3N0aWQKKzAwMTA4ZjgwIGcgICAgREYgLnRleHQJMDAwMDAwMjMgIEdMSUJDXzIuMSAgIGdldHV0eGxpbmUKKzAwMDU2MGQwIGcgICAgREYgLnRleHQJMDAwMDAwYTIgIEdMSUJDXzIuMSAgIHRtcGZpbGU2NAorMDAwOTI0MDAgIHcgICBERiAudGV4dAkwMDAwMDI2YSAgR0xJQkNfMi4wICAgc2xlZXAKKzAwMDkxZTgwICB3ICAgREYgLnRleHQJMDAwMDAwMzQgIEdMSUJDXzIuMCAgIHRpbWVzCiswMDA2Mzg0MCBnICAgIERGIC50ZXh0CTAwMDAwMGRkICBHTElCQ18yLjEgICBfSU9fZmlsZV9zeW5jCiswMDEwZTVmMCBnICAgIERGIC50ZXh0CTAwMDAwMDk3IChHTElCQ18yLjApICBfSU9fZmlsZV9zeW5jCiswMDA3ZmVmMCBnICAgIERGIC50ZXh0CTAwMDAwMDNlICBHTElCQ18yLjAgICB3Y3N4ZnJtCiswMDA3NTFiMCBnICAgIERGIC50ZXh0CTAwMDAwMDQ2ICBHTElCQ18yLjEuMSBfX3N0cmNzcG5fZworMDAwNzNlZjAgIHcgICBERiAudGV4dAkwMDAwMGQ1MSAgR0xJQkNfMi4zICAgc3RyeGZybV9sCiswMDAyYjFkMCBnICAgIERGIC50ZXh0CTAwMDAwMDRmICBHTElCQ18yLjEgICBfX2xpYmNfYWxsb2NhdGVfcnRzaWcKKzAwMGU4OWMwIGcgICAgREYgLnRleHQJMDAwMDAwNDkgIEdMSUJDXzIuNCAgIF9fd2NydG9tYl9jaGsKKzAwMDIzZjYwIGcgICAgREYgLnRleHQJMDAwMDAwM2MgIEdMSUJDXzIuMyAgIF9fY3R5cGVfdG91cHBlcl9sb2MKKzAwMGQyYmUwIGcgICAgREYgLnRleHQJMDAwMDAwMzggIEdMSUJDXzIuMy40IHZtODYKKzAwMGQzMDcwIGcgICAgREYgLnRleHQJMDAwMDAwMzQgKEdMSUJDXzIuMCkgIHZtODYKKzAwMGNkZDAwIGcgICAgREYgLnRleHQJMDAwMDAwMmYgIEdMSUJDXzIuMCAgIGluc3F1ZQorMDAwZjY1MDAgZyAgICBERiAudGV4dAkwMDAwMDEyNiAgR0xJQkNfMi4wICAgY2xudHJhd19jcmVhdGUKKzAwMGQzM2IwIGcgICAgREYgLnRleHQJMDAwMDAwOTQgIEdMSUJDXzIuNiAgIGVwb2xsX3B3YWl0CiswMDBjYjgwMCBnICAgIERGIC50ZXh0CTAwMDAwMDI2ICBHTElCQ18yLjAgICBfX2dldHBhZ2VzaXplCiswMDBlNmEyMCBnICAgIERGIC50ZXh0CTAwMDAwMDc4ICBHTElCQ18yLjMuNCBfX3N0cmNweV9jaGsKKzAwMDZhZTkwICB3ICAgREYgLnRleHQJMDAwMDAwZmMgIEdMSUJDXzIuMCAgIHZhbGxvYworMDAwMjNmMjAgZyAgICBERiAudGV4dAkwMDAwMDAzYyAgR0xJQkNfMi4zICAgX19jdHlwZV90b2xvd2VyX2xvYworMDAxMDhmMTAgZyAgICBERiAudGV4dAkwMDAwMDAxNyAgR0xJQkNfMi4xICAgZ2V0dXR4ZW50CiswMDA2NTkwMCBnICAgIERGIC50ZXh0CTAwMDAwMDQ1ICBHTElCQ18yLjIgICBfSU9fbGlzdF91bmxvY2sKKzAwMTQzMzM0IGcgICAgRE8gLmRhdGEJMDAwMDAwMDQgIEdMSUJDXzIuMCAgIG9ic3RhY2tfYWxsb2NfZmFpbGVkX2hhbmRsZXIKKzAwMDViNmYwIGcgICAgREYgLnRleHQJMDAwMDAwN2MgIEdMSUJDXzIuMiAgIGZwdXR3c191bmxvY2tlZAorMDAwZmNkMDAgZyAgICBERiAudGV4dAkwMDAwMDE1YyAgR0xJQkNfMi4wICAgeGRyX2FycmF5CiswMDBkMjk5MCBnICAgIERGIC50ZXh0CTAwMDAwMDNhICBHTElCQ18yLjMgICBsbGlzdHhhdHRyCiswMDAyZDA3MCBnICAgIERGIC50ZXh0CTAwMDAwMTc1ICBHTElCQ18yLjEuMyBfX2N4YV9maW5hbGl6ZQorMDAwMmIxOTAgZyAgICBERiAudGV4dAkwMDAwMDAxNiAgR0xJQkNfMi4xICAgX19saWJjX2N1cnJlbnRfc2lncnRtaW4KKzAwMGQyZTgwICB3ICAgREYgLnRleHQJMDAwMDAwMzggIEdMSUJDXzIuMSAgIHVtb3VudDIKKzAwMGNmNzkwIGcgICAgREYgLnRleHQJMDAwMDAwNGIgIEdMSUJDXzIuMCAgIHN5c2NhbGwKKzAwMDJhNWEwIGcgICAgREYgLnRleHQJMDAwMDAwNDEgIEdMSUJDXzIuMCAgIHNpZ3BlbmRpbmcKKzAwMDJiYmYwIGcgICAgREYgLnRleHQJMDAwMDAwNmMgIEdMSUJDXzIuMCAgIGJzZWFyY2gKKzAwMDc1MjkwIGcgICAgREYgLnRleHQJMDAwMDAwMzIgIEdMSUJDXzIuMS4xIF9fc3RycGJya19jZworMDAwYjc4ZDAgZyAgICBERiAudGV4dAkwMDAwMDA0NCAgR0xJQkNfMi4wICAgZnJlZWFkZHJpbmZvCiswMDA3MTNhMCAgdyAgIERGIC50ZXh0CTAwMDAwMDY5ICBHTElCQ18yLjMgICBzdHJuY2FzZWNtcF9sCiswMDAyMzZhMCBnICAgIERGIC50ZXh0CTAwMDAwMTgxICBHTElCQ18yLjAgICBfX2Fzc2VydF9wZXJyb3JfZmFpbAorMDAwZDIzNDAgIHcgICBERiAudGV4dAkwMDAwMDFhMCAgR0xJQkNfMi4wICAgZ2V0X25wcm9jcworMDAxMTE5MzAgZyAgICBERiAudGV4dAkwMDAwMDA1ZiAoR0xJQkNfMi4wKSAgZ2V0cHJvdG9ieW5hbWVfcgorMDAwNzVjZDAgZyAgICBERiAudGV4dAkwMDAwMDBiMCAgR0xJQkNfMi4zLjQgX194cGdfc3RyZXJyb3JfcgorMDAwNWE3ZDAgIHcgICBERiAudGV4dAkwMDAwMDE4OSAgR0xJQkNfMi4wICAgc2V0dmJ1ZgorMDAwZWI3ZDAgZyAgICBERiAudGV4dAkwMDAwMDE3ZCAgR0xJQkNfMi4xLjIgZ2V0cHJvdG9ieW5hbWVfcgorMDAwODBmYjAgZyAgICBERiAudGV4dAkwMDAwMDk1NSAgR0xJQkNfMi4xICAgX193Y3N4ZnJtX2wKKzAwMDVhYjEwICB3ICAgREYgLnRleHQJMDAwMDAwOWIgIEdMSUJDXzIuMCAgIHZzc2NhbmYKKzAwMTExMzcwIGcgICAgREYgLnRleHQJMDAwMDAwNmMgKEdMSUJDXzIuMCkgIGdldGhvc3RieWFkZHJfcgorMDAwZTk2NzAgZyAgICBERiAudGV4dAkwMDAwMDMwYyAgR0xJQkNfMi4xLjIgZ2V0aG9zdGJ5YWRkcl9yCiswMDAxNjg5MCBnICAgIERGIC50ZXh0CTAwMDAwMTc5IChHTElCQ18yLjApICBfX2RpdmRpMworMDAwOTBhZDAgZyAgICBERiAudGV4dAkwMDAwMDE4ZSAgR0xJQkNfMi4wICAgZmdldHB3ZW50CiswMDBmMTE3MCBnICAgIERGIC50ZXh0CTAwMDAwMGE3ICBHTElCQ18yLjAgICBzZXRhbGlhc2VudAorMDAwMmE2NDAgZyAgICBERiAudGV4dAkwMDAwMDBhNyAgR0xJQkNfMi4xLjMgX19zaWdzdXNwZW5kCiswMDBmOTUzMCBnICAgIERGIC50ZXh0CTAwMDAwMDdmICBHTElCQ18yLjAgICB4ZHJfcmVqZWN0ZWRfcmVwbHkKKzAwMGQzMWIwIGcgICAgREYgLnRleHQJMDAwMDAwMzggIEdMSUJDXzIuMSAgIGNhcGdldAorMDAxMGVhMTAgZyAgICBERiAudGV4dAkwMDAwMDExMCAoR0xJQkNfMi4xKSAgcmVhZGRpcjY0X3IKKzAwMDhlYjIwIGcgICAgREYgLnRleHQJMDAwMDAxMTAgIEdMSUJDXzIuMiAgIHJlYWRkaXI2NF9yCiswMDBiNzU1MCBnICAgIERGIC50ZXh0CTAwMDAwMDNhICBHTElCQ18yLjAgICBfX3NjaGVkX3NldHNjaGVkdWxlcgorMDAwZmUyNTAgZyAgICBERiAudGV4dAkwMDAwMDBmYyAgR0xJQkNfMi4wICAgZ2V0cHVibGlja2V5CiswMDBmOWM5MCBnICAgIERGIC50ZXh0CTAwMDAwMDM5ICBHTElCQ18yLjIuMyBfX3JwY190aHJlYWRfc3ZjX3BvbGxmZAorMDAwYzc1NDAgZyAgICBERiAudGV4dAkwMDAwMDU1MSAgR0xJQkNfMi4wICAgZnRzX29wZW4KKzAwMGZhMDMwIGcgICAgREYgLnRleHQJMDAwMDAwN2UgIEdMSUJDXzIuMCAgIHN2Y191bnJlZ2lzdGVyCiswMDEwNmFlMCAgdyAgIERGIC50ZXh0CTAwMDAwMDYyICBHTElCQ18yLjAgICBwdXR1dGxpbmUKKzAwMDkzODEwICB3ICAgREYgLnRleHQJMDAwMDAwMmMgIEdMSUJDXzIuMCAgIHNldHNpZAorMDAwMDAwMDQgZyAgICBEICAudGRhdGEJMDAwMDAwMDQgIEdMSUJDX1BSSVZBVEUgX19yZXNwCiswMDEwNjk3MCAgdyAgIERGIC50ZXh0CTAwMDAwMDVlICBHTElCQ18yLjAgICBnZXR1dGVudAorMDAwYzE0YTAgZyAgICBERiAudGV4dAkwMDAwMDAzNyAgR0xJQkNfMi4yICAgcG9zaXhfc3Bhd25hdHRyX2dldHNpZ2RlZmF1bHQKKzAwMGQ2ZGIwICB3ICAgREYgLnRleHQJMDAwMDAwOTIgIEdMSUJDXzIuMyAgIGlzd2dyYXBoX2wKKzAwMDQ1YmYwIGcgICAgREYgLnRleHQJMDAwMDA5MDIgIEdMSUJDXzIuMSAgIHByaW50Zl9zaXplCiswMDBkZjExMCBnICAgIERGIC50ZXh0CTAwMDAwMDNjICBHTElCQ18yLjAgICBwdGhyZWFkX2F0dHJfZGVzdHJveQorMDAwN2ZlYjAgIHcgICBERiAudGV4dAkwMDAwMDAzNyAgR0xJQkNfMi4wICAgd2NzY29sbAorMDAwNzdiZjAgZyAgICBERiAudGV4dAkwMDAwMDA0NSAgR0xJQkNfMi4wICAgX193Y3N0b3VsX2ludGVybmFsCiswMDEwYTVkMCBnICAgIERGIC50ZXh0CTAwMDAwMDMxICBHTElCQ18yLjAgICBfX2RlcmVnaXN0ZXJfZnJhbWUKKzAwMDJhMzYwICB3ICAgREYgLnRleHQJMDAwMDAxNTcgIEdMSUJDXzIuMCAgIF9fc2lnYWN0aW9uCiswMDEwMzYzMCBnICAgIERGIC50ZXh0CTAwMDAwMGJiICBHTElCQ18yLjEuMSB4ZHJfdWludDY0X3QKKzAwMTAzMTMwIGcgICAgREYgLnRleHQJMDAwMDAyNzQgIEdMSUJDXzIuMSAgIHN2Y3VuaXhfY3JlYXRlCiswMDAyZTA5MCAgdyAgIERGIC50ZXh0CTAwMDAwMDU4ICBHTElCQ18yLjAgICBucmFuZDQ4X3IKKzAwMGNhMzEwIGcgICAgREYgLnRleHQJMDAwMDAwNzYgIEdMSUJDXzIuMCAgIGNmc2V0c3BlZWQKKzAwMGQ4MDMwIGcgICAgREYgLnRleHQJMDAwMDAzY2MgIEdMSUJDX1BSSVZBVEUgX25zc19maWxlc19wYXJzZV9zcGVudAorMDAxMTJjMDAgZyAgICBERiBfX2xpYmNfZnJlZXJlc19mbgkwMDAwMDA3YiAgR0xJQkNfMi4xICAgX19saWJjX2ZyZWVyZXMKKzAwMGMzYzAwICB3ICAgREYgLnRleHQJMDAwMDAwYjcgIEdMSUJDXzIuMCAgIGZjbnRsCiswMDBlODAxMCBnICAgIERGIC50ZXh0CTAwMDAwMDNiICBHTElCQ18yLjQgICBfX3djcG5jcHlfY2hrCiswMDBkNjczMCAgdyAgIERGIC50ZXh0CTAwMDAwMDllICBHTElCQ18yLjAgICB3Y3R5cGUKKzAwMDc2MzQwIGcgICAgREYgLnRleHQJMDAwMDAwNGYgIEdMSUJDXzIuMCAgIHdjc3NwbgorMDAxMTBlMjAgZyAgICBERiAudGV4dAkwMDAwMDA4ZSAoR0xJQkNfMi4xKSAgZ2V0cmxpbWl0NjQKKzAwMGNhYTUwIGcgICAgREYgLnRleHQJMDAwMDAwOGUgIEdMSUJDXzIuMiAgIGdldHJsaW1pdDY0CiswMDBmMzdmMCBnICAgIERGIC50ZXh0CTAwMDAwMDM5ICBHTElCQ18yLjMuMyBpbmV0Nl9vcHRpb25faW5pdAorMDAwZDcxYjAgZyAgICBERiAudGV4dAkwMDAwMDA2ZSAgR0xJQkNfMi4xICAgX19pc3djdHlwZV9sCiswMDBjZmQyMCBnICAgIERGIC50ZXh0CTAwMDAwMDU1ICBHTElCQ18yLjAgICBlY3Z0CiswMDBlN2Q5MCBnICAgIERGIC50ZXh0CTAwMDAwMDJlICBHTElCQ18yLjQgICBfX3dtZW1tb3ZlX2NoaworMDAwZTZkMjAgZyAgICBERiAudGV4dAkwMDAwMDAzMiAgR0xJQkNfMi4zLjQgX19zcHJpbnRmX2NoaworMDAwZWVhMDAgZyAgICBERiAudGV4dAkwMDAwMDAxYiAgR0xJQkNfMi4wICAgcnJlc3Zwb3J0CiswMDBmNTg2MCBnICAgIERGIC50ZXh0CTAwMDAwMWI0ICBHTElCQ18yLjAgICBiaW5kcmVzdnBvcnQKKzAwMGNhMjQwIGcgICAgREYgLnRleHQJMDAwMDAwNTEgIEdMSUJDXzIuMCAgIGNmc2V0b3NwZWVkCiswMDA0NjVmMCBnICAgIERGIC50ZXh0CTAwMDAwMDM0ICBHTElCQ18yLjEgICBfX2FzcHJpbnRmCiswMDA3MTM1MCBnICAgIERGIC50ZXh0CTAwMDAwMDRmICBHTElCQ18yLjEgICBfX3N0cmNhc2VjbXBfbAorMDAwNWYyNTAgZyAgICBERiAudGV4dAkwMDAwMDBmNyAgR0xJQkNfMi4yICAgZndpZGUKKzAwMTBlZWEwIGcgICAgREYgLnRleHQJMDAwMDAwNWYgKEdMSUJDXzIuMCkgIGdldGdyZ2lkX3IKKzAwMDkwMWEwIGcgICAgREYgLnRleHQJMDAwMDAxZWMgIEdMSUJDXzIuMS4yIGdldGdyZ2lkX3IKKzAwMGRmNWYwIGcgICAgREYgLnRleHQJMDAwMDAwNDMgIEdMSUJDXzIuMy4yIHB0aHJlYWRfY29uZF9pbml0CiswMDExMTFmMCBnICAgIERGIC50ZXh0CTAwMDAwMDQzIChHTElCQ18yLjApICBwdGhyZWFkX2NvbmRfaW5pdAorMDAwOTM3YjAgZyAgICBERiAudGV4dAkwMDAwMDAxYyAgR0xJQkNfMi4wICAgc2V0cGdycAorMDAwNzVmYzAgZyAgICBERiAudGV4dAkwMDAwMDA1YiAgR0xJQkNfMi4wICAgd2NzZHVwCiswMDBjYTIyMCBnICAgIERGIC50ZXh0CTAwMDAwMDE4ICBHTElCQ18yLjAgICBjZmdldGlzcGVlZAorMDAwMmI5MjAgZyAgICBERiAudGV4dAkwMDAwMDAyYiAgR0xJQkNfMi4wICAgYXRvbGwKKzAwMDJhMDYwICB3ICAgREYgLnRleHQJMDAwMDAwY2YgIEdMSUJDXzIuMCAgIGJzZF9zaWduYWwKKzAwMTA4YjAwICB3ICAgREYgLnRleHQJMDAwMDAzOWMgIEdMSUJDXzIuMSAgIHB0c25hbWVfcgorMDAwMmVhMzAgIHcgICBERiAudGV4dAkwMDAwMDAzMCAgR0xJQkNfMi4xICAgX19zdHJ0b2xfbAorMDAwZDI4ODAgZyAgICBERiAudGV4dAkwMDAwMDA0NiAgR0xJQkNfMi4zICAgZnNldHhhdHRyCiswMDBlOTRjMCBnICAgIERGIC50ZXh0CTAwMDAwMDFkICBHTElCQ18yLjAgICBfX2hfZXJybm9fbG9jYXRpb24KKzAwMGZkMzYwIGcgICAgREYgLnRleHQJMDAwMDAxNjIgIEdMSUJDXzIuMCAgIHhkcnJlY19jcmVhdGUKKzAwMTBkZGUwIGcgICAgREYgLnRleHQJMDAwMDAzZGUgKEdMSUJDXzIuMCkgIF9JT19maWxlX3NlZWtvZmYKKzAwMDU2ZWQwIGcgICAgREYgLnRleHQJMDAwMDAwNjkgIEdMSUJDXzIuMCAgIF9JT19mdHJ5bG9ja2ZpbGUKKzAwMDYzMmUwIGcgICAgREYgLnRleHQJMDAwMDA1NWIgIEdMSUJDXzIuMSAgIF9JT19maWxlX3NlZWtvZmYKKzAwMGMzNjEwICB3ICAgREYgLnRleHQJMDAwMDAwNjUgIEdMSUJDXzIuMCAgIF9fY2xvc2UKKzAwMDY1ODkwIGcgICAgREYgLnRleHQJMDAwMDAwMGIgIEdMSUJDXzIuMiAgIF9JT19pdGVyX25leHQKKzAwMGNjZWMwICB3ICAgREYgLnRleHQJMDAwMDA4ZDUgIEdMSUJDXzIuMCAgIGdldG1udGVudF9yCiswMDA3NTBkMCBnICAgIERGIC50ZXh0CTAwMDAwMDFiICBHTElCQ18yLjEuMSBfX3N0cmNocm51bF9jCiswMDAyZDIxMCBnICAgIERGIC50ZXh0CTAwMDAwMDExICBHTElCQ18yLjAgICBsYWJzCiswMDE0MzBjOCBnICAgIERPIC5kYXRhCTAwMDAwMDA0ICBHTElCQ18yLjAgICBvYnN0YWNrX2V4aXRfZmFpbHVyZQorMDAwYzRiZDAgIHcgICBERiAudGV4dAkwMDAwMDAzOCAgR0xJQkNfMi4wICAgbGluaworMDAwODhmNzAgZyAgICBERiAudGV4dAkwMDAwMjE1YyAgR0xJQkNfMi4zICAgX19zdHJmdGltZV9sCiswMDEwMDhlMCBnICAgIERGIC50ZXh0CTAwMDAwMDY4ICBHTElCQ18yLjAgICB4ZHJfY3J5cHRrZXlyZXMKKzAwMGNkOTkwIGcgICAgREYgLnRleHQJMDAwMDAxNjcgIEdMSUJDXzIuNCAgIGZ1dGltZXNhdAorMDAwNWNjMjAgZyAgICBERiAudGV4dAkwMDAwMDBmMSAgR0xJQkNfMi4yICAgX0lPX3dkZWZhdWx0X3hzZ2V0bgorMDAwZjA5MTAgZyAgICBERiAudGV4dAkwMDAwMDM5OSAgR0xJQkNfMi4wICAgaW5uZXRncgorMDAxNDM1ZjggZyAgICBETyAuZGF0YQkwMDAwMDAwNCAgR0xJQkNfMi4wICAgX0lPX2xpc3RfYWxsCiswMDBjMzNjMCAgdyAgIERGIC50ZXh0CTAwMDAwMDg5ICBHTElCQ18yLjQgICBvcGVuYXQKKzAwMDVjMWMwICB3ICAgREYgLnRleHQJMDAwMDAwZjcgIEdMSUJDXzIuMiAgIHZzd3ByaW50ZgorMDAwZDZiZTAgZyAgICBERiAudGV4dAkwMDAwMDA5MCAgR0xJQkNfMi4xICAgX19pc3djbnRybF9sCiswMDA2MDRiMCAgdyAgIERGIC50ZXh0CTAwMDAwMGRkICBHTElCQ18yLjAgICB2ZHByaW50ZgorMDAwZTdhMzAgZyAgICBERiAudGV4dAkwMDAwMDA0OSAgR0xJQkNfMi40ICAgX19wcmVhZDY0X2NoaworMDAwNzUwZjAgZyAgICBERiAudGV4dAkwMDAwMDAxZCAgR0xJQkNfMi4xLjEgX19zdHJjaHJudWxfZworMDAwZjc0MzAgZyAgICBERiAudGV4dAkwMDAwMDA0NiAgR0xJQkNfMi4wICAgY2xudHVkcF9jcmVhdGUKKzAwMGViNjgwIGcgICAgREYgLnRleHQJMDAwMDAxMmQgIEdMSUJDXzIuMCAgIGdldHByb3RvYnluYW1lCiswMDEwYTYxMCBnICAgIERGIC50ZXh0CTAwMDAwMGVhICBHQ0NfMy4wICAgICBfX2RlcmVnaXN0ZXJfZnJhbWVfaW5mb19iYXNlcworMDAwNTk2ZTAgZyAgICBERiAudGV4dAkwMDAwMDFhNCAgR0xJQkNfMi4xICAgX0lPX2dldGxpbmVfaW5mbworMDAwMjNlYjAgIHcgICBERiAudGV4dAkwMDAwMDAxMSAgR0xJQkNfMi4zICAgdG9sb3dlcl9sCiswMDA2MTQ2MCBnICAgIERGIC50ZXh0CTAwMDAwMDM4ICBHTElCQ18yLjIgICBfX2ZzZXRsb2NraW5nCiswMDA4OGU4MCAgdyAgIERGIC50ZXh0CTAwMDAwMDQ0ICBHTElCQ18yLjMuMiBzdHJwdGltZV9sCiswMDA3MjEzMCAgdyAgIERGIC50ZXh0CTAwMDAwMGQ4ICBHTElCQ18yLjAgICBhcmd6X2NyZWF0ZV9zZXAKKzAwMTQzM2Y4IGcgICAgRE8gLmRhdGEJMDAwMDAwMDQgKEdMSUJDXzIuMCkgIF9fY3R5cGUzMl9iCiswMDBjMWY5MCBnICAgIERGIC50ZXh0CTAwMDAwMDhlICBHTElCQ18yLjAgICBfX3hzdGF0CiswMDA4MDBiMCAgdyAgIERGIC50ZXh0CTAwMDAwZWYzICBHTElCQ18yLjMgICB3Y3Njb2xsX2wKKzAwMGU2MTAwIGcgICAgREYgLnRleHQJMDAwMDAxNjAgIEdMSUJDXzIuMSAgIF9fYmFja3RyYWNlCiswMDBkMzBiMCBnICAgIERGIC50ZXh0CTAwMDAwMDM4IChHTElCQ18yLjApICBnZXRybGltaXQKKzAwMGNhOWQwIGcgICAgREYgLnRleHQJMDAwMDAwM2YgIEdMSUJDXzIuMiAgIGdldHJsaW1pdAorMDAwMmE4NjAgIHcgICBERiAudGV4dAkwMDAwMDA2MyAgR0xJQkNfMi4wICAgc2lnc2V0bWFzaworMDAxMDA0NzAgZyAgICBERiAudGV4dAkwMDAwMDA3MyAgR0xJQkNfMi4xICAga2V5X2VuY3J5cHRzZXNzaW9uCiswMDAyM2EyMCBnICAgIERGIC50ZXh0CTAwMDAwMDQ4ICBHTElCQ18yLjAgICBpc2RpZ2l0CiswMDA1NWNjMCBnICAgIERGIC50ZXh0CTAwMDAwMDQxICBHTElCQ18yLjAgICBzY2FuZgorMDAwZDI4ZDAgZyAgICBERiAudGV4dAkwMDAwMDA0MCAgR0xJQkNfMi4zICAgZ2V0eGF0dHIKKzAwMGMyZDMwIGcgICAgREYgLnRleHQJMDAwMDAwMjIgIEdMSUJDXzIuMy4yIGxjaG1vZAorMDAwMjM5ZDAgZyAgICBERiAudGV4dAkwMDAwMDA0NiAgR0xJQkNfMi4wICAgaXNjbnRybAorMDAwZDQzYzAgZyAgICBERiAudGV4dAkwMDAwMDBjNSAgR0xJQkNfUFJJVkFURSBfX2xpYmNfbXNncmN2CiswMDBjYjgzMCAgdyAgIERGIC50ZXh0CTAwMDAwMDM5ICBHTElCQ18yLjAgICBnZXRkdGFibGVzaXplCiswMDBkMzVkMCAgdyAgIERGIC50ZXh0CTAwMDAwMDQ2ICBHTElCQ18yLjAgICBtb3VudAorMDAxMmQ1MDAgZyAgICBETyAucm9kYXRhCTAwMDAwMDA0ICBHTElCQ18yLjQgICBzeXNfbmVycgorMDAxMmQ1MGMgZyAgICBETyAucm9kYXRhCTAwMDAwMDA0IChHTElCQ18yLjMpICBzeXNfbmVycgorMDAxMmQ1MDggZyAgICBETyAucm9kYXRhCTAwMDAwMDA0IChHTElCQ18yLjEpICBzeXNfbmVycgorMDAxMmQ1MDQgZyAgICBETyAucm9kYXRhCTAwMDAwMDA0IChHTElCQ18yLjApICBzeXNfbmVycgorMDAwMjNlZDAgZyAgICBERiAudGV4dAkwMDAwMDAxMSAgR0xJQkNfMi4xICAgX190b3VwcGVyX2wKKzAwMDJkOWYwICB3ICAgREYgLnRleHQJMDAwMDAwYjcgIEdMSUJDXzIuMCAgIHJhbmRvbV9yCiswMDBkNjRjMCAgdyAgIERGIC50ZXh0CTAwMDAwMGM5ICBHTElCQ18yLjAgICBpc3dwdW5jdAorMDAwZDFjMzAgZyAgICBERiAudGV4dAkwMDAwMDAyNiAgR0xJQkNfMi4wICAgZXJyeAorMDAwNzEzNTAgIHcgICBERiAudGV4dAkwMDAwMDA0ZiAgR0xJQkNfMi4zICAgc3RyY2FzZWNtcF9sCiswMDA3NjU1MCBnICAgIERGIC50ZXh0CTAwMDAwMDczICBHTElCQ18yLjAgICB3bWVtY2hyCiswMDA5MWU0MCAgdyAgIERGIC50ZXh0CTAwMDAwMDM0ICBHTElCQ18yLjAgICB1bmFtZQorMDAwNzBlZTAgZyAgICBERiAudGV4dAkwMDAwMDA4ZiAgR0xJQkNfMi4wICAgbWVtbW92ZQorMDAxMDAyNzAgZyAgICBERiAudGV4dAkwMDAwMDA1YSAgR0xJQkNfMi4xICAga2V5X3NldG5ldAorMDAwNjMxNTAgZyAgICBERiAudGV4dAkwMDAwMDA5NyAgR0xJQkNfMi4xICAgX0lPX2ZpbGVfd3JpdGUKKzAwMTBkZDcwIGcgICAgREYgLnRleHQJMDAwMDAwNmQgKEdMSUJDXzIuMCkgIF9JT19maWxlX3dyaXRlCiswMDE0NjUxNCBnICAgIERPIC5ic3MJMDAwMDAwMDQgIEdMSUJDXzIuMiAgIHN2Y19tYXhfcG9sbGZkCiswMDA3N2UxMCAgdyAgIERGIC50ZXh0CTAwMDAwMDNmICBHTElCQ18yLjAgICB3Y3N0b2QKKzAwMTQ2MjM4IGcgICAgRE8gLmJzcwkwMDAwMDAwNCAgR0xJQkNfMi4wICAgX25sX21zZ19jYXRfY250cgorMDAwZTc1MDAgZyAgICBERiAudGV4dAkwMDAwMDA0NiAgR0xJQkNfMi4zLjQgX19jaGtfZmFpbAorMDAwZjlmYTAgZyAgICBERiAudGV4dAkwMDAwMDA4MiAgR0xJQkNfMi4wICAgc3ZjX2dldHJlcXNldAorMDAwZDVjNjAgIHcgICBERiAudGV4dAkwMDAwMDAxMyAgR0xJQkNfMi4wICAgbWNvdW50CiswMDA2ZGY1MCBnICAgIERGIC50ZXh0CTAwMDAwMDk5ICBHTElCQ18yLjAgICBtcHJvYmUKKzAwMGMxNWUwIGcgICAgREYgLnRleHQJMDAwMDAwNTAgIEdMSUJDXzIuMiAgIHBvc2l4X3NwYXducAorMDAwNzdmMTAgIHcgICBERiAudGV4dAkwMDAwMDAzZiAgR0xJQkNfMi4wICAgd2NzdG9mCiswMDEwZTY5MCBnICAgIERGIC50ZXh0CTAwMDAwMTUzIChHTElCQ18yLjApICBfSU9fZmlsZV9vdmVyZmxvdworMDAwZThiMDAgZyAgICBERiAudGV4dAkwMDAwMDA0MiAgR0xJQkNfMi40ICAgX193Y3NydG9tYnNfY2hrCiswMDBlNjI2MCAgdyAgIERGIC50ZXh0CTAwMDAwMmJjICBHTElCQ18yLjEgICBiYWNrdHJhY2Vfc3ltYm9scworMDAwNjM5MjAgZyAgICBERiAudGV4dAkwMDAwMDFlZiAgR0xJQkNfMi4xICAgX0lPX2ZpbGVfb3ZlcmZsb3cKKzAwMDY1OTUwIGcgICAgREYgLnRleHQJMDAwMDAwMmUgIEdMSUJDXzIuMiAgIF9JT19saXN0X3Jlc2V0bG9jaworMDAwZDMwMzAgZyAgICBERiAudGV4dAkwMDAwMDAzYSAgR0xJQkNfUFJJVkFURSBfX21vZGlmeV9sZHQKKzAwMGQ0ZWEwIGcgICAgREYgLnRleHQJMDAwMDAwNDQgIEdMSUJDXzIuMCAgIF9tY2xlYW51cAorMDAwZDcyMjAgZyAgICBERiAudGV4dAkwMDAwMDA3MyAgR0xJQkNfMi4yICAgX193Y3RyYW5zX2wKKzAwMDIzZTkwICB3ICAgREYgLnRleHQJMDAwMDAwMTcgIEdMSUJDXzIuMyAgIGlzeGRpZ2l0X2wKKzAwMDJiMmYwICB3ICAgREYgLnRleHQJMDAwMDAwNjEgIEdMSUJDXzIuMSAgIHNpZ3RpbWVkd2FpdAorMDAwNTkyNzAgZyAgICBERiAudGV4dAkwMDAwMDE1ZiAgR0xJQkNfMi4wICAgX0lPX2Z3cml0ZQorMDAwZWZmYzAgZyAgICBERiAudGV4dAkwMDAwMDQyNiAgR0xJQkNfMi4wICAgcnVzZXJwYXNzCiswMDA3NjM5MCBnICAgIERGIC50ZXh0CTAwMDAwMDliICBHTElCQ18yLjAgICB3Y3N0b2sKKzAwMGRmOGQwIGcgICAgREYgLnRleHQJMDAwMDAwMzAgIEdMSUJDXzIuMCAgIHB0aHJlYWRfc2VsZgorMDAwZmEyZTAgZyAgICBERiAudGV4dAkwMDAwMDBiOSAgR0xJQkNfMi4wICAgc3ZjX3JlZ2lzdGVyCiswMDA5MWY3MCBnICAgIERGIC50ZXh0CTAwMDAwMDcwICBHTElCQ18yLjAgICBfX3dhaXRwaWQKKzAwMDc3YmEwIGcgICAgREYgLnRleHQJMDAwMDAwNDYgIEdMSUJDXzIuMCAgIHdjc3RvbAorMDAwNWFkODAgIHcgICBERiAudGV4dAkwMDAwMDAzMiAgR0xJQkNfMi4xICAgZm9wZW42NAorMDAwZGY0MDAgZyAgICBERiAudGV4dAkwMDAwMDA0MyAgR0xJQkNfMi4wICAgcHRocmVhZF9hdHRyX3NldHNjaGVkcG9saWN5CiswMDA1YzJjMCBnICAgIERGIC50ZXh0CTAwMDAwMGE2ICBHTElCQ18yLjIgICB2c3dzY2FuZgorMDAwMTY1NzAgZyAgICBERiAudGV4dAkwMDAwMDAzMSAoR0xJQkNfMi4wKSAgX19maXh1bnN4ZmRpCiswMDBlYzFjMCBnICAgIERGIC50ZXh0CTAwMDAwMGIwICBHTElCQ18yLjAgICBlbmRzZXJ2ZW50CiswMDBlNWIyMCBnICAgIERGIC50ZXh0CTAwMDAwMDhjICBHTElCQ18yLjAgICBfX25zc19ncm91cF9sb29rdXAKKzAwMGMwZTUwICB3ICAgREYgLnRleHQJMDAwMDAwYmMgIEdMSUJDXzIuMSAgIHByZWFkCiswMDAxNjYxMCBnICAgIERGIC50ZXh0CTAwMDAwMDM4IChHTElCQ18yLjApICBfX3VjbXBkaTIKKzAwMDNiZjAwIGcgICAgREYgLnRleHQJMDAwMDAwMzAgIEdMSUJDXzIuMCAgIGN0ZXJtaWQKKzAwMDc3YjIwICB3ICAgREYgLnRleHQJMDAwMDAwMjQgIEdMSUJDXzIuMiAgIHdjc2Nocm51bAorMDAxMDk3NDAgZyAgICBERiAudGV4dAkwMDAwMDA5OSAgR0xJQkNfUFJJVkFURSBfX2xpYmNfZGxzeW0KKzAwMGMwZjEwICB3ICAgREYgLnRleHQJMDAwMDAwYmMgIEdMSUJDXzIuMSAgIHB3cml0ZQorMDAwY2NlMDAgZyAgICBERiAudGV4dAkwMDAwMDAyYyAgR0xJQkNfMi4yICAgX19lbmRtbnRlbnQKKzAwMDc3YzkwICB3ICAgREYgLnRleHQJMDAwMDAwNDYgIEdMSUJDXzIuMCAgIHdjc3RvcQorMDAwMmFiNTAgZyAgICBERiAudGV4dAkwMDAwMDA3YyAgR0xJQkNfMi4wICAgc2lnc3RhY2sKKzAwMDkyYTMwIGcgICAgREYgLnRleHQJMDAwMDAwNTEgIEdMSUJDXzIuMS4yIF9fdmZvcmsKKzAwMDcxOTcwICB3ICAgREYgLnRleHQJMDAwMDAwOTAgIEdMSUJDXzIuMCAgIHN0cnNlcAorMDAwNjEzNjAgZyAgICBERiAudGV4dAkwMDAwMDAxMyAgR0xJQkNfMi4yICAgX19mcmVhZGFibGUKKzAwMGQ2YjUwICB3ICAgREYgLnRleHQJMDAwMDAwOTAgIEdMSUJDXzIuMyAgIGlzd2JsYW5rX2wKKzAwMDZmMjEwIGcgICAgREYgLnRleHQJMDAwMDAwYzkgIEdMSUJDXzIuMCAgIF9vYnN0YWNrX2JlZ2luCiswMDBmMGYxMCBnICAgIERGIC50ZXh0CTAwMDAwMGJlICBHTElCQ18yLjAgICBnZXRuZXRncmVudAorMDAwNjQ1YTAgZyAgICBERiAudGV4dAkwMDAwMDIxMCAgR0xJQkNfMi4xICAgX0lPX2ZpbGVfdW5kZXJmbG93CiswMDEwZTFjMCBnICAgIERGIC50ZXh0CTAwMDAwMGU4IChHTElCQ18yLjApICBfSU9fZmlsZV91bmRlcmZsb3cKKzAwMTAwZTAwIGcgICAgREYgLnRleHQJMDAwMDAwZmIgIEdMSUJDXzIuMSAgIHVzZXIybmV0bmFtZQorMDAwZTQ2MzAgZyAgICBERiAudGV4dAkwMDAwMDBiMCAgR0xJQkNfMi4wICAgX19uc3NfbmV4dAorMDAwNzcwYTAgIHcgICBERiAudGV4dAkwMDAwMDM1ZiAgR0xJQkNfMi4wICAgd2NzcnRvbWJzCiswMDE0Mzk3MCBnICAgIERPIC5kYXRhCTAwMDAwMDA0ICBHTElCQ18yLjAgICBfX21vcmVjb3JlCiswMDAyNDQwMCAgdyAgIERGIC50ZXh0CTAwMDAwMDE1ICBHTElCQ18yLjAgICBiaW5kdGV4dGRvbWFpbgorMDAwYzM3YTAgIHcgICBERiAudGV4dAkwMDAwMDAzOCAgR0xJQkNfMi4wICAgYWNjZXNzCiswMDBiNzU5MCBnICAgIERGIC50ZXh0CTAwMDAwMDM0ICBHTElCQ18yLjAgICBfX3NjaGVkX2dldHNjaGVkdWxlcgorMDAwMzk3YzAgZyAgICBERiAudGV4dAkwMDAwMDQ5NSAgR0xJQkNfMi4xICAgZm10bXNnCiswMDBkMDQxMCBnICAgIERGIC50ZXh0CTAwMDAwMGM0ICBHTElCQ18yLjAgICBxZmN2dAorMDAwMmU0OTAgZyAgICBERiAudGV4dAkwMDAwMDA0NSAoR0xJQkNfMi4wKSAgX19zdHJ0b3FfaW50ZXJuYWwKKzAwMDhkZjgwIGcgICAgREYgLnRleHQJMDAwMDAwNTYgIEdMSUJDXzIuMSAgIG50cF9nZXR0aW1lCiswMDA2ZGU3MCBnICAgIERGIC50ZXh0CTAwMDAwMGUwICBHTElCQ18yLjIgICBtY2hlY2tfcGVkYW50aWMKKzAwMDZlOWQwIGcgICAgREYgLnRleHQJMDAwMDAxZTUgIEdMSUJDXzIuMCAgIG10cmFjZQorMDAwNWZjNjAgZyAgICBERiAudGV4dAkwMDAwMDBlNyAgR0xJQkNfMi4wICAgX0lPX2dldGMKKzAwMGMyM2YwIGcgICAgREYgLnRleHQJMDAwMDAxZGMgIEdMSUJDXzIuNCAgIF9fZnhzdGF0YXQKKzAwMDcxY2IwIGcgICAgREYgLnRleHQJMDAwMDAwODQgIEdMSUJDXzIuMCAgIG1lbW1lbQorMDAxNDYzNWMgZyAgICBETyAuYnNzCTAwMDAwMDA0ICBHTElCQ18yLjAgICBsb2MxCiswMDA2MTMwMCBnICAgIERGIC50ZXh0CTAwMDAwMDJhICBHTElCQ18yLjIgICBfX2ZidWZzaXplCiswMDA2NTcxMCBnICAgIERGIC50ZXh0CTAwMDAwMDJmICBHTElCQ18yLjAgICBfSU9fbWFya2VyX2RlbHRhCiswMDE0NjM2MCBnICAgIERPIC5ic3MJMDAwMDAwMDQgIEdMSUJDXzIuMCAgIGxvYzIKKzAwMDcxZDQwICB3ICAgREYgLnRleHQJMDAwMDAwYzYgIEdMSUJDXzIuMSAgIHJhd21lbWNocgorMDAwY2JkNTAgZyAgICBERiAudGV4dAkwMDAwMDAyYyAgR0xJQkNfMi4wICAgc3luYworMDAwZDM4NjAgZyAgICBERiAudGV4dAkwMDAwMDAzNCAgR0xJQkNfMi4wICAgc3lzaW5mbworMDAwOGY4MTAgZyAgICBERiAudGV4dAkwMDAwMDBhZSAgR0xJQkNfMi4yLjQgZ2V0Z3JvdXBsaXN0CiswMDA3MGVjMCAgdyAgIERGIC50ZXh0CTAwMDAwMDFlICBHTElCQ18yLjAgICBiY21wCiswMDA1YjFkMCAgdyAgIERGIC50ZXh0CTAwMDAwMDJhICBHTElCQ18yLjIgICBnZXR3Y191bmxvY2tlZAorMDAwMmFhNDAgIHcgICBERiAudGV4dAkwMDAwMDEwNCAgR0xJQkNfMi4wICAgc2lndmVjCiswMDE0MzBkNCBnICAgIERPIC5kYXRhCTAwMDAwMDA0ICBHTElCQ18yLjAgICBvcHRlcnIKKzAwMDcxZjcwICB3ICAgREYgLnRleHQJMDAwMDAwNzQgIEdMSUJDXzIuMCAgIGFyZ3pfYXBwZW5kCiswMDBmOWY2MCBnICAgIERGIC50ZXh0CTAwMDAwMDM2ICBHTElCQ18yLjAgICBzdmNfZ2V0cmVxCiswMDA5MzYwMCAgdyAgIERGIC50ZXh0CTAwMDAwMDcwICBHTElCQ18yLjAgICBzZXRnaWQKKzAwMDY4YTYwICB3ICAgREYgLnRleHQJMDAwMDA0NWEgIEdMSUJDXzIuMCAgIG1hbGxvY19zZXRfc3RhdGUKKzAwMGU2OWMwIGcgICAgREYgLnRleHQJMDAwMDAwNTcgIEdMSUJDXzIuMy40IF9fc3RyY2F0X2NoaworMDAwNzIwNDAgZyAgICBERiAudGV4dAkwMDAwMDA0MSAgR0xJQkNfMi4wICAgX19hcmd6X2NvdW50CiswMDA1YzAzMCBnICAgIERGIC50ZXh0CTAwMDAwMDM5ICBHTElCQ18yLjIgICB3cHJpbnRmCiswMDBkODZmMCAgdyAgIERGIC50ZXh0CTAwMDAwMDc5ICBHTElCQ18yLjAgICB1bGNrcHdkZgorMDAwYzg1ZjAgZyAgICBERiAudGV4dAkwMDAwMDE0NiAgR0xJQkNfMi4wICAgZnRzX2NoaWxkcmVuCiswMDExMWEwMCBnICAgIERGIC50ZXh0CTAwMDAwMDY2IChHTElCQ18yLjApICBnZXRzZXJ2Ynlwb3J0X3IKKzAwMGViZTEwIGcgICAgREYgLnRleHQJMDAwMDAxZmIgIEdMSUJDXzIuMS4yIGdldHNlcnZieXBvcnRfcgorMDAwYzFmMDAgZyAgICBERiAudGV4dAkwMDAwMDAzYSAgR0xJQkNfMi4wICAgbWtmaWZvCiswMDA3MGNlMCBnICAgIERGIC50ZXh0CTAwMDAwMDNlICBHTElCQ18yLjAgICBzdHJ4ZnJtCiswMDBjMzU4MCAgdyAgIERGIC50ZXh0CTAwMDAwMDg5ICBHTElCQ18yLjQgICBvcGVuYXQ2NAorMDAwYjc1OTAgIHcgICBERiAudGV4dAkwMDAwMDAzNCAgR0xJQkNfMi4wICAgc2NoZWRfZ2V0c2NoZWR1bGVyCiswMDAyY2UzMCAgdyAgIERGIC50ZXh0CTAwMDAwMDUxICBHTElCQ18yLjAgICBvbl9leGl0CiswMDBjMzhlMCBnICAgIERGIC50ZXh0CTAwMDAwMmJiICBHTElCQ18yLjQgICBmYWNjZXNzYXQKKzAwMTQ2NWI0IGcgICAgRE8gLmJzcwkwMDAwMDAwNCAgR0xJQkNfMi4xICAgX19rZXlfZGVjcnlwdHNlc3Npb25fcGtfTE9DQUwKKzAwMGUxNDEwIGcgICAgREYgLnRleHQJMDAwMDAwMGYgIEdMSUJDXzIuMCAgIF9fcmVzX3JhbmRvbWlkCiswMDA2MDJiMCBnICAgIERGIC50ZXh0CTAwMDAwMDMyICBHTElCQ18yLjAgICBzZXRidWYKKzAwMDU5ODkwIGcgICAgREYgLnRleHQJMDAwMDAxODAgIEdMSUJDXzIuMCAgIF9JT19nZXRzCiswMDA2MWYzMCBnICAgIERGIC50ZXh0CTAwMDAwMGE3ICBHTElCQ18yLjEgICBmd3JpdGVfdW5sb2NrZWQKKzAwMDZmOWIwIGcgICAgREYgLnRleHQJMDAwMDAwNTQgIEdMSUJDXzIuMCAgIHN0cmNtcAorMDAwMjlmNjAgZyAgICBERiAudGV4dAkwMDAwMDA2NCAgR0xJQkNfUFJJVkFURSBfX2xpYmNfbG9uZ2ptcAorMDAwMmU1MzAgZyAgICBERiAudGV4dAkwMDAwMDA0NSAgR0xJQkNfMi4wICAgX19zdHJ0b3VsbF9pbnRlcm5hbAorMDAwZDZmODAgIHcgICBERiAudGV4dAkwMDAwMDA5MiAgR0xJQkNfMi4zICAgaXN3c3BhY2VfbAorMDAwZDNjYTAgIHcgICBERiAudGV4dAkwMDAwMDA2YyAgR0xJQkNfMi4wICAgcmVjdm1zZworMDAwMjNkZDAgIHcgICBERiAudGV4dAkwMDAwMDAxNyAgR0xJQkNfMi4zICAgaXNsb3dlcl9sCiswMDA2NjI0MCBnICAgIERGIC50ZXh0CTAwMDAwMTI4ICBHTElCQ18yLjAgICBfX3VuZGVyZmxvdworMDAwYzEwYzAgIHcgICBERiAudGV4dAkwMDAwMDBlZiAgR0xJQkNfMi4xICAgcHdyaXRlNjQKKzAwMDZmZDYwIGcgICAgREYgLnRleHQJMDAwMDAwYjYgIEdMSUJDXzIuMCAgIHN0cmVycm9yCiswMDAzOTFjMCBnICAgIERGIC50ZXh0CTAwMDAwMDQyICBHTElCQ18yLjEgICBfX3N0cmZtb25fbAorMDAwZmNhNDAgZyAgICBERiAudGV4dAkwMDAwMDAzYSAgR0xJQkNfMi4wICAgeGRyX3dyYXBzdHJpbmcKKzAwMGNhNmMwIGcgICAgREYgLnRleHQJMDAwMDAwMzggIEdMSUJDXzIuMCAgIHRjZ2V0cGdycAorMDAwMTVmNTAgZyAgICBERiAudGV4dAkwMDAwMDFiNiAgR0xJQkNfMi4wICAgX19saWJjX3N0YXJ0X21haW4KKzAwMDhlYTQwIGcgICAgREYgLnRleHQJMDAwMDAwMGEgIEdMSUJDXzIuMCAgIGRpcmZkCiswMDA1YjFkMCAgdyAgIERGIC50ZXh0CTAwMDAwMDJhICBHTElCQ18yLjIgICBmZ2V0d2NfdW5sb2NrZWQKKzAwMTEwZDUwIGcgICAgREYgLnRleHQJMDAwMDAwMmIgKEdMSUJDXzIuMSkgIG5mdHcKKzAwMGY5NmQwIGcgICAgREYgLnRleHQJMDAwMDAwMjIgIEdMSUJDXzIuMCAgIHhkcl9kZXNfYmxvY2sKKzAwMGM2MWEwIGcgICAgREYgLnRleHQJMDAwMDAwNTIgIEdMSUJDXzIuMy4zIG5mdHcKKzAwMGY5NGEwIGcgICAgREYgLnRleHQJMDAwMDAwOGMgIEdMSUJDXzIuMCAgIHhkcl9jYWxsaGRyCiswMDBkNmU1MCAgdyAgIERGIC50ZXh0CTAwMDAwMDkyICBHTElCQ18yLjMgICBpc3dwcmludF9sCiswMDEwMDliMCBnICAgIERGIC50ZXh0CTAwMDAwMDZjICBHTElCQ18yLjAgICB4ZHJfY3J5cHRrZXlhcmcyCiswMDA5MTNlMCBnICAgIERGIC50ZXh0CTAwMDAwMGE3ICBHTElCQ18yLjAgICBzZXRwd2VudAorMDAwZDQ1NzAgZyAgICBERiAudGV4dAkwMDAwMDA2MiAgR0xJQkNfMi4wICAgc2Vtb3AKKzAwMGNjNDIwIGcgICAgREYgLnRleHQJMDAwMDAwMzQgIEdMSUJDXzIuMCAgIGVuZGZzZW50CiswMDAyM2U3MCBnICAgIERGIC50ZXh0CTAwMDAwMDE3ICBHTElCQ18yLjEgICBfX2lzdXBwZXJfbAorMDAwNWMwNzAgZyAgICBERiAudGV4dAkwMDAwMDA0MSAgR0xJQkNfMi4yICAgd3NjYW5mCiswMDA1ZjZhMCAgdyAgIERGIC50ZXh0CTAwMDAwMDlhICBHTElCQ18yLjAgICBmZXJyb3IKKzAwMTA2YTcwICB3ICAgREYgLnRleHQJMDAwMDAwNjkgIEdMSUJDXzIuMCAgIGdldHV0ZW50X3IKKzAwMGZlYzEwIGcgICAgREYgLnRleHQJMDAwMDAwOWIgIEdMSUJDXzIuMSAgIGF1dGhkZXNfY3JlYXRlCiswMDBjOGYwMCBnICAgIERGIC50ZXh0CTAwMDAwMjIwICBHTElCQ18yLjQgICBwcG9sbAorMDAwNzExNzAgIHcgICBERiAudGV4dAkwMDAwMDA0MSAgR0xJQkNfMi4wICAgc3RwY3B5CiswMDBkZjViMCBnICAgIERGIC50ZXh0CTAwMDAwMDNjICBHTElCQ18yLjMuMiBwdGhyZWFkX2NvbmRfZGVzdHJveQorMDAwOTFiZjAgIHcgICBERiAudGV4dAkwMDAwMDIyMSAgR0xJQkNfMi4wICAgZmdldHB3ZW50X3IKKzAwMDczZWYwIGcgICAgREYgLnRleHQJMDAwMDBkNTEgIEdMSUJDXzIuMSAgIF9fc3RyeGZybV9sCiswMDEwNjk0MCBnICAgIERGIC50ZXh0CTAwMDAwMDIyICBHTElCQ18yLjEgICBmZGV0YWNoCiswMDAyOTcxMCAgdyAgIERGIC50ZXh0CTAwMDAwMDg1ICBHTElCQ18yLjAgICBsZGV4cAorMDAxMTExYjAgZyAgICBERiAudGV4dAkwMDAwMDAzYyAoR0xJQkNfMi4wKSAgcHRocmVhZF9jb25kX2Rlc3Ryb3kKKzAwMGNmY2QwIGcgICAgREYgLnRleHQJMDAwMDAwNTAgIEdMSUJDXzIuMCAgIGdjdnQKKzAwMDkxZWMwICB3ICAgREYgLnRleHQJMDAwMDAwYWMgIEdMSUJDXzIuMCAgIF9fd2FpdAorMDAwNWJmNzAgIHcgICBERiAudGV4dAkwMDAwMDAzNCAgR0xJQkNfMi4yICAgZndwcmludGYKKzAwMGZjYmIwIGcgICAgREYgLnRleHQJMDAwMDAwZmUgIEdMSUJDXzIuMCAgIHhkcl9ieXRlcworMDAwMmNiZTAgIHcgICBERiAudGV4dAkwMDAwMDA3NCAgR0xJQkNfMi4wICAgc2V0ZW52CiswMDAyMjgyMCAgdyAgIERGIC50ZXh0CTAwMDAwMDY3ICBHTElCQ18yLjMgICBubF9sYW5naW5mb19sCiswMDBjYWU4MCBnICAgIERGIC50ZXh0CTAwMDAwMDNhICBHTElCQ18yLjAgICBzZXRwcmlvcml0eQorMDAwYzEzMTAgZyAgICBERiAudGV4dAkwMDAwMDA5NCAgR0xJQkNfMi4yICAgcG9zaXhfc3Bhd25fZmlsZV9hY3Rpb25zX2FkZG9wZW4KKzAwMDE3YjMwIGcgICAgREYgLnRleHQJMDAwMDAwMTYgIEdMSUJDX1BSSVZBVEUgX19nY29udl9nZXRfbW9kdWxlc19kYgorMDAwNjYwODAgZyAgICBERiAudGV4dAkwMDAwMDA3ZSAgR0xJQkNfMi4wICAgX0lPX2RlZmF1bHRfZG9hbGxvY2F0ZQorMDAxMDk3ZTAgZyAgICBERiAudGV4dAkwMDAwMDA4OCAgR0xJQkNfUFJJVkFURSBfX2xpYmNfZGxvcGVuX21vZGUKKzAwMDU4ZDAwIGcgICAgREYgLnRleHQJMDAwMDAxMTggIEdMSUJDXzIuMCAgIF9JT19mcmVhZAorMDAwOGYwOTAgZyAgICBERiAudGV4dAkwMDAwMDE5MiAgR0xJQkNfMi4wICAgZmdldGdyZW50CiswMDBlN2FjMCBnICAgIERGIC50ZXh0CTAwMDAwMDQwICBHTElCQ18yLjQgICBfX3JlY3Zmcm9tX2NoaworMDAwY2I5ZDAgZyAgICBERiAudGV4dAkwMDAwMDAzOCAgR0xJQkNfMi4wICAgc2V0ZG9tYWlubmFtZQorMDAwYzM2ZjAgIHcgICBERiAudGV4dAkwMDAwMDA3MCAgR0xJQkNfMi4wICAgd3JpdGUKKzAwMGViY2IwIGcgICAgREYgLnRleHQJMDAwMDAxM2QgIEdMSUJDXzIuMCAgIGdldHNlcnZieXBvcnQKKzAwMGYyMzgwIGcgICAgREYgLnRleHQJMDAwMDAwNDggIEdMSUJDXzIuMSAgIGlmX2ZyZWVuYW1laW5kZXgKKzAwMDM0OTMwICB3ICAgREYgLnRleHQJMDAwMDAwMjkgIEdMSUJDXzIuMyAgIHN0cnRvZF9sCiswMDBlYWFlMCBnICAgIERGIC50ZXh0CTAwMDAwMGFiICBHTElCQ18yLjAgICBnZXRuZXRlbnQKKzAwMTA2ZjYwICB3ICAgREYgLnRleHQJMDAwMDAwNjggIEdMSUJDXzIuMCAgIGdldHV0bGluZV9yCiswMDA3NjAyMCAgdyAgIERGIC50ZXh0CTAwMDAwMDU0ICBHTElCQ18yLjAgICB3Y3NsZW4KKzAwMGM5MWEwIGcgICAgREYgLnRleHQJMDAwMDAxYWUgIEdMSUJDXzIuMiAgIHBvc2l4X2ZhbGxvY2F0ZQorMDAwYzNmYzAgZyAgICBERiAudGV4dAkwMDAwMDAzNCAgR0xJQkNfMi4wICAgX19waXBlCiswMDBkODc3MCAgdyAgIERGIC50ZXh0CTAwMDAwMzhiICBHTElCQ18yLjAgICBsY2twd2RmCiswMDBmZGIwMCBnICAgIERGIC50ZXh0CTAwMDAwMGFhICBHTElCQ18yLjAgICB4ZHJyZWNfZW5kb2ZyZWNvcmQKKzAwMDYwYWYwIGcgICAgREYgLnRleHQJMDAwMDAwZmEgIEdMSUJDXzIuMSAgIGZzZWVrbworMDAwZDcyYTAgIHcgICBERiAudGV4dAkwMDAwMDA1ZCAgR0xJQkNfMi4zICAgdG93Y3RyYW5zX2wKKzAwMDZmYTEwIGcgICAgREYgLnRleHQJMDAwMDAwMzcgIEdMSUJDXzIuMCAgIHN0cmNvbGwKKzAwMGY0NGEwIGcgICAgREYgLnRleHQJMDAwMDAwNDggIEdMSUJDXzIuNSAgIGluZXQ2X29wdF9zZXRfdmFsCiswMDAyYTA2MCAgdyAgIERGIC50ZXh0CTAwMDAwMGNmICBHTElCQ18yLjAgICBzc2lnbmFsCiswMDAzZDA0MCBnICAgIERGIC50ZXh0CTAwMDA0M2VjICBHTElCQ18yLjAgICB2ZnByaW50ZgorMDAwMmQ2ODAgIHcgICBERiAudGV4dAkwMDAwMDA2NyAgR0xJQkNfMi4wICAgcmFuZG9tCiswMDA5NGQ1MCBnICAgIERGIC50ZXh0CTAwMDAwMDZhICBHTElCQ18yLjAgICBnbG9iZnJlZQorMDAwZDMyNzAgZyAgICBERiAudGV4dAkwMDAwMDAzYSAgR0xJQkNfMi4wICAgZGVsZXRlX21vZHVsZQorMDAwNzdlNTAgZyAgICBERiAudGV4dAkwMDAwMDAzZSAgR0xJQkNfMi4wICAgX193Y3N0b2xkX2ludGVybmFsCiswMDBkZDA1MCAgdyAgIERGIC50ZXh0CTAwMDAwMGFmICBHTElCQ18yLjEgICBhcmdwX3N0YXRlX2hlbHAKKzAwMTQxNTgwIGcgICAgRE8gLmRhdGEucmVsLnJvCTAwMDAwMTAwIChHTElCQ18yLjEpICBfc3lzX3NpZ2xpc3QKKzAwMTQxNTgwIGcgICAgRE8gLmRhdGEucmVsLnJvCTAwMDAwMTA0ICBHTElCQ18yLjMuMyBfc3lzX3NpZ2xpc3QKKzAwMDcyZTIwIGcgICAgREYgLnRleHQJMDAwMDAwMmIgIEdMSUJDXzIuMCAgIGJhc2VuYW1lCiswMDE0MTU4MCBnICAgIERPIC5kYXRhLnJlbC5ybwkwMDAwMDA4MCAoR0xJQkNfMi4wKSAgX3N5c19zaWdsaXN0CiswMDBlOGY0MCAgdyAgIERGIC50ZXh0CTAwMDAwMDA3ICBHTElCQ18yLjAgICBudG9obAorMDAwOTM3ODAgZyAgICBERiAudGV4dAkwMDAwMDAwOCAgR0xJQkNfMi4wICAgZ2V0cGdycAorMDAwYjc0MzAgZyAgICBERiAudGV4dAkwMDAwMDA0NyAgR0xJQkNfMi4wICAgZ2V0b3B0X2xvbmdfb25seQorMDAwY2Y2OTAgZyAgICBERiAudGV4dAkwMDAwMDBhMiAgR0xJQkNfMi4wICAgY2xvc2Vsb2cKKzAwMDc2MTMwIGcgICAgREYgLnRleHQJMDAwMDAwZDIgIEdMSUJDXzIuMCAgIHdjc25jbXAKKzAwMGI1YWUwICB3ICAgREYgLnRleHQJMDAwMDAwNGQgIEdMSUJDXzIuMCAgIHJlX2V4ZWMKKzAwMDIzY2MwIGcgICAgREYgLnRleHQJMDAwMDAwMTEgIEdMSUJDXzIuMCAgIGlzYXNjaWkKKzAwMGQyMzQwICB3ICAgREYgLnRleHQJMDAwMDAxYTAgIEdMSUJDXzIuMCAgIGdldF9ucHJvY3NfY29uZgorMDAwZjVmYTAgZyAgICBERiAudGV4dAkwMDAwMDAzZCAgR0xJQkNfMi4wICAgY2xudF9wY3JlYXRlZXJyb3IKKzAwMGU3YzcwIGcgICAgREYgLnRleHQJMDAwMDAwM2IgIEdMSUJDXzIuNCAgIF9fcHRzbmFtZV9yX2NoaworMDAwZDRlZjAgIHcgICBERiAudGV4dAkwMDAwMDFhMCAgR0xJQkNfMi4wICAgbW9uc3RhcnR1cAorMDAwYzNjMDAgIHcgICBERiAudGV4dAkwMDAwMDBiNyAgR0xJQkNfMi4wICAgX19mY250bAorMDAwZThmNTAgIHcgICBERiAudGV4dAkwMDAwMDAwZSAgR0xJQkNfMi4wICAgbnRvaHMKKzAwMDQ2NTcwICB3ICAgREYgLnRleHQJMDAwMDAwM2IgIEdMSUJDXzIuMCAgIHNucHJpbnRmCiswMDA2NjQ2MCBnICAgIERGIC50ZXh0CTAwMDAwMDY2ICBHTElCQ18yLjAgICBfX292ZXJmbG93CiswMDAyZTNmMCBnICAgIERGIC50ZXh0CTAwMDAwMDQ1ICBHTElCQ18yLjAgICBfX3N0cnRvdWxfaW50ZXJuYWwKKzAwMDc2NmIwICB3ICAgREYgLnRleHQJMDAwMDAwMjQgIEdMSUJDXzIuMCAgIHdtZW1tb3ZlCiswMDBjOTE3MCBnICAgIERGIC50ZXh0CTAwMDAwMDMwICBHTElCQ18yLjMuMyBwb3NpeF9mYWR2aXNlNjQKKzAwMTEwZGIwIGcgICAgREYgLnRleHQJMDAwMDAwMjQgKEdMSUJDXzIuMikgIHBvc2l4X2ZhZHZpc2U2NAorMDAxMDA5NTAgZyAgICBERiAudGV4dAkwMDAwMDA1NyAgR0xJQkNfMi4wICAgeGRyX2NyeXB0a2V5YXJnCiswMDA5NDY3MCAgdyAgIERGIC50ZXh0CTAwMDAwNDFkICBHTElCQ18yLjAgICBzeXNjb25mCiswMDBlNzMzMCBnICAgIERGIC50ZXh0CTAwMDAwMWFiICBHTElCQ18yLjMuNCBfX2dldHNfY2hrCiswMDA2ZjYxMCBnICAgIERGIC50ZXh0CTAwMDAwMDc4ICBHTElCQ18yLjAgICBfb2JzdGFja19mcmVlCiswMDBkMmZjMCBnICAgIERGIC50ZXh0CTAwMDAwMDY4ICBHTElCQ18yLjMuMyBnbnVfZGV2X21ha2VkZXYKKzAwMGZjNTgwIGcgICAgREYgLnRleHQJMDAwMDAwZWEgIEdMSUJDXzIuMS4xIHhkcl91X2h5cGVyCiswMDBmMDg1MCBnICAgIERGIC50ZXh0CTAwMDAwMGJiICBHTElCQ18yLjAgICBzZXRuZXRncmVudAorMDAwYzIyYTAgZyAgICBERiAudGV4dAkwMDAwMDE0ZCAgR0xJQkNfMi40ICAgX194bWtub2RhdAorMDAwMTY1ZTAgZyAgICBERiAudGV4dAkwMDAwMDAyMyAoR0xJQkNfMi4wKSAgX19maXh1bnNkZmRpCiswMDEwY2I1MCBnICAgIERGIC50ZXh0CTAwMDAwMWI2IChHTElCQ18yLjApICBfSU9fZmRvcGVuCiswMDA1N2ZhMCBnICAgIERGIC50ZXh0CTAwMDAwMmRhICBHTElCQ18yLjEgICBfSU9fZmRvcGVuCiswMDBmMzhlMCBnICAgIERGIC50ZXh0CTAwMDAwMGQ2ICBHTElCQ18yLjMuMyBpbmV0Nl9vcHRpb25fZmluZAorMDAwNzkxYTAgIHcgICBERiAudGV4dAkwMDAwMDA0MCAgR0xJQkNfMi4zICAgd2NzdG91bGxfbAorMDAwZjZkMjAgZyAgICBERiAudGV4dAkwMDAwMDJhOSAgR0xJQkNfMi4wICAgY2xudHRjcF9jcmVhdGUKKzAwMDIzZGYwICB3ICAgREYgLnRleHQJMDAwMDAwMTcgIEdMSUJDXzIuMyAgIGlzZ3JhcGhfbAorMDAwZWMwMTAgZyAgICBERiAudGV4dAkwMDAwMDBhMiAgR0xJQkNfMi4wICAgZ2V0c2VydmVudAorMDAwZTg4ZTAgZyAgICBERiAudGV4dAkwMDAwMDAzYiAgR0xJQkNfMi40ICAgX190dHluYW1lX3JfY2hrCiswMDAyZDVlMCBnICAgIERGIC50ZXh0CTAwMDAwMDkzICBHTElCQ18yLjAgICB3Y3RvbWIKKzAwMTQ2MzY0IGcgICAgRE8gLmJzcwkwMDAwMDAwNCAgR0xJQkNfMi4wICAgbG9jcworMDAwNjIwOTAgZyAgICBERiAudGV4dAkwMDAwMDA5OSAgR0xJQkNfMi4xICAgZnB1dHNfdW5sb2NrZWQKKzAwMDJhZjkwIGcgICAgREYgLnRleHQJMDAwMDAwMjQgIEdMSUJDXzIuMCAgIHNpZ2dldG1hc2sKKzAwMTQzMzMwICB3ICAgRE8gLmRhdGEJMDAwMDAwMDQgIEdMSUJDXzIuMCAgIF9fbWVtYWxpZ25faG9vaworMDAwOTBkNjAgZyAgICBERiAudGV4dAkwMDAwMDE3NyAgR0xJQkNfMi4wICAgcHV0cHdlbnQKKzAwMDViZGIwIGcgICAgREYgLnRleHQJMDAwMDAwNGYgIEdMSUJDXzIuMiAgIHB1dHdjaGFyX3VubG9ja2VkCiswMDA3NWFjMCBnICAgIERGIC50ZXh0CTAwMDAwMDczICBHTElCQ18yLjEuMSBfX3N0cm5jcHlfYnkyCiswMDBkNDVlMCBnICAgIERGIC50ZXh0CTAwMDAwMDYyICBHTElCQ18yLjAgICBzZW1nZXQKKzAwMDY2Y2UwIGcgICAgREYgLnRleHQJMDAwMDAwNGMgIEdMSUJDXzIuMCAgIF9JT19zdHJfaW5pdF9yZWFkb25seQorMDAwNzViNDAgZyAgICBERiAudGV4dAkwMDAwMDA2YiAgR0xJQkNfMi4xLjEgX19zdHJuY3B5X2J5NAorMDAwMmRiYzAgIHcgICBERiAudGV4dAkwMDAwMDExNiAgR0xJQkNfMi4wICAgaW5pdHN0YXRlX3IKKzAwMGY5NWIwIGcgICAgREYgLnRleHQJMDAwMDAwOGYgIEdMSUJDXzIuMCAgIHhkcl9hY2NlcHRlZF9yZXBseQorMDAwNWFiMTAgIHcgICBERiAudGV4dAkwMDAwMDA5YiAgR0xJQkNfMi4wICAgX192c3NjYW5mCiswMDA2Y2UwMCBnICAgIERGIC50ZXh0CTAwMDAwMWU1ICBHTElCQ18yLjAgICBmcmVlCiswMDA3NjQzMCBnICAgIERGIC50ZXh0CTAwMDAwMTFlICBHTElCQ18yLjAgICB3Y3NzdHIKKzAwMDc2MzEwIGcgICAgREYgLnRleHQJMDAwMDAwMjggIEdMSUJDXzIuMCAgIHdjc3JjaHIKKzAwMDIzYjYwIGcgICAgREYgLnRleHQJMDAwMDAwNDYgIEdMSUJDXzIuMCAgIGlzcHVuY3QKKzAwMDYyMzkwIGcgICAgREYgLnRleHQJMDAwMDAwM2IgIEdMSUJDXzIuMCAgIF9JT19maWxlX3NlZWsKKzAwMTQ0N2MwIGcgICAgRE8gLmJzcwkwMDAwMDAwNCAgR0xJQkNfMi4wICAgX19kYXlsaWdodAorMDAwZTY3NDAgZyAgICBERiAudGV4dAkwMDAwMDAwNSAgR0xJQkNfMi4yICAgX19jeWdfcHJvZmlsZV9mdW5jX2V4aXQKKzAwMGRmMjcwIGcgICAgREYgLnRleHQJMDAwMDAwNDMgIEdMSUJDXzIuMCAgIHB0aHJlYWRfYXR0cl9nZXRpbmhlcml0c2NoZWQKKzAwMGU3YjYwIGcgICAgREYgLnRleHQJMDAwMDAwMzIgIEdMSUJDXzIuNSAgIF9fcmVhZGxpbmthdF9jaGsKKzAwMTAwM2YwIGcgICAgREYgLnRleHQJMDAwMDAwNzMgIEdMSUJDXzIuMSAgIGtleV9kZWNyeXB0c2Vzc2lvbgorMDAwZDE5NjAgZyAgICBERiAudGV4dAkwMDAwMDEzNyAgR0xJQkNfMi4wICAgdndhcm4KKzAwMDc2NzMwICB3ICAgREYgLnRleHQJMDAwMDAwMzggIEdMSUJDXzIuMCAgIHdjcGNweQorCisKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90LzIwMF9EcGtnX1NobGlicy9vYmpkdW1wLmxzIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3QvMjAwX0Rwa2dfU2hsaWJzL29iamR1bXAubHMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDAyNDQwMgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90LzIwMF9EcGtnX1NobGlicy9vYmpkdW1wLmxzCkBAIC0wLDAgKzEsMjc4IEBACisKKy9iaW4vbHM6ICAgICBmaWxlIGZvcm1hdCBlbGYzMi1pMzg2CithcmNoaXRlY3R1cmU6IGkzODYsIGZsYWdzIDB4MDAwMDAxMTI6CitFWEVDX1AsIEhBU19TWU1TLCBEX1BBR0VECitzdGFydCBhZGRyZXNzIDB4MDgwNDliNTAKKworUHJvZ3JhbSBIZWFkZXI6CisgICAgUEhEUiBvZmYgICAgMHgwMDAwMDAzNCB2YWRkciAweDA4MDQ4MDM0IHBhZGRyIDB4MDgwNDgwMzQgYWxpZ24gMioqMgorICAgICAgICAgZmlsZXN6IDB4MDAwMDAxMDAgbWVtc3ogMHgwMDAwMDEwMCBmbGFncyByLXgKKyAgSU5URVJQIG9mZiAgICAweDAwMDAwMTM0IHZhZGRyIDB4MDgwNDgxMzQgcGFkZHIgMHgwODA0ODEzNCBhbGlnbiAyKiowCisgICAgICAgICBmaWxlc3ogMHgwMDAwMDAxMyBtZW1zeiAweDAwMDAwMDEzIGZsYWdzIHItLQorICAgIExPQUQgb2ZmICAgIDB4MDAwMDAwMDAgdmFkZHIgMHgwODA0ODAwMCBwYWRkciAweDA4MDQ4MDAwIGFsaWduIDIqKjEyCisgICAgICAgICBmaWxlc3ogMHgwMDAxMjQ3OCBtZW1zeiAweDAwMDEyNDc4IGZsYWdzIHIteAorICAgIExPQUQgb2ZmICAgIDB4MDAwMTI0NzggdmFkZHIgMHgwODA1YjQ3OCBwYWRkciAweDA4MDViNDc4IGFsaWduIDIqKjEyCisgICAgICAgICBmaWxlc3ogMHgwMDAwMDNiNCBtZW1zeiAweDAwMDAwODE4IGZsYWdzIHJ3LQorIERZTkFNSUMgb2ZmICAgIDB4MDAwMTI0OGMgdmFkZHIgMHgwODA1YjQ4YyBwYWRkciAweDA4MDViNDhjIGFsaWduIDIqKjIKKyAgICAgICAgIGZpbGVzeiAweDAwMDAwMGU4IG1lbXN6IDB4MDAwMDAwZTggZmxhZ3MgcnctCisgICAgTk9URSBvZmYgICAgMHgwMDAwMDE0OCB2YWRkciAweDA4MDQ4MTQ4IHBhZGRyIDB4MDgwNDgxNDggYWxpZ24gMioqMgorICAgICAgICAgZmlsZXN6IDB4MDAwMDAwMjAgbWVtc3ogMHgwMDAwMDAyMCBmbGFncyByLS0KK0VIX0ZSQU1FIG9mZiAgICAweDAwMDEyM2IwIHZhZGRyIDB4MDgwNWEzYjAgcGFkZHIgMHgwODA1YTNiMCBhbGlnbiAyKioyCisgICAgICAgICBmaWxlc3ogMHgwMDAwMDAyYyBtZW1zeiAweDAwMDAwMDJjIGZsYWdzIHItLQorICAgU1RBQ0sgb2ZmICAgIDB4MDAwMDAwMDAgdmFkZHIgMHgwMDAwMDAwMCBwYWRkciAweDAwMDAwMDAwIGFsaWduIDIqKjIKKyAgICAgICAgIGZpbGVzeiAweDAwMDAwMDAwIG1lbXN6IDB4MDAwMDAwMDAgZmxhZ3MgcnctCisKK0R5bmFtaWMgU2VjdGlvbjoKKyAgTkVFREVEICAgICAgbGlicnQuc28uMQorICBORUVERUQgICAgICBsaWJhY2wuc28uMQorICBORUVERUQgICAgICBsaWJzZWxpbnV4LnNvLjEKKyAgTkVFREVEICAgICAgbGliYy5zby42CisgIElOSVQgICAgICAgIDB4ODA0OTUxMAorICBGSU5JICAgICAgICAweDgwNTY3NjgKKyAgSEFTSCAgICAgICAgMHg4MDQ4MTY4CisgIEdOVV9IQVNIICAgIDB4ODA0ODRhNAorICBTVFJUQUIgICAgICAweDgwNDhiYzAKKyAgU1lNVEFCICAgICAgMHg4MDQ4NTAwCisgIFNUUlNaICAgICAgIDB4NGEwCisgIFNZTUVOVCAgICAgIDB4MTAKKyAgREVCVUcgICAgICAgMHgwCisgIFBMVEdPVCAgICAgIDB4ODA1YjU3YworICBQTFRSRUxTWiAgICAweDMwMAorICBQTFRSRUwgICAgICAweDExCisgIEpNUFJFTCAgICAgIDB4ODA0OTIxMAorICBSRUwgICAgICAgICAweDgwNDkxZTgKKyAgUkVMU1ogICAgICAgMHgyOAorICBSRUxFTlQgICAgICAweDgKKyAgVkVSTkVFRCAgICAgMHg4MDQ5MTM4CisgIFZFUk5FRUROVU0gIDB4MworICBWRVJTWU0gICAgICAweDgwNDkwNjAKKworVmVyc2lvbiBSZWZlcmVuY2VzOgorICByZXF1aXJlZCBmcm9tIGxpYnJ0LnNvLjE6CisgICAgMHgwZDY5NjkxMiAweDAwIDA4IEdMSUJDXzIuMgorICByZXF1aXJlZCBmcm9tIGxpYmFjbC5zby4xOgorICAgIDB4MDU4MjI0NTAgMHgwMCAwNiBBQ0xfMS4wCisgIHJlcXVpcmVkIGZyb20gbGliYy5zby42OgorICAgIDB4MDk2OTFhNzMgMHgwMCAwOSBHTElCQ18yLjIuMworICAgIDB4MGQ2OTY5MTMgMHgwMCAwNyBHTElCQ18yLjMKKyAgICAweDBkNjk2OTExIDB4MDAgMDUgR0xJQkNfMi4xCisgICAgMHgwOTY5MWY3MyAweDAwIDA0IEdMSUJDXzIuMS4zCisgICAgMHgwZDY5NjkxMiAweDAwIDAzIEdMSUJDXzIuMgorICAgIDB4MGQ2OTY5MTAgMHgwMCAwMiBHTElCQ18yLjAKKworRFlOQU1JQyBTWU1CT0wgVEFCTEU6CiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMjZlICBHTElCQ18yLjAgICBhYm9ydAorMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAxZCAgR0xJQkNfMi4wICAgX19lcnJub19sb2NhdGlvbgorMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDA0ZCAgR0xJQkNfMi4wICAgc2lnZW1wdHlzZXQKKzAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwMzQgIEdMSUJDXzIuMCAgIHNwcmludGYKKzAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAxYTIgIEdMSUJDXzIuMiAgIGxvY2FsZWNvbnYKKzAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwMGEgIEdMSUJDXzIuMCAgIGRpcmZkCiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDU3ICBHTElCQ18yLjEuMyBfX2N4YV9hdGV4aXQKKzAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwMzcgIEdMSUJDXzIuMCAgIHN0cmNvbGwKKzAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAxNTAgIEdMSUJDXzIuMCAgIHFzb3J0CiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDk0ICBHTElCQ18yLjEgICBmcHV0c191bmxvY2tlZAorMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAxZSAgR0xJQkNfMi4wICAgX19jdHlwZV9nZXRfbWJfY3VyX21heAorMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDBkOSAgR0xJQkNfMi4wICAgc2lnbmFsCiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDZlICBHTElCQ18yLjAgICBzaWdpc21lbWJlcgorMDAwMDAwMDAgIHcgICBEICAqVU5EKgkwMDAwMDAwMCAgICAgICAgICAgICAgX19nbW9uX3N0YXJ0X18KKzAwMDAwMDAwICB3ICAgRCAgKlVORCoJMDAwMDAwMDAgICAgICAgICAgICAgIF9Kdl9SZWdpc3RlckNsYXNzZXMKKzAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDA0OTAgIEdMSUJDXzIuMCAgIHJlYWxsb2MKKzAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwM2YgIEdMSUJDXzIuMiAgIF9feHN0YXQ2NAorMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAzNSAgR0xJQkNfMi4wICAgbG9jYWx0aW1lCiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMTMyICBHTElCQ18yLjAgICBnZXRncm5hbQorMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDE2NyAgR0xJQkNfMi4wICAgc3RyY2hyCiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMGRjICBHTElCQ18yLjAgICBnZXRlbnYKKzAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAzMDQgIEdMSUJDXzIuMCAgIGNhbGxvYworMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDBjNiAgR0xJQkNfMi4wICAgc3RybmNweQorMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAyMyAgICAgICAgICAgICAgZnJlZWNvbgorMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDA1OCAgR0xJQkNfMi4wICAgbWVtc2V0CiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMWIyICBHTElCQ18yLjAgICBfX2xpYmNfc3RhcnRfbWFpbgorMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDA0NCAgR0xJQkNfMi4xICAgbWVtcGNweQorMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDBjOSAgR0xJQkNfMi4wICAgX29ic3RhY2tfYmVnaW4KKzAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAxYjkgIEdMSUJDXzIuMCAgIHN0cnJjaHIKKzAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwMzggIEdMSUJDXzIuMCAgIGNobW9kCiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMTUwICBHTElCQ18yLjAgICBfX2Fzc2VydF9mYWlsCiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDE1ICBHTElCQ18yLjAgICBiaW5kdGV4dGRvbWFpbgorMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDIxNSAgR0xJQkNfMi4wICAgbWJydG93YworMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDA0NiAgQUNMXzEuMCAgICAgYWNsX2RlbGV0ZV9kZWZfZmlsZQorMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAzOCAgR0xJQkNfMi4wICAgZ2V0dGltZW9mZGF5CiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDNjICBHTElCQ18yLjMgICBfX2N0eXBlX3RvdXBwZXJfbG9jCiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDNmICBHTElCQ18yLjIgICBfX2x4c3RhdDY0CiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMTk1ICBHTElCQ18yLjAgICBfb2JzdGFja19uZXdjaHVuaworMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDA2NiAgR0xJQkNfMi4wICAgX19vdmVyZmxvdworMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDA0OSAgR0xJQkNfMi4wICAgZGNnZXR0ZXh0CiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMTYwICBHTElCQ18yLjAgICBzaWdhY3Rpb24KKzAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAxMjcgIEdMSUJDXzIuMSAgIHN0cnZlcnNjbXAKKzAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwOTIgIEdMSUJDXzIuMCAgIG9wZW5kaXIKKzAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwNDcgIEdMSUJDXzIuMCAgIGdldG9wdF9sb25nCiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDNhICBHTElCQ18yLjAgICBpb2N0bAorMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAzYyAgR0xJQkNfMi4zICAgX19jdHlwZV9iX2xvYworMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDBjOSAgR0xJQkNfMi4wICAgaXN3Y250cmwKKzAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwMzIgIEdMSUJDXzIuMCAgIGlzYXR0eQorMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDFlOCAgR0xJQkNfMi4xICAgZmNsb3NlCiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDE5ICBHTElCQ18yLjAgICBtYnNpbml0CiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDM2ICBHTElCQ18yLjAgICBfc2V0am1wCiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDM4ICBHTElCQ18yLjAgICB0Y2dldHBncnAKKzAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwM2MgIEdMSUJDXzIuMCAgIG1rdGltZQorMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDBhZiAgR0xJQkNfMi4yICAgcmVhZGRpcjY0CiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDQ2ICBHTElCQ18yLjAgICBtZW1jcHkKKzAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwYWYgIEdMSUJDXzIuMCAgIHN0cmxlbgorMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDEzMiAgR0xJQkNfMi4wICAgZ2V0cHd1aWQKKzAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwOTQgIEFDTF8xLjAgICAgIGFjbF9leHRlbmRlZF9maWxlCiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMTk1ICBBQ0xfMS4wICAgICBhY2xfZ2V0X2ZpbGUKKzAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDA2YjUgIEdMSUJDXzIuMCAgIHNldGxvY2FsZQorMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAyYSAgQUNMXzEuMCAgICAgYWNsX2VudHJpZXMKKzAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwMjQgIEdMSUJDXzIuMCAgIHN0cmNweQorMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAzOSAgR0xJQkNfMi4wICAgcHJpbnRmCiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDhjICBHTElCQ18yLjAgICByYWlzZQorMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDBhMiAgR0xJQkNfMi4xICAgZndyaXRlX3VubG9ja2VkCiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMTE1ICBHTElCQ18yLjIgICBjbG9ja19nZXR0aW1lCiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDc1ICAgICAgICAgICAgICBnZXRmaWxlY29uCiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDU1ICBHTElCQ18yLjAgICBjbG9zZWRpcgorMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAyNCAgR0xJQkNfMi4wICAgZnByaW50ZgorMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDExNCAgQUNMXzEuMCAgICAgYWNsX3NldF9maWxlCiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDllICBHTElCQ18yLjAgICBzaWdwcm9jbWFzaworMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAyYSAgR0xJQkNfMi4yICAgX19mcGVuZGluZworMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDA3NSAgICAgICAgICAgICAgbGdldGZpbGVjb24KKzAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwZDcgIEdMSUJDXzIuMCAgIGVycm9yCiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMTMyICBHTElCQ18yLjAgICBnZXRncmdpZAorMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDA0NSAgR0xJQkNfMi4wICAgX19zdHJ0b3VsbF9pbnRlcm5hbAorMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDA2YSAgR0xJQkNfMi4wICAgc2lnYWRkc2V0CiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDNhICBHTElCQ18yLjAgICByZWFkbGluaworMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDA4ZSAgR0xJQkNfMi4wICAgbWVtbW92ZQorMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDAzYyAgR0xJQkNfMi4zICAgX19jdHlwZV90b2xvd2VyX2xvYworMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDA0NSAgR0xJQkNfMi4wICAgX19zdHJ0b3VsX2ludGVybmFsCiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMTFkICBHTElCQ18yLjAgICB0ZXh0ZG9tYWluCiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDNmICBHTElCQ18yLjIgICBfX2Z4c3RhdDY0CiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMmQ5ICBHTElCQ18yLjIuMyBmbm1hdGNoCiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMGYzICBHTElCQ18yLjAgICBzdHJuY21wCiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDA0MzczICBHTElCQ18yLjAgICB2ZnByaW50ZgorMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDA2ZSAgQUNMXzEuMCAgICAgYWNsX2ZyZWUKKzAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwNDIgIEdMSUJDXzIuMCAgIGZmbHVzaF91bmxvY2tlZAorMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDA0NSAgR0xJQkNfMi4wICAgc3RyZnRpbWUKKzAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwNzggIEdMSUJDXzIuMCAgIHdjd2lkdGgKKzAwMDAwMDAwICAgICAgREYgKlVORCoJMDAwMDAwY2IgIEdMSUJDXzIuMCAgIGlzd3ByaW50CiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMTMyICBHTElCQ18yLjAgICBnZXRwd25hbQorMDAwMDAwMDAgICAgICBERiAqVU5EKgkwMDAwMDA1NCAgR0xJQkNfMi4wICAgc3RyY21wCiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMGZhICBHTElCQ18yLjAgICBleGl0CiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwNGJjICBBQ0xfMS4wICAgICBhY2xfZnJvbV90ZXh0CiswMDAwMDAwMCAgICAgIERGICpVTkQqCTAwMDAwMDc1IHNpbmdsZXNwYWNlCiswODA1YmM5MCBnICAgIEQgICpBQlMqCTAwMDAwMDAwICBCYXNlICAgICAgICBfZW5kCiswODA1Yjg2MCBnICAgIERPIC5ic3MJMDAwMDAwMDQgIEdMSUJDXzIuMCAgIHN0ZG91dAorMDgwNWI4MmMgZyAgICBEICAqQUJTKgkwMDAwMDAwMCAgQmFzZSAgICAgICAgX2VkYXRhCiswODA1NjdhNCBnICAgIERPIC5yb2RhdGEJMDAwMDAwMDQgIEJhc2UgICAgICAgIF9JT19zdGRpbl91c2VkCiswODA0OTc4MCAgICAgIERGICpVTkQqCTAwMDAwMWU1ICBHTElCQ18yLjAgICBmcmVlCiswODA1Yjg0NCBnICAgIERPIC5ic3MJMDAwMDAwMDQgIEdMSUJDXzIuMCAgIHN0ZGVycgorMDgwNWI4MmMgZyAgICBEICAqQUJTKgkwMDAwMDAwMCAgQmFzZSAgICAgICAgX19ic3Nfc3RhcnQKKzA4MDQ5OWEwICAgICAgREYgKlVORCoJMDAwMDAxNzggIEdMSUJDXzIuMCAgIG1hbGxvYworMDgwNDk1MTAgZyAgICBERiAuaW5pdAkwMDAwMDAwMCAgQmFzZSAgICAgICAgX2luaXQKKzA4MDU2NzY4IGcgICAgREYgLmZpbmkJMDAwMDAwMDAgIEJhc2UgICAgICAgIF9maW5pCiswODA1Yjg0MCBnICAgIERPIC5ic3MJMDAwMDAwMDQgIEdMSUJDXzIuMCAgIG9wdGluZAorMDgwNWI4NjQgZyAgICBETyAuYnNzCTAwMDAwMDA0ICBHTElCQ18yLjAgICBvcHRhcmcKKworCitEWU5BTUlDIFJFTE9DQVRJT04gUkVDT1JEUworT0ZGU0VUICAgVFlQRSAgICAgICAgICAgICAgVkFMVUUgCiswODA1YjVkNCBSXzM4Nl9HTE9CX0RBVCAgICBfX2dtb25fc3RhcnRfXworMDgwNWI4YTAgUl8zODZfQ09QWSAgICAgICAgb3B0aW5kCiswODA1YjhhNCBSXzM4Nl9DT1BZICAgICAgICBzdGRlcnIKKzA4MDViOGMwIFJfMzg2X0NPUFkgICAgICAgIHN0ZG91dAorMDgwNWI4YzQgUl8zODZfQ09QWSAgICAgICAgb3B0YXJnCiswODA1YjVlOCBSXzM4Nl9KVU1QX1NMT1QgICBhYm9ydAorMDgwNWI1ZWMgUl8zODZfSlVNUF9TTE9UICAgX19lcnJub19sb2NhdGlvbgorMDgwNWI1ZjAgUl8zODZfSlVNUF9TTE9UICAgc2lnZW1wdHlzZXQKKzA4MDViNWY0IFJfMzg2X0pVTVBfU0xPVCAgIHNwcmludGYKKzA4MDViNWY4IFJfMzg2X0pVTVBfU0xPVCAgIGxvY2FsZWNvbnYKKzA4MDViNWZjIFJfMzg2X0pVTVBfU0xPVCAgIGRpcmZkCiswODA1YjYwMCBSXzM4Nl9KVU1QX1NMT1QgICBfX2N4YV9hdGV4aXQKKzA4MDViNjA0IFJfMzg2X0pVTVBfU0xPVCAgIHN0cmNvbGwKKzA4MDViNjA4IFJfMzg2X0pVTVBfU0xPVCAgIHFzb3J0CiswODA1YjYwYyBSXzM4Nl9KVU1QX1NMT1QgICBmcHV0c191bmxvY2tlZAorMDgwNWI2MTAgUl8zODZfSlVNUF9TTE9UICAgX19jdHlwZV9nZXRfbWJfY3VyX21heAorMDgwNWI2MTQgUl8zODZfSlVNUF9TTE9UICAgc2lnbmFsCiswODA1YjYxOCBSXzM4Nl9KVU1QX1NMT1QgICBzaWdpc21lbWJlcgorMDgwNWI2MWMgUl8zODZfSlVNUF9TTE9UICAgX19nbW9uX3N0YXJ0X18KKzA4MDViNjIwIFJfMzg2X0pVTVBfU0xPVCAgIHJlYWxsb2MKKzA4MDViNjI0IFJfMzg2X0pVTVBfU0xPVCAgIF9feHN0YXQ2NAorMDgwNWI2MjggUl8zODZfSlVNUF9TTE9UICAgbG9jYWx0aW1lCiswODA1YjYyYyBSXzM4Nl9KVU1QX1NMT1QgICBnZXRncm5hbQorMDgwNWI2MzAgUl8zODZfSlVNUF9TTE9UICAgc3RyY2hyCiswODA1YjYzNCBSXzM4Nl9KVU1QX1NMT1QgICBnZXRlbnYKKzA4MDViNjM4IFJfMzg2X0pVTVBfU0xPVCAgIGNhbGxvYworMDgwNWI2M2MgUl8zODZfSlVNUF9TTE9UICAgc3RybmNweQorMDgwNWI2NDAgUl8zODZfSlVNUF9TTE9UICAgZnJlZWNvbgorMDgwNWI2NDQgUl8zODZfSlVNUF9TTE9UICAgbWVtc2V0CiswODA1YjY0OCBSXzM4Nl9KVU1QX1NMT1QgICBfX2xpYmNfc3RhcnRfbWFpbgorMDgwNWI2NGMgUl8zODZfSlVNUF9TTE9UICAgbWVtcGNweQorMDgwNWI2NTAgUl8zODZfSlVNUF9TTE9UICAgX29ic3RhY2tfYmVnaW4KKzA4MDViNjU0IFJfMzg2X0pVTVBfU0xPVCAgIHN0cnJjaHIKKzA4MDViNjU4IFJfMzg2X0pVTVBfU0xPVCAgIGNobW9kCiswODA1YjY1YyBSXzM4Nl9KVU1QX1NMT1QgICBfX2Fzc2VydF9mYWlsCiswODA1YjY2MCBSXzM4Nl9KVU1QX1NMT1QgICBiaW5kdGV4dGRvbWFpbgorMDgwNWI2NjQgUl8zODZfSlVNUF9TTE9UICAgbWJydG93YworMDgwNWI2NjggUl8zODZfSlVNUF9TTE9UICAgYWNsX2RlbGV0ZV9kZWZfZmlsZQorMDgwNWI2NmMgUl8zODZfSlVNUF9TTE9UICAgZ2V0dGltZW9mZGF5CiswODA1YjY3MCBSXzM4Nl9KVU1QX1NMT1QgICBfX2N0eXBlX3RvdXBwZXJfbG9jCiswODA1YjY3NCBSXzM4Nl9KVU1QX1NMT1QgICBmcmVlCiswODA1YjY3OCBSXzM4Nl9KVU1QX1NMT1QgICBfX2x4c3RhdDY0CiswODA1YjY3YyBSXzM4Nl9KVU1QX1NMT1QgICBfb2JzdGFja19uZXdjaHVuaworMDgwNWI2ODAgUl8zODZfSlVNUF9TTE9UICAgX19vdmVyZmxvdworMDgwNWI2ODQgUl8zODZfSlVNUF9TTE9UICAgZGNnZXR0ZXh0CiswODA1YjY4OCBSXzM4Nl9KVU1QX1NMT1QgICBzaWdhY3Rpb24KKzA4MDViNjhjIFJfMzg2X0pVTVBfU0xPVCAgIHN0cnZlcnNjbXAKKzA4MDViNjkwIFJfMzg2X0pVTVBfU0xPVCAgIG9wZW5kaXIKKzA4MDViNjk0IFJfMzg2X0pVTVBfU0xPVCAgIGdldG9wdF9sb25nCiswODA1YjY5OCBSXzM4Nl9KVU1QX1NMT1QgICBpb2N0bAorMDgwNWI2OWMgUl8zODZfSlVNUF9TTE9UICAgX19jdHlwZV9iX2xvYworMDgwNWI2YTAgUl8zODZfSlVNUF9TTE9UICAgaXN3Y250cmwKKzA4MDViNmE0IFJfMzg2X0pVTVBfU0xPVCAgIGlzYXR0eQorMDgwNWI2YTggUl8zODZfSlVNUF9TTE9UICAgZmNsb3NlCiswODA1YjZhYyBSXzM4Nl9KVU1QX1NMT1QgICBtYnNpbml0CiswODA1YjZiMCBSXzM4Nl9KVU1QX1NMT1QgICBfc2V0am1wCiswODA1YjZiNCBSXzM4Nl9KVU1QX1NMT1QgICB0Y2dldHBncnAKKzA4MDViNmI4IFJfMzg2X0pVTVBfU0xPVCAgIG1rdGltZQorMDgwNWI2YmMgUl8zODZfSlVNUF9TTE9UICAgcmVhZGRpcjY0CiswODA1YjZjMCBSXzM4Nl9KVU1QX1NMT1QgICBtZW1jcHkKKzA4MDViNmM0IFJfMzg2X0pVTVBfU0xPVCAgIHN0cnRvdWwKKzA4MDViNmM4IFJfMzg2X0pVTVBfU0xPVCAgIHN0cmxlbgorMDgwNWI2Y2MgUl8zODZfSlVNUF9TTE9UICAgZ2V0cHd1aWQKKzA4MDViNmQwIFJfMzg2X0pVTVBfU0xPVCAgIGFjbF9leHRlbmRlZF9maWxlCiswODA1YjZkNCBSXzM4Nl9KVU1QX1NMT1QgICBhY2xfZ2V0X2ZpbGUKKzA4MDViNmQ4IFJfMzg2X0pVTVBfU0xPVCAgIHNldGxvY2FsZQorMDgwNWI2ZGMgUl8zODZfSlVNUF9TTE9UICAgYWNsX2VudHJpZXMKKzA4MDViNmUwIFJfMzg2X0pVTVBfU0xPVCAgIHN0cmNweQorMDgwNWI2ZTQgUl8zODZfSlVNUF9TTE9UICAgcHJpbnRmCiswODA1YjZlOCBSXzM4Nl9KVU1QX1NMT1QgICByYWlzZQorMDgwNWI2ZWMgUl8zODZfSlVNUF9TTE9UICAgZndyaXRlX3VubG9ja2VkCiswODA1YjZmMCBSXzM4Nl9KVU1QX1NMT1QgICBjbG9ja19nZXR0aW1lCiswODA1YjZmNCBSXzM4Nl9KVU1QX1NMT1QgICBnZXRmaWxlY29uCiswODA1YjZmOCBSXzM4Nl9KVU1QX1NMT1QgICBjbG9zZWRpcgorMDgwNWI2ZmMgUl8zODZfSlVNUF9TTE9UICAgZnByaW50ZgorMDgwNWI3MDAgUl8zODZfSlVNUF9TTE9UICAgbWFsbG9jCiswODA1YjcwNCBSXzM4Nl9KVU1QX1NMT1QgICBhY2xfc2V0X2ZpbGUKKzA4MDViNzA4IFJfMzg2X0pVTVBfU0xPVCAgIHNpZ3Byb2NtYXNrCiswODA1YjcwYyBSXzM4Nl9KVU1QX1NMT1QgICBfX2ZwZW5kaW5nCiswODA1YjcxMCBSXzM4Nl9KVU1QX1NMT1QgICBsZ2V0ZmlsZWNvbgorMDgwNWI3MTQgUl8zODZfSlVNUF9TTE9UICAgZXJyb3IKKzA4MDViNzE4IFJfMzg2X0pVTVBfU0xPVCAgIGdldGdyZ2lkCiswODA1YjcxYyBSXzM4Nl9KVU1QX1NMT1QgICBfX3N0cnRvdWxsX2ludGVybmFsCiswODA1YjcyMCBSXzM4Nl9KVU1QX1NMT1QgICBzaWdhZGRzZXQKKzA4MDViNzI0IFJfMzg2X0pVTVBfU0xPVCAgIHJlYWRsaW5rCiswODA1YjcyOCBSXzM4Nl9KVU1QX1NMT1QgICBtZW1tb3ZlCiswODA1YjcyYyBSXzM4Nl9KVU1QX1NMT1QgICBfX2N0eXBlX3RvbG93ZXJfbG9jCiswODA1YjczMCBSXzM4Nl9KVU1QX1NMT1QgICB0ZXh0ZG9tYWluCiswODA1YjczNCBSXzM4Nl9KVU1QX1NMT1QgICBfX2Z4c3RhdDY0CiswODA1YjczOCBSXzM4Nl9KVU1QX1NMT1QgICBmbm1hdGNoCiswODA1YjczYyBSXzM4Nl9KVU1QX1NMT1QgICBzdHJuY21wCiswODA1Yjc0MCBSXzM4Nl9KVU1QX1NMT1QgICB2ZnByaW50ZgorMDgwNWI3NDQgUl8zODZfSlVNUF9TTE9UICAgYWNsX2ZyZWUKKzA4MDViNzQ4IFJfMzg2X0pVTVBfU0xPVCAgIGZmbHVzaF91bmxvY2tlZAorMDgwNWI3NGMgUl8zODZfSlVNUF9TTE9UICAgc3RyZnRpbWUKKzA4MDViNzUwIFJfMzg2X0pVTVBfU0xPVCAgIHdjd2lkdGgKKzA4MDViNzU0IFJfMzg2X0pVTVBfU0xPVCAgIGlzd3ByaW50CiswODA1Yjc1OCBSXzM4Nl9KVU1QX1NMT1QgICBnZXRwd25hbQorMDgwNWI3NWMgUl8zODZfSlVNUF9TTE9UICAgc3RyY21wCiswODA1Yjc2MCBSXzM4Nl9KVU1QX1NMT1QgICBleGl0CiswODA1Yjc2NCBSXzM4Nl9KVU1QX1NMT1QgICBhY2xfZnJvbV90ZXh0CisKKwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3QvMjAwX0Rwa2dfU2hsaWJzL3BhdHRlcm5zLmNwcCBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90LzIwMF9EcGtnX1NobGlicy9wYXR0ZXJucy5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZGE4ZTFhMwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90LzIwMF9EcGtnX1NobGlicy9wYXR0ZXJucy5jcHAKQEAgLTAsMCArMSwxMDcgQEAKKyNkZWZpbmUgRVhQT1JUKHgpIHgge30KKworbmFtZXNwYWNlIE5TQQoreworICAgIGNsYXNzIENsYXNzQQorICAgIHsKKwlwcml2YXRlOgorCSAgICBjbGFzcyBQcml2YXRlCisJICAgIHsKKwkJcHVibGljOgorCQkgICAgUHJpdmF0ZSgpOworCQkgICAgdmlydHVhbCB+UHJpdmF0ZSgpOworCQkgICAgdm9pZCBwcml2bWV0aG9kMShpbnQpOworCQkgICAgdm9pZCBwcml2bWV0aG9kMihpbnQpOworCSAgICB9OworCSAgICBQcml2YXRlKiBwOworCSAgICBjbGFzcyBJbnRlcm5hbAorCSAgICB7CisJCXB1YmxpYzoKKwkJICAgIEludGVybmFsKCk7CisJCSAgICB2aXJ0dWFsIH5JbnRlcm5hbCgpOworCQkgICAgdm9pZCBpbnRlcm5hbF9tZXRob2QxKGNoYXIpOworCQkgICAgdm9pZCBpbnRlcm5hbF9tZXRob2QyKGNoYXIpOworCSAgICB9OworCSAgICBJbnRlcm5hbCogaTsKKwlwdWJsaWM6CisJICAgIENsYXNzQSgpOworCSAgICB2aXJ0dWFsIH5DbGFzc0EoKTsKKwkgICAgdmlydHVhbCB2b2lkIGdlbmVyYXRlX3Z0KGNvbnN0IGNoYXIqKSBjb25zdDsKKyAgICB9OworCisgICAgRVhQT1JUKENsYXNzQTo6UHJpdmF0ZTo6UHJpdmF0ZSgpKTsKKyAgICBFWFBPUlQoQ2xhc3NBOjpQcml2YXRlOjp+UHJpdmF0ZSgpKTsKKyAgICBFWFBPUlQodm9pZCBDbGFzc0E6OlByaXZhdGU6OnByaXZtZXRob2QxKGludCkpOworICAgIEVYUE9SVCh2b2lkIENsYXNzQTo6UHJpdmF0ZTo6cHJpdm1ldGhvZDIoaW50KSk7CisKKyAgICBFWFBPUlQoQ2xhc3NBOjpJbnRlcm5hbDo6SW50ZXJuYWwoKSk7CisgICAgRVhQT1JUKENsYXNzQTo6SW50ZXJuYWw6On5JbnRlcm5hbCgpKTsKKyAgICBFWFBPUlQodm9pZCBDbGFzc0E6OkludGVybmFsOjppbnRlcm5hbF9tZXRob2QxKGNoYXIpKTsKKyAgICBFWFBPUlQodm9pZCBDbGFzc0E6OkludGVybmFsOjppbnRlcm5hbF9tZXRob2QyKGNoYXIpKTsKKworICAgIEVYUE9SVChDbGFzc0E6OkNsYXNzQSgpKTsKKyAgICBFWFBPUlQoQ2xhc3NBOjp+Q2xhc3NBKCkpOworICAgIEVYUE9SVCh2b2lkIENsYXNzQTo6Z2VuZXJhdGVfdnQoY29uc3QgY2hhciopIGNvbnN0KTsKK307CisKK2NsYXNzIENsYXNzQgoreworICAgIHB1YmxpYzoKKwlDbGFzc0IoKTsKKwl2aXJ0dWFsIH5DbGFzc0IoKTsKKwl2aXJ0dWFsIHZvaWQgZ2VuZXJhdGVfdnQoY29uc3QgY2hhciopIGNvbnN0OworfTsKKworRVhQT1JUKENsYXNzQjo6Q2xhc3NCKCkpOworRVhQT1JUKENsYXNzQjo6fkNsYXNzQigpKTsKK0VYUE9SVCh2b2lkIENsYXNzQjo6Z2VuZXJhdGVfdnQoY29uc3QgY2hhciopIGNvbnN0KTsKKworY2xhc3MgQ2xhc3NDCit7CisgICAgcHVibGljOgorCUNsYXNzQygpOworCXZpcnR1YWwgfkNsYXNzQygpOworCXZpcnR1YWwgdm9pZCBnZW5lcmF0ZV92dChjb25zdCBjaGFyKikgY29uc3Q7Cit9OworCitFWFBPUlQoQ2xhc3NDOjpDbGFzc0MoKSk7CitFWFBPUlQoQ2xhc3NDOjp+Q2xhc3NDKCkpOworRVhQT1JUKHZvaWQgQ2xhc3NDOjpnZW5lcmF0ZV92dChjb25zdCBjaGFyKikgY29uc3QpOworCituYW1lc3BhY2UgTlNCCit7CisgICAgY2xhc3MgQ2xhc3NEIDogcHVibGljIE5TQTo6Q2xhc3NBLCBwdWJsaWMgQ2xhc3NCLCBwdWJsaWMgQ2xhc3NDCisgICAgeworCXB1YmxpYzoKKwkgICAgQ2xhc3NEKCk7CisJICAgIHZpcnR1YWwgfkNsYXNzRCgpOworCSAgICB2aXJ0dWFsIHZvaWQgZ2VuZXJhdGVfdnQoY29uc3QgY2hhciopIGNvbnN0OworICAgIH07CisKKyAgICBFWFBPUlQoQ2xhc3NEOjpDbGFzc0QoKSk7CisgICAgRVhQT1JUKENsYXNzRDo6fkNsYXNzRCgpKTsKKyAgICBFWFBPUlQodm9pZCBDbGFzc0Q6OmdlbmVyYXRlX3Z0KGNvbnN0IGNoYXIqKSBjb25zdCk7CisKKyAgICBjbGFzcyBTeW12ZXIgeworCXB1YmxpYzoKKwkgICAgU3ltdmVyKCk7CisJICAgIH5TeW12ZXIoKTsKKworCSAgICB2b2lkIHN5bXZlcl9tZXRob2QxKCk7CisJICAgIHZvaWQgc3ltdmVyX21ldGhvZDIoKTsKKyAgICB9OworCisgICAgRVhQT1JUKFN5bXZlcjo6U3ltdmVyKCkpOworICAgIEVYUE9SVChTeW12ZXI6On5TeW12ZXIoKSk7CisgICAgRVhQT1JUKHZvaWQgU3ltdmVyOjpzeW12ZXJfbWV0aG9kMSgpKTsKKyAgICBFWFBPUlQodm9pZCBTeW12ZXI6OnN5bXZlcl9tZXRob2QyKCkpOworCisgICAgY2xhc3MgU3ltdmVyT3B0aW9uYWwgeworCXB1YmxpYzoKKwkgICAgU3ltdmVyT3B0aW9uYWwoKTsKKwkgICAgflN5bXZlck9wdGlvbmFsKCk7CisgICAgfTsKKworICAgIEVYUE9SVChTeW12ZXJPcHRpb25hbDo6U3ltdmVyT3B0aW9uYWwoKSk7CisgICAgRVhQT1JUKFN5bXZlck9wdGlvbmFsOjp+U3ltdmVyT3B0aW9uYWwoKSk7Cit9OwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3QvMjAwX0Rwa2dfU2hsaWJzL3BhdHRlcm5zLm1hcCBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90LzIwMF9EcGtnX1NobGlicy9wYXR0ZXJucy5tYXAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYWNlMzBiNwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90LzIwMF9EcGtnX1NobGlicy9wYXR0ZXJucy5tYXAKQEAgLTAsMCArMSw5IEBACitTWU1WRVJfMSB7CisJZ2xvYmFsOgorCQlfWk4zTlNCNlN5bXZlcio7Cit9OworCitTWU1WRVJPUFRfMiB7CisJZ2xvYmFsOgorCQlfWk4zTlNCMTRTeW12ZXJPcHRpb25hbCo7Cit9OwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3QvMjAwX0Rwa2dfU2hsaWJzL3BhdHRlcm5zLnN5bWJvbHMgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvdC8yMDBfRHBrZ19TaGxpYnMvcGF0dGVybnMuc3ltYm9scwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iYWNmNzk5Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3QvMjAwX0Rwa2dfU2hsaWJzL3BhdHRlcm5zLnN5bWJvbHMKQEAgLTAsMCArMSw0NyBAQAorbGlicGF0dGVybnMuc28uMSBsaWJwYXR0ZXJuczEgI01JTlZFUiMKKyAoYysrfHJlZ2V4fG9wdGlvbmFsKU5TQTo6Q2xhc3NBOjpQcml2YXRlKDo6LiopP0BCYXNlIDEucHJpdmF0ZQorIChjKyspTlNCOjpTeW12ZXI6OnN5bXZlcl9tZXRob2QyKClAU1lNVkVSXzEgMS5tZXRob2QyCisgKHN5bXZlcnxvcHRpb25hbClTWU1WRVJPUFRfMiAyCisgU1lNVkVST1BUXzJAU1lNVkVST1BUXzIgMgorIChjKyt8c3ltdmVyKVNZTVZFUl8xIDEuZ2VuZXJpYworIFNZTVZFUl8xQFNZTVZFUl8xIDEKKyAocmVnZXh8YysrKV5fWihUW0lTVl0pP04zTlNBNkNsYXNzQThJbnRlcm5hbC4qQEJhc2UkIDEuaW50ZXJuYWwKKyBfWk4zTlNBNkNsYXNzQUMxRXZAQmFzZSAxCisgX1pOM05TQTZDbGFzc0FDMkV2QEJhc2UgMQorIF9aTjNOU0E2Q2xhc3NBRDBFdkBCYXNlIDEKKyBfWk4zTlNBNkNsYXNzQUQxRXZAQmFzZSAxCisgX1pOM05TQTZDbGFzc0FEMkV2QEJhc2UgMQorIF9aTjNOU0I2Q2xhc3NEQzFFdkBCYXNlIDEKKyBfWk4zTlNCNkNsYXNzREMyRXZAQmFzZSAxCisgX1pOM05TQjZDbGFzc0REMEV2QEJhc2UgMQorIF9aTjNOU0I2Q2xhc3NERDFFdkBCYXNlIDEKKyBfWk4zTlNCNkNsYXNzREQyRXZAQmFzZSAxCisgX1pOM05TQjZTeW12ZXIxNHN5bXZlcl9tZXRob2QxRXZAU1lNVkVSXzEgMS5tZXRob2QxCisgX1pONkNsYXNzQkMxRXZAQmFzZSAxCisgX1pONkNsYXNzQkMyRXZAQmFzZSAxCisgX1pONkNsYXNzQkQwRXZAQmFzZSAxCisgX1pONkNsYXNzQkQxRXZAQmFzZSAxCisgX1pONkNsYXNzQkQyRXZAQmFzZSAxCisgX1pONkNsYXNzQ0MxRXZAQmFzZSAxCisgX1pONkNsYXNzQ0MyRXZAQmFzZSAxCisgX1pONkNsYXNzQ0QwRXZAQmFzZSAxCisgX1pONkNsYXNzQ0QxRXZAQmFzZSAxCisgX1pONkNsYXNzQ0QyRXZAQmFzZSAxCisgX1pOSzNOU0E2Q2xhc3NBMTFnZW5lcmF0ZV92dEVQS2NAQmFzZSAxCisgX1pOSzNOU0I2Q2xhc3NEMTFnZW5lcmF0ZV92dEVQS2NAQmFzZSAxCisgX1pOSzZDbGFzc0IxMWdlbmVyYXRlX3Z0RVBLY0BCYXNlIDEKKyBfWk5LNkNsYXNzQzExZ2VuZXJhdGVfdnRFUEtjQEJhc2UgMQorIF9aVEk2Q2xhc3NCQEJhc2UgMQorIF9aVEk2Q2xhc3NDQEJhc2UgMQorIF9aVElOM05TQTZDbGFzc0FFQEJhc2UgMQorIF9aVElOM05TQjZDbGFzc0RFQEJhc2UgMQorIF9aVFM2Q2xhc3NCQEJhc2UgMQorIF9aVFM2Q2xhc3NDQEJhc2UgMQorIF9aVFNOM05TQTZDbGFzc0FFQEJhc2UgMQorIF9aVFNOM05TQjZDbGFzc0RFQEJhc2UgMQorIF9aVFY2Q2xhc3NCQEJhc2UgMQorIF9aVFY2Q2xhc3NDQEJhc2UgMQorIF9aVFZOM05TQTZDbGFzc0FFQEJhc2UgMQorIF9aVFZOM05TQjZDbGFzc0RFQEJhc2UgMQorIChjKyspIm5vbi12aXJ0dWFsIHRodW5rIHRvIE5TQjo6Q2xhc3NEOjpnZW5lcmF0ZV92dChjaGFyIGNvbnN0KikgY29uc3RAQmFzZSIgMQorIChjKyspIm5vbi12aXJ0dWFsIHRodW5rIHRvIE5TQjo6Q2xhc3NEOjp+Q2xhc3NEKClAQmFzZSIgMQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3QvMjAwX0Rwa2dfU2hsaWJzL3N5bWJvbHMuZmFrZS0xIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3QvMjAwX0Rwa2dfU2hsaWJzL3N5bWJvbHMuZmFrZS0xCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmYwYTIzMGUKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvdC8yMDBfRHBrZ19TaGxpYnMvc3ltYm9scy5mYWtlLTEKQEAgLTAsMCArMSwzIEBACisgc3ltYm9sMV9mYWtlMUBCYXNlIDEuMAorIHN5bWJvbDJfZmFrZTFAQmFzZSAxLjAKKyBzeW1ib2wzX2Zha2UxQEJhc2UgMS4wCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvdC8yMDBfRHBrZ19TaGxpYnMvc3ltYm9scy5mYWtlLTIgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvdC8yMDBfRHBrZ19TaGxpYnMvc3ltYm9scy5mYWtlLTIKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uM2VlZDI4OQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90LzIwMF9EcGtnX1NobGlicy9zeW1ib2xzLmZha2UtMgpAQCAtMCwwICsxLDkgQEAKKyNpbmNsdWRlICJzeW1ib2xzLmluY2x1ZGUtMiIKKyMgVGhpcyBpcyBqdXN0IGEgY29tbWVudAorbGliZmFrZS5zby4xICNQQUNLQUdFIyAjTUlOVkVSIworKiBCdWlsZC1EZXBlbmRzLVBhY2thZ2U6IGxpYmZha2UtZGV2CisjIFRoZSBhbHRlcm5hdGUgZGVwZW5kZW5jeSBpcyBiZWxvdworfCBsaWJ2aXJ0dWFsZmFrZQorIHN5bWJvbDFfZmFrZTJAQmFzZSAxLjAgMQorIHN5bWJvbDJfZmFrZTJAQmFzZSAxLjAKKyBzeW1ib2wzX2Zha2UyQEJhc2UgMS4xCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvdC8yMDBfRHBrZ19TaGxpYnMvc3ltYm9scy5mYWtlLTMgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvdC8yMDBfRHBrZ19TaGxpYnMvc3ltYm9scy5mYWtlLTMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNTc2YmYyMgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90LzIwMF9EcGtnX1NobGlicy9zeW1ib2xzLmZha2UtMwpAQCAtMCwwICsxLDUgQEAKKyMgaWYgaW5jbHVkZWQsIHRoaXMgZmlsZSB3aWxsIGNoYW5nZSB0aGUgY3VycmVudCAib2JqZWN0IiBwYXJzZWQKKyMgYWZ0ZXIgdGhlIGluY2x1ZGUgaXQgd2lsbCBiZSBsaWJkaXZlcnQuc28uMSBpbnN0ZWFkIG9mIHRoZSBvYmplY3QKKyMgb2YgdGhlIGluY2x1ZGluZyBzeW1ib2xzIGZpbGUKK2xpYmRpdmVydC5zby4xIGxpYmRpdmVydDEgI01JTlZFUiMKKyBkaXZlcnRfc29tZXRoaW5nQEJhc2UgMS4wCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvdC8yMDBfRHBrZ19TaGxpYnMvc3ltYm9scy5pbmNsdWRlLTEgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvdC8yMDBfRHBrZ19TaGxpYnMvc3ltYm9scy5pbmNsdWRlLTEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjUyNGU3OAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90LzIwMF9EcGtnX1NobGlicy9zeW1ib2xzLmluY2x1ZGUtMQpAQCAtMCwwICsxLDkgQEAKK2xpYmZha2Uuc28uMSBsaWJmYWtlMSAjTUlOVkVSIworIHN5bWJvbDFfZmFrZTFAQmFzZSAwLjkKKyBzeW1ib2wyX2Zha2UxQEJhc2UgMC45Cisgc3ltYm9sX2JlZm9yZUBCYXNlIDAuOQorI2luY2x1ZGUgInN5bWJvbHMuZmFrZS0xIgorIHN5bWJvbDNfZmFrZTFAQmFzZSAwCisgc3ltYm9sX2FmdGVyQEJhc2UgMS4xCisjaW5jbHVkZSAic3ltYm9scy5mYWtlLTMiCisgc3ltYm9sX2luX2xpYmRpdmVydEBCYXNlIDEuMH5iZXRhMQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3QvMjAwX0Rwa2dfU2hsaWJzL3N5bWJvbHMuaW5jbHVkZS0yIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3QvMjAwX0Rwa2dfU2hsaWJzL3N5bWJvbHMuaW5jbHVkZS0yCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjBjYzE4ZmEKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvdC8yMDBfRHBrZ19TaGxpYnMvc3ltYm9scy5pbmNsdWRlLTIKQEAgLTAsMCArMSwzIEBACitsaWJmYWtlLnNvLjEgbGliZmFrZTEKKyBzeW1ib2wxX2Zha2UyQEJhc2UgMC41CisjaW5jbHVkZSAic3ltYm9scy5mYWtlLTIiCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvdC8yMDBfRHBrZ19TaGxpYnMvc3ltYm9scy5pbmNsdWRlLTMgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvdC8yMDBfRHBrZ19TaGxpYnMvc3ltYm9scy5pbmNsdWRlLTMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOGM4ZjQyOQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90LzIwMF9EcGtnX1NobGlicy9zeW1ib2xzLmluY2x1ZGUtMwpAQCAtMCwwICsxLDUgQEAKK2xpYmJhc2ljdGFncy5zby4yIGxpYmJhc2ljdGFnczIKKyBzeW1ib2wwX2JlZm9yZUBCYXNlIDEuMAorKG9wdGlvbmFsfHJhbmRvbSB0YWc9cmFuZG9tIHZhbHVlKSNpbmNsdWRlICJzeW1ib2xzLmZha2UtMSIKKyBzeW1ib2w5X2FmdGVyQEJhc2UgMS4wCisob3B0aW9uYWw9ZnJvbSBwYXJlbnR8dD12KSNpbmNsdWRlICJiYXNpY3RhZ3Muc3ltYm9scyIKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90LzMwMF9EcGtnX0J1aWxkT3B0aW9ucy50IGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3QvMzAwX0Rwa2dfQnVpbGRPcHRpb25zLnQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTcxNTU0OQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90LzMwMF9EcGtnX0J1aWxkT3B0aW9ucy50CkBAIC0wLDAgKzEsNzIgQEAKKyMgLSotIG1vZGU6IGNwZXJsOy0qLQorIworIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorIworIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorIworIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKwordXNlIFRlc3Q6Ok1vcmUgdGVzdHMgPT4gMjQ7Cit1c2UgRHBrZzo6RXJyb3JIYW5kbGluZzsKKwordXNlIHN0cmljdDsKK3VzZSB3YXJuaW5nczsKKwordXNlX29rKCdEcGtnOjpCdWlsZE9wdGlvbnMnKTsKKworeworICAgIG5vIHdhcm5pbmdzOworICAgICMgRGlzYWJsZSB3YXJuaW5ncyByZWxhdGVkIHRvIGludmFsaWQgdmFsdWVzIGZlZCBkdXJpbmcKKyAgICAjIHRoZSB0ZXN0cworICAgIHJlcG9ydF9vcHRpb25zKHF1aWV0X3dhcm5pbmdzID0+IDEpOworfQorCiskRU5We0RFQl9CVUlMRF9PUFRJT05TfSA9ICdub29wdCBmb29ub3N0cmlwYmFyIHBhcmFsbGVsPTMgYmF6Tk9DSEVDSyc7CisKK215ICRkYm8gPSBEcGtnOjpCdWlsZE9wdGlvbnMtPm5ldygpOworb2soJGRiby0+aGFzKCJub29wdCIpLCAiaGFzIG5vb3B0Iik7CitpcygkZGJvLT5nZXQoIm5vb3B0IiksIHVuZGVmLCAibm9vcHQgdmFsdWUiKTsKK29rKCRkYm8tPmhhcygiZm9vbm9zdHJpcGJhciIpLCAiaGFzIGZvb25vc3RyaXBiYXIiKTsKK2lzKCRkYm8tPmdldCgiZm9vbm9zdHJpcGJhciIpLCB1bmRlZiwgImZvb25vc3RyaXBiYXIgdmFsdWUiKTsKK29rKCRkYm8tPmhhcygicGFyYWxsZWwiKSwgImhhcyBwYXJhbGxlbCIpOworaXMoJGRiby0+Z2V0KCJwYXJhbGxlbCIpLCAzLCAicGFyYWxsZWwgdmFsdWUiKTsKK29rKCEkZGJvLT5oYXMoImJhek5PQ0hFQ0siKSwgIm5vdCBoYXMgYmF6Tk9DSEVDSyIpOworCiskZGJvLT5yZXNldCgpOworJGRiby0+bWVyZ2UoJ25vIG9wdCBuby1zdHJpcCBwYXJhbGxlbCA9IDUgbm9jaGVjaycsICd0ZXN0Jyk7CitvaygkZGJvLT5oYXMoJ25vJyksICJoYXMgbm8iKTsKK2lzKCRkYm8tPmdldCgnbm8nKSwgdW5kZWYsICJubyB2YWx1ZSIpOworb2soJGRiby0+aGFzKCdvcHQnKSwgImhhcyBvcHQiKTsKK2lzKCRkYm8tPmdldCgnb3B0JyksIHVuZGVmLCAib3B0IHZhbHVlIik7CitvaygkZGJvLT5oYXMoJ25vLXN0cmlwJyksICJoYXMgbm8tc3RyaXAiKTsKK2lzKCRkYm8tPmdldCgnbm8tc3RyaXAnKSwgdW5kZWYsICJuby1zdHJpcCB2YWx1ZSIpOworb2soJGRiby0+aGFzKCdwYXJhbGxlbCcpLCAiaGFzIHBhcmFsbGVsIik7CitpcygkZGJvLT5nZXQoJ3BhcmFsbGVsJyksICcnLCAicGFyYWxsZWwgdmFsdWUiKTsKK29rKCRkYm8tPmhhcygnbm9jaGVjaycpLCAiaGFzIG5vY2hlY2siKTsKK2lzKCRkYm8tPmdldCgnbm9jaGVjaycpLCB1bmRlZiwgIm5vY2hlY2sgdmFsdWUiKTsKKworJGRiby0+cmVzZXQoKTsKKyRkYm8tPnNldCgncGFyYWxsZWwnLCA1KTsKKyRkYm8tPnNldCgnbm9vcHQnLCB1bmRlZik7CisKK215ICRlbnYgPSAkZGJvLT5leHBvcnQoKTsKK2lzKCRlbnYsICJub29wdCBwYXJhbGxlbD01IiwgInZhbHVlIG9mIGV4cG9ydCIpOworaXMoJEVOVntERUJfQlVJTERfT1BUSU9OU30sICRlbnYsICdlbnYgbWF0Y2ggcmV0dXJuIHZhbHVlIG9mIGV4cG9ydCcpOworJGVudiA9ICRkYm8tPmV4cG9ydCgiT1RIRVJfVkFSSUFCTEUiKTsKK2lzKCRFTlZ7T1RIRVJfVkFSSUFCTEV9LCAkZW52LCAnZXhwb3J0IHRvIG90aGVyIHZhcmlhYmxlJyk7CisKKyRFTlZ7REVCX0JVSUxEX09QVElPTlN9ID0gJ2Zvb2Jhcic7CiskZGJvID0gRHBrZzo6QnVpbGRPcHRpb25zLT5uZXcoKTsKKyRkYm8tPnNldCgibm9vcHQiLCAxKTsKK2lzKCRkYm8tPm91dHB1dCgpLCAiZm9vYmFyIG5vb3B0IiwgIm91dHB1dCIpOworCiskZGJvID0gRHBrZzo6QnVpbGRPcHRpb25zLT5uZXcoZW52dmFyID0+ICJPVEhFUl9WQVJJQUJMRSIpOworaXMoJGRiby0+Z2V0KCJwYXJhbGxlbCIpLCA1LCAiaW1wb3J0IGZyb20gb3RoZXIgdmFyaWFibGUsIGNoZWNrIHBhcmFsbGVsIik7CitvaygkZGJvLT5oYXMoIm5vb3B0IiksICJpbXBvcnQgZnJvbSBvdGhlciB2YXJpYWJsZSwgY2hlY2sgbm9vcHQiKTsKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90LzQwMF9EcGtnX0RlcHMudCBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90LzQwMF9EcGtnX0RlcHMudApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lOGQ5NWYxCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3QvNDAwX0Rwa2dfRGVwcy50CkBAIC0wLDAgKzEsODcgQEAKKyMgLSotIG1vZGU6IGNwZXJsOy0qLQorIworIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorIworIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorIworIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKwordXNlIFRlc3Q6Ok1vcmUgdGVzdHMgPT4gMTg7CisKK3VzZSBzdHJpY3Q7Cit1c2Ugd2FybmluZ3M7CisKK3VzZV9vaygnRHBrZzo6RGVwcycpOworCitteSAkZmllbGRfbXVsdGlsaW5lID0gIiAsICwgbGliZ3RrMi4wLWNvbW1vbiAoPSAyLjEwLjEzLTEpICAsIGxpYmF0azEuMC0wICg+PQorMS4xMy4yKSwgbGliYzYgKD49IDIuNS01KSwgbGliY2Fpcm8yICg+PSAxLjQuMCksIGxpYmN1cHN5czIgKD49IDEuMi43KSwKK2xpYmZvbnRjb25maWcxICg+PSAyLjQuMCksIGxpYmdsaWIyLjAtMCAgKCAgPj0gMi4xMi45KSwgbGliZ251dGxzMTMgKD49CisxLjYuMy0wKSwgbGlianBlZzYyLCBweXRob24gKDw8IDIuNSkgLCAsICI7CitteSAkZmllbGRfbXVsdGlsaW5lX3NvcnRlZCA9ICJsaWJhdGsxLjAtMCAoPj0gMS4xMy4yKSwgbGliYzYgKD49IDIuNS01KSwgbGliY2Fpcm8yICg+PSAxLjQuMCksIGxpYmN1cHN5czIgKD49IDEuMi43KSwgbGliZm9udGNvbmZpZzEgKD49IDIuNC4wKSwgbGliZ2xpYjIuMC0wICg+PSAyLjEyLjkpLCBsaWJnbnV0bHMxMyAoPj0gMS42LjMtMCksIGxpYmd0azIuMC1jb21tb24gKD0gMi4xMC4xMy0xKSwgbGlianBlZzYyLCBweXRob24gKDw8IDIuNSkiOworCitteSAkZGVwX211bHRpbGluZSA9IGRlcHNfcGFyc2UoJGZpZWxkX211bHRpbGluZSk7CiskZGVwX211bHRpbGluZS0+c29ydCgpOworaXMoJGRlcF9tdWx0aWxpbmUtPm91dHB1dCgpLCAkZmllbGRfbXVsdGlsaW5lX3NvcnRlZCwgIlBhcnNlLCBzb3J0IGFuZCBvdXRwdXQiKTsKKworbXkgJGRlcF9zdWJzZXQgPSBkZXBzX3BhcnNlKCJsaWJhdGsxLjAtMCAoPj4gMS4xMCksIGxpYmM2LCBsaWJjYWlybzIiKTsKK2lzKCRkZXBfbXVsdGlsaW5lLT5pbXBsaWVzKCRkZXBfc3Vic2V0KSwgMSwgIkRlcCBpbXBsaWVzIHN1YnNldCBvZiBpdHNlbGYiKTsKK2lzKCRkZXBfc3Vic2V0LT5pbXBsaWVzKCRkZXBfbXVsdGlsaW5lKSwgdW5kZWYsICJTdWJzZXQgZG9lc24ndCBpbXBseSBzdXBlcnNldCIpOworbXkgJGRlcF9vcHBvc2l0ZSA9IGRlcHNfcGFyc2UoInB5dGhvbiAoPj0gMi41KSIpOworaXMoJGRlcF9vcHBvc2l0ZS0+aW1wbGllcygkZGVwX211bHRpbGluZSksIDAsICJPcHBvc2l0ZSBjb25kaXRpb24gaW1wbGllcyBOT1QgdGhlIGRlcGVuZHMiKTsKKworbXkgJGRlcF9vcjEgPSBkZXBzX3BhcnNlKCJhfGIgKD49MS4wKXxjICg+PSAyLjApIik7CitteSAkZGVwX29yMiA9IGRlcHNfcGFyc2UoInh8eXxhfGJ8YyAoPD0gMC41KXxjICg+PTEuNSl8ZHxlIik7CitpcygkZGVwX29yMS0+aW1wbGllcygkZGVwX29yMiksIDEsICJJbXBsaWNhdGlvbiBiZXR3ZWVuIE9SIDEvMiIpOworaXMoJGRlcF9vcjItPmltcGxpZXMoJGRlcF9vcjEpLCB1bmRlZiwgIkltcGxpY2F0aW9uIGJldHdlZW4gT1IgMi8yIik7CisKK215ICRmaWVsZF9hcmNoID0gImxpYmM2ICg+PSAyLjUpIFshYWxwaGEgIWh1cmQtaTM4Nl0sIGxpYmM2LjEgW2FscGhhXSwgbGliYzAuMSBbaHVyZC1pMzg2XSI7CitteSAkZGVwX2kzODYgPSBkZXBzX3BhcnNlKCRmaWVsZF9hcmNoLCByZWR1Y2VfYXJjaCA9PiAxLCBob3N0X2FyY2ggPT4gJ2kzODYnKTsKK215ICRkZXBfYWxwaGEgPSBkZXBzX3BhcnNlKCRmaWVsZF9hcmNoLCByZWR1Y2VfYXJjaCA9PiAxLCBob3N0X2FyY2ggPT4gJ2FscGhhJyk7CitteSAkZGVwX2h1cmQgPSBkZXBzX3BhcnNlKCRmaWVsZF9hcmNoLCByZWR1Y2VfYXJjaCA9PiAxLCBob3N0X2FyY2ggPT4gJ2h1cmQtaTM4NicpOworaXMoJGRlcF9pMzg2LT5vdXRwdXQoKSwgImxpYmM2ICg+PSAyLjUpIiwgIkFyY2ggcmVkdWNlIDEvMyIpOworaXMoJGRlcF9hbHBoYS0+b3V0cHV0KCksICJsaWJjNi4xIiwgIkFyY2ggcmVkdWNlIDIvMyIpOworaXMoJGRlcF9odXJkLT5vdXRwdXQoKSwgImxpYmMwLjEiLCAiQXJjaCByZWR1Y2UgMy8zIik7CisKKworbXkgJGZhY3RzID0gRHBrZzo6RGVwczo6S25vd25GYWN0cy0+bmV3KCk7CiskZmFjdHMtPmFkZF9pbnN0YWxsZWRfcGFja2FnZSgibXlwYWNrYWdlIiwgIjEuMy40LTEiKTsKKyRmYWN0cy0+YWRkX3Byb3ZpZGVkX3BhY2thZ2UoIm15dmlydHVhbCIsIHVuZGVmLCB1bmRlZiwgIm15cGFja2FnZSIpOworCitteSAkZmllbGRfZHVwbGljYXRlID0gImxpYmM2ICg+PSAyLjMpLCBsaWJjNiAoPj0gMi42LTEpLCBteXBhY2thZ2UgKD49CisxLjMpLCBteXZpcnR1YWwgfCBzb21ldGhpbmcsIHB5dGhvbiAoPj0gMi41KSI7CitteSAkZGVwX2R1cCA9IGRlcHNfcGFyc2UoJGZpZWxkX2R1cGxpY2F0ZSk7CiskZGVwX2R1cC0+c2ltcGxpZnlfZGVwcygkZmFjdHMsICRkZXBfb3Bwb3NpdGUpOworaXMoJGRlcF9kdXAtPm91dHB1dCgpLCAibGliYzYgKD49IDIuNi0xKSIsICJTaW1wbGlmeSBkZXBzIik7CisKK215ICRmaWVsZF9kdXBfdW5pb24gPSAibGliYzYgKD4+IDIuMyksIGxpYmM2ICg+PSAyLjYtMSksIGZha2UgKDw8IDIuMCksCitmYWtlKD4+IDMuMCksIGZha2UgKD0gMi41KSwgcHl0aG9uICg8PCAyLjUpLCBweXRob24gKD0gMi40KSI7CitteSAkZGVwX2R1cF91bmlvbiA9IGRlcHNfcGFyc2UoJGZpZWxkX2R1cF91bmlvbiwgdW5pb24gPT4gMSk7CiskZGVwX2R1cF91bmlvbi0+c2ltcGxpZnlfZGVwcygkZmFjdHMpOworaXMoJGRlcF9kdXBfdW5pb24tPm91dHB1dCgpLCAibGliYzYgKD4+IDIuMyksIGZha2UgKDw8IDIuMCksIGZha2UgKD4+IDMuMCksIGZha2UgKD0gMi41KSwgcHl0aG9uICg8PCAyLjUpIiwgIlNpbXBsaWZ5IHVuaW9uIGRlcHMiKTsKKworJGRlcF9kdXBfdW5pb24gPSBkZXBzX3BhcnNlKCJzaXBzYWsgKDw9IDAuOS42LTIuMSksIHNpcHNhayAoPD0gMC45LjYtMi4yKSIsIHVuaW9uID0+IDEpOworJGRlcF9kdXBfdW5pb24tPnNpbXBsaWZ5X2RlcHMoJGZhY3RzKTsKK2lzKCRkZXBfZHVwX3VuaW9uLT5vdXRwdXQoKSwgInNpcHNhayAoPD0gMC45LjYtMi4yKSIsICJTaW1wbGlmeSB1bmlvbiBkZXBzIDIiKTsKKworbXkgJGRlcF9yZWQgPSBkZXBzX3BhcnNlKCJhYmMgfCB4eXosIHR3bywgYWJjIik7CiskZGVwX3JlZC0+c2ltcGxpZnlfZGVwcygkZmFjdHMsICRkZXBfb3Bwb3NpdGUpOworaXMoJGRlcF9yZWQtPm91dHB1dCgpLCAiYWJjLCB0d28iLCAiU2ltcGxpZmljYXRpb24gcmVzcGVjdCBvcmRlciIpOworaXMoIiRkZXBfcmVkIiwgJGRlcF9yZWQtPm91dHB1dCgpLCAiU3RyaW5naWZpY2F0aW9uID09IG91dHB1dCgpIik7CisKK215ICRkZXBfZW1wdHkxID0gZGVwc19wYXJzZSgiIik7CitpcygkZGVwX2VtcHR5MS0+b3V0cHV0KCksICIiLCAiRW1wdHkgZGVwZW5kZW5jeSIpOworCitteSAkZGVwX2VtcHR5MiA9IGRlcHNfcGFyc2UoIiAsICwgIiwgdW5pb24gPT4gMSk7CitpcygkZGVwX2VtcHR5Mi0+b3V0cHV0KCksICIiLCAiJyAsICwgJyBpcyBhbHNvIGFuIGVtcHR5IGRlcGVuZGVuY3kiKTsKKworJFNJR3snX19XQVJOX18nfSA9IHN1YiB7fTsKK215ICRkZXBfYmFkX211bHRpbGluZSA9IGRlcHNfcGFyc2UoImEsIGZvb1xuYmFyLCBjIik7CitvayghZGVmaW5lZCgkZGVwX2JhZF9tdWx0aWxpbmUpLCAiaW52YWxpZCBkZXBlbmRlbmN5IHNwbGl0IG92ZXIgbXVsdGlwbGUgbGluZSIpOworZGVsZXRlICRTSUd7J19fV0FSTl9fJ307CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvdC81MDBfRHBrZ19QYXRoLnQgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvdC81MDBfRHBrZ19QYXRoLnQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzBjMWE3NAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90LzUwMF9EcGtnX1BhdGgudApAQCAtMCwwICsxLDYwIEBACisjIC0qLSBtb2RlOiBjcGVybDstKi0KKyMKKyMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyMKKyMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisjIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisjIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyMKKyMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisKK3VzZSBUZXN0OjpNb3JlIHRlc3RzID0+IDE2OworCit1c2Ugc3RyaWN0OwordXNlIHdhcm5pbmdzOworCit1c2Vfb2soJ0Rwa2c6OlBhdGgnLCAnY2Fub25wYXRoJywgJ3Jlc29sdmVfc3ltbGluaycsCisgICAgICAgJ2NoZWNrX2ZpbGVzX2FyZV90aGVfc2FtZScsICdnZXRfcGtnX3Jvb3RfZGlyJywKKyAgICAgICAnZ3Vlc3NfcGtnX3Jvb3RfZGlyJywgJ3JlbGF0aXZlX3RvX3BrZ19yb290Jyk7CisKK215ICR0bXBkaXIgPSAndC50bXAvNTAwX0Rwa2dfUGF0aCc7CisKK21rZGlyICR0bXBkaXI7Citta2RpciAiJHRtcGRpci9hIjsKK21rZGlyICIkdG1wZGlyL2EvYiI7Citta2RpciAiJHRtcGRpci9hL2IvYyI7Citta2RpciAiJHRtcGRpci9hL0RFQklBTiI7Citta2RpciAiJHRtcGRpci9kZWJpYW4iOworbWtkaXIgIiR0bXBkaXIvZGViaWFuL2EiOworbWtkaXIgIiR0bXBkaXIvZGViaWFuL2EvYiI7Citta2RpciAiJHRtcGRpci9kZWJpYW4vYS9iL2MiOworc3ltbGluayAiYS9iL2MiLCAiJHRtcGRpci9jYmlzIjsKK3N5bWxpbmsgIi90aGlzL2RvZXMvbm90L2V4aXN0IiwgIiR0bXBkaXIvdG1wIjsKK3N5bWxpbmsgIi4iLCAiJHRtcGRpci9oZXJlIjsKKworaXMoY2Fub25wYXRoKCIkdG1wZGlyLy4vYS8vL2IvYyIpLCAiJHRtcGRpci9hL2IvYyIsICJjYW5vbnBhdGggYmFzaWMgdGVzdCIpOworaXMoY2Fub25wYXRoKCIkdG1wZGlyL2EvYi8uLi8uLi9hL2IvYyIpLCAiJHRtcGRpci9hL2IvYyIsICJjYW5vbnBhdGggYW5kIC4uIik7CitpcyhjYW5vbnBhdGgoIiR0bXBkaXIvYS9iL2MvLi4vLi4vIiksICIkdG1wZGlyL2EiLCAiY2Fub25wYXRoIC4uIGF0IGVuZCIpOworaXMoY2Fub25wYXRoKCIkdG1wZGlyL2NiaXMvLi4vIiksICIkdG1wZGlyL2NiaXMvLi4iLCAiY2Fub25wYXRoIC4uIGFmdGVyIHN5bWxpbmsiKTsKKworaXMocmVzb2x2ZV9zeW1saW5rKCIkdG1wZGlyL2hlcmUvY2JpcyIpLCAiJHRtcGRpci9oZXJlL2EvYi9jIiwgInJlc29sdmVfc3ltbGluayIpOworaXMocmVzb2x2ZV9zeW1saW5rKCIkdG1wZGlyL3RtcCIpLCAiL3RoaXMvZG9lcy9ub3QvZXhpc3QiLCAicmVzb2x2ZV9zeW1saW5rIGFic29sdXRlIik7CitpcyhyZXNvbHZlX3N5bWxpbmsoIiR0bXBkaXIvaGVyZSIpLCAkdG1wZGlyLCAicmVzb2x2ZV9zeW1saW5rIC4iKTsKKworb2soIWNoZWNrX2ZpbGVzX2FyZV90aGVfc2FtZSgiJHRtcGRpci9oZXJlIiwgJHRtcGRpciksICJTeW1saW5rIGlzIG5vdCB0aGUgc2FtZSEiKTsKK29rKGNoZWNrX2ZpbGVzX2FyZV90aGVfc2FtZSgiJHRtcGRpci9oZXJlL2EiLCAiJHRtcGRpci9hIiksICJTYW1lIGRpcmVjdG9yeSIpOworCitpcyhnZXRfcGtnX3Jvb3RfZGlyKCIkdG1wZGlyL2EvYi9jIiksICIkdG1wZGlyL2EiLCAiZ2V0X3BrZ19yb290X2RpciIpOworaXMoZ3Vlc3NfcGtnX3Jvb3RfZGlyKCIkdG1wZGlyL2EvYi9jIiksICIkdG1wZGlyL2EiLCAiZ3Vlc3NfcGtnX3Jvb3RfZGlyIik7CitpcyhyZWxhdGl2ZV90b19wa2dfcm9vdCgiJHRtcGRpci9hL2IvYyIpLCAiYi9jIiwgInJlbGF0aXZlX3RvX3BrZ19yb290Iik7CisKK2NoZGlyKCR0bXBkaXIpOworCitvayghZGVmaW5lZChnZXRfcGtnX3Jvb3RfZGlyKCJkZWJpYW4vYS9iL2MiKSksICJnZXRfcGtnX3Jvb3RfZGlyIHVuZGVmIik7CitvayghZGVmaW5lZChyZWxhdGl2ZV90b19wa2dfcm9vdCgiZGViaWFuL2EvYi9jIikpLCAicmVsYXRpdmVfdG9fcGtnX3Jvb3QiKTsKK2lzKGd1ZXNzX3BrZ19yb290X2RpcigiZGViaWFuL2EvYi9jIiksICJkZWJpYW4vYSIsICJndWVzc19wa2dfcm9vdF9kaXIgZmFsbGJhY2siKTsKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90LzYwMF9EcGtnX0NoYW5nZWxvZy50IGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3QvNjAwX0Rwa2dfQ2hhbmdlbG9nLnQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODExMzBhNwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90LzYwMF9EcGtnX0NoYW5nZWxvZy50CkBAIC0wLDAgKzEsMzI5IEBACisjIC0qLSBwZXJsIC0qLQorIworIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorIworIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorIworIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKwordXNlIHN0cmljdDsKK3VzZSB3YXJuaW5nczsKKwordXNlIEZpbGU6OkJhc2VuYW1lOworCitCRUdJTiB7CisgICAgbXkgJG5vX2V4YW1wbGVzID0gNDsKKyAgICBteSAkbm9fZXJyX2V4YW1wbGVzID0gMTsKKyAgICBteSAkbm9fdGVzdHMgPSAkbm9fZXhhbXBsZXMgKiA1CisJKyAkbm9fZXJyX2V4YW1wbGVzICogMgorCSsgMjYgIyBjb3VudG1lCisJKyAxMyAjIGZpZWxkcworCSsgMSAgIyByZWdyZXNzaW9ucworCSsgMjI7CisKKyAgICByZXF1aXJlIFRlc3Q6Ok1vcmU7CisgICAgaW1wb3J0IFRlc3Q6Ok1vcmUgdGVzdHMgPT4gJG5vX3Rlc3RzOworfQorQkVHSU4geworICAgIHVzZV9vaygnRHBrZzo6Q2hhbmdlbG9nJyk7CisgICAgdXNlX29rKCdEcGtnOjpDaGFuZ2Vsb2c6OkRlYmlhbicpOworICAgIHVzZV9vaygnRHBrZzo6VmVuZG9yJywgcXcoZ2V0X2N1cnJlbnRfdmVuZG9yKSk7Cit9OworCitteSAkc3JjZGlyID0gJEVOVntzcmNkaXJ9IHx8ICcuJzsKK215ICRkYXRhZGlyID0gJHNyY2RpciAuICcvdC82MDBfRHBrZ19DaGFuZ2Vsb2cnOworCitteSAkdmVuZG9yID0gZ2V0X2N1cnJlbnRfdmVuZG9yKCk7CisKKyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKKworZm9yZWFjaCBteSAkZmlsZSAoIiRkYXRhZGlyL2NvdW50bWUiLCAiJGRhdGFkaXIvc2hhZG93IiwgIiRkYXRhZGlyL2ZpZWxkcyIsCisgICAgIiRkYXRhZGlyL3JlZ3Jlc3Npb25zIikgeworCisgICAgbXkgJGNoYW5nZXMgPSBEcGtnOjpDaGFuZ2Vsb2c6OkRlYmlhbi0+bmV3KHZlcmJvc2UgPT4gMCk7CisgICAgJGNoYW5nZXMtPmxvYWQoJGZpbGUpOworCisgICAgb3BlbihDTE9HLCAiPCIsICIkZmlsZSIpIHx8IGRpZSAiQ2FuJ3Qgb3BlbiAkZmlsZVxuIjsKKyAgICBteSAkY29udGVudCA9IGpvaW4oIiIsIDxDTE9HPik7CisgICAgY2xvc2UoQ0xPRyk7CisgICAgY21wX29rKCRjb250ZW50LCAnZXEnLCAiJGNoYW5nZXMiLCAic3RyaW5nIG91dHB1dCBvZiBEcGtnOjpDaGFuZ2Vsb2cgb24gJGZpbGUiKTsKKworICAgIG15ICRlcnJvcnMgPSAkY2hhbmdlcy0+Z2V0X3BhcnNlX2Vycm9ycygpOworICAgIG15ICRiYXNlbmFtZSA9IGJhc2VuYW1lKCAkZmlsZSApOworICAgIGlzKCRlcnJvcnMsICcnLCAiUGFyc2UgZXhhbXBsZSBjaGFuZ2Vsb2cgJGZpbGUgd2l0aG91dCBlcnJvcnMiICk7CisKKyAgICBteSBAZGF0YSA9IEAkY2hhbmdlczsKKyAgICBvayhAZGF0YSwgImRhdGEgaXMgbm90IGVtcHR5Iik7CisKKyAgICBteSAkc3RyOworICAgIGlmICgkZmlsZSBlcSAiJGRhdGFkaXIvY291bnRtZSIpIHsKKwkjIHRlc3QgcmFuZ2Ugb3B0aW9ucworCWNtcF9vayggQGRhdGEsICc9PScsIDcsICJubyBvcHRpb25zIC0+IGNvdW50IiApOworCW15ICRhbGxfdmVyc2lvbnMgPSBqb2luKCAnLycsIG1hcCB7ICRfLT5nZXRfdmVyc2lvbigpIH0gQGRhdGEpOworCisJc3ViIGNoZWNrX29wdGlvbnMgeworCSAgICBteSAoJGNoYW5nZXMsICRkYXRhLCAkb3B0aW9ucywgJGNvdW50LCAkdmVyc2lvbnMsCisJCSRjaGVja19uYW1lKSA9IEBfOworCisJICAgIG15IEBjbnQgPSAkY2hhbmdlcy0+Z2V0X3JhbmdlKCRvcHRpb25zKTsKKwkgICAgY21wX29rKCBAY250LCAnPT0nLCAkY291bnQsICIkY2hlY2tfbmFtZSAtPiBjb3VudCIgKTsKKwkgICAgaWYgKCRjb3VudCA9PSBAJGRhdGEpIHsKKwkJaXNfZGVlcGx5KCBcQGNudCwgJGRhdGEsICIkY2hlY2tfbmFtZSAtPiByZXR1cm5zIGFsbCIgKTsKKworCSAgICB9IGVsc2UgeworCQlpcyggam9pbiggIi8iLCBtYXAgeyAkXy0+Z2V0X3ZlcnNpb24oKSB9IEBjbnQpLAorCQkgICAgJHZlcnNpb25zLCAiJGNoZWNrX25hbWUgLT4gdmVyc2lvbnMiICk7CisJICAgIH0KKwl9CisKKwljaGVja19vcHRpb25zKCAkY2hhbmdlcywgXEBkYXRhLAorCQkgICAgICAgeyBjb3VudCA9PiAzIH0sIDMsICcyOjIuMC0xLzE6Mi4wfnJjMi0zLzE6Mi4wfnJjMi0yJywKKwkJICAgICAgICdwb3NpdGl2ZSBjb3VudCcgKTsKKwljaGVja19vcHRpb25zKCAkY2hhbmdlcywgXEBkYXRhLAorCQkgICAgICAgeyBjb3VudCA9PiAtMyB9LCAzLAorCQkgICAgICAgJzE6Mi4wfnJjMi0xc2FyZ2UyLzE6Mi4wfnJjMi0xc2FyZ2UxLzEuNS0xJywKKwkJICAgICAgICduZWdhdGl2ZSBjb3VudCcgKTsKKwljaGVja19vcHRpb25zKCAkY2hhbmdlcywgXEBkYXRhLAorCQkgICAgICAgeyBjb3VudCA9PiAxIH0sIDEsICcyOjIuMC0xJywKKwkJICAgICAgICdjb3VudCAxJyApOworCWNoZWNrX29wdGlvbnMoICRjaGFuZ2VzLCBcQGRhdGEsCisJCSAgICAgICB7IGNvdW50ID0+IDEsIGRlZmF1bHRfYWxsID0+IDEgfSwgMSwgJzI6Mi4wLTEnLAorCQkgICAgICAgJ2NvdW50IDEgKGRfYSAxKScgKTsKKwljaGVja19vcHRpb25zKCAkY2hhbmdlcywgXEBkYXRhLAorCQkgICAgICAgeyBjb3VudCA9PiAtMSB9LCAxLCAnMS41LTEnLAorCQkgICAgICAgJ2NvdW50IC0xJyApOworCisJY2hlY2tfb3B0aW9ucyggJGNoYW5nZXMsIFxAZGF0YSwKKwkJICAgICAgIHsgY291bnQgPT4gMywgb2Zmc2V0ID0+IDIgfSwgMywKKwkJICAgICAgICcxOjIuMH5yYzItMi8xOjIuMH5yYzItMXNhcmdlMy8xOjIuMH5yYzItMXNhcmdlMicsCisJCSAgICAgICAncG9zaXR2ZSBjb3VudCArIHBvc2l0aXZlIG9mZnNldCcgKTsKKwljaGVja19vcHRpb25zKCAkY2hhbmdlcywgXEBkYXRhLAorCQkgICAgICAgeyBjb3VudCA9PiAtMywgb2Zmc2V0ID0+IDQgfSwgMywKKwkJICAgICAgICcxOjIuMH5yYzItMy8xOjIuMH5yYzItMi8xOjIuMH5yYzItMXNhcmdlMycsCisJCSAgICAgICAnbmVnYXRpdmUgY291bnQgKyBwb3NpdGl2ZSBvZmZzZXQnICk7CisKKwljaGVja19vcHRpb25zKCAkY2hhbmdlcywgXEBkYXRhLAorCQkgICAgICAgeyBjb3VudCA9PiA0LCBvZmZzZXQgPT4gNSB9LCAyLAorCQkgICAgICAgJzE6Mi4wfnJjMi0xc2FyZ2UxLzEuNS0xJywKKwkJICAgICAgICdwb3NpdHZlIGNvdW50ICsgcG9zaXRpdmUgb2Zmc2V0ICg+bWF4KScgKTsKKwljaGVja19vcHRpb25zKCAkY2hhbmdlcywgXEBkYXRhLAorCQkgICAgICAgeyBjb3VudCA9PiAtNCwgb2Zmc2V0ID0+IDIgfSwgMiwKKwkJICAgICAgICcyOjIuMC0xLzE6Mi4wfnJjMi0zJywKKwkJICAgICAgICduZWdhdGl2ZSBjb3VudCArIHBvc2l0aXZlIG9mZnNldCAoPDApJyApOworCisJY2hlY2tfb3B0aW9ucyggJGNoYW5nZXMsIFxAZGF0YSwKKwkJICAgICAgIHsgY291bnQgPT4gMywgb2Zmc2V0ID0+IC00IH0sIDMsCisJCSAgICAgICAnMToyLjB+cmMyLTFzYXJnZTMvMToyLjB+cmMyLTFzYXJnZTIvMToyLjB+cmMyLTFzYXJnZTEnLAorCQkgICAgICAgJ3Bvc2l0dmUgY291bnQgKyBuZWdhdGl2ZSBvZmZzZXQnICk7CisJY2hlY2tfb3B0aW9ucyggJGNoYW5nZXMsIFxAZGF0YSwKKwkJICAgICAgIHsgY291bnQgPT4gLTMsIG9mZnNldCA9PiAtMyB9LCAzLAorCQkgICAgICAgJzE6Mi4wfnJjMi0zLzE6Mi4wfnJjMi0yLzE6Mi4wfnJjMi0xc2FyZ2UzJywKKwkJICAgICAgICduZWdhdGl2ZSBjb3VudCArIG5lZ2F0aXZlIG9mZnNldCcgKTsKKworCWNoZWNrX29wdGlvbnMoICRjaGFuZ2VzLCBcQGRhdGEsCisJCSAgICAgICB7IGNvdW50ID0+IDUsIG9mZnNldCA9PiAtMiB9LCAyLAorCQkgICAgICAgJzE6Mi4wfnJjMi0xc2FyZ2UxLzEuNS0xJywKKwkJICAgICAgICdwb3NpdHZlIGNvdW50ICsgbmVnYXRpdmUgb2Zmc2V0ICg+bWF4KScgKTsKKwljaGVja19vcHRpb25zKCAkY2hhbmdlcywgXEBkYXRhLAorCQkgICAgICAgeyBjb3VudCA9PiAtNSwgb2Zmc2V0ID0+IC00IH0sIDMsCisJCSAgICAgICAnMjoyLjAtMS8xOjIuMH5yYzItMy8xOjIuMH5yYzItMicsCisJCSAgICAgICAnbmVnYXRpdmUgY291bnQgKyBuZWdhdGl2ZSBvZmZzZXQgKDwwKScgKTsKKworCWNoZWNrX29wdGlvbnMoICRjaGFuZ2VzLCBcQGRhdGEsCisJCSAgICAgICB7IGNvdW50ID0+IDcgfSwgNywgJycsCisJCSAgICAgICAnY291bnQgNyAobWF4KScgKTsKKwljaGVja19vcHRpb25zKCAkY2hhbmdlcywgXEBkYXRhLAorCQkgICAgICAgeyBjb3VudCA9PiAtNyB9LCA3LCAnJywKKwkJICAgICAgICdjb3VudCAtNyAoLW1heCknICk7CisJY2hlY2tfb3B0aW9ucyggJGNoYW5nZXMsIFxAZGF0YSwKKwkJICAgICAgIHsgY291bnQgPT4gMTAgfSwgNywgJycsCisJCSAgICAgICAnY291bnQgMTAgKD5tYXgpJyApOworCWNoZWNrX29wdGlvbnMoICRjaGFuZ2VzLCBcQGRhdGEsCisJCSAgICAgICB7IGNvdW50ID0+IC0xMCB9LCA3LCAnJywKKwkJICAgICAgICdjb3VudCAtMTAgKDwtbWF4KScgKTsKKworCWNoZWNrX29wdGlvbnMoICRjaGFuZ2VzLCBcQGRhdGEsCisJCSAgICAgICB7IGZyb20gPT4gJzE6Mi4wfnJjMi0xc2FyZ2UzJyB9LCA0LAorCQkgICAgICAgJzI6Mi4wLTEvMToyLjB+cmMyLTMvMToyLjB+cmMyLTIvMToyLjB+cmMyLTFzYXJnZTMnLAorCQkgICAgICAgJ2Zyb20gPT4gIjE6Mi4wfnJjMi0xc2FyZ2UzIicgKTsKKwljaGVja19vcHRpb25zKCAkY2hhbmdlcywgXEBkYXRhLAorCQkgICAgICAgeyBzaW5jZSA9PiAnMToyLjB+cmMyLTFzYXJnZTMnIH0sIDMsCisJCSAgICAgICAnMjoyLjAtMS8xOjIuMH5yYzItMy8xOjIuMH5yYzItMicsCisJCSAgICAgICAnc2luY2UgPT4gIjE6Mi4wfnJjMi0xc2FyZ2UzIicgKTsKKyAgICAgICAgJFNJR3snX19XQVJOX18nfSA9IHN1YiB7fTsKKyAgICAgICAgY2hlY2tfb3B0aW9ucyggJGNoYW5nZXMsIFxAZGF0YSwKKyAgICAgICAgICAgICAgICAgICAgICAgeyBzaW5jZSA9PiAwIH0sIDcsICcnLAorICAgICAgICAgICAgICAgICAgICAgICAnc2luY2UgPT4gMCByZXR1cm5zIGFsbCcpOworICAgICAgICBkZWxldGUgJFNJR3snX19XQVJOX18nfTsKKwljaGVja19vcHRpb25zKCAkY2hhbmdlcywgXEBkYXRhLAorCQkgICAgICAgeyB0byA9PiAnMToyLjB+cmMyLTFzYXJnZTInIH0sIDMsCisJCSAgICAgICAnMToyLjB+cmMyLTFzYXJnZTIvMToyLjB+cmMyLTFzYXJnZTEvMS41LTEnLAorCQkgICAgICAgJ3RvID0+ICIxOjIuMH5yYzItMXNhcmdlMiInICk7CisJY2hlY2tfb3B0aW9ucyggJGNoYW5nZXMsIFxAZGF0YSwKKwkJICAgICAgIHsgdW50aWwgPT4gJzE6Mi4wfnJjMi0xc2FyZ2UyJyB9LCAyLAorCQkgICAgICAgJzE6Mi4wfnJjMi0xc2FyZ2UxLzEuNS0xJywKKwkJICAgICAgICd1bnRpbCA9PiAiMToyLjB+cmMyLTFzYXJnZTIiJyApOworCSNUT0RPOiB0ZXN0IGNvbWJpbmF0aW9ucworICAgIH0KKyAgICBpZiAoJGZpbGUgZXEgIiRkYXRhZGlyL2ZpZWxkcyIpIHsKKwlteSAkc3RyID0gJGNoYW5nZXMtPmRwa2coeyBhbGwgPT4gMSB9KTsKKwlteSAkZXhwZWN0ZWQgPSAnU291cmNlOiBmaWVsZHMKK1ZlcnNpb246IDIuMC0wZXRjaDEKK0Rpc3RyaWJ1dGlvbjogc3RhYmxlCitVcmdlbmN5OiBoaWdoCitNYWludGFpbmVyOiBGcmFuayBMaWNodGVuaGVsZCA8ZnJhbmtAbGljaHRlbmhlbGQuZGU+CitEYXRlOiBTdW4sIDEzIEphbiAyMDA4IDE1OjQ5OjE5ICswMTAwCitDbG9zZXM6IDEwMDAwMDAgMTExMTExMSAyMjIyMjIyCitDaGFuZ2VzOiAKKyBmaWVsZHMgKDIuMC0wZXRjaDEpIHN0YWJsZTsgdXJnZW5jeT1sb3cKKyAuCisgICAqIFVwbG9hZCB0byBzdGFibGUgKENsb3NlczogIzExMTExMTEsICMyMjIyMjIyKQorICAgKiBGaXggbW9yZSBzdHVmZi4gKExQOiAjNTQzMjEsICMyNDI0MjQyKQorIC4KKyBmaWVsZHMgKDIuMC0xKSB1bnN0YWJsZSAgZnJvemVuOyB1cmdlbmN5PW1lZGl1bQorIC4KKyAgIFsgRnJhbmsgTGljaHRlbmhlbGQgXQorICAgKiBVcGxvYWQgdG8gdW5zdGFibGUgKENsb3NlczogIzExMTExMTEsICMyMjIyMjIyKQorICAgKiBGaXggc3R1ZmYuIChMUDogIzEyMzQ1LCAjNDI0MjQyKQorIC4KKyAgIFsgUmFwaGHDq2wgSGVydHpvZyBdCisgICAqIE5ldyB1cHN0cmVhbSByZWxlYXNlLgorICAgICAtIGltcGxlbWVudHMgYQorICAgICAtIGltcGxlbWVudHMgYgorICAgKiBVcGRhdGUgUy1WLgorIC4KKyBmaWVsZHMgKDIuMH5iMS0xKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cseGMtdXNlcmZpZWxkPWZvb2JhcgorIC4KKyAgICogQmV0YQorIC4KKyBmaWVsZHMgKDEuMCkgZXhwZXJpbWVudGFsOyB1cmdlbmN5PWhpZ2gseGItdXNlcmZpZWxkMj1mb29iYXIKKyAuCisgICAqIEZpcnN0IHVwbG9hZCAoQ2xvc2VzOiAjMTAwMDAwMCkKK1hiLVVzZXJmaWVsZDI6IGZvb2JhcgorWGMtVXNlcmZpZWxkOiBmb29iYXIKKyc7CisJaWYgKCR2ZW5kb3IgZXEgJ1VidW50dScpIHsKKwkgICAgJGV4cGVjdGVkID1+IHMvXihDbG9zZXM6LiopLyQxXG5MYXVuY2hwYWQtQnVncy1GaXhlZDogMTIzNDUgNTQzMjEgNDI0MjQyIDI0MjQyNDIvbTsKKwl9CisJY21wX29rKCRzdHIsJ2VxJywkZXhwZWN0ZWQsImZpZWxkcyBoYW5kbGluZyIpOworCisJJHN0ciA9ICRjaGFuZ2VzLT5kcGtnKHsgb2Zmc2V0ID0+IDEsIGNvdW50ID0+IDIgfSk7CisJJGV4cGVjdGVkID0gJ1NvdXJjZTogZmllbGRzCitWZXJzaW9uOiAyLjAtMQorRGlzdHJpYnV0aW9uOiB1bnN0YWJsZSBmcm96ZW4KK1VyZ2VuY3k6IG1lZGl1bQorTWFpbnRhaW5lcjogRnJhbmsgTGljaHRlbmhlbGQgPGRqcGlnQGRlYmlhbi5vcmc+CitEYXRlOiBTdW4sIDEyIEphbiAyMDA4IDE1OjQ5OjE5ICswMTAwCitDbG9zZXM6IDExMTExMTEgMjIyMjIyMgorQ2hhbmdlczogCisgZmllbGRzICgyLjAtMSkgdW5zdGFibGUgIGZyb3plbjsgdXJnZW5jeT1tZWRpdW0KKyAuCisgICBbIEZyYW5rIExpY2h0ZW5oZWxkIF0KKyAgICogVXBsb2FkIHRvIHVuc3RhYmxlIChDbG9zZXM6ICMxMTExMTExLCAjMjIyMjIyMikKKyAgICogRml4IHN0dWZmLiAoTFA6ICMxMjM0NSwgIzQyNDI0MikKKyAuCisgICBbIFJhcGhhw6tsIEhlcnR6b2cgXQorICAgKiBOZXcgdXBzdHJlYW0gcmVsZWFzZS4KKyAgICAgLSBpbXBsZW1lbnRzIGEKKyAgICAgLSBpbXBsZW1lbnRzIGIKKyAgICogVXBkYXRlIFMtVi4KKyAuCisgZmllbGRzICgyLjB+YjEtMSkgdW5zdGFibGU7IHVyZ2VuY3k9bG93LHhjLXVzZXJmaWVsZD1mb29iYXIKKyAuCisgICAqIEJldGEKK1hjLVVzZXJmaWVsZDogZm9vYmFyCisnOworCWlmICgkdmVuZG9yIGVxICdVYnVudHUnKSB7CisJICAgICRleHBlY3RlZCA9fiBzL14oQ2xvc2VzOi4qKS8kMVxuTGF1bmNocGFkLUJ1Z3MtRml4ZWQ6IDEyMzQ1IDQyNDI0Mi9tOworCX0KKwljbXBfb2soJHN0ciwnZXEnLCRleHBlY3RlZCwiZmllbGRzIGhhbmRsaW5nIDIiKTsKKworCSRzdHIgPSAkY2hhbmdlcy0+cmZjODIyKHsgb2Zmc2V0ID0+IDIsIGNvdW50ID0+IDIgfSk7CisJJGV4cGVjdGVkID0gJ1NvdXJjZTogZmllbGRzCitWZXJzaW9uOiAyLjB+YjEtMQorRGlzdHJpYnV0aW9uOiB1bnN0YWJsZQorVXJnZW5jeTogbG93CitNYWludGFpbmVyOiBGcmFuayBMaWNodGVuaGVsZCA8ZnJhbmtAbGljaHRlbmhlbGQuZGU+CitEYXRlOiBTdW4sIDExIEphbiAyMDA4IDE1OjQ5OjE5ICswMTAwCitDaGFuZ2VzOiAKKyBmaWVsZHMgKDIuMH5iMS0xKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cseGMtdXNlcmZpZWxkPWZvb2JhcgorIC4KKyAgICogQmV0YQorWGMtVXNlcmZpZWxkOiBmb29iYXIKKworU291cmNlOiBmaWVsZHMKK1ZlcnNpb246IDEuMAorRGlzdHJpYnV0aW9uOiBleHBlcmltZW50YWwKK1VyZ2VuY3k6IGhpZ2gKK01haW50YWluZXI6IEZyYW5rIExpY2h0ZW5oZWxkIDxkanBpZ0BkZWJpYW4ub3JnPgorRGF0ZTogU3VuLCAxMCBKYW4gMjAwOCAxNTo0OToxOSArMDEwMAorQ2xvc2VzOiAxMDAwMDAwCitDaGFuZ2VzOiAKKyBmaWVsZHMgKDEuMCkgZXhwZXJpbWVudGFsOyB1cmdlbmN5PWhpZ2gseGItdXNlcmZpZWxkMj1mb29iYXIKKyAuCisgICAqIEZpcnN0IHVwbG9hZCAoQ2xvc2VzOiAjMTAwMDAwMCkKK1hiLVVzZXJmaWVsZDI6IGZvb2JhcgorCisnOworCWNtcF9vaygkc3RyLCAnZXEnLCAkZXhwZWN0ZWQsICJmaWVsZHMgaGFuZGxpbmcgMyIpOworCisJIyBUZXN0IERwa2c6OkNoYW5nZWxvZzo6RW50cnkgbWV0aG9kcworCWlzKCRkYXRhWzFdLT5nZXRfdmVyc2lvbigpLCAiMi4wLTEiLCAiZ2V0X3ZlcnNpb24iKTsKKwlpcygkZGF0YVsxXS0+Z2V0X3NvdXJjZSgpLCAiZmllbGRzIiwgImdldF9zb3VyY2UiKTsKKwlpcyhzY2FsYXIgJGRhdGFbMV0tPmdldF9kaXN0cmlidXRpb25zKCksICJ1bnN0YWJsZSIsICJnZXRfZGlzdHJpYnV0aW9uIik7CisJaXMoam9pbigifCIsICRkYXRhWzFdLT5nZXRfZGlzdHJpYnV0aW9ucygpKSwgInVuc3RhYmxlfGZyb3plbiIsCisJICAgICJnZXRfZGlzdHJpYnV0aW9ucyIpOworCWlzKCRkYXRhWzNdLT5nZXRfb3B0aW9uYWxfZmllbGRzKCksCisJICAgICJVcmdlbmN5OiBoaWdoXG5DbG9zZXM6IDEwMDAwMDBcblhiLVVzZXJmaWVsZDI6IGZvb2JhclxuIiwKKwkgICAgImdldF9vcHRpb25hbF9maWVsZHMiKTsKKwlpcygkZGF0YVsxXS0+Z2V0X21haW50YWluZXIoKSwgJ0ZyYW5rIExpY2h0ZW5oZWxkIDxkanBpZ0BkZWJpYW4ub3JnPicsCisJICAgICJnZXRfbWFpbnRhaW5lciIpOworCWlzKCRkYXRhWzFdLT5nZXRfdGltZXN0YW1wKCksICdTdW4sIDEyIEphbiAyMDA4IDE1OjQ5OjE5ICswMTAwJywKKwkgICAgImdldF90aW1lc3RhbXAiKTsKKwlteSBAaXRlbXMgPSAkZGF0YVsxXS0+Z2V0X2NoYW5nZV9pdGVtcygpOworCWlzKCRpdGVtc1swXSwgIiAgWyBGcmFuayBMaWNodGVuaGVsZCBdXG4iLCAiY2hhbmdlIGl0ZW1zIDEiKTsKKwlpcygkaXRlbXNbNF0sICIgICogTmV3IHVwc3RyZWFtIHJlbGVhc2UuCisgICAgLSBpbXBsZW1lbnRzIGEKKyAgICAtIGltcGxlbWVudHMgYgorIiwgImNoYW5nZSBpdGVtcyAyIik7CisJaXMoJGl0ZW1zWzVdLCAiICAqIFVwZGF0ZSBTLVYuXG4iLCAiY2hhbmdlIGl0ZW1zIDMiKTsKKyAgICB9CisgICAgaWYgKCRmaWxlIGVxICIkZGF0YWRpci9yZWdyZXNzaW9ucyIpIHsKKwlteSAkZiA9ICRjaGFuZ2VzLT5kcGtnKCk7CisJaXMoIiRmLT57VmVyc2lvbn0iLCAiMCIsICJ2ZXJzaW9uIDAgY29ycmVjdGx5IHBhcnNlZCIpOworICAgIH0KKworICAgIFNLSVA6IHsKKwlza2lwKCJhdm9pZCBzcHVyaW91cyB3YXJuaW5nIHdpdGggb25seSBvbmUgZW50cnkiLCAyKQorCSAgICBpZiBAZGF0YSA9PSAxOworCisJbXkgJG9sZGVzdF92ZXJzaW9uID0gJGRhdGFbLTFdLT57VmVyc2lvbn07CisJJHN0ciA9ICRjaGFuZ2VzLT5kcGtnKHsgc2luY2UgPT4gJG9sZGVzdF92ZXJzaW9uIH0pOworCisJJHN0ciA9ICRjaGFuZ2VzLT5yZmM4MjIoKTsKKworCW9rKCAxICk7CisKKwkkc3RyID0gJGNoYW5nZXMtPnJmYzgyMih7IHNpbmNlID0+ICRvbGRlc3RfdmVyc2lvbiB9KTsKKworCW9rKCAxICk7CisgICAgfQorfQorCitmb3JlYWNoIG15ICR0ZXN0ICgoIFsgIiRkYXRhZGlyL21pc3BsYWNlZC10eiIsIDYgXSkpIHsKKworICAgIG15ICRmaWxlID0gc2hpZnQgQCR0ZXN0OworICAgIG15ICRjaGFuZ2VzID0gRHBrZzo6Q2hhbmdlbG9nOjpEZWJpYW4tPm5ldyh2ZXJib3NlID0+IDApOworICAgICRjaGFuZ2VzLT5sb2FkKCRmaWxlKTsKKyAgICBteSBAZXJyb3JzID0gJGNoYW5nZXMtPmdldF9wYXJzZV9lcnJvcnMoKTsKKworICAgIG9rKEBlcnJvcnMsICdlcnJvcnMgb2NjdXJlZCcpOworICAgIGlzX2RlZXBseSggWyBtYXAgeyAkXy0+WzFdIH0gQGVycm9ycyBdLCAkdGVzdCwgJ2NoZWNrIGxpbmUgbnVtYmVycycgKTsKK30KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90LzYwMF9EcGtnX0NoYW5nZWxvZy9jb3VudG1lIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3QvNjAwX0Rwa2dfQ2hhbmdlbG9nL2NvdW50bWUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTY2YjcyZgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90LzYwMF9EcGtnX0NoYW5nZWxvZy9jb3VudG1lCkBAIC0wLDAgKzEsNDEgQEAKK2NvdW50bWUgKDI6Mi4wLTEpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogRmluYWwKKworIC0tIEZyYW5rIExpY2h0ZW5oZWxkIDxmcmFua0BsaWNodGVuaGVsZC5kZT4gIFR1ZSwgIDQgT2N0IDIwMDUgMDE6NDk6MDUgKzAyMDAKKworY291bnRtZSAoMToyLjB+cmMyLTMpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICoga2FkYWJyYQorCisgLS0gRnJhbmsgTGljaHRlbmhlbGQgPGZyYW5rQGxpY2h0ZW5oZWxkLmRlPiAgVHVlLCAgNCBPY3QgMjAwNSAwMTo0ODowNSArMDIwMAorCitjb3VudG1lICgxOjIuMH5yYzItMikgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBBYnJhCisKKyAtLSBGcmFuayBMaWNodGVuaGVsZCA8ZnJhbmtAbGljaHRlbmhlbGQuZGU+ICBUdWUsICA0IE9jdCAyMDA1IDAxOjQ3OjQ4ICswMjAwCisKK2NvdW50bWUgKDE6Mi4wfnJjMi0xc2FyZ2UzKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIEJhegorCisgLS0gRnJhbmsgTGljaHRlbmhlbGQgPGZyYW5rQGxpY2h0ZW5oZWxkLmRlPiAgVHVlLCAgNCBPY3QgMjAwNSAwMTo0NzoxOSArMDIwMAorCitjb3VudG1lICgxOjIuMH5yYzItMXNhcmdlMikgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBCYXIKKworIC0tIEZyYW5rIExpY2h0ZW5oZWxkIDxmcmFua0BsaWNodGVuaGVsZC5kZT4gIFR1ZSwgIDQgT2N0IDIwMDUgMDE6NDc6MDggKzAyMDAKKworY291bnRtZSAoMToyLjB+cmMyLTFzYXJnZTEpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogRm9vCisKKyAtLSBGcmFuayBMaWNodGVuaGVsZCA8ZnJhbmtAbGljaHRlbmhlbGQuZGU+ICBUdWUsICA0IE9jdCAyMDA1IDAxOjQ2OjQ5ICswMjAwCisKK2NvdW50bWUgKDEuNS0xKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIEluaXRpYWwKKworIC0tIEZyYW5rIExpY2h0ZW5oZWxkIDxmcmFua0BsaWNodGVuaGVsZC5kZT4gIFRodSwgMDEgSmFuIDE5NzAgMDA6MDA6MDAgKzAwMDAKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90LzYwMF9EcGtnX0NoYW5nZWxvZy9maWVsZHMgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvdC82MDBfRHBrZ19DaGFuZ2Vsb2cvZmllbGRzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmRmNDYzOGYKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvdC82MDBfRHBrZ19DaGFuZ2Vsb2cvZmllbGRzCkBAIC0wLDAgKzEsNDAgQEAKK2ZpZWxkcyAoMi4wLTBldGNoMSkgc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogVXBsb2FkIHRvIHN0YWJsZSAoQ2xvc2VzOiAjMTExMTExMSwgIzIyMjIyMjIpCisgICogRml4IG1vcmUgc3R1ZmYuIChMUDogIzU0MzIxLCAjMjQyNDI0MikKKworIC0tIEZyYW5rIExpY2h0ZW5oZWxkIDxmcmFua0BsaWNodGVuaGVsZC5kZT4gIFN1biwgMTMgSmFuIDIwMDggMTU6NDk6MTkgKzAxMDAKKworZmllbGRzICgyLjAtMSkgdW5zdGFibGUgIGZyb3plbjsgdXJnZW5jeT1tZWRpdW0KKworICBbIEZyYW5rIExpY2h0ZW5oZWxkIF0KKyAgKiBVcGxvYWQgdG8gdW5zdGFibGUgKENsb3NlczogIzExMTExMTEsICMyMjIyMjIyKQorICAqIEZpeCBzdHVmZi4gKExQOiAjMTIzNDUsICM0MjQyNDIpCisKKyAgWyBSYXBoYcOrbCBIZXJ0em9nIF0KKyAgKiBOZXcgdXBzdHJlYW0gcmVsZWFzZS4KKyAgICAtIGltcGxlbWVudHMgYQorICAgIC0gaW1wbGVtZW50cyBiCisgICogVXBkYXRlIFMtVi4KKworIC0tIEZyYW5rIExpY2h0ZW5oZWxkIDxkanBpZ0BkZWJpYW4ub3JnPiAgU3VuLCAxMiBKYW4gMjAwOCAxNTo0OToxOSArMDEwMAorCitmaWVsZHMgKDIuMH5iMS0xKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cseGMtdXNlcmZpZWxkPWZvb2JhcgorCisgICogQmV0YQorCisgLS0gRnJhbmsgTGljaHRlbmhlbGQgPGZyYW5rQGxpY2h0ZW5oZWxkLmRlPiAgU3VuLCAxMSBKYW4gMjAwOCAxNTo0OToxOSArMDEwMAorCitmaWVsZHMgKDEuMCkgZXhwZXJpbWVudGFsOyB1cmdlbmN5PWhpZ2gseGItdXNlcmZpZWxkMj1mb29iYXIKKworICAqIEZpcnN0IHVwbG9hZCAoQ2xvc2VzOiAjMTAwMDAwMCkKKworIC0tIEZyYW5rIExpY2h0ZW5oZWxkIDxkanBpZ0BkZWJpYW4ub3JnPiAgU3VuLCAxMCBKYW4gMjAwOCAxNTo0OToxOSArMDEwMAorCitmaWVsZHMgKDAuNSkgZXhwZXJpbWVudGFsCisKKyAgKiBUaGlzIGVudHJ5IGlzIGluIGFuIG9sZGVyIGNoYW5nZWxvZyBmb3JtYXQgYW5kIGl0IHNob3VsZCBub3QgYmUKKyAgICBwYXJzZWQuIFNvIGxldCdzIHB1dCBzb21lIG5vbi1jb25mb3JtaW5nIGNvbnRlbnQuCisKK1RoaXMgbGluZSBzdGFydHMgb24gdGhlIGZpcnN0IGNvbHVtbi4KKy0tIFJhcGhhw6tsIEhlcnR6b2cKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90LzYwMF9EcGtnX0NoYW5nZWxvZy9taXNwbGFjZWQtdHogYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvdC82MDBfRHBrZ19DaGFuZ2Vsb2cvbWlzcGxhY2VkLXR6Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjM5ZGM4ZTMKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvdC82MDBfRHBrZ19DaGFuZ2Vsb2cvbWlzcGxhY2VkLXR6CkBAIC0wLDAgKzEsMTIgQEAKK2Vycm9yLXR6ICgxLjEtMSkgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiAKKworIC0tIEZyYW5rIExpY2h0ZW5oZWxkIDxkanBpZ0BkZWJpYW4ub3JnPiAgTW9uLCAxNiBKdWwgMjAwNyAwMjo1NDoxOCArMDIwMAorKzAyMDAKKworZXJyb3ItdHogKDEuMC0xKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIAorCisgLS0gRnJhbmsgTGljaHRlbmhlbGQgPGRqcGlnQGRlYmlhbi5vcmc+ICBNb24sIDE2IEp1bCAyMDA3IDAyOjU0OjE4ICswMjAwCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvdC82MDBfRHBrZ19DaGFuZ2Vsb2cvcmVncmVzc2lvbnMgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvdC82MDBfRHBrZ19DaGFuZ2Vsb2cvcmVncmVzc2lvbnMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNGM4YWQzMAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90LzYwMF9EcGtnX0NoYW5nZWxvZy9yZWdyZXNzaW9ucwpAQCAtMCwwICsxLDcgQEAKK3JlLWdyZXNzaW9ucysrMS4yLjMgKDApIEFMTE9XRUQuY2hhcnMtNTY3Kzg5MDsgdXJnZW5jeT1sb3cKKworICAqIFRlc3QgYWxsb3dlZCBjaGFycyBpbiBwYWNrYWdlIG5hbWUgYW5kIGRpc3RyaWJ1dGlvbiBuYW1lLgorICAgIChDbG9zZXM6ICMzNjExNzEpCisgICogVGVzdCBob3cgdmVyc2lvbiAwIGlzIGV4cG9ydGVkIHRocm91Z2ggbWV0aG9kcy4KKworIC0tIEZyYW5rIExpY2h0ZW5oZWxkIDxmcmFua0BsaWNodGVuaGVsZC5kZT4gIFRodSwgMDEgSmFuIDE5NzAgMDA6MDA6MDAgKzAwMDAKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90LzYwMF9EcGtnX0NoYW5nZWxvZy9zaGFkb3cgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvdC82MDBfRHBrZ19DaGFuZ2Vsb2cvc2hhZG93Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmYyMTJiYzYKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvdC82MDBfRHBrZ19DaGFuZ2Vsb2cvc2hhZG93CkBAIC0wLDAgKzEsMTc1NSBAQAorc2hhZG93ICgxOjQuMC4zLTM2KSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIERlYmlhbiBzcGVjaWZpYyBwcm9ncmFtcyBmaXhlczoKKyAgICAtIFJlLWVuYWJsZSBsb2dnaW5nIGFuZCBkaXNwbGF5aW5nIGZhaWx1cmVzIG9uIGxvZ2luIHdoZW4gbG9naW4gaXMKKyAgICAgIGNvbXBpbGVkIHdpdGggUEFNIGFuZCB3aGVuIEZBSUxMT0dfRU5BQiBpcyBzZXQgdG8geWVzLiBBbmQgY3JlYXRlIHRoZQorICAgICAgZmFpbGxvZyBmaWxlIGlmIGl0IGRvZXMgbm90IGV4aXN0IG9uIHBvc3RpbnN0IChhcyBvbiBXb29keSkuCisgICAgICBDbG9zZXM6ICMxOTI4NDkKKyAgICAtIGRvIG5vdCBsb2NhbGl6ZSBsb2dpbidzIHN5c2xvZyBtZXNzYWdlcy4KKyAgKiBEZWJpYW4gcGFja2FnaW5nIGZpeGVzOgorICAgIC0gRml4IEZUQkZTIHdpdGggbmV3IGRwa2cgMS4xMyBhbmQgdXNlIGEgY29ycmVjdCBkcGtnLWFyY2hpdGVjdHVyZQorICAgICAgaW52b2NhdGlvbi4gQ2xvc2VzOiAjMzE0NDA3CisgICAgLSBBZGQgYSBjb21tZW50IGFib3V0IHBvdGVudGlhbCBzZW5zaXRpdmUgaW5mb3JtYXRpb24gZXhwb3N1cmUKKyAgICAgIHdoZW4gTE9HX1VOS0ZBSUxfRU5BQiBpcyBzZXQgaW4gbG9naW4uZGVmcworICAgICAgQ2xvc2VzOiAjMjk4NzczCisgICAgLSBSZW1vdmUgbGltaXRzLjUgYW5kIGxpbWl0cy5jb25mLjUgbWFuIHBhZ2VzIHdoaWNoIGRvIG5vdAorICAgICAgcmVmbGVjdCB0aGUgd2F5IHdlIGRlYWwgd2l0aCBsaW1pdHMgaW4gRGViaWFuCisgICAgICBDbG9zZXM6ICMyODgxMDYsICMyNDQ3NTQKKyAgICAtIGRlYmlhbi9sb2dpbi5kZWZzOgorICAgICAgLSBNYWtlIFNVX1BBVEggYW5kIFBBVEggY29uc2lzdGVudCB3aXRoIHRoZSB2YWx1ZXMgdXNlZCBpbiAvZXRjL3Byb2ZpbGUKKyAgICAgICAgQ2xvc2VzOiAjMjg2NjE2CisgICAgICAtIENvbW1lbnQgdGhlIFVNQVNLIHNldHRpbmcgd2hpY2ggaXMgbW9yZSBjb25mdXNpbmcgdGhhbiB1c2VmdWwKKyAgICAgICAgYXMgaXQgb25seSBhZmZlY3RzIGNvbnNvbGUgbG9naW5zLiBCZXR0ZXIgdXNlIHBhbV91bWFzayBpbnN0ZWFkCisgICAgICAgIENsb3NlczogIzMxNDUzOSwgIzI0ODE1MAorICAgICAgLSBBZGQgYSBjb21tZW50IGFib3V0ICJhcHByb3ByaWF0ZSIgdmFsdWVzIGZvciB1bWFzaworICAgICAgICBDbG9zZXM6ICMyNjk1ODMKKyAgICAgIC0gQ29ycmVjdCB0aGUgYXNzZXJ0aW9uIGFib3V0IHRoZSB2YXJpYWJsZSBkZWZpbmVkIGJ5IFFNQUlMX0RJUgorICAgICAgICB3aGljaCBpcyBNQUlMRElSLCBub3QgTUFJTAorICAgICAgICBDbG9zZXM6ICMxMDkyNzkKKyAgICAgIC0gTW92ZSB0aGUgUEFTU19NQVhfTEVOIHZhcmlhYmxlIGF0IHRoZSBlbmQgb2YgbG9naW4uZGVmcyBhcyB0aGlzCisgICAgICAgIGlzIG9ic29sZXRlZCB3aGVuIHVzaW5nIFBBTQorICAgICAgICBDbG9zZXM6ICM4NzMwMQorICAgIC0gZGViaWFuL3Bhc3N3ZC5jb25maWc6CisgICAgICAtIFJlLWVuYWJsZSB0aGUgcGFzc3dvcmQgY29uZmlybWF0aW9uIHF1ZXN0aW9uIGF0IGNyaXRpY2FsIHByaW9yaXR5CisgICAgICAgIENsb3NlczogIzMwNDM1MAorICAgICAgLSBEbyBubyBwcm9tcHQgYWdhaW4gZm9yIHRoZSBsb2dpbiBuYW1lIHdoZW4gdGhlIHR3byBwYXNzd29yZHMgZG9uJ3QKKyAgICAgICAgbWF0Y2ggd2hpbGUgY3JlYXRpbmcgYSBuZXcgdXNlcgorICAgICAgICBDbG9zZXM6ICMyNDUzMzIKKyAgICAtIGRlYmlhbi9hZGQtc2hlbGwuc2gsIGRlYmlhbi9yZW1vdmUtc2hlbGwuc2gsIGRlYmlhbi9zaGFkb3djb25maWcuc2gsCisgICAgICBkZWJpYW4vcGFzc3dkLmNvbmZpZywgZGViaWFuL3Bhc3N3ZC5wb3N0aW5zdDoKKyAgICAgIC0gY2hlY2tlZCBmb3IgYmFzaGlzbXMsIHJlcGxhY2VkICIjIS9iaW4vYmFzaCIgd2l0aCAiIyEvYmluL3NoIiwKKyAgICAgICAgQ2xvc2VzOiAjMzE1NzY3CisgICAgICAtIHJlcGxhY2VkICJ0ZXN0IFhYWCAtYSBZWVkiIFhTSTppc21zIHdpdGggInRlc3QgWFhYICYmIHRlc3QgWVlZIiwKKyAgICAgICAgZm9yIHJhdGlvbmFsZSBzZWU6CisgICAgICAgIGh0dHA6Ly93d3cub3Blbmdyb3VwLm9yZy9vbmxpbmVwdWJzLzAwOTY5NTM5OS91dGlsaXRpZXMvdGVzdC5odG1sCisgICAgICAtIHJlcGxhY2VkIGFsbCB1bm5lZWRlZCAiZWdyZXAicyB3aXRoIGJhc2ljICJncmVwInMKKyAgICAgICAgQ2xvc2VzOiAjMjU2NzMyCisgICAgLSBkZWJpYW4vcnVsZXM6CisgICAgICBSZW1vdmUgdGhlIHNldHVpZCBiaXQgb24gbG9naW4KKyAgICAgIENsb3NlczogIzI5ODA2MAorICAgIC0gZGViaWFuL3Bhc3N3ZC50ZW1wbGF0ZXM6CisgICAgICBUZW1wbGF0ZXMgcmV3cml0ZSB0byBzaG9ydGVuIHRoZW0gZG93biBhIGxpdHRsZSBhbmQgbWFrZSB0aGVtIERUU0cKKyAgICAgIGNvbXBsaWFudC4gR2l2ZSBtb3JlIGRldGFpbHMgYWJvdXQgd2hhdCB0aGUgdXNlcidzIGZ1bGwgbmFtZSBpcyB1c2VkCisgICAgICBmb3IuCisgICAgICBDbG9zZXM6ICMyODc0MTAKKyAgICAtIFVwZGF0ZWQgdG8gU3RhbmRhcmRzOiAzLjYuMiAoY2hlY2tlZCkKKyAgKiBEZWJjb25mIHRyYW5zbGF0aW9uIHVwZGF0ZXM6CisgICAgLSBFc3RvbmlhbiBhZGRlZC4gQ2xvc2VzOiAjMzEyNDcxCisgICAgLSBCYXNxdWUgdXBkYXRlZC4gQ2xvc2VzOiAjMzE0MzAzCisgICAgLSBNYWxhZ2FzeSB1cGRhdGVkLiBDbG9zZXM6ICMyOTA4NDIKKyAgICAtIFB1bmphYmkgdXBkYXRlZC4gQ2xvc2VzOiAjMzE1MzcyCisgICAgLSBEYW5pc2ggdXBkYXRlZC4gQ2xvc2VzOiAjMzE1Mzc4CisgICAgLSBQb2xpc2ggdXBkYXRlZC4gQ2xvc2VzOiAjMzE1MzkxCisgICAgLSBKYXBhbmVzZSB1cGRhdGVkLiBDbG9zZXM6ICMzMTU0MDcKKyAgICAtIEJyYXppbGlhbiBQb3J0dWd1ZXNlIHVwZGF0ZWQuIENsb3NlczogIzMxNTQyNgorICAgIC0gQ3plY2ggdXBkYXRlZC4gQ2xvc2VzOiAjMzE1NDI5CisgICAgLSBTcGFuaXNoIHVwZGF0ZWQuIENsb3NlczogIzMxNTQzNAorICAgIC0gTGl0aHVhbmlhbiB1cGRhdGVkLiBDbG9zZXM6ICMzMTU0ODMKKyAgICAtIEdhbGljaWFuIHVwZGF0ZWQuIENsb3NlczogIzMxNTM2MgorICAgIC0gUG9ydHVndWVzZSB1cGRhdGVkLiBDbG9zZXM6ICMzMTUzNzUKKyAgICAtIFNpbXBsaWZpZWQgQ2hpbmVzZSB1cGRhdGVkLiBDbG9zZXM6ICMzMTU1NjcKKyAgICAtIEZyZW5jaCB1cGRhdGVkCisgICAgLSBVa3JhaW5pYW4gdXBkYXRlZC4gQ2xvc2VzOiAjMzE1NzI3CisgICAgLSBXZWxzaCB1cGRhdGVkLiBDbG9zZXM6ICMzMTU4MDkKKyAgICAtIFNsb3ZhayB1cGRhdGVkLiBDbG9zZXM6ICMzMTU4MTIKKyAgICAtIFJvbWFuaWFuIHVwZGF0ZWQuIENsb3NlczogIzMxNTc4MworICAgIC0gRmlubmlzaCB1cGRhdGVkLiBDbG9zZXM6ICMzMTU5NzIKKyAgICAtIENhdGFsYW4gdXBkYXRlZC4gQ2xvc2VzOiAjMzE2MDI2CisgICogTWFuIHBhZ2VzIHRyYW5zbGF0aW9uIHVwZGF0ZXM6CisgICAgLSBSZW1vdmUgdGhlIHRvbyBvdXRkYXRlZCBLb3JlYW4gdHJhbnNsYXRpb24gb2YgbmV3Z3JwLjEKKyAgICAgIHdoaWNoIGRvZXNuJ3QgZXZlbiBtZW50aW9uIHNnCisgICAgICBDbG9zZXM6ICMyNjE0OTAKKyAgKiBNYW4gcGFnZXMgY29ycmVjdGlvbiBmb3IgRGViaWFuIHNwZWNpZmljIGlzc3VlczoKKyAgICAtIDQwMl91c2VybW9kLjgtc3lzdGVtLXVzZXJzLXJhbmdlLTI4NjI1ODoKKyAgICAgIERvY3VtZW50IHRoZSBzeXN0ZW0gdXNlciByYW5nZSBmcm9tIDAgdG8gOTk5IGluIERlYmlhbgorICAgICAgQ2xvc2VzOiAjMjg2MjU4CisgICogVXBzdHJlYW0gYnVncyBub3QgZml4ZWQgaW4gdXBzdHJlYW0gcmVsZWFzZXMgb3IgQ1ZTOgorICAgIC0gNDIzX3N1X3Bhc3NfYXJnc193aXRob3V0X2NvbmNhdGVuYXRpb24KKyAgICAgIFRoYW5rcyB0byBIZWxtdXQgV2FpdHptYW5uLgorICAgICAgQ2xvc2VzOiAjMjc2NDE5CisgICAgICAqIHBhc3MgdGhlIGFyZ3VtZW50IHRvIHRoZSBzaGVsbCBvciBjb21tYW5kIHdpdGhvdXQgY29uY2F0ZW5hdGlvbgorICAgICAgICBiZWZvcmUgdGhlIGNhbGwgdG8gZXhlYy4KKyAgICAgICogSWYgbm8gY29tbWFuZCBpcyBwcm92aWRlZCwgdGhlIGFyZ3VtZW50cyBhZnRlciB0aGUgdXNlcm5hbWUgYXJlIGZvcgorICAgICAgICB0aGUgc2hlbGwsIG5vIC1jIGhhcyB0byBiZSBhcHBlbmRlZC4KKyAgICAtIDAwOF9zdV9pZ25vcmVfU0lHSU5UCisgICAgICAqIEFsc28gaWdub3JlIFNJR1FVSVQgaW4gc3UgdG8gYXZvaWQgZGVmZWF0aW5nIHRoZSBkZWxheS4KKyAgICAgICAgVGhlIGdhaW4gaW4gc2VjdXJpdHkgaXMgdmVyeSBtaW5vci4KKyAgICAgICAgQ2xvc2VzOiAjMjg4ODI3CisgICAgLSA0MjRfcHdjay44X3F1aWV0X29wdGlvbgorICAgICAgcHdjayg4KTogZG9jdW1lbnQgdGhlIC1xIG9wdGlvbi4gQ2xvc2VzOiAjMzA5NDA4CisgICAgLSA0MjVfbGFzdGxvZ184X3NwYXJzZQorICAgICAgbGFzdGxvZyg4KTogRG9jdW1lbnQgdGhhdCBsYXN0bG9nIGlzIGEgc3BhcnNlIGZpbGUsIGFuZCBkb24ndCBuZWVkIHRvIGJlCisgICAgICByb3RhdGVkLiBDbG9zZXM6ICMyMTkzMjEKKyAgICAtIDQyNl9ncnBja19ncm91cC1nc2hhZG93X21lbWJlcnNfY29uc2lzdGVuY3kKKyAgICAgICogKGdycGNrKSB3YXJuIGZvciBpbmNvbnNpc3RlbmNpZXMgYmV0d2VlbiBtZW1iZXJzIGluIC9ldGMvZ3JvdXAgYW5kIGdzaGFkb3cKKyAgICAgICAgQ2xvc2VzOiAjNzUxODEKKyAgICAgICogKHB3Y2sgYW5kIGdycGNrKSB3YXJuIGFuZCBwcm9wb3NlIGEgZml4IGZvciBlbnRyaWVzIHByZXNlbnQgaW4gdGhlCisgICAgICAgIHJlZ3VsYXIgL2V0Yy9ncm91cCBvciAvZXRjL3Bhc3N3ZCBmaWxlcyBhbmQgbm90IGluIHNoYWRvdy9nc2hhZG93LgorICAgIC0gNDI3X2NoYWdlX2V4cGlyeV8wCisgICAgICBGaXggY2hhZ2UgZGlzcGxheSBpbiB0aGUgY2FzZSBvZiBudWxsIGV4cGlyeSBmaWVsZHMgKGRvIG5vdCBkaXNwbGF5CisgICAgICBOZXZlciwgYnV0IDAxIEphbiAxOTcwKQorICAgICAgQ2xvc2VzOiAjNzg5NjEKKyAgKiBVcHN0cmVhbSBidWdzIGFscmVhZHkgZml4ZWQgaW4gdXBzdHJlYW0gcmVsZWFzZXMgb3IgQ1ZTOgorICAgIC0gQ29ycmVjdGVkIHR5cG9zIGluIGNoZm4uMS4gQ2xvc2VzOiAjMzEyNDI4CisgICAgLSBDb3JyZWN0ZWQgdHlwb3MgaW4gZ3NoYWRvdy41LiBDbG9zZXM6ICMzMTI0MjkKKyAgICAtIENvcnJlY3RlZCB0eXBvcyBpbiBzaGFkb3cuNS4gQ2xvc2VzOiAjMzEyNDMwCisgICAgLSBDb3JyZWN0ZWQgdHlwb3MgaW4gZ3JwY2suOC4gQ2xvc2VzOiAjMzEyNDMxCisgICAgLSBBZGRlZCBwYXRjaCAoMzU2dGgpIGZvciBzdSB0byBwcm9wYWdhdGUgU0lHU1RPUCB1cCBhbmQgU0lHQ09OVCBkb3duLgorICAgICAgQWRkZWQgc2ltaWxhciBwYXRjaCAoMzU3dGgpIGZvciBuZXdncnAuIEJvdGggY2hhbmdlcyBvbmx5IGFmZmVjdAorICAgICAgb3BlcmF0aW9uIHdpdGggQ0xPU0VfU0VTU0lPTiBzZXQgdG8geWVzIChpbiAvZXRjL2xvZ2luLmRlZnMpLgorICAgICAgQ2xvc2VzOiAjMzE0NzI3CisgICogVHJhbnNsYXRpb24gdXBkYXRlczoKKyAgICAtIGRlYmlhbi9wYXRjaGVzLzAxMF9tb3JlLWkxOG5lZC1tZXNzYWdlcworICAgICAgLSBNb3JlIG1lc3NhZ2VzIGFyZSB0cmFuc2xhdGFibGUuIFdlIHdpbGwgZGVhbCB3aXRoIHRoZSB0cmFuc2xhdGlvbgorICAgICAgICB1cGRhdGVzIGFmdGVyIHN5bmNpbmcgd2l0aCB1cHN0cmVhbS4KKyAgICAgICAgQ2xvc2VzOiAjMjY2MjgxCisgICAgLSBkZWJpYW4vcGF0Y2hlcy8xMTRfZXU6CisgICAgICAtIEJhc3F1ZSB0cmFuc2xhdGlvbiB1cGRhdGUuIENsb3NlczogIzMxNDQyMworICAgIC0gZGViaWFuL3BhdGNoZXMvMTMyX3ZpLmRwYXRjaDoKKyAgICAgIC0gVmlldG5hbWVzZSB0cmFuc2xhdGlvbiB1cGRhdGUuIENsb3NlczogIzMxNTg0MAorIC0tIENocmlzdGlhbiBQZXJyaWVyIDxidWJ1bGxlQGRlYmlhbi5vcmc+ICBNb24sIDIwIEp1biAyMDA1IDIzOjM3OjU2ICswMzAwCisKK3NoYWRvdyAoMTo0LjAuMy0zNSkgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBSZS1hcHBseSB0aGUgZGViaWFuL3BhdGNoZXMvMDM2X0NBTi0yMDA0LTEwMDFfcGFzc3dkX2NoZWNrIHBhdGNoCisgICAgd2hpY2ggZml4ZWQgdGhlICJBZGp1c3RlZCBwYXNzd29yZCBjaGVjayB0byBmaXggYXV0aGVudGljYXRpb24gYnlwYXNzIgorICAgIHNlY3VyaXR5IGlzc3VlIChDQU4tMjAwNC0xMDAxKQorICAqIERlYmlhbiBwYWNrYWdpbmcgZml4ZXM6CisgICAgLSBBZGQgLS1ob3N0IHRvIGNvbmZpZ19vcHRpb25zIG9uIGNyb3NzIGJ1aWxkLiBQYXRjaCBmcm9tIE5JSUJFIFl1dGFrYS4KKyAgICAgIENsb3NlczogIzI4MzcyOQorICAgIC0gRW5hYmxlIGxvZ2luIGZvciBHTlUvSHVyZCBpbiBydWxlcy4gRmlyc3QgcGF0Y2ggZnJvbSBSb2JlcnQgTWlsbGFuLgorICAgICAgQ2xvc2VzOiAjMjQ5MzcyCisgICAgLSBDbGVhbnVwIHBhc3N3ZCBkZWJjb25mIHN0dWZmIGFzIG1kNSBwYXNzd29yZHMgYXJlIGFzc3VtZWQgc2luY2UKKyAgICAgIDE6NC4wLjMtMTkgYW5kIHRoZSByZXNvbHV0aW9uIG9mICMyMjM2NjQuCisgICAgLSBEb2N1bWVudCB0aGUgVFRZUEVSTSB2YXJpYWJsZSBzZXQgdG8gMDYwMCBpbiB0aGUgZGVmYXVsdCBsb2dpbi5kZWZzIGZpbGUKKyAgICAgIENsb3NlczogIzU5NDM5CisgICAgLSBNYWtlIGxvZ2luIGFuZCBzdSB1c2UgbGltaXRzLnNvIFBBTSBtb2R1bGUgYnkgZGVmYXVsdAorICAgICAgKGNoYW5nZSBtYWRlIGluIHNhcmdlIGJyYW5jaCBhbHNvKQorICAgICAgQ2xvc2VzOiAjMzAwNzIwCisgICAgLSBkZWJpYW4vcnVsZXM6IEFkZCByZW1vdmFsIG9mIGNvbmZpZy5sb2cgaW4gdGhlIGNsZWFuIHRhcmdldAorICAgIC0gZGViaWFuL2NvbnRyb2w6IAorICAgICAgLSBBZGQgTWFydGluIHRvIFVwbG9hZGVycworICAgICAgLSBSZW1vdmUgU2FtIEhhcnRtYW4gZnJvbSBVcGxvYWRlcnMuIFRoZSB0ZWFtIGlzIG5vdyBzZXR1cCBhbmQgdGhpcworICAgICAgICBkb2VzIG5vdCByZWFsbHkgaGF2ZSBhIHJlYWwgbWVhbmluZyBub3cuIFlvdSdyZSBzdGlsbCB3ZWxjb21lIGZvcgorICAgICAgICBOTVUncywgU2FtLCBhbmQgdGhhbmtzIGZvciB0aGUgZ29vZCB3b3JrLgorICAgIC0gU3dpdGNoaW5nIGZyb20gZHBhdGNoIHRvIHF1aWx0LgorICAqIERlYmNvbmYgdHJhbnNsYXRpb24gdXBkYXRlczoKKyAgICAtIFBvcnR1Z3Vlc2Ugc3BlbGxjaGVja2VkIGJ5IE1pZ3VlbCBGaWd1ZWlyZWRvCisgICAgLSBQdW5qYWJpIChHdW11cmtoaSkgYWRkZWQsIGJ5IEFtYW5wcmVldCBTaW5naCBBbGFtLiBDbG9zZXM6ICMzMDk4MDAKKyAgKiBNYW4gcGFnZXMgdHJhbnNsYXRpb24gdXBkYXRlczoKKyAgICAtIEdlcm1hbiBjb21wbGV0ZWQgYnkgcmVmZXJlbmNlIHRvIG9yaWdpbmFsIG1hbiBwYWdlCisgICAgICBDbG9zZXM6ICMzMTE1NTQKKyAgKiBEZWJpYW4gc3BlY2lmaWMgcHJvZ3JhbXMgZml4ZXM6CisgICAgLSBOT05FCisgICogVXBzdHJlYW0gYnVncyBub3QgZml4ZWQgaW4gdXBzdHJlYW0gcmVsZWFzZXMgb3IgQ1ZTOgorICAgIC0gNDIxX2xvZ2luLjFfcGlzaGluZzoKKyAgICAgIERvY3VtZW50IGhvdyB0byBpbml0aWF0ZSBhIHRydXN0ZWQgcGF0aCB1bmRlciBMaW51eAorICAgICAgQ2xvc2VzOiAjMzA1NjAwCisgICAgLSBzZXQgQ0xPU0VfU0VTU0lPTlMgdG8geWVzIGluIGxvZ2luLmRlZnMsIGFuZCBkb2N1bWVudCB3aHkuCisgICAgICBDbG9zZXM6ICMxNjM2MzUKKyAgKiBVcHN0cmVhbSBidWdzIGFscmVhZHkgZml4ZWQgaW4gdXBzdHJlYW0gcmVsZWFzZXMgb3IgQ1ZTOgorICAgIC0gMzI0X2NvbmZpZ3VyZS5pbi1uby1kZWJpYW4tZGlyOgorICAgICAgU2VwYXJhdGVkIGZyb20gMDA0X2NvbmZpZ3VyZS5pbiA6IHRoaXMgY2hhbmdlIHdpbGwgbm90IGJlIG5lZWRlZCB3aGVuCisgICAgICBzeW5jaW5nIHdpdGggdXBzdHJlYW0KKyAgICAtIDMyNV9nc2hhZG93XzVfbWFucGFnZToKKyAgICAgIEFkZCBhIGdzaGFkb3cuNSBtYW4gcGFnZSwgYW5kIGNsYXJpZmljYXRpb25zIGluIHRoZSBuZXdncnAgYW5kIGdwYXNzd2QKKyAgICAgIG1hbiBwYWdlcy4KKyAgICAgIENsb3NlczogIzExMzE5MSwgIzE2NjE3MywgIzE2OTA0NiwgIzI1MTkyNgorICAgIC0gMzI2X3N1LjFfcHdjb252LjgtdHlwb3M6CisgICAgICBDb3JyZWN0IHR5cG9zIGluIHN1LjEgYW5kIHB3Y29udi44IG1hbiBwYWdlcy4KKyAgICAgIENsb3NlczogIzMwOTY2NgorICAqIFRyYW5zbGF0aW9uIHVwZGF0ZXM6CisgICAgLSAwMDRfY29uZmlndXJlLmluLCAxMDBfTElOR1VBUworICAgICAgQWRkIFZpZXRuYW1lc2UgdG8gTElOR1VBUy4gUGF0Y2ggZm9yIExJTkdVQVMgaW4gY29uZmlndXJlLmluIG1vdmVkCisgICAgICBmcm9tIDAwNF9jb25maWd1cmUuaW4gdG8gdGhlIG5ldyAxMDBfTElOR1VBUyBwYXRjaAorICAgIC0gMTAxX2NzOiBDemVjaCB1cGRhdGVkIGJ5IE1pcm9zbGF2IEt1cmUKKyAgICAgIENsb3NlczogIzMwODY1OAorICAgIC0gMTAyX2RlOiBHZXJtYW4gdXBkYXRlZCBieSBEZW5uaXMgU3RhbXBmZXIKKyAgICAtIDEwNF9mcjogRnJlbmNoIHVwZGF0ZWQgYnkgSmVhbi1MdWMgQ291bG9uCisgICAgICBDbG9zZXM6ICMzMDg5MDkKKyAgICAtIDExMV9jYTogQ2F0YWxhbiBjb21wbGV0ZWQgYnkgR3VpbGxlbSBKb3ZlcgorICAgICAgQ2xvc2VzOiAjMzA5MjEyCisgICAgLSAxMDhfc3Y6IFN3ZWRpc2ggY29tcGxldGVkIHdpdGggdGhlIGhlbHAgb2YgTWFnbnVzIEhvbG1ncmVuCisgICAgICAgICAgICAgIEVuY29kaW5nIGlzc3VlcyBmaXhlZAorICAgICAgICAgICAgICBDbG9zZXM6ICMzMDkzODAKKyAgICAtIDEwOV91azogVWtyYWluaWFuIGNvbXBsZXRlZCBieSBFdWdlbml5IE1lc2hjaGVyeWFrb3YKKyAgICAgIENsb3NlczogIzMwODY0NworICAgIC0gMTIwX25sOiBEdXRjaCB1cGRhdGVkIGJ5IEJhcnQgQ29ybmVsaXMKKyAgICAgIENsb3NlczogIzMwODY2MgorICAgIC0gMTI0X3J1OiBSdXNzaWFuIHVwZGF0ZWQgYnkgWXVyaSBLb3psb3YKKyAgICAgIENsb3NlczogIzMwODgzOQorICAgIC0gMTI5X3J1OiBSb21hbmlhbiB1cGRhdGVkIGJ5IFNvcmluIEJhdGFydWMKKyAgICAgIENsb3NlczogIzMwODkyMQorICAgIC0gMTMwX3poX1RXOiBUcmFkaXRpb24gQ2hpbmVzZSB1cGRhdGVkIGJ5IFRldHJhbGV0CisgICAgICBDbG9zZXM6ICMzMTE1ODgKKyAgICAtIDEzMV90bDogVGFnYWxvZyB1cGRhdGVkIGJ5IEVyaWMgUGFyZWphCisgICAgICBDbG9zZXM6ICMzMTAzODYKKyAgICAtIDEzMl92aTogQ29ycmVjdCBmaWxlIHVzZWQgZm9yIFZpZXRuYW1lc2UgdGFuc2xhdGlvbgorICAgICAgQ2xvc2VzOiAjMzA2NjE0LCAjMzA3MjUxLCAjMzA3MjYyLCAjMzA4NDc5CisKKyAtLSBDaHJpc3RpYW4gUGVycmllciA8YnVidWxsZUBkZWJpYW4ub3JnPiAgRnJpLCAgMyBKdW4gMjAwNSAwNzozMjowNyArMDIwMAorCitzaGFkb3cgKDE6NC4wLjMtMzQpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogRGViaWFuIHBhY2thZ2luZyBmaXhlczoKKyAgICAtIE5PTkUKKyAgKiBEZWJpYW4gc3BlY2lmaWMgcHJvZ3JhbXMgZml4ZXM6CisgICAgLSBOT05FCisgICogVXBzdHJlYW0gYnVncyBub3QgZml4ZWQgaW4gdXBzdHJlYW0gcmVsZWFzZXMgb3IgQ1ZTOgorICAgIC0gNDA2X2dvb2RfbmFtZToKKyAgICAgIC0gcmVsYXhlZCB1c2VyL2dyb3VwIG5hbWVzIGNoZWNraW5nIGlzIG5vdyBmaXhlZCBhbmQgYWNjZXB0cworICAgICAgICBfb25seV8gbmFtZXMgbWF0Y2hpbmcgJ15bXi06XG5dW146XG5dKiQnCisgICAgICAgIENsb3NlczogIzI2NDg3OSwgIzMwODQ3OAorICAqIFVwc3RyZWFtIGJ1Z3MgYWxyZWFkeSBmaXhlZCBpbiB1cHN0cmVhbSByZWxlYXNlcyBvciBDVlM6CisgICAgLSAzMTFfaGlnaC11aWRzLmRwYXRjaDoKKyAgICAgIC0gQWRkIGxhcmdlIGZpbGUgc3VwcG9ydCB0byBsYXN0bG9nIGFuZCBmYWlsbG9nLiBDbG9zZXM6ICMyODAyMTIKKyAgKiBUcmFuc2xhdGlvbiB1cGRhdGVzOgorICAgIC0gMTMyX3ZpOgorICAgICAgVmlldG5hbWVzZSBwcm9ncmFtcyB0cmFuc2xhdGlvbiBhZGRlZCAoZnJvbSB1cHN0cmVhbSBDVlMpCisgICAgICBDbG9zZXM6ICMzMDg0NzkKKyAgICAtIDExOF9pdDoKKyAgICAgIEl0YWxpYW4gcHJvZ3JhbXMgdHJhbnNsYXRpb24gdXBkYXRlZAorICAgICAgQ2xvc2VzOiAjMzA4MzI3CisKKyAtLSBDaHJpc3RpYW4gUGVycmllciA8YnVidWxsZUBkZWJpYW4ub3JnPiAgVHVlLCAxMCBNYXkgMjAwNSAxODoyNDoxMiArMDIwMAorCitzaGFkb3cgKDE6NC4wLjMtMzMpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogVGhlICJEb24ndCBiZWxpZXZlIGxpbnRpYW4gYmxpbmRseSIgcmVsZWFzZQorICAqIFVyZ2VuY3kgbGVmdCB0byBsb3cgYmVjYXVzZSBSQyBidWcgZml4ZWQgYnV0IHdlIGxlYXZlIHByaW9yaXR5CisgICAgdG8gc2FyZ2UtdGFyZ2V0ZWQgd29yaworICAqIERlYmlhbiBwYWNrYWdpbmcgZml4ZXM6CisgICAgLSBSZW1vdmUgQ1ZTIGlkIHRhZyBmcm9tIHRoZSBzdXBwbGllZCBsb2dpbi5kZWZzIGZpbGUKKyAgICAgIENsb3NlczogIzMwODAxOQorICAgIC0gcmV2ZXJ0IGRlcGVuZGVuY3kgb24gZGViY29uZiB3aGljaCB3b3VsZCBtYWtlIGl0IHJlcXVpcmVkCisgICAgICBDbG9zZXM6ICMzMDgxNDUKKyAgICAtIEFkZCB0aGUgbWlzc2luZyBhZGQtc2hlbGwsIHJlbW92ZS1zaGVsbCwgY3BwdyBhbmQgY3BncgorICAgICAgKERlYmlhbiBzcGVjaWZpYykgbWFuIHBhZ2VzCisgICAgICBDbG9zZXM6ICMxNjIyNDEKKyAgICAtIG1ha2UgbGludGlhbiBpZ25vcmUgd2FybmluZ3MgYWJvdXQgbWlzc2luZyBkZWJjb25mIGRlcGVuZGVuY3kKKyAgICAgIGluIHBhc3N3ZC5saW50aWFuLW92ZXJyaWRlcworICAqIERlYmlhbiBzcGVjaWZpYyBwcm9ncmFtcyBmaXhlczoKKyAgICAtIE5PTkUKKyAgKiBVcHN0cmVhbSBidWdzIG5vdCBhbHJlYWR5IGZpeGVkIGluIHVwc3RyZWFtIHJlbGVhc2VzIG9yIENWUzoKKyAgICAtIE5PTkUKKyAgKiBVcHN0cmVhbSBidWdzIGFscmVhZHkgZml4ZWQgaW4gdXBzdHJlYW0gcmVsZWFzZXMgb3IgQ1ZTOgorICAgIC0gMzEzX3BhbV9hY2Nlc3Nfd2l0aF9wcmVhdXRoOgorICAgICAgLSBhbGxvdyBQQU0gYWNjb3VudCBhdXRob3JpemF0aW9uIHdoZW4gcHJlYXV0aGVudGljYXRlZAorICAgICAgICBDbG9zZXM6ICMxOTM4NjkKKyAgICAtIDMxNF9wYXNzd2QuMV9mb3JtYXR0aW5nOgorICAgICAgLSBtaW5vciBmb3JtYXR0aW5nIGZpeGVzIG9mIHBhc3N3ZCgxKSBtYW4gcGFnZQorICAgICAgICBDbG9zZXM6ICMzMDQ0NDcKKyAgICAtIDMxNV9jaGFnZS4xX2RvY3VtZW50X2V4cGlyYXRpb25fcmVtb3ZhbDoKKyAgICAgIC0gZG9jdW1lbnQgZXhwaXJhdGlvbiByZW1vdmFsIGluIGNoYWdlKDEpCisgICAgICAgIENsb3NlczogIzMwNDU0MgorICAgIC0gMzE2X3ZpcHctcmFjZS0yNDI0MDc6CisgICAgICAtIG1ha2UgdmlwdyB0byByZW1vdmUgL2V0Yy97cGFzc3dkfHNoYWRvd3xncm91cHxnc2hhZG93fS5lZGl0CisgICAgICAgIGFuZCBvbmx5IHRoZW4gdW5sb2NrCisgICAgICAgIENsb3NlczogIzI0MjQwNworICAgIC0gMzE3X2xhc3Rsb2dfdXNhZ2VfMjQ5NjExOgorICAgICAgLSBGaXggdGhlIGxhc3Rsb2cgdXNhZ2UgYW5kIGFsbCB0aGUgdHJhbnNsYXRpb25zIGFjY29yZGluZ2x5CisgICAgICAgICgtLXVzZXIgaW5zdGVhZCBvZiAtLWxvZ2luKS4KKyAgICAgICAgQ2xvc2VzOiAjMjQ5NjExCisgICAgLSAzMjNfcGFzc3dkLjEtdHlwbzoKKyAgICAgIC0gY29ycmVjdCBhIHR5cG8gaW4gcGFzc3dkKDEpIG1hbiBwYWdlLiBDbG9zZXM6ICMzMDI3NDAKKworIC0tIENocmlzdGlhbiBQZXJyaWVyIDxidWJ1bGxlQGRlYmlhbi5vcmc+ICBTdW4sICA4IE1heSAyMDA1IDE0OjMyOjIwICswMjAwCisKK3NoYWRvdyAoMTo0LjAuMy0zMikgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBTd2l0Y2ggdG8gZHBhdGNoIGZvciB1cHN0cmVhbSBwYXRjaGVzCisgICAgVGhpcyBzaG91bGQgYnJpbmcgbW9yZSBjbGFyaXR5IHRvIG1vZGlmaWNhdGlvbnMKKyAgICB3ZSBtYWtlIHRvIHVwc3RyZWFtIHNvdXJjZXMgYW5kIGhlbHAgaW50ZWdyYXRpbmcKKyAgICBuZXcgdXBzdHJlYW0gcmVsZWFzZXMKKyAgICBPbGQgcGF0Y2hlcyBoYXZlIGJlZW4gbW92ZWQgcXVpdGUgcm91Z2hseSB0bworICAgIGRlYmlhbi9wYXRjaGVzCisgICogTW9kaWZpZWQgZGViaWFuL3J1bGVzIGZvciAiQ2FsbGluZyBHTlUgY29uZmlndXJlIHByb3Blcmx5Iiwgc2VlCisgICAgL3Vzci9zaGFyZS9kb2MvYXV0b3Rvb2xzLWRldi9SRUFETUUuRGViaWFuLmd6CisgICogRGViaWFuIHBhY2thZ2luZyBmaXhlczoKKyAgICAtIExpbnRpYW4gZml4ZXM6CisgICAgICAtIERlc2NyaXB0aW9uIHN5bm9wc2lzIGluaXRpYWwgY2FwaXRhbCBsZXR0ZXJzIHJlbW92ZWQKKyAgICAgIC0gcGFzc3dkIG5vdyBkZXBlbmRzIG9uIGRlYmNvbmYgKD49MC41LjAwKSBhcyBpdCB1c2VzIHRoZSBzZWVuIGZsYWcKKyAgICAgIC0gYWRkIGxvZ2luLmxpbnRpYW4tb3ZlcnJpZGVzIGFuZCBwYXNzd2QubGludGlhbi1vdmVycmlkZXMKKyAgICAgICAgZmlsZXMgdG8gbWVudGlvbiBzZXR1aWQgYW5kIHNldGdpZCBmaWxlcyBhbmQgYXZvaWQgbGludGlhbiB3YXJuaW5nCisgICAgICAgIGFib3V0IHRoZW0KKyAgICAtIGRlYmlhbi9wYW0uZC9sb2dpbjoKKyAgICAgIC0gUmVtb3ZlIHRoZSBjb25mdXNpbmcgY29tbWVudCBhYm91dCAibnVsbG9rIi4gQ2xvc2VzOiAjMjA3ODE2CisgICAgLSBkZWJpYW4vcnVsZXM6CisgICAgICAtIEFkZCBjYWxsIGZvciBkaF9pbnN0YWxsZGlycworICAgIC0gZGViaWFuL3Bhc3N3ZC5kaXJzOgorICAgICAgLSBBZGRlZAorICAgIC0gZGViaWFuL2xvZ2luLmRpcnM6CisgICAgICAtIEFkZGVkCisgICogRGViaWFuIHNwZWNpZmljIHByb2dyYW1zIGZpeGVzOgorICAgIC0gZml4ZWQgL3Vzci9zYmluL3JlbW92ZS1zaGVsbCBidWcgd2l0aCBoYW5kbGluZyBvZiBub24tZXhpc3RpbmcvZW1wdHkKKyAgICAgIC9ldGMvc2hlbGxzIGZpbGUuIENsb3NlczogIzI3MTU2NQorICAqIEdOVSBjb25maWcgYXV0b21hdGVkIHVwZGF0ZTogY29uZmlnLnN1YiAoMjAwMTA5MDcgdG8gMjAwNTA0MjIpLAorICAgIGNvbmZpZy5ndWVzcyAoMjAwMTA5MDQgdG8gMjAwNTA0MjIpCisKKyAtLSBDaHJpc3RpYW4gUGVycmllciA8YnVidWxsZUBkZWJpYW4ub3JnPiAgVHVlLCAgMyBNYXkgMjAwNSAxMTo1MzoxMiArMDIwMAorCitzaGFkb3cgKDE6NC4wLjMtMzFzYXJnZTMpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogVGhlICJwbGVhc2UgYnV5IG1lIGEgYnJhaW4iIHJlbGVhc2UKKyAgKiAqUmVhbGx5KiBzaG9ydGVuIGRvd24gdGhlIER1dGNoIGRlYmNvbmYgdHJhbnNsYXRpb24gZm9yIHRoZSByb290IHBhc3N3b3JkCisgICAgaW5wdXQgc28gdGhhdCBpdCBmaXRzIGluIG9uZSBzY3JlZW4uIENsb3NlczogIzI3Nzc1MAorICAqIG1hbi91c2VybW9kLjg6ICpSZWFsbHkqIGRvY3VtZW50IC1vIG9wdGlvbiBpbiB1c2VybW9kCisJICAgICAgICAgICBDbG9zZXM6ICMzMDIzODgKKyAgKiBtYW4vZnIvcG80YS9mcjogUmVtb3ZlZC4gVGhpcyBkaXJlY3Rvcnkgb25seSBjbHV0dGVycyB1cCB0aGUgZGlmZgorCSAgICAgICAgICAgIGFuZCBpcyBub3QgdXNlZCBkdXJpbmcgdGhlIGJ1aWxkIHByb2Nlc3MKKyAgKiBtYW4vZGUvcGFzc3dkLjE6IFVwZGF0ZWQuIENsb3NlczogIzMwNDc1NworICAqIG1hbi9kZS9jaHNoLjE6IFVwZGF0ZWQuCisgICogbWFuL2l0Lyo6IEFsbCBmaWxlcyB1cGRhdGVkLiBDbG9zZXM6ICMzMDUwOTUKKyAgKiBUcmFuc2xhdGlvbiB1cGRhdGVzOgorICAgIC0gUG9ydHVndWVzZSAoZnJvbSB0aGUgdHJhbnNsYXRpb24gZmlsZSBzZW50IGZvciA0LjAuOCB1cHN0cmVhbSkKKyAgICAgIENsb3NlczogIzMwNTI1NworCisgLS0gQ2hyaXN0aWFuIFBlcnJpZXIgPGJ1YnVsbGVAZGViaWFuLm9yZz4gIFR1ZSwgMTkgQXByIDIwMDUgMTk6MzE6NDMgKzAyMDAKKworc2hhZG93ICgxOjQuMC4zLTMxc2FyZ2UyKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIFNob3J0ZW4gZG93biB0aGUgRHV0Y2ggZGViY29uZiB0cmFuc2xhdGlvbiBmb3IgdGhlIHJvb3QgcGFzc3dvcmQKKyAgICBpbnB1dCBzbyB0aGF0IGl0IGZpdHMgaW4gb25lIHNjcmVlbi4gQ2xvc2VzOiAjMjc3NzUwCisgICogbWFuL3VzZXJtb2QuODogRG9jdW1lbnQgLW8gb3B0aW9uIGluIHVzZXJtb2QKKyAgICAgICAgICAgICAgICAgICBDbG9zZXM6ICMzMDIzODgKKworIC0tIENocmlzdGlhbiBQZXJyaWVyIDxidWJ1bGxlQGRlYmlhbi5vcmc+ICBNb24sICA0IEFwciAyMDA1IDIwOjI4OjQ3ICswMjAwCisKK3NoYWRvdyAoMTo0LjAuMy0zMXNhcmdlMSkgdW5zdGFibGU7IHVyZ2VuY3k9aGlnaAorCisgICogVXJnZW5jeSBzZXQgdG8gaGlnaCBiZWNhdXNlIG9mIFJDIGJ1ZyBmaXhlZC4gUmV1cGxvYWRlZAorICAgIGJlY2F1c2UgSSBtZXNzZWQgdXAgd2l0aCB0aGUgY2hhbmdlbG9nIGZpcnN0LiBVc2UgdGhpcyBvY2Nhc2lvbgorICAgIHRvIHN0YXJ0IGEgc2FyZ2Ugc2VyaWVzIGp1c3QgaW4gY2FzZS4gQ2hhbmdlcyBiZWxvdyB3ZXJlIG1hZGUKKyAgICBpbiB0aGUgZm9ybWVyIHZlcnNpb24gYWxyZWFkeS4KKyAgKiBBdm9pZCBwYWNrYWdlIGZpbGUgY29uZmxpY3RzIGZvciB3b29keS0+c2FyZ2UgdXBncmFkZToKKyAgICAtIEFkZCBtYW5wYWdlcy1pdCBhbmQgbWFucGFnZXMta28gdG8gUmVwbGFjZXM6IGZvciBsb2dpbgorICAgIC0gUmVtb3ZlIG1hbnBhZ2VzLWRlIGZyb20gUmVwbGFjZXM6IGZvciBsb2dpbiAodXNlbGVzcykKKyAgICAtIEltcHJvdmUgcmVhZGFiaWxpdHkgb2YgdGhlIFJlcGxhY2VzIGxpbmUgZm9yIHBhc3N3ZAorICAgIENsb3NlczogIzI5OTU0OQorCisgLS0gQ2hyaXN0aWFuIFBlcnJpZXIgPGJ1YnVsbGVAZGViaWFuLm9yZz4gIFR1ZSwgMTUgTWFyIDIwMDUgMTM6NTU6MzQgKzAxMDAKKworc2hhZG93ICgxOjQuMC4zLTMxKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIE5ldyBtYWludGFpbmVyCisKKyAtLSBDaHJpc3RpYW4gUGVycmllciA8YnVidWxsZUBkZWJpYW4ub3JnPiAgRnJpLCAxMSBNYXIgMjAwNSAxOToyODozOCArMDEwMAorCitzaGFkb3cgKDE6NC4wLjMtMzAuMTApIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogTm9uLW1haW50YWluZXIgdXBsb2FkIHRhcmdldGVkIGF0IHNhcmdlLgorICAqIFByb2dyYW1zIHRyYW5zbGF0aW9uczoKKyAgICAtIEdyZWVrIHVwZGF0ZWQuIENsb3NlczogIzI5MzkxMQorICAgIC0gRnJlbmNoIHVwZGF0ZWQuIENsb3NlczogIzI5NDMzMAorICAqIERlYmNvbmYgdHJhbnNsYXRpb25zOgorICAgIC0gR2FsaWNpYW4gdXBkYXRlZC4gQ2xvc2VzOiAjMjk1NTQzCisKKyAtLSBDaHJpc3RpYW4gUGVycmllciA8YnVidWxsZUBkZWJpYW4ub3JnPiAgTW9uLCAgNyBGZWIgMjAwNSAwODoxODo1NiArMDEwMAorCitzaGFkb3cgKDE6NC4wLjMtMzAuOSkgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBOb24tbWFpbnRhaW5lciB1cGxvYWQgdGFyZ2V0ZWQgYXQgc2FyZ2UuCisgICogUHJvZ3JhbXMgdHJhbnNsYXRpb25zOgorICAgIC0gR2VybWFuIHVwZGF0ZWQuIENsb3NlczogIzI5MTcwMworICAgIC0gVGFnYWxvZyBhZGRlZC4gQ2xvc2VzOiAjMjkyMzUzCisgICAgLSBLb3JlYW4gdXBkYXRlZC4KKworIC0tIENocmlzdGlhbiBQZXJyaWVyIDxidWJ1bGxlQGRlYmlhbi5vcmc+ICBTdW4sIDIzIEphbiAyMDA1IDA5OjMwOjQ5ICswMTAwCisKK3NoYWRvdyAoMTo0LjAuMy0zMC44KSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIE5vbi1tYWludGFpbmVyIHVwbG9hZCB0YXJnZXRlZCBhdCBzYXJnZS4KKyAgKiBEZWJjb25mIHRyYW5zbGF0aW9uczoKKyAgICAtIFRhZ2Fsb2cgYWRkZWQuIENsb3NlczogIzI4OTgzNworICAqIFByb2dyYW1zIHRyYW5zbGF0aW9uczoKKyAgICAtIFRyYWRpdGlvbmFsIENoaW5lc2UgYWRkZWQuIENsb3NlczogIzI4ODg3OQorCisgLS0gQ2hyaXN0aWFuIFBlcnJpZXIgPGJ1YnVsbGVAZGViaWFuLm9yZz4gIFR1ZSwgMTEgSmFuIDIwMDUgMTE6Mzk6MTggKzAxMDAKKworc2hhZG93ICgxOjQuMC4zLTMwLjcpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogTm9uLW1haW50YWluZXIgdXBsb2FkIHRhcmdldGVkIGF0IHNhcmdlLgorICAqIFJlc29sdiBjb25mbGljdCB3aXRoIG1hbnBhZ2Utc3BsIGluIGxvZ2luCisgICAgYXMgd2VsbCBhcyBwYXNzd2QuIFRoYW5rcyB0byBSb2JlcnQgTHViZXJkYSBmb3IKKyAgICB0aGUgbm90aWNlCisKKyAtLSBDaHJpc3RpYW4gUGVycmllciA8YnVidWxsZUBkZWJpYW4ub3JnPiAgVGh1LCAyMyBEZWMgMjAwNCAyMjoyMzoxMSArMDEwMAorCitzaGFkb3cgKDE6NC4wLjMtMzAuNikgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBSZXZlcnQgYmFjayB0byBJYW4gR3VsbGl2ZXIgZ2VudWluZSBwYXRjaAorICAgIHRvIGNocGFzc3dkLiBVcGRhdGUgbWFuIHBhZ2UgYWNjb3JkaW5nbHkuCisgICAgQ2xvc2VzOiAjMjgzOTYxIAorICAgIChhZ2FpbikKKyAgKiBQcm9ncmFtcyB0cmFuc2xhdGlvbnMKKyAgICAtIEdlcm1hbiB1cGRhdGVkLiBDbG9zZXM6ICMyODY1MjIKKyAgKiBEZWJjb25mIHRyYW5zbGF0aW9ucworICAgIC0gR2VybWFuIHVwZGF0ZWQuIENsb3NlczogIzI4NjUyMgorCisgLS0gQ2hyaXN0aWFuIFBlcnJpZXIgPGJ1YnVsbGVAZGViaWFuLm9yZz4gIE1vbiwgMjAgRGVjIDIwMDQgMjM6NTE6MzkgKzAxMDAKKworc2hhZG93ICgxOjQuMC4zLTMwLjUpIHVuc3RhYmxlOyB1cmdlbmN5PWhpZ2gKKworICAqIE5vbi1tYWludGFpbmVyIHVwbG9hZCB0YXJnZXRlZCBhdCBzYXJnZS4KKyAgICBGaXggcmVsZWFzZSBjcml0aWNhbCBidWcKKyAgKiBSZXNvbHZlIGNvbmZsaWN0IHdpdGggd29vZHkncyBtYW5wYWdlcy1wbCBwYWNrYWdlCisgICAgd2hpY2ggcHJldmVudCB3b29keS0+c2FyZ2UgdXBncmFkZSBpZgorICAgIG1hbnBhZ2VzLXBsIHdhcyBpbnN0YWxsZWQKKyAgICBDbG9zZXM6ICMyODQyMzkKKyAgKiBQcm9ncmFtcyB0cmFuc2xhdGlvbnMKKyAgICAtIFJvbWFuaWFuIGFkZGVkLiBDbG9zZXM6ICMyODQzMzgKKyAgKiBBZGQgTUQ1IHN1cHBvcnQgdG8gY2hwYXNzd2QKKyAgICBUaGFua3MgdG8gSWFuIEd1bGxpdmVyIGZvciB0aGUgcGF0Y2gKKyAgICBDbG9zZXM6ICMyODM5NjEKKyAgKiBDb3JyZWN0IHR5cG9zIGluIG1hbiBwYWdlcworICAgIFRoYW5rcyB0byBOaWNvbGFzIEZyYW7Dp29pcyBmb3IgdGhlIHBhdGNoCisgICAgQ2xvc2VzOiAjMTQxMzIyCisgICogUmVwbGFjZSAiQy8iIHdpdGggIi4uLy4uLyIgaW4gbWFuL2ZyL3NoYWRvdy5jb25mCisgICAgZm9yIGJlc3QgaW50ZWdyYXRpb24gaW4gdGhlIHBhY2thZ2UgYnVpbGQgcHJvY2VzcworCisgLS0gQ2hyaXN0aWFuIFBlcnJpZXIgPGJ1YnVsbGVAZGViaWFuLm9yZz4gIFRodSwgMTYgRGVjIDIwMDQgMjE6NDg6NTYgKzAxMDAKKworc2hhZG93ICgxOjQuMC4zLTMwLjQpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogTm9uLW1haW50YWluZXIgdXBsb2FkIHRhcmdldGVkIGF0IHNhcmdlLgorICAgIExvY2FsaXNhdGlvbiBhbmQgZC1pIHJlbGF0ZWQgdXBkYXRlcyBvbmx5CisgICogUHJvZ3JhbXMgdHJhbnNsYXRpb25zCisgICAgLSBBbGJhbmlhbiAodmVyeSBwYXJ0aWFsKSBhZGRlZC4KKyAgKiBEZWJjb25mIHRyYW5zbGF0aW9ucworICAgIC0gSGluZGkgYWRkZWQuIENsb3NlczogIzI4MjQ0MworICAgIC0gTWFsYWdhc3kgYWRkZWQuIENsb3NlczogIzI4MjU4MAorICAgIC0gQWxiYW5pYW4gYWRkZWQuIENsb3NlczogIzI4MjE2MAorCisgLS0gQ2hyaXN0aWFuIFBlcnJpZXIgPGJ1YnVsbGVAZGViaWFuLm9yZz4gIFRodSwgMjUgTm92IDIwMDQgMDc6MjE6NTMgKzAxMDAKKworc2hhZG93ICgxOjQuMC4zLTMwLjMpIHVuc3RhYmxlOyB1cmdlbmN5PWhpZ2gKKworICAqIE5vbi1tYWludGFpbmVyIHVwbG9hZDogc2VjdXJpdHkgZml4IHVzaW5nIHRoZSB3b29keSBwYXRjaAorICAgIGJ5IHRoZSBTZWN1cml0eSBUZWFtCisgICogQWRqdXN0ZWQgcGFzc3dvcmQgY2hlY2sgdG8gZml4IGF1dGhlbnRpY2F0aW9uIGJ5cGFzcworICAgIFtkZWJpYW4vcGF0Y2hlcy8wMzZfQ0FOLTIwMDQtMTAwMV9wYXNzd2RfY2hlY2tdCisgICogRGViY29uZiB0cmFuc2xhdGlvbnMKKyAgICAtIEJyYXppbGlhbiBQb3J0dWd1ZXNlIHVwZGF0ZWQuIENsb3NlczogIzI3ODA1MQorICAgIC0gTm9yd2VnaWFuIEJva21hbCBmaXhlZC4gQ2xvc2VzOiAjMjc3NTYzCisgICogUHJvZ3JhbXMgdHJhbnNsYXRpb25zCisgICAgLSBJbmRvbmVzaWFuIHVwZGF0ZWQuIENsb3NlczogIzI3Nzc1MSwgIzI3Nzc0MQorCisgLS0gQ2hyaXN0aWFuIFBlcnJpZXIgPGJ1YnVsbGVAZGViaWFuLm9yZz4gIFR1ZSwgIDIgTm92IDIwMDQgMjI6Mjg6MjYgKzAxMDAKKworc2hhZG93ICgxOjQuMC4zLTMwLjIpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogTm9uLW1haW50YWluZXIgdXBsb2FkIHRhcmdldGVkIGF0IHNhcmdlLgorICAgIExvY2FsaXNhdGlvbiBhbmQgZC1pIHJlbGF0ZWQgdXBkYXRlcyBvbmx5CisgICogRGViY29uZiB0cmFuc2xhdGlvbnMKKyAgICAtIE1hY2Vkb25pYW4gYWRkZWQuIENsb3NlczogIzI3NTc4MQorICAgIC0gU2xvdmFraWFuIHVwZGF0ZWQuIENsb3NlczogIzI3MzU4NQorICAgIC0gU2xvdmVuaWFuIGFkZGVkLgorICAqIE1hbiBwYWdlcyB0cmFuc2xhdGlvbnMKKyAgICAtIEdlcm1hbiBmb3Igdmlwdy44L3ZpZ3IuOC4gQ2xvc2VzOiAjMjYwNjQ1CisgICogRml4IHByZXNlZWRpbmcgZm9yIGQtaSA6IGRvIG5vdCBtYXJrIGRlYmNvbmYgdGVtcGxhdGVzIGFzIHNlZW4KKyAgICBBbHNvIHJlbW92ZSB0aGUgaGFjayBmb3IgSm9leSBIZXNzIGxvZ2luIG5hbWUuLjopCisgICAgQ2xvc2VzOiAjMjcxNDA3CisgICogQXNrIGZvciB0aGUgdXNlciBmdWxsIG5hbWUgYXQgY3JpdGljYWwgcHJpb3JpdHkgc28gdGhhdAorICAgIGl0IGlzIG5ldmVyIGVtcHR5LiBDbG9zZXM6ICMyNTc3MDAKKworIC0tIENocmlzdGlhbiBQZXJyaWVyIDxidWJ1bGxlQGRlYmlhbi5vcmc+ICBTdW4sIDEwIE9jdCAyMDA0IDE5OjAyOjUwICswMjAwCisKK3NoYWRvdyAoMTo0LjAuMy0zMC4xKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIE5vbi1tYWludGFpbmVyIHVwbG9hZCB0YXJnZXRlZCBhdCBzYXJnZS4gTG9jYWxpc2F0aW9uIHVwZGF0ZXMgb25seQorICAqIERlYmNvbmYgdHJhbnNsYXRpb25zCisgICAgLSBBcmFiaWMgYWRkZWQuIENsb3NlczogIzI2MTAyMgorICAgIC0gU3dlZGlzaCB1cGRhdGVkLiBDbG9zZXM6ICMyNjE1NTMKKyAgICAtIEJ1bGdhcmlhbiBhZGRlZC4gQ2xvc2VzOiAjMjYyOTI4CisgICAgLSBCcmF6aWxpYW4gUG9ydHVndWVzZSB1cGRhdGVkLiBDbG9zZXM6ICMyNjM5NTcKKyAgICAtIFNpbXBsaWZpZWQgQ2hpbmVzZSB1cGRhdGVkLiBDbG9zZXM6ICMyNjg2NDYKKyAgICAtIFRyYWRpdGlvbmFsIENoaW5lc2UgdXBkYXRlZC4gQ2xvc2VzOiAjMjY4MTUxCisgICAgLSBHZXJtYW4gdXBkYXRlZC4gQ2xvc2VzOiAjMjY4MDUxCisgICAgLSBCYXNxdWUgc3luY2VkIHdpdGggdGVtcGxhdGVzLnBvdAorICAqIFByb2dyYW1zIHRyYW5zbGF0aW9ucworICAgIC0gU3dlZGlzaCB1cGRhdGVkLiBDbG9zZXM6ICMyNjE1NTMKKyAgICAtIFJ1c3NpYW4gdXBkYXRlZC4gQ2xvc2VzOiAjMjY4NDEyCisgICAgLSBOb3J3ZWdpYW4gQm9rbWFsIHVwZGF0ZWQuIENsb3NlczogIzI2OTkwNworICAgIC0gTm9yd2VnaWFuIE55bm9yc2sgdXBkYXRlZC4gQ2xvc2VzOiAjMjY5OTA3CisgICAgLSBIZWJyZXcgdXBkYXRlZC4gQ2xvc2VzOiAjMjY5OTY3CisgICAgLSBEYW5pc2ggdXBkYXRlZC4gQ2xvc2VzOiAjMjcwMDgzCisgICAgLSBDYXRhbGFuIHVwZGF0ZWQuIENsb3NlczogIzI1NDk1NgorICAqIE1hbiBwYWdlcyB0cmFuc2xhdGlvbnMKKyAgICAtIEZyZW5jaCB0cmFuc2xhdGlvbiBjb21wbGV0ZWx5IHJld3JpdHRlbiBhbmQgcmV2aWV3ZWQKKyAgICAgIENsb3NlczogIzI3MDE2OAorICAgIC0gQWRkIGV4cGlyeS4xIGFuZCBsaW1pdHMuY29uZi41IHRvIHRoZSBsaXN0IG9mIGluc3RhbGxlZCBtYW4KKyAgICAgIHBhZ2VzIChhZGQgdHdvIGxpbmVzIHRvIHBhc3N3ZC5maWxlcyBhbmQgb25lIHRvIHJ1bGVzKQorICAgICAgRnJvbSAjMjcwMTY4IGFsc28uCisKKyAtLSBDaHJpc3RpYW4gUGVycmllciA8YnVidWxsZUBkZWJpYW4ub3JnPiAgVHVlLCAgNyBTZXAgMjAwNCAyMDoyMDoyMSArMDIwMAorCitzaGFkb3cgKDE6NC4wLjMtMzApIHVuc3RhYmxlOyB1cmdlbmN5PWhpZ2gKKyAgKiBBdHRlbXB0IHRvIGZpeCBGVEJGUyBhbmQgZGVwZW5kZW5jeSBwcm9ibGVtcyBvbiBodXJkLiBDbG9zZXM6ICMyMzU2NDEKKyAgKiBkb24ndCBydW4gZGhfdW5kb2N1bWVudGVkIGFueW1vcmUgYXMgaXQgaGFzIGJlY29tZSBhbmdzdGZ1bC4KKworICAqIFRoYW5rcyB0byBDaHJpc3RpYW4gUGVycmllcjoKKyAgKiBEZWJjb25mIHRyYW5zbGF0aW9ucworICAgIC0gQnJhemlsaWFuIHVwZGF0ZWQuIENsb3NlczogIzI2MTM4NworICAgIC0gQ3JvYXRpYW4gYWRkZWQuIENsb3NlczogIzI2MTQxOAorICAgIC0gTWlub3IgY29ycmVjdGlvbnMgZm8gamEucG8gYW5kIHBsLnBvIGhlYWRlcnMKKyAgKiBQcm9ncmFtcyB0cmFuc2xhdGlvbnMKKyAgICAtIER1dGNoIHVwZGF0ZWQuIENsb3NlczogIzI2MDM2MQorICAgIC0gSGVicmV3IGFkZGVkLiBDbG9zZXM6ICMyNjA3MjIKKyAgKiBVcmdlbmN5IHNldCB0byBoaWdoIGJlY2F1c2Ugb2YgUkMgYnVnIGZpeGVkOgorICAqIENvcnJlY3QgY2hlY2sgZm9yIHJvb3QgcGFzc3dvcmQgYmVpbmcgYWxyZWFkeSBzZXQgaW4gcGFzc3dkLmNvbmZpZworICAgIENsb3NlczogIzI2MDc5OQorCisgICogQWNrbm93bGVkZ2UgMjkuMSBOTVU6IAorICAgIENsb3NlczogIzI1NjY2NCwgIzI1Nzk0OSwgIzI1ODI0MSwgIzI1ODU2MywgIzI1ODU2NiwgIzI1ODk1NywKKyAgICAjMTkwNTY3LCAjMjU5Mzg5LCAjMjYwMjIzLCAjMjU3OTQ5LCAjMjU5NjYzLCAjMjU5ODI3CisKKyAtLSBLYXJsIFJhbW0gPGtjckBkZWJpYW4ub3JnPiAgVHVlLCAyNyBKdWwgMjAwNCAwOTozODozMiAtMDQwMAorCitzaGFkb3cgKDE6NC4wLjMtMjkuMSkgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBOTVUgd2l0aCBtYWludGFpbmVyIGNvbnNlbnQKKyAgKiBQcm9ncmFtcyB0cmFuc2xhdGlvbnMKKyAgICAtIEdyZWVrIHVwZGF0ZWQuIENsb3NlczogIzI1NjY2NAorICAgIC0gRmlubmlzaCB1cGRhdGVkLiBDbG9zZXM6ICMyNTc5NDkKKyAgICAtIFNwYW5pc2ggdXBkYXRlZC4gQ2xvc2VzOiAjMjU4MjQxCisgICAgLSBQb2xpc2ggdXBkYXRlZC4gQ2xvc2VzOiAjMjU4NTYzCisgICAgLSBJbmRvbmVzaWFuIGFkZGVkIChjb25maWd1cmUuaW4gY2hhbmdlZCBhY2NvcmRpbmdseSkuIENsb3NlczogIzI1ODU2NgorICAgIC0gRnJlbmNoIHVwZGF0ZWQuIENsb3NlczogIzI1ODk1NywgIzE5MDU2NworICAgIC0gU2xvdmFrIHVwZGF0ZWQuIENsb3NlczogIzI1OTM4OQorICAgIC0gUG9ydHVndWVzZSB1cGRhdGVkLiBDbG9zZXM6ICMyNjAyMjMKKyAgKiBEZWJjb25mIHRyYW5zbGF0aW9ucworICAgIC0gRmlubmlzaCB1cGRhdGVkLiBDbG9zZXM6ICMyNTc5NDkKKyAgKiBUeXBvIGNvcnJlY3Rpb24gaW4gc3UuMSBtYW4gcGFnZS4gQ2xvc2VzOiAjMjU5NjYzCisgICogUmVtb3ZlZCBtYWxsb2MgZGVmaW5pdGlvbiBpbiBsaWJtaXNjL3htYWxsb2MuYworICAgIENsb3NlczogIzI1OTgyNworICAqIExpbnRpYW4tZHJpdmVuIGNvcnJlY3Rpb25zCisgICAgLSBDb3JyZWN0ZWQgc2VjdGlvbiBudW1iZXIgaW4gc2V2ZXJhbCBtYW4gcGFnZXM6CisgICAgICAtIGdycGNrLjgKKyAgICAgIC0gcHdjay44CisgICAgICAtIGphL2dycGNrLjgKKyAgICAgIC0gcGwvZ3JwY2suOAorICAgICAgLSBwbC9wd2NrLjgKKyAgICAtIFJlcGxhY2UgdGhlIGZ1bGwgR1BMIHRleHQgaW4gY29weXJpZ2h0IGJ5IGEgcG9pbnRlcgorICAgIC0gQnVtcGVkIFN0YW5kYXJkcyB0byAzLjYuMS4xIChjaGFuZ2VzIGNoZWNrZWQpCisKKyAtLSBDaHJpc3RpYW4gUGVycmllciA8YnVidWxsZUBkZWJpYW4ub3JnPiAgTW9uLCAxOSBKdWwgMjAwNCAxNzo1MjoyNCArMDIwMAorCitzaGFkb3cgKDE6NC4wLjMtMjkpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworICAqIEJlIHVwIGZyb250IG9uIHRoZSBvcmlnaW4gb2Ygb3VyIHN1LiAgQ2xvc2VzOiAjMjQ0Mjk3CisgICogVGhlIGZvbGxvd2luZyB0aGFua3MgdG8gQ2hyaXN0aWFuIFBlcnJpZXI6CisgICogRGViY29uZiB0cmFuc2xhdGlvbnMKKyAgICAtIEh1bmdhcmlhbiBhZGRlZC4gQ2xvc2VzOiAjMjU2NDkzCisgICAgLSBHcmVlayB1cGRhdGVkLiBDbG9zZXM6ICMyNTE5OTAKKyAgICAtIEJyYXppbGlhbiBwb3J0dWd1ZXNlIHVwZGF0ZWQuIENsb3NlczogIzI1Njc3MQorICAqIHBvL1BPVEZJTEVTLmluCisgICAgLSBjb3JyZWN0ZWQgZmlsZS4gTm8gbW9yZSBtZW50aW9ucyB1bmV4aXN0aW5nIGZpbGVzCisgICAgICBDbG9zZXM6ICMyNTM3OTIKKyAgICAgIHRoaXMgY2hhbmdlIHdhcyBhbHJlYWR5IGluIDI4LjUgYnV0IHdhcyBmb3Jnb3R0ZW4gaW4gdGhlCisgICAgICBjaGFuZ2Vsb2cKKyAgKiBBY2tub3dsZWRnZSBOTVVzOiAKKyAgY2xvc2VzOiAjMjQ0NjA0LCAjMjQ0NzM0LCAjMjQ2MzAyLCAjMjQ2Mzc2LCAjMjQ2ODQ4LCAjMjQ2ODU5LAorICAgICAgICAgICMyNDcwODQsICMyNDc2OTgsICMyNDc3NzAsICMyNDgzODYsICMyNDgzOTEsICMyNDgzOTIsCisJICAjMjQ4MzkyLCAjMjQ4NTE2LCAjMjQ4NTE2LCAjMjQ4NjQ4LCAjMjQ4OTM4LCAjMjQ4OTU3LAorCSAgIzI0OTE0MSwgIzI0OTI1NywgIzI0OTY4MiwgIzI1MDE2OSwgIzI1MDMzOSwgIzI1MDQ5NiwKKwkgICMyNTExNDAsICMyNTExNDEsICMyNTEzMTcsICMyNTE0OTUsICMyNTE3MTYsICMyNTE5OTAsCisJICAjMjUyMDg3LCAjMjUyNDk5LCAjMjUzMTY1LCAjMjUzMTg2LCAjMjUzNTcwLCAjMjU0NTAzLAorCSAgIzI1NDc2MCAKKworIC0tIEthcmwgUmFtbSA8a2NyQGRlYmlhbi5vcmc+ICBTYXQsICAzIEp1bCAyMDA0IDAwOjI0OjU1IC0wNDAwCisKK3NoYWRvdyAoMTo0LjAuMy0yOC41KSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIGRlYmlhbi8qLmZpbGVzCisgICAgLSBjYXJlIGFib3V0IGFkZGluZyBBTEwgZXhpc3RpbmcgdHJhbnNsYXRpb25zLiBSZW1vdmVkIGhhcmQtY29kZWQKKyAgICAgIGZpbGUgbmFtZXMuIENsb3NlczogIzI0ODUxNgorICAgICAgVGhhbmtzIHRvIFJ1YmVuIFBvcnJhcyBmb3Igbm90aWNpbmcKKyAgICAgIFRoaXMgaW52b2x2ZXMgY2hhbmdlcyB0byBkZWJpYW4vKi5maWxlcyB3aXRoIHRoZSB1c2Ugb2YKKyAgICAgIHJlZ2V4cCBpbiB0aGVzZSBmaWxlcworICAqIGxpYm1pc2MvZmFpbHVyZS5jCisgICAgLSBNYWtlIHVzZSBvZiBwbHVyYWwgZm9ybXMuIENsb3NlczogIzI1MTMxNworICAqIFByb2dyYW1zIHRyYW5zbGF0aW9ucworICAgIC0gTm9yd2VnaWFuIEJva21hbCBhbmQgTm9yd2VnaWFuIE55bm9yc2sgdHJhbnNsYXRpb25zLiBDbG9zZXM6ICMyNTI0OTkKKyAgICAtIER1dGNoIHVwZGF0ZWQuIENsb3NlczogIzI1MzE2NQorICAgIC0gQnJhemlsaWFuIFBvcnR1Z3Vlc2UgdXBkYXRlZAorICAgIC0gVHVya2lzaCB1cGRhdGVkCisgICAgLSBLb3JlYW4gdXBkYXRlZAorICAgIC0gQ3plY2ggdXBkYXRlZAorICAgIC0gSmFwYW5lc2UgdXBkYXRlZAorICAgIC0gR2VybWFuIHVwZGF0ZWQKKyAgICAtIENhdGFsYW4gYWRkZWQuIENsb3NlczogIzI1NDc2MAorICAgIC0gSXRhbGlhbiB1cGRhdGVkCisgICogRGViY29uZiB0cmFuc2xhdGlvbnMKKyAgICAtIEZpbm5pc2ggYWRkZWQuIENsb3NlczogIzI1MzU3MAorICAgIC0gRGFuaXNoIHVwZGF0ZWQKKyAgICAtIEhlYnJldyBhZGRlZC4gQ2xvc2VzOiAjMjUzMTg2CisgICAgLSBUcmFkaXRpb25hbCBDaGluZXNlIGFkZGVkLiBDbG9zZXM6ICMyNTQ1MDMKKyAgICAtIEZyZW5jaCB1cGRhdGVkIGZvciBjbGFyaWZpY2F0aW9uIGFuZCBzaG9ydGVuIHRoZSByb290IHBhc3N3b3JkIHNjcmVlbgorCisgLS0gQ2hyaXN0aWFuIFBlcnJpZXIgPGJ1YnVsbGVAZGViaWFuLm9yZz4gIFR1ZSwgMjIgSnVuIDIwMDQgMDk6NDQ6NDUgKzAyMDAKKworc2hhZG93ICgxOjQuMC4zLTI4LjQpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogTk1VIGZvciBsMTBuIHN0dWZmIGFnYWluCisgICogUHJvZ3JhbXMgdHJhbnNsYXRpb25zCisgICAgLSBBbGwgbGFuZ3VhZ2VzICJhY3RpdmF0ZWQiIGluIGNvbmZpZ3VyZS5pbi4gQ2xvc2VzOiAjMjQ4NTE2CisgICAgLSBSdXNzaWFuLiBDbG9zZXM6ICMyNTA0OTYKKyAgICAtIEJvc25pYW4gYWRkZWQuIENsb3NlczogIzI1MTE0MQorICAgIC0gRmlubmlzaCB1cGRhdGUuIENsb3NlczogIzI1MTQ5NQorICAgIC0gSXRhbGlhbiB1cGRhdGUuIENsb3NlczogIzI1MjA4NworICAqIERlYmNvbmYgdHJhbnNsYXRpb25zCisgICAgLSBOb3J3ZWdpYW4gQm9rbWFsIHVwZGF0ZS4gQ2xvc2VzOiAjMjUwMzM5CisgICAgLSBCb3NuaWFuIGFkZGVkLiBDbG9zZXM6ICMyNTExNDAKKyAgICAtIENhdGFsYW4gdXBkYXRlZC4gQ2xvc2VzOiAjMjUxNzE2CisgICAgLSBHcmVlayB1cGRhdGUuIENsb3NlczogIzI1MTk5MAorICAgIC0gV2Vsc2ggYWRkZWQgKGRpcmVjdGx5IHNlbnQgYnkgRGFmeWRkIEhhcnJpZXMKKyAgKiBDaHJpc3RpYW4gUGVycmllcgorICAgIC0gZGViaWFuL3Bhc3N3ZC5jb25maWcgOiBhIGZldyByZXdhcmRzIHRvIGEgZmV3IHBlb3BsZS4gSnVzdCBjaGVjaworICAgICAgdGhlIGNvZGUKKworIC0tIENocmlzdGlhbiBQZXJyaWVyIDxidWJ1bGxlQGRlYmlhbi5vcmc+ICBUdWUsICAxIEp1biAyMDA0IDA5OjExOjAxIC0wMzAwCisKK3NoYWRvdyAoMTo0LjAuMy0yOC4zKSB1bnN0YWJsZTsgdXJnZW5jeT1oaWdoCisKKyAgKiBOTVUgZm9yIGNvcnJlY3RpbmcgbXkgbWlzdGFrZQorICAqIFJlbW92ZSBhbiBleHRyYSAiZmkiIGluIHBhc3N3ZC5jb25maWcuIENsb3NlczogIzI1MDE2OQorICAqIERlYmNvbmYgdHJhbnNsYXRpb24gdXBkYXRlczoKKyAgICAtIE5vcndlZ2lhbiBOeW5vcnNrLiBDbG9zZXM6ICMyNDk2ODIKKworIC0tIENocmlzdGlhbiBQZXJyaWVyIDxidWJ1bGxlQGRlYmlhbi5vcmc+ICBGcmksIDIxIE1heSAyMDA0IDA2OjUwOjEzICswMjAwCisKK3NoYWRvdyAoMTo0LjAuMy0yOC4yKSB1bnN0YWJsZTsgdXJnZW5jeT1oaWdoCisKKyAgKiBOTVUgZm9yIERlYmlhbiBJbnN0YWxsZXIgcmMxIHJlbGVhc2Ugc2NoZWR1bGUKKyAgKiBSZW1vdmVkIGR1cGxpY2F0ZSBzZW50ZW5jZSBpbiB0ZW1wbGF0ZXMuIENsb3NlczogIzI0NDczNCwgIzI0NDYwNAorICAqIE1vdmUgdGhlICJyb290IHBhc3N3b3JkIGVtcHR5IiBjaGVjayBiZWZvcmUgdGhlIHJvb3QgcGFzc3dvcmQKKyAgICBjb25maXJtYXRpb24uIENsb3NlczogIzI0Nzc3MAorICAqIERlYmNvbmYgdHJhbnNsYXRpb24gdXBkYXRlczoKKyAgICAtIERhbmlzaC4gQ2xvc2VzOiAjMjQ2ODU5CisgICAgLSBTcGFuaXNoLiBDbG9zZXM6ICMyNDYzMDIKKyAgICAtIFJ1c3NpYW4uIENsb3NlczogIzI0ODM5MgorICAgIC0gU2ltcGxpZmllZCBDaGluZXNlLiBDbG9zZXM6ICMyNDg5MzgKKyAgICAtIExpdGh1YW5pYW4uIENsb3NlczogIzI0OTE0MQorICAgIC0gSXRhbGlhbi4gQ2xvc2VzOiAjMjQ5MjU3CisgICAgLSBEdXRjaCBzZW50IGRpcmVjdGx5IGJ5IEJhcnQgQ29ybmVsaXMKKyAgICAtIEtvcmVhbiBzZW50IGRpcmVjdGx5IGJ5IENoYW5nd29vIFJ5dQorICAgIC0gR2FsaWNpYW4gc2VudCBkaXJlY3RseSBieSBIw6ljdG9yIEZlcm7DoW5kZXoKKyAgICAtIFJvbWFuaWFuIHNlbnQgZGlyZWN0bHkgYnkgRWRkeSBQZXRyaXNvcgorICAqIFByb2dyYW1zIHRyYW5zbGF0aW9uIHVwZGF0ZXM6CisgICAgLSBLb3JlYW4uIENsb3NlczogIzI0MjA1NQorICAgIC0gSmFwYW5lc2UuIENsb3NlczogIzI0MjU4NgorICAgIC0gUG9saXNoLiBDbG9zZXM6ICMyNDYzNzYKKyAgICAtIFNsb3Zhay4gQ2xvc2VzOiAjMjQ3MDg0CisgICAgLSBCYXNxdWUuIENsb3NlczogIzI0ODM4NgorICAgIC0gR2VybWFuLiBDbG9zZXM6ICMyNDgzOTEKKyAgICAtIFJ1c3NpYW4uIENsb3NlczogIzI0ODM5MgorICAgIC0gU3BhbmlzaC4gQ2xvc2VzOiAjMjQ4NTE2CisgICAgLSBDemVjaC4gQ2xvc2VzOiAjMjQ4NjQ4CisgICAgLSBTaW1wbGlmaWVkIENoaW5lc2UuIENsb3NlczogIzI0ODk1NworICAgIC0gSW5kb25lc2lhbi4gQ2xvc2VzOiAjMjQyODEzCisgICAgLSBJdGFsaWFuIHNlbnQgZGlyZWN0bHkgYnkgR2l1c2VwcGUgU2FjY28KKyAgKiBUcmFuc2xhdGVkIG1hbiBwYWdlcworICAgIC0gVHlwbyBjb3JyZWN0aW9uIGluIEJyYXppbGlhbiBQb3J0dWd1ZXNlIGZvciBncGFzc3dkLiBDbG9zZXM6ICMyNDc2OTgKKworIC0tIENocmlzdGlhbiBQZXJyaWVyIDxidWJ1bGxlQGRlYmlhbi5vcmc+ICBUdWUsIDE4IE1heSAyMDA0IDEyOjA5OjM0ICswMjAwCisKK3NoYWRvdyAoMTo0LjAuMy0yOC4xKSB1bnN0YWJsZTsgdXJnZW5jeT1oaWdoCisKKyAgKiBOTVUgZm9yIHNwZWNpYWwgcHVycG9zZXMgYmVsb3cKKyAgKiBVcmdlbmN5IHNldCB0byBoaWdoIGZvciBoZWxwaW5nIG91dCBCcmF6aWxpYW4gREQncyBidWlsZGluZyBDRCdzCisgICAgZm9yIEZJU0wgY29uZmVyZW5jZQorICAqIFRyYW5zbGF0aW9uIHVwZGF0ZXM6CisgICAgLSBEZWJjb25mOgorICAgICAgLSBCcmF6aWxpYW4gUG9ydHVndWVzZS4gQ2xvc2VzOiAjMjQ2ODQ4CisgICAgICAtIFNwYW5pc2guIFdhcyB1bmZvcnR1bmF0ZWx5IGJhc2VkIG9uIG9sZGVyIHRlbXBsYXRlcyBoZW5jZQorICAgICAgICB0aGlzIGRvZXMgbm90IGNsb3NlIDI0NjMwMgorICAgICAgLSBCYXNxdWU6IENsb3NlczogIzI0MzU0NQorICAgICAgLSBHZXJtYW46IENsb3NlczogIzI0MjExNgorCisgLS0gQ2hyaXN0aWFuIFBlcnJpZXIgPGJ1YnVsbGVAZGViaWFuLm9yZz4gIE1vbiwgMTAgTWF5IDIwMDQgMjM6MjM6MjUgKzAyMDAKKworc2hhZG93ICgxOjQuMC4zLTI4KSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqICBGaXggbG9naW4gYW5kIHBhc3N3ZCBpbiBwcmVpbnN0IHRvIGF2b2lkIHByb210cyBvbiB3b29keSB1cGdyYWRlLAorICAgIENsb3NlczogIzI0MzA5OQorICAqIEZpeCBsb2dpbiBhbmQgcGFzc3dkIGNvbmZpZ3VyYXRpb24gZmlsZSB0byBzdXBwb3J0IGNvbW1vbi1wYXNzd2QKKyAgKiBBcHBseSBOTVUgcGF0Y2ggZnJvbSBDaHJpc3RpYW4gUGVycmllciwgQ2xvc2VzOiAjMjQxNDM4CisKKyAtLSBTYW0gSGFydG1hbiA8aGFydG1hbnNAZGViaWFuLm9yZz4gIFRodSwgMjkgQXByIDIwMDQgMTY6MzE6MjUgLTA0MDAKKworc2hhZG93ICgxOjQuMC4zLTI3KSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIHVwZGF0ZSAiZGEiIGRlYmNvbmYgdHJhbnNsYXRpb24sIGNsb3NlczogIzI0MTI2MgorICAqIG5ldyAicHRfQlIiIHByb2dyYW0gdHJhbnNsYXRpb24sIGNsb3NlczogIzI0MTM2NgorCisgLS0gS2FybCBSYW1tIDxrY3JAZGViaWFuLm9yZz4gIFRodSwgIDEgQXByIDIwMDQgMDA6MTk6NDQgLTA1MDAKKworc2hhZG93ICgxOjQuMC4zLTI2LjEpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogTk1VIGZvciBEZWJpYW4gSW5zdGFsbGUgcm5lZWRzCisgICogVHJhbnNsYXRpb24gdXBkYXRlczoKKyAgICAtIERlYmNvbmY6CisgICAgICAtIEZyZW5jaC4gQ2xvc2VzOiAjMjQxNDM4CisgICAgICAtIFVrcmFpbmlhbi4gQ2xvc2VzOiAjMjQxNTE0CisgICAgICAtIFN3ZWRpc2g6ICMyNDE1NTgKKyAgICAgIC0gSmFwYW5lc2UuIENsb3NlczogIzI0MTgwMgorICAgICAgLSBEYW5pc2guIENsb3NlczogIzI0MTI2MgorICAgICAgLSBQb3J0dWd1ZXNlLiBDbG9zZXM6ICMyNDE2NzUKKyAgICAgIC0gUG9saXNoLiBDbG9zZXM6ICMyNDMxODUsICMyNDI5OTYKKyAgICAgIC0gQ3plY2guIENsb3NlczogIzI0MTg3NworICAgICAgLSBLb3JlYW4uIENsb3NlczogIzI0MTkyOAorICAgICAgLSBHcmVlay4gQ2xvc2VzOiAjMjQyMzk2CisgICAgICAtIFR1cmtpc2guIENsb3NlczogIzI0MzEwMworICAgICAgLSBTbG92YWsuIENsb3NlczogIzI0NTY3MQorCisgLS0gQ2hyaXN0aWFuIFBlcnJpZXIgPGJ1YnVsbGVAZGViaWFuLm9yZz4gIFdlZCwgMjggQXByIDIwMDQgMTE6NDc6MzQgKzAyMDAKKworc2hhZG93ICgxOjQuMC4zLTI2KSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIEhhdmUgcGFzc3dkLmNvbmZpZyBmYWxsIGJhY2sgZ3JhY2VmdWxseSB0byB1c2VyYWRkIGlmIGFkZHVzZXIgaXMKKyAgICB1bmF2YWlsYWJsZS4gY2xvc2VzOiAjMjQwODk0CisKKyAtLSBLYXJsIFJhbW0gPGtjckBkZWJpYW4ub3JnPiAgV2VkLCAzMSBNYXIgMjAwNCAwMDoyNjoxNyAtMDUwMAorCitzaGFkb3cgKDE6NC4wLjMtMjUpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogVXBkYXRlICJkYSIgcHJvZ3JhbSB0cmFuc2xhdGlvbiwgdGhhbmtzIHRvIENsYXVzIEhpbmRzZ2F1bC4KKyAgKiBVcGRhdGUgInN2IiB0cmFuc2xhdGlvbiwgY2xvc2VzOiAjMjM5MTk4CisgICogbG93ZXIgZGViY29uZiBwcmlvcml0eSBvZiBzaGFkb3cgcGFzc3dvcmQgcXVlc3Rpb24gdG8gJ2xvdycKKworIC0tIEthcmwgUmFtbSA8a2NyQGRlYmlhbi5vcmc+ICBUdWUsIDMwIE1hciAyMDA0IDE5OjM5OjU5IC0wNTAwCisKK3NoYWRvdyAoMTo0LjAuMy0yNCkgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBhZGQgbmV3IHByb2dyYW0gdHJhbnNsYXRpb25zIHRvIHRoZSBmaWxlIG1hbmlmZXN0LiAqc2lnaCoKKyAgICBjbG9zZXM6ICMyNDEwMTYKKyAgKiBhZGQgInRyIiBkZWJjb25mIHRyYW5zbGF0aW9uLiBjbG9zZXM6ICMyMzkxNDgKKyAgKiBSZWFycmFuZ2UgdXNlcm5hbWUgY3JlYXRpb24gZGlhbG9nIHRleHQgdG8gbWFrZSBzZW5zZSBpbgorICAgIG5ldyBvcmRlci4gY2xvc2VzOiAjMjQwNjA3CisgICogRWRpdCB0aGUgZGViY29uZiB0ZW1wbGF0ZXMgZm9yIGNvbnRlbnQuCisgICogUmVtb3ZlIHRoZSBwcm9ncmFtIC5nbW8gZmlsZXMgaW4gdGhlIGNsZWFuIHN0ZXAuIGNsb3NlczogIzIwMDA1NAorCisgLS0gS2FybCBSYW1tIDxrY3JAZGViaWFuLm9yZz4gIFR1ZSwgMzAgTWFyIDIwMDQgMTE6Mzc6MjIgLTA1MDAKKworc2hhZG93ICgxOjQuMC4zLTIzKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIGluY3JlYXNlIG1heGltdW0gZ3JvdXAgbmFtZSBzaXplIHRvIDMyIGZvciBubyBwYXJ0aWN1bGFybHkgZ29vZCByZWFzb24KKyAgICBjbG9zZXM6ICMyNDA0NTYKKyAgKiBmaXggc3UgbWFuIHBhZ2UgdG8gcmVmbGVjdCBjb2RlLiAgY2xvc2VzOiAjMjM5ODA1CisgICogZml4IHVzZXJuYW1lIGRlZmF1bHRpbmcgaW4gcGFzc3dkLmNvbmZpZy4gY2xvc2VzOiAjMjM4NzgxCisgICogdXBkYXRlICJpdCIgZGViY29uZiB0cmFuc2xhdGlvbi4gY2xvc2VzOiAjMjM3NTA0CisgICogdXBkYXRlICJydSIgZGViY29uZiB0cmFuc2xhdGlvbi4gY2xvc2VzOiAjMjM4MjExCisgICogdXBkYXRlICJkZSIgZGViY29uZiB0cmFuc2xhdGlvbi4gY2xvc2VzOiAjMjM4Nzc5CisgICogdXBkYXRlICJlbCIgZGViY29uZiB0cmFuc2xhdGlvbi4gY2xvc2VzOiAjMjQwNDczCisgICogYWRkICJubiIgZGViY29uZiB0cmFuc2xhdGlvbi4gY2xvc2VzOiAjMjM4NTkwCisgICogYWRkICJkYSIgcHJvZ3JhbSB0cmFuc2xhdGlvbi4gY2xvc2VzOiAjMjM4MDA1CisgICogYWRkICJubCIgcHJvZ3JhbSB0cmFuc2xhdGlvbi4gY2xvc2VzOiAjMjM4NDg4CisgICogYWRkICJwdCIgcHJvZ3JhbSB0cmFuc2xhdGlvbi4gY2xvc2VzOiAjMjM4Nzk2CisgICogYWRkICJwdCIgZGViY29uZiB0cmFuc2xhdGlvbi4gY2xvc2VzOiAjMjM5NjQxCisgICogcmVtb3ZlIHNwdXJpb3VzIGNvbnN0LCBjbG9zZXM6ICMyNDA2NzcKKworIC0tIEthcmwgUmFtbSA8a2NyQGRlYmlhbi5vcmc+ICBTdW4sIDI4IE1hciAyMDA0IDE5OjQ2OjM0IC0wNTAwCisKK3NoYWRvdyAoMTo0LjAuMy0yMikgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBEb24ndCBhc3N1bWUgdGhhdCBsYXN0bG9nLmxsX3RpbWUgb3IgdXRtcC51dF90aW1lIG9yIHV0bXB4LnV0X3R2IGFyZSBtYWRlIAorICAgIHVwIG9mIHRpbWVfdHMgYW5kIHRpbWV2YWxzLCBiZWNhdXNlIHRoZXkgYXJlbid0IG9uIHg4Ni02NC4gIERpc21heWluZworICAgIGJ1dCB0cnVlLgorCisgLS0gS2FybCBSYW1tIDxrY3JAZGViaWFuLm9yZz4gIFN1biwgMTQgTWFyIDIwMDQgMTY6NTM6MjEgLTA1MDAKKworc2hhZG93ICgxOjQuMC4zLTIxKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIFRyeSBhbmQgZ2V0IHRoZSByaWdodCBGcmVuY2ggdHJhbnNsYXRpb24gdXBkYXRlIGluIHRoZSByaWdodCBwbGFjZSwgCisgICAgS2FybCwgeW91IGNhbiBkbyBpdCBldmVuIGlmIHlvdSBkbyBvbmx5IHNwZWFrIEVuZ2xpc2guIENsb3NlczogIzIzNjk5MworCisgLS0gS2FybCBSYW1tIDxrY3JAZGViaWFuLm9yZz4gIFdlZCwgMTAgTWFyIDIwMDQgMTU6MzE6MzUgLTA1MDAKKworc2hhZG93ICgxOjQuMC4zLTIwKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIEFkZGVkIE5vcndlZ2lhbiBCb2ttYWwgZGViY29uZiB0cmFuc2xhdGlvbiwgY2xvc2VzOiAjMjA2MzQ5CisgICogdGVsbCBzaGFkb3cgYnVpbGQgc3lzdGVtIGFib3V0IG5ldyBtZXNzYWdlIHRyYW5zbGF0aW9ucworCisgLS0gS2FybCBSYW1tIDxrY3JAZGViaWFuLm9yZz4gIFRodSwgIDQgTWFyIDIwMDQgMTE6MDQ6NDQgLTA1MDAKKworc2hhZG93ICgxOjQuMC4zLTE5KSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIFdoZW4gY3JlYXRpbmcgYSB1c2VyIGFjY291bnQgaW4gcHNhc3dkLmNvbmZpZywgYXNrIGZvciBmdWxsIG5hbWUKKyAgICBmaXJzdCwgYW5kIG1ha2UgdXAgYSBkZWZhdWx0IHVzZXJuYW1lLiAgQ2xvc2VzOiAjMjM1Mzg2CisgICogIk5vIHJlYWxseSwgYXNzdW1lIG1kNSBwYXNzd29yZHMiLiBDbG9zZXM6ICMyMjM2NjQKKworIC0tIEthcmwgUmFtbSA8a2NyQGRlYmlhbi5vcmc+ICBUaHUsICA0IE1hciAyMDA0IDAwOjQyOjA4IC0wNTAwCisKK3NoYWRvdyAoMTo0LjAuMy0xOCkgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBSZW1vdmVkIHBvL2NzLnBvIGFuZCBhZGRlZCBuZXcgZGViaWFuL3BvL2NzLnBvCisgICAgVXBkYXRlZCBDemVjaCB0cmFuc2xhdGlvbiwgY2xvc2VzOiAjMjI5MTI1CisgICogVXBkYXRlZCBKYXBhbmVzZSBkZWJjb25mIHRyYW5zbGF0aW9uLCBjbG9zZXM6ICMyMjcyMzcKKyAgKiBVcGRhdGVkIERhbmlzaCBkZWJjb25mIHRyYW5zbGF0aW9uLCBjbG9zZXM6ICMyMjc2MTkKKyAgKiBVcGRhdGVkIER1dGNoIGRlYmNvbmYgdHJhbnNsYXRpb24sIGNsb3NlczogIzIyNzg4MworICAqIFVwZGF0ZWQgQnJhemlsaWFuIFBvcnR1Z3Vlc2UgZGViY29uZiB0cmFuc2xhdGlvbiwgY2xvc2VzOiAjMjI4MDgwCisgICogQWRkZWQgU2ltcGxpZmllZCBDaGluZXNlIGRlYmNvbmYgdHJhbnNsYXRpb24KKyAgICBBZGRlZCBTaW1wbGlmaWVkIENoaW5lc2UgcHJvZ3JhbXMgdHJhbnNsYXRpb24KKyAgICBDbG9zZXM6ICMyMjkzMzQKKyAgKiBBZGRlZCBHcmVlayBkZWJjb25mIHRyYW5zbGF0aW9uCisgICAgQWRkZWQgR3JlZWsgcHJvZ3JhbXMgdHJhbnNsYXRpb24KKyAgICBDbG9zZXM6ICMyMjk1MDQsICMyMjk1MjgKKyAgKiBBZGRlZCBGaW5uaXNoIHByb2dyYW1zIHRyYW5zbGF0aW9uLCBjbG9zZXM6ICMyMzAzNjkKKyAgICBjaGFyc2V0IGNoYW5nZWQgZnJvbSBVVEYtOCB0byBJU08tODg1OS0xIGFzIHRoZSBidWcgcGF0Y2ggd2FzIHdyb25nCisgICogVXBkYXRlZCBHZXJtYW4gZGViY29uZiB0cmFuc2xhdGlvbiwgY2xvc2VzOiAjMjMyNzEwCisgICogVXBkYXRlZCBSdXNzaWFuIGRlYmNvbmYgdHJhbnNsYXRpb24sIGNsb3NlczogIzIzNTU0MQorICAqIEFkZGVkIFVrcmFpbmlhbiBkZWJjb25mIHRyYW5zbGF0aW9uLCBjbG9zZXM6ICMyMzM1NjAKKyAgKiBBZGRlZCBMaXRodWFuaWFuIGRlYmNvbmYgdHJhbnNsYXRpb24sIGNsb3NlczogIzIzNTY5OAorICAqIHRoYW5rcyB0byBDaHJpc3RpYW4gUGVycmllciA8YnVidWxsZUBkZWJpYW4ub3JnPgorCisgLS0gS2FybCBSYW1tIDxrY3JAZGViaWFuLm9yZz4gIFdlZCwgIDMgTWFyIDIwMDQgMjI6NTY6MzEgLTA1MDAKKworc2hhZG93ICgxOjQuMC4zLTE3KSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIEZpeCBicmFpbm8gaW4gdmVyc2lvbiBudW1iZXIgb2YgZXhhbXBsZSBkZXBlbmRlbmN5IGluIFJFQURNRS5zaGVsbHMuCisgICAgQXBvbG9naWVzIHRvIGFueW9uZSBmb29saGFyZHkgZW5vdWdoIHRvIGJlbGlldmUgbXkgZG9jdW1lbnRhdGlvbi4KKyAgKiBBZGQgU3dlZGlzaCBkZWJjb25mIHRyYW5zbGF0aW9uLCBjbG9zZXM6ICMyMjUwNTkKKyAgKiBOZXcgRnJlbmNoIGRlYmNvbmYgdHJhbnNsYXRpb24sIGNsb3NlczogIzIyNTkxNAorICAqIEFkZCBDYXRhbGFuIGRlYmNvbmYgdHJhbnNsYXRpb24sIGNsb3NlczogIzIyNzAyOQorICAqIGFkZCBzZWN1cmV0dHkgZmlsZXMgZm9yIHRoZSBodXJkLCBmcmVlYnNkLCBhbmQgbmV0YnNkLCBjbG9zZXM6ICMyMDA3MzkKKworIC0tIEthcmwgUmFtbSA8a2NyQGRlYmlhbi5vcmc+ICBTdW4sIDExIEphbiAyMDA0IDE3OjM3OjU0IC0wNTAwCisKK3NoYWRvdyAoMTo0LjAuMy0xNikgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBydW4gZGhfaW5zdGFsbGRlYiAqYWZ0ZXIqIGRoX2luc3RhbGxkZWJjb25mLAorICAgIHJlbW92ZSAuIGZyb20gc2hvcnQgZGVzY3JpcHRpb24gb2YgcGFzc3dkLCAKKyAgICBhZGQgdmVyc2lvbmVkIGNvbmZsaWN0IHdpdGggZGViY29uZiBvbGRlciB0aGFuIDAuNQorICAgIGNsb3NlczogIzIyNDEzMworICAqIHJlcGxhY2UgbWFucGFnZXMtaXQgZHVlIHRvIG1hbiBwYWdlIGNvbmZsaWN0CisgICAgY2xvc2VzOiAjMjI0NDc0CisgICogZml4IHRoZSAqb3RoZXIqIHN1IHN5c2xvZ3MuCisgICAgY2xvc2VzOiAjMjI0NTA4CisgICogZml4IGZpbGVuYW1lIGluIGNvbnRyb2wgZmlsZSwgY2xvc2VzOiAjMjI0NTc5CisgICogZml4IHBlcm1pc3Npb25zIG9uIGNoYWdlIGFuZCBleHBpcnksIGNsb3NlczogIzIyNDcxNworICAqIHJ1biBkZWJjb25mLXVwZGF0ZXBvCisgICogcmVtb3ZlIGRlYmlhbi9jb21wYXQgYXMgcmVkdW5kYW50CisgIAorIC0tIEthcmwgUmFtbSA8a2NyQGRlYmlhbi5vcmc+ICBNb24sIDIyIERlYyAyMDAzIDE5OjUzOjMwIC0wNTAwCisKK3NoYWRvdyAoMTo0LjAuMy0xNSkgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiByZW1vdmUgYm9ndXMgZGVwZW5kZW5jeSBvbiBiYXNlLWNvbmZpZyAyLjAwLAorICBjbG9zZXM6ICMyMjI3NzIsICMyMjM3MjYKKyAgKiBOZXcgQ3plY2ggdHJhbnNsYXRpb24gdGhhbmtzIHRvIE1pcm9zbGF2IEt1cmUuCisKKyAtLSBLYXJsIFJhbW0gPGtjckBkZWJpYW4ub3JnPiAgRnJpLCAxMiBEZWMgMjAwMyAxODo0MDoyNSAtMDUwMAorCitzaGFkb3cgKDE6NC4wLjMtMTQpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogZXhpdCAzMCB3aGVuIGJhY2tpbmcgYWxsIHRoZSB3YXkgb3V0IGluIHBhc3N3ZC5jb25mLCBhbmQgCisgICAgZGVwZW5kIG9uIGJhc2UtY29uZmlnIDIuMDAsIGNsb3NlczogIzIyMjc3MgorICAqIGFkanVzdCBkZWJjb25mIHRlbXBsYXRlcyBmb3IgZGViaWFuLWluc3RhbGxlciB3b3JrLAorICAgIGNsb3NlczogIzIyMjgzMgorCisgLS0gS2FybCBSYW1tIDxrY3JAZGViaWFuLm9yZz4gIFRodSwgMTEgRGVjIDIwMDMgMDE6NTM6MzcgLTA1MDAKKworc2hhZG93ICgxOjQuMC4zLTEzKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIEZpeCB0eXBvIHBhc3N3ZC5jb25maWcuICBDbG9zZXM6ICMyMjMwNzksICMyMjI3MTQKKyAgKiBMZXQncyB0cnkgb3V0IHRoaXMgb2xkZmFuZ2xlZCBhbm9ueW1vdXMgZnRwIHVwbG9hZCBxdWV1ZS4KKworIC0tIEthcmwgUmFtbSA8a2NyQGRlYmlhbi5vcmc+ICBNb24sICA4IERlYyAyMDAzIDE3OjU5OjMxIC0wNTAwCisKK3NoYWRvdyAoMTo0LjAuMy0xMikgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBFeHBsaWNpdGx5IHVzZSBhdXRvbWFrZS0xLjcgYW5kIGFjbG9jYWwtMS43LiAgY2xvc2VzOiAjMjE2NTk0CisgICogVXBkYXRlIERhbmlzaCBkZWJjb25mIHRyYW5zbGF0aW9uLiAgY2xvc2VzOiAjMjE2NTQyICAKKyAgKiBVcGRhdGUgRnJlbmNoIGRlYmNvbmYgdHJhbnNsYXRpb24uICBjbG9zZXM6ICMyMDYzNTIKKyAgKiBVcGRhdGUgRHV0Y2ggZGViY29uZiB0cmFuc2xhdGlvbi4gIGNsb3NlczogIzIxMjk5NQorICAqIFJlbW92ZSByZWR1bmRhbnQgZGVwZW5kZW5jeSBvbiBncmVwLiAgY2xvc2VzOiAjMjE2NTM1CisgICogRml4IGNoZm4gZG9jdW1lbnRhdGlvbiBidWcuICBjbG9zZXM6ICMyMTM5MzEgIAorICAqIEZpeCBzdSBzeXNsb2dzIHRvIGJlIGxlc3MgYW1iaWd1b3VzLiAgKG9sZDpuZXcgaW5zdGVhZCBvZiBvbGQtbmV3CisgICAgYmVjYXVzZSAnLScgY2FuIGFwcGVhciBpbiB1c2VybmFtZXMuKSAgTm90IGNsZWFyZXIsIG1pbmQgeW91LCBidXQgbGVzcworICAgIGFtYmlndW91cy4gIGNsb3NlczogIzIxMzU5MgorICAqIFJlbmFtZSBsaW1pdHMoNSkgdG8gbGltaXRzLmNvbmYoNSkgYW5kIGVkaXQgdG8gcmVmbGVjdCByZWFsaXR5LgorICAgIGNsb3NlczogIzIxMjkzNQorICAqIE1vdmUgdGhlIGNoYW5nZV91aWQgY2FsbCBpbiBsb2dpbiBiYWNrIHRvIHdoZXJlIGl0IHdhcyBiZWZvcmUgLTExLCBhbmQKKyAgICByZWxvY2F0ZSB0aGUgZm9yayBmb3IgcGFtX2Nsb3NlX3Nlc3Npb24gYWJvdmUgaXQuICBjbG9zZXM6ICMyMTE4ODQKKworIC0tIEthcmwgUmFtbSA8a2NyQGRlYmlhbi5vcmc+ICBTYXQsIDI1IE9jdCAyMDAzIDE1OjI2OjIwIC0wNDAwCisKK3NoYWRvdyAoMTo0LjAuMy0xMSkgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiB1cGRhdGUgSmFwYW5lc2UgZGViY29uZiB0cmFuc2xhdGlvbi4gY2xvc2VzOiAjMjEwMzgyCisgICogdXBkYXRlIEJyYXppbGlhbiBQb3J0dWdlc2UgZGViY29uZiB0cmFuc2xhdGlvbi4gY2xvc2VzOiAjMjA4MTIyCisgICogcnVuIHBhbSBjbGVhbnVwIGNvZGUgYXMgcm9vdC4gY2xvc2VzOiAjMTk1MDQ4CisKKyAtLSBLYXJsIFJhbW0gPGtjckBkZWJpYW4ub3JnPiAgU2F0LCAxMyBTZXAgMjAwMyAxNzo0OToyOSAtMDQwMAorCitzaGFkb3cgKDE6NC4wLjMtMTApIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogcG9zdGluc3Qgc291cmNlcyBjb25mbW9kdWxlLiBjbG9zZXM6ICM4ODg0MworICAqIEltcGxlbWVudCB0aGUgcGFtIGNvbmZpZ3VyYXRpb24gTmV3IFdvcmxkIE9yZGVyLiAgV293LCB0aGF0IHdhcyBxdWljay4gOi0pCisgICogSW1wbGVtZW50IGEgc2NoZW1lIGZvciBhbGxvd2luZyBvdGhlciBwYWNrYWdlcyB0byBtb2RpZnkgL2V0Yy9zaGVsbHMuCisKKyAtLSBLYXJsIFJhbW0gPGtjckBkZWJpYW4ub3JnPiAgRnJpLCAyMiBBdWcgMjAwMyAyMDo1ODo0MiAtMDQwMAorCitzaGFkb3cgKDE6NC4wLjMtOSkgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBmaXggbXlzdGVyaW91cyBjcmVlcGluZyBidWcgaW4gcG8vTWFrZWZpbGUuaW4uaW4sIGNsb3NlczogIzIwMDA1MgorICAqIGR1dGNoIGRlYmNvbmYgdHJhbnNsYXRpb24sIGNsb3NlczogIzIwNDU3OAorICAqIHN3aXRjaCB0byBwby1kZWJjb25mLCBjbG9zZXM6ICMxODM5OTgsICMyMDAxMzAKKyAgKiB1c2UgYXV0b21ha2UxLjcsIGNsb3NlczogIzIwNTk5MQorICAqIHVwZGF0ZSBnZXJtYW4gZGViY29uZiB0cmFuc2xhdGlvbiwgY2xvc2VzOiAjOTQxMzgKKyAgKiBJIGNhbid0IGNvbWUgdXAgd2l0aCBhIGdvb2QganVzdGlmaWNhdGlvbiBhcyB0byB3aHkgY2hhcmFjdGVycyBvdGhlcgorICAgIHRoYW4gJzoncyBhbmQgJ1wwJ3Mgc2hvdWxkIGJlIGRpc2FsbG93ZWQgaW4gZ3JvdXAgYW5kIHVzZXJuYW1lcyAob3RoZXIKKyAgICB0aGFuICctJyBhcyB0aGUgbGVhZGluZyBjaGFyYWN0ZXIpLiAgVGh1cywgdGhlIG1haW50ZW5hbmNlIHRvb2xzIGRvbid0CisgICAgYW55bW9yZS4gIGNsb3NlczogIzc5NjgyLCAjMTY2Nzk4LCAjMTcxMTc5CisgICogRml4IHR5cG8gaW4gL2V0Yy9wYW0uZC9zdS4gY2xvc2VzOiAjMTk2ODA0CisgICogZGFuaXNoIGRlYmNvbmYgdHJhbnNsYXRpb24sIGNsb3NlczogIzExODI0NQorICAqIHJ1c3NpYW4gZGViY29uZiB0cmFuc2xhdGlvbiwgY2xvc2VzOiAjMTk4NzI5CisgICogQW5kIGxhc3QsIGJ1dCBub3QgbGVhc3QsIHdoYXQncyB1bmRvdWJ0ZWRseSBnb2luZyB0byBiZSB0aGUgbW9zdAorICAgIHBvcHVsYXIgY2hhbmdlOiBtZDUgcGFzc3dvcmRzIGFyZSB0dXJuZWQgb24gYnkgZGVmYXVsdCwgYW5kIHRoZXJlIGlzCisgICAgbm8gcHJvbXB0IHRvIGNoYW5nZSB0aGVtLiAgWWVzLCB0aGlzIGlzIHJlZHVjZWQgZnVuY3Rpb25hbGl0eS4gIE5vLCBpdAorICAgIGNhbid0IGdvIGJhY2sgaW4gdGhlIHdheSBpdCB3YXM7IHRoZSBvbGQgY29kZSBub3Qgb25seSBtb2RpZmllZAorICAgIGNvbmZmaWxlcywgaXQgbW9kaWZpZWQgKm90aGVyKnBhY2thZ2VzKiBjb25mZmlsZXMgYW5kIHdhcyBhIG1hc3NpdmUKKyAgICBwb2xpY3kgdmlvbGF0aW9uLiAgSSBleHBlY3QgdGhpcyBjaGFuZ2Ugd2lsbCBtb3RpdmF0ZSB0aGUgcGVvcGxlIHdobworICAgIGhhdmUgc2FpZCB0aGF0IHRoZXkgd2lsbCBjb21lIHVwIHdpdGggYSBwcm9wZXIgc29sdXRpb24gdG8gZG8gc28uCisgICAgY2xvc2VzOiAjMTg2MDE2LCAjMTEwMjI4LCAjMTcxODA4CisKKyAtLSBLYXJsIFJhbW0gPGtjckBkZWJpYW4ub3JnPiAgV2VkLCAyMCBBdWcgMjAwMyAwMjowNjo1MCAtMDQwMAorCitzaGFkb3cgKDE6NC4wLjMtOCkgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBGaXggbWlzc2luZyAnOicgaW4gZ2V0b3B0IGNhbGwuICBjbG9zZXM6ICMxODQzMDEKKyAgKiBEb24ndCBpbnN0YWxsIG1rcGFzc3dkLCB3ZSBkb24ndCB1c2UgaXQuICBjbG9zZXM6ICMxODU5MTksICMxODc5MDYKKyAgKiByZXBsYWNlczogbWFucGFnZXMta28uIGNsb3NlczogIzE4NDgxMAorICAqIEZpeCB0aGUgbWVzc2FnZSBpbiAjMTkwNTY3IChub3QgY2xvc2luZyB1bnRpbCBpdCdzIGJlZW4gYWNjZXB0ZWQgdXBzdHJlYW0pCisgICogRml4IGJyYWlub3MgaW4gbG9naW4uMS4gY2xvc2VzOiAjMTg0NzMxCisgICogRml4dXAgcGVybWlzc2lvbnMgZm9yIGNoYWdlLiAgY2xvc2VzOiAjMTg0MTM4CisgICogRm9yY2UgdGhlIHVtYXNrIHRvIDAyMiBpbiBwYXNzd2QuY29uZmlnLiAgY2xvc2VzOiAjMTgyNTA2CisgICogQWRkIFNhbSBIYXJ0bWFuIDxoYXJ0bWFuc0BkZWJpYW4ub3JnPiBhcyBhbiB1cGxvYWRlci4KKyAgKiBVcGRhdGUgc3RhbmRhcmRzLXZlcnNpb24uCisgICogQWRkIHZlcnNpb25lZCBidWlsZC1kZXBlbmQgb24gZGViaGVscGVyLgorCisgLS0gS2FybCBSYW1tIDxrY3JAZGViaWFuLm9yZz4gIFNhdCwgMjYgQXByIDIwMDMgMTU6MzQ6MTYgLTA0MDAKKworc2hhZG93ICgxOjQuMC4zLTcpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogV2hlbiByZWxvY2F0aW5nIGEgdXNlcidzIGhvbWUgZGlyZWN0b3J5LCBkb24ndCBmYWlsIGFuZCByZW1vdmUgdGhlIG5ldworICAgIGhvbWUgZGlyZWN0b3J5IGlmIHdlIGNhbid0IHJlbW92ZSB0aGUgb2xkIGhvbWUgZGlyZWN0b3J5IGZvciBzb21lCisgICAgcmVhc29uOyB0aGUgcmVzdWx0cyBjYW4gYmUgc3BlY3R1bGFybHkgcG9vcnQgaWYsIGZvciBpbnN0YW5jZSwgb25seQorICAgIHRoZSBybWRpcigpIGZhaWxzLiBjbG9zZXM6ICMxNjYzNjkKKyAgKiBydW4gZGhfaW5zdGFsbGRlYmNvbmYgc28gYmFzZS1jb25maWcgd2lsbCB3b3JrLiAgKnNpZ2gqLiAgY2xvc2VzOiAjMTY2Nzg4CisKKyAtLSBLYXJsIFJhbW0gPGtjckBkZWJpYW4ub3JnPiAgU3VuLCAyNCBOb3YgMjAwMiAyMTo0MDozMCAtMDUwMAorCitzaGFkb3cgKDE6NC4wLjMtNikgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiByZW1vdmUgYXV0b21ha2UgZGVwZW5kZW5jeSBhbmQgbGVhdmUgb25seSBhdXRvbWFrZTEuNSwgc2luY2UgaXQgc2VlbXMKKyAgICB0byBjb25mdXNlIHRoZSBhbHBoYSBhbmQgbWlwc2VsIGF1dG9idWlsZGVycyBmb3Igc29tZSByZWFzb24uCisKKyAtLSBLYXJsIFJhbW0gPGtjckBkZWJpYW4ub3JnPiAgU3VuLCAxMyBPY3QgMjAwMiAyMTo0NToxNSAtMDQwMAorCitzaGFkb3cgKDE6NC4wLjMtNSkgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBidWlsZC1kZXBlbmQgb24gbGlidG9vbCBhbmQgYXV0b21ha2UuICBvb3BzLiBjbG9zZXM6ICMxNjQ1NDUKKworIC0tIEthcmwgUmFtbSA8a2NyQGRlYmlhbi5vcmc+ICBTdW4sIDEzIE9jdCAyMDAyIDAxOjQ0OjQ3IC0wNDAwCisKK3NoYWRvdyAoMTo0LjAuMy00KSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIEkgYW0gdW5hYmxlIHRvIGJlZ2luIHRvIGV4cHJlc3MgdGhlIGJpdHRlcm5lc3MgdGhhdCBJJ20gbm93IGV4cGVyaWVuY2luZy4KKyAgKiByZXBsYWNlcyBtYW5wYWdlcy1kZSA8PSAwLjQtNCwgY2xvc2VzOiAjMTYyMDk3LCAjMTYyMTczCisgICogcmVwbGFjZXMgbWFucGFnZXMtZnIsIGNsb3NlczogIzE2MjE1MAorICAqIHJlcGxhY2VzIG1hbnBhZ2VzLWh1LCBjbG9zZXM6ICMxNjIxMjYKKyAgKiByZXBsYWNlcyBtYW5wYWdlcy1qYSwgY2xvc2VzOiAjMTYzNTExLCAjMTYyMDk1CisgICogZml4IHNnIHN5bWxpbmssIGNsb3NlczogIzE2MjMzOSwgIzE2MzY1MgorICAqIG5ld2dycCBzaG91bGQgYmUgYXdhcmUgdGhhdCBnZXRsb2dpbigpIGFuZCB0dHluYW1lKCkgYXJlIG5vdAorICAgIGd1YXJhbnRlZWQgdG8gcmV0dXJuIGFueXRoaW5nIGFuZCBOT1QgYmxpbmRseSBhc3N1bWUgdGhhdCB0aGV5CisgICAgc3VjY2Vzc2Z1bGx5IHJldHVybmVkIGEgcG9pbnRlciB0byBhIHN0cmluZy4gIEkgbWVhbiwgcmVhbGx5LCBwZW9wbGUsCisgICAgdGhhdCBzb3J0IG9mIHRoaW5nIGhhc24ndCBiZWVuIHJlbGlhYmxlIHNpbmNlIDQuMkJTRCBvbiBhIFZBWC4gIEknbGwKKyAgICBiZXQgbW9zdCBvZiB0aGUgd29ya2luZyBvbiB0aGUgdXBzdHJlYW0gd2VyZW4ndCBldmVuIGJvcm4geWV0IHdoZW4KKyAgICB0aGlzIHNvcnQgb2YgdGhpbmcgd2FzIGNvbW1vbnBsYWNlIChpdCB3YXMgTkVWRVIgYWNjZXB0YWJsZSkuCisgICAgY2xvc2VzOiAjMTYyMzAzCisgICogcHVsbCB0aGUgbWFucGFnZSBmb3IgdGhlIHNwaWZmeSBzdSBmb3J3YXJkLiBjbG9zZXM6ICMxNjIyNzUKKyAgKiBkZXBlbmQgb24gYXV0b21ha2UxLjUsIGFuZCByZXJ1biB0aGUgYXV0b2dydW5nZS4gIFRoaXMgc2hvdWxkCisgICAgKmhvcGVmdWxseSogbWFrZSBpdCBidWlsZCBtb3JlIGNvbnNpc3RlbnRseS4KKyAgKiB0aGlzIGNvbmNsdWRlcyB0aGUgYml3ZWVrbHkgdHJlYWRpbmcgb2Ygd2F0ZXIuCisKKyAtLSBLYXJsIFJhbW0gPGtjckBkZWJpYW4ub3JnPiAgU2F0LCAxMiBPY3QgMjAwMiAxNDo1NjoxNiAtMDQwMAorCitzaGFkb3cgKDE6NC4wLjMtMykgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiB0aGUgImZpeCB0aGUgYnJhaW4gZGFtYWdlIiByZWxlYXNlCisgICogZml4IHBhbSBicmFpbi1kYW1hZ2UgaW4gY2h7YWdlLHBhc3N3ZH0sIHtncm91cCx1c2VyfXthZGQsZGVsLG1vZH0sIG5ld3VzZXJzCisgICAgY2xvc2VzOiAjMTYyMTgxLCAjMTYyMTk5LCAjMTYyMjI4IAorICAqIGZpeCB2aXB3IHN5bWxpbmsgYnJhaW4tZGFtYWdlOiBjbG9zZXM6ICMxNjIyMTgKKyAgKiBmaXggcGFja2FnZSBkZXNjcmlwdGlvbiBicmFpbiBkYW1hZ2UsIGNsb3NlczogIzEzOTU2MworICAqIGluc3RhbGwgY3B7cHcsZ3J9IGJyYWluIGRhbWdlCisKKyAtLSBLYXJsIFJhbW0gPGtjckBkZWJpYW4ub3JnPiAgV2VkLCAyNSBTZXAgMjAwMiAwMToyMTozNSAtMDQwMAorCitzaGFkb3cgKDE6NC4wLjMtMikgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBmaXggInN1IC0iLiAgY2xvc2VzOiAjMTYyMDg5CisgICogZG9jdW1lbnQgZXhpdCBjb2RlcyBvZiBncm91cGRlbCBhbmQgdXNlcmRlbCAoYWdhaW4sIGZvciB1c2VyZGVsKQorICAgIGNsb3NlczogIzE2MTg2MQorICAqIGNsZWFuIHVwIGxvZ291dGQgY2xlYW51cAorCisgLS0gS2FybCBSYW1tIDxrY3JAZGViaWFuLm9yZz4gIE1vbiwgMjMgU2VwIDIwMDIgMTk6NDQ6NDAgLTA0MDAKKworc2hhZG93ICgxOjQuMC4zLTEpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogbmV3IHVwc3RyZWFtIHZlcnNpb24hIGNsb3NlczogIzE0OTQ0NCwgIzE1MDIzNywgIzE0NTQxNQorICAqIGNvbXBsZXRlbHkgbmV3IHBhY2thZ2luZyEKKyAgKiBhbGwgbmV3IGJ1Z3MhCisgICogb2xkIGJ1Z3MgYXMgd2VsbCEKKyAgKiByZW1vdmUgL2V0Yy9pbml0LmQvbG9nb3V0ZCwgbGlrZSB0aGUgb2xkIHBvc3RybSBzaG91bGQndmUsIGNsb3NlczogIzE2MDY4MgorICAqIGZpeCBwYXNzd2QgbWFucGFnZSwgY2xvc2VzOiAjMTYwNDc3LCAjMTIyNzk3CisgICogZml4IGxhc3Rsb2cgbWFucGFnZSwgY2xvc2VzOiAjMTU5ODg2CisgICogYWRkIGFzIG1hbnkgdmlydHVhbCBjb25zb2xlIGRldmljZXMgYXMgSSBzZWVtIHRvIGhhdmUgdG8gc2VjdXJldHR5LAorICAgIGNsb3NlczogIzE1NjQ3MgorICAqIGFkZCB0dHlTMCBhbmQgdHRzLzAgdG8gc2VjdXJldHR5LiAgY2xvc2VzOiAjMTMwMTM4CisgICogc3Ugc2hvdWxkIG5vdCBzZWdmYXVsdCBpZiBub2JvZHkgaGFzIHVpZCAwLiAgY2xvc2VzOiAjMTM5OTY3CisgICogaW5zdGFsbCBhbmQgdXNlIHRyYW5zbGF0aW9ucy4gIGNsb3NlczogIzExODIzOAorICAqIHVwc3RyZWFtIHVzZXMgbmV3IGF1dG9tYWtlLiAgY2xvc2VzOiAjMTE0OTM1CisgICogYWRkIHJ1c3NpYW4gdGVtcGxhdGUgZmlsZSBmb3IgcGFzc3dvcmQuICBjbG9zZXM6ICMxMzAzNTgKKyAgKiBoYW5kbGUgdGVtcGxhdGUgaW5zdGFsbGF0aW9uIGNvcnJlY3RseS4gIGNsb3NlczogIzE1NjY3NAorICAqIGRvbid0IHBsYWNlIGEgbWF4aW11bSByZXN0cmljdGlvbiBvbiB0aGUgbGVuZ3RoIG9mIHBhc3N3b3Jkcy4KKyAgICBjbG9zZXM6ICMxNTk0ODcKKyAgKiBmaXggZGVzY3JpcHRpb24uIGNsb3NlczogIzE0NTQ1OQorICAqIHVwZGF0ZSBjb25maWcue2d1ZXNzLHN1Yn0KKworIC0tIEthcmwgUmFtbSA8a2NyQGRlYmlhbi5vcmc+ICBXZWQsIDE4IFNlcCAyMDAyIDEwOjE0OjA4IC0wNDAwCisKK3NoYWRvdyAoMjAwMDA5MDItMTIpIHVuc3RhYmxlOyB1cmdlbmN5PWhpZ2gKKworICAqICJvb3BzIgorICAqIC9ldGMvbG9naW4uZGVmczogL3Zhci9zcG9vbC9tYWlsIC0+IC92YXIvbWFpbCwgY2xvc2VzOiAjMTI1MzExCisKKyAtLSBLYXJsIFJhbW0gPGtjckBkZWJpYW4ub3JnPiAgU3VuLCAgNyBBcHIgMjAwMiAxMTo1NDo0OCAtMDQwMAorCitzaGFkb3cgKDIwMDAwOTAyLTExKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIEZpeCBzb21lIG5pdHM6CisgICogcmVtb3ZlIGNoYW5nZWxvZ34gZmlsZS4gIG9vcHMuICBjbG9zZXM6ICMxMzk3MTEKKyAgKiBmaXggdHlwbyBpbiBjb250cm9sLiAgY2xvc2VzOiAjMTM5NTY0CisgICogSG1tbS4gIFBlb3BsZSBvcGVuIG1vcmUgYnVncyB3aGVuIEkgdXBsb2FkIG5ldyB2ZXJzaW9ucyBvZiB0aGluZ3MuCisgICAgTWF5YmUgdGhleSBqdXN0IG5vdGljZSB0aGVtIG1vcmUgdGhlbiwgb3IgbWF5YmUgaXQncyBqdXN0IE11cnBoeS4KKworIC0tIEsuIFJhbW0gPGtjckBkZWJpYW4ub3JnPiAgVHVlLCAyNiBNYXIgMjAwMiAxMjoxNDozMyAtMDUwMAorCitzaGFkb3cgKDIwMDAwOTAyLTEwKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIFdlIGhhdGVzIHRoZSBhdXRvbWFrZS4gIFdlIGhhdGVzIGl0IGZvcmV2ZXIuICBjbG9zZXM6ICMxMzkyOTMKKyAgKiBzdHVwaWQgb21pc3Npb246IGxvZ291dGQgc3RpbGwgaW4gcG9zdGluc3QuICBjbG9zZXM6ICMxMzk0MjIKKyAgKiBtYWtlIGxvZ2luLmRlZnMgYSBiaXQgY2xlYXJlci4gY2xvc2VzOiAjMTM4ODA5CisKKyAtLSBLYXJsIFJhbW0gPGtjckBkZWJpYW4ub3JnPiAgRnJpLCAyMiBNYXIgMjAwMiAxMjowOTowNyAtMDUwMAorCitzaGFkb3cgKDIwMDAwOTAyLTkpIHVuc3RhYmxlOyB1cmdlbmN5PW1lZGl1bQorCisgICogR2V0IHJpZCBvZiBsb2dvdXRkLCBpdCBkb2Vzbid0IHdvcmssIGRpZG4ndCB3b3JrIGluIHBvdGF0bywgYW5kIG5vdworICAgIGl0J3MgY2F1c2luZyBwZW9wbGUgdG8gb3BlbiBSQyBidWdzLiAgY2xvc2VzOiAjMTM4MjU5LCAjNjYxNTMsICAjMTIxOTQwCisgICAgSSdtIHRvbGQgdGhlIHRpbWVvdXRkIHBhY2thZ2UgZG9lcyBhIGJldHRlciBqb2IgYW55d2F5LgorICAqIGFkZCAvYmluL3Rjc2ggdG8gL2V0Yy9zaGVsbHMsIGNsb3NlczogIzExODEwMywgIzEyMjExMgorICAqIGFkZCAvYmluL2tzaCB0byAvZXRjL3NoZWxscywgY2xvc2VzOiAjMTIzNTU2CisgICogcmVtb3ZlIHRleHQgYWJvdXQgcGFzc3dvcmQgYWdpbmcgZnJvbSBwYXNzd2QoNSksIGNsb3NlczogIzEzNzQ5MworICAqIHNwYW5pc2ggZGViY29uZiB0ZW1wbGF0ZSBmb3IgcGFzc3dkLCBjbG9zZXM6ICMxMzY0NjMKKyAgKiBkb2N1bWVudCB0aGUgZmFjdCB0aGF0IHlvdSBjYW4gbm90IGhhdmUgYSB2YWxpZCBwYXNzd29yZCBpbgorICAgIC9ldGMvc2hhZG93LiAgY2xvc2VzOiAjMTMxNjkwCisgICogL2V0Yy9sb2dpbi5kZWZzOiAvdmFyL3Nwb29sL21haWwgLT4gL3Zhci9tYWlsLCBjbG9zZXM6ICMxMjUzMTEKKyAgKiBmaXggbG9jYXRpb25zIG9mIHV0bXAgYW5kIHd0bXAgaW4gbG9naW4oMSksIGNsb3NlczogIzExOTY1NgorICAqIFRoZSBwYWNrYWdlIGRlc2NyaXB0aW9uIGZvciBwYXNzd2QgcmVmZXJzIHRvIFJFQURNRS5EZWJpYW4uZ3oKKyAgICBidXQgb25seSBSRUFETUUuZGViaWFuLmd6IGFjdHVhbGx5IGV4aXN0cy4gIE1vc3QgcGFja2FnZXMgdXNlCisgICAgUkVBRE1FLkRlYmlhbi5neiwgYnV0IHRoZSBjb250cm9sIGZpbGUgaXMgdGhlIG9ubHkgcGxhY2UgdGhhdCBnZXRzIGl0CisgICAgd3JvbmcgZm9yIHRoaXMgcGFja2FnZS4gIFdoZW4gaW4gZG91YnQsIGZpeCB0aGUgZG9jdW1lbnRhdGlvbi4gOi0pCisgICAgY2xvc2VzOiAjMTE2OTU1CisKKyAtLSBLYXJsIFJhbW0gPGtjckBkZWJpYW4ub3JnPiAgVGh1LCAxNCBNYXIgMjAwMiAxNzowNTo1NiAtMDUwMAorCitzaGFkb3cgKDIwMDAwOTAyLTgpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogY2hlY2sgaW4gcGFzc3dkLmV4cGlyZS5jcm9uIGZvciBhbHJlYWR5LWV4cGlyZWQgcGFzc3dvcmRzOyBjbG9zZXM6ICMxMDIzMTkKKyAgKiBub3RlIGluIGNoYWdlLjEgYW5kIHNoYWRvd2NvbmZpZy44IHRoYXQgcGFzc3dvcmQgYWdpbmcgaW5mb3JtYXRpb24KKyAgICBvbmx5IHdvcmtzIHdoZW4gc2hhZG93IHBhc3N3b3JkcyBhcmUgZW5hYmxlZC4gY2xvc2VzOiAjMTAzNzAyCisgICogZW5hYmxlIGNoYW5naW5nIHRoZSBuYW1lIGluIGNoZm4gYnkgZGVmYXVsdC4gY2xvc2VzOiAjMTA3ODE5CisgICogZmFpbCB0byBtYW5nbGUgZmlsZXMgaW4gbGliL2NvbW1vbmlvLmMsIHRoYW5rcyB0byBtYXR0QGxpbnV4Ym94Lm51CisgICogYWRkIC9kZXYvY29uc29sZSB0byB0aGUgc2VjdXJlIHR0eXMgbGlzdC4gIGJlY2F1c2UuICBjbG9zZXM6ICMxMTM5NDkKKyAgKiBmaW5kIHRoZSBGSFMgbWFpbCBzcG9vbCBmaXJzdCBpbiBjb25maWd1cmUuICBjbG9zZXM6ICMxMTQ5NTEKKyAgICAodGhhbmtzIHRvIG1qYkBkZWJpYW4ub3JnKQorICAqIGFib3ZlIHNhZGx5IGNhdXNlcyBhdXRvbWFrZSB0byBnbyBib25rZXJzLCBhbmQgSSBkb24ndCB3YW50IHRvCisgICAgcmVhc3NlbWJsZSB0aGUgYnVpbGQgc3lzdGVtIGJlZm9yZSB3b29keSBpcyByZWxlYXNlZC4gIEtlZXAgYXV0b21ha2UKKyAgICBmcm9tIGdvaW5nIG9mZiBvbiBpdHMgb3duLgorICAqIHRlcm1pbmF0ZSBhcmd1bWVudCB2YWxpZGF0aW9uIGluIGxvZ2luIHdoZW4gaXQgaGl0cyBhICctLScuCisgICAgY2xvc2VzOiAjNjYzNjgKKyAgCisgLS0gS2FybCBSYW1tIDxrY3JAZGViaWFuLm9yZz4gIE1vbiwgMjIgT2N0IDIwMDEgMTE6MTc6MzUgLTA0MDAKKworc2hhZG93ICgyMDAwMDkwMi03KSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIHRoZSAiSSdtIHNvcnJ5LCBJIHNob3VsZCd2ZSBkb25lIHRoaXMgZWFybGllciIgcmVsZWFzZQorICAqIENhbmNlbCBsb2dpbiB0aW1lb3V0IGFmdGVyIGF1dGhlbnRpY2F0aW9uIHNvIHRoYXQgcGF0aWVudCBwZW9wbGUKKyAgICB0aW1pbmcgb3V0IG9uIG5ldHdvcmsgZGlyZWN0b3J5IHNlcnZpY2VzIGNhbiBsb2cgaW4gd2l0aCBsb2NhbAorICAgIGFjY291bnRzLiAgQ2xvc2VzOiAjMTA3MTQ4CisgICogQWRkIEJyYXppbGxpYW4gUG9ydHVnZXNlIGRlYmNvbmYgdGVtcGxhdGUgdHJhbnNsYXRpb24gZm9yIHBhc3N3ZC4KKyAgICBDbG9zZXM6ICMxMDUyOTIsICM5MzIyMworICAqIFB1bGwgL3Vzci9zaGFyZS9kb2MvJHBhY2thZ2UvUkVBRE1FLnNoYWRvdy1wYXBlci5nei4gIENsb3NlczogIzk4MDU4CisgICogVXNlIGdldGVudCBpbnN0ZWFkIG9mIGdyb3VwIHRvIHZlcmlmeSBleGlzdGVuY2Ugb2Ygc2hhZG93IGdyb3VwCisgICAgW3dvcmtzIGJldHRlciBmb3IgZGlzdHJpYnV0ZWQgZ3JvdXAgZmlsZXNdLiAgQ2xvc2VzOiAjOTk5MDIKKyAgICBbTm90ZSB0aGF0IHRoaXMgc29ydCBvZiBwcm9ibGVtIGlzIHJhbXBhbnQgaW4gdGhlc2UgcG9zdGluc3QgYW5kCisgICAgY29uZmlnIHNjcmlwdHMsIGJ1dCB0aGF0J3Mgbm90IGdldHRpbmcgZml4ZWQgaW4gd29vZHkuXQorICAqIEFtZW5kIHJlZmVyZW5jZSB0byAvdXNyL2RvYyBpbiBzaGFkb3djb25maWcuOC4gIENsb3NlczogIzEwMjgwNAorICAqIHN1IHNob3VsZCBzZXQgJFVTRVIuICBDbG9zZXM6ICMxMDI5OTUKKyAgKiB1c2VyZGVsIG5vdyBkZWxldGVzIHVzZXIgZ3JvdXBzIGZyb20gL2V0Yy9nc2hkb3cgYXMgd2VsbCBhcworICAgIC9ldGMvZ3JvdXAuICBDbG9zZXM6ICM5OTQ0MgorICAqIGdycGNrIG5vdyBoYXMgYW4gKG90aGVyd2lzZSB1bmRvY3VtZW50ZWQpIC1wIG9wdGlvbiwgc28gdGhhdAorICAgIHNoYWRvd2NvbmZpZyBjYW4gY2xlYW4gdXAgdGhlIHJlc3VsdHMgb2YgdGhlIGFib3ZlLCBzbyB0aGUgY29uZmlnCisgICAgc2NyaXB0IHdpbGwgZmFpbCByYW5kb21seSBsZXNzIG9mdGVuLiAgQ2xvc2VzOiAjMTAzMzg1CisKKyAtLSBLYXJsIFJhbW0gPGtjckBkZWJpYW4ub3JnPiAgV2VkLCAyMiBBdWcgMjAwMSAxMjowOToyNyAtMDQwMAorCitzaGFkb3cgKDIwMDAwOTAyLTYuMSkgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisgCisgICogTm9uLW1haW50YWluZXIgdXBsb2FkLgorICAqIFVwZ3JhZGUgdG8gbGF0ZXN0IGNvbmZpZy5zdWIgYW5kIGNvbmZpZy5ndWVzcy4gIENsb3NlczogIzg4NTQ3CisgCisgLS0gR2VyaGFyZCBUb25uIDxndEBkZWJpYW4ub3JnPiAgRnJpLCAgMSBKdW4gMjAwMSAyMDozODo0MyArMDIwMAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKK3NoYWRvdyAoMjAwMDA5MDItNikgdW5zdGFibGU7IHVyZ2VuY3k9bWVkaXVtCisKKyAgKiBhY3R1YWxseSBzZXQgcm9vdCdzIHBhc3N3b3JkIHdoZW4gYXBwcm9wcmlhdGUKKyAgICBwYXRjaCB0aGFua3MgdG8gam9leWgsIGNsb3NlcyAjOTg0MDIKKyAgKiBmaXggZXJyb3IgaW4gZXhwaXJ5IG1hbiBwYWdlLiAgU3VjaCBkYW1hZ2UuIGNsb3NlczogIzk5MjkxCisgICogZml4IGdyb3VwIG9mIHNldGdpZCBwcm9ncmFtIGNoYWdlIGFuZCBleHBpcnksIGNsb3NlczogIzk4MTIyCisKKyAtLSBLYXJsIFJhbW0gPGtjckBkZWJpYW4ub3JnPiAgVGh1LCAzMSBNYXkgMjAwMSAwNzozODo1OSAtMDQwMAorCitzaGFkb3cgKDIwMDAwOTAyLTUpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogYWRkIGJ1aWxkIGRlcGVuZGVuY3kgb24gZmlsZSwgdG8ga2VlcCBsaWJ0b29sIGhhcHB5LiBjbG9zZXM6ICM5NzQ5OAorCisgLS0gS2FybCBSYW1tIDxrY3JAZGViaWFuLm9yZz4gIFdlZCwgMTYgTWF5IDIwMDEgMDY6NTc6MjMgLTA0MDAKKworc2hhZG93ICgyMDAwMDkwMi00KSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIENoYW5nZSBtYWludGFpbmVycywgY2xvc2VzOiAjOTIzNTUKKworIC0tIEthcmwgUmFtbSA8a2NyQGRlYmlhbi5vcmc+ICBTdW4sIDEzIE1heSAyMDAxIDAzOjI4OjA3IC0wNDAwCisKK3NoYWRvdyAoMjAwMDA5MDItMy4xKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIE5vbi1tYWludGFpbmVyIHVwbG9hZAorICAqIFJlY29tcGlsZSB0byBmaXggQVJNIGxvc3NhZ2UgCisKKyAtLSBQaGlsaXAgQmx1bmRlbGwgPHBoaWxiQGFybWxpbnV4Lm9yZz4gIFN1biwgMTEgTWFyIDIwMDEgMDc6NDc6MjcgLTA1MDAKKworc2hhZG93ICgyMDAwMDkwMi0zKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIFVwZGF0ZSBjb25maWcuc3ViIGFuZCBjb25maWcuZ3Vlc3Mgc28gaWE2NCBjb21waWxlZCwgY2xvc2VzOiAjODE4OTcKKyAgKiBsaWJtaXNjL3N1Yi5jOiBza2lwICcqJyBpbiBzaGVsbCBuYW1lIHdoZW4gZG9pbmcgc3Vic3lzdGVtLCBjbG9zZXM6CisgICAgIzgyODkzCisgICogc3JjL3N1LmM6IGRvbid0IGFzc3VtZSB1aWQgMCA9PSAicm9vdCIsIHVzZSBnZXRwd3VpZCB0byBmZXRjaCBpdCwKKyAgICBjbG9zZXM6ICM4MTkyNAorICAqIFRoaXMgd2FzIGZpeGVkIGluIGEgcHJldmlvdXMgdmVyc2lvbiwgY2xvc2VzOiAjNzcwNTcKKyAgKiBVcGRhdGUgcGFzc3dkIGxvbmcgZGVzYywgY2xvc2VzOiAjODgyOTkKKyAgKiBDb25mbGljdCB3aXRoIHN1aWRtYW5hZ2VyIDw8IDAuNSwgYW5kIHJlbW92ZSBzdWlkeyx1bn1yZWdpc3RlciBjYWxscywKKyAgICBjbG9zZXM6ICM4NzE1NworICAqIFVwZGF0ZSBwb2xpY3kgdG8gMy41LjAuMAorICAqIEFkZGVkIGRlYmNvbmYgc3VwcG9ydCBmb3IgcGFzc3dkIGZyb20gYmFzZS1jb25maWcKKworIC0tIEJlbiBDb2xsaW5zIDxiY29sbGluc0BkZWJpYW4ub3JnPiAgU2F0LCAgMyBNYXIgMjAwMSAwNzoyNjo1NyAtMDUwMAorCitzaGFkb3cgKDIwMDAwOTAyLTIpIHVuc3RhYmxlIGZyb3plbjsgdXJnZW5jeT1sb3cKKworICAqIGNvbnRyb2wuaHVyZC0+Y29udHJvbC5nbnU6IGNsb3NlczogIzc3OTQwCisgICogQ2Fubm90IHJlcHJvZHVjZSwgY2xvc2VzOiAjNzk0NDcKKyAgKiBVc2VyIG5ldmVyIHNlbnQgYSBwYXRjaCwgcGx1cyBJIHRoaW5rIHJlbW92aW5nIHRoZSBwYXNzd2QvYWNjb3VudCB3aGVuCisgICAgZG9pbmcgcGFzc3dkIC1sIGlzIGEgYmFkIGlkZWEuIE1ha2VzIGl0IHNvIHlvdSBjYW5ub3QgdW5sb2NrIHRoZQorICAgIGFjY291bnQuIGNsb3NlczogIzc3ODI0CisgICogRG9uJ3QgYWxsb3cgc2hhZG93Y29uZmlnIHRvIGNoYW5nZSBwZXJtcyBvZiBvdGhlciBiaW5hcmllcywgY2xvc2U6ICM3NzA1NworICAqIElNTywgdGhpcyBpcyBub3QgYSBidWcuIEl0J3MgcGFydCBvZiBhIGZlYXR1cmUsIGFuZCBjYW4gYmUgZGlzYWJsZWQgYnkKKyAgICB0dXJuaW5nIG9mZiBVU0VSX0dST1VQUy4gY2xvc2VzOiAjNzY4MDYKKyAgKiAvYmluL2xvZ2luIGlzIHN1aWQgcm9vdCBmb3Igc2V2ZXJhbCBnb29kIHJlYXNvbnMuIEZvciBvbmUsIGl0IGFsbG93cworICAgIGRhZW1vbnMgdGhhdCB1c2UgaXQgdG8gcnVuIGFzIG5vbi1yb290LiBUaGlzIGlzIGEgZ29vZCB0aGluZyBzaW5jZSBpdAorICAgIG1lYW5zIG9ubHkgb25lIHByb2dyYW0gaXMgcnVubmluZyBhcyByb290LCBhbmQgbm90IHNldmVyYWwuIGNsb3NlczogIzE3OTExCisgICogc3Vsb2cgaXMgZmFpcmx5IGVhc3kgdG8gZ3JlcCBvciBwYXJzZSBzbyBJIGRvbid0IHNlZSBob3cgdGhlCisgICAgc2ltaWxhcml0eSBvZiB0aGUgbG9nIGVudHJpZXMgZm9yIGZhaWxlZCBhbmQgc3VjY2Vzc2Z1bCBpcyBhIHByb2JsZW0uCisgICAgJy0nIGZvciBmYWlsZWQsICcrJyBmb3Igc3VjY2Vzcy4gY2xvc2VzOiAjNjM4MDEKKyAgKiBsb2dvdXRkLjg6IHMsL2V0Yy91dG1wLC92YXIvcnVuL3V0bXAsIGNsb3NlczogIzgwNDk0CisgICogRml4IGNhc2Ugd2hlcmUgcGFtX2F1dGggcmV0dXJucyBhIE5VTEwgdXNlcm5hbWUsIGNsb3NlczogIzc2ODE3LCAjNzU1MTAKKyAgKiBIbW0sIExpbnV4IGlzIGEgc3lzdiBkZXJpdmF0aXZlLCBzbyB0aGUgY29tbWVudCBpcyBwZXJmZWN0bHkKKyAgICBsZWdpdGltYXRlLCBjbG9zZXM6ICM3Njg5OAorICAqIE1BWF9QQVNTV09SRCBpcyB1c2VkIGJ5IHVzZXJhZGQsIGFuZCBDSEZOX0FVVEggaXMgYWN0dWFsbHkgdXNlZCBieQorICAqIGNoZm4gdG8gZGVjaWRlIGlmIHRoZSBjdXJyZW50IHVzZXIgbmVlZHMgdG8gYXV0aCBpbiBvcmRlciB0byBjaGFuZ2UKKyAgICB0aGVpciBpbmZvLCBjbG9zZXM6ICM3MTExNAorICAqIGxvZ2luLjE6IEZpeCBcJyBjbG9zZXM6ICM3NTQzNQorICAqIGxvZ2luIC1mIHdvcmtzIGZvciBtZSBhc3N1bWluZyB5b3UgY2FsbCBpdCBhcyByb290LiBJIHRlc3RlZCB0aGlzIHdpdGgKKyAgICBwbGFpbiBwYW1fdW5peC5zbywgYW5kIGFsc28gd2l0aCBwYW1fdW5peC5zbyBzdGFja2VkIHdpdGggcGFtX2xkYXAuc28uCisgICAgU28gaWYgaXQgZG9lc24ndCB3b3JrIHdpdGggdGVsbmV0LWhlaW1kYWwsIHRoZW4gdGhhdCBwcm9ncmFtIGlzIG5vdAorICAgIGRvaW5nIHNvbWV0aGluZyByaWdodC4gY2xvc2VzOiAjNzgxODYKKyAgKiBsb2dpbi5wYW0uZDogbWFkZSBwYW1fbm9sb2dpbi5zbyByZXF1aXNpdGUuIGNsb3NlczogIzgwMTExCisgICogc3UgdG8gcm9vdCBzZWVtcyBwcmV0dHkgcXVpY2sgdG8gbWUsIGNsb3NlczogIzY0NzU2CisgICogeG1hbGxvYy5jOiByZW1vdmUgZGVjbGVyYXRpb24gb2YgbWFsbG9jLCB3aGljaCB3YXMgY2F1c2luZyBzeXN0ZW0KKyAgKiBoZWFkZXIgY29uZmxpY3RzLiBjbG9zZXM6ICM4MDM5OAorCisgLS0gQmVuIENvbGxpbnMgPGJjb2xsaW5zQGRlYmlhbi5vcmc+ICBTdW4sIDMxIERlYyAyMDAwIDE0OjMzOjQ3IC0wNTAwCisKK3NoYWRvdyAoMjAwMDA5MDItMSkgdW5zdGFibGUgZnJvemVuOyB1cmdlbmN5PWxvdworCisgICogTmV3IHVwc3RyZWFtIHJlbGVhc2UsIGxvdHMgb2YgRGViaWFuIHBhdGNoZXMgbWVyZ2VkLCBjbG9zZXM6ICM3MjczNQorICAqIG1hbi9wYXNzd2QuMTogcmVtb3ZlZCByZWZlcmVuY2UgdG8gcGFzc3dkKDMpLCBjbG9zZXM6ICM3MjcwNAorICAqIG1hbi9jaHNoLjEsbWFuL2NoZm4uMTogZG9jdW1lbnQgbG9naW4uZGVmcyBhZmZlY3RzIG9uIHRoZXNlIHByb2dyYW1zLAorICAgIGNsb3NlczogIzY4MDI5CisgICogbm90IGEgYnVnLCBleHBlY3RlZCBiZWhhdmlvciwgY2xvc2VzOiAjNzQxMzcKKyAgKiBJTU8sIHRoaXMgaXMgYSBidWcgaW4gdGhlIHVzZXIncyBzZXR1cCwgY2xvc2VzOiAjNjU2MDAKKyAgKiBzZWN1cmV0dHk6IGFkZCBkZXZmcyBjb25zb2xlIGRldmljZXMsIGNsb3NlczogIzcxOTQ2CisgICogbGlibWlzYy9zdWxvZy5jOiByZW1vdmVkIGFyYml0cmFyeSBsaW1pdCBvbiBudW1iZXIgb2YgY2hhcnMgcHJpbnRlZCBvZgorICAgIHRoZSB0dHkgbmFtZSAodHJ1bmNhdGVkIHRvIDYgY2hhcnMsIHdoaWNoIGlzIHNpbGx5KSwgY2xvc2VzOiAjNjU0MDQKKyAgKiB0ZXN0ZWQgdGhpcywgYW5kIGl0IHdvcmtzIGZpbmUgZm9yIG1lIHNvIGxvbmcgYXMgcGFtX3VuaXguc28gaXMgY2FsbGVkCisgICAgd2l0aCB0aGUgbnVsbG9rIG9wdGlvbiAod2hpY2ggaXQgaXNuJ3QgYnkgZGVmYXVsdCBiZWNhdXNlIG9mIHNlY3VyaXR5CisgICAgY29uY2VybnMpLCBjbG9zZXM6ICM3NTA2MworICAqIGFwcGVhcnMgdG8gYmUgZml4ZWQgYnkgUEFNLCBjbG9zZXM6ICM3MDYyNworICAqIHNyYy91c2VyYWRkLmM6IHVzZXIgbWtzdGVtcCBpbnN0ZWFkIG9mIG1rdGVtcCwgcGVyIGxpYmM2IGxpbmt0aW1lCisgICAgd2FybmluZworICAqIHNyYy9zdS5jOiBmaXh1cCBhcmcgaGFuZGxpbmcgcGFzc2VkIHRvIHNoZWxsLCBjbG9zZXM6ICM3NTMyNgorCisgLS0gQmVuIENvbGxpbnMgPGJjb2xsaW5zQGRlYmlhbi5vcmc+ICBNb24sIDIzIE9jdCAyMDAwIDEzOjIyOjI5IC0wNDAwCisKK3NoYWRvdyAoMTk5OTA4MjctMjEpIHVuc3RhYmxlIGZyb3plbjsgdXJnZW5jeT1sb3cKKworICAqIEFkZGVkIGJ1aWxkIGRlcHMKKyAgKiBVc2UgcHJlLWdlbmVyYXRlZCBmaWxlcyBmb3IgaHVyZC9saW51eCBjb250cm9sIGZpbGUuIFRoZSBvbGQgbWV0aG9kIG9mCisgICAgdXNpbmcgY3BwIHdvdWxkIGhhdmUgYnJva2VuIHdpdGggdGhlIG5ldyBnY2MuCisKKyAtLSBCZW4gQ29sbGlucyA8YmNvbGxpbnNAZGViaWFuLm9yZz4gIFdlZCwgMjYgSnVsIDIwMDAgMjE6MDQ6MDMgLTA0MDAKKworc2hhZG93ICgxOTk5MDgyNy0yMCkgdW5zdGFibGUgZnJvemVuOyB1cmdlbmN5PWxvdworCisgICogUmVsZWFzZSBNYW5hZ2VyCisgICAgTm9uZSBvZiB0aGVzZSBhcmUgbWFya2VkIGFzIFJDIGluIHRoZSBCVFMsIGhvd2V2ZXIsIHRoZXkgZG8gbWFrZSB0aGUKKyAgICBwYWNrYWdlIHVuc3VpdGFibGUgZm9yIHJlbGVhc2UuIFNpbmNlIHRoaXMgaXMgYW4gZXNzZW50aWFsIHBhY2thZ2UgKElPVywKKyAgICBpbnN0YWxsZWQgb24gZXZlcnkgRGViaWFuIHN5c3RlbSksIEkgaG9wZSB5b3UgY2FuIHNlZSBob3cgaW1wb3J0YW50IGl0CisgICAgaXMgdG8gbWFrZSBzdXJlIHRoaXMgcGFja2FnZSBpcyBwZXJmZWN0LiBOb25lIG9mIHRoZSBjaGFuZ2VzIGFyZQorICAgIGZ1bmN0aW9uYWwgKGV4Y2VwdCB0aGUgZml4IGluIGxvZ291dGQncyBpbml0IHNjcmlwdCwgd2hpY2ggd2FzIGEgMjAgY2hhcgorICAgIGNoYW5nZSksIHNvIHBsZWFzZSBjb25zaWRlciB0aGlzIGZvciB0aGUgbmV4dCB0ZXN0IGN5Y2xlLgorICAqIEZpeCBsb2dvdXRkIGluaXQgc2NyaXB0IGZyb20gc3B1cmlvdXMgb3V0cHV0IHdoZW4gL2V0Yy9wb3J0dGltZSBpcyBub3QKKyAgICB0aGVyZSwgY2xvc2VzOiAjNjM5NjIsICM2NDA2NworICAqIHN1OiBGaXggdHlwbyBpbiB1c2FnZSBvdXRwdXQsIGNsb3NlczogIzYwMjI2CisgICogcGFzc3dkOiBGaXhlZCB0eXBvIGFuZCBtaXNzaW5nIG5ld2xpbmUgaW4gb3V0cHV0IGZvciBzdWNjZXNzZnVsIHBhc3N3b3JkCisgICAgY2hhbmdlLCBjbG9zZXM6ICM2NDEwNiwgIzYzNzAzCisgICogcGFzc3dkLjE6IEFkZCBkb2N1bWVudGF0aW9uIG9uIHRoZSAtZiwgLWUsIC1zIGFuZCAtZCBjb21tYW5kIGxpbmUKKyAgICBvcHRpb25zLCBjbG9zZXM6ICM2NDMzOSwgIzY0NDEwCisgICogbG9naW46IFZlcmlmaWVkIHRoYXQgdXRtcC93dG1wIHdvcmtzIHdoZW4gY2FsbGVkIGJ5IHRlbG5ldCB3aXRoIC1oCisgICAgb3B0aW9uLCBjbG9zZXM6ICM1Njg1NAorCisgLS0gQmVuIENvbGxpbnMgPGJjb2xsaW5zQGRlYmlhbi5vcmc+ICBUdWUsIDIzIE1heSAyMDAwIDE0OjQwOjAxIC0wNDAwCisKK3NoYWRvdyAoMTk5OTA4MjctMTkpIHVuc3RhYmxlIGZyb3plbjsgdXJnZW5jeT1sb3cKKworICAqIGRlYmlhbi9sb2NhbC9zaGVsbHM6IGFkZGVkIGVzaCwgY2xvc2VzOiAjNTk5MzQKKyAgKiBsb2dvdXRkOiBtb2RpZnkgdG8gd29yayB3aXRoIHBhbV90aW1lLnNvJ3MgdGltZS5jb25mIGZpbGUsIG1vZGlmeQorICAgIG1hbnBhZ2UgdG8gcmVmbGVjdCB0aGlzLCBjbG9zZXM6ICM2MTMwMAorICAqIHVzZXJkZWwuODogYWRkZWQgbm90ZSBhYm91dCBncm91cCByZW1vdmFsLCBjbG9zZXM6ICM1NjcyMworICAqIGJhc2UtY29uZmlnIGhhbmRsZXMgbWQ1IHNldHVwLCBjbG9zZXM6ICM2MDEyNQorICAqIGNwcHc6IG1ha2Ugc3VyZSBpdCBnZXRzIGluc3RhbGxlZCwgY2xvc2VzOiAjNjI5NjAKKyAgKiBwYXNzd2Q6IGNvcnJlY3QgZXJyb3IgbWVzc2FnZSBmb3IgIm5vdCB5b3UiLCBjbG9zZXM6ICM2MTMxMworICAqIHN1bG9nLmM6IGZpeGVkIGV4dGVybiBmb3IgY2hhciAoY2hhciBmb29bXSAtPiBjaGFyICpmb28pLCBjbG9zZXM6ICM2MTY0MworICAqIHVzZXJkZWwuODogZG9jdW1lbnRlZCB1c2VyZGVsJ3MgZXhpdCB2YWx1ZXMsIGNsb3NlczogIzU0Nzc1CisgICogcGFzc3dkOiBlcnJvciBtZXNzYWdlcyBhcmUgdHdvIGZvbGQsIHRoZSBzZWNvbmQgaXMgYWN0dWFsbHkgZnJvbQorICAgIHBhbV9zdHJlcnJvcigpLCBjbG9zZXM6ICM2MTkzNworICAqIHBhc3N3ZDogcHJpbnQgInN1Y2Nlc3MiIG9uIHN1Y2Nlc3NmdWwgcGFzc3dvcmQgY2hhbmdlLCBjbG9zZXM6ICM1ODY3NgorCisgLS0gQmVuIENvbGxpbnMgPGJjb2xsaW5zQGRlYmlhbi5vcmc+ICBTYXQsIDI5IEFwciAyMDAwIDEwOjI2OjU2IC0wNDAwCisKK3NoYWRvdyAoMTk5OTA4MjctMTgpIHVuc3RhYmxlIGZyb3plbjsgdXJnZW5jeT1sb3cKKworICAqIENyYXAsIGFsbCB0aGUgYnVnIGZpeGVzIGZyb20gLTE3IG5lZWQgdG8gZ28gdG8gZnJvemVuIHRvbworCisgLS0gQmVuIENvbGxpbnMgPGJjb2xsaW5zQGRlYmlhbi5vcmc+ICBUdWUsIDI5IEZlYiAyMDAwIDE0OjU3OjE0IC0wNTAwCisKK3NoYWRvdyAoMTk5OTA4MjctMTcpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogRml4ZWQgdHlwbyBpbiBsb2dpbi5kZWZzLCBjbG9zZXM6ICM1NDg3NworICAqIGxvZ291dGQuaW5pdC5kOiBDaGVjayBmb3IgL2V0Yy9zZWN1cml0eS90aW1lLmNvbmYsIGNsb3NlczogIzU0OTAwCisgICogbG9naW4uZGVmczogQWRkZWQgbm90ZSBhYm91dCB0aGUgTUFJTCBlbnYgb3B0aW9uLCBjbG9zZXM6ICM1NDc2OAorICAqIGxvZ2luLnBhbS5kLHBhc3N3ZC5wYW0uZDogVXNlIG5ldyBvcHRpb25zIGluIHBhbV91bml4LnNvIHRvIGVuYWJsZQorICAgIG9ic3VyZSBwYXNzd29yZCBjaGVja3MuIFRoaXMgbWltaWNzIHRoZSBvbGQgYmVoYXZpb3IgaW4gcHJlLVBBTQorICAgIHNoYWRvdywgY2xvc2VzOiAjNTgyMDMKKyAgKiBVc2UgcGF0Y2ggZnJvbSBUb3BpIE1pZXR0aW5lbiA8dG9tQHBsdXRvLm5pYy5maT4gdG8gYWRkIHBhbSBzZXNzaW9uCisgICAgYWJpbGl0eSB0byBzdSwgY2xvc2VzOiAjNTc1MjYsICM1NTg3MywgIzU3NTMyCisgICogTWFkZSBsb2dpbidzIC1mIG9wdGlvbiBhbHNvIGFibGUgdG8gdXNlIHRoZSB1c2VybmFtZSBhZnRlciAtLSBpZiBub25lCisgICAgd2FzIHBhc3NlZCBhcyBpdCdzIG9wdGFyZywgY2xvc2VzOiAjNTM3MDIKKworIC0tIEJlbiBDb2xsaW5zIDxiY29sbGluc0BkZWJpYW4ub3JnPiAgTW9uLCAyOCBGZWIgMjAwMCAxMjozNzoyMiAtMDUwMAorCitzaGFkb3cgKDE5OTkwODI3LTE2KSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIGdvdCByaWQgb2YgZytzIGRpcmVjdG9yaWVzIGluIHRoZSBzb3VyY2UgdGFyYmFsbCwgY2xvc2VzOiAjNTQ1ODUKKyAgKiBtYWtlIHN1IG1vZGUgNDc1NSBpbiB0aGUgcGFja2FnZS4gVGhpcyB3YXkgdGhlcmUgaXMgbm8gY2hhbmNlIG9mIGEKKyAgICBmYWlsZWQgZHBrZyBpbnN0YWxsIGNhdXNpbmcgaXQgdG8gYmUgbGVmdCB3aXRob3V0IHN1aWQgcm9vdCBwZXJtcworICAgIGJlZm9yZSBzdWlkbWFuYWdlciBvciBjaG1vZCBpcyBjYWxsZWQgaW4gdGhlIHBvc3RpbnN0LgorICAqIHNyYy9sb2dpbi5jOiBhZGRlZCBmYWlsbG9nIHN1cHBvcnQgdG8gdGhlIHBhbV9hdXRoZW50aWNhdGUgbG9vcC4gVGhpcworICAgIGxvb3AgaXMgbm93IGNvbXBsZXRlbHkgcmV3cml0dGVuLCBhbmQgc2hvdWxkIHByb2R1Y2UgYmV0dGVyIHJlc3VsdHMgb24KKyAgICBmYWlsdXJlcywgY2xvc2VzOiAjNTMxNjQKKworIC0tIEJlbiBDb2xsaW5zIDxiY29sbGluc0BkZWJpYW4ub3JnPiAgU3VuLCAgOSBKYW4gMjAwMCAyMzozNTowOCAtMDUwMAorCitzaGFkb3cgKDE5OTkwODI3LTE1KSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIHNyYy9zdS5jOiBtb3ZlZCBzaWduYWwoKSBjYWxsIHRvIHJlLWVzdGFibGlzaCBTSUdJTlQgdG8gcmlnaHQgcGxhY2UsCisgICAgY2xvc2VzOiAjNTQ0OTYKKyAgKiBzcmMvbG9naW4uYzogaWYgaG9zdG5hbWUgaXMgYmxhbmsgKG5vdCBhIHJlbW90ZSBsb2dpbiB2aWEgcmxvZ2luIG9yCisgICAgdGVsbmV0KSwgdGhlbiB1c2UgdGhlIHR0eSB0byBsb2cgZmFpbHVyZXMgaW4gc3lzbG9nLCBjbG9zZXM6ICM1Mzk2NgorICAqIHBhc3N3ZDogTG9ja2luZyBhIHBhc3N3b3JkIGJ5IGFwcGVuZGluZyAnIScgYXBwZWFycyB0byBiZSBwcmV0dHkKKyAgICBzdGFuZGFyZCwgc28gc3NoIG5lZWRzIHRvIGNoZWNrIGZvciBpdC4KKyAgKiBwYXNzd2QgYW5kIGxvZ2luIGNvbWUgd2l0aCBhIFJFQURNRS5wYW0gdGhhdCBkaXNjdXNzZXMgdGhlIGRpZmZlcmVuY2VzCisgICAgYmV0d2VlbiB0aGUgUEFNIGFuZCBvbGQgbm9uLVBBTSB2ZXJzaW9ucy4gSXQgYWxzbyB0YWxrcyBhYm91dCB3aGVyZSB0bworICAgIGxvb2sgZm9yIGRldGFpbHMuIEFsc28gbm93IHRoYXQgSSBoYXZlIGFkZGVkIHRoZSBleHRyYSBleGFtcGxlcyB0byB0aGUKKyAgICBwYW0uZCBmaWxlcywgSSBob3BlIHRoaXMgc2F0aXNmaWVzLi4uY2xvc2VzOiAjNTI5MTcKKyAgKiBBIG5ldyBwYWNrYWdlLCBiYXNlLWNvbmZpZywgd2hpY2ggd2lsbCBiZSB1c2VkIGJ5IGJvb3QgZmxvcHBpZXMgaXMKKyAgICBnb2luZyB0byBoYXZlIGFuIG9wdGlvbiB0byBjb25maWd1cmUgTUQ1IHVzYWdlIGZvciBwYXNzd29yZHMuIFNpbmNlCisgICAgdGhpcyBpcyB0aGUgYmVzdCBwbGFjZSBmb3IgaXQsIGFuZCBJIGRvbid0IHJlYWxseSBoYXZlIGFueSBjb250cm9sCisgICAgb3ZlciBpdCwgSSBhbSAuLi4uIGNsb3NlczogIzQ3NjIwCisgICogbGlibWlzYy9jaG93bnR0eS5jOiBhcHBsaWVkIHBhdGNoIGZvciByZWFkLW9ubHkgcm9vdCwgY2xvc2VzOiAjNTIwNjkKKworIC0tIEJlbiBDb2xsaW5zIDxiY29sbGluc0BkZWJpYW4ub3JnPiAgU2F0LCAgOCBKYW4gMjAwMCAyMjoxMToyOSAtMDUwMAorCitzaGFkb3cgKDE5OTkwODI3LTE0KSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIGRlYmlhbi9sb2NhbC9zaGVsbHM6IGFkZGVkIC9iaW4venNoLCBjbG9zZXM6ICM1Mzg4MworCisgLS0gQmVuIENvbGxpbnMgPGJjb2xsaW5zQGRlYmlhbi5vcmc+ICBTdW4sICAyIEphbiAyMDAwIDEzOjUxOjQyIC0wNTAwCisKK3NoYWRvdyAoMTk5OTA4MjctMTMpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogc3UuYzogaWdub3JlIFNJR0lOVCB3aGlsZSBhdXRoZW50aWNhdGluZywgY2xvc2VzOiAjNTIzNzIKKyAgKiBzdS5wYW0uZDogYWRkZWQgMiBuZXcgZXhhbXBsZXMgb2YgaG93IHRvIGFsbG93IHN1IGZvciB3aGVlbCB1c2VycworICAgIHdpdGhvdXQgcHJvbXB0aW5nIGZvciBhIHBhc3N3b3JkLCBhbmQgYWxzbyBob3cgdG8gZGVueSB1c2VycyBvZiBhCisgICAgc3BlY2lmaWMgZ3JvdXAuCisKKyAtLSBCZW4gQ29sbGlucyA8YmNvbGxpbnNAZGViaWFuLm9yZz4gIFNhdCwgIDEgSmFuIDIwMDAgMjI6Mjk6NDYgLTA1MDAKKworc2hhZG93ICgxOTk5MDgyNy0xMikgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBSZWNvbXBpbGVkIGFnYWluc3QgbGF0ZXN0IGxpYnBhbSBhbmQgdXAnZCB0aGUgbW9kdWxlIGRlcHMsCisgICAgY2xvc2VzOiAjNTIxNzEKKyAgKiBsb2dpbi5wYW0uZDogYWRkZWQgIm5vZW52IiBvcHRpb24gc28gd2UgZG9uJ3QgY2xvYmJlciBsb2dpbidzIHNldHRpbmcsCisgICAgY2xvc2VzOiAjNTE0NDEKKworIC0tIEJlbiBDb2xsaW5zIDxiY29sbGluc0BkZWJpYW4ub3JnPiAgVHVlLCAxNCBEZWMgMTk5OSAyMjo0MTo0MCAtMDUwMAorCitzaGFkb3cgKDE5OTkwODI3LTExKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIGRlYmlhbi9wYXNzd2QuaW46IGFkZCBhIHByZWluc3QgKG1hdGNoZXMgbG9naW4ncykgdG8gZml4IHRoZSBsYXRlc3QKKyAgICBidWlsZCBjaGFuZ2UgKG9ubHkgYWZmZWN0ZWQgaHVyZCBzaW5jZSBpdCBkb2Vzbid0IHVzZSBsb2dpbikuCisgICogZGViaWFuL3NjcmlwdHMvcGFzc3dkLm1rOiB1c2UgcGFzc3dkLnByZWluc3QgaW5zdGVhZCBvZiBsb2dpbi5wcmVpbnN0CisgICAgdG8gY29tcGxldGUgdGhlIGZpeCBhYm92ZS4KKworIC0tIEJlbiBDb2xsaW5zIDxiY29sbGluc0BkZWJpYW4ub3JnPiAgTW9uLCAgNiBEZWMgMTk5OSAxODoyNTowNyAtMDUwMAorCitzaGFkb3cgKDE5OTkwODI3LTEwKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIHNyYy9sb2dpbi5jOiBvbmx5IHNldCBwYW1fZmFpbF9kZWxheSBpZiA+IDAuIEFsc28gbWFrZSB0aGUgZGVmYXVsdCAwCisgICAgc28gbm90IGRlZmluaW5nIGl0IGhhcyB0aGUgc2FtZSBhZmZlY3QgYXMgZGlzYWJsaW5nIGl0LCBjbG9zZXM6ICM1MTE3OAorICAqIHNyYy91c2VyZGVsLmM6IG1ha2Ugc3VyZSB3ZSByZW1vdmUgdGhlIHNoYWRvdyBncm91cCBlbnRyaWVzIHdoZW4KKyAgICByZW1vdmluZyB0aGUgdXNlcnMgb3duIGdyb3VwLCBjbG9zZXM6ICM1MDAwNSwgIzUwMTM4CisKKyAtLSBCZW4gQ29sbGlucyA8YmNvbGxpbnNAZGViaWFuLm9yZz4gIEZyaSwgMjYgTm92IDE5OTkgMjI6Mzc6NDQgLTA1MDAKKworc2hhZG93ICgxOTk5MDgyNy05KSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIHNyYy9zdS5jOiBGaXhlZCBnZXRvcHQgcGFyc2luZywgYW5kIGFkZGVkIGEgdXNhZ2Ugb3V0cHV0CisgICogbWFuL3N1LjE6IG1pbm9yIHR5cG9zCisKKyAtLSBCZW4gQ29sbGlucyA8YmNvbGxpbnNAZGViaWFuLm9yZz4gIE1vbiwgIDggTm92IDE5OTkgMjI6MTM6MDUgLTA1MDAKKworc2hhZG93ICgxOTk5MDgyNy04KSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIHNyYy9sb2dpbi5jOiBmaXhlZCBsb2dnaW4gb2YgdXNlcm5hbWUgb24gc3VjY2Vzc2Z1bCBsb2dpbiAod2FzIHVzaW5nCisgICAgdGhlIG5vcm1hbCB1c2VybmFtZSwgd2hlbiBpdCBzaG91bGQgaGF2ZSB1c2VkIHBhbV91c2VyKSwKKyAgICBjbG9zZXM6ICM0NzgxOQorICAqIHNyYy9sb2dpbi5jOiBjaGVjayBmb3IgaHVzaGVkIGxvZ2luIGFuZCBwYXNzIFBBTV9TSUxFTlQgaWYgdHJ1ZSwKKyAgICBjbG9zZXM6ICM0ODAwMgorICAqIHNyYy91c2VyYWRkLmM6IHNldCBkZWZfc2hlbGwgdG8gL2Jpbi9iYXNoLCBjbG9zZXM6ICM0ODMwNAorICAqIGRvYy9SRUFETUUuZGViaWFuOiBhZGQgbm90ZSBhYm91dCBob3cgdG8gYXZvaWQgaXNzdWVzIHdpdGggbnNjZCdzCisgICAgbGFnIGluIGFnaW5nIHRoZSBjYWNoZSwgY2xvc2VzOiAjNDg2MjkKKyAgKiBzcmMvY3Bwdy5jOiBuZXcgcHJvZ3JhbSB0byBhc3Npc3QgY29weWluZyBhIHBhc3N3ZC9ncm91cCBmaWxlIHdpdGhvdXQKKyAgICBjb3JydXB0aW9uLCBjbG9zZXM6ICM0MjE0MQorCisgLS0gQmVuIENvbGxpbnMgPGJjb2xsaW5zQGRlYmlhbi5vcmc+ICBUdWUsICAyIE5vdiAxOTk5IDIxOjQ2OjI4IC0wNTAwCisKK3NoYWRvdyAoMTk5OTA4MjctNykgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiB7cGFzc3dkLGxvZ2lufS5wYW0uZDogYWRkZWQgYmx1cmIgYWJvdXQgaG93IHRvIHVzZSB0aGUgcGFtX2NyYWNrbGliCisgICAgbW9kdWxlLCBhbmQgYWxzbyBjaGFuZ2VkIGl0IHRvIHVzZSBwYW1fdW5peCBhbmQgbm90IHBhbV9wd2RiIChnYWghCisgICAgaG93IGRpZCB0aGF0IGhhcHBlbj8pLCBjbG9zZXM6ICM0Njk4MworICAqIFJFQURNRS5kZWJpYW46IGNoYW5nZXMgdG8gcmVmbGVjdCBuZXcgUEFNIHVzYWdlIGFzIHdlbGwgYXMgcmVtb3ZpbmcKKyAgICByZWZlcmVuY2VzIHRvIG9ic29sZXRlIGNvbmZpZyBmaWxlcywgY2xvc2VzOiAjNDY1OTUKKyAgKiBwYXNzd2QuZXhwaXJlLmNyb246IGV4YW1wbGUgc2NyaXB0IHRoYXQgaW5mb3JtcyB1c2VycyBieSBlbWFpbCB3aGVuCisgICAgdGhlaXIgYWNjb3VudHMgYXJlIGFib3V0IHRvIGV4cGlyZSwgY2xvc2VzOiAjNDEzOTMKKyAgKiBsYXN0bG9naW4uYzogYWRkZWQgLWggb3B0aW9uIGFuZCB1c2FnZSBhcyB3ZWxsIGFzIGxvbmcgb3B0aW9uIHN1cHBvcnQsCisgICAgY2xvc2VzOiAjNDU4MDQKKyAgKiBzaGFkb3cgbm93IG9ubHkgaGFzIDMgd2lzaGxpc3QgYnVncyBhbmQgbm90aGluZyBlbHNlCisKKyAtLSBCZW4gQ29sbGlucyA8YmNvbGxpbnNAZGViaWFuLm9yZz4gIFNhdCwgIDkgT2N0IDE5OTkgMTE6NTQ6MTYgLTA0MDAKKworc2hhZG93ICgxOTk5MDgyNy02KSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIGRlYmlhbi9zaGVsbHM6IG5ldyBmaWxlLCBuZWVkZWQgdG8gaW5jbHVkZSAvYmluL3Nhc2gsIGNsb3NlczogIzQ1ODI2CisgICogdXNlcmFkZC44LGdyb3VwYWRkLjg6IGFkZGVkIG5vdGUgYWJvdXQgdGhlIHByZWZlcnJlZCB1c2Ugb2YgYWRkdXNlcgorICAgIGFuZCBhZGRncm91cCB3aGVuIGNvbmZvcm1pbmcgdG8gRGViaWFuIHBvbGljeSAodGFrZW4gZnJvbSBub3RlcyBpbgorICAgIGFkZHVzZXIncyBtYW4gcGFnZXMpLCBjbG9zZXM6ICMyMjgyMQorICAqIGRpYWx1cHMuNTogbmV3IG1hbiBwYWdlIHRoYXQgZG9jdW1lbnRzIC9ldGMve2RpYWx1cHMsZF9wYXNzd2R9LAorICAgIGNsb3NlczogIzQyMjEyCisgICogc3JjL3N1LmM6IGFkZGVkIC1tLCAtcCBhbmQgLXMgY29tbWFuZCBsaW5lIG9wdGlvbnMgdG8gbWF0Y2ggR05VIG9wdGlvbnMsCisgICAgYWxzbyBkb2N1bWVudGVkIGluIHN1KDEpLCBjbG9zZXM6ICM0NTM5NCwgIzQ2NDI0CisgICogbG9naW4uZGVmcy41OiBjbGFyaWZpZWQgdXNhZ2Ugb2YgVFRZVFlQRV9GSUxFLCBjbG9zZXM6ICMyMzE5NAorICAqIGxvZ2luLnBhbS5kOiBhZGRlZCBwYW1faXNzdWUuc28gd2hpY2ggcmVwbGFjZXMgdGhlIG9sZCBJU1NVRV9GSUxFIGZyb20KKyAgICBsb2dpbi5kZWZzLCB0aGlzIGFsc28gYWxsb3dzIGl0IHRvIGdyb2sgZXNjYXBlcyBpbiB0aGUgaXNzdWUgZmlsZSwKKyAgICBhbHNvIGluY3JlYXNlcyB0aGUgTU9EREVQUyB0byAoPj0gMC42OS0xMCkuIEJ5IGRlZmF1bHQgdGhpcyBtb2R1bGUgaXMKKyAgICBub3QgZW5hYmxlZCwgY2xvc2VzOiAjMjEwNDQKKyAgKiBsb2dpbi5kZWZzLnBhbS5saW51eDogYWRkZWQgSVNTVUVfRklMRSB0byBsaXN0IG9mIGRlcHJlY2F0ZWQgb3B0aW9ucworCisgLS0gQmVuIENvbGxpbnMgPGJjb2xsaW5zQGRlYmlhbi5vcmc+ICBNb24sICA0IE9jdCAxOTk5IDE5OjU2OjIyIC0wNDAwCisKK3NoYWRvdyAoMTk5OTA4MjctNSkgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiB7bG9naW4sc3V9LjE6IGFkZGVkIGRlc2NyaXB0aW9uIG9mIGEgc3Vic3lzdGVtIGxvZ2luLCBjbG9zZXM6ICMzMTk4NworICAqIHNyYy9jaG93bmRpci5jOiBmaXhlZCByZWN1cnNpdmUgY2hvd24ncyBvbiB1c2VybW9kLCBhbHNvIGNoYW5nZWQgaXQKKyAgICB0byB1c2UgbGNob3duIGFuZCBsc3RhdCBzaW5jZSB3ZSBhY3R1YWxseSB3YW50IHRoYXQsIGNsb3NlczogIzQ2NDA1CisgICogc3UuMTogcmVtb3ZlZCByZWZlcmVuY2UgdG8gc3VhdXRoIGFzIHdlbGwgYXMgYWRkZWQgIi1jIiB0byB0aGUgU1lOT1BTSVMsCisgICAgY2xvc2VzOiAjNDU2ODUKKyAgKiBsb2dpbi4xOiBhZGRlZCBvcHRpb25zIHRvIHRoZSBTWU5PUFNJUyBhbmQgZG9jdW1lbnRlZCBPUFRJT05TLAorICAgIGNsb3NlczogIzI4NzYzCisgICogbG9naW4uZGVmcy41OiBkb2N1bWVudGVkIHRoZSBFTlZJUk9OX0ZJTEUgb3B0aW9ucyAoZXZlbiB0aG91Z2ggaXQncworICAgIG5vdCByZWFsbHkgdXNlZCBpbiB0aGUgUEFNIHZlcnNpb24pLCBjbG9zZTogIzI4Nzg2CisgICogMDEwX3NyY19ncGFzc3dkLmM6IG5ldyBwYXRjaCwgZml4ZXMgY2hhbmdpbmcgZ3JvdXAgcGFzc3dvcmRzIHdoZW4gbm90CisgICAgdXNpbmcgc2hhZG93IGdyb3VwcywgY2xvc2VzOiAjMjU5MTkKKyAgKiB7Y2hmbixjaHNoLGxvZ2lufS5wYW0uZDogYWRkZWQgbnVsbG9rIHRvIHBhbV91bml4LnNvIGF1dGggbGluZSB0bworICAgIGFsbG93IGZvciBwYXNzd29yZGxlc3MgYWNjb3VudHMsIGNsb3NlczogIzQ2NTEwCisgICogbG9naW4ucGFtLmQ6IGFkZCAic3RhbmRhcmQiIHRvIHRoZSBwYW1fbWFpbCBvcHRpb24gc28gd2UgZ2V0IG9sZAorICAgIHN0eWxlICJZb3UgaGF2ZS4uLiIgbG9naW4gbWVzc2FnZXMuCisKKyAtLSBCZW4gQ29sbGlucyA8YmNvbGxpbnNAZGViaWFuLm9yZz4gIFN1biwgIDMgT2N0IDE5OTkgMTM6NDE6NTMgLTA0MDAKKworc2hhZG93ICgxOTk5MDgyNy00KSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIEFscmlnaHQsIHdlIGFyZSByZWFsbHkgZ2V0dGluZyBzb21lIHVzYWdlIGZyb20gdGhpcyBub3csIGFuZCBzZWVpbmcKKyAgICBzb21lIG9kZCBiYWxsIHNldHVwcywgc28gaXQgbWVhbnMgbW9yZSB3b3JrIGZvciBtZSwgYnV0IG1vcmUgc3RhYmxlCisgICAgYW5kIGZlYXR1cmUgZmlsbGVkIHNvZnR3YXJlIGZvciB5b3UgOikKKyAgKiBkZWJpYW4ve2xvZ2luLHN1fS5wYW0uZDogRml4ZWQgc3BlbGxpbmcgZXJyb3JzLCBjbG9zZXM6ICM0NTIzNCwgIzQ1MjM1CisgICogZGViaWFuL2xvZ2luLnBhbS5kOiBBZGRlZCBjb21tZW50ZWQgcGFtX2FjY2Vzcy5zbyByZWZlcmVuY2UgYW5kCisgICAgZGVzY3JpcHRpb24sIGNsb3NlczogIzQ1MjQxCisgICogc3JjL2xvZ2luLmM6IG1vdmVkIHVzYWdlIG9mIHNldHVwX3VpZF9naWQoKSB3aGVuIFBBTSBpcyBlbmFibGVkIG9yCisgICAgcGFtX2dyb3Vwcy5zbydzIGdyb3VwcyBnZXQgY2xvYmJlcmVkCisgICogc3JjL25ld2dycC5jOiBkb24ndCBjYWxsIHNhbml0aXplX2VudigpIGFuZCBhbHNvIG1ha2Ugc3VyZSB3ZSBkb24ndAorICAgIGNoZWNrIHBhc3N3b3JkcyB3aGVuIHRoZSB1c2VyIGlzIHRyeWluZyB0byBnZXQgYmFjayB0byB0aGVpciBkZWZhdWx0CisgICAgZ3JvdXAsIGNsb3NlczogIzIyMjQ0CisgICogQ2xvc2VkIHNvbWUgb3RoZXIgYnVncyB0aGF0IHdlcmUgZWl0aGVyIG5vdCByZWFsbHkgYnVncywgb3IgdGhleSB3ZXJlbid0CisgICAgcmVwcm9kdWNpYmxlLgorICAqIGRlYmlhbi9sb2dpbi5wYW0uZDogbW92ZWQgYXJvdW5kIHRoZSBwYW1fbW90ZCBhbmQgcGFtX21haWwgbW9kdWxlcyB0bworICAgIG9yZGVyIHRoZW0gdGhlIHNhbWUgYXMgb2xkIGxvZ2luIHdvdWxkIGhhdmUgZG9uZQorCisgLS0gQmVuIENvbGxpbnMgPGJjb2xsaW5zQGRlYmlhbi5vcmc+ICBTdW4sIDE5IFNlcCAxOTk5IDE5OjQyOjEzIC0wNDAwCisKK3NoYWRvdyAoMTk5OTA4MjctMykgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBUaGlzIGlzIGEgIlNpdCBkb3duIGFuZCByZWFsbHkgZml4IHNvbWUgYnVncyIgdXBkYXRlLiBJJ20gZ29pbmcgdGhyb3VnaAorICAgIHRoZSBvbmVzIHRoYXQgcmVhbGx5IG5lZWQgc29tZSB3b3JrLgorICAqIHNyYy92aXB3LmM6IHVzZSB0aGUgc3lzdGVtKCkgY2FsbCB0byBpbnZva2UgdGhlIGVkaXRvciBzbyB0aGF0IGl0IGFjY2VwdHMKKyAgICBjb21tYW5kIGxpbmUgYXJncyBpbiB0aGUgRURJVE9SIGFuZCBWSVNVQUwgZW52aXJvbm1lbnQgdmFycywgY2xvc2VzOiAjMzEwMjkKKyAgKiBzcmMvdXNlcmRlbC5jOiBhZGRlZCBjb2RlIHRvIHJlbW92ZSB1c2VyIGdyb3VwcyAob2YgdGhlIHNhbWUgbmFtZSkgaWYgdGhlcmUKKyAgICB3ZXJlIG5vIG1lbWJlcnMgbGVmdCBhbmQgVVNFUkdST1VQU19FTkFCIGlzIHNldCB0byB5ZXMsIGNsb3NlczogIzM1MDQ2CisgICogbG9naW4uZGVmczogZG9jdW1lbnRlZCBhYm92ZSBjaGFuZ2UKKyAgKiB7bG9naW4scGFzc3dkfS5wb3N0aW5zdDogZml4ZWQgc29tZSBiYXNoaXNtcywgY2xvc2VzOiAjNDUxNTkKKyAgKiBsb2dpbi5kZWZzLnBhbS5saW51eDogZG9jdW1lbnRlZCB0aGUgRkFLRV9TSEVMTCBvcHRpb24sIGNsb3NlczogMzE5ODcKKyAgKiBzdS4xLGxvZ2luLjE6IGRvY3VtZW50ZWQgdGhlIHN1YnN5c3RlbSByb290IGFiaWxpdHkgaW4gbG9naW4gYW5kIHN1LCBjbG9zZXM6IAorICAqIGRvYyBkaXJlY3RvcnkgZm9yIGJvdGggcGFja2FnZXMgbm93IGluY2x1ZGVzIHRoZSBSRUFETUUuc2hhZG93LXBhcGVyIGZpbGUKKyAgICBjbG9zZXM6ICMxNTM5MQorCisgLS0gQmVuIENvbGxpbnMgPGJjb2xsaW5zQGRlYmlhbi5vcmc+ICBTdW4sIDE5IFNlcCAxOTk5IDE1OjQ5OjExIC0wNDAwCisKK3NoYWRvdyAoMTk5OTA4MjctMikgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBkZWJpYW4vcnVsZXM6IHVzZSAiJChDQykgLUUiIGluc3RlYWQgb2YgImNwcCIgdG8gbWFrZSBpdCBlYXNpZXIgdG8KKyAgICBjcm9zcyBjb21waWxlIGZvciBIdXJkIChyZXF1ZXN0ZWQgYnkgTWFyY3VzIEJyaW5rbWFuKS4KKyAgKiBkZWJpYW4vbG9naW4ucGFtLmQ6IGZvcmdvdCB0byByZW1vdmUgdGhhdCBjb21tZW50IGFib3V0IGxvZ2luIG5vdAorICAgIGJlaW5nIFBBTWlmaWVkLCBpdCBpcyBhbmQgd29ya3MgZmluZS4KKyAgKiBzcmMvbG9naW4uYzogQWRkZWQgbG9naW4uZGVmcyBvcHRpb24gdG8gdHVybiBvbiBhbmQgb2ZmIHRoZSBwZXJzaXN0ZW50CisgICAgbG9naW4sIGFsc28gZ2l2ZSBub3RlIG9uIHdoZW4gaXQgaXNuJ3QgYW5kIGlzIG5lZWRlZCBpbiBsb2dpbi5kZWZzLgorICAqIGxpYi9nZXRkZWYuYzogQWRkZWQgQ0xPU0VfU0VTU0lPTlMgZm9yIGFib3ZlIGNvZGUuCisgICogbWFuL2xvZ2luLmRlZnMuNTogZG9jdW1lbnQgdGhlIG5ldyBDTE9TRV9TRVNTSU9OIG9wdGlvbiBmb3IgbG9naW4KKyAgKiBsb2dvdXRkOiBkaXNhYmxlZCB1bnRpbCBJIGNhbiBmaXggaXQgdG8gZ3JvayAvZXRjL3NlY3VyaXR5L3RpbWUuY29uZgorCisgLS0gQmVuIENvbGxpbnMgPGJjb2xsaW5zQGRlYmlhbi5vcmc+ICBNb24sIDEzIFNlcCAxOTk5IDE4OjU3OjQ3IC0wNDAwCisKK3NoYWRvdyAoMTk5OTA4MjctMSkgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBOZXcgTWFpbnRhaW5lciwgd2l0aCBHdXkncyBjb25zZW50LgorICAgIGNsb3NlczogIzIyMjk2LCAjMjIzMzEgKGNsb3NlZCBzb21lIE5NVSBidWcgcmVwb3J0cykKKyAgKiBOZXcgdXBzdHJlYW0gcmVsZWFzZSwgY2xvc2VzOiAjMTU4NzksICMyNDcxMiwgIzI1NzM5LCAjMjg3ODUsICMzMjk5MQorICAgIGNsb3NlczogIzM4NjcyLCAjMzk5MzMsICM0MTA2MCwgIzQyNDgwLCAjMjI1MzQsICMxMjY5MCwgIzM2MTUwLCAjMjY0MTIKKyAgICBjbG9zZXM6ICM0MDM5OCwgIzQzNzUwCisgICogT2ssIG5vdyBmb3Igc29tZSBkdXN0aW5nIGFuZCBob3VzZSBjbGVhbmluZyAoYWthIFRoZSBCdWcgS2lsbGZpbGUKKyAgICBCZWdpbnMgSGVyZSk6CisgICUlLSBsb2dpbiBwYWNrYWdlCisgICAgLSBOb3QgYSBidWcgaW4gbG9naW4gYW55bW9yZSwgY2xvc2VzOiAjMjgwOTgKKyAgICAtIE5vIGxvbmdlciBwZXJ0aW5lbnQsIGFuZCBpcyBub3QgY29udHJvbGxlZCBieSB0aGUgbG9naW4gcHJvZ3JhbSwKKyAgICAgIGNsb3NlczogIzIzMTU1CisgICAgLSBUaGlzIGRvZXMgbm90IGFwcGVhciB0byBiZSBhIGJ1ZyBhbnltb3JlLCBjbG9zZXM6ICMzMjQyNAorICAgIC0gVGhpcyBpcyBub3QgYSBsb2dpbiBwcm9ibGVtLiBYdGVybSBpdHNlbGYgcHJpbnRzIHRoZSBMT0dJTiBtZXNzYWdlCisgICAgICBhbmQgaXQgZG9lcyBfbm90XyByZWFkIGxvZ2luLmFjY2VzcywgY2xvc2VzOiAjMTY5NTgKKyAgICAtIFNlZW1zIHRvIGJlIGZpeGVkLCBjbG9zZXM6ICMyODA5OAorICAgIC0gSHVnZSBsaXN0IG9mICJGaXhlZCIgYnVncywgdGhhdCBJIHdhbnQgdG8gY2xvc2UuIEkgcmVhbGx5IG5lZWQgdG8KKyAgICAgIHN0YXJ0IHdpdGggYSBjbGVhbiBzbGF0ZSBpbiBvcmRlciB0byBnZXQgc29tZSBvZiB0aGlzIGNsZWFuZWQgdXAsCisgICAgICBjbG9zZXM6ICMzNDM5LCAjMTE0NDMsICMxMzQ4NSwgIzEzODE1LCAjMTUxNzYsICMxNTk5OCwgIzE2MTg3LCAjMTc1MjkKKyAgICAgIGNsb3NlczogIzE3NTMyLCAjMTc1MzIsICMxODEzMywgIzE4MjI1LCAjMjAwNTIsICMyMDg3NiwgIzIxMjgwLCAjMjEzNTcKKyAgICAgIGNsb3NlczogIzIxNjg3LCAjMjE2OTUsICMyMTc0NiwgIzIxNzY3LCAjMjI3MTYsICMyNDcxMAorICAgIC0gbGFzdGxvZyg4KTogQ2xhcmlmaWVkIGRpZmZlcmVuY2VzIGluIHRoZSB1c2FnZSBvZiAibG9naW4tbmFtZSIgYW5kCisgICAgICBVSUQsIGNsb3NlczogIzI2NzI3CisgICUlLSBwYXNzd2QgcGFja2FnZQorICAgIC0gbmV3dXNlcjogYXBwZWFycyB0byBiZSB3b3JraW5nIGNvcnJlY3RseSBhbmQgcGxhY2luZyB4LCBub3QgISwKKyAgICAgIGNsb3NlczogIzE5NjIwCisgICAgLSB1c2VyZGVsKDgpOiBhZGRlZCBub3RlIGFib3V0IHVzZXIncyBtYWlsIHNwb29sIGFsc28gYmVpbmcgZGVsZXRlZCwKKyAgICAgIGNsb3NlczogIzIwNzkwCisgICAgLSBDYW4ndCByZXByb2R1Y2UgdGhpcyBvbmUsIGNsb3NlczogIzIxNjM5CisgICAgLSAgLWUgZXhwaXJlX2RhdGUKKyAgICAgICAgICBUaGUgIGRhdGUgIG9uICB3aGljaCAgdGhlIHVzZXIgYWNjb3VudCB3aWxsIGJlIGRpcy0KKyAgICAgICAgICBhYmxlZC4gICBUaGUgIGRhdGUgIGlzICBzcGVjaWZpZWQgIGluICB0aGUgICBmb3JtYXQKKyAgICAgICAgICBNTS9ERC9ZWS4KKyAgICAgIEJ1ZyBmaWxlciB3YXMgdHJ5aW5nIHRvIHVzZSBhbiBpbnRlZ2VyIGluc3RlYWQgb2YgdGhlIGRvY3VtZW50ZWQKKyAgICAgIGZvcm1hdCwgY2xvc2VzOiAjMjI1MzMKKyAgICAtIGNoZm4ncyBjb21tYW5kIGxpbmUgb3B0aW9ucyBzZWVtIHRvIHdvcmsgZm9yIHJvb3QgYW5kIG5vbi1yb290LAorICAgICAgY2xvc2VzOiAjMjUzOTYKKyAgICAtIHNlZW1zIHRvIGhhdmUgYmVlbiBmaXhlZCBieSB0aGUgbGF0ZXN0IHVwc3RyZWFtLCAjMjU2NzAKKyAgICAtIFJlbW92ZWQgcmVmZXJlbmNlcyB0byBzaGFkb3coMyksIGNsb3NlczogIzMyODU5CisgICAgLSBwYXNzd2Qgb25seSBzYXZlcyBmaXJzdCA4IGNoYXJzLi4uZHVoIDopIGNsb3NlczogIzMzMzY4CisgICAgLSB1c2VyZGVsIGNhbiBvbmx5IGRvIHNvIG11Y2gsIHRoZSBhZG1pbiBzaG91bGQga25vdyB0byBjaGVjayBzb21lCisgICAgICB0aGluZ3Mgb24gdGhlaXIgb3duLCBjbG9zZXM6ICMzNTQxOAorICAgIC0gTG90J3Mgb2YgWTJLIGlzc3VlcyBmaXhlZCBpbiB0aGlzIHJlbGVhc2UsIGNsb3NlczogIzM3MjMyCisgICAgLSB1c2VyYWRkIHJlcXVpcmVzIHRoZSAtbSBvcHRpb24gdG8gbWFrZSBpdCBjcmVhdGUgYSBob21lIGRpcmVjdG9yeQorICAgICAgaWYgb25lIGRvZXMgbm90IGV4aXN0LCBjbG9zZXM6ICMzOTU4MQorICAgIC0gdXNlcmFkZCdzIC1wIG9wdGlvbiByZXF1aXJlcyB0aGUgcGFzc3dvcmQgdG8gYWxyZWFkeSBiZSBlbmNyeXB0ZWQKKyAgICAgIGFzIGRvY3VtZW50ZWQgaW4gdXNlcmFkZCg4KSwgY2xvc2VzOiAjMzk4NzAsICMzOTg3NAorICAgIC0gTW9yZSAiRml4ZWQiIGJ1Z3MgaW4gcGFzc3dkLCBjbG9zZXM6ICMxMzc1MywgIzE2ODkzLCAjMTc4OTQsICMxODEzMgorICAgICAgY2xvc2VzOiAjMTg2MjgsICMxMjY5MQorICAlJS0gc3UgKG5vIGxvbmdlciBhIHBhY2thZ2UsIGJ1dCBoYXMgYnVncyBqdXN0IHRoZSBzYW1lLCB3aWxsIGJlCisgICAgICBmb3J3YXJkZWQgdG8gdGhlIGxvZ2luIHBhY2thZ2Ugc29vbikKKyAgICAtIFNvcnJ5LCBidXQgc3UgKGFsbCBzdSdzKSBpbnZva2UgdGhlIHNoZWxsIHdpdGggLWMgImNtZCIuIFRoaXMgaXMKKyAgICAgIGRvY3VtZW50ZWQsIG5vdCBhIGJ1ZywgaXQncyBhIHN0YW5kYXJkIGludGVyZmFjZSB0aGF0IHN1IGV4cGVjdHMsCisgICAgICBnbyBmaXggc2FzaCdzIGJ1ZyBmb3Igbm90IHN1cHBvcnRpbmcgaXQsIGNsb3NlczogIzE0NTUxCisgICAgLSBBY2tub2xlZGdlZCBOTVU6IGNsb3NlczogIzIwMDU4CisgICAgLSBNb3JlICJGaXhlZCIgYnVncyBnZXR0aW5nIGNsb3NlZC4uLkNMT1NFRCBBVCBMQVNULCBjbG9zZXM6ICMxNzU5MworICAgICAgY2xvc2VzOiAjMjAwNTcsICMxMjY4OQorICAqIFN3aXRjaGVkIHRvIGEgbmV3IGJ1aWxkIHNldHVwIChkYnMpCisgICogU3BsaXQgbWFrZXMgaW50byBzZXBhcmF0ZSBmaWxlcyB0byBtYWtlIGl0IGEgbGl0dGxlIGNsZWFuZXIKKyAgKiBGSFMgY29tcGxpYW5jZSBjaGFuZ2VzICh1c3Ive2RvYyxtYW59IHRvIHVzci9zaGFyZS97ZG9jLG1hbn0pCisgICogZGViaWFuL3Rhci5jOiByZW1vdmVkCisgICogc3U6IHN1IGlzIG5vdyBnb2luZyB0byBiZSBwcm92aWRlZCBieSBzaGFkb3cncyBsb2dpbiBwYWNrYWdlIGFuZAorICAgIHJlbW92ZWQgZnJvbSBzaGVsbHV0aWxzICh0aGUgc2hlbGx1dGlscyBtYWludGFpbmVyIGFncmVlZCB0byB0aGlzKQorICAgIGluIHByZXBhcmF0aW9uIGZvciBmdXR1cmUgUEFNIHN1cHBvcnQuIEFkZGVkIGNvbmZsaWN0cyB3aXRoIG9sZGVyCisgICAgdmVyc2lvbiBvZiBzaGVsbHV0aWxzIHRoYXQgZG9lcyBwcm92aWRlIHRoZSBzdSBiaW5hcnkuCisgICogZGViaWFuL2NvbnRyb2wuaW46IHJlbW92ZWQgdGhlIHNlY3VyZS1zdSBwYWNrYWdlIHNpbmNlIGxvZ2luIG5vdworICAgIGNvbnRhaW5zIHN1IGFuZCBhbGwgb2YgaXQncyBjb21wb25lbnRzCisgICogZGViaWFuL2NvbnRyb2wuaW46IG1vZGlmaWVkIHRoZSBwYWNrYWdlIGRlc2NyaXB0aW9ucyB0byBiZSBhIGxpdHRsZQorICAgIG1vcmUgZXhwbGljYXRpdmUgb2Ygd2hhdCB0aGV5IGRvLgorICAqIFVwZ3JhZGVkIHN0YW5kYXJkcyB2ZXJzaW9uIHRvIDMuMC4xLjEKKyAgKiBTZXR1cCBzdWlkbWFuYWdlciBzdXBwb3J0IGZvciBhbGwgK3MgYXBwcywgY2xvc2VzOiAjMTU3MDUsICMxNTcwNCwgIzE1Njk5CisgICogRW5hYmxlZCBQQU0uIFN1cHBvcnQgbm93IGZvciBzdSwgcGFzc3dkLCBjaGZuLCBjaHNoLiBJIGFtIHdvcmtpbmcgb24gdGhlCisgICAgc3VwcG9ydCBpbiBsb2dpbi4KKyAgKiBleHBpcnk6IENoYW5nZWQgdG8gYmUgaW5zdGFsbGVkIGFzIHNnaWQgc2hhZG93IGluc3RlYWQgb2Ygc3VpZCByb290CisgICAgc2luY2UgaXQgZG9lc24ndCBuZWVkIHJvb3QgcHJpdmlsZWdlcy4gQWxzbyBhZGRlZCBtYW4gcGFnZSBleHBpcnkoMSkgYmFzZWQKKyAgICBvbiB0aGUgY29tbWVudHMgZm91bmQgaW4gZXhwaXJ5LmMuCisgICogUmVtb3ZlZCBiYXNoaXNtJ3MgaW4gY29udHJvbCBzY3JpcHRzLiBOb3cgbGludGlhbiBjbGVhbiAoc21lbGxzIGZyZXNoIHRvbykKKyAgKiBjaGFnZS5jOiBLZWVwIGNoYWdlIGZyb20gbG9ja2luZyB3aGVuIG5vdCBydW5uaW5nIGFzIHJvb3QsIHNpbmNlIGl0IGp1c3QKKyAgICBuZWVkcyB0byByZWFkIHRoZSBzaGFkb3cgYW5kIHBhc3N3b3JkIGZpbGVzLiBUaGlzIGxldCdzIGl0IHJ1biBzZ2lkIHNoYWRvdworICAgIGluc3RlYWQgb2Ygc3VpZCByb290LiBXaGVuIHJ1biBhcyByb290LCBpdCBjYW4gbG9jayBmaWxlcyBmb3IgZWRpdGluZy4KKyAgKiBsb2dpbi5jOiBQYW0gc3VwcG9ydCBXb3JrcyBGb3IgTWUodG0pIQorICAqIGxvZ2luLmM6IEZpeGVkIFBBTSdzIGF1dGggd2hlbiBQQU1fVVNFUiB3YXMgbm90IHNldCBmcm9tIHRoZSBjb21tYW5kIGxpbmUsCisgICAgYWxzbyBjYWxsIHBhbV9mYWlsX2RlbGF5KCkgd2l0aCBGQUlMX0RFTEFZIGFzIHRoZSBhcmcgYmVmb3JlIGF1dGhlbnRpY2F0aW9uLgorICAqIGV0Yy9sb2dpbi5kZWZzLnBhbS5saW51eDogbmV3IGZpbGUsIHJlZmxlY3RzIG9wdGlvbnMgdGhhdCBQQU0gdGFrZXNvdmVyCisgICogZXRjL2xvZ2luLmRlZnMucGFtLmh1cmQ6IG5ldyBmaWxlLCBzYW1lIGZvciBIdXJkCisgICogZGViaWFuL3Bhc3N3ZC5tazogbWFrZSBzdXJlIHRoYXQgbG9naW4uZGVmcy41IGdldCdzIGluc3RhbGxlZCBmb3IgSHVyZAorICAqIHBhbS5kLzogTW9kaWZpZWQgZGVmYXVsdHMgZm9yIGVhY2ggc2VydmljZSB0byByZWZsZWN0IHRoZSBvbGQgc3R5bGUgYW5kIGFsc28KKyAgICBhZGRlZCBjb21tZW50ZWQgb3B0aW9ucyBvbiBob3cgdG8gZW5hYmxlIG9ic29sZXRlZCBvcHRpb25zIGZyb20gbG9naW4uZGVmcworICAgIGluIHRoZSBQQU0gV2F5KHRtKS4KKyAgKiBkZWJpYW4vcnVsZXM6IHJlbW92ZWQgLS1kaXNhYmxlLWRlc3JwYyBmcm9tIGNvbmZpZ3VyZSBvcHRpb25zIHNpbmNlIGl0IHdhcworICAgIHN1cHBvc2VkbHkganVzdCBhIHdvcmthcm91bmQgZm9yIGdsaWJjIDIuMAorICAqIHNyYy9sb2dpbi5jOiByZXNldCBwYW1fZmFpbF9kZWxheSBhZnRlciBldmVyeSBmYWlsdXJlCisgICogZGViaWFuL3J1bGVzOiByZW1vdmUgZGViaWFuL2ZpbGVzIG9uIGNsZWFuIHRhcmdldAorICAqIHNyYy9sb2dpbi5jOiByZW1vdmVkIHNldHVwX2xpbWl0cygpIGFuZCBjaGVja19ub2xvZ2luKCkgdXNhZ2Ugd2hlbiBQQU0gaXMKKyAgICBlbmFibGVkCisgICogZGViaWFuL2xvZ2luLnBhbS5kLGRlYmlhbi9sb2dpbi5kZWZzLnBhbS5saW51eDogbWFkZSBub3RlcyBhYm91dCB0aGUgcGFtX2xpbWl0cy5zbworICAgIG1vZHVsZSwgYXMgd2VsbCBhcyBwYW1fbm9sb2dpbi5zbworICAqIGRlYmlhbi9zdS5wYW0uZDogbWFkZSBub3RlcyBhYm91dCBwYW1fbGltaXRzLnNvIG1vZHVsZQorICAqIGRlYmlhbi9jb250cm9sLmluOiByZW1vdmVkIGRlcGVuZHMgb24gbGlicGFtLW1vdGQgc2luY2UgaXQgaXMgbm93IGluIGxpYnBhbS1tb2R1bGVzLAorICAgIGFsc28gbWFrZSBsb2dpbiBjb25mbGljdCB3aXRoIHNlY3VyZS1zdQorICAqIGRlYmlhbi8qOiBzZXR1cCBzbyB0aGF0IEh1cmQgZG9lcyBub3QgZ2V0IFBBTSwgc2luY2UgdGhleSBkb24ndCBoYXZlIGl0IHBvcnRlZAorICAgIGNvbXBsZXRlbHkgeWV0LgorICAqIGRlYmlhbi8qOiBGaW5hbCBhcHByb2FjaCB0byBhIGZpbmFsIHVwbG9hZCwgbW9kaWZpZWQgbG9naW4ucG9zdGluc3QgdG8gY2hlY2sgb2xkCisgICAgb2Jzb2xldGUgY29uZmZpbGVzIHRvIHNlZSBpZiB0aGUgdXNlciBuZWVkcyBhIG5vdGljZSB0aGF0IHRoZXkgYXJlIG5vIGxvbmdlciB1c2VkLgorCisgLS0gQmVuIENvbGxpbnMgPGJjb2xsaW5zQGRlYmlhbi5vcmc+ICBTYXQsIDExIFNlcCAxOTk5IDE5OjU4OjE0IC0wNDAwCisKK3NoYWRvdyAoOTgwNDAzLTAuMy4zKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIE5vbiBtYWludGFpbmVyIHVwbG9hZC4KKyAgKiBBZGQgZHBrZy1hcmNoaXRlY3R1cmUgYW5kIGNyb3NzIGNvbXBpbGF0aW9uIHN1cHBvcnQgdG8gdGhlIHBhY2thZ2UuCisgICogQ2hhbmdlcyBmb3IgdGhlIEh1cmQ6CisgICAgKyBPbmx5IGJ1aWxkIHBhc3N3ZCwgYWRkIGV0Yy9sb2dpbi5kZWZzLmh1cmQgdG8gdGhpcyBwYWNrYWdlLgorICAgICsgbGlibWlzYy9ybG9naW4uYzogQ29uZGl0aW9uYWxpemUgQ0JBVUQsIHdoaWNoIGlzIG5vdCBwb3J0YWJsZS4KKworIC0tIE1hcmN1cyBCcmlua21hbm4gPGJyaW5rbWRAZGViaWFuLm9yZz4gIFRodSwgIDUgQXVnIDE5OTkgMDA6Mjg6MTIgKzAyMDAKKworc2hhZG93ICg5ODA0MDMtMC4zLjIpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogY29uZmlndXJlLmluIHBhdGNoZWQgZm9yIHV0bXB4LmggKGZvciBhcm0pCisgIAorIC0tIEppbSBQaWNrIDxqaW1AamltcGljay5jb20+ICBTdW4sICA0IE9jdCAxOTk4IDE5OjA2OjE1IC0wNzAwCisKK3NoYWRvdyAoOTgwNDAzLTAuMy4xKSBmcm96ZW4gdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBOb24gbWFpbnRhaW5lciB1cGxvYWQuCisgICAgY2hhbmdlcy57Z3Vlc3Msc3VifSBjaGFuZ2VkIHRvIHJlY29nbml6ZSBhIEFybSBhcmNoaXRlY3R1cmUuCisKKyAtLSBUdXJibyBGcmVkcmlrc3NvbiA8dHVyYm9AZGViaWFuLm9yZz4gIEZyaSwgMTQgQXVnIDE5OTggMjI6Mzc6NTggLTA0MDAKKworc2hhZG93ICg5ODA0MDMtMC4zKSBmcm96ZW4gdW5zdGFibGU7IHVyZ2VuY3k9aGlnaAorCisgICogTm9uIG1haW50YWluZXIgdXBsb2FkLgorICAqIHNyYy9sb2dpbi5jOiBBcHBsaWVkIHBhdGNoIGZyb20gPG1hcmVrbUBpMTdsaW51eGIuaXN0cy5wd3Iud3JvYy5wbD4gdG8KKyAgICBmaXggc2VjdXJpdHkgaG9sZSBvZiBsb2dpbiBub3QgY2hlY2tpbmcgdGhlIHJldHVybiBjb2RlIGZyb20gc2V0Z2lkKCksCisgICAgaW5pdGdyb3VwcygpIG9yIHNldHVpZCgpLiBbIzI0NzEwXQorCisgLS0gSmFtZXMgVHJvdXAgPGphbWVzQG5vY3Jldy5vcmc+ICBGcmksIDE3IEp1bCAxOTk4IDE4OjU2OjMxICswMTAwCisKK3NoYWRvdyAoOTgwNDAzLTAuMikgZnJvemVuIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogKGxvZ2luLmRlZnMpOiBmaXhlZCBVTUFTSworICAgICh0aGFua3MgdG8gSmFtZXMgVHJvdXAgZm9yIG5vdGljaW5nIG15IHNjcmV3dXAgOikKKyAgKiBQcnVuZWQgbm9uLURlYmlhbiBjaGFuZ2Vsb2cgZW50cmllcy4KKworIC0tIEpvZWwgS2xlY2tlciA8amtAZXNweS5vcmc+ICBNb24sIDExIE1heSAxOTk4IDExOjI1OjIyIC0wNzAwCisKK3NoYWRvdyAoOTgwNDAzLTAuMSkgZnJvemVuIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworICAKKyAgKiBOb24tbWFpbnRhaW5lciByZWxlYXNlLgorICAqIE5ldyB1cHN0cmVhbSByZWxlYXNlICgxODIyNSkuCisgICogKGRlYmlhbi9sb2dpbi5wb3N0aW5zdCkKKyAgICAqIFVzZSAndG91Y2gnIGluc3RlYWQgb2YgJ2NhdCA+JyB3aGVuIGNyZWF0aW5nIC92YXIvbG9nL2ZhaWxsb2cKKyAgICAgICgxNTk5OCwxNjE4NywyMTY4NykuCisgICAgKiBObyBsb25nZXIgZmFpbHMgaWYgbm8gcHJldmlvdXMgY29uZmlndXJlZCB2ZXJzaW9uIGV4aXN0cyAoMTE0MzMpLgorICAqIChncGFzc3dkKTogbm93IGNoZWNrcyB3aGljaCB1c2VyIGludm9rZWQgaXQgYmVmb3JlIGNhbGxpbmcgc2V0dWlkKCkgKDE4MTMyKS4KKyAgKiAoZGViaWFuL3Bhc3N3ZC5wb3N0aW5zdCk6IHJlbW92ZWQgYmFzaGlzbSAoMTM3NTMpLgorICAqIChncm91cG1vZCk6IE5VTEwgZGVyZWZlcmVuY2UgZml4ZWQgdXBzdHJlYW0sIGFzIGEgcmVzdWx0LCBpdCBubyBsb25nZXIKKyAgICBkdW1wcyBjb3JlIHdoZW4gY2hhbmdpbmcgZ3JvdXAgbmFtZSAoMTY4OTMsMTc4OTQpLgorICAqICh1c2VyYWRkKTogbm8gbG9uZ2VyIHNlZ2ZhdWx0cyBpZiAvZXRjL2RlZmF1bHQvdXNlcmFkZCBpcyBtaXNzaW5nICgxODYyOCkuCisgICogKGxvZ2luLmRlZnMuMSk6IG5vdyBkb2N1bWVudHMgbW9yZSBvcHRpb25zICgxMzQ4NSkuCisgICogKHNvdXJjZSk6IGluY2x1ZGVzICdtaXNzaW5nJyAoMTM4MTUsMTgxMzMsMjEyODApLgorICAqIChsb2dpbi4xKToKKyAgICAqIFJlbW92ZWQgbWVudGlvbiBvZiAiZF9wYXNzd2QoNSkiLCB3aGljaCBkb2Vzbid0IGV4aXN0LAorICAgICAgYW5kIGxvZ2luLmRlZnMuNSBub3cgZG9jdW1lbnRzIC9ldGMvZGlhbHVwcyAoMTUxNzYpLgorICAgICogQWRkZWQgL2V0Yy9ub2xvZ2luIHRvIEZJTEVTIHNlY3Rpb24gYW5kIHJlZmVyZW5jZSBub2xvZ2luKDUpICgyMTY5NSkuCisgICogVGhlIFVSTCBtZW50aW9uZWQgaW4gQnVnIzE1MzkxIGlzIG5vIGxvbmdlciB2YWxpZC4KKyAgKiAobG9naW4uZGVmcyk6IG5vIGxvbmdlciBzZXRzIFVMSU1JVCAoMTc1MjkpLgorICAqIChsb2dpbik6CisgICAgKiBObyBsb25nZXIgdXNlcyBzdGF0aWMgYnVmZmVycyBmb3IgZ3JvdXAgbGluZXMgKDE3NTMyKS4KKyAgICAqIERvZXNuJ3Qgc2VlbSB0byBtYWtlIGFzc3VtcHRpb25zIGFib3V0IGdpZF90IGFueSBsb25nZXIgKDIxNzY3KS4KKyAgKiAoZmFpbGxvZy44KTogcy0vdXNyL2FkbS0vdmFyL2xvZy1nICgxOTk3NCkuCisgICogKGxhc3Rsb2cuOCk6IG5vdGVzIHRoYXQgInNvbWUgc3lzdGVtcyIgdXNlIC92YXIvbG9nIGluc3RlYWQgb2YKKyAgICAvdXNyL2FkbSAoMjE3NDYpLgorICAqIEluc3RhbGwgdXBzdHJlYW0gY2hhbmdlbG9nIGFzICdjaGFuZ2Vsb2cuZ3onIGFzIHBlciBwb2xpY3kgKDIwMDUyKS4KKyAgKiAoc2VjdXJlLXN1KTogQ2hhbmdlZCAvZXRjL3N1YXV0aCB0byByZWZlcmVuY2UgdGhlIGdyb3VwICdyb290JworICAgIGluc3RlYWQgb2YgJ3doZWVsJyAoMTc1OTMpLgorICAKKyAtLSBKb2VsIEtsZWNrZXIgPGprQGVzcHkub3JnPiAgVGh1LCAzMCBBcHIgMTk5OCAxODozMjoxMiAtMDcwMAorCitzaGFkb3cgKDk3MDYxNi0xKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIFVwc3RyZWFtIHVwZ3JhZGUuCisgICogY2hhZ2Ugd29ya3MgKDEwNTYxKS4KKyAgKiBGaXggTklTIGJlaGF2aW9yICg1NjM0LDg3MzQsMTAwMzIsMTA1NDUsMTA5ODQsMTExNjAsMTIwNjQpLgorICAqIFdyb3RlIHB3Y29udixwd3VuY29udixncnBjb252LGdycHVuY29udiBtYW5wYWdlICgxMDk0MCkuCisgICogdmlwdyBmaXhlcyAoMTA1MjEsMTA2OTYsMTE2MTgsMTE5MjQsMTIxODQsMTMwMDEpCisgICogRml4ZXMgZm9yIG5ldyBhdXRvbWFrZS4KKyAgKiBDb21waWxlIHdpdGggZ2xpYmMyLiAoODYyNyw4Nzc3LDk4MjQsMTE3MTMsMTE3MTksMTIwODIsMTIxMDgsMTE0NDIpLgorICAqIGRlYmlhbi9ydWxlcyBmaXhlcyAoODg3NiwxMjQ2OCkuCisgICogL2V0Yy9sb2dpbi5kZWZzOiBVTUFTSz0wMDIgKDkxMDIpLgorICAqIGNob3duIC9kZXYvdmNzKiBvbiBsb2dpbiAoOTQyMSwxMzI1NSkuCisgICogQWRkZWQgdHR5OS10dHkxMiB0byAvZXRjL3NlY3VyZXR0eSAoMTE2NDQpLgorICAqIFByb3ZpZGUgdGVtcGxhdGUgYW5kIG1hbnBhZ2UgZm9yIC9ldGMvbGltaXRzICgxMjI4OSkuCisgICogRml4IHNlY3VyaXR5IGhvbGUgaW4gcG9zdGluc3QgKDExNzY5KS4KKyAgKiBsb2dpbiBmaWxscyBvdXQgdXRfYWRkciBmaWVsZCBpbiB1dG1wICgxMDcwMSkuCisgICogc2hhZG93Y29uZmlnLnNoIGZpeGVzICg5MTg5LDkzMjgsOTM4NiwxMDk2OCwxMjQ1MiwxMjQ2OSkuCisgICogT3ZlcmNvbWUgcG9zdGluc3QgYnVnIGluIG9sZCBzaGFkb3ctcGFzc3dkIHBhY2thZ2UgKDk5MzksMTIxMjApLgorICAqIHVzZXJhZGQgZGVmYXVsdCBHUk9VUD0xMDAgKDkyNDQpLgorICAqIEFsbG93IDggYml0IGNoYXJzIGluIGNoZm4gKDEyMzY3KS4KKyAgKiBzZWN1cmUtc3UgLSBzZXQgSE9NRSwgdXNlIFNIRUxMIGlmIHNldCAoMTEwMDMsMTExODkpLgorCisgLS0gR3V5IE1hb3IgPG1hb3JAZWNlLnV0ZXhhcy5lZHU+ICBGcmksIDI2IFNlcCAxOTk3IDE5OjIzOjQyIC0wNTAwCisKK3NoYWRvdyAoOTcwNjE2KSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIHZpcHcgcHJlc2VydmVzIHBlcm1pc3Npb25zIG9uIGVkaXRlZCBmaWxlcyAoMTA1MjEpLgorICAqIHZhcmlvdXMgb3RoZXIgYnVnIGZpeGVzLgorCisgLS0gTWFyZWsgTWljaGFsa2lld2ljeiA8bWFyZWttQHBpYXN0LnQxOS5kcy5wd3Iud3JvYy5wbD4gIE1vbiwgMTYgSnVuIDE5OTcgMDI6MDI6MDAgKzAyMDAKKworc2hhZG93ICg5NzA2MDEpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogRml4IHR5cG8gaW4gbGlibWlzYy9tYWlsLmMgY2F1c2luZyBsb2dpbiB0byBzZWdmYXVsdC4KKworIC0tIE1hcmVrIE1pY2hhbGtpZXdpY3ogPG1hcmVrbUBwaWFzdC50MTkuZHMucHdyLndyb2MucGw+ICBNb24sICAyIEp1biAxOTk3IDA3OjMzOjAwICswMjAwCisKK3NoYWRvdyAoOTcwNTAyLTIpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogRml4ZXMgdG8gc2hhZG93IGdyb3VwIHN1cHBvcnQgKGdycGNvbnYgZGlkbid0IHdvcmspLgorCisgLS0gTWFyZWsgTWljaGFsa2lld2ljeiA8bWFyZWttQHBpYXN0LnQxOS5kcy5wd3Iud3JvYy5wbD4gIEZyaSwgIDIgTWF5IDE5OTcgMTU6NDg6MDAgKzAyMDAKKworc2hhZG93ICg5NzA1MDItMSkgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBVcHN0cmVhbSB1cGdyYWRlLgorCisgLS0gTWFyZWsgTWljaGFsa2lld2ljeiA8bWFyZWttQHBpYXN0LnQxOS5kcy5wd3Iud3JvYy5wbD4gIEZyaSwgIDIgTWF5IDE5OTcgMDM6MTg6MDAgKzAyMDAKKworc2hhZG93ICg5NjEwMjUtMikgZnJvemVuIHVuc3RhYmxlOyB1cmdlbmN5PW1lZGl1bQorCisgICogRml4IHVzZXJhZGQgLUQgc2VnZmF1bHQgKDgwOTgsIDgxNTIsIDg3MzMpLgorICAqIEZpeCBzaGFkb3djb25maWcgLSBwZXJtZml4IG9ubHkgb24geGxvY2s7IC9ldGMvaW5pdC5kL3hkbSByZXdyaXRlLCBjaG1vZAorICAgICg4MTAyLCA4MzIwLCA4MzMzLCA4NzA4KS4KKyAgKiBSZW1vdmUgSE9XVE8gZnJvbSB1c3IvZG9jL3Bhc3N3ZCBhcyBpdCdzIGluIGxpbnV4LWRvYyAoODE1MCkuCisgICogRml4ZXMgdG8gc3UuMSAoODE1MykuCisgICogbG9naW4sIHBhc3N3ZCwgc3UgZWFjaCBjb25mbGljdCBhbmQgcmVwbGFjZSB3aXRoIHRoZSBvbGQgc2hhZG93LSoKKyAgICB2ZXJzaW9uLiAoODI2OSwgODI5MCwgODM5MywgODM5NCkuCisgICogUHV0IC9ldGMvc2hlbGxzIGJhY2sgaW4gcGFzc3dkICg4MzI4KS4KKyAgKiBGaXhlZCBsb2dpbi5wb3N0aW5zdCBmb3IgdXBncmFkZSBmcm9tIHNoYWRvdy1sb2dpbiAoODM5MikuCisgICogQWRkZWQgLWUgdG8gcHdjayBmb3IgdXNlIGluIHNoYWRvd2NvbmZpZzogcmVwb3J0cyBvbmx5IGVycm9ycywgbm8KKyAgICB3YXJuaW5ncyAoODU0MikuCisgICogV3JvdGUgc2hhZG93Y29uZmlnLjggKDg1ODgpLgorCisgLS0gR3V5IE1hb3IgPG1hb3JAZWNlLnV0ZXhhcy5lZHU+ICBTYXQsIDE5IEFwciAxOTk3IDAyOjM0OjU5IC0wNTAwCisKK3NoYWRvdyAoOTYxMDI1LTEpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworICAKKyAgKiBVcHN0cmVhbSB1cGdyYWRlLCBuZXcgc291cmNlIGZvcm1hdC4KKworIC0tIEd1eSBNYW9yIDxtYW9yQGVjZS51dGV4YXMuZWR1PiAgTW9uLCAxMCBGZWIgMTk5NyAwMjo1Njo1NiAtMDYwMAorCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvdC82MDBfRHBrZ19DaGFuZ2Vsb2dfVWJ1bnR1LnQgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvdC82MDBfRHBrZ19DaGFuZ2Vsb2dfVWJ1bnR1LnQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTAzNGMyZQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90LzYwMF9EcGtnX0NoYW5nZWxvZ19VYnVudHUudApAQCAtMCwwICsxLDIxIEBACisjIC0qLSBwZXJsIC0qLQorIworIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorIworIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorIworIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKwordXNlIHN0cmljdDsKK3VzZSB3YXJuaW5nczsKKworJEVOVntERUJfVkVORE9SfSA9ICdVYnVudHUnOworbXkgJHNyY2RpciA9ICRFTlZ7c3JjZGlyfSB8fCAnLic7CitkbyAiJHNyY2Rpci90LzYwMF9EcGtnX0NoYW5nZWxvZy50IjsKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90LzcwMF9EcGtnX0NvbnRyb2wudCBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90LzcwMF9EcGtnX0NvbnRyb2wudApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mYmRjOTk3Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3QvNzAwX0Rwa2dfQ29udHJvbC50CkBAIC0wLDAgKzEsODggQEAKKyMgLSotIG1vZGU6IGNwZXJsOy0qLQorIworIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorIworIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorIworIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKwordXNlIFRlc3Q6Ok1vcmUgdGVzdHMgPT4gMTE7CisKK3VzZSBzdHJpY3Q7Cit1c2Ugd2FybmluZ3M7Cit1c2UgSU86OlN0cmluZzsKKwordXNlX29rKCdEcGtnOjpDb250cm9sOjpJbmZvJyk7CisKK215ICRzcmNkaXIgPSAkRU5We3NyY2Rpcn0gfHwgJy4nOworbXkgJGRhdGFkaXIgPSAkc3JjZGlyIC4gJy90LzcwMF9EcGtnX0NvbnRyb2wnOworCitteSAkYyA9IERwa2c6OkNvbnRyb2w6OkluZm8tPm5ldygiJGRhdGFkaXIvY29udHJvbC0xIik7CisKK215ICRpbyA9IElPOjpTdHJpbmctPm5ldygpOworJGMtPm91dHB1dCgkaW8pOworbXkgJHZhbHVlID0gJHskaW8tPnN0cmluZ19yZWYoKX07CitteSAkZXhwZWN0ZWQgPSAnU291cmNlOiBteXNvdXJjZQorTXktRmllbGQtT25lOiBteXZhbHVlMQorTXktRmllbGQtVHdvOiBteXZhbHVlMgorTG9uZy1GaWVsZDogbGluZTEKKyBsaW5lIDIgbGluZSAyIGxpbmUgMgorIC4KKyAgIGxpbmUgMyBsaW5lIDMgbGluZSAzCisgLi4KKyBsaW5lIDQKK0VtcHR5LUZpZWxkOiAKKworUGFja2FnZTogbXlwYWNrYWdlMQorQXJjaGl0ZWN0dXJlOiBhbnkKK0RlcGVuZHM6IGxpYmM2CisKK1BhY2thZ2U6IG15cGFja2FnZTIKK0FyY2hpdGVjdHVyZTogYWxsCitEZXBlbmRzOiBoZWxsbworCitQYWNrYWdlOiBteXBhY2thZ2UzCitBcmNoaXRlY3R1cmU6IGFsbAorRGVwZW5kczogaGVsbG8KK0Rlc2NyaXB0aW9uOiBzaG9ydCBvbmUKKyBsb25nIG9uZQorIHZlcnkgbG9uZyBvbmUKKyc7CitpcygkdmFsdWUsICRleHBlY3RlZCwgIkR1bXAgb2YgJGRhdGFkaXIvY29udHJvbC0xIik7CisKK215ICRzcmMgPSAkYy0+Z2V0X3NvdXJjZSgpOworaXMoJHNyYywgJGMtPlswXSwgImFycmF5IHJlcHJlc2VudGF0aW9uIG9mIERwa2c6OkNvbnRyb2w6OkluZm8gMS8yIik7Citpcygkc3JjLT57J215LWZpZWxkLW9uZSd9LCAnbXl2YWx1ZTEnLCAiQWNjZXNzIGZpZWxkIHRocm91Z2ggYmFkbHkgY2FwaXRhbGl6ZWQgZmllbGQgbmFtZSIpOworaXMoJHNyYy0+eydsb25nLWZpZWxkJ30sIAorJ2xpbmUxCitsaW5lIDIgbGluZSAyIGxpbmUgMgorCisgIGxpbmUgMyBsaW5lIDMgbGluZSAzCisuCitsaW5lIDQnLCAiR2V0IG11bHRpLWxpbmUgZmllbGQiKTsKK2lzKCRzcmMtPnsnRW1wdHktZmllbGQnfSwgIiIsICJHZXQgZW1wdHkgZmllbGQiKTsKKworbXkgJHBrZyA9ICRjLT5nZXRfcGtnX2J5X2lkeCgxKTsKK2lzKCRwa2csICRjLT5bMV0sICJhcnJheSByZXByZXNlbnRhdGlvbiBvZiBEcGtnOjpDb250cm9sOjpJbmZvIDIvMiIpOworaXMoJHBrZy0+e3BhY2thZ2V9LCAnbXlwYWNrYWdlMScsICdOYW1lIG9mIGZpcnN0IHBhY2thZ2UnKTsKKworJHBrZyA9ICRjLT5nZXRfcGtnX2J5X25hbWUoIm15cGFja2FnZTMiKTsKK2lzKCRwa2ctPntwYWNrYWdlfSwgJ215cGFja2FnZTMnLCAnTmFtZSBvZiB0aGlyZCBwYWNrYWdlJyk7CitpcygkcGtnLT57RGVwZW5kc30sICdoZWxsbycsICdOYW1lIG9mIHRoaXJkIHBhY2thZ2UnKTsKKworJHBrZyA9ICRjLT5nZXRfcGtnX2J5X2lkeCgyKTsKKyRpbyA9IElPOjpTdHJpbmctPm5ldygpOworJHBrZy0+b3V0cHV0KCRpbyk7CisKK2lzKCR7JGlvLT5zdHJpbmdfcmVmKCl9LAorJ1BhY2thZ2U6IG15cGFja2FnZTIKK0FyY2hpdGVjdHVyZTogYWxsCitEZXBlbmRzOiBoZWxsbworJywgIkR1bXAgb2Ygc2Vjb25kIGJpbmFyeSBwYWNrYWdlIG9mICRkYXRhZGlyL2NvbnRyb2wtMSIpOwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3QvNzAwX0Rwa2dfQ29udHJvbC9jb250cm9sLTEgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvdC83MDBfRHBrZ19Db250cm9sL2NvbnRyb2wtMQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44NWJkYmI1Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3QvNzAwX0Rwa2dfQ29udHJvbC9jb250cm9sLTEKQEAgLTAsMCArMSwyOCBAQAorU291cmNlOiBteXNvdXJjZQorIyBUaGlzIGlzIGEgY29tbWVudAorbXktZmllbGQtb25lOiBteXZhbHVlMQorbXktZmllbGQtdHdvOiBteXZhbHVlMgorbG9uZy1maWVsZDogbGluZTEKKyBsaW5lIDIgbGluZSAyIGxpbmUgMiAgICAKKyAuCisgICBsaW5lIDMgbGluZSAzIGxpbmUgMworIC4uCisgbGluZSA0CitlbXB0eS1maWVsZDogCisgICAgIAorIyBGaXJzdCBwYWNrYWdlCitQYWNrYWdlOiBteXBhY2thZ2UxCitBcmNoaXRlY3R1cmU6IGFueQorRGVwZW5kczogbGliYzYKKworIyBTZWNvbmQgcGFja2FnZQorUGFja2FnZTogbXlwYWNrYWdlMgorQXJjaGl0ZWN0dXJlOiBhbGwKK0RlcGVuZHM6IGhlbGxvCisKK1BhY2thZ2U6IG15cGFja2FnZTMKK0FyY2hpdGVjdHVyZTogYWxsCitEZXBlbmRzOmhlbGxvCitEZXNjcmlwdGlvbjogICBzaG9ydCBvbmUKKyBsb25nIG9uZQorIHZlcnkgbG9uZyBvbmUKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90Lzc1MF9EcGtnX1N1YnN0dmFycy50IGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3QvNzUwX0Rwa2dfU3Vic3R2YXJzLnQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZjdlMDNhNQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90Lzc1MF9EcGtnX1N1YnN0dmFycy50CkBAIC0wLDAgKzEsMTAzIEBACisjIC0qLSBtb2RlOiBjcGVybDstKi0KKyMKKyMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyMKKyMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisjIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisjIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyMKKyMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisKK3VzZSBUZXN0OjpNb3JlIHRlc3RzID0+IDI2OworCit1c2Ugc3RyaWN0OwordXNlIHdhcm5pbmdzOworCit1c2UgRHBrZyBxdygkdmVyc2lvbik7Cit1c2UgRHBrZzo6QXJjaCBxdyhnZXRfaG9zdF9hcmNoKTsKKwordXNlX29rKCdEcGtnOjpTdWJzdHZhcnMnKTsKKworbXkgJHNyY2RpciA9ICRFTlZ7c3JjZGlyfSB8fCAnLic7CitteSAkZGF0YWRpciA9ICRzcmNkaXIgLiAnL3QvNzUwX0Rwa2dfU3Vic3R2YXJzJzsKKworbXkgJHMgPSBEcGtnOjpTdWJzdHZhcnMtPm5ldygpOworCiskcy0+bG9hZCgiJGRhdGFkaXIvc3Vic3R2YXJzMSIpOworCisjIHNpbXBsZSB2YWx1ZSB0ZXN0cworaXMoJHMtPmdldCgndmFyMScpLCAnU29tZSB2YWx1ZScsICd2YXIxJyk7Citpcygkcy0+Z2V0KCd2YXIyJyksICdTb21lIG90aGVyIHZhbHVlJywgJ3ZhcjInKTsKK2lzKCRzLT5nZXQoJ3ZhcjMnKSwgJ1lldCBhbm90aGVyIHZhbHVlJywgJ3ZhcjMnKTsKK2lzKCRzLT5nZXQoJ3ZhcjQnKSwgdW5kZWYsICdubyB2YXI0Jyk7CisKKyMgb3ZlcnJpZGluZworJHMtPnNldCgndmFyMScsICdOZXcgdmFsdWUnKTsKK2lzKCRzLT5nZXQoJ3ZhcjEnKSwgJ05ldyB2YWx1ZScsJ3ZhcjEgdXBkYXRlZCcpOworCisjIGRlbGV0aW5nCiskcy0+ZGVsZXRlKCd2YXIzJyk7Citpcygkcy0+Z2V0KCd2YXIzJyksIHVuZGVmLCAndmFyMyBkZWxldGVkJyk7CisKKyMgZGVmYXVsdCB2YXJpYWJsZXMKK2lzKCRzLT5nZXQoJ05ld2xpbmUnKSwgIlxuIiwgJ25ld2xpbmUnKTsKK2lzKCRzLT5nZXQoJ1NwYWNlJyksICIgIiwgJ3NwYWNlJyk7Citpcygkcy0+Z2V0KCdUYWInKSwgIlx0IiwgJ3RhYicpOworaXMoJHMtPmdldCgnZHBrZzpWZXJzaW9uJyksICR2ZXJzaW9uLCAnZHBrZyB2ZXJzaW9uIDEnKTsKKworIyBzcGVjaWFsIHZhcmlhYmxlcworaXMoJHMtPmdldCgnQXJjaCcpLCB1bmRlZiwgJ25vIGFyY2gnKTsKKyRzLT5zZXRfYXJjaF9zdWJzdHZhcnMoKTsKK2lzKCRzLT5nZXQoJ0FyY2gnKSwgZ2V0X2hvc3RfYXJjaCgpLCdhcmNoJyk7CisKK2lzKCRzLT5nZXQoJF8pLCB1bmRlZiwgJ25vICcgLiAkXykgZm9yIHF3L2JpbmFyeTpWZXJzaW9uIHNvdXJjZTpWZXJzaW9uIHNvdXJjZTpVcHN0cmVhbS1WZXJzaW9uLzsKKyRzLT5zZXRfdmVyc2lvbl9zdWJzdHZhcnMoIjE6Mi4zLjR+NS02LjcuOH5ubXU5K2IwIik7Citpcygkcy0+Z2V0KCJiaW5hcnk6VmVyc2lvbiIpLCAiMToyLjMuNH41LTYuNy44fm5tdTkrYjAiLCAiYmluYXJ5OlZlcnNpb24iKTsKK2lzKCRzLT5nZXQoInNvdXJjZTpWZXJzaW9uIiksICIxOjIuMy40fjUtNi43Ljh+bm11OSIsICJzb3VyY2U6VmVyc2lvbiIpOworaXMoJHMtPmdldCgic291cmNlOlVwc3RyZWFtLVZlcnNpb24iKSwgIjE6Mi4zLjR+NSIsICJzb3VyY2U6VXBzdHJlYW0tVmVyc2lvbiIpOworCisjIFJlcGxhY2Ugc3R1ZmYKK2lzKCRzLT5zdWJzdHZhcnMoJ1RoaXMgaXMgYSBzdHJpbmcgJHt2YXIxfSB3aXRoIHZhcmlhYmxlcyAke2JpbmFyeTpWZXJzaW9ufScpLAorICAgICAgICAgICAgICAgICAiVGhpcyBpcyBhIHN0cmluZyBOZXcgdmFsdWUgd2l0aCB2YXJpYWJsZXMgMToyLjMuNH41LTYuNy44fm5tdTkrYjAiLAorCQkgInN1YnN0dmFycyBzaW1wbGUiKTsKKworbXkgJG91dHB1dDsKKyRTSUd7J19fV0FSTl9fJ30gPSBzdWIgeyAkb3V0cHV0IC49ICRfWzBdIH07Citpcygkcy0+c3Vic3R2YXJzKCdUaGlzIGlzIGEgc3RyaW5nIHdpdGggdW5rbm93biB2YXJpYWJsZSAke2JsdWJifScpLAorICAgICAgICAgICAgICAgICAiVGhpcyBpcyBhIHN0cmluZyB3aXRoIHVua25vd24gdmFyaWFibGUgIiwKKwkJICJzdWJzdHZhcnMgbWlzc2luZyIpOworZGVsZXRlICRTSUd7J19fV0FSTl9fJ307Citpcygkb3V0cHV0LCAnNzUwX0Rwa2dfU3Vic3R2YXJzLnQ6IHdhcm5pbmc6IHVua25vd24gc3Vic3RpdHV0aW9uIHZhcmlhYmxlICR7Ymx1YmJ9Jy4iXG4iCisgICAgICAgICAgLCAnbWlzc2luZyB2YXJpYWJsZXMgd2FybmluZycpOworCisjIFJlY3Vyc2l2ZSByZXBsYWNlCiskcy0+c2V0KCJydmFyIiwgJ3JlY3Vyc2l2ZSAke3ZhcjF9Jyk7Citpcygkcy0+c3Vic3R2YXJzKCdUaGlzIGlzIGEgc3RyaW5nIHdpdGggJHtydmFyfScpLAorICAgICAgICAgICAgICAgICAiVGhpcyBpcyBhIHN0cmluZyB3aXRoIHJlY3Vyc2l2ZSBOZXcgdmFsdWUiLAorCQkgInN1YnN0dmFycyByZWN1cnNpdmUiKTsKKworIyBTdHJhbmdlIGlucHV0Citpcygkcy0+c3Vic3R2YXJzKCdOb3RoaW5nIHRvICQgJHtzdWJzdGl0dXRlICBoZXJlfSwgaXMgaXQgJHt9PywgaXQgJHtpcycpLAorICAgICAgICAgICAgICAgICAnTm90aGluZyB0byAkICR7c3Vic3RpdHV0ZSAgaGVyZX0sIGlzIGl0ICR7fT8sIGl0ICR7aXMnLAorCQkgInN1YnN0dmFycyBzdHJhbmdlIik7CisKKyMgV2FybmluZ3MgYWJvdXQgdW51c2VkIHZhcmlhYmxlcworJG91dHB1dCA9ICcnOworJFNJR3snX19XQVJOX18nfSA9IHN1YiB7ICRvdXRwdXQgLj0gJF9bMF0gfTsKKyRzLT53YXJuX2Fib3V0X3VudXNlZCgpOworZGVsZXRlICRTSUd7J19fV0FSTl9fJ307Citpcygkb3V0cHV0LCAiNzUwX0Rwa2dfU3Vic3R2YXJzLnQ6IHdhcm5pbmc6IHVudXNlZCBzdWJzdGl0dXRpb24gdmFyaWFibGUgXCR7dmFyMn1cbiIsCisgICAgICAgICAgLCAndW51c2VkIHZhcmlhYmxlcyB3YXJuaW5ncycpOworCisjIERpc2FibGUgd2FybmluZ3MgZm9yIGEgY2VydGFpbiB2YXJpYWJsZQorJHMtPm5vX3dhcm4oJ3ZhcjInKTsKKyRvdXRwdXQgPSAnJzsKKyRTSUd7J19fV0FSTl9fJ30gPSBzdWIgeyAkb3V0cHV0IC49ICRfWzBdIH07Ciskcy0+d2Fybl9hYm91dF91bnVzZWQoKTsKK2RlbGV0ZSAkU0lHeydfX1dBUk5fXyd9OworaXMoJG91dHB1dCwgJycsICdkaXNhYmxlZCB1bnVzZWQgdmFyaWFibGVzIHdhcm5pbmdzJyk7CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvdC83NTBfRHBrZ19TdWJzdHZhcnMvc3Vic3R2YXJzMSBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90Lzc1MF9EcGtnX1N1YnN0dmFycy9zdWJzdHZhcnMxCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmY3MWM5NTMKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvdC83NTBfRHBrZ19TdWJzdHZhcnMvc3Vic3R2YXJzMQpAQCAtMCwwICsxLDkgQEAKK3ZhcjE9U29tZSB2YWx1ZQordmFyMj1Tb21lIG90aGVyIHZhbHVlCisjIHRoZSBuZXh0IGxpbmUgaXMgZW1wdHkKKworIyB0aGUgbmV4dCBsaW5lIGhhcyBzb21lIHNwYWNlcworICAgIAorICMgdGhpcyBsaW5lIGhhcyBhIGxhdGUgY29tbWVudAordmFyMz1ZZXQgYW5vdGhlciB2YWx1ZQorI3ZhcjQ9VGhpcyBpcyBub3Qgc2V0CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvdC84MDBfRHBrZ19JUEMudCBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90LzgwMF9EcGtnX0lQQy50Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjcwNmMwZmYKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvdC84MDBfRHBrZ19JUEMudApAQCAtMCwwICsxLDgwIEBACisjIC0qLSBtb2RlOiBjcGVybCAtKi0KKyMKKyMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyMKKyMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisjIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisjIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyMKKyMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisKK3VzZSBUZXN0OjpNb3JlIHRlc3RzID0+IDg7CisKK3VzZSBzdHJpY3Q7Cit1c2Ugd2FybmluZ3M7Cit1c2UgRmlsZTo6VGVtcCBxdyh0ZW1wZmlsZSk7CisKK3VzZV9vaygnRHBrZzo6SVBDJyk7CisKKyQvID0gdW5kZWY7CisKK215ICgkdG1wX2ZoLCAkdG1wX25hbWUpID0gdGVtcGZpbGU7CitteSAoJHRtcDJfZmgsICR0bXAyX25hbWUpID0gdGVtcGZpbGU7CisKK215ICRzdHJpbmcgPSAiZm9vXG5iYXJcbiI7CitteSAkc3RyaW5nMjsKKworb3BlbiBUTVAsICc+JywgJHRtcF9uYW1lOworcHJpbnQgVE1QICRzdHJpbmc7CitjbG9zZSBUTVA7CisKK215ICRwaWQgPSBzcGF3bihleGVjID0+ICJjYXQiLAorCQlmcm9tX3N0cmluZyA9PiBcJHN0cmluZywKKwkJdG9fc3RyaW5nID0+IFwkc3RyaW5nMik7CisKK29rKCRwaWQpOworCitpcygkc3RyaW5nMiwgJHN0cmluZywgIntmcm9tLHRvfV9zdHJpbmciKTsKKworJHBpZCA9IHNwYXduKGV4ZWMgPT4gImNhdCIsCisJICAgICBmcm9tX2hhbmRsZSA9PiAkdG1wX2ZoLAorCSAgICAgdG9faGFuZGxlID0+ICR0bXAyX2ZoKTsKKworb2soJHBpZCk7CisKK3dhaXRfY2hpbGQoJHBpZCk7CisKK29wZW4gVE1QLCAnPCcsICR0bXAyX25hbWU7Ciskc3RyaW5nMiA9IDxUTVA+OworY2xvc2UgVE1QOworCitpcygkc3RyaW5nMiwgJHN0cmluZywgIntmcm9tLHRvfV9oYW5kbGUiKTsKKworJHBpZCA9IHNwYXduKGV4ZWMgPT4gImNhdCIsCisJICAgICBmcm9tX2ZpbGUgPT4gJHRtcF9uYW1lLAorCSAgICAgdG9fZmlsZSA9PiAkdG1wMl9uYW1lLAorCSAgICAgd2FpdF9jaGlsZCA9PiAxLAorCSAgICAgdGltZW91dCA9PiA1KTsKKworb2soJHBpZCk7CisKK29wZW4gVE1QLCAnPCcsICR0bXAyX25hbWU7Ciskc3RyaW5nMiA9IDxUTVA+OworY2xvc2UgVE1QOworCitpcygkc3RyaW5nMiwgJHN0cmluZywgIntmcm9tLHRvfV9maWxlIik7CisKK2V2YWwgeworICAgICRwaWQgPSBzcGF3bihleGVjID0+IFsic2xlZXAiLCAiMTAiXSwKKwkgICAgICAgICB3YWl0X2NoaWxkID0+IDEsCisJICAgICAgICAgdGltZW91dCA9PiA1KTsKK307CitvaygkQCwgImZhaWxzIG9uIHRpbWVvdXQiKTsKKwordW5saW5rKCR0bXBfbmFtZSk7Cit1bmxpbmsoJHRtcDJfbmFtZSk7CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvdC84NTBfRHBrZ19Db21wcmVzc2lvbi50IGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3QvODUwX0Rwa2dfQ29tcHJlc3Npb24udApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hODA1NGY2Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3QvODUwX0Rwa2dfQ29tcHJlc3Npb24udApAQCAtMCwwICsxLDEwNyBAQAorIyAtKi0gbW9kZTogY3BlcmwgLSotCisjCisjIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisjIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisjIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisjIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisjCisjIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisjIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisjCisjIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisjIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorCit1c2UgVGVzdDo6TW9yZSB0ZXN0cyA9PiAxMzsKKwordXNlIHN0cmljdDsKK3VzZSB3YXJuaW5nczsKKwordXNlX29rKCdEcGtnOjpDb21wcmVzc2lvbicpOwordXNlX29rKCdEcGtnOjpDb21wcmVzc2lvbjo6RmlsZUhhbmRsZScpOworCitteSAkdG1wZGlyID0gInQudG1wLzg1MF9EcGtnX0NvbXByZXNzaW9uIjsKK21rZGlyICR0bXBkaXI7CitteSBAbGluZXMgPSAoIk9uZVxuIiwgIlR3b1xuIiwgIlRocmVlXG4iKTsKK215ICRmaDsKKworc3ViIHRlc3Rfd3JpdGUgeworICAgIG15ICgkZmlsZW5hbWUsICRjaGVja19yZXN1bHQpID0gQF87CisKKyAgICAkZmggPSBEcGtnOjpDb21wcmVzc2lvbjo6RmlsZUhhbmRsZS0+bmV3KCk7CisgICAgb3BlbiAkZmgsICI+IiwgJGZpbGVuYW1lIG9yIGRpZSAib3BlbiBmYWlsZWQiOworICAgIHByaW50ICRmaCAkbGluZXNbMF07CisgICAgc3lzd3JpdGUoJGZoLCAkbGluZXNbMV0pOworICAgIHByaW50ZiAkZmggIiVzIiwgJGxpbmVzWzJdOworICAgIGNsb3NlICRmaCBvciBkaWUgImNsb3NlIGZhaWxlZCI7CisKKyAgICAmJGNoZWNrX3Jlc3VsdCgkZmlsZW5hbWUsICJzdGQgZnVuY3Rpb25zIik7CisKKyAgICB1bmxpbmsgJGZpbGVuYW1lIG9yIGRpZSAiY2Fubm90IHVubGluayAkZmlsZW5hbWUiOworCisgICAgJGZoID0gRHBrZzo6Q29tcHJlc3Npb246OkZpbGVIYW5kbGUtPm5ldygpOworICAgICRmaC0+b3BlbigkZmlsZW5hbWUsICJ3Iik7CisgICAgJGZoLT5wcmludCgkbGluZXNbMF0pOworICAgICRmaC0+d3JpdGUoJGxpbmVzWzFdLCBsZW5ndGgoJGxpbmVzWzFdKSk7CisgICAgJGZoLT5wcmludGYoIiVzIiwgJGxpbmVzWzJdKTsKKyAgICAkZmgtPmNsb3NlKCkgb3IgZGllICJjbG9zZSBmYWlsZWQiOworCisgICAgJiRjaGVja19yZXN1bHQoJGZpbGVuYW1lLCAiSU86OkhhbmRsZSBtZXRob2RzIik7Cit9CisKK3N1YiBjaGVja191bmNvbXByZXNzZWQgeworICAgIG15ICgkZmlsZW5hbWUsICRtZXRob2QpID0gQF87CisgICAgb3BlbihSRUFELCAiPCIsICRmaWxlbmFtZSkgb3IgZGllICJjYW5ub3QgcmVhZCAkZmlsZW5hbWUiOworICAgIG15IEByZWFkID0gPFJFQUQ+OworICAgIGNsb3NlIFJFQUQgb3IgZGllICJjYW5ub3QgY2xvc2UiOworICAgIGlzX2RlZXBseShcQGxpbmVzLCBcQHJlYWQsICIkZmlsZW5hbWUgY29ycmVjdGx5IHdyaXR0ZW4gKCRtZXRob2QpIik7Cit9CisKK3N1YiBjaGVja19jb21wcmVzc2VkIHsKKyAgICBteSAoJGZpbGVuYW1lLCAkbWV0aG9kKSA9IEBfOworICAgIG9wZW4oUkVBRCwgIi18IiwgInpjYXQgJHRtcGRpci9teWZpbGUuZ3oiKSBvciBkaWUgImNhbm5vdCBmb3JrIHpjYXQiOworICAgIG15IEByZWFkID0gPFJFQUQ+OworICAgIGNsb3NlIFJFQUQgb3IgZGllICJjYW5ub3QgY2xvc2UiOworICAgIGlzX2RlZXBseShcQGxpbmVzLCBcQHJlYWQsICIkZmlsZW5hbWUgY29ycmVjdGx5IHdyaXR0ZW4gKCRtZXRob2QpIik7Cit9CisKK3N1YiB0ZXN0X3JlYWQgeworICAgIG15ICgkZmlsZW5hbWUpID0gQF87CisKKyAgICAkZmggPSBEcGtnOjpDb21wcmVzc2lvbjo6RmlsZUhhbmRsZS0+bmV3KCk7CisgICAgb3BlbigkZmgsICI8IiwgJGZpbGVuYW1lKSBvciBkaWUgIm9wZW4gZmFpbGVkIjsKKyAgICBteSBAcmVhZCA9IDwkZmg+OworICAgIGNsb3NlICRmaCBvciBkaWUgImNsb3NlIGZhaWxlZCI7CisKKyAgICBpc19kZWVwbHkoXEBsaW5lcywgXEByZWFkLCAiJGZpbGVuYW1lIGNvcnJlY3RseSByZWFkIChzdGQgZnVuY3Rpb25zKSIpOworCisgICAgQHJlYWQgPSAoKTsKKyAgICAkZmggPSBEcGtnOjpDb21wcmVzc2lvbjo6RmlsZUhhbmRsZS0+bmV3KCk7CisgICAgJGZoLT5vcGVuKCRmaWxlbmFtZSwgInIiKSBvciBkaWUgIm9wZW4gZmFpbGVkIjsKKyAgICBAcmVhZCA9ICRmaC0+Z2V0bGluZXMoKTsKKyAgICAkZmgtPmNsb3NlKCkgb3IgZGllICJjbG9zZSBmYWlsZWQiOworCisgICAgaXNfZGVlcGx5KFxAbGluZXMsIFxAcmVhZCwgIiRmaWxlbmFtZSBjb3JyZWN0bHkgcmVhZCAoSU86OkhhbmRsZSBtZXRob2RzKSIpOworfQorCisjIFRlc3QgY2hhbmdpbmcgdGhlIGRlZmF1bHQgY29tcHJlc3Npb24gbGV2ZWxzCitteSAkb2xkX2xldmVsID0gY29tcHJlc3Npb25fZ2V0X2RlZmF1bHRfbGV2ZWwoKTsKK2NvbXByZXNzaW9uX3NldF9kZWZhdWx0X2xldmVsKDEpOworaXMoY29tcHJlc3Npb25fZ2V0X2RlZmF1bHRfbGV2ZWwoKSwgMSwgImNoYW5nZSBkZWZhdWx0IGNvbXByZXNzaW9uIGxldmVsIik7Citjb21wcmVzc2lvbl9zZXRfZGVmYXVsdF9sZXZlbCg1KTsKK2lzKGNvbXByZXNzaW9uX2dldF9kZWZhdWx0X2xldmVsKCksIDUsICJjaGFuZ2UgZGVmYXVsdCBjb21wcmVzc2lvbiBsZXZlbCIpOworY29tcHJlc3Npb25fc2V0X2RlZmF1bHRfbGV2ZWwodW5kZWYpOworaXMoY29tcHJlc3Npb25fZ2V0X2RlZmF1bHRfbGV2ZWwoKSwgJG9sZF9sZXZlbCwgInJlc2V0IGRlZmF1bHQgY29tcHJlc3Npb24gbGV2ZWwiKTsKKworIyBUZXN0IHdyaXRlIG9uIHVuY29tcHJlc3NlZCBmaWxlCit0ZXN0X3dyaXRlKCIkdG1wZGlyL215ZmlsZSIsIFwmY2hlY2tfdW5jb21wcmVzc2VkKTsKKworIyBUZXN0IHdyaXRlIG9uIGNvbXByZXNzZWQgZmlsZQordGVzdF93cml0ZSgiJHRtcGRpci9teWZpbGUuZ3oiLCBcJmNoZWNrX2NvbXByZXNzZWQpOworCisjIFRlc3QgcmVhZCBvbiB1bmNvbXByZXNzZWQgZmlsZQordGVzdF9yZWFkKCIkdG1wZGlyL215ZmlsZSIpOworCisjIFRlc3QgcmVhZCBvbiBjb21wcmVzc2VkIGZpbGUKK3Rlc3RfcmVhZCgiJHRtcGRpci9teWZpbGUuZ3oiKTsKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90LzkxMF9tZXJnZV9jaGFuZ2Vsb2dzLnQgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvdC85MTBfbWVyZ2VfY2hhbmdlbG9ncy50Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmEzYzA1MDkKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvdC85MTBfbWVyZ2VfY2hhbmdlbG9ncy50CkBAIC0wLDAgKzEsNTcgQEAKKyMgLSotIG1vZGU6IGNwZXJsOy0qLQorIworIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorIworIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorIworIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKwordXNlIERwa2c6OklQQzsKK3VzZSBGaWxlOjpTcGVjOwordXNlIFRlc3Q6Ok1vcmU7Cit1c2UgRmlsZTo6Q29tcGFyZTsKK3VzZSBGaWxlOjpUZW1wIHF3KHRlbXBmaWxlKTsKKwordXNlIHN0cmljdDsKK3VzZSB3YXJuaW5nczsKKworcGxhbiB0ZXN0cyA9PiAyOworCitteSAkc3JjZGlyID0gJEVOVntzcmNkaXJ9IHx8ICcuJzsKK215ICRkYXRhZGlyID0gIiRzcmNkaXIvdC85MTBfbWVyZ2VfY2hhbmdlbG9ncyI7CisKK215ICRyZXM7CitzdWIgdGVzdF9tZXJnZSB7CisgICAgbXkgKCRleHBlY3RlZF9maWxlLCBAb3B0aW9ucykgPSBAXzsKKyAgICBteSAoJGZoLCAkZmlsZW5hbWUpID0gdGVtcGZpbGUoKTsKKyAgICBzcGF3bihleGVjID0+IFsiJHNyY2Rpci9kcGtnLW1lcmdlY2hhbmdlbG9ncy5wbCIsIEBvcHRpb25zXSwKKwkgIHRvX2hhbmRsZSA9PiAkZmgsIHdhaXRfY2hpbGQgPT4gMSwgbm9jaGVjayA9PiAxKTsKKyAgICBteSAkcmVzID0gY29tcGFyZSgkZXhwZWN0ZWRfZmlsZSwgJGZpbGVuYW1lKTsKKyAgICBpZiAoJHJlcykgeworCXN5c3RlbSgiZGlmZiAtdSAkZXhwZWN0ZWRfZmlsZSAkZmlsZW5hbWUgPiYyIik7CisgICAgfQorICAgIG9rKCRyZXMgPT0gMCwgIm1lcmdlZCBjaGFuZ2Vsb2cgbWF0Y2hlcyBleHBlY3RlZCBvbmUgKCRleHBlY3RlZF9maWxlKSIpOworICAgIHVubGluaygkZmlsZW5hbWUpOworfQorCitteSAkaGFzX2FsZ19tZXJnZSA9IDE7CitldmFsICd1c2UgQWxnb3JpdGhtOjpNZXJnZTsnOworaWYgKCRAKSB7CisgICAgJGhhc19hbGdfbWVyZ2UgPSAwOworfQorCitteSBAaW5wdXQgPSAoIiRkYXRhZGlyL2NoLW9sZCIsICIkZGF0YWRpci9jaC1hIiwgIiRkYXRhZGlyL2NoLWIiKTsKK2lmICgkaGFzX2FsZ19tZXJnZSkgeworICAgIHRlc3RfbWVyZ2UoIiRkYXRhZGlyL2NoLW1lcmdlZCIsIEBpbnB1dCk7CisgICAgdGVzdF9tZXJnZSgiJGRhdGFkaXIvY2gtbWVyZ2VkLXByIiwgIi1tIiwgQGlucHV0KTsKK30gZWxzZSB7CisgICAgdGVzdF9tZXJnZSgiJGRhdGFkaXIvY2gtbWVyZ2VkLWJhc2ljIiwgQGlucHV0KTsKKyAgICB0ZXN0X21lcmdlKCIkZGF0YWRpci9jaC1tZXJnZWQtcHItYmFzaWMiLCAiLW0iLCBAaW5wdXQpOworfQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3QvOTEwX21lcmdlX2NoYW5nZWxvZ3MvY2gtYSBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90LzkxMF9tZXJnZV9jaGFuZ2Vsb2dzL2NoLWEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDJkYWQ5MwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90LzkxMF9tZXJnZV9jaGFuZ2Vsb2dzL2NoLWEKQEAgLTAsMCArMSw5MiBAQAordGVzdCAoMi4wLTEpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogVmVyc2lvbiBCIHdpdGggMi4wLTF+ZXhwMyBjb250YWlucyBvbmx5IHVwIHRvIGxpbmUgMyB3aGlsZSB2ZXJzaW9uIEEKKyAgICB3aXRoIDIuMC0xIGNvbnRhaW5zIHRoZSA1IGxpbmVzLiBUaGUgcmVzdWx0aW5nIHZlcnNpb24gc2hvdWxkIGhhdmUgdGhlCisgICAgNSBsaW5lcyB3aXRob3V0IGNvbmZsaWN0IHdpdGggQWxnb3JpdGhtOjpNZXJnZSBhbmQgYSBjb25mbGljdCB3aXRob3V0LgorICAqIExpbmUgMS4KKyAgKiBMaW5lIDIuCisgICogTGluZSAzLgorICAqIExpbmUgNC4KKyAgKiBMaW5lIDUuCisKKyAtLSBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+ICBTdW4sIDE4IEFwciAyMDEwIDE4OjIzOjA5ICswMjAwCisKK3Rlc3QgKDEuMi0yKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIFRoaXMgaXMgdGhlIGxhc3QgZW50cnkgaW4gY2hhbmdlbG9nIE8uCisKKyAtLSBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+ICBTdW4sIDE4IEFwciAyMDEwIDE4OjE4OjUwICswMjAwCisKK3Rlc3QgKDEuMi0xKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIFRoaXMgZW50cnkgc2hvdWxkIG5vdCBoYXZlIGNvbmZsaWN0cyB3aXRoIEFsZ29yaXRobTo6TWVyZ2UgaW5zdGFsbGVkLgorICAqIENoYW5nZWxvZyBCIHNob3VsZCBhIGhhdmUgc3VwcGxlbWVudGFyeSBsaW5lIGFib3ZlIHRoaXMgb25lLgorICAqIFBpIGlzIDMuMTQgaXMgdHJ1ZSBmb3IgYWxsIGNoYW5nZWxvZ3MuCisgICogQ2hhbmdlbG9nIEEgc2hvdWxkIGhhdmUgYSBzdXBwbGVtZW50YXJ5IGxpbmUKKyAgICBzb21ld2hlcmUgaW4gdGhpcyBzdWItbGlzdAorICAgIC0gVGhlIHdlYXRoZXIgaXMgbmljZQorICAgIC0gUmVhbGx5IG5vIGNsb3VkcyBpbiB0aGUgc2t5CisgICAgLSBZZXQgSSdtIGhhY2tpbmcgb24gZHBrZworICAgIC0gV2hhdCBkb2VzIHRoYXQgbWVhbiBhYm91dCBtZT8KKyAgKiBUaGlzIGxpbmUgc2hvdWxkIGJlIHNoYXJlZCBidXQgdGhlIG5leHQgb25lIGlzIGRyb3BwZWQgaW4gQiBvbmx5LgorICAqIElmIEknbSBoZXJlIGl0J3MgYmVjYXVzZSB0aGUgY2hhbmdlbG9nIGlzIG5vdCBCIChJIHNob3VsZCBub3QgYXBwZWFyCisgICAgaW4gdGhlIHJlc3VsdGluZyBjaGFuZ2Vsb2cpLgorCisgLS0gUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPiAgU3VuLCAxOCBBcHIgMjAxMCAxODowOTowNyArMDIwMAorCit0ZXN0ICgxLjEtMStjb25mbGljdDIpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogVGhpcyBlbnRyeSBoYXMgYSBjb25mbGljdCBvbiB0aGUgbmV4dCBsaW5lLgorICAqIEknbSBpbiBjaGFuZ2Vsb2cgQS4KKyAgKiBUaGlzIGxpbmUgaXMgdGhlIHNhbWUgaW4gYWxsIDMgdmVyc2lvbnMuCisKKyAtLSBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+ICBTdW4sIDE4IEFwciAyMDEwIDE4OjA3OjQwICswMjAwCisKK3Rlc3QgKDEuMS0xK2NvbmZsaWN0MSkgZXhwZXJpbWVudGFsOyB1cmdlbmN5PWxvdworCisgICogVGhpcyBlbnRyeSBoYXMgY29uZmxpY3RzIG9uIHRoZSBoZWFkZXIgbGluZTogQSB3YW50cyBkaXN0cmlidXRpb24KKyAgICBleHBlcmltZW50YWwgKGluc3RlYWQgb2YgdW5zdGFibGUpIGFuZCBCIHdhbnRzIHVyZ2VuY3k9aGlnaCAoaW5zdGVhZAorICAgIG9mIGxvdykuCisgICogQnV0IGl0IGFsc28gaGFzIGEgY29uZmxpY3Qgb24gdGhlIHRyYWlsZXIgbGluZS4gQSBjaGFuZ2VkIHRoZQorICAgIHRpbWVzdGFtcCB0byAxODowNTowMCBhbmQgQiB0byAxODowNjowMC4KKworIC0tIFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4gIFN1biwgMTggQXByIDIwMTAgMTg6MDU6MDAgKzAyMDAKKwordGVzdCAoMS4xLTErY2hhbmdlMikgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBUaGlzIGVudHJ5IGlzIGV2ZXJ5d2hlcmUgYnV0IHRoZSBsYXN0IGxpbmUgaXMgZGlmZmVyZW50IGluIEEuIFRoZQorICAgIG1lcmdlZCB2ZXJzaW9uIHNob3VsZCBoYXZlIHdoYXQncyBpbiBBLiBGdXJ0aGVybW9yZSB0aGUgdGltZXN0YW1wIGluCisgICAgQiBpcyBzZXQgdG8gMTc6NTU6MDAsIGl0IHNob3VsZCBhbHNvIGJlIHBpY2tlZCB1cC4KKyAgKiBJJ20gZGVmaW5pdGVseSBpbiBjaGFuZ2Vsb2cgQS4KKworIC0tIFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4gIFN1biwgMTggQXByIDIwMTAgMTc6NTQ6NTIgKzAyMDAKKwordGVzdCAoMS4xLTErY2hhbmdlMSkgdW5zdGFibGU7IHVyZ2VuY3k9aGlnaAorCisgICogVGhpcyBlbnRyeSBpcyBldmVyeXdoZXJlIGJ1dCB0aGUgbGFzdCBsaW5lIGlzIGRpZmZlcmVudCBpbiBCLiBUaGUKKyAgICBtZXJnZWQgdmVyc2lvbiBzaG91bGQgaGF2ZSB3aGF0J3MgaW4gQi4gRnVydGhlcm1vcmUgdGhlIHVyZ2VuY3kgaW4KKyAgICBBIGlzIHNldCB0byBoaWdoLCBpdCBzaG91bGQgYWxzbyBiZSBwaWNrZWQgdXAuCisgICogSSdtIG5vdCBpbiBjaGFuZ2Vsb2cgQi4KKworIC0tIFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4gIFN1biwgMTggQXByIDIwMTAgMTc6NTA6NTggKzAyMDAKKwordGVzdCAoMS4wLTMrYSkgZXhwZXJpbWVudGFsOyB1cmdlbmN5PWxvdworCisgICogVGhpcyBlbnRyeSBpcyBwcmVzZW50IGluIEEgb25seS4gSXQncyBjb25zaWRlcmVkIG5ldyBhbmQgc2hvdWxkIHRodXMKKyAgICBiZSBpbiB0aGUgbWVyZ2VkIGNoYW5nZWxvZy4KKworIC0tIFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4gIFN1biwgMTggQXByIDIwMTAgMTc6NDQ6MzkgKzAyMDAKKwordGVzdCAoMS4wLTIpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogVGhpcyBlbnRyeSBpcyBkcm9wcGVkIGluIEIgb25seS4KKyAgKiBTaW5jZSBpdCdzIGluIE8gYW5kIEEsIGl0IHNob3VsZCBub3QgYXBwZWFyIGluIHRoZSByZXN1bHQuCisgICogUGkgaXMgMy4xNC4KKworIC0tIFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4gIFN1biwgMTggQXByIDIwMTAgMTc6Mzk6MTUgKzAyMDAKKwordGVzdCAoMS4wLTEpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogSW5pdGlhbCByZWxlYXNlLiAoQ2xvc2VzOiAjWFhYWFhYKQorCisgLS0gUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPiAgU3VuLCAxOCBBcHIgMjAxMCAxNzozNzo0NiArMDIwMApkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3QvOTEwX21lcmdlX2NoYW5nZWxvZ3MvY2gtYiBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90LzkxMF9tZXJnZV9jaGFuZ2Vsb2dzL2NoLWIKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNmVhMDE3OAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90LzkxMF9tZXJnZV9jaGFuZ2Vsb2dzL2NoLWIKQEAgLTAsMCArMSw4NyBAQAordGVzdCAoMi4wLTF+ZXhwMykgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBWZXJzaW9uIEIgd2l0aCAyLjAtMX5leHAzIGNvbnRhaW5zIG9ubHkgdXAgdG8gbGluZSAzIHdoaWxlIHZlcnNpb24gQQorICAgIHdpdGggMi4wLTEgY29udGFpbnMgdGhlIDUgbGluZXMuIFRoZSByZXN1bHRpbmcgdmVyc2lvbiBzaG91bGQgaGF2ZSB0aGUKKyAgICA1IGxpbmVzIHdpdGhvdXQgY29uZmxpY3Qgd2l0aCBBbGdvcml0aG06Ok1lcmdlIGFuZCBhIGNvbmZsaWN0IHdpdGhvdXQuCisgICogTGluZSAxLgorICAqIExpbmUgMi4KKyAgKiBMaW5lIDMuCisKKyAtLSBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+ICBTdW4sIDE4IEFwciAyMDEwIDE4OjIzOjA5ICswMjAwCisKK3Rlc3QgKDEuMi0yKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIFRoaXMgaXMgdGhlIGxhc3QgZW50cnkgaW4gY2hhbmdlbG9nIE8uCisKKyAtLSBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+ICBTdW4sIDE4IEFwciAyMDEwIDE4OjE4OjUwICswMjAwCisKK3Rlc3QgKDEuMi0xKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIFRoaXMgZW50cnkgc2hvdWxkIG5vdCBoYXZlIGNvbmZsaWN0cyB3aXRoIEFsZ29yaXRobTo6TWVyZ2UgaW5zdGFsbGVkLgorICAqIEknbSB0aGUgYWRkZWQgbGluZSBtZW50aW9ubmVkIGJlbG93IChCLW9ubHkpLgorICAqIENoYW5nZWxvZyBCIHNob3VsZCBhIGhhdmUgc3VwcGxlbWVudGFyeSBsaW5lIGFib3ZlIHRoaXMgb25lLgorICAqIFBpIGlzIDMuMTQgaXMgdHJ1ZSBmb3IgYWxsIGNoYW5nZWxvZ3MuCisgICogQ2hhbmdlbG9nIEEgc2hvdWxkIGhhdmUgYSBzdXBwbGVtZW50YXJ5IGxpbmUKKyAgICBzb21ld2hlcmUgaW4gdGhpcyBzdWItbGlzdAorICAgIC0gVGhlIHdlYXRoZXIgaXMgbmljZQorICAgIC0gWWV0IEknbSBoYWNraW5nIG9uIGRwa2cKKyAgICAtIFdoYXQgZG9lcyB0aGF0IG1lYW4gYWJvdXQgbWU/CisgICogVGhpcyBsaW5lIHNob3VsZCBiZSBzaGFyZWQgYnV0IHRoZSBuZXh0IG9uZSBpcyBkcm9wcGVkIGluIEIgb25seS4KKworIC0tIFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4gIFN1biwgMTggQXByIDIwMTAgMTg6MDk6MDcgKzAyMDAKKwordGVzdCAoMS4xLTErY29uZmxpY3QyKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIFRoaXMgZW50cnkgaGFzIGEgY29uZmxpY3Qgb24gdGhlIG5leHQgbGluZS4KKyAgKiBJJ20gaW4gY2hhbmdlbG9nIEIuCisgICogVGhpcyBsaW5lIGlzIHRoZSBzYW1lIGluIGFsbCAzIHZlcnNpb25zLgorCisgLS0gUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPiAgU3VuLCAxOCBBcHIgMjAxMCAxODowNzo0MCArMDIwMAorCit0ZXN0ICgxLjEtMStjb25mbGljdDEpIHVuc3RhYmxlOyB1cmdlbmN5PWhpZ2gKKworICAqIFRoaXMgZW50cnkgaGFzIGNvbmZsaWN0cyBvbiB0aGUgaGVhZGVyIGxpbmU6IEEgd2FudHMgZGlzdHJpYnV0aW9uCisgICAgZXhwZXJpbWVudGFsIChpbnN0ZWFkIG9mIHVuc3RhYmxlKSBhbmQgQiB3YW50cyB1cmdlbmN5PWhpZ2ggKGluc3RlYWQKKyAgICBvZiBsb3cpLgorICAqIEJ1dCBpdCBhbHNvIGhhcyBhIGNvbmZsaWN0IG9uIHRoZSB0cmFpbGVyIGxpbmUuIEEgY2hhbmdlZCB0aGUKKyAgICB0aW1lc3RhbXAgdG8gMTg6MDU6MDAgYW5kIEIgdG8gMTg6MDY6MDAuCisKKyAtLSBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+ICBTdW4sIDE4IEFwciAyMDEwIDE4OjA2OjAwICswMjAwCisKK3Rlc3QgKDEuMS0xK2NoYW5nZTIpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogVGhpcyBlbnRyeSBpcyBldmVyeXdoZXJlIGJ1dCB0aGUgbGFzdCBsaW5lIGlzIGRpZmZlcmVudCBpbiBBLiBUaGUKKyAgICBtZXJnZWQgdmVyc2lvbiBzaG91bGQgaGF2ZSB3aGF0J3MgaW4gQS4gRnVydGhlcm1vcmUgdGhlIHRpbWVzdGFtcCBpbgorICAgIEIgaXMgc2V0IHRvIDE3OjU1OjAwLCBpdCBzaG91bGQgYWxzbyBiZSBwaWNrZWQgdXAuCisgICogSSdtIG5vdCBpbiBjaGFuZ2Vsb2cgQS4KKworIC0tIFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4gIFN1biwgMTggQXByIDIwMTAgMTc6NTQ6NTIgKzAyMDAKKwordGVzdCAoMS4xLTErY2hhbmdlMSkgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBUaGlzIGVudHJ5IGlzIGV2ZXJ5d2hlcmUgYnV0IHRoZSBsYXN0IGxpbmUgaXMgZGlmZmVyZW50IGluIEIuIFRoZQorICAgIG1lcmdlZCB2ZXJzaW9uIHNob3VsZCBoYXZlIHdoYXQncyBpbiBCLiBGdXJ0aGVybW9yZSB0aGUgdXJnZW5jeSBpbgorICAgIEEgaXMgc2V0IHRvIGhpZ2gsIGl0IHNob3VsZCBhbHNvIGJlIHBpY2tlZCB1cC4KKyAgKiBJJ20gZGVmaW5pdGVseSBpbiBjaGFuZ2Vsb2cgQi4KKworIC0tIFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4gIFN1biwgMTggQXByIDIwMTAgMTc6NTA6NTggKzAyMDAKKwordGVzdCAoMS4wLTMrYikgZXhwZXJpbWVudGFsOyB1cmdlbmN5PWxvdworCisgICogVGhpcyBlbnRyeSBpcyBwcmVzZW50IGluIEIgb25seS4gSXQncyBjb25zaWRlcmVkIG5ldyBhbmQgc2hvdWxkIHRodXMKKyAgICBiZSBpbiB0aGUgbWVyZ2VkIGNoYW5nZWxvZy4KKworIC0tIFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4gIFN1biwgMTggQXByIDIwMTAgMTc6NDc6MzggKzAyMDAKKwordGVzdCAoMS4wLTMpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogVGhpcyBlbnRyeSBpcyBkcm9wcGVkIGluIEEgb25seS4KKyAgKiBTaW5jZSBpdCdzIGluIE8gYW5kIEIsIGl0IHNob3VsZCBub3QgYXBwZWFyIGluIHRoZSByZXN1bHQuCisKKyAtLSBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+ICBTdW4sIDE4IEFwciAyMDEwIDE3OjQxOjMxICswMjAwCisKK3Rlc3QgKDEuMC0xKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIEluaXRpYWwgcmVsZWFzZS4gKENsb3NlczogI1hYWFhYWCkKKworIC0tIFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4gIFN1biwgMTggQXByIDIwMTAgMTc6Mzc6NDYgKzAyMDAKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90LzkxMF9tZXJnZV9jaGFuZ2Vsb2dzL2NoLW1lcmdlZCBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90LzkxMF9tZXJnZV9jaGFuZ2Vsb2dzL2NoLW1lcmdlZApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lMjQxMWFiCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3QvOTEwX21lcmdlX2NoYW5nZWxvZ3MvY2gtbWVyZ2VkCkBAIC0wLDAgKzEsMTEzIEBACit0ZXN0ICgyLjAtMSkgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBWZXJzaW9uIEIgd2l0aCAyLjAtMX5leHAzIGNvbnRhaW5zIG9ubHkgdXAgdG8gbGluZSAzIHdoaWxlIHZlcnNpb24gQQorICAgIHdpdGggMi4wLTEgY29udGFpbnMgdGhlIDUgbGluZXMuIFRoZSByZXN1bHRpbmcgdmVyc2lvbiBzaG91bGQgaGF2ZSB0aGUKKyAgICA1IGxpbmVzIHdpdGhvdXQgY29uZmxpY3Qgd2l0aCBBbGdvcml0aG06Ok1lcmdlIGFuZCBhIGNvbmZsaWN0IHdpdGhvdXQuCisgICogTGluZSAxLgorICAqIExpbmUgMi4KKyAgKiBMaW5lIDMuCisgICogTGluZSA0LgorICAqIExpbmUgNS4KKworIC0tIFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4gIFN1biwgMTggQXByIDIwMTAgMTg6MjM6MDkgKzAyMDAKKwordGVzdCAoMi4wLTF+ZXhwMykgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBWZXJzaW9uIEIgd2l0aCAyLjAtMX5leHAzIGNvbnRhaW5zIG9ubHkgdXAgdG8gbGluZSAzIHdoaWxlIHZlcnNpb24gQQorICAgIHdpdGggMi4wLTEgY29udGFpbnMgdGhlIDUgbGluZXMuIFRoZSByZXN1bHRpbmcgdmVyc2lvbiBzaG91bGQgaGF2ZSB0aGUKKyAgICA1IGxpbmVzIHdpdGhvdXQgY29uZmxpY3Qgd2l0aCBBbGdvcml0aG06Ok1lcmdlIGFuZCBhIGNvbmZsaWN0IHdpdGhvdXQuCisgICogTGluZSAxLgorICAqIExpbmUgMi4KKyAgKiBMaW5lIDMuCisKKyAtLSBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+ICBTdW4sIDE4IEFwciAyMDEwIDE4OjIzOjA5ICswMjAwCisKK3Rlc3QgKDEuMi0yKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIFRoaXMgaXMgdGhlIGxhc3QgZW50cnkgaW4gY2hhbmdlbG9nIE8uCisKKyAtLSBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+ICBTdW4sIDE4IEFwciAyMDEwIDE4OjE4OjUwICswMjAwCisKK3Rlc3QgKDEuMi0xKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIFRoaXMgZW50cnkgc2hvdWxkIG5vdCBoYXZlIGNvbmZsaWN0cyB3aXRoIEFsZ29yaXRobTo6TWVyZ2UgaW5zdGFsbGVkLgorICAqIEknbSB0aGUgYWRkZWQgbGluZSBtZW50aW9ubmVkIGJlbG93IChCLW9ubHkpLgorICAqIENoYW5nZWxvZyBCIHNob3VsZCBhIGhhdmUgc3VwcGxlbWVudGFyeSBsaW5lIGFib3ZlIHRoaXMgb25lLgorICAqIFBpIGlzIDMuMTQgaXMgdHJ1ZSBmb3IgYWxsIGNoYW5nZWxvZ3MuCisgICogQ2hhbmdlbG9nIEEgc2hvdWxkIGhhdmUgYSBzdXBwbGVtZW50YXJ5IGxpbmUKKyAgICBzb21ld2hlcmUgaW4gdGhpcyBzdWItbGlzdAorICAgIC0gVGhlIHdlYXRoZXIgaXMgbmljZQorICAgIC0gUmVhbGx5IG5vIGNsb3VkcyBpbiB0aGUgc2t5CisgICAgLSBZZXQgSSdtIGhhY2tpbmcgb24gZHBrZworICAgIC0gV2hhdCBkb2VzIHRoYXQgbWVhbiBhYm91dCBtZT8KKyAgKiBUaGlzIGxpbmUgc2hvdWxkIGJlIHNoYXJlZCBidXQgdGhlIG5leHQgb25lIGlzIGRyb3BwZWQgaW4gQiBvbmx5LgorCisgLS0gUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPiAgU3VuLCAxOCBBcHIgMjAxMCAxODowOTowNyArMDIwMAorCit0ZXN0ICgxLjEtMStjb25mbGljdDIpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogVGhpcyBlbnRyeSBoYXMgYSBjb25mbGljdCBvbiB0aGUgbmV4dCBsaW5lLgorPDw8PDw8PAorICAqIEknbSBpbiBjaGFuZ2Vsb2cgQS4KKz09PT09PT0KKyAgKiBJJ20gaW4gY2hhbmdlbG9nIEIuCis+Pj4+Pj4+CisgICogVGhpcyBsaW5lIGlzIHRoZSBzYW1lIGluIGFsbCAzIHZlcnNpb25zLgorCisgLS0gUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPiAgU3VuLCAxOCBBcHIgMjAxMCAxODowNzo0MCArMDIwMAorCis8PDw8PDw8Cit0ZXN0ICgxLjEtMStjb25mbGljdDEpIGV4cGVyaW1lbnRhbDsgdXJnZW5jeT1sb3cKKz09PT09PT0KK3Rlc3QgKDEuMS0xK2NvbmZsaWN0MSkgdW5zdGFibGU7IHVyZ2VuY3k9aGlnaAorPj4+Pj4+PgorCisgICogVGhpcyBlbnRyeSBoYXMgY29uZmxpY3RzIG9uIHRoZSBoZWFkZXIgbGluZTogQSB3YW50cyBkaXN0cmlidXRpb24KKyAgICBleHBlcmltZW50YWwgKGluc3RlYWQgb2YgdW5zdGFibGUpIGFuZCBCIHdhbnRzIHVyZ2VuY3k9aGlnaCAoaW5zdGVhZAorICAgIG9mIGxvdykuCisgICogQnV0IGl0IGFsc28gaGFzIGEgY29uZmxpY3Qgb24gdGhlIHRyYWlsZXIgbGluZS4gQSBjaGFuZ2VkIHRoZQorICAgIHRpbWVzdGFtcCB0byAxODowNTowMCBhbmQgQiB0byAxODowNjowMC4KKworPDw8PDw8PAorIC0tIFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4gIFN1biwgMTggQXByIDIwMTAgMTg6MDU6MDAgKzAyMDAKKz09PT09PT0KKyAtLSBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+ICBTdW4sIDE4IEFwciAyMDEwIDE4OjA2OjAwICswMjAwCis+Pj4+Pj4+CisKK3Rlc3QgKDEuMS0xK2NoYW5nZTIpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogVGhpcyBlbnRyeSBpcyBldmVyeXdoZXJlIGJ1dCB0aGUgbGFzdCBsaW5lIGlzIGRpZmZlcmVudCBpbiBBLiBUaGUKKyAgICBtZXJnZWQgdmVyc2lvbiBzaG91bGQgaGF2ZSB3aGF0J3MgaW4gQS4gRnVydGhlcm1vcmUgdGhlIHRpbWVzdGFtcCBpbgorICAgIEIgaXMgc2V0IHRvIDE3OjU1OjAwLCBpdCBzaG91bGQgYWxzbyBiZSBwaWNrZWQgdXAuCisgICogSSdtIGRlZmluaXRlbHkgaW4gY2hhbmdlbG9nIEEuCisKKyAtLSBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+ICBTdW4sIDE4IEFwciAyMDEwIDE3OjU0OjUyICswMjAwCisKK3Rlc3QgKDEuMS0xK2NoYW5nZTEpIHVuc3RhYmxlOyB1cmdlbmN5PWhpZ2gKKworICAqIFRoaXMgZW50cnkgaXMgZXZlcnl3aGVyZSBidXQgdGhlIGxhc3QgbGluZSBpcyBkaWZmZXJlbnQgaW4gQi4gVGhlCisgICAgbWVyZ2VkIHZlcnNpb24gc2hvdWxkIGhhdmUgd2hhdCdzIGluIEIuIEZ1cnRoZXJtb3JlIHRoZSB1cmdlbmN5IGluCisgICAgQSBpcyBzZXQgdG8gaGlnaCwgaXQgc2hvdWxkIGFsc28gYmUgcGlja2VkIHVwLgorICAqIEknbSBkZWZpbml0ZWx5IGluIGNoYW5nZWxvZyBCLgorCisgLS0gUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPiAgU3VuLCAxOCBBcHIgMjAxMCAxNzo1MDo1OCArMDIwMAorCit0ZXN0ICgxLjAtMytiKSBleHBlcmltZW50YWw7IHVyZ2VuY3k9bG93CisKKyAgKiBUaGlzIGVudHJ5IGlzIHByZXNlbnQgaW4gQiBvbmx5LiBJdCdzIGNvbnNpZGVyZWQgbmV3IGFuZCBzaG91bGQgdGh1cworICAgIGJlIGluIHRoZSBtZXJnZWQgY2hhbmdlbG9nLgorCisgLS0gUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPiAgU3VuLCAxOCBBcHIgMjAxMCAxNzo0NzozOCArMDIwMAorCit0ZXN0ICgxLjAtMythKSBleHBlcmltZW50YWw7IHVyZ2VuY3k9bG93CisKKyAgKiBUaGlzIGVudHJ5IGlzIHByZXNlbnQgaW4gQSBvbmx5LiBJdCdzIGNvbnNpZGVyZWQgbmV3IGFuZCBzaG91bGQgdGh1cworICAgIGJlIGluIHRoZSBtZXJnZWQgY2hhbmdlbG9nLgorCisgLS0gUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPiAgU3VuLCAxOCBBcHIgMjAxMCAxNzo0NDozOSArMDIwMAorCit0ZXN0ICgxLjAtMSkgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBJbml0aWFsIHJlbGVhc2UuIChDbG9zZXM6ICNYWFhYWFgpCisKKyAtLSBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+ICBTdW4sIDE4IEFwciAyMDEwIDE3OjM3OjQ2ICswMjAwCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvdC85MTBfbWVyZ2VfY2hhbmdlbG9ncy9jaC1tZXJnZWQtYmFzaWMgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvdC85MTBfbWVyZ2VfY2hhbmdlbG9ncy9jaC1tZXJnZWQtYmFzaWMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZWU1ZDg0MwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90LzkxMF9tZXJnZV9jaGFuZ2Vsb2dzL2NoLW1lcmdlZC1iYXNpYwpAQCAtMCwwICsxLDEzNiBAQAordGVzdCAoMi4wLTEpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogVmVyc2lvbiBCIHdpdGggMi4wLTF+ZXhwMyBjb250YWlucyBvbmx5IHVwIHRvIGxpbmUgMyB3aGlsZSB2ZXJzaW9uIEEKKyAgICB3aXRoIDIuMC0xIGNvbnRhaW5zIHRoZSA1IGxpbmVzLiBUaGUgcmVzdWx0aW5nIHZlcnNpb24gc2hvdWxkIGhhdmUgdGhlCisgICAgNSBsaW5lcyB3aXRob3V0IGNvbmZsaWN0IHdpdGggQWxnb3JpdGhtOjpNZXJnZSBhbmQgYSBjb25mbGljdCB3aXRob3V0LgorICAqIExpbmUgMS4KKyAgKiBMaW5lIDIuCisgICogTGluZSAzLgorICAqIExpbmUgNC4KKyAgKiBMaW5lIDUuCisKKyAtLSBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+ICBTdW4sIDE4IEFwciAyMDEwIDE4OjIzOjA5ICswMjAwCisKK3Rlc3QgKDIuMC0xfmV4cDMpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogVmVyc2lvbiBCIHdpdGggMi4wLTF+ZXhwMyBjb250YWlucyBvbmx5IHVwIHRvIGxpbmUgMyB3aGlsZSB2ZXJzaW9uIEEKKyAgICB3aXRoIDIuMC0xIGNvbnRhaW5zIHRoZSA1IGxpbmVzLiBUaGUgcmVzdWx0aW5nIHZlcnNpb24gc2hvdWxkIGhhdmUgdGhlCisgICAgNSBsaW5lcyB3aXRob3V0IGNvbmZsaWN0IHdpdGggQWxnb3JpdGhtOjpNZXJnZSBhbmQgYSBjb25mbGljdCB3aXRob3V0LgorICAqIExpbmUgMS4KKyAgKiBMaW5lIDIuCisgICogTGluZSAzLgorCisgLS0gUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPiAgU3VuLCAxOCBBcHIgMjAxMCAxODoyMzowOSArMDIwMAorCit0ZXN0ICgxLjItMikgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBUaGlzIGlzIHRoZSBsYXN0IGVudHJ5IGluIGNoYW5nZWxvZyBPLgorCisgLS0gUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPiAgU3VuLCAxOCBBcHIgMjAxMCAxODoxODo1MCArMDIwMAorCit0ZXN0ICgxLjItMSkgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKzw8PDw8PDwKKyAgKiBUaGlzIGVudHJ5IHNob3VsZCBub3QgaGF2ZSBjb25mbGljdHMgd2l0aCBBbGdvcml0aG06Ok1lcmdlIGluc3RhbGxlZC4KKyAgKiBDaGFuZ2Vsb2cgQiBzaG91bGQgYSBoYXZlIHN1cHBsZW1lbnRhcnkgbGluZSBhYm92ZSB0aGlzIG9uZS4KKyAgKiBQaSBpcyAzLjE0IGlzIHRydWUgZm9yIGFsbCBjaGFuZ2Vsb2dzLgorICAqIENoYW5nZWxvZyBBIHNob3VsZCBoYXZlIGEgc3VwcGxlbWVudGFyeSBsaW5lCisgICAgc29tZXdoZXJlIGluIHRoaXMgc3ViLWxpc3QKKyAgICAtIFRoZSB3ZWF0aGVyIGlzIG5pY2UKKyAgICAtIFJlYWxseSBubyBjbG91ZHMgaW4gdGhlIHNreQorICAgIC0gWWV0IEknbSBoYWNraW5nIG9uIGRwa2cKKyAgICAtIFdoYXQgZG9lcyB0aGF0IG1lYW4gYWJvdXQgbWU/CisgICogVGhpcyBsaW5lIHNob3VsZCBiZSBzaGFyZWQgYnV0IHRoZSBuZXh0IG9uZSBpcyBkcm9wcGVkIGluIEIgb25seS4KKyAgKiBJZiBJJ20gaGVyZSBpdCdzIGJlY2F1c2UgdGhlIGNoYW5nZWxvZyBpcyBub3QgQiAoSSBzaG91bGQgbm90IGFwcGVhcgorICAgIGluIHRoZSByZXN1bHRpbmcgY2hhbmdlbG9nKS4KKz09PT09PT0KKyAgKiBUaGlzIGVudHJ5IHNob3VsZCBub3QgaGF2ZSBjb25mbGljdHMgd2l0aCBBbGdvcml0aG06Ok1lcmdlIGluc3RhbGxlZC4KKyAgKiBJJ20gdGhlIGFkZGVkIGxpbmUgbWVudGlvbm5lZCBiZWxvdyAoQi1vbmx5KS4KKyAgKiBDaGFuZ2Vsb2cgQiBzaG91bGQgYSBoYXZlIHN1cHBsZW1lbnRhcnkgbGluZSBhYm92ZSB0aGlzIG9uZS4KKyAgKiBQaSBpcyAzLjE0IGlzIHRydWUgZm9yIGFsbCBjaGFuZ2Vsb2dzLgorICAqIENoYW5nZWxvZyBBIHNob3VsZCBoYXZlIGEgc3VwcGxlbWVudGFyeSBsaW5lCisgICAgc29tZXdoZXJlIGluIHRoaXMgc3ViLWxpc3QKKyAgICAtIFRoZSB3ZWF0aGVyIGlzIG5pY2UKKyAgICAtIFlldCBJJ20gaGFja2luZyBvbiBkcGtnCisgICAgLSBXaGF0IGRvZXMgdGhhdCBtZWFuIGFib3V0IG1lPworICAqIFRoaXMgbGluZSBzaG91bGQgYmUgc2hhcmVkIGJ1dCB0aGUgbmV4dCBvbmUgaXMgZHJvcHBlZCBpbiBCIG9ubHkuCis+Pj4+Pj4+CisKKyAtLSBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+ICBTdW4sIDE4IEFwciAyMDEwIDE4OjA5OjA3ICswMjAwCisKK3Rlc3QgKDEuMS0xK2NvbmZsaWN0MikgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKzw8PDw8PDwKKyAgKiBUaGlzIGVudHJ5IGhhcyBhIGNvbmZsaWN0IG9uIHRoZSBuZXh0IGxpbmUuCisgICogSSdtIGluIGNoYW5nZWxvZyBBLgorICAqIFRoaXMgbGluZSBpcyB0aGUgc2FtZSBpbiBhbGwgMyB2ZXJzaW9ucy4KKz09PT09PT0KKyAgKiBUaGlzIGVudHJ5IGhhcyBhIGNvbmZsaWN0IG9uIHRoZSBuZXh0IGxpbmUuCisgICogSSdtIGluIGNoYW5nZWxvZyBCLgorICAqIFRoaXMgbGluZSBpcyB0aGUgc2FtZSBpbiBhbGwgMyB2ZXJzaW9ucy4KKz4+Pj4+Pj4KKworIC0tIFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4gIFN1biwgMTggQXByIDIwMTAgMTg6MDc6NDAgKzAyMDAKKworPDw8PDw8PAordGVzdCAoMS4xLTErY29uZmxpY3QxKSBleHBlcmltZW50YWw7IHVyZ2VuY3k9bG93Cis9PT09PT09Cit0ZXN0ICgxLjEtMStjb25mbGljdDEpIHVuc3RhYmxlOyB1cmdlbmN5PWhpZ2gKKz4+Pj4+Pj4KKworICAqIFRoaXMgZW50cnkgaGFzIGNvbmZsaWN0cyBvbiB0aGUgaGVhZGVyIGxpbmU6IEEgd2FudHMgZGlzdHJpYnV0aW9uCisgICAgZXhwZXJpbWVudGFsIChpbnN0ZWFkIG9mIHVuc3RhYmxlKSBhbmQgQiB3YW50cyB1cmdlbmN5PWhpZ2ggKGluc3RlYWQKKyAgICBvZiBsb3cpLgorICAqIEJ1dCBpdCBhbHNvIGhhcyBhIGNvbmZsaWN0IG9uIHRoZSB0cmFpbGVyIGxpbmUuIEEgY2hhbmdlZCB0aGUKKyAgICB0aW1lc3RhbXAgdG8gMTg6MDU6MDAgYW5kIEIgdG8gMTg6MDY6MDAuCisKKzw8PDw8PDwKKyAtLSBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+ICBTdW4sIDE4IEFwciAyMDEwIDE4OjA1OjAwICswMjAwCis9PT09PT09CisgLS0gUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPiAgU3VuLCAxOCBBcHIgMjAxMCAxODowNjowMCArMDIwMAorPj4+Pj4+PgorCit0ZXN0ICgxLjEtMStjaGFuZ2UyKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIFRoaXMgZW50cnkgaXMgZXZlcnl3aGVyZSBidXQgdGhlIGxhc3QgbGluZSBpcyBkaWZmZXJlbnQgaW4gQS4gVGhlCisgICAgbWVyZ2VkIHZlcnNpb24gc2hvdWxkIGhhdmUgd2hhdCdzIGluIEEuIEZ1cnRoZXJtb3JlIHRoZSB0aW1lc3RhbXAgaW4KKyAgICBCIGlzIHNldCB0byAxNzo1NTowMCwgaXQgc2hvdWxkIGFsc28gYmUgcGlja2VkIHVwLgorICAqIEknbSBkZWZpbml0ZWx5IGluIGNoYW5nZWxvZyBBLgorCisgLS0gUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPiAgU3VuLCAxOCBBcHIgMjAxMCAxNzo1NDo1MiArMDIwMAorCit0ZXN0ICgxLjEtMStjaGFuZ2UxKSB1bnN0YWJsZTsgdXJnZW5jeT1oaWdoCisKKzw8PDw8PDwKKyAgKiBUaGlzIGVudHJ5IGlzIGV2ZXJ5d2hlcmUgYnV0IHRoZSBsYXN0IGxpbmUgaXMgZGlmZmVyZW50IGluIEIuIFRoZQorICAgIG1lcmdlZCB2ZXJzaW9uIHNob3VsZCBoYXZlIHdoYXQncyBpbiBCLiBGdXJ0aGVybW9yZSB0aGUgdXJnZW5jeSBpbgorICAgIEEgaXMgc2V0IHRvIGhpZ2gsIGl0IHNob3VsZCBhbHNvIGJlIHBpY2tlZCB1cC4KKyAgKiBJJ20gbm90IGluIGNoYW5nZWxvZyBCLgorPT09PT09PQorICAqIFRoaXMgZW50cnkgaXMgZXZlcnl3aGVyZSBidXQgdGhlIGxhc3QgbGluZSBpcyBkaWZmZXJlbnQgaW4gQi4gVGhlCisgICAgbWVyZ2VkIHZlcnNpb24gc2hvdWxkIGhhdmUgd2hhdCdzIGluIEIuIEZ1cnRoZXJtb3JlIHRoZSB1cmdlbmN5IGluCisgICAgQSBpcyBzZXQgdG8gaGlnaCwgaXQgc2hvdWxkIGFsc28gYmUgcGlja2VkIHVwLgorICAqIEknbSBkZWZpbml0ZWx5IGluIGNoYW5nZWxvZyBCLgorPj4+Pj4+PgorCisgLS0gUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPiAgU3VuLCAxOCBBcHIgMjAxMCAxNzo1MDo1OCArMDIwMAorCit0ZXN0ICgxLjAtMytiKSBleHBlcmltZW50YWw7IHVyZ2VuY3k9bG93CisKKyAgKiBUaGlzIGVudHJ5IGlzIHByZXNlbnQgaW4gQiBvbmx5LiBJdCdzIGNvbnNpZGVyZWQgbmV3IGFuZCBzaG91bGQgdGh1cworICAgIGJlIGluIHRoZSBtZXJnZWQgY2hhbmdlbG9nLgorCisgLS0gUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPiAgU3VuLCAxOCBBcHIgMjAxMCAxNzo0NzozOCArMDIwMAorCit0ZXN0ICgxLjAtMythKSBleHBlcmltZW50YWw7IHVyZ2VuY3k9bG93CisKKyAgKiBUaGlzIGVudHJ5IGlzIHByZXNlbnQgaW4gQSBvbmx5LiBJdCdzIGNvbnNpZGVyZWQgbmV3IGFuZCBzaG91bGQgdGh1cworICAgIGJlIGluIHRoZSBtZXJnZWQgY2hhbmdlbG9nLgorCisgLS0gUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPiAgU3VuLCAxOCBBcHIgMjAxMCAxNzo0NDozOSArMDIwMAorCit0ZXN0ICgxLjAtMSkgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBJbml0aWFsIHJlbGVhc2UuIChDbG9zZXM6ICNYWFhYWFgpCisKKyAtLSBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+ICBTdW4sIDE4IEFwciAyMDEwIDE3OjM3OjQ2ICswMjAwCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvdC85MTBfbWVyZ2VfY2hhbmdlbG9ncy9jaC1tZXJnZWQtcHIgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvdC85MTBfbWVyZ2VfY2hhbmdlbG9ncy9jaC1tZXJnZWQtcHIKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODYyZDk3NwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90LzkxMF9tZXJnZV9jaGFuZ2Vsb2dzL2NoLW1lcmdlZC1wcgpAQCAtMCwwICsxLDEwNiBAQAorPDw8PDw8PAordGVzdCAoMi4wLTEpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworPT09PT09PQordGVzdCAoMi4wLTF+ZXhwMykgdW5zdGFibGU7IHVyZ2VuY3k9bG93Cis+Pj4+Pj4+CisKKyAgKiBWZXJzaW9uIEIgd2l0aCAyLjAtMX5leHAzIGNvbnRhaW5zIG9ubHkgdXAgdG8gbGluZSAzIHdoaWxlIHZlcnNpb24gQQorICAgIHdpdGggMi4wLTEgY29udGFpbnMgdGhlIDUgbGluZXMuIFRoZSByZXN1bHRpbmcgdmVyc2lvbiBzaG91bGQgaGF2ZSB0aGUKKyAgICA1IGxpbmVzIHdpdGhvdXQgY29uZmxpY3Qgd2l0aCBBbGdvcml0aG06Ok1lcmdlIGFuZCBhIGNvbmZsaWN0IHdpdGhvdXQuCisgICogTGluZSAxLgorICAqIExpbmUgMi4KKyAgKiBMaW5lIDMuCisgICogTGluZSA0LgorICAqIExpbmUgNS4KKworIC0tIFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4gIFN1biwgMTggQXByIDIwMTAgMTg6MjM6MDkgKzAyMDAKKwordGVzdCAoMS4yLTIpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogVGhpcyBpcyB0aGUgbGFzdCBlbnRyeSBpbiBjaGFuZ2Vsb2cgTy4KKworIC0tIFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4gIFN1biwgMTggQXByIDIwMTAgMTg6MTg6NTAgKzAyMDAKKwordGVzdCAoMS4yLTEpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogVGhpcyBlbnRyeSBzaG91bGQgbm90IGhhdmUgY29uZmxpY3RzIHdpdGggQWxnb3JpdGhtOjpNZXJnZSBpbnN0YWxsZWQuCisgICogSSdtIHRoZSBhZGRlZCBsaW5lIG1lbnRpb25uZWQgYmVsb3cgKEItb25seSkuCisgICogQ2hhbmdlbG9nIEIgc2hvdWxkIGEgaGF2ZSBzdXBwbGVtZW50YXJ5IGxpbmUgYWJvdmUgdGhpcyBvbmUuCisgICogUGkgaXMgMy4xNCBpcyB0cnVlIGZvciBhbGwgY2hhbmdlbG9ncy4KKyAgKiBDaGFuZ2Vsb2cgQSBzaG91bGQgaGF2ZSBhIHN1cHBsZW1lbnRhcnkgbGluZQorICAgIHNvbWV3aGVyZSBpbiB0aGlzIHN1Yi1saXN0CisgICAgLSBUaGUgd2VhdGhlciBpcyBuaWNlCisgICAgLSBSZWFsbHkgbm8gY2xvdWRzIGluIHRoZSBza3kKKyAgICAtIFlldCBJJ20gaGFja2luZyBvbiBkcGtnCisgICAgLSBXaGF0IGRvZXMgdGhhdCBtZWFuIGFib3V0IG1lPworICAqIFRoaXMgbGluZSBzaG91bGQgYmUgc2hhcmVkIGJ1dCB0aGUgbmV4dCBvbmUgaXMgZHJvcHBlZCBpbiBCIG9ubHkuCisKKyAtLSBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+ICBTdW4sIDE4IEFwciAyMDEwIDE4OjA5OjA3ICswMjAwCisKK3Rlc3QgKDEuMS0xK2NvbmZsaWN0MikgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBUaGlzIGVudHJ5IGhhcyBhIGNvbmZsaWN0IG9uIHRoZSBuZXh0IGxpbmUuCis8PDw8PDw8CisgICogSSdtIGluIGNoYW5nZWxvZyBBLgorPT09PT09PQorICAqIEknbSBpbiBjaGFuZ2Vsb2cgQi4KKz4+Pj4+Pj4KKyAgKiBUaGlzIGxpbmUgaXMgdGhlIHNhbWUgaW4gYWxsIDMgdmVyc2lvbnMuCisKKyAtLSBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+ICBTdW4sIDE4IEFwciAyMDEwIDE4OjA3OjQwICswMjAwCisKKzw8PDw8PDwKK3Rlc3QgKDEuMS0xK2NvbmZsaWN0MSkgZXhwZXJpbWVudGFsOyB1cmdlbmN5PWxvdworPT09PT09PQordGVzdCAoMS4xLTErY29uZmxpY3QxKSB1bnN0YWJsZTsgdXJnZW5jeT1oaWdoCis+Pj4+Pj4+CisKKyAgKiBUaGlzIGVudHJ5IGhhcyBjb25mbGljdHMgb24gdGhlIGhlYWRlciBsaW5lOiBBIHdhbnRzIGRpc3RyaWJ1dGlvbgorICAgIGV4cGVyaW1lbnRhbCAoaW5zdGVhZCBvZiB1bnN0YWJsZSkgYW5kIEIgd2FudHMgdXJnZW5jeT1oaWdoIChpbnN0ZWFkCisgICAgb2YgbG93KS4KKyAgKiBCdXQgaXQgYWxzbyBoYXMgYSBjb25mbGljdCBvbiB0aGUgdHJhaWxlciBsaW5lLiBBIGNoYW5nZWQgdGhlCisgICAgdGltZXN0YW1wIHRvIDE4OjA1OjAwIGFuZCBCIHRvIDE4OjA2OjAwLgorCis8PDw8PDw8CisgLS0gUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPiAgU3VuLCAxOCBBcHIgMjAxMCAxODowNTowMCArMDIwMAorPT09PT09PQorIC0tIFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4gIFN1biwgMTggQXByIDIwMTAgMTg6MDY6MDAgKzAyMDAKKz4+Pj4+Pj4KKwordGVzdCAoMS4xLTErY2hhbmdlMikgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBUaGlzIGVudHJ5IGlzIGV2ZXJ5d2hlcmUgYnV0IHRoZSBsYXN0IGxpbmUgaXMgZGlmZmVyZW50IGluIEEuIFRoZQorICAgIG1lcmdlZCB2ZXJzaW9uIHNob3VsZCBoYXZlIHdoYXQncyBpbiBBLiBGdXJ0aGVybW9yZSB0aGUgdGltZXN0YW1wIGluCisgICAgQiBpcyBzZXQgdG8gMTc6NTU6MDAsIGl0IHNob3VsZCBhbHNvIGJlIHBpY2tlZCB1cC4KKyAgKiBJJ20gZGVmaW5pdGVseSBpbiBjaGFuZ2Vsb2cgQS4KKworIC0tIFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4gIFN1biwgMTggQXByIDIwMTAgMTc6NTQ6NTIgKzAyMDAKKwordGVzdCAoMS4xLTErY2hhbmdlMSkgdW5zdGFibGU7IHVyZ2VuY3k9aGlnaAorCisgICogVGhpcyBlbnRyeSBpcyBldmVyeXdoZXJlIGJ1dCB0aGUgbGFzdCBsaW5lIGlzIGRpZmZlcmVudCBpbiBCLiBUaGUKKyAgICBtZXJnZWQgdmVyc2lvbiBzaG91bGQgaGF2ZSB3aGF0J3MgaW4gQi4gRnVydGhlcm1vcmUgdGhlIHVyZ2VuY3kgaW4KKyAgICBBIGlzIHNldCB0byBoaWdoLCBpdCBzaG91bGQgYWxzbyBiZSBwaWNrZWQgdXAuCisgICogSSdtIGRlZmluaXRlbHkgaW4gY2hhbmdlbG9nIEIuCisKKyAtLSBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+ICBTdW4sIDE4IEFwciAyMDEwIDE3OjUwOjU4ICswMjAwCisKK3Rlc3QgKDEuMC0zK2IpIGV4cGVyaW1lbnRhbDsgdXJnZW5jeT1sb3cKKworICAqIFRoaXMgZW50cnkgaXMgcHJlc2VudCBpbiBCIG9ubHkuIEl0J3MgY29uc2lkZXJlZCBuZXcgYW5kIHNob3VsZCB0aHVzCisgICAgYmUgaW4gdGhlIG1lcmdlZCBjaGFuZ2Vsb2cuCisKKyAtLSBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+ICBTdW4sIDE4IEFwciAyMDEwIDE3OjQ3OjM4ICswMjAwCisKK3Rlc3QgKDEuMC0zK2EpIGV4cGVyaW1lbnRhbDsgdXJnZW5jeT1sb3cKKworICAqIFRoaXMgZW50cnkgaXMgcHJlc2VudCBpbiBBIG9ubHkuIEl0J3MgY29uc2lkZXJlZCBuZXcgYW5kIHNob3VsZCB0aHVzCisgICAgYmUgaW4gdGhlIG1lcmdlZCBjaGFuZ2Vsb2cuCisKKyAtLSBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+ICBTdW4sIDE4IEFwciAyMDEwIDE3OjQ0OjM5ICswMjAwCisKK3Rlc3QgKDEuMC0xKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIEluaXRpYWwgcmVsZWFzZS4gKENsb3NlczogI1hYWFhYWCkKKworIC0tIFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4gIFN1biwgMTggQXByIDIwMTAgMTc6Mzc6NDYgKzAyMDAKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90LzkxMF9tZXJnZV9jaGFuZ2Vsb2dzL2NoLW1lcmdlZC1wci1iYXNpYyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90LzkxMF9tZXJnZV9jaGFuZ2Vsb2dzL2NoLW1lcmdlZC1wci1iYXNpYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42Yjg1ZmE2Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3QvOTEwX21lcmdlX2NoYW5nZWxvZ3MvY2gtbWVyZ2VkLXByLWJhc2ljCkBAIC0wLDAgKzEsMTM4IEBACis8PDw8PDw8Cit0ZXN0ICgyLjAtMSkgdW5zdGFibGU7IHVyZ2VuY3k9bG93Cis9PT09PT09Cit0ZXN0ICgyLjAtMX5leHAzKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKz4+Pj4+Pj4KKworPDw8PDw8PAorICAqIFZlcnNpb24gQiB3aXRoIDIuMC0xfmV4cDMgY29udGFpbnMgb25seSB1cCB0byBsaW5lIDMgd2hpbGUgdmVyc2lvbiBBCisgICAgd2l0aCAyLjAtMSBjb250YWlucyB0aGUgNSBsaW5lcy4gVGhlIHJlc3VsdGluZyB2ZXJzaW9uIHNob3VsZCBoYXZlIHRoZQorICAgIDUgbGluZXMgd2l0aG91dCBjb25mbGljdCB3aXRoIEFsZ29yaXRobTo6TWVyZ2UgYW5kIGEgY29uZmxpY3Qgd2l0aG91dC4KKyAgKiBMaW5lIDEuCisgICogTGluZSAyLgorICAqIExpbmUgMy4KKyAgKiBMaW5lIDQuCisgICogTGluZSA1LgorPT09PT09PQorICAqIFZlcnNpb24gQiB3aXRoIDIuMC0xfmV4cDMgY29udGFpbnMgb25seSB1cCB0byBsaW5lIDMgd2hpbGUgdmVyc2lvbiBBCisgICAgd2l0aCAyLjAtMSBjb250YWlucyB0aGUgNSBsaW5lcy4gVGhlIHJlc3VsdGluZyB2ZXJzaW9uIHNob3VsZCBoYXZlIHRoZQorICAgIDUgbGluZXMgd2l0aG91dCBjb25mbGljdCB3aXRoIEFsZ29yaXRobTo6TWVyZ2UgYW5kIGEgY29uZmxpY3Qgd2l0aG91dC4KKyAgKiBMaW5lIDEuCisgICogTGluZSAyLgorICAqIExpbmUgMy4KKz4+Pj4+Pj4KKworIC0tIFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4gIFN1biwgMTggQXByIDIwMTAgMTg6MjM6MDkgKzAyMDAKKwordGVzdCAoMS4yLTIpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogVGhpcyBpcyB0aGUgbGFzdCBlbnRyeSBpbiBjaGFuZ2Vsb2cgTy4KKworIC0tIFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4gIFN1biwgMTggQXByIDIwMTAgMTg6MTg6NTAgKzAyMDAKKwordGVzdCAoMS4yLTEpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCis8PDw8PDw8CisgICogVGhpcyBlbnRyeSBzaG91bGQgbm90IGhhdmUgY29uZmxpY3RzIHdpdGggQWxnb3JpdGhtOjpNZXJnZSBpbnN0YWxsZWQuCisgICogQ2hhbmdlbG9nIEIgc2hvdWxkIGEgaGF2ZSBzdXBwbGVtZW50YXJ5IGxpbmUgYWJvdmUgdGhpcyBvbmUuCisgICogUGkgaXMgMy4xNCBpcyB0cnVlIGZvciBhbGwgY2hhbmdlbG9ncy4KKyAgKiBDaGFuZ2Vsb2cgQSBzaG91bGQgaGF2ZSBhIHN1cHBsZW1lbnRhcnkgbGluZQorICAgIHNvbWV3aGVyZSBpbiB0aGlzIHN1Yi1saXN0CisgICAgLSBUaGUgd2VhdGhlciBpcyBuaWNlCisgICAgLSBSZWFsbHkgbm8gY2xvdWRzIGluIHRoZSBza3kKKyAgICAtIFlldCBJJ20gaGFja2luZyBvbiBkcGtnCisgICAgLSBXaGF0IGRvZXMgdGhhdCBtZWFuIGFib3V0IG1lPworICAqIFRoaXMgbGluZSBzaG91bGQgYmUgc2hhcmVkIGJ1dCB0aGUgbmV4dCBvbmUgaXMgZHJvcHBlZCBpbiBCIG9ubHkuCisgICogSWYgSSdtIGhlcmUgaXQncyBiZWNhdXNlIHRoZSBjaGFuZ2Vsb2cgaXMgbm90IEIgKEkgc2hvdWxkIG5vdCBhcHBlYXIKKyAgICBpbiB0aGUgcmVzdWx0aW5nIGNoYW5nZWxvZykuCis9PT09PT09CisgICogVGhpcyBlbnRyeSBzaG91bGQgbm90IGhhdmUgY29uZmxpY3RzIHdpdGggQWxnb3JpdGhtOjpNZXJnZSBpbnN0YWxsZWQuCisgICogSSdtIHRoZSBhZGRlZCBsaW5lIG1lbnRpb25uZWQgYmVsb3cgKEItb25seSkuCisgICogQ2hhbmdlbG9nIEIgc2hvdWxkIGEgaGF2ZSBzdXBwbGVtZW50YXJ5IGxpbmUgYWJvdmUgdGhpcyBvbmUuCisgICogUGkgaXMgMy4xNCBpcyB0cnVlIGZvciBhbGwgY2hhbmdlbG9ncy4KKyAgKiBDaGFuZ2Vsb2cgQSBzaG91bGQgaGF2ZSBhIHN1cHBsZW1lbnRhcnkgbGluZQorICAgIHNvbWV3aGVyZSBpbiB0aGlzIHN1Yi1saXN0CisgICAgLSBUaGUgd2VhdGhlciBpcyBuaWNlCisgICAgLSBZZXQgSSdtIGhhY2tpbmcgb24gZHBrZworICAgIC0gV2hhdCBkb2VzIHRoYXQgbWVhbiBhYm91dCBtZT8KKyAgKiBUaGlzIGxpbmUgc2hvdWxkIGJlIHNoYXJlZCBidXQgdGhlIG5leHQgb25lIGlzIGRyb3BwZWQgaW4gQiBvbmx5LgorPj4+Pj4+PgorCisgLS0gUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPiAgU3VuLCAxOCBBcHIgMjAxMCAxODowOTowNyArMDIwMAorCit0ZXN0ICgxLjEtMStjb25mbGljdDIpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCis8PDw8PDw8CisgICogVGhpcyBlbnRyeSBoYXMgYSBjb25mbGljdCBvbiB0aGUgbmV4dCBsaW5lLgorICAqIEknbSBpbiBjaGFuZ2Vsb2cgQS4KKyAgKiBUaGlzIGxpbmUgaXMgdGhlIHNhbWUgaW4gYWxsIDMgdmVyc2lvbnMuCis9PT09PT09CisgICogVGhpcyBlbnRyeSBoYXMgYSBjb25mbGljdCBvbiB0aGUgbmV4dCBsaW5lLgorICAqIEknbSBpbiBjaGFuZ2Vsb2cgQi4KKyAgKiBUaGlzIGxpbmUgaXMgdGhlIHNhbWUgaW4gYWxsIDMgdmVyc2lvbnMuCis+Pj4+Pj4+CisKKyAtLSBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+ICBTdW4sIDE4IEFwciAyMDEwIDE4OjA3OjQwICswMjAwCisKKzw8PDw8PDwKK3Rlc3QgKDEuMS0xK2NvbmZsaWN0MSkgZXhwZXJpbWVudGFsOyB1cmdlbmN5PWxvdworPT09PT09PQordGVzdCAoMS4xLTErY29uZmxpY3QxKSB1bnN0YWJsZTsgdXJnZW5jeT1oaWdoCis+Pj4+Pj4+CisKKyAgKiBUaGlzIGVudHJ5IGhhcyBjb25mbGljdHMgb24gdGhlIGhlYWRlciBsaW5lOiBBIHdhbnRzIGRpc3RyaWJ1dGlvbgorICAgIGV4cGVyaW1lbnRhbCAoaW5zdGVhZCBvZiB1bnN0YWJsZSkgYW5kIEIgd2FudHMgdXJnZW5jeT1oaWdoIChpbnN0ZWFkCisgICAgb2YgbG93KS4KKyAgKiBCdXQgaXQgYWxzbyBoYXMgYSBjb25mbGljdCBvbiB0aGUgdHJhaWxlciBsaW5lLiBBIGNoYW5nZWQgdGhlCisgICAgdGltZXN0YW1wIHRvIDE4OjA1OjAwIGFuZCBCIHRvIDE4OjA2OjAwLgorCis8PDw8PDw8CisgLS0gUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPiAgU3VuLCAxOCBBcHIgMjAxMCAxODowNTowMCArMDIwMAorPT09PT09PQorIC0tIFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4gIFN1biwgMTggQXByIDIwMTAgMTg6MDY6MDAgKzAyMDAKKz4+Pj4+Pj4KKwordGVzdCAoMS4xLTErY2hhbmdlMikgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBUaGlzIGVudHJ5IGlzIGV2ZXJ5d2hlcmUgYnV0IHRoZSBsYXN0IGxpbmUgaXMgZGlmZmVyZW50IGluIEEuIFRoZQorICAgIG1lcmdlZCB2ZXJzaW9uIHNob3VsZCBoYXZlIHdoYXQncyBpbiBBLiBGdXJ0aGVybW9yZSB0aGUgdGltZXN0YW1wIGluCisgICAgQiBpcyBzZXQgdG8gMTc6NTU6MDAsIGl0IHNob3VsZCBhbHNvIGJlIHBpY2tlZCB1cC4KKyAgKiBJJ20gZGVmaW5pdGVseSBpbiBjaGFuZ2Vsb2cgQS4KKworIC0tIFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4gIFN1biwgMTggQXByIDIwMTAgMTc6NTQ6NTIgKzAyMDAKKwordGVzdCAoMS4xLTErY2hhbmdlMSkgdW5zdGFibGU7IHVyZ2VuY3k9aGlnaAorCis8PDw8PDw8CisgICogVGhpcyBlbnRyeSBpcyBldmVyeXdoZXJlIGJ1dCB0aGUgbGFzdCBsaW5lIGlzIGRpZmZlcmVudCBpbiBCLiBUaGUKKyAgICBtZXJnZWQgdmVyc2lvbiBzaG91bGQgaGF2ZSB3aGF0J3MgaW4gQi4gRnVydGhlcm1vcmUgdGhlIHVyZ2VuY3kgaW4KKyAgICBBIGlzIHNldCB0byBoaWdoLCBpdCBzaG91bGQgYWxzbyBiZSBwaWNrZWQgdXAuCisgICogSSdtIG5vdCBpbiBjaGFuZ2Vsb2cgQi4KKz09PT09PT0KKyAgKiBUaGlzIGVudHJ5IGlzIGV2ZXJ5d2hlcmUgYnV0IHRoZSBsYXN0IGxpbmUgaXMgZGlmZmVyZW50IGluIEIuIFRoZQorICAgIG1lcmdlZCB2ZXJzaW9uIHNob3VsZCBoYXZlIHdoYXQncyBpbiBCLiBGdXJ0aGVybW9yZSB0aGUgdXJnZW5jeSBpbgorICAgIEEgaXMgc2V0IHRvIGhpZ2gsIGl0IHNob3VsZCBhbHNvIGJlIHBpY2tlZCB1cC4KKyAgKiBJJ20gZGVmaW5pdGVseSBpbiBjaGFuZ2Vsb2cgQi4KKz4+Pj4+Pj4KKworIC0tIFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4gIFN1biwgMTggQXByIDIwMTAgMTc6NTA6NTggKzAyMDAKKwordGVzdCAoMS4wLTMrYikgZXhwZXJpbWVudGFsOyB1cmdlbmN5PWxvdworCisgICogVGhpcyBlbnRyeSBpcyBwcmVzZW50IGluIEIgb25seS4gSXQncyBjb25zaWRlcmVkIG5ldyBhbmQgc2hvdWxkIHRodXMKKyAgICBiZSBpbiB0aGUgbWVyZ2VkIGNoYW5nZWxvZy4KKworIC0tIFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4gIFN1biwgMTggQXByIDIwMTAgMTc6NDc6MzggKzAyMDAKKwordGVzdCAoMS4wLTMrYSkgZXhwZXJpbWVudGFsOyB1cmdlbmN5PWxvdworCisgICogVGhpcyBlbnRyeSBpcyBwcmVzZW50IGluIEEgb25seS4gSXQncyBjb25zaWRlcmVkIG5ldyBhbmQgc2hvdWxkIHRodXMKKyAgICBiZSBpbiB0aGUgbWVyZ2VkIGNoYW5nZWxvZy4KKworIC0tIFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4gIFN1biwgMTggQXByIDIwMTAgMTc6NDQ6MzkgKzAyMDAKKwordGVzdCAoMS4wLTEpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogSW5pdGlhbCByZWxlYXNlLiAoQ2xvc2VzOiAjWFhYWFhYKQorCisgLS0gUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPiAgU3VuLCAxOCBBcHIgMjAxMCAxNzozNzo0NiArMDIwMApkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3QvOTEwX21lcmdlX2NoYW5nZWxvZ3MvY2gtb2xkIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3QvOTEwX21lcmdlX2NoYW5nZWxvZ3MvY2gtb2xkCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjEyZWUyMjQKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3NjcmlwdHMvdC85MTBfbWVyZ2VfY2hhbmdlbG9ncy9jaC1vbGQKQEAgLTAsMCArMSw4NSBAQAordGVzdCAoMS4yLTIpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogVGhpcyBpcyB0aGUgbGFzdCBlbnRyeSBpbiBjaGFuZ2Vsb2cgTy4KKworIC0tIFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4gIFN1biwgMTggQXByIDIwMTAgMTg6MTg6NTAgKzAyMDAKKwordGVzdCAoMS4yLTEpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogVGhpcyBlbnRyeSBzaG91bGQgbm90IGhhdmUgY29uZmxpY3RzIHdpdGggQWxnb3JpdGhtOjpNZXJnZSBpbnN0YWxsZWQuCisgICogQ2hhbmdlbG9nIEIgc2hvdWxkIGEgaGF2ZSBzdXBwbGVtZW50YXJ5IGxpbmUgYWJvdmUgdGhpcyBvbmUuCisgICogUGkgaXMgMy4xNCBpcyB0cnVlIGZvciBhbGwgY2hhbmdlbG9ncy4KKyAgKiBDaGFuZ2Vsb2cgQSBzaG91bGQgaGF2ZSBhIHN1cHBsZW1lbnRhcnkgbGluZQorICAgIHNvbWV3aGVyZSBpbiB0aGlzIHN1Yi1saXN0CisgICAgLSBUaGUgd2VhdGhlciBpcyBuaWNlCisgICAgLSBZZXQgSSdtIGhhY2tpbmcgb24gZHBrZworICAgIC0gV2hhdCBkb2VzIHRoYXQgbWVhbiBhYm91dCBtZT8KKyAgKiBUaGlzIGxpbmUgc2hvdWxkIGJlIHNoYXJlZCBidXQgdGhlIG5leHQgb25lIGlzIGRyb3BwZWQgaW4gQiBvbmx5LgorICAqIElmIEknbSBoZXJlIGl0J3MgYmVjYXVzZSB0aGUgY2hhbmdlbG9nIGlzIG5vdCBCIChJIHNob3VsZCBub3QgYXBwZWFyCisgICAgaW4gdGhlIHJlc3VsdGluZyBjaGFuZ2Vsb2cpLgorCisgLS0gUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPiAgU3VuLCAxOCBBcHIgMjAxMCAxODowOTowNyArMDIwMAorCit0ZXN0ICgxLjEtMStjb25mbGljdDIpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogVGhpcyBlbnRyeSBoYXMgYSBjb25mbGljdCBvbiB0aGUgbmV4dCBsaW5lLgorICAqIEknbSBpbiBjaGFuZ2Vsb2cgTyAob2xkKS4KKyAgKiBUaGlzIGxpbmUgaXMgdGhlIHNhbWUgaW4gYWxsIDMgdmVyc2lvbnMuCisKKyAtLSBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+ICBTdW4sIDE4IEFwciAyMDEwIDE4OjA3OjQwICswMjAwCisKK3Rlc3QgKDEuMS0xK2NvbmZsaWN0MSkgdW5zdGFibGU7IHVyZ2VuY3k9bG93CisKKyAgKiBUaGlzIGVudHJ5IGhhcyBjb25mbGljdHMgb24gdGhlIGhlYWRlciBsaW5lOiBBIHdhbnRzIGRpc3RyaWJ1dGlvbgorICAgIGV4cGVyaW1lbnRhbCAoaW5zdGVhZCBvZiB1bnN0YWJsZSkgYW5kIEIgd2FudHMgdXJnZW5jeT1oaWdoIChpbnN0ZWFkCisgICAgb2YgbG93KS4KKyAgKiBCdXQgaXQgYWxzbyBoYXMgYSBjb25mbGljdCBvbiB0aGUgdHJhaWxlciBsaW5lLiBBIGNoYW5nZWQgdGhlCisgICAgdGltZXN0YW1wIHRvIDE4OjA1OjAwIGFuZCBCIHRvIDE4OjA2OjAwLgorCisgLS0gUmFwaGHDq2wgSGVydHpvZyA8aGVydHpvZ0BkZWJpYW4ub3JnPiAgU3VuLCAxOCBBcHIgMjAxMCAxODowNDoxOCArMDIwMAorCit0ZXN0ICgxLjEtMStjaGFuZ2UyKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIFRoaXMgZW50cnkgaXMgZXZlcnl3aGVyZSBidXQgdGhlIGxhc3QgbGluZSBpcyBkaWZmZXJlbnQgaW4gQS4gVGhlCisgICAgbWVyZ2VkIHZlcnNpb24gc2hvdWxkIGhhdmUgd2hhdCdzIGluIEEuIEZ1cnRoZXJtb3JlIHRoZSB0aW1lc3RhbXAgaW4KKyAgICBCIGlzIHNldCB0byAxNzo1NTowMCwgaXQgc2hvdWxkIGFsc28gYmUgcGlja2VkIHVwLgorICAqIEknbSBub3QgaW4gY2hhbmdlbG9nIEEuCisKKyAtLSBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+ICBTdW4sIDE4IEFwciAyMDEwIDE3OjU0OjUyICswMjAwCisKK3Rlc3QgKDEuMS0xK2NoYW5nZTEpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogVGhpcyBlbnRyeSBpcyBldmVyeXdoZXJlIGJ1dCB0aGUgbGFzdCBsaW5lIGlzIGRpZmZlcmVudCBpbiBCLiBUaGUKKyAgICBtZXJnZWQgdmVyc2lvbiBzaG91bGQgaGF2ZSB3aGF0J3MgaW4gQi4gRnVydGhlcm1vcmUgdGhlIHVyZ2VuY3kgaW4KKyAgICBBIGlzIHNldCB0byBoaWdoLCBpdCBzaG91bGQgYWxzbyBiZSBwaWNrZWQgdXAuCisgICogSSdtIG5vdCBpbiBjaGFuZ2Vsb2cgQi4KKworIC0tIFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4gIFN1biwgMTggQXByIDIwMTAgMTc6NTA6NTggKzAyMDAKKwordGVzdCAoMS4xLTAuMSkgc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogVGhpcyBlbnRyeSBpcyBwcmVzZW50IGluIE8gb25seSwgaXQgc2hvdWxkIG5vdCBhcHBlYXIgaW4gdGhlIG1lcmdlZAorICAgIGNoYW5nZWxvZy4KKworIC0tIFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4gIFN1biwgMTggQXByIDIwMTAgMTc6NDk6MTUgKzAyMDAKKwordGVzdCAoMS4wLTMpIHVuc3RhYmxlOyB1cmdlbmN5PWxvdworCisgICogVGhpcyBlbnRyeSBpcyBkcm9wcGVkIGluIEEgb25seS4KKyAgKiBTaW5jZSBpdCdzIGluIE8gYW5kIEIsIGl0IHNob3VsZCBub3QgYXBwZWFyIGluIHRoZSByZXN1bHQuCisKKyAtLSBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+ICBTdW4sIDE4IEFwciAyMDEwIDE3OjQxOjMxICswMjAwCisKK3Rlc3QgKDEuMC0yKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIFRoaXMgZW50cnkgaXMgZHJvcHBlZCBpbiBCIG9ubHkuCisgICogU2luY2UgaXQncyBpbiBPIGFuZCBBLCBpdCBzaG91bGQgbm90IGFwcGVhciBpbiB0aGUgcmVzdWx0LgorICAqIFBpIGlzIDMuMTQuCisKKyAtLSBSYXBoYcOrbCBIZXJ0em9nIDxoZXJ0em9nQGRlYmlhbi5vcmc+ICBTdW4sIDE4IEFwciAyMDEwIDE3OjM5OjE1ICswMjAwCisKK3Rlc3QgKDEuMC0xKSB1bnN0YWJsZTsgdXJnZW5jeT1sb3cKKworICAqIEluaXRpYWwgcmVsZWFzZS4gKENsb3NlczogI1hYWFhYWCkKKworIC0tIFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4gIFN1biwgMTggQXByIDIwMTAgMTc6Mzc6NDYgKzAyMDAKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90L29yaWdpbnMvZGViaWFuIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3Qvb3JpZ2lucy9kZWJpYW4KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTFmNmVkMQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90L29yaWdpbnMvZGViaWFuCkBAIC0wLDAgKzEsMyBAQAorVmVuZG9yOiBEZWJpYW4KK1ZlbmRvci1VUkw6IGh0dHA6Ly93d3cuZGViaWFuLm9yZy8KK0J1Z3M6IGRlYmJ1Z3M6Ly9idWdzLmRlYmlhbi5vcmcKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90L29yaWdpbnMvZGVmYXVsdCBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90L29yaWdpbnMvZGVmYXVsdApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45MWY2ZWQxCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3Qvb3JpZ2lucy9kZWZhdWx0CkBAIC0wLDAgKzEsMyBAQAorVmVuZG9yOiBEZWJpYW4KK1ZlbmRvci1VUkw6IGh0dHA6Ly93d3cuZGViaWFuLm9yZy8KK0J1Z3M6IGRlYmJ1Z3M6Ly9idWdzLmRlYmlhbi5vcmcKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90L29yaWdpbnMvdWJ1bnR1IGIvZHBrZy0xLjE2LjEuMS9zY3JpcHRzL3Qvb3JpZ2lucy91YnVudHUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uN2NjM2NlMgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc2NyaXB0cy90L29yaWdpbnMvdWJ1bnR1CkBAIC0wLDAgKzEsNCBAQAorVmVuZG9yOiBVYnVudHUKK1ZlbmRvci1VUkw6IGh0dHA6Ly93d3cudWJ1bnR1LmNvbS8KK0J1Z3M6IGh0dHBzOi8vYnVncy5sYXVuY2hwYWQubmV0L3VidW50dS8rZmlsZWJ1ZworUGFyZW50OiBEZWJpYW4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc3JjL01ha2VmaWxlLmFtIGIvZHBrZy0xLjE2LjEuMS9zcmMvTWFrZWZpbGUuYW0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTI5YWJmMwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc3JjL01ha2VmaWxlLmFtCkBAIC0wLDAgKzEsODYgQEAKKyMjIFByb2Nlc3MgdGhpcyBmaWxlIHdpdGggYXV0b21ha2UgdG8gcHJvZHVjZSBNYWtlZmlsZS5pbgorCitsb2NhbGVkaXIgPSAkKGRhdGFkaXIpL2xvY2FsZQorcGtnY29uZmRpciA9ICQoc3lzY29uZmRpcikvQFBBQ0tBR0VACisKK0FNX0NQUEZMQUdTID0gXAorCS1ETE9DQUxFRElSPVwiJChsb2NhbGVkaXIpXCIgXAorCS1EQURNSU5ESVI9XCIkKGFkbWluZGlyKVwiIFwKKwktaWRpcmFmdGVyICQodG9wX3NyY2RpcikvbGliL2NvbXBhdCBcCisJLUkkKHRvcF9idWlsZGRpcikgXAorCS1JJCh0b3Bfc3JjZGlyKS9saWIKK0xEQUREID0gXAorCS4uL2xpYi9kcGtnL2xpYmRwa2cuYSBcCisJLi4vbGliL2NvbXBhdC9saWJjb21wYXQuYSBcCisJJChMSUJJTlRMKQorCisKK0VYVFJBX0RJU1QgPSBcCisJJCh0ZXN0X2Nhc2VzKQorCitiaW5fUFJPR1JBTVMgPSBcCisJZHBrZyBcCisJZHBrZy1kaXZlcnQgXAorCWRwa2ctcXVlcnkgXAorCWRwa2ctc3RhdG92ZXJyaWRlIFwKKwlkcGtnLXRyaWdnZXIKKworZHBrZ19TT1VSQ0VTID0gXAorCWFyY2hpdmVzLmMgYXJjaGl2ZXMuaCBcCisJY2xlYW51cC5jIFwKKwljb25maWd1cmUuYyBcCisJZGVwY29uLmMgXAorCWVucXVpcnkuYyBcCisJZXJyb3JzLmMgXAorCWZpbGVzZGIuYyBmaWxlc2RiLmggXAorCWZpbHRlcnMuYyBmaWx0ZXJzLmggXAorCWluZm9kYi5jIGluZm9kYi5oIFwKKwlkaXZlcnRkYi5jIFwKKwlzdGF0ZGIuYyBcCisJaGVscC5jIFwKKwltYWluLmMgbWFpbi5oIFwKKwlwYWNrYWdlcy5jIFwKKwlwcm9jZXNzYXJjLmMgXAorCXJlbW92ZS5jIFwKKwlzZWxlY3QuYyBcCisJdHJpZ3Byb2MuYyBcCisJdXBkYXRlLmMKKworZHBrZ19MREFERCA9IFwKKwkkKExEQUREKSBcCisJJChTRUxJTlVYX0xJQlMpCisKK2Rwa2dfZGl2ZXJ0X1NPVVJDRVMgPSBcCisJZmlsZXNkYi5jIGZpbGVzZGIuaCBcCisJZGl2ZXJ0ZGIuYyBcCisJZGl2ZXJ0Y21kLmMKKworZHBrZ19xdWVyeV9TT1VSQ0VTID0gXAorCWZpbGVzZGIuYyBmaWxlc2RiLmggXAorCWluZm9kYi5jIGluZm9kYi5oIFwKKwlkaXZlcnRkYi5jIFwKKwlxdWVyeWNtZC5jCisKK2Rwa2dfc3RhdG92ZXJyaWRlX1NPVVJDRVMgPSBcCisJZmlsZXNkYi5jIGZpbGVzZGIuaCBcCisJc3RhdGRiLmMgXAorCXN0YXRjbWQuYworCitkcGtnX3RyaWdnZXJfU09VUkNFUyA9IFwKKwl0cmlnY21kLmMKKworaW5zdGFsbC1kYXRhLWxvY2FsOgorCSQobWtkaXJfcCkgJChERVNURElSKSQocGtnY29uZmRpcikvZHBrZy5jZmcuZAorCSQobWtkaXJfcCkgJChERVNURElSKSQoYWRtaW5kaXIpL2luZm8KKwkkKG1rZGlyX3ApICQoREVTVERJUikkKGFkbWluZGlyKS91cGRhdGVzCisKK1RFU1RfVkVSQk9TRSA9IDAKKwordGVzdF90bXBkaXIgPSB0LnRtcAorCit0ZXN0X2Nhc2VzID0gXAorCXQvMTAwX2Rwa2dfZGl2ZXJ0LnQKKworaW5jbHVkZSAkKHRvcF9zcmNkaXIpL01ha2VjaGVjay5hbQorCitjbGVhbi1sb2NhbDogY2hlY2stY2xlYW4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc3JjL01ha2VmaWxlLmluIGIvZHBrZy0xLjE2LjEuMS9zcmMvTWFrZWZpbGUuaW4KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNDk1OWExMwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc3JjL01ha2VmaWxlLmluCkBAIC0wLDAgKzEsNzA0IEBACisjIE1ha2VmaWxlLmluIGdlbmVyYXRlZCBieSBhdXRvbWFrZSAxLjExLjEgZnJvbSBNYWtlZmlsZS5hbS4KKyMgQGNvbmZpZ3VyZV9pbnB1dEAKKworIyBDb3B5cmlnaHQgKEMpIDE5OTQsIDE5OTUsIDE5OTYsIDE5OTcsIDE5OTgsIDE5OTksIDIwMDAsIDIwMDEsIDIwMDIsCisjIDIwMDMsIDIwMDQsIDIwMDUsIDIwMDYsIDIwMDcsIDIwMDgsIDIwMDkgIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwKKyMgSW5jLgorIyBUaGlzIE1ha2VmaWxlLmluIGlzIGZyZWUgc29mdHdhcmU7IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24KKyMgZ2l2ZXMgdW5saW1pdGVkIHBlcm1pc3Npb24gdG8gY29weSBhbmQvb3IgZGlzdHJpYnV0ZSBpdCwKKyMgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbnMsIGFzIGxvbmcgYXMgdGhpcyBub3RpY2UgaXMgcHJlc2VydmVkLgorCisjIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFksIHRvIHRoZSBleHRlbnQgcGVybWl0dGVkIGJ5IGxhdzsgd2l0aG91dAorIyBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBCisjIFBBUlRJQ1VMQVIgUFVSUE9TRS4KKworQFNFVF9NQUtFQAorCisjIHZpbTpzZXQgc3luPWF1dG9tYWtlOgorCisjIFZhcmlhYmxlcyB0byBiZSBkZWZpbmVkOgorIworIyAgVEVTVF9WRVJCT1NFIC0gc2V0IHRvIDAgb3IgMSB0byBjb250cm9sIHRlc3Qgc3VpdGUgdmVyYm9zaXR5CisjICBURVNUX0VOVl9WQVJTIC0gZW52aXJvbm1lbnQgdmFyaWFibGVzIHRvIGJlIHNldCBmb3IgdGhlIHRlc3Qgc3VpdGUKKyMgIFRFU1RfQ09WRVJBR0UgLSBzZXQgdG8gdGhlIHBlcmwgbW9kdWxlIGluIGNoYXJnZSBvZiBnZXR0aW5nIHRlc3QgY292ZXJhZ2UKKyMgIHRlc3RfdG1wZGlyIC0gdGVzdCBzdWl0ZSB0ZW1wb3JhcnkgZGlyZWN0b3J5CisjICB0ZXN0X2Nhc2VzIC0gbGlzdCBvZiB0ZXN0IGNhc2UgZmlsZXMKKyMgIHRlc3RfZGF0YSAtIGxpc3Qgb2YgdGVzdCBkYXRhIGZpbGVzCisKK1ZQQVRIID0gQHNyY2RpckAKK3BrZ2RhdGFkaXIgPSAkKGRhdGFkaXIpL0BQQUNLQUdFQAorcGtnaW5jbHVkZWRpciA9ICQoaW5jbHVkZWRpcikvQFBBQ0tBR0VACitwa2dsaWJkaXIgPSAkKGxpYmRpcikvQFBBQ0tBR0VACitwa2dsaWJleGVjZGlyID0gJChsaWJleGVjZGlyKS9AUEFDS0FHRUAKK2FtX19jZCA9IENEUEFUSD0iJCR7WlNIX1ZFUlNJT04rLn0kKFBBVEhfU0VQQVJBVE9SKSIgJiYgY2QKK2luc3RhbGxfc2hfREFUQSA9ICQoaW5zdGFsbF9zaCkgLWMgLW0gNjQ0CitpbnN0YWxsX3NoX1BST0dSQU0gPSAkKGluc3RhbGxfc2gpIC1jCitpbnN0YWxsX3NoX1NDUklQVCA9ICQoaW5zdGFsbF9zaCkgLWMKK0lOU1RBTExfSEVBREVSID0gJChJTlNUQUxMX0RBVEEpCit0cmFuc2Zvcm0gPSAkKHByb2dyYW1fdHJhbnNmb3JtX25hbWUpCitOT1JNQUxfSU5TVEFMTCA9IDoKK1BSRV9JTlNUQUxMID0gOgorUE9TVF9JTlNUQUxMID0gOgorTk9STUFMX1VOSU5TVEFMTCA9IDoKK1BSRV9VTklOU1RBTEwgPSA6CitQT1NUX1VOSU5TVEFMTCA9IDoKK2J1aWxkX3RyaXBsZXQgPSBAYnVpbGRACitob3N0X3RyaXBsZXQgPSBAaG9zdEAKK2Jpbl9QUk9HUkFNUyA9IGRwa2ckKEVYRUVYVCkgZHBrZy1kaXZlcnQkKEVYRUVYVCkgZHBrZy1xdWVyeSQoRVhFRVhUKSBcCisJZHBrZy1zdGF0b3ZlcnJpZGUkKEVYRUVYVCkgZHBrZy10cmlnZ2VyJChFWEVFWFQpCitESVNUX0NPTU1PTiA9ICQoc3JjZGlyKS9NYWtlZmlsZS5hbSAkKHNyY2RpcikvTWFrZWZpbGUuaW4gXAorCSQodG9wX3NyY2RpcikvTWFrZWNoZWNrLmFtCitzdWJkaXIgPSBzcmMKK0FDTE9DQUxfTTQgPSAkKHRvcF9zcmNkaXIpL2FjbG9jYWwubTQKK2FtX19hY2xvY2FsX200X2RlcHMgPSAkKHRvcF9zcmNkaXIpL200L2Rwa2ctYXJjaC5tNCBcCisJJCh0b3Bfc3JjZGlyKS9tNC9kcGtnLWJ1aWxkLm00IFwKKwkkKHRvcF9zcmNkaXIpL200L2Rwa2ctY29tcGlsZXIubTQgXAorCSQodG9wX3NyY2RpcikvbTQvZHBrZy1jb3ZlcmFnZS5tNCBcCisJJCh0b3Bfc3JjZGlyKS9tNC9kcGtnLWZ1bmNzLm00ICQodG9wX3NyY2RpcikvbTQvZHBrZy1saWJzLm00IFwKKwkkKHRvcF9zcmNkaXIpL200L2Rwa2ctbGlua2VyLm00ICQodG9wX3NyY2RpcikvbTQvZHBrZy1wcm9ncy5tNCBcCisJJCh0b3Bfc3JjZGlyKS9tNC9kcGtnLXR5cGVzLm00IFwKKwkkKHRvcF9zcmNkaXIpL200L2Rwa2ctdW5pY29kZS5tNCAkKHRvcF9zcmNkaXIpL200L2dldHRleHQubTQgXAorCSQodG9wX3NyY2RpcikvbTQvaWNvbnYubTQgJCh0b3Bfc3JjZGlyKS9tNC9pbnRsbWFjb3N4Lm00IFwKKwkkKHRvcF9zcmNkaXIpL200L2xpYi1sZC5tNCAkKHRvcF9zcmNkaXIpL200L2xpYi1saW5rLm00IFwKKwkkKHRvcF9zcmNkaXIpL200L2xpYi1wcmVmaXgubTQgJCh0b3Bfc3JjZGlyKS9tNC9ubHMubTQgXAorCSQodG9wX3NyY2RpcikvbTQvcG8ubTQgJCh0b3Bfc3JjZGlyKS9tNC9wcm9ndGVzdC5tNCBcCisJJCh0b3Bfc3JjZGlyKS9jb25maWd1cmUuYWMKK2FtX19jb25maWd1cmVfZGVwcyA9ICQoYW1fX2FjbG9jYWxfbTRfZGVwcykgJChDT05GSUdVUkVfREVQRU5ERU5DSUVTKSBcCisJJChBQ0xPQ0FMX000KQorbWtpbnN0YWxsZGlycyA9ICQoaW5zdGFsbF9zaCkgLWQKK0NPTkZJR19IRUFERVIgPSAkKHRvcF9idWlsZGRpcikvY29uZmlnLmgKK0NPTkZJR19DTEVBTl9GSUxFUyA9CitDT05GSUdfQ0xFQU5fVlBBVEhfRklMRVMgPQorYW1fX2luc3RhbGxkaXJzID0gIiQoREVTVERJUikkKGJpbmRpcikiCitQUk9HUkFNUyA9ICQoYmluX1BST0dSQU1TKQorYW1fZHBrZ19PQkpFQ1RTID0gYXJjaGl2ZXMuJChPQkpFWFQpIGNsZWFudXAuJChPQkpFWFQpIFwKKwljb25maWd1cmUuJChPQkpFWFQpIGRlcGNvbi4kKE9CSkVYVCkgZW5xdWlyeS4kKE9CSkVYVCkgXAorCWVycm9ycy4kKE9CSkVYVCkgZmlsZXNkYi4kKE9CSkVYVCkgZmlsdGVycy4kKE9CSkVYVCkgXAorCWluZm9kYi4kKE9CSkVYVCkgZGl2ZXJ0ZGIuJChPQkpFWFQpIHN0YXRkYi4kKE9CSkVYVCkgXAorCWhlbHAuJChPQkpFWFQpIG1haW4uJChPQkpFWFQpIHBhY2thZ2VzLiQoT0JKRVhUKSBcCisJcHJvY2Vzc2FyYy4kKE9CSkVYVCkgcmVtb3ZlLiQoT0JKRVhUKSBzZWxlY3QuJChPQkpFWFQpIFwKKwl0cmlncHJvYy4kKE9CSkVYVCkgdXBkYXRlLiQoT0JKRVhUKQorZHBrZ19PQkpFQ1RTID0gJChhbV9kcGtnX09CSkVDVFMpCithbV9fREVQRU5ERU5DSUVTXzEgPQorYW1fX0RFUEVOREVOQ0lFU18yID0gLi4vbGliL2Rwa2cvbGliZHBrZy5hIC4uL2xpYi9jb21wYXQvbGliY29tcGF0LmEgXAorCSQoYW1fX0RFUEVOREVOQ0lFU18xKQorZHBrZ19ERVBFTkRFTkNJRVMgPSAkKGFtX19ERVBFTkRFTkNJRVNfMikgJChhbV9fREVQRU5ERU5DSUVTXzEpCithbV9kcGtnX2RpdmVydF9PQkpFQ1RTID0gZmlsZXNkYi4kKE9CSkVYVCkgZGl2ZXJ0ZGIuJChPQkpFWFQpIFwKKwlkaXZlcnRjbWQuJChPQkpFWFQpCitkcGtnX2RpdmVydF9PQkpFQ1RTID0gJChhbV9kcGtnX2RpdmVydF9PQkpFQ1RTKQorZHBrZ19kaXZlcnRfTERBREQgPSAkKExEQUREKQorZHBrZ19kaXZlcnRfREVQRU5ERU5DSUVTID0gLi4vbGliL2Rwa2cvbGliZHBrZy5hIFwKKwkuLi9saWIvY29tcGF0L2xpYmNvbXBhdC5hICQoYW1fX0RFUEVOREVOQ0lFU18xKQorYW1fZHBrZ19xdWVyeV9PQkpFQ1RTID0gZmlsZXNkYi4kKE9CSkVYVCkgaW5mb2RiLiQoT0JKRVhUKSBcCisJZGl2ZXJ0ZGIuJChPQkpFWFQpIHF1ZXJ5Y21kLiQoT0JKRVhUKQorZHBrZ19xdWVyeV9PQkpFQ1RTID0gJChhbV9kcGtnX3F1ZXJ5X09CSkVDVFMpCitkcGtnX3F1ZXJ5X0xEQUREID0gJChMREFERCkKK2Rwa2dfcXVlcnlfREVQRU5ERU5DSUVTID0gLi4vbGliL2Rwa2cvbGliZHBrZy5hIFwKKwkuLi9saWIvY29tcGF0L2xpYmNvbXBhdC5hICQoYW1fX0RFUEVOREVOQ0lFU18xKQorYW1fZHBrZ19zdGF0b3ZlcnJpZGVfT0JKRUNUUyA9IGZpbGVzZGIuJChPQkpFWFQpIHN0YXRkYi4kKE9CSkVYVCkgXAorCXN0YXRjbWQuJChPQkpFWFQpCitkcGtnX3N0YXRvdmVycmlkZV9PQkpFQ1RTID0gJChhbV9kcGtnX3N0YXRvdmVycmlkZV9PQkpFQ1RTKQorZHBrZ19zdGF0b3ZlcnJpZGVfTERBREQgPSAkKExEQUREKQorZHBrZ19zdGF0b3ZlcnJpZGVfREVQRU5ERU5DSUVTID0gLi4vbGliL2Rwa2cvbGliZHBrZy5hIFwKKwkuLi9saWIvY29tcGF0L2xpYmNvbXBhdC5hICQoYW1fX0RFUEVOREVOQ0lFU18xKQorYW1fZHBrZ190cmlnZ2VyX09CSkVDVFMgPSB0cmlnY21kLiQoT0JKRVhUKQorZHBrZ190cmlnZ2VyX09CSkVDVFMgPSAkKGFtX2Rwa2dfdHJpZ2dlcl9PQkpFQ1RTKQorZHBrZ190cmlnZ2VyX0xEQUREID0gJChMREFERCkKK2Rwa2dfdHJpZ2dlcl9ERVBFTkRFTkNJRVMgPSAuLi9saWIvZHBrZy9saWJkcGtnLmEgXAorCS4uL2xpYi9jb21wYXQvbGliY29tcGF0LmEgJChhbV9fREVQRU5ERU5DSUVTXzEpCitERUZBVUxUX0lOQ0xVREVTID0gCitkZXBjb21wID0gJChTSEVMTCkgJCh0b3Bfc3JjZGlyKS9idWlsZC1hdXgvZGVwY29tcAorYW1fX2RlcGZpbGVzX21heWJlID0gZGVwZmlsZXMKK2FtX19tdiA9IG12IC1mCitDT01QSUxFID0gJChDQykgJChERUZTKSAkKERFRkFVTFRfSU5DTFVERVMpICQoSU5DTFVERVMpICQoQU1fQ1BQRkxBR1MpIFwKKwkkKENQUEZMQUdTKSAkKEFNX0NGTEFHUykgJChDRkxBR1MpCitBTV9WX0NDID0gJChhbV9fdl9DQ18kKFYpKQorYW1fX3ZfQ0NfID0gJChhbV9fdl9DQ18kKEFNX0RFRkFVTFRfVkVSQk9TSVRZKSkKK2FtX192X0NDXzAgPSBAZWNobyAiICBDQyAgICAiICRAOworQU1fVl9hdCA9ICQoYW1fX3ZfYXRfJChWKSkKK2FtX192X2F0XyA9ICQoYW1fX3ZfYXRfJChBTV9ERUZBVUxUX1ZFUkJPU0lUWSkpCithbV9fdl9hdF8wID0gQAorQ0NMRCA9ICQoQ0MpCitMSU5LID0gJChDQ0xEKSAkKEFNX0NGTEFHUykgJChDRkxBR1MpICQoQU1fTERGTEFHUykgJChMREZMQUdTKSAtbyAkQAorQU1fVl9DQ0xEID0gJChhbV9fdl9DQ0xEXyQoVikpCithbV9fdl9DQ0xEXyA9ICQoYW1fX3ZfQ0NMRF8kKEFNX0RFRkFVTFRfVkVSQk9TSVRZKSkKK2FtX192X0NDTERfMCA9IEBlY2hvICIgIENDTEQgICIgJEA7CitBTV9WX0dFTiA9ICQoYW1fX3ZfR0VOXyQoVikpCithbV9fdl9HRU5fID0gJChhbV9fdl9HRU5fJChBTV9ERUZBVUxUX1ZFUkJPU0lUWSkpCithbV9fdl9HRU5fMCA9IEBlY2hvICIgIEdFTiAgICIgJEA7CitTT1VSQ0VTID0gJChkcGtnX1NPVVJDRVMpICQoZHBrZ19kaXZlcnRfU09VUkNFUykgJChkcGtnX3F1ZXJ5X1NPVVJDRVMpIFwKKwkkKGRwa2dfc3RhdG92ZXJyaWRlX1NPVVJDRVMpICQoZHBrZ190cmlnZ2VyX1NPVVJDRVMpCitESVNUX1NPVVJDRVMgPSAkKGRwa2dfU09VUkNFUykgJChkcGtnX2RpdmVydF9TT1VSQ0VTKSBcCisJJChkcGtnX3F1ZXJ5X1NPVVJDRVMpICQoZHBrZ19zdGF0b3ZlcnJpZGVfU09VUkNFUykgXAorCSQoZHBrZ190cmlnZ2VyX1NPVVJDRVMpCitFVEFHUyA9IGV0YWdzCitDVEFHUyA9IGN0YWdzCitESVNURklMRVMgPSAkKERJU1RfQ09NTU9OKSAkKERJU1RfU09VUkNFUykgJChURVhJTkZPUykgJChFWFRSQV9ESVNUKQorQUNMT0NBTCA9IEBBQ0xPQ0FMQAorQU1UQVIgPSBAQU1UQVJACitBTV9ERUZBVUxUX1ZFUkJPU0lUWSA9IEBBTV9ERUZBVUxUX1ZFUkJPU0lUWUAKK0FVVE9DT05GID0gQEFVVE9DT05GQAorQVVUT0hFQURFUiA9IEBBVVRPSEVBREVSQAorQVVUT01BS0UgPSBAQVVUT01BS0VACitBV0sgPSBAQVdLQAorQloyX0xJQlMgPSBAQloyX0xJQlNACitDQyA9IEBDQ0AKK0NDREVQTU9ERSA9IEBDQ0RFUE1PREVACitDRkxBR1MgPSBAQ0ZMQUdTQAorQ1BQID0gQENQUEAKK0NQUEZMQUdTID0gQENQUEZMQUdTQAorQ1VSU0VTX0xJQlMgPSBAQ1VSU0VTX0xJQlNACitDWFggPSBAQ1hYQAorQ1hYREVQTU9ERSA9IEBDWFhERVBNT0RFQAorQ1hYRkxBR1MgPSBAQ1hYRkxBR1NACitDWUdQQVRIX1cgPSBAQ1lHUEFUSF9XQAorREVGUyA9IEBERUZTQAorREVQRElSID0gQERFUERJUkAKK0RPWFlHRU4gPSBARE9YWUdFTkAKK0VDSE9fQyA9IEBFQ0hPX0NACitFQ0hPX04gPSBARUNIT19OQAorRUNIT19UID0gQEVDSE9fVEAKK0VHUkVQID0gQEVHUkVQQAorRVhFRVhUID0gQEVYRUVYVEAKK0dDT1YgPSBAR0NPVkAKK0dFVFRFWFRfTUFDUk9fVkVSU0lPTiA9IEBHRVRURVhUX01BQ1JPX1ZFUlNJT05ACitHTVNHRk1UID0gQEdNU0dGTVRACitHTVNHRk1UXzAxNSA9IEBHTVNHRk1UXzAxNUAKK0dSRVAgPSBAR1JFUEAKK0hBVkVfRE9UID0gQEhBVkVfRE9UQAorSU5TVEFMTCA9IEBJTlNUQUxMQAorSU5TVEFMTF9EQVRBID0gQElOU1RBTExfREFUQUAKK0lOU1RBTExfUFJPR1JBTSA9IEBJTlNUQUxMX1BST0dSQU1ACitJTlNUQUxMX1NDUklQVCA9IEBJTlNUQUxMX1NDUklQVEAKK0lOU1RBTExfU1RSSVBfUFJPR1JBTSA9IEBJTlNUQUxMX1NUUklQX1BST0dSQU1ACitJTlRMTElCUyA9IEBJTlRMTElCU0AKK0lOVExfTUFDT1NYX0xJQlMgPSBASU5UTF9NQUNPU1hfTElCU0AKK0xDT1YgPSBATENPVkAKK0xDT1ZfR0VOSFRNTCA9IEBMQ09WX0dFTkhUTUxACitMREZMQUdTID0gQExERkxBR1NACitMRVggPSBATEVYQAorTEVYTElCID0gQExFWExJQkAKK0xFWF9PVVRQVVRfUk9PVCA9IEBMRVhfT1VUUFVUX1JPT1RACitMSUJJQ09OViA9IEBMSUJJQ09OVkAKK0xJQklOVEwgPSBATElCSU5UTEAKK0xJQk9CSlMgPSBATElCT0JKU0AKK0xJQlMgPSBATElCU0AKK0xUTElCSUNPTlYgPSBATFRMSUJJQ09OVkAKK0xUTElCSU5UTCA9IEBMVExJQklOVExACitMVExJQk9CSlMgPSBATFRMSUJPQkpTQAorTUFLRUlORk8gPSBATUFLRUlORk9ACitNS0RJUl9QID0gQE1LRElSX1BACitNU0dGTVQgPSBATVNHRk1UQAorTVNHRk1UXzAxNSA9IEBNU0dGTVRfMDE1QAorTVNHTUVSR0UgPSBATVNHTUVSR0VACitPQkpFWFQgPSBAT0JKRVhUQAorUEFDS0FHRSA9IEBQQUNLQUdFQAorUEFDS0FHRV9CVUdSRVBPUlQgPSBAUEFDS0FHRV9CVUdSRVBPUlRACitQQUNLQUdFX05BTUUgPSBAUEFDS0FHRV9OQU1FQAorUEFDS0FHRV9TVFJJTkcgPSBAUEFDS0FHRV9TVFJJTkdACitQQUNLQUdFX1RBUk5BTUUgPSBAUEFDS0FHRV9UQVJOQU1FQAorUEFDS0FHRV9VUkwgPSBAUEFDS0FHRV9VUkxACitQQUNLQUdFX1ZFUlNJT04gPSBAUEFDS0FHRV9WRVJTSU9OQAorUEFUSF9TRVBBUkFUT1IgPSBAUEFUSF9TRVBBUkFUT1JACitQRVJMID0gQFBFUkxACitQRVJMX0NPVkVSID0gQFBFUkxfQ09WRVJACitQRVJMX0NPVkVSQUdFID0gQFBFUkxfQ09WRVJBR0VACitQRVJMX0xJQkRJUiA9IEBQRVJMX0xJQkRJUkAKK1BLR19DT05GSUcgPSBAUEtHX0NPTkZJR0AKK1BLR19DT05GSUdfTElCRElSID0gQFBLR19DT05GSUdfTElCRElSQAorUEtHX0NPTkZJR19QQVRIID0gQFBLR19DT05GSUdfUEFUSEAKK1BPNEEgPSBAUE80QUAKK1BPRDJNQU4gPSBAUE9EMk1BTkAKK1BPU1VCID0gQFBPU1VCQAorUkFOTElCID0gQFJBTkxJQkAKK1NFTElOVVhfTElCUyA9IEBTRUxJTlVYX0xJQlNACitTRVRfTUFLRSA9IEBTRVRfTUFLRUAKK1NIRUxMID0gQFNIRUxMQAorU1NEX0xJQlMgPSBAU1NEX0xJQlNACitTVFJJUCA9IEBTVFJJUEAKK1VTRV9OTFMgPSBAVVNFX05MU0AKK1VTRV9QTzRBID0gQFVTRV9QTzRBQAorVVNFX1VOSUNPREUgPSBAVVNFX1VOSUNPREVACitWRVJTSU9OID0gQFZFUlNJT05ACitYR0VUVEVYVCA9IEBYR0VUVEVYVEAKK1hHRVRURVhUXzAxNSA9IEBYR0VUVEVYVF8wMTVACitYR0VUVEVYVF9FWFRSQV9PUFRJT05TID0gQFhHRVRURVhUX0VYVFJBX09QVElPTlNACitaTElCX0xJQlMgPSBAWkxJQl9MSUJTQAorYWJzX2J1aWxkZGlyID0gQGFic19idWlsZGRpckAKK2Fic19zcmNkaXIgPSBAYWJzX3NyY2RpckAKK2Fic190b3BfYnVpbGRkaXIgPSBAYWJzX3RvcF9idWlsZGRpckAKK2Fic190b3Bfc3JjZGlyID0gQGFic190b3Bfc3JjZGlyQAorYWNfY3RfQ0MgPSBAYWNfY3RfQ0NACithY19jdF9DWFggPSBAYWNfY3RfQ1hYQAorYWRtaW5kaXIgPSBAYWRtaW5kaXJACithbV9faW5jbHVkZSA9IEBhbV9faW5jbHVkZUAKK2FtX19sZWFkaW5nX2RvdCA9IEBhbV9fbGVhZGluZ19kb3RACithbV9fcXVvdGUgPSBAYW1fX3F1b3RlQAorYW1fX3RhciA9IEBhbV9fdGFyQAorYW1fX3VudGFyID0gQGFtX191bnRhckAKK2JpbmRpciA9IEBiaW5kaXJACitidWlsZCA9IEBidWlsZEAKK2J1aWxkX2FsaWFzID0gQGJ1aWxkX2FsaWFzQAorYnVpbGRfY3B1ID0gQGJ1aWxkX2NwdUAKK2J1aWxkX29zID0gQGJ1aWxkX29zQAorYnVpbGRfdmVuZG9yID0gQGJ1aWxkX3ZlbmRvckAKK2J1aWxkZGlyID0gQGJ1aWxkZGlyQAorZGF0YWRpciA9IEBkYXRhZGlyQAorZGF0YXJvb3RkaXIgPSBAZGF0YXJvb3RkaXJACitkb2NkaXIgPSBAZG9jZGlyQAorZHZpZGlyID0gQGR2aWRpckAKK2V4ZWNfcHJlZml4ID0gQGV4ZWNfcHJlZml4QAoraG9zdCA9IEBob3N0QAoraG9zdF9hbGlhcyA9IEBob3N0X2FsaWFzQAoraG9zdF9jcHUgPSBAaG9zdF9jcHVACitob3N0X29zID0gQGhvc3Rfb3NACitob3N0X3ZlbmRvciA9IEBob3N0X3ZlbmRvckAKK2h0bWxkaXIgPSBAaHRtbGRpckAKK2luY2x1ZGVkaXIgPSBAaW5jbHVkZWRpckAKK2luZm9kaXIgPSBAaW5mb2RpckAKK2luc3RhbGxfc2ggPSBAaW5zdGFsbF9zaEAKK2xpYmRpciA9IEBsaWJkaXJACitsaWJleGVjZGlyID0gQGxpYmV4ZWNkaXJACitsb2NhbGVkaXIgPSAkKGRhdGFkaXIpL2xvY2FsZQorbG9jYWxzdGF0ZWRpciA9IEBsb2NhbHN0YXRlZGlyQAorbG9nZGlyID0gQGxvZ2RpckAKK21hbmRpciA9IEBtYW5kaXJACitta2Rpcl9wID0gQG1rZGlyX3BACitvbGRpbmNsdWRlZGlyID0gQG9sZGluY2x1ZGVkaXJACitwZGZkaXIgPSBAcGRmZGlyQAorcHJlZml4ID0gQHByZWZpeEAKK3Byb2dyYW1fdHJhbnNmb3JtX25hbWUgPSBAcHJvZ3JhbV90cmFuc2Zvcm1fbmFtZUAKK3BzZGlyID0gQHBzZGlyQAorc2JpbmRpciA9IEBzYmluZGlyQAorc2hhcmVkc3RhdGVkaXIgPSBAc2hhcmVkc3RhdGVkaXJACitzcmNkaXIgPSBAc3JjZGlyQAorc3lzY29uZmRpciA9IEBzeXNjb25mZGlyQAordGFyZ2V0X2FsaWFzID0gQHRhcmdldF9hbGlhc0AKK3RvcF9idWlsZF9wcmVmaXggPSBAdG9wX2J1aWxkX3ByZWZpeEAKK3RvcF9idWlsZGRpciA9IEB0b3BfYnVpbGRkaXJACit0b3Bfc3JjZGlyID0gQHRvcF9zcmNkaXJACitwa2djb25mZGlyID0gJChzeXNjb25mZGlyKS9AUEFDS0FHRUAKK0FNX0NQUEZMQUdTID0gXAorCS1ETE9DQUxFRElSPVwiJChsb2NhbGVkaXIpXCIgXAorCS1EQURNSU5ESVI9XCIkKGFkbWluZGlyKVwiIFwKKwktaWRpcmFmdGVyICQodG9wX3NyY2RpcikvbGliL2NvbXBhdCBcCisJLUkkKHRvcF9idWlsZGRpcikgXAorCS1JJCh0b3Bfc3JjZGlyKS9saWIKKworTERBREQgPSBcCisJLi4vbGliL2Rwa2cvbGliZHBrZy5hIFwKKwkuLi9saWIvY29tcGF0L2xpYmNvbXBhdC5hIFwKKwkkKExJQklOVEwpCisKK0VYVFJBX0RJU1QgPSBcCisJJCh0ZXN0X2Nhc2VzKQorCitkcGtnX1NPVVJDRVMgPSBcCisJYXJjaGl2ZXMuYyBhcmNoaXZlcy5oIFwKKwljbGVhbnVwLmMgXAorCWNvbmZpZ3VyZS5jIFwKKwlkZXBjb24uYyBcCisJZW5xdWlyeS5jIFwKKwllcnJvcnMuYyBcCisJZmlsZXNkYi5jIGZpbGVzZGIuaCBcCisJZmlsdGVycy5jIGZpbHRlcnMuaCBcCisJaW5mb2RiLmMgaW5mb2RiLmggXAorCWRpdmVydGRiLmMgXAorCXN0YXRkYi5jIFwKKwloZWxwLmMgXAorCW1haW4uYyBtYWluLmggXAorCXBhY2thZ2VzLmMgXAorCXByb2Nlc3NhcmMuYyBcCisJcmVtb3ZlLmMgXAorCXNlbGVjdC5jIFwKKwl0cmlncHJvYy5jIFwKKwl1cGRhdGUuYworCitkcGtnX0xEQUREID0gXAorCSQoTERBREQpIFwKKwkkKFNFTElOVVhfTElCUykKKworZHBrZ19kaXZlcnRfU09VUkNFUyA9IFwKKwlmaWxlc2RiLmMgZmlsZXNkYi5oIFwKKwlkaXZlcnRkYi5jIFwKKwlkaXZlcnRjbWQuYworCitkcGtnX3F1ZXJ5X1NPVVJDRVMgPSBcCisJZmlsZXNkYi5jIGZpbGVzZGIuaCBcCisJaW5mb2RiLmMgaW5mb2RiLmggXAorCWRpdmVydGRiLmMgXAorCXF1ZXJ5Y21kLmMKKworZHBrZ19zdGF0b3ZlcnJpZGVfU09VUkNFUyA9IFwKKwlmaWxlc2RiLmMgZmlsZXNkYi5oIFwKKwlzdGF0ZGIuYyBcCisJc3RhdGNtZC5jCisKK2Rwa2dfdHJpZ2dlcl9TT1VSQ0VTID0gXAorCXRyaWdjbWQuYworCitURVNUX1ZFUkJPU0UgPSAwCit0ZXN0X3RtcGRpciA9IHQudG1wCit0ZXN0X2Nhc2VzID0gXAorCXQvMTAwX2Rwa2dfZGl2ZXJ0LnQKKworYWxsOiBhbGwtYW0KKworLlNVRkZJWEVTOgorLlNVRkZJWEVTOiAuYyAubyAub2JqCiskKHNyY2RpcikvTWFrZWZpbGUuaW46ICAkKHNyY2RpcikvTWFrZWZpbGUuYW0gJCh0b3Bfc3JjZGlyKS9NYWtlY2hlY2suYW0gJChhbV9fY29uZmlndXJlX2RlcHMpCisJQGZvciBkZXAgaW4gJD87IGRvIFwKKwkgIGNhc2UgJyQoYW1fX2NvbmZpZ3VyZV9kZXBzKScgaW4gXAorCSAgICAqJCRkZXAqKSBcCisJICAgICAgKCBjZCAkKHRvcF9idWlsZGRpcikgJiYgJChNQUtFKSAkKEFNX01BS0VGTEFHUykgYW0tLXJlZnJlc2ggKSBcCisJICAgICAgICAmJiB7IGlmIHRlc3QgLWYgJEA7IHRoZW4gZXhpdCAwOyBlbHNlIGJyZWFrOyBmaTsgfTsgXAorCSAgICAgIGV4aXQgMTs7IFwKKwkgIGVzYWM7IFwKKwlkb25lOyBcCisJZWNobyAnIGNkICQodG9wX3NyY2RpcikgJiYgJChBVVRPTUFLRSkgLS1mb3JlaWduIHNyYy9NYWtlZmlsZSc7IFwKKwkkKGFtX19jZCkgJCh0b3Bfc3JjZGlyKSAmJiBcCisJICAkKEFVVE9NQUtFKSAtLWZvcmVpZ24gc3JjL01ha2VmaWxlCisuUFJFQ0lPVVM6IE1ha2VmaWxlCitNYWtlZmlsZTogJChzcmNkaXIpL01ha2VmaWxlLmluICQodG9wX2J1aWxkZGlyKS9jb25maWcuc3RhdHVzCisJQGNhc2UgJyQ/JyBpbiBcCisJICAqY29uZmlnLnN0YXR1cyopIFwKKwkgICAgY2QgJCh0b3BfYnVpbGRkaXIpICYmICQoTUFLRSkgJChBTV9NQUtFRkxBR1MpIGFtLS1yZWZyZXNoOzsgXAorCSAgKikgXAorCSAgICBlY2hvICcgY2QgJCh0b3BfYnVpbGRkaXIpICYmICQoU0hFTEwpIC4vY29uZmlnLnN0YXR1cyAkKHN1YmRpcikvJEAgJChhbV9fZGVwZmlsZXNfbWF5YmUpJzsgXAorCSAgICBjZCAkKHRvcF9idWlsZGRpcikgJiYgJChTSEVMTCkgLi9jb25maWcuc3RhdHVzICQoc3ViZGlyKS8kQCAkKGFtX19kZXBmaWxlc19tYXliZSk7OyBcCisJZXNhYzsKKworJCh0b3BfYnVpbGRkaXIpL2NvbmZpZy5zdGF0dXM6ICQodG9wX3NyY2RpcikvY29uZmlndXJlICQoQ09ORklHX1NUQVRVU19ERVBFTkRFTkNJRVMpCisJY2QgJCh0b3BfYnVpbGRkaXIpICYmICQoTUFLRSkgJChBTV9NQUtFRkxBR1MpIGFtLS1yZWZyZXNoCisKKyQodG9wX3NyY2RpcikvY29uZmlndXJlOiAgJChhbV9fY29uZmlndXJlX2RlcHMpCisJY2QgJCh0b3BfYnVpbGRkaXIpICYmICQoTUFLRSkgJChBTV9NQUtFRkxBR1MpIGFtLS1yZWZyZXNoCiskKEFDTE9DQUxfTTQpOiAgJChhbV9fYWNsb2NhbF9tNF9kZXBzKQorCWNkICQodG9wX2J1aWxkZGlyKSAmJiAkKE1BS0UpICQoQU1fTUFLRUZMQUdTKSBhbS0tcmVmcmVzaAorJChhbV9fYWNsb2NhbF9tNF9kZXBzKToKK2luc3RhbGwtYmluUFJPR1JBTVM6ICQoYmluX1BST0dSQU1TKQorCUAkKE5PUk1BTF9JTlNUQUxMKQorCXRlc3QgLXogIiQoYmluZGlyKSIgfHwgJChNS0RJUl9QKSAiJChERVNURElSKSQoYmluZGlyKSIKKwlAbGlzdD0nJChiaW5fUFJPR1JBTVMpJzsgdGVzdCAtbiAiJChiaW5kaXIpIiB8fCBsaXN0PTsgXAorCWZvciBwIGluICQkbGlzdDsgZG8gZWNobyAiJCRwICQkcCI7IGRvbmUgfCBcCisJc2VkICdzLyQoRVhFRVhUKSQkLy8nIHwgXAorCXdoaWxlIHJlYWQgcCBwMTsgZG8gaWYgdGVzdCAtZiAkJHA7IFwKKwkgIHRoZW4gZWNobyAiJCRwIjsgZWNobyAiJCRwIjsgZWxzZSA6OyBmaTsgXAorCWRvbmUgfCBcCisJc2VkIC1lICdwO3MsLiovLCw7bjtoJyAtZSAnc3wuKnwufCcgXAorCSAgICAtZSAncDt4O3MsLiovLCw7cy8kKEVYRUVYVCkkJC8vOyQodHJhbnNmb3JtKTtzLyQkLyQoRVhFRVhUKS8nIHwgXAorCXNlZCAnTjtOO047cyxcbiwgLGcnIHwgXAorCSQoQVdLKSAnQkVHSU4geyBmaWxlc1siLiJdID0gIiI7IGRpcnNbIi4iXSA9IDEgfSBcCisJICB7IGQ9JCQzOyBpZiAoZGlyc1tkXSAhPSAxKSB7IHByaW50ICJkIiwgZDsgZGlyc1tkXSA9IDEgfSBcCisJICAgIGlmICgkJDIgPT0gJCQ0KSBmaWxlc1tkXSA9IGZpbGVzW2RdICIgIiAkJDE7IFwKKwkgICAgZWxzZSB7IHByaW50ICJmIiwgJCQzICIvIiAkJDQsICQkMTsgfSB9IFwKKwkgIEVORCB7IGZvciAoZCBpbiBmaWxlcykgcHJpbnQgImYiLCBkLCBmaWxlc1tkXSB9JyB8IFwKKwl3aGlsZSByZWFkIHR5cGUgZGlyIGZpbGVzOyBkbyBcCisJICAgIGlmIHRlc3QgIiQkZGlyIiA9IC47IHRoZW4gZGlyPTsgZWxzZSBkaXI9LyQkZGlyOyBmaTsgXAorCSAgICB0ZXN0IC16ICIkJGZpbGVzIiB8fCB7IFwKKwkgICAgICBlY2hvICIgJChJTlNUQUxMX1BST0dSQU1fRU5WKSAkKElOU1RBTExfUFJPR1JBTSkgJCRmaWxlcyAnJChERVNURElSKSQoYmluZGlyKSQkZGlyJyI7IFwKKwkgICAgICAkKElOU1RBTExfUFJPR1JBTV9FTlYpICQoSU5TVEFMTF9QUk9HUkFNKSAkJGZpbGVzICIkKERFU1RESVIpJChiaW5kaXIpJCRkaXIiIHx8IGV4aXQgJCQ/OyBcCisJICAgIH0gXAorCTsgZG9uZQorCit1bmluc3RhbGwtYmluUFJPR1JBTVM6CisJQCQoTk9STUFMX1VOSU5TVEFMTCkKKwlAbGlzdD0nJChiaW5fUFJPR1JBTVMpJzsgdGVzdCAtbiAiJChiaW5kaXIpIiB8fCBsaXN0PTsgXAorCWZpbGVzPWBmb3IgcCBpbiAkJGxpc3Q7IGRvIGVjaG8gIiQkcCI7IGRvbmUgfCBcCisJICBzZWQgLWUgJ2g7cyxeLiovLCw7cy8kKEVYRUVYVCkkJC8vOyQodHJhbnNmb3JtKScgXAorCSAgICAgIC1lICdzLyQkLyQoRVhFRVhUKS8nIGA7IFwKKwl0ZXN0IC1uICIkJGxpc3QiIHx8IGV4aXQgMDsgXAorCWVjaG8gIiAoIGNkICckKERFU1RESVIpJChiaW5kaXIpJyAmJiBybSAtZiIgJCRmaWxlcyAiKSI7IFwKKwljZCAiJChERVNURElSKSQoYmluZGlyKSIgJiYgcm0gLWYgJCRmaWxlcworCitjbGVhbi1iaW5QUk9HUkFNUzoKKwktdGVzdCAteiAiJChiaW5fUFJPR1JBTVMpIiB8fCBybSAtZiAkKGJpbl9QUk9HUkFNUykKK2Rwa2ckKEVYRUVYVCk6ICQoZHBrZ19PQkpFQ1RTKSAkKGRwa2dfREVQRU5ERU5DSUVTKSAKKwlAcm0gLWYgZHBrZyQoRVhFRVhUKQorCSQoQU1fVl9DQ0xEKSQoTElOSykgJChkcGtnX09CSkVDVFMpICQoZHBrZ19MREFERCkgJChMSUJTKQorZHBrZy1kaXZlcnQkKEVYRUVYVCk6ICQoZHBrZ19kaXZlcnRfT0JKRUNUUykgJChkcGtnX2RpdmVydF9ERVBFTkRFTkNJRVMpIAorCUBybSAtZiBkcGtnLWRpdmVydCQoRVhFRVhUKQorCSQoQU1fVl9DQ0xEKSQoTElOSykgJChkcGtnX2RpdmVydF9PQkpFQ1RTKSAkKGRwa2dfZGl2ZXJ0X0xEQUREKSAkKExJQlMpCitkcGtnLXF1ZXJ5JChFWEVFWFQpOiAkKGRwa2dfcXVlcnlfT0JKRUNUUykgJChkcGtnX3F1ZXJ5X0RFUEVOREVOQ0lFUykgCisJQHJtIC1mIGRwa2ctcXVlcnkkKEVYRUVYVCkKKwkkKEFNX1ZfQ0NMRCkkKExJTkspICQoZHBrZ19xdWVyeV9PQkpFQ1RTKSAkKGRwa2dfcXVlcnlfTERBREQpICQoTElCUykKK2Rwa2ctc3RhdG92ZXJyaWRlJChFWEVFWFQpOiAkKGRwa2dfc3RhdG92ZXJyaWRlX09CSkVDVFMpICQoZHBrZ19zdGF0b3ZlcnJpZGVfREVQRU5ERU5DSUVTKSAKKwlAcm0gLWYgZHBrZy1zdGF0b3ZlcnJpZGUkKEVYRUVYVCkKKwkkKEFNX1ZfQ0NMRCkkKExJTkspICQoZHBrZ19zdGF0b3ZlcnJpZGVfT0JKRUNUUykgJChkcGtnX3N0YXRvdmVycmlkZV9MREFERCkgJChMSUJTKQorZHBrZy10cmlnZ2VyJChFWEVFWFQpOiAkKGRwa2dfdHJpZ2dlcl9PQkpFQ1RTKSAkKGRwa2dfdHJpZ2dlcl9ERVBFTkRFTkNJRVMpIAorCUBybSAtZiBkcGtnLXRyaWdnZXIkKEVYRUVYVCkKKwkkKEFNX1ZfQ0NMRCkkKExJTkspICQoZHBrZ190cmlnZ2VyX09CSkVDVFMpICQoZHBrZ190cmlnZ2VyX0xEQUREKSAkKExJQlMpCisKK21vc3RseWNsZWFuLWNvbXBpbGU6CisJLXJtIC1mICouJChPQkpFWFQpCisKK2Rpc3RjbGVhbi1jb21waWxlOgorCS1ybSAtZiAqLnRhYi5jCisKK0BBTURFUF9UUlVFQEBhbV9faW5jbHVkZUAgQGFtX19xdW90ZUAuLyQoREVQRElSKS9hcmNoaXZlcy5Qb0BhbV9fcXVvdGVACitAQU1ERVBfVFJVRUBAYW1fX2luY2x1ZGVAIEBhbV9fcXVvdGVALi8kKERFUERJUikvY2xlYW51cC5Qb0BhbV9fcXVvdGVACitAQU1ERVBfVFJVRUBAYW1fX2luY2x1ZGVAIEBhbV9fcXVvdGVALi8kKERFUERJUikvY29uZmlndXJlLlBvQGFtX19xdW90ZUAKK0BBTURFUF9UUlVFQEBhbV9faW5jbHVkZUAgQGFtX19xdW90ZUAuLyQoREVQRElSKS9kZXBjb24uUG9AYW1fX3F1b3RlQAorQEFNREVQX1RSVUVAQGFtX19pbmNsdWRlQCBAYW1fX3F1b3RlQC4vJChERVBESVIpL2RpdmVydGNtZC5Qb0BhbV9fcXVvdGVACitAQU1ERVBfVFJVRUBAYW1fX2luY2x1ZGVAIEBhbV9fcXVvdGVALi8kKERFUERJUikvZGl2ZXJ0ZGIuUG9AYW1fX3F1b3RlQAorQEFNREVQX1RSVUVAQGFtX19pbmNsdWRlQCBAYW1fX3F1b3RlQC4vJChERVBESVIpL2VucXVpcnkuUG9AYW1fX3F1b3RlQAorQEFNREVQX1RSVUVAQGFtX19pbmNsdWRlQCBAYW1fX3F1b3RlQC4vJChERVBESVIpL2Vycm9ycy5Qb0BhbV9fcXVvdGVACitAQU1ERVBfVFJVRUBAYW1fX2luY2x1ZGVAIEBhbV9fcXVvdGVALi8kKERFUERJUikvZmlsZXNkYi5Qb0BhbV9fcXVvdGVACitAQU1ERVBfVFJVRUBAYW1fX2luY2x1ZGVAIEBhbV9fcXVvdGVALi8kKERFUERJUikvZmlsdGVycy5Qb0BhbV9fcXVvdGVACitAQU1ERVBfVFJVRUBAYW1fX2luY2x1ZGVAIEBhbV9fcXVvdGVALi8kKERFUERJUikvaGVscC5Qb0BhbV9fcXVvdGVACitAQU1ERVBfVFJVRUBAYW1fX2luY2x1ZGVAIEBhbV9fcXVvdGVALi8kKERFUERJUikvaW5mb2RiLlBvQGFtX19xdW90ZUAKK0BBTURFUF9UUlVFQEBhbV9faW5jbHVkZUAgQGFtX19xdW90ZUAuLyQoREVQRElSKS9tYWluLlBvQGFtX19xdW90ZUAKK0BBTURFUF9UUlVFQEBhbV9faW5jbHVkZUAgQGFtX19xdW90ZUAuLyQoREVQRElSKS9wYWNrYWdlcy5Qb0BhbV9fcXVvdGVACitAQU1ERVBfVFJVRUBAYW1fX2luY2x1ZGVAIEBhbV9fcXVvdGVALi8kKERFUERJUikvcHJvY2Vzc2FyYy5Qb0BhbV9fcXVvdGVACitAQU1ERVBfVFJVRUBAYW1fX2luY2x1ZGVAIEBhbV9fcXVvdGVALi8kKERFUERJUikvcXVlcnljbWQuUG9AYW1fX3F1b3RlQAorQEFNREVQX1RSVUVAQGFtX19pbmNsdWRlQCBAYW1fX3F1b3RlQC4vJChERVBESVIpL3JlbW92ZS5Qb0BhbV9fcXVvdGVACitAQU1ERVBfVFJVRUBAYW1fX2luY2x1ZGVAIEBhbV9fcXVvdGVALi8kKERFUERJUikvc2VsZWN0LlBvQGFtX19xdW90ZUAKK0BBTURFUF9UUlVFQEBhbV9faW5jbHVkZUAgQGFtX19xdW90ZUAuLyQoREVQRElSKS9zdGF0Y21kLlBvQGFtX19xdW90ZUAKK0BBTURFUF9UUlVFQEBhbV9faW5jbHVkZUAgQGFtX19xdW90ZUAuLyQoREVQRElSKS9zdGF0ZGIuUG9AYW1fX3F1b3RlQAorQEFNREVQX1RSVUVAQGFtX19pbmNsdWRlQCBAYW1fX3F1b3RlQC4vJChERVBESVIpL3RyaWdjbWQuUG9AYW1fX3F1b3RlQAorQEFNREVQX1RSVUVAQGFtX19pbmNsdWRlQCBAYW1fX3F1b3RlQC4vJChERVBESVIpL3RyaWdwcm9jLlBvQGFtX19xdW90ZUAKK0BBTURFUF9UUlVFQEBhbV9faW5jbHVkZUAgQGFtX19xdW90ZUAuLyQoREVQRElSKS91cGRhdGUuUG9AYW1fX3F1b3RlQAorCisuYy5vOgorQGFtX19mYXN0ZGVwQ0NfVFJVRUAJJChBTV9WX0NDKSQoQ09NUElMRSkgLU1UICRAIC1NRCAtTVAgLU1GICQoREVQRElSKS8kKi5UcG8gLWMgLW8gJEAgJDwKK0BhbV9fZmFzdGRlcENDX1RSVUVACSQoQU1fVl9hdCkkKGFtX19tdikgJChERVBESVIpLyQqLlRwbyAkKERFUERJUikvJCouUG8KK0BhbV9fZmFzdGRlcENDX0ZBTFNFQAkkKEFNX1ZfQ0MpIEBBTV9CQUNLU0xBU0hACitAQU1ERVBfVFJVRUBAYW1fX2Zhc3RkZXBDQ19GQUxTRUAJc291cmNlPSckPCcgb2JqZWN0PSckQCcgbGlidG9vbD1ubyBAQU1ERVBCQUNLU0xBU0hACitAQU1ERVBfVFJVRUBAYW1fX2Zhc3RkZXBDQ19GQUxTRUAJREVQRElSPSQoREVQRElSKSAkKENDREVQTU9ERSkgJChkZXBjb21wKSBAQU1ERVBCQUNLU0xBU0hACitAYW1fX2Zhc3RkZXBDQ19GQUxTRUAJJChDT01QSUxFKSAtYyAkPAorCisuYy5vYmo6CitAYW1fX2Zhc3RkZXBDQ19UUlVFQAkkKEFNX1ZfQ0MpJChDT01QSUxFKSAtTVQgJEAgLU1EIC1NUCAtTUYgJChERVBESVIpLyQqLlRwbyAtYyAtbyAkQCBgJChDWUdQQVRIX1cpICckPCdgCitAYW1fX2Zhc3RkZXBDQ19UUlVFQAkkKEFNX1ZfYXQpJChhbV9fbXYpICQoREVQRElSKS8kKi5UcG8gJChERVBESVIpLyQqLlBvCitAYW1fX2Zhc3RkZXBDQ19GQUxTRUAJJChBTV9WX0NDKSBAQU1fQkFDS1NMQVNIQAorQEFNREVQX1RSVUVAQGFtX19mYXN0ZGVwQ0NfRkFMU0VACXNvdXJjZT0nJDwnIG9iamVjdD0nJEAnIGxpYnRvb2w9bm8gQEFNREVQQkFDS1NMQVNIQAorQEFNREVQX1RSVUVAQGFtX19mYXN0ZGVwQ0NfRkFMU0VACURFUERJUj0kKERFUERJUikgJChDQ0RFUE1PREUpICQoZGVwY29tcCkgQEFNREVQQkFDS1NMQVNIQAorQGFtX19mYXN0ZGVwQ0NfRkFMU0VACSQoQ09NUElMRSkgLWMgYCQoQ1lHUEFUSF9XKSAnJDwnYAorCitJRDogJChIRUFERVJTKSAkKFNPVVJDRVMpICQoTElTUCkgJChUQUdTX0ZJTEVTKQorCWxpc3Q9JyQoU09VUkNFUykgJChIRUFERVJTKSAkKExJU1ApICQoVEFHU19GSUxFUyknOyBcCisJdW5pcXVlPWBmb3IgaSBpbiAkJGxpc3Q7IGRvIFwKKwkgICAgaWYgdGVzdCAtZiAiJCRpIjsgdGhlbiBlY2hvICQkaTsgZWxzZSBlY2hvICQoc3JjZGlyKS8kJGk7IGZpOyBcCisJICBkb25lIHwgXAorCSAgJChBV0spICd7IGZpbGVzWyQkMF0gPSAxOyBub25lbXB0eSA9IDE7IH0gXAorCSAgICAgIEVORCB7IGlmIChub25lbXB0eSkgeyBmb3IgKGkgaW4gZmlsZXMpIHByaW50IGk7IH07IH0nYDsgXAorCW1raWQgLWZJRCAkJHVuaXF1ZQordGFnczogVEFHUworCitUQUdTOiAgJChIRUFERVJTKSAkKFNPVVJDRVMpICAkKFRBR1NfREVQRU5ERU5DSUVTKSBcCisJCSQoVEFHU19GSUxFUykgJChMSVNQKQorCXNldCB4OyBcCisJaGVyZT1gcHdkYDsgXAorCWxpc3Q9JyQoU09VUkNFUykgJChIRUFERVJTKSAgJChMSVNQKSAkKFRBR1NfRklMRVMpJzsgXAorCXVuaXF1ZT1gZm9yIGkgaW4gJCRsaXN0OyBkbyBcCisJICAgIGlmIHRlc3QgLWYgIiQkaSI7IHRoZW4gZWNobyAkJGk7IGVsc2UgZWNobyAkKHNyY2RpcikvJCRpOyBmaTsgXAorCSAgZG9uZSB8IFwKKwkgICQoQVdLKSAneyBmaWxlc1skJDBdID0gMTsgbm9uZW1wdHkgPSAxOyB9IFwKKwkgICAgICBFTkQgeyBpZiAobm9uZW1wdHkpIHsgZm9yIChpIGluIGZpbGVzKSBwcmludCBpOyB9OyB9J2A7IFwKKwlzaGlmdDsgXAorCWlmIHRlc3QgLXogIiQoRVRBR1NfQVJHUykkJCokJHVuaXF1ZSI7IHRoZW4gOjsgZWxzZSBcCisJICB0ZXN0IC1uICIkJHVuaXF1ZSIgfHwgdW5pcXVlPSQkZW1wdHlfZml4OyBcCisJICBpZiB0ZXN0ICQkIyAtZ3QgMDsgdGhlbiBcCisJICAgICQoRVRBR1MpICQoRVRBR1NGTEFHUykgJChBTV9FVEFHU0ZMQUdTKSAkKEVUQUdTX0FSR1MpIFwKKwkgICAgICAiJCRAIiAkJHVuaXF1ZTsgXAorCSAgZWxzZSBcCisJICAgICQoRVRBR1MpICQoRVRBR1NGTEFHUykgJChBTV9FVEFHU0ZMQUdTKSAkKEVUQUdTX0FSR1MpIFwKKwkgICAgICAkJHVuaXF1ZTsgXAorCSAgZmk7IFwKKwlmaQorY3RhZ3M6IENUQUdTCitDVEFHUzogICQoSEVBREVSUykgJChTT1VSQ0VTKSAgJChUQUdTX0RFUEVOREVOQ0lFUykgXAorCQkkKFRBR1NfRklMRVMpICQoTElTUCkKKwlsaXN0PSckKFNPVVJDRVMpICQoSEVBREVSUykgICQoTElTUCkgJChUQUdTX0ZJTEVTKSc7IFwKKwl1bmlxdWU9YGZvciBpIGluICQkbGlzdDsgZG8gXAorCSAgICBpZiB0ZXN0IC1mICIkJGkiOyB0aGVuIGVjaG8gJCRpOyBlbHNlIGVjaG8gJChzcmNkaXIpLyQkaTsgZmk7IFwKKwkgIGRvbmUgfCBcCisJICAkKEFXSykgJ3sgZmlsZXNbJCQwXSA9IDE7IG5vbmVtcHR5ID0gMTsgfSBcCisJICAgICAgRU5EIHsgaWYgKG5vbmVtcHR5KSB7IGZvciAoaSBpbiBmaWxlcykgcHJpbnQgaTsgfTsgfSdgOyBcCisJdGVzdCAteiAiJChDVEFHU19BUkdTKSQkdW5pcXVlIiBcCisJICB8fCAkKENUQUdTKSAkKENUQUdTRkxBR1MpICQoQU1fQ1RBR1NGTEFHUykgJChDVEFHU19BUkdTKSBcCisJICAgICAkJHVuaXF1ZQorCitHVEFHUzoKKwloZXJlPWAkKGFtX19jZCkgJCh0b3BfYnVpbGRkaXIpICYmIHB3ZGAgXAorCSAgJiYgJChhbV9fY2QpICQodG9wX3NyY2RpcikgXAorCSAgJiYgZ3RhZ3MgLWkgJChHVEFHU19BUkdTKSAiJCRoZXJlIgorCitkaXN0Y2xlYW4tdGFnczoKKwktcm0gLWYgVEFHUyBJRCBHVEFHUyBHUlRBR1MgR1NZTVMgR1BBVEggdGFncworCitkaXN0ZGlyOiAkKERJU1RGSUxFUykKKwlAc3JjZGlyc3RyaXA9YGVjaG8gIiQoc3JjZGlyKSIgfCBzZWQgJ3MvW10uW14kJFxcKl0vXFxcXCYvZydgOyBcCisJdG9wc3JjZGlyc3RyaXA9YGVjaG8gIiQodG9wX3NyY2RpcikiIHwgc2VkICdzL1tdLlteJCRcXCpdL1xcXFwmL2cnYDsgXAorCWxpc3Q9JyQoRElTVEZJTEVTKSc7IFwKKwkgIGRpc3RfZmlsZXM9YGZvciBmaWxlIGluICQkbGlzdDsgZG8gZWNobyAkJGZpbGU7IGRvbmUgfCBcCisJICBzZWQgLWUgInN8XiQkc3JjZGlyc3RyaXAvfHw7dCIgXAorCSAgICAgIC1lICJzfF4kJHRvcHNyY2RpcnN0cmlwL3wkKHRvcF9idWlsZGRpcikvfDt0ImA7IFwKKwljYXNlICQkZGlzdF9maWxlcyBpbiBcCisJICAqLyopICQoTUtESVJfUCkgYGVjaG8gIiQkZGlzdF9maWxlcyIgfCBcCisJCQkgICBzZWQgJy9cLy8hZDtzfF58JChkaXN0ZGlyKS98O3MsL1teL10qJCQsLCcgfCBcCisJCQkgICBzb3J0IC11YCA7OyBcCisJZXNhYzsgXAorCWZvciBmaWxlIGluICQkZGlzdF9maWxlczsgZG8gXAorCSAgaWYgdGVzdCAtZiAkJGZpbGUgfHwgdGVzdCAtZCAkJGZpbGU7IHRoZW4gZD0uOyBlbHNlIGQ9JChzcmNkaXIpOyBmaTsgXAorCSAgaWYgdGVzdCAtZCAkJGQvJCRmaWxlOyB0aGVuIFwKKwkgICAgZGlyPWBlY2hvICIvJCRmaWxlIiB8IHNlZCAtZSAncywvW14vXSokJCwsJ2A7IFwKKwkgICAgaWYgdGVzdCAtZCAiJChkaXN0ZGlyKS8kJGZpbGUiOyB0aGVuIFwKKwkgICAgICBmaW5kICIkKGRpc3RkaXIpLyQkZmlsZSIgLXR5cGUgZCAhIC1wZXJtIC03MDAgLWV4ZWMgY2htb2QgdStyd3gge30gXDs7IFwKKwkgICAgZmk7IFwKKwkgICAgaWYgdGVzdCAtZCAkKHNyY2RpcikvJCRmaWxlICYmIHRlc3QgJCRkICE9ICQoc3JjZGlyKTsgdGhlbiBcCisJICAgICAgY3AgLWZwUiAkKHNyY2RpcikvJCRmaWxlICIkKGRpc3RkaXIpJCRkaXIiIHx8IGV4aXQgMTsgXAorCSAgICAgIGZpbmQgIiQoZGlzdGRpcikvJCRmaWxlIiAtdHlwZSBkICEgLXBlcm0gLTcwMCAtZXhlYyBjaG1vZCB1K3J3eCB7fSBcOzsgXAorCSAgICBmaTsgXAorCSAgICBjcCAtZnBSICQkZC8kJGZpbGUgIiQoZGlzdGRpcikkJGRpciIgfHwgZXhpdCAxOyBcCisJICBlbHNlIFwKKwkgICAgdGVzdCAtZiAiJChkaXN0ZGlyKS8kJGZpbGUiIFwKKwkgICAgfHwgY3AgLXAgJCRkLyQkZmlsZSAiJChkaXN0ZGlyKS8kJGZpbGUiIFwKKwkgICAgfHwgZXhpdCAxOyBcCisJICBmaTsgXAorCWRvbmUKK2NoZWNrLWFtOiBhbGwtYW0KKwkkKE1BS0UpICQoQU1fTUFLRUZMQUdTKSBjaGVjay1sb2NhbAorY2hlY2s6IGNoZWNrLWFtCithbGwtYW06IE1ha2VmaWxlICQoUFJPR1JBTVMpCitpbnN0YWxsZGlyczoKKwlmb3IgZGlyIGluICIkKERFU1RESVIpJChiaW5kaXIpIjsgZG8gXAorCSAgdGVzdCAteiAiJCRkaXIiIHx8ICQoTUtESVJfUCkgIiQkZGlyIjsgXAorCWRvbmUKK2luc3RhbGw6IGluc3RhbGwtYW0KK2luc3RhbGwtZXhlYzogaW5zdGFsbC1leGVjLWFtCitpbnN0YWxsLWRhdGE6IGluc3RhbGwtZGF0YS1hbQordW5pbnN0YWxsOiB1bmluc3RhbGwtYW0KKworaW5zdGFsbC1hbTogYWxsLWFtCisJQCQoTUFLRSkgJChBTV9NQUtFRkxBR1MpIGluc3RhbGwtZXhlYy1hbSBpbnN0YWxsLWRhdGEtYW0KKworaW5zdGFsbGNoZWNrOiBpbnN0YWxsY2hlY2stYW0KK2luc3RhbGwtc3RyaXA6CisJJChNQUtFKSAkKEFNX01BS0VGTEFHUykgSU5TVEFMTF9QUk9HUkFNPSIkKElOU1RBTExfU1RSSVBfUFJPR1JBTSkiIFwKKwkgIGluc3RhbGxfc2hfUFJPR1JBTT0iJChJTlNUQUxMX1NUUklQX1BST0dSQU0pIiBJTlNUQUxMX1NUUklQX0ZMQUc9LXMgXAorCSAgYHRlc3QgLXogJyQoU1RSSVApJyB8fCBcCisJICAgIGVjaG8gIklOU1RBTExfUFJPR1JBTV9FTlY9U1RSSVBQUk9HPSckKFNUUklQKSciYCBpbnN0YWxsCittb3N0bHljbGVhbi1nZW5lcmljOgorCitjbGVhbi1nZW5lcmljOgorCitkaXN0Y2xlYW4tZ2VuZXJpYzoKKwktdGVzdCAteiAiJChDT05GSUdfQ0xFQU5fRklMRVMpIiB8fCBybSAtZiAkKENPTkZJR19DTEVBTl9GSUxFUykKKwktdGVzdCAuID0gIiQoc3JjZGlyKSIgfHwgdGVzdCAteiAiJChDT05GSUdfQ0xFQU5fVlBBVEhfRklMRVMpIiB8fCBybSAtZiAkKENPTkZJR19DTEVBTl9WUEFUSF9GSUxFUykKKworbWFpbnRhaW5lci1jbGVhbi1nZW5lcmljOgorCUBlY2hvICJUaGlzIGNvbW1hbmQgaXMgaW50ZW5kZWQgZm9yIG1haW50YWluZXJzIHRvIHVzZSIKKwlAZWNobyAiaXQgZGVsZXRlcyBmaWxlcyB0aGF0IG1heSByZXF1aXJlIHNwZWNpYWwgdG9vbHMgdG8gcmVidWlsZC4iCitjbGVhbjogY2xlYW4tYW0KKworY2xlYW4tYW06IGNsZWFuLWJpblBST0dSQU1TIGNsZWFuLWdlbmVyaWMgY2xlYW4tbG9jYWwgbW9zdGx5Y2xlYW4tYW0KKworZGlzdGNsZWFuOiBkaXN0Y2xlYW4tYW0KKwktcm0gLXJmIC4vJChERVBESVIpCisJLXJtIC1mIE1ha2VmaWxlCitkaXN0Y2xlYW4tYW06IGNsZWFuLWFtIGRpc3RjbGVhbi1jb21waWxlIGRpc3RjbGVhbi1nZW5lcmljIFwKKwlkaXN0Y2xlYW4tdGFncworCitkdmk6IGR2aS1hbQorCitkdmktYW06CisKK2h0bWw6IGh0bWwtYW0KKworaHRtbC1hbToKKworaW5mbzogaW5mby1hbQorCitpbmZvLWFtOgorCitpbnN0YWxsLWRhdGEtYW06IGluc3RhbGwtZGF0YS1sb2NhbAorCitpbnN0YWxsLWR2aTogaW5zdGFsbC1kdmktYW0KKworaW5zdGFsbC1kdmktYW06CisKK2luc3RhbGwtZXhlYy1hbTogaW5zdGFsbC1iaW5QUk9HUkFNUworCitpbnN0YWxsLWh0bWw6IGluc3RhbGwtaHRtbC1hbQorCitpbnN0YWxsLWh0bWwtYW06CisKK2luc3RhbGwtaW5mbzogaW5zdGFsbC1pbmZvLWFtCisKK2luc3RhbGwtaW5mby1hbToKKworaW5zdGFsbC1tYW46CisKK2luc3RhbGwtcGRmOiBpbnN0YWxsLXBkZi1hbQorCitpbnN0YWxsLXBkZi1hbToKKworaW5zdGFsbC1wczogaW5zdGFsbC1wcy1hbQorCitpbnN0YWxsLXBzLWFtOgorCitpbnN0YWxsY2hlY2stYW06CisKK21haW50YWluZXItY2xlYW46IG1haW50YWluZXItY2xlYW4tYW0KKwktcm0gLXJmIC4vJChERVBESVIpCisJLXJtIC1mIE1ha2VmaWxlCittYWludGFpbmVyLWNsZWFuLWFtOiBkaXN0Y2xlYW4tYW0gbWFpbnRhaW5lci1jbGVhbi1nZW5lcmljCisKK21vc3RseWNsZWFuOiBtb3N0bHljbGVhbi1hbQorCittb3N0bHljbGVhbi1hbTogbW9zdGx5Y2xlYW4tY29tcGlsZSBtb3N0bHljbGVhbi1nZW5lcmljCisKK3BkZjogcGRmLWFtCisKK3BkZi1hbToKKworcHM6IHBzLWFtCisKK3BzLWFtOgorCit1bmluc3RhbGwtYW06IHVuaW5zdGFsbC1iaW5QUk9HUkFNUworCisuTUFLRTogY2hlY2stYW0gaW5zdGFsbC1hbSBpbnN0YWxsLXN0cmlwCisKKy5QSE9OWTogQ1RBR1MgR1RBR1MgYWxsIGFsbC1hbSBjaGVjayBjaGVjay1hbSBjaGVjay1sb2NhbCBjbGVhbiBcCisJY2xlYW4tYmluUFJPR1JBTVMgY2xlYW4tZ2VuZXJpYyBjbGVhbi1sb2NhbCBjdGFncyBkaXN0Y2xlYW4gXAorCWRpc3RjbGVhbi1jb21waWxlIGRpc3RjbGVhbi1nZW5lcmljIGRpc3RjbGVhbi10YWdzIGRpc3RkaXIgZHZpIFwKKwlkdmktYW0gaHRtbCBodG1sLWFtIGluZm8gaW5mby1hbSBpbnN0YWxsIGluc3RhbGwtYW0gXAorCWluc3RhbGwtYmluUFJPR1JBTVMgaW5zdGFsbC1kYXRhIGluc3RhbGwtZGF0YS1hbSBcCisJaW5zdGFsbC1kYXRhLWxvY2FsIGluc3RhbGwtZHZpIGluc3RhbGwtZHZpLWFtIGluc3RhbGwtZXhlYyBcCisJaW5zdGFsbC1leGVjLWFtIGluc3RhbGwtaHRtbCBpbnN0YWxsLWh0bWwtYW0gaW5zdGFsbC1pbmZvIFwKKwlpbnN0YWxsLWluZm8tYW0gaW5zdGFsbC1tYW4gaW5zdGFsbC1wZGYgaW5zdGFsbC1wZGYtYW0gXAorCWluc3RhbGwtcHMgaW5zdGFsbC1wcy1hbSBpbnN0YWxsLXN0cmlwIGluc3RhbGxjaGVjayBcCisJaW5zdGFsbGNoZWNrLWFtIGluc3RhbGxkaXJzIG1haW50YWluZXItY2xlYW4gXAorCW1haW50YWluZXItY2xlYW4tZ2VuZXJpYyBtb3N0bHljbGVhbiBtb3N0bHljbGVhbi1jb21waWxlIFwKKwltb3N0bHljbGVhbi1nZW5lcmljIHBkZiBwZGYtYW0gcHMgcHMtYW0gdGFncyB1bmluc3RhbGwgXAorCXVuaW5zdGFsbC1hbSB1bmluc3RhbGwtYmluUFJPR1JBTVMKKworCitpbnN0YWxsLWRhdGEtbG9jYWw6CisJJChta2Rpcl9wKSAkKERFU1RESVIpJChwa2djb25mZGlyKS9kcGtnLmNmZy5kCisJJChta2Rpcl9wKSAkKERFU1RESVIpJChhZG1pbmRpcikvaW5mbworCSQobWtkaXJfcCkgJChERVNURElSKSQoYWRtaW5kaXIpL3VwZGF0ZXMKKworY2hlY2stY2xlYW46CisJcm0gLWZyICQodGVzdF90bXBkaXIpCisKK2NoZWNrLWxvY2FsOiAkKHRlc3RfZGF0YSkgJCh0ZXN0X2Nhc2VzKQorCSQobWtkaXJfcCkgJCh0ZXN0X3RtcGRpcikKKwlQQVRIPSIkKHRvcF9idWlsZGRpcikvc3JjOiQodG9wX2J1aWxkZGlyKS9zY3JpcHRzOiQodG9wX2J1aWxkZGlyKS91dGlsczokKFBBVEgpIiBcCisJICBMQ19BTEw9QyBcCisJICAkKFRFU1RfRU5WX1ZBUlMpIFwKKwkgIHNyY2Rpcj0kKHNyY2RpcikgYnVpbGRkaXI9JChidWlsZGRpcikgXAorCSAgUEVSTDVMSUI9JCh0b3Bfc3JjZGlyKS9zY3JpcHRzIFBFUkxfRExfTk9OTEFaWT0xIFwKKwkgIFBFUkw1T1BUPSQoVEVTVF9DT1ZFUkFHRSkgXAorCSAgJChQRVJMKSAtSSQodG9wX3NyY2Rpcikvc2NyaXB0cyBcCisJICAgIC1NRXh0VXRpbHM6OkNvbW1hbmQ6Ok1NIC1lICJ0ZXN0X2hhcm5lc3MoJChURVNUX1ZFUkJPU0UpLCAnLicpIiBcCisJICAgICQoYWRkcHJlZml4ICQoc3JjZGlyKS8sJCh0ZXN0X2Nhc2VzKSkKKworY2xlYW4tbG9jYWw6IGNoZWNrLWNsZWFuCisKKyMgVGVsbCB2ZXJzaW9ucyBbMy41OSwzLjYzKSBvZiBHTlUgbWFrZSB0byBub3QgZXhwb3J0IGFsbCB2YXJpYWJsZXMuCisjIE90aGVyd2lzZSBhIHN5c3RlbSBsaW1pdCAoZm9yIFN5c1YgYXQgbGVhc3QpIG1heSBiZSBleGNlZWRlZC4KKy5OT0VYUE9SVDoKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc3JjL2FyY2hpdmVzLmMgYi9kcGtnLTEuMTYuMS4xL3NyYy9hcmNoaXZlcy5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmEyNzViNTUKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3NyYy9hcmNoaXZlcy5jCkBAIC0wLDAgKzEsMTQyNCBAQAorLyoKKyAqIGRwa2cgLSBtYWluIHByb2dyYW0gZm9yIHBhY2thZ2UgbWFuYWdlbWVudAorICogYXJjaGl2ZXMuYyAtIGFjdGlvbnMgdGhhdCBwcm9jZXNzIGFyY2hpdmUgZmlsZXMsIG1haW5seSB1bnBhY2sKKyAqCisgKiBDb3B5cmlnaHQgwqkgMTk5NCwxOTk1IElhbiBKYWNrc29uIDxpYW5AY2hpYXJrLmdyZWVuZW5kLm9yZy51az4KKyAqIENvcHlyaWdodCDCqSAyMDAwIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisgKiBDb3B5cmlnaHQgwqkgMjAwNy0yMDExIEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworI2luY2x1ZGUgPGNvbmZpZy5oPgorI2luY2x1ZGUgPGNvbXBhdC5oPgorCisjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CisjaW5jbHVkZSA8c3lzL3RpbWUuaD4KKyNpbmNsdWRlIDxzeXMvc3RhdC5oPgorCisjaW5jbHVkZSA8YXNzZXJ0Lmg+CisjaW5jbHVkZSA8ZXJybm8uaD4KKyNpbmNsdWRlIDxjdHlwZS5oPgorI2luY2x1ZGUgPHN0cmluZy5oPgorI2luY2x1ZGUgPHRpbWUuaD4KKyNpbmNsdWRlIDxmY250bC5oPgorI2luY2x1ZGUgPHVuaXN0ZC5oPgorI2luY2x1ZGUgPHN0ZGludC5oPgorI2luY2x1ZGUgPHN0ZGxpYi5oPgorI2luY2x1ZGUgPHN0ZGlvLmg+CisjaW5jbHVkZSA8b2JzdGFjay5oPgorI2RlZmluZSBvYnN0YWNrX2NodW5rX2FsbG9jIG1fbWFsbG9jCisjZGVmaW5lIG9ic3RhY2tfY2h1bmtfZnJlZSBmcmVlCisKKyNpbmNsdWRlIDxkcGtnL2kxOG4uaD4KKyNpbmNsdWRlIDxkcGtnL2Rwa2cuaD4KKyNpbmNsdWRlIDxkcGtnL2Rwa2ctZGIuaD4KKyNpbmNsdWRlIDxkcGtnL3BhdGguaD4KKyNpbmNsdWRlIDxkcGtnL2ZkaW8uaD4KKyNpbmNsdWRlIDxkcGtnL2J1ZmZlci5oPgorI2luY2x1ZGUgPGRwa2cvc3VicHJvYy5oPgorI2luY2x1ZGUgPGRwa2cvY29tbWFuZC5oPgorI2luY2x1ZGUgPGRwa2cvZmlsZS5oPgorI2luY2x1ZGUgPGRwa2cvdGFyZm4uaD4KKyNpbmNsdWRlIDxkcGtnL29wdGlvbnMuaD4KKyNpbmNsdWRlIDxkcGtnL3RyaWdsaWIuaD4KKworI2lmZGVmIFdJVEhfU0VMSU5VWAorI2luY2x1ZGUgPHNlbGludXgvc2VsaW51eC5oPgorI2VuZGlmCisKKyNpbmNsdWRlICJmaWxlc2RiLmgiCisjaW5jbHVkZSAibWFpbi5oIgorI2luY2x1ZGUgImFyY2hpdmVzLmgiCisjaW5jbHVkZSAiZmlsdGVycy5oIgorCitzdGF0aWMgaW5saW5lIHZvaWQKK2ZkX3dyaXRlYmFja19pbml0KGludCBmZCkKK3sKKyAgLyogSWdub3JlIHRoZSByZXR1cm4gY29kZSBhcyBpdCBzaG91bGQgYmUgY29uc2lkZXJlZCBlcXVpdmFsZW50IHRvIGFuCisgICAqIGFzeW5jaHJvbm91cyBoaW50IGZvciB0aGUga2VybmVsLCB3ZSBhcmUgZG9pbmcgYW4gZnN5bmMoKSBsYXRlciBvbgorICAgKiBhbnl3YXkuICovCisjaWYgZGVmaW5lZChTWU5DX0ZJTEVfUkFOR0VfV1JJVEUpCisgIHN5bmNfZmlsZV9yYW5nZShmZCwgMCwgMCwgU1lOQ19GSUxFX1JBTkdFX1dSSVRFKTsKKyNlbGlmIGRlZmluZWQoSEFWRV9QT1NJWF9GQURWSVNFKQorICBwb3NpeF9mYWR2aXNlKGZkLCAwLCAwLCBQT1NJWF9GQURWX0RPTlRORUVEKTsKKyNlbmRpZgorfQorCitzdGF0aWMgc3RydWN0IG9ic3RhY2sgdGFyX29iczsKK3N0YXRpYyBib29sIHRhcm9ic19pbml0ID0gZmFsc2U7CisKKy8qKgorICogRW5zdXJlIHRoZSBvYnN0YWNrIGlzIHByb3Blcmx5IGluaXRpYWxpemVkLgorICovCitzdGF0aWMgdm9pZCBlbnN1cmVvYnN0YWNraW5pdCh2b2lkKSB7CisKKyAgaWYgKCF0YXJvYnNfaW5pdCkgeworICAgIG9ic3RhY2tfaW5pdCgmdGFyX29icyk7CisgICAgdGFyb2JzX2luaXQgPSB0cnVlOworICB9Cit9CisKKy8qKgorICogRGVzdHJveSB0aGUgb2JzdGFjay4KKyAqLworc3RhdGljIHZvaWQgZGVzdHJveW9ic3RhY2sodm9pZCkgeworICBpZiAodGFyb2JzX2luaXQpIHsKKyAgICBvYnN0YWNrX2ZyZWUoJnRhcl9vYnMsIE5VTEwpOworICAgIHRhcm9ic19pbml0ID0gZmFsc2U7CisgIH0KK30KKworLyoqCisgKiBDaGVjayBpZiBhIGZpbGUgb3IgZGlyZWN0b3J5IHdpbGwgc2F2ZSBhIHBhY2thZ2UgZnJvbSBkaXNhcHBlYXJhbmNlLgorICoKKyAqIEEgcGFja2FnZSBjYW4gb25seSBiZSBzYXZlZCBieSBhIGZpbGUgb3IgZGlyZWN0b3J5IHdoaWNoIGlzIHBhcnQKKyAqIG9ubHkgb2YgaXRzZWxmIC0gaXQgbXVzdCBiZSBuZWl0aGVyIHBhcnQgb2YgdGhlIG5ldyBwYWNrYWdlIGJlaW5nCisgKiBpbnN0YWxsZWQgbm9yIHBhcnQgb2YgYW55IDNyZCBwYWNrYWdlICh0aGlzIGlzIGltcG9ydGFudCBzbyB0aGF0CisgKiBzaGFyZWQgZGlyZWN0b3JpZXMgZG9uJ3Qgc3RvcCBwYWNrYWdlcyBmcm9tIGRpc2FwcGVhcmluZykuCisgKi8KK2Jvb2wKK2ZpbGVzYXZlc3BhY2thZ2Uoc3RydWN0IGZpbGVpbmxpc3QgKmZpbGUsCisgICAgICAgICAgICAgICAgIHN0cnVjdCBwa2dpbmZvICpwa2d0b2Jlc2F2ZWQsCisgICAgICAgICAgICAgICAgIHN0cnVjdCBwa2dpbmZvICpwa2diZWluZ2luc3RhbGxlZCkKK3sKKyAgc3RydWN0IGZpbGVwYWNrYWdlc19pdGVyYXRvciAqaXRlcjsKKyAgc3RydWN0IHBrZ2luZm8gKmRpdnBrZywgKnRoaXJkcGtnOworCisgIGRlYnVnKGRiZ19lYWNoZmlsZWRldGFpbCwiZmlsZXNhdmVzcGFja2FnZSBmaWxlIGAlcycgcGFja2FnZSAlcyIsCisgICAgICAgIGZpbGUtPm5hbWVub2RlLT5uYW1lLHBrZ3RvYmVzYXZlZC0+bmFtZSk7CisKKyAgLyogSWYgdGhlIGZpbGUgaXMgYSBjb250ZW5kZWQgb25lIGFuZCBpdCdzIG92ZXJyaWRkZW4gYnkgZWl0aGVyCisgICAqIHRoZSBwYWNrYWdlIHdlJ3JlIGNvbnNpZGVyaW5nIGRpc2FwcGVhcmluZyBvciB0aGUgcGFja2FnZQorICAgKiB3ZSdyZSBpbnN0YWxsaW5nIHRoZW4gdGhleSdyZSBub3QgYWN0dWFsbHkgdGhlIHNhbWUgZmlsZSwgc28KKyAgICogd2UgY2FuJ3QgZGlzYXBwZWFyIHRoZSBwYWNrYWdlIC0gaXQgaXMgc2F2ZWQgYnkgdGhpcyBmaWxlLiAqLworICBpZiAoZmlsZS0+bmFtZW5vZGUtPmRpdmVydCAmJiBmaWxlLT5uYW1lbm9kZS0+ZGl2ZXJ0LT51c2VpbnN0ZWFkKSB7CisgICAgZGl2cGtnPSBmaWxlLT5uYW1lbm9kZS0+ZGl2ZXJ0LT5wa2c7CisgICAgaWYgKGRpdnBrZyA9PSBwa2d0b2Jlc2F2ZWQgfHwgZGl2cGtnID09IHBrZ2JlaW5naW5zdGFsbGVkKSB7CisgICAgICBkZWJ1ZyhkYmdfZWFjaGZpbGVkZXRhaWwsImZpbGVzYXZlc3BhY2thZ2UgLi4uIGRpdmVydGVkIC0tIHNhdmUhIik7CisgICAgICByZXR1cm4gdHJ1ZTsKKyAgICB9CisgIH0KKyAgLyogSXMgdGhlIGZpbGUgaW4gdGhlIHBhY2thZ2UgYmVpbmcgaW5zdGFsbGVkPyBJZiBzbyB0aGVuIGl0IGNhbid0IHNhdmUuICovCisgIGlmIChmaWxlLT5uYW1lbm9kZS0+ZmxhZ3MgJiBmbm5mX25ld19pbmFyY2hpdmUpIHsKKyAgICBkZWJ1ZyhkYmdfZWFjaGZpbGVkZXRhaWwsImZpbGVzYXZlc3BhY2thZ2UgLi4uIGluIG5ldyBhcmNoaXZlIC0tIG5vIHNhdmUiKTsKKyAgICByZXR1cm4gZmFsc2U7CisgIH0KKyAgLyogTG9vayBmb3IgYSAzcmQgcGFja2FnZSB3aGljaCBjYW4gdGFrZSBvdmVyIHRoZSBmaWxlIChpbiBjYXNlCisgICAqIGl0J3MgYSBkaXJlY3Rvcnkgd2hpY2ggaXMgc2hhcmVkIGJ5IG1hbnkgcGFja2FnZXMuICovCisgIGl0ZXIgPSBmaWxlcGFja2FnZXNfaXRlcl9uZXcoZmlsZS0+bmFtZW5vZGUpOworICB3aGlsZSAoKHRoaXJkcGtnID0gZmlsZXBhY2thZ2VzX2l0ZXJfbmV4dChpdGVyKSkpIHsKKyAgICBkZWJ1ZyhkYmdfZWFjaGZpbGVkZXRhaWwsICJmaWxlc2F2ZXNwYWNrYWdlIC4uLiBhbHNvIGluICVzIiwKKyAgICAgICAgICB0aGlyZHBrZy0+bmFtZSk7CisKKyAgICAvKiBJcyB0aGlzIG5vdCB0aGUgcGFja2FnZSBiZWluZyBpbnN0YWxsZWQgb3IgdGhlIG9uZSBiZWluZworICAgICAqIGNoZWNrZWQgZm9yIGRpc2FwcGVhcmFuY2U/ICovCisgICAgaWYgKHRoaXJkcGtnID09IHBrZ2JlaW5naW5zdGFsbGVkIHx8IHRoaXJkcGtnID09IHBrZ3RvYmVzYXZlZCkKKyAgICAgIGNvbnRpbnVlOworCisgICAgLyogSWYgIWZpbGVzbGlzdHZhbGlkIHRoZW4gd2UndmUgYWxyZWFkeSBkaXNhcHBlYXJlZCB0aGlzIG9uZSwgc28KKyAgICAgKiB3ZSBzaG91bGRuJ3QgdHJ5IHRvIG1ha2UgaXQgdGFrZSBvdmVyIHRoaXMgc2hhcmVkIGRpcmVjdG9yeS4gKi8KKyAgICBkZWJ1ZyhkYmdfZWFjaGZpbGVkZXRhaWwsImZpbGVzYXZlc3BhY2thZ2UgLi4uICBpcyAzcmQgcGFja2FnZSIpOworCisgICAgaWYgKCF0aGlyZHBrZy0+Y2xpZW50ZGF0YS0+ZmlsZXNsaXN0dmFsaWQpIHsKKyAgICAgIGRlYnVnKGRiZ19lYWNoZmlsZWRldGFpbCwgInByb2Nlc3NfYXJjaGl2ZSAuLi4gYWxyZWFkeSBkaXNhcHBlYXJlZCEiKTsKKyAgICAgIGNvbnRpbnVlOworICAgIH0KKworICAgIC8qIFdlJ3ZlIGZvdW5kIGEgcGFja2FnZSB0aGF0IGNhbiB0YWtlIHRoaXMgZmlsZS4gKi8KKyAgICBkZWJ1ZyhkYmdfZWFjaGZpbGVkZXRhaWwsICJmaWxlc2F2ZXNwYWNrYWdlIC4uLiAgdGFrZW4gLS0gbm8gc2F2ZSIpOworICAgIHJldHVybiBmYWxzZTsKKyAgfQorICBmaWxlcGFja2FnZXNfaXRlcl9mcmVlKGl0ZXIpOworCisgIGRlYnVnKGRiZ19lYWNoZmlsZWRldGFpbCwgImZpbGVzYXZlc3BhY2thZ2UgLi4uIG5vdCB0YWtlbiAtLSBzYXZlICEiKTsKKyAgcmV0dXJuIHRydWU7Cit9CisKK3ZvaWQgY3VfcGF0aG5hbWUoaW50IGFyZ2MsIHZvaWQgKiphcmd2KSB7CisgIGVuc3VyZV9wYXRobmFtZV9ub25leGlzdGluZygoY2hhciopKGFyZ3ZbMF0pKTsKK30KKworaW50IHRhcmZpbGVyZWFkKHZvaWQgKnVkLCBjaGFyICpidWYsIGludCBsZW4pIHsKKyAgc3RydWN0IHRhcmNvbnRleHQgKnRjPSAoc3RydWN0IHRhcmNvbnRleHQqKXVkOworICBpbnQgcjsKKworICByID0gZmRfcmVhZCh0Yy0+YmFja2VuZHBpcGUsIGJ1ZiwgbGVuKTsKKyAgaWYgKHIgPCAwKQorICAgIG9oc2hpdGUoXygiZXJyb3IgcmVhZGluZyBmcm9tIGRwa2ctZGViIHBpcGUiKSk7CisgIHJldHVybiByOworfQorCitzdGF0aWMgdm9pZAordGFyZmlsZV9za2lwX29uZV9mb3J3YXJkKHN0cnVjdCB0YXJjb250ZXh0ICp0Yywgc3RydWN0IHRhcl9lbnRyeSAqdGkpCit7CisgIHNpemVfdCByOworICBjaGFyIGRhdGFidWZbVEFSQkxLU1pdOworCisgIC8qIFdlIG5lZWQgdG8gYWR2YW5jZSB0aGUgdGFyIGZpbGUgdG8gdGhlIG5leHQgb2JqZWN0LCBzbyByZWFkIHRoZQorICAgKiBmaWxlIGRhdGEgYW5kIHNldCBpdCB0byBvYmxpdmlvbi4gKi8KKyAgaWYgKHRpLT50eXBlID09IHRhcl9maWxldHlwZV9maWxlKSB7CisgICAgY2hhciBmbmFtZWJ1ZlsyNTZdOworCisgICAgZmRfc2tpcCh0Yy0+YmFja2VuZHBpcGUsIHRpLT5zaXplLAorICAgICAgICAgICAgXygic2tpcHBlZCB1bnBhY2tpbmcgZmlsZSAnJS4yNTVzJyAocmVwbGFjZWQgb3IgZXhjbHVkZWQ/KSIpLAorICAgICAgICAgICAgcGF0aF9xdW90ZV9maWxlbmFtZShmbmFtZWJ1ZiwgdGktPm5hbWUsIDI1NikpOworICAgIHIgPSB0aS0+c2l6ZSAlIFRBUkJMS1NaOworICAgIGlmIChyID4gMCkKKyAgICAgIGlmIChmZF9yZWFkKHRjLT5iYWNrZW5kcGlwZSwgZGF0YWJ1ZiwgVEFSQkxLU1ogLSByKSA8IDApCisgICAgICAgIG9oc2hpdGUoXygiZXJyb3IgcmVhZGluZyBmcm9tIGRwa2ctZGViIHBpcGUiKSk7CisgIH0KK30KKworaW50IGZuYW1laWRsdTsKK3N0cnVjdCB2YXJidWYgZm5hbWV2YjsKK3N0cnVjdCB2YXJidWYgZm5hbWV0bXB2YjsKK3N0cnVjdCB2YXJidWYgZm5hbWVuZXd2YjsKK3N0cnVjdCBwa2dfZGVjb25mX2xpc3QgKmRlY29uZmlndXJlID0gTlVMTDsKKworc3RhdGljIHRpbWVfdCBjdXJyZW50dGltZTsKKworc3RhdGljIGludAorZG9lc19yZXBsYWNlKHN0cnVjdCBwa2dpbmZvICpuZXdwaWdwLCBzdHJ1Y3QgcGtnYmluICpuZXdwaWZwLAorICAgICAgICAgICAgIHN0cnVjdCBwa2dpbmZvICpvbGRwaWdwLCBzdHJ1Y3QgcGtnYmluICpvbGRwaWZwKQoreworICBzdHJ1Y3QgZGVwZW5kZW5jeSAqZGVwOworCisgIGRlYnVnKGRiZ19kZXBjb24sImRvZXNfcmVwbGFjZSBuZXc9JXMgb2xkPSVzICglcykiLG5ld3BpZ3AtPm5hbWUsCisgICAgICAgIG9sZHBpZ3AtPm5hbWUsIHZlcnNpb25kZXNjcmliZSgmb2xkcGlmcC0+dmVyc2lvbiwgdmRld19hbHdheXMpKTsKKyAgZm9yIChkZXA9IG5ld3BpZnAtPmRlcGVuZHM7IGRlcDsgZGVwPSBkZXAtPm5leHQpIHsKKyAgICBpZiAoZGVwLT50eXBlICE9IGRlcF9yZXBsYWNlcyB8fCBkZXAtPmxpc3QtPmVkICE9IG9sZHBpZ3ApIGNvbnRpbnVlOworICAgIGRlYnVnKGRiZ19kZXBjb25kZXRhaWwsImRvZXNfcmVwbGFjZSAuLi4gZm91bmQgb2xkLCB2ZXJzaW9uICVzIiwKKyAgICAgICAgICB2ZXJzaW9uZGVzY3JpYmUoJmRlcC0+bGlzdC0+dmVyc2lvbix2ZGV3X2Fsd2F5cykpOworICAgIGlmICghdmVyc2lvbnNhdGlzZmllZChvbGRwaWZwLCBkZXAtPmxpc3QpKQorICAgICAgY29udGludWU7CisgICAgZGVidWcoZGJnX2RlcGNvbiwiZG9lc19yZXBsYWNlIC4uLiB5ZXMiKTsKKyAgICByZXR1cm4gdHJ1ZTsKKyAgfQorICBkZWJ1ZyhkYmdfZGVwY29uLCJkb2VzX3JlcGxhY2UgLi4uIG5vIik7CisgIHJldHVybiBmYWxzZTsKK30KKworc3RhdGljIHZvaWQKK3Rhcm9iamVjdF9zZXRfbXRpbWUoc3RydWN0IHRhcl9lbnRyeSAqdGUsIGNvbnN0IGNoYXIgKnBhdGgpCit7CisgIHN0cnVjdCB0aW1ldmFsIHR2WzJdOworCisgIHR2WzBdLnR2X3NlYyA9IGN1cnJlbnR0aW1lOworICB0dlswXS50dl91c2VjID0gMDsKKyAgdHZbMV0udHZfc2VjID0gdGUtPm10aW1lOworICB0dlsxXS50dl91c2VjID0gMDsKKworICBpZiAodGUtPnR5cGUgPT0gdGFyX2ZpbGV0eXBlX3N5bWxpbmspIHsKKyNpZmRlZiBIQVZFX0xVVElNRVMKKyAgICBpZiAobHV0aW1lcyhwYXRoLCB0dikgJiYgZXJybm8gIT0gRU5PU1lTKQorICAgICAgb2hzaGl0ZShfKCJlcnJvciBzZXR0aW5nIHRpbWVzdGFtcHMgb2YgYCUuMjU1cyciKSwgcGF0aCk7CisjZW5kaWYKKyAgfSBlbHNlIHsKKyAgICBpZiAodXRpbWVzKHBhdGgsIHR2KSkKKyAgICAgIG9oc2hpdGUoXygiZXJyb3Igc2V0dGluZyB0aW1lc3RhbXBzIG9mIGAlLjI1NXMnIiksIHBhdGgpOworICB9Cit9CisKK3N0YXRpYyB2b2lkCit0YXJvYmplY3Rfc2V0X3Blcm1zKHN0cnVjdCB0YXJfZW50cnkgKnRlLCBjb25zdCBjaGFyICpwYXRoLCBzdHJ1Y3QgZmlsZV9zdGF0ICpzdCkKK3sKKyAgaWYgKHRlLT50eXBlID09IHRhcl9maWxldHlwZV9maWxlKQorICAgIHJldHVybjsgLyogQWxyZWFkeSBoYW5kbGVkIHVzaW5nIHRoZSBmaWxlIGRlc2NyaXB0b3IuICovCisKKyAgaWYgKHRlLT50eXBlID09IHRhcl9maWxldHlwZV9zeW1saW5rKSB7CisgICAgaWYgKGxjaG93bihwYXRoLCBzdC0+dWlkLCBzdC0+Z2lkKSkKKyAgICAgIG9oc2hpdGUoXygiZXJyb3Igc2V0dGluZyBvd25lcnNoaXAgb2Ygc3ltbGluayBgJS4yNTVzJyIpLCBwYXRoKTsKKyAgfSBlbHNlIHsKKyAgICBpZiAoY2hvd24ocGF0aCwgc3QtPnVpZCwgc3QtPmdpZCkpCisgICAgICBvaHNoaXRlKF8oImVycm9yIHNldHRpbmcgb3duZXJzaGlwIG9mIGAlLjI1NXMnIiksIHBhdGgpOworICAgIGlmIChjaG1vZChwYXRoLCBzdC0+bW9kZSAmIH5TX0lGTVQpKQorICAgICAgb2hzaGl0ZShfKCJlcnJvciBzZXR0aW5nIHBlcm1pc3Npb25zIG9mIGAlLjI1NXMnIiksIHBhdGgpOworICB9Cit9CisKK3N0YXRpYyB2b2lkCit0YXJvYmplY3Rfc2V0X3NlX2NvbnRleHQoY29uc3QgY2hhciAqbWF0Y2hwYXRoLCBjb25zdCBjaGFyICpwYXRoLCBtb2RlX3QgbW9kZSkKK3sKKyNpZmRlZiBXSVRIX1NFTElOVVgKKyAgc3RhdGljIGludCBzZWxpbnV4X2VuYWJsZWQgPSAtMTsKKyAgc2VjdXJpdHlfY29udGV4dF90IHNjb250ZXh0ID0gTlVMTDsKKyAgaW50IHJldDsKKworICAvKiBJZiB0aGVyZSdzIG5vIGZpbGUgdHlwZSwganVzdCBnaXZlIHVwLiAqLworICBpZiAoKG1vZGUgJiBTX0lGTVQpID09IDApCisgICAgcmV0dXJuOworCisgIC8qIFNldCBzZWxpbnV4X2VuYWJsZWQgaWYgaXQgaXMgbm90IGFscmVhZHkgc2V0IChzaW5nbGV0b24pLiAqLworICBpZiAoc2VsaW51eF9lbmFibGVkIDwgMCkKKyAgICBzZWxpbnV4X2VuYWJsZWQgPSAoaXNfc2VsaW51eF9lbmFibGVkKCkgPiAwKTsKKworICAvKiBJZiBTRSBMaW51eCBpcyBub3QgZW5hYmxlZCBqdXN0IGRvIG5vdGhpbmcuICovCisgIGlmICghc2VsaW51eF9lbmFibGVkKQorICAgIHJldHVybjsKKworICAvKiBYWFg6IFdlbGwsIHdlIGNvdWxkIHVzZSBzZXRfbWF0Y2hwYXRoY29uX3ByaW50ZigpIHRvIHJlZGlyZWN0IHRoZQorICAgKiBlcnJvcnMgZnJvbSB0aGUgZm9sbG93aW5nIGJpdCwgYnV0IHRoYXQgc2VlbXMgdG9vIG11Y2ggZWZmb3J0LiAqLworCisgIC8qIERvIG5vdGhpbmcgaWYgd2UgY2FuJ3QgZmlndXJlIG91dCB3aGF0IHRoZSBjb250ZXh0IGlzLCBvciBpZiBpdCBoYXMKKyAgICogbm8gY29udGV4dDsgaW4gd2hpY2ggY2FzZSB0aGUgZGVmYXVsdCBjb250ZXh0IHNoYWxsIGJlIGFwcGxpZWQuICovCisgIHJldCA9IG1hdGNocGF0aGNvbihtYXRjaHBhdGgsIG1vZGUgJiBTX0lGTVQsICZzY29udGV4dCk7CisgIGlmIChyZXQgPT0gLTEgfHwgKHJldCA9PSAwICYmIHNjb250ZXh0ID09IE5VTEwpKQorICAgIHJldHVybjsKKworICBpZiAoc3RyY21wKHNjb250ZXh0LCAiPDxub25lPj4iKSAhPSAwKSB7CisgICAgaWYgKGxzZXRmaWxlY29uKHBhdGgsIHNjb250ZXh0KSA8IDApCisgICAgICAvKiBYWFg6IFRoaXMgbWlnaHQgbmVlZCB0byBiZSBmYXRhbCBpbnN0ZWFkIT8gKi8KKyAgICAgIHBlcnJvcigiRXJyb3Igc2V0dGluZyBzZWN1cml0eSBjb250ZXh0IGZvciBuZXh0IGZpbGUgb2JqZWN0OiIpOworICB9CisKKyAgZnJlZWNvbihzY29udGV4dCk7CisjZW5kaWYgLyogV0lUSF9TRUxJTlVYICovCit9CisKK3ZvaWQgc2V0dXBmbmFtZXZicyhjb25zdCBjaGFyICpmaWxlbmFtZSkgeworICB2YXJidWZfdHJ1bmMoJmZuYW1ldmIsIGZuYW1laWRsdSk7CisgIHZhcmJ1Zl9hZGRfc3RyKCZmbmFtZXZiLCBmaWxlbmFtZSk7CisgIHZhcmJ1Zl9lbmRfc3RyKCZmbmFtZXZiKTsKKworICB2YXJidWZfdHJ1bmMoJmZuYW1ldG1wdmIsIGZuYW1laWRsdSk7CisgIHZhcmJ1Zl9hZGRfc3RyKCZmbmFtZXRtcHZiLCBmaWxlbmFtZSk7CisgIHZhcmJ1Zl9hZGRfc3RyKCZmbmFtZXRtcHZiLCBEUEtHVEVNUEVYVCk7CisgIHZhcmJ1Zl9lbmRfc3RyKCZmbmFtZXRtcHZiKTsKKworICB2YXJidWZfdHJ1bmMoJmZuYW1lbmV3dmIsIGZuYW1laWRsdSk7CisgIHZhcmJ1Zl9hZGRfc3RyKCZmbmFtZW5ld3ZiLCBmaWxlbmFtZSk7CisgIHZhcmJ1Zl9hZGRfc3RyKCZmbmFtZW5ld3ZiLCBEUEtHTkVXRVhUKTsKKyAgdmFyYnVmX2VuZF9zdHIoJmZuYW1lbmV3dmIpOworCisgIGRlYnVnKGRiZ19lYWNoZmlsZWRldGFpbCwgInNldHVwdm5hbWV2YnMgbWFpbj1gJXMnIHRtcD1gJXMnIG5ldz1gJXMnIiwKKyAgICAgICAgZm5hbWV2Yi5idWYsIGZuYW1ldG1wdmIuYnVmLCBmbmFtZW5ld3ZiLmJ1Zik7Cit9CisKKy8qKgorICogU2VjdXJlbHkgcmVtb3ZlIGEgcGF0aG5hbWUuCisgKgorICogVGhpcyBpcyBhIHNlY3VyZSB2ZXJzaW9uIG9mIHJlbW92ZSgzKSB1c2luZyBzZWN1cmVfdW5saW5rKCkgaW5zdGVhZCBvZgorICogdW5saW5rKDIpLgorICoKKyAqIEByZXR2YWwgIDAgT24gc3VjY2Vzcy4KKyAqIEByZXR2YWwgLTEgT24gZmFpbHVyZSwganVzdCBsaWtlIHVubGluaygyKSAmIHJtZGlyKDIpLgorICovCitpbnQKK3NlY3VyZV9yZW1vdmUoY29uc3QgY2hhciAqZmlsZW5hbWUpCit7CisgIGludCByLCBlOworCisgIGlmICghcm1kaXIoZmlsZW5hbWUpKSB7CisgICAgZGVidWcoZGJnX2VhY2hmaWxlZGV0YWlsLCAic2VjdXJlX3JlbW92ZSAnJXMnIHJtZGlyIE9LIiwgZmlsZW5hbWUpOworICAgIHJldHVybiAwOworICB9CisKKyAgaWYgKGVycm5vICE9IEVOT1RESVIpIHsKKyAgICBlPSBlcnJubzsKKyAgICBkZWJ1ZyhkYmdfZWFjaGZpbGVkZXRhaWwsICJzZWN1cmVfcmVtb3ZlICclcycgcm1kaXIgJXMiLCBmaWxlbmFtZSwKKyAgICAgICAgICBzdHJlcnJvcihlKSk7CisgICAgZXJybm89IGU7IHJldHVybiAtMTsKKyAgfQorCisgIHIgPSBzZWN1cmVfdW5saW5rKGZpbGVuYW1lKTsKKyAgZSA9IGVycm5vOworICBkZWJ1ZyhkYmdfZWFjaGZpbGVkZXRhaWwsICJzZWN1cmVfcmVtb3ZlICclcycgdW5saW5rICVzIiwKKyAgICAgICAgZmlsZW5hbWUsIHIgPyBzdHJlcnJvcihlKSA6ICJPSyIpOworICBlcnJubz0gZTsgcmV0dXJuIHI7Cit9CisKK3N0cnVjdCBmaWxlaW5saXN0ICphZGRmaWxldG9saXN0KHN0cnVjdCB0YXJjb250ZXh0ICp0YywKKwkJCQkgc3RydWN0IGZpbGVuYW1lbm9kZSAqbmFtZW5vZGUpIHsKKyAgc3RydWN0IGZpbGVpbmxpc3QgKm5pZmQ7CisKKyAgbmlmZD0gb2JzdGFja19hbGxvYygmdGFyX29icywgc2l6ZW9mKHN0cnVjdCBmaWxlaW5saXN0KSk7CisgIG5pZmQtPm5hbWVub2RlPSBuYW1lbm9kZTsKKyAgbmlmZC0+bmV4dCA9IE5VTEw7CisgICp0Yy0+bmV3ZmlsZXNwID0gbmlmZDsKKyAgdGMtPm5ld2ZpbGVzcCA9ICZuaWZkLT5uZXh0OworICByZXR1cm4gbmlmZDsKK30KKworc3RhdGljIHZvaWQKK3JlbW92ZV9maWxlX2Zyb21fbGlzdChzdHJ1Y3QgdGFyY29udGV4dCAqdGMsIHN0cnVjdCB0YXJfZW50cnkgKnRpLAorICAgICAgICAgICAgICAgICAgICAgIHN0cnVjdCBmaWxlaW5saXN0ICoqb2xkbmlmZCwKKyAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3QgZmlsZWlubGlzdCAqbmlmZCkKK3sKKyAgb2JzdGFja19mcmVlKCZ0YXJfb2JzLCBuaWZkKTsKKyAgdGMtPm5ld2ZpbGVzcCA9IG9sZG5pZmQ7CisgICpvbGRuaWZkID0gTlVMTDsKK30KKworc3RhdGljIGJvb2wKK2xpbmt0b3NhbWVleGlzdGluZ2Rpcihjb25zdCBzdHJ1Y3QgdGFyX2VudHJ5ICp0aSwgY29uc3QgY2hhciAqZm5hbWUsCisgICAgICAgICAgICAgICAgICAgICAgc3RydWN0IHZhcmJ1ZiAqc3ltbGlua2ZuKQoreworICBzdHJ1Y3Qgc3RhdCBvbGRzdGFiLCBuZXdzdGFiOworICBpbnQgc3RhdHI7CisgIGNvbnN0IGNoYXIgKmxhc3RzbGFzaDsKKworICBzdGF0cj0gc3RhdChmbmFtZSwgJm9sZHN0YWIpOworICBpZiAoc3RhdHIpIHsKKyAgICBpZiAoIShlcnJubyA9PSBFTk9FTlQgfHwgZXJybm8gPT0gRUxPT1AgfHwgZXJybm8gPT0gRU5PVERJUikpCisgICAgICBvaHNoaXRlKF8oImZhaWxlZCB0byBzdGF0IChkZXJlZmVyZW5jZSkgZXhpc3Rpbmcgc3ltbGluayBgJS4yNTBzJyIpLAorICAgICAgICAgICAgICBmbmFtZSk7CisgICAgcmV0dXJuIGZhbHNlOworICB9CisgIGlmICghU19JU0RJUihvbGRzdGFiLnN0X21vZGUpKQorICAgIHJldHVybiBmYWxzZTsKKworICAvKiBCdXQgaXMgaXQgdG8gdGhlIHNhbWUgZGlyPyAqLworICB2YXJidWZfcmVzZXQoc3ltbGlua2ZuKTsKKyAgaWYgKHRpLT5saW5rbmFtZVswXSA9PSAnLycpIHsKKyAgICB2YXJidWZfYWRkX3N0cihzeW1saW5rZm4sIGluc3RkaXIpOworICB9IGVsc2UgeworICAgIGxhc3RzbGFzaD0gc3RycmNocihmbmFtZSwgJy8nKTsKKyAgICBhc3NlcnQobGFzdHNsYXNoKTsKKyAgICB2YXJidWZfYWRkX2J1ZihzeW1saW5rZm4sIGZuYW1lLCAobGFzdHNsYXNoIC0gZm5hbWUpICsgMSk7CisgIH0KKyAgdmFyYnVmX2FkZF9zdHIoc3ltbGlua2ZuLCB0aS0+bGlua25hbWUpOworICB2YXJidWZfZW5kX3N0cihzeW1saW5rZm4pOworCisgIHN0YXRyPSBzdGF0KHN5bWxpbmtmbi0+YnVmLCAmbmV3c3RhYik7CisgIGlmIChzdGF0cikgeworICAgIGlmICghKGVycm5vID09IEVOT0VOVCB8fCBlcnJubyA9PSBFTE9PUCB8fCBlcnJubyA9PSBFTk9URElSKSkKKyAgICAgIG9oc2hpdGUoXygiZmFpbGVkIHRvIHN0YXQgKGRlcmVmZXJlbmNlKSBwcm9wb3NlZCBuZXcgc3ltbGluayB0YXJnZXQiCisgICAgICAgICAgICAgICAgIiBgJS4yNTBzJyBmb3Igc3ltbGluayBgJS4yNTBzJyIpLCBzeW1saW5rZm4tPmJ1ZiwgZm5hbWUpOworICAgIHJldHVybiBmYWxzZTsKKyAgfQorICBpZiAoIVNfSVNESVIobmV3c3RhYi5zdF9tb2RlKSkKKyAgICByZXR1cm4gZmFsc2U7CisgIGlmIChuZXdzdGFiLnN0X2RldiAhPSBvbGRzdGFiLnN0X2RldiB8fAorICAgICAgbmV3c3RhYi5zdF9pbm8gIT0gb2xkc3RhYi5zdF9pbm8pCisgICAgcmV0dXJuIGZhbHNlOworICByZXR1cm4gdHJ1ZTsKK30KKworaW50Cit0YXJvYmplY3Qodm9pZCAqY3R4LCBzdHJ1Y3QgdGFyX2VudHJ5ICp0aSkKK3sKKyAgc3RhdGljIHN0cnVjdCB2YXJidWYgY29uZmZkZXJlZm4sIGhhcmRsaW5rZm4sIHN5bWxpbmtmbjsKKyAgc3RhdGljIGludCBmZDsKKyAgY29uc3QgY2hhciAqdXNlbmFtZTsKKyAgc3RydWN0IGZpbGVuYW1lbm9kZSAqdXNlbm9kZTsKKyAgc3RydWN0IGZpbGVuYW1lbm9kZSAqbGlua25vZGU7CisKKyAgc3RydWN0IGNvbmZmaWxlICpjb25mZjsKKyAgc3RydWN0IHRhcmNvbnRleHQgKnRjID0gY3R4OworICBib29sIGV4aXN0aW5nZGlyLCBrZWVwZXhpc3Rpbmc7CisgIGludCBzdGF0cjsKKyAgc3NpemVfdCByOworICBzdHJ1Y3Qgc3RhdCBzdGFiLCBzdGFidG1wOworICBjaGFyIGRhdGFidWZbVEFSQkxLU1pdOworICBzdHJ1Y3QgZmlsZV9zdGF0ICpzdDsKKyAgc3RydWN0IGZpbGVpbmxpc3QgKm5pZmQsICoqb2xkbmlmZDsKKyAgc3RydWN0IHBrZ2luZm8gKmRpdnBrZywgKm90aGVycGtnOworCisgIGVuc3VyZW9ic3RhY2tpbml0KCk7CisKKyAgLyogQXBwZW5kIHRvIGxpc3Qgb2YgZmlsZXMuCisgICAqIFRoZSB0cmFpbGluZyDigJgv4oCZIHB1dCBvbiB0aGUgZW5kIG9mIG5hbWVzIGluIHRhcmZpbGVzIGhhcyBhbHJlYWR5CisgICAqIGJlZW4gc3RyaXBwZWQgYnkgdGFyX2V4dHJhY3RvcigpLiAqLworICBvbGRuaWZkPSB0Yy0+bmV3ZmlsZXNwOworICBuaWZkPSBhZGRmaWxldG9saXN0KHRjLCBmaW5kbmFtZW5vZGUodGktPm5hbWUsIDApKTsKKyAgbmlmZC0+bmFtZW5vZGUtPmZsYWdzIHw9IGZubmZfbmV3X2luYXJjaGl2ZTsKKworICBkZWJ1ZyhkYmdfZWFjaGZpbGUsCisgICAgICAgICJ0YXJvYmplY3QgdGktPm5hbWU9JyVzJyBtb2RlPSVsbyBvd25lcj0ldS4ldSB0eXBlPSVkKCVjKSIKKyAgICAgICAgIiB0aS0+bGlua25hbWU9JyVzJyBuYW1lbm9kZT0nJXMnIGZsYWdzPSVvIGluc3RlYWQ9JyVzJyIsCisgICAgICAgIHRpLT5uYW1lLCAobG9uZyl0aS0+c3RhdC5tb2RlLAorICAgICAgICAodW5zaWduZWQpdGktPnN0YXQudWlkLCAodW5zaWduZWQpdGktPnN0YXQuZ2lkLAorICAgICAgICB0aS0+dHlwZSwKKyAgICAgICAgdGktPnR5cGUgPj0gJzAnICYmIHRpLT50eXBlIDw9ICc2JyA/ICItaGxjYmRwIlt0aS0+dHlwZSAtICcwJ10gOiAnPycsCisgICAgICAgIHRpLT5saW5rbmFtZSwKKyAgICAgICAgbmlmZC0+bmFtZW5vZGUtPm5hbWUsIG5pZmQtPm5hbWVub2RlLT5mbGFncywKKyAgICAgICAgbmlmZC0+bmFtZW5vZGUtPmRpdmVydCAmJiBuaWZkLT5uYW1lbm9kZS0+ZGl2ZXJ0LT51c2VpbnN0ZWFkCisgICAgICAgID8gbmlmZC0+bmFtZW5vZGUtPmRpdmVydC0+dXNlaW5zdGVhZC0+bmFtZSA6ICI8bm9uZT4iKTsKKworICBpZiAobmlmZC0+bmFtZW5vZGUtPmRpdmVydCAmJiBuaWZkLT5uYW1lbm9kZS0+ZGl2ZXJ0LT5jYW1lZnJvbSkgeworICAgIGRpdnBrZz0gbmlmZC0+bmFtZW5vZGUtPmRpdmVydC0+cGtnOworCisgICAgaWYgKGRpdnBrZykgeworICAgICAgZm9yY2libGVlcnIoZmNfb3ZlcndyaXRlZGl2ZXJ0ZWQsCisgICAgICAgICAgICAgICAgICBfKCJ0cnlpbmcgdG8gb3ZlcndyaXRlIGAlLjI1MHMnLCB3aGljaCBpcyB0aGUgIgorICAgICAgICAgICAgICAgICAgICAiZGl2ZXJ0ZWQgdmVyc2lvbiBvZiBgJS4yNTBzJyAocGFja2FnZTogJS4xMDBzKSIpLAorICAgICAgICAgICAgICAgICAgbmlmZC0+bmFtZW5vZGUtPm5hbWUsIG5pZmQtPm5hbWVub2RlLT5kaXZlcnQtPmNhbWVmcm9tLT5uYW1lLAorICAgICAgICAgICAgICAgICAgZGl2cGtnLT5uYW1lKTsKKyAgICB9IGVsc2UgeworICAgICAgZm9yY2libGVlcnIoZmNfb3ZlcndyaXRlZGl2ZXJ0ZWQsCisgICAgICAgICAgICAgICAgICBfKCJ0cnlpbmcgdG8gb3ZlcndyaXRlIGAlLjI1MHMnLCB3aGljaCBpcyB0aGUgIgorICAgICAgICAgICAgICAgICAgICAiZGl2ZXJ0ZWQgdmVyc2lvbiBvZiBgJS4yNTBzJyIpLAorICAgICAgICAgICAgICAgICAgbmlmZC0+bmFtZW5vZGUtPm5hbWUsIG5pZmQtPm5hbWVub2RlLT5kaXZlcnQtPmNhbWVmcm9tLT5uYW1lKTsKKyAgICB9CisgIH0KKworICBpZiAobmlmZC0+bmFtZW5vZGUtPnN0YXRvdmVycmlkZSkKKyAgICBzdCA9IG5pZmQtPm5hbWVub2RlLT5zdGF0b3ZlcnJpZGU7CisgIGVsc2UKKyAgICBzdCA9ICZ0aS0+c3RhdDsKKworICB1c2Vub2RlID0gbmFtZW5vZGV0b3VzZShuaWZkLT5uYW1lbm9kZSwgdGMtPnBrZyk7CisgIHVzZW5hbWUgPSB1c2Vub2RlLT5uYW1lICsgMTsgLyogU2tpcCB0aGUgbGVhZGluZyAnLycuICovCisKKyAgdHJpZ19maWxlX2FjdGl2YXRlKHVzZW5vZGUsIHRjLT5wa2cpOworCisgIGlmIChuaWZkLT5uYW1lbm9kZS0+ZmxhZ3MgJiBmbm5mX25ld19jb25mZikgeworICAgIC8qIElmIGl0J3MgYSBjb25mZmlsZSB3ZSBoYXZlIHRvIGV4dHJhY3QgaXQgbmV4dCB0byB0aGUgaW5zdGFsbGVkCisgICAgICogdmVyc2lvbiAoaS5lLiB3ZSBkbyB0aGUgdXN1YWwgbGluay1mb2xsb3dpbmcpLiAqLworICAgIGlmIChjb25mZmRlcmVmKHRjLT5wa2csICZjb25mZmRlcmVmbiwgdXNlbmFtZSkpCisgICAgICB1c2VuYW1lPSBjb25mZmRlcmVmbi5idWY7CisgICAgZGVidWcoZGJnX2NvbmZmLCJ0YXJvYmplY3QgZm5uZl9uZXdfY29uZmYgZGVyZWY9YCVzJyIsdXNlbmFtZSk7CisgIH0KKworICBzZXR1cGZuYW1ldmJzKHVzZW5hbWUpOworCisgIHN0YXRyPSBsc3RhdChmbmFtZXZiLmJ1Ziwmc3RhYik7CisgIGlmIChzdGF0cikgeworICAgIC8qIFRoZSBsc3RhdCBmYWlsZWQuICovCisgICAgaWYgKGVycm5vICE9IEVOT0VOVCAmJiBlcnJubyAhPSBFTk9URElSKQorICAgICAgb2hzaGl0ZShfKCJ1bmFibGUgdG8gc3RhdCBgJS4yNTVzJyAod2hpY2ggSSB3YXMgYWJvdXQgdG8gaW5zdGFsbCkiKSwKKyAgICAgICAgICAgICAgdGktPm5hbWUpOworICAgIC8qIE9LLCBzbyBpdCBkb2Vzbid0IGV4aXN0LgorICAgICAqIEhvd2V2ZXIsIGl0J3MgcG9zc2libGUgdGhhdCB3ZSB3ZXJlIGluIHRoZSBtaWRkbGUgb2Ygc29tZSBvdGhlcgorICAgICAqIGJhY2t1cC9yZXN0b3JlIG9wZXJhdGlvbiBhbmQgd2VyZSBydWRlbHkgaW50ZXJydXB0ZWQuCisgICAgICogU28sIHdlIHNlZSBpZiB3ZSBoYXZlIC5kcGtnLXRtcCwgYW5kIGlmIHNvIHdlIHJlc3RvcmUgaXQuICovCisgICAgaWYgKHJlbmFtZShmbmFtZXRtcHZiLmJ1ZixmbmFtZXZiLmJ1ZikpIHsKKyAgICAgIGlmIChlcnJubyAhPSBFTk9FTlQgJiYgZXJybm8gIT0gRU5PVERJUikKKyAgICAgICAgb2hzaGl0ZShfKCJ1bmFibGUgdG8gY2xlYW4gdXAgbWVzcyBzdXJyb3VuZGluZyBgJS4yNTVzJyBiZWZvcmUgIgorICAgICAgICAgICAgICAgICAgImluc3RhbGxpbmcgYW5vdGhlciB2ZXJzaW9uIiksIHRpLT5uYW1lKTsKKyAgICAgIGRlYnVnKGRiZ19lYWNoZmlsZWRldGFpbCwidGFyb2JqZWN0IG5vbmV4aXN0ZW50Iik7CisgICAgfSBlbHNlIHsKKyAgICAgIGRlYnVnKGRiZ19lYWNoZmlsZWRldGFpbCwidGFyb2JqZWN0IHJlc3RvcmVkIHRtcCB0byBtYWluIik7CisgICAgICBzdGF0cj0gbHN0YXQoZm5hbWV2Yi5idWYsJnN0YWIpOworICAgICAgaWYgKHN0YXRyKSBvaHNoaXRlKF8oInVuYWJsZSB0byBzdGF0IHJlc3RvcmVkIGAlLjI1NXMnIGJlZm9yZSBpbnN0YWxsaW5nIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIiBhbm90aGVyIHZlcnNpb24iKSwgdGktPm5hbWUpOworICAgIH0KKyAgfSBlbHNlIHsKKyAgICBkZWJ1ZyhkYmdfZWFjaGZpbGVkZXRhaWwsInRhcm9iamVjdCBhbHJlYWR5IGV4aXN0cyIpOworICB9CisKKyAgLyogQ2hlY2sgdG8gc2VlIGlmIGl0J3MgYSBkaXJlY3Rvcnkgb3IgbGluayB0byBvbmUgYW5kIHdlIGRvbid0IG5lZWQgdG8KKyAgICogZG8gYW55dGhpbmcuIFRoaXMgaGFzIHRvIGJlIGRvbmUgbm93IHNvIHRoYXQgd2UgZG9uJ3QgZGllIGR1ZSB0bworICAgKiBhIGZpbGUgb3ZlcndyaXRpbmcgY29uZmxpY3QuICovCisgIGV4aXN0aW5nZGlyID0gZmFsc2U7CisgIHN3aXRjaCAodGktPnR5cGUpIHsKKyAgY2FzZSB0YXJfZmlsZXR5cGVfc3ltbGluazoKKyAgICAvKiBJZiBpdCdzIGFscmVhZHkgYW4gZXhpc3RpbmcgZGlyZWN0b3J5LCBkbyBub3RoaW5nLiAqLworICAgIGlmICghc3RhdHIgJiYgU19JU0RJUihzdGFiLnN0X21vZGUpKSB7CisgICAgICBkZWJ1ZyhkYmdfZWFjaGZpbGVkZXRhaWwsICJ0YXJvYmplY3Qgc3ltbGluayBleGlzdHMgYXMgZGlyZWN0b3J5Iik7CisgICAgICBleGlzdGluZ2RpciA9IHRydWU7CisgICAgfSBlbHNlIGlmICghc3RhdHIgJiYgU19JU0xOSyhzdGFiLnN0X21vZGUpKSB7CisgICAgICBpZiAobGlua3Rvc2FtZWV4aXN0aW5nZGlyKHRpLCBmbmFtZXZiLmJ1ZiwgJnN5bWxpbmtmbikpCisgICAgICAgIGV4aXN0aW5nZGlyID0gdHJ1ZTsKKyAgICB9CisgICAgYnJlYWs7CisgIGNhc2UgdGFyX2ZpbGV0eXBlX2RpcjoKKyAgICAvKiBJZiBpdCdzIGFscmVhZHkgYW4gZXhpc3RpbmcgZGlyZWN0b3J5LCBkbyBub3RoaW5nLiAqLworICAgIGlmICghc3RhdChmbmFtZXZiLmJ1Ziwmc3RhYnRtcCkgJiYgU19JU0RJUihzdGFidG1wLnN0X21vZGUpKSB7CisgICAgICBkZWJ1ZyhkYmdfZWFjaGZpbGVkZXRhaWwsICJ0YXJvYmplY3QgZGlyZWN0b3J5IGV4aXN0cyIpOworICAgICAgZXhpc3RpbmdkaXIgPSB0cnVlOworICAgIH0KKyAgICBicmVhazsKKyAgY2FzZSB0YXJfZmlsZXR5cGVfZmlsZToKKyAgY2FzZSB0YXJfZmlsZXR5cGVfY2hhcmRldjoKKyAgY2FzZSB0YXJfZmlsZXR5cGVfYmxvY2tkZXY6CisgIGNhc2UgdGFyX2ZpbGV0eXBlX2ZpZm86CisgIGNhc2UgdGFyX2ZpbGV0eXBlX2hhcmRsaW5rOgorICAgIGJyZWFrOworICBkZWZhdWx0OgorICAgIG9oc2hpdChfKCJhcmNoaXZlIGNvbnRhaW5lZCBvYmplY3QgYCUuMjU1cycgb2YgdW5rbm93biB0eXBlIDB4JXgiKSwKKyAgICAgICAgICAgdGktPm5hbWUsIHRpLT50eXBlKTsKKyAgfQorCisgIGtlZXBleGlzdGluZyA9IGZhbHNlOworICBpZiAoIWV4aXN0aW5nZGlyKSB7CisgICAgc3RydWN0IGZpbGVwYWNrYWdlc19pdGVyYXRvciAqaXRlcjsKKworICAgIGl0ZXIgPSBmaWxlcGFja2FnZXNfaXRlcl9uZXcobmlmZC0+bmFtZW5vZGUpOworICAgIHdoaWxlICgob3RoZXJwa2cgPSBmaWxlcGFja2FnZXNfaXRlcl9uZXh0KGl0ZXIpKSkgeworICAgICAgaWYgKG90aGVycGtnID09IHRjLT5wa2cpCisgICAgICAgIGNvbnRpbnVlOworICAgICAgZGVidWcoZGJnX2VhY2hmaWxlLCAidGFyb2JqZWN0IC4uLiBmb3VuZCBpbiAlcyIsIG90aGVycGtnLT5uYW1lKTsKKworICAgICAgaWYgKG5pZmQtPm5hbWVub2RlLT5kaXZlcnQgJiYgbmlmZC0+bmFtZW5vZGUtPmRpdmVydC0+dXNlaW5zdGVhZCkgeworICAgICAgICAvKiBSaWdodCwgc28gd2UgbWF5IGJlIGRpdmVydGluZyB0aGlzIGZpbGUuIFRoaXMgbWFrZXMgdGhlIGNvbmZsaWN0CisgICAgICAgICAqIE9LIGlmZiBvbmUgb2YgdXMgaXMgdGhlIGRpdmVydGluZyBwYWNrYWdlICh3ZSBkb24ndCBuZWVkIHRvCisgICAgICAgICAqIGNoZWNrIGZvciBib3RoIGJlaW5nIHRoZSBkaXZlcnRpbmcgcGFja2FnZSwgb2J2aW91c2x5KS4gKi8KKyAgICAgICAgZGl2cGtnID0gbmlmZC0+bmFtZW5vZGUtPmRpdmVydC0+cGtnOworICAgICAgICBkZWJ1ZyhkYmdfZWFjaGZpbGUsICJ0YXJvYmplY3QgLi4uIGRpdmVydGVkLCBkaXZwa2c9JXMiLAorICAgICAgICAgICAgICBkaXZwa2cgPyBkaXZwa2ctPm5hbWUgOiAiPG5vbmU+Iik7CisgICAgICAgIGlmIChvdGhlcnBrZyA9PSBkaXZwa2cgfHwgdGMtPnBrZyA9PSBkaXZwa2cpCisgICAgICAgICAgY29udGludWU7CisgICAgICB9CisKKyAgICAgIC8qIElmIHRoZSBuZXcgb2JqZWN0IGlzIGEgZGlyZWN0b3J5IGFuZCB0aGUgcHJldmlvdXMgb2JqZWN0IGRvZXMKKyAgICAgICAqIG5vdCBleGlzdCBhc3N1bWUgaXQncyBhbHNvIGEgZGlyZWN0b3J5IGFuZCBza2lwIGZ1cnRoZXIgY2hlY2tzLgorICAgICAgICogWFhYOiBJZGVhbGx5IHdpdGggbW9yZSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgaW5zdGFsbGVkIGZpbGVzIHdlCisgICAgICAgKiBjb3VsZCBwZXJmb3JtIG1vcmUgY2xldmVyIGNoZWNrcy4gKi8KKyAgICAgIGlmIChzdGF0ciAhPSAwICYmIHRpLT50eXBlID09IHRhcl9maWxldHlwZV9kaXIpIHsKKyAgICAgICAgZGVidWcoZGJnX2VhY2hmaWxlLCAidGFyb2JqZWN0IC4uLiBhc3N1bWluZyBzaGFyZWQgZGlyZWN0b3J5Iik7CisgICAgICAgIGNvbnRpbnVlOworICAgICAgfQorCisgICAgICAvKiBOb3BlPyBIbW0sIGZpbGUgY29uZmxpY3QsIHBlcmhhcHMuIENoZWNrIFJlcGxhY2VzLiAqLworICAgICAgc3dpdGNoIChvdGhlcnBrZy0+Y2xpZW50ZGF0YS0+cmVwbGFjaW5nZmlsZXNhbmRzYWlkKSB7CisgICAgICBjYXNlIDI6CisgICAgICAgIGtlZXBleGlzdGluZyA9IHRydWU7CisgICAgICBjYXNlIDE6CisgICAgICAgIGNvbnRpbnVlOworICAgICAgfQorCisgICAgICAvKiBJcyB0aGUgcGFja2FnZSB3aXRoIHRoZSBjb25mbGljdGluZyBmaWxlIGluIHRoZSDigJxjb25maWcgZmlsZXMgb25seeKAnQorICAgICAgICogc3RhdGU/IElmIHNvIGl0IG11c3QgYmUgYSBjb25maWcgZmlsZSBhbmQgd2UgY2FuIHNpbGVudHkgdGFrZSBpdAorICAgICAgICogb3Zlci4gKi8KKyAgICAgIGlmIChvdGhlcnBrZy0+c3RhdHVzID09IHN0YXRfY29uZmlnZmlsZXMpCisgICAgICAgIGNvbnRpbnVlOworCisgICAgICAvKiBQZXJoYXBzIHdlJ3JlIHJlbW92aW5nIGEgY29uZmxpY3RpbmcgcGFja2FnZT8gKi8KKyAgICAgIGlmIChvdGhlcnBrZy0+Y2xpZW50ZGF0YS0+aXN0b2JlID09IGl0Yl9yZW1vdmUpCisgICAgICAgIGNvbnRpbnVlOworCisgICAgICAvKiBJcyB0aGUgZmlsZSBhbiBvYnNvbGV0ZSBjb25mZmlsZSBpbiB0aGUgb3RoZXIgcGFja2FnZQorICAgICAgICogYW5kIGEgY29uZmZpbGUgaW4gdGhlIG5ldyBwYWNrYWdlPyAqLworICAgICAgaWYgKChuaWZkLT5uYW1lbm9kZS0+ZmxhZ3MgJiBmbm5mX25ld19jb25mZikgJiYKKyAgICAgICAgICAhc3RhdHIgJiYgU19JU1JFRyhzdGFiLnN0X21vZGUpKSB7CisgICAgICAgIGZvciAoY29uZmYgPSBvdGhlcnBrZy0+aW5zdGFsbGVkLmNvbmZmaWxlczsKKyAgICAgICAgICAgICBjb25mZjsKKyAgICAgICAgICAgICBjb25mZiA9IGNvbmZmLT5uZXh0KSB7CisgICAgICAgICAgaWYgKCFjb25mZi0+b2Jzb2xldGUpCisgICAgICAgICAgICBjb250aW51ZTsKKyAgICAgICAgICBpZiAoc3RhdChjb25mZi0+bmFtZSwgJnN0YWJ0bXApKSB7CisgICAgICAgICAgICBpZiAoZXJybm8gPT0gRU5PRU5UIHx8IGVycm5vID09IEVOT1RESVIgfHwgZXJybm8gPT0gRUxPT1ApCisgICAgICAgICAgICAgIGNvbnRpbnVlOworICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICBvaHNoaXRlKF8oImNhbm5vdCBzdGF0IGZpbGUgJyVzJyIpLCBjb25mZi0+bmFtZSk7CisgICAgICAgICAgfQorICAgICAgICAgIGlmIChzdGFidG1wLnN0X2RldiA9PSBzdGFiLnN0X2RldiAmJgorICAgICAgICAgICAgICBzdGFidG1wLnN0X2lubyA9PSBzdGFiLnN0X2lubykKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICB9CisgICAgICAgIGlmIChjb25mZikgeworICAgICAgICAgIGRlYnVnKGRiZ19lYWNoZmlsZWRldGFpbCwgInRhcm9iamVjdCBvdGhlcidzIG9ic29sZXRlIGNvbmZmaWxlIik7CisgICAgICAgICAgLyogcHJvY2Vzc19hcmNoaXZlKCkgd2lsbCBoYXZlIGNvcGllZCBpdHMgaGFzaCBhbHJlYWR5LiAqLworICAgICAgICAgIGNvbnRpbnVlOworICAgICAgICB9CisgICAgICB9CisKKyAgICAgIGlmIChkb2VzX3JlcGxhY2UodGMtPnBrZywgJnRjLT5wa2ctPmF2YWlsYWJsZSwKKyAgICAgICAgICAgICAgICAgICAgICAgb3RoZXJwa2csICZvdGhlcnBrZy0+aW5zdGFsbGVkKSkgeworICAgICAgICBwcmludGYoXygiUmVwbGFjaW5nIGZpbGVzIGluIG9sZCBwYWNrYWdlICVzIC4uLlxuIiksb3RoZXJwa2ctPm5hbWUpOworICAgICAgICBvdGhlcnBrZy0+Y2xpZW50ZGF0YS0+cmVwbGFjaW5nZmlsZXNhbmRzYWlkID0gMTsKKyAgICAgIH0gZWxzZSBpZiAoZG9lc19yZXBsYWNlKG90aGVycGtnLCAmb3RoZXJwa2ctPmluc3RhbGxlZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRjLT5wa2csICZ0Yy0+cGtnLT5hdmFpbGFibGUpKSB7CisgICAgICAgIHByaW50ZihfKCJSZXBsYWNlZCBieSBmaWxlcyBpbiBpbnN0YWxsZWQgcGFja2FnZSAlcyAuLi5cbiIpLAorICAgICAgICAgICAgICAgb3RoZXJwa2ctPm5hbWUpOworICAgICAgICBvdGhlcnBrZy0+Y2xpZW50ZGF0YS0+cmVwbGFjaW5nZmlsZXNhbmRzYWlkID0gMjsKKyAgICAgICAgbmlmZC0+bmFtZW5vZGUtPmZsYWdzICY9IH5mbm5mX25ld19pbmFyY2hpdmU7CisgICAgICAgIGtlZXBleGlzdGluZyA9IHRydWU7CisgICAgICB9IGVsc2UgeworICAgICAgICAvKiBBdCB0aGlzIHBvaW50IHdlIGFyZSByZXBsYWNpbmcgc29tZXRoaW5nIHdpdGhvdXQgYSBSZXBsYWNlcy4gKi8KKyAgICAgICAgaWYgKCFzdGF0ciAmJiBTX0lTRElSKHN0YWIuc3RfbW9kZSkpIHsKKyAgICAgICAgICBmb3JjaWJsZWVycihmY19vdmVyd3JpdGVkaXIsCisgICAgICAgICAgICAgICAgICAgICAgXygidHJ5aW5nIHRvIG92ZXJ3cml0ZSBkaXJlY3RvcnkgJyUuMjUwcycgIgorICAgICAgICAgICAgICAgICAgICAgICAgImluIHBhY2thZ2UgJS4yNTBzICUuMjUwcyB3aXRoIG5vbmRpcmVjdG9yeSIpLAorICAgICAgICAgICAgICAgICAgICAgIG5pZmQtPm5hbWVub2RlLT5uYW1lLCBvdGhlcnBrZy0+bmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICB2ZXJzaW9uZGVzY3JpYmUoJm90aGVycGtnLT5pbnN0YWxsZWQudmVyc2lvbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmRld19ub25hbWJpZykpOworICAgICAgICB9IGVsc2UgeworICAgICAgICAgIGZvcmNpYmxlZXJyKGZjX292ZXJ3cml0ZSwKKyAgICAgICAgICAgICAgICAgICAgICBfKCJ0cnlpbmcgdG8gb3ZlcndyaXRlICclLjI1MHMnLCAiCisgICAgICAgICAgICAgICAgICAgICAgICAid2hpY2ggaXMgYWxzbyBpbiBwYWNrYWdlICUuMjUwcyAlLjI1MHMiKSwKKyAgICAgICAgICAgICAgICAgICAgICBuaWZkLT5uYW1lbm9kZS0+bmFtZSwgb3RoZXJwa2ctPm5hbWUsCisgICAgICAgICAgICAgICAgICAgICAgdmVyc2lvbmRlc2NyaWJlKCZvdGhlcnBrZy0+aW5zdGFsbGVkLnZlcnNpb24sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZkZXdfbm9uYW1iaWcpKTsKKyAgICAgICAgfQorICAgICAgfQorICAgIH0KKyAgICBmaWxlcGFja2FnZXNfaXRlcl9mcmVlKGl0ZXIpOworICB9CisKKyAgaWYgKGtlZXBleGlzdGluZykgeworICAgIHJlbW92ZV9maWxlX2Zyb21fbGlzdCh0YywgdGksIG9sZG5pZmQsIG5pZmQpOworICAgIHRhcmZpbGVfc2tpcF9vbmVfZm9yd2FyZCh0YywgdGkpOworICAgIHJldHVybiAwOworICB9CisKKyAgaWYgKGZpbHRlcl9zaG91bGRfc2tpcCh0aSkpIHsKKyAgICBuaWZkLT5uYW1lbm9kZS0+ZmxhZ3MgJj0gfmZubmZfbmV3X2luYXJjaGl2ZTsKKyAgICBuaWZkLT5uYW1lbm9kZS0+ZmxhZ3MgfD0gZm5uZl9maWx0ZXJlZDsKKyAgICB0YXJmaWxlX3NraXBfb25lX2ZvcndhcmQodGMsIHRpKTsKKworICAgIHJldHVybiAwOworICB9CisKKyAgaWYgKGV4aXN0aW5nZGlyKQorICAgIHJldHVybiAwOworCisgIC8qIE5vdywgYXQgdGhpcyBzdGFnZSB3ZSB3YW50IHRvIG1ha2Ugc3VyZSBuZWl0aGVyIG9mIC5kcGtnLW5ldyBhbmQKKyAgICogLmRwa2ctdG1wIGFyZSBoYW5naW5nIGFyb3VuZC4gKi8KKyAgZW5zdXJlX3BhdGhuYW1lX25vbmV4aXN0aW5nKGZuYW1lbmV3dmIuYnVmKTsKKyAgZW5zdXJlX3BhdGhuYW1lX25vbmV4aXN0aW5nKGZuYW1ldG1wdmIuYnVmKTsKKworICAvKiBOb3cgd2Ugc3RhcnQgdG8gZG8gdGhpbmdzIHRoYXQgd2UgbmVlZCB0byBiZSBhYmxlIHRvIHVuZG8KKyAgICogaWYgc29tZXRoaW5nIGdvZXMgd3JvbmcuIFdhdGNoIG91dCBmb3IgdGhlIENMRUFOVVAgY29tbWVudHMgdG8KKyAgICoga2VlcCBhbiBleWUgb24gd2hhdCdzIGluc3RhbGxlZCBvbiB0aGUgZGlzayBhdCBlYWNoIHBvaW50LiAqLworICBwdXNoX2NsZWFudXAoY3VfaW5zdGFsbG5ldywgfmVoZmxhZ19ub3JtYWx0aWR5LCBOVUxMLCAwLCAxLCAodm9pZCAqKW5pZmQpOworCisgIC8qCisgICAqIENMRUFOVVA6IE5vdyB3ZSBlaXRoZXIgaGF2ZSB0aGUgb2xkIGZpbGUgb24gdGhlIGRpc2ssIG9yIG5vdCwgaW4KKyAgICogaXRzIG9yaWdpbmFsIGZpbGVuYW1lLgorICAgKi8KKworICAvKiBFeHRyYWN0IHdoYXRldmVyIGl0IGlzIGFzIC5kcGtnLW5ldyAuLi4gKi8KKyAgc3dpdGNoICh0aS0+dHlwZSkgeworICBjYXNlIHRhcl9maWxldHlwZV9maWxlOgorICAgIC8qIFdlIGNyZWF0ZSB0aGUgZmlsZSB3aXRoIG1vZGUgMCB0byBtYWtlIHN1cmUgbm9ib2R5IGNhbiBkbyBhbnl0aGluZyB3aXRoCisgICAgICogaXQgdW50aWwgd2UgYXBwbHkgdGhlIHByb3BlciBtb2RlLCB3aGljaCBtaWdodCBiZSBhIHN0YXRvdmVycmlkZS4gKi8KKyAgICBmZD0gb3BlbihmbmFtZW5ld3ZiLmJ1ZiwgKE9fQ1JFQVR8T19FWENMfE9fV1JPTkxZKSwgMCk7CisgICAgaWYgKGZkIDwgMCkKKyAgICAgIG9oc2hpdGUoXygidW5hYmxlIHRvIGNyZWF0ZSBgJS4yNTVzJyAod2hpbGUgcHJvY2Vzc2luZyBgJS4yNTVzJykiKSwKKyAgICAgICAgICAgICAgZm5hbWVuZXd2Yi5idWYsIHRpLT5uYW1lKTsKKyAgICBwdXNoX2NsZWFudXAoY3VfY2xvc2VmZCwgZWhmbGFnX2JvbWJvdXQsIE5VTEwsIDAsIDEsICZmZCk7CisgICAgZGVidWcoZGJnX2VhY2hmaWxlZGV0YWlsLCAidGFyb2JqZWN0IGZpbGUgb3BlbiBzaXplPSVqZCIsCisgICAgICAgICAgKGludG1heF90KXRpLT5zaXplKTsKKyAgICB7IGNoYXIgZm5hbWVidWZbMjU2XTsKKyAgICBmZF9mZF9jb3B5KHRjLT5iYWNrZW5kcGlwZSwgZmQsIHRpLT5zaXplLAorICAgICAgICAgICAgICAgXygiYmFja2VuZCBkcGtnLWRlYiBkdXJpbmcgYCUuMjU1cyciKSwKKyAgICAgICAgICAgICAgIHBhdGhfcXVvdGVfZmlsZW5hbWUoZm5hbWVidWYsIHRpLT5uYW1lLCAyNTYpKTsKKyAgICB9CisgICAgciA9IHRpLT5zaXplICUgVEFSQkxLU1o7CisgICAgaWYgKHIgPiAwKQorICAgICAgaWYgKGZkX3JlYWQodGMtPmJhY2tlbmRwaXBlLCBkYXRhYnVmLCBUQVJCTEtTWiAtIHIpIDwgMCkKKyAgICAgICAgb2hzaGl0ZShfKCJlcnJvciByZWFkaW5nIGZyb20gZHBrZy1kZWIgcGlwZSIpKTsKKworICAgIGZkX3dyaXRlYmFja19pbml0KGZkKTsKKworICAgIGlmIChuaWZkLT5uYW1lbm9kZS0+c3RhdG92ZXJyaWRlKQorICAgICAgZGVidWcoZGJnX2VhY2hmaWxlLCAidGFyb2JqZWN0IC4uLiBzdGF0IG92ZXJyaWRlLCB1aWQ9JWQsIGdpZD0lZCwgbW9kZT0lMDRvIiwKKwkJCSAgbmlmZC0+bmFtZW5vZGUtPnN0YXRvdmVycmlkZS0+dWlkLAorCQkJICBuaWZkLT5uYW1lbm9kZS0+c3RhdG92ZXJyaWRlLT5naWQsCisJCQkgIG5pZmQtPm5hbWVub2RlLT5zdGF0b3ZlcnJpZGUtPm1vZGUpOworICAgIGlmIChmY2hvd24oZmQsIHN0LT51aWQsIHN0LT5naWQpKQorICAgICAgb2hzaGl0ZShfKCJlcnJvciBzZXR0aW5nIG93bmVyc2hpcCBvZiBgJS4yNTVzJyIpLCB0aS0+bmFtZSk7CisgICAgaWYgKGZjaG1vZChmZCwgc3QtPm1vZGUgJiB+U19JRk1UKSkKKyAgICAgIG9oc2hpdGUoXygiZXJyb3Igc2V0dGluZyBwZXJtaXNzaW9ucyBvZiBgJS4yNTVzJyIpLCB0aS0+bmFtZSk7CisKKyAgICAvKiBQb3N0cG9uZSB0aGUgZnN5bmMsIHRvIHRyeSB0byBhdm9pZCBtYXNzaXZlIEkvTyBkZWdyYWRhdGlvbi4gKi8KKyAgICBpZiAoIWZjX3Vuc2FmZV9pbykKKyAgICAgIG5pZmQtPm5hbWVub2RlLT5mbGFncyB8PSBmbm5mX2RlZmVycmVkX2ZzeW5jOworCisgICAgcG9wX2NsZWFudXAoZWhmbGFnX25vcm1hbHRpZHkpOyAvKiBmZCA9IG9wZW4oZm5hbWVuZXd2Yi5idWYpICovCisgICAgaWYgKGNsb3NlKGZkKSkKKyAgICAgIG9oc2hpdGUoXygiZXJyb3IgY2xvc2luZy93cml0aW5nIGAlLjI1NXMnIiksIHRpLT5uYW1lKTsKKyAgICBicmVhazsKKyAgY2FzZSB0YXJfZmlsZXR5cGVfZmlmbzoKKyAgICBpZiAobWtmaWZvKGZuYW1lbmV3dmIuYnVmLDApKQorICAgICAgb2hzaGl0ZShfKCJlcnJvciBjcmVhdGluZyBwaXBlIGAlLjI1NXMnIiksIHRpLT5uYW1lKTsKKyAgICBkZWJ1ZyhkYmdfZWFjaGZpbGVkZXRhaWwsICJ0YXJvYmplY3QgZmlmbyIpOworICAgIGJyZWFrOworICBjYXNlIHRhcl9maWxldHlwZV9jaGFyZGV2OgorICAgIGlmIChta25vZChmbmFtZW5ld3ZiLmJ1ZiwgU19JRkNIUiwgdGktPmRldikpCisgICAgICBvaHNoaXRlKF8oImVycm9yIGNyZWF0aW5nIGRldmljZSBgJS4yNTVzJyIpLCB0aS0+bmFtZSk7CisgICAgZGVidWcoZGJnX2VhY2hmaWxlZGV0YWlsLCAidGFyb2JqZWN0IGNoYXJkZXYiKTsKKyAgICBicmVhazsKKyAgY2FzZSB0YXJfZmlsZXR5cGVfYmxvY2tkZXY6CisgICAgaWYgKG1rbm9kKGZuYW1lbmV3dmIuYnVmLCBTX0lGQkxLLCB0aS0+ZGV2KSkKKyAgICAgIG9oc2hpdGUoXygiZXJyb3IgY3JlYXRpbmcgZGV2aWNlIGAlLjI1NXMnIiksIHRpLT5uYW1lKTsKKyAgICBkZWJ1ZyhkYmdfZWFjaGZpbGVkZXRhaWwsICJ0YXJvYmplY3QgYmxvY2tkZXYiKTsKKyAgICBicmVhazsKKyAgY2FzZSB0YXJfZmlsZXR5cGVfaGFyZGxpbms6CisgICAgdmFyYnVmX3Jlc2V0KCZoYXJkbGlua2ZuKTsKKyAgICB2YXJidWZfYWRkX3N0cigmaGFyZGxpbmtmbiwgaW5zdGRpcik7CisgICAgdmFyYnVmX2FkZF9jaGFyKCZoYXJkbGlua2ZuLCAnLycpOworICAgIGxpbmtub2RlID0gZmluZG5hbWVub2RlKHRpLT5saW5rbmFtZSwgMCk7CisgICAgdmFyYnVmX2FkZF9zdHIoJmhhcmRsaW5rZm4sIG5hbWVub2RldG91c2UobGlua25vZGUsIHRjLT5wa2cpLT5uYW1lKTsKKyAgICBpZiAobGlua25vZGUtPmZsYWdzICYgKGZubmZfZGVmZXJyZWRfcmVuYW1lfGZubmZfbmV3X2NvbmZmKSkKKyAgICAgIHZhcmJ1Zl9hZGRfc3RyKCZoYXJkbGlua2ZuLCBEUEtHTkVXRVhUKTsKKyAgICB2YXJidWZfZW5kX3N0cigmaGFyZGxpbmtmbik7CisgICAgaWYgKGxpbmsoaGFyZGxpbmtmbi5idWYsZm5hbWVuZXd2Yi5idWYpKQorICAgICAgb2hzaGl0ZShfKCJlcnJvciBjcmVhdGluZyBoYXJkIGxpbmsgYCUuMjU1cyciKSwgdGktPm5hbWUpOworICAgIGRlYnVnKGRiZ19lYWNoZmlsZWRldGFpbCwgInRhcm9iamVjdCBoYXJkbGluayIpOworICAgIGJyZWFrOworICBjYXNlIHRhcl9maWxldHlwZV9zeW1saW5rOgorICAgIC8qIFdlJ3ZlIGFscmVhZHkgY2hlY2tlZCBmb3IgYW4gZXhpc3RpbmcgZGlyZWN0b3J5LiAqLworICAgIGlmIChzeW1saW5rKHRpLT5saW5rbmFtZSwgZm5hbWVuZXd2Yi5idWYpKQorICAgICAgb2hzaGl0ZShfKCJlcnJvciBjcmVhdGluZyBzeW1ib2xpYyBsaW5rIGAlLjI1NXMnIiksIHRpLT5uYW1lKTsKKyAgICBkZWJ1ZyhkYmdfZWFjaGZpbGVkZXRhaWwsICJ0YXJvYmplY3Qgc3ltbGluayBjcmVhdGluZyIpOworICAgIGJyZWFrOworICBjYXNlIHRhcl9maWxldHlwZV9kaXI6CisgICAgLyogV2UndmUgYWxyZWFkeSBjaGVja2VkIGZvciBhbiBleGlzdGluZyBkaXJlY3RvcnkuICovCisgICAgaWYgKG1rZGlyKGZuYW1lbmV3dmIuYnVmLDApKQorICAgICAgb2hzaGl0ZShfKCJlcnJvciBjcmVhdGluZyBkaXJlY3RvcnkgYCUuMjU1cyciKSwgdGktPm5hbWUpOworICAgIGRlYnVnKGRiZ19lYWNoZmlsZWRldGFpbCwgInRhcm9iamVjdCBkaXJlY3RvcnkgY3JlYXRpbmciKTsKKyAgICBicmVhazsKKyAgZGVmYXVsdDoKKyAgICBpbnRlcm5lcnIoInVua25vd24gdGFyIHR5cGUgJyVkJywgYnV0IGFscmVhZHkgY2hlY2tlZCIsIHRpLT50eXBlKTsKKyAgfQorCisgIHRhcm9iamVjdF9zZXRfcGVybXModGksIGZuYW1lbmV3dmIuYnVmLCBzdCk7CisgIHRhcm9iamVjdF9zZXRfbXRpbWUodGksIGZuYW1lbmV3dmIuYnVmKTsKKyAgdGFyb2JqZWN0X3NldF9zZV9jb250ZXh0KGZuYW1ldmIuYnVmLCBmbmFtZW5ld3ZiLmJ1Ziwgc3QtPm1vZGUpOworCisgIC8qCisgICAqIENMRUFOVVA6IE5vdyB3ZSBoYXZlIGV4dHJhY3RlZCB0aGUgbmV3IG9iamVjdCBpbiAuZHBrZy1uZXcgKG9yLAorICAgKiBpZiB0aGUgZmlsZSBhbHJlYWR5IGV4aXN0cyBhcyBhIGRpcmVjdG9yeSBhbmQgd2Ugd2VyZSB0cnlpbmcgdG8KKyAgICogZXh0cmFjdCBhIGRpcmVjdG9yeSBvciBzeW1saW5rLCB3ZSByZXR1cm5lZCBlYXJsaWVyLCBzbyB3ZSBkb24ndAorICAgKiBuZWVkIHRvIHdvcnJ5IGFib3V0IHRoYXQgaGVyZSkuCisgICAqCisgICAqIFRoZSBvbGQgZmlsZSBpcyBzdGlsbCBpbiB0aGUgb3JpZ2luYWwgZmlsZW5hbWUsCisgICAqLworCisgIC8qIEZpcnN0LCBjaGVjayB0byBzZWUgaWYgaXQncyBhIGNvbmZmaWxlLiBJZiBzbyB3ZSBkb24ndCBpbnN0YWxsCisgICAqIGl0IG5vdyAtIHdlIGxlYXZlIGl0IGluIC5kcGtnLW5ldyBmb3IgLS1jb25maWd1cmUgdG8gdGFrZSBjYXJlIG9mLiAqLworICBpZiAobmlmZC0+bmFtZW5vZGUtPmZsYWdzICYgZm5uZl9uZXdfY29uZmYpIHsKKyAgICBkZWJ1ZyhkYmdfY29uZmZkZXRhaWwsInRhcm9iamVjdCBjb25mZmlsZSBleHRyYWN0ZWQiKTsKKyAgICBuaWZkLT5uYW1lbm9kZS0+ZmxhZ3MgfD0gZm5uZl9lbGlkZV9vdGhlcl9saXN0czsKKyAgICByZXR1cm4gMDsKKyAgfQorCisgIC8qIE5vdyB3ZSBtb3ZlIHRoZSBvbGQgZmlsZSBvdXQgb2YgdGhlIHdheSwgdGhlIGJhY2t1cCBmaWxlIHdpbGwKKyAgICogYmUgZGVsZXRlZCBsYXRlci4gKi8KKyAgaWYgKHN0YXRyKSB7CisgICAgLyogRG9uJ3QgdHJ5IHRvIGJhY2sgaXQgdXAgaWYgaXQgZGlkbid0IGV4aXN0LiAqLworICAgIGRlYnVnKGRiZ19lYWNoZmlsZWRldGFpbCwidGFyb2JqZWN0IG5ldyAtIG5vIGJhY2t1cCIpOworICB9IGVsc2UgeworICAgIGlmICh0aS0+dHlwZSA9PSB0YXJfZmlsZXR5cGVfZGlyIHx8IFNfSVNESVIoc3RhYi5zdF9tb2RlKSkgeworICAgICAgLyogT25lIG9mIHRoZSB0d28gaXMgYSBkaXJlY3RvcnkgLSBjYW4ndCBkbyBhdG9taWMgaW5zdGFsbC4gKi8KKyAgICAgIGRlYnVnKGRiZ19lYWNoZmlsZWRldGFpbCwidGFyb2JqZWN0IGRpcmVjdG9yeSwgbm9uYXRvbWljIik7CisgICAgICBuaWZkLT5uYW1lbm9kZS0+ZmxhZ3MgfD0gZm5uZl9ub19hdG9taWNfb3ZlcndyaXRlOworICAgICAgaWYgKHJlbmFtZShmbmFtZXZiLmJ1ZixmbmFtZXRtcHZiLmJ1ZikpCisgICAgICAgIG9oc2hpdGUoXygidW5hYmxlIHRvIG1vdmUgYXNpZGUgYCUuMjU1cycgdG8gaW5zdGFsbCBuZXcgdmVyc2lvbiIpLAorICAgICAgICAgICAgICAgIHRpLT5uYW1lKTsKKyAgICB9IGVsc2UgaWYgKFNfSVNMTksoc3RhYi5zdF9tb2RlKSkgeworICAgICAgLyogV2UgY2FuJ3QgbWFrZSBhIHN5bWxpbmsgd2l0aCB0d28gaGFyZGxpbmtzLCBzbyB3ZSdsbCBoYXZlIHRvCisgICAgICAgKiBjb3B5IGl0LiAoUHJldGVuZCB0aGF0IG1ha2luZyBhIGNvcHkgb2YgYSBzeW1saW5rIGlzIHRoZSBzYW1lCisgICAgICAgKiBhcyBsaW5raW5nIHRvIGl0LikgKi8KKyAgICAgIHZhcmJ1Zl9yZXNldCgmc3ltbGlua2ZuKTsKKyAgICAgIHZhcmJ1Zl9ncm93KCZzeW1saW5rZm4sIHN0YWIuc3Rfc2l6ZSArIDEpOworICAgICAgciA9IHJlYWRsaW5rKGZuYW1ldmIuYnVmLCBzeW1saW5rZm4uYnVmLCBzeW1saW5rZm4uc2l6ZSk7CisgICAgICBpZiAociA8IDApCisgICAgICAgIG9oc2hpdGUoXygidW5hYmxlIHRvIHJlYWQgbGluayBgJS4yNTVzJyIpLCB0aS0+bmFtZSk7CisgICAgICBlbHNlIGlmIChyICE9IHN0YWIuc3Rfc2l6ZSkKKyAgICAgICAgb2hzaGl0KF8oInN5bWJvbGljIGxpbmsgJyUuMjUwcycgc2l6ZSBoYXMgY2hhbmdlZCBmcm9tICVqZCB0byAlemQiKSwKKyAgICAgICAgICAgICAgIGZuYW1ldmIuYnVmLCBzdGFiLnN0X3NpemUsIHIpOworICAgICAgdmFyYnVmX3RydW5jKCZzeW1saW5rZm4sIHIpOworICAgICAgdmFyYnVmX2VuZF9zdHIoJnN5bWxpbmtmbik7CisgICAgICBpZiAoc3ltbGluayhzeW1saW5rZm4uYnVmLGZuYW1ldG1wdmIuYnVmKSkKKyAgICAgICAgb2hzaGl0ZShfKCJ1bmFibGUgdG8gbWFrZSBiYWNrdXAgc3ltbGluayBmb3IgYCUuMjU1cyciKSwgdGktPm5hbWUpOworICAgICAgaWYgKGxjaG93bihmbmFtZXRtcHZiLmJ1ZixzdGFiLnN0X3VpZCxzdGFiLnN0X2dpZCkpCisgICAgICAgIG9oc2hpdGUoXygidW5hYmxlIHRvIGNob3duIGJhY2t1cCBzeW1saW5rIGZvciBgJS4yNTVzJyIpLCB0aS0+bmFtZSk7CisgICAgICB0YXJvYmplY3Rfc2V0X3NlX2NvbnRleHQoZm5hbWV2Yi5idWYsIGZuYW1ldG1wdmIuYnVmLCBzdGFiLnN0X21vZGUpOworICAgIH0gZWxzZSB7CisgICAgICBkZWJ1ZyhkYmdfZWFjaGZpbGVkZXRhaWwsInRhcm9iamVjdCBub25kaXJlY3RvcnksIGBsaW5rJyBiYWNrdXAiKTsKKyAgICAgIGlmIChsaW5rKGZuYW1ldmIuYnVmLGZuYW1ldG1wdmIuYnVmKSkKKyAgICAgICAgb2hzaGl0ZShfKCJ1bmFibGUgdG8gbWFrZSBiYWNrdXAgbGluayBvZiBgJS4yNTVzJyBiZWZvcmUgaW5zdGFsbGluZyBuZXcgdmVyc2lvbiIpLAorICAgICAgICAgICAgICAgIHRpLT5uYW1lKTsKKyAgICB9CisgIH0KKworICAvKgorICAgKiBDTEVBTlVQOiBOb3cgdGhlIG9sZCBmaWxlIGlzIGluIC5kcGtnLXRtcCwgYW5kIHRoZSBuZXcgZmlsZSBpcyBzdGlsbAorICAgKiBpbiAuZHBrZy1uZXcuCisgICAqLworCisgIGlmICh0aS0+dHlwZSA9PSB0YXJfZmlsZXR5cGVfZmlsZSB8fCB0aS0+dHlwZSA9PSB0YXJfZmlsZXR5cGVfaGFyZGxpbmsgfHwKKyAgICAgIHRpLT50eXBlID09IHRhcl9maWxldHlwZV9zeW1saW5rKSB7CisgICAgbmlmZC0+bmFtZW5vZGUtPmZsYWdzIHw9IGZubmZfZGVmZXJyZWRfcmVuYW1lOworCisgICAgZGVidWcoZGJnX2VhY2hmaWxlZGV0YWlsLCAidGFyb2JqZWN0IGRvbmUgYW5kIGluc3RhbGxhdGlvbiBkZWZlcnJlZCIpOworICB9IGVsc2UgeworICAgIGlmIChyZW5hbWUoZm5hbWVuZXd2Yi5idWYsIGZuYW1ldmIuYnVmKSkKKyAgICAgIG9oc2hpdGUoXygidW5hYmxlIHRvIGluc3RhbGwgbmV3IHZlcnNpb24gb2YgYCUuMjU1cyciKSwgdGktPm5hbWUpOworCisgICAgLyoKKyAgICAgKiBDTEVBTlVQOiBOb3cgdGhlIG5ldyBmaWxlIGlzIGluIHRoZSBkZXN0aW5hdGlvbiBmaWxlLCBhbmQgdGhlCisgICAgICogb2xkIGZpbGUgaXMgaW4gLmRwa2ctdG1wIHRvIGJlIGNsZWFuZWQgdXAgbGF0ZXIuIFdlIG5vdyBuZWVkCisgICAgICogdG8gdGFrZSBhIGRpZmZlcmVudCBhdHRpdHVkZSB0byBjbGVhbnVwLCBiZWNhdXNlIHdlIG5lZWQgdG8KKyAgICAgKiByZW1vdmUgdGhlIG5ldyBmaWxlLgorICAgICAqLworCisgICAgbmlmZC0+bmFtZW5vZGUtPmZsYWdzIHw9IGZubmZfcGxhY2VkX29uX2Rpc2s7CisgICAgbmlmZC0+bmFtZW5vZGUtPmZsYWdzIHw9IGZubmZfZWxpZGVfb3RoZXJfbGlzdHM7CisKKyAgICBkZWJ1ZyhkYmdfZWFjaGZpbGVkZXRhaWwsICJ0YXJvYmplY3QgZG9uZSBhbmQgaW5zdGFsbGVkIik7CisgIH0KKworICByZXR1cm4gMDsKK30KKworI2lmIGRlZmluZWQoU1lOQ19GSUxFX1JBTkdFX1dBSVRfQkVGT1JFKQorc3RhdGljIHZvaWQKK3Rhcl93cml0ZWJhY2tfYmFycmllcihzdHJ1Y3QgZmlsZWlubGlzdCAqZmlsZXMsIHN0cnVjdCBwa2dpbmZvICpwa2cpCit7CisgIHN0cnVjdCBmaWxlaW5saXN0ICpjZmlsZTsKKworICBmb3IgKGNmaWxlID0gZmlsZXM7IGNmaWxlOyBjZmlsZSA9IGNmaWxlLT5uZXh0KSB7CisgICAgc3RydWN0IGZpbGVuYW1lbm9kZSAqdXNlbm9kZTsKKyAgICBjb25zdCBjaGFyICp1c2VuYW1lOworICAgIGludCBmZDsKKworICAgIGlmICghKGNmaWxlLT5uYW1lbm9kZS0+ZmxhZ3MgJiBmbm5mX2RlZmVycmVkX2ZzeW5jKSkKKyAgICAgIGNvbnRpbnVlOworCisgICAgdXNlbm9kZSA9IG5hbWVub2RldG91c2UoY2ZpbGUtPm5hbWVub2RlLCBwa2cpOworICAgIHVzZW5hbWUgPSB1c2Vub2RlLT5uYW1lICsgMTsgLyogU2tpcCB0aGUgbGVhZGluZyAnLycuICovCisKKyAgICBzZXR1cGZuYW1ldmJzKHVzZW5hbWUpOworCisgICAgZmQgPSBvcGVuKGZuYW1lbmV3dmIuYnVmLCBPX1dST05MWSk7CisgICAgaWYgKGZkIDwgMCkKKyAgICAgIG9oc2hpdGUoXygidW5hYmxlIHRvIG9wZW4gJyUuMjU1cyciKSwgZm5hbWVuZXd2Yi5idWYpOworICAgIC8qIElnbm9yZSB0aGUgcmV0dXJuIGNvZGUgYXMgaXQgc2hvdWxkIGJlIGNvbnNpZGVyZWQgZXF1aXZhbGVudCB0byBhbgorICAgICAqIGFzeW5jaHJvbm91cyBoaW50IGZvciB0aGUga2VybmVsLCB3ZSBhcmUgZG9pbmcgYW4gZnN5bmMoKSBsYXRlciBvbgorICAgICAqIGFueXdheS4gKi8KKyAgICBzeW5jX2ZpbGVfcmFuZ2UoZmQsIDAsIDAsIFNZTkNfRklMRV9SQU5HRV9XQUlUX0JFRk9SRSk7CisgICAgaWYgKGNsb3NlKGZkKSkKKyAgICAgIG9oc2hpdGUoXygiZXJyb3IgY2xvc2luZy93cml0aW5nIGAlLjI1NXMnIiksIGZuYW1lbmV3dmIuYnVmKTsKKyAgfQorfQorI2Vsc2UKK3N0YXRpYyB2b2lkCit0YXJfd3JpdGViYWNrX2JhcnJpZXIoc3RydWN0IGZpbGVpbmxpc3QgKmZpbGVzLCBzdHJ1Y3QgcGtnaW5mbyAqcGtnKQoreworfQorI2VuZGlmCisKK3ZvaWQKK3Rhcl9kZWZlcnJlZF9leHRyYWN0KHN0cnVjdCBmaWxlaW5saXN0ICpmaWxlcywgc3RydWN0IHBrZ2luZm8gKnBrZykKK3sKKyAgc3RydWN0IGZpbGVpbmxpc3QgKmNmaWxlOworICBzdHJ1Y3QgZmlsZW5hbWVub2RlICp1c2Vub2RlOworICBjb25zdCBjaGFyICp1c2VuYW1lOworCisgIHRhcl93cml0ZWJhY2tfYmFycmllcihmaWxlcywgcGtnKTsKKworICBmb3IgKGNmaWxlID0gZmlsZXM7IGNmaWxlOyBjZmlsZSA9IGNmaWxlLT5uZXh0KSB7CisgICAgZGVidWcoZGJnX2VhY2hmaWxlLCAiZGVmZXJyZWQgZXh0cmFjdCBvZiAnJS4yNTVzJyIsIGNmaWxlLT5uYW1lbm9kZS0+bmFtZSk7CisKKyAgICBpZiAoIShjZmlsZS0+bmFtZW5vZGUtPmZsYWdzICYgZm5uZl9kZWZlcnJlZF9yZW5hbWUpKQorICAgICAgY29udGludWU7CisKKyAgICB1c2Vub2RlID0gbmFtZW5vZGV0b3VzZShjZmlsZS0+bmFtZW5vZGUsIHBrZyk7CisgICAgdXNlbmFtZSA9IHVzZW5vZGUtPm5hbWUgKyAxOyAvKiBTa2lwIHRoZSBsZWFkaW5nICcvJy4gKi8KKworICAgIHNldHVwZm5hbWV2YnModXNlbmFtZSk7CisKKyAgICBpZiAoY2ZpbGUtPm5hbWVub2RlLT5mbGFncyAmIGZubmZfZGVmZXJyZWRfZnN5bmMpIHsKKyAgICAgIGludCBmZDsKKworICAgICAgZGVidWcoZGJnX2VhY2hmaWxlZGV0YWlsLCAiZGVmZXJyZWQgZXh0cmFjdCBuZWVkcyBmc3luYyIpOworCisgICAgICBmZCA9IG9wZW4oZm5hbWVuZXd2Yi5idWYsIE9fV1JPTkxZKTsKKyAgICAgIGlmIChmZCA8IDApCisgICAgICAgIG9oc2hpdGUoXygidW5hYmxlIHRvIG9wZW4gJyUuMjU1cyciKSwgZm5hbWVuZXd2Yi5idWYpOworICAgICAgaWYgKGZzeW5jKGZkKSkKKyAgICAgICAgb2hzaGl0ZShfKCJ1bmFibGUgdG8gc3luYyBmaWxlICclLjI1NXMnIiksIGZuYW1lbmV3dmIuYnVmKTsKKyAgICAgIGlmIChjbG9zZShmZCkpCisgICAgICAgIG9oc2hpdGUoXygiZXJyb3IgY2xvc2luZy93cml0aW5nIGAlLjI1NXMnIiksIGZuYW1lbmV3dmIuYnVmKTsKKworICAgICAgY2ZpbGUtPm5hbWVub2RlLT5mbGFncyAmPSB+Zm5uZl9kZWZlcnJlZF9mc3luYzsKKyAgICB9CisKKyAgICBkZWJ1ZyhkYmdfZWFjaGZpbGVkZXRhaWwsICJkZWZlcnJlZCBleHRyYWN0IG5lZWRzIHJlbmFtZSIpOworCisgICAgaWYgKHJlbmFtZShmbmFtZW5ld3ZiLmJ1ZiwgZm5hbWV2Yi5idWYpKQorICAgICAgb2hzaGl0ZShfKCJ1bmFibGUgdG8gaW5zdGFsbCBuZXcgdmVyc2lvbiBvZiBgJS4yNTVzJyIpLAorICAgICAgICAgICAgICBjZmlsZS0+bmFtZW5vZGUtPm5hbWUpOworCisgICAgY2ZpbGUtPm5hbWVub2RlLT5mbGFncyAmPSB+Zm5uZl9kZWZlcnJlZF9yZW5hbWU7CisKKyAgICAvKgorICAgICAqIENMRUFOVVA6IE5vdyB0aGUgbmV3IGZpbGUgaXMgaW4gdGhlIGRlc3RpbmF0aW9uIGZpbGUsIGFuZCB0aGUKKyAgICAgKiBvbGQgZmlsZSBpcyBpbiAuZHBrZy10bXAgdG8gYmUgY2xlYW5lZCB1cCBsYXRlci4gV2Ugbm93IG5lZWQKKyAgICAgKiB0byB0YWtlIGEgZGlmZmVyZW50IGF0dGl0dWRlIHRvIGNsZWFudXAsIGJlY2F1c2Ugd2UgbmVlZCB0bworICAgICAqIHJlbW92ZSB0aGUgbmV3IGZpbGUuCisgICAgICovCisKKyAgICBjZmlsZS0+bmFtZW5vZGUtPmZsYWdzIHw9IGZubmZfcGxhY2VkX29uX2Rpc2s7CisgICAgY2ZpbGUtPm5hbWVub2RlLT5mbGFncyB8PSBmbm5mX2VsaWRlX290aGVyX2xpc3RzOworCisgICAgZGVidWcoZGJnX2VhY2hmaWxlZGV0YWlsLCAiZGVmZXJyZWQgZXh0cmFjdCBkb25lIGFuZCBpbnN0YWxsZWQiKTsKKyAgfQorfQorCisvKioKKyAqIFRyeSBpZiB3ZSBjYW4gZGVjb25maWd1cmUgdGhlIHBhY2thZ2UgYW5kIHF1ZXVlIGl0IGlmIHNvLgorICoKKyAqIEFsc28gY2hlY2tzIHdoZXRoZXIgdGhlIHBkZXAgaXMgZm9yY2VkLCBmaXJzdCwgYWNjb3JkaW5nIHRvIGZvcmNlX3AuCisgKiBmb3JjZV9wIG1heSBiZSBOVUxMIGluIHdoaWNoIGNhc2Ugbm90aGluZyBpcyBjb25zaWRlcmVkIGZvcmNlZC4KKyAqCisgKiBBY3Rpb24gaXMgYSBzdHJpbmcgZGVzY3JpYmluZyB0aGUgYWN0aW9uIHdoaWNoIGNhdXNlcyB0aGUKKyAqIGRlY29uZmlndXJhdGlvbjoKKyAqCisgKiAgICJyZW1vdmFsIG9mIDxwYWNrYWdlPiIgICAgICAgKGR1ZSB0byBDb25mbGljdHMrRGVwZW5kczsgcmVtb3ZhbCAhPSBOVUxMKQorICogICAiaW5zdGFsbGF0aW9uIG9mIDxwYWNrYWdlPiIgIChkdWUgdG8gQnJlYWtzOyAgICAgICAgICAgIHJlbW92YWwgPT0gTlVMTCkKKyAqCisgKiBAcmV0dmFsIDAgTm90IHBvc3NpYmxlICh3aHkgaXMgcHJpbnRlZCkuCisgKiBAcmV0dmFsIDEgRGVjb25maWd1cmF0aW9uIHF1ZXVlZCBvayAobm8gbWVzc2FnZSBwcmludGVkKS4KKyAqIEByZXR2YWwgMiBGb3JjZWQgKG5vIGRlY29uZmlndXJhdGlvbiBuZWVkZWQsIHdoeSBpcyBwcmludGVkKS4KKyAqLworc3RhdGljIGludAordHJ5X2RlY29uZmlndXJlX2Nhbihib29sICgqZm9yY2VfcCkoc3RydWN0IGRlcHBvc3NpICopLCBzdHJ1Y3QgcGtnaW5mbyAqcGtnLAorICAgICAgICAgICAgICAgICAgICBzdHJ1Y3QgZGVwcG9zc2kgKnBkZXAsIGNvbnN0IGNoYXIgKmFjdGlvbiwKKyAgICAgICAgICAgICAgICAgICAgc3RydWN0IHBrZ2luZm8gKnJlbW92YWwsIGNvbnN0IGNoYXIgKndoeSkKK3sKKyAgc3RydWN0IHBrZ19kZWNvbmZfbGlzdCAqbmV3ZGVjb25mOworCisgIGlmIChmb3JjZV9wICYmIGZvcmNlX3AocGRlcCkpIHsKKyAgICB3YXJuaW5nKF8oImlnbm9yaW5nIGRlcGVuZGVuY3kgcHJvYmxlbSB3aXRoICVzOlxuJXMiKSwgYWN0aW9uLCB3aHkpOworICAgIHJldHVybiAyOworICB9IGVsc2UgaWYgKGZfYXV0b2RlY29uZikgeworICAgIGlmIChwa2ctPmluc3RhbGxlZC5lc3NlbnRpYWwpIHsKKyAgICAgIGlmIChmY19yZW1vdmVlc3NlbnRpYWwpIHsKKyAgICAgICAgd2FybmluZyhfKCJjb25zaWRlcmluZyBkZWNvbmZpZ3VyYXRpb24gb2YgZXNzZW50aWFsXG4iCisgICAgICAgICAgICAgICAgICAiIHBhY2thZ2UgJXMsIHRvIGVuYWJsZSAlcy4iKSwgcGtnLT5uYW1lLCBhY3Rpb24pOworICAgICAgfSBlbHNlIHsKKyAgICAgICAgZnByaW50ZihzdGRlcnIsIF8oImRwa2c6IG5vLCAlcyBpcyBlc3NlbnRpYWwsIHdpbGwgbm90IGRlY29uZmlndXJlXG4iCisgICAgICAgICAgICAgICAgICAgICAgICAgICIgaXQgaW4gb3JkZXIgdG8gZW5hYmxlICVzLlxuIiksCisgICAgICAgICAgICAgICAgcGtnLT5uYW1lLCBhY3Rpb24pOworICAgICAgICByZXR1cm4gMDsKKyAgICAgIH0KKyAgICB9CisgICAgcGtnLT5jbGllbnRkYXRhLT5pc3RvYmU9IGl0Yl9kZWNvbmZpZ3VyZTsKKyAgICBuZXdkZWNvbmYgPSBtX21hbGxvYyhzaXplb2Yoc3RydWN0IHBrZ19kZWNvbmZfbGlzdCkpOworICAgIG5ld2RlY29uZi0+bmV4dD0gZGVjb25maWd1cmU7CisgICAgbmV3ZGVjb25mLT5wa2c9IHBrZzsKKyAgICBuZXdkZWNvbmYtPnBrZ19yZW1vdmFsID0gcmVtb3ZhbDsKKyAgICBkZWNvbmZpZ3VyZT0gbmV3ZGVjb25mOworICAgIHJldHVybiAxOworICB9IGVsc2UgeworICAgIGZwcmludGYoc3RkZXJyLCBfKCJkcGtnOiBubywgY2Fubm90IHByb2NlZWQgd2l0aCAlcyAoLS1hdXRvLWRlY29uZmlndXJlIHdpbGwgaGVscCk6XG4lcyIpLAorICAgICAgICAgICAgYWN0aW9uLCB3aHkpOworICAgIHJldHVybiAwOworICB9Cit9CisKK3N0YXRpYyBpbnQgdHJ5X3JlbW92ZV9jYW4oc3RydWN0IGRlcHBvc3NpICpwZGVwLAorICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3QgcGtnaW5mbyAqZml4YnlybSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqd2h5KSB7CisgIGNoYXIgYWN0aW9uWzUxMl07CisgIHNwcmludGYoYWN0aW9uLCBfKCJyZW1vdmFsIG9mICUuMjUwcyIpLCBmaXhieXJtLT5uYW1lKTsKKyAgcmV0dXJuIHRyeV9kZWNvbmZpZ3VyZV9jYW4oZm9yY2VfZGVwZW5kcywgcGRlcC0+dXAtPnVwLCBwZGVwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhY3Rpb24sIGZpeGJ5cm0sIHdoeSk7Cit9CisKK3ZvaWQgY2hlY2tfYnJlYWtzKHN0cnVjdCBkZXBlbmRlbmN5ICpkZXAsIHN0cnVjdCBwa2dpbmZvICpwa2csCisgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpwZmlsZW5hbWUpIHsKKyAgc3RydWN0IHBrZ2luZm8gKmZpeGJ5ZGVjb25mOworICBzdHJ1Y3QgdmFyYnVmIHdoeSA9IFZBUkJVRl9JTklUOworICBpbnQgb2s7CisKKyAgZml4YnlkZWNvbmYgPSBOVUxMOworICBpZiAoZGVwaXNvayhkZXAsICZ3aHksICZmaXhieWRlY29uZiwgTlVMTCwgZmFsc2UpKSB7CisgICAgdmFyYnVmX2Rlc3Ryb3koJndoeSk7CisgICAgcmV0dXJuOworICB9CisKKyAgdmFyYnVmX2VuZF9zdHIoJndoeSk7CisKKyAgaWYgKGZpeGJ5ZGVjb25mICYmIGZfYXV0b2RlY29uZikgeworICAgIGNoYXIgYWN0aW9uWzUxMl07CisKKyAgICBlbnN1cmVfcGFja2FnZV9jbGllbnRkYXRhKGZpeGJ5ZGVjb25mKTsKKyAgICBhc3NlcnQoZml4YnlkZWNvbmYtPmNsaWVudGRhdGEtPmlzdG9iZSA9PSBpdGJfbm9ybWFsKTsKKworICAgIHNwcmludGYoYWN0aW9uLCBfKCJpbnN0YWxsYXRpb24gb2YgJS4yNTBzIiksIHBrZy0+bmFtZSk7CisgICAgZnByaW50ZihzdGRlcnIsIF8oImRwa2c6IGNvbnNpZGVyaW5nIGRlY29uZmlndXJhdGlvbiBvZiAlcywiCisgICAgICAgICAgICAgICAgICAgICAgIiB3aGljaCB3b3VsZCBiZSBicm9rZW4gYnkgJXMgLi4uXG4iKSwKKyAgICAgICAgICAgIGZpeGJ5ZGVjb25mLT5uYW1lLCBhY3Rpb24pOworCisgICAgb2s9IHRyeV9kZWNvbmZpZ3VyZV9jYW4oZm9yY2VfYnJlYWtzLCBmaXhieWRlY29uZiwgZGVwLT5saXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFjdGlvbiwgTlVMTCwgd2h5LmJ1Zik7CisgICAgaWYgKG9rID09IDEpIHsKKyAgICAgIGZwcmludGYoc3RkZXJyLCBfKCJkcGtnOiB5ZXMsIHdpbGwgZGVjb25maWd1cmUgJXMgKGJyb2tlbiBieSAlcykuXG4iKSwKKyAgICAgICAgICAgICAgZml4YnlkZWNvbmYtPm5hbWUsIHBrZy0+bmFtZSk7CisgICAgfQorICB9IGVsc2UgeworICAgIGZwcmludGYoc3RkZXJyLCBfKCJkcGtnOiByZWdhcmRpbmcgJXMgY29udGFpbmluZyAlczpcbiVzIiksCisgICAgICAgICAgICBwZmlsZW5hbWUsIHBrZy0+bmFtZSwgd2h5LmJ1Zik7CisgICAgb2s9IDA7CisgIH0KKyAgdmFyYnVmX2Rlc3Ryb3koJndoeSk7CisgIGlmIChvayA+IDApIHJldHVybjsKKworICBpZiAoZm9yY2VfYnJlYWtzKGRlcC0+bGlzdCkpIHsKKyAgICB3YXJuaW5nKF8oImlnbm9yaW5nIGJyZWFrYWdlLCBtYXkgcHJvY2VlZCBhbnl3YXkhIikpOworICAgIHJldHVybjsKKyAgfQorCisgIGlmIChmaXhieWRlY29uZiAmJiAhZl9hdXRvZGVjb25mKSB7CisgICAgb2hzaGl0KF8oImluc3RhbGxpbmcgJS4yNTBzIHdvdWxkIGJyZWFrICUuMjUwcywgYW5kXG4iCisgICAgICAgICAgICAgIiBkZWNvbmZpZ3VyYXRpb24gaXMgbm90IHBlcm1pdHRlZCAoLS1hdXRvLWRlY29uZmlndXJlIG1pZ2h0IGhlbHApIiksCisgICAgICAgICAgIHBrZy0+bmFtZSwgZml4YnlkZWNvbmYtPm5hbWUpOworICB9IGVsc2UgeworICAgIG9oc2hpdChfKCJpbnN0YWxsaW5nICUuMjUwcyB3b3VsZCBicmVhayBleGlzdGluZyBzb2Z0d2FyZSIpLAorICAgICAgICAgICBwa2ctPm5hbWUpOworICB9Cit9CisKK3ZvaWQgY2hlY2tfY29uZmxpY3Qoc3RydWN0IGRlcGVuZGVuY3kgKmRlcCwgc3RydWN0IHBrZ2luZm8gKnBrZywKKyAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqcGZpbGVuYW1lKSB7CisgIHN0cnVjdCBwa2dpbmZvICpmaXhieXJtOworICBzdHJ1Y3QgZGVwcG9zc2kgKnBkZXAsIGZsYWdkZXBwb3NzaTsKKyAgc3RydWN0IHZhcmJ1ZiBjb25mbGljdHdoeSA9IFZBUkJVRl9JTklULCByZW1vdmFsd2h5ID0gVkFSQlVGX0lOSVQ7CisgIHN0cnVjdCBkZXBlbmRlbmN5ICpwcm92aWRlY2hlY2s7CisKKyAgZml4YnlybSA9IE5VTEw7CisgIGlmIChkZXBpc29rKGRlcCwgJmNvbmZsaWN0d2h5LCAmZml4YnlybSwgTlVMTCwgZmFsc2UpKSB7CisgICAgdmFyYnVmX2Rlc3Ryb3koJmNvbmZsaWN0d2h5KTsKKyAgICB2YXJidWZfZGVzdHJveSgmcmVtb3ZhbHdoeSk7CisgICAgcmV0dXJuOworICB9CisgIGlmIChmaXhieXJtKSB7CisgICAgZW5zdXJlX3BhY2thZ2VfY2xpZW50ZGF0YShmaXhieXJtKTsKKyAgICBpZiAoZml4YnlybS0+Y2xpZW50ZGF0YS0+aXN0b2JlID09IGl0Yl9pbnN0YWxsbmV3KSB7CisgICAgICBmaXhieXJtPSBkZXAtPnVwOworICAgICAgZW5zdXJlX3BhY2thZ2VfY2xpZW50ZGF0YShmaXhieXJtKTsKKyAgICB9CisgICAgaWYgKCgocGtnLT5hdmFpbGFibGUuZXNzZW50aWFsICYmIGZpeGJ5cm0tPmluc3RhbGxlZC5lc3NlbnRpYWwpIHx8CisgICAgICAgICAoKChmaXhieXJtLT53YW50ICE9IHdhbnRfaW5zdGFsbCAmJiBmaXhieXJtLT53YW50ICE9IHdhbnRfaG9sZCkgfHwKKyAgICAgICAgICAgZG9lc19yZXBsYWNlKHBrZywgJnBrZy0+YXZhaWxhYmxlLCBmaXhieXJtLCAmZml4YnlybS0+aW5zdGFsbGVkKSkgJiYKKyAgICAgICAgICAoIWZpeGJ5cm0tPmluc3RhbGxlZC5lc3NlbnRpYWwgfHwgZmNfcmVtb3ZlZXNzZW50aWFsKSkpKSB7CisgICAgICBhc3NlcnQoZml4YnlybS0+Y2xpZW50ZGF0YS0+aXN0b2JlID09IGl0Yl9ub3JtYWwgfHwgZml4YnlybS0+Y2xpZW50ZGF0YS0+aXN0b2JlID09IGl0Yl9kZWNvbmZpZ3VyZSk7CisgICAgICBmaXhieXJtLT5jbGllbnRkYXRhLT5pc3RvYmU9IGl0Yl9yZW1vdmU7CisgICAgICBmcHJpbnRmKHN0ZGVyciwgXygiZHBrZzogY29uc2lkZXJpbmcgcmVtb3ZpbmcgJXMgaW4gZmF2b3VyIG9mICVzIC4uLlxuIiksCisgICAgICAgICAgICAgIGZpeGJ5cm0tPm5hbWUsIHBrZy0+bmFtZSk7CisgICAgICBpZiAoIShmaXhieXJtLT5zdGF0dXMgPT0gc3RhdF9pbnN0YWxsZWQgfHwKKyAgICAgICAgICAgIGZpeGJ5cm0tPnN0YXR1cyA9PSBzdGF0X3RyaWdnZXJzcGVuZGluZyB8fAorICAgICAgICAgICAgZml4YnlybS0+c3RhdHVzID09IHN0YXRfdHJpZ2dlcnNhd2FpdGVkKSkgeworICAgICAgICBmcHJpbnRmKHN0ZGVyciwKKyAgICAgICAgICAgICAgICBfKCIlcyBpcyBub3QgcHJvcGVybHkgaW5zdGFsbGVkIC0gaWdub3JpbmcgYW55IGRlcGVuZGVuY2llcyBvbiBpdC5cbiIpLAorICAgICAgICAgICAgICAgIGZpeGJ5cm0tPm5hbWUpOworICAgICAgICBwZGVwID0gTlVMTDsKKyAgICAgIH0gZWxzZSB7CisgICAgICAgIGZvciAocGRlcD0gZml4YnlybS0+aW5zdGFsbGVkLmRlcGVuZGVkOworICAgICAgICAgICAgIHBkZXA7CisgICAgICAgICAgICAgcGRlcCA9IHBkZXAtPnJldl9uZXh0KSB7CisgICAgICAgICAgaWYgKHBkZXAtPnVwLT50eXBlICE9IGRlcF9kZXBlbmRzICYmIHBkZXAtPnVwLT50eXBlICE9IGRlcF9wcmVkZXBlbmRzKQorICAgICAgICAgICAgY29udGludWU7CisgICAgICAgICAgaWYgKGRlcGlzb2socGRlcC0+dXAsICZyZW1vdmFsd2h5LCBOVUxMLCBOVUxMLCBmYWxzZSkpCisgICAgICAgICAgICBjb250aW51ZTsKKyAgICAgICAgICB2YXJidWZfZW5kX3N0cigmcmVtb3ZhbHdoeSk7CisgICAgICAgICAgaWYgKCF0cnlfcmVtb3ZlX2NhbihwZGVwLGZpeGJ5cm0scmVtb3ZhbHdoeS5idWYpKQorICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIH0KKyAgICAgICAgaWYgKCFwZGVwKSB7CisgICAgICAgICAgLyogSWYgd2UgaGF2ZW4ndCBmb3VuZCBhIHJlYXNvbiBub3QgdG8geWV0LCBsZXQncyBsb29rIHNvbWUgbW9yZS4gKi8KKyAgICAgICAgICBmb3IgKHByb3ZpZGVjaGVjaz0gZml4YnlybS0+aW5zdGFsbGVkLmRlcGVuZHM7CisgICAgICAgICAgICAgICBwcm92aWRlY2hlY2s7CisgICAgICAgICAgICAgICBwcm92aWRlY2hlY2s9IHByb3ZpZGVjaGVjay0+bmV4dCkgeworICAgICAgICAgICAgaWYgKHByb3ZpZGVjaGVjay0+dHlwZSAhPSBkZXBfcHJvdmlkZXMpIGNvbnRpbnVlOworICAgICAgICAgICAgZm9yIChwZGVwPSBwcm92aWRlY2hlY2stPmxpc3QtPmVkLT5pbnN0YWxsZWQuZGVwZW5kZWQ7CisgICAgICAgICAgICAgICAgIHBkZXA7CisgICAgICAgICAgICAgICAgIHBkZXAgPSBwZGVwLT5yZXZfbmV4dCkgeworICAgICAgICAgICAgICBpZiAocGRlcC0+dXAtPnR5cGUgIT0gZGVwX2RlcGVuZHMgJiYgcGRlcC0+dXAtPnR5cGUgIT0gZGVwX3ByZWRlcGVuZHMpCisgICAgICAgICAgICAgICAgY29udGludWU7CisgICAgICAgICAgICAgIGlmIChkZXBpc29rKHBkZXAtPnVwLCAmcmVtb3ZhbHdoeSwgTlVMTCwgTlVMTCwgZmFsc2UpKQorICAgICAgICAgICAgICAgIGNvbnRpbnVlOworICAgICAgICAgICAgICB2YXJidWZfZW5kX3N0cigmcmVtb3ZhbHdoeSk7CisgICAgICAgICAgICAgIGZwcmludGYoc3RkZXJyLCBfKCJkcGtnIgorICAgICAgICAgICAgICAgICAgICAgICI6IG1heSBoYXZlIHRyb3VibGUgcmVtb3ZpbmcgJXMsIGFzIGl0IHByb3ZpZGVzICVzIC4uLlxuIiksCisgICAgICAgICAgICAgICAgICAgICAgZml4YnlybS0+bmFtZSwgcHJvdmlkZWNoZWNrLT5saXN0LT5lZC0+bmFtZSk7CisgICAgICAgICAgICAgIGlmICghdHJ5X3JlbW92ZV9jYW4ocGRlcCxmaXhieXJtLHJlbW92YWx3aHkuYnVmKSkKKyAgICAgICAgICAgICAgICBnb3RvIGJyZWFrX2Zyb21fYm90aF9sb29wc19hdF9vbmNlOworICAgICAgICAgICAgfQorICAgICAgICAgIH0KKyAgICAgICAgYnJlYWtfZnJvbV9ib3RoX2xvb3BzX2F0X29uY2U6OworICAgICAgICB9CisgICAgICB9CisgICAgICBpZiAoIXBkZXAgJiYgc2tpcF9kdWVfdG9faG9sZChmaXhieXJtKSkgeworICAgICAgICBwZGVwPSAmZmxhZ2RlcHBvc3NpOworICAgICAgfQorICAgICAgaWYgKCFwZGVwICYmIChmaXhieXJtLT5lZmxhZyAmIGVmbGFnX3JlaW5zdHJlcSkpIHsKKyAgICAgICAgaWYgKGZjX3JlbW92ZXJlaW5zdHJlcSkgeworICAgICAgICAgIGZwcmludGYoc3RkZXJyLCBfKCJkcGtnOiBwYWNrYWdlICVzIHJlcXVpcmVzIHJlaW5zdGFsbGF0aW9uLCBidXQgd2lsbCIKKyAgICAgICAgICAgICAgICAgICIgcmVtb3ZlIGFueXdheSBhcyB5b3UgcmVxdWVzdGVkLlxuIiksIGZpeGJ5cm0tPm5hbWUpOworICAgICAgICB9IGVsc2UgeworICAgICAgICAgIGZwcmludGYoc3RkZXJyLCBfKCJkcGtnOiBwYWNrYWdlICVzIHJlcXVpcmVzIHJlaW5zdGFsbGF0aW9uLCAiCisgICAgICAgICAgICAgICAgICAid2lsbCBub3QgcmVtb3ZlLlxuIiksIGZpeGJ5cm0tPm5hbWUpOworICAgICAgICAgIHBkZXA9ICZmbGFnZGVwcG9zc2k7CisgICAgICAgIH0KKyAgICAgIH0KKyAgICAgIGlmICghcGRlcCkgeworICAgICAgICAvKiBUaGlzIGNvbmZsaWN0IGlzIE9LIC0gd2UnbGwgcmVtb3ZlIHRoZSBjb25mbGljdG9yLiAqLworICAgICAgICBwdXNoX2NvbmZsaWN0b3IocGtnLCBmaXhieXJtKTsKKyAgICAgICAgdmFyYnVmX2Rlc3Ryb3koJmNvbmZsaWN0d2h5KTsgdmFyYnVmX2Rlc3Ryb3koJnJlbW92YWx3aHkpOworICAgICAgICBmcHJpbnRmKHN0ZGVyciwgXygiZHBrZzogeWVzLCB3aWxsIHJlbW92ZSAlcyBpbiBmYXZvdXIgb2YgJXMuXG4iKSwKKyAgICAgICAgICAgICAgICBmaXhieXJtLT5uYW1lLCBwa2ctPm5hbWUpOworICAgICAgICByZXR1cm47CisgICAgICB9CisgICAgICAvKiBQdXQgaXQgYmFjay4gKi8KKyAgICAgIGZpeGJ5cm0tPmNsaWVudGRhdGEtPmlzdG9iZSA9IGl0Yl9ub3JtYWw7CisgICAgfQorICB9CisgIHZhcmJ1Zl9lbmRfc3RyKCZjb25mbGljdHdoeSk7CisgIGZwcmludGYoc3RkZXJyLCBfKCJkcGtnOiByZWdhcmRpbmcgJXMgY29udGFpbmluZyAlczpcbiVzIiksCisgICAgICAgICAgcGZpbGVuYW1lLCBwa2ctPm5hbWUsIGNvbmZsaWN0d2h5LmJ1Zik7CisgIGlmICghZm9yY2VfY29uZmxpY3RzKGRlcC0+bGlzdCkpCisgICAgb2hzaGl0KF8oImNvbmZsaWN0aW5nIHBhY2thZ2VzIC0gbm90IGluc3RhbGxpbmcgJS4yNTBzIikscGtnLT5uYW1lKTsKKyAgd2FybmluZyhfKCJpZ25vcmluZyBjb25mbGljdCwgbWF5IHByb2NlZWQgYW55d2F5ISIpKTsKKyAgdmFyYnVmX2Rlc3Ryb3koJmNvbmZsaWN0d2h5KTsKKworICByZXR1cm47Cit9CisKK3ZvaWQgY3VfY2lkaXIoaW50IGFyZ2MsIHZvaWQgKiphcmd2KSB7CisgIGNoYXIgKmNpZGlyPSAoY2hhciopYXJndlswXTsKKyAgY2hhciAqY2lkaXJyZXN0PSAoY2hhciopYXJndlsxXTsKKyAgY2lkaXJyZXN0Wy0xXSA9ICdcMCc7CisgIGVuc3VyZV9wYXRobmFtZV9ub25leGlzdGluZyhjaWRpcik7Cit9CisKK3ZvaWQgY3VfZmlsZXNsaXN0KGludCBhcmdjLCB2b2lkICoqYXJndikgeworICBkZXN0cm95b2JzdGFjaygpOworfQorCitpbnQKK2FyY2hpdmVmaWxlcyhjb25zdCBjaGFyICpjb25zdCAqYXJndikKK3sKKyAgY29uc3QgY2hhciAqdm9sYXRpbGUgdGhpc2FyZzsKKyAgY29uc3QgY2hhciAqY29uc3QgKnZvbGF0aWxlIGFyZ3A7CisgIGptcF9idWYgZWpidWY7CisKKyAgdHJpZ3Byb2NfaW5zdGFsbF9ob29rcygpOworCisgIG1vZHN0YXRkYl9vcGVuKGZfbm9hY3QgPyAgICAgICAgICAgICAgICAgICAgICAgICAgbXNkYnJ3X3JlYWRvbmx5IDoKKyAgICAgICAgICAgICAgICAgKGNpcGFjdGlvbi0+YXJnX2ludCA9PSBhY3RfYXZhaWwgPyBtc2RicndfcmVhZG9ubHkgOgorICAgICAgICAgICAgICAgICAgZmNfbm9ucm9vdCA/ICAgICAgICAgICAgICAgICAgICAgIG1zZGJyd193cml0ZSA6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbXNkYnJ3X25lZWRzdXBlcnVzZXIpIHwKKyAgICAgICAgICAgICAgICAgbXNkYnJ3X2F2YWlsYWJsZV93cml0ZSk7CisKKyAgY2hlY2twYXRoKCk7CisgIGxvZ19tZXNzYWdlKCJzdGFydHVwIGFyY2hpdmVzICVzIiwgY2lwYWN0aW9uLT5vbG9uZyk7CisKKyAgaWYgKGZfcmVjdXJzaXZlKSB7CisgICAgaW50IHBpWzJdLCBuZmlsZXMsIGMsIGksIHI7CisgICAgcGlkX3QgcGlkOworICAgIEZJTEUgKnBmOworICAgIHN0YXRpYyBzdHJ1Y3QgdmFyYnVmIGZpbmRvdXRwdXQ7CisgICAgY29uc3QgY2hhciAqKmFyZ2xpc3Q7CisgICAgY2hhciAqcDsKKworICAgIGlmICghKmFyZ3YpCisgICAgICBiYWR1c2FnZShfKCItLSVzIC0tcmVjdXJzaXZlIG5lZWRzIGF0IGxlYXN0IG9uZSBwYXRoIGFyZ3VtZW50IiksY2lwYWN0aW9uLT5vbG9uZyk7CisKKyAgICBtX3BpcGUocGkpOworICAgIHBpZCA9IHN1YnByb2NfZm9yaygpOworICAgIGlmIChwaWQgPT0gMCkgeworICAgICAgc3RydWN0IGNvbW1hbmQgY21kOworICAgICAgY29uc3QgY2hhciAqY29uc3QgKmFwOworCisgICAgICBtX2R1cDIocGlbMV0sMSk7IGNsb3NlKHBpWzBdKTsgY2xvc2UocGlbMV0pOworCisgICAgICBjb21tYW5kX2luaXQoJmNtZCwgRklORCwgXygiZmluZCBmb3IgZHBrZyAtLXJlY3Vyc2l2ZSIpKTsKKyAgICAgIGNvbW1hbmRfYWRkX2FyZ3MoJmNtZCwgRklORCwgIi1MIiwgTlVMTCk7CisKKyAgICAgIGZvciAoYXAgPSBhcmd2OyAqYXA7IGFwKyspIHsKKyAgICAgICAgaWYgKHN0cmNocihGSU5EX0VYUFJTVEFSVENIQVJTLCgqYXApWzBdKSkgeworICAgICAgICAgIGNoYXIgKmE7CisKKyAgICAgICAgICBtX2FzcHJpbnRmKCZhLCAiLi8lcyIsICphcCk7CisgICAgICAgICAgY29tbWFuZF9hZGRfYXJnKCZjbWQsIGEpOworICAgICAgICB9IGVsc2UgeworICAgICAgICAgIGNvbW1hbmRfYWRkX2FyZygmY21kLCAoY29uc3QgY2hhciAqKSphcCk7CisgICAgICAgIH0KKyAgICAgIH0KKworICAgICAgY29tbWFuZF9hZGRfYXJncygmY21kLCAiLW5hbWUiLCAiKi5kZWIiLCAiLXR5cGUiLCAiZiIsICItcHJpbnQwIiwgTlVMTCk7CisKKyAgICAgIGNvbW1hbmRfZXhlYygmY21kKTsKKyAgICB9CisgICAgY2xvc2UocGlbMV0pOworCisgICAgbmZpbGVzPSAwOworICAgIHBmPSBmZG9wZW4ocGlbMF0sInIiKTsgIGlmICghcGYpIG9oc2hpdGUoXygiZmFpbGVkIHRvIGZkb3BlbiBmaW5kJ3MgcGlwZSIpKTsKKyAgICB2YXJidWZfcmVzZXQoJmZpbmRvdXRwdXQpOworICAgIHdoaWxlICgoYz0gZmdldGMocGYpKSAhPSBFT0YpIHsKKyAgICAgIHZhcmJ1Zl9hZGRfY2hhcigmZmluZG91dHB1dCwgYyk7CisgICAgICBpZiAoIWMpIG5maWxlcysrOworICAgIH0KKyAgICBpZiAoZmVycm9yKHBmKSkgb2hzaGl0ZShfKCJlcnJvciByZWFkaW5nIGZpbmQncyBwaXBlIikpOworICAgIGlmIChmY2xvc2UocGYpKSBvaHNoaXRlKF8oImVycm9yIGNsb3NpbmcgZmluZCdzIHBpcGUiKSk7CisgICAgciA9IHN1YnByb2Nfd2FpdF9jaGVjayhwaWQsICJmaW5kIiwgUFJPQ05PRVJSKTsKKyAgICBpZiAociAhPSAwKQorICAgICAgb2hzaGl0KF8oImZpbmQgZm9yIC0tcmVjdXJzaXZlIHJldHVybmVkIHVuaGFuZGxlZCBlcnJvciAlaSIpLHIpOworCisgICAgaWYgKCFuZmlsZXMpCisgICAgICBvaHNoaXQoXygic2VhcmNoZWQsIGJ1dCBmb3VuZCBubyBwYWNrYWdlcyAoZmlsZXMgbWF0Y2hpbmcgKi5kZWIpIikpOworCisgICAgYXJnbGlzdD0gbV9tYWxsb2Moc2l6ZW9mKGNoYXIqKSoobmZpbGVzKzEpKTsKKyAgICBwID0gZmluZG91dHB1dC5idWY7CisgICAgZm9yIChpID0gMDsgaSA8IG5maWxlczsgaSsrKSB7CisgICAgICBhcmdsaXN0W2ldID0gcDsKKyAgICAgIHdoaWxlICgqcCsrICE9ICdcMCcpIDsKKyAgICB9CisgICAgYXJnbGlzdFtpXSA9IE5VTEw7CisgICAgYXJncD0gYXJnbGlzdDsKKyAgfSBlbHNlIHsKKyAgICBpZiAoISphcmd2KSBiYWR1c2FnZShfKCItLSVzIG5lZWRzIGF0IGxlYXN0IG9uZSBwYWNrYWdlIGFyY2hpdmUgZmlsZSBhcmd1bWVudCIpLAorICAgICAgICAgICAgICAgICAgICAgICAgIGNpcGFjdGlvbi0+b2xvbmcpOworICAgIGFyZ3A9IGFyZ3Y7CisgIH0KKworICBjdXJyZW50dGltZSA9IHRpbWUoTlVMTCk7CisKKyAgLyogSW5pdGlhbGl6ZSBmbmFtZSB2YXJpYWJsZXMgY29udGVudHMuICovCisKKyAgdmFyYnVmX3Jlc2V0KCZmbmFtZXZiKTsKKyAgdmFyYnVmX3Jlc2V0KCZmbmFtZXRtcHZiKTsKKyAgdmFyYnVmX3Jlc2V0KCZmbmFtZW5ld3ZiKTsKKworICB2YXJidWZfYWRkX3N0cigmZm5hbWV2YiwgaW5zdGRpcik7CisgIHZhcmJ1Zl9hZGRfY2hhcigmZm5hbWV2YiwgJy8nKTsKKyAgdmFyYnVmX2FkZF9zdHIoJmZuYW1ldG1wdmIsIGluc3RkaXIpOworICB2YXJidWZfYWRkX2NoYXIoJmZuYW1ldG1wdmIsICcvJyk7CisgIHZhcmJ1Zl9hZGRfc3RyKCZmbmFtZW5ld3ZiLCBpbnN0ZGlyKTsKKyAgdmFyYnVmX2FkZF9jaGFyKCZmbmFtZW5ld3ZiLCAnLycpOworICBmbmFtZWlkbHU9IGZuYW1ldmIudXNlZDsKKworICBlbnN1cmVfZGl2ZXJzaW9ucygpOworICBlbnN1cmVfc3RhdG92ZXJyaWRlcygpOworCisgIHdoaWxlICgodGhpc2FyZyA9ICphcmdwKyspICE9IE5VTEwpIHsKKyAgICBpZiAoc2V0am1wKGVqYnVmKSkgeworICAgICAgcG9wX2Vycm9yX2NvbnRleHQoZWhmbGFnX2JvbWJvdXQpOworICAgICAgaWYgKGFib3J0X3Byb2Nlc3NpbmcpCisgICAgICAgIGJyZWFrOworICAgICAgY29udGludWU7CisgICAgfQorICAgIHB1c2hfZXJyb3JfY29udGV4dF9qdW1wKCZlamJ1ZiwgcHJpbnRfZXJyb3JfcGVycGFja2FnZSwgdGhpc2FyZyk7CisKKyAgICBwcm9jZXNzX2FyY2hpdmUodGhpc2FyZyk7CisgICAgb25lcnJfYWJvcnQrKzsKKyAgICBtX291dHB1dChzdGRvdXQsIF8oIjxzdGFuZGFyZCBvdXRwdXQ+IikpOworICAgIG1fb3V0cHV0KHN0ZGVyciwgXygiPHN0YW5kYXJkIGVycm9yPiIpKTsKKyAgICBvbmVycl9hYm9ydC0tOworCisgICAgcG9wX2Vycm9yX2NvbnRleHQoZWhmbGFnX25vcm1hbHRpZHkpOworICB9CisKKyAgc3dpdGNoIChjaXBhY3Rpb24tPmFyZ19pbnQpIHsKKyAgY2FzZSBhY3RfaW5zdGFsbDoKKyAgY2FzZSBhY3RfY29uZmlndXJlOgorICBjYXNlIGFjdF90cmlnZ2VyczoKKyAgY2FzZSBhY3RfcmVtb3ZlOgorICBjYXNlIGFjdF9wdXJnZToKKyAgICBwcm9jZXNzX3F1ZXVlKCk7CisgIGNhc2UgYWN0X3VucGFjazoKKyAgY2FzZSBhY3RfYXZhaWw6CisgICAgYnJlYWs7CisgIGRlZmF1bHQ6CisgICAgaW50ZXJuZXJyKCJ1bmtub3duIGFjdGlvbiAnJWQnIiwgY2lwYWN0aW9uLT5hcmdfaW50KTsKKyAgfQorCisgIHRyaWdwcm9jX3J1bl9kZWZlcnJlZCgpOworICBtb2RzdGF0ZGJfc2h1dGRvd24oKTsKKworICByZXR1cm4gMDsKK30KKworLyoqCisgKiBEZWNpZGUgd2hldGhlciB3ZSB3YW50IHRvIGluc3RhbGwgYSBuZXcgdmVyc2lvbiBvZiB0aGUgcGFja2FnZS4KKyAqCisgKiBAcGFyYW0gcGtnIFRoZSBwYWNrYWdlIHdpdGggdGhlIHZlcnNpb24gd2UgbWlnaHQgd2FudCB0byBpbnN0YWxsCisgKgorICogQHJldHZhbCB0cnVlICBJZiB0aGUgcGFja2FnZSBzaG91bGQgYmUgc2tpcHBlZC4KKyAqIEByZXR2YWwgZmFsc2UgSWYgdGhlIHBhY2thZ2Ugc2hvdWxkIGJlIGluc3RhbGxlZC4KKyAqLworYm9vbAord2FudHRvaW5zdGFsbChzdHJ1Y3QgcGtnaW5mbyAqcGtnKQoreworICBpbnQgcjsKKworICBpZiAocGtnLT53YW50ICE9IHdhbnRfaW5zdGFsbCAmJiBwa2ctPndhbnQgIT0gd2FudF9ob2xkKSB7CisgICAgaWYgKGZfYWxzb3NlbGVjdCkgeworICAgICAgcHJpbnRmKF8oIlNlbGVjdGluZyBwcmV2aW91c2x5IHVuc2VsZWN0ZWQgcGFja2FnZSAlcy5cbiIpLCBwa2ctPm5hbWUpOworICAgICAgcGtnLT53YW50ID0gd2FudF9pbnN0YWxsOworICAgICAgcmV0dXJuIHRydWU7CisgICAgfSBlbHNlIHsKKyAgICAgIHByaW50ZihfKCJTa2lwcGluZyB1bnNlbGVjdGVkIHBhY2thZ2UgJXMuXG4iKSwgcGtnLT5uYW1lKTsKKyAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisgIH0KKworICBpZiAocGtnLT5lZmxhZyAmIGVmbGFnX3JlaW5zdHJlcSkKKyAgICByZXR1cm4gdHJ1ZTsKKyAgaWYgKHBrZy0+c3RhdHVzIDwgc3RhdF91bnBhY2tlZCkKKyAgICByZXR1cm4gdHJ1ZTsKKworICByID0gdmVyc2lvbmNvbXBhcmUoJnBrZy0+YXZhaWxhYmxlLnZlcnNpb24sICZwa2ctPmluc3RhbGxlZC52ZXJzaW9uKTsKKyAgaWYgKHIgPiAwKSB7CisgICAgcmV0dXJuIHRydWU7CisgIH0gZWxzZSBpZiAociA9PSAwKSB7CisgICAgLyogU2FtZSB2ZXJzaW9uIGZ1bGx5IGluc3RhbGxlZC4gKi8KKyAgICBpZiAoZl9za2lwc2FtZSkgeworICAgICAgZnByaW50ZihzdGRlcnIsIF8oIlZlcnNpb24gJS4yNTBzIG9mICUuMjUwcyBhbHJlYWR5IGluc3RhbGxlZCwgIgorICAgICAgICAgICAgICAgICAgICAgICAgInNraXBwaW5nLlxuIiksCisgICAgICAgICAgICAgIHZlcnNpb25kZXNjcmliZSgmcGtnLT5pbnN0YWxsZWQudmVyc2lvbiwgdmRld19ub25hbWJpZyksCisgICAgICAgICAgICAgIHBrZy0+bmFtZSk7CisgICAgICByZXR1cm4gZmFsc2U7CisgICAgfSBlbHNlIHsKKyAgICAgIHJldHVybiB0cnVlOworICAgIH0KKyAgfSBlbHNlIHsKKyAgICBpZiAoZmNfZG93bmdyYWRlKSB7CisgICAgICB3YXJuaW5nKF8oImRvd25ncmFkaW5nICUuMjUwcyBmcm9tICUuMjUwcyB0byAlLjI1MHMuIiksIHBrZy0+bmFtZSwKKyAgICAgICAgICAgICAgdmVyc2lvbmRlc2NyaWJlKCZwa2ctPmluc3RhbGxlZC52ZXJzaW9uLCB2ZGV3X25vbmFtYmlnKSwKKyAgICAgICAgICAgICAgdmVyc2lvbmRlc2NyaWJlKCZwa2ctPmF2YWlsYWJsZS52ZXJzaW9uLCB2ZGV3X25vbmFtYmlnKSk7CisgICAgICByZXR1cm4gdHJ1ZTsKKyAgICB9IGVsc2UgeworICAgICAgZnByaW50ZihzdGRlcnIsIF8oIldpbGwgbm90IGRvd25ncmFkZSAlLjI1MHMgZnJvbSB2ZXJzaW9uICUuMjUwcyAiCisgICAgICAgICAgICAgICAgICAgICAgICAidG8gJS4yNTBzLCBza2lwcGluZy5cbiIpLCBwa2ctPm5hbWUsCisgICAgICAgICAgICAgIHZlcnNpb25kZXNjcmliZSgmcGtnLT5pbnN0YWxsZWQudmVyc2lvbiwgdmRld19ub25hbWJpZyksCisgICAgICAgICAgICAgIHZlcnNpb25kZXNjcmliZSgmcGtnLT5hdmFpbGFibGUudmVyc2lvbiwgdmRld19ub25hbWJpZykpOworICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0KKyAgfQorfQorCitzdHJ1Y3QgZmlsZWlubGlzdCAqbmV3Y29uZmZfYXBwZW5kKHN0cnVjdCBmaWxlaW5saXN0ICoqKm5ld2NvbmZmaWxlc2xhc3RwX2lvLAorCQkJCSAgIHN0cnVjdCBmaWxlbmFtZW5vZGUgKm5hbWVub2RlKSB7CisgIHN0cnVjdCBmaWxlaW5saXN0ICpuZXdjb25mZjsKKworICBuZXdjb25mZj0gbV9tYWxsb2Moc2l6ZW9mKHN0cnVjdCBmaWxlaW5saXN0KSk7CisgIG5ld2NvbmZmLT5uZXh0ID0gTlVMTDsKKyAgbmV3Y29uZmYtPm5hbWVub2RlPSBuYW1lbm9kZTsKKyAgKipuZXdjb25mZmlsZXNsYXN0cF9pbz0gbmV3Y29uZmY7CisgICpuZXdjb25mZmlsZXNsYXN0cF9pbz0gJm5ld2NvbmZmLT5uZXh0OworICByZXR1cm4gbmV3Y29uZmY7Cit9CisKKy8qIHZpOiB0cz04IHN3PTIKKyAqLwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zcmMvYXJjaGl2ZXMuaCBiL2Rwa2ctMS4xNi4xLjEvc3JjL2FyY2hpdmVzLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZWIwZTQ2OAotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc3JjL2FyY2hpdmVzLmgKQEAgLTAsMCArMSw4NiBAQAorLyoKKyAqIGRwa2cgLSBtYWluIHByb2dyYW0gZm9yIHBhY2thZ2UgbWFuYWdlbWVudAorICogYXJjaGl2ZXMuaCAtIGZ1bmN0aW9ucyBjb21tb24gdG8gYXJjaGl2ZXMuYyBhbmQgcHJvY2Vzc2FyYy5jCisgKgorICogQ29weXJpZ2h0IMKpIDE5OTUgSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuZ3JlZW5lbmQub3JnLnVrPgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaWZuZGVmIEFSQ0hJVkVTX0gKKyNkZWZpbmUgQVJDSElWRVNfSAorCisjaW5jbHVkZSA8c3RkYm9vbC5oPgorCisjaW5jbHVkZSA8ZHBrZy90YXJmbi5oPgorCitzdHJ1Y3QgdGFyY29udGV4dCB7CisgIGludCBiYWNrZW5kcGlwZTsKKyAgc3RydWN0IHBrZ2luZm8gKnBrZzsKKyAgc3RydWN0IGZpbGVpbmxpc3QgKipuZXdmaWxlc3A7Cit9OworCitzdHJ1Y3QgcGtnX2RlY29uZl9saXN0IHsKKyAgc3RydWN0IHBrZ19kZWNvbmZfbGlzdCAqbmV4dDsKKyAgc3RydWN0IHBrZ2luZm8gKnBrZzsKKyAgc3RydWN0IHBrZ2luZm8gKnBrZ19yZW1vdmFsOworfTsKKworZXh0ZXJuIGludCBmbmFtZWlkbHU7CitleHRlcm4gc3RydWN0IHZhcmJ1ZiBmbmFtZXZiOworZXh0ZXJuIHN0cnVjdCB2YXJidWYgZm5hbWV0bXB2YjsKK2V4dGVybiBzdHJ1Y3QgdmFyYnVmIGZuYW1lbmV3dmI7CitleHRlcm4gc3RydWN0IHBrZ19kZWNvbmZfbGlzdCAqZGVjb25maWd1cmU7CisKK3ZvaWQgcHVzaF9jb25mbGljdG9yKHN0cnVjdCBwa2dpbmZvICpwa2csIHN0cnVjdCBwa2dpbmZvICpwa2dfZml4YnlybSk7CisKK3ZvaWQgY3VfcGF0aG5hbWUoaW50IGFyZ2MsIHZvaWQgKiphcmd2KTsKK3ZvaWQgY3VfY2lkaXIoaW50IGFyZ2MsIHZvaWQgKiphcmd2KTsKK3ZvaWQgY3VfZmlsZXNsaXN0KGludCBhcmdjLCB2b2lkICoqYXJndik7Cit2b2lkIGN1X2JhY2tlbmRwaXBlKGludCBhcmdjLCB2b2lkICoqYXJndik7CisKK3ZvaWQgY3VfaW5zdGFsbG5ldyhpbnQgYXJnYywgdm9pZCAqKmFyZ3YpOworCit2b2lkIGN1X3ByZXJtdXBncmFkZShpbnQgYXJnYywgdm9pZCAqKmFyZ3YpOwordm9pZCBjdV9wcmVybWluZmF2b3VyKGludCBhcmdjLCB2b2lkICoqYXJndik7Cit2b2lkIGN1X3ByZWluc3R2ZXJ5bmV3KGludCBhcmdjLCB2b2lkICoqYXJndik7Cit2b2lkIGN1X3ByZWluc3RuZXcoaW50IGFyZ2MsIHZvaWQgKiphcmd2KTsKK3ZvaWQgY3VfcHJlaW5zdHVwZ3JhZGUoaW50IGFyZ2MsIHZvaWQgKiphcmd2KTsKK3ZvaWQgY3VfcG9zdHJtdXBncmFkZShpbnQgYXJnYywgdm9pZCAqKmFyZ3YpOworCit2b2lkIGN1X3ByZXJtZGVjb25maWd1cmUoaW50IGFyZ2MsIHZvaWQgKiphcmd2KTsKK3ZvaWQgb2tfcHJlcm1kZWNvbmZpZ3VyZShpbnQgYXJnYywgdm9pZCAqKmFyZ3YpOworCit2b2lkIHNldHVwZm5hbWV2YnMoY29uc3QgY2hhciAqZmlsZW5hbWUpOworCitpbnQgc2VjdXJlX3JlbW92ZShjb25zdCBjaGFyICpmaWxlbmFtZSk7CisKK2ludCB0YXJvYmplY3Qodm9pZCAqY3R4LCBzdHJ1Y3QgdGFyX2VudHJ5ICp0aSk7CitpbnQgdGFyZmlsZXJlYWQodm9pZCAqdWQsIGNoYXIgKmJ1ZiwgaW50IGxlbik7Cit2b2lkIHRhcl9kZWZlcnJlZF9leHRyYWN0KHN0cnVjdCBmaWxlaW5saXN0ICpmaWxlcywgc3RydWN0IHBrZ2luZm8gKnBrZyk7CisKK2Jvb2wgZmlsZXNhdmVzcGFja2FnZShzdHJ1Y3QgZmlsZWlubGlzdCAqLCBzdHJ1Y3QgcGtnaW5mbyAqLAorICAgICAgICAgICAgICAgICAgICAgIHN0cnVjdCBwa2dpbmZvICpwa2diZWluZ2luc3RhbGxlZCk7CisKK3ZvaWQgY2hlY2tfY29uZmxpY3Qoc3RydWN0IGRlcGVuZGVuY3kgKmRlcCwgc3RydWN0IHBrZ2luZm8gKnBrZywKKyAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqcGZpbGVuYW1lKTsKK3ZvaWQgY2hlY2tfYnJlYWtzKHN0cnVjdCBkZXBlbmRlbmN5ICpkZXAsIHN0cnVjdCBwa2dpbmZvICpwa2csCisgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpwZmlsZW5hbWUpOworCitzdHJ1Y3QgZmlsZWlubGlzdCAqYWRkZmlsZXRvbGlzdChzdHJ1Y3QgdGFyY29udGV4dCAqdGMsCisJCQkJIHN0cnVjdCBmaWxlbmFtZW5vZGUgKm5hbWVub2RlKTsKKworZXh0ZXJuIGludCBjbGVhbnVwX3BrZ19mYWlsZWQsIGNsZWFudXBfY29uZmxpY3Rvcl9mYWlsZWQ7CisKKyNlbmRpZiAvKiBBUkNISVZFU19IICovCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NyYy9jbGVhbnVwLmMgYi9kcGtnLTEuMTYuMS4xL3NyYy9jbGVhbnVwLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZWZmODFhYQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc3JjL2NsZWFudXAuYwpAQCAtMCwwICsxLDI0OSBAQAorLyoKKyAqIGRwa2cgLSBtYWluIHByb2dyYW0gZm9yIHBhY2thZ2UgbWFuYWdlbWVudAorICogY2xlYW51cC5jIC0gY2xlYW51cCBmdW5jdGlvbnMsIHVzZWQgd2hlbiB3ZSBuZWVkIHRvIHVud2luZAorICoKKyAqIENvcHlyaWdodCDCqSAxOTk1IElhbiBKYWNrc29uIDxpYW5AY2hpYXJrLmdyZWVuZW5kLm9yZy51az4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworI2luY2x1ZGUgPGNvbmZpZy5oPgorI2luY2x1ZGUgPGNvbXBhdC5oPgorCisjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CisjaW5jbHVkZSA8c3lzL3N0YXQuaD4KKworI2luY2x1ZGUgPGVycm5vLmg+CisjaW5jbHVkZSA8Y3R5cGUuaD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDx0aW1lLmg+CisjaW5jbHVkZSA8dXRpbWUuaD4KKyNpbmNsdWRlIDxmY250bC5oPgorI2luY2x1ZGUgPHVuaXN0ZC5oPgorI2luY2x1ZGUgPHN0ZGxpYi5oPgorI2luY2x1ZGUgPHN0ZGlvLmg+CisKKyNpbmNsdWRlIDxkcGtnL2kxOG4uaD4KKyNpbmNsdWRlIDxkcGtnL2Rwa2cuaD4KKyNpbmNsdWRlIDxkcGtnL2Rwa2ctZGIuaD4KKyNpbmNsdWRlIDxkcGtnL29wdGlvbnMuaD4KKworI2luY2x1ZGUgImZpbGVzZGIuaCIKKyNpbmNsdWRlICJtYWluLmgiCisjaW5jbHVkZSAiYXJjaGl2ZXMuaCIKKworaW50IGNsZWFudXBfcGtnX2ZhaWxlZD0wLCBjbGVhbnVwX2NvbmZsaWN0b3JfZmFpbGVkPTA7CisKKy8qKgorICogU29tZXRoaW5nIHdlbnQgd3JvbmcgYW5kIHdlJ3JlIHVuZG9pbmcuCisgKgorICogV2UgaGF2ZSB0aGUgZm9sbG93aW5nIHBvc3NpYmxlIHNpdHVhdGlvbnMgZm9yIG5vbi1jb25mZmlsZXM6CisgKiAgIDxmb28+LmRwa2ctdG1wIGV4aXN0cyAtIGluIHRoaXMgY2FzZSB3ZSB3YW50IHRvIHJlbW92ZQorICogICAgPGZvbz4gaWYgaXQgZXhpc3RzIGFuZCByZXBsYWNlIGl0IHdpdGggPGZvbz4uZHBrZy10bXAuCisgKiAgICBUaGlzIHVuZG9lcyB0aGUgYmFja3VwIG9wZXJhdGlvbi4KKyAqICAgPGZvbz4uZHBrZy10bXAgZG9lcyBub3QgZXhpc3QgLSA8Zm9vPiBtYXkgYmUgb24gdGhlIGRpc2ssCisgKiAgICBhcyBhIG5ldyBmaWxlIHdoaWNoIGRpZG4ndCBmYWlsLCByZW1vdmUgaXQgaWYgaXQgaXMuCisgKgorICogSW4gYm90aCBjYXNlcywgd2UgYWxzbyBtYWtlIHN1cmUgd2UgZGVsZXRlIDxmb28+LmRwa2ctbmV3IGluCisgKiBjYXNlIHRoYXQncyBzdGlsbCBoYW5naW5nIGFyb3VuZC4KKyAqCisgKiBGb3IgY29uZmZpbGVzLCB3ZSBzaW1wbHkgZGVsZXRlIDxmb28+LmRwa2ctbmV3LiBGb3IgdGhlc2UsCisgKiA8Zm9vPi5kcGtnLXRtcCBzaG91bGRuJ3QgZXhpc3QsIGFzIHdlIGRvbid0IG1ha2UgYSBiYWNrdXAKKyAqIGF0IHRoaXMgc3RhZ2UuIEp1c3QgdG8gYmUgb24gdGhlIHNhZmUgc2lkZSwgdGhvdWdoLCB3ZSBkb24ndAorICogbG9vayBmb3IgaXQuCisgKi8KK3ZvaWQgY3VfaW5zdGFsbG5ldyhpbnQgYXJnYywgdm9pZCAqKmFyZ3YpIHsKKyAgc3RydWN0IGZpbGVpbmxpc3QgKm5pZmQ9IChzdHJ1Y3QgZmlsZWlubGlzdCopYXJndlswXTsKKyAgc3RydWN0IGZpbGVuYW1lbm9kZSAqbmFtZW5vZGU7CisgIHN0cnVjdCBzdGF0IHN0YWI7CisKKyAgY2xlYW51cF9wa2dfZmFpbGVkKys7IGNsZWFudXBfY29uZmxpY3Rvcl9mYWlsZWQrKzsKKworICBuYW1lbm9kZT0gbmlmZC0+bmFtZW5vZGU7CisgIGRlYnVnKGRiZ19lYWNoZmlsZSwiY3VfaW5zdGFsbG5ldyBgJXMnIGZsYWdzPSVvIixuYW1lbm9kZS0+bmFtZSxuYW1lbm9kZS0+ZmxhZ3MpOworCisgIHNldHVwZm5hbWV2YnMobmFtZW5vZGUtPm5hbWUpOworCisgIGlmICghKG5hbWVub2RlLT5mbGFncyAmIGZubmZfbmV3X2NvbmZmKSAmJiAhbHN0YXQoZm5hbWV0bXB2Yi5idWYsJnN0YWIpKSB7CisgICAgLyogT0ssIDxmb28+LmRwa2ctdG1wIGV4aXN0cy4gUmVtb3ZlIDxmb28+IGFuZAorICAgICAqIHJlc3RvcmUgPGZvbz4uZHBrZy10bXAgLi4uICovCisgICAgaWYgKG5hbWVub2RlLT5mbGFncyAmIGZubmZfbm9fYXRvbWljX292ZXJ3cml0ZSkgeworICAgICAgLyogSWYgd2UgY2FuJ3QgZG8gYW4gYXRvbWljIG92ZXJ3cml0ZSB3ZSBoYXZlIHRvIGRlbGV0ZSBmaXJzdCBhbnkKKyAgICAgICAqIGxpbmsgdG8gdGhlIG5ldyB2ZXJzaW9uIHdlIG1heSBoYXZlIGNyZWF0ZWQuICovCisgICAgICBkZWJ1ZyhkYmdfZWFjaGZpbGVkZXRhaWwsImN1X2luc3RhbGxuZXcgcmVzdG9yaW5nIG5vbmF0b21pYyIpOworICAgICAgaWYgKHNlY3VyZV9yZW1vdmUoZm5hbWV2Yi5idWYpICYmIGVycm5vICE9IEVOT0VOVCAmJiBlcnJubyAhPSBFTk9URElSKQorICAgICAgICBvaHNoaXRlKF8oInVuYWJsZSB0byByZW1vdmUgbmV3bHktaW5zdGFsbGVkIHZlcnNpb24gb2YgYCUuMjUwcycgdG8gYWxsb3ciCisgICAgICAgICAgICAgICAgIiByZWluc3RhbGxhdGlvbiBvZiBiYWNrdXAgY29weSIpLG5hbWVub2RlLT5uYW1lKTsKKyAgICB9IGVsc2UgeworICAgICAgZGVidWcoZGJnX2VhY2hmaWxlZGV0YWlsLCJjdV9pbnN0YWxsbmV3IHJlc3RvcmluZyBhdG9taWMiKTsKKyAgICB9CisgICAgLyogRWl0aGVyIHdlIGNhbiBkbyBhbiBhdG9taWMgcmVzdG9yZSwgb3Igd2UndmUgbWFkZSByb29tOiAqLworICAgIGlmIChyZW5hbWUoZm5hbWV0bXB2Yi5idWYsZm5hbWV2Yi5idWYpKQorICAgICAgb2hzaGl0ZShfKCJ1bmFibGUgdG8gcmVzdG9yZSBiYWNrdXAgdmVyc2lvbiBvZiBgJS4yNTBzJyIpLG5hbWVub2RlLT5uYW1lKTsKKyAgICAvKiBJZiA8Zm9vPi5kcGtnLXRtcCB3YXMgc3RpbGwgYSBoYXJkIGxpbmsgdG8gPGZvbz4sIHRoZW4gdGhlIGF0b21pYworICAgICAqIHJlbmFtZSBkaWQgbm90aGluZywgc28gd2UgbWFrZSBzdXJlIHRvIHJlbW92ZSB0aGUgYmFja3VwLiAqLworICAgIGVsc2UgaWYgKHVubGluayhmbmFtZXRtcHZiLmJ1ZikgJiYgZXJybm8gIT0gRU5PRU5UKQorICAgICAgb2hzaGl0ZShfKCJ1bmFibGUgdG8gcmVtb3ZlIGJhY2t1cCBjb3B5IG9mICclLjI1MHMnIiksIG5hbWVub2RlLT5uYW1lKTsKKyAgfSBlbHNlIGlmIChuYW1lbm9kZS0+ZmxhZ3MgJiBmbm5mX3BsYWNlZF9vbl9kaXNrKSB7CisgICAgZGVidWcoZGJnX2VhY2hmaWxlZGV0YWlsLCJjdV9pbnN0YWxsbmV3IHJlbW92aW5nIG5ldyBmaWxlIik7CisgICAgaWYgKHNlY3VyZV9yZW1vdmUoZm5hbWV2Yi5idWYpICYmIGVycm5vICE9IEVOT0VOVCAmJiBlcnJubyAhPSBFTk9URElSKQorICAgICAgb2hzaGl0ZShfKCJ1bmFibGUgdG8gcmVtb3ZlIG5ld2x5LWluc3RhbGxlZCB2ZXJzaW9uIG9mIGAlLjI1MHMnIiksCisJICAgICAgbmFtZW5vZGUtPm5hbWUpOworICB9IGVsc2UgeworICAgIGRlYnVnKGRiZ19lYWNoZmlsZWRldGFpbCwiY3VfaW5zdGFsbG5ldyBub3QgcmVzdG9yaW5nIik7CisgIH0KKyAgLyogV2hhdGV2ZXIsIHdlIGRlbGV0ZSA8Zm9vPi5kcGtnLW5ldyBub3csIGlmIGl0IHN0aWxsIGV4aXN0cy4gKi8KKyAgaWYgKHNlY3VyZV9yZW1vdmUoZm5hbWVuZXd2Yi5idWYpICYmIGVycm5vICE9IEVOT0VOVCAmJiBlcnJubyAhPSBFTk9URElSKQorICAgIG9oc2hpdGUoXygidW5hYmxlIHRvIHJlbW92ZSBuZXdseS1leHRyYWN0ZWQgdmVyc2lvbiBvZiBgJS4yNTBzJyIpLG5hbWVub2RlLT5uYW1lKTsKKworICBjbGVhbnVwX3BrZ19mYWlsZWQtLTsgY2xlYW51cF9jb25mbGljdG9yX2ZhaWxlZC0tOworfQorCit2b2lkIGN1X3ByZXJtdXBncmFkZShpbnQgYXJnYywgdm9pZCAqKmFyZ3YpIHsKKyAgc3RydWN0IHBrZ2luZm8gKnBrZz0gKHN0cnVjdCBwa2dpbmZvKilhcmd2WzBdOworCisgIGlmIChjbGVhbnVwX3BrZ19mYWlsZWQrKykgcmV0dXJuOworICBtYWludGFpbmVyX3NjcmlwdF9wb3N0aW5zdChwa2csICJhYm9ydC11cGdyYWRlIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmVyc2lvbmRlc2NyaWJlKCZwa2ctPmF2YWlsYWJsZS52ZXJzaW9uLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmRld19ub25hbWJpZyksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwpOworICBwa2ctPmVmbGFnICY9IH5lZmxhZ19yZWluc3RyZXE7CisgIHBvc3RfcG9zdGluc3RfdGFza3MocGtnLCBzdGF0X2luc3RhbGxlZCk7CisgIGNsZWFudXBfcGtnX2ZhaWxlZC0tOworfQorCisvKgorICogQWxzbyBoYXMgY29uZmxpY3RvciBpbiBhcmd2WzFdIGFuZCBpbmZhdm91ciBpbiBhcmd2WzJdLgorICogY29uZmxpY3RvciBtYXkgYmUgTlVMTCBpZiBkZWNvbmZpZ3VyZSB3YXMgZHVlIHRvIEJyZWFrcy4KKyAqLwordm9pZCBva19wcmVybWRlY29uZmlndXJlKGludCBhcmdjLCB2b2lkICoqYXJndikgeworICBzdHJ1Y3QgcGtnaW5mbyAqZGVjb25mPSAoc3RydWN0IHBrZ2luZm8qKWFyZ3ZbMF07CisKKyAgaWYgKGNpcGFjdGlvbi0+YXJnX2ludCA9PSBhY3RfaW5zdGFsbCkKKyAgICBhZGRfdG9fcXVldWUoZGVjb25mKTsKK30KKworLyoKKyAqIGNvbmZsaWN0b3IgbWF5IGJlIE5VTEwuCisgKi8KK3ZvaWQgY3VfcHJlcm1kZWNvbmZpZ3VyZShpbnQgYXJnYywgdm9pZCAqKmFyZ3YpIHsKKyAgc3RydWN0IHBrZ2luZm8gKmRlY29uZj0gKHN0cnVjdCBwa2dpbmZvKilhcmd2WzBdOworICBzdHJ1Y3QgcGtnaW5mbyAqY29uZmxpY3RvciA9IChzdHJ1Y3QgcGtnaW5mbyAqKWFyZ3ZbMV07CisgIHN0cnVjdCBwa2dpbmZvICppbmZhdm91cj0gKHN0cnVjdCBwa2dpbmZvKilhcmd2WzJdOworCisgIGlmIChjb25mbGljdG9yKSB7CisgICAgbWFpbnRhaW5lcl9zY3JpcHRfcG9zdGluc3QoZGVjb25mLCAiYWJvcnQtZGVjb25maWd1cmUiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJpbi1mYXZvdXIiLCBpbmZhdm91ci0+bmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2ZXJzaW9uZGVzY3JpYmUoJmluZmF2b3VyLT5hdmFpbGFibGUudmVyc2lvbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmRld19ub25hbWJpZyksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInJlbW92aW5nIiwgY29uZmxpY3Rvci0+bmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2ZXJzaW9uZGVzY3JpYmUoJmNvbmZsaWN0b3ItPmluc3RhbGxlZC52ZXJzaW9uLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2ZGV3X25vbmFtYmlnKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMKTsKKyAgfSBlbHNlIHsKKyAgICBtYWludGFpbmVyX3NjcmlwdF9wb3N0aW5zdChkZWNvbmYsICJhYm9ydC1kZWNvbmZpZ3VyZSIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImluLWZhdm91ciIsIGluZmF2b3VyLT5uYW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZlcnNpb25kZXNjcmliZSgmaW5mYXZvdXItPmF2YWlsYWJsZS52ZXJzaW9uLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2ZGV3X25vbmFtYmlnKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMKTsKKyAgfQorCisgIHBvc3RfcG9zdGluc3RfdGFza3MoZGVjb25mLCBzdGF0X2luc3RhbGxlZCk7Cit9CisKK3ZvaWQgY3VfcHJlcm1pbmZhdm91cihpbnQgYXJnYywgdm9pZCAqKmFyZ3YpIHsKKyAgc3RydWN0IHBrZ2luZm8gKmNvbmZsaWN0b3I9IChzdHJ1Y3QgcGtnaW5mbyopYXJndlswXTsKKyAgc3RydWN0IHBrZ2luZm8gKmluZmF2b3VyPSAoc3RydWN0IHBrZ2luZm8qKWFyZ3ZbMV07CisKKyAgaWYgKGNsZWFudXBfY29uZmxpY3Rvcl9mYWlsZWQrKykgcmV0dXJuOworICBtYWludGFpbmVyX3NjcmlwdF9wb3N0aW5zdChjb25mbGljdG9yLCAiYWJvcnQtcmVtb3ZlIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImluLWZhdm91ciIsIGluZmF2b3VyLT5uYW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2ZXJzaW9uZGVzY3JpYmUoJmluZmF2b3VyLT5hdmFpbGFibGUudmVyc2lvbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZkZXdfbm9uYW1iaWcpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMKTsKKyAgY29uZmxpY3Rvci0+ZWZsYWcgJj0gfmVmbGFnX3JlaW5zdHJlcTsKKyAgcG9zdF9wb3N0aW5zdF90YXNrcyhjb25mbGljdG9yLCBzdGF0X2luc3RhbGxlZCk7CisgIGNsZWFudXBfY29uZmxpY3Rvcl9mYWlsZWQtLTsKK30KKwordm9pZCBjdV9wcmVpbnN0dmVyeW5ldyhpbnQgYXJnYywgdm9pZCAqKmFyZ3YpIHsKKyAgc3RydWN0IHBrZ2luZm8gKnBrZz0gKHN0cnVjdCBwa2dpbmZvKilhcmd2WzBdOworICBjaGFyICpjaWRpcj0gKGNoYXIqKWFyZ3ZbMV07CisgIGNoYXIgKmNpZGlycmVzdD0gKGNoYXIqKWFyZ3ZbMl07CisKKyAgaWYgKGNsZWFudXBfcGtnX2ZhaWxlZCsrKSByZXR1cm47CisgIG1haW50YWluZXJfc2NyaXB0X25ldyhwa2csIFBPU1RSTUZJTEUsICJwb3N0LXJlbW92YWwiLCBjaWRpciwgY2lkaXJyZXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgImFib3J0LWluc3RhbGwiLCBOVUxMKTsKKyAgcGtnLT5zdGF0dXM9IHN0YXRfbm90aW5zdGFsbGVkOworICBwa2ctPmVmbGFnICY9IH5lZmxhZ19yZWluc3RyZXE7CisgIHBrZ2Jpbl9ibGFuaygmcGtnLT5pbnN0YWxsZWQpOworICBtb2RzdGF0ZGJfbm90ZShwa2cpOworICBjbGVhbnVwX3BrZ19mYWlsZWQtLTsKK30KKwordm9pZCBjdV9wcmVpbnN0bmV3KGludCBhcmdjLCB2b2lkICoqYXJndikgeworICBzdHJ1Y3QgcGtnaW5mbyAqcGtnPSAoc3RydWN0IHBrZ2luZm8qKWFyZ3ZbMF07CisgIGNoYXIgKmNpZGlyPSAoY2hhciopYXJndlsxXTsKKyAgY2hhciAqY2lkaXJyZXN0PSAoY2hhciopYXJndlsyXTsKKworICBpZiAoY2xlYW51cF9wa2dfZmFpbGVkKyspIHJldHVybjsKKyAgbWFpbnRhaW5lcl9zY3JpcHRfbmV3KHBrZywgUE9TVFJNRklMRSwgInBvc3QtcmVtb3ZhbCIsIGNpZGlyLCBjaWRpcnJlc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAiYWJvcnQtaW5zdGFsbCIsIHZlcnNpb25kZXNjcmliZSgmcGtnLT5pbnN0YWxsZWQudmVyc2lvbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZkZXdfbm9uYW1iaWcpLAorICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCk7CisgIHBrZy0+c3RhdHVzPSBzdGF0X2NvbmZpZ2ZpbGVzOworICBwa2ctPmVmbGFnICY9IH5lZmxhZ19yZWluc3RyZXE7CisgIG1vZHN0YXRkYl9ub3RlKHBrZyk7CisgIGNsZWFudXBfcGtnX2ZhaWxlZC0tOworfQorCit2b2lkIGN1X3ByZWluc3R1cGdyYWRlKGludCBhcmdjLCB2b2lkICoqYXJndikgeworICBzdHJ1Y3QgcGtnaW5mbyAqcGtnPSAoc3RydWN0IHBrZ2luZm8qKWFyZ3ZbMF07CisgIGNoYXIgKmNpZGlyPSAoY2hhciopYXJndlsxXTsKKyAgY2hhciAqY2lkaXJyZXN0PSAoY2hhciopYXJndlsyXTsKKyAgZW51bSBwa2dzdGF0dXMgKm9sZHN0YXR1c3A9IChlbnVtIHBrZ3N0YXR1cyopYXJndlszXTsKKworICBpZiAoY2xlYW51cF9wa2dfZmFpbGVkKyspIHJldHVybjsKKyAgbWFpbnRhaW5lcl9zY3JpcHRfbmV3KHBrZywgUE9TVFJNRklMRSwgInBvc3QtcmVtb3ZhbCIsIGNpZGlyLCBjaWRpcnJlc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAiYWJvcnQtdXBncmFkZSIsCisgICAgICAgICAgICAgICAgICAgICAgICB2ZXJzaW9uZGVzY3JpYmUoJnBrZy0+aW5zdGFsbGVkLnZlcnNpb24sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmRld19ub25hbWJpZyksCisgICAgICAgICAgICAgICAgICAgICAgICBOVUxMKTsKKyAgcGtnLT5zdGF0dXM9ICpvbGRzdGF0dXNwOworICBwa2ctPmVmbGFnICY9IH5lZmxhZ19yZWluc3RyZXE7CisgIG1vZHN0YXRkYl9ub3RlKHBrZyk7CisgIGNsZWFudXBfcGtnX2ZhaWxlZC0tOworfQorCit2b2lkIGN1X3Bvc3RybXVwZ3JhZGUoaW50IGFyZ2MsIHZvaWQgKiphcmd2KSB7CisgIHN0cnVjdCBwa2dpbmZvICpwa2c9IChzdHJ1Y3QgcGtnaW5mbyopYXJndlswXTsKKworICBpZiAoY2xlYW51cF9wa2dfZmFpbGVkKyspIHJldHVybjsKKyAgbWFpbnRhaW5lcl9zY3JpcHRfaW5zdGFsbGVkKHBrZyxQUkVJTlNURklMRSwicHJlLWluc3RhbGxhdGlvbiIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiYWJvcnQtdXBncmFkZSIsIHZlcnNpb25kZXNjcmliZSgmcGtnLT5hdmFpbGFibGUudmVyc2lvbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZkZXdfbm9uYW1iaWcpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCk7CisgIGNsZWFudXBfcGtnX2ZhaWxlZC0tOworfQorCit2b2lkIGN1X3ByZXJtcmVtb3ZlKGludCBhcmdjLCB2b2lkICoqYXJndikgeworICBzdHJ1Y3QgcGtnaW5mbyAqcGtnPSAoc3RydWN0IHBrZ2luZm8qKWFyZ3ZbMF07CisgIGVudW0gcGtnc3RhdHVzICpvbGRwa2dzdGF0dXM9IChlbnVtIHBrZ3N0YXR1cyopYXJndlsxXTsKKworICBpZiAoY2xlYW51cF9wa2dfZmFpbGVkKyspIHJldHVybjsKKyAgbWFpbnRhaW5lcl9zY3JpcHRfcG9zdGluc3QocGtnLCAiYWJvcnQtcmVtb3ZlIiwgTlVMTCk7CisgIHBrZy0+ZWZsYWcgJj0gfmVmbGFnX3JlaW5zdHJlcTsKKyAgcG9zdF9wb3N0aW5zdF90YXNrcyhwa2csICpvbGRwa2dzdGF0dXMpOworICBjbGVhbnVwX3BrZ19mYWlsZWQtLTsKK30KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc3JjL2NvbmZpZ3VyZS5jIGIvZHBrZy0xLjE2LjEuMS9zcmMvY29uZmlndXJlLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTkyNWJhZgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc3JjL2NvbmZpZ3VyZS5jCkBAIC0wLDAgKzEsNzIzIEBACisvKgorICogZHBrZyAtIG1haW4gcHJvZ3JhbSBmb3IgcGFja2FnZSBtYW5hZ2VtZW50CisgKiBjb25maWd1cmUuYyAtIGNvbmZpZ3VyZSBwYWNrYWdlcworICoKKyAqIENvcHlyaWdodCDCqSAxOTk1IElhbiBKYWNrc29uIDxpYW5AY2hpYXJrLmdyZWVuZW5kLm9yZy51az4KKyAqIENvcHlyaWdodCDCqSAxOTk5LCAyMDAyIFdpY2hlcnQgQWtrZXJtYW4gPHdpY2hlcnRAZGVlcGhhY2ttb2RlLm9yZz4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworI2luY2x1ZGUgPGNvbmZpZy5oPgorI2luY2x1ZGUgPGNvbXBhdC5oPgorCisjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CisjaW5jbHVkZSA8c3lzL3N0YXQuaD4KKyNpbmNsdWRlIDxzeXMvd2FpdC5oPgorI2luY2x1ZGUgPHN5cy90ZXJtaW9zLmg+CisKKyNpbmNsdWRlIDxhc3NlcnQuaD4KKyNpbmNsdWRlIDxlcnJuby5oPgorI2luY2x1ZGUgPGN0eXBlLmg+CisjaW5jbHVkZSA8c3RyaW5nLmg+CisjaW5jbHVkZSA8dGltZS5oPgorI2luY2x1ZGUgPGZjbnRsLmg+CisjaW5jbHVkZSA8ZGlyZW50Lmg+CisjaW5jbHVkZSA8dW5pc3RkLmg+CisjaW5jbHVkZSA8c3RkbGliLmg+CisjaW5jbHVkZSA8c3RkaW8uaD4KKworI2luY2x1ZGUgPGRwa2cvbWFjcm9zLmg+CisjaW5jbHVkZSA8ZHBrZy9pMThuLmg+CisjaW5jbHVkZSA8ZHBrZy9kcGtnLmg+CisjaW5jbHVkZSA8ZHBrZy9kcGtnLWRiLmg+CisjaW5jbHVkZSA8ZHBrZy9zdHJpbmcuaD4KKyNpbmNsdWRlIDxkcGtnL2J1ZmZlci5oPgorI2luY2x1ZGUgPGRwa2cvZmlsZS5oPgorI2luY2x1ZGUgPGRwa2cvcGF0aC5oPgorI2luY2x1ZGUgPGRwa2cvc3VicHJvYy5oPgorI2luY2x1ZGUgPGRwa2cvY29tbWFuZC5oPgorI2luY2x1ZGUgPGRwa2cvdHJpZ2xpYi5oPgorCisjaW5jbHVkZSAiZmlsZXNkYi5oIgorI2luY2x1ZGUgIm1haW4uaCIKKworc3RhdGljIGludCBjb25mZm9wdGNlbGxzWzJdWzJdID0geworCS8qIERpc3RybyAhZWRpdGVkLiAqLwkvKiBEaXN0cm8gZWRpdGVkLiAqLworCXsgY2ZvX2tlZXAsCQljZm9faW5zdGFsbCB9LAkJLyogVXNlciAhZWRpdGVkLiAqLworCXsgY2ZvX2tlZXAsCQljZm9fcHJvbXB0X2tlZXAgfSwJLyogVXNlciBlZGl0ZWQuICovCit9OworCitzdGF0aWMgdm9pZCBtZDVoYXNoKHN0cnVjdCBwa2dpbmZvICpwa2csIGNoYXIgKmhhc2hidWYsIGNvbnN0IGNoYXIgKmZuKTsKK3N0YXRpYyB2b2lkIHNob3dkaWZmKGNvbnN0IGNoYXIgKm9sZCwgY29uc3QgY2hhciAqbmV3KTsKK3N0YXRpYyBlbnVtIGNvbmZmb3B0IHByb21wdGNvbmZhY3Rpb24oc3RydWN0IHBrZ2luZm8gKnBrZywgY29uc3QgY2hhciAqY2ZnZmlsZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqcmVhbG9sZCwgY29uc3QgY2hhciAqcmVhbG5ldywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IHVzZXJlZGl0ZWQsIGludCBkaXN0ZWRpdGVkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbnVtIGNvbmZmb3B0IHdoYXQpOworCitzdGF0aWMgdm9pZAorZGVmZXJyZWRfY29uZmlndXJlX2NvbmZmaWxlKHN0cnVjdCBwa2dpbmZvICpwa2csIHN0cnVjdCBjb25mZmlsZSAqY29uZmYpCit7CisJc3RydWN0IGZpbGVuYW1lbm9kZSAqdXNlbm9kZTsKKwlzdGF0aWMgY29uc3QgY2hhciBFTVBUWV9IQVNIW10gPSAiLSI7CisJY2hhciBjdXJyZW50aGFzaFtNRDVIQVNITEVOICsgMV0sIG5ld2Rpc3RoYXNoW01ENUhBU0hMRU4gKyAxXTsKKwlpbnQgdXNlcmVkaXRlZCwgZGlzdGVkaXRlZDsKKwllbnVtIGNvbmZmb3B0IHdoYXQ7CisJc3RydWN0IHN0YXQgc3RhYjsKKwlzdHJ1Y3QgdmFyYnVmIGNkciA9IFZBUkJVRl9JTklULCBjZHIyID0gVkFSQlVGX0lOSVQ7CisJY2hhciAqY2RyMnJlc3Q7CisJaW50IHI7CisKKwl1c2Vub2RlID0gbmFtZW5vZGV0b3VzZShmaW5kbmFtZW5vZGUoY29uZmYtPm5hbWUsIGZubl9ub2NvcHkpLCBwa2cpOworCisJciA9IGNvbmZmZGVyZWYocGtnLCAmY2RyLCB1c2Vub2RlLT5uYW1lKTsKKwlpZiAociA9PSAtMSkgeworCQljb25mZi0+aGFzaCA9IEVNUFRZX0hBU0g7CisJCXJldHVybjsKKwl9CisJbWQ1aGFzaChwa2csIGN1cnJlbnRoYXNoLCBjZHIuYnVmKTsKKworCXZhcmJ1Zl9yZXNldCgmY2RyMik7CisJdmFyYnVmX2FkZF9zdHIoJmNkcjIsIGNkci5idWYpOworCXZhcmJ1Zl9lbmRfc3RyKCZjZHIyKTsKKwkvKiBYWFg6IE1ha2Ugc3VyZSB0aGVyZSdzIGVub3VnaCByb29tIGZvciBleHRlbnNpb25zLiAqLworCXZhcmJ1Zl9ncm93KCZjZHIyLCA1MCk7CisJY2RyMnJlc3QgPSBjZHIyLmJ1ZiArIHN0cmxlbihjZHIuYnVmKTsKKwkvKiBGcm9tIG5vdyBvbiB3ZSBjYW4ganVzdCBzdHJjcHkoY2RyMnJlc3QsIGV4dGVuc2lvbik7ICovCisKKwlzdHJjcHkoY2RyMnJlc3QsIERQS0dORVdFWFQpOworCS8qIElmIHRoZSAuZHBrZy1uZXcgZmlsZSBpcyBubyBsb25nZXIgdGhlcmUsIGlnbm9yZSB0aGlzIG9uZS4gKi8KKwlpZiAobHN0YXQoY2RyMi5idWYsICZzdGFiKSkgeworCQlpZiAoZXJybm8gPT0gRU5PRU5UKQorCQkJcmV0dXJuOworCQlvaHNoaXRlKF8oInVuYWJsZSB0byBzdGF0IG5ldyBkaXN0cmlidXRlZCBjb25mZmlsZSAnJS4yNTBzJyIpLAorCQkgICAgICAgIGNkcjIuYnVmKTsKKwl9CisJbWQ1aGFzaChwa2csIG5ld2Rpc3RoYXNoLCBjZHIyLmJ1Zik7CisKKwkvKiBDb3B5IHRoZSBwZXJtaXNzaW9ucyBmcm9tIHRoZSBpbnN0YWxsZWQgdmVyc2lvbiB0byB0aGUgbmV3CisJICogZGlzdHJpYnV0ZWQgdmVyc2lvbi4gKi8KKwlpZiAoIXN0YXQoY2RyLmJ1ZiwgJnN0YWIpKQorCQlmaWxlX2NvcHlfcGVybXMoY2RyLmJ1ZiwgY2RyMi5idWYpOworCWVsc2UgaWYgKGVycm5vICE9IEVOT0VOVCkKKwkJb2hzaGl0ZShfKCJ1bmFibGUgdG8gc3RhdCBjdXJyZW50IGluc3RhbGxlZCBjb25mZmlsZSBgJS4yNTBzJyIpLAorCQkgICAgICAgIGNkci5idWYpOworCisJLyogU2VsZWN0IHdoYXQgdG8gZG8uICovCisJaWYgKCFzdHJjbXAoY3VycmVudGhhc2gsIG5ld2Rpc3RoYXNoKSkgeworCQkvKiBUaGV5J3JlIGJvdGggdGhlIHNhbWUgc28gdGhlcmUncyBubyBwb2ludCBhc2tpbmcgc2lsbHkKKwkJICogcXVlc3Rpb25zLiAqLworCQl1c2VyZWRpdGVkID0gLTE7CisJCWRpc3RlZGl0ZWQgPSAtMTsKKwkJd2hhdCA9IGNmb19pZGVudGljYWw7CisJfSBlbHNlIGlmICghc3RyY21wKGN1cnJlbnRoYXNoLCBOT05FWElTVEVOVEZMQUcpICYmIGZjX2NvbmZmX21pc3MpIHsKKwkJZnByaW50ZihzdGRlcnIsCisJCSAgICAgICAgXygiXG4iCisJCSAgICAgICAgICAiQ29uZmlndXJhdGlvbiBmaWxlIGAlcycsIGRvZXMgbm90IGV4aXN0IG9uIHN5c3RlbS5cbiIKKwkJICAgICAgICAgICJJbnN0YWxsaW5nIG5ldyBjb25maWcgZmlsZSBhcyB5b3UgcmVxdWVzdGVkLlxuIiksCisJCSAgICAgICAgdXNlbm9kZS0+bmFtZSk7CisJCXdoYXQgPSBjZm9fbmV3Y29uZmY7CisJCXVzZXJlZGl0ZWQgPSAtMTsKKwkJZGlzdGVkaXRlZCA9IC0xOworCX0gZWxzZSBpZiAoIXN0cmNtcChjb25mZi0+aGFzaCwgTkVXQ09ORkZJTEVGTEFHKSkgeworCQlpZiAoIXN0cmNtcChjdXJyZW50aGFzaCwgTk9ORVhJU1RFTlRGTEFHKSkgeworCQkJd2hhdCA9IGNmb19uZXdjb25mZjsKKwkJCXVzZXJlZGl0ZWQgPSAtMTsKKwkJCWRpc3RlZGl0ZWQgPSAtMTsKKwkJfSBlbHNlIHsKKwkJCXVzZXJlZGl0ZWQgPSAxOworCQkJZGlzdGVkaXRlZCA9IDE7CisJCQl3aGF0ID0gY29uZmZvcHRjZWxsc1t1c2VyZWRpdGVkXVtkaXN0ZWRpdGVkXSB8CisJCQkgICAgICAgY2ZvZl9pc25ldzsKKwkJfQorCX0gZWxzZSB7CisJCXVzZXJlZGl0ZWQgPSBzdHJjbXAoY29uZmYtPmhhc2gsIGN1cnJlbnRoYXNoKSAhPSAwOworCQlkaXN0ZWRpdGVkID0gc3RyY21wKGNvbmZmLT5oYXNoLCBuZXdkaXN0aGFzaCkgIT0gMDsKKworCQlpZiAoZmNfY29uZmZfYXNrICYmIHVzZXJlZGl0ZWQpCisJCQl3aGF0ID0gY2ZvX3Byb21wdF9rZWVwOworCQllbHNlCisJCQl3aGF0ID0gY29uZmZvcHRjZWxsc1t1c2VyZWRpdGVkXVtkaXN0ZWRpdGVkXTsKKworCQlpZiAoIXN0cmNtcChjdXJyZW50aGFzaCwgTk9ORVhJU1RFTlRGTEFHKSkKKwkJCXdoYXQgfD0gY2ZvZl91c2Vycm1kOworCX0KKworCWRlYnVnKGRiZ19jb25mZiwKKwkgICAgICAiZGVmZXJyZWRfY29uZmlndXJlICclcycgKD0gJyVzJykgdXNlcmVkaXRlZD0lZCBkaXN0ZWRpdGVkPSVkIHdoYXQ9JW8iLAorCSAgICAgIHVzZW5vZGUtPm5hbWUsIGNkci5idWYsIHVzZXJlZGl0ZWQsIGRpc3RlZGl0ZWQsIHdoYXQpOworCisJd2hhdCA9IHByb21wdGNvbmZhY3Rpb24ocGtnLCB1c2Vub2RlLT5uYW1lLCBjZHIuYnVmLCBjZHIyLmJ1ZiwKKwkgICAgICAgICAgICAgICAgICAgICAgICB1c2VyZWRpdGVkLCBkaXN0ZWRpdGVkLCB3aGF0KTsKKworCXN3aXRjaCAod2hhdCAmIH4oY2ZvZl9pc25ldyB8IGNmb2ZfdXNlcnJtZCkpIHsKKwljYXNlIGNmb19rZWVwIHwgY2ZvZl9iYWNrdXA6CisJCXN0cmNweShjZHIycmVzdCwgRFBLR09MREVYVCk7CisJCWlmICh1bmxpbmsoY2RyMi5idWYpICYmIGVycm5vICE9IEVOT0VOVCkKKwkJCXdhcm5pbmcoXygiJXM6IGZhaWxlZCB0byByZW1vdmUgb2xkIGJhY2t1cCAnJS4yNTBzJzogJXMiKSwKKwkJCSAgICAgICAgcGtnLT5uYW1lLCBjZHIyLmJ1Ziwgc3RyZXJyb3IoZXJybm8pKTsKKworCQl2YXJidWZfYWRkX3N0cigmY2RyLCBEUEtHRElTVEVYVCk7CisJCXZhcmJ1Zl9lbmRfc3RyKCZjZHIpOworCQlzdHJjcHkoY2RyMnJlc3QsIERQS0dORVdFWFQpOworCQl0cmlnX2ZpbGVfYWN0aXZhdGUodXNlbm9kZSwgcGtnKTsKKwkJaWYgKHJlbmFtZShjZHIyLmJ1ZiwgY2RyLmJ1ZikpCisJCQl3YXJuaW5nKF8oIiVzOiBmYWlsZWQgdG8gcmVuYW1lICclLjI1MHMnIHRvICclLjI1MHMnOiAlcyIpLAorCQkJICAgICAgICBwa2ctPm5hbWUsIGNkcjIuYnVmLCBjZHIuYnVmLCBzdHJlcnJvcihlcnJubykpOworCQlicmVhazsKKwljYXNlIGNmb19rZWVwOgorCQlzdHJjcHkoY2RyMnJlc3QsIERQS0dORVdFWFQpOworCQlpZiAodW5saW5rKGNkcjIuYnVmKSkKKwkJCXdhcm5pbmcoXygiJXM6IGZhaWxlZCB0byByZW1vdmUgJyUuMjUwcyc6ICVzIiksCisJCQkgICAgICAgIHBrZy0+bmFtZSwgY2RyMi5idWYsIHN0cmVycm9yKGVycm5vKSk7CisJCWJyZWFrOworCWNhc2UgY2ZvX2luc3RhbGwgfCBjZm9mX2JhY2t1cDoKKwkJc3RyY3B5KGNkcjJyZXN0LCBEUEtHRElTVEVYVCk7CisJCWlmICh1bmxpbmsoY2RyMi5idWYpICYmIGVycm5vICE9IEVOT0VOVCkKKwkJCXdhcm5pbmcoXygiJXM6IGZhaWxlZCB0byByZW1vdmUgb2xkIGRpc3RyaWJ1dGVkIHZlcnNpb24gJyUuMjUwcyc6ICVzIiksCisJCQkgICAgICAgIHBrZy0+bmFtZSwgY2RyMi5idWYsIHN0cmVycm9yKGVycm5vKSk7CisJCXN0cmNweShjZHIycmVzdCwgRFBLR09MREVYVCk7CisJCWlmICh1bmxpbmsoY2RyMi5idWYpICYmIGVycm5vICE9IEVOT0VOVCkKKwkJCXdhcm5pbmcoXygiJXM6IGZhaWxlZCB0byByZW1vdmUgJyUuMjUwcycgKGJlZm9yZSBvdmVyd3JpdGUpOiAlcyIpLAorCQkJICAgICAgICBwa2ctPm5hbWUsIGNkcjIuYnVmLCBzdHJlcnJvcihlcnJubykpOworCQlpZiAoISh3aGF0ICYgY2ZvZl91c2Vycm1kKSkKKwkJCWlmIChsaW5rKGNkci5idWYsIGNkcjIuYnVmKSkKKwkJCQl3YXJuaW5nKF8oIiVzOiBmYWlsZWQgdG8gbGluayAnJS4yNTBzJyB0byAnJS4yNTBzJzogJXMiKSwKKwkJCQkgICAgICAgIHBrZy0+bmFtZSwgY2RyLmJ1ZiwgY2RyMi5idWYsIHN0cmVycm9yKGVycm5vKSk7CisJCS8qIEZhbGwgdGhyb3VnaC4gKi8KKwljYXNlIGNmb19pbnN0YWxsOgorCQlwcmludGYoXygiSW5zdGFsbGluZyBuZXcgdmVyc2lvbiBvZiBjb25maWcgZmlsZSAlcyAuLi5cbiIpLAorCQkgICAgICAgdXNlbm9kZS0+bmFtZSk7CisJY2FzZSBjZm9fbmV3Y29uZmY6CisJCXN0cmNweShjZHIycmVzdCwgRFBLR05FV0VYVCk7CisJCXRyaWdfZmlsZV9hY3RpdmF0ZSh1c2Vub2RlLCBwa2cpOworCQlpZiAocmVuYW1lKGNkcjIuYnVmLCBjZHIuYnVmKSkKKwkJCW9oc2hpdGUoXygidW5hYmxlIHRvIGluc3RhbGwgYCUuMjUwcycgYXMgYCUuMjUwcyciKSwKKwkJCSAgICAgICAgY2RyMi5idWYsIGNkci5idWYpOworCQlicmVhazsKKwlkZWZhdWx0OgorCQlpbnRlcm5lcnIoInVua25vd24gY29uZmZvcHQgJyVkJyIsIHdoYXQpOworCX0KKworCWNvbmZmLT5oYXNoID0gbmZzdHJzYXZlKG5ld2Rpc3RoYXNoKTsKKwltb2RzdGF0ZGJfbm90ZShwa2cpOworCisJdmFyYnVmX2Rlc3Ryb3koJmNkcik7CisJdmFyYnVmX2Rlc3Ryb3koJmNkcjIpOworfQorCisvKioKKyAqIFByb2Nlc3MgdGhlIGRlZmVycmVkIGNvbmZpZ3VyZSBwYWNrYWdlLgorICoKKyAqIFRoZSBhbGdvcml0aG0gZm9yIGRlY2lkaW5nIHdoYXQgdG8gY29uZmlndXJlIGZpcnN0IGlzIGFzIGZvbGxvd3M6CisgKiBMb29wIHRocm91Z2ggYWxsIHBhY2thZ2VzIGRvaW5nIGEg4oCYdHJ5IDHigJkgdW50aWwgd2UndmUgYmVlbiByb3VuZAorICogYW5kIG5vdGhpbmcgaGFzIGJlZW4gZG9uZSwgdGhlbiBkbyDigJh0cnkgMuKAmSBhbmQg4oCYdHJ5IDPigJkgbGlrZXdpc2UuCisgKiBUaGUgaW5jcmVtZW50aW5nIG9mIOKAmGRlcGVuZHRyeeKAmSBpcyBkb25lIGJ5IHByb2Nlc3NfcXVldWUoKS4KKyAqCisgKiBUcnkgMToKKyAqICAgQXJlIGFsbCBkZXBlbmRlbmNpZXMgb2YgdGhpcyBwYWNrYWdlIGRvbmU/IElmIHNvLCBkbyBpdC4KKyAqICAgQXJlIGFueSBvZiB0aGUgZGVwZW5kZW5jaWVzIG1pc3Npbmcgb3IgdGhlIHdyb25nIHZlcnNpb24/CisgKiAgICAgSWYgc28sIGFib3J0ICh1bmxlc3MgLS1mb3JjZS1kZXBlbmRzLCBpbiB3aGljaCBjYXNlIGRlZmVyKS4KKyAqICAgV2lsbCB3ZSBuZWVkIHRvIGNvbmZpZ3VyZSBhIHBhY2thZ2Ugd2Ugd2VyZW4ndCBnaXZlbiBhcyBhbgorICogICAgIGFyZ3VtZW50PyBJZiBzbywgYWJvcnQg4pSAIGV4Y2VwdCBpZiAtLWZvcmNlLWNvbmZpZ3VyZS1hbnksCisgKiAgICAgaW4gd2hpY2ggY2FzZSB3ZSBhZGQgdGhlIHBhY2thZ2UgdG8gdGhlIGFyZ3VtZW50IGxpc3QuCisgKiAgIElmIG5vbmUgb2YgdGhlIGFib3ZlLCBkZWZlciB0aGUgcGFja2FnZS4KKyAqCisgKiBUcnkgMjoKKyAqICAgRmluZCBhIGN5Y2xlIGFuZCBicmVhayBpdCAoc2VlIGFib3ZlKS4KKyAqICAgRG8gYXMgZm9yIHRyeSAxLgorICoKKyAqIFRyeSAzIChvbmx5IGlmIC0tZm9yY2UtZGVwZW5kcy12ZXJzaW9uKToKKyAqICAgU2FtZSBhcyBmb3IgdHJ5IDIsIGJ1dCBkb24ndCBtaW5kIHZlcnNpb24gbnVtYmVyIGluIGRlcGVuZGVuY2llcy4KKyAqCisgKiBUcnkgNCAob25seSBpZiAtLWZvcmNlLWRlcGVuZHMpOgorICogICBEbyBhbnl3YXkuCisgKgorICogQHBhcmFtIHBrZyBUaGUgcGFja2FnZSB0byBhY3Qgb24uCisgKi8KK3ZvaWQKK2RlZmVycmVkX2NvbmZpZ3VyZShzdHJ1Y3QgcGtnaW5mbyAqcGtnKQoreworCXN0cnVjdCB2YXJidWYgYWVtc2dzID0gVkFSQlVGX0lOSVQ7CisJc3RydWN0IGNvbmZmaWxlICpjb25mZjsKKwlpbnQgb2s7CisKKwlpZiAocGtnLT5zdGF0dXMgPT0gc3RhdF9ub3RpbnN0YWxsZWQpCisJCW9oc2hpdChfKCJubyBwYWNrYWdlIG5hbWVkIGAlcycgaXMgaW5zdGFsbGVkLCBjYW5ub3QgY29uZmlndXJlIiksCisJCSAgICAgICBwa2ctPm5hbWUpOworCWlmIChwa2ctPnN0YXR1cyA9PSBzdGF0X2luc3RhbGxlZCkKKwkJb2hzaGl0KF8oInBhY2thZ2UgJS4yNTBzIGlzIGFscmVhZHkgaW5zdGFsbGVkIGFuZCBjb25maWd1cmVkIiksCisJCSAgICAgICBwa2ctPm5hbWUpOworCWlmIChwa2ctPnN0YXR1cyAhPSBzdGF0X3VucGFja2VkICYmIHBrZy0+c3RhdHVzICE9IHN0YXRfaGFsZmNvbmZpZ3VyZWQpCisJCW9oc2hpdChfKCJwYWNrYWdlICUuMjUwcyBpcyBub3QgcmVhZHkgZm9yIGNvbmZpZ3VyYXRpb25cbiIKKwkJICAgICAgICAgIiBjYW5ub3QgY29uZmlndXJlIChjdXJyZW50IHN0YXR1cyBgJS4yNTBzJykiKSwKKwkJICAgICAgIHBrZy0+bmFtZSwgc3RhdHVzaW5mb3NbcGtnLT5zdGF0dXNdLm5hbWUpOworCisJaWYgKGRlcGVuZHRyeSA+IDEpCisJCWlmIChmaW5kYnJlYWtjeWNsZShwa2cpKQorCQkJc2luY2Vub3RoaW5nID0gMDsKKworCW9rID0gZGVwZW5kZW5jaWVzX29rKHBrZywgTlVMTCwgJmFlbXNncyk7CisJaWYgKG9rID09IDEpIHsKKwkJdmFyYnVmX2Rlc3Ryb3koJmFlbXNncyk7CisJCXBrZy0+Y2xpZW50ZGF0YS0+aXN0b2JlID0gaXRiX2luc3RhbGxuZXc7CisJCWFkZF90b19xdWV1ZShwa2cpOworCQlyZXR1cm47CisJfQorCisJdHJpZ3Byb2NfcmVzZXRfY3ljbGUoKTsKKworCS8qCisJICogQXQgdGhpcyBwb2ludCByZW1vdmFsIGZyb20gdGhlIHF1ZXVlIGlzIGNvbmZpcm1lZC4gVGhpcworCSAqIHJlcHJlc2VudHMgaXJyZXZlcnNpYmxlIHByb2dyZXNzIHdydCB0cmlnZ2VyIGN5Y2xlcy4gT25seQorCSAqIHBhY2thZ2VzIGluIHN0YXRfdW5wYWNrZWQgYXJlIGF1dG9tYXRpY2FsbHkgYWRkZWQgdG8gdGhlCisJICogY29uZmlndXJhdGlvbiBxdWV1ZSwgYW5kIGR1cmluZyBjb25maWd1cmF0aW9uIGFuZCB0cmlnZ2VyCisJICogcHJvY2Vzc2luZyBuZXcgcGFja2FnZXMgY2FuJ3QgZW50ZXIgaW50byB1bnBhY2tlZC4KKwkgKi8KKworCW9rID0gYnJlYWtzZXNfb2socGtnLCAmYWVtc2dzKSA/IG9rIDogMDsKKwlpZiAob2sgPT0gMCkgeworCQlzaW5jZW5vdGhpbmcgPSAwOworCQl2YXJidWZfZW5kX3N0cigmYWVtc2dzKTsKKwkJZnByaW50ZihzdGRlcnIsCisJCSAgICAgICAgXygiZHBrZzogZGVwZW5kZW5jeSBwcm9ibGVtcyBwcmV2ZW50IGNvbmZpZ3VyYXRpb24gb2YgJXM6XG4lcyIpLAorCQkgICAgICAgIHBrZy0+bmFtZSwgYWVtc2dzLmJ1Zik7CisJCXZhcmJ1Zl9kZXN0cm95KCZhZW1zZ3MpOworCQlvaHNoaXQoXygiZGVwZW5kZW5jeSBwcm9ibGVtcyAtIGxlYXZpbmcgdW5jb25maWd1cmVkIikpOworCX0gZWxzZSBpZiAoYWVtc2dzLnVzZWQpIHsKKwkJdmFyYnVmX2VuZF9zdHIoJmFlbXNncyk7CisJCWZwcmludGYoc3RkZXJyLAorCQkgICAgICAgIF8oImRwa2c6ICVzOiBkZXBlbmRlbmN5IHByb2JsZW1zLCBidXQgY29uZmlndXJpbmcgYW55d2F5IGFzIHlvdSByZXF1ZXN0ZWQ6XG4lcyIpLAorCQkgICAgICAgIHBrZy0+bmFtZSwgYWVtc2dzLmJ1Zik7CisJfQorCXZhcmJ1Zl9kZXN0cm95KCZhZW1zZ3MpOworCXNpbmNlbm90aGluZyA9IDA7CisKKwlpZiAocGtnLT5lZmxhZyAmIGVmbGFnX3JlaW5zdHJlcSkKKwkJZm9yY2libGVlcnIoZmNfcmVtb3ZlcmVpbnN0cmVxLAorCQkgICAgICAgICAgICBfKCJQYWNrYWdlIGlzIGluIGEgdmVyeSBiYWQgaW5jb25zaXN0ZW50IHN0YXRlIC0geW91IHNob3VsZFxuIgorCQkgICAgICAgICAgICAgICIgcmVpbnN0YWxsIGl0IGJlZm9yZSBhdHRlbXB0aW5nIGNvbmZpZ3VyYXRpb24uIikpOworCisJcHJpbnRmKF8oIlNldHRpbmcgdXAgJXMgKCVzKSAuLi5cbiIpLCBwa2ctPm5hbWUsCisJICAgICAgIHZlcnNpb25kZXNjcmliZSgmcGtnLT5pbnN0YWxsZWQudmVyc2lvbiwgdmRld19ub25hbWJpZykpOworCWxvZ19hY3Rpb24oImNvbmZpZ3VyZSIsIHBrZyk7CisKKwl0cmlnX2FjdGl2YXRlX3BhY2thZ2Vwcm9jZXNzaW5nKHBrZyk7CisKKwlpZiAoZl9ub2FjdCkgeworCQlwa2ctPnN0YXR1cyA9IHN0YXRfaW5zdGFsbGVkOworCQlwa2ctPmNsaWVudGRhdGEtPmlzdG9iZSA9IGl0Yl9ub3JtYWw7CisJCXJldHVybjsKKwl9CisKKwlpZiAocGtnLT5zdGF0dXMgPT0gc3RhdF91bnBhY2tlZCkgeworCQlkZWJ1ZyhkYmdfZ2VuZXJhbCwgImRlZmVycmVkX2NvbmZpZ3VyZSB1cGRhdGluZyBjb25mZmlsZXMiKTsKKwkJLyogVGhpcyB3aWxsIG5vdCBkbyBhdCBhbGwgdGhlIHJpZ2h0IHRoaW5nIHdpdGggb3ZlcnJpZGRlbgorCQkgKiBjb25mZmlsZXMgb3IgY29uZmZpbGVzIHRoYXQgYXJlIHRoZSDigJh0YXJnZXTigJkgb2YgYW4gb3ZlcnJpZGU7CisJCSAqIGFsbCB0aGUgcmVmZXJlbmNlcyBoZXJlIHdvdWxkIGJlIHRvIHRoZSDigJhjb250ZXN0ZWTigJkKKwkJICogZmlsZW5hbWUsIGFuZCBpbiBhbnkgY2FzZSB0aGVyZSdkIG9ubHkgYmUgb25lIGhhc2ggZm9yIGJvdGgKKwkJICog4oCYdmVyc2lvbnPigJkgb2YgdGhlIGNvbmZmaWxlLgorCQkgKgorCQkgKiBPdmVycmlkaW5nIGNvbmZmaWxlcyBpcyBhIHNpbGx5IHRoaW5nIHRvIGRvIGFueXdheSA6LSkuICovCisKKwkJbW9kc3RhdGRiX25vdGUocGtnKTsKKworCQkvKiBPbiBlbnRyeSwgdGhlIOKAmG5ld+KAmSB2ZXJzaW9uIG9mIGVhY2ggY29uZmZpbGUgaGFzIGJlZW4KKwkJICogdW5wYWNrZWQgYXMg4oCYKi5kcGtnLW5ld+KAmSwgYW5kIHRoZSDigJhpbnN0YWxsZWTigJkgdmVyc2lvbiBpcworCQkgKiBhcy15ZXQgdW50b3VjaGVkIGluIOKAmCrigJkuIFRoZSBoYXNoIG9mIHRoZSDigJhvbGQgZGlzdHJpYnV0ZWTigJkKKwkJICogdmVyc2lvbiBpcyBpbiB0aGUgY29uZmZpbGVzIGRhdGEgZm9yIHRoZSBwYWNrYWdlLiBJZgorCQkgKiDigJgqLmRwa2ctbmV34oCZIG5vIGxvbmdlciBleGlzdHMgd2UgYXNzdW1lIHRoYXQgd2UndmUKKwkJICogYWxyZWFkeSBwcm9jZXNzZWQgdGhpcyBvbmUuICovCisJCWZvciAoY29uZmYgPSBwa2ctPmluc3RhbGxlZC5jb25mZmlsZXM7IGNvbmZmOyBjb25mZiA9IGNvbmZmLT5uZXh0KQorCQkJZGVmZXJyZWRfY29uZmlndXJlX2NvbmZmaWxlKHBrZywgY29uZmYpOworCisJCXBrZy0+c3RhdHVzID0gc3RhdF9oYWxmY29uZmlndXJlZDsKKwl9CisKKwlhc3NlcnQocGtnLT5zdGF0dXMgPT0gc3RhdF9oYWxmY29uZmlndXJlZCk7CisKKwltb2RzdGF0ZGJfbm90ZShwa2cpOworCisJbWFpbnRhaW5lcl9zY3JpcHRfcG9zdGluc3QocGtnLCAiY29uZmlndXJlIiwKKwkgICAgICAgICAgICAgICAgICAgICAgICAgICBpbmZvcm1hdGl2ZXZlcnNpb24oJnBrZy0+Y29uZmlndmVyc2lvbikgPworCSAgICAgICAgICAgICAgICAgICAgICAgICAgIHZlcnNpb25kZXNjcmliZSgmcGtnLT5jb25maWd2ZXJzaW9uLAorCSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2ZGV3X25vbmFtYmlnKSA6ICIiLAorCSAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwpOworCisJcGtnLT5lZmxhZyA9IGVmbGFnX29rOworCXBrZy0+dHJpZ3BlbmRfaGVhZCA9IE5VTEw7CisJcG9zdF9wb3N0aW5zdF90YXNrcyhwa2csIHN0YXRfaW5zdGFsbGVkKTsKK30KKworLyoqCisgKiBEZXJlZmVyZW5jZSBhIGZpbGUgYnkgZm9sbG93aW5nIGFsbCBwb3NzaWJseSB1c2VkIHN5bWxpbmtzLgorICoKKyAqIEBwYXJhbVtpbl0gcGtnIFRoZSBwYWNrYWdlIHRvIGFjdCBvbi4KKyAqIEBwYXJhbVtvdXRdIHJlc3VsdCBUaGUgZGVyZWZlcmVuY2UgY29uZmZpbGUgcGF0aC4KKyAqIEBwYXJhbVtpbl0gaW4gVGhlIGNvbmZmaWxlIHBhdGggdG8gZGVyZWZlcmVuY2UuCisgKgorICogQHJldHVybiBBbiBlcnJvciBjb2RlIGZvciB0aGUgb3BlcmF0aW9uLgorICogQHJldHZhbCAwIEV2ZXJ5dGhpbmcgd2VudCBvay4KKyAqIEByZXR2YWwgLTEgT3RoZXJ3aXNlLgorICovCitpbnQKK2NvbmZmZGVyZWYoc3RydWN0IHBrZ2luZm8gKnBrZywgc3RydWN0IHZhcmJ1ZiAqcmVzdWx0LCBjb25zdCBjaGFyICppbikKK3sKKwlzdGF0aWMgc3RydWN0IHZhcmJ1ZiB0YXJnZXQgPSBWQVJCVUZfSU5JVDsKKwlzdHJ1Y3Qgc3RhdCBzdGFiOworCXNzaXplX3QgcjsKKwlpbnQgbG9vcHByb3RlY3Q7CisKKwl2YXJidWZfcmVzZXQocmVzdWx0KTsKKwl2YXJidWZfYWRkX3N0cihyZXN1bHQsIGluc3RkaXIpOworCWlmICgqaW4gIT0gJy8nKQorCQl2YXJidWZfYWRkX2NoYXIocmVzdWx0LCAnLycpOworCXZhcmJ1Zl9hZGRfc3RyKHJlc3VsdCwgaW4pOworCXZhcmJ1Zl9lbmRfc3RyKHJlc3VsdCk7CisKKwlsb29wcHJvdGVjdCA9IDA7CisKKwlmb3IgKDs7KSB7CisJCWRlYnVnKGRiZ19jb25mZmRldGFpbCwgImNvbmZmZGVyZWYgaW49JyVzJyBjdXJyZW50IHdvcmtpbmc9JyVzJyIsCisJCSAgICAgIGluLCByZXN1bHQtPmJ1Zik7CisJCWlmIChsc3RhdChyZXN1bHQtPmJ1ZiwgJnN0YWIpKSB7CisJCQlpZiAoZXJybm8gIT0gRU5PRU5UKQorCQkJCXdhcm5pbmcoXygiJXM6IHVuYWJsZSB0byBzdGF0IGNvbmZpZyBmaWxlICclcydcbiIKKwkJCQkgICAgICAgICAgIiAoPSAnJXMnKTogJXMiKSwKKwkJCQkgICAgICAgIHBrZy0+bmFtZSwgaW4sIHJlc3VsdC0+YnVmLCBzdHJlcnJvcihlcnJubykpOworCQkJZGVidWcoZGJnX2NvbmZmZGV0YWlsLCAiY29uZmZkZXJlZiBub25leGlzdGVudCIpOworCQkJcmV0dXJuIDA7CisJCX0gZWxzZSBpZiAoU19JU1JFRyhzdGFiLnN0X21vZGUpKSB7CisJCQlkZWJ1ZyhkYmdfY29uZmYsICJjb25mZmRlcmVmIGluPSclcycgcmVzdWx0PSclcyciLAorCQkJICAgICAgaW4sIHJlc3VsdC0+YnVmKTsKKwkJCXJldHVybiAwOworCQl9IGVsc2UgaWYgKFNfSVNMTksoc3RhYi5zdF9tb2RlKSkgeworCQkJZGVidWcoZGJnX2NvbmZmZGV0YWlsLCAiY29uZmZkZXJlZiBzeW1saW5rIGxvb3Bwcm90ZWN0PSVkIiwKKwkJCSAgICAgIGxvb3Bwcm90ZWN0KTsKKwkJCWlmIChsb29wcHJvdGVjdCsrID49IDI1KSB7CisJCQkJd2FybmluZyhfKCIlczogY29uZmlnIGZpbGUgJyVzJyBpcyBhIGNpcmN1bGFyIGxpbmtcbiIKKwkJCQkgICAgICAgICAgIiAoPSAnJXMnKSIpLCBwa2ctPm5hbWUsIGluLCByZXN1bHQtPmJ1Zik7CisJCQkJcmV0dXJuIC0xOworCQkJfQorCisJCQl2YXJidWZfcmVzZXQoJnRhcmdldCk7CisJCQl2YXJidWZfZ3JvdygmdGFyZ2V0LCBzdGFiLnN0X3NpemUgKyAxKTsKKwkJCXIgPSByZWFkbGluayhyZXN1bHQtPmJ1ZiwgdGFyZ2V0LmJ1ZiwgdGFyZ2V0LnNpemUpOworCQkJaWYgKHIgPCAwKSB7CisJCQkJd2FybmluZyhfKCIlczogdW5hYmxlIHRvIHJlYWRsaW5rIGNvbmZmaWxlICclcydcbiIKKwkJCQkgICAgICAgICAgIiAoPSAnJXMnKTogJXMiKSwKKwkJCQkgICAgICAgIHBrZy0+bmFtZSwgaW4sIHJlc3VsdC0+YnVmLCBzdHJlcnJvcihlcnJubykpOworCQkJCXJldHVybiAtMTsKKwkJCX0gZWxzZSBpZiAociAhPSBzdGFiLnN0X3NpemUpIHsKKwkJCQl3YXJuaW5nKF8oInN5bWJvbGljIGxpbmsgJyUuMjUwcycgc2l6ZSBoYXMgIgorCQkJCSAgICAgICAgICAiY2hhbmdlZCBmcm9tICVqZCB0byAlemQiKSwKKwkJCQkgICAgICAgIHJlc3VsdC0+YnVmLCBzdGFiLnN0X3NpemUsIHIpOworCQkJCXJldHVybiAtMTsKKwkJCX0KKwkJCXZhcmJ1Zl90cnVuYygmdGFyZ2V0LCByKTsKKwkJCXZhcmJ1Zl9lbmRfc3RyKCZ0YXJnZXQpOworCisJCQlkZWJ1ZyhkYmdfY29uZmZkZXRhaWwsCisJCQkgICAgICAiY29uZmZkZXJlZiByZWFkbGluayBnYXZlICV6ZCwgJyVzJyIsCisJCQkgICAgICByLCB0YXJnZXQuYnVmKTsKKworCQkJaWYgKHRhcmdldC5idWZbMF0gPT0gJy8nKSB7CisJCQkJdmFyYnVmX3Jlc2V0KHJlc3VsdCk7CisJCQkJdmFyYnVmX2FkZF9zdHIocmVzdWx0LCBpbnN0ZGlyKTsKKwkJCQlkZWJ1ZyhkYmdfY29uZmZkZXRhaWwsCisJCQkJICAgICAgImNvbmZmZGVyZWYgcmVhZGxpbmsgYWJzb2x1dGUiKTsKKwkJCX0gZWxzZSB7CisJCQkJZm9yIChyID0gcmVzdWx0LT51c2VkIC0gMTsgciA+IDAgJiYgcmVzdWx0LT5idWZbcl0gIT0gJy8nOyByLS0pCisJCQkJCTsKKwkJCQlpZiAociA8IDApIHsKKwkJCQkJd2FybmluZyhfKCIlczogY29uZmZpbGUgJyUuMjUwcycgcmVzb2x2ZXMgdG8gZGVnZW5lcmF0ZSBmaWxlbmFtZVxuIgorCQkJCQkgICAgICAgICAgIiAoJyVzJyBpcyBhIHN5bWxpbmsgdG8gJyVzJykiKSwKKwkJCQkJICAgICAgICBwa2ctPm5hbWUsIGluLCByZXN1bHQtPmJ1ZiwKKwkJCQkJICAgICAgICB0YXJnZXQuYnVmKTsKKwkJCQkJcmV0dXJuIC0xOworCQkJCX0KKwkJCQlpZiAocmVzdWx0LT5idWZbcl0gPT0gJy8nKQorCQkJCQlyKys7CisJCQkJdmFyYnVmX3RydW5jKHJlc3VsdCwgcik7CisJCQkJZGVidWcoZGJnX2NvbmZmZGV0YWlsLAorCQkJCSAgICAgICJjb25mZmRlcmVmIHJlYWRsaW5rIHJlbGF0aXZlIHRvICclLipzJyIsCisJCQkJICAgICAgKGludClyZXN1bHQtPnVzZWQsIHJlc3VsdC0+YnVmKTsKKwkJCX0KKwkJCXZhcmJ1Zl9hZGRfYnVmKHJlc3VsdCwgdGFyZ2V0LmJ1ZiwgdGFyZ2V0LnVzZWQpOworCQkJdmFyYnVmX2VuZF9zdHIocmVzdWx0KTsKKwkJfSBlbHNlIHsKKwkJCXdhcm5pbmcoXygiJXM6IGNvbmZmaWxlICclLjI1MHMnIGlzIG5vdCBhIHBsYWluIGZpbGUgb3Igc3ltbGluayAoPSAnJXMnKSIpLAorCQkJICAgICAgICBwa2ctPm5hbWUsIGluLCByZXN1bHQtPmJ1Zik7CisJCQlyZXR1cm4gLTE7CisJCX0KKwl9Cit9CisKKy8qKgorICogR2VuZXJhdGUgYSBmaWxlIGNvbnRlbnRzIE1ENSBoYXNoLgorICoKKyAqIFRoZSBjYWxsZXIgaXMgcmVzcG9uc2libGUgZm9yIHByb3ZpZGluZyBhIGJ1ZmZlciBmb3IgdGhlIGhhc2ggcmVzdWx0CisgKiBhdCBsZWFzdCBNRDVIQVNITEVOICsgMSBjaGFyYWN0ZXJzIGxvbmcuCisgKgorICogQHBhcmFtW2luXSBwa2cgVGhlIHBhY2thZ2UgdG8gYWN0IG9uLgorICogQHBhcmFtW291dF0gaGFzaGJ1ZiBUaGUgYnVmZmVyIHRvIHN0b3JlIHRoZSBnZW5lcmF0ZWQgaGFzaC4KKyAqIEBwYXJhbVtpbl0gZm4gVGhlIGZpbGVuYW1lLgorICovCitzdGF0aWMgdm9pZAorbWQ1aGFzaChzdHJ1Y3QgcGtnaW5mbyAqcGtnLCBjaGFyICpoYXNoYnVmLCBjb25zdCBjaGFyICpmbikKK3sKKwlzdGF0aWMgaW50IGZkOworCisJZmQgPSBvcGVuKGZuLCBPX1JET05MWSk7CisKKwlpZiAoZmQgPj0gMCkgeworCQlwdXNoX2NsZWFudXAoY3VfY2xvc2VmZCwgZWhmbGFnX2JvbWJvdXQsIE5VTEwsIDAsIDEsICZmZCk7CisJCWZkX21kNShmZCwgaGFzaGJ1ZiwgLTEsIF8oIm1kNWhhc2giKSk7CisJCXBvcF9jbGVhbnVwKGVoZmxhZ19ub3JtYWx0aWR5KTsgLyogZmQgPSBvcGVuKGNkci5idWYpICovCisJCWNsb3NlKGZkKTsKKwl9IGVsc2UgaWYgKGVycm5vID09IEVOT0VOVCkgeworCQlzdHJjcHkoaGFzaGJ1ZiwgTk9ORVhJU1RFTlRGTEFHKTsKKwl9IGVsc2UgeworCQl3YXJuaW5nKF8oIiVzOiB1bmFibGUgdG8gb3BlbiBjb25mZmlsZSAlcyBmb3IgaGFzaDogJXMiKSwKKwkJICAgICAgICBwa2ctPm5hbWUsIGZuLCBzdHJlcnJvcihlcnJubykpOworCQlzdHJjcHkoaGFzaGJ1ZiwgIi0iKTsKKwl9Cit9CisKKy8qKgorICogU2hvdyBhIGRpZmYgYmV0d2VlbiB0d28gZmlsZXMuCisgKgorICogQHBhcmFtIG9sZCBUaGUgcGF0aCB0byB0aGUgb2xkIGZpbGUuCisgKiBAcGFyYW0gbmV3IFRoZSBwYXRoIHRvIHRoZSBuZXcgZmlsZS4KKyAqLworc3RhdGljIHZvaWQKK3Nob3dkaWZmKGNvbnN0IGNoYXIgKm9sZCwgY29uc3QgY2hhciAqbmV3KQoreworCXBpZF90IHBpZDsKKworCXBpZCA9IHN1YnByb2NfZm9yaygpOworCWlmICghcGlkKSB7CisJCS8qIENoaWxkIHByb2Nlc3MuICovCisJCWNvbnN0IGNoYXIgKnBhZ2VyOworCQljaGFyIGNtZGJ1ZlsxMDI0XTsKKworCQlwYWdlciA9IGdldGVudigiUEFHRVIiKTsKKwkJaWYgKCFwYWdlciB8fCAhKnBhZ2VyKQorCQkJcGFnZXIgPSBERUZBVUxUUEFHRVI7CisKKwkJc3ByaW50ZihjbWRidWYsIERJRkYgIiAtTnUgJS4yNTBzICUuMjUwcyB8ICUuMjUwcyIsCisJCSAgICAgICAgc3RyX3F1b3RlX21ldGEob2xkKSwgc3RyX3F1b3RlX21ldGEobmV3KSwgcGFnZXIpOworCisJCWNvbW1hbmRfc2hlbGwoY21kYnVmLCBfKCJjb25mZmlsZSBkaWZmZXJlbmNlIHZpc3VhbGl6ZXIiKSk7CisJfQorCisJLyogUGFyZW50IHByb2Nlc3MuICovCisJc3VicHJvY193YWl0KHBpZCwgXygiY29uZmZpbGUgZGlmZmVyZW5jZSB2aXN1YWxpemVyIikpOworfQorCisvKioKKyAqIFNwYXduIGEgbmV3IHNoZWxsLgorICoKKyAqIENyZWF0ZSBhIHN1YnByb2Nlc3MgYW5kIGV4ZWN1dGUgYSBzaGVsbCB0byBhbGxvdyB0aGUgdXNlciB0byBtYW51YWxseQorICogc29sdmUgdGhlIGNvbmZmaWxlIGNvbmZsaWN0LgorICoKKyAqIEBwYXJhbSBjb25mb2xkIFRoZSBwYXRoIHRvIHRoZSBvbGQgY29uZmZpbGUuCisgKiBAcGFyYW0gY29uZm5ldyBUaGUgcGF0aCB0byB0aGUgbmV3IGNvbmZmaWxlLgorICovCitzdGF0aWMgdm9pZAorc3Bhd25fc2hlbGwoY29uc3QgY2hhciAqY29uZm9sZCwgY29uc3QgY2hhciAqY29uZm5ldykKK3sKKwlwaWRfdCBwaWQ7CisKKwlmcHV0cyhfKCJUeXBlIGBleGl0JyB3aGVuIHlvdSdyZSBkb25lLlxuIiksIHN0ZGVycik7CisKKwlwaWQgPSBzdWJwcm9jX2ZvcmsoKTsKKwlpZiAoIXBpZCkgeworCQkvKiBTZXQgdXNlZnVsIHZhcmlhYmxlcyBmb3IgdGhlIHVzZXIuICovCisJCXNldGVudigiRFBLR19TSEVMTF9SRUFTT04iLCAiY29uZmZpbGUtcHJvbXB0IiwgMSk7CisJCXNldGVudigiRFBLR19DT05GRklMRV9PTEQiLCBjb25mb2xkLCAxKTsKKwkJc2V0ZW52KCJEUEtHX0NPTkZGSUxFX05FVyIsIGNvbmZuZXcsIDEpOworCisJCWNvbW1hbmRfc2hlbGwoTlVMTCwgXygiY29uZmZpbGUgc2hlbGwiKSk7CisJfQorCisJLyogUGFyZW50IHByb2Nlc3MuICovCisJc3VicHJvY193YWl0KHBpZCwgXygiY29uZmZpbGUgc2hlbGwiKSk7Cit9CisKKy8qKgorICogUHJvbXB0IHRoZSB1c2VyIGZvciBob3cgdG8gcmVzb2x2ZSBhIGNvbmZmaWxlIGNvbmZsaWN0LgorICoKKyAqIFdoZW4gZW5jb3VudGVyaW5nIGEgY29uZmZpbGUgY29uZmxpY3QgZHVyaW5nIGNvbmZpZ3VyYXRpb24sIHRoZSB1c2VyIHdpbGwKKyAqIG5vcm1hbGx5IGJlIHByZXNlbnRlZCB3aXRoIGEgdGV4dHVhbCBtZW51IG9mIHBvc3NpYmxlIGFjdGlvbnMuIFRoaXMKKyAqIGJlaGF2aW9yIGlzIG1vZGlmaWVkIHZpYSB2YXJpb3VzIC0tZm9yY2UgZmxhZ3MgYW5kIHBlcmhhcHMgb24gd2hldGhlcgorICogb3Igbm90IGEgdGVybWluYWwgaXMgYXZhaWxhYmxlIHRvIGRvIHRoZSBwcm9tcHRpbmcuCisgKgorICogQHBhcmFtIHBrZyBUaGUgcGFja2FnZSBvd25pbmcgdGhlIGNvbmZmaWxlLgorICogQHBhcmFtIGNmZ2ZpbGUgVGhlIHBhdGggdG8gdGhlIG9sZCBjb25mZmlsZS4KKyAqIEBwYXJhbSByZWFsb2xkIFRoZSBwYXRoIHRvIHRoZSBvbGQgY29uZmZpbGUsIGRlcmVmZXJlbmNlZCBpbiBjYXNlIG9mIGEKKyAqICAgICAgICBzeW1saW5rLCBvdGhlcndpc2UgZXF1YWwgdG8gY2ZnZmlsZS4KKyAqIEBwYXJhbSByZWFsbmV3IFRoZSBwYXRoIHRvIHRoZSBuZXcgY29uZmZpbGUsIGRlcmVmZXJlbmNlZCBpbiBjYXNlIG9mIGEKKyAqICAgICAgICBzeW1saW5rKS4KKyAqIEBwYXJhbSB1c2VyZWRpdGVkIEEgZmxhZyB0byBpbmRpY2F0ZSB3aGV0aGVyIHRoZSBmaWxlIGhhcyBiZWVuIGVkaXRlZAorICogICAgICAgIGxvY2FsbHkuIFNldCB0byBub256ZXJvIHRvIGluZGljYXRlIHRoYXQgdGhlIGZpbGUgaGFzIGJlZW4gbW9kaWZpZWQuCisgKiBAcGFyYW0gZGlzdGVkaXRlZCBBIGZsYWcgdG8gaW5kaWNhdGUgd2hldGhlciB0aGUgZmlsZSBoYXMgYmVlbiB1cGRhdGVkCisgKiAgICAgICAgYmV0d2VlbiBwYWNrYWdlIHZlcnNpb25zLiBTZXQgdG8gbm9uemVybyB0byBpbmRpY2F0ZSB0aGF0IHRoZSBmaWxlCisgKiAgICAgICAgaGFzIGJlZW4gdXBkYXRlZC4KKyAqIEBwYXJhbSB3aGF0IEhpbnRzIG9uIHdoYXQgYWN0aW9uIHNob3VsZCBiZSB0YWtlbiBieSBkZWZ1YWx0LgorICoKKyAqIEByZXR1cm4gVGhlIGFjdGlvbiB3aGljaCBzaG91bGQgYmUgdGFrZW4gYmFzZWQgb24gdXNlciBpbnB1dCBhbmQvb3IgdGhlCisgKiAgICAgICAgIGRlZmF1bHQgYWN0aW9ucyBhcyBjb25maWd1cmVkIGJ5IGNtZGxpbmUvY29uZmlndXJhdGlvbiBvcHRpb25zLgorICovCitzdGF0aWMgZW51bSBjb25mZm9wdAorcHJvbXB0Y29uZmFjdGlvbihzdHJ1Y3QgcGtnaW5mbyAqcGtnLCBjb25zdCBjaGFyICpjZmdmaWxlLAorICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpyZWFsb2xkLCBjb25zdCBjaGFyICpyZWFsbmV3LAorICAgICAgICAgICAgICAgICBpbnQgdXNlcmVkaXRlZCwgaW50IGRpc3RlZGl0ZWQsIGVudW0gY29uZmZvcHQgd2hhdCkKK3sKKwljb25zdCBjaGFyICpzOworCWludCBjLCBjYzsKKworCWlmICghKHdoYXQgJiBjZm9mX3Byb21wdCkpCisJCXJldHVybiB3aGF0OworCisJc3RhdHVzZmRfc2VuZCgic3RhdHVzOiAlcyA6ICVzIDogJyVzJyAnJXMnICVpICVpICIsCisJICAgICAgICAgICAgICBjZmdmaWxlLCAiY29uZmZpbGUtcHJvbXB0IiwKKwkgICAgICAgICAgICAgIHJlYWxvbGQsIHJlYWxuZXcsIHVzZXJlZGl0ZWQsIGRpc3RlZGl0ZWQpOworCisJZG8geworCQkvKiBGbHVzaCB0aGUgdGVybWluYWwncyBpbnB1dCBpbiBjYXNlIHRoZSB1c2VyIGludm9sdW50YXJpbHkKKwkJICogdHlwZWQgc29tZSBjaGFyYWN0ZXJzLiAqLworCQl0Y2ZsdXNoKFNURElOX0ZJTEVOTywgVENJRkxVU0gpOworCQlmcHJpbnRmKHN0ZGVyciwgXygiXG5Db25maWd1cmF0aW9uIGZpbGUgYCVzJyIpLCBjZmdmaWxlKTsKKwkJaWYgKHN0cmNtcChjZmdmaWxlLCByZWFsb2xkKSkKKwkJCWZwcmludGYoc3RkZXJyLCBfKCIgKGFjdHVhbGx5IGAlcycpIiksIHJlYWxvbGQpOworCisJCWlmICh3aGF0ICYgY2ZvZl9pc25ldykgeworCQkJZnByaW50ZihzdGRlcnIsCisJCQkgICAgICAgIF8oIlxuIgorCQkJICAgICAgICAgICIgPT0+IEZpbGUgb24gc3lzdGVtIGNyZWF0ZWQgYnkgeW91IG9yIGJ5IGEgc2NyaXB0LlxuIgorCQkJICAgICAgICAgICIgPT0+IEZpbGUgYWxzbyBpbiBwYWNrYWdlIHByb3ZpZGVkIGJ5IHBhY2thZ2UgbWFpbnRhaW5lci5cbiIpKTsKKwkJfSBlbHNlIHsKKwkJCWZwcmludGYoc3RkZXJyLCAhdXNlcmVkaXRlZCA/CisJCQkgICAgICAgIF8oIlxuICAgICBOb3QgbW9kaWZpZWQgc2luY2UgaW5zdGFsbGF0aW9uLlxuIikgOgorCQkJICAgICAgICAhKHdoYXQgJiBjZm9mX3VzZXJybWQpID8KKwkJCSAgICAgICAgXygiXG4gPT0+IE1vZGlmaWVkIChieSB5b3Ugb3IgYnkgYSBzY3JpcHQpIHNpbmNlIGluc3RhbGxhdGlvbi5cbiIpIDoKKwkJCSAgICAgICAgXygiXG4gPT0+IERlbGV0ZWQgKGJ5IHlvdSBvciBieSBhIHNjcmlwdCkgc2luY2UgaW5zdGFsbGF0aW9uLlxuIikpOworCisJCQlmcHJpbnRmKHN0ZGVyciwgZGlzdGVkaXRlZCA/CisJCQkgICAgICAgIF8oIiA9PT4gUGFja2FnZSBkaXN0cmlidXRvciBoYXMgc2hpcHBlZCBhbiB1cGRhdGVkIHZlcnNpb24uXG4iKSA6CisJCQkgICAgICAgIF8oIiAgICAgVmVyc2lvbiBpbiBwYWNrYWdlIGlzIHRoZSBzYW1lIGFzIGF0IGxhc3QgaW5zdGFsbGF0aW9uLlxuIikpOworCQl9CisKKwkJLyogTm8gLS1mb3JjZS1jb25mZGVmIGJ1dCBhIGZvcmNpYmxlIHNpdHV0YXRpb24uICovCisJCS8qIFRPRE86IGNoZWNrIGlmIHRoaXMgY29uZGl0aW9uIGNhbiBub3QgYmUgc2ltcGxpZmllZCB0bworCQkgKiAgICAgICBqdXN0ICFmY19jb25mZl9kZWYgKi8KKwkJaWYgKCEoZmNfY29uZmZfZGVmICYmICh3aGF0ICYgKGNmb2ZfaW5zdGFsbCB8IGNmb2Zfa2VlcCkpKSkgeworCQkJaWYgKGZjX2NvbmZmX25ldykgeworCQkJCWZwcmludGYoc3RkZXJyLCBfKCIgPT0+IFVzaW5nIG5ldyBmaWxlIGFzIHlvdSByZXF1ZXN0ZWQuXG4iKSk7CisJCQkJY2MgPSAneSc7CisJCQkJYnJlYWs7CisJCQl9IGVsc2UgaWYgKGZjX2NvbmZmX29sZCkgeworCQkJCWZwcmludGYoc3RkZXJyLCBfKCIgPT0+IFVzaW5nIGN1cnJlbnQgb2xkIGZpbGUgYXMgeW91IHJlcXVlc3RlZC5cbiIpKTsKKwkJCQljYyA9ICduJzsKKwkJCQlicmVhazsKKwkJCX0KKwkJfQorCisJCS8qIEZvcmNlIHRoZSBkZWZhdWx0IGFjdGlvbiAoaWYgdGhlcmUgaXMgb25lLiAqLworCQlpZiAoZmNfY29uZmZfZGVmKSB7CisJCQlpZiAod2hhdCAmIGNmb2Zfa2VlcCkgeworCQkJCWZwcmludGYoc3RkZXJyLCBfKCIgPT0+IEtlZXBpbmcgb2xkIGNvbmZpZyBmaWxlIGFzIGRlZmF1bHQuXG4iKSk7CisJCQkJY2MgPSAnbic7CisJCQkJYnJlYWs7CisJCQl9IGVsc2UgaWYgKHdoYXQgJiBjZm9mX2luc3RhbGwpIHsKKwkJCQlmcHJpbnRmKHN0ZGVyciwgXygiID09PiBVc2luZyBuZXcgY29uZmlnIGZpbGUgYXMgZGVmYXVsdC5cbiIpKTsKKwkJCQljYyA9ICd5JzsKKwkJCQlicmVhazsKKwkJCX0KKwkJfQorCisJCWZwcmludGYoc3RkZXJyLAorCQkgICAgICAgIF8oIiAgIFdoYXQgd291bGQgeW91IGxpa2UgdG8gZG8gYWJvdXQgaXQgPyAgWW91ciBvcHRpb25zIGFyZTpcbiIKKwkJICAgICAgICAgICIgICAgWSBvciBJICA6IGluc3RhbGwgdGhlIHBhY2thZ2UgbWFpbnRhaW5lcidzIHZlcnNpb25cbiIKKwkJICAgICAgICAgICIgICAgTiBvciBPICA6IGtlZXAgeW91ciBjdXJyZW50bHktaW5zdGFsbGVkIHZlcnNpb25cbiIKKwkJICAgICAgICAgICIgICAgICBEICAgICA6IHNob3cgdGhlIGRpZmZlcmVuY2VzIGJldHdlZW4gdGhlIHZlcnNpb25zXG4iCisJCSAgICAgICAgICAiICAgICAgWiAgICAgOiBzdGFydCBhIHNoZWxsIHRvIGV4YW1pbmUgdGhlIHNpdHVhdGlvblxuIikpOworCisJCWlmICh3aGF0ICYgY2ZvZl9rZWVwKQorCQkJZnByaW50ZihzdGRlcnIsIF8oIiBUaGUgZGVmYXVsdCBhY3Rpb24gaXMgdG8ga2VlcCB5b3VyIGN1cnJlbnQgdmVyc2lvbi5cbiIpKTsKKwkJZWxzZSBpZiAod2hhdCAmIGNmb2ZfaW5zdGFsbCkKKwkJCWZwcmludGYoc3RkZXJyLCBfKCIgVGhlIGRlZmF1bHQgYWN0aW9uIGlzIHRvIGluc3RhbGwgdGhlIG5ldyB2ZXJzaW9uLlxuIikpOworCisJCXMgPSBwYXRoX2Jhc2VuYW1lKGNmZ2ZpbGUpOworCQlmcHJpbnRmKHN0ZGVyciwgIioqKiAlcyAoWS9JL04vTy9EL1opICVzID8gIiwKKwkJICAgICAgICBzLAorCQkgICAgICAgICh3aGF0ICYgY2ZvZl9rZWVwKSA/IF8oIltkZWZhdWx0PU5dIikgOgorCQkgICAgICAgICh3aGF0ICYgY2ZvZl9pbnN0YWxsKSA/IF8oIltkZWZhdWx0PVldIikgOgorCQkgICAgICAgIF8oIltubyBkZWZhdWx0XSIpKTsKKworCQlpZiAoZmVycm9yKHN0ZGVycikpCisJCQlvaHNoaXRlKF8oImVycm9yIHdyaXRpbmcgdG8gc3RkZXJyLCBkaXNjb3ZlcmVkIGJlZm9yZSBjb25mZmlsZSBwcm9tcHQiKSk7CisKKwkJY2MgPSAwOworCQl3aGlsZSAoKGMgPSBnZXRjaGFyKCkpICE9IEVPRiAmJiBjICE9ICdcbicpCisJCQlpZiAoIWlzc3BhY2UoYykgJiYgIWNjKQorCQkJCWNjID0gdG9sb3dlcihjKTsKKworCQlpZiAoYyA9PSBFT0YpIHsKKwkJCWlmIChmZXJyb3Ioc3RkaW4pKQorCQkJCW9oc2hpdGUoXygicmVhZCBlcnJvciBvbiBzdGRpbiBhdCBjb25mZmlsZSBwcm9tcHQiKSk7CisJCQlvaHNoaXQoXygiRU9GIG9uIHN0ZGluIGF0IGNvbmZmaWxlIHByb21wdCIpKTsKKwkJfQorCisJCWlmICghY2MpIHsKKwkJCWlmICh3aGF0ICYgY2ZvZl9rZWVwKSB7CisJCQkJY2MgPSAnbic7CisJCQkJYnJlYWs7CisJCQl9IGVsc2UgaWYgKHdoYXQgJiBjZm9mX2luc3RhbGwpIHsKKwkJCQljYyA9ICd5JzsKKwkJCQlicmVhazsKKwkJCX0KKwkJfQorCisJCS8qIEZJWE1FOiBTYXkgc29tZXRoaW5nIGlmIHNpbGVudGx5IG5vdCBpbnN0YWxsLiAqLworCQlpZiAoY2MgPT0gJ2QnKQorCQkJc2hvd2RpZmYocmVhbG9sZCwgcmVhbG5ldyk7CisKKwkJaWYgKGNjID09ICd6JykKKwkJCXNwYXduX3NoZWxsKHJlYWxvbGQsIHJlYWxuZXcpOworCX0gd2hpbGUgKCFzdHJjaHIoInlpbm8iLCBjYykpOworCisJbG9nX21lc3NhZ2UoImNvbmZmaWxlICVzICVzIiwgY2ZnZmlsZSwKKwkgICAgICAgICAgICAoY2MgPT0gJ2knIHx8IGNjID09ICd5JykgPyAiaW5zdGFsbCIgOiAia2VlcCIpOworCisJd2hhdCAmPSBjZm9mX3VzZXJybWQ7CisKKwlzd2l0Y2ggKGNjKSB7CisJY2FzZSAnaSc6CisJY2FzZSAneSc6CisJCXdoYXQgfD0gY2ZvZl9pbnN0YWxsIHwgY2ZvZl9iYWNrdXA7CisJCWJyZWFrOworCisJY2FzZSAnbic6CisJY2FzZSAnbyc6CisJCXdoYXQgfD0gY2ZvZl9rZWVwIHwgY2ZvZl9iYWNrdXA7CisJCWJyZWFrOworCisJZGVmYXVsdDoKKwkJaW50ZXJuZXJyKCJ1bmtub3duIHJlc3BvbnNlICclZCciLCBjYyk7CisJfQorCisJcmV0dXJuIHdoYXQ7Cit9CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NyYy9kZXBjb24uYyBiL2Rwa2ctMS4xNi4xLjEvc3JjL2RlcGNvbi5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjlmZGJjNGIKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3NyYy9kZXBjb24uYwpAQCAtMCwwICsxLDU2MiBAQAorLyoKKyAqIGRwa2cgLSBtYWluIHByb2dyYW0gZm9yIHBhY2thZ2UgbWFuYWdlbWVudAorICogZGVwY29uLmMgLSBkZXBlbmRlbmN5IGFuZCBjb25mbGljdCBjaGVja2luZworICoKKyAqIENvcHlyaWdodCDCqSAxOTk0LDE5OTUgSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuZ3JlZW5lbmQub3JnLnVrPgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaW5jbHVkZSA8Y29uZmlnLmg+CisjaW5jbHVkZSA8Y29tcGF0Lmg+CisKKyNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KKyNpbmNsdWRlIDxzeXMvc3RhdC5oPgorCisjaW5jbHVkZSA8YXNzZXJ0Lmg+CisjaW5jbHVkZSA8ZXJybm8uaD4KKyNpbmNsdWRlIDx1bmlzdGQuaD4KKworI2luY2x1ZGUgPGRwa2cvaTE4bi5oPgorI2luY2x1ZGUgPGRwa2cvZHBrZy5oPgorI2luY2x1ZGUgPGRwa2cvZHBrZy1kYi5oPgorCisjaW5jbHVkZSAiZmlsZXNkYi5oIgorI2luY2x1ZGUgImluZm9kYi5oIgorI2luY2x1ZGUgIm1haW4uaCIKKworc3RydWN0IGN5Y2xlc29mYXJsaW5rIHsKKyAgc3RydWN0IGN5Y2xlc29mYXJsaW5rICpwcmV2OworICBzdHJ1Y3QgcGtnaW5mbyAqcGtnOworICBzdHJ1Y3QgZGVwcG9zc2kgKnBvc3NpOworfTsKKworc3RhdGljIGJvb2wgZmluZGJyZWFrY3ljbGVyZWN1cnNpdmUoc3RydWN0IHBrZ2luZm8gKnBrZywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cnVjdCBjeWNsZXNvZmFybGluayAqc29mYXIpOworCitzdGF0aWMgYm9vbAorZm91bmRjeWNsZWJyb2tlbihzdHJ1Y3QgY3ljbGVzb2ZhcmxpbmsgKnRoaXNsaW5rLCBzdHJ1Y3QgY3ljbGVzb2ZhcmxpbmsgKnNvZmFyLAorICAgICAgICAgICAgICAgICBzdHJ1Y3QgcGtnaW5mbyAqZGVwZW5kZWRvbiwgc3RydWN0IGRlcHBvc3NpICpwb3NzaSkKK3sKKyAgc3RydWN0IGN5Y2xlc29mYXJsaW5rICpzb2w7CisKKyAgaWYoIXBvc3NpKQorICAgIHJldHVybiBmYWxzZTsKKworICAvKiBXZSdyZSBpbnZlc3RpZ2F0aW5nIHRoZSBkZXBlbmRlbmN5IOKAmHBvc3Np4oCZIHRvIHNlZSBpZiBpdAorICAgKiBpcyBwYXJ0IG9mIGEgbG9vcC4gVG8gdGhpcyBlbmQgd2UgbG9vayB0byBzZWUgd2hldGhlciB0aGUKKyAgICogZGVwZW5kZWQtb24gcGFja2FnZSBpcyBhbHJlYWR5IG9uZSBvZiB0aGUgcGFja2FnZXMgd2hvc2UKKyAgICogZGVwZW5kZW5jaWVzIHdlJ3JlIHNlYXJjaGluZy4gKi8KKyAgZm9yIChzb2wgPSBzb2Zhcjsgc29sICYmIHNvbC0+cGtnICE9IGRlcGVuZGVkb247IHNvbCA9IHNvbC0+cHJldik7CisKKyAgLyogSWYgbm90LCB3ZSBkbyBhIHJlY3Vyc2l2ZSBzZWFyY2ggb24gaXQgdG8gc2VlIHdoYXQgd2UgZmluZC4gKi8KKyAgaWYgKCFzb2wpCisgICAgcmV0dXJuIGZpbmRicmVha2N5Y2xlcmVjdXJzaXZlKGRlcGVuZGVkb24sIHRoaXNsaW5rKTsKKworICBkZWJ1ZyhkYmdfZGVwY29uLCJmb3VuZCBjeWNsZSIpOworICAvKiBSaWdodCwgd2Ugbm93IGJyZWFrIG9uZSBvZiB0aGUgbGlua3MuIFdlIHByZWZlciB0byBicmVhaworICAgKiBhIGRlcGVuZGVuY3kgb2YgYSBwYWNrYWdlIHdpdGhvdXQgYSBwb3N0aW5zdCBzY3JpcHQsIGFzCisgICAqIHRoaXMgaXMgYSBudWxsIG9wZXJhdGlvbi4gSWYgdGhpcyBpcyBub3QgcG9zc2libGUgd2UgYnJlYWsKKyAgICogdGhlIG90aGVyIGxpbmsgaW4gdGhlIHJlY3Vyc2l2ZSBjYWxsaW5nIHRyZWUgd2hpY2ggbWVudGlvbnMKKyAgICogdGhpcyBwYWNrYWdlICh0aGlzIGJlaW5nIHRoZSBmaXJzdCBwYWNrYWdlIGludm9sdmVkIGluIHRoZQorICAgKiBjeWNsZSkuIEl0IGRvZXNuJ3QgcGFydGljdWxhcmx5IG1hdHRlciB3aGljaCB3ZSBwaWNrLCBidXQgaWYKKyAgICogd2UgYnJlYWsgdGhlIGVhcmxpZXN0IGRlcGVuZGVuY3kgd2UgY2FtZSBhY3Jvc3Mgd2UgbWF5IGJlCisgICAqIGFibGUgdG8gZG8gc29tZXRoaW5nIHN0cmFpZ2h0IGF3YXkgd2hlbiBmaW5kYnJlYWtjeWNsZSByZXR1cm5zLiAqLworICBzb2Zhcj0gdGhpc2xpbms7CisgIGZvciAoc29sID0gc29mYXI7ICEoc29sICE9IHNvZmFyICYmIHNvbC0+cGtnID09IGRlcGVuZGVkb24pOyBzb2wgPSBzb2wtPnByZXYpIHsKKyAgICBpZiAoIXBrZ19pbmZvZGJfaGFzX2ZpbGUoc29sLT5wa2csIFBPU1RJTlNURklMRSkpCisgICAgICBicmVhazsKKyAgfQorCisgIC8qIE5vdyB3ZSBoYXZlIGVpdGhlciBhIHBhY2thZ2Ugd2l0aCBubyBwb3N0aW5zdCwgb3IgdGhlIG90aGVyCisgICAqIG9jY3VycmVuY2Ugb2YgdGhlIGN1cnJlbnQgcGFja2FnZSBpbiB0aGUgbGlzdC4gKi8KKyAgc29sLT5wb3NzaS0+Y3ljbGVicmVhayA9IHRydWU7CisKKyAgZGVidWcoZGJnX2RlcGNvbiwgImN5Y2xlIGJyb2tlbiBhdCAlcyAtPiAlcyIsCisgICAgICAgIHNvbC0+cG9zc2ktPnVwLT51cC0+bmFtZSwgc29sLT5wb3NzaS0+ZWQtPm5hbWUpOworCisgIHJldHVybiB0cnVlOworfQorCisvKioKKyAqIEN5Y2xlIGJyZWFraW5nIHdvcmtzIHJlY3Vyc2l2ZWx5IGRvd24gdGhlIHBhY2thZ2UgZGVwZW5kZW5jeSB0cmVlLgorICoKKyAqIOKAmHNvZmFy4oCZIGlzIHRoZSBsaXN0IG9mIHBhY2thZ2VzIHdlJ3ZlIGRlc2NlbmRlZCBkb3duIGFscmVhZHkgLSBpZiB3ZQorICogZW5jb3VudGVyIGFueSBvZiBpdHMgcGFja2FnZXMgYWdhaW4gaW4gYSBkZXBlbmRlbmN5IHdlIGhhdmUgZm91bmQgYSBjeWNsZS4KKyAqLworc3RhdGljIGJvb2wKK2ZpbmRicmVha2N5Y2xlcmVjdXJzaXZlKHN0cnVjdCBwa2dpbmZvICpwa2csIHN0cnVjdCBjeWNsZXNvZmFybGluayAqc29mYXIpCit7CisgIHN0cnVjdCBjeWNsZXNvZmFybGluayB0aGlzbGluaywgKnNvbDsKKyAgc3RydWN0IGRlcGVuZGVuY3kgKmRlcDsKKyAgc3RydWN0IGRlcHBvc3NpICpwb3NzaSwgKnByb3ZpZGVsaW5rOworICBzdHJ1Y3QgcGtnaW5mbyAqcHJvdmlkZXI7CisKKyAgaWYgKHBrZy0+Y2xpZW50ZGF0YS0+Y29sb3IgPT0gYmxhY2spCisgICAgcmV0dXJuIGZhbHNlOworICBwa2ctPmNsaWVudGRhdGEtPmNvbG9yID0gZ3JheTsKKworICBpZiAoZGVidWdfaGFzX2ZsYWcoZGJnX2RlcGNvbmRldGFpbCkpIHsKKyAgICBzdHJ1Y3QgdmFyYnVmIHN0cl9wa2dzID0gVkFSQlVGX0lOSVQ7CisKKyAgICBmb3IgKHNvbCA9IHNvZmFyOyBzb2w7IHNvbCA9IHNvbC0+cHJldikgeworICAgICAgdmFyYnVmX2FkZF9zdHIoJnN0cl9wa2dzLCAiIDwtICIpOworICAgICAgdmFyYnVmX2FkZF9zdHIoJnN0cl9wa2dzLCBzb2wtPnBrZy0+bmFtZSk7CisgICAgfQorICAgIHZhcmJ1Zl9lbmRfc3RyKCZzdHJfcGtncyk7CisgICAgZGVidWcoZGJnX2RlcGNvbmRldGFpbCwgImZpbmRicmVha2N5Y2xlcmVjdXJzaXZlICVzICVzIiwgcGtnLT5uYW1lLAorICAgICAgICAgIHN0cl9wa2dzLmJ1Zik7CisgICAgdmFyYnVmX2Rlc3Ryb3koJnN0cl9wa2dzKTsKKyAgfQorICB0aGlzbGluay5wa2c9IHBrZzsKKyAgdGhpc2xpbmsucHJldiA9IHNvZmFyOworICB0aGlzbGluay5wb3NzaSA9IE5VTEw7CisgIGZvciAoZGVwPSBwa2ctPmluc3RhbGxlZC5kZXBlbmRzOyBkZXA7IGRlcD0gZGVwLT5uZXh0KSB7CisgICAgaWYgKGRlcC0+dHlwZSAhPSBkZXBfZGVwZW5kcyAmJiBkZXAtPnR5cGUgIT0gZGVwX3ByZWRlcGVuZHMpIGNvbnRpbnVlOworICAgIGZvciAocG9zc2k9IGRlcC0+bGlzdDsgcG9zc2k7IHBvc3NpPSBwb3NzaS0+bmV4dCkgeworICAgICAgLyogRG9uJ3QgZmluZCB0aGUgc2FtZSBjeWNsZXMgYWdhaW4uICovCisgICAgICBpZiAocG9zc2ktPmN5Y2xlYnJlYWspIGNvbnRpbnVlOworICAgICAgdGhpc2xpbmsucG9zc2k9IHBvc3NpOworICAgICAgaWYgKGZvdW5kY3ljbGVicm9rZW4oJnRoaXNsaW5rLCBzb2ZhciwgcG9zc2ktPmVkLHBvc3NpKSkKKyAgICAgICAgcmV0dXJuIHRydWU7CisgICAgICAvKiBSaWdodCwgbm93IHdlIHRyeSBhbGwgdGhlIHByb3ZpZGVycyAuLi4gKi8KKyAgICAgIGZvciAocHJvdmlkZWxpbms9IHBvc3NpLT5lZC0+aW5zdGFsbGVkLmRlcGVuZGVkOworICAgICAgICAgICBwcm92aWRlbGluazsKKyAgICAgICAgICAgcHJvdmlkZWxpbmsgPSBwcm92aWRlbGluay0+cmV2X25leHQpIHsKKyAgICAgICAgaWYgKHByb3ZpZGVsaW5rLT51cC0+dHlwZSAhPSBkZXBfcHJvdmlkZXMpIGNvbnRpbnVlOworICAgICAgICBwcm92aWRlcj0gcHJvdmlkZWxpbmstPnVwLT51cDsKKyAgICAgICAgaWYgKHByb3ZpZGVyLT5jbGllbnRkYXRhLT5pc3RvYmUgPT0gaXRiX25vcm1hbCkgY29udGludWU7CisgICAgICAgIC8qIFdlIGRvbid0IGJyZWFrIHRoaW5ncyBhdCDigJhwcm92aWRlc+KAmSBsaW5rcywgc28g4oCYcG9zc2nigJkgaXMKKyAgICAgICAgICogc3RpbGwgdGhlIG9uZSB3ZSB1c2UuICovCisgICAgICAgIGlmIChmb3VuZGN5Y2xlYnJva2VuKCZ0aGlzbGluaywgc29mYXIsIHByb3ZpZGVyLCBwb3NzaSkpCisgICAgICAgICAgcmV0dXJuIHRydWU7CisgICAgICB9CisgICAgfQorICB9CisgIC8qIE5vcGUsIHdlIGRpZG4ndCBmaW5kIGEgY3ljbGUgdG8gYnJlYWsuICovCisgIHBrZy0+Y2xpZW50ZGF0YS0+Y29sb3IgPSBibGFjazsKKyAgcmV0dXJuIGZhbHNlOworfQorCitib29sCitmaW5kYnJlYWtjeWNsZShzdHJ1Y3QgcGtnaW5mbyAqcGtnKQoreworICBzdHJ1Y3QgcGtnaXRlcmF0b3IgKml0ZXI7CisgIHN0cnVjdCBwa2dpbmZvICp0cGtnOworCisgIC8qIENsZWFyIHRoZSB2aXNpdGVkIGZsYWcgb2YgYWxsIHBhY2thZ2VzIGJlZm9yZSB3ZSB0cmF2ZXJzZSB0aGVtLiAqLworICBpdGVyID0gcGtnX2RiX2l0ZXJfbmV3KCk7CisgIHdoaWxlICgodHBrZyA9IHBrZ19kYl9pdGVyX25leHQoaXRlcikpKSB7CisgICAgZW5zdXJlX3BhY2thZ2VfY2xpZW50ZGF0YSh0cGtnKTsKKyAgICB0cGtnLT5jbGllbnRkYXRhLT5jb2xvciA9IHdoaXRlOworICB9CisgIHBrZ19kYl9pdGVyX2ZyZWUoaXRlcik7CisKKyAgcmV0dXJuIGZpbmRicmVha2N5Y2xlcmVjdXJzaXZlKHBrZywgTlVMTCk7Cit9CisKK3ZvaWQgZGVzY3JpYmVkZXBjb24oc3RydWN0IHZhcmJ1ZiAqYWRkdG8sIHN0cnVjdCBkZXBlbmRlbmN5ICpkZXApIHsKKyAgY29uc3QgY2hhciAqZm10OworICBzdHJ1Y3QgdmFyYnVmIGRlcHN0ciA9IFZBUkJVRl9JTklUOworCisgIHN3aXRjaCAoZGVwLT50eXBlKSB7CisgIGNhc2UgZGVwX2RlcGVuZHM6CisgICAgZm10ID0gXygiJXMgZGVwZW5kcyBvbiAlcyIpOworICAgIGJyZWFrOworICBjYXNlIGRlcF9wcmVkZXBlbmRzOgorICAgIGZtdCA9IF8oIiVzIHByZS1kZXBlbmRzIG9uICVzIik7CisgICAgYnJlYWs7CisgIGNhc2UgZGVwX3JlY29tbWVuZHM6CisgICAgZm10ID0gXygiJXMgcmVjb21tZW5kcyAlcyIpOworICAgIGJyZWFrOworICBjYXNlIGRlcF9zdWdnZXN0czoKKyAgICBmbXQgPSBfKCIlcyBzdWdnZXN0cyAlcyIpOworICAgIGJyZWFrOworICBjYXNlIGRlcF9icmVha3M6CisgICAgZm10ID0gXygiJXMgYnJlYWtzICVzIik7CisgICAgYnJlYWs7CisgIGNhc2UgZGVwX2NvbmZsaWN0czoKKyAgICBmbXQgPSBfKCIlcyBjb25mbGljdHMgd2l0aCAlcyIpOworICAgIGJyZWFrOworICBjYXNlIGRlcF9lbmhhbmNlczoKKyAgICBmbXQgPSBfKCIlcyBlbmhhbmNlcyAlcyIpOworICAgIGJyZWFrOworICBkZWZhdWx0OgorICAgIGludGVybmVycigidW5rbm93biBkZXB0eXBlICclZCciLCBkZXAtPnR5cGUpOworICB9CisKKyAgdmFyYnVmZGVwZW5kZW5jeSgmZGVwc3RyLCBkZXApOworICB2YXJidWZfZW5kX3N0cigmZGVwc3RyKTsKKworICB2YXJidWZfcHJpbnRmKGFkZHRvLCBmbXQsIGRlcC0+dXAtPm5hbWUsIGRlcHN0ci5idWYpOworICB2YXJidWZfZGVzdHJveSgmZGVwc3RyKTsKK30KKworLyoKKyAqICp3aHlub3QgbXVzdCBhbHJlYWR5IGhhdmUgYmVlbiBpbml0aWFsaXplZDsgaXQgbmVlZCBub3QgYmUKKyAqIGVtcHR5IHRob3VnaCAtIGl0IHdpbGwgYmUgcmVzZXQgYmVmb3JlIHVzZS4KKyAqCisgKiBJZiBkZXBpc29rIHJldHVybnMgZmFsc2UgZm9yIOKAmG5vdCBPS+KAmSBpdCB3aWxsIGNvbnRhaW4gYSBkZXNjcmlwdGlvbiwKKyAqIG5ld2xpbmUtdGVybWluYXRlZCBCVVQgTk9UIE5VTC1URVJNSU5BVEVELCBvZiB0aGUgcmVhc29uLgorICoKKyAqIElmIGRlcGlzb2sgcmV0dXJucyB0cnVlIGl0IHdpbGwgY29udGFpbiBnYXJiYWdlLgorICogYWxsb3d1bmNvbmZpZ2Qgc2hvdWxkIGJlIG5vbi16ZXJvIGR1cmluZyB0aGUg4oCYUHJlLURlcGVuZHPigJkgY2hlY2tpbmcKKyAqIGJlZm9yZSBhIHBhY2thZ2UgaXMgdW5wYWNrZWQsIHdoZW4gaXQgaXMgc3VmZmljaWVudCBmb3IgdGhlIHBhY2thZ2UKKyAqIHRvIGJlIHVucGFja2VkIHByb3ZpZGVkIHRoYXQgYm90aCB0aGUgdW5wYWNrZWQgYW5kIHByZXZpb3VzbHktY29uZmlndXJlZAorICogdmVyc2lvbnMgYXJlIGFjY2VwdGFibGUuCisgKgorICogT24gZmFsc2UgcmV0dXJuICjigJhub3QgT0vigJkpLCAqY2FuZml4YnlyZW1vdmUgcmVmZXJzIHRvIGEgcGFja2FnZSB3aGljaAorICogaWYgcmVtb3ZlZCAoZGVwX2NvbmZsaWN0cykgb3IgZGVjb25maWd1cmVkIChkZXBfYnJlYWtzKSB3aWxsIGZpeAorICogdGhlIHByb2JsZW0uIENhbGxlciBtYXkgcGFzcyBOVUxMIGZvciBjYW5maXhieXJlbW92ZSBhbmQgbmVlZCBub3QKKyAqIGluaXRpYWxpemUgKmNhbmZpeGJ5cmVtb3ZlLgorICoKKyAqIE9uIGZhbHNlIHJldHVybiAo4oCYbm90IE9L4oCZKSwgKmNhbmZpeGJ5dHJpZ2F3IHJlZmVycyB0byBhIHBhY2thZ2Ugd2hpY2gKKyAqIGNhbiBmaXggdGhlIHByb2JsZW0gaWYgYWxsIHRoZSBwYWNrYWdlcyBsaXN0ZWQgaW4gVHJpZ2dlcnMtQXdhaXRlZCBoYXZlCisgKiB0aGVpciB0cmlnZ2VycyBwcm9jZXNzZWQuIENhbGxlciBtYXkgcGFzcyBOVUxMIGZvciBjYW5maXhieXRyaWdhdyBhbmQKKyAqIG5lZWQgbm90IGluaXRpYWxpemUgKmNhbmZpeGJ5dHJpZ2F3LgorICovCitib29sCitkZXBpc29rKHN0cnVjdCBkZXBlbmRlbmN5ICpkZXAsIHN0cnVjdCB2YXJidWYgKndoeW5vdCwKKyAgICAgICAgc3RydWN0IHBrZ2luZm8gKipjYW5maXhieXJlbW92ZSwgc3RydWN0IHBrZ2luZm8gKipjYW5maXhieXRyaWdhdywKKyAgICAgICAgYm9vbCBhbGxvd3VuY29uZmlnZCkKK3sKKyAgc3RydWN0IGRlcHBvc3NpICpwb3NzaTsKKyAgc3RydWN0IGRlcHBvc3NpICpwcm92aWRlcjsKKyAgaW50IG5jb25mbGljdHM7CisKKyAgLyogVXNlIHRoaXMgYnVmZmVyIHNvIHRoYXQgd2hlbiBpbnRlcm5hdGlvbmFsaXNhdGlvbiBjb21lcyBhbG9uZyB3ZQorICAgKiBkb24ndCBoYXZlIHRvIHJld3JpdGUgdGhlIGNvZGUgY29tcGxldGVseSwgb25seSByZWRvIHRoZSBzcHJpbnRmIHN0cmluZ3MKKyAgICogKGFzc3VtaW5nIHdlIGhhdmUgdGhlIGZhbmN5IGFyZ3VtZW50LW51bWJlci1zcGVjaWZpZXJzKS4KKyAgICogQWxsb3cgMjUweDMgZm9yIHBhY2thZ2UgbmFtZXMsIHZlcnNpb25zLCAmYywgKyAyNTAgZm9yIG91cnNlbHZlcy4gKi8KKyAgY2hhciBsaW5lYnVmWzEwMjRdOworCisgIGFzc2VydChkZXAtPnR5cGUgPT0gZGVwX2RlcGVuZHMgfHwgZGVwLT50eXBlID09IGRlcF9wcmVkZXBlbmRzIHx8CisJIGRlcC0+dHlwZSA9PSBkZXBfYnJlYWtzIHx8IGRlcC0+dHlwZSA9PSBkZXBfY29uZmxpY3RzIHx8CisJIGRlcC0+dHlwZSA9PSBkZXBfcmVjb21tZW5kcyB8fCBkZXAtPnR5cGUgPT0gZGVwX3N1Z2dlc3RzIHx8CisJIGRlcC0+dHlwZSA9PSBkZXBfZW5oYW5jZXMpOworCisgIGlmIChjYW5maXhieXJlbW92ZSkKKyAgICAqY2FuZml4YnlyZW1vdmUgPSBOVUxMOworICBpZiAoY2FuZml4Ynl0cmlnYXcpCisgICAgKmNhbmZpeGJ5dHJpZ2F3ID0gTlVMTDsKKworICAvKiBUaGUgZGVwZW5kZW5jeSBpcyBhbHdheXMgT0sgaWYgd2UncmUgdHJ5aW5nIHRvIHJlbW92ZSB0aGUgZGVwZW5kKmluZyoKKyAgICogcGFja2FnZS4gKi8KKyAgc3dpdGNoIChkZXAtPnVwLT5jbGllbnRkYXRhLT5pc3RvYmUpIHsKKyAgY2FzZSBpdGJfcmVtb3ZlOiBjYXNlIGl0Yl9kZWNvbmZpZ3VyZToKKyAgICByZXR1cm4gdHJ1ZTsKKyAgY2FzZSBpdGJfbm9ybWFsOgorICAgIC8qIE9ubHkgaW5zdGFsbGVkIHBhY2thZ2VzIGNhbiBiZSBtYWtlIGRlcGVuZGVuY3kgcHJvYmxlbXMuICovCisgICAgc3dpdGNoIChkZXAtPnVwLT5zdGF0dXMpIHsKKyAgICBjYXNlIHN0YXRfaW5zdGFsbGVkOgorICAgIGNhc2Ugc3RhdF90cmlnZ2Vyc3BlbmRpbmc6CisgICAgY2FzZSBzdGF0X3RyaWdnZXJzYXdhaXRlZDoKKyAgICAgIGJyZWFrOworICAgIGNhc2Ugc3RhdF9ub3RpbnN0YWxsZWQ6IGNhc2Ugc3RhdF9jb25maWdmaWxlczogY2FzZSBzdGF0X2hhbGZpbnN0YWxsZWQ6CisgICAgY2FzZSBzdGF0X2hhbGZjb25maWd1cmVkOiBjYXNlIHN0YXRfdW5wYWNrZWQ6CisgICAgICByZXR1cm4gdHJ1ZTsKKyAgICBkZWZhdWx0OgorICAgICAgaW50ZXJuZXJyKCJ1bmtub3duIHN0YXR1cyBkZXBlbmRpbmcgJyVkJyIsIGRlcC0+dXAtPnN0YXR1cyk7CisgICAgfQorICAgIGJyZWFrOworICBjYXNlIGl0Yl9pbnN0YWxsbmV3OiBjYXNlIGl0Yl9wcmVpbnN0YWxsOgorICAgIGJyZWFrOworICBkZWZhdWx0OgorICAgIGludGVybmVycigidW5rbm93biBpc3RvYmUgZGVwZW5kaW5nICclZCciLCBkZXAtPnVwLT5jbGllbnRkYXRhLT5pc3RvYmUpOworICB9CisKKyAgLyogRGVzY3JpYmUgdGhlIGRlcGVuZGVuY3ksIGluIGNhc2Ugd2UgaGF2ZSB0byBtb2FuIGFib3V0IGl0LiAqLworICB2YXJidWZfcmVzZXQod2h5bm90KTsKKyAgdmFyYnVmX2FkZF9jaGFyKHdoeW5vdCwgJyAnKTsKKyAgZGVzY3JpYmVkZXBjb24od2h5bm90LCBkZXApOworICB2YXJidWZfYWRkX2NoYXIod2h5bm90LCAnXG4nKTsKKworICAvKiBUT0RPOiBDaGVjayBkZXBfZW5oYW5jZXMgYXMgd2VsbC4gKi8KKyAgaWYgKGRlcC0+dHlwZSA9PSBkZXBfZGVwZW5kcyB8fCBkZXAtPnR5cGUgPT0gZGVwX3ByZWRlcGVuZHMgfHwKKyAgICAgIGRlcC0+dHlwZSA9PSBkZXBfcmVjb21tZW5kcyB8fCBkZXAtPnR5cGUgPT0gZGVwX3N1Z2dlc3RzICkgeworICAgIC8qIEdvIHRocm91Z2ggdGhlIGFsdGVybmF0aXZlcy4gQXMgc29vbiBhcyB3ZSBmaW5kIG9uZSB0aGF0CisgICAgICogd2UgbGlrZSwgd2UgcmV0dXJuIOKAmHRydWXigJkgc3RyYWlnaHQgYXdheS4gT3RoZXJ3aXNlLCB3aGVuIHdlIGdldCB0bworICAgICAqIHRoZSBlbmQgd2UnbGwgaGF2ZSBhY2N1bXVsYXRlZCBhbGwgdGhlIHJlYXNvbnMgaW4gd2h5bm90IGFuZAorICAgICAqIGNhbiByZXR1cm4g4oCYZmFsc2XigJkuICovCisKKyAgICBmb3IgKHBvc3NpPSBkZXAtPmxpc3Q7IHBvc3NpOyBwb3NzaT0gcG9zc2ktPm5leHQpIHsKKyAgICAgIHN3aXRjaCAocG9zc2ktPmVkLT5jbGllbnRkYXRhLT5pc3RvYmUpIHsKKyAgICAgIGNhc2UgaXRiX3JlbW92ZToKKyAgICAgICAgc3ByaW50ZihsaW5lYnVmLF8oIiAgJS4yNTBzIGlzIHRvIGJlIHJlbW92ZWQuXG4iKSxwb3NzaS0+ZWQtPm5hbWUpOworICAgICAgICBicmVhazsKKyAgICAgIGNhc2UgaXRiX2RlY29uZmlndXJlOgorICAgICAgICBzcHJpbnRmKGxpbmVidWYsXygiICAlLjI1MHMgaXMgdG8gYmUgZGVjb25maWd1cmVkLlxuIikscG9zc2ktPmVkLT5uYW1lKTsKKyAgICAgICAgYnJlYWs7CisgICAgICBjYXNlIGl0Yl9pbnN0YWxsbmV3OgorICAgICAgICBpZiAodmVyc2lvbnNhdGlzZmllZCgmcG9zc2ktPmVkLT5hdmFpbGFibGUsIHBvc3NpKSkKKyAgICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICAgICAgc3ByaW50ZihsaW5lYnVmLF8oIiAgJS4yNTBzIGlzIHRvIGJlIGluc3RhbGxlZCwgYnV0IGlzIHZlcnNpb24gJS4yNTBzLlxuIiksCisgICAgICAgICAgICAgICAgcG9zc2ktPmVkLT5uYW1lLAorICAgICAgICAgICAgICAgIHZlcnNpb25kZXNjcmliZSgmcG9zc2ktPmVkLT5hdmFpbGFibGUudmVyc2lvbix2ZGV3X25vbmFtYmlnKSk7CisgICAgICAgIGJyZWFrOworICAgICAgY2FzZSBpdGJfbm9ybWFsOiBjYXNlIGl0Yl9wcmVpbnN0YWxsOgorICAgICAgICBzd2l0Y2ggKHBvc3NpLT5lZC0+c3RhdHVzKSB7CisgICAgICAgIGNhc2Ugc3RhdF9pbnN0YWxsZWQ6CisgICAgICAgIGNhc2Ugc3RhdF90cmlnZ2Vyc3BlbmRpbmc6CisgICAgICAgICAgaWYgKHZlcnNpb25zYXRpc2ZpZWQoJnBvc3NpLT5lZC0+aW5zdGFsbGVkLCBwb3NzaSkpCisgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICAgICAgICBzcHJpbnRmKGxpbmVidWYsXygiICAlLjI1MHMgaXMgaW5zdGFsbGVkLCBidXQgaXMgdmVyc2lvbiAlLjI1MHMuXG4iKSwKKyAgICAgICAgICAgICAgICAgIHBvc3NpLT5lZC0+bmFtZSwKKyAgICAgICAgICAgICAgICAgIHZlcnNpb25kZXNjcmliZSgmcG9zc2ktPmVkLT5pbnN0YWxsZWQudmVyc2lvbix2ZGV3X25vbmFtYmlnKSk7CisgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2Ugc3RhdF9ub3RpbnN0YWxsZWQ6CisgICAgICAgICAgLyogRG9uJ3Qgc2F5IGFueXRoaW5nIGFib3V0IHRoaXMgeWV0IC0gaXQgbWlnaHQgYmUgYSB2aXJ0dWFsIHBhY2thZ2UuCisgICAgICAgICAgICogTGF0ZXIgb24sIGlmIG5vdGhpbmcgaGFzIHB1dCBhbnl0aGluZyBpbiBsaW5lYnVmLCB3ZSBrbm93IHRoYXQgaXQKKyAgICAgICAgICAgKiBpc24ndCBhbmQgaXNzdWUgYSBkaWFnbm9zdGljIHRoZW4uICovCisgICAgICAgICAgKmxpbmVidWYgPSAnXDAnOworICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIHN0YXRfdHJpZ2dlcnNhd2FpdGVkOgorICAgICAgICAgICAgaWYgKGNhbmZpeGJ5dHJpZ2F3ICYmIHZlcnNpb25zYXRpc2ZpZWQoJnBvc3NpLT5lZC0+aW5zdGFsbGVkLCBwb3NzaSkpCisgICAgICAgICAgICAgICpjYW5maXhieXRyaWdhdyA9IHBvc3NpLT5lZDsKKyAgICAgICAgICAgIC8qIEZhbGwgdGhyb3VnaCB0byBoYXZlIGEgY2hhbmNlIHRvIHJldHVybiBPSyBkdWUgdG8KKyAgICAgICAgICAgICAqIGFsbG93dW5jb25maWdkIGFuZCB0byBmaWxsIHRoZSBleHBsYW5hdGlvbiAqLworICAgICAgICBjYXNlIHN0YXRfdW5wYWNrZWQ6CisgICAgICAgIGNhc2Ugc3RhdF9oYWxmY29uZmlndXJlZDoKKyAgICAgICAgICBpZiAoYWxsb3d1bmNvbmZpZ2QpIHsKKyAgICAgICAgICAgIGlmICghaW5mb3JtYXRpdmV2ZXJzaW9uKCZwb3NzaS0+ZWQtPmNvbmZpZ3ZlcnNpb24pKSB7CisgICAgICAgICAgICAgIHNwcmludGYobGluZWJ1ZiwgXygiICAlLjI1MHMgaXMgdW5wYWNrZWQsIGJ1dCBoYXMgbmV2ZXIgYmVlbiBjb25maWd1cmVkLlxuIiksCisgICAgICAgICAgICAgICAgICAgICAgcG9zc2ktPmVkLT5uYW1lKTsKKyAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICB9IGVsc2UgaWYgKCF2ZXJzaW9uc2F0aXNmaWVkKCZwb3NzaS0+ZWQtPmluc3RhbGxlZCwgcG9zc2kpKSB7CisgICAgICAgICAgICAgIHNwcmludGYobGluZWJ1ZiwgXygiICAlLjI1MHMgaXMgdW5wYWNrZWQsIGJ1dCBpcyB2ZXJzaW9uICUuMjUwcy5cbiIpLAorICAgICAgICAgICAgICAgICAgICAgIHBvc3NpLT5lZC0+bmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICB2ZXJzaW9uZGVzY3JpYmUoJnBvc3NpLT5lZC0+aW5zdGFsbGVkLnZlcnNpb24sIHZkZXdfbm9uYW1iaWcpKTsKKyAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICB9IGVsc2UgaWYgKCF2ZXJzaW9uc2F0aXNmaWVkMygmcG9zc2ktPmVkLT5jb25maWd2ZXJzaW9uLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnBvc3NpLT52ZXJzaW9uLHBvc3NpLT52ZXJyZWwpKSB7CisgICAgICAgICAgICAgIHNwcmludGYobGluZWJ1ZiwgXygiICAlLjI1MHMgbGF0ZXN0IGNvbmZpZ3VyZWQgdmVyc2lvbiBpcyAlLjI1MHMuXG4iKSwKKyAgICAgICAgICAgICAgICAgICAgICBwb3NzaS0+ZWQtPm5hbWUsCisgICAgICAgICAgICAgICAgICAgICAgdmVyc2lvbmRlc2NyaWJlKCZwb3NzaS0+ZWQtPmNvbmZpZ3ZlcnNpb24sdmRld19ub25hbWJpZykpOworICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgIHJldHVybiB0cnVlOworICAgICAgICAgICAgfQorICAgICAgICAgIH0KKyAgICAgICAgICAvKiBGYWxsIHRocm91Z2guICovCisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgc3ByaW50ZihsaW5lYnVmLCBfKCIgICUuMjUwcyBpcyAlcy5cbiIpLAorICAgICAgICAgICAgICAgICAgcG9zc2ktPmVkLT5uYW1lLCBnZXR0ZXh0KHN0YXR1c3N0cmluZ3NbcG9zc2ktPmVkLT5zdGF0dXNdKSk7CisgICAgICAgICAgYnJlYWs7CisgICAgICAgIH0KKyAgICAgICAgYnJlYWs7CisgICAgICBkZWZhdWx0OgorICAgICAgICBpbnRlcm5lcnIoInVua25vd24gaXN0b2JlIGRlcGVuZGVkICclZCciLCBwb3NzaS0+ZWQtPmNsaWVudGRhdGEtPmlzdG9iZSk7CisgICAgICB9CisgICAgICB2YXJidWZfYWRkX3N0cih3aHlub3QsIGxpbmVidWYpOworCisgICAgICAvKiBJZiB0aGVyZSB3YXMgbm8gdmVyc2lvbiBzcGVjaWZpZWQgd2UgdHJ5IGxvb2tpbmcgZm9yIFByb3ZpZGVycy4gKi8KKyAgICAgIGlmIChwb3NzaS0+dmVycmVsID09IGR2cl9ub25lKSB7CisgICAgICAgIC8qIFNlZSBpZiB0aGUgcGFja2FnZSB3ZSdyZSBhYm91dCB0byBpbnN0YWxsIFByb3ZpZGVzIGl0LiAqLworICAgICAgICBmb3IgKHByb3ZpZGVyPSBwb3NzaS0+ZWQtPmF2YWlsYWJsZS5kZXBlbmRlZDsKKyAgICAgICAgICAgICBwcm92aWRlcjsKKyAgICAgICAgICAgICBwcm92aWRlciA9IHByb3ZpZGVyLT5yZXZfbmV4dCkgeworICAgICAgICAgIGlmIChwcm92aWRlci0+dXAtPnR5cGUgIT0gZGVwX3Byb3ZpZGVzKSBjb250aW51ZTsKKyAgICAgICAgICBpZiAocHJvdmlkZXItPnVwLT51cC0+Y2xpZW50ZGF0YS0+aXN0b2JlID09IGl0Yl9pbnN0YWxsbmV3KQorICAgICAgICAgICAgcmV0dXJuIHRydWU7CisgICAgICAgIH0KKworICAgICAgICAvKiBOb3cgbG9vayBhdCB0aGUgcGFja2FnZXMgYWxyZWFkeSBvbiB0aGUgc3lzdGVtLiAqLworICAgICAgICBmb3IgKHByb3ZpZGVyPSBwb3NzaS0+ZWQtPmluc3RhbGxlZC5kZXBlbmRlZDsKKyAgICAgICAgICAgICBwcm92aWRlcjsKKyAgICAgICAgICAgICBwcm92aWRlciA9IHByb3ZpZGVyLT5yZXZfbmV4dCkgeworICAgICAgICAgIGlmIChwcm92aWRlci0+dXAtPnR5cGUgIT0gZGVwX3Byb3ZpZGVzKSBjb250aW51ZTsKKworICAgICAgICAgIHN3aXRjaCAocHJvdmlkZXItPnVwLT51cC0+Y2xpZW50ZGF0YS0+aXN0b2JlKSB7CisgICAgICAgICAgY2FzZSBpdGJfaW5zdGFsbG5ldzoKKyAgICAgICAgICAgIC8qIERvbid0IHBheSBhbnkgYXR0ZW50aW9uIHRvIHRoZSBQcm92aWRlcyBmaWVsZCBvZiB0aGUKKyAgICAgICAgICAgICAqIGN1cnJlbnRseS1pbnN0YWxsZWQgdmVyc2lvbiBvZiB0aGUgcGFja2FnZSB3ZSdyZSB0cnlpbmcKKyAgICAgICAgICAgICAqIHRvIGluc3RhbGwuIFdlIGRlYWx0IHdpdGggdGhhdCBieSB1c2luZyB0aGUgYXZhaWxhYmxlCisgICAgICAgICAgICAgKiBpbmZvcm1hdGlvbiBhYm92ZS4gKi8KKyAgICAgICAgICAgIGNvbnRpbnVlOworICAgICAgICAgIGNhc2UgaXRiX3JlbW92ZToKKyAgICAgICAgICAgIHNwcmludGYobGluZWJ1ZiwgXygiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGJ1dCBpcyB0byBiZSByZW1vdmVkLlxuIiksCisgICAgICAgICAgICAgICAgICAgIHByb3ZpZGVyLT51cC0+dXAtPm5hbWUsIHBvc3NpLT5lZC0+bmFtZSk7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICBjYXNlIGl0Yl9kZWNvbmZpZ3VyZToKKyAgICAgICAgICAgIHNwcmludGYobGluZWJ1ZiwgXygiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGJ1dCBpcyB0byBiZSBkZWNvbmZpZ3VyZWQuXG4iKSwKKyAgICAgICAgICAgICAgICAgICAgcHJvdmlkZXItPnVwLT51cC0+bmFtZSwgcG9zc2ktPmVkLT5uYW1lKTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgIGNhc2UgaXRiX25vcm1hbDogY2FzZSBpdGJfcHJlaW5zdGFsbDoKKyAgICAgICAgICAgIGlmIChwcm92aWRlci0+dXAtPnVwLT5zdGF0dXMgPT0gc3RhdF9pbnN0YWxsZWQgfHwKKyAgICAgICAgICAgICAgICBwcm92aWRlci0+dXAtPnVwLT5zdGF0dXMgPT0gc3RhdF90cmlnZ2Vyc3BlbmRpbmcpCisgICAgICAgICAgICAgIHJldHVybiB0cnVlOworICAgICAgICAgICAgaWYgKHByb3ZpZGVyLT51cC0+dXAtPnN0YXR1cyA9PSBzdGF0X3RyaWdnZXJzYXdhaXRlZCkKKyAgICAgICAgICAgICAgKmNhbmZpeGJ5dHJpZ2F3ID0gcHJvdmlkZXItPnVwLT51cDsKKyAgICAgICAgICAgIHNwcmludGYobGluZWJ1ZiwgXygiICAlLjI1MHMgcHJvdmlkZXMgJS4yNTBzIGJ1dCBpcyAlcy5cbiIpLAorICAgICAgICAgICAgICAgICAgICBwcm92aWRlci0+dXAtPnVwLT5uYW1lLCBwb3NzaS0+ZWQtPm5hbWUsCisgICAgICAgICAgICAgICAgICAgIGdldHRleHQoc3RhdHVzc3RyaW5nc1twcm92aWRlci0+dXAtPnVwLT5zdGF0dXNdKSk7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAgaW50ZXJuZXJyKCJ1bmtub3duIGlzdG9iZSBwcm92aWRlciAnJWQnIiwKKyAgICAgICAgICAgICAgICAgICAgICBwcm92aWRlci0+dXAtPnVwLT5jbGllbnRkYXRhLT5pc3RvYmUpOworICAgICAgICAgIH0KKyAgICAgICAgICB2YXJidWZfYWRkX3N0cih3aHlub3QsIGxpbmVidWYpOworICAgICAgICB9CisKKyAgICAgICAgaWYgKCEqbGluZWJ1ZikgeworICAgICAgICAgIC8qIElmIHRoZSBwYWNrYWdlIHdhc24ndCBpbnN0YWxsZWQgYXQgYWxsLCBhbmQgd2UgaGF2ZW4ndCBzYWlkCisgICAgICAgICAgICogeWV0IHdoeSB0aGlzIGlzbid0IHNhdGlzZmllZCwgd2Ugc2hvdWxkIHNheSBzbyBub3cuICovCisgICAgICAgICAgc3ByaW50ZihsaW5lYnVmLCBfKCIgICUuMjUwcyBpcyBub3QgaW5zdGFsbGVkLlxuIiksIHBvc3NpLT5lZC0+bmFtZSk7CisgICAgICAgICAgdmFyYnVmX2FkZF9zdHIod2h5bm90LCBsaW5lYnVmKTsKKyAgICAgICAgfQorICAgICAgfQorICAgIH0KKworICAgIHJldHVybiBmYWxzZTsKKyAgfSBlbHNlIHsKKyAgICAvKiBJdCdzIGNvbmZsaWN0cyBvciBicmVha3MuIFRoZXJlJ3Mgb25seSBvbmUgbWFpbiBhbHRlcm5hdGl2ZSwKKyAgICAgKiBidXQgd2UgYWxzbyBoYXZlIHRvIGNvbnNpZGVyIFByb3ZpZGVycy4gV2UgcmV0dXJuIOKAmGZhbHNl4oCZIGFzIHNvb24KKyAgICAgKiBhcyB3ZSBmaW5kIHNvbWV0aGluZyB0aGF0IG1hdGNoZXMgdGhlIGNvbmZsaWN0LCBhbmQgb25seSBkZXNjcmliZQorICAgICAqIGl0IHRoZW4uIElmIHdlIGdldCB0byB0aGUgZW5kIHdpdGhvdXQgZmluZGluZyBhbnl0aGluZyB3ZSByZXR1cm4KKyAgICAgKiDigJh0cnVl4oCZLiAqLworCisgICAgcG9zc2k9IGRlcC0+bGlzdDsKKyAgICBuY29uZmxpY3RzPSAwOworCisgICAgaWYgKHBvc3NpLT5lZCAhPSBwb3NzaS0+dXAtPnVwKSB7CisgICAgICAvKiBJZiB0aGUgcGFja2FnZSBjb25mbGljdHMgd2l0aCBvciBicmVha3MgaXRzZWxmIGl0IG11c3QgbWVhbgorICAgICAgICogb3RoZXIgcGFja2FnZXMgd2hpY2ggcHJvdmlkZSB0aGUgc2FtZSB2aXJ0dWFsIG5hbWUuIFdlCisgICAgICAgKiB0aGVyZWZvcmUgZG9uJ3QgbG9vayBhdCB0aGUgcmVhbCBwYWNrYWdlIGFuZCBnbyBvbiB0byB0aGUKKyAgICAgICAqIHZpcnR1YWwgb25lcy4gKi8KKworICAgICAgc3dpdGNoIChwb3NzaS0+ZWQtPmNsaWVudGRhdGEtPmlzdG9iZSkgeworICAgICAgY2FzZSBpdGJfcmVtb3ZlOgorICAgICAgICBicmVhazsKKyAgICAgIGNhc2UgaXRiX2luc3RhbGxuZXc6CisgICAgICAgIGlmICghdmVyc2lvbnNhdGlzZmllZCgmcG9zc2ktPmVkLT5hdmFpbGFibGUsIHBvc3NpKSkgYnJlYWs7CisgICAgICAgIHNwcmludGYobGluZWJ1ZiwgXygiICAlLjI1MHMgKHZlcnNpb24gJS4yNTBzKSBpcyB0byBiZSBpbnN0YWxsZWQuXG4iKSwKKyAgICAgICAgICAgICAgICBwb3NzaS0+ZWQtPm5hbWUsCisgICAgICAgICAgICAgICAgdmVyc2lvbmRlc2NyaWJlKCZwb3NzaS0+ZWQtPmF2YWlsYWJsZS52ZXJzaW9uLHZkZXdfbm9uYW1iaWcpKTsKKyAgICAgICAgdmFyYnVmX2FkZF9zdHIod2h5bm90LCBsaW5lYnVmKTsKKyAgICAgICAgaWYgKCFjYW5maXhieXJlbW92ZSkKKyAgICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgICAgIG5jb25mbGljdHMrKzsKKyAgICAgICAgKmNhbmZpeGJ5cmVtb3ZlPSBwb3NzaS0+ZWQ7CisgICAgICAgIGJyZWFrOworICAgICAgY2FzZSBpdGJfZGVjb25maWd1cmU6CisgICAgICAgIGlmIChkZXAtPnR5cGUgPT0gZGVwX2JyZWFrcykKKyAgICAgICAgICBicmVhazsgLyogQWxyZWFkeSBkZWNvbmZpZ3VyaW5nIHRoaXMuICovCisgICAgICAgIC8qIEZhbGwgdGhyb3VnaC4gKi8KKyAgICAgIGNhc2UgaXRiX25vcm1hbDogY2FzZSBpdGJfcHJlaW5zdGFsbDoKKyAgICAgICAgc3dpdGNoIChwb3NzaS0+ZWQtPnN0YXR1cykgeworICAgICAgICBjYXNlIHN0YXRfbm90aW5zdGFsbGVkOiBjYXNlIHN0YXRfY29uZmlnZmlsZXM6CisgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2Ugc3RhdF9oYWxmaW5zdGFsbGVkOiBjYXNlIHN0YXRfdW5wYWNrZWQ6CisgICAgICAgIGNhc2Ugc3RhdF9oYWxmY29uZmlndXJlZDoKKyAgICAgICAgICBpZiAoZGVwLT50eXBlID09IGRlcF9icmVha3MpCisgICAgICAgICAgICBicmVhazsgLyogTm8gcHJvYmxlbS4gKi8KKyAgICAgICAgY2FzZSBzdGF0X2luc3RhbGxlZDoKKyAgICAgICAgY2FzZSBzdGF0X3RyaWdnZXJzcGVuZGluZzoKKyAgICAgICAgY2FzZSBzdGF0X3RyaWdnZXJzYXdhaXRlZDoKKyAgICAgICAgICBpZiAoIXZlcnNpb25zYXRpc2ZpZWQoJnBvc3NpLT5lZC0+aW5zdGFsbGVkLCBwb3NzaSkpIGJyZWFrOworICAgICAgICAgIHNwcmludGYobGluZWJ1ZiwgXygiICAlLjI1MHMgKHZlcnNpb24gJS4yNTBzKSBpcyBwcmVzZW50IGFuZCAlcy5cbiIpLAorICAgICAgICAgICAgICAgICAgcG9zc2ktPmVkLT5uYW1lLAorICAgICAgICAgICAgICAgICAgdmVyc2lvbmRlc2NyaWJlKCZwb3NzaS0+ZWQtPmluc3RhbGxlZC52ZXJzaW9uLHZkZXdfbm9uYW1iaWcpLAorICAgICAgICAgICAgICAgICAgZ2V0dGV4dChzdGF0dXNzdHJpbmdzW3Bvc3NpLT5lZC0+c3RhdHVzXSkpOworICAgICAgICAgIHZhcmJ1Zl9hZGRfc3RyKHdoeW5vdCwgbGluZWJ1Zik7CisgICAgICAgICAgaWYgKCFjYW5maXhieXJlbW92ZSkKKyAgICAgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICAgICAgICBuY29uZmxpY3RzKys7CisgICAgICAgICAgKmNhbmZpeGJ5cmVtb3ZlPSBwb3NzaS0+ZWQ7CisgICAgICAgIH0KKyAgICAgICAgYnJlYWs7CisgICAgICBkZWZhdWx0OgorICAgICAgICBpbnRlcm5lcnIoInVua25vd24gaXN0b2JlIGNvbmZsaWN0ICclZCciLAorICAgICAgICAgICAgICAgICAgcG9zc2ktPmVkLT5jbGllbnRkYXRhLT5pc3RvYmUpOworICAgICAgfQorICAgIH0KKworICAgIC8qIElmIHRoZXJlIHdhcyBubyB2ZXJzaW9uIHNwZWNpZmllZCB3ZSB0cnkgbG9va2luZyBmb3IgUHJvdmlkZXJzLiAqLworICAgIGlmIChwb3NzaS0+dmVycmVsID09IGR2cl9ub25lKSB7CisgICAgICAvKiBTZWUgaWYgdGhlIHBhY2thZ2Ugd2UncmUgYWJvdXQgdG8gaW5zdGFsbCBQcm92aWRlcyBpdC4gKi8KKyAgICAgIGZvciAocHJvdmlkZXI9IHBvc3NpLT5lZC0+YXZhaWxhYmxlLmRlcGVuZGVkOworICAgICAgICAgICBwcm92aWRlcjsKKyAgICAgICAgICAgcHJvdmlkZXIgPSBwcm92aWRlci0+cmV2X25leHQpIHsKKyAgICAgICAgaWYgKHByb3ZpZGVyLT51cC0+dHlwZSAhPSBkZXBfcHJvdmlkZXMpIGNvbnRpbnVlOworICAgICAgICBpZiAocHJvdmlkZXItPnVwLT51cC0+Y2xpZW50ZGF0YS0+aXN0b2JlICE9IGl0Yl9pbnN0YWxsbmV3KSBjb250aW51ZTsKKyAgICAgICAgaWYgKHByb3ZpZGVyLT51cC0+dXAgPT0gZGVwLT51cCkKKyAgICAgICAgICBjb250aW51ZTsgLyogQ29uZmxpY3RzIGFuZCBwcm92aWRlcyB0aGUgc2FtZS4gKi8KKyAgICAgICAgc3ByaW50ZihsaW5lYnVmLCBfKCIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYW5kIGlzIHRvIGJlIGluc3RhbGxlZC5cbiIpLAorICAgICAgICAgICAgICAgIHByb3ZpZGVyLT51cC0+dXAtPm5hbWUsIHBvc3NpLT5lZC0+bmFtZSk7CisgICAgICAgIHZhcmJ1Zl9hZGRfc3RyKHdoeW5vdCwgbGluZWJ1Zik7CisgICAgICAgIC8qIFdlIGNhbid0IHJlbW92ZSB0aGUgb25lIHdlJ3JlIGFib3V0IHRvIGluc3RhbGw6ICovCisgICAgICAgIGlmIChjYW5maXhieXJlbW92ZSkKKyAgICAgICAgICAqY2FuZml4YnlyZW1vdmUgPSBOVUxMOworICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgICB9CisKKyAgICAgIC8qIE5vdyBsb29rIGF0IHRoZSBwYWNrYWdlcyBhbHJlYWR5IG9uIHRoZSBzeXN0ZW0uICovCisgICAgICBmb3IgKHByb3ZpZGVyPSBwb3NzaS0+ZWQtPmluc3RhbGxlZC5kZXBlbmRlZDsKKyAgICAgICAgICAgcHJvdmlkZXI7CisgICAgICAgICAgIHByb3ZpZGVyID0gcHJvdmlkZXItPnJldl9uZXh0KSB7CisgICAgICAgIGlmIChwcm92aWRlci0+dXAtPnR5cGUgIT0gZGVwX3Byb3ZpZGVzKSBjb250aW51ZTsKKworICAgICAgICBpZiAocHJvdmlkZXItPnVwLT51cCA9PSBkZXAtPnVwKQorICAgICAgICAgIGNvbnRpbnVlOyAvKiBDb25mbGljdHMgYW5kIHByb3ZpZGVzIHRoZSBzYW1lLiAqLworCisgICAgICAgIHN3aXRjaCAocHJvdmlkZXItPnVwLT51cC0+Y2xpZW50ZGF0YS0+aXN0b2JlKSB7CisgICAgICAgIGNhc2UgaXRiX2luc3RhbGxuZXc6CisgICAgICAgICAgLyogRG9uJ3QgcGF5IGFueSBhdHRlbnRpb24gdG8gdGhlIFByb3ZpZGVzIGZpZWxkIG9mIHRoZQorICAgICAgICAgICAqIGN1cnJlbnRseS1pbnN0YWxsZWQgdmVyc2lvbiBvZiB0aGUgcGFja2FnZSB3ZSdyZSB0cnlpbmcKKyAgICAgICAgICAgKiB0byBpbnN0YWxsLiBXZSBkZWFsdCB3aXRoIHRoYXQgcGFja2FnZSBieSB1c2luZyB0aGUKKyAgICAgICAgICAgKiBhdmFpbGFibGUgaW5mb3JtYXRpb24gYWJvdmUuICovCisgICAgICAgICAgY29udGludWU7CisgICAgICAgIGNhc2UgaXRiX3JlbW92ZToKKyAgICAgICAgICBjb250aW51ZTsKKyAgICAgICAgY2FzZSBpdGJfZGVjb25maWd1cmU6CisgICAgICAgICAgaWYgKGRlcC0+dHlwZSA9PSBkZXBfYnJlYWtzKQorICAgICAgICAgICAgY29udGludWU7IC8qIEFscmVhZHkgZGVjb25maWd1cmluZy4gKi8KKyAgICAgICAgY2FzZSBpdGJfbm9ybWFsOiBjYXNlIGl0Yl9wcmVpbnN0YWxsOgorICAgICAgICAgIHN3aXRjaCAocHJvdmlkZXItPnVwLT51cC0+c3RhdHVzKSB7CisgICAgICAgICAgY2FzZSBzdGF0X25vdGluc3RhbGxlZDogY2FzZSBzdGF0X2NvbmZpZ2ZpbGVzOgorICAgICAgICAgICAgY29udGludWU7CisgICAgICAgICAgY2FzZSBzdGF0X2hhbGZpbnN0YWxsZWQ6IGNhc2Ugc3RhdF91bnBhY2tlZDoKKyAgICAgICAgICBjYXNlIHN0YXRfaGFsZmNvbmZpZ3VyZWQ6CisgICAgICAgICAgICBpZiAoZGVwLT50eXBlID09IGRlcF9icmVha3MpCisgICAgICAgICAgICAgIGJyZWFrOyAvKiBObyBwcm9ibGVtLiAqLworICAgICAgICAgIGNhc2Ugc3RhdF9pbnN0YWxsZWQ6CisgICAgICAgICAgY2FzZSBzdGF0X3RyaWdnZXJzcGVuZGluZzoKKyAgICAgICAgICBjYXNlIHN0YXRfdHJpZ2dlcnNhd2FpdGVkOgorICAgICAgICAgICAgc3ByaW50ZihsaW5lYnVmLAorICAgICAgICAgICAgICAgICAgICBfKCIgICUuMjUwcyBwcm92aWRlcyAlLjI1MHMgYW5kIGlzIHByZXNlbnQgYW5kICVzLlxuIiksCisgICAgICAgICAgICAgICAgICAgIHByb3ZpZGVyLT51cC0+dXAtPm5hbWUsIHBvc3NpLT5lZC0+bmFtZSwKKyAgICAgICAgICAgICAgICAgICAgZ2V0dGV4dChzdGF0dXNzdHJpbmdzW3Byb3ZpZGVyLT51cC0+dXAtPnN0YXR1c10pKTsKKyAgICAgICAgICAgIHZhcmJ1Zl9hZGRfc3RyKHdoeW5vdCwgbGluZWJ1Zik7CisgICAgICAgICAgICBpZiAoIWNhbmZpeGJ5cmVtb3ZlKQorICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgICAgICAgICBuY29uZmxpY3RzKys7CisgICAgICAgICAgICAqY2FuZml4YnlyZW1vdmU9IHByb3ZpZGVyLT51cC0+dXA7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICB9CisgICAgICAgICAgYnJlYWs7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgaW50ZXJuZXJyKCJ1bmtub3duIGlzdG9iZSBjb25mbGljdCBwcm92aWRlciAnJWQnIiwKKyAgICAgICAgICAgICAgICAgICAgcHJvdmlkZXItPnVwLT51cC0+Y2xpZW50ZGF0YS0+aXN0b2JlKTsKKyAgICAgICAgfQorICAgICAgfQorICAgIH0KKworICAgIGlmICghbmNvbmZsaWN0cykKKyAgICAgIHJldHVybiB0cnVlOworICAgIGlmIChuY29uZmxpY3RzID4gMSkKKyAgICAgICpjYW5maXhieXJlbW92ZSA9IE5VTEw7CisgICAgcmV0dXJuIGZhbHNlOworCisgIH0gLyogaWYgKGRlcGVuZGVuY3kpIHsuLi59IGVsc2Ugey4uLn0gKi8KK30KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc3JjL2RpdmVydGNtZC5jIGIvZHBrZy0xLjE2LjEuMS9zcmMvZGl2ZXJ0Y21kLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTM3NjI0ZQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc3JjL2RpdmVydGNtZC5jCkBAIC0wLDAgKzEsNzI0IEBACisvKgorICogZHBrZy1kaXZlcnQgLSBvdmVycmlkZSBhIHBhY2thZ2UncyB2ZXJzaW9uIG9mIGEgZmlsZQorICoKKyAqIENvcHlyaWdodCDCqSAxOTk1IElhbiBKYWNrc29uCisgKiBDb3B5cmlnaHQgwqkgMjAwMCwgMjAwMSBXaWNoZXJ0IEFra2VybWFuCisgKiBDb3B5cmlnaHQgwqkgMjAxMCBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CisgKgorICogVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaW5jbHVkZSA8Y29uZmlnLmg+CisjaW5jbHVkZSA8Y29tcGF0Lmg+CisKKyNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KKyNpbmNsdWRlIDxzeXMvc3RhdC5oPgorCisjaW5jbHVkZSA8ZXJybm8uaD4KKyNpZiBIQVZFX0xPQ0FMRV9ICisjaW5jbHVkZSA8bG9jYWxlLmg+CisjZW5kaWYKKyNpbmNsdWRlIDxmY250bC5oPgorI2luY2x1ZGUgPGZubWF0Y2guaD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlIDx1bmlzdGQuaD4KKworI2luY2x1ZGUgPGRwa2cvaTE4bi5oPgorI2luY2x1ZGUgPGRwa2cvZHBrZy5oPgorI2luY2x1ZGUgPGRwa2cvZHBrZy1kYi5oPgorI2luY2x1ZGUgPGRwa2cvZmlsZS5oPgorI2luY2x1ZGUgPGRwa2cvZ2xvYi5oPgorI2luY2x1ZGUgPGRwa2cvYnVmZmVyLmg+CisjaW5jbHVkZSA8ZHBrZy9vcHRpb25zLmg+CisKKyNpbmNsdWRlICJmaWxlc2RiLmgiCisKKworc3RhdGljIGNvbnN0IGNoYXIgcHJpbnRmb3JoZWxwW10gPSBOXygKKyJVc2UgLS1oZWxwIGZvciBoZWxwIGFib3V0IGRpdmVydGluZyBmaWxlcy4iKTsKKworc3RhdGljIGNvbnN0IGNoYXIgKmFkbWluZGlyOworCitzdGF0aWMgYm9vbCBvcHRfcGtnbmFtZV9tYXRjaF9hbnkgPSB0cnVlOworc3RhdGljIGNvbnN0IGNoYXIgKm9wdF9wa2duYW1lID0gTlVMTDsKK3N0YXRpYyBjb25zdCBjaGFyICpvcHRfZGl2ZXJ0dG8gPSBOVUxMOworCitzdGF0aWMgaW50IG9wdF92ZXJib3NlID0gMTsKK3N0YXRpYyBpbnQgb3B0X3Rlc3QgPSAwOworc3RhdGljIGludCBvcHRfcmVuYW1lID0gMDsKKworCitzdGF0aWMgdm9pZAorcHJpbnR2ZXJzaW9uKGNvbnN0IHN0cnVjdCBjbWRpbmZvICpjaXAsIGNvbnN0IGNoYXIgKnZhbHVlKQoreworCXByaW50ZihfKCJEZWJpYW4gJXMgdmVyc2lvbiAlcy5cbiIpLCBkcGtnX2dldF9wcm9nbmFtZSgpLAorCSAgICAgICBEUEtHX1ZFUlNJT05fQVJDSCk7CisKKwlwcmludGYoXygKKyJDb3B5cmlnaHQgKEMpIDE5OTUgSWFuIEphY2tzb24uXG4iCisiQ29weXJpZ2h0IChDKSAyMDAwLDIwMDEgV2ljaGVydCBBa2tlcm1hbi5cbiIKKyJDb3B5cmlnaHQgKEMpIDIwMTAgR3VpbGxlbSBKb3Zlci5cbiIpKTsKKworCXByaW50ZihfKAorIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgb3JcbiIKKyJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIpKTsKKworCW1fb3V0cHV0KHN0ZG91dCwgXygiPHN0YW5kYXJkIG91dHB1dD4iKSk7CisKKwlleGl0KDApOworfQorCitzdGF0aWMgdm9pZAordXNhZ2UoY29uc3Qgc3RydWN0IGNtZGluZm8gKmNpcCwgY29uc3QgY2hhciAqdmFsdWUpCit7CisJcHJpbnRmKF8oCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIDxjb21tYW5kPlxuIgorIlxuIiksIGRwa2dfZ2V0X3Byb2duYW1lKCkpOworCisJcHJpbnRmKF8oCisiQ29tbWFuZHM6XG4iCisiICBbLS1hZGRdIDxmaWxlPiAgICAgICAgICAgYWRkIGEgZGl2ZXJzaW9uLlxuIgorIiAgLS1yZW1vdmUgPGZpbGU+ICAgICAgICAgIHJlbW92ZSB0aGUgZGl2ZXJzaW9uLlxuIgorIiAgLS1saXN0IFs8Z2xvYi1wYXR0ZXJuPl0gIHNob3cgZmlsZSBkaXZlcnNpb25zLlxuIgorIiAgLS1saXN0cGFja2FnZSA8ZmlsZT4gICAgIHNob3cgd2hhdCBwYWNrYWdlIGRpdmVydHMgdGhlIGZpbGUuXG4iCisiICAtLXRydWVuYW1lIDxmaWxlPiAgICAgICAgcmV0dXJuIHRoZSBkaXZlcnRlZCBmaWxlLlxuIgorIlxuIikpOworCisJcHJpbnRmKF8oCisiT3B0aW9uczpcbiIKKyIgIC0tcGFja2FnZSA8cGFja2FnZT4gICAgICBuYW1lIG9mIHRoZSBwYWNrYWdlIHdob3NlIGNvcHkgb2YgPGZpbGU+IHdpbGwgbm90XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiZSBkaXZlcnRlZC5cbiIKKyIgIC0tbG9jYWwgICAgICAgICAgICAgICAgICBhbGwgcGFja2FnZXMnIHZlcnNpb25zIGFyZSBkaXZlcnRlZC5cbiIKKyIgIC0tZGl2ZXJ0IDxkaXZlcnQtdG8+ICAgICB0aGUgbmFtZSB1c2VkIGJ5IG90aGVyIHBhY2thZ2VzJyB2ZXJzaW9ucy5cbiIKKyIgIC0tcmVuYW1lICAgICAgICAgICAgICAgICBhY3R1YWxseSBtb3ZlIHRoZSBmaWxlIGFzaWRlIChvciBiYWNrKS5cbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICBzZXQgdGhlIGRpcmVjdG9yeSB3aXRoIHRoZSBkaXZlcnNpb25zIGZpbGUuXG4iCisiICAtLXRlc3QgICAgICAgICAgICAgICAgICAgZG9uJ3QgZG8gYW55dGhpbmcsIGp1c3QgZGVtb25zdHJhdGUuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgcXVpZXQgb3BlcmF0aW9uLCBtaW5pbWFsIG91dHB1dC5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCisiXG4iKSk7CisKKwlwcmludGYoXygKKyJXaGVuIGFkZGluZywgZGVmYXVsdCBpcyAtLWxvY2FsIGFuZCAtLWRpdmVydCA8b3JpZ2luYWw+LmRpc3RyaWIuXG4iCisiV2hlbiByZW1vdmluZywgLS1wYWNrYWdlIG9yIC0tbG9jYWwgYW5kIC0tZGl2ZXJ0IG11c3QgbWF0Y2ggaWYgc3BlY2lmaWVkLlxuIgorIlBhY2thZ2UgcHJlaW5zdC9wb3N0cm0gc2NyaXB0cyBzaG91bGQgYWx3YXlzIHNwZWNpZnkgLS1wYWNrYWdlIGFuZCAtLWRpdmVydC5cbiIpKTsKKworCW1fb3V0cHV0KHN0ZG91dCwgXygiPHN0YW5kYXJkIG91dHB1dD4iKSk7CisKKwlleGl0KDApOworfQorCitzdHJ1Y3QgZmlsZSB7CisJY29uc3QgY2hhciAqbmFtZTsKKwllbnVtIHsKKwkJZmlsZV9zdGF0X2ludmFsaWQsCisJCWZpbGVfc3RhdF92YWxpZCwKKwkJZmlsZV9zdGF0X25vZmlsZSwKKwl9IHN0YXRfc3RhdGU7CisJc3RydWN0IHN0YXQgc3RhdDsKK307CisKK3N0YXRpYyB2b2lkCitmaWxlX2luaXQoc3RydWN0IGZpbGUgKmYsIGNvbnN0IGNoYXIgKmZpbGVuYW1lKQoreworCWYtPm5hbWUgPSBmaWxlbmFtZTsKKwlmLT5zdGF0X3N0YXRlID0gZmlsZV9zdGF0X2ludmFsaWQ7Cit9CisKK3N0YXRpYyB2b2lkCitmaWxlX3N0YXQoc3RydWN0IGZpbGUgKmYpCit7CisJaW50IHJldDsKKworCWlmIChmLT5zdGF0X3N0YXRlICE9IGZpbGVfc3RhdF9pbnZhbGlkKQorCQlyZXR1cm47CisKKwlyZXQgPSBsc3RhdChmLT5uYW1lLCAmZi0+c3RhdCk7CisJaWYgKHJldCAmJiBlcnJubyAhPSBFTk9FTlQpCisJCW9oc2hpdGUoXygiY2Fubm90IHN0YXQgZmlsZSAnJXMnIiksIGYtPm5hbWUpOworCisJaWYgKHJldCA9PSAwKQorCQlmLT5zdGF0X3N0YXRlID0gZmlsZV9zdGF0X3ZhbGlkOworCWVsc2UKKwkJZi0+c3RhdF9zdGF0ZSA9IGZpbGVfc3RhdF9ub2ZpbGU7Cit9CisKK3N0YXRpYyB2b2lkCitjaGVja193cml0YWJsZV9kaXIoc3RydWN0IGZpbGUgKmYpCit7CisJY2hhciAqdG1wbmFtZTsKKwlpbnQgdG1wZmQ7CisKKwltX2FzcHJpbnRmKCZ0bXBuYW1lLCAiJXMlcyIsIGYtPm5hbWUsICIuZHBrZy1kaXZlcnQudG1wIik7CisKKwl0bXBmZCA9IGNyZWF0KHRtcG5hbWUsIDA2MDApOworCWlmICh0bXBmZCA8IDApCisJCW9oc2hpdGUoXygiZXJyb3IgY2hlY2tpbmcgJyVzJyIpLCBmLT5uYW1lKTsKKwljbG9zZSh0bXBmZCk7CisJdW5saW5rKHRtcG5hbWUpOworCisJZnJlZSh0bXBuYW1lKTsKK30KKworc3RhdGljIGJvb2wKK2NoZWNrX3JlbmFtZShzdHJ1Y3QgZmlsZSAqc3JjLCBzdHJ1Y3QgZmlsZSAqZHN0KQoreworCWZpbGVfc3RhdChzcmMpOworCisJLyogSWYgdGhlIHNvdXJjZSBmaWxlIGlzIG5vdCBwcmVzZW50IGFuZCB3ZSBhcmUgbm90IGdvaW5nIHRvIGRvCisJICogdGhlIHJlbmFtZSBhbnl3YXkgdGhlcmUncyBubyBwb2ludCBpbiBjaGVja2luZyBhbnkgZnVydGhlci4gKi8KKwlpZiAoc3JjLT5zdGF0X3N0YXRlID09IGZpbGVfc3RhdF9ub2ZpbGUpCisJCXJldHVybiBmYWxzZTsKKworCWZpbGVfc3RhdChkc3QpOworCisJLyoKKwkgKiBVbmZvcnR1bmF0ZWx5IHdlIGhhdmUgdG8gY2hlY2sgZm9yIHdyaXRlIGFjY2VzcyBpbiBib3RoIHBsYWNlcywKKwkgKiBqdXN0IGhhdmluZyArdyBpcyBub3QgZW5vdWdoLCBzaW5jZSBwZW9wbGUgZG8gbW91bnQgdGhpbmdzIFJPLAorCSAqIGFuZCB3ZSBuZWVkIHRvIGZhaWwgYmVmb3JlIHdlIHN0YXJ0IG11Y2tpbmcgYXJvdW5kIHdpdGggdGhpbmdzLgorCSAqIFNvIHdlIG9wZW4gYSBmaWxlIHdpdGggdGhlIHNhbWUgbmFtZSBhcyB0aGUgZGl2ZXJzaW9ucyBidXQgd2l0aAorCSAqIGFuIGV4dGVuc2lvbiB0aGF0IChob3BlZnVsbHkpIHdvbnQgb3ZlcndyaXRlIGFueXRoaW5nLiBJZiBpdAorCSAqIHN1Y2NlZWRzLCB3ZSBhc3N1bWUgYSB3cml0YWJsZSBmaWxlc3lzdGVtLgorCSAqLworCisJY2hlY2tfd3JpdGFibGVfZGlyKHNyYyk7CisJY2hlY2tfd3JpdGFibGVfZGlyKGRzdCk7CisKKwlpZiAoc3JjLT5zdGF0X3N0YXRlID09IGZpbGVfc3RhdF92YWxpZCAmJgorCSAgICBkc3QtPnN0YXRfc3RhdGUgPT0gZmlsZV9zdGF0X3ZhbGlkICYmCisJICAgICEoc3JjLT5zdGF0LnN0X2RldiA9PSBkc3QtPnN0YXQuc3RfZGV2ICYmCisJICAgICAgc3JjLT5zdGF0LnN0X2lubyA9PSBkc3QtPnN0YXQuc3RfaW5vKSkKKwkJb2hzaGl0KF8oInJlbmFtZSBpbnZvbHZlcyBvdmVyd3JpdGluZyBgJXMnIHdpdGhcbiIKKwkJICAgICAgICAgIiAgZGlmZmVyZW50IGZpbGUgYCVzJywgbm90IGFsbG93ZWQiKSwKKwkJICAgICAgICBkc3QtPm5hbWUsIHNyYy0+bmFtZSk7CisKKwlyZXR1cm4gdHJ1ZTsKK30KKworc3RhdGljIHZvaWQKK2ZpbGVfY29weShjb25zdCBjaGFyICpzcmMsIGNvbnN0IGNoYXIgKnJlYWxkc3QpCit7CisJY2hhciAqZHN0OworCWludCBzcmNmZCwgZHN0ZmQ7CisKKwlzcmNmZCA9IG9wZW4oc3JjLCBPX1JET05MWSk7CisJaWYgKHNyY2ZkIDwgMCkKKwkJb2hzaGl0ZShfKCJ1bmFibGUgdG8gb3BlbiBmaWxlICclcyciKSwgc3JjKTsKKworCW1fYXNwcmludGYoJmRzdCwgIiVzJXMiLCByZWFsZHN0LCAiLmRwa2ctZGl2ZXJ0LnRtcCIpOworCWRzdGZkID0gY3JlYXQoZHN0LCAwNjAwKTsKKwlpZiAoZHN0ZmQgPCAwKQorCQlvaHNoaXRlKF8oInVuYWJsZSB0byBjcmVhdGUgZmlsZSAnJXMnIiksIGRzdCk7CisKKwkvKiBGSVhNRTogbGVhdmVzIGEgZGFuZ2xpbmcgZGVzdGluYXRpb24gZmlsZSBvbiBlcnJvci4gKi8KKworCWZkX2ZkX2NvcHkoc3JjZmQsIGRzdGZkLCAtMSwgXygiZmlsZSBjb3B5IikpOworCisJY2xvc2Uoc3JjZmQpOworCisJaWYgKGZzeW5jKGRzdGZkKSkKKwkJb2hzaGl0ZShfKCJ1bmFibGUgdG8gc3luYyBmaWxlICclcyciKSwgZHN0KTsKKwlpZiAoY2xvc2UoZHN0ZmQpKQorCQlvaHNoaXRlKF8oInVuYWJsZSB0byBjbG9zZSBmaWxlICclcyciKSwgZHN0KTsKKworCWZpbGVfY29weV9wZXJtcyhzcmMsIGRzdCk7CisKKwlpZiAocmVuYW1lKGRzdCwgcmVhbGRzdCkgIT0gMCkKKwkJb2hzaGl0ZShfKCJjYW5ub3QgcmVuYW1lICclcycgdG8gJyVzJyIpLCBkc3QsIHJlYWxkc3QpOworCisJZnJlZShkc3QpOworfQorCitzdGF0aWMgdm9pZAorZmlsZV9yZW5hbWUoc3RydWN0IGZpbGUgKnNyYywgc3RydWN0IGZpbGUgKmRzdCkKK3sKKwlpZiAoc3JjLT5zdGF0X3N0YXRlID09IGZpbGVfc3RhdF9ub2ZpbGUpCisJCXJldHVybjsKKworCWlmIChkc3QtPnN0YXRfc3RhdGUgPT0gZmlsZV9zdGF0X3ZhbGlkKSB7CisJCWlmICh1bmxpbmsoc3JjLT5uYW1lKSkKKwkJCW9oc2hpdGUoXygicmVuYW1lOiByZW1vdmUgZHVwbGljYXRlIG9sZCBsaW5rICclcyciKSwKKwkJCSAgICAgICAgc3JjLT5uYW1lKTsKKwl9IGVsc2UgeworCQlpZiAocmVuYW1lKHNyYy0+bmFtZSwgZHN0LT5uYW1lKSA9PSAwKQorCQkJcmV0dXJuOworCisJCS8qIElmIGEgcmVuYW1lIGRpZG4ndCB3b3JrIHRyeSBtb3ZpbmcgdGhlIGZpbGUgaW5zdGVhZC4gKi8KKwkJZmlsZV9jb3B5KHNyYy0+bmFtZSwgZHN0LT5uYW1lKTsKKworCQlpZiAodW5saW5rKHNyYy0+bmFtZSkpCisJCQlvaHNoaXRlKF8oInVuYWJsZSB0byByZW1vdmUgY29waWVkIHNvdXJjZSBmaWxlICclcyciKSwKKwkJCSAgICAgICAgc3JjLT5uYW1lKTsKKwl9Cit9CisKK3N0YXRpYyBjb25zdCBjaGFyICoKK2RpdmVyc2lvbl9wa2dfbmFtZShzdHJ1Y3QgZGl2ZXJzaW9uICpkKQoreworCWlmIChkLT5wa2cgPT0gTlVMTCkKKwkJcmV0dXJuICI6IjsKKwllbHNlCisJCXJldHVybiBkLT5wa2ctPm5hbWU7Cit9CisKK3N0YXRpYyBjb25zdCBjaGFyICoKK3ZhcmJ1Zl9kaXZlcnNpb24oc3RydWN0IHZhcmJ1ZiAqc3RyLCBjb25zdCBjaGFyICpwa2duYW1lLAorICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpmaWxlbmFtZSwgY29uc3QgY2hhciAqZGl2ZXJ0dG8pCit7CisJdmFyYnVmX3Jlc2V0KHN0cik7CisKKwlpZiAocGtnbmFtZSA9PSBOVUxMKSB7CisJCWlmIChkaXZlcnR0byA9PSBOVUxMKQorCQkJdmFyYnVmX3ByaW50ZihzdHIsIF8oImxvY2FsIGRpdmVyc2lvbiBvZiAlcyIpLCBmaWxlbmFtZSk7CisJCWVsc2UKKwkJCXZhcmJ1Zl9wcmludGYoc3RyLCBfKCJsb2NhbCBkaXZlcnNpb24gb2YgJXMgdG8gJXMiKSwKKwkJCSAgICAgICAgICAgICAgZmlsZW5hbWUsIGRpdmVydHRvKTsKKwl9IGVsc2UgeworCQlpZiAoZGl2ZXJ0dG8gPT0gTlVMTCkKKwkJCXZhcmJ1Zl9wcmludGYoc3RyLCBfKCJkaXZlcnNpb24gb2YgJXMgYnkgJXMiKSwKKwkJCSAgICAgICAgICAgICAgZmlsZW5hbWUsIHBrZ25hbWUpOworCQllbHNlCisJCQl2YXJidWZfcHJpbnRmKHN0ciwgXygiZGl2ZXJzaW9uIG9mICVzIHRvICVzIGJ5ICVzIiksCisJCQkgICAgICAgICAgICAgIGZpbGVuYW1lLCBkaXZlcnR0bywgcGtnbmFtZSk7CisJfQorCisJcmV0dXJuIHN0ci0+YnVmOworfQorCitzdGF0aWMgY29uc3QgY2hhciAqCitkaXZlcnNpb25fY3VycmVudChjb25zdCBjaGFyICpmaWxlbmFtZSkKK3sKKwlzdGF0aWMgc3RydWN0IHZhcmJ1ZiBzdHIgPSBWQVJCVUZfSU5JVDsKKworCWlmIChvcHRfcGtnbmFtZV9tYXRjaF9hbnkpIHsKKwkJdmFyYnVmX3Jlc2V0KCZzdHIpOworCisJCWlmIChvcHRfZGl2ZXJ0dG8gPT0gTlVMTCkKKwkJCXZhcmJ1Zl9wcmludGYoJnN0ciwgXygiYW55IGRpdmVyc2lvbiBvZiAlcyIpLCBmaWxlbmFtZSk7CisJCWVsc2UKKwkJCXZhcmJ1Zl9wcmludGYoJnN0ciwgXygiYW55IGRpdmVyc2lvbiBvZiAlcyB0byAlcyIpLAorCQkJICAgICAgICAgICAgICBmaWxlbmFtZSwgb3B0X2RpdmVydHRvKTsKKwl9IGVsc2UgeworCQlyZXR1cm4gdmFyYnVmX2RpdmVyc2lvbigmc3RyLCBvcHRfcGtnbmFtZSwgZmlsZW5hbWUsIG9wdF9kaXZlcnR0byk7CisJfQorCisJcmV0dXJuIHN0ci5idWY7Cit9CisKK3N0YXRpYyBjb25zdCBjaGFyICoKK2RpdmVyc2lvbl9kZXNjcmliZShzdHJ1Y3QgZGl2ZXJzaW9uICpkKQoreworCXN0YXRpYyBzdHJ1Y3QgdmFyYnVmIHN0ciA9IFZBUkJVRl9JTklUOworCWNvbnN0IGNoYXIgKnBrZ25hbWU7CisJY29uc3QgY2hhciAqbmFtZV9mcm9tLCAqbmFtZV90bzsKKworCWlmIChkLT5jYW1lZnJvbSkgeworCQluYW1lX2Zyb20gPSBkLT5jYW1lZnJvbS0+bmFtZTsKKwkJbmFtZV90byA9IGQtPmNhbWVmcm9tLT5kaXZlcnQtPnVzZWluc3RlYWQtPm5hbWU7CisJfSBlbHNlIHsKKwkJbmFtZV9mcm9tID0gZC0+dXNlaW5zdGVhZC0+ZGl2ZXJ0LT5jYW1lZnJvbS0+bmFtZTsKKwkJbmFtZV90byA9IGQtPnVzZWluc3RlYWQtPm5hbWU7CisJfQorCisJaWYgKGQtPnBrZyA9PSBOVUxMKQorCQlwa2duYW1lID0gTlVMTDsKKwllbHNlCisJCXBrZ25hbWUgPSBkLT5wa2ctPm5hbWU7CisKKwlyZXR1cm4gdmFyYnVmX2RpdmVyc2lvbigmc3RyLCBwa2duYW1lLCBuYW1lX2Zyb20sIG5hbWVfdG8pOworfQorCitzdGF0aWMgdm9pZAorZGl2ZXJ0ZGJfd3JpdGUodm9pZCkKK3sKKwljaGFyICpkYm5hbWUsICpkYm5hbWVfbmV3LCAqZGJuYW1lX29sZDsKKwlGSUxFICpkYmZpbGU7CisJc3RydWN0IGZpbGVpdGVyYXRvciAqaXRlcjsKKwlzdHJ1Y3QgZmlsZW5hbWVub2RlICpuYW1lbm9kZTsKKworCWRibmFtZSA9IGRwa2dfZGJfZ2V0X3BhdGgoRElWRVJTSU9OU0ZJTEUpOworCW1fYXNwcmludGYoJmRibmFtZV9uZXcsICIlcyVzIiwgZGJuYW1lLCBORVdEQkVYVCk7CisJbV9hc3ByaW50ZigmZGJuYW1lX29sZCwgIiVzJXMiLCBkYm5hbWUsIE9MRERCRVhUKTsKKworCWRiZmlsZSA9IGZvcGVuKGRibmFtZV9uZXcsICJ3Iik7CisJaWYgKCFkYmZpbGUpCisJCW9oc2hpdGUoXygiY2Fubm90IGNyZWF0ZSBuZXcgJXMgZmlsZSIpLCBESVZFUlNJT05TRklMRSk7CisJY2htb2QoZGJuYW1lX25ldywgMDY0NCk7CisKKwlpdGVyID0gaXRlcmZpbGVzdGFydCgpOworCXdoaWxlICgobmFtZW5vZGUgPSBpdGVyZmlsZW5leHQoaXRlcikpKSB7CisJCXN0cnVjdCBkaXZlcnNpb24gKmQgPSBuYW1lbm9kZS0+ZGl2ZXJ0OworCisJCWlmIChkID09IE5VTEwgfHwgZC0+dXNlaW5zdGVhZCA9PSBOVUxMKQorCQkJY29udGludWU7CisKKwkJZnByaW50ZihkYmZpbGUsICIlc1xuJXNcbiVzXG4iLAorCQkgICAgICAgIGQtPnVzZWluc3RlYWQtPmRpdmVydC0+Y2FtZWZyb20tPm5hbWUsCisJCSAgICAgICAgZC0+dXNlaW5zdGVhZC0+bmFtZSwKKwkJICAgICAgICBkaXZlcnNpb25fcGtnX25hbWUoZCkpOworCX0KKwlpdGVyZmlsZWVuZChpdGVyKTsKKworCWlmIChmZmx1c2goZGJmaWxlKSkKKwkJb2hzaGl0ZShfKCJ1bmFibGUgdG8gZmx1c2ggZmlsZSAnJXMnIiksIGRibmFtZV9uZXcpOworCWlmIChmc3luYyhmaWxlbm8oZGJmaWxlKSkpCisJCW9oc2hpdGUoXygidW5hYmxlIHRvIHN5bmMgZmlsZSAnJXMnIiksIGRibmFtZV9uZXcpOworCWlmIChmY2xvc2UoZGJmaWxlKSkKKwkJb2hzaGl0ZShfKCJ1bmFibGUgdG8gY2xvc2UgZmlsZSAnJXMnIiksIGRibmFtZV9uZXcpOworCisJaWYgKHVubGluayhkYm5hbWVfb2xkKSAmJiBlcnJubyAhPSBFTk9FTlQpCisJCW9oc2hpdGUoXygiZXJyb3IgcmVtb3Zpbmcgb2xkIGRpdmVyc2lvbnMtb2xkIikpOworCWlmIChsaW5rKGRibmFtZSwgZGJuYW1lX29sZCkgJiYgZXJybm8gIT0gRU5PRU5UKQorCQlvaHNoaXRlKF8oImVycm9yIGNyZWF0aW5nIG5ldyBkaXZlcnNpb25zLW9sZCIpKTsKKwlpZiAocmVuYW1lKGRibmFtZV9uZXcsIGRibmFtZSkpCisJCW9oc2hpdGUoXygiZXJyb3IgaW5zdGFsbGluZyBuZXcgZGl2ZXJzaW9ucyIpKTsKKworCWZyZWUoZGJuYW1lKTsKKwlmcmVlKGRibmFtZV9uZXcpOworCWZyZWUoZGJuYW1lX29sZCk7Cit9CisKK3N0YXRpYyBpbnQKK2RpdmVyc2lvbl9hZGQoY29uc3QgY2hhciAqY29uc3QgKmFyZ3YpCit7CisJY29uc3QgY2hhciAqZmlsZW5hbWUgPSBhcmd2WzBdOworCXN0cnVjdCBmaWxlIGZpbGVfZnJvbSwgZmlsZV90bzsKKwlzdHJ1Y3QgZGl2ZXJzaW9uICpjb250ZXN0LCAqYWx0bmFtZTsKKwlzdHJ1Y3QgZmlsZW5hbWVub2RlICpmbm5fZnJvbSwgKmZubl90bzsKKwlzdHJ1Y3QgcGtnaW5mbyAqcGtnOworCisJb3B0X3BrZ25hbWVfbWF0Y2hfYW55ID0gZmFsc2U7CisKKwkvKiBIYW5kbGUgZmlsZW5hbWUuICovCisJaWYgKCFmaWxlbmFtZSB8fCBhcmd2WzFdKQorCQliYWR1c2FnZShfKCItLSVzIG5lZWRzIGEgc2luZ2xlIGFyZ3VtZW50IiksIGNpcGFjdGlvbi0+b2xvbmcpOworCisJaWYgKGZpbGVuYW1lWzBdICE9ICcvJykKKwkJYmFkdXNhZ2UoXygiZmlsZW5hbWUgXCIlc1wiIGlzIG5vdCBhYnNvbHV0ZSIpLCBmaWxlbmFtZSk7CisJaWYgKHN0cmNocihmaWxlbmFtZSwgJ1xuJykgIT0gTlVMTCkKKwkJYmFkdXNhZ2UoXygiZmlsZSBtYXkgbm90IGNvbnRhaW4gbmV3bGluZXMiKSk7CisKKwlmaWxlX2luaXQoJmZpbGVfZnJvbSwgZmlsZW5hbWUpOworCWZpbGVfc3RhdCgmZmlsZV9mcm9tKTsKKworCWlmIChmaWxlX2Zyb20uc3RhdF9zdGF0ZSA9PSBmaWxlX3N0YXRfdmFsaWQgJiYKKwkgICAgU19JU0RJUihmaWxlX2Zyb20uc3RhdC5zdF9tb2RlKSkKKwkJYmFkdXNhZ2UoXygiQ2Fubm90IGRpdmVydCBkaXJlY3RvcmllcyIpKTsKKworCWZubl9mcm9tID0gZmluZG5hbWVub2RlKGZpbGVuYW1lLCAwKTsKKworCS8qIEhhbmRsZSBkaXZlcnR0by4gKi8KKwlpZiAob3B0X2RpdmVydHRvID09IE5VTEwpIHsKKwkJY2hhciAqc3RyOworCisJCW1fYXNwcmludGYoJnN0ciwgIiVzLmRpc3RyaWIiLCBmaWxlbmFtZSk7CisJCW9wdF9kaXZlcnR0byA9IHN0cjsKKwl9CisJaWYgKG9wdF9kaXZlcnR0b1swXSAhPSAnLycpCisJCWJhZHVzYWdlKF8oImZpbGVuYW1lIFwiJXNcIiBpcyBub3QgYWJzb2x1dGUiKSwgb3B0X2RpdmVydHRvKTsKKworCWlmIChzdHJjbXAoZmlsZW5hbWUsIG9wdF9kaXZlcnR0bykgPT0gMCkKKwkJYmFkdXNhZ2UoXygiY2Fubm90IGRpdmVydCBmaWxlICclcycgdG8gaXRzZWxmIiksIGZpbGVuYW1lKTsKKworCWZpbGVfaW5pdCgmZmlsZV90bywgb3B0X2RpdmVydHRvKTsKKworCWZubl90byA9IGZpbmRuYW1lbm9kZShvcHRfZGl2ZXJ0dG8sIDApOworCisJLyogSGFuZGxlIHBhY2thZ2UgbmFtZS4gKi8KKwlpZiAob3B0X3BrZ25hbWUgPT0gTlVMTCkKKwkJcGtnID0gTlVMTDsKKwllbHNlCisJCXBrZyA9IHBrZ19kYl9maW5kKG9wdF9wa2duYW1lKTsKKworCS8qIENoZWNrIHdlIGFyZSBub3Qgc3RvbXBpbmcgb3ZlciBhbiBleGlzdGluZyBkaXZlcnNpb24uICovCisJaWYgKGZubl9mcm9tLT5kaXZlcnQgfHwgZm5uX3RvLT5kaXZlcnQpIHsKKwkJaWYgKGZubl90by0+ZGl2ZXJ0ICYmIGZubl90by0+ZGl2ZXJ0LT5jYW1lZnJvbSAmJgorCQkgICAgc3RyY21wKGZubl90by0+ZGl2ZXJ0LT5jYW1lZnJvbS0+bmFtZSwgZmlsZW5hbWUpID09IDAgJiYKKwkJICAgIGZubl9mcm9tLT5kaXZlcnQgJiYgZm5uX2Zyb20tPmRpdmVydC0+dXNlaW5zdGVhZCAmJgorCQkgICAgc3RyY21wKGZubl9mcm9tLT5kaXZlcnQtPnVzZWluc3RlYWQtPm5hbWUsIG9wdF9kaXZlcnR0bykgPT0gMCAmJgorCQkgICAgZm5uX2Zyb20tPmRpdmVydC0+cGtnID09IHBrZykgeworCQkJaWYgKG9wdF92ZXJib3NlID4gMCkKKwkJCQlwcmludGYoXygiTGVhdmluZyAnJXMnXG4iKSwKKwkJCQkgICAgICAgZGl2ZXJzaW9uX2Rlc2NyaWJlKGZubl9mcm9tLT5kaXZlcnQpKTsKKwkJCWV4aXQoMCk7CisJCX0KKworCQlvaHNoaXQoXygiYCVzJyBjbGFzaGVzIHdpdGggYCVzJyIpLAorCQkgICAgICAgZGl2ZXJzaW9uX2N1cnJlbnQoZmlsZW5hbWUpLAorCQkgICAgICAgZm5uX2Zyb20tPmRpdmVydCA/CisJCSAgICAgICBkaXZlcnNpb25fZGVzY3JpYmUoZm5uX2Zyb20tPmRpdmVydCkgOgorCQkgICAgICAgZGl2ZXJzaW9uX2Rlc2NyaWJlKGZubl90by0+ZGl2ZXJ0KSk7CisJfQorCisJLyogQ3JlYXRlIG5ldyBkaXZlcnNpb24uICovCisJY29udGVzdCA9IG5mbWFsbG9jKHNpemVvZigqY29udGVzdCkpOworCWFsdG5hbWUgPSBuZm1hbGxvYyhzaXplb2YoKmFsdG5hbWUpKTsKKworCWFsdG5hbWUtPmNhbWVmcm9tID0gZm5uX2Zyb207CisJYWx0bmFtZS0+Y2FtZWZyb20tPmRpdmVydCA9IGNvbnRlc3Q7CisJYWx0bmFtZS0+dXNlaW5zdGVhZCA9IE5VTEw7CisJYWx0bmFtZS0+cGtnID0gcGtnOworCisJY29udGVzdC0+dXNlaW5zdGVhZCA9IGZubl90bzsKKwljb250ZXN0LT51c2VpbnN0ZWFkLT5kaXZlcnQgPSBhbHRuYW1lOworCWNvbnRlc3QtPmNhbWVmcm9tID0gTlVMTDsKKwljb250ZXN0LT5wa2cgPSBwa2c7CisKKwkvKiBVcGRhdGUgZGF0YWJhc2UgYW5kIGZpbGUgc3lzdGVtIGlmIG5lZWRlZC4gKi8KKwlpZiAob3B0X3ZlcmJvc2UgPiAwKQorCQlwcmludGYoXygiQWRkaW5nICclcydcbiIpLCBkaXZlcnNpb25fZGVzY3JpYmUoY29udGVzdCkpOworCWlmIChvcHRfcmVuYW1lKQorCQlvcHRfcmVuYW1lID0gY2hlY2tfcmVuYW1lKCZmaWxlX2Zyb20sICZmaWxlX3RvKTsKKwlpZiAoIW9wdF90ZXN0KSB7CisJCWRpdmVydGRiX3dyaXRlKCk7CisJCWlmIChvcHRfcmVuYW1lKQorCQkJZmlsZV9yZW5hbWUoJmZpbGVfZnJvbSwgJmZpbGVfdG8pOworCX0KKworCXJldHVybiAwOworfQorCitzdGF0aWMgaW50CitkaXZlcnNpb25fcmVtb3ZlKGNvbnN0IGNoYXIgKmNvbnN0ICphcmd2KQoreworCWNvbnN0IGNoYXIgKmZpbGVuYW1lID0gYXJndlswXTsKKwlzdHJ1Y3QgZmlsZW5hbWVub2RlICpuYW1lbm9kZTsKKwlzdHJ1Y3QgZGl2ZXJzaW9uICpjb250ZXN0LCAqYWx0bmFtZTsKKwlzdHJ1Y3QgZmlsZSBmaWxlX2Zyb20sIGZpbGVfdG87CisJc3RydWN0IHBrZ2luZm8gKnBrZzsKKworCWlmICghZmlsZW5hbWUgfHwgYXJndlsxXSkKKwkJYmFkdXNhZ2UoXygiLS0lcyBuZWVkcyBhIHNpbmdsZSBhcmd1bWVudCIpLCBjaXBhY3Rpb24tPm9sb25nKTsKKworCW5hbWVub2RlID0gZmluZG5hbWVub2RlKGZpbGVuYW1lLCBmbm5fbm9uZXcpOworCisJaWYgKG5hbWVub2RlID09IE5VTEwgfHwgbmFtZW5vZGUtPmRpdmVydCA9PSBOVUxMIHx8CisJICAgIG5hbWVub2RlLT5kaXZlcnQtPnVzZWluc3RlYWQgPT0gTlVMTCkgeworCQlpZiAob3B0X3ZlcmJvc2UgPiAwKQorCQkJcHJpbnRmKF8oIk5vIGRpdmVyc2lvbiAnJXMnLCBub25lIHJlbW92ZWQuXG4iKSwKKwkJCSAgICAgICBkaXZlcnNpb25fY3VycmVudChmaWxlbmFtZSkpOworCQlyZXR1cm4gMDsKKwl9CisKKwlpZiAob3B0X3BrZ25hbWUgPT0gTlVMTCkKKwkJcGtnID0gTlVMTDsKKwllbHNlCisJCXBrZyA9IHBrZ19kYl9maW5kKG9wdF9wa2duYW1lKTsKKworCWNvbnRlc3QgPSBuYW1lbm9kZS0+ZGl2ZXJ0OworCWFsdG5hbWUgPSBjb250ZXN0LT51c2VpbnN0ZWFkLT5kaXZlcnQ7CisKKwlpZiAob3B0X2RpdmVydHRvICE9IE5VTEwgJiYKKwkgICAgc3RyY21wKG9wdF9kaXZlcnR0bywgY29udGVzdC0+dXNlaW5zdGVhZC0+bmFtZSkgIT0gMCkKKwkJb2hzaGl0KF8oIm1pc21hdGNoIG9uIGRpdmVydC10b1xuIgorCQkgICAgICAgICAiICB3aGVuIHJlbW92aW5nIGAlcydcbiIKKwkJICAgICAgICAgIiAgZm91bmQgYCVzJyIpLAorCQkgICAgICAgZGl2ZXJzaW9uX2N1cnJlbnQoZmlsZW5hbWUpLAorCQkgICAgICAgZGl2ZXJzaW9uX2Rlc2NyaWJlKGNvbnRlc3QpKTsKKworCWlmICghb3B0X3BrZ25hbWVfbWF0Y2hfYW55ICYmIHBrZyAhPSBjb250ZXN0LT5wa2cpCisJCW9oc2hpdChfKCJtaXNtYXRjaCBvbiBwYWNrYWdlXG4iCisJCSAgICAgICAgICIgIHdoZW4gcmVtb3ZpbmcgYCVzJ1xuIgorCQkgICAgICAgICAiICBmb3VuZCBgJXMnIiksCisJCSAgICAgICBkaXZlcnNpb25fY3VycmVudChmaWxlbmFtZSksCisJCSAgICAgICBkaXZlcnNpb25fZGVzY3JpYmUoY29udGVzdCkpOworCisJaWYgKG9wdF92ZXJib3NlID4gMCkKKwkJcHJpbnRmKF8oIlJlbW92aW5nICclcydcbiIpLCBkaXZlcnNpb25fZGVzY3JpYmUoY29udGVzdCkpOworCisJZmlsZV9pbml0KCZmaWxlX2Zyb20sIGFsdG5hbWUtPmNhbWVmcm9tLT5uYW1lKTsKKwlmaWxlX2luaXQoJmZpbGVfdG8sIGNvbnRlc3QtPnVzZWluc3RlYWQtPm5hbWUpOworCisJLyogUmVtb3ZlIGVudHJpZXMgZnJvbSBkYXRhYmFzZS4gKi8KKwljb250ZXN0LT51c2VpbnN0ZWFkLT5kaXZlcnQgPSBOVUxMOworCWFsdG5hbWUtPmNhbWVmcm9tLT5kaXZlcnQgPSBOVUxMOworCisJaWYgKG9wdF9yZW5hbWUpCisJCW9wdF9yZW5hbWUgPSBjaGVja19yZW5hbWUoJmZpbGVfdG8sICZmaWxlX2Zyb20pOworCWlmIChvcHRfcmVuYW1lICYmICFvcHRfdGVzdCkKKwkJZmlsZV9yZW5hbWUoJmZpbGVfdG8sICZmaWxlX2Zyb20pOworCisJaWYgKCFvcHRfdGVzdCkKKwkJZGl2ZXJ0ZGJfd3JpdGUoKTsKKworCXJldHVybiAwOworfQorCitzdGF0aWMgaW50CitkaXZlcnNpb25fbGlzdChjb25zdCBjaGFyICpjb25zdCAqYXJndikKK3sKKwlzdHJ1Y3QgZmlsZWl0ZXJhdG9yICppdGVyOworCXN0cnVjdCBmaWxlbmFtZW5vZGUgKm5hbWVub2RlOworCXN0cnVjdCBnbG9iX25vZGUgKmdsb2JfbGlzdCA9IE5VTEw7CisJY29uc3QgY2hhciAqcGF0dGVybjsKKworCXdoaWxlICgocGF0dGVybiA9ICphcmd2KyspKQorCQlnbG9iX2xpc3RfcHJlcGVuZCgmZ2xvYl9saXN0LCBtX3N0cmR1cChwYXR0ZXJuKSk7CisKKwlpZiAoZ2xvYl9saXN0ID09IE5VTEwpCisJCWdsb2JfbGlzdF9wcmVwZW5kKCZnbG9iX2xpc3QsIG1fc3RyZHVwKCIqIikpOworCisJaXRlciA9IGl0ZXJmaWxlc3RhcnQoKTsKKwl3aGlsZSAoKG5hbWVub2RlID0gaXRlcmZpbGVuZXh0KGl0ZXIpKSkgeworCQlzdHJ1Y3QgZ2xvYl9ub2RlICpnOworCQlzdHJ1Y3QgZGl2ZXJzaW9uICpjb250ZXN0ID0gbmFtZW5vZGUtPmRpdmVydDsKKwkJc3RydWN0IGRpdmVyc2lvbiAqYWx0bmFtZTsKKwkJY29uc3QgY2hhciAqcGtnX25hbWU7CisKKwkJaWYgKGNvbnRlc3QtPnVzZWluc3RlYWQgPT0gTlVMTCkKKwkJCWNvbnRpbnVlOworCisJCWFsdG5hbWUgPSBjb250ZXN0LT51c2VpbnN0ZWFkLT5kaXZlcnQ7CisKKwkJcGtnX25hbWUgPSBkaXZlcnNpb25fcGtnX25hbWUoY29udGVzdCk7CisKKwkJZm9yIChnID0gZ2xvYl9saXN0OyBnOyBnID0gZy0+bmV4dCkgeworCQkJaWYgKGZubWF0Y2goZy0+cGF0dGVybiwgcGtnX25hbWUsIDApID09IDAgfHwKKwkJCSAgICBmbm1hdGNoKGctPnBhdHRlcm4sIGNvbnRlc3QtPnVzZWluc3RlYWQtPm5hbWUsIDApID09IDAgfHwKKwkJCSAgICBmbm1hdGNoKGctPnBhdHRlcm4sIGFsdG5hbWUtPmNhbWVmcm9tLT5uYW1lLCAwKSA9PSAwKSB7CisJCQkJcHJpbnRmKCIlc1xuIiwgZGl2ZXJzaW9uX2Rlc2NyaWJlKGNvbnRlc3QpKTsKKwkJCQlicmVhazsKKwkJCX0KKwkJfQorCX0KKwlpdGVyZmlsZWVuZChpdGVyKTsKKworCWdsb2JfbGlzdF9mcmVlKGdsb2JfbGlzdCk7CisKKwlyZXR1cm4gMDsKK30KKworc3RhdGljIGludAorZGl2ZXJzaW9uX3RydWVuYW1lKGNvbnN0IGNoYXIgKmNvbnN0ICphcmd2KQoreworCWNvbnN0IGNoYXIgKmZpbGVuYW1lID0gYXJndlswXTsKKwlzdHJ1Y3QgZmlsZW5hbWVub2RlICpuYW1lbm9kZTsKKworCWlmICghZmlsZW5hbWUgfHwgYXJndlsxXSkKKwkJYmFkdXNhZ2UoXygiLS0lcyBuZWVkcyBhIHNpbmdsZSBhcmd1bWVudCIpLCBjaXBhY3Rpb24tPm9sb25nKTsKKworCW5hbWVub2RlID0gZmluZG5hbWVub2RlKGZpbGVuYW1lLCBmbm5fbm9uZXcpOworCisJLyogUHJpbnQgdGhlIGdpdmVuIG5hbWUgaWYgZmlsZSBpcyBub3QgZGl2ZXJ0ZWQuICovCisJaWYgKG5hbWVub2RlICYmIG5hbWVub2RlLT5kaXZlcnQtPnVzZWluc3RlYWQpCisJCXByaW50ZigiJXNcbiIsIG5hbWVub2RlLT5kaXZlcnQtPnVzZWluc3RlYWQtPm5hbWUpOworCWVsc2UKKwkJcHJpbnRmKCIlc1xuIiwgZmlsZW5hbWUpOworCisJcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBpbnQKK2RpdmVyc2lvbl9saXN0cGFja2FnZShjb25zdCBjaGFyICpjb25zdCAqYXJndikKK3sKKwljb25zdCBjaGFyICpmaWxlbmFtZSA9IGFyZ3ZbMF07CisJc3RydWN0IGZpbGVuYW1lbm9kZSAqbmFtZW5vZGU7CisKKwlpZiAoIWZpbGVuYW1lIHx8IGFyZ3ZbMV0pCisJCWJhZHVzYWdlKF8oIi0tJXMgbmVlZHMgYSBzaW5nbGUgYXJndW1lbnQiKSwgY2lwYWN0aW9uLT5vbG9uZyk7CisKKwluYW1lbm9kZSA9IGZpbmRuYW1lbm9kZShmaWxlbmFtZSwgZm5uX25vbmV3KTsKKworCS8qIFByaW50IG5vdGhpbmcgaWYgZmlsZSBpcyBub3QgZGl2ZXJ0ZWQuICovCisJaWYgKG5hbWVub2RlID09IE5VTEwpCisJCXJldHVybiAwOworCisJaWYgKG5hbWVub2RlLT5kaXZlcnQtPnBrZyA9PSBOVUxMKQorCQkvKiBJbmRpY2F0ZSBwYWNrYWdlIGlzIGxvY2FsIHVzaW5nIHNvbWV0aGluZyBub3QgaW4gcGFja2FnZQorCQkgKiBuYW1lc3BhY2UuICovCisJCXByaW50ZigiTE9DQUxcbiIpOworCWVsc2UKKwkJcHJpbnRmKCIlc1xuIiwgbmFtZW5vZGUtPmRpdmVydC0+cGtnLT5uYW1lKTsKKworCXJldHVybiAwOworfQorCitzdGF0aWMgdm9pZAorc2V0cGFja2FnZShjb25zdCBzdHJ1Y3QgY21kaW5mbyAqY2lwLCBjb25zdCBjaGFyICp2YWx1ZSkKK3sKKwlvcHRfcGtnbmFtZV9tYXRjaF9hbnkgPSBmYWxzZTsKKworCS8qIElmIHZhbHVlIGlzIE5VTEwgd2UgYXJlIGJlaW5nIGNhbGxlZCBmcm9tIC0tbG9jYWwuICovCisJb3B0X3BrZ25hbWUgPSB2YWx1ZTsKKworCWlmIChvcHRfcGtnbmFtZSAmJiBzdHJjaHIob3B0X3BrZ25hbWUsICdcbicpICE9IE5VTEwpCisJCWJhZHVzYWdlKF8oInBhY2thZ2UgbWF5IG5vdCBjb250YWluIG5ld2xpbmVzIikpOworfQorCitzdGF0aWMgdm9pZAorc2V0ZGl2ZXJ0dG8oY29uc3Qgc3RydWN0IGNtZGluZm8gKmNpcCwgY29uc3QgY2hhciAqdmFsdWUpCit7CisJb3B0X2RpdmVydHRvID0gdmFsdWU7CisKKwlpZiAoc3RyY2hyKG9wdF9kaXZlcnR0bywgJ1xuJykgIT0gTlVMTCkKKwkJYmFkdXNhZ2UoXygiZGl2ZXJ0LXRvIG1heSBub3QgY29udGFpbiBuZXdsaW5lcyIpKTsKK30KKworc3RhdGljIGNvbnN0IHN0cnVjdCBjbWRpbmZvIGNtZGluZm9fYWRkID0KKwlBQ1RJT04oImFkZCIsICAgICAgICAgMCwgMCwgZGl2ZXJzaW9uX2FkZCk7CisKK3N0YXRpYyBjb25zdCBzdHJ1Y3QgY21kaW5mbyBjbWRpbmZvc1tdID0geworCUFDVElPTigiYWRkIiwgICAgICAgICAwLCAwLCBkaXZlcnNpb25fYWRkKSwKKwlBQ1RJT04oInJlbW92ZSIsICAgICAgMCwgMCwgZGl2ZXJzaW9uX3JlbW92ZSksCisJQUNUSU9OKCJsaXN0IiwgICAgICAgIDAsIDAsIGRpdmVyc2lvbl9saXN0KSwKKwlBQ1RJT04oImxpc3RwYWNrYWdlIiwgMCwgMCwgZGl2ZXJzaW9uX2xpc3RwYWNrYWdlKSwKKwlBQ1RJT04oInRydWVuYW1lIiwgICAgMCwgMCwgZGl2ZXJzaW9uX3RydWVuYW1lKSwKKworCXsgImFkbWluZGlyIiwgICAwLCAgIDEsICBOVUxMLCAgICAgICAgICZhZG1pbmRpciwgTlVMTCAgICAgICAgICB9LAorCXsgImRpdmVydCIsICAgICAwLCAgIDEsICBOVUxMLCAgICAgICAgIE5VTEwsICAgICAgc2V0ZGl2ZXJ0dG8gICB9LAorCXsgInBhY2thZ2UiLCAgICAwLCAgIDEsICBOVUxMLCAgICAgICAgIE5VTEwsICAgICAgc2V0cGFja2FnZSAgICB9LAorCXsgImxvY2FsIiwgICAgICAwLCAgIDAsICBOVUxMLCAgICAgICAgIE5VTEwsICAgICAgc2V0cGFja2FnZSAgICB9LAorCXsgInF1aWV0IiwgICAgICAwLCAgIDAsICAmb3B0X3ZlcmJvc2UsIE5VTEwsICAgICAgTlVMTCwgMCAgICAgICB9LAorCXsgInJlbmFtZSIsICAgICAwLCAgIDAsICAmb3B0X3JlbmFtZSwgIE5VTEwsICAgICAgTlVMTCwgMSAgICAgICB9LAorCXsgInRlc3QiLCAgICAgICAwLCAgIDAsICAmb3B0X3Rlc3QsICAgIE5VTEwsICAgICAgTlVMTCwgMSAgICAgICB9LAorCXsgImhlbHAiLCAgICAgICAwLCAgIDAsICBOVUxMLCAgICAgICAgIE5VTEwsICAgICAgdXNhZ2UgICAgICAgICB9LAorCXsgInZlcnNpb24iLCAgICAwLCAgIDAsICBOVUxMLCAgICAgICAgIE5VTEwsICAgICAgcHJpbnR2ZXJzaW9uICB9LAorCXsgIE5VTEwsICAgICAgICAwICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9Cit9OworCitpbnQKK21haW4oaW50IGFyZ2MsIGNvbnN0IGNoYXIgKiBjb25zdCAqYXJndikKK3sKKwljb25zdCBjaGFyICplbnZfcGtnbmFtZTsKKwlpbnQgcmV0OworCisJc2V0bG9jYWxlKExDX0FMTCwgIiIpOworCWJpbmR0ZXh0ZG9tYWluKFBBQ0tBR0UsIExPQ0FMRURJUik7CisJdGV4dGRvbWFpbihQQUNLQUdFKTsKKworCWRwa2dfc2V0X3Byb2duYW1lKCJkcGtnLWRpdmVydCIpOworCXN0YW5kYXJkX3N0YXJ0dXAoKTsKKwlteW9wdCgmYXJndiwgY21kaW5mb3MsIHByaW50Zm9yaGVscCk7CisKKwlhZG1pbmRpciA9IGRwa2dfZGJfc2V0X2RpcihhZG1pbmRpcik7CisKKwllbnZfcGtnbmFtZSA9IGdldGVudigiRFBLR19NQUlOVFNDUklQVF9QQUNLQUdFIik7CisJaWYgKG9wdF9wa2duYW1lX21hdGNoX2FueSAmJiBlbnZfcGtnbmFtZSkKKwkJc2V0cGFja2FnZShOVUxMLCBlbnZfcGtnbmFtZSk7CisKKwlpZiAoIWNpcGFjdGlvbikKKwkJc2V0YWN0aW9uKCZjbWRpbmZvX2FkZCwgTlVMTCk7CisKKwlzZXR2YnVmKHN0ZG91dCwgTlVMTCwgX0lPTkJGLCAwKTsKKworCWZpbGVzZGJpbml0KCk7CisJZW5zdXJlX2RpdmVyc2lvbnMoKTsKKworCXJldCA9IGNpcGFjdGlvbi0+YWN0aW9uKGFyZ3YpOworCisJc3RhbmRhcmRfc2h1dGRvd24oKTsKKworCXJldHVybiByZXQ7Cit9CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NyYy9kaXZlcnRkYi5jIGIvZHBrZy0xLjE2LjEuMS9zcmMvZGl2ZXJ0ZGIuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jOGMwMTAzCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zcmMvZGl2ZXJ0ZGIuYwpAQCAtMCwwICsxLDEyNCBAQAorLyoKKyAqIGRwa2cgLSBtYWluIHByb2dyYW0gZm9yIHBhY2thZ2UgbWFuYWdlbWVudAorICogZGl2ZXJ0ZGIuYyAtIG1hbmFnZW1lbnQgb2YgZGF0YWJhc2Ugb2YgZGl2ZXJ0ZWQgZmlsZXMKKyAqCisgKiBDb3B5cmlnaHQgwqkgMTk5NSBJYW4gSmFja3NvbiA8aWFuQGNoaWFyay5ncmVlbmVuZC5vcmcudWs+CisgKiBDb3B5cmlnaHQgwqkgMjAwMCwgMjAwMSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaW5jbHVkZSA8Y29uZmlnLmg+CisjaW5jbHVkZSA8Y29tcGF0Lmg+CisKKyNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KKyNpbmNsdWRlIDxzeXMvc3RhdC5oPgorCisjaW5jbHVkZSA8ZXJybm8uaD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDxwd2QuaD4KKyNpbmNsdWRlIDxncnAuaD4KKyNpbmNsdWRlIDxmY250bC5oPgorI2luY2x1ZGUgPHVuaXN0ZC5oPgorI2luY2x1ZGUgPHN0ZGxpYi5oPgorCisjaW5jbHVkZSA8ZHBrZy9pMThuLmg+CisjaW5jbHVkZSA8ZHBrZy9kcGtnLmg+CisjaW5jbHVkZSA8ZHBrZy9kcGtnLWRiLmg+CisKKyNpbmNsdWRlICJmaWxlc2RiLmgiCisjaW5jbHVkZSAibWFpbi5oIgorCitzdGF0aWMgc3RydWN0IGRpdmVyc2lvbiAqZGl2ZXJzaW9ucyA9IE5VTEw7CitzdGF0aWMgRklMRSAqZGl2ZXJzaW9uc2ZpbGUgPSBOVUxMOworc3RhdGljIGNoYXIgKmRpdmVyc2lvbnNuYW1lOworCit2b2lkCitlbnN1cmVfZGl2ZXJzaW9ucyh2b2lkKQoreworCXN0cnVjdCBzdGF0IHN0YWIxLCBzdGFiMjsKKwljaGFyIGxpbmVidWZbTUFYRElWRVJURklMRU5BTUVdOworCUZJTEUgKmZpbGU7CisJc3RydWN0IGRpdmVyc2lvbiAqb3YsICpvaWNvbnRlc3QsICpvaWFsdG5hbWU7CisKKwlpZiAoZGl2ZXJzaW9uc25hbWUgIT0gTlVMTCkKKwkJZnJlZShkaXZlcnNpb25zbmFtZSk7CisJZGl2ZXJzaW9uc25hbWUgPSBkcGtnX2RiX2dldF9wYXRoKERJVkVSU0lPTlNGSUxFKTsKKworCW9uZXJyX2Fib3J0Kys7CisKKwlmaWxlID0gZm9wZW4oZGl2ZXJzaW9uc25hbWUsICJyIik7CisJaWYgKCFmaWxlKSB7CisJCWlmIChlcnJubyAhPSBFTk9FTlQpCisJCQlvaHNoaXRlKF8oImZhaWxlZCB0byBvcGVuIGRpdmVyc2lvbnMgZmlsZSIpKTsKKwkJaWYgKCFkaXZlcnNpb25zZmlsZSkgeworCQkJb25lcnJfYWJvcnQtLTsKKwkJCXJldHVybjsKKwkJfQorCX0gZWxzZSBpZiAoZGl2ZXJzaW9uc2ZpbGUpIHsKKwkJaWYgKGZzdGF0KGZpbGVubyhkaXZlcnNpb25zZmlsZSksICZzdGFiMSkpCisJCQlvaHNoaXRlKF8oImZhaWxlZCB0byBmc3RhdCBwcmV2aW91cyBkaXZlcnNpb25zIGZpbGUiKSk7CisJCWlmIChmc3RhdChmaWxlbm8oZmlsZSksICZzdGFiMikpCisJCQlvaHNoaXRlKF8oImZhaWxlZCB0byBmc3RhdCBkaXZlcnNpb25zIGZpbGUiKSk7CisJCWlmIChzdGFiMS5zdF9kZXYgPT0gc3RhYjIuc3RfZGV2ICYmCisJCSAgICBzdGFiMS5zdF9pbm8gPT0gc3RhYjIuc3RfaW5vKSB7CisJCQlmY2xvc2UoZmlsZSk7CisJCQlvbmVycl9hYm9ydC0tOworCQkJcmV0dXJuOworCQl9CisJfQorCWlmIChkaXZlcnNpb25zZmlsZSkKKwkJZmNsb3NlKGRpdmVyc2lvbnNmaWxlKTsKKwlkaXZlcnNpb25zZmlsZSA9IGZpbGU7CisJc2V0Y2xvZXhlYyhmaWxlbm8oZGl2ZXJzaW9uc2ZpbGUpLCBkaXZlcnNpb25zbmFtZSk7CisKKwlmb3IgKG92ID0gZGl2ZXJzaW9uczsgb3Y7IG92ID0gb3YtPm5leHQpIHsKKwkJb3YtPnVzZWluc3RlYWQtPmRpdmVydC0+Y2FtZWZyb20tPmRpdmVydCA9IE5VTEw7CisJCW92LT51c2VpbnN0ZWFkLT5kaXZlcnQgPSBOVUxMOworCX0KKwlkaXZlcnNpb25zID0gTlVMTDsKKwlpZiAoIWZpbGUpIHsKKwkJb25lcnJfYWJvcnQtLTsKKwkJcmV0dXJuOworCX0KKworCXdoaWxlIChmZ2V0c19jaGVja2VkKGxpbmVidWYsIHNpemVvZihsaW5lYnVmKSwgZmlsZSwgZGl2ZXJzaW9uc25hbWUpID49IDApIHsKKwkJb2ljb250ZXN0ID0gbmZtYWxsb2Moc2l6ZW9mKHN0cnVjdCBkaXZlcnNpb24pKTsKKwkJb2lhbHRuYW1lID0gbmZtYWxsb2Moc2l6ZW9mKHN0cnVjdCBkaXZlcnNpb24pKTsKKworCQlvaWFsdG5hbWUtPmNhbWVmcm9tID0gZmluZG5hbWVub2RlKGxpbmVidWYsIDApOworCQlvaWFsdG5hbWUtPnVzZWluc3RlYWQgPSBOVUxMOworCisJCWZnZXRzX211c3QobGluZWJ1Ziwgc2l6ZW9mKGxpbmVidWYpLCBmaWxlLCBkaXZlcnNpb25zbmFtZSk7CisJCW9pY29udGVzdC0+dXNlaW5zdGVhZCA9IGZpbmRuYW1lbm9kZShsaW5lYnVmLCAwKTsKKwkJb2ljb250ZXN0LT5jYW1lZnJvbSA9IE5VTEw7CisKKwkJZmdldHNfbXVzdChsaW5lYnVmLCBzaXplb2YobGluZWJ1ZiksIGZpbGUsIGRpdmVyc2lvbnNuYW1lKTsKKwkJb2ljb250ZXN0LT5wa2cgPSBvaWFsdG5hbWUtPnBrZyA9IHN0cmNtcChsaW5lYnVmLCAiOiIpID8KKwkJICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBrZ19kYl9maW5kKGxpbmVidWYpIDogTlVMTDsKKworCQlpZiAob2lhbHRuYW1lLT5jYW1lZnJvbS0+ZGl2ZXJ0IHx8CisJCSAgICBvaWNvbnRlc3QtPnVzZWluc3RlYWQtPmRpdmVydCkKKwkJCW9oc2hpdChfKCJjb25mbGljdGluZyBkaXZlcnNpb25zIGludm9sdmluZyBgJS4yNTBzJyBvciBgJS4yNTBzJyIpLAorCQkJICAgICAgIG9pYWx0bmFtZS0+Y2FtZWZyb20tPm5hbWUsIG9pY29udGVzdC0+dXNlaW5zdGVhZC0+bmFtZSk7CisKKwkJb2lhbHRuYW1lLT5jYW1lZnJvbS0+ZGl2ZXJ0ID0gb2ljb250ZXN0OworCQlvaWNvbnRlc3QtPnVzZWluc3RlYWQtPmRpdmVydCA9IG9pYWx0bmFtZTsKKworCQlvaWNvbnRlc3QtPm5leHQgPSBkaXZlcnNpb25zOworCQlkaXZlcnNpb25zID0gb2ljb250ZXN0OworCX0KKworCW9uZXJyX2Fib3J0LS07Cit9CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NyYy9lbnF1aXJ5LmMgYi9kcGtnLTEuMTYuMS4xL3NyYy9lbnF1aXJ5LmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTIzNzgxNwotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc3JjL2VucXVpcnkuYwpAQCAtMCwwICsxLDU2NCBAQAorLyoKKyAqIGRwa2cgLSBtYWluIHByb2dyYW0gZm9yIHBhY2thZ2UgbWFuYWdlbWVudAorICogZW5xdWlyeS5jIC0gc3RhdHVzIGVucXVpcnkgYW5kIGxpc3Rpbmcgb3B0aW9ucworICoKKyAqIENvcHlyaWdodCDCqSAxOTk1LDE5OTYgSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuZ3JlZW5lbmQub3JnLnVrPgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisvKiBGSVhNRTogcGVyLXBhY2thZ2UgYXVkaXQuICovCisKKyNpbmNsdWRlIDxjb25maWcuaD4KKyNpbmNsdWRlIDxjb21wYXQuaD4KKworI2luY2x1ZGUgPHN5cy90eXBlcy5oPgorI2luY2x1ZGUgPHN5cy9pb2N0bC5oPgorI2luY2x1ZGUgPHN5cy9zdGF0Lmg+CisjaW5jbHVkZSA8c3lzL3Rlcm1pb3MuaD4KKworI2luY2x1ZGUgPGFzc2VydC5oPgorI2luY2x1ZGUgPHN0cmluZy5oPgorI2luY2x1ZGUgPGZjbnRsLmg+CisjaW5jbHVkZSA8dW5pc3RkLmg+CisjaW5jbHVkZSA8c3RkYm9vbC5oPgorI2luY2x1ZGUgPHN0ZGxpYi5oPgorI2luY2x1ZGUgPHN0ZGlvLmg+CisKKyNpbmNsdWRlIDxkcGtnL2kxOG4uaD4KKyNpbmNsdWRlIDxkcGtnL2Rwa2cuaD4KKyNpbmNsdWRlIDxkcGtnL2Rwa2ctZGIuaD4KKyNpbmNsdWRlIDxkcGtnL3BrZy1zaG93Lmg+CisjaW5jbHVkZSA8ZHBrZy9vcHRpb25zLmg+CisKKyNpbmNsdWRlICJmaWxlc2RiLmgiCisjaW5jbHVkZSAibWFpbi5oIgorCitzdHJ1Y3QgYmFkc3RhdGluZm8geworICBib29sICgqeWVzbm8pKHN0cnVjdCBwa2dpbmZvICosIGNvbnN0IHN0cnVjdCBiYWRzdGF0aW5mbyAqYnNpKTsKKyAgaW50IHZhbHVlOworICBjb25zdCBjaGFyICpleHBsYW5hdGlvbjsKK307CisKK3N0YXRpYyBib29sCitic3luX3JlaW5zdHJlcShzdHJ1Y3QgcGtnaW5mbyAqcGtnLCBjb25zdCBzdHJ1Y3QgYmFkc3RhdGluZm8gKmJzaSkKK3sKKyAgcmV0dXJuIHBrZy0+ZWZsYWcgJj0gZWZsYWdfcmVpbnN0cmVxOworfQorCitzdGF0aWMgYm9vbAorYnN5bl9zdGF0dXMoc3RydWN0IHBrZ2luZm8gKnBrZywgY29uc3Qgc3RydWN0IGJhZHN0YXRpbmZvICpic2kpCit7CisgIGlmIChwa2ctPmVmbGFnICY9IGVmbGFnX3JlaW5zdHJlcSkKKyAgICByZXR1cm4gZmFsc2U7CisgIHJldHVybiAoaW50KXBrZy0+c3RhdHVzID09IGJzaS0+dmFsdWU7Cit9CisKK3N0YXRpYyBjb25zdCBzdHJ1Y3QgYmFkc3RhdGluZm8gYmFkc3RhdGluZm9zW109IHsKKyAgeworICAgIC55ZXNubyA9IGJzeW5fcmVpbnN0cmVxLAorICAgIC52YWx1ZSA9IDAsCisgICAgLmV4cGxhbmF0aW9uID0gTl8oCisgICAgIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgYXJlIGluIGEgbWVzcyBkdWUgdG8gc2VyaW91cyBwcm9ibGVtcyBkdXJpbmdcbiIKKyAgICAiaW5zdGFsbGF0aW9uLiAgVGhleSBtdXN0IGJlIHJlaW5zdGFsbGVkIGZvciB0aGVtIChhbmQgYW55IHBhY2thZ2VzXG4iCisgICAgInRoYXQgZGVwZW5kIG9uIHRoZW0pIHRvIGZ1bmN0aW9uIHByb3Blcmx5OlxuIikKKyAgfSwgeworICAgIC55ZXNubyA9IGJzeW5fc3RhdHVzLAorICAgIC52YWx1ZSA9IHN0YXRfdW5wYWNrZWQsCisgICAgLmV4cGxhbmF0aW9uID0gTl8oCisgICAgIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgaGF2ZSBiZWVuIHVucGFja2VkIGJ1dCBub3QgeWV0IGNvbmZpZ3VyZWQuXG4iCisgICAgIlRoZXkgbXVzdCBiZSBjb25maWd1cmVkIHVzaW5nIGRwa2cgLS1jb25maWd1cmUgb3IgdGhlIGNvbmZpZ3VyZVxuIgorICAgICJtZW51IG9wdGlvbiBpbiBkc2VsZWN0IGZvciB0aGVtIHRvIHdvcms6XG4iKQorICB9LCB7CisgICAgLnllc25vID0gYnN5bl9zdGF0dXMsCisgICAgLnZhbHVlID0gc3RhdF9oYWxmY29uZmlndXJlZCwKKyAgICAuZXhwbGFuYXRpb24gPSBOXygKKyAgICAiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgb25seSBoYWxmIGNvbmZpZ3VyZWQsIHByb2JhYmx5IGR1ZSB0byBwcm9ibGVtc1xuIgorICAgICJjb25maWd1cmluZyB0aGVtIHRoZSBmaXJzdCB0aW1lLiAgVGhlIGNvbmZpZ3VyYXRpb24gc2hvdWxkIGJlIHJldHJpZWQgdXNpbmdcbiIKKyAgICAiZHBrZyAtLWNvbmZpZ3VyZSA8cGFja2FnZT4gb3IgdGhlIGNvbmZpZ3VyZSBtZW51IG9wdGlvbiBpbiBkc2VsZWN0OlxuIikKKyAgfSwgeworICAgIC55ZXNubyA9IGJzeW5fc3RhdHVzLAorICAgIC52YWx1ZSA9IHN0YXRfaGFsZmluc3RhbGxlZCwKKyAgICAuZXhwbGFuYXRpb24gPSBOXygKKyAgICAiVGhlIGZvbGxvd2luZyBwYWNrYWdlcyBhcmUgb25seSBoYWxmIGluc3RhbGxlZCwgZHVlIHRvIHByb2JsZW1zIGR1cmluZ1xuIgorICAgICJpbnN0YWxsYXRpb24uICBUaGUgaW5zdGFsbGF0aW9uIGNhbiBwcm9iYWJseSBiZSBjb21wbGV0ZWQgYnkgcmV0cnlpbmcgaXQ7XG4iCisgICAgInRoZSBwYWNrYWdlcyBjYW4gYmUgcmVtb3ZlZCB1c2luZyBkc2VsZWN0IG9yIGRwa2cgLS1yZW1vdmU6XG4iKQorICB9LCB7CisgICAgLnllc25vID0gYnN5bl9zdGF0dXMsCisgICAgLnZhbHVlID0gc3RhdF90cmlnZ2Vyc2F3YWl0ZWQsCisgICAgLmV4cGxhbmF0aW9uID0gTl8oCisgICAgIlRoZSBmb2xsb3dpbmcgcGFja2FnZXMgYXJlIGF3YWl0aW5nIHByb2Nlc3Npbmcgb2YgdHJpZ2dlcnMgdGhhdCB0aGV5XG4iCisgICAgImhhdmUgYWN0aXZhdGVkIGluIG90aGVyIHBhY2thZ2VzLiAgVGhpcyBwcm9jZXNzaW5nIGNhbiBiZSByZXF1ZXN0ZWQgdXNpbmdcbiIKKyAgICAiZHNlbGVjdCBvciBkcGtnIC0tY29uZmlndXJlIC0tcGVuZGluZyAob3IgZHBrZyAtLXRyaWdnZXJzLW9ubHkpOlxuIikKKyAgfSwgeworICAgIC55ZXNubyA9IGJzeW5fc3RhdHVzLAorICAgIC52YWx1ZSA9IHN0YXRfdHJpZ2dlcnNwZW5kaW5nLAorICAgIC5leHBsYW5hdGlvbiA9IE5fKAorICAgICJUaGUgZm9sbG93aW5nIHBhY2thZ2VzIGhhdmUgYmVlbiB0cmlnZ2VyZWQsIGJ1dCB0aGUgdHJpZ2dlciBwcm9jZXNzaW5nXG4iCisgICAgImhhcyBub3QgeWV0IGJlZW4gZG9uZS4gIFRyaWdnZXIgcHJvY2Vzc2luZyBjYW4gYmUgcmVxdWVzdGVkIHVzaW5nXG4iCisgICAgImRzZWxlY3Qgb3IgZHBrZyAtLWNvbmZpZ3VyZSAtLXBlbmRpbmcgKG9yIGRwa2cgLS10cmlnZ2Vycy1vbmx5KTpcbiIpCisgIH0sIHsKKyAgICAueWVzbm8gPSBOVUxMCisgIH0KK307CisKK3N0YXRpYyB2b2lkIGRlc2NyaWJlYnJpZWZseShzdHJ1Y3QgcGtnaW5mbyAqcGtnKSB7CisgIGludCBtYXhsLCBsOworICBjb25zdCBjaGFyICpwZGVzYzsKKworICBtYXhsPSA1NzsKKyAgbD0gc3RybGVuKHBrZy0+bmFtZSk7CisgIGlmIChsPjIwKSBtYXhsIC09IChsLTIwKTsKKworICBwZGVzYyA9IHBrZ19zdW1tYXJ5KHBrZywgJmwpOworICBsID0gbWluKGwsIG1heGwpOworCisgIHByaW50ZigiICUtMjBzICUuKnNcbiIscGtnLT5uYW1lLGwscGRlc2MpOworfQorCitpbnQKK2F1ZGl0KGNvbnN0IGNoYXIgKmNvbnN0ICphcmd2KQoreworICBjb25zdCBzdHJ1Y3QgYmFkc3RhdGluZm8gKmJzaTsKKyAgYm9vbCBoZWFkX3J1bm5pbmcgPSBmYWxzZTsKKworICBpZiAoKmFyZ3YpCisgICAgYmFkdXNhZ2UoXygiLS0lcyB0YWtlcyBubyBhcmd1bWVudHMiKSwgY2lwYWN0aW9uLT5vbG9uZyk7CisKKyAgbW9kc3RhdGRiX29wZW4obXNkYnJ3X3JlYWRvbmx5KTsKKworICBmb3IgKGJzaT0gYmFkc3RhdGluZm9zOyBic2ktPnllc25vOyBic2krKykgeworICAgIHN0cnVjdCBwa2dpdGVyYXRvciAqaXQ7CisgICAgc3RydWN0IHBrZ2luZm8gKnBrZzsKKyAgICBib29sIGhlYWQgPSBmYWxzZTsKKworICAgIGl0ID0gcGtnX2RiX2l0ZXJfbmV3KCk7CisgICAgd2hpbGUgKChwa2cgPSBwa2dfZGJfaXRlcl9uZXh0KGl0KSkpIHsKKyAgICAgIGlmICghYnNpLT55ZXNubyhwa2csYnNpKSkgY29udGludWU7CisgICAgICBpZiAoIWhlYWRfcnVubmluZykgeworICAgICAgICBpZiAobW9kc3RhdGRiX2lzX2xvY2tlZCgpKQorICAgICAgICAgIHB1dHMoXygKKyJBbm90aGVyIHByb2Nlc3MgaGFzIGxvY2tlZCB0aGUgZGF0YWJhc2UgZm9yIHdyaXRpbmcsIGFuZCBtaWdodCBjdXJyZW50bHkgYmVcbiIKKyJtb2RpZnlpbmcgaXQsIHNvbWUgb2YgdGhlIGZvbGxvd2luZyBwcm9ibGVtcyBtaWdodCBqdXN0IGJlIGR1ZSB0byB0aGF0LlxuIikpOworICAgICAgICBoZWFkX3J1bm5pbmcgPSB0cnVlOworICAgICAgfQorICAgICAgaWYgKCFoZWFkKSB7CisgICAgICAgIGZwdXRzKGdldHRleHQoYnNpLT5leHBsYW5hdGlvbiksc3Rkb3V0KTsKKyAgICAgICAgaGVhZCA9IHRydWU7CisgICAgICB9CisgICAgICBkZXNjcmliZWJyaWVmbHkocGtnKTsKKyAgICB9CisgICAgcGtnX2RiX2l0ZXJfZnJlZShpdCk7CisgICAgaWYgKGhlYWQpIHB1dGNoYXIoJ1xuJyk7CisgIH0KKworICBtX291dHB1dChzdGRvdXQsIF8oIjxzdGFuZGFyZCBvdXRwdXQ+IikpOworCisgIHJldHVybiAwOworfQorCitzdHJ1Y3Qgc2VjdGlvbmVudHJ5IHsKKyAgc3RydWN0IHNlY3Rpb25lbnRyeSAqbmV4dDsKKyAgY29uc3QgY2hhciAqbmFtZTsKKyAgaW50IGNvdW50OworfTsKKworc3RhdGljIGJvb2wKK3lldHRvYmV1bnBhY2tlZChzdHJ1Y3QgcGtnaW5mbyAqcGtnLCBjb25zdCBjaGFyICoqdGhpc3NlY3QpCit7CisgIGlmIChwa2ctPndhbnQgIT0gd2FudF9pbnN0YWxsKQorICAgIHJldHVybiBmYWxzZTsKKworICBzd2l0Y2ggKHBrZy0+c3RhdHVzKSB7CisgIGNhc2Ugc3RhdF91bnBhY2tlZDogY2FzZSBzdGF0X2luc3RhbGxlZDogY2FzZSBzdGF0X2hhbGZjb25maWd1cmVkOgorICBjYXNlIHN0YXRfdHJpZ2dlcnNwZW5kaW5nOgorICBjYXNlIHN0YXRfdHJpZ2dlcnNhd2FpdGVkOgorICAgIHJldHVybiBmYWxzZTsKKyAgY2FzZSBzdGF0X25vdGluc3RhbGxlZDogY2FzZSBzdGF0X2hhbGZpbnN0YWxsZWQ6IGNhc2Ugc3RhdF9jb25maWdmaWxlczoKKyAgICBpZiAodGhpc3NlY3QpCisgICAgICAqdGhpc3NlY3QgPSBwa2ctPnNlY3Rpb24gJiYgKnBrZy0+c2VjdGlvbiA/IHBrZy0+c2VjdGlvbiA6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENfKCJzZWN0aW9uIiwgIjx1bmtub3duPiIpOworICAgIHJldHVybiB0cnVlOworICBkZWZhdWx0OgorICAgIGludGVybmVycigidW5rbm93biBwYWNrYWdlIHN0YXR1cyAnJWQnIiwgcGtnLT5zdGF0dXMpOworICB9CisgIHJldHVybiBmYWxzZTsKK30KKworaW50Cit1bnBhY2tjaGsoY29uc3QgY2hhciAqY29uc3QgKmFyZ3YpCit7CisgIGludCB0b3RhbGNvdW50LCBzZWN0czsKKyAgc3RydWN0IHNlY3Rpb25lbnRyeSAqc2VjdGlvbmVudHJpZXMsICpzZSwgKipzZXA7CisgIHN0cnVjdCBwa2dpdGVyYXRvciAqaXQ7CisgIHN0cnVjdCBwa2dpbmZvICpwa2c7CisgIGNvbnN0IGNoYXIgKnRoaXNzZWN0OworICBjaGFyIGJ1ZlsyMF07CisgIGludCB3aWR0aDsKKworICBpZiAoKmFyZ3YpCisgICAgYmFkdXNhZ2UoXygiLS0lcyB0YWtlcyBubyBhcmd1bWVudHMiKSwgY2lwYWN0aW9uLT5vbG9uZyk7CisKKyAgbW9kc3RhdGRiX29wZW4obXNkYnJ3X3JlYWRvbmx5KTsKKworICB0b3RhbGNvdW50PSAwOworICBzZWN0aW9uZW50cmllcyA9IE5VTEw7CisgIHNlY3RzPSAwOworICBpdCA9IHBrZ19kYl9pdGVyX25ldygpOworICB3aGlsZSAoKHBrZyA9IHBrZ19kYl9pdGVyX25leHQoaXQpKSkgeworICAgIGlmICgheWV0dG9iZXVucGFja2VkKHBrZywgJnRoaXNzZWN0KSkgY29udGludWU7CisgICAgZm9yIChzZT0gc2VjdGlvbmVudHJpZXM7IHNlICYmIHN0cmNhc2VjbXAodGhpc3NlY3Qsc2UtPm5hbWUpOyBzZT0gc2UtPm5leHQpOworICAgIGlmICghc2UpIHsKKyAgICAgIHNlPSBuZm1hbGxvYyhzaXplb2Yoc3RydWN0IHNlY3Rpb25lbnRyeSkpOworICAgICAgZm9yIChzZXA9ICZzZWN0aW9uZW50cmllczsKKyAgICAgICAgICAgKnNlcCAmJiBzdHJjYXNlY21wKHRoaXNzZWN0LCgqc2VwKS0+bmFtZSkgPiAwOworICAgICAgICAgICBzZXA9ICYoKnNlcCktPm5leHQpOworICAgICAgc2UtPm5hbWU9IHRoaXNzZWN0OworICAgICAgc2UtPmNvdW50PSAwOworICAgICAgc2UtPm5leHQ9ICpzZXA7CisgICAgICAqc2VwPSBzZTsKKyAgICAgIHNlY3RzKys7CisgICAgfQorICAgIHNlLT5jb3VudCsrOyB0b3RhbGNvdW50Kys7CisgIH0KKyAgcGtnX2RiX2l0ZXJfZnJlZShpdCk7CisKKyAgaWYgKHRvdGFsY291bnQgPT0gMCkKKyAgICByZXR1cm4gMDsKKworICBpZiAodG90YWxjb3VudCA8PSAxMikgeworICAgIGl0ID0gcGtnX2RiX2l0ZXJfbmV3KCk7CisgICAgd2hpbGUgKChwa2cgPSBwa2dfZGJfaXRlcl9uZXh0KGl0KSkpIHsKKyAgICAgIGlmICgheWV0dG9iZXVucGFja2VkKHBrZywgTlVMTCkpCisgICAgICAgIGNvbnRpbnVlOworICAgICAgZGVzY3JpYmVicmllZmx5KHBrZyk7CisgICAgfQorICAgIHBrZ19kYl9pdGVyX2ZyZWUoaXQpOworICB9IGVsc2UgaWYgKHNlY3RzIDw9IDEyKSB7CisgICAgZm9yIChzZT0gc2VjdGlvbmVudHJpZXM7IHNlOyBzZT0gc2UtPm5leHQpIHsKKyAgICAgIHNwcmludGYoYnVmLCIlZCIsc2UtPmNvdW50KTsKKyAgICAgIHByaW50ZihfKCIgJWQgaW4gJXM6ICIpLHNlLT5jb3VudCxzZS0+bmFtZSk7CisgICAgICB3aWR0aD0gNzAtc3RybGVuKHNlLT5uYW1lKS1zdHJsZW4oYnVmKTsKKyAgICAgIHdoaWxlICh3aWR0aCA+IDU5KSB7IHB1dGNoYXIoJyAnKTsgd2lkdGgtLTsgfQorICAgICAgaXQgPSBwa2dfZGJfaXRlcl9uZXcoKTsKKyAgICAgIHdoaWxlICgocGtnID0gcGtnX2RiX2l0ZXJfbmV4dChpdCkpKSB7CisgICAgICAgIGlmICgheWV0dG9iZXVucGFja2VkKHBrZywmdGhpc3NlY3QpKSBjb250aW51ZTsKKyAgICAgICAgaWYgKHN0cmNhc2VjbXAodGhpc3NlY3Qsc2UtPm5hbWUpKSBjb250aW51ZTsKKyAgICAgICAgd2lkdGggLT0gc3RybGVuKHBrZy0+bmFtZSk7IHdpZHRoLS07CisgICAgICAgIGlmICh3aWR0aCA8IDQpIHsgcHJpbnRmKCIgLi4uIik7IGJyZWFrOyB9CisgICAgICAgIHByaW50ZigiICVzIixwa2ctPm5hbWUpOworICAgICAgfQorICAgICAgcGtnX2RiX2l0ZXJfZnJlZShpdCk7CisgICAgICBwdXRjaGFyKCdcbicpOworICAgIH0KKyAgfSBlbHNlIHsKKyAgICBwcmludGYoUF8oIiAlZCBwYWNrYWdlLCBmcm9tIHRoZSBmb2xsb3dpbmcgc2VjdGlvbjoiLAorICAgICAgICAgICAgICAiICVkIHBhY2thZ2VzLCBmcm9tIHRoZSBmb2xsb3dpbmcgc2VjdGlvbnM6IiwgdG90YWxjb3VudCksCisgICAgICAgICAgIHRvdGFsY291bnQpOworICAgIHdpZHRoPSAwOworICAgIGZvciAoc2U9IHNlY3Rpb25lbnRyaWVzOyBzZTsgc2U9IHNlLT5uZXh0KSB7CisgICAgICBzcHJpbnRmKGJ1ZiwiJWQiLHNlLT5jb3VudCk7CisgICAgICB3aWR0aCAtPSAoNiArIHN0cmxlbihzZS0+bmFtZSkgKyBzdHJsZW4oYnVmKSk7CisgICAgICBpZiAod2lkdGggPCAwKSB7IHB1dGNoYXIoJ1xuJyk7IHdpZHRoPSA3MyAtIHN0cmxlbihzZS0+bmFtZSkgLSBzdHJsZW4oYnVmKTsgfQorICAgICAgcHJpbnRmKCIgICAlcyAoJWQpIixzZS0+bmFtZSxzZS0+Y291bnQpOworICAgIH0KKyAgICBwdXRjaGFyKCdcbicpOworICB9CisKKyAgbV9vdXRwdXQoc3Rkb3V0LCBfKCI8c3RhbmRhcmQgb3V0cHV0PiIpKTsKKworICByZXR1cm4gMDsKK30KKworc3RhdGljIGludAorYXNzZXJ0X3ZlcnNpb25fc3VwcG9ydChjb25zdCBjaGFyICpjb25zdCAqYXJndiwKKyAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0IHZlcnNpb25yZXZpc2lvbiAqdmVyc2lvbiwKKyAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZmVhdHVyZV9uYW1lKQoreworICBzdHJ1Y3QgcGtnaW5mbyAqcGtnOworCisgIGlmICgqYXJndikKKyAgICBiYWR1c2FnZShfKCItLSVzIHRha2VzIG5vIGFyZ3VtZW50cyIpLCBjaXBhY3Rpb24tPm9sb25nKTsKKworICBtb2RzdGF0ZGJfb3Blbihtc2RicndfcmVhZG9ubHkpOworCisgIHBrZyA9IHBrZ19kYl9maW5kKCJkcGtnIik7CisgIHN3aXRjaCAocGtnLT5zdGF0dXMpIHsKKyAgY2FzZSBzdGF0X2luc3RhbGxlZDoKKyAgY2FzZSBzdGF0X3RyaWdnZXJzcGVuZGluZzoKKyAgICByZXR1cm4gMDsKKyAgY2FzZSBzdGF0X3VucGFja2VkOiBjYXNlIHN0YXRfaGFsZmNvbmZpZ3VyZWQ6IGNhc2Ugc3RhdF9oYWxmaW5zdGFsbGVkOgorICBjYXNlIHN0YXRfdHJpZ2dlcnNhd2FpdGVkOgorICAgIGlmICh2ZXJzaW9uc2F0aXNmaWVkMygmcGtnLT5jb25maWd2ZXJzaW9uLCB2ZXJzaW9uLCBkdnJfbGF0ZXJlcXVhbCkpCisgICAgICByZXR1cm4gMDsKKyAgICBwcmludGYoXygiVmVyc2lvbiBvZiBkcGtnIHdpdGggd29ya2luZyAlcyBzdXBwb3J0IG5vdCB5ZXQgY29uZmlndXJlZC5cbiIKKyAgICAgICAgICAgICAiIFBsZWFzZSB1c2UgJ2Rwa2cgLS1jb25maWd1cmUgZHBrZycsIGFuZCB0aGVuIHRyeSBhZ2Fpbi5cbiIpLAorICAgICAgICAgICBmZWF0dXJlX25hbWUpOworICAgIHJldHVybiAxOworICBkZWZhdWx0OgorICAgIHByaW50ZihfKCJkcGtnIG5vdCByZWNvcmRlZCBhcyBpbnN0YWxsZWQsIGNhbm5vdCBjaGVjayBmb3IgJXMgc3VwcG9ydCFcbiIpLAorICAgICAgICAgICBmZWF0dXJlX25hbWUpOworICAgIHJldHVybiAxOworICB9Cit9CisKK2ludAorYXNzZXJ0cHJlZGVwKGNvbnN0IGNoYXIgKmNvbnN0ICphcmd2KQoreworICBzdHJ1Y3QgdmVyc2lvbnJldmlzaW9uIHZlcnNpb24gPSB7IDAsICIxLjEuMCIsIE5VTEwgfTsKKworICByZXR1cm4gYXNzZXJ0X3ZlcnNpb25fc3VwcG9ydChhcmd2LCAmdmVyc2lvbiwgXygiUHJlLURlcGVuZHMgZmllbGQiKSk7Cit9CisKK2ludAorYXNzZXJ0ZXBvY2goY29uc3QgY2hhciAqY29uc3QgKmFyZ3YpCit7CisgIHN0cnVjdCB2ZXJzaW9ucmV2aXNpb24gdmVyc2lvbiA9IHsgMCwgIjEuNC4wLjciLCBOVUxMIH07CisKKyAgcmV0dXJuIGFzc2VydF92ZXJzaW9uX3N1cHBvcnQoYXJndiwgJnZlcnNpb24sIF8oImVwb2NoIikpOworfQorCitpbnQKK2Fzc2VydGxvbmdmaWxlbmFtZXMoY29uc3QgY2hhciAqY29uc3QgKmFyZ3YpCit7CisgIHN0cnVjdCB2ZXJzaW9ucmV2aXNpb24gdmVyc2lvbiA9IHsgMCwgIjEuNC4xLjE3IiwgTlVMTCB9OworCisgIHJldHVybiBhc3NlcnRfdmVyc2lvbl9zdXBwb3J0KGFyZ3YsICZ2ZXJzaW9uLCBfKCJsb25nIGZpbGVuYW1lcyIpKTsKK30KKworaW50Cithc3NlcnRtdWx0aWNvbnJlcChjb25zdCBjaGFyICpjb25zdCAqYXJndikKK3sKKyAgc3RydWN0IHZlcnNpb25yZXZpc2lvbiB2ZXJzaW9uID0geyAwLCAiMS40LjEuMTkiLCBOVUxMIH07CisKKyAgcmV0dXJuIGFzc2VydF92ZXJzaW9uX3N1cHBvcnQoYXJndiwgJnZlcnNpb24sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF8oIm11bHRpcGxlIENvbmZsaWN0cyBhbmQgUmVwbGFjZXMiKSk7Cit9CisKKy8qKgorICogUHJpbnQgYSBzaW5nbGUgcGFja2FnZSB3aGljaDoKKyAqICAoYSkgaXMgdGhlIHRhcmdldCBvZiBvbmUgb3IgbW9yZSByZWxldmFudCBwcmVkZXBlbmRlbmNpZXMuCisgKiAgKGIpIGhhcyBpdHNlbGYgbm8gdW5zYXRpc2ZpZWQgcHJlLWRlcGVuZGVuY2llcy4KKyAqCisgKiBJZiBzdWNoIGEgcGFja2FnZSBpcyBwcmVzZW50IG91dHB1dCBpcyB0aGUgUGFja2FnZXMgZmlsZSBlbnRyeSwKKyAqIHdoaWNoIGNhbiBiZSBtYXNzYWdlZCBhcyBhcHByb3ByaWF0ZS4KKyAqCisgKiBFeGl0IHN0YXR1czoKKyAqICAwID0gYSBwYWNrYWdlIHByaW50ZWQsIE9LCisgKiAgMSA9IG5vIHN1aXRhYmxlIHBhY2thZ2UgYXZhaWxhYmxlCisgKiAgMiA9IGVycm9yCisgKi8KK2ludAorcHJlZGVwcGFja2FnZShjb25zdCBjaGFyICpjb25zdCAqYXJndikKK3sKKyAgc3RhdGljIHN0cnVjdCB2YXJidWYgdmI7CisKKyAgc3RydWN0IHBrZ2l0ZXJhdG9yICppdDsKKyAgc3RydWN0IHBrZ2luZm8gKnBrZyA9IE5VTEwsICpzdGFydHBrZywgKnRyeXBrZzsKKyAgc3RydWN0IGRlcGVuZGVuY3kgKmRlcDsKKyAgc3RydWN0IGRlcHBvc3NpICpwb3NzaSwgKnByb3ZpZGVyOworCisgIGlmICgqYXJndikKKyAgICBiYWR1c2FnZShfKCItLSVzIHRha2VzIG5vIGFyZ3VtZW50cyIpLCBjaXBhY3Rpb24tPm9sb25nKTsKKworICBtb2RzdGF0ZGJfb3Blbihtc2RicndfcmVhZG9ubHkgfCBtc2RicndfYXZhaWxhYmxlX3JlYWRvbmx5KTsKKyAgLyogV2UgdXNlIGNsaWVudGRhdGEtPmlzdG9iZSB0byBkZXRlY3QgbG9vcHMuICovCisgIGNsZWFyX2lzdG9iZXMoKTsKKworICBkZXAgPSBOVUxMOworICBpdCA9IHBrZ19kYl9pdGVyX25ldygpOworICB3aGlsZSAoIWRlcCAmJiAocGtnID0gcGtnX2RiX2l0ZXJfbmV4dChpdCkpKSB7CisgICAgLyogSWdub3JlIHBhY2thZ2VzIHVzZXIgZG9lc24ndCB3YW50LiAqLworICAgIGlmIChwa2ctPndhbnQgIT0gd2FudF9pbnN0YWxsKQorICAgICAgY29udGludWU7CisgICAgLyogSWdub3JlIHBhY2thZ2VzIG5vdCBhdmFpbGFibGUuICovCisgICAgaWYgKCFwa2ctPmZpbGVzKQorICAgICAgY29udGludWU7CisgICAgcGtnLT5jbGllbnRkYXRhLT5pc3RvYmU9IGl0Yl9wcmVpbnN0YWxsOworICAgIGZvciAoZGVwPSBwa2ctPmF2YWlsYWJsZS5kZXBlbmRzOyBkZXA7IGRlcD0gZGVwLT5uZXh0KSB7CisgICAgICBpZiAoZGVwLT50eXBlICE9IGRlcF9wcmVkZXBlbmRzKSBjb250aW51ZTsKKyAgICAgIGlmIChkZXBpc29rKGRlcCwgJnZiLCBOVUxMLCBOVUxMLCB0cnVlKSkKKyAgICAgICAgY29udGludWU7CisgICAgICAvKiBUaGlzIHdpbGwgbGVhdmUgZGVwIG5vbi1OVUxMLCBhbmQgc28gZXhpdCB0aGUgbG9vcC4gKi8KKyAgICAgIGJyZWFrOworICAgIH0KKyAgICBwa2ctPmNsaWVudGRhdGEtPmlzdG9iZT0gaXRiX25vcm1hbDsKKyAgICAvKiBJZiBkZXAgaXMgTlVMTCB3ZSBnbyBhbmQgZ2V0IHRoZSBuZXh0IHBhY2thZ2UuICovCisgIH0KKyAgcGtnX2RiX2l0ZXJfZnJlZShpdCk7CisKKyAgaWYgKCFkZXApCisgICAgcmV0dXJuIDE7IC8qIE5vdCBmb3VuZC4gKi8KKyAgYXNzZXJ0KHBrZyk7CisgIHN0YXJ0cGtnPSBwa2c7CisgIHBrZy0+Y2xpZW50ZGF0YS0+aXN0b2JlPSBpdGJfcHJlaW5zdGFsbDsKKworICAvKiBPSywgd2UgaGF2ZSBmb3VuZCBhbiB1bnNhdGlzZmllZCBwcmVkZXBlbmRlbmN5LgorICAgKiBOb3cgZ28gYW5kIGZpbmQgdGhlIGZpcnN0IHRoaW5nIHdlIG5lZWQgdG8gaW5zdGFsbCwgYXMgYSBmaXJzdCBzdGVwCisgICAqIHRvd2FyZHMgc2F0aXNmeWluZyBpdC4gKi8KKyAgZG8geworICAgIC8qIFdlIHNlYXJjaCBmb3IgYSBwYWNrYWdlIHdoaWNoIHdvdWxkIHNhdGlzZnkgZGVwLCBhbmQgcHV0IGl0IGluIHBrZy4gKi8KKyAgICBmb3IgKHBvc3NpID0gZGVwLT5saXN0LCBwa2cgPSBOVUxMOworICAgICAgICAgIXBrZyAmJiBwb3NzaTsKKyAgICAgICAgIHBvc3NpPXBvc3NpLT5uZXh0KSB7CisgICAgICB0cnlwa2c9IHBvc3NpLT5lZDsKKyAgICAgIGlmICh0cnlwa2ctPmZpbGVzICYmIHZlcnNpb25zYXRpc2ZpZWQoJnRyeXBrZy0+YXZhaWxhYmxlLHBvc3NpKSkgeworICAgICAgICBpZiAodHJ5cGtnLT5jbGllbnRkYXRhLT5pc3RvYmUgPT0gaXRiX25vcm1hbCkgeyBwa2c9IHRyeXBrZzsgYnJlYWs7IH0KKyAgICAgIH0KKyAgICAgIGlmIChwb3NzaS0+dmVycmVsICE9IGR2cl9ub25lKSBjb250aW51ZTsKKyAgICAgIGZvciAocHJvdmlkZXI9cG9zc2ktPmVkLT5hdmFpbGFibGUuZGVwZW5kZWQ7CisgICAgICAgICAgICFwa2cgJiYgcHJvdmlkZXI7CisgICAgICAgICAgIHByb3ZpZGVyPXByb3ZpZGVyLT5uZXh0KSB7CisgICAgICAgIGlmIChwcm92aWRlci0+dXAtPnR5cGUgIT0gZGVwX3Byb3ZpZGVzKSBjb250aW51ZTsKKyAgICAgICAgdHJ5cGtnPSBwcm92aWRlci0+dXAtPnVwOworICAgICAgICBpZiAoIXRyeXBrZy0+ZmlsZXMpCisgICAgICAgICAgY29udGludWU7CisgICAgICAgIGlmICh0cnlwa2ctPmNsaWVudGRhdGEtPmlzdG9iZSA9PSBpdGJfbm9ybWFsKSB7IHBrZz0gdHJ5cGtnOyBicmVhazsgfQorICAgICAgfQorICAgIH0KKyAgICBpZiAoIXBrZykgeworICAgICAgdmFyYnVmX3Jlc2V0KCZ2Yik7CisgICAgICBkZXNjcmliZWRlcGNvbigmdmIsZGVwKTsKKyAgICAgIHZhcmJ1Zl9lbmRfc3RyKCZ2Yik7CisgICAgICBmcHJpbnRmKHN0ZGVyciwgXygiZHBrZzogY2Fubm90IHNlZSBob3cgdG8gc2F0aXNmeSBwcmUtZGVwZW5kZW5jeTpcbiAlc1xuIiksdmIuYnVmKTsKKyAgICAgIG9oc2hpdChfKCJjYW5ub3Qgc2F0aXNmeSBwcmUtZGVwZW5kZW5jaWVzIGZvciAlLjI1MHMgKHdhbnRlZCBkdWUgdG8gJS4yNTBzKSIpLAorICAgICAgICAgICAgIGRlcC0+dXAtPm5hbWUsc3RhcnRwa2ctPm5hbWUpOworICAgIH0KKyAgICBwa2ctPmNsaWVudGRhdGEtPmlzdG9iZT0gaXRiX3ByZWluc3RhbGw7CisgICAgZm9yIChkZXA9IHBrZy0+YXZhaWxhYmxlLmRlcGVuZHM7IGRlcDsgZGVwPSBkZXAtPm5leHQpIHsKKyAgICAgIGlmIChkZXAtPnR5cGUgIT0gZGVwX3ByZWRlcGVuZHMpIGNvbnRpbnVlOworICAgICAgaWYgKGRlcGlzb2soZGVwLCAmdmIsIE5VTEwsIE5VTEwsIHRydWUpKQorICAgICAgICBjb250aW51ZTsKKyAgICAgIC8qIFRoaXMgd2lsbCBsZWF2ZSBkZXAgbm9uLU5VTEwsIGFuZCBzbyBleGl0IHRoZSBsb29wLiAqLworICAgICAgYnJlYWs7CisgICAgfQorICB9IHdoaWxlIChkZXApOworCisgIC8qIE9LLCB3ZSd2ZSBmb3VuZCBpdCAtIHBrZyBoYXMgbm8gdW5zYXRpc2ZpZWQgcHJlLWRlcGVuZGVuY2llcyEgKi8KKyAgd3JpdGVyZWNvcmQoc3Rkb3V0LCBfKCI8c3RhbmRhcmQgb3V0cHV0PiIpLCBwa2csICZwa2ctPmF2YWlsYWJsZSk7CisKKyAgbV9vdXRwdXQoc3Rkb3V0LCBfKCI8c3RhbmRhcmQgb3V0cHV0PiIpKTsKKworICByZXR1cm4gMDsKK30KKworaW50CitwcmludGFyY2goY29uc3QgY2hhciAqY29uc3QgKmFyZ3YpCit7CisgIGlmICgqYXJndikKKyAgICBiYWR1c2FnZShfKCItLSVzIHRha2VzIG5vIGFyZ3VtZW50cyIpLCBjaXBhY3Rpb24tPm9sb25nKTsKKworICBwcmludGYoIiVzXG4iLCBuYXRpdmVfYXJjaCk7CisKKyAgbV9vdXRwdXQoc3Rkb3V0LCBfKCI8c3RhbmRhcmQgb3V0cHV0PiIpKTsKKworICByZXR1cm4gMDsKK30KKworaW50CitwcmludGluc3RhcmNoKGNvbnN0IGNoYXIgKmNvbnN0ICphcmd2KQoreworICB3YXJuaW5nKF8oIm9ic29sZXRlIG9wdGlvbiAnLS0lcycsIHBsZWFzZSB1c2UgJy0tJXMnIGluc3RlYWQuIiksCisgICAgICAgICAgInByaW50LWluc3RhbGxhdGlvbi1hcmNoaXRlY3R1cmUiLCAicHJpbnQtYXJjaGl0ZWN0dXJlIik7CisgIHJldHVybiBwcmludGFyY2goYXJndik7Cit9CisKK2ludAorY21wdmVyc2lvbnMoY29uc3QgY2hhciAqY29uc3QgKmFyZ3YpCit7CisgIHN0cnVjdCByZWxhdGlvbmluZm8geworICAgIGNvbnN0IGNoYXIgKnN0cmluZzsKKyAgICAvKiBUaGVzZSB2YWx1ZXMgYXJlIGV4aXQgc3RhdHVzIGNvZGVzLCBzbyAwID0gdHJ1ZSwgMSA9IGZhbHNlLiAqLworICAgIGludCBpZl9sZXNzZXIsIGlmX2VxdWFsLCBpZl9ncmVhdGVyOworICAgIGludCBpZl9ub25lX2EsIGlmX25vbmVfYm90aCwgaWZfbm9uZV9iOworICB9OworCisgIHN0YXRpYyBjb25zdCBzdHJ1Y3QgcmVsYXRpb25pbmZvIHJlbGF0aW9uaW5mb3NbXT0geworICAgIC8qICAgICAgICAgICAgIDwgPSA+ICFhITIhYiAgKi8KKyAgICB7ICJsZSIsICAgICAgICAwLDAsMSwgMCwwLDEgIH0sCisgICAgeyAibHQiLCAgICAgICAgMCwxLDEsIDAsMSwxICB9LAorICAgIHsgImVxIiwgICAgICAgIDEsMCwxLCAxLDAsMSAgfSwKKyAgICB7ICJuZSIsICAgICAgICAwLDEsMCwgMCwxLDAgIH0sCisgICAgeyAiZ2UiLCAgICAgICAgMSwwLDAsIDEsMCwwICB9LAorICAgIHsgImd0IiwgICAgICAgIDEsMSwwLCAxLDEsMCAgfSwKKworICAgIC8qIFRoZXNlIHRyZWF0IGFuIGVtcHR5IHZlcnNpb24gYXMgbGF0ZXIgdGhhbiBhbnkgdmVyc2lvbi4gKi8KKyAgICB7ICJsZS1ubCIsICAgICAwLDAsMSwgMSwwLDAgIH0sCisgICAgeyAibHQtbmwiLCAgICAgMCwxLDEsIDEsMSwwICB9LAorICAgIHsgImdlLW5sIiwgICAgIDEsMCwwLCAwLDAsMSAgfSwKKyAgICB7ICJndC1ubCIsICAgICAxLDEsMCwgMCwxLDEgIH0sCisKKyAgICAvKiBGb3IgY29tcGF0aWJpbGl0eSB3aXRoIGRwa2cgY29udHJvbCBmaWxlIHN5bnRheC4gKi8KKyAgICB7ICI8IiwgICAgICAgICAwLDAsMSwgMCwwLDEgIH0sCisgICAgeyAiPD0iLCAgICAgICAgMCwwLDEsIDAsMCwxICB9LAorICAgIHsgIjw8IiwgICAgICAgIDAsMSwxLCAwLDEsMSAgfSwKKyAgICB7ICI9IiwgICAgICAgICAxLDAsMSwgMSwwLDEgIH0sCisgICAgeyAiPiIsICAgICAgICAgMSwwLDAsIDEsMCwwICB9LAorICAgIHsgIj49IiwgICAgICAgIDEsMCwwLCAxLDAsMCAgfSwKKyAgICB7ICI+PiIsICAgICAgICAxLDEsMCwgMSwxLDAgIH0sCisgICAgeyBOVUxMICAgICAgICAgICAgICAgICAgICAgICB9CisgIH07CisKKyAgY29uc3Qgc3RydWN0IHJlbGF0aW9uaW5mbyAqcmlwOworICBzdHJ1Y3QgdmVyc2lvbnJldmlzaW9uIGEsIGI7CisgIHN0cnVjdCBkcGtnX2Vycm9yIGVycjsKKyAgaW50IHI7CisKKyAgaWYgKCFhcmd2WzBdIHx8ICFhcmd2WzFdIHx8ICFhcmd2WzJdIHx8IGFyZ3ZbM10pCisgICAgYmFkdXNhZ2UoXygiLS1jb21wYXJlLXZlcnNpb25zIHRha2VzIHRocmVlIGFyZ3VtZW50czoiCisgICAgICAgICAgICAgIiA8dmVyc2lvbj4gPHJlbGF0aW9uPiA8dmVyc2lvbj4iKSk7CisKKyAgZm9yIChyaXA9cmVsYXRpb25pbmZvczsgcmlwLT5zdHJpbmcgJiYgc3RyY21wKHJpcC0+c3RyaW5nLGFyZ3ZbMV0pOyByaXArKyk7CisKKyAgaWYgKCFyaXAtPnN0cmluZykgYmFkdXNhZ2UoXygiLS1jb21wYXJlLXZlcnNpb25zIGJhZCByZWxhdGlvbiIpKTsKKworICBpZiAoKmFyZ3ZbMF0gJiYgc3RyY21wKGFyZ3ZbMF0sIjx1bmtub3duPiIpKSB7CisgICAgaWYgKHBhcnNldmVyc2lvbigmYSwgYXJndlswXSwgJmVycikgPCAwKSB7CisgICAgICBpZiAoZXJyLnR5cGUgPT0gRFBLR19NU0dfV0FSTikKKyAgICAgICAgd2FybmluZyhfKCJ2ZXJzaW9uICclcycgaGFzIGJhZCBzeW50YXg6ICVzIiksIGFyZ3ZbMF0sIGVyci5zdHIpOworICAgICAgZWxzZQorICAgICAgICBvaHNoaXQoXygidmVyc2lvbiAnJXMnIGhhcyBiYWQgc3ludGF4OiAlcyIpLCBhcmd2WzBdLCBlcnIuc3RyKTsKKyAgICAgIGRwa2dfZXJyb3JfZGVzdHJveSgmZXJyKTsKKyAgICB9CisgIH0gZWxzZSB7CisgICAgYmxhbmt2ZXJzaW9uKCZhKTsKKyAgfQorICBpZiAoKmFyZ3ZbMl0gJiYgc3RyY21wKGFyZ3ZbMl0sIjx1bmtub3duPiIpKSB7CisgICAgaWYgKHBhcnNldmVyc2lvbigmYiwgYXJndlsyXSwgJmVycikgPCAwKSB7CisgICAgICBpZiAoZXJyLnR5cGUgPT0gRFBLR19NU0dfV0FSTikKKyAgICAgICAgd2FybmluZyhfKCJ2ZXJzaW9uICclcycgaGFzIGJhZCBzeW50YXg6ICVzIiksIGFyZ3ZbMl0sIGVyci5zdHIpOworICAgICAgZWxzZQorICAgICAgICBvaHNoaXQoXygidmVyc2lvbiAnJXMnIGhhcyBiYWQgc3ludGF4OiAlcyIpLCBhcmd2WzJdLCBlcnIuc3RyKTsKKyAgICAgIGRwa2dfZXJyb3JfZGVzdHJveSgmZXJyKTsKKyAgICB9CisgIH0gZWxzZSB7CisgICAgYmxhbmt2ZXJzaW9uKCZiKTsKKyAgfQorICBpZiAoIWluZm9ybWF0aXZldmVyc2lvbigmYSkpIHsKKyAgICByZXR1cm4gaW5mb3JtYXRpdmV2ZXJzaW9uKCZiKSA/IHJpcC0+aWZfbm9uZV9hIDogcmlwLT5pZl9ub25lX2JvdGg7CisgIH0gZWxzZSBpZiAoIWluZm9ybWF0aXZldmVyc2lvbigmYikpIHsKKyAgICByZXR1cm4gcmlwLT5pZl9ub25lX2I7CisgIH0KKyAgcj0gdmVyc2lvbmNvbXBhcmUoJmEsJmIpOworICBkZWJ1ZyhkYmdfZ2VuZXJhbCwiY21wdmVyc2lvbnMgYT1gJXMnIGI9YCVzJyByPSVkIiwKKyAgICAgICAgdmVyc2lvbmRlc2NyaWJlKCZhLHZkZXdfYWx3YXlzKSwKKyAgICAgICAgdmVyc2lvbmRlc2NyaWJlKCZiLHZkZXdfYWx3YXlzKSwKKyAgICAgICAgcik7CisgIGlmIChyID4gMCkKKyAgICByZXR1cm4gcmlwLT5pZl9ncmVhdGVyOworICBlbHNlIGlmIChyIDwgMCkKKyAgICByZXR1cm4gcmlwLT5pZl9sZXNzZXI7CisgIGVsc2UKKyAgICByZXR1cm4gcmlwLT5pZl9lcXVhbDsKK30KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc3JjL2Vycm9ycy5jIGIvZHBrZy0xLjE2LjEuMS9zcmMvZXJyb3JzLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uY2UwNDIxMgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc3JjL2Vycm9ycy5jCkBAIC0wLDAgKzEsMTI3IEBACisvKgorICogZHBrZyAtIG1haW4gcHJvZ3JhbSBmb3IgcGFja2FnZSBtYW5hZ2VtZW50CisgKiBlcnJvcnMuYyAtIHBlciBwYWNrYWdlIGVycm9yIGhhbmRsaW5nCisgKgorICogQ29weXJpZ2h0IMKpIDE5OTQsMTk5NSBJYW4gSmFja3NvbiA8aWFuQGNoaWFyay5ncmVlbmVuZC5vcmcudWs+CisgKgorICogVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisgKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAqIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorICovCisKKyNpbmNsdWRlIDxjb25maWcuaD4KKyNpbmNsdWRlIDxjb21wYXQuaD4KKworI2luY2x1ZGUgPHN5cy90eXBlcy5oPgorI2luY2x1ZGUgPHN5cy9zdGF0Lmg+CisjaW5jbHVkZSA8c3lzL3dhaXQuaD4KKworI2luY2x1ZGUgPGVycm5vLmg+CisjaW5jbHVkZSA8bGltaXRzLmg+CisjaW5jbHVkZSA8Y3R5cGUuaD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDxkaXJlbnQuaD4KKyNpbmNsdWRlIDx1bmlzdGQuaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlIDxzdGRpby5oPgorCisjaW5jbHVkZSA8ZHBrZy9pMThuLmg+CisjaW5jbHVkZSA8ZHBrZy9kcGtnLmg+CisjaW5jbHVkZSA8ZHBrZy9kcGtnLWRiLmg+CisjaW5jbHVkZSA8ZHBrZy9vcHRpb25zLmg+CisKKyNpbmNsdWRlICJtYWluLmgiCisKK2Jvb2wgYWJvcnRfcHJvY2Vzc2luZyA9IGZhbHNlOworCitzdGF0aWMgaW50IG5lcnJzID0gMDsKKworc3RydWN0IGVycm9yX3JlcG9ydCB7CisgIHN0cnVjdCBlcnJvcl9yZXBvcnQgKm5leHQ7CisgIGNvbnN0IGNoYXIgKndoYXQ7Cit9OworCitzdGF0aWMgc3RydWN0IGVycm9yX3JlcG9ydCAqcmVwb3J0cyA9IE5VTEw7CitzdGF0aWMgc3RydWN0IGVycm9yX3JlcG9ydCAqKmxhc3RyZXBvcnQ9ICZyZXBvcnRzOworc3RhdGljIHN0cnVjdCBlcnJvcl9yZXBvcnQgZW1lcmdlbmN5OworCit2b2lkIHByaW50X2Vycm9yX3BlcnBhY2thZ2UoY29uc3QgY2hhciAqZW1zZywgY29uc3QgY2hhciAqYXJnKSB7CisgIHN0cnVjdCBlcnJvcl9yZXBvcnQgKm5yOworCisgIGZwcmludGYoc3RkZXJyLCBfKCIlczogZXJyb3IgcHJvY2Vzc2luZyAlcyAoLS0lcyk6XG4gJXNcbiIpLAorICAgICAgICAgIGRwa2dfZ2V0X3Byb2duYW1lKCksIGFyZywgY2lwYWN0aW9uLT5vbG9uZywgZW1zZyk7CisKKyAgc3RhdHVzZmRfc2VuZCgic3RhdHVzOiAlcyA6ICVzIDogJXMiLCBhcmcsICJlcnJvciIsIGVtc2cpOworCisgIG5yPSBtYWxsb2Moc2l6ZW9mKHN0cnVjdCBlcnJvcl9yZXBvcnQpKTsKKyAgaWYgKCFucikgeworICAgIGZwcmludGYoc3RkZXJyLAorICAgICAgICAgICAgXygiJXM6IGZhaWxlZCB0byBhbGxvY2F0ZSBtZW1vcnkgZm9yIG5ldyBlbnRyeSBpbiBsaXN0IG9mIGZhaWxlZCBwYWNrYWdlczogJXMiKSwKKyAgICAgICAgICAgIGRwa2dfZ2V0X3Byb2duYW1lKCksIHN0cmVycm9yKGVycm5vKSk7CisgICAgYWJvcnRfcHJvY2Vzc2luZyA9IHRydWU7CisgICAgbnI9ICZlbWVyZ2VuY3k7CisgIH0KKyAgbnItPndoYXQ9IGFyZzsKKyAgbnItPm5leHQgPSBOVUxMOworICAqbGFzdHJlcG9ydD0gbnI7CisgIGxhc3RyZXBvcnQ9ICZuci0+bmV4dDsKKworICBpZiAobmVycnMrKyA8IGVycmFib3J0KSByZXR1cm47CisgIGZwcmludGYoc3RkZXJyLCBfKCIlczogdG9vIG1hbnkgZXJyb3JzLCBzdG9wcGluZ1xuIiksIGRwa2dfZ2V0X3Byb2duYW1lKCkpOworICBhYm9ydF9wcm9jZXNzaW5nID0gdHJ1ZTsKK30KKworaW50CityZXBvcnRicm9rZW5fcmV0ZXhpdHN0YXR1cyhpbnQgcmV0KQoreworICBpZiAocmVwb3J0cykgeworICAgIGZwdXRzKF8oIkVycm9ycyB3ZXJlIGVuY291bnRlcmVkIHdoaWxlIHByb2Nlc3Npbmc6XG4iKSxzdGRlcnIpOworICAgIHdoaWxlIChyZXBvcnRzKSB7CisgICAgICBmcHJpbnRmKHN0ZGVyciwiICVzXG4iLHJlcG9ydHMtPndoYXQpOworICAgICAgcmVwb3J0cz0gcmVwb3J0cy0+bmV4dDsKKyAgICB9CisgIH0KKyAgaWYgKGFib3J0X3Byb2Nlc3NpbmcpIHsKKyAgICBmcHV0cyhfKCJQcm9jZXNzaW5nIHdhcyBoYWx0ZWQgYmVjYXVzZSB0aGVyZSB3ZXJlIHRvbyBtYW55IGVycm9ycy5cbiIpLHN0ZGVycik7CisgIH0KKyAgcmV0dXJuIG5lcnJzID8gMSA6IHJldDsKK30KKworYm9vbAorc2tpcF9kdWVfdG9faG9sZChzdHJ1Y3QgcGtnaW5mbyAqcGtnKQoreworICBpZiAocGtnLT53YW50ICE9IHdhbnRfaG9sZCkKKyAgICByZXR1cm4gZmFsc2U7CisgIGlmIChmY19ob2xkKSB7CisgICAgZnByaW50ZihzdGRlcnIsIF8oIlBhY2thZ2UgJXMgd2FzIG9uIGhvbGQsIHByb2Nlc3NpbmcgaXQgYW55d2F5IGFzIHlvdSByZXF1ZXN0ZWRcbiIpLAorICAgICAgICAgICAgcGtnLT5uYW1lKTsKKyAgICByZXR1cm4gZmFsc2U7CisgIH0KKyAgcHJpbnRmKF8oIlBhY2thZ2UgJXMgaXMgb24gaG9sZCwgbm90IHRvdWNoaW5nIGl0LiAgVXNlIC0tZm9yY2UtaG9sZCB0byBvdmVycmlkZS5cbiIpLAorICAgICAgICAgcGtnLT5uYW1lKTsKKyAgcmV0dXJuIHRydWU7Cit9CisKK3ZvaWQgZm9yY2libGVlcnIoaW50IGZvcmNlZmxhZywgY29uc3QgY2hhciAqZm10LCAuLi4pIHsKKyAgdmFfbGlzdCBhcmdzOworCisgIHZhX3N0YXJ0KGFyZ3MsIGZtdCk7CisgIGlmIChmb3JjZWZsYWcpIHsKKyAgICB3YXJuaW5nKF8oIm92ZXJyaWRpbmcgcHJvYmxlbSBiZWNhdXNlIC0tZm9yY2UgZW5hYmxlZDoiKSk7CisgICAgZnB1dGMoJyAnLCBzdGRlcnIpOworICAgIHZmcHJpbnRmKHN0ZGVyciwgZm10LCBhcmdzKTsKKyAgICBmcHV0YygnXG4nLHN0ZGVycik7CisgIH0gZWxzZSB7CisgICAgb2hzaGl0dihmbXQsIGFyZ3MpOworICB9CisgIHZhX2VuZChhcmdzKTsKK30KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc3JjL2ZpbGVzZGIuYyBiL2Rwa2ctMS4xNi4xLjEvc3JjL2ZpbGVzZGIuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45OTBhNDg4Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zcmMvZmlsZXNkYi5jCkBAIC0wLDAgKzEsNjg0IEBACisvKgorICogZHBrZyAtIG1haW4gcHJvZ3JhbSBmb3IgcGFja2FnZSBtYW5hZ2VtZW50CisgKiBmaWxlc2RiLmMgLSBtYW5hZ2VtZW50IG9mIGRhdGFiYXNlIG9mIGZpbGVzIGluc3RhbGxlZCBvbiBzeXN0ZW0KKyAqCisgKiBDb3B5cmlnaHQgwqkgMTk5NSBJYW4gSmFja3NvbiA8aWFuQGNoaWFyay5ncmVlbmVuZC5vcmcudWs+CisgKiBDb3B5cmlnaHQgwqkgMjAwMCwyMDAxIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisgKgorICogVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisgKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAqIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorICovCisKKyNpbmNsdWRlIDxjb25maWcuaD4KKyNpbmNsdWRlIDxjb21wYXQuaD4KKworI2lmZGVmIEhBVkVfTElOVVhfRklFTUFQX0gKKyNpbmNsdWRlIDxsaW51eC9maWVtYXAuaD4KKyNpbmNsdWRlIDxsaW51eC9mcy5oPgorI2luY2x1ZGUgPHN5cy9pb2N0bC5oPgorI2VuZGlmCisjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CisjaW5jbHVkZSA8c3lzL3N0YXQuaD4KKworI2luY2x1ZGUgPGFzc2VydC5oPgorI2luY2x1ZGUgPGVycm5vLmg+CisjaW5jbHVkZSA8c3RyaW5nLmg+CisjaW5jbHVkZSA8cHdkLmg+CisjaW5jbHVkZSA8Z3JwLmg+CisjaW5jbHVkZSA8ZmNudGwuaD4KKyNpbmNsdWRlIDx1bmlzdGQuaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKworI2luY2x1ZGUgPGRwa2cvaTE4bi5oPgorI2luY2x1ZGUgPGRwa2cvZHBrZy5oPgorI2luY2x1ZGUgPGRwa2cvZHBrZy1kYi5oPgorI2luY2x1ZGUgPGRwa2cvcGF0aC5oPgorI2luY2x1ZGUgPGRwa2cvZGlyLmg+CisjaW5jbHVkZSA8ZHBrZy9mZGlvLmg+CisjaW5jbHVkZSA8ZHBrZy9wa2ctYXJyYXkuaD4KKyNpbmNsdWRlIDxkcGtnL3Byb2dyZXNzLmg+CisKKyNpbmNsdWRlICJmaWxlc2RiLmgiCisjaW5jbHVkZSAibWFpbi5oIgorCisvKioqIFBhY2thZ2UgY29udHJvbCBpbmZvcm1hdGlvbiBkYXRhYmFzZSBkaXJlY3Rvcnkgcm91dGluZXMuICoqKi8KKworLyoKKyAqIFhYWDogU3RyaWN0bHkgc3BlYWtpbmcgdGhlc2UgZnVuY3Rpb25zIGRvIG5vdCBleGFjdGx5IGJlbG9uZyBoZXJlLCBhbmQKKyAqIHRoZXkgc2hvdWxkIGJlIGV2ZW50dWFsbHkgbW92ZWQgYmFjayB0byBhIHVuaWZpZWQgb24tZGlzayBkYXRhYmFzZQorICogaGFuZGxpbmcgbW9kdWxlIGluIGxpYmRwa2cuIEZvciBub3cgdGhpcyBpcyBnb29kIGVub3VnaCwgYXMgaXQgYXZvaWRzCisgKiBwdWxsaW5nIHVubmVlZGVkIGNvZGUgaW50byB0aGUgcmVzdWx0aW5nIGJpbmFyaWVzLCBiZWNhdXNlIGFsbCBpdHMKKyAqIHVzZXJzIHJlcXVpcmUgZmlsZXNkYiBhbnl3YXkuCisgKi8KKworc3RhdGljIGNoYXIgKmluZm9kaXI7CisKK3N0YXRpYyB2b2lkCitwa2dhZG1pbmRpcl9pbml0KHZvaWQpCit7CisgIGluZm9kaXIgPSBkcGtnX2RiX2dldF9wYXRoKElORk9ESVIpOworfQorCitjb25zdCBjaGFyICoKK3BrZ2FkbWluZGlyKHZvaWQpCit7CisgIHJldHVybiBpbmZvZGlyOworfQorCitjb25zdCBjaGFyICoKK3BrZ2FkbWluZmlsZShzdHJ1Y3QgcGtnaW5mbyAqcGtnLCBjb25zdCBjaGFyICpmaWxldHlwZSkKK3sKKyAgc3RhdGljIHN0cnVjdCB2YXJidWYgdmI7CisKKyAgdmFyYnVmX3Jlc2V0KCZ2Yik7CisgIHZhcmJ1Zl9hZGRfc3RyKCZ2YiwgaW5mb2Rpcik7CisgIHZhcmJ1Zl9hZGRfY2hhcigmdmIsICcvJyk7CisgIHZhcmJ1Zl9hZGRfc3RyKCZ2YiwgcGtnLT5uYW1lKTsKKyAgdmFyYnVmX2FkZF9jaGFyKCZ2YiwgJy4nKTsKKyAgdmFyYnVmX2FkZF9zdHIoJnZiLCBmaWxldHlwZSk7CisgIHZhcmJ1Zl9lbmRfc3RyKCZ2Yik7CisKKyAgcmV0dXJuIHZiLmJ1ZjsKK30KKworLyoqKiBmaWxlcGFja2FnZXMgc3VwcG9ydCBmb3IgdHJhY2tpbmcgcGFja2FnZXMgb3duaW5nIGEgZmlsZS4gKioqLworCisjZGVmaW5lIFBFUkZJTEVQQUNLQUdFU0xVTVAgMTAKKworc3RydWN0IGZpbGVwYWNrYWdlcyB7CisgIHN0cnVjdCBmaWxlcGFja2FnZXMgKm1vcmU7CisKKyAgLyogcGtncyBpcyBhIE5VTEwtcG9pbnRlci10ZXJtaW5hdGVkIGxpc3Q7IGFueXRoaW5nIGFmdGVyIHRoZSBmaXJzdCBOVUxMCisgICAqIGlzIGdhcmJhZ2UuICovCisgIHN0cnVjdCBwa2dpbmZvICpwa2dzW1BFUkZJTEVQQUNLQUdFU0xVTVBdOworfTsKKworc3RydWN0IGZpbGVwYWNrYWdlc19pdGVyYXRvciB7CisgIHN0cnVjdCBmaWxlcGFja2FnZXMgKnBrZ19sdW1wOworICBpbnQgcGtnX2lkeDsKK307CisKK3N0cnVjdCBmaWxlcGFja2FnZXNfaXRlcmF0b3IgKgorZmlsZXBhY2thZ2VzX2l0ZXJfbmV3KHN0cnVjdCBmaWxlbmFtZW5vZGUgKmZubikKK3sKKyAgc3RydWN0IGZpbGVwYWNrYWdlc19pdGVyYXRvciAqaXRlcjsKKworICBpdGVyID0gbV9tYWxsb2Moc2l6ZW9mKCppdGVyKSk7CisgIGl0ZXItPnBrZ19sdW1wICA9IGZubi0+cGFja2FnZXM7CisgIGl0ZXItPnBrZ19pZHggPSAwOworCisgIHJldHVybiBpdGVyOworfQorCitzdHJ1Y3QgcGtnaW5mbyAqCitmaWxlcGFja2FnZXNfaXRlcl9uZXh0KHN0cnVjdCBmaWxlcGFja2FnZXNfaXRlcmF0b3IgKml0ZXIpCit7CisgIHN0cnVjdCBwa2dpbmZvICpwa2c7CisKKyAgd2hpbGUgKGl0ZXItPnBrZ19sdW1wKSB7CisgICAgcGtnID0gaXRlci0+cGtnX2x1bXAtPnBrZ3NbaXRlci0+cGtnX2lkeF07CisKKyAgICBpZiAoaXRlci0+cGtnX2lkeCA8IFBFUkZJTEVQQUNLQUdFU0xVTVAgJiYgcGtnKSB7CisgICAgICBpdGVyLT5wa2dfaWR4Kys7CisgICAgICByZXR1cm4gcGtnOworICAgIH0gZWxzZSB7CisgICAgICBpdGVyLT5wa2dfbHVtcCA9IGl0ZXItPnBrZ19sdW1wLT5tb3JlOworICAgICAgaXRlci0+cGtnX2lkeCA9IDA7CisgICAgfQorICB9CisKKyAgcmV0dXJuIE5VTEw7Cit9CisKK3ZvaWQKK2ZpbGVwYWNrYWdlc19pdGVyX2ZyZWUoc3RydWN0IGZpbGVwYWNrYWdlc19pdGVyYXRvciAqaXRlcikKK3sKKyAgZnJlZShpdGVyKTsKK30KKworLyoqKiBHZW5lcmljIGRhdGEgc3RydWN0dXJlcyBhbmQgcm91dGluZXMuICoqKi8KKworc3RhdGljIGJvb2wgYWxscGFja2FnZXNkb25lID0gZmFsc2U7CitzdGF0aWMgaW50IG5maWxlcz0gMDsKKwordm9pZAorZW5zdXJlX3BhY2thZ2VfY2xpZW50ZGF0YShzdHJ1Y3QgcGtnaW5mbyAqcGtnKQoreworICBpZiAocGtnLT5jbGllbnRkYXRhKQorICAgIHJldHVybjsKKyAgcGtnLT5jbGllbnRkYXRhID0gbmZtYWxsb2Moc2l6ZW9mKHN0cnVjdCBwZXJwYWNrYWdlc3RhdGUpKTsKKyAgcGtnLT5jbGllbnRkYXRhLT5pc3RvYmUgPSBpdGJfbm9ybWFsOworICBwa2ctPmNsaWVudGRhdGEtPmNvbG9yID0gd2hpdGU7CisgIHBrZy0+Y2xpZW50ZGF0YS0+ZmlsZXNsaXN0dmFsaWQgPSBmYWxzZTsKKyAgcGtnLT5jbGllbnRkYXRhLT5maWxlcyA9IE5VTEw7CisgIHBrZy0+Y2xpZW50ZGF0YS0+bGlzdGZpbGVfcGh5c19vZmZzID0gMDsKKyAgcGtnLT5jbGllbnRkYXRhLT50cmlncHJvY2RlZmVycmVkID0gTlVMTDsKK30KKwordm9pZCBub3RlX211c3RfcmVyZWFkX2ZpbGVzX2lucGFja2FnZShzdHJ1Y3QgcGtnaW5mbyAqcGtnKSB7CisgIGFsbHBhY2thZ2VzZG9uZSA9IGZhbHNlOworICBlbnN1cmVfcGFja2FnZV9jbGllbnRkYXRhKHBrZyk7CisgIHBrZy0+Y2xpZW50ZGF0YS0+ZmlsZXNsaXN0dmFsaWQgPSBmYWxzZTsKK30KKworc3RhdGljIGludCBzYWlkcmVhZD0wOworCisvKioKKyAqIEVyYXNlIHRoZSBmaWxlcyBzYXZlZCBpbiBwa2cuCisgKi8KK3N0YXRpYyB2b2lkCitwa2dfZmlsZXNfYmxhbmsoc3RydWN0IHBrZ2luZm8gKnBrZykKK3sKKyAgc3RydWN0IGZpbGVpbmxpc3QgKmN1cnJlbnQ7CisgIHN0cnVjdCBmaWxlcGFja2FnZXMgKnBhY2thZ2VzbHVtcDsKKyAgaW50IHNlYXJjaCwgZmluZGxhc3Q7CisKKyAgLyogQW55dGhpbmcgdG8gZW1wdHk/ICovCisgIGlmICghcGtnLT5jbGllbnRkYXRhKQorICAgIHJldHVybjsKKworICBmb3IgKGN1cnJlbnQ9IHBrZy0+Y2xpZW50ZGF0YS0+ZmlsZXM7CisgICAgICAgY3VycmVudDsKKyAgICAgICBjdXJyZW50PSBjdXJyZW50LT5uZXh0KSB7CisgICAgLyogRm9yIGVhY2ggZmlsZSB0aGF0IHVzZWQgdG8gYmUgaW4gdGhlIHBhY2thZ2UsCisgICAgICogZ28gdGhyb3VnaCBsb29raW5nIGZvciB0aGlzIHBhY2thZ2UncyBlbnRyeSBpbiB0aGUgbGlzdAorICAgICAqIG9mIHBhY2thZ2VzIGNvbnRhaW5pbmcgdGhpcyBmaWxlLCBhbmQgYmxhbmsgaXQgb3V0LiAqLworICAgIGZvciAocGFja2FnZXNsdW1wPSBjdXJyZW50LT5uYW1lbm9kZS0+cGFja2FnZXM7CisgICAgICAgICBwYWNrYWdlc2x1bXA7CisgICAgICAgICBwYWNrYWdlc2x1bXA9IHBhY2thZ2VzbHVtcC0+bW9yZSkKKyAgICAgIGZvciAoc2VhcmNoPSAwOworICAgICAgICAgICBzZWFyY2ggPCBQRVJGSUxFUEFDS0FHRVNMVU1QICYmIHBhY2thZ2VzbHVtcC0+cGtnc1tzZWFyY2hdOworICAgICAgICAgICBzZWFyY2grKykKKyAgICAgICAgaWYgKHBhY2thZ2VzbHVtcC0+cGtnc1tzZWFyY2hdID09IHBrZykgeworICAgICAgICAgIC8qIEhhaCEgIEZvdW5kIGl0LiAqLworICAgICAgICAgIGZvciAoZmluZGxhc3Q9IHNlYXJjaCsxOworICAgICAgICAgICAgICAgZmluZGxhc3QgPCBQRVJGSUxFUEFDS0FHRVNMVU1QICYmIHBhY2thZ2VzbHVtcC0+cGtnc1tmaW5kbGFzdF07CisgICAgICAgICAgICAgICBmaW5kbGFzdCsrKTsKKyAgICAgICAgICBmaW5kbGFzdC0tOworICAgICAgICAgIC8qIGZpbmRsYXN0IGlzIG5vdyB0aGUgbGFzdCBvY2N1cGllZCBlbnRyeSwgd2hpY2ggbWF5IGJlIHRoZSBzYW1lIGFzCisgICAgICAgICAgICogc2VhcmNoLiBXZSBibGFuayBvdXQgdGhlIGVudHJ5IGZvciB0aGlzIHBhY2thZ2UuIFdlIGFsc28KKyAgICAgICAgICAgKiBoYXZlIHRvIGNvcHkgdGhlIGxhc3QgZW50cnkgaW50byB0aGUgZW1wdHkgc2xvdCwgYmVjYXVzZQorICAgICAgICAgICAqIHRoZSBsaXN0IGlzIE5VTEwtcG9pbnRlci10ZXJtaW5hdGVkLiAqLworICAgICAgICAgIHBhY2thZ2VzbHVtcC0+cGtnc1tzZWFyY2hdPSBwYWNrYWdlc2x1bXAtPnBrZ3NbZmluZGxhc3RdOworICAgICAgICAgIHBhY2thZ2VzbHVtcC0+cGtnc1tmaW5kbGFzdF0gPSBOVUxMOworICAgICAgICAgIC8qIFRoaXMgbWF5IHJlc3VsdCBpbiBhbiBlbXB0eSBsaW5rIGluIHRoZSBsaXN0LiBUaGlzIGlzIE9LLiAqLworICAgICAgICAgIGdvdG8geGl0X3NlYXJjaF90b19kZWxldGVfZnJvbV9wZXJmaWxlbm9kZWxpc3Q7CisgICAgICAgIH0KKyAgeGl0X3NlYXJjaF90b19kZWxldGVfZnJvbV9wZXJmaWxlbm9kZWxpc3Q6CisgICAgOworICAgIC8qIFRoZSBhY3R1YWwgZmlsZWxpc3QgbGlua3Mgd2VyZSBhbGxvY2F0ZWQgdXNpbmcgbmZtYWxsb2MsIHNvCisgICAgICogd2Ugc2hvdWxkbid0IGZyZWUgdGhlbS4gKi8KKyAgfQorICBwa2ctPmNsaWVudGRhdGEtPmZpbGVzID0gTlVMTDsKK30KKworc3RhdGljIHN0cnVjdCBmaWxlaW5saXN0ICoqCitwa2dfZmlsZXNfYWRkX2ZpbGUoc3RydWN0IHBrZ2luZm8gKnBrZywgY29uc3QgY2hhciAqZmlsZW5hbWUsCisgICAgICAgICAgICAgICAgICAgZW51bSBmbm5mbGFncyBmbGFncywgc3RydWN0IGZpbGVpbmxpc3QgKipmaWxlX3RhaWwpCit7CisgIHN0cnVjdCBmaWxlaW5saXN0ICpuZXdlbnQ7CisgIHN0cnVjdCBmaWxlcGFja2FnZXMgKnBhY2thZ2VzbHVtcDsKKyAgaW50IHB1dGF0ID0gMDsKKworICBlbnN1cmVfcGFja2FnZV9jbGllbnRkYXRhKHBrZyk7CisKKyAgaWYgKGZpbGVfdGFpbCA9PSBOVUxMKQorICAgIGZpbGVfdGFpbCA9ICZwa2ctPmNsaWVudGRhdGEtPmZpbGVzOworCisgIC8qIE1ha2Ugc3VyZSB3ZSdyZSBhdCB0aGUgZW5kLiAqLworICB3aGlsZSAoKCpmaWxlX3RhaWwpICE9IE5VTEwpIHsKKyAgICBmaWxlX3RhaWwgPSAmKCgqZmlsZV90YWlsKS0+bmV4dCk7CisgIH0KKworICAvKiBDcmVhdGUgYSBuZXcgbm9kZS4gKi8KKyAgbmV3ZW50ID0gbmZtYWxsb2Moc2l6ZW9mKHN0cnVjdCBmaWxlaW5saXN0KSk7CisgIG5ld2VudC0+bmFtZW5vZGUgPSBmaW5kbmFtZW5vZGUoZmlsZW5hbWUsIGZsYWdzKTsKKyAgbmV3ZW50LT5uZXh0ID0gTlVMTDsKKyAgKmZpbGVfdGFpbCA9IG5ld2VudDsKKyAgZmlsZV90YWlsID0gJm5ld2VudC0+bmV4dDsKKworICAvKiBBZGQgcGtnIHRvIG5ld2VudCdzIHBhY2thZ2UgbGlzdC4gKi8KKyAgcGFja2FnZXNsdW1wID0gbmV3ZW50LT5uYW1lbm9kZS0+cGFja2FnZXM7CisgIHB1dGF0ID0gMDsKKyAgaWYgKHBhY2thZ2VzbHVtcCkgeworICAgIHdoaWxlIChwdXRhdCA8IFBFUkZJTEVQQUNLQUdFU0xVTVAgJiYgcGFja2FnZXNsdW1wLT5wa2dzW3B1dGF0XSkKKyAgICAgICBwdXRhdCsrOworICAgIGlmIChwdXRhdCA+PSBQRVJGSUxFUEFDS0FHRVNMVU1QKQorICAgICAgcGFja2FnZXNsdW1wID0gTlVMTDsKKyAgfQorICBpZiAoIXBhY2thZ2VzbHVtcCkgeworICAgIHBhY2thZ2VzbHVtcCA9IG5mbWFsbG9jKHNpemVvZihzdHJ1Y3QgZmlsZXBhY2thZ2VzKSk7CisgICAgcGFja2FnZXNsdW1wLT5tb3JlID0gbmV3ZW50LT5uYW1lbm9kZS0+cGFja2FnZXM7CisgICAgbmV3ZW50LT5uYW1lbm9kZS0+cGFja2FnZXMgPSBwYWNrYWdlc2x1bXA7CisgICAgcHV0YXQgPSAwOworICB9CisgIHBhY2thZ2VzbHVtcC0+cGtnc1twdXRhdF09IHBrZzsKKyAgaWYgKCsrcHV0YXQgPCBQRVJGSUxFUEFDS0FHRVNMVU1QKQorICAgIHBhY2thZ2VzbHVtcC0+cGtnc1twdXRhdF0gPSBOVUxMOworCisgIC8qIFJldHVybiB0aGUgcG9zaXRpb24gZm9yIHRoZSBuZXh0IGd1eS4gKi8KKyAgcmV0dXJuIGZpbGVfdGFpbDsKK30KKworLyoqCisgKiBMb2FkIHRoZSBsaXN0IG9mIGZpbGVzIGluIHRoaXMgcGFja2FnZSBpbnRvIG1lbW9yeSwgb3IgdXBkYXRlIHRoZQorICogbGlzdCBpZiBpdCBpcyB0aGVyZSBidXQgc3RhbGUuCisgKi8KK3ZvaWQKK2Vuc3VyZV9wYWNrYWdlZmlsZXNfYXZhaWxhYmxlKHN0cnVjdCBwa2dpbmZvICpwa2cpCit7CisgIHN0YXRpYyBpbnQgZmQ7CisgIGNvbnN0IGNoYXIgKmZpbGVsaXN0ZmlsZTsKKyAgc3RydWN0IGZpbGVpbmxpc3QgKipsZW5kcDsKKyAgc3RydWN0IHN0YXQgc3RhdF9idWY7CisgIGNoYXIgKmxvYWRlZF9saXN0LCAqbG9hZGVkX2xpc3RfZW5kLCAqdGhpc2xpbmUsICpuZXh0bGluZSwgKnB0cjsKKworICBpZiAocGtnLT5jbGllbnRkYXRhICYmIHBrZy0+Y2xpZW50ZGF0YS0+ZmlsZXNsaXN0dmFsaWQpCisgICAgcmV0dXJuOworICBlbnN1cmVfcGFja2FnZV9jbGllbnRkYXRhKHBrZyk7CisKKyAgLyogVGhyb3cgYXdheSBhbnkgc3RhbGUgZGF0YSwgaWYgdGhlcmUgd2FzIGFueS4gKi8KKyAgcGtnX2ZpbGVzX2JsYW5rKHBrZyk7CisKKyAgLyogUGFja2FnZXMgd2hpY2ggYXJlbid0IGluc3RhbGxlZCBkb24ndCBoYXZlIGEgZmlsZXMgbGlzdC4gKi8KKyAgaWYgKHBrZy0+c3RhdHVzID09IHN0YXRfbm90aW5zdGFsbGVkKSB7CisgICAgcGtnLT5jbGllbnRkYXRhLT5maWxlc2xpc3R2YWxpZCA9IHRydWU7CisgICAgcmV0dXJuOworICB9CisKKyAgZmlsZWxpc3RmaWxlPSBwa2dhZG1pbmZpbGUocGtnLExJU1RGSUxFKTsKKworICBvbmVycl9hYm9ydCsrOworCisgIGZkPSBvcGVuKGZpbGVsaXN0ZmlsZSxPX1JET05MWSk7CisKKyAgaWYgKGZkPT0tMSkgeworICAgIGlmIChlcnJubyAhPSBFTk9FTlQpCisgICAgICBvaHNoaXRlKF8oInVuYWJsZSB0byBvcGVuIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSBgJS4yNTBzJyIpLHBrZy0+bmFtZSk7CisgICAgb25lcnJfYWJvcnQtLTsKKyAgICBpZiAocGtnLT5zdGF0dXMgIT0gc3RhdF9jb25maWdmaWxlcykgeworICAgICAgaWYgKHNhaWRyZWFkID09IDEpIHB1dGMoJ1xuJyxzdGRlcnIpOworICAgICAgd2FybmluZyhfKCJmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcycgbWlzc2luZywgYXNzdW1pbmcgIgorICAgICAgICAgICAgICAgICJwYWNrYWdlIGhhcyBubyBmaWxlcyBjdXJyZW50bHkgaW5zdGFsbGVkLiIpLCBwa2ctPm5hbWUpOworICAgIH0KKyAgICBwa2ctPmNsaWVudGRhdGEtPmZpbGVzID0gTlVMTDsKKyAgICBwa2ctPmNsaWVudGRhdGEtPmZpbGVzbGlzdHZhbGlkID0gdHJ1ZTsKKyAgICByZXR1cm47CisgIH0KKworICBwdXNoX2NsZWFudXAoY3VfY2xvc2VmZCwgZWhmbGFnX2JvbWJvdXQsIE5VTEwsIDAsIDEsICZmZCk7CisKKyAgIGlmKGZzdGF0KGZkLCAmc3RhdF9idWYpKQorICAgICBvaHNoaXRlKF8oInVuYWJsZSB0byBzdGF0IGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAnJS4yNTBzJyIpLAorICAgICAgICAgICAgIHBrZy0+bmFtZSk7CisKKyAgIGlmIChzdGF0X2J1Zi5zdF9zaXplKSB7CisgICAgIGxvYWRlZF9saXN0ID0gbmZtYWxsb2Moc3RhdF9idWYuc3Rfc2l6ZSk7CisgICAgIGxvYWRlZF9saXN0X2VuZCA9IGxvYWRlZF9saXN0ICsgc3RhdF9idWYuc3Rfc2l6ZTsKKworICAgIGlmIChmZF9yZWFkKGZkLCBsb2FkZWRfbGlzdCwgc3RhdF9idWYuc3Rfc2l6ZSkgPCAwKQorICAgICAgb2hzaGl0ZShfKCJyZWFkaW5nIGZpbGVzIGxpc3QgZm9yIHBhY2thZ2UgJyUuMjUwcyciKSwgcGtnLT5uYW1lKTsKKworICAgIGxlbmRwPSAmcGtnLT5jbGllbnRkYXRhLT5maWxlczsKKyAgICB0aGlzbGluZSA9IGxvYWRlZF9saXN0OworICAgIHdoaWxlICh0aGlzbGluZSA8IGxvYWRlZF9saXN0X2VuZCkgeworICAgICAgaWYgKCEocHRyID0gbWVtY2hyKHRoaXNsaW5lLCAnXG4nLCBsb2FkZWRfbGlzdF9lbmQgLSB0aGlzbGluZSkpKQorICAgICAgICBvaHNoaXQoXygiZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICclLjI1MHMnIGlzIG1pc3NpbmcgZmluYWwgbmV3bGluZSIpLAorICAgICAgICAgICAgICAgcGtnLT5uYW1lKTsKKyAgICAgIC8qIFdoZXJlIHRvIHN0YXJ0IG5leHQgdGltZSBhcm91bmQuICovCisgICAgICBuZXh0bGluZSA9IHB0ciArIDE7CisgICAgICAvKiBTdHJpcCB0cmFpbGluZyDigJgv4oCZLiAqLworICAgICAgaWYgKHB0ciA+IHRoaXNsaW5lICYmIHB0clstMV0gPT0gJy8nKSBwdHItLTsKKyAgICAgIC8qIEFkZCB0aGUgZmlsZSB0byB0aGUgbGlzdC4gKi8KKyAgICAgIGlmIChwdHIgPT0gdGhpc2xpbmUpCisgICAgICAgIG9oc2hpdChfKCJmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgYCUuMjUwcycgY29udGFpbnMgZW1wdHkgZmlsZW5hbWUiKSxwa2ctPm5hbWUpOworICAgICAgKnB0ciA9ICdcMCc7CisgICAgICBsZW5kcCA9IHBrZ19maWxlc19hZGRfZmlsZShwa2csIHRoaXNsaW5lLCBmbm5fbm9jb3B5LCBsZW5kcCk7CisgICAgICB0aGlzbGluZSA9IG5leHRsaW5lOworICAgIH0KKyAgfQorICBwb3BfY2xlYW51cChlaGZsYWdfbm9ybWFsdGlkeSk7IC8qIGZkID0gb3BlbigpICovCisgIGlmIChjbG9zZShmZCkpCisgICAgb2hzaGl0ZShfKCJlcnJvciBjbG9zaW5nIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSBgJS4yNTBzJyIpLHBrZy0+bmFtZSk7CisKKyAgb25lcnJfYWJvcnQtLTsKKworICBwa2ctPmNsaWVudGRhdGEtPmZpbGVzbGlzdHZhbGlkID0gdHJ1ZTsKK30KKworI2lmIGRlZmluZWQoSEFWRV9MSU5VWF9GSUVNQVBfSCkKK3N0YXRpYyBpbnQKK3BrZ19zb3J0ZXJfYnlfbGlzdGZpbGVfcGh5c19vZmZzKGNvbnN0IHZvaWQgKmEsIGNvbnN0IHZvaWQgKmIpCit7CisgIGNvbnN0IHN0cnVjdCBwa2dpbmZvICpwYSA9ICooY29uc3Qgc3RydWN0IHBrZ2luZm8gKiopYTsKKyAgY29uc3Qgc3RydWN0IHBrZ2luZm8gKnBiID0gKihjb25zdCBzdHJ1Y3QgcGtnaW5mbyAqKiliOworCisgIC8qIFdlIGNhbid0IHNpbXBseSBzdWJ0cmFjdCwgYmVjYXVzZSB0aGUgZGlmZmVyZW5jZSBtYXkgYmUgZ3JlYXRlciB0aGFuCisgICAqIElOVF9NQVguICovCisgIGlmIChwYS0+Y2xpZW50ZGF0YS0+bGlzdGZpbGVfcGh5c19vZmZzIDwgcGItPmNsaWVudGRhdGEtPmxpc3RmaWxlX3BoeXNfb2ZmcykKKyAgICByZXR1cm4gLTE7CisgIGVsc2UKKyAgICByZXR1cm4gMTsKK30KKworc3RhdGljIHZvaWQKK3BrZ19maWxlc19vcHRpbWl6ZV9sb2FkKHN0cnVjdCBwa2dfYXJyYXkgKmFycmF5KQoreworICBpbnQgaTsKKyAgaW50IGJsb2Nrc2l6ZSA9IDA7CisKKyAgLyogU29ydCBwYWNrYWdlcyBieSB0aGUgcGh5c2ljYWwgbG9jYXRpb24gb2YgdGhlaXIgbGlzdCBmaWxlcywgc28gdGhhdAorICAgKiBzY2FubmluZyB0aGVtIGxhdGVyIHdpbGwgbWluaW1pemUgZGlzayBkcml2ZSBoZWFkIG1vdmVtZW50cy4gKi8KKyAgZm9yIChpID0gMDsgaSA8IGFycmF5LT5uX3BrZ3M7IGkrKykgeworICAgIHN0cnVjdCBwa2dpbmZvICpwa2cgPSBhcnJheS0+cGtnc1tpXTsKKyAgICBzdHJ1Y3QgeworICAgICAgc3RydWN0IGZpZW1hcCBmaWVtYXA7CisgICAgICBzdHJ1Y3QgZmllbWFwX2V4dGVudCBleHRlbnQ7CisgICAgfSBmbTsKKyAgICBjb25zdCBjaGFyICpsaXN0ZmlsZTsKKyAgICBpbnQgZmQ7CisKKyAgICBlbnN1cmVfcGFja2FnZV9jbGllbnRkYXRhKHBrZyk7CisKKyAgICBpZiAocGtnLT5zdGF0dXMgPT0gc3RhdF9ub3RpbnN0YWxsZWQgfHwKKyAgICAgICAgcGtnLT5jbGllbnRkYXRhLT5saXN0ZmlsZV9waHlzX29mZnMgIT0gMCkKKyAgICAgIGNvbnRpbnVlOworCisgICAgcGtnLT5jbGllbnRkYXRhLT5saXN0ZmlsZV9waHlzX29mZnMgPSAtMTsKKworICAgIGxpc3RmaWxlID0gcGtnYWRtaW5maWxlKHBrZywgTElTVEZJTEUpOworCisgICAgZmQgPSBvcGVuKGxpc3RmaWxlLCBPX1JET05MWSk7CisgICAgaWYgKGZkIDwgMCkKKyAgICAgIGNvbnRpbnVlOworCisgICAgaWYgKCFibG9ja3NpemUgJiYgaW9jdGwoZmQsIEZJR0VUQlNaLCAmYmxvY2tzaXplKSA8IDApCisgICAgICBicmVhazsKKworICAgIG1lbXNldCgmZm0sIDAsIHNpemVvZihmbSkpOworICAgIGZtLmZpZW1hcC5mbV9zdGFydCA9IDA7CisgICAgZm0uZmllbWFwLmZtX2xlbmd0aCA9IGJsb2Nrc2l6ZTsKKyAgICBmbS5maWVtYXAuZm1fZmxhZ3MgPSAwOworICAgIGZtLmZpZW1hcC5mbV9leHRlbnRfY291bnQgPSAxOworCisgICAgaWYgKGlvY3RsKGZkLCBGU19JT0NfRklFTUFQLCAodW5zaWduZWQgbG9uZykmZm0pID09IDApCisgICAgICBwa2ctPmNsaWVudGRhdGEtPmxpc3RmaWxlX3BoeXNfb2ZmcyA9IGZtLmZpZW1hcC5mbV9leHRlbnRzWzBdLmZlX3BoeXNpY2FsOworCisgICAgY2xvc2UoZmQpOworICB9CisKKyAgcGtnX2FycmF5X3NvcnQoYXJyYXksIHBrZ19zb3J0ZXJfYnlfbGlzdGZpbGVfcGh5c19vZmZzKTsKK30KKyNlbGlmIGRlZmluZWQoSEFWRV9QT1NJWF9GQURWSVNFKQorc3RhdGljIHZvaWQKK3BrZ19maWxlc19vcHRpbWl6ZV9sb2FkKHN0cnVjdCBwa2dfYXJyYXkgKmFycmF5KQoreworICBpbnQgaTsKKworICAvKiBBc2sgdGhlIGtlcm5lbCB0byBzdGFydCBwcmVsb2FkaW5nIHRoZSBsaXN0IGZpbGVzLCBzbyBhcyB0byBnZXQgYQorICAgKiBib29zdCB3aGVuIGxhdGVyIHdlIGFjdHVhbGx5IGxvYWQgdGhlbS4gKi8KKyAgZm9yIChpID0gMDsgaSA8IGFycmF5LT5uX3BrZ3M7IGkrKykgeworICAgIHN0cnVjdCBwa2dpbmZvICpwa2cgPSBhcnJheS0+cGtnc1tpXTsKKyAgICBjb25zdCBjaGFyICpsaXN0ZmlsZTsKKyAgICBpbnQgZmQ7CisKKyAgICBsaXN0ZmlsZSA9IHBrZ2FkbWluZmlsZShwa2csIExJU1RGSUxFKTsKKworICAgIGZkID0gb3BlbihsaXN0ZmlsZSwgT19SRE9OTFkgfCBPX05PTkJMT0NLKTsKKyAgICBpZiAoZmQgIT0gLTEpIHsKKyAgICAgIHBvc2l4X2ZhZHZpc2UoZmQsIDAsIDAsIFBPU0lYX0ZBRFZfV0lMTE5FRUQpOworICAgICAgY2xvc2UoZmQpOworICAgIH0KKyAgfQorfQorI2Vsc2UKK3N0YXRpYyB2b2lkCitwa2dfZmlsZXNfb3B0aW1pemVfbG9hZChzdHJ1Y3QgcGtnX2FycmF5ICphcnJheSkKK3sKK30KKyNlbmRpZgorCit2b2lkIGVuc3VyZV9hbGxpbnN0ZmlsZXNfYXZhaWxhYmxlKHZvaWQpIHsKKyAgc3RydWN0IHBrZ19hcnJheSBhcnJheTsKKyAgc3RydWN0IHBrZ2luZm8gKnBrZzsKKyAgc3RydWN0IHByb2dyZXNzIHByb2dyZXNzOworICBpbnQgaTsKKworICBpZiAoYWxscGFja2FnZXNkb25lKSByZXR1cm47CisgIGlmIChzYWlkcmVhZDwyKSB7CisgICAgaW50IG1heCA9IHBrZ19kYl9jb3VudCgpOworCisgICAgc2FpZHJlYWQ9MTsKKyAgICBwcm9ncmVzc19pbml0KCZwcm9ncmVzcywgXygiKFJlYWRpbmcgZGF0YWJhc2UgLi4uICIpLCBtYXgpOworICB9CisKKyAgcGtnX2FycmF5X2luaXRfZnJvbV9kYigmYXJyYXkpOworCisgIHBrZ19maWxlc19vcHRpbWl6ZV9sb2FkKCZhcnJheSk7CisKKyAgZm9yIChpID0gMDsgaSA8IGFycmF5Lm5fcGtnczsgaSsrKSB7CisgICAgcGtnID0gYXJyYXkucGtnc1tpXTsKKyAgICBlbnN1cmVfcGFja2FnZWZpbGVzX2F2YWlsYWJsZShwa2cpOworCisgICAgaWYgKHNhaWRyZWFkID09IDEpCisgICAgICBwcm9ncmVzc19zdGVwKCZwcm9ncmVzcyk7CisgIH0KKworICBwa2dfYXJyYXlfZGVzdHJveSgmYXJyYXkpOworCisgIGFsbHBhY2thZ2VzZG9uZSA9IHRydWU7CisKKyAgaWYgKHNhaWRyZWFkPT0xKSB7CisgICAgcHJvZ3Jlc3NfZG9uZSgmcHJvZ3Jlc3MpOworICAgIHByaW50ZihQXygiJWQgZmlsZSBvciBkaXJlY3RvcnkgY3VycmVudGx5IGluc3RhbGxlZC4pXG4iLAorICAgICAgICAgICAgICAiJWQgZmlsZXMgYW5kIGRpcmVjdG9yaWVzIGN1cnJlbnRseSBpbnN0YWxsZWQuKVxuIiwgbmZpbGVzKSwKKyAgICAgICAgICAgbmZpbGVzKTsKKyAgICBzYWlkcmVhZD0yOworICB9Cit9CisKK3ZvaWQgZW5zdXJlX2FsbGluc3RmaWxlc19hdmFpbGFibGVfcXVpZXQodm9pZCkgeworICBzYWlkcmVhZD0yOworICBlbnN1cmVfYWxsaW5zdGZpbGVzX2F2YWlsYWJsZSgpOworfQorCisvKgorICogSWYgbWFzayBpcyBub256ZXJvLCB3aWxsIG5vdCB3cml0ZSBhbnkgZmlsZSB3aG9zZSBmaWxlbmFtZW5vZGUKKyAqIGhhcyBhbnkgZmxhZyBiaXRzIHNldCBpbiBtYXNrLgorICovCit2b2lkCit3cml0ZV9maWxlbGlzdF9leGNlcHQoc3RydWN0IHBrZ2luZm8gKnBrZywgc3RydWN0IGZpbGVpbmxpc3QgKmxpc3QsCisgICAgICAgICAgICAgICAgICAgICAgZW51bSBmbm5mbGFncyBtYXNrKQoreworICBzdGF0aWMgc3RydWN0IHZhcmJ1ZiBuZXd2YjsKKyAgY29uc3QgY2hhciAqbGlzdGZpbGU7CisgIEZJTEUgKmZpbGU7CisKKyAgbGlzdGZpbGUgPSBwa2dhZG1pbmZpbGUocGtnLCBMSVNURklMRSk7CisKKyAgdmFyYnVmX3Jlc2V0KCZuZXd2Yik7CisgIHZhcmJ1Zl9hZGRfc3RyKCZuZXd2YiwgbGlzdGZpbGUpOworICB2YXJidWZfYWRkX3N0cigmbmV3dmIsIE5FV0RCRVhUKTsKKyAgdmFyYnVmX2VuZF9zdHIoJm5ld3ZiKTsKKworICBmaWxlPSBmb3BlbihuZXd2Yi5idWYsIncrIik7CisgIGlmICghZmlsZSkKKyAgICBvaHNoaXRlKF8oInVuYWJsZSB0byBjcmVhdGUgdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiKSxwa2ctPm5hbWUpOworICBwdXNoX2NsZWFudXAoY3VfY2xvc2VzdHJlYW0sIGVoZmxhZ19ib21ib3V0LCBOVUxMLCAwLCAxLCAodm9pZCAqKWZpbGUpOworICB3aGlsZSAobGlzdCkgeworICAgIGlmICghKG1hc2sgJiYgKGxpc3QtPm5hbWVub2RlLT5mbGFncyAmIG1hc2spKSkgeworICAgICAgZnB1dHMobGlzdC0+bmFtZW5vZGUtPm5hbWUsZmlsZSk7CisgICAgICBwdXRjKCdcbicsZmlsZSk7CisgICAgfQorICAgIGxpc3Q9IGxpc3QtPm5leHQ7CisgIH0KKyAgaWYgKGZlcnJvcihmaWxlKSkKKyAgICBvaHNoaXRlKF8oImZhaWxlZCB0byB3cml0ZSB0byB1cGRhdGVkIGZpbGVzIGxpc3QgZmlsZSBmb3IgcGFja2FnZSAlcyIpLHBrZy0+bmFtZSk7CisgIGlmIChmZmx1c2goZmlsZSkpCisgICAgb2hzaGl0ZShfKCJmYWlsZWQgdG8gZmx1c2ggdXBkYXRlZCBmaWxlcyBsaXN0IGZpbGUgZm9yIHBhY2thZ2UgJXMiKSxwa2ctPm5hbWUpOworICBpZiAoZnN5bmMoZmlsZW5vKGZpbGUpKSkKKyAgICBvaHNoaXRlKF8oImZhaWxlZCB0byBzeW5jIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIikscGtnLT5uYW1lKTsKKyAgcG9wX2NsZWFudXAoZWhmbGFnX25vcm1hbHRpZHkpOyAvKiBmaWxlID0gZm9wZW4oKSAqLworICBpZiAoZmNsb3NlKGZpbGUpKQorICAgIG9oc2hpdGUoXygiZmFpbGVkIHRvIGNsb3NlIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIikscGtnLT5uYW1lKTsKKyAgaWYgKHJlbmFtZShuZXd2Yi5idWYsIGxpc3RmaWxlKSkKKyAgICBvaHNoaXRlKF8oImZhaWxlZCB0byBpbnN0YWxsIHVwZGF0ZWQgZmlsZXMgbGlzdCBmaWxlIGZvciBwYWNrYWdlICVzIikscGtnLT5uYW1lKTsKKworICBkaXJfc3luY19wYXRoKHBrZ2FkbWluZGlyKCkpOworCisgIG5vdGVfbXVzdF9yZXJlYWRfZmlsZXNfaW5wYWNrYWdlKHBrZyk7Cit9CisKKy8qCisgKiBJbml0aWFsaXplcyBhbiBpdGVyYXRvciB0aGF0IGFwcGVhcnMgdG8gZ28gdGhyb3VnaCB0aGUgZmlsZQorICogbGlzdCDigJhmaWxlc+KAmSBpbiByZXZlcnNlIG9yZGVyLCByZXR1cm5pbmcgdGhlIG5hbWVub2RlIGZyb20KKyAqIGVhY2guIFdoYXQgYWN0dWFsbHkgaGFwcGVucyBpcyB0aGF0IHdlIHdhbGsgdGhlIGxpc3QgaGVyZSwKKyAqIGJ1aWxkaW5nIHVwIGEgcmV2ZXJzZSBsaXN0LCBhbmQgdGhlbiBwZWVsIGl0IGFwYXJ0IG9uZQorICogZW50cnkgYXQgYSB0aW1lLgorICovCit2b2lkIHJldmVyc2VmaWxlbGlzdF9pbml0KHN0cnVjdCByZXZlcnNlZmlsZWxpc3RpdGVyICppdGVycHRyLAorICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3QgZmlsZWlubGlzdCAqZmlsZXMpIHsKKyAgc3RydWN0IGZpbGVpbmxpc3QgKm5ld2VudDsKKworICBpdGVycHRyLT50b2RvID0gTlVMTDsKKyAgd2hpbGUgKGZpbGVzKSB7CisgICAgbmV3ZW50PSBtX21hbGxvYyhzaXplb2Yoc3RydWN0IGZpbGVpbmxpc3QpKTsKKyAgICBuZXdlbnQtPm5hbWVub2RlPSBmaWxlcy0+bmFtZW5vZGU7CisgICAgbmV3ZW50LT5uZXh0PSBpdGVycHRyLT50b2RvOworICAgIGl0ZXJwdHItPnRvZG89IG5ld2VudDsKKyAgICBmaWxlcz0gZmlsZXMtPm5leHQ7CisgIH0KK30KKworc3RydWN0IGZpbGVuYW1lbm9kZSAqcmV2ZXJzZWZpbGVsaXN0X25leHQoc3RydWN0IHJldmVyc2VmaWxlbGlzdGl0ZXIgKml0ZXJwdHIpIHsKKyAgc3RydWN0IGZpbGVuYW1lbm9kZSAqcmV0OworICBzdHJ1Y3QgZmlsZWlubGlzdCAqdG9kbzsKKworICB0b2RvPSBpdGVycHRyLT50b2RvOworICBpZiAoIXRvZG8pCisgICAgcmV0dXJuIE5VTEw7CisgIHJldD0gdG9kby0+bmFtZW5vZGU7CisgIGl0ZXJwdHItPnRvZG89IHRvZG8tPm5leHQ7CisgIGZyZWUodG9kbyk7CisgIHJldHVybiByZXQ7Cit9CisKKy8qCisgKiBDbGllbnRzIG11c3QgY2FsbCB0aGlzIGZ1bmN0aW9uIHRvIGNsZWFuIHVwIHRoZSByZXZlcnNlZmlsZWxpc3RpdGVyCisgKiBpZiB0aGV5IHdpc2ggdG8gYnJlYWsgb3V0IG9mIHRoZSBpdGVyYXRpb24gYmVmb3JlIGl0IGlzIGFsbCBkb25lLgorICogQ2FsbGluZyB0aGlzIGZ1bmN0aW9uIGlzIG5vdCBuZWNlc3NhcnkgaWYgcmV2ZXJzZWZpbGVsaXN0X25leHQgaGFzCisgKiBiZWVuIGNhbGxlZCB1bnRpbCBpdCByZXR1cm5lZCAwLgorICovCit2b2lkIHJldmVyc2VmaWxlbGlzdF9hYm9ydChzdHJ1Y3QgcmV2ZXJzZWZpbGVsaXN0aXRlciAqaXRlcnB0cikgeworICB3aGlsZSAocmV2ZXJzZWZpbGVsaXN0X25leHQoaXRlcnB0cikpOworfQorCitzdHJ1Y3QgZmlsZWl0ZXJhdG9yIHsKKyAgc3RydWN0IGZpbGVuYW1lbm9kZSAqbmFtZW5vZGU7CisgIGludCBuYmlubjsKK307CisKKy8qIFRoaXMgbXVzdCBhbHdheXMgYmUgYSBwb3dlciBvZiB0d28uIElmIHlvdSBjaGFuZ2UgaXQgY29uc2lkZXIgY2hhbmdpbmcKKyAqIHRoZSBwZXItY2hhcmFjdGVyIGhhc2hpbmcgZmFjdG9yIChjdXJyZW50bHkgMTc4NSA9IDEzNyAqIDEzKSB0b28uICovCisjZGVmaW5lIEJJTlMgKDEgPDwgMTcpCisKK3N0YXRpYyBzdHJ1Y3QgZmlsZW5hbWVub2RlICpiaW5zW0JJTlNdOworCitzdHJ1Y3QgZmlsZWl0ZXJhdG9yICppdGVyZmlsZXN0YXJ0KHZvaWQpIHsKKyAgc3RydWN0IGZpbGVpdGVyYXRvciAqaTsKKyAgaT0gbV9tYWxsb2Moc2l6ZW9mKHN0cnVjdCBmaWxlaXRlcmF0b3IpKTsKKyAgaS0+bmFtZW5vZGUgPSBOVUxMOworICBpLT5uYmlubj0gMDsKKyAgcmV0dXJuIGk7Cit9CisKK3N0cnVjdCBmaWxlbmFtZW5vZGUgKml0ZXJmaWxlbmV4dChzdHJ1Y3QgZmlsZWl0ZXJhdG9yICppKSB7CisgIHN0cnVjdCBmaWxlbmFtZW5vZGUgKnI9IE5VTEw7CisKKyAgd2hpbGUgKCFpLT5uYW1lbm9kZSkgeworICAgIGlmIChpLT5uYmlubiA+PSBCSU5TKQorICAgICAgcmV0dXJuIE5VTEw7CisgICAgaS0+bmFtZW5vZGU9IGJpbnNbaS0+bmJpbm4rK107CisgIH0KKyAgcj0gaS0+bmFtZW5vZGU7CisgIGktPm5hbWVub2RlPSByLT5uZXh0OworICByZXR1cm4gcjsKK30KKwordm9pZCBpdGVyZmlsZWVuZChzdHJ1Y3QgZmlsZWl0ZXJhdG9yICppKSB7CisgIGZyZWUoaSk7Cit9CisKK3ZvaWQgZmlsZXNkYmluaXQodm9pZCkgeworICBzdHJ1Y3QgZmlsZW5hbWVub2RlICpmbm47CisgIGludCBpOworCisgIHBrZ2FkbWluZGlyX2luaXQoKTsKKworICBmb3IgKGk9MDsgaTxCSU5TOyBpKyspCisgICAgZm9yIChmbm49IGJpbnNbaV07IGZubjsgZm5uPSBmbm4tPm5leHQpIHsKKyAgICAgIGZubi0+ZmxhZ3M9IDA7CisgICAgICBmbm4tPm9sZGhhc2ggPSBOVUxMOworICAgICAgZm5uLT5maWxlc3RhdCA9IE5VTEw7CisgICAgfQorfQorCitzdGF0aWMgaW50IGhhc2goY29uc3QgY2hhciAqbmFtZSkgeworICBpbnQgdj0gMDsKKyAgd2hpbGUgKCpuYW1lKSB7IHYgKj0gMTc4NzsgdiArPSAqbmFtZTsgbmFtZSsrOyB9CisgIHJldHVybiB2OworfQorCitzdHJ1Y3QgZmlsZW5hbWVub2RlICpmaW5kbmFtZW5vZGUoY29uc3QgY2hhciAqbmFtZSwgZW51bSBmbm5mbGFncyBmbGFncykgeworICBzdHJ1Y3QgZmlsZW5hbWVub2RlICoqcG9pbnRlcnAsICpuZXdub2RlOworICBjb25zdCBjaGFyICpvcmlnX25hbWUgPSBuYW1lOworCisgIC8qIFdlIHNraXAgaW5pdGlhbCBzbGFzaGVzIGFuZCDigJguL+KAmSBwYWlycywgYW5kIGFkZCBvdXIgb3duIHNpbmdsZQorICAgKiBsZWFkaW5nIHNsYXNoLiAqLworICBuYW1lID0gcGF0aF9za2lwX3NsYXNoX2RvdHNsYXNoKG5hbWUpOworCisgIHBvaW50ZXJwPSBiaW5zICsgKGhhc2gobmFtZSkgJiAoQklOUy0xKSk7CisgIHdoaWxlICgqcG9pbnRlcnApIHsKKyAgICAvKiBYWFg6IFdoeSBpcyB0aGUgYXNzZXJ0IG5lZWRlZD8gSXQncyBjaGVja2luZyBhbHJlYWR5IGFkZGVkIGVudHJpZXMuICovCisgICAgYXNzZXJ0KCgqcG9pbnRlcnApLT5uYW1lWzBdID09ICcvJyk7CisgICAgaWYgKCFzdHJjbXAoKCpwb2ludGVycCktPm5hbWUrMSxuYW1lKSkgYnJlYWs7CisgICAgcG9pbnRlcnA9ICYoKnBvaW50ZXJwKS0+bmV4dDsKKyAgfQorICBpZiAoKnBvaW50ZXJwKSByZXR1cm4gKnBvaW50ZXJwOworCisgIGlmIChmbGFncyAmIGZubl9ub25ldykKKyAgICByZXR1cm4gTlVMTDsKKworICBuZXdub2RlPSBuZm1hbGxvYyhzaXplb2Yoc3RydWN0IGZpbGVuYW1lbm9kZSkpOworICBuZXdub2RlLT5wYWNrYWdlcyA9IE5VTEw7CisgIGlmKChmbGFncyAmIGZubl9ub2NvcHkpICYmIG5hbWUgPiBvcmlnX25hbWUgJiYgbmFtZVstMV0gPT0gJy8nKQorICAgIG5ld25vZGUtPm5hbWUgPSBuYW1lIC0gMTsKKyAgZWxzZSB7CisgICAgY2hhciAqbmV3bmFtZT0gbmZtYWxsb2Moc3RybGVuKG5hbWUpKzIpOworICAgIG5ld25hbWVbMF09ICcvJzsgc3RyY3B5KG5ld25hbWUrMSxuYW1lKTsKKyAgICBuZXdub2RlLT5uYW1lPSBuZXduYW1lOworICB9CisgIG5ld25vZGUtPmZsYWdzPSAwOworICBuZXdub2RlLT5uZXh0ID0gTlVMTDsKKyAgbmV3bm9kZS0+ZGl2ZXJ0ID0gTlVMTDsKKyAgbmV3bm9kZS0+c3RhdG92ZXJyaWRlID0gTlVMTDsKKyAgbmV3bm9kZS0+ZmlsZXN0YXQgPSBOVUxMOworICBuZXdub2RlLT50cmlnX2ludGVyZXN0ZWQgPSBOVUxMOworICAqcG9pbnRlcnA9IG5ld25vZGU7CisgIG5maWxlcysrOworCisgIHJldHVybiBuZXdub2RlOworfQorCisvKiB2aTogdHM9OCBzdz0yCisgKi8KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc3JjL2ZpbGVzZGIuaCBiL2Rwa2ctMS4xNi4xLjEvc3JjL2ZpbGVzZGIuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zMGRhZTg4Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zcmMvZmlsZXNkYi5oCkBAIC0wLDAgKzEsMTc1IEBACisvKgorICogZHBrZyAtIG1haW4gcHJvZ3JhbSBmb3IgcGFja2FnZSBtYW5hZ2VtZW50CisgKiBmaWxlc2RiLmggLSBtYW5hZ2VtZW50IG9mIGRhdGFiYXNlIG9mIGZpbGVzIGluc3RhbGxlZCBvbiBzeXN0ZW0KKyAqCisgKiBDb3B5cmlnaHQgwqkgMTk5NSBJYW4gSmFja3NvbiA8aWFuQGNoaWFyay5ncmVlbmVuZC5vcmcudWs+CisgKiBDb3B5cmlnaHQgwqkgMjAwOC0yMDEwIEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworI2lmbmRlZiBGSUxFU0RCX0gKKyNkZWZpbmUgRklMRVNEQl9ICisKKyNpbmNsdWRlIDxkcGtnL2ZpbGUuaD4KKworLyoKKyAqIERhdGEgc3RydWN0dXJlIGhlcmUgaXMgYXMgZm9sbG93czoKKyAqCisgKiBGb3IgZWFjaCBwYWNrYWdlIHdlIGhhdmUgYSDigJhzdHJ1Y3QgZmlsZWlubGlzdCAq4oCZLCB0aGUgaGVhZCBvZiBhIGxpc3Qgb2YKKyAqIGZpbGVzIGluIHRoYXQgcGFja2FnZS4gVGhleSBhcmUgaW4g4oCYZm9yd2FyZHPigJkgb3JkZXIuIEVhY2ggZW50cnkgaGFzIGEKKyAqIHBvaW50ZXIgdG8gdGhlIOKAmHN0cnVjdCBmaWxlbmFtZW5vZGXigJkuCisgKgorICogVGhlIHN0cnVjdCBmaWxlbmFtZW5vZGVzIGFyZSBpbiBhIGhhc2ggdGFibGUsIGluZGV4ZWQgYnkgbmFtZS4KKyAqIChUaGlzIGhhc2ggdGFibGUgaXMgbm90IHZpc2libGUgdG8gY2FsbGVycy4pCisgKgorICogRWFjaCBmaWxlbmFtZW5vZGUgaGFzIGEgKHBvc3NpYmx5IGVtcHR5KSBsaXN0IG9mIOKAmHN0cnVjdCBmaWxlcGFja2FnZeKAmSwKKyAqIGdpdmluZyBhIGxpc3Qgb2YgdGhlIHBhY2thZ2VzIGxpc3RpbmcgdGhhdCBmaWxlbmFtZS4KKyAqCisgKiBXaGVuIHdlIHJlYWQgZmlsZXMgY29udGFpbmVkIGluZm8gYWJvdXQgYSBwYXJ0aWN1bGFyIHBhY2thZ2Ugd2Ugc2V0IHRoZQorICog4oCYZmlsZXPigJkgbWVtYmVyIG9mIHRoZSBjbGllbnRkYXRhIHN0cnVjdCB0byB0aGUgYXBwcm9wcmlhdGUgdGhpbmcuIFdoZW4KKyAqIG5vdCB5ZXQgc2V0IHRoZSBmaWxlcyBwb2ludGVyIGlzIG1hZGUgdG8gcG9pbnQgdG8g4oCYZmlsZXNsaXN0X3VuaW5pdGVk4oCZCisgKiAodGhpcyBpcyBhdmFpbGFibGUgb25seSBpbnRlcm5hbGx5LCB3aXRoaW4gZmlsZXNkYi5jIC0gdGhlIHB1Ymxpc2hlZAorICogaW50ZXJmYWNlIGlzIGVuc3VyZV8qX2F2YWlsYWJsZSkuCisgKi8KKworc3RydWN0IHBrZ2luZm87CisKKy8qIEZsYWdzIHRvIGZpbmRuYW1lbm9kZSgpLiAqLworZW51bSBmbm5mbGFncyB7CisgICAgLyogRG8gbm90IG5lZWQgdG8gY29weSBmaWxlbmFtZS4gKi8KKyAgICBmbm5fbm9jb3B5ID0gMDAwMDAxLAorICAgIC8qIGZpbmRuYW1lbm9kZSBtYXkgcmV0dXJuIE5VTEwuICovCisgICAgZm5uX25vbmV3ID0gMDAwMDAyLAorfTsKKworc3RydWN0IGZpbGVuYW1lbm9kZSB7CisgIHN0cnVjdCBmaWxlbmFtZW5vZGUgKm5leHQ7CisgIGNvbnN0IGNoYXIgKm5hbWU7CisgIHN0cnVjdCBmaWxlcGFja2FnZXMgKnBhY2thZ2VzOworICBzdHJ1Y3QgZGl2ZXJzaW9uICpkaXZlcnQ7CisKKyAgLyogV2UgYWxsb3cgdGhlIGFkbWluaXN0cmF0b3IgdG8gb3ZlcnJpZGUgdGhlIG93bmVyLCBncm91cCBhbmQgbW9kZSBvZgorICAgKiBhIGZpbGUuIElmIHN1Y2ggYW4gb3ZlcnJpZGUgaXMgcHJlc2VudCB3ZSB1c2UgdGhhdCBpbnN0ZWFkIG9mIHRoZQorICAgKiBzdGF0IGluZm9ybWF0aW9uIHN0b3JlZCBpbiB0aGUgYXJjaGl2ZS4KKyAgICoKKyAgICogVGhpcyBmdW5jdGlvbmFsaXR5IHVzZWQgdG8gYmUgaW4gdGhlIHN1aWRtYW5hZ2VyIHBhY2thZ2UuICovCisgIHN0cnVjdCBmaWxlX3N0YXQgKnN0YXRvdmVycmlkZTsKKworICAvKgorICAgKiBGaWVsZHMgZnJvbSBoZXJlIG9uIGFyZSB1c2VkIGJ5IGFyY2hpdmVzLmMgJmMsIGFuZCBjbGVhcmVkIGJ5CisgICAqIGZpbGVzZGJpbml0LgorICAgKi8KKworICAvKiBTZXQgdG8gemVybyB3aGVuIGEgbmV3IG5vZGUgaXMgY3JlYXRlZC4gKi8KKyAgZW51bSB7CisgICAgLyogSW4gdGhlIG5ld2NvbmZmaWxlcyBsaXN0LiAqLworICAgIGZubmZfbmV3X2NvbmZmID0gMDAwMDAxLAorICAgIC8qIEluIHRoZSBuZXcgZmlsZXN5c3RlbSBhcmNoaXZlLiAqLworICAgIGZubmZfbmV3X2luYXJjaGl2ZSA9IDAwMDAwMiwKKyAgICAvKiBJbiB0aGUgb2xkIHBhY2thZ2UncyBjb25mZmlsZXMgbGlzdC4gKi8KKyAgICBmbm5mX29sZF9jb25mZiA9IDAwMDAwNCwKKyAgICAvKiBPYnNvbGV0ZSBjb25mZmlsZS4gKi8KKyAgICBmbm5mX29ic19jb25mZiA9IDAwMDEwMCwKKyAgICAvKiBNdXN0IHJlbW92ZSBmcm9tIG90aGVyIHBhY2thZ2VzJyBsaXN0cy4gKi8KKyAgICBmbm5mX2VsaWRlX290aGVyX2xpc3RzID0gMDAwMDEwLAorICAgIC8qID49IDEgaW5zdGFuY2UgaXMgYSBkaXIsIGNhbm5vdCByZW5hbWUgb3Zlci4gKi8KKyAgICBmbm5mX25vX2F0b21pY19vdmVyd3JpdGUgPSAwMDAwMjAsCisgICAgLyogTmV3IGZpbGUgaGFzIGJlZW4gcGxhY2VkIG9uIHRoZSBkaXNrLiAqLworICAgIGZubmZfcGxhY2VkX29uX2Rpc2sgPSAwMDAwNDAsCisgICAgZm5uZl9kZWZlcnJlZF9mc3luYyA9IDAwMDIwMCwKKyAgICBmbm5mX2RlZmVycmVkX3JlbmFtZSA9IDAwMDQwMCwKKyAgICAvKiBQYXRoIGJlaW5nIGZpbHRlcmVkLiAqLworICAgIGZubmZfZmlsdGVyZWQgPSAwMDEwMDAsCisgIH0gZmxhZ3M7CisKKyAgLyogVmFsaWQgaWZmIHRoaXMgbmFtZW5vZGUgaXMgaW4gdGhlIG5ld2NvbmZmaWxlcyBsaXN0LiAqLworICBjb25zdCBjaGFyICpvbGRoYXNoOworCisgIHN0cnVjdCBzdGF0ICpmaWxlc3RhdDsKKyAgc3RydWN0IHRyaWdmaWxlaW50ICp0cmlnX2ludGVyZXN0ZWQ7Cit9OworCitzdHJ1Y3QgZmlsZWlubGlzdCB7CisgIHN0cnVjdCBmaWxlaW5saXN0ICpuZXh0OworICBzdHJ1Y3QgZmlsZW5hbWVub2RlICpuYW1lbm9kZTsKK307CisKKy8qCisgKiBXaGVuIHdlIGRlYWwgd2l0aCBhbiDigJhvdmVycmlkZGVu4oCZIGZpbGUsIGV2ZXJ5IHBhY2thZ2UgZXhjZXB0IHRoZQorICogb3ZlcnJpZGluZyBvbmUgaXMgY29uc2lkZXJlZCB0byBjb250YWluIHRoZSBvdGhlciBmaWxlIGluc3RlYWQuIEJvdGgKKyAqIGZpbGVzIGhhdmUgZW50cmllcyBpbiB0aGUgZmlsZXNkYiBkYXRhYmFzZSwgYW5kIHRoZXkgcmVmZXIgdG8gZWFjaCBvdGhlcgorICogdmlhIHRoZXNlIGRpdmVyc2lvbiBzdHJ1Y3R1cmVzLgorICoKKyAqIFRoZSBjb250ZXN0ZWQgZmlsZW5hbWUncyBmaWxlbmFtZW5vZGUgaGFzIGFuIGRpdmVyc2lvbiBlbnRyeSB3aXRoCisgKiB1c2VpbnN0ZWFkIHNldCB0byBwb2ludCB0byB0aGUgcmVkaXJlY3RlZCBmaWxlbmFtZSdzIGZpbGVuYW1lbm9kZTsgdGhlCisgKiByZWRpcmVjdGVkIGZpbGVuYW1lbm9kZSBoYXMgY2FtZWZyb20gc2V0IHRvIHRoZSBjb250ZXN0ZWQgZmlsZW5hbWVub2RlLgorICogQm90aCBzaWRlcycgZGl2ZXJzaW9uIGVudHJpZXMgd2lsbCBoYXZlIHBrZyBzZXQgdG8gdGhlIHBhY2thZ2UgKGlmIGFueSkKKyAqIHdoaWNoIGlzIGFsbG93ZWQgdG8gdXNlIHRoZSBjb250ZW5kZWQgZmlsZW5hbWUuCisgKgorICogUGFja2FnZXMgdGhhdCBjb250YWluIGVpdGhlciB2ZXJzaW9uIG9mIHRoZSBmaWxlIHdpbGwgYWxsIHJlZmVyIHRvIHRoZQorICogY29udGVzdGVkIGZpbGVuYW1lbm9kZSBpbiB0aGVpciBwZXItZmlsZSBwYWNrYWdlIGxpc3RzIChib3RoIGluIGNvcmUgYW5kCisgKiBvbiBkaXNrKS4gUmVmZXJlbmNlcyBhcmUgcmVkaXJlY3RlZCB0byB0aGUgb3RoZXIgZmlsZW5hbWVub2RlJ3MgZmlsZW5hbWUKKyAqIHdoZXJlIGFwcHJvcHJpYXRlLgorICovCitzdHJ1Y3QgZGl2ZXJzaW9uIHsKKyAgc3RydWN0IGZpbGVuYW1lbm9kZSAqdXNlaW5zdGVhZDsKKyAgc3RydWN0IGZpbGVuYW1lbm9kZSAqY2FtZWZyb207CisgIHN0cnVjdCBwa2dpbmZvICpwa2c7CisKKyAgLyogVGhlIOKAmGNvbnRlc3RlZOKAmSBoYWx2ZXMgYXJlIGluIHRoaXMgbGlzdCBmb3IgZWFzeSBjbGVhbnVwLiAqLworICBzdHJ1Y3QgZGl2ZXJzaW9uICpuZXh0OworfTsKKworY29uc3QgY2hhciAqcGtnYWRtaW5kaXIodm9pZCk7Citjb25zdCBjaGFyICpwa2dhZG1pbmZpbGUoc3RydWN0IHBrZ2luZm8gKnBrZywgY29uc3QgY2hhciAqZmlsZXR5cGUpOworCitzdHJ1Y3QgZmlsZXBhY2thZ2VzX2l0ZXJhdG9yOworc3RydWN0IGZpbGVwYWNrYWdlc19pdGVyYXRvciAqZmlsZXBhY2thZ2VzX2l0ZXJfbmV3KHN0cnVjdCBmaWxlbmFtZW5vZGUgKmZubik7CitzdHJ1Y3QgcGtnaW5mbyAqZmlsZXBhY2thZ2VzX2l0ZXJfbmV4dChzdHJ1Y3QgZmlsZXBhY2thZ2VzX2l0ZXJhdG9yICppKTsKK3ZvaWQgZmlsZXBhY2thZ2VzX2l0ZXJfZnJlZShzdHJ1Y3QgZmlsZXBhY2thZ2VzX2l0ZXJhdG9yICppKTsKKwordm9pZCBmaWxlc2RiaW5pdCh2b2lkKTsKKworc3RydWN0IGZpbGVpdGVyYXRvcjsKK3N0cnVjdCBmaWxlaXRlcmF0b3IgKml0ZXJmaWxlc3RhcnQodm9pZCk7CitzdHJ1Y3QgZmlsZW5hbWVub2RlICppdGVyZmlsZW5leHQoc3RydWN0IGZpbGVpdGVyYXRvciAqaSk7Cit2b2lkIGl0ZXJmaWxlZW5kKHN0cnVjdCBmaWxlaXRlcmF0b3IgKmkpOworCit2b2lkIGVuc3VyZV9wYWNrYWdlX2NsaWVudGRhdGEoc3RydWN0IHBrZ2luZm8gKnBrZyk7CisKK3ZvaWQgZW5zdXJlX2RpdmVyc2lvbnModm9pZCk7CisKK3VpZF90IHN0YXRkYl9wYXJzZV91aWQoY29uc3QgY2hhciAqc3RyKTsKK2dpZF90IHN0YXRkYl9wYXJzZV9naWQoY29uc3QgY2hhciAqc3RyKTsKK21vZGVfdCBzdGF0ZGJfcGFyc2VfbW9kZShjb25zdCBjaGFyICpzdHIpOwordm9pZCBlbnN1cmVfc3RhdG92ZXJyaWRlcyh2b2lkKTsKKworI2RlZmluZSBMSVNURklMRSAgICAgICAgICAgImxpc3QiCisKK3ZvaWQgZW5zdXJlX3BhY2thZ2VmaWxlc19hdmFpbGFibGUoc3RydWN0IHBrZ2luZm8gKnBrZyk7Cit2b2lkIGVuc3VyZV9hbGxpbnN0ZmlsZXNfYXZhaWxhYmxlKHZvaWQpOwordm9pZCBlbnN1cmVfYWxsaW5zdGZpbGVzX2F2YWlsYWJsZV9xdWlldCh2b2lkKTsKK3ZvaWQgbm90ZV9tdXN0X3JlcmVhZF9maWxlc19pbnBhY2thZ2Uoc3RydWN0IHBrZ2luZm8gKnBrZyk7CitzdHJ1Y3QgZmlsZW5hbWVub2RlICpmaW5kbmFtZW5vZGUoY29uc3QgY2hhciAqZmlsZW5hbWUsIGVudW0gZm5uZmxhZ3MgZmxhZ3MpOwordm9pZCB3cml0ZV9maWxlbGlzdF9leGNlcHQoc3RydWN0IHBrZ2luZm8gKnBrZywgc3RydWN0IGZpbGVpbmxpc3QgKmxpc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICBlbnVtIGZubmZsYWdzIG1hc2spOworCitzdHJ1Y3QgcmV2ZXJzZWZpbGVsaXN0aXRlciB7IHN0cnVjdCBmaWxlaW5saXN0ICp0b2RvOyB9OworCit2b2lkIHJldmVyc2VmaWxlbGlzdF9pbml0KHN0cnVjdCByZXZlcnNlZmlsZWxpc3RpdGVyICppdGVycHRyLCBzdHJ1Y3QgZmlsZWlubGlzdCAqZmlsZXMpOworc3RydWN0IGZpbGVuYW1lbm9kZSAqcmV2ZXJzZWZpbGVsaXN0X25leHQoc3RydWN0IHJldmVyc2VmaWxlbGlzdGl0ZXIgKml0ZXJwdHIpOwordm9pZCByZXZlcnNlZmlsZWxpc3RfYWJvcnQoc3RydWN0IHJldmVyc2VmaWxlbGlzdGl0ZXIgKml0ZXJwdHIpOworCisjZW5kaWYgLyogRklMRVNEQl9IICovCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NyYy9maWx0ZXJzLmMgYi9kcGtnLTEuMTYuMS4xL3NyYy9maWx0ZXJzLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzU4NmQzMQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc3JjL2ZpbHRlcnMuYwpAQCAtMCwwICsxLDEyOSBAQAorLyoKKyAqIGRwa2cgLSBtYWluIHByb2dyYW0gZm9yIHBhY2thZ2UgbWFuYWdlbWVudAorICogZmlsdGVycy5jIC0gZmlsdGVyaW5nIHJvdXRpbmVzIGZvciBleGNsdWRpbmcgYml0cyBvZiBwYWNrYWdlcworICoKKyAqIENvcHlyaWdodCDCqSAyMDA3LCAyMDA4IFRvbGxlZiBGb2cgSGVlbiA8dGZoZWVuQGVyci5ubz4KKyAqIENvcHlyaWdodCDCqSAyMDA4LCAyMDEwIEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KKyAqIENvcHlyaWdodCDCqSAyMDEwIENhbm9uaWNhbCBMdGQuCisgKiAgIHdyaXR0ZW4gYnkgTWFydGluIFBpdHQgPG1hcnRpbi5waXR0QGNhbm9uaWNhbC5jb20+CisgKgorICogVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisgKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAqIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorICovCisKKyNpbmNsdWRlIDxjb25maWcuaD4KKyNpbmNsdWRlIDxjb21wYXQuaD4KKworI2luY2x1ZGUgPGZubWF0Y2guaD4KKworI2luY2x1ZGUgPGRwa2cvaTE4bi5oPgorI2luY2x1ZGUgPGRwa2cvZHBrZy5oPgorI2luY2x1ZGUgPGRwa2cvZHBrZy1kYi5oPgorCisjaW5jbHVkZSAibWFpbi5oIgorI2luY2x1ZGUgImZpbGVzZGIuaCIKKyNpbmNsdWRlICJmaWx0ZXJzLmgiCisKK3N0cnVjdCBmaWx0ZXJfbm9kZSB7CisJc3RydWN0IGZpbHRlcl9ub2RlICpuZXh0OworCWNoYXIgKnBhdHRlcm47CisJYm9vbCBpbmNsdWRlOworfTsKKworc3RhdGljIHN0cnVjdCBmaWx0ZXJfbm9kZSAqZmlsdGVyX2hlYWQgPSBOVUxMOworc3RhdGljIHN0cnVjdCBmaWx0ZXJfbm9kZSAqKmZpbHRlcl90YWlsID0gJmZpbHRlcl9oZWFkOworCit2b2lkCitmaWx0ZXJfYWRkKGNvbnN0IGNoYXIgKnBhdHRlcm4sIGJvb2wgaW5jbHVkZSkKK3sKKwlzdHJ1Y3QgZmlsdGVyX25vZGUgKmZpbHRlcjsKKworCWRlYnVnKGRiZ19nZW5lcmFsLCAiYWRkaW5nICVzIGZpbHRlciBmb3IgJyVzJ1xuIiwKKwkgICAgICBpbmNsdWRlID8gImluY2x1ZGUiIDogImV4Y2x1ZGUiLCBwYXR0ZXJuKTsKKworCWZpbHRlciA9IG1fbWFsbG9jKHNpemVvZigqZmlsdGVyKSk7CisJZmlsdGVyLT5wYXR0ZXJuID0gbV9zdHJkdXAocGF0dGVybik7CisJZmlsdGVyLT5pbmNsdWRlID0gaW5jbHVkZTsKKwlmaWx0ZXItPm5leHQgPSBOVUxMOworCisJKmZpbHRlcl90YWlsID0gZmlsdGVyOworCWZpbHRlcl90YWlsID0gJmZpbHRlci0+bmV4dDsKK30KKworYm9vbAorZmlsdGVyX3Nob3VsZF9za2lwKHN0cnVjdCB0YXJfZW50cnkgKnRpKQoreworCXN0cnVjdCBmaWx0ZXJfbm9kZSAqZjsKKwlib29sIHNraXAgPSBmYWxzZTsKKworCWlmICghZmlsdGVyX2hlYWQpCisJCXJldHVybiBmYWxzZTsKKworCS8qIExhc3QgbWF0Y2ggd2lucy4gKi8KKwlmb3IgKGYgPSBmaWx0ZXJfaGVhZDsgZiAhPSBOVUxMOyBmID0gZi0+bmV4dCkgeworCQlkZWJ1ZyhkYmdfZWFjaGZpbGUsICJmaWx0ZXIgY29tcGFyaW5nICclcycgYW5kICclcyciLAorCQkgICAgICAmdGktPm5hbWVbMV0sIGYtPnBhdHRlcm4pOworCisJCWlmIChmbm1hdGNoKGYtPnBhdHRlcm4sICZ0aS0+bmFtZVsxXSwgMCkgPT0gMCkgeworCQkJaWYgKGYtPmluY2x1ZGUpIHsKKwkJCQlza2lwID0gZmFsc2U7CisJCQkJZGVidWcoZGJnX2VhY2hmaWxlLCAiZmlsdGVyIGluY2x1ZGluZyAlcyIsCisJCQkJICAgICAgdGktPm5hbWUpOworCQkJfSBlbHNlIHsKKwkJCQlza2lwID0gdHJ1ZTsKKwkJCQlkZWJ1ZyhkYmdfZWFjaGZpbGUsICJmaWx0ZXIgcmVtb3ZpbmcgJXMiLAorCQkJCSAgICAgIHRpLT5uYW1lKTsKKwkJCX0KKwkJfQorCX0KKworCS8qIFdlIG5lZWQgdG8ga2VlcCBkaXJlY3RvcmllcyAob3Igc3ltbGlua3MgdG8gZGlyZWN0b3JpZXMpIGlmIGEKKwkgKiBnbG9iIGV4Y2x1ZGVzIHRoZW0sIGJ1dCBhIG1vcmUgc3BlY2lmaWMgaW5jbHVkZSBnbG9iIGJyaW5ncyBiYWNrCisJICogZmlsZXM7IFhYWCB0aGUgY3VycmVudCBpbXBsZW1lbnRhdGlvbiB3aWxsIHByb2JhYmx5IGluY2x1ZGUgbW9yZQorCSAqIGRpcmVjdG9yaWVzIHRoYW4gbmVjZXNzYXJ5LCBidXQgYmV0dGVyIGVyciBvbiB0aGUgc2lkZSBvZiBjYXV0aW9uCisJICogdGhhbiBmYWlsaW5nIHdpdGgg4oCcbm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeeKAnSAod2hpY2ggd291bGQgbGVhdmUKKwkgKiB0aGUgcGFja2FnZSBpbiBhIHZlcnkgYmFkIHN0YXRlKS4gKi8KKwlpZiAoc2tpcCAmJiAodGktPnR5cGUgPT0gdGFyX2ZpbGV0eXBlX2RpciB8fAorCSAgICAgICAgICAgICB0aS0+dHlwZSA9PSB0YXJfZmlsZXR5cGVfc3ltbGluaykpIHsKKwkJZGVidWcoZGJnX2VhY2hmaWxlLAorCQkgICAgICAiZmlsdGVyIHNlZWluZyBpZiAnJXMnIG5lZWRzIHRvIGJlIHJlaW5jbHVkZWQiLAorCQkgICAgICAmdGktPm5hbWVbMV0pOworCisJCWZvciAoZiA9IGZpbHRlcl9oZWFkOyBmICE9IE5VTEw7IGYgPSBmLT5uZXh0KSB7CisJCQljb25zdCBjaGFyICp3aWxkY2FyZDsKKwkJCWludCBwYXRoX2xlbjsKKworCQkJaWYgKCFmLT5pbmNsdWRlKQorCQkJCWNvbnRpbnVlOworCisJCQkvKiBDYWxjdWxhdGUgdGhlIG9mZnNldCBvZiB0aGUgZmlyc3Qgd2lsZGNhcmQKKwkJCSAqIGNoYXJhY3RlciBpbiB0aGUgcGF0dGVybi4gKi8KKwkJCXdpbGRjYXJkID0gc3RycGJyayhmLT5wYXR0ZXJuLCAiKj9bXFwiKTsKKwkJCWlmICh3aWxkY2FyZCkKKwkJCQlwYXRoX2xlbiA9IHdpbGRjYXJkIC0gZi0+cGF0dGVybjsKKwkJCWVsc2UKKwkJCQlwYXRoX2xlbiA9IHN0cmxlbihmLT5wYXR0ZXJuKTsKKworCQkJZGVidWcoZGJnX2VhY2hmaWxlZGV0YWlsLAorCQkJICAgICAgImZpbHRlciBzdWJwYXR0ZXJuICclKi5zJyIsIHBhdGhfbGVuLCBmLT5wYXR0ZXJuKTsKKworCQkJaWYgKHN0cm5jbXAoJnRpLT5uYW1lWzFdLCBmLT5wYXR0ZXJuLCBwYXRoX2xlbikgPT0gMCkgeworCQkJCWRlYnVnKGRiZ19lYWNoZmlsZSwgImZpbHRlciByZWluY2x1ZGluZyAlcyIsCisJCQkJICAgICAgdGktPm5hbWUpOworCQkJCXJldHVybiBmYWxzZTsKKwkJCX0KKwkJfQorCX0KKworCXJldHVybiBza2lwOworfQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zcmMvZmlsdGVycy5oIGIvZHBrZy0xLjE2LjEuMS9zcmMvZmlsdGVycy5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmI0MzRjZmEKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3NyYy9maWx0ZXJzLmgKQEAgLTAsMCArMSwzNyBAQAorLyoKKyAqIGRwa2cgLSBtYWluIHByb2dyYW0gZm9yIHBhY2thZ2UgbWFuYWdlbWVudAorICogZmlsdGVycy5oIC0gZXh0ZXJuYWwgZGVmaW5pdGlvbnMgZm9yIGZpbHRlciBoYW5kbGluZworICoKKyAqIENvcHlyaWdodCDCqSAyMDA3LCAyMDA4IFRvbGxlZiBGb2cgSGVlbiA8dGZoZWVuQGVyci5ubz4KKyAqIENvcHlyaWdodCDCqSAyMDA4LCAyMDEwIEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworI2lmbmRlZiBEUEtHX0ZJTFRFUlNfSAorI2RlZmluZSBEUEtHX0ZJTFRFUlNfSAorCisjaW5jbHVkZSA8c3RkYm9vbC5oPgorCisjaW5jbHVkZSA8ZHBrZy9tYWNyb3MuaD4KKyNpbmNsdWRlIDxkcGtnL3RhcmZuLmg+CisKK0RQS0dfQkVHSU5fREVDTFMKKwordm9pZCBmaWx0ZXJfYWRkKGNvbnN0IGNoYXIgKmdsb2IsIGJvb2wgaW5jbHVkZSk7Citib29sIGZpbHRlcl9zaG91bGRfc2tpcChzdHJ1Y3QgdGFyX2VudHJ5ICp0aSk7CisKK0RQS0dfRU5EX0RFQ0xTCisKKyNlbmRpZgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zcmMvaGVscC5jIGIvZHBrZy0xLjE2LjEuMS9zcmMvaGVscC5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmU5ZmZkMmUKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3NyYy9oZWxwLmMKQEAgLTAsMCArMSw2MzIgQEAKKy8qCisgKiBkcGtnIC0gbWFpbiBwcm9ncmFtIGZvciBwYWNrYWdlIG1hbmFnZW1lbnQKKyAqIGhlbHAuYyAtIHZhcmlvdXMgaGVscGVyIHJvdXRpbmVzCisgKgorICogQ29weXJpZ2h0IMKpIDE5OTUgSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuZ3JlZW5lbmQub3JnLnVrPgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaW5jbHVkZSA8Y29uZmlnLmg+CisjaW5jbHVkZSA8Y29tcGF0Lmg+CisKKyNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KKyNpbmNsdWRlIDxzeXMvc3RhdC5oPgorI2luY2x1ZGUgPHN5cy93YWl0Lmg+CisKKyNpbmNsdWRlIDxhc3NlcnQuaD4KKyNpbmNsdWRlIDxlcnJuby5oPgorI2luY2x1ZGUgPHN0cmluZy5oPgorI2luY2x1ZGUgPHRpbWUuaD4KKyNpbmNsdWRlIDxkaXJlbnQuaD4KKyNpbmNsdWRlIDx1bmlzdGQuaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKworI2luY2x1ZGUgPGRwa2cvaTE4bi5oPgorI2luY2x1ZGUgPGRwa2cvZHBrZy5oPgorI2luY2x1ZGUgPGRwa2cvZHBrZy1kYi5oPgorI2luY2x1ZGUgPGRwa2cvcGF0aC5oPgorI2luY2x1ZGUgPGRwa2cvc3VicHJvYy5oPgorI2luY2x1ZGUgPGRwa2cvY29tbWFuZC5oPgorI2luY2x1ZGUgPGRwa2cvdHJpZ2xpYi5oPgorCisjaW5jbHVkZSAiZmlsZXNkYi5oIgorI2luY2x1ZGUgIm1haW4uaCIKKworY29uc3QgY2hhciAqY29uc3Qgc3RhdHVzc3RyaW5nc1tdPSB7CisgIFtzdGF0X25vdGluc3RhbGxlZF0gICAgPSBOXygibm90IGluc3RhbGxlZCIpLAorICBbc3RhdF9jb25maWdmaWxlc10gICAgID0gTl8oIm5vdCBpbnN0YWxsZWQgYnV0IGNvbmZpZ3MgcmVtYWluIiksCisgIFtzdGF0X2hhbGZpbnN0YWxsZWRdICAgPSBOXygiYnJva2VuIGR1ZSB0byBmYWlsZWQgcmVtb3ZhbCBvciBpbnN0YWxsYXRpb24iKSwKKyAgW3N0YXRfdW5wYWNrZWRdICAgICAgICA9IE5fKCJ1bnBhY2tlZCBidXQgbm90IGNvbmZpZ3VyZWQiKSwKKyAgW3N0YXRfaGFsZmNvbmZpZ3VyZWRdICA9IE5fKCJicm9rZW4gZHVlIHRvIHBvc3RpbnN0IGZhaWx1cmUiKSwKKyAgW3N0YXRfdHJpZ2dlcnNhd2FpdGVkXSA9IE5fKCJhd2FpdGluZyB0cmlnZ2VyIHByb2Nlc3NpbmcgYnkgYW5vdGhlciBwYWNrYWdlIiksCisgIFtzdGF0X3RyaWdnZXJzcGVuZGluZ10gPSBOXygidHJpZ2dlcmVkIiksCisgIFtzdGF0X2luc3RhbGxlZF0gICAgICAgPSBOXygiaW5zdGFsbGVkIikKK307CisKK3N0cnVjdCBmaWxlbmFtZW5vZGUgKm5hbWVub2RldG91c2Uoc3RydWN0IGZpbGVuYW1lbm9kZSAqbmFtZW5vZGUsIHN0cnVjdCBwa2dpbmZvICpwa2cpIHsKKyAgc3RydWN0IGZpbGVuYW1lbm9kZSAqcjsKKworICBpZiAoIW5hbWVub2RlLT5kaXZlcnQpIHsKKyAgICByID0gbmFtZW5vZGU7CisgICAgcmV0dXJuIHI7CisgIH0KKworICBkZWJ1ZyhkYmdfZWFjaGZpbGUsIm5hbWVub2RldG91c2UgbmFtZW5vZGU9YCVzJyBwa2c9JXMiLAorICAgICAgICBuYW1lbm9kZS0+bmFtZSxwa2ctPm5hbWUpOworCisgIHI9CisgICAgKG5hbWVub2RlLT5kaXZlcnQtPnVzZWluc3RlYWQgJiYgbmFtZW5vZGUtPmRpdmVydC0+cGtnICE9IHBrZykKKyAgICAgID8gbmFtZW5vZGUtPmRpdmVydC0+dXNlaW5zdGVhZCA6IG5hbWVub2RlOworCisgIGRlYnVnKGRiZ19lYWNoZmlsZSwKKyAgICAgICAgIm5hbWVub2RldG91c2UgLi4uIHVzZWluc3RlYWQ9JXMgY2FtZWZyb209JXMgcGtnPSVzIHJldHVybiAlcyIsCisgICAgICAgIG5hbWVub2RlLT5kaXZlcnQtPnVzZWluc3RlYWQgPyBuYW1lbm9kZS0+ZGl2ZXJ0LT51c2VpbnN0ZWFkLT5uYW1lIDogIjxub25lPiIsCisgICAgICAgIG5hbWVub2RlLT5kaXZlcnQtPmNhbWVmcm9tID8gbmFtZW5vZGUtPmRpdmVydC0+Y2FtZWZyb20tPm5hbWUgOiAiPG5vbmU+IiwKKyAgICAgICAgbmFtZW5vZGUtPmRpdmVydC0+cGtnID8gbmFtZW5vZGUtPmRpdmVydC0+cGtnLT5uYW1lIDogIjxub25lPiIsCisgICAgICAgIHItPm5hbWUpOworCisgIHJldHVybiByOworfQorCisvKioKKyAqIFZlcmlmeSB0aGF0IHNvbWUgcHJvZ3JhbXMgY2FuIGJlIGZvdW5kIGluIHRoZSBQQVRILgorICovCit2b2lkIGNoZWNrcGF0aCh2b2lkKSB7CisgIHN0YXRpYyBjb25zdCBjaGFyICpjb25zdCBwcm9nX2xpc3RbXSA9IHsKKyAgICBERUZBVUxUU0hFTEwsCisgICAgUk0sCisgICAgVEFSLAorICAgIEZJTkQsCisgICAgQkFDS0VORCwKKyAgICAibGRjb25maWciLAorI2lmIFdJVEhfU1RBUlRfU1RPUF9EQUVNT04KKyAgICAic3RhcnQtc3RvcC1kYWVtb24iLAorI2VuZGlmCisgICAgTlVMTAorICB9OworCisgIGNvbnN0IGNoYXIgKmNvbnN0ICpwcm9nOworICBjb25zdCBjaGFyICpwYXRoX2xpc3Q7CisgIHN0cnVjdCB2YXJidWYgZmlsZW5hbWUgPSBWQVJCVUZfSU5JVDsKKyAgaW50IHdhcm5lZD0gMDsKKworICBwYXRoX2xpc3QgPSBnZXRlbnYoIlBBVEgiKTsKKyAgaWYgKCFwYXRoX2xpc3QpCisgICAgb2hzaGl0KF8oIlBBVEggaXMgbm90IHNldC4iKSk7CisKKyAgZm9yIChwcm9nID0gcHJvZ19saXN0OyAqcHJvZzsgcHJvZysrKSB7CisgICAgc3RydWN0IHN0YXQgc3RhYjsKKyAgICBjb25zdCBjaGFyICpwYXRoLCAqcGF0aF9lbmQ7CisgICAgc2l6ZV90IHBhdGhfbGVuOworCisgICAgZm9yIChwYXRoID0gcGF0aF9saXN0OyBwYXRoOyBwYXRoID0gcGF0aF9lbmQgPyBwYXRoX2VuZCArIDEgOiBOVUxMKSB7CisgICAgICBwYXRoX2VuZCA9IHN0cmNocihwYXRoLCAnOicpOworICAgICAgcGF0aF9sZW4gPSBwYXRoX2VuZCA/IChzaXplX3QpKHBhdGhfZW5kIC0gcGF0aCkgOiBzdHJsZW4ocGF0aCk7CisKKyAgICAgIHZhcmJ1Zl9yZXNldCgmZmlsZW5hbWUpOworICAgICAgdmFyYnVmX2FkZF9idWYoJmZpbGVuYW1lLCBwYXRoLCBwYXRoX2xlbik7CisgICAgICBpZiAocGF0aF9sZW4pCisgICAgICAgIHZhcmJ1Zl9hZGRfY2hhcigmZmlsZW5hbWUsICcvJyk7CisgICAgICB2YXJidWZfYWRkX3N0cigmZmlsZW5hbWUsICpwcm9nKTsKKyAgICAgIHZhcmJ1Zl9lbmRfc3RyKCZmaWxlbmFtZSk7CisKKyAgICAgIGlmIChzdGF0KGZpbGVuYW1lLmJ1ZiwgJnN0YWIpID09IDAgJiYgKHN0YWIuc3RfbW9kZSAmIDAxMTEpKQorICAgICAgICBicmVhazsKKyAgICB9CisgICAgaWYgKCFwYXRoKSB7CisgICAgICB3YXJuaW5nKF8oIiclcycgbm90IGZvdW5kIGluIFBBVEggb3Igbm90IGV4ZWN1dGFibGUuIiksICpwcm9nKTsKKyAgICAgIHdhcm5lZCsrOworICAgIH0KKyAgfQorCisgIHZhcmJ1Zl9kZXN0cm95KCZmaWxlbmFtZSk7CisKKyAgaWYgKHdhcm5lZCkKKyAgICBmb3JjaWJsZWVycihmY19iYWRwYXRoLAorICAgICAgICAgICAgICAgIFBfKCIlZCBleHBlY3RlZCBwcm9ncmFtIG5vdCBmb3VuZCBpbiBQQVRIIG9yIG5vdCBleGVjdXRhYmxlLlxuJXMiLAorICAgICAgICAgICAgICAgICAgICIlZCBleHBlY3RlZCBwcm9ncmFtcyBub3QgZm91bmQgaW4gUEFUSCBvciBub3QgZXhlY3V0YWJsZS5cbiVzIiwKKyAgICAgICAgICAgICAgICAgICB3YXJuZWQpLAorICAgICAgICAgICAgICAgIHdhcm5lZCwgXygiTm90ZTogcm9vdCdzIFBBVEggc2hvdWxkIHVzdWFsbHkgY29udGFpbiAiCisgICAgICAgICAgICAgICAgICAgICAgICAgICIvdXNyL2xvY2FsL3NiaW4sIC91c3Ivc2JpbiBhbmQgL3NiaW4uIikpOworfQorCitib29sCitpZ25vcmVfZGVwZW5kcyhzdHJ1Y3QgcGtnaW5mbyAqcGtnKQoreworICBzdHJ1Y3QgcGtnX2xpc3QgKmlkOworICBmb3IgKGlkPSBpZ25vcmVkZXBlbmRzczsgaWQ7IGlkPSBpZC0+bmV4dCkKKyAgICBpZiAoaWQtPnBrZyA9PSBwa2cpCisgICAgICByZXR1cm4gdHJ1ZTsKKyAgcmV0dXJuIGZhbHNlOworfQorCitib29sCitmb3JjZV9kZXBlbmRzKHN0cnVjdCBkZXBwb3NzaSAqcG9zc2kpCit7CisgIHJldHVybiBmY19kZXBlbmRzIHx8CisgICAgICAgICBpZ25vcmVfZGVwZW5kcyhwb3NzaS0+ZWQpIHx8CisgICAgICAgICBpZ25vcmVfZGVwZW5kcyhwb3NzaS0+dXAtPnVwKTsKK30KKworYm9vbAorZm9yY2VfYnJlYWtzKHN0cnVjdCBkZXBwb3NzaSAqcG9zc2kpCit7CisgIHJldHVybiBmY19icmVha3MgfHwKKyAgICAgICAgIGlnbm9yZV9kZXBlbmRzKHBvc3NpLT5lZCkgfHwKKyAgICAgICAgIGlnbm9yZV9kZXBlbmRzKHBvc3NpLT51cC0+dXApOworfQorCitib29sCitmb3JjZV9jb25mbGljdHMoc3RydWN0IGRlcHBvc3NpICpwb3NzaSkKK3sKKyAgcmV0dXJuIGZjX2NvbmZsaWN0czsKK30KKworLyoqCisgKiBSZXR1cm5zIHRoZSBwYXRoIHRvIHRoZSBzY3JpcHQgaW5zaWRlIHRoZSBjaHJvb3QuCisgKi8KK3N0YXRpYyBjb25zdCBjaGFyICoKK3ByZWV4ZWNzY3JpcHQoc3RydWN0IGNvbW1hbmQgKmNtZCkKK3sKKyAgY29uc3QgY2hhciAqYWRtaW5kaXIgPSBkcGtnX2RiX2dldF9kaXIoKTsKKyAgc2l6ZV90IGluc3RkaXJsID0gc3RybGVuKGluc3RkaXIpOworCisgIGlmICgqaW5zdGRpcikgeworICAgIGlmIChzdHJuY21wKGFkbWluZGlyLCBpbnN0ZGlyLCBpbnN0ZGlybCkgIT0gMCkKKyAgICAgIG9oc2hpdChfKCJhZG1pbmRpciBtdXN0IGJlIGluc2lkZSBpbnN0ZGlyIGZvciBkcGtnIHRvIHdvcmsgcHJvcGVybHkiKSk7CisgICAgaWYgKHNldGVudigiRFBLR19BRE1JTkRJUiIsIGFkbWluZGlyICsgaW5zdGRpcmwsIDEpIDwgMCkKKyAgICAgIG9oc2hpdGUoXygidW5hYmxlIHRvIHNldGVudiBmb3Igc3VicHJvY2Vzc2VzIikpOworCisgICAgaWYgKGNocm9vdChpbnN0ZGlyKSkgb2hzaGl0ZShfKCJmYWlsZWQgdG8gY2hyb290IHRvIGAlLjI1MHMnIiksaW5zdGRpcik7CisgICAgaWYgKGNoZGlyKCIvIikpCisgICAgICBvaHNoaXRlKF8oImZhaWxlZCB0byBjaGRpciB0byBgJS4yNTVzJyIpLCAiLyIpOworICB9CisgIGlmIChkZWJ1Z19oYXNfZmxhZyhkYmdfc2NyaXB0cykpIHsKKyAgICBzdHJ1Y3QgdmFyYnVmIGFyZ3MgPSBWQVJCVUZfSU5JVDsKKyAgICBjb25zdCBjaGFyICoqYXJndiA9IGNtZC0+YXJndjsKKworICAgIHdoaWxlICgqKythcmd2KSB7CisgICAgICB2YXJidWZfYWRkX2NoYXIoJmFyZ3MsICcgJyk7CisgICAgICB2YXJidWZfYWRkX3N0cigmYXJncywgKmFyZ3YpOworICAgIH0KKyAgICB2YXJidWZfZW5kX3N0cigmYXJncyk7CisgICAgZGVidWcoZGJnX3NjcmlwdHMsICJmb3JrL2V4ZWMgJXMgKCVzICkiLCBjbWQtPmZpbGVuYW1lLCBhcmdzLmJ1Zik7CisgICAgdmFyYnVmX2Rlc3Ryb3koJmFyZ3MpOworICB9CisgIGlmICghaW5zdGRpcmwpCisgICAgcmV0dXJuIGNtZC0+ZmlsZW5hbWU7CisgIGFzc2VydChzdHJsZW4oY21kLT5maWxlbmFtZSkgPj0gaW5zdGRpcmwpOworICByZXR1cm4gY21kLT5maWxlbmFtZSArIGluc3RkaXJsOworfQorCit2b2lkCitwb3N0X3Bvc3RpbnN0X3Rhc2tzKHN0cnVjdCBwa2dpbmZvICpwa2csIGVudW0gcGtnc3RhdHVzIG5ld19zdGF0dXMpCit7CisgIGlmIChuZXdfc3RhdHVzIDwgc3RhdF90cmlnZ2Vyc2F3YWl0ZWQpCisgICAgcGtnLT5zdGF0dXMgPSBuZXdfc3RhdHVzOworICBlbHNlCisgICAgcGtnLT5zdGF0dXMgPSBwa2ctPnRyaWdhdy5oZWFkID8gc3RhdF90cmlnZ2Vyc2F3YWl0ZWQgOgorICAgICAgICAgICAgICAgICAgcGtnLT50cmlncGVuZF9oZWFkID8gc3RhdF90cmlnZ2Vyc3BlbmRpbmcgOiBzdGF0X2luc3RhbGxlZDsKKworICBwb3N0X3Bvc3RpbnN0X3Rhc2tzX2NvcmUocGtnKTsKK30KKwordm9pZAorcG9zdF9wb3N0aW5zdF90YXNrc19jb3JlKHN0cnVjdCBwa2dpbmZvICpwa2cpCit7CisgIG1vZHN0YXRkYl9ub3RlKHBrZyk7CisKKyAgaWYgKCFmX25vYWN0KSB7CisgICAgZGVidWcoZGJnX3RyaWdnZXJzZGV0YWlsLCAicG9zdF9wb3N0aW5zdF90YXNrc19jb3JlIC0gdHJpZ19pbmNvcnBvcmF0ZSIpOworICAgIHRyaWdfaW5jb3Jwb3JhdGUobXNkYnJ3X3dyaXRlKTsKKyAgfQorfQorCitzdGF0aWMgdm9pZAorcG9zdF9zY3JpcHRfdGFza3Modm9pZCkKK3sKKyAgZW5zdXJlX2RpdmVyc2lvbnMoKTsKKworICBkZWJ1ZyhkYmdfdHJpZ2dlcnNkZXRhaWwsCisgICAgICAgICJwb3N0X3NjcmlwdF90YXNrcyAtIGVuc3VyZV9kaXZlcnNpb25zOyB0cmlnX2luY29ycG9yYXRlIik7CisgIHRyaWdfaW5jb3Jwb3JhdGUobXNkYnJ3X3dyaXRlKTsKK30KKworc3RhdGljIHZvaWQKK2N1X3Bvc3Rfc2NyaXB0X3Rhc2tzKGludCBhcmdjLCB2b2lkICoqYXJndikKK3sKKyAgcG9zdF9zY3JpcHRfdGFza3MoKTsKK30KKworc3RhdGljIHZvaWQgc2V0ZXhlY3V0ZShjb25zdCBjaGFyICpwYXRoLCBzdHJ1Y3Qgc3RhdCAqc3RhYikgeworICBpZiAoKHN0YWItPnN0X21vZGUgJiAwNTU1KSA9PSAwNTU1KSByZXR1cm47CisgIGlmICghY2htb2QocGF0aCwwNzU1KSkgcmV0dXJuOworICBvaHNoaXRlKF8oInVuYWJsZSB0byBzZXQgZXhlY3V0ZSBwZXJtaXNzaW9ucyBvbiBgJS4yNTBzJyIpLHBhdGgpOworfQorCitzdGF0aWMgaW50Citkb19zY3JpcHQoc3RydWN0IHBrZ2luZm8gKnBrZywgc3RydWN0IHBrZ2JpbiAqcGlmLAorICAgICAgICAgIHN0cnVjdCBjb21tYW5kICpjbWQsIHN0cnVjdCBzdGF0ICpzdGFiLCBpbnQgd2FybikKK3sKKyAgcGlkX3QgcGlkOworICBpbnQgcjsKKworICBzZXRleGVjdXRlKGNtZC0+ZmlsZW5hbWUsIHN0YWIpOworCisgIHB1c2hfY2xlYW51cChjdV9wb3N0X3NjcmlwdF90YXNrcywgZWhmbGFnX2JvbWJvdXQsIE5VTEwsIDAsIDApOworCisgIHBpZCA9IHN1YnByb2NfZm9yaygpOworICBpZiAocGlkID09IDApIHsKKyAgICBpZiAoc2V0ZW52KCJEUEtHX01BSU5UU0NSSVBUX1BBQ0tBR0UiLCBwa2ctPm5hbWUsIDEpIHx8CisgICAgICAgIHNldGVudigiRFBLR19NQUlOVFNDUklQVF9BUkNIIiwgcGlmLT5hcmNoLCAxKSB8fAorICAgICAgICBzZXRlbnYoIkRQS0dfTUFJTlRTQ1JJUFRfTkFNRSIsIGNtZC0+YXJndlswXSwgMSkgfHwKKyAgICAgICAgc2V0ZW52KCJEUEtHX1JVTk5JTkdfVkVSU0lPTiIsIFBBQ0tBR0VfVkVSU0lPTiwgMSkpCisgICAgICBvaHNoaXRlKF8oInVuYWJsZSB0byBzZXRlbnYgZm9yIG1haW50YWluZXIgc2NyaXB0IikpOworCisgICAgY21kLT5maWxlbmFtZSA9IGNtZC0+YXJndlswXSA9IHByZWV4ZWNzY3JpcHQoY21kKTsKKyAgICBjb21tYW5kX2V4ZWMoY21kKTsKKyAgfQorICBzdWJwcm9jX3NpZ25hbHNfc2V0dXAoY21kLT5uYW1lKTsgLyogVGhpcyBkb2VzIGEgcHVzaF9jbGVhbnVwKCkuICovCisgIHIgPSBzdWJwcm9jX3dhaXRfY2hlY2socGlkLCBjbWQtPm5hbWUsIHdhcm4pOworICBwb3BfY2xlYW51cChlaGZsYWdfbm9ybWFsdGlkeSk7CisKKyAgcG9wX2NsZWFudXAoZWhmbGFnX25vcm1hbHRpZHkpOworCisgIHJldHVybiByOworfQorCitzdGF0aWMgaW50Cit2bWFpbnRhaW5lcl9zY3JpcHRfaW5zdGFsbGVkKHN0cnVjdCBwa2dpbmZvICpwa2csIGNvbnN0IGNoYXIgKnNjcmlwdG5hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmRlc2MsIHZhX2xpc3QgYXJncykKK3sKKyAgc3RydWN0IGNvbW1hbmQgY21kOworICBjb25zdCBjaGFyICpzY3JpcHRwYXRoOworICBzdHJ1Y3Qgc3RhdCBzdGFiOworICBjaGFyIGJ1ZlsxMDBdOworCisgIHNjcmlwdHBhdGg9IHBrZ2FkbWluZmlsZShwa2csc2NyaXB0bmFtZSk7CisgIHNwcmludGYoYnVmLCBfKCJpbnN0YWxsZWQgJXMgc2NyaXB0IiksIGRlc2MpOworCisgIGNvbW1hbmRfaW5pdCgmY21kLCBzY3JpcHRwYXRoLCBidWYpOworICBjb21tYW5kX2FkZF9hcmcoJmNtZCwgc2NyaXB0bmFtZSk7CisgIGNvbW1hbmRfYWRkX2FyZ3YoJmNtZCwgYXJncyk7CisKKyAgaWYgKHN0YXQoc2NyaXB0cGF0aCwmc3RhYikpIHsKKyAgICBjb21tYW5kX2Rlc3Ryb3koJmNtZCk7CisgICAgaWYgKGVycm5vID09IEVOT0VOVCkgeworICAgICAgZGVidWcoZGJnX3NjcmlwdHMsICJ2bWFpbnRhaW5lcl9zY3JpcHRfaW5zdGFsbGVkIG5vbmV4aXN0ZW50ICVzIiwKKyAgICAgICAgICAgIHNjcmlwdG5hbWUpOworICAgICAgcmV0dXJuIDA7CisgICAgfQorICAgIG9oc2hpdGUoXygidW5hYmxlIHRvIHN0YXQgJXMgYCUuMjUwcyciKSwgYnVmLCBzY3JpcHRwYXRoKTsKKyAgfQorICBkb19zY3JpcHQocGtnLCAmcGtnLT5pbnN0YWxsZWQsICZjbWQsICZzdGFiLCAwKTsKKworICBjb21tYW5kX2Rlc3Ryb3koJmNtZCk7CisKKyAgcmV0dXJuIDE7Cit9CisKKy8qCisgKiBBbGwgLi4uJ3MgaW4gbWFpbnRhaW5lcl9zY3JpcHRfKiBhcmUgY29uc3QgY2hhciAqJ3MuCisgKi8KKworaW50CittYWludGFpbmVyX3NjcmlwdF9pbnN0YWxsZWQoc3RydWN0IHBrZ2luZm8gKnBrZywgY29uc3QgY2hhciAqc2NyaXB0bmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpkZXNjLCAuLi4pCit7CisgIGludCByOworICB2YV9saXN0IGFyZ3M7CisKKyAgdmFfc3RhcnQoYXJncywgZGVzYyk7CisgIHIgPSB2bWFpbnRhaW5lcl9zY3JpcHRfaW5zdGFsbGVkKHBrZywgc2NyaXB0bmFtZSwgZGVzYywgYXJncyk7CisgIHZhX2VuZChhcmdzKTsKKyAgaWYgKHIpCisgICAgcG9zdF9zY3JpcHRfdGFza3MoKTsKKworICByZXR1cm4gcjsKK30KKworaW50CittYWludGFpbmVyX3NjcmlwdF9wb3N0aW5zdChzdHJ1Y3QgcGtnaW5mbyAqcGtnLCAuLi4pCit7CisgIGludCByOworICB2YV9saXN0IGFyZ3M7CisKKyAgdmFfc3RhcnQoYXJncywgcGtnKTsKKyAgciA9IHZtYWludGFpbmVyX3NjcmlwdF9pbnN0YWxsZWQocGtnLCBQT1NUSU5TVEZJTEUsICJwb3N0LWluc3RhbGxhdGlvbiIsIGFyZ3MpOworICB2YV9lbmQoYXJncyk7CisgIGlmIChyKQorICAgIGVuc3VyZV9kaXZlcnNpb25zKCk7CisKKyAgcmV0dXJuIHI7Cit9CisKK2ludAorbWFpbnRhaW5lcl9zY3JpcHRfbmV3KHN0cnVjdCBwa2dpbmZvICpwa2csCisgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqc2NyaXB0bmFtZSwgY29uc3QgY2hhciAqZGVzYywKKyAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpjaWRpciwgY2hhciAqY2lkaXJyZXN0LCAuLi4pCit7CisgIHN0cnVjdCBjb21tYW5kIGNtZDsKKyAgc3RydWN0IHN0YXQgc3RhYjsKKyAgdmFfbGlzdCBhcmdzOworICBjaGFyIGJ1ZlsxMDBdOworCisgIHN0cmNweShjaWRpcnJlc3QsIHNjcmlwdG5hbWUpOworICBzcHJpbnRmKGJ1ZiwgXygibmV3ICVzIHNjcmlwdCIpLCBkZXNjKTsKKworICB2YV9zdGFydChhcmdzLCBjaWRpcnJlc3QpOworICBjb21tYW5kX2luaXQoJmNtZCwgY2lkaXIsIGJ1Zik7CisgIGNvbW1hbmRfYWRkX2FyZygmY21kLCBzY3JpcHRuYW1lKTsKKyAgY29tbWFuZF9hZGRfYXJndigmY21kLCBhcmdzKTsKKyAgdmFfZW5kKGFyZ3MpOworCisgIGlmIChzdGF0KGNpZGlyLCZzdGFiKSkgeworICAgIGNvbW1hbmRfZGVzdHJveSgmY21kKTsKKyAgICBpZiAoZXJybm8gPT0gRU5PRU5UKSB7CisgICAgICBkZWJ1ZyhkYmdfc2NyaXB0cywibWFpbnRhaW5lcl9zY3JpcHRfbmV3IG5vbmV4aXN0ZW50ICVzIGAlcyciLHNjcmlwdG5hbWUsY2lkaXIpOworICAgICAgcmV0dXJuIDA7CisgICAgfQorICAgIG9oc2hpdGUoXygidW5hYmxlIHRvIHN0YXQgJXMgYCUuMjUwcyciKSwgYnVmLCBjaWRpcik7CisgIH0KKyAgZG9fc2NyaXB0KHBrZywgJnBrZy0+YXZhaWxhYmxlLCAmY21kLCAmc3RhYiwgMCk7CisKKyAgY29tbWFuZF9kZXN0cm95KCZjbWQpOworICBwb3N0X3NjcmlwdF90YXNrcygpOworCisgIHJldHVybiAxOworfQorCitpbnQgbWFpbnRhaW5lcl9zY3JpcHRfYWx0ZXJuYXRpdmUoc3RydWN0IHBrZ2luZm8gKnBrZywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpzY3JpcHRuYW1lLCBjb25zdCBjaGFyICpkZXNjLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmNpZGlyLCBjaGFyICpjaWRpcnJlc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqaWZvaywgY29uc3QgY2hhciAqaWZmYWxsYmFjaykgeworICBzdHJ1Y3QgY29tbWFuZCBjbWQ7CisgIGNvbnN0IGNoYXIgKm9sZHNjcmlwdHBhdGg7CisgIHN0cnVjdCBzdGF0IHN0YWI7CisgIGNoYXIgYnVmWzEwMF07CisKKyAgb2xkc2NyaXB0cGF0aD0gcGtnYWRtaW5maWxlKHBrZyxzY3JpcHRuYW1lKTsKKyAgc3ByaW50ZihidWYsIF8oIm9sZCAlcyBzY3JpcHQiKSwgZGVzYyk7CisKKyAgY29tbWFuZF9pbml0KCZjbWQsIG9sZHNjcmlwdHBhdGgsIGJ1Zik7CisgIGNvbW1hbmRfYWRkX2FyZ3MoJmNtZCwgc2NyaXB0bmFtZSwgaWZvaywKKyAgICAgICAgICAgICAgICAgICB2ZXJzaW9uZGVzY3JpYmUoJnBrZy0+YXZhaWxhYmxlLnZlcnNpb24sIHZkZXdfbm9uYW1iaWcpLAorICAgICAgICAgICAgICAgICAgIE5VTEwpOworCisgIGlmIChzdGF0KG9sZHNjcmlwdHBhdGgsJnN0YWIpKSB7CisgICAgaWYgKGVycm5vID09IEVOT0VOVCkgeworICAgICAgZGVidWcoZGJnX3NjcmlwdHMsIm1haW50YWluZXJfc2NyaXB0X2FsdGVybmF0aXZlIG5vbmV4aXN0ZW50ICVzIGAlcyciLAorICAgICAgICAgICAgc2NyaXB0bmFtZSxvbGRzY3JpcHRwYXRoKTsKKyAgICAgIGNvbW1hbmRfZGVzdHJveSgmY21kKTsKKyAgICAgIHJldHVybiAwOworICAgIH0KKyAgICB3YXJuaW5nKF8oInVuYWJsZSB0byBzdGF0ICVzICclLjI1MHMnOiAlcyIpLAorICAgICAgICAgICAgY21kLm5hbWUsIG9sZHNjcmlwdHBhdGgsIHN0cmVycm9yKGVycm5vKSk7CisgIH0gZWxzZSB7CisgICAgaWYgKCFkb19zY3JpcHQocGtnLCAmcGtnLT5pbnN0YWxsZWQsICZjbWQsICZzdGFiLCBQUk9DV0FSTikpIHsKKyAgICAgIGNvbW1hbmRfZGVzdHJveSgmY21kKTsKKyAgICAgIHBvc3Rfc2NyaXB0X3Rhc2tzKCk7CisgICAgICByZXR1cm4gMTsKKyAgICB9CisgIH0KKyAgZnByaW50ZihzdGRlcnIsIF8oImRwa2cgLSB0cnlpbmcgc2NyaXB0IGZyb20gdGhlIG5ldyBwYWNrYWdlIGluc3RlYWQgLi4uXG4iKSk7CisKKyAgc3RyY3B5KGNpZGlycmVzdCxzY3JpcHRuYW1lKTsKKyAgc3ByaW50ZihidWYsIF8oIm5ldyAlcyBzY3JpcHQiKSwgZGVzYyk7CisKKyAgY29tbWFuZF9kZXN0cm95KCZjbWQpOworICBjb21tYW5kX2luaXQoJmNtZCwgY2lkaXIsIGJ1Zik7CisgIGNvbW1hbmRfYWRkX2FyZ3MoJmNtZCwgc2NyaXB0bmFtZSwgaWZmYWxsYmFjaywKKyAgICAgICAgICAgICAgICAgICB2ZXJzaW9uZGVzY3JpYmUoJnBrZy0+aW5zdGFsbGVkLnZlcnNpb24sIHZkZXdfbm9uYW1iaWcpLAorICAgICAgICAgICAgICAgICAgIE5VTEwpOworCisgIGlmIChzdGF0KGNpZGlyLCZzdGFiKSkgeworICAgIGNvbW1hbmRfZGVzdHJveSgmY21kKTsKKyAgICBpZiAoZXJybm8gPT0gRU5PRU5UKQorICAgICAgb2hzaGl0KF8oInRoZXJlIGlzIG5vIHNjcmlwdCBpbiB0aGUgbmV3IHZlcnNpb24gb2YgdGhlIHBhY2thZ2UgLSBnaXZpbmcgdXAiKSk7CisgICAgZWxzZQorICAgICAgb2hzaGl0ZShfKCJ1bmFibGUgdG8gc3RhdCAlcyBgJS4yNTBzJyIpLGJ1ZixjaWRpcik7CisgIH0KKworICBkb19zY3JpcHQocGtnLCAmcGtnLT5hdmFpbGFibGUsICZjbWQsICZzdGFiLCAwKTsKKyAgZnByaW50ZihzdGRlcnIsIF8oImRwa2c6IC4uLiBpdCBsb29rcyBsaWtlIHRoYXQgd2VudCBPSy5cbiIpKTsKKworICBjb21tYW5kX2Rlc3Ryb3koJmNtZCk7CisgIHBvc3Rfc2NyaXB0X3Rhc2tzKCk7CisKKyAgcmV0dXJuIDE7Cit9CisKK3ZvaWQgY2xlYXJfaXN0b2Jlcyh2b2lkKSB7CisgIHN0cnVjdCBwa2dpdGVyYXRvciAqaXQ7CisgIHN0cnVjdCBwa2dpbmZvICpwa2c7CisKKyAgaXQgPSBwa2dfZGJfaXRlcl9uZXcoKTsKKyAgd2hpbGUgKChwa2cgPSBwa2dfZGJfaXRlcl9uZXh0KGl0KSkgIT0gTlVMTCkgeworICAgIGVuc3VyZV9wYWNrYWdlX2NsaWVudGRhdGEocGtnKTsKKyAgICBwa2ctPmNsaWVudGRhdGEtPmlzdG9iZT0gaXRiX25vcm1hbDsKKyAgICBwa2ctPmNsaWVudGRhdGEtPnJlcGxhY2luZ2ZpbGVzYW5kc2FpZD0gMDsKKyAgfQorICBwa2dfZGJfaXRlcl9mcmVlKGl0KTsKK30KKworLyoKKyAqIFJldHVybnMgdHJ1ZSBpZiB0aGUgZGlyZWN0b3J5IGNvbnRhaW5zIGNvbmZmaWxlcyBiZWxvbmdpbmcgdG8gcGtnLAorICogZmFsc2Ugb3RoZXJ3aXNlLgorICovCitib29sCitkaXJfaGFzX2NvbmZmaWxlcyhzdHJ1Y3QgZmlsZW5hbWVub2RlICpmaWxlLCBzdHJ1Y3QgcGtnaW5mbyAqcGtnKQoreworICBzdHJ1Y3QgY29uZmZpbGUgKmNvbmZmOworICBzaXplX3QgbmFtZWxlbjsKKworICBkZWJ1ZyhkYmdfdmVyeXZlcmJvc2UsICJkaXJfaGFzX2NvbmZmaWxlcyAnJXMnIChmcm9tICVzKSIsIGZpbGUtPm5hbWUsCisJcGtnLT5uYW1lKTsKKyAgbmFtZWxlbiA9IHN0cmxlbihmaWxlLT5uYW1lKTsKKyAgZm9yIChjb25mZj0gcGtnLT5pbnN0YWxsZWQuY29uZmZpbGVzOyBjb25mZjsgY29uZmY9IGNvbmZmLT5uZXh0KSB7CisgICAgICBpZiAoc3RybmNtcChmaWxlLT5uYW1lLCBjb25mZi0+bmFtZSwgbmFtZWxlbikgPT0gMCAmJgorICAgICAgICAgIGNvbmZmLT5uYW1lW25hbWVsZW5dID09ICcvJykgeworCWRlYnVnKGRiZ192ZXJ5dmVyYm9zZSwgImRpcmVjdG9yeSAlcyBoYXMgY29uZmZpbGUgJXMgZnJvbSAlcyIsCisJICAgICAgZmlsZS0+bmFtZSwgY29uZmYtPm5hbWUsIHBrZy0+bmFtZSk7CisJcmV0dXJuIHRydWU7CisgICAgICB9CisgIH0KKyAgZGVidWcoZGJnX3Zlcnl2ZXJib3NlLCAiZGlyX2hhc19jb25mZmlsZXMgbm8iKTsKKyAgcmV0dXJuIGZhbHNlOworfQorCisvKgorICogUmV0dXJucyB0cnVlIGlmIHRoZSBmaWxlIGlzIHVzZWQgYnkgcGFja2FnZXMgb3RoZXIgdGhhbiBwa2csCisgKiBmYWxzZSBvdGhlcndpc2UuCisgKi8KK2Jvb2wKK2Rpcl9pc191c2VkX2J5X290aGVycyhzdHJ1Y3QgZmlsZW5hbWVub2RlICpmaWxlLCBzdHJ1Y3QgcGtnaW5mbyAqcGtnKQoreworICBzdHJ1Y3QgZmlsZXBhY2thZ2VzX2l0ZXJhdG9yICppdGVyOworICBzdHJ1Y3QgcGtnaW5mbyAqb3RoZXJfcGtnOworCisgIGRlYnVnKGRiZ192ZXJ5dmVyYm9zZSwgImRpcl9pc191c2VkX2J5X290aGVycyAnJXMnIChleGNlcHQgJXMpIiwgZmlsZS0+bmFtZSwKKyAgICAgICAgcGtnID8gcGtnLT5uYW1lIDogIjxub25lPiIpOworCisgIGl0ZXIgPSBmaWxlcGFja2FnZXNfaXRlcl9uZXcoZmlsZSk7CisgIHdoaWxlICgob3RoZXJfcGtnID0gZmlsZXBhY2thZ2VzX2l0ZXJfbmV4dChpdGVyKSkpIHsKKyAgICBkZWJ1ZyhkYmdfdmVyeXZlcmJvc2UsICJkaXJfaXNfdXNlZF9ieV9vdGhlcnMgY29uc2lkZXJpbmcgJXMgLi4uIiwKKyAgICAgICAgICBvdGhlcl9wa2ctPm5hbWUpOworICAgIGlmIChvdGhlcl9wa2cgPT0gcGtnKQorICAgICAgY29udGludWU7CisKKyAgICBkZWJ1ZyhkYmdfdmVyeXZlcmJvc2UsICJkaXJfaXNfdXNlZF9ieV9vdGhlcnMgeWVzIik7CisgICAgcmV0dXJuIHRydWU7CisgIH0KKyAgZmlsZXBhY2thZ2VzX2l0ZXJfZnJlZShpdGVyKTsKKworICBkZWJ1ZyhkYmdfdmVyeXZlcmJvc2UsICJkaXJfaXNfdXNlZF9ieV9vdGhlcnMgbm8iKTsKKyAgcmV0dXJuIGZhbHNlOworfQorCisvKgorICogUmV0dXJucyB0cnVlIGlmIHRoZSBmaWxlIGlzIHVzZWQgYnkgcGtnLCBmYWxzZSBvdGhlcndpc2UuCisgKi8KK2Jvb2wKK2Rpcl9pc191c2VkX2J5X3BrZyhzdHJ1Y3QgZmlsZW5hbWVub2RlICpmaWxlLCBzdHJ1Y3QgcGtnaW5mbyAqcGtnLAorICAgICAgICAgICAgICAgICAgIHN0cnVjdCBmaWxlaW5saXN0ICpsaXN0KQoreworICBzdHJ1Y3QgZmlsZWlubGlzdCAqbm9kZTsKKyAgc2l6ZV90IG5hbWVsZW47CisKKyAgZGVidWcoZGJnX3Zlcnl2ZXJib3NlLCAiZGlyX2lzX3VzZWRfYnlfcGtnICclcycgKGJ5ICVzKSIsCisgICAgICAgIGZpbGUtPm5hbWUsIHBrZyA/IHBrZy0+bmFtZSA6ICI8bm9uZT4iKTsKKworICBuYW1lbGVuID0gc3RybGVuKGZpbGUtPm5hbWUpOworCisgIGZvciAobm9kZSA9IGxpc3Q7IG5vZGU7IG5vZGUgPSBub2RlLT5uZXh0KSB7CisgICAgZGVidWcoZGJnX3Zlcnl2ZXJib3NlLCAiZGlyX2lzX3VzZWRfYnlfcGtnIGNvbnNpZGVyaW5nICVzIC4uLiIsCisgICAgICAgICAgbm9kZS0+bmFtZW5vZGUtPm5hbWUpOworCisgICAgaWYgKHN0cm5jbXAoZmlsZS0+bmFtZSwgbm9kZS0+bmFtZW5vZGUtPm5hbWUsIG5hbWVsZW4pID09IDAgJiYKKyAgICAgICAgbm9kZS0+bmFtZW5vZGUtPm5hbWVbbmFtZWxlbl0gPT0gJy8nKSB7CisgICAgICBkZWJ1ZyhkYmdfdmVyeXZlcmJvc2UsICJkaXJfaXNfdXNlZF9ieV9wa2cgeWVzIik7CisgICAgICByZXR1cm4gdHJ1ZTsKKyAgICB9CisgIH0KKworICBkZWJ1ZyhkYmdfdmVyeXZlcmJvc2UsICJkaXJfaXNfdXNlZF9ieV9wa2cgbm8iKTsKKworICByZXR1cm4gZmFsc2U7Cit9CisKK3ZvaWQgb2xkY29uZmZzZXRmbGFncyhjb25zdCBzdHJ1Y3QgY29uZmZpbGUgKnNlYXJjaGNvbmZmKSB7CisgIHN0cnVjdCBmaWxlbmFtZW5vZGUgKm5hbWVub2RlOworCisgIHdoaWxlIChzZWFyY2hjb25mZikgeworICAgIG5hbWVub2RlPSBmaW5kbmFtZW5vZGUoc2VhcmNoY29uZmYtPm5hbWUsIDApOyAvKiBYWFggKi8KKyAgICBuYW1lbm9kZS0+ZmxhZ3MgfD0gZm5uZl9vbGRfY29uZmY7CisgICAgaWYgKCFuYW1lbm9kZS0+b2xkaGFzaCkKKyAgICAgIG5hbWVub2RlLT5vbGRoYXNoPSBzZWFyY2hjb25mZi0+aGFzaDsKKyAgICBkZWJ1ZyhkYmdfY29uZmZkZXRhaWwsICJvbGRjb25mZnNldGZsYWdzIGAlcycgbmFtZW5vZGUgJXAgZmxhZ3MgJW8iLAorICAgICAgICAgIHNlYXJjaGNvbmZmLT5uYW1lLCBuYW1lbm9kZSwgbmFtZW5vZGUtPmZsYWdzKTsKKyAgICBzZWFyY2hjb25mZj0gc2VhcmNoY29uZmYtPm5leHQ7CisgIH0KK30KKworLyoKKyAqIElmIHRoZSBwYXRobmFtZSB0byByZW1vdmUgaXM6CisgKgorICogMS4gYSBzdGlja3kgb3Igc2V0LWlkIGZpbGUsIG9yCisgKiAyLiBhbiB1bmtub3duIG9iamVjdCAoaS5lLiwgbm90IGEgZmlsZSwgbGluaywgZGlyZWN0b3J5LCBmaWZvIG9yIHNvY2tldCkKKyAqCisgKiB3ZSBjaGFuZ2UgaXRzIG1vZGUgc28gdGhhdCBhIG1hbGljaW91cyB1c2VyIGNhbm5vdCB1c2UgaXQsIGV2ZW4gaWYgaXQncworICogbGlua2VkIHRvIGFub3RoZXIgZmlsZS4KKyAqLworaW50CitzZWN1cmVfdW5saW5rKGNvbnN0IGNoYXIgKnBhdGhuYW1lKQoreworICBzdHJ1Y3Qgc3RhdCBzdGFiOworCisgIGlmIChsc3RhdChwYXRobmFtZSwmc3RhYikpIHJldHVybiAtMTsKKworICByZXR1cm4gc2VjdXJlX3VubGlua19zdGF0dGVkKHBhdGhuYW1lLCAmc3RhYik7Cit9CisKK2ludAorc2VjdXJlX3VubGlua19zdGF0dGVkKGNvbnN0IGNoYXIgKnBhdGhuYW1lLCBjb25zdCBzdHJ1Y3Qgc3RhdCAqc3RhYikKK3sKKyAgaWYgKFNfSVNSRUcoc3RhYi0+c3RfbW9kZSkgPyAoc3RhYi0+c3RfbW9kZSAmIDA3MDAwKSA6CisgICAgICAhKFNfSVNMTksoc3RhYi0+c3RfbW9kZSkgfHwgU19JU0RJUihzdGFiLT5zdF9tb2RlKSB8fAorCVNfSVNGSUZPKHN0YWItPnN0X21vZGUpIHx8IFNfSVNTT0NLKHN0YWItPnN0X21vZGUpKSkgeworICAgIGlmIChjaG1vZChwYXRobmFtZSwgMDYwMCkpCisgICAgICByZXR1cm4gLTE7CisgIH0KKyAgaWYgKHVubGluayhwYXRobmFtZSkpIHJldHVybiAtMTsKKyAgcmV0dXJuIDA7Cit9CisKK3ZvaWQgZW5zdXJlX3BhdGhuYW1lX25vbmV4aXN0aW5nKGNvbnN0IGNoYXIgKnBhdGhuYW1lKSB7CisgIHBpZF90IHBpZDsKKyAgY29uc3QgY2hhciAqdTsKKworICB1ID0gcGF0aF9za2lwX3NsYXNoX2RvdHNsYXNoKHBhdGhuYW1lKTsKKyAgYXNzZXJ0KCp1KTsKKworICBkZWJ1ZyhkYmdfZWFjaGZpbGUsImVuc3VyZV9wYXRobmFtZV9ub25leGlzdGluZyBgJXMnIixwYXRobmFtZSk7CisgIGlmICghcm1kaXIocGF0aG5hbWUpKQorICAgIHJldHVybjsgLyogRGVsZXRlZCBpdCBPSywgaXQgd2FzIGEgZGlyZWN0b3J5LiAqLworICBpZiAoZXJybm8gPT0gRU5PRU5UIHx8IGVycm5vID09IEVMT09QKSByZXR1cm47CisgIGlmIChlcnJubyA9PSBFTk9URElSKSB7CisgICAgLyogRWl0aGVyIGl0J3MgYSBmaWxlLCBvciBvbmUgb2YgdGhlIHBhdGggY29tcG9uZW50cyBpcy4gSWYgb25lCisgICAgICogb2YgdGhlIHBhdGggY29tcG9uZW50cyBpcyB0aGlzIHdpbGwgZmFpbCBhZ2FpbiAuLi4gKi8KKyAgICBpZiAoc2VjdXJlX3VubGluayhwYXRobmFtZSkgPT0gMCkKKyAgICAgIHJldHVybjsgLyogT0ssIGl0IHdhcy4gKi8KKyAgICBpZiAoZXJybm8gPT0gRU5PVERJUikgcmV0dXJuOworICB9CisgIGlmIChlcnJubyAhPSBFTk9URU1QVFkgJiYgZXJybm8gIT0gRUVYSVNUKSB7IC8qIEh1aD8gKi8KKyAgICBvaHNoaXRlKF8oInVuYWJsZSB0byBzZWN1cmVseSByZW1vdmUgJyUuMjU1cyciKSwgcGF0aG5hbWUpOworICB9CisgIHBpZCA9IHN1YnByb2NfZm9yaygpOworICBpZiAocGlkID09IDApIHsKKyAgICBleGVjbHAoUk0sICJybSIsICItcmYiLCAiLS0iLCBwYXRobmFtZSwgTlVMTCk7CisgICAgb2hzaGl0ZShfKCJ1bmFibGUgdG8gZXhlY3V0ZSAlcyAoJXMpIiksIF8oInJtIGNvbW1hbmQgZm9yIGNsZWFudXAiKSwgUk0pOworICB9CisgIGRlYnVnKGRiZ19lYWNoZmlsZSwiZW5zdXJlX3BhdGhuYW1lX25vbmV4aXN0aW5nIHJ1bm5pbmcgcm0gLXJmIik7CisgIHN1YnByb2Nfd2FpdF9jaGVjayhwaWQsICJybSBjbGVhbnVwIiwgMCk7Cit9CisKK3ZvaWQgbG9nX2FjdGlvbihjb25zdCBjaGFyICphY3Rpb24sIHN0cnVjdCBwa2dpbmZvICpwa2cpIHsKKyAgbG9nX21lc3NhZ2UoIiVzICVzICVzICVzIiwgYWN0aW9uLCBwa2ctPm5hbWUsCisJICAgICAgdmVyc2lvbmRlc2NyaWJlKCZwa2ctPmluc3RhbGxlZC52ZXJzaW9uLCB2ZGV3X25vbmFtYmlnKSwKKwkgICAgICB2ZXJzaW9uZGVzY3JpYmUoJnBrZy0+YXZhaWxhYmxlLnZlcnNpb24sIHZkZXdfbm9uYW1iaWcpKTsKKyAgc3RhdHVzZmRfc2VuZCgicHJvY2Vzc2luZzogJXM6ICVzIiwgYWN0aW9uLCBwa2ctPm5hbWUpOworfQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zcmMvaW5mb2RiLmMgYi9kcGtnLTEuMTYuMS4xL3NyYy9pbmZvZGIuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iZDRmN2I0Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zcmMvaW5mb2RiLmMKQEAgLTAsMCArMSwxMDggQEAKKy8qCisgKiBkcGtnIC0gbWFpbiBwcm9ncmFtIGZvciBwYWNrYWdlIG1hbmFnZW1lbnQKKyAqIGluZm9kYi5jIC0gcGFja2FnZSBjb250cm9sIGluZm9ybWF0aW9uIGRhdGFiYXNlCisgKgorICogQ29weXJpZ2h0IMKpIDE5OTUgSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuZ3JlZW5lbmQub3JnLnVrPgorICogQ29weXJpZ2h0IMKpIDIwMTEgR3VpbGxlbSBKb3ZlciA8Z3VpbGxlbUBkZWJpYW4ub3JnPgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaW5jbHVkZSA8Y29uZmlnLmg+CisjaW5jbHVkZSA8Y29tcGF0Lmg+CisKKyNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KKyNpbmNsdWRlIDxzeXMvc3RhdC5oPgorCisjaW5jbHVkZSA8ZXJybm8uaD4KKyNpbmNsdWRlIDxkaXJlbnQuaD4KKyNpbmNsdWRlIDx1bmlzdGQuaD4KKworI2luY2x1ZGUgPGRwa2cvaTE4bi5oPgorI2luY2x1ZGUgPGRwa2cvZHBrZy5oPgorI2luY2x1ZGUgPGRwa2cvZHBrZy1kYi5oPgorI2luY2x1ZGUgPGRwa2cvZGVidWcuaD4KKworI2luY2x1ZGUgImZpbGVzZGIuaCIKKyNpbmNsdWRlICJpbmZvZGIuaCIKKworYm9vbAorcGtnX2luZm9kYl9oYXNfZmlsZShzdHJ1Y3QgcGtnaW5mbyAqcGtnLCBjb25zdCBjaGFyICpuYW1lKQoreworCWNvbnN0IGNoYXIgKmZpbGVuYW1lOworCXN0cnVjdCBzdGF0IHN0YWI7CisKKwlmaWxlbmFtZSA9IHBrZ2FkbWluZmlsZShwa2csIG5hbWUpOworCWlmIChsc3RhdChmaWxlbmFtZSwgJnN0YWIpID09IDApCisJCXJldHVybiB0cnVlOworCWVsc2UgaWYgKGVycm5vID09IEVOT0VOVCkKKwkJcmV0dXJuIGZhbHNlOworCWVsc2UKKwkJb2hzaGl0ZShfKCJ1bmFibGUgdG8gY2hlY2sgZXhpc3RlbmNlIG9mIGAlLjI1MHMnIiksIGZpbGVuYW1lKTsKK30KKwordm9pZAorcGtnX2luZm9kYl9mb3JlYWNoKHN0cnVjdCBwa2dpbmZvICpwa2csIHBrZ19pbmZvZGJfZmlsZV9mdW5jICpmdW5jKQoreworCURJUiAqZGJfZGlyOworCXN0cnVjdCBkaXJlbnQgKmRiX2RlOworCXN0cnVjdCB2YXJidWYgZGJfcGF0aCA9IFZBUkJVRl9JTklUOworCXNpemVfdCBkYl9wYXRoX2xlbjsKKworCXZhcmJ1Zl9hZGRfc3RyKCZkYl9wYXRoLCBwa2dhZG1pbmRpcigpKTsKKwl2YXJidWZfYWRkX2NoYXIoJmRiX3BhdGgsICcvJyk7CisJZGJfcGF0aF9sZW4gPSBkYl9wYXRoLnVzZWQ7CisJdmFyYnVmX2FkZF9jaGFyKCZkYl9wYXRoLCAnXDAnKTsKKworCWRiX2RpciA9IG9wZW5kaXIoZGJfcGF0aC5idWYpOworCWlmICghZGJfZGlyKQorCQlvaHNoaXRlKF8oImNhbm5vdCByZWFkIGluZm8gZGlyZWN0b3J5IikpOworCisJcHVzaF9jbGVhbnVwKGN1X2Nsb3NlZGlyLCB+MCwgTlVMTCwgMCwgMSwgKHZvaWQgKilkYl9kaXIpOworCXdoaWxlICgoZGJfZGUgPSByZWFkZGlyKGRiX2RpcikpICE9IE5VTEwpIHsKKwkJY29uc3QgY2hhciAqZmlsZW5hbWUsICpmaWxldHlwZSwgKmRvdDsKKworCQlkZWJ1ZyhkYmdfdmVyeXZlcmJvc2UsICJpbmZvZGIgZm9yZWFjaCBpbmZvIGZpbGUgJyVzJyIsCisJCSAgICAgIGRiX2RlLT5kX25hbWUpOworCisJCS8qIElnbm9yZSBkb3RmaWxlcywgaW5jbHVkaW5nIOKAmC7igJkgYW5kIOKAmC4u4oCZLiAqLworCQlpZiAoZGJfZGUtPmRfbmFtZVswXSA9PSAnLicpCisJCQljb250aW51ZTsKKworCQkvKiBJZ25vcmUgYW55dGhpbmcgb2RkLiAqLworCQlkb3QgPSBzdHJyY2hyKGRiX2RlLT5kX25hbWUsICcuJyk7CisJCWlmIChkb3QgPT0gTlVMTCkKKwkJCWNvbnRpbnVlOworCisJCS8qIElnbm9yZSBmaWxlcyBmcm9tIG90aGVyIHBhY2thZ2VzLiAqLworCQlpZiAoc3RybGVuKHBrZy0+bmFtZSkgIT0gKHNpemVfdCkoZG90IC0gZGJfZGUtPmRfbmFtZSkgfHwKKwkJICAgIHN0cm5jbXAoZGJfZGUtPmRfbmFtZSwgcGtnLT5uYW1lLCBkb3QgLSBkYl9kZS0+ZF9uYW1lKSkKKwkJCWNvbnRpbnVlOworCisJCWRlYnVnKGRiZ19zdHVwaWRseXZlcmJvc2UsICJpbmZvZGIgZm9yZWFjaCBmaWxlIHRoaXMgcGtnIik7CisKKwkJLyogU2tpcCBwYXN0IHRoZSBmdWxsIHN0b3AuICovCisJCWZpbGV0eXBlID0gZG90ICsgMTsKKworCQl2YXJidWZfdHJ1bmMoJmRiX3BhdGgsIGRiX3BhdGhfbGVuKTsKKwkJdmFyYnVmX2FkZF9zdHIoJmRiX3BhdGgsIGRiX2RlLT5kX25hbWUpOworCQl2YXJidWZfZW5kX3N0cigmZGJfcGF0aCk7CisJCWZpbGVuYW1lID0gZGJfcGF0aC5idWY7CisKKwkJZnVuYyhmaWxlbmFtZSwgZmlsZXR5cGUpOworCX0KKwlwb3BfY2xlYW51cChlaGZsYWdfbm9ybWFsdGlkeSk7IC8qIGNsb3NlZGlyICovCisKKwl2YXJidWZfZGVzdHJveSgmZGJfcGF0aCk7Cit9CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NyYy9pbmZvZGIuaCBiL2Rwa2ctMS4xNi4xLjEvc3JjL2luZm9kYi5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjhhYjVmZTUKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3NyYy9pbmZvZGIuaApAQCAtMCwwICsxLDM0IEBACisvKgorICogZHBrZyAtIG1haW4gcHJvZ3JhbSBmb3IgcGFja2FnZSBtYW5hZ2VtZW50CisgKiBpbmZvZGIuaCAtIHBhY2thZ2UgY29udHJvbCBpbmZvcm1hdGlvbiBkYXRhYmFzZQorICoKKyAqIENvcHlyaWdodCDCqSAyMDExIEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworI2lmbmRlZiBEUEtHX0lORk9EQl9ICisjZGVmaW5lIERQS0dfSU5GT0RCX0gKKworI2luY2x1ZGUgPHN0ZGJvb2wuaD4KKworI2luY2x1ZGUgPGRwa2cvZHBrZy1kYi5oPgorCitib29sIHBrZ19pbmZvZGJfaGFzX2ZpbGUoc3RydWN0IHBrZ2luZm8gKnBrZywgY29uc3QgY2hhciAqbmFtZSk7CisKK3R5cGVkZWYgdm9pZCBwa2dfaW5mb2RiX2ZpbGVfZnVuYyhjb25zdCBjaGFyICpmaWxlbmFtZSwgY29uc3QgY2hhciAqZmlsZXR5cGUpOworCit2b2lkIHBrZ19pbmZvZGJfZm9yZWFjaChzdHJ1Y3QgcGtnaW5mbyAqcGtnLCBwa2dfaW5mb2RiX2ZpbGVfZnVuYyAqZnVuYyk7CisKKyNlbmRpZiAvKiBEUEtHX0lORk9EQl9IICovCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NyYy9tYWluLmMgYi9kcGtnLTEuMTYuMS4xL3NyYy9tYWluLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjJiZjgxOQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc3JjL21haW4uYwpAQCAtMCwwICsxLDc2OSBAQAorLyoKKyAqIGRwa2cgLSBtYWluIHByb2dyYW0gZm9yIHBhY2thZ2UgbWFuYWdlbWVudAorICogbWFpbi5jIC0gbWFpbiBwcm9ncmFtCisgKgorICogQ29weXJpZ2h0IMKpIDE5OTQsMTk5NSBJYW4gSmFja3NvbiA8aWFuQGNoaWFyay5ncmVlbmVuZC5vcmcudWs+CisgKiBDb3B5cmlnaHQgwqkgMjAwNi0yMDEwIEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KKyAqIENvcHlyaWdodCDCqSAyMDEwIENhbm9uaWNhbCBMdGQuCisgKiAgIHdyaXR0ZW4gYnkgTWFydGluIFBpdHQgPG1hcnRpbi5waXR0QGNhbm9uaWNhbC5jb20+CisgKgorICogVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisgKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAqIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorICovCisKKyNpbmNsdWRlIDxjb25maWcuaD4KKyNpbmNsdWRlIDxjb21wYXQuaD4KKworI2luY2x1ZGUgPHN5cy90eXBlcy5oPgorI2luY2x1ZGUgPHN5cy9zdGF0Lmg+CisjaW5jbHVkZSA8c3lzL3dhaXQuaD4KKworI2luY2x1ZGUgPGVycm5vLmg+CisjaW5jbHVkZSA8bGltaXRzLmg+CisjaWYgSEFWRV9MT0NBTEVfSAorI2luY2x1ZGUgPGxvY2FsZS5oPgorI2VuZGlmCisjaW5jbHVkZSA8Y3R5cGUuaD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDxmY250bC5oPgorI2luY2x1ZGUgPGRpcmVudC5oPgorI2luY2x1ZGUgPHVuaXN0ZC5oPgorI2luY2x1ZGUgPHN0ZGJvb2wuaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlIDxzdGRpby5oPgorCisjaW5jbHVkZSA8ZHBrZy9tYWNyb3MuaD4KKyNpbmNsdWRlIDxkcGtnL2kxOG4uaD4KKyNpbmNsdWRlIDxkcGtnL2Rwa2cuaD4KKyNpbmNsdWRlIDxkcGtnL2Rwa2ctZGIuaD4KKyNpbmNsdWRlIDxkcGtnL3N1YnByb2MuaD4KKyNpbmNsdWRlIDxkcGtnL2NvbW1hbmQuaD4KKyNpbmNsdWRlIDxkcGtnL29wdGlvbnMuaD4KKworI2luY2x1ZGUgIm1haW4uaCIKKyNpbmNsdWRlICJmaWxlc2RiLmgiCisjaW5jbHVkZSAiZmlsdGVycy5oIgorCitzdGF0aWMgdm9pZCBEUEtHX0FUVFJfTk9SRVQKK3ByaW50dmVyc2lvbihjb25zdCBzdHJ1Y3QgY21kaW5mbyAqY2ksIGNvbnN0IGNoYXIgKnZhbHVlKQoreworICBwcmludGYoXygiRGViaWFuIGAlcycgcGFja2FnZSBtYW5hZ2VtZW50IHByb2dyYW0gdmVyc2lvbiAlcy5cbiIpLAorICAgICAgICAgRFBLRywgRFBLR19WRVJTSU9OX0FSQ0gpOworICBwcmludGYoXygKKyJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAyIG9yXG4iCisibGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuXG4iKSk7CisKKyAgbV9vdXRwdXQoc3Rkb3V0LCBfKCI8c3RhbmRhcmQgb3V0cHV0PiIpKTsKKworICBleGl0KDApOworfQorCisvKgorICogRklYTUU6IE9wdGlvbnMgdGhhdCBuZWVkIGZpeGluZzoKKyAqIGRwa2cgLS15ZXQtdG8tdW5wYWNrCisgKiBkcGtnIC0tY29tbWFuZC1mZAorICovCisKK3N0YXRpYyB2b2lkIERQS0dfQVRUUl9OT1JFVAordXNhZ2UoY29uc3Qgc3RydWN0IGNtZGluZm8gKmNpLCBjb25zdCBjaGFyICp2YWx1ZSkKK3sKKyAgcHJpbnRmKF8oCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIDxjb21tYW5kPlxuIgorIlxuIiksIERQS0cpOworCisgIHByaW50ZihfKAorIkNvbW1hbmRzOlxuIgorIiAgLWl8LS1pbnN0YWxsICAgICAgIDwuZGViIGZpbGUgbmFtZT4gLi4uIHwgLVJ8LS1yZWN1cnNpdmUgPGRpcmVjdG9yeT4gLi4uXG4iCisiICAtLXVucGFjayAgICAgICAgICAgPC5kZWIgZmlsZSBuYW1lPiAuLi4gfCAtUnwtLXJlY3Vyc2l2ZSA8ZGlyZWN0b3J5PiAuLi5cbiIKKyIgIC1BfC0tcmVjb3JkLWF2YWlsICA8LmRlYiBmaWxlIG5hbWU+IC4uLiB8IC1SfC0tcmVjdXJzaXZlIDxkaXJlY3Rvcnk+IC4uLlxuIgorIiAgLS1jb25maWd1cmUgICAgICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC0tdHJpZ2dlcnMtb25seSAgICA8cGFja2FnZT4gLi4uIHwgLWF8LS1wZW5kaW5nXG4iCisiICAtcnwtLXJlbW92ZSAgICAgICAgPHBhY2thZ2U+IC4uLiB8IC1hfC0tcGVuZGluZ1xuIgorIiAgLVB8LS1wdXJnZSAgICAgICAgIDxwYWNrYWdlPiAuLi4gfCAtYXwtLXBlbmRpbmdcbiIKKyIgIC0tZ2V0LXNlbGVjdGlvbnMgWzxwYXR0ZXJuPiAuLi5dIEdldCBsaXN0IG9mIHNlbGVjdGlvbnMgdG8gc3Rkb3V0LlxuIgorIiAgLS1zZXQtc2VsZWN0aW9ucyAgICAgICAgICAgICAgICAgU2V0IHBhY2thZ2Ugc2VsZWN0aW9ucyBmcm9tIHN0ZGluLlxuIgorIiAgLS1jbGVhci1zZWxlY3Rpb25zICAgICAgICAgICAgICAgRGVzZWxlY3QgZXZlcnkgbm9uLWVzc2VudGlhbCBwYWNrYWdlLlxuIgorIiAgLS11cGRhdGUtYXZhaWwgPFBhY2thZ2VzLWZpbGU+ICAgUmVwbGFjZSBhdmFpbGFibGUgcGFja2FnZXMgaW5mby5cbiIKKyIgIC0tbWVyZ2UtYXZhaWwgPFBhY2thZ2VzLWZpbGU+ICAgIE1lcmdlIHdpdGggaW5mbyBmcm9tIGZpbGUuXG4iCisiICAtLWNsZWFyLWF2YWlsICAgICAgICAgICAgICAgICAgICBFcmFzZSBleGlzdGluZyBhdmFpbGFibGUgaW5mby5cbiIKKyIgIC0tZm9yZ2V0LW9sZC11bmF2YWlsICAgICAgICAgICAgIEZvcmdldCB1bmluc3RhbGxlZCB1bmF2YWlsYWJsZSBwa2dzLlxuIgorIiAgLXN8LS1zdGF0dXMgPHBhY2thZ2U+IC4uLiAgICAgICAgRGlzcGxheSBwYWNrYWdlIHN0YXR1cyBkZXRhaWxzLlxuIgorIiAgLXB8LS1wcmludC1hdmFpbCA8cGFja2FnZT4gLi4uICAgRGlzcGxheSBhdmFpbGFibGUgdmVyc2lvbiBkZXRhaWxzLlxuIgorIiAgLUx8LS1saXN0ZmlsZXMgPHBhY2thZ2U+IC4uLiAgICAgTGlzdCBmaWxlcyBgb3duZWQnIGJ5IHBhY2thZ2UocykuXG4iCisiICAtbHwtLWxpc3QgWzxwYXR0ZXJuPiAuLi5dICAgICAgICBMaXN0IHBhY2thZ2VzIGNvbmNpc2VseS5cbiIKKyIgIC1TfC0tc2VhcmNoIDxwYXR0ZXJuPiAuLi4gICAgICAgIEZpbmQgcGFja2FnZShzKSBvd25pbmcgZmlsZShzKS5cbiIKKyIgIC1DfC0tYXVkaXQgICAgICAgICAgICAgICAgICAgICAgIENoZWNrIGZvciBicm9rZW4gcGFja2FnZShzKS5cbiIKKyIgIC0tcHJpbnQtYXJjaGl0ZWN0dXJlICAgICAgICAgICAgIFByaW50IGRwa2cgYXJjaGl0ZWN0dXJlLlxuIgorIiAgLS1jb21wYXJlLXZlcnNpb25zIDxhPiA8b3A+IDxiPiAgQ29tcGFyZSB2ZXJzaW9uIG51bWJlcnMgLSBzZWUgYmVsb3cuXG4iCisiICAtLWZvcmNlLWhlbHAgICAgICAgICAgICAgICAgICAgICBTaG93IGhlbHAgb24gZm9yY2luZy5cbiIKKyIgIC1EaHwtLWRlYnVnPWhlbHAgICAgICAgICAgICAgICAgIFNob3cgaGVscCBvbiBkZWJ1Z2dpbmcuXG4iCisiXG4iKSk7CisKKyAgcHJpbnRmKF8oCisiICAtaHwtLWhlbHAgICAgICAgICAgICAgICAgICAgICAgICBTaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICAgICAgICAgU2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIpKTsKKworICBwcmludGYoXygKKyJVc2UgZHBrZyAtYnwtLWJ1aWxkfC1jfC0tY29udGVudHN8LWV8LS1jb250cm9sfC1JfC0taW5mb3wtZnwtLWZpZWxkfFxuIgorIiAteHwtLWV4dHJhY3R8LVh8LS12ZXh0cmFjdHwtLWZzeXMtdGFyZmlsZSAgb24gYXJjaGl2ZXMgKHR5cGUgJXMgLS1oZWxwKS5cbiIKKyJcbiIpLCBCQUNLRU5EKTsKKworICBwcmludGYoXygKKyJGb3IgaW50ZXJuYWwgdXNlOiBkcGtnIC0tYXNzZXJ0LXN1cHBvcnQtcHJlZGVwZW5kcyB8IC0tcHJlZGVwLXBhY2thZ2UgfFxuIgorIiAgLS1hc3NlcnQtd29ya2luZy1lcG9jaCB8IC0tYXNzZXJ0LWxvbmctZmlsZW5hbWVzIHwgLS1hc3NlcnQtbXVsdGktY29ucmVwLlxuIgorIlxuIikpOworCisgIHByaW50ZihfKAorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyIgIC0tcm9vdD08ZGlyZWN0b3J5PiAgICAgICAgIEluc3RhbGwgb24gYSBkaWZmZXJlbnQgcm9vdCBkaXJlY3RvcnkuXG4iCisiICAtLWluc3RkaXI9PGRpcmVjdG9yeT4gICAgICBDaGFuZ2UgaW5zdGFsbGF0aW9uIGRpciB3aXRob3V0IGNoYW5naW5nIGFkbWluIGRpci5cbiIKKyIgIC0tcGF0aC1leGNsdWRlPTxwYXR0ZXJuPiAgIERvIG5vdCBpbnN0YWxsIHBhdGhzIHdoaWNoIG1hdGNoIGEgc2hlbGwgcGF0dGVybi5cbiIKKyIgIC0tcGF0aC1pbmNsdWRlPTxwYXR0ZXJuPiAgIFJlLWluY2x1ZGUgYSBwYXR0ZXJuIGFmdGVyIGEgcHJldmlvdXMgZXhjbHVzaW9uLlxuIgorIiAgLU98LS1zZWxlY3RlZC1vbmx5ICAgICAgICAgU2tpcCBwYWNrYWdlcyBub3Qgc2VsZWN0ZWQgZm9yIGluc3RhbGwvdXBncmFkZS5cbiIKKyIgIC1FfC0tc2tpcC1zYW1lLXZlcnNpb24gICAgIFNraXAgcGFja2FnZXMgd2hvc2Ugc2FtZSB2ZXJzaW9uIGlzIGluc3RhbGxlZC5cbiIKKyIgIC1HfC0tcmVmdXNlLWRvd25ncmFkZSAgICAgIFNraXAgcGFja2FnZXMgd2l0aCBlYXJsaWVyIHZlcnNpb24gdGhhbiBpbnN0YWxsZWQuXG4iCisiICAtQnwtLWF1dG8tZGVjb25maWd1cmUgICAgICBJbnN0YWxsIGV2ZW4gaWYgaXQgd291bGQgYnJlYWsgc29tZSBvdGhlciBwYWNrYWdlLlxuIgorIiAgLS1bbm8tXXRyaWdnZXJzICAgICAgICAgICAgU2tpcCBvciBmb3JjZSBjb25zZXF1ZW50aWFsIHRyaWdnZXIgcHJvY2Vzc2luZy5cbiIKKyIgIC0tbm8tZGVic2lnICAgICAgICAgICAgICAgIERvIG5vdCB0cnkgdG8gdmVyaWZ5IHBhY2thZ2Ugc2lnbmF0dXJlcy5cbiIKKyIgIC0tbm8tYWN0fC0tZHJ5LXJ1bnwtLXNpbXVsYXRlXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICBKdXN0IHNheSB3aGF0IHdlIHdvdWxkIGRvIC0gZG9uJ3QgZG8gaXQuXG4iCisiICAtRHwtLWRlYnVnPTxvY3RhbD4gICAgICAgICBFbmFibGUgZGVidWdnaW5nIChzZWUgLURoZWxwIG9yIC0tZGVidWc9aGVscCkuXG4iCisiICAtLXN0YXR1cy1mZCA8bj4gICAgICAgICAgICBTZW5kIHN0YXR1cyBjaGFuZ2UgdXBkYXRlcyB0byBmaWxlIGRlc2NyaXB0b3IgPG4+LlxuIgorIiAgLS1sb2c9PGZpbGVuYW1lPiAgICAgICAgICAgTG9nIHN0YXR1cyBjaGFuZ2VzIGFuZCBhY3Rpb25zIHRvIDxmaWxlbmFtZT4uXG4iCisiICAtLWlnbm9yZS1kZXBlbmRzPTxwYWNrYWdlPiwuLi5cbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIElnbm9yZSBkZXBlbmRlbmNpZXMgaW52b2x2aW5nIDxwYWNrYWdlPi5cbiIKKyIgIC0tZm9yY2UtLi4uICAgICAgICAgICAgICAgIE92ZXJyaWRlIHByb2JsZW1zIChzZWUgLS1mb3JjZS1oZWxwKS5cbiIKKyIgIC0tbm8tZm9yY2UtLi4ufC0tcmVmdXNlLS4uLlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcCB3aGVuIHByb2JsZW1zIGVuY291bnRlcmVkLlxuIgorIiAgLS1hYm9ydC1hZnRlciA8bj4gICAgICAgICAgQWJvcnQgYWZ0ZXIgZW5jb3VudGVyaW5nIDxuPiBlcnJvcnMuXG4iCisiXG4iKSwgQURNSU5ESVIpOworCisgIHByaW50ZihfKAorIkNvbXBhcmlzb24gb3BlcmF0b3JzIGZvciAtLWNvbXBhcmUtdmVyc2lvbnMgYXJlOlxuIgorIiAgbHQgbGUgZXEgbmUgZ2UgZ3QgICAgICAgKHRyZWF0IGVtcHR5IHZlcnNpb24gYXMgZWFybGllciB0aGFuIGFueSB2ZXJzaW9uKTtcbiIKKyIgIGx0LW5sIGxlLW5sIGdlLW5sIGd0LW5sICh0cmVhdCBlbXB0eSB2ZXJzaW9uIGFzIGxhdGVyIHRoYW4gYW55IHZlcnNpb24pO1xuIgorIiAgPCA8PCA8PSA9ID49ID4+ID4gICAgICAgKG9ubHkgZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBjb250cm9sIGZpbGUgc3ludGF4KS5cbiIKKyJcbiIpKTsKKworICBwcmludGYoXygKKyJVc2UgYGRzZWxlY3QnIG9yIGBhcHRpdHVkZScgZm9yIHVzZXItZnJpZW5kbHkgcGFja2FnZSBtYW5hZ2VtZW50LlxuIikpOworCisgIG1fb3V0cHV0KHN0ZG91dCwgXygiPHN0YW5kYXJkIG91dHB1dD4iKSk7CisKKyAgZXhpdCgwKTsKK30KKworY29uc3QgY2hhciBuYXRpdmVfYXJjaFtdID0gQVJDSElURUNUVVJFOworc3RhdGljIGNvbnN0IGNoYXIgcHJpbnRmb3JoZWxwW10gPSBOXygKKyJUeXBlIGRwa2cgLS1oZWxwIGZvciBoZWxwIGFib3V0IGluc3RhbGxpbmcgYW5kIGRlaW5zdGFsbGluZyBwYWNrYWdlcyBbKl07XG4iCisiVXNlIGBkc2VsZWN0JyBvciBgYXB0aXR1ZGUnIGZvciB1c2VyLWZyaWVuZGx5IHBhY2thZ2UgbWFuYWdlbWVudDtcbiIKKyJUeXBlIGRwa2cgLURoZWxwIGZvciBhIGxpc3Qgb2YgZHBrZyBkZWJ1ZyBmbGFnIHZhbHVlcztcbiIKKyJUeXBlIGRwa2cgLS1mb3JjZS1oZWxwIGZvciBhIGxpc3Qgb2YgZm9yY2luZyBvcHRpb25zO1xuIgorIlR5cGUgZHBrZy1kZWIgLS1oZWxwIGZvciBoZWxwIGFib3V0IG1hbmlwdWxhdGluZyAqLmRlYiBmaWxlcztcbiIKKyJcbiIKKyJPcHRpb25zIG1hcmtlZCBbKl0gcHJvZHVjZSBhIGxvdCBvZiBvdXRwdXQgLSBwaXBlIGl0IHRocm91Z2ggYGxlc3MnIG9yIGBtb3JlJyAhIik7CisKK2ludCBmX3BlbmRpbmc9MCwgZl9yZWN1cnNpdmU9MCwgZl9hbHNvc2VsZWN0PTEsIGZfc2tpcHNhbWU9MCwgZl9ub2FjdD0wOworaW50IGZfYXV0b2RlY29uZj0wLCBmX25vZGVic2lnPTA7CitpbnQgZl90cmlnZ2VycyA9IDA7CitpbnQgZmNfZG93bmdyYWRlPTEsIGZjX2NvbmZpZ3VyZWFueT0wLCBmY19ob2xkPTAsIGZjX3JlbW92ZXJlaW5zdHJlcT0wLCBmY19vdmVyd3JpdGU9MDsKK2ludCBmY19yZW1vdmVlc3NlbnRpYWw9MCwgZmNfY29uZmxpY3RzPTAsIGZjX2RlcGVuZHM9MCwgZmNfZGVwZW5kc3ZlcnNpb249MDsKK2ludCBmY19icmVha3M9MCwgZmNfYmFkcGF0aD0wLCBmY19vdmVyd3JpdGVkaXZlcnRlZD0wLCBmY19hcmNoaXRlY3R1cmU9MDsKK2ludCBmY19ub25yb290PTAsIGZjX292ZXJ3cml0ZWRpcj0wLCBmY19jb25mZl9uZXc9MCwgZmNfY29uZmZfbWlzcz0wOworaW50IGZjX2NvbmZmX29sZD0wLCBmY19jb25mZl9kZWY9MDsKK2ludCBmY19jb25mZl9hc2sgPSAwOworaW50IGZjX3Vuc2FmZV9pbyA9IDA7CitpbnQgZmNfYmFkdmVyaWZ5ID0gMDsKK2ludCBmY19iYWR2ZXJzaW9uID0gMDsKKworaW50IGVycmFib3J0ID0gNTA7CitzdGF0aWMgY29uc3QgY2hhciAqYWRtaW5kaXIgPSBBRE1JTkRJUjsKK2NvbnN0IGNoYXIgKmluc3RkaXI9ICIiOworc3RydWN0IHBrZ19saXN0ICppZ25vcmVkZXBlbmRzcyA9IE5VTEw7CisKK3N0YXRpYyBjb25zdCBjaGFyICoKK2ZvcmNldHlwZV9zdHIoY2hhciB0eXBlKQoreworICBzd2l0Y2ggKHR5cGUpIHsKKyAgY2FzZSAnXDAnOgorICBjYXNlICcgJzoKKyAgICByZXR1cm4gIiAgICI7CisgIGNhc2UgJyonOgorICAgIHJldHVybiAiWypdIjsKKyAgY2FzZSAnISc6CisgICAgcmV0dXJuICJbIV0iOworICBkZWZhdWx0OgorICAgIGludGVybmVycigidW5rbm93biBmb3JjZSB0eXBlICVjIiwgdHlwZSk7CisgIH0KK30KKworc3RhdGljIGNvbnN0IHN0cnVjdCBmb3JjZWluZm8geworICBjb25zdCBjaGFyICpuYW1lOworICBpbnQgKm9wdDsKKyAgY2hhciB0eXBlOworICBjb25zdCBjaGFyICpkZXNjOworfSBmb3JjZWluZm9zW109IHsKKyAgeyAiYWxsIiwgICAgICAgICAgICAgICAgIE5VTEwsCisgICAgJyEnLCBOXygiU2V0IGFsbCBmb3JjZSBvcHRpb25zIil9LAorICB7ICJkb3duZ3JhZGUiLCAgICAgICAgICAgJmZjX2Rvd25ncmFkZSwKKyAgICAnKicsIE5fKCJSZXBsYWNlIGEgcGFja2FnZSB3aXRoIGEgbG93ZXIgdmVyc2lvbiIpIH0sCisgIHsgImNvbmZpZ3VyZS1hbnkiLCAgICAgICAmZmNfY29uZmlndXJlYW55LAorICAgICcgJywgTl8oIkNvbmZpZ3VyZSBhbnkgcGFja2FnZSB3aGljaCBtYXkgaGVscCB0aGlzIG9uZSIpIH0sCisgIHsgImhvbGQiLCAgICAgICAgICAgICAgICAmZmNfaG9sZCwKKyAgICAnICcsIE5fKCJQcm9jZXNzIGluY2lkZW50YWwgcGFja2FnZXMgZXZlbiB3aGVuIG9uIGhvbGQiKSB9LAorICB7ICJub3Qtcm9vdCIsICAgICAgICAgICAgJmZjX25vbnJvb3QsCisgICAgJyAnLCBOXygiVHJ5IHRvIChkZSlpbnN0YWxsIHRoaW5ncyBldmVuIHdoZW4gbm90IHJvb3QiKSB9LAorICB7ICJiYWQtcGF0aCIsICAgICAgICAgICAgJmZjX2JhZHBhdGgsCisgICAgJyAnLCBOXygiUEFUSCBpcyBtaXNzaW5nIGltcG9ydGFudCBwcm9ncmFtcywgcHJvYmxlbXMgbGlrZWx5IikgfSwKKyAgeyAiYmFkLXZlcmlmeSIsICAgICAgICAgICZmY19iYWR2ZXJpZnksCisgICAgJyAnLCBOXygiSW5zdGFsbCBhIHBhY2thZ2UgZXZlbiBpZiBpdCBmYWlscyBhdXRoZW50aWNpdHkgY2hlY2siKSB9LAorICB7ICJiYWQtdmVyc2lvbiIsICAgICAgICAgJmZjX2JhZHZlcnNpb24sCisgICAgJyAnLCBOXygiUHJvY2VzcyBldmVuIHBhY2thZ2VzIHdpdGggd3JvbmcgdmVyc2lvbnMiKSB9LAorICB7ICJvdmVyd3JpdGUiLCAgICAgICAgICAgJmZjX292ZXJ3cml0ZSwKKyAgICAnICcsIE5fKCJPdmVyd3JpdGUgYSBmaWxlIGZyb20gb25lIHBhY2thZ2Ugd2l0aCBhbm90aGVyIikgfSwKKyAgeyAib3ZlcndyaXRlLWRpdmVydGVkIiwgICZmY19vdmVyd3JpdGVkaXZlcnRlZCwKKyAgICAnICcsIE5fKCJPdmVyd3JpdGUgYSBkaXZlcnRlZCBmaWxlIHdpdGggYW4gdW5kaXZlcnRlZCB2ZXJzaW9uIikgfSwKKyAgeyAib3ZlcndyaXRlLWRpciIsICAgICAgICZmY19vdmVyd3JpdGVkaXIsCisgICAgJyEnLCBOXygiT3ZlcndyaXRlIG9uZSBwYWNrYWdlJ3MgZGlyZWN0b3J5IHdpdGggYW5vdGhlcidzIGZpbGUiKSB9LAorICB7ICJ1bnNhZmUtaW8iLCAgICAgICAgICAgJmZjX3Vuc2FmZV9pbywKKyAgICAnIScsIE5fKCJEbyBub3QgcGVyZm9ybSBzYWZlIEkvTyBvcGVyYXRpb25zIHdoZW4gdW5wYWNraW5nIikgfSwKKyAgeyAiY29uZm5ldyIsICAgICAgICAgICAgICZmY19jb25mZl9uZXcsCisgICAgJyEnLCBOXygiQWx3YXlzIHVzZSB0aGUgbmV3IGNvbmZpZyBmaWxlcywgZG9uJ3QgcHJvbXB0IikgfSwKKyAgeyAiY29uZm9sZCIsICAgICAgICAgICAgICZmY19jb25mZl9vbGQsCisgICAgJyEnLCBOXygiQWx3YXlzIHVzZSB0aGUgb2xkIGNvbmZpZyBmaWxlcywgZG9uJ3QgcHJvbXB0IikgfSwKKyAgLyogWFhYOiBIYW5kbGUgYXV0b21hdGljYWxseSBsaW5lIHdyYXBwaW5ncy4gKi8KKyAgeyAiY29uZmRlZiIsICAgICAgICAgICAgICZmY19jb25mZl9kZWYsCisgICAgJyEnLCBOXygiVXNlIHRoZSBkZWZhdWx0IG9wdGlvbiBmb3IgbmV3IGNvbmZpZyBmaWxlcyBpZiBvbmVcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgaXMgYXZhaWxhYmxlLCBkb24ndCBwcm9tcHQuIElmIG5vIGRlZmF1bHQgY2FuIGJlIGZvdW5kLFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICB5b3Ugd2lsbCBiZSBwcm9tcHRlZCB1bmxlc3Mgb25lIG9mIHRoZSBjb25mb2xkIG9yXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmZuZXcgb3B0aW9ucyBpcyBhbHNvIGdpdmVuIikgfSwKKyAgeyAiY29uZm1pc3MiLCAgICAgICAgICAgICZmY19jb25mZl9taXNzLAorICAgICchJywgTl8oIkFsd2F5cyBpbnN0YWxsIG1pc3NpbmcgY29uZmlnIGZpbGVzIikgfSwKKyAgeyAiY29uZmFzayIsICAgICAgICAgICAgICZmY19jb25mZl9hc2ssCisgICAgJyEnLCBOXygiT2ZmZXIgdG8gcmVwbGFjZSBjb25maWcgZmlsZXMgd2l0aCBubyBuZXcgdmVyc2lvbnMiKSB9LAorICB7ICJhcmNoaXRlY3R1cmUiLCAgICAgICAgJmZjX2FyY2hpdGVjdHVyZSwKKyAgICAnIScsIE5fKCJQcm9jZXNzIGV2ZW4gcGFja2FnZXMgd2l0aCB3cm9uZyBvciBubyBhcmNoaXRlY3R1cmUiKSB9LAorICB7ICJicmVha3MiLCAgICAgICAgICAgICAgJmZjX2JyZWFrcywKKyAgICAnIScsIE5fKCJJbnN0YWxsIGV2ZW4gaWYgaXQgd291bGQgYnJlYWsgYW5vdGhlciBwYWNrYWdlIikgfSwKKyAgeyAiY29uZmxpY3RzIiwgICAgICAgICAgICZmY19jb25mbGljdHMsCisgICAgJyEnLCBOXygiQWxsb3cgaW5zdGFsbGF0aW9uIG9mIGNvbmZsaWN0aW5nIHBhY2thZ2VzIikgfSwKKyAgeyAiZGVwZW5kcyIsICAgICAgICAgICAgICZmY19kZXBlbmRzLAorICAgICchJywgTl8oIlR1cm4gYWxsIGRlcGVuZGVuY3kgcHJvYmxlbXMgaW50byB3YXJuaW5ncyIpIH0sCisgIHsgImRlcGVuZHMtdmVyc2lvbiIsICAgICAmZmNfZGVwZW5kc3ZlcnNpb24sCisgICAgJyEnLCBOXygiVHVybiBkZXBlbmRlbmN5IHZlcnNpb24gcHJvYmxlbXMgaW50byB3YXJuaW5ncyIpIH0sCisgIHsgInJlbW92ZS1yZWluc3RyZXEiLCAgICAmZmNfcmVtb3ZlcmVpbnN0cmVxLAorICAgICchJywgTl8oIlJlbW92ZSBwYWNrYWdlcyB3aGljaCByZXF1aXJlIGluc3RhbGxhdGlvbiIpIH0sCisgIHsgInJlbW92ZS1lc3NlbnRpYWwiLCAgICAmZmNfcmVtb3ZlZXNzZW50aWFsLAorICAgICchJywgTl8oIlJlbW92ZSBhbiBlc3NlbnRpYWwgcGFja2FnZSIpIH0sCisgIHsgTlVMTCB9Cit9OworCisjZGVmaW5lIERCR19ERUYobiwgZCkgXAorICB7IC5mbGFnID0gZGJnXyMjbiwgLm5hbWUgPSAjbiwgLmRlc2MgPSBkIH0KKworc3RhdGljIGNvbnN0IHN0cnVjdCBkZWJ1Z2luZm8geworICBpbnQgZmxhZzsKKyAgY29uc3QgY2hhciAqbmFtZTsKKyAgY29uc3QgY2hhciAqZGVzYzsKK30gZGVidWdpbmZvc1tdID0geworICBEQkdfREVGKGdlbmVyYWwsICAgICAgICAgTl8oIkdlbmVyYWxseSBoZWxwZnVsIHByb2dyZXNzIGluZm9ybWF0aW9uIikpLAorICBEQkdfREVGKHNjcmlwdHMsICAgICAgICAgTl8oIkludm9jYXRpb24gYW5kIHN0YXR1cyBvZiBtYWludGFpbmVyIHNjcmlwdHMiKSksCisgIERCR19ERUYoZWFjaGZpbGUsICAgICAgICBOXygiT3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkIikpLAorICBEQkdfREVGKGVhY2hmaWxlZGV0YWlsLCAgTl8oIkxvdHMgb2Ygb3V0cHV0IGZvciBlYWNoIGZpbGUgcHJvY2Vzc2VkIikpLAorICBEQkdfREVGKGNvbmZmLCAgICAgICAgICAgTl8oIk91dHB1dCBmb3IgZWFjaCBjb25maWd1cmF0aW9uIGZpbGUiKSksCisgIERCR19ERUYoY29uZmZkZXRhaWwsICAgICBOXygiTG90cyBvZiBvdXRwdXQgZm9yIGVhY2ggY29uZmlndXJhdGlvbiBmaWxlIikpLAorICBEQkdfREVGKGRlcGNvbiwgICAgICAgICAgTl8oIkRlcGVuZGVuY2llcyBhbmQgY29uZmxpY3RzIikpLAorICBEQkdfREVGKGRlcGNvbmRldGFpbCwgICAgTl8oIkxvdHMgb2YgZGVwZW5kZW5jaWVzL2NvbmZsaWN0cyBvdXRwdXQiKSksCisgIERCR19ERUYodHJpZ2dlcnMsICAgICAgICBOXygiVHJpZ2dlciBhY3RpdmF0aW9uIGFuZCBwcm9jZXNzaW5nIikpLAorICBEQkdfREVGKHRyaWdnZXJzZGV0YWlsLCAgTl8oIkxvdHMgb2Ygb3V0cHV0IHJlZ2FyZGluZyB0cmlnZ2VycyIpKSwKKyAgREJHX0RFRih0cmlnZ2Vyc3N0dXBpZCwgIE5fKCJTaWxseSBhbW91bnRzIG9mIG91dHB1dCByZWdhcmRpbmcgdHJpZ2dlcnMiKSksCisgIERCR19ERUYodmVyeXZlcmJvc2UsICAgICBOXygiTG90cyBvZiBkcml2ZWwgYWJvdXQgZWcgdGhlIGRwa2cvaW5mbyBkaXJlY3RvcnkiKSksCisgIERCR19ERUYoc3R1cGlkbHl2ZXJib3NlLCBOXygiSW5zYW5lIGFtb3VudHMgb2YgZHJpdmVsIikpLAorICB7IDAsIE5VTEwsIE5VTEwgfQorfTsKKworc3RhdGljIHZvaWQgc2V0ZGVidWcoY29uc3Qgc3RydWN0IGNtZGluZm8gKmNwaSwgY29uc3QgY2hhciAqdmFsdWUpIHsKKyAgY2hhciAqZW5kcDsKKyAgdW5zaWduZWQgbG9uZyBtYXNrOworICBjb25zdCBzdHJ1Y3QgZGVidWdpbmZvICpkaXA7CisKKyAgaWYgKCp2YWx1ZSA9PSAnaCcpIHsKKyAgICBwcmludGYoXygKKyIlcyBkZWJ1Z2dpbmcgb3B0aW9uLCAtLWRlYnVnPTxvY3RhbD4gb3IgLUQ8b2N0YWw+OlxuIgorIlxuIgorIiBOdW1iZXIgIFJlZi4gaW4gc291cmNlICAgRGVzY3JpcHRpb25cbiIpLCBEUEtHKTsKKworICAgIGZvciAoZGlwID0gZGVidWdpbmZvczsgZGlwLT5uYW1lOyBkaXArKykKKyAgICAgIHByaW50ZigiICU2byAgJS0xNnMgJXNcbiIsIGRpcC0+ZmxhZywgZGlwLT5uYW1lLCBnZXR0ZXh0KGRpcC0+ZGVzYykpOworCisgICAgcHJpbnRmKF8oIlxuIgorIkRlYnVnZ2luZyBvcHRpb25zIGNhbiBiZSBtaXhlZCB1c2luZyBiaXR3aXNlLW9yLlxuIgorIk5vdGUgdGhhdCB0aGUgbWVhbmluZ3MgYW5kIHZhbHVlcyBhcmUgc3ViamVjdCB0byBjaGFuZ2UuXG4iKSk7CisgICAgbV9vdXRwdXQoc3Rkb3V0LCBfKCI8c3RhbmRhcmQgb3V0cHV0PiIpKTsKKyAgICBleGl0KDApOworICB9CisKKyAgbWFzayA9IHN0cnRvdWwodmFsdWUsICZlbmRwLCA4KTsKKyAgaWYgKHZhbHVlID09IGVuZHAgfHwgKmVuZHApIGJhZHVzYWdlKF8oIi0tZGVidWcgcmVxdWlyZXMgYW4gb2N0YWwgYXJndW1lbnQiKSk7CisKKyAgZGVidWdfc2V0X21hc2sobWFzayk7Cit9CisKK3N0YXRpYyB2b2lkCitzZXRmaWx0ZXIoY29uc3Qgc3RydWN0IGNtZGluZm8gKmNpcCwgY29uc3QgY2hhciAqdmFsdWUpCit7CisgIGZpbHRlcl9hZGQodmFsdWUsIGNpcC0+YXJnX2ludCk7Cit9CisKK3N0YXRpYyB2b2lkIHNldHJvb3QoY29uc3Qgc3RydWN0IGNtZGluZm8gKmNpcCwgY29uc3QgY2hhciAqdmFsdWUpIHsKKyAgY2hhciAqcDsKKyAgaW5zdGRpcj0gdmFsdWU7CisgIG1fYXNwcmludGYoJnAsICIlcyVzIiwgdmFsdWUsIEFETUlORElSKTsKKyAgYWRtaW5kaXI9IHA7Cit9CisKK3N0YXRpYyB2b2lkIGlnbm9yZWRlcGVuZHMoY29uc3Qgc3RydWN0IGNtZGluZm8gKmNpcCwgY29uc3QgY2hhciAqdmFsdWUpIHsKKyAgY2hhciAqY29weSwgKnA7CisgIGNvbnN0IGNoYXIgKnBuZXJyOworCisgIGNvcHk9IG1fbWFsbG9jKHN0cmxlbih2YWx1ZSkrMik7CisgIHN0cmNweShjb3B5LHZhbHVlKTsKKyAgY29weVtzdHJsZW4odmFsdWUpICsgMV0gPSAnXDAnOworICBmb3IgKHA9Y29weTsgKnA7IHArKykgeworICAgIGlmICgqcCAhPSAnLCcpIGNvbnRpbnVlOworICAgICpwKysgPSAnXDAnOworICAgIGlmICghKnAgfHwgKnA9PScsJyB8fCBwPT1jb3B5KzEpCisgICAgICBiYWR1c2FnZShfKCJudWxsIHBhY2thZ2UgbmFtZSBpbiAtLWlnbm9yZS1kZXBlbmRzIGNvbW1hLXNlcGFyYXRlZCBsaXN0IGAlLjI1MHMnIiksCisgICAgICAgICAgICAgICB2YWx1ZSk7CisgIH0KKyAgcD0gY29weTsKKyAgd2hpbGUgKCpwKSB7CisgICAgcG5lcnIgPSBwa2dfbmFtZV9pc19pbGxlZ2FsKHAsIE5VTEwpOworICAgIGlmIChwbmVycikgb2hzaGl0ZShfKCItLWlnbm9yZS1kZXBlbmRzIHJlcXVpcmVzIGEgbGVnYWwgcGFja2FnZSBuYW1lLiAiCisgICAgICAgICAgICAgICAgICAgICAgICJgJS4yNTBzJyBpcyBub3Q7ICVzIiksIHAsIHBuZXJyKTsKKworICAgIHBrZ19saXN0X3ByZXBlbmQoJmlnbm9yZWRlcGVuZHNzLCBwa2dfZGJfZmluZChwKSk7CisKKyAgICBwKz0gc3RybGVuKHApKzE7CisgIH0KKworICBmcmVlKGNvcHkpOworfQorCitzdGF0aWMgdm9pZCBzZXRpbnRlZ2VyKGNvbnN0IHN0cnVjdCBjbWRpbmZvICpjaXAsIGNvbnN0IGNoYXIgKnZhbHVlKSB7CisgIHVuc2lnbmVkIGxvbmcgdjsKKyAgY2hhciAqZXA7CisKKyAgdj0gc3RydG91bCh2YWx1ZSwmZXAsMCk7CisgIGlmICh2YWx1ZSA9PSBlcCB8fCAqZXAgfHwgdiA+IElOVF9NQVgpCisgICAgYmFkdXNhZ2UoXygiaW52YWxpZCBpbnRlZ2VyIGZvciAtLSVzOiBgJS4yNTBzJyIpLGNpcC0+b2xvbmcsdmFsdWUpOworICAqY2lwLT5pYXNzaWdudG89IHY7Cit9CisKK3N0YXRpYyB2b2lkIHNldHBpcGUoY29uc3Qgc3RydWN0IGNtZGluZm8gKmNpcCwgY29uc3QgY2hhciAqdmFsdWUpIHsKKyAgdW5zaWduZWQgbG9uZyB2OworICBjaGFyICplcDsKKworICB2PSBzdHJ0b3VsKHZhbHVlLCZlcCwwKTsKKyAgaWYgKHZhbHVlID09IGVwIHx8ICplcCB8fCB2ID4gSU5UX01BWCkKKyAgICBiYWR1c2FnZShfKCJpbnZhbGlkIGludGVnZXIgZm9yIC0tJXM6IGAlLjI1MHMnIiksY2lwLT5vbG9uZyx2YWx1ZSk7CisKKyAgc3RhdHVzZmRfYWRkKHYpOworfQorCitzdGF0aWMgYm9vbAoraXNfaW52b2tlX2FjdGlvbihlbnVtIGFjdGlvbiBhY3Rpb24pCit7CisgIHN3aXRjaCAoYWN0aW9uKSB7CisgIGNhc2UgYWN0X3VucGFjazoKKyAgY2FzZSBhY3RfY29uZmlndXJlOgorICBjYXNlIGFjdF9pbnN0YWxsOgorICBjYXNlIGFjdF90cmlnZ2VyczoKKyAgY2FzZSBhY3RfcmVtb3ZlOgorICBjYXNlIGFjdF9wdXJnZToKKyAgICByZXR1cm4gdHJ1ZTsKKyAgZGVmYXVsdDoKKyAgICByZXR1cm4gZmFsc2U7CisgIH0KK30KKworc3RydWN0IGludm9rZV9ob29rICpwcmVfaW52b2tlX2hvb2tzID0gTlVMTDsKK3N0cnVjdCBpbnZva2VfaG9vayAqKnByZV9pbnZva2VfaG9va3NfdGFpbCA9ICZwcmVfaW52b2tlX2hvb2tzOworc3RydWN0IGludm9rZV9ob29rICpwb3N0X2ludm9rZV9ob29rcyA9IE5VTEw7CitzdHJ1Y3QgaW52b2tlX2hvb2sgKipwb3N0X2ludm9rZV9ob29rc190YWlsID0gJnBvc3RfaW52b2tlX2hvb2tzOworc3RydWN0IGludm9rZV9ob29rICpzdGF0dXNfbG9nZ2VycyA9IE5VTEw7CitzdHJ1Y3QgaW52b2tlX2hvb2sgKipzdGF0dXNfbG9nZ2Vyc190YWlsID0gJnN0YXR1c19sb2dnZXJzOworCitzdGF0aWMgdm9pZAorc2V0X2ludm9rZV9ob29rKGNvbnN0IHN0cnVjdCBjbWRpbmZvICpjaXAsIGNvbnN0IGNoYXIgKnZhbHVlKQoreworICBzdHJ1Y3QgaW52b2tlX2hvb2sgKioqaG9va190YWlsID0gY2lwLT5hcmdfcHRyOworICBzdHJ1Y3QgaW52b2tlX2hvb2sgKmhvb2tfbmV3OworCisgIGhvb2tfbmV3ID0gbmZtYWxsb2Moc2l6ZW9mKHN0cnVjdCBpbnZva2VfaG9vaykpOworICBob29rX25ldy0+Y29tbWFuZCA9IG5mc3Ryc2F2ZSh2YWx1ZSk7CisgIGhvb2tfbmV3LT5uZXh0ID0gTlVMTDsKKworICAvKiBBZGQgdGhlIG5ldyBob29rIGF0IHRoZSB0YWlsIG9mIHRoZSBsaXN0IHRvIHByZXNlcnZlIHRoZSBvcmRlci4gKi8KKyAgKipob29rX3RhaWwgPSBob29rX25ldzsKKyAgKmhvb2tfdGFpbCA9ICZob29rX25ldy0+bmV4dDsKK30KKworc3RhdGljIHZvaWQKK3J1bl9pbnZva2VfaG9va3MoY29uc3QgY2hhciAqYWN0aW9uLCBzdHJ1Y3QgaW52b2tlX2hvb2sgKmhvb2tfaGVhZCkKK3sKKyAgc3RydWN0IGludm9rZV9ob29rICpob29rOworCisgIHNldGVudigiRFBLR19IT09LX0FDVElPTiIsIGFjdGlvbiwgMSk7CisKKyAgZm9yIChob29rID0gaG9va19oZWFkOyBob29rOyBob29rID0gaG9vay0+bmV4dCkgeworICAgIGludCBzdGF0dXM7CisKKyAgICAvKiBYWFg6IEFzIGFuIG9wdGltaXphdGlvbiwgdXNlIGV4ZWMgaW5zdGVhZCBpZiBubyBzaGVsbCBtZXRhY2hhciBhcmUKKyAgICAgKiB1c2VkIOKAnCEkPSZ8XFxgJyJefjs8Pnt9W10oKT8qI+KAnS4gKi8KKyAgICBzdGF0dXMgPSBzeXN0ZW0oaG9vay0+Y29tbWFuZCk7CisgICAgaWYgKHN0YXR1cyAhPSAwKQorICAgICAgb2hzaGl0KF8oImVycm9yIGV4ZWN1dGluZyBob29rICclcycsIGV4aXQgY29kZSAlZCIpLCBob29rLT5jb21tYW5kLAorICAgICAgICAgICAgIHN0YXR1cyk7CisgIH0KKworICB1bnNldGVudigiRFBLR19IT09LX0FDVElPTiIpOworfQorCitzdGF0aWMgdm9pZAorcnVuX3N0YXR1c19sb2dnZXJzKHN0cnVjdCBpbnZva2VfaG9vayAqaG9va19oZWFkKQoreworICBzdHJ1Y3QgaW52b2tlX2hvb2sgKmhvb2s7CisKKyAgZm9yIChob29rID0gaG9va19oZWFkOyBob29rOyBob29rID0gaG9vay0+bmV4dCkgeworICAgIHBpZF90IHBpZDsKKyAgICBpbnQgcFsyXTsKKworICAgIG1fcGlwZShwKTsKKworICAgIHBpZCA9IHN1YnByb2NfZm9yaygpOworICAgIGlmIChwaWQgPT0gMCkgeworICAgICAgLyogU2V0dXAgc3RkaW4gYW5kIHN0ZG91dC4gKi8KKyAgICAgIG1fZHVwMihwWzBdLCAwKTsKKyAgICAgIGNsb3NlKDEpOworCisgICAgICBjbG9zZShwWzBdKTsKKyAgICAgIGNsb3NlKHBbMV0pOworCisgICAgICBjb21tYW5kX3NoZWxsKGhvb2stPmNvbW1hbmQsIF8oInN0YXR1cyBsb2dnZXIiKSk7CisgICAgfQorICAgIGNsb3NlKHBbMF0pOworCisgICAgc3RhdHVzZmRfYWRkKHBbMV0pOworICB9Cit9CisKK3N0YXRpYyB2b2lkIHNldGZvcmNlKGNvbnN0IHN0cnVjdCBjbWRpbmZvICpjaXAsIGNvbnN0IGNoYXIgKnZhbHVlKSB7CisgIGNvbnN0IGNoYXIgKmNvbW1hOworICBzaXplX3QgbDsKKyAgY29uc3Qgc3RydWN0IGZvcmNlaW5mbyAqZmlwOworCisgIGlmICghc3RyY21wKHZhbHVlLCJoZWxwIikpIHsKKyAgICBwcmludGYoXygKKyIlcyBmb3JjaW5nIG9wdGlvbnMgLSBjb250cm9sIGJlaGF2aW91ciB3aGVuIHByb2JsZW1zIGZvdW5kOlxuIgorIiAgd2FybiBidXQgY29udGludWU6ICAtLWZvcmNlLTx0aGluZz4sPHRoaW5nPiwuLi5cbiIKKyIgIHN0b3Agd2l0aCBlcnJvcjogICAgLS1yZWZ1c2UtPHRoaW5nPiw8dGhpbmc+LC4uLiB8IC0tbm8tZm9yY2UtPHRoaW5nPiwuLi5cbiIKKyIgRm9yY2luZyB0aGluZ3M6XG4iKSwgRFBLRyk7CisKKyAgICBmb3IgKGZpcCA9IGZvcmNlaW5mb3M7IGZpcC0+bmFtZTsgZmlwKyspCisgICAgICBwcmludGYoIiAgJXMgJS0xOHMgJXNcbiIsIGZvcmNldHlwZV9zdHIoZmlwLT50eXBlKSwgZmlwLT5uYW1lLAorICAgICAgICAgICAgIGdldHRleHQoZmlwLT5kZXNjKSk7CisKKyAgICBwcmludGYoXygKKyJcbiIKKyJXQVJOSU5HIC0gdXNlIG9mIG9wdGlvbnMgbWFya2VkIFshXSBjYW4gc2VyaW91c2x5IGRhbWFnZSB5b3VyIGluc3RhbGxhdGlvbi5cbiIKKyJGb3JjaW5nIG9wdGlvbnMgbWFya2VkIFsqXSBhcmUgZW5hYmxlZCBieSBkZWZhdWx0LlxuIikpOworICAgIG1fb3V0cHV0KHN0ZG91dCwgXygiPHN0YW5kYXJkIG91dHB1dD4iKSk7CisgICAgZXhpdCgwKTsKKyAgfQorCisgIGZvciAoOzspIHsKKyAgICBjb21tYT0gc3RyY2hyKHZhbHVlLCcsJyk7CisgICAgbCA9IGNvbW1hID8gKHNpemVfdCkoY29tbWEgLSB2YWx1ZSkgOiBzdHJsZW4odmFsdWUpOworICAgIGZvciAoZmlwPWZvcmNlaW5mb3M7IGZpcC0+bmFtZTsgZmlwKyspCisgICAgICBpZiAoIXN0cm5jbXAoZmlwLT5uYW1lLHZhbHVlLGwpICYmIHN0cmxlbihmaXAtPm5hbWUpPT1sKSBicmVhazsKKworICAgIGlmICghZmlwLT5uYW1lKSB7CisgICAgICBiYWR1c2FnZShfKCJ1bmtub3duIGZvcmNlL3JlZnVzZSBvcHRpb24gYCUuKnMnIiksCisgICAgICAgICAgICAgICAoaW50KW1pbihsLCAyNTApLCB2YWx1ZSk7CisgICAgfSBlbHNlIGlmIChzdHJjbXAoZmlwLT5uYW1lLCAiYWxsIikgPT0gMCkgeworICAgICAgZm9yIChmaXAgPSBmb3JjZWluZm9zOyBmaXAtPm5hbWU7IGZpcCsrKQorICAgICAgICBpZiAoZmlwLT5vcHQpCisgICAgICAgICAgKmZpcC0+b3B0ID0gY2lwLT5hcmdfaW50OworICAgIH0gZWxzZSBpZiAoZmlwLT5vcHQpIHsKKyAgICAgICpmaXAtPm9wdCA9IGNpcC0+YXJnX2ludDsKKyAgICB9IGVsc2UgeworICAgICAgd2FybmluZyhfKCJvYnNvbGV0ZSBmb3JjZS9yZWZ1c2Ugb3B0aW9uICclcydcbiIpLCBmaXAtPm5hbWUpOworICAgIH0KKworICAgIGlmICghY29tbWEpIGJyZWFrOworICAgIHZhbHVlPSArK2NvbW1hOworICB9Cit9CisKK2ludCBleGVjYmFja2VuZChjb25zdCBjaGFyICpjb25zdCAqYXJndikgRFBLR19BVFRSX05PUkVUOworaW50IGNvbW1hbmRmZChjb25zdCBjaGFyICpjb25zdCAqYXJndik7CisKKy8qIFRoaXMgdGFibGUgaGFzIGJvdGggdGhlIGFjdGlvbiBlbnRyaWVzIGluIGl0IGFuZCB0aGUgbm9ybWFsIG9wdGlvbnMuCisgKiBUaGUgYWN0aW9uIGVudHJpZXMgYXJlIG1hZGUgd2l0aCB0aGUgQUNUSU9OIG1hY3JvLCBhcyB0aGV5IGFsbAorICogaGF2ZSBhIHZlcnkgc2ltaWxhciBzdHJ1Y3R1cmUuICovCitzdGF0aWMgY29uc3Qgc3RydWN0IGNtZGluZm8gY21kaW5mb3NbXT0geworI2RlZmluZSBBQ1RJT05CQUNLRU5EKGxvbmdvcHQsIHNob3J0b3B0LCBiYWNrZW5kKSBcCisgeyBsb25nb3B0LCBzaG9ydG9wdCwgMCwgTlVMTCwgTlVMTCwgc2V0YWN0aW9uLCAwLCAodm9pZCAqKWJhY2tlbmQsIGV4ZWNiYWNrZW5kIH0KKworICBBQ1RJT04oICJpbnN0YWxsIiwgICAgICAgICAgICAgICAgICAgICAgICAnaScsIGFjdF9pbnN0YWxsLCAgICAgICAgICAgICAgYXJjaGl2ZWZpbGVzICAgICksCisgIEFDVElPTiggInVucGFjayIsICAgICAgICAgICAgICAgICAgICAgICAgICAwLCAgYWN0X3VucGFjaywgICAgICAgICAgICAgICBhcmNoaXZlZmlsZXMgICAgKSwKKyAgQUNUSU9OKCAicmVjb3JkLWF2YWlsIiwgICAgICAgICAgICAgICAgICAgJ0EnLCBhY3RfYXZhaWwsICAgICAgICAgICAgICAgIGFyY2hpdmVmaWxlcyAgICApLAorICBBQ1RJT04oICJjb25maWd1cmUiLCAgICAgICAgICAgICAgICAgICAgICAgMCwgIGFjdF9jb25maWd1cmUsICAgICAgICAgICAgcGFja2FnZXMgICAgICAgICksCisgIEFDVElPTiggInJlbW92ZSIsICAgICAgICAgICAgICAgICAgICAgICAgICdyJywgYWN0X3JlbW92ZSwgICAgICAgICAgICAgICBwYWNrYWdlcyAgICAgICAgKSwKKyAgQUNUSU9OKCAicHVyZ2UiLCAgICAgICAgICAgICAgICAgICAgICAgICAgJ1AnLCBhY3RfcHVyZ2UsICAgICAgICAgICAgICAgIHBhY2thZ2VzICAgICAgICApLAorICBBQ1RJT04oICJ0cmlnZ2Vycy1vbmx5IiwgICAgICAgICAgICAgICAgICAgMCwgIGFjdF90cmlnZ2VycywgICAgICAgICAgICAgcGFja2FnZXMgICAgICAgICksCisgIEFDVElPTkJBQ0tFTkQoICJsaXN0ZmlsZXMiLCAgICAgICAgICAgICAgICdMJywgRFBLR1FVRVJZKSwKKyAgQUNUSU9OQkFDS0VORCggInN0YXR1cyIsICAgICAgICAgICAgICAgICAgJ3MnLCBEUEtHUVVFUlkpLAorICBBQ1RJT04oICJnZXQtc2VsZWN0aW9ucyIsICAgICAgICAgICAgICAgICAgMCwgIGFjdF9nZXRzZWxlY3Rpb25zLCAgICAgICAgZ2V0c2VsZWN0aW9ucyAgICksCisgIEFDVElPTiggInNldC1zZWxlY3Rpb25zIiwgICAgICAgICAgICAgICAgICAwLCAgYWN0X3NldHNlbGVjdGlvbnMsICAgICAgICBzZXRzZWxlY3Rpb25zICAgKSwKKyAgQUNUSU9OKCAiY2xlYXItc2VsZWN0aW9ucyIsICAgICAgICAgICAgICAgIDAsICBhY3RfY2xlYXJzZWxlY3Rpb25zLCAgICAgIGNsZWFyc2VsZWN0aW9ucyApLAorICBBQ1RJT05CQUNLRU5EKCAicHJpbnQtYXZhaWwiLCAgICAgICAgICAgICAncCcsIERQS0dRVUVSWSksCisgIEFDVElPTiggInVwZGF0ZS1hdmFpbCIsICAgICAgICAgICAgICAgICAgICAwLCAgYWN0X2F2cmVwbGFjZSwgICAgICAgICAgICB1cGRhdGVhdmFpbGFibGUgKSwKKyAgQUNUSU9OKCAibWVyZ2UtYXZhaWwiLCAgICAgICAgICAgICAgICAgICAgIDAsICBhY3RfYXZtZXJnZSwgICAgICAgICAgICAgIHVwZGF0ZWF2YWlsYWJsZSApLAorICBBQ1RJT04oICJjbGVhci1hdmFpbCIsICAgICAgICAgICAgICAgICAgICAgMCwgIGFjdF9hdmNsZWFyLCAgICAgICAgICAgICAgdXBkYXRlYXZhaWxhYmxlICksCisgIEFDVElPTiggImZvcmdldC1vbGQtdW5hdmFpbCIsICAgICAgICAgICAgICAwLCAgYWN0X2ZvcmdldG9sZCwgICAgICAgICAgICBmb3JnZXRvbGQgICAgICAgKSwKKyAgQUNUSU9OKCAiYXVkaXQiLCAgICAgICAgICAgICAgICAgICAgICAgICAgJ0MnLCBhY3RfYXVkaXQsICAgICAgICAgICAgICAgIGF1ZGl0ICAgICAgICAgICApLAorICBBQ1RJT04oICJ5ZXQtdG8tdW5wYWNrIiwgICAgICAgICAgICAgICAgICAgMCwgIGFjdF91bnBhY2tjaGssICAgICAgICAgICAgdW5wYWNrY2hrICAgICAgICksCisgIEFDVElPTkJBQ0tFTkQoICJsaXN0IiwgICAgICAgICAgICAgICAgICAgICdsJywgRFBLR1FVRVJZKSwKKyAgQUNUSU9OQkFDS0VORCggInNlYXJjaCIsICAgICAgICAgICAgICAgICAgJ1MnLCBEUEtHUVVFUlkpLAorICBBQ1RJT04oICJhc3NlcnQtc3VwcG9ydC1wcmVkZXBlbmRzIiwgICAgICAgMCwgIGFjdF9hc3NlcnRwcmVkZXAsICAgICAgICAgYXNzZXJ0cHJlZGVwICAgICksCisgIEFDVElPTiggImFzc2VydC13b3JraW5nLWVwb2NoIiwgICAgICAgICAgICAwLCAgYWN0X2Fzc2VydGVwb2NoLCAgICAgICAgICBhc3NlcnRlcG9jaCAgICAgKSwKKyAgQUNUSU9OKCAiYXNzZXJ0LWxvbmctZmlsZW5hbWVzIiwgICAgICAgICAgIDAsICBhY3RfYXNzZXJ0bG9uZ2ZpbGVuYW1lcywgIGFzc2VydGxvbmdmaWxlbmFtZXMgKSwKKyAgQUNUSU9OKCAiYXNzZXJ0LW11bHRpLWNvbnJlcCIsICAgICAgICAgICAgIDAsICBhY3RfYXNzZXJ0bXVsdGljb25yZXAsICAgIGFzc2VydG11bHRpY29ucmVwICksCisgIEFDVElPTiggInByaW50LWFyY2hpdGVjdHVyZSIsICAgICAgICAgICAgICAwLCAgYWN0X3ByaW50YXJjaCwgICAgICAgICAgICBwcmludGFyY2ggICApLAorICBBQ1RJT04oICJwcmludC1pbnN0YWxsYXRpb24tYXJjaGl0ZWN0dXJlIiwgMCwgIGFjdF9wcmludGluc3RhcmNoLCAgICAgICAgcHJpbnRpbnN0YXJjaCAgKSwKKyAgQUNUSU9OKCAicHJlZGVwLXBhY2thZ2UiLCAgICAgICAgICAgICAgICAgIDAsICBhY3RfcHJlZGVwcGFja2FnZSwgICAgICAgIHByZWRlcHBhY2thZ2UgICApLAorICBBQ1RJT04oICJjb21wYXJlLXZlcnNpb25zIiwgICAgICAgICAgICAgICAgMCwgIGFjdF9jbXB2ZXJzaW9ucywgICAgICAgICAgY21wdmVyc2lvbnMgICAgICksCisvKgorICBBQ1RJT04oICJjb21tYW5kLWZkIiwgICAgICAgICAgICAgICAgICAgJ2MnLCBhY3RfY29tbWFuZGZkLCAgIGNvbW1hbmRmZCAgICAgKSwKKyovCisKKyAgeyAicHJlLWludm9rZSIsICAgICAgICAwLCAgIDEsIE5VTEwsICAgICAgICAgIE5VTEwsICAgICAgc2V0X2ludm9rZV9ob29rLCAwLCAmcHJlX2ludm9rZV9ob29rc190YWlsIH0sCisgIHsgInBvc3QtaW52b2tlIiwgICAgICAgMCwgICAxLCBOVUxMLCAgICAgICAgICBOVUxMLCAgICAgIHNldF9pbnZva2VfaG9vaywgMCwgJnBvc3RfaW52b2tlX2hvb2tzX3RhaWwgfSwKKyAgeyAicGF0aC1leGNsdWRlIiwgICAgICAwLCAgIDEsIE5VTEwsICAgICAgICAgIE5VTEwsICAgICAgc2V0ZmlsdGVyLCAgICAgMCB9LAorICB7ICJwYXRoLWluY2x1ZGUiLCAgICAgIDAsICAgMSwgTlVMTCwgICAgICAgICAgTlVMTCwgICAgICBzZXRmaWx0ZXIsICAgICAxIH0sCisgIHsgInN0YXR1cy1sb2dnZXIiLCAgICAgMCwgICAxLCBOVUxMLCAgICAgICAgICBOVUxMLCAgICAgIHNldF9pbnZva2VfaG9vaywgMCwgJnN0YXR1c19sb2dnZXJzX3RhaWwgfSwKKyAgeyAic3RhdHVzLWZkIiwgICAgICAgICAwLCAgIDEsIE5VTEwsICAgICAgICAgIE5VTEwsICAgICAgc2V0cGlwZSwgMCB9LAorICB7ICJsb2ciLCAgICAgICAgICAgICAgIDAsICAgMSwgTlVMTCwgICAgICAgICAgJmxvZ19maWxlLCBOVUxMLCAgICAwIH0sCisgIHsgInBlbmRpbmciLCAgICAgICAgICAgJ2EnLCAwLCAmZl9wZW5kaW5nLCAgICBOVUxMLCAgICAgIE5VTEwsICAgIDEgfSwKKyAgeyAicmVjdXJzaXZlIiwgICAgICAgICAnUicsIDAsICZmX3JlY3Vyc2l2ZSwgIE5VTEwsICAgICAgTlVMTCwgICAgMSB9LAorICB7ICJuby1hY3QiLCAgICAgICAgICAgIDAsICAgMCwgJmZfbm9hY3QsICAgICAgTlVMTCwgICAgICBOVUxMLCAgICAxIH0sCisgIHsgImRyeS1ydW4iLCAgICAgICAgICAgMCwgICAwLCAmZl9ub2FjdCwgICAgICBOVUxMLCAgICAgIE5VTEwsICAgIDEgfSwKKyAgeyAic2ltdWxhdGUiLCAgICAgICAgICAwLCAgIDAsICZmX25vYWN0LCAgICAgIE5VTEwsICAgICAgTlVMTCwgICAgMSB9LAorICB7ICJuby1kZWJzaWciLCAgICAgICAgIDAsICAgMCwgJmZfbm9kZWJzaWcsICAgTlVMTCwgICAgICBOVUxMLCAgICAxIH0sCisgIC8qIEFsaWFzICgnRycpIGZvciAtLXJlZnVzZS4gKi8KKyAgeyAgTlVMTCwgICAgICAgICAgICAgICAnRycsIDAsICZmY19kb3duZ3JhZGUsIE5VTEwsICAgICAgTlVMTCwgICAgMCB9LAorICB7ICJzZWxlY3RlZC1vbmx5IiwgICAgICdPJywgMCwgJmZfYWxzb3NlbGVjdCwgTlVMTCwgICAgICBOVUxMLCAgICAwIH0sCisgIHsgInRyaWdnZXJzIiwgICAgICAgICAgIDAsICAwLCAmZl90cmlnZ2VycywgICBOVUxMLCAgICAgIE5VTEwsICAgIDEgfSwKKyAgeyAibm8tdHJpZ2dlcnMiLCAgICAgICAgMCwgIDAsICZmX3RyaWdnZXJzLCAgIE5VTEwsICAgICAgTlVMTCwgICAtMSB9LAorICAvKiBGSVhNRTogUmVtb3ZlICgnTicpIHNvbWV0aW1lLiAqLworICB7ICJuby1hbHNvLXNlbGVjdCIsICAgICdOJywgMCwgJmZfYWxzb3NlbGVjdCwgTlVMTCwgICAgICBOVUxMLCAgICAwIH0sCisgIHsgInNraXAtc2FtZS12ZXJzaW9uIiwgJ0UnLCAwLCAmZl9za2lwc2FtZSwgICBOVUxMLCAgICAgIE5VTEwsICAgIDEgfSwKKyAgeyAiYXV0by1kZWNvbmZpZ3VyZSIsICAnQicsIDAsICZmX2F1dG9kZWNvbmYsIE5VTEwsICAgICAgTlVMTCwgICAgMSB9LAorICB7ICJyb290IiwgICAgICAgICAgICAgIDAsICAgMSwgTlVMTCwgICAgICAgICAgTlVMTCwgICAgICBzZXRyb290LCAgICAgICAwIH0sCisgIHsgImFib3J0LWFmdGVyIiwgICAgICAgMCwgICAxLCAmZXJyYWJvcnQsICAgICBOVUxMLCAgICAgIHNldGludGVnZXIsICAgIDAgfSwKKyAgeyAiYWRtaW5kaXIiLCAgICAgICAgICAwLCAgIDEsIE5VTEwsICAgICAgICAgICZhZG1pbmRpciwgTlVMTCwgICAgICAgICAgMCB9LAorICB7ICJpbnN0ZGlyIiwgICAgICAgICAgIDAsICAgMSwgTlVMTCwgICAgICAgICAgJmluc3RkaXIsICBOVUxMLCAgICAgICAgICAwIH0sCisgIHsgImlnbm9yZS1kZXBlbmRzIiwgICAgMCwgICAxLCBOVUxMLCAgICAgICAgICBOVUxMLCAgICAgIGlnbm9yZWRlcGVuZHMsIDAgfSwKKyAgeyAiZm9yY2UiLCAgICAgICAgICAgICAwLCAgIDIsIE5VTEwsICAgICAgICAgIE5VTEwsICAgICAgc2V0Zm9yY2UsICAgICAgMSB9LAorICB7ICJyZWZ1c2UiLCAgICAgICAgICAgIDAsICAgMiwgTlVMTCwgICAgICAgICAgTlVMTCwgICAgICBzZXRmb3JjZSwgICAgICAwIH0sCisgIHsgIm5vLWZvcmNlIiwgICAgICAgICAgMCwgICAyLCBOVUxMLCAgICAgICAgICBOVUxMLCAgICAgIHNldGZvcmNlLCAgICAgIDAgfSwKKyAgeyAiZGVidWciLCAgICAgICAgICAgICAnRCcsIDEsIE5VTEwsICAgICAgICAgIE5VTEwsICAgICAgc2V0ZGVidWcsICAgICAgMCB9LAorICB7ICJoZWxwIiwgICAgICAgICAgICAgICdoJywgMCwgTlVMTCwgICAgICAgICAgTlVMTCwgICAgICB1c2FnZSwgICAgICAgICAwIH0sCisgIHsgInZlcnNpb24iLCAgICAgICAgICAgMCwgICAwLCBOVUxMLCAgICAgICAgICBOVUxMLCAgICAgIHByaW50dmVyc2lvbiwgIDAgfSwKKyAgQUNUSU9OQkFDS0VORCggImJ1aWxkIiwJCSdiJywgQkFDS0VORCksCisgIEFDVElPTkJBQ0tFTkQoICJjb250ZW50cyIsCQknYycsIEJBQ0tFTkQpLAorICBBQ1RJT05CQUNLRU5EKCAiY29udHJvbCIsCQknZScsIEJBQ0tFTkQpLAorICBBQ1RJT05CQUNLRU5EKCAiaW5mbyIsCQknSScsIEJBQ0tFTkQpLAorICBBQ1RJT05CQUNLRU5EKCAiZmllbGQiLAkJJ2YnLCBCQUNLRU5EKSwKKyAgQUNUSU9OQkFDS0VORCggImV4dHJhY3QiLAkJJ3gnLCBCQUNLRU5EKSwKKyAgQUNUSU9OQkFDS0VORCggInZleHRyYWN0IiwJCSdYJywgQkFDS0VORCksCisgIEFDVElPTkJBQ0tFTkQoICJmc3lzLXRhcmZpbGUiLAkwLCAgIEJBQ0tFTkQpLAorICB7IE5VTEwsICAgICAgICAgICAgICAgIDAsICAgMCwgTlVMTCwgICAgICAgICAgTlVMTCwgICAgICBOVUxMLCAgICAgICAgICAwIH0KK307CisKK2ludAorZXhlY2JhY2tlbmQoY29uc3QgY2hhciAqY29uc3QgKmFyZ3YpCit7CisgIHN0cnVjdCBjb21tYW5kIGNtZDsKKyAgY2hhciAqYXJnOworCisgIGNvbW1hbmRfaW5pdCgmY21kLCBjaXBhY3Rpb24tPmFyZ19wdHIsIE5VTEwpOworICBjb21tYW5kX2FkZF9hcmcoJmNtZCwgY2lwYWN0aW9uLT5hcmdfcHRyKTsKKworICBtX2FzcHJpbnRmKCZhcmcsICItLSVzIiwgY2lwYWN0aW9uLT5vbG9uZyk7CisgIGNvbW1hbmRfYWRkX2FyZygmY21kLCBhcmcpOworCisgIC8qIEV4bGljaXRlbHkgc2VwYXJhdGUgYXJndW1lbnRzIGZyb20gb3B0aW9ucyBhcyBhbnkgdXNlci1zdXBwbGllZAorICAgKiBzZXBhcmF0b3IgZ290IHN0cmlwcGVkIGJ5IHRoZSBvcHRpb24gcGFyc2VyICovCisgIGNvbW1hbmRfYWRkX2FyZygmY21kLCAiLS0iKTsKKyAgY29tbWFuZF9hZGRfYXJnbCgmY21kLCAoY29uc3QgY2hhciAqKilhcmd2KTsKKworICBjb21tYW5kX2V4ZWMoJmNtZCk7Cit9CisKK2ludAorY29tbWFuZGZkKGNvbnN0IGNoYXIgKmNvbnN0ICphcmd2KQoreworICBzdHJ1Y3QgdmFyYnVmIGxpbmV2YiA9IFZBUkJVRl9JTklUOworICBjb25zdCBjaGFyICogcGlwZWluOworICBjb25zdCBjaGFyICoqbmV3YXJncyA9IE5VTEw7CisgIGNoYXIgKnB0ciwgKmVuZHB0cjsKKyAgRklMRSAqaW47CisgIHVuc2lnbmVkIGxvbmcgaW5mZDsKKyAgaW50IHJldCA9IDA7CisgIGludCBjLCBsbm8sIGk7CisgIGJvb2wgc2tpcGNoYXI7CisKKyAgcGlwZWluID0gKmFyZ3YrKzsKKyAgaWYgKHBpcGVpbiA9PSBOVUxMKQorICAgIGJhZHVzYWdlKF8oIi0tY29tbWFuZC1mZCB0YWtlcyBvbmUgYXJndW1lbnQsIG5vdCB6ZXJvIikpOworICBpZiAoKmFyZ3YpCisgICAgYmFkdXNhZ2UoXygiLS1jb21tYW5kLWZkIG9ubHkgdGFrZXMgb25lIGFyZ3VtZW50IikpOworICBlcnJubyA9IDA7CisgIGluZmQgPSBzdHJ0b3VsKHBpcGVpbiwgJmVuZHB0ciwgMTApOworICBpZiAocGlwZWluID09IGVuZHB0ciB8fCAqZW5kcHRyIHx8IGluZmQgPiBJTlRfTUFYKQorICAgIG9oc2hpdGUoXygiaW52YWxpZCBpbnRlZ2VyIGZvciAtLSVzOiBgJS4yNTBzJyIpLCAiY29tbWFuZC1mZCIsIHBpcGVpbik7CisgIGlmICgoaW49IGZkb3BlbihpbmZkLCAiciIpKSA9PSBOVUxMKQorICAgIG9oc2hpdGUoXygiY291bGRuJ3Qgb3BlbiBgJWknIGZvciBzdHJlYW0iKSwgKGludCkgaW5mZCk7CisKKyAgZm9yICg7OykgeworICAgIGJvb2wgbW9kZSA9IGZhbHNlOworICAgIGludCBhcmdjPSAxOworICAgIGxubz0gMDsKKworICAgIHB1c2hfZXJyb3JfY29udGV4dCgpOworCisgICAgZG8geyBjPSBnZXRjKGluKTsgaWYgKGMgPT0gJ1xuJykgbG5vKys7IH0gd2hpbGUgKGMgIT0gRU9GICYmIGlzc3BhY2UoYykpOworICAgIGlmIChjID09IEVPRikgYnJlYWs7CisgICAgaWYgKGMgPT0gJyMnKSB7CisgICAgICBkbyB7IGM9IGdldGMoaW4pOyBpZiAoYyA9PSAnXG4nKSBsbm8rKzsgfSB3aGlsZSAoYyAhPSBFT0YgJiYgYyAhPSAnXG4nKTsKKyAgICAgIGNvbnRpbnVlOworICAgIH0KKyAgICB2YXJidWZfcmVzZXQoJmxpbmV2Yik7CisgICAgZG8geworICAgICAgdmFyYnVmX2FkZF9jaGFyKCZsaW5ldmIsIGMpOworICAgICAgYz0gZ2V0Yyhpbik7CisgICAgICBpZiAoYyA9PSAnXG4nKSBsbm8rKzsKKworICAgICAgLyogVGhpcyBpc24ndCBmdWxseSBhY2N1cmF0ZSwgYnV0IG92ZXJlc3RpbWF0aW5nIGNhbid0IGh1cnQuICovCisgICAgICBpZiAoaXNzcGFjZShjKSkKKyAgICAgICAgYXJnYysrOworICAgIH0gd2hpbGUgKGMgIT0gRU9GICYmIGMgIT0gJ1xuJyk7CisgICAgaWYgKGMgPT0gRU9GKSBvaHNoaXQoXygidW5leHBlY3RlZCBlb2YgYmVmb3JlIGVuZCBvZiBsaW5lICVkIiksbG5vKTsKKyAgICBpZiAoIWFyZ2MpIGNvbnRpbnVlOworICAgIHZhcmJ1Zl9lbmRfc3RyKCZsaW5ldmIpOworICAgIG5ld2FyZ3MgPSBtX3JlYWxsb2MobmV3YXJncywgc2l6ZW9mKGNvbnN0IGNoYXIgKikgKiAoYXJnYyArIDEpKTsKKyAgICBhcmdjPSAxOworICAgIHB0cj0gbGluZXZiLmJ1ZjsKKyAgICBlbmRwdHIgPSBwdHIgKyBsaW5ldmIudXNlZCArIDE7CisgICAgc2tpcGNoYXIgPSBmYWxzZTsKKyAgICB3aGlsZShwdHIgPCBlbmRwdHIpIHsKKyAgICAgIGlmIChza2lwY2hhcikgeworCXNraXBjaGFyID0gZmFsc2U7CisgICAgICB9IGVsc2UgaWYgKCpwdHIgPT0gJ1xcJykgeworCW1lbW1vdmUocHRyLCAocHRyKzEpLCAobGluZXZiLnVzZWQtKGxpbmV2Yi5idWYgLSBwdHIpLTEpKTsKKwllbmRwdHItLTsKKwlza2lwY2hhciA9IHRydWU7CisJY29udGludWU7CisgICAgICB9IGVsc2UgaWYgKGlzc3BhY2UoKnB0cikpIHsKKwlpZiAobW9kZSA9PSB0cnVlKSB7CisJICAqcHRyID0gJ1wwJzsKKwkgIG1vZGUgPSBmYWxzZTsKKwl9CisgICAgICB9IGVsc2UgeworCWlmIChtb2RlID09IGZhbHNlKSB7CisJICBuZXdhcmdzW2FyZ2NdPSBwdHI7CisJICBhcmdjKys7CisJICBtb2RlID0gdHJ1ZTsKKwl9CisgICAgICB9CisgICAgICBwdHIrKzsKKyAgICB9CisgICAgKnB0ciA9ICdcMCc7CisgICAgbmV3YXJnc1thcmdjKytdID0gTlVMTDsKKworICAgIC8qIFdlIHN0cmR1cCgpIGVhY2ggYXJndW1lbnQsIGJ1dCBuZXZlciBmcmVlIGl0LCBiZWNhdXNlIHRoZQorICAgICAqIGVycm9yIG1lc3NhZ2VzIGNvbnRhaW4gcmVmZXJlbmNlcyBiYWNrIHRvIHRoZXNlIHN0cmluZ3MuCisgICAgICogRnJlZWluZyB0aGVtLCBhbmQgcmV1c2luZyB0aGUgbWVtb3J5LCB3b3VsZCBtYWtlIHRob3NlCisgICAgICogZXJyb3IgbWVzc2FnZXMgY29uZnVzaW5nLCB0byBzYXkgdGhlIGxlYXN0LiAqLworICAgIGZvcihpPTE7aTxhcmdjO2krKykKKyAgICAgIGlmIChuZXdhcmdzW2ldKQorICAgICAgICBuZXdhcmdzW2ldID0gbV9zdHJkdXAobmV3YXJnc1tpXSk7CisKKyAgICBzZXRhY3Rpb24oTlVMTCwgTlVMTCk7CisgICAgbXlvcHQoKGNvbnN0IGNoYXIgKmNvbnN0ICoqKSZuZXdhcmdzLCBjbWRpbmZvcywgcHJpbnRmb3JoZWxwKTsKKyAgICBpZiAoIWNpcGFjdGlvbikgYmFkdXNhZ2UoXygibmVlZCBhbiBhY3Rpb24gb3B0aW9uIikpOworCisgICAgcmV0IHw9IGNpcGFjdGlvbi0+YWN0aW9uKG5ld2FyZ3MpOworCisgICAgcG9wX2Vycm9yX2NvbnRleHQoZWhmbGFnX25vcm1hbHRpZHkpOworICB9CisKKyAgcmV0dXJuIHJldDsKK30KKworaW50IG1haW4oaW50IGFyZ2MsIGNvbnN0IGNoYXIgKmNvbnN0ICphcmd2KSB7CisgIGludCByZXQ7CisKKyAgc2V0bG9jYWxlKExDX0FMTCwgIiIpOworICBiaW5kdGV4dGRvbWFpbihQQUNLQUdFLCBMT0NBTEVESVIpOworICB0ZXh0ZG9tYWluKFBBQ0tBR0UpOworCisgIGRwa2dfc2V0X3Byb2duYW1lKCJkcGtnIik7CisgIHN0YW5kYXJkX3N0YXJ0dXAoKTsKKyAgbG9hZGNmZ2ZpbGUoRFBLRywgY21kaW5mb3MpOworICBteW9wdCgmYXJndiwgY21kaW5mb3MsIHByaW50Zm9yaGVscCk7CisKKyAgaWYgKCFjaXBhY3Rpb24pIGJhZHVzYWdlKF8oIm5lZWQgYW4gYWN0aW9uIG9wdGlvbiIpKTsKKworICBhZG1pbmRpciA9IGRwa2dfZGJfc2V0X2RpcihhZG1pbmRpcik7CisKKyAgLyogQWx3YXlzIHNldCBlbnZpcm9ubWVudCwgdG8gYXZvaWQgcG9zc2libGUgc2VjdXJpdHkgcmlza3MuICovCisgIGlmIChzZXRlbnYoIkRQS0dfQURNSU5ESVIiLCBhZG1pbmRpciwgMSkgPCAwKQorICAgIG9oc2hpdGUoXygidW5hYmxlIHRvIHNldGVudiBmb3Igc3VicHJvY2Vzc2VzIikpOworCisgIGlmICghZl90cmlnZ2VycykKKyAgICBmX3RyaWdnZXJzID0gKGNpcGFjdGlvbi0+YXJnX2ludCA9PSBhY3RfdHJpZ2dlcnMgJiYgKmFyZ3YpID8gLTEgOiAxOworCisgIHNldHZidWYoc3Rkb3V0LCBOVUxMLCBfSU9OQkYsIDApOworCisgIGlmIChpc19pbnZva2VfYWN0aW9uKGNpcGFjdGlvbi0+YXJnX2ludCkpIHsKKyAgICBydW5faW52b2tlX2hvb2tzKGNpcGFjdGlvbi0+b2xvbmcsIHByZV9pbnZva2VfaG9va3MpOworICAgIHJ1bl9zdGF0dXNfbG9nZ2VycyhzdGF0dXNfbG9nZ2Vycyk7CisgIH0KKworICBmaWxlc2RiaW5pdCgpOworCisgIHJldCA9IGNpcGFjdGlvbi0+YWN0aW9uKGFyZ3YpOworCisgIGlmIChpc19pbnZva2VfYWN0aW9uKGNpcGFjdGlvbi0+YXJnX2ludCkpCisgICAgcnVuX2ludm9rZV9ob29rcyhjaXBhY3Rpb24tPm9sb25nLCBwb3N0X2ludm9rZV9ob29rcyk7CisKKyAgc3RhbmRhcmRfc2h1dGRvd24oKTsKKworICByZXR1cm4gcmVwb3J0YnJva2VuX3JldGV4aXRzdGF0dXMocmV0KTsKK30KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc3JjL21haW4uaCBiL2Rwa2ctMS4xNi4xLjEvc3JjL21haW4uaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wYWJhZGExCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zcmMvbWFpbi5oCkBAIC0wLDAgKzEsMjc3IEBACisvKgorICogZHBrZyAtIG1haW4gcHJvZ3JhbSBmb3IgcGFja2FnZSBtYW5hZ2VtZW50CisgKiBtYWluLmggLSBleHRlcm5hbCBkZWZpbml0aW9ucyBmb3IgdGhpcyBwcm9ncmFtCisgKgorICogQ29weXJpZ2h0IMKpIDE5OTUgSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuZ3JlZW5lbmQub3JnLnVrPgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaWZuZGVmIE1BSU5fSAorI2RlZmluZSBNQUlOX0gKKworI2luY2x1ZGUgPGRwa2cvZGVidWcuaD4KKyNpbmNsdWRlIDxkcGtnL3BrZy1saXN0Lmg+CisKKy8qIFRoZXNlIHR3byBhcmUgZGVmaW5lZCBpbiBmaWxlc2RiLmguICovCitzdHJ1Y3QgZmlsZWlubGlzdDsKK3N0cnVjdCBmaWxlbmFtZW5vZGU7CisKK3N0cnVjdCBwZXJwYWNrYWdlc3RhdGUgeworICBlbnVtIGlzdG9iZXMgeworICAgIGl0Yl9ub3JtYWwsIGl0Yl9yZW1vdmUsIGl0Yl9pbnN0YWxsbmV3LCBpdGJfZGVjb25maWd1cmUsIGl0Yl9wcmVpbnN0YWxsCisgIH0gaXN0b2JlOworCisgIC8qIFVzZWQgZHVyaW5nIGN5Y2xlIGRldGVjdGlvbi4gKi8KKyAgZW51bSB7CisgICAgd2hpdGUsCisgICAgZ3JheSwKKyAgICBibGFjaywKKyAgfSBjb2xvcjsKKworICAvKgorICAgKiBmaWxlbGlzdHZhbGlkICBmaWxlcyAgTWVhbmluZworICAgKiAtLS0tLS0tLS0tLS0tICAtLS0tLSAgLS0tLS0tLQorICAgKiBmYWxzZSAgICAgICAgICBOVUxMICAgTm90IHJlYWQgeWV0LCBtdXN0IGRvIHNvIGlmIHdhbnQgdGhlbS4KKyAgICogZmFsc2UgICAgICAgICAgIU5VTEwgIFJlYWQsIGJ1dCByZXdyaXR0ZW4gYW5kIG5vdyBvdXQgb2YgZGF0ZS4gSWYgd2FudAorICAgKiAgICAgICAgICAgICAgICAgICAgICAgICBpbmZvIG11c3QgdGhyb3cgYXdheSBvbGQgYW5kIHJlcmVhZCBmaWxlLgorICAgKiB0cnVlICAgICAgICAgICAhTlVMTCAgUmVhZCwgYWxsIGlzIE9LLgorICAgKiB0cnVlICAgICAgICAgICBOVUxMICAgUmVhZCBPSywgYnV0LCB0aGVyZSB3ZXJlIG5vIGZpbGVzLgorICAgKi8KKyAgYm9vbCBmaWxlc2xpc3R2YWxpZDsKKyAgc3RydWN0IGZpbGVpbmxpc3QgKmZpbGVzOworICBpbnQgcmVwbGFjaW5nZmlsZXNhbmRzYWlkOworCisgIG9mZl90IGxpc3RmaWxlX3BoeXNfb2ZmczsKKworICAvKiBOb24tTlVMTCBpZmYgaW4gdHJpZ3Byb2MuYzpkZWZlcnJlZC4gKi8KKyAgc3RydWN0IHBrZ19saXN0ICp0cmlncHJvY2RlZmVycmVkOworfTsKKworZW51bSBhY3Rpb24geworCWFjdF91bnNldCwKKworCWFjdF91bnBhY2ssCisJYWN0X2NvbmZpZ3VyZSwKKwlhY3RfaW5zdGFsbCwKKwlhY3RfdHJpZ2dlcnMsCisJYWN0X3JlbW92ZSwKKwlhY3RfcHVyZ2UsCisJYWN0X2NvbW1hbmRmZCwKKworCWFjdF9zdGF0dXMsCisJYWN0X2xpc3RwYWNrYWdlcywKKwlhY3RfbGlzdGZpbGVzLAorCWFjdF9zZWFyY2hmaWxlcywKKwlhY3RfY29udHJvbHBhdGgsCisKKwlhY3RfY21wdmVyc2lvbnMsCisKKwlhY3RfcHJpbnRhcmNoLAorCWFjdF9wcmludGluc3RhcmNoLAorCisJYWN0X2Fzc2VydHByZWRlcCwKKwlhY3RfYXNzZXJ0ZXBvY2gsCisJYWN0X2Fzc2VydGxvbmdmaWxlbmFtZXMsCisJYWN0X2Fzc2VydG11bHRpY29ucmVwLAorCisJYWN0X2F1ZGl0LAorCWFjdF91bnBhY2tjaGssCisJYWN0X3ByZWRlcHBhY2thZ2UsCisKKwlhY3RfZ2V0c2VsZWN0aW9ucywKKwlhY3Rfc2V0c2VsZWN0aW9ucywKKwlhY3RfY2xlYXJzZWxlY3Rpb25zLAorCisJYWN0X2F2YWlsLAorCWFjdF9wcmludGF2YWlsLAorCWFjdF9hdmNsZWFyLAorCWFjdF9hdnJlcGxhY2UsCisJYWN0X2F2bWVyZ2UsCisJYWN0X2ZvcmdldG9sZCwKK307CisKK2VudW0gY29uZmZvcHQgeworICBjZm9mX3Byb21wdCAgICAgICAgPSAgICAgMDAxLAorICBjZm9mX2tlZXAgICAgICAgICAgPSAgICAgMDAyLAorICBjZm9mX2luc3RhbGwgICAgICAgPSAgICAgMDA0LAorICBjZm9mX2JhY2t1cCAgICAgICAgPSAgIDAwMTAwLAorICBjZm9mX25ld2NvbmZmICAgICAgPSAgIDAwMjAwLAorICBjZm9mX2lzbmV3ICAgICAgICAgPSAgIDAwNDAwLAorICBjZm9mX2lzb2xkICAgICAgICAgPSAgIDAxMDAwLAorICBjZm9mX3VzZXJybWQgICAgICAgPSAgIDAyMDAwLAorICBjZm9fa2VlcCAgICAgICAgICAgPSAgIGNmb2Zfa2VlcCwKKyAgY2ZvX3Byb21wdF9rZWVwICAgID0gICBjZm9mX2tlZXAgfCBjZm9mX3Byb21wdCwKKyAgY2ZvX3Byb21wdCAgICAgICAgID0gICAgICAgICAgICAgICBjZm9mX3Byb21wdCwKKyAgY2ZvX3Byb21wdF9pbnN0YWxsID0gICAgICAgICAgICAgICBjZm9mX3Byb21wdCB8IGNmb2ZfaW5zdGFsbCwKKyAgY2ZvX2luc3RhbGwgICAgICAgID0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNmb2ZfaW5zdGFsbCwKKyAgY2ZvX25ld2NvbmZmICAgICAgID0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNmb2ZfaW5zdGFsbCB8IGNmb2ZfbmV3Y29uZmYsCisgIGNmb19pZGVudGljYWwgICAgICA9ICAgY2ZvZl9rZWVwCit9OworCitleHRlcm4gY29uc3QgY2hhciAqY29uc3Qgc3RhdHVzc3RyaW5nc1tdOworCitleHRlcm4gaW50IGZfcGVuZGluZywgZl9yZWN1cnNpdmUsIGZfYWxzb3NlbGVjdCwgZl9za2lwc2FtZSwgZl9ub2FjdDsKK2V4dGVybiBpbnQgZl9hdXRvZGVjb25mLCBmX25vZGVic2lnOworZXh0ZXJuIGludCBmX3RyaWdnZXJzOworZXh0ZXJuIGludCBmY19kb3duZ3JhZGUsIGZjX2NvbmZpZ3VyZWFueSwgZmNfaG9sZCwgZmNfcmVtb3ZlcmVpbnN0cmVxLCBmY19vdmVyd3JpdGU7CitleHRlcm4gaW50IGZjX3JlbW92ZWVzc2VudGlhbCwgZmNfY29uZmxpY3RzLCBmY19kZXBlbmRzLCBmY19kZXBlbmRzdmVyc2lvbjsKK2V4dGVybiBpbnQgZmNfYnJlYWtzLCBmY19iYWRwYXRoLCBmY19vdmVyd3JpdGVkaXZlcnRlZCwgZmNfYXJjaGl0ZWN0dXJlOworZXh0ZXJuIGludCBmY19ub25yb290LCBmY19vdmVyd3JpdGVkaXIsIGZjX2NvbmZmX25ldywgZmNfY29uZmZfbWlzczsKK2V4dGVybiBpbnQgZmNfY29uZmZfb2xkLCBmY19jb25mZl9kZWY7CitleHRlcm4gaW50IGZjX2NvbmZmX2FzazsKK2V4dGVybiBpbnQgZmNfYmFkdmVyaWZ5OworZXh0ZXJuIGludCBmY19iYWR2ZXJzaW9uOworZXh0ZXJuIGludCBmY191bnNhZmVfaW87CisKK2V4dGVybiBib29sIGFib3J0X3Byb2Nlc3Npbmc7CitleHRlcm4gaW50IGVycmFib3J0OworZXh0ZXJuIGNvbnN0IGNoYXIgKmluc3RkaXI7CitleHRlcm4gc3RydWN0IHBrZ19saXN0ICppZ25vcmVkZXBlbmRzczsKK2V4dGVybiBjb25zdCBjaGFyIG5hdGl2ZV9hcmNoW107CisKK3N0cnVjdCBpbnZva2VfaG9vayB7CisJc3RydWN0IGludm9rZV9ob29rICpuZXh0OworCWNvbnN0IGNoYXIgKmNvbW1hbmQ7Cit9OworCisvKiBmcm9tIGFyY2hpdmVzLmMgKi8KKworaW50IGFyY2hpdmVmaWxlcyhjb25zdCBjaGFyICpjb25zdCAqYXJndik7Cit2b2lkIHByb2Nlc3NfYXJjaGl2ZShjb25zdCBjaGFyICpmaWxlbmFtZSk7Citib29sIHdhbnR0b2luc3RhbGwoc3RydWN0IHBrZ2luZm8gKnBrZyk7CitzdHJ1Y3QgZmlsZWlubGlzdCAqbmV3Y29uZmZfYXBwZW5kKHN0cnVjdCBmaWxlaW5saXN0ICoqKm5ld2NvbmZmaWxlc2xhc3RwX2lvLAorCQkJCSAgIHN0cnVjdCBmaWxlbmFtZW5vZGUgKm5hbWVub2RlKTsKKworLyogZnJvbSB1cGRhdGUuYyAqLworCitpbnQgZm9yZ2V0b2xkKGNvbnN0IGNoYXIgKmNvbnN0ICphcmd2KTsKK2ludCB1cGRhdGVhdmFpbGFibGUoY29uc3QgY2hhciAqY29uc3QgKmFyZ3YpOworCisvKiBmcm9tIGVucXVpcnkuYyAqLworCitpbnQgYXVkaXQoY29uc3QgY2hhciAqY29uc3QgKmFyZ3YpOworaW50IHVucGFja2Noayhjb25zdCBjaGFyICpjb25zdCAqYXJndik7CitpbnQgYXNzZXJ0ZXBvY2goY29uc3QgY2hhciAqY29uc3QgKmFyZ3YpOworaW50IGFzc2VydHByZWRlcChjb25zdCBjaGFyICpjb25zdCAqYXJndik7CitpbnQgYXNzZXJ0bG9uZ2ZpbGVuYW1lcyhjb25zdCBjaGFyICpjb25zdCAqYXJndik7CitpbnQgYXNzZXJ0bXVsdGljb25yZXAoY29uc3QgY2hhciAqY29uc3QgKmFyZ3YpOworaW50IHByZWRlcHBhY2thZ2UoY29uc3QgY2hhciAqY29uc3QgKmFyZ3YpOworaW50IHByaW50YXJjaChjb25zdCBjaGFyICpjb25zdCAqYXJndik7CitpbnQgcHJpbnRpbnN0YXJjaChjb25zdCBjaGFyICpjb25zdCAqYXJndik7CitpbnQgY21wdmVyc2lvbnMoY29uc3QgY2hhciAqY29uc3QgKmFyZ3YpOworCisvKiBmcm9tIHNlbGVjdC5jICovCisKK2ludCBnZXRzZWxlY3Rpb25zKGNvbnN0IGNoYXIgKmNvbnN0ICphcmd2KTsKK2ludCBzZXRzZWxlY3Rpb25zKGNvbnN0IGNoYXIgKmNvbnN0ICphcmd2KTsKK2ludCBjbGVhcnNlbGVjdGlvbnMoY29uc3QgY2hhciAqY29uc3QgKmFyZ3YpOworCisvKiBmcm9tIHBhY2thZ2VzLmMsIHJlbW92ZS5jIGFuZCBjb25maWd1cmUuYyAqLworCit2b2lkIGFkZF90b19xdWV1ZShzdHJ1Y3QgcGtnaW5mbyAqcGtnKTsKK3ZvaWQgcHJvY2Vzc19xdWV1ZSh2b2lkKTsKK2ludCBwYWNrYWdlcyhjb25zdCBjaGFyICpjb25zdCAqYXJndik7Cit2b2lkIHJlbW92YWxfYnVsayhzdHJ1Y3QgcGtnaW5mbyAqcGtnKTsKK2ludCBjb25mZmRlcmVmKHN0cnVjdCBwa2dpbmZvICpwa2csIHN0cnVjdCB2YXJidWYgKnJlc3VsdCwgY29uc3QgY2hhciAqaW4pOworCitlbnVtIGRlcF9jaGVjayB7CisgIGRlcF9jaGVja19oYWx0ID0gMCwKKyAgZGVwX2NoZWNrX2RlZmVyID0gMSwKKyAgZGVwX2NoZWNrX29rID0gMiwKK307CisKK2VudW0gZGVwX2NoZWNrIGRlcGVuZGVuY2llc19vayhzdHJ1Y3QgcGtnaW5mbyAqcGtnLCBzdHJ1Y3QgcGtnaW5mbyAqcmVtb3ZpbmcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0IHZhcmJ1ZiAqYWVtc2dzKTsKK2VudW0gZGVwX2NoZWNrIGJyZWFrc2VzX29rKHN0cnVjdCBwa2dpbmZvICpwa2csIHN0cnVjdCB2YXJidWYgKmFlbXNncyk7CisKK3ZvaWQgZGVmZXJyZWRfcmVtb3ZlKHN0cnVjdCBwa2dpbmZvICpwa2cpOwordm9pZCBkZWZlcnJlZF9jb25maWd1cmUoc3RydWN0IHBrZ2luZm8gKnBrZyk7CisKK2V4dGVybiBpbnQgc2luY2Vub3RoaW5nLCBkZXBlbmR0cnk7CisKKy8qIGZyb20gY2xlYW51cC5jIChtb3N0IG9mIHRoZXNlIGFyZSBkZWNsYXJlZCBpbiBhcmNoaXZlcy5oKSAqLworCit2b2lkIGN1X3ByZXJtcmVtb3ZlKGludCBhcmdjLCB2b2lkICoqYXJndik7CisKKy8qIGZyb20gZXJyb3JzLmMgKi8KKwordm9pZCBwcmludF9lcnJvcl9wZXJwYWNrYWdlKGNvbnN0IGNoYXIgKmVtc2csIGNvbnN0IGNoYXIgKmFyZyk7Cit2b2lkIGZvcmNpYmxlZXJyKGludCBmb3JjZWZsYWcsIGNvbnN0IGNoYXIgKmZvcm1hdCwgLi4uKSBEUEtHX0FUVFJfUFJJTlRGKDIpOworaW50IHJlcG9ydGJyb2tlbl9yZXRleGl0c3RhdHVzKGludCByZXQpOworYm9vbCBza2lwX2R1ZV90b19ob2xkKHN0cnVjdCBwa2dpbmZvICpwa2cpOworCisvKiBmcm9tIGhlbHAuYyAqLworCitzdHJ1Y3Qgc3RhdDsKKworYm9vbCBpZ25vcmVfZGVwZW5kcyhzdHJ1Y3QgcGtnaW5mbyAqcGtnKTsKK2Jvb2wgZm9yY2VfYnJlYWtzKHN0cnVjdCBkZXBwb3NzaSAqcG9zc2kpOworYm9vbCBmb3JjZV9kZXBlbmRzKHN0cnVjdCBkZXBwb3NzaSAqcG9zc2kpOworYm9vbCBmb3JjZV9jb25mbGljdHMoc3RydWN0IGRlcHBvc3NpICpwb3NzaSk7Cit2b2lkIG9sZGNvbmZmc2V0ZmxhZ3MoY29uc3Qgc3RydWN0IGNvbmZmaWxlICpzZWFyY2hjb25mZik7Cit2b2lkIGVuc3VyZV9wYXRobmFtZV9ub25leGlzdGluZyhjb25zdCBjaGFyICpwYXRobmFtZSk7CitpbnQgc2VjdXJlX3VubGluayhjb25zdCBjaGFyICpwYXRobmFtZSk7CitpbnQgc2VjdXJlX3VubGlua19zdGF0dGVkKGNvbnN0IGNoYXIgKnBhdGhuYW1lLCBjb25zdCBzdHJ1Y3Qgc3RhdCAqc3RhYik7Cit2b2lkIGNoZWNrcGF0aCh2b2lkKTsKKworc3RydWN0IGZpbGVuYW1lbm9kZSAqbmFtZW5vZGV0b3VzZShzdHJ1Y3QgZmlsZW5hbWVub2RlKiwgc3RydWN0IHBrZ2luZm8qKTsKKworaW50IG1haW50YWluZXJfc2NyaXB0X2luc3RhbGxlZChzdHJ1Y3QgcGtnaW5mbyAqcGtnLCBjb25zdCBjaGFyICpzY3JpcHRuYW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpkZXNjLCAuLi4pIERQS0dfQVRUUl9TRU5USU5FTDsKK2ludCBtYWludGFpbmVyX3NjcmlwdF9uZXcoc3RydWN0IHBrZ2luZm8gKnBrZywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqc2NyaXB0bmFtZSwgY29uc3QgY2hhciAqZGVzYywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqY2lkaXIsIGNoYXIgKmNpZGlycmVzdCwgLi4uKQorICAgICAgICAgICAgICAgICAgICAgICAgICBEUEtHX0FUVFJfU0VOVElORUw7CitpbnQgbWFpbnRhaW5lcl9zY3JpcHRfYWx0ZXJuYXRpdmUoc3RydWN0IHBrZ2luZm8gKnBrZywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpzY3JpcHRuYW1lLCBjb25zdCBjaGFyICpkZXNjLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmNpZGlyLCBjaGFyICpjaWRpcnJlc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqaWZvaywgY29uc3QgY2hhciAqaWZmYWxsYmFjayk7CisKKy8qIENhbGxlcnMgd2FudGluZyB0byBydW4gdGhlIHBvc3RpbnN0IHVzZSB0aGVzZSB0d28gYXMgdGhleSB3YW50IHRvIHBvc3Rwb25lCisgKiB0cmlnZ2VyIGluY29ycG9yYXRpb24gdW50aWwgYWZ0ZXIgdXBkYXRpbmcgdGhlIHBhY2thZ2Ugc3RhdHVzLiBUaGUgZWZmZWN0CisgKiBpcyB0aGF0IGEgcGFja2FnZSBjYW4gdHJpZ2dlciBpdHNlbGYuICovCitpbnQgbWFpbnRhaW5lcl9zY3JpcHRfcG9zdGluc3Qoc3RydWN0IHBrZ2luZm8gKnBrZywgLi4uKSBEUEtHX0FUVFJfU0VOVElORUw7Cit2b2lkIHBvc3RfcG9zdGluc3RfdGFza3NfY29yZShzdHJ1Y3QgcGtnaW5mbyAqcGtnKTsKKwordm9pZCBwb3N0X3Bvc3RpbnN0X3Rhc2tzKHN0cnVjdCBwa2dpbmZvICpwa2csIGVudW0gcGtnc3RhdHVzIG5ld19zdGF0dXMpOworCit2b2lkIGNsZWFyX2lzdG9iZXModm9pZCk7Citib29sIGRpcl9pc191c2VkX2J5X290aGVycyhzdHJ1Y3QgZmlsZW5hbWVub2RlICpuYW1lbm9kZSwgc3RydWN0IHBrZ2luZm8gKnBrZyk7Citib29sIGRpcl9pc191c2VkX2J5X3BrZyhzdHJ1Y3QgZmlsZW5hbWVub2RlICpuYW1lbm9kZSwgc3RydWN0IHBrZ2luZm8gKnBrZywKKyAgICAgICAgICAgICAgICAgICAgICAgIHN0cnVjdCBmaWxlaW5saXN0ICpsaXN0KTsKK2Jvb2wgZGlyX2hhc19jb25mZmlsZXMoc3RydWN0IGZpbGVuYW1lbm9kZSAqbmFtZW5vZGUsIHN0cnVjdCBwa2dpbmZvICpwa2cpOworCit2b2lkIGxvZ19hY3Rpb24oY29uc3QgY2hhciAqYWN0aW9uLCBzdHJ1Y3QgcGtnaW5mbyAqcGtnKTsKKworLyogZnJvbSB0cmlncHJvYy5jICovCisKK3ZvaWQgdHJpZ3Byb2NfaW5zdGFsbF9ob29rcyh2b2lkKTsKK3ZvaWQgdHJpZ3Byb2NfcnVuX2RlZmVycmVkKHZvaWQpOwordm9pZCB0cmlncHJvY19yZXNldF9jeWNsZSh2b2lkKTsKKwordm9pZCB0cmlncHJvYyhzdHJ1Y3QgcGtnaW5mbyAqcGtnKTsKKwordm9pZCB0cmlnX2FjdGl2YXRlX3BhY2thZ2Vwcm9jZXNzaW5nKHN0cnVjdCBwa2dpbmZvICpwa2cpOworCisvKiBmcm9tIGRlcGNvbi5jICovCisKK2Jvb2wgZGVwaXNvayhzdHJ1Y3QgZGVwZW5kZW5jeSAqZGVwLCBzdHJ1Y3QgdmFyYnVmICp3aHlub3QsCisgICAgICAgICAgICAgc3RydWN0IHBrZ2luZm8gKipmaXhieXJtLCBzdHJ1Y3QgcGtnaW5mbyAqKmZpeGJ5dHJpZ2F3LAorICAgICAgICAgICAgIGJvb2wgYWxsb3d1bmNvbmZpZ2QpOworc3RydWN0IGN5Y2xlc29mYXJsaW5rOworYm9vbCBmaW5kYnJlYWtjeWNsZShzdHJ1Y3QgcGtnaW5mbyAqcGtnKTsKK3ZvaWQgZGVzY3JpYmVkZXBjb24oc3RydWN0IHZhcmJ1ZiAqYWRkdG8sIHN0cnVjdCBkZXBlbmRlbmN5ICpkZXApOworCisjZW5kaWYgLyogTUFJTl9IICovCmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NyYy9wYWNrYWdlcy5jIGIvZHBrZy0xLjE2LjEuMS9zcmMvcGFja2FnZXMuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iMTI5NDc0Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zcmMvcGFja2FnZXMuYwpAQCAtMCwwICsxLDYzMSBAQAorLyoKKyAqIGRwa2cgLSBtYWluIHByb2dyYW0gZm9yIHBhY2thZ2UgbWFuYWdlbWVudAorICogcGFja2FnZXMuYyAtIGNvbW1vbiB0byBhY3Rpb25zIHRoYXQgcHJvY2VzcyBwYWNrYWdlcworICoKKyAqIENvcHlyaWdodCDCqSAxOTk0LDE5OTUgSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuZ3JlZW5lbmQub3JnLnVrPgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaW5jbHVkZSA8Y29uZmlnLmg+CisjaW5jbHVkZSA8Y29tcGF0Lmg+CisKKyNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KKyNpbmNsdWRlIDxzeXMvc3RhdC5oPgorCisjaW5jbHVkZSA8YXNzZXJ0Lmg+CisjaW5jbHVkZSA8Y3R5cGUuaD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDxmY250bC5oPgorI2luY2x1ZGUgPGRpcmVudC5oPgorI2luY2x1ZGUgPHVuaXN0ZC5oPgorI2luY2x1ZGUgPHN0ZGxpYi5oPgorI2luY2x1ZGUgPHN0ZGlvLmg+CisKKyNpbmNsdWRlIDxkcGtnL2kxOG4uaD4KKyNpbmNsdWRlIDxkcGtnL2Rwa2cuaD4KKyNpbmNsdWRlIDxkcGtnL2Rwa2ctZGIuaD4KKyNpbmNsdWRlIDxkcGtnL3BrZy1saXN0Lmg+CisjaW5jbHVkZSA8ZHBrZy9wa2ctcXVldWUuaD4KKyNpbmNsdWRlIDxkcGtnL29wdGlvbnMuaD4KKworI2luY2x1ZGUgImZpbGVzZGIuaCIKKyNpbmNsdWRlICJtYWluLmgiCisKK3N0YXRpYyBzdHJ1Y3QgcGtnaW5mbyAqcHJvZ3Jlc3NfYnl0cmlncHJvYzsKK3N0YXRpYyBzdHJ1Y3QgcGtnX3F1ZXVlIHF1ZXVlID0gUEtHX1FVRVVFX0lOSVQ7CisKK2ludCBzaW5jZW5vdGhpbmcgPSAwLCBkZXBlbmR0cnkgPSAwOworCit2b2lkCithZGRfdG9fcXVldWUoc3RydWN0IHBrZ2luZm8gKnBrZykKK3sKKyAgcGtnX3F1ZXVlX3B1c2goJnF1ZXVlLCBwa2cpOworfQorCitzdGF0aWMgdm9pZAorZW5xdWV1ZV9wZW5kaW5nKHZvaWQpCit7CisgIHN0cnVjdCBwa2dpdGVyYXRvciAqaXQ7CisgIHN0cnVjdCBwa2dpbmZvICpwa2c7CisKKyAgaXQgPSBwa2dfZGJfaXRlcl9uZXcoKTsKKyAgd2hpbGUgKChwa2cgPSBwa2dfZGJfaXRlcl9uZXh0KGl0KSkgIT0gTlVMTCkgeworICAgIHN3aXRjaCAoY2lwYWN0aW9uLT5hcmdfaW50KSB7CisgICAgY2FzZSBhY3RfY29uZmlndXJlOgorICAgICAgaWYgKCEocGtnLT5zdGF0dXMgPT0gc3RhdF91bnBhY2tlZCB8fAorICAgICAgICAgICAgcGtnLT5zdGF0dXMgPT0gc3RhdF9oYWxmY29uZmlndXJlZCB8fAorICAgICAgICAgICAgcGtnLT50cmlncGVuZF9oZWFkKSkKKyAgICAgICAgY29udGludWU7CisgICAgICBpZiAocGtnLT53YW50ICE9IHdhbnRfaW5zdGFsbCkKKyAgICAgICAgY29udGludWU7CisgICAgICBicmVhazsKKyAgICBjYXNlIGFjdF90cmlnZ2VyczoKKyAgICAgIGlmICghcGtnLT50cmlncGVuZF9oZWFkKQorICAgICAgICBjb250aW51ZTsKKyAgICAgIGlmIChwa2ctPndhbnQgIT0gd2FudF9pbnN0YWxsKQorICAgICAgICBjb250aW51ZTsKKyAgICAgIGJyZWFrOworICAgIGNhc2UgYWN0X3JlbW92ZToKKyAgICBjYXNlIGFjdF9wdXJnZToKKyAgICAgIGlmIChwa2ctPndhbnQgIT0gd2FudF9wdXJnZSkgeworICAgICAgICBpZiAocGtnLT53YW50ICE9IHdhbnRfZGVpbnN0YWxsKQorICAgICAgICAgIGNvbnRpbnVlOworICAgICAgICBpZiAocGtnLT5zdGF0dXMgPT0gc3RhdF9jb25maWdmaWxlcykKKyAgICAgICAgICBjb250aW51ZTsKKyAgICAgIH0KKyAgICAgIGlmIChwa2ctPnN0YXR1cyA9PSBzdGF0X25vdGluc3RhbGxlZCkKKyAgICAgICAgY29udGludWU7CisgICAgICBicmVhazsKKyAgICBkZWZhdWx0OgorICAgICAgaW50ZXJuZXJyKCJ1bmtub3duIGFjdGlvbiAnJWQnIiwgY2lwYWN0aW9uLT5hcmdfaW50KTsKKyAgICB9CisgICAgYWRkX3RvX3F1ZXVlKHBrZyk7CisgIH0KKyAgcGtnX2RiX2l0ZXJfZnJlZShpdCk7Cit9CisKK3N0YXRpYyB2b2lkCitlbnF1ZXVlX3NwZWNpZmllZChjb25zdCBjaGFyICpjb25zdCAqYXJndikKK3sKKyAgY29uc3QgY2hhciAqdGhpc2FyZzsKKworICB3aGlsZSAoKHRoaXNhcmcgPSAqYXJndisrKSAhPSBOVUxMKSB7CisgICAgc3RydWN0IHBrZ2luZm8gKnBrZzsKKworICAgIHBrZyA9IHBrZ19kYl9maW5kKHRoaXNhcmcpOworICAgIGlmIChwa2ctPnN0YXR1cyA9PSBzdGF0X25vdGluc3RhbGxlZCkgeworICAgICAgc2l6ZV90IGwgPSBzdHJsZW4ocGtnLT5uYW1lKTsKKyAgICAgIGNvbnN0IGNoYXIgKmV4dGVuc2lvbiA9IHBrZy0+bmFtZSArIGwgLSBzaXplb2YoREVCRVhUKSArIDE7CisKKyAgICAgIGlmIChsID49IHNpemVvZihERUJFWFQpICYmIHN0cmNtcChleHRlbnNpb24sIERFQkVYVCkgPT0gMCkKKyAgICAgICAgYmFkdXNhZ2UoXygieW91IG11c3Qgc3BlY2lmeSBwYWNrYWdlcyBieSB0aGVpciBvd24gbmFtZXMsIgorICAgICAgICAgICAgICAgICAgICIgbm90IGJ5IHF1b3RpbmcgdGhlIG5hbWVzIG9mIHRoZSBmaWxlcyB0aGV5IGNvbWUgaW4iKSk7CisgICAgfQorICAgIGFkZF90b19xdWV1ZShwa2cpOworICB9Cit9CisKK2ludAorcGFja2FnZXMoY29uc3QgY2hhciAqY29uc3QgKmFyZ3YpCit7CisgIHRyaWdwcm9jX2luc3RhbGxfaG9va3MoKTsKKworICBtb2RzdGF0ZGJfb3BlbihmX25vYWN0ID8gICAgbXNkYnJ3X3JlYWRvbmx5IDoKKyAgICAgICAgICAgICAgICAgZmNfbm9ucm9vdCA/IG1zZGJyd193cml0ZSA6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtc2RicndfbmVlZHN1cGVydXNlcik7CisgIGNoZWNrcGF0aCgpOworICBsb2dfbWVzc2FnZSgic3RhcnR1cCBwYWNrYWdlcyAlcyIsIGNpcGFjdGlvbi0+b2xvbmcpOworCisgIGlmIChmX3BlbmRpbmcpIHsKKyAgICBpZiAoKmFyZ3YpCisgICAgICBiYWR1c2FnZShfKCItLSVzIC0tcGVuZGluZyBkb2VzIG5vdCB0YWtlIGFueSBub24tb3B0aW9uIGFyZ3VtZW50cyIpLGNpcGFjdGlvbi0+b2xvbmcpOworCisgICAgZW5xdWV1ZV9wZW5kaW5nKCk7CisgIH0gZWxzZSB7CisgICAgaWYgKCEqYXJndikKKyAgICAgIGJhZHVzYWdlKF8oIi0tJXMgbmVlZHMgYXQgbGVhc3Qgb25lIHBhY2thZ2UgbmFtZSBhcmd1bWVudCIpLCBjaXBhY3Rpb24tPm9sb25nKTsKKworICAgIGVucXVldWVfc3BlY2lmaWVkKGFyZ3YpOworICB9CisKKyAgZW5zdXJlX2RpdmVyc2lvbnMoKTsKKworICBwcm9jZXNzX3F1ZXVlKCk7CisgIHRyaWdwcm9jX3J1bl9kZWZlcnJlZCgpOworCisgIG1vZHN0YXRkYl9zaHV0ZG93bigpOworCisgIHJldHVybiAwOworfQorCit2b2lkIHByb2Nlc3NfcXVldWUodm9pZCkgeworICBzdHJ1Y3QgcGtnX2xpc3QgKnJ1bmRvd247CisgIHN0cnVjdCBwa2dpbmZvICp2b2xhdGlsZSBwa2c7CisgIHZvbGF0aWxlIGVudW0gYWN0aW9uIGFjdGlvbl90b2RvOworICBqbXBfYnVmIGVqYnVmOworICBlbnVtIGlzdG9iZXMgaXN0b2JlPSBpdGJfbm9ybWFsOworCisgIGlmIChhYm9ydF9wcm9jZXNzaW5nKQorICAgIHJldHVybjsKKworICBjbGVhcl9pc3RvYmVzKCk7CisKKyAgc3dpdGNoIChjaXBhY3Rpb24tPmFyZ19pbnQpIHsKKyAgY2FzZSBhY3RfdHJpZ2dlcnM6CisgIGNhc2UgYWN0X2NvbmZpZ3VyZTogY2FzZSBhY3RfaW5zdGFsbDogIGlzdG9iZT0gaXRiX2luc3RhbGxuZXc7ICBicmVhazsKKyAgY2FzZSBhY3RfcmVtb3ZlOiBjYXNlIGFjdF9wdXJnZTogICAgICAgaXN0b2JlPSBpdGJfcmVtb3ZlOyAgICAgIGJyZWFrOworICBkZWZhdWx0OgorICAgIGludGVybmVycigidW5rbm93biBhY3Rpb24gJyVkJyIsIGNpcGFjdGlvbi0+YXJnX2ludCk7CisgIH0KKyAgZm9yIChydW5kb3duID0gcXVldWUuaGVhZDsgcnVuZG93bjsgcnVuZG93biA9IHJ1bmRvd24tPm5leHQpIHsKKyAgICBlbnN1cmVfcGFja2FnZV9jbGllbnRkYXRhKHJ1bmRvd24tPnBrZyk7CisgICAgaWYgKHJ1bmRvd24tPnBrZy0+Y2xpZW50ZGF0YS0+aXN0b2JlID09IGlzdG9iZSkgeworICAgICAgLyogRXJhc2UgdGhlIHF1ZXVlIGVudHJ5IC0gdGhpcyBpcyBhIHNlY29uZCBjb3B5ISAqLworICAgICAgc3dpdGNoIChjaXBhY3Rpb24tPmFyZ19pbnQpIHsKKyAgICAgIGNhc2UgYWN0X3RyaWdnZXJzOgorICAgICAgY2FzZSBhY3RfY29uZmlndXJlOiBjYXNlIGFjdF9yZW1vdmU6IGNhc2UgYWN0X3B1cmdlOgorICAgICAgICBwcmludGYoXygiUGFja2FnZSAlcyBsaXN0ZWQgbW9yZSB0aGFuIG9uY2UsIG9ubHkgcHJvY2Vzc2luZyBvbmNlLlxuIiksCisgICAgICAgICAgICAgICBydW5kb3duLT5wa2ctPm5hbWUpOworICAgICAgICBicmVhazsKKyAgICAgIGNhc2UgYWN0X2luc3RhbGw6CisgICAgICAgIHByaW50ZihfKCJNb3JlIHRoYW4gb25lIGNvcHkgb2YgcGFja2FnZSAlcyBoYXMgYmVlbiB1bnBhY2tlZFxuIgorICAgICAgICAgICAgICAgIiBpbiB0aGlzIHJ1biAhICBPbmx5IGNvbmZpZ3VyaW5nIGl0IG9uY2UuXG4iKSwKKyAgICAgICAgICAgICAgIHJ1bmRvd24tPnBrZy0+bmFtZSk7CisgICAgICAgIGJyZWFrOworICAgICAgZGVmYXVsdDoKKyAgICAgICAgaW50ZXJuZXJyKCJ1bmtub3duIGFjdGlvbiAnJWQnIiwgY2lwYWN0aW9uLT5hcmdfaW50KTsKKyAgICAgIH0KKyAgICAgIHJ1bmRvd24tPnBrZyA9IE5VTEw7CisgICB9IGVsc2UgeworICAgICAgcnVuZG93bi0+cGtnLT5jbGllbnRkYXRhLT5pc3RvYmU9IGlzdG9iZTsKKyAgICB9CisgIH0KKworICB3aGlsZSAoIXBrZ19xdWV1ZV9pc19lbXB0eSgmcXVldWUpKSB7CisgICAgcGtnID0gcGtnX3F1ZXVlX3BvcCgmcXVldWUpOworICAgIGlmICghcGtnKQorICAgICAgY29udGludWU7IC8qIER1cGxpY2F0ZSwgd2hpY2ggd2UgcmVtb3ZlZCBlYXJsaWVyLiAqLworCisgICAgYWN0aW9uX3RvZG8gPSBjaXBhY3Rpb24tPmFyZ19pbnQ7CisKKyAgICBpZiAoc2luY2Vub3RoaW5nKysgPiBxdWV1ZS5sZW5ndGggKiAyICsgMikgeworICAgICAgaWYgKHByb2dyZXNzX2J5dHJpZ3Byb2MgJiYgcHJvZ3Jlc3NfYnl0cmlncHJvYy0+dHJpZ3BlbmRfaGVhZCkgeworICAgICAgICBhZGRfdG9fcXVldWUocGtnKTsKKyAgICAgICAgcGtnID0gcHJvZ3Jlc3NfYnl0cmlncHJvYzsKKyAgICAgICAgYWN0aW9uX3RvZG8gPSBhY3RfY29uZmlndXJlOworICAgICAgfSBlbHNlIHsKKyAgICAgICAgZGVwZW5kdHJ5Kys7CisgICAgICAgIHNpbmNlbm90aGluZyA9IDA7CisgICAgICAgIGFzc2VydChkZXBlbmR0cnkgPD0gNCk7CisgICAgICB9CisgICAgfQorCisgICAgYXNzZXJ0KHBrZy0+c3RhdHVzIDw9IHN0YXRfaW5zdGFsbGVkKTsKKworICAgIGlmIChzZXRqbXAoZWpidWYpKSB7CisgICAgICAvKiBHaXZlIHVwIG9uIGl0IGZyb20gdGhlIHBvaW50IG9mIHZpZXcgb2Ygb3RoZXIgcGFja2FnZXMsIGkuZS4gcmVzZXQKKyAgICAgICAqIGlzdG9iZS4gKi8KKyAgICAgIHBrZy0+Y2xpZW50ZGF0YS0+aXN0b2JlPSBpdGJfbm9ybWFsOworCisgICAgICBwb3BfZXJyb3JfY29udGV4dChlaGZsYWdfYm9tYm91dCk7CisgICAgICBpZiAoYWJvcnRfcHJvY2Vzc2luZykKKyAgICAgICAgcmV0dXJuOworICAgICAgY29udGludWU7CisgICAgfQorICAgIHB1c2hfZXJyb3JfY29udGV4dF9qdW1wKCZlamJ1ZiwgcHJpbnRfZXJyb3JfcGVycGFja2FnZSwgcGtnLT5uYW1lKTsKKworICAgIHN3aXRjaCAoYWN0aW9uX3RvZG8pIHsKKyAgICBjYXNlIGFjdF90cmlnZ2VyczoKKyAgICAgIGlmICghcGtnLT50cmlncGVuZF9oZWFkKQorICAgICAgICBvaHNoaXQoXygicGFja2FnZSAlLjI1MHMgaXMgbm90IHJlYWR5IGZvciB0cmlnZ2VyIHByb2Nlc3NpbmdcbiIKKyAgICAgICAgICAgICAgICAgIiAoY3VycmVudCBzdGF0dXMgYCUuMjUwcycgd2l0aCBubyBwZW5kaW5nIHRyaWdnZXJzKSIpLAorICAgICAgICAgICAgICAgcGtnLT5uYW1lLCBzdGF0dXNpbmZvc1twa2ctPnN0YXR1c10ubmFtZSk7CisgICAgICAvKiBGYWxsIHRocm91Z2guICovCisgICAgY2FzZSBhY3RfaW5zdGFsbDoKKyAgICAgIC8qIERvbid0IHRyeSB0byBjb25maWd1cmUgcGtncyB0aGF0IHdlJ3ZlIGp1c3QgZGlzYXBwZWFyZWQuICovCisgICAgICBpZiAocGtnLT5zdGF0dXMgPT0gc3RhdF9ub3RpbnN0YWxsZWQpCisgICAgICAgIGJyZWFrOworICAgICAgLyogRmFsbCB0aHJvdWdoLiAqLworICAgIGNhc2UgYWN0X2NvbmZpZ3VyZToKKyAgICAgIC8qIERvIHdoYXRldmVyIGlzIG1vc3QgbmVlZGVkLiAqLworICAgICAgaWYgKHBrZy0+dHJpZ3BlbmRfaGVhZCkKKyAgICAgICAgdHJpZ3Byb2MocGtnKTsKKyAgICAgIGVsc2UKKyAgICAgICAgZGVmZXJyZWRfY29uZmlndXJlKHBrZyk7CisgICAgICBicmVhazsKKyAgICBjYXNlIGFjdF9yZW1vdmU6IGNhc2UgYWN0X3B1cmdlOgorICAgICAgZGVmZXJyZWRfcmVtb3ZlKHBrZyk7CisgICAgICBicmVhazsKKyAgICBkZWZhdWx0OgorICAgICAgaW50ZXJuZXJyKCJ1bmtub3duIGFjdGlvbiAnJWQnIiwgY2lwYWN0aW9uLT5hcmdfaW50KTsKKyAgICB9CisgICAgbV9vdXRwdXQoc3Rkb3V0LCBfKCI8c3RhbmRhcmQgb3V0cHV0PiIpKTsKKyAgICBtX291dHB1dChzdGRlcnIsIF8oIjxzdGFuZGFyZCBlcnJvcj4iKSk7CisKKyAgICBwb3BfZXJyb3JfY29udGV4dChlaGZsYWdfbm9ybWFsdGlkeSk7CisgIH0KKyAgYXNzZXJ0KCFxdWV1ZS5sZW5ndGgpOworfQorCisvKioqIERlcGVuZGVuY3kgcHJvY2Vzc2luZyAtIGNvbW1vbiB0byAtLWNvbmZpZ3VyZSBhbmQgLS1yZW1vdmUuICoqKi8KKworLyoKKyAqIFRoZSBhbGdvcml0aG0gZm9yIGRlY2lkaW5nIHdoYXQgdG8gY29uZmlndXJlIG9yIHJlbW92ZSBmaXJzdCBpcyBhcworICogZm9sbG93czoKKyAqCisgKiBMb29wIHRocm91Z2ggYWxsIHBhY2thZ2VzIGRvaW5nIGEg4oCYdHJ5IDHigJkgdW50aWwgd2UndmUgYmVlbiByb3VuZCBhbmQKKyAqIG5vdGhpbmcgaGFzIGJlZW4gZG9uZSwgdGhlbiBkbyDigJh0cnkgMuKAmSBhbmQg4oCYdHJ5IDPigJkgbGlrZXdpc2UuCisgKgorICogV2hlbiBjb25maWd1cmluZywgaW4gZWFjaCB0cnkgd2UgY2hlY2sgdG8gc2VlIHdoZXRoZXIgYWxsCisgKiBkZXBlbmRlbmNpZXMgb2YgdGhpcyBwYWNrYWdlIGFyZSBkb25lLiBJZiBzbyB3ZSBkbyBpdC4gSWYgc29tZSBvZgorICogdGhlIGRlcGVuZGVuY2llcyBhcmVuJ3QgZG9uZSB5ZXQgYnV0IHdpbGwgYmUgbGF0ZXIgd2UgZGVmZXIgdGhlCisgKiBwYWNrYWdlLCBvdGhlcndpc2UgaXQgaXMgYW4gZXJyb3IuCisgKgorICogV2hlbiByZW1vdmluZywgaW4gZWFjaCB0cnkgd2UgY2hlY2sgdG8gc2VlIHdoZXRoZXIgdGhlcmUgYXJlIGFueQorICogcGFja2FnZXMgdGhhdCB3b3VsZCBoYXZlIGRlcGVuZGVuY2llcyBtaXNzaW5nIGlmIHdlIHJlbW92ZWQgdGhpcworICogb25lLiBJZiBub3Qgd2UgcmVtb3ZlIGl0IG5vdy4gSWYgc29tZSBvZiB0aGVzZSBwYWNrYWdlcyBhcmUKKyAqIHRoZW1zZWx2ZXMgc2NoZWR1bGVkIGZvciByZW1vdmFsIHdlIGRlZmVyIHRoZSBwYWNrYWdlIHVudGlsIHRoZXkKKyAqIGhhdmUgYmVlbiBkb25lLgorICoKKyAqIFRoZSBjcml0ZXJpYSBmb3Igc2F0aXNmeWluZyBhIGRlcGVuZGVuY3kgdmFyeSB3aXRoIHRoZSB2YXJpb3VzCisgKiB0cmllcy4gSW4gdHJ5IDEgd2UgdHJlYXQgdGhlIGRlcGVuZGVuY2llcyBhcyBhYnNvbHV0ZS4gSW4gdHJ5IDIgd2UKKyAqIGNoZWNrIGJyZWFrIGFueSBjeWNsZXMgaW4gdGhlIGRlcGVuZGVuY3kgZ3JhcGggaW52b2x2aW5nIHRoZSBwYWNrYWdlCisgKiB3ZSBhcmUgdHJ5aW5nIHRvIHByb2Nlc3MgYmVmb3JlIHRyeWluZyB0byBwcm9jZXNzIHRoZSBwYWNrYWdlCisgKiBub3JtYWxseS4gSW4gdHJ5IDMgKHdoaWNoIHNob3VsZCBvbmx5IGJlIHJlYWNoZWQgaWYKKyAqIC0tZm9yY2UtZGVwZW5kcy12ZXJzaW9uIGlzIHNldCkgd2UgaWdub3JlIHZlcnNpb24gbnVtYmVyIGNsYXVzZXMgaW4KKyAqIERlcGVuZHMgbGluZXMuIEluIHRyeSA0IChvbmx5IHJlYWNoZWQgaWYgLS1mb3JjZS1kZXBlbmRzIGlzIHNldCkgd2UKKyAqIHNheSAib2siIHJlZ2FyZGxlc3MuCisgKgorICogSWYgd2UgYXJlIGNvbmZpZ3VyaW5nIGFuZCBvbmUgb2YgdGhlIHBhY2thZ2VzIHdlIGRlcGVuZCBvbiBpcworICogYXdhaXRpbmcgY29uZmlndXJhdGlvbiBidXQgd2Fzbid0IHNwZWNpZmllZCBpbiB0aGUgYXJndW1lbnQgbGlzdCB3ZQorICogd2lsbCBhZGQgaXQgdG8gdGhlIGFyZ3VtZW50IGxpc3QgaWYgLS1jb25maWd1cmUtYW55IGlzIHNwZWNpZmllZC4KKyAqIEluIHRoaXMgY2FzZSB3ZSBub3RlIHRoaXMgYXMgaGF2aW5nICJkb25lIHNvbWV0aGluZyIgc28gdGhhdCB3ZQorICogZG9uJ3QgbmVlZGxlc3NseSBlc2NhbGF0ZSB0byBoaWdoZXIgbGV2ZWxzIG9mIGRlcGVuZGVuY3kgY2hlY2tpbmcKKyAqIGFuZCBicmVha2luZy4KKyAqLworCitlbnVtIGZvdW5kX3N0YXR1cyB7CisgIGZvdW5kX25vbmUgPSAwLAorICBmb3VuZF9kZWZlciA9IDEsCisgIGZvdW5kX2ZvcmNlZCA9IDIsCisgIGZvdW5kX29rID0gMywKK307CisKKy8qCisgKiBSZXR1cm4gdmFsdWVzOgorICogICAwOiBjYW5ub3QgYmUgc2F0aXNmaWVkLgorICogICAxOiBkZWZlcjogbWF5IGJlIHNhdGlzZmllZCBsYXRlciwgd2hlbiBvdGhlciBwYWNrYWdlcyBhcmUgYmV0dGVyIG9yCisgKiAgICAgIGF0IGhpZ2hlciBkZXBlbmR0cnkgZHVlIHRvIC0tZm9yY2UKKyAqICAgICAgd2lsbCBzZXQgKmZpeGJ5dHJpZyB0byBwYWNrYWdlIHdob3NlIHRyaWdnZXIgcHJvY2Vzc2luZyB3b3VsZCBoZWxwCisgKiAgICAgIGlmIGFwcGxpY2FibGUgKGFuZCBsZWF2ZSBpdCBhbG9uZSBvdGhlcndpc2UpLgorICogICAyOiBub3Qgc2F0aXNmaWVkIGJ1dCBmb3JjaW5nCisgKiAgICAgICgqaW50ZXJlc3Rpbmd3YXJuaW5ncyA+PSAwIG9uIGV4aXQ/IGNhbGxlciBpcyB0byBwcmludCBvZW1zZ3MpLgorICogICAzOiBzYXRpc2ZpZWQgbm93LgorICovCitzdGF0aWMgZW51bSBmb3VuZF9zdGF0dXMKK2RlcHBvc3NpX29rX2ZvdW5kKHN0cnVjdCBwa2dpbmZvICpwb3NzZGVwZW5kZWUsIHN0cnVjdCBwa2dpbmZvICpyZXF1aXJlZGJ5LAorICAgICAgICAgICAgICAgICAgc3RydWN0IHBrZ2luZm8gKnJlbW92aW5nLCBzdHJ1Y3QgcGtnaW5mbyAqcHJvdmlkaW5nLAorICAgICAgICAgICAgICAgICAgc3RydWN0IHBrZ2luZm8gKipmaXhieXRyaWcsCisgICAgICAgICAgICAgICAgICBib29sICptYXRjaGVkLCBzdHJ1Y3QgZGVwcG9zc2kgKmNoZWNrdmVyc2lvbiwKKyAgICAgICAgICAgICAgICAgIGludCAqaW50ZXJlc3Rpbmd3YXJuaW5ncywgc3RydWN0IHZhcmJ1ZiAqb2Vtc2dzKQoreworICBlbnVtIGZvdW5kX3N0YXR1cyB0aGlzZjsKKworICBpZiAoaWdub3JlX2RlcGVuZHMocG9zc2RlcGVuZGVlKSkgeworICAgIGRlYnVnKGRiZ19kZXBjb25kZXRhaWwsIiAgICAgIGlnbm9yaW5nIGRlcGVuZGVkIHBhY2thZ2Ugc28gb2sgYW5kIGZvdW5kIik7CisgICAgcmV0dXJuIGZvdW5kX29rOworICB9CisgIHRoaXNmID0gZm91bmRfbm9uZTsKKyAgaWYgKHBvc3NkZXBlbmRlZSA9PSByZW1vdmluZykgeworICAgIGlmIChwcm92aWRpbmcpIHsKKyAgICAgIHZhcmJ1Zl9wcmludGYob2Vtc2dzLAorICAgICAgICAgICAgICAgICAgICBfKCIgIFBhY2thZ2UgJXMgd2hpY2ggcHJvdmlkZXMgJXMgaXMgdG8gYmUgcmVtb3ZlZC5cbiIpLAorICAgICAgICAgICAgICAgICAgICBwb3NzZGVwZW5kZWUtPm5hbWUsIHByb3ZpZGluZy0+bmFtZSk7CisgICAgfSBlbHNlIHsKKyAgICAgIHZhcmJ1Zl9wcmludGYob2Vtc2dzLCBfKCIgIFBhY2thZ2UgJXMgaXMgdG8gYmUgcmVtb3ZlZC5cbiIpLAorICAgICAgICAgICAgICAgICAgICBwb3NzZGVwZW5kZWUtPm5hbWUpOworICAgIH0KKworICAgICptYXRjaGVkID0gdHJ1ZTsKKyAgICBpZiAoZmNfZGVwZW5kcykKKyAgICAgIHRoaXNmID0gKGRlcGVuZHRyeSA+PSA0KSA/IGZvdW5kX2ZvcmNlZCA6IGZvdW5kX2RlZmVyOworICAgIGRlYnVnKGRiZ19kZXBjb25kZXRhaWwsIiAgICAgIHJlbW92aW5nIHBvc3NkZXBlbmRlZSwgcmV0dXJuaW5nICVkIix0aGlzZik7CisgICAgcmV0dXJuIHRoaXNmOworICB9CisgIHN3aXRjaCAocG9zc2RlcGVuZGVlLT5zdGF0dXMpIHsKKyAgY2FzZSBzdGF0X3VucGFja2VkOgorICBjYXNlIHN0YXRfaGFsZmNvbmZpZ3VyZWQ6CisgIGNhc2Ugc3RhdF90cmlnZ2Vyc2F3YWl0ZWQ6CisgIGNhc2Ugc3RhdF90cmlnZ2Vyc3BlbmRpbmc6CisgIGNhc2Ugc3RhdF9pbnN0YWxsZWQ6CisgICAgaWYgKGNoZWNrdmVyc2lvbiAmJiAhdmVyc2lvbnNhdGlzZmllZCgmcG9zc2RlcGVuZGVlLT5pbnN0YWxsZWQsY2hlY2t2ZXJzaW9uKSkgeworICAgICAgdmFyYnVmX3ByaW50ZihvZW1zZ3MsIF8oIiAgVmVyc2lvbiBvZiAlcyBvbiBzeXN0ZW0gaXMgJXMuXG4iKSwKKyAgICAgICAgICAgICAgICAgICAgcG9zc2RlcGVuZGVlLT5uYW1lLAorICAgICAgICAgICAgICAgICAgICB2ZXJzaW9uZGVzY3JpYmUoJnBvc3NkZXBlbmRlZS0+aW5zdGFsbGVkLnZlcnNpb24sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2ZGV3X25vbmFtYmlnKSk7CisgICAgICBhc3NlcnQoY2hlY2t2ZXJzaW9uLT52ZXJyZWwgIT0gZHZyX25vbmUpOworICAgICAgaWYgKGZjX2RlcGVuZHMgfHwgZmNfZGVwZW5kc3ZlcnNpb24pCisgICAgICAgIHRoaXNmID0gKGRlcGVuZHRyeSA+PSAzKSA/IGZvdW5kX2ZvcmNlZCA6IGZvdW5kX2RlZmVyOworICAgICAgZGVidWcoZGJnX2RlcGNvbmRldGFpbCwiICAgICAgYmFkIHZlcnNpb24sIHJldHVybmluZyAlZCIsdGhpc2YpOworICAgICAgKCppbnRlcmVzdGluZ3dhcm5pbmdzKSsrOworICAgICAgcmV0dXJuIHRoaXNmOworICAgIH0KKyAgICBpZiAocG9zc2RlcGVuZGVlLT5zdGF0dXMgPT0gc3RhdF9pbnN0YWxsZWQgfHwKKyAgICAgICAgcG9zc2RlcGVuZGVlLT5zdGF0dXMgPT0gc3RhdF90cmlnZ2Vyc3BlbmRpbmcpIHsKKyAgICAgIGRlYnVnKGRiZ19kZXBjb25kZXRhaWwsIiAgICAgIGlzIGluc3RhbGxlZCwgb2sgYW5kIGZvdW5kIik7CisgICAgICByZXR1cm4gZm91bmRfb2s7CisgICAgfQorICAgIGlmIChwb3NzZGVwZW5kZWUtPnN0YXR1cyA9PSBzdGF0X3RyaWdnZXJzYXdhaXRlZCkgeworICAgICAgYXNzZXJ0KHBvc3NkZXBlbmRlZS0+dHJpZ2F3LmhlYWQpOworICAgICAgaWYgKHJlbW92aW5nIHx8ICEoZl90cmlnZ2VycyB8fAorICAgICAgICAgICAgICAgICAgICAgICAgcG9zc2RlcGVuZGVlLT5jbGllbnRkYXRhLT5pc3RvYmUgPT0gaXRiX2luc3RhbGxuZXcpKSB7CisgICAgICAgIGlmIChwcm92aWRpbmcpIHsKKyAgICAgICAgICB2YXJidWZfcHJpbnRmKG9lbXNncywKKyAgICAgICAgICAgICAgICAgICAgICAgIF8oIiAgUGFja2FnZSAlcyB3aGljaCBwcm92aWRlcyAlcyBhd2FpdHMgdHJpZ2dlciBwcm9jZXNzaW5nLlxuIiksCisgICAgICAgICAgICAgICAgICAgICAgICBwb3NzZGVwZW5kZWUtPm5hbWUsIHByb3ZpZGluZy0+bmFtZSk7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgdmFyYnVmX3ByaW50ZihvZW1zZ3MsCisgICAgICAgICAgICAgICAgICAgICAgICBfKCIgIFBhY2thZ2UgJXMgYXdhaXRzIHRyaWdnZXIgcHJvY2Vzc2luZy5cbiIpLAorICAgICAgICAgICAgICAgICAgICAgICAgcG9zc2RlcGVuZGVlLT5uYW1lKTsKKyAgICAgICAgfQorICAgICAgICBkZWJ1ZyhkYmdfZGVwY29uZGV0YWlsLCAiICAgICAgdHJpZ2dlcnMtYXdhaXRlZCwgbm8gZml4Ynl0cmlnIik7CisgICAgICAgIGdvdG8gdW5zdWl0YWJsZTsKKyAgICAgIH0KKyAgICAgIC8qIFdlIGRvbid0IGNoZWNrIHRoZSBzdGF0dXMgb2YgdHJpZ2F3LmhlYWQtPnBlbmQgaGVyZSwganVzdCBpbiBjYXNlCisgICAgICAgKiB3ZSBnZXQgaW50byB0aGUgcGF0aG9sb2dpY2FsIHNpdHVhdGlvbiB3aGVyZSBUcmlnZ2Vycy1Bd2FpdGVkIGJ1dAorICAgICAgICogdGhlIG5hbWVkIHBhY2thZ2UgZG9lc24ndCBhY3R1YWxseSBoYXZlIGFueSBwZW5kaW5nIHRyaWdnZXJzLiBJbgorICAgICAgICogdGhhdCBjYXNlIHdlIHF1ZXVlIHRoZSBub24tcGVuZGluZyBwYWNrYWdlIGZvciB0cmlnZ2VyIHByb2Nlc3NpbmcKKyAgICAgICAqIGFueXdheSwgYW5kIHRoYXQgdHJpZ2dlciBwcm9jZXNzaW5nIHdpbGwgYmUgYSBub29wIGV4Y2VwdCBmb3IKKyAgICAgICAqIHNvcnRpbmcgb3V0IGFsbCBvZiB0aGUgcGFja2FnZXMgd2hpY2ggbmFtZSBpdCBpbiBUcmlnZ2Vycy1Bd2FpdGVkLgorICAgICAgICoKKyAgICAgICAqIChUaGlzIHNpdHVhdGlvbiBjYW4gb25seSBhcmlzZSBpZiBtb2RzdGF0ZGJfbm90ZSBzdWNjZXNzIGluCisgICAgICAgKiBjbGVhcmluZyB0aGUgdHJpZ2dlcnMtcGVuZGluZyBzdGF0dXMgb2YgdGhlIHBlbmRpbmcgcGFja2FnZQorICAgICAgICogYnV0IHRoZW4gZmFpbHMgdG8gZ28gb24gdG8gdXBkYXRlIHRoZSBhd2FpdGVycy4pICovCisgICAgICAqZml4Ynl0cmlnID0gcG9zc2RlcGVuZGVlLT50cmlnYXcuaGVhZC0+cGVuZDsKKyAgICAgIGRlYnVnKGRiZ19kZXBjb25kZXRhaWwsCisgICAgICAgICAgICAiICAgICAgdHJpZ2dlcnMtYXdhaXRlZCwgZml4Ynl0cmlnICclcycsIGRlZmVyIiwKKyAgICAgICAgICAgICgqZml4Ynl0cmlnKS0+bmFtZSk7CisgICAgICByZXR1cm4gZm91bmRfZGVmZXI7CisgICAgfQorICAgIGlmIChwb3NzZGVwZW5kZWUtPmNsaWVudGRhdGEgJiYKKyAgICAgICAgcG9zc2RlcGVuZGVlLT5jbGllbnRkYXRhLT5pc3RvYmUgPT0gaXRiX2luc3RhbGxuZXcpIHsKKyAgICAgIGRlYnVnKGRiZ19kZXBjb25kZXRhaWwsIiAgICAgIHVucGFja2VkL2hhbGZjb25maWd1cmVkLCBkZWZlciIpOworICAgICAgcmV0dXJuIGZvdW5kX2RlZmVyOworICAgIH0gZWxzZSBpZiAoIXJlbW92aW5nICYmIGZjX2NvbmZpZ3VyZWFueSAmJgorICAgICAgICAgICAgICAgIXNraXBfZHVlX3RvX2hvbGQocG9zc2RlcGVuZGVlKSAmJgorICAgICAgICAgICAgICAgIShwb3NzZGVwZW5kZWUtPnN0YXR1cyA9PSBzdGF0X2hhbGZjb25maWd1cmVkKSkgeworICAgICAgZnByaW50ZihzdGRlcnIsCisgICAgICAgICAgICAgIF8oImRwa2c6IGFsc28gY29uZmlndXJpbmcgYCVzJyAocmVxdWlyZWQgYnkgYCVzJylcbiIpLAorICAgICAgICAgICAgICBwb3NzZGVwZW5kZWUtPm5hbWUsIHJlcXVpcmVkYnktPm5hbWUpOworICAgICAgYWRkX3RvX3F1ZXVlKHBvc3NkZXBlbmRlZSk7CisgICAgICBzaW5jZW5vdGhpbmcgPSAwOworICAgICAgcmV0dXJuIGZvdW5kX2RlZmVyOworICAgIH0gZWxzZSB7CisgICAgICBpZiAocHJvdmlkaW5nKSB7CisgICAgICAgIHZhcmJ1Zl9wcmludGYob2Vtc2dzLAorICAgICAgICAgICAgICAgICAgICAgIF8oIiAgUGFja2FnZSAlcyB3aGljaCBwcm92aWRlcyAlcyBpcyBub3QgY29uZmlndXJlZCB5ZXQuXG4iKSwKKyAgICAgICAgICAgICAgICAgICAgICBwb3NzZGVwZW5kZWUtPm5hbWUsIHByb3ZpZGluZy0+bmFtZSk7CisgICAgICB9IGVsc2UgeworICAgICAgICB2YXJidWZfcHJpbnRmKG9lbXNncywgXygiICBQYWNrYWdlICVzIGlzIG5vdCBjb25maWd1cmVkIHlldC5cbiIpLAorICAgICAgICAgICAgICAgICAgICAgIHBvc3NkZXBlbmRlZS0+bmFtZSk7CisgICAgICB9CisKKyAgICAgIGRlYnVnKGRiZ19kZXBjb25kZXRhaWwsICIgICAgICBub3QgY29uZmlndXJlZC9hYmxlIik7CisgICAgICBnb3RvIHVuc3VpdGFibGU7CisgICAgfQorCisgIGRlZmF1bHQ6CisgICAgaWYgKHByb3ZpZGluZykgeworICAgICAgdmFyYnVmX3ByaW50ZihvZW1zZ3MsCisgICAgICAgICAgICAgICAgICAgIF8oIiAgUGFja2FnZSAlcyB3aGljaCBwcm92aWRlcyAlcyBpcyBub3QgaW5zdGFsbGVkLlxuIiksCisgICAgICAgICAgICAgICAgICAgIHBvc3NkZXBlbmRlZS0+bmFtZSwgcHJvdmlkaW5nLT5uYW1lKTsKKyAgICB9IGVsc2UgeworICAgICAgdmFyYnVmX3ByaW50ZihvZW1zZ3MsIF8oIiAgUGFja2FnZSAlcyBpcyBub3QgaW5zdGFsbGVkLlxuIiksCisgICAgICAgICAgICAgICAgICAgIHBvc3NkZXBlbmRlZS0+bmFtZSk7CisgICAgfQorCisgICAgZGVidWcoZGJnX2RlcGNvbmRldGFpbCwgIiAgICAgIG5vdCBpbnN0YWxsZWQiKTsKKyAgICBnb3RvIHVuc3VpdGFibGU7CisgIH0KKwordW5zdWl0YWJsZToKKyAgaWYgKGZjX2RlcGVuZHMpCisgICAgdGhpc2YgPSAoZGVwZW5kdHJ5ID49IDQpID8gZm91bmRfZm9yY2VkIDogZm91bmRfZGVmZXI7CisKKyAgZGVidWcoZGJnX2RlcGNvbmRldGFpbCwgIiAgICAgICAgcmV0dXJuaW5nICVkIiwgdGhpc2YpOworICAoKmludGVyZXN0aW5nd2FybmluZ3MpKys7CisKKyAgcmV0dXJuIHRoaXNmOworfQorCitzdGF0aWMgdm9pZAorYnJlYWtzX2NoZWNrX29uZShzdHJ1Y3QgdmFyYnVmICphZW1zZ3MsIGVudW0gZGVwX2NoZWNrICpvaywKKyAgICAgICAgICAgICAgICAgc3RydWN0IGRlcHBvc3NpICpicmVha3MsIHN0cnVjdCBwa2dpbmZvICpicm9rZW4sCisgICAgICAgICAgICAgICAgIHN0cnVjdCBwa2dpbmZvICpicmVha2VyLCBzdHJ1Y3QgcGtnaW5mbyAqdmlydGJyb2tlbikKK3sKKyAgc3RydWN0IHZhcmJ1ZiBkZXBtc2cgPSBWQVJCVUZfSU5JVDsKKworICBkZWJ1ZyhkYmdfZGVwY29uZGV0YWlsLCAiICAgICAgY2hlY2tpbmcgYnJlYWtlciAlcyB2aXJ0YnJva2VuICVzIiwKKyAgICAgICAgYnJlYWtlci0+bmFtZSwgdmlydGJyb2tlbiA/IHZpcnRicm9rZW4tPm5hbWUgOiAiPG5vbmU+Iik7CisKKyAgaWYgKGJyZWFrZXItPnN0YXR1cyA9PSBzdGF0X25vdGluc3RhbGxlZCB8fAorICAgICAgYnJlYWtlci0+c3RhdHVzID09IHN0YXRfY29uZmlnZmlsZXMpIHJldHVybjsKKyAgaWYgKGJyb2tlbiA9PSBicmVha2VyKSByZXR1cm47CisgIGlmICghdmVyc2lvbnNhdGlzZmllZCgmYnJva2VuLT5pbnN0YWxsZWQsIGJyZWFrcykpIHJldHVybjsKKyAgaWYgKGlnbm9yZV9kZXBlbmRzKGJyZWFrZXIpKSByZXR1cm47CisgIGlmICh2aXJ0YnJva2VuICYmIGlnbm9yZV9kZXBlbmRzKHZpcnRicm9rZW4pKSByZXR1cm47CisKKyAgdmFyYnVmZGVwZW5kZW5jeSgmZGVwbXNnLCBicmVha3MtPnVwKTsKKyAgdmFyYnVmX2VuZF9zdHIoJmRlcG1zZyk7CisgIHZhcmJ1Zl9wcmludGYoYWVtc2dzLCBfKCIgJXMgKCVzKSBicmVha3MgJXMgYW5kIGlzICVzLlxuIiksIGJyZWFrZXItPm5hbWUsCisgICAgICAgICAgICAgICAgdmVyc2lvbmRlc2NyaWJlKCZicmVha2VyLT5pbnN0YWxsZWQudmVyc2lvbiwgdmRld19ub25hbWJpZyksCisgICAgICAgICAgICAgICAgZGVwbXNnLmJ1ZiwgZ2V0dGV4dChzdGF0dXNzdHJpbmdzW2JyZWFrZXItPnN0YXR1c10pKTsKKyAgdmFyYnVmX2Rlc3Ryb3koJmRlcG1zZyk7CisKKyAgaWYgKHZpcnRicm9rZW4pIHsKKyAgICB2YXJidWZfcHJpbnRmKGFlbXNncywgXygiICAlcyAoJXMpIHByb3ZpZGVzICVzLlxuIiksIGJyb2tlbi0+bmFtZSwKKyAgICAgICAgICAgICAgICAgIHZlcnNpb25kZXNjcmliZSgmYnJva2VuLT5pbnN0YWxsZWQudmVyc2lvbiwgdmRld19ub25hbWJpZyksCisgICAgICAgICAgICAgICAgICB2aXJ0YnJva2VuLT5uYW1lKTsKKyAgfSBlbHNlIGlmIChicmVha3MtPnZlcnJlbCAhPSBkdnJfbm9uZSkgeworICAgIHZhcmJ1Zl9wcmludGYoYWVtc2dzLCBfKCIgIFZlcnNpb24gb2YgJXMgdG8gYmUgY29uZmlndXJlZCBpcyAlcy5cbiIpLAorICAgICAgICAgICAgICAgICAgYnJva2VuLT5uYW1lLAorICAgICAgICAgICAgICAgICAgdmVyc2lvbmRlc2NyaWJlKCZicm9rZW4tPmluc3RhbGxlZC52ZXJzaW9uLCB2ZGV3X25vbmFtYmlnKSk7CisgICAgaWYgKGZjX2RlcGVuZHN2ZXJzaW9uKSByZXR1cm47CisgIH0KKyAgaWYgKGZvcmNlX2JyZWFrcyhicmVha3MpKSByZXR1cm47CisgICpvayA9IGRlcF9jaGVja19oYWx0OworfQorCitzdGF0aWMgdm9pZAorYnJlYWtzX2NoZWNrX3RhcmdldChzdHJ1Y3QgdmFyYnVmICphZW1zZ3MsIGVudW0gZGVwX2NoZWNrICpvaywKKyAgICAgICAgICAgICAgICAgICAgc3RydWN0IHBrZ2luZm8gKmJyb2tlbiwgc3RydWN0IHBrZ2luZm8gKnRhcmdldCwKKyAgICAgICAgICAgICAgICAgICAgc3RydWN0IHBrZ2luZm8gKnZpcnRicm9rZW4pCit7CisgIHN0cnVjdCBkZXBwb3NzaSAqcG9zc2k7CisKKyAgZm9yIChwb3NzaSA9IHRhcmdldC0+aW5zdGFsbGVkLmRlcGVuZGVkOyBwb3NzaTsgcG9zc2kgPSBwb3NzaS0+cmV2X25leHQpIHsKKyAgICBpZiAocG9zc2ktPnVwLT50eXBlICE9IGRlcF9icmVha3MpIGNvbnRpbnVlOworICAgIGlmICh2aXJ0YnJva2VuICYmIHBvc3NpLT52ZXJyZWwgIT0gZHZyX25vbmUpIGNvbnRpbnVlOworICAgIGJyZWFrc19jaGVja19vbmUoYWVtc2dzLCBvaywgcG9zc2ksIGJyb2tlbiwgcG9zc2ktPnVwLT51cCwgdmlydGJyb2tlbik7CisgIH0KK30KKworZW51bSBkZXBfY2hlY2sKK2JyZWFrc2VzX29rKHN0cnVjdCBwa2dpbmZvICpwa2csIHN0cnVjdCB2YXJidWYgKmFlbXNncykKK3sKKyAgc3RydWN0IGRlcGVuZGVuY3kgKmRlcDsKKyAgc3RydWN0IHBrZ2luZm8gKnZpcnRicm9rZW47CisgIGVudW0gZGVwX2NoZWNrIG9rID0gZGVwX2NoZWNrX29rOworCisgIGRlYnVnKGRiZ19kZXBjb24sICIgICAgY2hlY2tpbmcgQnJlYWtzIik7CisKKyAgYnJlYWtzX2NoZWNrX3RhcmdldChhZW1zZ3MsICZvaywgcGtnLCBwa2csIE5VTEwpOworCisgIGZvciAoZGVwPSBwa2ctPmluc3RhbGxlZC5kZXBlbmRzOyBkZXA7IGRlcD0gZGVwLT5uZXh0KSB7CisgICAgaWYgKGRlcC0+dHlwZSAhPSBkZXBfcHJvdmlkZXMpIGNvbnRpbnVlOworICAgIHZpcnRicm9rZW49IGRlcC0+bGlzdC0+ZWQ7CisgICAgZGVidWcoZGJnX2RlcGNvbmRldGFpbCwgIiAgICAgY2hlY2tpbmcgdmlydGJyb2tlbiAlcyIsIHZpcnRicm9rZW4tPm5hbWUpOworICAgIGJyZWFrc19jaGVja190YXJnZXQoYWVtc2dzLCAmb2ssIHBrZywgdmlydGJyb2tlbiwgdmlydGJyb2tlbik7CisgIH0KKyAgcmV0dXJuIG9rOworfQorCisvKgorICogQ2hlY2tzIFtQcmVdLURlcGVuZHMgb25seS4KKyAqLworZW51bSBkZXBfY2hlY2sKK2RlcGVuZGVuY2llc19vayhzdHJ1Y3QgcGtnaW5mbyAqcGtnLCBzdHJ1Y3QgcGtnaW5mbyAqcmVtb3ZpbmcsCisgICAgICAgICAgICAgICAgc3RydWN0IHZhcmJ1ZiAqYWVtc2dzKQoreworICAvKiBWYWxpZCB2YWx1ZXM6IDIgPSBvaywgMSA9IGRlZmVyLCAwID0gaGFsdC4gKi8KKyAgZW51bSBkZXBfY2hlY2sgb2s7CisgIC8qIFZhbGlkIHZhbHVlczogMCA9IG5vbmUsIDEgPSBkZWZlciwgMiA9IHdpdGh3YXJuaW5nLCAzID0gb2suICovCisgIGVudW0gZm91bmRfc3RhdHVzIGZvdW5kLCB0aGlzZjsKKyAgaW50IGludGVyZXN0aW5nd2FybmluZ3M7CisgIGJvb2wgbWF0Y2hlZCwgYW55Y2Fubm90Zml4Ynl0cmlnOworICBzdHJ1Y3QgdmFyYnVmIG9lbXNncyA9IFZBUkJVRl9JTklUOworICBzdHJ1Y3QgZGVwZW5kZW5jeSAqZGVwOworICBzdHJ1Y3QgZGVwcG9zc2kgKnBvc3NpLCAqcHJvdmlkZXI7CisgIHN0cnVjdCBwa2dpbmZvICpwb3NzZml4Ynl0cmlnLCAqY2FuZml4Ynl0cmlnOworCisgIGludGVyZXN0aW5nd2FybmluZ3M9IDA7CisgIG9rID0gZGVwX2NoZWNrX29rOworICBkZWJ1ZyhkYmdfZGVwY29uLCJjaGVja2luZyBkZXBlbmRlbmNpZXMgb2YgJXMgKC0gJXMpIiwKKyAgICAgICAgcGtnLT5uYW1lLCByZW1vdmluZyA/IHJlbW92aW5nLT5uYW1lIDogIjxub25lPiIpOworCisgIGFueWNhbm5vdGZpeGJ5dHJpZyA9IGZhbHNlOworICBjYW5maXhieXRyaWcgPSBOVUxMOworICBmb3IgKGRlcD0gcGtnLT5pbnN0YWxsZWQuZGVwZW5kczsgZGVwOyBkZXA9IGRlcC0+bmV4dCkgeworICAgIGlmIChkZXAtPnR5cGUgIT0gZGVwX2RlcGVuZHMgJiYgZGVwLT50eXBlICE9IGRlcF9wcmVkZXBlbmRzKSBjb250aW51ZTsKKyAgICBkZWJ1ZyhkYmdfZGVwY29uZGV0YWlsLCIgIGNoZWNraW5nIGdyb3VwIC4uLiIpOworICAgIG1hdGNoZWQgPSBmYWxzZTsKKyAgICB2YXJidWZfcmVzZXQoJm9lbXNncyk7CisgICAgZm91bmQgPSBmb3VuZF9ub25lOworICAgIHBvc3NmaXhieXRyaWcgPSBOVUxMOworICAgIGZvciAocG9zc2kgPSBkZXAtPmxpc3Q7IGZvdW5kICE9IGZvdW5kX29rICYmIHBvc3NpOyBwb3NzaSA9IHBvc3NpLT5uZXh0KSB7CisgICAgICBkZWJ1ZyhkYmdfZGVwY29uZGV0YWlsLCIgICAgY2hlY2tpbmcgcG9zc2liaWxpdHkgIC0+ICVzIixwb3NzaS0+ZWQtPm5hbWUpOworICAgICAgaWYgKHBvc3NpLT5jeWNsZWJyZWFrKSB7CisgICAgICAgIGRlYnVnKGRiZ19kZXBjb25kZXRhaWwsIiAgICAgIGJyZWFrIGN5Y2xlIHNvIG9rIGFuZCBmb3VuZCIpOworICAgICAgICBmb3VuZCA9IGZvdW5kX29rOworICAgICAgICBicmVhazsKKyAgICAgIH0KKyAgICAgIHRoaXNmID0gZGVwcG9zc2lfb2tfZm91bmQocG9zc2ktPmVkLCBwa2csIHJlbW92aW5nLCBOVUxMLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmcG9zc2ZpeGJ5dHJpZywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmbWF0Y2hlZCxwb3NzaSwmaW50ZXJlc3Rpbmd3YXJuaW5ncywmb2Vtc2dzKTsKKyAgICAgIGlmICh0aGlzZiA+IGZvdW5kKSBmb3VuZD0gdGhpc2Y7CisgICAgICBpZiAoZm91bmQgIT0gZm91bmRfb2sgJiYgcG9zc2ktPnZlcnJlbCA9PSBkdnJfbm9uZSkgeworICAgICAgICBmb3IgKHByb3ZpZGVyID0gcG9zc2ktPmVkLT5pbnN0YWxsZWQuZGVwZW5kZWQ7CisgICAgICAgICAgICAgZm91bmQgIT0gZm91bmRfb2sgJiYgcHJvdmlkZXI7CisgICAgICAgICAgICAgcHJvdmlkZXIgPSBwcm92aWRlci0+cmV2X25leHQpIHsKKyAgICAgICAgICBpZiAocHJvdmlkZXItPnVwLT50eXBlICE9IGRlcF9wcm92aWRlcykKKyAgICAgICAgICAgIGNvbnRpbnVlOworICAgICAgICAgIGRlYnVnKGRiZ19kZXBjb25kZXRhaWwsICIgICAgIGNoZWNraW5nIHByb3ZpZGVyICVzIiwKKyAgICAgICAgICAgICAgICBwcm92aWRlci0+dXAtPnVwLT5uYW1lKTsKKyAgICAgICAgICB0aGlzZiA9IGRlcHBvc3NpX29rX2ZvdW5kKHByb3ZpZGVyLT51cC0+dXAsIHBrZywgcmVtb3ZpbmcsIHBvc3NpLT5lZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZwb3NzZml4Ynl0cmlnLCAmbWF0Y2hlZCwgTlVMTCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZpbnRlcmVzdGluZ3dhcm5pbmdzLCAmb2Vtc2dzKTsKKyAgICAgICAgICBpZiAodGhpc2YgPiBmb3VuZCkKKyAgICAgICAgICAgIGZvdW5kID0gdGhpc2Y7CisgICAgICAgIH0KKyAgICAgIH0KKyAgICAgIGRlYnVnKGRiZ19kZXBjb25kZXRhaWwsIiAgICBmb3VuZCAlZCIsZm91bmQpOworICAgICAgaWYgKHRoaXNmID4gZm91bmQpIGZvdW5kPSB0aGlzZjsKKyAgICB9CisgICAgZGVidWcoZGJnX2RlcGNvbmRldGFpbCwgIiAgZm91bmQgJWQgbWF0Y2hlZCAlZCBwb3NzZml4Ynl0cmlnICVzIiwKKyAgICAgICAgICBmb3VuZCwgbWF0Y2hlZCwgcG9zc2ZpeGJ5dHJpZyA/IHBvc3NmaXhieXRyaWctPm5hbWUgOiAiLSIpOworICAgIGlmIChyZW1vdmluZyAmJiAhbWF0Y2hlZCkgY29udGludWU7CisgICAgc3dpdGNoIChmb3VuZCkgeworICAgIGNhc2UgZm91bmRfbm9uZToKKyAgICAgIGFueWNhbm5vdGZpeGJ5dHJpZyA9IHRydWU7CisgICAgICBvayA9IGRlcF9jaGVja19oYWx0OworICAgIGNhc2UgZm91bmRfZm9yY2VkOgorICAgICAgdmFyYnVmX2FkZF9zdHIoYWVtc2dzLCAiICIpOworICAgICAgdmFyYnVmX2FkZF9zdHIoYWVtc2dzLCBwa2ctPm5hbWUpOworICAgICAgdmFyYnVmX2FkZF9zdHIoYWVtc2dzLCBfKCIgZGVwZW5kcyBvbiAiKSk7CisgICAgICB2YXJidWZkZXBlbmRlbmN5KGFlbXNncywgZGVwKTsKKyAgICAgIGlmIChpbnRlcmVzdGluZ3dhcm5pbmdzKSB7CisgICAgICAgIC8qIERvbid0IHByaW50IHRoZSBsaW5lIGFib3V0IHRoZSBwYWNrYWdlIHRvIGJlIHJlbW92ZWQgaWYKKyAgICAgICAgICogdGhhdCdzIHRoZSBvbmx5IGxpbmUuICovCisgICAgICAgIHZhcmJ1Zl9lbmRfc3RyKCZvZW1zZ3MpOworICAgICAgICB2YXJidWZfYWRkX3N0cihhZW1zZ3MsIF8oIjsgaG93ZXZlcjpcbiIpKTsKKyAgICAgICAgdmFyYnVmX2FkZF9zdHIoYWVtc2dzLCBvZW1zZ3MuYnVmKTsKKyAgICAgIH0gZWxzZSB7CisgICAgICAgIHZhcmJ1Zl9hZGRfc3RyKGFlbXNncywgIi5cbiIpOworICAgICAgfQorICAgICAgYnJlYWs7CisgICAgY2FzZSBmb3VuZF9kZWZlcjoKKyAgICAgIGlmIChwb3NzZml4Ynl0cmlnKQorICAgICAgICBjYW5maXhieXRyaWcgPSBwb3NzZml4Ynl0cmlnOworICAgICAgZWxzZQorICAgICAgICBhbnljYW5ub3RmaXhieXRyaWcgPSB0cnVlOworICAgICAgaWYgKG9rID4gZGVwX2NoZWNrX2RlZmVyKQorICAgICAgICBvayA9IGRlcF9jaGVja19kZWZlcjsKKyAgICAgIGJyZWFrOworICAgIGNhc2UgZm91bmRfb2s6CisgICAgICBicmVhazsKKyAgICBkZWZhdWx0OgorICAgICAgaW50ZXJuZXJyKCJ1bmtub3duIHZhbHVlIGZvciBmb3VuZCAnJWQnIiwgZm91bmQpOworICAgIH0KKyAgfQorICBpZiAob2sgPT0gZGVwX2NoZWNrX2hhbHQgJiYKKyAgICAgIChwa2ctPmNsaWVudGRhdGEgJiYgcGtnLT5jbGllbnRkYXRhLT5pc3RvYmUgPT0gaXRiX3JlbW92ZSkpCisgICAgb2sgPSBkZXBfY2hlY2tfZGVmZXI7CisgIGlmICghYW55Y2Fubm90Zml4Ynl0cmlnICYmIGNhbmZpeGJ5dHJpZykKKyAgICBwcm9ncmVzc19ieXRyaWdwcm9jID0gY2FuZml4Ynl0cmlnOworCisgIHZhcmJ1Zl9kZXN0cm95KCZvZW1zZ3MpOworICBkZWJ1ZyhkYmdfZGVwY29uLCJvayAlZCBtc2dzID4+JS4qczw8Iiwgb2ssIChpbnQpYWVtc2dzLT51c2VkLCBhZW1zZ3MtPmJ1Zik7CisgIHJldHVybiBvazsKK30KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc3JjL3Byb2Nlc3NhcmMuYyBiL2Rwa2ctMS4xNi4xLjEvc3JjL3Byb2Nlc3NhcmMuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wOTI2OWIyCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zcmMvcHJvY2Vzc2FyYy5jCkBAIC0wLDAgKzEsMTMzNSBAQAorLyoKKyAqIGRwa2cgLSBtYWluIHByb2dyYW0gZm9yIHBhY2thZ2UgbWFuYWdlbWVudAorICogcHJvY2Vzc2FyYy5jIC0gdGhlIGh1Z2UgZnVuY3Rpb24gcHJvY2Vzc19hcmNoaXZlCisgKgorICogQ29weXJpZ2h0IMKpIDE5OTUgSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuZ3JlZW5lbmQub3JnLnVrPgorICogQ29weXJpZ2h0IMKpIDIwMDYtMjAxMSBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CisgKgorICogVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisgKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAqIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorICovCisKKyNpbmNsdWRlIDxjb25maWcuaD4KKyNpbmNsdWRlIDxjb21wYXQuaD4KKworI2luY2x1ZGUgPHN5cy90eXBlcy5oPgorI2luY2x1ZGUgPHN5cy9zdGF0Lmg+CisjaW5jbHVkZSA8c3lzL3dhaXQuaD4KKworI2luY2x1ZGUgPGFzc2VydC5oPgorI2luY2x1ZGUgPGVycm5vLmg+CisjaW5jbHVkZSA8Y3R5cGUuaD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDx0aW1lLmg+CisjaW5jbHVkZSA8dXRpbWUuaD4KKyNpbmNsdWRlIDxmY250bC5oPgorI2luY2x1ZGUgPGRpcmVudC5oPgorI2luY2x1ZGUgPHVuaXN0ZC5oPgorI2luY2x1ZGUgPHN0ZGludC5oPgorI2luY2x1ZGUgPHN0ZGxpYi5oPgorI2luY2x1ZGUgPHN0ZGlvLmg+CisKKyNpbmNsdWRlIDxkcGtnL2kxOG4uaD4KKyNpbmNsdWRlIDxkcGtnL2Rwa2cuaD4KKyNpbmNsdWRlIDxkcGtnL2Rwa2ctZGIuaD4KKyNpbmNsdWRlIDxkcGtnL3BhdGguaD4KKyNpbmNsdWRlIDxkcGtnL2J1ZmZlci5oPgorI2luY2x1ZGUgPGRwa2cvc3VicHJvYy5oPgorI2luY2x1ZGUgPGRwa2cvZGlyLmg+CisjaW5jbHVkZSA8ZHBrZy90YXJmbi5oPgorI2luY2x1ZGUgPGRwa2cvb3B0aW9ucy5oPgorI2luY2x1ZGUgPGRwa2cvdHJpZ2xpYi5oPgorCisjaW5jbHVkZSAiZmlsZXNkYi5oIgorI2luY2x1ZGUgImluZm9kYi5oIgorI2luY2x1ZGUgIm1haW4uaCIKKyNpbmNsdWRlICJhcmNoaXZlcy5oIgorCitzdGF0aWMgY29uc3QgY2hhciAqCitzdW1tYXJpemVfZmlsZW5hbWUoY29uc3QgY2hhciAqZmlsZW5hbWUpCit7CisgIGNvbnN0IGNoYXIgKnBmaWxlbmFtZTsKKyAgY2hhciAqcGZpbGVuYW1lYnVmOworCisgIGZvciAocGZpbGVuYW1lID0gZmlsZW5hbWU7CisgICAgICAgcGZpbGVuYW1lICYmIHN0cmxlbihwZmlsZW5hbWUpID4gMzAgJiYgc3RyY2hyKHBmaWxlbmFtZSwgJy8nKSAhPSBOVUxMOworICAgICAgIHBmaWxlbmFtZSsrKQorICAgIHBmaWxlbmFtZSA9IHN0cmNocihwZmlsZW5hbWUsICcvJyk7CisKKyAgaWYgKHBmaWxlbmFtZSAmJiBwZmlsZW5hbWUgIT0gZmlsZW5hbWUpIHsKKyAgICBwZmlsZW5hbWVidWYgPSBuZm1hbGxvYyhzdHJsZW4ocGZpbGVuYW1lKSArIDUpOworICAgIHNwcmludGYocGZpbGVuYW1lYnVmLCBfKCIuLi4vJXMiKSwgcGZpbGVuYW1lKTsKKyAgICBwZmlsZW5hbWUgPSBwZmlsZW5hbWVidWY7CisgIH0gZWxzZSB7CisgICAgcGZpbGVuYW1lID0gZmlsZW5hbWU7CisgIH0KKworICByZXR1cm4gcGZpbGVuYW1lOworfQorCitzdGF0aWMgYm9vbAorZGViX3JlYXNzZW1ibGUoY29uc3QgY2hhciAqKmZpbGVuYW1lLCBjb25zdCBjaGFyICoqcGZpbGVuYW1lKQoreworICBzdGF0aWMgY2hhciAqcmVhc21idWYgPSBOVUxMOworICBzdHJ1Y3Qgc3RhdCBzdGFiOworICBpbnQgc3RhdHVzOworICBwaWRfdCBwaWQ7CisKKyAgaWYgKCFyZWFzbWJ1ZikKKyAgICByZWFzbWJ1ZiA9IGRwa2dfZGJfZ2V0X3BhdGgoUkVBU1NFTUJMRVRNUCk7CisgIGlmICh1bmxpbmsocmVhc21idWYpICYmIGVycm5vICE9IEVOT0VOVCkKKyAgICBvaHNoaXRlKF8oImVycm9yIGVuc3VyaW5nIGAlLjI1MHMnIGRvZXNuJ3QgZXhpc3QiKSwgcmVhc21idWYpOworCisgIHB1c2hfY2xlYW51cChjdV9wYXRobmFtZSwgfjAsIE5VTEwsIDAsIDEsICh2b2lkICopcmVhc21idWYpOworCisgIHBpZCA9IHN1YnByb2NfZm9yaygpOworICBpZiAoIXBpZCkgeworICAgIGV4ZWNscChTUExJVFRFUiwgU1BMSVRURVIsICItUWFvIiwgcmVhc21idWYsICpmaWxlbmFtZSwgTlVMTCk7CisgICAgb2hzaGl0ZShfKCJ1bmFibGUgdG8gZXhlY3V0ZSAlcyAoJXMpIiksCisgICAgICAgICAgICBfKCJzcGxpdCBwYWNrYWdlIHJlYXNzZW1ibHkiKSwgU1BMSVRURVIpOworICB9CisgIHN0YXR1cyA9IHN1YnByb2Nfd2FpdChwaWQsIFNQTElUVEVSKTsKKyAgc3dpdGNoIChXSUZFWElURUQoc3RhdHVzKSA/IFdFWElUU1RBVFVTKHN0YXR1cykgOiAtMSkgeworICBjYXNlIDA6CisgICAgLyogSXQgd2FzIGEgcGFydCAtIGlzIGl0IGNvbXBsZXRlPyAqLworICAgIGlmICghc3RhdChyZWFzbWJ1ZiwgJnN0YWIpKSB7CisgICAgICAvKiBZZXMuICovCisgICAgICAqZmlsZW5hbWUgPSByZWFzbWJ1ZjsKKyAgICAgICpwZmlsZW5hbWUgPSBfKCJyZWFzc2VtYmxlZCBwYWNrYWdlIGZpbGUiKTsKKyAgICAgIGJyZWFrOworICAgIH0gZWxzZSBpZiAoZXJybm8gPT0gRU5PRU5UKSB7CisgICAgICAvKiBOby4gVGhhdCdzIGl0LCB3ZSBza2lwIGl0LiAqLworICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0KKyAgY2FzZSAxOgorICAgIC8qIE5vLCBpdCB3YXNuJ3QgYSBwYXJ0LiAqLworICAgIGJyZWFrOworICBkZWZhdWx0OgorICAgIHN1YnByb2NfY2hlY2soc3RhdHVzLCBTUExJVFRFUiwgMCk7CisgIH0KKworICByZXR1cm4gdHJ1ZTsKK30KKworc3RhdGljIHZvaWQKK2RlYl92ZXJpZnkoY29uc3QgY2hhciAqZmlsZW5hbWUpCit7CisgIHN0cnVjdCBzdGF0IHN0YWI7CisgIHBpZF90IHBpZDsKKworICBpZiAoc3RhdChERUJTSUdWRVJJRlksICZzdGFiKSA8IDApCisgICAgcmV0dXJuOworCisgIHByaW50ZihfKCJBdXRoZW50aWNhdGluZyAlcyAuLi5cbiIpLCBmaWxlbmFtZSk7CisgIGZmbHVzaChzdGRvdXQpOworICBwaWQgPSBzdWJwcm9jX2ZvcmsoKTsKKyAgaWYgKCFwaWQpIHsKKyAgICBleGVjbChERUJTSUdWRVJJRlksIERFQlNJR1ZFUklGWSwgIi1xIiwgZmlsZW5hbWUsIE5VTEwpOworICAgIG9oc2hpdGUoXygidW5hYmxlIHRvIGV4ZWN1dGUgJXMgKCVzKSIpLAorICAgICAgICAgICAgXygicGFja2FnZSBzaWduYXR1cmUgdmVyaWZpY2F0aW9uIiksIERFQlNJR1ZFUklGWSk7CisgIH0gZWxzZSB7CisgICAgaW50IHN0YXR1czsKKworICAgIHN0YXR1cyA9IHN1YnByb2Nfd2FpdChwaWQsICJkZWJzaWctdmVyaWZ5Iik7CisgICAgaWYgKCEoV0lGRVhJVEVEKHN0YXR1cykgJiYgV0VYSVRTVEFUVVMoc3RhdHVzKSA9PSAwKSkgeworICAgICAgaWYgKCFmY19iYWR2ZXJpZnkpCisgICAgICAgIG9oc2hpdChfKCJWZXJpZmljYXRpb24gb24gcGFja2FnZSAlcyBmYWlsZWQhIiksIGZpbGVuYW1lKTsKKyAgICAgIGVsc2UKKyAgICAgICAgZnByaW50ZihzdGRlcnIsIF8oIlZlcmlmaWNhdGlvbiBvbiBwYWNrYWdlICVzIGZhaWxlZCxcbiIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgImJ1dCBpbnN0YWxsaW5nIGFueXdheSBhcyB5b3UgcmVxdWVzdGVkLlxuIiksCisgICAgICAgICAgICAgICAgZmlsZW5hbWUpOworICAgIH0gZWxzZSB7CisgICAgICBwcmludGYoXygicGFzc2VkXG4iKSk7CisgICAgfQorICB9Cit9CisKK3N0YXRpYyBjaGFyICoKK2dldF9jb250cm9sX2RpcihjaGFyICpjaWRpcikKK3sKKyAgaWYgKGZfbm9hY3QpIHsKKyAgICBjaGFyICp0bXBkaXI7CisKKyAgICB0bXBkaXIgPSBta2R0ZW1wKHBhdGhfbWFrZV90ZW1wX3RlbXBsYXRlKCJkcGtnIikpOworICAgIGlmICh0bXBkaXIgPT0gTlVMTCkKKyAgICAgIG9oc2hpdGUoXygidW5hYmxlIHRvIGNyZWF0ZSB0ZW1wb3JhcnkgZGlyZWN0b3J5IikpOworCisgICAgY2lkaXIgPSBtX3JlYWxsb2MoY2lkaXIsIHN0cmxlbih0bXBkaXIpICsgTUFYQ09OVFJPTEZJTEVOQU1FICsgMTApOworCisgICAgc3RyY3B5KGNpZGlyLCB0bXBkaXIpOworCisgICAgZnJlZSh0bXBkaXIpOworICB9IGVsc2UgeworICAgIGNvbnN0IGNoYXIgKmFkbWluZGlyOworCisgICAgYWRtaW5kaXIgPSBkcGtnX2RiX2dldF9kaXIoKTsKKworICAgIC8qIFRoZSBhZG1pbmRpciBsZW5ndGggaXMgYWx3YXlzIGNvbnN0YW50IG9uIGEgZHBrZyBleGVjdXRpb24gcnVuLiAqLworICAgIGlmIChjaWRpciA9PSBOVUxMKQorICAgICAgY2lkaXIgPSBtX21hbGxvYyhzdHJsZW4oYWRtaW5kaXIpICsgc2l6ZW9mKENPTlRST0xESVJUTVApICsKKyAgICAgICAgICAgICAgICAgICAgICAgTUFYQ09OVFJPTEZJTEVOQU1FICsgMTApOworCisgICAgLyogV2Ugd2FudCBpdCB0byBiZSBvbiB0aGUgc2FtZSBmaWxlc3lzdGVtIHNvIHRoYXQgd2UgY2FuCisgICAgICogdXNlIHJlbmFtZSgyKSB0byBpbnN0YWxsIHRoZSBwb3N0aW5zdCAmYy4gKi8KKyAgICBzdHJjcHkoY2lkaXIsIGFkbWluZGlyKTsKKyAgICBzdHJjYXQoY2lkaXIsICIvIiBDT05UUk9MRElSVE1QKTsKKworICAgIC8qIE1ha2Ugc3VyZSB0aGUgY29udHJvbCBpbmZvcm1hdGlvbiBkaXJlY3RvcnkgaXMgZW1wdHkuICovCisgICAgZW5zdXJlX3BhdGhuYW1lX25vbmV4aXN0aW5nKGNpZGlyKTsKKyAgfQorCisgIHN0cmNhdChjaWRpciwgIi8iKTsKKworICByZXR1cm4gY2lkaXI7Cit9CisKKyNkZWZpbmUgTUFYQ09ORkxJQ1RPUlMgMjAKKworc3RhdGljIHN0cnVjdCBwa2dpbmZvICpjb25mbGljdG9yW01BWENPTkZMSUNUT1JTXTsKK3N0YXRpYyBpbnQgY2ZsaWN0X2luZGV4ID0gMDsKKwordm9pZAorcHVzaF9jb25mbGljdG9yKHN0cnVjdCBwa2dpbmZvICpwa2csIHN0cnVjdCBwa2dpbmZvICpwa2dfZml4YnlybSkKK3sKKyAgaWYgKGNmbGljdF9pbmRleCA+PSBNQVhDT05GTElDVE9SUykKKyAgICBvaHNoaXQoXygicGFja2FnZSAlcyBoYXMgdG9vIG1hbnkgQ29uZmxpY3RzL1JlcGxhY2VzIHBhaXJzIiksIHBrZy0+bmFtZSk7CisKKyAgY29uZmxpY3RvcltjZmxpY3RfaW5kZXgrK10gPSBwa2dfZml4YnlybTsKK30KKworc3RydWN0IG1hdGNoX25vZGUgeworICBzdHJ1Y3QgbWF0Y2hfbm9kZSAqbmV4dDsKKyAgY2hhciAqZmlsZXR5cGU7CisgIGNoYXIgKmZpbGVuYW1lOworfTsKKworc3RhdGljIHN0cnVjdCBtYXRjaF9ub2RlICptYXRjaF9oZWFkID0gTlVMTDsKKworc3RhdGljIHN0cnVjdCBtYXRjaF9ub2RlICoKK21hdGNoX25vZGVfbmV3KGNvbnN0IGNoYXIgKm5hbWUsIGNvbnN0IGNoYXIgKnR5cGUsIHN0cnVjdCBtYXRjaF9ub2RlICpuZXh0KQoreworICBzdHJ1Y3QgbWF0Y2hfbm9kZSAqbm9kZTsKKworICBub2RlID0gbV9tYWxsb2Moc2l6ZW9mKCpub2RlKSk7CisgIG5vZGUtPm5leHQgPSBuZXh0OworICBub2RlLT5maWxlbmFtZSA9IG1fc3RyZHVwKG5hbWUpOworICBub2RlLT5maWxldHlwZSA9IG1fc3RyZHVwKHR5cGUpOworCisgIHJldHVybiBub2RlOworfQorCitzdGF0aWMgdm9pZAorbWF0Y2hfbm9kZV9mcmVlKHN0cnVjdCBtYXRjaF9ub2RlICpub2RlKQoreworICBmcmVlKG5vZGUtPmZpbGV0eXBlKTsKKyAgZnJlZShub2RlLT5maWxlbmFtZSk7CisgIGZyZWUobm9kZSk7Cit9CisKK3N0YXRpYyB2b2lkCitwa2dfaW5mb2RiX3VwZGF0ZV9maWxlKGNvbnN0IGNoYXIgKmZpbGVuYW1lLCBjb25zdCBjaGFyICpmaWxldHlwZSkKK3sKKyAgaWYgKHN0cmxlbihmaWxldHlwZSkgPiBNQVhDT05UUk9MRklMRU5BTUUpCisgICAgb2hzaGl0KF8oIm9sZCB2ZXJzaW9uIG9mIHBhY2thZ2UgaGFzIG92ZXJseS1sb25nIGluZm8gZmlsZSBuYW1lIHN0YXJ0aW5nIGAlLjI1MHMnIiksCisgICAgICAgICAgIGZpbGVuYW1lKTsKKworICAvKiBXZSBkbyB0aGUgbGlzdCBzZXBhcmF0ZWx5LiAqLworICBpZiAoc3RyY21wKGZpbGV0eXBlLCBMSVNURklMRSkgPT0gMCkKKyAgICByZXR1cm47CisKKyAgLyogV2Uga2VlcCBmaWxlcyB0byByZW5hbWUgaW4gYSBsaXN0IGFzIGRvaW5nIHRoZSByZW5hbWUgaW1tZWRpYXRlbHkKKyAgICogbWlnaHQgaW5mbHVlbmNlIHRoZSBjdXJyZW50IHJlYWRkaXIoKSwgdGhlIGp1c3QgcmVuYW1lZCBmaWxlIG1pZ2h0CisgICAqIGJlIHJldHVybmVkIGEgc2Vjb25kIHRpbWUgYXMgaXQncyBhY3R1YWxseSBhIG5ldyBmaWxlIGZyb20gdGhlCisgICAqIHBvaW50IG9mIHZpZXcgb2YgdGhlIGZpbGVzeXN0ZW0uICovCisgIG1hdGNoX2hlYWQgPSBtYXRjaF9ub2RlX25ldyhmaWxlbmFtZSwgZmlsZXR5cGUsIG1hdGNoX2hlYWQpOworfQorCitzdGF0aWMgdm9pZAorcGtnX2luZm9kYl91cGRhdGUoc3RydWN0IHBrZ2luZm8gKnBrZywgY2hhciAqY2lkaXIsIGNoYXIgKmNpZGlycmVzdCkKK3sKKyAgc3RydWN0IG1hdGNoX25vZGUgKm1hdGNoX25vZGU7CisgIERJUiAqZHNkOworICBzdHJ1Y3QgZGlyZW50ICpkZTsKKworICAvKiBEZWFsbG9jYXRlIHRoZSBtYXRjaCBsaXN0IGluIGNhc2Ugd2UgYWJvcnRlZCBwcmV2aW91c2x5LiAqLworICB3aGlsZSAoKG1hdGNoX25vZGUgPSBtYXRjaF9oZWFkKSkgeworICAgIG1hdGNoX2hlYWQgPSBtYXRjaF9ub2RlLT5uZXh0OworICAgIG1hdGNoX25vZGVfZnJlZShtYXRjaF9ub2RlKTsKKyAgfQorCisgIHBrZ19pbmZvZGJfZm9yZWFjaChwa2csIHBrZ19pbmZvZGJfdXBkYXRlX2ZpbGUpOworCisgIHdoaWxlICgobWF0Y2hfbm9kZSA9IG1hdGNoX2hlYWQpKSB7CisgICAgc3RyY3B5KGNpZGlycmVzdCwgbWF0Y2hfbm9kZS0+ZmlsZXR5cGUpOworCisgICAgaWYgKCFyZW5hbWUoY2lkaXIsIG1hdGNoX25vZGUtPmZpbGVuYW1lKSkgeworICAgICAgZGVidWcoZGJnX3NjcmlwdHMsICJwcm9jZXNzX2FyY2hpdmUgaW5mbyBpbnN0YWxsZWQgJXMgYXMgJXMiLAorICAgICAgICAgICAgY2lkaXIsIG1hdGNoX25vZGUtPmZpbGVuYW1lKTsKKyAgICB9IGVsc2UgaWYgKGVycm5vID09IEVOT0VOVCkgeworICAgICAgLyogUmlnaHQsIG5vIG5ldyB2ZXJzaW9uLiAqLworICAgICAgaWYgKHVubGluayhtYXRjaF9ub2RlLT5maWxlbmFtZSkpCisgICAgICAgIG9oc2hpdGUoXygidW5hYmxlIHRvIHJlbW92ZSBvYnNvbGV0ZSBpbmZvIGZpbGUgYCUuMjUwcyciKSwKKyAgICAgICAgICAgICAgICBtYXRjaF9ub2RlLT5maWxlbmFtZSk7CisgICAgICBkZWJ1ZyhkYmdfc2NyaXB0cywgInByb2Nlc3NfYXJjaGl2ZSBpbmZvIHVubGlua2VkICVzIiwKKyAgICAgICAgICAgIG1hdGNoX25vZGUtPmZpbGVuYW1lKTsKKyAgICB9IGVsc2UgeworICAgICAgb2hzaGl0ZShfKCJ1bmFibGUgdG8gaW5zdGFsbCAoc3VwcG9zZWQpIG5ldyBpbmZvIGZpbGUgYCUuMjUwcyciKSwgY2lkaXIpOworICAgIH0KKyAgICBtYXRjaF9oZWFkID0gbWF0Y2hfbm9kZS0+bmV4dDsKKyAgICBtYXRjaF9ub2RlX2ZyZWUobWF0Y2hfbm9kZSk7CisgIH0KKworICAvKiBUaGUgY29udHJvbCBkaXJlY3RvcnkgaXRzZWxmLiAqLworICBjaWRpcnJlc3RbMF0gPSAnXDAnOworICBkc2QgPSBvcGVuZGlyKGNpZGlyKTsKKyAgaWYgKCFkc2QpCisgICAgb2hzaGl0ZShfKCJ1bmFibGUgdG8gb3BlbiB0ZW1wIGNvbnRyb2wgZGlyZWN0b3J5IikpOworICBwdXNoX2NsZWFudXAoY3VfY2xvc2VkaXIsIH4wLCBOVUxMLCAwLCAxLCAodm9pZCAqKWRzZCk7CisgIHdoaWxlICgoZGUgPSByZWFkZGlyKGRzZCkpKSB7CisgICAgY29uc3QgY2hhciAqbmV3aW5mb2ZpbGVuYW1lOworCisgICAgaWYgKHN0cmNocihkZS0+ZF9uYW1lLCAnLicpKSB7CisgICAgICBkZWJ1ZyhkYmdfc2NyaXB0cywicHJvY2Vzc19hcmNoaXZlIHRtcC5jaSBzY3JpcHQvZmlsZSBgJXMnIGNvbnRhaW5zIGRvdCIsCisgICAgICAgICAgICBkZS0+ZF9uYW1lKTsKKyAgICAgIGNvbnRpbnVlOworICAgIH0KKyAgICBpZiAoc3RybGVuKGRlLT5kX25hbWUpID4gTUFYQ09OVFJPTEZJTEVOQU1FKQorICAgICAgb2hzaGl0KF8oInBhY2thZ2UgY29udGFpbnMgb3Zlcmx5LWxvbmcgY29udHJvbCBpbmZvIGZpbGUgbmFtZSAoc3RhcnRpbmcgYCUuNTBzJykiKSwKKyAgICAgICAgICAgICBkZS0+ZF9uYW1lKTsKKworICAgIHN0cmNweShjaWRpcnJlc3QsIGRlLT5kX25hbWUpOworCisgICAgLyogRmlyc3Qgd2UgY2hlY2sgaXQncyBub3QgYSBkaXJlY3RvcnkuICovCisgICAgaWYgKHJtZGlyKGNpZGlyKSA9PSAwKQorICAgICAgb2hzaGl0KF8oInBhY2thZ2UgY29udHJvbCBpbmZvIGNvbnRhaW5lZCBkaXJlY3RvcnkgYCUuMjUwcyciKSwgY2lkaXIpOworICAgIGVsc2UgaWYgKGVycm5vICE9IEVOT1RESVIpCisgICAgICBvaHNoaXRlKF8oInBhY2thZ2UgY29udHJvbCBpbmZvIHJtZGlyIG9mIGAlLjI1MHMnIGRpZG4ndCBzYXkgbm90IGEgZGlyIiksCisgICAgICAgICAgICAgIGRlLT5kX25hbWUpOworCisgICAgLyogSWdub3JlIHRoZSBjb250cm9sIGZpbGUuICovCisgICAgaWYgKHN0cmNtcChkZS0+ZF9uYW1lLCBDT05UUk9MRklMRSkgPT0gMCkgeworICAgICAgZGVidWcoZGJnX3NjcmlwdHMsICJwcm9jZXNzX2FyY2hpdmUgdG1wLmNpIHNjcmlwdC9maWxlIGAlcycgaXMgY29udHJvbCIsCisgICAgICAgICAgICBjaWRpcik7CisgICAgICBjb250aW51ZTsKKyAgICB9CisgICAgaWYgKHN0cmNtcChkZS0+ZF9uYW1lLCBMSVNURklMRSkgPT0gMCkgeworICAgICAgd2FybmluZyhfKCJwYWNrYWdlICVzIGNvbnRhaW5lZCBsaXN0IGFzIGluZm8gZmlsZSIpLCBwa2ctPm5hbWUpOworICAgICAgY29udGludWU7CisgICAgfQorCisgICAgLyogUmlnaHQsIGluc3RhbGwgaXQgKi8KKyAgICBuZXdpbmZvZmlsZW5hbWUgPSBwa2dhZG1pbmZpbGUocGtnLGRlLT5kX25hbWUpOworICAgIGlmIChyZW5hbWUoY2lkaXIsIG5ld2luZm9maWxlbmFtZSkpCisgICAgICBvaHNoaXRlKF8oInVuYWJsZSB0byBpbnN0YWxsIG5ldyBpbmZvIGZpbGUgYCUuMjUwcycgYXMgYCUuMjUwcyciKSwKKyAgICAgICAgICAgICAgY2lkaXIsIG5ld2luZm9maWxlbmFtZSk7CisKKyAgICBkZWJ1ZyhkYmdfc2NyaXB0cywKKyAgICAgICAgICAicHJvY2Vzc19hcmNoaXZlIHRtcC5jaSBzY3JpcHQvZmlsZSBgJXMnIGluc3RhbGxlZCBhcyBgJXMnIiwKKyAgICAgICAgICBjaWRpciwgbmV3aW5mb2ZpbGVuYW1lKTsKKyAgfQorICBwb3BfY2xlYW51cChlaGZsYWdfbm9ybWFsdGlkeSk7IC8qIGNsb3NlZGlyICovCisKKyAgZGlyX3N5bmNfcGF0aChwa2dhZG1pbmRpcigpKTsKK30KKworc3RhdGljIHZvaWQKK3BrZ19pbmZvZGJfcmVtb3ZlX2ZpbGUoY29uc3QgY2hhciAqZmlsZW5hbWUsIGNvbnN0IGNoYXIgKmZpbGV0eXBlKQoreworICBpZiAodW5saW5rKGZpbGVuYW1lKSkKKyAgICBvaHNoaXRlKF8oInVuYWJsZSB0byBkZWxldGUgY29udHJvbCBpbmZvIGZpbGUgYCUuMjUwcyciKSwgZmlsZW5hbWUpOworCisgIGRlYnVnKGRiZ19zY3JpcHRzLCAicmVtb3ZhbF9idWxrIGluZm8gdW5saW5rZWQgJXMiLCBmaWxlbmFtZSk7Cit9CisKK3N0YXRpYyBlbnVtIHBhcnNlZGJmbGFncworcGFyc2VkYl9mb3JjZV9mbGFncyh2b2lkKQoreworICBlbnVtIHBhcnNlZGJmbGFncyBmbGFncyA9IDA7CisKKyAgaWYgKGZjX2JhZHZlcnNpb24pCisgICAgZmxhZ3MgfD0gcGRiX2xheF92ZXJzaW9uX3BhcnNlcjsKKworICByZXR1cm4gZmxhZ3M7Cit9CisKK3ZvaWQgcHJvY2Vzc19hcmNoaXZlKGNvbnN0IGNoYXIgKmZpbGVuYW1lKSB7CisgIHN0YXRpYyBjb25zdCBzdHJ1Y3QgdGFyX29wZXJhdGlvbnMgdGYgPSB7CisgICAgLnJlYWQgPSB0YXJmaWxlcmVhZCwKKyAgICAuZXh0cmFjdF9maWxlID0gdGFyb2JqZWN0LAorICAgIC5saW5rID0gdGFyb2JqZWN0LAorICAgIC5zeW1saW5rID0gdGFyb2JqZWN0LAorICAgIC5ta2RpciA9IHRhcm9iamVjdCwKKyAgICAubWtub2QgPSB0YXJvYmplY3QsCisgIH07CisKKyAgLyogVGhlc2UgbmVlZCB0byBiZSBzdGF0aWMgc28gdGhhdCB3ZSBjYW4gcGFzcyB0aGVpciBhZGRyZXNzZXMgdG8KKyAgICogcHVzaF9jbGVhbnVwIGFzIGFyZ3VtZW50cyB0byB0aGUgY3VfeHh4IHJvdXRpbmVzOyBpZiBhbiBlcnJvciBvY2N1cnMKKyAgICogd2UgdW53aW5kIHRoZSBzdGFjayBiZWZvcmUgcHJvY2Vzc2luZyB0aGUgY2xlYW51cCBsaXN0LCBhbmQgdGhlc2UKKyAgICogdmFyaWFibGVzIGhhZCBiZXR0ZXIgc3RpbGwgZXhpc3QgLi4uICovCisgIHN0YXRpYyBpbnQgcDFbMl07CisgIHN0YXRpYyBjaGFyICpjaWRpciA9IE5VTEw7CisgIHN0YXRpYyBzdHJ1Y3QgZmlsZWlubGlzdCAqbmV3Y29uZmZpbGVzLCAqbmV3ZmlsZXNsaXN0OworICBzdGF0aWMgZW51bSBwa2dzdGF0dXMgb2xkdmVyc2lvbnN0YXR1czsKKyAgc3RhdGljIHN0cnVjdCB2YXJidWYgZGVwcHJvYndoeTsKKyAgc3RhdGljIHN0cnVjdCB0YXJjb250ZXh0IHRjOworCisgIGludCByLCBpOworICBwaWRfdCBwaWQ7CisgIHN0cnVjdCBwa2dpdGVyYXRvciAqaXQ7CisgIHN0cnVjdCBwa2dpbmZvICpwa2csICpvdGhlcnBrZywgKmRpdnBrZzsKKyAgY2hhciAqY2lkaXJyZXN0LCAqcDsKKyAgY2hhciBjb25mZmlsZW5hbWVidWZbTUFYQ09ORkZJTEVOQU1FXTsKKyAgY2hhciAqcHNpemU7CisgIGNvbnN0IGNoYXIgKnBmaWxlbmFtZTsKKyAgc3RydWN0IGZpbGVpbmxpc3QgKm5ld2NvbmZmLCAqKm5ld2NvbmZmaWxlc2xhc3RwOworICBzdHJ1Y3QgZmlsZWlubGlzdCAqY2ZpbGU7CisgIHN0cnVjdCByZXZlcnNlZmlsZWxpc3RpdGVyIHJsaXN0aXQ7CisgIHN0cnVjdCBjb25mZmlsZSAqc2VhcmNoY29uZmYsICoqaWNvbmZmaWxlc2xhc3RwLCAqbmV3aWNvbmZmOworICBzdHJ1Y3QgZGVwZW5kZW5jeSAqZHNlYXJjaCwgKm5ld2RlcGxpc3QsICoqbmV3ZGVwbGlzdGxhc3RwOworICBzdHJ1Y3QgZGVwZW5kZW5jeSAqbmV3ZGVwLCAqZGVwLCAqcHJvdmlkZWNoZWNrOworICBzdHJ1Y3QgZGVwcG9zc2kgKnBzZWFyY2gsICoqbmV3cG9zc2lsYXN0cCwgKnBvc3NpLCAqbmV3cG9zc2ksICpwZGVwOworICBGSUxFICpjb25mZjsKKyAgc3RydWN0IGZpbGVuYW1lbm9kZSAqbmFtZW5vZGU7CisgIHN0cnVjdCBzdGF0IHN0YWIsIG9sZGZzOworICBzdHJ1Y3QgcGtnX2RlY29uZl9saXN0ICpkZWNvbnBpbCwgKmRlY29ucGlsdGVtcDsKKyAgc3RydWN0IHBrZ2luZm8gKmZpeGJ5dHJpZ2F3OworCisgIGNsZWFudXBfcGtnX2ZhaWxlZD0gY2xlYW51cF9jb25mbGljdG9yX2ZhaWxlZD0gMDsKKworICBwZmlsZW5hbWUgPSBzdW1tYXJpemVfZmlsZW5hbWUoZmlsZW5hbWUpOworCisgIGlmIChzdGF0KGZpbGVuYW1lLCZzdGFiKSkgb2hzaGl0ZShfKCJjYW5ub3QgYWNjZXNzIGFyY2hpdmUiKSk7CisKKyAgLyogV2UgY2FuJ3Qg4oCYdGVudGF0aXZlbHktcmVhc3NlbWJsZeKAmSBwYWNrYWdlcy4gKi8KKyAgaWYgKCFmX25vYWN0KSB7CisgICAgaWYgKCFkZWJfcmVhc3NlbWJsZSgmZmlsZW5hbWUsICZwZmlsZW5hbWUpKQorICAgICAgcmV0dXJuOworICB9CisKKyAgLyogVmVyaWZ5IHRoZSBwYWNrYWdlLiAqLworICBpZiAoIWZfbm9kZWJzaWcpCisgICAgZGViX3ZlcmlmeShmaWxlbmFtZSk7CisKKyAgLyogR2V0IHRoZSBjb250cm9sIGluZm9ybWF0aW9uIGRpcmVjdG9yeS4gKi8KKyAgY2lkaXIgPSBnZXRfY29udHJvbF9kaXIoY2lkaXIpOworICBjaWRpcnJlc3QgPSBjaWRpciArIHN0cmxlbihjaWRpcik7CisgIHB1c2hfY2xlYW51cChjdV9jaWRpciwgfjAsIE5VTEwsIDAsIDIsICh2b2lkICopY2lkaXIsICh2b2lkICopY2lkaXJyZXN0KTsKKworICBwaWQgPSBzdWJwcm9jX2ZvcmsoKTsKKyAgaWYgKHBpZCA9PSAwKSB7CisgICAgY2lkaXJyZXN0Wy0xXSA9ICdcMCc7CisgICAgZXhlY2xwKEJBQ0tFTkQsIEJBQ0tFTkQsICItLWNvbnRyb2wiLCBmaWxlbmFtZSwgY2lkaXIsIE5VTEwpOworICAgIG9oc2hpdGUoXygidW5hYmxlIHRvIGV4ZWN1dGUgJXMgKCVzKSIpLAorICAgICAgICAgICAgXygicGFja2FnZSBjb250cm9sIGluZm9ybWF0aW9uIGV4dHJhY3Rpb24iKSwgQkFDS0VORCk7CisgIH0KKyAgc3VicHJvY193YWl0X2NoZWNrKHBpZCwgQkFDS0VORCAiIC0tY29udHJvbCIsIDApOworCisgIC8qIFdlIHdhbnQgdG8gZ3VhcmFudGVlIHRoZSBleHRyYWN0ZWQgZmlsZXMgYXJlIG9uIHRoZSBkaXNrLCBzbyB0aGF0IHRoZQorICAgKiBzdWJzZXF1ZW50IHJlbmFtZXMgdG8gdGhlIGluZm8gZGF0YWJhc2UgZG8gbm90IGVuZCB1cCB3aXRoIG9sZCBvciB6ZXJvCisgICAqIGxlbmd0aCBmaWxlcyBpbiBjYXNlIG9mIGEgc3lzdGVtIGNyYXNoLiBBcyBuZWl0aGVyIGRwa2ctZGViIG5vciB0YXIgZG8KKyAgICogZXhwbGljaXQgZnN5bmMoKXMsIHdlIGhhdmUgdG8gZG8gdGhlbSBoZXJlLgorICAgKiBYWFg6IFRoaXMgY291bGQgYmUgYXZvaWRlZCBieSBzd2l0Y2hpbmcgdG8gYW4gaW50ZXJuYWwgdGFyIGV4dHJhY3Rvci4gKi8KKyAgZGlyX3N5bmNfY29udGVudHMoY2lkaXIpOworCisgIHN0cmNweShjaWRpcnJlc3QsQ09OVFJPTEZJTEUpOworCisgIHBhcnNlZGIoY2lkaXIsIHBkYl9yZWNvcmRhdmFpbGFibGUgfCBwZGJfcmVqZWN0c3RhdHVzIHwgcGRiX2lnbm9yZWZpbGVzIHwKKyAgICAgICAgICBwYXJzZWRiX2ZvcmNlX2ZsYWdzKCksICZwa2cpOworICBpZiAoIXBrZy0+ZmlsZXMpIHsKKyAgICBwa2ctPmZpbGVzPSBuZm1hbGxvYyhzaXplb2Yoc3RydWN0IGZpbGVkZXRhaWxzKSk7CisgICAgcGtnLT5maWxlcy0+bmV4dCA9IE5VTEw7CisgICAgcGtnLT5maWxlcy0+bmFtZSA9IHBrZy0+ZmlsZXMtPm1zZG9zbmFtZSA9IHBrZy0+ZmlsZXMtPm1kNXN1bSA9IE5VTEw7CisgIH0KKyAgLyogQWx3YXlzIG5mbWFsbG9jLiBPdGhlcndpc2UsIHdlIG1heSBvdmVyd3JpdGUgc29tZSBvdGhlciBmaWVsZCAobGlrZQorICAgKiBtZDVzdW0pLiAqLworICBwc2l6ZSA9IG5mbWFsbG9jKDMwKTsKKyAgc3ByaW50Zihwc2l6ZSwgIiVqZCIsIChpbnRtYXhfdClzdGFiLnN0X3NpemUpOworICBwa2ctPmZpbGVzLT5zaXplID0gcHNpemU7CisKKyAgaWYgKGNpcGFjdGlvbi0+YXJnX2ludCA9PSBhY3RfYXZhaWwpIHsKKyAgICBwcmludGYoXygiUmVjb3JkZWQgaW5mbyBhYm91dCAlcyBmcm9tICVzLlxuIikscGtnLT5uYW1lLHBmaWxlbmFtZSk7CisgICAgcG9wX2NsZWFudXAoZWhmbGFnX25vcm1hbHRpZHkpOworICAgIHJldHVybjsKKyAgfQorCisgIGlmIChzdHJjbXAocGtnLT5hdmFpbGFibGUuYXJjaCwgImFsbCIpICYmCisgICAgICBzdHJjbXAocGtnLT5hdmFpbGFibGUuYXJjaCwgbmF0aXZlX2FyY2gpKQorICAgIGZvcmNpYmxlZXJyKGZjX2FyY2hpdGVjdHVyZSwKKyAgICAgICAgICAgICAgICBfKCJwYWNrYWdlIGFyY2hpdGVjdHVyZSAoJXMpIGRvZXMgbm90IG1hdGNoIHN5c3RlbSAoJXMpIiksCisgICAgICAgICAgICAgICAgcGtnLT5hdmFpbGFibGUuYXJjaCwgbmF0aXZlX2FyY2gpOworCisgIGZvciAoZGVjb25waWw9IGRlY29uZmlndXJlOworICAgICAgIGRlY29ucGlsOworICAgICAgIGRlY29ucGlsPSBkZWNvbnBpbHRlbXApIHsKKyAgICBkZWNvbnBpbHRlbXA9IGRlY29ucGlsLT5uZXh0OworICAgIGZyZWUoZGVjb25waWwpOworICB9CisgIGRlY29uZmlndXJlID0gTlVMTDsKKyAgY2xlYXJfaXN0b2JlcygpOworCisgIGlmICghd2FudHRvaW5zdGFsbChwa2cpKSB7CisgICAgICBwb3BfY2xlYW51cChlaGZsYWdfbm9ybWFsdGlkeSk7CisgICAgICByZXR1cm47CisgIH0KKworICAvKiBDaGVjayBpZiBhbnl0aGluZyBpcyBpbnN0YWxsZWQgdGhhdCB3ZSBjb25mbGljdCB3aXRoLCBvciBub3QgaW5zdGFsbGVkCisgICAqIHRoYXQgd2UgbmVlZC4gKi8KKyAgcGtnLT5jbGllbnRkYXRhLT5pc3RvYmU9IGl0Yl9pbnN0YWxsbmV3OworCisgIGZvciAoZHNlYXJjaD0gcGtnLT5hdmFpbGFibGUuZGVwZW5kczsgZHNlYXJjaDsgZHNlYXJjaD0gZHNlYXJjaC0+bmV4dCkgeworICAgIHN3aXRjaCAoZHNlYXJjaC0+dHlwZSkgeworICAgIGNhc2UgZGVwX2NvbmZsaWN0czoKKyAgICAgIC8qIExvb2sgZm9yIHRoaW5ncyB3ZSBjb25mbGljdCB3aXRoLiAqLworICAgICAgY2hlY2tfY29uZmxpY3QoZHNlYXJjaCwgcGtnLCBwZmlsZW5hbWUpOworICAgICAgYnJlYWs7CisgICAgY2FzZSBkZXBfYnJlYWtzOgorICAgICAgLyogTG9vayBmb3IgdGhpbmdzIHdlIGJyZWFrLiAqLworICAgICAgY2hlY2tfYnJlYWtzKGRzZWFyY2gsIHBrZywgcGZpbGVuYW1lKTsKKyAgICAgIGJyZWFrOworICAgIGNhc2UgZGVwX3Byb3ZpZGVzOgorICAgICAgLyogTG9vayBmb3IgdGhpbmdzIHRoYXQgY29uZmxpY3Qgd2l0aCB3aGF0IHdlIHByb3ZpZGUuICovCisgICAgICBmb3IgKHBzZWFyY2ggPSBkc2VhcmNoLT5saXN0LT5lZC0+aW5zdGFsbGVkLmRlcGVuZGVkOworICAgICAgICAgICBwc2VhcmNoOworICAgICAgICAgICBwc2VhcmNoID0gcHNlYXJjaC0+cmV2X25leHQpIHsKKyAgICAgICAgaWYgKHBzZWFyY2gtPnVwLT50eXBlICE9IGRlcF9jb25mbGljdHMpCisgICAgICAgICAgY29udGludWU7CisgICAgICAgIGNoZWNrX2NvbmZsaWN0KHBzZWFyY2gtPnVwLCBwa2csIHBmaWxlbmFtZSk7CisgICAgICB9CisgICAgICBicmVhazsKKyAgICBjYXNlIGRlcF9zdWdnZXN0czoKKyAgICBjYXNlIGRlcF9yZWNvbW1lbmRzOgorICAgIGNhc2UgZGVwX2RlcGVuZHM6CisgICAgY2FzZSBkZXBfcmVwbGFjZXM6CisgICAgY2FzZSBkZXBfZW5oYW5jZXM6CisgICAgICAvKiBJZ25vcmUgdGhlc2UgaGVyZS4gKi8KKyAgICAgIGJyZWFrOworICAgIGNhc2UgZGVwX3ByZWRlcGVuZHM6CisgICAgICBpZiAoIWRlcGlzb2soZHNlYXJjaCwgJmRlcHByb2J3aHksIE5VTEwsICZmaXhieXRyaWdhdywgdHJ1ZSkpIHsKKyAgICAgICAgaWYgKGZpeGJ5dHJpZ2F3KSB7CisgICAgICAgICAgd2hpbGUgKGZpeGJ5dHJpZ2F3LT50cmlnYXcuaGVhZCkKKyAgICAgICAgICAgIHRyaWdwcm9jKGZpeGJ5dHJpZ2F3LT50cmlnYXcuaGVhZC0+cGVuZCk7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgdmFyYnVmX2VuZF9zdHIoJmRlcHByb2J3aHkpOworICAgICAgICAgIGZwcmludGYoc3RkZXJyLCBfKCJkcGtnOiByZWdhcmRpbmcgJXMgY29udGFpbmluZyAlcywgcHJlLWRlcGVuZGVuY3kgcHJvYmxlbTpcbiVzIiksCisgICAgICAgICAgICAgICAgICBwZmlsZW5hbWUsIHBrZy0+bmFtZSwgZGVwcHJvYndoeS5idWYpOworICAgICAgICAgIGlmICghZm9yY2VfZGVwZW5kcyhkc2VhcmNoLT5saXN0KSkKKyAgICAgICAgICAgIG9oc2hpdChfKCJwcmUtZGVwZW5kZW5jeSBwcm9ibGVtIC0gbm90IGluc3RhbGxpbmcgJS4yNTBzIikscGtnLT5uYW1lKTsKKyAgICAgICAgICB3YXJuaW5nKF8oImlnbm9yaW5nIHByZS1kZXBlbmRlbmN5IHByb2JsZW0hIikpOworICAgICAgICB9CisgICAgICB9CisgICAgfQorICB9CisgIC8qIExvb2sgZm9yIHRoaW5ncyB0aGF0IGNvbmZsaWN0IHdpdGggdXMuICovCisgIGZvciAocHNlYXJjaCA9IHBrZy0+aW5zdGFsbGVkLmRlcGVuZGVkOyBwc2VhcmNoOyBwc2VhcmNoID0gcHNlYXJjaC0+cmV2X25leHQpIHsKKyAgICBpZiAocHNlYXJjaC0+dXAtPnR5cGUgIT0gZGVwX2NvbmZsaWN0cykgY29udGludWU7CisgICAgY2hlY2tfY29uZmxpY3QocHNlYXJjaC0+dXAsIHBrZywgcGZpbGVuYW1lKTsKKyAgfQorCisgIGVuc3VyZV9hbGxpbnN0ZmlsZXNfYXZhaWxhYmxlKCk7CisgIGZpbGVzZGJpbml0KCk7CisgIHRyaWdfZmlsZV9pbnRlcmVzdHNfZW5zdXJlKCk7CisKKyAgaWYgKHBrZy0+c3RhdHVzICE9IHN0YXRfbm90aW5zdGFsbGVkICYmIHBrZy0+c3RhdHVzICE9IHN0YXRfY29uZmlnZmlsZXMpIHsKKyAgICBwcmludGYoXygiUHJlcGFyaW5nIHRvIHJlcGxhY2UgJXMgJXMgKHVzaW5nICVzKSAuLi5cbiIpLAorICAgICAgICAgICBwa2ctPm5hbWUsCisgICAgICAgICAgIHZlcnNpb25kZXNjcmliZSgmcGtnLT5pbnN0YWxsZWQudmVyc2lvbix2ZGV3X25vbmFtYmlnKSwKKyAgICAgICAgICAgcGZpbGVuYW1lKTsKKyAgICBsb2dfYWN0aW9uKCJ1cGdyYWRlIiwgcGtnKTsKKyAgfSBlbHNlIHsKKyAgICBwcmludGYoXygiVW5wYWNraW5nICVzIChmcm9tICVzKSAuLi5cbiIpLHBrZy0+bmFtZSxwZmlsZW5hbWUpOworICAgIGxvZ19hY3Rpb24oImluc3RhbGwiLCBwa2cpOworICB9CisKKyAgaWYgKGZfbm9hY3QpIHsKKyAgICBwb3BfY2xlYW51cChlaGZsYWdfbm9ybWFsdGlkeSk7CisgICAgcmV0dXJuOworICB9CisKKyAgLyoKKyAgICogT0ssIHdlJ3JlIGdvaW5nIGFoZWFkLgorICAgKi8KKworICB0cmlnX2FjdGl2YXRlX3BhY2thZ2Vwcm9jZXNzaW5nKHBrZyk7CisgIHN0cmNweShjaWRpcnJlc3QsIFRSSUdHRVJTQ0lGSUxFKTsKKyAgdHJpZ19wYXJzZV9jaShjaWRpciwgTlVMTCwgdHJpZ19jaWNiX3N0YXR1c2NoYW5nZV9hY3RpdmF0ZSwgcGtnKTsKKworICAvKiBSZWFkIHRoZSBjb25mZmlsZXMsIGFuZCBjb3B5IHRoZSBoYXNoZXMgYWNyb3NzLiAqLworICBuZXdjb25mZmlsZXMgPSBOVUxMOworICBuZXdjb25mZmlsZXNsYXN0cCA9ICZuZXdjb25mZmlsZXM7CisgIHB1c2hfY2xlYW51cChjdV9maWxlc2xpc3QsIH4wLCBOVUxMLCAwLCAwKTsKKyAgc3RyY3B5KGNpZGlycmVzdCxDT05GRklMRVNGSUxFKTsKKyAgY29uZmY9IGZvcGVuKGNpZGlyLCJyIik7CisgIGlmIChjb25mZikgeworICAgIHB1c2hfY2xlYW51cChjdV9jbG9zZXN0cmVhbSwgZWhmbGFnX2JvbWJvdXQsIE5VTEwsIDAsIDEsICh2b2lkICopY29uZmYpOworICAgIHdoaWxlIChmZ2V0cyhjb25mZmlsZW5hbWVidWYsTUFYQ09ORkZJTEVOQU1FLTIsY29uZmYpKSB7CisgICAgICBzdHJ1Y3QgZmlsZXBhY2thZ2VzX2l0ZXJhdG9yICppdGVyOworCisgICAgICBwPSBjb25mZmlsZW5hbWVidWYgKyBzdHJsZW4oY29uZmZpbGVuYW1lYnVmKTsKKyAgICAgIGFzc2VydChwICE9IGNvbmZmaWxlbmFtZWJ1Zik7CisgICAgICBpZiAocFstMV0gIT0gJ1xuJykKKyAgICAgICAgb2hzaGl0KF8oIm5hbWUgb2YgY29uZmZpbGUgKHN0YXJ0aW5nIGAlLjI1MHMnKSBpcyB0b28gbG9uZyAoPiVkIGNoYXJhY3RlcnMpIiksCisgICAgICAgICAgICAgICBjb25mZmlsZW5hbWVidWYsIE1BWENPTkZGSUxFTkFNRSk7CisgICAgICB3aGlsZSAocCA+IGNvbmZmaWxlbmFtZWJ1ZiAmJiBpc3NwYWNlKHBbLTFdKSkgLS1wOworICAgICAgaWYgKHAgPT0gY29uZmZpbGVuYW1lYnVmKSBjb250aW51ZTsKKyAgICAgICpwID0gJ1wwJzsKKyAgICAgIG5hbWVub2RlPSBmaW5kbmFtZW5vZGUoY29uZmZpbGVuYW1lYnVmLCAwKTsKKyAgICAgIG5hbWVub2RlLT5vbGRoYXNoPSBORVdDT05GRklMRUZMQUc7CisgICAgICBuZXdjb25mZj0gbmV3Y29uZmZfYXBwZW5kKCZuZXdjb25mZmlsZXNsYXN0cCwgbmFtZW5vZGUpOworCisgICAgICAvKiBMZXQncyBzZWUgaWYgYW55IHBhY2thZ2VzIGhhdmUgdGhpcyBmaWxlLiBJZiB0aGV5IGRvIHdlCisgICAgICAgKiBjaGVjayB0byBzZWUgaWYgdGhleSBsaXN0ZWQgaXQgYXMgYSBjb25mZmlsZSwgYW5kIGlmIHRoZXkgZGlkCisgICAgICAgKiB3ZSBjb3B5IHRoZSBoYXNoIGFjcm9zcy4gU2luY2UgKGZvciBwbGFpbiBmaWxlIGNvbmZmaWxlcywKKyAgICAgICAqIHdoaWNoIGlzIHRoZSBvbmx5IGtpbmQgd2UgYXJlIHN1cHBvc2VkIHRvIGhhdmUpIHRoZXJlIHdpbGwKKyAgICAgICAqIG9ubHkgYmUgb25lIHBhY2thZ2Ugd2hpY2gg4oCYaGFz4oCZIHRoZSBmaWxlLCB0aGlzIHdpbGwgdXN1YWxseQorICAgICAgICogbWVhbiB3ZSBvbmx5IGxvb2sgaW4gdGhlIHBhY2thZ2Ugd2hpY2ggd2UncmUgaW5zdGFsbGluZyBub3cuCisgICAgICAgKiBUaGUg4oCYY29uZmZpbGVz4oCZIGRhdGEgaW4gdGhlIHN0YXR1cyBmaWxlIGlzIGlnbm9yZWQgd2hlbiBhCisgICAgICAgKiBwYWNrYWdlIGlzbid0IGFsc28gbGlzdGVkIGluIHRoZSBmaWxlIG93bmVyc2hpcCBkYXRhYmFzZSBhcworICAgICAgICogaGF2aW5nIHRoYXQgZmlsZS4gSWYgc2V2ZXJhbCBwYWNrYWdlcyBhcmUgbGlzdGVkIGFzIG93bmluZworICAgICAgICogdGhlIGZpbGUgd2UgcGljayBvbmUgYXQgcmFuZG9tLiAqLworICAgICAgc2VhcmNoY29uZmYgPSBOVUxMOworCisgICAgICBpdGVyID0gZmlsZXBhY2thZ2VzX2l0ZXJfbmV3KG5ld2NvbmZmLT5uYW1lbm9kZSk7CisgICAgICB3aGlsZSAoKG90aGVycGtnID0gZmlsZXBhY2thZ2VzX2l0ZXJfbmV4dChpdGVyKSkpIHsKKyAgICAgICAgZGVidWcoZGJnX2NvbmZmZGV0YWlsLAorICAgICAgICAgICAgICAicHJvY2Vzc19hcmNoaXZlIGNvbmZmaWxlIGAlcycgaW4gcGFja2FnZSAlcyAtIGNvbmZmID8iLAorICAgICAgICAgICAgICBuZXdjb25mZi0+bmFtZW5vZGUtPm5hbWUsIG90aGVycGtnLT5uYW1lKTsKKyAgICAgICAgZm9yIChzZWFyY2hjb25mZiA9IG90aGVycGtnLT5pbnN0YWxsZWQuY29uZmZpbGVzOworICAgICAgICAgICAgIHNlYXJjaGNvbmZmICYmIHN0cmNtcChuZXdjb25mZi0+bmFtZW5vZGUtPm5hbWUsIHNlYXJjaGNvbmZmLT5uYW1lKTsKKyAgICAgICAgICAgICBzZWFyY2hjb25mZiA9IHNlYXJjaGNvbmZmLT5uZXh0KQorICAgICAgICAgIGRlYnVnKGRiZ19jb25mZmRldGFpbCwKKyAgICAgICAgICAgICAgICAicHJvY2Vzc19hcmNoaXZlIGNvbmZmaWxlIGAlcycgaW4gcGFja2FnZSAlcyAtIGNvbmZmID8gbm90IGAlcyciLAorICAgICAgICAgICAgICAgIG5ld2NvbmZmLT5uYW1lbm9kZS0+bmFtZSwgb3RoZXJwa2ctPm5hbWUsIHNlYXJjaGNvbmZmLT5uYW1lKTsKKyAgICAgICAgaWYgKHNlYXJjaGNvbmZmKSB7CisgICAgICAgICAgZGVidWcoZGJnX2NvbmZmLAorICAgICAgICAgICAgICAgICJwcm9jZXNzX2FyY2hpdmUgY29uZmZpbGUgYCVzJyBwYWNrYWdlPSVzICVzIGhhc2g9JXMiLAorICAgICAgICAgICAgICAgIG5ld2NvbmZmLT5uYW1lbm9kZS0+bmFtZSwgb3RoZXJwa2ctPm5hbWUsCisgICAgICAgICAgICAgICAgb3RoZXJwa2cgPT0gcGtnID8gInNhbWUiIDogImRpZmZlcmVudCEiLAorICAgICAgICAgICAgICAgIHNlYXJjaGNvbmZmLT5oYXNoKTsKKyAgICAgICAgICBpZiAob3RoZXJwa2cgPT0gcGtnKQorICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIH0KKyAgICAgIH0KKyAgICAgIGZpbGVwYWNrYWdlc19pdGVyX2ZyZWUoaXRlcik7CisKKyAgICAgIGlmIChzZWFyY2hjb25mZikgeworICAgICAgICBuZXdjb25mZi0+bmFtZW5vZGUtPm9sZGhhc2g9IHNlYXJjaGNvbmZmLT5oYXNoOworCS8qIFdlIGRvbid0IGNvcHkg4oCYb2Jzb2xldGXigJk7IGl0J3Mgbm90IG9ic29sZXRlIGluIHRoZSBuZXcgcGFja2FnZS4gKi8KKyAgICAgIH0gZWxzZSB7CisgICAgICAgIGRlYnVnKGRiZ19jb25mZiwicHJvY2Vzc19hcmNoaXZlIGNvbmZmaWxlIGAlcycgbm8gcGFja2FnZSwgbm8gaGFzaCIsCisgICAgICAgICAgICAgIG5ld2NvbmZmLT5uYW1lbm9kZS0+bmFtZSk7CisgICAgICB9CisgICAgICBuZXdjb25mZi0+bmFtZW5vZGUtPmZsYWdzIHw9IGZubmZfbmV3X2NvbmZmOworICAgIH0KKyAgICBpZiAoZmVycm9yKGNvbmZmKSkgb2hzaGl0ZShfKCJyZWFkIGVycm9yIGluICUuMjUwcyIpLGNpZGlyKTsKKyAgICBwb3BfY2xlYW51cChlaGZsYWdfbm9ybWFsdGlkeSk7IC8qIGNvbmZmID0gZm9wZW4oKSAqLworICAgIGlmIChmY2xvc2UoY29uZmYpKSBvaHNoaXRlKF8oImVycm9yIGNsb3NpbmcgJS4yNTBzIiksY2lkaXIpOworICB9IGVsc2UgeworICAgIGlmIChlcnJubyAhPSBFTk9FTlQpIG9oc2hpdGUoXygiZXJyb3IgdHJ5aW5nIHRvIG9wZW4gJS4yNTBzIiksY2lkaXIpOworICB9CisKKyAgLyogQWxsIHRoZSBvbGQgY29uZmZpbGVzIGFyZSBtYXJrZWQgd2l0aCBhIGZsYWcsIHNvIHRoYXQgd2UgZG9uJ3QgZGVsZXRlCisgICAqIHRoZW0gaWYgdGhleSBzZWVtIHRvIGRpc2FwcGVhciBjb21wbGV0ZWx5LiAqLworICBvbGRjb25mZnNldGZsYWdzKHBrZy0+aW5zdGFsbGVkLmNvbmZmaWxlcyk7CisgIGZvciAoaSA9IDAgOyBpIDwgY2ZsaWN0X2luZGV4IDsgaSsrKSB7CisgICAgb2xkY29uZmZzZXRmbGFncyhjb25mbGljdG9yW2ldLT5pbnN0YWxsZWQuY29uZmZpbGVzKTsKKyAgfQorCisgIG9sZHZlcnNpb25zdGF0dXM9IHBrZy0+c3RhdHVzOworCisgIGFzc2VydChvbGR2ZXJzaW9uc3RhdHVzIDw9IHN0YXRfaW5zdGFsbGVkKTsKKyAgZGVidWcoZGJnX2dlbmVyYWwsInByb2Nlc3NfYXJjaGl2ZSBvbGR2ZXJzaW9uc3RhdHVzPSVzIiwKKyAgICAgICAgc3RhdHVzc3RyaW5nc1tvbGR2ZXJzaW9uc3RhdHVzXSk7CisKKyAgaWYgKG9sZHZlcnNpb25zdGF0dXMgPT0gc3RhdF9oYWxmY29uZmlndXJlZCB8fAorICAgICAgb2xkdmVyc2lvbnN0YXR1cyA9PSBzdGF0X3RyaWdnZXJzYXdhaXRlZCB8fAorICAgICAgb2xkdmVyc2lvbnN0YXR1cyA9PSBzdGF0X3RyaWdnZXJzcGVuZGluZyB8fAorICAgICAgb2xkdmVyc2lvbnN0YXR1cyA9PSBzdGF0X2luc3RhbGxlZCkgeworICAgIHBrZy0+ZWZsYWcgfD0gZWZsYWdfcmVpbnN0cmVxOworICAgIHBrZy0+c3RhdHVzPSBzdGF0X2hhbGZjb25maWd1cmVkOworICAgIG1vZHN0YXRkYl9ub3RlKHBrZyk7CisgICAgcHVzaF9jbGVhbnVwKGN1X3ByZXJtdXBncmFkZSwgfmVoZmxhZ19ub3JtYWx0aWR5LCBOVUxMLCAwLCAxLCAodm9pZCAqKXBrZyk7CisgICAgaWYgKHZlcnNpb25jb21wYXJlKCZwa2ctPmF2YWlsYWJsZS52ZXJzaW9uLAorICAgICAgICAgICAgICAgICAgICAgICAmcGtnLT5pbnN0YWxsZWQudmVyc2lvbikgPj0gMCkgLyogVXBncmFkZSBvciByZWluc3RhbGwgKi8KKyAgICAgIG1haW50YWluZXJfc2NyaXB0X2FsdGVybmF0aXZlKHBrZywgUFJFUk1GSUxFLCAicHJlLXJlbW92YWwiLCBjaWRpciwgY2lkaXJyZXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInVwZ3JhZGUiLCAiZmFpbGVkLXVwZ3JhZGUiKTsKKyAgICBlbHNlIC8qIERvd25ncmFkZSA9PiBubyBmYWxsYmFjayAqLworICAgICAgbWFpbnRhaW5lcl9zY3JpcHRfaW5zdGFsbGVkKHBrZywgUFJFUk1GSUxFLCAicHJlLXJlbW92YWwiLCAidXBncmFkZSIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmVyc2lvbmRlc2NyaWJlKCZwa2ctPmF2YWlsYWJsZS52ZXJzaW9uLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2ZGV3X25vbmFtYmlnKSwgTlVMTCk7CisgICAgcGtnLT5zdGF0dXM9IHN0YXRfdW5wYWNrZWQ7CisgICAgb2xkdmVyc2lvbnN0YXR1cz0gc3RhdF91bnBhY2tlZDsKKyAgICBtb2RzdGF0ZGJfbm90ZShwa2cpOworICB9CisKKyAgZm9yIChkZWNvbnBpbD0gZGVjb25maWd1cmU7IGRlY29ucGlsOyBkZWNvbnBpbD0gZGVjb25waWwtPm5leHQpIHsKKyAgICBzdHJ1Y3QgcGtnaW5mbyAqcmVtb3ZpbmcgPSBkZWNvbnBpbC0+cGtnX3JlbW92YWw7CisKKyAgICBpZiAocmVtb3ZpbmcpCisgICAgICBwcmludGYoXygiRGUtY29uZmlndXJpbmcgJXMsIHRvIGFsbG93IHJlbW92YWwgb2YgJXMgLi4uXG4iKSwKKyAgICAgICAgICAgICBkZWNvbnBpbC0+cGtnLT5uYW1lLCByZW1vdmluZy0+bmFtZSk7CisgICAgZWxzZQorICAgICAgcHJpbnRmKF8oIkRlLWNvbmZpZ3VyaW5nICVzIC4uLlxuIiksIGRlY29ucGlsLT5wa2ctPm5hbWUpOworCisgICAgdHJpZ19hY3RpdmF0ZV9wYWNrYWdlcHJvY2Vzc2luZyhkZWNvbnBpbC0+cGtnKTsKKyAgICBkZWNvbnBpbC0+cGtnLT5zdGF0dXM9IHN0YXRfaGFsZmNvbmZpZ3VyZWQ7CisgICAgbW9kc3RhdGRiX25vdGUoZGVjb25waWwtPnBrZyk7CisKKyAgICAvKiBUaGlzIG1lYW5zIHRoYXQgd2UgKmVpdGhlciogZ28gYW5kIHJ1biBwb3N0aW5zdCBhYm9ydC1kZWNvbmZpZ3VyZSwKKyAgICAgKiAqb3IqIHF1ZXVlIHRoZSBwYWNrYWdlIGZvciBsYXRlciBjb25maWd1cmUgcHJvY2Vzc2luZywgZGVwZW5kaW5nCisgICAgICogb24gd2hpY2ggZXJyb3IgY2xlYW51cCByb3V0ZSBnZXRzIHRha2VuLiAqLworICAgIHB1c2hfY2xlYW51cChjdV9wcmVybWRlY29uZmlndXJlLCB+ZWhmbGFnX25vcm1hbHRpZHksCisgICAgICAgICAgICAgICAgIG9rX3ByZXJtZGVjb25maWd1cmUsIGVoZmxhZ19ub3JtYWx0aWR5LAorICAgICAgICAgICAgICAgICAzLCAodm9pZCopZGVjb25waWwtPnBrZywgKHZvaWQqKXJlbW92aW5nLCAodm9pZCopcGtnKTsKKworICAgIGlmIChyZW1vdmluZykgeworICAgICAgbWFpbnRhaW5lcl9zY3JpcHRfaW5zdGFsbGVkKGRlY29ucGlsLT5wa2csIFBSRVJNRklMRSwgInByZS1yZW1vdmFsIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVjb25maWd1cmUiLCAiaW4tZmF2b3VyIiwgcGtnLT5uYW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZlcnNpb25kZXNjcmliZSgmcGtnLT5hdmFpbGFibGUudmVyc2lvbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmRld19ub25hbWJpZyksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInJlbW92aW5nIiwgcmVtb3ZpbmctPm5hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmVyc2lvbmRlc2NyaWJlKCZyZW1vdmluZy0+aW5zdGFsbGVkLnZlcnNpb24sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZkZXdfbm9uYW1iaWcpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwpOworICAgIH0gZWxzZSB7CisgICAgICBtYWludGFpbmVyX3NjcmlwdF9pbnN0YWxsZWQoZGVjb25waWwtPnBrZywgUFJFUk1GSUxFLCAicHJlLXJlbW92YWwiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkZWNvbmZpZ3VyZSIsICJpbi1mYXZvdXIiLCBwa2ctPm5hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmVyc2lvbmRlc2NyaWJlKCZwa2ctPmF2YWlsYWJsZS52ZXJzaW9uLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2ZGV3X25vbmFtYmlnKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMKTsKKyAgICB9CisgIH0KKworICBmb3IgKGkgPSAwIDsgaSA8IGNmbGljdF9pbmRleDsgaSsrKSB7CisgICAgaWYgKCEoY29uZmxpY3RvcltpXS0+c3RhdHVzID09IHN0YXRfaGFsZmNvbmZpZ3VyZWQgfHwKKyAgICAgICAgICBjb25mbGljdG9yW2ldLT5zdGF0dXMgPT0gc3RhdF90cmlnZ2Vyc2F3YWl0ZWQgfHwKKyAgICAgICAgICBjb25mbGljdG9yW2ldLT5zdGF0dXMgPT0gc3RhdF90cmlnZ2Vyc3BlbmRpbmcgfHwKKyAgICAgICAgICBjb25mbGljdG9yW2ldLT5zdGF0dXMgPT0gc3RhdF9pbnN0YWxsZWQpKSBjb250aW51ZTsKKyAgICB0cmlnX2FjdGl2YXRlX3BhY2thZ2Vwcm9jZXNzaW5nKGNvbmZsaWN0b3JbaV0pOworICAgIGNvbmZsaWN0b3JbaV0tPnN0YXR1cz0gc3RhdF9oYWxmY29uZmlndXJlZDsKKyAgICBtb2RzdGF0ZGJfbm90ZShjb25mbGljdG9yW2ldKTsKKyAgICBwdXNoX2NsZWFudXAoY3VfcHJlcm1pbmZhdm91ciwgfmVoZmxhZ19ub3JtYWx0aWR5LCBOVUxMLCAwLAorICAgICAgICAgICAgICAgICAyLCh2b2lkKiljb25mbGljdG9yW2ldLCh2b2lkKilwa2cpOworICAgIG1haW50YWluZXJfc2NyaXB0X2luc3RhbGxlZChjb25mbGljdG9yW2ldLCBQUkVSTUZJTEUsICJwcmUtcmVtb3ZhbCIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJyZW1vdmUiLCAiaW4tZmF2b3VyIiwgcGtnLT5uYW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2ZXJzaW9uZGVzY3JpYmUoJnBrZy0+YXZhaWxhYmxlLnZlcnNpb24sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2ZGV3X25vbmFtYmlnKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCk7CisgICAgY29uZmxpY3RvcltpXS0+c3RhdHVzPSBzdGF0X2hhbGZpbnN0YWxsZWQ7CisgICAgbW9kc3RhdGRiX25vdGUoY29uZmxpY3RvcltpXSk7CisgIH0KKworICBwa2ctPmVmbGFnIHw9IGVmbGFnX3JlaW5zdHJlcTsKKyAgaWYgKHBrZy0+c3RhdHVzID09IHN0YXRfbm90aW5zdGFsbGVkKQorICAgIHBrZy0+aW5zdGFsbGVkLnZlcnNpb249IHBrZy0+YXZhaWxhYmxlLnZlcnNpb247CisgIHBrZy0+c3RhdHVzPSBzdGF0X2hhbGZpbnN0YWxsZWQ7CisgIG1vZHN0YXRkYl9ub3RlKHBrZyk7CisgIGlmIChvbGR2ZXJzaW9uc3RhdHVzID09IHN0YXRfbm90aW5zdGFsbGVkKSB7CisgICAgcHVzaF9jbGVhbnVwKGN1X3ByZWluc3R2ZXJ5bmV3LCB+ZWhmbGFnX25vcm1hbHRpZHksIE5VTEwsIDAsCisgICAgICAgICAgICAgICAgIDMsKHZvaWQqKXBrZywodm9pZCopY2lkaXIsKHZvaWQqKWNpZGlycmVzdCk7CisgICAgbWFpbnRhaW5lcl9zY3JpcHRfbmV3KHBrZywgUFJFSU5TVEZJTEUsICJwcmUtaW5zdGFsbGF0aW9uIiwgY2lkaXIsIGNpZGlycmVzdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgImluc3RhbGwiLCBOVUxMKTsKKyAgfSBlbHNlIGlmIChvbGR2ZXJzaW9uc3RhdHVzID09IHN0YXRfY29uZmlnZmlsZXMpIHsKKyAgICBwdXNoX2NsZWFudXAoY3VfcHJlaW5zdG5ldywgfmVoZmxhZ19ub3JtYWx0aWR5LCBOVUxMLCAwLAorICAgICAgICAgICAgICAgICAzLCh2b2lkKilwa2csKHZvaWQqKWNpZGlyLCh2b2lkKiljaWRpcnJlc3QpOworICAgIG1haW50YWluZXJfc2NyaXB0X25ldyhwa2csIFBSRUlOU1RGSUxFLCAicHJlLWluc3RhbGxhdGlvbiIsIGNpZGlyLCBjaWRpcnJlc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICJpbnN0YWxsIiwgdmVyc2lvbmRlc2NyaWJlKCZwa2ctPmluc3RhbGxlZC52ZXJzaW9uLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2ZGV3X25vbmFtYmlnKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCk7CisgIH0gZWxzZSB7CisgICAgcHVzaF9jbGVhbnVwKGN1X3ByZWluc3R1cGdyYWRlLCB+ZWhmbGFnX25vcm1hbHRpZHksIE5VTEwsIDAsCisgICAgICAgICAgICAgICAgIDQsKHZvaWQqKXBrZywodm9pZCopY2lkaXIsKHZvaWQqKWNpZGlycmVzdCwodm9pZCopJm9sZHZlcnNpb25zdGF0dXMpOworICAgIG1haW50YWluZXJfc2NyaXB0X25ldyhwa2csIFBSRUlOU1RGSUxFLCAicHJlLWluc3RhbGxhdGlvbiIsIGNpZGlyLCBjaWRpcnJlc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICJ1cGdyYWRlIiwgdmVyc2lvbmRlc2NyaWJlKCZwa2ctPmluc3RhbGxlZC52ZXJzaW9uLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2ZGV3X25vbmFtYmlnKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCk7CisgICAgcHJpbnRmKF8oIlVucGFja2luZyByZXBsYWNlbWVudCAlLjI1MHMgLi4uXG4iKSxwa2ctPm5hbWUpOworICB9CisKKyAgLyoKKyAgICogTm93IHdlIHVucGFjayB0aGUgYXJjaGl2ZSwgYmFja2luZyB0aGluZ3MgdXAgYXMgd2UgZ28uCisgICAqIEZvciBlYWNoIGZpbGUsIHdlIGNoZWNrIHRvIHNlZSBpZiBpdCBhbHJlYWR5IGV4aXN0cy4KKyAgICogVGhlcmUgYXJlIHNldmVyYWwgcG9zc2liaWxpdGllczoKKyAgICoKKyAgICogKyBXZSBhcmUgdHJ5aW5nIHRvIGluc3RhbGwgYSBub24tZGlyZWN0b3J5IC4uLgorICAgKiAgLSBJdCBkb2Vzbid0IGV4aXN0LiBJbiB0aGlzIGNhc2Ugd2Ugc2ltcGx5IGV4dHJhY3QgaXQuCisgICAqICAtIEl0IGlzIGEgcGxhaW4gZmlsZSwgZGV2aWNlLCBzeW1saW5rLCAmYy4gV2UgZG8gYW4g4oCYYXRvbWljCisgICAqICAgIG92ZXJ3cml0ZeKAmSB1c2luZyBsaW5rKCkgYW5kIHJlbmFtZSgpLCBidXQgbGVhdmUgYSBiYWNrdXAgY29weS4KKyAgICogICAgTGF0ZXIsIHdoZW4gd2UgZGVsZXRlIHRoZSBiYWNrdXAsIHdlIHJlbW92ZSBpdCBmcm9tIGFueSBvdGhlcgorICAgKiAgICBwYWNrYWdlcycgbGlzdHMuCisgICAqICAtIEl0IGlzIGEgZGlyZWN0b3J5LiBJbiB0aGlzIGNhc2UgaXQgZGVwZW5kcyBvbiB3aGV0aGVyIHdlJ3JlCisgICAqICAgIHRyeWluZyB0byBpbnN0YWxsIGEgc3ltbGluayBvciBzb21ldGhpbmcgZWxzZS4KKyAgICogICA9IElmIHdlJ3JlIG5vdCB0cnlpbmcgdG8gaW5zdGFsbCBhIHN5bWxpbmsgd2UgbW92ZSB0aGUgZGlyZWN0b3J5CisgICAqICAgICBhc2lkZSBhbmQgZXh0cmFjdCB0aGUgbm9kZS4gTGF0ZXIsIHdoZW4gd2UgcmVjdXJzaXZlbHkgcmVtb3ZlCisgICAqICAgICB0aGUgYmFja2VkLXVwIGRpcmVjdG9yeSwgd2UgcmVtb3ZlIGl0IGZyb20gYW55IG90aGVyIHBhY2thZ2VzJworICAgKiAgICAgbGlzdHMuCisgICAqICAgPSBJZiB3ZSBhcmUgdHJ5aW5nIHRvIGluc3RhbGwgYSBzeW1saW5rIHdlIGRvIG5vdGhpbmcgLSBpZSwKKyAgICogICAgIGRwa2cgd2lsbCBuZXZlciByZXBsYWNlIGEgZGlyZWN0b3J5IHRyZWUgd2l0aCBhIHN5bWxpbmsuIFRoaXMKKyAgICogICAgIGlzIHRvIGF2b2lkIGVtYmFycmFzc2luZyBlZmZlY3RzIHN1Y2ggYXMgcmVwbGFjaW5nIGEgZGlyZWN0b3J5CisgICAqICAgICB0cmVlIHdpdGggYSBsaW5rIHRvIGEgbGluayB0byB0aGUgb3JpZ2luYWwgZGlyZWN0b3J5IHRyZWUuCisgICAqICsgV2UgYXJlIHRyeWluZyB0byBpbnN0YWxsIGEgZGlyZWN0b3J5IC4uLgorICAgKiAgLSBJdCBkb2Vzbid0IGV4aXN0LiBXZSBjcmVhdGUgaXQgd2l0aCB0aGUgYXBwcm9wcmlhdGUgbW9kZXMuCisgICAqICAtIEl0IGV4aXN0cyBhcyBhIGRpcmVjdG9yeSBvciBhIHN5bWxpbmsgdG8gb25lLiBXZSBkbyBub3RoaW5nLgorICAgKiAgLSBJdCBpcyBhIHBsYWluIGZpbGUgb3IgYSBzeW1saW5rIChvdGhlciB0aGFuIHRvIGEgZGlyZWN0b3J5KS4KKyAgICogICAgV2UgbW92ZSBpdCBhc2lkZSBhbmQgY3JlYXRlIHRoZSBkaXJlY3RvcnkuIExhdGVyLCB3aGVuIHdlCisgICAqICAgIGRlbGV0ZSB0aGUgYmFja3VwLCB3ZSByZW1vdmUgaXQgZnJvbSBhbnkgb3RoZXIgcGFja2FnZXMnIGxpc3RzLgorICAgKgorICAgKiAgICAgICAgICAgICAgICAgICBJbnN0YWxsIG5vbi1kaXIgICBJbnN0YWxsIHN5bWxpbmsgICBJbnN0YWxsIGRpcgorICAgKiAgRXhpc3RzIG5vdCAgICAgICAgICAgICAgIFggICAgICAgICAgICAgICBYICAgICAgICAgICAgICAgIFgKKyAgICogIEZpbGUvbm9kZS9zeW1saW5rICAgICAgIExYUiAgICAgICAgICAgICBMWFIgICAgICAgICAgICAgIEJYUgorICAgKiAgRGlyZWN0b3J5ICAgICAgICAgICAgICAgQlhSICAgICAgICAgICAgICAtICAgICAgICAgICAgICAgIC0KKyAgICoKKyAgICogICAgWDogZXh0cmFjdCBmaWxlL25vZGUvbGluay9kaXJlY3RvcnkKKyAgICogICBMWDogYXRvbWljIG92ZXJ3cml0ZSBsZWF2aW5nIGJhY2t1cAorICAgKiAgICBCOiBvcmRpbmFyeSBiYWNrdXAKKyAgICogICAgUjogbGF0ZXIgcmVtb3ZlIGZyb20gb3RoZXIgcGFja2FnZXMnIGxpc3RzCisgICAqICAgIC06IGRvIG5vdGhpbmcKKyAgICoKKyAgICogQWZ0ZXIgd2UndmUgZG9uZSB0aGlzIHdlIGdvIHRocm91Z2ggdGhlIHJlbWFpbmluZyB0aGluZ3MgaW4gdGhlCisgICAqIGxpc3RzIG9mIHBhY2thZ2VzIHdlJ3JlIHRyeWluZyB0byByZW1vdmUgKGluY2x1ZGluZyB0aGUgb2xkCisgICAqIHZlcnNpb24gb2YgdGhlIGN1cnJlbnQgcGFja2FnZSkuIFRoaXMgaGFwcGVucyBpbiByZXZlcnNlIG9yZGVyLAorICAgKiBzbyB0aGF0IHdlIHByb2Nlc3MgZmlsZXMgYmVmb3JlIHRoZSBkaXJlY3RvcmllcyAob3Igc3ltbGlua3MtdG8tCisgICAqIGRpcmVjdG9yaWVzKSBjb250YWluaW5nIHRoZW0uCisgICAqCisgICAqICsgSWYgdGhlIHRoaW5nIGlzIGEgY29uZmZpbGUgdGhlbiB3ZSBsZWF2ZSBpdCBhbG9uZSBmb3IgdGhlIHB1cmdlCisgICAqICAgb3BlcmF0aW9uLgorICAgKiArIE90aGVyd2lzZSwgdGhlcmUgYXJlIHNldmVyYWwgcG9zc2liaWxpdGllcyB0b286CisgICAqICAtIFRoZSBsaXN0ZWQgdGhpbmcgZG9lcyBub3QgZXhpc3QuIFdlIGlnbm9yZSBpdC4KKyAgICogIC0gVGhlIGxpc3RlZCB0aGluZyBpcyBhIGRpcmVjdG9yeSBvciBhIHN5bWxpbmsgdG8gYSBkaXJlY3RvcnkuCisgICAqICAgIFdlIGRlbGV0ZSBpdCBvbmx5IGlmIGl0IGlzbid0IGxpc3RlZCBpbiBhbnkgb3RoZXIgcGFja2FnZS4KKyAgICogIC0gVGhlIGxpc3RlZCB0aGluZyBpcyBub3QgYSBkaXJlY3RvcnksIGJ1dCB3YXMgcGFydCBvZiB0aGUgcGFja2FnZQorICAgKiAgICB0aGF0IHdhcyB1cGdyYWRlZCwgd2UgY2hlY2sgdG8gbWFrZSBzdXJlIHRoZSBmaWxlcyBhcmVuJ3QgdGhlCisgICAqICAgIHNhbWUgb25lcyBmcm9tIHRoZSBvbGQgcGFja2FnZSBieSBjaGVja2luZyBkZXYvaW5vZGUKKyAgICogIC0gVGhlIGxpc3RlZCB0aGluZyBpcyBub3QgYSBkaXJlY3Rvcnkgb3IgYSBzeW1saW5rIHRvIG9uZSAoaWUsCisgICAqICAgIGl0J3MgYSBwbGFpbiBmaWxlLCBkZXZpY2UsIHBpcGUsICZjLCBvciBhIHN5bWxpbmsgdG8gb25lLCBvciBhCisgICAqICAgIGRhbmdsaW5nIHN5bWxpbmspLiBXZSBkZWxldGUgaXQuCisgICAqCisgICAqIFRoZSByZW1vdmVkIHBhY2thZ2VzJyBsaXN0IGJlY29tZXMgZW1wdHkgKG9mIGNvdXJzZSwgdGhlIG5ldworICAgKiB2ZXJzaW9uIG9mIHRoZSBwYWNrYWdlIHdlJ3JlIGluc3RhbGxpbmcgd2lsbCBoYXZlIGEgbmV3IGxpc3QsCisgICAqIHdoaWNoIHJlcGxhY2VzIHRoZSBvbGQgdmVyc2lvbidzIGxpc3QpLgorICAgKgorICAgKiBJZiBhdCBhbnkgc3RhZ2Ugd2UgcmVtb3ZlIGEgZmlsZSBmcm9tIGEgcGFja2FnZSdzIGxpc3QsIGFuZCB0aGUKKyAgICogcGFja2FnZSBpc24ndCBvbmUgd2UncmUgYWxyZWFkeSBwcm9jZXNzaW5nLCBhbmQgdGhlIHBhY2thZ2UncworICAgKiBsaXN0IGJlY29tZXMgZW1wdHkgYXMgYSByZXN1bHQsIHdlIOKAmHZhbmlzaOKAmSB0aGUgcGFja2FnZS4gVGhpcworICAgKiBtZWFucyB0aGF0IHdlIHJ1biBpdHMgcG9zdHJtIHdpdGggdGhlIOKAmGRpc2FwcGVhcuKAmSBhcmd1bWVudCwgYW5kCisgICAqIHB1dCB0aGUgcGFja2FnZSBpbiB0aGUg4oCYbm90LWluc3RhbGxlZOKAmSBzdGF0ZS4gSWYgaXQgaGFkIGFueQorICAgKiBjb25mZmlsZXMsIHRoZWlyIGhhc2hlcyBhbmQgb3duZXJzaGlwIHdpbGwgaGF2ZSBiZWVuIHRyYW5zZmVycmVkCisgICAqIGFscmVhZHksIHNvIHdlIGp1c3QgaWdub3JlIHRob3NlIGFuZCBmb3JnZXQgYWJvdXQgdGhlbSBmcm9tIHRoZQorICAgKiBwb2ludCBvZiB2aWV3IG9mIHRoZSBkaXNhcHBlYXJpbmcgcGFja2FnZS4KKyAgICoKKyAgICogTk9URSBUSEFUIFRIRSBPTEQgUE9TVFJNIElTIFJVTiBBRlRFUiBUSEUgTkVXIFBSRUlOU1QsIHNpbmNlIHRoZQorICAgKiBmaWxlcyBnZXQgcmVwbGFjZWQg4oCYYXMgd2UgZ2/igJkuCisgICAqLworCisgIG1fcGlwZShwMSk7CisgIHB1c2hfY2xlYW51cChjdV9jbG9zZXBpcGUsIGVoZmxhZ19ib21ib3V0LCBOVUxMLCAwLCAxLCAodm9pZCAqKSZwMVswXSk7CisgIHBpZCA9IHN1YnByb2NfZm9yaygpOworICBpZiAocGlkID09IDApIHsKKyAgICBtX2R1cDIocDFbMV0sMSk7IGNsb3NlKHAxWzBdKTsgY2xvc2UocDFbMV0pOworICAgIGV4ZWNscChCQUNLRU5ELCBCQUNLRU5ELCAiLS1mc3lzLXRhcmZpbGUiLCBmaWxlbmFtZSwgTlVMTCk7CisgICAgb2hzaGl0ZShfKCJ1bmFibGUgdG8gZXhlY3V0ZSAlcyAoJXMpIiksCisgICAgICAgICAgICBfKCJwYWNrYWdlIGZpbGVzeXN0ZW0gYXJjaGl2ZSBleHRyYWN0aW9uIiksIEJBQ0tFTkQpOworICB9CisgIGNsb3NlKHAxWzFdKTsKKyAgcDFbMV0gPSAtMTsKKworICBuZXdmaWxlc2xpc3QgPSBOVUxMOworICB0Yy5uZXdmaWxlc3AgPSAmbmV3ZmlsZXNsaXN0OworICBwdXNoX2NsZWFudXAoY3VfZmlsZXNsaXN0LCB+MCwgTlVMTCwgMCwgMCk7CisgIHRjLnBrZz0gcGtnOworICB0Yy5iYWNrZW5kcGlwZT0gcDFbMF07CisKKyAgciA9IHRhcl9leHRyYWN0b3IoJnRjLCAmdGYpOworICBpZiAocikgeworICAgIGlmIChlcnJubykgeworICAgICAgb2hzaGl0ZShfKCJlcnJvciByZWFkaW5nIGRwa2ctZGViIHRhciBvdXRwdXQiKSk7CisgICAgfSBlbHNlIHsKKyAgICAgIG9oc2hpdChfKCJjb3JydXB0ZWQgZmlsZXN5c3RlbSB0YXJmaWxlIC0gY29ycnVwdGVkIHBhY2thZ2UgYXJjaGl2ZSIpKTsKKyAgICB9CisgIH0KKyAgZmRfc2tpcChwMVswXSwgLTEsIF8oImRwa2ctZGViOiB6YXAgcG9zc2libGUgdHJhaWxpbmcgemVyb3MiKSk7CisgIGNsb3NlKHAxWzBdKTsKKyAgcDFbMF0gPSAtMTsKKyAgc3VicHJvY193YWl0X2NoZWNrKHBpZCwgQkFDS0VORCAiIC0tZnN5cy10YXJmaWxlIiwgUFJPQ1BJUEUpOworCisgIHRhcl9kZWZlcnJlZF9leHRyYWN0KG5ld2ZpbGVzbGlzdCwgcGtnKTsKKworICBpZiAob2xkdmVyc2lvbnN0YXR1cyA9PSBzdGF0X2hhbGZpbnN0YWxsZWQgfHwgb2xkdmVyc2lvbnN0YXR1cyA9PSBzdGF0X3VucGFja2VkKSB7CisgICAgLyogUGFja2FnZXMgdGhhdCB3ZXJlIGluIOKAmGluc3RhbGxlZOKAmSBhbmQg4oCYcG9zdGluc3RmYWlsZWTigJkgaGF2ZSBiZWVuCisgICAgICogcmVkdWNlZCB0byDigJh1bnBhY2tlZOKAmSBieSBub3csIGJ5IHRoZSBydW5uaW5nIG9mIHRoZSBwcmVybSBzY3JpcHQuICovCisgICAgcGtnLT5zdGF0dXM9IHN0YXRfaGFsZmluc3RhbGxlZDsKKyAgICBtb2RzdGF0ZGJfbm90ZShwa2cpOworICAgIHB1c2hfY2xlYW51cChjdV9wb3N0cm11cGdyYWRlLCB+ZWhmbGFnX25vcm1hbHRpZHksIE5VTEwsIDAsIDEsICh2b2lkICopcGtnKTsKKyAgICBtYWludGFpbmVyX3NjcmlwdF9hbHRlcm5hdGl2ZShwa2csIFBPU1RSTUZJTEUsICJwb3N0LXJlbW92YWwiLCBjaWRpciwgY2lkaXJyZXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ1cGdyYWRlIiwgImZhaWxlZC11cGdyYWRlIik7CisgIH0KKworICAvKiBJZiBhbnl0aGluZyBnb2VzIHdyb25nIHdoaWxlIHRpZHlpbmcgdXAgaXQncyBhIGJpdCBsYXRlIHRvIGRvCisgICAqIGFueXRoaW5nIGFib3V0IGl0LiBIb3dldmVyLCB3ZSBkb24ndCBpbnN0YWxsIHRoZSBuZXcgc3RhdHVzCisgICAqIGluZm8geWV0LCBzbyB0aGF0IGEgZnV0dXJlIGRwa2cgaW5zdGFsbGF0aW9uIHdpbGwgcHV0IGV2ZXJ5dGhpbmcKKyAgICogcmlnaHQgKHdlIGhvcGUpLgorICAgKgorICAgKiBJZiBzb21ldGhpbmcgZG9lcyBnbyB3cm9uZyBsYXRlciB0aGUg4oCYY29uZmxpY3RvcuKAmSBwYWNrYWdlIHdpbGwgYmUKKyAgICogbGVmdCBpbiB0aGUg4oCYcmVtb3ZhbF9mYWlsZWTigJkgc3RhdGUuIFJlbW92aW5nIG9yIGluc3RhbGxpbmcgaXQKKyAgICogd2lsbCBiZSBpbXBvc3NpYmxlIGlmIGl0IHdhcyByZXF1aXJlZCBiZWNhdXNlIG9mIHRoZSBjb25mbGljdCB3aXRoCisgICAqIHRoZSBwYWNrYWdlIHdlJ3JlIGluc3RhbGxpbmcgbm93IGFuZCAocHJlc3VtYWJseSkgdGhlIGRlcGVuZGVuY3kKKyAgICogYnkgb3RoZXIgcGFja2FnZXMuIFRoaXMgbWVhbnMgdGhhdCB0aGUgZmlsZXMgaXQgY29udGFpbnMgaW4KKyAgICogY29tbW9uIHdpdGggdGhpcyBwYWNrYWdlIHdpbGwgaGFuZyBhcm91bmQgdW50aWwgd2Ugc3VjY2Vzc2Z1bGx5CisgICAqIGdldCB0aGlzIHBhY2thZ2UgaW5zdGFsbGVkLCBhZnRlciB3aGljaCBwb2ludCB3ZSBjYW4gdHJ1c3QgdGhlCisgICAqIGNvbmZsaWN0aW5nIHBhY2thZ2UncyBmaWxlIGxpc3QsIHdoaWNoIHdpbGwgaGF2ZSBiZWVuIHVwZGF0ZWQgdG8KKyAgICogcmVtb3ZlIGFueSBmaWxlcyBpbiB0aGlzIHBhY2thZ2UuICovCisgIHB1c2hfY2hlY2twb2ludCh+ZWhmbGFnX2JvbWJvdXQsIGVoZmxhZ19ub3JtYWx0aWR5KTsKKworICAvKiBOb3cgd2UgZGVsZXRlIGFsbCB0aGUgZmlsZXMgdGhhdCB3ZXJlIGluIHRoZSBvbGQgdmVyc2lvbiBvZgorICAgKiB0aGUgcGFja2FnZSBvbmx5LCBleGNlcHQgKG9sZCBvciBuZXcpIGNvbmZmaWxlcywgd2hpY2ggd2UgbGVhdmUKKyAgICogYWxvbmUuICovCisgIHJldmVyc2VmaWxlbGlzdF9pbml0KCZybGlzdGl0LHBrZy0+Y2xpZW50ZGF0YS0+ZmlsZXMpOworICB3aGlsZSAoKG5hbWVub2RlPSByZXZlcnNlZmlsZWxpc3RfbmV4dCgmcmxpc3RpdCkpKSB7CisgICAgc3RydWN0IGZpbGVuYW1lbm9kZSAqdXNlbm9kZTsKKworICAgIGlmICgobmFtZW5vZGUtPmZsYWdzICYgZm5uZl9uZXdfY29uZmYpIHx8CisgICAgICAgIChuYW1lbm9kZS0+ZmxhZ3MgJiBmbm5mX25ld19pbmFyY2hpdmUpKQorICAgICAgY29udGludWU7CisKKyAgICB1c2Vub2RlID0gbmFtZW5vZGV0b3VzZShuYW1lbm9kZSwgcGtnKTsKKyAgICB0cmlnX2ZpbGVfYWN0aXZhdGUodXNlbm9kZSwgcGtnKTsKKworICAgIHZhcmJ1Zl90cnVuYygmZm5hbWV2YiwgZm5hbWVpZGx1KTsKKyAgICB2YXJidWZfYWRkX3N0cigmZm5hbWV2YiwgdXNlbm9kZS0+bmFtZSk7CisgICAgdmFyYnVmX2VuZF9zdHIoJmZuYW1ldmIpOworCisgICAgaWYgKCFzdGF0KG5hbWVub2RlLT5uYW1lLCZzdGFiKSAmJiBTX0lTRElSKHN0YWIuc3RfbW9kZSkpIHsKKyAgICAgIGRlYnVnKGRiZ19lYWNoZmlsZWRldGFpbCwgInByb2Nlc3NfYXJjaGl2ZTogJXMgaXMgYSBkaXJlY3RvcnkiLAorCSAgICBuYW1lbm9kZS0+bmFtZSk7CisgICAgICBpZiAoZGlyX2lzX3VzZWRfYnlfb3RoZXJzKG5hbWVub2RlLCBwa2cpKQorICAgICAgICBjb250aW51ZTsKKyAgICB9CisKKyAgICBpZiAobHN0YXQoZm5hbWV2Yi5idWYsICZvbGRmcykpIHsKKyAgICAgIGlmICghKGVycm5vID09IEVOT0VOVCB8fCBlcnJubyA9PSBFTE9PUCB8fCBlcnJubyA9PSBFTk9URElSKSkKKwl3YXJuaW5nKF8oImNvdWxkIG5vdCBzdGF0IG9sZCBmaWxlICclLjI1MHMnIHNvIG5vdCBkZWxldGluZyBpdDogJXMiKSwKKwkgICAgICAgIGZuYW1ldmIuYnVmLCBzdHJlcnJvcihlcnJubykpOworICAgICAgY29udGludWU7CisgICAgfQorICAgIGlmIChTX0lTRElSKG9sZGZzLnN0X21vZGUpKSB7CisgICAgICBpZiAocm1kaXIoZm5hbWV2Yi5idWYpKSB7CisJd2FybmluZyhfKCJ1bmFibGUgdG8gZGVsZXRlIG9sZCBkaXJlY3RvcnkgJyUuMjUwcyc6ICVzIiksCisJICAgICAgICBuYW1lbm9kZS0+bmFtZSwgc3RyZXJyb3IoZXJybm8pKTsKKyAgICAgIH0gZWxzZSBpZiAoKG5hbWVub2RlLT5mbGFncyAmIGZubmZfb2xkX2NvbmZmKSkgeworCXdhcm5pbmcoXygib2xkIGNvbmZmaWxlICclLjI1MHMnIHdhcyBhbiBlbXB0eSBkaXJlY3RvcnkgIgorCSAgICAgICAgICAiKGFuZCBoYXMgbm93IGJlZW4gZGVsZXRlZCkiKSwgbmFtZW5vZGUtPm5hbWUpOworICAgICAgfQorICAgIH0gZWxzZSB7CisgICAgICBzdHJ1Y3QgZmlsZWlubGlzdCAqc2FtZWFzID0gTlVMTDsKKyAgICAgIHN0YXRpYyBzdHJ1Y3Qgc3RhdCBlbXB0eV9zdGF0OworICAgICAgc3RydWN0IHZhcmJ1ZiBjZmlsZW5hbWUgPSBWQVJCVUZfSU5JVDsKKworICAgICAgLyoKKyAgICAgICAqIE9rLCBpdCdzIGFuIG9sZCBmaWxlLCBidXQgaXMgaXQgcmVhbGx5IG5vdCBpbiB0aGUgbmV3IHBhY2thZ2U/CisgICAgICAgKiBJdCBtaWdodCBiZSBrbm93biBieSBhIGRpZmZlcmVudCBuYW1lIGJlY2F1c2Ugb2Ygc3ltbGlua3MuCisgICAgICAgKgorICAgICAgICogV2UgbmVlZCB0byBjaGVjayB0byBtYWtlIHN1cmUsIHNvIHdlIHN0YXQgdGhlIGZpbGUsIHRoZW4gY29tcGFyZQorICAgICAgICogaXQgdG8gdGhlIG5ldyBsaXN0LiBJZiB3ZSBmaW5kIGEgZGV2L2lub2RlIG1hdGNoLCB3ZSBhc3N1bWUgdGhleQorICAgICAgICogYXJlIHRoZSBzYW1lIGZpbGUsIGFuZCBsZWF2ZSBpdCBhbG9uZS4gTk9URTogd2UgZG9uJ3QgY2hlY2sgaW4KKyAgICAgICAqIG90aGVyIHBhY2thZ2VzIGZvciBzYW5pdHkgcmVhc29ucyAod2UgZG9uJ3Qgd2FudCB0byBzdGF0IF9hbGxfCisgICAgICAgKiB0aGUgZmlsZXMgb24gdGhlIHN5c3RlbSkuCisgICAgICAgKgorICAgICAgICogV2UgcnVuIGRvd24gdGhlIGxpc3Qgb2YgX25ld18gZmlsZXMgaW4gdGhpcyBwYWNrYWdlLiBUaGlzIGtlZXBzCisgICAgICAgKiB0aGUgcHJvY2VzcyBhIGxpdHRsZSBsZWFuZXIuIFdlIGFyZSBvbmx5IHdvcnJpZWQgYWJvdXQgbmV3IG9uZXMKKyAgICAgICAqIHNpbmNlIG9uZXMgdGhhdCBzdGF5ZWQgdGhlIHNhbWUgZG9uJ3QgcmVhbGx5IGFwcGx5IGhlcmUuCisgICAgICAgKi8KKworICAgICAgLyogSWYgd2UgY2FuJ3Qgc3RhdCB0aGUgb2xkIG9yIG5ldyBmaWxlLCBvciBpdCdzIGEgZGlyZWN0b3J5LAorICAgICAgICogd2UgbGVhdmUgaXQgdXAgdG8gdGhlIG5vcm1hbCBjb2RlLiAqLworICAgICAgZGVidWcoZGJnX2VhY2hmaWxlLCAicHJvY2Vzc19hcmNoaXZlOiBjaGVja2luZyAlcyBmb3Igc2FtZSBmaWxlcyBvbiAiCisJICAgICJ1cGdyYWRlL2Rvd25ncmFkZSIsIGZuYW1ldmIuYnVmKTsKKworICAgICAgZm9yIChjZmlsZT0gbmV3ZmlsZXNsaXN0OyBjZmlsZTsgY2ZpbGU9IGNmaWxlLT5uZXh0KSB7CisJLyogSWYgdGhlIGZpbGUgaGFzIGJlZW4gZmlsdGVyZWQgdGhlbiB0cmVhdCBpdCBhcyBpZiBpdCBkaWRuJ3QgZXhpc3QKKwkgKiBvbiB0aGUgZmlsZSBzeXN0ZW0uICovCisJaWYgKGNmaWxlLT5uYW1lbm9kZS0+ZmxhZ3MgJiBmbm5mX2ZpbHRlcmVkKQorCSAgY29udGludWU7CisJaWYgKCFjZmlsZS0+bmFtZW5vZGUtPmZpbGVzdGF0KSB7CisJICBzdHJ1Y3Qgc3RhdCB0bXBfc3RhdDsKKworCSAgdmFyYnVmX3Jlc2V0KCZjZmlsZW5hbWUpOworCSAgdmFyYnVmX2FkZF9zdHIoJmNmaWxlbmFtZSwgaW5zdGRpcik7CisJICB2YXJidWZfYWRkX2NoYXIoJmNmaWxlbmFtZSwgJy8nKTsKKwkgIHZhcmJ1Zl9hZGRfc3RyKCZjZmlsZW5hbWUsIGNmaWxlLT5uYW1lbm9kZS0+bmFtZSk7CisJICB2YXJidWZfZW5kX3N0cigmY2ZpbGVuYW1lKTsKKworCSAgaWYgKGxzdGF0KGNmaWxlbmFtZS5idWYsICZ0bXBfc3RhdCkgPT0gMCkgeworCSAgICBjZmlsZS0+bmFtZW5vZGUtPmZpbGVzdGF0ID0gbmZtYWxsb2Moc2l6ZW9mKHN0cnVjdCBzdGF0KSk7CisJICAgIG1lbWNweShjZmlsZS0+bmFtZW5vZGUtPmZpbGVzdGF0LCAmdG1wX3N0YXQsIHNpemVvZihzdHJ1Y3Qgc3RhdCkpOworCSAgfSBlbHNlIHsKKwkgICAgaWYgKCEoZXJybm8gPT0gRU5PRU5UIHx8IGVycm5vID09IEVMT09QIHx8IGVycm5vID09IEVOT1RESVIpKQorCSAgICAgIG9oc2hpdGUoXygidW5hYmxlIHRvIHN0YXQgb3RoZXIgbmV3IGZpbGUgYCUuMjUwcyciKSwKKwkJICAgICAgY2ZpbGUtPm5hbWVub2RlLT5uYW1lKTsKKwkgICAgY2ZpbGUtPm5hbWVub2RlLT5maWxlc3RhdCA9ICZlbXB0eV9zdGF0OworCSAgICBjb250aW51ZTsKKwkgIH0KKwl9CisJaWYgKGNmaWxlLT5uYW1lbm9kZS0+ZmlsZXN0YXQgPT0gJmVtcHR5X3N0YXQpCisJICBjb250aW51ZTsKKwlpZiAob2xkZnMuc3RfZGV2ID09IGNmaWxlLT5uYW1lbm9kZS0+ZmlsZXN0YXQtPnN0X2RldiAmJgorCSAgICBvbGRmcy5zdF9pbm8gPT0gY2ZpbGUtPm5hbWVub2RlLT5maWxlc3RhdC0+c3RfaW5vKSB7CisJICBpZiAoc2FtZWFzKQorCSAgICB3YXJuaW5nKF8oIm9sZCBmaWxlICclLjI1MHMnIGlzIHRoZSBzYW1lIGFzIHNldmVyYWwgbmV3IGZpbGVzISAiCisJICAgICAgICAgICAgICAiKGJvdGggJyUuMjUwcycgYW5kICclLjI1MHMnKSIpLCBmbmFtZXZiLmJ1ZiwKKwkJICAgIHNhbWVhcy0+bmFtZW5vZGUtPm5hbWUsIGNmaWxlLT5uYW1lbm9kZS0+bmFtZSk7CisJICBzYW1lYXM9IGNmaWxlOworCSAgZGVidWcoZGJnX2VhY2hmaWxlLCAicHJvY2Vzc19hcmNoaXZlOiBub3QgcmVtb3ZpbmcgJXMsIgorCQkiIHNpbmNlIGl0IG1hdGNoZXMgJXMiLCBmbmFtZXZiLmJ1ZiwgY2ZpbGUtPm5hbWVub2RlLT5uYW1lKTsKKwl9CisgICAgICB9CisKKyAgICAgIHZhcmJ1Zl9kZXN0cm95KCZjZmlsZW5hbWUpOworCisgICAgICBpZiAoKG5hbWVub2RlLT5mbGFncyAmIGZubmZfb2xkX2NvbmZmKSkgeworCWlmIChzYW1lYXMpIHsKKwkgIGlmIChzYW1lYXMtPm5hbWVub2RlLT5mbGFncyAmIGZubmZfbmV3X2NvbmZmKSB7CisJICAgIGlmICghc3RyY21wKHNhbWVhcy0+bmFtZW5vZGUtPm9sZGhhc2gsIE5FV0NPTkZGSUxFRkxBRykpIHsKKwkgICAgICBzYW1lYXMtPm5hbWVub2RlLT5vbGRoYXNoPSBuYW1lbm9kZS0+b2xkaGFzaDsKKwkgICAgICBkZWJ1ZyhkYmdfZWFjaGZpbGUsICJwcm9jZXNzX2FyY2hpdmU6IG9sZCBjb25mZiAlcyIKKwkJICAgICIgaXMgc2FtZSBhcyBuZXcgY29uZmYgJXMsIGNvcHlpbmcgaGFzaCIsCisJCSAgICBuYW1lbm9kZS0+bmFtZSwgc2FtZWFzLT5uYW1lbm9kZS0+bmFtZSk7CisJICAgIH0gZWxzZSB7CisJICAgICAgZGVidWcoZGJnX2VhY2hmaWxlLCAicHJvY2Vzc19hcmNoaXZlOiBvbGQgY29uZmYgJXMiCisJCSAgICAiIGlzIHNhbWUgYXMgbmV3IGNvbmZmICVzIGJ1dCBsYXR0ZXIgYWxyZWFkeSBoYXMgaGFzaCIsCisJCSAgICBuYW1lbm9kZS0+bmFtZSwgc2FtZWFzLT5uYW1lbm9kZS0+bmFtZSk7CisJICAgIH0KKwkgIH0KKwl9IGVsc2UgeworCSAgZGVidWcoZGJnX2VhY2hmaWxlLCAicHJvY2Vzc19hcmNoaXZlOiBvbGQgY29uZmYgJXMiCisJCSIgaXMgZGlzYXBwZWFyaW5nIiwgbmFtZW5vZGUtPm5hbWUpOworCSAgbmFtZW5vZGUtPmZsYWdzIHw9IGZubmZfb2JzX2NvbmZmOworCSAgbmV3Y29uZmZfYXBwZW5kKCZuZXdjb25mZmlsZXNsYXN0cCwgbmFtZW5vZGUpOworCSAgYWRkZmlsZXRvbGlzdCgmdGMsIG5hbWVub2RlKTsKKwl9CisJY29udGludWU7CisgICAgICB9CisKKyAgICAgIGlmIChzYW1lYXMpCisJY29udGludWU7CisKKyAgICAgIGlmIChzZWN1cmVfdW5saW5rX3N0YXR0ZWQoZm5hbWV2Yi5idWYsICZvbGRmcykpIHsKKyAgICAgICAgd2FybmluZyhfKCJ1bmFibGUgdG8gc2VjdXJlbHkgcmVtb3ZlIG9sZCBmaWxlICclLjI1MHMnOiAlcyIpLAorICAgICAgICAgICAgICAgIG5hbWVub2RlLT5uYW1lLCBzdHJlcnJvcihlcnJubykpOworICAgICAgfQorCisgICAgfSAvKiAhU19JU0RJUiAqLworICB9CisKKyAgLyogT0ssIG5vdyB3ZSBjYW4gd3JpdGUgdGhlIHVwZGF0ZWQgZmlsZXMtaW4tdGhpcyBwYWNrYWdlIGxpc3QsCisgICAqIHNpbmNlIHdlJ3ZlIGRvbmUgYXdheSAoaG9wZWZ1bGx5KSB3aXRoIGFsbCB0aGUgb2xkIGp1bmsuICovCisgIHdyaXRlX2ZpbGVsaXN0X2V4Y2VwdChwa2csbmV3ZmlsZXNsaXN0LDApOworCisgIC8qIFRyaWdnZXIgaW50ZXJlc3RzIG1heSBoYXZlIGNoYW5nZWQuCisgICAqIEZpcnN0bHkgd2UgZ28gdGhyb3VnaCB0aGUgb2xkIGxpc3Qgb2YgaW50ZXJlc3RzIGRlbGV0aW5nIHRoZW0uCisgICAqIFRoZW4gd2UgZ28gdGhyb3VnaCB0aGUgbmV3IGxpc3QgYWRkaW5nIHRoZW0uICovCisgIHN0cmNweShjaWRpcnJlc3QsIFRSSUdHRVJTQ0lGSUxFKTsKKyAgdHJpZ19wYXJzZV9jaShwa2dhZG1pbmZpbGUocGtnLCBUUklHR0VSU0NJRklMRSksCisgICAgICAgICAgICAgICAgdHJpZ19jaWNiX2ludGVyZXN0X2RlbGV0ZSwgTlVMTCwgcGtnKTsKKyAgdHJpZ19wYXJzZV9jaShjaWRpciwgdHJpZ19jaWNiX2ludGVyZXN0X2FkZCwgTlVMTCwgcGtnKTsKKyAgdHJpZ19maWxlX2ludGVyZXN0c19zYXZlKCk7CisKKyAgLyogV2UgYWxzbyBpbnN0YWxsIHRoZSBuZXcgbWFpbnRhaW5lciBzY3JpcHRzLCBhbmQgYW55IG90aGVyCisgICAqIGNydWZ0IHRoYXQgbWF5IGhhdmUgY29tZSBhbG9uZyB3aXRoIHRoZSBwYWNrYWdlLiBGaXJzdAorICAgKiB3ZSBnbyB0aHJvdWdoIHRoZSBleGlzdGluZyBzY3JpcHRzIHJlcGxhY2luZyBvciByZW1vdmluZworICAgKiB0aGVtIGFzIGFwcHJvcHJpYXRlOyB0aGVuIHdlIGdvIHRocm91Z2ggdGhlIG5ldyBzY3JpcHRzCisgICAqIChhbnkgdGhhdCBhcmUgbGVmdCkgYW5kIGluc3RhbGwgdGhlbS4gKi8KKyAgZGVidWcoZGJnX2dlbmVyYWwsICJwcm9jZXNzX2FyY2hpdmUgdXBkYXRpbmcgaW5mbyBkaXJlY3RvcnkiKTsKKyAgcGtnX2luZm9kYl91cGRhdGUocGtnLCBjaWRpciwgY2lkaXJyZXN0KTsKKworICAvKgorICAgKiBVcGRhdGUgdGhlIHN0YXR1cyBkYXRhYmFzZS4KKyAgICoKKyAgICogVGhpcyBpbnZvbHZlcyBjb3B5aW5nIGVhY2ggZmllbGQgYWNyb3NzIGZyb20gdGhlIOKAmGF2YWlsYWJsZeKAmQorICAgKiB0byB0aGUg4oCYaW5zdGFsbGVk4oCZIGhhbGYgb2YgdGhlIHBrZyBzdHJ1Y3R1cmUuCisgICAqIEZvciBzb21lIG9mIHRoZSBmaWVsZHMgd2UgaGF2ZSB0byBkbyBhIGNvbXBsaWNhdGVkIGNvbnN0cnVjdGlvbgorICAgKiBvcGVyYXRpb247IGZvciBvdGhlcnMgd2UgY2FuIGp1c3QgY29weSB0aGUgdmFsdWUuCisgICAqIFdlIHRhY2tsZSB0aGUgZmllbGRzIGluIHRoZSBvcmRlciB0aGV5IGFwcGVhciwgc28gdGhhdAorICAgKiB3ZSBkb24ndCBtaXNzIGFueSBvdXQgOi0pLgorICAgKiBBdCBsZWFzdCB3ZSBkb24ndCBoYXZlIHRvIGNvcHkgYW55IHN0cmluZ3MgdGhhdCBhcmUgcmVmZXJyZWQKKyAgICogdG8sIGJlY2F1c2UgdGhlc2UgYXJlIG5ldmVyIG1vZGlmaWVkIGFuZCBuZXZlciBmcmVlZC4KKyAgICovCisKKyAgLyogVGhlIGRlcGVuZGVuY2llcyBhcmUgdGhlIG1vc3QgZGlmZmljdWx0LiBXZSBoYXZlIHRvIGJ1aWxkCisgICAqIGEgd2hvbGUgbmV3IGZvcndhcmQgZGVwZW5kZW5jeSB0cmVlLiBBdCBsZWFzdCB0aGUgcmV2ZXJzZQorICAgKiBsaW5rcyAobGlua2luZyBvdXIgZGVwcG9zc2kncyBpbnRvIHRoZSByZXZlcnNlIGNoYWlucykKKyAgICogY2FuIGJlIGRvbmUgYnkgY29weV9kZXBlbmRlbmN5X2xpbmtzLiAqLworICBuZXdkZXBsaXN0ID0gTlVMTDsKKyAgbmV3ZGVwbGlzdGxhc3RwID0gJm5ld2RlcGxpc3Q7CisgIGZvciAoZGVwPSBwa2ctPmF2YWlsYWJsZS5kZXBlbmRzOyBkZXA7IGRlcD0gZGVwLT5uZXh0KSB7CisgICAgbmV3ZGVwPSBuZm1hbGxvYyhzaXplb2Yoc3RydWN0IGRlcGVuZGVuY3kpKTsKKyAgICBuZXdkZXAtPnVwPSBwa2c7CisgICAgbmV3ZGVwLT5uZXh0ID0gTlVMTDsKKyAgICBuZXdkZXAtPmxpc3QgPSBOVUxMOworICAgIG5ld3Bvc3NpbGFzdHAgPSAmbmV3ZGVwLT5saXN0OworICAgIGZvciAocG9zc2k9IGRlcC0+bGlzdDsgcG9zc2k7IHBvc3NpPSBwb3NzaS0+bmV4dCkgeworICAgICAgbmV3cG9zc2k9IG5mbWFsbG9jKHNpemVvZihzdHJ1Y3QgZGVwcG9zc2kpKTsKKyAgICAgIG5ld3Bvc3NpLT51cD0gbmV3ZGVwOworICAgICAgbmV3cG9zc2ktPmVkPSBwb3NzaS0+ZWQ7CisgICAgICBuZXdwb3NzaS0+bmV4dCA9IE5VTEw7CisgICAgICBuZXdwb3NzaS0+cmV2X25leHQgPSBuZXdwb3NzaS0+cmV2X3ByZXYgPSBOVUxMOworICAgICAgbmV3cG9zc2ktPnZlcnJlbD0gcG9zc2ktPnZlcnJlbDsKKyAgICAgIGlmIChwb3NzaS0+dmVycmVsICE9IGR2cl9ub25lKQorICAgICAgICBuZXdwb3NzaS0+dmVyc2lvbj0gcG9zc2ktPnZlcnNpb247CisgICAgICBlbHNlCisgICAgICAgIGJsYW5rdmVyc2lvbigmbmV3cG9zc2ktPnZlcnNpb24pOworICAgICAgbmV3cG9zc2ktPmN5Y2xlYnJlYWsgPSBmYWxzZTsKKyAgICAgICpuZXdwb3NzaWxhc3RwPSBuZXdwb3NzaTsKKyAgICAgIG5ld3Bvc3NpbGFzdHA9ICZuZXdwb3NzaS0+bmV4dDsKKyAgICB9CisgICAgbmV3ZGVwLT50eXBlPSBkZXAtPnR5cGU7CisgICAgKm5ld2RlcGxpc3RsYXN0cD0gbmV3ZGVwOworICAgIG5ld2RlcGxpc3RsYXN0cD0gJm5ld2RlcC0+bmV4dDsKKyAgfQorICAvKiBSaWdodCwgbm93IHdlJ3ZlIHJlcGxpY2F0ZWQgdGhlIGZvcndhcmQgdHJlZSwgd2UKKyAgICogZ2V0IGNvcHlfZGVwZW5kZW5jeV9saW5rcyB0byByZW1vdmUgYWxsIHRoZSBvbGQgZGVwZW5kZW5jeQorICAgKiBzdHJ1Y3R1cmVzIGZyb20gdGhlIHJldmVyc2UgbGlua3MgYW5kIGFkZCB0aGUgbmV3IGRlcGVuZGVuY3kKKyAgICogc3RydWN0dXJlcyBpbiBpbnN0ZWFkLiBJdCBhbHNvIGNvcGllcyB0aGUgbmV3IGRlcGVuZGVuY3kKKyAgICogc3RydWN0dXJlIHBvaW50ZXIgZm9yIHRoaXMgcGFja2FnZSBpbnRvIHRoZSByaWdodCBmaWVsZC4gKi8KKyAgY29weV9kZXBlbmRlbmN5X2xpbmtzKHBrZywmcGtnLT5pbnN0YWxsZWQuZGVwZW5kcyxuZXdkZXBsaXN0LDApOworCisgIC8qIFRoZSDigJhkZXBlbmRlZOKAmSBwb2ludGVyIGluIHRoZSBzdHJ1Y3R1cmUgZG9lc24ndCByZXByZXNlbnQgYW55dGhpbmcKKyAgICogdGhhdCBpcyBhY3R1YWxseSBzcGVjaWZpZWQgYnkgdGhpcyBwYWNrYWdlIC0gaXQncyB0aGVyZSBzbyB3ZQorICAgKiBjYW4gZmluZCBvdXQgd2hhdCBvdGhlciBwYWNrYWdlcyByZWZlciB0byB0aGlzIG9uZS4gU28sCisgICAqIHdlIGRvbid0IGNvcHkgaXQuIFdlIGdvIHN0cmFpZ2h0IG9uIHRvIGNvcHkgdGhlIHRleHQgZmllbGRzLiAqLworICBwa2ctPmluc3RhbGxlZC5lc3NlbnRpYWw9IHBrZy0+YXZhaWxhYmxlLmVzc2VudGlhbDsKKyAgcGtnLT5pbnN0YWxsZWQuZGVzY3JpcHRpb249IHBrZy0+YXZhaWxhYmxlLmRlc2NyaXB0aW9uOworICBwa2ctPmluc3RhbGxlZC5tYWludGFpbmVyPSBwa2ctPmF2YWlsYWJsZS5tYWludGFpbmVyOworICBwa2ctPmluc3RhbGxlZC5zb3VyY2U9IHBrZy0+YXZhaWxhYmxlLnNvdXJjZTsKKyAgcGtnLT5pbnN0YWxsZWQuYXJjaCA9IHBrZy0+YXZhaWxhYmxlLmFyY2g7CisgIHBrZy0+aW5zdGFsbGVkLmluc3RhbGxlZHNpemU9IHBrZy0+YXZhaWxhYmxlLmluc3RhbGxlZHNpemU7CisgIHBrZy0+aW5zdGFsbGVkLnZlcnNpb249IHBrZy0+YXZhaWxhYmxlLnZlcnNpb247CisgIHBrZy0+aW5zdGFsbGVkLm9yaWdpbiA9IHBrZy0+YXZhaWxhYmxlLm9yaWdpbjsKKyAgcGtnLT5pbnN0YWxsZWQuYnVncyA9IHBrZy0+YXZhaWxhYmxlLmJ1Z3M7CisKKyAgLyogV2UgaGF2ZSB0byBnZW5lcmF0ZSBvdXIgb3duIGNvbmZmaWxlcyBzdHJ1Y3R1cmUuICovCisgIHBrZy0+aW5zdGFsbGVkLmNvbmZmaWxlcyA9IE5VTEw7CisgIGljb25mZmlsZXNsYXN0cCA9ICZwa2ctPmluc3RhbGxlZC5jb25mZmlsZXM7CisgIGZvciAoY2ZpbGU9IG5ld2NvbmZmaWxlczsgY2ZpbGU7IGNmaWxlPSBjZmlsZS0+bmV4dCkgeworICAgIG5ld2ljb25mZj0gbmZtYWxsb2Moc2l6ZW9mKHN0cnVjdCBjb25mZmlsZSkpOworICAgIG5ld2ljb25mZi0+bmV4dCA9IE5VTEw7CisgICAgbmV3aWNvbmZmLT5uYW1lPSBuZnN0cnNhdmUoY2ZpbGUtPm5hbWVub2RlLT5uYW1lKTsKKyAgICBuZXdpY29uZmYtPmhhc2g9IG5mc3Ryc2F2ZShjZmlsZS0+bmFtZW5vZGUtPm9sZGhhc2gpOworICAgIG5ld2ljb25mZi0+b2Jzb2xldGU9ICEhKGNmaWxlLT5uYW1lbm9kZS0+ZmxhZ3MgJiBmbm5mX29ic19jb25mZik7CisgICAgKmljb25mZmlsZXNsYXN0cD0gbmV3aWNvbmZmOworICAgIGljb25mZmlsZXNsYXN0cD0gJm5ld2ljb25mZi0+bmV4dDsKKyAgfQorCisgIC8qIFdlIGNhbiBqdXN0IGNvcHkgdGhlIGFyYml0cmFyeSBmaWVsZHMgbGlzdCwgYmVjYXVzZSBpdCBpcworICAgKiBuZXZlciBldmVuIHJlYXJyYW5nZWQuIFBoZXchICovCisgIHBrZy0+aW5zdGFsbGVkLmFyYnM9IHBrZy0+YXZhaWxhYmxlLmFyYnM7CisKKyAgLyogQ2hlY2sgZm9yIGRpc2FwcGVhcmluZyBwYWNrYWdlczoKKyAgICogV2UgZ28gdGhyb3VnaCBhbGwgdGhlIHBhY2thZ2VzIG9uIHRoZSBzeXN0ZW0gbG9va2luZyBmb3Igb25lcworICAgKiB3aG9zZSBmaWxlcyBhcmUgZW50aXJlbHkgcGFydCBvZiB0aGUgb25lIHdlJ3ZlIGp1c3QgdW5wYWNrZWQKKyAgICogKGFuZCB3aGljaCBhY3R1YWxseSAqaGF2ZSogc29tZSBmaWxlcyEpLgorICAgKgorICAgKiBBbnkgdGhhdCB3ZSBmaW5kIGFyZSByZW1vdmVkIC0gd2UgcnVuIHRoZSBwb3N0cm0gd2l0aCDigJhkaXNhcHBlYXLigJkKKyAgICogYXMgYW4gYXJndW1lbnQsIGFuZCByZW1vdmUgdGhlaXIgaW5mby8uLi4gZmlsZXMgYW5kIHN0YXR1cyBpbmZvLgorICAgKiBDb25mZmlsZXMgYXJlIGlnbm9yZWQgKHRoZSBuZXcgcGFja2FnZSBoYWQgYmV0dGVyIGRvIHNvbWV0aGluZworICAgKiB3aXRoIHRoZW0hKS4gKi8KKyAgaXQgPSBwa2dfZGJfaXRlcl9uZXcoKTsKKyAgd2hpbGUgKChvdGhlcnBrZyA9IHBrZ19kYl9pdGVyX25leHQoaXQpKSAhPSBOVUxMKSB7CisgICAgZW5zdXJlX3BhY2thZ2VfY2xpZW50ZGF0YShvdGhlcnBrZyk7CisgICAgaWYgKG90aGVycGtnID09IHBrZyB8fAorICAgICAgICBvdGhlcnBrZy0+c3RhdHVzID09IHN0YXRfbm90aW5zdGFsbGVkIHx8CisgICAgICAgIG90aGVycGtnLT5zdGF0dXMgPT0gc3RhdF9jb25maWdmaWxlcyB8fAorCW90aGVycGtnLT5jbGllbnRkYXRhLT5pc3RvYmUgPT0gaXRiX3JlbW92ZSB8fAorICAgICAgICAhb3RoZXJwa2ctPmNsaWVudGRhdGEtPmZpbGVzKSBjb250aW51ZTsKKyAgICBkZWJ1ZyhkYmdfdmVyeXZlcmJvc2UsICJwcm9jZXNzX2FyY2hpdmUgY2hlY2tpbmcgZGlzYXBwZWFyYW5jZSAlcyIsb3RoZXJwa2ctPm5hbWUpOworICAgIGFzc2VydChvdGhlcnBrZy0+Y2xpZW50ZGF0YS0+aXN0b2JlID09IGl0Yl9ub3JtYWwgfHwKKyAgICAgICAgICAgb3RoZXJwa2ctPmNsaWVudGRhdGEtPmlzdG9iZSA9PSBpdGJfZGVjb25maWd1cmUpOworICAgIGZvciAoY2ZpbGU9IG90aGVycGtnLT5jbGllbnRkYXRhLT5maWxlczsKKyAgICAgICAgIGNmaWxlICYmICFzdHJjbXAoY2ZpbGUtPm5hbWVub2RlLT5uYW1lLCIvLiIpOworICAgICAgICAgY2ZpbGU9IGNmaWxlLT5uZXh0KTsKKyAgICBpZiAoIWNmaWxlKSB7CisgICAgICBkZWJ1ZyhkYmdfc3R1cGlkbHl2ZXJib3NlLCAicHJvY2Vzc19hcmNoaXZlIG5vIG5vbi1yb290LCBubyBkaXNhcHBlYXIiKTsKKyAgICAgIGNvbnRpbnVlOworICAgIH0KKyAgICBmb3IgKGNmaWxlPSBvdGhlcnBrZy0+Y2xpZW50ZGF0YS0+ZmlsZXM7CisgICAgICAgICBjZmlsZSAmJiAhZmlsZXNhdmVzcGFja2FnZShjZmlsZSxvdGhlcnBrZyxwa2cpOworICAgICAgICAgY2ZpbGU9IGNmaWxlLT5uZXh0KTsKKyAgICBpZiAoY2ZpbGUpIGNvbnRpbnVlOworCisgICAgLyogU28gZGVwZW5kZW5jeSB0aGluZ3Mgd2lsbCBnaXZlIHJpZ2h0IGFuc3dlcnMgLi4uICovCisgICAgb3RoZXJwa2ctPmNsaWVudGRhdGEtPmlzdG9iZT0gaXRiX3JlbW92ZTsKKyAgICBkZWJ1ZyhkYmdfdmVyeXZlcmJvc2UsICJwcm9jZXNzX2FyY2hpdmUgZGlzYXBwZWFyIGNoZWNraW5nIGRlcGVuZGVuY2llcyIpOworICAgIGZvciAocGRlcD0gb3RoZXJwa2ctPmluc3RhbGxlZC5kZXBlbmRlZDsKKyAgICAgICAgIHBkZXA7CisgICAgICAgICBwZGVwID0gcGRlcC0+cmV2X25leHQpIHsKKyAgICAgIGlmIChwZGVwLT51cC0+dHlwZSAhPSBkZXBfZGVwZW5kcyAmJiBwZGVwLT51cC0+dHlwZSAhPSBkZXBfcHJlZGVwZW5kcyAmJgorICAgICAgICAgIHBkZXAtPnVwLT50eXBlICE9IGRlcF9yZWNvbW1lbmRzKSBjb250aW51ZTsKKyAgICAgIGlmIChkZXBpc29rKHBkZXAtPnVwLCAmZGVwcHJvYndoeSwgTlVMTCwgTlVMTCwgZmFsc2UpKQorICAgICAgICBjb250aW51ZTsKKyAgICAgIHZhcmJ1Zl9lbmRfc3RyKCZkZXBwcm9id2h5KTsKKyAgICAgIGRlYnVnKGRiZ192ZXJ5dmVyYm9zZSwicHJvY2Vzc19hcmNoaXZlIGNhbm5vdCBkaXNhcHBlYXI6ICVzIixkZXBwcm9id2h5LmJ1Zik7CisgICAgICBicmVhazsKKyAgICB9CisgICAgaWYgKCFwZGVwKSB7CisgICAgICAvKiBJZiB3ZSBoYXZlbid0IGZvdW5kIGEgcmVhc29uIG5vdCB0byB5ZXQsIGxldCdzIGxvb2sgc29tZSBtb3JlLiAqLworICAgICAgZm9yIChwcm92aWRlY2hlY2s9IG90aGVycGtnLT5pbnN0YWxsZWQuZGVwZW5kczsKKyAgICAgICAgICAgcHJvdmlkZWNoZWNrOworICAgICAgICAgICBwcm92aWRlY2hlY2s9IHByb3ZpZGVjaGVjay0+bmV4dCkgeworICAgICAgICBpZiAocHJvdmlkZWNoZWNrLT50eXBlICE9IGRlcF9wcm92aWRlcykgY29udGludWU7CisgICAgICAgIGZvciAocGRlcD0gcHJvdmlkZWNoZWNrLT5saXN0LT5lZC0+aW5zdGFsbGVkLmRlcGVuZGVkOworICAgICAgICAgICAgIHBkZXA7CisgICAgICAgICAgICAgcGRlcCA9IHBkZXAtPnJldl9uZXh0KSB7CisgICAgICAgICAgaWYgKHBkZXAtPnVwLT50eXBlICE9IGRlcF9kZXBlbmRzICYmIHBkZXAtPnVwLT50eXBlICE9IGRlcF9wcmVkZXBlbmRzICYmCisgICAgICAgICAgICAgIHBkZXAtPnVwLT50eXBlICE9IGRlcF9yZWNvbW1lbmRzKQorICAgICAgICAgICAgY29udGludWU7CisgICAgICAgICAgaWYgKGRlcGlzb2socGRlcC0+dXAsICZkZXBwcm9id2h5LCBOVUxMLCBOVUxMLCBmYWxzZSkpCisgICAgICAgICAgICBjb250aW51ZTsKKyAgICAgICAgICB2YXJidWZfZW5kX3N0cigmZGVwcHJvYndoeSk7CisgICAgICAgICAgZGVidWcoZGJnX3Zlcnl2ZXJib3NlLCJwcm9jZXNzX2FyY2hpdmUgY2Fubm90IGRpc2FwcGVhciAocHJvdmlkZXMgJXMpOiAlcyIsCisgICAgICAgICAgICAgICAgcHJvdmlkZWNoZWNrLT5saXN0LT5lZC0+bmFtZSwgZGVwcHJvYndoeS5idWYpOworICAgICAgICAgIGdvdG8gYnJlYWtfZnJvbV9ib3RoX2xvb3BzX2F0X29uY2U7CisgICAgICAgIH0KKyAgICAgIH0KKyAgICBicmVha19mcm9tX2JvdGhfbG9vcHNfYXRfb25jZTo7CisgICAgfQorICAgIG90aGVycGtnLT5jbGllbnRkYXRhLT5pc3RvYmU9IGl0Yl9ub3JtYWw7CisgICAgaWYgKHBkZXApIGNvbnRpbnVlOworCisgICAgcHJpbnRmKF8oIihOb3RpbmcgZGlzYXBwZWFyYW5jZSBvZiAlcywgd2hpY2ggaGFzIGJlZW4gY29tcGxldGVseSByZXBsYWNlZC4pXG4iKSwKKyAgICAgICAgICAgb3RoZXJwa2ctPm5hbWUpOworICAgIGxvZ19hY3Rpb24oImRpc2FwcGVhciIsIG90aGVycGtnKTsKKyAgICBkZWJ1ZyhkYmdfZ2VuZXJhbCwgInByb2Nlc3NfYXJjaGl2ZSBkaXNhcHBlYXJpbmcgJXMiLG90aGVycGtnLT5uYW1lKTsKKyAgICAvKiBObywgd2UncmUgZGlzYXBwZWFyaW5nIGl0LiBUaGlzIGlzIHRoZSB3cm9uZyB0aW1lIHRvIGdvIGFuZAorICAgICAqIHJ1biBtYWludGFpbmVyIHNjcmlwdHMgYW5kIHRoaW5ncywgYXMgd2UgY2FuJ3QgYmFjayBvdXQuIEJ1dAorICAgICAqIHdoYXQgY2FuIHdlIGRvID8gIEl0IGhhcyB0byBiZSBydW4gdGhpcyBsYXRlLiAqLworICAgIHRyaWdfYWN0aXZhdGVfcGFja2FnZXByb2Nlc3Npbmcob3RoZXJwa2cpOworICAgIG1haW50YWluZXJfc2NyaXB0X2luc3RhbGxlZChvdGhlcnBrZywgUE9TVFJNRklMRSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInBvc3QtcmVtb3ZhbCBzY3JpcHQgKGZvciBkaXNhcHBlYXJhbmNlKSIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkaXNhcHBlYXIiLCBwa2ctPm5hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZlcnNpb25kZXNjcmliZSgmcGtnLT5hdmFpbGFibGUudmVyc2lvbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZkZXdfbm9uYW1iaWcpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMKTsKKworICAgIC8qIE9LLCBub3cgd2UgZGVsZXRlIGFsbCB0aGUgc3R1ZmYgaW4gdGhlIOKAmGluZm/igJkgZGlyZWN0b3J5IC4uICovCisgICAgZGVidWcoZGJnX2dlbmVyYWwsICJwcm9jZXNzX2FyY2hpdmUgZGlzYXBwZWFyIGNsZWFuaW5nIGluZm8gZGlyZWN0b3J5Iik7CisgICAgcGtnX2luZm9kYl9mb3JlYWNoKG90aGVycGtnLCBwa2dfaW5mb2RiX3JlbW92ZV9maWxlKTsKKyAgICBkaXJfc3luY19wYXRoKHBrZ2FkbWluZGlyKCkpOworCisgICAgb3RoZXJwa2ctPnN0YXR1cz0gc3RhdF9ub3RpbnN0YWxsZWQ7CisgICAgb3RoZXJwa2ctPndhbnQgPSB3YW50X3Vua25vd247CisgICAgb3RoZXJwa2ctPmVmbGFnID0gZWZsYWdfb2s7CisKKyAgICBibGFua3ZlcnNpb24oJm90aGVycGtnLT5jb25maWd2ZXJzaW9uKTsKKyAgICBwa2diaW5fYmxhbmsoJm90aGVycGtnLT5pbnN0YWxsZWQpOworCisgICAgb3RoZXJwa2ctPmNsaWVudGRhdGEtPmZpbGVzbGlzdHZhbGlkID0gZmFsc2U7CisKKyAgICBtb2RzdGF0ZGJfbm90ZShvdGhlcnBrZyk7CisKKyAgfSAvKiB3aGlsZSAob3RoZXJwa2c9IC4uLiAqLworICBwa2dfZGJfaXRlcl9mcmVlKGl0KTsKKworICAvKiBEZWxldGUgZmlsZXMgZnJvbSBhbnkgb3RoZXIgcGFja2FnZXMnIGxpc3RzLgorICAgKiBXZSBoYXZlIHRvIGRvIHRoaXMgYmVmb3JlIHdlIGNsYWltIHRoaXMgcGFja2FnZSBpcyBpbiBhbnkKKyAgICogc2FuZSBraW5kIG9mIHN0YXRlLCBhcyBvdGhlcndpc2Ugd2UgbWlnaHQgZGVsZXRlIGJ5IG1pc3Rha2UKKyAgICogYSBmaWxlIHRoYXQgd2Ugb3Zlcndyb3RlLCB3aGVuIHdlIHJlbW92ZSB0aGUgcGFja2FnZSB3aGljaAorICAgKiBoYWQgdGhlIHZlcnNpb24gd2Ugb3Zlcndyb3RlLiBUbyBwcmV2ZW50IHRoaXMgd2UgbWFrZQorICAgKiBzdXJlIHRoYXQgd2UgZG9uJ3QgY2xhaW0gdGhpcyBwYWNrYWdlIGlzIE9LIHVudGlsIHdlCisgICAqIGhhdmUgY2xhaW1lZCDigJhvd25lcnNoaXDigJkgb2YgYWxsIGl0cyBmaWxlcy4gKi8KKyAgZm9yIChjZmlsZT0gbmV3ZmlsZXNsaXN0OyBjZmlsZTsgY2ZpbGU9IGNmaWxlLT5uZXh0KSB7CisgICAgc3RydWN0IGZpbGVwYWNrYWdlc19pdGVyYXRvciAqaXRlcjsKKworICAgIGlmICghKGNmaWxlLT5uYW1lbm9kZS0+ZmxhZ3MgJiBmbm5mX2VsaWRlX290aGVyX2xpc3RzKSkgY29udGludWU7CisgICAgaWYgKGNmaWxlLT5uYW1lbm9kZS0+ZGl2ZXJ0ICYmIGNmaWxlLT5uYW1lbm9kZS0+ZGl2ZXJ0LT51c2VpbnN0ZWFkKSB7CisgICAgICBkaXZwa2c9IGNmaWxlLT5uYW1lbm9kZS0+ZGl2ZXJ0LT5wa2c7CisgICAgICBpZiAoZGl2cGtnID09IHBrZykgeworICAgICAgICBkZWJ1ZyhkYmdfZWFjaGZpbGUsCisgICAgICAgICAgICAgICJwcm9jZXNzX2FyY2hpdmUgbm90IG92ZXJ3cml0aW5nIGFueSBgJXMnIChvdmVycmlkaW5nLCBgJXMnKSIsCisgICAgICAgICAgICAgIGNmaWxlLT5uYW1lbm9kZS0+bmFtZSwgY2ZpbGUtPm5hbWVub2RlLT5kaXZlcnQtPnVzZWluc3RlYWQtPm5hbWUpOworICAgICAgICBjb250aW51ZTsKKyAgICAgIH0gZWxzZSB7CisgICAgICAgIGRlYnVnKGRiZ19lYWNoZmlsZSwKKyAgICAgICAgICAgICAgInByb2Nlc3NfYXJjaGl2ZSBsb29raW5nIGZvciBvdmVyd3JpdGluZyBgJXMnIChvdmVycmlkZGVuIGJ5ICVzKSIsCisgICAgICAgICAgICAgIGNmaWxlLT5uYW1lbm9kZS0+bmFtZSwgZGl2cGtnID8gZGl2cGtnLT5uYW1lIDogIjxsb2NhbD4iKTsKKyAgICAgIH0KKyAgICB9IGVsc2UgeworICAgICAgZGl2cGtnID0gTlVMTDsKKyAgICAgIGRlYnVnKGRiZ19lYWNoZmlsZSwgInByb2Nlc3NfYXJjaGl2ZSBsb29raW5nIGZvciBvdmVyd3JpdGluZyBgJXMnIiwKKyAgICAgICAgICAgIGNmaWxlLT5uYW1lbm9kZS0+bmFtZSk7CisgICAgfQorICAgIGl0ZXIgPSBmaWxlcGFja2FnZXNfaXRlcl9uZXcoY2ZpbGUtPm5hbWVub2RlKTsKKyAgICB3aGlsZSAoKG90aGVycGtnID0gZmlsZXBhY2thZ2VzX2l0ZXJfbmV4dChpdGVyKSkpIHsKKyAgICAgIGRlYnVnKGRiZ19lYWNoZmlsZWRldGFpbCwgInByb2Nlc3NfYXJjaGl2ZSAuLi4gZm91bmQgaW4gJXMiLCBvdGhlcnBrZy0+bmFtZSk7CisgICAgICAvKiBJZiAhZmlsZXNsaXN0dmFsaWQgdGhlbiBpdCdzIG9uZSBvZiB0aGUgZGlzYXBwZWFyZWQgcGFja2FnZXMgYWJvdmUKKyAgICAgICAqIGFuZCB3ZSBkb24ndCBib3RoZXIgd2l0aCBpdCBoZXJlLCBjbGVhcmx5LiAqLworICAgICAgaWYgKG90aGVycGtnID09IHBrZyB8fCAhb3RoZXJwa2ctPmNsaWVudGRhdGEtPmZpbGVzbGlzdHZhbGlkKQorICAgICAgICBjb250aW51ZTsKKyAgICAgIGlmIChvdGhlcnBrZyA9PSBkaXZwa2cpIHsKKyAgICAgICAgZGVidWcoZGJnX2VhY2hmaWxlZGV0YWlsLCAicHJvY2Vzc19hcmNoaXZlIC4uLiBkaXZlcnRlZCwgc2tpcHBpbmciKTsKKyAgICAgICAgY29udGludWU7CisgICAgICB9CisKKyAgICAgIC8qIEZvdW5kIG9uZS4gV2UgZGVsZXRlIHJlbW92ZSB0aGUgbGlzdCBlbnRyeSBmb3IgdGhpcyBmaWxlLAorICAgICAgICogKGFuZCBhbnkgb3RoZXJzIGluIHRoZSBzYW1lIHBhY2thZ2UpIGFuZCB0aGVuIG1hcmsgdGhlIHBhY2thZ2UKKyAgICAgICAqIGFzIHJlcXVpcmluZyBhIHJlcmVhZC4gKi8KKyAgICAgIHdyaXRlX2ZpbGVsaXN0X2V4Y2VwdChvdGhlcnBrZywgb3RoZXJwa2ctPmNsaWVudGRhdGEtPmZpbGVzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZubmZfZWxpZGVfb3RoZXJfbGlzdHMpOworICAgICAgZW5zdXJlX3BhY2thZ2VfY2xpZW50ZGF0YShvdGhlcnBrZyk7CisgICAgICBkZWJ1ZyhkYmdfdmVyeXZlcmJvc2UsICJwcm9jZXNzX2FyY2hpdmUgb3Zlcndyb3RlIGZyb20gJXMiLCBvdGhlcnBrZy0+bmFtZSk7CisgICAgfQorICAgIGZpbGVwYWNrYWdlc19pdGVyX2ZyZWUoaXRlcik7CisgIH0KKworICAvKiBSaWdodCwgdGhlIHBhY2thZ2Ugd2UndmUgdW5wYWNrZWQgaXMgbm93IGluIGEgcmVhc29uYWJsZSBzdGF0ZS4KKyAgICogVGhlIG9ubHkgdGhpbmcgdGhhdCB3ZSBoYXZlIGxlZnQgdG8gZG8gd2l0aCBpdCBpcyByZW1vdmUKKyAgICogYmFja3VwIGZpbGVzLCBhbmQgd2UgY2FuIGxlYXZlIHRoZSB1c2VyIHRvIGZpeCB0aGF0IGlmIGFuZCB3aGVuCisgICAqIGl0IGhhcHBlbnMgKHdlIGxlYXZlIHRoZSByZWluc3RhbGwgcmVxdWlyZWQgZmxhZywgb2YgY291cnNlKS4gKi8KKyAgcGtnLT5zdGF0dXM9IHN0YXRfdW5wYWNrZWQ7CisgIG1vZHN0YXRkYl9ub3RlKHBrZyk7CisKKyAgLyogTm93IHdlIGRlbGV0ZSBhbGwgdGhlIGJhY2t1cCBmaWxlcyB0aGF0IHdlIG1hZGUgd2hlbgorICAgKiBleHRyYWN0aW5nIHRoZSBhcmNoaXZlIC0gZXhjZXB0IGZvciBmaWxlcyBsaXN0ZWQgYXMgY29uZmZpbGVzCisgICAqIGluIHRoZSBuZXcgcGFja2FnZS4KKyAgICogVGhpcyB0aW1lIHdlIGNvdW50IGl0IGFzIGFuIGVycm9yIGlmIHNvbWV0aGluZyBnb2VzIHdyb25nLgorICAgKgorICAgKiBOb3RlIHRoYXQgd2UgZG9uJ3QgZXZlciBkZWxldGUgdGhpbmdzIHRoYXQgd2VyZSBpbiB0aGUgb2xkCisgICAqIHBhY2thZ2UgYXMgYSBjb25mZmlsZSBhbmQgZG9uJ3QgYXBwZWFyIGF0IGFsbCBpbiB0aGUgbmV3LgorICAgKiBUaGV5IHN0YXkgcmVjb3JkZWQgYXMgb2Jzb2xldGUgY29uZmZpbGVzIGFuZCB3aWxsIGV2ZW50dWFsbHkKKyAgICogKGlmIG5vdCB0YWtlbiBvdmVyIGJ5IGFub3RoZXIgcGFja2FnZSkgYmUgZm9yZ290dGVuLiAqLworICBmb3IgKGNmaWxlPSBuZXdmaWxlc2xpc3Q7IGNmaWxlOyBjZmlsZT0gY2ZpbGUtPm5leHQpIHsKKyAgICBpZiAoY2ZpbGUtPm5hbWVub2RlLT5mbGFncyAmIGZubmZfbmV3X2NvbmZmKSBjb250aW51ZTsKKyAgICB2YXJidWZfdHJ1bmMoJmZuYW1ldG1wdmIsIGZuYW1laWRsdSk7CisgICAgdmFyYnVmX2FkZF9zdHIoJmZuYW1ldG1wdmIsIG5hbWVub2RldG91c2UoY2ZpbGUtPm5hbWVub2RlLCBwa2cpLT5uYW1lKTsKKyAgICB2YXJidWZfYWRkX3N0cigmZm5hbWV0bXB2YiwgRFBLR1RFTVBFWFQpOworICAgIHZhcmJ1Zl9lbmRfc3RyKCZmbmFtZXRtcHZiKTsKKyAgICBlbnN1cmVfcGF0aG5hbWVfbm9uZXhpc3RpbmcoZm5hbWV0bXB2Yi5idWYpOworICB9CisKKyAgLyogT0ssIHdlJ3JlIG5vdyBmdWxseSBkb25lIHdpdGggdGhlIG1haW4gcGFja2FnZS4KKyAgICogVGhpcyBpcyBxdWl0ZSBhIG5pY2Ugc3RhdGUsIHNvIHdlIGRvbid0IHVud2luZCBwYXN0IGhlcmUuICovCisgIHBrZy0+ZWZsYWcgPSBlZmxhZ19vazsKKyAgbW9kc3RhdGRiX25vdGUocGtnKTsKKyAgcHVzaF9jaGVja3BvaW50KH5laGZsYWdfYm9tYm91dCwgZWhmbGFnX25vcm1hbHRpZHkpOworCisgIC8qIE9ubHkgdGhlIHJlbW92YWwgb2YgdGhlIGNvbmZsaWN0b3IgbGVmdCB0byBkby4KKyAgICogVGhlIGZpbGVzIGxpc3QgZm9yIHRoZSBjb25mbGljdG9yIGlzIHN0aWxsIGEgbGl0dGxlIGluY29uc2lzdGVudCBpbi1jb3JlLAorICAgKiBhcyB3ZSBoYXZlIG5vdCB5ZXQgdXBkYXRlZCB0aGUgZmlsZW5hbWUtPnBhY2thZ2VzIG1hcHBpbmdzOyBob3dldmVyLAorICAgKiB0aGUgcGFja2FnZS0+ZmlsZW5hbWVzIG1hcHBpbmcgaXMuICovCisgIGZvciAoaSA9IDAgOyBpIDwgY2ZsaWN0X2luZGV4IDsgaSsrKSB7CisgICAgLyogV2UgbmVlZCB0byBoYXZlIHRoZSBtb3N0IHVwLXRvLWRhdGUgaW5mbyBhYm91dCB3aGljaCBmaWxlcyBhcmUKKyAgICAgKiB3aGF0IC4uLiAqLworICAgIGVuc3VyZV9hbGxpbnN0ZmlsZXNfYXZhaWxhYmxlKCk7CisgICAgcmVtb3ZhbF9idWxrKGNvbmZsaWN0b3JbaV0pOworICB9CisKKyAgaWYgKGNpcGFjdGlvbi0+YXJnX2ludCA9PSBhY3RfaW5zdGFsbCkKKyAgICBhZGRfdG9fcXVldWUocGtnKTsKK30KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc3JjL3F1ZXJ5Y21kLmMgYi9kcGtnLTEuMTYuMS4xL3NyYy9xdWVyeWNtZC5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmNkZGE0N2QKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3NyYy9xdWVyeWNtZC5jCkBAIC0wLDAgKzEsNzAyIEBACisvKgorICogZHBrZy1xdWVyeSAtIHByb2dyYW0gZm9yIHF1ZXJ5IHRoZSBkcGtnIGRhdGFiYXNlCisgKiBxdWVyeWNtZC5jIC0gc3RhdHVzIGVucXVpcnkgYW5kIGxpc3Rpbmcgb3B0aW9ucworICoKKyAqIENvcHlyaWdodCDCqSAxOTk1LDE5OTYgSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuZ3JlZW5lbmQub3JnLnVrPgorICogQ29weXJpZ2h0IMKpIDIwMDAsMjAwMSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorICogQ29weXJpZ2h0IMKpIDIwMDYtMjAxMSBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CisgKgorICogVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisgKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAqIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorICovCisKKyNpbmNsdWRlIDxjb25maWcuaD4KKyNpbmNsdWRlIDxjb21wYXQuaD4KKworI2luY2x1ZGUgPHN5cy90eXBlcy5oPgorI2luY2x1ZGUgPHN5cy9zdGF0Lmg+CisjaW5jbHVkZSA8c3lzL2lvY3RsLmg+CisjaW5jbHVkZSA8c3lzL3Rlcm1pb3MuaD4KKworI2lmIEhBVkVfTE9DQUxFX0gKKyNpbmNsdWRlIDxsb2NhbGUuaD4KKyNlbmRpZgorI2luY2x1ZGUgPHN0cmluZy5oPgorI2luY2x1ZGUgPGZjbnRsLmg+CisjaW5jbHVkZSA8ZGlyZW50Lmg+CisjaW5jbHVkZSA8Zm5tYXRjaC5oPgorI2luY2x1ZGUgPHVuaXN0ZC5oPgorI2luY2x1ZGUgPHN0ZGxpYi5oPgorI2luY2x1ZGUgPHN0ZGlvLmg+CisKKyNpbmNsdWRlIDxkcGtnL2kxOG4uaD4KKyNpbmNsdWRlIDxkcGtnL2Rwa2cuaD4KKyNpbmNsdWRlIDxkcGtnL2Rwa2ctZGIuaD4KKyNpbmNsdWRlIDxkcGtnL3BrZy1hcnJheS5oPgorI2luY2x1ZGUgPGRwa2cvcGtnLWZvcm1hdC5oPgorI2luY2x1ZGUgPGRwa2cvcGtnLXNob3cuaD4KKyNpbmNsdWRlIDxkcGtnL3BhdGguaD4KKyNpbmNsdWRlIDxkcGtnL29wdGlvbnMuaD4KKworI2luY2x1ZGUgImZpbGVzZGIuaCIKKyNpbmNsdWRlICJpbmZvZGIuaCIKKyNpbmNsdWRlICJtYWluLmgiCisKK3N0YXRpYyBjb25zdCBjaGFyKiBzaG93Zm9ybWF0CQk9ICIke1BhY2thZ2V9XHQke1ZlcnNpb259XG4iOworCitzdGF0aWMgaW50IGdldHdpZHRoKHZvaWQpIHsKKyAgaW50IGZkOworICBpbnQgcmVzOworICBzdHJ1Y3Qgd2luc2l6ZSB3czsKKyAgY29uc3QgY2hhciogY29sdW1uczsKKworICBpZiAoKGNvbHVtbnM9Z2V0ZW52KCJDT0xVTU5TIikpICYmICgocmVzPWF0b2koY29sdW1ucykpPjApKQorICAgIHJldHVybiByZXM7CisgIGVsc2UgaWYgKCFpc2F0dHkoMSkpCisgICAgcmV0dXJuIC0xOworICBlbHNlIHsKKyAgICByZXMgPSA4MDsKKworICAgIGlmICgoZmQ9b3BlbigiL2Rldi90dHkiLE9fUkRPTkxZKSkhPS0xKSB7CisgICAgICBpZiAoaW9jdGwoZmQsIFRJT0NHV0lOU1osICZ3cykgPT0gMCkKKyAgICAgICAgcmVzID0gd3Mud3NfY29sOworICAgICAgY2xvc2UoZmQpOworICAgIH0KKworICAgIHJldHVybiByZXM7CisgIH0KK30KKworc3RydWN0IGxpc3RfZm9ybWF0IHsKKyAgYm9vbCBoZWFkOworICBpbnQgbncsIHZ3LCBkdzsKKyAgY2hhciBmb3JtYXRbODBdOworfTsKKworc3RhdGljIHZvaWQKK2xpc3RfZm9ybWF0X2luaXQoc3RydWN0IGxpc3RfZm9ybWF0ICpmbXQsIHN0cnVjdCBwa2dfYXJyYXkgKmFycmF5KQoreworICBpbnQgdzsKKworICBpZiAoZm10LT5mb3JtYXRbMF0gIT0gJ1wwJykKKyAgICByZXR1cm47CisKKyAgdyA9IGdldHdpZHRoKCk7CisgIGlmICh3ID09IC0xKSB7CisgICAgaW50IGk7CisKKyAgICBmbXQtPm53ID0gMTQ7CisgICAgZm10LT52dyA9IDE0OworICAgIGZtdC0+ZHcgPSA0NDsKKworICAgIGZvciAoaSA9IDA7IGkgPCBhcnJheS0+bl9wa2dzOyBpKyspIHsKKyAgICAgIGludCBwbGVuLCB2bGVuLCBkbGVuOworCisgICAgICBwbGVuID0gc3RybGVuKGFycmF5LT5wa2dzW2ldLT5uYW1lKTsKKyAgICAgIHZsZW4gPSBzdHJsZW4odmVyc2lvbmRlc2NyaWJlKCZhcnJheS0+cGtnc1tpXS0+aW5zdGFsbGVkLnZlcnNpb24sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2ZGV3X25vbmFtYmlnKSk7CisgICAgICBwa2dfc3VtbWFyeShhcnJheS0+cGtnc1tpXSwgJmRsZW4pOworCisgICAgICBpZiAocGxlbiA+IGZtdC0+bncpCisgICAgICAgIGZtdC0+bncgPSBwbGVuOworICAgICAgaWYgKHZsZW4gPiBmbXQtPnZ3KQorICAgICAgICBmbXQtPnZ3ID0gdmxlbjsKKyAgICAgIGlmIChkbGVuID4gZm10LT5kdykKKyAgICAgICAgZm10LT5kdyA9IGRsZW47CisgICAgfQorICB9IGVsc2UgeworICAgIHcgLT0gODA7CisgICAgLyogTGV0J3Mgbm90IHRyeSB0byBkZWFsIHdpdGggdGVybWluYWxzIHRoYXQgYXJlIHRvbyBzbWFsbC4gKi8KKyAgICBpZiAodyA8IDApCisgICAgICB3ID0gMDsKKyAgICAvKiBIYWx2ZSB0aGF0IHNvIHdlIGNhbiBhZGQgaXQgdG8gYm90aCB0aGUgbmFtZSBhbmQgZGVzY3JpcHRpb24uICovCisgICAgdyA+Pj0gMjsKKyAgICAvKiBOYW1lIHdpZHRoLiAqLworICAgIGZtdC0+bncgPSAoMTQgKyB3KTsKKyAgICAvKiBWZXJzaW9uIHdpZHRoLiAqLworICAgIGZtdC0+dncgPSAoMTQgKyB3KTsKKyAgICAvKiBEZXNjcmlwdGlvbiB3aWR0aC4gKi8KKyAgICBmbXQtPmR3ID0gKDQ0ICsgKDIgKiB3KSk7CisgIH0KKyAgc3ByaW50ZihmbXQtPmZvcm1hdCwgIiUlYyUlYyUlYyAlJS0lZC4lZHMgJSUtJWQuJWRzICUlLipzXG4iLAorICAgICAgICAgIGZtdC0+bncsIGZtdC0+bncsIGZtdC0+dncsIGZtdC0+dncpOworfQorCitzdGF0aWMgdm9pZAorbGlzdF9mb3JtYXRfcHJpbnRfaGVhZGVyKHN0cnVjdCBsaXN0X2Zvcm1hdCAqZm10KQoreworICBpbnQgbDsKKworICBpZiAoZm10LT5oZWFkKQorICAgIHJldHVybjsKKworICAvKiBUUkFOU0xBVE9SUzogVGhpcyBpcyB0aGUgaGVhZGVyIHRoYXQgYXBwZWFycyBvbiAnZHBrZy1xdWVyeSAtbCcuIFRoZQorICAgKiBzdHJpbmcgc2hvdWxkIHJlbWFpbiB1bmRlciA4MCBjaGFyYWN0ZXJzLiBUaGUgdXBwZXJjYXNlIGxldHRlcnMgaW4KKyAgICogdGhlIHN0YXRlIHZhbHVlcyBkZW5vdGUgdGhlIGFiYnJldmlhdGVkIGxldHRlciB0aGF0IHdpbGwgYXBwZWFyIG9uCisgICAqIHRoZSBmaXJzdCB0aHJlZSBjb2x1bW5zLCB3aGljaCBzaG91bGQgaWRlYWxseSBtYXRjaCB0aGUgRW5nbGlzaCBvbmUKKyAgICogKGUuZy4gUmVtb3ZlIOKGkiBzdXBSaW1laXgpLCBzZWUgZHBrZy1xdWVyeSgxKSBmb3IgZnVydGhlciBkZXRhaWxzLiBUaGUKKyAgICogdHJhbnNsYXRlZCBtZXNzYWdlIGNhbiB1c2UgYWRkaXRpb25hbCBsaW5lcyBpZiBuZWVkZWQuICovCisgIGZwdXRzKF8oIlwKK0Rlc2lyZWQ9VW5rbm93bi9JbnN0YWxsL1JlbW92ZS9QdXJnZS9Ib2xkXG5cCit8IFN0YXR1cz1Ob3QvSW5zdC9Db25mLWZpbGVzL1VucGFja2VkL2hhbEYtY29uZi9IYWxmLWluc3QvdHJpZy1hV2FpdC9UcmlnLXBlbmRcblwKK3wvIEVycj89KG5vbmUpL1JlaW5zdC1yZXF1aXJlZCAoU3RhdHVzLEVycjogdXBwZXJjYXNlPWJhZClcbiIpLCBzdGRvdXQpOworICBwcmludGYoZm10LT5mb3JtYXQsICd8JywgJ3wnLCAnLycsIF8oIk5hbWUiKSwgXygiVmVyc2lvbiIpLCA0MCwKKyAgICAgICAgIF8oIkRlc2NyaXB0aW9uIikpOworCisgIC8qIFN0YXR1cyAqLworICBwcmludGYoIisrKy0iKTsKKworIC8qIFBhY2thZ2UgbmFtZS4gKi8KKyAgZm9yIChsID0gMDsgbCA8IGZtdC0+bnc7IGwrKykKKyAgICBwcmludGYoIj0iKTsKKyAgcHJpbnRmKCItIik7CisKKyAgLyogVmVyc2lvbi4gKi8KKyAgZm9yIChsID0gMDsgbCA8IGZtdC0+dnc7IGwrKykKKyAgICBwcmludGYoIj0iKTsKKyAgcHJpbnRmKCItIik7CisKKyAgLyogRGVzY3JpcHRpb24uICovCisgIGZvciAobCA9IDA7IGwgPCBmbXQtPmR3OyBsKyspCisgICAgcHJpbnRmKCI9Iik7CisgIHByaW50ZigiXG4iKTsKKworICBmbXQtPmhlYWQgPSB0cnVlOworfQorCitzdGF0aWMgdm9pZAorbGlzdDFwYWNrYWdlKHN0cnVjdCBwa2dpbmZvICpwa2csIHN0cnVjdCBsaXN0X2Zvcm1hdCAqZm10LCBzdHJ1Y3QgcGtnX2FycmF5ICphcnJheSkKK3sKKyAgaW50IGw7CisgIGNvbnN0IGNoYXIgKnBkZXNjOworCisgIGxpc3RfZm9ybWF0X2luaXQoZm10LCBhcnJheSk7CisgIGxpc3RfZm9ybWF0X3ByaW50X2hlYWRlcihmbXQpOworCisgIHBkZXNjID0gcGtnX3N1bW1hcnkocGtnLCAmbCk7CisgIGwgPSBtaW4obCwgZm10LT5kdyk7CisKKyAgcHJpbnRmKGZtdC0+Zm9ybWF0LAorICAgICAgICAgInVpaHJwIltwa2ctPndhbnRdLAorICAgICAgICAgIm5jSFVGV3RpIltwa2ctPnN0YXR1c10sCisgICAgICAgICAiIFIiW3BrZy0+ZWZsYWddLAorICAgICAgICAgcGtnLT5uYW1lLAorICAgICAgICAgdmVyc2lvbmRlc2NyaWJlKCZwa2ctPmluc3RhbGxlZC52ZXJzaW9uLCB2ZGV3X25vbmFtYmlnKSwKKyAgICAgICAgIGwsIHBkZXNjKTsKK30KKworc3RhdGljIGludAorbGlzdHBhY2thZ2VzKGNvbnN0IGNoYXIgKmNvbnN0ICphcmd2KQoreworICBzdHJ1Y3QgcGtnX2FycmF5IGFycmF5OworICBzdHJ1Y3QgcGtnaW5mbyAqcGtnOworICBpbnQgaTsKKyAgaW50IGZhaWx1cmVzID0gMDsKKyAgc3RydWN0IGxpc3RfZm9ybWF0IGZtdDsKKworICBpZiAoISphcmd2KQorICAgIG1vZHN0YXRkYl9vcGVuKG1zZGJyd19yZWFkb25seSk7CisgIGVsc2UKKyAgICBtb2RzdGF0ZGJfb3Blbihtc2RicndfcmVhZG9ubHkgfCBtc2RicndfYXZhaWxhYmxlX3JlYWRvbmx5KTsKKworICBwa2dfYXJyYXlfaW5pdF9mcm9tX2RiKCZhcnJheSk7CisgIHBrZ19hcnJheV9zb3J0KCZhcnJheSwgcGtnX3NvcnRlcl9ieV9uYW1lKTsKKworICBmbXQuaGVhZCA9IGZhbHNlOworICBmbXQuZm9ybWF0WzBdID0gJ1wwJzsKKworICBpZiAoISphcmd2KSB7CisgICAgZm9yIChpID0gMDsgaSA8IGFycmF5Lm5fcGtnczsgaSsrKSB7CisgICAgICBwa2cgPSBhcnJheS5wa2dzW2ldOworICAgICAgaWYgKHBrZy0+c3RhdHVzID09IHN0YXRfbm90aW5zdGFsbGVkKSBjb250aW51ZTsKKyAgICAgIGxpc3QxcGFja2FnZShwa2csICZmbXQsICZhcnJheSk7CisgICAgfQorICB9IGVsc2UgeworICAgIGludCBhcmdjLCBpcCwgKmZvdW5kOworCisgICAgZm9yIChhcmdjID0gMDsgYXJndlthcmdjXTsgYXJnYysrKTsKKyAgICBmb3VuZCA9IG1fbWFsbG9jKHNpemVvZihpbnQpICogYXJnYyk7CisgICAgbWVtc2V0KGZvdW5kLCAwLCBzaXplb2YoaW50KSAqIGFyZ2MpOworCisgICAgZm9yIChpID0gMDsgaSA8IGFycmF5Lm5fcGtnczsgaSsrKSB7CisgICAgICBwa2cgPSBhcnJheS5wa2dzW2ldOworICAgICAgZm9yIChpcCA9IDA7IGlwIDwgYXJnYzsgaXArKykgeworICAgICAgICBpZiAoIWZubWF0Y2goYXJndltpcF0sIHBrZy0+bmFtZSwgMCkpIHsKKyAgICAgICAgICBsaXN0MXBhY2thZ2UocGtnLCAmZm10LCAmYXJyYXkpOworICAgICAgICAgIGZvdW5kW2lwXSsrOworICAgICAgICAgIGJyZWFrOworICAgICAgICB9CisgICAgICB9CisgICAgfQorCisgICAgLyogRklYTUU6IHdlIG1pZ2h0IGdldCBub24tbWF0Y2hpbmcgbWVzc2FnZXMgZm9yIHN1Yi1wYXR0ZXJucyBzcGVjaWZpZWQKKyAgICAgKiBhZnRlciB0aGVpciBzdXBlci1wYXR0ZXJucywgZHVlIHRvIHVzIHNraXBwaW5nIG9uIGZpcnN0IG1hdGNoLiAqLworICAgIGZvciAoaXAgPSAwOyBpcCA8IGFyZ2M7IGlwKyspIHsKKyAgICAgIGlmICghZm91bmRbaXBdKSB7CisgICAgICAgIGZwcmludGYoc3RkZXJyLCBfKCJObyBwYWNrYWdlcyBmb3VuZCBtYXRjaGluZyAlcy5cbiIpLCBhcmd2W2lwXSk7CisgICAgICAgIGZhaWx1cmVzKys7CisgICAgICB9CisgICAgfQorICB9CisKKyAgbV9vdXRwdXQoc3Rkb3V0LCBfKCI8c3RhbmRhcmQgb3V0cHV0PiIpKTsKKyAgbV9vdXRwdXQoc3RkZXJyLCBfKCI8c3RhbmRhcmQgZXJyb3I+IikpOworCisgIHBrZ19hcnJheV9kZXN0cm95KCZhcnJheSk7CisgIG1vZHN0YXRkYl9zaHV0ZG93bigpOworCisgIHJldHVybiBmYWlsdXJlczsKK30KKworc3RhdGljIGludCBzZWFyY2hvdXRwdXQoc3RydWN0IGZpbGVuYW1lbm9kZSAqbmFtZW5vZGUpIHsKKyAgc3RydWN0IGZpbGVwYWNrYWdlc19pdGVyYXRvciAqaXRlcjsKKyAgc3RydWN0IHBrZ2luZm8gKnBrZ19vd25lcjsKKyAgaW50IGZvdW5kOworCisgIGlmIChuYW1lbm9kZS0+ZGl2ZXJ0KSB7CisgICAgY29uc3QgY2hhciAqbmFtZV9mcm9tID0gbmFtZW5vZGUtPmRpdmVydC0+Y2FtZWZyb20gPworICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWVub2RlLT5kaXZlcnQtPmNhbWVmcm9tLT5uYW1lIDogbmFtZW5vZGUtPm5hbWU7CisgICAgY29uc3QgY2hhciAqbmFtZV90byA9IG5hbWVub2RlLT5kaXZlcnQtPnVzZWluc3RlYWQgPworICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lbm9kZS0+ZGl2ZXJ0LT51c2VpbnN0ZWFkLT5uYW1lIDogbmFtZW5vZGUtPm5hbWU7CisKKyAgICBpZiAobmFtZW5vZGUtPmRpdmVydC0+cGtnKSB7CisgICAgICBwcmludGYoXygiZGl2ZXJzaW9uIGJ5ICVzIGZyb206ICVzXG4iKSwKKyAgICAgICAgICAgICBuYW1lbm9kZS0+ZGl2ZXJ0LT5wa2ctPm5hbWUsIG5hbWVfZnJvbSk7CisgICAgICBwcmludGYoXygiZGl2ZXJzaW9uIGJ5ICVzIHRvOiAlc1xuIiksCisgICAgICAgICAgICAgbmFtZW5vZGUtPmRpdmVydC0+cGtnLT5uYW1lLCBuYW1lX3RvKTsKKyAgICB9IGVsc2UgeworICAgICAgcHJpbnRmKF8oImxvY2FsIGRpdmVyc2lvbiBmcm9tOiAlc1xuIiksIG5hbWVfZnJvbSk7CisgICAgICBwcmludGYoXygibG9jYWwgZGl2ZXJzaW9uIHRvOiAlc1xuIiksIG5hbWVfdG8pOworICAgIH0KKyAgfQorICBmb3VuZD0gMDsKKworICBpdGVyID0gZmlsZXBhY2thZ2VzX2l0ZXJfbmV3KG5hbWVub2RlKTsKKyAgd2hpbGUgKChwa2dfb3duZXIgPSBmaWxlcGFja2FnZXNfaXRlcl9uZXh0KGl0ZXIpKSkgeworICAgIGlmIChmb3VuZCkKKyAgICAgIGZwdXRzKCIsICIsIHN0ZG91dCk7CisgICAgZnB1dHMocGtnX293bmVyLT5uYW1lLCBzdGRvdXQpOworICAgIGZvdW5kKys7CisgIH0KKyAgZmlsZXBhY2thZ2VzX2l0ZXJfZnJlZShpdGVyKTsKKworICBpZiAoZm91bmQpIHByaW50ZigiOiAlc1xuIixuYW1lbm9kZS0+bmFtZSk7CisgIHJldHVybiBmb3VuZCArIChuYW1lbm9kZS0+ZGl2ZXJ0ID8gMSA6IDApOworfQorCitzdGF0aWMgaW50CitzZWFyY2hmaWxlcyhjb25zdCBjaGFyICpjb25zdCAqYXJndikKK3sKKyAgc3RydWN0IGZpbGVuYW1lbm9kZSAqbmFtZW5vZGU7CisgIHN0cnVjdCBmaWxlaXRlcmF0b3IgKml0OworICBjb25zdCBjaGFyICp0aGlzYXJnOworICBpbnQgZm91bmQ7CisgIGludCBmYWlsdXJlcyA9IDA7CisgIHN0cnVjdCB2YXJidWYgcGF0aCA9IFZBUkJVRl9JTklUOworICBzdGF0aWMgc3RydWN0IHZhcmJ1ZiB2YjsKKworICBpZiAoISphcmd2KQorICAgIGJhZHVzYWdlKF8oIi0tc2VhcmNoIG5lZWRzIGF0IGxlYXN0IG9uZSBmaWxlIG5hbWUgcGF0dGVybiBhcmd1bWVudCIpKTsKKworICBtb2RzdGF0ZGJfb3Blbihtc2RicndfcmVhZG9ubHkpOworICBlbnN1cmVfYWxsaW5zdGZpbGVzX2F2YWlsYWJsZV9xdWlldCgpOworICBlbnN1cmVfZGl2ZXJzaW9ucygpOworCisgIHdoaWxlICgodGhpc2FyZyA9ICphcmd2KyspICE9IE5VTEwpIHsKKyAgICBmb3VuZD0gMDsKKworICAgIC8qIFRyaW0gdHJhaWxpbmcg4oCYL+KAmSBhbmQg4oCYLy7igJkgZnJvbSB0aGUgYXJndW1lbnQgaWYgaXQncworICAgICAqIG5vdCBhIHBhdHRlcm4sIGp1c3QgYSBwYXRoLiAqLworICAgIGlmICghc3RycGJyayh0aGlzYXJnLCAiKls/XFwiKSkgeworICAgICAgdmFyYnVmX3Jlc2V0KCZwYXRoKTsKKyAgICAgIHZhcmJ1Zl9hZGRfc3RyKCZwYXRoLCB0aGlzYXJnKTsKKyAgICAgIHZhcmJ1Zl9lbmRfc3RyKCZwYXRoKTsKKworICAgICAgdmFyYnVmX3RydW5jKCZwYXRoLCBwYXRoX3RyaW1fc2xhc2hfc2xhc2hkb3QocGF0aC5idWYpKTsKKworICAgICAgdGhpc2FyZyA9IHBhdGguYnVmOworICAgIH0KKworICAgIGlmICghc3RyY2hyKCIqWz8vIiwqdGhpc2FyZykpIHsKKyAgICAgIHZhcmJ1Zl9yZXNldCgmdmIpOworICAgICAgdmFyYnVmX2FkZF9jaGFyKCZ2YiwgJyonKTsKKyAgICAgIHZhcmJ1Zl9hZGRfc3RyKCZ2YiwgdGhpc2FyZyk7CisgICAgICB2YXJidWZfYWRkX2NoYXIoJnZiLCAnKicpOworICAgICAgdmFyYnVmX2VuZF9zdHIoJnZiKTsKKyAgICAgIHRoaXNhcmc9IHZiLmJ1ZjsKKyAgICB9CisgICAgaWYgKCFzdHJwYnJrKHRoaXNhcmcsICIqWz9cXCIpKSB7CisgICAgICBuYW1lbm9kZT0gZmluZG5hbWVub2RlKHRoaXNhcmcsIDApOworICAgICAgZm91bmQgKz0gc2VhcmNob3V0cHV0KG5hbWVub2RlKTsKKyAgICB9IGVsc2UgeworICAgICAgaXQ9IGl0ZXJmaWxlc3RhcnQoKTsKKyAgICAgIHdoaWxlICgobmFtZW5vZGUgPSBpdGVyZmlsZW5leHQoaXQpKSAhPSBOVUxMKSB7CisgICAgICAgIGlmIChmbm1hdGNoKHRoaXNhcmcsbmFtZW5vZGUtPm5hbWUsMCkpIGNvbnRpbnVlOworICAgICAgICBmb3VuZCs9IHNlYXJjaG91dHB1dChuYW1lbm9kZSk7CisgICAgICB9CisgICAgICBpdGVyZmlsZWVuZChpdCk7CisgICAgfQorICAgIGlmICghZm91bmQpIHsKKyAgICAgIGZwcmludGYoc3RkZXJyLCBfKCIlczogbm8gcGF0aCBmb3VuZCBtYXRjaGluZyBwYXR0ZXJuICVzLlxuIiksCisgICAgICAgICAgICAgIGRwa2dfZ2V0X3Byb2duYW1lKCksIHRoaXNhcmcpOworICAgICAgZmFpbHVyZXMrKzsKKyAgICAgIG1fb3V0cHV0KHN0ZGVyciwgXygiPHN0YW5kYXJkIGVycm9yPiIpKTsKKyAgICB9IGVsc2UgeworICAgICAgbV9vdXRwdXQoc3Rkb3V0LCBfKCI8c3RhbmRhcmQgb3V0cHV0PiIpKTsKKyAgICB9CisgIH0KKyAgbW9kc3RhdGRiX3NodXRkb3duKCk7CisKKyAgdmFyYnVmX2Rlc3Ryb3koJnBhdGgpOworCisgIHJldHVybiBmYWlsdXJlczsKK30KKworc3RhdGljIGludAorZW5xcGVycGFja2FnZShjb25zdCBjaGFyICpjb25zdCAqYXJndikKK3sKKyAgY29uc3QgY2hhciAqdGhpc2FyZzsKKyAgc3RydWN0IGZpbGVpbmxpc3QgKmZpbGU7CisgIHN0cnVjdCBwa2dpbmZvICpwa2c7CisgIHN0cnVjdCBmaWxlbmFtZW5vZGUgKm5hbWVub2RlOworICBpbnQgZmFpbHVyZXMgPSAwOworCisgIGlmICghKmFyZ3YpCisgICAgYmFkdXNhZ2UoXygiLS0lcyBuZWVkcyBhdCBsZWFzdCBvbmUgcGFja2FnZSBuYW1lIGFyZ3VtZW50IiksIGNpcGFjdGlvbi0+b2xvbmcpOworCisgIGlmIChjaXBhY3Rpb24tPmFyZ19pbnQgPT0gYWN0X3ByaW50YXZhaWwpCisgICAgbW9kc3RhdGRiX29wZW4obXNkYnJ3X3JlYWRvbmx5IHwgbXNkYnJ3X2F2YWlsYWJsZV9yZWFkb25seSk7CisgIGVsc2UKKyAgICBtb2RzdGF0ZGJfb3Blbihtc2RicndfcmVhZG9ubHkpOworCisgIHdoaWxlICgodGhpc2FyZyA9ICphcmd2KyspICE9IE5VTEwpIHsKKyAgICBwa2cgPSBwa2dfZGJfZmluZCh0aGlzYXJnKTsKKworICAgIHN3aXRjaCAoY2lwYWN0aW9uLT5hcmdfaW50KSB7CisgICAgY2FzZSBhY3Rfc3RhdHVzOgorICAgICAgaWYgKHBrZy0+c3RhdHVzID09IHN0YXRfbm90aW5zdGFsbGVkICYmCisgICAgICAgICAgcGtnLT5wcmlvcml0eSA9PSBwcmlfdW5rbm93biAmJgorICAgICAgICAgICEocGtnLT5zZWN0aW9uICYmICpwa2ctPnNlY3Rpb24pICYmCisgICAgICAgICAgIXBrZy0+ZmlsZXMgJiYKKyAgICAgICAgICBwa2ctPndhbnQgPT0gd2FudF91bmtub3duICYmCisgICAgICAgICAgIXBrZ19pc19pbmZvcm1hdGl2ZShwa2csICZwa2ctPmluc3RhbGxlZCkpIHsKKyAgICAgICAgZnByaW50ZihzdGRlcnIsXygiUGFja2FnZSBgJXMnIGlzIG5vdCBpbnN0YWxsZWQgYW5kIG5vIGluZm8gaXMgYXZhaWxhYmxlLlxuIikscGtnLT5uYW1lKTsKKyAgICAgICAgZmFpbHVyZXMrKzsKKyAgICAgIH0gZWxzZSB7CisgICAgICAgIHdyaXRlcmVjb3JkKHN0ZG91dCwgXygiPHN0YW5kYXJkIG91dHB1dD4iKSwgcGtnLCAmcGtnLT5pbnN0YWxsZWQpOworICAgICAgfQorICAgICAgYnJlYWs7CisgICAgY2FzZSBhY3RfcHJpbnRhdmFpbDoKKyAgICAgIGlmICghcGtnX2lzX2luZm9ybWF0aXZlKHBrZywgJnBrZy0+YXZhaWxhYmxlKSkgeworICAgICAgICBmcHJpbnRmKHN0ZGVycixfKCJQYWNrYWdlIGAlcycgaXMgbm90IGF2YWlsYWJsZS5cbiIpLHBrZy0+bmFtZSk7CisgICAgICAgIGZhaWx1cmVzKys7CisgICAgICB9IGVsc2UgeworICAgICAgICB3cml0ZXJlY29yZChzdGRvdXQsIF8oIjxzdGFuZGFyZCBvdXRwdXQ+IiksIHBrZywgJnBrZy0+YXZhaWxhYmxlKTsKKyAgICAgIH0KKyAgICAgIGJyZWFrOworICAgIGNhc2UgYWN0X2xpc3RmaWxlczoKKyAgICAgIHN3aXRjaCAocGtnLT5zdGF0dXMpIHsKKyAgICAgIGNhc2Ugc3RhdF9ub3RpbnN0YWxsZWQ6CisgICAgICAgIGZwcmludGYoc3RkZXJyLF8oIlBhY2thZ2UgYCVzJyBpcyBub3QgaW5zdGFsbGVkLlxuIikscGtnLT5uYW1lKTsKKyAgICAgICAgZmFpbHVyZXMrKzsKKyAgICAgICAgYnJlYWs7CisgICAgICBkZWZhdWx0OgorICAgICAgICBlbnN1cmVfcGFja2FnZWZpbGVzX2F2YWlsYWJsZShwa2cpOworICAgICAgICBlbnN1cmVfZGl2ZXJzaW9ucygpOworICAgICAgICBmaWxlPSBwa2ctPmNsaWVudGRhdGEtPmZpbGVzOworICAgICAgICBpZiAoIWZpbGUpIHsKKyAgICAgICAgICBwcmludGYoXygiUGFja2FnZSBgJXMnIGRvZXMgbm90IGNvbnRhaW4gYW55IGZpbGVzICghKVxuIikscGtnLT5uYW1lKTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICB3aGlsZSAoZmlsZSkgeworICAgICAgICAgICAgbmFtZW5vZGU9IGZpbGUtPm5hbWVub2RlOworICAgICAgICAgICAgcHV0cyhuYW1lbm9kZS0+bmFtZSk7CisgICAgICAgICAgICBpZiAobmFtZW5vZGUtPmRpdmVydCAmJiAhbmFtZW5vZGUtPmRpdmVydC0+Y2FtZWZyb20pIHsKKyAgICAgICAgICAgICAgaWYgKCFuYW1lbm9kZS0+ZGl2ZXJ0LT5wa2cpCisJCXByaW50ZihfKCJsb2NhbGx5IGRpdmVydGVkIHRvOiAlc1xuIiksCisJCSAgICAgICBuYW1lbm9kZS0+ZGl2ZXJ0LT51c2VpbnN0ZWFkLT5uYW1lKTsKKyAgICAgICAgICAgICAgZWxzZSBpZiAocGtnID09IG5hbWVub2RlLT5kaXZlcnQtPnBrZykKKwkJcHJpbnRmKF8oInBhY2thZ2UgZGl2ZXJ0cyBvdGhlcnMgdG86ICVzXG4iKSwKKwkJICAgICAgIG5hbWVub2RlLT5kaXZlcnQtPnVzZWluc3RlYWQtPm5hbWUpOworICAgICAgICAgICAgICBlbHNlCisJCXByaW50ZihfKCJkaXZlcnRlZCBieSAlcyB0bzogJXNcbiIpLAorCQkgICAgICAgbmFtZW5vZGUtPmRpdmVydC0+cGtnLT5uYW1lLAorCQkgICAgICAgbmFtZW5vZGUtPmRpdmVydC0+dXNlaW5zdGVhZC0+bmFtZSk7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBmaWxlPSBmaWxlLT5uZXh0OworICAgICAgICAgIH0KKyAgICAgICAgfQorICAgICAgICBicmVhazsKKyAgICAgIH0KKyAgICAgIGJyZWFrOworICAgIGRlZmF1bHQ6CisgICAgICBpbnRlcm5lcnIoInVua25vd24gYWN0aW9uICclZCciLCBjaXBhY3Rpb24tPmFyZ19pbnQpOworICAgIH0KKworICAgIGlmICgqYXJndiAhPSBOVUxMKQorICAgICAgcHV0Y2hhcignXG4nKTsKKworICAgIG1fb3V0cHV0KHN0ZG91dCwgXygiPHN0YW5kYXJkIG91dHB1dD4iKSk7CisgIH0KKworICBpZiAoZmFpbHVyZXMpIHsKKyAgICBmcHV0cyhfKCJVc2UgZHBrZyAtLWluZm8gKD0gZHBrZy1kZWIgLS1pbmZvKSB0byBleGFtaW5lIGFyY2hpdmUgZmlsZXMsXG4iCisgICAgICAgICAiYW5kIGRwa2cgLS1jb250ZW50cyAoPSBkcGtnLWRlYiAtLWNvbnRlbnRzKSB0byBsaXN0IHRoZWlyIGNvbnRlbnRzLlxuIiksc3RkZXJyKTsKKyAgICBtX291dHB1dChzdGRlcnIsIF8oIjxzdGFuZGFyZCBlcnJvcj4iKSk7CisgIH0KKyAgbW9kc3RhdGRiX3NodXRkb3duKCk7CisKKyAgcmV0dXJuIGZhaWx1cmVzOworfQorCitzdGF0aWMgaW50CitzaG93cGFja2FnZXMoY29uc3QgY2hhciAqY29uc3QgKmFyZ3YpCit7CisgIHN0cnVjdCBwa2dfYXJyYXkgYXJyYXk7CisgIHN0cnVjdCBwa2dpbmZvICpwa2c7CisgIHN0cnVjdCBwa2dfZm9ybWF0X25vZGUgKmZtdCA9IHBrZ19mb3JtYXRfcGFyc2Uoc2hvd2Zvcm1hdCk7CisgIGludCBpOworICBpbnQgZmFpbHVyZXMgPSAwOworCisgIGlmICghZm10KSB7CisgICAgZmFpbHVyZXMrKzsKKyAgICByZXR1cm4gZmFpbHVyZXM7CisgIH0KKworICBpZiAoISphcmd2KQorICAgIG1vZHN0YXRkYl9vcGVuKG1zZGJyd19yZWFkb25seSk7CisgIGVsc2UKKyAgICBtb2RzdGF0ZGJfb3Blbihtc2RicndfcmVhZG9ubHkgfCBtc2RicndfYXZhaWxhYmxlX3JlYWRvbmx5KTsKKworICBwa2dfYXJyYXlfaW5pdF9mcm9tX2RiKCZhcnJheSk7CisgIHBrZ19hcnJheV9zb3J0KCZhcnJheSwgcGtnX3NvcnRlcl9ieV9uYW1lKTsKKworICBpZiAoISphcmd2KSB7CisgICAgZm9yIChpID0gMDsgaSA8IGFycmF5Lm5fcGtnczsgaSsrKSB7CisgICAgICBwa2cgPSBhcnJheS5wa2dzW2ldOworICAgICAgaWYgKHBrZy0+c3RhdHVzID09IHN0YXRfbm90aW5zdGFsbGVkKSBjb250aW51ZTsKKyAgICAgIHBrZ19mb3JtYXRfc2hvdyhmbXQsIHBrZywgJnBrZy0+aW5zdGFsbGVkKTsKKyAgICB9CisgIH0gZWxzZSB7CisgICAgaW50IGFyZ2MsIGlwLCAqZm91bmQ7CisKKyAgICBmb3IgKGFyZ2MgPSAwOyBhcmd2W2FyZ2NdOyBhcmdjKyspOworICAgIGZvdW5kID0gbV9tYWxsb2Moc2l6ZW9mKGludCkgKiBhcmdjKTsKKyAgICBtZW1zZXQoZm91bmQsIDAsIHNpemVvZihpbnQpICogYXJnYyk7CisKKyAgICBmb3IgKGkgPSAwOyBpIDwgYXJyYXkubl9wa2dzOyBpKyspIHsKKyAgICAgIHBrZyA9IGFycmF5LnBrZ3NbaV07CisgICAgICBmb3IgKGlwID0gMDsgaXAgPCBhcmdjOyBpcCsrKSB7CisgICAgICAgIGlmICghZm5tYXRjaChhcmd2W2lwXSwgcGtnLT5uYW1lLCAwKSkgeworICAgICAgICAgIHBrZ19mb3JtYXRfc2hvdyhmbXQsIHBrZywgJnBrZy0+aW5zdGFsbGVkKTsKKyAgICAgICAgICBmb3VuZFtpcF0rKzsKKyAgICAgICAgICBicmVhazsKKyAgICAgICAgfQorICAgICAgfQorICAgIH0KKworICAgIC8qIEZJWE1FOiB3ZSBtaWdodCBnZXQgbm9uLW1hdGNoaW5nIG1lc3NhZ2VzIGZvciBzdWItcGF0dGVybnMgc3BlY2lmaWVkCisgICAgICogYWZ0ZXIgdGhlaXIgc3VwZXItcGF0dGVybnMsIGR1ZSB0byB1cyBza2lwcGluZyBvbiBmaXJzdCBtYXRjaC4gKi8KKyAgICBmb3IgKGlwID0gMDsgaXAgPCBhcmdjOyBpcCsrKSB7CisgICAgICBpZiAoIWZvdW5kW2lwXSkgeworICAgICAgICBmcHJpbnRmKHN0ZGVyciwgXygiTm8gcGFja2FnZXMgZm91bmQgbWF0Y2hpbmcgJXMuXG4iKSwgYXJndltpcF0pOworICAgICAgICBmYWlsdXJlcysrOworICAgICAgfQorICAgIH0KKyAgfQorCisgIG1fb3V0cHV0KHN0ZG91dCwgXygiPHN0YW5kYXJkIG91dHB1dD4iKSk7CisgIG1fb3V0cHV0KHN0ZGVyciwgXygiPHN0YW5kYXJkIGVycm9yPiIpKTsKKworICBwa2dfYXJyYXlfZGVzdHJveSgmYXJyYXkpOworICBwa2dfZm9ybWF0X2ZyZWUoZm10KTsKKyAgbW9kc3RhdGRiX3NodXRkb3duKCk7CisKKyAgcmV0dXJuIGZhaWx1cmVzOworfQorCitzdGF0aWMgdm9pZAorcGtnX2luZm9kYl9wcmludF9maWxlbmFtZShjb25zdCBjaGFyICpmaWxlbmFtZSwgY29uc3QgY2hhciAqZmlsZXR5cGUpCit7CisgIC8qIERvIG5vdCBleHBvc2UgaW50ZXJuYWwgZGF0YWJhc2UgZmlsZXMuICovCisgIGlmIChzdHJjbXAoZmlsZXR5cGUsIExJU1RGSUxFKSA9PSAwIHx8CisgICAgICBzdHJjbXAoZmlsZXR5cGUsIENPTkZGSUxFU0ZJTEUpID09IDApCisgICAgcmV0dXJuOworCisgIGlmIChzdHJsZW4oZmlsZXR5cGUpID4gTUFYQ09OVFJPTEZJTEVOQU1FKQorICAgIHJldHVybjsKKworICBwcmludGYoIiVzXG4iLCBmaWxlbmFtZSk7Cit9CisKK3N0YXRpYyB2b2lkCitjb250cm9sX3BhdGhfZmlsZShzdHJ1Y3QgcGtnaW5mbyAqcGtnLCBjb25zdCBjaGFyICpjb250cm9sX2ZpbGUpCit7CisgIGNvbnN0IGNoYXIgKmNvbnRyb2xfcGF0aDsKKyAgc3RydWN0IHN0YXQgc3Q7CisKKyAgY29udHJvbF9wYXRoID0gcGtnYWRtaW5maWxlKHBrZywgY29udHJvbF9maWxlKTsKKyAgaWYgKHN0YXQoY29udHJvbF9wYXRoLCAmc3QpIDwgMCkKKyAgICByZXR1cm47CisgIGlmICghU19JU1JFRyhzdC5zdF9tb2RlKSkKKyAgICByZXR1cm47CisKKyAgcGtnX2luZm9kYl9wcmludF9maWxlbmFtZShjb250cm9sX3BhdGgsIGNvbnRyb2xfZmlsZSk7Cit9CisKK3N0YXRpYyBpbnQKK2NvbnRyb2xfcGF0aChjb25zdCBjaGFyICpjb25zdCAqYXJndikKK3sKKyAgc3RydWN0IHBrZ2luZm8gKnBrZzsKKyAgY29uc3QgY2hhciAqcGtnX25hbWU7CisgIGNvbnN0IGNoYXIgKmNvbnRyb2xfZmlsZTsKKworICBwa2dfbmFtZSA9ICphcmd2Kys7CisgIGlmICghcGtnX25hbWUpCisgICAgYmFkdXNhZ2UoXygiLS0lcyBuZWVkcyBhdCBsZWFzdCBvbmUgcGFja2FnZSBuYW1lIGFyZ3VtZW50IiksCisgICAgICAgICAgICAgY2lwYWN0aW9uLT5vbG9uZyk7CisKKyAgY29udHJvbF9maWxlID0gKmFyZ3YrKzsKKyAgaWYgKGNvbnRyb2xfZmlsZSAmJiAqYXJndikKKyAgICBiYWR1c2FnZShfKCItLSVzIHRha2VzIGF0IG1vc3QgdHdvIGFyZ3VtZW50cyIpLCBjaXBhY3Rpb24tPm9sb25nKTsKKworICAvKiBWYWxpZGF0ZSBjb250cm9sIGZpbGUgbmFtZSBmb3Igc2FuaXR5LiAqLworICBpZiAoY29udHJvbF9maWxlKSB7CisgICAgY29uc3QgY2hhciAqYzsKKworICAgIGZvciAoYyA9ICIvLiI7ICpjOyBjKyspCisgICAgICBpZiAoc3RyY2hyKGNvbnRyb2xfZmlsZSwgKmMpKQorICAgICAgICBiYWR1c2FnZShfKCJjb250cm9sIGZpbGUgY29udGFpbnMgJWMiKSwgKmMpOworICB9CisKKyAgbW9kc3RhdGRiX29wZW4obXNkYnJ3X3JlYWRvbmx5KTsKKworICBwa2cgPSBwa2dfZGJfZmluZChwa2dfbmFtZSk7CisgIGlmIChwa2ctPnN0YXR1cyA9PSBzdGF0X25vdGluc3RhbGxlZCkKKyAgICBvaHNoaXQoXygiUGFja2FnZSBgJXMnIGlzIG5vdCBpbnN0YWxsZWQuXG4iKSwgcGtnLT5uYW1lKTsKKworICBpZiAoY29udHJvbF9maWxlKQorICAgIGNvbnRyb2xfcGF0aF9maWxlKHBrZywgY29udHJvbF9maWxlKTsKKyAgZWxzZQorICAgIHBrZ19pbmZvZGJfZm9yZWFjaChwa2csIHBrZ19pbmZvZGJfcHJpbnRfZmlsZW5hbWUpOworCisgIG1vZHN0YXRkYl9zaHV0ZG93bigpOworCisgIHJldHVybiAwOworfQorCitzdGF0aWMgdm9pZCBEUEtHX0FUVFJfTk9SRVQKK3ByaW50dmVyc2lvbihjb25zdCBzdHJ1Y3QgY21kaW5mbyAqY2ksIGNvbnN0IGNoYXIgKnZhbHVlKQoreworICBwcmludGYoXygiRGViaWFuICVzIHBhY2thZ2UgbWFuYWdlbWVudCBwcm9ncmFtIHF1ZXJ5IHRvb2wgdmVyc2lvbiAlcy5cbiIpLAorICAgICAgICAgRFBLR1FVRVJZLCBEUEtHX1ZFUlNJT05fQVJDSCk7CisgIHByaW50ZihfKAorIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgb3JcbiIKKyJsYXRlciBmb3IgY29weWluZyBjb25kaXRpb25zLiBUaGVyZSBpcyBOTyB3YXJyYW50eS5cbiIpKTsKKworICBtX291dHB1dChzdGRvdXQsIF8oIjxzdGFuZGFyZCBvdXRwdXQ+IikpOworCisgIGV4aXQoMCk7Cit9CisKK3N0YXRpYyB2b2lkIERQS0dfQVRUUl9OT1JFVAordXNhZ2UoY29uc3Qgc3RydWN0IGNtZGluZm8gKmNpLCBjb25zdCBjaGFyICp2YWx1ZSkKK3sKKyAgcHJpbnRmKF8oCisiVXNhZ2U6ICVzIFs8b3B0aW9uPiAuLi5dIDxjb21tYW5kPlxuIgorIlxuIiksIERQS0dRVUVSWSk7CisKKyAgcHJpbnRmKF8oCisiQ29tbWFuZHM6XG4iCisiICAtc3wtLXN0YXR1cyA8cGFja2FnZT4gLi4uICAgICAgICBEaXNwbGF5IHBhY2thZ2Ugc3RhdHVzIGRldGFpbHMuXG4iCisiICAtcHwtLXByaW50LWF2YWlsIDxwYWNrYWdlPiAuLi4gICBEaXNwbGF5IGF2YWlsYWJsZSB2ZXJzaW9uIGRldGFpbHMuXG4iCisiICAtTHwtLWxpc3RmaWxlcyA8cGFja2FnZT4gLi4uICAgICBMaXN0IGZpbGVzIGBvd25lZCcgYnkgcGFja2FnZShzKS5cbiIKKyIgIC1sfC0tbGlzdCBbPHBhdHRlcm4+IC4uLl0gICAgICAgIExpc3QgcGFja2FnZXMgY29uY2lzZWx5LlxuIgorIiAgLVd8LS1zaG93IFs8cGF0dGVybj4gLi4uXSAgICAgICAgU2hvdyBpbmZvcm1hdGlvbiBvbiBwYWNrYWdlKHMpLlxuIgorIiAgLVN8LS1zZWFyY2ggPHBhdHRlcm4+IC4uLiAgICAgICAgRmluZCBwYWNrYWdlKHMpIG93bmluZyBmaWxlKHMpLlxuIgorIiAgLWN8LS1jb250cm9sLXBhdGggPHBhY2thZ2U+IFs8ZmlsZT5dXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQcmludCBwYXRoIGZvciBwYWNrYWdlIGNvbnRyb2wgZmlsZS5cbiIKKyJcbiIpKTsKKworICBwcmludGYoXygKKyIgIC1ofC0taGVscCAgICAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgICAgICAgICBTaG93IHRoZSB2ZXJzaW9uLlxuIgorIlxuIikpOworCisgIHByaW50ZihfKAorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgICAgICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyIgIC1mfC0tc2hvd2Zvcm1hdD08Zm9ybWF0PiAgICAgICAgIFVzZSBhbHRlcm5hdGl2ZSBmb3JtYXQgZm9yIC0tc2hvdy5cbiIKKyJcbiIpLCBBRE1JTkRJUik7CisKKyAgcHJpbnRmKF8oCisiRm9ybWF0IHN5bnRheDpcbiIKKyIgIEEgZm9ybWF0IGlzIGEgc3RyaW5nIHRoYXQgd2lsbCBiZSBvdXRwdXQgZm9yIGVhY2ggcGFja2FnZS4gVGhlIGZvcm1hdFxuIgorIiAgY2FuIGluY2x1ZGUgdGhlIHN0YW5kYXJkIGVzY2FwZSBzZXF1ZW5jZXMgXFxuIChuZXdsaW5lKSwgXFxyIChjYXJyaWFnZVxuIgorIiAgcmV0dXJuKSBvciBcXFxcIChwbGFpbiBiYWNrc2xhc2gpLiBQYWNrYWdlIGluZm9ybWF0aW9uIGNhbiBiZSBpbmNsdWRlZFxuIgorIiAgYnkgaW5zZXJ0aW5nIHZhcmlhYmxlIHJlZmVyZW5jZXMgdG8gcGFja2FnZSBmaWVsZHMgdXNpbmcgdGhlICR7dmFyWzt3aWR0aF19XG4iCisiICBzeW50YXguIEZpZWxkcyB3aWxsIGJlIHJpZ2h0LWFsaWduZWQgdW5sZXNzIHRoZSB3aWR0aCBpcyBuZWdhdGl2ZSBpbiB3aGljaFxuIgorIiAgY2FzZSBsZWZ0IGFsaWdubWVudCB3aWxsIGJlIHVzZWQuXG4iKSk7CisKKyAgbV9vdXRwdXQoc3Rkb3V0LCBfKCI8c3RhbmRhcmQgb3V0cHV0PiIpKTsKKworICBleGl0KDApOworfQorCitzdGF0aWMgY29uc3QgY2hhciBwcmludGZvcmhlbHBbXSA9IE5fKAorIlVzZSAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgcXVlcnlpbmcgcGFja2FnZXMuIik7CisKK3N0YXRpYyBjb25zdCBjaGFyICphZG1pbmRpcjsKKworLyogVGhpcyB0YWJsZSBoYXMgYm90aCB0aGUgYWN0aW9uIGVudHJpZXMgaW4gaXQgYW5kIHRoZSBub3JtYWwgb3B0aW9ucy4KKyAqIFRoZSBhY3Rpb24gZW50cmllcyBhcmUgbWFkZSB3aXRoIHRoZSBBQ1RJT04gbWFjcm8sIGFzIHRoZXkgYWxsCisgKiBoYXZlIGEgdmVyeSBzaW1pbGFyIHN0cnVjdHVyZS4gKi8KK3N0YXRpYyBjb25zdCBzdHJ1Y3QgY21kaW5mbyBjbWRpbmZvc1tdPSB7CisgIEFDVElPTiggImxpc3RmaWxlcyIsICAgICAgICAgICAgICAgICAgICAgICdMJywgYWN0X2xpc3RmaWxlcywgICAgIGVucXBlcnBhY2thZ2UgICApLAorICBBQ1RJT04oICJzdGF0dXMiLCAgICAgICAgICAgICAgICAgICAgICAgICAncycsIGFjdF9zdGF0dXMsICAgICAgICBlbnFwZXJwYWNrYWdlICAgKSwKKyAgQUNUSU9OKCAicHJpbnQtYXZhaWwiLCAgICAgICAgICAgICAgICAgICAgJ3AnLCBhY3RfcHJpbnRhdmFpbCwgICAgZW5xcGVycGFja2FnZSAgICksCisgIEFDVElPTiggImxpc3QiLCAgICAgICAgICAgICAgICAgICAgICAgICAgICdsJywgYWN0X2xpc3RwYWNrYWdlcywgIGxpc3RwYWNrYWdlcyAgICApLAorICBBQ1RJT04oICJzZWFyY2giLCAgICAgICAgICAgICAgICAgICAgICAgICAnUycsIGFjdF9zZWFyY2hmaWxlcywgICBzZWFyY2hmaWxlcyAgICAgKSwKKyAgQUNUSU9OKCAic2hvdyIsICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1cnLCBhY3RfbGlzdHBhY2thZ2VzLCAgc2hvd3BhY2thZ2VzICAgICksCisgIEFDVElPTiggImNvbnRyb2wtcGF0aCIsICAgICAgICAgICAgICAgICAgICdjJywgYWN0X2NvbnRyb2xwYXRoLCAgIGNvbnRyb2xfcGF0aCAgICApLAorCisgIHsgImFkbWluZGlyIiwgICAwLCAgIDEsIE5VTEwsICZhZG1pbmRpciwgICBOVUxMICAgICAgICAgIH0sCisgIHsgInNob3dmb3JtYXQiLCAnZicsIDEsIE5VTEwsICZzaG93Zm9ybWF0LCBOVUxMICAgICAgICAgIH0sCisgIHsgImhlbHAiLCAgICAgICAnaCcsIDAsIE5VTEwsIE5VTEwsICAgICAgICB1c2FnZSAgICAgICAgIH0sCisgIHsgInZlcnNpb24iLCAgICAwLCAgIDAsIE5VTEwsIE5VTEwsICAgICAgICBwcmludHZlcnNpb24gIH0sCisgIHsgIE5VTEwsICAgICAgICAwLCAgIDAsIE5VTEwsIE5VTEwsICAgICAgICBOVUxMICAgICAgICAgIH0KK307CisKK2ludCBtYWluKGludCBhcmdjLCBjb25zdCBjaGFyICpjb25zdCAqYXJndikgeworICBpbnQgcmV0OworCisgIHNldGxvY2FsZShMQ19BTEwsICIiKTsKKyAgYmluZHRleHRkb21haW4oUEFDS0FHRSwgTE9DQUxFRElSKTsKKyAgdGV4dGRvbWFpbihQQUNLQUdFKTsKKworICBkcGtnX3NldF9wcm9nbmFtZSgiZHBrZy1xdWVyeSIpOworICBzdGFuZGFyZF9zdGFydHVwKCk7CisgIG15b3B0KCZhcmd2LCBjbWRpbmZvcywgcHJpbnRmb3JoZWxwKTsKKworICBhZG1pbmRpciA9IGRwa2dfZGJfc2V0X2RpcihhZG1pbmRpcik7CisKKyAgaWYgKCFjaXBhY3Rpb24pIGJhZHVzYWdlKF8oIm5lZWQgYW4gYWN0aW9uIG9wdGlvbiIpKTsKKworICBzZXR2YnVmKHN0ZG91dCwgTlVMTCwgX0lPTkJGLCAwKTsKKyAgZmlsZXNkYmluaXQoKTsKKworICByZXQgPSBjaXBhY3Rpb24tPmFjdGlvbihhcmd2KTsKKworICBzdGFuZGFyZF9zaHV0ZG93bigpOworCisgIHJldHVybiAhIXJldDsKK30KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc3JjL3JlbW92ZS5jIGIvZHBrZy0xLjE2LjEuMS9zcmMvcmVtb3ZlLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDQxNDY1ZQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc3JjL3JlbW92ZS5jCkBAIC0wLDAgKzEsNTg4IEBACisvKgorICogZHBrZyAtIG1haW4gcHJvZ3JhbSBmb3IgcGFja2FnZSBtYW5hZ2VtZW50CisgKiByZW1vdmUuYyAtIGZ1bmN0aW9uYWxpdHkgZm9yIHJlbW92aW5nIHBhY2thZ2VzCisgKgorICogQ29weXJpZ2h0IMKpIDE5OTUgSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuZ3JlZW5lbmQub3JnLnVrPgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaW5jbHVkZSA8Y29uZmlnLmg+CisjaW5jbHVkZSA8Y29tcGF0Lmg+CisKKyNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KKyNpbmNsdWRlIDxzeXMvc3RhdC5oPgorCisjaW5jbHVkZSA8ZXJybm8uaD4KKyNpbmNsdWRlIDxjdHlwZS5oPgorI2luY2x1ZGUgPHN0cmluZy5oPgorI2luY2x1ZGUgPGZjbnRsLmg+CisjaW5jbHVkZSA8ZGlyZW50Lmg+CisjaW5jbHVkZSA8dW5pc3RkLmg+CisjaW5jbHVkZSA8c3RkbGliLmg+CisjaW5jbHVkZSA8c3RkaW8uaD4KKworI2luY2x1ZGUgPGRwa2cvaTE4bi5oPgorI2luY2x1ZGUgPGRwa2cvZHBrZy5oPgorI2luY2x1ZGUgPGRwa2cvZHBrZy1kYi5oPgorI2luY2x1ZGUgPGRwa2cvZGlyLmg+CisjaW5jbHVkZSA8ZHBrZy9vcHRpb25zLmg+CisjaW5jbHVkZSA8ZHBrZy90cmlnbGliLmg+CisKKyNpbmNsdWRlICJpbmZvZGIuaCIKKyNpbmNsdWRlICJmaWxlc2RiLmgiCisjaW5jbHVkZSAibWFpbi5oIgorCisvKgorICogcGtnZGVwY2hlY2sgbWF5IGJlIGEgdmlydHVhbCBwa2cuCisgKi8KK3N0YXRpYyB2b2lkIGNoZWNrZm9ycmVtb3ZhbChzdHJ1Y3QgcGtnaW5mbyAqcGtndG9yZW1vdmUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0IHBrZ2luZm8gKnBrZ2RlcGNoZWNrLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCAqcm9rcCwgc3RydWN0IHZhcmJ1ZiAqcmFlbXNncykgeworICBzdHJ1Y3QgZGVwcG9zc2kgKnBvc3NpOworICBzdHJ1Y3QgcGtnaW5mbyAqZGVwZW5kZXI7CisgIGludCBiZWZvcmUsIG9rOworCisgIGZvciAocG9zc2kgPSBwa2dkZXBjaGVjay0+aW5zdGFsbGVkLmRlcGVuZGVkOyBwb3NzaTsgcG9zc2kgPSBwb3NzaS0+cmV2X25leHQpIHsKKyAgICBpZiAocG9zc2ktPnVwLT50eXBlICE9IGRlcF9kZXBlbmRzICYmIHBvc3NpLT51cC0+dHlwZSAhPSBkZXBfcHJlZGVwZW5kcykgY29udGludWU7CisgICAgZGVwZW5kZXI9IHBvc3NpLT51cC0+dXA7CisgICAgZGVidWcoZGJnX2RlcGNvbiwiY2hlY2tpbmcgZGVwZW5kaW5nIHBhY2thZ2UgYCVzJyIsZGVwZW5kZXItPm5hbWUpOworICAgIGlmICghKGRlcGVuZGVyLT5zdGF0dXMgPT0gc3RhdF9pbnN0YWxsZWQgfHwKKyAgICAgICAgICBkZXBlbmRlci0+c3RhdHVzID09IHN0YXRfdHJpZ2dlcnNwZW5kaW5nIHx8CisgICAgICAgICAgZGVwZW5kZXItPnN0YXR1cyA9PSBzdGF0X3RyaWdnZXJzYXdhaXRlZCkpCisgICAgICBjb250aW51ZTsKKyAgICBpZiAoaWdub3JlX2RlcGVuZHMoZGVwZW5kZXIpKSB7CisgICAgICBkZWJ1ZyhkYmdfZGVwY29uLCAiaWdub3JpbmcgZGVwZW5kaW5nIHBhY2thZ2UgJyVzJyIsIGRlcGVuZGVyLT5uYW1lKTsKKyAgICAgIGNvbnRpbnVlOworICAgIH0KKyAgICBpZiAoZGVwZW5kdHJ5ID4gMSkgeyBpZiAoZmluZGJyZWFrY3ljbGUocGtndG9yZW1vdmUpKSBzaW5jZW5vdGhpbmc9IDA7IH0KKyAgICBiZWZvcmU9IHJhZW1zZ3MtPnVzZWQ7CisgICAgb2s9IGRlcGVuZGVuY2llc19vayhkZXBlbmRlcixwa2d0b3JlbW92ZSxyYWVtc2dzKTsKKyAgICBpZiAob2sgPT0gMCAmJiBkZXBlbmRlci0+Y2xpZW50ZGF0YS0+aXN0b2JlID09IGl0Yl9yZW1vdmUpIG9rPSAxOworICAgIGlmIChvayA9PSAxKQorICAgICAgLyogRG9uJ3QgYnVyYmxlIGFib3V0IHJlYXNvbnMgZm9yIGRlZmVycmFsLiAqLworICAgICAgdmFyYnVmX3RydW5jKHJhZW1zZ3MsIGJlZm9yZSk7CisgICAgaWYgKG9rIDwgKnJva3ApICpyb2twPSBvazsKKyAgfQorfQorCit2b2lkIGRlZmVycmVkX3JlbW92ZShzdHJ1Y3QgcGtnaW5mbyAqcGtnKSB7CisgIHN0cnVjdCB2YXJidWYgcmFlbXNncyA9IFZBUkJVRl9JTklUOworICBpbnQgcm9rOworICBzdHJ1Y3QgZGVwZW5kZW5jeSAqZGVwOworCisgIGRlYnVnKGRiZ19nZW5lcmFsLCJkZWZlcnJlZF9yZW1vdmUgcGFja2FnZSAlcyIscGtnLT5uYW1lKTsKKworICBpZiAocGtnLT5zdGF0dXMgPT0gc3RhdF9ub3RpbnN0YWxsZWQpIHsKKyAgICB3YXJuaW5nKF8oImlnbm9yaW5nIHJlcXVlc3QgdG8gcmVtb3ZlICUuMjUwcyB3aGljaCBpc24ndCBpbnN0YWxsZWQuIiksCisgICAgICAgICAgICBwa2ctPm5hbWUpOworICAgIHBrZy0+Y2xpZW50ZGF0YS0+aXN0b2JlPSBpdGJfbm9ybWFsOworICAgIHJldHVybjsKKyAgfSBlbHNlIGlmICghZl9wZW5kaW5nICYmCisgICAgICAgICAgICAgcGtnLT5zdGF0dXMgPT0gc3RhdF9jb25maWdmaWxlcyAmJgorICAgICAgICAgICAgIGNpcGFjdGlvbi0+YXJnX2ludCAhPSBhY3RfcHVyZ2UpIHsKKyAgICB3YXJuaW5nKF8oImlnbm9yaW5nIHJlcXVlc3QgdG8gcmVtb3ZlICUuMjUwcywgb25seSB0aGUgY29uZmlnXG4iCisgICAgICAgICAgICAgICIgZmlsZXMgb2Ygd2hpY2ggYXJlIG9uIHRoZSBzeXN0ZW0uIFVzZSAtLXB1cmdlIHRvIHJlbW92ZSB0aGVtIHRvby4iKSwKKyAgICAgICAgICAgIHBrZy0+bmFtZSk7CisgICAgcGtnLT5jbGllbnRkYXRhLT5pc3RvYmU9IGl0Yl9ub3JtYWw7CisgICAgcmV0dXJuOworICB9CisKKyAgaWYgKHBrZy0+aW5zdGFsbGVkLmVzc2VudGlhbCAmJiBwa2ctPnN0YXR1cyAhPSBzdGF0X2NvbmZpZ2ZpbGVzKQorICAgIGZvcmNpYmxlZXJyKGZjX3JlbW92ZWVzc2VudGlhbCwgXygiVGhpcyBpcyBhbiBlc3NlbnRpYWwgcGFja2FnZSAtIgorICAgICAgICAgICAgICAgICIgaXQgc2hvdWxkIG5vdCBiZSByZW1vdmVkLiIpKTsKKworICBpZiAoIWZfcGVuZGluZykKKyAgICBwa2ctPndhbnQgPSAoY2lwYWN0aW9uLT5hcmdfaW50ID09IGFjdF9wdXJnZSkgPyB3YW50X3B1cmdlIDogd2FudF9kZWluc3RhbGw7CisgIGlmICghZl9ub2FjdCkgbW9kc3RhdGRiX25vdGUocGtnKTsKKworICBkZWJ1ZyhkYmdfZ2VuZXJhbCwiY2hlY2tpbmcgZGVwZW5kZW5jaWVzIGZvciByZW1vdmUgYCVzJyIscGtnLT5uYW1lKTsKKyAgcm9rPSAyOworICBjaGVja2ZvcnJlbW92YWwocGtnLHBrZywmcm9rLCZyYWVtc2dzKTsKKyAgZm9yIChkZXA9IHBrZy0+aW5zdGFsbGVkLmRlcGVuZHM7IGRlcDsgZGVwPSBkZXAtPm5leHQpIHsKKyAgICBpZiAoZGVwLT50eXBlICE9IGRlcF9wcm92aWRlcykgY29udGludWU7CisgICAgZGVidWcoZGJnX2RlcGNvbiwiY2hlY2tpbmcgdmlydHVhbCBwYWNrYWdlIGAlcyciLGRlcC0+bGlzdC0+ZWQtPm5hbWUpOworICAgIGNoZWNrZm9ycmVtb3ZhbChwa2csZGVwLT5saXN0LT5lZCwmcm9rLCZyYWVtc2dzKTsKKyAgfQorCisgIGlmIChyb2sgPT0gMSkgeworICAgIHZhcmJ1Zl9kZXN0cm95KCZyYWVtc2dzKTsKKyAgICBwa2ctPmNsaWVudGRhdGEtPmlzdG9iZT0gaXRiX3JlbW92ZTsKKyAgICBhZGRfdG9fcXVldWUocGtnKTsKKyAgICByZXR1cm47CisgIH0gZWxzZSBpZiAocm9rID09IDApIHsKKyAgICBzaW5jZW5vdGhpbmc9IDA7CisgICAgdmFyYnVmX2VuZF9zdHIoJnJhZW1zZ3MpOworICAgIGZwcmludGYoc3RkZXJyLAorICAgICAgICAgICAgXygiZHBrZzogZGVwZW5kZW5jeSBwcm9ibGVtcyBwcmV2ZW50IHJlbW92YWwgb2YgJXM6XG4lcyIpLAorICAgICAgICAgICAgcGtnLT5uYW1lLCByYWVtc2dzLmJ1Zik7CisgICAgb2hzaGl0KF8oImRlcGVuZGVuY3kgcHJvYmxlbXMgLSBub3QgcmVtb3ZpbmciKSk7CisgIH0gZWxzZSBpZiAocmFlbXNncy51c2VkKSB7CisgICAgdmFyYnVmX2VuZF9zdHIoJnJhZW1zZ3MpOworICAgIGZwcmludGYoc3RkZXJyLAorICAgICAgICAgICAgXygiZHBrZzogJXM6IGRlcGVuZGVuY3kgcHJvYmxlbXMsIGJ1dCByZW1vdmluZyBhbnl3YXkgYXMgeW91IHJlcXVlc3RlZDpcbiVzIiksCisgICAgICAgICAgICBwa2ctPm5hbWUsIHJhZW1zZ3MuYnVmKTsKKyAgfQorICB2YXJidWZfZGVzdHJveSgmcmFlbXNncyk7CisgIHNpbmNlbm90aGluZz0gMDsKKworICBpZiAocGtnLT5lZmxhZyAmIGVmbGFnX3JlaW5zdHJlcSkKKyAgICBmb3JjaWJsZWVycihmY19yZW1vdmVyZWluc3RyZXEsCisgICAgICAgICAgICAgICAgXygiUGFja2FnZSBpcyBpbiBhIHZlcnkgYmFkIGluY29uc2lzdGVudCBzdGF0ZSAtIHlvdSBzaG91bGRcbiIKKyAgICAgICAgICAgICAgICAiIHJlaW5zdGFsbCBpdCBiZWZvcmUgYXR0ZW1wdGluZyBhIHJlbW92YWwuIikpOworCisgIGVuc3VyZV9hbGxpbnN0ZmlsZXNfYXZhaWxhYmxlKCk7CisgIGZpbGVzZGJpbml0KCk7CisKKyAgaWYgKGZfbm9hY3QpIHsKKyAgICBwcmludGYoXygiV291bGQgcmVtb3ZlIG9yIHB1cmdlICVzIC4uLlxuIikscGtnLT5uYW1lKTsKKyAgICBwa2ctPnN0YXR1cz0gc3RhdF9ub3RpbnN0YWxsZWQ7CisgICAgcGtnLT5jbGllbnRkYXRhLT5pc3RvYmU9IGl0Yl9ub3JtYWw7CisgICAgcmV0dXJuOworICB9CisKKyAgb2xkY29uZmZzZXRmbGFncyhwa2ctPmluc3RhbGxlZC5jb25mZmlsZXMpOworCisgIHByaW50ZihfKCJSZW1vdmluZyAlcyAuLi5cbiIpLHBrZy0+bmFtZSk7CisgIGxvZ19hY3Rpb24oInJlbW92ZSIsIHBrZyk7CisgIHRyaWdfYWN0aXZhdGVfcGFja2FnZXByb2Nlc3NpbmcocGtnKTsKKyAgaWYgKHBrZy0+c3RhdHVzID49IHN0YXRfaGFsZmNvbmZpZ3VyZWQpIHsKKyAgICBzdGF0aWMgZW51bSBwa2dzdGF0dXMgb2xkcGtnc3RhdHVzOworCisgICAgb2xkcGtnc3RhdHVzPSBwa2ctPnN0YXR1czsKKyAgICBwa2ctPnN0YXR1cz0gc3RhdF9oYWxmY29uZmlndXJlZDsKKyAgICBtb2RzdGF0ZGJfbm90ZShwa2cpOworICAgIHB1c2hfY2xlYW51cChjdV9wcmVybXJlbW92ZSwgfmVoZmxhZ19ub3JtYWx0aWR5LCBOVUxMLCAwLCAyLAorICAgICAgICAgICAgICAgICAodm9pZCAqKXBrZywgKHZvaWQgKikmb2xkcGtnc3RhdHVzKTsKKyAgICBtYWludGFpbmVyX3NjcmlwdF9pbnN0YWxsZWQocGtnLCBQUkVSTUZJTEUsICJwcmUtcmVtb3ZhbCIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJyZW1vdmUiLCBOVUxMKTsKKworICAgIC8qIFdpbGwgdHVybiBpbnRvIOKAmGhhbGYtaW5zdGFsbGVk4oCZIHNvb24gLi4uICovCisgICAgcGtnLT5zdGF0dXMgPSBzdGF0X3VucGFja2VkOworICB9CisKKyAgcmVtb3ZhbF9idWxrKHBrZyk7Cit9CisKK3N0YXRpYyB2b2lkIHB1c2hfbGVmdG92ZXIoc3RydWN0IGZpbGVpbmxpc3QgKipsZWZ0b3ZlcnAsCisgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cnVjdCBmaWxlbmFtZW5vZGUgKm5hbWVub2RlKSB7CisgIHN0cnVjdCBmaWxlaW5saXN0ICpuZXdlbnRyeTsKKyAgbmV3ZW50cnk9IG5mbWFsbG9jKHNpemVvZihzdHJ1Y3QgZmlsZWlubGlzdCkpOworICBuZXdlbnRyeS0+bmV4dD0gKmxlZnRvdmVycDsKKyAgbmV3ZW50cnktPm5hbWVub2RlPSBuYW1lbm9kZTsKKyAgKmxlZnRvdmVycD0gbmV3ZW50cnk7Cit9CisKK3N0YXRpYyB2b2lkCityZW1vdmFsX2J1bGtfcmVtb3ZlX2ZpbGUoY29uc3QgY2hhciAqZmlsZW5hbWUsIGNvbnN0IGNoYXIgKmZpbGV0eXBlKQoreworICAvKiBXZSBuZWVkIHRoZSBwb3N0cm0gYW5kIGxpc3QgZmlsZXMgZm9yIC0tcHVyZ2UuICovCisgIGlmIChzdHJjbXAoZmlsZXR5cGUsIExJU1RGSUxFKSA9PSAwIHx8CisgICAgICBzdHJjbXAoZmlsZXR5cGUsIFBPU1RSTUZJTEUpID09IDApCisgICAgcmV0dXJuOworCisgIGRlYnVnKGRiZ19zdHVwaWRseXZlcmJvc2UsICJyZW1vdmFsX2J1bGsgaW5mbyBub3QgcG9zdHJtIG9yIGxpc3QiKTsKKworICBpZiAodW5saW5rKGZpbGVuYW1lKSkKKyAgICBvaHNoaXRlKF8oInVuYWJsZSB0byBkZWxldGUgY29udHJvbCBpbmZvIGZpbGUgYCUuMjUwcyciKSwgZmlsZW5hbWUpOworCisgIGRlYnVnKGRiZ19zY3JpcHRzLCAicmVtb3ZhbF9idWxrIGluZm8gdW5saW5rZWQgJXMiLCBmaWxlbmFtZSk7Cit9CisKK3N0YXRpYyB2b2lkCityZW1vdmFsX2J1bGtfcmVtb3ZlX2ZpbGVzKHN0cnVjdCBwa2dpbmZvICpwa2cpCit7CisgIGludCBiZWZvcmU7CisgIHN0cnVjdCByZXZlcnNlZmlsZWxpc3RpdGVyIHJsaXN0aXQ7CisgIHN0cnVjdCBmaWxlaW5saXN0ICpsZWZ0b3ZlcjsKKyAgc3RydWN0IGZpbGVuYW1lbm9kZSAqbmFtZW5vZGU7CisgIHN0YXRpYyBzdHJ1Y3QgdmFyYnVmIGZudmI7CisgIHN0cnVjdCBzdGF0IHN0YWI7CisKKyAgICBwa2ctPnN0YXR1cz0gc3RhdF9oYWxmaW5zdGFsbGVkOworICAgIG1vZHN0YXRkYl9ub3RlKHBrZyk7CisgICAgcHVzaF9jaGVja3BvaW50KH5laGZsYWdfYm9tYm91dCwgZWhmbGFnX25vcm1hbHRpZHkpOworCisgICAgcmV2ZXJzZWZpbGVsaXN0X2luaXQoJnJsaXN0aXQscGtnLT5jbGllbnRkYXRhLT5maWxlcyk7CisgICAgbGVmdG92ZXIgPSBOVUxMOworICAgIHdoaWxlICgobmFtZW5vZGU9IHJldmVyc2VmaWxlbGlzdF9uZXh0KCZybGlzdGl0KSkpIHsKKyAgICAgIHN0cnVjdCBmaWxlbmFtZW5vZGUgKnVzZW5vZGU7CisKKyAgICAgIGRlYnVnKGRiZ19lYWNoZmlsZSwgInJlbW92YWxfYnVsayBgJXMnIGZsYWdzPSVvIiwKKyAgICAgICAgICAgIG5hbWVub2RlLT5uYW1lLCBuYW1lbm9kZS0+ZmxhZ3MpOworICAgICAgaWYgKG5hbWVub2RlLT5mbGFncyAmIGZubmZfb2xkX2NvbmZmKSB7CisgICAgICAgIHB1c2hfbGVmdG92ZXIoJmxlZnRvdmVyLG5hbWVub2RlKTsKKyAgICAgICAgY29udGludWU7CisgICAgICB9CisKKyAgICAgIHVzZW5vZGUgPSBuYW1lbm9kZXRvdXNlKG5hbWVub2RlLCBwa2cpOworICAgICAgdHJpZ19maWxlX2FjdGl2YXRlKHVzZW5vZGUsIHBrZyk7CisKKyAgICAgIHZhcmJ1Zl9yZXNldCgmZm52Yik7CisgICAgICB2YXJidWZfYWRkX3N0cigmZm52YiwgaW5zdGRpcik7CisgICAgICB2YXJidWZfYWRkX3N0cigmZm52YiwgdXNlbm9kZS0+bmFtZSk7CisgICAgICBiZWZvcmU9IGZudmIudXNlZDsKKworICAgICAgdmFyYnVmX2FkZF9zdHIoJmZudmIsIERQS0dURU1QRVhUKTsKKyAgICAgIHZhcmJ1Zl9lbmRfc3RyKCZmbnZiKTsKKyAgICAgIGRlYnVnKGRiZ19lYWNoZmlsZWRldGFpbCwgInJlbW92YWxfYnVsayBjbGVhbmluZyB0ZW1wIGAlcyciLCBmbnZiLmJ1Zik7CisKKyAgICAgIGVuc3VyZV9wYXRobmFtZV9ub25leGlzdGluZyhmbnZiLmJ1Zik7CisKKyAgICAgIHZhcmJ1Zl90cnVuYygmZm52YiwgYmVmb3JlKTsKKyAgICAgIHZhcmJ1Zl9hZGRfc3RyKCZmbnZiLCBEUEtHTkVXRVhUKTsKKyAgICAgIHZhcmJ1Zl9lbmRfc3RyKCZmbnZiKTsKKyAgICAgIGRlYnVnKGRiZ19lYWNoZmlsZWRldGFpbCwgInJlbW92YWxfYnVsayBjbGVhbmluZyBuZXcgYCVzJyIsIGZudmIuYnVmKTsKKyAgICAgIGVuc3VyZV9wYXRobmFtZV9ub25leGlzdGluZyhmbnZiLmJ1Zik7CisKKyAgICAgIHZhcmJ1Zl90cnVuYygmZm52YiwgYmVmb3JlKTsKKyAgICAgIHZhcmJ1Zl9lbmRfc3RyKCZmbnZiKTsKKyAgICAgIGlmICghc3RhdChmbnZiLmJ1Ziwmc3RhYikgJiYgU19JU0RJUihzdGFiLnN0X21vZGUpKSB7CisgICAgICAgIGRlYnVnKGRiZ19lYWNoZmlsZWRldGFpbCwgInJlbW92YWxfYnVsayBpcyBhIGRpcmVjdG9yeSIpOworICAgICAgICAvKiBPbmx5IGRlbGV0ZSBhIGRpcmVjdG9yeSBvciBhIGxpbmsgdG8gb25lIGlmIHdlJ3JlIHRoZSBvbmx5CisgICAgICAgICAqIHBhY2thZ2Ugd2hpY2ggdXNlcyBpdC4gT3RoZXIgZmlsZXMgc2hvdWxkIG9ubHkgYmUgbGlzdGVkCisgICAgICAgICAqIGluIHRoaXMgcGFja2FnZSAoYnV0IHdlIGRvbid0IGNoZWNrKS4gKi8KKyAgICAgICAgaWYgKGRpcl9oYXNfY29uZmZpbGVzKG5hbWVub2RlLCBwa2cpKSB7CisJICBwdXNoX2xlZnRvdmVyKCZsZWZ0b3ZlcixuYW1lbm9kZSk7CisJICBjb250aW51ZTsKKwl9CisgICAgICAgIGlmIChkaXJfaXNfdXNlZF9ieV9wa2cobmFtZW5vZGUsIHBrZywgbGVmdG92ZXIpKSB7CisgICAgICAgICAgcHVzaF9sZWZ0b3ZlcigmbGVmdG92ZXIsIG5hbWVub2RlKTsKKyAgICAgICAgICBjb250aW51ZTsKKyAgICAgICAgfQorICAgICAgICBpZiAoZGlyX2lzX3VzZWRfYnlfb3RoZXJzKG5hbWVub2RlLCBwa2cpKQorICAgICAgICAgIGNvbnRpbnVlOworICAgICAgfQorICAgICAgZGVidWcoZGJnX2VhY2hmaWxlZGV0YWlsLCAicmVtb3ZhbF9idWxrIHJlbW92aW5nIGAlcyciLCBmbnZiLmJ1Zik7CisgICAgICBpZiAoIXJtZGlyKGZudmIuYnVmKSB8fCBlcnJubyA9PSBFTk9FTlQgfHwgZXJybm8gPT0gRUxPT1ApIGNvbnRpbnVlOworICAgICAgaWYgKGVycm5vID09IEVOT1RFTVBUWSB8fCBlcnJubyA9PSBFRVhJU1QpIHsKKwlkZWJ1ZyhkYmdfZWFjaGZpbGVkZXRhaWwsICJyZW1vdmFsX2J1bGsgYCVzJyB3YXMgbm90IGVtcHR5LCB3aWxsIHRyeSBhZ2FpbiBsYXRlciIsCisJICAgICAgZm52Yi5idWYpOworICAgICAgICBwdXNoX2xlZnRvdmVyKCZsZWZ0b3ZlcixuYW1lbm9kZSk7CisgICAgICAgIGNvbnRpbnVlOworICAgICAgfSBlbHNlIGlmIChlcnJubyA9PSBFQlVTWSB8fCBlcnJubyA9PSBFUEVSTSkgeworICAgICAgICB3YXJuaW5nKF8oIndoaWxlIHJlbW92aW5nICUuMjUwcywgdW5hYmxlIHRvIHJlbW92ZSBkaXJlY3RvcnkgJyUuMjUwcyc6ICIKKyAgICAgICAgICAgICAgICAgICIlcyAtIGRpcmVjdG9yeSBtYXkgYmUgYSBtb3VudCBwb2ludD8iKSwKKyAgICAgICAgICAgICAgICBwa2ctPm5hbWUsIG5hbWVub2RlLT5uYW1lLCBzdHJlcnJvcihlcnJubykpOworICAgICAgICBwdXNoX2xlZnRvdmVyKCZsZWZ0b3ZlcixuYW1lbm9kZSk7CisgICAgICAgIGNvbnRpbnVlOworICAgICAgfSBlbHNlIGlmIChlcnJubyA9PSBFSU5WQUwgJiYgc3RyY21wKHVzZW5vZGUtPm5hbWUsICIvLiIpID09IDApIHsKKyAgICAgICAgZGVidWcoZGJnX2VhY2hmaWxlZGV0YWlsLCAicmVtb3ZhbF9idWxrICclcycgcm9vdCBkaXJlY3RvcnksIGNhbm5vdCByZW1vdmUiLAorICAgICAgICAgICAgICBmbnZiLmJ1Zik7CisgICAgICAgIHB1c2hfbGVmdG92ZXIoJmxlZnRvdmVyLCBuYW1lbm9kZSk7CisgICAgICAgIGNvbnRpbnVlOworICAgICAgfQorICAgICAgaWYgKGVycm5vICE9IEVOT1RESVIpIG9oc2hpdGUoXygiY2Fubm90IHJlbW92ZSBgJS4yNTBzJyIpLGZudmIuYnVmKTsKKyAgICAgIGRlYnVnKGRiZ19lYWNoZmlsZWRldGFpbCwgInJlbW92YWxfYnVsayB1bmxpbmtpbmcgYCVzJyIsIGZudmIuYnVmKTsKKyAgICAgIGlmIChzZWN1cmVfdW5saW5rKGZudmIuYnVmKSkKKyAgICAgICAgb2hzaGl0ZShfKCJ1bmFibGUgdG8gc2VjdXJlbHkgcmVtb3ZlICclLjI1MHMnIiksIGZudmIuYnVmKTsKKyAgICB9CisgICAgd3JpdGVfZmlsZWxpc3RfZXhjZXB0KHBrZyxsZWZ0b3ZlciwwKTsKKyAgICBtYWludGFpbmVyX3NjcmlwdF9pbnN0YWxsZWQocGtnLCBQT1NUUk1GSUxFLCAicG9zdC1yZW1vdmFsIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInJlbW92ZSIsIE5VTEwpOworCisgICAgdHJpZ19wYXJzZV9jaShwa2dhZG1pbmZpbGUocGtnLCBUUklHR0VSU0NJRklMRSksCisgICAgICAgICAgICAgICAgICB0cmlnX2NpY2JfaW50ZXJlc3RfZGVsZXRlLCBOVUxMLCBwa2cpOworICAgIHRyaWdfZmlsZV9pbnRlcmVzdHNfc2F2ZSgpOworCisgICAgZGVidWcoZGJnX2dlbmVyYWwsICJyZW1vdmFsX2J1bGsgY2xlYW5pbmcgaW5mbyBkaXJlY3RvcnkiKTsKKyAgICBwa2dfaW5mb2RiX2ZvcmVhY2gocGtnLCByZW1vdmFsX2J1bGtfcmVtb3ZlX2ZpbGUpOworICAgIGRpcl9zeW5jX3BhdGgocGtnYWRtaW5kaXIoKSk7CisKKyAgICBwa2ctPnN0YXR1cz0gc3RhdF9jb25maWdmaWxlczsKKyAgICBwa2ctPmluc3RhbGxlZC5lc3NlbnRpYWwgPSBmYWxzZTsKKyAgICBtb2RzdGF0ZGJfbm90ZShwa2cpOworICAgIHB1c2hfY2hlY2twb2ludCh+ZWhmbGFnX2JvbWJvdXQsIGVoZmxhZ19ub3JtYWx0aWR5KTsKK30KKworc3RhdGljIHZvaWQgcmVtb3ZhbF9idWxrX3JlbW92ZV9sZWZ0b3Zlcl9kaXJzKHN0cnVjdCBwa2dpbmZvICpwa2cpIHsKKyAgc3RydWN0IHJldmVyc2VmaWxlbGlzdGl0ZXIgcmxpc3RpdDsKKyAgc3RydWN0IGZpbGVpbmxpc3QgKmxlZnRvdmVyOworICBzdHJ1Y3QgZmlsZW5hbWVub2RlICpuYW1lbm9kZTsKKyAgc3RhdGljIHN0cnVjdCB2YXJidWYgZm52YjsKKyAgc3RydWN0IHN0YXQgc3RhYjsKKworICAvKiBXZSBtYXkgaGF2ZSBtb2RpZmllZCB0aGlzIHByZXZpb3VzbHkuICovCisgIGVuc3VyZV9wYWNrYWdlZmlsZXNfYXZhaWxhYmxlKHBrZyk7CisKKyAgbW9kc3RhdGRiX25vdGUocGtnKTsKKyAgcHVzaF9jaGVja3BvaW50KH5laGZsYWdfYm9tYm91dCwgZWhmbGFnX25vcm1hbHRpZHkpOworCisgIHJldmVyc2VmaWxlbGlzdF9pbml0KCZybGlzdGl0LHBrZy0+Y2xpZW50ZGF0YS0+ZmlsZXMpOworICBsZWZ0b3ZlciA9IE5VTEw7CisgIHdoaWxlICgobmFtZW5vZGU9IHJldmVyc2VmaWxlbGlzdF9uZXh0KCZybGlzdGl0KSkpIHsKKyAgICBzdHJ1Y3QgZmlsZW5hbWVub2RlICp1c2Vub2RlOworCisgICAgZGVidWcoZGJnX2VhY2hmaWxlLCAicmVtb3ZhbF9idWxrIGAlcycgZmxhZ3M9JW8iLAorICAgICAgICAgIG5hbWVub2RlLT5uYW1lLCBuYW1lbm9kZS0+ZmxhZ3MpOworICAgIGlmIChuYW1lbm9kZS0+ZmxhZ3MgJiBmbm5mX29sZF9jb25mZikgeworICAgICAgLyogVGhpcyBjYW4gb25seSBoYXBwZW4gaWYgcmVtb3ZhbF9idWxrX3JlbW92ZV9jb25maWdmaWxlcygpIGdvdAorICAgICAgICogaW50ZXJydXB0ZWQgaGFsZiB3YXkuICovCisgICAgICBkZWJ1ZyhkYmdfZWFjaGZpbGVkZXRhaWwsICJyZW1vdmFsX2J1bGsgZXhwZWN0aW5nIG9ubHkgbGVmdCBvdmVyIGRpcnMsICIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImlnbm9yaW5nIGNvbmZmaWxlICclcyciLCBuYW1lbm9kZS0+bmFtZSk7CisgICAgICBjb250aW51ZTsKKyAgICB9CisKKyAgICB1c2Vub2RlID0gbmFtZW5vZGV0b3VzZShuYW1lbm9kZSwgcGtnKTsKKyAgICB0cmlnX2ZpbGVfYWN0aXZhdGUodXNlbm9kZSwgcGtnKTsKKworICAgIHZhcmJ1Zl9yZXNldCgmZm52Yik7CisgICAgdmFyYnVmX2FkZF9zdHIoJmZudmIsIGluc3RkaXIpOworICAgIHZhcmJ1Zl9hZGRfc3RyKCZmbnZiLCB1c2Vub2RlLT5uYW1lKTsKKyAgICB2YXJidWZfZW5kX3N0cigmZm52Yik7CisKKyAgICBpZiAoIXN0YXQoZm52Yi5idWYsJnN0YWIpICYmIFNfSVNESVIoc3RhYi5zdF9tb2RlKSkgeworICAgICAgZGVidWcoZGJnX2VhY2hmaWxlZGV0YWlsLCAicmVtb3ZhbF9idWxrIGlzIGEgZGlyZWN0b3J5Iik7CisgICAgICAvKiBPbmx5IGRlbGV0ZSBhIGRpcmVjdG9yeSBvciBhIGxpbmsgdG8gb25lIGlmIHdlJ3JlIHRoZSBvbmx5CisgICAgICAgKiBwYWNrYWdlIHdoaWNoIHVzZXMgaXQuIE90aGVyIGZpbGVzIHNob3VsZCBvbmx5IGJlIGxpc3RlZAorICAgICAgICogaW4gdGhpcyBwYWNrYWdlIChidXQgd2UgZG9uJ3QgY2hlY2spLiAqLworICAgICAgaWYgKGRpcl9pc191c2VkX2J5X3BrZyhuYW1lbm9kZSwgcGtnLCBsZWZ0b3ZlcikpIHsKKyAgICAgICAgcHVzaF9sZWZ0b3ZlcigmbGVmdG92ZXIsIG5hbWVub2RlKTsKKyAgICAgICAgY29udGludWU7CisgICAgICB9CisgICAgICBpZiAoZGlyX2lzX3VzZWRfYnlfb3RoZXJzKG5hbWVub2RlLCBwa2cpKQorICAgICAgICBjb250aW51ZTsKKyAgICB9CisKKyAgICBkZWJ1ZyhkYmdfZWFjaGZpbGVkZXRhaWwsICJyZW1vdmFsX2J1bGsgcmVtb3ZpbmcgYCVzJyIsIGZudmIuYnVmKTsKKyAgICBpZiAoIXJtZGlyKGZudmIuYnVmKSB8fCBlcnJubyA9PSBFTk9FTlQgfHwgZXJybm8gPT0gRUxPT1ApIGNvbnRpbnVlOworICAgIGlmIChlcnJubyA9PSBFTk9URU1QVFkgfHwgZXJybm8gPT0gRUVYSVNUKSB7CisgICAgICB3YXJuaW5nKF8oIndoaWxlIHJlbW92aW5nICUuMjUwcywgZGlyZWN0b3J5ICclLjI1MHMnIG5vdCBlbXB0eSBzbyBub3QgcmVtb3ZlZC4iKSwKKyAgICAgICAgICAgICAgcGtnLT5uYW1lLCBuYW1lbm9kZS0+bmFtZSk7CisgICAgICBwdXNoX2xlZnRvdmVyKCZsZWZ0b3ZlcixuYW1lbm9kZSk7CisgICAgICBjb250aW51ZTsKKyAgICB9IGVsc2UgaWYgKGVycm5vID09IEVCVVNZIHx8IGVycm5vID09IEVQRVJNKSB7CisgICAgICB3YXJuaW5nKF8oIndoaWxlIHJlbW92aW5nICUuMjUwcywgdW5hYmxlIHRvIHJlbW92ZSBkaXJlY3RvcnkgJyUuMjUwcyc6ICIKKyAgICAgICAgICAgICAgICAiJXMgLSBkaXJlY3RvcnkgbWF5IGJlIGEgbW91bnQgcG9pbnQ/IiksCisgICAgICAgICAgICAgIHBrZy0+bmFtZSwgbmFtZW5vZGUtPm5hbWUsIHN0cmVycm9yKGVycm5vKSk7CisgICAgICBwdXNoX2xlZnRvdmVyKCZsZWZ0b3ZlcixuYW1lbm9kZSk7CisgICAgICBjb250aW51ZTsKKyAgICB9IGVsc2UgaWYgKGVycm5vID09IEVJTlZBTCAmJiBzdHJjbXAodXNlbm9kZS0+bmFtZSwgIi8uIikgPT0gMCkgeworICAgICAgZGVidWcoZGJnX2VhY2hmaWxlZGV0YWlsLCAicmVtb3ZhbF9idWxrICclcycgcm9vdCBkaXJlY3RvcnksIGNhbm5vdCByZW1vdmUiLAorICAgICAgICAgICAgZm52Yi5idWYpOworICAgICAgcHVzaF9sZWZ0b3ZlcigmbGVmdG92ZXIsIG5hbWVub2RlKTsKKyAgICAgIGNvbnRpbnVlOworICAgIH0KKyAgICBpZiAoZXJybm8gIT0gRU5PVERJUikgb2hzaGl0ZShfKCJjYW5ub3QgcmVtb3ZlIGAlLjI1MHMnIiksZm52Yi5idWYpOworCisgICAgaWYgKGxzdGF0KGZudmIuYnVmLCAmc3RhYikgPT0gMCAmJiBTX0lTTE5LKHN0YWIuc3RfbW9kZSkpIHsKKyAgICAgIGRlYnVnKGRiZ19lYWNoZmlsZWRldGFpbCwgInJlbW92YWxfYnVsayBpcyBhIHN5bWxpbmsgdG8gYSBkaXJlY3RvcnkiKTsKKworICAgICAgaWYgKHVubGluayhmbnZiLmJ1ZikpCisgICAgICAgIG9oc2hpdGUoXygiY2Fubm90IHJlbW92ZSAnJS4yNTBzJyIpLCBmbnZiLmJ1Zik7CisKKyAgICAgIGNvbnRpbnVlOworICAgIH0KKworICAgIHB1c2hfbGVmdG92ZXIoJmxlZnRvdmVyLG5hbWVub2RlKTsKKyAgICBjb250aW51ZTsKKyAgfQorICB3cml0ZV9maWxlbGlzdF9leGNlcHQocGtnLGxlZnRvdmVyLDApOworCisgIG1vZHN0YXRkYl9ub3RlKHBrZyk7CisgIHB1c2hfY2hlY2twb2ludCh+ZWhmbGFnX2JvbWJvdXQsIGVoZmxhZ19ub3JtYWx0aWR5KTsKK30KKworc3RhdGljIHZvaWQgcmVtb3ZhbF9idWxrX3JlbW92ZV9jb25maWdmaWxlcyhzdHJ1Y3QgcGtnaW5mbyAqcGtnKSB7CisgIHN0YXRpYyBjb25zdCBjaGFyICpjb25zdCByZW1vdmVjb25mZmV4dHNbXSA9IHsgUkVNT1ZFQ09ORkZFWFRTLCBOVUxMIH07CisgIGludCByLCByZW1vdmV2YmJhc2U7CisgIGludCBjb25mZm5hbWV1c2VkLCBjb25mZmJhc2VuYW1lbGVuOworICBjaGFyICpjb25mZmJhc2VuYW1lOworICBzdHJ1Y3QgY29uZmZpbGUgKmNvbmZmLCAqKmxjb25mZnA7CisgIHN0cnVjdCBmaWxlaW5saXN0ICpzZWFyY2hmaWxlOworICBESVIgKmRzZDsKKyAgc3RydWN0IGRpcmVudCAqZGU7CisgIGNoYXIgKnA7CisgIGNvbnN0IGNoYXIgKmNvbnN0ICpleHQ7CisKKyAgICBwcmludGYoXygiUHVyZ2luZyBjb25maWd1cmF0aW9uIGZpbGVzIGZvciAlcyAuLi5cbiIpLHBrZy0+bmFtZSk7CisgICAgbG9nX2FjdGlvbigicHVyZ2UiLCBwa2cpOworICAgIHRyaWdfYWN0aXZhdGVfcGFja2FnZXByb2Nlc3NpbmcocGtnKTsKKworICAgIC8qIFdlIG1heSBoYXZlIG1vZGlmaWVkIHRoaXMgYWJvdmUuICovCisgICAgZW5zdXJlX3BhY2thZ2VmaWxlc19hdmFpbGFibGUocGtnKTsKKworICAgIC8qIFdlJ3JlIGFib3V0IHRvIHJlbW92ZSB0aGUgY29uZmlndXJhdGlvbiwgc28gcmVtb3ZlIHRoZSBub3RlCisgICAgICogYWJvdXQgd2hpY2ggdmVyc2lvbiBpdCB3YXMgLi4uICovCisgICAgYmxhbmt2ZXJzaW9uKCZwa2ctPmNvbmZpZ3ZlcnNpb24pOworICAgIG1vZHN0YXRkYl9ub3RlKHBrZyk7CisKKyAgICAvKiBSZW1vdmUgZnJvbSBvdXIgbGlzdCBhbnkgY29uZmZpbGVzIHRoYXQgYXJlbid0IG91cnMgYW55IG1vcmUgb3IKKyAgICAgKiBhcmUgaW52b2x2ZWQgaW4gZGl2ZXJzaW9ucywgZXhjZXB0IGlmIHdlIGFyZSB0aGUgcGFja2FnZSBkb2luZyB0aGUKKyAgICAgKiBkaXZlcnRpbmcuICovCisgICAgZm9yIChsY29uZmZwID0gJnBrZy0+aW5zdGFsbGVkLmNvbmZmaWxlczsgKGNvbmZmID0gKmxjb25mZnApICE9IE5VTEw7ICkgeworICAgICAgZm9yIChzZWFyY2hmaWxlPSBwa2ctPmNsaWVudGRhdGEtPmZpbGVzOworICAgICAgICAgICBzZWFyY2hmaWxlICYmIHN0cmNtcChzZWFyY2hmaWxlLT5uYW1lbm9kZS0+bmFtZSxjb25mZi0+bmFtZSk7CisgICAgICAgICAgIHNlYXJjaGZpbGU9IHNlYXJjaGZpbGUtPm5leHQpOworICAgICAgaWYgKCFzZWFyY2hmaWxlKSB7CisgICAgICAgIGRlYnVnKGRiZ19jb25mZiwicmVtb3ZhbF9idWxrIGNvbmZmaWxlIG5vdCBvdXJzIGFueSBtb3JlIGAlcyciLGNvbmZmLT5uYW1lKTsKKyAgICAgICAgKmxjb25mZnA9IGNvbmZmLT5uZXh0OworICAgICAgfSBlbHNlIGlmIChzZWFyY2hmaWxlLT5uYW1lbm9kZS0+ZGl2ZXJ0ICYmCisgICAgICAgICAgICAgICAgIChzZWFyY2hmaWxlLT5uYW1lbm9kZS0+ZGl2ZXJ0LT5jYW1lZnJvbSB8fAorICAgICAgICAgICAgICAgICAgKHNlYXJjaGZpbGUtPm5hbWVub2RlLT5kaXZlcnQtPnVzZWluc3RlYWQgJiYKKyAgICAgICAgICAgICAgICAgICBzZWFyY2hmaWxlLT5uYW1lbm9kZS0+ZGl2ZXJ0LT5wa2cgIT0gcGtnKSkpIHsKKyAgICAgICAgZGVidWcoZGJnX2NvbmZmLCAicmVtb3ZhbF9idWxrIGNvbmZmaWxlICclcycgaWdub3JlZCBkdWUgdG8gZGl2ZXJzaW9uIiwKKyAgICAgICAgICAgICAgY29uZmYtPm5hbWUpOworICAgICAgICAqbGNvbmZmcD0gY29uZmYtPm5leHQ7CisgICAgICB9IGVsc2UgeworICAgICAgICBkZWJ1ZyhkYmdfY29uZmZkZXRhaWwsInJlbW92YWxfYnVsayBzZXQgdG8gbmV3IGNvbmZmaWxlIGAlcyciLGNvbmZmLT5uYW1lKTsKKyAgICAgICAgY29uZmYtPmhhc2ggPSBORVdDT05GRklMRUZMQUc7CisgICAgICAgIGxjb25mZnA9ICZjb25mZi0+bmV4dDsKKyAgICAgIH0KKyAgICB9CisgICAgbW9kc3RhdGRiX25vdGUocGtnKTsKKworICAgIGZvciAoY29uZmY9IHBrZy0+aW5zdGFsbGVkLmNvbmZmaWxlczsgY29uZmY7IGNvbmZmPSBjb25mZi0+bmV4dCkgeworICAgIHN0YXRpYyBzdHJ1Y3QgdmFyYnVmIGZudmIsIHJlbW92ZXZiOworICAgICAgaWYgKGNvbmZmLT5vYnNvbGV0ZSkgeworCWRlYnVnKGRiZ19jb25mZmRldGFpbCwgInJlbW92YWxfYnVsayBjb25mZmlsZSBvYnNvbGV0ZSAlcyIsCisJICAgICAgY29uZmYtPm5hbWUpOworICAgICAgfQorICAgICAgdmFyYnVmX3Jlc2V0KCZmbnZiKTsKKyAgICAgIHI9IGNvbmZmZGVyZWYocGtnLCAmZm52YiwgY29uZmYtPm5hbWUpOworICAgICAgZGVidWcoZGJnX2NvbmZmZGV0YWlsLCAicmVtb3ZhbF9idWxrIGNvbmZmaWxlIGAlcycgKD0gYCVzJykiLAorICAgICAgICAgICAgY29uZmYtPm5hbWUsIHIgPT0gLTEgPyAiPHI9PS0xPiIgOiBmbnZiLmJ1Zik7CisgICAgICBpZiAociA9PSAtMSkgY29udGludWU7CisgICAgICBjb25mZm5hbWV1c2VkID0gZm52Yi51c2VkOworICAgICAgaWYgKHVubGluayhmbnZiLmJ1ZikgJiYgZXJybm8gIT0gRU5PRU5UICYmIGVycm5vICE9IEVOT1RESVIpCisgICAgICAgIG9oc2hpdGUoXygiY2Fubm90IHJlbW92ZSBvbGQgY29uZmlnIGZpbGUgYCUuMjUwcycgKD0gYCUuMjUwcycpIiksCisgICAgICAgICAgICAgICAgY29uZmYtPm5hbWUsIGZudmIuYnVmKTsKKyAgICAgIHA9IHN0cnJjaHIoZm52Yi5idWYsJy8nKTsgaWYgKCFwKSBjb250aW51ZTsKKyAgICAgICpwID0gJ1wwJzsKKyAgICAgIHZhcmJ1Zl9yZXNldCgmcmVtb3ZldmIpOworICAgICAgdmFyYnVmX2FkZF9zdHIoJnJlbW92ZXZiLCBmbnZiLmJ1Zik7CisgICAgICB2YXJidWZfYWRkX2NoYXIoJnJlbW92ZXZiLCAnLycpOworICAgICAgcmVtb3ZldmJiYXNlPSByZW1vdmV2Yi51c2VkOworICAgICAgdmFyYnVmX2VuZF9zdHIoJnJlbW92ZXZiKTsKKyAgICAgIGRzZD0gb3BlbmRpcihyZW1vdmV2Yi5idWYpOworICAgICAgaWYgKCFkc2QpIHsKKyAgICAgICAgaW50IGU9ZXJybm87CisgICAgICAgIGRlYnVnKGRiZ19jb25mZmRldGFpbCwgInJlbW92YWxfYnVsayBjb25mZmlsZSBubyBkc2QgJXMgJXMiLAorICAgICAgICAgICAgICBmbnZiLmJ1Ziwgc3RyZXJyb3IoZSkpOyBlcnJubz0gZTsKKyAgICAgICAgaWYgKGVycm5vID09IEVOT0VOVCB8fCBlcnJubyA9PSBFTk9URElSKSBjb250aW51ZTsKKyAgICAgICAgb2hzaGl0ZShfKCJjYW5ub3QgcmVhZCBjb25maWcgZmlsZSBkaXIgYCUuMjUwcycgKGZyb20gYCUuMjUwcycpIiksCisgICAgICAgICAgICAgICAgZm52Yi5idWYsIGNvbmZmLT5uYW1lKTsKKyAgICAgIH0KKyAgICAgIGRlYnVnKGRiZ19jb25mZmRldGFpbCwgInJlbW92YWxfYnVsayBjb25mZmlsZSBjbGVhbmluZyBkc2QgJXMiLCBmbnZiLmJ1Zik7CisgICAgICBwdXNoX2NsZWFudXAoY3VfY2xvc2VkaXIsIH4wLCBOVUxMLCAwLCAxLCAodm9pZCAqKWRzZCk7CisgICAgICAqcD0gJy8nOworICAgICAgY29uZmZiYXNlbmFtZWxlbj0gc3RybGVuKCsrcCk7CisgICAgICBjb25mZmJhc2VuYW1lPSBmbnZiLmJ1Zitjb25mZm5hbWV1c2VkLWNvbmZmYmFzZW5hbWVsZW47CisgICAgICB3aGlsZSAoKGRlID0gcmVhZGRpcihkc2QpKSAhPSBOVUxMKSB7CisgICAgICAgIGRlYnVnKGRiZ19zdHVwaWRseXZlcmJvc2UsICJyZW1vdmFsX2J1bGsgY29uZmZpbGUgZHNkIGVudHJ5PWAlcyciCisgICAgICAgICAgICAgICIgY29uZmZiYXNlbmFtZT1gJXMnIGNvbmZmbmFtZXVzZWQ9JWQgY29uZmZiYXNlbmFtZWxlbj0lZCIsCisgICAgICAgICAgICAgIGRlLT5kX25hbWUsIGNvbmZmYmFzZW5hbWUsIGNvbmZmbmFtZXVzZWQsIGNvbmZmYmFzZW5hbWVsZW4pOworICAgICAgICBpZiAoIXN0cm5jbXAoZGUtPmRfbmFtZSxjb25mZmJhc2VuYW1lLGNvbmZmYmFzZW5hbWVsZW4pKSB7CisgICAgICAgICAgZGVidWcoZGJnX3N0dXBpZGx5dmVyYm9zZSwgInJlbW92YWxfYnVsayBjb25mZmlsZSBkc2QgZW50cnkgc3RhcnRzIHJpZ2h0Iik7CisgICAgICAgICAgZm9yIChleHQ9IHJlbW92ZWNvbmZmZXh0czsgKmV4dDsgZXh0KyspCisgICAgICAgICAgICBpZiAoIXN0cmNtcCgqZXh0LGRlLT5kX25hbWUrY29uZmZiYXNlbmFtZWxlbikpIGdvdG8geWVzX3JlbW92ZTsKKyAgICAgICAgICBwPSBkZS0+ZF9uYW1lK2NvbmZmYmFzZW5hbWVsZW47CisgICAgICAgICAgaWYgKCpwKysgPT0gJ34nKSB7CisgICAgICAgICAgICB3aGlsZSAoKnAgJiYgY2lzZGlnaXQoKnApKSBwKys7CisgICAgICAgICAgICBpZiAoKnAgPT0gJ34nICYmICEqKytwKSBnb3RvIHllc19yZW1vdmU7CisgICAgICAgICAgfQorICAgICAgICB9CisgICAgICAgIGRlYnVnKGRiZ19zdHVwaWRseXZlcmJvc2UsICJyZW1vdmFsX2J1bGsgY29uZmZpbGUgZHNkIGVudHJ5IHN0YXJ0cyB3cm9uZyIpOworICAgICAgICBpZiAoZGUtPmRfbmFtZVswXSA9PSAnIycgJiYKKyAgICAgICAgICAgICFzdHJuY21wKGRlLT5kX25hbWUrMSxjb25mZmJhc2VuYW1lLGNvbmZmYmFzZW5hbWVsZW4pICYmCisgICAgICAgICAgICAhc3RyY21wKGRlLT5kX25hbWUrMStjb25mZmJhc2VuYW1lbGVuLCIjIikpCisgICAgICAgICAgZ290byB5ZXNfcmVtb3ZlOworICAgICAgICBkZWJ1ZyhkYmdfc3R1cGlkbHl2ZXJib3NlLCAicmVtb3ZhbF9idWxrIGNvbmZmaWxlIGRzZCBlbnRyeSBub3QgaXQiKTsKKyAgICAgICAgY29udGludWU7CisgICAgICB5ZXNfcmVtb3ZlOgorICAgICAgICB2YXJidWZfdHJ1bmMoJnJlbW92ZXZiLCByZW1vdmV2YmJhc2UpOworICAgICAgICB2YXJidWZfYWRkX3N0cigmcmVtb3ZldmIsIGRlLT5kX25hbWUpOworICAgICAgICB2YXJidWZfZW5kX3N0cigmcmVtb3ZldmIpOworICAgICAgICBkZWJ1ZyhkYmdfY29uZmZkZXRhaWwsICJyZW1vdmFsX2J1bGsgY29uZmZpbGUgZHNkIGVudHJ5IHJlbW92aW5nIGAlcyciLAorICAgICAgICAgICAgICByZW1vdmV2Yi5idWYpOworICAgICAgICBpZiAodW5saW5rKHJlbW92ZXZiLmJ1ZikgJiYgZXJybm8gIT0gRU5PRU5UICYmIGVycm5vICE9IEVOT1RESVIpCisgICAgICAgICAgb2hzaGl0ZShfKCJjYW5ub3QgcmVtb3ZlIG9sZCBiYWNrdXAgY29uZmlnIGZpbGUgYCUuMjUwcycgKG9mIGAlLjI1MHMnKSIpLAorICAgICAgICAgICAgICAgICAgcmVtb3ZldmIuYnVmLCBjb25mZi0+bmFtZSk7CisgICAgICB9CisgICAgICBwb3BfY2xlYW51cChlaGZsYWdfbm9ybWFsdGlkeSk7IC8qIGNsb3NlZGlyICovCisgICAgfQorCisgICAgLyogUmVtb3ZlIHRoZSBjb25mZmlsZXMgZnJvbSB0aGUgZmlsZSBsaXN0IGZpbGUuICovCisgICAgd3JpdGVfZmlsZWxpc3RfZXhjZXB0KHBrZywgcGtnLT5jbGllbnRkYXRhLT5maWxlcywgZm5uZl9vbGRfY29uZmYpOworCisgICAgcGtnLT5pbnN0YWxsZWQuY29uZmZpbGVzID0gTlVMTDsKKyAgICBtb2RzdGF0ZGJfbm90ZShwa2cpOworCisgICAgbWFpbnRhaW5lcl9zY3JpcHRfaW5zdGFsbGVkKHBrZywgUE9TVFJNRklMRSwgInBvc3QtcmVtb3ZhbCIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJwdXJnZSIsIE5VTEwpOworfQorCisvKgorICogVGhpcyBpcyB1c2VkIGJvdGggYnkgZGVmZXJyZWRfcmVtb3ZlKCkgaW4gdGhpcyBmaWxlLCBhbmQgYXQgdGhlIGVuZCBvZgorICogcHJvY2Vzc19hcmNoaXZlKCkgaW4gYXJjaGl2ZXMuYyBpZiBpdCBuZWVkcyB0byBmaW5pc2ggcmVtb3ZpbmcgYQorICogY29uZmxpY3RpbmcgcGFja2FnZS4KKyAqLwordm9pZCByZW1vdmFsX2J1bGsoc3RydWN0IHBrZ2luZm8gKnBrZykgeworICBib29sIGZvdW5kcG9zdHJtOworCisgIGRlYnVnKGRiZ19nZW5lcmFsLCJyZW1vdmFsX2J1bGsgcGFja2FnZSAlcyIscGtnLT5uYW1lKTsKKworICBpZiAocGtnLT5zdGF0dXMgPT0gc3RhdF9oYWxmaW5zdGFsbGVkIHx8IHBrZy0+c3RhdHVzID09IHN0YXRfdW5wYWNrZWQpIHsKKyAgICByZW1vdmFsX2J1bGtfcmVtb3ZlX2ZpbGVzKHBrZyk7CisgIH0KKworICBmb3VuZHBvc3RybSA9IHBrZ19pbmZvZGJfaGFzX2ZpbGUocGtnLCBQT1NUUk1GSUxFKTsKKworICBkZWJ1ZyhkYmdfZ2VuZXJhbCwgInJlbW92YWxfYnVsayBwdXJnaW5nPyBmb3VuZHBvc3RybT0lZCIsZm91bmRwb3N0cm0pOworCisgIGlmICghZm91bmRwb3N0cm0gJiYgIXBrZy0+aW5zdGFsbGVkLmNvbmZmaWxlcykgeworICAgIC8qIElmIHRoZXJlIGFyZSBubyBjb25maWcgZmlsZXMgYW5kIG5vIHBvc3RybSBzY3JpcHQgdGhlbiB3ZQorICAgICAqIGdvIHN0cmFpZ2h0IGludG8g4oCYcHVyZ2XigJkuICAqLworICAgIGRlYnVnKGRiZ19nZW5lcmFsLCAicmVtb3ZhbF9idWxrIG5vIHBvc3RybSwgbm8gY29uZmZpbGVzLCBwdXJnaW5nIik7CisgICAgcGtnLT53YW50PSB3YW50X3B1cmdlOworCisgICAgYmxhbmt2ZXJzaW9uKCZwa2ctPmNvbmZpZ3ZlcnNpb24pOworICB9IGVsc2UgaWYgKHBrZy0+d2FudCA9PSB3YW50X3B1cmdlKSB7CisKKyAgICByZW1vdmFsX2J1bGtfcmVtb3ZlX2NvbmZpZ2ZpbGVzKHBrZyk7CisKKyAgfQorCisgIC8qIEkuZS4sIGVpdGhlciBvZiB0aGUgdHdvIGJyYW5jaGVzIGFib3ZlLiAqLworICBpZiAocGtnLT53YW50ID09IHdhbnRfcHVyZ2UpIHsKKyAgICBjb25zdCBjaGFyICpmaWxlbmFtZTsKKworICAgIC8qIFJldHJ5IGVtcHR5IGRpcmVjdG9yaWVzLCBhbmQgd2FybiBvbiBhbnkgbGVmdG92ZXJzIHRoYXQgYXJlbid0LiAqLworICAgIHJlbW92YWxfYnVsa19yZW1vdmVfbGVmdG92ZXJfZGlycyhwa2cpOworCisgICAgZmlsZW5hbWUgPSBwa2dhZG1pbmZpbGUocGtnLCBMSVNURklMRSk7CisgICAgZGVidWcoZGJnX2dlbmVyYWwsICJyZW1vdmFsX2J1bGsgcHVyZ2UgZG9uZSwgcmVtb3ZpbmcgbGlzdCBgJXMnIiwKKyAgICAgICAgICBmaWxlbmFtZSk7CisgICAgaWYgKHVubGluayhmaWxlbmFtZSkgJiYgZXJybm8gIT0gRU5PRU5UKQorICAgICAgb2hzaGl0ZShfKCJjYW5ub3QgcmVtb3ZlIG9sZCBmaWxlcyBsaXN0IikpOworCisgICAgZmlsZW5hbWUgPSBwa2dhZG1pbmZpbGUocGtnLCBQT1NUUk1GSUxFKTsKKyAgICBkZWJ1ZyhkYmdfZ2VuZXJhbCwgInJlbW92YWxfYnVsayBwdXJnZSBkb25lLCByZW1vdmluZyBwb3N0cm0gYCVzJyIsCisgICAgICAgICAgZmlsZW5hbWUpOworICAgIGlmICh1bmxpbmsoZmlsZW5hbWUpICYmIGVycm5vICE9IEVOT0VOVCkKKyAgICAgIG9oc2hpdGUoXygiY2FuJ3QgcmVtb3ZlIG9sZCBwb3N0cm0gc2NyaXB0IikpOworCisgICAgcGtnLT5zdGF0dXM9IHN0YXRfbm90aW5zdGFsbGVkOworICAgIHBrZy0+d2FudCA9IHdhbnRfdW5rbm93bjsKKworICAgIC8qIFRoaXMgd2lsbCBtZXNzIHVwIHJldmVyc2UgbGlua3MsIGJ1dCBpZiB3ZSBmb2xsb3cgdGhlbQorICAgICAqIHdlIHdvbid0IGdvIGJhY2sgYmVjYXVzZSBwa2ctPnN0YXR1cyBpcyBzdGF0X25vdGluc3RhbGxlZC4gKi8KKyAgICBwa2diaW5fYmxhbmsoJnBrZy0+aW5zdGFsbGVkKTsKKyAgfQorCisgIHBrZy0+ZWZsYWcgPSBlZmxhZ19vazsKKyAgbW9kc3RhdGRiX25vdGUocGtnKTsKKworICBkZWJ1ZyhkYmdfZ2VuZXJhbCwgInJlbW92YWwgZG9uZSIpOworfQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zcmMvc2VsZWN0LmMgYi9kcGtnLTEuMTYuMS4xL3NyYy9zZWxlY3QuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mM2MwZTFhCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zcmMvc2VsZWN0LmMKQEAgLTAsMCArMSwxNzkgQEAKKy8qCisgKiBkcGtnIC0gbWFpbiBwcm9ncmFtIGZvciBwYWNrYWdlIG1hbmFnZW1lbnQKKyAqIHNlbGVjdC5jIC0gYnktaGFuZCAocmF0aGVyIHRoYW4gZHNlbGVjdC1iYXNlZCkgcGFja2FnZSBzZWxlY3Rpb24KKyAqCisgKiBDb3B5cmlnaHQgwqkgMTk5NSwxOTk2IElhbiBKYWNrc29uIDxpYW5AY2hpYXJrLmdyZWVuZW5kLm9yZy51az4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworI2luY2x1ZGUgPGNvbmZpZy5oPgorI2luY2x1ZGUgPGNvbXBhdC5oPgorCisjaW5jbHVkZSA8Zm5tYXRjaC5oPgorI2luY2x1ZGUgPGN0eXBlLmg+CisjaW5jbHVkZSA8c3RyaW5nLmg+CisjaW5jbHVkZSA8c3RkbGliLmg+CisjaW5jbHVkZSA8c3RkaW8uaD4KKworI2luY2x1ZGUgPGRwa2cvaTE4bi5oPgorI2luY2x1ZGUgPGRwa2cvZHBrZy5oPgorI2luY2x1ZGUgPGRwa2cvZHBrZy1kYi5oPgorI2luY2x1ZGUgPGRwa2cvcGtnLWFycmF5Lmg+CisjaW5jbHVkZSA8ZHBrZy9vcHRpb25zLmg+CisKKyNpbmNsdWRlICJmaWxlc2RiLmgiCisjaW5jbHVkZSAibWFpbi5oIgorCitzdGF0aWMgdm9pZCBnZXRzZWwxcGFja2FnZShzdHJ1Y3QgcGtnaW5mbyAqcGtnKSB7CisgIGludCBsOworCisgIGlmIChwa2ctPndhbnQgPT0gd2FudF91bmtub3duKSByZXR1cm47CisgIGw9IHN0cmxlbihwa2ctPm5hbWUpOyBsID4+PSAzOyBsPSA2LWw7IGlmIChsPDEpIGw9MTsKKyAgcHJpbnRmKCIlcyUuKnMlc1xuIixwa2ctPm5hbWUsbCwiXHRcdFx0XHRcdFx0Iix3YW50aW5mb3NbcGtnLT53YW50XS5uYW1lKTsKK30KKworaW50CitnZXRzZWxlY3Rpb25zKGNvbnN0IGNoYXIgKmNvbnN0ICphcmd2KQoreworICBzdHJ1Y3QgcGtnX2FycmF5IGFycmF5OworICBzdHJ1Y3QgcGtnaW5mbyAqcGtnOworICBjb25zdCBjaGFyICp0aGlzYXJnOworICBpbnQgaSwgZm91bmQ7CisKKyAgbW9kc3RhdGRiX29wZW4obXNkYnJ3X3JlYWRvbmx5KTsKKworICBwa2dfYXJyYXlfaW5pdF9mcm9tX2RiKCZhcnJheSk7CisgIHBrZ19hcnJheV9zb3J0KCZhcnJheSwgcGtnX3NvcnRlcl9ieV9uYW1lKTsKKworICBpZiAoISphcmd2KSB7CisgICAgZm9yIChpID0gMDsgaSA8IGFycmF5Lm5fcGtnczsgaSsrKSB7CisgICAgICBwa2cgPSBhcnJheS5wa2dzW2ldOworICAgICAgaWYgKHBrZy0+c3RhdHVzID09IHN0YXRfbm90aW5zdGFsbGVkKSBjb250aW51ZTsKKyAgICAgIGdldHNlbDFwYWNrYWdlKHBrZyk7CisgICAgfQorICB9IGVsc2UgeworICAgIHdoaWxlICgodGhpc2FyZz0gKmFyZ3YrKykpIHsKKyAgICAgIGZvdW5kPSAwOworICAgICAgZm9yIChpID0gMDsgaSA8IGFycmF5Lm5fcGtnczsgaSsrKSB7CisgICAgICAgIHBrZyA9IGFycmF5LnBrZ3NbaV07CisgICAgICAgIGlmIChmbm1hdGNoKHRoaXNhcmcscGtnLT5uYW1lLDApKSBjb250aW51ZTsKKyAgICAgICAgZ2V0c2VsMXBhY2thZ2UocGtnKTsgZm91bmQrKzsKKyAgICAgIH0KKyAgICAgIGlmICghZm91bmQpCisgICAgICAgIGZwcmludGYoc3RkZXJyLF8oIk5vIHBhY2thZ2VzIGZvdW5kIG1hdGNoaW5nICVzLlxuIiksdGhpc2FyZyk7CisgICAgfQorICB9CisKKyAgbV9vdXRwdXQoc3Rkb3V0LCBfKCI8c3RhbmRhcmQgb3V0cHV0PiIpKTsKKyAgbV9vdXRwdXQoc3RkZXJyLCBfKCI8c3RhbmRhcmQgZXJyb3I+IikpOworCisgIHBrZ19hcnJheV9kZXN0cm95KCZhcnJheSk7CisKKyAgcmV0dXJuIDA7Cit9CisKK2ludAorc2V0c2VsZWN0aW9ucyhjb25zdCBjaGFyICpjb25zdCAqYXJndikKK3sKKyAgY29uc3Qgc3RydWN0IG5hbWV2YWx1ZSAqbnY7CisgIHN0cnVjdCBwa2dpbmZvICpwa2c7CisgIGNvbnN0IGNoYXIgKmU7CisgIGludCBjLCBsbm87CisgIHN0cnVjdCB2YXJidWYgbmFtZXZiID0gVkFSQlVGX0lOSVQ7CisgIHN0cnVjdCB2YXJidWYgc2VsdmIgPSBWQVJCVUZfSU5JVDsKKworICBpZiAoKmFyZ3YpCisgICAgYmFkdXNhZ2UoXygiLS0lcyB0YWtlcyBubyBhcmd1bWVudHMiKSwgY2lwYWN0aW9uLT5vbG9uZyk7CisKKyAgbW9kc3RhdGRiX29wZW4obXNkYnJ3X3dyaXRlIHwgbXNkYnJ3X2F2YWlsYWJsZV9yZWFkb25seSk7CisKKyAgbG5vPSAxOworICBmb3IgKDs7KSB7CisgICAgZG8geyBjPSBnZXRjaGFyKCk7IGlmIChjID09ICdcbicpIGxubysrOyB9IHdoaWxlIChjICE9IEVPRiAmJiBpc3NwYWNlKGMpKTsKKyAgICBpZiAoYyA9PSBFT0YpIGJyZWFrOworICAgIGlmIChjID09ICcjJykgeworICAgICAgZG8geyBjPSBnZXRjaGFyKCk7IGlmIChjID09ICdcbicpIGxubysrOyB9IHdoaWxlIChjICE9IEVPRiAmJiBjICE9ICdcbicpOworICAgICAgY29udGludWU7CisgICAgfQorCisgICAgdmFyYnVmX3Jlc2V0KCZuYW1ldmIpOworICAgIHdoaWxlICghaXNzcGFjZShjKSkgeworICAgICAgdmFyYnVmX2FkZF9jaGFyKCZuYW1ldmIsIGMpOworICAgICAgYz0gZ2V0Y2hhcigpOworICAgICAgaWYgKGMgPT0gRU9GKSBvaHNoaXQoXygidW5leHBlY3RlZCBlb2YgaW4gcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQiKSxsbm8pOworICAgICAgaWYgKGMgPT0gJ1xuJykgb2hzaGl0KF8oInVuZXhwZWN0ZWQgZW5kIG9mIGxpbmUgaW4gcGFja2FnZSBuYW1lIGF0IGxpbmUgJWQiKSxsbm8pOworICAgIH0KKyAgICB2YXJidWZfZW5kX3N0cigmbmFtZXZiKTsKKworICAgIHdoaWxlIChjICE9IEVPRiAmJiBpc3NwYWNlKGMpKSB7CisgICAgICBjPSBnZXRjaGFyKCk7CisgICAgICBpZiAoYyA9PSBFT0YpIG9oc2hpdChfKCJ1bmV4cGVjdGVkIGVvZiBhZnRlciBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZCIpLGxubyk7CisgICAgICBpZiAoYyA9PSAnXG4nKSBvaHNoaXQoXygidW5leHBlY3RlZCBlbmQgb2YgbGluZSBhZnRlciBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZCIpLGxubyk7CisgICAgfQorCisgICAgdmFyYnVmX3Jlc2V0KCZzZWx2Yik7CisgICAgd2hpbGUgKGMgIT0gRU9GICYmICFpc3NwYWNlKGMpKSB7CisgICAgICB2YXJidWZfYWRkX2NoYXIoJnNlbHZiLCBjKTsKKyAgICAgIGM9IGdldGNoYXIoKTsKKyAgICB9CisgICAgdmFyYnVmX2VuZF9zdHIoJnNlbHZiKTsKKworICAgIHdoaWxlIChjICE9IEVPRiAmJiBjICE9ICdcbicpIHsKKyAgICAgIGM9IGdldGNoYXIoKTsKKyAgICAgIGlmICghaXNzcGFjZShjKSkKKyAgICAgICAgb2hzaGl0KF8oInVuZXhwZWN0ZWQgZGF0YSBhZnRlciBwYWNrYWdlIGFuZCBzZWxlY3Rpb24gYXQgbGluZSAlZCIpLGxubyk7CisgICAgfQorICAgIGUgPSBwa2dfbmFtZV9pc19pbGxlZ2FsKG5hbWV2Yi5idWYsIE5VTEwpOworICAgIGlmIChlKSBvaHNoaXQoXygiaWxsZWdhbCBwYWNrYWdlIG5hbWUgYXQgbGluZSAlZDogJS4yNTBzIiksbG5vLGUpOworCisgICAgbnYgPSBuYW1ldmFsdWVfZmluZF9ieV9uYW1lKHdhbnRpbmZvcywgc2VsdmIuYnVmKTsKKyAgICBpZiAobnYgPT0gTlVMTCkKKyAgICAgIG9oc2hpdChfKCJ1bmtub3duIHdhbnRlZCBzdGF0dXMgYXQgbGluZSAlZDogJS4yNTBzIiksIGxubywgc2VsdmIuYnVmKTsKKyAgICBwa2cgPSBwa2dfZGJfZmluZChuYW1ldmIuYnVmKTsKKyAgICBwa2ctPndhbnQgPSBudi0+dmFsdWU7CisgICAgaWYgKGMgPT0gRU9GKSBicmVhazsKKyAgICBsbm8rKzsKKyAgfQorICBpZiAoZmVycm9yKHN0ZGluKSkgb2hzaGl0ZShfKCJyZWFkIGVycm9yIG9uIHN0YW5kYXJkIGlucHV0IikpOworICBtb2RzdGF0ZGJfc2h1dGRvd24oKTsKKyAgdmFyYnVmX2Rlc3Ryb3koJm5hbWV2Yik7CisgIHZhcmJ1Zl9kZXN0cm95KCZzZWx2Yik7CisKKyAgcmV0dXJuIDA7Cit9CisKK2ludAorY2xlYXJzZWxlY3Rpb25zKGNvbnN0IGNoYXIgKmNvbnN0ICphcmd2KQoreworICBzdHJ1Y3QgcGtnaXRlcmF0b3IgKml0OworICBzdHJ1Y3QgcGtnaW5mbyAqcGtnOworCisgIGlmICgqYXJndikKKyAgICBiYWR1c2FnZShfKCItLSVzIHRha2VzIG5vIGFyZ3VtZW50cyIpLCBjaXBhY3Rpb24tPm9sb25nKTsKKworICBtb2RzdGF0ZGJfb3Blbihtc2Ricndfd3JpdGUpOworCisgIGl0ID0gcGtnX2RiX2l0ZXJfbmV3KCk7CisgIHdoaWxlICgocGtnID0gcGtnX2RiX2l0ZXJfbmV4dChpdCkpKSB7CisgICAgaWYgKCFwa2ctPmluc3RhbGxlZC5lc3NlbnRpYWwpCisgICAgICBwa2ctPndhbnQgPSB3YW50X2RlaW5zdGFsbDsKKyAgfQorICBwa2dfZGJfaXRlcl9mcmVlKGl0KTsKKworICBtb2RzdGF0ZGJfc2h1dGRvd24oKTsKKworICByZXR1cm4gMDsKK30KKwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zcmMvc3RhdGNtZC5jIGIvZHBrZy0xLjE2LjEuMS9zcmMvc3RhdGNtZC5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjExYWUxY2YKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3NyYy9zdGF0Y21kLmMKQEAgLTAsMCArMSwzOTEgQEAKKy8qCisgKiBkcGtnLXN0YXRvdmVycmlkZSAtIG92ZXJyaWRlIG93bmVyc2hpcCBhbmQgbW9kZSBvZiBmaWxlcworICoKKyAqIENvcHlyaWdodCDCqSAyMDAwLCAyMDAxIFdpY2hlcnQgQWtrZXJtYW4gPHdha2tlcm1hQGRlYmlhbi5vcmc+CisgKiBDb3B5cmlnaHQgwqkgMjAwNi0yMDEwIEd1aWxsZW0gSm92ZXIgPGd1aWxsZW1AZGViaWFuLm9yZz4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKgorICovCisKKyNpbmNsdWRlIDxjb25maWcuaD4KKyNpbmNsdWRlIDxjb21wYXQuaD4KKworI2luY2x1ZGUgPHN5cy90eXBlcy5oPgorI2luY2x1ZGUgPHN5cy9zdGF0Lmg+CisKKyNpbmNsdWRlIDxlcnJuby5oPgorI2lmIEhBVkVfTE9DQUxFX0gKKyNpbmNsdWRlIDxsb2NhbGUuaD4KKyNlbmRpZgorI2luY2x1ZGUgPHN0cmluZy5oPgorI2luY2x1ZGUgPGdycC5oPgorI2luY2x1ZGUgPHB3ZC5oPgorI2luY2x1ZGUgPGZubWF0Y2guaD4KKyNpbmNsdWRlIDx1bmlzdGQuaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlIDxzdGRpby5oPgorCisjaW5jbHVkZSA8ZHBrZy9pMThuLmg+CisjaW5jbHVkZSA8ZHBrZy9kcGtnLmg+CisjaW5jbHVkZSA8ZHBrZy9kcGtnLWRiLmg+CisjaW5jbHVkZSA8ZHBrZy9wYXRoLmg+CisjaW5jbHVkZSA8ZHBrZy9kaXIuaD4KKyNpbmNsdWRlIDxkcGtnL2dsb2IuaD4KKyNpbmNsdWRlIDxkcGtnL29wdGlvbnMuaD4KKworI2luY2x1ZGUgIm1haW4uaCIKKyNpbmNsdWRlICJmaWxlc2RiLmgiCisKK3N0YXRpYyBjb25zdCBjaGFyIHByaW50Zm9yaGVscFtdID0gTl8oCisiVXNlIC0taGVscCBmb3IgaGVscCBhYm91dCBvdmVycmlkaW5nIGZpbGUgc3RhdCBpbmZvcm1hdGlvbi4iKTsKKworc3RhdGljIHZvaWQgRFBLR19BVFRSX05PUkVUCitwcmludHZlcnNpb24oY29uc3Qgc3RydWN0IGNtZGluZm8gKmNpcCwgY29uc3QgY2hhciAqdmFsdWUpCit7CisJcHJpbnRmKF8oIkRlYmlhbiAlcyB2ZXJzaW9uICVzLlxuIiksIGRwa2dfZ2V0X3Byb2duYW1lKCksCisJICAgICAgIERQS0dfVkVSU0lPTl9BUkNIKTsKKworCXByaW50ZihfKAorIkNvcHlyaWdodCAoQykgMjAwMCwgMjAwMSBXaWNoZXJ0IEFra2VybWFuLlxuIgorIkNvcHlyaWdodCAoQykgMjAwNi0yMDA5IEd1aWxsZW0gSm92ZXIuXG4iKSk7CisKKwlwcmludGYoXygKKyJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAyIG9yXG4iCisibGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuXG4iKSk7CisKKwltX291dHB1dChzdGRvdXQsIF8oIjxzdGFuZGFyZCBvdXRwdXQ+IikpOworCisJZXhpdCgwKTsKK30KKworc3RhdGljIHZvaWQgRFBLR19BVFRSX05PUkVUCit1c2FnZShjb25zdCBzdHJ1Y3QgY21kaW5mbyAqY2lwLCBjb25zdCBjaGFyICp2YWx1ZSkKK3sKKwlwcmludGYoXygKKyJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gPGNvbW1hbmQ+XG4iCisiXG4iKSwgZHBrZ19nZXRfcHJvZ25hbWUoKSk7CisKKwlwcmludGYoXygKKyJDb21tYW5kczpcbiIKKyIgIC0tYWRkIDxvd25lcj4gPGdyb3VwPiA8bW9kZT4gPGZpbGU+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkIGEgbmV3IGVudHJ5IGludG8gdGhlIGRhdGFiYXNlLlxuIgorIiAgLS1yZW1vdmUgPGZpbGU+ICAgICAgICAgIHJlbW92ZSBmaWxlIGZyb20gdGhlIGRhdGFiYXNlLlxuIgorIiAgLS1saXN0IFs8Z2xvYi1wYXR0ZXJuPl0gIGxpc3QgY3VycmVudCBvdmVycmlkZXMgaW4gdGhlIGRhdGFiYXNlLlxuIgorIlxuIikpOworCisJcHJpbnRmKF8oCisiT3B0aW9uczpcbiIKKyIgIC0tYWRtaW5kaXIgPGRpcmVjdG9yeT4gICBzZXQgdGhlIGRpcmVjdG9yeSB3aXRoIHRoZSBzdGF0b3ZlcnJpZGUgZmlsZS5cbiIKKyIgIC0tdXBkYXRlICAgICAgICAgICAgICAgICBpbW1lZGlhdGVseSB1cGRhdGUgZmlsZSBwZXJtaXNzaW9ucy5cbiIKKyIgIC0tZm9yY2UgICAgICAgICAgICAgICAgICBmb3JjZSBhbiBhY3Rpb24gZXZlbiBpZiBhIHNhbml0eSBjaGVjayBmYWlscy5cbiIKKyIgIC0tcXVpZXQgICAgICAgICAgICAgICAgICBxdWlldCBvcGVyYXRpb24sIG1pbmltYWwgb3V0cHV0LlxuIgorIiAgLS1oZWxwICAgICAgICAgICAgICAgICAgIHNob3cgdGhpcyBoZWxwIG1lc3NhZ2UuXG4iCisiICAtLXZlcnNpb24gICAgICAgICAgICAgICAgc2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIpKTsKKworCW1fb3V0cHV0KHN0ZG91dCwgXygiPHN0YW5kYXJkIG91dHB1dD4iKSk7CisKKwlleGl0KDApOworfQorCitzdGF0aWMgY29uc3QgY2hhciAqYWRtaW5kaXI7CisKK3N0YXRpYyBpbnQgb3B0X3ZlcmJvc2UgPSAxOworc3RhdGljIGludCBvcHRfZm9yY2UgPSAwOworc3RhdGljIGludCBvcHRfdXBkYXRlID0gMDsKKworc3RhdGljIGNoYXIgKgorcGF0aF9jbGVhbnVwKGNvbnN0IGNoYXIgKnBhdGgpCit7CisJY2hhciAqbmV3X3BhdGggPSBtX3N0cmR1cChwYXRoKTsKKworCXBhdGhfdHJpbV9zbGFzaF9zbGFzaGRvdChuZXdfcGF0aCk7CisJaWYgKG9wdF92ZXJib3NlICYmIHN0cmNtcChwYXRoLCBuZXdfcGF0aCkgIT0gMCkKKwkJd2FybmluZyhfKCJzdHJpcHBpbmcgdHJhaWxpbmcgLyIpKTsKKworCXJldHVybiBuZXdfcGF0aDsKK30KKworc3RhdGljIHN0cnVjdCBmaWxlX3N0YXQgKgorc3RhdGRiX25vZGVfbmV3KGNvbnN0IGNoYXIgKnVzZXIsIGNvbnN0IGNoYXIgKmdyb3VwLCBjb25zdCBjaGFyICptb2RlKQoreworCXN0cnVjdCBmaWxlX3N0YXQgKmZpbGVzdGF0OworCisJZmlsZXN0YXQgPSBuZm1hbGxvYyhzaXplb2YoKmZpbGVzdGF0KSk7CisKKwlmaWxlc3RhdC0+dWlkID0gc3RhdGRiX3BhcnNlX3VpZCh1c2VyKTsKKwlmaWxlc3RhdC0+Z2lkID0gc3RhdGRiX3BhcnNlX2dpZChncm91cCk7CisJZmlsZXN0YXQtPm1vZGUgPSBzdGF0ZGJfcGFyc2VfbW9kZShtb2RlKTsKKworCXJldHVybiBmaWxlc3RhdDsKK30KKworc3RhdGljIHN0cnVjdCBmaWxlX3N0YXQgKioKK3N0YXRkYl9ub2RlX2ZpbmQoY29uc3QgY2hhciAqZmlsZW5hbWUpCit7CisJc3RydWN0IGZpbGVuYW1lbm9kZSAqZmlsZTsKKworCWZpbGUgPSBmaW5kbmFtZW5vZGUoZmlsZW5hbWUsIDApOworCisJcmV0dXJuICZmaWxlLT5zdGF0b3ZlcnJpZGU7Cit9CisKK3N0YXRpYyBpbnQKK3N0YXRkYl9ub2RlX3JlbW92ZShjb25zdCBjaGFyICpmaWxlbmFtZSkKK3sKKwlzdHJ1Y3QgZmlsZW5hbWVub2RlICpmaWxlOworCisJZmlsZSA9IGZpbmRuYW1lbm9kZShmaWxlbmFtZSwgZm5uX25vbmV3KTsKKwlpZiAoIWZpbGUgfHwgKGZpbGUgJiYgIWZpbGUtPnN0YXRvdmVycmlkZSkpCisJCXJldHVybiAwOworCisJZmlsZS0+c3RhdG92ZXJyaWRlID0gTlVMTDsKKworCXJldHVybiAxOworfQorCitzdGF0aWMgdm9pZAorc3RhdGRiX25vZGVfYXBwbHkoY29uc3QgY2hhciAqZmlsZW5hbWUsIHN0cnVjdCBmaWxlX3N0YXQgKmZpbGVzdGF0KQoreworCWlmIChjaG93bihmaWxlbmFtZSwgZmlsZXN0YXQtPnVpZCwgZmlsZXN0YXQtPmdpZCkgPCAwKQorCQlvaHNoaXRlKF8oImVycm9yIHNldHRpbmcgb3duZXJzaGlwIG9mIGAlLjI1NXMnIiksIGZpbGVuYW1lKTsKKwlpZiAoY2htb2QoZmlsZW5hbWUsIGZpbGVzdGF0LT5tb2RlKSkKKwkJb2hzaGl0ZShfKCJlcnJvciBzZXR0aW5nIHBlcm1pc3Npb25zIG9mIGAlLjI1NXMnIiksIGZpbGVuYW1lKTsKK30KKworc3RhdGljIHZvaWQKK3N0YXRkYl9ub2RlX3ByaW50KEZJTEUgKm91dCwgc3RydWN0IGZpbGVuYW1lbm9kZSAqZmlsZSkKK3sKKwlzdHJ1Y3QgZmlsZV9zdGF0ICpmaWxlc3RhdCA9IGZpbGUtPnN0YXRvdmVycmlkZTsKKwlzdHJ1Y3QgcGFzc3dkICpwdzsKKwlzdHJ1Y3QgZ3JvdXAgKmdyOworCisJaWYgKCFmaWxlc3RhdCkKKwkJcmV0dXJuOworCisJcHcgPSBnZXRwd3VpZChmaWxlc3RhdC0+dWlkKTsKKwlpZiAocHcpCisJCWZwcmludGYob3V0LCAiJXMgIiwgcHctPnB3X25hbWUpOworCWVsc2UKKwkJZnByaW50ZihvdXQsICIjJWQgIiwgZmlsZXN0YXQtPnVpZCk7CisKKwlnciA9IGdldGdyZ2lkKGZpbGVzdGF0LT5naWQpOworCWlmIChncikKKwkJZnByaW50ZihvdXQsICIlcyAiLCBnci0+Z3JfbmFtZSk7CisJZWxzZQorCQlmcHJpbnRmKG91dCwgIiMlZCAiLCBmaWxlc3RhdC0+Z2lkKTsKKworCWZwcmludGYob3V0LCAiJW8gJXNcbiIsIGZpbGVzdGF0LT5tb2RlLCBmaWxlLT5uYW1lKTsKK30KKworc3RhdGljIHZvaWQKK3N0YXRkYl93cml0ZSh2b2lkKQoreworCWNoYXIgKmRibmFtZSwgKmRibmFtZV9uZXcsICpkYm5hbWVfb2xkOworCUZJTEUgKmRiZmlsZTsKKwlzdHJ1Y3QgZmlsZWl0ZXJhdG9yICppOworCXN0cnVjdCBmaWxlbmFtZW5vZGUgKmZpbGU7CisKKwlkYm5hbWUgPSBkcGtnX2RiX2dldF9wYXRoKFNUQVRPVkVSUklERUZJTEUpOworCW1fYXNwcmludGYoJmRibmFtZV9uZXcsICIlcyVzIiwgZGJuYW1lLCBORVdEQkVYVCk7CisJbV9hc3ByaW50ZigmZGJuYW1lX29sZCwgIiVzJXMiLCBkYm5hbWUsIE9MRERCRVhUKTsKKworCWRiZmlsZSA9IGZvcGVuKGRibmFtZV9uZXcsICJ3Iik7CisJaWYgKCFkYmZpbGUpCisJCW9oc2hpdGUoXygiY2Fubm90IG9wZW4gbmV3IHN0YXRvdmVycmlkZSBmaWxlIikpOworCisJaSA9IGl0ZXJmaWxlc3RhcnQoKTsKKwl3aGlsZSAoKGZpbGUgPSBpdGVyZmlsZW5leHQoaSkpKQorCQlzdGF0ZGJfbm9kZV9wcmludChkYmZpbGUsIGZpbGUpOworCWl0ZXJmaWxlZW5kKGkpOworCisJaWYgKGZmbHVzaChkYmZpbGUpKQorCQlvaHNoaXRlKF8oInVuYWJsZSB0byBmbHVzaCBmaWxlICclcyciKSwgZGJuYW1lX25ldyk7CisJaWYgKGZzeW5jKGZpbGVubyhkYmZpbGUpKSkKKwkJb2hzaGl0ZShfKCJ1bmFibGUgdG8gc3luYyBmaWxlICclcyciKSwgZGJuYW1lX25ldyk7CisJZmNsb3NlKGRiZmlsZSk7CisKKwljaG1vZChkYm5hbWVfbmV3LCAwNjQ0KTsKKwlpZiAodW5saW5rKGRibmFtZV9vbGQpICYmIGVycm5vICE9IEVOT0VOVCkKKwkJb2hzaGl0ZShfKCJlcnJvciByZW1vdmluZyBzdGF0b3ZlcnJpZGUtb2xkIikpOworCWlmIChsaW5rKGRibmFtZSwgZGJuYW1lX29sZCkgJiYgZXJybm8gIT0gRU5PRU5UKQorCQlvaHNoaXRlKF8oImVycm9yIGNyZWF0aW5nIG5ldyBzdGF0b3ZlcnJpZGUtb2xkIikpOworCWlmIChyZW5hbWUoZGJuYW1lX25ldywgZGJuYW1lKSkKKwkJb2hzaGl0ZShfKCJlcnJvciBpbnN0YWxsaW5nIG5ldyBzdGF0b3ZlcnJpZGUiKSk7CisKKwlkaXJfc3luY19wYXRoKGRwa2dfZGJfZ2V0X2RpcigpKTsKKworCWZyZWUoZGJuYW1lKTsKKwlmcmVlKGRibmFtZV9uZXcpOworCWZyZWUoZGJuYW1lX29sZCk7Cit9CisKK3N0YXRpYyBpbnQKK3N0YXRvdmVycmlkZV9hZGQoY29uc3QgY2hhciAqY29uc3QgKmFyZ3YpCit7CisJY29uc3QgY2hhciAqdXNlciA9IGFyZ3ZbMF07CisJY29uc3QgY2hhciAqZ3JvdXAgPSBhcmd2WzFdOworCWNvbnN0IGNoYXIgKm1vZGUgPSBhcmd2WzJdOworCWNvbnN0IGNoYXIgKnBhdGggPSBhcmd2WzNdOworCWNoYXIgKmZpbGVuYW1lOworCXN0cnVjdCBmaWxlX3N0YXQgKipmaWxlc3RhdDsKKworCWlmICghdXNlciB8fCAhZ3JvdXAgfHwgIW1vZGUgfHwgIXBhdGggfHwgYXJndls0XSkKKwkJYmFkdXNhZ2UoXygiLS1hZGQgbmVlZHMgZm91ciBhcmd1bWVudHMiKSk7CisKKwlpZiAoc3RyY2hyKHBhdGgsICdcbicpKQorCQliYWR1c2FnZShfKCJmaWxlIG1heSBub3QgY29udGFpbiBuZXdsaW5lcyIpKTsKKworCWZpbGVuYW1lID0gcGF0aF9jbGVhbnVwKHBhdGgpOworCisJZmlsZXN0YXQgPSBzdGF0ZGJfbm9kZV9maW5kKGZpbGVuYW1lKTsKKwlpZiAoKmZpbGVzdGF0ICE9IE5VTEwpIHsKKwkJaWYgKG9wdF9mb3JjZSkKKwkJCXdhcm5pbmcoXygiQW4gb3ZlcnJpZGUgZm9yICclcycgYWxyZWFkeSBleGlzdHMsICIKKwkJCSAgICAgICAgICAiYnV0IC0tZm9yY2Ugc3BlY2lmaWVkIHNvIHdpbGwgYmUgaWdub3JlZC4iKSwKKwkJCSAgICAgICAgZmlsZW5hbWUpOworCQllbHNlCisJCQlvaHNoaXQoXygiQW4gb3ZlcnJpZGUgZm9yICclcycgYWxyZWFkeSBleGlzdHMsICIKKwkJCSAgICAgICAgICJhYm9ydGluZy4iKSwgZmlsZW5hbWUpOworCX0KKworCSpmaWxlc3RhdCA9IHN0YXRkYl9ub2RlX25ldyh1c2VyLCBncm91cCwgbW9kZSk7CisKKwlpZiAob3B0X3VwZGF0ZSkgeworCQlzdHJ1Y3Qgc3RhdCBzdDsKKworCQlpZiAoc3RhdChmaWxlbmFtZSwgJnN0KSA9PSAwKQorCQkJc3RhdGRiX25vZGVfYXBwbHkoZmlsZW5hbWUsICpmaWxlc3RhdCk7CisJCWVsc2UgaWYgKG9wdF92ZXJib3NlKQorCQkJd2FybmluZyhfKCItLXVwZGF0ZSBnaXZlbiBidXQgJXMgZG9lcyBub3QgZXhpc3QiKSwKKwkJCSAgICAgICAgZmlsZW5hbWUpOworCX0KKworCXN0YXRkYl93cml0ZSgpOworCisJZnJlZShmaWxlbmFtZSk7CisKKwlyZXR1cm4gMDsKK30KKworc3RhdGljIGludAorc3RhdG92ZXJyaWRlX3JlbW92ZShjb25zdCBjaGFyICpjb25zdCAqYXJndikKK3sKKwljb25zdCBjaGFyICpwYXRoID0gYXJndlswXTsKKwljaGFyICpmaWxlbmFtZTsKKworCWlmICghcGF0aCB8fCBhcmd2WzFdKQorCQliYWR1c2FnZShfKCItLSVzIG5lZWRzIGEgc2luZ2xlIGFyZ3VtZW50IiksICJyZW1vdmUiKTsKKworCWZpbGVuYW1lID0gcGF0aF9jbGVhbnVwKHBhdGgpOworCisJaWYgKCFzdGF0ZGJfbm9kZV9yZW1vdmUoZmlsZW5hbWUpKSB7CisJCWlmIChvcHRfdmVyYm9zZSkKKwkJCXdhcm5pbmcoXygiTm8gb3ZlcnJpZGUgcHJlc2VudC4iKSk7CisJCWlmIChvcHRfZm9yY2UpCisJCQlyZXR1cm4gMDsKKwkJZWxzZQorCQkJcmV0dXJuIDI7CisJfQorCisJaWYgKG9wdF91cGRhdGUgJiYgb3B0X3ZlcmJvc2UpCisJCXdhcm5pbmcoXygiLS11cGRhdGUgaXMgdXNlbGVzcyBmb3IgLS1yZW1vdmUiKSk7CisKKwlzdGF0ZGJfd3JpdGUoKTsKKworCWZyZWUoZmlsZW5hbWUpOworCisJcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBpbnQKK3N0YXRvdmVycmlkZV9saXN0KGNvbnN0IGNoYXIgKmNvbnN0ICphcmd2KQoreworCXN0cnVjdCBmaWxlaXRlcmF0b3IgKmk7CisJc3RydWN0IGZpbGVuYW1lbm9kZSAqZmlsZTsKKwljb25zdCBjaGFyICp0aGlzYXJnOworCXN0cnVjdCBnbG9iX25vZGUgKmdsb2JfbGlzdCA9IE5VTEw7CisJaW50IHJldCA9IDE7CisKKwl3aGlsZSAoKHRoaXNhcmcgPSAqYXJndisrKSkgeworCQljaGFyICpwYXR0ZXJuID0gcGF0aF9jbGVhbnVwKHRoaXNhcmcpOworCisJCWdsb2JfbGlzdF9wcmVwZW5kKCZnbG9iX2xpc3QsIHBhdHRlcm4pOworCX0KKwlpZiAoZ2xvYl9saXN0ID09IE5VTEwpCisJCWdsb2JfbGlzdF9wcmVwZW5kKCZnbG9iX2xpc3QsIG1fc3RyZHVwKCIqIikpOworCisJaSA9IGl0ZXJmaWxlc3RhcnQoKTsKKwl3aGlsZSAoKGZpbGUgPSBpdGVyZmlsZW5leHQoaSkpKSB7CisJCXN0cnVjdCBnbG9iX25vZGUgKmc7CisKKwkJZm9yIChnID0gZ2xvYl9saXN0OyBnOyBnID0gZy0+bmV4dCkgeworCQkJaWYgKGZubWF0Y2goZy0+cGF0dGVybiwgZmlsZS0+bmFtZSwgMCkgPT0gMCkgeworCQkJCXN0YXRkYl9ub2RlX3ByaW50KHN0ZG91dCwgZmlsZSk7CisJCQkJcmV0ID0gMDsKKwkJCQlicmVhazsKKwkJCX0KKwkJfQorCX0KKwlpdGVyZmlsZWVuZChpKTsKKworCWdsb2JfbGlzdF9mcmVlKGdsb2JfbGlzdCk7CisKKwlyZXR1cm4gcmV0OworfQorCitzdGF0aWMgY29uc3Qgc3RydWN0IGNtZGluZm8gY21kaW5mb3NbXSA9IHsKKwlBQ1RJT04oImFkZCIsICAgIDAsIGFjdF9pbnN0YWxsLCAgIHN0YXRvdmVycmlkZV9hZGQpLAorCUFDVElPTigicmVtb3ZlIiwgMCwgYWN0X3JlbW92ZSwgICAgc3RhdG92ZXJyaWRlX3JlbW92ZSksCisJQUNUSU9OKCJsaXN0IiwgICAwLCBhY3RfbGlzdGZpbGVzLCBzdGF0b3ZlcnJpZGVfbGlzdCksCisKKwl7ICJhZG1pbmRpciIsICAgMCwgICAxLCAgTlVMTCwgICAgICAgICAmYWRtaW5kaXIsIE5VTEwgICAgICAgICAgfSwKKwl7ICJxdWlldCIsICAgICAgMCwgICAwLCAgJm9wdF92ZXJib3NlLCBOVUxMLCAgICAgIE5VTEwsIDAgICAgICAgfSwKKwl7ICJmb3JjZSIsICAgICAgMCwgICAwLCAgJm9wdF9mb3JjZSwgICBOVUxMLCAgICAgIE5VTEwsIDEgICAgICAgfSwKKwl7ICJ1cGRhdGUiLCAgICAgMCwgICAwLCAgJm9wdF91cGRhdGUsICBOVUxMLCAgICAgIE5VTEwsIDEgICAgICAgfSwKKwl7ICJoZWxwIiwgICAgICAgJ2gnLCAwLCAgTlVMTCwgICAgICAgICBOVUxMLCAgICAgIHVzYWdlICAgICAgICAgfSwKKwl7ICJ2ZXJzaW9uIiwgICAgMCwgICAwLCAgTlVMTCwgICAgICAgICBOVUxMLCAgICAgIHByaW50dmVyc2lvbiAgfSwKKwl7ICBOVUxMLCAgICAgICAgMCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQorfTsKKworaW50CittYWluKGludCBhcmdjLCBjb25zdCBjaGFyICpjb25zdCAqYXJndikKK3sKKwlpbnQgcmV0OworCisJc2V0bG9jYWxlKExDX0FMTCwgIiIpOworCWJpbmR0ZXh0ZG9tYWluKFBBQ0tBR0UsIExPQ0FMRURJUik7CisJdGV4dGRvbWFpbihQQUNLQUdFKTsKKworCWRwa2dfc2V0X3Byb2duYW1lKCJkcGtnLXN0YXRvdmVycmlkZSIpOworCXN0YW5kYXJkX3N0YXJ0dXAoKTsKKwlteW9wdCgmYXJndiwgY21kaW5mb3MsIHByaW50Zm9yaGVscCk7CisKKwlhZG1pbmRpciA9IGRwa2dfZGJfc2V0X2RpcihhZG1pbmRpcik7CisKKwlpZiAoIWNpcGFjdGlvbikKKwkJYmFkdXNhZ2UoXygibmVlZCBhbiBhY3Rpb24gb3B0aW9uIikpOworCisJc2V0dmJ1ZihzdGRvdXQsIE5VTEwsIF9JT05CRiwgMCk7CisKKwlmaWxlc2RiaW5pdCgpOworCWVuc3VyZV9zdGF0b3ZlcnJpZGVzKCk7CisKKwlyZXQgPSBjaXBhY3Rpb24tPmFjdGlvbihhcmd2KTsKKworCXN0YW5kYXJkX3NodXRkb3duKCk7CisKKwlyZXR1cm4gcmV0OworfQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zcmMvc3RhdGRiLmMgYi9kcGtnLTEuMTYuMS4xL3NyYy9zdGF0ZGIuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yMWVlYjVmCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zcmMvc3RhdGRiLmMKQEAgLTAsMCArMSwyMjMgQEAKKy8qCisgKiBkcGtnIC0gbWFpbiBwcm9ncmFtIGZvciBwYWNrYWdlIG1hbmFnZW1lbnQKKyAqIHN0YXRkYi5jIC0gbWFuYWdlbWVudCBvZiBkYXRhYmFzZSBvZiBvd25lcnNoaXAgYW5kIG1vZGUgb2YgZmlsZXMKKyAqCisgKiBDb3B5cmlnaHQgwqkgMTk5NSBJYW4gSmFja3NvbiA8aWFuQGNoaWFyay5ncmVlbmVuZC5vcmcudWs+CisgKiBDb3B5cmlnaHQgwqkgMjAwMCwgMjAwMSBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorICogQ29weXJpZ2h0IMKpIDIwMDgtMjAxMCBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CisgKgorICogVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisgKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKKyAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAqIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorICovCisKKyNpbmNsdWRlIDxjb25maWcuaD4KKyNpbmNsdWRlIDxjb21wYXQuaD4KKworI2luY2x1ZGUgPHN5cy90eXBlcy5oPgorI2luY2x1ZGUgPHN5cy9zdGF0Lmg+CisKKyNpbmNsdWRlIDxlcnJuby5oPgorI2luY2x1ZGUgPHN0cmluZy5oPgorI2luY2x1ZGUgPHB3ZC5oPgorI2luY2x1ZGUgPGdycC5oPgorI2luY2x1ZGUgPGZjbnRsLmg+CisjaW5jbHVkZSA8dW5pc3RkLmg+CisjaW5jbHVkZSA8c3RkbGliLmg+CisKKyNpbmNsdWRlIDxkcGtnL2kxOG4uaD4KKyNpbmNsdWRlIDxkcGtnL2Rwa2cuaD4KKyNpbmNsdWRlIDxkcGtnL2Rwa2ctZGIuaD4KKyNpbmNsdWRlIDxkcGtnL2ZkaW8uaD4KKworI2luY2x1ZGUgImZpbGVzZGIuaCIKKyNpbmNsdWRlICJtYWluLmgiCisKK3N0YXRpYyBGSUxFICpzdGF0b3ZlcnJpZGVmaWxlID0gTlVMTDsKK3N0YXRpYyBjaGFyICpzdGF0b3ZlcnJpZGVuYW1lOworCit1aWRfdAorc3RhdGRiX3BhcnNlX3VpZChjb25zdCBjaGFyICpzdHIpCit7CisJY2hhciogZW5kcHRyOworCXVpZF90IHVpZDsKKworCWlmIChzdHJbMF0gPT0gJyMnKSB7CisJCWxvbmcgaW50IHZhbHVlOworCisJCXZhbHVlID0gc3RydG9sKHN0ciArIDEsICZlbmRwdHIsIDEwKTsKKwkJaWYgKHN0ciArIDEgPT0gZW5kcHRyIHx8ICplbmRwdHIgfHwgdmFsdWUgPCAwKQorCQkJb2hzaGl0KF8oInN5bnRheCBlcnJvcjogaW52YWxpZCB1aWQgaW4gc3RhdG92ZXJyaWRlIGZpbGUiKSk7CisJCXVpZCA9ICh1aWRfdCl2YWx1ZTsKKwl9IGVsc2UgeworCQlzdHJ1Y3QgcGFzc3dkKiBwdyA9IGdldHB3bmFtKHN0cik7CisJCWlmIChwdyA9PSBOVUxMKQorCQkJb2hzaGl0KF8oInN5bnRheCBlcnJvcjogdW5rbm93biB1c2VyICclcycgaW4gc3RhdG92ZXJyaWRlIGZpbGUiKSwKKwkJCSAgICAgICBzdHIpOworCQl1aWQgPSBwdy0+cHdfdWlkOworCX0KKworCXJldHVybiB1aWQ7Cit9CisKK2dpZF90CitzdGF0ZGJfcGFyc2VfZ2lkKGNvbnN0IGNoYXIgKnN0cikKK3sKKwljaGFyKiBlbmRwdHI7CisJZ2lkX3QgZ2lkOworCisJaWYgKHN0clswXSA9PSAnIycpIHsKKwkJbG9uZyBpbnQgdmFsdWU7CisKKwkJdmFsdWUgPSBzdHJ0b2woc3RyICsgMSwgJmVuZHB0ciwgMTApOworCQlpZiAoc3RyICsgMSA9PSBlbmRwdHIgfHwgKmVuZHB0ciB8fCB2YWx1ZSA8IDApCisJCQlvaHNoaXQoXygic3ludGF4IGVycm9yOiBpbnZhbGlkIGdpZCBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIpKTsKKwkJZ2lkID0gKGdpZF90KXZhbHVlOworCX0gZWxzZSB7CisJCXN0cnVjdCBncm91cCogZ3IgPSBnZXRncm5hbShzdHIpOworCQlpZiAoZ3IgPT0gTlVMTCkKKwkJCW9oc2hpdChfKCJzeW50YXggZXJyb3I6IHVua25vd24gZ3JvdXAgJyVzJyBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIpLAorCQkJICAgICAgIHN0cik7CisJCWdpZCA9IGdyLT5ncl9naWQ7CisJfQorCisJcmV0dXJuIGdpZDsKK30KKworbW9kZV90CitzdGF0ZGJfcGFyc2VfbW9kZShjb25zdCBjaGFyICpzdHIpCit7CisJY2hhciogZW5kcHRyOworCWxvbmcgaW50IG1vZGU7CisKKwltb2RlID0gc3RydG9sKHN0ciwgJmVuZHB0ciwgOCk7CisJaWYgKHN0ciA9PSBlbmRwdHIgfHwgKmVuZHB0ciB8fCBtb2RlIDwgMCB8fCBtb2RlID4gMDc3NzcpCisJCW9oc2hpdChfKCJzeW50YXggZXJyb3I6IGludmFsaWQgbW9kZSBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIpKTsKKworCXJldHVybiAobW9kZV90KW1vZGU7Cit9CisKK3ZvaWQKK2Vuc3VyZV9zdGF0b3ZlcnJpZGVzKHZvaWQpCit7CisJc3RydWN0IHN0YXQgc3RhYjEsIHN0YWIyOworCUZJTEUgKmZpbGU7CisJY2hhciAqbG9hZGVkX2xpc3QsICpsb2FkZWRfbGlzdF9lbmQsICp0aGlzbGluZSwgKm5leHRsaW5lLCAqcHRyOworCXN0cnVjdCBmaWxlX3N0YXQgKmZzbzsKKwlzdHJ1Y3QgZmlsZW5hbWVub2RlICpmbm47CisKKwlpZiAoc3RhdG92ZXJyaWRlbmFtZSAhPSBOVUxMKQorCQlmcmVlKHN0YXRvdmVycmlkZW5hbWUpOworCXN0YXRvdmVycmlkZW5hbWUgPSBkcGtnX2RiX2dldF9wYXRoKFNUQVRPVkVSUklERUZJTEUpOworCisJb25lcnJfYWJvcnQrKzsKKworCWZpbGUgPSBmb3BlbihzdGF0b3ZlcnJpZGVuYW1lLCAiciIpOworCWlmICghZmlsZSkgeworCQlpZiAoZXJybm8gIT0gRU5PRU5UKQorCQkJb2hzaGl0ZShfKCJmYWlsZWQgdG8gb3BlbiBzdGF0b3ZlcnJpZGUgZmlsZSIpKTsKKwkJaWYgKCFzdGF0b3ZlcnJpZGVmaWxlKSB7CisJCQlvbmVycl9hYm9ydC0tOworCQkJcmV0dXJuOworCQl9CisJfSBlbHNlIHsKKwkJaWYgKGZzdGF0KGZpbGVubyhmaWxlKSwgJnN0YWIyKSkKKwkJCW9oc2hpdGUoXygiZmFpbGVkIHRvIGZzdGF0IHN0YXRvdmVycmlkZSBmaWxlIikpOworCQlpZiAoc3RhdG92ZXJyaWRlZmlsZSkgeworCQkJaWYgKGZzdGF0KGZpbGVubyhzdGF0b3ZlcnJpZGVmaWxlKSwgJnN0YWIxKSkKKwkJCQlvaHNoaXRlKF8oImZhaWxlZCB0byBmc3RhdCBwcmV2aW91cyBzdGF0b3ZlcnJpZGUgZmlsZSIpKTsKKwkJCWlmIChzdGFiMS5zdF9kZXYgPT0gc3RhYjIuc3RfZGV2ICYmCisJCQkgICAgc3RhYjEuc3RfaW5vID09IHN0YWIyLnN0X2lubykgeworCQkJCWZjbG9zZShmaWxlKTsKKwkJCQlvbmVycl9hYm9ydC0tOworCQkJCXJldHVybjsKKwkJCX0KKwkJfQorCX0KKwlpZiAoc3RhdG92ZXJyaWRlZmlsZSkKKwkJZmNsb3NlKHN0YXRvdmVycmlkZWZpbGUpOworCXN0YXRvdmVycmlkZWZpbGUgPSBmaWxlOworCXNldGNsb2V4ZWMoZmlsZW5vKHN0YXRvdmVycmlkZWZpbGUpLCBzdGF0b3ZlcnJpZGVuYW1lKTsKKworCS8qIElmIHRoZSBzdGF0b3ZlcnJpZGUgbGlzdCBpcyBlbXB0eSB3ZSBkb24ndCBuZWVkIHRvIGJvdGhlcgorCSAqIHJlYWRpbmcgaXQuICovCisJaWYgKCFzdGFiMi5zdF9zaXplKSB7CisJCW9uZXJyX2Fib3J0LS07CisJCXJldHVybjsKKwl9CisKKwlsb2FkZWRfbGlzdCA9IG5mbWFsbG9jKHN0YWIyLnN0X3NpemUpOworCWxvYWRlZF9saXN0X2VuZCA9IGxvYWRlZF9saXN0ICsgc3RhYjIuc3Rfc2l6ZTsKKworCWlmIChmZF9yZWFkKGZpbGVubyhmaWxlKSwgbG9hZGVkX2xpc3QsIHN0YWIyLnN0X3NpemUpIDwgMCkKKwkJb2hzaGl0ZShfKCJyZWFkaW5nIHN0YXRvdmVycmlkZSBmaWxlICclLjI1MHMnIiksIHN0YXRvdmVycmlkZW5hbWUpOworCisJdGhpc2xpbmUgPSBsb2FkZWRfbGlzdDsKKwl3aGlsZSAodGhpc2xpbmUgPCBsb2FkZWRfbGlzdF9lbmQpIHsKKwkJZnNvID0gbmZtYWxsb2Moc2l6ZW9mKHN0cnVjdCBmaWxlX3N0YXQpKTsKKworCQlpZiAoIShwdHIgPSBtZW1jaHIodGhpc2xpbmUsICdcbicsIGxvYWRlZF9saXN0X2VuZCAtIHRoaXNsaW5lKSkpCisJCQlvaHNoaXQoXygic3RhdG92ZXJyaWRlIGZpbGUgaXMgbWlzc2luZyBmaW5hbCBuZXdsaW5lIikpOworCQkvKiBXaGVyZSB0byBzdGFydCBuZXh0IHRpbWUgYXJvdW5kLiAqLworCQluZXh0bGluZSA9IHB0ciArIDE7CisJCWlmIChwdHIgPT0gdGhpc2xpbmUpCisJCQlvaHNoaXQoXygic3RhdG92ZXJyaWRlIGZpbGUgY29udGFpbnMgZW1wdHkgbGluZSIpKTsKKwkJKnB0ciA9ICdcMCc7CisKKwkJLyogRXh0cmFjdCB0aGUgdWlkLiAqLworCQlpZiAoIShwdHIgPSBtZW1jaHIodGhpc2xpbmUsICcgJywgbmV4dGxpbmUgLSB0aGlzbGluZSkpKQorCQkJb2hzaGl0KF8oInN5bnRheCBlcnJvciBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIpKTsKKwkJKnB0ciA9ICdcMCc7CisKKwkJZnNvLT51aWQgPSBzdGF0ZGJfcGFyc2VfdWlkKHRoaXNsaW5lKTsKKworCQkvKiBNb3ZlIHRvIHRoZSBuZXh0IGJpdCAqLworCQl0aGlzbGluZSA9IHB0ciArIDE7CisJCWlmICh0aGlzbGluZSA+PSBsb2FkZWRfbGlzdF9lbmQpCisJCQlvaHNoaXQoXygidW5leHBlY3RlZCBlbmQgb2YgbGluZSBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIpKTsKKworCQkvKiBFeHRyYWN0IHRoZSBnaWQgKi8KKwkJaWYgKCEocHRyID0gbWVtY2hyKHRoaXNsaW5lLCAnICcsIG5leHRsaW5lIC0gdGhpc2xpbmUpKSkKKwkJCW9oc2hpdChfKCJzeW50YXggZXJyb3IgaW4gc3RhdG92ZXJyaWRlIGZpbGUiKSk7CisJCSpwdHIgPSAnXDAnOworCisJCWZzby0+Z2lkID0gc3RhdGRiX3BhcnNlX2dpZCh0aGlzbGluZSk7CisKKwkJLyogTW92ZSB0byB0aGUgbmV4dCBiaXQgKi8KKwkJdGhpc2xpbmUgPSBwdHIgKyAxOworCQlpZiAodGhpc2xpbmUgPj0gbG9hZGVkX2xpc3RfZW5kKQorCQkJb2hzaGl0KF8oInVuZXhwZWN0ZWQgZW5kIG9mIGxpbmUgaW4gc3RhdG92ZXJyaWRlIGZpbGUiKSk7CisKKwkJLyogRXh0cmFjdCB0aGUgbW9kZSAqLworCQlpZiAoIShwdHIgPSBtZW1jaHIodGhpc2xpbmUsICcgJywgbmV4dGxpbmUgLSB0aGlzbGluZSkpKQorCQkJb2hzaGl0KF8oInN5bnRheCBlcnJvciBpbiBzdGF0b3ZlcnJpZGUgZmlsZSIpKTsKKwkJKnB0ciA9ICdcMCc7CisKKwkJZnNvLT5tb2RlID0gc3RhdGRiX3BhcnNlX21vZGUodGhpc2xpbmUpOworCisJCS8qIE1vdmUgdG8gdGhlIG5leHQgYml0ICovCisJCXRoaXNsaW5lID0gcHRyICsgMTsKKwkJaWYgKHRoaXNsaW5lID49IGxvYWRlZF9saXN0X2VuZCkKKwkJCW9oc2hpdChfKCJ1bmV4cGVjdGVkIGVuZCBvZiBsaW5lIGluIHN0YXRvdmVycmlkZSBmaWxlIikpOworCisJCWZubiA9IGZpbmRuYW1lbm9kZSh0aGlzbGluZSwgMCk7CisJCWlmIChmbm4tPnN0YXRvdmVycmlkZSkKKwkJCW9oc2hpdChfKCJtdWx0aXBsZSBzdGF0dXNvdmVycmlkZXMgcHJlc2VudCBmb3IgZmlsZSAnJS4yNTBzJyIpLAorCQkJICAgICAgIHRoaXNsaW5lKTsKKwkJZm5uLT5zdGF0b3ZlcnJpZGUgPSBmc287CisKKwkJLyogTW92aW5nIG9uLi4gKi8KKwkJdGhpc2xpbmUgPSBuZXh0bGluZTsKKwl9CisKKwlvbmVycl9hYm9ydC0tOworfQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zcmMvdC8xMDBfZHBrZ19kaXZlcnQudCBiL2Rwa2ctMS4xNi4xLjEvc3JjL3QvMTAwX2Rwa2dfZGl2ZXJ0LnQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNGI1MDUzNQotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvc3JjL3QvMTAwX2Rwa2dfZGl2ZXJ0LnQKQEAgLTAsMCArMSw1NjAgQEAKKyMgLSotIG1vZGU6IGNwZXJsOy0qLQorIworIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorIworIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorIworIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKwordXNlIFRlc3Q6Ok1vcmU7Cit1c2UgRmlsZTo6U3BlYzsKK3VzZSBEcGtnOjpJUEM7CisKK3VzZSBzdHJpY3Q7Cit1c2Ugd2FybmluZ3M7CisKK215ICRzcmNkaXIgPSAkRU5We3NyY2Rpcn0gfHwgJy4nOworbXkgJGJ1aWxkZGlyID0gJEVOVntidWlsZGRpcn0gfHwgJy4nOworbXkgJHRtcGRpciA9ICd0LnRtcC85NTBfZHBrZ19kaXZlcnQnOworbXkgJGFkbWluZGlyID0gRmlsZTo6U3BlYy0+cmVsMmFicygiJHRtcGRpci9hZG1pbmRpciIpOworbXkgJHRlc3RkaXIgPSBGaWxlOjpTcGVjLT5yZWwyYWJzKCIkdG1wZGlyL3Rlc3RkaXIiKTsKKworbXkgQGRkID0gKCIkYnVpbGRkaXIvLi4vc3JjL2Rwa2ctZGl2ZXJ0Iik7CisKK2lmICghIC14ICJAZGQiKSB7CisgICAgcGxhbiBza2lwX2FsbCA9PiAiZHBrZy1kaXZlcnQgbm90IGF2YWlsYWJsZSI7CisgICAgZXhpdCgwKTsKK30KKworcGxhbiB0ZXN0cyA9PiAyMzU7CisKK3N1YiBjbGVhbnVwIHsKKyAgICBzeXN0ZW0oInJtIC1yZiAkdG1wZGlyICYmIG1rZGlyIC1wICR0ZXN0ZGlyICYmIG1rZGlyIC1wICRhZG1pbmRpciIpOworfQorCitzdWIgaW5zdGFsbF9kaXZlcnNpb25zIHsKKyAgICBteSAoJHR4dCkgPSBAXzsKKyAgICBvcGVuKE8sICI+ICRhZG1pbmRpci9kaXZlcnNpb25zIik7CisgICAgcHJpbnQgTyAkdHh0OworICAgIGNsb3NlKE8pOworfQorCitzdWIgY2FsbCB7CisgICAgbXkgKCRwcm9nLCAkYXJncywgJW9wdHMpID0gQF87CisKKyAgICBteSAoJG91dHB1dCwgJGVycm9yKTsKKyAgICBzcGF3bihleGVjID0+IFtAJHByb2csIEAkYXJnc10sIHdhaXRfY2hpbGQgPT4gMSwgbm9jaGVjayA9PiAxLAorICAgICAgICAgIHRvX3BpcGUgPT4gXCRvdXRwdXQsIGVycm9yX3RvX3BpcGUgPT4gXCRlcnJvciwgJW9wdHMpOworCisgICAgaWYgKCRvcHRzeydleHBlY3RfZmFpbHVyZSd9KSB7CisgICAgICAgIG9rKCQ/ICE9IDAsICJAJGFyZ3Mgc2hvdWxkIGZhaWwiKTsKKyAgICB9IGVsc2UgIHsKKyAgICAgICAgb2soJD8gPT0gMCwgIkAkYXJncyBzaG91bGQgbm90IGZhaWwiKTsKKyAgICB9CisKKyAgICBpZiAoZGVmaW5lZCAkb3B0c3snZXhwZWN0X3N0ZG91dCd9KSB7CisgICAgICAgIG15IChAb3V0cHV0KSA9IDwkb3V0cHV0PjsKKyAgICAgICAgbXkgKEBleHBlY3QpID0gc3BsaXQoL14vLCAkb3B0c3snZXhwZWN0X3N0ZG91dCd9KTsKKyAgICAgICAgaWYgKGRlZmluZWQgJG9wdHN7J2V4cGVjdF9zb3J0ZWRfc3Rkb3V0J30pIHsKKyAgICAgICAgICAgIEBvdXRwdXQgPSBzb3J0IEBvdXRwdXQ7CisgICAgICAgICAgICBAZXhwZWN0ID0gc29ydCBAZXhwZWN0OworICAgICAgICB9CisgICAgICAgIGlzKGpvaW4oJycsIEBvdXRwdXQpLCBqb2luKCcnLCBAZXhwZWN0KSwgIkAkYXJncyBzdGRvdXQiKTsKKyAgICB9CisgICAgaWYgKGRlZmluZWQgJG9wdHN7J2V4cGVjdF9zdGRvdXRfbGlrZSd9KSB7CisgICAgICAgIGxpa2Uoam9pbignJywgPCRvdXRwdXQ+KSwgJG9wdHN7J2V4cGVjdF9zdGRvdXRfbGlrZSd9LCAiQCRhcmdzIHN0ZG91dCIpOworICAgIH0KKyAgICBpZiAoZGVmaW5lZCAkb3B0c3snZXhwZWN0X3N0ZGVycid9KSB7CisgICAgICAgIGlzKGpvaW4oJycsIDwkZXJyb3I+KSwgJG9wdHN7J2V4cGVjdF9zdGRlcnInfSwgIkAkYXJncyBzdGRlcnIiKTsKKyAgICB9CisgICAgaWYgKGRlZmluZWQgJG9wdHN7J2V4cGVjdF9zdGRlcnJfbGlrZSd9KSB7CisgICAgICAgIGxpa2Uoam9pbignJywgPCRlcnJvcj4pLCAkb3B0c3snZXhwZWN0X3N0ZGVycl9saWtlJ30sICJAJGFyZ3Mgc3RkZXJyIik7CisgICAgfQorCisgICAgY2xvc2UoJG91dHB1dCk7CisgICAgY2xvc2UoJGVycm9yKTsKK30KKworc3ViIGNhbGxfZGl2ZXJ0IHsKKyAgICBteSAoJHBhcmFtcywgJW9wdHMpID0gQF87CisgICAgY2FsbChbQGRkLCAnLS1hZG1pbmRpcicsICRhZG1pbmRpcl0sICRwYXJhbXMsICVvcHRzKTsKK30KKworc3ViIGNhbGxfZGl2ZXJ0X3NvcnQgeworICAgIG15ICgkcGFyYW1zLCAlb3B0cykgPSBAXzsKKyAgICAkb3B0c3tleHBlY3Rfc29ydGVkX3N0ZG91dH0gPSAxOworICAgIGNhbGxfZGl2ZXJ0KCRwYXJhbXMsICVvcHRzKTsKK30KKworc3ViIGRpdmVyc2lvbnNfcGFjayB7CisgICAgbXkgKEBkYXRhKSA9IEBfOworICAgIG15IEBkYXRhX3BhY2tlZDsKKworICAgIGZvciAobXkgKCRpKSA9IDA7ICRpIDwgJCNkYXRhOyAkaSArPSAzKSB7CisgICAgICAgIHB1c2ggQGRhdGFfcGFja2VkLCBbIEBkYXRhWyRpIC4uICRpICsgMl0gXTsKKyAgICB9CisKKyAgICByZXR1cm4gc29ydCB7ICRhLT5bMF0gY21wICRiLT5bMF0gfSBAZGF0YV9wYWNrZWQ7Cit9CisKK3N1YiBkaXZlcnNpb25zX2VxIHsKKyAgICBteSAoQGV4cGVjdGVkKSA9IHNwbGl0IC9eLywgc2hpZnQ7CisgICAgb3BlbihPLCAiJGFkbWluZGlyL2RpdmVyc2lvbnMiKTsKKyAgICBteSAoQGNvbnRlbnRzKSA9IDxPPjsKKyAgICBjbG9zZShPKTsKKworICAgIG15IChAZXhwZWN0ZWRfcGFjaykgPSBkaXZlcnNpb25zX3BhY2soQGV4cGVjdGVkKTsKKyAgICBteSAoQGNvbnRlbnRzX3BhY2spID0gZGl2ZXJzaW9uc19wYWNrKEBjb250ZW50cyk7CisKKyAgICBpc19kZWVwbHkoXEBjb250ZW50c19wYWNrLCBcQGV4cGVjdGVkX3BhY2ssICJkaXZlcnNpb25zIGNvbnRlbnRzIik7Cit9CisKKyMjIyBUZXN0cworCitjbGVhbnVwKCk7CisKK25vdGUoIkNvbW1hbmQgbGluZSBwYXJzaW5nIHRlc3RpbmciKTsKKworbXkgJHVzYWdlcmUgPSBxci8uKlVzYWdlLipkcGtnLWRpdmVydC4qQ29tbWFuZHMuKk9wdGlvbnMuKi9zOworCitzdWIgY2FsbF9kaXZlcnRfYmFkdXNhZ2UgeworICAgIG15ICgkYXJncywgJGVycikgPSBAXzsKKyAgICBjYWxsX2RpdmVydCgkYXJncywgZXhwZWN0X2ZhaWx1cmUgPT4gMSwgZXhwZWN0X3N0ZGVycl9saWtlID0+ICRlcnIpOworfQorCitjYWxsX2RpdmVydChbJy0taGVscCddLCBleHBlY3Rfc3Rkb3V0X2xpa2UgPT4gJHVzYWdlcmUsCisgICAgICAgICAgICBleHBlY3Rfc3RkZXJyID0+ICcnKTsKK2NhbGxfZGl2ZXJ0KFsnLS12ZXJzaW9uJ10sIGV4cGVjdF9zdGRvdXRfbGlrZSA9PiBxci8uKmRwa2ctZGl2ZXJ0LipDb3B5cmlnaHQuKmZyZWUgc29mdHdhcmUuKi9zLAorICAgICAgICAgICAgZXhwZWN0X3N0ZGVyciA9PiAnJyk7CisKK2NhbGxfZGl2ZXJ0X2JhZHVzYWdlKFsnLS1qYWNoc21pdGJqdSddLCBxci91bmtub3duIG9wdGlvbi8pOworY2FsbF9kaXZlcnRfYmFkdXNhZ2UoWyctLWFkZCcsICctLXJlbW92ZSddLCBxci8oY29uZmxpY3Rpbmd8dHdvKS4qcmVtb3ZlLiphZGQuKi9zKTsKK2NhbGxfZGl2ZXJ0X2JhZHVzYWdlKFsnLS1kaXZlcnQnXSwgcXIvKHRha2VzIGEgdmFsdWV8bmVlZHMuKmFyZ3VtZW50KS8pOworY2FsbF9kaXZlcnRfYmFkdXNhZ2UoWyctLWRpdmVydCcsICJmb29cbmJhciJdLCBxci9uZXdsaW5lLyk7CitjYWxsX2RpdmVydF9iYWR1c2FnZShbJy0tcGFja2FnZSddLCBxci8odGFrZXMgYSB2YWx1ZXxuZWVkcy4qYXJndW1lbnQpLyk7CitjYWxsX2RpdmVydF9iYWR1c2FnZShbJy0tcGFja2FnZScsICJmb29cbmJhciJdLCBxci9uZXdsaW5lLyk7CisKK2luc3RhbGxfZGl2ZXJzaW9ucygnJyk7CisKK2NhbGxfZGl2ZXJ0X2JhZHVzYWdlKFsnLS1hZGQnLF0sIHFyL25lZWRzIGEgc2luZ2xlIGFyZ3VtZW50Lyk7CitjYWxsX2RpdmVydF9iYWR1c2FnZShbJy0tYWRkJywgJ2ZvbyddLCBxci9hYnNvbHV0ZS8pOworY2FsbF9kaXZlcnRfYmFkdXNhZ2UoWyctLWFkZCcsICIvZm9vXG5iYXIiXSwgcXIvbmV3bGluZS8pOworY2FsbF9kaXZlcnRfYmFkdXNhZ2UoWyctLWFkZCcsICIvZXRjIl0sIHFyL2RpcmVjdG9yKHl8aWVzKS8pOworY2FsbF9kaXZlcnRfYmFkdXNhZ2UoWyctLWFkZCcsICItLWRpdmVydCIsICJiYXIiLCAiL2Zvby9iYXIiXSwgcXIvYWJzb2x1dGUvKTsKK2NhbGxfZGl2ZXJ0X2JhZHVzYWdlKFsnLS1yZW1vdmUnXSwgcXIvbmVlZHMgYSBzaW5nbGUgYXJndW1lbnQvKTsKK2NhbGwoW0BkZCwgJy0tYWRtaW5kaXInXSwgW10sCisgICAgIGV4cGVjdF9mYWlsdXJlID0+IDEsIGV4cGVjdF9zdGRlcnJfbGlrZSA9PiBxci8odGFrZXMgYSB2YWx1ZXxuZWVkcy4qYXJndW1lbnQpLyk7CisKK2NsZWFudXAoKTsKKworbm90ZSgiUXVlcnlpbmcgaW5mb3JtYXRpb24gZnJvbSBkaXZlcnRzIGRiIChlbXB0eSBvbmUpIik7CisKK2luc3RhbGxfZGl2ZXJzaW9ucygnJyk7CisKK2NhbGxfZGl2ZXJ0X3NvcnQoWyctLWxpc3QnXSwgZXhwZWN0X3N0ZG91dCA9PiAnJywgZXhwZWN0X3N0ZGVyciA9PiAnJyk7CitjYWxsX2RpdmVydF9zb3J0KFsnLS1saXN0JywgJyonXSwgZXhwZWN0X3N0ZG91dCA9PiAnJywgZXhwZWN0X3N0ZGVyciA9PiAnJyk7CitjYWxsX2RpdmVydF9zb3J0KFsnLS1saXN0JywgJ2JheiddLCBleHBlY3Rfc3Rkb3V0ID0+ICcnLCBleHBlY3Rfc3RkZXJyID0+ICcnKTsKKworY2xlYW51cCgpOworCitub3RlKCJRdWVyeWluZyBpbmZvcm1hdGlvbiBmcm9tIGRpdmVydHMgZGIgKDEpIik7CisKK2luc3RhbGxfZGl2ZXJzaW9ucyg8PEVPRik7CisvYmluL3NoCisvYmluL3NoLmRpc3RyaWIKK2Rhc2gKKy91c3Ivc2hhcmUvbWFuL21hbjEvc2guMS5negorL3Vzci9zaGFyZS9tYW4vbWFuMS9zaC5kaXN0cmliLjEuZ3oKK2Rhc2gKKy91c3IvYmluL25tCisvdXNyL2Jpbi9ubS5zaW5nbGUKK2JpbnV0aWxzLW11bHRpYXJjaAorRU9GCisKK215ICRkaV9kYXNoID0gImRpdmVyc2lvbiBvZiAvYmluL3NoIHRvIC9iaW4vc2guZGlzdHJpYiBieSBkYXNoXG4iOworbXkgJGRpX2Rhc2htYW4gPSAiZGl2ZXJzaW9uIG9mIC91c3Ivc2hhcmUvbWFuL21hbjEvc2guMS5neiB0byAvdXNyL3NoYXJlL21hbi9tYW4xL3NoLmRpc3RyaWIuMS5neiBieSBkYXNoXG4iOworbXkgJGRpX25tID0gImRpdmVyc2lvbiBvZiAvdXNyL2Jpbi9ubSB0byAvdXNyL2Jpbi9ubS5zaW5nbGUgYnkgYmludXRpbHMtbXVsdGlhcmNoXG4iOworCitteSAkYWxsX2RpID0gJGRpX2Rhc2ggLiAkZGlfZGFzaG1hbiAuICRkaV9ubTsKKworY2FsbF9kaXZlcnRfc29ydChbJy0tbGlzdCddLCBleHBlY3Rfc3Rkb3V0ID0+ICRhbGxfZGksIGV4cGVjdF9zdGRlcnIgPT4gJycpOworY2FsbF9kaXZlcnRfc29ydChbJy0tbGlzdCcsICcqJ10sIGV4cGVjdF9zdGRvdXQgPT4gJGFsbF9kaSwgZXhwZWN0X3N0ZGVyciA9PiAnJyk7CitjYWxsX2RpdmVydF9zb3J0KFsnLS1saXN0JywgJyddLCBleHBlY3Rfc3Rkb3V0ID0+ICcnLCBleHBlY3Rfc3RkZXJyID0+ICcnKTsKKworY2FsbF9kaXZlcnRfc29ydChbJy0tbGlzdCcsICc/Pz8/Pz8/J10sIGV4cGVjdF9zdGRvdXQgPT4gJGRpX2Rhc2gsIGV4cGVjdF9zdGRlcnIgPT4gJycpOworY2FsbF9kaXZlcnRfc29ydChbJy0tbGlzdCcsICcqL3NoJ10sIGV4cGVjdF9zdGRvdXQgPT4gJGRpX2Rhc2gsIGV4cGVjdF9zdGRlcnIgPT4gJycpOworY2FsbF9kaXZlcnRfc29ydChbJy0tbGlzdCcsICcvYmluLyonXSwgZXhwZWN0X3N0ZG91dCA9PiAkZGlfZGFzaCwgZXhwZWN0X3N0ZGVyciA9PiAnJyk7CitjYWxsX2RpdmVydF9zb3J0KFsnLS1saXN0JywgJ2JpbnV0aWxzLW11bHRpYXJjaCddLCBleHBlY3Rfc3Rkb3V0ID0+ICRkaV9ubSwgZXhwZWN0X3N0ZGVyciA9PiAnJyk7CitjYWxsX2RpdmVydF9zb3J0KFsnLS1saXN0JywgJy9iaW4vc2gnXSwgZXhwZWN0X3N0ZG91dCA9PiAkZGlfZGFzaCwgZXhwZWN0X3N0ZGVyciA9PiAnJyk7CitjYWxsX2RpdmVydF9zb3J0KFsnLS1saXN0JywgJy0tJywgJy9iaW4vc2gnXSwgZXhwZWN0X3N0ZG91dCA9PiAkZGlfZGFzaCwgZXhwZWN0X3N0ZGVyciA9PiAnJyk7CitjYWxsX2RpdmVydF9zb3J0KFsnLS1saXN0JywgJy91c3IvYmluL25tLnNpbmdsZSddLCBleHBlY3Rfc3Rkb3V0ID0+ICRkaV9ubSwgZXhwZWN0X3N0ZGVyciA9PiAnJyk7CitjYWxsX2RpdmVydF9zb3J0KFsnLS1saXN0JywgJy9iaW4vc2gnLCAnL3Vzci9zaGFyZS9tYW4vbWFuMS9zaC4xLmd6J10sIGV4cGVjdF9zdGRvdXQgPT4gJGRpX2Rhc2ggLiAkZGlfZGFzaG1hbiwKKyAgICAgICAgICAgIGV4cGVjdF9zdGRlcnIgPT4gJycpOworCitjbGVhbnVwKCk7CisKK25vdGUoIlF1ZXJ5aW5nIGluZm9ybWF0aW9uIGZyb20gZGl2ZXJ0cyBkYiAoMikiKTsKKworaW5zdGFsbF9kaXZlcnNpb25zKDw8RU9GKTsKKy9iaW4vc2gKKy9iaW4vc2guZGlzdHJpYgorZGFzaAorL2Jpbi90cnVlCisvYmluL3RydWUuY29yZXV0aWxzCis6CitFT0YKKworY2FsbF9kaXZlcnQoWyctLWxpc3RwYWNrYWdlJ10sIGV4cGVjdF9mYWlsdXJlID0+IDEpOworY2FsbF9kaXZlcnQoWyctLWxpc3RwYWNrYWdlJywgJ2ZvbycsICdiYXInXSwgZXhwZWN0X2ZhaWx1cmUgPT4gMSk7CitjYWxsX2RpdmVydChbJy0tbGlzdHBhY2thZ2UnLCAnL2Jpbi9zaCddLCBleHBlY3Rfc3Rkb3V0ID0+ICJkYXNoXG4iLCBleHBlY3Rfc3RkZXJyID0+ICcnKTsKK2NhbGxfZGl2ZXJ0KFsnLS1saXN0cGFja2FnZScsICcvYmluL3RydWUnXSwgZXhwZWN0X3N0ZG91dCA9PiAiTE9DQUxcbiIsIGV4cGVjdF9zdGRlcnIgPT4gJycpOworY2FsbF9kaXZlcnQoWyctLWxpc3RwYWNrYWdlJywgJy9iaW4vZmFsc2UnXSwgZXhwZWN0X3N0ZG91dCA9PiAnJywgZXhwZWN0X3N0ZGVyciA9PiAnJyk7CisKK2NhbGxfZGl2ZXJ0KFsnLS10cnVlbmFtZSddLCBleHBlY3RfZmFpbHVyZSA9PiAxKTsKK2NhbGxfZGl2ZXJ0KFsnLS10cnVlbmFtZScsICcvYmluL3NoJ10sIGV4cGVjdF9zdGRvdXQgPT4gIi9iaW4vc2guZGlzdHJpYlxuIiwgZXhwZWN0X3N0ZGVyciA9PiAnJyk7CitjYWxsX2RpdmVydChbJy0tdHJ1ZW5hbWUnLCAnL2Jpbi9zaC5kaXN0cmliJ10sIGV4cGVjdF9zdGRvdXQgPT4gIi9iaW4vc2guZGlzdHJpYlxuIiwgZXhwZWN0X3N0ZGVyciA9PiAnJyk7CitjYWxsX2RpdmVydChbJy0tdHJ1ZW5hbWUnLCAnL2Jpbi9zb21ldGhpbmcnXSwgZXhwZWN0X3N0ZG91dCA9PiAiL2Jpbi9zb21ldGhpbmdcbiIsIGV4cGVjdF9zdGRlcnIgPT4gJycpOworCitjbGVhbnVwKCk7CisKK25vdGUoIkFkZGluZyBkaXZlcnNpb24iKTsKKworbXkgJGRpdmVyc2lvbnNfYWRkZWRfZm9vX2xvY2FsID0gPDxFT0Y7CiskdGVzdGRpci9mb28KKyR0ZXN0ZGlyL2Zvby5kaXN0cmliCis6CitFT0YKKworaW5zdGFsbF9kaXZlcnNpb25zKCcnKTsKKworc3lzdGVtKCJ0b3VjaCAkdGVzdGRpci9mb28iKTsKK2NhbGxfZGl2ZXJ0KFsnLS1yZW5hbWUnLCAnLS1hZGQnLCAiJHRlc3RkaXIvZm9vIl0sCisgICAgICAgICAgICBleHBlY3Rfc3Rkb3V0X2xpa2UgPT4gcXIsQWRkaW5nLipsb2NhbC4qZGl2ZXJzaW9uLipcUSR0ZXN0ZGlyXEUvZm9vLipcUSR0ZXN0ZGlyXEUvZm9vLmRpc3RyaWIsLAorICAgICAgICAgICAgZXhwZWN0X3N0ZGVyciA9PiAnJyk7CitvaygtZSAiJHRlc3RkaXIvZm9vLmRpc3RyaWIiLCAiZm9vIGRpdmVydGVkIik7CitvayghLWUgIiR0ZXN0ZGlyL2ZvbyIsICJmb28gZGl2ZXJ0ZWQiKTsKK2RpdmVyc2lvbnNfZXEoJGRpdmVyc2lvbnNfYWRkZWRfZm9vX2xvY2FsKTsKKworY2xlYW51cCgpOworCitub3RlKCJBZGRpbmcgZGl2ZXJzaW9uICgyKSIpOworCitpbnN0YWxsX2RpdmVyc2lvbnMoJycpOworCitzeXN0ZW0oInRvdWNoICR0ZXN0ZGlyL2ZvbyIpOworY2FsbF9kaXZlcnQoWyctLWFkZCcsICIkdGVzdGRpci9mb28iXSwKKyAgICAgICAgICAgIGV4cGVjdF9zdGRvdXRfbGlrZSA9PiBxcixBZGRpbmcuKmxvY2FsLipkaXZlcnNpb24uKlxRJHRlc3RkaXJcRS9mb28uKlxRJHRlc3RkaXJcRS9mb28uZGlzdHJpYiwsCisgICAgICAgICAgICBleHBlY3Rfc3RkZXJyID0+ICcnKTsKK29rKCEtZSAiJHRlc3RkaXIvZm9vLmRpc3RyaWIiLCAiZm9vIGRpdmVydGVkIik7CitvaygtZSAiJHRlc3RkaXIvZm9vIiwgImZvbyBkaXZlcnRlZCIpOworZGl2ZXJzaW9uc19lcSgkZGl2ZXJzaW9uc19hZGRlZF9mb29fbG9jYWwpOworCitjbGVhbnVwKCk7CisKK25vdGUoIkFkZGluZyBkaXZlcnNpb24gKDMpIik7CisKK2luc3RhbGxfZGl2ZXJzaW9ucygnJyk7CisKK3N5c3RlbSgidG91Y2ggJHRlc3RkaXIvZm9vIik7CitjYWxsX2RpdmVydChbJy0tcXVpZXQnLCAnLS1yZW5hbWUnLCAnLS1hZGQnLCAiJHRlc3RkaXIvZm9vIl0sCisgICAgICAgICAgICBleHBlY3Rfc3Rkb3V0ID0+ICcnLCBleHBlY3Rfc3RkZXJyID0+ICcnKTsKK29rKC1lICIkdGVzdGRpci9mb28uZGlzdHJpYiIsICJmb28gZGl2ZXJ0ZWQiKTsKK29rKCEtZSAiJHRlc3RkaXIvZm9vIiwgImZvbyBkaXZlcnRlZCIpOworZGl2ZXJzaW9uc19lcSgkZGl2ZXJzaW9uc19hZGRlZF9mb29fbG9jYWwpOworCitjbGVhbnVwKCk7CisKK25vdGUoIkFkZGluZyBkaXZlcnNpb24gKDQpIik7CisKK2luc3RhbGxfZGl2ZXJzaW9ucygnJyk7CitzeXN0ZW0oInRvdWNoICR0ZXN0ZGlyL2ZvbyIpOworY2FsbF9kaXZlcnQoWyctLXF1aWV0JywgJy0tcmVuYW1lJywgJy0tdGVzdCcsICIkdGVzdGRpci9mb28iXSwKKyAgICAgICAgICAgIGV4cGVjdF9zdGRvdXQgPT4gJycsIGV4cGVjdF9zdGRlcnIgPT4gJycpOworb2soLWUgIiR0ZXN0ZGlyL2ZvbyIsICJmb28gbm90IGRpdmVydGVkIik7CitvayghLWUgIiR0ZXN0ZGlyL2Zvby5kaXN0cmliIiwgImZvbyBkaXZlcnRlZCIpOworZGl2ZXJzaW9uc19lcSgnJyk7CisKK2NsZWFudXAoKTsKKworbm90ZSgiQWRkaW5nIGRpdmVyc2lvbiAoNSkiKTsKKworaW5zdGFsbF9kaXZlcnNpb25zKCcnKTsKK2NhbGxfZGl2ZXJ0KFsnLS1xdWlldCcsICctLXJlbmFtZScsICIkdGVzdGRpci9mb28iXSwKKyAgICAgICAgICAgIGV4cGVjdF9zdGRvdXQgPT4gJycsIGV4cGVjdF9zdGRlcnIgPT4gJycpOworb2soIS1lICIkdGVzdGRpci9mb28iLCAiZm9vIGRvZXMgbm90IGV4aXN0Iik7CitvayghLWUgIiR0ZXN0ZGlyL2Zvby5kaXN0cmliIiwgImZvbyB3YXMgbm90IGNyZWF0ZWQgb3V0IG9mIHRoaW4gYWlyIik7CisKK2NsZWFudXAoKTsKKworbm90ZSgiQWRkaW5nIGRpdmVyc2lvbiAoNikiKTsKKworaW5zdGFsbF9kaXZlcnNpb25zKCcnKTsKK3N5c3RlbSgidG91Y2ggJHRlc3RkaXIvZm9vIik7CitjYWxsX2RpdmVydChbJy0tcXVpZXQnLCAnLS1sb2NhbCcsICctLXJlbmFtZScsICIkdGVzdGRpci9mb28iXSwKKyAgICAgICAgICAgIGV4cGVjdF9zdGRvdXQgPT4gJycsIGV4cGVjdF9zdGRlcnIgPT4gJycpOworCitvaygtZSAiJHRlc3RkaXIvZm9vLmRpc3RyaWIiLCAiZm9vIGRpdmVydGVkIik7CitvayghLWUgIiR0ZXN0ZGlyL2ZvbyIsICJmb28gZGl2ZXJ0ZWQiKTsKK2RpdmVyc2lvbnNfZXEoJGRpdmVyc2lvbnNfYWRkZWRfZm9vX2xvY2FsKTsKKworY2xlYW51cCgpOworCitub3RlKCJBZGRpbmcgZGl2ZXJzaW9uICg3KSIpOworCitpbnN0YWxsX2RpdmVyc2lvbnMoJycpOworY2FsbF9kaXZlcnQoWyctLXF1aWV0JywgJy0tcmVuYW1lJywgJy0tcGFja2FnZScsICdiYXNoJywgIiR0ZXN0ZGlyL2ZvbyJdLAorICAgICAgICAgICAgZXhwZWN0X3N0ZG91dCA9PiAnJywgZXhwZWN0X3N0ZGVyciA9PiAnJyk7CitkaXZlcnNpb25zX2VxKDw8RU9GKTsKKyR0ZXN0ZGlyL2ZvbworJHRlc3RkaXIvZm9vLmRpc3RyaWIKK2Jhc2gKK0VPRgorCitub3RlKCJBZGRpbmcgZGl2ZXJzaW9uICg4KSIpOworCitpbnN0YWxsX2RpdmVyc2lvbnMoJycpOworc3lzdGVtKCJ0b3VjaCAkdGVzdGRpci9mb287IGxuICR0ZXN0ZGlyL2ZvbyAkdGVzdGRpci9mb28uZGlzdHJpYiIpOworY2FsbF9kaXZlcnQoWyItLXJlbmFtZSIsICIkdGVzdGRpci9mb28iXSk7CitkaXZlcnNpb25zX2VxKCRkaXZlcnNpb25zX2FkZGVkX2Zvb19sb2NhbCk7CitvayghLWUgIiR0ZXN0ZGlyL2ZvbyIsICJmb28gZGl2ZXJ0ZWQiKTsKK29rKC1lICIkdGVzdGRpci9mb28uZGlzdHJpYiIsICJmb28gZGl2ZXJ0ZWQiKTsKKworY2xlYW51cCgpOworCitub3RlKCJBZGRpbmcgZGl2ZXJzaW9uICg5KSIpOworCitpbnN0YWxsX2RpdmVyc2lvbnMoJycpOworc3lzdGVtKCJ0b3VjaCAkdGVzdGRpci9mb28gJHRlc3RkaXIvZm9vLmRpc3RyaWIiKTsKK2NhbGxfZGl2ZXJ0KFsiLS1yZW5hbWUiLCAiJHRlc3RkaXIvZm9vIl0sIGV4cGVjdF9mYWlsdXJlID0+IDEsCisgICAgICAgICAgICBleHBlY3Rfc3RkZXJyX2xpa2UgPT4gcXIvb3ZlcndyaXRpbmcvKTsKK2RpdmVyc2lvbnNfZXEoJycpOworCitjbGVhbnVwKCk7CisKK25vdGUoIkFkZGluZyBzZWNvbmQgZGl2ZXJzaW9uIik7CisKK2luc3RhbGxfZGl2ZXJzaW9ucygnJyk7CitjYWxsX2RpdmVydChbIiR0ZXN0ZGlyL2ZvbyJdKTsKKworY2FsbF9kaXZlcnQoWyIkdGVzdGRpci9mb28iXSwgZXhwZWN0X3N0ZG91dF9saWtlID0+IHFyL0xlYXZpbmcvKTsKK2NhbGxfZGl2ZXJ0KFsnLS1xdWlldCcsICIkdGVzdGRpci9mb28iXSwgZXhwZWN0X3N0ZG91dCA9PiAnJyk7CitjYWxsX2RpdmVydChbJy0tZGl2ZXJ0JywgIiR0ZXN0ZGlyL2Zvby5iYXIiLCAiJHRlc3RkaXIvZm9vIl0sCisgICAgICAgICAgICBleHBlY3RfZmFpbHVyZSA9PiAxLCBleHBlY3Rfc3RkZXJyX2xpa2UgPT4gcXIvY2xhc2hlcy8pOworY2FsbF9kaXZlcnQoWyctLXBhY2thZ2UnLCAnZm9vYmFyJywgIiR0ZXN0ZGlyL2ZvbyJdLCBleHBlY3RfZmFpbHVyZSA9PiAxLAorICAgICAgICAgICAgZXhwZWN0X3N0ZGVycl9saWtlID0+IHFyL2NsYXNoZXMvKTsKK2NhbGxfZGl2ZXJ0KFsnLS1kaXZlcnQnLCAiJHRlc3RkaXIvZm9vLmRpc3RyaWIiLCAiJHRlc3RkaXIvYmFyIl0sCisgICAgICAgICAgICBleHBlY3RfZmFpbHVyZSA9PiAxLCBleHBlY3Rfc3RkZXJyX2xpa2UgPT4gcXIvY2xhc2hlcy8pOworY2FsbF9kaXZlcnQoWyIkdGVzdGRpci9mb28uZGlzdHJpYiJdLAorICAgICAgICAgICAgZXhwZWN0X2ZhaWx1cmUgPT4gMSwgZXhwZWN0X3N0ZGVycl9saWtlID0+IHFyL2NsYXNoZXMvKTsKK2NhbGxfZGl2ZXJ0KFsnLS1kaXZlcnQnLCAiJHRlc3RkaXIvZm9vIiwgIiR0ZXN0ZGlyL2JhciJdLAorICAgICAgICAgICAgZXhwZWN0X2ZhaWx1cmUgPT4gMSwgZXhwZWN0X3N0ZGVycl9saWtlID0+IHFyL2NsYXNoZXMvKTsKKworY2xlYW51cCgpOworCitub3RlKCJBZGRpbmcgdGhpcmQgZGl2ZXJzaW9uIik7CisKK2luc3RhbGxfZGl2ZXJzaW9ucygnJyk7CitjYWxsX2RpdmVydChbIiR0ZXN0ZGlyL2ZvbyJdKTsKK2NhbGxfZGl2ZXJ0KFsiJHRlc3RkaXIvYmFyIl0pOworCitjYWxsX2RpdmVydChbJy0tcXVpZXQnLCAiJHRlc3RkaXIvZm9vIl0sIGV4cGVjdF9zdGRvdXQgPT4gJycpOworY2FsbF9kaXZlcnQoWyctLXBhY2thZ2UnLCAnZm9vYmFyJywgIiR0ZXN0ZGlyL2JhciJdLCBleHBlY3RfZmFpbHVyZSA9PiAxLAorICAgICAgICAgICBleHBlY3Rfc3RkZXJyX2xpa2UgPT4gcXIvY2xhc2hlcy8pOworCitjbGVhbnVwKCk7CisKK25vdGUoIkFkZGluZyBkaXZlcnNpb24gaW4gbm9uLWV4aXN0aW5nIGRpcmVjdG9yeSIpOworCitpbnN0YWxsX2RpdmVyc2lvbnMoJycpOworCitjYWxsX2RpdmVydChbJy0tcXVpZXQnLCAnLS1yZW5hbWUnLCAnLS1hZGQnLCAiJHRlc3RkaXIvem9vL2ZvbyJdLAorICAgICAgICAgICAgZXhwZWN0X3N0ZGVyciA9PiAnJywgZXhwZWN0X3N0ZG91dCA9PiAnJyk7CitkaXZlcnNpb25zX2VxKDw8RU9GKTsKKyR0ZXN0ZGlyL3pvby9mb28KKyR0ZXN0ZGlyL3pvby9mb28uZGlzdHJpYgorOgorRU9GCisKK2NsZWFudXAoKTsKKworbm90ZSgiUmVtb3ZlIGRpdmVyc2lvbnMiKTsKKworaW5zdGFsbF9kaXZlcnNpb25zKCcnKTsKKworY2FsbF9kaXZlcnQoWyctLXJlbW92ZScsICcvYmluL3NoJ10sIGV4cGVjdF9zdGRvdXRfbGlrZSA9PiBxci9ObyBkaXZlcnNpb24vLCBleHBlY3Rfc3RkZXJyID0+ICcnKTsKK2NhbGxfZGl2ZXJ0KFsnLS1yZW1vdmUnLCAnLS1xdWlldCcsICcvYmluL3NoJ10sIGV4cGVjdF9zdGRvdXQgPT4gJycsIGV4cGVjdF9zdGRlcnIgPT4gJycpOworCitjbGVhbnVwKCk7CisKK25vdGUoIlJlbW92ZSBkaXZlcnNpb24gKDIpIik7CisKK2luc3RhbGxfZGl2ZXJzaW9ucygnJyk7CitjYWxsX2RpdmVydChbIiR0ZXN0ZGlyL2ZvbyJdKTsKK2NhbGxfZGl2ZXJ0KFsiJHRlc3RkaXIvYmFyIl0pOworY2FsbF9kaXZlcnQoWyIkdGVzdGRpci9iYXoiXSk7CisKK2NhbGxfZGl2ZXJ0KFsiLS1kaXZlcnQiLCAiJHRlc3RkaXIvZm9vLm15IiwgIi0tcmVtb3ZlIiwgIiR0ZXN0ZGlyL2ZvbyJdLAorICAgICAgICAgICBleHBlY3RfZmFpbHVyZSA9PiAxLCBleHBlY3Rfc3RkZXJyX2xpa2UgPT4gcXIvbWlzbWF0Y2ggb24gZGl2ZXJ0LXRvLyk7CitjYWxsX2RpdmVydChbIi0tcGFja2FnZSIsICJiYXoiLCAiLS1yZW1vdmUiLCAiJHRlc3RkaXIvZm9vIl0sCisgICAgICAgICAgICBleHBlY3RfZmFpbHVyZSA9PiAxLCBleHBlY3Rfc3RkZXJyX2xpa2UgPT4gcXIvbWlzbWF0Y2ggb24gcGFja2FnZS8pOworY2FsbF9kaXZlcnQoWyItLXBhY2thZ2UiLCAiYmF6IiwgIi0tZGl2ZXJ0IiwgIiR0ZXN0ZGlyL2Zvby5teSIsICItLXJlbW92ZSIsICIkdGVzdGRpci9mb28iXSwKKyAgICAgICAgICAgIGV4cGVjdF9mYWlsdXJlID0+IDEsIGV4cGVjdF9zdGRlcnJfbGlrZSA9PnFyL21pc21hdGNoIG9uIChwYWNrYWdlfGRpdmVydC10bykvKTsKKworY2FsbF9kaXZlcnQoWyItLWRpdmVydCIsICIkdGVzdGRpci9mb28uZGlzdHJpYiIsICItLXJlbW92ZSIsICIkdGVzdGRpci9mb28iXSwKKyAgICAgICAgICAgIGV4cGVjdF9zdGRvdXRfbGlrZSA9PiBxcixSZW1vdmluZy4qXFEkdGVzdGRpclxFL2ZvbywpOworZGl2ZXJzaW9uc19lcSg8PEVPRik7CiskdGVzdGRpci9iYXIKKyR0ZXN0ZGlyL2Jhci5kaXN0cmliCis6CiskdGVzdGRpci9iYXoKKyR0ZXN0ZGlyL2Jhei5kaXN0cmliCis6CitFT0YKKworY2xlYW51cCgpOworCitub3RlKCJSZW1vdmUgZGl2ZXJzaW9uICgzKSIpOworCitpbnN0YWxsX2RpdmVyc2lvbnMoJycpOworCitjYWxsX2RpdmVydChbIiR0ZXN0ZGlyL2ZvbyJdKTsKK2NhbGxfZGl2ZXJ0KFsiJHRlc3RkaXIvYmFyIl0pOworY2FsbF9kaXZlcnQoWyIkdGVzdGRpci9iYXoiXSk7CisKK2NhbGxfZGl2ZXJ0KFsiLS1yZW1vdmUiLCAiJHRlc3RkaXIvYmFyIl0sCisgICAgICAgICAgICBleHBlY3Rfc3Rkb3V0X2xpa2UgPT4gcXIsUmVtb3ZpbmcuKlxRJHRlc3RkaXJcRS9iYXIsKTsKK2RpdmVyc2lvbnNfZXEoPDxFT0YpOworJHRlc3RkaXIvZm9vCiskdGVzdGRpci9mb28uZGlzdHJpYgorOgorJHRlc3RkaXIvYmF6CiskdGVzdGRpci9iYXouZGlzdHJpYgorOgorRU9GCisKK2NsZWFudXAoKTsKKworbm90ZSgiUmVtb3ZlIGRpdmVyc2lvbiAoNCkiKTsKKworaW5zdGFsbF9kaXZlcnNpb25zKCcnKTsKKworY2FsbF9kaXZlcnQoWyIkdGVzdGRpci9mb28iXSk7CitjYWxsX2RpdmVydChbIiR0ZXN0ZGlyL2JhciJdKTsKK2NhbGxfZGl2ZXJ0KFsiLS1wYWNrYWdlIiwgImJhc2giLCAiJHRlc3RkaXIvYmF6Il0pOworCitjYWxsX2RpdmVydChbIi0tcXVpZXQiLCAiLS1wYWNrYWdlIiwgImJhc2giLCAiLS1yZW1vdmUiLCAiJHRlc3RkaXIvYmF6Il0sCisgICAgICAgICAgICBleHBlY3Rfc3Rkb3V0ID0+ICcnLCBleHBlY3Rfc3RkZXJyID0+ICcnKTsKK2RpdmVyc2lvbnNfZXEoPDxFT0YpOworJHRlc3RkaXIvZm9vCiskdGVzdGRpci9mb28uZGlzdHJpYgorOgorJHRlc3RkaXIvYmFyCiskdGVzdGRpci9iYXIuZGlzdHJpYgorOgorRU9GCisKK2NsZWFudXAoKTsKKworbm90ZSgiUmVtb3ZlIGRpdmVyc2lvbig1KSIpOworCitpbnN0YWxsX2RpdmVyc2lvbnMoJycpOworc3lzdGVtKCJ0b3VjaCAkdGVzdGRpci9mb28iKTsKK2NhbGxfZGl2ZXJ0KFsiLS1yZW5hbWUiLCAiJHRlc3RkaXIvZm9vIl0pOworCitjYWxsX2RpdmVydChbIi0tdGVzdCIsICItLXJlbmFtZSIsICItLXJlbW92ZSIsICIkdGVzdGRpci9mb28iXSwKKyAgICAgICAgICAgIGV4cGVjdF9zdGRvdXRfbGlrZSA9PiBxcixSZW1vdmluZy4qXFEkdGVzdGRpclxFL2ZvbywsIGV4cGVjdF9zdGRlcnIgPT4gJycpOworb2soLWUgIiR0ZXN0ZGlyL2Zvby5kaXN0cmliIik7CitvayghLWUgIiR0ZXN0ZGlyL2ZvbyIpOworZGl2ZXJzaW9uc19lcSgkZGl2ZXJzaW9uc19hZGRlZF9mb29fbG9jYWwpOworCitjYWxsX2RpdmVydChbIi0tcXVpZXQiLCAiLS1yZW5hbWUiLCAiLS1yZW1vdmUiLCAiJHRlc3RkaXIvZm9vIl0sCisgICAgICAgICAgICBleHBlY3Rfc3Rkb3V0ID0+ICcnLCBleHBlY3Rfc3RkZXJyID0+ICcnKTsKK29rKC1lICIkdGVzdGRpci9mb28iKTsKK29rKCEtZSAiJHRlc3RkaXIvZm9vLmRpc3RyaWIiKTsKK2RpdmVyc2lvbnNfZXEoJycpOworCitjbGVhbnVwKCk7CisKK25vdGUoIkNvcnJ1cHRlZCBkaXZlcnRpb25zIGRiIGhhbmRsaW5nIik7CisKK1NLSVA6IHsKKyAgICBza2lwICJydW5uaW5nIGFzIHJvb3Qgb3Igc2ltaWxhciIsIDMsIGlmIChkZWZpbmVkKCRFTlZ7RkFLRVJPT1RLRVl9KSBvciAkPiA9PSAwKTsKKworICAgICMgQW4gaW5leGlzdGVudCBkaXZlcnNpb25zIGRiIGZpbGUgc2hvdWxkIG5vdCBiZSBjb25zaWRlcmVkIGEgZmFpbHVyZSwKKyAgICAjIGJ1dCBhIGZhaWx1cmUgdG8gb3BlbiBpdCBzaG91bGQgYmUuCisgICAgaW5zdGFsbF9kaXZlcnNpb25zKCcnKTsKKyAgICBzeXN0ZW0oImNobW9kIDAwMCAkYWRtaW5kaXIvZGl2ZXJzaW9ucyIpOworICAgIGNhbGxfZGl2ZXJ0X3NvcnQoWyctLWxpc3QnXSwgZXhwZWN0X2ZhaWx1cmUgPT4gMSwKKyAgICAgICAgICAgICAgICBleHBlY3Rfc3RkZXJyX2xpa2UgPT4gcXIvKGNhbm5vdHxmYWlsZWQpLipvcGVuLywgZXhwZWN0X3N0ZG91dCA9PiAnJyk7CisgICAgc3lzdGVtKCJjaG1vZCA2NDQgJGFkbWluZGlyL2RpdmVyc2lvbnMiKTsKK30KKworaW5zdGFsbF9kaXZlcnNpb25zKDw8RU9GKTsKKy9iaW4vc2gKK0VPRgorCitjYWxsX2RpdmVydF9zb3J0KFsnLS1saXN0J10sIGV4cGVjdF9mYWlsdXJlID0+IDEsCisgICAgICAgICAgICBleHBlY3Rfc3RkZXJyX2xpa2UgPT4gcXIvKGNvcnJ1cHR8dW5leHBlY3RlZCBlb2YpLywgZXhwZWN0X3N0ZG91dCA9PiAnJyk7CisKK2luc3RhbGxfZGl2ZXJzaW9ucyg8PEVPRik7CisvYmluL3NoCitiYXNoCitFT0YKKworY2FsbF9kaXZlcnRfc29ydChbJy0tbGlzdCddLCBleHBlY3RfZmFpbHVyZSA9PiAxLAorICAgICAgICAgICAgZXhwZWN0X3N0ZGVycl9saWtlID0+IHFyLyhjb3JydXB0fHVuZXhwZWN0ZWQgZW9mKS8sIGV4cGVjdF9zdGRvdXQgPT4gJycpOworCitjbGVhbnVwKCk7CisKK1NLSVA6IHsKKyAgICBza2lwICJydW5uaW5nIGFzIHJvb3Qgb3Igc2ltaWxhciIsIDEwLCBpZiAoZGVmaW5lZCgkRU5We0ZBS0VST09US0VZfSkgb3IgJD4gPT0gMCk7CisKKyAgICBub3RlKCJSL08gZGlyZWN0b3J5Iik7CisKKyAgICBpbnN0YWxsX2RpdmVyc2lvbnMoJycpOworICAgIHN5c3RlbSgibWtkaXIgJHRlc3RkaXIvcm9kaXIgJiYgdG91Y2ggJHRlc3RkaXIvcm9kaXIvZm9vICR0ZXN0ZGlyL2JhciAmJiBjaG1vZCA1MDAgJHRlc3RkaXIvcm9kaXIiKTsKKyAgICBjYWxsX2RpdmVydChbJy0tcmVuYW1lJywgJy0tYWRkJywgIiR0ZXN0ZGlyL3JvZGlyL2ZvbyJdLAorICAgICAgICAgICAgICAgIGV4cGVjdF9mYWlsdXJlID0+IDEsIGV4cGVjdF9zdGRlcnJfbGlrZSA9PiBxci9lcnJvci8pOworICAgIGNhbGxfZGl2ZXJ0KFsnLS1yZW5hbWUnLCAnLS1kaXZlcnQnLCAiJHRlc3RkaXIvcm9kaXIvYmFyIiwgJy0tYWRkJywgIiR0ZXN0ZGlyL2JhciJdLAorICAgICAgICAgICAgICAgIGV4cGVjdF9mYWlsdXJlID0+IDEsIGV4cGVjdF9zdGRlcnJfbGlrZSA9PiBxci9lcnJvci8pOworICAgIGRpdmVyc2lvbnNfZXEoJycpOworCisgICAgc3lzdGVtKCJjaG1vZCA3NTUgJHRlc3RkaXIvcm9kaXIiKTsKKyAgICBjbGVhbnVwKCk7CisKKyAgICBub3RlKCJVbmF2YWlsYWJsZSBmaWxlIik7CisKKyAgICBpbnN0YWxsX2RpdmVyc2lvbnMoJycpOworICAgIHN5c3RlbSgibWtkaXIgJHRlc3RkaXIvbmFkaXIgJiYgY2htb2QgMDAwICR0ZXN0ZGlyL25hZGlyIik7CisgICAgY2FsbF9kaXZlcnQoWyctLXJlbmFtZScsICctLWFkZCcsICIkdGVzdGRpci9uYWRpci9mb28iXSwKKyAgICAgICAgICAgICAgICBleHBlY3RfZmFpbHVyZSA9PiAxLCBleHBlY3Rfc3RkZXJyX2xpa2UgPT4gcXIvUGVybWlzc2lvbiBkZW5pZWQvKTsKKyAgICBzeXN0ZW0oInRvdWNoICR0ZXN0ZGlyL2ZvbyIpOworICAgIGNhbGxfZGl2ZXJ0KFsnLS1yZW5hbWUnLCAnLS1kaXZlcnQnLCAiJHRlc3RkaXIvbmFkaXIvZm9vIiwgJy0tYWRkJywgIiR0ZXN0ZGlyL2ZvbyJdLAorICAgICAgICAgICAgICAgIGV4cGVjdF9mYWlsdXJlID0+IDEsIGV4cGVjdF9zdGRlcnJfbGlrZSA9PiBxci9QZXJtaXNzaW9uIGRlbmllZC8pOworICAgIGRpdmVyc2lvbnNfZXEoJycpOworCisgICAgY2xlYW51cCgpOworfQorCitub3RlKCJFcnJvcnMgZHVyaW5nIHNhdmluZyBkaXZlcnNpb25zIGRiIik7CisKK2luc3RhbGxfZGl2ZXJzaW9ucygnJyk7CisKK1NLSVA6IHsKKyAgICBza2lwICJydW5uaW5nIGFzIHJvb3Qgb3Igc2ltaWxhciIsIDQsIGlmIChkZWZpbmVkKCRFTlZ7RkFLRVJPT1RLRVl9KSBvciAkPiA9PSAwKTsKKworICAgIHN5c3RlbSgiY2htb2QgNTAwICRhZG1pbmRpciIpOworICAgIGNhbGxfZGl2ZXJ0KFsiJHRlc3RkaXIvZm9vIl0sIGV4cGVjdF9mYWlsdXJlID0+IDEsIGV4cGVjdF9zdGRlcnJfbGlrZSA9PiBxci9jcmVhdGUuKm5ldy8pOworICAgIHN5c3RlbSgiY2htb2QgNzU1ICRhZG1pbmRpcjsgbG4gLXMgL2Rldi9mdWxsICRhZG1pbmRpci9kaXZlcnNpb25zLW5ldyIpOworICAgIGNhbGxfZGl2ZXJ0KFsiJHRlc3RkaXIvZm9vIl0sIGV4cGVjdF9mYWlsdXJlID0+IDEsIGV4cGVjdF9zdGRlcnJfbGlrZSA9PiBxci8od3JpdGV8Zmx1c2h8Y2xvc2UpLipuZXcvKTsKK30KKworc3lzdGVtKCJybSAtZiAkYWRtaW5kaXIvZGl2ZXJzaW9ucy1uZXc7IG1rZGlyICRhZG1pbmRpci9kaXZlcnNpb25zLW9sZCIpOworY2FsbF9kaXZlcnQoWyIkdGVzdGRpci9mb28iXSwgZXhwZWN0X2ZhaWx1cmUgPT4gMSwgZXhwZWN0X3N0ZGVycl9saWtlID0+IHFyL3JlbW92LipvbGQvKTsKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvc3JjL3RyaWdjbWQuYyBiL2Rwa2ctMS4xNi4xLjEvc3JjL3RyaWdjbWQuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wOWZiMzQ2Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zcmMvdHJpZ2NtZC5jCkBAIC0wLDAgKzEsMjQwIEBACisvKgorICogZHBrZy10cmlnZ2VyIC0gdHJpZ2dlciBtYW5hZ2VtZW50IHV0aWxpdHkKKyAqCisgKiBDb3B5cmlnaHQgwqkgMjAwNyBDYW5vbmljYWwgTHRkLgorICogV3JpdHRlbiBieSBJYW4gSmFja3NvbiA8aWFuQGRhdmVuYW50LmdyZWVuZW5kLm9yZy51az4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworI2luY2x1ZGUgPGNvbmZpZy5oPgorI2luY2x1ZGUgPGNvbXBhdC5oPgorCisjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CisjaW5jbHVkZSA8c3lzL2lvY3RsLmg+CisjaW5jbHVkZSA8c3lzL3N0YXQuaD4KKyNpbmNsdWRlIDxzeXMvdGVybWlvcy5oPgorCisjaW5jbHVkZSA8ZmNudGwuaD4KKyNpZiBIQVZFX0xPQ0FMRV9ICisjaW5jbHVkZSA8bG9jYWxlLmg+CisjZW5kaWYKKyNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDx1bmlzdGQuaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlIDxzdGRpby5oPgorCisjaW5jbHVkZSA8ZHBrZy9pMThuLmg+CisjaW5jbHVkZSA8ZHBrZy9kcGtnLmg+CisjaW5jbHVkZSA8ZHBrZy9kcGtnLWRiLmg+CisjaW5jbHVkZSA8ZHBrZy9vcHRpb25zLmg+CisjaW5jbHVkZSA8ZHBrZy90cmlnZGVmZXJyZWQuaD4KKyNpbmNsdWRlIDxkcGtnL3RyaWdsaWIuaD4KKworc3RhdGljIGNvbnN0IGNoYXIgcHJpbnRmb3JoZWxwW10gPSBOXygKKyJUeXBlIGRwa2ctdHJpZ2dlciAtLWhlbHAgZm9yIGhlbHAgYWJvdXQgdGhpcyB1dGlsaXR5LiIpOworCitzdGF0aWMgdm9pZCBEUEtHX0FUVFJfTk9SRVQKK3ByaW50dmVyc2lvbihjb25zdCBzdHJ1Y3QgY21kaW5mbyAqY2ksIGNvbnN0IGNoYXIgKnZhbHVlKQoreworCXByaW50ZihfKCJEZWJpYW4gJXMgcGFja2FnZSB0cmlnZ2VyIHV0aWxpdHkgdmVyc2lvbiAlcy5cbiIpLAorCSAgICAgICBkcGtnX2dldF9wcm9nbmFtZSgpLCBEUEtHX1ZFUlNJT05fQVJDSCk7CisKKwlwcmludGYoXygKKyJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAyIG9yXG4iCisibGF0ZXIgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gVGhlcmUgaXMgTk8gd2FycmFudHkuXG4iKSk7CisKKwltX291dHB1dChzdGRvdXQsIF8oIjxzdGFuZGFyZCBvdXRwdXQ+IikpOworCisJZXhpdCgwKTsKK30KKworc3RhdGljIHZvaWQgRFBLR19BVFRSX05PUkVUCit1c2FnZShjb25zdCBzdHJ1Y3QgY21kaW5mbyAqY2ksIGNvbnN0IGNoYXIgKnZhbHVlKQoreworCXByaW50ZihfKAorIlVzYWdlOiAlcyBbPG9wdGlvbnM+IC4uLl0gPHRyaWdnZXItbmFtZT5cbiIKKyIgICAgICAgJXMgWzxvcHRpb25zPiAuLi5dIDxjb21tYW5kPlxuIgorIlxuIiksIGRwa2dfZ2V0X3Byb2duYW1lKCksIGRwa2dfZ2V0X3Byb2duYW1lKCkpOworCisJcHJpbnRmKF8oCisiQ29tbWFuZHM6XG4iCisiICAtLWNoZWNrLXN1cHBvcnRlZCAgICAgICAgICAgICAgICBDaGVjayBpZiB0aGUgcnVubmluZyBkcGtnIHN1cHBvcnRzIHRyaWdnZXJzLlxuIgorIlxuIikpOworCisJcHJpbnRmKF8oCisiICAtaHwtLWhlbHAgICAgICAgICAgICAgICAgICAgICAgICBTaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgICAgICAgICAgU2hvdyB0aGUgdmVyc2lvbi5cbiIKKyJcbiIpKTsKKworCXByaW50ZihfKAorIk9wdGlvbnM6XG4iCisiICAtLWFkbWluZGlyPTxkaXJlY3Rvcnk+ICAgICAgICAgICBVc2UgPGRpcmVjdG9yeT4gaW5zdGVhZCBvZiAlcy5cbiIKKyIgIC0tYnktcGFja2FnZT08cGFja2FnZT4gICAgICAgICAgIE92ZXJyaWRlIHRyaWdnZXIgYXdhaXRlciAobm9ybWFsbHkgc2V0XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ5IGRwa2cpLlxuIgorIiAgLS1uby1hd2FpdCAgICAgICAgICAgICAgICAgICAgICAgTm8gcGFja2FnZSBuZWVkcyB0byBhd2FpdCB0aGUgcHJvY2Vzc2luZy5cbiIKKyIgIC0tbm8tYWN0ICAgICAgICAgICAgICAgICAgICAgICAgIEp1c3QgdGVzdCAtIGRvbid0IGFjdHVhbGx5IGNoYW5nZSBhbnl0aGluZy5cbiIKKyJcbiIpLCBBRE1JTkRJUik7CisKKwltX291dHB1dChzdGRvdXQsIF8oIjxzdGFuZGFyZCBvdXRwdXQ+IikpOworCisJZXhpdCgwKTsKK30KKworc3RhdGljIGNvbnN0IGNoYXIgKmFkbWluZGlyOworc3RhdGljIGludCBmX25vYWN0LCBmX2NoZWNrOworCitzdGF0aWMgY29uc3QgY2hhciAqYnlwYWNrYWdlLCAqYWN0aXZhdGU7CitzdGF0aWMgYm9vbCBkb25lX3RyaWcsIGN0cmlnOworCitzdGF0aWMgdm9pZAorbm9hd2FpdChjb25zdCBzdHJ1Y3QgY21kaW5mbyAqY2ksIGNvbnN0IGNoYXIgKnZhbHVlKQoreworCWJ5cGFja2FnZSA9ICItIjsKK30KKworc3RhdGljIHZvaWQKK3llc3BhY2thZ2UoY29uc3QgY2hhciAqYXduYW1lKQoreworCXRyaWdkZWZfdXBkYXRlX3ByaW50ZigiICVzIiwgYXduYW1lKTsKK30KKworc3RhdGljIHZvaWQKK3RkbV9hZGRfdHJpZ19iZWdpbihjb25zdCBjaGFyICp0cmlnKQoreworCWN0cmlnID0gIXN0cmNtcCh0cmlnLCBhY3RpdmF0ZSk7CisJdHJpZ2RlZl91cGRhdGVfcHJpbnRmKCIlcyIsIHRyaWcpOworCWlmICghY3RyaWcgfHwgZG9uZV90cmlnKQorCQlyZXR1cm47CisJeWVzcGFja2FnZShieXBhY2thZ2UpOworCWRvbmVfdHJpZyA9IHRydWU7Cit9CisKK3N0YXRpYyB2b2lkCit0ZG1fYWRkX3BhY2thZ2UoY29uc3QgY2hhciAqYXduYW1lKQoreworCWlmIChjdHJpZyAmJiAhc3RyY21wKGF3bmFtZSwgYnlwYWNrYWdlKSkKKwkJcmV0dXJuOworCXllc3BhY2thZ2UoYXduYW1lKTsKK30KKworc3RhdGljIHZvaWQKK3RkbV9hZGRfdHJpZ19lbmQodm9pZCkKK3sKKwl0cmlnZGVmX3VwZGF0ZV9wcmludGYoIlxuIik7Cit9CisKK3N0YXRpYyBjb25zdCBzdHJ1Y3QgdHJpZ2RlZm1ldGhzIHRkbV9hZGQgPSB7CisJLnRyaWdfYmVnaW4gPSB0ZG1fYWRkX3RyaWdfYmVnaW4sCisJLnBhY2thZ2UgPSB0ZG1fYWRkX3BhY2thZ2UsCisJLnRyaWdfZW5kID0gdGRtX2FkZF90cmlnX2VuZCwKK307CisKK3N0YXRpYyB2b2lkIERQS0dfQVRUUl9OT1JFVAorZG9fY2hlY2sodm9pZCkKK3sKKwllbnVtIHRyaWdkZWZfdXBkYXRlX3N0YXR1cyB1ZjsKKworCXVmID0gdHJpZ2RlZl91cGRhdGVfc3RhcnQodGR1Zl9ub2xvY2tvayk7CisJc3dpdGNoICh1ZikgeworCWNhc2UgdGR1c19lcnJvcl9ub19kaXI6CisJCWZwcmludGYoc3RkZXJyLCBfKCIlczogdHJpZ2dlcnMgZGF0YSBkaXJlY3Rvcnkgbm90IHlldCBjcmVhdGVkXG4iKSwKKwkJICAgICAgICBkcGtnX2dldF9wcm9nbmFtZSgpKTsKKwkJZXhpdCgxKTsKKwljYXNlIHRkdXNfZXJyb3Jfbm9fZGVmZXJyZWQ6CisJCWZwcmludGYoc3RkZXJyLCBfKCIlczogdHJpZ2dlciByZWNvcmRzIG5vdCB5ZXQgaW4gZXhpc3RlbmNlXG4iKSwKKwkJICAgICAgICBkcGtnX2dldF9wcm9nbmFtZSgpKTsKKwkJZXhpdCgxKTsKKwljYXNlIHRkdXNfb2s6CisJY2FzZSB0ZHVzX2Vycm9yX2VtcHR5X2RlZmVycmVkOgorCQlleGl0KDApOworCWRlZmF1bHQ6CisJCWludGVybmVycigidW5rbm93biB0cmlnZGVmX3VwZGF0ZV9zdGFydCByZXR1cm4gdmFsdWUgJyVkJyIsIHVmKTsKKwl9Cit9CisKK3N0YXRpYyBjb25zdCBzdHJ1Y3QgY21kaW5mbyBjbWRpbmZvc1tdID0geworCXsgImFkbWluZGlyIiwgICAgICAgIDAsICAgMSwgTlVMTCwgICAgICZhZG1pbmRpciB9LAorCXsgImJ5LXBhY2thZ2UiLCAgICAgICdmJywgMSwgTlVMTCwgICAgICZieXBhY2thZ2UgfSwKKwl7ICJuby1hd2FpdCIsICAgICAgICAwLCAgIDAsIE5VTEwsICAgICAmYnlwYWNrYWdlLCBub2F3YWl0IH0sCisJeyAibm8tYWN0IiwgICAgICAgICAgMCwgICAwLCAmZl9ub2FjdCwgTlVMTCwgICAgICAgTlVMTCwgMSB9LAorCXsgImNoZWNrLXN1cHBvcnRlZCIsIDAsICAgMCwgJmZfY2hlY2ssIE5VTEwsICAgICAgIE5VTEwsIDEgfSwKKwl7ICJoZWxwIiwgICAgICAgICAgICAnaCcsIDAsIE5VTEwsICAgICBOVUxMLCAgICAgICB1c2FnZSAgIH0sCisJeyAidmVyc2lvbiIsICAgICAgICAgMCwgICAwLCBOVUxMLCAgICAgTlVMTCwgICAgICAgcHJpbnR2ZXJzaW9uICB9LAorCXsgIE5VTEwgIH0KK307CisKK2ludAorbWFpbihpbnQgYXJnYywgY29uc3QgY2hhciAqY29uc3QgKmFyZ3YpCit7CisJaW50IHVmOworCWNvbnN0IGNoYXIgKmJhZG5hbWU7CisJZW51bSB0cmlnZGVmX3VwZGF0ZWZsYWdzIHRkdWY7CisKKwlzZXRsb2NhbGUoTENfQUxMLCAiIik7CisJYmluZHRleHRkb21haW4oUEFDS0FHRSwgTE9DQUxFRElSKTsKKwl0ZXh0ZG9tYWluKFBBQ0tBR0UpOworCisJZHBrZ19zZXRfcHJvZ25hbWUoImRwa2ctdHJpZ2dlciIpOworCXN0YW5kYXJkX3N0YXJ0dXAoKTsKKwlteW9wdCgmYXJndiwgY21kaW5mb3MsIHByaW50Zm9yaGVscCk7CisKKwlhZG1pbmRpciA9IGRwa2dfZGJfc2V0X2RpcihhZG1pbmRpcik7CisKKwlzZXR2YnVmKHN0ZG91dCwgTlVMTCwgX0lPTkJGLCAwKTsKKworCWlmIChmX2NoZWNrKSB7CisJCWlmICgqYXJndikKKwkJCWJhZHVzYWdlKF8oIi0tJXMgdGFrZXMgbm8gYXJndW1lbnRzIiksCisJCQkgICAgICAgICAiY2hlY2stc3VwcG9ydGVkIik7CisJCWRvX2NoZWNrKCk7CisJfQorCisJaWYgKCEqYXJndiB8fCBhcmd2WzFdKQorCQliYWR1c2FnZShfKCJ0YWtlcyBvbmUgYXJndW1lbnQsIHRoZSB0cmlnZ2VyIG5hbWUiKSk7CisKKwlpZiAoIWJ5cGFja2FnZSkgeworCQlieXBhY2thZ2UgPSBnZXRlbnYoIkRQS0dfTUFJTlRTQ1JJUFRfUEFDS0FHRSIpOworCQlpZiAoIWJ5cGFja2FnZSkKKwkJCW9oc2hpdChfKCJtdXN0IGJlIGNhbGxlZCBmcm9tIGEgbWFpbnRhaW5lciBzY3JpcHQiCisJCQkgICAgICAgICAiIChvciB3aXRoIGEgLS1ieS1wYWNrYWdlIG9wdGlvbikiKSk7CisJfQorCWlmIChzdHJjbXAoYnlwYWNrYWdlLCAiLSIpICYmCisJICAgIChiYWRuYW1lID0gcGtnX25hbWVfaXNfaWxsZWdhbChieXBhY2thZ2UsIE5VTEwpKSkKKwkJb2hzaGl0KF8oImlsbGVnYWwgYXdhaXRlZCBwYWNrYWdlIG5hbWUgJyUuMjUwcyc6ICUuMjUwcyIpLAorCQkgICAgICAgYnlwYWNrYWdlLCBiYWRuYW1lKTsKKworCWFjdGl2YXRlID0gYXJndlswXTsKKwliYWRuYW1lID0gdHJpZ19uYW1lX2lzX2lsbGVnYWwoYWN0aXZhdGUpOworCWlmIChiYWRuYW1lKQorCQliYWR1c2FnZShfKCJpbnZhbGlkIHRyaWdnZXIgbmFtZSBgJS4yNTBzJzogJS4yNTBzIiksCisJCSAgICAgICAgIGFjdGl2YXRlLCBiYWRuYW1lKTsKKworCXRyaWdkZWZfc2V0X21ldGhvZHMoJnRkbV9hZGQpOworCisJdGR1ZiA9IHRkdWZfbm9sb2Nrb2s7CisJaWYgKCFmX25vYWN0KQorCQl0ZHVmIHw9IHRkdWZfd3JpdGUgfCB0ZHVmX3dyaXRlaWZlbXB0eTsKKwl1ZiA9IHRyaWdkZWZfdXBkYXRlX3N0YXJ0KHRkdWYpOworCWlmICh1ZiA+PSAwKSB7CisJCXRyaWdkZWZfcGFyc2UoKTsKKwkJaWYgKCFkb25lX3RyaWcpCisJCQl0cmlnZGVmX3VwZGF0ZV9wcmludGYoIiVzICVzXG4iLCBhY3RpdmF0ZSwgYnlwYWNrYWdlKTsKKwkJdHJpZ2RlZl9wcm9jZXNzX2RvbmUoKTsKKwl9CisKKwlzdGFuZGFyZF9zaHV0ZG93bigpOworCisJcmV0dXJuIDA7Cit9CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3NyYy90cmlncHJvYy5jIGIvZHBrZy0xLjE2LjEuMS9zcmMvdHJpZ3Byb2MuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xNTRhMmYzCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zcmMvdHJpZ3Byb2MuYwpAQCAtMCwwICsxLDQzMiBAQAorLyoKKyAqIGRwa2cgLSBtYWluIHByb2dyYW0gZm9yIHBhY2thZ2UgbWFuYWdlbWVudAorICogdHJpZ3Byb2MuYyAtIHRyaWdnZXIgcHJvY2Vzc2luZworICoKKyAqIENvcHlyaWdodCDCqSAyMDA3IENhbm9uaWNhbCBMdGQKKyAqIHdyaXR0ZW4gYnkgSWFuIEphY2tzb24gPGlhbkBjaGlhcmsuZ3JlZW5lbmQub3JnLnVrPgorICoKKyAqIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaW5jbHVkZSA8Y29uZmlnLmg+CisjaW5jbHVkZSA8Y29tcGF0Lmg+CisKKyNpbmNsdWRlIDxzeXMvZmNudGwuaD4KKyNpbmNsdWRlIDxzeXMvc3RhdC5oPgorCisjaW5jbHVkZSA8YXNzZXJ0Lmg+CisjaW5jbHVkZSA8c3RkbGliLmg+CisKKyNpbmNsdWRlIDxkcGtnL2kxOG4uaD4KKyNpbmNsdWRlIDxkcGtnL2Rwa2cuaD4KKyNpbmNsdWRlIDxkcGtnL2Rwa2ctZGIuaD4KKyNpbmNsdWRlIDxkcGtnL3BrZy1xdWV1ZS5oPgorI2luY2x1ZGUgPGRwa2cvdHJpZ2xpYi5oPgorCisjaW5jbHVkZSAibWFpbi5oIgorI2luY2x1ZGUgImZpbGVzZGIuaCIKKworLyoKKyAqIFRyaWdnZXIgcHJvY2Vzc2luZyBhbGdvcml0aG1zOgorICoKKyAqCisgKiBUaGVyZSBpcyBhIHNlcGFyYXRlIHF1ZXVlICjigJhkZWZlcnJlZCB0cmlncHJvYyBsaXN04oCZKSBmb3IgdHJpZ2dlcnMKKyAqIOKAmHJlbGV2YW504oCZIHRvIHdoYXQgd2UganVzdCBkaWQ7IHdoZW4gd2UgZmluZCBzb21ldGhpbmcgdHJpZ2dlcmVkIOKAmG5vd+KAmQorICogd2UgYWRkIGl0IHRvIHRoYXQgcXVldWUgKHVubGVzcyAtLW5vLXRyaWdnZXJzKS4KKyAqCisgKgorICogV2Ugd2FudCB0byBwcmVmZXIgY29uZmlndXJpbmcgcGFja2FnZXMgd2hlcmUgcG9zc2libGUgdG8gZG9pbmcKKyAqIHRyaWdnZXIgcHJvY2Vzc2luZywgYnV0IHdlIHdhbnQgdG8gcHJlZmVyIHRyaWdnZXIgcHJvY2Vzc2luZyB0bworICogY3ljbGUtYnJlYWtpbmcgYW5kIGRlcGVuZGVuY3kgZm9yY2luZy4gVGhpcyBpcyBhY2hpZXZlZCBhcworICogZm9sbG93czoKKyAqCisgKiBFYWNoIHRpbWUgZHVyaW5nIGNvbmZpZ3VyZSBwcm9jZXNzaW5nIHdoZXJlIGEgcGFja2FnZSBEIGlzIGJsb2NrZWQgYnkKKyAqIG9ubHkgKGllIERlcGVuZHMgdW5zYXRpc2ZpZWQgYnV0IHdvdWxkIGJlIHNhdGlzZmllZCBieSkgYSB0LWF3YWl0ZXIgVworICogd2UgbWFrZSBhIG5vdGUgb2YgKG9uZSBvZikgVydzIHQtcGVuZGluZywgVC4gKE9ubHkgdGhlIGxhc3Qgc3VjaCBULikKKyAqIChJZiAtLW5vLXRyaWdnZXJzIGFuZCBub25lbXB0eSBhcmd1bWVudCBsaXN0IGFuZCBwYWNrYWdlIGlzbid0IGluCisgKiBhcmd1bWVudCBsaXN0IHRoZW4gd2UgZG9uJ3QgZG8gdGhpcy4pCisgKgorICogRWFjaCB0aW1lIGluIHBhY2thZ2VzLmMgd2hlcmUgd2UgaW5jcmVtZW50IGRlcGVuZHRyeSwgd2UgaW5zdGVhZCBzZWUKKyAqIGlmIHdlIGhhdmUgZW5jb3VudGVyZWQgc3VjaCBhIHQtcGVuZGluZyBULiBJZiB3ZSBkbywgd2UgdHJpZ3Byb2MgVAorICogaW5zdGVhZCBvZiBpbmNyZW1lbnRpbmcgZGVwZW5kdHJ5IGFuZCB0aGlzIGNvdW50cyBhcyBoYXZpbmcgZG9uZQorICogc29tZXRoaW5nIHNvIHdlIHJlc2V0IHNpbmNlbm90aGluZy4KKyAqCisgKgorICogRm9yIC0tdHJpZ2dlcnMtb25seSBhbmQgLS1jb25maWd1cmUsIHdlIGdvIHRocm91Z2ggZWFjaCB0aGluZyBpbiB0aGUKKyAqIGFyZ3VtZW50IHF1ZXVlICh0aGUgYWRkX3RvX3F1ZXVlIHF1ZXVlKSBhbmQgY2hlY2sgd2hhdCBpdHMgc3RhdGUgaXMKKyAqIGFuZCBpZiBhcHByb3ByaWF0ZSB3ZSB0cmlncHJvYyBpdC4gSWYgd2UgZGlkbid0IGhhdmUgYSBxdWV1ZSAob3IgaGFkCisgKiBqdXN0IC0tcGVuZGluZykgd2Ugc2VhcmNoIGFsbCB0cmlnZ2Vycy1wZW5kaW5nIHBhY2thZ2VzIGFuZCBhZGQgdGhlbQorICogdG8gdGhlIGRlZmVycmVkIHRyaWdwcm9jIGxpc3QuCisgKgorICoKKyAqIEJlZm9yZSBxdWl0dGluZyBmcm9tIG1vc3Qgb3BlcmF0aW9ucywgd2UgdHJpZ3Byb2MgZWFjaCBwYWNrYWdlIGluIHRoZQorICogZGVmZXJyZWQgdHJpZ3Byb2MgbGlzdC4gVGhpcyBtYXkgKGlmIG5vdCAtLW5vLXRyaWdnZXJzKSBvZiBjb3Vyc2UgYWRkCisgKiBuZXcgdGhpbmdzIHRvIHRoZSBkZWZlcnJlZCB0cmlncHJvYyBsaXN0LgorICoKKyAqCisgKiBOb3RlIHRoYXQg4oCYd2UgdHJpZ3Byb2MgVOKAmSBtdXN0IGludm9sdmUgdHJpZ2dlciBjeWNsZSBkZXRlY3Rpb24gYW5kCisgKiBhbHNvIGF1dG9tYXRpYyBzZXR0aW5nIG9mIHQtYXdhaXRlcnMgdG8gdC1wZW5kaW5nIG9yIGluc3RhbGxlZC4gSW4KKyAqIHBhcnRpY3VsYXIsIHdlIGRvIGN5Y2xlIGRldGVjdGlvbiBldmVuIGZvciB0cmlnZ2VyIHByb2Nlc3NpbmcgaW4gdGhlCisgKiBjb25maWd1cmUgZGVwZW5kdHJ5IGxvb3AgKGFuZCBpdCBpcyBPSyB0byBkbyBpdCBmb3IgZXhwbGljaXRseQorICogc3BlY2lmaWVkIHBhY2thZ2VzIGZyb20gdGhlIGNvbW1hbmQgbGluZSBhcmd1bWVudHM7IGR1cGxpY2F0ZXMgYXJlCisgKiByZW1vdmVkIGJ5IHBhY2thZ2VzLmM6cHJvY2Vzc19xdWV1ZSkuCisgKi8KKworLyo9PT09PT09PT09IERlZmVycmVkIHRyaWdnZXIgcXVldWUuID09PT09PT09PT0qLworCitzdGF0aWMgc3RydWN0IHBrZ19xdWV1ZSBkZWZlcnJlZCA9IFBLR19RVUVVRV9JTklUOworCitzdGF0aWMgdm9pZAordHJpZ3Byb2NfZW5xdWV1ZV9kZWZlcnJlZChzdHJ1Y3QgcGtnaW5mbyAqcGVuZCkKK3sKKwlpZiAoZl90cmlnZ2VycyA8IDApCisJCXJldHVybjsKKwllbnN1cmVfcGFja2FnZV9jbGllbnRkYXRhKHBlbmQpOworCWlmIChwZW5kLT5jbGllbnRkYXRhLT50cmlncHJvY2RlZmVycmVkKQorCQlyZXR1cm47CisJcGVuZC0+Y2xpZW50ZGF0YS0+dHJpZ3Byb2NkZWZlcnJlZCA9IHBrZ19xdWV1ZV9wdXNoKCZkZWZlcnJlZCwgcGVuZCk7CisJZGVidWcoZGJnX3RyaWdnZXJzLCAidHJpZ3Byb2NfZW5xdWV1ZV9kZWZlcnJlZCBwZW5kPSVzIiwgcGVuZC0+bmFtZSk7Cit9CisKK3ZvaWQKK3RyaWdwcm9jX3J1bl9kZWZlcnJlZCh2b2lkKQoreworCWptcF9idWYgZWpidWY7CisKKwlkZWJ1ZyhkYmdfdHJpZ2dlcnMsICJ0cmlncHJvY19ydW5fZGVmZXJyZWQiKTsKKwl3aGlsZSAoIXBrZ19xdWV1ZV9pc19lbXB0eSgmZGVmZXJyZWQpKSB7CisJCXN0cnVjdCBwa2dpbmZvICpwa2c7CisKKwkJcGtnICA9IHBrZ19xdWV1ZV9wb3AoJmRlZmVycmVkKTsKKwkJaWYgKCFwa2cpCisJCQljb250aW51ZTsKKworCQlpZiAoc2V0am1wKGVqYnVmKSkgeworCQkJcG9wX2Vycm9yX2NvbnRleHQoZWhmbGFnX2JvbWJvdXQpOworCQkJY29udGludWU7CisJCX0KKwkJcHVzaF9lcnJvcl9jb250ZXh0X2p1bXAoJmVqYnVmLCBwcmludF9lcnJvcl9wZXJwYWNrYWdlLAorCQkgICAgICAgICAgICAgICAgICAgICAgICBwa2ctPm5hbWUpOworCisJCXBrZy0+Y2xpZW50ZGF0YS0+dHJpZ3Byb2NkZWZlcnJlZCA9IE5VTEw7CisJCXRyaWdwcm9jKHBrZyk7CisKKwkJcG9wX2Vycm9yX2NvbnRleHQoZWhmbGFnX25vcm1hbHRpZHkpOworCX0KK30KKworLyoKKyAqIENhbGxlZCBieSBtb2RzdGF0ZGJfbm90ZS4KKyAqLwordm9pZAordHJpZ19hY3RpdmF0ZV9wYWNrYWdlcHJvY2Vzc2luZyhzdHJ1Y3QgcGtnaW5mbyAqcGtnKQoreworCWRlYnVnKGRiZ190cmlnZ2Vyc2RldGFpbCwgInRyaWdwcm9jX2FjdGl2YXRlX3BhY2thZ2Vwcm9jZXNzaW5nIHBrZz0lcyIsCisJICAgICAgcGtnLT5uYW1lKTsKKworCXRyaWdfcGFyc2VfY2kocGtnYWRtaW5maWxlKHBrZywgVFJJR0dFUlNDSUZJTEUpLCBOVUxMLAorCSAgICAgICAgICAgICAgdHJpZ19jaWNiX3N0YXR1c2NoYW5nZV9hY3RpdmF0ZSwgcGtnKTsKK30KKworLyo9PT09PT09PT09IEFjdHVhbCB0cmlnZ2VyIHByb2Nlc3NpbmcuID09PT09PT09PT0qLworCitzdHJ1Y3QgdHJpZ2N5Y2xlbm9kZSB7CisJc3RydWN0IHRyaWdjeWNsZW5vZGUgKm5leHQ7CisJc3RydWN0IHRyaWdjeWNsZXBlcnBrZyAqcGtnczsKKwlzdHJ1Y3QgcGtnaW5mbyAqdGhlbl9wcm9jZXNzZWQ7Cit9OworCitzdHJ1Y3QgdHJpZ2N5Y2xlcGVycGtnIHsKKwlzdHJ1Y3QgdHJpZ2N5Y2xlcGVycGtnICpuZXh0OworCXN0cnVjdCBwa2dpbmZvICpwa2c7CisJc3RydWN0IHRyaWdwZW5kICp0aGVuX3RyaWdzOworfTsKKworc3RhdGljIGJvb2wgdG9ydG9pc2VfYWR2YW5jZTsKK3N0YXRpYyBzdHJ1Y3QgdHJpZ2N5Y2xlbm9kZSAqdG9ydG9pc2UsICpoYXJlOworCit2b2lkCit0cmlncHJvY19yZXNldF9jeWNsZSh2b2lkKQoreworCXRvcnRvaXNlX2FkdmFuY2UgPSBmYWxzZTsKKwl0b3J0b2lzZSA9IGhhcmUgPSBOVUxMOworfQorCisvKgorICogUmV0dXJucyBwYWNrYWdlIHdlJ3JlIHRvIGdpdmUgdXAgb24uCisgKi8KK3N0YXRpYyBzdHJ1Y3QgcGtnaW5mbyAqCitjaGVja190cmlnZ2VyX2N5Y2xlKHN0cnVjdCBwa2dpbmZvICpwcm9jZXNzaW5nX25vdykKK3sKKwlzdHJ1Y3QgdHJpZ2N5Y2xlbm9kZSAqdGNuOworCXN0cnVjdCB0cmlnY3ljbGVwZXJwa2cgKnRjcHAsICp0b3J0b2lzZV9wa2c7CisJc3RydWN0IHRyaWdwZW5kICpoYXJlX3RyaWcsICp0b3J0b2lzZV90cmlnOworCXN0cnVjdCBwa2dpdGVyYXRvciAqaXQ7CisJc3RydWN0IHBrZ2luZm8gKnBrZywgKmdpdmV1cDsKKwljb25zdCBjaGFyICpzZXA7CisKKwlkZWJ1ZyhkYmdfdHJpZ2dlcnMsICJjaGVja190cmlnZ2Vyc19jeWNsZSBwbm93PSVzIiwgcHJvY2Vzc2luZ19ub3ctPm5hbWUpOworCisJdGNuID0gbmZtYWxsb2Moc2l6ZW9mKCp0Y24pKTsKKwl0Y24tPnBrZ3MgPSBOVUxMOworCXRjbi0+dGhlbl9wcm9jZXNzZWQgPSBwcm9jZXNzaW5nX25vdzsKKworCWl0ID0gcGtnX2RiX2l0ZXJfbmV3KCk7CisJd2hpbGUgKChwa2cgPSBwa2dfZGJfaXRlcl9uZXh0KGl0KSkpIHsKKwkJaWYgKCFwa2ctPnRyaWdwZW5kX2hlYWQpCisJCQljb250aW51ZTsKKwkJdGNwcCA9IG5mbWFsbG9jKHNpemVvZigqdGNwcCkpOworCQl0Y3BwLT5wa2cgPSBwa2c7CisJCXRjcHAtPnRoZW5fdHJpZ3MgPSBwa2ctPnRyaWdwZW5kX2hlYWQ7CisJCXRjcHAtPm5leHQgPSB0Y24tPnBrZ3M7CisJCXRjbi0+cGtncyA9IHRjcHA7CisJfQorCXBrZ19kYl9pdGVyX2ZyZWUoaXQpOworCWlmICghaGFyZSkgeworCQlkZWJ1ZyhkYmdfdHJpZ2dlcnNkZXRhaWwsICJjaGVja190cmlnZ2Vyc19jeWNsZSBwbm93PSVzIGZpcnN0IiwKKwkJICAgICAgcHJvY2Vzc2luZ19ub3ctPm5hbWUpOworCQl0Y24tPm5leHQgPSBOVUxMOworCQloYXJlID0gdG9ydG9pc2UgPSB0Y247CisJCXJldHVybiBOVUxMOworCX0KKworCXRjbi0+bmV4dCA9IE5VTEw7CisJaGFyZS0+bmV4dCA9IHRjbjsKKwloYXJlID0gdGNuOworCWlmICh0b3J0b2lzZV9hZHZhbmNlKQorCQl0b3J0b2lzZSA9IHRvcnRvaXNlLT5uZXh0OworCXRvcnRvaXNlX2FkdmFuY2UgPSAhdG9ydG9pc2VfYWR2YW5jZTsKKworCS8qIE5vdyB3ZSBjb21wYXJlIGhhcmUgdG8gdG9ydG9pc2UuCisJICogV2Ugd2FudCB0byBmaW5kIGEgdHJpZ2dlciBwZW5kaW5nIGluIHRvcnRvaXNlIHdoaWNoIGlzIG5vdCBpbiBoYXJlCisJICogaWYgd2UgZmluZCBzdWNoIGEgdGhpbmcgd2UgaGF2ZSBwcm92ZWQgdGhhdCBoYXJlIGlzbid0IGEgc3VwZXJzZXQKKwkgKiBvZiB0b3J0b2lzZSBhbmQgc28gdGhhdCB3ZSBoYXZlbid0IGZvdW5kIGEgbG9vcCAoeWV0KS4gKi8KKwlmb3IgKHRvcnRvaXNlX3BrZyA9IHRvcnRvaXNlLT5wa2dzOworCSAgICAgdG9ydG9pc2VfcGtnOworCSAgICAgdG9ydG9pc2VfcGtnID0gdG9ydG9pc2VfcGtnLT5uZXh0KSB7CisJCWRlYnVnKGRiZ190cmlnZ2Vyc2RldGFpbCwgImNoZWNrX3RyaWdnZXJzX2N5Y2xlIHBub3c9JXMgdG9ydG9pc2U9JXMiLAorCQkgICAgICBwcm9jZXNzaW5nX25vdy0+bmFtZSwgdG9ydG9pc2VfcGtnLT5wa2ctPm5hbWUpOworCQlmb3IgKHRvcnRvaXNlX3RyaWcgPSB0b3J0b2lzZV9wa2ctPnRoZW5fdHJpZ3M7CisJCSAgICAgdG9ydG9pc2VfdHJpZzsKKwkJICAgICB0b3J0b2lzZV90cmlnID0gdG9ydG9pc2VfdHJpZy0+bmV4dCkgeworCQkJZGVidWcoZGJnX3RyaWdnZXJzZGV0YWlsLAorCQkJICAgICAgImNoZWNrX3RyaWdnZXJzX2N5Y2xlIHBub3c9JXMgdG9ydG9pc2U9JXMiCisJCQkgICAgICAiIHRvcnRvaXNldHJpZz0lcyIsIHByb2Nlc3Npbmdfbm93LT5uYW1lLAorCQkJICAgICAgdG9ydG9pc2VfcGtnLT5wa2ctPm5hbWUsIHRvcnRvaXNlX3RyaWctPm5hbWUpOworCQkJLyogaGFyZSBpcyBub3cgc28gd2UgY2FuIGp1c3QgbG9vayB1cCBpbiB0aGUgYWN0dWFsCisJCQkgKiBkYXRhLiAqLworCQkJZm9yIChoYXJlX3RyaWcgPSB0b3J0b2lzZV9wa2ctPnBrZy0+dHJpZ3BlbmRfaGVhZDsKKwkJCSAgICAgaGFyZV90cmlnOworCQkJICAgICBoYXJlX3RyaWcgPSBoYXJlX3RyaWctPm5leHQpIHsKKwkJCQlkZWJ1ZyhkYmdfdHJpZ2dlcnNzdHVwaWQsCisJCQkJICAgICAgImNoZWNrX3RyaWdnZXJzX2N5Y2xlIHBub3c9JXMgdG9ydG9pc2U9JXMiCisJCQkJICAgICAgIiB0b3J0b2lzZXRyaWc9JXMgaGFyZXRyaWc9JXMiLAorCQkJCSAgICAgIHByb2Nlc3Npbmdfbm93LT5uYW1lLCB0b3J0b2lzZV9wa2ctPnBrZy0+bmFtZSwKKwkJCQkgICAgICB0b3J0b2lzZV90cmlnLT5uYW1lLCBoYXJlX3RyaWctPm5hbWUpOworCQkJCWlmICghc3RyY21wKGhhcmVfdHJpZy0+bmFtZSwgdG9ydG9pc2VfdHJpZy0+bmFtZSkpCisJCQkJCWdvdG8gZm91bmRfaW5faGFyZTsKKwkJCX0KKwkJCS8qIE5vdCBmb3VuZCBpbiBoYXJlLCB5YXkhICovCisJCQlkZWJ1ZyhkYmdfdHJpZ2dlcnNkZXRhaWwsCisJCQkgICAgICAiY2hlY2tfdHJpZ2dlcnNfY3ljbGUgcG5vdz0lcyB0b3J0b2lzZT0lcyBPSyIsCisJCQkgICAgICBwcm9jZXNzaW5nX25vdy0+bmFtZSwgdG9ydG9pc2VfcGtnLT5wa2ctPm5hbWUpOworCQkJcmV0dXJuIE5VTEw7CisJCQlmb3VuZF9pbl9oYXJlOjsKKwkJfQorCX0KKwkvKiBPaCBkZWFyLiBoYXJlIGlzIGEgc3VwZXJzZXQgb2YgdG9ydG9pc2UuIFdlIGFyZSBtYWtpbmcgbm8KKwkgKiBwcm9ncmVzcy4gKi8KKwlmcHJpbnRmKHN0ZGVyciwgXygiJXM6IGN5Y2xlIGZvdW5kIHdoaWxlIHByb2Nlc3NpbmcgdHJpZ2dlcnM6XG4gY2hhaW4gb2YiCisJICAgICAgICAiIHBhY2thZ2VzIHdob3NlIHRyaWdnZXJzIGFyZSBvciBtYXkgYmUgcmVzcG9uc2libGU6XG4iKSwKKwkgICAgICAgIGRwa2dfZ2V0X3Byb2duYW1lKCkpOworCXNlcCA9ICIgICI7CisJZm9yICh0Y24gPSB0b3J0b2lzZTsgdGNuOyB0Y24gPSB0Y24tPm5leHQpIHsKKwkJZnByaW50ZihzdGRlcnIsICIlcyVzIiwgc2VwLCB0Y24tPnRoZW5fcHJvY2Vzc2VkLT5uYW1lKTsKKwkJc2VwID0gIiAtPiAiOworCX0KKwlmcHJpbnRmKHN0ZGVyciwgXygiXG4iICIgcGFja2FnZXMnIHBlbmRpbmcgdHJpZ2dlcnMgd2hpY2ggYXJlIgorCSAgICAgICAgICAgICAgICAgICIgb3IgbWF5IGJlIHVucmVzb2x2YWJsZTpcbiIpKTsKKwlmb3IgKHRvcnRvaXNlX3BrZyA9IHRvcnRvaXNlLT5wa2dzOworCSAgICAgdG9ydG9pc2VfcGtnOworCSAgICAgdG9ydG9pc2VfcGtnID0gdG9ydG9pc2VfcGtnLT5uZXh0KSB7CisJCWZwcmludGYoc3RkZXJyLCAiICAlcyIsIHRvcnRvaXNlX3BrZy0+cGtnLT5uYW1lKTsKKwkJc2VwID0gIjogIjsKKwkJZm9yICh0b3J0b2lzZV90cmlnID0gdG9ydG9pc2VfcGtnLT50aGVuX3RyaWdzOworCQkgICAgIHRvcnRvaXNlX3RyaWc7CisJCSAgICAgdG9ydG9pc2VfdHJpZyA9IHRvcnRvaXNlX3RyaWctPm5leHQpIHsKKwkJCWZwcmludGYoc3RkZXJyLCAiJXMlcyIsIHNlcCwgdG9ydG9pc2VfdHJpZy0+bmFtZSk7CisJCX0KKwkJZnByaW50ZihzdGRlcnIsICJcbiIpOworCX0KKworCS8qIFdlIGdpdmUgdXAgb24gdGhlIF9lYXJsaWVzdF8gcGFja2FnZSBpbnZvbHZlZC4gKi8KKwlnaXZldXAgPSB0b3J0b2lzZS0+cGtncy0+cGtnOworCWRlYnVnKGRiZ190cmlnZ2VycywgImNoZWNrX3RyaWdnZXJzX2N5Y2xlIHBub3c9JXMgZ2l2ZXVwPSVwIiwKKwkgICAgICBwcm9jZXNzaW5nX25vdy0+bmFtZSwgZ2l2ZXVwLT5uYW1lKTsKKwlhc3NlcnQoZ2l2ZXVwLT5zdGF0dXMgPT0gc3RhdF90cmlnZ2Vyc2F3YWl0ZWQgfHwKKwkgICAgICAgZ2l2ZXVwLT5zdGF0dXMgPT0gc3RhdF90cmlnZ2Vyc3BlbmRpbmcpOworCWdpdmV1cC0+c3RhdHVzID0gc3RhdF9oYWxmY29uZmlndXJlZDsKKwltb2RzdGF0ZGJfbm90ZShnaXZldXApOworCXByaW50X2Vycm9yX3BlcnBhY2thZ2UoXygidHJpZ2dlcnMgbG9vcGluZywgYWJhbmRvbmVkIiksIGdpdmV1cC0+bmFtZSk7CisKKwlyZXR1cm4gZ2l2ZXVwOworfQorCisvKgorICogRG9lcyBjeWNsZSBjaGVja2luZy4gRG9lc24ndCBtaW5kIGlmIHBrZyBoYXMgbm8gdHJpZ2dlcnMgcGVuZGluZyAtIGluCisgKiB0aGF0IGNhc2UgZG9lcyBub3RoaW5nIGJ1dCBmaXggdXAgYW55IHN0YWxlIGF3YWl0ZXJzLgorICovCit2b2lkCit0cmlncHJvYyhzdHJ1Y3QgcGtnaW5mbyAqcGtnKQoreworCXN0YXRpYyBzdHJ1Y3QgdmFyYnVmIG5hbWVzYXJnOworCisJc3RydWN0IHRyaWdwZW5kICp0cDsKKwlzdHJ1Y3QgcGtnaW5mbyAqZ2F2ZXVwOworCisJZGVidWcoZGJnX3RyaWdnZXJzLCAidHJpZ3Byb2MgJXMiLCBwa2ctPm5hbWUpOworCisJaWYgKHBrZy0+Y2xpZW50ZGF0YS0+dHJpZ3Byb2NkZWZlcnJlZCkKKwkJcGtnLT5jbGllbnRkYXRhLT50cmlncHJvY2RlZmVycmVkLT5wa2cgPSBOVUxMOworCXBrZy0+Y2xpZW50ZGF0YS0+dHJpZ3Byb2NkZWZlcnJlZCA9IE5VTEw7CisKKwlpZiAocGtnLT50cmlncGVuZF9oZWFkKSB7CisJCWFzc2VydChwa2ctPnN0YXR1cyA9PSBzdGF0X3RyaWdnZXJzcGVuZGluZyB8fAorCQkgICAgICAgcGtnLT5zdGF0dXMgPT0gc3RhdF90cmlnZ2Vyc2F3YWl0ZWQpOworCisJCWdhdmV1cCA9IGNoZWNrX3RyaWdnZXJfY3ljbGUocGtnKTsKKwkJaWYgKGdhdmV1cCA9PSBwa2cpCisJCQlyZXR1cm47CisKKwkJcHJpbnRmKF8oIlByb2Nlc3NpbmcgdHJpZ2dlcnMgZm9yICVzIC4uLlxuIiksIHBrZy0+bmFtZSk7CisJCWxvZ19hY3Rpb24oInRyaWdwcm9jIiwgcGtnKTsKKworCQl2YXJidWZfcmVzZXQoJm5hbWVzYXJnKTsKKwkJZm9yICh0cCA9IHBrZy0+dHJpZ3BlbmRfaGVhZDsgdHA7IHRwID0gdHAtPm5leHQpIHsKKwkJCXZhcmJ1Zl9hZGRfY2hhcigmbmFtZXNhcmcsICcgJyk7CisJCQl2YXJidWZfYWRkX3N0cigmbmFtZXNhcmcsIHRwLT5uYW1lKTsKKwkJfQorCQl2YXJidWZfZW5kX3N0cigmbmFtZXNhcmcpOworCisJCS8qIFNldHRpbmcgdGhlIHN0YXR1cyB0byBoYWxmLWNvbmZpZ3VyZWQKKwkJICogY2F1c2VzIG1vZHN0YXRkYl9ub3RlIHRvIGNsZWFyIHBlbmRpbmcgdHJpZ2dlcnMuICovCisJCXBrZy0+c3RhdHVzID0gc3RhdF9oYWxmY29uZmlndXJlZDsKKwkJbW9kc3RhdGRiX25vdGUocGtnKTsKKworCQlpZiAoIWZfbm9hY3QpIHsKKwkJCXNpbmNlbm90aGluZyA9IDA7CisJCQltYWludGFpbmVyX3NjcmlwdF9wb3N0aW5zdChwa2csICJ0cmlnZ2VyZWQiLAorCQkJICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZXNhcmcuYnVmICsgMSwgTlVMTCk7CisJCX0KKworCQkvKiBUaGlzIGlzIHRvIGNvcGUgaWYgdGhlIHBhY2thZ2UgdHJpZ2dlcnMgaXRzZWxmOiAqLworCQlwa2ctPnN0YXR1cyA9IHBrZy0+dHJpZ2F3LmhlYWQgPyBzdGF0X3RyaWdnZXJzYXdhaXRlZCA6CisJCSAgICAgICAgICAgICAgcGtnLT50cmlncGVuZF9oZWFkID8gc3RhdF90cmlnZ2Vyc3BlbmRpbmcgOgorCQkgICAgICAgICAgICAgIHN0YXRfaW5zdGFsbGVkOworCisJCXBvc3RfcG9zdGluc3RfdGFza3NfY29yZShwa2cpOworCX0gZWxzZSB7CisJCS8qIEluIG90aGVyIGJyYW5jaCBpcyBkb25lIGJ5IG1vZHN0YXRkYl9ub3RlLiAqLworCQl0cmlnX2NsZWFyX2F3YWl0ZXJzKHBrZyk7CisJfQorfQorCisvKj09PT09PT09PT0gVHJhbnNpdGlvbmFsIGdsb2JhbCBhY3RpdmF0aW9uLiA9PT09PT09PT09Ki8KKworc3RhdGljIHZvaWQKK3RyYW5zaXRpb25hbF9pbnRlcmVzdF9jYWxsYmFja19ybyhjb25zdCBjaGFyICp0cmlnLCB2b2lkICp1c2VyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVudW0gdHJpZ19vcHRpb25zIG9wdHMpCit7CisJc3RydWN0IHBrZ2luZm8gKnBlbmQgPSB1c2VyOworCisJZGVidWcoZGJnX3RyaWdnZXJzZGV0YWlsLAorCSAgICAgICJ0cmlnX3RyYW5zaXRpb25hbF9pbnRlcmVzdF9jYWxsYmFjayB0cmlnPSVzIHBlbmQ9JXMiLAorCSAgICAgIHRyaWcsIHBlbmQtPm5hbWUpOworCWlmIChwZW5kLT5zdGF0dXMgPj0gc3RhdF90cmlnZ2Vyc2F3YWl0ZWQpCisJCXRyaWdfbm90ZV9wZW5kKHBlbmQsIG5mc3Ryc2F2ZSh0cmlnKSk7Cit9CisKK3N0YXRpYyB2b2lkCit0cmFuc2l0aW9uYWxfaW50ZXJlc3RfY2FsbGJhY2soY29uc3QgY2hhciAqdHJpZywgdm9pZCAqdXNlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbnVtIHRyaWdfb3B0aW9ucyBvcHRzKQoreworCXN0cnVjdCBwa2dpbmZvICpwZW5kID0gdXNlcjsKKworCXRyaWdfY2ljYl9pbnRlcmVzdF9hZGQodHJpZywgcGVuZCwgb3B0cyk7CisJdHJhbnNpdGlvbmFsX2ludGVyZXN0X2NhbGxiYWNrX3JvKHRyaWcsIHVzZXIsIG9wdHMpOworfQorCisvKgorICogY3N0YXR1cyBtaWdodCBiZSBtc2RicndfcmVhZG9ubHkgaWYgd2UncmUgaW4gLS1uby1hY3QgbW9kZSwgaW4gd2hpY2gKKyAqIGNhc2Ugd2UgZG9uJ3Qgd3JpdGUgb3V0IGFsbCBvZiB0aGUgaW50ZXJlc3QgZmlsZXMgZXRjLiBidXQgd2UgZG8KKyAqIGludmVudCBhbGwgb2YgdGhlIGFjdGl2YXRpb25zIGZvciBvdXIgb3duIGJlbmVmaXQuCisgKi8KK3N0YXRpYyB2b2lkCit0cmlnX3RyYW5zaXRpb25hbF9hY3RpdmF0ZShlbnVtIG1vZHN0YXRkYl9ydyBjc3RhdHVzKQoreworCXN0cnVjdCBwa2dpdGVyYXRvciAqaXQ7CisJc3RydWN0IHBrZ2luZm8gKnBrZzsKKworCWl0ID0gcGtnX2RiX2l0ZXJfbmV3KCk7CisJd2hpbGUgKChwa2cgPSBwa2dfZGJfaXRlcl9uZXh0KGl0KSkpIHsKKwkJaWYgKHBrZy0+c3RhdHVzIDw9IHN0YXRfaGFsZmluc3RhbGxlZCkKKwkJCWNvbnRpbnVlOworCQlkZWJ1ZyhkYmdfdHJpZ2dlcnNkZXRhaWwsICJ0cmlnX3RyYW5zaXRpb25hbF9hY3RpdmF0ZSAlcyAlcyIsCisJCSAgICAgIHBrZy0+bmFtZSwgc3RhdHVzaW5mb3NbcGtnLT5zdGF0dXNdLm5hbWUpOworCQlwa2ctPnRyaWdwZW5kX2hlYWQgPSBOVUxMOworCQl0cmlnX3BhcnNlX2NpKHBrZ2FkbWluZmlsZShwa2csIFRSSUdHRVJTQ0lGSUxFKSwKKwkJICAgICAgICAgICAgICBjc3RhdHVzID49IG1zZGJyd193cml0ZSA/CisJCSAgICAgICAgICAgICAgdHJhbnNpdGlvbmFsX2ludGVyZXN0X2NhbGxiYWNrIDoKKwkJICAgICAgICAgICAgICB0cmFuc2l0aW9uYWxfaW50ZXJlc3RfY2FsbGJhY2tfcm8sIE5VTEwsIHBrZyk7CisJCS8qIEVuc3VyZSB3ZSdyZSBub3QgY3JlYXRpbmcgaW5jb2hlcmVudCBkYXRhIHRoYXQgY2FuJ3QKKwkJICogYmUgd3JpdHRlbiBkb3duLiBUaGlzIHNob3VsZCBuZXZlciBoYXBwZW4gaW4gdGhlb3J5IGJ1dAorCQkgKiBjYW4gaGFwcGVuIGlmIHlvdSByZXN0b3JlIGFuIG9sZCBzdGF0dXMgZmlsZSB0aGF0IGlzCisJCSAqIG5vdCBpbiBzeW5jIHdpdGggdGhlIGluZm9kYiBmaWxlcy4gKi8KKwkJaWYgKHBrZy0+c3RhdHVzIDwgc3RhdF90cmlnZ2Vyc2F3YWl0ZWQpCisJCQljb250aW51ZTsKKwkJcGtnLT5zdGF0dXMgPSBwa2ctPnRyaWdhdy5oZWFkID8gc3RhdF90cmlnZ2Vyc2F3YWl0ZWQgOgorCQkgICAgICAgICAgICAgIHBrZy0+dHJpZ3BlbmRfaGVhZCA/IHN0YXRfdHJpZ2dlcnNwZW5kaW5nIDoKKwkJICAgICAgICAgICAgICBzdGF0X2luc3RhbGxlZDsKKwl9CisJcGtnX2RiX2l0ZXJfZnJlZShpdCk7CisKKwlpZiAoY3N0YXR1cyA+PSBtc2Ricndfd3JpdGUpIHsKKwkJbW9kc3RhdGRiX2NoZWNrcG9pbnQoKTsKKwkJdHJpZ19maWxlX2ludGVyZXN0c19zYXZlKCk7CisJfQorfQorCisvKj09PT09PT09PT0gSG9vayBzZXR1cC4gPT09PT09PT09PSovCisKK3N0YXRpYyBzdHJ1Y3QgZmlsZW5hbWVub2RlICoKK3RoX3Byb3Blcl9ubl9maW5kKGNvbnN0IGNoYXIgKm5hbWUsIGJvb2wgbm9uZXcpCit7CisJcmV0dXJuIGZpbmRuYW1lbm9kZShuYW1lLCBub25ldyA/IGZubl9ub25ldyA6IDApOworfQorCitUUklHSE9PS1NfREVGSU5FX05BTUVOT0RFX0FDQ0VTU09SUworCitzdGF0aWMgY29uc3Qgc3RydWN0IHRyaWdfaG9va3MgdHJpZ19vdXJfaG9va3MgPSB7CisJLmVucXVldWVfZGVmZXJyZWQgPSB0cmlncHJvY19lbnF1ZXVlX2RlZmVycmVkLAorCS50cmFuc2l0aW9uYWxfYWN0aXZhdGUgPSB0cmlnX3RyYW5zaXRpb25hbF9hY3RpdmF0ZSwKKwkubmFtZW5vZGVfZmluZCA9IHRoX3Byb3Blcl9ubl9maW5kLAorCS5uYW1lbm9kZV9pbnRlcmVzdGVkID0gdGhfbm5faW50ZXJlc3RlZCwKKwkubmFtZW5vZGVfbmFtZSA9IHRoX25uX25hbWUsCit9OworCit2b2lkCit0cmlncHJvY19pbnN0YWxsX2hvb2tzKHZvaWQpCit7CisJdHJpZ19vdmVycmlkZV9ob29rcygmdHJpZ19vdXJfaG9va3MpOworfQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS9zcmMvdXBkYXRlLmMgYi9kcGtnLTEuMTYuMS4xL3NyYy91cGRhdGUuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xMWQwNjIzCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS9zcmMvdXBkYXRlLmMKQEAgLTAsMCArMSwxMTkgQEAKKy8qCisgKiBkcGtnIC0gbWFpbiBwcm9ncmFtIGZvciBwYWNrYWdlIG1hbmFnZW1lbnQKKyAqIHVwZGF0ZS5jIC0gb3B0aW9ucyB3aGljaCB1cGRhdGUgdGhlIOKAmGF2YWlsYWJsZeKAmSBkYXRhYmFzZQorICoKKyAqIENvcHlyaWdodCDCqSAxOTk1IElhbiBKYWNrc29uIDxpYW5AY2hpYXJrLmdyZWVuZW5kLm9yZy51az4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworI2luY2x1ZGUgPGNvbmZpZy5oPgorI2luY2x1ZGUgPGNvbXBhdC5oPgorCisjaW5jbHVkZSA8ZXJybm8uaD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDx1bmlzdGQuaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlIDxzdGRpby5oPgorCisjaW5jbHVkZSA8ZHBrZy9pMThuLmg+CisjaW5jbHVkZSA8ZHBrZy9kcGtnLmg+CisjaW5jbHVkZSA8ZHBrZy9kcGtnLWRiLmg+CisjaW5jbHVkZSA8ZHBrZy9vcHRpb25zLmg+CisKKyNpbmNsdWRlICJtYWluLmgiCisKK2ludAordXBkYXRlYXZhaWxhYmxlKGNvbnN0IGNoYXIgKmNvbnN0ICphcmd2KQoreworICBjb25zdCBjaGFyICpzb3VyY2VmaWxlPSBhcmd2WzBdOworICBjaGFyICphdmFpbGZpbGU7CisgIGludCBjb3VudD0gMDsKKworICBtb2RzdGF0ZGJfaW5pdCgpOworCisgIHN3aXRjaCAoY2lwYWN0aW9uLT5hcmdfaW50KSB7CisgIGNhc2UgYWN0X2F2Y2xlYXI6CisgICAgaWYgKHNvdXJjZWZpbGUpIGJhZHVzYWdlKF8oIi0tJXMgdGFrZXMgbm8gYXJndW1lbnRzIiksY2lwYWN0aW9uLT5vbG9uZyk7CisgICAgYnJlYWs7CisgIGNhc2UgYWN0X2F2cmVwbGFjZTogY2FzZSBhY3RfYXZtZXJnZToKKyAgICBpZiAoIXNvdXJjZWZpbGUgfHwgYXJndlsxXSkKKyAgICAgIGJhZHVzYWdlKF8oIi0tJXMgbmVlZHMgZXhhY3RseSBvbmUgUGFja2FnZXMtZmlsZSBhcmd1bWVudCIpLAorICAgICAgICAgICAgICAgY2lwYWN0aW9uLT5vbG9uZyk7CisgICAgYnJlYWs7CisgIGRlZmF1bHQ6CisgICAgaW50ZXJuZXJyKCJ1bmtub3duIGFjdGlvbiAnJWQnIiwgY2lwYWN0aW9uLT5hcmdfaW50KTsKKyAgfQorCisgIGlmICghZl9ub2FjdCkgeworICAgIGlmIChhY2Nlc3MoZHBrZ19kYl9nZXRfZGlyKCksIFdfT0spKSB7CisgICAgICBpZiAoZXJybm8gIT0gRUFDQ0VTKQorICAgICAgICBvaHNoaXRlKF8oInVuYWJsZSB0byBhY2Nlc3MgZHBrZyBzdGF0dXMgYXJlYSBmb3IgYnVsayBhdmFpbGFibGUgdXBkYXRlIikpOworICAgICAgZWxzZQorICAgICAgICBvaHNoaXQoXygiYnVsayBhdmFpbGFibGUgdXBkYXRlIHJlcXVpcmVzIHdyaXRlIGFjY2VzcyB0byBkcGtnIHN0YXR1cyBhcmVhIikpOworICAgIH0KKyAgICBtb2RzdGF0ZGJfbG9jaygpOworICB9CisKKyAgc3dpdGNoIChjaXBhY3Rpb24tPmFyZ19pbnQpIHsKKyAgY2FzZSBhY3RfYXZyZXBsYWNlOgorICAgIHByaW50ZihfKCJSZXBsYWNpbmcgYXZhaWxhYmxlIHBhY2thZ2VzIGluZm8sIHVzaW5nICVzLlxuIiksc291cmNlZmlsZSk7CisgICAgYnJlYWs7CisgIGNhc2UgYWN0X2F2bWVyZ2U6CisgICAgcHJpbnRmKF8oIlVwZGF0aW5nIGF2YWlsYWJsZSBwYWNrYWdlcyBpbmZvLCB1c2luZyAlcy5cbiIpLHNvdXJjZWZpbGUpOworICAgIGJyZWFrOworICBjYXNlIGFjdF9hdmNsZWFyOgorICAgIGJyZWFrOworICBkZWZhdWx0OgorICAgIGludGVybmVycigidW5rbm93biBhY3Rpb24gJyVkJyIsIGNpcGFjdGlvbi0+YXJnX2ludCk7CisgIH0KKworICBhdmFpbGZpbGUgPSBkcGtnX2RiX2dldF9wYXRoKEFWQUlMRklMRSk7CisKKyAgaWYgKGNpcGFjdGlvbi0+YXJnX2ludCA9PSBhY3RfYXZtZXJnZSkKKyAgICBwYXJzZWRiKGF2YWlsZmlsZSwgcGRiX3JlY29yZGF2YWlsYWJsZSB8IHBkYl9yZWplY3RzdGF0dXMgfCBwZGJfbGF4X3BhcnNlciwKKyAgICAgICAgICAgIE5VTEwpOworCisgIGlmIChjaXBhY3Rpb24tPmFyZ19pbnQgIT0gYWN0X2F2Y2xlYXIpCisgICAgY291bnQgKz0gcGFyc2VkYihzb3VyY2VmaWxlLAorCQkgICAgIHBkYl9yZWNvcmRhdmFpbGFibGUgfCBwZGJfcmVqZWN0c3RhdHVzIHwgcGRiX2lnbm9yZW9sZGVyLAorICAgICAgICAgICAgICAgICAgICAgTlVMTCk7CisKKyAgaWYgKCFmX25vYWN0KSB7CisgICAgd3JpdGVkYihhdmFpbGZpbGUsIHdkYl9kdW1wX2F2YWlsYWJsZSk7CisgICAgbW9kc3RhdGRiX3VubG9jaygpOworICB9CisKKyAgZnJlZShhdmFpbGZpbGUpOworCisgIGlmIChjaXBhY3Rpb24tPmFyZ19pbnQgIT0gYWN0X2F2Y2xlYXIpCisgICAgcHJpbnRmKFBfKCJJbmZvcm1hdGlvbiBhYm91dCAlZCBwYWNrYWdlIHdhcyB1cGRhdGVkLlxuIiwKKyAgICAgICAgICAgICAgIkluZm9ybWF0aW9uIGFib3V0ICVkIHBhY2thZ2VzIHdhcyB1cGRhdGVkLlxuIiwgY291bnQpLCBjb3VudCk7CisKKyAgbW9kc3RhdGRiX2RvbmUoKTsKKworICByZXR1cm4gMDsKK30KKworaW50Citmb3JnZXRvbGQoY29uc3QgY2hhciAqY29uc3QgKmFyZ3YpCit7CisgIGlmICgqYXJndikKKyAgICBiYWR1c2FnZShfKCItLSVzIHRha2VzIG5vIGFyZ3VtZW50cyIpLCBjaXBhY3Rpb24tPm9sb25nKTsKKworICB3YXJuaW5nKF8oIm9ic29sZXRlICctLSVzJyBvcHRpb24sIHVuYXZhaWxhYmxlIHBhY2thZ2VzIGFyZSBhdXRvbWF0aWNhbGx5IGNsZWFuZWQgdXAuIiksCisgICAgICAgICAgY2lwYWN0aW9uLT5vbG9uZyk7CisKKyAgcmV0dXJuIDA7Cit9CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3RyaXBsZXR0YWJsZSBiL2Rwa2ctMS4xNi4xLjEvdHJpcGxldHRhYmxlCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmY0N2Q2OGMKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3RyaXBsZXR0YWJsZQpAQCAtMCwwICsxLDIzIEBACisjIEJpZGlyZWN0aW9uYWwgbWFwcGluZyBiZXR3ZWVuIGEgRGViaWFuIHRyaXBsZXQgYW5kIGEgRGViaWFuIGFyY2guCisjCisjIFN1cHBvcnRlZCB2YXJpYWJsZXM6IDxjcHU+CisjCisjIDxEZWJpYW4gdHJpcGxldD4JPERlYmlhbiBhcmNoPgordWNsaWJjZWFiaS1saW51eC1hcm0JdWNsaWJjLWxpbnV4LWFybWVsCit1Y2xpYmMtbGludXgtPGNwdT4JdWNsaWJjLWxpbnV4LTxjcHU+CitnbnVlYWJpaGYtbGludXgtYXJtCWFybWhmCitnbnVlYWJpLWxpbnV4LWFybQlhcm1lbAorZ251c3BlLWxpbnV4LXBvd2VycGMJcG93ZXJwY3NwZQorZ251bHAtbGludXgtaTM4NglscGlhCitnbnUtbGludXgtPGNwdT4JCTxjcHU+CitnbnUta2ZyZWVic2QtPGNwdT4Ja2ZyZWVic2QtPGNwdT4KK2dudS1rbmV0YnNkLTxjcHU+CWtuZXRic2QtPGNwdT4KK2dudS1rb3BlbnNvbGFyaXMtPGNwdT4Ja29wZW5zb2xhcmlzLTxjcHU+CitnbnUtaHVyZC08Y3B1PgkJaHVyZC08Y3B1PgorYnNkLWZyZWVic2QtPGNwdT4JZnJlZWJzZC08Y3B1PgorYnNkLW9wZW5ic2QtPGNwdT4Jb3BlbmJzZC08Y3B1PgorYnNkLW5ldGJzZC08Y3B1PgluZXRic2QtPGNwdT4KK2JzZC1kYXJ3aW4tPGNwdT4JZGFyd2luLTxjcHU+CitzeXN2LXNvbGFyaXMtPGNwdT4Jc29sYXJpcy08Y3B1PgordWNsaWJjZWFiaS11Y2xpbnV4LWFybQl1Y2xpbnV4LWFybWVsCit1Y2xpYmMtdWNsaW51eC08Y3B1Pgl1Y2xpbnV4LTxjcHU+CmRpZmYgLS1naXQgYS9kcGtnLTEuMTYuMS4xL3V0aWxzL01ha2VmaWxlLmFtIGIvZHBrZy0xLjE2LjEuMS91dGlscy9NYWtlZmlsZS5hbQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iODIzNjI3Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS91dGlscy9NYWtlZmlsZS5hbQpAQCAtMCwwICsxLDc4IEBACisjIyBQcm9jZXNzIHRoaXMgZmlsZSB3aXRoIGF1dG9tYWtlIHRvIHByb2R1Y2UgTWFrZWZpbGUuaW4KKworbG9jYWxlZGlyID0gJChkYXRhZGlyKS9sb2NhbGUKK0FNX0NQUEZMQUdTID0gXAorCS1EQURNSU5ESVI9XCIkKGFkbWluZGlyKVwiIFwKKwktRExPQ0FMRURJUj1cIiQobG9jYWxlZGlyKVwiIFwKKwktRExPR0RJUj1cIiQobG9nZGlyKVwiIFwKKwktRFNZU0NPTkZESVI9XCIkKHN5c2NvbmZkaXIpXCIgXAorCS1pZGlyYWZ0ZXIgJCh0b3Bfc3JjZGlyKS9saWIvY29tcGF0IFwKKwktSSQodG9wX2J1aWxkZGlyKSBcCisJLUkkKHRvcF9zcmNkaXIpL2xpYgorCitFWFRSQV9ESVNUID0gXAorCVJFQURNRS5hbHRlcm5hdGl2ZXMgXAorCSQodGVzdF9jYXNlcykKKworYmluX1BST0dSQU1TID0KKworaWYgV0lUSF9VUERBVEVfQUxURVJOQVRJVkVTCitiaW5fUFJPR1JBTVMgKz0gdXBkYXRlLWFsdGVybmF0aXZlcworZW5kaWYKKwordXBkYXRlX2FsdGVybmF0aXZlc19TT1VSQ0VTID0gXAorCXVwZGF0ZS1hbHRlcm5hdGl2ZXMuYworCit1cGRhdGVfYWx0ZXJuYXRpdmVzX0xEQUREID0gXAorCS4uL2xpYi9jb21wYXQvbGliY29tcGF0LmEgXAorCSQoTElCSU5UTCkgXAorCSQoVUFfTElCUykKKworc2Jpbl9QUk9HUkFNUyA9CisKK2lmIFdJVEhfU1RBUlRfU1RPUF9EQUVNT04KK3NiaW5fUFJPR1JBTVMgKz0gc3RhcnQtc3RvcC1kYWVtb24KKworc3RhcnRfc3RvcF9kYWVtb25fU09VUkNFUyA9IFwKKwlzdGFydC1zdG9wLWRhZW1vbi5jCisKK3N0YXJ0X3N0b3BfZGFlbW9uX0xEQUREID0gXAorCS4uL2xpYi9jb21wYXQvbGliY29tcGF0LmEgXAorCSQoU1NEX0xJQlMpCitlbmRpZgorCitpZiBXSVRIX0lOU1RBTExfSU5GTworc2Jpbl9QUk9HUkFNUyArPSBkcGtnLWluc3RhbGwtaW5mbworCisjIEF1dG9tYWtlIGhhcyBpdHMgb3duIGluc3RhbGwtaW5mbyBydWxlLCBnYWgKK2Rwa2dfaW5zdGFsbF9pbmZvX1NPVVJDRVMgPSBpbnN0YWxsLWluZm8uYworCitkcGtnX2luc3RhbGxfaW5mb19MREFERCA9IFwKKwkuLi9saWIvY29tcGF0L2xpYmNvbXBhdC5hCitlbmRpZgorCit0cmFuc2Zvcm0gPSBzL2Rwa2ctaW5zdGFsbC1pbmZvL2luc3RhbGwtaW5mby87ICQocHJvZ3JhbV90cmFuc2Zvcm1fbmFtZSkKKworaW5zdGFsbC1kYXRhLWxvY2FsOgoraWYgV0lUSF9VUERBVEVfQUxURVJOQVRJVkVTCisJJChta2Rpcl9wKSAkKERFU1RESVIpJChzeXNjb25mZGlyKS9hbHRlcm5hdGl2ZXMKKwkkKG1rZGlyX3ApICQoREVTVERJUikkKGFkbWluZGlyKS9hbHRlcm5hdGl2ZXMKKwkkKElOU1RBTExfREFUQSkgJChzcmNkaXIpL1JFQURNRS5hbHRlcm5hdGl2ZXMgJChERVNURElSKSQoc3lzY29uZmRpcikvYWx0ZXJuYXRpdmVzL1JFQURNRQorZW5kaWYKKwordW5pbnN0YWxsLWxvY2FsOgorCXJtIC1mICQoREVTVERJUikkKHN5c2NvbmZkaXIpL2FsdGVybmF0aXZlcy9SRUFETUUKK2lmIFdJVEhfSU5TVEFMTF9JTkZPCisJcm0gLWYgJChERVNURElSKSQoc2JpbmRpcikvaW5zdGFsbC1pbmZvCitlbmRpZgorCitURVNUX1ZFUkJPU0UgPSAwCitURVNUX0VOVl9WQVJTID0gRFBLR19EQVRBRElSPSQodG9wX3NyY2RpcikKKwordGVzdF90bXBkaXIgPSB0LnRtcAordGVzdF9jYXNlcyA9IFwKKwl0LzEwMF91cGRhdGVfYWx0ZXJuYXRpdmVzLnQKKworaW5jbHVkZSAkKHRvcF9zcmNkaXIpL01ha2VjaGVjay5hbQorCitjbGVhbi1sb2NhbDogY2hlY2stY2xlYW4KZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvdXRpbHMvTWFrZWZpbGUuaW4gYi9kcGtnLTEuMTYuMS4xL3V0aWxzL01ha2VmaWxlLmluCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjdhMzkyNTgKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3V0aWxzL01ha2VmaWxlLmluCkBAIC0wLDAgKzEsNjg4IEBACisjIE1ha2VmaWxlLmluIGdlbmVyYXRlZCBieSBhdXRvbWFrZSAxLjExLjEgZnJvbSBNYWtlZmlsZS5hbS4KKyMgQGNvbmZpZ3VyZV9pbnB1dEAKKworIyBDb3B5cmlnaHQgKEMpIDE5OTQsIDE5OTUsIDE5OTYsIDE5OTcsIDE5OTgsIDE5OTksIDIwMDAsIDIwMDEsIDIwMDIsCisjIDIwMDMsIDIwMDQsIDIwMDUsIDIwMDYsIDIwMDcsIDIwMDgsIDIwMDkgIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwKKyMgSW5jLgorIyBUaGlzIE1ha2VmaWxlLmluIGlzIGZyZWUgc29mdHdhcmU7IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24KKyMgZ2l2ZXMgdW5saW1pdGVkIHBlcm1pc3Npb24gdG8gY29weSBhbmQvb3IgZGlzdHJpYnV0ZSBpdCwKKyMgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbnMsIGFzIGxvbmcgYXMgdGhpcyBub3RpY2UgaXMgcHJlc2VydmVkLgorCisjIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFksIHRvIHRoZSBleHRlbnQgcGVybWl0dGVkIGJ5IGxhdzsgd2l0aG91dAorIyBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBCisjIFBBUlRJQ1VMQVIgUFVSUE9TRS4KKworQFNFVF9NQUtFQAorCisjIHZpbTpzZXQgc3luPWF1dG9tYWtlOgorCisjIFZhcmlhYmxlcyB0byBiZSBkZWZpbmVkOgorIworIyAgVEVTVF9WRVJCT1NFIC0gc2V0IHRvIDAgb3IgMSB0byBjb250cm9sIHRlc3Qgc3VpdGUgdmVyYm9zaXR5CisjICBURVNUX0VOVl9WQVJTIC0gZW52aXJvbm1lbnQgdmFyaWFibGVzIHRvIGJlIHNldCBmb3IgdGhlIHRlc3Qgc3VpdGUKKyMgIFRFU1RfQ09WRVJBR0UgLSBzZXQgdG8gdGhlIHBlcmwgbW9kdWxlIGluIGNoYXJnZSBvZiBnZXR0aW5nIHRlc3QgY292ZXJhZ2UKKyMgIHRlc3RfdG1wZGlyIC0gdGVzdCBzdWl0ZSB0ZW1wb3JhcnkgZGlyZWN0b3J5CisjICB0ZXN0X2Nhc2VzIC0gbGlzdCBvZiB0ZXN0IGNhc2UgZmlsZXMKKyMgIHRlc3RfZGF0YSAtIGxpc3Qgb2YgdGVzdCBkYXRhIGZpbGVzCisKK1ZQQVRIID0gQHNyY2RpckAKK3BrZ2RhdGFkaXIgPSAkKGRhdGFkaXIpL0BQQUNLQUdFQAorcGtnaW5jbHVkZWRpciA9ICQoaW5jbHVkZWRpcikvQFBBQ0tBR0VACitwa2dsaWJkaXIgPSAkKGxpYmRpcikvQFBBQ0tBR0VACitwa2dsaWJleGVjZGlyID0gJChsaWJleGVjZGlyKS9AUEFDS0FHRUAKK2FtX19jZCA9IENEUEFUSD0iJCR7WlNIX1ZFUlNJT04rLn0kKFBBVEhfU0VQQVJBVE9SKSIgJiYgY2QKK2luc3RhbGxfc2hfREFUQSA9ICQoaW5zdGFsbF9zaCkgLWMgLW0gNjQ0CitpbnN0YWxsX3NoX1BST0dSQU0gPSAkKGluc3RhbGxfc2gpIC1jCitpbnN0YWxsX3NoX1NDUklQVCA9ICQoaW5zdGFsbF9zaCkgLWMKK0lOU1RBTExfSEVBREVSID0gJChJTlNUQUxMX0RBVEEpCitOT1JNQUxfSU5TVEFMTCA9IDoKK1BSRV9JTlNUQUxMID0gOgorUE9TVF9JTlNUQUxMID0gOgorTk9STUFMX1VOSU5TVEFMTCA9IDoKK1BSRV9VTklOU1RBTEwgPSA6CitQT1NUX1VOSU5TVEFMTCA9IDoKK2J1aWxkX3RyaXBsZXQgPSBAYnVpbGRACitob3N0X3RyaXBsZXQgPSBAaG9zdEAKK2Jpbl9QUk9HUkFNUyA9ICQoYW1fX0VYRUVYVF8xKQorQFdJVEhfVVBEQVRFX0FMVEVSTkFUSVZFU19UUlVFQGFtX19hcHBlbmRfMSA9IHVwZGF0ZS1hbHRlcm5hdGl2ZXMKK3NiaW5fUFJPR1JBTVMgPSAkKGFtX19FWEVFWFRfMikgJChhbV9fRVhFRVhUXzMpCitAV0lUSF9TVEFSVF9TVE9QX0RBRU1PTl9UUlVFQGFtX19hcHBlbmRfMiA9IHN0YXJ0LXN0b3AtZGFlbW9uCitAV0lUSF9JTlNUQUxMX0lORk9fVFJVRUBhbV9fYXBwZW5kXzMgPSBkcGtnLWluc3RhbGwtaW5mbworRElTVF9DT01NT04gPSAkKHNyY2RpcikvTWFrZWZpbGUuYW0gJChzcmNkaXIpL01ha2VmaWxlLmluIFwKKwkkKHRvcF9zcmNkaXIpL01ha2VjaGVjay5hbQorc3ViZGlyID0gdXRpbHMKK0FDTE9DQUxfTTQgPSAkKHRvcF9zcmNkaXIpL2FjbG9jYWwubTQKK2FtX19hY2xvY2FsX200X2RlcHMgPSAkKHRvcF9zcmNkaXIpL200L2Rwa2ctYXJjaC5tNCBcCisJJCh0b3Bfc3JjZGlyKS9tNC9kcGtnLWJ1aWxkLm00IFwKKwkkKHRvcF9zcmNkaXIpL200L2Rwa2ctY29tcGlsZXIubTQgXAorCSQodG9wX3NyY2RpcikvbTQvZHBrZy1jb3ZlcmFnZS5tNCBcCisJJCh0b3Bfc3JjZGlyKS9tNC9kcGtnLWZ1bmNzLm00ICQodG9wX3NyY2RpcikvbTQvZHBrZy1saWJzLm00IFwKKwkkKHRvcF9zcmNkaXIpL200L2Rwa2ctbGlua2VyLm00ICQodG9wX3NyY2RpcikvbTQvZHBrZy1wcm9ncy5tNCBcCisJJCh0b3Bfc3JjZGlyKS9tNC9kcGtnLXR5cGVzLm00IFwKKwkkKHRvcF9zcmNkaXIpL200L2Rwa2ctdW5pY29kZS5tNCAkKHRvcF9zcmNkaXIpL200L2dldHRleHQubTQgXAorCSQodG9wX3NyY2RpcikvbTQvaWNvbnYubTQgJCh0b3Bfc3JjZGlyKS9tNC9pbnRsbWFjb3N4Lm00IFwKKwkkKHRvcF9zcmNkaXIpL200L2xpYi1sZC5tNCAkKHRvcF9zcmNkaXIpL200L2xpYi1saW5rLm00IFwKKwkkKHRvcF9zcmNkaXIpL200L2xpYi1wcmVmaXgubTQgJCh0b3Bfc3JjZGlyKS9tNC9ubHMubTQgXAorCSQodG9wX3NyY2RpcikvbTQvcG8ubTQgJCh0b3Bfc3JjZGlyKS9tNC9wcm9ndGVzdC5tNCBcCisJJCh0b3Bfc3JjZGlyKS9jb25maWd1cmUuYWMKK2FtX19jb25maWd1cmVfZGVwcyA9ICQoYW1fX2FjbG9jYWxfbTRfZGVwcykgJChDT05GSUdVUkVfREVQRU5ERU5DSUVTKSBcCisJJChBQ0xPQ0FMX000KQorbWtpbnN0YWxsZGlycyA9ICQoaW5zdGFsbF9zaCkgLWQKK0NPTkZJR19IRUFERVIgPSAkKHRvcF9idWlsZGRpcikvY29uZmlnLmgKK0NPTkZJR19DTEVBTl9GSUxFUyA9CitDT05GSUdfQ0xFQU5fVlBBVEhfRklMRVMgPQorQFdJVEhfVVBEQVRFX0FMVEVSTkFUSVZFU19UUlVFQGFtX19FWEVFWFRfMSA9ICBcCitAV0lUSF9VUERBVEVfQUxURVJOQVRJVkVTX1RSVUVACXVwZGF0ZS1hbHRlcm5hdGl2ZXMkKEVYRUVYVCkKK2FtX19pbnN0YWxsZGlycyA9ICIkKERFU1RESVIpJChiaW5kaXIpIiAiJChERVNURElSKSQoc2JpbmRpcikiCitAV0lUSF9TVEFSVF9TVE9QX0RBRU1PTl9UUlVFQGFtX19FWEVFWFRfMiA9ICBcCitAV0lUSF9TVEFSVF9TVE9QX0RBRU1PTl9UUlVFQAlzdGFydC1zdG9wLWRhZW1vbiQoRVhFRVhUKQorQFdJVEhfSU5TVEFMTF9JTkZPX1RSVUVAYW1fX0VYRUVYVF8zID0gZHBrZy1pbnN0YWxsLWluZm8kKEVYRUVYVCkKK1BST0dSQU1TID0gJChiaW5fUFJPR1JBTVMpICQoc2Jpbl9QUk9HUkFNUykKK2FtX19kcGtnX2luc3RhbGxfaW5mb19TT1VSQ0VTX0RJU1QgPSBpbnN0YWxsLWluZm8uYworQFdJVEhfSU5TVEFMTF9JTkZPX1RSVUVAYW1fZHBrZ19pbnN0YWxsX2luZm9fT0JKRUNUUyA9ICBcCitAV0lUSF9JTlNUQUxMX0lORk9fVFJVRUAJaW5zdGFsbC1pbmZvLiQoT0JKRVhUKQorZHBrZ19pbnN0YWxsX2luZm9fT0JKRUNUUyA9ICQoYW1fZHBrZ19pbnN0YWxsX2luZm9fT0JKRUNUUykKK0BXSVRIX0lOU1RBTExfSU5GT19UUlVFQGRwa2dfaW5zdGFsbF9pbmZvX0RFUEVOREVOQ0lFUyA9ICBcCitAV0lUSF9JTlNUQUxMX0lORk9fVFJVRUAJLi4vbGliL2NvbXBhdC9saWJjb21wYXQuYQorYW1fX3N0YXJ0X3N0b3BfZGFlbW9uX1NPVVJDRVNfRElTVCA9IHN0YXJ0LXN0b3AtZGFlbW9uLmMKK0BXSVRIX1NUQVJUX1NUT1BfREFFTU9OX1RSVUVAYW1fc3RhcnRfc3RvcF9kYWVtb25fT0JKRUNUUyA9ICBcCitAV0lUSF9TVEFSVF9TVE9QX0RBRU1PTl9UUlVFQAlzdGFydC1zdG9wLWRhZW1vbi4kKE9CSkVYVCkKK3N0YXJ0X3N0b3BfZGFlbW9uX09CSkVDVFMgPSAkKGFtX3N0YXJ0X3N0b3BfZGFlbW9uX09CSkVDVFMpCithbV9fREVQRU5ERU5DSUVTXzEgPQorQFdJVEhfU1RBUlRfU1RPUF9EQUVNT05fVFJVRUBzdGFydF9zdG9wX2RhZW1vbl9ERVBFTkRFTkNJRVMgPSAgXAorQFdJVEhfU1RBUlRfU1RPUF9EQUVNT05fVFJVRUAJLi4vbGliL2NvbXBhdC9saWJjb21wYXQuYSBcCitAV0lUSF9TVEFSVF9TVE9QX0RBRU1PTl9UUlVFQAkkKGFtX19ERVBFTkRFTkNJRVNfMSkKK2FtX3VwZGF0ZV9hbHRlcm5hdGl2ZXNfT0JKRUNUUyA9IHVwZGF0ZS1hbHRlcm5hdGl2ZXMuJChPQkpFWFQpCit1cGRhdGVfYWx0ZXJuYXRpdmVzX09CSkVDVFMgPSAkKGFtX3VwZGF0ZV9hbHRlcm5hdGl2ZXNfT0JKRUNUUykKK3VwZGF0ZV9hbHRlcm5hdGl2ZXNfREVQRU5ERU5DSUVTID0gLi4vbGliL2NvbXBhdC9saWJjb21wYXQuYSBcCisJJChhbV9fREVQRU5ERU5DSUVTXzEpCitERUZBVUxUX0lOQ0xVREVTID0gCitkZXBjb21wID0gJChTSEVMTCkgJCh0b3Bfc3JjZGlyKS9idWlsZC1hdXgvZGVwY29tcAorYW1fX2RlcGZpbGVzX21heWJlID0gZGVwZmlsZXMKK2FtX19tdiA9IG12IC1mCitDT01QSUxFID0gJChDQykgJChERUZTKSAkKERFRkFVTFRfSU5DTFVERVMpICQoSU5DTFVERVMpICQoQU1fQ1BQRkxBR1MpIFwKKwkkKENQUEZMQUdTKSAkKEFNX0NGTEFHUykgJChDRkxBR1MpCitBTV9WX0NDID0gJChhbV9fdl9DQ18kKFYpKQorYW1fX3ZfQ0NfID0gJChhbV9fdl9DQ18kKEFNX0RFRkFVTFRfVkVSQk9TSVRZKSkKK2FtX192X0NDXzAgPSBAZWNobyAiICBDQyAgICAiICRAOworQU1fVl9hdCA9ICQoYW1fX3ZfYXRfJChWKSkKK2FtX192X2F0XyA9ICQoYW1fX3ZfYXRfJChBTV9ERUZBVUxUX1ZFUkJPU0lUWSkpCithbV9fdl9hdF8wID0gQAorQ0NMRCA9ICQoQ0MpCitMSU5LID0gJChDQ0xEKSAkKEFNX0NGTEFHUykgJChDRkxBR1MpICQoQU1fTERGTEFHUykgJChMREZMQUdTKSAtbyAkQAorQU1fVl9DQ0xEID0gJChhbV9fdl9DQ0xEXyQoVikpCithbV9fdl9DQ0xEXyA9ICQoYW1fX3ZfQ0NMRF8kKEFNX0RFRkFVTFRfVkVSQk9TSVRZKSkKK2FtX192X0NDTERfMCA9IEBlY2hvICIgIENDTEQgICIgJEA7CitBTV9WX0dFTiA9ICQoYW1fX3ZfR0VOXyQoVikpCithbV9fdl9HRU5fID0gJChhbV9fdl9HRU5fJChBTV9ERUZBVUxUX1ZFUkJPU0lUWSkpCithbV9fdl9HRU5fMCA9IEBlY2hvICIgIEdFTiAgICIgJEA7CitTT1VSQ0VTID0gJChkcGtnX2luc3RhbGxfaW5mb19TT1VSQ0VTKSAkKHN0YXJ0X3N0b3BfZGFlbW9uX1NPVVJDRVMpIFwKKwkkKHVwZGF0ZV9hbHRlcm5hdGl2ZXNfU09VUkNFUykKK0RJU1RfU09VUkNFUyA9ICQoYW1fX2Rwa2dfaW5zdGFsbF9pbmZvX1NPVVJDRVNfRElTVCkgXAorCSQoYW1fX3N0YXJ0X3N0b3BfZGFlbW9uX1NPVVJDRVNfRElTVCkgXAorCSQodXBkYXRlX2FsdGVybmF0aXZlc19TT1VSQ0VTKQorRVRBR1MgPSBldGFncworQ1RBR1MgPSBjdGFncworRElTVEZJTEVTID0gJChESVNUX0NPTU1PTikgJChESVNUX1NPVVJDRVMpICQoVEVYSU5GT1MpICQoRVhUUkFfRElTVCkKK3RyYW5zZm9ybSA9IHMvZHBrZy1pbnN0YWxsLWluZm8vaW5zdGFsbC1pbmZvLzsgJChwcm9ncmFtX3RyYW5zZm9ybV9uYW1lKQorQUNMT0NBTCA9IEBBQ0xPQ0FMQAorQU1UQVIgPSBAQU1UQVJACitBTV9ERUZBVUxUX1ZFUkJPU0lUWSA9IEBBTV9ERUZBVUxUX1ZFUkJPU0lUWUAKK0FVVE9DT05GID0gQEFVVE9DT05GQAorQVVUT0hFQURFUiA9IEBBVVRPSEVBREVSQAorQVVUT01BS0UgPSBAQVVUT01BS0VACitBV0sgPSBAQVdLQAorQloyX0xJQlMgPSBAQloyX0xJQlNACitDQyA9IEBDQ0AKK0NDREVQTU9ERSA9IEBDQ0RFUE1PREVACitDRkxBR1MgPSBAQ0ZMQUdTQAorQ1BQID0gQENQUEAKK0NQUEZMQUdTID0gQENQUEZMQUdTQAorQ1VSU0VTX0xJQlMgPSBAQ1VSU0VTX0xJQlNACitDWFggPSBAQ1hYQAorQ1hYREVQTU9ERSA9IEBDWFhERVBNT0RFQAorQ1hYRkxBR1MgPSBAQ1hYRkxBR1NACitDWUdQQVRIX1cgPSBAQ1lHUEFUSF9XQAorREVGUyA9IEBERUZTQAorREVQRElSID0gQERFUERJUkAKK0RPWFlHRU4gPSBARE9YWUdFTkAKK0VDSE9fQyA9IEBFQ0hPX0NACitFQ0hPX04gPSBARUNIT19OQAorRUNIT19UID0gQEVDSE9fVEAKK0VHUkVQID0gQEVHUkVQQAorRVhFRVhUID0gQEVYRUVYVEAKK0dDT1YgPSBAR0NPVkAKK0dFVFRFWFRfTUFDUk9fVkVSU0lPTiA9IEBHRVRURVhUX01BQ1JPX1ZFUlNJT05ACitHTVNHRk1UID0gQEdNU0dGTVRACitHTVNHRk1UXzAxNSA9IEBHTVNHRk1UXzAxNUAKK0dSRVAgPSBAR1JFUEAKK0hBVkVfRE9UID0gQEhBVkVfRE9UQAorSU5TVEFMTCA9IEBJTlNUQUxMQAorSU5TVEFMTF9EQVRBID0gQElOU1RBTExfREFUQUAKK0lOU1RBTExfUFJPR1JBTSA9IEBJTlNUQUxMX1BST0dSQU1ACitJTlNUQUxMX1NDUklQVCA9IEBJTlNUQUxMX1NDUklQVEAKK0lOU1RBTExfU1RSSVBfUFJPR1JBTSA9IEBJTlNUQUxMX1NUUklQX1BST0dSQU1ACitJTlRMTElCUyA9IEBJTlRMTElCU0AKK0lOVExfTUFDT1NYX0xJQlMgPSBASU5UTF9NQUNPU1hfTElCU0AKK0xDT1YgPSBATENPVkAKK0xDT1ZfR0VOSFRNTCA9IEBMQ09WX0dFTkhUTUxACitMREZMQUdTID0gQExERkxBR1NACitMRVggPSBATEVYQAorTEVYTElCID0gQExFWExJQkAKK0xFWF9PVVRQVVRfUk9PVCA9IEBMRVhfT1VUUFVUX1JPT1RACitMSUJJQ09OViA9IEBMSUJJQ09OVkAKK0xJQklOVEwgPSBATElCSU5UTEAKK0xJQk9CSlMgPSBATElCT0JKU0AKK0xJQlMgPSBATElCU0AKK0xUTElCSUNPTlYgPSBATFRMSUJJQ09OVkAKK0xUTElCSU5UTCA9IEBMVExJQklOVExACitMVExJQk9CSlMgPSBATFRMSUJPQkpTQAorTUFLRUlORk8gPSBATUFLRUlORk9ACitNS0RJUl9QID0gQE1LRElSX1BACitNU0dGTVQgPSBATVNHRk1UQAorTVNHRk1UXzAxNSA9IEBNU0dGTVRfMDE1QAorTVNHTUVSR0UgPSBATVNHTUVSR0VACitPQkpFWFQgPSBAT0JKRVhUQAorUEFDS0FHRSA9IEBQQUNLQUdFQAorUEFDS0FHRV9CVUdSRVBPUlQgPSBAUEFDS0FHRV9CVUdSRVBPUlRACitQQUNLQUdFX05BTUUgPSBAUEFDS0FHRV9OQU1FQAorUEFDS0FHRV9TVFJJTkcgPSBAUEFDS0FHRV9TVFJJTkdACitQQUNLQUdFX1RBUk5BTUUgPSBAUEFDS0FHRV9UQVJOQU1FQAorUEFDS0FHRV9VUkwgPSBAUEFDS0FHRV9VUkxACitQQUNLQUdFX1ZFUlNJT04gPSBAUEFDS0FHRV9WRVJTSU9OQAorUEFUSF9TRVBBUkFUT1IgPSBAUEFUSF9TRVBBUkFUT1JACitQRVJMID0gQFBFUkxACitQRVJMX0NPVkVSID0gQFBFUkxfQ09WRVJACitQRVJMX0NPVkVSQUdFID0gQFBFUkxfQ09WRVJBR0VACitQRVJMX0xJQkRJUiA9IEBQRVJMX0xJQkRJUkAKK1BLR19DT05GSUcgPSBAUEtHX0NPTkZJR0AKK1BLR19DT05GSUdfTElCRElSID0gQFBLR19DT05GSUdfTElCRElSQAorUEtHX0NPTkZJR19QQVRIID0gQFBLR19DT05GSUdfUEFUSEAKK1BPNEEgPSBAUE80QUAKK1BPRDJNQU4gPSBAUE9EMk1BTkAKK1BPU1VCID0gQFBPU1VCQAorUkFOTElCID0gQFJBTkxJQkAKK1NFTElOVVhfTElCUyA9IEBTRUxJTlVYX0xJQlNACitTRVRfTUFLRSA9IEBTRVRfTUFLRUAKK1NIRUxMID0gQFNIRUxMQAorU1NEX0xJQlMgPSBAU1NEX0xJQlNACitTVFJJUCA9IEBTVFJJUEAKK1VTRV9OTFMgPSBAVVNFX05MU0AKK1VTRV9QTzRBID0gQFVTRV9QTzRBQAorVVNFX1VOSUNPREUgPSBAVVNFX1VOSUNPREVACitWRVJTSU9OID0gQFZFUlNJT05ACitYR0VUVEVYVCA9IEBYR0VUVEVYVEAKK1hHRVRURVhUXzAxNSA9IEBYR0VUVEVYVF8wMTVACitYR0VUVEVYVF9FWFRSQV9PUFRJT05TID0gQFhHRVRURVhUX0VYVFJBX09QVElPTlNACitaTElCX0xJQlMgPSBAWkxJQl9MSUJTQAorYWJzX2J1aWxkZGlyID0gQGFic19idWlsZGRpckAKK2Fic19zcmNkaXIgPSBAYWJzX3NyY2RpckAKK2Fic190b3BfYnVpbGRkaXIgPSBAYWJzX3RvcF9idWlsZGRpckAKK2Fic190b3Bfc3JjZGlyID0gQGFic190b3Bfc3JjZGlyQAorYWNfY3RfQ0MgPSBAYWNfY3RfQ0NACithY19jdF9DWFggPSBAYWNfY3RfQ1hYQAorYWRtaW5kaXIgPSBAYWRtaW5kaXJACithbV9faW5jbHVkZSA9IEBhbV9faW5jbHVkZUAKK2FtX19sZWFkaW5nX2RvdCA9IEBhbV9fbGVhZGluZ19kb3RACithbV9fcXVvdGUgPSBAYW1fX3F1b3RlQAorYW1fX3RhciA9IEBhbV9fdGFyQAorYW1fX3VudGFyID0gQGFtX191bnRhckAKK2JpbmRpciA9IEBiaW5kaXJACitidWlsZCA9IEBidWlsZEAKK2J1aWxkX2FsaWFzID0gQGJ1aWxkX2FsaWFzQAorYnVpbGRfY3B1ID0gQGJ1aWxkX2NwdUAKK2J1aWxkX29zID0gQGJ1aWxkX29zQAorYnVpbGRfdmVuZG9yID0gQGJ1aWxkX3ZlbmRvckAKK2J1aWxkZGlyID0gQGJ1aWxkZGlyQAorZGF0YWRpciA9IEBkYXRhZGlyQAorZGF0YXJvb3RkaXIgPSBAZGF0YXJvb3RkaXJACitkb2NkaXIgPSBAZG9jZGlyQAorZHZpZGlyID0gQGR2aWRpckAKK2V4ZWNfcHJlZml4ID0gQGV4ZWNfcHJlZml4QAoraG9zdCA9IEBob3N0QAoraG9zdF9hbGlhcyA9IEBob3N0X2FsaWFzQAoraG9zdF9jcHUgPSBAaG9zdF9jcHVACitob3N0X29zID0gQGhvc3Rfb3NACitob3N0X3ZlbmRvciA9IEBob3N0X3ZlbmRvckAKK2h0bWxkaXIgPSBAaHRtbGRpckAKK2luY2x1ZGVkaXIgPSBAaW5jbHVkZWRpckAKK2luZm9kaXIgPSBAaW5mb2RpckAKK2luc3RhbGxfc2ggPSBAaW5zdGFsbF9zaEAKK2xpYmRpciA9IEBsaWJkaXJACitsaWJleGVjZGlyID0gQGxpYmV4ZWNkaXJACitsb2NhbGVkaXIgPSAkKGRhdGFkaXIpL2xvY2FsZQorbG9jYWxzdGF0ZWRpciA9IEBsb2NhbHN0YXRlZGlyQAorbG9nZGlyID0gQGxvZ2RpckAKK21hbmRpciA9IEBtYW5kaXJACitta2Rpcl9wID0gQG1rZGlyX3BACitvbGRpbmNsdWRlZGlyID0gQG9sZGluY2x1ZGVkaXJACitwZGZkaXIgPSBAcGRmZGlyQAorcHJlZml4ID0gQHByZWZpeEAKK3Byb2dyYW1fdHJhbnNmb3JtX25hbWUgPSBAcHJvZ3JhbV90cmFuc2Zvcm1fbmFtZUAKK3BzZGlyID0gQHBzZGlyQAorc2JpbmRpciA9IEBzYmluZGlyQAorc2hhcmVkc3RhdGVkaXIgPSBAc2hhcmVkc3RhdGVkaXJACitzcmNkaXIgPSBAc3JjZGlyQAorc3lzY29uZmRpciA9IEBzeXNjb25mZGlyQAordGFyZ2V0X2FsaWFzID0gQHRhcmdldF9hbGlhc0AKK3RvcF9idWlsZF9wcmVmaXggPSBAdG9wX2J1aWxkX3ByZWZpeEAKK3RvcF9idWlsZGRpciA9IEB0b3BfYnVpbGRkaXJACit0b3Bfc3JjZGlyID0gQHRvcF9zcmNkaXJACitBTV9DUFBGTEFHUyA9IFwKKwktREFETUlORElSPVwiJChhZG1pbmRpcilcIiBcCisJLURMT0NBTEVESVI9XCIkKGxvY2FsZWRpcilcIiBcCisJLURMT0dESVI9XCIkKGxvZ2RpcilcIiBcCisJLURTWVNDT05GRElSPVwiJChzeXNjb25mZGlyKVwiIFwKKwktaWRpcmFmdGVyICQodG9wX3NyY2RpcikvbGliL2NvbXBhdCBcCisJLUkkKHRvcF9idWlsZGRpcikgXAorCS1JJCh0b3Bfc3JjZGlyKS9saWIKKworRVhUUkFfRElTVCA9IFwKKwlSRUFETUUuYWx0ZXJuYXRpdmVzIFwKKwkkKHRlc3RfY2FzZXMpCisKK3VwZGF0ZV9hbHRlcm5hdGl2ZXNfU09VUkNFUyA9IFwKKwl1cGRhdGUtYWx0ZXJuYXRpdmVzLmMKKwordXBkYXRlX2FsdGVybmF0aXZlc19MREFERCA9IFwKKwkuLi9saWIvY29tcGF0L2xpYmNvbXBhdC5hIFwKKwkkKExJQklOVEwpIFwKKwkkKFVBX0xJQlMpCisKK0BXSVRIX1NUQVJUX1NUT1BfREFFTU9OX1RSVUVAc3RhcnRfc3RvcF9kYWVtb25fU09VUkNFUyA9IFwKK0BXSVRIX1NUQVJUX1NUT1BfREFFTU9OX1RSVUVACXN0YXJ0LXN0b3AtZGFlbW9uLmMKKworQFdJVEhfU1RBUlRfU1RPUF9EQUVNT05fVFJVRUBzdGFydF9zdG9wX2RhZW1vbl9MREFERCA9IFwKK0BXSVRIX1NUQVJUX1NUT1BfREFFTU9OX1RSVUVACS4uL2xpYi9jb21wYXQvbGliY29tcGF0LmEgXAorQFdJVEhfU1RBUlRfU1RPUF9EQUVNT05fVFJVRUAJJChTU0RfTElCUykKKworCisjIEF1dG9tYWtlIGhhcyBpdHMgb3duIGluc3RhbGwtaW5mbyBydWxlLCBnYWgKK0BXSVRIX0lOU1RBTExfSU5GT19UUlVFQGRwa2dfaW5zdGFsbF9pbmZvX1NPVVJDRVMgPSBpbnN0YWxsLWluZm8uYworQFdJVEhfSU5TVEFMTF9JTkZPX1RSVUVAZHBrZ19pbnN0YWxsX2luZm9fTERBREQgPSBcCitAV0lUSF9JTlNUQUxMX0lORk9fVFJVRUAJLi4vbGliL2NvbXBhdC9saWJjb21wYXQuYQorCitURVNUX1ZFUkJPU0UgPSAwCitURVNUX0VOVl9WQVJTID0gRFBLR19EQVRBRElSPSQodG9wX3NyY2RpcikKK3Rlc3RfdG1wZGlyID0gdC50bXAKK3Rlc3RfY2FzZXMgPSBcCisJdC8xMDBfdXBkYXRlX2FsdGVybmF0aXZlcy50CisKK2FsbDogYWxsLWFtCisKKy5TVUZGSVhFUzoKKy5TVUZGSVhFUzogLmMgLm8gLm9iagorJChzcmNkaXIpL01ha2VmaWxlLmluOiAgJChzcmNkaXIpL01ha2VmaWxlLmFtICQodG9wX3NyY2RpcikvTWFrZWNoZWNrLmFtICQoYW1fX2NvbmZpZ3VyZV9kZXBzKQorCUBmb3IgZGVwIGluICQ/OyBkbyBcCisJICBjYXNlICckKGFtX19jb25maWd1cmVfZGVwcyknIGluIFwKKwkgICAgKiQkZGVwKikgXAorCSAgICAgICggY2QgJCh0b3BfYnVpbGRkaXIpICYmICQoTUFLRSkgJChBTV9NQUtFRkxBR1MpIGFtLS1yZWZyZXNoICkgXAorCSAgICAgICAgJiYgeyBpZiB0ZXN0IC1mICRAOyB0aGVuIGV4aXQgMDsgZWxzZSBicmVhazsgZmk7IH07IFwKKwkgICAgICBleGl0IDE7OyBcCisJICBlc2FjOyBcCisJZG9uZTsgXAorCWVjaG8gJyBjZCAkKHRvcF9zcmNkaXIpICYmICQoQVVUT01BS0UpIC0tZm9yZWlnbiB1dGlscy9NYWtlZmlsZSc7IFwKKwkkKGFtX19jZCkgJCh0b3Bfc3JjZGlyKSAmJiBcCisJICAkKEFVVE9NQUtFKSAtLWZvcmVpZ24gdXRpbHMvTWFrZWZpbGUKKy5QUkVDSU9VUzogTWFrZWZpbGUKK01ha2VmaWxlOiAkKHNyY2RpcikvTWFrZWZpbGUuaW4gJCh0b3BfYnVpbGRkaXIpL2NvbmZpZy5zdGF0dXMKKwlAY2FzZSAnJD8nIGluIFwKKwkgICpjb25maWcuc3RhdHVzKikgXAorCSAgICBjZCAkKHRvcF9idWlsZGRpcikgJiYgJChNQUtFKSAkKEFNX01BS0VGTEFHUykgYW0tLXJlZnJlc2g7OyBcCisJICAqKSBcCisJICAgIGVjaG8gJyBjZCAkKHRvcF9idWlsZGRpcikgJiYgJChTSEVMTCkgLi9jb25maWcuc3RhdHVzICQoc3ViZGlyKS8kQCAkKGFtX19kZXBmaWxlc19tYXliZSknOyBcCisJICAgIGNkICQodG9wX2J1aWxkZGlyKSAmJiAkKFNIRUxMKSAuL2NvbmZpZy5zdGF0dXMgJChzdWJkaXIpLyRAICQoYW1fX2RlcGZpbGVzX21heWJlKTs7IFwKKwllc2FjOworCiskKHRvcF9idWlsZGRpcikvY29uZmlnLnN0YXR1czogJCh0b3Bfc3JjZGlyKS9jb25maWd1cmUgJChDT05GSUdfU1RBVFVTX0RFUEVOREVOQ0lFUykKKwljZCAkKHRvcF9idWlsZGRpcikgJiYgJChNQUtFKSAkKEFNX01BS0VGTEFHUykgYW0tLXJlZnJlc2gKKworJCh0b3Bfc3JjZGlyKS9jb25maWd1cmU6ICAkKGFtX19jb25maWd1cmVfZGVwcykKKwljZCAkKHRvcF9idWlsZGRpcikgJiYgJChNQUtFKSAkKEFNX01BS0VGTEFHUykgYW0tLXJlZnJlc2gKKyQoQUNMT0NBTF9NNCk6ICAkKGFtX19hY2xvY2FsX200X2RlcHMpCisJY2QgJCh0b3BfYnVpbGRkaXIpICYmICQoTUFLRSkgJChBTV9NQUtFRkxBR1MpIGFtLS1yZWZyZXNoCiskKGFtX19hY2xvY2FsX200X2RlcHMpOgoraW5zdGFsbC1iaW5QUk9HUkFNUzogJChiaW5fUFJPR1JBTVMpCisJQCQoTk9STUFMX0lOU1RBTEwpCisJdGVzdCAteiAiJChiaW5kaXIpIiB8fCAkKE1LRElSX1ApICIkKERFU1RESVIpJChiaW5kaXIpIgorCUBsaXN0PSckKGJpbl9QUk9HUkFNUyknOyB0ZXN0IC1uICIkKGJpbmRpcikiIHx8IGxpc3Q9OyBcCisJZm9yIHAgaW4gJCRsaXN0OyBkbyBlY2hvICIkJHAgJCRwIjsgZG9uZSB8IFwKKwlzZWQgJ3MvJChFWEVFWFQpJCQvLycgfCBcCisJd2hpbGUgcmVhZCBwIHAxOyBkbyBpZiB0ZXN0IC1mICQkcDsgXAorCSAgdGhlbiBlY2hvICIkJHAiOyBlY2hvICIkJHAiOyBlbHNlIDo7IGZpOyBcCisJZG9uZSB8IFwKKwlzZWQgLWUgJ3A7cywuKi8sLDtuO2gnIC1lICdzfC4qfC58JyBcCisJICAgIC1lICdwO3g7cywuKi8sLDtzLyQoRVhFRVhUKSQkLy87JCh0cmFuc2Zvcm0pO3MvJCQvJChFWEVFWFQpLycgfCBcCisJc2VkICdOO047TjtzLFxuLCAsZycgfCBcCisJJChBV0spICdCRUdJTiB7IGZpbGVzWyIuIl0gPSAiIjsgZGlyc1siLiJdID0gMSB9IFwKKwkgIHsgZD0kJDM7IGlmIChkaXJzW2RdICE9IDEpIHsgcHJpbnQgImQiLCBkOyBkaXJzW2RdID0gMSB9IFwKKwkgICAgaWYgKCQkMiA9PSAkJDQpIGZpbGVzW2RdID0gZmlsZXNbZF0gIiAiICQkMTsgXAorCSAgICBlbHNlIHsgcHJpbnQgImYiLCAkJDMgIi8iICQkNCwgJCQxOyB9IH0gXAorCSAgRU5EIHsgZm9yIChkIGluIGZpbGVzKSBwcmludCAiZiIsIGQsIGZpbGVzW2RdIH0nIHwgXAorCXdoaWxlIHJlYWQgdHlwZSBkaXIgZmlsZXM7IGRvIFwKKwkgICAgaWYgdGVzdCAiJCRkaXIiID0gLjsgdGhlbiBkaXI9OyBlbHNlIGRpcj0vJCRkaXI7IGZpOyBcCisJICAgIHRlc3QgLXogIiQkZmlsZXMiIHx8IHsgXAorCSAgICAgIGVjaG8gIiAkKElOU1RBTExfUFJPR1JBTV9FTlYpICQoSU5TVEFMTF9QUk9HUkFNKSAkJGZpbGVzICckKERFU1RESVIpJChiaW5kaXIpJCRkaXInIjsgXAorCSAgICAgICQoSU5TVEFMTF9QUk9HUkFNX0VOVikgJChJTlNUQUxMX1BST0dSQU0pICQkZmlsZXMgIiQoREVTVERJUikkKGJpbmRpcikkJGRpciIgfHwgZXhpdCAkJD87IFwKKwkgICAgfSBcCisJOyBkb25lCisKK3VuaW5zdGFsbC1iaW5QUk9HUkFNUzoKKwlAJChOT1JNQUxfVU5JTlNUQUxMKQorCUBsaXN0PSckKGJpbl9QUk9HUkFNUyknOyB0ZXN0IC1uICIkKGJpbmRpcikiIHx8IGxpc3Q9OyBcCisJZmlsZXM9YGZvciBwIGluICQkbGlzdDsgZG8gZWNobyAiJCRwIjsgZG9uZSB8IFwKKwkgIHNlZCAtZSAnaDtzLF4uKi8sLDtzLyQoRVhFRVhUKSQkLy87JCh0cmFuc2Zvcm0pJyBcCisJICAgICAgLWUgJ3MvJCQvJChFWEVFWFQpLycgYDsgXAorCXRlc3QgLW4gIiQkbGlzdCIgfHwgZXhpdCAwOyBcCisJZWNobyAiICggY2QgJyQoREVTVERJUikkKGJpbmRpciknICYmIHJtIC1mIiAkJGZpbGVzICIpIjsgXAorCWNkICIkKERFU1RESVIpJChiaW5kaXIpIiAmJiBybSAtZiAkJGZpbGVzCisKK2NsZWFuLWJpblBST0dSQU1TOgorCS10ZXN0IC16ICIkKGJpbl9QUk9HUkFNUykiIHx8IHJtIC1mICQoYmluX1BST0dSQU1TKQoraW5zdGFsbC1zYmluUFJPR1JBTVM6ICQoc2Jpbl9QUk9HUkFNUykKKwlAJChOT1JNQUxfSU5TVEFMTCkKKwl0ZXN0IC16ICIkKHNiaW5kaXIpIiB8fCAkKE1LRElSX1ApICIkKERFU1RESVIpJChzYmluZGlyKSIKKwlAbGlzdD0nJChzYmluX1BST0dSQU1TKSc7IHRlc3QgLW4gIiQoc2JpbmRpcikiIHx8IGxpc3Q9OyBcCisJZm9yIHAgaW4gJCRsaXN0OyBkbyBlY2hvICIkJHAgJCRwIjsgZG9uZSB8IFwKKwlzZWQgJ3MvJChFWEVFWFQpJCQvLycgfCBcCisJd2hpbGUgcmVhZCBwIHAxOyBkbyBpZiB0ZXN0IC1mICQkcDsgXAorCSAgdGhlbiBlY2hvICIkJHAiOyBlY2hvICIkJHAiOyBlbHNlIDo7IGZpOyBcCisJZG9uZSB8IFwKKwlzZWQgLWUgJ3A7cywuKi8sLDtuO2gnIC1lICdzfC4qfC58JyBcCisJICAgIC1lICdwO3g7cywuKi8sLDtzLyQoRVhFRVhUKSQkLy87JCh0cmFuc2Zvcm0pO3MvJCQvJChFWEVFWFQpLycgfCBcCisJc2VkICdOO047TjtzLFxuLCAsZycgfCBcCisJJChBV0spICdCRUdJTiB7IGZpbGVzWyIuIl0gPSAiIjsgZGlyc1siLiJdID0gMSB9IFwKKwkgIHsgZD0kJDM7IGlmIChkaXJzW2RdICE9IDEpIHsgcHJpbnQgImQiLCBkOyBkaXJzW2RdID0gMSB9IFwKKwkgICAgaWYgKCQkMiA9PSAkJDQpIGZpbGVzW2RdID0gZmlsZXNbZF0gIiAiICQkMTsgXAorCSAgICBlbHNlIHsgcHJpbnQgImYiLCAkJDMgIi8iICQkNCwgJCQxOyB9IH0gXAorCSAgRU5EIHsgZm9yIChkIGluIGZpbGVzKSBwcmludCAiZiIsIGQsIGZpbGVzW2RdIH0nIHwgXAorCXdoaWxlIHJlYWQgdHlwZSBkaXIgZmlsZXM7IGRvIFwKKwkgICAgaWYgdGVzdCAiJCRkaXIiID0gLjsgdGhlbiBkaXI9OyBlbHNlIGRpcj0vJCRkaXI7IGZpOyBcCisJICAgIHRlc3QgLXogIiQkZmlsZXMiIHx8IHsgXAorCSAgICAgIGVjaG8gIiAkKElOU1RBTExfUFJPR1JBTV9FTlYpICQoSU5TVEFMTF9QUk9HUkFNKSAkJGZpbGVzICckKERFU1RESVIpJChzYmluZGlyKSQkZGlyJyI7IFwKKwkgICAgICAkKElOU1RBTExfUFJPR1JBTV9FTlYpICQoSU5TVEFMTF9QUk9HUkFNKSAkJGZpbGVzICIkKERFU1RESVIpJChzYmluZGlyKSQkZGlyIiB8fCBleGl0ICQkPzsgXAorCSAgICB9IFwKKwk7IGRvbmUKKwordW5pbnN0YWxsLXNiaW5QUk9HUkFNUzoKKwlAJChOT1JNQUxfVU5JTlNUQUxMKQorCUBsaXN0PSckKHNiaW5fUFJPR1JBTVMpJzsgdGVzdCAtbiAiJChzYmluZGlyKSIgfHwgbGlzdD07IFwKKwlmaWxlcz1gZm9yIHAgaW4gJCRsaXN0OyBkbyBlY2hvICIkJHAiOyBkb25lIHwgXAorCSAgc2VkIC1lICdoO3MsXi4qLywsO3MvJChFWEVFWFQpJCQvLzskKHRyYW5zZm9ybSknIFwKKwkgICAgICAtZSAncy8kJC8kKEVYRUVYVCkvJyBgOyBcCisJdGVzdCAtbiAiJCRsaXN0IiB8fCBleGl0IDA7IFwKKwllY2hvICIgKCBjZCAnJChERVNURElSKSQoc2JpbmRpciknICYmIHJtIC1mIiAkJGZpbGVzICIpIjsgXAorCWNkICIkKERFU1RESVIpJChzYmluZGlyKSIgJiYgcm0gLWYgJCRmaWxlcworCitjbGVhbi1zYmluUFJPR1JBTVM6CisJLXRlc3QgLXogIiQoc2Jpbl9QUk9HUkFNUykiIHx8IHJtIC1mICQoc2Jpbl9QUk9HUkFNUykKK2Rwa2ctaW5zdGFsbC1pbmZvJChFWEVFWFQpOiAkKGRwa2dfaW5zdGFsbF9pbmZvX09CSkVDVFMpICQoZHBrZ19pbnN0YWxsX2luZm9fREVQRU5ERU5DSUVTKSAKKwlAcm0gLWYgZHBrZy1pbnN0YWxsLWluZm8kKEVYRUVYVCkKKwkkKEFNX1ZfQ0NMRCkkKExJTkspICQoZHBrZ19pbnN0YWxsX2luZm9fT0JKRUNUUykgJChkcGtnX2luc3RhbGxfaW5mb19MREFERCkgJChMSUJTKQorc3RhcnQtc3RvcC1kYWVtb24kKEVYRUVYVCk6ICQoc3RhcnRfc3RvcF9kYWVtb25fT0JKRUNUUykgJChzdGFydF9zdG9wX2RhZW1vbl9ERVBFTkRFTkNJRVMpIAorCUBybSAtZiBzdGFydC1zdG9wLWRhZW1vbiQoRVhFRVhUKQorCSQoQU1fVl9DQ0xEKSQoTElOSykgJChzdGFydF9zdG9wX2RhZW1vbl9PQkpFQ1RTKSAkKHN0YXJ0X3N0b3BfZGFlbW9uX0xEQUREKSAkKExJQlMpCit1cGRhdGUtYWx0ZXJuYXRpdmVzJChFWEVFWFQpOiAkKHVwZGF0ZV9hbHRlcm5hdGl2ZXNfT0JKRUNUUykgJCh1cGRhdGVfYWx0ZXJuYXRpdmVzX0RFUEVOREVOQ0lFUykgCisJQHJtIC1mIHVwZGF0ZS1hbHRlcm5hdGl2ZXMkKEVYRUVYVCkKKwkkKEFNX1ZfQ0NMRCkkKExJTkspICQodXBkYXRlX2FsdGVybmF0aXZlc19PQkpFQ1RTKSAkKHVwZGF0ZV9hbHRlcm5hdGl2ZXNfTERBREQpICQoTElCUykKKworbW9zdGx5Y2xlYW4tY29tcGlsZToKKwktcm0gLWYgKi4kKE9CSkVYVCkKKworZGlzdGNsZWFuLWNvbXBpbGU6CisJLXJtIC1mICoudGFiLmMKKworQEFNREVQX1RSVUVAQGFtX19pbmNsdWRlQCBAYW1fX3F1b3RlQC4vJChERVBESVIpL2luc3RhbGwtaW5mby5Qb0BhbV9fcXVvdGVACitAQU1ERVBfVFJVRUBAYW1fX2luY2x1ZGVAIEBhbV9fcXVvdGVALi8kKERFUERJUikvc3RhcnQtc3RvcC1kYWVtb24uUG9AYW1fX3F1b3RlQAorQEFNREVQX1RSVUVAQGFtX19pbmNsdWRlQCBAYW1fX3F1b3RlQC4vJChERVBESVIpL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuUG9AYW1fX3F1b3RlQAorCisuYy5vOgorQGFtX19mYXN0ZGVwQ0NfVFJVRUAJJChBTV9WX0NDKSQoQ09NUElMRSkgLU1UICRAIC1NRCAtTVAgLU1GICQoREVQRElSKS8kKi5UcG8gLWMgLW8gJEAgJDwKK0BhbV9fZmFzdGRlcENDX1RSVUVACSQoQU1fVl9hdCkkKGFtX19tdikgJChERVBESVIpLyQqLlRwbyAkKERFUERJUikvJCouUG8KK0BhbV9fZmFzdGRlcENDX0ZBTFNFQAkkKEFNX1ZfQ0MpIEBBTV9CQUNLU0xBU0hACitAQU1ERVBfVFJVRUBAYW1fX2Zhc3RkZXBDQ19GQUxTRUAJc291cmNlPSckPCcgb2JqZWN0PSckQCcgbGlidG9vbD1ubyBAQU1ERVBCQUNLU0xBU0hACitAQU1ERVBfVFJVRUBAYW1fX2Zhc3RkZXBDQ19GQUxTRUAJREVQRElSPSQoREVQRElSKSAkKENDREVQTU9ERSkgJChkZXBjb21wKSBAQU1ERVBCQUNLU0xBU0hACitAYW1fX2Zhc3RkZXBDQ19GQUxTRUAJJChDT01QSUxFKSAtYyAkPAorCisuYy5vYmo6CitAYW1fX2Zhc3RkZXBDQ19UUlVFQAkkKEFNX1ZfQ0MpJChDT01QSUxFKSAtTVQgJEAgLU1EIC1NUCAtTUYgJChERVBESVIpLyQqLlRwbyAtYyAtbyAkQCBgJChDWUdQQVRIX1cpICckPCdgCitAYW1fX2Zhc3RkZXBDQ19UUlVFQAkkKEFNX1ZfYXQpJChhbV9fbXYpICQoREVQRElSKS8kKi5UcG8gJChERVBESVIpLyQqLlBvCitAYW1fX2Zhc3RkZXBDQ19GQUxTRUAJJChBTV9WX0NDKSBAQU1fQkFDS1NMQVNIQAorQEFNREVQX1RSVUVAQGFtX19mYXN0ZGVwQ0NfRkFMU0VACXNvdXJjZT0nJDwnIG9iamVjdD0nJEAnIGxpYnRvb2w9bm8gQEFNREVQQkFDS1NMQVNIQAorQEFNREVQX1RSVUVAQGFtX19mYXN0ZGVwQ0NfRkFMU0VACURFUERJUj0kKERFUERJUikgJChDQ0RFUE1PREUpICQoZGVwY29tcCkgQEFNREVQQkFDS1NMQVNIQAorQGFtX19mYXN0ZGVwQ0NfRkFMU0VACSQoQ09NUElMRSkgLWMgYCQoQ1lHUEFUSF9XKSAnJDwnYAorCitJRDogJChIRUFERVJTKSAkKFNPVVJDRVMpICQoTElTUCkgJChUQUdTX0ZJTEVTKQorCWxpc3Q9JyQoU09VUkNFUykgJChIRUFERVJTKSAkKExJU1ApICQoVEFHU19GSUxFUyknOyBcCisJdW5pcXVlPWBmb3IgaSBpbiAkJGxpc3Q7IGRvIFwKKwkgICAgaWYgdGVzdCAtZiAiJCRpIjsgdGhlbiBlY2hvICQkaTsgZWxzZSBlY2hvICQoc3JjZGlyKS8kJGk7IGZpOyBcCisJICBkb25lIHwgXAorCSAgJChBV0spICd7IGZpbGVzWyQkMF0gPSAxOyBub25lbXB0eSA9IDE7IH0gXAorCSAgICAgIEVORCB7IGlmIChub25lbXB0eSkgeyBmb3IgKGkgaW4gZmlsZXMpIHByaW50IGk7IH07IH0nYDsgXAorCW1raWQgLWZJRCAkJHVuaXF1ZQordGFnczogVEFHUworCitUQUdTOiAgJChIRUFERVJTKSAkKFNPVVJDRVMpICAkKFRBR1NfREVQRU5ERU5DSUVTKSBcCisJCSQoVEFHU19GSUxFUykgJChMSVNQKQorCXNldCB4OyBcCisJaGVyZT1gcHdkYDsgXAorCWxpc3Q9JyQoU09VUkNFUykgJChIRUFERVJTKSAgJChMSVNQKSAkKFRBR1NfRklMRVMpJzsgXAorCXVuaXF1ZT1gZm9yIGkgaW4gJCRsaXN0OyBkbyBcCisJICAgIGlmIHRlc3QgLWYgIiQkaSI7IHRoZW4gZWNobyAkJGk7IGVsc2UgZWNobyAkKHNyY2RpcikvJCRpOyBmaTsgXAorCSAgZG9uZSB8IFwKKwkgICQoQVdLKSAneyBmaWxlc1skJDBdID0gMTsgbm9uZW1wdHkgPSAxOyB9IFwKKwkgICAgICBFTkQgeyBpZiAobm9uZW1wdHkpIHsgZm9yIChpIGluIGZpbGVzKSBwcmludCBpOyB9OyB9J2A7IFwKKwlzaGlmdDsgXAorCWlmIHRlc3QgLXogIiQoRVRBR1NfQVJHUykkJCokJHVuaXF1ZSI7IHRoZW4gOjsgZWxzZSBcCisJICB0ZXN0IC1uICIkJHVuaXF1ZSIgfHwgdW5pcXVlPSQkZW1wdHlfZml4OyBcCisJICBpZiB0ZXN0ICQkIyAtZ3QgMDsgdGhlbiBcCisJICAgICQoRVRBR1MpICQoRVRBR1NGTEFHUykgJChBTV9FVEFHU0ZMQUdTKSAkKEVUQUdTX0FSR1MpIFwKKwkgICAgICAiJCRAIiAkJHVuaXF1ZTsgXAorCSAgZWxzZSBcCisJICAgICQoRVRBR1MpICQoRVRBR1NGTEFHUykgJChBTV9FVEFHU0ZMQUdTKSAkKEVUQUdTX0FSR1MpIFwKKwkgICAgICAkJHVuaXF1ZTsgXAorCSAgZmk7IFwKKwlmaQorY3RhZ3M6IENUQUdTCitDVEFHUzogICQoSEVBREVSUykgJChTT1VSQ0VTKSAgJChUQUdTX0RFUEVOREVOQ0lFUykgXAorCQkkKFRBR1NfRklMRVMpICQoTElTUCkKKwlsaXN0PSckKFNPVVJDRVMpICQoSEVBREVSUykgICQoTElTUCkgJChUQUdTX0ZJTEVTKSc7IFwKKwl1bmlxdWU9YGZvciBpIGluICQkbGlzdDsgZG8gXAorCSAgICBpZiB0ZXN0IC1mICIkJGkiOyB0aGVuIGVjaG8gJCRpOyBlbHNlIGVjaG8gJChzcmNkaXIpLyQkaTsgZmk7IFwKKwkgIGRvbmUgfCBcCisJICAkKEFXSykgJ3sgZmlsZXNbJCQwXSA9IDE7IG5vbmVtcHR5ID0gMTsgfSBcCisJICAgICAgRU5EIHsgaWYgKG5vbmVtcHR5KSB7IGZvciAoaSBpbiBmaWxlcykgcHJpbnQgaTsgfTsgfSdgOyBcCisJdGVzdCAteiAiJChDVEFHU19BUkdTKSQkdW5pcXVlIiBcCisJICB8fCAkKENUQUdTKSAkKENUQUdTRkxBR1MpICQoQU1fQ1RBR1NGTEFHUykgJChDVEFHU19BUkdTKSBcCisJICAgICAkJHVuaXF1ZQorCitHVEFHUzoKKwloZXJlPWAkKGFtX19jZCkgJCh0b3BfYnVpbGRkaXIpICYmIHB3ZGAgXAorCSAgJiYgJChhbV9fY2QpICQodG9wX3NyY2RpcikgXAorCSAgJiYgZ3RhZ3MgLWkgJChHVEFHU19BUkdTKSAiJCRoZXJlIgorCitkaXN0Y2xlYW4tdGFnczoKKwktcm0gLWYgVEFHUyBJRCBHVEFHUyBHUlRBR1MgR1NZTVMgR1BBVEggdGFncworCitkaXN0ZGlyOiAkKERJU1RGSUxFUykKKwlAc3JjZGlyc3RyaXA9YGVjaG8gIiQoc3JjZGlyKSIgfCBzZWQgJ3MvW10uW14kJFxcKl0vXFxcXCYvZydgOyBcCisJdG9wc3JjZGlyc3RyaXA9YGVjaG8gIiQodG9wX3NyY2RpcikiIHwgc2VkICdzL1tdLlteJCRcXCpdL1xcXFwmL2cnYDsgXAorCWxpc3Q9JyQoRElTVEZJTEVTKSc7IFwKKwkgIGRpc3RfZmlsZXM9YGZvciBmaWxlIGluICQkbGlzdDsgZG8gZWNobyAkJGZpbGU7IGRvbmUgfCBcCisJICBzZWQgLWUgInN8XiQkc3JjZGlyc3RyaXAvfHw7dCIgXAorCSAgICAgIC1lICJzfF4kJHRvcHNyY2RpcnN0cmlwL3wkKHRvcF9idWlsZGRpcikvfDt0ImA7IFwKKwljYXNlICQkZGlzdF9maWxlcyBpbiBcCisJICAqLyopICQoTUtESVJfUCkgYGVjaG8gIiQkZGlzdF9maWxlcyIgfCBcCisJCQkgICBzZWQgJy9cLy8hZDtzfF58JChkaXN0ZGlyKS98O3MsL1teL10qJCQsLCcgfCBcCisJCQkgICBzb3J0IC11YCA7OyBcCisJZXNhYzsgXAorCWZvciBmaWxlIGluICQkZGlzdF9maWxlczsgZG8gXAorCSAgaWYgdGVzdCAtZiAkJGZpbGUgfHwgdGVzdCAtZCAkJGZpbGU7IHRoZW4gZD0uOyBlbHNlIGQ9JChzcmNkaXIpOyBmaTsgXAorCSAgaWYgdGVzdCAtZCAkJGQvJCRmaWxlOyB0aGVuIFwKKwkgICAgZGlyPWBlY2hvICIvJCRmaWxlIiB8IHNlZCAtZSAncywvW14vXSokJCwsJ2A7IFwKKwkgICAgaWYgdGVzdCAtZCAiJChkaXN0ZGlyKS8kJGZpbGUiOyB0aGVuIFwKKwkgICAgICBmaW5kICIkKGRpc3RkaXIpLyQkZmlsZSIgLXR5cGUgZCAhIC1wZXJtIC03MDAgLWV4ZWMgY2htb2QgdStyd3gge30gXDs7IFwKKwkgICAgZmk7IFwKKwkgICAgaWYgdGVzdCAtZCAkKHNyY2RpcikvJCRmaWxlICYmIHRlc3QgJCRkICE9ICQoc3JjZGlyKTsgdGhlbiBcCisJICAgICAgY3AgLWZwUiAkKHNyY2RpcikvJCRmaWxlICIkKGRpc3RkaXIpJCRkaXIiIHx8IGV4aXQgMTsgXAorCSAgICAgIGZpbmQgIiQoZGlzdGRpcikvJCRmaWxlIiAtdHlwZSBkICEgLXBlcm0gLTcwMCAtZXhlYyBjaG1vZCB1K3J3eCB7fSBcOzsgXAorCSAgICBmaTsgXAorCSAgICBjcCAtZnBSICQkZC8kJGZpbGUgIiQoZGlzdGRpcikkJGRpciIgfHwgZXhpdCAxOyBcCisJICBlbHNlIFwKKwkgICAgdGVzdCAtZiAiJChkaXN0ZGlyKS8kJGZpbGUiIFwKKwkgICAgfHwgY3AgLXAgJCRkLyQkZmlsZSAiJChkaXN0ZGlyKS8kJGZpbGUiIFwKKwkgICAgfHwgZXhpdCAxOyBcCisJICBmaTsgXAorCWRvbmUKK2NoZWNrLWFtOiBhbGwtYW0KKwkkKE1BS0UpICQoQU1fTUFLRUZMQUdTKSBjaGVjay1sb2NhbAorY2hlY2s6IGNoZWNrLWFtCithbGwtYW06IE1ha2VmaWxlICQoUFJPR1JBTVMpCitpbnN0YWxsZGlyczoKKwlmb3IgZGlyIGluICIkKERFU1RESVIpJChiaW5kaXIpIiAiJChERVNURElSKSQoc2JpbmRpcikiOyBkbyBcCisJICB0ZXN0IC16ICIkJGRpciIgfHwgJChNS0RJUl9QKSAiJCRkaXIiOyBcCisJZG9uZQoraW5zdGFsbDogaW5zdGFsbC1hbQoraW5zdGFsbC1leGVjOiBpbnN0YWxsLWV4ZWMtYW0KK2luc3RhbGwtZGF0YTogaW5zdGFsbC1kYXRhLWFtCit1bmluc3RhbGw6IHVuaW5zdGFsbC1hbQorCitpbnN0YWxsLWFtOiBhbGwtYW0KKwlAJChNQUtFKSAkKEFNX01BS0VGTEFHUykgaW5zdGFsbC1leGVjLWFtIGluc3RhbGwtZGF0YS1hbQorCitpbnN0YWxsY2hlY2s6IGluc3RhbGxjaGVjay1hbQoraW5zdGFsbC1zdHJpcDoKKwkkKE1BS0UpICQoQU1fTUFLRUZMQUdTKSBJTlNUQUxMX1BST0dSQU09IiQoSU5TVEFMTF9TVFJJUF9QUk9HUkFNKSIgXAorCSAgaW5zdGFsbF9zaF9QUk9HUkFNPSIkKElOU1RBTExfU1RSSVBfUFJPR1JBTSkiIElOU1RBTExfU1RSSVBfRkxBRz0tcyBcCisJICBgdGVzdCAteiAnJChTVFJJUCknIHx8IFwKKwkgICAgZWNobyAiSU5TVEFMTF9QUk9HUkFNX0VOVj1TVFJJUFBST0c9JyQoU1RSSVApJyJgIGluc3RhbGwKK21vc3RseWNsZWFuLWdlbmVyaWM6CisKK2NsZWFuLWdlbmVyaWM6CisKK2Rpc3RjbGVhbi1nZW5lcmljOgorCS10ZXN0IC16ICIkKENPTkZJR19DTEVBTl9GSUxFUykiIHx8IHJtIC1mICQoQ09ORklHX0NMRUFOX0ZJTEVTKQorCS10ZXN0IC4gPSAiJChzcmNkaXIpIiB8fCB0ZXN0IC16ICIkKENPTkZJR19DTEVBTl9WUEFUSF9GSUxFUykiIHx8IHJtIC1mICQoQ09ORklHX0NMRUFOX1ZQQVRIX0ZJTEVTKQorCittYWludGFpbmVyLWNsZWFuLWdlbmVyaWM6CisJQGVjaG8gIlRoaXMgY29tbWFuZCBpcyBpbnRlbmRlZCBmb3IgbWFpbnRhaW5lcnMgdG8gdXNlIgorCUBlY2hvICJpdCBkZWxldGVzIGZpbGVzIHRoYXQgbWF5IHJlcXVpcmUgc3BlY2lhbCB0b29scyB0byByZWJ1aWxkLiIKK2NsZWFuOiBjbGVhbi1hbQorCitjbGVhbi1hbTogY2xlYW4tYmluUFJPR1JBTVMgY2xlYW4tZ2VuZXJpYyBjbGVhbi1sb2NhbCBcCisJY2xlYW4tc2JpblBST0dSQU1TIG1vc3RseWNsZWFuLWFtCisKK2Rpc3RjbGVhbjogZGlzdGNsZWFuLWFtCisJLXJtIC1yZiAuLyQoREVQRElSKQorCS1ybSAtZiBNYWtlZmlsZQorZGlzdGNsZWFuLWFtOiBjbGVhbi1hbSBkaXN0Y2xlYW4tY29tcGlsZSBkaXN0Y2xlYW4tZ2VuZXJpYyBcCisJZGlzdGNsZWFuLXRhZ3MKKworZHZpOiBkdmktYW0KKworZHZpLWFtOgorCitodG1sOiBodG1sLWFtCisKK2h0bWwtYW06CisKK2luZm86IGluZm8tYW0KKworaW5mby1hbToKKworaW5zdGFsbC1kYXRhLWFtOiBpbnN0YWxsLWRhdGEtbG9jYWwKKworaW5zdGFsbC1kdmk6IGluc3RhbGwtZHZpLWFtCisKK2luc3RhbGwtZHZpLWFtOgorCitpbnN0YWxsLWV4ZWMtYW06IGluc3RhbGwtYmluUFJPR1JBTVMgaW5zdGFsbC1zYmluUFJPR1JBTVMKKworaW5zdGFsbC1odG1sOiBpbnN0YWxsLWh0bWwtYW0KKworaW5zdGFsbC1odG1sLWFtOgorCitpbnN0YWxsLWluZm86IGluc3RhbGwtaW5mby1hbQorCitpbnN0YWxsLWluZm8tYW06CisKK2luc3RhbGwtbWFuOgorCitpbnN0YWxsLXBkZjogaW5zdGFsbC1wZGYtYW0KKworaW5zdGFsbC1wZGYtYW06CisKK2luc3RhbGwtcHM6IGluc3RhbGwtcHMtYW0KKworaW5zdGFsbC1wcy1hbToKKworaW5zdGFsbGNoZWNrLWFtOgorCittYWludGFpbmVyLWNsZWFuOiBtYWludGFpbmVyLWNsZWFuLWFtCisJLXJtIC1yZiAuLyQoREVQRElSKQorCS1ybSAtZiBNYWtlZmlsZQorbWFpbnRhaW5lci1jbGVhbi1hbTogZGlzdGNsZWFuLWFtIG1haW50YWluZXItY2xlYW4tZ2VuZXJpYworCittb3N0bHljbGVhbjogbW9zdGx5Y2xlYW4tYW0KKworbW9zdGx5Y2xlYW4tYW06IG1vc3RseWNsZWFuLWNvbXBpbGUgbW9zdGx5Y2xlYW4tZ2VuZXJpYworCitwZGY6IHBkZi1hbQorCitwZGYtYW06CisKK3BzOiBwcy1hbQorCitwcy1hbToKKwordW5pbnN0YWxsLWFtOiB1bmluc3RhbGwtYmluUFJPR1JBTVMgdW5pbnN0YWxsLWxvY2FsIFwKKwl1bmluc3RhbGwtc2JpblBST0dSQU1TCisKKy5NQUtFOiBjaGVjay1hbSBpbnN0YWxsLWFtIGluc3RhbGwtc3RyaXAKKworLlBIT05ZOiBDVEFHUyBHVEFHUyBhbGwgYWxsLWFtIGNoZWNrIGNoZWNrLWFtIGNoZWNrLWxvY2FsIGNsZWFuIFwKKwljbGVhbi1iaW5QUk9HUkFNUyBjbGVhbi1nZW5lcmljIGNsZWFuLWxvY2FsIGNsZWFuLXNiaW5QUk9HUkFNUyBcCisJY3RhZ3MgZGlzdGNsZWFuIGRpc3RjbGVhbi1jb21waWxlIGRpc3RjbGVhbi1nZW5lcmljIFwKKwlkaXN0Y2xlYW4tdGFncyBkaXN0ZGlyIGR2aSBkdmktYW0gaHRtbCBodG1sLWFtIGluZm8gaW5mby1hbSBcCisJaW5zdGFsbCBpbnN0YWxsLWFtIGluc3RhbGwtYmluUFJPR1JBTVMgaW5zdGFsbC1kYXRhIFwKKwlpbnN0YWxsLWRhdGEtYW0gaW5zdGFsbC1kYXRhLWxvY2FsIGluc3RhbGwtZHZpIGluc3RhbGwtZHZpLWFtIFwKKwlpbnN0YWxsLWV4ZWMgaW5zdGFsbC1leGVjLWFtIGluc3RhbGwtaHRtbCBpbnN0YWxsLWh0bWwtYW0gXAorCWluc3RhbGwtaW5mbyBpbnN0YWxsLWluZm8tYW0gaW5zdGFsbC1tYW4gaW5zdGFsbC1wZGYgXAorCWluc3RhbGwtcGRmLWFtIGluc3RhbGwtcHMgaW5zdGFsbC1wcy1hbSBpbnN0YWxsLXNiaW5QUk9HUkFNUyBcCisJaW5zdGFsbC1zdHJpcCBpbnN0YWxsY2hlY2sgaW5zdGFsbGNoZWNrLWFtIGluc3RhbGxkaXJzIFwKKwltYWludGFpbmVyLWNsZWFuIG1haW50YWluZXItY2xlYW4tZ2VuZXJpYyBtb3N0bHljbGVhbiBcCisJbW9zdGx5Y2xlYW4tY29tcGlsZSBtb3N0bHljbGVhbi1nZW5lcmljIHBkZiBwZGYtYW0gcHMgcHMtYW0gXAorCXRhZ3MgdW5pbnN0YWxsIHVuaW5zdGFsbC1hbSB1bmluc3RhbGwtYmluUFJPR1JBTVMgXAorCXVuaW5zdGFsbC1sb2NhbCB1bmluc3RhbGwtc2JpblBST0dSQU1TCisKKworaW5zdGFsbC1kYXRhLWxvY2FsOgorQFdJVEhfVVBEQVRFX0FMVEVSTkFUSVZFU19UUlVFQAkkKG1rZGlyX3ApICQoREVTVERJUikkKHN5c2NvbmZkaXIpL2FsdGVybmF0aXZlcworQFdJVEhfVVBEQVRFX0FMVEVSTkFUSVZFU19UUlVFQAkkKG1rZGlyX3ApICQoREVTVERJUikkKGFkbWluZGlyKS9hbHRlcm5hdGl2ZXMKK0BXSVRIX1VQREFURV9BTFRFUk5BVElWRVNfVFJVRUAJJChJTlNUQUxMX0RBVEEpICQoc3JjZGlyKS9SRUFETUUuYWx0ZXJuYXRpdmVzICQoREVTVERJUikkKHN5c2NvbmZkaXIpL2FsdGVybmF0aXZlcy9SRUFETUUKKwordW5pbnN0YWxsLWxvY2FsOgorCXJtIC1mICQoREVTVERJUikkKHN5c2NvbmZkaXIpL2FsdGVybmF0aXZlcy9SRUFETUUKK0BXSVRIX0lOU1RBTExfSU5GT19UUlVFQAlybSAtZiAkKERFU1RESVIpJChzYmluZGlyKS9pbnN0YWxsLWluZm8KKworY2hlY2stY2xlYW46CisJcm0gLWZyICQodGVzdF90bXBkaXIpCisKK2NoZWNrLWxvY2FsOiAkKHRlc3RfZGF0YSkgJCh0ZXN0X2Nhc2VzKQorCSQobWtkaXJfcCkgJCh0ZXN0X3RtcGRpcikKKwlQQVRIPSIkKHRvcF9idWlsZGRpcikvc3JjOiQodG9wX2J1aWxkZGlyKS9zY3JpcHRzOiQodG9wX2J1aWxkZGlyKS91dGlsczokKFBBVEgpIiBcCisJICBMQ19BTEw9QyBcCisJICAkKFRFU1RfRU5WX1ZBUlMpIFwKKwkgIHNyY2Rpcj0kKHNyY2RpcikgYnVpbGRkaXI9JChidWlsZGRpcikgXAorCSAgUEVSTDVMSUI9JCh0b3Bfc3JjZGlyKS9zY3JpcHRzIFBFUkxfRExfTk9OTEFaWT0xIFwKKwkgIFBFUkw1T1BUPSQoVEVTVF9DT1ZFUkFHRSkgXAorCSAgJChQRVJMKSAtSSQodG9wX3NyY2Rpcikvc2NyaXB0cyBcCisJICAgIC1NRXh0VXRpbHM6OkNvbW1hbmQ6Ok1NIC1lICJ0ZXN0X2hhcm5lc3MoJChURVNUX1ZFUkJPU0UpLCAnLicpIiBcCisJICAgICQoYWRkcHJlZml4ICQoc3JjZGlyKS8sJCh0ZXN0X2Nhc2VzKSkKKworY2xlYW4tbG9jYWw6IGNoZWNrLWNsZWFuCisKKyMgVGVsbCB2ZXJzaW9ucyBbMy41OSwzLjYzKSBvZiBHTlUgbWFrZSB0byBub3QgZXhwb3J0IGFsbCB2YXJpYWJsZXMuCisjIE90aGVyd2lzZSBhIHN5c3RlbSBsaW1pdCAoZm9yIFN5c1YgYXQgbGVhc3QpIG1heSBiZSBleGNlZWRlZC4KKy5OT0VYUE9SVDoKZGlmZiAtLWdpdCBhL2Rwa2ctMS4xNi4xLjEvdXRpbHMvUkVBRE1FLmFsdGVybmF0aXZlcyBiL2Rwa2ctMS4xNi4xLjEvdXRpbHMvUkVBRE1FLmFsdGVybmF0aXZlcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41NGVmNzQwCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS91dGlscy9SRUFETUUuYWx0ZXJuYXRpdmVzCkBAIC0wLDAgKzEsMiBAQAorUGxlYXNlIHJlYWQgdGhlIHVwZGF0ZS1hbHRlcm5hdGl2ZXMoOCkgbWFuIHBhZ2UgZm9yIGluZm9ybWF0aW9uIG9uIHRoaXMKK2RpcmVjdG9yeSBhbmQgaXRzIGNvbnRlbnRzLgpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS91dGlscy9pbnN0YWxsLWluZm8uYyBiL2Rwa2ctMS4xNi4xLjEvdXRpbHMvaW5zdGFsbC1pbmZvLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZWIxNjc5ZgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2ctMS4xNi4xLjEvdXRpbHMvaW5zdGFsbC1pbmZvLmMKQEAgLTAsMCArMSw2NiBAQAorLyoKKyAqIGluc3RhbGwtaW5mby5jIC0gdHJhbnNpdGlvbmFsIGdpbnN0YWxsLWluZm8gd3JhcHBlcgorICoKKyAqIENvcHlyaWdodCDCqSAyMDA5IFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KKyAqCisgKiBUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKi8KKworI2luY2x1ZGUgPGNvbmZpZy5oPgorI2luY2x1ZGUgPGNvbXBhdC5oPgorCisjaW5jbHVkZSA8ZXJybm8uaD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDx1bmlzdGQuaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlIDxzdGRpby5oPgorCisjZGVmaW5lIFNFTEYgIi91c3Ivc2Jpbi9pbnN0YWxsLWluZm8iCisjZGVmaW5lIFdSQVBQRUQgIi91c3IvYmluL2luc3RhbGwtaW5mbyIKKworI2RlZmluZSB3YXJuKC4uLikgZnByaW50ZihzdGRlcnIsICJpbnN0YWxsLWluZm86IHdhcm5pbmc6ICIgX19WQV9BUkdTX18pCisjZGVmaW5lIGVycm9yKC4uLikgZnByaW50ZihzdGRlcnIsICJpbnN0YWxsLWluZm86IGVycm9yOiAiIF9fVkFfQVJHU19fKQorCitpbnQKK21haW4oaW50IGFyZ2MsIGNoYXIgKiphcmd2KQoreworICAgIGlmIChzdHJjbXAoYXJndlswXSwgU0VMRikgPT0gMCkgeworCXdhcm4oImRvbid0IGNhbGwgcHJvZ3JhbXMgbGlrZSBpbnN0YWxsLWluZm8gd2l0aCBhbiBhYnNvbHV0ZSBwYXRoLFxuIik7CisJd2FybigiJXMgcHJvdmlkZWQgYnkgZHBrZyBpcyBkZXByZWNhdGVkIGFuZCB3aWxsIGdvIGF3YXkgc29vbjtcbiIsCisJICAgICBTRUxGKTsKKwl3YXJuKCJpdHMgcmVwbGFjZW1lbnQgbGl2ZXMgaW4gL3Vzci9iaW4vLlxuIik7CisgICAgfQorCisJZXhlY3YoV1JBUFBFRCwgYXJndik7CisJaWYgKGVycm5vID09IEVOT0VOVCkgeworCSAgICBpZiAoZ2V0ZW52KCJEUEtHX1JVTk5JTkdfVkVSU0lPTiIpICE9IE5VTEwpIHsKKwkJY29uc3QgY2hhciAqcGtnOworCisJCXBrZyA9IGdldGVudigiRFBLR19NQUlOVFNDUklQVF9QQUNLQUdFIik7CisKKwkJd2FybigibWFpbnRhaW5lciBzY3JpcHRzIHNob3VsZCBub3QgY2FsbCBpbnN0YWxsLWluZm8gYW55bW9yZSxcbiIpOworCQl3YXJuKCJ0aGlzIGlzIGhhbmRsZWQgbm93IGJ5IGEgZHBrZyB0cmlnZ2VyIHByb3ZpZGVkIGJ5IHRoZVxuIik7CisJCXdhcm4oImluc3RhbGwtaW5mbyBwYWNrYWdlOyBwYWNrYWdlICVzIHNob3VsZCBiZSB1cGRhdGVkLlxuIiwKKwkJICAgICBwa2cpOworCSAgICB9IGVsc2UgeworCQl3YXJuKCJub3RoaW5nIGRvbmUgc2luY2UgJXMgZG9lc24ndCBleGlzdCxcbiIsIFdSQVBQRUQpOworCQl3YXJuKCJ5b3UgbWlnaHQgd2FudCB0byBpbnN0YWxsIGFuIGluZm8tYnJvd3NlciBwYWNrYWdlLlxuIik7CisJICAgIH0KKwl9IGVsc2UgeworCSAgICBlcnJvcigiY2FuJ3QgZXhlY3V0ZSAlczogJXNcbiIsIFdSQVBQRUQsIHN0cmVycm9yKGVycm5vKSk7CisJICAgIHJldHVybiAxOworCX0KKworICAgIHJldHVybiAwOworfQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS91dGlscy9zdGFydC1zdG9wLWRhZW1vbi5jIGIvZHBrZy0xLjE2LjEuMS91dGlscy9zdGFydC1zdG9wLWRhZW1vbi5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjRmZTM5NzgKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLTEuMTYuMS4xL3V0aWxzL3N0YXJ0LXN0b3AtZGFlbW9uLmMKQEAgLTAsMCArMSwxNzYyIEBACisvKgorICogQSByZXdyaXRlIG9mIHRoZSBvcmlnaW5hbCBEZWJpYW4ncyBzdGFydC1zdG9wLWRhZW1vbiBQZXJsIHNjcmlwdAorICogaW4gQyAoZmFzdGVyIC0gaXQgaXMgZXhlY3V0ZWQgbWFueSB0aW1lcyBkdXJpbmcgc3lzdGVtIHN0YXJ0dXApLgorICoKKyAqIFdyaXR0ZW4gYnkgTWFyZWsgTWljaGFsa2lld2ljeiA8bWFyZWttQGkxN2xpbnV4Yi5pc3RzLnB3ci53cm9jLnBsPiwKKyAqIHB1YmxpYyBkb21haW4uICBCYXNlZCBjb25jZXB0dWFsbHkgb24gc3RhcnQtc3RvcC1kYWVtb24ucGwsIGJ5IElhbgorICogSmFja3NvbiA8aWphY2tzb25AZ251LmFpLm1pdC5lZHU+LiAgTWF5IGJlIHVzZWQgYW5kIGRpc3RyaWJ1dGVkCisgKiBmcmVlbHkgZm9yIGFueSBwdXJwb3NlLiAgQ2hhbmdlcyBieSBDaHJpc3RpYW4gU2Nod2FyegorICogPHNjaHdhcnpAbW9uZXQubS5pc2FyLmRlPiwgdG8gbWFrZSBvdXRwdXQgY29uZm9ybSB0byB0aGUgRGViaWFuCisgKiBDb25zb2xlIE1lc3NhZ2UgU3RhbmRhcmQsIGFsc28gcGxhY2VkIGluIHB1YmxpYyBkb21haW4uICBNaW5vcgorICogY2hhbmdlcyBieSBLbGVlIERpZW5lcyA8a2xlZUBkZWJpYW4ub3JnPiwgYWxzbyBwbGFjZWQgaW4gdGhlIFB1YmxpYworICogRG9tYWluLgorICoKKyAqIENoYW5nZXMgYnkgQmVuIENvbGxpbnMgPGJjb2xsaW5zQGRlYmlhbi5vcmc+LCBhZGRlZCAtLWNodWlkLCAtLWJhY2tncm91bmQKKyAqIGFuZCAtLW1ha2UtcGlkZmlsZSBvcHRpb25zLCBwbGFjZWQgaW4gcHVibGljIGRvbWFpbiBhcyB3ZWxsLgorICoKKyAqIFBvcnQgdG8gT3BlbkJTRCBieSBTb250cmkgVG9tbyBIdXluaCA8aHV5bmguMjlAb3N1LmVkdT4KKyAqICAgICAgICAgICAgICAgICBhbmQgQW5kcmVhcyBTY2h1bGRlaSA8YW5kcmVhc0BzY2h1bGRlaS5vcmc+CisgKgorICogQ2hhbmdlcyBieSBJYW4gSmFja3NvbjogYWRkZWQgLS1yZXRyeSAoYW5kIGFzc29jaWF0ZWQgcmVhcnJhbmdlbWVudHMpLgorICovCisKKyNpbmNsdWRlIDxjb25maWcuaD4KKyNpbmNsdWRlIDxjb21wYXQuaD4KKworI2luY2x1ZGUgPGRwa2cvbWFjcm9zLmg+CisKKyNpZiBkZWZpbmVkKGxpbnV4KSB8fCAoZGVmaW5lZChfX0ZyZWVCU0Rfa2VybmVsX18pICYmIGRlZmluZWQoX19HTElCQ19fKSkKKyMgIGRlZmluZSBPU0xpbnV4CisjZWxpZiBkZWZpbmVkKF9fR05VX18pCisjICBkZWZpbmUgT1NIdXJkCisjZWxpZiBkZWZpbmVkKF9fc3VuKQorIyAgZGVmaW5lIE9Tc3Vub3MKKyNlbGlmIGRlZmluZWQoT1BFTkJTRCkgfHwgZGVmaW5lZChfX09wZW5CU0RfXykKKyMgIGRlZmluZSBPU09wZW5CU0QKKyNlbGlmIGRlZmluZWQoaHB1eCkKKyMgIGRlZmluZSBPU2hwdXgKKyNlbGlmIGRlZmluZWQoX19GcmVlQlNEX18pCisjICBkZWZpbmUgT1NGcmVlQlNECisjZWxpZiBkZWZpbmVkKF9fTmV0QlNEX18pCisjICBkZWZpbmUgT1NOZXRCU0QKKyNlbHNlCisjICBlcnJvciBVbmtub3duIGFyY2hpdGVjdHVyZSAtIGNhbm5vdCBidWlsZCBzdGFydC1zdG9wLWRhZW1vbgorI2VuZGlmCisKKyNkZWZpbmUgTUlOX1BPTExfSU5URVJWQUwgMjAwMDAgLyogwrVzICovCisKKyNpZmRlZiBIQVZFX1NZU19DREVGU19ICisjaW5jbHVkZSA8c3lzL2NkZWZzLmg+CisjZW5kaWYKKworI2lmZGVmIEhBVkVfU1lTX1NZU0NBTExfSAorI2luY2x1ZGUgPHN5cy9zeXNjYWxsLmg+CisjZW5kaWYKKworI2lmIGRlZmluZWQoT1NIdXJkKQorI2luY2x1ZGUgPGh1cmQuaD4KKyNpbmNsdWRlIDxwcy5oPgorI2VuZGlmCisKKyNpZiBkZWZpbmVkKE9TT3BlbkJTRCkgfHwgZGVmaW5lZChPU0ZyZWVCU0QpIHx8IGRlZmluZWQoT1NOZXRCU0QpCisjaW5jbHVkZSA8c3lzL3BhcmFtLmg+CisjaW5jbHVkZSA8c3lzL3Byb2MuaD4KKworI2luY2x1ZGUgPGVyci5oPgorI2VuZGlmCisKKyNpZmRlZiBIQVZFX0tWTV9ICisjaW5jbHVkZSA8c3lzL3N5c2N0bC5oPgorI2luY2x1ZGUgPHN5cy91c2VyLmg+CisKKyNpbmNsdWRlIDxrdm0uaD4KKyNlbmRpZgorCisjaWYgZGVmaW5lZChPU2hwdXgpCisjaW5jbHVkZSA8c3lzL3BhcmFtLmg+CisjaW5jbHVkZSA8c3lzL3BzdGF0Lmg+CisjZW5kaWYKKworI2luY2x1ZGUgPHN5cy90eXBlcy5oPgorI2luY2x1ZGUgPHN5cy90aW1lLmg+CisjaW5jbHVkZSA8dGltZS5oPgorI2luY2x1ZGUgPHN5cy9zdGF0Lmg+CisjaW5jbHVkZSA8c3lzL2lvY3RsLmg+CisjaW5jbHVkZSA8c3lzL3Rlcm1pb3MuaD4KKworI2luY2x1ZGUgPGFzc2VydC5oPgorI2luY2x1ZGUgPGVycm5vLmg+CisjaW5jbHVkZSA8bGltaXRzLmg+CisjaW5jbHVkZSA8ZmNudGwuaD4KKyNpbmNsdWRlIDxkaXJlbnQuaD4KKyNpbmNsdWRlIDxjdHlwZS5oPgorI2luY2x1ZGUgPHN0cmluZy5oPgorI2luY2x1ZGUgPHB3ZC5oPgorI2luY2x1ZGUgPGdycC5oPgorI2luY2x1ZGUgPHNpZ25hbC5oPgorI2luY2x1ZGUgPHVuaXN0ZC5oPgorI2lmZGVmIEhBVkVfU1REREVGX0gKKyNpbmNsdWRlIDxzdGRkZWYuaD4KKyNlbmRpZgorI2luY2x1ZGUgPHN0ZGJvb2wuaD4KKyNpbmNsdWRlIDxzdGRhcmcuaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlIDxzdGRpby5oPgorI2luY2x1ZGUgPGdldG9wdC5oPgorCisjaWZkZWYgSEFWRV9FUlJPUl9ICisjaW5jbHVkZSA8ZXJyb3IuaD4KKyNlbmRpZgorCisjaWZkZWYgX1BPU0lYX1BSSU9SSVRZX1NDSEVEVUxJTkcKKyNpbmNsdWRlIDxzY2hlZC5oPgorI2Vsc2UKKyNkZWZpbmUgU0NIRURfT1RIRVIgLTEKKyNkZWZpbmUgU0NIRURfRklGTyAtMQorI2RlZmluZSBTQ0hFRF9SUiAtMQorI2VuZGlmCisKKyNpZiBkZWZpbmVkKE9TTGludXgpCisvKiBUaGlzIGNvbWVzIGZyb20gVEFTS19DT01NX0xFTiBkZWZpbmVkIGluIExpbnV4JyBpbmNsdWRlL2xpbnV4L3NjaGVkLmguICovCisjZGVmaW5lIFBST0NFU1NfTkFNRV9TSVpFIDE1CisjZWxpZiBkZWZpbmVkKE9Tc3Vub3MpCisjZGVmaW5lIFBST0NFU1NfTkFNRV9TSVpFIDE1CisjZWxpZiBkZWZpbmVkKE9TRGFyd2luKQorI2RlZmluZSBQUk9DRVNTX05BTUVfU0laRSAxNgorI2VsaWYgZGVmaW5lZChPU05ldEJTRCkKKyNkZWZpbmUgUFJPQ0VTU19OQU1FX1NJWkUgMTYKKyNlbGlmIGRlZmluZWQoT1NPcGVuQlNEKQorI2RlZmluZSBQUk9DRVNTX05BTUVfU0laRSAxNgorI2VsaWYgZGVmaW5lZChPU0ZyZWVCU0QpCisjZGVmaW5lIFBST0NFU1NfTkFNRV9TSVpFIDE5CisjZW5kaWYKKworI2lmIGRlZmluZWQoU1lTX2lvcHJpb19zZXQpICYmIGRlZmluZWQobGludXgpCisjZGVmaW5lIEhBVkVfSU9QUklPX1NFVAorI2VuZGlmCisKK2VudW0geworCUlPUFJJT19XSE9fUFJPQ0VTUyA9IDEsCisJSU9QUklPX1dIT19QR1JQLAorCUlPUFJJT19XSE9fVVNFUiwKK307CisKK2VudW0geworCUlPUFJJT19DTEFTU19OT05FLAorCUlPUFJJT19DTEFTU19SVCwKKwlJT1BSSU9fQ0xBU1NfQkUsCisJSU9QUklPX0NMQVNTX0lETEUsCit9OworCitlbnVtIGFjdGlvbl9jb2RlIHsKKwlhY3Rpb25fbm9uZSwKKwlhY3Rpb25fc3RhcnQsCisJYWN0aW9uX3N0b3AsCisJYWN0aW9uX3N0YXR1cywKK307CisKK3N0YXRpYyBlbnVtIGFjdGlvbl9jb2RlIGFjdGlvbjsKK3N0YXRpYyBpbnQgdGVzdG1vZGUgPSAwOworc3RhdGljIGludCBxdWlldG1vZGUgPSAwOworc3RhdGljIGludCBleGl0bm9kbyA9IDE7CitzdGF0aWMgaW50IGJhY2tncm91bmQgPSAwOworc3RhdGljIGludCBtcGlkZmlsZSA9IDA7CitzdGF0aWMgaW50IHNpZ25hbF9uciA9IFNJR1RFUk07CitzdGF0aWMgaW50IHVzZXJfaWQgPSAtMTsKK3N0YXRpYyBpbnQgcnVuYXNfdWlkID0gLTE7CitzdGF0aWMgaW50IHJ1bmFzX2dpZCA9IC0xOworc3RhdGljIGNvbnN0IGNoYXIgKnVzZXJzcGVjID0gTlVMTDsKK3N0YXRpYyBjaGFyICpjaGFuZ2V1c2VyID0gTlVMTDsKK3N0YXRpYyBjb25zdCBjaGFyICpjaGFuZ2Vncm91cCA9IE5VTEw7CitzdGF0aWMgY2hhciAqY2hhbmdlcm9vdCA9IE5VTEw7CitzdGF0aWMgY29uc3QgY2hhciAqY2hhbmdlZGlyID0gIi8iOworc3RhdGljIGNvbnN0IGNoYXIgKmNtZG5hbWUgPSBOVUxMOworc3RhdGljIGNoYXIgKmV4ZWNuYW1lID0gTlVMTDsKK3N0YXRpYyBjaGFyICpzdGFydGFzID0gTlVMTDsKK3N0YXRpYyBjb25zdCBjaGFyICpwaWRmaWxlID0gTlVMTDsKK3N0YXRpYyBjaGFyIHdoYXRfc3RvcFsxMDI0XTsKK3N0YXRpYyBjb25zdCBjaGFyICpwcm9nbmFtZSA9ICIiOworc3RhdGljIGludCBuaWNlbGV2ZWwgPSAwOworc3RhdGljIGludCB1bWFza192YWx1ZSA9IC0xOworCisjZGVmaW5lIElPUFJJT19DTEFTU19TSElGVCAxMworI2RlZmluZSBJT1BSSU9fUFJJT19WQUxVRShjbGFzcywgcHJpbykgKCgoY2xhc3MpIDw8IElPUFJJT19DTEFTU19TSElGVCkgfCAocHJpbykpCisjZGVmaW5lIElPX1NDSEVEX1BSSU9fTUlOIDAKKyNkZWZpbmUgSU9fU0NIRURfUFJJT19NQVggNworCitzdGF0aWMgc3RydWN0IHN0YXQgZXhlY19zdGF0OworI2lmIGRlZmluZWQoT1NIdXJkKQorc3RhdGljIHN0cnVjdCBwcm9jX3N0YXRfbGlzdCAqcHJvY3NldCA9IE5VTEw7CisjZW5kaWYKKworLyogTFNCIEluaXQgU2NyaXB0IHByb2Nlc3Mgc3RhdHVzIGV4aXQgY29kZXMuICovCitlbnVtIHN0YXR1c19jb2RlIHsKKwlzdGF0dXNfb2sgPSAwLAorCXN0YXR1c19kZWFkX3BpZGZpbGUgPSAxLAorCXN0YXR1c19kZWFkX2xvY2tmaWxlID0gMiwKKwlzdGF0dXNfZGVhZCA9IDMsCisJc3RhdHVzX3Vua25vd24gPSA0LAorfTsKKworc3RydWN0IHBpZF9saXN0IHsKKwlzdHJ1Y3QgcGlkX2xpc3QgKm5leHQ7CisJcGlkX3QgcGlkOworfTsKKworc3RhdGljIHN0cnVjdCBwaWRfbGlzdCAqZm91bmQgPSBOVUxMOworc3RhdGljIHN0cnVjdCBwaWRfbGlzdCAqa2lsbGVkID0gTlVMTDsKKworLyogUmVzb3VyY2Ugc2NoZWR1bGluZyBwb2xpY3kuICovCitzdHJ1Y3QgcmVzX3NjaGVkdWxlIHsKKwljb25zdCBjaGFyICpwb2xpY3lfbmFtZTsKKwlpbnQgcG9saWN5OworCWludCBwcmlvcml0eTsKK307CisKK3N0cnVjdCBzY2hlZHVsZV9pdGVtIHsKKwllbnVtIHsKKwkJc2NoZWRfdGltZW91dCwKKwkJc2NoZWRfc2lnbmFsLAorCQlzY2hlZF9nb3RvLAorCQkvKiBPbmx5IHNlZW4gd2l0aGluIHBhcnNlX3NjaGVkdWxlIGFuZCBjYWxsZWVzLiAqLworCQlzY2hlZF9mb3JldmVyLAorCX0gdHlwZTsKKwkvKiBTZWNvbmRzLCBzaWduYWwgbm8uLCBvciBpbmRleCBpbnRvIGFycmF5LiAqLworCWludCB2YWx1ZTsKK307CisKK3N0YXRpYyBzdHJ1Y3QgcmVzX3NjaGVkdWxlICpwcm9jX3NjaGVkID0gTlVMTDsKK3N0YXRpYyBzdHJ1Y3QgcmVzX3NjaGVkdWxlICppb19zY2hlZCA9IE5VTEw7CisKK3N0YXRpYyBpbnQgc2NoZWR1bGVfbGVuZ3RoOworc3RhdGljIHN0cnVjdCBzY2hlZHVsZV9pdGVtICpzY2hlZHVsZSA9IE5VTEw7CisKKworc3RhdGljIHZvaWQgRFBLR19BVFRSX1BSSU5URigxKQord2FybmluZyhjb25zdCBjaGFyICpmb3JtYXQsIC4uLikKK3sKKwl2YV9saXN0IGFyZ2xpc3Q7CisKKwlmcHJpbnRmKHN0ZGVyciwgIiVzOiB3YXJuaW5nOiAiLCBwcm9nbmFtZSk7CisJdmFfc3RhcnQoYXJnbGlzdCwgZm9ybWF0KTsKKwl2ZnByaW50ZihzdGRlcnIsIGZvcm1hdCwgYXJnbGlzdCk7CisJdmFfZW5kKGFyZ2xpc3QpOworfQorCitzdGF0aWMgdm9pZCBEUEtHX0FUVFJfTk9SRVQgRFBLR19BVFRSX1BSSU5URigxKQorZmF0YWwoY29uc3QgY2hhciAqZm9ybWF0LCAuLi4pCit7CisJdmFfbGlzdCBhcmdsaXN0OworCWludCBlcnJub19mYXRhbCA9IGVycm5vOworCisJZnByaW50ZihzdGRlcnIsICIlczogIiwgcHJvZ25hbWUpOworCXZhX3N0YXJ0KGFyZ2xpc3QsIGZvcm1hdCk7CisJdmZwcmludGYoc3RkZXJyLCBmb3JtYXQsIGFyZ2xpc3QpOworCXZhX2VuZChhcmdsaXN0KTsKKwlpZiAoZXJybm9fZmF0YWwpCisJCWZwcmludGYoc3RkZXJyLCAiICglcylcbiIsIHN0cmVycm9yKGVycm5vX2ZhdGFsKSk7CisJZWxzZQorCQlmcHJpbnRmKHN0ZGVyciwgIlxuIik7CisKKwlpZiAoYWN0aW9uID09IGFjdGlvbl9zdGF0dXMpCisJCWV4aXQoc3RhdHVzX3Vua25vd24pOworCWVsc2UKKwkJZXhpdCgyKTsKK30KKworc3RhdGljIHZvaWQgKgoreG1hbGxvYyhpbnQgc2l6ZSkKK3sKKwl2b2lkICpwdHI7CisKKwlwdHIgPSBtYWxsb2Moc2l6ZSk7CisJaWYgKHB0cikKKwkJcmV0dXJuIHB0cjsKKwlmYXRhbCgibWFsbG9jKCVkKSBmYWlsZWQiLCBzaXplKTsKK30KKworc3RhdGljIGNoYXIgKgoreHN0cmR1cChjb25zdCBjaGFyICpzdHIpCit7CisJY2hhciAqbmV3X3N0cjsKKworCW5ld19zdHIgPSBzdHJkdXAoc3RyKTsKKwlpZiAobmV3X3N0cikKKwkJcmV0dXJuIG5ld19zdHI7CisJZmF0YWwoInN0cmR1cCglcykgZmFpbGVkIiwgc3RyKTsKK30KKworc3RhdGljIHZvaWQKK3hnZXR0aW1lb2ZkYXkoc3RydWN0IHRpbWV2YWwgKnR2KQoreworCXN0cnVjdCB0aW1lc3BlYyB0cDsKKwlpZiAoY2xvY2tfZ2V0dGltZShDTE9DS19NT05PVE9OSUMsICZ0cCkpCisJCWZhdGFsKCJnZXR0aW1lb2ZkYXkgZmFpbGVkIik7CisKKwkvKgorCSAqIENvbnZlcnQgZnJvbSB0aW1lc3BlYyB0byB0aW1ldmFsCisJICogV2UgZG8gbm90IGNhcmUgYWJvdXQgbWljcm9zZWNvbmRzLCBzZXQgdG8gMAorCSAqLworCXR2LT50dl9zZWMgPSB0cC50dl9zZWM7CisJdHYtPnR2X3VzZWMgPSAwOworfQorCitzdGF0aWMgdm9pZAordG11bChzdHJ1Y3QgdGltZXZhbCAqYSwgaW50IGIpCit7CisJYS0+dHZfc2VjICo9IGI7CisJYS0+dHZfdXNlYyAqPSBiOworCWEtPnR2X3NlYyA9IGEtPnR2X3NlYyArIGEtPnR2X3VzZWMgLyAxMDAwMDAwOworCWEtPnR2X3VzZWMgJT0gMTAwMDAwMDsKK30KKworc3RhdGljIGxvbmcKK2dldF9vcGVuX2ZkX21heCh2b2lkKQoreworI2lmZGVmIEhBVkVfR0VURFRBQkxFU0laRQorCXJldHVybiBnZXRkdGFibGVzaXplKCk7CisjZWxzZQorCXJldHVybiBzeXNjb25mKF9TQ19PUEVOX01BWCk7CisjZW5kaWYKK30KKworI2lmbmRlZiBIQVZFX1NFVFNJRAorc3RhdGljIHZvaWQKK2RldGFjaF9jb250cm9sbGluZ190dHkodm9pZCkKK3sKKyNpZmRlZiBIQVZFX1RJT0NOT1RUWQorCWludCB0dHlfZmQ7CisKKwl0dHlfZmQgPSBvcGVuKCIvZGV2L3R0eSIsIE9fUkRXUik7CisKKwkvKiBUaGUgY3VycmVudCBwcm9jZXNzIGRvZXMgbm90IGhhdmUgYSBjb250cm9sbGluZyB0dHkuICovCisJaWYgKHR0eV9mZCA8IDApCisJCXJldHVybjsKKworCWlmIChpb2N0bCh0dHlfZmQsIFRJT0NOT1RUWSwgMCkgIT0gMCkKKwkJZmF0YWwoInVuYWJsZSB0byBkZXRhY2ggY29udHJvbGxpbmcgdHR5Iik7CisKKwljbG9zZSh0dHlfZmQpOworI2VuZGlmCit9CisjZW5kaWYKKworc3RhdGljIHZvaWQKK2RhZW1vbml6ZSh2b2lkKQoreworCXBpZF90IHBpZDsKKworCWlmIChxdWlldG1vZGUgPCAwKQorCQlwcmludGYoIkRldGFjaGluZyB0byBzdGFydCAlcy4uLiIsIHN0YXJ0YXMpOworCisJcGlkID0gZm9yaygpOworCWlmIChwaWQgPCAwKQorCQlmYXRhbCgidW5hYmxlIHRvIGRvIGZpcnN0IGZvcmsiKTsKKwllbHNlIGlmIChwaWQpIC8qIFBhcmVudC4gKi8KKwkJX2V4aXQoMCk7CisKKwkvKiBDcmVhdGUgYSBuZXcgc2Vzc2lvbi4gKi8KKyNpZmRlZiBIQVZFX1NFVFNJRAorCXNldHNpZCgpOworI2Vsc2UKKwlzZXRwZ2lkKDAsIDApOworCWRldGFjaF9jb250cm9sbGluZ190dHkoKTsKKyNlbmRpZgorCisJcGlkID0gZm9yaygpOworCWlmIChwaWQgPCAwKQorCQlmYXRhbCgidW5hYmxlIHRvIGRvIHNlY29uZCBmb3JrIik7CisJZWxzZSBpZiAocGlkKSAvKiBQYXJlbnQuICovCisJCV9leGl0KDApOworCisJaWYgKHF1aWV0bW9kZSA8IDApCisJCXByaW50ZigiZG9uZS5cbiIpOworfQorCitzdGF0aWMgdm9pZAorcGlkX2xpc3RfcHVzaChzdHJ1Y3QgcGlkX2xpc3QgKipsaXN0LCBwaWRfdCBwaWQpCit7CisJc3RydWN0IHBpZF9saXN0ICpwOworCisJcCA9IHhtYWxsb2Moc2l6ZW9mKCpwKSk7CisJcC0+bmV4dCA9ICpsaXN0OworCXAtPnBpZCA9IHBpZDsKKwkqbGlzdCA9IHA7Cit9CisKK3N0YXRpYyB2b2lkCitwaWRfbGlzdF9mcmVlKHN0cnVjdCBwaWRfbGlzdCAqKmxpc3QpCit7CisJc3RydWN0IHBpZF9saXN0ICpoZXJlLCAqbmV4dDsKKworCWZvciAoaGVyZSA9ICpsaXN0OyBoZXJlICE9IE5VTEw7IGhlcmUgPSBuZXh0KSB7CisJCW5leHQgPSBoZXJlLT5uZXh0OworCQlmcmVlKGhlcmUpOworCX0KKworCSpsaXN0ID0gTlVMTDsKK30KKworc3RhdGljIHZvaWQKK3VzYWdlKHZvaWQpCit7CisJcHJpbnRmKAorIlVzYWdlOiBzdGFydC1zdG9wLWRhZW1vbiBbPG9wdGlvbj4gLi4uXSA8Y29tbWFuZD5cbiIKKyJcbiIKKyJDb21tYW5kczpcbiIKKyIgIC1TfC0tc3RhcnQgLS0gPGFyZ3VtZW50PiAuLi4gIHN0YXJ0IGEgcHJvZ3JhbSBhbmQgcGFzcyA8YXJndW1lbnRzPiB0byBpdFxuIgorIiAgLUt8LS1zdG9wICAgICAgICAgICAgICAgICAgICAgc3RvcCBhIHByb2dyYW1cbiIKKyIgIC1UfC0tc3RhdHVzICAgICAgICAgICAgICAgICAgIGdldCB0aGUgcHJvZ3JhbSBzdGF0dXNcbiIKKyIgIC1IfC0taGVscCAgICAgICAgICAgICAgICAgICAgIHByaW50IGhlbHAgaW5mb3JtYXRpb25cbiIKKyIgIC1WfC0tdmVyc2lvbiAgICAgICAgICAgICAgICAgIHByaW50IHZlcnNpb25cbiIKKyJcbiIKKyJNYXRjaGluZyBvcHRpb25zIChhdCBsZWFzdCBvbmUgaXMgcmVxdWlyZWQpOlxuIgorIiAgLXB8LS1waWRmaWxlIDxwaWQtZmlsZT4gICAgICAgcGlkIGZpbGUgdG8gY2hlY2tcbiIKKyIgIC14fC0tZXhlYyA8ZXhlY3V0YWJsZT4gICAgICAgIHByb2dyYW0gdG8gc3RhcnQvY2hlY2sgaWYgaXQgaXMgcnVubmluZ1xuIgorIiAgLW58LS1uYW1lIDxwcm9jZXNzLW5hbWU+ICAgICAgcHJvY2VzcyBuYW1lIHRvIGNoZWNrXG4iCisiICAtdXwtLXVzZXIgPHVzZXJuYW1lfHVpZD4gICAgICBwcm9jZXNzIG93bmVyIHRvIGNoZWNrXG4iCisiXG4iCisiT3B0aW9uczpcbiIKKyIgIC1nfC0tZ3JvdXAgPGdyb3VwfGdpZD4gICAgICAgIHJ1biBwcm9jZXNzIGFzIHRoaXMgZ3JvdXBcbiIKKyIgIC1jfC0tY2h1aWQgPG5hbWV8dWlkWzpncm91cHxnaWRdPlxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hhbmdlIHRvIHRoaXMgdXNlci9ncm91cCBiZWZvcmUgc3RhcnRpbmdcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvY2Vzc1xuIgorIiAgLXN8LS1zaWduYWwgPHNpZ25hbD4gICAgICAgICAgc2lnbmFsIHRvIHNlbmQgKGRlZmF1bHQgVEVSTSlcbiIKKyIgIC1hfC0tc3RhcnRhcyA8cGF0aG5hbWU+ICAgICAgIHByb2dyYW0gdG8gc3RhcnQgKGRlZmF1bHQgaXMgPGV4ZWN1dGFibGU+KVxuIgorIiAgLXJ8LS1jaHJvb3QgPGRpcmVjdG9yeT4gICAgICAgY2hyb290IHRvIDxkaXJlY3Rvcnk+IGJlZm9yZSBzdGFydGluZ1xuIgorIiAgLWR8LS1jaGRpciA8ZGlyZWN0b3J5PiAgICAgICAgY2hhbmdlIHRvIDxkaXJlY3Rvcnk+IChkZWZhdWx0IGlzIC8pXG4iCisiICAtTnwtLW5pY2VsZXZlbCA8aW5jcj4gICAgICAgICBhZGQgaW5jciB0byB0aGUgcHJvY2VzcycgbmljZSBsZXZlbFxuIgorIiAgLVB8LS1wcm9jc2NoZWQgPHBvbGljeVs6cHJpb10+XG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2UgPHBvbGljeT4gd2l0aCA8cHJpbz4gZm9yIHRoZSBrZXJuZWxcbiIKKyIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvY2VzcyBzY2hlZHVsZXIgKGRlZmF1bHQgcHJpbyBpcyAwKVxuIgorIiAgLUl8LS1pb3NjaGVkIDxjbGFzc1s6cHJpb10+ICAgdXNlIDxjbGFzcz4gd2l0aCA8cHJpbz4gdG8gc2V0IHRoZSBJT1xuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzY2hlZHVsZXIgKGRlZmF1bHQgcHJpbyBpcyA0KVxuIgorIiAgLWt8LS11bWFzayA8bWFzaz4gICAgICAgICAgICAgY2hhbmdlIHRoZSB1bWFzayB0byA8bWFzaz4gYmVmb3JlIHN0YXJ0aW5nXG4iCisiICAtYnwtLWJhY2tncm91bmQgICAgICAgICAgICAgICBmb3JjZSB0aGUgcHJvY2VzcyB0byBkZXRhY2hcbiIKKyIgIC1tfC0tbWFrZS1waWRmaWxlICAgICAgICAgICAgIGNyZWF0ZSB0aGUgcGlkZmlsZSBiZWZvcmUgc3RhcnRpbmdcbiIKKyIgIC1SfC0tcmV0cnkgPHNjaGVkdWxlPiAgICAgICAgIGNoZWNrIHdoZXRoZXIgcHJvY2Vzc2VzIGRpZSwgYW5kIHJldHJ5XG4iCisiICAtdHwtLXRlc3QgICAgICAgICAgICAgICAgICAgICB0ZXN0IG1vZGUsIGRvbid0IGRvIGFueXRoaW5nXG4iCisiICAtb3wtLW9rbm9kbyAgICAgICAgICAgICAgICAgICBleGl0IHN0YXR1cyAwIChub3QgMSkgaWYgbm90aGluZyBkb25lXG4iCisiICAtcXwtLXF1aWV0ICAgICAgICAgICAgICAgICAgICBiZSBtb3JlIHF1aWV0XG4iCisiICAtdnwtLXZlcmJvc2UgICAgICAgICAgICAgICAgICBiZSBtb3JlIHZlcmJvc2VcbiIKKyJcbiIKKyJSZXRyeSA8c2NoZWR1bGU+IGlzIDxpdGVtPnwvPGl0ZW0+Ly4uLiB3aGVyZSA8aXRlbT4gaXMgb25lIG9mXG4iCisiIC08c2lnbmFsLW51bT58Wy1dPHNpZ25hbC1uYW1lPiAgc2VuZCB0aGF0IHNpZ25hbFxuIgorIiA8dGltZW91dD4gICAgICAgICAgICAgICAgICAgICAgIHdhaXQgdGhhdCBtYW55IHNlY29uZHNcbiIKKyIgZm9yZXZlciAgICAgICAgICAgICAgICAgICAgICAgICByZXBlYXQgcmVtYWluZGVyIGZvcmV2ZXJcbiIKKyJvciA8c2NoZWR1bGU+IG1heSBiZSBqdXN0IDx0aW1lb3V0PiwgbWVhbmluZyA8c2lnbmFsPi88dGltZW91dD4vS0lMTC88dGltZW91dD5cbiIKKyJcbiIKKyJUaGUgcHJvY2VzcyBzY2hlZHVsZXIgPHBvbGljeT4gY2FuIGJlIG9uZSBvZjpcbiIKKyIgIG90aGVyLCBmaWZvIG9yIHJyXG4iCisiXG4iCisiVGhlIElPIHNjaGVkdWxlciA8Y2xhc3M+IGNhbiBiZSBvbmUgb2Y6XG4iCisiICByZWFsLXRpbWUsIGJlc3QtZWZmb3J0IG9yIGlkbGVcbiIKKyJcbiIKKyJFeGl0IHN0YXR1czpcbiIKKyIgIDAgPSBkb25lXG4iCisiICAxID0gbm90aGluZyBkb25lICg9PiAwIGlmIC0tb2tub2RvKVxuIgorIiAgMiA9IHdpdGggLS1yZXRyeSwgcHJvY2Vzc2VzIHdvdWxkIG5vdCBkaWVcbiIKKyIgIDMgPSB0cm91YmxlXG4iCisiRXhpdCBzdGF0dXMgd2l0aCAtLXN0YXR1czpcbiIKKyIgIDAgPSBwcm9ncmFtIGlzIHJ1bm5pbmdcbiIKKyIgIDEgPSBwcm9ncmFtIGlzIG5vdCBydW5uaW5nIGFuZCB0aGUgcGlkIGZpbGUgZXhpc3RzXG4iCisiICAzID0gcHJvZ3JhbSBpcyBub3QgcnVubmluZ1xuIgorIiAgNCA9IHVuYWJsZSB0byBkZXRlcm1pbmUgc3RhdHVzXG4iKTsKK30KKworc3RhdGljIHZvaWQKK2RvX3ZlcnNpb24odm9pZCkKK3sKKwlwcmludGYoInN0YXJ0LXN0b3AtZGFlbW9uICVzIGZvciBEZWJpYW5cblxuIiwgVkVSU0lPTik7CisKKwlwcmludGYoIldyaXR0ZW4gYnkgTWFyZWsgTWljaGFsa2lld2ljeiwgcHVibGljIGRvbWFpbi5cbiIpOworfQorCitzdGF0aWMgdm9pZCBEUEtHX0FUVFJfTk9SRVQKK2JhZHVzYWdlKGNvbnN0IGNoYXIgKm1zZykKK3sKKwlpZiAobXNnKQorCQlmcHJpbnRmKHN0ZGVyciwgIiVzOiAlc1xuIiwgcHJvZ25hbWUsIG1zZyk7CisJZnByaW50ZihzdGRlcnIsICJUcnkgJyVzIC0taGVscCcgZm9yIG1vcmUgaW5mb3JtYXRpb24uXG4iLCBwcm9nbmFtZSk7CisKKwlpZiAoYWN0aW9uID09IGFjdGlvbl9zdGF0dXMpCisJCWV4aXQoc3RhdHVzX3Vua25vd24pOworCWVsc2UKKwkJZXhpdCgzKTsKK30KKworc3RydWN0IHNpZ3BhaXIgeworCWNvbnN0IGNoYXIgKm5hbWU7CisJaW50IHNpZ25hbDsKK307CisKK3N0YXRpYyBjb25zdCBzdHJ1Y3Qgc2lncGFpciBzaWdsaXN0W10gPSB7CisJeyAiQUJSVCIsCVNJR0FCUlQJfSwKKwl7ICJBTFJNIiwJU0lHQUxSTQl9LAorCXsgIkZQRSIsCVNJR0ZQRQl9LAorCXsgIkhVUCIsCVNJR0hVUAl9LAorCXsgIklMTCIsCVNJR0lMTAl9LAorCXsgIklOVCIsCVNJR0lOVAl9LAorCXsgIktJTEwiLAlTSUdLSUxMCX0sCisJeyAiUElQRSIsCVNJR1BJUEUJfSwKKwl7ICJRVUlUIiwJU0lHUVVJVAl9LAorCXsgIlNFR1YiLAlTSUdTRUdWCX0sCisJeyAiVEVSTSIsCVNJR1RFUk0JfSwKKwl7ICJVU1IxIiwJU0lHVVNSMQl9LAorCXsgIlVTUjIiLAlTSUdVU1IyCX0sCisJeyAiQ0hMRCIsCVNJR0NITEQJfSwKKwl7ICJDT05UIiwJU0lHQ09OVAl9LAorCXsgIlNUT1AiLAlTSUdTVE9QCX0sCisJeyAiVFNUUCIsCVNJR1RTVFAJfSwKKwl7ICJUVElOIiwJU0lHVFRJTgl9LAorCXsgIlRUT1UiLAlTSUdUVE9VCX0KK307CisKK3N0YXRpYyBpbnQKK3BhcnNlX2ludGVnZXIoY29uc3QgY2hhciAqc3RyaW5nLCBpbnQgKnZhbHVlX3IpCit7CisJdW5zaWduZWQgbG9uZyB1bDsKKwljaGFyICplcDsKKworCWlmICghc3RyaW5nWzBdKQorCQlyZXR1cm4gLTE7CisKKwl1bCA9IHN0cnRvdWwoc3RyaW5nLCAmZXAsIDEwKTsKKwlpZiAoc3RyaW5nID09IGVwIHx8IHVsID4gSU5UX01BWCB8fCAqZXAgIT0gJ1wwJykKKwkJcmV0dXJuIC0xOworCisJKnZhbHVlX3IgPSB1bDsKKwlyZXR1cm4gMDsKK30KKworc3RhdGljIGludAorcGFyc2Vfc2lnbmFsKGNvbnN0IGNoYXIgKnNpZ19zdHIsIGludCAqc2lnX251bSkKK3sKKwl1bnNpZ25lZCBpbnQgaTsKKworCWlmIChwYXJzZV9pbnRlZ2VyKHNpZ19zdHIsIHNpZ19udW0pID09IDApCisJCXJldHVybiAwOworCisJZm9yIChpID0gMDsgaSA8IGFycmF5X2NvdW50KHNpZ2xpc3QpOyBpKyspIHsKKwkJaWYgKHN0cmNtcChzaWdfc3RyLCBzaWdsaXN0W2ldLm5hbWUpID09IDApIHsKKwkJCSpzaWdfbnVtID0gc2lnbGlzdFtpXS5zaWduYWw7CisJCQlyZXR1cm4gMDsKKwkJfQorCX0KKwlyZXR1cm4gLTE7Cit9CisKK3N0YXRpYyBpbnQKK3BhcnNlX3VtYXNrKGNvbnN0IGNoYXIgKnN0cmluZywgaW50ICp2YWx1ZV9yKQoreworCWlmICghc3RyaW5nWzBdKQorCQlyZXR1cm4gLTE7CisKKwllcnJubyA9IDA7CisJKnZhbHVlX3IgPSBzdHJ0b3VsKHN0cmluZywgTlVMTCwgMCk7CisJaWYgKGVycm5vKQorCQlyZXR1cm4gLTE7CisJZWxzZQorCQlyZXR1cm4gMDsKK30KKworc3RhdGljIHZvaWQKK3ZhbGlkYXRlX3Byb2Nfc2NoZWR1bGUodm9pZCkKK3sKKyNpZmRlZiBfUE9TSVhfUFJJT1JJVFlfU0NIRURVTElORworCWludCBwcmlvX21pbiwgcHJpb19tYXg7CisKKwlwcmlvX21pbiA9IHNjaGVkX2dldF9wcmlvcml0eV9taW4ocHJvY19zY2hlZC0+cG9saWN5KTsKKwlwcmlvX21heCA9IHNjaGVkX2dldF9wcmlvcml0eV9tYXgocHJvY19zY2hlZC0+cG9saWN5KTsKKworCWlmIChwcm9jX3NjaGVkLT5wcmlvcml0eSA8IHByaW9fbWluKQorCQliYWR1c2FnZSgicHJvY2VzcyBzY2hlZHVsZXIgcHJpb3JpdHkgbGVzcyB0aGFuIG1pbiIpOworCWlmIChwcm9jX3NjaGVkLT5wcmlvcml0eSA+IHByaW9fbWF4KQorCQliYWR1c2FnZSgicHJvY2VzcyBzY2hlZHVsZXIgcHJpb3JpdHkgZ3JlYXRlciB0aGFuIG1heCIpOworI2VuZGlmCit9CisKK3N0YXRpYyB2b2lkCitwYXJzZV9wcm9jX3NjaGVkdWxlKGNvbnN0IGNoYXIgKnN0cmluZykKK3sKKwljaGFyICpwb2xpY3lfc3RyLCAqcHJpb19zdHI7CisJaW50IHByaW8gPSAwOworCisJcG9saWN5X3N0ciA9IHhzdHJkdXAoc3RyaW5nKTsKKwlwb2xpY3lfc3RyID0gc3RydG9rKHBvbGljeV9zdHIsICI6Iik7CisJcHJpb19zdHIgPSBzdHJ0b2soTlVMTCwgIjoiKTsKKworCWlmIChwcmlvX3N0ciAmJiBwYXJzZV9pbnRlZ2VyKHByaW9fc3RyLCAmcHJpbykgIT0gMCkKKwkJZmF0YWwoImludmFsaWQgcHJvY2VzcyBzY2hlZHVsZXIgcHJpb3JpdHkiKTsKKworCXByb2Nfc2NoZWQgPSB4bWFsbG9jKHNpemVvZigqcHJvY19zY2hlZCkpOworCXByb2Nfc2NoZWQtPnBvbGljeV9uYW1lID0gcG9saWN5X3N0cjsKKworCWlmIChzdHJjbXAocG9saWN5X3N0ciwgIm90aGVyIikgPT0gMCkgeworCQlwcm9jX3NjaGVkLT5wb2xpY3kgPSBTQ0hFRF9PVEhFUjsKKwkJcHJvY19zY2hlZC0+cHJpb3JpdHkgPSAwOworCX0gZWxzZSBpZiAoc3RyY21wKHBvbGljeV9zdHIsICJmaWZvIikgPT0gMCkgeworCQlwcm9jX3NjaGVkLT5wb2xpY3kgPSBTQ0hFRF9GSUZPOworCQlwcm9jX3NjaGVkLT5wcmlvcml0eSA9IHByaW87CisJfSBlbHNlIGlmIChzdHJjbXAocG9saWN5X3N0ciwgInJyIikgPT0gMCkgeworCQlwcm9jX3NjaGVkLT5wb2xpY3kgPSBTQ0hFRF9SUjsKKwkJcHJvY19zY2hlZC0+cHJpb3JpdHkgPSBwcmlvOworCX0gZWxzZQorCQliYWR1c2FnZSgiaW52YWxpZCBwcm9jZXNzIHNjaGVkdWxlciBwb2xpY3kiKTsKKworCXZhbGlkYXRlX3Byb2Nfc2NoZWR1bGUoKTsKK30KKworc3RhdGljIHZvaWQKK3BhcnNlX2lvX3NjaGVkdWxlKGNvbnN0IGNoYXIgKnN0cmluZykKK3sKKwljaGFyICpjbGFzc19zdHIsICpwcmlvX3N0cjsKKwlpbnQgcHJpbyA9IDQ7CisKKwljbGFzc19zdHIgPSB4c3RyZHVwKHN0cmluZyk7CisJY2xhc3Nfc3RyID0gc3RydG9rKGNsYXNzX3N0ciwgIjoiKTsKKwlwcmlvX3N0ciA9IHN0cnRvayhOVUxMLCAiOiIpOworCisJaWYgKHByaW9fc3RyICYmIHBhcnNlX2ludGVnZXIocHJpb19zdHIsICZwcmlvKSAhPSAwKQorCQlmYXRhbCgiaW52YWxpZCBJTyBzY2hlZHVsZXIgcHJpb3JpdHkiKTsKKworCWlvX3NjaGVkID0geG1hbGxvYyhzaXplb2YoKmlvX3NjaGVkKSk7CisJaW9fc2NoZWQtPnBvbGljeV9uYW1lID0gY2xhc3Nfc3RyOworCisJaWYgKHN0cmNtcChjbGFzc19zdHIsICJyZWFsLXRpbWUiKSA9PSAwKSB7CisJCWlvX3NjaGVkLT5wb2xpY3kgPSBJT1BSSU9fQ0xBU1NfUlQ7CisJCWlvX3NjaGVkLT5wcmlvcml0eSA9IHByaW87CisJfSBlbHNlIGlmIChzdHJjbXAoY2xhc3Nfc3RyLCAiYmVzdC1lZmZvcnQiKSA9PSAwKSB7CisJCWlvX3NjaGVkLT5wb2xpY3kgPSBJT1BSSU9fQ0xBU1NfQkU7CisJCWlvX3NjaGVkLT5wcmlvcml0eSA9IHByaW87CisJfSBlbHNlIGlmIChzdHJjbXAoY2xhc3Nfc3RyLCAiaWRsZSIpID09IDApIHsKKwkJaW9fc2NoZWQtPnBvbGljeSA9IElPUFJJT19DTEFTU19JRExFOworCQlpb19zY2hlZC0+cHJpb3JpdHkgPSA3OworCX0gZWxzZQorCQliYWR1c2FnZSgiaW52YWxpZCBJTyBzY2hlZHVsZXIgcG9saWN5Iik7CisKKwlpZiAoaW9fc2NoZWQtPnByaW9yaXR5IDwgSU9fU0NIRURfUFJJT19NSU4pCisJCWJhZHVzYWdlKCJJTyBzY2hlZHVsZXIgcHJpb3JpdHkgbGVzcyB0aGFuIG1pbiIpOworCWlmIChpb19zY2hlZC0+cHJpb3JpdHkgPiBJT19TQ0hFRF9QUklPX01BWCkKKwkJYmFkdXNhZ2UoIklPIHNjaGVkdWxlciBwcmlvcml0eSBncmVhdGVyIHRoYW4gbWF4Iik7Cit9CisKK3N0YXRpYyB2b2lkCitzZXRfcHJvY19zY2hlZHVsZShzdHJ1Y3QgcmVzX3NjaGVkdWxlICpzY2hlZCkKK3sKKyNpZmRlZiBfUE9TSVhfUFJJT1JJVFlfU0NIRURVTElORworCXN0cnVjdCBzY2hlZF9wYXJhbSBwYXJhbTsKKworCXBhcmFtLnNjaGVkX3ByaW9yaXR5ID0gc2NoZWQtPnByaW9yaXR5OworCisJaWYgKHNjaGVkX3NldHNjaGVkdWxlcihnZXRwaWQoKSwgc2NoZWQtPnBvbGljeSwgJnBhcmFtKSA9PSAtMSkKKwkJZmF0YWwoInVuYWJsZSB0byBzZXQgcHJvY2VzcyBzY2hlZHVsZXIiKTsKKyNlbmRpZgorfQorCisjaWZkZWYgSEFWRV9JT1BSSU9fU0VUCitzdGF0aWMgaW5saW5lIGludAoraW9wcmlvX3NldChpbnQgd2hpY2gsIGludCB3aG8sIGludCBpb3ByaW8pCit7CisJcmV0dXJuIHN5c2NhbGwoU1lTX2lvcHJpb19zZXQsIHdoaWNoLCB3aG8sIGlvcHJpbyk7Cit9CisjZW5kaWYKKworc3RhdGljIHZvaWQKK3NldF9pb19zY2hlZHVsZShzdHJ1Y3QgcmVzX3NjaGVkdWxlICpzY2hlZCkKK3sKKyNpZmRlZiBIQVZFX0lPUFJJT19TRVQKKwlpbnQgaW9fc2NoZWRfbWFzazsKKworCWlvX3NjaGVkX21hc2sgPSBJT1BSSU9fUFJJT19WQUxVRShzY2hlZC0+cG9saWN5LCBzY2hlZC0+cHJpb3JpdHkpOworCWlmIChpb3ByaW9fc2V0KElPUFJJT19XSE9fUFJPQ0VTUywgZ2V0cGlkKCksIGlvX3NjaGVkX21hc2spID09IC0xKQorCQl3YXJuaW5nKCJ1bmFibGUgdG8gYWx0ZXIgSU8gcHJpb3JpdHkgdG8gbWFzayAlaSAoJXMpXG4iLAorCQkgICAgICAgIGlvX3NjaGVkX21hc2ssIHN0cmVycm9yKGVycm5vKSk7CisjZW5kaWYKK30KKworc3RhdGljIHZvaWQKK3BhcnNlX3NjaGVkdWxlX2l0ZW0oY29uc3QgY2hhciAqc3RyaW5nLCBzdHJ1Y3Qgc2NoZWR1bGVfaXRlbSAqaXRlbSkKK3sKKwljb25zdCBjaGFyICphZnRlcl9oeXBoOworCisJaWYgKCFzdHJjbXAoc3RyaW5nLCAiZm9yZXZlciIpKSB7CisJCWl0ZW0tPnR5cGUgPSBzY2hlZF9mb3JldmVyOworCX0gZWxzZSBpZiAoaXNkaWdpdChzdHJpbmdbMF0pKSB7CisJCWl0ZW0tPnR5cGUgPSBzY2hlZF90aW1lb3V0OworCQlpZiAocGFyc2VfaW50ZWdlcihzdHJpbmcsICZpdGVtLT52YWx1ZSkgIT0gMCkKKwkJCWJhZHVzYWdlKCJpbnZhbGlkIHRpbWVvdXQgdmFsdWUgaW4gc2NoZWR1bGUiKTsKKwl9IGVsc2UgaWYgKChhZnRlcl9oeXBoID0gc3RyaW5nICsgKHN0cmluZ1swXSA9PSAnLScpKSAmJgorCSAgICAgICAgICAgcGFyc2Vfc2lnbmFsKGFmdGVyX2h5cGgsICZpdGVtLT52YWx1ZSkgPT0gMCkgeworCQlpdGVtLT50eXBlID0gc2NoZWRfc2lnbmFsOworCX0gZWxzZSB7CisJCWJhZHVzYWdlKCJpbnZhbGlkIHNjaGVkdWxlIGl0ZW0gKG11c3QgYmUgWy1dPHNpZ25hbC1uYW1lPiwgIgorCQkgICAgICAgICAiLTxzaWduYWwtbnVtYmVyPiwgPHRpbWVvdXQ+IG9yICdmb3JldmVyJyIpOworCX0KK30KKworc3RhdGljIHZvaWQKK3BhcnNlX3NjaGVkdWxlKGNvbnN0IGNoYXIgKnNjaGVkdWxlX3N0cikKK3sKKwljaGFyIGl0ZW1fYnVmWzIwXTsKKwljb25zdCBjaGFyICpzbGFzaDsKKwlpbnQgY291bnQsIHJlcGVhdGF0OworCXNpemVfdCBzdHJfbGVuOworCisJY291bnQgPSAwOworCWZvciAoc2xhc2ggPSBzY2hlZHVsZV9zdHI7ICpzbGFzaDsgc2xhc2grKykKKwkJaWYgKCpzbGFzaCA9PSAnLycpCisJCQljb3VudCsrOworCisJc2NoZWR1bGVfbGVuZ3RoID0gKGNvdW50ID09IDApID8gNCA6IGNvdW50ICsgMTsKKwlzY2hlZHVsZSA9IHhtYWxsb2Moc2l6ZW9mKCpzY2hlZHVsZSkgKiBzY2hlZHVsZV9sZW5ndGgpOworCisJaWYgKGNvdW50ID09IDApIHsKKwkJc2NoZWR1bGVbMF0udHlwZSA9IHNjaGVkX3NpZ25hbDsKKwkJc2NoZWR1bGVbMF0udmFsdWUgPSBzaWduYWxfbnI7CisJCXBhcnNlX3NjaGVkdWxlX2l0ZW0oc2NoZWR1bGVfc3RyLCAmc2NoZWR1bGVbMV0pOworCQlpZiAoc2NoZWR1bGVbMV0udHlwZSAhPSBzY2hlZF90aW1lb3V0KSB7CisJCQliYWR1c2FnZSAoIi0tcmV0cnkgdGFrZXMgdGltZW91dCwgb3Igc2NoZWR1bGUgbGlzdCIKKwkJCSAgICAgICAgICAiIG9mIGF0IGxlYXN0IHR3byBpdGVtcyIpOworCQl9CisJCXNjaGVkdWxlWzJdLnR5cGUgPSBzY2hlZF9zaWduYWw7CisJCXNjaGVkdWxlWzJdLnZhbHVlID0gU0lHS0lMTDsKKwkJc2NoZWR1bGVbM10gPSBzY2hlZHVsZVsxXTsKKwl9IGVsc2UgeworCQljb3VudCA9IDA7CisJCXJlcGVhdGF0ID0gLTE7CisJCXdoaWxlIChzY2hlZHVsZV9zdHIgIT0gTlVMTCkgeworCQkJc2xhc2ggPSBzdHJjaHIoc2NoZWR1bGVfc3RyLCAnLycpOworCQkJc3RyX2xlbiA9IHNsYXNoID8gKHNpemVfdCkoc2xhc2ggLSBzY2hlZHVsZV9zdHIpIDogc3RybGVuKHNjaGVkdWxlX3N0cik7CisJCQlpZiAoc3RyX2xlbiA+PSBzaXplb2YoaXRlbV9idWYpKQorCQkJCWJhZHVzYWdlKCJpbnZhbGlkIHNjaGVkdWxlIGl0ZW06IGZhciB0b28gbG9uZyIKKwkJCQkgICAgICAgICAiICh5b3UgbXVzdCBkZWxpbWl0IGl0ZW1zIHdpdGggc2xhc2hlcykiKTsKKwkJCW1lbWNweShpdGVtX2J1Ziwgc2NoZWR1bGVfc3RyLCBzdHJfbGVuKTsKKwkJCWl0ZW1fYnVmW3N0cl9sZW5dID0gJ1wwJzsKKwkJCXNjaGVkdWxlX3N0ciA9IHNsYXNoID8gc2xhc2ggKyAxIDogTlVMTDsKKworCQkJcGFyc2Vfc2NoZWR1bGVfaXRlbShpdGVtX2J1ZiwgJnNjaGVkdWxlW2NvdW50XSk7CisJCQlpZiAoc2NoZWR1bGVbY291bnRdLnR5cGUgPT0gc2NoZWRfZm9yZXZlcikgeworCQkJCWlmIChyZXBlYXRhdCA+PSAwKQorCQkJCQliYWR1c2FnZSgiaW52YWxpZCBzY2hlZHVsZTogJ2ZvcmV2ZXInIgorCQkJCQkgICAgICAgICAiIGFwcGVhcnMgbW9yZSB0aGFuIG9uY2UiKTsKKwkJCQlyZXBlYXRhdCA9IGNvdW50OworCQkJCWNvbnRpbnVlOworCQkJfQorCQkJY291bnQrKzsKKwkJfQorCQlpZiAocmVwZWF0YXQgPT0gY291bnQpCisJCQliYWR1c2FnZSgiaW52YWxpZCBzY2hlZHVsZTogJ2ZvcmV2ZXInIGFwcGVhcnMgbGFzdCwgIgorCQkJICAgICAgICAgIm5vdGhpbmcgdG8gcmVwZWF0Iik7CisJCWlmIChyZXBlYXRhdCA+PSAwKSB7CisJCQlzY2hlZHVsZVtjb3VudF0udHlwZSA9IHNjaGVkX2dvdG87CisJCQlzY2hlZHVsZVtjb3VudF0udmFsdWUgPSByZXBlYXRhdDsKKwkJCWNvdW50Kys7CisJCX0KKwkJYXNzZXJ0KGNvdW50ID09IHNjaGVkdWxlX2xlbmd0aCk7CisJfQorfQorCitzdGF0aWMgdm9pZAorc2V0X2FjdGlvbihlbnVtIGFjdGlvbl9jb2RlIG5ld19hY3Rpb24pCit7CisJaWYgKGFjdGlvbiA9PSBuZXdfYWN0aW9uKQorCQlyZXR1cm47CisKKwlpZiAoYWN0aW9uICE9IGFjdGlvbl9ub25lKQorCQliYWR1c2FnZSgib25seSBvbmUgY29tbWFuZCBjYW4gYmUgc3BlY2lmaWVkIik7CisKKwlhY3Rpb24gPSBuZXdfYWN0aW9uOworfQorCitzdGF0aWMgdm9pZAorcGFyc2Vfb3B0aW9ucyhpbnQgYXJnYywgY2hhciAqIGNvbnN0ICphcmd2KQoreworCXN0YXRpYyBzdHJ1Y3Qgb3B0aW9uIGxvbmdvcHRzW10gPSB7CisJCXsgImhlbHAiLAkgIDAsIE5VTEwsICdIJ30sCisJCXsgInN0b3AiLAkgIDAsIE5VTEwsICdLJ30sCisJCXsgInN0YXJ0IiwJICAwLCBOVUxMLCAnUyd9LAorCQl7ICJzdGF0dXMiLAkgIDAsIE5VTEwsICdUJ30sCisJCXsgInZlcnNpb24iLAkgIDAsIE5VTEwsICdWJ30sCisJCXsgInN0YXJ0YXMiLAkgIDEsIE5VTEwsICdhJ30sCisJCXsgIm5hbWUiLAkgIDEsIE5VTEwsICduJ30sCisJCXsgIm9rbm9kbyIsCSAgMCwgTlVMTCwgJ28nfSwKKwkJeyAicGlkZmlsZSIsCSAgMSwgTlVMTCwgJ3AnfSwKKwkJeyAicXVpZXQiLAkgIDAsIE5VTEwsICdxJ30sCisJCXsgInNpZ25hbCIsCSAgMSwgTlVMTCwgJ3MnfSwKKwkJeyAidGVzdCIsCSAgMCwgTlVMTCwgJ3QnfSwKKwkJeyAidXNlciIsCSAgMSwgTlVMTCwgJ3UnfSwKKwkJeyAiZ3JvdXAiLAkgIDEsIE5VTEwsICdnJ30sCisJCXsgImNocm9vdCIsCSAgMSwgTlVMTCwgJ3InfSwKKwkJeyAidmVyYm9zZSIsCSAgMCwgTlVMTCwgJ3YnfSwKKwkJeyAiZXhlYyIsCSAgMSwgTlVMTCwgJ3gnfSwKKwkJeyAiY2h1aWQiLAkgIDEsIE5VTEwsICdjJ30sCisJCXsgIm5pY2VsZXZlbCIsCSAgMSwgTlVMTCwgJ04nfSwKKwkJeyAicHJvY3NjaGVkIiwJICAxLCBOVUxMLCAnUCd9LAorCQl7ICJpb3NjaGVkIiwJICAxLCBOVUxMLCAnSSd9LAorCQl7ICJ1bWFzayIsCSAgMSwgTlVMTCwgJ2snfSwKKwkJeyAiYmFja2dyb3VuZCIsCSAgMCwgTlVMTCwgJ2InfSwKKwkJeyAibWFrZS1waWRmaWxlIiwgMCwgTlVMTCwgJ20nfSwKKwkJeyAicmV0cnkiLAkgIDEsIE5VTEwsICdSJ30sCisJCXsgImNoZGlyIiwJICAxLCBOVUxMLCAnZCd9LAorCQl7IE5VTEwsCQkgIDAsIE5VTEwsIDAgIH0KKwl9OworCWNvbnN0IGNoYXIgKnVtYXNrX3N0ciA9IE5VTEw7CisJY29uc3QgY2hhciAqc2lnbmFsX3N0ciA9IE5VTEw7CisJY29uc3QgY2hhciAqc2NoZWR1bGVfc3RyID0gTlVMTDsKKwljb25zdCBjaGFyICpwcm9jX3NjaGVkdWxlX3N0ciA9IE5VTEw7CisJY29uc3QgY2hhciAqaW9fc2NoZWR1bGVfc3RyID0gTlVMTDsKKwlpbnQgYzsKKworCWZvciAoOzspIHsKKwkJYyA9IGdldG9wdF9sb25nKGFyZ2MsIGFyZ3YsCisJCSAgICAgICAgICAgICAgICAiSEtTVlRhOm46b3A6cXI6czp0dTp2eDpjOk46UDpJOms6Ym1SOmc6ZDoiLAorCQkgICAgICAgICAgICAgICAgbG9uZ29wdHMsIE5VTEwpOworCQlpZiAoYyA9PSAtMSkKKwkJCWJyZWFrOworCQlzd2l0Y2ggKGMpIHsKKwkJY2FzZSAnSCc6ICAvKiAtLWhlbHAgKi8KKwkJCXVzYWdlKCk7CisJCQlleGl0KDApOworCQljYXNlICdLJzogIC8qIC0tc3RvcCAqLworCQkJc2V0X2FjdGlvbihhY3Rpb25fc3RvcCk7CisJCQlicmVhazsKKwkJY2FzZSAnUyc6ICAvKiAtLXN0YXJ0ICovCisJCQlzZXRfYWN0aW9uKGFjdGlvbl9zdGFydCk7CisJCQlicmVhazsKKwkJY2FzZSAnVCc6ICAvKiAtLXN0YXR1cyAqLworCQkJc2V0X2FjdGlvbihhY3Rpb25fc3RhdHVzKTsKKwkJCWJyZWFrOworCQljYXNlICdWJzogIC8qIC0tdmVyc2lvbiAqLworCQkJZG9fdmVyc2lvbigpOworCQkJZXhpdCgwKTsKKwkJY2FzZSAnYSc6ICAvKiAtLXN0YXJ0YXMgPHBhdGhuYW1lPiAqLworCQkJc3RhcnRhcyA9IG9wdGFyZzsKKwkJCWJyZWFrOworCQljYXNlICduJzogIC8qIC0tbmFtZSA8cHJvY2Vzcy1uYW1lPiAqLworCQkJY21kbmFtZSA9IG9wdGFyZzsKKwkJCWJyZWFrOworCQljYXNlICdvJzogIC8qIC0tb2tub2RvICovCisJCQlleGl0bm9kbyA9IDA7CisJCQlicmVhazsKKwkJY2FzZSAncCc6ICAvKiAtLXBpZGZpbGUgPHBpZC1maWxlPiAqLworCQkJcGlkZmlsZSA9IG9wdGFyZzsKKwkJCWJyZWFrOworCQljYXNlICdxJzogIC8qIC0tcXVpZXQgKi8KKwkJCXF1aWV0bW9kZSA9IDE7CisJCQlicmVhazsKKwkJY2FzZSAncyc6ICAvKiAtLXNpZ25hbCA8c2lnbmFsPiAqLworCQkJc2lnbmFsX3N0ciA9IG9wdGFyZzsKKwkJCWJyZWFrOworCQljYXNlICd0JzogIC8qIC0tdGVzdCAqLworCQkJdGVzdG1vZGUgPSAxOworCQkJYnJlYWs7CisJCWNhc2UgJ3UnOiAgLyogLS11c2VyIDx1c2VybmFtZT58PHVpZD4gKi8KKwkJCXVzZXJzcGVjID0gb3B0YXJnOworCQkJYnJlYWs7CisJCWNhc2UgJ3YnOiAgLyogLS12ZXJib3NlICovCisJCQlxdWlldG1vZGUgPSAtMTsKKwkJCWJyZWFrOworCQljYXNlICd4JzogIC8qIC0tZXhlYyA8ZXhlY3V0YWJsZT4gKi8KKwkJCWV4ZWNuYW1lID0gb3B0YXJnOworCQkJYnJlYWs7CisJCWNhc2UgJ2MnOiAgLyogLS1jaHVpZCA8dXNlcm5hbWU+fDx1aWQ+ICovCisJCQkvKiBXZSBjb3B5IHRoZSBzdHJpbmcganVzdCBpbiBjYXNlIHdlIG5lZWQgdGhlCisJCQkgKiBhcmd1bWVudCBsYXRlci4gKi8KKwkJCWNoYW5nZXVzZXIgPSB4c3RyZHVwKG9wdGFyZyk7CisJCQljaGFuZ2V1c2VyID0gc3RydG9rKGNoYW5nZXVzZXIsICI6Iik7CisJCQljaGFuZ2Vncm91cCA9IHN0cnRvayhOVUxMLCAiOiIpOworCQkJYnJlYWs7CisJCWNhc2UgJ2cnOiAgLyogLS1ncm91cCA8Z3JvdXA+fDxnaWQ+ICovCisJCQljaGFuZ2Vncm91cCA9IG9wdGFyZzsKKwkJCWJyZWFrOworCQljYXNlICdyJzogIC8qIC0tY2hyb290IC9uZXcvcm9vdCAqLworCQkJY2hhbmdlcm9vdCA9IG9wdGFyZzsKKwkJCWJyZWFrOworCQljYXNlICdOJzogIC8qIC0tbmljZSAqLworCQkJbmljZWxldmVsID0gYXRvaShvcHRhcmcpOworCQkJYnJlYWs7CisJCWNhc2UgJ1AnOiAgLyogLS1wcm9jc2NoZWQgKi8KKwkJCXByb2Nfc2NoZWR1bGVfc3RyID0gb3B0YXJnOworCQkJYnJlYWs7CisJCWNhc2UgJ0knOiAgLyogLS1pb3NjaGVkICovCisJCQlpb19zY2hlZHVsZV9zdHIgPSBvcHRhcmc7CisJCQlicmVhazsKKwkJY2FzZSAnayc6ICAvKiAtLXVtYXNrIDxtYXNrPiAqLworCQkJdW1hc2tfc3RyID0gb3B0YXJnOworCQkJYnJlYWs7CisJCWNhc2UgJ2InOiAgLyogLS1iYWNrZ3JvdW5kICovCisJCQliYWNrZ3JvdW5kID0gMTsKKwkJCWJyZWFrOworCQljYXNlICdtJzogIC8qIC0tbWFrZS1waWRmaWxlICovCisJCQltcGlkZmlsZSA9IDE7CisJCQlicmVhazsKKwkJY2FzZSAnUic6ICAvKiAtLXJldHJ5IDxzY2hlZHVsZT58PHRpbWVvdXQ+ICovCisJCQlzY2hlZHVsZV9zdHIgPSBvcHRhcmc7CisJCQlicmVhazsKKwkJY2FzZSAnZCc6ICAvKiAtLWNoZGlyIC9uZXcvZGlyICovCisJCQljaGFuZ2VkaXIgPSBvcHRhcmc7CisJCQlicmVhazsKKwkJZGVmYXVsdDoKKwkJCS8qIE1lc3NhZ2UgcHJpbnRlZCBieSBnZXRvcHQuICovCisJCQliYWR1c2FnZShOVUxMKTsKKwkJfQorCX0KKworCWlmIChzaWduYWxfc3RyICE9IE5VTEwpIHsKKwkJaWYgKHBhcnNlX3NpZ25hbChzaWduYWxfc3RyLCAmc2lnbmFsX25yKSAhPSAwKQorCQkJYmFkdXNhZ2UoInNpZ25hbCB2YWx1ZSBtdXN0IGJlIG51bWVyaWMgb3IgbmFtZSIKKwkJCSAgICAgICAgICIgb2Ygc2lnbmFsIChLSUxMLCBJTlQsIC4uLikiKTsKKwl9CisKKwlpZiAoc2NoZWR1bGVfc3RyICE9IE5VTEwpIHsKKwkJcGFyc2Vfc2NoZWR1bGUoc2NoZWR1bGVfc3RyKTsKKwl9CisKKwlpZiAocHJvY19zY2hlZHVsZV9zdHIgIT0gTlVMTCkKKwkJcGFyc2VfcHJvY19zY2hlZHVsZShwcm9jX3NjaGVkdWxlX3N0cik7CisKKwlpZiAoaW9fc2NoZWR1bGVfc3RyICE9IE5VTEwpCisJCXBhcnNlX2lvX3NjaGVkdWxlKGlvX3NjaGVkdWxlX3N0cik7CisKKwlpZiAodW1hc2tfc3RyICE9IE5VTEwpIHsKKwkJaWYgKHBhcnNlX3VtYXNrKHVtYXNrX3N0ciwgJnVtYXNrX3ZhbHVlKSAhPSAwKQorCQkJYmFkdXNhZ2UoInVtYXNrIHZhbHVlIG11c3QgYmUgYSBwb3NpdGl2ZSBudW1iZXIiKTsKKwl9CisKKwlpZiAoYWN0aW9uID09IGFjdGlvbl9ub25lKQorCQliYWR1c2FnZSgibmVlZCBvbmUgb2YgLS1zdGFydCBvciAtLXN0b3Agb3IgLS1zdGF0dXMiKTsKKworCWlmICghZXhlY25hbWUgJiYgIXBpZGZpbGUgJiYgIXVzZXJzcGVjICYmICFjbWRuYW1lKQorCQliYWR1c2FnZSgibmVlZCBhdCBsZWFzdCBvbmUgb2YgLS1leGVjLCAtLXBpZGZpbGUsIC0tdXNlciBvciAtLW5hbWUiKTsKKworI2lmZGVmIFBST0NFU1NfTkFNRV9TSVpFCisJaWYgKGNtZG5hbWUgJiYgc3RybGVuKGNtZG5hbWUpID4gUFJPQ0VTU19OQU1FX1NJWkUpCisJCXdhcm5pbmcoInRoaXMgc3lzdGVtIGlzIG5vdCBhYmxlIHRvIHRyYWNrIHByb2Nlc3MgbmFtZXNcbiIKKwkJICAgICAgICAibG9uZ2VyIHRoYW4gJWQgY2hhcmFjdGVycywgcGxlYXNlIHVzZSAtLWV4ZWMgIgorCQkgICAgICAgICJpbnN0ZWFkIG9mIC0tbmFtZS5cbiIsIFBST0NFU1NfTkFNRV9TSVpFKTsKKyNlbmRpZgorCisJaWYgKCFzdGFydGFzKQorCQlzdGFydGFzID0gZXhlY25hbWU7CisKKwlpZiAoYWN0aW9uID09IGFjdGlvbl9zdGFydCAmJiAhc3RhcnRhcykKKwkJYmFkdXNhZ2UoIi0tc3RhcnQgbmVlZHMgLS1leGVjIG9yIC0tc3RhcnRhcyIpOworCisJaWYgKG1waWRmaWxlICYmIHBpZGZpbGUgPT0gTlVMTCkKKwkJYmFkdXNhZ2UoIi0tbWFrZS1waWRmaWxlIHJlcXVpcmVzIC0tcGlkZmlsZSIpOworCisJaWYgKGJhY2tncm91bmQgJiYgYWN0aW9uICE9IGFjdGlvbl9zdGFydCkKKwkJYmFkdXNhZ2UoIi0tYmFja2dyb3VuZCBpcyBvbmx5IHJlbGV2YW50IHdpdGggLS1zdGFydCIpOworfQorCisjaWYgZGVmaW5lZChPU0h1cmQpCitzdGF0aWMgdm9pZAoraW5pdF9wcm9jc2V0KHZvaWQpCit7CisJc3RydWN0IHBzX2NvbnRleHQgKmNvbnRleHQ7CisJZXJyb3JfdCBlcnI7CisKKwllcnIgPSBwc19jb250ZXh0X2NyZWF0ZShnZXRwcm9jKCksICZjb250ZXh0KTsKKwlpZiAoZXJyKQorCQllcnJvcigxLCBlcnIsICJwc19jb250ZXh0X2NyZWF0ZSIpOworCisJZXJyID0gcHJvY19zdGF0X2xpc3RfY3JlYXRlKGNvbnRleHQsICZwcm9jc2V0KTsKKwlpZiAoZXJyKQorCQllcnJvcigxLCBlcnIsICJwcm9jX3N0YXRfbGlzdF9jcmVhdGUiKTsKKworCWVyciA9IHByb2Nfc3RhdF9saXN0X2FkZF9hbGwocHJvY3NldCwgMCwgMCk7CisJaWYgKGVycikKKwkJZXJyb3IoMSwgZXJyLCAicHJvY19zdGF0X2xpc3RfYWRkX2FsbCIpOworfQorCitzdGF0aWMgc3RydWN0IHByb2Nfc3RhdCAqCitnZXRfcHJvY19zdGF0IChwaWRfdCBwaWQsIHBzX2ZsYWdzX3QgZmxhZ3MpCit7CisJc3RydWN0IHByb2Nfc3RhdCAqcHM7CisJcHNfZmxhZ3NfdCB3YW50ZWRfZmxhZ3MgPSBQU1RBVF9QSUQgfCBmbGFnczsKKworCWlmICghcHJvY3NldCkKKwkJaW5pdF9wcm9jc2V0KCk7CisKKwlwcyA9IHByb2Nfc3RhdF9saXN0X3BpZF9wcm9jX3N0YXQocHJvY3NldCwgcGlkKTsKKwlpZiAoIXBzKQorCQlyZXR1cm4gTlVMTDsKKwlpZiAocHJvY19zdGF0X3NldF9mbGFncyhwcywgd2FudGVkX2ZsYWdzKSkKKwkJcmV0dXJuIE5VTEw7CisJaWYgKChwcm9jX3N0YXRfZmxhZ3MocHMpICYgd2FudGVkX2ZsYWdzKSAhPSB3YW50ZWRfZmxhZ3MpCisJCXJldHVybiBOVUxMOworCisJcmV0dXJuIHBzOworfQorI2VuZGlmCisKKyNpZiBkZWZpbmVkKE9TTGludXgpCitzdGF0aWMgYm9vbAorcGlkX2lzX2V4ZWMocGlkX3QgcGlkLCBjb25zdCBzdHJ1Y3Qgc3RhdCAqZXNiKQoreworCWNoYXIgbG5hbWVbMzJdOworCWNoYXIgbGNvbnRlbnRzW19QT1NJWF9QQVRIX01BWF07CisJY29uc3QgY2hhciBkZWxldGVkW10gPSAiIChkZWxldGVkKSI7CisJaW50IG5yZWFkOworCXN0cnVjdCBzdGF0IHNiOworCisJc3ByaW50ZihsbmFtZSwgIi9wcm9jLyVkL2V4ZSIsIHBpZCk7CisJbnJlYWQgPSByZWFkbGluayhsbmFtZSwgbGNvbnRlbnRzLCBzaXplb2YobGNvbnRlbnRzKSk7CisJaWYgKG5yZWFkID09IC0xKQorCQlyZXR1cm4gZmFsc2U7CisKKwlsY29udGVudHNbbnJlYWRdID0gJ1wwJzsKKwlpZiAoc3RyY21wKGxjb250ZW50cyArIG5yZWFkIC0gc3RybGVuKGRlbGV0ZWQpLCBkZWxldGVkKSA9PSAwKQorCQlsY29udGVudHNbbnJlYWQgLSBzdHJsZW4oZGVsZXRlZCldID0gJ1wwJzsKKworCWlmIChzdGF0KGxjb250ZW50cywgJnNiKSAhPSAwKQorCQlyZXR1cm4gZmFsc2U7CisKKwlyZXR1cm4gKHNiLnN0X2RldiA9PSBlc2ItPnN0X2RldiAmJiBzYi5zdF9pbm8gPT0gZXNiLT5zdF9pbm8pOworfQorI2VsaWYgZGVmaW5lZChPU2hwdXgpCitzdGF0aWMgYm9vbAorcGlkX2lzX2V4ZWMocGlkX3QgcGlkLCBjb25zdCBzdHJ1Y3Qgc3RhdCAqZXNiKQoreworCXN0cnVjdCBwc3Rfc3RhdHVzIHBzdDsKKworCWlmIChwc3RhdF9nZXRwcm9jKCZwc3QsIHNpemVvZihwc3QpLCAoc2l6ZV90KTAsIChpbnQpcGlkKSA8IDApCisJCXJldHVybiBmYWxzZTsKKwlyZXR1cm4gKChkZXZfdClwc3QucHN0X3RleHQucHNmX2ZzaWQucHNmc19pZCA9PSBlc2ItPnN0X2RldiAmJgorCSAgICAgICAgKGlub190KXBzdC5wc3RfdGV4dC5wc2ZfZmlsZWlkID09IGVzYi0+c3RfaW5vKTsKK30KKyNlbGlmIGRlZmluZWQoSEFWRV9LVk1fSCkKK3N0YXRpYyBib29sCitwaWRfaXNfZXhlYyhwaWRfdCBwaWQsIGNvbnN0IGNoYXIgKm5hbWUpCit7CisJa3ZtX3QgKmtkOworCWludCBuZW50cmllczsKKwlzdHJ1Y3Qga2luZm9fcHJvYyAqa3A7CisJY2hhciBlcnJidWZbX1BPU0lYMl9MSU5FX01BWF0sICpwaWRleGVjOworCisJa2QgPSBrdm1fb3BlbmZpbGVzKE5VTEwsIE5VTEwsIE5VTEwsIE9fUkRPTkxZLCBlcnJidWYpOworCWlmIChrZCA9PSBOVUxMKQorCQllcnJ4KDEsICIlcyIsIGVycmJ1Zik7CisJa3AgPSBrdm1fZ2V0cHJvY3Moa2QsIEtFUk5fUFJPQ19QSUQsIHBpZCwgJm5lbnRyaWVzKTsKKwlpZiAoa3AgPT0gTlVMTCkKKwkJZXJyeCgxLCAiJXMiLCBrdm1fZ2V0ZXJyKGtkKSk7CisJcGlkZXhlYyA9ICgma3AtPmtwX3Byb2MpLT5wX2NvbW07CisJaWYgKHN0cmxlbihuYW1lKSAhPSBzdHJsZW4ocGlkZXhlYykpCisJCXJldHVybiBmYWxzZTsKKwlyZXR1cm4gKHN0cmNtcChuYW1lLCBwaWRleGVjKSA9PSAwKSA/IDEgOiAwOworfQorI2VuZGlmCisKKyNpZiBkZWZpbmVkKE9TTGludXgpCitzdGF0aWMgYm9vbAorcGlkX2lzX3VzZXIocGlkX3QgcGlkLCB1aWRfdCB1aWQpCit7CisJc3RydWN0IHN0YXQgc2I7CisJY2hhciBidWZbMzJdOworCisJc3ByaW50ZihidWYsICIvcHJvYy8lZCIsIHBpZCk7CisJaWYgKHN0YXQoYnVmLCAmc2IpICE9IDApCisJCXJldHVybiBmYWxzZTsKKwlyZXR1cm4gKHNiLnN0X3VpZCA9PSB1aWQpOworfQorI2VsaWYgZGVmaW5lZChPU0h1cmQpCitzdGF0aWMgYm9vbAorcGlkX2lzX3VzZXIocGlkX3QgcGlkLCB1aWRfdCB1aWQpCit7CisJc3RydWN0IHByb2Nfc3RhdCAqcHM7CisKKwlwcyA9IGdldF9wcm9jX3N0YXQocGlkLCBQU1RBVF9PV05FUl9VSUQpOworCXJldHVybiBwcyAmJiAodWlkX3QpcHJvY19zdGF0X293bmVyX3VpZChwcykgPT0gdWlkOworfQorI2VsaWYgZGVmaW5lZChPU2hwdXgpCitzdGF0aWMgYm9vbAorcGlkX2lzX3VzZXIocGlkX3QgcGlkLCB1aWRfdCB1aWQpCit7CisJc3RydWN0IHBzdF9zdGF0dXMgcHN0OworCisJaWYgKHBzdGF0X2dldHByb2MoJnBzdCwgc2l6ZW9mKHBzdCksIChzaXplX3QpMCwgKGludClwaWQpIDwgMCkKKwkJcmV0dXJuIGZhbHNlOworCXJldHVybiAoKHVpZF90KXBzdC5wc3RfdWlkID09IHVpZCk7Cit9CisjZWxpZiBkZWZpbmVkKEhBVkVfS1ZNX0gpCitzdGF0aWMgYm9vbAorcGlkX2lzX3VzZXIocGlkX3QgcGlkLCB1aWRfdCB1aWQpCit7CisJa3ZtX3QgKmtkOworCWludCBuZW50cmllczsgLyogVmFsdWUgbm90IHVzZWQuICovCisJdWlkX3QgcHJvY191aWQ7CisJc3RydWN0IGtpbmZvX3Byb2MgKmtwOworCWNoYXIgZXJyYnVmW19QT1NJWDJfTElORV9NQVhdOworCisJa2QgPSBrdm1fb3BlbmZpbGVzKE5VTEwsIE5VTEwsIE5VTEwsIE9fUkRPTkxZLCBlcnJidWYpOworCWlmIChrZCA9PSBOVUxMKQorCQllcnJ4KDEsICIlcyIsIGVycmJ1Zik7CisJa3AgPSBrdm1fZ2V0cHJvY3Moa2QsIEtFUk5fUFJPQ19QSUQsIHBpZCwgJm5lbnRyaWVzKTsKKwlpZiAoa3AgPT0gTlVMTCkKKwkJZXJyeCgxLCAiJXMiLCBrdm1fZ2V0ZXJyKGtkKSk7CisJaWYgKGtwLT5rcF9wcm9jLnBfY3JlZCkKKwkJa3ZtX3JlYWQoa2QsICh1X2xvbmcpJihrcC0+a3BfcHJvYy5wX2NyZWQtPnBfcnVpZCksCisJCSAgICAgICAgICZwcm9jX3VpZCwgc2l6ZW9mKHVpZF90KSk7CisJZWxzZQorCQlyZXR1cm4gZmFsc2U7CisJcmV0dXJuIChwcm9jX3VpZCA9PSAodWlkX3QpdWlkKTsKK30KKyNlbmRpZgorCisjaWYgZGVmaW5lZChPU0xpbnV4KQorc3RhdGljIGJvb2wKK3BpZF9pc19jbWQocGlkX3QgcGlkLCBjb25zdCBjaGFyICpuYW1lKQoreworCWNoYXIgYnVmWzMyXTsKKwlGSUxFICpmOworCWludCBjOworCisJc3ByaW50ZihidWYsICIvcHJvYy8lZC9zdGF0IiwgcGlkKTsKKwlmID0gZm9wZW4oYnVmLCAiciIpOworCWlmICghZikKKwkJcmV0dXJuIGZhbHNlOworCXdoaWxlICgoYyA9IGdldGMoZikpICE9IEVPRiAmJiBjICE9ICcoJykKKwkJOworCWlmIChjICE9ICcoJykgeworCQlmY2xvc2UoZik7CisJCXJldHVybiBmYWxzZTsKKwl9CisJLyogVGhpcyBob3BlZnVsbHkgaGFuZGxlcyBjb21tYW5kIG5hbWVzIGNvbnRhaW5pbmcg4oCYKeKAmS4gKi8KKwl3aGlsZSAoKGMgPSBnZXRjKGYpKSAhPSBFT0YgJiYgYyA9PSAqbmFtZSkKKwkJbmFtZSsrOworCWZjbG9zZShmKTsKKwlyZXR1cm4gKGMgPT0gJyknICYmICpuYW1lID09ICdcMCcpOworfQorI2VsaWYgZGVmaW5lZChPU0h1cmQpCitzdGF0aWMgYm9vbAorcGlkX2lzX2NtZChwaWRfdCBwaWQsIGNvbnN0IGNoYXIgKm5hbWUpCit7CisJc3RydWN0IHByb2Nfc3RhdCAqcHM7CisKKwlwcyA9IGdldF9wcm9jX3N0YXQocGlkLCBQU1RBVF9BUkdTKTsKKwlyZXR1cm4gcHMgJiYgIXN0cmNtcChwcm9jX3N0YXRfYXJncyhwcyksIG5hbWUpOworfQorI2VsaWYgZGVmaW5lZChPU2hwdXgpCitzdGF0aWMgYm9vbAorcGlkX2lzX2NtZChwaWRfdCBwaWQsIGNvbnN0IGNoYXIgKm5hbWUpCit7CisJc3RydWN0IHBzdF9zdGF0dXMgcHN0OworCisJaWYgKHBzdGF0X2dldHByb2MoJnBzdCwgc2l6ZW9mKHBzdCksIChzaXplX3QpMCwgKGludClwaWQpIDwgMCkKKwkJcmV0dXJuIGZhbHNlOworCXJldHVybiAoc3RyY21wKHBzdC5wc3RfdWNvbW0sIG5hbWUpID09IDApOworfQorI2VsaWYgZGVmaW5lZChIQVZFX0tWTV9IKQorc3RhdGljIGJvb2wKK3BpZF9pc19jbWQocGlkX3QgcGlkLCBjb25zdCBjaGFyICpuYW1lKQoreworCWt2bV90ICprZDsKKwlpbnQgbmVudHJpZXMsIGFyZ3ZfbGVuID0gMDsKKwlzdHJ1Y3Qga2luZm9fcHJvYyAqa3A7CisJY2hhciBlcnJidWZbX1BPU0lYMl9MSU5FX01BWF0sIGJ1ZltfUE9TSVgyX0xJTkVfTUFYXTsKKwljaGFyICoqcGlkX2FyZ3ZfcDsKKwljaGFyICpzdGFydF9hcmd2XzBfcCwgKmVuZF9hcmd2XzBfcDsKKworCWtkID0ga3ZtX29wZW5maWxlcyhOVUxMLCBOVUxMLCBOVUxMLCBPX1JET05MWSwgZXJyYnVmKTsKKwlpZiAoa2QgPT0gTlVMTCkKKwkJZXJyeCgxLCAiJXMiLCBlcnJidWYpOworCWtwID0ga3ZtX2dldHByb2NzKGtkLCBLRVJOX1BST0NfUElELCBwaWQsICZuZW50cmllcyk7CisJaWYgKGtwID09IE5VTEwpCisJCWVycngoMSwgIiVzIiwga3ZtX2dldGVycihrZCkpOworCXBpZF9hcmd2X3AgPSBrdm1fZ2V0YXJndihrZCwga3AsIGFyZ3ZfbGVuKTsKKwlpZiAocGlkX2FyZ3ZfcCA9PSBOVUxMKQorCQllcnJ4KDEsICIlcyIsIGt2bV9nZXRlcnIoa2QpKTsKKworCS8qIEZpbmQgYW5kIGNvbXBhcmUgc3RyaW5nLiAqLworCXN0YXJ0X2FyZ3ZfMF9wID0gKnBpZF9hcmd2X3A7CisKKwkvKiBGaW5kIGVuZCBvZiBhcmd2WzBdIHRoZW4gY29weSBhbmQgY3V0IG9mIHN0ciB0aGVyZS4gKi8KKwllbmRfYXJndl8wX3AgPSBzdHJjaHIoKnBpZF9hcmd2X3AsICcgJyk7CisJaWYgKGVuZF9hcmd2XzBfcCA9PSBOVUxMKQorCQkvKiBUaGVyZSBzZWVtcyB0byBiZSBubyBzcGFjZSwgc28gd2UgaGF2ZSB0aGUgY29tbWFuZAorCQkgKiBhbHJlYWR5IGluIGl0cyBkZXNpcmVkIGZvcm0uICovCisJCXN0YXJ0X2FyZ3ZfMF9wID0gKnBpZF9hcmd2X3A7CisJZWxzZSB7CisJCS8qIFRlc3RzIGluZGljYXRlIHRoYXQgdGhpcyBuZXZlciBoYXBwZW5zLCBzaW5jZQorCQkgKiBrdm1fZ2V0YXJndiBpdHNlbGYgY3V0cyBvZiB0YWlsaW5nIHN0dWZmLiBUaGlzIGlzCisJCSAqIG5vdCB3aGF0IHRoZSBtYW5wYWdlIHNheXMsIGhvd2V2ZXIuICovCisJCXN0cm5jcHkoYnVmLCAqcGlkX2FyZ3ZfcCwgKGVuZF9hcmd2XzBfcCAtIHN0YXJ0X2FyZ3ZfMF9wKSk7CisJCWJ1ZlsoZW5kX2FyZ3ZfMF9wIC0gc3RhcnRfYXJndl8wX3ApICsgMV0gPSAnXDAnOworCQlzdGFydF9hcmd2XzBfcCA9IGJ1ZjsKKwl9CisKKwlpZiAoc3RybGVuKG5hbWUpICE9IHN0cmxlbihzdGFydF9hcmd2XzBfcCkpCisJCXJldHVybiBmYWxzZTsKKwlyZXR1cm4gKHN0cmNtcChuYW1lLCBzdGFydF9hcmd2XzBfcCkgPT0gMCkgPyAxIDogMDsKK30KKyNlbmRpZgorCisjaWYgZGVmaW5lZChPU0h1cmQpCitzdGF0aWMgYm9vbAorcGlkX2lzX3J1bm5pbmcocGlkX3QgcGlkKQoreworCXJldHVybiBnZXRfcHJvY19zdGF0KHBpZCwgMCkgIT0gTlVMTDsKK30KKyNlbHNlIC8qICFPU0h1cmQgKi8KK3N0YXRpYyBib29sCitwaWRfaXNfcnVubmluZyhwaWRfdCBwaWQpCit7CisJaWYgKGtpbGwocGlkLCAwKSA9PSAwIHx8IGVycm5vID09IEVQRVJNKQorCQlyZXR1cm4gdHJ1ZTsKKwllbHNlIGlmIChlcnJubyA9PSBFU1JDSCkKKwkJcmV0dXJuIGZhbHNlOworCWVsc2UKKwkJZmF0YWwoImVycm9yIGNoZWNraW5nIHBpZCAldSBzdGF0dXMiLCBwaWQpOworfQorI2VuZGlmCisKK3N0YXRpYyBlbnVtIHN0YXR1c19jb2RlCitwaWRfY2hlY2socGlkX3QgcGlkKQoreworI2lmIGRlZmluZWQoT1NMaW51eCkgfHwgZGVmaW5lZChPU2hwdXgpCisJaWYgKGV4ZWNuYW1lICYmICFwaWRfaXNfZXhlYyhwaWQsICZleGVjX3N0YXQpKQorCQlyZXR1cm4gc3RhdHVzX2RlYWQ7CisjZWxpZiBkZWZpbmVkKEhBVkVfS1ZNX0gpCisJaWYgKGV4ZWNuYW1lICYmICFwaWRfaXNfZXhlYyhwaWQsIGV4ZWNuYW1lKSkKKwkJcmV0dXJuIHN0YXR1c19kZWFkOworI2VsaWYgZGVmaW5lZChPU0h1cmQpIHx8IGRlZmluZWQoT1NGcmVlQlNEKSB8fCBkZWZpbmVkKE9TTmV0QlNEKQorCS8qIExldCdzIHRyeSB0aGlzIHRvIHNlZSBpZiBpdCB3b3Jrcy4gKi8KKwlpZiAoZXhlY25hbWUgJiYgIXBpZF9pc19jbWQocGlkLCBleGVjbmFtZSkpCisJCXJldHVybiBzdGF0dXNfZGVhZDsKKyNlbmRpZgorCWlmICh1c2Vyc3BlYyAmJiAhcGlkX2lzX3VzZXIocGlkLCB1c2VyX2lkKSkKKwkJcmV0dXJuIHN0YXR1c19kZWFkOworCWlmIChjbWRuYW1lICYmICFwaWRfaXNfY21kKHBpZCwgY21kbmFtZSkpCisJCXJldHVybiBzdGF0dXNfZGVhZDsKKwlpZiAoYWN0aW9uID09IGFjdGlvbl9zdGFydCAmJiAhcGlkX2lzX3J1bm5pbmcocGlkKSkKKwkJcmV0dXJuIHN0YXR1c19kZWFkOworCisJcGlkX2xpc3RfcHVzaCgmZm91bmQsIHBpZCk7CisKKwlyZXR1cm4gc3RhdHVzX29rOworfQorCitzdGF0aWMgZW51bSBzdGF0dXNfY29kZQorZG9fcGlkZmlsZShjb25zdCBjaGFyICpuYW1lKQoreworCUZJTEUgKmY7CisJc3RhdGljIHBpZF90IHBpZCA9IDA7CisKKwlpZiAocGlkKQorCQlyZXR1cm4gcGlkX2NoZWNrKHBpZCk7CisKKwlmID0gZm9wZW4obmFtZSwgInIiKTsKKwlpZiAoZikgeworCQllbnVtIHN0YXR1c19jb2RlIHBpZF9zdGF0dXM7CisKKwkJaWYgKGZzY2FuZihmLCAiJWQiLCAmcGlkKSA9PSAxKQorCQkJcGlkX3N0YXR1cyA9IHBpZF9jaGVjayhwaWQpOworCQllbHNlCisJCQlwaWRfc3RhdHVzID0gc3RhdHVzX3Vua25vd247CisJCWZjbG9zZShmKTsKKworCQlpZiAocGlkX3N0YXR1cyA9PSBzdGF0dXNfZGVhZCkKKwkJCXJldHVybiBzdGF0dXNfZGVhZF9waWRmaWxlOworCQllbHNlCisJCQlyZXR1cm4gcGlkX3N0YXR1czsKKwl9IGVsc2UgaWYgKGVycm5vID09IEVOT0VOVCkKKwkJcmV0dXJuIHN0YXR1c19kZWFkOworCWVsc2UKKwkJZmF0YWwoInVuYWJsZSB0byBvcGVuIHBpZGZpbGUgJXMiLCBuYW1lKTsKK30KKworI2lmIGRlZmluZWQoT1NMaW51eCkgfHwgZGVmaW5lZCAoT1NzdW5vcykKK3N0YXRpYyBlbnVtIHN0YXR1c19jb2RlCitkb19wcm9jaW5pdCh2b2lkKQoreworCURJUiAqcHJvY2RpcjsKKwlzdHJ1Y3QgZGlyZW50ICplbnRyeTsKKwlpbnQgZm91bmRhbnk7CisJcGlkX3QgcGlkOworCWVudW0gc3RhdHVzX2NvZGUgcHJvZ19zdGF0dXMgPSBzdGF0dXNfZGVhZDsKKworCXByb2NkaXIgPSBvcGVuZGlyKCIvcHJvYyIpOworCWlmICghcHJvY2RpcikKKwkJZmF0YWwoInVuYWJsZSB0byBvcGVuZGlyIC9wcm9jIik7CisKKwlmb3VuZGFueSA9IDA7CisJd2hpbGUgKChlbnRyeSA9IHJlYWRkaXIocHJvY2RpcikpICE9IE5VTEwpIHsKKwkJZW51bSBzdGF0dXNfY29kZSBwaWRfc3RhdHVzOworCisJCWlmIChzc2NhbmYoZW50cnktPmRfbmFtZSwgIiVkIiwgJnBpZCkgIT0gMSkKKwkJCWNvbnRpbnVlOworCQlmb3VuZGFueSsrOworCisJCXBpZF9zdGF0dXMgPSBwaWRfY2hlY2socGlkKTsKKwkJaWYgKHBpZF9zdGF0dXMgPCBwcm9nX3N0YXR1cykKKwkJCXByb2dfc3RhdHVzID0gcGlkX3N0YXR1czsKKwl9CisJY2xvc2VkaXIocHJvY2Rpcik7CisJaWYgKCFmb3VuZGFueSkKKwkJZmF0YWwoIm5vdGhpbmcgaW4gL3Byb2MgLSBub3QgbW91bnRlZD8iKTsKKworCXJldHVybiBwcm9nX3N0YXR1czsKK30KKyNlbGlmIGRlZmluZWQoT1NIdXJkKQorc3RhdGljIGludAorY2hlY2tfcHJvY19zdGF0KHN0cnVjdCBwcm9jX3N0YXQgKnBzKQoreworCXBpZF9jaGVjayhwcy0+cGlkKTsKKwlyZXR1cm4gMDsKK30KKworc3RhdGljIGVudW0gc3RhdHVzX2NvZGUKK2RvX3Byb2Npbml0KHZvaWQpCit7CisJaWYgKCFwcm9jc2V0KQorCQlpbml0X3Byb2NzZXQoKTsKKworCXByb2Nfc3RhdF9saXN0X2Zvcl9lYWNoKHByb2NzZXQsIGNoZWNrX3Byb2Nfc3RhdCk7CisKKwlpZiAoZm91bmQpCisJCXJldHVybiBzdGF0dXNfb2s7CisJZWxzZQorCQlyZXR1cm4gc3RhdHVzX2RlYWQ7Cit9CisjZWxpZiBkZWZpbmVkKE9TaHB1eCkKK3N0YXRpYyBlbnVtIHN0YXR1c19jb2RlCitkb19wcm9jaW5pdCh2b2lkKQoreworCXN0cnVjdCBwc3Rfc3RhdHVzIHBzdFsxMF07CisJaW50IGksIGNvdW50OworCWludCBpZHggPSAwOworCWVudW0gc3RhdHVzX2NvZGUgcHJvZ19zdGF0dXMgPSBzdGF0dXNfZGVhZDsKKworCXdoaWxlICgoY291bnQgPSBwc3RhdF9nZXRwcm9jKHBzdCwgc2l6ZW9mKHBzdFswXSksIDEwLCBpZHgpKSA+IDApIHsKKwkJZW51bSBzdGF0dXNfY29kZSBwaWRfc3RhdHVzOworCisJCWZvciAoaSA9IDA7IGkgPCBjb3VudDsgaSsrKSB7CisJCQlwaWRfc3RhdHVzID0gcGlkX2NoZWNrKHBzdFtpXS5wc3RfcGlkKTsKKwkJCWlmIChwaWRfc3RhdHVzIDwgcHJvZ19zdGF0dXMpCisJCQkJcHJvZ19zdGF0dXMgPSBwaWRfc3RhdHVzOworCQl9CisJCWlkeCA9IHBzdFtjb3VudCAtIDFdLnBzdF9pZHggKyAxOworCX0KKworCXJldHVybiBwcm9nX3N0YXR1czsKK30KKyNlbGlmIGRlZmluZWQoSEFWRV9LVk1fSCkKK3N0YXRpYyBlbnVtIHN0YXR1c19jb2RlCitkb19wcm9jaW5pdCh2b2lkKQoreworCS8qIE5vdGhpbmcgdG8gZG8uICovCisJcmV0dXJuIHN0YXR1c191bmtub3duOworfQorI2VuZGlmCisKK3N0YXRpYyBlbnVtIHN0YXR1c19jb2RlCitkb19maW5kcHJvY3Modm9pZCkKK3sKKwlwaWRfbGlzdF9mcmVlKCZmb3VuZCk7CisKKwlpZiAocGlkZmlsZSkKKwkJcmV0dXJuIGRvX3BpZGZpbGUocGlkZmlsZSk7CisJZWxzZQorCQlyZXR1cm4gZG9fcHJvY2luaXQoKTsKK30KKworc3RhdGljIHZvaWQKK2RvX3N0b3AoaW50IHNpZ19udW0sIGludCAqbl9raWxsZWQsIGludCAqbl9ub3RraWxsZWQpCit7CisJc3RydWN0IHBpZF9saXN0ICpwOworCisJZG9fZmluZHByb2NzKCk7CisKKwkqbl9raWxsZWQgPSAwOworCSpuX25vdGtpbGxlZCA9IDA7CisKKwlpZiAoIWZvdW5kKQorCQlyZXR1cm47CisKKwlwaWRfbGlzdF9mcmVlKCZraWxsZWQpOworCisJZm9yIChwID0gZm91bmQ7IHA7IHAgPSBwLT5uZXh0KSB7CisJCWlmICh0ZXN0bW9kZSkgeworCQkJaWYgKHF1aWV0bW9kZSA8PSAwKQorCQkJCXByaW50ZigiV291bGQgc2VuZCBzaWduYWwgJWQgdG8gJWQuXG4iLAorCQkJCSAgICAgICBzaWdfbnVtLCBwLT5waWQpOworCQkJKCpuX2tpbGxlZCkrKzsKKwkJfSBlbHNlIGlmIChraWxsKHAtPnBpZCwgc2lnX251bSkgPT0gMCkgeworCQkJcGlkX2xpc3RfcHVzaCgma2lsbGVkLCBwLT5waWQpOworCQkJKCpuX2tpbGxlZCkrKzsKKwkJfSBlbHNlIHsKKwkJCWlmIChzaWdfbnVtKQorCQkJCXdhcm5pbmcoImZhaWxlZCB0byBraWxsICVkOiAlc1xuIiwKKwkJCQkgICAgICAgIHAtPnBpZCwgc3RyZXJyb3IoZXJybm8pKTsKKwkJCSgqbl9ub3RraWxsZWQpKys7CisJCX0KKwl9Cit9CisKK3N0YXRpYyB2b2lkCitkb19zdG9wX3N1bW1hcnkoaW50IHJldHJ5X25yKQoreworCXN0cnVjdCBwaWRfbGlzdCAqcDsKKworCWlmIChxdWlldG1vZGUgPj0gMCB8fCAha2lsbGVkKQorCQlyZXR1cm47CisKKwlwcmludGYoIlN0b3BwZWQgJXMgKHBpZCIsIHdoYXRfc3RvcCk7CisJZm9yIChwID0ga2lsbGVkOyBwOyBwID0gcC0+bmV4dCkKKwkJcHJpbnRmKCIgJWQiLCBwLT5waWQpOworCXB1dGNoYXIoJyknKTsKKwlpZiAocmV0cnlfbnIgPiAwKQorCQlwcmludGYoIiwgcmV0cnkgIyVkIiwgcmV0cnlfbnIpOworCXByaW50ZigiLlxuIik7Cit9CisKK3N0YXRpYyB2b2lkCitzZXRfd2hhdF9zdG9wKGNvbnN0IGNoYXIgKnN0cikKK3sKKwlzdHJuY3B5KHdoYXRfc3RvcCwgc3RyLCBzaXplb2Yod2hhdF9zdG9wKSk7CisJd2hhdF9zdG9wW3NpemVvZih3aGF0X3N0b3ApIC0gMV0gPSAnXDAnOworfQorCisvKgorICogV2Ugd2FudCB0byBrZWVwIHBvbGxpbmcgZm9yIHRoZSBwcm9jZXNzZXMsIHRvIHNlZSBpZiB0aGV5J3ZlIGV4aXRlZCwgb3IKKyAqIHVudGlsIHRoZSB0aW1lb3V0IGV4cGlyZXMuCisgKgorICogVGhpcyBpcyBhIHNvbWV3aGF0IGNvbXBsaWNhdGVkIGFsZ29yaXRobSB0byB0cnkgdG8gZW5zdXJlIHRoYXQgd2Ugbm90aWNlCisgKiByZWFzb25hYmx5IHF1aWNrbHkgd2hlbiBhbGwgdGhlIHByb2Nlc3NlcyBoYXZlIGV4aXRlZCwgYnV0IGRvbid0IHNwZW5kCisgKiB0b28gbXVjaCBDUFUgdGltZSBwb2xsaW5nLiBJbiBwYXJ0aWN1bGFyLCBvbiBhIGZhc3QgbWFjaGluZSB3aXRoCisgKiBxdWljay1leGl0aW5nIGRhZW1vbnMgd2UgZG9uJ3Qgd2FudCB0byBkZWxheSBzeXN0ZW0gc2h1dGRvd24gdG9vIG11Y2gsCisgKiB3aGVyZWFzIG9uIGEgc2xvdyBvbmUsIG9yIHdoZXJlIHByb2Nlc3NlcyBhcmUgdGFraW5nIHNvbWUgdGltZSB0byBleGl0LAorICogd2Ugd2FudCB0byBpbmNyZWFzZSB0aGUgcG9sbGluZyBpbnRlcnZhbC4KKyAqCisgKiBUaGUgYWxnb3JpdGhtIGlzIGFzIGZvbGxvd3M6IHdlIG1lYXN1cmUgdGhlIGVsYXBzZWQgdGltZSBpdCB0YWtlcyB0byBkbworICogb25lIHBvbGwoKSwgYW5kIHdhaXQgYSBtdWx0aXBsZSBvZiB0aGlzIHRpbWUgZm9yIHRoZSBuZXh0IHBvbGwuIEhvd2V2ZXIsCisgKiBpZiB0aGF0IHdvdWxkIHB1dCB1cyBwYXN0IHRoZSBlbmQgb2YgdGhlIHRpbWVvdXQgcGVyaW9kIHdlIHdhaXQgb25seSBhcworICogbG9uZyBhcyB0aGUgdGltZW91dCBwZXJpb2QsIGJ1dCBpbiBhbnkgY2FzZSB3ZSBhbHdheXMgd2FpdCBhdCBsZWFzdAorICogTUlOX1BPTExfSU5URVJWQUwgKDIwbXMpLiBUaGUgbXVsdGlwbGUgKOKAmHJhdGlv4oCZKSBzdGFydHMgb3V0IGFzIDIsIGFuZAorICogaW5jcmVhc2VzIGJ5IDEgZm9yIGVhY2ggcG9sbCB0byBhIG1heGltdW0gb2YgMTA7IHNvIHdlIHVzZSB1cCB0byBiZXR3ZWVuCisgKiAzMCUgYW5kIDEwJSBvZiB0aGUgbWFjaGluZSdzIHJlc291cmNlcyAoYXNzdW1pbmcgYSBmZXcgcmVhc29uYWJsZSB0aGluZ3MKKyAqIGFib3V0IHN5c3RlbSBwZXJmb3JtYW5jZSkuCisgKi8KK3N0YXRpYyBib29sCitkb19zdG9wX3RpbWVvdXQoaW50IHRpbWVvdXQsIGludCAqbl9raWxsZWQsIGludCAqbl9ub3RraWxsZWQpCit7CisJc3RydWN0IHRpbWV2YWwgc3RvcGF0LCBiZWZvcmUsIGFmdGVyLCBpbnRlcnZhbCwgbWF4aW50ZXJ2YWw7CisJaW50IHIsIHJhdGlvOworCisJeGdldHRpbWVvZmRheSgmc3RvcGF0KTsKKwlzdG9wYXQudHZfc2VjICs9IHRpbWVvdXQ7CisJcmF0aW8gPSAxOworCWZvciAoOzspIHsKKwkJeGdldHRpbWVvZmRheSgmYmVmb3JlKTsKKwkJaWYgKHRpbWVyY21wKCZiZWZvcmUsICZzdG9wYXQsID4pKQorCQkJcmV0dXJuIGZhbHNlOworCisJCWRvX3N0b3AoMCwgbl9raWxsZWQsIG5fbm90a2lsbGVkKTsKKwkJaWYgKCEqbl9raWxsZWQpCisJCQlyZXR1cm4gdHJ1ZTsKKworCQl4Z2V0dGltZW9mZGF5KCZhZnRlcik7CisKKwkJaWYgKCF0aW1lcmNtcCgmYWZ0ZXIsICZzdG9wYXQsIDwpKQorCQkJcmV0dXJuIGZhbHNlOworCisJCWlmIChyYXRpbyA8IDEwKQorCQkJcmF0aW8rKzsKKworCQl0aW1lcnN1Yigmc3RvcGF0LCAmYWZ0ZXIsICZtYXhpbnRlcnZhbCk7CisJCXRpbWVyc3ViKCZhZnRlciwgJmJlZm9yZSwgJmludGVydmFsKTsKKwkJdG11bCgmaW50ZXJ2YWwsIHJhdGlvKTsKKworCQlpZiAoaW50ZXJ2YWwudHZfc2VjIDwgMCB8fCBpbnRlcnZhbC50dl91c2VjIDwgMCkKKwkJCWludGVydmFsLnR2X3NlYyA9IGludGVydmFsLnR2X3VzZWMgPSAwOworCisJCWlmICh0aW1lcmNtcCgmaW50ZXJ2YWwsICZtYXhpbnRlcnZhbCwgPikpCisJCQlpbnRlcnZhbCA9IG1heGludGVydmFsOworCisJCWlmIChpbnRlcnZhbC50dl9zZWMgPT0gMCAmJgorCQkgICAgaW50ZXJ2YWwudHZfdXNlYyA8PSBNSU5fUE9MTF9JTlRFUlZBTCkKKwkJCWludGVydmFsLnR2X3VzZWMgPSBNSU5fUE9MTF9JTlRFUlZBTDsKKworCQlyID0gc2VsZWN0KDAsIE5VTEwsIE5VTEwsIE5VTEwsICZpbnRlcnZhbCk7CisJCWlmIChyIDwgMCAmJiBlcnJubyAhPSBFSU5UUikKKwkJCWZhdGFsKCJzZWxlY3QoKSBmYWlsZWQgZm9yIHBhdXNlIik7CisJfQorfQorCitzdGF0aWMgaW50CitmaW5pc2hfc3RvcF9zY2hlZHVsZShib29sIGFueWtpbGxlZCkKK3sKKwlpZiAoYW55a2lsbGVkKQorCQlyZXR1cm4gMDsKKworCWlmIChxdWlldG1vZGUgPD0gMCkKKwkJcHJpbnRmKCJObyAlcyBmb3VuZCBydW5uaW5nOyBub25lIGtpbGxlZC5cbiIsIHdoYXRfc3RvcCk7CisKKwlyZXR1cm4gZXhpdG5vZG87Cit9CisKK3N0YXRpYyBpbnQKK3J1bl9zdG9wX3NjaGVkdWxlKHZvaWQpCit7CisJaW50IHBvc2l0aW9uLCBuX2tpbGxlZCwgbl9ub3RraWxsZWQsIHZhbHVlLCByZXRyeV9ucjsKKwlib29sIGFueWtpbGxlZDsKKworCWlmICh0ZXN0bW9kZSkgeworCQlpZiAoc2NoZWR1bGUgIT0gTlVMTCkgeworCQkJaWYgKHF1aWV0bW9kZSA8PSAwKQorCQkJCXByaW50ZigiSWdub3JpbmcgLS1yZXRyeSBpbiB0ZXN0IG1vZGVcbiIpOworCQkJc2NoZWR1bGUgPSBOVUxMOworCQl9CisJfQorCisJaWYgKGNtZG5hbWUpCisJCXNldF93aGF0X3N0b3AoY21kbmFtZSk7CisJZWxzZSBpZiAoZXhlY25hbWUpCisJCXNldF93aGF0X3N0b3AoZXhlY25hbWUpOworCWVsc2UgaWYgKHBpZGZpbGUpCisJCXNwcmludGYod2hhdF9zdG9wLCAicHJvY2VzcyBpbiBwaWRmaWxlICclLjIwMHMnIiwgcGlkZmlsZSk7CisJZWxzZSBpZiAodXNlcnNwZWMpCisJCXNwcmludGYod2hhdF9zdG9wLCAicHJvY2Vzcyhlcykgb3duZWQgYnkgJyUuMjAwcyciLCB1c2Vyc3BlYyk7CisJZWxzZQorCQlmYXRhbCgiaW50ZXJuYWwgZXJyb3IsIG5vIG1hdGNoIG9wdGlvbiwgcGxlYXNlIHJlcG9ydCIpOworCisJYW55a2lsbGVkID0gZmFsc2U7CisJcmV0cnlfbnIgPSAwOworCisJaWYgKHNjaGVkdWxlID09IE5VTEwpIHsKKwkJZG9fc3RvcChzaWduYWxfbnIsICZuX2tpbGxlZCwgJm5fbm90a2lsbGVkKTsKKwkJZG9fc3RvcF9zdW1tYXJ5KDApOworCQlpZiAobl9ub3RraWxsZWQgPiAwICYmIHF1aWV0bW9kZSA8PSAwKQorCQkJcHJpbnRmKCIlZCBwaWRzIHdlcmUgbm90IGtpbGxlZFxuIiwgbl9ub3RraWxsZWQpOworCQlpZiAobl9raWxsZWQpCisJCQlhbnlraWxsZWQgPSB0cnVlOworCQlyZXR1cm4gZmluaXNoX3N0b3Bfc2NoZWR1bGUoYW55a2lsbGVkKTsKKwl9CisKKwlmb3IgKHBvc2l0aW9uID0gMDsgcG9zaXRpb24gPCBzY2hlZHVsZV9sZW5ndGg7IHBvc2l0aW9uKyspIHsKKwlyZXBvc2l0aW9uOgorCQl2YWx1ZSA9IHNjaGVkdWxlW3Bvc2l0aW9uXS52YWx1ZTsKKwkJbl9ub3RraWxsZWQgPSAwOworCisJCXN3aXRjaCAoc2NoZWR1bGVbcG9zaXRpb25dLnR5cGUpIHsKKwkJY2FzZSBzY2hlZF9nb3RvOgorCQkJcG9zaXRpb24gPSB2YWx1ZTsKKwkJCWdvdG8gcmVwb3NpdGlvbjsKKwkJY2FzZSBzY2hlZF9zaWduYWw6CisJCQlkb19zdG9wKHZhbHVlLCAmbl9raWxsZWQsICZuX25vdGtpbGxlZCk7CisJCQlkb19zdG9wX3N1bW1hcnkocmV0cnlfbnIrKyk7CisJCQlpZiAoIW5fa2lsbGVkKQorCQkJCXJldHVybiBmaW5pc2hfc3RvcF9zY2hlZHVsZShhbnlraWxsZWQpOworCQkJZWxzZQorCQkJCWFueWtpbGxlZCA9IHRydWU7CisJCQljb250aW51ZTsKKwkJY2FzZSBzY2hlZF90aW1lb3V0OgorCQkJaWYgKGRvX3N0b3BfdGltZW91dCh2YWx1ZSwgJm5fa2lsbGVkLCAmbl9ub3RraWxsZWQpKQorCQkJCXJldHVybiBmaW5pc2hfc3RvcF9zY2hlZHVsZShhbnlraWxsZWQpOworCQkJZWxzZQorCQkJCWNvbnRpbnVlOworCQlkZWZhdWx0OgorCQkJYXNzZXJ0KCEic2NoZWR1bGVbXS50eXBlIHZhbHVlIG11c3QgYmUgdmFsaWQiKTsKKwkJfQorCX0KKworCWlmIChxdWlldG1vZGUgPD0gMCkKKwkJcHJpbnRmKCJQcm9ncmFtICVzLCAlZCBwcm9jZXNzKGVzKSwgcmVmdXNlZCB0byBkaWUuXG4iLAorCQkgICAgICAgd2hhdF9zdG9wLCBuX2tpbGxlZCk7CisKKwlyZXR1cm4gMjsKK30KKworaW50CittYWluKGludCBhcmdjLCBjaGFyICoqYXJndikKK3sKKwllbnVtIHN0YXR1c19jb2RlIHByb2dfc3RhdHVzOworCWludCBkZXZudWxsX2ZkID0gLTE7CisJZ2lkX3QgcmdpZDsKKwl1aWRfdCBydWlkOworCXByb2duYW1lID0gYXJndlswXTsKKworCXBhcnNlX29wdGlvbnMoYXJnYywgYXJndik7CisJYXJnYyAtPSBvcHRpbmQ7CisJYXJndiArPSBvcHRpbmQ7CisKKwlpZiAoZXhlY25hbWUpIHsKKwkJY2hhciAqZnVsbGV4ZWNuYW1lOworCisJCWlmIChjaGFuZ2Vyb290KSB7CisJCQlpbnQgZnVsbGV4ZWNuYW1lX2xlbiA9IHN0cmxlbihjaGFuZ2Vyb290KSArIDEgKworCQkJICAgICAgICAgICAgICAgICAgICAgICBzdHJsZW4oZXhlY25hbWUpICsgMTsKKworCQkJZnVsbGV4ZWNuYW1lID0geG1hbGxvYyhmdWxsZXhlY25hbWVfbGVuKTsKKwkJCXNucHJpbnRmKGZ1bGxleGVjbmFtZSwgZnVsbGV4ZWNuYW1lX2xlbiwgIiVzLyVzIiwKKwkJCSAgICAgICAgIGNoYW5nZXJvb3QsIGV4ZWNuYW1lKTsKKwkJfSBlbHNlCisJCQlmdWxsZXhlY25hbWUgPSBleGVjbmFtZTsKKworCQlpZiAoc3RhdChmdWxsZXhlY25hbWUsICZleGVjX3N0YXQpKQorCQkJZmF0YWwoInVuYWJsZSB0byBzdGF0ICVzIiwgZnVsbGV4ZWNuYW1lKTsKKworCQlpZiAoZnVsbGV4ZWNuYW1lICE9IGV4ZWNuYW1lKQorCQkJZnJlZShmdWxsZXhlY25hbWUpOworCX0KKworCWlmICh1c2Vyc3BlYyAmJiBzc2NhbmYodXNlcnNwZWMsICIlZCIsICZ1c2VyX2lkKSAhPSAxKSB7CisJCXN0cnVjdCBwYXNzd2QgKnB3OworCisJCXB3ID0gZ2V0cHduYW0odXNlcnNwZWMpOworCQlpZiAoIXB3KQorCQkJZmF0YWwoInVzZXIgJyVzJyBub3QgZm91bmQiLCB1c2Vyc3BlYyk7CisKKwkJdXNlcl9pZCA9IHB3LT5wd191aWQ7CisJfQorCisJaWYgKGNoYW5nZWdyb3VwICYmIHNzY2FuZihjaGFuZ2Vncm91cCwgIiVkIiwgJnJ1bmFzX2dpZCkgIT0gMSkgeworCQlzdHJ1Y3QgZ3JvdXAgKmdyID0gZ2V0Z3JuYW0oY2hhbmdlZ3JvdXApOworCQlpZiAoIWdyKQorCQkJZmF0YWwoImdyb3VwICclcycgbm90IGZvdW5kIiwgY2hhbmdlZ3JvdXApOworCQljaGFuZ2Vncm91cCA9IGdyLT5ncl9uYW1lOworCQlydW5hc19naWQgPSBnci0+Z3JfZ2lkOworCX0KKwlpZiAoY2hhbmdldXNlcikgeworCQlzdHJ1Y3QgcGFzc3dkICpwdzsKKwkJc3RydWN0IHN0YXQgc3Q7CisKKwkJaWYgKHNzY2FuZihjaGFuZ2V1c2VyLCAiJWQiLCAmcnVuYXNfdWlkKSA9PSAxKQorCQkJcHcgPSBnZXRwd3VpZChydW5hc191aWQpOworCQllbHNlCisJCQlwdyA9IGdldHB3bmFtKGNoYW5nZXVzZXIpOworCQlpZiAoIXB3KQorCQkJZmF0YWwoInVzZXIgJyVzJyBub3QgZm91bmQiLCBjaGFuZ2V1c2VyKTsKKwkJY2hhbmdldXNlciA9IHB3LT5wd19uYW1lOworCQlydW5hc191aWQgPSBwdy0+cHdfdWlkOworCQlpZiAoY2hhbmdlZ3JvdXAgPT0gTlVMTCkgeworCQkJLyogUGFzcyB0aGUgZGVmYXVsdCBncm91cCBvZiB0aGlzIHVzZXIuICovCisJCQljaGFuZ2Vncm91cCA9ICIiOyAvKiBKdXN0IGVtcHR5LiAqLworCQkJcnVuYXNfZ2lkID0gcHctPnB3X2dpZDsKKwkJfQorCQlpZiAoc3RhdChwdy0+cHdfZGlyLCAmc3QpID09IDApCisJCQlzZXRlbnYoIkhPTUUiLCBwdy0+cHdfZGlyLCAxKTsKKwl9CisKKwlpZiAoYWN0aW9uID09IGFjdGlvbl9zdG9wKSB7CisJCWludCBpID0gcnVuX3N0b3Bfc2NoZWR1bGUoKTsKKwkJZXhpdChpKTsKKwl9CisKKwlwcm9nX3N0YXR1cyA9IGRvX2ZpbmRwcm9jcygpOworCisJaWYgKGFjdGlvbiA9PSBhY3Rpb25fc3RhdHVzKQorCQlleGl0KHByb2dfc3RhdHVzKTsKKworCWlmIChmb3VuZCkgeworCQlpZiAocXVpZXRtb2RlIDw9IDApCisJCQlwcmludGYoIiVzIGFscmVhZHkgcnVubmluZy5cbiIsIGV4ZWNuYW1lID8gZXhlY25hbWUgOiAicHJvY2VzcyIpOworCQlleGl0KGV4aXRub2RvKTsKKwl9CisJaWYgKHRlc3Rtb2RlICYmIHF1aWV0bW9kZSA8PSAwKSB7CisJCXByaW50ZigiV291bGQgc3RhcnQgJXMgIiwgc3RhcnRhcyk7CisJCXdoaWxlIChhcmdjLS0gPiAwKQorCQkJcHJpbnRmKCIlcyAiLCAqYXJndisrKTsKKwkJaWYgKGNoYW5nZXVzZXIgIT0gTlVMTCkgeworCQkJcHJpbnRmKCIgKGFzIHVzZXIgJXNbJWRdIiwgY2hhbmdldXNlciwgcnVuYXNfdWlkKTsKKwkJCWlmIChjaGFuZ2Vncm91cCAhPSBOVUxMKQorCQkJCXByaW50ZigiLCBhbmQgZ3JvdXAgJXNbJWRdKSIsIGNoYW5nZWdyb3VwLCBydW5hc19naWQpOworCQkJZWxzZQorCQkJCXByaW50ZigiKSIpOworCQl9CisJCWlmIChjaGFuZ2Vyb290ICE9IE5VTEwpCisJCQlwcmludGYoIiBpbiBkaXJlY3RvcnkgJXMiLCBjaGFuZ2Vyb290KTsKKwkJaWYgKG5pY2VsZXZlbCkKKwkJCXByaW50ZigiLCBhbmQgYWRkICVpIHRvIHRoZSBwcmlvcml0eSIsIG5pY2VsZXZlbCk7CisJCWlmIChwcm9jX3NjaGVkKQorCQkJcHJpbnRmKCIsIHdpdGggc2NoZWR1bGluZyBwb2xpY3kgJXMgd2l0aCBwcmlvcml0eSAlaSIsCisJCQkgICAgICAgcHJvY19zY2hlZC0+cG9saWN5X25hbWUsIHByb2Nfc2NoZWQtPnByaW9yaXR5KTsKKwkJaWYgKGlvX3NjaGVkKQorCQkJcHJpbnRmKCIsIHdpdGggSU8gc2NoZWR1bGluZyBjbGFzcyAlcyB3aXRoIHByaW9yaXR5ICVpIiwKKwkJCSAgICAgICBpb19zY2hlZC0+cG9saWN5X25hbWUsIGlvX3NjaGVkLT5wcmlvcml0eSk7CisJCXByaW50ZigiLlxuIik7CisJfQorCWlmICh0ZXN0bW9kZSkKKwkJZXhpdCgwKTsKKwlpZiAocXVpZXRtb2RlIDwgMCkKKwkJcHJpbnRmKCJTdGFydGluZyAlcy4uLlxuIiwgc3RhcnRhcyk7CisJKi0tYXJndiA9IHN0YXJ0YXM7CisJaWYgKGJhY2tncm91bmQpIHsKKwkJLyogT2ssIHdlIG5lZWQgdG8gZGV0YWNoIHRoaXMgcHJvY2Vzcy4gKi8KKwkJZGFlbW9uaXplKCk7CisKKwkJZGV2bnVsbF9mZCA9IG9wZW4oIi9kZXYvbnVsbCIsIE9fUkRXUik7CisJCWlmIChkZXZudWxsX2ZkIDwgMCkKKwkJCWZhdGFsKCJ1bmFibGUgdG8gb3BlbiAnJXMnIiwgIi9kZXYvbnVsbCIpOworCX0KKwlpZiAobmljZWxldmVsKSB7CisJCWVycm5vID0gMDsKKwkJaWYgKChuaWNlKG5pY2VsZXZlbCkgPT0gLTEpICYmIChlcnJubyAhPSAwKSkKKwkJCWZhdGFsKCJ1bmFibGUgdG8gYWx0ZXIgbmljZSBsZXZlbCBieSAlaSIsIG5pY2VsZXZlbCk7CisJfQorCWlmIChwcm9jX3NjaGVkKQorCQlzZXRfcHJvY19zY2hlZHVsZShwcm9jX3NjaGVkKTsKKwlpZiAoaW9fc2NoZWQpCisJCXNldF9pb19zY2hlZHVsZShpb19zY2hlZCk7CisJaWYgKHVtYXNrX3ZhbHVlID49IDApCisJCXVtYXNrKHVtYXNrX3ZhbHVlKTsKKwlpZiAobXBpZGZpbGUgJiYgcGlkZmlsZSAhPSBOVUxMKSB7CisJCS8qIFVzZXIgd2FudHMgX3VzXyB0byBtYWtlIHRoZSBwaWRmaWxlLiAqLworCQlGSUxFICpwaWRmID0gZm9wZW4ocGlkZmlsZSwgInciKTsKKwkJcGlkX3QgcGlkdCA9IGdldHBpZCgpOworCQlpZiAocGlkZiA9PSBOVUxMKQorCQkJZmF0YWwoInVuYWJsZSB0byBvcGVuIHBpZGZpbGUgJyVzJyBmb3Igd3JpdGluZyIsCisJCQkgICAgICBwaWRmaWxlKTsKKwkJZnByaW50ZihwaWRmLCAiJWRcbiIsIHBpZHQpOworCQlpZiAoZmNsb3NlKHBpZGYpKQorCQkJZmF0YWwoInVuYWJsZSB0byBjbG9zZSBwaWRmaWxlICclcyciLCBwaWRmaWxlKTsKKwl9CisJaWYgKGNoYW5nZXJvb3QgIT0gTlVMTCkgeworCQlpZiAoY2hkaXIoY2hhbmdlcm9vdCkgPCAwKQorCQkJZmF0YWwoInVuYWJsZSB0byBjaGRpcigpIHRvICVzIiwgY2hhbmdlcm9vdCk7CisJCWlmIChjaHJvb3QoY2hhbmdlcm9vdCkgPCAwKQorCQkJZmF0YWwoInVuYWJsZSB0byBjaHJvb3QoKSB0byAlcyIsIGNoYW5nZXJvb3QpOworCX0KKwlpZiAoY2hkaXIoY2hhbmdlZGlyKSA8IDApCisJCWZhdGFsKCJ1bmFibGUgdG8gY2hkaXIoKSB0byAlcyIsIGNoYW5nZWRpcik7CisKKwlyZ2lkID0gZ2V0Z2lkKCk7CisJcnVpZCA9IGdldHVpZCgpOworCWlmIChjaGFuZ2Vncm91cCAhPSBOVUxMKSB7CisJCWlmIChyZ2lkICE9IChnaWRfdClydW5hc19naWQpCisJCQlpZiAoc2V0Z2lkKHJ1bmFzX2dpZCkpCisJCQkJZmF0YWwoInVuYWJsZSB0byBzZXQgZ2lkIHRvICVkIiwgcnVuYXNfZ2lkKTsKKwl9CisJaWYgKGNoYW5nZXVzZXIgIT0gTlVMTCkgeworCQkvKiBXZSBhc3N1bWUgdGhhdCBpZiBvdXIgcmVhbCB1c2VyIGFuZCBncm91cCBhcmUgdGhlIHNhbWUgYXMKKwkJICogdGhlIG9uZXMgd2Ugc2hvdWxkIHN3aXRjaCB0bywgdGhlIHN1cHBsZW1lbnRhcnkgZ3JvdXBzCisJCSAqIHdpbGwgYmUgYWxyZWFkeSBpbiBwbGFjZS4gKi8KKwkJaWYgKHJnaWQgIT0gKGdpZF90KXJ1bmFzX2dpZCB8fCBydWlkICE9ICh1aWRfdClydW5hc191aWQpCisJCQlpZiAoaW5pdGdyb3VwcyhjaGFuZ2V1c2VyLCBydW5hc19naWQpKQorCQkJCWZhdGFsKCJ1bmFibGUgdG8gc2V0IGluaXRncm91cHMoKSB3aXRoIGdpZCAlZCIsCisJCQkJICAgICAgcnVuYXNfZ2lkKTsKKworCQlpZiAocnVpZCAhPSAodWlkX3QpcnVuYXNfdWlkKQorCQkJaWYgKHNldHVpZChydW5hc191aWQpKQorCQkJCWZhdGFsKCJ1bmFibGUgdG8gc2V0IHVpZCB0byAlcyIsIGNoYW5nZXVzZXIpOworCX0KKworCWlmIChiYWNrZ3JvdW5kKSB7CisJCWludCBpOworCisJCS8qIFNldCBhIGRlZmF1bHQgdW1hc2sgZm9yIGR1bWIgcHJvZ3JhbXMuICovCisJCWlmICh1bWFza192YWx1ZSA8IDApCisJCQl1bWFzaygwMjIpOworCisJCWR1cDIoZGV2bnVsbF9mZCwgMCk7IC8qIHN0ZGluICovCisJCWR1cDIoZGV2bnVsbF9mZCwgMSk7IC8qIHN0ZG91dCAqLworCQlkdXAyKGRldm51bGxfZmQsIDIpOyAvKiBzdGRlcnIgKi8KKworCQkgLyogTm93IGNsb3NlIGFsbCBleHRyYSBmZHMuICovCisJCWZvciAoaSA9IGdldF9vcGVuX2ZkX21heCgpIC0gMTsgaSA+PSAzOyAtLWkpCisJCQljbG9zZShpKTsKKwl9CisJZXhlY3Yoc3RhcnRhcywgYXJndik7CisJZmF0YWwoInVuYWJsZSB0byBzdGFydCAlcyIsIHN0YXJ0YXMpOworfQpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS91dGlscy90LzEwMF91cGRhdGVfYWx0ZXJuYXRpdmVzLnQgYi9kcGtnLTEuMTYuMS4xL3V0aWxzL3QvMTAwX3VwZGF0ZV9hbHRlcm5hdGl2ZXMudApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xOTI2ZWMxCi0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS91dGlscy90LzEwMF91cGRhdGVfYWx0ZXJuYXRpdmVzLnQKQEAgLTAsMCArMSw1MDMgQEAKKyMgLSotIG1vZGU6IGNwZXJsOy0qLQorIworIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgorIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorIworIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorIworIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKwordXNlIERwa2c6OklQQzsKK3VzZSBGaWxlOjpTcGVjOwordXNlIFRlc3Q6Ok1vcmU7CisKK3VzZSBzdHJpY3Q7Cit1c2Ugd2FybmluZ3M7CisKK215ICRzcmNkaXIgPSAkRU5We3NyY2Rpcn0gfHwgJy4nOworbXkgJHRtcGRpciA9ICd0LnRtcC85MDBfdXBkYXRlX2FsdGVybmF0aXZlcyc7CitteSAkYWRtaW5kaXIgPSBGaWxlOjpTcGVjLT5yZWwyYWJzKCIkdG1wZGlyL2FkbWluZGlyIiksCitteSAkYWx0ZGlyID0gRmlsZTo6U3BlYy0+cmVsMmFicygiJHRtcGRpci9hbHRlcm5hdGl2ZXMiKTsKK215ICRiaW5kaXIgPSBGaWxlOjpTcGVjLT5yZWwyYWJzKCIkdG1wZGlyL2JpbiIpOworbXkgQHVhID0gKCIkRU5We2J1aWxkZGlyfS91cGRhdGUtYWx0ZXJuYXRpdmVzIiwgIi0tbG9nIiwgIi9kZXYvbnVsbCIsCisgICAgICAgICAgIi0tcXVpZXQiLCAiLS1hZG1pbmRpciIsICIkYWRtaW5kaXIiLCAiLS1hbHRkaXIiLCAiJGFsdGRpciIpOworCitpZiAoISAteCAiJEVOVntidWlsZGRpcn0vdXBkYXRlLWFsdGVybmF0aXZlcyIpIHsKKyAgICBwbGFuIHNraXBfYWxsID0+ICJ1cGRhdGUtYWx0ZXJuYXRpdmVzIG5vdCBhdmFpbGFibGUiOworICAgIGV4aXQoMCk7Cit9CisKK215ICRtYWluX2xpbmsgPSAiJGJpbmRpci9nZW5lcmljLXRlc3QiOworbXkgJG1haW5fbmFtZSA9ICJnZW5lcmljLXRlc3QiOworbXkgQGNob2ljZXMgPSAoCisgICAgeworCXBhdGggPT4gIi9iaW4vdHJ1ZSIsCisJcHJpb3JpdHkgPT4gMjAsCisJc2xhdmVzID0+IFsKKwkgICAgeworCQkibGluayIgPT4gIiRiaW5kaXIvc2xhdmUyIiwKKwkJbmFtZSA9PiAic2xhdmUyIiwKKwkJcGF0aCA9PiAiL2Jpbi9jYXQiLAorCSAgICB9LAorCSAgICB7CisJCSJsaW5rIiA9PiAiJGJpbmRpci9zbGF2ZTMiLAorCQluYW1lID0+ICJzbGF2ZTMiLAorCQlwYXRoID0+ICIvYmluL2NhdCIsCisJICAgIH0sCisJICAgIHsKKwkJImxpbmsiID0+ICIkYmluZGlyL3NsYXZlMSIsCisJCW5hbWUgPT4gInNsYXZlMSIsCisJCXBhdGggPT4gIi91c3IvYmluL3llcyIsCisJICAgIH0sCisJICAgIHsKKwkJImxpbmsiID0+ICIkYmluZGlyL3NsYXZlNCIsCisJCW5hbWUgPT4gInNsYXZlNCIsCisJCXBhdGggPT4gIi9iaW4vY2F0IiwKKwkgICAgfSwKKwldLAorICAgIH0sCisgICAgeworICAgICAgICBwYXRoID0+ICIvYmluL2ZhbHNlIiwKKyAgICAgICAgcHJpb3JpdHkgPT4gMTAsCisgICAgICAgIHNsYXZlcyA9PiBbCisJICAgIHsKKwkJImxpbmsiID0+ICIkYmluZGlyL3NsYXZlMSIsCisJCW5hbWUgPT4gInNsYXZlMSIsCisJCXBhdGggPT4gIi9iaW4vZGF0ZSIsCisJICAgIH0sCisgICAgICAgIF0sCisgICAgfSwKKyAgICB7CisgICAgICAgIHBhdGggPT4gIi9iaW4vc2xlZXAiLAorICAgICAgICBwcmlvcml0eSA9PiA1LAorICAgICAgICBzbGF2ZXMgPT4gW10sCisgICAgfSwKKyk7CitteSAkbmJfc2xhdmVzID0gNDsKK3BsYW4gdGVzdHMgPT4gKDQgKiAoJG5iX3NsYXZlcyArIDEpICsgMikgKiAyNiAjIG51bWJlciBvZiBjaGVja19jaG9pY2VzCisgICAgICAgICAgICAgICArIDEwNjsgICAgICAgICAgICAgICAgICAgICAgICAgIyByZXN0CisKK3N1YiBjbGVhbnVwIHsKKyAgICBzeXN0ZW0oInJtIC1yZiAkdG1wZGlyICYmIG1rZGlyIC1wICRhZG1pbmRpciAmJiBta2RpciAtcCAkYWx0ZGlyIik7CisgICAgc3lzdGVtKCJta2RpciAtcCAkYmluZGlyL21vcmUiKTsKK30KKworc3ViIGNhbGxfdWEgeworICAgIG15ICgkcGFyYW1zLCAlb3B0cykgPSBAXzsKKyAgICBzcGF3bigiZXhlYyIgPT4gWyBAdWEsIEAkcGFyYW1zIF0sIG5vY2hlY2sgPT4gMSwKKwkgIHdhaXRfY2hpbGQgPT4gMSwgZW52ID0+IHsgTENfQUxMID0+ICJDIiB9LCAlb3B0cyk7CisgICAgbXkgJHRlc3RfaWQgPSAiIjsKKyAgICAkdGVzdF9pZCA9ICIkb3B0c3t0ZXN0X2lkfTogIiBpZiBkZWZpbmVkICRvcHRze3Rlc3RfaWR9OworICAgIGlmICgkb3B0c3siZXhwZWN0X2ZhaWx1cmUifSkgeworCW9rKCQ/ICE9IDAsICIke3Rlc3RfaWR9dXBkYXRlLWFsdGVybmF0aXZlcyBAJHBhcmFtcyBzaG91bGQgZmFpbC4iKSBvcgorCSAgICBkaWFnKCJEaWQgbm90IGZhaWwgYXMgZXhwZWN0ZWQ6IEB1YSBAJHBhcmFtcyIpOworICAgIH0gZWxzZSB7CisJb2soJD8gPT0gMCwgIiR7dGVzdF9pZH11cGRhdGUtYWx0ZXJuYXRpdmVzIEAkcGFyYW1zIHNob3VsZCB3b3JrLiIpIG9yCisJICAgIGRpYWcoIkRpZCBub3Qgc3VjY2VlZCBhcyBleHBlY3RlZDogQHVhIEAkcGFyYW1zIik7CisgICAgfQorfQorCitzdWIgaW5zdGFsbF9jaG9pY2UgeworICAgIG15ICgkaWQsICVvcHRzKSA9IEBfOworICAgIG15ICRhbHQgPSAkY2hvaWNlc1skaWRdOworICAgIG15IEBwYXJhbXM7CisgICAgcHVzaCBAcGFyYW1zLCBAeyRvcHRze3BhcmFtc319IGlmIGV4aXN0cyAkb3B0c3twYXJhbXN9OworICAgIHB1c2ggQHBhcmFtcywgIi0taW5zdGFsbCIsICIkbWFpbl9saW5rIiwgIiRtYWluX25hbWUiLAorCQkgICRhbHQtPntwYXRofSwgJGFsdC0+e3ByaW9yaXR5fTsKKyAgICBmb3JlYWNoIG15ICRzbGF2ZSAoQHsgJGFsdC0+e3NsYXZlc30gfSkgeworCXB1c2ggQHBhcmFtcywgIi0tc2xhdmUiLCAkc2xhdmUtPnsibGluayJ9LCAkc2xhdmUtPnsibmFtZSJ9LCAkc2xhdmUtPnsicGF0aCJ9OworICAgIH0KKyAgICBjYWxsX3VhKFxAcGFyYW1zLCAlb3B0cyk7Cit9CisKK3N1YiByZW1vdmVfY2hvaWNlIHsKKyAgICBteSAoJGlkLCAlb3B0cykgPSBAXzsKKyAgICBteSAkYWx0ID0gJGNob2ljZXNbJGlkXTsKKyAgICBteSBAcGFyYW1zOworICAgIHB1c2ggQHBhcmFtcywgQHskb3B0c3twYXJhbXN9fSBpZiBleGlzdHMgJG9wdHN7cGFyYW1zfTsKKyAgICBwdXNoIEBwYXJhbXMsICItLXJlbW92ZSIsICRtYWluX25hbWUsICRhbHQtPntwYXRofTsKKyAgICBjYWxsX3VhKFxAcGFyYW1zLCAlb3B0cyk7Cit9CisKK3N1YiByZW1vdmVfYWxsX2Nob2ljZXMgeworICAgIG15ICglb3B0cykgPSBAXzsKKyAgICBteSBAcGFyYW1zOworICAgIHB1c2ggQHBhcmFtcywgQHskb3B0c3twYXJhbXN9fSBpZiBleGlzdHMgJG9wdHN7cGFyYW1zfTsKKyAgICBwdXNoIEBwYXJhbXMsICItLXJlbW92ZS1hbGwiLCAkbWFpbl9uYW1lOworICAgIGNhbGxfdWEoXEBwYXJhbXMsICVvcHRzKTsKK30KKworc3ViIHNldF9jaG9pY2UgeworICAgIG15ICgkaWQsICVvcHRzKSA9IEBfOworICAgIG15ICRhbHQgPSAkY2hvaWNlc1skaWRdOworICAgIG15IEBwYXJhbXM7CisgICAgcHVzaCBAcGFyYW1zLCBAeyRvcHRze3BhcmFtc319IGlmIGV4aXN0cyAkb3B0c3twYXJhbXN9OworICAgIHB1c2ggQHBhcmFtcywgIi0tc2V0IiwgJG1haW5fbmFtZSwgJGFsdC0+e3BhdGh9OworICAgIGNhbGxfdWEoXEBwYXJhbXMsICVvcHRzKTsKK30KKworc3ViIGNvbmZpZ19jaG9pY2UgeworICAgIG15ICgkaWQsICVvcHRzKSA9IEBfOworICAgIG15ICgkaW5wdXQsCSRvdXRwdXQpID0gKCIiLCAiIik7CisgICAgaWYgKCRpZCA+PSAwKSB7CisJbXkgJGFsdCA9ICRjaG9pY2VzWyRpZF07CisJJGlucHV0ID0gJGFsdC0+e3BhdGh9OworICAgIH0gZWxzZSB7CisJJGlucHV0ID0gIjAiOworICAgIH0KKyAgICAkaW5wdXQgLj0gIlxuIjsKKyAgICAkb3B0c3tmcm9tX3N0cmluZ30gPSBcJGlucHV0OworICAgICRvcHRze3RvX3N0cmluZ30gPSBcJG91dHB1dDsKKyAgICBteSBAcGFyYW1zOworICAgIHB1c2ggQHBhcmFtcywgQHskb3B0c3twYXJhbXN9fSBpZiBleGlzdHMgJG9wdHN7cGFyYW1zfTsKKyAgICBwdXNoIEBwYXJhbXMsICItLWNvbmZpZyIsICRtYWluX25hbWU7CisgICAgY2FsbF91YShcQHBhcmFtcywgJW9wdHMpOworfQorCitzdWIgZ2V0X3NsYXZlc19zdGF0dXMgeworICAgIG15ICgkaWQpID0gQF87CisgICAgbXkgJXNsYXZlczsKKyAgICAjIE5vbmUgb2YgdGhlIHNsYXZlcyBhcmUgaW5zdGFsbGVkCisgICAgZm9yZWFjaCBteSAkYWx0IChAY2hvaWNlcykgeworCWZvcihteSAkaSA9IDA7ICRpIDwgQHskYWx0LT57c2xhdmVzfX07ICRpKyspIHsKKwkgICAgJHNsYXZlc3skYWx0LT57c2xhdmVzfVskaV17bmFtZX19ID0gJGFsdC0+e3NsYXZlc31bJGldOworCSAgICAkc2xhdmVzeyRhbHQtPntzbGF2ZXN9WyRpXXtuYW1lfX17Imluc3RhbGxlZCJ9ID0gMDsKKwl9CisgICAgfQorICAgICMgZXhjZXB0IHRob3NlIG9mIHRoZSBjdXJyZW50IGFsdGVybmF0aXZlIChtaW51cyBvcHRpb25hbCBzbGF2ZXMpCisgICAgaWYgKGRlZmluZWQoJGlkKSkgeworCW15ICRhbHQgPSAkY2hvaWNlc1skaWRdOworCWZvcihteSAkaSA9IDA7ICRpIDwgQHskYWx0LT57c2xhdmVzfX07ICRpKyspIHsKKwkgICAgJHNsYXZlc3skYWx0LT57c2xhdmVzfVskaV17bmFtZX19ID0gJGFsdC0+e3NsYXZlc31bJGldOworCSAgICBpZiAoLWUgJGFsdC0+e3NsYXZlc31bJGlde3BhdGh9KSB7CisJCSRzbGF2ZXN7JGFsdC0+e3NsYXZlc31bJGlde25hbWV9fXsiaW5zdGFsbGVkIn0gPSAxOworCSAgICB9CisJfQorICAgIH0KKyAgICByZXR1cm4gc29ydCB7ICRhLT57bmFtZX0gY21wICRiLT57bmFtZX0gfSB2YWx1ZXMgJXNsYXZlczsKK30KKworc3ViIGNoZWNrX2xpbmsgeworICAgIG15ICgkbGluaywgJHZhbHVlLCAkbXNnKSA9IEBfOworICAgIG9rKC1sICRsaW5rLCAiJG1zZzogJGxpbmsgZGlzYXBwZWFyZWQuIik7CisgICAgaXMocmVhZGxpbmsoJGxpbmspLCAkdmFsdWUsICIkbGluayBkb2Vzbid0IHBvaW50IHRvICR2YWx1ZS4iKTsKK30KK3N1YiBjaGVja19ub19saW5rIHsKKyAgICBteSAoJGxpbmssICRtc2cpID0gQF87CisgICAgbHN0YXQoJGxpbmspOworICAgIG9rKCEtZSBfLCAiJG1zZzogJGxpbmsgc3RpbGwgZXhpc3RzLiIpOworICAgIG9rKDEsICJmYWtlIHRlc3QiKTsgIyBTYW1lIG51bWJlciBvZiB0ZXN0cyBhcyBjaGVja19saW5rCit9CisKK3N1YiBjaGVja19zbGF2ZXMgeworICAgIG15ICgkaWQsICRtc2cpID0gQF87CisgICAgZm9yZWFjaCBteSAkc2xhdmUgKGdldF9zbGF2ZXNfc3RhdHVzKCRpZCkpIHsKKwlpZiAoJHNsYXZlLT57aW5zdGFsbGVkfSkgeworCSAgICBjaGVja19saW5rKCIkYWx0ZGlyLyRzbGF2ZS0+e25hbWV9IiwgJHNsYXZlLT57cGF0aH0sICRtc2cpOworCSAgICBjaGVja19saW5rKCRzbGF2ZS0+eyJsaW5rIn0sICIkYWx0ZGlyLyRzbGF2ZS0+e25hbWV9IiwgJG1zZyk7CisJfSBlbHNlIHsKKwkgICAgY2hlY2tfbm9fbGluaygiJGFsdGRpci8kc2xhdmUtPntuYW1lfSIsICRtc2cpOworCSAgICBjaGVja19ub19saW5rKCRzbGF2ZS0+eyJsaW5rIn0sICRtc2cpOworCX0KKyAgICB9Cit9CisjICg0ICogKG5iX3NsYXZlcysxKSArIDIpIHRlc3RzIGluIGVhY2ggY2hlY2tfY2hvaWNlKCkgY2FsbAorc3ViIGNoZWNrX2Nob2ljZSB7CisgICAgbXkgKCRpZCwgJG1vZGUsICRtc2cpID0gQF87CisgICAgbXkgJG91dHB1dDsKKyAgICBpZiAoZGVmaW5lZCAkaWQpIHsKKwkjIENoZWNrIHN0YXR1cworCWNhbGxfdWEoWyAiLS1xdWVyeSIsICIkbWFpbl9uYW1lIiBdLCB0b19zdHJpbmcgPT4gXCRvdXRwdXQsIHRlc3RfaWQgPT4gJG1zZyk7CisJJG91dHB1dCA9fiAvXlN0YXR1czogKC4qKSQvaW07CisJaXMoJDEsICRtb2RlLCAiJG1zZzogc3RhdHVzIGlzIG5vdCAkbW9kZS4iKTsKKwkjIENoZWNrIGxpbmtzCisJbXkgJGFsdCA9ICRjaG9pY2VzWyRpZF07CisJY2hlY2tfbGluaygiJGFsdGRpci8kbWFpbl9uYW1lIiwgJGFsdC0+e3BhdGh9LCAkbXNnKTsKKwljaGVja19saW5rKCRtYWluX2xpbmssICIkYWx0ZGlyLyRtYWluX25hbWUiLCAkbXNnKTsKKwljaGVja19zbGF2ZXMoJGlkLCAkbXNnKTsKKyAgICB9IGVsc2UgeworCWNhbGxfdWEoWyAiLS1xdWVyeSIsICIkbWFpbl9uYW1lIiBdLCBlcnJvcl90b19zdHJpbmcgPT4gXCRvdXRwdXQsCisJICAgICAgICBleHBlY3RfZmFpbHVyZSA9PiAxLCB0ZXN0X2lkID0+ICRtc2cpOworCW9rKCRvdXRwdXQgPX4gL25vIGFsdGVybmF0aXZlcy8sICIkbXNnOiBiYWQgZXJyb3IgbWVzc2FnZSBmb3IgLS1xdWVyeS4iKTsKKwkjIENoZWNrIHRoYXQgYWxsIGxpbmtzIGhhdmUgZGlzYXBwZWFyZWQKKwljaGVja19ub19saW5rKCIkYWx0ZGlyLyRtYWluX25hbWUiLCAkbXNnKTsKKwljaGVja19ub19saW5rKCRtYWluX2xpbmssICRtc2cpOworCWNoZWNrX3NsYXZlcyh1bmRlZiwgJG1zZyk7CisgICAgfQorfQorCisjIyMgU1RBUlQgT0YgVEVTVFMKK2NsZWFudXAoKTsKKyMgcmVtb3ZhbCB3aGVuIG5vdCBpbnN0YWxsZWQgc2hvdWxkIG5vdCBmYWlsCityZW1vdmVfY2hvaWNlKDApOworIyBzdWNjZXNzaXZlIGluc3RhbGwgaW4gYXV0byBtb2RlCitpbnN0YWxsX2Nob2ljZSgxKTsKK2NoZWNrX2Nob2ljZSgxLCAiYXV0byIsICJpbml0aWFsIGluc3RhbGwgMSIpOworaW5zdGFsbF9jaG9pY2UoMik7ICMgMiBpcyBsb3dlciBwcmlvLCBzdGF5cyBhdCAxCitjaGVja19jaG9pY2UoMSwgImF1dG8iLCAiaW5pdGlhbCBpbnN0YWxsIDIiKTsKK2luc3RhbGxfY2hvaWNlKDApOyAjIDAgaXMgaGlnaGVyIHByaW9yaXR5CitjaGVja19jaG9pY2UoMCwgImF1dG8iLCAiaW5pdGlhbCBpbnN0YWxsIDMiKTsKKworIyB2ZXJpZnkgdGhhdCB0aGUgYWRtaW5pc3RyYXRpdmUgZmlsZSBpcyBzb3J0ZWQgcHJvcGVybHkKK3sKKyAgICBsb2NhbCAkLyA9IHVuZGVmOworICAgIG9wZW4oRklMRSwgIjwiLCAiJGFkbWluZGlyL2dlbmVyaWMtdGVzdCIpIG9yIGRpZSAkITsKKyAgICBteSAkY29udGVudCA9IDxGSUxFPjsKKyAgICBjbG9zZShGSUxFKTsKKyAgICBpcygkY29udGVudCwKKyJhdXRvCiskYmluZGlyL2dlbmVyaWMtdGVzdAorc2xhdmUxCiskYmluZGlyL3NsYXZlMQorc2xhdmUyCiskYmluZGlyL3NsYXZlMgorc2xhdmUzCiskYmluZGlyL3NsYXZlMworc2xhdmU0CiskYmluZGlyL3NsYXZlNAorCisvYmluL2ZhbHNlCisxMAorL2Jpbi9kYXRlCisKKworCisvYmluL3NsZWVwCis1CisKKworCisKKy9iaW4vdHJ1ZQorMjAKKy91c3IvYmluL3llcworL2Jpbi9jYXQKKy9iaW4vY2F0CisvYmluL2NhdAorCisiLCAiYWRtaW5pc3RyYXRpdmUgZmlsZSBpcyBhcyBleHBlY3RlZCIpOworfQorCisjIG1hbnVhbCBjaGFuZ2Ugd2l0aCAtLXNldC1zZWxlY3Rpb25zCitteSAkaW5wdXQgPSAiZG9lc250ZXhpc3QgYXV0byAvYmluL2RhdGVcbmdlbmVyaWMtdGVzdCBtYW51YWwgL2Jpbi9mYWxzZVxuIjsKK215ICRvdXRwdXQgPSAiIjsKK2NhbGxfdWEoWyItLXNldC1zZWxlY3Rpb25zIl0sIGZyb21fc3RyaW5nID0+IFwkaW5wdXQsCisgICAgICAgIHRvX3N0cmluZyA9PiBcJG91dHB1dCwgdGVzdF9pZCA9PiAibWFudWFsIHVwZGF0ZSB3aXRoIC0tc2V0LXNlbGVjdGlvbnMiKTsKK2NoZWNrX2Nob2ljZSgxLCAibWFudWFsIiwgIm1hbnVhbCB1cGRhdGUgd2l0aCAtLXNldC1zZWxlY3Rpb25zIik7CiskaW5wdXQgPSAiZ2VuZXJpYy10ZXN0IGF1dG8gL2Jpbi90cnVlXG4iOworY2FsbF91YShbIi0tc2V0LXNlbGVjdGlvbnMiXSwgZnJvbV9zdHJpbmcgPT4gXCRpbnB1dCwKKyAgICAgICAgdG9fc3RyaW5nID0+IFwkb3V0cHV0LCB0ZXN0X2lkID0+ICJhdXRvIHVwZGF0ZSB3aXRoIC0tc2V0LXNlbGVjdGlvbnMiKTsKK2NoZWNrX2Nob2ljZSgwLCAiYXV0byIsICJhdXRvIHVwZGF0ZSB3aXRoIC0tc2V0LXNlbGVjdGlvbnMiKTsKKyMgbWFudWFsIGNoYW5nZSB3aXRoIHNldAorc2V0X2Nob2ljZSgyLCB0ZXN0X2lkID0+ICJtYW51YWwgdXBkYXRlIHdpdGggLS1zZXQiKTsKK2NoZWNrX2Nob2ljZSgyLCAibWFudWFsIiwgIm1hbnVhbCB1cGRhdGUgd2l0aCAtLXNldCIpOyAjIHRlc3QgIzM4ODMxMworcmVtb3ZlX2Nob2ljZSgyLCB0ZXN0X2lkID0+ICJyZW1vdmUgbWFudWFsLCBiYWNrIHRvIGF1dG8iKTsKK2NoZWNrX2Nob2ljZSgwLCAiYXV0byIsICJyZW1vdmUgbWFudWFsLCBiYWNrIHRvIGF1dG8iKTsKK3JlbW92ZV9jaG9pY2UoMCwgdGVzdF9pZCA9PiAicmVtb3ZlIGJlc3QiKTsKK2NoZWNrX2Nob2ljZSgxLCAiYXV0byIsICJyZW1vdmUgYmVzdCIpOworcmVtb3ZlX2Nob2ljZSgxLCB0ZXN0X2lkID0+ICJubyBhbHRlcm5hdGl2ZSBsZWZ0Iik7CitjaGVja19jaG9pY2UodW5kZWYsICIiLCAibm8gYWx0ZXJuYXRpdmUgbGVmdCIpOworIyBzaW5nbGUgY2hvaWNlIGluIG1hbnVhbCBtb2RlLCB0byBiZSByZW1vdmVkCitpbnN0YWxsX2Nob2ljZSgxKTsKK3NldF9jaG9pY2UoMSk7CitjaGVja19jaG9pY2UoMSwgIm1hbnVhbCIsICJzaW5nbGUgbWFudWFsIGNob2ljZSIpOworcmVtb3ZlX2Nob2ljZSgxKTsKK2NoZWNrX2Nob2ljZSh1bmRlZiwgIiIsICJyZW1vdmFsIHNpbmdsZSBtYW51YWwiKTsKKyMgdGVzdCAtLXJlbW92ZS1hbGwKK2luc3RhbGxfY2hvaWNlKDApOworaW5zdGFsbF9jaG9pY2UoMSk7CitpbnN0YWxsX2Nob2ljZSgyKTsKK3JlbW92ZV9hbGxfY2hvaWNlcyh0ZXN0X2lkID0+ICJyZW1vdmUgYWxsIik7CitjaGVja19jaG9pY2UodW5kZWYsICIiLCAibm8gYWx0ZXJuYXRpdmUgbGVmdCIpOworIyBjaGVjayBhdXRvLXJlY292ZXJ5IG9mIHVzZXIgbWlzdGFrZXMgKCMxMDAxMzUpCitpbnN0YWxsX2Nob2ljZSgxKTsKK29rKHVubGluaygiJGJpbmRpci9nZW5lcmljLXRlc3QiKSwgImZhaWxlZCByZW1vdmFsIik7Citvayh1bmxpbmsoIiRiaW5kaXIvc2xhdmUxIiksICJmYWlsZWQgcmVtb3ZhbCIpOworaW5zdGFsbF9jaG9pY2UoMSk7CitjaGVja19jaG9pY2UoMSwgImF1dG8iLCAicmVjcmVhdGUgbGlua3MgaW4gYXV0byBtb2RlIik7CitzZXRfY2hvaWNlKDEpOworb2sodW5saW5rKCIkYmluZGlyL2dlbmVyaWMtdGVzdCIpLCAiZmFpbGVkIHJlbW92YWwiKTsKK29rKHVubGluaygiJGJpbmRpci9zbGF2ZTEiKSwgImZhaWxlZCByZW1vdmFsIik7CitpbnN0YWxsX2Nob2ljZSgxKTsKK2NoZWNrX2Nob2ljZSgxLCAibWFudWFsIiwgInJlY3JlYXRlIGxpbmtzIGluIG1hbnVhbCBtb2RlIik7CisjIGNoZWNrIHJlY292ZXJ5IG9mIC9ldGMvYWx0ZXJuYXRpdmVzLyoKK2luc3RhbGxfY2hvaWNlKDApOworb2sodW5saW5rKCIkYWx0ZGlyL2dlbmVyaWMtdGVzdCIpLCAiZmFpbGVkIHJlbW92YWwiKTsKK2luc3RhbGxfY2hvaWNlKDEpOworY2hlY2tfY2hvaWNlKDAsICJhdXRvIiwgIjxhbHRkaXI+L2dlbmVyaWMtdGVzdCBsb3N0LCBiYWNrIHRvIGF1dG8iKTsKKyMgdGVzdCAtLWNvbmZpZworY29uZmlnX2Nob2ljZSgwKTsKK2NoZWNrX2Nob2ljZSgwLCAibWFudWFsIiwgImNvbmZpZyB0byBiZXN0IGJ1dCBtYW51YWwiKTsKK2NvbmZpZ19jaG9pY2UoMSk7CitjaGVja19jaG9pY2UoMSwgIm1hbnVhbCIsICJjb25maWcgdG8gbWFudWFsIik7Citjb25maWdfY2hvaWNlKC0xKTsKK2NoZWNrX2Nob2ljZSgwLCAiYXV0byIsICJjb25maWcgYXV0byIpOworCisjIHRlc3QgcmVuYW1lIG9mIGxpbmtzCitpbnN0YWxsX2Nob2ljZSgwKTsKK215ICRvbGRfc2xhdmUgPSAkY2hvaWNlc1swXXsic2xhdmVzIn1bMF17ImxpbmsifTsKK215ICRvbGRfbGluayA9ICRtYWluX2xpbms7CiskY2hvaWNlc1swXXsic2xhdmVzIn1bMF17ImxpbmsifSA9ICIkYmluZGlyL21vcmUvZ2VuZXJpYy1zbGF2ZSI7CiskbWFpbl9saW5rID0gIiRiaW5kaXIvbW9yZS9teXRlc3QiOworaW5zdGFsbF9jaG9pY2UoMCk7CitjaGVja19jaG9pY2UoMCwgImF1dG8iLCAidGVzdCByZW5hbWUgb2YgbGlua3MiKTsKK2NoZWNrX25vX2xpbmsoJG9sZF9saW5rLCAidGVzdCByZW5hbWUgb2YgbGlua3MiKTsKK2NoZWNrX25vX2xpbmsoJG9sZF9zbGF2ZSwgInRlc3QgcmVuYW1lIG9mIGxpbmtzIik7CisjIHJlbmFtZSB3aXRoIGluc3RhbGxpbmcgb3RoZXIgYWx0ZXJuYXRpdmVzCiskb2xkX2xpbmsgPSAkbWFpbl9saW5rOworJG1haW5fbGluayA9ICIkYmluZGlyL2dlbmVyaWMtdGVzdCI7CitpbnN0YWxsX2Nob2ljZSgxKTsKK2NoZWNrX2Nob2ljZSgwLCAiYXV0byIsICJyZW5hbWUgbGluayIpOworY2hlY2tfbm9fbGluaygkb2xkX2xpbmssICJyZW5hbWUgbGluayIpOworIyByZW5hbWUgd2l0aCBsb3N0IGZpbGUKK3VubGluaygkb2xkX3NsYXZlKTsKKyRvbGRfc2xhdmUgPSAkY2hvaWNlc1swXXsic2xhdmVzIn1bMF17ImxpbmsifTsKKyRjaG9pY2VzWzBdeyJzbGF2ZXMifVswXXsibGluayJ9ID0gIiRiaW5kaXIvZ2VuZXJpYy1zbGF2ZS1iaXMiOworaW5zdGFsbF9jaG9pY2UoMCk7CitjaGVja19jaG9pY2UoMCwgImF1dG8iLCAicmVuYW1lIGxvc3QgZmlsZSIpOworY2hlY2tfbm9fbGluaygkb2xkX3NsYXZlLCAicmVuYW1lIGxvc3QgZmlsZSIpOworIyB1cGRhdGUgb2YgYWx0ZXJuYXRpdmUgd2l0aCBtYW55IHNsYXZlcyBub3QgY3VycmVudGx5IGluc3RhbGxlZAorIyBhbmQgdGhlIGxpbmsgb2YgdGhlIHJlbmFtZWQgc2xhdmUgZXhpc3RzIHdoaWxlIGl0IHNob3VsZCBub3QKK3NldF9jaG9pY2UoMSk7CitzeW1saW5rKCIvYmluL2NhdCIsICIkYmluZGlyL2dlbmVyaWMtc2xhdmUtYmlzIik7CiskY2hvaWNlc1swXXsic2xhdmVzIn1bMF17ImxpbmsifSA9ICIkYmluZGlyL3NsYXZlMiI7CitpbnN0YWxsX2Nob2ljZSgwLCB0ZXN0X2lkID0+ICJ1cGRhdGUgd2l0aCBub24taW5zdGFsbGVkIHNsYXZlcyIpOworY2hlY2tfbm9fbGluaygiJGJpbmRpci9nZW5lcmljLXNsYXZlLWJpcyIsCisgICAgICAgICAgICAgICJkcm9wIHJlbmFtZWQgc3ltbGluayB0aGF0IHNob3VsZCBub3QgYmUgaW5zdGFsbGVkIik7CisKKyMgdGVzdCBpbnN0YWxsIHdpdGggZW1wdHkgYWRtaW4gZmlsZSAoIzQ1Nzg2MykKK2NsZWFudXAoKTsKK3N5c3RlbSgidG91Y2ggJGFkbWluZGlyL2dlbmVyaWMtdGVzdCIpOworaW5zdGFsbF9jaG9pY2UoMCk7CisjIHRlc3QgaW5zdGFsbCB3aXRoIGdhcmJhZ2UgYWRtaW4gZmlsZQorY2xlYW51cCgpOworc3lzdGVtKCJlY2hvIGdhcmJhZ2UgPiAkYWRtaW5kaXIvZ2VuZXJpYy10ZXN0Iik7CitpbnN0YWxsX2Nob2ljZSgwLCBlcnJvcl90b19maWxlID0+ICIvZGV2L251bGwiLCBleHBlY3RfZmFpbHVyZSA9PiAxKTsKKworIyB0ZXN0IGludmFsaWQgdXNhZ2VzCitjbGVhbnVwKCk7CitpbnN0YWxsX2Nob2ljZSgwKTsKKyMgdHJ5IHRvIGluc3RhbGwgYSBzbGF2ZSBhbHRlcm5hdGl2ZSBhcyBuZXcgbWFzdGVyCitjYWxsX3VhKFsiLS1pbnN0YWxsIiwgIiRiaW5kaXIvdGVzdG1hc3RlciIsICJzbGF2ZTEiLCAiL2Jpbi9kYXRlIiwgIjEwIl0sCisgICAgICAgIGV4cGVjdF9mYWlsdXJlID0+IDEsIHRvX2ZpbGUgPT4gIi9kZXYvbnVsbCIsIGVycm9yX3RvX2ZpbGUgPT4gIi9kZXYvbnVsbCIpOworIyB0cnkgdG8gaW5zdGFsbCBhIG1hc3RlciBhbHRlcm5hdGl2ZSBhcyBzbGF2ZQorY2FsbF91YShbIi0taW5zdGFsbCIsICIkYmluZGlyL3Rlc3RtYXN0ZXIiLCAidGVzdG1hc3RlciIsICIvYmluL2RhdGUiLCAiMTAiLAorCSAiLS1zbGF2ZSIsICIkYmluZGlyL3Rlc3RzbGF2ZSIsICJnZW5lcmljLXRlc3QiLCAiL2Jpbi90cnVlIiBdLAorCWV4cGVjdF9mYWlsdXJlID0+IDEsIHRvX2ZpbGUgPT4gIi9kZXYvbnVsbCIsIGVycm9yX3RvX2ZpbGUgPT4gIi9kZXYvbnVsbCIpOworIyB0cnkgdG8gcmV1c2UgbWFzdGVyIGxpbmsgaW4gc2xhdmUKK2NhbGxfdWEoWyItLWluc3RhbGwiLCAiJGJpbmRpci90ZXN0bWFzdGVyIiwgInRlc3RtYXN0ZXIiLCAiL2Jpbi9kYXRlIiwgIjEwIiwKKwkgIi0tc2xhdmUiLCAiJGJpbmRpci90ZXN0bWFzdGVyIiwgInRlc3RzbGF2ZSIsICIvYmluL3RydWUiIF0sCisJZXhwZWN0X2ZhaWx1cmUgPT4gMSwgdG9fZmlsZSA9PiAiL2Rldi9udWxsIiwgZXJyb3JfdG9fZmlsZSA9PiAiL2Rldi9udWxsIik7CisjIHRyeSB0byByZXVzZSBsaW5rcyBpbiBtYXN0ZXIgYWx0ZXJuYXRpdmUKK2NhbGxfdWEoWyItLWluc3RhbGwiLCAiJGJpbmRpci9zbGF2ZTEiLCAidGVzdG1hc3RlciIsICIvYmluL2RhdGUiLCAiMTAiXSwKKyAgICAgICAgZXhwZWN0X2ZhaWx1cmUgPT4gMSwgdG9fZmlsZSA9PiAiL2Rldi9udWxsIiwgZXJyb3JfdG9fZmlsZSA9PiAiL2Rldi9udWxsIik7CisjIHRyeSB0byByZXVzZSBsaW5rcyBpbiBzbGF2ZSBhbHRlcm5hdGl2ZQorY2FsbF91YShbIi0taW5zdGFsbCIsICIkYmluZGlyL3Rlc3RtYXN0ZXIiLCAidGVzdG1hc3RlciIsICIvYmluL2RhdGUiLCAiMTAiLAorCSAiLS1zbGF2ZSIsICIkYmluZGlyL2dlbmVyaWMtdGVzdCIsICJ0ZXN0c2xhdmUiLCAiL2Jpbi90cnVlIiBdLAorCWV4cGVjdF9mYWlsdXJlID0+IDEsIHRvX2ZpbGUgPT4gIi9kZXYvbnVsbCIsIGVycm9yX3RvX2ZpbGUgPT4gIi9kZXYvbnVsbCIpOworIyB0cnkgdG8gcmV1c2Ugc2xhdmUgbGluayBpbiBhbm90aGVyIHNsYXZlIGFsdGVybmF0aXZlIG9mIGFub3RoZXIgY2hvaWNlIG9mCisjIHRoZSBzYW1lIG1haW4gYWx0ZXJuYXRpdmUKK2NhbGxfdWEoWyItLWluc3RhbGwiLCAkbWFpbl9saW5rLCAkbWFpbl9uYW1lLCAiL2Jpbi9kYXRlIiwgIjEwIiwKKwkgIi0tc2xhdmUiLCAiJGJpbmRpci9zbGF2ZTEiLCAidGVzdHNsYXZlIiwgIi9iaW4vdHJ1ZSIgXSwKKwlleHBlY3RfZmFpbHVyZSA9PiAxLCB0b19maWxlID0+ICIvZGV2L251bGwiLCBlcnJvcl90b19maWxlID0+ICIvZGV2L251bGwiKTsKKyMgbGFjayBvZiBhYnNvbHV0ZSBmaWxlbmFtZXMgaW4gbGlua3Mgb3IgZmlsZSBwYXRoLCBub24tZXhpc3RpbmcgcGF0aCwKK2NhbGxfdWEoWyItLWluc3RhbGwiLCAiLi4vdGVzdG1hc3RlciIsICJ0ZXN0bWFzdGVyIiwgIi9iaW4vZGF0ZSIsICIxMCJdLAorICAgICAgICBleHBlY3RfZmFpbHVyZSA9PiAxLCB0b19maWxlID0+ICIvZGV2L251bGwiLCBlcnJvcl90b19maWxlID0+ICIvZGV2L251bGwiKTsKK2NhbGxfdWEoWyItLWluc3RhbGwiLCAiJGJpbmRpci90ZXN0bWFzdGVyIiwgInRlc3RtYXN0ZXIiLCAiLi91cGRhdGUtYWx0ZXJuYXRpdmVzLnBsIiwgIjEwIl0sCisgICAgICAgIGV4cGVjdF9mYWlsdXJlID0+IDEsIHRvX2ZpbGUgPT4gIi9kZXYvbnVsbCIsIGVycm9yX3RvX2ZpbGUgPT4gIi9kZXYvbnVsbCIpOworIyBub24tZXhpc3RpbmcgYWx0ZXJuYXRpdmUgcGF0aAorY2FsbF91YShbIi0taW5zdGFsbCIsICIkYmluZGlyL3Rlc3RtYXN0ZXIiLCAidGVzdG1hc3RlciIsICIkYmluZGlyL2RvZXNudGV4aXN0IiwgIjEwIl0sCisgICAgICAgIGV4cGVjdF9mYWlsdXJlID0+IDEsIHRvX2ZpbGUgPT4gIi9kZXYvbnVsbCIsIGVycm9yX3RvX2ZpbGUgPT4gIi9kZXYvbnVsbCIpOworIyBpbnZhbGlkIGFsdGVybmF0aXZlIG5hbWUgaW4gbWFzdGVyCitjYWxsX3VhKFsiLS1pbnN0YWxsIiwgIiRiaW5kaXIvdGVzdG1hc3RlciIsICJ0ZXN0L21hc3RlciIsICIvYmluL2RhdGUiLCAiMTAiXSwKKyAgICAgICAgZXhwZWN0X2ZhaWx1cmUgPT4gMSwgdG9fZmlsZSA9PiAiL2Rldi9udWxsIiwgZXJyb3JfdG9fZmlsZSA9PiAiL2Rldi9udWxsIik7CisjIGludmFsaWQgYWx0ZXJuYXRpdmUgbmFtZSBpbiBzbGF2ZQorY2FsbF91YShbIi0taW5zdGFsbCIsICIkYmluZGlyL3Rlc3RtYXN0ZXIiLCAidGVzdG1hc3RlciIsICIvYmluL2RhdGUiLCAiMTAiLAorCSAiLS1zbGF2ZSIsICIkYmluZGlyL3Rlc3RzbGF2ZSIsICJ0ZXN0IHNsYXZlIiwgIi9iaW4vdHJ1ZSIgXSwKKwlleHBlY3RfZmFpbHVyZSA9PiAxLCB0b19maWxlID0+ICIvZGV2L251bGwiLCBlcnJvcl90b19maWxlID0+ICIvZGV2L251bGwiKTsKKyMgaW5zdGFsbCBpbiBub24tZXhpc3RpbmcgZGlyIHNob3VsZCBmYWlsCitjYWxsX3VhKFsiLS1pbnN0YWxsIiwgIiRiaW5kaXIvZG9lc250ZXhpc3QvdGVzdG1hc3RlciIsICJ0ZXN0bWFzdGVyIiwgIi9iaW4vZGF0ZSIsICIxMCIsCisJICItLXNsYXZlIiwgIiRiaW5kaXIvdGVzdHNsYXZlIiwgInRlc3RzbGF2ZSIsICIvYmluL3RydWUiIF0sCisJZXhwZWN0X2ZhaWx1cmUgPT4gMSwgdG9fZmlsZSA9PiAiL2Rldi9udWxsIiwgZXJyb3JfdG9fZmlsZSA9PiAiL2Rldi9udWxsIik7CitjYWxsX3VhKFsiLS1pbnN0YWxsIiwgIiRiaW5kaXIvdGVzdG1hc3RlciIsICJ0ZXN0bWFzdGVyIiwgIi9iaW4vZGF0ZSIsICIxMCIsCisJICItLXNsYXZlIiwgIiRiaW5kaXIvZG9lc250ZXhpc3QvdGVzdHNsYXZlIiwgInRlc3RzbGF2ZSIsICIvYmluL3RydWUiIF0sCisJZXhwZWN0X2ZhaWx1cmUgPT4gMSwgdG9fZmlsZSA9PiAiL2Rldi9udWxsIiwgZXJyb3JfdG9fZmlsZSA9PiAiL2Rldi9udWxsIik7CisKKyMgbm9uLWV4aXN0aW5nIGFsdGVybmF0aXZlIHBhdGggaW4gc2xhdmUgaXMgbm90IGEgZmFpbHVyZQorbXkgJG9sZF9wYXRoID0gJGNob2ljZXNbMF17InNsYXZlcyJ9WzBdeyJwYXRoIn07Ciskb2xkX3NsYXZlID0gJGNob2ljZXNbMF17InNsYXZlcyJ9WzBdeyJsaW5rIn07CiskY2hvaWNlc1swXXsic2xhdmVzIn1bMF17InBhdGgifSA9ICIkYmluZGlyL2RvZXNudGV4aXN0IjsKKyRjaG9pY2VzWzBdeyJzbGF2ZXMifVswXXsibGluayJ9ID0gIiRiaW5kaXIvYmFkZGlyL3NsYXZlMiI7CisjIHRlc3QgcmVuYW1lIG9mIHNsYXZlIGxpbmsgdGhhdCBleGlzdGVkIGJ1dCB0aGF0IGRvZXNuJ3QgYW55bW9yZQorIyBhbmQgbGluayBpcyBtb3ZlZCBpbnRvIG5vbi1leGlzdGluZyBkaXIgYXQgdGhlIHNhbWUgdGltZQoraW5zdGFsbF9jaG9pY2UoMCk7CitjaGVja19jaG9pY2UoMCwgImF1dG8iLCAib3B0aW9uYWwgcmVuYW1lZCBzbGF2ZTIgaW4gbm9uLWV4aXN0aW5nIGRpciIpOworIyBzYW1lIGJ1dCBvbiBmcmVzaCBpbnN0YWxsCitjbGVhbnVwKCk7CitpbnN0YWxsX2Nob2ljZSgwKTsKK2NoZWNrX2Nob2ljZSgwLCAiYXV0byIsICJvcHRpb25hbCBzbGF2ZTIgaW4gbm9uLWV4aXN0aW5nIGRpciIpOworJGNob2ljZXNbMF17InNsYXZlcyJ9WzBdeyJsaW5rIn0gPSAkb2xkX3NsYXZlOworIyB0ZXN0IGZyZXNoIGluc3RhbGwgd2l0aCBhIG5vbi1leGlzdGluZyBzbGF2ZSBmaWxlCitjbGVhbnVwKCk7CitpbnN0YWxsX2Nob2ljZSgwKTsKK2NoZWNrX2Nob2ljZSgwLCAiYXV0byIsICJvcHRpb25hbCBzbGF2ZTIiKTsKKyRjaG9pY2VzWzBdeyJzbGF2ZXMifVswXXsicGF0aCJ9ID0gJG9sZF9wYXRoOworCisjIHRlc3QgbWFuYWdlbWVudCBvZiBwcmUtZXhpc3RpbmcgZmlsZXMKK2NsZWFudXAoKTsKK3N5c3RlbSgidG91Y2ggJG1haW5fbGluayAkYmluZGlyL3NsYXZlMSIpOworaW5zdGFsbF9jaG9pY2UoMCk7CitvayghLWwgJG1haW5fbGluaywgImluc3RhbGwgcHJlc2VydmVzIGZpbGVzIHRoYXQgc2hvdWxkIGJlIGxpbmtzIik7CitvayghLWwgIiRiaW5kaXIvc2xhdmUxIiwgImluc3RhbGwgcHJlc2VydmVzIGZpbGVzIHRoYXQgc2hvdWxkIGJlIHNsYXZlIGxpbmtzIik7CityZW1vdmVfY2hvaWNlKDApOworb2soLWYgJG1haW5fbGluaywgInJlbW92YWwga2VlcHMgcmVhbCBmaWxlIGluc3RhbGxlZCBhcyBtYXN0ZXIgbGluayIpOworb2soLWYgIiRiaW5kaXIvc2xhdmUxIiwgInJlbW92YWwga2VlcHMgcmVhbCBmaWxlcyBpbnN0YWxsZWQgYXMgc2xhdmUgbGlua3MiKTsKK2luc3RhbGxfY2hvaWNlKDAsIHBhcmFtcyA9PiBbIi0tZm9yY2UiXSk7CitjaGVja19jaG9pY2UoMCwgImF1dG8iLCAiaW5zdGFsbCAtLWZvcmNlIHJlcGxhY2VzIGZpbGVzIHdpdGggbGlua3MiKTsKKworIyB0ZXN0IG1hbmFnZW1lbnQgb2YgcHJlLWV4aXN0aW5nIGZpbGVzICMyCitjbGVhbnVwKCk7CitzeXN0ZW0oInRvdWNoICRtYWluX2xpbmsgJGJpbmRpci9zbGF2ZTIiKTsKK2luc3RhbGxfY2hvaWNlKDApOworaW5zdGFsbF9jaG9pY2UoMSk7CitvayghLWwgJG1haW5fbGluaywgImluYWN0aXZlIGluc3RhbGwgcHJlc2VydmVzIGZpbGVzIHRoYXQgc2hvdWxkIGJlIGxpbmtzIik7CitvayghLWwgIiRiaW5kaXIvc2xhdmUyIiwgImluYWN0aXZlIGluc3RhbGwgcHJlc2VydmVzIGZpbGVzIHRoYXQgc2hvdWxkIGJlIHNsYXZlIGxpbmtzIik7CitvaygtZiAkbWFpbl9saW5rLCAiaW5hY3RpdmUgaW5zdGFsbCBrZWVwcyByZWFsIGZpbGUgaW5zdGFsbGVkIGFzIG1hc3RlciBsaW5rIik7CitvaygtZiAiJGJpbmRpci9zbGF2ZTIiLCAiaW5hY3RpdmUgaW5zdGFsbCBrZWVwcyByZWFsIGZpbGVzIGluc3RhbGxlZCBhcyBzbGF2ZSBsaW5rcyIpOworc2V0X2Nob2ljZSgxKTsKK29rKCEtbCAkbWFpbl9saW5rLCAibWFudWFsIHN3aXRjaGluZyBwcmVzZXJ2ZXMgZmlsZXMgdGhhdCBzaG91bGQgYmUgbGlua3MiKTsKK29rKCEtbCAiJGJpbmRpci9zbGF2ZTIiLCAibWFudWFsIHN3aXRjaGluZyBwcmVzZXJ2ZXMgZmlsZXMgdGhhdCBzaG91bGQgYmUgc2xhdmUgbGlua3MiKTsKK29rKC1mICRtYWluX2xpbmssICJtYW51YWwgc3dpdGNoaW5nIGtlZXBzIHJlYWwgZmlsZSBpbnN0YWxsZWQgYXMgbWFzdGVyIGxpbmsiKTsKK29rKC1mICIkYmluZGlyL3NsYXZlMiIsICJtYW51YWwgc3dpdGNoaW5nIGtlZXBzIHJlYWwgZmlsZXMgaW5zdGFsbGVkIGFzIHNsYXZlIGxpbmtzIik7CityZW1vdmVfY2hvaWNlKDEpOworb2soIS1sICRtYWluX2xpbmssICJhdXRvIHN3aXRjaGluZyBwcmVzZXJ2ZXMgZmlsZXMgdGhhdCBzaG91bGQgYmUgbGlua3MiKTsKK29rKCEtbCAiJGJpbmRpci9zbGF2ZTIiLCAiYXV0byBzd2l0Y2hpbmcgcHJlc2VydmVzIGZpbGVzIHRoYXQgc2hvdWxkIGJlIHNsYXZlIGxpbmtzIik7CitvaygtZiAkbWFpbl9saW5rLCAiYXV0byBzd2l0Y2hpbmcga2VlcHMgcmVhbCBmaWxlIGluc3RhbGxlZCBhcyBtYXN0ZXIgbGluayIpOworb2soLWYgIiRiaW5kaXIvc2xhdmUyIiwgImF1dG8gc3dpdGNoaW5nIGtlZXBzIHJlYWwgZmlsZXMgaW5zdGFsbGVkIGFzIHNsYXZlIGxpbmtzIik7CityZW1vdmVfYWxsX2Nob2ljZXMocGFyYW1zID0+IFsiLS1mb3JjZSJdKTsKK29rKCEtZSAiJGJpbmRpci9zbGF2ZTIiLCAiZm9yY2VkIHJlbW92ZWFsbCBkcm9wcyByZWFsIGZpbGVzIGluc3RhbGxlZCBhcyBzbGF2ZSBsaW5rcyIpOworCisjIHRlc3QgbWFuYWdlbWVudCBvZiBwcmUtZXhpc3RpbmcgZmlsZXMgIzMKK2NsZWFudXAoKTsKK3N5c3RlbSgidG91Y2ggJG1haW5fbGluayAkYmluZGlyL3NsYXZlMiIpOworaW5zdGFsbF9jaG9pY2UoMCk7CitpbnN0YWxsX2Nob2ljZSgxKTsKK3JlbW92ZV9jaG9pY2UoMCk7CitvayghLWwgJG1haW5fbGluaywgInJlbW92YWwgKyBzd2l0Y2hpbmcgcHJlc2VydmVzIGZpbGVzIHRoYXQgc2hvdWxkIGJlIGxpbmtzIik7CitvayghLWwgIiRiaW5kaXIvc2xhdmUyIiwgInJlbW92YWwgKyBzd2l0Y2hpbmcgcHJlc2VydmVzIGZpbGVzIHRoYXQgc2hvdWxkIGJlIHNsYXZlIGxpbmtzIik7CitvaygtZiAkbWFpbl9saW5rLCAicmVtb3ZhbCArIHN3aXRjaGluZyBrZWVwcyByZWFsIGZpbGUgaW5zdGFsbGVkIGFzIG1hc3RlciBsaW5rIik7CitvaygtZiAiJGJpbmRpci9zbGF2ZTIiLCAicmVtb3ZhbCArIHN3aXRjaGluZyBrZWVwcyByZWFsIGZpbGVzIGluc3RhbGxlZCBhcyBzbGF2ZSBsaW5rcyIpOworaW5zdGFsbF9jaG9pY2UoMCk7CitvayghLWwgJG1haW5fbGluaywgImluc3RhbGwgKyBzd2l0Y2hpbmcgcHJlc2VydmVzIGZpbGVzIHRoYXQgc2hvdWxkIGJlIGxpbmtzIik7CitvayghLWwgIiRiaW5kaXIvc2xhdmUyIiwgImluc3RhbGwgKyBzd2l0Y2hpbmcgcHJlc2VydmVzIGZpbGVzIHRoYXQgc2hvdWxkIGJlIHNsYXZlIGxpbmtzIik7CitvaygtZiAkbWFpbl9saW5rLCAiaW5zdGFsbCArIHN3aXRjaGluZyBrZWVwcyByZWFsIGZpbGUgaW5zdGFsbGVkIGFzIG1hc3RlciBsaW5rIik7CitvaygtZiAiJGJpbmRpci9zbGF2ZTIiLCAiaW5zdGFsbCArIHN3aXRjaGluZyBrZWVwcyByZWFsIGZpbGVzIGluc3RhbGxlZCBhcyBzbGF2ZSBsaW5rcyIpOworc2V0X2Nob2ljZSgxLCBwYXJhbXMgPT4gWyItLWZvcmNlIl0pOworb2soIS1lICIkYmluZGlyL3NsYXZlMiIsICJmb3JjZWQgc3dpdGNoaW5nIHcvbyBzbGF2ZSBkcm9wcyByZWFsIGZpbGVzIGluc3RhbGxlZCBhcyBzbGF2ZSBsaW5rcyIpOworY2hlY2tfY2hvaWNlKDEsICJtYW51YWwiLCAic2V0IC0tZm9yY2UgcmVwbGFjZXMgZmlsZXMgd2l0aCBsaW5rcyIpOwpkaWZmIC0tZ2l0IGEvZHBrZy0xLjE2LjEuMS91dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmMgYi9kcGtnLTEuMTYuMS4xL3V0aWxzL3VwZGF0ZS1hbHRlcm5hdGl2ZXMuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44MTA1NWI0Ci0tLSAvZGV2L251bGwKKysrIGIvZHBrZy0xLjE2LjEuMS91dGlscy91cGRhdGUtYWx0ZXJuYXRpdmVzLmMKQEAgLTAsMCArMSwyNjczIEBACisvKgorICogdXBkYXRlLWFsdGVybmF0aXZlcworICoKKyAqIENvcHlyaWdodCDCqSAxOTk1IElhbiBKYWNrc29uIDxpYW5AZGF2ZW5hbnQuZ3JlZW5lbmQub3JnLnVrPgorICogQ29weXJpZ2h0IMKpIDIwMDAtMjAwMiBXaWNoZXJ0IEFra2VybWFuIDx3YWtrZXJtYUBkZWJpYW4ub3JnPgorICogQ29weXJpZ2h0IMKpIDIwMDYtMjAxMCBHdWlsbGVtIEpvdmVyIDxndWlsbGVtQGRlYmlhbi5vcmc+CisgKiBDb3B5cmlnaHQgwqkgMjAwOCBQaWVycmUgSGFib3V6aXQgPG1hZGNvZGVyQGRlYmlhbi5vcmc+CisgKiBDb3B5cmlnaHQgwqkgMjAwOS0yMDEwIFJhcGhhw6tsIEhlcnR6b2cgPGhlcnR6b2dAZGViaWFuLm9yZz4KKyAqCisgKiBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCisgKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAqIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorICovCisKKyNpbmNsdWRlIDxjb25maWcuaD4KKyNpbmNsdWRlIDxjb21wYXQuaD4KKworI2luY2x1ZGUgPHN5cy90eXBlcy5oPgorI2luY2x1ZGUgPHN5cy9zdGF0Lmg+CisjaW5jbHVkZSA8c3lzL3dhaXQuaD4KKworI2luY2x1ZGUgPGVycm5vLmg+CisjaW5jbHVkZSA8c3RkYXJnLmg+CisjaW5jbHVkZSA8c3RkYm9vbC5oPgorI2luY2x1ZGUgPHN0ZGxpYi5oPgorI2luY2x1ZGUgPHN0ZGlvLmg+CisjaW5jbHVkZSA8dW5pc3RkLmg+CisjaW5jbHVkZSA8c3RyaW5nLmg+CisjaW5jbHVkZSA8ZGlyZW50Lmg+CisjaW5jbHVkZSA8dGltZS5oPgorI2luY2x1ZGUgPHNldGptcC5oPgorI2luY2x1ZGUgPGFzc2VydC5oPgorI2luY2x1ZGUgPGxvY2FsZS5oPgorI2luY2x1ZGUgPGN0eXBlLmg+CisjaW5jbHVkZSA8bGltaXRzLmg+CisKKyNpbmNsdWRlIDxkcGtnL21hY3Jvcy5oPgorI2luY2x1ZGUgPGRwa2cvaTE4bi5oPgorCisvKiBHbG9iYWwgdmFyaWFibGVzOiAqLworCisjZGVmaW5lIFBST0dOQU1FICJ1cGRhdGUtYWx0ZXJuYXRpdmVzIgorCitzdGF0aWMgY29uc3QgY2hhciAqYWx0ZGlyID0gU1lTQ09ORkRJUiAiL2FsdGVybmF0aXZlcyI7CitzdGF0aWMgY29uc3QgY2hhciAqYWRtZGlyOworCitzdGF0aWMgY29uc3QgY2hhciAqcHJvZ19wYXRoID0gInVwZGF0ZS1hbHRlcm5hdGl2ZXMiOworCisvKiBBY3Rpb24gdG8gcGVyZm9ybSAqLworc3RhdGljIGNvbnN0IGNoYXIgKmFjdGlvbiA9IE5VTEw7CitzdGF0aWMgY29uc3QgY2hhciAqbG9nX2ZpbGUgPSBMT0dESVIgIi9hbHRlcm5hdGl2ZXMubG9nIjsKKy8qIFNraXAgYWx0ZXJuYXRpdmVzIHByb3Blcmx5IGNvbmZpZ3VyZWQgaW4gYXV0byBtb2RlIChmb3IgLS1jb25maWcpICovCitzdGF0aWMgaW50IG9wdF9za2lwX2F1dG8gPSAwOworc3RhdGljIGludCBvcHRfdmVyYm9zZSA9IDA7CitzdGF0aWMgaW50IG9wdF9mb3JjZSA9IDA7CisKKyNkZWZpbmUgTUFYX09QVFMgMTI4CisjZGVmaW5lIFBVU0hfT1BUKGEpIGlmIChuYl9vcHRzIDwgTUFYX09QVFMpIHBhc3Nfb3B0c1tuYl9vcHRzKytdID0gYTsKK3N0YXRpYyBjaGFyICpwYXNzX29wdHNbTUFYX09QVFNdOworc3RhdGljIGludCBuYl9vcHRzID0gMDsKKworI2RlZmluZSBEUEtHX1RNUF9FWFQgIi5kcGtnLXRtcCIKKworLyoKKyAqIEZ1bmN0aW9ucy4KKyAqLworCitzdGF0aWMgdm9pZAordmVyc2lvbih2b2lkKQoreworCXByaW50ZihfKCJEZWJpYW4gJXMgdmVyc2lvbiAlcy5cbiIpLCBQUk9HTkFNRSwgVkVSU0lPTik7CisJcHJpbnRmKCJcbiIpOworCisJcHJpbnRmKF8oCisiQ29weXJpZ2h0IChDKSAxOTk1IElhbiBKYWNrc29uLlxuIgorIkNvcHlyaWdodCAoQykgMjAwMC0yMDAyIFdpY2hlcnQgQWtrZXJtYW4uXG4iCisiQ29weXJpZ2h0IChDKSAyMDA5LTIwMTAgUmFwaGFlbCBIZXJ0em9nLlxuIikpOworCisJcHJpbnRmKF8oCisiVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMiBvclxuIgorImxhdGVyIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuIFRoZXJlIGlzIE5PIHdhcnJhbnR5LlxuIikpOworfQorCitzdGF0aWMgdm9pZAordXNhZ2Uodm9pZCkKK3sKKwlwcmludGYoXygKKyJVc2FnZTogJXMgWzxvcHRpb24+IC4uLl0gPGNvbW1hbmQ+XG4iCisiXG4iKSwgUFJPR05BTUUpOworCisJcHJpbnRmKF8oCisiQ29tbWFuZHM6XG4iCisiICAtLWluc3RhbGwgPGxpbms+IDxuYW1lPiA8cGF0aD4gPHByaW9yaXR5PlxuIgorIiAgICBbLS1zbGF2ZSA8bGluaz4gPG5hbWU+IDxwYXRoPl0gLi4uXG4iCisiICAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkIGEgZ3JvdXAgb2YgYWx0ZXJuYXRpdmVzIHRvIHRoZSBzeXN0ZW0uXG4iCisiICAtLXJlbW92ZSA8bmFtZT4gPHBhdGg+ICAgcmVtb3ZlIDxwYXRoPiBmcm9tIHRoZSA8bmFtZT4gZ3JvdXAgYWx0ZXJuYXRpdmUuXG4iCisiICAtLXJlbW92ZS1hbGwgPG5hbWU+ICAgICAgcmVtb3ZlIDxuYW1lPiBncm91cCBmcm9tIHRoZSBhbHRlcm5hdGl2ZXMgc3lzdGVtLlxuIgorIiAgLS1hdXRvIDxuYW1lPiAgICAgICAgICAgIHN3aXRjaCB0aGUgbWFzdGVyIGxpbmsgPG5hbWU+IHRvIGF1dG9tYXRpYyBtb2RlLlxuIgorIiAgLS1kaXNwbGF5IDxuYW1lPiAgICAgICAgIGRpc3BsYXkgaW5mb3JtYXRpb24gYWJvdXQgdGhlIDxuYW1lPiBncm91cC5cbiIKKyIgIC0tcXVlcnkgPG5hbWU+ICAgICAgICAgICBtYWNoaW5lIHBhcnNlYWJsZSB2ZXJzaW9uIG9mIC0tZGlzcGxheSA8bmFtZT4uXG4iCisiICAtLWxpc3QgPG5hbWU+ICAgICAgICAgICAgZGlzcGxheSBhbGwgdGFyZ2V0cyBvZiB0aGUgPG5hbWU+IGdyb3VwLlxuIgorIiAgLS1nZXQtc2VsZWN0aW9ucyAgICAgICAgIGxpc3QgbWFzdGVyIGFsdGVybmF0aXZlIG5hbWVzIGFuZCB0aGVpciBzdGF0dXMuXG4iCisiICAtLXNldC1zZWxlY3Rpb25zICAgICAgICAgcmVhZCBhbHRlcm5hdGl2ZSBzdGF0dXMgZnJvbSBzdGFuZGFyZCBpbnB1dC5cbiIKKyIgIC0tY29uZmlnIDxuYW1lPiAgICAgICAgICBzaG93IGFsdGVybmF0aXZlcyBmb3IgdGhlIDxuYW1lPiBncm91cCBhbmQgYXNrIHRoZVxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzZXIgdG8gc2VsZWN0IHdoaWNoIG9uZSB0byB1c2UuXG4iCisiICAtLXNldCA8bmFtZT4gPHBhdGg+ICAgICAgc2V0IDxwYXRoPiBhcyBhbHRlcm5hdGl2ZSBmb3IgPG5hbWU+LlxuIgorIiAgLS1hbGwgICAgICAgICAgICAgICAgICAgIGNhbGwgLS1jb25maWcgb24gYWxsIGFsdGVybmF0aXZlcy5cbiIKKyJcbiIpKTsKKworCXByaW50ZihfKAorIjxsaW5rPiBpcyB0aGUgc3ltbGluayBwb2ludGluZyB0byAlcy88bmFtZT4uXG4iCisiICAoZS5nLiAvdXNyL2Jpbi9wYWdlcilcbiIKKyI8bmFtZT4gaXMgdGhlIG1hc3RlciBuYW1lIGZvciB0aGlzIGxpbmsgZ3JvdXAuXG4iCisiICAoZS5nLiBwYWdlcilcbiIKKyI8cGF0aD4gaXMgdGhlIGxvY2F0aW9uIG9mIG9uZSBvZiB0aGUgYWx0ZXJuYXRpdmUgdGFyZ2V0IGZpbGVzLlxuIgorIiAgKGUuZy4gL3Vzci9iaW4vbGVzcylcbiIKKyI8cHJpb3JpdHk+IGlzIGFuIGludGVnZXI7IG9wdGlvbnMgd2l0aCBoaWdoZXIgbnVtYmVycyBoYXZlIGhpZ2hlciBwcmlvcml0eSBpblxuIgorIiAgYXV0b21hdGljIG1vZGUuXG4iCisiXG4iKSwgYWx0ZGlyKTsKKworCXByaW50ZihfKAorIk9wdGlvbnM6XG4iCisiICAtLWFsdGRpciA8ZGlyZWN0b3J5PiAgICAgY2hhbmdlIHRoZSBhbHRlcm5hdGl2ZXMgZGlyZWN0b3J5LlxuIgorIiAgLS1hZG1pbmRpciA8ZGlyZWN0b3J5PiAgIGNoYW5nZSB0aGUgYWRtaW5pc3RyYXRpdmUgZGlyZWN0b3J5LlxuIgorIiAgLS1sb2cgPGZpbGU+ICAgICAgICAgICAgIGNoYW5nZSB0aGUgbG9nIGZpbGUuXG4iCisiICAtLWZvcmNlICAgICAgICAgICAgICAgICAgYWxsb3cgcmVwbGFjaW5nIGZpbGVzIHdpdGggYWx0ZXJuYXRpdmUgbGlua3MuXG4iCisiICAtLXNraXAtYXV0byAgICAgICAgICAgICAgc2tpcCBwcm9tcHQgZm9yIGFsdGVybmF0aXZlcyBjb3JyZWN0bHkgY29uZmlndXJlZFxuIgorIiAgICAgICAgICAgICAgICAgICAgICAgICAgIGluIGF1dG9tYXRpYyBtb2RlIChyZWxldmFudCBmb3IgLS1jb25maWcgb25seSlcbiIKKyIgIC0tdmVyYm9zZSAgICAgICAgICAgICAgICB2ZXJib3NlIG9wZXJhdGlvbiwgbW9yZSBvdXRwdXQuXG4iCisiICAtLXF1aWV0ICAgICAgICAgICAgICAgICAgcXVpZXQgb3BlcmF0aW9uLCBtaW5pbWFsIG91dHB1dC5cbiIKKyIgIC0taGVscCAgICAgICAgICAgICAgICAgICBzaG93IHRoaXMgaGVscCBtZXNzYWdlLlxuIgorIiAgLS12ZXJzaW9uICAgICAgICAgICAgICAgIHNob3cgdGhlIHZlcnNpb24uXG4iCispKTsKK30KKworc3RhdGljIHZvaWQgRFBLR19BVFRSX05PUkVUIERQS0dfQVRUUl9QUklOVEYoMSkKK2Vycm9yKGNoYXIgY29uc3QgKmZtdCwgLi4uKQoreworCXZhX2xpc3QgYXJnczsKKworCWZwcmludGYoc3RkZXJyLCAiJXM6ICVzOiAiLCBQUk9HTkFNRSwgXygiZXJyb3IiKSk7CisJdmFfc3RhcnQoYXJncywgZm10KTsKKwl2ZnByaW50ZihzdGRlcnIsIGZtdCwgYXJncyk7CisJdmFfZW5kKGFyZ3MpOworCWZwcmludGYoc3RkZXJyLCAiXG4iKTsKKwlleGl0KDIpOworfQorCitzdGF0aWMgdm9pZCBEUEtHX0FUVFJfTk9SRVQgRFBLR19BVFRSX1BSSU5URigxKQorc3lzZXJyKGNoYXIgY29uc3QgKmZtdCwgLi4uKQoreworCXZhX2xpc3QgYXJnczsKKworCWZwcmludGYoc3RkZXJyLCAiJXM6ICVzOiAiLCBQUk9HTkFNRSwgXygiZXJyb3IiKSk7CisJdmFfc3RhcnQoYXJncywgZm10KTsKKwl2ZnByaW50ZihzdGRlcnIsIGZtdCwgYXJncyk7CisJdmFfZW5kKGFyZ3MpOworCWZwcmludGYoc3RkZXJyLCAiOiAlc1xuIiwgc3RyZXJyb3IoZXJybm8pKTsKKwlleGl0KDIpOworfQorCitzdGF0aWMgdm9pZCBEUEtHX0FUVFJfTk9SRVQgRFBLR19BVFRSX1BSSU5URigxKQorYmFkdXNhZ2UoY2hhciBjb25zdCAqZm10LCAuLi4pCit7CisJdmFfbGlzdCBhcmdzOworCisJZnByaW50ZihzdGRlcnIsICIlczogIiwgUFJPR05BTUUpOworCXZhX3N0YXJ0KGFyZ3MsIGZtdCk7CisJdmZwcmludGYoc3RkZXJyLCBmbXQsIGFyZ3MpOworCXZhX2VuZChhcmdzKTsKKwlmcHJpbnRmKHN0ZGVyciwgIlxuXG4iKTsKKwl1c2FnZSgpOworCWV4aXQoMik7Cit9CisKK3N0YXRpYyB2b2lkIERQS0dfQVRUUl9QUklOVEYoMSkKK3dhcm5pbmcoY2hhciBjb25zdCAqZm10LCAuLi4pCit7CisJdmFfbGlzdCBhcmdzOworCisJaWYgKG9wdF92ZXJib3NlIDwgMCkKKwkJcmV0dXJuOworCisJZnByaW50ZihzdGRlcnIsICIlczogJXM6ICIsIFBST0dOQU1FLCBfKCJ3YXJuaW5nIikpOworCXZhX3N0YXJ0KGFyZ3MsIGZtdCk7CisJdmZwcmludGYoc3RkZXJyLCBmbXQsIGFyZ3MpOworCXZhX2VuZChhcmdzKTsKKwlmcHJpbnRmKHN0ZGVyciwgIlxuIik7Cit9CisKK3N0YXRpYyB2b2lkIERQS0dfQVRUUl9QUklOVEYoMSkKK2RlYnVnKGNoYXIgY29uc3QgKmZtdCwgLi4uKQoreworI2lmIDAKKwl2YV9saXN0IGFyZ3M7CisKKwlmcHJpbnRmKHN0ZGVyciwgIkRFQlVHOiAiKTsKKwl2YV9zdGFydChhcmdzLCBmbXQpOworCXZmcHJpbnRmKHN0ZGVyciwgZm10LCBhcmdzKTsKKwl2YV9lbmQoYXJncyk7CisJZnByaW50ZihzdGRlcnIsICJcbiIpOworI2VuZGlmCit9CisKK3N0YXRpYyB2b2lkIERQS0dfQVRUUl9QUklOVEYoMSkKK3ZlcmJvc2UoY2hhciBjb25zdCAqZm10LCAuLi4pCit7CisJdmFfbGlzdCBhcmdzOworCisJaWYgKG9wdF92ZXJib3NlIDwgMSkKKwkJcmV0dXJuOworCisJcHJpbnRmKCIlczogIiwgUFJPR05BTUUpOworCXZhX3N0YXJ0KGFyZ3MsIGZtdCk7CisJdnByaW50ZihmbXQsIGFyZ3MpOworCXZhX2VuZChhcmdzKTsKKwlwcmludGYoIlxuIik7Cit9CisKK3N0YXRpYyB2b2lkIERQS0dfQVRUUl9QUklOVEYoMSkKK2luZm8oY2hhciBjb25zdCAqZm10LCAuLi4pCit7CisJdmFfbGlzdCBhcmdzOworCisJaWYgKG9wdF92ZXJib3NlIDwgMCkKKwkJcmV0dXJuOworCisJcHJpbnRmKCIlczogIiwgUFJPR05BTUUpOworCXZhX3N0YXJ0KGFyZ3MsIGZtdCk7CisJdnByaW50ZihmbXQsIGFyZ3MpOworCXZhX2VuZChhcmdzKTsKKwlwcmludGYoIlxuIik7Cit9CisKK3N0YXRpYyB2b2lkIERQS0dfQVRUUl9QUklOVEYoMSkKK3ByKGNoYXIgY29uc3QgKmZtdCwgLi4uKQoreworCXZhX2xpc3QgYXJnczsKKworCXZhX3N0YXJ0KGFyZ3MsIGZtdCk7CisJdnByaW50ZihmbXQsIGFyZ3MpOworCXZhX2VuZChhcmdzKTsKKwlwcmludGYoIlxuIik7Cit9CisKK3N0YXRpYyB2b2lkICoKK3htYWxsb2Moc2l6ZV90IHNpemUpCit7CisJdm9pZCAqcjsKKworCXIgPSBtYWxsb2Moc2l6ZSk7CisJaWYgKCFyKQorCQllcnJvcihfKCJtYWxsb2MgZmFpbGVkICglenUgYnl0ZXMpIiksIHNpemUpOworCisJcmV0dXJuIHI7Cit9CisKK3N0YXRpYyBjaGFyICoKK3hzdHJkdXAoY29uc3QgY2hhciAqc3RyKQoreworCWNoYXIgKm5ld19zdHI7CisKKwlpZiAoIXN0cikKKwkJcmV0dXJuIE5VTEw7CisKKwluZXdfc3RyID0gc3RyZHVwKHN0cik7CisJaWYgKCFuZXdfc3RyKQorCQllcnJvcihfKCJmYWlsZWQgdG8gYWxsb2NhdGUgbWVtb3J5IikpOworCisJcmV0dXJuIG5ld19zdHI7Cit9CisKK3N0YXRpYyBjaGFyICoKK2FyZWFkbGluayhjb25zdCBjaGFyICpsaW5rbmFtZSkKK3sKKwlzdHJ1Y3Qgc3RhdCBzdDsKKwljaGFyICpidWY7CisJc3NpemVfdCBzaXplOworCisJLyogQWxsb2NhdGUgcmVxdWlyZWQgbWVtb3J5IHRvIHN0b3JlIHRoZSB2YWx1ZSBvZiB0aGUgc3ltbGluayAqLworCWlmIChsc3RhdChsaW5rbmFtZSwgJnN0KSkKKwkJcmV0dXJuIE5VTEw7CisKKwlpZiAoIVNfSVNMTksoc3Quc3RfbW9kZSkpIHsKKwkJZXJybm8gPSBFSU5WQUw7CisJCXJldHVybiBOVUxMOworCX0KKworCWJ1ZiA9IHhtYWxsb2Moc3Quc3Rfc2l6ZSArIDEpOworCisJLyogUmVhZCBpdCBhbmQgdGVybWluYXRlIHRoZSBzdHJpbmcgcHJvcGVybHkgKi8KKwlzaXplID0gcmVhZGxpbmsobGlua25hbWUsIGJ1Ziwgc3Quc3Rfc2l6ZSk7CisJaWYgKHNpemUgPT0gLTEpIHsKKwkJaW50IHNhdmVkX2Vycm5vID0gZXJybm87CisKKwkJZnJlZShidWYpOworCQllcnJubyA9IHNhdmVkX2Vycm5vOworCisJCXJldHVybiBOVUxMOworCX0KKwlidWZbc2l6ZV0gPSAnXDAnOworCisJcmV0dXJuIGJ1ZjsKK30KKworc3RhdGljIGNoYXIgKgoreHJlYWRsaW5rKGNvbnN0IGNoYXIgKmxpbmtuYW1lKQoreworCWNoYXIgKmJ1ZjsKKworCWJ1ZiA9IGFyZWFkbGluayhsaW5rbmFtZSk7CisJaWYgKGJ1ZiA9PSBOVUxMKQorCQlzeXNlcnIoXygidW5hYmxlIHRvIHJlYWQgbGluayBgJS4yNTVzJyIpLCBsaW5rbmFtZSk7CisKKwlyZXR1cm4gYnVmOworfQorCitzdGF0aWMgaW50IERQS0dfQVRUUl9WUFJJTlRGKDIpCit4dmFzcHJpbnRmKGNoYXIgKipzdHJwLCBjb25zdCBjaGFyICpmbXQsIHZhX2xpc3QgYXJncykKK3sKKwlpbnQgcmV0OworCisJcmV0ID0gdmFzcHJpbnRmKHN0cnAsIGZtdCwgYXJncyk7CisJaWYgKHJldCA8IDApCisJCWVycm9yKF8oImZhaWxlZCB0byBhbGxvY2F0ZSBtZW1vcnkiKSk7CisKKwlyZXR1cm4gcmV0OworfQorCitzdGF0aWMgaW50IERQS0dfQVRUUl9QUklOVEYoMikKK3hhc3ByaW50ZihjaGFyICoqc3RycCwgY29uc3QgY2hhciAqZm10LCAuLi4pCit7CisJdmFfbGlzdCBhcmdzOworCWludCByZXQ7CisKKwl2YV9zdGFydChhcmdzLCBmbXQpOworCXJldCA9IHh2YXNwcmludGYoc3RycCwgZm10LCBhcmdzKTsKKwl2YV9lbmQoYXJncyk7CisKKwlyZXR1cm4gcmV0OworfQorCitzdGF0aWMgdm9pZAorc2V0X2FjdGlvbihjb25zdCBjaGFyICpuZXdfYWN0aW9uKQoreworICAgIGlmIChhY3Rpb24pCisJYmFkdXNhZ2UoXygidHdvIGNvbW1hbmRzIHNwZWNpZmllZDogLS0lcyBhbmQgLS0lcyIpLCBhY3Rpb24sIG5ld19hY3Rpb24pOworICAgIGFjdGlvbiA9IG5ld19hY3Rpb247Cit9CisKK3N0YXRpYyBjb25zdCBjaGFyICoKK2FkbWluZGlyX2luaXQodm9pZCkKK3sKKwljb25zdCBjaGFyICpiYXNlZGlyLCAqZHBrZ19iYXNlZGlyOworCWNoYXIgKmFkbWluZGlyOworCisJZHBrZ19iYXNlZGlyID0gZ2V0ZW52KCJEUEtHX0FETUlORElSIik7CisJaWYgKGRwa2dfYmFzZWRpcikKKwkJYmFzZWRpciA9IGRwa2dfYmFzZWRpcjsKKwllbHNlCisJCWJhc2VkaXIgPSBBRE1JTkRJUjsKKworCXhhc3ByaW50ZigmYWRtaW5kaXIsICIlcy8lcyIsIGJhc2VkaXIsICJhbHRlcm5hdGl2ZXMiKTsKKworCXJldHVybiBhZG1pbmRpcjsKK30KKworc3RhdGljIEZJTEUgKmZoX2xvZyA9IE5VTEw7CisKK3N0YXRpYyB2b2lkIERQS0dfQVRUUl9QUklOVEYoMSkKK2xvZ19tc2coY29uc3QgY2hhciAqZm10LCAuLi4pCit7CisJdmFfbGlzdCBhcmdzOworCisJaWYgKGZoX2xvZyA9PSBOVUxMKSB7CisJCWZoX2xvZyA9IGZvcGVuKGxvZ19maWxlLCAiYSIpOworCQlpZiAoZmhfbG9nID09IE5VTEwgJiYgZXJybm8gIT0gRUFDQ0VTKQorCQkJc3lzZXJyKF8oImNhbm5vdCBhcHBlbmQgdG8gJyVzJyIpLCBsb2dfZmlsZSk7CisJfQorCisJaWYgKGZoX2xvZykgeworCQljaGFyIHRpbWVzdGFtcFs2NF07CisJCXRpbWVfdCBub3c7CisKKwkJdGltZSgmbm93KTsKKwkJc3RyZnRpbWUodGltZXN0YW1wLCBzaXplb2YodGltZXN0YW1wKSwgIiVZLSVtLSVkICVIOiVNOiVTIiwKKwkJCSBsb2NhbHRpbWUoJm5vdykpOworCQlmcHJpbnRmKGZoX2xvZywgIiVzICVzOiAiLCBQUk9HTkFNRSwgdGltZXN0YW1wKTsKKwkJdmFfc3RhcnQoYXJncywgZm10KTsKKwkJdmZwcmludGYoZmhfbG9nLCBmbXQsIGFyZ3MpOworCQl2YV9lbmQoYXJncyk7CisJCWZwcmludGYoZmhfbG9nLCAiXG4iKTsKKwl9Cit9CisKK3N0YXRpYyBpbnQKK2ZpbHRlcl9hbHRkaXIoY29uc3Qgc3RydWN0IGRpcmVudCAqZW50cnkpCit7CisJaWYgKHN0cmNtcChlbnRyeS0+ZF9uYW1lLCAiLiIpID09IDAgfHwKKwkgICAgc3RyY21wKGVudHJ5LT5kX25hbWUsICIuLiIpID09IDAgfHwKKwkgICAgKHN0cmxlbihlbnRyeS0+ZF9uYW1lKSA+IHN0cmxlbihEUEtHX1RNUF9FWFQpICYmCisJICAgICBzdHJjbXAoZW50cnktPmRfbmFtZSArIHN0cmxlbihlbnRyeS0+ZF9uYW1lKSAtCisJICAgICAgICAgICAgc3RybGVuKERQS0dfVE1QX0VYVCksIERQS0dfVE1QX0VYVCkgPT0gMCkpCisJCXJldHVybiAwOworCXJldHVybiAxOworfQorCitzdGF0aWMgaW50CithbHRkYl9nZXRfbmFtZWxpc3Qoc3RydWN0IGRpcmVudCAqKip0YWJsZSkKK3sKKwlpbnQgY291bnQ7CisKKwljb3VudCA9IHNjYW5kaXIoYWRtZGlyLCB0YWJsZSwgZmlsdGVyX2FsdGRpciwgYWxwaGFzb3J0KTsKKwlpZiAoY291bnQgPCAwKQorCQlzeXNlcnIoXygiY2Fubm90IHNjYW4gZGlyZWN0b3J5IGAlLjI1NXMnIiksIGFkbWRpcik7CisKKwlyZXR1cm4gY291bnQ7Cit9CisKK3N0YXRpYyB2b2lkCithbHRkYl9mcmVlX25hbWVsaXN0KHN0cnVjdCBkaXJlbnQgKip0YWJsZSwgaW50IG4pCit7CisJd2hpbGUgKG4tLSkKKwkJZnJlZSh0YWJsZVtuXSk7CisJZnJlZSh0YWJsZSk7Cit9CisKK3N0YXRpYyBpbnQKK3NwYXduKGNvbnN0IGNoYXIgKnByb2csIGNvbnN0IGNoYXIgKmFyZ3NbXSkKK3sKKwljb25zdCBjaGFyICoqY21kOworCWludCBpID0gMDsKKwlwaWRfdCBwaWQsIHI7CisJaW50IHN0YXR1czsKKworCXdoaWxlIChhcmdzW2krK10pOworCWNtZCA9IHhtYWxsb2Moc2l6ZW9mKGNoYXIgKikgKiAoaSArIDIpKTsKKwljbWRbMF0gPSBwcm9nOworCWZvciAoaSA9IDA7IGFyZ3NbaV07IGkrKykKKwkJY21kW2kgKyAxXSA9IGFyZ3NbaV07CisJY21kW2kgKyAxXSA9IE5VTEw7CisKKwlwaWQgPSBmb3JrKCk7CisJaWYgKHBpZCA9PSAtMSkKKwkJZXJyb3IoXygiZm9yayBmYWlsZWQiKSk7CisJaWYgKHBpZCA9PSAwKSB7CisJCWV4ZWN2cChwcm9nLCAoY2hhciAqY29uc3QgKiljbWQpOworCQlzeXNlcnIoXygidW5hYmxlIHRvIGV4ZWN1dGUgJXMgKCVzKSIpLCBwcm9nLCBwcm9nKTsKKwl9CisJd2hpbGUgKChyID0gd2FpdHBpZChwaWQsICZzdGF0dXMsIDApKSA9PSAtMSAmJiBlcnJubyA9PSBFSU5UUikgOworCWlmIChyICE9IHBpZCkKKwkJZXJyb3IoXygid2FpdCBmb3Igc3VicHJvY2VzcyAlcyBmYWlsZWQiKSwgcHJvZyk7CisJZnJlZShjbWQpOworCisJcmV0dXJuIHN0YXR1czsKK30KKworc3RhdGljIHZvaWQgRFBLR19BVFRSX1NFTlRJTkVMCitzdWJjYWxsKGNvbnN0IGNoYXIgKnByb2csIC4uLikKK3sKKwl2YV9saXN0IGFyZ3M7CisJY29uc3QgY2hhciAqKmNtZDsKKwlpbnQgcmVzLCBpLCBqLCBjb3VudDsKKworCS8qIENvdW50IHRoZSBhcmd1bWVudHMgKi8KKwl2YV9zdGFydChhcmdzLCBwcm9nKTsKKwljb3VudCA9IDA7CisJd2hpbGUgKHZhX2FyZyhhcmdzLCBjaGFyICopKQorCQljb3VudCsrOworCXZhX2VuZChhcmdzKTsKKworCS8qIFByZXBhcmUgdGFibGUgZm9yIGFsbCBwYXJhbWV0ZXJzICovCisJY21kID0geG1hbGxvYyhzaXplb2YoKmNtZCkgKiAobmJfb3B0cyArIGNvdW50ICsgMSkpOworCWkgPSAwOworCWZvciAoaiA9IDA7IGogPCBuYl9vcHRzOyBqKyspCisJCWNtZFtpKytdID0gcGFzc19vcHRzW2pdOworCXZhX3N0YXJ0KGFyZ3MsIHByb2cpOworCWZvciAoaiA9IDA7IGogPCBjb3VudDsgaisrKQorCQljbWRbaSsrXSA9IHZhX2FyZyhhcmdzLCBjaGFyICopOworCXZhX2VuZChhcmdzKTsKKwljbWRbaSsrXSA9IE5VTEw7CisKKwkvKiBSdW4gdGhlIGNvbW1hbmQgKi8KKwlyZXMgPSBzcGF3bihwcm9nLCBjbWQpOworCWlmIChXSUZFWElURUQocmVzKSAmJiBXRVhJVFNUQVRVUyhyZXMpID09IDApCisJCXJldHVybjsKKwlpZiAoV0lGRVhJVEVEKHJlcykpCisJCWV4aXQoV0VYSVRTVEFUVVMocmVzKSk7CisJZXhpdCgxMjgpOworfQorCitzdGF0aWMgdm9pZAorY29uZmlnX2FsbCh2b2lkKQoreworCXN0cnVjdCBkaXJlbnQgKip0YWJsZTsKKwlpbnQgaSwgY291bnQ7CisKKwljb3VudCA9IGFsdGRiX2dldF9uYW1lbGlzdCgmdGFibGUpOworCWZvciAoaSA9IDA7IGkgPCBjb3VudDsgaSsrKSB7CisJCXN1YmNhbGwocHJvZ19wYXRoLCAiLS1jb25maWciLCB0YWJsZVtpXS0+ZF9uYW1lLCBOVUxMKTsKKwkJcHJpbnRmKCJcbiIpOworCX0KKwlhbHRkYl9mcmVlX25hbWVsaXN0KHRhYmxlLCBjb3VudCk7Cit9CisKK3N0YXRpYyBib29sCityZW5hbWVfbXYoY29uc3QgY2hhciAqc3JjLCBjb25zdCBjaGFyICpkc3QpCit7CisJc3RydWN0IHN0YXQgc3Q7CisKKwlpZiAobHN0YXQoc3JjLCAmc3QpICE9IDApCisJCXJldHVybiBmYWxzZTsKKworCWlmIChyZW5hbWUoc3JjLCBkc3QpICE9IDApIHsKKwkJY29uc3QgY2hhciAqYXJnc1szXSA9IHsgc3JjLCBkc3QsIE5VTEwgfTsKKwkJaW50IHI7CisJCXIgPSBzcGF3bigibXYiLCBhcmdzKTsKKwkJaWYgKFdJRkVYSVRFRChyKSAmJiBXRVhJVFNUQVRVUyhyKSA9PSAwKQorCQkJcmV0dXJuIHRydWU7CisJCXJldHVybiBmYWxzZTsKKwl9CisKKwlyZXR1cm4gdHJ1ZTsKK30KKworc3RhdGljIHZvaWQKK2NoZWNrZWRfc3ltbGluayhjb25zdCBjaGFyICpmaWxlbmFtZSwgY29uc3QgY2hhciAqbGlua25hbWUpCit7CisJaWYgKHN5bWxpbmsoZmlsZW5hbWUsIGxpbmtuYW1lKSkKKwkJc3lzZXJyKF8oImVycm9yIGNyZWF0aW5nIHN5bWJvbGljIGxpbmsgYCUuMjU1cyciKSwgbGlua25hbWUpOworfQorCitzdGF0aWMgdm9pZAorY2hlY2tlZF9tdihjb25zdCBjaGFyICpzcmMsIGNvbnN0IGNoYXIgKmRzdCkKK3sKKwlpZiAoIXJlbmFtZV9tdihzcmMsIGRzdCkpCisJCXN5c2VycihfKCJ1bmFibGUgdG8gaW5zdGFsbCBgJS4yNTBzJyBhcyBgJS4yNTBzJyIpLCBzcmMsIGRzdCk7Cit9CisKK3N0YXRpYyB2b2lkCitjaGVja2VkX3JtKGNvbnN0IGNoYXIgKmYpCit7CisJaWYgKCF1bmxpbmsoZikpCisJCXJldHVybjsKKworCWlmIChlcnJubyAhPSBFTk9FTlQpCisJCXN5c2VycihfKCJ1bmFibGUgdG8gcmVtb3ZlICclcyciKSwgZik7Cit9CisKK3N0YXRpYyB2b2lkIERQS0dfQVRUUl9QUklOVEYoMSkKK2NoZWNrZWRfcm1fYXJncyhjb25zdCBjaGFyICpmbXQsIC4uLikKK3sKKwl2YV9saXN0IGFyZ3M7CisJY2hhciAqcGF0aDsKKworCXZhX3N0YXJ0KGFyZ3MsIGZtdCk7CisJeHZhc3ByaW50ZigmcGF0aCwgZm10LCBhcmdzKTsKKwl2YV9lbmQoYXJncyk7CisKKwljaGVja2VkX3JtKHBhdGgpOworCWZyZWUocGF0aCk7Cit9CisKKy8qCisgKiBPQkpFQ1RTCisgKi8KKworc3RydWN0IGZpbGVzZXQgeworCXN0cnVjdCBmaWxlc2V0ICpuZXh0OworCisJY2hhciAqbWFzdGVyX2ZpbGU7CisJaW50IHByaW9yaXR5OworCisJc3RydWN0IHNsYXZlX2ZpbGUgeworCQlzdHJ1Y3Qgc2xhdmVfZmlsZSAqbmV4dDsKKwkJY2hhciAqbmFtZTsKKwkJY2hhciAqZmlsZTsKKwl9ICpzbGF2ZXM7Cit9OworCitzdGF0aWMgc3RydWN0IGZpbGVzZXQgKgorZmlsZXNldF9uZXcoY29uc3QgY2hhciAqbWFzdGVyX2ZpbGUsIGludCBwcmlvKQoreworCXN0cnVjdCBmaWxlc2V0ICpmczsKKworCWZzID0geG1hbGxvYyhzaXplb2YoKmZzKSk7CisJZnMtPm5leHQgPSBOVUxMOworCWZzLT5tYXN0ZXJfZmlsZSA9IHhzdHJkdXAobWFzdGVyX2ZpbGUpOworCWZzLT5wcmlvcml0eSA9IHByaW87CisJZnMtPnNsYXZlcyA9IE5VTEw7CisKKwlyZXR1cm4gZnM7Cit9CisKK3N0YXRpYyB2b2lkCitmaWxlc2V0X2ZyZWUoc3RydWN0IGZpbGVzZXQgKmZzKQoreworCXN0cnVjdCBzbGF2ZV9maWxlICpzbGF2ZSwgKm5leHQ7CisKKwlmcmVlKGZzLT5tYXN0ZXJfZmlsZSk7CisJZm9yIChzbGF2ZSA9IGZzLT5zbGF2ZXM7IHNsYXZlOyBzbGF2ZSA9IG5leHQpIHsKKwkJbmV4dCA9IHNsYXZlLT5uZXh0OworCQlmcmVlKHNsYXZlLT5uYW1lKTsKKwkJZnJlZShzbGF2ZS0+ZmlsZSk7CisJCWZyZWUoc2xhdmUpOworCX0KKwlmcmVlKGZzKTsKK30KKworLyogbmFtZSBhbmQgZmlsZSBtdXN0IGJlIGFsbG9jYXRlZCB3aXRoIG1hbGxvYyAqLworc3RhdGljIHZvaWQKK2ZpbGVzZXRfYWRkX3NsYXZlKHN0cnVjdCBmaWxlc2V0ICpmcywgY2hhciAqbmFtZSwgY2hhciAqZmlsZSkKK3sKKwlzdHJ1Y3Qgc2xhdmVfZmlsZSAqc2wsICpjdXIsICpwcmV2ID0gTlVMTDsKKworCS8qIFJlcGxhY2UgZXhpc3RpbmcgZmlyc3QgKi8KKwlmb3IgKGN1ciA9IGZzLT5zbGF2ZXM7IGN1cjsgY3VyID0gY3VyLT5uZXh0KSB7CisJCWlmIChzdHJjbXAoY3VyLT5uYW1lLCBuYW1lKSA9PSAwKSB7CisJCQlmcmVlKGN1ci0+ZmlsZSk7CisJCQljdXItPmZpbGUgPSB4c3RyZHVwKGZpbGUpOworCQkJcmV0dXJuOworCQl9CisJCXByZXYgPSBjdXI7CisJfQorCisJLyogT3RoZXJ3aXNlIGFkZCBuZXcgYXQgdGhlIGVuZCAqLworCXNsID0geG1hbGxvYyhzaXplb2YoKnNsKSk7CisJc2wtPm5leHQgPSBOVUxMOworCXNsLT5uYW1lID0gbmFtZTsKKwlzbC0+ZmlsZSA9IGZpbGU7CisJaWYgKHByZXYpCisJCXByZXYtPm5leHQgPSBzbDsKKwllbHNlCisJCWZzLT5zbGF2ZXMgPSBzbDsKK30KKworc3RhdGljIGNvbnN0IGNoYXIgKgorZmlsZXNldF9nZXRfc2xhdmUoc3RydWN0IGZpbGVzZXQgKmZzLCBjb25zdCBjaGFyICpuYW1lKQoreworCXN0cnVjdCBzbGF2ZV9maWxlICpzbGF2ZTsKKworCWZvciAoc2xhdmUgPSBmcy0+c2xhdmVzOyBzbGF2ZTsgc2xhdmUgPSBzbGF2ZS0+bmV4dCkgeworCQlpZiAoc3RyY21wKHNsYXZlLT5uYW1lLCBuYW1lKSA9PSAwKQorCQkJcmV0dXJuIHNsYXZlLT5maWxlOworCX0KKworCXJldHVybiBOVUxMOworfQorCitzdGF0aWMgYm9vbAorZmlsZXNldF9oYXNfc2xhdmUoc3RydWN0IGZpbGVzZXQgKmZzLCBjb25zdCBjaGFyICpuYW1lKQoreworCWNvbnN0IGNoYXIgKmZpbGUgPSBmaWxlc2V0X2dldF9zbGF2ZShmcywgbmFtZSk7CisKKwlpZiAoZmlsZSA9PSBOVUxMKQorCQlyZXR1cm4gZmFsc2U7CisKKwlyZXR1cm4gc3RybGVuKGZpbGUpID8gdHJ1ZSA6IGZhbHNlOworfQorCitzdGF0aWMgYm9vbAorZmlsZXNldF9jYW5faW5zdGFsbF9zbGF2ZShzdHJ1Y3QgZmlsZXNldCAqZnMsIGNvbnN0IGNoYXIgKnNsYXZlX25hbWUpCit7CisJc3RydWN0IHN0YXQgc3Q7CisJYm9vbCBpbnN0YWxsX3NsYXZlID0gZmFsc2U7CisKKwkvKiBEZWNpZGUgd2hldGhlciB0aGUgc2xhdmUgYWx0ZXJuYXRpdmUgbXVzdCBiZSBzZXR1cCAqLworCWlmIChmaWxlc2V0X2hhc19zbGF2ZShmcywgc2xhdmVfbmFtZSkpIHsKKwkJY29uc3QgY2hhciAqc2xhdmUgPSBmaWxlc2V0X2dldF9zbGF2ZShmcywgc2xhdmVfbmFtZSk7CisKKwkJZXJybm8gPSAwOworCQlpZiAoc3RhdChzbGF2ZSwgJnN0KSA9PSAtMSAmJiBlcnJubyAhPSBFTk9FTlQpCisJCQlzeXNlcnIoXygiY2Fubm90IHN0YXQgZmlsZSAnJXMnIiksIHNsYXZlKTsKKwkJaW5zdGFsbF9zbGF2ZSA9IChlcnJubyA9PSAwKSA/IHRydWUgOiBmYWxzZTsKKwl9CisKKwlyZXR1cm4gaW5zdGFsbF9zbGF2ZTsKK30KKworc3RydWN0IHNsYXZlX2xpbmsgeworCXN0cnVjdCBzbGF2ZV9saW5rICpuZXh0OworCWNoYXIgKm5hbWU7CisJY2hhciAqbGluazsKK307CisKK3N0cnVjdCBjb21taXRfb3BlcmF0aW9uIHsKKwlzdHJ1Y3QgY29tbWl0X29wZXJhdGlvbiAqbmV4dDsKKworCWVudW0gb3Bjb2RlIHsKKwkJb3Bjb2RlX25vcCwKKwkJb3Bjb2RlX3JtLAorCQlvcGNvZGVfbXYsCisJfSBvcGNvZGU7CisKKwljaGFyICphcmdfYTsKKwljaGFyICphcmdfYjsKK307CisKK3N0cnVjdCBhbHRlcm5hdGl2ZSB7CisJY2hhciAqbWFzdGVyX25hbWU7CisJY2hhciAqbWFzdGVyX2xpbms7CisJZW51bSBhbHRlcm5hdGl2ZV9zdGF0dXMgeworCQlBTFRfU1RfVU5LTk9XTiwKKwkJQUxUX1NUX0FVVE8sCisJCUFMVF9TVF9NQU5VQUwsCisJfSBzdGF0dXM7CisKKwlzdHJ1Y3Qgc2xhdmVfbGluayAqc2xhdmVzOworCXN0cnVjdCBmaWxlc2V0ICpjaG9pY2VzOworCisJc3RydWN0IGNvbW1pdF9vcGVyYXRpb24gKmNvbW1pdF9vcHM7CisKKwlpbnQgcmVmX2NvdW50OworCWJvb2wgbW9kaWZpZWQ7Cit9OworCitzdGF0aWMgdm9pZAorc2xhdmVfbGlua19mcmVlKHN0cnVjdCBzbGF2ZV9saW5rICpzbGF2ZSkKK3sKKwlmcmVlKHNsYXZlLT5uYW1lKTsKKwlmcmVlKHNsYXZlLT5saW5rKTsKKwlmcmVlKHNsYXZlKTsKK30KKworc3RhdGljIHZvaWQKK2NvbW1pdF9vcGVyYXRpb25fZnJlZShzdHJ1Y3QgY29tbWl0X29wZXJhdGlvbiAqY29tbWl0X29wKQoreworCWZyZWUoY29tbWl0X29wLT5hcmdfYSk7CisJZnJlZShjb21taXRfb3AtPmFyZ19iKTsKKwlmcmVlKGNvbW1pdF9vcCk7Cit9CisKK3N0YXRpYyBzdHJ1Y3QgYWx0ZXJuYXRpdmUgKgorYWx0ZXJuYXRpdmVfbmV3KGNvbnN0IGNoYXIgKm5hbWUpCit7CisJc3RydWN0IGFsdGVybmF0aXZlICphbHQ7CisKKwlhbHQgPSB4bWFsbG9jKHNpemVvZigqYWx0KSk7CisJYWx0LT5tYXN0ZXJfbmFtZSA9IHhzdHJkdXAobmFtZSk7CisJYWx0LT5tYXN0ZXJfbGluayA9IE5VTEw7CisJYWx0LT5zdGF0dXMgPSBBTFRfU1RfVU5LTk9XTjsKKwlhbHQtPnNsYXZlcyA9IE5VTEw7CisJYWx0LT5jaG9pY2VzID0gTlVMTDsKKwlhbHQtPmNvbW1pdF9vcHMgPSBOVUxMOworCWFsdC0+bW9kaWZpZWQgPSBmYWxzZTsKKwlhbHQtPnJlZl9jb3VudCA9IDE7CisKKwlyZXR1cm4gYWx0OworfQorCitzdGF0aWMgaW5saW5lIHZvaWQKK2FsdGVybmF0aXZlX3JlZihzdHJ1Y3QgYWx0ZXJuYXRpdmUgKmEpCit7CisJYS0+cmVmX2NvdW50Kys7Cit9CisKK3N0YXRpYyBpbmxpbmUgYm9vbAorYWx0ZXJuYXRpdmVfdW5yZWYoc3RydWN0IGFsdGVybmF0aXZlICphKQoreworCXJldHVybiAtLWEtPnJlZl9jb3VudCA9PSAwOworfQorCitzdGF0aWMgdm9pZAorYWx0ZXJuYXRpdmVfY2hvaWNlc19mcmVlKHN0cnVjdCBhbHRlcm5hdGl2ZSAqYSkKK3sKKwlzdHJ1Y3QgZmlsZXNldCAqZnM7CisKKwlpZiAoYS0+Y2hvaWNlcykKKwkJYS0+bW9kaWZpZWQgPSB0cnVlOworCisJd2hpbGUgKGEtPmNob2ljZXMpIHsKKwkJZnMgPSBhLT5jaG9pY2VzOworCQlhLT5jaG9pY2VzID0gZnMtPm5leHQ7CisJCWZpbGVzZXRfZnJlZShmcyk7CisJfQorfQorCitzdGF0aWMgdm9pZAorYWx0ZXJuYXRpdmVfY29tbWl0X29wZXJhdGlvbnNfZnJlZShzdHJ1Y3QgYWx0ZXJuYXRpdmUgKmEpCit7CisJc3RydWN0IGNvbW1pdF9vcGVyYXRpb24gKm9wOworCisJd2hpbGUgKGEtPmNvbW1pdF9vcHMpIHsKKwkJb3AgPSBhLT5jb21taXRfb3BzOworCQlhLT5jb21taXRfb3BzID0gb3AtPm5leHQ7CisJCWNvbW1pdF9vcGVyYXRpb25fZnJlZShvcCk7CisJfQorfQorCitzdGF0aWMgdm9pZAorYWx0ZXJuYXRpdmVfcmVzZXQoc3RydWN0IGFsdGVybmF0aXZlICphbHQpCit7CisJc3RydWN0IHNsYXZlX2xpbmsgKnNsYXZlOworCisJZnJlZShhbHQtPm1hc3Rlcl9saW5rKTsKKwlhbHQtPm1hc3Rlcl9saW5rID0gTlVMTDsKKwl3aGlsZSAoYWx0LT5zbGF2ZXMpIHsKKwkJc2xhdmUgPSBhbHQtPnNsYXZlczsKKwkJYWx0LT5zbGF2ZXMgPSBzbGF2ZS0+bmV4dDsKKwkJc2xhdmVfbGlua19mcmVlKHNsYXZlKTsKKwl9CisJYWx0ZXJuYXRpdmVfY2hvaWNlc19mcmVlKGFsdCk7CisJYWx0ZXJuYXRpdmVfY29tbWl0X29wZXJhdGlvbnNfZnJlZShhbHQpOworCWFsdC0+bW9kaWZpZWQgPSBmYWxzZTsKK30KKworc3RhdGljIHZvaWQKK2FsdGVybmF0aXZlX2ZyZWUoc3RydWN0IGFsdGVybmF0aXZlICphbHQpCit7CisJaWYgKCFhbHRlcm5hdGl2ZV91bnJlZihhbHQpKQorCQlyZXR1cm47CisKKwlhbHRlcm5hdGl2ZV9yZXNldChhbHQpOworCWZyZWUoYWx0LT5tYXN0ZXJfbmFtZSk7CisJZnJlZShhbHQpOworfQorCitzdGF0aWMgaW50CithbHRlcm5hdGl2ZV9jaG9pY2VzX2NvdW50KHN0cnVjdCBhbHRlcm5hdGl2ZSAqYWx0KQoreworCXN0cnVjdCBmaWxlc2V0ICpmczsKKwlpbnQgY291bnQgPSAwOworCisJZm9yIChmcyA9IGFsdC0+Y2hvaWNlczsgZnM7IGZzID0gZnMtPm5leHQpCisJCWNvdW50Kys7CisKKwlyZXR1cm4gY291bnQ7Cit9CisKK3N0YXRpYyBpbnQKK2FsdGVybmF0aXZlX3NsYXZlc19jb3VudChzdHJ1Y3QgYWx0ZXJuYXRpdmUgKmFsdCkKK3sKKwlzdHJ1Y3Qgc2xhdmVfbGluayAqc2w7CisJaW50IGNvdW50ID0gMDsKKworCWZvciAoc2wgPSBhbHQtPnNsYXZlczsgc2w7IHNsID0gc2wtPm5leHQpCisJCWNvdW50Kys7CisKKwlyZXR1cm4gY291bnQ7Cit9CisKK3N0YXRpYyBpbnQKK2NvbXBhcmVfZmlsZXNldChjb25zdCB2b2lkICp2YSwgY29uc3Qgdm9pZCAqdmIpCit7CisJY29uc3Qgc3RydWN0IGZpbGVzZXQgKmEgPSAqKGNvbnN0IHN0cnVjdCBmaWxlc2V0ICoqKXZhOworCWNvbnN0IHN0cnVjdCBmaWxlc2V0ICpiID0gKihjb25zdCBzdHJ1Y3QgZmlsZXNldCAqKil2YjsKKworCWFzc2VydChhICYmIGEtPm1hc3Rlcl9maWxlKTsKKwlhc3NlcnQoYiAmJiBiLT5tYXN0ZXJfZmlsZSk7CisKKwlyZXR1cm4gc3RyY21wKGEtPm1hc3Rlcl9maWxlLCBiLT5tYXN0ZXJfZmlsZSk7Cit9CisKK3N0YXRpYyBpbnQKK2NvbXBhcmVfc2xhdmVfbGluayhjb25zdCB2b2lkICp2YSwgY29uc3Qgdm9pZCAqdmIpCit7CisJY29uc3Qgc3RydWN0IHNsYXZlX2xpbmsgKmEgPSAqKGNvbnN0IHN0cnVjdCBzbGF2ZV9saW5rICoqKXZhOworCWNvbnN0IHN0cnVjdCBzbGF2ZV9saW5rICpiID0gKihjb25zdCBzdHJ1Y3Qgc2xhdmVfbGluayAqKil2YjsKKworCWFzc2VydChhICYmIGEtPm5hbWUpOworCWFzc2VydChiICYmIGItPm5hbWUpOworCisJcmV0dXJuIHN0cmNtcChhLT5uYW1lLCBiLT5uYW1lKTsKK30KKworc3RhdGljIHZvaWQKK2FsdGVybmF0aXZlX3NvcnRfY2hvaWNlcyhzdHJ1Y3QgYWx0ZXJuYXRpdmUgKmEpCit7CisJaW50IGNvdW50LCBpOworCXN0cnVjdCBmaWxlc2V0ICoqdGFibGUsICpmczsKKworCWNvdW50ID0gYWx0ZXJuYXRpdmVfY2hvaWNlc19jb3VudChhKTsKKwlpZiAoY291bnQgPCAyKSAvKiBOb3RoaW5nIHRvIHNvcnQgKi8KKwkJcmV0dXJuOworCisJLyogU3RvcmUgb2JqZWN0cyBpbiBhIHRhYmxlIGluc3RlYWQgb2YgYSBsaW5rZWQgbGlzdCAqLworCXRhYmxlID0geG1hbGxvYyhzaXplb2YoZnMpICogY291bnQpOworCWZvciAoZnMgPSBhLT5jaG9pY2VzLCBpID0gMDsgZnM7IGZzID0gZnMtPm5leHQpIHsKKwkJYXNzZXJ0KGZzLT5tYXN0ZXJfZmlsZSk7CisJCXRhYmxlW2krK10gPSBmczsKKwl9CisKKwlxc29ydCh0YWJsZSwgY291bnQsIHNpemVvZihmcyksIGNvbXBhcmVfZmlsZXNldCk7CisKKwkvKiBSZXdyaXRlIHRoZSBsaW5rZWQgbGlzdCBmcm9tIHRoZSBzb3J0ZWQgdGFibGUgKi8KKwlhLT5jaG9pY2VzID0gZnMgPSB0YWJsZVswXTsKKwl0YWJsZVtjb3VudCAtIDFdLT5uZXh0ID0gTlVMTDsKKwlmb3IgKGkgPSAxOyBpIDwgY291bnQ7IGZzID0gZnMtPm5leHQsIGkrKykKKwkJZnMtPm5leHQgPSB0YWJsZVtpXTsKKwlmcmVlKHRhYmxlKTsKK30KKworc3RhdGljIHZvaWQKK2FsdGVybmF0aXZlX3NvcnRfc2xhdmVzKHN0cnVjdCBhbHRlcm5hdGl2ZSAqYSkKK3sKKwlpbnQgY291bnQsIGk7CisJc3RydWN0IHNsYXZlX2xpbmsgKip0YWJsZSwgKnNsOworCisJY291bnQgPSBhbHRlcm5hdGl2ZV9zbGF2ZXNfY291bnQoYSk7CisJaWYgKGNvdW50IDwgMikgLyogTm90aGluZyB0byBzb3J0ICovCisJCXJldHVybjsKKworCS8qIFN0b3JlIG9iamVjdHMgaW4gYSB0YWJsZSBpbnN0ZWFkIG9mIGEgbGlua2VkIGxpc3QgKi8KKwl0YWJsZSA9IHhtYWxsb2Moc2l6ZW9mKHNsKSAqIGNvdW50KTsKKwlmb3IgKHNsID0gYS0+c2xhdmVzLCBpID0gMDsgc2w7IHNsID0gc2wtPm5leHQsIGkrKykgeworCQl0YWJsZVtpXSA9IHNsOworCX0KKworCXFzb3J0KHRhYmxlLCBjb3VudCwgc2l6ZW9mKHNsKSwgY29tcGFyZV9zbGF2ZV9saW5rKTsKKworCS8qIFJld3JpdGUgdGhlIGxpbmtlZCBsaXN0IGZyb20gdGhlIHNvcnRlZCB0YWJsZSAqLworCWEtPnNsYXZlcyA9IHNsID0gdGFibGVbMF07CisJdGFibGVbY291bnQgLSAxXS0+bmV4dCA9IE5VTEw7CisJZm9yIChpID0gMTsgaSA8IGNvdW50OyBzbCA9IHNsLT5uZXh0LCBpKyspCisJCXNsLT5uZXh0ID0gdGFibGVbaV07CisJZnJlZSh0YWJsZSk7Cit9CisKK3N0YXRpYyBzdHJ1Y3QgZmlsZXNldCAqCithbHRlcm5hdGl2ZV9nZXRfZmlsZXNldChzdHJ1Y3QgYWx0ZXJuYXRpdmUgKmEsIGNvbnN0IGNoYXIgKmZpbGUpCit7CisJc3RydWN0IGZpbGVzZXQgKmZzOworCisJZm9yIChmcyA9IGEtPmNob2ljZXM7IGZzOyBmcyA9IGZzLT5uZXh0KQorCQlpZiAoc3RyY21wKGZzLT5tYXN0ZXJfZmlsZSwgZmlsZSkgPT0gMCkKKwkJCXJldHVybiBmczsKKworCXJldHVybiBOVUxMOworfQorCitzdGF0aWMgc3RydWN0IHNsYXZlX2xpbmsgKgorYWx0ZXJuYXRpdmVfZ2V0X3NsYXZlKHN0cnVjdCBhbHRlcm5hdGl2ZSAqYSwgY29uc3QgY2hhciAqbmFtZSkKK3sKKwlzdHJ1Y3Qgc2xhdmVfbGluayAqc2w7CisKKwlmb3IgKHNsID0gYS0+c2xhdmVzOyBzbDsgc2wgPSBzbC0+bmV4dCkKKwkJaWYgKHN0cmNtcChzbC0+bmFtZSwgbmFtZSkgPT0gMCkKKwkJCXJldHVybiBzbDsKKworCXJldHVybiBOVUxMOworfQorCitzdGF0aWMgYm9vbAorYWx0ZXJuYXRpdmVfaGFzX3NsYXZlKHN0cnVjdCBhbHRlcm5hdGl2ZSAqYSwgY29uc3QgY2hhciAqbmFtZSkKK3sKKwlyZXR1cm4gYWx0ZXJuYXRpdmVfZ2V0X3NsYXZlKGEsIG5hbWUpID8gdHJ1ZSA6IGZhbHNlOworfQorCitzdGF0aWMgYm9vbAorYWx0ZXJuYXRpdmVfaGFzX2Nob2ljZShzdHJ1Y3QgYWx0ZXJuYXRpdmUgKmEsIGNvbnN0IGNoYXIgKmZpbGUpCit7CisJcmV0dXJuIGFsdGVybmF0aXZlX2dldF9maWxlc2V0KGEsIGZpbGUpID8gdHJ1ZSA6IGZhbHNlOworfQorCitzdGF0aWMgdm9pZAorYWx0ZXJuYXRpdmVfYWRkX2Nob2ljZShzdHJ1Y3QgYWx0ZXJuYXRpdmUgKmEsIHN0cnVjdCBmaWxlc2V0ICpmcykKK3sKKwlzdHJ1Y3QgZmlsZXNldCAqY3VyLCAqcHJldiA9IE5VTEw7CisKKwkvKiBSZXBsYWNlIGlmIGFscmVhZHkgZXhpc3RpbmcgKi8KKwlmb3IgKGN1ciA9IGEtPmNob2ljZXM7IGN1cjsgY3VyID0gY3VyLT5uZXh0KSB7CisJCWlmIChzdHJjbXAoY3VyLT5tYXN0ZXJfZmlsZSwgZnMtPm1hc3Rlcl9maWxlKSA9PSAwKSB7CisJCQlmcy0+bmV4dCA9IGN1ci0+bmV4dDsKKwkJCWZpbGVzZXRfZnJlZShjdXIpOworCQkJaWYgKHByZXYpCisJCQkJcHJldi0+bmV4dCA9IGZzOworCQkJZWxzZQorCQkJCWEtPmNob2ljZXMgPSBmczsKKworCQkJLyogWFhYOiBCZSBzbWFydGVyIGluIGRldGVjdGluZyBjaGFuZ2U/ICovCisJCQlhLT5tb2RpZmllZCA9IHRydWU7CisJCQlyZXR1cm47CisJCX0KKwkJcHJldiA9IGN1cjsKKwl9CisKKwkvKiBPdGhlcndpc2UgYWRkIGF0IHRoZSBlbmQgKi8KKwlpZiAocHJldiA9PSBOVUxMKQorCQlhLT5jaG9pY2VzID0gZnM7CisJZWxzZQorCQlwcmV2LT5uZXh0ID0gZnM7CisJZnMtPm5leHQgPSBOVUxMOworCWEtPm1vZGlmaWVkID0gdHJ1ZTsKK30KKworLyogc2xhdmVfbmFtZSBhbmQgc2xhdmVfbGluayBtdXN0IGJlIGFsbG9jYXRlZCB3aXRoIG1hbGxvYyAqLworc3RhdGljIHZvaWQKK2FsdGVybmF0aXZlX2FkZF9zbGF2ZShzdHJ1Y3QgYWx0ZXJuYXRpdmUgKmEsIGNoYXIgKnNsYXZlX25hbWUsCisgICAgICAgICAgICAgICAgICAgICAgY2hhciAqc2xhdmVfbGluaykKK3sKKwlzdHJ1Y3Qgc2xhdmVfbGluayAqc2wsICpuZXc7CisKKwkvKiBSZXBsYWNlIGlmIGFscmVhZHkgZXhpc3RpbmcgKi8KKwlmb3IgKHNsID0gYS0+c2xhdmVzOyBzbDsgc2wgPSBzbC0+bmV4dCkgeworCQlpZiAoc3RyY21wKHNsLT5uYW1lLCBzbGF2ZV9uYW1lKSA9PSAwKSB7CisJCQlmcmVlKHNsLT5saW5rKTsKKwkJCXNsLT5saW5rID0geHN0cmR1cChzbGF2ZV9saW5rKTsKKwkJCXJldHVybjsKKwkJfQorCQlpZiAoc2wtPm5leHQgPT0gTlVMTCkKKwkJCWJyZWFrOworCX0KKworCS8qIE90aGVyd2lzZSBjcmVhdGUgbmV3IGFuZCBhZGQgYXQgdGhlIGVuZCAqLworCW5ldyA9IHhtYWxsb2Moc2l6ZW9mKCpuZXcpKTsKKwluZXctPm5hbWUgPSBzbGF2ZV9uYW1lOworCW5ldy0+bGluayA9IHNsYXZlX2xpbms7CisJbmV3LT5uZXh0ID0gTlVMTDsKKwlpZiAoc2wpCisJCXNsLT5uZXh0ID0gbmV3OworCWVsc2UKKwkJYS0+c2xhdmVzID0gbmV3OworfQorCitzdGF0aWMgY29uc3QgY2hhciAqCithbHRlcm5hdGl2ZV9zdGF0dXNfc3RyaW5nKGVudW0gYWx0ZXJuYXRpdmVfc3RhdHVzIHN0YXR1cykKK3sKKwlyZXR1cm4gKHN0YXR1cyA9PSBBTFRfU1RfQVVUTykgPyAiYXV0byIgOiAibWFudWFsIjsKK30KKworc3RhdGljIHZvaWQKK2FsdGVybmF0aXZlX3NldF9zdGF0dXMoc3RydWN0IGFsdGVybmF0aXZlICphLCBlbnVtIGFsdGVybmF0aXZlX3N0YXR1cyBzdGF0dXMpCit7CisJaWYgKGEtPnN0YXR1cyA9PSBBTFRfU1RfVU5LTk9XTiB8fCBzdGF0dXMgIT0gYS0+c3RhdHVzKQorCQlhLT5tb2RpZmllZCA9IHRydWU7CisKKwlpZiAoYS0+c3RhdHVzICE9IEFMVF9TVF9VTktOT1dOICYmIHN0YXR1cyAhPSBhLT5zdGF0dXMpCisJCWxvZ19tc2coInN0YXR1cyBvZiBsaW5rIGdyb3VwICVzIHNldCB0byAlcyIsIGEtPm1hc3Rlcl9saW5rLAorCQkgICAgICAgIGFsdGVybmF0aXZlX3N0YXR1c19zdHJpbmcoc3RhdHVzKSk7CisKKwlhLT5zdGF0dXMgPSBzdGF0dXM7Cit9CisKKy8qIGxpbmsgbXVzdCBiZSBhbGxvY2F0ZWQgd2l0aCBtYWxsb2MgKi8KK3N0YXRpYyB2b2lkCithbHRlcm5hdGl2ZV9zZXRfbGluayhzdHJ1Y3QgYWx0ZXJuYXRpdmUgKmEsIGNoYXIgKmxpbmtuYW1lKQoreworCWlmIChhLT5tYXN0ZXJfbGluayA9PSBOVUxMIHx8IHN0cmNtcChsaW5rbmFtZSwgYS0+bWFzdGVyX2xpbmspICE9IDApCisJCWEtPm1vZGlmaWVkID0gdHJ1ZTsKKworCWZyZWUoYS0+bWFzdGVyX2xpbmspOworCWEtPm1hc3Rlcl9saW5rID0gbGlua25hbWU7Cit9CisKK3N0YXRpYyBib29sCithbHRlcm5hdGl2ZV9yZW1vdmVfY2hvaWNlKHN0cnVjdCBhbHRlcm5hdGl2ZSAqYSwgY29uc3QgY2hhciAqZmlsZSkKK3sKKwlzdHJ1Y3QgZmlsZXNldCAqZnMsICpmc19wcmV2OworCisJZnNfcHJldiA9IE5VTEw7CisJZm9yIChmcyA9IGEtPmNob2ljZXM7IGZzOyBmcyA9IGZzLT5uZXh0KSB7CisJCWlmIChzdHJjbXAoZnMtPm1hc3Rlcl9maWxlLCBmaWxlKSAhPSAwKSB7CisJCQlmc19wcmV2ID0gZnM7CisJCQljb250aW51ZTsKKwkJfQorCQlpZiAoZnNfcHJldikKKwkJCWZzX3ByZXYtPm5leHQgPSBmcy0+bmV4dDsKKwkJZWxzZQorCQkJYS0+Y2hvaWNlcyA9IGZzLT5uZXh0OworCQlmaWxlc2V0X2ZyZWUoZnMpOworCQlhLT5tb2RpZmllZCA9IHRydWU7CisJCXJldHVybiB0cnVlOworCX0KKworCXJldHVybiBmYWxzZTsKK30KKworLyoKKyAqIEFsdGVybmF0aXZlcyBEYXRhYmFzZSBMb2FkL1N0b3JlIGZ1bmN0aW9ucy4KKyAqLworCitzdHJ1Y3QgYWx0ZGJfY29udGV4dCB7CisJRklMRSAqZmg7CisJY2hhciAqZmlsZW5hbWU7CisJdm9pZCBEUEtHX0FUVFJfUFJJTlRGKDIpICgqYmFkX2Zvcm1hdCkoc3RydWN0IGFsdGRiX2NvbnRleHQgKiwgY29uc3QgY2hhciAqZm9ybWF0LCAuLi4pOworCWptcF9idWYgb25fZXJyb3I7Cit9OworCitzdGF0aWMgY2hhciAqCithbHRkYl9nZXRfbGluZShzdHJ1Y3QgYWx0ZGJfY29udGV4dCAqY3R4LCBjb25zdCBjaGFyICpuYW1lKQoreworCWNoYXIgKmJ1ZiwgKmxpbmU7CisJc2l6ZV90IGxlbiwgYnVmc3osIGk7CisKKwlidWZzeiA9IDEwMjQ7CisJYnVmID0geG1hbGxvYyhidWZzeik7CisKKwlmb3IgKGkgPSAwOyB0cnVlOyBpICs9IHN0cmxlbihsaW5lKSkgeworCQllcnJubyA9IDA7CisJCWxpbmUgPSBmZ2V0cyhidWYgKyBpLCBidWZzeiAtIGksIGN0eC0+ZmgpOworCQlpZiAobGluZSkgeworCQkJaWYgKHN0cmxlbihidWYpIDwgYnVmc3ogLSAxIHx8IGJ1ZltidWZzeiAtIDJdID09ICdcbicpCisJCQkJYnJlYWs7CisJCQkvKiBOZWVkIG1vcmUgc3BhY2UgKi8KKwkJCWJ1ZnN6ICo9IDI7CisJCQlidWYgPSByZWFsbG9jKGJ1ZiwgYnVmc3opOworCQkJaWYgKCFidWYpCisJCQkJZXJyb3IoXygiZmFpbGVkIHRvIGFsbG9jYXRlIG1lbW9yeSIpKTsKKwkJCWNvbnRpbnVlOworCQl9CisJCWlmIChmZW9mKGN0eC0+ZmgpKQorCQkJY3R4LT5iYWRfZm9ybWF0KGN0eCwgXygidW5leHBlY3RlZCBlbmQgb2YgZmlsZSB3aGlsZSB0cnlpbmcgIgorCQkJICAgICAgICAgICAgICAgICAgICAgICAidG8gcmVhZCAlcyIpLCBuYW1lKTsKKwkJY3R4LT5iYWRfZm9ybWF0KGN0eCwgXygid2hpbGUgcmVhZGluZyAlczogJXMiKSwKKwkJICAgICAgICAgICAgICAgIG5hbWUsIHN0cmVycm9yKGVycm5vKSk7CisJfQorCisJbGVuID0gc3RybGVuKGJ1Zik7CisJaWYgKGxlbiA9PSAwIHx8IGJ1ZltsZW4gLSAxXSAhPSAnXG4nKSB7CisJCWN0eC0+YmFkX2Zvcm1hdChjdHgsIF8oImxpbmUgbm90IHRlcm1pbmF0ZWQgd2hpbGUgdHJ5aW5nICIKKwkJICAgICAgICAgICAgICAgICAgICAgICAidG8gcmVhZCAlcyIpLCBuYW1lKTsKKwl9CisJbGluZVtsZW4gLSAxXSA9ICdcMCc7CisKKwlyZXR1cm4gYnVmOworfQorCitzdGF0aWMgdm9pZCBEUEtHX0FUVFJfTk9SRVQgRFBLR19BVFRSX1BSSU5URigyKQorYWx0ZGJfcGFyc2VfZXJyb3Ioc3RydWN0IGFsdGRiX2NvbnRleHQgKmN0eCwgY29uc3QgY2hhciAqZm9ybWF0LCAuLi4pCit7CisJY2hhciAqbXNnOworCXZhX2xpc3QgYXJnczsKKworCXZhX3N0YXJ0KGFyZ3MsIGZvcm1hdCk7CisJeHZhc3ByaW50ZigmbXNnLCBmb3JtYXQsIGFyZ3MpOworCXZhX2VuZChhcmdzKTsKKworCWVycm9yKF8oIiVzIGNvcnJ1cHQ6ICVzIiksIGN0eC0+ZmlsZW5hbWUsIG1zZyk7Cit9CisKK3N0YXRpYyB2b2lkIERQS0dfQVRUUl9OT1JFVCBEUEtHX0FUVFJfUFJJTlRGKDIpCithbHRkYl9pbnRlcnJ1cHRfcGFyc2luZyhzdHJ1Y3QgYWx0ZGJfY29udGV4dCAqY3R4LCBjb25zdCBjaGFyICpmb3JtYXQsIC4uLikKK3sKKwlsb25nam1wKGN0eC0+b25fZXJyb3IsIDEpOworfQorCitzdGF0aWMgdm9pZAorYWx0ZGJfcHJpbnRfbGluZShzdHJ1Y3QgYWx0ZGJfY29udGV4dCAqY3R4LCBjb25zdCBjaGFyICpsaW5lKQoreworCWlmIChzdHJjaHIobGluZSwgJ1xuJykgIT0gTlVMTCkKKwkJZXJyb3IoXygibmV3bGluZXMgcHJvaGliaXRlZCBpbiB1cGRhdGUtYWx0ZXJuYXRpdmVzIGZpbGVzICglcykiKSwKKwkJICAgICAgbGluZSk7CisKKwlpZiAoZnByaW50ZihjdHgtPmZoLCAiJXNcbiIsIGxpbmUpIDwgKGludCkgc3RybGVuKGxpbmUpICsgMSkKKwkJc3lzZXJyKF8oInVuYWJsZSB0byB3cml0ZSBmaWxlICclcyciKSwgY3R4LT5maWxlbmFtZSk7Cit9CisKK3N0YXRpYyBib29sCithbHRlcm5hdGl2ZV9wYXJzZV9zbGF2ZShzdHJ1Y3QgYWx0ZXJuYXRpdmUgKmEsIHN0cnVjdCBhbHRkYl9jb250ZXh0ICpjdHgpCit7CisJY2hhciAqbmFtZSwgKmxpbmtuYW1lOworCXN0cnVjdCBzbGF2ZV9saW5rICpzbDsKKworCW5hbWUgPSBhbHRkYl9nZXRfbGluZShjdHgsIF8oInNsYXZlIG5hbWUiKSk7CisJaWYgKCFzdHJsZW4obmFtZSkpIHsgLyogRW5kIG9mIGxpc3QgKi8KKwkJZnJlZShuYW1lKTsKKwkJcmV0dXJuIGZhbHNlOworCX0KKwlpZiAoYWx0ZXJuYXRpdmVfaGFzX3NsYXZlKGEsIG5hbWUpKSB7CisJCXNsID0gYWx0ZXJuYXRpdmVfZ2V0X3NsYXZlKGEsIG5hbWUpOworCQlmcmVlKG5hbWUpOworCQljdHgtPmJhZF9mb3JtYXQoY3R4LCBfKCJkdXBsaWNhdGUgc2xhdmUgbmFtZSAlcyIpLCBzbC0+bmFtZSk7CisJfQorCisJbGlua25hbWUgPSBhbHRkYl9nZXRfbGluZShjdHgsIF8oInNsYXZlIGxpbmsiKSk7CisJaWYgKHN0cmNtcChsaW5rbmFtZSwgYS0+bWFzdGVyX2xpbmspID09IDApIHsKKwkJZnJlZShsaW5rbmFtZSk7CisJCWZyZWUobmFtZSk7CisJCWN0eC0+YmFkX2Zvcm1hdChjdHgsIF8oInNsYXZlIGxpbmsgc2FtZSBhcyBtYWluIGxpbmsgJXMiKSwKKwkJICAgICAgICAgICAgICAgIGEtPm1hc3Rlcl9saW5rKTsKKwl9CisJZm9yKHNsID0gYS0+c2xhdmVzOyBzbDsgc2wgPSBzbC0+bmV4dCkgeworCQlpZiAoc3RyY21wKGxpbmtuYW1lLCBzbC0+bGluaykgPT0gMCkgeworCQkJZnJlZShsaW5rbmFtZSk7CisJCQlmcmVlKG5hbWUpOworCQkJY3R4LT5iYWRfZm9ybWF0KGN0eCwgXygiZHVwbGljYXRlIHNsYXZlIGxpbmsgJXMiKSwKKwkJCSAgICAgICAgICAgICAgICBzbC0+bGluayk7CisJCX0KKwl9CisKKwlhbHRlcm5hdGl2ZV9hZGRfc2xhdmUoYSwgbmFtZSwgbGlua25hbWUpOworCisJcmV0dXJuIHRydWU7Cit9CisKK3N0YXRpYyBib29sCithbHRlcm5hdGl2ZV9wYXJzZV9maWxlc2V0KHN0cnVjdCBhbHRlcm5hdGl2ZSAqYSwgc3RydWN0IGFsdGRiX2NvbnRleHQgKmN0eCwKKwkJCSAgYm9vbCAqbW9kaWZpZWQsIGJvb2wgbXVzdF9ub3RfZGllKQoreworCXN0cnVjdCBmaWxlc2V0ICpmczsKKwlzdHJ1Y3Qgc2xhdmVfbGluayAqc2w7CisJc3RydWN0IHN0YXQgc3Q7CisJY2hhciAqbWFzdGVyX2ZpbGU7CisKKwltYXN0ZXJfZmlsZSA9IGFsdGRiX2dldF9saW5lKGN0eCwgXygibWFzdGVyIGZpbGUiKSk7CisJaWYgKCFzdHJsZW4obWFzdGVyX2ZpbGUpKSB7IC8qIEVuZCBvZiBsaXN0ICovCisJCWZyZWUobWFzdGVyX2ZpbGUpOworCQlyZXR1cm4gZmFsc2U7CisJfQorCisJZm9yIChmcyA9IGEtPmNob2ljZXM7IGZzOyBmcyA9IGZzLT5uZXh0KSB7CisJCWlmIChzdHJjbXAoZnMtPm1hc3Rlcl9maWxlLCBtYXN0ZXJfZmlsZSkgPT0gMCkgeworCQkJZnJlZShtYXN0ZXJfZmlsZSk7CisJCQljdHgtPmJhZF9mb3JtYXQoY3R4LCBfKCJkdXBsaWNhdGUgcGF0aCAlcyIpLAorCQkJICAgICAgICAgICAgICAgIGZzLT5tYXN0ZXJfZmlsZSk7CisJCX0KKwl9CisKKwlpZiAoc3RhdChtYXN0ZXJfZmlsZSwgJnN0KSkgeworCQljaGFyICpqdW5rOworCisJCWlmIChlcnJubyAhPSBFTk9FTlQpCisJCQlzeXNlcnIoXygiY2Fubm90IHN0YXQgZmlsZSAnJXMnIiksIG1hc3Rlcl9maWxlKTsKKworCQkvKiBGaWxlIG5vdCBmb3VuZCAtIHJlbW92ZS4gKi8KKwkJaWYgKCFtdXN0X25vdF9kaWUpCisJCQl3YXJuaW5nKF8oImFsdGVybmF0aXZlICVzIChwYXJ0IG9mIGxpbmsgZ3JvdXAgJXMpICIKKwkJCSAgICAgICAgICAiZG9lc24ndCBleGlzdC4gUmVtb3ZpbmcgZnJvbSBsaXN0IG9mICIKKwkJCSAgICAgICAgICAiYWx0ZXJuYXRpdmVzLiIpLCBtYXN0ZXJfZmlsZSwgYS0+bWFzdGVyX25hbWUpOworCQlqdW5rID0gYWx0ZGJfZ2V0X2xpbmUoY3R4LCBfKCJwcmlvcml0eSIpKTsKKwkJZnJlZShqdW5rKTsKKwkJZm9yIChzbCA9IGEtPnNsYXZlczsgc2w7IHNsID0gc2wtPm5leHQpIHsKKwkJCWp1bmsgPSBhbHRkYl9nZXRfbGluZShjdHgsIF8oInNsYXZlIGZpbGUiKSk7CisJCQlmcmVlKGp1bmspOworCQl9CisJCSptb2RpZmllZCA9IHRydWU7CisJfSBlbHNlIHsKKwkJY2hhciAqZW5kcHRyLCAqcHJpbzsKKwkJbG9uZyBpbnQgaXByaW87CisKKwkJcHJpbyA9IGFsdGRiX2dldF9saW5lKGN0eCwgXygicHJpb3JpdHkiKSk7CisJCWlwcmlvID0gc3RydG9sKHByaW8sICZlbmRwdHIsIDEwKTsKKwkJLyogWFhYOiBMZWFrIG1hc3Rlcl9maWxlL3ByaW8gb24gbm9uLWZhdGFsIGVycm9yICovCisJCWlmICgqZW5kcHRyICE9ICdcMCcpCisJCQljdHgtPmJhZF9mb3JtYXQoY3R4LCBfKCJwcmlvcml0eSBvZiAlczogJXMiKSwKKwkJCSAgICAgICAgICAgICAgICBtYXN0ZXJfZmlsZSwgcHJpbyk7CisJCWZzID0gZmlsZXNldF9uZXcobWFzdGVyX2ZpbGUsIChpbnQpIGlwcmlvKTsKKwkJZm9yIChzbCA9IGEtPnNsYXZlczsgc2w7IHNsID0gc2wtPm5leHQpIHsKKwkJCWZpbGVzZXRfYWRkX3NsYXZlKGZzLCB4c3RyZHVwKHNsLT5uYW1lKSwKKwkJCSAgICAgICAgICAgICAgICAgIGFsdGRiX2dldF9saW5lKGN0eCwgXygic2xhdmUgZmlsZSIpKSk7CisJCX0KKwkJYWx0ZXJuYXRpdmVfYWRkX2Nob2ljZShhLCBmcyk7CisJfQorCXJldHVybiB0cnVlOworfQorCitzdGF0aWMgYm9vbAorYWx0ZXJuYXRpdmVfbG9hZChzdHJ1Y3QgYWx0ZXJuYXRpdmUgKmEsIGJvb2wgbXVzdF9ub3RfZGllKQoreworCXN0cnVjdCBhbHRkYl9jb250ZXh0IGN0eDsKKwlzdHJ1Y3Qgc3RhdCBzdDsKKwljaGFyICpmbiwgKnN0YXR1czsKKwlib29sIG1vZGlmaWVkID0gZmFsc2U7CisKKwkvKiBJbml0aWFsaXplIHBhcnNlIGNvbnRleHQgKi8KKwlpZiAoc2V0am1wKGN0eC5vbl9lcnJvcikpIHsKKwkJaWYgKGN0eC5maCkKKwkJCWZjbG9zZShjdHguZmgpOworCQlmcmVlKGN0eC5maWxlbmFtZSk7CisJCWFsdGVybmF0aXZlX3Jlc2V0KGEpOworCQlyZXR1cm4gZmFsc2U7CisJfQorCWlmIChtdXN0X25vdF9kaWUpCisJCWN0eC5iYWRfZm9ybWF0ID0gYWx0ZGJfaW50ZXJydXB0X3BhcnNpbmc7CisJZWxzZQorCQljdHguYmFkX2Zvcm1hdCA9IGFsdGRiX3BhcnNlX2Vycm9yOworCXhhc3ByaW50ZigmZm4sICIlcy8lcyIsIGFkbWRpciwgYS0+bWFzdGVyX25hbWUpOworCWN0eC5maWxlbmFtZSA9IGZuOworCisJLyogVmVyaWZ5IHRoZSBhbHRlcm5hdGl2ZSBleGlzdHMgKi8KKwlpZiAoc3RhdChjdHguZmlsZW5hbWUsICZzdCkgPT0gLTEpIHsKKwkJaWYgKGVycm5vID09IEVOT0VOVCkKKwkJCXJldHVybiBmYWxzZTsKKwkJZWxzZQorCQkJc3lzZXJyKF8oImNhbm5vdCBzdGF0IGZpbGUgJyVzJyIpLCBjdHguZmlsZW5hbWUpOworCX0KKwlpZiAoc3Quc3Rfc2l6ZSA9PSAwKSB7CisJCXJldHVybiBmYWxzZTsKKwl9CisKKwkvKiBPcGVuIHRoZSBkYXRhYmFzZSBmaWxlICovCisJY3R4LmZoID0gZm9wZW4oY3R4LmZpbGVuYW1lLCAiciIpOworCWlmIChjdHguZmggPT0gTlVMTCkKKwkJc3lzZXJyKF8oInVuYWJsZSB0byBvcGVuIGZpbGUgJyVzJyIpLCBjdHguZmlsZW5hbWUpOworCisJLyogU3RhcnQgcGFyc2luZyBtYW5kYXRvcnkgYXR0cmlidXRlcyAobGluaytzdGF0dXMpIG9mIHRoZSBhbHRlcm5hdGl2ZSAqLworCWFsdGVybmF0aXZlX3Jlc2V0KGEpOworCXN0YXR1cyA9IGFsdGRiX2dldF9saW5lKCZjdHgsIF8oInN0YXR1cyIpKTsKKwlpZiAoc3RyY21wKHN0YXR1cywgImF1dG8iKSAhPSAwICYmIHN0cmNtcChzdGF0dXMsICJtYW51YWwiKSAhPSAwKQorCQljdHguYmFkX2Zvcm1hdCgmY3R4LCBfKCJpbnZhbGlkIHN0YXR1cyIpKTsKKwlhbHRlcm5hdGl2ZV9zZXRfc3RhdHVzKGEsIChzdHJjbXAoc3RhdHVzLCAiYXV0byIpID09IDApID8KKwkgICAgICAgICAgICAgICAgICAgICAgIEFMVF9TVF9BVVRPIDogQUxUX1NUX01BTlVBTCk7CisJZnJlZShzdGF0dXMpOworCisJYWx0ZXJuYXRpdmVfc2V0X2xpbmsoYSwgYWx0ZGJfZ2V0X2xpbmUoJmN0eCwgXygibWFzdGVyIGxpbmsiKSkpOworCisJLyogUGFyc2UgdGhlIGRlc2NyaXB0aW9uIG9mIHRoZSBzbGF2ZXMgbGlua3Mgb2YgdGhlIGFsdGVybmF0aXZlICovCisJd2hpbGUgKGFsdGVybmF0aXZlX3BhcnNlX3NsYXZlKGEsICZjdHgpKTsKKworCS8qIFBhcnNlIHRoZSBhdmFpbGFibGUgY2hvaWNlcyBpbiB0aGUgYWx0ZXJuYXRpdmUgKi8KKwl3aGlsZSAoYWx0ZXJuYXRpdmVfcGFyc2VfZmlsZXNldChhLCAmY3R4LCAmbW9kaWZpZWQsIG11c3Rfbm90X2RpZSkpOworCisJLyogQ2xvc2UgZGF0YWJhc2UgZmlsZSAqLworCWlmIChmY2xvc2UoY3R4LmZoKSkKKwkJc3lzZXJyKF8oInVuYWJsZSB0byBjbG9zZSBmaWxlICclcyciKSwgY3R4LmZpbGVuYW1lKTsKKwlmcmVlKGN0eC5maWxlbmFtZSk7CisKKwkvKiBJbml0aWFsaXplIHRoZSBtb2RpZmllZCBmaWVsZCB3aGljaCBoYXMgYmVlbiBlcnJvbmVvdXNseSBjaGFuZ2VkCisJICogYnkgdGhlIHZhcmlvdXMgYWx0ZXJuYXRpdmVfKGFkZHxzZXQpXyogY2FsbHM6CisJICogZmFsc2UgdW5sZXNzIGEgY2hvaWNlIGhhcyBiZWVuIGF1dG8tY2xlYW5lZCAqLworCWEtPm1vZGlmaWVkID0gbW9kaWZpZWQ7CisKKwlyZXR1cm4gdHJ1ZTsKK30KKworc3RhdGljIHZvaWQKK2FsdGVybmF0aXZlX3NhdmUoc3RydWN0IGFsdGVybmF0aXZlICphKQoreworCXN0cnVjdCBhbHRkYl9jb250ZXh0IGN0eDsKKwlzdHJ1Y3Qgc2xhdmVfbGluayAqc2wsICpzbF9wcmV2OworCXN0cnVjdCBmaWxlc2V0ICpmczsKKwljaGFyICpmaWxlbmV3LCAqZmlsZTsKKworCS8qIENsZWFudXAgdW51c2VkIHNsYXZlcyBiZWZvcmUgd3JpdGluZyBhZG1pbiBmaWxlLiAqLworCXNsX3ByZXYgPSBOVUxMOworCWZvciAoc2wgPSBhLT5zbGF2ZXM7IHNsOyBzbF9wcmV2ID0gc2wsIHNsID0gc2wtPm5leHQpIHsKKwkJYm9vbCBoYXNfc2xhdmUgPSBmYWxzZTsKKworCQlmb3IgKGZzID0gYS0+Y2hvaWNlczsgZnM7IGZzID0gZnMtPm5leHQpIHsKKwkJCWlmIChmaWxlc2V0X2hhc19zbGF2ZShmcywgc2wtPm5hbWUpKSB7CisJCQkJaGFzX3NsYXZlID0gdHJ1ZTsKKwkJCQlicmVhazsKKwkJCX0KKwkJfQorCisJCWlmICghaGFzX3NsYXZlKSB7CisJCQlzdHJ1Y3Qgc2xhdmVfbGluayAqc2xfcm07CisKKwkJCXZlcmJvc2UoXygiZGlzY2FyZGluZyBvYnNvbGV0ZSBzbGF2ZSBsaW5rICVzICglcykuIiksCisJCQkgICAgICAgIHNsLT5uYW1lLCBzbC0+bGluayk7CisJCQlpZiAoc2xfcHJldikKKwkJCQlzbF9wcmV2LT5uZXh0ID0gc2wtPm5leHQ7CisJCQllbHNlCisJCQkJYS0+c2xhdmVzID0gc2wtPm5leHQ7CisJCQlzbF9ybSA9IHNsOworCQkJc2wgPSBzbF9wcmV2ID8gc2xfcHJldiA6IGEtPnNsYXZlczsKKwkJCXNsYXZlX2xpbmtfZnJlZShzbF9ybSk7CisJCQlpZiAoIXNsKQorCQkJCWJyZWFrOyAvKiBObyBvdGhlciBzbGF2ZSBsZWZ0LiAqLworCQl9CisJfQorCisJLyogU29ydCBlbnRyaWVzICovCisJYWx0ZXJuYXRpdmVfc29ydF9zbGF2ZXMoYSk7CisJYWx0ZXJuYXRpdmVfc29ydF9jaG9pY2VzKGEpOworCisJLyogV3JpdGUgYWRtaW4gZmlsZS4gKi8KKwl4YXNwcmludGYoJmZpbGUsICIlcy8lcyIsIGFkbWRpciwgYS0+bWFzdGVyX25hbWUpOworCXhhc3ByaW50ZigmZmlsZW5ldywgIiVzIiBEUEtHX1RNUF9FWFQsIGZpbGUpOworCisJY3R4LmZpbGVuYW1lID0gZmlsZW5ldzsKKwljdHguZmggPSBmb3BlbihjdHguZmlsZW5hbWUsICJ3Iik7CisJaWYgKGN0eC5maCA9PSBOVUxMKQorCQlzeXNlcnIoXygidW5hYmxlIHRvIGNyZWF0ZSBmaWxlICclcyciKSwgY3R4LmZpbGVuYW1lKTsKKworCWFsdGRiX3ByaW50X2xpbmUoJmN0eCwgYWx0ZXJuYXRpdmVfc3RhdHVzX3N0cmluZyhhLT5zdGF0dXMpKTsKKwlhbHRkYl9wcmludF9saW5lKCZjdHgsIGEtPm1hc3Rlcl9saW5rKTsKKwlmb3IgKHNsID0gYS0+c2xhdmVzOyBzbDsgc2wgPSBzbC0+bmV4dCkgeworCQlhbHRkYl9wcmludF9saW5lKCZjdHgsIHNsLT5uYW1lKTsKKwkJYWx0ZGJfcHJpbnRfbGluZSgmY3R4LCBzbC0+bGluayk7CisJfQorCWFsdGRiX3ByaW50X2xpbmUoJmN0eCwgIiIpOworCisJZm9yIChmcyA9IGEtPmNob2ljZXM7IGZzOyBmcyA9IGZzLT5uZXh0KSB7CisJCWNoYXIgKnByaW87CisKKwkJYWx0ZGJfcHJpbnRfbGluZSgmY3R4LCBmcy0+bWFzdGVyX2ZpbGUpOworCisJCXhhc3ByaW50ZigmcHJpbywgIiVkIiwgZnMtPnByaW9yaXR5KTsKKwkJYWx0ZGJfcHJpbnRfbGluZSgmY3R4LCBwcmlvKTsKKwkJZnJlZShwcmlvKTsKKworCQlmb3IgKHNsID0gYS0+c2xhdmVzOyBzbDsgc2wgPSBzbC0+bmV4dCkgeworCQkJaWYgKGZpbGVzZXRfaGFzX3NsYXZlKGZzLCBzbC0+bmFtZSkpCisJCQkJYWx0ZGJfcHJpbnRfbGluZSgmY3R4LAorCQkJCSAgICAgICAgZmlsZXNldF9nZXRfc2xhdmUoZnMsIHNsLT5uYW1lKSk7CisJCQllbHNlCisJCQkJYWx0ZGJfcHJpbnRfbGluZSgmY3R4LCAiIik7CisJCX0KKwl9CisJYWx0ZGJfcHJpbnRfbGluZSgmY3R4LCAiIik7CisKKwkvKiBDbG9zZSBkYXRhYmFzZSBmaWxlICovCisJaWYgKGZmbHVzaChjdHguZmgpKQorCQlzeXNlcnIoXygidW5hYmxlIHRvIGZsdXNoIGZpbGUgJyVzJyIpLCBjdHguZmlsZW5hbWUpOworCWlmIChmc3luYyhmaWxlbm8oY3R4LmZoKSkpCisJCXN5c2VycihfKCJ1bmFibGUgdG8gc3luYyBmaWxlICclcyciKSwgY3R4LmZpbGVuYW1lKTsKKwlpZiAoZmNsb3NlKGN0eC5maCkpCisJCXN5c2VycihfKCJ1bmFibGUgdG8gY2xvc2UgZmlsZSAnJXMnIiksIGN0eC5maWxlbmFtZSk7CisKKwkvKiBQdXQgaW4gcGxhY2UgYXRvbWljYWxseS4gKi8KKwljaGVja2VkX212KGZpbGVuZXcsIGZpbGUpOworCisJZnJlZShmaWxlbmV3KTsKKwlmcmVlKGZpbGUpOworfQorCitzdGF0aWMgc3RydWN0IGZpbGVzZXQgKgorYWx0ZXJuYXRpdmVfZ2V0X2Jlc3Qoc3RydWN0IGFsdGVybmF0aXZlICphKQoreworCXN0cnVjdCBmaWxlc2V0ICpmcywgKmJlc3Q7CisKKwlmb3IgKGJlc3QgPSBmcyA9IGEtPmNob2ljZXM7IGZzOyBmcyA9IGZzLT5uZXh0KQorCQlpZiAoZnMtPnByaW9yaXR5ID4gYmVzdC0+cHJpb3JpdHkpCisJCQliZXN0ID0gZnM7CisKKwlyZXR1cm4gYmVzdDsKK30KKworc3RhdGljIGJvb2wKK2FsdGVybmF0aXZlX2hhc19jdXJyZW50X2xpbmsoc3RydWN0IGFsdGVybmF0aXZlICphKQoreworCXN0cnVjdCBzdGF0IHN0OworCWNoYXIgKmN1cmxpbms7CisKKwl4YXNwcmludGYoJmN1cmxpbmssICIlcy8lcyIsIGFsdGRpciwgYS0+bWFzdGVyX25hbWUpOworCWlmIChsc3RhdChjdXJsaW5rLCAmc3QpKSB7CisJCWlmIChlcnJubyA9PSBFTk9FTlQpIHsKKwkJCWZyZWUoY3VybGluayk7CisJCQlyZXR1cm4gZmFsc2U7CisJCX0KKwkJc3lzZXJyKF8oImNhbm5vdCBzdGF0IGZpbGUgJyVzJyIpLCBjdXJsaW5rKTsKKwl9IGVsc2UgeworCQlmcmVlKGN1cmxpbmspOworCQlyZXR1cm4gdHJ1ZTsKKwl9Cit9CisKK3N0YXRpYyBjaGFyICoKK2FsdGVybmF0aXZlX2dldF9jdXJyZW50KHN0cnVjdCBhbHRlcm5hdGl2ZSAqYSkKK3sKKwljaGFyICpjdXJsaW5rLCAqZmlsZTsKKworCWlmICghYWx0ZXJuYXRpdmVfaGFzX2N1cnJlbnRfbGluayhhKSkKKwkJcmV0dXJuIE5VTEw7CisKKwl4YXNwcmludGYoJmN1cmxpbmssICIlcy8lcyIsIGFsdGRpciwgYS0+bWFzdGVyX25hbWUpOworCWZpbGUgPSB4cmVhZGxpbmsoY3VybGluayk7CisJZnJlZShjdXJsaW5rKTsKKworCXJldHVybiBmaWxlOworfQorCitzdGF0aWMgdm9pZAorYWx0ZXJuYXRpdmVfZGlzcGxheV9xdWVyeShzdHJ1Y3QgYWx0ZXJuYXRpdmUgKmEpCit7CisJc3RydWN0IGZpbGVzZXQgKmJlc3QsICpmczsKKwlzdHJ1Y3Qgc2xhdmVfbGluayAqc2w7CisJY2hhciAqY3VycmVudDsKKworCXByKCJMaW5rOiAlcyIsIGEtPm1hc3Rlcl9uYW1lKTsKKwlwcigiU3RhdHVzOiAlcyIsIGFsdGVybmF0aXZlX3N0YXR1c19zdHJpbmcoYS0+c3RhdHVzKSk7CisJYmVzdCA9IGFsdGVybmF0aXZlX2dldF9iZXN0KGEpOworCWlmIChiZXN0KQorCQlwcigiQmVzdDogJXMiLCBiZXN0LT5tYXN0ZXJfZmlsZSk7CisJY3VycmVudCA9IGFsdGVybmF0aXZlX2dldF9jdXJyZW50KGEpOworCXByKCJWYWx1ZTogJXMiLCBjdXJyZW50ID8gY3VycmVudCA6ICJub25lIik7CisJZnJlZShjdXJyZW50KTsKKworCWZvciAoZnMgPSBhLT5jaG9pY2VzOyBmczsgZnMgPSBmcy0+bmV4dCkgeworCQlwcmludGYoIlxuIik7CisJCXByKCJBbHRlcm5hdGl2ZTogJXMiLCBmcy0+bWFzdGVyX2ZpbGUpOworCQlwcigiUHJpb3JpdHk6ICVkIiwgZnMtPnByaW9yaXR5KTsKKwkJaWYgKGFsdGVybmF0aXZlX3NsYXZlc19jb3VudChhKSA9PSAwKQorCQkJY29udGludWU7CisJCXByKCJTbGF2ZXM6Iik7CisJCWZvciAoc2wgPSBhLT5zbGF2ZXM7IHNsOyBzbCA9IHNsLT5uZXh0KSB7CisJCQlpZiAoZmlsZXNldF9oYXNfc2xhdmUoZnMsIHNsLT5uYW1lKSkKKwkJCQlwcigiICVzICVzIiwgc2wtPm5hbWUsCisJCQkJICAgZmlsZXNldF9nZXRfc2xhdmUoZnMsIHNsLT5uYW1lKSk7CisJCX0KKwl9Cit9CisKK3N0YXRpYyB2b2lkCithbHRlcm5hdGl2ZV9kaXNwbGF5X3VzZXIoc3RydWN0IGFsdGVybmF0aXZlICphKQoreworCWNoYXIgKmN1cnJlbnQ7CisJc3RydWN0IGZpbGVzZXQgKmZzOworCXN0cnVjdCBzbGF2ZV9saW5rICpzbDsKKworCXByKCIlcyAtICVzIiwgYS0+bWFzdGVyX25hbWUsCisJICAgKGEtPnN0YXR1cyA9PSBBTFRfU1RfQVVUTykgPyBfKCJhdXRvIG1vZGUiKSA6IF8oIm1hbnVhbCBtb2RlIikpOworCWN1cnJlbnQgPSBhbHRlcm5hdGl2ZV9nZXRfY3VycmVudChhKTsKKwlpZiAoY3VycmVudCkgeworCQlwcihfKCIgIGxpbmsgY3VycmVudGx5IHBvaW50cyB0byAlcyIpLCBjdXJyZW50KTsKKwkJZnJlZShjdXJyZW50KTsKKwl9IGVsc2UgeworCQlwcihfKCIgIGxpbmsgY3VycmVudGx5IGFic2VudCIpKTsKKwl9CisKKwlmb3IgKGZzID0gYS0+Y2hvaWNlczsgZnM7IGZzID0gZnMtPm5leHQpIHsKKwkJcHIoXygiJXMgLSBwcmlvcml0eSAlZCIpLCBmcy0+bWFzdGVyX2ZpbGUsIGZzLT5wcmlvcml0eSk7CisJCWZvciAoc2wgPSBhLT5zbGF2ZXM7IHNsOyBzbCA9IHNsLT5uZXh0KSB7CisJCQlpZiAoZmlsZXNldF9oYXNfc2xhdmUoZnMsIHNsLT5uYW1lKSkKKwkJCQlwcihfKCIgIHNsYXZlICVzOiAlcyIpLCBzbC0+bmFtZSwKKwkJCQkgICBmaWxlc2V0X2dldF9zbGF2ZShmcywgc2wtPm5hbWUpKTsKKwkJfQorCX0KKworCWZzID0gYWx0ZXJuYXRpdmVfZ2V0X2Jlc3QoYSk7CisJaWYgKGZzKQorCQlwcihfKCJDdXJyZW50ICdiZXN0JyB2ZXJzaW9uIGlzICclcycuIiksIGZzLT5tYXN0ZXJfZmlsZSk7CisJZWxzZQorCQlwcihfKCJObyB2ZXJzaW9ucyBhdmFpbGFibGUuIikpOworfQorCitzdGF0aWMgdm9pZAorYWx0ZXJuYXRpdmVfZGlzcGxheV9saXN0KHN0cnVjdCBhbHRlcm5hdGl2ZSAqYSkKK3sKKwlzdHJ1Y3QgZmlsZXNldCAqZnM7CisKKwlmb3IgKGZzID0gYS0+Y2hvaWNlczsgZnM7IGZzID0gZnMtPm5leHQpCisJCXByKCIlcyIsIGZzLT5tYXN0ZXJfZmlsZSk7Cit9CisKK3N0YXRpYyBjb25zdCBjaGFyICoKK2FsdGVybmF0aXZlX3NlbGVjdF9jaG9pY2Uoc3RydWN0IGFsdGVybmF0aXZlICphKQoreworCWNoYXIgKmN1cnJlbnQsICpyZXQsIHNlbGVjdGlvbltfUE9TSVhfUEFUSF9NQVhdOworCXN0cnVjdCBmaWxlc2V0ICpiZXN0LCAqZnM7CisJaW50IGxlbiwgaWR4OworCisJY3VycmVudCA9IGFsdGVybmF0aXZlX2dldF9jdXJyZW50KGEpOworCWJlc3QgPSBhbHRlcm5hdGl2ZV9nZXRfYmVzdChhKTsKKwlhc3NlcnQoYmVzdCk7CisKKwlmb3IgKDs7KSB7CisJCWNvbnN0IGNoYXIgKm1hcms7CisJCWludCBuX2Nob2ljZXM7CisKKwkJbl9jaG9pY2VzID0gYWx0ZXJuYXRpdmVfY2hvaWNlc19jb3VudChhKTsKKworCQlwcihQXygiVGhlcmUgaXMgJWQgY2hvaWNlIGZvciB0aGUgYWx0ZXJuYXRpdmUgJXMgKHByb3ZpZGluZyAlcykuIiwKKwkJICAgICAgIlRoZXJlIGFyZSAlZCBjaG9pY2VzIGZvciB0aGUgYWx0ZXJuYXRpdmUgJXMgKHByb3ZpZGluZyAlcykuIiwKKwkJICAgICAgbl9jaG9pY2VzKSwgbl9jaG9pY2VzLCBhLT5tYXN0ZXJfbmFtZSwgYS0+bWFzdGVyX2xpbmspOworCQlwcmludGYoIlxuIik7CisJCWxlbiA9IDE1OworCQlmb3IgKGZzID0gYS0+Y2hvaWNlczsgZnM7IGZzID0gZnMtPm5leHQpCisJCQlsZW4gPSBtYXgobGVuLCAoaW50KXN0cmxlbihmcy0+bWFzdGVyX2ZpbGUpICsgMSk7CisJCXByKCIgICUtMTIuMTJzICUtKi4qcyAlLTEwLjEwcyAlcyIsIF8oIlNlbGVjdGlvbiIpLCBsZW4sIGxlbiwKKwkJICAgXygiUGF0aCIpLCBfKCJQcmlvcml0eSIpLCBfKCJTdGF0dXMiKSk7CisJCXByKCItLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0iKTsKKwkJaWYgKGEtPnN0YXR1cyA9PSBBTFRfU1RfQVVUTyAmJiBjdXJyZW50ICYmCisJCSAgICBzdHJjbXAoY3VycmVudCwgYmVzdC0+bWFzdGVyX2ZpbGUpID09IDApCisJCQltYXJrID0gIioiOworCQllbHNlCisJCQltYXJrID0gIiAiOworCQlwcigiJXMgJS0xMmQgJS0qcyAlIC0xMGQgJXMiLCBtYXJrLCAwLCBsZW4sIGJlc3QtPm1hc3Rlcl9maWxlLAorCQkgICBiZXN0LT5wcmlvcml0eSwgXygiYXV0byBtb2RlIikpOworCQlpZHggPSAxOworCQlmb3IgKGZzID0gYS0+Y2hvaWNlczsgZnM7IGZzID0gZnMtPm5leHQpIHsKKwkJCWlmIChhLT5zdGF0dXMgPT0gQUxUX1NUX01BTlVBTCAmJiBjdXJyZW50ICYmCisJCQkgICAgc3RyY21wKGN1cnJlbnQsIGZzLT5tYXN0ZXJfZmlsZSkgPT0gMCkKKwkJCQltYXJrID0gIioiOworCQkJZWxzZQorCQkJCW1hcmsgPSAiICI7CisJCQlwcigiJXMgJS0xMmQgJS0qcyAlIC0xMGQgJXMiLCBtYXJrLCBpZHgsIGxlbiwKKwkJCSAgIGZzLT5tYXN0ZXJfZmlsZSwgZnMtPnByaW9yaXR5LCBfKCJtYW51YWwgbW9kZSIpKTsKKwkJCWlkeCsrOworCQl9CisJCXByaW50ZigiXG4iKTsKKwkJcHJpbnRmKF8oIlByZXNzIGVudGVyIHRvIGtlZXAgdGhlIGN1cnJlbnQgY2hvaWNlWypdLCAiCisJCSAgICAgICAgICJvciB0eXBlIHNlbGVjdGlvbiBudW1iZXI6ICIpKTsKKwkJcmV0ID0gZmdldHMoc2VsZWN0aW9uLCBzaXplb2Yoc2VsZWN0aW9uKSwgc3RkaW4pOworCQlpZiAocmV0ID09IE5VTEwgfHwgc3RybGVuKHNlbGVjdGlvbikgPT0gMCkgeworCQkJZnJlZShjdXJyZW50KTsKKwkJCXJldHVybiBOVUxMOworCQl9CisJCXNlbGVjdGlvbltzdHJsZW4oc2VsZWN0aW9uKSAtIDFdID0gJ1wwJzsKKwkJaWYgKHN0cmxlbihzZWxlY3Rpb24pID09IDApCisJCQlyZXR1cm4gY3VycmVudDsKKwkJaWR4ID0gc3RydG9sKHNlbGVjdGlvbiwgJnJldCwgMTApOworCQlpZiAoKnJldCA9PSAnXDAnKSB7CisJCQkvKiBMb29rIHVwIGJ5IGluZGV4ICovCisJCQlpZiAoaWR4ID09IDApIHsKKwkJCQlhbHRlcm5hdGl2ZV9zZXRfc3RhdHVzKGEsIEFMVF9TVF9BVVRPKTsKKwkJCQlmcmVlKGN1cnJlbnQpOworCQkJCXJldHVybiB4c3RyZHVwKGJlc3QtPm1hc3Rlcl9maWxlKTsKKwkJCX0KKwkJCWlkeC0tOworCQkJZm9yIChmcyA9IGEtPmNob2ljZXM7IGlkeCAmJiBmczsgaWR4LS0pCisJCQkJZnMgPSBmcy0+bmV4dDsKKwkJCWlmIChmcykgeworCQkJCWFsdGVybmF0aXZlX3NldF9zdGF0dXMoYSwgQUxUX1NUX01BTlVBTCk7CisJCQkJZnJlZShjdXJyZW50KTsKKwkJCQlyZXR1cm4geHN0cmR1cChmcy0+bWFzdGVyX2ZpbGUpOworCQkJfQorCQl9IGVsc2UgeworCQkJLyogTG9vayB1cCBieSBuYW1lICovCisJCQlmb3IgKGZzID0gYS0+Y2hvaWNlczsgZnM7IGZzID0gZnMtPm5leHQpIHsKKwkJCQlpZiAoc3RyY21wKGZzLT5tYXN0ZXJfZmlsZSwgc2VsZWN0aW9uKSA9PSAwKSB7CisJCQkJCWFsdGVybmF0aXZlX3NldF9zdGF0dXMoYSwgQUxUX1NUX01BTlVBTCk7CisJCQkJCWZyZWUoY3VycmVudCk7CisJCQkJCXJldHVybiB4c3RyZHVwKHNlbGVjdGlvbik7CisJCQkJfQorCQkJfQorCQl9CisJfQorCWZyZWUoY3VycmVudCk7CisJcmV0dXJuIE5VTEw7Cit9CisKK3N0YXRpYyB2b2lkCithbHRlcm5hdGl2ZV9hZGRfY29tbWl0X29wKHN0cnVjdCBhbHRlcm5hdGl2ZSAqYSwgZW51bSBvcGNvZGUgb3Bjb2RlLAorCQkJICBjb25zdCBjaGFyICphcmdfYSwgY29uc3QgY2hhciAqYXJnX2IpCit7CisJc3RydWN0IGNvbW1pdF9vcGVyYXRpb24gKm9wLCAqY3VyOworCisJb3AgPSB4bWFsbG9jKHNpemVvZigqb3ApKTsKKwlvcC0+b3Bjb2RlID0gb3Bjb2RlOworCW9wLT5hcmdfYSA9IHhzdHJkdXAoYXJnX2EpOworCW9wLT5hcmdfYiA9IHhzdHJkdXAoYXJnX2IpOworCW9wLT5uZXh0ID0gTlVMTDsKKworCS8qIEFkZCBhdCB0aGUgZW5kICovCisJY3VyID0gYS0+Y29tbWl0X29wczsKKwl3aGlsZSAoY3VyICYmIGN1ci0+bmV4dCkKKwkJY3VyID0gY3VyLT5uZXh0OworCWlmIChjdXIpCisJCWN1ci0+bmV4dCA9IG9wOworCWVsc2UKKwkJYS0+Y29tbWl0X29wcyA9IG9wOworfQorCitzdGF0aWMgdm9pZAorYWx0ZXJuYXRpdmVfY29tbWl0KHN0cnVjdCBhbHRlcm5hdGl2ZSAqYSkKK3sKKwlzdHJ1Y3QgY29tbWl0X29wZXJhdGlvbiAqb3A7CisKKwlmb3IgKG9wID0gYS0+Y29tbWl0X29wczsgb3A7IG9wID0gb3AtPm5leHQpIHsKKwkJc3dpdGNoIChvcC0+b3Bjb2RlKSB7CisJCWNhc2Ugb3Bjb2RlX25vcDoKKwkJCWJyZWFrOworCQljYXNlIG9wY29kZV9ybToKKwkJCWNoZWNrZWRfcm0ob3AtPmFyZ19hKTsKKwkJCWJyZWFrOworCQljYXNlIG9wY29kZV9tdjoKKwkJCWNoZWNrZWRfbXYob3AtPmFyZ19hLCBvcC0+YXJnX2IpOworCQkJYnJlYWs7CisJCX0KKwl9CisKKwlhbHRlcm5hdGl2ZV9jb21taXRfb3BlcmF0aW9uc19mcmVlKGEpOworfQorCitlbnVtIGFsdGVybmF0aXZlX3BhdGhfc3RhdHVzIHsKKwlBTFRfUEFUSF9TWU1MSU5LLAorCUFMVF9QQVRIX01JU1NJTkcsCisJQUxUX1BBVEhfT1RIRVIsCit9OworCitzdGF0aWMgZW51bSBhbHRlcm5hdGl2ZV9wYXRoX3N0YXR1cworYWx0ZXJuYXRpdmVfcGF0aF9jbGFzc2lmeShjb25zdCBjaGFyICpsaW5rbmFtZSkKK3sKKwlzdHJ1Y3Qgc3RhdCBzdDsKKworCWVycm5vID0gMDsKKwlpZiAobHN0YXQobGlua25hbWUsICZzdCkgPT0gLTEpIHsKKwkJaWYgKGVycm5vICE9IEVOT0VOVCkKKwkJCXN5c2VycihfKCJjYW5ub3Qgc3RhdCBmaWxlICclcyciKSwgbGlua25hbWUpOworCQlyZXR1cm4gQUxUX1BBVEhfTUlTU0lORzsKKwl9IGVsc2UgaWYgKFNfSVNMTksoc3Quc3RfbW9kZSkpIHsKKwkJcmV0dXJuIEFMVF9QQVRIX1NZTUxJTks7CisJfSBlbHNlIHsKKwkJcmV0dXJuIEFMVF9QQVRIX09USEVSOworCX0KK30KKworc3RhdGljIGJvb2wKK2FsdGVybmF0aXZlX2Nhbl9yZXBsYWNlX3BhdGgoY29uc3QgY2hhciAqbGlua25hbWUpCit7CisJaWYgKG9wdF9mb3JjZSkKKwkJcmV0dXJuIHRydWU7CisKKwlpZiAoYWx0ZXJuYXRpdmVfcGF0aF9jbGFzc2lmeShsaW5rbmFtZSkgPT0gQUxUX1BBVEhfT1RIRVIpCisJCXJldHVybiBmYWxzZTsKKwllbHNlCisJCXJldHVybiB0cnVlOworfQorCitzdGF0aWMgYm9vbAorYWx0ZXJuYXRpdmVfcGF0aF9uZWVkc191cGRhdGUoY29uc3QgY2hhciAqbGlua25hbWUsIGNvbnN0IGNoYXIgKmZpbGVuYW1lKQoreworCWNoYXIgKmxpbmt0YXJnZXQ7CisJYm9vbCB1cGRhdGU7CisKKwlpZiAob3B0X2ZvcmNlKQorCQlyZXR1cm4gdHJ1ZTsKKworCXN3aXRjaCAoYWx0ZXJuYXRpdmVfcGF0aF9jbGFzc2lmeShsaW5rbmFtZSkpIHsKKwljYXNlIEFMVF9QQVRIX1NZTUxJTks6CisJCWxpbmt0YXJnZXQgPSB4cmVhZGxpbmsobGlua25hbWUpOworCQlpZiAoc3RyY21wKGxpbmt0YXJnZXQsIGZpbGVuYW1lKSA9PSAwKQorCQkJdXBkYXRlID0gZmFsc2U7CisJCWVsc2UKKwkJCXVwZGF0ZSA9IHRydWU7CisJCWZyZWUobGlua3RhcmdldCk7CisKKwkJcmV0dXJuIHVwZGF0ZTsKKwljYXNlIEFMVF9QQVRIX09USEVSOgorCQl3YXJuaW5nKF8oIm5vdCByZXBsYWNpbmcgJXMgd2l0aCBhIGxpbmsuIiksIGxpbmtuYW1lKTsKKwkJcmV0dXJuIGZhbHNlOworCWNhc2UgQUxUX1BBVEhfTUlTU0lORzoKKwlkZWZhdWx0OgorCQlyZXR1cm4gdHJ1ZTsKKwl9Cit9CisKK3N0YXRpYyB2b2lkCithbHRlcm5hdGl2ZV9wcmVwYXJlX2luc3RhbGxfc2luZ2xlKHN0cnVjdCBhbHRlcm5hdGl2ZSAqYSwgY29uc3QgY2hhciAqbmFtZSwKKwkJCQkgICBjb25zdCBjaGFyICpsaW5rbmFtZSwgY29uc3QgY2hhciAqZmlsZSkKK3sKKwljaGFyICpmbnRtcCwgKmZuOworCisJLyogQ3JlYXRlIGxpbmsgaW4gL2V0Yy9hbHRlcm5hdGl2ZXMuICovCisJeGFzcHJpbnRmKCZmbnRtcCwgIiVzLyVzIiBEUEtHX1RNUF9FWFQsIGFsdGRpciwgbmFtZSk7CisJeGFzcHJpbnRmKCZmbiwgIiVzLyVzIiwgYWx0ZGlyLCBuYW1lKTsKKwljaGVja2VkX3JtKGZudG1wKTsKKwljaGVja2VkX3N5bWxpbmsoZmlsZSwgZm50bXApOworCWFsdGVybmF0aXZlX2FkZF9jb21taXRfb3AoYSwgb3Bjb2RlX212LCBmbnRtcCwgZm4pOworCWZyZWUoZm50bXApOworCisJaWYgKGFsdGVybmF0aXZlX3BhdGhfbmVlZHNfdXBkYXRlKGxpbmtuYW1lLCBmbikpIHsKKwkJLyogQ3JlYXRlIGFsdGVybmF0aXZlIGxpbmsuICovCisJCXhhc3ByaW50ZigmZm50bXAsICIlcyIgRFBLR19UTVBfRVhULCBsaW5rbmFtZSk7CisJCWNoZWNrZWRfcm0oZm50bXApOworCQljaGVja2VkX3N5bWxpbmsoZm4sIGZudG1wKTsKKwkJYWx0ZXJuYXRpdmVfYWRkX2NvbW1pdF9vcChhLCBvcGNvZGVfbXYsIGZudG1wLCBsaW5rbmFtZSk7CisJCWZyZWUoZm50bXApOworCX0KKwlmcmVlKGZuKTsKK30KKworc3RhdGljIHZvaWQKK2FsdGVybmF0aXZlX3ByZXBhcmVfaW5zdGFsbChzdHJ1Y3QgYWx0ZXJuYXRpdmUgKmEsIGNvbnN0IGNoYXIgKmNob2ljZSkKK3sKKwlzdHJ1Y3Qgc2xhdmVfbGluayAqc2w7CisJc3RydWN0IGZpbGVzZXQgKmZzOworCisJZnMgPSBhbHRlcm5hdGl2ZV9nZXRfZmlsZXNldChhLCBjaG9pY2UpOworCWlmIChmcyA9PSBOVUxMKQorCQllcnJvcihfKCJjYW4ndCBpbnN0YWxsIHVua25vd24gY2hvaWNlICVzIiksIGNob2ljZSk7CisKKwkvKiBUYWtlIGNhcmUgb2YgbWFzdGVyIGFsdGVybmF0aXZlICovCisJYWx0ZXJuYXRpdmVfcHJlcGFyZV9pbnN0YWxsX3NpbmdsZShhLCBhLT5tYXN0ZXJfbmFtZSwgYS0+bWFzdGVyX2xpbmssCisJICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaG9pY2UpOworCisJLyogVGFrZSBjYXJlIG9mIHNsYXZlcyBhbHRlcm5hdGl2ZXMgKi8KKwlmb3IgKHNsID0gYS0+c2xhdmVzOyBzbDsgc2wgPSBzbC0+bmV4dCkgeworCQljaGFyICpmbjsKKworCQlpZiAoZmlsZXNldF9jYW5faW5zdGFsbF9zbGF2ZShmcywgc2wtPm5hbWUpKSB7CisJCQlhbHRlcm5hdGl2ZV9wcmVwYXJlX2luc3RhbGxfc2luZ2xlKGEsIHNsLT5uYW1lLAorCQkJICAgICAgICBzbC0+bGluaywgZmlsZXNldF9nZXRfc2xhdmUoZnMsIHNsLT5uYW1lKSk7CisJCQljb250aW51ZTsKKwkJfQorCisJCS8qIFNsYXZlIGNhbid0IGJlIGluc3RhbGxlZCAqLworCQlpZiAoZmlsZXNldF9oYXNfc2xhdmUoZnMsIHNsLT5uYW1lKSkKKwkJCXdhcm5pbmcoXygic2tpcCBjcmVhdGlvbiBvZiAlcyBiZWNhdXNlIGFzc29jaWF0ZWQgIgorCQkJICAgICAgICAgICJmaWxlICVzIChvZiBsaW5rIGdyb3VwICVzKSBkb2Vzbid0IGV4aXN0LiIpLAorCQkJICAgICAgICBzbC0+bGluaywgZmlsZXNldF9nZXRfc2xhdmUoZnMsIHNsLT5uYW1lKSwKKwkJCSAgICAgICAgYS0+bWFzdGVyX25hbWUpOworCisJCS8qIERyb3AgdW51c2VkIHNsYXZlLiAqLworCQl4YXNwcmludGYoJmZuLCAiJXMvJXMiLCBhbHRkaXIsIHNsLT5uYW1lKTsKKwkJaWYgKGFsdGVybmF0aXZlX2Nhbl9yZXBsYWNlX3BhdGgoc2wtPmxpbmspKQorCQkJYWx0ZXJuYXRpdmVfYWRkX2NvbW1pdF9vcChhLCBvcGNvZGVfcm0sIHNsLT5saW5rLCBOVUxMKTsKKwkJZWxzZQorCQkJd2FybmluZyhfKCJub3QgcmVtb3ZpbmcgJXMgc2luY2UgaXQncyBub3QgYSBzeW1saW5rLiIpLAorCQkJICAgICAgICBzbC0+bGluayk7CisJCWFsdGVybmF0aXZlX2FkZF9jb21taXRfb3AoYSwgb3Bjb2RlX3JtLCBmbiwgTlVMTCk7CisJCWZyZWUoZm4pOworCX0KK30KKworc3RhdGljIHZvaWQKK2FsdGVybmF0aXZlX3JlbW92ZShzdHJ1Y3QgYWx0ZXJuYXRpdmUgKmEpCit7CisJc3RydWN0IHNsYXZlX2xpbmsgKnNsOworCisJY2hlY2tlZF9ybV9hcmdzKCIlcyIgRFBLR19UTVBfRVhULCBhLT5tYXN0ZXJfbGluayk7CisJaWYgKGFsdGVybmF0aXZlX2Nhbl9yZXBsYWNlX3BhdGgoYS0+bWFzdGVyX2xpbmspKQorCQljaGVja2VkX3JtKGEtPm1hc3Rlcl9saW5rKTsKKworCWNoZWNrZWRfcm1fYXJncygiJXMvJXMiIERQS0dfVE1QX0VYVCwgYWx0ZGlyLCBhLT5tYXN0ZXJfbmFtZSk7CisJY2hlY2tlZF9ybV9hcmdzKCIlcy8lcyIsIGFsdGRpciwgYS0+bWFzdGVyX25hbWUpOworCisJZm9yIChzbCA9IGEtPnNsYXZlczsgc2w7IHNsID0gc2wtPm5leHQpIHsKKwkJY2hlY2tlZF9ybV9hcmdzKCIlcyIgRFBLR19UTVBfRVhULCBzbC0+bGluayk7CisJCWlmIChhbHRlcm5hdGl2ZV9jYW5fcmVwbGFjZV9wYXRoKHNsLT5saW5rKSkKKwkJCWNoZWNrZWRfcm0oc2wtPmxpbmspOworCisJCWNoZWNrZWRfcm1fYXJncygiJXMvJXMiIERQS0dfVE1QX0VYVCwgYWx0ZGlyLCBzbC0+bmFtZSk7CisJCWNoZWNrZWRfcm1fYXJncygiJXMvJXMiLCBhbHRkaXIsIHNsLT5uYW1lKTsKKwl9CisJLyogRHJvcCBhZG1pbiBmaWxlICovCisJY2hlY2tlZF9ybV9hcmdzKCIlcy8lcyIsIGFkbWRpciwgYS0+bWFzdGVyX25hbWUpOworfQorCitzdGF0aWMgYm9vbAorYWx0ZXJuYXRpdmVfaXNfYnJva2VuKHN0cnVjdCBhbHRlcm5hdGl2ZSAqYSkKK3sKKwljaGFyICphbHRsbmssICp3YW50ZWQsICpjdXJyZW50OworCXN0cnVjdCBmaWxlc2V0ICpmczsKKwlzdHJ1Y3Qgc2xhdmVfbGluayAqc2w7CisKKwlpZiAoIWFsdGVybmF0aXZlX2hhc19jdXJyZW50X2xpbmsoYSkpCisJCXJldHVybiB0cnVlOworCisJLyogQ2hlY2sgbWFzdGVyIGxpbmsgKi8KKwlhbHRsbmsgPSBhcmVhZGxpbmsoYS0+bWFzdGVyX2xpbmspOworCWlmICghYWx0bG5rKQorCQlyZXR1cm4gdHJ1ZTsKKwl4YXNwcmludGYoJndhbnRlZCwgIiVzLyVzIiwgYWx0ZGlyLCBhLT5tYXN0ZXJfbmFtZSk7CisJaWYgKHN0cmNtcChhbHRsbmssIHdhbnRlZCkgIT0gMCkgeworCQlmcmVlKHdhbnRlZCk7CisJCWZyZWUoYWx0bG5rKTsKKwkJcmV0dXJuIHRydWU7CisJfQorCWZyZWUod2FudGVkKTsKKwlmcmVlKGFsdGxuayk7CisKKwkvKiBTdG9wIGlmIHdlIGhhdmUgYW4gdW5tYW5hZ2VkIGFsdGVybmF0aXZlICovCisJY3VycmVudCA9IGFsdGVybmF0aXZlX2dldF9jdXJyZW50KGEpOworCWlmICghYWx0ZXJuYXRpdmVfaGFzX2Nob2ljZShhLCBjdXJyZW50KSkgeworCQlmcmVlKGN1cnJlbnQpOworCQlyZXR1cm4gZmFsc2U7CisJfQorCWZzID0gYWx0ZXJuYXRpdmVfZ2V0X2ZpbGVzZXQoYSwgY3VycmVudCk7CisJZnJlZShjdXJyZW50KTsKKworCS8qIENoZWNrIHNsYXZlcyAqLworCWZvciAoc2wgPSBhLT5zbGF2ZXM7IHNsOyBzbCA9IHNsLT5uZXh0KSB7CisJCWlmIChmaWxlc2V0X2Nhbl9pbnN0YWxsX3NsYXZlKGZzLCBzbC0+bmFtZSkpIHsKKwkJCWNoYXIgKnNsX2FsdGxuaywgKnNsX2N1cnJlbnQ7CisKKwkJCS8qIFZlcmlmeSBsaW5rIC0+IC9ldGMvYWx0ZXJuYXRpdmVzL2ZvbyAqLworCQkJc2xfYWx0bG5rID0gYXJlYWRsaW5rKHNsLT5saW5rKTsKKwkJCWlmICghc2xfYWx0bG5rKQorCQkJCXJldHVybiB0cnVlOworCQkJeGFzcHJpbnRmKCZ3YW50ZWQsICIlcy8lcyIsIGFsdGRpciwgc2wtPm5hbWUpOworCQkJaWYgKHN0cmNtcChzbF9hbHRsbmssIHdhbnRlZCkgIT0gMCkgeworCQkJCWZyZWUod2FudGVkKTsKKwkJCQlmcmVlKHNsX2FsdGxuayk7CisJCQkJcmV0dXJuIHRydWU7CisJCQl9CisJCQlmcmVlKHNsX2FsdGxuayk7CisJCQkvKiBWZXJpZnkgL2V0Yy9hbHRlcm5hdGl2ZXMvZm9vIC0+IGZpbGUgKi8KKwkJCXNsX2N1cnJlbnQgPSBhcmVhZGxpbmsod2FudGVkKTsKKwkJCWZyZWUod2FudGVkKTsKKwkJCWlmICghc2xfY3VycmVudCkKKwkJCQlyZXR1cm4gdHJ1ZTsKKwkJCWlmIChzdHJjbXAoc2xfY3VycmVudCwgZmlsZXNldF9nZXRfc2xhdmUoZnMsIHNsLT5uYW1lKSkgIT0gMCkgeworCQkJCWZyZWUoc2xfY3VycmVudCk7CisJCQkJcmV0dXJuIHRydWU7CisJCQl9CisJCQlmcmVlKHNsX2N1cnJlbnQpOworCQl9IGVsc2UgeworCQkJY2hhciAqc2xfYWx0bG5rOworCisJCQkvKiBTbGF2ZSBsaW5rIG11c3Qgbm90IGV4aXN0LiAqLworCQkJaWYgKGFsdGVybmF0aXZlX3BhdGhfY2xhc3NpZnkoc2wtPmxpbmspICE9IEFMVF9QQVRIX01JU1NJTkcpCisJCQkJcmV0dXJuIHRydWU7CisJCQl4YXNwcmludGYoJnNsX2FsdGxuaywgIiVzLyVzIiwgYWx0ZGlyLCBzbC0+bmFtZSk7CisJCQlpZiAoYWx0ZXJuYXRpdmVfcGF0aF9jbGFzc2lmeShzbF9hbHRsbmspICE9IEFMVF9QQVRIX01JU1NJTkcpIHsKKwkJCQlmcmVlKHNsX2FsdGxuayk7CisJCQkJcmV0dXJuIHRydWU7CisJCQl9CisJCQlmcmVlKHNsX2FsdGxuayk7CisJCX0KKwl9CisKKwlyZXR1cm4gZmFsc2U7Cit9CisKK3N0cnVjdCBhbHRlcm5hdGl2ZV9tYXAgeworCXN0cnVjdCBhbHRlcm5hdGl2ZV9tYXAgKm5leHQ7CisKKwljb25zdCBjaGFyICprZXk7CisJc3RydWN0IGFsdGVybmF0aXZlICppdGVtOworfTsKKworc3RhdGljIHN0cnVjdCBhbHRlcm5hdGl2ZV9tYXAgKgorYWx0ZXJuYXRpdmVfbWFwX25ldyhjb25zdCBjaGFyICprZXksIHN0cnVjdCBhbHRlcm5hdGl2ZSAqYSkKK3sKKwlzdHJ1Y3QgYWx0ZXJuYXRpdmVfbWFwICphbTsKKworCWFtID0geG1hbGxvYyhzaXplb2YoKmFtKSk7CisJYW0tPm5leHQgPSBOVUxMOworCWFtLT5rZXkgPSBrZXk7CisJYW0tPml0ZW0gPSBhOworCisJcmV0dXJuIGFtOworfQorCitzdGF0aWMgc3RydWN0IGFsdGVybmF0aXZlICoKK2FsdGVybmF0aXZlX21hcF9maW5kKHN0cnVjdCBhbHRlcm5hdGl2ZV9tYXAgKmFtLCBjb25zdCBjaGFyICprZXkpCit7CisJZm9yICg7IGFtOyBhbSA9IGFtLT5uZXh0KQorCQlpZiAoYW0tPmtleSAmJiBzdHJjbXAoYW0tPmtleSwga2V5KSA9PSAwKQorCQkJcmV0dXJuIGFtLT5pdGVtOworCisJcmV0dXJuIE5VTEw7Cit9CisKK3N0YXRpYyB2b2lkCithbHRlcm5hdGl2ZV9tYXBfYWRkKHN0cnVjdCBhbHRlcm5hdGl2ZV9tYXAgKmFtLCBjb25zdCBjaGFyICprZXksIHN0cnVjdCBhbHRlcm5hdGl2ZSAqYSkKK3sKKwlpZiAoYW0tPmtleSA9PSBOVUxMKSB7CisJCWFtLT5rZXkgPSBrZXk7CisJCWFtLT5pdGVtID0gYTsKKwl9IGVsc2UgeworCQlzdHJ1Y3QgYWx0ZXJuYXRpdmVfbWFwICpuZXcgPSBhbHRlcm5hdGl2ZV9tYXBfbmV3KGtleSwgYSk7CisKKwkJd2hpbGUoYW0tPm5leHQpCisJCQlhbSA9IGFtLT5uZXh0OworCQlhbS0+bmV4dCA9IG5ldzsKKwl9Cit9CisKK3N0YXRpYyB2b2lkCithbHRlcm5hdGl2ZV9tYXBfbG9hZF9uYW1lcyhzdHJ1Y3QgYWx0ZXJuYXRpdmVfbWFwICphbHRfbWFwX29iaikKK3sKKwlzdHJ1Y3QgZGlyZW50ICoqdGFibGU7CisJaW50IGksIGNvdW50OworCisJY291bnQgPSBhbHRkYl9nZXRfbmFtZWxpc3QoJnRhYmxlKTsKKwlmb3IgKGkgPSAwOyBpIDwgY291bnQ7IGkrKykgeworCQlzdHJ1Y3QgYWx0ZXJuYXRpdmUgKmFfbmV3ID0gYWx0ZXJuYXRpdmVfbmV3KHRhYmxlW2ldLT5kX25hbWUpOworCisJCWlmICghYWx0ZXJuYXRpdmVfbG9hZChhX25ldywgdHJ1ZSkpIHsKKwkJCWFsdGVybmF0aXZlX2ZyZWUoYV9uZXcpOworCQkJY29udGludWU7CisJCX0KKwkJYWx0ZXJuYXRpdmVfbWFwX2FkZChhbHRfbWFwX29iaiwgYV9uZXctPm1hc3Rlcl9uYW1lLCBhX25ldyk7CisJfQorCWFsdGRiX2ZyZWVfbmFtZWxpc3QodGFibGUsIGNvdW50KTsKK30KKworc3RhdGljIHZvaWQKK2FsdGVybmF0aXZlX21hcF9sb2FkX3RyZWUoc3RydWN0IGFsdGVybmF0aXZlX21hcCAqYWx0X21hcF9saW5rcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0IGFsdGVybmF0aXZlX21hcCAqYWx0X21hcF9wYXJlbnQpCit7CisJc3RydWN0IGRpcmVudCAqKnRhYmxlOworCWludCBpLCBjb3VudDsKKworCWNvdW50ID0gYWx0ZGJfZ2V0X25hbWVsaXN0KCZ0YWJsZSk7CisJZm9yIChpID0gMDsgaSA8IGNvdW50OyBpKyspIHsKKwkJc3RydWN0IHNsYXZlX2xpbmsgKnNsOworCQlzdHJ1Y3QgYWx0ZXJuYXRpdmUgKmFfbmV3ID0gYWx0ZXJuYXRpdmVfbmV3KHRhYmxlW2ldLT5kX25hbWUpOworCisJCWlmICghYWx0ZXJuYXRpdmVfbG9hZChhX25ldywgdHJ1ZSkpIHsKKwkJCWFsdGVybmF0aXZlX2ZyZWUoYV9uZXcpOworCQkJY29udGludWU7CisJCX0KKwkJYWx0ZXJuYXRpdmVfbWFwX2FkZChhbHRfbWFwX2xpbmtzLCBhX25ldy0+bWFzdGVyX2xpbmssIGFfbmV3KTsKKwkJYWx0ZXJuYXRpdmVfcmVmKGFfbmV3KTsKKwkJYWx0ZXJuYXRpdmVfbWFwX2FkZChhbHRfbWFwX3BhcmVudCwgYV9uZXctPm1hc3Rlcl9uYW1lLCBhX25ldyk7CisJCWZvciAoc2wgPSBhX25ldy0+c2xhdmVzOyBzbDsgc2wgPSBzbC0+bmV4dCkgeworCQkJYWx0ZXJuYXRpdmVfcmVmKGFfbmV3KTsKKwkJCWFsdGVybmF0aXZlX21hcF9hZGQoYWx0X21hcF9saW5rcywgc2wtPmxpbmssIGFfbmV3KTsKKwkJCWFsdGVybmF0aXZlX3JlZihhX25ldyk7CisJCQlhbHRlcm5hdGl2ZV9tYXBfYWRkKGFsdF9tYXBfcGFyZW50LCBzbC0+bmFtZSwgYV9uZXcpOworCQl9CisJfQorCWFsdGRiX2ZyZWVfbmFtZWxpc3QodGFibGUsIGNvdW50KTsKK30KKworc3RhdGljIHZvaWQKK2FsdGVybmF0aXZlX21hcF9mcmVlKHN0cnVjdCBhbHRlcm5hdGl2ZV9tYXAgKmFtKQoreworCXN0cnVjdCBhbHRlcm5hdGl2ZV9tYXAgKmFtX25leHQ7CisKKwl3aGlsZSAoYW0pIHsKKwkJYW1fbmV4dCA9IGFtLT5uZXh0OworCQlpZiAoYW0tPml0ZW0pCisJCQlhbHRlcm5hdGl2ZV9mcmVlKGFtLT5pdGVtKTsKKwkJZnJlZShhbSk7CisJCWFtID0gYW1fbmV4dDsKKwl9Cit9CisKK3N0YXRpYyBjb25zdCBjaGFyICoKK2dldF9hcmd2X3N0cmluZyhpbnQgYXJnYywgY2hhciAqKmFyZ3YpCit7CisJc3RhdGljIGNoYXIgc3RyaW5nWzIwNDhdOworCXNpemVfdCBjdXJfbGVuOworCWludCBpOworCisJc3RyaW5nWzBdID0gJ1wwJzsKKwljdXJfbGVuID0gMDsKKwlmb3IgKGkgPSAxOyBpIDwgYXJnYzsgaSsrKSB7CisJCXNpemVfdCBhcmdfbGVuID0gc3RybGVuKGFyZ3ZbaV0pOworCisJCWlmIChjdXJfbGVuICsgYXJnX2xlbiArIDIgPiBzaXplb2Yoc3RyaW5nKSkKKwkJCWJyZWFrOworCQlpZiAoY3VyX2xlbikgeworCQkJc3RyY3B5KHN0cmluZyArIGN1cl9sZW4sICIgIik7CisJCQljdXJfbGVuKys7CisJCX0KKwkJc3RyY3B5KHN0cmluZyArIGN1cl9sZW4sIGFyZ3ZbaV0pOworCQljdXJfbGVuICs9IGFyZ19sZW47CisJfQorCisJcmV0dXJuIHN0cmluZzsKK30KKworc3RhdGljIHZvaWQKK2FsdGVybmF0aXZlX3NldF9zZWxlY3Rpb24oc3RydWN0IGFsdGVybmF0aXZlX21hcCAqYWxsLCBjb25zdCBjaGFyICpuYW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpzdGF0dXMsIGNvbnN0IGNoYXIgKmNob2ljZSkKK3sKKwlzdHJ1Y3QgYWx0ZXJuYXRpdmUgKmE7CisKKwlkZWJ1Zygic2V0X3NlbGVjdGlvbiglcywgJXMsICVzKSIsIG5hbWUsIHN0YXR1cywgY2hvaWNlKTsKKwlpZiAoKGEgPSBhbHRlcm5hdGl2ZV9tYXBfZmluZChhbGwsIG5hbWUpKSkgeworCQljaGFyICpjbWQ7CisKKwkJaWYgKHN0cmNtcChzdGF0dXMsICJhdXRvIikgPT0gMCkgeworCQkJeGFzcHJpbnRmKCZjbWQsICIlcyAtLWF1dG8gJXMiLCBQUk9HTkFNRSwgbmFtZSk7CisJCQlwcihfKCJDYWxsICVzLiIpLCBjbWQpOworCQkJZnJlZShjbWQpOworCQkJc3ViY2FsbChwcm9nX3BhdGgsICItLWF1dG8iLCBuYW1lLCBOVUxMKTsKKwkJfSBlbHNlIGlmIChhbHRlcm5hdGl2ZV9oYXNfY2hvaWNlKGEsIGNob2ljZSkpIHsKKwkJCXhhc3ByaW50ZigmY21kLCAiJXMgLS1zZXQgJXMgJXMiLCBQUk9HTkFNRSwKKwkJCSAgICAgICAgICBuYW1lLCBjaG9pY2UpOworCQkJcHIoXygiQ2FsbCAlcy4iKSwgY21kKTsKKwkJCWZyZWUoY21kKTsKKwkJCXN1YmNhbGwocHJvZ19wYXRoLCAiLS1zZXQiLCBuYW1lLCBjaG9pY2UsIE5VTEwpOworCQl9IGVsc2UgeworCQkJcHIoXygiQWx0ZXJuYXRpdmUgJXMgdW5jaGFuZ2VkIGJlY2F1c2UgY2hvaWNlICIKKwkJCSAgICAgIiVzIGlzIG5vdCBhdmFpbGFibGUuIiksIG5hbWUsIGNob2ljZSk7CisJCX0KKwl9IGVsc2UgeworCQlwcihfKCJTa2lwIHVua25vd24gYWx0ZXJuYXRpdmUgJXMuIiksIG5hbWUpOworCX0KK30KKworc3RhdGljIHZvaWQKK2FsdGVybmF0aXZlX3NldF9zZWxlY3Rpb25zKHN0cnVjdCBhbHRlcm5hdGl2ZV9tYXAgKmFsbCwgRklMRSogaW5wdXQsIGNvbnN0IGNoYXIgKmRlc2MpCit7CisJZm9yICg7OykgeworCQljaGFyIGxpbmVbMTAyNF0sICpyZXMsICpuYW1lLCAqc3RhdHVzLCAqY2hvaWNlOworCQlzaXplX3QgbGVuLCBpOworCisJCWVycm5vID0gMDsKKwkJLyogQ2FuJ3QgdXNlIHNjYW5mKCIlcyAlcyAlcyIpIGJlY2F1c2UgY2hvaWNlIGNhbgorCQkgKiBjb250YWluIGEgc3BhY2UgKi8KKwkJcmVzID0gZmdldHMobGluZSwgc2l6ZW9mKGxpbmUpLCBpbnB1dCk7CisJCWlmIChyZXMgPT0gTlVMTCAmJiBlcnJubykgeworCQkJc3lzZXJyKF8oInJlYWQgZXJyb3IgaW4gJS4yNTBzIiksIGRlc2MpOworCQl9IGVsc2UgaWYgKHJlcyA9PSBOVUxMKSB7CisJCQlicmVhazsKKwkJfQorCQlsZW4gPSBzdHJsZW4obGluZSk7CisJCWlmIChsZW4gPT0gMCB8fCBsaW5lW2xlbiAtIDFdICE9ICdcbicpIHsKKwkJCWVycm9yKF8oImxpbmUgdG9vIGxvbmcgb3Igbm90IHRlcm1pbmF0ZWQgd2hpbGUgIgorCQkJICAgICAgICAidHJ5aW5nIHRvIHJlYWQgJXMiKSwgZGVzYyk7CisJCX0KKwkJbGluZVtsZW4gLSAxXSA9ICdcMCc7CisJCWxlbi0tOworCisJCS8qIERlbGltaXQgbmFtZSBzdHJpbmcgaW4gbGluZSAqLworCQlpID0gMDsKKwkJbmFtZSA9IGxpbmU7CisJCXdoaWxlIChpIDwgbGVuICYmICFpc2JsYW5rKGxpbmVbaV0pKQorCQkJaSsrOworCQlpZiAoaSA+PSBsZW4pIHsKKwkJCXByaW50ZigiWyVzICVzXSAiLCBQUk9HTkFNRSwgIi0tc2V0LXNlbGVjdGlvbnMiKTsKKwkJCXByKF8oIlNraXAgaW52YWxpZCBsaW5lOiAlcyIpLCBsaW5lKTsKKwkJCWNvbnRpbnVlOworCQl9CisJCWxpbmVbaSsrXSA9ICdcMCc7CisJCXdoaWxlIChpIDwgbGVuICYmIGlzYmxhbmsobGluZVtpXSkpCisJCQlpKys7CisKKwkJLyogRGVsaW1pdCBzdGF0dXMgc3RyaW5nIGluIGxpbmUgKi8KKwkJc3RhdHVzID0gbGluZSArIGk7CisJCXdoaWxlIChpIDwgbGVuICYmICFpc2JsYW5rKGxpbmVbaV0pKQorCQkJaSsrOworCQlpZiAoaSA+PSBsZW4pIHsKKwkJCXByaW50ZigiWyVzICVzXSAiLCBQUk9HTkFNRSwgIi0tc2V0LXNlbGVjdGlvbnMiKTsKKwkJCXByKF8oIlNraXAgaW52YWxpZCBsaW5lOiAlcyIpLCBsaW5lKTsKKwkJCWNvbnRpbnVlOworCQl9CisJCWxpbmVbaSsrXSA9ICdcMCc7CisJCXdoaWxlIChpIDwgbGVuICYmIGlzYmxhbmsobGluZVtpXSkpCisJCQlpKys7CisKKwkJLyogRGVsaW1pdCBjaG9pY2Ugc3RyaW5nIGluIHRoZSBsaW5lICovCisJCWlmIChpID49IGxlbikgeworCQkJcHJpbnRmKCJbJXMgJXNdICIsIFBST0dOQU1FLCAiLS1zZXQtc2VsZWN0aW9ucyIpOworCQkJcHIoXygiU2tpcCBpbnZhbGlkIGxpbmU6ICVzIiksIGxpbmUpOworCQkJY29udGludWU7CisJCX0KKwkJY2hvaWNlID0gbGluZSArIGk7CisKKwkJcHJpbnRmKCJbJXMgJXNdICIsIFBST0dOQU1FLCAiLS1zZXQtc2VsZWN0aW9ucyIpOworCQlhbHRlcm5hdGl2ZV9zZXRfc2VsZWN0aW9uKGFsbCwgbmFtZSwgc3RhdHVzLCBjaG9pY2UpOworCX0KK30KKworc3RhdGljIHZvaWQKK2FsdGVybmF0aXZlX2V2b2x2ZShzdHJ1Y3QgYWx0ZXJuYXRpdmUgKmEsIHN0cnVjdCBhbHRlcm5hdGl2ZSAqYiwKKyAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpjdXJfY2hvaWNlLCBzdHJ1Y3QgZmlsZXNldCAqZnMpCit7CisJc3RydWN0IHNsYXZlX2xpbmsgKnNsOworCXN0cnVjdCBzdGF0IHN0OworCisJYm9vbCBpc19saW5rID0gKGFsdGVybmF0aXZlX3BhdGhfY2xhc3NpZnkoYS0+bWFzdGVyX2xpbmspID09IEFMVF9QQVRIX1NZTUxJTkspOworCWlmIChpc19saW5rICYmIHN0cmNtcChhLT5tYXN0ZXJfbGluaywgYi0+bWFzdGVyX2xpbmspICE9IDApIHsKKwkJaW5mbyhfKCJyZW5hbWluZyAlcyBsaW5rIGZyb20gJXMgdG8gJXMuIiksIGItPm1hc3Rlcl9uYW1lLAorCQkgICAgIGEtPm1hc3Rlcl9saW5rLCBiLT5tYXN0ZXJfbGluayk7CisJCWNoZWNrZWRfbXYoYS0+bWFzdGVyX2xpbmssIGItPm1hc3Rlcl9saW5rKTsKKwl9CisJYWx0ZXJuYXRpdmVfc2V0X2xpbmsoYSwgeHN0cmR1cChiLT5tYXN0ZXJfbGluaykpOworCisJLyogQ2hlY2sgaWYgbmV3IHNsYXZlcyBoYXZlIGJlZW4gYWRkZWQsIG9yIGV4aXN0aW5nCisJICogb25lcyByZW5hbWVkLiAqLworCWZvciAoc2wgPSBiLT5zbGF2ZXM7IHNsOyBzbCA9IHNsLT5uZXh0KSB7CisJCWNoYXIgKm5ld19maWxlID0gTlVMTDsKKwkJY29uc3QgY2hhciAqb2xkLCAqbmV3OworCisJCWlmICghYWx0ZXJuYXRpdmVfaGFzX3NsYXZlKGEsIHNsLT5uYW1lKSkgeworCQkJYWx0ZXJuYXRpdmVfYWRkX3NsYXZlKGEsIHhzdHJkdXAoc2wtPm5hbWUpLAorCQkJICAgICAgICAgICAgICAgICAgICAgIHhzdHJkdXAoc2wtPmxpbmspKTsKKwkJCWNvbnRpbnVlOworCQl9CisJCW9sZCA9IGFsdGVybmF0aXZlX2dldF9zbGF2ZShhLCBzbC0+bmFtZSktPmxpbms7CisJCW5ldyA9IHNsLT5saW5rOworCQlpZiAoY3VyX2Nob2ljZSAmJiBzdHJjbXAoY3VyX2Nob2ljZSwgZnMtPm1hc3Rlcl9maWxlKSA9PSAwKSB7CisJCQluZXdfZmlsZSA9IHhzdHJkdXAoZmlsZXNldF9nZXRfc2xhdmUoZnMsIHNsLT5uYW1lKSk7CisJCX0gZWxzZSB7CisJCQljaGFyICpsbms7CisKKwkJCXhhc3ByaW50ZigmbG5rLCAiJXMvJXMiLCBhbHRkaXIsIHNsLT5uYW1lKTsKKwkJCW5ld19maWxlID0gYXJlYWRsaW5rKGxuayk7CisJCQlmcmVlKGxuayk7CisJCX0KKwkJaWYgKHN0cmNtcChvbGQsIG5ldykgIT0gMCAmJgorCQkgICAgYWx0ZXJuYXRpdmVfcGF0aF9jbGFzc2lmeShvbGQpID09IEFMVF9QQVRIX1NZTUxJTkspIHsKKwkJCWJvb2wgcmVuYW1lX2xpbmsgPSBmYWxzZTsKKworCQkJaWYgKG5ld19maWxlKSB7CisJCQkJZXJybm8gPSAwOworCQkJCWlmIChzdGF0KG5ld19maWxlLCAmc3QpID09IC0xICYmIGVycm5vICE9IEVOT0VOVCkKKwkJCQkJc3lzZXJyKF8oImNhbm5vdCBzdGF0IGZpbGUgJyVzJyIpLAorCQkJCQkgICAgICAgbmV3X2ZpbGUpOworCQkJCXJlbmFtZV9saW5rID0gKGVycm5vID09IDApOworCQkJfQorCisJCQlpZiAocmVuYW1lX2xpbmspIHsKKwkJCQlpbmZvKF8oInJlbmFtaW5nICVzIHNsYXZlIGxpbmsgZnJvbSAlcyB0byAlcy4iKSwKKwkJCQkgICAgIHNsLT5uYW1lLCBvbGQsIG5ldyk7CisJCQkJY2hlY2tlZF9tdihvbGQsIG5ldyk7CisJCQl9IGVsc2UgeworCQkJCWNoZWNrZWRfcm0ob2xkKTsKKwkJCX0KKwkJfQorCQlmcmVlKG5ld19maWxlKTsKKwkJYWx0ZXJuYXRpdmVfYWRkX3NsYXZlKGEsIHhzdHJkdXAoc2wtPm5hbWUpLCB4c3RyZHVwKHNsLT5saW5rKSk7CisJfQorfQorCitzdGF0aWMgdm9pZAorYWx0ZXJuYXRpdmVfY2hlY2tfYXJncyhjb25zdCBjaGFyICpuYW1lLCBjb25zdCBjaGFyICpsaW5rbmFtZSwgY29uc3QgY2hhciAqZmlsZSkKK3sKKwlpZiAoc3RycGJyayhuYW1lLCAiLyBcdCIpKQorCQllcnJvcihfKCJhbHRlcm5hdGl2ZSBuYW1lICglcykgbXVzdCBub3QgY29udGFpbiAnLycgIgorCQkgICAgICAgICJhbmQgc3BhY2VzLiIpLCBuYW1lKTsKKworCWlmIChsaW5rbmFtZVswXSAhPSAnLycpCisJCWVycm9yKF8oImFsdGVybmF0aXZlIGxpbmsgaXMgbm90IGFic29sdXRlIGFzIGl0IHNob3VsZCBiZTogJXMiKSwKKwkJICAgICAgbGlua25hbWUpOworCisJaWYgKCFmaWxlIHx8IGZpbGVbMF0gIT0gJy8nKQorCQllcnJvcihfKCJhbHRlcm5hdGl2ZSBwYXRoIGlzIG5vdCBhYnNvbHV0ZSBhcyBpdCBzaG91bGQgYmU6ICVzIiksCisJCSAgICAgIGZpbGUpOworfQorCisvKioKKyAqIENoZWNrIHRoZSBhbHRlcm5hdGl2ZSBpbnN0YWxsYXRpb24gYXJndW1lbnRzLgorICoKKyAqIFRoYXQgdGhlIGNhbGxlciBkb2Vzbid0IG1peCBsaW5rcyBiZXR3ZWVuIGFsdGVybmF0aXZlcywgZG9lc24ndCBtaXgKKyAqIGFsdGVybmF0aXZlcyBiZXR3ZWVuIHNsYXZlL21hc3RlciwgYW5kIHRoYXQgdGhlIHZhcmlvdXMgcGFyYW1ldGVycworICogYXJlIGZpbmUuCisgKi8KK3N0YXRpYyB2b2lkCithbHRlcm5hdGl2ZV9jaGVja19pbnN0YWxsX2FyZ3Moc3RydWN0IGFsdGVybmF0aXZlICppbnN0X2FsdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3QgZmlsZXNldCAqZmlsZXNldCkKK3sKKwlzdHJ1Y3QgYWx0ZXJuYXRpdmVfbWFwICphbHRfbWFwX2xpbmtzLCAqYWx0X21hcF9wYXJlbnQ7CisJc3RydWN0IGFsdGVybmF0aXZlICpmb3VuZDsKKwlzdHJ1Y3Qgc2xhdmVfbGluayAqc2w7CisJc3RydWN0IHN0YXQgc3Q7CisKKwkvKiBMb2FkIGluZm9ybWF0aW9uIGFib3V0IGFsbCBhbHRlcm5hdGl2ZXMgdG8gY2hlY2sgZm9yIG1pc3Rha2VzLiAqLworCWFsdF9tYXBfbGlua3MgPSBhbHRlcm5hdGl2ZV9tYXBfbmV3KE5VTEwsIE5VTEwpOworCWFsdF9tYXBfcGFyZW50ID0gYWx0ZXJuYXRpdmVfbWFwX25ldyhOVUxMLCBOVUxMKTsKKwlhbHRlcm5hdGl2ZV9tYXBfbG9hZF90cmVlKGFsdF9tYXBfbGlua3MsIGFsdF9tYXBfcGFyZW50KTsKKworCWZvdW5kID0gYWx0ZXJuYXRpdmVfbWFwX2ZpbmQoYWx0X21hcF9wYXJlbnQsIGluc3RfYWx0LT5tYXN0ZXJfbmFtZSk7CisJaWYgKGZvdW5kICYmIHN0cmNtcChmb3VuZC0+bWFzdGVyX25hbWUsIGluc3RfYWx0LT5tYXN0ZXJfbmFtZSkgIT0gMCkgeworCQllcnJvcihfKCJhbHRlcm5hdGl2ZSAlcyBjYW4ndCBiZSBtYXN0ZXI6IGl0IGlzIGEgc2xhdmUgb2YgJXMiKSwKKwkJICAgICAgaW5zdF9hbHQtPm1hc3Rlcl9uYW1lLCBmb3VuZC0+bWFzdGVyX25hbWUpOworCX0KKworCWZvdW5kID0gYWx0ZXJuYXRpdmVfbWFwX2ZpbmQoYWx0X21hcF9saW5rcywgaW5zdF9hbHQtPm1hc3Rlcl9saW5rKTsKKwlpZiAoZm91bmQgJiYgc3RyY21wKGZvdW5kLT5tYXN0ZXJfbmFtZSwgaW5zdF9hbHQtPm1hc3Rlcl9uYW1lKSAhPSAwKSB7CisJCWZvdW5kID0gYWx0ZXJuYXRpdmVfbWFwX2ZpbmQoYWx0X21hcF9wYXJlbnQsCisJCSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm91bmQtPm1hc3Rlcl9uYW1lKTsKKwkJZXJyb3IoXygiYWx0ZXJuYXRpdmUgbGluayAlcyBpcyBhbHJlYWR5IG1hbmFnZWQgYnkgJXMuIiksCisJCSAgICAgIGluc3RfYWx0LT5tYXN0ZXJfbGluaywgZm91bmQtPm1hc3Rlcl9uYW1lKTsKKwl9CisKKwlhbHRlcm5hdGl2ZV9jaGVja19hcmdzKGluc3RfYWx0LT5tYXN0ZXJfbmFtZSwgaW5zdF9hbHQtPm1hc3Rlcl9saW5rLAorCSAgICAgICAgICAgICAgICAgICAgICAgZmlsZXNldC0+bWFzdGVyX2ZpbGUpOworCisJaWYgKHN0YXQoZmlsZXNldC0+bWFzdGVyX2ZpbGUsICZzdCkgPT0gLTEpIHsKKwkJaWYgKGVycm5vID09IEVOT0VOVCkKKwkJCWVycm9yKF8oImFsdGVybmF0aXZlIHBhdGggJXMgZG9lc24ndCBleGlzdC4iKSwKKwkJCSAgICAgIGZpbGVzZXQtPm1hc3Rlcl9maWxlKTsKKwkJZWxzZQorCQkJc3lzZXJyKF8oImNhbm5vdCBzdGF0IGZpbGUgJyVzJyIpLCBmaWxlc2V0LT5tYXN0ZXJfZmlsZSk7CisJfQorCisJZm9yIChzbCA9IGluc3RfYWx0LT5zbGF2ZXM7IHNsOyBzbCA9IHNsLT5uZXh0KSB7CisJCWNvbnN0IGNoYXIgKmZpbGUgPSBmaWxlc2V0X2dldF9zbGF2ZShmaWxlc2V0LCBzbC0+bmFtZSk7CisKKwkJZm91bmQgPSBhbHRlcm5hdGl2ZV9tYXBfZmluZChhbHRfbWFwX3BhcmVudCwgc2wtPm5hbWUpOworCQlpZiAoZm91bmQgJiYKKwkJICAgIHN0cmNtcChmb3VuZC0+bWFzdGVyX25hbWUsIGluc3RfYWx0LT5tYXN0ZXJfbmFtZSkgIT0gMCkgeworCQkJaWYgKHN0cmNtcChmb3VuZC0+bWFzdGVyX25hbWUsIHNsLT5uYW1lKSA9PSAwKQorCQkJCWVycm9yKF8oImFsdGVybmF0aXZlICVzIGNhbid0IGJlIHNsYXZlIG9mICVzOiAiCisJCQkJICAgICAgICAiaXQgaXMgYSBtYXN0ZXIgYWx0ZXJuYXRpdmUuIiksCisJCQkJICAgICAgc2wtPm5hbWUsIGluc3RfYWx0LT5tYXN0ZXJfbmFtZSk7CisJCQllbHNlCisJCQkJZXJyb3IoXygiYWx0ZXJuYXRpdmUgJXMgY2FuJ3QgYmUgc2xhdmUgb2YgJXM6ICIKKwkJCQkgICAgICAgICJpdCBpcyBhIHNsYXZlIG9mICVzIiksCisJCQkJICAgICAgc2wtPm5hbWUsIGluc3RfYWx0LT5tYXN0ZXJfbmFtZSwKKwkJCQkgICAgICBmb3VuZC0+bWFzdGVyX25hbWUpOworCQl9CisKKwkJZm91bmQgPSBhbHRlcm5hdGl2ZV9tYXBfZmluZChhbHRfbWFwX2xpbmtzLCBzbC0+bGluayk7CisJCWlmIChmb3VuZCAmJgorCQkgICAgc3RyY21wKGZvdW5kLT5tYXN0ZXJfbmFtZSwgaW5zdF9hbHQtPm1hc3Rlcl9uYW1lKSAhPSAwKSB7CisJCQllcnJvcihfKCJhbHRlcm5hdGl2ZSBsaW5rICVzIGlzIGFscmVhZHkgIgorCQkJICAgICAgICAibWFuYWdlZCBieSAlcy4iKSwgc2wtPmxpbmssCisJCQkgICAgICBmb3VuZC0+bWFzdGVyX25hbWUpOworCQl9CisJCWlmIChmb3VuZCkgeworCQkJc3RydWN0IHNsYXZlX2xpbmsgKnNsMjsKKworCQkJZm9yIChzbDIgPSBmb3VuZC0+c2xhdmVzOyBzbDI7IHNsMiA9IHNsMi0+bmV4dCkKKwkJCQlpZiAoc3RyY21wKHNsMi0+bGluaywgc2wtPmxpbmspID09IDApCisJCQkJCWJyZWFrOworCQkJaWYgKHNsMiAmJiBzdHJjbXAoc2wyLT5uYW1lLCBzbC0+bmFtZSkgIT0gMCkKKwkJCQllcnJvcihfKCJhbHRlcm5hdGl2ZSBsaW5rICVzIGlzIGFscmVhZHkgIgorCQkJCSAgICAgICAgIm1hbmFnZWQgYnkgJXMgKHNsYXZlIG9mICVzKS4iKSwKKwkJCQkgICAgICBzbC0+bGluaywgc2wyLT5uYW1lLAorCQkJCSAgICAgIGZvdW5kLT5tYXN0ZXJfbmFtZSk7CisJCX0KKworCQlhbHRlcm5hdGl2ZV9jaGVja19hcmdzKHNsLT5uYW1lLCBzbC0+bGluaywgZmlsZSk7CisJfQorCisJYWx0ZXJuYXRpdmVfbWFwX2ZyZWUoYWx0X21hcF9saW5rcyk7CisJYWx0ZXJuYXRpdmVfbWFwX2ZyZWUoYWx0X21hcF9wYXJlbnQpOworfQorCisvKgorICogTWFpbiBwcm9ncmFtCisgKi8KKworI2RlZmluZSBNSVNTSU5HX0FSR1MobmIpIChhcmdjIDwgaSArIG5iICsgMSkKKworaW50CittYWluKGludCBhcmdjLCBjaGFyICoqYXJndikKK3sKKwkvKiBBbHRlcm5hdGl2ZSB3b3JrZWQgb24uICovCisJc3RydWN0IGFsdGVybmF0aXZlICphID0gTlVMTDsKKwkvKiBBbHRlcm5hdGl2ZSB0byBpbnN0YWxsLiAqLworCXN0cnVjdCBhbHRlcm5hdGl2ZSAqaW5zdF9hbHQgPSBOVUxMOworCS8qIFNldCBvZiBmaWxlcyB0byBpbnN0YWxsIGluIHRoZSBhbHRlcm5hdGl2ZS4gKi8KKwlzdHJ1Y3QgZmlsZXNldCAqZmlsZXNldCA9IE5VTEw7CisJLyogUGF0aCBvZiBhbHRlcm5hdGl2ZSB3ZSBhcmUgb2ZmZXJpbmcuICovCisJY2hhciAqcGF0aCA9IE5VTEwsICpjdXJyZW50X2Nob2ljZSA9IE5VTEw7CisJY29uc3QgY2hhciAqbmV3X2Nob2ljZSA9IE5VTEw7CisJaW50IGkgPSAwOworCisJc2V0bG9jYWxlKExDX0FMTCwgIiIpOworCWJpbmR0ZXh0ZG9tYWluKCJkcGtnIiwgTE9DQUxFRElSKTsKKwl0ZXh0ZG9tYWluKCJkcGtnIik7CisKKwlhZG1kaXIgPSBhZG1pbmRpcl9pbml0KCk7CisKKwlpZiAoc2V0dmJ1ZihzdGRvdXQsIE5VTEwsIF9JT05CRiwgMCkpCisJCXN5c2Vycigic2V0dmJ1ZiBmYWlsZWQiKTsKKworCXByb2dfcGF0aCA9IGFyZ3ZbMF07CisKKwlmb3IgKGkgPSAxOyBpIDwgYXJnYzsgaSsrKSB7CisJCWlmIChzdHJzdHIoYXJndltpXSwgIi0tIikgIT0gYXJndltpXSkgeworCQkJZXJyb3IoXygidW5rbm93biBhcmd1bWVudCBgJXMnIiksIGFyZ3ZbaV0pOworCQl9IGVsc2UgaWYgKHN0cmNtcCgiLS1oZWxwIiwgYXJndltpXSkgPT0gMCkgeworCQkJdXNhZ2UoKTsKKwkJCWV4aXQoMCk7CisJCX0gZWxzZSBpZiAoc3RyY21wKCItLXZlcnNpb24iLCBhcmd2W2ldKSA9PSAwKSB7CisJCQl2ZXJzaW9uKCk7CisJCQlleGl0KDApOworCQl9IGVsc2UgaWYgKHN0cmNtcCgiLS12ZXJib3NlIiwgYXJndltpXSkgPT0gMCkgeworCQkJb3B0X3ZlcmJvc2UrKzsKKwkJCVBVU0hfT1BUKGFyZ3ZbaV0pOworCQl9IGVsc2UgaWYgKHN0cmNtcCgiLS1xdWlldCIsIGFyZ3ZbaV0pID09IDApIHsKKwkJCW9wdF92ZXJib3NlLS07CisJCQlQVVNIX09QVChhcmd2W2ldKTsKKwkJfSBlbHNlIGlmIChzdHJjbXAoIi0taW5zdGFsbCIsIGFyZ3ZbaV0pID09IDApIHsKKwkJCWxvbmcgcHJpb3JpdHk7CisJCQljaGFyICplbmRwdHI7CisKKwkJCXNldF9hY3Rpb24oImluc3RhbGwiKTsKKwkJCWlmIChNSVNTSU5HX0FSR1MoNCkpCisJCQkJYmFkdXNhZ2UoXygiLS1pbnN0YWxsIG5lZWRzIDxsaW5rPiA8bmFtZT4gIgorCQkJCSAgICAgICAgICAgIjxwYXRoPiA8cHJpb3JpdHk+IikpOworCQkJaWYgKHN0cmNtcChhcmd2W2krMV0sIGFyZ3ZbaSszXSkgPT0gMCkKKwkJCQliYWR1c2FnZShfKCI8bGluaz4gYW5kIDxwYXRoPiBjYW4ndCBiZSB0aGUgc2FtZSIpKTsKKwkJCXByaW9yaXR5ID0gc3RydG9sKGFyZ3ZbaSs0XSwgJmVuZHB0ciwgMTApOworCQkJaWYgKCplbmRwdHIgIT0gJ1wwJykKKwkJCQliYWR1c2FnZShfKCJwcmlvcml0eSBtdXN0IGJlIGFuIGludGVnZXIiKSk7CisKKwkJCWEgPSBhbHRlcm5hdGl2ZV9uZXcoYXJndltpICsgMl0pOworCQkJaW5zdF9hbHQgPSBhbHRlcm5hdGl2ZV9uZXcoYXJndltpICsgMl0pOworCQkJYWx0ZXJuYXRpdmVfc2V0X3N0YXR1cyhpbnN0X2FsdCwgQUxUX1NUX0FVVE8pOworCQkJYWx0ZXJuYXRpdmVfc2V0X2xpbmsoaW5zdF9hbHQsIHhzdHJkdXAoYXJndltpICsgMV0pKTsKKwkJCWZpbGVzZXQgPSBmaWxlc2V0X25ldyhhcmd2W2kgKyAzXSwgcHJpb3JpdHkpOworCisJCQlpICs9IDQ7CisJCX0gZWxzZSBpZiAoc3RyY21wKCItLXJlbW92ZSIsIGFyZ3ZbaV0pID09IDAgfHwKKwkJCSAgIHN0cmNtcCgiLS1zZXQiLCBhcmd2W2ldKSA9PSAwKSB7CisJCQlzZXRfYWN0aW9uKGFyZ3ZbaV0gKyAyKTsKKwkJCWlmIChNSVNTSU5HX0FSR1MoMikpCisJCQkJYmFkdXNhZ2UoXygiLS0lcyBuZWVkcyA8bmFtZT4gPHBhdGg+IiksIGFyZ3ZbaV0gKyAyKTsKKworCQkJYSA9IGFsdGVybmF0aXZlX25ldyhhcmd2W2kgKyAxXSk7CisJCQlwYXRoID0geHN0cmR1cChhcmd2W2kgKyAyXSk7CisKKwkJCWkgKz0gMjsKKwkJfSBlbHNlIGlmIChzdHJjbXAoIi0tZGlzcGxheSIsIGFyZ3ZbaV0pID09IDAgfHwKKwkJCSAgIHN0cmNtcCgiLS1xdWVyeSIsIGFyZ3ZbaV0pID09IDAgfHwKKwkJCSAgIHN0cmNtcCgiLS1hdXRvIiwgYXJndltpXSkgPT0gMCB8fAorCQkJICAgc3RyY21wKCItLWNvbmZpZyIsIGFyZ3ZbaV0pID09IDAgfHwKKwkJCSAgIHN0cmNtcCgiLS1saXN0IiwgYXJndltpXSkgPT0gMCB8fAorCQkJICAgc3RyY21wKCItLXJlbW92ZS1hbGwiLCBhcmd2W2ldKSA9PSAwKSB7CisJCQlzZXRfYWN0aW9uKGFyZ3ZbaV0gKyAyKTsKKwkJCWlmIChNSVNTSU5HX0FSR1MoMSkpCisJCQkJYmFkdXNhZ2UoXygiLS0lcyBuZWVkcyA8bmFtZT4iKSwgYXJndltpXSArIDIpOworCQkJYSA9IGFsdGVybmF0aXZlX25ldyhhcmd2W2kgKyAxXSk7CisJCQlpKys7CisJCX0gZWxzZSBpZiAoc3RyY21wKCItLWFsbCIsIGFyZ3ZbaV0pID09IDAgfHwKKwkJCSAgIHN0cmNtcCgiLS1nZXQtc2VsZWN0aW9ucyIsIGFyZ3ZbaV0pID09IDAgfHwKKwkJCSAgIHN0cmNtcCgiLS1zZXQtc2VsZWN0aW9ucyIsIGFyZ3ZbaV0pID09IDApIHsKKwkJCXNldF9hY3Rpb24oYXJndltpXSArIDIpOworCQl9IGVsc2UgaWYgKHN0cmNtcCgiLS1zbGF2ZSIsIGFyZ3ZbaV0pID09IDApIHsKKwkJCWNoYXIgKnNsaW5rLCAqc25hbWUsICpzcGF0aDsKKwkJCXN0cnVjdCBzbGF2ZV9saW5rICpzbDsKKworCQkJaWYgKGFjdGlvbiAmJiBzdHJjbXAoYWN0aW9uLCAiaW5zdGFsbCIpICE9IDApCisJCQkJYmFkdXNhZ2UoXygiLS1zbGF2ZSBvbmx5IGFsbG93ZWQgd2l0aCAtLWluc3RhbGwiKSk7CisJCQlpZiAoTUlTU0lOR19BUkdTKDMpKQorCQkJCWJhZHVzYWdlKF8oIi0tc2xhdmUgbmVlZHMgPGxpbms+IDxuYW1lPiA8cGF0aD4iKSk7CisKKwkJCXNsaW5rID0geHN0cmR1cChhcmd2W2kgKyAxXSk7CisJCQlzbmFtZSA9IHhzdHJkdXAoYXJndltpICsgMl0pOworCQkJc3BhdGggPSB4c3RyZHVwKGFyZ3ZbaSArIDNdKTsKKworCQkJaWYgKHN0cmNtcChzbGluaywgc3BhdGgpID09IDApCisJCQkJYmFkdXNhZ2UoXygiPGxpbms+IGFuZCA8cGF0aD4gY2FuJ3QgYmUgdGhlIHNhbWUiKSk7CisJCQlpZiAoc3RyY21wKGluc3RfYWx0LT5tYXN0ZXJfbmFtZSwgc25hbWUpID09IDApCisJCQkJYmFkdXNhZ2UoXygibmFtZSAlcyBpcyBib3RoIHByaW1hcnkgYW5kIHNsYXZlIiksCisJCQkJICAgICAgICAgc25hbWUpOworCQkJaWYgKHN0cmNtcChzbGluaywgaW5zdF9hbHQtPm1hc3Rlcl9saW5rKSA9PSAwKQorCQkJCWJhZHVzYWdlKF8oImxpbmsgJXMgaXMgYm90aCBwcmltYXJ5IGFuZCBzbGF2ZSIpLAorCQkJCSAgICAgICAgIHNsaW5rKTsKKwkJCWlmIChhbHRlcm5hdGl2ZV9oYXNfc2xhdmUoaW5zdF9hbHQsIHNuYW1lKSkKKwkJCQliYWR1c2FnZShfKCJkdXBsaWNhdGUgc2xhdmUgbmFtZSAlcyIpLCBzbmFtZSk7CisKKwkJCWZvciAoc2wgPSBpbnN0X2FsdC0+c2xhdmVzOyBzbDsgc2wgPSBzbC0+bmV4dCkgeworCQkJCWNvbnN0IGNoYXIgKmxpbmtuYW1lID0gc2wtPmxpbms7CisJCQkJaWYgKGxpbmtuYW1lID09IE5VTEwpCisJCQkJCWxpbmtuYW1lID0gIiI7CisJCQkJaWYgKHN0cmNtcChsaW5rbmFtZSwgc2xpbmspID09IDApCisJCQkJCWJhZHVzYWdlKF8oImR1cGxpY2F0ZSBzbGF2ZSBsaW5rICVzIiksCisJCQkJCSAgICAgICAgICBzbGluayk7CisJCQl9CisKKwkJCWFsdGVybmF0aXZlX2FkZF9zbGF2ZShpbnN0X2FsdCwgc25hbWUsIHNsaW5rKTsKKwkJCWZpbGVzZXRfYWRkX3NsYXZlKGZpbGVzZXQsIHhzdHJkdXAoc25hbWUpLCBzcGF0aCk7CisKKwkJCWkrPSAzOworCQl9IGVsc2UgaWYgKHN0cmNtcCgiLS1sb2ciLCBhcmd2W2ldKSA9PSAwKSB7CisJCQlpZiAoTUlTU0lOR19BUkdTKDEpKQorCQkJCWJhZHVzYWdlKF8oIi0tJXMgbmVlZHMgYSA8ZmlsZT4gYXJndW1lbnQiKSwgImxvZyIpOworCQkJUFVTSF9PUFQoYXJndltpXSk7CisJCQlQVVNIX09QVChhcmd2W2kgKyAxXSk7CisJCQlsb2dfZmlsZSA9IGFyZ3ZbaSArIDFdOworCQkJaSsrOworCQl9IGVsc2UgaWYgKHN0cmNtcCgiLS1hbHRkaXIiLCBhcmd2W2ldKSA9PSAwKSB7CisJCQlpZiAoTUlTU0lOR19BUkdTKDEpKQorCQkJCWJhZHVzYWdlKF8oIi0tJXMgbmVlZHMgYSA8ZGlyZWN0b3J5PiBhcmd1bWVudCIpLCAibG9nIik7CisJCQlQVVNIX09QVChhcmd2W2ldKTsKKwkJCVBVU0hfT1BUKGFyZ3ZbaSArIDFdKTsKKwkJCWFsdGRpciA9IGFyZ3ZbaSArIDFdOworCQkJaSsrOworCQl9IGVsc2UgaWYgKHN0cmNtcCgiLS1hZG1pbmRpciIsIGFyZ3ZbaV0pID09IDApIHsKKwkJCWlmIChNSVNTSU5HX0FSR1MoMSkpCisJCQkJYmFkdXNhZ2UoXygiLS0lcyBuZWVkcyBhIDxkaXJlY3Rvcnk+IGFyZ3VtZW50IiksICJsb2ciKTsKKwkJCVBVU0hfT1BUKGFyZ3ZbaV0pOworCQkJUFVTSF9PUFQoYXJndltpICsgMV0pOworCQkJYWRtZGlyID0gYXJndltpICsgMV07CisJCQlpKys7CisJCX0gZWxzZSBpZiAoc3RyY21wKCItLXNraXAtYXV0byIsIGFyZ3ZbaV0pID09IDApIHsKKwkJCW9wdF9za2lwX2F1dG8gPSAxOworCQkJUFVTSF9PUFQoYXJndltpXSk7CisJCX0gZWxzZSBpZiAoc3RyY21wKCItLWZvcmNlIiwgYXJndltpXSkgPT0gMCkgeworCQkJb3B0X2ZvcmNlID0gMTsKKwkJCVBVU0hfT1BUKGFyZ3ZbaV0pOworCQl9IGVsc2UgeworCQkJYmFkdXNhZ2UoXygidW5rbm93biBvcHRpb24gYCVzJyIpLCBhcmd2W2ldKTsKKwkJfQorCX0KKworCWlmICghYWN0aW9uKQorCQliYWR1c2FnZShfKCJuZWVkIC0tZGlzcGxheSwgLS1xdWVyeSwgLS1saXN0LCAtLWdldC1zZWxlY3Rpb25zLCAiCisJCSAgICAgICAgICAgIi0tY29uZmlnLCAtLXNldCwgLS1zZXQtc2VsZWN0aW9ucywgLS1pbnN0YWxsLCAiCisJCSAgICAgICAgICAgIi0tcmVtb3ZlLCAtLWFsbCwgLS1yZW1vdmUtYWxsIG9yIC0tYXV0byIpKTsKKworCWlmIChzdHJjbXAoYWN0aW9uLCAiaW5zdGFsbCIpID09IDApCisJCWFsdGVybmF0aXZlX2NoZWNrX2luc3RhbGxfYXJncyhpbnN0X2FsdCwgZmlsZXNldCk7CisKKwkvKiBIYW5kbGUgYWN0aW9ucy4gKi8KKwlpZiAoc3RyY21wKGFjdGlvbiwgImFsbCIpID09IDApIHsKKwkJY29uZmlnX2FsbCgpOworCQlleGl0KDApOworCX0gZWxzZSBpZiAoc3RyY21wKGFjdGlvbiwgImdldC1zZWxlY3Rpb25zIikgPT0gMCkgeworCQlzdHJ1Y3QgYWx0ZXJuYXRpdmVfbWFwICphbHRfbWFwX29iajsKKwkJc3RydWN0IGFsdGVybmF0aXZlX21hcCAqYW07CisKKwkJYWx0X21hcF9vYmogPSBhbHRlcm5hdGl2ZV9tYXBfbmV3KE5VTEwsIE5VTEwpOworCQlhbHRlcm5hdGl2ZV9tYXBfbG9hZF9uYW1lcyhhbHRfbWFwX29iaik7CisKKwkJZm9yIChhbSA9IGFsdF9tYXBfb2JqOyBhbSAmJiBhbS0+aXRlbTsgYW0gPSBhbS0+bmV4dCkgeworCQkJY2hhciAqY3VycmVudDsKKworCQkJY3VycmVudCA9IGFsdGVybmF0aXZlX2dldF9jdXJyZW50KGFtLT5pdGVtKTsKKwkJCXByaW50ZigiJS0zMHMgJS04cyAlc1xuIiwgYW0tPmtleSwKKwkJCSAgICAgICBhbHRlcm5hdGl2ZV9zdGF0dXNfc3RyaW5nKGFtLT5pdGVtLT5zdGF0dXMpLAorCQkJICAgICAgIGN1cnJlbnQgPyBjdXJyZW50IDogIiIpOworCQkJZnJlZShjdXJyZW50KTsKKwkJfQorCisJCWFsdGVybmF0aXZlX21hcF9mcmVlKGFsdF9tYXBfb2JqKTsKKworCQlleGl0KDApOworCX0gZWxzZSBpZiAoc3RyY21wKGFjdGlvbiwgInNldC1zZWxlY3Rpb25zIikgPT0gMCkgeworCQlzdHJ1Y3QgYWx0ZXJuYXRpdmVfbWFwICphbHRfbWFwX29iajsKKworCQlsb2dfbXNnKCJydW4gd2l0aCAlcyIsIGdldF9hcmd2X3N0cmluZyhhcmdjLCBhcmd2KSk7CisJCWFsdF9tYXBfb2JqID0gYWx0ZXJuYXRpdmVfbWFwX25ldyhOVUxMLCBOVUxMKTsKKwkJYWx0ZXJuYXRpdmVfbWFwX2xvYWRfbmFtZXMoYWx0X21hcF9vYmopOworCQlhbHRlcm5hdGl2ZV9zZXRfc2VsZWN0aW9ucyhhbHRfbWFwX29iaiwgc3RkaW4sIF8oIjxzdGFuZGFyZCBpbnB1dD4iKSk7CisJCWFsdGVybmF0aXZlX21hcF9mcmVlKGFsdF9tYXBfb2JqKTsKKwkJZXhpdCgwKTsKKwl9CisKKwkvKiBMb2FkIHRoZSBhbHRlcm5hdGl2ZSBpbmZvLCBzdG9wIG9uIGZhaWx1cmUgZXhjZXB0IGZvciAtLWluc3RhbGwuICovCisJaWYgKCFhbHRlcm5hdGl2ZV9sb2FkKGEsIGZhbHNlKSAmJiBzdHJjbXAoYWN0aW9uLCAiaW5zdGFsbCIpICE9IDApIHsKKwkJLyogRklYTUU6IEJlIGNvbnNpc3RlbnQgZm9yIG5vdyB3aXRoIHRoZSBjYXNlIHdoZW4gd2UgdHJ5IHRvIHJlbW92ZSBhCisJCSAqIG5vbi1leGlzdGluZyBwYXRoIGZyb20gYW4gZXhpc3RpbmcgbGluayBncm91cCBmaWxlLiAqLworCQlpZiAoc3RyY21wKGFjdGlvbiwgInJlbW92ZSIpID09IDApIHsKKwkJCXZlcmJvc2UoXygibm8gYWx0ZXJuYXRpdmVzIGZvciAlcy4iKSwgYS0+bWFzdGVyX25hbWUpOworCQkJZXhpdCgwKTsKKwkJfQorCQllcnJvcihfKCJubyBhbHRlcm5hdGl2ZXMgZm9yICVzLiIpLCBhLT5tYXN0ZXJfbmFtZSk7CisJfQorCisJaWYgKHN0cmNtcChhY3Rpb24sICJkaXNwbGF5IikgPT0gMCkgeworCQlhbHRlcm5hdGl2ZV9kaXNwbGF5X3VzZXIoYSk7CisJCWV4aXQoMCk7CisJfSBlbHNlIGlmIChzdHJjbXAoYWN0aW9uLCAicXVlcnkiKSA9PSAwKSB7CisJCWFsdGVybmF0aXZlX2Rpc3BsYXlfcXVlcnkoYSk7CisJCWV4aXQoMCk7CisJfSBlbHNlIGlmIChzdHJjbXAoYWN0aW9uLCAibGlzdCIpID09IDApIHsKKwkJYWx0ZXJuYXRpdmVfZGlzcGxheV9saXN0KGEpOworCQlleGl0KDApOworCX0KKworCS8qIEFjdGlvbnMgYmVsb3cgbWlnaHQgbW9kaWZ5IHRoZSBzeXN0ZW0uICovCisJbG9nX21zZygicnVuIHdpdGggJXMiLCBnZXRfYXJndl9zdHJpbmcoYXJnYywgYXJndikpOworCWlmIChhbHRlcm5hdGl2ZV9oYXNfY3VycmVudF9saW5rKGEpKSB7CisJCWN1cnJlbnRfY2hvaWNlID0gYWx0ZXJuYXRpdmVfZ2V0X2N1cnJlbnQoYSk7CisJCS8qIERldGVjdCBtYW51YWxseSBtb2RpZmllZCBhbHRlcm5hdGl2ZSwgc3dpdGNoIHRvIG1hbnVhbC4gKi8KKwkJaWYgKCFhbHRlcm5hdGl2ZV9oYXNfY2hvaWNlKGEsIGN1cnJlbnRfY2hvaWNlKSkgeworCQkJc3RydWN0IHN0YXQgc3Q7CisKKwkJCWVycm5vID0gMDsKKwkJCWlmIChzdGF0KGN1cnJlbnRfY2hvaWNlLCAmc3QpID09IC0xICYmIGVycm5vICE9IEVOT0VOVCkKKwkJCQlzeXNlcnIoXygiY2Fubm90IHN0YXQgZmlsZSAnJXMnIiksIGN1cnJlbnRfY2hvaWNlKTsKKworCQkJaWYgKGVycm5vID09IEVOT0VOVCkgeworCQkJCXdhcm5pbmcoXygiJXMvJXMgaXMgZGFuZ2xpbmcsIGl0IHdpbGwgYmUgdXBkYXRlZCAiCisJCQkJICAgICAgICAgICJ3aXRoIGJlc3QgY2hvaWNlLiIpLCBhbHRkaXIsIGEtPm1hc3Rlcl9uYW1lKTsKKwkJCQlhbHRlcm5hdGl2ZV9zZXRfc3RhdHVzKGEsIEFMVF9TVF9BVVRPKTsKKwkJCX0gZWxzZSBpZiAoYS0+c3RhdHVzICE9IEFMVF9TVF9NQU5VQUwpIHsKKwkJCQl3YXJuaW5nKF8oIiVzLyVzIGhhcyBiZWVuIGNoYW5nZWQgKG1hbnVhbGx5IG9yIGJ5ICIKKwkJCQkgICAgICAgICAgImEgc2NyaXB0KS4gU3dpdGNoaW5nIHRvIG1hbnVhbCAiCisJCQkJICAgICAgICAgICJ1cGRhdGVzIG9ubHkuIiksIGFsdGRpciwgYS0+bWFzdGVyX25hbWUpOworCQkJCWFsdGVybmF0aXZlX3NldF9zdGF0dXMoYSwgQUxUX1NUX01BTlVBTCk7CisJCQl9CisJCX0KKwl9IGVsc2UgeworCQkvKiBMYWNrIG9mIGFsdGVybmF0aXZlIGxpbmsgPT4gYXV0b21hdGljIG1vZGUuICovCisJCXZlcmJvc2UoXygic2V0dGluZyB1cCBhdXRvbWF0aWMgc2VsZWN0aW9uIG9mICVzLiIpLAorCQkgICAgICAgIGEtPm1hc3Rlcl9uYW1lKTsKKwkJYWx0ZXJuYXRpdmVfc2V0X3N0YXR1cyhhLCBBTFRfU1RfQVVUTyk7CisJfQorCisJaWYgKHN0cmNtcChhY3Rpb24sICJzZXQiKSA9PSAwKSB7CisJCWlmIChhbHRlcm5hdGl2ZV9oYXNfY2hvaWNlKGEsIHBhdGgpKQorCQkJbmV3X2Nob2ljZSA9IHBhdGg7CisJCWVsc2UKKwkJCWVycm9yKF8oImFsdGVybmF0aXZlICVzIGZvciAlcyBub3QgcmVnaXN0ZXJlZCwgIgorCQkJICAgICAgICAibm90IHNldHRpbmcuIiksIHBhdGgsIGEtPm1hc3Rlcl9uYW1lKTsKKwkJYWx0ZXJuYXRpdmVfc2V0X3N0YXR1cyhhLCBBTFRfU1RfTUFOVUFMKTsKKwl9IGVsc2UgaWYgKHN0cmNtcChhY3Rpb24sICJhdXRvIikgPT0gMCkgeworCQlhbHRlcm5hdGl2ZV9zZXRfc3RhdHVzKGEsIEFMVF9TVF9BVVRPKTsKKwkJaWYgKGFsdGVybmF0aXZlX2Nob2ljZXNfY291bnQoYSkgPT0gMCkKKwkJCXByKF8oIlRoZXJlIGlzIG5vIHByb2dyYW0gd2hpY2ggcHJvdmlkZXMgJXMuIiksCisJCQkgICBhLT5tYXN0ZXJfbmFtZSk7CisJCWVsc2UKKwkJCW5ld19jaG9pY2UgPSBhbHRlcm5hdGl2ZV9nZXRfYmVzdChhKS0+bWFzdGVyX2ZpbGU7CisJfSBlbHNlIGlmIChzdHJjbXAoYWN0aW9uLCAiY29uZmlnIikgPT0gMCkgeworCQlpZiAoYWx0ZXJuYXRpdmVfY2hvaWNlc19jb3VudChhKSA9PSAwKSB7CisJCQlwcihfKCJUaGVyZSBpcyBubyBwcm9ncmFtIHdoaWNoIHByb3ZpZGVzICVzLiIpLAorCQkJICAgYS0+bWFzdGVyX25hbWUpOworCQkJcHIoXygiTm90aGluZyB0byBjb25maWd1cmUuIikpOworCQl9IGVsc2UgaWYgKG9wdF9za2lwX2F1dG8gJiYgYS0+c3RhdHVzID09IEFMVF9TVF9BVVRPKSB7CisJCQlhbHRlcm5hdGl2ZV9kaXNwbGF5X3VzZXIoYSk7CisJCX0gZWxzZSBpZiAoYWx0ZXJuYXRpdmVfY2hvaWNlc19jb3VudChhKSA9PSAxICYmCisJCSAgICAgICAgICAgYS0+c3RhdHVzID09IEFMVF9TVF9BVVRPICYmCisJCSAgICAgICAgICAgYWx0ZXJuYXRpdmVfaGFzX2N1cnJlbnRfbGluayhhKSkgeworCQkJY2hhciAqY3VyID0gYWx0ZXJuYXRpdmVfZ2V0X2N1cnJlbnQoYSk7CisKKwkJCXByKF8oIlRoZXJlIGlzIG9ubHkgb25lIGFsdGVybmF0aXZlIGluIGxpbmsgZ3JvdXAgJXM6ICVzIiksCisJCQkgICBhLT5tYXN0ZXJfbmFtZSwgY3VyKTsKKwkJCXByKF8oIk5vdGhpbmcgdG8gY29uZmlndXJlLiIpKTsKKwkJCWZyZWUoY3VyKTsKKwkJfSBlbHNlIHsKKwkJCW5ld19jaG9pY2UgPSBhbHRlcm5hdGl2ZV9zZWxlY3RfY2hvaWNlKGEpOworCQl9CisJfSBlbHNlIGlmIChzdHJjbXAoYWN0aW9uLCAicmVtb3ZlIikgPT0gMCkgeworCQlpZiAoYWx0ZXJuYXRpdmVfaGFzX2Nob2ljZShhLCBwYXRoKSkKKwkJCWFsdGVybmF0aXZlX3JlbW92ZV9jaG9pY2UoYSwgcGF0aCk7CisJCWVsc2UKKwkJCXZlcmJvc2UoXygiYWx0ZXJuYXRpdmUgJXMgZm9yICVzIG5vdCByZWdpc3RlcmVkLCBub3QgIgorCQkJICAgICAgICAgICJyZW1vdmluZy4iKSwgcGF0aCwgYS0+bWFzdGVyX25hbWUpOworCQlpZiAoY3VycmVudF9jaG9pY2UgJiYgc3RyY21wKGN1cnJlbnRfY2hvaWNlLCBwYXRoKSA9PSAwKSB7CisJCQlzdHJ1Y3QgZmlsZXNldCAqYmVzdDsKKworCQkJLyogQ3VycmVudCBjaG9pY2UgaXMgcmVtb3ZlZC4gKi8KKwkJCWlmIChhLT5zdGF0dXMgPT0gQUxUX1NUX01BTlVBTCkgeworCQkJCS8qIEFuZCBpdCB3YXMgbWFudWFsLCBzd2l0Y2ggdG8gYXV0by4gKi8KKwkJCQlpbmZvKF8oInJlbW92aW5nIG1hbnVhbGx5IHNlbGVjdGVkIGFsdGVybmF0aXZlICIKKwkJCQkgICAgICAgIi0gc3dpdGNoaW5nICVzIHRvIGF1dG8gbW9kZSIpLAorCQkJCSAgICAgYS0+bWFzdGVyX25hbWUpOworCQkJCWFsdGVybmF0aXZlX3NldF9zdGF0dXMoYSwgQUxUX1NUX0FVVE8pOworCQkJfQorCQkJYmVzdCA9IGFsdGVybmF0aXZlX2dldF9iZXN0KGEpOworCQkJaWYgKGJlc3QpCisJCQkJbmV3X2Nob2ljZSA9IGJlc3QtPm1hc3Rlcl9maWxlOworCQl9CisJfSBlbHNlIGlmIChzdHJjbXAoYWN0aW9uLCAicmVtb3ZlLWFsbCIpID09IDApIHsKKwkJYWx0ZXJuYXRpdmVfY2hvaWNlc19mcmVlKGEpOworCX0gZWxzZSBpZiAoc3RyY21wKGFjdGlvbiwgImluc3RhbGwiKSA9PSAwKSB7CisJCWlmIChhLT5tYXN0ZXJfbGluaykgeworCQkJLyogQWx0ZXJuYXRpdmUgYWxyZWFkeSBleGlzdHMsIGNoZWNrIGlmIGFueXRoaW5nIGdvdAorCQkJICogdXBkYXRlZC4gKi8KKwkJCWFsdGVybmF0aXZlX2V2b2x2ZShhLCBpbnN0X2FsdCwgY3VycmVudF9jaG9pY2UsIGZpbGVzZXQpOworCQl9IGVsc2UgeworCQkJLyogQWx0ZXJuYXRpdmUgZG9lc24ndCBleGlzdCwgY3JlYXRlIGZyb20gcGFyYW1ldGVycy4gKi8KKwkJCWFsdGVybmF0aXZlX2ZyZWUoYSk7CisJCQlhID0gaW5zdF9hbHQ7CisJCX0KKwkJYWx0ZXJuYXRpdmVfYWRkX2Nob2ljZShhLCBmaWxlc2V0KTsKKwkJaWYgKGEtPnN0YXR1cyA9PSBBTFRfU1RfQVVUTykgeworCQkJbmV3X2Nob2ljZSA9IGFsdGVybmF0aXZlX2dldF9iZXN0KGEpLT5tYXN0ZXJfZmlsZTsKKwkJfSBlbHNlIHsKKwkJCXZlcmJvc2UoXygiYXV0b21hdGljIHVwZGF0ZXMgb2YgJXMvJXMgYXJlIGRpc2FibGVkLCAiCisJCQkgICAgICAgICAgImxlYXZpbmcgaXQgYWxvbmUuIiksIGFsdGRpciwgYS0+bWFzdGVyX25hbWUpOworCQkJdmVyYm9zZShfKCJ0byByZXR1cm4gdG8gYXV0b21hdGljIHVwZGF0ZXMgdXNlICIKKwkJCSAgICAgICAgICAiJyVzIC0tYXV0byAlcycuIiksIFBST0dOQU1FLCBhLT5tYXN0ZXJfbmFtZSk7CisJCX0KKwl9CisKKwkvKiBObyBjaG9pY2UgbGVmdCwgcmVtb3ZlIGV2ZXJ5dGhpbmcuICovCisJaWYgKCFhbHRlcm5hdGl2ZV9jaG9pY2VzX2NvdW50KGEpKSB7CisJCWxvZ19tc2coImxpbmsgZ3JvdXAgJXMgZnVsbHkgcmVtb3ZlZCIsIGEtPm1hc3Rlcl9uYW1lKTsKKwkJYWx0ZXJuYXRpdmVfcmVtb3ZlKGEpOworCQlleGl0KDApOworCX0KKworCS8qIE5ldyBjaG9pY2Ugd2FudGVkLiAqLworCWlmIChuZXdfY2hvaWNlICYmICghY3VycmVudF9jaG9pY2UgfHwKKwkgICAgICAgICAgICAgICAgICAgc3RyY21wKG5ld19jaG9pY2UsIGN1cnJlbnRfY2hvaWNlKSAhPSAwKSkgeworCQlsb2dfbXNnKCJsaW5rIGdyb3VwICVzIHVwZGF0ZWQgdG8gcG9pbnQgdG8gJXMiLCBhLT5tYXN0ZXJfbmFtZSwKKwkJICAgICAgICBuZXdfY2hvaWNlKTsKKwkJaW5mbyhfKCJ1c2luZyAlcyB0byBwcm92aWRlICVzICglcykgaW4gJXMuIiksIG5ld19jaG9pY2UsCisJCSAgICAgYS0+bWFzdGVyX2xpbmssIGEtPm1hc3Rlcl9uYW1lLAorCQkgICAgIChhLT5zdGF0dXMgPT0gQUxUX1NUX0FVVE8pID8gXygiYXV0byBtb2RlIikgOgorCQkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXygibWFudWFsIG1vZGUiKSk7CisJCWRlYnVnKCJwcmVwYXJlX2luc3RhbGwoJXMpIiwgbmV3X2Nob2ljZSk7CisJCWFsdGVybmF0aXZlX3ByZXBhcmVfaW5zdGFsbChhLCBuZXdfY2hvaWNlKTsKKwl9IGVsc2UgaWYgKGFsdGVybmF0aXZlX2lzX2Jyb2tlbihhKSkgeworCQlsb2dfbXNnKCJhdXRvLXJlcGFpciBsaW5rIGdyb3VwICVzIiwgYS0+bWFzdGVyX25hbWUpOworCQl3YXJuaW5nKF8oImZvcmNpbmcgcmVpbnN0YWxsYXRpb24gb2YgYWx0ZXJuYXRpdmUgJXMgYmVjYXVzZSAiCisJCSAgICAgICAgICAibGluayBncm91cCAlcyBpcyBicm9rZW4uIiksIGN1cnJlbnRfY2hvaWNlLAorCQkgICAgICAgIGEtPm1hc3Rlcl9uYW1lKTsKKworCQlpZiAoY3VycmVudF9jaG9pY2UgJiYgIWFsdGVybmF0aXZlX2hhc19jaG9pY2UoYSwgY3VycmVudF9jaG9pY2UpKSB7CisJCQlzdHJ1Y3QgZmlsZXNldCAqYmVzdCA9IGFsdGVybmF0aXZlX2dldF9iZXN0KGEpOworCisJCQl3YXJuaW5nKF8oImN1cnJlbnQgYWx0ZXJuYXRpdmUgJXMgaXMgdW5rbm93biwgIgorCQkJICAgICAgICAgICJzd2l0Y2hpbmcgdG8gJXMgZm9yIGxpbmsgZ3JvdXAgJXMuIiksCisJCQkgICAgICAgIGN1cnJlbnRfY2hvaWNlLCBiZXN0LT5tYXN0ZXJfZmlsZSwKKwkJCSAgICAgICAgYS0+bWFzdGVyX25hbWUpOworCQkJY3VycmVudF9jaG9pY2UgPSBiZXN0LT5tYXN0ZXJfZmlsZTsKKwkJCWFsdGVybmF0aXZlX3NldF9zdGF0dXMoYSwgQUxUX1NUX0FVVE8pOworCQl9CisKKwkJaWYgKGN1cnJlbnRfY2hvaWNlKQorCQkJYWx0ZXJuYXRpdmVfcHJlcGFyZV9pbnN0YWxsKGEsIGN1cnJlbnRfY2hvaWNlKTsKKwl9CisKKwkvKiBTYXZlIGFkbWluaXN0cmF0aXZlIGZpbGUgaWYgbmVlZGVkLiAqLworCWlmIChhLT5tb2RpZmllZCkgeworCQlkZWJ1ZygiJXMgaXMgbW9kaWZpZWQgYW5kIHdpbGwgYmUgc2F2ZWQiLCBhLT5tYXN0ZXJfbmFtZSk7CisJCWFsdGVybmF0aXZlX3NhdmUoYSk7CisJfQorCisJLyogUmVwbGFjZSBhbGwgc3ltbGlua3MgaW4gb25lIHBhc3MuICovCisJYWx0ZXJuYXRpdmVfY29tbWl0KGEpOworCisJcmV0dXJuIDA7Cit9CmRpZmYgLS1naXQgYS9kcGtnLnRhci5iejIgYi9kcGtnLnRhci5iejIKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNmUxZWMwZgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2cudGFyLmJ6MgpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9kcGtnLnVybCBiL2Rwa2cudXJsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjRmNzRkNzAKLS0tIC9kZXYvbnVsbAorKysgYi9kcGtnLnVybApAQCAtMCwwICsxIEBACitodHRwOi8vZnRwLmRlYmlhbi5vcmcvZGViaWFuL3Bvb2wvbWFpbi9kL2Rwa2cvZHBrZ18xLjE2LjEuMS50YXIuYnoyCmRpZmYgLS1naXQgYS9kcGtnLnZlcnNpb24gYi9kcGtnLnZlcnNpb24KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzQwNzkwNgotLS0gL2Rldi9udWxsCisrKyBiL2Rwa2cudmVyc2lvbgpAQCAtMCwwICsxIEBACisxLjE2LjEuMQo=